EI-Image-Viewer-Api/Start/Resource/EIImageViewerWeb/html/dicomCodecs.js

3 lines
2.9 MiB

/*! For license information please see cornerstoneWADOImageLoader.min.js.LICENSE */
!function(e,i){"object"==typeof exports&&"object"==typeof module?module.exports=i():"function"==typeof define&&define.amd?define("cornerstoneWADOImageLoader",[],i):"object"==typeof exports?exports.cornerstoneWADOImageLoader=i():e.cornerstoneWADOImageLoader=i()}(this,(function(){return function(e){var i={};function r(f){if(i[f])return i[f].exports;var n=i[f]={i:f,l:!1,exports:{}};return e[f].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=i,r.d=function(e,i,f){r.o(e,i)||Object.defineProperty(e,i,{enumerable:!0,get:f})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,i){if(1&i&&(e=r(e)),8&i)return e;if(4&i&&"object"==typeof e&&e&&e.__esModule)return e;var f=Object.create(null);if(r.r(f),Object.defineProperty(f,"default",{enumerable:!0,value:e}),2&i&&"string"!=typeof e)for(var n in e)r.d(f,n,function(i){return e[i]}.bind(null,n));return f},r.n=function(e){var i=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(i,"a",i),i},r.o=function(e,i){return Object.prototype.hasOwnProperty.call(e,i)},r.p="",r(r.s=7)}([function(e,i){!function(r){if("object"==typeof i&&void 0!==e)e.exports=r();else if("function"==typeof define&&define.amd)define([],r);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).jpeg=r()}}((function(){return function e(i,r,f){function n(a,s){if(!r[a]){if(!i[a]){var l="function"==typeof require&&require;if(!s&&l)return l(a,!0);if(t)return t(a,!0);var o=new Error("Cannot find module '"+a+"'");throw o.code="MODULE_NOT_FOUND",o}var u=r[a]={exports:{}};i[a][0].call(u.exports,(function(e){var r=i[a][1][e];return n(r||e)}),u,u.exports,e,i,r,f)}return r[a].exports}for(var t="function"==typeof require&&require,a=0;a<f.length;a++)n(f[a]);return n}({1:[function(e,i,r){"use strict";var f=f||{};f.lossless=f.lossless||{},f.lossless.ComponentSpec=f.lossless.ComponentSpec||function(){this.hSamp=0,this.quantTableSel=0,this.vSamp=0},"undefined"!==typeof i&&i.exports&&(i.exports=f.lossless.ComponentSpec)},{}],2:[function(e,i,r){"use strict";var f=f||{};f.lossless=f.lossless||{},f.lossless.DataStream=f.lossless.DataStream||function(e,i,r){this.buffer=new Uint8Array(e,i,r),this.index=0},f.lossless.DataStream.prototype.get16=function(){var e=(this.buffer[this.index]<<8)+this.buffer[this.index+1];return this.index+=2,e},f.lossless.DataStream.prototype.get8=function(){var e=this.buffer[this.index];return this.index+=1,e},"undefined"!==typeof i&&i.exports&&(i.exports=f.lossless.DataStream)},{}],3:[function(e,i,r){"use strict";var f,n=n||{};n.lossless=n.lossless||{},n.lossless.DataStream=n.lossless.DataStream||(void 0!==e?e("./data-stream.js"):null),n.lossless.HuffmanTable=n.lossless.HuffmanTable||(void 0!==e?e("./huffman-table.js"):null),n.lossless.QuantizationTable=n.lossless.QuantizationTable||(void 0!==e?e("./quantization-table.js"):null),n.lossless.ScanHeader=n.lossless.ScanHeader||(void 0!==e?e("./scan-header.js"):null),n.lossless.FrameHeader=n.lossless.FrameHeader||(void 0!==e?e("./frame-header.js"):null),n.lossless.Utils=n.lossless.Utils||(void 0!==e?e("./utils.js"):null),n.lossless.Decoder=n.lossless.Decoder||function(e,i){this.buffer=e,this.frame=new n.lossless.FrameHeader,this.huffTable=new n.lossless.HuffmanTable,this.quantTable=new n.lossless.QuantizationTable,this.scan=new n.lossless.ScanHeader,this.DU=n.lossless.Utils.createArray(10,4,64),this.HuffTab=n.lossless.Utils.createArray(4,2,12800),this.IDCT_Source=[],this.nBlock=[],this.acTab=n.lossless.Utils.createArray(10,1),this.dcTab=n.lossless.Utils.createArray(10,1),this.qTab=n.lossless.Utils.createArray(10,1),this.marker=0,this.markerIndex=0,this.numComp=0,this.restartInterval=0,this.selection=0,this.xDim=0,this.yDim=0,this.xLoc=0,this.yLoc=0,this.numBytes=0,this.outputData=null,this.restarting=!1,this.mask=0,void 0!==i&&(this.numBytes=i)},n.lossless.Decoder.IDCT_P=[0,5,40,16,45,2,7,42,21,56,8,61,18,47,1,4,41,23,58,13,32,24,37,10,63,17,44,3,6,43,20,57,15,34,29,48,53,26,39,9,60,19,46,22,59,12,33,31,50,55,25,36,11,62,14,35,28,49,52,27,38,30,51,54],n.lossless.Decoder.TABLE=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63],n.lossless.Decoder.MAX_HUFFMAN_SUBTREE=50,n.lossless.Decoder.MSB=2147483648,n.lossless.Decoder.RESTART_MARKER_BEGIN=65488,n.lossless.Decoder.RESTART_MARKER_END=65495,n.lossless.Decoder.prototype.decompress=function(e,i,r){return this.decode(e,i,r).buffer},n.lossless.Decoder.prototype.decode=function(e,i,r,f){var t,a,s,l,o=0,u=[],c=[],h=[];if(void 0!==e&&(this.buffer=e),void 0!==f&&(this.numBytes=f),this.stream=new n.lossless.DataStream(this.buffer,i,r),this.buffer=null,this.xLoc=0,this.yLoc=0,65496!==(t=this.stream.get16()))throw new Error("Not a JPEG file");for(t=this.stream.get16();t>>4!=4092||65476===t;){switch(t){case 65476:this.huffTable.read(this.stream,this.HuffTab);break;case 65484:throw new Error("Program doesn't support arithmetic coding. (format throw new IOException)");case 65499:this.quantTable.read(this.stream,n.lossless.Decoder.TABLE);break;case 65501:this.restartInterval=this.readNumber();break;case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:this.readApp();break;case 65534:this.readComment();break;default:if(t>>8!=255)throw new Error("ERROR: format throw new IOException! (decode)")}t=this.stream.get16()}if(t<65472||t>65479)throw new Error("ERROR: could not handle arithmetic code!");this.frame.read(this.stream),t=this.stream.get16();do{for(;65498!==t;){switch(t){case 65476:this.huffTable.read(this.stream,this.HuffTab);break;case 65484:throw new Error("Program doesn't support arithmetic coding. (format throw new IOException)");case 65499:this.quantTable.read(this.stream,n.lossless.Decoder.TABLE);break;case 65501:this.restartInterval=this.readNumber();break;case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:this.readApp();break;case 65534:this.readComment();break;default:if(t>>8!=255)throw new Error("ERROR: format throw new IOException! (Parser.decode)")}t=this.stream.get16()}switch(this.precision=this.frame.precision,this.components=this.frame.components,this.numBytes||(this.numBytes=parseInt(Math.ceil(this.precision/8))),1==this.numBytes?this.mask=255:this.mask=65535,this.scan.read(this.stream),this.numComp=this.scan.numComp,this.selection=this.scan.selection,1===this.numBytes?3===this.numComp?(this.getter=this.getValueRGB,this.setter=this.setValueRGB,this.output=this.outputRGB):(this.getter=this.getValue8,this.setter=this.setValue8,this.output=this.outputSingle):(this.getter=this.getValue16,this.setter=this.setValue16,this.output=this.outputSingle),this.selection){case 2:this.selector=this.select2;break;case 3:this.selector=this.select3;break;case 4:this.selector=this.select4;break;case 5:this.selector=this.select5;break;case 6:this.selector=this.select6;break;case 7:this.selector=this.select7;break;default:this.selector=this.select1}for(this.scanComps=this.scan.components,this.quantTables=this.quantTable.quantTables,a=0;a<this.numComp;a+=1)s=this.scanComps[a].scanCompSel,this.qTab[a]=this.quantTables[this.components[s].quantTableSel],this.nBlock[a]=this.components[s].vSamp*this.components[s].hSamp,this.dcTab[a]=this.HuffTab[this.scanComps[a].dcTabSel][0],this.acTab[a]=this.HuffTab[this.scanComps[a].acTabSel][1];for(this.xDim=this.frame.dimX,this.yDim=this.frame.dimY,1==this.numBytes?this.outputData=new Uint8Array(new ArrayBuffer(this.xDim*this.yDim*this.numBytes*this.numComp)):this.outputData=new Uint16Array(new ArrayBuffer(this.xDim*this.yDim*this.numBytes*this.numComp)),o+=1;;){for(c[0]=0,h[0]=0,a=0;a<10;a+=1)u[a]=1<<this.precision-1;if(0===this.restartInterval){for(t=this.decodeUnit(u,c,h);0===t&&this.xLoc<this.xDim&&this.yLoc<this.yDim;)this.output(u),t=this.decodeUnit(u,c,h);break}for(l=0;l<this.restartInterval&&(this.restarting=0==l,t=this.decodeUnit(u,c,h),this.output(u),0===t);l+=1);if(0===t&&(0!==this.markerIndex?(t=65280|this.marker,this.markerIndex=0):t=this.stream.get16()),!(t>=n.lossless.Decoder.RESTART_MARKER_BEGIN&&t<=n.lossless.Decoder.RESTART_MARKER_END))break}65500===t&&1===o&&(this.readNumber(),t=this.stream.get16())}while(65497!==t&&this.xLoc<this.xDim&&this.yLoc<this.yDim&&0===o);return this.outputData},n.lossless.Decoder.prototype.decodeUnit=function(e,i,r){return 1==this.numComp?this.decodeSingle(e,i,r):3==this.numComp?this.decodeRGB(e,i,r):-1},n.lossless.Decoder.prototype.select1=function(e){return this.getPreviousX(e)},n.lossless.Decoder.prototype.select2=function(e){return this.getPreviousY(e)},n.lossless.Decoder.prototype.select3=function(e){return this.getPreviousXY(e)},n.lossless.Decoder.prototype.select4=function(e){return this.getPreviousX(e)+this.getPreviousY(e)-this.getPreviousXY(e)},n.lossless.Decoder.prototype.select5=function(e){return this.getPreviousX(e)+(this.getPreviousY(e)-this.getPreviousXY(e)>>1)},n.lossless.Decoder.prototype.select6=function(e){return this.getPreviousY(e)+(this.getPreviousX(e)-this.getPreviousXY(e)>>1)},n.lossless.Decoder.prototype.select7=function(e){return(this.getPreviousX(e)+this.getPreviousY(e))/2},n.lossless.Decoder.prototype.decodeRGB=function(e,i,r){var f,t,a,s,l,o,u,c;for(e[0]=this.selector(0),e[1]=this.selector(1),e[2]=this.selector(2),l=0;l<this.numComp;l+=1)for(s=this.qTab[l],t=this.acTab[l],a=this.dcTab[l],o=0;o<this.nBlock[l];o+=1){for(u=0;u<this.IDCT_Source.length;u+=1)this.IDCT_Source[u]=0;if((f=this.getHuffmanValue(a,i,r))>=65280)return f;for(e[l]=this.IDCT_Source[0]=e[l]+this.getn(r,f,i,r),this.IDCT_Source[0]*=s[0],c=1;c<64;c+=1){if((f=this.getHuffmanValue(t,i,r))>=65280)return f;if(c+=f>>4,0==(15&f)){if(f>>4==0)break}else this.IDCT_Source[n.lossless.Decoder.IDCT_P[c]]=this.getn(r,15&f,i,r)*s[c]}}return 0},n.lossless.Decoder.prototype.decodeSingle=function(e,i,r){var f,t,a,s;for(this.restarting?(this.restarting=!1,e[0]=1<<this.frame.precision-1):e[0]=this.selector(),t=0;t<this.nBlock[0];t+=1){if((f=this.getHuffmanValue(this.dcTab[0],i,r))>=65280)return f;if((s=(a=this.getn(e,f,i,r))>>8)>=n.lossless.Decoder.RESTART_MARKER_BEGIN&&s<=n.lossless.Decoder.RESTART_MARKER_END)return s;e[0]+=a}return 0},n.lossless.Decoder.prototype.getHuffmanValue=function(e,i,r){var f,t;if(65535,r[0]<8?(i[0]<<=8,255===(t=this.stream.get8())&&(this.marker=this.stream.get8(),0!==this.marker&&(this.markerIndex=9)),i[0]|=t):r[0]-=8,0!=((f=e[i[0]>>r[0]])&n.lossless.Decoder.MSB)){if(0!==this.markerIndex)return this.markerIndex=0,65280|this.marker;i[0]&=65535>>16-r[0],i[0]<<=8,255===(t=this.stream.get8())&&(this.marker=this.stream.get8(),0!==this.marker&&(this.markerIndex=9)),i[0]|=t,f=e[256*(255&f)+(i[0]>>r[0])],r[0]+=8}if(r[0]+=8-(f>>8),r[0]<0)throw new Error("index="+r[0]+" temp="+i[0]+" code="+f+" in HuffmanValue()");return r[0]<this.markerIndex?(this.markerIndex=0,65280|this.marker):(i[0]&=65535>>16-r[0],255&f)},n.lossless.Decoder.prototype.getn=function(e,i,r,f){var n,t;if(1,-1,65535,0===i)return 0;if(16===i)return e[0]>=0?-32768:32768;if(f[0]-=i,f[0]>=0){if(f[0]<this.markerIndex&&!this.isLastPixel())return this.markerIndex=0,(65280|this.marker)<<8;n=r[0]>>f[0],r[0]&=65535>>16-f[0]}else{if(r[0]<<=8,255===(t=this.stream.get8())&&(this.marker=this.stream.get8(),0!==this.marker&&(this.markerIndex=9)),r[0]|=t,f[0]+=8,f[0]<0){if(0!==this.markerIndex)return this.markerIndex=0,(65280|this.marker)<<8;r[0]<<=8,255===(t=this.stream.get8())&&(this.marker=this.stream.get8(),0!==this.marker&&(this.markerIndex=9)),r[0]|=t,f[0]+=8}if(f[0]<0)throw new Error("index="+f[0]+" in getn()");if(f[0]<this.markerIndex)return this.markerIndex=0,(65280|this.marker)<<8;n=r[0]>>f[0],r[0]&=65535>>16-f[0]}return n<1<<i-1&&(n+=1+(-1<<i)),n},n.lossless.Decoder.prototype.getPreviousX=function(e){return this.xLoc>0?this.getter(this.yLoc*this.xDim+this.xLoc-1,e):this.yLoc>0?this.getPreviousY(e):1<<this.frame.precision-1},n.lossless.Decoder.prototype.getPreviousXY=function(e){return this.xLoc>0&&this.yLoc>0?this.getter((this.yLoc-1)*this.xDim+this.xLoc-1,e):this.getPreviousY(e)},n.lossless.Decoder.prototype.getPreviousY=function(e){return this.yLoc>0?this.getter((this.yLoc-1)*this.xDim+this.xLoc,e):this.getPreviousX(e)},n.lossless.Decoder.prototype.isLastPixel=function(){return this.xLoc===this.xDim-1&&this.yLoc===this.yDim-1},n.lossless.Decoder.prototype.outputSingle=function(e){this.xLoc<this.xDim&&this.yLoc<this.yDim&&(this.setter(this.yLoc*this.xDim+this.xLoc,this.mask&e[0]),this.xLoc+=1,this.xLoc>=this.xDim&&(this.yLoc+=1,this.xLoc=0))},n.lossless.Decoder.prototype.outputRGB=function(e){var i=this.yLoc*this.xDim+this.xLoc;this.xLoc<this.xDim&&this.yLoc<this.yDim&&(this.setter(i,e[0],0),this.setter(i,e[1],1),this.setter(i,e[2],2),this.xLoc+=1,this.xLoc>=this.xDim&&(this.yLoc+=1,this.xLoc=0))},n.lossless.Decoder.prototype.setValue8=function(e,i){this.outputData[e]=i},n.lossless.Decoder.prototype.getValue8=function(e){return this.outputData[e]},(f=new ArrayBuffer(2),new DataView(f).setInt16(0,256,!0),256===new Int16Array(f)[0])?(n.lossless.Decoder.prototype.setValue16=n.lossless.Decoder.prototype.setValue8,n.lossless.Decoder.prototype.getValue16=n.lossless.Decoder.prototype.getValue8):(n.lossless.Decoder.prototype.setValue16=function(e,i){this.outputData[e]=(255&i)<<8|i>>8&255},n.lossless.Decoder.prototype.getValue16=function(e){var i=this.outputData[e];return(255&i)<<8|i>>8&255}),n.lossless.Decoder.prototype.setValueRGB=function(e,i,r){this.outputData[3*e+r]=i},n.lossless.Decoder.prototype.getValueRGB=function(e,i){return this.outputData[3*e+i]},n.lossless.Decoder.prototype.readApp=function(){var e=0,i=this.stream.get16();for(e+=2;e<i;)this.stream.get8(),e+=1;return i},n.lossless.Decoder.prototype.readComment=function(){var e,i="",r=0;for(e=this.stream.get16(),r+=2;r<e;)i+=this.stream.get8(),r+=1;return i},n.lossless.Decoder.prototype.readNumber=function(){if(4!==this.stream.get16())throw new Error("ERROR: Define number format throw new IOException [Ld!=4]");return this.stream.get16()},"undefined"!==typeof i&&i.exports&&(i.exports=n.lossless.Decoder)},{"./data-stream.js":2,"./frame-header.js":4,"./huffman-table.js":5,"./quantization-table.js":7,"./scan-header.js":9,"./utils.js":10}],4:[function(e,i,r){"use strict";var f=f||{};f.lossless=f.lossless||{},f.lossless.ComponentSpec=f.lossless.ComponentSpec||(void 0!==e?e("./component-spec.js"):null),f.lossless.DataStream=f.lossless.DataStream||(void 0!==e?e("./data-stream.js"):null),f.lossless.FrameHeader=f.lossless.FrameHeader||function(){this.components=[],this.dimX=0,this.dimY=0,this.numComp=0,this.precision=0},f.lossless.FrameHeader.prototype.read=function(e){var i,r,n,t,a=0;for(i=e.get16(),a+=2,this.precision=e.get8(),a+=1,this.dimY=e.get16(),a+=2,this.dimX=e.get16(),a+=2,this.numComp=e.get8(),a+=1,r=1;r<=this.numComp;r+=1){if(a>i)throw new Error("ERROR: frame format error");if(n=e.get8(),(a+=1)>=i)throw new Error("ERROR: frame format error [c>=Lf]");t=e.get8(),a+=1,this.components[n]||(this.components[n]=new f.lossless.ComponentSpec),this.components[n].hSamp=t>>4,this.components[n].vSamp=15&t,this.components[n].quantTableSel=e.get8(),a+=1}if(a!==i)throw new Error("ERROR: frame format error [Lf!=count]");return 1},"undefined"!==typeof i&&i.exports&&(i.exports=f.lossless.FrameHeader)},{"./component-spec.js":1,"./data-stream.js":2}],5:[function(e,i,r){"use strict";var f=f||{};f.lossless=f.lossless||{},f.lossless.DataStream=f.lossless.DataStream||(void 0!==e?e("./data-stream.js"):null),f.lossless.Utils=f.lossless.Utils||(void 0!==e?e("./utils.js"):null),f.lossless.HuffmanTable=f.lossless.HuffmanTable||function(){this.l=f.lossless.Utils.createArray(4,2,16),this.th=[],this.v=f.lossless.Utils.createArray(4,2,16,200),this.tc=f.lossless.Utils.createArray(4,2),this.tc[0][0]=0,this.tc[1][0]=0,this.tc[2][0]=0,this.tc[3][0]=0,this.tc[0][1]=0,this.tc[1][1]=0,this.tc[2][1]=0,this.tc[3][1]=0,this.th[0]=0,this.th[1]=0,this.th[2]=0,this.th[3]=0},f.lossless.HuffmanTable.MSB=2147483648,f.lossless.HuffmanTable.prototype.read=function(e,i){var r,f,n,t,a,s,l=0;for(r=e.get16(),l+=2;l<r;){if(l+=1,(n=15&(f=e.get8()))>3)throw new Error("ERROR: Huffman table ID > 3");if((t=f>>4)>2)throw new Error("ERROR: Huffman table [Table class > 2 ]");for(this.th[n]=1,this.tc[n][t]=1,a=0;a<16;a+=1)this.l[n][t][a]=e.get8(),l+=1;for(a=0;a<16;a+=1)for(s=0;s<this.l[n][t][a];s+=1){if(l>r)throw new Error("ERROR: Huffman table format error [count>Lh]");this.v[n][t][a][s]=e.get8(),l+=1}}if(l!==r)throw new Error("ERROR: Huffman table format error [count!=Lf]");for(a=0;a<4;a+=1)for(s=0;s<2;s+=1)0!==this.tc[a][s]&&this.buildHuffTable(i[a][s],this.l[a][s],this.v[a][s]);return 1},f.lossless.HuffmanTable.prototype.buildHuffTable=function(e,i,r){var n,t,a,s,l;for(256,t=0,a=0;a<8;a+=1)for(s=0;s<i[a];s+=1)for(l=0;l<256>>a+1;l+=1)e[t]=r[a][s]|a+1<<8,t+=1;for(a=1;t<256;a+=1,t+=1)e[t]=a|f.lossless.HuffmanTable.MSB;for(n=1,t=0,a=8;a<16;a+=1)for(s=0;s<i[a];s+=1){for(l=0;l<256>>a-7;l+=1)e[256*n+t]=r[a][s]|a+1<<8,t+=1;if(t>=256){if(t>256)throw new Error("ERROR: Huffman table error(1)!");t=0,n+=1}}},"undefined"!==typeof i&&i.exports&&(i.exports=f.lossless.HuffmanTable)},{"./data-stream.js":2,"./utils.js":10}],6:[function(e,i,r){"use strict";var f=f||{};f.lossless=f.lossless||{},f.lossless.ComponentSpec=f.lossless.ComponentSpec||(void 0!==e?e("./component-spec.js"):null),f.lossless.DataStream=f.lossless.DataStream||(void 0!==e?e("./data-stream.js"):null),f.lossless.Decoder=f.lossless.Decoder||(void 0!==e?e("./decoder.js"):null),f.lossless.FrameHeader=f.lossless.FrameHeader||(void 0!==e?e("./frame-header.js"):null),f.lossless.HuffmanTable=f.lossless.HuffmanTable||(void 0!==e?e("./huffman-table.js"):null),f.lossless.QuantizationTable=f.lossless.QuantizationTable||(void 0!==e?e("./quantization-table.js"):null),f.lossless.ScanComponent=f.lossless.ScanComponent||(void 0!==e?e("./scan-component.js"):null),f.lossless.ScanHeader=f.lossless.ScanHeader||(void 0!==e?e("./scan-header.js"):null),f.lossless.Utils=f.lossless.Utils||(void 0!==e?e("./utils.js"):null),"undefined"!==typeof i&&i.exports&&(i.exports=f)},{"./component-spec.js":1,"./data-stream.js":2,"./decoder.js":3,"./frame-header.js":4,"./huffman-table.js":5,"./quantization-table.js":7,"./scan-component.js":8,"./scan-header.js":9,"./utils.js":10}],7:[function(e,i,r){"use strict";var f=f||{};f.lossless=f.lossless||{},f.lossless.DataStream=f.lossless.DataStream||(void 0!==e?e("./data-stream.js"):null),f.lossless.Utils=f.lossless.Utils||(void 0!==e?e("./utils.js"):null),f.lossless.QuantizationTable=f.lossless.QuantizationTable||function(){this.precision=[],this.tq=[],this.quantTables=f.lossless.Utils.createArray(4,64),this.tq[0]=0,this.tq[1]=0,this.tq[2]=0,this.tq[3]=0},f.lossless.QuantizationTable.enhanceQuantizationTable=function(e,i){var r;for(r=0;r<8;r+=1)e[i[0+r]]*=90,e[i[32+r]]*=90,e[i[16+r]]*=118,e[i[48+r]]*=49,e[i[40+r]]*=71,e[i[8+r]]*=126,e[i[56+r]]*=25,e[i[24+r]]*=106;for(r=0;r<8;r+=1)e[i[0+8*r]]*=90,e[i[4+8*r]]*=90,e[i[2+8*r]]*=118,e[i[6+8*r]]*=49,e[i[5+8*r]]*=71,e[i[1+8*r]]*=126,e[i[7+8*r]]*=25,e[i[3+8*r]]*=106;for(r=0;r<64;r+=1)e[r]>>=6},f.lossless.QuantizationTable.prototype.read=function(e,i){var r,n,t,a,s=0;for(r=e.get16(),s+=2;s<r;){if(s+=1,(t=15&(n=e.get8()))>3)throw new Error("ERROR: Quantization table ID > 3");if(this.precision[t]=n>>4,0===this.precision[t])this.precision[t]=8;else{if(1!==this.precision[t])throw new Error("ERROR: Quantization table precision error");this.precision[t]=16}if(this.tq[t]=1,8===this.precision[t]){for(a=0;a<64;a+=1){if(s>r)throw new Error("ERROR: Quantization table format error");this.quantTables[t][a]=e.get8(),s+=1}f.lossless.QuantizationTable.enhanceQuantizationTable(this.quantTables[t],i)}else{for(a=0;a<64;a+=1){if(s>r)throw new Error("ERROR: Quantization table format error");this.quantTables[t][a]=e.get16(),s+=2}f.lossless.QuantizationTable.enhanceQuantizationTable(this.quantTables[t],i)}}if(s!==r)throw new Error("ERROR: Quantization table error [count!=Lq]");return 1},"undefined"!==typeof i&&i.exports&&(i.exports=f.lossless.QuantizationTable)},{"./data-stream.js":2,"./utils.js":10}],8:[function(e,i,r){"use strict";var f=f||{};f.lossless=f.lossless||{},f.lossless.ScanComponent=f.lossless.ScanComponent||function(){this.acTabSel=0,this.dcTabSel=0,this.scanCompSel=0},"undefined"!==typeof i&&i.exports&&(i.exports=f.lossless.ScanComponent)},{}],9:[function(e,i,r){"use strict";var f=f||{};f.lossless=f.lossless||{},f.lossless.DataStream=f.lossless.DataStream||(void 0!==e?e("./data-stream.js"):null),f.lossless.ScanComponent=f.lossless.ScanComponent||(void 0!==e?e("./scan-component.js"):null),f.lossless.ScanHeader=f.lossless.ScanHeader||function(){this.ah=0,this.al=0,this.numComp=0,this.selection=0,this.spectralEnd=0,this.components=[]},f.lossless.ScanHeader.prototype.read=function(e){var i,r,n,t=0;for(i=e.get16(),t+=2,this.numComp=e.get8(),t+=1,r=0;r<this.numComp;r+=1){if(this.components[r]=new f.lossless.ScanComponent,t>i)throw new Error("ERROR: scan header format error");this.components[r].scanCompSel=e.get8(),t+=1,n=e.get8(),t+=1,this.components[r].dcTabSel=n>>4,this.components[r].acTabSel=15&n}if(this.selection=e.get8(),t+=1,this.spectralEnd=e.get8(),t+=1,n=e.get8(),this.ah=n>>4,this.al=15&n,(t+=1)!==i)throw new Error("ERROR: scan header format error [count!=Ns]");return 1},"undefined"!==typeof i&&i.exports&&(i.exports=f.lossless.ScanHeader)},{"./data-stream.js":2,"./scan-component.js":8}],10:[function(e,i,r){"use strict";var f=f||{};f.lossless=f.lossless||{},f.lossless.Utils=f.lossless.Utils||{},f.lossless.Utils.createArray=function(e){var i=new Array(e||0),r=e;if(arguments.length>1)for(var n=Array.prototype.slice.call(arguments,1);r--;)i[e-1-r]=f.lossless.Utils.createArray.apply(this,n);return i},f.lossless.Utils.makeCRCTable=function(){for(var e,i=[],r=0;r<256;r++){e=r;for(var f=0;f<8;f++)e=1&e?3988292384^e>>>1:e>>>1;i[r]=e}return i},f.lossless.Utils.crc32=function(e){for(var i=new Uint8Array(e.buffer),r=f.lossless.Utils.crcTable||(f.lossless.Utils.crcTable=f.lossless.Utils.makeCRCTable()),n=-1,t=0;t<i.length;t++)n=n>>>8^r[255&(n^i[t])];return(-1^n)>>>0},"undefined"!==typeof i&&i.exports&&(i.exports=f.lossless.Utils)},{}]},{},[6])(6)}))},function(e,i,r){e.exports=function(){return r(2)('/*! For license information please see abe907a48c03814beada.worker.js.LICENSE */\n!function(e){var i={};function r(t){if(i[t])return i[t].exports;var n=i[t]={i:t,l:!1,exports:{}};return e[t].call(n.exports,n,n.exports,r),n.l=!0,n.exports}r.m=e,r.c=i,r.d=function(e,i,t){r.o(e,i)||Object.defineProperty(e,i,{enumerable:!0,get:t})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,i){if(1&i&&(e=r(e)),8&i)return e;if(4&i&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(r.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&i&&"string"!=typeof e)for(var n in e)r.d(t,n,function(i){return e[i]}.bind(null,n));return t},r.n=function(e){var i=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(i,"a",i),i},r.o=function(e,i){return Object.prototype.hasOwnProperty.call(e,i)},r.p="",r(r.s=21)}([function(e,i,r){"use strict";var t="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;function n(e,i){return Object.prototype.hasOwnProperty.call(e,i)}i.assign=function(e){for(var i=Array.prototype.slice.call(arguments,1);i.length;){var r=i.shift();if(r){if("object"!=typeof r)throw new TypeError(r+"must be non-object");for(var t in r)n(r,t)&&(e[t]=r[t])}}return e},i.shrinkBuf=function(e,i){return e.length===i?e:e.subarray?e.subarray(0,i):(e.length=i,e)};var f={arraySet:function(e,i,r,t,n){if(i.subarray&&e.subarray)e.set(i.subarray(r,r+t),n);else for(var f=0;f<t;f++)e[n+f]=i[r+f]},flattenChunks:function(e){var i,r,t,n,f,a;for(t=0,i=0,r=e.length;i<r;i++)t+=e[i].length;for(a=new Uint8Array(t),n=0,i=0,r=e.length;i<r;i++)f=e[i],a.set(f,n),n+=f.length;return a}},a={arraySet:function(e,i,r,t,n){for(var f=0;f<t;f++)e[n+f]=i[r+f]},flattenChunks:function(e){return[].concat.apply([],e)}};i.setTyped=function(e){e?(i.Buf8=Uint8Array,i.Buf16=Uint16Array,i.Buf32=Int32Array,i.assign(i,f)):(i.Buf8=Array,i.Buf16=Array,i.Buf32=Array,i.assign(i,a))},i.setTyped(t)},function(e,i){!function(r){if("object"==typeof i&&void 0!==e)e.exports=r();else if("function"==typeof define&&define.amd)define([],r);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).jpeg=r()}}((function(){return function e(i,r,t){function n(a,s){if(!r[a]){if(!i[a]){var l="function"==typeof require&&require;if(!s&&l)return l(a,!0);if(f)return f(a,!0);var o=new Error("Cannot find module \'"+a+"\'");throw o.code="MODULE_NOT_FOUND",o}var u=r[a]={exports:{}};i[a][0].call(u.exports,(function(e){var r=i[a][1][e];return n(r||e)}),u,u.exports,e,i,r,t)}return r[a].exports}for(var f="function"==typeof require&&require,a=0;a<t.length;a++)n(t[a]);return n}({1:[function(e,i,r){"use strict";var t=t||{};t.lossless=t.lossless||{},t.lossless.ComponentSpec=t.lossless.ComponentSpec||function(){this.hSamp=0,this.quantTableSel=0,this.vSamp=0},"undefined"!==typeof i&&i.exports&&(i.exports=t.lossless.ComponentSpec)},{}],2:[function(e,i,r){"use strict";var t=t||{};t.lossless=t.lossless||{},t.lossless.DataStream=t.lossless.DataStream||function(e,i,r){this.buffer=new Uint8Array(e,i,r),this.index=0},t.lossless.DataStream.prototype.get16=function(){var e=(this.buffer[this.index]<<8)+this.buffer[this.index+1];return this.index+=2,e},t.lossless.DataStream.prototype.get8=function(){var e=this.buffer[this.index];return this.index+=1,e},"undefined"!==typeof i&&i.exports&&(i.exports=t.lossless.DataStream)},{}],3:[function(e,i,r){"use strict";var t,n=n||{};n.lossless=n.lossless||{},n.lossless.DataStream=n.lossless.DataStream||(void 0!==e?e("./data-stream.js"):null),n.lossless.HuffmanTable=n.lossless.HuffmanTable||(void 0!==e?e("./huffman-table.js"):null),n.lossless.QuantizationTable=n.lossless.QuantizationTable||(void 0!==e?e("./quantization-table.js"):null),n.lossless.ScanHeader=n.lossless.ScanHeader||(void 0!==e?e("./scan-header.js"):null),n.lossless.FrameHeader=n.lossless.FrameHeader||(void 0!==e?e("./frame-header.js"):null),n.lossless.Utils=n.lossless.Utils||(void 0!==e?e("./utils.js"):null),n.lossless.Decoder=n.lossless.Decoder||function(e,i){this.buffer=e,this.frame=new n.lossless.FrameHeader,this.huffTable=new n.lossless.HuffmanTable,this.quantTable=new n.lossless.QuantizationTable,this.scan=new n.lossless.ScanHeader,this.DU=n.lossless.Utils.createArray(10,4,64),this.HuffTab=n.lossless.Utils.createArray(4,2,12800),this.IDCT_Source=[],this.nBlock=[],this.acTab=n.lossless.Utils.createArray(10,1),this.dcTab=n.lossless.Utils.createArray(10,1),this.qTab=n.lossless.Utils.createArray(10,1),this.marker=0,this.markerIndex=0,this.numComp=0,this.restartInterval=0,this.selection=0,this.xDim=0,this.yDim=0,this.xLoc=0,this.yLoc=0,this.numBytes=0,this.outputData=null,this.restarting=!1,this.mask=0,void 0!==i&&(this.numBytes=i)},n.lossless.Decoder.IDCT_P=[0,5,40,16,45,2,7,42,21,56,8,61,18,47,1,4,41,23,58,13,32,24,37,10,63,17,44,3,6,43,20,57,15,34,29,48,53,26,39,9,60,19,46,22,59,12,33,31,50,55,25,36,11,62,14,35,28,49,52,27,38,30,51,54],n.lossless.Decoder.TABLE=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63],n.lossless.Decoder.MAX_HUFFMAN_SUBTREE=50,n.lossless.Decoder.MSB=2147483648,n.lossless.Decoder.RESTART_MARKER_BEGIN=65488,n.lossless.Decoder.RESTART_MARKER_END=65495,n.lossless.Decoder.prototype.decompress=function(e,i,r){return this.decode(e,i,r).buffer},n.lossless.Decoder.prototype.decode=function(e,i,r,t){var f,a,s,l,o=0,u=[],c=[],h=[];if(void 0!==e&&(this.buffer=e),void 0!==t&&(this.numBytes=t),this.stream=new n.lossless.DataStream(this.buffer,i,r),this.buffer=null,this.xLoc=0,this.yLoc=0,65496!==(f=this.stream.get16()))throw new Error("Not a JPEG file");for(f=this.stream.get16();f>>4!=4092||65476===f;){switch(f){case 65476:this.huffTable.read(this.stream,this.HuffTab);break;case 65484:throw new Error("Program doesn\'t support arithmetic coding. (format throw new IOException)");case 65499:this.quantTable.read(this.stream,n.lossless.Decoder.TABLE);break;case 65501:this.restartInterval=this.readNumber();break;case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:this.readApp();break;case 65534:this.readComment();break;default:if(f>>8!=255)throw new Error("ERROR: format throw new IOException! (decode)")}f=this.stream.get16()}if(f<65472||f>65479)throw new Error("ERROR: could not handle arithmetic code!");this.frame.read(this.stream),f=this.stream.get16();do{for(;65498!==f;){switch(f){case 65476:this.huffTable.read(this.stream,this.HuffTab);break;case 65484:throw new Error("Program doesn\'t support arithmetic coding. (format throw new IOException)");case 65499:this.quantTable.read(this.stream,n.lossless.Decoder.TABLE);break;case 65501:this.restartInterval=this.readNumber();break;case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:this.readApp();break;case 65534:this.readComment();break;default:if(f>>8!=255)throw new Error("ERROR: format throw new IOException! (Parser.decode)")}f=this.stream.get16()}switch(this.precision=this.frame.precision,this.components=this.frame.components,this.numBytes||(this.numBytes=parseInt(Math.ceil(this.precision/8))),1==this.numBytes?this.mask=255:this.mask=65535,this.scan.read(this.stream),this.numComp=this.scan.numComp,this.selection=this.scan.selection,1===this.numBytes?3===this.numComp?(this.getter=this.getValueRGB,this.setter=this.setValueRGB,this.output=this.outputRGB):(this.getter=this.getValue8,this.setter=this.setValue8,this.output=this.outputSingle):(this.getter=this.getValue16,this.setter=this.setValue16,this.output=this.outputSingle),this.selection){case 2:this.selector=this.select2;break;case 3:this.selector=this.select3;break;case 4:this.selector=this.select4;break;case 5:this.selector=this.select5;break;case 6:this.selector=this.select6;break;case 7:this.selector=this.select7;break;default:this.selector=this.select1}for(this.scanComps=this.scan.components,this.quantTables=this.quantTable.quantTables,a=0;a<this.numComp;a+=1)s=this.scanComps[a].scanCompSel,this.qTab[a]=this.quantTables[this.components[s].quantTableSel],this.nBlock[a]=this.components[s].vSamp*this.components[s].hSamp,this.dcTab[a]=this.HuffTab[this.scanComps[a].dcTabSel][0],this.acTab[a]=this.HuffTab[this.scanComps[a].acTabSel][1];for(this.xDim=this.frame.dimX,this.yDim=this.frame.dimY,1==this.numBytes?this.outputData=new Uint8Array(new ArrayBuffer(this.xDim*this.yDim*this.numBytes*this.numComp)):this.outputData=new Uint16Array(new ArrayBuffer(this.xDim*this.yDim*this.numBytes*this.numComp)),o+=1;;){for(c[0]=0,h[0]=0,a=0;a<10;a+=1)u[a]=1<<this.precision-1;if(0===this.restartInterval){for(f=this.decodeUnit(u,c,h);0===f&&this.xLoc<this.xDim&&this.yLoc<this.yDim;)this.output(u),f=this.decodeUnit(u,c,h);break}for(l=0;l<this.restartInterval&&(this.restarting=0==l,f=this.decodeUnit(u,c,h),this.output(u),0===f);l+=1);if(0===f&&(0!==this.markerIndex?(f=65280|this.marker,this.markerIndex=0):f=this.stream.get16()),!(f>=n.lossless.Decoder.RESTART_MARKER_BEGIN&&f<=n.lossless.Decoder.RESTART_MARKER_END))break}65500===f&&1===o&&(this.readNumber(),f=this.stream.get16())}while(65497!==f&&this.xLoc<this.xDim&&this.yLoc<this.yDim&&0===o);return this.outputData},n.lossless.Decoder.prototype.decodeUnit=function(e,i,r){return 1==this.numComp?this.decodeSingle(e,i,r):3==this.numComp?this.decodeRGB(e,i,r):-1},n.lossless.Decoder.prototype.select1=function(e){return this.getPreviousX(e)},n.lossless.Decoder.prototype.select2=function(e){return this.getPreviousY(e)},n.lossless.Decoder.prototype.select3=function(e){return this.getPreviousXY(e)},n.lossless.Decoder.prototype.select4=function(e){return this.getPreviousX(e)+this.getPreviousY(e)-this.getPreviousXY(e)},n.lossless.Decoder.prototype.select5=function(e){return this.getPreviousX(e)+(this.getPreviousY(e)-this.getPreviousXY(e)>>1)},n.lossless.Decoder.prototype.select6=function(e){return this.getPreviousY(e)+(this.getPreviousX(e)-this.getPreviousXY(e)>>1)},n.lossless.Decoder.prototype.select7=function(e){return(this.getPreviousX(e)+this.getPreviousY(e))/2},n.lossless.Decoder.prototype.decodeRGB=function(e,i,r){var t,f,a,s,l,o,u,c;for(e[0]=this.selector(0),e[1]=this.selector(1),e[2]=this.selector(2),l=0;l<this.numComp;l+=1)for(s=this.qTab[l],f=this.acTab[l],a=this.dcTab[l],o=0;o<this.nBlock[l];o+=1){for(u=0;u<this.IDCT_Source.length;u+=1)this.IDCT_Source[u]=0;if((t=this.getHuffmanValue(a,i,r))>=65280)return t;for(e[l]=this.IDCT_Source[0]=e[l]+this.getn(r,t,i,r),this.IDCT_Source[0]*=s[0],c=1;c<64;c+=1){if((t=this.getHuffmanValue(f,i,r))>=65280)return t;if(c+=t>>4,0==(15&t)){if(t>>4==0)break}else this.IDCT_Source[n.lossless.Decoder.IDCT_P[c]]=this.getn(r,15&t,i,r)*s[c]}}return 0},n.lossless.Decoder.prototype.decodeSingle=function(e,i,r){var t,f,a,s;for(this.restarting?(this.restarting=!1,e[0]=1<<this.frame.precision-1):e[0]=this.selector(),f=0;f<this.nBlock[0];f+=1){if((t=this.getHuffmanValue(this.dcTab[0],i,r))>=65280)return t;if((s=(a=this.getn(e,t,i,r))>>8)>=n.lossless.Decoder.RESTART_MARKER_BEGIN&&s<=n.lossless.Decoder.RESTART_MARKER_END)return s;e[0]+=a}return 0},n.lossless.Decoder.prototype.getHuffmanValue=function(e,i,r){var t,f;if(65535,r[0]<8?(i[0]<<=8,255===(f=this.stream.get8())&&(this.marker=this.stream.get8(),0!==this.marker&&(this.markerIndex=9)),i[0]|=f):r[0]-=8,0!=((t=e[i[0]>>r[0]])&n.lossless.Decoder.MSB)){if(0!==this.markerIndex)return this.markerIndex=0,65280|this.marker;i[0]&=65535>>16-r[0],i[0]<<=8,255===(f=this.stream.get8())&&(this.marker=this.stream.get8(),0!==this.marker&&(this.markerIndex=9)),i[0]|=f,t=e[256*(255&t)+(i[0]>>r[0])],r[0]+=8}if(r[0]+=8-(t>>8),r[0]<0)throw new Error("index="+r[0]+" temp="+i[0]+" code="+t+" in HuffmanValue()");return r[0]<this.markerIndex?(this.markerIndex=0,65280|this.marker):(i[0]&=65535>>16-r[0],255&t)},n.lossless.Decoder.prototype.getn=function(e,i,r,t){var n,f;if(1,-1,65535,0===i)return 0;if(16===i)return e[0]>=0?-32768:32768;if(t[0]-=i,t[0]>=0){if(t[0]<this.markerIndex&&!this.isLastPixel())return this.markerIndex=0,(65280|this.marker)<<8;n=r[0]>>t[0],r[0]&=65535>>16-t[0]}else{if(r[0]<<=8,255===(f=this.stream.get8())&&(this.marker=this.stream.get8(),0!==this.marker&&(this.markerIndex=9)),r[0]|=f,t[0]+=8,t[0]<0){if(0!==this.markerIndex)return this.markerIndex=0,(65280|this.marker)<<8;r[0]<<=8,255===(f=this.stream.get8())&&(this.marker=this.stream.get8(),0!==this.marker&&(this.markerIndex=9)),r[0]|=f,t[0]+=8}if(t[0]<0)throw new Error("index="+t[0]+" in getn()");if(t[0]<this.markerIndex)return this.markerIndex=0,(65280|this.marker)<<8;n=r[0]>>t[0],r[0]&=65535>>16-t[0]}return n<1<<i-1&&(n+=1+(-1<<i)),n},n.lossless.Decoder.prototype.getPreviousX=function(e){return this.xLoc>0?this.getter(this.yLoc*this.xDim+this.xLoc-1,e):this.yLoc>0?this.getPreviousY(e):1<<this.frame.precision-1},n.lossless.Decoder.prototype.getPreviousXY=function(e){return this.xLoc>0&&this.yLoc>0?this.getter((this.yLoc-1)*this.xDim+this.xLoc-1,e):this.getPreviousY(e)},n.lossless.Decoder.prototype.getPreviousY=function(e){return this.yLoc>0?this.getter((this.yLoc-1)*this.xDim+this.xLoc,e):this.getPreviousX(e)},n.lossless.Decoder.prototype.isLastPixel=function(){return this.xLoc===this.xDim-1&&this.yLoc===this.yDim-1},n.lossless.Decoder.prototype.outputSingle=function(e){this.xLoc<this.xDim&&this.yLoc<this.yDim&&(this.setter(this.yLoc*this.xDim+this.xLoc,this.mask&e[0]),this.xLoc+=1,this.xLoc>=this.xDim&&(this.yLoc+=1,this.xLoc=0))},n.lossless.Decoder.prototype.outputRGB=function(e){var i=this.yLoc*this.xDim+this.xLoc;this.xLoc<this.xDim&&this.yLoc<this.yDim&&(this.setter(i,e[0],0),this.setter(i,e[1],1),this.setter(i,e[2],2),this.xLoc+=1,this.xLoc>=this.xDim&&(this.yLoc+=1,this.xLoc=0))},n.lossless.Decoder.prototype.setValue8=function(e,i){this.outputData[e]=i},n.lossless.Decoder.prototype.getValue8=function(e){return this.outputData[e]},(t=new ArrayBuffer(2),new DataView(t).setInt16(0,256,!0),256===new Int16Array(t)[0])?(n.lossless.Decoder.prototype.setValue16=n.lossless.Decoder.prototype.setValue8,n.lossless.Decoder.prototype.getValue16=n.lossless.Decoder.prototype.getValue8):(n.lossless.Decoder.prototype.setValue16=function(e,i){this.outputData[e]=(255&i)<<8|i>>8&255},n.lossless.Decoder.prototype.getValue16=function(e){var i=this.outputData[e];return(255&i)<<8|i>>8&255}),n.lossless.Decoder.prototype.setValueRGB=function(e,i,r){this.outputData[3*e+r]=i},n.lossless.Decoder.prototype.getValueRGB=function(e,i){return this.outputData[3*e+i]},n.lossless.Decoder.prototype.readApp=function(){var e=0,i=this.stream.get16();for(e+=2;e<i;)this.stream.get8(),e+=1;return i},n.lossless.Decoder.prototype.readComment=function(){var e,i="",r=0;for(e=this.stream.get16(),r+=2;r<e;)i+=this.stream.get8(),r+=1;return i},n.lossless.Decoder.prototype.readNumber=function(){if(4!==this.stream.get16())throw new Error("ERROR: Define number format throw new IOException [Ld!=4]");return this.stream.get16()},"undefined"!==typeof i&&i.exports&&(i.exports=n.lossless.Decoder)},{"./data-stream.js":2,"./frame-header.js":4,"./huffman-table.js":5,"./quantization-table.js":7,"./scan-header.js":9,"./utils.js":10}],4:[function(e,i,r){"use strict";var t=t||{};t.lossless=t.lossless||{},t.lossless.ComponentSpec=t.lossless.ComponentSpec||(void 0!==e?e("./component-spec.js"):null),t.lossless.DataStream=t.lossless.DataStream||(void 0!==e?e("./data-stream.js"):null),t.lossless.FrameHeader=t.lossless.FrameHeader||function(){this.components=[],this.dimX=0,this.dimY=0,this.numComp=0,this.precision=0},t.lossless.FrameHeader.prototype.read=function(e){var i,r,n,f,a=0;for(i=e.get16(),a+=2,this.precision=e.get8(),a+=1,this.dimY=e.get16(),a+=2,this.dimX=e.get16(),a+=2,this.numComp=e.get8(),a+=1,r=1;r<=this.numComp;r+=1){if(a>i)throw new Error("ERROR: frame format error");if(n=e.get8(),(a+=1)>=i)throw new Error("ERROR: frame format error [c>=Lf]");f=e.get8(),a+=1,this.components[n]||(this.components[n]=new t.lossless.ComponentSpec),this.components[n].hSamp=f>>4,this.components[n].vSamp=15&f,this.components[n].quantTableSel=e.get8(),a+=1}if(a!==i)throw new Error("ERROR: frame format error [Lf!=count]");return 1},"undefined"!==typeof i&&i.exports&&(i.exports=t.lossless.FrameHeader)},{"./component-spec.js":1,"./data-stream.js":2}],5:[function(e,i,r){"use strict";var t=t||{};t.lossless=t.lossless||{},t.lossless.DataStream=t.lossless.DataStream||(void 0!==e?e("./data-stream.js"):null),t.lossless.Utils=t.lossless.Utils||(void 0!==e?e("./utils.js"):null),t.lossless.HuffmanTable=t.lossless.HuffmanTable||function(){this.l=t.lossless.Utils.createArray(4,2,16),this.th=[],this.v=t.lossless.Utils.createArray(4,2,16,200),this.tc=t.lossless.Utils.createArray(4,2),this.tc[0][0]=0,this.tc[1][0]=0,this.tc[2][0]=0,this.tc[3][0]=0,this.tc[0][1]=0,this.tc[1][1]=0,this.tc[2][1]=0,this.tc[3][1]=0,this.th[0]=0,this.th[1]=0,this.th[2]=0,this.th[3]=0},t.lossless.HuffmanTable.MSB=2147483648,t.lossless.HuffmanTable.prototype.read=function(e,i){var r,t,n,f,a,s,l=0;for(r=e.get16(),l+=2;l<r;){if(l+=1,(n=15&(t=e.get8()))>3)throw new Error("ERROR: Huffman table ID > 3");if((f=t>>4)>2)throw new Error("ERROR: Huffman table [Table class > 2 ]");for(this.th[n]=1,this.tc[n][f]=1,a=0;a<16;a+=1)this.l[n][f][a]=e.get8(),l+=1;for(a=0;a<16;a+=1)for(s=0;s<this.l[n][f][a];s+=1){if(l>r)throw new Error("ERROR: Huffman table format error [count>Lh]");this.v[n][f][a][s]=e.get8(),l+=1}}if(l!==r)throw new Error("ERROR: Huffman table format error [count!=Lf]");for(a=0;a<4;a+=1)for(s=0;s<2;s+=1)0!==this.tc[a][s]&&this.buildHuffTable(i[a][s],this.l[a][s],this.v[a][s]);return 1},t.lossless.HuffmanTable.prototype.buildHuffTable=function(e,i,r){var n,f,a,s,l;for(256,f=0,a=0;a<8;a+=1)for(s=0;s<i[a];s+=1)for(l=0;l<256>>a+1;l+=1)e[f]=r[a][s]|a+1<<8,f+=1;for(a=1;f<256;a+=1,f+=1)e[f]=a|t.lossless.HuffmanTable.MSB;for(n=1,f=0,a=8;a<16;a+=1)for(s=0;s<i[a];s+=1){for(l=0;l<256>>a-7;l+=1)e[256*n+f]=r[a][s]|a+1<<8,f+=1;if(f>=256){if(f>256)throw new Error("ERROR: Huffman table error(1)!");f=0,n+=1}}},"undefined"!==typeof i&&i.exports&&(i.exports=t.lossless.HuffmanTable)},{"./data-stream.js":2,"./utils.js":10}],6:[function(e,i,r){"use strict";var t=t||{};t.lossless=t.lossless||{},t.lossless.ComponentSpec=t.lossless.ComponentSpec||(void 0!==e?e("./component-spec.js"):null),t.lossless.DataStream=t.lossless.DataStream||(void 0!==e?e("./data-stream.js"):null),t.lossless.Decoder=t.lossless.Decoder||(void 0!==e?e("./decoder.js"):null),t.lossless.FrameHeader=t.lossless.FrameHeader||(void 0!==e?e("./frame-header.js"):null),t.lossless.HuffmanTable=t.lossless.HuffmanTable||(void 0!==e?e("./huffman-table.js"):null),t.lossless.QuantizationTable=t.lossless.QuantizationTable||(void 0!==e?e("./quantization-table.js"):null),t.lossless.ScanComponent=t.lossless.ScanComponent||(void 0!==e?e("./scan-component.js"):null),t.lossless.ScanHeader=t.lossless.ScanHeader||(void 0!==e?e("./scan-header.js"):null),t.lossless.Utils=t.lossless.Utils||(void 0!==e?e("./utils.js"):null),"undefined"!==typeof i&&i.exports&&(i.exports=t)},{"./component-spec.js":1,"./data-stream.js":2,"./decoder.js":3,"./frame-header.js":4,"./huffman-table.js":5,"./quantization-table.js":7,"./scan-component.js":8,"./scan-header.js":9,"./utils.js":10}],7:[function(e,i,r){"use strict";var t=t||{};t.lossless=t.lossless||{},t.lossless.DataStream=t.lossless.DataStream||(void 0!==e?e("./data-stream.js"):null),t.lossless.Utils=t.lossless.Utils||(void 0!==e?e("./utils.js"):null),t.lossless.QuantizationTable=t.lossless.QuantizationTable||function(){this.precision=[],this.tq=[],this.quantTables=t.lossless.Utils.createArray(4,64),this.tq[0]=0,this.tq[1]=0,this.tq[2]=0,this.tq[3]=0},t.lossless.QuantizationTable.enhanceQuantizationTable=function(e,i){var r;for(r=0;r<8;r+=1)e[i[0+r]]*=90,e[i[32+r]]*=90,e[i[16+r]]*=118,e[i[48+r]]*=49,e[i[40+r]]*=71,e[i[8+r]]*=126,e[i[56+r]]*=25,e[i[24+r]]*=106;for(r=0;r<8;r+=1)e[i[0+8*r]]*=90,e[i[4+8*r]]*=90,e[i[2+8*r]]*=118,e[i[6+8*r]]*=49,e[i[5+8*r]]*=71,e[i[1+8*r]]*=126,e[i[7+8*r]]*=25,e[i[3+8*r]]*=106;for(r=0;r<64;r+=1)e[r]>>=6},t.lossless.QuantizationTable.prototype.read=function(e,i){var r,n,f,a,s=0;for(r=e.get16(),s+=2;s<r;){if(s+=1,(f=15&(n=e.get8()))>3)throw new Error("ERROR: Quantization table ID > 3");if(this.precision[f]=n>>4,0===this.precision[f])this.precision[f]=8;else{if(1!==this.precision[f])throw new Error("ERROR: Quantization table precision error");this.precision[f]=16}if(this.tq[f]=1,8===this.precision[f]){for(a=0;a<64;a+=1){if(s>r)throw new Error("ERROR: Quantization table format error");this.quantTables[f][a]=e.get8(),s+=1}t.lossless.QuantizationTable.enhanceQuantizationTable(this.quantTables[f],i)}else{for(a=0;a<64;a+=1){if(s>r)throw new Error("ERROR: Quantization table format error");this.quantTables[f][a]=e.get16(),s+=2}t.lossless.QuantizationTable.enhanceQuantizationTable(this.quantTables[f],i)}}if(s!==r)throw new Error("ERROR: Quantization table error [count!=Lq]");return 1},"undefined"!==typeof i&&i.exports&&(i.exports=t.lossless.QuantizationTable)},{"./data-stream.js":2,"./utils.js":10}],8:[function(e,i,r){"use strict";var t=t||{};t.lossless=t.lossless||{},t.lossless.ScanComponent=t.lossless.ScanComponent||function(){this.acTabSel=0,this.dcTabSel=0,this.scanCompSel=0},"undefined"!==typeof i&&i.exports&&(i.exports=t.lossless.ScanComponent)},{}],9:[function(e,i,r){"use strict";var t=t||{};t.lossless=t.lossless||{},t.lossless.DataStream=t.lossless.DataStream||(void 0!==e?e("./data-stream.js"):null),t.lossless.ScanComponent=t.lossless.ScanComponent||(void 0!==e?e("./scan-component.js"):null),t.lossless.ScanHeader=t.lossless.ScanHeader||function(){this.ah=0,this.al=0,this.numComp=0,this.selection=0,this.spectralEnd=0,this.components=[]},t.lossless.ScanHeader.prototype.read=function(e){var i,r,n,f=0;for(i=e.get16(),f+=2,this.numComp=e.get8(),f+=1,r=0;r<this.numComp;r+=1){if(this.components[r]=new t.lossless.ScanComponent,f>i)throw new Error("ERROR: scan header format error");this.components[r].scanCompSel=e.get8(),f+=1,n=e.get8(),f+=1,this.components[r].dcTabSel=n>>4,this.components[r].acTabSel=15&n}if(this.selection=e.get8(),f+=1,this.spectralEnd=e.get8(),f+=1,n=e.get8(),this.ah=n>>4,this.al=15&n,(f+=1)!==i)throw new Error("ERROR: scan header format error [count!=Ns]");return 1},"undefined"!==typeof i&&i.exports&&(i.exports=t.lossless.ScanHeader)},{"./data-stream.js":2,"./scan-component.js":8}],10:[function(e,i,r){"use strict";var t=t||{};t.lossless=t.lossless||{},t.lossless.Utils=t.lossless.Utils||{},t.lossless.Utils.createArray=function(e){var i=new Array(e||0),r=e;if(arguments.length>1)for(var n=Array.prototype.slice.call(arguments,1);r--;)i[e-1-r]=t.lossless.Utils.createArray.apply(this,n);return i},t.lossless.Utils.makeCRCTable=function(){for(var e,i=[],r=0;r<256;r++){e=r;for(var t=0;t<8;t++)e=1&e?3988292384^e>>>1:e>>>1;i[r]=e}return i},t.lossless.Utils.crc32=function(e){for(var i=new Uint8Array(e.buffer),r=t.lossless.Utils.crcTable||(t.lossless.Utils.crcTable=t.lossless.Utils.makeCRCTable()),n=-1,f=0;f<i.length;f++)n=n>>>8^r[255&(n^i[f])];return(-1^n)>>>0},"undefined"!==typeof i&&i.exports&&(i.exports=t.lossless.Utils)},{}]},{},[6])(6)}))},function(e,i,r){"use strict";e.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},function(module,exports){var OpenJPEG=function(Module){var Module;Module=Module||{},Module||(Module=(void 0!==OpenJPEG?OpenJPEG:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB="object"==typeof window,ENVIRONMENT_IS_WORKER="function"==typeof importScripts,ENVIRONMENT_IS_NODE="object"==typeof process&&"function"==typeof require&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){Module.print||(Module.print=function(e){process.stdout.write(e+"\\n")}),Module.printErr||(Module.printErr=function(e){process.stderr.write(e+"\\n")});var nodeFS=require("fs"),nodePath=require("path");Module.read=function(e,i){e=nodePath.normalize(e);var r=nodeFS.readFileSync(e);return r||e==nodePath.resolve(e)||(e=path.join(__dirname,"..","src",e),r=nodeFS.readFileSync(e)),r&&!i&&(r=r.toString()),r},Module.readBinary=function(e){var i=Module.read(e,!0);return i.buffer||(i=new Uint8Array(i)),assert(i.buffer),i},Module.load=function(e){globalEval(read(e))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),void 0!==module&&(module.exports=Module),process.on("uncaughtException",(function(e){if(!(e instanceof ExitStatus))throw e})),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),"undefined"!=typeof printErr&&(Module.printErr=printErr),"undefined"!=typeof read?Module.read=read:Module.read=function(){throw"no read() available (jsc?)"},Module.readBinary=function(e){if("function"==typeof readbuffer)return new Uint8Array(readbuffer(e));var i=read(e,"binary");return assert("object"==typeof i),i},"undefined"!=typeof scriptArgs?Module.arguments=scriptArgs:void 0!==arguments&&(Module.arguments=arguments);else{if(!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER)throw"Unknown runtime environment. Where are we?";if(Module.read=function(e){var i=new XMLHttpRequest;return i.open("GET",e,!1),i.send(null),i.responseText},void 0!==arguments&&(Module.arguments=arguments),"undefined"!=typeof console)Module.print||(Module.print=function(e){console.log(e)}),Module.printErr||(Module.printErr=function(e){console.log(e)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&"undefined"!=typeof dump?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),void 0===Module.setWindowTitle&&(Module.setWindowTitle=function(e){document.title=e})}function globalEval(e){eval.call(null,e)}for(var key in!Module.load&&Module.read&&(Module.load=function(e){globalEval(Module.read(e))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[],moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);var Runtime={setTempRet0:function(e){tempRet0=e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:if("*"===e[e.length-1])return Runtime.QUANTUM_SIZE;if("i"===e[0]){var i=parseInt(e.substr(1));return assert(i%8==0),i/8}return 0}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,i){return"double"===i||"i64"===i?7&e&&(assert(4==(7&e)),e+=4):assert(0==(3&e)),e},getAlignSize:function(e,i,r){return r||"i64"!=e&&"double"!=e?e?Math.min(i||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(i,8):8},dynCall:function(e,i,r){return r&&r.length?(r.splice||(r=Array.prototype.slice.call(r)),r.splice(0,0,i),Module["dynCall_"+e].apply(null,r)):Module["dynCall_"+e].call(null,i)},functionPointers:[],addFunction:function(e){for(var i=0;i<Runtime.functionPointers.length;i++)if(!Runtime.functionPointers[i])return Runtime.functionPointers[i]=e,2*(1+i);throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."},removeFunction:function(e){Runtime.functionPointers[(e-2)/2]=null},warnOnce:function(e){Runtime.warnOnce.shown||(Runtime.warnOnce.shown={}),Runtime.warnOnce.shown[e]||(Runtime.warnOnce.shown[e]=1,Module.printErr(e))},funcWrappers:{},getFuncWrapper:function(e,i){assert(i),Runtime.funcWrappers[i]||(Runtime.funcWrappers[i]={});var r=Runtime.funcWrappers[i];return r[e]||(r[e]=function(){return Runtime.dynCall(i,e,arguments)}),r[e]},getCompilerSetting:function(e){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"},stackAlloc:function(e){var i=STACKTOP;return STACKTOP=(STACKTOP=STACKTOP+e|0)+15&-16,i},staticAlloc:function(e){var i=STATICTOP;return STATICTOP=(STATICTOP=STATICTOP+e|0)+15&-16,i},dynamicAlloc:function(e){var i=DYNAMICTOP;if((DYNAMICTOP=(DYNAMICTOP=DYNAMICTOP+e|0)+15&-16)>=TOTAL_MEMORY&&!enlargeMemory())return DYNAMICTOP=i,0;return i},alignMemory:function(e,i){return e=Math.ceil(e/(i||16))*(i||16)},makeBigInt:function(e,i,r){return r?+(e>>>0)+4294967296*+(i>>>0):+(e>>>0)+4294967296*+(0|i)},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var __THREW__=0,ABORT=!1,EXITSTATUS=0,undef=0,tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat,tempI64,tempI64b,tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9;function assert(e,i){e||abort("Assertion failed: "+i)}var globalScope=this,cwrap,ccall;function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}function setValue(e,i,r,t){switch("*"===(r=r||"i8").charAt(r.length-1)&&(r="i32"),r){case"i1":case"i8":HEAP8[e>>0]=i;break;case"i16":HEAP16[e>>1]=i;break;case"i32":HEAP32[e>>2]=i;break;case"i64":tempI64=[i>>>0,(tempDouble=i,+Math_abs(tempDouble)>=1?tempDouble>0?(0|Math_min(+Math_floor(tempDouble/4294967296),4294967295))>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=i;break;case"double":HEAPF64[e>>3]=i;break;default:abort("invalid type for setValue: "+r)}}function getValue(e,i,r){switch("*"===(i=i||"i8").charAt(i.length-1)&&(i="i32"),i){case"i1":case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+i)}return null}!function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var i=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,i),i},stringToC:function(e){var i=0;return null!=e&&0!==e&&writeStringToMemory(e,i=Runtime.stackAlloc(1+(e.length<<2))),i}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(e,i,r,t,n){var f=getCFunc(e),a=[],s=0;if(t)for(var l=0;l<t.length;l++){var o=toC[r[l]];o?(0===s&&(s=Runtime.stackSave()),a[l]=o(t[l])):a[l]=t[l]}var u=f.apply(null,a);if("string"===i&&(u=Pointer_stringify(u)),0!==s){if(n&&n.async)return void EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(s)}));Runtime.stackRestore(s)}return u};var sourceRegex=/^function\\s*\\(([^)]*)\\)\\s*{\\s*([^*]*?)[\\s;]*(?:return\\s*(.*?)[;\\s]*)?}$/;function parseJSFunc(e){var i=e.toString().match(sourceRegex);return i?{arguments:(i=i.slice(1))[0],body:i[1],returnValue:i[2]}:{}}var JSsource={};for(var fun in JSfuncs)JSfuncs.hasOwnProperty(fun)&&(JSsource[fun]=parseJSFunc(JSfuncs[fun]));cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident),numericArgs=argTypes.every((function(e){return"number"===e})),numericRet="string"!==returnType;if(numericRet&&numericArgs)return cfunc;var argNames=argTypes.map((function(e,i){return"$"+i})),funcstr="(function("+argNames.join(",")+") {",nargs=argTypes.length;if(!numericArgs){funcstr+="var stack = "+JSsource.stackSave.body+";";for(var i=0;i<nargs;i++){var arg=argNames[i],type=argTypes[i];if("number"!==type){var convertCode=JSsource[type+"ToC"];funcstr+="var "+convertCode.arguments+" = "+arg+";",funcstr+=convertCode.body+";",funcstr+=arg+"="+convertCode.returnValue+";"}}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;if(funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");",!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}return numericArgs||(funcstr+=JSsource.stackRestore.body.replace("()","(stack)")+";"),funcstr+="return ret})",eval(funcstr)}}(),Module.ccall=ccall,Module.cwrap=cwrap,Module.setValue=setValue,Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;function allocate(e,i,r,t){var n,f;"number"==typeof e?(n=!0,f=e):(n=!1,f=e.length);var a,s="string"==typeof i?i:null;if(a=r==ALLOC_NONE?t:[_malloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][void 0===r?ALLOC_STATIC:r](Math.max(f,s?1:i.length)),n){var l;t=a;for(assert(0==(3&a)),l=a+(-4&f);t<l;t+=4)HEAP32[t>>2]=0;for(l=a+f;t<l;)HEAP8[t++>>0]=0;return a}if("i8"===s)return e.subarray||e.slice?HEAPU8.set(e,a):HEAPU8.set(new Uint8Array(e),a),a;for(var o,u,c,h=0;h<f;){var d=e[h];"function"==typeof d&&(d=Runtime.getFunctionIndex(d)),0!==(o=s||i[h])?("i64"==o&&(o="i32"),setValue(a+h,d,o),c!==o&&(u=Runtime.getNativeTypeSize(o),c=o),h+=u):h++}return a}function getMemory(e){return staticSealed?void 0!==_sbrk&&!_sbrk.called||!runtimeInitialized?Runtime.dynamicAlloc(e):_malloc(e):Runtime.staticAlloc(e)}function Pointer_stringify(e,i){if(0===i||!e)return"";for(var r,t=0,n=0;t|=r=HEAPU8[e+n>>0],(0!=r||i)&&(n++,!i||n!=i););i||(i=n);var f="";if(t<128){for(var a;i>0;)a=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(i,1024))),f=f?f+a:a,e+=1024,i-=1024;return f}return Module.UTF8ToString(e)}function AsciiToString(e){for(var i="";;){var r=HEAP8[e++>>0];if(!r)return i;i+=String.fromCharCode(r)}}function stringToAscii(e,i){return writeAsciiToMemory(e,i,!1)}function UTF8ArrayToString(e,i){for(var r,t,n,f,a,s="";;){if(!(r=e[i++]))return s;if(128&r)if(t=63&e[i++],192!=(224&r))if(n=63&e[i++],224==(240&r)?r=(15&r)<<12|t<<6|n:(f=63&e[i++],240==(248&r)?r=(7&r)<<18|t<<12|n<<6|f:(a=63&e[i++],r=248==(252&r)?(3&r)<<24|t<<18|n<<12|f<<6|a:(1&r)<<30|t<<24|n<<18|f<<12|a<<6|63&e[i++])),r<65536)s+=String.fromCharCode(r);else{var l=r-65536;s+=String.fromCharCode(55296|l>>10,56320|1023&l)}else s+=String.fromCharCode((31&r)<<6|t);else s+=String.fromCharCode(r)}}function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}function stringToUTF8Array(e,i,r,t){if(!(t>0))return 0;for(var n=r,f=r+t-1,a=0;a<e.length;++a){var s=e.charCodeAt(a);if(s>=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++a)),s<=127){if(r>=f)break;i[r++]=s}else if(s<=2047){if(r+1>=f)break;i[r++]=192|s>>6,i[r++]=128|63&s}else if(s<=65535){if(r+2>=f)break;i[r++]=224|s>>12,i[r++]=128|s>>6&63,i[r++]=128|63&s}else if(s<=2097151){if(r+3>=f)break;i[r++]=240|s>>18,i[r++]=128|s>>12&63,i[r++]=128|s>>6&63,i[r++]=128|63&s}else if(s<=67108863){if(r+4>=f)break;i[r++]=248|s>>24,i[r++]=128|s>>18&63,i[r++]=128|s>>12&63,i[r++]=128|s>>6&63,i[r++]=128|63&s}else{if(r+5>=f)break;i[r++]=252|s>>30,i[r++]=128|s>>24&63,i[r++]=128|s>>18&63,i[r++]=128|s>>12&63,i[r++]=128|s>>6&63,i[r++]=128|63&s}}return i[r]=0,r-n}function stringToUTF8(e,i,r){return stringToUTF8Array(e,HEAPU8,i,r)}function lengthBytesUTF8(e){for(var i=0,r=0;r<e.length;++r){var t=e.charCodeAt(r);t>=55296&&t<=57343&&(t=65536+((1023&t)<<10)|1023&e.charCodeAt(++r)),t<=127?++i:i+=t<=2047?2:t<=65535?3:t<=2097151?4:t<=67108863?5:6}return i}function UTF16ToString(e){for(var i=0,r="";;){var t=HEAP16[e+2*i>>1];if(0==t)return r;++i,r+=String.fromCharCode(t)}}function stringToUTF16(e,i,r){if(void 0===r&&(r=2147483647),r<2)return 0;for(var t=i,n=(r-=2)<2*e.length?r/2:e.length,f=0;f<n;++f){var a=e.charCodeAt(f);HEAP16[i>>1]=a,i+=2}return HEAP16[i>>1]=0,i-t}function lengthBytesUTF16(e){return 2*e.length}function UTF32ToString(e){for(var i=0,r="";;){var t=HEAP32[e+4*i>>2];if(0==t)return r;if(++i,t>=65536){var n=t-65536;r+=String.fromCharCode(55296|n>>10,56320|1023&n)}else r+=String.fromCharCode(t)}}function stringToUTF32(e,i,r){if(void 0===r&&(r=2147483647),r<4)return 0;for(var t=i,n=t+r-4,f=0;f<e.length;++f){var a=e.charCodeAt(f);if(a>=55296&&a<=57343)a=65536+((1023&a)<<10)|1023&e.charCodeAt(++f);if(HEAP32[i>>2]=a,(i+=4)+4>n)break}return HEAP32[i>>2]=0,i-t}function lengthBytesUTF32(e){for(var i=0,r=0;r<e.length;++r){var t=e.charCodeAt(r);t>=55296&&t<=57343&&++r,i+=4}return i}function demangle(e){var i=!!Module.___cxa_demangle;if(i)try{var r=_malloc(e.length);writeStringToMemory(e.substr(1),r);var t=_malloc(4),n=Module.___cxa_demangle(r,0,0,t);if(0===getValue(t,"i32")&&n)return Pointer_stringify(n)}catch(e){}finally{r&&_free(r),t&&_free(t),n&&_free(n)}var f=3,a={v:"void",b:"bool",c:"char",s:"short",i:"int",l:"long",f:"float",d:"double",w:"wchar_t",a:"signed char",h:"unsigned char",t:"unsigned short",j:"unsigned int",m:"unsigned long",x:"long long",y:"unsigned long long",z:"..."},s=[],l=!0;var o=e;try{if("Object._main"==e||"_main"==e)return"main()";if("number"==typeof e&&(e=Pointer_stringify(e)),"_"!==e[0])return e;if("_"!==e[1])return e;if("Z"!==e[2])return e;switch(e[3]){case"n":return"operator new()";case"d":return"operator delete()"}o=function i(r,t,n){t=t||1/0;var o,u="",c=[];if("N"===e[f]){if(o=function(){"K"===e[++f]&&f++;for(var i=[];"E"!==e[f];)if("S"!==e[f])if("C"!==e[f]){var r=parseInt(e.substr(f)),t=r.toString().length;if(!r||!t){f--;break}var n=e.substr(f+t,r);i.push(n),s.push(n),f+=t+r}else i.push(i[i.length-1]),f+=2;else{f++;var a=e.indexOf("_",f),l=e.substring(f,a)||0;i.push(s[l]||"?"),f=a+1}return f++,i}().join("::"),0===--t)return r?[o]:o}else if(("K"===e[f]||l&&"L"===e[f])&&f++,k=parseInt(e.substr(f))){var h=k.toString().length;o=e.substr(f+h,k),f+=h+k}if(l=!1,"I"===e[f]){f++;var d=i(!0);u+=i(!0,1,!0)[0]+" "+o+"<"+d.join(", ")+">"}else u=o;e:for(;f<e.length&&t-- >0;){var b=e[f++];if(b in a)c.push(a[b]);else switch(b){case"P":c.push(i(!0,1,!0)[0]+"*");break;case"R":c.push(i(!0,1,!0)[0]+"&");break;case"L":f++;var k=e.indexOf("E",f)-f;c.push(e.substr(f,k)),f+=k+2;break;case"A":k=parseInt(e.substr(f));if(f+=k.toString().length,"_"!==e[f])throw"?";f++,c.push(i(!0,1,!0)[0]+" ["+k+"]");break;case"E":break e;default:u+="?"+b;break e}}return n||1!==c.length||"void"!==c[0]||(c=[]),r?(u&&c.push(u+"?"),c):u+"("+c.join(", ")+")"}()}catch(e){o+="?"}return o.indexOf("?")>=0&&!i&&Runtime.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),o}function demangleAll(e){return e.replace(/__Z[\\w\\d_]+/g,(function(e){var i=demangle(e);return e===i?e:e+" ["+i+"]"}))}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(i){e=i}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE,Module.allocate=allocate,Module.getMemory=getMemory,Module.Pointer_stringify=Pointer_stringify,Module.AsciiToString=AsciiToString,Module.stringToAscii=stringToAscii,Module.UTF8ArrayToString=UTF8ArrayToString,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8Array=stringToUTF8Array,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8,Module.UTF16ToString=UTF16ToString,Module.stringToUTF16=stringToUTF16,Module.lengthBytesUTF16=lengthBytesUTF16,Module.UTF32ToString=UTF32ToString,Module.stringToUTF32=stringToUTF32,Module.lengthBytesUTF32=lengthBytesUTF32,Module.stackTrace=stackTrace;var PAGE_SIZE=4096,HEAP,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function alignMemoryPage(e){return e%4096>0&&(e+=4096-e%4096),e}var STATIC_BASE=0,STATICTOP=0,staticSealed=!1,STACK_BASE=0,STACKTOP=0,STACK_MAX=0,DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}for(var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||4e8,totalMemory=65536,buffer;totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK;)totalMemory<16777216?totalMemory*=2:totalMemory+=16777216;function callRuntimeCallbacks(e){for(;e.length>0;){var i=e.shift();if("function"!=typeof i){var r=i.func;"number"==typeof r?void 0===i.arg?Runtime.dynCall("v",r):Runtime.dynCall("vi",r,[i.arg]):r(void 0===i.arg?null:i.arg)}else i()}}totalMemory!==TOTAL_MEMORY&&(TOTAL_MEMORY=totalMemory),assert("undefined"!=typeof Int32Array&&"undefined"!=typeof Float64Array&&!!new Int32Array(1).subarray&&!!new Int32Array(1).set,"JS engine does not provide full typed array support"),buffer=new ArrayBuffer(TOTAL_MEMORY),HEAP8=new Int8Array(buffer),HEAP16=new Int16Array(buffer),HEAP32=new Int32Array(buffer),HEAPU8=new Uint8Array(buffer),HEAPU16=new Uint16Array(buffer),HEAPU32=new Uint32Array(buffer),HEAPF32=new Float32Array(buffer),HEAPF64=new Float64Array(buffer),HEAP32[0]=255,assert(255===HEAPU8[0]&&0===HEAPU8[3],"Typed arrays 2 must be run on a little-endian system"),Module.HEAP=HEAP,Module.buffer=buffer,Module.HEAP8=HEAP8,Module.HEAP16=HEAP16,Module.HEAP32=HEAP32,Module.HEAPU8=HEAPU8,Module.HEAPU16=HEAPU16,Module.HEAPU32=HEAPU32,Module.HEAPF32=HEAPF32,Module.HEAPF64=HEAPF64;var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for("function"==typeof Module.preRun&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for("function"==typeof Module.postRun&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}function addOnInit(e){__ATINIT__.unshift(e)}function addOnPreMain(e){__ATMAIN__.unshift(e)}function addOnExit(e){__ATEXIT__.unshift(e)}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}function intArrayFromString(e,i,r){var t=r>0?r:lengthBytesUTF8(e)+1,n=new Array(t),f=stringToUTF8Array(e,n,0,n.length);return i&&(n.length=f),n}function intArrayToString(e){for(var i=[],r=0;r<e.length;r++){var t=e[r];t>255&&(t&=255),i.push(String.fromCharCode(t))}return i.join("")}function writeStringToMemory(e,i,r){for(var t=intArrayFromString(e,r),n=0;n<t.length;){var f=t[n];HEAP8[i+n>>0]=f,n+=1}}function writeArrayToMemory(e,i){for(var r=0;r<e.length;r++)HEAP8[i++>>0]=e[r]}function writeAsciiToMemory(e,i,r){for(var t=0;t<e.length;++t)HEAP8[i++>>0]=e.charCodeAt(t);r||(HEAP8[i>>0]=0)}function unSign(e,i,r){return e>=0?e:i<=32?2*Math.abs(1<<i-1)+e:Math.pow(2,i)+e}function reSign(e,i,r){if(e<=0)return e;var t=i<=32?Math.abs(1<<i-1):Math.pow(2,i-1);return e>=t&&(i<=32||e>t)&&(e=-2*t+e),e}Module.addOnPreRun=addOnPreRun,Module.addOnInit=addOnInit,Module.addOnPreMain=addOnPreMain,Module.addOnExit=addOnExit,Module.addOnPostRun=addOnPostRun,Module.intArrayFromString=intArrayFromString,Module.intArrayToString=intArrayToString,Module.writeStringToMemory=writeStringToMemory,Module.writeArrayToMemory=writeArrayToMemory,Module.writeAsciiToMemory=writeAsciiToMemory,Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(e,i){var r=65535&e,t=65535&i;return r*t+((e>>>16)*t+r*(i>>>16)<<16)|0}),Math.imul=Math.imul,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var i=0;i<32;i++)if(e&1<<31-i)return i;return 32}),Math.clz32=Math.clz32;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_min=Math.min,Math_clz32=Math.clz32,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),0==runDependencies&&(null!==runDependencyWatcher&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var i=dependenciesFulfilled;dependenciesFulfilled=null,i()}}Module.addRunDependency=addRunDependency,Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var memoryInitializer=null,ASM_CONSTS=[];STATIC_BASE=8,STATICTOP=STATIC_BASE+25664,__ATINIT__.push(),allocate([131,192,202,161,69,182,251,63,127,251,58,112,206,136,234,63,127,251,58,112,206,136,234,63,131,192,202,161,69,182,251,63,225,122,20,174,71,225,252,63,94,186,73,12,2,43,249,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,6,64,0,0,0,0,0,128,21,64,92,143,194,245,40,92,37,64,215,163,112,61,10,87,53,64,246,40,92,143,194,85,69,64,133,235,81,184,30,85,85,64,102,102,102,102,102,86,101,64,205,204,204,204,204,84,117,64,207,247,83,227,165,155,240,63,70,182,243,253,212,120,249,63,39,49,8,172,28,90,7,64,29,90,100,59,223,207,22,64,41,92,143,194,245,168,38,64,164,112,61,10,215,163,54,64,0,0,0,0,0,160,70,64,31,133,235,81,184,158,86,64,205,204,204,204,204,156,102,64,0,0,0,0,0,0,0,0,207,247,83,227,165,155,240,63,70,182,243,253,212,120,249,63,39,49,8,172,28,90,7,64,29,90,100,59,223,207,22,64,41,92,143,194,245,168,38,64,164,112,61,10,215,163,54,64,0,0,0,0,0,160,70,64,31,133,235,81,184,158,86,64,205,204,204,204,204,156,102,64,0,0,0,0,0,0,0,0,173,250,92,109,197,254,230,63,86,125,174,182,98,127,237,63,199,75,55,137,65,96,249,63,242,210,77,98,16,88,8,64,250,126,106,188,116,19,24,64,133,235,81,184,30,5,40,64,0,0,0,0,0,0,56,64,92,143,194,245,40,252,71,64,236,81,184,30,133,251,87,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,113,61,10,215,163,112,255,63,104,145,237,124,63,181,16,64,117,147,24,4,86,206,32,64,102,102,102,102,102,230,48,64,236,81,184,30,133,235,64,64,92,143,194,245,40,236,80,64,154,153,153,153,153,233,96,64,154,153,153,153,153,233,112,64,51,51,51,51,51,231,128,64,147,24,4,86,14,45,0,64,182,243,253,212,120,233,15,64,246,40,92,143,194,181,32,64,10,215,163,112,61,10,49,64,195,245,40,92,143,34,65,64,184,30,133,235,81,40,81,64,154,153,153,153,153,41,97,64,154,153,153,153,153,41,113,64,0,0,0,0,0,40,129,64,0,0,0,0,0,0,0,0,147,24,4,86,14,45,0,64,182,243,253,212,120,233,15,64,246,40,92,143,194,181,32,64,10,215,163,112,61,10,49,64,195,245,40,92,143,34,65,64,184,30,133,235,81,40,81,64,154,153,153,153,153,41,97,64,154,153,153,153,153,41,113,64,0,0,0,0,0,40,129,64,0,0,0,0,0,0,0,0,164,112,61,10,215,163,0,64,236,81,184,30,133,235,14,64,119,190,159,26,47,157,32,64,174,71,225,122,20,46,49,64,123,20,174,71,225,90,65,64,246,40,92,143,194,101,81,64,154,153,153,153,153,105,97,64,154,153,153,153,153,105,113,64,154,153,153,153,153,105,129,64,0,0,0,0,0,0,0,0,4,0,0,0,67,80,82,76,0,0,0,0,0,0,0,0,76,82,67,80,0,0,0,0,3,0,0,0,80,67,82,76,0,0,0,0,1,0,0,0,82,76,67,80,0,0,0,0,2,0,0,0,82,80,67,76,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,144,255,0,0,12,0,0,0,1,0,0,0,82,255,0,0,20,0,0,0,2,0,0,0,83,255,0,0,20,0,0,0,3,0,0,0,94,255,0,0,20,0,0,0,4,0,0,0,92,255,0,0,20,0,0,0,5,0,0,0,93,255,0,0,20,0,0,0,6,0,0,0,95,255,0,0,20,0,0,0,7,0,0,0,81,255,0,0,2,0,0,0,8,0,0,0,85,255,0,0,4,0,0,0,9,0,0,0,87,255,0,0,4,0,0,0,10,0,0,0,88,255,0,0,16,0,0,0,11,0,0,0,96,255,0,0,4,0,0,0,12,0,0,0,97,255,0,0,16,0,0,0,13,0,0,0,145,255,0,0,0,0,0,0,0,0,0,0,99,255,0,0,4,0,0,0,14,0,0,0,100,255,0,0,20,0,0,0,15,0,0,0,116,255,0,0,20,0,0,0,16,0,0,0,120,255,0,0,4,0,0,0,17,0,0,0,117,255,0,0,20,0,0,0,18,0,0,0,119,255,0,0,20,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,8,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,32,32,80,106,20,0,0,0,112,121,116,102,21,0,0,0,104,50,112,106,22,0,0,0,114,100,104,105,23,0,0,0,114,108,111,99,24,0,0,0,99,99,112,98,25,0,0,0,114,108,99,112,26,0,0,0,112,97,109,99,27,0,0,0,102,101,100,99,28,0,0,0,1,86,0,0,0,0,0,0,164,4,0,0,180,4,0,0,1,86,0,0,1,0,0,0,180,4,0,0,164,4,0,0,1,52,0,0,0,0,0,0,196,4,0,0,68,5,0,0,1,52,0,0,1,0,0,0,212,4,0,0,84,5,0,0,1,24,0,0,0,0,0,0,228,4,0,0,164,5,0,0,1,24,0,0,1,0,0,0,244,4,0,0,180,5,0,0,193,10,0,0,0,0,0,0,4,5,0,0,4,6,0,0,193,10,0,0,1,0,0,0,20,5,0,0,20,6,0,0,33,5,0,0,0,0,0,0,36,5,0,0,36,8,0,0,33,5,0,0,1,0,0,0,52,5,0,0,52,8,0,0,33,2,0,0,0,0,0,0,68,9,0,0,164,8,0,0,33,2,0,0,1,0,0,0,84,9,0,0,180,8,0,0,1,86,0,0,0,0,0,0,100,5,0,0,84,5,0,0,1,86,0,0,1,0,0,0,116,5,0,0,68,5,0,0,1,84,0,0,0,0,0,0,132,5,0,0,68,6,0,0,1,84,0,0,1,0,0,0,148,5,0,0,84,6,0,0,1,72,0,0,0,0,0,0,164,5,0,0,68,6,0,0,1,72,0,0,1,0,0,0,180,5,0,0,84,6,0,0,1,56,0,0,0,0,0,0,196,5,0,0,68,6,0,0,1,56,0,0,1,0,0,0,212,5,0,0,84,6,0,0,1,48,0,0,0,0,0,0,228,5,0,0,164,6,0,0,1,48,0,0,1,0,0,0,244,5,0,0,180,6,0,0,1,36,0,0,0,0,0,0,4,6,0,0,196,6,0,0,1,36,0,0,1,0,0,0,20,6,0,0,212,6,0,0,1,28,0,0,0,0,0,0,36,6,0,0,4,7,0,0,1,28,0,0,1,0,0,0,52,6,0,0,20,7,0,0,1,22,0,0,0,0,0,0,36,8,0,0,36,7,0,0,1,22,0,0,1,0,0,0,52,8,0,0,52,7,0,0,1,86,0,0,0,0,0,0,100,6,0,0,84,6,0,0,1,86,0,0,1,0,0,0,116,6,0,0,68,6,0,0,1,84,0,0,0,0,0,0,132,6,0,0,68,6,0,0,1,84,0,0,1,0,0,0,148,6,0,0,84,6,0,0,1,81,0,0,0,0,0,0,164,6,0,0,100,6,0,0,1,81,0,0,1,0,0,0,180,6,0,0,116,6,0,0,1,72,0,0,0,0,0,0,196,6,0,0,132,6,0,0,1,72,0,0,1,0,0,0,212,6,0,0,148,6,0,0,1,56,0,0,0,0,0,0,228,6,0,0,164,6,0,0,1,56,0,0,1,0,0,0,244,6,0,0,180,6,0,0,1,52,0,0,0,0,0,0,4,7,0,0,196,6,0,0,1,52,0,0,1,0,0,0,20,7,0,0,212,6,0,0,1,48,0,0,0,0,0,0,36,7,0,0,228,6,0,0,1,48,0,0,1,0,0,0,52,7,0,0,244,6,0,0,1,40,0,0,0,0,0,0,68,7,0,0,228,6,0,0,1,40,0,0,1,0,0,0,84,7,0,0,244,6,0,0,1,36,0,0,0,0,0,0,100,7,0,0,4,7,0,0,1,36,0,0,1,0,0,0,116,7,0,0,20,7,0,0,1,34,0,0,0,0,0,0,132,7,0,0,36,7,0,0,1,34,0,0,1,0,0,0,148,7,0,0,52,7,0,0,1,28,0,0,0,0,0,0,164,7,0,0,68,7,0,0,1,28,0,0,1,0,0,0,180,7,0,0,84,7,0,0,1,24,0,0,0,0,0,0,196,7,0,0,100,7,0,0,1,24,0,0,1,0,0,0,212,7,0,0,116,7,0,0,1,22,0,0,0,0,0,0,228,7,0,0,132,7,0,0,1,22,0,0,1,0,0,0,244,7,0,0,148,7,0,0,1,20,0,0,0,0,0,0,4,8,0,0,164,7,0,0,1,20,0,0,1,0,0,0,20,8,0,0,180,7,0,0,1,18,0,0,0,0,0,0,36,8,0,0,196,7,0,0,1,18,0,0,1,0,0,0,52,8,0,0,212,7,0,0,1,17,0,0,0,0,0,0,68,8,0,0,228,7,0,0,1,17,0,0,1,0,0,0,84,8,0,0,244,7,0,0,193,10,0,0,0,0,0,0,100,8,0,0,4,8,0,0,193,10,0,0,1,0,0,0,116,8,0,0,20,8,0,0,193,9,0,0,0,0,0,0,132,8,0,0,36,8,0,0,193,9,0,0,1,0,0,0,148,8,0,0,52,8,0,0,161,8,0,0,0,0,0,0,164,8,0,0,68,8,0,0,161,8,0,0,1,0,0,0,180,8,0,0,84,8,0,0,33,5,0,0,0,0,0,0,196,8,0,0,100,8,0,0,33,5,0,0,1,0,0,0,212,8,0,0,116,8,0,0,65,4,0,0,0,0,0,0,228,8,0,0,132,8,0,0,65,4,0,0,1,0,0,0,244,8,0,0,148,8,0,0,161,2,0,0,0,0,0,0,4,9,0,0,164,8,0,0,161,2,0,0,1,0,0,0,20,9,0,0,180,8,0,0,33,2,0,0,0,0,0,0,36,9,0,0,196,8,0,0,33,2,0,0,1,0,0,0,52,9,0,0,212,8,0,0,65,1,0,0,0,0,0,0,68,9,0,0,228,8,0,0,65,1,0,0,1,0,0,0,84,9,0,0,244,8,0,0,17,1,0,0,0,0,0,0,100,9,0,0,4,9,0,0,17,1,0,0,1,0,0,0,116,9,0,0,20,9,0,0,133,0,0,0,0,0,0,0,132,9,0,0,36,9,0,0,133,0,0,0,1,0,0,0,148,9,0,0,52,9,0,0,73,0,0,0,0,0,0,0,164,9,0,0,68,9,0,0,73,0,0,0,1,0,0,0,180,9,0,0,84,9,0,0,37,0,0,0,0,0,0,0,196,9,0,0,100,9,0,0,37,0,0,0,1,0,0,0,212,9,0,0,116,9,0,0,21,0,0,0,0,0,0,0,228,9,0,0,132,9,0,0,21,0,0,0,1,0,0,0,244,9,0,0,148,9,0,0,9,0,0,0,0,0,0,0,4,10,0,0,164,9,0,0,9,0,0,0,1,0,0,0,20,10,0,0,180,9,0,0,5,0,0,0,0,0,0,0,36,10,0,0,196,9,0,0,5,0,0,0,1,0,0,0,52,10,0,0,212,9,0,0,1,0,0,0,0,0,0,0,36,10,0,0,228,9,0,0,1,0,0,0,1,0,0,0,52,10,0,0,244,9,0,0,1,86,0,0,0,0,0,0,68,10,0,0,68,10,0,0,1,86,0,0,1,0,0,0,84,10,0,0,84,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,11,0,0,12,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,38,94,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,64,4,32,0,32,2,128,0,128,8,16,0,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,1,0,3,128,4,0,6,128,7,0,9,128,10,0,12,128,13,0,15,128,16,0,18,128,19,0,21,128,22,0,24,128,25,0,27,128,28,0,30,128,31,0,33,128,34,0,36,128,37,0,39,128,40,0,42,128,43,0,45,128,46,0,48,128,49,0,51,128,52,0,54,128,55,0,57,128,58,0,60,128,61,0,63,128,64,0,66,128,67,0,69,128,70,0,72,128,73,0,75,128,76,0,78,128,79,0,81,128,82,0,84,128,85,0,87,128,88,0,90,128,91,0,93,128,94,0,96,128,97,0,99,128,100,0,102,128,103,0,105,128,106,0,108,128,109,0,111,128,112,0,114,128,115,0,117,128,118,0,0,0,0,0,0,0,0,0,0,0,0,128,0,128,0,128,0,128,0,0,1,0,1,0,1,128,1,128,1,0,2,0,2,128,2,128,2,0,3,0,3,128,3,0,4,0,4,128,4,0,5,128,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,128,11,0,12,128,12,0,13,0,14,128,14,0,15,0,16,128,16,128,17,0,18,0,19,128,19,128,20,0,21,0,22,0,23,128,23,128,24,128,25,128,26,0,27,0,28,0,29,0,30,0,31,0,32,0,33,0,34,0,35,0,36,0,37,128,38,128,39,128,40,128,41,0,43,0,44,0,45,128,46,128,47,0,49,0,50,128,51,128,52,0,54,0,55,128,56,0,58,0,59,128,60,0,62,128,63,128,64,0,66,128,67,0,69,128,70,0,72,128,73,0,75,128,76,0,78,128,79,128,81,0,83,128,84,0,86,0,88,128,89,0,91,0,93,128,94,128,96,0,98,0,100,128,101,128,103,0,105,0,107,0,109,128,110,128,112,128,114,128,116,0,118,0,120,0,122,0,124,0,126,0,24,128,23,0,23,128,22,0,22,128,21,0,21,128,20,0,20,128,19,0,19,128,18,0,18,128,17,0,17,128,16,0,16,128,15,0,15,128,14,0,14,128,13,0,13,128,12,0,12,128,11,0,11,128,10,0,10,128,9,0,9,128,8,0,8,128,7,0,7,128,6,0,6,128,5,0,5,128,4,0,4,128,3,0,3,128,2,0,2,128,1,0,1,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,1,128,1,0,2,128,2,0,3,128,3,0,4,128,4,0,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,0,11,128,11,0,12,128,12,0,13,128,13,0,14,128,14,0,15,128,15,0,16,128,16,0,17,128,17,0,18,128,18,0,19,128,19,0,20,128,20,0,21,128,21,0,22,128,22,0,23,128,23,0,32,0,31,0,30,0,29,0,28,0,27,128,26,128,25,128,24,128,23,0,23,0,22,0,21,128,20,128,19,0,19,0,18,128,17,128,16,0,16,0,15,128,14,0,14,0,13,128,12,0,12,128,11,128,10,0,10,128,9,0,9,128,8,0,8,128,7,0,7,128,6,0,6,128,5,128,5,0,5,128,4,0,4,0,4,128,3,0,3,0,3,128,2,128,2,0,2,0,2,128,1,128,1,0,1,0,1,0,1,128,0,128,0,128,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,128,0,128,0,128,0,0,1,0,1,0,1,128,1,128,1,0,2,0,2,128,2,128,2,0,3,0,3,128,3,0,4,0,4,128,4,0,5,128,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,128,11,0,12,128,12,0,13,0,14,128,14,0,15,0,16,128,16,128,17,0,18,0,19,128,19,128,20,0,21,0,22,0,23,128,23,128,24,128,25,128,26,0,27,0,28,0,29,0,30,0,31,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,115,101,116,117,112,32,116,104,101,32,100,101,99,111,100,101,114,0,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,114,101,97,100,32,116,104,101,32,104,101,97,100,101,114,0,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,33,0,91,69,82,82,79,82,93,32,37,115,0,83,116,114,101,97,109,32,114,101,97,99,104,101,100,32,105,116,115,32,101,110,100,32,33,10,0,69,114,114,111,114,32,111,110,32,119,114,105,116,105,110,103,32,115,116,114,101,97,109,33,10,0,83,116,114,101,97,109,32,101,114,114,111,114,33,10,0,50,46,49,46,48,0,67,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,116,104,101,32,111,112,106,95,115,101,116,117,112,95,100,101,99,111,100,101,114,32,102,117,110,99,116,105,111,110,32,105,115,32,110,111,116,32,97,32,100,101,99,111,109,112,114,101,115,115,111,114,32,104,97,110,100,108,101,114,46,10,0,67,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,116,104,101,32,111,112,106,95,114,101,97,100,95,104,101,97,100,101,114,32,102,117,110,99,116,105,111,110,32,105,115,32,110,111,116,32,97,32,100,101,99,111,109,112,114,101,115,115,111,114,32,104,97,110,100,108,101,114,46,10,0,119,98,0,114,98,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,58,32,37,100,32,110,111,116,32,105,110,32,114,97,110,103,101,32,91,49,44,37,100,93,10,0,68,101,112,114,101,99,97,116,101,100,32,102,105,101,108,100,115,32,99,112,95,99,105,110,101,109,97,32,111,114,32,99,112,95,114,115,105,122,32,97,114,101,32,117,115,101,100,10,80,108,101,97,115,101,32,99,111,110,115,105,100,101,114,32,117,115,105,110,103,32,111,110,108,121,32,116,104,101,32,114,115,105,122,32,102,105,101,108,100,10,83,101,101,32,111,112,101,110,106,112,101,103,46,104,32,100,111,99,117,109,101,110,116,97,116,105,111,110,32,102,111,114,32,109,111,114,101,32,100,101,116,97,105,108,115,10,0,84,104,101,32,100,101,115,105,114,101,100,32,109,97,120,105,109,117,109,32,99,111,100,101,115,116,114,101,97,109,32,115,105,122,101,32,104,97,115,32,108,105,109,105,116,101,100,10,97,116,32,108,101,97,115,116,32,111,110,101,32,111,102,32,116,104,101,32,100,101,115,105,114,101,100,32,113,117,97,108,105,116,121,32,108,97,121,101,114,115,10,0,74,80,69,71,32,50,48,48,48,32,83,99,97,108,97,98,108,101,32,68,105,103,105,116,97,108,32,67,105,110,101,109,97,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,49,32,115,105,110,103,108,101,32,113,117,97,108,105,116,121,32,108,97,121,101,114,45,62,32,78,117,109,98,101,114,32,111,102,32,108,97,121,101,114,115,32,102,111,114,99,101,100,32,116,111,32,49,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,45,62,32,82,97,116,101,32,111,102,32,116,104,101,32,108,97,115,116,32,108,97,121,101,114,32,40,37,51,46,49,102,41,32,119,105,108,108,32,98,101,32,117,115,101,100,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,60,61,32,53,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,53,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,62,61,32,49,32,38,38,32,60,61,32,54,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,49,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,62,61,32,49,32,38,38,32,60,61,32,54,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,54,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,51,48,50,48,56,51,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,65,115,32,110,111,32,114,97,116,101,32,104,97,115,32,98,101,101,110,32,103,105,118,101,110,44,32,116,104,105,115,32,108,105,109,105,116,32,119,105,108,108,32,98,101,32,117,115,101,100,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,51,48,50,48,56,51,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,45,62,32,83,112,101,99,105,102,105,101,100,32,114,97,116,101,32,101,120,99,101,101,100,115,32,116,104,105,115,32,108,105,109,105,116,46,32,82,97,116,101,32,119,105,108,108,32,98,101,32,102,111,114,99,101,100,32,116,111,32,49,51,48,50,48,56,51,32,98,121,116,101,115,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,48,52,49,54,54,54,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,65,115,32,110,111,32,114,97,116,101,32,104,97,115,32,98,101,101,110,32,103,105,118,101,110,44,32,116,104,105,115,32,108,105,109,105,116,32,119,105,108,108,32,98,101,32,117,115,101,100,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,48,52,49,54,54,54,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,45,62,32,83,112,101,99,105,102,105,101,100,32,114,97,116,101,32,101,120,99,101,101,100,115,32,116,104,105,115,32,108,105,109,105,116,46,32,82,97,116,101,32,119,105,108,108,32,98,101,32,102,111,114,99,101,100,32,116,111,32,49,48,52,49,54,54,54,32,98,121,116,101,115,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,51,32,99,111,109,112,111,110,101,110,116,115,45,62,32,78,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,111,102,32,105,110,112,117,116,32,105,109,97,103,101,32,40,37,100,41,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,115,105,103,110,101,100,0,117,110,115,105,103,110,101,100,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,80,114,101,99,105,115,105,111,110,32,111,102,32,101,97,99,104,32,99,111,109,112,111,110,101,110,116,32,115,104,97,108,108,32,98,101,32,49,50,32,98,105,116,115,32,117,110,115,105,103,110,101,100,45,62,32,65,116,32,108,101,97,115,116,32,99,111,109,112,111,110,101,110,116,32,37,100,32,111,102,32,105,110,112,117,116,32,105,109,97,103,101,32,40,37,100,32,98,105,116,115,44,32,37,115,41,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,119,105,100,116,104,32,60,61,32,50,48,52,56,32,97,110,100,32,104,101,105,103,104,116,32,60,61,32,49,48,56,48,10,45,62,32,73,110,112,117,116,32,105,109,97,103,101,32,115,105,122,101,32,37,100,32,120,32,37,100,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,119,105,100,116,104,32,60,61,32,52,48,57,54,32,97,110,100,32,104,101,105,103,104,116,32,60,61,32,50,49,54,48,10,45,62,32,73,109,97,103,101,32,115,105,122,101,32,37,100,32,120,32,37,100,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,52,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,76,111,110,103,32,84,101,114,109,32,83,116,111,114,97,103,101,32,112,114,111,102,105,108,101,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,66,114,111,97,100,99,97,115,116,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,73,77,70,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,97,114,116,45,50,32,112,114,111,102,105,108,101,32,100,101,102,105,110,101,100,10,98,117,116,32,110,111,32,80,97,114,116,45,50,32,101,120,116,101,110,115,105,111,110,32,101,110,97,98,108,101,100,46,10,80,114,111,102,105,108,101,32,115,101,116,32,116,111,32,78,79,78,69,46,10,0,85,110,115,117,112,112,111,114,116,101,100,32,80,97,114,116,45,50,32,101,120,116,101,110,115,105,111,110,32,101,110,97,98,108,101,100,10,80,114,111,102,105,108,101,32,115,101,116,32,116,111,32,78,79,78,69,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,112,121,32,111,102,32,117,115,101,114,32,101,110,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,112,121,32,111,102,32,99,111,109,109,101,110,116,32,115,116,114,105,110,103,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,109,109,101,110,116,32,115,116,114,105,110,103,10,0,37,115,37,115,0,67,114,101,97,116,101,100,32,98,121,32,79,112,101,110,74,80,69,71,32,118,101,114,115,105,111,110,32,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,105,108,101,32,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,99,104,101,99,107,105,110,103,32,116,104,101,32,112,111,99,32,118,97,108,117,101,115,46,10,0,77,105,115,115,105,110,103,32,112,97,99,107,101,116,115,32,112,111,115,115,105,98,108,101,32,108,111,115,115,32,111,102,32,100,97,116,97,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,105,108,101,32,99,111,109,112,111,110,101,110,116,32,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,101,109,112,32,98,117,102,102,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,100,101,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,70,97,105,108,101,100,32,116,111,32,105,110,118,101,114,115,101,32,101,110,99,111,100,101,114,32,77,67,84,32,100,101,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,110,111,114,109,115,32,10,0,70,97,105,108,101,100,32,116,111,32,115,101,116,117,112,32,106,50,107,32,109,99,116,32,101,110,99,111,100,105,110,103,10,0,67,97,110,110,111,116,32,112,101,114,102,111,114,109,32,77,67,84,32,111,110,32,99,111,109,112,111,110,101,110,116,115,32,119,105,116,104,32,100,105,102,102,101,114,101,110,116,32,115,105,122,101,115,46,32,68,105,115,97,98,108,105,110,103,32,77,67,84,46,10,0,83,116,114,101,97,109,32,116,111,111,32,115,104,111,114,116,10,0,73,110,99,111,110,115,105,115,116,101,110,116,32,109,97,114,107,101,114,32,115,105,122,101,10,0,77,97,114,107,101,114,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,32,119,105,116,104,32,105,116,115,32,112,111,115,105,116,105,111,110,10,0,77,97,114,107,101,114,32,115,105,122,101,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,115,116,114,101,97,109,32,108,101,110,103,116,104,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,104,101,97,100,101,114,10,0,78,111,116,32,115,117,114,101,32,104,111,119,32,116,104,97,116,32,104,97,112,112,101,110,101,100,46,10,0,70,97,105,108,32,116,111,32,114,101,97,100,32,116,104,101,32,99,117,114,114,101,110,116,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,32,40,37,35,120,41,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,116,108,32,109,97,114,107,101,114,10,0,84,105,108,101,32,112,97,114,116,32,108,101,110,103,116,104,32,115,105,122,101,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,115,116,114,101,97,109,32,108,101,110,103,116,104,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,79,84,32,109,97,114,107,101,114,10,0,111,112,106,95,106,50,107,95,97,112,112,108,121,95,110,98,95,116,105,108,101,95,112,97,114,116,115,95,99,111,114,114,101,99,116,105,111,110,32,101,114,114,111,114,10,0,78,111,110,32,99,111,110,102,111,114,109,97,110,116,32,99,111,100,101,115,116,114,101,97,109,32,84,80,115,111,116,61,61,84,78,115,111,116,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,80,80,84,32,109,97,114,107,101,114,10,0,70,97,105,108,101,100,32,116,111,32,109,101,114,103,101,32,80,80,84,32,100,97,116,97,10,0,67,97,110,110,111,116,32,100,101,99,111,100,101,32,116,105,108,101,44,32,109,101,109,111,114,121,32,101,114,114,111,114,10,0,72,101,97,100,101,114,32,111,102,32,116,105,108,101,32,37,100,32,47,32,37,100,32,104,97,115,32,98,101,101,110,32,114,101,97,100,46,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,46,10,0,78,111,32,69,79,67,32,109,97,114,107,101,114,46,32,80,111,115,115,105,98,108,121,32,97,32,116,114,117,110,99,97,116,101,100,32,115,116,114,101,97,109,10,0,83,116,114,101,97,109,32,100,111,101,115,32,110,111,116,32,101,110,100,32,119,105,116,104,32,69,79,67,10,0,83,116,114,101,97,109,32,116,111,111,32,115,104,111,114,116,44,32,101,120,112,101,99,116,101,100,32,83,79,84,10,0,78,101,101,100,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,109,97,105,110,32,104,101,97,100,101,114,32,98,101,102,111,114,101,32,98,101,103,105,110,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,114,101,109,97,105,110,105,110,103,32,99,111,100,101,115,116,114,101,97,109,0,78,111,32,100,101,99,111,100,101,100,32,97,114,101,97,32,112,97,114,97,109,101,116,101,114,115,44,32,115,101,116,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,116,111,32,116,104,101,32,119,104,111,108,101,32,105,109,97,103,101,10,0,76,101,102,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,115,105,122,61,37,100,41,46,10,0,76,101,102,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,79,115,105,122,61,37,100,41,46,10,0,85,112,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,115,105,122,61,37,100,41,46,10,0,85,112,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,79,115,105,122,61,37,100,41,46,10,0,82,105,103,104,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,79,115,105,122,61,37,100,41,46,10,0,82,105,103,104,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,115,105,122,61,37,100,41,46,10,0,66,111,116,116,111,109,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,79,115,105,122,61,37,100,41,46,10,0,66,111,116,116,111,109,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,115,105,122,61,37,100,41,46,10,0,83,105,122,101,32,120,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,99,111,109,112,111,110,101,110,116,32,105,109,97,103,101,32,105,115,32,105,110,99,111,114,114,101,99,116,32,40,99,111,109,112,91,37,100,93,46,119,61,37,100,41,46,10,0,83,105,122,101,32,121,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,99,111,109,112,111,110,101,110,116,32,105,109,97,103,101,32,105,115,32,105,110,99,111,114,114,101,99,116,32,40,99,111,109,112,91,37,100,93,46,104,61,37,100,41,46,10,0,83,101,116,116,105,110,103,32,100,101,99,111,100,105,110,103,32,97,114,101,97,32,116,111,32,37,100,44,37,100,44,37,100,44,37,100,10,0,87,114,111,110,103,32,102,108,97,103,10,0,67,111,100,101,115,116,114,101,97,109,32,105,110,102,111,32,102,114,111,109,32,109,97,105,110,32,104,101,97,100,101,114,58,32,123,10,0,9,32,116,120,48,61,37,100,44,32,116,121,48,61,37,100,10,0,9,32,116,100,120,61,37,100,44,32,116,100,121,61,37,100,10,0,9,32,116,119,61,37,100,44,32,116,104,61,37,100,10,0,125,10,0,67,111,100,101,115,116,114,101,97,109,32,105,110,100,101,120,32,102,114,111,109,32,109,97,105,110,32,104,101,97,100,101,114,58,32,123,10,0,9,32,77,97,105,110,32,104,101,97,100,101,114,32,115,116,97,114,116,32,112,111,115,105,116,105,111,110,61,37,108,108,105,10,9,32,77,97,105,110,32,104,101],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE),allocate([97,100,101,114,32,101,110,100,32,112,111,115,105,116,105,111,110,61,37,108,108,105,10,0,9,32,77,97,114,107,101,114,32,108,105,115,116,58,32,123,10,0,9,9,32,116,121,112,101,61,37,35,120,44,32,112,111,115,61,37,108,108,105,44,32,108,101,110,61,37,100,10,0,9,32,125,10,0,9,32,84,105,108,101,32,105,110,100,101,120,58,32,123,10,0,9,9,32,110,98,32,111,102,32,116,105,108,101,45,112,97,114,116,32,105,110,32,116,105,108,101,32,91,37,100,93,61,37,100,10,0,9,9,9,32,116,105,108,101,45,112,97,114,116,91,37,100,93,58,32,115,116,97,114,95,112,111,115,61,37,108,108,105,44,32,101,110,100,95,104,101,97,100,101,114,61,37,108,108,105,44,32,101,110,100,95,112,111,115,61,37,108,108,105,46,10,0,91,68,69,86,93,32,68,117,109,112,32,97,110,32,105,109,97,103,101,95,104,101,97,100,101,114,32,115,116,114,117,99,116,32,123,10,0,73,109,97,103,101,32,105,110,102,111,32,123,10,0,37,115,32,120,48,61,37,100,44,32,121,48,61,37,100,10,0,37,115,32,120,49,61,37,100,44,32,121,49,61,37,100,10,0,37,115,32,110,117,109,99,111,109,112,115,61,37,100,10,0,37,115,9,32,99,111,109,112,111,110,101,110,116,32,37,100,32,123,10,0,37,115,125,10,0,91,68,69,86,93,32,68,117,109,112,32,97,110,32,105,109,97,103,101,95,99,111,109,112,95,104,101,97,100,101,114,32,115,116,114,117,99,116,32,123,10,0,37,115,32,100,120,61,37,100,44,32,100,121,61,37,100,10,0,37,115,32,112,114,101,99,61,37,100,10,0,37,115,32,115,103,110,100,61,37,100,10,0,87,101,32,110,101,101,100,32,97,110,32,105,109,97,103,101,32,112,114,101,118,105,111,117,115,108,121,32,99,114,101,97,116,101,100,46,10,0,84,105,108,101,32,105,110,100,101,120,32,112,114,111,118,105,100,101,100,32,98,121,32,116,104,101,32,117,115,101,114,32,105,115,32,105,110,99,111,114,114,101,99,116,32,37,100,32,40,109,97,120,32,61,32,37,100,41,32,10,0,82,101,115,111,108,117,116,105,111,110,32,102,97,99,116,111,114,32,105,115,32,103,114,101,97,116,101,114,32,116,104,97,110,32,116,104,101,32,109,97,120,105,109,117,109,32,114,101,115,111,108,117,116,105,111,110,32,105,110,32,116,104,101,32,99,111,109,112,111,110,101,110,116,46,10,0,84,104,101,32,103,105,118,101,110,32,116,105,108,101,32,105,110,100,101,120,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,46,0,116,105,108,101,32,110,117,109,98,101,114,32,37,100,32,47,32,37,100,10,0,69,114,114,111,114,32,97,108,108,111,99,97,116,105,110,103,32,116,105,108,101,32,99,111,109,112,111,110,101,110,116,32,100,97,116,97,46,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,101,110,99,111,100,101,32,97,108,108,32,116,105,108,101,115,10,0,83,105,122,101,32,109,105,115,109,97,116,99,104,32,98,101,116,119,101,101,110,32,116,105,108,101,32,100,97,116,97,32,97,110,100,32,115,101,110,116,32,100,97,116,97,46,0,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,105,109,97,103,101,32,104,101,97,100,101,114,46,0,69,114,114,111,114,32,119,104,105,108,101,32,111,112,106,95,106,50,107,95,112,114,101,95,119,114,105,116,101,95,116,105,108,101,32,119,105,116,104,32,116,105,108,101,32,105,110,100,101,120,32,61,32,37,100,10,0,69,114,114,111,114,32,119,104,105,108,101,32,111,112,106,95,106,50,107,95,112,111,115,116,95,119,114,105,116,101,95,116,105,108,101,32,119,105,116,104,32,116,105,108,101,32,105,110,100,101,120,32,61,32,37,100,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,105,108,101,32,67,111,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,66,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,84,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,67,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,79,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,116,104,101,32,67,79,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,80,79,67,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,84,76,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,81,67,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,81,99,100,32,83,81,99,99,32,101,108,101,109,101,110,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,79,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,81,67,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,81,67,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,79,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,67,79,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,104,101,32,83,73,90,32,109,97,114,107,101,114,10,0,78,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,105,115,32,116,111,111,32,104,105,103,104,32,105,110,32,99,111,109,112,97,114,105,115,111,110,32,116,111,32,116,104,101,32,115,105,122,101,32,111,102,32,116,105,108,101,115,10,0,67,97,110,110,111,116,32,101,110,99,111,100,101,32,116,105,108,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,111,110,101,32,116,105,108,101,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,115,101,101,107,32,102,117,110,99,116,105,111,110,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,32,37,100,47,37,100,10,0,84,105,108,101,32,37,100,47,37,100,32,104,97,115,32,98,101,101,110,32,100,101,99,111,100,101,100,46,10,0,73,109,97,103,101,32,100,97,116,97,32,104,97,115,32,98,101,101,110,32,117,112,100,97,116,101,100,32,119,105,116,104,32,116,105,108,101,32,37,100,46,10,10,0,84,105,108,101,32,114,101,97,100,44,32,100,101,99,111,100,101,100,32,97,110,100,32,117,112,100,97,116,101,100,32,105,115,32,110,111,116,32,116,104,101,32,100,101,115,105,114,101,100,32,111,110,101,32,40,37,100,32,118,115,32,37,100,41,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,115,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,32,37,100,47,37,100,10,0,9,32,100,101,102,97,117,108,116,32,116,105,108,101,32,123,10,0,9,9,32,99,115,116,121,61,37,35,120,10,0,9,9,32,112,114,103,61,37,35,120,10,0,9,9,32,110,117,109,108,97,121,101,114,115,61,37,100,10,0,9,9,32,109,99,116,61,37,120,10,0,9,9,32,99,111,109,112,32,37,100,32,123,10,0,9,9,9,32,99,115,116,121,61,37,35,120,10,0,9,9,9,32,110,117,109,114,101,115,111,108,117,116,105,111,110,115,61,37,100,10,0,9,9,9,32,99,98,108,107,119,61,50,94,37,100,10,0,9,9,9,32,99,98,108,107,104,61,50,94,37,100,10,0,9,9,9,32,99,98,108,107,115,116,121,61,37,35,120,10,0,9,9,9,32,113,109,102,98,105,100,61,37,100,10,0,9,9,9,32,112,114,101,99,99,105,110,116,115,105,122,101,32,40,119,44,104,41,61,0,40,37,100,44,37,100,41,32,0,9,9,9,32,113,110,116,115,116,121,61,37,100,10,0,9,9,9,32,110,117,109,103,98,105,116,115,61,37,100,10,0,9,9,9,32,115,116,101,112,115,105,122,101,115,32,40,109,44,101,41,61,0,9,9,9,32,114,111,105,115,104,105,102,116,61,37,100,10,0,9,9,32,125,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,79,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110,32,115,116,97,103,101,115,46,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,67,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,100,97,116,97,32,115,112,97,110,110,105,110,103,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,77,67,67,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,99,111,108,108,101,99,116,105,111,110,115,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,111,116,104,101,114,32,116,104,97,110,32,97,114,114,97,121,32,100,101,99,111,114,114,101,108,97,116,105,111,110,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,119,105,116,104,32,105,110,100,105,120,32,115,104,117,102,102,108,101,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,119,105,116,104,111,117,116,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,105,110,100,105,120,101,115,10,0,67,114,114,111,114,32,114,101,97,100,105,110,103,32,67,66,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,84,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,99,116,32,100,97,116,97,32,119,105,116,104,105,110,32,109,117,108,116,105,112,108,101,32,77,67,84,32,114,101,99,111,114,100,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,77,67,84,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,77,67,84,32,109,97,114,107,101,114,115,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,82,71,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,84,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,84,32,109,97,114,107,101,114,58,32,112,97,99,107,101,116,32,104,101,97,100,101,114,32,104,97,118,101,32,98,101,101,110,32,112,114,101,118,105,111,117,115,108,121,32,102,111,117,110,100,32,105,110,32,116,104,101,32,109,97,105,110,32,104,101,97,100,101,114,32,40,80,80,77,32,109,97,114,107,101,114,41,46,10,0,90,112,112,116,32,37,117,32,97,108,114,101,97,100,121,32,114,101,97,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,80,80,77,32,109,97,114,107,101,114,10,0,90,112,112,109,32,37,117,32,97,108,114,101,97,100,121,32,114,101,97,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,76,84,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,76,77,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,84,76,77,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,32,115,105,122,101,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,32,105,115,32,105,108,108,101,103,97,108,32,45,62,32,37,100,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,32,105,115,32,110,111,116,32,99,111,109,112,97,116,105,98,108,101,32,119,105,116,104,32,116,104,101,32,114,101,109,97,105,110,105,110,103,32,110,117,109,98,101,114,32,111,102,32,112,97,114,97,109,101,116,101,114,115,32,40,32,37,100,32,118,115,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,101,103,97,116,105,118,101,32,111,114,32,122,101,114,111,32,105,109,97,103,101,32,115,105,122,101,32,40,37,100,32,120,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,105,110,118,97,108,105,100,32,116,105,108,101,32,115,105,122,101,32,40,116,100,120,58,32,37,100,44,32,116,100,121,58,32,37,100,41,10,0,80,114,101,118,101,110,116,32,98,117,102,102,101,114,32,111,118,101,114,102,108,111,119,32,40,120,49,58,32,37,100,44,32,121,49,58,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,105,108,108,101,103,97,108,32,116,105,108,101,32,111,102,102,115,101,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,83,73,90,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,115,32,102,111,114,32,99,111,109,112,32,61,32,37,100,32,58,32,100,120,61,37,117,32,100,121,61,37,117,10,32,40,115,104,111,117,108,100,32,98,101,32,98,101,116,119,101,101,110,32,49,32,97,110,100,32,50,53,53,32,97,99,99,111,114,100,105,110,103,32,116,104,101,32,74,80,69,71,50,48,48,48,32,110,111,114,109,41,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,115,32,58,32,37,117,32,120,32,37,117,32,40,109,97,120,105,109,117,109,32,102,105,120,101,100,32,98,121,32,106,112,101,103,50,48,48,48,32,110,111,114,109,32,105,115,32,54,53,53,51,53,32,116,105,108,101,115,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,79,67,32,109,97,114,107,101,114,10,0,84,111,111,32,109,97,110,121,32,80,79,67,115,32,37,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,81,67,67,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,110,117,109,98,101,114,58,32,37,100,44,32,114,101,103,97,114,100,105,110,103,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,37,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,81,99,100,32,111,114,32,83,81,99,99,32,101,108,101,109,101,110,116,10,0,87,104,105,108,101,32,114,101,97,100,105,110,103,32,67,67,80,95,81,78,84,83,84,89,32,101,108,101,109,101,110,116,32,105,110,115,105,100,101,32,81,67,68,32,111,114,32,81,67,67,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,44,32,110,117,109,98,101,114,32,111,102,32,115,117,98,98,97,110,100,115,32,40,37,100,41,32,105,115,32,103,114,101,97,116,101,114,32,116,111,32,79,80,74,95,74,50,75,95,77,65,88,66,65,78,68,83,32,40,37,100,41,46,32,83,111,32,119,101,32,108,105,109,105,116,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,101,108,101,109,101,110,116,115,32,115,116,111,114,101,100,32,116,111,32,79,80,74,95,74,50,75,95,77,65,88,66,65,78,68,83,32,40,37,100,41,32,97,110,100,32,115,107,105,112,32,116,104,101,32,114,101,115,116,46,32,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,81,67,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,82,71,78,32,109,97,114,107,101,114,10,0,98,97,100,32,99,111,109,112,111,110,101,110,116,32,110,117,109,98,101,114,32,105,110,32,82,71,78,32,40,37,100,32,119,104,101,110,32,116,104,101,114,101,32,97,114,101,32,111,110,108,121,32,37,100,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,67,32,109,97,114,107,101,114,32,40,98,97,100,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,102,111,114,32,110,117,109,114,101,115,111,108,117,116,105,111,110,115,32,58,32,37,100,44,32,109,97,120,32,118,97,108,117,101,32,105,115,32,115,101,116,32,105,110,32,111,112,101,110,106,112,101,103,46,104,32,97,116,32,37,100,10,0,69,114,114,111,114,32,100,101,99,111,100,105,110,103,32,99,111,109,112,111,110,101,110,116,32,37,100,46,10,84,104,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,116,111,32,114,101,109,111,118,101,32,105,115,32,104,105,103,104,101,114,32,116,104,97,110,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,111,102,32,116,104,105,115,32,99,111,109,112,111,110,101,110,116,10,77,111,100,105,102,121,32,116,104,101,32,99,112,95,114,101,100,117,99,101,32,112,97,114,97,109,101,116,101,114,46,10,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,44,32,73,110,118,97,108,105,100,32,99,98,108,107,119,47,99,98,108,107,104,32,99,111,109,98,105,110,97,116,105,111,110,10,0,73,110,118,97,108,105,100,32,112,114,101,99,105,110,99,116,32,115,105,122,101,10,0,67,79,68,32,109,97,114,107,101,114,32,97,108,114,101,97,100,121,32,114,101,97,100,46,32,78,111,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,67,79,68,32,109,97,114,107,101,114,32,112,101,114,32,116,105,108,101,46,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,68,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,110,32,83,99,111,100,32,118,97,108,117,101,32,105,110,32,67,79,68,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,110,32,112,114,111,103,114,101,115,115,105,111,110,32,111,114,100,101,114,32,105,110,32,67,79,68,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,108,97,121,101,114,115,32,105,110,32,67,79,68,32,109,97,114,107,101,114,32,58,32,37,100,32,110,111,116,32,105,110,32,114,97,110,103,101,32,91,49,45,54,53,53,51,53,93,10,0,73,110,118,97,108,105,100,32,116,105,108,101,32,110,117,109,98,101,114,32,37,100,10,0,69,109,112,116,121,32,83,79,84,32,109,97,114,107,101,114,32,100,101,116,101,99,116,101,100,58,32,80,115,111,116,61,37,100,46,10,0,80,115,111,116,32,118,97,108,117,101,32,105,115,32,110,111,116,32,99,111,114,114,101,99,116,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,74,80,69,71,50,48,48,48,32,110,111,114,109,58,32,37,100,46,10,0,80,115,111,116,32,118,97,108,117,101,32,111,102,32,116,104,101,32,99,117,114,114,101,110,116,32,116,105,108,101,45,112,97,114,116,32,105,115,32,101,113,117,97,108,32,116,111,32,122,101,114,111,44,32,119,101,32,97,115,115,117,109,105,110,103,32,105,116,32,105,115,32,116,104,101,32,108,97,115,116,32,116,105,108,101,45,112,97,114,116,32,111,102,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,46,10,0,73,110,32,83,79,84,32,109,97,114,107,101,114,44,32,84,80,83,111,116,32,40,37,100,41,32,105,115,32,110,111,116,32,118,97,108,105,100,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,99,117,114,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,45,112,97,114,116,32,40,37,100,41,44,32,103,105,118,105,110,103,32,117,112,10,0,73,110,32,83,79,84,32,109,97,114,107,101,114,44,32,84,80,83,111,116,32,40,37,100,41,32,105,115,32,110,111,116,32,118,97,108,105,100,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,99,117,114,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,45,112,97,114,116,32,40,104,101,97,100,101,114,41,32,40,37,100,41,44,32,103,105,118,105,110,103,32,117,112,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,83,79,84,32,109,97,114,107,101,114,46,32,84,105,108,101,32,105,110,100,101,120,32,97,108,108,111,99,97,116,105,111,110,32,102,97,105,108,101,100,10,0,83,116,97,114,116,32,116,111,32,114,101,97,100,32,106,50,107,32,109,97,105,110,32,104,101,97,100,101,114,32,40,37,100,41,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,109,104,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,97,32,83,79,67,32,109,97,114,107,101,114,32,10,0,65,32,109,97,114,107,101,114,32,73,68,32,119,97,115,32,101,120,112,101,99,116,101,100,32,40,48,120,102,102,45,45,41,32,105,110,115,116,101,97,100,32,111,102,32,37,46,56,120,10,0,85,110,107,110,111,119,110,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,32,109,97,114,107,101,114,32,104,97,118,101,32,98,101,101,110,32,100,101,116,101,99,116,101,100,32,97,110,100,32,103,101,110,101,114,97,116,101,100,32,101,114,114,111,114,46,10,0,77,97,114,107,101,114,32,104,97,110,100,108,101,114,32,102,117,110,99,116,105,111,110,32,102,97,105,108,101,100,32,116,111,32,114,101,97,100,32,116,104,101,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,10,0,114,101,113,117,105,114,101,100,32,83,73,90,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,114,101,113,117,105,114,101,100,32,67,79,68,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,114,101,113,117,105,114,101,100,32,81,67,68,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,98,121,116,101,115,32,116,111,32,114,101,97,100,32,78,112,112,109,10,0,67,111,114,114,117,112,116,101,100,32,80,80,77,32,109,97,114,107,101,114,115,10,0,70,97,105,108,101,100,32,116,111,32,109,101,114,103,101,32,80,80,77,32,100,97,116,97,10,0,77,97,105,110,32,104,101,97,100,101,114,32,104,97,115,32,98,101,101,110,32,99,111,114,114,101,99,116,108,121,32,100,101,99,111,100,101,100,46,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,32,105,110,32,116,104,101,32,74,80,50,32,102,105,108,101,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,115,112,101,99,105,102,105,101,100,32,119,104,105,108,101,32,115,101,116,116,105,110,103,32,117,112,32,74,80,50,32,101,110,99,111,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,119,104,101,110,32,115,101,116,117,112,32,116,104,101,32,74,80,50,32,101,110,99,111,100,101,114,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,115,112,101,99,105,102,105,101,100,32,98,117,116,32,117,110,107,110,111,119,110,32,101,110,117,109,99,115,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,115,112,101,99,105,102,105,101,100,32,98,117,116,32,110,111,116,32,101,110,111,117,103,104,32,105,109,97,103,101,32,99,111,109,112,111,110,101,110,116,115,32,102,111,114,32,97,110,32,97,117,116,111,109,97,116,105,99,32,99,100,101,102,32,98,111,120,32,99,114,101,97,116,105,111,110,46,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,112,111,115,105,116,105,111,110,32,99,111,110,102,108,105,99,116,115,32,119,105,116,104,32,99,111,108,111,114,32,99,104,97,110,110,101,108,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,77,117,108,116,105,112,108,101,32,97,108,112,104,97,32,99,104,97,110,110,101,108,115,32,115,112,101,99,105,102,105,101,100,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,115,101,116,117,112,32,116,104,101,32,74,80,50,32,101,110,99,111,100,101,114,10,0,74,80,50,32,98,111,120,32,119,104,105,99,104,32,97,114,101,32,97,102,116,101,114,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,110,111,116,32,98,101,32,114,101,97,100,32,98,121,32,116,104,105,115,32,102,117,110,99,116,105,111,110,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,111,108,100,32,74,80,50,32,72,101,97,100,101,114,32,100,97,116,97,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,119,114,105,116,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,102,116,121,112,32,100,97,116,97,10,0,69,114,114,111,114,32,119,104,105,108,101,32,119,114,105,116,105,110,103,32,102,116,121,112,32,100,97,116,97,32,116,111,32,115,116,114,101,97,109,10,0,70,97,105,108,101,100,32,116,111,32,115,101,101,107,32,105,110,32,116,104,101,32,115,116,114,101,97,109,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,106,112,101,103,50,48,48,48,32,102,105,108,101,32,104,101,97,100,101,114,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,115,105,122,101,115,32,104,105,103,104,101,114,32,116,104,97,110,32,50,94,51,50,10,0,98,97,100,32,112,108,97,99,101,100,32,106,112,101,103,32,99,111,100,101,115,116,114,101,97,109,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,111,102,32,117,110,100,101,102,105,110,101,100,32,115,105,122,101,115,10,0,105,110,118,97,108,105,100,32,98,111,120,32,115,105,122,101,32,37,100,32,40,37,120,41,10,0,70,111,117,110,100,32,97,32,109,105,115,112,108,97,99,101,100,32,39,37,99,37,99,37,99,37,99,39,32,98,111,120,32,111,117,116,115,105,100,101,32,106,112,50,104,32,98,111,120,10,0,74,80,69,71,50,48,48,48,32,72,101,97,100,101,114,32,98,111,120,32,110,111,116,32,114,101,97,100,32,121,101,116,44,32,39,37,99,37,99,37,99,37,99,39,32,98,111,120,32,119,105,108,108,32,98,101,32,105,103,110,111,114,101,100,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,115,107,105,112,112,105,110,103,32,74,80,69,71,50,48,48,48,32,98,111,120,44,32,115,116,114,101,97,109,32,101,114,114,111,114,10,0,73,110,118,97,108,105,100,32,98,111,120,32,115,105,122,101,32,37,100,32,102,111,114,32,98,111,120,32,39,37,99,37,99,37,99,37,99,39,46,32,78,101,101,100,32,37,100,32,98,121,116,101,115,44,32,37,100,32,98,121,116,101,115,32,114,101,109,97,105,110,105,110,103,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,106,112,101,103,50,48,48,48,32,98,111,120,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,114,101,97,100,105,110,103,32,74,80,69,71,50,48,48,48,32,98,111,120,44,32,115,116,114,101,97,109,32,101,114,114,111,114,10,0,77,97,108,102,111,114,109,101,100,32,74,80,50,32,102,105,108,101,32,102,111,114,109,97,116,58,32,102,105,114,115,116,32,98,111,120,32,109,117,115,116,32,98,101,32,74,80,69,71,32,50,48,48,48,32,115,105,103,110,97,116,117,114,101,32,98,111,120,10,0,77,97,108,102,111,114,109,101,100,32,74,80,50,32,102,105,108,101,32,102,111,114,109,97,116,58,32,115,101,99,111,110,100,32,98,111,120,32,109,117,115,116,32,98,101,32,102,105,108,101,32,116,121,112,101,32,98,111,120,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,100,97,116,97,32,102,111,114,32,67,68,69,70,32,98,111,120,46,10,0,78,117,109,98,101,114,32,111,102,32,99,104,97,110,110,101,108,32,100,101,115,99,114,105,112,116,105,111,110,32,105,115,32,101,113,117,97,108,32,116,111,32,122,101,114,111,32,105,110,32,67,68,69,70,32,98,111,120,46,10,0,78,101,101,100,32,116,111,32,114,101,97,100,32,97,32,80,67,76,82,32,98,111,120,32,98,101,102,111,114,101,32,116,104,101,32,67,77,65,80,32,98,111,120,46,10,0,79,110,108,121,32,111,110,101,32,67,77,65,80,32,98,111,120,32,105,115,32,97,108,108,111,119,101,100,46,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,100,97,116,97,32,102,111,114,32,67,77,65,80,32,98,111,120,46,10,0,73,110,118,97,108,105,100,32,80,67,76,82,32,98,111,120,46,32,82,101,112,111,114,116,115,32,37,100,32,101,110,116,114,105,101,115,10,0,73,110,118,97,108,105,100,32,80,67,76,82,32,98,111,120,46,32,82,101,112,111,114,116,115,32,48,32,112,97,108,101,116,116,101,32,99,111,108,117,109,110,115,10,0,65,32,66,80,67,67,32,104,101,97,100,101,114,32,98,111,120,32,105,115,32,97,118,97,105,108,97,98,108,101,32,97,108,116,104,111,117,103,104,32,66,80,67,32,103,105,118,101,110,32,98,121,32,116,104,101,32,73,72,68,82,32,98,111,120,32,40,37,100,41,32,105,110,100,105,99,97,116,101,32,99,111,109,112,111,110,101,110,116,115,32,98,105,116,32,100,101,112,116,104,32,105,115,32,99,111,110,115,116,97,110,116,10,0,66,97,100,32,66,80,67,67,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,65,32,99,111,110,102,111,114,109,105,110,103,32,74,80,50,32,114,101,97,100,101,114,32,115,104,97,108,108,32,105,103,110,111,114,101,32,97,108,108,32,67,111,108,111,117,114,32,83,112,101,99,105,102,105,99,97,116,105,111,110,32,98,111,120,101,115,32,97,102,116,101,114,32,116,104,101,32,102,105,114,115,116,44,32,115,111,32,119,101,32,105,103,110,111,114,101,32,116,104,105,115,32,111,110,101,46,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,58,32,37,100,41,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,67,73,69,76,97,98,44,32,98,97,100,32,115,105,122,101,58,32,37,100,41,10,0,67,79,76,82,32,66,79,88,32,109,101,116,104,32,118,97,108,117,101,32,105,115,32,110,111,116,32,97,32,114,101,103,117,108,97,114,32,118,97,108,117,101,32,40,37,100,41,44,32,115,111,32,119,101,32,119,105,108,108,32,105,103,110,111,114,101,32,116,104,101,32,101,110,116,105,114,101,32,67,111,108,111,117,114,32,83,112,101,99,105,102,105,99,97,116,105,111,110,32,98,111,120,46,32,10,0,66,97,100,32,105,109,97,103,101,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,105,109,97,103,101,32,104,101,97,100,101,114,32,40,105,104,100,114,41,10,0,74,80,50,32,73,72,68,82,32,98,111,120,58,32,99,111,109,112,114,101,115,115,105,111,110,32,116,121,112,101,32,105,110,100,105,99,97,116,101,32,116,104,97,116,32,116,104,101,32,102,105,108,101,32,105,115,32,110,111,116,32,97,32,99,111,110,102,111,114,109,105,110,103,32,74,80,50,32,102,105,108,101,32,40,37,100,41,32,10,0,84,104,101,32,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,102,105,114,115,116,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,111,102,32,108,101,115,115,32,116,104,97,110,32,56,32,98,121,116,101,115,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,88,76,32,98,111,120,32,111,102,32,108,101,115,115,32,116,104,97,110,32,49,54,32,98,121,116,101,115,10,0,66,111,120,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,58,32,98,111,120,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,58,32,110,111,32,39,105,104,100,114,39,32,98,111,120,46,10,0,84,104,101,32,102,116,121,112,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,115,101,99,111,110,100,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,69,114,114,111,114,32,119,105,116,104,32,70,84,89,80,32,115,105,103,110,97,116,117,114,101,32,66,111,120,32,115,105,122,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,119,105,116,104,32,70,84,89,80,32,66,111,120,10,0,84,104,101,32,115,105,103,110,97,116,117,114,101,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,102,105,114,115,116,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,69,114,114,111,114,32,119,105,116,104,32,74,80,32,115,105,103,110,97,116,117,114,101,32,66,111,120,32,115,105,122,101,10,0,69,114,114,111,114,32,119,105,116,104,32,74,80,32,83,105,103,110,97,116,117,114,101,32,58,32,98,97,100,32,109,97,103,105,99,32,110,117,109,98,101,114,10,0,111,112,106,95,106,112,50,95,97,112,112,108,121,95,99,100,101,102,58,32,99,110,61,37,100,44,32,110,117,109,99,111,109,112,115,61,37,100,10,0,111,112,106,95,106,112,50,95,97,112,112,108,121,95,99,100,101,102,58,32,97,99,110,61,37,100,44,32,110,117,109,99,111,109,112,115,61,37,100,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,105,110,100,101,120,32,37,100,32,40,62,61,32,37,100,41,46,10,0,73,110,99,111,109,112,108,101,116,101,32,99,104,97,110,110,101,108,32,100,101,102,105,110,105,116,105,111,110,115,46,10,0,85,110,101,120,112,101,99,116,101,100,32,79,79,77,46,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,47,112,97,108,101,116,116,101,32,105,110,100,101,120,32,102,111,114,32,100,105,114,101,99,116,32,109,97,112,112,105,110,103,32,37,100,46,10,0,67,111,109,112,111,110,101,110,116,32,37,100,32,105,115,32,109,97,112,112,101,100,32,116,119,105,99,101,46,10,0,68,105,114,101,99,116,32,117,115,101,32,97,116,32,35,37,100,32,104,111,119,101,118,101,114,32,112,99,111,108,61,37,100,46,10,0,67,111,109,112,111,110,101,110,116,32,37,100,32,100,111,101,115,110,39,116,32,104,97,118,101,32,97,32,109,97,112,112,105,110,103,46,10,0,67,111,109,112,111,110,101,110,116,32,109,97,112,112,105,110,103,32,115,101,101,109,115,32,119,114,111,110,103,46,32,84,114,121,105,110,103,32,116,111,32,99,111,114,114,101,99,116,46,10,0,84,105,108,101,115,32,100,111,110,39,116,32,97,108,108,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,100,105,109,101,110,115,105,111,110,46,32,83,107,105,112,32,116,104,101,32,77,67,84,32,115,116,101,112,46,10,0,78,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,40,37,100,41,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,97,32,77,67,84,46,32,83,107,105,112,32,116,104,101,32,77,67,84,32,115,116,101,112,46,10,0,116,105,108,101,115,32,114,101,113,117,105,114,101,32,97,116,32,108,101,97,115,116,32,111,110,101,32,114,101,115,111,108,117,116,105,111,110,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,105,108,101,32,100,97,116,97,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,105,108,101,32,114,101,115,111,108,117,116,105,111,110,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,98,97,110,100,32,112,114,101,99,105,110,116,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,99,117,114,114,101,110,116,32,112,114,101,99,105,110,99,116,32,99,111,100,101,98,108,111,99,107,32,101,108,101,109,101,110,116,10,0,78,111,32,105,110,99,108,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,32,105,109,115,98,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,97,103,45,116,114,101,101,10,0,116,103,116,95,99,114,101,97,116,101,32,116,114,101,101,45,62,110,117,109,110,111,100,101,115,32,61,61,32,48,44,32,110,111,32,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,97,103,45,116,114,101,101,32,110,111,100,101,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,105,110,105,116,105,97,108,105,122,101,32,116,104,101,32,116,97,103,32,116,114,101,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,97,32,110,101,119,32,118,97,108,105,100,97,116,105,111,110,32,112,114,111,99,101,100,117,114,101,10,0,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240),allocate([7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,3,3,6,3,6,6,8,3,6,6,8,6,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,9,10,12,13,10,10,13,13,12,13,12,13,13,13,13,13,9,10,12,11,10,9,13,12,12,11,12,11,13,12,13,12,9,10,12,11,10,10,11,11,12,13,9,10,13,13,10,10,9,10,12,13,10,9,11,12,12,11,9,10,13,12,10,9,9,10,12,13,10,9,11,12,12,13,12,13,11,12,11,12,9,10,12,11,10,10,11,11,12,11,12,11,11,11,11,11,9,10,12,11,10,9,13,12,12,13,9,10,11,12,10,9,9,10,12,13,10,10,13,13,12,11,9,10,11,11,10,10,9,10,12,13,10,10,13,13,12,11,9,10,11,11,10,10,9,10,12,11,10,9,13,12,12,13,9,10,11,12,10,9,9,10,12,11,10,10,11,11,12,11,12,11,11,11,11,11,9,10,12,13,10,9,11,12,12,13,12,13,11,12,11,12,9,10,12,13,10,9,11,12,12,11,9,10,13,12,10,9,9,10,12,11,10,10,11,11,12,13,9,10,13,13,10,10,9,10,12,11,10,9,13,12,12,11,12,11,13,12,13,12,9,10,12,13,10,10,13,13,12,13,12,13,13,13,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,1,0,0,0,0,0,0,1,0,0,1,1,1,1,1,1,1,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,1,1,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,0,0,1,1,0,0,1,1,1,0,0,1,0,0,1,1,0,0,1,1,0,1,1,1,1,1,0,0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,114,101,97,100,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,109,97,120,32,40,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,114,101,97,100,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,99,117,114,114,101,110,116,32,115,105,122,101,32,40,37,100,32,62,32,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,115,107,105,112,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,109,97,120,32,40,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,32,102,111,114,32,101,120,112,101,99,116,101,100,32,83,79,80,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,83,79,80,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,32,102,111,114,32,101,120,112,101,99,116,101,100,32,69,80,72,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,69,80,72,32,109,97,114,107,101,114,10,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,114,119,97],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480),allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+25118);var tempDoublePtr=Runtime.alignMemory(allocate(12,"i8",ALLOC_STATIC),8);function copyTempFloat(e){HEAP8[tempDoublePtr]=HEAP8[e],HEAP8[tempDoublePtr+1]=HEAP8[e+1],HEAP8[tempDoublePtr+2]=HEAP8[e+2],HEAP8[tempDoublePtr+3]=HEAP8[e+3]}function copyTempDouble(e){HEAP8[tempDoublePtr]=HEAP8[e],HEAP8[tempDoublePtr+1]=HEAP8[e+1],HEAP8[tempDoublePtr+2]=HEAP8[e+2],HEAP8[tempDoublePtr+3]=HEAP8[e+3],HEAP8[tempDoublePtr+4]=HEAP8[e+4],HEAP8[tempDoublePtr+5]=HEAP8[e+5],HEAP8[tempDoublePtr+6]=HEAP8[e+6],HEAP8[tempDoublePtr+7]=HEAP8[e+7]}assert(tempDoublePtr%8==0),Module._i64Subtract=_i64Subtract;var _floorf=Math_floor;Module._bitshift64Ashr=_bitshift64Ashr;var _SItoF=!0;Module._memset=_memset;var _BDtoILow=!0,_ceilf=Math_ceil;function _abort(){Module.abort()}function ___lock(){}function ___unlock(){}Module._bitshift64Shl=_bitshift64Shl,Module._i64Add=_i64Add;var _floor=Math_floor,_sqrt=Math_sqrt,PATH=void 0;function _emscripten_set_main_loop_timing(e,i){if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=i,!Browser.mainLoop.func)return 1;if(0==e)Browser.mainLoop.scheduler=function(){setTimeout(Browser.mainLoop.runner,i)},Browser.mainLoop.method="timeout";else if(1==e)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(2==e){if(!window.setImmediate){var r=[],t="__emcc";window.addEventListener("message",(function(e){e.source===window&&e.data===t&&(e.stopPropagation(),r.shift()())}),!0),window.setImmediate=function(e){r.push(e),window.postMessage(t,"*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(e,i,r,t,n){Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=t;var f=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var i=Date.now(),r=Browser.mainLoop.queue.shift();if(r.func(r.arg),Browser.mainLoop.remainingBlockers){var n=Browser.mainLoop.remainingBlockers,a=n%1==0?n-1:Math.floor(n);r.counted?Browser.mainLoop.remainingBlockers=a:(a+=.5,Browser.mainLoop.remainingBlockers=(8*n+a)/9)}return console.log(\'main loop blocker "\'+r.name+\'" took \'+(Date.now()-i)+" ms"),Browser.mainLoop.updateStatus(),void setTimeout(Browser.mainLoop.runner,0)}f<Browser.mainLoop.currentlyRunningMainloop||(Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0,1==Browser.mainLoop.timingMode&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0?Browser.mainLoop.scheduler():("timeout"===Browser.mainLoop.method&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter((function(){void 0!==t?Runtime.dynCall("vi",e,[t]):Runtime.dynCall("v",e)})),f<Browser.mainLoop.currentlyRunningMainloop||("object"==typeof SDL&&SDL.audio&&SDL.audio.queueNewAudioData&&SDL.audio.queueNewAudioData(),Browser.mainLoop.scheduler())))}},n||(i&&i>0?_emscripten_set_main_loop_timing(0,1e3/i):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),r)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,i=Browser.mainLoop.timingValue,r=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(r,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,i),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",i=Browser.mainLoop.remainingBlockers,r=Browser.mainLoop.expectedBlockers;i?i<r?Module.setStatus(e+" ("+(r-i)+"/"+r+")"):Module.setStatus(e):Module.setStatus("")}},runIter:function(e){if(!ABORT){if(Module.preMainLoop)if(!1===Module.preMainLoop())return;try{e()}catch(e){if(e instanceof ExitStatus)return;throw e&&"object"==typeof e&&e.stack&&Module.printErr("exception thrown: "+[e,e.stack]),e}Module.postMainLoop&&Module.postMainLoop()}}},isFullScreen:!1,pointerLock:!1,moduleContextCreatedCallbacks:[],workers:[],init:function(){if(Module.preloadPlugins||(Module.preloadPlugins=[]),!Browser.initted){Browser.initted=!0;try{new Blob,Browser.hasBlobConstructor=!0}catch(e){Browser.hasBlobConstructor=!1,console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Browser.BlobBuilder="undefined"!=typeof MozBlobBuilder?MozBlobBuilder:"undefined"!=typeof WebKitBlobBuilder?WebKitBlobBuilder:Browser.hasBlobConstructor?null:console.log("warning: no BlobBuilder"),Browser.URLObject="undefined"!=typeof window?window.URL?window.URL:window.webkitURL:void 0,Module.noImageDecoding||void 0!==Browser.URLObject||(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),Module.noImageDecoding=!0);var e={canHandle:function(e){return!Module.noImageDecoding&&/\\.(jpg|jpeg|png|bmp)$/i.test(e)},handle:function(e,i,r,t){var n=null;if(Browser.hasBlobConstructor)try{(n=new Blob([e],{type:Browser.getMimetype(i)})).size!==e.length&&(n=new Blob([new Uint8Array(e).buffer],{type:Browser.getMimetype(i)}))}catch(e){Runtime.warnOnce("Blob constructor present but fails: "+e+"; falling back to blob builder")}if(!n){var f=new Browser.BlobBuilder;f.append(new Uint8Array(e).buffer),n=f.getBlob()}var a=Browser.URLObject.createObjectURL(n),s=new Image;s.onload=function(){assert(s.complete,"Image "+i+" could not be decoded");var t=document.createElement("canvas");t.width=s.width,t.height=s.height,t.getContext("2d").drawImage(s,0,0),Module.preloadedImages[i]=t,Browser.URLObject.revokeObjectURL(a),r&&r(e)},s.onerror=function(e){console.log("Image "+a+" could not be decoded"),t&&t()},s.src=a}};Module.preloadPlugins.push(e);var i={canHandle:function(e){return!Module.noAudioDecoding&&e.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(e,i,r,t){var n=!1;function f(t){n||(n=!0,Module.preloadedAudios[i]=t,r&&r(e))}function a(){n||(n=!0,Module.preloadedAudios[i]=new Audio,t&&t())}if(!Browser.hasBlobConstructor)return a();try{var s=new Blob([e],{type:Browser.getMimetype(i)})}catch(e){return a()}var l=Browser.URLObject.createObjectURL(s),o=new Audio;o.addEventListener("canplaythrough",(function(){f(o)}),!1),o.onerror=function(r){n||(console.log("warning: browser could not fully decode audio "+i+", trying slower base64 approach"),o.src="data:audio/x-"+i.substr(-3)+";base64,"+function(e){for(var i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="",t=0,n=0,f=0;f<e.length;f++)for(t=t<<8|e[f],n+=8;n>=6;){var a=t>>n-6&63;n-=6,r+=i[a]}return 2==n?(r+=i[(3&t)<<4],r+="=="):4==n&&(r+=i[(15&t)<<2],r+="="),r}(e),f(o))},o.src=l,Browser.safeSetTimeout((function(){f(o)}),1e4)}};Module.preloadPlugins.push(i);var r=Module.canvas;r&&(r.requestPointerLock=r.requestPointerLock||r.mozRequestPointerLock||r.webkitRequestPointerLock||r.msRequestPointerLock||function(){},r.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},r.exitPointerLock=r.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",t,!1),document.addEventListener("mozpointerlockchange",t,!1),document.addEventListener("webkitpointerlockchange",t,!1),document.addEventListener("mspointerlockchange",t,!1),Module.elementPointerLock&&r.addEventListener("click",(function(e){!Browser.pointerLock&&r.requestPointerLock&&(r.requestPointerLock(),e.preventDefault())}),!1))}function t(){Browser.pointerLock=document.pointerLockElement===r||document.mozPointerLockElement===r||document.webkitPointerLockElement===r||document.msPointerLockElement===r}},createContext:function(e,i,r,t){if(i&&Module.ctx&&e==Module.canvas)return Module.ctx;var n,f;if(i){var a={antialias:!1,alpha:!1};if(t)for(var s in t)a[s]=t[s];(f=GL.createContext(e,a))&&(n=GL.getContext(f).GLctx),e.style.backgroundColor="black"}else n=e.getContext("2d");return n?(r&&(i||assert("undefined"==typeof GLctx,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=n,i&&GL.makeContextCurrent(f),Module.useWebGL=i,Browser.moduleContextCreatedCallbacks.forEach((function(e){e()})),Browser.init()),n):null},destroyContext:function(e,i,r){},fullScreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullScreen:function(e,i,r){Browser.lockPointer=e,Browser.resizeCanvas=i,Browser.vrDevice=r,void 0===Browser.lockPointer&&(Browser.lockPointer=!0),void 0===Browser.resizeCanvas&&(Browser.resizeCanvas=!1),void 0===Browser.vrDevice&&(Browser.vrDevice=null);var t=Module.canvas;function n(){Browser.isFullScreen=!1;var e=t.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===e?(t.cancelFullScreen=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen||function(){},t.cancelFullScreen=t.cancelFullScreen.bind(document),Browser.lockPointer&&t.requestPointerLock(),Browser.isFullScreen=!0,Browser.resizeCanvas&&Browser.setFullScreenCanvasSize()):(e.parentNode.insertBefore(t,e),e.parentNode.removeChild(e),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullScreen),Browser.updateCanvasDimensions(t)}Browser.fullScreenHandlersInstalled||(Browser.fullScreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",n,!1),document.addEventListener("mozfullscreenchange",n,!1),document.addEventListener("webkitfullscreenchange",n,!1),document.addEventListener("MSFullscreenChange",n,!1));var f=document.createElement("div");t.parentNode.insertBefore(f,t),f.appendChild(t),f.requestFullScreen=f.requestFullScreen||f.mozRequestFullScreen||f.msRequestFullscreen||(f.webkitRequestFullScreen?function(){f.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),r?f.requestFullScreen({vrDisplay:r}):f.requestFullScreen()},nextRAF:0,fakeRequestAnimationFrame:function(e){var i=Date.now();if(0===Browser.nextRAF)Browser.nextRAF=i+1e3/60;else for(;i+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var r=Math.max(Browser.nextRAF-i,0);setTimeout(e,r)},requestAnimationFrame:function(e){"undefined"==typeof window?Browser.fakeRequestAnimationFrame(e):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(e))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach((function(e){e()}))}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame((function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))}))},safeSetTimeout:function(e,i){return Module.noExitRuntime=!0,setTimeout((function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))}),i)},safeSetInterval:function(e,i){return Module.noExitRuntime=!0,setInterval((function(){ABORT||Browser.allowAsyncCallbacks&&e()}),i)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var i=0;switch(e.type){case"DOMMouseScroll":i=e.detail;break;case"mousewheel":i=e.wheelDelta;break;case"wheel":i=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return i},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)"mousemove"!=e.type&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),"undefined"!=typeof SDL?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var i=Module.canvas.getBoundingClientRect(),r=Module.canvas.width,t=Module.canvas.height,n=void 0!==window.scrollX?window.scrollX:window.pageXOffset,f=void 0!==window.scrollY?window.scrollY:window.pageYOffset;if("touchstart"===e.type||"touchend"===e.type||"touchmove"===e.type){var a=e.touch;if(void 0===a)return;var s=a.pageX-(n+i.left),l=a.pageY-(f+i.top),o={x:s*=r/i.width,y:l*=t/i.height};if("touchstart"===e.type)Browser.lastTouches[a.identifier]=o,Browser.touches[a.identifier]=o;else if("touchend"===e.type||"touchmove"===e.type){var u=Browser.touches[a.identifier];u||(u=o),Browser.lastTouches[a.identifier]=u,Browser.touches[a.identifier]=o}return}var c=e.pageX-(n+i.left),h=e.pageY-(f+i.top);c*=r/i.width,h*=t/i.height,Browser.mouseMovementX=c-Browser.mouseX,Browser.mouseMovementY=h-Browser.mouseY,Browser.mouseX=c,Browser.mouseY=h}},xhrLoad:function(e,i,r){var t=new XMLHttpRequest;t.open("GET",e,!0),t.responseType="arraybuffer",t.onload=function(){200==t.status||0==t.status&&t.response?i(t.response):r()},t.onerror=r,t.send(null)},asyncLoad:function(e,i,r,t){Browser.xhrLoad(e,(function(r){assert(r,\'Loading data file "\'+e+\'" failed (no arrayBuffer).\'),i(new Uint8Array(r)),t||removeRunDependency("al "+e)}),(function(i){if(!r)throw\'Loading data file "\'+e+\'" failed.\';r()})),t||addRunDependency("al "+e)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach((function(i){i(e.width,e.height)}))},setCanvasSize:function(e,i,r){var t=Module.canvas;Browser.updateCanvasDimensions(t,e,i),r||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e|=8388608,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e&=-8388609,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,i,r){i&&r?(e.widthNative=i,e.heightNative=r):(i=e.widthNative,r=e.heightNative);var t=i,n=r;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(t/n<Module.forcedAspectRatio?t=Math.round(n*Module.forcedAspectRatio):n=Math.round(t/Module.forcedAspectRatio)),(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===e.parentNode&&"undefined"!=typeof screen){var f=Math.min(screen.width/t,screen.height/n);t=Math.round(t*f),n=Math.round(n*f)}Browser.resizeCanvas?(e.width!=t&&(e.width=t),e.height!=n&&(e.height=n),void 0!==e.style&&(e.style.removeProperty("width"),e.style.removeProperty("height"))):(e.width!=i&&(e.width=i),e.height!=r&&(e.height=r),void 0!==e.style&&(t!=i||n!=r?(e.style.setProperty("width",t+"px","important"),e.style.setProperty("height",n+"px","important")):(e.style.removeProperty("width"),e.style.removeProperty("height"))))},wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:function(){var e=Browser.nextWgetRequestHandle;return Browser.nextWgetRequestHandle++,e}},SYSCALLS={varargs:0,get:function(e){return SYSCALLS.varargs+=4,HEAP32[SYSCALLS.varargs-4>>2]},getStr:function(){return Pointer_stringify(SYSCALLS.get())},get64:function(){var e=SYSCALLS.get(),i=SYSCALLS.get();return assert(e>=0?0===i:-1===i),e},getZero:function(){assert(0===SYSCALLS.get())}};function ___syscall54(e,i){SYSCALLS.varargs=i;try{return 0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___setErrNo(e){return Module.___errno_location&&(HEAP32[Module.___errno_location()>>2]=e),e}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(e){switch(e){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator&&navigator.hardwareConcurrency||1}return ___setErrNo(ERRNO_CODES.EINVAL),-1}Module._bitshift64Lshr=_bitshift64Lshr;var _BDtoIHigh=!0;function _pthread_cleanup_push(e,i){__ATEXIT__.push((function(){Runtime.dynCall("vi",e,[i])})),_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!"),__ATEXIT__.pop(),_pthread_cleanup_push.level=__ATEXIT__.length}function ___syscall5(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStr(),t=SYSCALLS.get(),n=SYSCALLS.get();return FS.open(r,t,n).fd}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function _emscripten_memcpy_big(e,i,r){return HEAPU8.set(HEAPU8.subarray(i,i+r),e),e}function ___syscall6(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD();return FS.close(r),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}Module._memcpy=_memcpy;var _llvm_pow_f64=Math_pow;function _sbrk(e){var i=_sbrk;i.called||(DYNAMICTOP=alignMemoryPage(DYNAMICTOP),i.called=!0,assert(Runtime.dynamicAlloc),i.alloc=Runtime.dynamicAlloc,Runtime.dynamicAlloc=function(){abort("cannot dynamically allocate, sbrk now has control")});var r=DYNAMICTOP;if(0!=e&&!i.alloc(e))return-1>>>0;return r}var _BItoD=!0;function _time(e){var i=Date.now()/1e3|0;return e&&(HEAP32[e>>2]=i),i}function _pthread_self(){return 0}function ___syscall140(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD(),t=SYSCALLS.get(),n=SYSCALLS.get(),f=SYSCALLS.get(),a=SYSCALLS.get(),s=n;return assert(0===t),FS.llseek(r,s,a),HEAP32[f>>2]=r.position,r.getdents&&0===s&&0===a&&(r.getdents=null),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall146(e,i){SYSCALLS.varargs=i;try{SYSCALLS.get();var r=SYSCALLS.get(),t=SYSCALLS.get(),n=0;___syscall146.buffer||(___syscall146.buffer=[]);for(var f=___syscall146.buffer,a=0;a<t;a++){for(var s=HEAP32[r+8*a>>2],l=HEAP32[r+(8*a+4)>>2],o=0;o<l;o++){var u=HEAPU8[s+o];0===u||10===u?(Module.print(UTF8ArrayToString(f,0)),f.length=0):f.push(u)}n+=l}return n}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall221(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD();switch(SYSCALLS.get()){case 0:return(t=SYSCALLS.get())<0?-ERRNO_CODES.EINVAL:FS.open(r.path,r.flags,0,t).fd;case 1:case 2:return 0;case 3:return r.flags;case 4:var t=SYSCALLS.get();return r.flags|=t,0;case 12:case 12:t=SYSCALLS.get();return HEAP16[t+0>>1]=2,0;case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:return ___setErrNo(ERRNO_CODES.EINVAL),-1;default:return-ERRNO_CODES.EINVAL}}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall145(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD(),t=SYSCALLS.get(),n=SYSCALLS.get();return SYSCALLS.doReadv(r,t,n)}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}Module.requestFullScreen=function(e,i,r){Browser.requestFullScreen(e,i,r)},Module.requestAnimationFrame=function(e){Browser.requestAnimationFrame(e)},Module.setCanvasSize=function(e,i,r){Browser.setCanvasSize(e,i,r)},Module.pauseMainLoop=function(){Browser.mainLoop.pause()},Module.resumeMainLoop=function(){Browser.mainLoop.resume()},Module.getUserMedia=function(){Browser.getUserMedia()},Module.createContext=function(e,i,r,t){return Browser.createContext(e,i,r,t)},STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP),staticSealed=!0,STACK_MAX=STACK_BASE+TOTAL_STACK,DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX),assert(DYNAMIC_BASE<TOTAL_MEMORY,"TOTAL_MEMORY not big enough for stack");var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_DYNAMIC);function invoke_iiiiiiii(e,i,r,t,n,f,a,s){try{return Module.dynCall_iiiiiiii(e,i,r,t,n,f,a,s)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiii(e,i,r,t){try{return Module.dynCall_iiii(e,i,r,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_di(e,i){try{return Module.dynCall_di(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_vi(e,i){try{Module.dynCall_vi(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_vii(e,i,r){try{Module.dynCall_vii(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiii(e,i,r,t,n,f,a){try{return Module.dynCall_iiiiiii(e,i,r,t,n,f,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_ii(e,i){try{return Module.dynCall_ii(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viii(e,i,r,t){try{Module.dynCall_viii(e,i,r,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiiiiiiii(e,i,r,t,n,f,a,s,l,o,u,c){try{return Module.dynCall_iiiiiiiiiiii(e,i,r,t,n,f,a,s,l,o,u,c)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiii(e,i,r,t,n){try{return Module.dynCall_iiiii(e,i,r,t,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iii(e,i,r){try{return Module.dynCall_iii(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiii(e,i,r,t,n,f){try{return Module.dynCall_iiiiii(e,i,r,t,n,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiii(e,i,r,t,n){try{Module.dynCall_viiii(e,i,r,t,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}Module.asmGlobalArg={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort:abort,assert:assert,invoke_iiiiiiii:invoke_iiiiiiii,invoke_iiii:invoke_iiii,invoke_di:invoke_di,invoke_vi:invoke_vi,invoke_vii:invoke_vii,invoke_iiiiiii:invoke_iiiiiii,invoke_ii:invoke_ii,invoke_viii:invoke_viii,invoke_iiiiiiiiiiii:invoke_iiiiiiiiiiii,invoke_iiiii:invoke_iiiii,invoke_iii:invoke_iii,invoke_iiiiii:invoke_iiiiii,invoke_viiii:invoke_viiii,_pthread_cleanup_pop:_pthread_cleanup_pop,___syscall221:___syscall221,_llvm_pow_f64:_llvm_pow_f64,_abort:_abort,_pthread_cleanup_push:_pthread_cleanup_push,_ceilf:_ceilf,_emscripten_set_main_loop_timing:_emscripten_set_main_loop_timing,_sbrk:_sbrk,_emscripten_memcpy_big:_emscripten_memcpy_big,_sysconf:_sysconf,___setErrNo:___setErrNo,_floor:_floor,_pthread_self:_pthread_self,_sqrt:_sqrt,_floorf:_floorf,___syscall54:___syscall54,___unlock:___unlock,_emscripten_set_main_loop:_emscripten_set_main_loop,___lock:___lock,___syscall6:___syscall6,___syscall5:___syscall5,_time:_time,___syscall140:___syscall140,___syscall145:___syscall145,___syscall146:___syscall146,STACKTOP:STACKTOP,STACK_MAX:STACK_MAX,tempDoublePtr:tempDoublePtr,ABORT:ABORT,cttz_i8:cttz_i8};var asm=function(e,i,r){"use asm";var t=new e.Int8Array(r);var n=new e.Int16Array(r);var f=new e.Int32Array(r);var a=new e.Uint8Array(r);var s=new e.Uint16Array(r);var l=new e.Uint32Array(r);var o=new e.Float32Array(r);var u=new e.Float64Array(r);var c=i.STACKTOP|0;var h=i.STACK_MAX|0;var d=i.tempDoublePtr|0;var b=i.ABORT|0;var k=i.cttz_i8|0;var w=0;var _=0;var m=0;var v=0;var p=e.NaN,g=e.Infinity;var y=0,M=0,E=0,A=0,S=0.0,T=0,C=0,R=0,L=0.0;var x=0;var P=0;var O=0;var B=0;var I=0;var D=0;var N=0;var F=0;var U=0;var j=0;var H=e.Math.floor;var z=e.Math.abs;var Y=e.Math.sqrt;var q=e.Math.pow;var X=e.Math.cos;var V=e.Math.sin;var G=e.Math.tan;var K=e.Math.acos;var W=e.Math.asin;var Z=e.Math.atan;var J=e.Math.atan2;var Q=e.Math.exp;var $=e.Math.log;var ee=e.Math.ceil;var ie=e.Math.imul;var re=e.Math.min;var te=e.Math.clz32;var ne=i.abort;var fe=i.assert;var ae=i.invoke_iiiiiiii;var se=i.invoke_iiii;var le=i.invoke_di;var oe=i.invoke_vi;var ue=i.invoke_vii;var ce=i.invoke_iiiiiii;var he=i.invoke_ii;var de=i.invoke_viii;var be=i.invoke_iiiiiiiiiiii;var ke=i.invoke_iiiii;var we=i.invoke_iii;var _e=i.invoke_iiiiii;var me=i.invoke_viiii;var ve=i._pthread_cleanup_pop;var pe=i.___syscall221;var ge=i._llvm_pow_f64;var ye=i._abort;var Me=i._pthread_cleanup_push;var Ee=i._ceilf;var Ae=i._emscripten_set_main_loop_timing;var Se=i._sbrk;var Te=i._emscripten_memcpy_big;var Ce=i._sysconf;var Re=i.___setErrNo;var Le=i._floor;var xe=i._pthread_self;var Pe=i._sqrt;var Oe=i._floorf;var Be=i.___syscall54;var Ie=i.___unlock;var De=i._emscripten_set_main_loop;var Ne=i.___lock;var Fe=i.___syscall6;var Ue=i.___syscall5;var je=i._time;var He=i.___syscall140;var ze=i.___syscall145;var Ye=i.___syscall146;var qe=0.0;function Xe(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+48|0;n=h+32|0;u=h+28|0;f[n>>2]=r;if((f[e+8>>2]|0)==16)o=(f[e+164>>2]|0)+((f[e+200>>2]|0)*5640|0)|0;else o=f[e+12>>2]|0;a=(f[e+80>>2]|0)+16|0;s=(f[a>>2]|0)>>>0<257?1:2;l=s+1|0;if(l>>>0>r>>>0){Ht(t,1,14585,h)|0;t=0;c=h;return t|0}f[n>>2]=r-l;ct(i,u,s);r=f[u>>2]|0;if(r>>>0>=(f[a>>2]|0)>>>0){Ht(t,1,14611,h+8|0)|0;t=0;c=h;return t|0}ct(i+s|0,(f[o+5584>>2]|0)+(r*1080|0)|0,1);if(!(_i(e,f[u>>2]|0,i+l|0,n,t)|0)){Ht(t,1,14585,h+16|0)|0;t=0;c=h;return t|0}if(!(f[n>>2]|0)){t=1;c=h;return t|0}Ht(t,1,14585,h+24|0)|0;t=0;c=h;return t|0}function Ve(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0;o=c;c=c+32|0;l=o+8|0;n=o+20|0;s=f[(f[e+80>>2]|0)+16>>2]|0;a=s>>>0<257?1:2;if((a+2|0)!=(r|0)){Ht(t,1,14502,o)|0;l=0;c=o;return l|0}if((f[e+8>>2]|0)==16)e=(f[e+164>>2]|0)+((f[e+200>>2]|0)*5640|0)|0;else e=f[e+12>>2]|0;ct(i,n,a);ct(i+a|0,o+16|0,1);r=f[n>>2]|0;if(r>>>0<s>>>0){ct(i+(a+1)|0,(f[e+5584>>2]|0)+(r*1080|0)+808|0,1);l=1;c=o;return l|0}else{f[l>>2]=r;f[l+4>>2]=s;Ht(t,1,14528,l)|0;l=0;c=o;return l|0}return 0}function Ge(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0;s=c;c=c+16|0;n=s+12|0;f[n>>2]=r;if(!(wi(e,0,i,n,t)|0)){Ht(t,1,14476,s)|0;a=0;c=s;return a|0}if(f[n>>2]|0){Ht(t,1,14476,s+8|0)|0;a=0;c=s;return a|0}if((f[e+8>>2]|0)==16)n=(f[e+164>>2]|0)+((f[e+200>>2]|0)*5640|0)|0;else n=f[e+12>>2]|0;n=f[n+5584>>2]|0;r=e+80|0;if((f[(f[r>>2]|0)+16>>2]|0)>>>0<=1){a=1;c=s;return a|0}t=n+24|0;e=n+804|0;a=n+28|0;i=1;while(1){f[n+1104>>2]=f[t>>2];f[n+1884>>2]=f[e>>2];Nl(n+1108|0,a|0,776)|0;i=i+1|0;if(i>>>0>=(f[(f[r>>2]|0)+16>>2]|0)>>>0){n=1;break}else n=n+1080|0}c=s;return n|0}function Ke(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+48|0;d=b+32|0;h=b+24|0;u=b+16|0;a=b+8|0;n=b;o=b+40|0;s=b+36|0;f[o>>2]=r;l=e+80|0;do{if((f[(f[l>>2]|0)+16>>2]|0)>>>0<257){if(r){ct(i,s,1);a=i+1|0;i=r+-1|0;break}Ht(t,1,14129,n)|0;d=0;c=b;return d|0}else{if(r>>>0>=2){ct(i,s,2);a=i+2|0;i=r+-2|0;break}Ht(t,1,14129,a)|0;d=0;c=b;return d|0}}while(0);f[o>>2]=i;n=f[s>>2]|0;i=f[(f[l>>2]|0)+16>>2]|0;if(n>>>0>=i>>>0){f[u>>2]=n;f[u+4>>2]=i;Ht(t,1,14155,u)|0;d=0;c=b;return d|0}if(!(wi(e,n,a,o,t)|0)){Ht(t,1,14129,h)|0;d=0;c=b;return d|0}if(!(f[o>>2]|0)){d=1;c=b;return d|0}Ht(t,1,14129,d)|0;d=0;c=b;return d|0}function We(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0;v=c;c=c+16|0;s=v+8|0;m=v+12|0;_=f[(f[e+80>>2]|0)+16>>2]|0;w=_>>>0<257?1:2;k=(w<<1)+5|0;a=(r>>>0)/(k>>>0)|0;if((a|0)==0|((r>>>0)%(k>>>0)|0|0)!=0){Ht(n,1,14085,v)|0;m=0;c=v;return m|0}if((f[e+8>>2]|0)==16)k=(f[e+164>>2]|0)+((f[e+200>>2]|0)*5640|0)|0;else k=f[e+12>>2]|0;r=k+5636|0;e=t[r>>0]|0;if(!(e&4))b=0;else b=(f[k+420>>2]|0)+1|0;d=b+a|0;if(d>>>0>31){f[s>>2]=d;Ht(n,1,14111,s)|0;m=0;c=v;return m|0}t[r>>0]=e|4;if(b>>>0<d>>>0){n=w+1|0;h=k+8|0;s=w+3|0;l=w|4;o=l+w|0;u=o+1|0;e=i;a=b;r=k+424+(b*148|0)|0;while(1){ct(e,r,1);ct(e+1|0,r+4|0,w);i=r+8|0;ct(e+n|0,i,2);p=f[i>>2]|0;b=f[h>>2]|0;f[i>>2]=p>>>0<b>>>0?p:b;ct(e+s|0,r+12|0,1);i=r+16|0;ct(e+l|0,i,w);ct(e+o|0,m,1);f[r+36>>2]=f[m>>2];b=f[i>>2]|0;f[i>>2]=b>>>0<_>>>0?b:_;a=a+1|0;if(a>>>0>=d>>>0)break;else{e=e+u|0;r=r+148|0}}}f[k+420>>2]=d+-1;p=1;c=v;return p|0}function Ze(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0;F=c;c=c+144|0;N=F+128|0;O=F+120|0;P=F+112|0;L=F+104|0;R=F+96|0;C=F+88|0;S=F+72|0;v=F+64|0;_=F+56|0;w=F+48|0;k=F+40|0;m=F+32|0;u=F+24|0;l=F+16|0;s=F+136|0;y=F+132|0;I=f[e+80>>2]|0;D=e+88|0;if(r>>>0<36){Ht(a,1,13440,F)|0;a=0;c=F;return a|0}B=r+-36|0;b=(B>>>0)/3|0;if((B>>>0)%3|0){Ht(a,1,13440,F+8|0)|0;a=0;c=F;return a|0}ct(i,s,2);n[D>>1]=f[s>>2];M=I+8|0;ct(i+2|0,M,4);T=I+12|0;ct(i+6|0,T,4);ct(i+10|0,I,4);d=I+4|0;ct(i+14|0,d,4);g=e+100|0;ct(i+18|0,g,4);A=e+104|0;ct(i+22|0,A,4);p=e+92|0;ct(i+26|0,p,4);E=e+96|0;ct(i+30|0,E,4);ct(i+34|0,s,2);o=i+36|0;r=f[s>>2]|0;if(r>>>0>=16385){f[l>>2]=r;Ht(a,1,13468,l)|0;a=0;c=F;return a|0}r=r&65535;B=I+16|0;f[B>>2]=r;if((r|0)!=(b|0)){f[u>>2]=r;f[u+4>>2]=b;Ht(a,1,13529,u)|0;a=0;c=F;return a|0}u=f[I>>2]|0;h=f[M>>2]|0;if(h>>>0>u>>>0){r=f[d>>2]|0;i=f[T>>2]|0;if(r>>>0<i>>>0){s=f[g>>2]|0;l=f[A>>2]|0;if(!(ie(l,s)|0)){f[k>>2]=s;f[k+4>>2]=l;Ht(a,1,13705,k)|0;a=0;c=F;return a|0}m=zl(i|0,0,h|0,0)|0;if(!((m|0)==(ie(i,h)|0)&(x|0)==0)){f[w>>2]=h;f[w+4>>2]=i;Ht(a,1,13766,w)|0;a=0;c=F;return a|0}h=f[p>>2]|0;k=Il(h|0,0,s|0,0)|0;w=x;d=f[E>>2]|0;m=Il(d|0,0,l|0,0)|0;if(h>>>0<=u>>>0?d>>>0<=r>>>0&(k|0-w)>>>0>u>>>0&(m|0-x)>>>0>r>>>0:0){i=Fn(b,52)|0;b=I+24|0;f[b>>2]=i;if(!i){f[B>>2]=0;Ht(a,1,13852,v)|0;a=0;c=F;return a|0}e:do{if(f[B>>2]|0){u=e+168|0;r=0;l=i;while(1){ct(o,y,1);f[l+24>>2]=(f[y>>2]&127)+1;f[l+32>>2]=(f[y>>2]|0)>>>7;ct(o+1|0,y,1);f[l>>2]=f[y>>2];ct(o+2|0,y,1);s=f[y>>2]|0;f[l+4>>2]=s;i=f[l>>2]|0;if((s+-1|0)>>>0>254|(i+-1|0)>>>0>254)break;f[l+36>>2]=0;f[l+40>>2]=f[u>>2];r=r+1|0;if(r>>>0>=(f[B>>2]|0)>>>0)break e;else{o=o+3|0;l=l+52|0}}f[S>>2]=r;f[S+4>>2]=i;f[S+8>>2]=s;Ht(a,1,13900,S)|0;a=0;c=F;return a|0}}while(0);h=f[p>>2]|0;u=f[g>>2]|0;o=((f[M>>2]|0)+-1-h+u|0)/(u|0)|0;f[e+112>>2]=o;l=f[E>>2]|0;s=f[A>>2]|0;i=((f[T>>2]|0)+-1-l+s|0)/(s|0)|0;f[e+116>>2]=i;if(!((i|0)==0|(o|0)==0)?o>>>0<=(65535/(i>>>0)|0)>>>0:0){d=ie(o,i)|0;r=e+28|0;if(!(t[e+76>>0]&2)){f[r>>2]=0;f[e+32>>2]=0;f[e+36>>2]=o;f[e+40>>2]=i}else{f[r>>2]=(((f[r>>2]|0)-h|0)>>>0)/(u>>>0)|0;C=e+32|0;f[C>>2]=(((f[C>>2]|0)-l|0)>>>0)/(s>>>0)|0;C=e+36|0;f[C>>2]=((f[C>>2]|0)+-1-h+u|0)/(u|0)|0;C=e+40|0;f[C>>2]=((f[C>>2]|0)+-1-l+s|0)/(s|0)|0}C=Fn(d,5640)|0;o=e+164|0;f[o>>2]=C;if(!C){Ht(a,1,13852,R)|0;a=0;c=F;return a|0}R=Fn(f[B>>2]|0,1080)|0;i=e+12|0;f[(f[i>>2]|0)+5584>>2]=R;if(!R){Ht(a,1,13852,L)|0;a=0;c=F;return a|0}L=Fn(10,20)|0;r=f[i>>2]|0;f[r+5612>>2]=L;if(!L){Ht(a,1,13852,P)|0;a=0;c=F;return a|0}f[r+5620>>2]=10;P=Fn(10,20)|0;r=f[i>>2]|0;f[r+5624>>2]=P;if(!P){Ht(a,1,13852,O)|0;a=0;c=F;return a|0}f[r+5632>>2]=10;l=f[B>>2]|0;if(l){s=f[b>>2]|0;r=r+5584|0;i=0;do{if(!(f[s+(i*52|0)+32>>2]|0))f[(f[r>>2]|0)+(i*1080|0)+1076>>2]=1<<(f[s+(i*52|0)+24>>2]|0)+-1;i=i+1|0}while(i>>>0<l>>>0)}e:do{if(d){r=f[o>>2]|0;O=Fn(l,1080)|0;f[r+5584>>2]=O;if(O){i=0;while(1){i=i+1|0;if(i>>>0>=d>>>0)break e;O=Fn(f[B>>2]|0,1080)|0;f[r+11224>>2]=O;if(!O)break;else r=r+5640|0}}Ht(a,1,13852,N)|0;a=0;c=F;return a|0}}while(0);f[e+8>>2]=4;Gt(I,D);a=1;c=F;return a|0}f[C>>2]=o;f[C+4>>2]=i;Ht(a,1,14002,C)|0;a=0;c=F;return a|0}Ht(a,1,13808,_)|0;a=0;c=F;return a|0}}else{i=f[T>>2]|0;r=f[d>>2]|0}f[m>>2]=h-u;f[m+4>>2]=i-r;Ht(a,1,13643,m)|0;a=0;c=F;return a|0}function Je(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0;n=c;c=c+32|0;e=n+12|0;if(r>>>0<2){Ht(t,1,13414,n)|0;t=0;c=n;return t|0}ct(i,n+16|0,1);ct(i+1|0,e,1);i=f[e>>2]|0;if(!(((r+-2|0)>>>0)%(((i>>>5&2)+2+(i>>>4&3)|0)>>>0)|0)){t=1;c=n;return t|0}Ht(t,1,13414,n+8|0)|0;t=0;c=n;return t|0}function Qe(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;e=c;c=c+16|0;if(!r){Ht(t,1,13388,e)|0;i=0}else i=1;c=e;return i|0}function $e(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0;o=c;c=c+32|0;l=o+8|0;s=o+12|0;if(!r){Ht(t,1,13362,o)|0;t=0;c=o;return t|0}ct(i,o+16|0,1);n=r+-1|0;if(!n){t=1;c=o;return t|0}else{a=0;e=0}do{i=i+1|0;ct(i,s,1);r=f[s>>2]|0;if(!(r&128))e=0;else e=(r&127|e)<<7;a=a+1|0}while((a|0)!=(n|0));if(!e){t=1;c=o;return t|0}Ht(t,1,13362,l)|0;t=0;c=o;return t|0}function ei(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0;k=c;c=c+48|0;b=k+32|0;u=k+24|0;s=k+16|0;a=k+8|0;d=k+36|0;if(r>>>0<2){Ht(n,1,13276,k)|0;b=0;c=k;return b|0}h=e+184|0;t[h>>0]=t[h>>0]|1;ct(i,d,1);h=i+1|0;o=r+-1|0;l=e+124|0;r=f[l>>2]|0;do{if(r){a=e+120|0;i=f[d>>2]|0;if((f[a>>2]|0)>>>0<=i>>>0){e=i+1|0;i=Hn(r,e<<3)|0;if(i){f[l>>2]=i;r=f[a>>2]|0;Ol(i+(r<<3)|0,0,e-r<<3|0)|0;f[a>>2]=e;r=f[l>>2]|0;break}Ht(n,1,13302,s)|0;b=0;c=k;return b|0}}else{i=(f[d>>2]|0)+1|0;r=Fn(i,8)|0;f[l>>2]=r;if(r){f[e+120>>2]=i;break}Ht(n,1,13302,a)|0;b=0;c=k;return b|0}}while(0);i=f[d>>2]|0;if(f[r+(i<<3)>>2]|0){f[u>>2]=i;Ht(n,1,13340,u)|0;b=0;c=k;return b|0}u=Nn(o)|0;r=f[d>>2]|0;i=f[l>>2]|0;f[i+(r<<3)>>2]=u;if(!u){Ht(n,1,13302,b)|0;b=0;c=k;return b|0}else{f[i+(r<<3)+4>>2]=o;Nl(f[i+(f[d>>2]<<3)>>2]|0,h|0,o|0)|0;b=1;c=k;return b|0}return 0}function ii(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0;_=c;c=c+48|0;w=_+40|0;b=_+32|0;o=_+24|0;l=_+16|0;k=_+44|0;if(r>>>0<2){Ht(n,1,13127,_)|0;w=0;c=_;return w|0}if(t[e+184>>0]&1){Ht(n,1,13153,_+8|0)|0;w=0;c=_;return w|0}s=f[e+200>>2]|0;a=f[e+164>>2]|0;d=a+(s*5640|0)+5636|0;t[d>>0]=t[d>>0]|2;ct(i,k,1);d=i+1|0;h=r+-1|0;u=a+(s*5640|0)+5164|0;i=f[u>>2]|0;do{if(i){a=a+(s*5640|0)+5160|0;e=f[k>>2]|0;if((f[a>>2]|0)>>>0<=e>>>0){r=e+1|0;e=Hn(i,r<<3)|0;if(e){f[u>>2]=e;i=f[a>>2]|0;Ol(e+(i<<3)|0,0,r-i<<3|0)|0;f[a>>2]=r;i=f[u>>2]|0;break}Ht(n,1,8775,o)|0;w=0;c=_;return w|0}}else{e=(f[k>>2]|0)+1|0;i=Fn(e,8)|0;f[u>>2]=i;if(i){f[a+(s*5640|0)+5160>>2]=e;break}Ht(n,1,8775,l)|0;w=0;c=_;return w|0}}while(0);e=f[k>>2]|0;if(f[i+(e<<3)>>2]|0){f[b>>2]=e;Ht(n,1,13254,b)|0;w=0;c=_;return w|0}b=Nn(h)|0;i=f[k>>2]|0;e=f[u>>2]|0;f[e+(i<<3)>>2]=b;if(!b){Ht(n,1,8775,w)|0;w=0;c=_;return w|0}else{f[e+(i<<3)+4>>2]=h;Nl(f[e+(f[k>>2]<<3)>>2]|0,d|0,h|0)|0;w=1;c=_;return w|0}return 0}function ri(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;i=c;c=c+16|0;if((f[(f[e+80>>2]|0)+16>>2]<<2|0)==(r|0)){t=1;c=i;return t|0}Ht(t,1,13101,i)|0;t=0;c=i;return t|0}function ti(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;return 1}function ni(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;m=c;c=c+48|0;_=m+40|0;w=m+32|0;u=m+24|0;k=m+44|0;if((f[e+8>>2]|0)==16)l=(f[e+164>>2]|0)+((f[e+200>>2]|0)*5640|0)|0;else l=f[e+12>>2]|0;if(r>>>0<2){Ht(t,1,12933,m)|0;_=0;c=m;return _|0}ct(i,k,2);if(f[k>>2]|0){Ht(t,2,12959,m+8|0)|0;_=1;c=m;return _|0}if(r>>>0<7){Ht(t,1,12933,m+16|0)|0;_=0;c=m;return _|0}ct(i+2|0,k,2);d=i+4|0;b=f[k>>2]&255;o=l+5612|0;n=f[o>>2]|0;h=l+5616|0;e=f[h>>2]|0;e:do{if(!e){a=0;s=n}else{a=0;s=n;do{if((f[s+8>>2]|0)==(b|0))break e;s=s+20|0;a=a+1|0}while(a>>>0<e>>>0)}}while(0);if((a|0)==(e|0)){a=l+5620|0;do{if((e|0)==(f[a>>2]|0)){e=e+10|0;f[a>>2]=e;e=Hn(n,e*20|0)|0;if(e){f[o>>2]=e;n=f[h>>2]|0;Ol(e+(n*20|0)|0,0,((f[a>>2]|0)-n|0)*20|0)|0;n=f[o>>2]|0;e=f[h>>2]|0;break}zn(f[o>>2]|0);f[o>>2]=0;f[a>>2]=0;f[h>>2]=0;Ht(t,1,13019,u)|0;_=0;c=m;return _|0}}while(0);f[h>>2]=e+1;s=n+(e*20|0)|0}a=s+12|0;e=f[a>>2]|0;if(e){zn(e);f[a>>2]=0}f[s+8>>2]=b;b=f[k>>2]|0;f[s+4>>2]=b>>>8&3;f[s>>2]=b>>>10&3;ct(d,k,2);if(f[k>>2]|0){Ht(t,2,13057,w)|0;_=1;c=m;return _|0}e=r+-6|0;n=Nn(e)|0;f[a>>2]=n;if(!n){Ht(t,1,12933,_)|0;_=0;c=m;return _|0}else{Nl(n|0,i+6|0,e|0)|0;f[s+16>>2]=e;_=1;c=m;return _|0}return 0}function fi(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0;l=c;c=c+32|0;n=l+16|0;s=l+12|0;e=e+80|0;a=f[(f[e>>2]|0)+16>>2]|0;if((a+2|0)!=(r|0)){Ht(t,1,12907,l)|0;s=0;c=l;return s|0}ct(i,n,2);if((f[n>>2]|0)!=(a|0)){Ht(t,1,12907,l+8|0)|0;s=0;c=l;return s|0}if(!a){s=1;c=l;return s|0}n=i+2|0;i=0;e=f[(f[e>>2]|0)+24>>2]|0;while(1){ct(n,s,1);f[e+32>>2]=(f[s>>2]|0)>>>7&1;f[e+24>>2]=(f[s>>2]&127)+1;i=i+1|0;if((i|0)==(a|0)){e=1;break}else{n=n+1|0;e=e+52|0}}c=l;return e|0}function ai(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0;I=c;c=c+144|0;B=I+120|0;O=I+112|0;P=I+104|0;x=I+96|0;L=I+88|0;R=I+80|0;C=I+72|0;T=I+64|0;S=I+56|0;A=I+48|0;k=I+40|0;b=I+32|0;h=I+24|0;M=I+136|0;p=I+132|0;g=I+128|0;y=I+124|0;if((f[e+8>>2]|0)==16)w=(f[e+164>>2]|0)+((f[e+200>>2]|0)*5640|0)|0;else w=f[e+12>>2]|0;if(r>>>0<2){Ht(n,1,12567,I)|0;B=0;c=I;return B|0}ct(i,M,2);if(f[M>>2]|0){Ht(n,2,12593,I+8|0)|0;B=1;c=I;return B|0}if(r>>>0<7){Ht(n,1,12567,I+16|0)|0;B=0;c=I;return B|0}ct(i+2|0,p,1);d=i+3|0;u=w+5624|0;a=f[u>>2]|0;E=w+5628|0;e=f[E>>2]|0;e:do{if(!e){l=0;s=a}else{o=f[p>>2]|0;l=0;s=a;do{if((f[s>>2]|0)==(o|0))break e;s=s+20|0;l=l+1|0}while(l>>>0<e>>>0)}}while(0);if((l|0)==(e|0)){s=w+5632|0;do{if((e|0)==(f[s>>2]|0)){e=e+10|0;f[s>>2]=e;e=Hn(a,e*20|0)|0;if(e){f[u>>2]=e;a=f[E>>2]|0;Ol(e+(a*20|0)|0,0,((f[s>>2]|0)-a|0)*20|0)|0;a=f[u>>2]|0;e=f[E>>2]|0;break}zn(f[u>>2]|0);f[u>>2]=0;f[s>>2]=0;f[E>>2]=0;Ht(n,1,12639,h)|0;B=0;c=I;return B|0}}while(0);s=a+(e*20|0)|0}f[s>>2]=f[p>>2];ct(d,M,2);if(f[M>>2]|0){Ht(n,2,12593,b)|0;B=1;c=I;return B|0}ct(i+5|0,g,2);a=f[g>>2]|0;if(a>>>0>1){Ht(n,2,12677,k)|0;B=1;c=I;return B|0}e=r+-7|0;e:do{if(a){_=s+4|0;m=s+16|0;v=s+8|0;r=s+12|0;k=w+5612|0;b=w+5616|0;h=i+7|0;d=0;i:while(1){if(e>>>0<3){a=27;break}ct(h,M,1);if((f[M>>2]|0)!=1){a=29;break}ct(h+1|0,y,2);a=e+-3|0;l=f[y>>2]|0;o=(l>>>15)+1|0;l=l&32767;f[_>>2]=l;s=(ie(o,l)|0)+2|0;if(a>>>0<s>>>0){a=31;break}e=h+3|0;u=a-s|0;if(l){a=0;do{ct(e,M,o);if((f[M>>2]|0)!=(a|0)){a=34;break i}e=e+o|0;a=a+1|0}while(a>>>0<(f[_>>2]|0)>>>0)}ct(e,y,2);a=e+2|0;s=f[y>>2]|0;l=(s>>>15)+1|0;s=s&32767;f[y>>2]=s;if((s|0)!=(f[_>>2]|0)){a=37;break}e=(ie(l,s)|0)+3|0;if(u>>>0<e>>>0){a=39;break}e=u-e|0;if(s){s=0;do{ct(a,M,l);if((f[M>>2]|0)!=(s|0)){a=42;break i}a=a+l|0;s=s+1|0}while(s>>>0<(f[_>>2]|0)>>>0)}ct(a,M,3);h=a+3|0;t[m>>0]=((f[M>>2]|0)>>>16^1)&1|t[m>>0]&-2;f[v>>2]=0;f[r>>2]=0;u=f[M>>2]|0;s=u&255;f[p>>2]=s;if(s){l=f[b>>2]|0;if(!l){a=50;break}o=0;a=f[k>>2]|0;while(1){if((f[a+8>>2]|0)==(s|0))break;o=o+1|0;if(o>>>0>=l>>>0){a=50;break i}else a=a+20|0}f[v>>2]=a}s=u>>>8&255;f[p>>2]=s;if(s){l=f[b>>2]|0;if(!l){a=57;break}o=0;a=f[k>>2]|0;while(1){if((f[a+8>>2]|0)==(s|0))break;o=o+1|0;if(o>>>0>=l>>>0){a=57;break i}else a=a+20|0}f[r>>2]=a}d=d+1|0;if(d>>>0>=(f[g>>2]|0)>>>0)break e}if((a|0)==27){Ht(n,1,12567,A)|0;B=0;c=I;return B|0}else if((a|0)==29){Ht(n,2,12721,S)|0;B=1;c=I;return B|0}else if((a|0)==31){Ht(n,1,12567,T)|0;B=0;c=I;return B|0}else if((a|0)==34){Ht(n,2,12787,C)|0;B=1;c=I;return B|0}else if((a|0)==37){Ht(n,2,12841,R)|0;B=1;c=I;return B|0}else if((a|0)==39){Ht(n,1,12567,L)|0;B=0;c=I;return B|0}else if((a|0)==42){Ht(n,2,12787,x)|0;B=1;c=I;return B|0}else if((a|0)==50){Ht(n,1,12567,P)|0;B=0;c=I;return B|0}else if((a|0)==57){Ht(n,1,12567,O)|0;B=0;c=I;return B|0}}}while(0);if(!e){f[E>>2]=(f[E>>2]|0)+1;B=1;c=I;return B|0}else{Ht(n,1,12567,B)|0;B=0;c=I;return B|0}return 0}function si(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;m=c;c=c+32|0;_=m+24|0;w=m+20|0;d=e+80|0;n=f[d>>2]|0;if((f[e+8>>2]|0)==16)a=(f[e+164>>2]|0)+((f[e+200>>2]|0)*5640|0)|0;else a=f[e+12>>2]|0;if(!r){Ht(t,1,12486,m)|0;_=0;c=m;return _|0}ct(i,w,1);e=f[w>>2]|0;if(e>>>0>1){Ht(t,2,12512,m+8|0)|0;_=1;c=m;return _|0}if((e+1|0)!=(r|0)){Ht(t,2,12486,m+16|0)|0;_=0;c=m;return _|0}h=a+5584|0;e=f[n+16>>2]|0;if(e){r=0;t=f[h>>2]|0;while(1){f[t+1076>>2]=0;r=r+1|0;if(r>>>0>=e>>>0)break;else t=t+1080|0}}u=a+5604|0;e=f[u>>2]|0;if(e){zn(e);f[u>>2]=0}if(!(f[w>>2]|0)){_=1;c=m;return _|0}o=a+5624|0;s=a+5628|0;l=0;while(1){i=i+1|0;ct(i,_,1);e=f[d>>2]|0;n=f[o>>2]|0;a=f[s>>2]|0;if(((a|0)!=0?!((a|0)==0?1:(f[n>>2]|0)!=(f[_>>2]|0)):0)?(b=f[n+4>>2]|0,k=e+16|0,(b|0)==(f[k>>2]|0)):0){e=f[n+8>>2]|0;if(e){r=ie(b,b)|0;a=ie(f[1036+(f[e>>2]<<2)>>2]|0,r)|0;if((f[e+16>>2]|0)!=(a|0)){e=0;r=32;break}t=Nn(r<<2)|0;f[u>>2]=t;if(!t){e=0;r=32;break}So[f[1052+(f[e>>2]<<2)>>2]&15](f[e+12>>2]|0,t,r)}e=f[n+12>>2]|0;if(e){r=f[k>>2]|0;a=ie(r,f[1036+(f[e>>2]<<2)>>2]|0)|0;if((f[e+16>>2]|0)!=(a|0)){e=0;r=32;break}a=Nn(r<<2)|0;if(!a){e=0;r=32;break}So[f[1068+(f[e>>2]<<2)>>2]&15](f[e+12>>2]|0,a,r);e=f[k>>2]|0;if(e){r=0;t=a;n=f[h>>2]|0;while(1){f[n+1076>>2]=f[t>>2];r=r+1|0;if((r|0)==(e|0))break;else{t=t+4|0;n=n+1080|0}}}zn(a)}}l=l+1|0;if(l>>>0>=(f[w>>2]|0)>>>0){e=1;r=32;break}}if((r|0)==32){c=m;return e|0}return 0}function li(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0;a=c;c=c+16|0;n=a;if(!r){c=a;return}t=0;while(1){ct(e,n,2);f[i>>2]=f[n>>2];t=t+1|0;if((t|0)==(r|0))break;else{i=i+4|0;e=e+2|0}}c=a;return}function oi(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0;a=c;c=c+16|0;n=a;if(!r){c=a;return}t=0;while(1){ct(e,n,4);f[i>>2]=f[n>>2];t=t+1|0;if((t|0)==(r|0))break;else{i=i+4|0;e=e+4|0}}c=a;return}function ui(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0;a=c;c=c+16|0;n=a;if(!r){c=a;return}t=0;while(1){kt(e,n);f[i>>2]=~~+o[n>>2];t=t+1|0;if((t|0)==(r|0))break;else{i=i+4|0;e=e+4|0}}c=a;return}function ci(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0;a=c;c=c+16|0;n=a;if(!r){c=a;return}t=0;while(1){dt(e,n);f[i>>2]=~~+u[n>>3];t=t+1|0;if((t|0)==(r|0))break;else{i=i+4|0;e=e+8|0}}c=a;return}function hi(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0;a=c;c=c+16|0;n=a;if(!r){c=a;return}t=0;while(1){ct(e,n,2);o[i>>2]=+((f[n>>2]|0)>>>0);t=t+1|0;if((t|0)==(r|0))break;else{i=i+4|0;e=e+2|0}}c=a;return}function di(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0;a=c;c=c+16|0;n=a;if(!r){c=a;return}t=0;while(1){ct(e,n,4);o[i>>2]=+((f[n>>2]|0)>>>0);t=t+1|0;if((t|0)==(r|0))break;else{i=i+4|0;e=e+4|0}}c=a;return}function bi(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0;a=c;c=c+16|0;n=a;if(!r){c=a;return}t=0;while(1){kt(e,n);f[i>>2]=f[n>>2];t=t+1|0;if((t|0)==(r|0))break;else{i=i+4|0;e=e+4|0}}c=a;return}function ki(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,f=0;f=c;c=c+16|0;n=f;if(!r){c=f;return}t=0;while(1){dt(e,n);o[i>>2]=+u[n>>3];t=t+1|0;if((t|0)==(r|0))break;else{i=i+4|0;e=e+8|0}}c=f;return}function wi(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+32|0;s=d+8|0;o=d+20|0;if((f[e+8>>2]|0)==16)e=(f[e+164>>2]|0)+((f[e+200>>2]|0)*5640|0)|0;else e=f[e+12>>2]|0;h=f[e+5584>>2]|0;e=f[t>>2]|0;if(!e){Ht(n,1,14224,d)|0;i=0;c=d;return i|0}f[t>>2]=e+-1;ct(r,o,1);r=r+1|0;a=f[o>>2]&31;l=h+(i*1080|0)+24|0;f[l>>2]=a;f[h+(i*1080|0)+804>>2]=(f[o>>2]|0)>>>5;do{if((a|0)==1){e=1;u=8}else{e=(f[t>>2]|0)>>>((a|0)!=0&1);if(e>>>0>97){f[s>>2]=e;f[s+4>>2]=97;f[s+8>>2]=97;Ht(n,2,14260,s)|0;a=f[l>>2]|0}n=(e|0)==0;if(a)if(n){e=0;u=20;break}else{u=8;break}if(!n){a=0;while(1){ct(r,o,1);if(a>>>0<97){f[h+(i*1080|0)+28+(a<<3)>>2]=(f[o>>2]|0)>>>3;f[h+(i*1080|0)+28+(a<<3)+4>>2]=0}a=a+1|0;if((a|0)==(e|0))break;else r=r+1|0}}e=(f[t>>2]|0)-e|0}}while(0);if((u|0)==8){a=0;while(1){ct(r,o,2);if(a>>>0<97){f[h+(i*1080|0)+28+(a<<3)>>2]=(f[o>>2]|0)>>>11;f[h+(i*1080|0)+28+(a<<3)+4>>2]=f[o>>2]&2047}a=a+1|0;if((a|0)==(e|0)){u=20;break}else r=r+2|0}}if((u|0)==20)e=(f[t>>2]|0)-(e<<1)|0;f[t>>2]=e;if((f[l>>2]|0)!=1){i=1;c=d;return i|0}e=h+(i*1080|0)+28|0;r=h+(i*1080|0)+32|0;a=1;do{t=(f[e>>2]|0)-(((a+-1|0)>>>0)/3|0)|0;f[h+(i*1080|0)+28+(a<<3)>>2]=(t|0)>0?t:0;f[h+(i*1080|0)+28+(a<<3)+4>>2]=f[r>>2];a=a+1|0}while((a|0)!=97);e=1;c=d;return e|0}function _i(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0;_=c;c=c+48|0;k=_+40|0;u=_+32|0;o=_+16|0;l=_+8|0;b=_+44|0;s=e+8|0;if((f[s>>2]|0)==16)a=(f[e+164>>2]|0)+((f[e+200>>2]|0)*5640|0)|0;else a=f[e+12>>2]|0;h=f[a+5584>>2]|0;if((f[t>>2]|0)>>>0<5){Ht(n,1,14664,_)|0;t=0;c=_;return t|0}d=h+(i*1080|0)+4|0;ct(r,d,1);a=(f[d>>2]|0)+1|0;f[d>>2]=a;if(a>>>0>33){f[l>>2]=a;f[l+4>>2]=33;Ht(n,1,14699,l)|0;t=0;c=_;return t|0}if((f[e+168>>2]|0)>>>0>=a>>>0){f[o>>2]=i;Ht(n,1,14776,o)|0;f[s>>2]=f[s>>2]|32768;t=0;c=_;return t|0}l=h+(i*1080|0)+8|0;ct(r+1|0,l,1);f[l>>2]=(f[l>>2]|0)+2;e=h+(i*1080|0)+12|0;ct(r+2|0,e,1);o=(f[e>>2]|0)+2|0;f[e>>2]=o;l=f[l>>2]|0;if(l>>>0>10|o>>>0>10|(l+o|0)>>>0>12){Ht(n,1,14934,_+24|0)|0;t=0;c=_;return t|0}ct(r+3|0,h+(i*1080|0)+16|0,1);ct(r+4|0,h+(i*1080|0)+20|0,1);s=(f[t>>2]|0)+-5|0;f[t>>2]=s;a=f[d>>2]|0;if(!(f[h+(i*1080|0)>>2]&1)){if(!a){t=1;c=_;return t|0}else a=0;do{f[h+(i*1080|0)+812+(a<<2)>>2]=15;f[h+(i*1080|0)+944+(a<<2)>>2]=15;a=a+1|0}while(a>>>0<(f[d>>2]|0)>>>0);a=1;c=_;return a|0}if(s>>>0<a>>>0){Ht(n,1,14664,u)|0;t=0;c=_;return t|0}do{if(!a)a=0;else{e=0;s=r+5|0;while(1){ct(s,b,1);s=s+1|0;a=f[b>>2]|0;if((e|0)!=0?a>>>0<16|(a&15|0)==0:0)break;f[h+(i*1080|0)+812+(e<<2)>>2]=a&15;f[h+(i*1080|0)+944+(e<<2)>>2]=(f[b>>2]|0)>>>4;e=e+1|0;a=f[d>>2]|0;if(e>>>0>=a>>>0){w=22;break}}if((w|0)==22){s=f[t>>2]|0;break}Ht(n,1,15002,k)|0;t=0;c=_;return t|0}}while(0);f[t>>2]=s-a;t=1;c=_;return t|0}function mi(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;if(!r)return;t=0;while(1){ut(i,~~+o[e>>2]>>>0,2);t=t+1|0;if((t|0)==(r|0))break;else{i=i+2|0;e=e+4|0}}return}function vi(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;if(!r)return;t=0;while(1){ut(i,~~+o[e>>2]>>>0,4);t=t+1|0;if((t|0)==(r|0))break;else{i=i+4|0;e=e+4|0}}return}function pi(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;if(!r)return;t=0;while(1){bt(i,+o[e>>2]);t=t+1|0;if((t|0)==(r|0))break;else{i=i+4|0;e=e+4|0}}return}function gi(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;if(!r)return;t=0;while(1){ht(i,+o[e>>2]);t=t+1|0;if((t|0)==(r|0))break;else{i=i+8|0;e=e+4|0}}return}function yi(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0;l=c;c=c+16|0;if(!r){r=0;c=l;return r|0}if(!(lf(f[e>>2]|0,i,r,t)|0)){Ht(t,1,16303,l)|0;r=0;c=l;return r|0}if(f[e+128>>2]|0){r=1;c=l;return r|0}s=e+108|0;if(!(Hi(r,s,t)|0)){r=0;c=l;return r|0}i=f[e+48>>2]|0;e:do{switch(i|0){case 16:{f[r+20>>2]=1;break}case 17:{f[r+20>>2]=2;break}case 18:{f[r+20>>2]=3;break}case 24:{f[r+20>>2]=4;break}default:{n=r+20|0;if((i|0)==12){f[n>>2]=5;break e}else{f[n>>2]=-1;break e}}}}while(0);a=e+120|0;i=f[a>>2]|0;do{if(i){if(f[i+12>>2]|0){zi(r,s);break}zn(f[i+4>>2]|0);zn(f[(f[a>>2]|0)+8>>2]|0);zn(f[f[a>>2]>>2]|0);i=f[a>>2]|0;n=f[i+12>>2]|0;if(n){zn(n);i=f[a>>2]|0}zn(i);f[a>>2]=0}}while(0);if(f[e+116>>2]|0)Yi(r,s,t);i=f[s>>2]|0;if(!i){r=1;c=l;return r|0}f[r+28>>2]=i;f[r+32>>2]=f[e+112>>2];f[s>>2]=0;r=1;c=l;return r|0}function Mi(e,i){e=e|0;i=i|0;qn(f[e>>2]|0,i);t[e+124>>0]=0;f[e+128>>2]=f[i+8248>>2]&1;return}function Ei(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0;y=c;c=c+80|0;g=y+64|0;m=y+56|0;b=y+48|0;_=y+40|0;w=y+32|0;k=y+24|0;if(!((e|0)!=0&(i|0)!=0&(r|0)!=0)){i=0;c=y;return i|0}v=r+16|0;if(((f[v>>2]|0)+-1|0)>>>0>16383){Ht(t,1,16352,y)|0;i=0;c=y;return i|0}if(!(Gn(f[e>>2]|0,i,r,t)|0)){i=0;c=y;return i|0}f[e+56>>2]=1785737760;f[e+60>>2]=0;f[e+64>>2]=1;a=Nn(4)|0;s=e+68|0;f[s>>2]=a;if(!a){f[s>>2]=0;Ht(t,1,16421,y+8|0)|0;i=0;c=y;return i|0}f[a>>2]=1785737760;u=f[v>>2]|0;f[e+20>>2]=u;u=Nn(u*12|0)|0;a=e+72|0;f[a>>2]=u;if(!u){f[a>>2]=0;Ht(t,1,16421,y+16|0)|0;i=0;c=y;return i|0}f[e+16>>2]=(f[r+12>>2]|0)-(f[r+4>>2]|0);f[e+12>>2]=(f[r+8>>2]|0)-(f[r>>2]|0);p=r+24|0;h=f[p>>2]|0;l=f[h+24>>2]|0;o=f[h+32>>2]|0;a=e+24|0;f[a>>2]=l+-1+(o<<7);d=f[v>>2]|0;if(d>>>0>1){s=1;do{if((l|0)!=(f[h+(s*52|0)+24>>2]|0))f[a>>2]=255;s=s+1|0}while(s>>>0<d>>>0)}f[e+28>>2]=7;f[e+32>>2]=0;f[e+36>>2]=0;s=(d|0)==0;if(!s?(f[u+8>>2]=l+-1+(o<<7),d>>>0>1):0){a=1;do{f[u+(a*12|0)+8>>2]=(f[h+(a*52|0)+24>>2]|0)+-1+(f[h+(a*52|0)+32>>2]<<7);a=a+1|0}while(a>>>0<d>>>0)}a=e+40|0;e:do{if(!(f[r+32>>2]|0)){f[a>>2]=1;switch(f[r+20>>2]|0){case 1:{f[e+48>>2]=16;break e}case 2:{f[e+48>>2]=17;break e}case 3:{f[e+48>>2]=18;break e}default:break e}}else{f[a>>2]=2;f[e+48>>2]=0}}while(0);e:do{if(!s){s=0;a=0;l=0;do{r=(n[h+(l*52|0)+48>>1]|0)==0;a=(r&1^1)+a|0;s=r?s:l;l=l+1|0}while(l>>>0<d>>>0);l=s;if((a|0)!=1){if(a>>>0<=1)break;Ht(t,2,16717,b)|0;break}switch(f[e+48>>2]|0){case 18:case 16:{s=3;break}case 17:{s=1;break}default:{Ht(t,2,16467,k)|0;break e}}if(d>>>0<(s+1|0)>>>0){Ht(t,2,16541,w)|0;break}if(l>>>0<s>>>0){Ht(t,2,16634,_)|0;break}_=Nn(8)|0;a=e+116|0;f[a>>2]=_;if(!_){Ht(t,1,16782,m)|0;i=0;c=y;return i|0}m=Nn((f[v>>2]|0)*6|0)|0;r=f[a>>2]|0;f[r>>2]=m;if(!m){Ht(t,1,16782,g)|0;i=0;c=y;return i|0}u=f[v>>2]|0;n[r+4>>1]=u;o=f[r>>2]|0;a=0;do{n[o+(a*6|0)>>1]=a;n[o+(a*6|0)+2>>1]=0;g=a;a=a+1|0;n[o+(g*6|0)+4>>1]=a}while((a|0)!=(s|0));if(s>>>0<u>>>0){l=f[p>>2]|0;do{g=(n[l+(s*52|0)+48>>1]|0)==0;n[o+(s*6|0)>>1]=s;a=o+(s*6|0)+2|0;if(g){n[a>>1]=-1;n[o+(s*6|0)+4>>1]=-1}else{n[a>>1]=1;n[(f[r>>2]|0)+(s*6|0)+4>>1]=0}s=s+1|0}while(s>>>0<u>>>0)}}}while(0);f[e+52>>2]=0;f[e+44>>2]=0;f[e+96>>2]=f[i+18692>>2];i=1;c=y;return i|0}function Ai(e,i,r){e=e|0;i=i|0;r=r|0;return cf(f[e>>2]|0,i,r)|0}function Si(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0;t=e+8|0;if(!(oa(f[t>>2]|0,52,r)|0)){r=0;return r|0}a=f[t>>2]|0;s=ua(a)|0;t=ca(a)|0;if(s){l=0;n=1;while(1){if(!n)n=0;else n=(po[f[t>>2]&63](e,i,r)|0)!=0;l=l+1|0;if((l|0)==(s|0))break;else{t=t+4|0;n=n&1}}ha(a);if(!n){r=0;return r|0}}else ha(a);r=Wn(f[e>>2]|0,i,r)|0;return r|0}function Ti(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0;t=e+8|0;if(!(oa(f[t>>2]|0,53,r)|0)){r=0;return r|0}if(!(hf(f[e>>2]|0,i,r)|0)){r=0;return r|0}l=f[t>>2]|0;a=ua(l)|0;t=ca(l)|0;if(!a)t=1;else{s=0;n=t;t=1;while(1){if(!t)t=0;else t=(po[f[n>>2]&63](e,i,r)|0)!=0;t=t&1;s=s+1|0;if((s|0)==(a|0))break;else n=n+4|0}}ha(l);r=t;return r|0}function Ci(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0;n=e+4|0;if(!(oa(f[n>>2]|0,54,t)|0)){i=0;return i|0}s=f[n>>2]|0;l=ua(s)|0;n=ca(s)|0;if(l){o=0;a=1;while(1){if(!a)a=0;else a=(po[f[n>>2]&63](e,i,t)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{n=n+4|0;a=a&1}}ha(s);if(!a){i=0;return i|0}}else ha(s);n=e+8|0;if(!(oa(f[n>>2]|0,55,t)|0)){i=0;return i|0}if(!(oa(f[n>>2]|0,56,t)|0)){i=0;return i|0}if(!(oa(f[n>>2]|0,57,t)|0)){i=0;return i|0}if((f[e+96>>2]|0)!=0?(oa(f[n>>2]|0,58,t)|0)==0:0){i=0;return i|0}if(!(oa(f[n>>2]|0,59,t)|0)){i=0;return i|0}s=f[n>>2]|0;l=ua(s)|0;n=ca(s)|0;if(l){o=0;a=1;while(1){if(!a)a=0;else a=(po[f[n>>2]&63](e,i,t)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{n=n+4|0;a=a&1}}ha(s);if(!a){i=0;return i|0}}else ha(s);i=df(f[e>>2]|0,i,r,t)|0;return i|0}function Ri(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0;u=i+8|0;if(!(oa(f[u>>2]|0,52,t)|0)){e=0;return e|0}s=f[i+4>>2]|0;l=ua(s)|0;n=ca(s)|0;if(l){o=0;a=1;while(1){if(!a)a=0;else a=(po[f[n>>2]&63](i,e,t)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{n=n+4|0;a=a&1}}ha(s);if(!a){e=0;return e|0}}else ha(s);s=f[u>>2]|0;l=ua(s)|0;n=ca(s)|0;if(l){o=0;a=1;while(1){if(!a)a=0;else a=(po[f[n>>2]&63](i,e,t)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{n=n+4|0;a=a&1}}ha(s);if(!a){e=0;return e|0}}else ha(s);e=Zn(e,f[i>>2]|0,r,t)|0;return e|0}function Li(e,i,r,t,n,a,s,l,o,u,c){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;return Qn(f[e>>2]|0,i,r,t,n,a,s,l,o,u,c)|0}function xi(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;return bf(f[e>>2]|0,i,r,t,n,a)|0}function Pi(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;return $n(f[e>>2]|0,i,r,t,n,a)|0}function Oi(e){e=e|0;var i=0,r=0,t=0;if(!e)return;Vn(f[e>>2]|0);f[e>>2]=0;i=e+72|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0}i=e+68|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0}i=e+108|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0}t=e+116|0;i=f[t>>2]|0;if(i){r=f[i>>2]|0;if(r){zn(r);i=f[t>>2]|0;f[i>>2]=0}zn(i);f[t>>2]=0}t=e+120|0;i=f[t>>2]|0;if(i){r=f[i+12>>2]|0;if(r){zn(r);i=f[t>>2]|0;f[i+12>>2]=0}r=f[i+4>>2]|0;if(r){zn(r);i=f[t>>2]|0;f[i+4>>2]=0}r=f[i+8>>2]|0;if(r){zn(r);i=f[t>>2]|0;f[i+8>>2]=0}r=f[i>>2]|0;if(r){zn(r);i=f[t>>2]|0;f[i>>2]=0}zn(i);f[t>>2]=0}i=e+4|0;r=f[i>>2]|0;if(r){la(r);f[i>>2]=0}i=e+8|0;r=f[i>>2]|0;if(r){la(r);f[i>>2]=0}zn(e);return}function Bi(e,i,r,t,n,a,s){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;return ef(f[e>>2]|0,i,r,t,n,a,s)|0}function Ii(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0;l=c;c=c+16|0;if(!r){e=0;c=l;return e|0}Ht(t,2,16826,l)|0;if(!(of(f[e>>2]|0,i,r,t,n)|0)){Ht(t,1,16303,l+8|0)|0;e=0;c=l;return e|0}s=e+108|0;if(!(Hi(r,s,t)|0)){e=0;c=l;return e|0}n=f[e+48>>2]|0;e:do{switch(n|0){case 16:{f[r+20>>2]=1;break}case 17:{f[r+20>>2]=2;break}case 18:{f[r+20>>2]=3;break}case 24:{f[r+20>>2]=4;break}default:{i=r+20|0;if((n|0)==12){f[i>>2]=5;break e}else{f[i>>2]=-1;break e}}}}while(0);a=e+120|0;i=f[a>>2]|0;do{if(i){if(f[i+12>>2]|0){zi(r,s);break}zn(f[i+4>>2]|0);zn(f[(f[a>>2]|0)+8>>2]|0);zn(f[f[a>>2]>>2]|0);i=f[a>>2]|0;n=f[i+12>>2]|0;if(n){zn(n);i=f[a>>2]|0}zn(i);f[a>>2]=0}}while(0);if(f[e+116>>2]|0)Yi(r,s,t);i=f[s>>2]|0;if(!i){e=1;c=l;return e|0}f[r+28>>2]=i;f[r+32>>2]=f[e+112>>2];f[s>>2]=0;e=1;c=l;return e|0}function Di(e){e=e|0;var i=0;i=Fn(1,136)|0;if(!i)return i|0;if(!e){e=Xn()|0;f[i>>2]=e}else{e=rf()|0;f[i>>2]=e}if(!e){Oi(i);i=0;return i|0}e=i+108|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;t[e+16>>0]=0;e=sa()|0;f[i+4>>2]=e;if(!e){Oi(i);i=0;return i|0}e=sa()|0;f[i+8>>2]=e;if(e)return i|0;Oi(i);i=0;return i|0}function Ni(e,i,r){e=e|0;i=i|0;r=r|0;tf(f[e>>2]|0,i,r);return}function Fi(e){e=e|0;return sf(f[e>>2]|0)|0}function Ui(e){e=e|0;return af(f[e>>2]|0)|0}function ji(e,i,r){e=e|0;i=i|0;r=r|0;return uf(f[e>>2]|0,i,r)|0}function Hi(e,i,r){e=e|0;i=i|0;r=r|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0;T=c;c=c+80|0;S=T+72|0;A=T+64|0;E=T+56|0;M=T+48|0;y=T+40|0;g=T+32|0;p=T+24|0;m=T+16|0;b=T+8|0;d=T;l=f[i+8>>2]|0;e:do{if(l){_=f[l>>2]|0;w=n[l+4>>1]|0;l=f[e+16>>2]|0;k=f[i+12>>2]|0;if((k|0)!=0?(f[k+12>>2]|0)!=0:0)i=a[k+18>>0]|0;else i=l;h=w<<16>>16==0;i:do{if(!h){u=0;r:while(1){o=u&65535;l=s[_+(o*6|0)>>1]|0;if(l>>>0>=i>>>0){o=15;break}l=n[_+(o*6|0)+4>>1]|0;switch(l<<16>>16){case 0:case-1:break;default:{l=(l&65535)+-1|0;if(l>>>0>=i>>>0){o=18;break r}}}u=u+1<<16>>16;if((u&65535)>=(w&65535))break i}if((o|0)==15){f[d>>2]=l;f[d+4>>2]=i;Ht(r,1,19343,d)|0;r=0;c=T;return r|0}else if((o|0)==18){f[b>>2]=l;f[b+4>>2]=i;Ht(r,1,19343,b)|0;r=0;c=T;return r|0}}}while(0);if(!i)l=k;else{i:do{if(!h)while(1){i=i+-1|0;l=0;do{if((s[_+((l&65535)*6|0)>>1]|0)==(i|0))break;l=l+1<<16>>16}while((l&65535)<(w&65535));if(l<<16>>16==w<<16>>16)break i;if(!i){l=k;break e}}}while(0);Ht(r,1,19380,m)|0;r=0;c=T;return r|0}}else l=f[i+12>>2]|0}while(0);if(!l){r=1;c=T;return r|0}v=f[l+12>>2]|0;if(!v){r=1;c=T;return r|0}k=t[l+18>>0]|0;m=k&255;_=k<<24>>24==0;if(_)l=1;else{u=e+16|0;i=0;h=0;l=1;do{i=s[v+(i<<2)>>1]|0;o=f[u>>2]|0;if(i>>>0>=o>>>0){f[p>>2]=i;f[p+4>>2]=o;Ht(r,1,19343,p)|0;l=0}h=h+1<<16>>16;i=h&65535}while(i>>>0<m>>>0)}w=Fn(m,4)|0;if(!w){Ht(r,1,19413,g)|0;r=0;c=T;return r|0}if(!_){d=0;b=0;do{o=t[v+(d<<2)+3>>0]|0;u=o&255;do{if((o&255)<(k&255)){h=w+(u<<2)|0;i=t[v+(d<<2)+2>>0]|0;if((f[h>>2]|0)!=0&i<<24>>24==1){f[M>>2]=u;Ht(r,1,19486,M)|0;l=0;break}if(i<<24>>24!=0|o<<24>>24==0){f[h>>2]=1;break}else{f[E>>2]=d;f[E+4>>2]=u;Ht(r,1,19517,E)|0;l=0;break}}else{f[y>>2]=u;Ht(r,1,19430,y)|0;l=0}}while(0);b=b+1<<16>>16;d=b&65535}while(d>>>0<m>>>0);if(!_){i=0;o=0;do{if((f[w+(i<<2)>>2]|0)==0?(t[v+(i<<2)+2>>0]|0)!=0:0){f[A>>2]=i;Ht(r,1,19553,A)|0;l=0}o=o+1<<16>>16;i=o&65535}while(i>>>0<m>>>0)}}if(!l){zn(w);r=0;c=T;return r|0}e:do{if(!((f[e+16>>2]|0)!=1|_)){l=0;i=0;while(1){i=i+1<<16>>16;if(!(f[w+(l<<2)>>2]|0))break;l=i&65535;if(l>>>0>=m>>>0)break e}f[S>>2]=l;Ht(r,2,19591,S)|0;if(!_){l=0;i=0;do{t[v+(l<<2)+2>>0]=1;t[v+(l<<2)+3>>0]=i;i=i+1<<16>>16;l=i&65535}while(l>>>0<m>>>0)}}}while(0);zn(w);r=1;c=T;return r|0}function zi(e,i){e=e|0;i=i|0;var r=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0;y=i+12|0;i=f[y>>2]|0;h=f[i+8>>2]|0;b=f[i+4>>2]|0;w=f[i>>2]|0;_=f[i+12>>2]|0;i=t[i+18>>0]|0;m=e+24|0;v=f[m>>2]|0;p=i&255;g=Nn(p*52|0)|0;if(!g)return;d=i<<24>>24==0;if(!d){u=0;c=0;do{i=n[_+(u<<2)>>1]|0;if(!(t[_+(u<<2)+2>>0]|0)){i=i&65535;r=g+(u*52|0)|0;l=v+(i*52|0)|0;o=r+52|0;do{f[r>>2]=f[l>>2];r=r+4|0;l=l+4|0}while((r|0)<(o|0))}else{i=i&65535;r=g+((a[_+(u<<2)+3>>0]|0)*52|0)|0;l=v+(i*52|0)|0;o=r+52|0;do{f[r>>2]=f[l>>2];r=r+4|0;l=l+4|0}while((r|0)<(o|0))}o=Nn(ie(f[v+(i*52|0)+8>>2]<<2,f[v+(i*52|0)+12>>2]|0)|0)|0;f[g+(u*52|0)+44>>2]=o;if(!o){k=7;break}f[g+(u*52|0)+24>>2]=a[h+u>>0];f[g+(u*52|0)+32>>2]=a[b+u>>0];c=c+1<<16>>16;u=c&65535}while(u>>>0<p>>>0);if((k|0)==7){zn(g);return}h=(s[(f[y>>2]|0)+16>>1]|0)+-1|0;if(!d){i=0;c=0;do{o=f[v+((s[_+(i<<2)>>1]|0)*52|0)+44>>2]|0;l=a[_+(i<<2)+3>>0]|0;u=ie(f[g+(l*52|0)+12>>2]|0,f[g+(l*52|0)+8>>2]|0)|0;if(!(t[_+(i<<2)+2>>0]|0)){i=f[g+(i*52|0)+44>>2]|0;if(u){r=0;do{f[i+(r<<2)>>2]=f[o+(r<<2)>>2];r=r+1|0}while((r|0)!=(u|0))}}else{i=f[g+(l*52|0)+44>>2]|0;if(u){r=0;do{k=f[o+(r<<2)>>2]|0;f[i+(r<<2)>>2]=f[w+((ie((k|0)<0?0:(k|0)>(h|0)?h:k,p)|0)+l<<2)>>2];r=r+1|0}while((r|0)!=(u|0))}}c=c+1<<16>>16;i=c&65535}while(i>>>0<p>>>0)}}r=e+16|0;l=f[r>>2]|0;if(l){i=0;o=0;do{i=f[v+(i*52|0)+44>>2]|0;if(i)zn(i);o=o+1<<16>>16;i=o&65535}while(i>>>0<l>>>0)}zn(v);f[m>>2]=g;f[r>>2]=p;zn(f[(f[y>>2]|0)+4>>2]|0);zn(f[(f[y>>2]|0)+8>>2]|0);zn(f[f[y>>2]>>2]|0);i=f[y>>2]|0;r=f[i+12>>2]|0;if(r){zn(r);i=f[y>>2]|0}zn(i);f[y>>2]=0;return}function Yi(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0;E=c;c=c+80|0;y=E+8|0;g=E;p=E+16|0;M=i+8|0;t=f[M>>2]|0;i=f[t>>2]|0;v=n[t+4>>1]|0;if(v<<16>>16){m=e+16|0;b=e+24|0;w=1;_=0;while(1){k=n[i+(_*6|0)>>1]|0;d=k&65535;e=f[m>>2]|0;e:do{if(d>>>0<e>>>0){t=n[i+(_*6|0)+4>>1]|0;switch(t<<16>>16){case-1:case 0:{n[(f[b>>2]|0)+(d*52|0)+48>>1]=n[i+(_*6|0)+2>>1]|0;break e}default:{}}o=(t&65535)+65535|0;h=o&65535;o=o&65535;if(o>>>0>=e>>>0){f[y>>2]=o;f[y+4>>2]=e;Ht(r,2,19302,y)|0;break}u=i+(_*6|0)+2|0;if((d|0)!=(o|0)?(n[u>>1]|0)==0:0){t=f[b>>2]|0;e=t+(d*52|0)|0;a=p;s=e;l=a+52|0;do{f[a>>2]=f[s>>2];a=a+4|0;s=s+4|0}while((a|0)<(l|0));a=e;s=t+(o*52|0)|0;l=a+52|0;do{f[a>>2]=f[s>>2];a=a+4|0;s=s+4|0}while((a|0)<(l|0));a=(f[b>>2]|0)+(o*52|0)|0;s=p;l=a+52|0;do{f[a>>2]=f[s>>2];a=a+4|0;s=s+4|0}while((a|0)<(l|0));if((_+1&65535)<(v&65535)){a=w;do{t=i+(a*6|0)|0;e=n[t>>1]|0;if(e<<16>>16!=k<<16>>16){if(e<<16>>16==h<<16>>16)n[t>>1]=k}else n[t>>1]=h;a=a+1|0}while((a&65535)<<16>>16!=v<<16>>16)}}n[(f[b>>2]|0)+(d*52|0)+48>>1]=n[u>>1]|0}else{f[g>>2]=d;f[g+4>>2]=e;Ht(r,2,19262,g)|0}}while(0);_=_+1|0;if((_&65535)<<16>>16==v<<16>>16)break;else w=w+1|0}i=f[M>>2]|0;t=i;i=f[i>>2]|0}if(!i){y=t;zn(y);f[M>>2]=0;c=E;return}else{zn(i);y=f[M>>2]|0;zn(y);f[M>>2]=0;c=E;return}}function qi(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,P=0,O=0,B=0;B=c;c=c+192|0;E=B+152|0;M=B+144|0;y=B+136|0;g=B+128|0;p=B+120|0;R=B+88|0;m=B+80|0;w=B+64|0;k=B+48|0;P=B+40|0;A=B+32|0;L=B+24|0;v=B+16|0;_=B+8|0;d=B+176|0;b=B+168|0;C=B+156|0;t=Fn(1,1024)|0;if(!t){Ht(r,1,17098,B)|0;O=0;c=B;return O|0}h=d+4|0;S=C+4|0;T=e+100|0;u=1024;e:while(1){if((Ot(i,d,8,r)|0)!=8)break;while(1){ct(d,C,4);ct(h,S,4);switch(f[C>>2]|0){case 0:{n=Nt(i)|0;o=x;if((o|0)>0|(o|0)==0&n>>>0>4294967287){O=6;break e}f[C>>2]=n+8;l=8;break}case 1:{if((Ot(i,d,8,r)|0)!=8)break e;ct(d,b,4);if(f[b>>2]|0){O=10;break e}ct(h,C,4);l=16;break}default:l=8}a=f[S>>2]|0;if((a|0)==1785737827){O=13;break e}n=f[C>>2]|0;if(!n){O=17;break e}if(n>>>0<l>>>0){O=19;break e}if((a|0)==1783636e3){s=1084;a=l;O=22;break}if((a|0)==1718909296){s=1092;a=l;O=22;break}o=(a|0)==1785737832;i:do{if((a|0)!=1768449138)if((a|0)!=1668246642)if((a|0)!=1651532643)if((a|0)!=1885564018)if((a|0)!=1668112752){s=(a|0)==1667523942?1148:0;n=n-l|0;if((a|0)<1785737832)switch(a|0){case 1667523942:{O=30;break i}default:{}}else switch(a|0){case 1785737832:{O=30;break i}default:{}}a=f[T>>2]|0;if(!(a&1)){O=45;break e}if(!(a&2)){O=47;break e}f[T>>2]=a|2147483647;o=Ft(i,n,0,r)|0;if(!((o|0)==(n|0)&(x|0)==0)){O=50;break e}}else{s=1140;O=28}else{s=1132;O=28}else{s=1124;O=28}else{s=1116;O=28}else{s=1108;O=28}}while(0);if((O|0)==28){n=n-l|0;O=30}if((O|0)==30){O=0;if(o){s=1100;break}f[k>>2]=a>>>24;f[k+4>>2]=a>>>16&255;f[k+8>>2]=a>>>8&255;f[k+12>>2]=a&255;Ht(r,2,17282,k)|0;if(f[T>>2]&4)break;o=f[S>>2]|0;f[w>>2]=o>>>24;f[w+4>>2]=o>>>16&255;f[w+8>>2]=o>>>8&255;f[w+12>>2]=o&255;Ht(r,2,17333,w)|0;f[T>>2]=f[T>>2]|2147483647;o=Ft(i,n,0,r)|0;if(!((o|0)==(n|0)&(x|0)==0)){O=33;break e}}if((Ot(i,d,8,r)|0)!=8)break e}if((O|0)==22){O=0;n=n-a|0}o=Nt(i)|0;l=x;if(0>(l|0)|0==(l|0)&n>>>0>o>>>0){O=35;break}if(n>>>0>u>>>0){a=Hn(t,n)|0;if(!a){O=38;break}else{t=a;a=n}}else a=u;if((Ot(i,t,n,r)|0)!=(n|0)){O=40;break}if(!(Co[f[s+4>>2]&63](e,t,n,r)|0)){O=43;break}else u=a}switch(O|0){case 6:{Ht(r,1,17148,_)|0;break}case 10:{Ht(r,1,17148,v)|0;break}case 13:{n=f[T>>2]|0;if(!(n&4)){Ht(r,1,17190,L)|0;zn(t);O=0;c=B;return O|0}else{f[T>>2]=n|8;zn(t);O=1;c=B;return O|0}}case 17:{Ht(r,1,17218,A)|0;zn(t);O=0;c=B;return O|0}case 19:{f[P>>2]=n;f[P+4>>2]=a;Ht(r,1,17256,P)|0;zn(t);O=0;c=B;return O|0}case 33:{Ht(r,1,17399,m)|0;zn(t);O=0;c=B;return O|0}case 35:{L=f[C>>2]|0;P=f[S>>2]|0;O=Nt(i)|0;f[R>>2]=L;f[R+4>>2]=P>>>24;f[R+8>>2]=P>>>16&255;f[R+12>>2]=P>>>8&255;f[R+16>>2]=P&255;f[R+20>>2]=n;f[R+24>>2]=O;Ht(r,1,17449,R)|0;zn(t);O=0;c=B;return O|0}case 38:{zn(t);Ht(r,1,17525,p)|0;O=0;c=B;return O|0}case 40:{Ht(r,1,17567,g)|0;zn(t);O=0;c=B;return O|0}case 43:{zn(t);O=0;c=B;return O|0}case 45:{Ht(r,1,17616,y)|0;zn(t);O=0;c=B;return O|0}case 47:{Ht(r,1,17686,M)|0;zn(t);O=0;c=B;return O|0}case 50:{Ht(r,1,17399,E)|0;zn(t);O=0;c=B;return O|0}}zn(t);O=1;c=B;return O|0}function Xi(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0;s=c;c=c+32|0;a=s+24|0;t=Dt(i)|0;n=x;e=e+80|0;l=e;l=xl(t|0,n|0,f[l>>2]|0,f[l+4>>2]|0)|0;ut(a,l,4);ut(a+4|0,1785737827,4);if(!(Ut(i,f[e>>2]|0,f[e+4>>2]|0,r)|0)){Ht(r,1,17067,s)|0;l=0;c=s;return l|0}if((Bt(i,a,8,r)|0)!=8){Ht(r,1,17067,s+8|0)|0;l=0;c=s;return l|0}if(Ut(i,t,n,r)|0){l=1;c=s;return l|0}Ht(r,1,17067,s+16|0)|0;l=0;c=s;return l|0}function Vi(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0;r=((f[e>>2]|0)!=0?(f[e+104>>2]|f[e+100>>2]|0)==0:0)&(f[e+8>>2]|0)!=0&(f[e+4>>2]|0)!=0&(f[e+64>>2]|0)!=0&(f[e+16>>2]|0)!=0&(f[e+12>>2]|0)!=0&1;t=f[e+20>>2]|0;if(!t){a=r;e=e+40|0;e=f[e>>2]|0;e=e+-1|0;e=e>>>0<2;e=e&1;i=jt(i)|0;i=i&a;e=i&e;return e|0}n=f[e+72>>2]|0;a=0;do{r=(f[n+(a*12|0)+8>>2]&126)>>>0<38&r;a=a+1|0}while(a>>>0<t>>>0);e=e+40|0;e=f[e>>2]|0;e=e+-1|0;e=e>>>0<2;e=e&1;i=jt(i)|0;i=i&r;e=i&e;return e|0}function Gi(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;e=c;c=c+16|0;t=e;ut(t,12,4);ut(t+4|0,1783636e3,4);ut(t+8|0,218793738,4);r=(Bt(i,t,12,r)|0)==12&1;c=e;return r|0}function Ki(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0;u=c;c=c+16|0;o=u+8|0;n=e+64|0;s=(f[n>>2]<<2)+16|0;l=Fn(1,s)|0;if(!l){Ht(r,1,16987,u)|0;o=0;c=u;return o|0}ut(l,s,4);ut(l+4|0,1718909296,4);ut(l+8|0,f[e+56>>2]|0,4);ut(l+12|0,f[e+60>>2]|0,4);a=l+16|0;if(f[n>>2]|0){e=e+68|0;t=0;do{ut(a,f[(f[e>>2]|0)+(t<<2)>>2]|0,4);t=t+1|0}while(t>>>0<(f[n>>2]|0)>>>0)}e=(Bt(i,l,s,r)|0)==(s|0);if(!e)Ht(r,1,17026,o)|0;zn(l);o=e&1;c=u;return o|0}function Wi(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0;w=c;c=c+80|0;b=w+16|0;h=w+8|0;o=w;n=w+24|0;u=w+72|0;t=n;a=t+48|0;do{f[t>>2]=0;t=t+4|0}while((t|0)<(a|0));k=(f[e+24>>2]|0)==255;f[n>>2]=2;t=n+12|0;if(k){f[t>>2]=3;f[n+24>>2]=4;t=3}else{f[t>>2]=4;t=2}if(!(f[e+116>>2]|0))k=t;else{f[n+(t*12|0)>>2]=5;k=t+1|0}ut(u+4|0,1785737832,4);s=0;l=n;t=8;while(1){a=l+8|0;_=Ro[f[l>>2]&7](e,a)|0;f[l+4>>2]=_;if(!_){d=8;break}t=(f[a>>2]|0)+t|0;s=s+1|0;if((s|0)>=(k|0))break;else l=l+12|0}if((d|0)==8){Ht(r,1,16901,o)|0;a=0;while(1){t=f[n+4>>2]|0;if(t)zn(t);a=a+1|0;if((a|0)>=(k|0)){t=0;break}else n=n+12|0}c=w;return t|0}ut(u,t,4);e:do{if((Bt(i,u,8,r)|0)==8){t=0;a=n;while(1){_=a+8|0;d=Bt(i,f[a+4>>2]|0,f[_>>2]|0,r)|0;if((d|0)!=(f[_>>2]|0))break;t=t+1|0;if((t|0)>=(k|0)){t=1;break e}else a=a+12|0}Ht(r,1,16944,b)|0;t=0}else{Ht(r,1,16944,h)|0;t=0}}while(0);s=0;while(1){a=f[n+4>>2]|0;if(a)zn(a);s=s+1|0;if((s|0)>=(k|0))break;else n=n+12|0}c=w;return t|0}function Zi(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;t=Dt(i)|0;e=e+88|0;f[e>>2]=t;f[e+4>>2]=x;i=Ft(i,24,0,r)|0;return(i|0)==24&(x|0)==0&1|0}function Ji(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;t=Dt(i)|0;e=e+80|0;f[e>>2]=t;f[e+4>>2]=x;i=Ft(i,8,0,r)|0;return(i|0)==8&(x|0)==0&1|0}function Qi(e,i){e=e|0;i=i|0;var r=0;r=Fn(1,22)|0;if(!r){i=0;return i|0}ut(r,22,4);ut(r+4|0,1768449138,4);ut(r+8|0,f[e+16>>2]|0,4);ut(r+12|0,f[e+12>>2]|0,4);ut(r+16|0,f[e+20>>2]|0,2);ut(r+18|0,f[e+24>>2]|0,1);ut(r+19|0,f[e+28>>2]|0,1);ut(r+20|0,f[e+32>>2]|0,1);ut(r+21|0,f[e+36>>2]|0,1);f[i>>2]=22;i=r;return i|0}function $i(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0;n=e+20|0;a=(f[n>>2]|0)+8|0;s=Fn(1,a)|0;if(!s){i=0;return i|0}ut(s,a,4);ut(s+4|0,1651532643,4);if(f[n>>2]|0){e=e+72|0;r=0;t=s+8|0;while(1){ut(t,f[(f[e>>2]|0)+(r*12|0)+8>>2]|0,1);r=r+1|0;if(r>>>0>=(f[n>>2]|0)>>>0)break;else t=t+1|0}}f[i>>2]=a;i=s;return i|0}function er(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,s=0,l=0,o=0;r=e+40|0;switch(f[r>>2]|0){case 1:{o=15;break}case 2:{o=(f[e+112>>2]|0)+11|0;break}default:{i=0;return i|0}}l=Fn(1,o)|0;if(!l){i=0;return i|0}ut(l,o,4);ut(l+4|0,1668246642,4);ut(l+8|0,f[r>>2]|0,1);ut(l+9|0,f[e+52>>2]|0,1);ut(l+10|0,f[e+44>>2]|0,1);n=l+11|0;switch(f[r>>2]|0){case 1:{ut(n,f[e+48>>2]|0,4);break}case 2:{s=e+112|0;if(f[s>>2]|0){e=e+108|0;t=0;r=n;while(1){ut(r,a[(f[e>>2]|0)+t>>0]|0,1);t=t+1|0;if(t>>>0>=(f[s>>2]|0)>>>0)break;else r=r+1|0}}break}default:{}}f[i>>2]=o;i=l;return i|0}function ir(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,l=0,o=0,u=0;l=e+116|0;o=((s[(f[l>>2]|0)+4>>1]|0)*6|0)+10|0;u=Nn(o)|0;if(!u){i=0;return i|0}ut(u,o,4);ut(u+4|0,1667523942,4);ut(u+8|0,s[(f[l>>2]|0)+4>>1]|0,2);e=f[l>>2]|0;if(n[e+4>>1]|0){t=0;r=0;a=u+10|0;while(1){ut(a,s[(f[e>>2]|0)+(t*6|0)>>1]|0,2);ut(a+2|0,s[(f[f[l>>2]>>2]|0)+(t*6|0)+2>>1]|0,2);ut(a+4|0,s[(f[f[l>>2]>>2]|0)+(t*6|0)+4>>1]|0,2);r=r+1<<16>>16;e=f[l>>2]|0;if((r&65535)>=(s[e+4>>1]|0))break;else{t=r&65535;a=a+6|0}}}f[i>>2]=o;i=u;return i|0}function rr(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0;a=c;c=c+32|0;n=a+16|0;if((r|0)!=14){Ht(t,1,18507,a)|0;n=0;c=a;return n|0}ct(i,e+16|0,4);ct(i+4|0,e+12|0,4);r=e+20|0;ct(i+8|0,r,2);r=Fn(f[r>>2]|0,12)|0;f[e+72>>2]=r;if(!r){Ht(t,1,18540,a+8|0)|0;n=0;c=a;return n|0}ct(i+10|0,e+24|0,1);r=e+28|0;ct(i+11|0,r,1);r=f[r>>2]|0;if((r|0)!=7){f[n>>2]=r;Ht(t,4,18589,n)|0}ct(i+12|0,e+32|0,1);ct(i+13|0,e+36|0,1);n=1;c=a;return n|0}function tr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0;M=c;c=c+80|0;l=M+40|0;v=M+32|0;u=M+24|0;o=M+16|0;p=M+72|0;m=M+68|0;k=M+64|0;w=M+60|0;d=M+56|0;_=M+52|0;b=M+48|0;h=M+44|0;if(r>>>0<3){Ht(n,1,18180,M)|0;y=0;c=M;return y|0}g=e+108|0;y=e+124|0;if(t[y>>0]|0){Ht(n,4,18212,M+8|0)|0;y=1;c=M;return y|0}s=e+40|0;ct(i,s,1);ct(i+1|0,e+52|0,1);ct(i+2|0,e+44|0,1);a=i+3|0;s=f[s>>2]|0;switch(s|0){case 1:{if(r>>>0<7){f[o>>2]=r;Ht(n,1,18321,o)|0;y=0;c=M;return y|0}s=e+48|0;if(r>>>0>7?(f[s>>2]|0)!=14:0){f[u>>2]=r;Ht(n,2,18321,u)|0}ct(a,s,4);if((f[s>>2]|0)==14){a=Nn(36)|0;f[a>>2]=14;f[b>>2]=0;f[d>>2]=0;f[k>>2]=0;f[_>>2]=0;f[w>>2]=0;f[m>>2]=0;f[h>>2]=4470064;s=a+4|0;f[s>>2]=1145390592;switch(r|0){case 35:{ct(i+7|0,m,4);ct(i+11|0,k,4);ct(i+15|0,w,4);ct(i+19|0,d,4);ct(i+23|0,_,4);ct(i+27|0,b,4);ct(i+31|0,h,4);f[s>>2]=0;break}case 7:break;default:{f[v>>2]=r;Ht(n,2,18357,v)|0}}f[a+8>>2]=f[m>>2];f[a+16>>2]=f[w>>2];f[a+24>>2]=f[_>>2];f[a+12>>2]=f[k>>2];f[a+20>>2]=f[d>>2];f[a+28>>2]=f[b>>2];f[a+32>>2]=f[h>>2];f[g>>2]=a;f[e+112>>2]=0}t[y>>0]=1;y=1;c=M;return y|0}case 2:{l=r+-3|0;s=e+112|0;f[s>>2]=l;e=Fn(1,l)|0;f[g>>2]=e;if(!e){f[s>>2]=0;y=0;c=M;return y|0}if((r|0)>3){s=0;while(1){ct(a,p,1);t[(f[g>>2]|0)+s>>0]=f[p>>2];s=s+1|0;if((s|0)==(l|0))break;else a=a+1|0}}t[y>>0]=1;y=1;c=M;return y|0}default:{if(s>>>0<=2){y=1;c=M;return y|0}f[l>>2]=s;Ht(n,4,18401,l)|0;y=1;c=M;return y|0}}return 0}function nr(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0;l=c;c=c+16|0;a=l;n=f[e+24>>2]|0;if((n|0)!=255){f[a>>2]=n;Ht(t,2,18034,a)|0}s=e+20|0;if((f[s>>2]|0)!=(r|0)){Ht(t,1,18148,l+8|0)|0;s=0;c=l;return s|0}if(!r){s=1;c=l;return s|0}a=e+72|0;n=0;while(1){ct(i,(f[a>>2]|0)+(n*12|0)+8|0,1);n=n+1|0;if(n>>>0>=(f[s>>2]|0)>>>0){i=1;break}else i=i+1|0}c=l;return i|0}function fr(e,i,r,s){e=e|0;i=i|0;r=r|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0;_=c;c=c+16|0;l=_;w=_+12|0;o=e+120|0;if(r>>>0<3|(f[o>>2]|0)!=0){r=0;c=_;return r|0}ct(i,w,2);u=f[w>>2]|0;k=u&65535;if((k+-1|0)>>>0>1023){f[l>>2]=k;Ht(s,1,17951,l)|0;r=0;c=_;return r|0}ct(i+2|0,w,1);b=f[w>>2]&65535;if(!b){Ht(s,1,17989,_+8|0)|0;r=0;c=_;return r|0}if((b+3|0)>>>0>r>>>0){r=0;c=_;return r|0}l=Nn(ie(k<<2,b)|0)|0;if(!l){r=0;c=_;return r|0}d=Nn(b)|0;if(!d){zn(l);r=0;c=_;return r|0}h=Nn(b)|0;if(!h){zn(l);zn(d);r=0;c=_;return r|0}e=Nn(20)|0;if(!e){zn(l);zn(d);zn(h);r=0;c=_;return r|0}f[e+4>>2]=h;f[e+8>>2]=d;f[e>>2]=l;n[e+16>>1]=u;t[e+18>>0]=f[w>>2];f[e+12>>2]=0;f[o>>2]=e;e=i+3|0;s=0;o=0;do{ct(e,w,1);e=e+1|0;t[d+s>>0]=(f[w>>2]&127)+1;t[h+s>>0]=(f[w>>2]|0)>>>7&1;o=o+1<<16>>16;s=o&65535}while(s>>>0<b>>>0);if(!k){r=1;c=_;return r|0}s=0;e:while(1){u=0;o=l;h=0;while(1){l=((a[d+u>>0]|0)+7|0)>>>3;l=l>>>0>4?4:l;if((e-i+l|0)>(r|0)){e=0;l=22;break e}ct(e,w,l);e=e+l|0;f[o>>2]=f[w>>2];l=o+4|0;h=h+1<<16>>16;u=h&65535;if(u>>>0>=b>>>0)break;else o=l}s=s+1<<16>>16;if((s&65535)>>>0>=k>>>0){e=1;l=22;break}}if((l|0)==22){c=_;return e|0}return 0}function ar(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0;u=c;c=c+32|0;o=u+20|0;l=e+120|0;e=f[l>>2]|0;if(!e){Ht(a,1,17841,u)|0;o=0;c=u;return o|0}if(f[e+12>>2]|0){Ht(a,1,17887,u+8|0)|0;o=0;c=u;return o|0}s=t[e+18>>0]|0;e=(s&255)<<2;if(e>>>0>r>>>0){Ht(a,1,17918,u+16|0)|0;o=0;c=u;return o|0}a=Nn(e)|0;if(!a){o=0;c=u;return o|0}if(s<<24>>24){e=i;r=0;while(1){ct(e,o,2);n[a+(r<<2)>>1]=f[o>>2];ct(e+2|0,o,1);t[a+(r<<2)+2>>0]=f[o>>2];ct(e+3|0,o,1);t[a+(r<<2)+3>>0]=f[o>>2];r=r+1|0;if((r&255)<<24>>24==s<<24>>24)break;else e=e+4|0}}f[(f[l>>2]|0)+12>>2]=a;o=1;c=u;return o|0}function sr(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var a=0,l=0,o=0,u=0;u=c;c=c+32|0;o=u+20|0;l=e+116|0;if(f[l>>2]|0){o=0;c=u;return o|0}if(r>>>0<2){Ht(t,1,17747,u)|0;o=0;c=u;return o|0}ct(i,o,2);e=f[o>>2]|0;a=e&65535;if(!a){Ht(t,1,17780,u+8|0)|0;o=0;c=u;return o|0}if(((a*6|0)+2|0)>>>0>r>>>0){Ht(t,1,17747,u+16|0)|0;o=0;c=u;return o|0}r=Nn(e*6|0)|0;if(!r){o=0;c=u;return o|0}e=Nn(8)|0;f[l>>2]=e;if(!e){zn(r);o=0;c=u;return o|0}f[e>>2]=r;t=f[o>>2]&65535;n[e+4>>1]=t;if(!(t<<16>>16)){o=1;c=u;return o|0}else{a=0;e=i}do{i=a&65535;ct(e+2|0,o,2);n[r+(i*6|0)>>1]=f[o>>2];ct(e+4|0,o,2);e=e+6|0;n[r+(i*6|0)+2>>1]=f[o>>2];ct(e,o,2);n[r+(i*6|0)+4>>1]=f[o>>2];a=a+1<<16>>16}while((a&65535)<(s[(f[l>>2]|0)+4>>1]|0));e=1;c=u;return e|0}function lr(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0;a=c;c=c+32|0;n=a+20|0;e=e+100|0;if(f[e>>2]|0){Ht(t,1,19130,a)|0;t=0;c=a;return t|0}if((r|0)!=4){Ht(t,1,19184,a+8|0)|0;t=0;c=a;return t|0}ct(i,n,4);if((f[n>>2]|0)==218793738){f[e>>2]=f[e>>2]|1;t=1;c=a;return t|0}else{Ht(t,1,19218,a+16|0)|0;t=0;c=a;return t|0}return 0}function or(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0;l=c;c=c+32|0;a=l+24|0;s=e+100|0;if((f[s>>2]|0)!=1){Ht(t,1,19011,l)|0;s=0;c=l;return s|0}if(r>>>0<8){Ht(t,1,19061,l+8|0)|0;s=0;c=l;return s|0}ct(i,e+56|0,4);ct(i+4|0,e+60|0,4);i=i+8|0;r=r+-8|0;if(r&3){Ht(t,1,19061,l+16|0)|0;s=0;c=l;return s|0}r=r>>>2;n=e+64|0;f[n>>2]=r;if(r){r=Fn(r,4)|0;f[e+68>>2]=r;if(!r){Ht(t,1,19097,a)|0;s=0;c=l;return s|0}if(f[n>>2]|0){e=e+68|0;r=0;while(1){ct(i,(f[e>>2]|0)+(r<<2)|0,4);r=r+1|0;if(r>>>0>=(f[n>>2]|0)>>>0)break;else i=i+4|0}}}f[s>>2]=f[s>>2]|2;s=1;c=l;return s|0}function ur(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0;S=c;c=c+96|0;E=S+72|0;m=S+64|0;_=S+56|0;w=S+48|0;y=S+40|0;g=S+32|0;p=S+24|0;v=S+16|0;k=S+8|0;d=S+80|0;b=S+76|0;M=e+100|0;if(!(f[M>>2]&2)){Ht(t,1,18679,S)|0;A=0;c=S;return A|0}h=e+104|0;f[h>>2]=0;do{if(r){o=i;i=0;e:while(1){if(r>>>0<8){A=6;break}ct(o,d,4);n=f[d>>2]|0;ct(o+4|0,d,4);l=f[d>>2]|0;switch(n|0){case 0:{A=14;break e}case 1:{if(r>>>0<16){A=9;break e}ct(o+8|0,b,4);if(f[b>>2]|0){A=11;break e}ct(o+12|0,d,4);n=f[d>>2]|0;if(!n){A=13;break e}else a=16;break}default:a=8}if(n>>>0<a>>>0){A=16;break}if(r>>>0<n>>>0){A=19;break}s=(l|0)==1768449138;if(!s)if((l|0)!=1668246642)if((l|0)!=1651532643)if((l|0)!=1885564018)if((l|0)!=1668112752)if((l|0)==1667523942){u=1148;A=26}else f[h>>2]=f[h>>2]|2147483647;else{u=1140;A=26}else{u=1132;A=26}else{u=1124;A=26}else{u=1116;A=26}else{u=1108;A=26}if((A|0)==26?(A=0,(Co[f[u+4>>2]&63](e,o+a|0,n-a|0,t)|0)==0):0){i=0;A=32;break}i=s?1:i;if((r|0)==(n|0)){A=29;break}else{o=o+n|0;r=r-n|0}}if((A|0)==6)Ht(t,1,18724,k)|0;else if((A|0)==9)Ht(t,1,18764,v)|0;else if((A|0)==11)Ht(t,1,17148,p)|0;else if((A|0)==13)Ht(t,1,17218,g)|0;else if((A|0)==14)Ht(t,1,17218,y)|0;else if((A|0)==16)Ht(t,1,18808,w)|0;else if((A|0)==19){Ht(t,1,18880,m)|0;A=0;c=S;return A|0}else if((A|0)==29){if(!i)break;f[M>>2]=f[M>>2]|4;A=1;c=S;return A|0}else if((A|0)==32){c=S;return i|0}Ht(t,1,18837,_)|0;A=0;c=S;return A|0}}while(0);Ht(t,1,18952,E)|0;A=0;c=S;return A|0}function cr(){return 8}function hr(){return 32}function dr(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0;if(!t)return;else n=0;do{c=e+(n<<2)|0;l=f[c>>2]|0;o=i+(n<<2)|0;s=f[o>>2]|0;a=r+(n<<2)|0;u=f[a>>2]|0;f[c>>2]=(s<<1)+l+u>>2;f[o>>2]=u-s;f[a>>2]=l-s;n=n+1|0}while((n|0)!=(t|0));return}function br(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0;if(!t)return;else n=0;do{u=e+(n<<2)|0;o=i+(n<<2)|0;s=f[o>>2]|0;a=r+(n<<2)|0;c=f[a>>2]|0;l=(f[u>>2]|0)-(c+s>>2)|0;f[u>>2]=l+c;f[o>>2]=l;f[a>>2]=l+s;n=n+1|0}while((n|0)!=(t|0));return}function kr(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0;if(!t)return;else n=0;do{b=e+(n<<2)|0;p=f[b>>2]|0;u=i+(n<<2)|0;v=f[u>>2]|0;a=r+(n<<2)|0;m=f[a>>2]|0;o=((p|0)<0)<<31>>31;w=zl(p|0,o|0,2449,0)|0;w=Il(w|0,x|0,4096,0)|0;w=Dl(w|0,x|0,13)|0;l=((v|0)<0)<<31>>31;_=zl(v|0,l|0,4809,0)|0;_=Il(_|0,x|0,4096,0)|0;_=Dl(_|0,x|0,13)|0;s=((m|0)<0)<<31>>31;k=zl(m|0,s|0,934,0)|0;k=Il(k|0,x|0,4096,0)|0;k=Dl(k|0,x|0,13)|0;c=zl(p|0,o|0,1382,0)|0;c=Il(c|0,x|0,4096,0)|0;c=Dl(c|0,x|0,13)|0;h=zl(v|0,l|0,2714,0)|0;h=Il(h|0,x|0,4096,0)|0;h=Dl(h|0,x|0,13)|0;d=Bl(m|0,s|0,12)|0;d=Il(d|0,x|0,4096,0)|0;d=Dl(d|0,x|0,13)|0;o=Bl(p|0,o|0,12)|0;o=Il(o|0,x|0,4096,0)|0;o=Dl(o|0,x|0,13)|0;l=zl(v|0,l|0,3430,0)|0;l=Il(l|0,x|0,4096,0)|0;l=Dl(l|0,x|0,13)|0;s=zl(m|0,s|0,666,0)|0;s=Il(s|0,x|0,4096,0)|0;s=Dl(s|0,x|0,13)|0;f[b>>2]=_+w+k;f[u>>2]=d-(h+c);f[a>>2]=o-l-s;n=n+1|0}while((n|0)!=(t|0));return}function wr(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,f=0,a=0.0,s=0.0,l=0,u=0.0,c=0;if(!t)return;else n=0;do{c=e+(n<<2)|0;s=+o[c>>2];l=i+(n<<2)|0;a=+o[l>>2];f=r+(n<<2)|0;u=+o[f>>2];o[c>>2]=s+u*1.4019999504089355;o[l>>2]=s-a*.3441300094127655-u*.714139997959137;o[f>>2]=s+a*1.7719999551773071;n=n+1|0}while((n|0)!=(t|0));return}function _r(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0;a=ie(t,t)|0;b=Nn(a+t<<2)|0;if(!b){t=0;return t|0}if(a){s=0;n=e;while(1){f[b+(s+t<<2)>>2]=~~(+o[n>>2]*8192.0);s=s+1|0;if((s|0)==(a|0))break;else n=n+4|0}}if(i){h=(t|0)==0;d=0;do{if(!h){n=0;do{f[b+(n<<2)>>2]=f[f[r+(n<<2)>>2]>>2];n=n+1|0}while((n|0)!=(t|0));if(!h){e=0;u=b;do{u=u+(t<<2)|0;a=r+(e<<2)|0;n=f[a>>2]|0;f[n>>2]=0;s=0;l=0;c=u;while(1){k=f[c>>2]|0;w=f[b+(l<<2)>>2]|0;k=zl(w|0,((w|0)<0)<<31>>31|0,k|0,((k|0)<0)<<31>>31|0)|0;k=Il(k|0,x|0,4096,0)|0;k=Dl(k|0,x|0,13)|0;s=k+s|0;f[n>>2]=s;l=l+1|0;if((l|0)==(t|0))break;else c=c+4|0}f[a>>2]=n+4;e=e+1|0}while((e|0)!=(t|0))}}d=d+1|0}while((d|0)!=(i|0))}zn(b);w=1;return w|0}function mr(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0.0,s=0,l=0,u=0,c=0,h=0,d=0,b=0;h=Nn(t<<3)|0;if(!h){t=0;return t|0}if(i){d=(t|0)==0;b=0;do{if(!d){n=0;do{f[h+(n<<2)>>2]=f[f[r+(n<<2)>>2]>>2];n=n+1|0}while((n|0)!=(t|0));if(!d){u=0;c=e;while(1){n=h+(u+t<<2)|0;o[n>>2]=0.0;a=0.0;s=0;l=c;while(1){a=a+ +o[l>>2]*+o[h+(s<<2)>>2];o[n>>2]=a;s=s+1|0;if((s|0)==(t|0))break;else l=l+4|0}s=r+(u<<2)|0;l=f[s>>2]|0;f[s>>2]=l+4;o[l>>2]=a;u=u+1|0;if((u|0)==(t|0))break;else c=c+(t<<2)|0}}}b=b+1|0}while((b|0)!=(i|0))}zn(h);t=1;return t|0}function vr(e,i,r){e=e|0;i=i|0;r=r|0;var t=0.0,n=0,f=0,a=0,s=0,l=0.0;if(!i)return;else s=0;do{a=e+(s<<3)|0;u[a>>3]=0.0;t=0.0;n=0;f=s;while(1){l=+o[r+(f<<2)>>2];t=t+l*l;n=n+1|0;if((n|0)==(i|0))break;else f=f+i|0}u[a>>3]=+Y(+t);s=s+1|0}while((s|0)!=(i|0));return}function pr(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0;x=c;c=c+32|0;T=x+28|0;y=x+24|0;M=x+20|0;E=x+16|0;A=x+12|0;S=x+8|0;o=x+4|0;u=x;n=i+76|0;R=f[n>>2]|0;C=R+(r*5640|0)+420|0;L=(f[C>>2]|0)+1|0;h=e+16|0;g=Nn((f[h>>2]|0)*528|0)|0;if(!g){L=0;c=x;return L|0}p=Nn(f[h>>2]<<2)|0;if(!p){zn(g);L=0;c=x;return L|0}n=Sr(e,f[n>>2]|0,r)|0;if(!n){zn(g);zn(p);L=0;c=x;return L|0}a=f[h>>2]|0;if(a){s=0;l=g;while(1){f[p+(s<<2)>>2]=l;s=s+1|0;if(s>>>0>=a>>>0)break;else l=l+528|0}}Tr(e,i,r,M,E,A,S,o,u,y,T,p);m=f[y>>2]|0;w=ie(f[h>>2]|0,m)|0;_=ie(f[T>>2]|0,w)|0;v=R+(r*5640|0)+8|0;k=Fn(ie((f[v>>2]|0)+1|0,_)|0,2)|0;s=n+4|0;f[s>>2]=k;if(!k){zn(g);zn(p);a=f[s>>2]|0;if(a){zn(a);f[s>>2]=0}if(L){e=n;d=0;while(1){h=e+196|0;a=f[h>>2]|0;if(a){i=e+192|0;s=f[i>>2]|0;if(s){u=0;while(1){l=a+12|0;o=f[l>>2]|0;if(o){zn(o);f[l>>2]=0;s=f[i>>2]|0}u=u+1|0;if(u>>>0>=s>>>0)break;else a=a+16|0}a=f[h>>2]|0}zn(a);f[h>>2]=0}d=d+1|0;if((d|0)==(L|0))break;else e=e+232|0}}zn(n);L=0;c=x;return L|0}a=f[n+196>>2]|0;k=f[e+24>>2]|0;f[n+200>>2]=f[M>>2];f[n+204>>2]=f[A>>2];f[n+208>>2]=f[E>>2];f[n+212>>2]=f[S>>2];f[n+20>>2]=1;f[n+16>>2]=m;f[n+12>>2]=w;f[n+8>>2]=_;h=f[n+192>>2]|0;if(h){e=0;i=k;while(1){l=f[a+12>>2]|0;s=f[p+(e<<2)>>2]|0;f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];u=f[a+8>>2]|0;if(u){o=0;while(1){f[l>>2]=f[s>>2];f[l+4>>2]=f[s+4>>2];f[l+8>>2]=f[s+8>>2];f[l+12>>2]=f[s+12>>2];o=o+1|0;if(o>>>0>=u>>>0)break;else{s=s+16|0;l=l+16|0}}}e=e+1|0;if(e>>>0>=h>>>0)break;else{a=a+16|0;i=i+52|0}}}if(L>>>0>1){h=n;b=1;do{a=f[h+428>>2]|0;f[h+432>>2]=f[M>>2];f[h+436>>2]=f[A>>2];f[h+440>>2]=f[E>>2];f[h+444>>2]=f[S>>2];f[h+252>>2]=1;f[h+248>>2]=m;f[h+244>>2]=w;f[h+240>>2]=_;e=f[h+424>>2]|0;if(e){d=0;i=k;while(1){l=f[a+12>>2]|0;s=f[p+(d<<2)>>2]|0;f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];u=f[a+8>>2]|0;if(u){o=0;while(1){f[l>>2]=f[s>>2];f[l+4>>2]=f[s+4>>2];f[l+8>>2]=f[s+8>>2];f[l+12>>2]=f[s+12>>2];o=o+1|0;if(o>>>0>=u>>>0)break;else{s=s+16|0;l=l+16|0}}}d=d+1|0;if(d>>>0>=e>>>0)break;else{a=a+16|0;i=i+52|0}}}f[h+236>>2]=f[h+4>>2];h=h+232|0;b=b+1|0}while((b|0)!=(L|0))}zn(g);zn(p);h=f[y>>2]|0;if(!(t[R+(r*5640|0)+5636>>0]&4)){i=f[T>>2]|0;u=(f[C>>2]|0)+1|0;if(!u){L=n;c=x;return L|0}o=f[R+(r*5640|0)+4>>2]|0;a=f[v>>2]|0;s=n;l=0;while(1){f[s+80>>2]=o;f[s+40>>2]=1;f[s+44>>2]=0;f[s+48>>2]=0;f[s+64>>2]=0;f[s+68>>2]=0;f[s+56>>2]=i;f[s+60>>2]=f[s+192>>2];f[s+52>>2]=a;f[s+72>>2]=h;l=l+1|0;if((l|0)==(u|0))break;else s=s+232|0}c=x;return n|0}else{l=(f[C>>2]|0)+1|0;if(!l){L=n;c=x;return L|0}o=n;a=R+(r*5640|0)+424|0;s=0;while(1){f[o+80>>2]=f[a+36>>2];f[o+40>>2]=1;f[o+44>>2]=f[a>>2];f[o+48>>2]=f[a+4>>2];f[o+64>>2]=0;f[o+68>>2]=0;f[o+56>>2]=f[a+12>>2];f[o+60>>2]=f[a+16>>2];f[o+52>>2]=f[a+8>>2];f[o+72>>2]=h;s=s+1|0;if((s|0)==(l|0))break;else{o=o+232|0;a=a+148|0}}c=x;return n|0}return 0}function gr(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0;if(!e)return;r=e+4|0;t=f[r>>2]|0;if(t){zn(t);f[r>>2]=0}if(i){u=e;c=0;while(1){o=u+196|0;r=f[o>>2]|0;if(r){l=u+192|0;t=f[l>>2]|0;if(t){s=0;while(1){n=r+12|0;a=f[n>>2]|0;if(a){zn(a);f[n>>2]=0;t=f[l>>2]|0}s=s+1|0;if(s>>>0>=t>>>0)break;else r=r+16|0}r=f[o>>2]|0}zn(r);f[o>>2]=0}c=c+1|0;if((c|0)==(i|0))break;else u=u+232|0}}zn(e);return}function yr(e,i,r,s){e=e|0;i=i|0;r=r|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0;N=c;c=c+32|0;P=N+28|0;x=N+24|0;T=N+20|0;C=N+16|0;R=N+12|0;L=N+8|0;O=N+4|0;B=N;I=i+76|0;M=f[I>>2]|0;D=(f[M+(r*5640|0)+420>>2]|0)+1|0;S=e+16|0;A=Nn((f[S>>2]|0)*528|0)|0;if(!A){r=0;c=N;return r|0}E=Nn(f[S>>2]<<2)|0;if(!E){zn(A);r=0;c=N;return r|0}l=Sr(e,f[I>>2]|0,r)|0;if(!l){zn(A);zn(E);r=0;c=N;return r|0}o=f[S>>2]|0;if(o){u=0;h=A;while(1){f[E+(u<<2)>>2]=h;u=u+1|0;if(u>>>0>=o>>>0)break;else h=h+528|0}}Tr(e,i,r,T,C,R,L,O,B,x,P,E);p=f[x>>2]|0;g=ie(f[S>>2]|0,p)|0;y=ie(f[P>>2]|0,g)|0;t[l>>0]=(a[i+93>>0]|0)>>>3&1;v=Fn(ie(f[M+(r*5640|0)+8>>2]|0,y)|0,2)|0;u=l+4|0;f[u>>2]=v;if(!v){zn(A);zn(E);o=f[u>>2]|0;if(o){zn(o);f[u>>2]=0}if(D){w=l;_=0;while(1){k=w+196|0;o=f[k>>2]|0;if(o){b=w+192|0;u=f[b>>2]|0;if(u){d=0;while(1){h=o+12|0;e=f[h>>2]|0;if(e){zn(e);f[h>>2]=0;u=f[b>>2]|0}d=d+1|0;if(d>>>0>=u>>>0)break;else o=o+16|0}o=f[k>>2]|0}zn(o);f[k>>2]=0}_=_+1|0;if((_|0)==(D|0))break;else w=w+232|0}}zn(l);r=0;c=N;return r|0}o=f[l+196>>2]|0;v=f[e+24>>2]|0;f[l+200>>2]=f[T>>2];f[l+204>>2]=f[R>>2];f[l+208>>2]=f[C>>2];f[l+212>>2]=f[L>>2];f[l+224>>2]=f[O>>2];f[l+228>>2]=f[B>>2];f[l+20>>2]=1;f[l+16>>2]=p;f[l+12>>2]=g;f[l+8>>2]=y;k=f[l+192>>2]|0;if(k){w=0;b=v;while(1){h=f[o+12>>2]|0;u=f[E+(w<<2)>>2]|0;f[o>>2]=f[b>>2];f[o+4>>2]=f[b+4>>2];d=f[o+8>>2]|0;if(d){e=0;while(1){f[h>>2]=f[u>>2];f[h+4>>2]=f[u+4>>2];f[h+8>>2]=f[u+8>>2];f[h+12>>2]=f[u+12>>2];e=e+1|0;if(e>>>0>=d>>>0)break;else{u=u+16|0;h=h+16|0}}}w=w+1|0;if(w>>>0>=k>>>0)break;else{o=o+16|0;b=b+52|0}}}if(D>>>0>1){k=l;m=1;do{o=f[k+428>>2]|0;f[k+432>>2]=f[T>>2];f[k+436>>2]=f[R>>2];f[k+440>>2]=f[C>>2];f[k+444>>2]=f[L>>2];f[k+456>>2]=f[O>>2];f[k+460>>2]=f[B>>2];f[k+252>>2]=1;f[k+248>>2]=p;f[k+244>>2]=g;f[k+240>>2]=y;w=f[k+424>>2]|0;if(w){_=0;b=v;while(1){h=f[o+12>>2]|0;u=f[E+(_<<2)>>2]|0;f[o>>2]=f[b>>2];f[o+4>>2]=f[b+4>>2];d=f[o+8>>2]|0;if(d){e=0;while(1){f[h>>2]=f[u>>2];f[h+4>>2]=f[u+4>>2];f[h+8>>2]=f[u+8>>2];f[h+12>>2]=f[u+12>>2];e=e+1|0;if(e>>>0>=d>>>0)break;else{u=u+16|0;h=h+16|0}}}_=_+1|0;if(_>>>0>=w>>>0)break;else{o=o+16|0;b=b+52|0}}}f[k+236>>2]=f[k+4>>2];k=k+232|0;m=m+1|0}while((m|0)!=(D|0))}zn(A);zn(E);do{if(t[M+(r*5640|0)+5636>>0]&4){o=n[i>>1]|0;if((o&65535)>2){if(!((s|0)==1|(o&65535)<7))break}else if((s|0)!=1)break;Cr(f[I>>2]|0,r,f[T>>2]|0,f[C>>2]|0,f[R>>2]|0,f[L>>2]|0,f[x>>2]|0,f[O>>2]|0,f[B>>2]|0);r=l;c=N;return r|0}}while(0);y=f[S>>2]|0;g=f[T>>2]|0;p=f[C>>2]|0;v=f[R>>2]|0;m=f[L>>2]|0;_=f[x>>2]|0;w=f[P>>2]|0;k=f[O>>2]|0;b=f[B>>2]|0;o=f[I>>2]|0;h=(f[o+(r*5640|0)+420>>2]|0)+1|0;if(!h){r=l;c=N;return r|0}e=f[o+(r*5640|0)+8>>2]|0;d=f[o+(r*5640|0)+4>>2]|0;o=o+(r*5640|0)+424|0;u=0;while(1){f[o+76>>2]=0;f[o+92>>2]=y;f[o+72>>2]=0;f[o+88>>2]=w;f[o+68>>2]=0;f[o+84>>2]=e;f[o+36>>2]=d;f[o+80>>2]=0;f[o+96>>2]=_;f[o+100>>2]=g;f[o+104>>2]=p;f[o+108>>2]=v;f[o+112>>2]=m;f[o+116>>2]=k;f[o+120>>2]=b;u=u+1|0;if((u|0)==(h|0))break;else o=o+148|0}c=N;return l|0}function Mr(e,i,r,a,s,l,o){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0;z=f[i+76>>2]|0;Y=z+(r*5640|0)+424+(a*148|0)+36|0;q=Yn(f[Y>>2]|0)|0;f[e+(a*232|0)+40>>2]=1;X=e+(a*232|0)+44|0;f[e+(a*232|0)+80>>2]=f[Y>>2];do{if(t[i+93>>0]&8){u=n[i>>1]|0;if((u&65535)>2){if(!((o|0)==1&(u&65535)>6|(u+-3&65535)<4))break}else if(!((o|0)==1|(u+-3&65535)<4))break;u=l+1|0;e:do{if((u|0)<4){o=z+(r*5640|0)+424+(a*148|0)+72|0;c=z+(r*5640|0)+424+(a*148|0)+88|0;h=e+(a*232|0)+56|0;d=z+(r*5640|0)+424+(a*148|0)+76|0;b=e+(a*232|0)+48|0;k=z+(r*5640|0)+424+(a*148|0)+92|0;w=e+(a*232|0)+60|0;_=z+(r*5640|0)+424+(a*148|0)+68|0;m=e+(a*232|0)+64|0;v=z+(r*5640|0)+424+(a*148|0)+84|0;p=e+(a*232|0)+52|0;g=z+(r*5640|0)+424+(a*148|0)+80|0;y=e+(a*232|0)+68|0;M=z+(r*5640|0)+424+(a*148|0)+96|0;E=e+(a*232|0)+72|0;A=z+(r*5640|0)+424+(a*148|0)+100|0;S=e+(a*232|0)+96|0;T=z+(r*5640|0)+424+(a*148|0)+108|0;C=e+(a*232|0)+104|0;R=z+(r*5640|0)+424+(a*148|0)+104|0;L=e+(a*232|0)+100|0;x=z+(r*5640|0)+424+(a*148|0)+112|0;P=e+(a*232|0)+108|0;while(1){i:do{switch(t[q+u>>0]|0){case 82:{f[X>>2]=f[o>>2];f[h>>2]=f[c>>2];break}case 67:{f[b>>2]=f[d>>2];f[w>>2]=f[k>>2];break}case 76:{f[m>>2]=f[_>>2];f[p>>2]=f[v>>2];break}case 80:if((f[Y>>2]|0)>>>0<2){f[y>>2]=f[g>>2];f[E>>2]=f[M>>2];break i}else{f[S>>2]=f[A>>2];f[C>>2]=f[T>>2];f[L>>2]=f[R>>2];f[P>>2]=f[x>>2];break i}default:{}}}while(0);u=u+1|0;if((u|0)==4)break e}}}while(0);u=(l|0)>-1;if(!s){if(!u)return;h=z+(r*5640|0)+424+(a*148|0)+76|0;d=z+(r*5640|0)+424+(a*148|0)+132|0;b=e+(a*232|0)+48|0;k=e+(a*232|0)+60|0;w=z+(r*5640|0)+424+(a*148|0)+72|0;_=z+(r*5640|0)+424+(a*148|0)+128|0;m=e+(a*232|0)+56|0;v=z+(r*5640|0)+424+(a*148|0)+68|0;p=z+(r*5640|0)+424+(a*148|0)+124|0;g=e+(a*232|0)+64|0;y=e+(a*232|0)+52|0;M=z+(r*5640|0)+424+(a*148|0)+80|0;E=z+(r*5640|0)+424+(a*148|0)+136|0;A=e+(a*232|0)+68|0;S=e+(a*232|0)+72|0;T=z+(r*5640|0)+424+(a*148|0)+100|0;C=z+(r*5640|0)+424+(a*148|0)+140|0;R=z+(r*5640|0)+424+(a*148|0)+108|0;L=z+(r*5640|0)+424+(a*148|0)+144|0;x=e+(a*232|0)+96|0;P=z+(r*5640|0)+424+(a*148|0)+116|0;s=e+(a*232|0)+100|0;O=e+(a*232|0)+104|0;c=z+(r*5640|0)+424+(a*148|0)+120|0;o=e+(a*232|0)+108|0;u=l;while(1){e:do{switch(t[q+u>>0]|0){case 67:{a=f[h>>2]|0;f[b>>2]=a;a=a+1|0;f[k>>2]=a;f[d>>2]=a;break}case 82:{a=f[w>>2]|0;f[X>>2]=a;a=a+1|0;f[m>>2]=a;f[_>>2]=a;break}case 76:{a=f[v>>2]|0;f[g>>2]=a;a=a+1|0;f[y>>2]=a;f[p>>2]=a;break}case 80:if((f[Y>>2]|0)>>>0<2){a=f[M>>2]|0;f[A>>2]=a;a=a+1|0;f[S>>2]=a;f[E>>2]=a;break e}else{a=f[T>>2]|0;l=f[R>>2]|0;f[x>>2]=a;r=f[P>>2]|0;r=r+a-((a>>>0)%(r>>>0)|0)|0;f[s>>2]=r;f[O>>2]=l;a=f[c>>2]|0;a=a+l-((l>>>0)%(a>>>0)|0)|0;f[o>>2]=a;f[C>>2]=r;f[L>>2]=a;break e}default:{}}}while(0);if((u|0)>0)u=u+-1|0;else break}return}if(!u)return;N=z+(r*5640|0)+424+(a*148|0)+128|0;F=z+(r*5640|0)+424+(a*148|0)+88|0;U=z+(r*5640|0)+424+(a*148|0)+72|0;j=e+(a*232|0)+56|0;H=z+(r*5640|0)+424+(a*148|0)+132|0;k=z+(r*5640|0)+424+(a*148|0)+92|0;w=z+(r*5640|0)+424+(a*148|0)+76|0;_=e+(a*232|0)+48|0;m=e+(a*232|0)+60|0;v=z+(r*5640|0)+424+(a*148|0)+124|0;p=z+(r*5640|0)+424+(a*148|0)+84|0;g=z+(r*5640|0)+424+(a*148|0)+68|0;y=e+(a*232|0)+64|0;M=e+(a*232|0)+52|0;E=z+(r*5640|0)+424+(a*148|0)+136|0;A=z+(r*5640|0)+424+(a*148|0)+96|0;S=z+(r*5640|0)+424+(a*148|0)+80|0;T=e+(a*232|0)+68|0;C=e+(a*232|0)+72|0;R=z+(r*5640|0)+424+(a*148|0)+140|0;L=z+(r*5640|0)+424+(a*148|0)+104|0;x=e+(a*232|0)+96|0;P=z+(r*5640|0)+424+(a*148|0)+116|0;s=e+(a*232|0)+100|0;O=z+(r*5640|0)+424+(a*148|0)+144|0;B=z+(r*5640|0)+424+(a*148|0)+112|0;I=e+(a*232|0)+104|0;D=z+(r*5640|0)+424+(a*148|0)+120|0;d=e+(a*232|0)+108|0;b=z+(r*5640|0)+424+(a*148|0)+100|0;h=z+(r*5640|0)+424+(a*148|0)+108|0;c=l;u=1;while(1){o=q+c|0;e:do{switch(t[o>>0]|0){case 67:{l=f[H>>2]|0;f[_>>2]=l+-1;f[m>>2]=l;break}case 82:{l=f[N>>2]|0;f[X>>2]=l+-1;f[j>>2]=l;break}case 76:{l=f[v>>2]|0;f[y>>2]=l+-1;f[M>>2]=l;break}case 80:if((f[Y>>2]|0)>>>0<2){l=f[E>>2]|0;f[T>>2]=l+-1;f[C>>2]=l;break e}else{l=f[R>>2]|0;z=f[P>>2]|0;f[x>>2]=l-z-((l>>>0)%(z>>>0)|0);f[s>>2]=l;l=f[O>>2]|0;z=f[D>>2]|0;f[I>>2]=l-z-((l>>>0)%(z>>>0)|0);f[d>>2]=l;break e}default:{}}}while(0);e:do{if((u|0)==1)switch(t[o>>0]|0){case 82:{u=f[N>>2]|0;if((u|0)!=(f[F>>2]|0)){f[X>>2]=u;u=u+1|0;f[j>>2]=u;f[N>>2]=u;u=0;break e}if(!(Rr(c+-1|0,i,r,a,q)|0)){u=0;break e}u=f[U>>2]|0;f[X>>2]=u;u=u+1|0;f[j>>2]=u;f[N>>2]=u;u=1;break e}case 67:{u=f[H>>2]|0;if((u|0)!=(f[k>>2]|0)){f[_>>2]=u;u=u+1|0;f[m>>2]=u;f[H>>2]=u;u=0;break e}if(!(Rr(c+-1|0,i,r,a,q)|0)){u=0;break e}u=f[w>>2]|0;f[_>>2]=u;u=u+1|0;f[m>>2]=u;f[H>>2]=u;u=1;break e}case 76:{u=f[v>>2]|0;if((u|0)!=(f[p>>2]|0)){f[y>>2]=u;u=u+1|0;f[M>>2]=u;f[v>>2]=u;u=0;break e}if(!(Rr(c+-1|0,i,r,a,q)|0)){u=0;break e}u=f[g>>2]|0;f[y>>2]=u;u=u+1|0;f[M>>2]=u;f[v>>2]=u;u=1;break e}case 80:{if((f[Y>>2]|0)>>>0<2){u=f[E>>2]|0;if((u|0)!=(f[A>>2]|0)){f[T>>2]=u;u=u+1|0;f[C>>2]=u;f[E>>2]=u;u=0;break e}if(!(Rr(c+-1|0,i,r,a,q)|0)){u=0;break e}u=f[S>>2]|0;f[T>>2]=u;u=u+1|0;f[C>>2]=u;f[E>>2]=u;u=1;break e}u=f[R>>2]|0;if(u>>>0<(f[L>>2]|0)>>>0){f[x>>2]=u;l=f[P>>2]|0;u=l+u-((u>>>0)%(l>>>0)|0)|0;f[s>>2]=u;f[R>>2]=u;u=0;break e}o=f[O>>2]|0;if(o>>>0<(f[B>>2]|0)>>>0){f[I>>2]=o;l=f[D>>2]|0;u=0;o=l+o-((o>>>0)%(l>>>0)|0)|0}else{if(!(Rr(c+-1|0,i,r,a,q)|0)){u=0;break e}l=f[h>>2]|0;f[O>>2]=l;f[I>>2]=l;o=f[D>>2]|0;u=1;o=o+l-((l>>>0)%(o>>>0)|0)|0}f[d>>2]=o;f[O>>2]=o;z=f[b>>2]|0;f[x>>2]=z;l=f[P>>2]|0;l=l+z-((z>>>0)%(l>>>0)|0)|0;f[s>>2]=l;f[R>>2]=l;break e}default:{u=1;break e}}}while(0);if((c|0)>0)c=c+-1|0;else break}return}}while(0);f[X>>2]=f[z+(r*5640|0)+424+(a*148|0)+72>>2];f[e+(a*232|0)+56>>2]=f[z+(r*5640|0)+424+(a*148|0)+88>>2];f[e+(a*232|0)+48>>2]=f[z+(r*5640|0)+424+(a*148|0)+76>>2];f[e+(a*232|0)+60>>2]=f[z+(r*5640|0)+424+(a*148|0)+92>>2];f[e+(a*232|0)+64>>2]=f[z+(r*5640|0)+424+(a*148|0)+68>>2];f[e+(a*232|0)+52>>2]=f[z+(r*5640|0)+424+(a*148|0)+84>>2];f[e+(a*232|0)+68>>2]=f[z+(r*5640|0)+424+(a*148|0)+80>>2];f[e+(a*232|0)+72>>2]=f[z+(r*5640|0)+424+(a*148|0)+96>>2];f[e+(a*232|0)+96>>2]=f[z+(r*5640|0)+424+(a*148|0)+100>>2];f[e+(a*232|0)+104>>2]=f[z+(r*5640|0)+424+(a*148|0)+108>>2];f[e+(a*232|0)+100>>2]=f[z+(r*5640|0)+424+(a*148|0)+104>>2];f[e+(a*232|0)+108>>2]=f[z+(r*5640|0)+424+(a*148|0)+112>>2];return}function Er(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0;B=f[i+76>>2]|0;D=f[i+24>>2]|0;U=(r>>>0)%(D>>>0)|0;D=(r>>>0)/(D>>>0)|0;N=f[i+4>>2]|0;O=f[i+12>>2]|0;P=(ie(O,U)|0)+N|0;F=f[e>>2]|0;F=(P|0)>(F|0)?P:F;N=(ie(O,U+1|0)|0)+N|0;U=f[e+8>>2]|0;U=(N|0)<(U|0)?N:U;N=f[i+8>>2]|0;O=f[i+16>>2]|0;P=(ie(O,D)|0)+N|0;I=f[e+4>>2]|0;I=(P|0)>(I|0)?P:I;N=(ie(O,D+1|0)|0)+N|0;D=f[e+12>>2]|0;D=(N|0)<(D|0)?N:D;N=f[e+16>>2]|0;if(!N){c=0;u=2147483647;o=2147483647;l=0}else{C=D+-1|0;R=U+-1|0;L=I+-1|0;P=F+-1|0;c=0;u=2147483647;o=2147483647;l=0;O=0;S=f[e+24>>2]|0;T=f[B+(r*5640|0)+5584>>2]|0;while(1){M=f[S>>2]|0;E=f[S+4>>2]|0;A=f[T+4>>2]|0;l=A>>>0>l>>>0?A:l;if(A){g=(C+E|0)/(E|0)|0;v=(R+M|0)/(M|0)|0;_=(L+E|0)/(E|0)|0;k=(P+M|0)/(M|0)|0;k=Il(k|0,((k|0)<0)<<31>>31|0,-1,-1)|0;w=x;_=Il(_|0,((_|0)<0)<<31>>31|0,-1,-1)|0;m=x;v=Il(v|0,((v|0)<0)<<31>>31|0,-1,-1)|0;p=x;g=Il(g|0,((g|0)<0)<<31>>31|0,-1,-1)|0;y=x;i=0;b=0;while(1){h=f[T+812+(b<<2)>>2]|0;d=f[T+944+(b<<2)>>2]|0;a=i+-1+A|0;s=M<<a+h;j=E<<d+a;u=u>>>0<s>>>0?u:s;o=o>>>0<j>>>0?o:j;j=Bl(1,0,a|0)|0;s=x;i=Il(k|0,w|0,j|0,s|0)|0;i=Pl(i|0,x|0,a|0)|0;n=Il(_|0,m|0,j|0,s|0)|0;n=Pl(n|0,x|0,a|0)|0;e=Il(v|0,p|0,j|0,s|0)|0;e=Pl(e|0,x|0,a|0)|0;s=Il(g|0,y|0,j|0,s|0)|0;a=Pl(s|0,x|0,a|0)|0;s=Bl(1,0,d|0)|0;s=Il(s|0,x|0,-1,-1)|0;s=Il(s|0,x|0,a|0,((a|0)<0)<<31>>31|0)|0;s=Pl(s|0,x|0,d|0)|0;if((i|0)==(e|0))i=0;else{j=Bl(1,0,h|0)|0;j=Il(j|0,x|0,-1,-1)|0;j=Il(j|0,x|0,e|0,((e|0)<0)<<31>>31|0)|0;j=Pl(j|0,x|0,h|0)|0;i=(j<<h)-(i>>h<<h)>>h}e=ie(i,(n|0)==(a|0)?0:(s<<d)-(n>>d<<d)>>d)|0;c=e>>>0>c>>>0?e:c;e=b+1|0;if(e>>>0<A>>>0){i=~b;b=e}else break}}O=O+1|0;if(O>>>0>=N>>>0)break;else{S=S+52|0;T=T+1080|0}}}if(t[B+(r*5640|0)+5636>>0]&4){Cr(B,r,F,U,I,D,c,u,o);return}n=(f[B+(r*5640|0)+420>>2]|0)+1|0;if(!n)return;a=f[B+(r*5640|0)+8>>2]|0;s=f[B+(r*5640|0)+4>>2]|0;i=B+(r*5640|0)+424|0;e=0;while(1){f[i+76>>2]=0;f[i+92>>2]=N;f[i+72>>2]=0;f[i+88>>2]=l;f[i+68>>2]=0;f[i+84>>2]=a;f[i+36>>2]=s;f[i+80>>2]=0;f[i+96>>2]=c;f[i+100>>2]=F;f[i+104>>2]=U;f[i+108>>2]=I;f[i+112>>2]=D;f[i+116>>2]=u;f[i+120>>2]=o;e=e+1|0;if((e|0)==(n|0))break;else i=i+148|0}return}function Ar(e){e=e|0;var i=0,r=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0,V=0,G=0,K=0,W=0,Z=0,J=0,Q=0,$=0,ee=0,re=0,te=0,ne=0,fe=0,ae=0,se=0,le=0,oe=0,ue=0,ce=0,he=0,de=0,be=0,ke=0,we=0,_e=0,me=0,ve=0,pe=0,ge=0,ye=0,Me=0,Ee=0,Ae=0,Se=0,Te=0,Ce=0,Re=0,Le=0,xe=0,Pe=0,Oe=0,Be=0,Ie=0,De=0,Ne=0,Fe=0,Ue=0,je=0,He=0,ze=0,Ye=0,qe=0,Xe=0,Ve=0,Ge=0,Ke=0,We=0,Ze=0,Je=0,Qe=0,$e=0,ei=0,ii=0,ri=0,ti=0,ni=0,fi=0,ai=0,si=0,li=0,oi=0,ui=0,ci=0,hi=0,di=0;switch(f[e+80>>2]|0){case 0:{i=e+40|0;if(!(f[i>>2]|0)){L=e+32|0;c=L;L=f[L>>2]|0;r=18}else{f[i>>2]=0;v=f[e+64>>2]|0;f[e+36>>2]=v;r=5}while(1){if((r|0)==5){if(v>>>0>=(f[e+52>>2]|0)>>>0){di=0;r=153;break}A=f[e+44>>2]|0;f[e+28>>2]=A;r=7}else if((r|0)==18){o=L+1|0;f[c>>2]=o;s=c;r=14}while(1){if((r|0)==7){r=0;if(A>>>0>=(f[e+56>>2]|0)>>>0){r=21;break}S=f[e+48>>2]|0;k=e+24|0;f[k>>2]=S}else if((r|0)==14){if(o>>>0<(f[e+72>>2]|0)>>>0){r=16;break}x=e+24|0;d=x;x=f[x>>2]|0;r=19}while(1){if((r|0)==19){r=0;S=x+1|0;f[d>>2]=S;k=d}if(S>>>0>=(f[e+60>>2]|0)>>>0){r=20;break}T=f[e+196>>2]|0;C=f[e+28>>2]|0;if(C>>>0<(f[T+(S<<4)+8>>2]|0)>>>0)break;else{d=k;x=S;r=19}}if((r|0)==20){r=e+28|0;A=(f[r>>2]|0)+1|0;f[r>>2]=A;r=7;continue}i=f[T+(S<<4)+12>>2]|0;if(!(t[e>>0]|0))f[e+72>>2]=ie(f[i+(C<<4)+12>>2]|0,f[i+(C<<4)+8>>2]|0)|0;o=f[e+68>>2]|0;s=e+32|0;f[s>>2]=o;r=14}if((r|0)==16){r=0;R=ie(f[e+8>>2]|0,f[e+36>>2]|0)|0;R=(ie(f[e+12>>2]|0,f[e+28>>2]|0)|0)+R|0;R=R+(ie(f[e+16>>2]|0,f[e+24>>2]|0)|0)|0;R=R+(ie(f[e+20>>2]|0,o)|0)|0;R=(f[e+4>>2]|0)+(R<<1)|0;if(!(n[R>>1]|0))break;else{c=s;L=o;r=18;continue}}else if((r|0)==21){r=e+36|0;v=(f[r>>2]|0)+1|0;f[r>>2]=v;r=5;continue}}if((r|0)==153)return di|0;n[R>>1]=1;e=1;return e|0}case 1:{i=e+40|0;if(!(f[i>>2]|0)){M=e+32|0;u=M;M=f[M>>2]|0;r=38}else{f[i>>2]=0;P=f[e+44>>2]|0;f[e+28>>2]=P;r=25}while(1){if((r|0)==25){if(P>>>0>=(f[e+56>>2]|0)>>>0){di=0;r=153;break}_=f[e+64>>2]|0;f[e+36>>2]=_;r=27}else if((r|0)==38){l=M+1|0;f[u>>2]=l;a=u;r=34}while(1){if((r|0)==27){r=0;if(_>>>0>=(f[e+52>>2]|0)>>>0){r=41;break}m=f[e+48>>2]|0;b=e+24|0;f[b>>2]=m}else if((r|0)==34){if(l>>>0<(f[e+72>>2]|0)>>>0){r=36;break}E=e+24|0;h=E;E=f[E>>2]|0;r=39}while(1){if((r|0)==39){r=0;m=E+1|0;f[h>>2]=m;b=h}if(m>>>0>=(f[e+60>>2]|0)>>>0){r=40;break}p=f[e+196>>2]|0;g=f[e+28>>2]|0;if(g>>>0<(f[p+(m<<4)+8>>2]|0)>>>0)break;else{h=b;E=m;r=39}}if((r|0)==40){r=e+36|0;_=(f[r>>2]|0)+1|0;f[r>>2]=_;r=27;continue}i=f[p+(m<<4)+12>>2]|0;if(!(t[e>>0]|0))f[e+72>>2]=ie(f[i+(g<<4)+12>>2]|0,f[i+(g<<4)+8>>2]|0)|0;l=f[e+68>>2]|0;a=e+32|0;f[a>>2]=l;r=34}if((r|0)==36){r=0;y=ie(f[e+8>>2]|0,f[e+36>>2]|0)|0;y=(ie(f[e+12>>2]|0,f[e+28>>2]|0)|0)+y|0;y=y+(ie(f[e+16>>2]|0,f[e+24>>2]|0)|0)|0;y=y+(ie(f[e+20>>2]|0,l)|0)|0;y=(f[e+4>>2]|0)+(y<<1)|0;if(!(n[y>>1]|0))break;else{u=a;M=l;r=38;continue}}else if((r|0)==41){r=e+28|0;P=(f[r>>2]|0)+1|0;f[r>>2]=P;r=25;continue}}if((r|0)==153)return di|0;n[y>>1]=1;e=1;return e|0}case 2:{i=e+40|0;if(!(f[i>>2]|0)){ci=e+36|0;Xe=ci;ci=f[ci>>2]|0;r=75}else{f[i>>2]=0;b=e+224|0;f[b>>2]=0;k=e+228|0;f[k>>2]=0;w=f[e+192>>2]|0;if(w){_=f[e+196>>2]|0;i=0;r=0;m=0;do{o=f[_+(m<<4)+8>>2]|0;if(o){u=f[_+(m<<4)+12>>2]|0;c=f[_+(m<<4)>>2]|0;h=f[_+(m<<4)+4>>2]|0;d=o+-1|0;a=0;l=0;while(1){s=d+a|0;qe=c<<s+(f[u+(l<<4)>>2]|0);s=h<<(f[u+(l<<4)+4>>2]|0)+s;i=(i|0)==0?qe:i>>>0<qe>>>0?i:qe;r=(r|0)==0?s:r>>>0<s>>>0?r:s;s=l+1|0;if((s|0)==(o|0))break;else{a=~l;l=s}}f[b>>2]=i;f[k>>2]=r}m=m+1|0}while((m|0)!=(w|0))}if(!(t[e>>0]|0)){f[e+104>>2]=f[e+204>>2];f[e+96>>2]=f[e+200>>2];f[e+108>>2]=f[e+212>>2];f[e+100>>2]=f[e+208>>2]}I=f[e+44>>2]|0;f[e+28>>2]=I;r=54}while(1){if((r|0)==54){if(I>>>0>=(f[e+56>>2]|0)>>>0){di=0;r=153;break}We=f[e+104>>2]|0;f[e+220>>2]=We;r=56}else if((r|0)==75){oi=ci+1|0;f[Xe>>2]=oi;Ve=Xe;r=71}while(1){if((r|0)==56){if((We|0)>=(f[e+108>>2]|0)){r=79;break}Ze=f[e+96>>2]|0;f[e+216>>2]=Ze;r=58}else if((r|0)==71){if(oi>>>0<(f[e+52>>2]|0)>>>0){r=73;break}hi=e+24|0;Ge=hi;hi=f[hi>>2]|0;r=76}while(1){if((r|0)==58){if((Ze|0)>=(f[e+100>>2]|0)){r=78;break}Je=f[e+48>>2]|0;Ke=e+24|0;f[Ke>>2]=Je}else if((r|0)==76){Je=hi+1|0;f[Ge>>2]=Je;Ke=Ge}if(Je>>>0>=(f[e+60>>2]|0)>>>0){Ze=f[e+224>>2]|0;r=e+216|0;qe=f[r>>2]|0;Ze=qe+Ze-((qe|0)%(Ze|0)|0)|0;f[r>>2]=Ze;r=58;continue}r=f[e+196>>2]|0;h=f[e+28>>2]|0;i=f[r+(Je<<4)+8>>2]|0;if(h>>>0>=i>>>0){Ge=Ke;hi=Je;r=76;continue}d=f[r+(Je<<4)+12>>2]|0;l=i+~h|0;o=f[e+200>>2]|0;u=f[r+(Je<<4)>>2]|0;Qe=u<<l;$e=(o+-1+Qe|0)/(Qe|0)|0;c=f[e+204>>2]|0;qe=f[r+(Je<<4)+4>>2]|0;ei=qe<<l;ii=(c+-1+ei|0)/(ei|0)|0;ri=Qe+-1|0;i=(ri+(f[e+208>>2]|0)|0)/(Qe|0)|0;ti=ei+-1|0;r=(ti+(f[e+212>>2]|0)|0)/(ei|0)|0;ni=f[d+(h<<4)>>2]|0;a=ni+l|0;fi=f[d+(h<<4)+4>>2]|0;s=fi+l|0;ai=f[e+220>>2]|0;if((ai|0)%(qe<<s|0)|0){if((ai|0)!=(c|0)){Ge=Ke;hi=Je;r=76;continue}if(!((ii<<l|0)%(1<<s|0)|0)){Ge=Ke;hi=Je;r=76;continue}}si=f[e+216>>2]|0;if((si|0)%(u<<a|0)|0){if((si|0)!=(o|0)){Ge=Ke;hi=Je;r=76;continue}if(!(($e<<l|0)%(1<<a|0)|0)){Ge=Ke;hi=Je;r=76;continue}}li=f[d+(h<<4)+8>>2]|0;if(!li){Ge=Ke;hi=Je;r=76;continue}if((ii|0)==(r|0)|(($e|0)==(i|0)?1:(f[d+(h<<4)+12>>2]|0)==0)){Ge=Ke;hi=Je;r=76}else{r=70;break}}if((r|0)==70){f[e+32>>2]=(((ri+si|0)/(Qe|0)|0)>>ni)-($e>>ni)+(ie((((ti+ai|0)/(ei|0)|0)>>fi)-(ii>>fi)|0,li)|0);oi=f[e+64>>2]|0;Ve=e+36|0;f[Ve>>2]=oi;r=71;continue}else if((r|0)==78){We=f[e+228>>2]|0;r=e+220|0;qe=f[r>>2]|0;We=qe+We-((qe|0)%(We|0)|0)|0;f[r>>2]=We;r=56;continue}}if((r|0)==73){r=0;ui=ie(f[e+8>>2]|0,oi)|0;ui=(ie(f[e+12>>2]|0,f[e+28>>2]|0)|0)+ui|0;ui=ui+(ie(f[e+16>>2]|0,f[e+24>>2]|0)|0)|0;ui=ui+(ie(f[e+20>>2]|0,f[e+32>>2]|0)|0)|0;ui=(f[e+4>>2]|0)+(ui<<1)|0;if(!(n[ui>>1]|0))break;else{Xe=Ve;ci=oi;r=75;continue}}else if((r|0)==79){r=e+28|0;I=(f[r>>2]|0)+1|0;f[r>>2]=I;r=54;continue}}if((r|0)==153)return di|0;n[ui>>1]=1;e=1;return e|0}case 3:{r=e+40|0;if(!(f[r>>2]|0)){Ye=f[e+24>>2]|0;De=e+36|0;ke=De;De=f[De>>2]|0;Ue=Ye;Ye=(f[e+196>>2]|0)+(Ye<<4)|0;r=113}else{f[r>>2]=0;b=e+224|0;f[b>>2]=0;k=e+228|0;f[k>>2]=0;w=f[e+192>>2]|0;if(w){_=f[e+196>>2]|0;i=0;r=0;m=0;do{o=f[_+(m<<4)+8>>2]|0;if(o){u=f[_+(m<<4)+12>>2]|0;c=f[_+(m<<4)>>2]|0;h=f[_+(m<<4)+4>>2]|0;d=o+-1|0;a=0;l=0;while(1){s=d+a|0;hi=c<<s+(f[u+(l<<4)>>2]|0);s=h<<(f[u+(l<<4)+4>>2]|0)+s;i=(i|0)==0?hi:i>>>0<hi>>>0?i:hi;r=(r|0)==0?s:r>>>0<s>>>0?r:s;s=l+1|0;if((s|0)==(o|0))break;else{a=~l;l=s}}f[b>>2]=i;f[k>>2]=r}m=m+1|0}while((m|0)!=(w|0))}if(!(t[e>>0]|0)){i=f[e+204>>2]|0;f[e+104>>2]=i;f[e+96>>2]=f[e+200>>2];f[e+108>>2]=f[e+212>>2];f[e+100>>2]=f[e+208>>2]}else i=f[e+104>>2]|0;f[e+220>>2]=i;r=93}while(1){if((r|0)==93){if((i|0)>=(f[e+108>>2]|0)){di=0;r=153;break}ve=f[e+96>>2]|0;f[e+216>>2]=ve;r=95}else if((r|0)==113){Oe=De+1|0;f[ke>>2]=Oe;we=ke;Be=Ue;ze=Ye;r=109}while(1){if((r|0)==95){if((ve|0)>=(f[e+100>>2]|0)){r=117;break}pe=f[e+48>>2]|0;f[e+24>>2]=pe;r=97}else if((r|0)==109){if(Oe>>>0<(f[e+52>>2]|0)>>>0){r=111;break}Ne=e+28|0;_e=Ne;Ne=f[Ne>>2]|0;je=Be;qe=ze;r=114}while(1){if((r|0)==97){if(pe>>>0>=(f[e+60>>2]|0)>>>0){r=116;break}He=(f[e+196>>2]|0)+(pe<<4)|0;ge=f[e+44>>2]|0;me=e+28|0;f[me>>2]=ge;Fe=pe}else if((r|0)==114){ge=Ne+1|0;f[_e>>2]=ge;me=_e;Fe=je;He=qe}hi=f[e+56>>2]|0;r=f[He+8>>2]|0;if(ge>>>0>=(hi>>>0<r>>>0?hi:r)>>>0){pe=Fe+1|0;f[e+24>>2]=pe;r=97;continue}d=f[He+12>>2]|0;r=r+~ge|0;a=f[e+200>>2]|0;s=f[He>>2]|0;ye=s<<r;Me=(a+-1+ye|0)/(ye|0)|0;l=f[e+204>>2]|0;hi=f[He+4>>2]|0;Ee=hi<<r;Ae=(l+-1+Ee|0)/(Ee|0)|0;Se=ye+-1|0;o=(Se+(f[e+208>>2]|0)|0)/(ye|0)|0;Te=Ee+-1|0;u=(Te+(f[e+212>>2]|0)|0)/(Ee|0)|0;Ce=f[d+(ge<<4)>>2]|0;c=Ce+r|0;Re=f[d+(ge<<4)+4>>2]|0;h=Re+r|0;Le=f[e+220>>2]|0;if((Le|0)%(hi<<h|0)|0){if((Le|0)!=(l|0)){_e=me;Ne=ge;je=Fe;qe=He;r=114;continue}if(!((Ae<<r|0)%(1<<h|0)|0)){_e=me;Ne=ge;je=Fe;qe=He;r=114;continue}}xe=f[e+216>>2]|0;if((xe|0)%(s<<c|0)|0){if((xe|0)!=(a|0)){_e=me;Ne=ge;je=Fe;qe=He;r=114;continue}if(!((Me<<r|0)%(1<<c|0)|0)){_e=me;Ne=ge;je=Fe;qe=He;r=114;continue}}Pe=f[d+(ge<<4)+8>>2]|0;if(!Pe){_e=me;Ne=ge;je=Fe;qe=He;r=114;continue}if((Ae|0)==(u|0)|((Me|0)==(o|0)?1:(f[d+(ge<<4)+12>>2]|0)==0)){_e=me;Ne=ge;je=Fe;qe=He;r=114}else{r=108;break}}if((r|0)==108){f[e+32>>2]=(((Se+xe|0)/(ye|0)|0)>>Ce)-(Me>>Ce)+(ie((((Te+Le|0)/(Ee|0)|0)>>Re)-(Ae>>Re)|0,Pe)|0);Oe=f[e+64>>2]|0;we=e+36|0;f[we>>2]=Oe;Be=Fe;ze=He;r=109;continue}else if((r|0)==116){ve=f[e+224>>2]|0;r=e+216|0;hi=f[r>>2]|0;ve=hi+ve-((hi|0)%(ve|0)|0)|0;f[r>>2]=ve;r=95;continue}}if((r|0)==111){r=0;Ie=ie(f[e+8>>2]|0,Oe)|0;Ie=(ie(f[e+12>>2]|0,f[e+28>>2]|0)|0)+Ie|0;Ie=Ie+(ie(f[e+16>>2]|0,Be)|0)|0;Ie=Ie+(ie(f[e+20>>2]|0,f[e+32>>2]|0)|0)|0;Ie=(f[e+4>>2]|0)+(Ie<<1)|0;if(!(n[Ie>>1]|0))break;else{ke=we;De=Oe;Ue=Be;Ye=ze;r=113;continue}}else if((r|0)==117){i=f[e+228>>2]|0;r=e+220|0;hi=f[r>>2]|0;i=hi+i-((hi|0)%(i|0)|0)|0;f[r>>2]=i;r=93;continue}}if((r|0)==153)return di|0;n[Ie>>1]=1;e=1;return e|0}case 4:{i=e+40|0;if(!(f[i>>2]|0)){de=f[e+24>>2]|0;ne=e+36|0;D=ne;ne=f[ne>>2]|0;ae=de;de=(f[e+196>>2]|0)+(de<<4)|0;r=148}else{f[i>>2]=0;j=f[e+48>>2]|0;f[e+24>>2]=j;r=121}while(1){if((r|0)==121){if(j>>>0>=(f[e+60>>2]|0)>>>0){di=0;r=153;break}i=f[e+196>>2]|0;w=i+(j<<4)|0;b=e+224|0;f[b>>2]=0;k=e+228|0;f[k>>2]=0;c=f[i+(j<<4)+8>>2]|0;if(c){h=f[i+(j<<4)+12>>2]|0;d=f[w>>2]|0;s=f[i+(j<<4)+4>>2]|0;l=c+-1|0;r=0;i=0;a=0;u=0;while(1){o=l+a|0;hi=d<<o+(f[h+(u<<4)>>2]|0);o=s<<(f[h+(u<<4)+4>>2]|0)+o;r=(r|0)==0?hi:r>>>0<hi>>>0?r:hi;i=(i|0)==0?o:i>>>0<o>>>0?i:o;o=u+1|0;if((o|0)==(c|0))break;else{a=~u;u=o}}f[b>>2]=r;f[k>>2]=i}if(!(t[e>>0]|0)){i=f[e+204>>2]|0;f[e+104>>2]=i;f[e+96>>2]=f[e+200>>2];f[e+108>>2]=f[e+212>>2];f[e+100>>2]=f[e+208>>2]}else i=f[e+104>>2]|0;f[e+220>>2]=i;O=i;B=j;r=130}else if((r|0)==148){ee=ne+1|0;f[D>>2]=ee;N=D;re=ae;he=de;r=144}while(1){if((r|0)==130){if((O|0)>=(f[e+108>>2]|0)){r=152;break}H=f[e+96>>2]|0;f[e+216>>2]=H;se=B;ue=w;r=132}else if((r|0)==144){if(ee>>>0<(f[e+52>>2]|0)>>>0){r=146;break}fe=e+28|0;F=fe;fe=f[fe>>2]|0;oe=re;be=he;r=149}while(1){if((r|0)==132){if((H|0)>=(f[e+100>>2]|0)){r=151;break}z=f[e+44>>2]|0;U=e+28|0;f[U>>2]=z;le=se;ce=ue}else if((r|0)==149){z=fe+1|0;f[F>>2]=z;U=F;le=oe;ce=be}hi=f[e+56>>2]|0;i=f[ce+8>>2]|0;if(z>>>0>=(hi>>>0<i>>>0?hi:i)>>>0){H=f[e+224>>2]|0;se=e+216|0;ue=f[se>>2]|0;H=ue+H-((ue|0)%(H|0)|0)|0;f[se>>2]=H;se=le;ue=ce;r=132;continue}h=f[ce+12>>2]|0;i=i+~z|0;r=f[e+200>>2]|0;a=f[ce>>2]|0;Y=a<<i;q=(r+-1+Y|0)/(Y|0)|0;s=f[e+204>>2]|0;hi=f[ce+4>>2]|0;X=hi<<i;V=(s+-1+X|0)/(X|0)|0;G=Y+-1|0;l=(G+(f[e+208>>2]|0)|0)/(Y|0)|0;K=X+-1|0;o=(K+(f[e+212>>2]|0)|0)/(X|0)|0;W=f[h+(z<<4)>>2]|0;u=W+i|0;Z=f[h+(z<<4)+4>>2]|0;c=Z+i|0;J=f[e+220>>2]|0;if((J|0)%(hi<<c|0)|0){if((J|0)!=(s|0)){F=U;fe=z;oe=le;be=ce;r=149;continue}if(!((V<<i|0)%(1<<c|0)|0)){F=U;fe=z;oe=le;be=ce;r=149;continue}}Q=f[e+216>>2]|0;if((Q|0)%(a<<u|0)|0){if((Q|0)!=(r|0)){F=U;fe=z;oe=le;be=ce;r=149;continue}if(!((q<<i|0)%(1<<u|0)|0)){F=U;fe=z;oe=le;be=ce;r=149;continue}}$=f[h+(z<<4)+8>>2]|0;if(!$){F=U;fe=z;oe=le;be=ce;r=149;continue}if((V|0)==(o|0)|((q|0)==(l|0)?1:(f[h+(z<<4)+12>>2]|0)==0)){F=U;fe=z;oe=le;be=ce;r=149}else{r=143;break}}if((r|0)==143){f[e+32>>2]=(((G+Q|0)/(Y|0)|0)>>W)-(q>>W)+(ie((((K+J|0)/(X|0)|0)>>Z)-(V>>Z)|0,$)|0);ee=f[e+64>>2]|0;N=e+36|0;f[N>>2]=ee;re=le;he=ce;r=144;continue}else if((r|0)==151){O=f[e+228>>2]|0;B=e+220|0;w=f[B>>2]|0;O=w+O-((w|0)%(O|0)|0)|0;f[B>>2]=O;B=se;w=ue;r=130;continue}}if((r|0)==146){r=0;te=ie(f[e+8>>2]|0,ee)|0;te=(ie(f[e+12>>2]|0,f[e+28>>2]|0)|0)+te|0;te=te+(ie(f[e+16>>2]|0,re)|0)|0;te=te+(ie(f[e+20>>2]|0,f[e+32>>2]|0)|0)|0;te=(f[e+4>>2]|0)+(te<<1)|0;if(!(n[te>>1]|0))break;else{D=N;ne=ee;ae=re;de=he;r=148;continue}}else if((r|0)==152){j=B+1|0;f[e+24>>2]=j;r=121;continue}}if((r|0)==153)return di|0;n[te>>1]=1;e=1;return e|0}default:{e=0;return e|0}}return 0}function Sr(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0;c=(f[i+(r*5640|0)+420>>2]|0)+1|0;t=Fn(c,232)|0;if(!t){c=0;return c|0}if(!c){c=t;return c|0}o=e+16|0;a=i+(r*5640|0)+5584|0;e=f[o>>2]|0;s=t;l=0;e:while(1){i=Fn(e,16)|0;n=s+196|0;f[n>>2]=i;if(!i){e=5;break}u=f[o>>2]|0;f[s+192>>2]=u;i:do{if(!u)e=0;else{e=(f[a>>2]|0)+4|0;u=Fn(f[e>>2]|0,16)|0;f[i+12>>2]=u;if(!u){e=18;break e}else r=0;while(1){f[i+(r<<4)+8>>2]=f[e>>2];r=r+1|0;e=f[o>>2]|0;if(r>>>0>=e>>>0)break i;i=f[n>>2]|0;e=(f[a>>2]|0)+(r*1080|0)+4|0;u=Fn(f[e>>2]|0,16)|0;f[i+(r<<4)+12>>2]=u;if(!u){e=18;break e}}}}while(0);l=l+1|0;if(l>>>0>=c>>>0){e=32;break}else s=s+232|0}if((e|0)==5){e=t+4|0;i=f[e>>2]|0;if(!i){o=t;u=0}else{zn(i);f[e>>2]=0;o=t;u=0}while(1){l=o+196|0;e=f[l>>2]|0;if(e){s=o+192|0;i=f[s>>2]|0;if(i){a=0;while(1){r=e+12|0;n=f[r>>2]|0;if(n){zn(n);f[r>>2]=0;i=f[s>>2]|0}a=a+1|0;if(a>>>0>=i>>>0)break;else e=e+16|0}e=f[l>>2]|0}zn(e);f[l>>2]=0}u=u+1|0;if((u|0)==(c|0))break;else o=o+232|0}zn(t);c=0;return c|0}else if((e|0)==18){e=t+4|0;i=f[e>>2]|0;if(!i){o=t;u=0}else{zn(i);f[e>>2]=0;o=t;u=0}while(1){l=o+196|0;e=f[l>>2]|0;if(e){s=o+192|0;i=f[s>>2]|0;if(i){a=0;while(1){r=e+12|0;n=f[r>>2]|0;if(n){zn(n);f[r>>2]=0;i=f[s>>2]|0}a=a+1|0;if(a>>>0>=i>>>0)break;else e=e+16|0}e=f[l>>2]|0}zn(e);f[l>>2]=0}u=u+1|0;if((u|0)==(c|0))break;else o=o+232|0}zn(t);c=0;return c|0}else if((e|0)==32)return t|0;return 0}function Tr(e,i,r,t,n,a,s,l,o,u,c,h){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;h=h|0;var d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,P=0,O=0,B=0,I=0,D=0;b=f[(f[i+76>>2]|0)+(r*5640|0)+5584>>2]|0;d=f[e+24>>2]|0;B=f[i+24>>2]|0;O=i+12|0;P=(ie(f[O>>2]|0,(r>>>0)%(B>>>0)|0)|0)+(f[i+4>>2]|0)|0;L=f[e>>2]|0;f[t>>2]=P>>>0>L>>>0?P:L;P=Il(f[O>>2]|0,0,P|0,0)|0;P=P|0-x;O=f[e+8>>2]|0;f[n>>2]=P>>>0<O>>>0?P:O;O=i+16|0;B=(ie(f[O>>2]|0,(r>>>0)/(B>>>0)|0)|0)+(f[i+8>>2]|0)|0;P=f[e+4>>2]|0;f[a>>2]=B>>>0>P>>>0?B:P;B=Il(f[O>>2]|0,0,B|0,0)|0;B=B|0-x;O=f[e+12>>2]|0;f[s>>2]=B>>>0<O>>>0?B:O;f[u>>2]=0;f[c>>2]=0;f[l>>2]=2147483647;f[o>>2]=2147483647;O=e+16|0;if(!(f[O>>2]|0))return;else B=0;while(1){_=f[h+(B<<2)>>2]|0;k=f[d>>2]|0;e=((f[t>>2]|0)+-1+k|0)/(k|0)|0;L=d+4|0;w=f[L>>2]|0;r=((f[a>>2]|0)+-1+w|0)/(w|0)|0;k=(k+-1+(f[n>>2]|0)|0)/(k|0)|0;w=(w+-1+(f[s>>2]|0)|0)/(w|0)|0;P=b+4|0;i=f[P>>2]|0;if(i>>>0>(f[c>>2]|0)>>>0){f[c>>2]=i;i=f[P>>2]|0}if(i){C=Il(e|0,((e|0)<0)<<31>>31|0,-1,-1)|0;R=x;S=Il(r|0,((r|0)<0)<<31>>31|0,-1,-1)|0;T=x;E=Il(k|0,((k|0)<0)<<31>>31|0,-1,-1)|0;A=x;y=Il(w|0,((w|0)<0)<<31>>31|0,-1,-1)|0;M=x;g=0;while(1){i=i+-1|0;k=f[b+812+(g<<2)>>2]|0;p=f[b+944+(g<<2)>>2]|0;f[_>>2]=k;f[_+4>>2]=p;m=f[d>>2]<<k+i;I=f[L>>2]<<p+i;e=f[l>>2]|0;f[l>>2]=(e|0)<(m|0)?e:m;m=f[o>>2]|0;f[o>>2]=(m|0)<(I|0)?m:I;I=Bl(1,0,i|0)|0;m=x;e=Il(C|0,R|0,I|0,m|0)|0;e=Pl(e|0,x|0,i|0)|0;w=Il(S|0,T|0,I|0,m|0)|0;w=Pl(w|0,x|0,i|0)|0;r=Il(E|0,A|0,I|0,m|0)|0;r=Pl(r|0,x|0,i|0)|0;m=Il(y|0,M|0,I|0,m|0)|0;m=Pl(m|0,x|0,i|0)|0;I=Bl(1,0,p|0)|0;v=x;D=Il(m|0,((m|0)<0)<<31>>31|0,-1,-1)|0;v=Il(D|0,x|0,I|0,v|0)|0;v=Pl(v|0,x|0,p|0)|0;if((e|0)==(r|0))e=0;else{r=Il(r|0,((r|0)<0)<<31>>31|0,-1,-1)|0;I=x;D=Bl(1,0,k|0)|0;D=Il(r|0,I|0,D|0,x|0)|0;D=Pl(D|0,x|0,k|0)|0;e=(D<<k)-(e>>k<<k)>>k}D=(w|0)==(m|0)?0:(v<<p)-(w>>p<<p)>>p;f[_+8>>2]=e;f[_+12>>2]=D;e=ie(e,D)|0;if(e>>>0>(f[u>>2]|0)>>>0)f[u>>2]=e;g=g+1|0;if(g>>>0>=(f[P>>2]|0)>>>0)break;else _=_+16|0}}B=B+1|0;if(B>>>0>=(f[O>>2]|0)>>>0)break;else{d=d+52|0;b=b+1080|0}}return}function Cr(e,i,r,t,n,a,s,l,o){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,c=0;u=(f[e+(i*5640|0)+420>>2]|0)+1|0;f[e+(i*5640|0)+500>>2]=f[e+(i*5640|0)+428>>2];f[e+(i*5640|0)+516>>2]=f[e+(i*5640|0)+440>>2];f[e+(i*5640|0)+496>>2]=f[e+(i*5640|0)+424>>2];f[e+(i*5640|0)+512>>2]=f[e+(i*5640|0)+436>>2];f[e+(i*5640|0)+508>>2]=f[e+(i*5640|0)+432>>2];f[e+(i*5640|0)+492>>2]=0;f[e+(i*5640|0)+460>>2]=f[e+(i*5640|0)+456>>2];f[e+(i*5640|0)+504>>2]=0;f[e+(i*5640|0)+520>>2]=s;f[e+(i*5640|0)+524>>2]=r;f[e+(i*5640|0)+528>>2]=t;f[e+(i*5640|0)+532>>2]=n;f[e+(i*5640|0)+536>>2]=a;f[e+(i*5640|0)+540>>2]=l;f[e+(i*5640|0)+544>>2]=o;if(u>>>0<=1)return;e=e+(i*5640|0)+572|0;i=1;while(1){f[e+76>>2]=f[e+4>>2];f[e+92>>2]=f[e+16>>2];f[e+72>>2]=f[e>>2];f[e+88>>2]=f[e+12>>2];c=f[e+8>>2]|0;f[e+84>>2]=c;f[e+36>>2]=f[e+32>>2];f[e+80>>2]=0;f[e+68>>2]=c>>>0>(f[e+-64>>2]|0)>>>0?c:0;f[e+96>>2]=s;f[e+100>>2]=r;f[e+104>>2]=t;f[e+108>>2]=n;f[e+112>>2]=a;f[e+116>>2]=l;f[e+120>>2]=o;i=i+1|0;if((i|0)==(u|0))break;else e=e+148|0}return}function Rr(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0;o=f[i+76>>2]|0;if((e|0)>-1)s=e;else{r=0;return r|0}e:while(1){switch(t[a+s>>0]|0){case 82:{l=3;break e}case 67:{l=5;break e}case 76:{l=7;break e}case 80:{l=9;break e}default:{}}s=s+-1|0}if((l|0)==3)if((f[o+(r*5640|0)+424+(n*148|0)+128>>2]|0)==(f[o+(r*5640|0)+424+(n*148|0)+88>>2]|0))return(Rr(e+-1|0,i,r,n,a)|0)!=0|0;else{r=1;return r|0}else if((l|0)==5)if((f[o+(r*5640|0)+424+(n*148|0)+132>>2]|0)==(f[o+(r*5640|0)+424+(n*148|0)+92>>2]|0))return(Rr(e+-1|0,i,r,n,a)|0)!=0|0;else{r=1;return r|0}else if((l|0)==7)if((f[o+(r*5640|0)+424+(n*148|0)+124>>2]|0)==(f[o+(r*5640|0)+424+(n*148|0)+84>>2]|0))return(Rr(e+-1|0,i,r,n,a)|0)!=0|0;else{r=1;return r|0}else if((l|0)==9){if((f[o+(r*5640|0)+424+(n*148|0)+36>>2]|0)>>>0<2)if((f[o+(r*5640|0)+424+(n*148|0)+136>>2]|0)==(f[o+(r*5640|0)+424+(n*148|0)+96>>2]|0))return(Rr(s+-1|0,i,r,n,a)|0)!=0|0;else{r=1;return r|0}if((f[o+(r*5640|0)+424+(n*148|0)+140>>2]|0)!=(f[o+(r*5640|0)+424+(n*148|0)+104>>2]|0)){r=1;return r|0}if((f[o+(r*5640|0)+424+(n*148|0)+144>>2]|0)==(f[o+(r*5640|0)+424+(n*148|0)+112>>2]|0))return(Rr(s+-1|0,i,r,n,a)|0)!=0|0;else{r=1;return r|0}}return 0}function Lr(e){e=e|0;var i=0,r=0;i=Fn(1,44)|0;if(!i){e=0;return e|0}r=i+40|0;t[r>>0]=t[r>>0]&-2|(e|0)!=0;e=Fn(1,4)|0;f[i+20>>2]=e;if(e){r=i;return r|0}zn(i);r=0;return r|0}function xr(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0.0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0;j=c;c=c+1200|0;U=j;t=f[f[e+20>>2]>>2]|0;F=t+16|0;n=f[F>>2]|0;if(!n){c=j;return}I=t+20|0;D=(f[e+32>>2]|0)+8|0;N=(f[e+28>>2]|0)+88|0;O=e+24|0;B=(i|0)==0;x=(r|0)==0;P=i+-1|0;t=n;L=0;do{l=f[I>>2]|0;o=f[D>>2]|0;C=f[l+(L*52|0)+16>>2]|0;if(o){if(C){e=f[N>>2]|0;a=+((f[(f[(f[O>>2]|0)+24>>2]|0)+(L*52|0)+24>>2]|0)>>>0)*.0625;n=0;do{r=ie(C,n)|0;s=0;do{R=(r+s|0)*3|0;f[U+(n*120|0)+(s*12|0)>>2]=~~(+(f[e+(R<<2)>>2]|0)*a);f[U+(n*120|0)+(s*12|0)+4>>2]=~~(+(f[e+(R+1<<2)>>2]|0)*a);f[U+(n*120|0)+(s*12|0)+8>>2]=~~(+(f[e+(R+2<<2)>>2]|0)*a);s=s+1|0}while(s>>>0<C>>>0);n=n+1|0}while(n>>>0<o>>>0);R=9}}else R=9;if((R|0)==9){R=0;if(C){y=l+(L*52|0)+24|0;T=0;do{M=f[y>>2]|0;E=M+(T*136|0)+24|0;t=f[E>>2]|0;if(t){A=M+(T*136|0)+16|0;S=M+(T*136|0)+20|0;e=f[S>>2]|0;r=f[A>>2]|0;g=0;do{if(ie(e,r)|0){m=M+(T*136|0)+28+(g*36|0)+20|0;v=U+(i*120|0)+(T*12|0)+(g<<2)|0;p=U+(P*120|0)+(T*12|0)+(g<<2)|0;_=0;do{t=f[m>>2]|0;w=ie(f[t+(_*40|0)+20>>2]|0,f[t+(_*40|0)+16>>2]|0)|0;if(w){h=t+(_*40|0)+24|0;d=f[v>>2]|0;k=0;do{o=f[h>>2]|0;u=o+(k*52|0)|0;b=f[o+(k*52|0)+4>>2]|0;t=(f[(f[(f[O>>2]|0)+24>>2]|0)+(L*52|0)+24>>2]|0)-(f[o+(k*52|0)+28>>2]|0)|0;if(!B){e=f[p>>2]|0;r=d-e|0;if((e|0)<=(t|0)){r=r+(e-t)|0;r=(r|0)<0?0:r}}else{f[o+(k*52|0)+44>>2]=0;r=(d|0)>(t|0)?d-t|0:0}l=o+(k*52|0)+44|0;n=f[l>>2]|0;s=(n|0)==0;if(s)if(!r)r=0;else r=(r*3|0)+-2|0;else r=(r*3|0)+n|0;f[b+(i*24|0)>>2]=r-n;do{if((r|0)!=(n|0)){e=f[o+(k*52|0)+8>>2]|0;t=f[e+((r+-1|0)*24|0)>>2]|0;if(s)f[b+(i*24|0)+16>>2]=f[u>>2];else{o=f[e+((n+-1|0)*24|0)>>2]|0;f[b+(i*24|0)+16>>2]=(f[u>>2]|0)+o;t=t-o|0}f[b+(i*24|0)+4>>2]=t;if(x)break;f[l>>2]=r}}while(0);k=k+1|0}while(k>>>0<w>>>0);e=f[S>>2]|0;r=f[A>>2]|0}_=_+1|0}while(_>>>0<(ie(e,r)|0)>>>0);t=f[E>>2]|0}g=g+1|0}while(g>>>0<t>>>0)}T=T+1|0}while(T>>>0<C>>>0);t=f[F>>2]|0}}L=L+1|0}while(L>>>0<t>>>0);c=j;return}function Pr(e,i,r,t){e=e|0;i=i|0;r=+r;t=t|0;var n=0,a=0.0,s=0,l=0,o=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0;e=f[f[e+20>>2]>>2]|0;P=e+40+(i<<3)|0;u[P>>3]=0.0;O=e+16|0;n=f[O>>2]|0;if(!n)return;L=e+20|0;x=(i|0)==0;R=(t|0)==0;e=n;C=0;do{n=f[L>>2]|0;T=f[n+(C*52|0)+16>>2]|0;if(T){g=n+(C*52|0)+24|0;S=0;do{y=f[g>>2]|0;M=y+(S*136|0)+24|0;e=f[M>>2]|0;if(e){E=y+(S*136|0)+16|0;A=y+(S*136|0)+20|0;n=f[A>>2]|0;t=f[E>>2]|0;p=0;do{if(ie(n,t)|0){v=y+(S*136|0)+28+(p*36|0)+20|0;m=0;do{e=f[v>>2]|0;_=ie(f[e+(m*40|0)+20>>2]|0,f[e+(m*40|0)+16>>2]|0)|0;if(_){d=e+(m*40|0)+24|0;w=0;do{o=f[d>>2]|0;c=o+(w*52|0)|0;b=f[o+(w*52|0)+4>>2]|0;k=o+(w*52|0)+44|0;if(x){f[k>>2]=0;h=0}else h=f[k>>2]|0;t=f[o+(w*52|0)+48>>2]|0;if(h>>>0<t>>>0){s=f[o+(w*52|0)+8>>2]|0;e=h;l=h;do{n=f[s+(l*24|0)>>2]|0;a=+u[s+(l*24|0)+8>>3];if(e){I=e+-1|0;a=a-+u[s+(I*24|0)+8>>3];n=n-(f[s+(I*24|0)>>2]|0)|0}do{if(!n){if(!(a!=0.0))break;e=l+1|0}else{if(!(r-a/+(n>>>0)<2.220446049250313e-16))break;e=l+1|0}}while(0);l=l+1|0}while(l>>>0<t>>>0);s=e;f[b+(i*24|0)>>2]=s-h;if((s|0)!=(h|0)){t=s+-1|0;n=f[o+(w*52|0)+8>>2]|0;e=f[n+(t*24|0)>>2]|0;if(!h){f[b+(i*24|0)+16>>2]=f[c>>2];a=+u[n+(t*24|0)+8>>3]}else{h=h+-1|0;I=f[n+(h*24|0)>>2]|0;f[b+(i*24|0)+16>>2]=(f[c>>2]|0)+I;a=+u[n+(t*24|0)+8>>3]-+u[n+(h*24|0)+8>>3];e=e-I|0}f[b+(i*24|0)+4>>2]=e;u[b+(i*24|0)+8>>3]=a;u[P>>3]=a+ +u[P>>3];if(!R)f[k>>2]=s}else B=26}else{f[b+(i*24|0)>>2]=0;B=26}if((B|0)==26){B=0;u[b+(i*24|0)+8>>3]=0.0}w=w+1|0}while(w>>>0<_>>>0);n=f[A>>2]|0;t=f[E>>2]|0}m=m+1|0}while(m>>>0<(ie(n,t)|0)>>>0);e=f[M>>2]|0}p=p+1|0}while(p>>>0<e>>>0)}S=S+1|0}while(S>>>0<T>>>0);e=f[O>>2]|0}C=C+1|0}while(C>>>0<e>>>0);return}function Or(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,h=0,d=0.0,b=0.0,k=0.0,w=0.0,_=0.0,m=0.0,v=0,p=0,g=0,y=0,M=0.0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0.0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,X=0,V=0,G=0,K=0,W=0;K=c;c=c+800|0;G=K;Y=f[e+28>>2]|0;X=f[f[e+20>>2]>>2]|0;V=f[e+32>>2]|0;j=X+24|0;f[j>>2]=0;H=f[X+16>>2]|0;if(!H){l=0;I=0.0;d=0.0;k=1797693134862315708145274.0e284}else{F=f[X+20>>2]|0;U=f[(f[e+24>>2]|0)+24>>2]|0;l=0;z=0;b=0.0;d=0.0;k=1797693134862315708145274.0e284;do{B=F+(z*52|0)+48|0;f[B>>2]=0;D=f[F+(z*52|0)+16>>2]|0;if(!D)h=0;else{N=f[F+(z*52|0)+24>>2]|0;h=0;O=0;do{L=f[N+(O*136|0)+24>>2]|0;if(L){x=ie(f[N+(O*136|0)+20>>2]|0,f[N+(O*136|0)+16>>2]|0)|0;P=(x|0)==0;R=0;do{if(!P){C=f[N+(O*136|0)+28+(R*36|0)+20>>2]|0;T=0;do{A=ie(f[C+(T*40|0)+20>>2]|0,f[C+(T*40|0)+16>>2]|0)|0;if(A){S=f[C+(T*40|0)+24>>2]|0;E=0;do{g=f[S+(E*52|0)+48>>2]|0;if(g){y=f[S+(E*52|0)+8>>2]|0;p=0;do{v=f[y+(p*24|0)>>2]|0;w=+u[y+(p*24|0)+8>>3];if(p){W=p+-1|0;w=w-+u[y+(W*24|0)+8>>3];v=v-(f[y+(W*24|0)>>2]|0)|0}do{if(v){w=w/+(v|0);k=w<k?w:k;if(!(w>b))break;b=w}}while(0);p=p+1|0}while(p>>>0<g>>>0)}W=ie((f[S+(E*52|0)+24>>2]|0)-(f[S+(E*52|0)+16>>2]|0)|0,(f[S+(E*52|0)+20>>2]|0)-(f[S+(E*52|0)+12>>2]|0)|0)|0;l=W+l|0;h=W+h|0;E=E+1|0}while(E>>>0<A>>>0);f[j>>2]=l;f[B>>2]=h}T=T+1|0}while(T>>>0<x>>>0)}R=R+1|0}while(R>>>0<L>>>0)}O=O+1|0}while(O>>>0<D>>>0)}I=+(1<<f[U+(z*52|0)+24>>2]|0)+-1.0;d=d+ +(h|0)*(I*I);z=z+1|0}while(z>>>0<H>>>0);I=b}B=(s|0)!=0;if(B){z=f[e+36>>2]|0;H=f[s+88>>2]|0;f[H+(z*592|0)+552>>2]=l;u[H+(z*592|0)+560>>3]=+u[X+32>>3];l=V+8|0;W=Nn(f[l>>2]<<3)|0;f[H+(z*592|0)>>2]=W;if(!W){W=0;c=K;return W|0}}else l=V+8|0;if(!(f[l>>2]|0)){W=1;c=K;return W|0}A=X+32|0;S=Y+93|0;T=e+36|0;C=s+88|0;R=X+40|0;L=e+24|0;x=e+8|0;P=e+16|0;O=0;while(1){b=+o[V+20+(O<<2)>>2];if(b!=0.0){y=~~+ee(+b)>>>0;y=y>>>0<a>>>0?y:a}else y=a;m=+o[V+5184+(O<<2)>>2];M=+u[A>>3]-d/+q(10.0,+(m/10.0));W=t[S>>0]|0;if(!((W&1)!=0&b>0.0)?!((W&4)!=0&m>0.0):0)b=k;else{E=Ka(f[L>>2]|0,Y)|0;if(!E){l=0;h=57;break}g=O+1|0;h=G+(O+-1<<3)|0;v=X+40+(O<<3)|0;if(!O){_=I;h=0;m=k;w=0.0;do{b=(m+_)*.5;Pr(e,0,b,0);do{if(t[S>>0]&4){if(((n[Y>>1]|0)+-3&65535)>=4){W=+u[R>>3]<M;_=W?b:_;m=W?m:b;w=W?b:w;break}if(!(Va(E,f[T>>2]|0,X,g,i,r,y,s,f[x>>2]|0,f[e>>2]|0,f[P>>2]|0,0)|0))m=b;else{W=+u[R>>3]<M;_=W?b:_;m=W?m:b;w=W?b:w}}else{W=(Va(E,f[T>>2]|0,X,g,i,r,y,s,f[x>>2]|0,f[e>>2]|0,f[P>>2]|0,0)|0)==0;_=W?_:b;m=W?b:m;w=W?w:b}}while(0);h=h+1|0}while((h|0)!=128)}else{_=I;p=0;m=k;w=0.0;do{b=(m+_)*.5;Pr(e,O,b,0);do{if(t[S>>0]&4){if(((n[Y>>1]|0)+-3&65535)>=4){W=+u[h>>3]+ +u[v>>3]<M;_=W?b:_;m=W?m:b;w=W?b:w;break}if(!(Va(E,f[T>>2]|0,X,g,i,r,y,s,f[x>>2]|0,f[e>>2]|0,f[P>>2]|0,0)|0))m=b;else{W=+u[h>>3]+ +u[v>>3]<M;_=W?b:_;m=W?m:b;w=W?b:w}}else{W=(Va(E,f[T>>2]|0,X,g,i,r,y,s,f[x>>2]|0,f[e>>2]|0,f[P>>2]|0,0)|0)==0;_=W?_:b;m=W?b:m;w=W?w:b}}while(0);p=p+1|0}while((p|0)!=128)}Wa(E);b=w==0.0?b:w}if(B)u[(f[(f[C>>2]|0)+((f[T>>2]|0)*592|0)>>2]|0)+(O<<3)>>3]=b;Pr(e,O,b,1);if(!O)b=+u[R>>3];else b=+u[G+(O+-1<<3)>>3]+ +u[X+40+(O<<3)>>3];u[G+(O<<3)>>3]=b;O=O+1|0;if(O>>>0>=(f[l>>2]|0)>>>0){l=1;h=57;break}}if((h|0)==57){c=K;return l|0}return 0}function Br(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0;f[e+24>>2]=i;f[e+28>>2]=r;n=Fn(1,848)|0;t=e+20|0;f[f[t>>2]>>2]=n;if(!n){e=0;return e|0}n=i+16|0;a=Fn(f[n>>2]|0,52)|0;i=f[f[t>>2]>>2]|0;f[i+20>>2]=a;if(!a){a=0;return a|0}f[i+16>>2]=f[n>>2];f[e>>2]=f[r+84>>2];a=1;return a|0}function Ir(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0;if(!e)return;m=e+20|0;i=f[m>>2]|0;do{if(i){_=(t[e+40>>0]&1)==0?3:4;r=f[i>>2]|0;if(r){b=r+20|0;u=r+16|0;if(f[u>>2]|0){h=0;d=f[b>>2]|0;while(1){c=d+24|0;i=f[c>>2]|0;if(i){l=f[d+28>>2]|0;o=(l>>>0)/136|0;if(l>>>0>135){l=0;while(1){s=i+48|0;r=f[s>>2]|0;if(r){n=f[i+52>>2]|0;a=(n>>>0)/40|0;if(n>>>0>39){n=0;while(1){v=r+32|0;ta(f[v>>2]|0);f[v>>2]=0;v=r+36|0;ta(f[v>>2]|0);f[v>>2]=0;yo[_&7](r);n=n+1|0;if(n>>>0>=a>>>0)break;else r=r+40|0}r=f[s>>2]|0}zn(r);f[s>>2]=0}s=i+84|0;r=f[s>>2]|0;if(r){v=f[i+88>>2]|0;a=(v>>>0)/40|0;if(v>>>0>39){n=0;while(1){v=r+32|0;ta(f[v>>2]|0);f[v>>2]=0;v=r+36|0;ta(f[v>>2]|0);f[v>>2]=0;yo[_&7](r);n=n+1|0;if(n>>>0>=a>>>0)break;else r=r+40|0}r=f[s>>2]|0}zn(r);f[s>>2]=0}s=i+120|0;r=f[s>>2]|0;if(r){v=f[i+124>>2]|0;a=(v>>>0)/40|0;if(v>>>0>39){n=0;while(1){v=r+32|0;ta(f[v>>2]|0);f[v>>2]=0;v=r+36|0;ta(f[v>>2]|0);f[v>>2]=0;yo[_&7](r);n=n+1|0;if(n>>>0>=a>>>0)break;else r=r+40|0}r=f[s>>2]|0}zn(r);f[s>>2]=0}l=l+1|0;if(l>>>0>=o>>>0)break;else i=i+136|0}i=f[c>>2]|0}zn(i);f[c>>2]=0}if((f[d+36>>2]|0)!=0?(k=d+32|0,w=f[k>>2]|0,(w|0)!=0):0){jn(w);f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0}h=h+1|0;if(h>>>0>=(f[u>>2]|0)>>>0)break;else d=d+52|0}}zn(f[b>>2]|0);f[b>>2]=0;zn(f[f[m>>2]>>2]|0);i=f[m>>2]|0;f[i>>2]=0;if(!i)break}zn(i);f[m>>2]=0}}while(0);zn(e);return}function Dr(e){e=e|0;var i=0,r=0,t=0,n=0,a=0;t=e+32|0;n=f[t>>2]|0;i=e+40|0;r=f[i>>2]|0;if(n){a=e+44|0;if(r>>>0<=(f[a>>2]|0)>>>0){e=1;return e|0}if(f[e+36>>2]|0){jn(n);n=Un(f[i>>2]|0)|0;f[t>>2]=n;if(!n){f[a>>2]=0;f[i>>2]=0;f[e+36>>2]=0;e=0;return e|0}else{f[a>>2]=f[i>>2];f[e+36>>2]=1;e=1;return e|0}}}a=Un(r)|0;f[t>>2]=a;if(!a){e=0;return e|0}f[e+44>>2]=f[i>>2];f[e+36>>2]=1;e=1;return e|0}function Nr(e,i,r){e=e|0;i=i|0;r=r|0;return Gr(e,i,1,1.0,52,r)|0}function Fr(e,i,r){e=e|0;i=i|0;r=r|0;return Gr(e,i,0,.5,56,r)|0}function Ur(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0,l=0;r=f[e+24>>2]|0;n=f[r+16>>2]|0;if(!n){a=0;return a|0}a=0;i=0;t=f[r+24>>2]|0;r=f[(f[f[e+20>>2]>>2]|0)+20>>2]|0;while(1){l=f[t+24>>2]|0;l=((l&7|0)!=0&1)+(l>>>3)|0;s=f[r+24>>2]|0;e=(f[r+20>>2]|0)+-1|0;i=(ie(ie((l|0)==3?4:l,(f[s+(e*136|0)+8>>2]|0)-(f[s+(e*136|0)>>2]|0)|0)|0,(f[s+(e*136|0)+12>>2]|0)-(f[s+(e*136|0)+4>>2]|0)|0)|0)+i|0;a=a+1|0;if(a>>>0>=n>>>0)break;else{t=t+52|0;r=r+52|0}}return i|0}function jr(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0;E=c;c=c+16|0;y=E;if(!(f[e+8>>2]|0)){f[e+36>>2]=i;p=e+28|0;l=f[(f[p>>2]|0)+76>>2]|0;M=e+32|0;f[M>>2]=l+(i*5640|0);g=(s|0)==0;v=e+20|0;if(!g){o=f[(f[f[v>>2]>>2]|0)+20>>2]|0;b=f[l+(i*5640|0)+5584>>2]|0;k=o+16|0;if(!(f[k>>2]|0)){o=s+88|0;l=0}else{u=f[o+24>>2]|0;o=s+88|0;h=f[o>>2]|0;d=0;l=0;do{m=u+(d*136|0)+16|0;f[h+(i*592|0)+20+(d<<2)>>2]=f[m>>2];_=u+(d*136|0)+20|0;f[h+(i*592|0)+152+(d<<2)>>2]=f[_>>2];l=(ie(f[_>>2]|0,f[m>>2]|0)|0)+l|0;f[h+(i*592|0)+284+(d<<2)>>2]=f[b+812+(d<<2)>>2];f[h+(i*592|0)+416+(d<<2)>>2]=f[b+944+(d<<2)>>2];d=d+1|0}while(d>>>0<(f[k>>2]|0)>>>0)}m=Fn(ie(ie(f[s+52>>2]|0,l)|0,f[s+56>>2]|0)|0,32)|0;f[(f[o>>2]|0)+(i*592|0)+548>>2]=m;if(!m){e=0;c=E;return e|0}}l=f[f[v>>2]>>2]|0;m=l+16|0;if(!(f[m>>2]|0)){d=f[M>>2]|0;u=0;o=f[l+20>>2]|0}else{d=f[M>>2]|0;o=f[l+20>>2]|0;i=0;w=f[d+5584>>2]|0;_=o;while(1){b=f[_+32>>2]|0;k=ie((f[_+12>>2]|0)-(f[_+4>>2]|0)|0,(f[_+8>>2]|0)-(f[_>>2]|0)|0)|0;l=(k|0)==0;if((f[w+20>>2]|0)==1){if(!l){u=w+1076|0;h=0;l=b;while(1){f[l>>2]=(f[l>>2]|0)-(f[u>>2]|0);h=h+1|0;if((h|0)==(k|0))break;else l=l+4|0}}}else if(!l){u=w+1076|0;h=0;l=b;while(1){f[l>>2]=(f[l>>2]|0)-(f[u>>2]|0)<<11;h=h+1|0;if((h|0)==(k|0))break;else l=l+4|0}}i=i+1|0;u=f[m>>2]|0;if(i>>>0>=u>>>0)break;else{w=w+1080|0;_=_+52|0}}}b=ie((f[o+12>>2]|0)-(f[o+4>>2]|0)|0,(f[o+8>>2]|0)-(f[o>>2]|0)|0)|0;e:do{switch(f[d+16>>2]|0){case 0:break;case 2:{if(f[d+5608>>2]|0){h=Nn(u<<2)|0;if(!h){e=0;c=E;return e|0}l=f[m>>2]|0;if(!l)l=0;else{u=0;while(1){f[h+(u<<2)>>2]=f[o+32>>2];u=u+1|0;if((u|0)==(l|0))break;else o=o+52|0}}m=(_r(f[(f[M>>2]|0)+5608>>2]|0,b,h,l,f[(f[(f[e+24>>2]|0)+24>>2]|0)+32>>2]|0)|0)==0;zn(h);if(m){e=0;c=E;return e|0}}break}default:{u=f[o+32>>2]|0;h=f[o+84>>2]|0;l=f[o+136>>2]|0;if(!(f[(f[d+5584>>2]|0)+20>>2]|0)){kr(u,h,l,b);break e}else{dr(u,h,l,b);break e}}}}while(0);l=f[f[v>>2]>>2]|0;o=l+16|0;e:do{if(f[o>>2]|0){u=0;h=f[(f[M>>2]|0)+5584>>2]|0;l=f[l+20>>2]|0;i:while(1){switch(f[h+20>>2]|0){case 1:{if(!(ya(l)|0)){l=0;o=54;break i}break}case 0:{if(!(Sa(l)|0)){l=0;o=54;break i}break}default:{}}u=u+1|0;if(u>>>0>=(f[o>>2]|0)>>>0)break e;else{h=h+1080|0;l=l+52|0}}if((o|0)==54){c=E;return l|0}}}while(0);l=f[M>>2]|0;o=Ua(1)|0;if(!o){e=0;c=E;return e|0}do{if((f[l+16>>2]|0)==1)if(!(f[(f[l+5584>>2]|0)+20>>2]|0)){u=hr()|0;h=3;break}else{u=cr()|0;h=3;break}else{u=f[l+5600>>2]|0;h=f[(f[e+24>>2]|0)+16>>2]|0}}while(0);v=za(o,f[f[v>>2]>>2]|0,l,u,h)|0;ja(o);if(!v){e=0;c=E;return e|0}l=f[p>>2]|0;f[y>>2]=0;if(!g)f[s+12>>2]=0;if(!(t[l+93>>0]&5)){if(f[(f[M>>2]|0)+8>>2]|0){l=0;do{xr(e,l,1);l=l+1|0}while(l>>>0<(f[(f[M>>2]|0)+8>>2]|0)>>>0)}}else if(!(Or(e,r,y,a,s)|0)){e=0;c=E;return e|0}}if(s)f[s+12>>2]=1;l=Ka(f[e+24>>2]|0,f[e+28>>2]|0)|0;if(!l)l=1;else{e=Va(l,f[e+36>>2]|0,f[f[e+20>>2]>>2]|0,f[(f[e+32>>2]|0)+8>>2]|0,r,n,a,s,f[e+4>>2]|0,f[e>>2]|0,f[e+16>>2]|0,1)|0;Wa(l);l=(e|0)==0}e=l&1^1;c=E;return e|0}function Hr(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0;p=c;c=c+16|0;h=p+8|0;u=p;l=p+12|0;s=e+36|0;f[s>>2]=t;v=f[e+28>>2]|0;k=e+32|0;f[k>>2]=(f[v+76>>2]|0)+(t*5640|0);f[l>>2]=0;b=e+24|0;t=Ka(f[b>>2]|0,v)|0;if(!t){v=0;c=p;return v|0}d=e+20|0;v=Ga(t,f[s>>2]|0,f[f[d>>2]>>2]|0,i,l,r,n,a)|0;Wa(t);if(!v){v=0;c=p;return v|0}t=f[f[d>>2]>>2]|0;e=f[(f[k>>2]|0)+5584>>2]|0;s=f[t+20>>2]|0;r=Ua(0)|0;if(!r){v=0;c=p;return v|0}l=t+16|0;e:do{if(f[l>>2]|0){n=0;t=s;while(1){if(!(Ha(r,t,e)|0))break;n=n+1|0;if(n>>>0>=(f[l>>2]|0)>>>0)break e;else{e=e+1080|0;t=t+52|0}}ja(r);v=0;c=p;return v|0}}while(0);ja(r);t=f[f[d>>2]>>2]|0;s=t+16|0;do{if(f[s>>2]|0){l=0;n=f[(f[b>>2]|0)+24>>2]|0;r=f[(f[k>>2]|0)+5584>>2]|0;e=f[t+20>>2]|0;while(1){t=(f[n+36>>2]|0)+1|0;if((f[r+20>>2]|0)==1){if(!(Ma(e,t)|0)){t=0;e=49;break}}else if(!(La(e,t)|0)){t=0;e=49;break}l=l+1|0;if(l>>>0>=(f[s>>2]|0)>>>0){e=14;break}else{n=n+52|0;r=r+1080|0;e=e+52|0}}if((e|0)==14){t=f[f[d>>2]>>2]|0;break}else if((e|0)==49){c=p;return t|0}}}while(0);l=f[k>>2]|0;e=f[t+20>>2]|0;s=f[l+16>>2]|0;do{if(s){i=ie((f[e+12>>2]|0)-(f[e+4>>2]|0)|0,(f[e+8>>2]|0)-(f[e>>2]|0)|0)|0;r=t+16|0;t=f[r>>2]|0;if(t>>>0<=2){f[h>>2]=t;Ht(a,1,19703,h)|0;break}if((ie((f[e+64>>2]|0)-(f[e+56>>2]|0)|0,(f[e+60>>2]|0)-(f[e+52>>2]|0)|0)|0)>=(i|0)?(ie((f[e+116>>2]|0)-(f[e+108>>2]|0)|0,(f[e+112>>2]|0)-(f[e+104>>2]|0)|0)|0)>=(i|0):0){if((s|0)!=2){t=f[e+32>>2]|0;if((f[(f[l+5584>>2]|0)+20>>2]|0)==1){br(t,f[e+84>>2]|0,f[e+136>>2]|0,i);break}else{wr(t,f[e+84>>2]|0,f[e+136>>2]|0,i);break}}n=l+5604|0;if(!(f[n>>2]|0))break;l=Nn(t<<2)|0;if(!l){v=0;c=p;return v|0}t=f[r>>2]|0;if(!t)t=0;else{s=0;while(1){f[l+(s<<2)>>2]=f[e+32>>2];s=s+1|0;if((s|0)==(t|0))break;else e=e+52|0}}v=(mr(f[n>>2]|0,i,l,t,f[(f[(f[b>>2]|0)+24>>2]|0)+32>>2]|0)|0)==0;zn(l);if(v)t=0;else break;c=p;return t|0}Ht(a,1,19642,u)|0;v=0;c=p;return v|0}}while(0);t=f[f[d>>2]>>2]|0;m=t+16|0;if(!(f[m>>2]|0)){v=1;c=p;return v|0}v=0;_=f[(f[b>>2]|0)+24>>2]|0;w=f[(f[k>>2]|0)+5584>>2]|0;k=f[t+20>>2]|0;while(1){b=f[k+24>>2]|0;a=f[_+36>>2]|0;s=f[b+(a*136|0)+8>>2]|0;l=f[b+(a*136|0)>>2]|0;d=s-l|0;n=f[b+(a*136|0)+12>>2]|0;a=f[b+(a*136|0)+4>>2]|0;b=(f[k+8>>2]|0)-(f[k>>2]|0)-d|0;t=f[_+24>>2]|0;if(!(f[_+32>>2]|0)){t=1<<t;h=0}else{h=1<<t+-1;t=h;h=0-h|0}u=t+-1|0;t=f[k+32>>2]|0;e=(n|0)==(a|0);if((f[w+20>>2]|0)==1){if(!e){r=(s|0)==(l|0);i=w+1076|0;l=n-a|0;n=0;while(1){if(!r){e=0;s=t;while(1){a=(f[i>>2]|0)+(f[s>>2]|0)|0;f[s>>2]=(a|0)<(h|0)?h:(a|0)>(u|0)?u:a;e=e+1|0;if((e|0)==(d|0))break;else s=s+4|0}t=t+(d<<2)|0}n=n+1|0;if((n|0)==(l|0))break;else t=t+(b<<2)|0}}}else if(!e){r=(s|0)==(l|0);i=w+1076|0;l=n-a|0;n=0;while(1){if(!r){e=0;s=t;while(1){a=Es(+o[s>>2])|0;a=(f[i>>2]|0)+a|0;f[s>>2]=(a|0)<(h|0)?h:(a|0)>(u|0)?u:a;e=e+1|0;if((e|0)==(d|0))break;else s=s+4|0}t=t+(d<<2)|0}n=n+1|0;if((n|0)==(l|0))break;else t=t+(b<<2)|0}}v=v+1|0;if(v>>>0>=(f[m>>2]|0)>>>0){t=1;break}else{_=_+52|0;w=w+1080|0;k=k+52|0}}c=p;return t|0}function zr(e,i,r){e=e|0;i=i|0;r=r|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0;w=e+24|0;h=f[w>>2]|0;s=f[h+16>>2]|0;c=(s|0)==0;if(c){w=1;return w|0}l=0;a=0;o=f[h+24>>2]|0;u=f[(f[f[e+20>>2]>>2]|0)+20>>2]|0;while(1){d=f[o+24>>2]|0;d=((d&7|0)!=0&1)+(d>>>3)|0;b=f[u+24>>2]|0;k=(f[u+20>>2]|0)+-1|0;a=(ie(ie((d|0)==3?4:d,(f[b+(k*136|0)+8>>2]|0)-(f[b+(k*136|0)>>2]|0)|0)|0,(f[b+(k*136|0)+12>>2]|0)-(f[b+(k*136|0)+4>>2]|0)|0)|0)+a|0;l=l+1|0;if((l|0)==(s|0))break;else{o=o+52|0;u=u+52|0}}a=a>>>0>r>>>0;if(a|c){w=a&1^1;return w|0}k=0;b=f[h+24>>2]|0;d=f[(f[f[e+20>>2]>>2]|0)+20>>2]|0;while(1){c=f[b+24>>2]|0;e=f[d+24>>2]|0;r=f[b+36>>2]|0;l=f[e+(r*136|0)+8>>2]|0;o=f[e+(r*136|0)>>2]|0;h=l-o|0;u=f[e+(r*136|0)+12>>2]|0;r=f[e+(r*136|0)+4>>2]|0;e=(f[d+8>>2]|0)-(f[d>>2]|0)-h|0;c=((c&7|0)!=0&1)+(c>>>3)|0;e:do{switch(((c|0)==3?4:c)|0){case 1:{a=f[d+32>>2]|0;s=(u|0)==(r|0);if(!(f[b+32>>2]|0)){if(s)break e;c=(l|0)==(o|0);u=u-r|0;r=0;while(1){if(!c){o=i+h|0;l=0;s=a;while(1){t[i>>0]=f[s>>2];l=l+1|0;if((l|0)==(h|0))break;else{i=i+1|0;s=s+4|0}}i=o;a=a+(h<<2)|0}r=r+1|0;if((r|0)==(u|0))break;else a=a+(e<<2)|0}}else{if(s)break e;c=(l|0)==(o|0);u=u-r|0;r=0;while(1){if(!c){o=i+h|0;l=0;s=a;while(1){t[i>>0]=f[s>>2];l=l+1|0;if((l|0)==(h|0))break;else{i=i+1|0;s=s+4|0}}i=o;a=a+(h<<2)|0}r=r+1|0;if((r|0)==(u|0))break;else a=a+(e<<2)|0}}break}case 2:{a=f[d+32>>2]|0;s=(u|0)==(r|0);if(!(f[b+32>>2]|0)){if(!s){c=(l|0)==(o|0);u=u-r|0;r=0;while(1){if(!c){o=i+(h<<1)|0;l=0;s=a;while(1){n[i>>1]=f[s>>2];l=l+1|0;if((l|0)==(h|0))break;else{i=i+2|0;s=s+4|0}}i=o;a=a+(h<<2)|0}r=r+1|0;if((r|0)==(u|0))break;else a=a+(e<<2)|0}}}else if(!s){c=(l|0)==(o|0);u=u-r|0;r=0;while(1){if(!c){o=i+(h<<1)|0;l=0;s=a;while(1){n[i>>1]=f[s>>2];l=l+1|0;if((l|0)==(h|0))break;else{i=i+2|0;s=s+4|0}}i=o;a=a+(h<<2)|0}r=r+1|0;if((r|0)==(u|0))break;else a=a+(e<<2)|0}}break}case 4:{if((u|0)!=(r|0)){c=(l|0)==(o|0);u=u-r|0;r=0;a=f[d+32>>2]|0;while(1){if(!c){o=i+(h<<2)|0;l=0;s=a;while(1){f[i>>2]=f[s>>2];l=l+1|0;if((l|0)==(h|0))break;else{i=i+4|0;s=s+4|0}}i=o;a=a+(h<<2)|0}r=r+1|0;if((r|0)==(u|0))break;else a=a+(e<<2)|0}}break}default:{}}}while(0);k=k+1|0;if(k>>>0>=(f[(f[w>>2]|0)+16>>2]|0)>>>0){i=1;break}else{b=b+52|0;d=d+52|0}}return i|0}function Yr(e){e=e|0;var i=0,r=0,t=0,n=0,a=0;r=f[e+24>>2]|0;n=f[r+16>>2]|0;if(!n){a=0;return a|0}a=0;i=0;t=f[r+24>>2]|0;r=f[(f[f[e+20>>2]>>2]|0)+20>>2]|0;while(1){e=f[t+24>>2]|0;e=((e&7|0)!=0&1)+(e>>>3)|0;i=(ie(ie((f[r+12>>2]|0)-(f[r+4>>2]|0)|0,(f[r+8>>2]|0)-(f[r>>2]|0)|0)|0,(e|0)==3?4:e)|0)+i|0;a=a+1|0;if(a>>>0>=n>>>0)break;else{t=t+52|0;r=r+52|0}}return i|0}function qr(e,i,r){e=e|0;i=i|0;r=r|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0;b=f[e+24>>2]|0;w=b+16|0;o=f[w>>2]|0;d=(o|0)==0;if(d)l=0;else{u=0;l=0;c=f[b+24>>2]|0;h=f[(f[f[e+20>>2]>>2]|0)+20>>2]|0;while(1){k=f[c+24>>2]|0;k=((k&7|0)!=0&1)+(k>>>3)|0;l=(ie(ie((f[h+12>>2]|0)-(f[h+4>>2]|0)|0,(f[h+8>>2]|0)-(f[h>>2]|0)|0)|0,(k|0)==3?4:k)|0)+l|0;u=u+1|0;if((u|0)==(o|0))break;else{c=c+52|0;h=h+52|0}}}l=(l|0)!=(r|0);if(l|d){w=l&1^1;return w|0}k=0;d=f[b+24>>2]|0;r=f[(f[f[e+20>>2]>>2]|0)+20>>2]|0;while(1){e=f[d+24>>2]|0;l=(f[r+8>>2]|0)-(f[r>>2]|0)|0;o=(f[r+12>>2]|0)-(f[r+4>>2]|0)|0;h=ie(o,l)|0;e=((e&7|0)!=0&1)+(e>>>3)|0;e:do{switch(((e|0)==3?4:e)|0){case 1:{o=f[r+32>>2]|0;l=(h|0)==0;if(!(f[d+32>>2]|0)){if(l)break e;else{u=0;l=o;o=i}while(1){f[l>>2]=a[o>>0];u=u+1|0;if((u|0)==(h|0))break;else{l=l+4|0;o=o+1|0}}i=i+h|0;break e}else{if(l)break e;else{u=0;l=o;o=i}while(1){f[l>>2]=t[o>>0];u=u+1|0;if((u|0)==(h|0))break;else{l=l+4|0;o=o+1|0}}i=i+h|0;break e}}case 2:{c=f[r+32>>2]|0;u=(h|0)==0;if(!(f[d+32>>2]|0)){if(!u){u=i+(ie(o<<1,l)|0)|0;o=0;l=c;while(1){f[l>>2]=s[i>>1];o=o+1|0;if((o|0)==(h|0))break;else{l=l+4|0;i=i+2|0}}i=u}}else if(!u){u=i+(ie(o<<1,l)|0)|0;o=0;l=c;while(1){f[l>>2]=n[i>>1];o=o+1|0;if((o|0)==(h|0))break;else{l=l+4|0;i=i+2|0}}i=u}break}case 4:{if(h){u=i+(ie(o<<2,l)|0)|0;l=0;o=f[r+32>>2]|0;while(1){f[o>>2]=f[i>>2];l=l+1|0;if((l|0)==(h|0))break;else{o=o+4|0;i=i+4|0}}i=u}break}default:{}}}while(0);k=k+1|0;if(k>>>0>=(f[w>>2]|0)>>>0){i=1;break}else{d=d+52|0;r=r+52|0}}return i|0}function Xr(e){e=e|0;var i=0,r=0,t=0,n=0,a=0;a=e+24|0;i=f[a>>2]|0;if(!i)return;n=f[e+28>>2]|0;t=(n>>>0)/52|0;if(n>>>0>51){n=0;while(1){e=f[i>>2]|0;if(e){zn(e+-1|0);f[i>>2]=0}e=i+4|0;r=f[e>>2]|0;if(r){zn(r);f[e>>2]=0}e=i+8|0;r=f[e>>2]|0;if(r){zn(r);f[e>>2]=0}n=n+1|0;if(n>>>0>=t>>>0)break;else i=i+52|0}i=f[a>>2]|0}zn(i);f[a>>2]=0;return}function Vr(e){e=e|0;var i=0,r=0,t=0,n=0,a=0;a=e+24|0;i=f[a>>2]|0;if(!i)return;n=f[e+28>>2]|0;t=(n>>>0)/56|0;if(n>>>0>55){n=0;while(1){e=f[i>>2]|0;if(e){zn(e);f[i>>2]=0}r=i+4|0;e=f[r>>2]|0;if(e){zn(e);f[r>>2]=0}n=n+1|0;if(n>>>0>=t>>>0)break;else i=i+56|0}i=f[a>>2]|0}zn(i);f[a>>2]=0;return}function Gr(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=+n;a=a|0;s=s|0;var l=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0,V=0,G=0,K=0,W=0,Z=0,J=0,Q=0,$=0,ee=0,re=0,te=0,ne=0,fe=0,ae=0,se=0,le=0,oe=0,ue=0,ce=0,he=0,de=0,be=0,ke=0,we=0,_e=0,me=0,ve=0,pe=0,ge=0,ye=0,Me=0,Ee=0,Ae=0,Se=0,Te=0,Ce=0,Re=0,Le=0,xe=0,Pe=0,Oe=0,Be=0,Ie=0,De=0,Ne=0,Fe=0,Ue=0,je=0,He=0,ze=0,Ye=0,qe=0,Xe=0.0;qe=c;c=c+80|0;Ne=qe+64|0;De=qe+56|0;Ue=qe+48|0;He=qe+40|0;je=qe+32|0;ze=qe+24|0;Fe=qe+16|0;Ie=qe+8|0;l=f[e+28>>2]|0;Be=f[f[e+20>>2]>>2]|0;k=f[(f[l+76>>2]|0)+(i*5640|0)+5584>>2]|0;w=f[Be+20>>2]|0;d=f[e+24>>2]|0;b=f[d+24>>2]|0;xe=f[l+24>>2]|0;h=f[l+12>>2]|0;Oe=(ie(h,(i>>>0)%(xe>>>0)|0)|0)+(f[l+4>>2]|0)|0;u=f[d>>2]|0;u=Oe>>>0>u>>>0?Oe:u;f[Be>>2]=u;Oe=Il(h|0,0,Oe|0,0)|0;Oe=Oe|0-x;h=f[d+8>>2]|0;h=Oe>>>0<h>>>0?Oe:h;Oe=Be+8|0;f[Oe>>2]=h;Pe=f[l+16>>2]|0;xe=(ie(Pe,(i>>>0)/(xe>>>0)|0)|0)+(f[l+8>>2]|0)|0;i=f[d+4>>2]|0;i=xe>>>0>i>>>0?xe:i;Le=Be+4|0;f[Le>>2]=i;xe=Il(Pe|0,0,xe|0,0)|0;xe=xe|0-x;d=f[d+12>>2]|0;d=xe>>>0<d>>>0?xe:d;xe=Be+12|0;f[xe>>2]=d;if(!(f[k+4>>2]|0)){Ht(s,1,19777,qe)|0;Ye=0;c=qe;return Ye|0}Pe=Be+16|0;if(!(f[Pe>>2]|0)){Ye=1;c=qe;return Ye|0}Re=l+80|0;Ce=e+40|0;Te=(r|0)==0;l=i;Se=0;e:while(1){f[b+36>>2]=0;ge=f[b>>2]|0;i=(u+-1+ge|0)/(ge|0)|0;f[w>>2]=i;ye=f[b+4>>2]|0;l=(l+-1+ye|0)/(ye|0)|0;Ae=w+4|0;f[Ae>>2]=l;ge=(h+-1+ge|0)/(ge|0)|0;Ee=w+8|0;f[Ee>>2]=ge;ye=(d+-1+ye|0)/(ye|0)|0;Me=w+12|0;f[Me>>2]=ye;i=ge-i|0;l=ye-l|0;if((4294967295/(i>>>0)|0)>>>0<l>>>0){Ye=6;break}i=ie(l,i)|0;if(i>>>0>1073741823){Ye=8;break}h=i<<2;ge=f[k+4>>2]|0;ye=w+16|0;f[ye>>2]=ge;e=f[Re>>2]|0;f[w+20>>2]=ge>>>0<e>>>0?1:ge-e|0;e=w+40|0;f[e>>2]=h;do{if(t[Ce>>0]&1){r=w+32|0;u=f[r>>2]|0;if(u){l=w+44|0;if(h>>>0<=(f[l>>2]|0)>>>0)break;i=w+36|0;if(f[i>>2]|0){jn(u);ge=Un(f[e>>2]|0)|0;f[r>>2]=ge;if(!ge){Ye=16;break e}f[l>>2]=f[e>>2];f[i>>2]=1;break}}ge=Un(h)|0;f[r>>2]=ge;if(!ge)break e;f[w+44>>2]=f[e>>2];f[w+36>>2]=1}}while(0);r=(f[ye>>2]|0)*136|0;l=w+24|0;e=f[l>>2]|0;if(e){i=w+28|0;if(r>>>0>(f[i>>2]|0)>>>0){e=Hn(e,r)|0;if(!e){Ye=24;break}f[l>>2]=e;ge=f[i>>2]|0;Ol(e+ge|0,0,r-ge|0)|0;f[i>>2]=r}}else{i=Nn(r)|0;f[l>>2]=i;if(!i){i=0;Ye=87;break}f[w+28>>2]=r;Ol(i|0,0,r|0)|0}i=f[ye>>2]|0;ge=(f[k+20>>2]|0)==0?7:8;if(i){_e=k+8|0;me=k+12|0;ve=b+24|0;pe=k+804|0;we=f[l>>2]|0;l=k+28|0;e=0;while(1){be=i;ke=i+-1|0;ce=f[w>>2]|0;he=Bl(1,0,ke|0)|0;he=Il(he|0,x|0,-1,-1)|0;de=x;ce=Il(he|0,de|0,ce|0,((ce|0)<0)<<31>>31|0)|0;ce=Pl(ce|0,x|0,ke|0)|0;f[we>>2]=ce;r=f[Ae>>2]|0;r=Il(he|0,de|0,r|0,((r|0)<0)<<31>>31|0)|0;r=Pl(r|0,x|0,ke|0)|0;f[we+4>>2]=r;i=f[Ee>>2]|0;i=Il(he|0,de|0,i|0,((i|0)<0)<<31>>31|0)|0;i=Pl(i|0,x|0,ke|0)|0;f[we+8>>2]=i;u=f[Me>>2]|0;u=Il(he|0,de|0,u|0,((u|0)<0)<<31>>31|0)|0;u=Pl(u|0,x|0,ke|0)|0;f[we+12>>2]=u;_=f[k+812+(e<<2)>>2]|0;d=f[k+944+(e<<2)>>2]|0;m=ce>>_<<_;v=r>>d<<d;h=Bl(1,0,d|0)|0;h=Il(h|0,x|0,-1,-1)|0;h=Il(h|0,x|0,u|0,((u|0)<0)<<31>>31|0)|0;h=Pl(h|0,x|0,d|0)|0;if((ce|0)==(i|0))i=0;else{ce=Bl(1,0,_|0)|0;ce=Il(ce|0,x|0,-1,-1)|0;i=Il(ce|0,x|0,i|0,((i|0)<0)<<31>>31|0)|0;i=Pl(i|0,x|0,_|0)|0;i=(i<<_)-m>>_}ce=we+16|0;f[ce>>2]=i;le=(r|0)==(u|0)?0:(h<<d)-v>>d;f[we+20>>2]=le;le=ie(le,i)|0;oe=le*40|0;ue=(e|0)==0;if(ue)i=1;else{m=Il(m|0,((m|0)<0)<<31>>31|0,1,0)|0;m=Dl(m|0,x|0,1)|0;v=Il(v|0,((v|0)<0)<<31>>31|0,1,0)|0;v=Dl(v|0,x|0,1)|0;i=3;d=d+-1|0;_=_+-1|0}se=we+24|0;f[se>>2]=i;q=f[_e>>2]|0;q=q>>>0<_>>>0?q:_;X=f[me>>2]|0;X=X>>>0<d>>>0?X:d;V=(le|0)!=0;G=(le|0)==0;K=1<<_;W=1<<d;Z=Bl(1,0,q|0)|0;Z=Il(Z|0,x|0,-1,-1)|0;J=x;Q=Bl(1,0,X|0)|0;Q=Il(Q|0,x|0,-1,-1)|0;$=x;ee=1<<q;re=1<<X;te=Bl(1,0,be|0)|0;te=Il(te|0,x|0,-1,-1)|0;ne=x;fe=0;ae=we+28|0;Y=l;while(1){if(ue){i=f[w>>2]|0;i=Il(he|0,de|0,i|0,((i|0)<0)<<31>>31|0)|0;i=Pl(i|0,x|0,ke|0)|0;l=f[Ae>>2]|0;l=Il(he|0,de|0,l|0,((l|0)<0)<<31>>31|0)|0;l=Pl(l|0,x|0,ke|0)|0;r=f[Ee>>2]|0;r=Il(he|0,de|0,r|0,((r|0)<0)<<31>>31|0)|0;r=Pl(r|0,x|0,ke|0)|0;h=f[Me>>2]|0;h=Il(he|0,de|0,h|0,((h|0)<0)<<31>>31|0)|0;h=Pl(h|0,x|0,ke|0)|0;u=0}else{u=fe+1|0;i=f[w>>2]|0;j=Bl(u&1|0,0,ke|0)|0;j=xl(te|0,ne|0,j|0,x|0)|0;h=x;i=Il(j|0,h|0,i|0,((i|0)<0)<<31>>31|0)|0;i=Pl(i|0,x|0,be|0)|0;l=f[Ae>>2]|0;H=Bl(u>>>1|0,0,ke|0)|0;H=xl(te|0,ne|0,H|0,x|0)|0;z=x;l=Il(H|0,z|0,l|0,((l|0)<0)<<31>>31|0)|0;l=Pl(l|0,x|0,be|0)|0;r=f[Ee>>2]|0;r=Il(j|0,h|0,r|0,((r|0)<0)<<31>>31|0)|0;r=Pl(r|0,x|0,be|0)|0;h=f[Me>>2]|0;h=Il(H|0,z|0,h|0,((h|0)<0)<<31>>31|0)|0;h=Pl(h|0,x|0,be|0)|0}f[ae+16>>2]=u;f[ae>>2]=i;z=ae+4|0;f[z>>2]=l;H=ae+8|0;f[H>>2]=r;j=ae+12|0;f[j>>2]=h;l=Ao[ge&15](u)|0;Xe=+(f[Y+4>>2]|0)*.00048828125+1.0;o[ae+32>>2]=+Ms(1.0,(f[ve>>2]|0)+l-(f[Y>>2]|0)|0)*Xe*n;f[ae+28>>2]=(f[Y>>2]|0)+-1+(f[pe>>2]|0);l=ae+20|0;r=f[l>>2]|0;if(!(V&(r|0)==0)){i=ae+24|0;if((f[i>>2]|0)>>>0<oe>>>0){r=Hn(r,oe)|0;if(!r){Ye=41;break e}f[l>>2]=r;U=f[i>>2]|0;Ol(r+U|0,0,oe-U|0)|0;f[i>>2]=oe}}else{i=Nn(oe)|0;f[l>>2]=i;if(!i){i=0;Ye=87;break e}Ol(i|0,0,oe|0)|0;f[ae+24>>2]=oe}if(!G){F=f[l>>2]|0;U=0;while(1){L=f[ce>>2]|0;I=(((U>>>0)%(L>>>0)|0)<<_)+m|0;L=(((U>>>0)/(L>>>0)|0)<<d)+v|0;P=I+K|0;O=L+W|0;B=f[ae>>2]|0;B=(I|0)>(B|0)?I:B;f[F>>2]=B;I=f[z>>2]|0;I=(L|0)>(I|0)?L:I;L=F+4|0;f[L>>2]=I;N=f[H>>2]|0;N=(P|0)<(N|0)?P:N;P=F+8|0;f[P>>2]=N;u=f[j>>2]|0;u=(O|0)<(u|0)?O:u;O=F+12|0;f[O>>2]=u;B=B>>q<<q;I=I>>X<<X;N=Il(Z|0,J|0,N|0,((N|0)<0)<<31>>31|0)|0;N=Pl(N|0,x|0,q|0)|0;u=Il(Q|0,$|0,u|0,((u|0)<0)<<31>>31|0)|0;u=Pl(u|0,x|0,X|0)|0;N=(N<<q)-B>>q;D=F+16|0;f[D>>2]=N;u=(u<<X)-I>>X;p=F+20|0;f[p>>2]=u;N=ie(u,N)|0;u=ie(N,a)|0;l=F+24|0;r=f[l>>2]|0;do{if((r|0)==0&(N|0)!=0){i=Nn(u)|0;f[l>>2]=i;if(!i){i=0;Ye=87;break e}Ol(i|0,0,u|0)|0;f[F+28>>2]=u}else{i=F+28|0;if(u>>>0<=(f[i>>2]|0)>>>0)break;r=Hn(r,u)|0;if(!r){Ye=50;break e}f[l>>2]=r;R=f[i>>2]|0;Ol(r+R|0,0,u-R|0)|0;f[i>>2]=u}}while(0);h=F+32|0;i=f[h>>2]|0;r=f[D>>2]|0;u=f[p>>2]|0;if(!i)i=Kr(r,u,s)|0;else i=ra(i,r,u,s)|0;f[h>>2]=i;if(!i)Ht(s,2,19990,De)|0;h=F+36|0;r=f[h>>2]|0;u=f[D>>2]|0;i=f[p>>2]|0;if(!r)i=Kr(u,i,s)|0;else i=ra(r,u,i,s)|0;f[h>>2]=i;if(!i)Ht(s,2,20012,Ne)|0;if(N){R=0;do{S=f[D>>2]|0;A=(((R>>>0)%(S>>>0)|0)<<q)+B|0;S=(((R>>>0)/(S>>>0)|0)<<X)+I|0;T=A+ee|0;C=S+re|0;do{if(Te){i=f[l>>2]|0;r=i+(R*56|0)|0;u=f[r>>2]|0;if(!u){E=Nn(8192)|0;f[r>>2]=E;if(!E){i=0;Ye=87;break e}f[i+(R*56|0)+32>>2]=8192;E=Fn(10,32)|0;f[i+(R*56|0)+4>>2]=E;if(!E){i=0;Ye=87;break e}f[i+(R*56|0)+52>>2]=10}else{h=i+(R*56|0)+32|0;p=f[h>>2]|0;g=i+(R*56|0)+4|0;y=f[g>>2]|0;M=r;E=M+52|0;do{f[M>>2]=0;M=M+4|0}while((M|0)<(E|0));f[r>>2]=u;f[h>>2]=p;f[g>>2]=y}E=f[F>>2]|0;f[i+(R*56|0)+8>>2]=(A|0)>(E|0)?A:E;A=f[L>>2]|0;f[i+(R*56|0)+12>>2]=(S|0)>(A|0)?S:A;S=f[P>>2]|0;f[i+(R*56|0)+16>>2]=(T|0)<(S|0)?T:S;T=f[O>>2]|0;f[i+(R*56|0)+20>>2]=(C|0)<(T|0)?C:T}else{r=f[l>>2]|0;i=r+(R*52|0)+4|0;if((f[i>>2]|0)==0?(E=Fn(100,24)|0,f[i>>2]=E,(E|0)==0):0){i=0;Ye=87;break e}i=r+(R*52|0)+8|0;if((f[i>>2]|0)==0?(E=Fn(100,24)|0,f[i>>2]=E,(E|0)==0):0){i=0;Ye=87;break e}h=f[F>>2]|0;h=(A|0)>(h|0)?A:h;f[r+(R*52|0)+12>>2]=h;i=f[L>>2]|0;S=(S|0)>(i|0)?S:i;f[r+(R*52|0)+16>>2]=S;i=f[P>>2]|0;i=(T|0)<(i|0)?T:i;f[r+(R*52|0)+20>>2]=i;T=f[O>>2]|0;C=(C|0)<(T|0)?C:T;f[r+(R*52|0)+24>>2]=C;h=ie(C-S|0,i-h<<2)|0;i=r+(R*52|0)+36|0;if(h>>>0<=(f[i>>2]|0)>>>0)break;u=r+(R*52|0)|0;r=f[u>>2]|0;if(r)zn(r+-1|0);r=Nn(h|1)|0;f[u>>2]=r;if(!r){Ye=74;break e}f[i>>2]=h;t[r>>0]=0;f[u>>2]=(f[u>>2]|0)+1}}while(0);R=R+1|0}while(R>>>0<N>>>0)}U=U+1|0;if(U>>>0>=le>>>0)break;else F=F+40|0}}l=Y+8|0;fe=fe+1|0;if(fe>>>0>=(f[se>>2]|0)>>>0)break;else{ae=ae+36|0;Y=l}}e=e+1|0;if(e>>>0<(f[ye>>2]|0)>>>0){i=ke;we=we+136|0}else break}}i=Se+1|0;if(i>>>0>=(f[Pe>>2]|0)>>>0){i=1;Ye=87;break}u=f[Be>>2]|0;l=f[Le>>2]|0;h=f[Oe>>2]|0;d=f[xe>>2]|0;Se=i;b=b+52|0;k=k+1080|0;w=w+52|0}if((Ye|0)==6){Ht(s,1,19816,Ie)|0;Ye=0;c=qe;return Ye|0}else if((Ye|0)==8){Ht(s,1,19816,Fe)|0;Ye=0;c=qe;return Ye|0}else if((Ye|0)==16){f[l>>2]=0;f[e>>2]=0;f[i>>2]=0}else if((Ye|0)==24){Ht(s,1,19849,je)|0;zn(f[l>>2]|0);f[l>>2]=0;f[i>>2]=0;Ye=0;c=qe;return Ye|0}else if((Ye|0)==41){Ht(s,1,19889,He)|0;zn(f[l>>2]|0);f[l>>2]=0;f[i>>2]=0;Ye=0;c=qe;return Ye|0}else if((Ye|0)==50){zn(f[l>>2]|0);f[l>>2]=0;f[i>>2]=0;Ht(s,1,19932,Ue)|0;Ye=0;c=qe;return Ye|0}else if((Ye|0)==74){f[i>>2]=0;Ye=0;c=qe;return Ye|0}else if((Ye|0)==87){c=qe;return i|0}Ht(s,1,19816,ze)|0;Ye=0;c=qe;return Ye|0}function Kr(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0;g=c;c=c+288|0;u=g+16|0;l=g+8|0;v=g+152|0;p=g+24|0;t=Fn(1,20)|0;if(!t){Ht(r,1,20034,g)|0;p=0;c=g;return p|0}f[t>>2]=e;h=t+4|0;f[h>>2]=i;f[v>>2]=e;f[p>>2]=i;o=t+8|0;f[o>>2]=0;n=0;s=0;while(1){m=ie(i,e)|0;e=(e+1|0)/2|0;a=s+1|0;f[v+(a<<2)>>2]=e;i=(i+1|0)/2|0;f[p+(a<<2)>>2]=i;n=n+m|0;if(m>>>0<=1)break;else s=a}f[o>>2]=n;if(!n){zn(t);Ht(r,2,20072,l)|0;p=0;c=g;return p|0}n=Fn(n,16)|0;f[t+12>>2]=n;if(!n){Ht(r,1,20122,u)|0;zn(t);p=0;c=g;return p|0}m=f[o>>2]|0;f[t+16>>2]=m<<4;i=n+((ie(f[h>>2]|0,f[t>>2]|0)|0)<<4)|0;if(!s)i=n;else{_=0;a=i;e=i;i=n;do{k=f[p+(_<<2)>>2]|0;e:do{if((k|0)>0){w=f[v+(_<<2)>>2]|0;if((w|0)<=0){o=k+-1|0;r=0;while(1){b=(r&1|0)!=0|(r|0)==(o|0);l=b?a:e;e=b?a:e+(w<<4)|0;r=r+1|0;if((r|0)>=(k|0)){a=l;break e}else a=l}}b=((w+2+((w|0)<2?~w:-3)|0)>>>1)+1|0;h=k+-1|0;d=0;do{r=w;u=a;while(1){f[i>>2]=u;l=i+16|0;o=r;r=r+-2|0;if((r|0)>-1){f[l>>2]=u;i=i+32|0}else i=l;if((o|0)<=2)break;else u=u+16|0}u=a+(b<<4)|0;r=(d&1|0)!=0|(d|0)==(h|0);a=r?u:e;e=r?u:e+(w<<4)|0;d=d+1|0}while((d|0)<(k|0))}}while(0);_=_+1|0}while((_|0)!=(s|0))}f[i>>2]=0;if(!m){p=t;c=g;return p|0}else i=0;while(1){f[n+4>>2]=999;f[n+8>>2]=0;f[n+12>>2]=0;i=i+1|0;if((i|0)==(m|0))break;else n=n+16|0}c=g;return t|0}function Wr(e){e=e|0;var i=0,r=0;if(!e)return;i=f[e+8>>2]|0;if(!i)return;r=0;e=f[e+12>>2]|0;while(1){f[e+4>>2]=999;f[e+8>>2]=0;f[e+12>>2]=0;r=r+1|0;if(r>>>0>=i>>>0)break;else e=e+16|0}return}function Zr(e){e=e|0;var i=0;i=c;c=c+e|0;c=c+15&-16;return i|0}function Jr(){return c|0}function Qr(e){e=e|0;c=e}function $r(e,i){e=e|0;i=i|0;c=e;h=i}function et(e,i){e=e|0;i=i|0;if(!w){w=e;_=i}}function it(e){e=e|0;t[d>>0]=t[e>>0];t[d+1>>0]=t[e+1>>0];t[d+2>>0]=t[e+2>>0];t[d+3>>0]=t[e+3>>0]}function rt(e){e=e|0;t[d>>0]=t[e>>0];t[d+1>>0]=t[e+1>>0];t[d+2>>0]=t[e+2>>0];t[d+3>>0]=t[e+3>>0];t[d+4>>0]=t[e+4>>0];t[d+5>>0]=t[e+5>>0];t[d+6>>0]=t[e+6>>0];t[d+7>>0]=t[e+7>>0]}function tt(e){e=e|0;x=e}function nt(){return x|0}function ft(e,i,r,t,n,a,s){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+8272|0;o=b+16|0;h=b+12|0;l=b;f[h>>2]=0;if((f[e>>2]|0)==1375686655)d=rn(0)|0;else d=rn(2)|0;Zt(d,1,0)|0;Jt(d,2,0)|0;Qt(d,3,0)|0;tn(o);f[l>>2]=e;f[l+4>>2]=e;f[l+8>>2]=i;u=$t(l,1)|0;if(!(nn(d,o)|0)){tl(4476)|0;St(u);gn(d);a=1;c=b;return a|0}if(!(fn(u,d,h)|0)){tl(4528)|0;St(u);gn(d);Vt(f[h>>2]|0);a=1;c=b;return a|0}if(!(un(d,u,f[h>>2]|0,f[o+8228>>2]|0)|0)){tl(4578)|0;gn(d);St(u);Vt(f[h>>2]|0);a=1;c=b;return a|0}l=f[h>>2]|0;f[n>>2]=f[l+8>>2];f[a>>2]=f[l+12>>2];e=f[l+16>>2]|0;f[s>>2]=e;e=ie(ie(e<<2,f[n>>2]|0)|0,f[a>>2]|0)|0;f[t>>2]=e;t=yl(e)|0;f[r>>2]=t;switch(f[s>>2]|0){case 1:{Nl(t|0,f[(f[l+24>>2]|0)+44>>2]|0,e|0)|0;break}case 3:{if((ie(f[a>>2]|0,f[n>>2]|0)|0)>0){i=f[l+24>>2]|0;l=f[i+44>>2]|0;e=f[i+96>>2]|0;i=f[i+148>>2]|0;o=0;do{s=o*3|0;f[t+(s<<2)>>2]=f[l+(o<<2)>>2];f[t+(s+1<<2)>>2]=f[e+(o<<2)>>2];f[t+(s+2<<2)>>2]=f[i+(o<<2)>>2];o=o+1|0}while((o|0)<(ie(f[a>>2]|0,f[n>>2]|0)|0))}break}default:{}}St(u);gn(d);Vt(f[h>>2]|0);a=0;c=b;return a|0}function at(){return en()|0}function st(e,i){e=e|0;i=i|0;return}function lt(e,i){e=e|0;i=i|0;return}function ot(e,i){e=e|0;i=i|0;var r=0;i=c;c=c+16|0;r=i;f[r>>2]=e;rl(4625,r)|0;c=i;return}function ut(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;s=c;c=c+16|0;a=s;f[a>>2]=i;if(!r){c=s;return}i=e;n=0;e=a+(r+-1)|0;while(1){t[i>>0]=t[e>>0]|0;n=n+1|0;if((n|0)==(r|0))break;else{i=i+1|0;e=e+-1|0}}c=s;return}function ct(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;f[i>>2]=0;if(!r)return;n=0;i=i+(r+-1)|0;while(1){t[i>>0]=t[e>>0]|0;n=n+1|0;if((n|0)==(r|0))break;else{e=e+1|0;i=i+-1|0}}return}function ht(e,i){e=e|0;i=+i;var r=0,n=0,a=0,s=0,l=0;r=c;c=c+16|0;s=r;u[s>>3]=i;s=s+8|0;u[d>>3]=i;n=f[d>>2]|0;a=f[d+4>>2]|0;l=Dl(n|0,a|0,56)|0;t[e>>0]=l;l=Dl(n|0,a|0,48)|0;t[e+1>>0]=l;l=Dl(n|0,a|0,40)|0;t[e+2>>0]=l;t[e+3>>0]=a;t[e+4>>0]=t[s+-5>>0]|0;t[e+5>>0]=t[s+-6>>0]|0;a=Dl(n|0,a|0,8)|0;t[e+6>>0]=a;t[e+7>>0]=n;c=r;return}function dt(e,i){e=e|0;i=i|0;var r=0;r=i+8|0;t[r+-1>>0]=t[e>>0]|0;t[r+-2>>0]=t[e+1>>0]|0;t[r+-3>>0]=t[e+2>>0]|0;t[r+-4>>0]=t[e+3>>0]|0;t[r+-5>>0]=t[e+4>>0]|0;t[r+-6>>0]=t[e+5>>0]|0;t[r+-7>>0]=t[e+6>>0]|0;t[i>>0]=t[e+7>>0]|0;return}function bt(e,i){e=e|0;i=+i;var r=0;r=(o[d>>2]=i,f[d>>2]|0);t[e>>0]=r>>>24;t[e+1>>0]=r>>>16;t[e+2>>0]=r>>>8;t[e+3>>0]=r;return}function kt(e,i){e=e|0;i=i|0;var r=0;r=i+4|0;t[r+-1>>0]=t[e>>0]|0;t[r+-2>>0]=t[e+1>>0]|0;t[r+-3>>0]=t[e+2>>0]|0;t[i>>0]=t[e+3>>0]|0;return}function wt(e,i){e=e|0;i=i|0;var r=0,t=0;t=Fn(1,72)|0;if(!t){i=0;return i|0}f[t+64>>2]=e;e=Nn(e)|0;f[t+32>>2]=e;if(!e){zn(t);i=0;return i|0}f[t+36>>2]=e;e=t+68|0;r=f[e>>2]|0;if(!i){f[e>>2]=r|1;f[t+40>>2]=31;f[t+44>>2]=32}else{f[e>>2]=r|2;f[t+40>>2]=29;f[t+44>>2]=30}f[t+16>>2]=4;f[t+20>>2]=5;f[t+24>>2]=6;f[t+28>>2]=7;i=t;return i|0}function _t(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+16|0;h=d;n=e+48|0;a=f[n>>2]|0;if(a>>>0>=i>>>0){h=e+36|0;f[h>>2]=(f[h>>2]|0)+i;f[n>>2]=a-i;h=e+56|0;e=h;e=Il(f[e>>2]|0,f[e+4>>2]|0,i|0,r|0)|0;f[h>>2]=e;f[h+4>>2]=x;h=r;e=i;x=h;c=d;return e|0}u=e+68|0;if(f[u>>2]&4){h=e+36|0;f[h>>2]=(f[h>>2]|0)+a;f[n>>2]=0;e=e+56|0;h=e;h=Il(f[h>>2]|0,f[h+4>>2]|0,a|0,0)|0;f[e>>2]=h;f[e+4>>2]=x;e=(a|0)!=0;h=e?0:-1;e=e?a:-1;x=h;c=d;return e|0}if(!a){a=0;n=0}else{f[e+36>>2]=f[e+32>>2];i=xl(i|0,r|0,a|0,0)|0;f[n>>2]=0;n=0;r=x}e:do{if((r|0)>0|(r|0)==0&i>>>0>0){o=e+24|0;while(1){s=po[f[o>>2]&63](i,r,f[e>>2]|0)|0;l=x;if((s|0)==-1&(l|0)==-1)break;i=xl(i|0,r|0,s|0,l|0)|0;r=x;a=Il(s|0,l|0,a|0,n|0)|0;n=x;if(!((r|0)>0|(r|0)==0&i>>>0>0))break e}Ht(t,4,4636,h)|0;f[u>>2]=f[u>>2]|4;e=e+56|0;h=e;h=Il(f[h>>2]|0,f[h+4>>2]|0,a|0,n|0)|0;f[e>>2]=h;f[e+4>>2]=x;e=(a|0)!=0|(n|0)!=0;h=e?n:-1;e=e?a:-1;x=h;c=d;return e|0}}while(0);h=e+56|0;e=h;e=Il(f[e>>2]|0,f[e+4>>2]|0,a|0,n|0)|0;f[h>>2]=e;f[h+4>>2]=x;h=n;e=a;x=h;c=d;return e|0}function mt(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0;f[e+36>>2]=f[e+32>>2];f[e+48>>2]=0;a=(po[f[e+28>>2]&63](i,r,f[e>>2]|0)|0)==0;t=e+68|0;n=f[t>>2]|0;if(a){f[t>>2]=n|4;a=0;return a|0}else{f[t>>2]=n&-5;a=e+56|0;f[a>>2]=i;f[a+4>>2]=r;a=1;return a|0}return 0}function vt(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;_=c;c=c+16|0;w=_+8|0;h=_;k=e+68|0;if(f[k>>2]&8){w=-1;e=-1;x=w;c=_;return e|0}o=e+32|0;n=f[o>>2]|0;b=e+36|0;f[b>>2]=n;u=e+48|0;a=f[u>>2]|0;do{if(a){l=e+20|0;while(1){s=po[f[l>>2]&63](n,a,f[e>>2]|0)|0;if((s|0)==-1)break;n=(f[b>>2]|0)+s|0;f[b>>2]=n;m=f[u>>2]|0;a=m-s|0;f[u>>2]=a;if((m|0)==(s|0)){d=6;break}}if((d|0)==6){n=f[o>>2]|0;break}f[k>>2]=f[k>>2]|8;Ht(t,4,4662,h)|0;f[k>>2]=f[k>>2]|8;f[u>>2]=0;e=-1;m=-1;x=e;c=_;return m|0}}while(0);f[b>>2]=n;e:do{if((r|0)>0|(r|0)==0&i>>>0>0){o=e+24|0;a=0;n=0;while(1){s=po[f[o>>2]&63](i,r,f[e>>2]|0)|0;l=x;if((s|0)==-1&(l|0)==-1)break;i=xl(i|0,r|0,s|0,l|0)|0;r=x;a=Il(s|0,l|0,a|0,n|0)|0;n=x;if(!((r|0)>0|(r|0)==0&i>>>0>0))break e}Ht(t,4,4688,w)|0;f[k>>2]=f[k>>2]|8;m=e+56|0;e=m;e=Il(f[e>>2]|0,f[e+4>>2]|0,a|0,n|0)|0;f[m>>2]=e;f[m+4>>2]=x;m=(a|0)!=0|(n|0)!=0;e=m?n:-1;m=m?a:-1;x=e;c=_;return m|0}else{a=0;n=0}}while(0);e=e+56|0;m=e;m=Il(f[m>>2]|0,f[m+4>>2]|0,a|0,n|0)|0;f[e>>2]=m;f[e+4>>2]=x;e=n;m=a;x=e;c=_;return m|0}function pt(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;k=c;c=c+16|0;o=k;h=e+32|0;n=f[h>>2]|0;d=e+36|0;f[d>>2]=n;b=e+48|0;a=f[b>>2]|0;do{if(!a)a=e;else{l=e+20|0;while(1){s=po[f[l>>2]&63](n,a,f[e>>2]|0)|0;if((s|0)==-1)break;n=(f[d>>2]|0)+s|0;f[d>>2]=n;w=f[b>>2]|0;a=w-s|0;f[b>>2]=a;if((w|0)==(s|0)){u=6;break}}if((u|0)==6){a=e;n=f[h>>2]|0;break}w=e+68|0;f[w>>2]=f[w>>2]|8;Ht(t,4,4662,o)|0;f[w>>2]=f[w>>2]|8;w=0;c=k;return w|0}}while(0);f[d>>2]=n;f[b>>2]=0;if(!(po[f[e+28>>2]&63](i,r,f[a>>2]|0)|0)){w=e+68|0;f[w>>2]=f[w>>2]|8;w=0;c=k;return w|0}else{w=e+56|0;f[w>>2]=i;f[w+4>>2]=r;w=1;c=k;return w|0}return 0}function gt(e,i,r){e=e|0;i=i|0;r=r|0;return-1}function yt(e,i,r){e=e|0;i=i|0;r=r|0;return-1}function Mt(e,i,r){e=e|0;i=i|0;r=r|0;x=-1;return-1}function Et(e,i,r){e=e|0;i=i|0;r=r|0;return 0}function At(e){e=e|0;var i=0,r=0,t=0;t=Fn(1,72)|0;if(!t){e=0;return e|0}f[t+64>>2]=1048576;i=Nn(1048576)|0;f[t+32>>2]=i;if(!i){zn(t);e=0;return e|0}f[t+36>>2]=i;i=t+68|0;r=f[i>>2]|0;if(!e){f[i>>2]=r|1;f[t+40>>2]=31;f[t+44>>2]=32}else{f[i>>2]=r|2;f[t+40>>2]=29;f[t+44>>2]=30}f[t+16>>2]=4;f[t+20>>2]=5;f[t+24>>2]=6;f[t+28>>2]=7;e=t;return e|0}function St(e){e=e|0;var i=0;if(!e)return;i=f[e+4>>2]|0;if(i)yo[i&7](f[e>>2]|0);i=e+32|0;zn(f[i>>2]|0);f[i>>2]=0;zn(e);return}function Tt(e,i){e=e|0;i=i|0;if(!e)return;if(!(f[e+68>>2]&2))return;f[e+16>>2]=i;return}function Ct(e,i){e=e|0;i=i|0;if(!e)return;f[e+28>>2]=i;return}function Rt(e,i){e=e|0;i=i|0;if(!e)return;if(!(f[e+68>>2]&1))return;f[e+20>>2]=i;return}function Lt(e,i){e=e|0;i=i|0;if(!e)return;f[e+24>>2]=i;return}function xt(e,i,r){e=e|0;i=i|0;r=r|0;if(!e)return;f[e>>2]=i;f[e+4>>2]=r;return}function Pt(e,i,r){e=e|0;i=i|0;r=r|0;if(!e)return;e=e+8|0;f[e>>2]=i;f[e+4>>2]=r;return}function Ot(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0;y=c;c=c+16|0;m=y+8|0;_=y;g=e+48|0;n=f[g>>2]|0;if(n>>>0>=r>>>0){p=e+36|0;Nl(i|0,f[p>>2]|0,r|0)|0;f[p>>2]=(f[p>>2]|0)+r;f[g>>2]=(f[g>>2]|0)-r;g=e+56|0;p=g;p=Il(f[p>>2]|0,f[p+4>>2]|0,r|0,0)|0;f[g>>2]=p;f[g+4>>2]=x;g=r;c=y;return g|0}v=e+68|0;if(f[v>>2]&4){p=e+36|0;Nl(i|0,f[p>>2]|0,n|0)|0;t=f[g>>2]|0;f[p>>2]=(f[p>>2]|0)+t;p=e+56|0;v=p;t=Il(f[v>>2]|0,f[v+4>>2]|0,t|0,0)|0;f[p>>2]=t;f[p+4>>2]=x;f[g>>2]=0;g=(n|0)!=0?n:-1;c=y;return g|0}if(!n){b=e+32|0;a=f[b>>2]|0;k=e+36|0;f[k>>2]=a;w=k;p=e+56|0;n=0}else{k=e+36|0;Nl(i|0,f[k>>2]|0,n|0)|0;b=e+32|0;a=f[b>>2]|0;f[k>>2]=a;w=f[g>>2]|0;p=e+56|0;h=p;h=Il(f[h>>2]|0,f[h+4>>2]|0,w|0,0)|0;d=p;f[d>>2]=h;f[d+4>>2]=x;f[g>>2]=0;r=r-w|0;i=i+w|0;w=k}h=e+64|0;d=e+16|0;u=i;s=a;while(1){i=f[h>>2]|0;a=f[d>>2]|0;if(r>>>0<i>>>0){a=po[a&63](s,i,f[e>>2]|0)|0;f[g>>2]=a;if((a|0)==-1){a=11;break}if(a>>>0>=r>>>0){i=u;a=14;break}Nl(u|0,f[w>>2]|0,a|0)|0;s=f[b>>2]|0;f[k>>2]=s;i=f[g>>2]|0;l=p;l=Il(f[l>>2]|0,f[l+4>>2]|0,i|0,0)|0;o=x;n=a+n|0}else{i=po[a&63](u,r,f[e>>2]|0)|0;f[g>>2]=i;if((i|0)==-1){a=16;break}n=i+n|0;if(i>>>0>=r>>>0){a=20;break}s=f[b>>2]|0;f[k>>2]=s;l=p;l=Il(f[l>>2]|0,f[l+4>>2]|0,i|0,0)|0;o=x}a=p;f[a>>2]=l;f[a+4>>2]=o;f[g>>2]=0;r=r-i|0;u=u+i|0}if((a|0)==11){Ht(t,4,4636,_)|0;f[g>>2]=0;f[v>>2]=f[v>>2]|4;g=(n|0)!=0?n:-1;c=y;return g|0}else if((a|0)==14){Nl(i|0,f[w>>2]|0,r|0)|0;f[w>>2]=(f[w>>2]|0)+r;f[g>>2]=(f[g>>2]|0)-r;t=p;t=Il(f[t>>2]|0,f[t+4>>2]|0,r|0,0)|0;g=p;f[g>>2]=t;f[g+4>>2]=x;g=n+r|0;c=y;return g|0}else if((a|0)==16){Ht(t,4,4636,m)|0;f[g>>2]=0;f[v>>2]=f[v>>2]|4;g=(n|0)!=0?n:-1;c=y;return g|0}else if((a|0)==20){t=p;t=Il(f[t>>2]|0,f[t+4>>2]|0,i|0,0)|0;f[p>>2]=t;f[p+4>>2]=x;f[k>>2]=f[b>>2];f[g>>2]=0;g=n;c=y;return g|0}return 0}function Bt(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0;p=c;c=c+16|0;_=p;d=e+68|0;if(f[d>>2]&8){v=-1;c=p;return v|0}w=e+64|0;n=f[w>>2]|0;v=e+48|0;o=f[v>>2]|0;a=n-o|0;do{if(a>>>0<r>>>0){b=e+32|0;s=e+36|0;k=e+20|0;l=e+56|0;u=n;h=a;n=0;e:while(1){if((u|0)==(o|0))a=f[b>>2]|0;else{Nl(f[s>>2]|0,i|0,h|0)|0;a=f[b>>2]|0;f[s>>2]=a;o=(f[v>>2]|0)+h|0;f[v>>2]=o;g=l;g=Il(f[g>>2]|0,f[g+4>>2]|0,h|0,0)|0;u=l;f[u>>2]=g;f[u+4>>2]=x;r=r-h|0;i=i+h|0;n=h+n|0}f[s>>2]=a;if(!o)o=0;else{do{u=po[f[k>>2]&63](a,o,f[e>>2]|0)|0;if((u|0)==-1)break e;a=(f[s>>2]|0)+u|0;f[s>>2]=a;g=f[v>>2]|0;o=g-u|0;f[v>>2]=o}while((g|0)!=(u|0));a=f[b>>2]|0}f[s>>2]=a;u=f[w>>2]|0;h=u-o|0;if(r>>>0<=h>>>0){m=5;break}}if((m|0)==5)break;f[d>>2]=f[d>>2]|8;Ht(t,4,4662,_)|0;g=-1;c=p;return g|0}else{a=e+36|0;l=e+56|0;s=a;a=f[a>>2]|0;n=0}}while(0);Nl(a|0,i|0,r|0)|0;f[s>>2]=(f[s>>2]|0)+r;f[v>>2]=(f[v>>2]|0)+r;v=l;v=Il(f[v>>2]|0,f[v+4>>2]|0,r|0,0)|0;g=l;f[g>>2]=v;f[g+4>>2]=x;g=n+r|0;c=p;return g|0}function It(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;d=c;c=c+16|0;o=d;a=e+32|0;r=f[a>>2]|0;h=e+36|0;f[h>>2]=r;s=e+48|0;t=f[s>>2]|0;do{if(t){l=e+20|0;while(1){n=po[f[l>>2]&63](r,t,f[e>>2]|0)|0;if((n|0)==-1)break;r=(f[h>>2]|0)+n|0;f[h>>2]=r;b=f[s>>2]|0;t=b-n|0;f[s>>2]=t;if((b|0)==(n|0)){u=6;break}}if((u|0)==6){r=f[a>>2]|0;break}b=e+68|0;f[b>>2]=f[b>>2]|8;Ht(i,4,4662,o)|0;b=0;c=d;return b|0}}while(0);f[h>>2]=r;b=1;c=d;return b|0}function Dt(e){e=e|0;e=e+56|0;x=f[e+4>>2]|0;return f[e>>2]|0}function Nt(e){e=e|0;var i=0,r=0;r=e+8|0;i=f[r>>2]|0;r=f[r+4>>2]|0;if((i|0)==0&(r|0)==0){r=0;e=0;x=r;return e|0}e=e+56|0;e=xl(i|0,r|0,f[e>>2]|0,f[e+4>>2]|0)|0;r=x;x=r;return e|0}function Ft(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;e=Co[f[e+40>>2]&63](e,i,r,t)|0;return e|0}function Ut(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;return Co[f[e+44>>2]&63](e,i,r,t)|0}function jt(e){e=e|0;return(f[e+28>>2]|0)!=7|0}function Ht(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0;l=c;c=c+528|0;a=l;s=l+16|0;e:do{if(e){switch(i|0){case 1:{i=e;n=e+12|0;break}case 2:{i=e+4|0;n=e+16|0;break}case 4:{i=e+8|0;n=e+20|0;break}default:{i=0;break e}}e=f[i>>2]|0;i=f[n>>2]|0;if(i)if(!r)i=1;else{Ol(s|0,0,512)|0;f[a>>2]=t;al(s,512,r,a)|0;Mo[i&7](s,e);i=1}else i=0}else i=0}while(0);c=l;return i|0}function zt(e){e=e|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=4;f[e+20>>2]=4;f[e+16>>2]=4;return}function Yt(e,i){e=e|0;i=i|0;return}function qt(){return Fn(1,36)|0}function Xt(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0;t=Fn(1,36)|0;if(!t){l=t;return l|0}f[t+20>>2]=r;s=t+16|0;f[s>>2]=e;r=Fn(1,e*52|0)|0;l=t+24|0;f[l>>2]=r;if(!r){r=f[t+28>>2]|0;if(r)zn(r);zn(t);l=0;return l|0}if(!e){l=t;return l|0}n=0;while(1){f[r+(n*52|0)>>2]=f[i+(n*36|0)>>2];f[r+(n*52|0)+4>>2]=f[i+(n*36|0)+4>>2];o=f[i+(n*36|0)+8>>2]|0;f[r+(n*52|0)+8>>2]=o;u=f[i+(n*36|0)+12>>2]|0;f[r+(n*52|0)+12>>2]=u;f[r+(n*52|0)+16>>2]=f[i+(n*36|0)+16>>2];f[r+(n*52|0)+20>>2]=f[i+(n*36|0)+20>>2];f[r+(n*52|0)+24>>2]=f[i+(n*36|0)+24>>2];f[r+(n*52|0)+28>>2]=f[i+(n*36|0)+28>>2];f[r+(n*52|0)+32>>2]=f[i+(n*36|0)+32>>2];o=Fn(ie(u,o)|0,4)|0;f[r+(n*52|0)+44>>2]=o;n=n+1|0;if(!o)break;if(n>>>0>=e>>>0){a=22;break}r=f[l>>2]|0}if((a|0)==22)return t|0;r=f[l>>2]|0;if(r){n=f[s>>2]|0;if(n){i=0;while(1){r=f[r+(i*52|0)+44>>2]|0;if(r){zn(r);n=f[s>>2]|0}i=i+1|0;if(i>>>0>=n>>>0)break;r=f[l>>2]|0}r=f[l>>2]|0}zn(r)}r=f[t+28>>2]|0;if(r)zn(r);zn(t);u=0;return u|0}function Vt(e){e=e|0;var i=0,r=0,t=0,n=0,a=0;if(!e)return;n=e+24|0;i=f[n>>2]|0;if(i){a=e+16|0;r=f[a>>2]|0;if(r){t=0;while(1){i=f[i+(t*52|0)+44>>2]|0;if(i){zn(i);r=f[a>>2]|0}t=t+1|0;if(t>>>0>=r>>>0)break;i=f[n>>2]|0}i=f[n>>2]|0}zn(i)}i=f[e+28>>2]|0;if(i)zn(i);zn(e);return}function Gt(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;r=f[i+4>>2]|0;t=f[e>>2]|0;a=f[i+8>>2]|0;s=f[e+4>>2]|0;n=f[i+12>>2]|0;c=(ie((f[i+24>>2]|0)+-1|0,n)|0)+r|0;l=f[i+16>>2]|0;o=(ie((f[i+28>>2]|0)+-1|0,l)|0)+a|0;i=Il(c|0,0,n|0,0)|0;i=i|0-x;n=f[e+8>>2]|0;l=Il(o|0,0,l|0,0)|0;l=l|0-x;o=f[e+12>>2]|0;c=f[e+16>>2]|0;if(!c)return;u=(r>>>0>t>>>0?r:t)+-1|0;a=(a>>>0>s>>>0?a:s)+-1|0;n=(i>>>0<n>>>0?i:n)+-1|0;r=(l>>>0<o>>>0?l:o)+-1|0;t=0;i=f[e+24>>2]|0;while(1){s=f[i>>2]|0;o=((u+s|0)>>>0)/(s>>>0)|0;b=f[i+4>>2]|0;e=((a+b|0)>>>0)/(b>>>0)|0;l=f[i+40>>2]|0;d=Bl(1,0,l|0)|0;h=x;s=Il((((n+s|0)>>>0)/(s>>>0)|0)-o|0,0,-1,-1)|0;s=Il(s|0,x|0,d|0,h|0)|0;s=Dl(s|0,x|0,l|0)|0;b=Il((((r+b|0)>>>0)/(b>>>0)|0)-e|0,0,-1,-1)|0;h=Il(b|0,x|0,d|0,h|0)|0;l=Dl(h|0,x|0,l|0)|0;f[i+8>>2]=s;f[i+12>>2]=l;f[i+16>>2]=o;f[i+20>>2]=e;t=t+1|0;if(t>>>0>=c>>>0)break;else i=i+52|0}return}function Kt(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0,o=0;f[i>>2]=f[e>>2];f[i+4>>2]=f[e+4>>2];f[i+8>>2]=f[e+8>>2];f[i+12>>2]=f[e+12>>2];o=i+24|0;t=f[o>>2]|0;l=i+16|0;if(!t)r=o;else{r=f[l>>2]|0;if(!r)r=o;else{n=0;while(1){t=f[t+(n*52|0)+44>>2]|0;if(t){zn(t);r=f[l>>2]|0}n=n+1|0;if(n>>>0>=r>>>0)break;t=f[o>>2]|0}r=o;t=f[o>>2]|0}zn(t);f[o>>2]=0}t=f[e+16>>2]|0;f[l>>2]=t;t=Nn(t*52|0)|0;f[r>>2]=t;if(!t){f[o>>2]=0;f[l>>2]=0;return}if(f[l>>2]|0){s=e+24|0;a=0;do{r=t+(a*52|0)|0;t=(f[s>>2]|0)+(a*52|0)|0;n=r+52|0;do{f[r>>2]=f[t>>2];r=r+4|0;t=t+4|0}while((r|0)<(n|0));t=f[o>>2]|0;f[t+(a*52|0)+44>>2]=0;a=a+1|0}while(a>>>0<(f[l>>2]|0)>>>0)}f[i+20>>2]=f[e+20>>2];n=e+32|0;r=f[n>>2]|0;a=i+32|0;f[a>>2]=r;if(!r){f[i+28>>2]=0;return}t=Nn(r)|0;r=i+28|0;f[r>>2]=t;if(!t){f[r>>2]=0;f[a>>2]=0;return}else{Nl(t|0,f[e+28>>2]|0,f[n>>2]|0)|0;return}}function Wt(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0;t=Fn(1,36)|0;if(!t){e=t;return e|0}f[t+20>>2]=r;f[t+16>>2]=e;r=Fn(e,52)|0;f[t+24>>2]=r;if(!r){r=f[t+28>>2]|0;if(r)zn(r);zn(t);e=0;return e|0}else{if(!e){e=t;return e|0}else n=0;do{f[r+(n*52|0)>>2]=f[i+(n*36|0)>>2];f[r+(n*52|0)+4>>2]=f[i+(n*36|0)+4>>2];f[r+(n*52|0)+8>>2]=f[i+(n*36|0)+8>>2];f[r+(n*52|0)+12>>2]=f[i+(n*36|0)+12>>2];f[r+(n*52|0)+16>>2]=f[i+(n*36|0)+16>>2];f[r+(n*52|0)+20>>2]=f[i+(n*36|0)+20>>2];f[r+(n*52|0)+24>>2]=f[i+(n*36|0)+24>>2];f[r+(n*52|0)+32>>2]=f[i+(n*36|0)+32>>2];f[r+(n*52|0)+44>>2]=0;n=n+1|0}while((n|0)!=(e|0));return t|0}return 0}function Zt(e,i,r){e=e|0;i=i|0;r=r|0;if(!e){r=0;return r|0}f[e+64>>2]=i;f[e+52>>2]=r;r=1;return r|0}function Jt(e,i,r){e=e|0;i=i|0;r=r|0;if(!e){r=0;return r|0}f[e+60>>2]=i;f[e+48>>2]=r;r=1;return r|0}function Qt(e,i,r){e=e|0;i=i|0;r=r|0;if(!e){r=0;return r|0}f[e+56>>2]=i;f[e+44>>2]=r;r=1;return r|0}function $t(e,i){e=e|0;i=i|0;var r=0;if(!e){e=0;return e|0}r=At(i)|0;if(!r){e=0;return e|0}xt(r,e,0);Pt(r,f[e+8>>2]|0,0);if(!i)Rt(r,9);else Tt(r,8);Lt(r,1);Ct(r,10);e=r;return e|0}function en(){return 4703}function rn(e){e=e|0;var i=0;i=Fn(1,84)|0;if(!i){e=0;return e|0}f[i+68>>2]=1;switch(e|0){case 0:{f[i+72>>2]=13;f[i+76>>2]=2;f[i+80>>2]=3;f[i+4>>2]=33;f[i+16>>2]=11;f[i>>2]=34;f[i+20>>2]=1;f[i+24>>2]=5;f[i+8>>2]=1;f[i+12>>2]=1;f[i+28>>2]=1;f[i+32>>2]=1;f[i+36>>2]=12;e=rf()|0;f[i+40>>2]=e;if(!e){zn(i);e=0;return e|0}break}case 2:{f[i+72>>2]=14;f[i+76>>2]=4;f[i+80>>2]=5;f[i+4>>2]=35;f[i+16>>2]=13;f[i>>2]=36;f[i+8>>2]=2;f[i+12>>2]=2;f[i+20>>2]=2;f[i+24>>2]=6;f[i+28>>2]=2;f[i+32>>2]=2;f[i+36>>2]=14;e=Di(1)|0;f[i+40>>2]=e;if(!e){zn(i);e=0;return e|0}break}default:{zn(i);e=0;return e|0}}zt(i+44|0);e=i;return e|0}function tn(e){e=e|0;if(!e)return;Ol(e|0,0,8248)|0;f[e+8200>>2]=-1;f[e+8204>>2]=-1;f[e+8248>>2]=0;return}function nn(e,i){e=e|0;i=i|0;var r=0;r=c;c=c+16|0;if(!((e|0)!=0&(i|0)!=0)){i=0;c=r;return i|0}if(!(f[e+68>>2]|0)){Ht(e+44|0,1,4709,r)|0;i=0;c=r;return i|0}else{Mo[f[e+24>>2]&7](f[e+40>>2]|0,i);i=1;c=r;return i|0}return 0}function fn(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;t=c;c=c+16|0;if(!((e|0)!=0&(i|0)!=0)){e=0;c=t;return e|0}if(!(f[i+68>>2]|0)){Ht(i+44|0,1,4790,t)|0;e=0;c=t;return e|0}else{e=Co[f[i>>2]&63](e,f[i+40>>2]|0,r,i+44|0)|0;c=t;return e|0}return 0}function an(e,i,r){e=e|0;i=i|0;r=r|0;if(!((e|0)!=0&(i|0)!=0)){i=0;return i|0}if(!(f[e+68>>2]|0)){i=0;return i|0}i=Co[f[e+4>>2]&63](f[e+40>>2]|0,i,r,e+44|0)|0;return i|0}function sn(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;if(!e){t=0;return t|0}if(!(f[e+68>>2]|0)){t=0;return t|0}t=vo[f[e+28>>2]&3](f[e+40>>2]|0,i,r,t,n,a,e+44|0)|0;return t|0}function ln(e,i,r,t,n,a,s,l,o,u){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;if(!((r|0)!=0&((e|0)!=0&(i|0)!=0&(t|0)!=0))){l=0;return l|0}if(!(f[e+68>>2]|0)){l=0;return l|0}l=To[f[e+8>>2]&3](f[e+40>>2]|0,r,t,n,a,s,l,o,u,i,e+44|0)|0;return l|0}function on(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;if(!((e|0)!=0&(r|0)!=0&(n|0)!=0)){i=0;return i|0}if(!(f[e+68>>2]|0)){i=0;return i|0}i=Eo[f[e+12>>2]&7](f[e+40>>2]|0,i,r,t,n,e+44|0)|0;return i|0}function un(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;if(!((e|0)!=0&(i|0)!=0)){t=0;return t|0}if(!(f[e+68>>2]|0)){t=0;return t|0}t=Lo[f[e+32>>2]&3](f[e+40>>2]|0,i,r,e+44|0,t)|0;return t|0}function cn(e,i){e=e|0;i=i|0;if(!e){i=0;return i|0}i=po[f[e+36>>2]&63](f[e+40>>2]|0,i,e+44|0)|0;return i|0}function hn(e){e=e|0;var i=0;i=Fn(1,84)|0;if(!i){e=0;return e|0}f[i+68>>2]=0;switch(e|0){case 0:{f[i+4>>2]=15;f[i+12>>2]=16;f[i>>2]=37;f[i+8>>2]=3;f[i+16>>2]=1;f[i+20>>2]=38;e=Xn()|0;f[i+40>>2]=e;if(!e){zn(i);e=0;return e|0}break}case 2:{f[i+4>>2]=17;f[i+12>>2]=18;f[i>>2]=39;f[i+8>>2]=4;f[i+16>>2]=2;f[i+20>>2]=40;e=Di(0)|0;f[i+40>>2]=e;if(!e){zn(i);e=0;return e|0}break}default:{zn(i);e=0;return e|0}}zt(i+44|0);e=i;return e|0}function dn(e){e=e|0;if(!e)return;Ol(e|0,0,18708)|0;f[e+5592>>2]=6;f[e+18684>>2]=0;f[e+5596>>2]=64;f[e+5600>>2]=64;f[e+44>>2]=0;f[e+5612>>2]=-1;f[e+18188>>2]=1;f[e+18192>>2]=1;t[e+18688>>0]=0;f[e+18196>>2]=-1;f[e+18200>>2]=-1;o[e+4792>>2]=0.0;f[e+4788>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;f[e+28>>2]=0;f[e+18692>>2]=0;return}function bn(e,i,r){e=e|0;i=i|0;r=r|0;if(!((e|0)!=0&(i|0)!=0&(r|0)!=0)){i=0;return i|0}if(f[e+68>>2]|0){i=0;return i|0}i=Co[f[e+20>>2]&63](f[e+40>>2]|0,i,r,e+44|0)|0;return i|0}function kn(e,i,r){e=e|0;i=i|0;r=r|0;if(!((e|0)!=0&(r|0)!=0)){r=0;return r|0}if(f[e+68>>2]|0){r=0;return r|0}r=Co[f[e>>2]&63](f[e+40>>2]|0,r,i,e+44|0)|0;return r|0}function wn(e,i){e=e|0;i=i|0;if(!((e|0)!=0&(i|0)!=0)){i=0;return i|0}if(f[e+68>>2]|0){i=0;return i|0}i=po[f[e+4>>2]&63](f[e+40>>2]|0,i,e+44|0)|0;return i|0}function _n(e,i){e=e|0;i=i|0;if(!((e|0)!=0&(i|0)!=0)){i=0;return i|0}if(f[e+68>>2]|0){i=0;return i|0}i=po[f[e+12>>2]&63](f[e+40>>2]|0,i,e+44|0)|0;return i|0}function mn(e,i){e=e|0;i=i|0;if(!((e|0)!=0&(i|0)!=0)){i=0;return i|0}if(!(f[e+68>>2]|0)){i=0;return i|0}i=po[f[e+16>>2]&63](f[e+40>>2]|0,i,e+44|0)|0;return i|0}function vn(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var l=0,o=0,u=0;u=a<<2;l=ie(u,a)|0;o=e+18704|0;a=s[o>>1]|0;n[o>>1]=(a&32768|0)==0?-32512:(a|256)&65535;f[e+5608>>2]=1;t[e+18690>>0]=2;o=Nn(l+u|0)|0;a=e+18696|0;f[a>>2]=o;if(!o){r=0;return r|0}Nl(o|0,i|0,l|0)|0;Nl((f[a>>2]|0)+l|0,r|0,u|0)|0;r=1;return r|0}function pn(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;if(!((r|0)!=0&((e|0)!=0&(n|0)!=0))){i=0;return i|0}if(f[e+68>>2]|0){i=0;return i|0}i=Eo[f[e+8>>2]&7](f[e+40>>2]|0,i,r,t,n,e+44|0)|0;return i|0}function gn(e){e=e|0;var i=0,r=0;if(!e)return;i=e+40|0;r=f[i>>2]|0;if(!(f[e+68>>2]|0))yo[f[e+16>>2]&7](r);else yo[f[e+20>>2]&7](r);f[i>>2]=0;zn(e);return}function yn(e,i,r){e=e|0;i=i|0;r=r|0;if(!e)return;So[f[e+72>>2]&15](f[e+40>>2]|0,i,r);return}function Mn(e){e=e|0;if(!e){e=0;return e|0}e=Ao[f[e+76>>2]&15](f[e+40>>2]|0)|0;return e|0}function En(e){e=e|0;var i=0,r=0;if(!e)return;i=f[e>>2]|0;r=f[i+48>>2]|0;if(r){zn(r);i=f[e>>2]|0}zn(i);f[e>>2]=0;return}function An(e){e=e|0;if(!e){e=0;return e|0}e=Ao[f[e+80>>2]&15](f[e+40>>2]|0)|0;return e|0}function Sn(e){e=e|0;var i=0;i=f[e>>2]|0;if(!i)return;Jn(i);f[e>>2]=0;return}function Tn(e,i){e=e|0;i=i|0;return Cn(e,1048576,i)|0}function Cn(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;if(!e){i=0;return i|0}t=Ys(e,(r|0)==0?4869:4872)|0;if(!t){i=0;return i|0}e=wt(i,r)|0;if(!e){Hs(t)|0;i=0;return i|0}else{xt(e,t,6);Zs(t,0,2)|0;i=$s(t)|0;Zs(t,0,0)|0;Pt(e,i,((i|0)<0)<<31>>31);Tt(e,19);Rt(e,20);Lt(e,21);Ct(e,22);i=e;return i|0}return 0}function Rn(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0;a=(f[r>>2]|0)+(f[r+8>>2]|0)|0;r=r+4|0;t=f[r>>2]|0;n=a-t|0;if((a|0)==(t|0)){a=-1;return a|0}a=n>>>0>i>>>0?i:n;Nl(e|0,t|0,a|0)|0;f[r>>2]=(f[r>>2]|0)+a;return a|0}function Ln(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0;u=r+4|0;t=f[u>>2]|0;l=r+8|0;a=f[l>>2]|0;o=t-(f[r>>2]|0)|0;n=(a|0)==0?1:a;while(1)if((n-o|0)>>>0<i>>>0)n=n<<1;else{s=n;break}if((s|0)!=(a|0)){t=Nn(s)|0;if(!t){i=-1;return i|0}n=f[r>>2]|0;if(n){Nl(t|0,n|0,o|0)|0;zn(f[r>>2]|0)}f[r>>2]=t;t=t+o|0;f[u>>2]=t;f[l>>2]=s}Nl(t|0,e|0,i|0)|0;f[u>>2]=(f[u>>2]|0)+i;return i|0}function xn(e,i){e=e|0;i=i|0;var r=0,t=0,n=0;n=(f[i>>2]|0)+(f[i+8>>2]|0)|0;i=i+4|0;r=f[i>>2]|0;t=n-r|0;if((n|0)==(r|0)){n=-1;return n|0}f[i>>2]=r+e;n=t>>>0>e>>>0?e:t;return n|0}function Pn(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;t=f[r+8>>2]|0;f[r+4>>2]=(f[r>>2]|0)+(0>(i|0)|0==(i|0)&t>>>0>e>>>0?e:t);return 1}function On(e,i,r){e=e|0;i=i|0;r=r|0;i=Gs(e,1,i,r)|0;return((i|0)!=0?i:-1)|0}function Bn(e,i,r){e=e|0;i=i|0;r=r|0;return il(e,1,i,r)|0}function In(e,i,r){e=e|0;i=i|0;r=r|0;r=(Zs(r,e,1)|0)==0;x=r?i:-1;return(r?e:-1)|0}function Dn(e,i,r){e=e|0;i=i|0;r=r|0;return(Zs(r,e,0)|0)==0|0}function Nn(e){e=e|0;if(!e)e=0;else e=yl(e)|0;return e|0}function Fn(e,i){e=e|0;i=i|0;if(!i)e=0;else e=El(e,i)|0;return e|0}function Un(e){e=e|0;var i=0,r=0;r=c;c=c+16|0;i=r;do{if(e)if(!(Sl(i,16,e)|0)){i=f[i>>2]|0;break}else{f[i>>2]=0;i=0;break}else i=0}while(0);c=r;return i|0}function jn(e){e=e|0;Ml(e);return}function Hn(e,i){e=e|0;i=i|0;if(!i)i=0;else i=Al(e,i)|0;return i|0}function zn(e){e=e|0;Ml(e);return}function Yn(e){e=e|0;var i=0,r=0;i=696;while(1){r=f[i>>2]|0;if((r|0)==-1|(r|0)==(e|0))break;else i=i+12|0}return i+4|0}function qn(e,i){e=e|0;i=i|0;if(!((e|0)!=0&(i|0)!=0))return;f[e+172>>2]=f[i+4>>2];f[e+168>>2]=f[i>>2];return}function Xn(){var e=0,i=0;e=Fn(1,208)|0;if(!e){e=0;return e|0}f[e>>2]=0;i=e+184|0;t[i>>0]=t[i>>0]&-3;i=Nn(1e3)|0;f[e+44>>2]=i;if(!i){Vn(e);i=0;return i|0}f[e+48>>2]=1e3;i=sa()|0;f[e+192>>2]=i;if(!i){Vn(e);i=0;return i|0}i=sa()|0;f[e+188>>2]=i;if(i){i=e;return i|0}Vn(e);i=0;return i|0}function Vn(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0;if(!e)return;if(!(f[e>>2]|0)){i=e+36|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0}i=e+24|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0;f[e+28>>2]=0}i=e+44|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0;f[e+48>>2]=0}}else{i=e+12|0;r=f[i>>2]|0;if(r){kf(r);zn(f[i>>2]|0);f[i>>2]=0}i=e+16|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0;f[e+20>>2]=0}}Ir(f[e+204>>2]|0);i=e+88|0;s=e+164|0;r=f[s>>2]|0;if(r){n=ie(f[e+112>>2]|0,f[e+116>>2]|0)|0;if(n){a=0;while(1){kf(r);a=a+1|0;if((a|0)==(n|0))break;else r=r+5640|0}r=f[s>>2]|0}zn(r);f[s>>2]=0}s=e+124|0;r=f[s>>2]|0;if(r){l=e+120|0;n=f[l>>2]|0;if(n){a=0;while(1){r=f[r+(a<<3)>>2]|0;if(r){zn(r);n=f[l>>2]|0}a=a+1|0;if(a>>>0>=n>>>0)break;r=f[s>>2]|0}r=f[s>>2]|0}f[l>>2]=0;zn(r);f[s>>2]=0}l=e+144|0;zn(f[l>>2]|0);f[l>>2]=0;f[e+128>>2]=0;l=e+108|0;zn(f[l>>2]|0);f[l>>2]=0;if(!(t[e+184>>0]&2)){l=e+176|0;zn(f[l>>2]|0);f[l>>2]=0}r=i+100|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(r|0));l=e+188|0;la(f[l>>2]|0);f[l>>2]=0;la(f[e+192>>2]|0);f[l>>2]=0;l=e+196|0;Jn(f[l>>2]|0);f[l>>2]=0;l=e+80|0;Vt(f[l>>2]|0);f[l>>2]=0;l=e+84|0;Vt(f[l>>2]|0);f[l>>2]=0;zn(e);return}function Gn(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,h=0,d=0,b=0,k=0,w=0,_=0.0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,z=0,Y=0,q=0,X=0,V=0,G=0,K=0,W=0,Z=0,J=0,Q=0,$=0,ee=0,re=0,te=0,ne=0,fe=0,ae=0,se=0,le=0,oe=0,ue=0,ce=0.0;ue=c;c=c+320|0;fe=ue+296|0;ne=ue+288|0;oe=ue+280|0;le=ue+272|0;se=ue+264|0;ae=ue+256|0;te=ue+248|0;re=ue+240|0;K=ue+232|0;V=ue+224|0;X=ue+216|0;q=ue+208|0;Y=ue+200|0;z=ue+192|0;j=ue+184|0;g=ue+176|0;p=ue+168|0;v=ue+160|0;m=ue+152|0;w=ue+144|0;B=ue+136|0;O=ue+128|0;F=ue+112|0;P=ue+104|0;x=ue+96|0;L=ue+88|0;C=ue+80|0;T=ue+72|0;S=ue+64|0;A=ue+56|0;E=ue+48|0;M=ue+32|0;y=ue+24|0;k=ue+16|0;h=ue+8|0;l=ue;D=ue+309|0;N=ue+300|0;if(!((e|0)!=0&(i|0)!=0&(r|0)!=0)){a=0;c=ue;return a|0}ee=i+5592|0;s=f[ee>>2]|0;if((s+-1|0)>>>0>32){f[l>>2]=s;f[l+4>>2]=33;Ht(a,1,4875,l)|0;a=0;c=ue;return a|0}Q=e+112|0;f[Q>>2]=1;$=e+116|0;f[$>>2]=1;I=i+18704|0;do{if(!(n[I>>1]|0)){switch(f[i+18676>>2]|0){case 1:{n[I>>1]=3;f[i+18700>>2]=1302083;f[i+18680>>2]=1041666;l=1;break}case 2:{n[I>>1]=3;f[i+18700>>2]=651041;f[i+18680>>2]=520833;l=1;break}case 3:{n[I>>1]=4;f[i+18700>>2]=1302083;f[i+18680>>2]=1041666;l=1;break}default:l=0}s=f[i+18684>>2]|0;e:do{if((s|0)>=4)if((s|0)<33024){switch(s|0){case 4:break;default:{J=13;break e}}n[I>>1]=4;break}else{switch(s|0){case 33024:break;default:{J=13;break e}}n[I>>1]=-32512;break}else{switch(s|0){case 3:break;default:{J=13;break e}}n[I>>1]=3}}while(0);if((J|0)==13?(l|0)==0:0)break;Ht(a,2,4931,h)|0}}while(0);R=i+18700|0;s=f[R>>2]|0;do{if((s|0)<1){_=+o[i+4792+((f[i+4788>>2]|0)+-1<<2)>>2];if(_>0.0){W=f[r+24>>2]|0;k=ie(f[W+8>>2]|0,f[r+16>>2]|0)|0;k=ie(k,f[W+12>>2]|0)|0;ce=+((ie(k,f[W+24>>2]|0)|0)>>>0);f[R>>2]=~~+H(+(ce/(_*8.0*+((f[W>>2]|0)>>>0)*+((f[W+4>>2]|0)>>>0))));break}else{f[R>>2]=0;break}}else{b=f[r+24>>2]|0;W=ie(f[b+8>>2]|0,f[r+16>>2]|0)|0;W=ie(W,f[b+12>>2]|0)|0;_=+((ie(W,f[b+24>>2]|0)|0)>>>0);s=ie(s<<3,f[b>>2]|0)|0;_=_/+((ie(s,f[b+4>>2]|0)|0)>>>0);b=i+4788|0;s=f[b>>2]|0;if(s){h=s;s=0;d=0;while(1){l=i+4792+(d<<2)|0;if(+o[l>>2]<_){o[l>>2]=_;l=f[b>>2]|0;s=1}else l=h;d=d+1|0;if(d>>>0>=l>>>0)break;else h=l}if(s)Ht(a,2,5068,k)|0}}}while(0);s=n[I>>1]|0;e:do{if((s+-3&65535)>=4){if(s<<16>>16==7){Ht(a,2,7228,w)|0;n[I>>1]=0;s=0;break}if((s+-256&65535)<524){Ht(a,2,7283,m)|0;n[I>>1]=0;s=0;break}if((s+-1024&65535)<1180){Ht(a,2,7331,v)|0;n[I>>1]=0;s=0;break}if(s<<16>>16<=-1)switch(s<<16>>16){case-32512:{s=-32512;break e}case-32768:{Ht(a,2,7373,p)|0;n[I>>1]=0;s=0;break e}default:{Ht(a,2,7461,g)|0;n[I>>1]=0;s=0;break e}}}else{if((s+-5&65535)<2){Ht(a,2,5160,y)|0;n[I>>1]=0;s=0;break}f[i>>2]=0;f[i+12>>2]=1;f[i+16>>2]=1;t[i+18689>>0]=67;t[i+18688>>0]=1;f[i+4>>2]=0;f[i+8>>2]=0;f[i+18180>>2]=0;f[i+18184>>2]=0;f[i+5596>>2]=32;f[i+5600>>2]=32;f[i+5604>>2]=0;f[i+5612>>2]=-1;f[i+18188>>2]=1;f[i+18192>>2]=1;f[i+5608>>2]=1;l=i+4788|0;h=f[l>>2]|0;if((h|0)>1){ce=+o[i+4792+(h+-1<<2)>>2];f[M>>2]=h;u[M+8>>3]=ce;Ht(a,2,5222,M)|0;f[i+4792>>2]=f[i+4792+((f[l>>2]|0)+-1<<2)>>2];f[l>>2]=1;s=n[I>>1]|0}i:do{switch(s&65535|0){case 3:{s=f[ee>>2]|0;if((s|0)>6){f[E>>2]=s+1;Ht(a,2,5395,E)|0;f[ee>>2]=6;s=6}break}case 4:{s=f[ee>>2]|0;if((s|0)<2){f[A>>2]=s+1;Ht(a,2,5541,A)|0;f[ee>>2]=1;s=1;break i}if((s|0)>7){f[S>>2]=s+1;Ht(a,2,5695,S)|0;f[ee>>2]=7;s=7}break}default:s=f[ee>>2]|0}}while(0);l=i+40|0;f[l>>2]=f[l>>2]|1;l=i+5620|0;f[l>>2]=s+-1;if((s|0)>1){s=0;do{f[i+5624+(s<<2)>>2]=256;f[i+5756+(s<<2)>>2]=256;s=s+1|0}while((s|0)<(f[l>>2]|0))}f[i+44>>2]=4;if((n[I>>1]|0)==4){s=f[ee>>2]|0;f[i+96>>2]=1;f[i+48>>2]=0;f[i+52>>2]=0;f[i+56>>2]=1;W=s+-1|0;f[i+60>>2]=W;f[i+64>>2]=3;f[i+80>>2]=4;f[i+244>>2]=1;f[i+196>>2]=W;f[i+200>>2]=0;f[i+204>>2]=1;f[i+208>>2]=s;f[i+212>>2]=3;f[i+228>>2]=4;s=2}else s=0;f[i+4784>>2]=s;f[i+20>>2]=1;s=f[R>>2]|0;if((s|0)>=1){if((s|0)>1302083){Ht(a,2,5998,C)|0;f[R>>2]=1302083}}else{f[R>>2]=1302083;Ht(a,2,5849,T)|0}s=i+18680|0;l=f[s>>2]|0;if((l|0)>=1){if((l|0)>1041666){Ht(a,2,6320,x)|0;f[s>>2]=1041666}}else{f[s>>2]=1041666;Ht(a,2,6171,L)|0}l=f[r+16>>2]|0;d=f[r+24>>2]|0;b=f[d+8>>2]|0;s=ie(b,l)|0;k=f[d+12>>2]|0;s=ie(s,k)|0;ce=+((ie(s,f[d+24>>2]|0)|0)>>>0);s=ie(f[R>>2]<<3,f[d>>2]|0)|0;o[i+4792>>2]=ce/+((ie(s,f[d+4>>2]|0)|0)>>>0);s=n[I>>1]|0;i:do{if((l|0)==3){l=d+28|0;h=d+32|0;if(!((f[l>>2]|0)!=12|f[h>>2])){l=d+80|0;h=d+84|0;if(!((f[l>>2]|0)!=12|f[h>>2])){l=d+132|0;h=d+136|0;if(!((f[l>>2]|0)!=12|f[h>>2])){switch(s&65535|0){case 3:{if(k>>>0>1080|b>>>0>2048){f[O>>2]=b;f[O+4>>2]=k;Ht(a,2,6892,O)|0;break i}break}case 4:{if(k>>>0>2160|b>>>0>4096){f[B>>2]=b;f[B+4>>2]=k;Ht(a,2,7063,B)|0;break i}break}default:{}}break e}else{k=l;s=h;l=2}}else{k=l;s=h;l=1}}else{k=l;s=h;l=0}t[D>>0]=t[6659]|0;t[D+1>>0]=t[6660]|0;t[D+2>>0]=t[6661]|0;t[D+3>>0]=t[6662]|0;t[D+4>>0]=t[6663]|0;t[D+5>>0]=t[6664]|0;t[D+6>>0]=t[6665]|0;h=N;d=6666;b=h+9|0;do{t[h>>0]=t[d>>0]|0;h=h+1|0;d=d+1|0}while((h|0)<(b|0));W=(f[s>>2]|0)!=0?D:N;N=f[k>>2]|0;f[F>>2]=l;f[F+4>>2]=N;f[F+8>>2]=W;Ht(a,2,6675,F)|0}else{f[P>>2]=l;Ht(a,2,6493,P)|0}}while(0);n[I>>1]=0;s=0}}while(0);f[e+168>>2]=f[i+18680>>2];W=e+88|0;n[W>>1]=s;F=e+181|0;D=t[F>>0]&-2|f[i+20>>2]&1;t[F>>0]=D;N=i+24|0;D=(f[N>>2]&255)<<1&2|D&-3;t[F>>0]=D;t[F>>0]=D&-5|(f[i+28>>2]&255)<<2&4;do{if((f[N>>2]|0)!=0?(U=i+32|0,(f[U>>2]|0)!=0):0){s=ie((f[i+4788>>2]|0)*12|0,f[ee>>2]|0)|0;l=Nn(s)|0;f[e+176>>2]=l;if(l){Nl(l|0,f[U>>2]|0,s|0)|0;break}Ht(a,1,7520,j)|0;a=0;c=ue;return a|0}}while(0);d=e+100|0;f[d>>2]=f[i+12>>2];b=e+104|0;f[b>>2]=f[i+16>>2];h=e+92|0;f[h>>2]=f[i+4>>2];k=e+96|0;f[k>>2]=f[i+8>>2];l=i+36|0;s=f[l>>2]|0;do{if(!s){s=en()|0;l=Nn((dl(s)|0)+29|0)|0;f[e+108>>2]=l;if(l){f[q>>2]=7697;f[q+4>>2]=s;nl(l,7692,q)|0;break}Ht(a,1,7646,Y)|0;a=0;c=ue;return a|0}else{s=Nn((dl(s)|0)+1|0)|0;f[e+108>>2]=s;if(s){hl(s,f[l>>2]|0)|0;break}Ht(a,1,7592,z)|0;a=0;c=ue;return a|0}}while(0);s=(f[r+8>>2]|0)-(f[h>>2]|0)|0;l=f[r+12>>2]|0;if(!(f[i>>2]|0)){f[d>>2]=s;f[b>>2]=l-(f[k>>2]|0)}else{q=f[d>>2]|0;f[Q>>2]=(s+-1+q|0)/(q|0)|0;q=f[b>>2]|0;f[$>>2]=(l+-1-(f[k>>2]|0)+q|0)/(q|0)|0}if(t[i+18688>>0]|0){t[e+180>>0]=t[i+18689>>0]|0;t[F>>0]=t[F>>0]|8}q=Fn(ie(f[$>>2]|0,f[Q>>2]|0)|0,5640)|0;N=e+164|0;f[N>>2]=q;if(!q){Ht(a,1,7726,X)|0;a=0;c=ue;return a|0}D=i+4784|0;S=f[D>>2]|0;do{if(S){y=i+48|0;T=f[ee>>2]|0;C=f[r+16>>2]|0;R=f[i+4788>>2]|0;L=ie(C,T)|0;x=Fn(ie(L,R)|0,4)|0;if(!x){Ht(a,1,7780,V)|0;break}h=f[y>>2]|0;m=i+60|0;s=f[m>>2]|0;if(h>>>0<s>>>0){w=ie(h,C)|0;v=i+52|0;p=i+64|0;g=i+56|0;l=f[p>>2]|0;while(1){d=f[v>>2]|0;if(d>>>0<l>>>0){s=f[g>>2]|0;k=d;b=d+w|0;while(1){if(!s)s=0;else{l=b;d=0;while(1){f[x+(l<<2)>>2]=1;d=d+1|0;s=f[g>>2]|0;if(d>>>0>=s>>>0)break;else l=l+L|0}l=f[p>>2]|0}k=k+1|0;if(k>>>0>=l>>>0)break;else b=b+1|0}s=f[m>>2]|0}h=h+1|0;if(h>>>0>=s>>>0)break;else w=w+C|0}}if(S>>>0>1){A=1;do{s=y;y=y+148|0;g=f[s+8>>2]|0;p=s+156|0;d=f[p>>2]|0;g=d>>>0>g>>>0?g:0;b=f[y>>2]|0;M=s+160|0;l=f[M>>2]|0;if(b>>>0<l>>>0){w=ie(b,C)|0;E=s+152|0;m=s+164|0;v=ie(g,L)|0;h=f[m>>2]|0;s=d;while(1){d=f[E>>2]|0;if(d>>>0<h>>>0){k=d;d=d+w|0;while(1){if(g>>>0<s>>>0){l=d+v|0;h=g;while(1){f[x+(l<<2)>>2]=1;h=h+1|0;s=f[p>>2]|0;if(h>>>0>=s>>>0)break;else l=l+L|0}h=f[m>>2]|0}k=k+1|0;if(k>>>0>=h>>>0)break;else d=d+1|0}l=f[M>>2]|0}b=b+1|0;if(b>>>0>=l>>>0)break;else w=w+C|0}}A=A+1|0}while((A|0)!=(S|0))}if((R|0)!=0?(G=(C|0)==0,(T|0)!=0):0){l=0;w=0;s=0;do{if(!G){k=l;b=0;while(1){h=0;d=k;while(1){s=(f[x+(d<<2)>>2]|0)!=1|s;h=h+1|0;if((h|0)==(C|0))break;else d=d+1|0}b=b+1|0;if((b|0)==(T|0))break;else k=k+C|0}l=L+l|0}w=w+1|0}while((w|0)!=(R|0));if(s)Ht(a,1,7828,K)|0}zn(x)}}while(0);e:do{if(ie(f[$>>2]|0,f[Q>>2]|0)|0){y=i+4788|0;M=i+40|0;E=i+44|0;A=i+18690|0;S=r+16|0;l=i+18696|0;T=r+24|0;C=i+5596|0;R=i+5600|0;L=i+5604|0;x=i+5608|0;P=i+5612|0;O=i+5616|0;B=i+5620|0;I=0;i:while(1){w=f[N>>2]|0;m=w+(I*5640|0)|0;K=f[y>>2]|0;s=w+(I*5640|0)+8|0;f[s>>2]=K;if(K){h=((n[W>>1]|0)+-3&65535)<4;b=0;do{d=(t[F>>0]&4)==0;do{if(!h)if(d){f[w+(I*5640|0)+20+(b<<2)>>2]=f[i+4792+(b<<2)>>2];break}else{f[w+(I*5640|0)+5184+(b<<2)>>2]=f[i+5192+(b<<2)>>2];break}else{if(!d)f[w+(I*5640|0)+5184+(b<<2)>>2]=f[i+5192+(b<<2)>>2];f[w+(I*5640|0)+20+(b<<2)>>2]=f[i+4792+(b<<2)>>2]}}while(0);b=b+1|0}while(b>>>0<(f[s>>2]|0)>>>0)}f[m>>2]=f[M>>2];f[w+(I*5640|0)+4>>2]=f[E>>2];k=w+(I*5640|0)+16|0;f[k>>2]=t[A>>0];s=w+(I*5640|0)+5636|0;h=t[s>>0]|0;t[s>>0]=h&-5;if(!(f[D>>2]|0))f[w+(I*5640|0)+420>>2]=0;else{t[s>>0]=h|4;h=f[D>>2]|0;if(!h)s=0;else{d=I+1|0;b=0;s=0;do{if((d|0)==(f[i+48+(b*148|0)+48>>2]|0)){f[w+(I*5640|0)+424+(s*148|0)>>2]=f[i+48+(s*148|0)>>2];f[w+(I*5640|0)+424+(s*148|0)+4>>2]=f[i+48+(s*148|0)+4>>2];f[w+(I*5640|0)+424+(s*148|0)+8>>2]=f[i+48+(s*148|0)+8>>2];f[w+(I*5640|0)+424+(s*148|0)+12>>2]=f[i+48+(s*148|0)+12>>2];f[w+(I*5640|0)+424+(s*148|0)+16>>2]=f[i+48+(s*148|0)+16>>2];f[w+(I*5640|0)+424+(s*148|0)+32>>2]=f[i+48+(s*148|0)+32>>2];f[w+(I*5640|0)+424+(s*148|0)+48>>2]=f[i+48+(s*148|0)+48>>2];s=s+1|0}b=b+1|0}while(b>>>0<h>>>0)}f[w+(I*5640|0)+420>>2]=s+-1}K=Fn(f[S>>2]|0,1080)|0;g=w+(I*5640|0)+5584|0;f[g>>2]=K;if(!K){J=149;break}do{if(!(f[l>>2]|0)){r:do{if((f[k>>2]|0)==1){s=f[S>>2]|0;if(s>>>0<=2){d=s;break}h=f[T>>2]|0;s=f[h>>2]|0;do{if((s|0)==(f[h+52>>2]|0)){if((s|0)!=(f[h+104>>2]|0))break;s=f[h+4>>2]|0;if((s|0)!=(f[h+56>>2]|0))break;if((s|0)==(f[h+108>>2]|0)){J=175;break r}}}while(0);Ht(a,2,8224,fe)|0;f[k>>2]=0;J=175}else J=175}while(0);if((J|0)==175){J=0;d=f[S>>2]|0}if(!d)break;s=f[T>>2]|0;h=0;do{if(!(f[s+(h*52|0)+32>>2]|0))f[(f[g>>2]|0)+(h*1080|0)+1076>>2]=1<<(f[s+(h*52|0)+24>>2]|0)+-1;h=h+1|0}while(h>>>0<d>>>0);Z=d;J=166}else{d=f[S>>2]|0;d=ie(d<<2,d)|0;s=Nn(d)|0;b=(f[l>>2]|0)+d|0;if(!s){J=152;break i}f[k>>2]=2;h=Nn(d)|0;f[w+(I*5640|0)+5608>>2]=h;if(!h){J=154;break i}Nl(h|0,f[l>>2]|0,d|0)|0;Nl(s|0,f[l>>2]|0,d|0)|0;h=Nn(d)|0;d=w+(I*5640|0)+5604|0;f[d>>2]=h;if(!h){J=156;break i}if(!(Fa(s,h,f[S>>2]|0)|0)){J=158;break i}h=Nn(f[S>>2]<<3)|0;f[w+(I*5640|0)+5600>>2]=h;if(!h){J=160;break i}vr(h,f[S>>2]|0,f[d>>2]|0);zn(s);s=f[S>>2]|0;if(s){h=f[g>>2]|0;d=0;do{f[h+(d*1080|0)+1076>>2]=f[b+(d<<2)>>2];d=d+1|0}while(d>>>0<s>>>0)}if(!(Kn(m,r)|0)){J=167;break i}Z=f[S>>2]|0;J=166}}while(0);if((J|0)==166?(J=0,(Z|0)!=0):0){p=0;do{m=f[g>>2]|0;v=m+(p*1080|0)|0;f[v>>2]=f[M>>2]&1;d=f[ee>>2]|0;b=m+(p*1080|0)+4|0;f[b>>2]=d;s=f[C>>2]|0;if((s|0)>1){h=0;do{s=s>>1;h=h+1|0}while((s|0)>1);s=h}else s=0;f[m+(p*1080|0)+8>>2]=s;s=f[R>>2]|0;if((s|0)>1){h=0;do{s=s>>1;h=h+1|0}while((s|0)>1);s=h}else s=0;f[m+(p*1080|0)+12>>2]=s;f[m+(p*1080|0)+16>>2]=f[L>>2];K=f[x>>2]|0;f[m+(p*1080|0)+20>>2]=(K|0)==0&1;f[m+(p*1080|0)+24>>2]=(K|0)!=0?2:0;f[m+(p*1080|0)+804>>2]=2;if((p|0)==(f[P>>2]|0))s=f[O>>2]|0;else s=0;f[m+(p*1080|0)+808>>2]=s;do{if(!(f[M>>2]&1)){if(!d)break;else s=0;do{f[m+(p*1080|0)+812+(s<<2)>>2]=15;f[m+(p*1080|0)+944+(s<<2)>>2]=15;s=s+1|0}while(s>>>0<(f[b>>2]|0)>>>0)}else{if((d|0)>0){b=d;w=0}else break;while(1){k=b;b=b+-1|0;s=f[B>>2]|0;do{if((w|0)<(s|0)){s=f[i+5624+(w<<2)>>2]|0;if((s|0)<1)f[m+(p*1080|0)+812+(b<<2)>>2]=1;else{if((s|0)>1){h=0;do{s=s>>1;h=h+1|0}while((s|0)>1);s=h}else s=0;f[m+(p*1080|0)+812+(b<<2)>>2]=s}s=f[i+5756+(w<<2)>>2]|0;if((s|0)<1){f[m+(p*1080|0)+944+(b<<2)>>2]=1;break}if((s|0)>1){h=0;do{s=s>>1;h=h+1|0}while((s|0)>1);s=h}else s=0;f[m+(p*1080|0)+944+(b<<2)>>2]=s}else{K=s+-1|0;h=w-K|0;s=f[i+5624+(K<<2)>>2]>>h;h=f[i+5756+(K<<2)>>2]>>h;if((s|0)<1)f[m+(p*1080|0)+812+(b<<2)>>2]=1;else{if((s|0)>1){d=0;do{s=s>>1;d=d+1|0}while((s|0)>1);s=d}else s=0;f[m+(p*1080|0)+812+(b<<2)>>2]=s}if((h|0)<1){f[m+(p*1080|0)+944+(b<<2)>>2]=1;break}if((h|0)>1){s=0;do{h=h>>1;s=s+1|0}while((h|0)>1)}else s=0;f[m+(p*1080|0)+944+(b<<2)>>2]=s}}while(0);if((k|0)<=1)break;else w=w+1|0}}}while(0);Ra(v,f[(f[T>>2]|0)+(p*52|0)+24>>2]|0);p=p+1|0}while(p>>>0<(f[S>>2]|0)>>>0)}I=I+1|0;if(I>>>0>=(ie(f[$>>2]|0,f[Q>>2]|0)|0)>>>0)break e}if((J|0)==149){Ht(a,1,7867,re)|0;a=0;c=ue;return a|0}else if((J|0)==152){Ht(a,1,7931,te)|0;a=0;c=ue;return a|0}else if((J|0)==154){zn(s);Ht(a,1,7974,ae)|0;a=0;c=ue;return a|0}else if((J|0)==156){zn(s);Ht(a,1,8032,se)|0;a=0;c=ue;return a|0}else if((J|0)==158){zn(s);Ht(a,1,8092,le)|0;a=0;c=ue;return a|0}else if((J|0)==160){zn(s);Ht(a,1,8140,oe)|0;a=0;c=ue;return a|0}else if((J|0)==167){Ht(a,1,8190,ne)|0;a=0;c=ue;return a|0}}else l=i+18696|0}while(0);s=f[l>>2]|0;if(!s){a=1;c=ue;return a|0}zn(s);f[l>>2]=0;a=1;c=ue;return a|0}function Kn(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0;if((f[e+16>>2]|0)!=2){e=1;return e|0}h=e+5604|0;_=e+5616|0;r=f[_>>2]|0;d=e+5620|0;do{if(f[h>>2]|0){do{if((r|0)==(f[d>>2]|0)){r=r+10|0;f[d>>2]=r;n=e+5612|0;r=Hn(f[n>>2]|0,r*20|0)|0;if(r){f[n>>2]=r;w=f[_>>2]|0;Ol(r+(w*20|0)|0,0,((f[d>>2]|0)-w|0)*20|0)|0;r=f[_>>2]|0;break}zn(f[n>>2]|0);f[n>>2]=0;f[d>>2]=0;f[_>>2]=0;e=0;return e|0}else n=e+5612|0}while(0);u=f[n>>2]|0;s=u+(r*20|0)|0;c=u+(r*20|0)+12|0;n=f[c>>2]|0;if(n){zn(n);f[c>>2]=0}f[u+(r*20|0)+8>>2]=1;f[u+(r*20|0)+4>>2]=1;f[s>>2]=2;n=f[i+16>>2]|0;n=ie(n,n)|0;a=n<<2;l=Nn(a)|0;f[c>>2]=l;if(!l){e=0;return e|0}else{So[f[768+(f[s>>2]<<2)>>2]&15](f[h>>2]|0,l,n);f[u+(r*20|0)+16>>2]=a;r=(f[_>>2]|0)+1|0;f[_>>2]=r;l=2;break}}else{l=1;s=0}}while(0);do{if((r|0)==(f[d>>2]|0)){n=r+10|0;f[d>>2]=n;r=e+5612|0;n=Hn(f[r>>2]|0,n*20|0)|0;if(!n){zn(f[r>>2]|0);f[r>>2]=0;f[d>>2]=0;f[_>>2]=0;e=0;return e|0}else{f[r>>2]=n;a=f[_>>2]|0;Ol(n+(a*20|0)|0,0,((f[d>>2]|0)-a|0)*20|0)|0;if(!s){s=0;break}s=n+((a+-1|0)*20|0)|0;break}}else r=e+5612|0}while(0);h=f[r>>2]|0;d=f[_>>2]|0;w=h+(d*20|0)|0;b=h+(d*20|0)+12|0;r=f[b>>2]|0;if(r){zn(r);f[b>>2]=0}k=l+1|0;f[h+(d*20|0)+8>>2]=l;f[h+(d*20|0)+4>>2]=2;f[w>>2]=2;i=i+16|0;r=f[i>>2]|0;n=r<<2;c=Nn(n)|0;f[b>>2]=c;if(!c){e=0;return e|0}a=Nn(n)|0;if(!a){zn(f[b>>2]|0);f[b>>2]=0;e=0;return e|0}if(r){l=0;u=a;c=f[e+5584>>2]|0;while(1){o[u>>2]=+(f[c+1076>>2]|0);l=l+1|0;if((l|0)==(r|0))break;else{u=u+4|0;c=c+1080|0}}}So[f[768+(f[w>>2]<<2)>>2]&15](a,f[b>>2]|0,r);zn(a);f[h+(d*20|0)+16>>2]=n;f[_>>2]=(f[_>>2]|0)+1;l=e+5628|0;r=f[l>>2]|0;a=e+5632|0;do{if((r|0)==(f[a>>2]|0)){r=r+10|0;f[a>>2]=r;n=e+5624|0;r=Hn(f[n>>2]|0,r*20|0)|0;if(r){f[n>>2]=r;e=f[l>>2]|0;Ol(r+(e*20|0)|0,0,((f[a>>2]|0)-e|0)*20|0)|0;r=f[l>>2]|0;break}zn(f[n>>2]|0);f[n>>2]=0;f[a>>2]=0;f[l>>2]=0;e=0;return e|0}else n=e+5624|0}while(0);e=f[n>>2]|0;f[e+(r*20|0)+8>>2]=s;_=e+(r*20|0)+16|0;t[_>>0]=t[_>>0]|1;f[e+(r*20|0)+4>>2]=f[i>>2];f[e+(r*20|0)>>2]=k;f[e+(r*20|0)+12>>2]=w;f[l>>2]=(f[l>>2]|0)+1;e=1;return e|0}function Wn(e,i,r){e=e|0;i=i|0;r=r|0;return 1}function Zn(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0;o=qt()|0;u=i+80|0;f[u>>2]=o;if(!o){u=0;return u|0}n=i+192|0;if((oa(f[n>>2]|0,23,t)|0)!=0?(oa(f[n>>2]|0,24,t)|0)!=0:0){s=f[n>>2]|0;l=ua(s)|0;n=ca(s)|0;if(l){o=0;a=1;while(1){if(!a)a=0;else a=(po[f[n>>2]&63](i,e,t)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{n=n+4|0;a=a&1}}ha(s);if(!a){Vt(f[u>>2]|0);f[u>>2]=0;u=0;return u|0}}else ha(s);n=i+188|0;if((oa(f[n>>2]|0,25,t)|0)!=0?(oa(f[n>>2]|0,26,t)|0)!=0:0){s=f[n>>2]|0;l=ua(s)|0;n=ca(s)|0;if(l){o=0;a=1;while(1){if(!a)a=0;else a=(po[f[n>>2]&63](i,e,t)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{n=n+4|0;a=a&1}}ha(s);if(!a){Vt(f[u>>2]|0);f[u>>2]=0;u=0;return u|0}}else ha(s);n=qt()|0;f[r>>2]=n;if(!n){u=0;return u|0}Kt(f[u>>2]|0,n);n=ie(f[i+116>>2]|0,f[i+112>>2]|0)|0;l=i+196|0;f[(f[l>>2]|0)+36>>2]=n;n=Fn(n,40)|0;a=f[l>>2]|0;f[a+40>>2]=n;if(!n){u=0;return u|0}if(!(f[a+36>>2]|0)){u=1;return u|0}s=0;while(1){f[n+(s*40|0)+28>>2]=100;f[n+(s*40|0)+20>>2]=0;u=Fn(100,24)|0;a=f[l>>2]|0;n=f[a+40>>2]|0;f[n+(s*40|0)+24>>2]=u;s=s+1|0;if(!u){n=0;a=30;break}if(s>>>0>=(f[a+36>>2]|0)>>>0){n=1;a=30;break}}if((a|0)==30)return n|0}Vt(f[u>>2]|0);f[u>>2]=0;u=0;return u|0}Vt(f[u>>2]|0);f[u>>2]=0;u=0;return u|0}function Jn(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0;if(!e)return;i=e+28|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0}s=e+40|0;i=f[s>>2]|0;if(i){a=e+36|0;if(f[a>>2]|0){r=i;n=0;do{t=f[r+(n*40|0)+36>>2]|0;if(t){zn(t);i=f[s>>2]|0;f[i+(n*40|0)+36>>2]=0;r=i}t=f[r+(n*40|0)+16>>2]|0;if(t){zn(t);i=f[s>>2]|0;f[i+(n*40|0)+16>>2]=0;r=i}t=f[r+(n*40|0)+24>>2]|0;if(t){zn(t);r=f[s>>2]|0;f[r+(n*40|0)+24>>2]=0;i=r}n=n+1|0}while(n>>>0<(f[a>>2]|0)>>>0)}zn(i);f[s>>2]=0}zn(e);return}function Qn(e,i,r,a,s,l,o,u,h,d,b){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;d=d|0;b=b|0;var k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0,V=0,G=0,K=0,W=0,Z=0,J=0,Q=0,$=0,ee=0,re=0,te=0,ne=0,fe=0,ae=0,se=0,le=0,oe=0,ue=0,ce=0,he=0,de=0,be=0,ke=0,we=0,_e=0,me=0,ve=0,pe=0,ge=0,ye=0,Me=0,Ee=0,Ae=0,Se=0,Te=0,Ce=0,Re=0;Re=c;c=c+256|0;Ce=Re+200|0;Te=Re+192|0;Ae=Re+184|0;Ee=Re+176|0;ke=Re+168|0;be=Re+160|0;de=Re+152|0;he=Re+144|0;ce=Re+136|0;ue=Re+128|0;le=Re+120|0;se=Re+112|0;ye=Re+104|0;pe=Re+96|0;ae=Re+88|0;fe=Re+80|0;ne=Re+72|0;ge=Re+64|0;te=Re+56|0;re=Re+48|0;me=Re+40|0;_e=Re+32|0;we=Re+24|0;oe=Re+16|0;ee=Re+8|0;$=Re;G=Re+240|0;X=Re+236|0;W=Re+232|0;J=Re+228|0;Q=Re+224|0;V=Re+220|0;Z=Re+216|0;q=Re+212|0;K=Re+208|0;f[q>>2]=65424;Se=e+8|0;e:do{switch(f[Se>>2]|0){case 256:{f[q>>2]=65497;k=e+76|0;Me=117;break}case 8:{ve=e+76|0;if(!(t[ve>>0]&1)){j=e+200|0;H=e+164|0;z=e+72|0;Y=e+24|0;T=e+196|0;C=e+112|0;R=e+116|0;P=G+2|0;O=G+6|0;B=G+7|0;I=e+16|0;D=e+20|0;N=e+64|0;k=65424;i:while(1){r:do{if((k|0)!=65427){while(1){S=Nt(d)|0;if((S|0)==0&(x|0)==0){Me=7;break}if((Ot(d,f[I>>2]|0,2,b)|0)!=2){Me=9;break i}ct(f[I>>2]|0,K,2);if((f[K>>2]|0)>>>0<2){Me=11;break i}if((f[q>>2]|0)==32896?(S=Nt(d)|0,(S|0)==0&(x|0)==0):0){Me=14;break}m=f[Se>>2]|0;k=f[K>>2]|0;if(m&16)f[Y>>2]=-2-k+(f[Y>>2]|0);w=k+-2|0;f[K>>2]=w;k=f[q>>2]|0;_=784;while(1){S=f[_>>2]|0;if((S|0)==0|(S|0)==(k|0)){E=_;break}else _=_+12|0}if(!(f[_+4>>2]&m)){Me=20;break i}if(w>>>0>(f[D>>2]|0)>>>0){S=Nt(d)|0;A=x;if(0>(A|0)|0==(A|0)&w>>>0>S>>>0){Me=24;break i}k=Hn(f[I>>2]|0,f[K>>2]|0)|0;if(!k){Me=26;break i}f[I>>2]=k;w=f[K>>2]|0;f[D>>2]=w}else k=f[I>>2]|0;w=Ot(d,k,w,b)|0;if((w|0)!=(f[K>>2]|0)){Me=29;break i}k=f[_+8>>2]|0;if(!k){Me=31;break i}if(!(Co[k&63](e,f[I>>2]|0,w,b)|0)){Me=33;break i}_=f[j>>2]|0;w=f[T>>2]|0;g=f[E>>2]|0;y=Dt(d)|0;M=f[K>>2]|0;y=y-M+-4|0;M=M+4|0;w=w+40|0;p=f[w>>2]|0;k=f[p+(_*40|0)+20>>2]|0;m=p+(_*40|0)+28|0;v=f[m>>2]|0;if((k+1|0)>>>0>v>>>0){v=~~(+(v>>>0)+100.0)>>>0;f[m>>2]=v;m=Hn(f[p+(_*40|0)+24>>2]|0,v*24|0)|0;v=f[w>>2]|0;k=v+(_*40|0)+24|0;if(!m){Me=41;break i}f[k>>2]=m;w=v;k=f[v+(_*40|0)+20>>2]|0}else{w=p;m=f[p+(_*40|0)+24>>2]|0}n[m+(k*24|0)>>1]=g;S=m+(k*24|0)+8|0;f[S>>2]=y;f[S+4>>2]=((y|0)<0)<<31>>31;f[m+(k*24|0)+16>>2]=M;f[w+(_*40|0)+20>>2]=k+1;if((g|0)==65424?(L=f[w+(_*40|0)+16>>2]|0,(L|0)!=0):0){S=L+((f[w+(_*40|0)+12>>2]|0)*24|0)|0;f[S>>2]=y;f[S+4>>2]=0}do{if((f[E>>2]|0)==65424){k=Dt(d)|0;k=-4-(f[K>>2]|0)+k|0;S=N;A=f[S+4>>2]|0;if(!(0>(A|0)|(0==(A|0)?k>>>0>(f[S>>2]|0)>>>0:0)))break;S=N;f[S>>2]=k;f[S+4>>2]=0}}while(0);if(t[ve>>0]&4){Me=46;break}if((Ot(d,f[I>>2]|0,2,b)|0)!=2){Me=50;break i}ct(f[I>>2]|0,q,2);if((f[q>>2]|0)==65427)break r}if((Me|0)==7){Me=0;f[Se>>2]=64;break}else if((Me|0)==14){Me=0;f[Se>>2]=64;break}else if((Me|0)==46){Me=0;S=Ft(d,f[Y>>2]|0,0,b)|0;if(!((x|0)==0?(S|0)==(f[Y>>2]|0):0)){Me=47;break i}f[q>>2]=65427;break}}}while(0);S=Nt(d)|0;if((S|0)==0&(x|0)==0?(f[Se>>2]|0)==64:0){Me=115;break}k=t[ve>>0]|0;if(!(k&4)){w=f[j>>2]|0;_=f[H>>2]|0;if(!(f[z>>2]|0)){k=f[Y>>2]|0;if(k>>>0>1){m=k+-2|0;f[Y>>2]=m}else m=k}else{m=Nt(d)|0;m=Il(m|0,x|0,-2,0)|0;f[Y>>2]=m}k=_+(w*5640|0)+5592|0;S=_+(w*5640|0)+5596|0;do{if(!m)A=1;else{A=Nt(d)|0;E=x;if(0>(E|0)|0==(E|0)&m>>>0>A>>>0)Ht(b,2,8573,ae)|0;w=f[k>>2]|0;if(!w){A=Nn(f[Y>>2]|0)|0;f[k>>2]=A;if(!A)break i;else{A=0;break}}w=Hn(w,(f[Y>>2]|0)+(f[S>>2]|0)|0)|0;if(!w){Me=65;break i}f[k>>2]=w;A=0}}while(0);w=f[T>>2]|0;if(w){y=Dt(d)|0;m=x;E=Il(y|0,m|0,-2,-1)|0;_=f[j>>2]|0;w=w+40|0;p=f[w>>2]|0;g=f[p+(_*40|0)+12>>2]|0;v=f[p+(_*40|0)+16>>2]|0;M=v+(g*24|0)+8|0;f[M>>2]=E;f[M+4>>2]=x;M=f[Y>>2]|0;m=Il(M|0,0,y|0,m|0)|0;g=v+(g*24|0)+16|0;f[g>>2]=m;f[g+4>>2]=x;M=M+2|0;g=f[p+(_*40|0)+20>>2]|0;m=p+(_*40|0)+28|0;v=f[m>>2]|0;if((g+1|0)>>>0>v>>>0){v=~~(+(v>>>0)+100.0)>>>0;f[m>>2]=v;m=Hn(f[p+(_*40|0)+24>>2]|0,v*24|0)|0;v=f[w>>2]|0;p=v+(_*40|0)+24|0;if(!m){k=p;Me=74;break}f[p>>2]=m;y=v;w=f[v+(_*40|0)+20>>2]|0}else{y=p;m=f[p+(_*40|0)+24>>2]|0;w=g}n[m+(w*24|0)>>1]=-109;g=Pl(0,E|0,32)|0;E=m+(w*24|0)+8|0;f[E>>2]=g;f[E+4>>2]=x;f[m+(w*24|0)+16>>2]=M;f[y+(_*40|0)+20>>2]=w+1}if(!A)k=Ot(d,(f[k>>2]|0)+(f[S>>2]|0)|0,f[Y>>2]|0,b)|0;else k=0;f[Se>>2]=(k|0)==(f[Y>>2]|0)?8:64;f[S>>2]=(f[S>>2]|0)+k;k=t[ve>>0]|0;if((k&9)==1){t[ve>>0]=k|8;w=f[j>>2]|0;do{if((jt(d)|0)!=0?(F=Dt(d)|0,U=x,!((F|0)==-1&(U|0)==-1)):0){while(1){if((Ot(d,G,2,b)|0)!=2){Me=81;break}ct(G,X,2);if((f[X>>2]|0)!=65424){Me=83;break}if((Ot(d,G,2,b)|0)!=2){Me=85;break}ct(G,W,2);if((f[W>>2]|0)!=10){Me=87;break}f[W>>2]=8;k=Ot(d,G,8,b)|0;if((k|0)!=(f[W>>2]|0)){Me=89;break}if((k|0)!=8){Me=91;break}ct(G,J,2);ct(P,Q,4);ct(O,V,1);ct(B,Z,1);if((f[J>>2]|0)==(w|0)){Me=97;break}k=f[Q>>2]|0;if(k>>>0<14){Me=94;break}Me=k+-12|0;f[Q>>2]=Me;Me=Ft(d,Me,0,b)|0;if(!((x|0)==0?(Me|0)==(f[Q>>2]|0):0)){Me=96;break}}if((Me|0)==81){Me=0;k=(Ut(d,F,U,b)|0)!=0&1;w=0;break}else if((Me|0)==83){Me=0;k=(Ut(d,F,U,b)|0)!=0&1;w=0;break}else if((Me|0)==85){Me=0;Ht(b,1,8295,se)|0;k=0;w=0;break}else if((Me|0)==87){Me=0;Ht(b,1,8313,le)|0;k=0;w=0;break}else if((Me|0)==89){Me=0;Ht(b,1,8295,ue)|0;k=0;w=0;break}else if((Me|0)==91){Me=0;Ht(b,1,8662,ce)|0;k=0;w=0;break}else if((Me|0)==94){Me=0;k=(Ut(d,F,U,b)|0)!=0&1;w=0;break}else if((Me|0)==96){Me=0;k=(Ut(d,F,U,b)|0)!=0&1;w=0;break}else if((Me|0)==97){Me=0;w=(f[V>>2]|0)==(f[Z>>2]|0)&1;k=(Ut(d,F,U,b)|0)!=0&1;break}}else{k=1;w=0}}while(0);if(!k){Me=99;break}if(w){k=ie(f[R>>2]|0,f[C>>2]|0)|0;t[ve>>0]=t[ve>>0]&-18|16;if(k){w=f[H>>2]|0;v=0;do{_=w+(v*5640|0)+5588|0;m=f[_>>2]|0;if(m)f[_>>2]=m+1;v=v+1|0}while((v|0)!=(k|0))}Ht(b,2,8734,de)|0}}if(!(t[ve>>0]&1)){if((Ot(d,f[I>>2]|0,2,b)|0)!=2){Me=109;break}ct(f[I>>2]|0,q,2)}}else{t[ve>>0]=k&-6;f[Se>>2]=8;if((Ot(d,f[I>>2]|0,2,b)|0)!=2){Me=113;break}ct(f[I>>2]|0,q,2)}k=f[q>>2]|0;if(!((k|0)!=65497&(t[ve>>0]&1)==0)){Me=116;break}}switch(Me|0){case 9:{Ht(b,1,8295,$)|0;b=0;c=Re;return b|0}case 11:{Ht(b,1,8313,ee)|0;b=0;c=Re;return b|0}case 20:{Ht(b,1,8339,oe)|0;b=0;c=Re;return b|0}case 24:{Ht(b,1,8382,we)|0;b=0;c=Re;return b|0}case 26:{zn(f[I>>2]|0);f[I>>2]=0;f[D>>2]=0;Ht(b,1,8427,_e)|0;b=0;c=Re;return b|0}case 29:{Ht(b,1,8295,me)|0;b=0;c=Re;return b|0}case 31:{Ht(b,1,8461,re)|0;b=0;c=Re;return b|0}case 33:{f[te>>2]=f[q>>2];Ht(b,1,8490,te)|0;b=0;c=Re;return b|0}case 41:{zn(f[k>>2]|0);Ce=f[w>>2]|0;f[Ce+(_*40|0)+24>>2]=0;f[Ce+(_*40|0)+28>>2]=0;f[Ce+(_*40|0)+20>>2]=0;Ht(b,1,8537,ge)|0;b=0;c=Re;return b|0}case 47:{Ht(b,1,8295,ne)|0;b=0;c=Re;return b|0}case 50:{Ht(b,1,8295,fe)|0;b=0;c=Re;return b|0}case 65:{zn(f[k>>2]|0);f[k>>2]=0;break}case 74:{zn(f[k>>2]|0);Ce=f[w>>2]|0;f[Ce+(_*40|0)+24>>2]=0;f[Ce+(_*40|0)+28>>2]=0;f[Ce+(_*40|0)+20>>2]=0;Ht(b,1,8537,ye)|0;b=0;c=Re;return b|0}case 99:{Ht(b,1,8688,he)|0;b=0;c=Re;return b|0}case 109:{Ht(b,1,8295,be)|0;b=0;c=Re;return b|0}case 113:{Ht(b,1,8295,ke)|0;b=0;c=Re;return b|0}case 115:{k=f[q>>2]|0;Me=116;break}}if((Me|0)==116)if((k|0)==65497){k=ve;Me=117;break e}else{k=ve;break e}Ht(b,1,8628,pe)|0;b=0;c=Re;return b|0}else k=ve;break}default:{b=0;c=Re;return b|0}}}while(0);if((Me|0)==117)if((f[Se>>2]|0)!=256){f[e+200>>2]=0;f[Se>>2]=256}if(!(t[k>>0]&1)){m=ie(f[e+112>>2]|0,f[e+116>>2]|0)|0;v=e+200|0;w=f[v>>2]|0;e:do{if(w>>>0<m>>>0){k=w;_=(f[e+164>>2]|0)+(w*5640|0)|0;while(1){if(f[_+5592>>2]|0){w=k;break e}w=k+1|0;f[v>>2]=w;if(w>>>0<m>>>0){k=w;_=_+5640|0}else break}}}while(0);if((w|0)==(m|0)){f[h>>2]=0;b=1;c=Re;return b|0}}else{w=e+200|0;v=w;w=f[w>>2]|0}S=f[e+164>>2]|0;if(t[S+(w*5640|0)+5636>>0]&2){T=S+(w*5640|0)+5160|0;_=f[T>>2]|0;if(!_)k=0;else{m=f[S+(w*5640|0)+5164>>2]|0;p=0;k=0;do{k=(f[m+(p<<3)+4>>2]|0)+k|0;p=p+1|0}while((p|0)!=(_|0))}Me=Nn(k)|0;A=S+(w*5640|0)+5172|0;f[A>>2]=Me;if(!Me){Ht(b,1,8775,Ee)|0;Ht(b,1,8813,Ae)|0;b=0;c=Re;return b|0}E=S+(w*5640|0)+5180|0;f[E>>2]=k;_=f[T>>2]|0;M=S+(w*5640|0)+5164|0;if(!_)k=f[M>>2]|0;else{k=f[M>>2]|0;g=k;y=0;p=0;while(1){m=f[g+(y<<3)>>2]|0;if(!m)m=g;else{Nl((f[A>>2]|0)+p|0,m|0,f[g+(y<<3)+4>>2]|0)|0;m=f[M>>2]|0;p=(f[m+(y<<3)+4>>2]|0)+p|0;zn(f[m+(y<<3)>>2]|0);m=f[M>>2]|0;f[m+(y<<3)>>2]=0;f[m+(y<<3)+4>>2]=0;_=f[T>>2]|0;k=m}y=y+1|0;if(y>>>0>=_>>>0)break;else g=m}}f[T>>2]=0;zn(k);f[M>>2]=0;f[S+(w*5640|0)+5168>>2]=f[A>>2];f[S+(w*5640|0)+5176>>2]=f[E>>2];w=f[v>>2]|0}k=e+204|0;if(!(Fr(f[k>>2]|0,w,b)|0)){Ht(b,1,8839,Te)|0;b=0;c=Re;return b|0}else{Te=ie(f[e+112>>2]|0,f[e+116>>2]|0)|0;f[Ce>>2]=(f[v>>2]|0)+1;f[Ce+4>>2]=Te;Ht(b,4,8873,Ce)|0;f[i>>2]=f[v>>2];f[h>>2]=1;f[r>>2]=Ur(f[k>>2]|0)|0;b=f[f[(f[k>>2]|0)+20>>2]>>2]|0;f[a>>2]=f[b>>2];f[s>>2]=f[b+4>>2];f[l>>2]=f[b+8>>2];f[o>>2]=f[b+12>>2];f[u>>2]=f[b+16>>2];f[Se>>2]=f[Se>>2]|128;b=1;c=Re;return b|0}return 0}function $n(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0;v=c;c=c+48|0;_=v+28|0;m=v+32|0;b=e+8|0;if(!(f[b>>2]&128)){a=0;c=v;return a|0}w=e+200|0;if((f[w>>2]|0)!=(i|0)){a=0;c=v;return a|0}l=f[e+164>>2]|0;d=l+(i*5640|0)|0;k=l+(i*5640|0)+5592|0;o=f[k>>2]|0;if(!o){kf(d);a=0;c=v;return a|0}u=e+204|0;h=l+(i*5640|0)+5596|0;if(!(Hr(f[u>>2]|0,o,f[h>>2]|0,i,f[e+196>>2]|0,s)|0)){kf(d);f[b>>2]=f[b>>2]|32768;Ht(s,1,8912,v)|0;a=0;c=v;return a|0}if(!(zr(f[u>>2]|0,r,n)|0)){a=0;c=v;return a|0}l=f[k>>2]|0;if(l){zn(l);f[k>>2]=0;f[h>>2]=0}k=e+76|0;t[k>>0]=t[k>>0]&-2;f[b>>2]=f[b>>2]&-129;k=Nt(a)|0;e=f[b>>2]|0;if((e|0)==256|(k|0)==0&(x|0)==0&(e|0)==64){a=1;c=v;return a|0}if((Ot(a,m,2,s)|0)!=2){Ht(s,2,8931,v+8|0)|0;a=1;c=v;return a|0}ct(m,_,2);switch(f[_>>2]|0){case 65497:{f[w>>2]=0;f[b>>2]=256;a=1;c=v;return a|0}case 65424:{a=1;c=v;return a|0}default:if((Nt(a)|0)==0&(x|0)==0){f[b>>2]=64;Ht(s,2,8975,v+16|0)|0;a=1;c=v;return a|0}else{Ht(s,1,9005,v+24|0)|0;a=0;c=v;return a|0}}return 0}function ef(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;A=c;c=c+112|0;E=A+96|0;M=A+88|0;y=A+80|0;g=A+72|0;p=A+64|0;m=A+56|0;_=A+48|0;b=A+40|0;d=A+32|0;h=A+24|0;u=A+16|0;k=f[e+80>>2]|0;if((f[e+8>>2]|0)!=8){Ht(l,1,9037,A)|0;l=0;c=A;return l|0}if(!(n|r|a|s)){Ht(l,4,9116,A+8|0)|0;f[e+28>>2]=0;f[e+32>>2]=0;f[e+36>>2]=f[e+112>>2];f[e+40>>2]=f[e+116>>2];l=1;c=A;return l|0}v=k+8|0;o=f[v>>2]|0;if(o>>>0<r>>>0){f[u>>2]=r;f[u+4>>2]=o;Ht(l,1,9185,u)|0;l=0;c=A;return l|0}o=f[k>>2]|0;if(o>>>0>r>>>0){f[h>>2]=r;f[h+4>>2]=o;Ht(l,2,9272,h)|0;o=0;r=f[k>>2]|0}else o=((r-(f[e+92>>2]|0)|0)>>>0)/((f[e+100>>2]|0)>>>0)|0;f[e+28>>2]=o;f[i>>2]=r;w=k+12|0;r=f[w>>2]|0;if(r>>>0<n>>>0){f[d>>2]=n;f[d+4>>2]=r;Ht(l,1,9360,d)|0;l=0;c=A;return l|0}u=k+4|0;r=f[u>>2]|0;if(r>>>0>n>>>0){f[b>>2]=n;f[b+4>>2]=r;Ht(l,2,9445,b)|0;r=0;n=f[u>>2]|0}else r=((n-(f[e+96>>2]|0)|0)>>>0)/((f[e+104>>2]|0)>>>0)|0;f[e+32>>2]=r;h=i+4|0;f[h>>2]=n;r=f[k>>2]|0;if(r>>>0>a>>>0){f[_>>2]=a;f[_+4>>2]=r;Ht(l,1,9531,_)|0;l=0;c=A;return l|0}r=f[v>>2]|0;if(r>>>0<a>>>0){f[m>>2]=a;f[m+4>>2]=r;Ht(l,2,9620,m)|0;r=f[e+112>>2]|0;a=f[v>>2]|0}else{r=f[e+100>>2]|0;r=(a+-1-(f[e+92>>2]|0)+r|0)/(r|0)|0}f[e+36>>2]=r;o=i+8|0;f[o>>2]=a;a=f[u>>2]|0;if(a>>>0>s>>>0){f[p>>2]=s;f[p+4>>2]=a;Ht(l,1,9708,p)|0;l=0;c=A;return l|0}a=f[w>>2]|0;if(a>>>0<s>>>0){f[g>>2]=s;f[g+4>>2]=a;Ht(l,2,9798,g)|0;r=f[w>>2]|0;a=f[e+116>>2]|0}else{a=f[e+104>>2]|0;r=s;a=(s+-1-(f[e+96>>2]|0)+a|0)/(a|0)|0}f[e+40>>2]=a;s=i+12|0;f[s>>2]=r;g=e+76|0;t[g>>0]=t[g>>0]|2;g=f[i+16>>2]|0;e=f[i>>2]|0;e:do{if(g){n=f[h>>2]|0;v=n+-1|0;p=f[o>>2]|0;w=p+-1|0;_=e+-1|0;a=0;k=f[i+24>>2]|0;while(1){i=f[k>>2]|0;r=(_+i|0)/(i|0)|0;f[k+16>>2]=r;b=f[k+4>>2]|0;o=(v+b|0)/(b|0)|0;f[k+20>>2]=o;i=(w+i|0)/(i|0)|0;u=f[k+40>>2]|0;h=Bl(1,0,u|0)|0;d=x;i=Il(i|0,((i|0)<0)<<31>>31|0,-1,-1)|0;i=Il(i|0,x|0,h|0,d|0)|0;i=Pl(i|0,x|0,u|0)|0;r=Il(r|0,((r|0)<0)<<31>>31|0,-1,-1)|0;r=Il(r|0,x|0,h|0,d|0)|0;r=Pl(r|0,x|0,u|0)|0;r=i-r|0;if((r|0)<0){o=29;break}m=f[s>>2]|0;i=(b+-1+m|0)/(b|0)|0;f[k+8>>2]=r;i=Il(i|0,((i|0)<0)<<31>>31|0,-1,-1)|0;i=Il(i|0,x|0,h|0,d|0)|0;i=Pl(i|0,x|0,u|0)|0;r=Il(o|0,((o|0)<0)<<31>>31|0,-1,-1)|0;r=Il(r|0,x|0,h|0,d|0)|0;r=Pl(r|0,x|0,u|0)|0;r=i-r|0;if((r|0)<0){o=31;break}f[k+12>>2]=r;a=a+1|0;if(a>>>0>=g>>>0){r=p;a=m;break e}else k=k+52|0}if((o|0)==29){f[y>>2]=a;f[y+4>>2]=r;Ht(l,1,9887,y)|0;l=0;c=A;return l|0}else if((o|0)==31){f[M>>2]=a;f[M+4>>2]=r;Ht(l,1,9956,M)|0;l=0;c=A;return l|0}}else{n=f[h>>2]|0;r=f[o>>2]|0;a=f[s>>2]|0}}while(0);f[E>>2]=e;f[E+4>>2]=n;f[E+8>>2]=r;f[E+12>>2]=a;Ht(l,4,10025,E)|0;l=1;c=A;return l|0}function rf(){var e=0,i=0,r=0;e=Fn(1,208)|0;if(!e){i=0;return i|0}f[e>>2]=1;i=e+184|0;t[i>>0]=t[i>>0]|2;i=Fn(1,5640)|0;f[e+12>>2]=i;if(!i){Vn(e);i=0;return i|0}i=Fn(1,1e3)|0;f[e+16>>2]=i;if(!i){Vn(e);i=0;return i|0}f[e+20>>2]=1e3;f[e+60>>2]=-1;i=e+64|0;f[i>>2]=0;f[i+4>>2]=0;i=Fn(1,48)|0;do{if(i){f[i+32>>2]=100;f[i+24>>2]=0;r=Fn(100,24)|0;f[i+28>>2]=r;if(!r){zn(i);break}f[i+40>>2]=0;f[e+196>>2]=i;r=sa()|0;f[e+192>>2]=r;if(!r){Vn(e);r=0;return r|0}r=sa()|0;f[e+188>>2]=r;if(r){r=e;return r|0}Vn(e);r=0;return r|0}}while(0);f[e+196>>2]=0;Vn(e);r=0;return r|0}function tf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0;v=c;c=c+128|0;m=v+104|0;_=v+72|0;w=v+64|0;d=v+40|0;u=v+24|0;l=v+16|0;a=v+8|0;n=v;if(i&384){il(10063,11,1,r)|0;c=v;return}if((i&1|0)!=0?(t=f[e+80>>2]|0,(t|0)!=0):0)nf(t,0,r);if(i&2){il(10075,36,1,r)|0;t=f[e+96>>2]|0;f[n>>2]=f[e+92>>2];f[n+4>>2]=t;qs(r,10112,n)|0;n=f[e+104>>2]|0;f[a>>2]=f[e+100>>2];f[a+4>>2]=n;qs(r,10130,a)|0;a=f[e+116>>2]|0;f[l>>2]=f[e+112>>2];f[l+4>>2]=a;qs(r,10148,l)|0;pf(f[e+12>>2]|0,f[(f[e+80>>2]|0)+16>>2]|0,r);il(10164,2,1,r)|0}if((i&8|0)!=0?(o=ie(f[e+112>>2]|0,f[e+116>>2]|0)|0,(o|0)!=0):0){t=e+80|0;n=0;a=f[e+164>>2]|0;while(1){pf(a,f[(f[t>>2]|0)+16>>2]|0,r);n=n+1|0;if((n|0)==(o|0))break;else a=a+5640|0}}if(!(i&16)){c=v;return}l=f[e+196>>2]|0;il(10167,37,1,r)|0;o=l;i=f[o+4>>2]|0;t=l+8|0;e=f[t>>2]|0;t=f[t+4>>2]|0;a=u;f[a>>2]=f[o>>2];f[a+4>>2]=i;a=u+8|0;f[a>>2]=e;f[a+4>>2]=t;qs(r,10205,u)|0;il(10272,17,1,r)|0;a=l+28|0;t=f[a>>2]|0;e:do{if((t|0)!=0?(h=l+24|0,(f[h>>2]|0)!=0):0){n=0;while(1){i=t+(n*24|0)+8|0;o=f[i>>2]|0;i=f[i+4>>2]|0;u=f[t+(n*24|0)+16>>2]|0;f[d>>2]=s[t+(n*24|0)>>1];e=d+8|0;f[e>>2]=o;f[e+4>>2]=i;f[d+16>>2]=u;qs(r,10290,d)|0;n=n+1|0;if(n>>>0>=(f[h>>2]|0)>>>0)break e;t=f[a>>2]|0}}}while(0);il(10321,4,1,r)|0;i=l+40|0;a=f[i>>2]|0;if((a|0)!=0?(k=l+36|0,b=f[k>>2]|0,(b|0)!=0):0){n=0;t=0;do{t=(f[a+(n*40|0)+4>>2]|0)+t|0;n=n+1|0}while((n|0)!=(b|0));if(t){il(10326,16,1,r)|0;if(f[k>>2]|0){t=f[i>>2]|0;o=0;do{l=f[t+(o*40|0)+4>>2]|0;f[w>>2]=o;f[w+4>>2]=l;qs(r,10343,w)|0;t=f[i>>2]|0;n=f[t+(o*40|0)+16>>2]|0;e:do{if(!((l|0)==0|(n|0)==0)){t=0;while(1){e=n+(t*24|0)|0;p=f[e>>2]|0;e=f[e+4>>2]|0;h=n+(t*24|0)+8|0;u=f[h>>2]|0;h=f[h+4>>2]|0;b=n+(t*24|0)+16|0;d=f[b>>2]|0;b=f[b+4>>2]|0;f[_>>2]=t;a=_+8|0;f[a>>2]=p;f[a+4>>2]=e;a=_+16|0;f[a>>2]=u;f[a+4>>2]=h;a=_+24|0;f[a>>2]=d;f[a+4>>2]=b;qs(r,10379,_)|0;a=t+1|0;t=f[i>>2]|0;if((a|0)==(l|0))break e;n=f[t+(o*40|0)+16>>2]|0;t=a}}}while(0);n=f[t+(o*40|0)+24>>2]|0;e:do{if((n|0)!=0?(f[t+(o*40|0)+20>>2]|0)!=0:0){t=0;while(1){b=n+(t*24|0)+8|0;d=f[b>>2]|0;b=f[b+4>>2]|0;a=f[n+(t*24|0)+16>>2]|0;f[m>>2]=s[n+(t*24|0)>>1];p=m+8|0;f[p>>2]=d;f[p+4>>2]=b;f[m+16>>2]=a;qs(r,10290,m)|0;a=t+1|0;t=f[i>>2]|0;if(a>>>0>=(f[t+(o*40|0)+20>>2]|0)>>>0)break e;n=f[t+(o*40|0)+24>>2]|0;t=a}}}while(0);o=o+1|0}while(o>>>0<(f[k>>2]|0)>>>0)}il(10321,4,1,r)|0}}il(10164,2,1,r)|0;c=v;return}function nf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;d=c;c=c+64|0;h=d+48|0;u=d+40|0;l=d+32|0;s=d+16|0;a=d;o=d+52|0;if(!i){il(10482,13,1,r)|0;t[o+1>>0]=0;n=9}else{il(10445,36,1,f[676]|0)|0;n=0}t[o>>0]=n;b=f[e>>2]|0;n=f[e+4>>2]|0;f[a>>2]=o;f[a+4>>2]=b;f[a+8>>2]=n;qs(r,10496,a)|0;a=f[e+8>>2]|0;n=f[e+12>>2]|0;f[s>>2]=o;f[s+4>>2]=a;f[s+8>>2]=n;qs(r,10513,s)|0;s=e+16|0;n=f[s>>2]|0;f[l>>2]=o;f[l+4>>2]=n;qs(r,10530,l)|0;n=e+24|0;if(!(f[n>>2]|0)){il(10164,2,1,r)|0;c=d;return}if(!(f[s>>2]|0)){il(10164,2,1,r)|0;c=d;return}else a=0;do{f[u>>2]=o;f[u+4>>2]=a;qs(r,10546,u)|0;ff((f[n>>2]|0)+(a*52|0)|0,i,r);f[h>>2]=o;qs(r,10566,h)|0;a=a+1|0}while(a>>>0<(f[s>>2]|0)>>>0);il(10164,2,1,r)|0;c=d;return}function ff(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0;u=c;c=c+48|0;o=u+24|0;l=u+16|0;s=u;a=u+32|0;n=(i|0)!=0;if(n){il(10571,41,1,f[676]|0)|0;i=0}else{t[a+1>>0]=9;t[a+2>>0]=0;i=9}t[a>>0]=i;h=f[e>>2]|0;i=f[e+4>>2]|0;f[s>>2]=a;f[s+4>>2]=h;f[s+8>>2]=i;qs(r,10613,s)|0;s=f[e+24>>2]|0;f[l>>2]=a;f[l+4>>2]=s;qs(r,10630,l)|0;l=f[e+32>>2]|0;f[o>>2]=a;f[o+4>>2]=l;qs(r,10642,o)|0;if(!n){c=u;return}il(10164,2,1,r)|0;c=u;return}function af(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+16|0;t=h;i=e+80|0;o=f[(f[i>>2]|0)+16>>2]|0;r=Fn(1,56)|0;f[t>>2]=r;if(!r){u=0;c=h;return u|0}f[r+24>>2]=f[(f[i>>2]|0)+16>>2];f[r>>2]=f[e+92>>2];f[r+4>>2]=f[e+96>>2];f[r+8>>2]=f[e+100>>2];f[r+12>>2]=f[e+104>>2];f[r+16>>2]=f[e+112>>2];f[r+20>>2]=f[e+116>>2];f[r+52>>2]=0;r=f[e+12>>2]|0;i=f[t>>2]|0;f[i+32>>2]=f[r>>2];f[i+36>>2]=f[r+4>>2];f[i+40>>2]=f[r+8>>2];f[i+44>>2]=f[r+16>>2];f[i+48>>2]=Fn(f[i+24>>2]|0,1080)|0;i=f[t>>2]|0;l=i+48|0;e=f[l>>2]|0;if(!e){En(t);u=0;c=h;return u|0}if(!o){u=i;c=h;return u|0}s=r+5584|0;r=0;while(1){a=f[s>>2]|0;f[e+(r*1080|0)+4>>2]=f[a+(r*1080|0)>>2];t=a+(r*1080|0)+4|0;n=f[t>>2]|0;f[e+(r*1080|0)+8>>2]=n;f[e+(r*1080|0)+12>>2]=f[a+(r*1080|0)+8>>2];f[e+(r*1080|0)+16>>2]=f[a+(r*1080|0)+12>>2];f[e+(r*1080|0)+20>>2]=f[a+(r*1080|0)+16>>2];f[e+(r*1080|0)+24>>2]=f[a+(r*1080|0)+20>>2];if(n>>>0<33){Nl(e+(r*1080|0)+948|0,a+(r*1080|0)+944|0,n|0)|0;Nl(e+(r*1080|0)+816|0,a+(r*1080|0)+812|0,f[t>>2]|0)|0}n=f[a+(r*1080|0)+24>>2]|0;f[e+(r*1080|0)+28>>2]=n;f[e+(r*1080|0)+808>>2]=f[a+(r*1080|0)+804>>2];if((n|0)!=1){n=(f[t>>2]|0)*3|0;t=n+-2|0;if((t|0)<97&(n|0)>2)u=10}else{t=1;u=10}if((u|0)==10){u=0;n=0;do{f[e+(r*1080|0)+32+(n<<2)>>2]=f[a+(r*1080|0)+28+(n<<3)+4>>2];f[e+(r*1080|0)+420+(n<<2)>>2]=f[a+(r*1080|0)+28+(n<<3)>>2];n=n+1|0}while((n|0)!=(t|0))}f[e+(r*1080|0)+812>>2]=f[a+(r*1080|0)+808>>2];r=r+1|0;if((r|0)==(o|0))break;e=f[l>>2]|0}c=h;return i|0}function sf(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0;i=Fn(1,48)|0;if(!i){u=0;return u|0}s=e+196|0;r=f[s>>2]|0;l=r;u=f[l+4>>2]|0;e=i;f[e>>2]=f[l>>2];f[e+4>>2]=u;e=r+8|0;u=f[e+4>>2]|0;l=i+8|0;f[l>>2]=f[e>>2];f[l+4>>2]=u;l=r+16|0;u=f[l+4>>2]|0;e=i+16|0;f[e>>2]=f[l>>2];f[e+4>>2]=u;r=f[r+24>>2]|0;e=i+24|0;f[e>>2]=r;r=Nn(r*24|0)|0;u=i+28|0;f[u>>2]=r;if(!r){zn(i);u=0;return u|0}t=f[(f[s>>2]|0)+28>>2]|0;if(!t){zn(r);f[u>>2]=0}else Nl(r|0,t|0,(f[e>>2]|0)*24|0)|0;e=f[(f[s>>2]|0)+36>>2]|0;a=i+36|0;f[a>>2]=e;e=Fn(e,40)|0;l=i+40|0;f[l>>2]=e;if(!e){zn(f[u>>2]|0);zn(i);u=0;return u|0}r=f[(f[s>>2]|0)+40>>2]|0;if(!r){zn(e);f[l>>2]=0;u=i;return u|0}if(!(f[a>>2]|0)){u=i;return u|0}r=f[r+20>>2]|0;f[e+20>>2]=r;r=Nn(r*24|0)|0;e=f[l>>2]|0;f[e+24>>2]=r;e:do{if(!r)r=0;else{n=r;r=0;while(1){t=f[(f[(f[s>>2]|0)+40>>2]|0)+(r*40|0)+24>>2]|0;if(!t){zn(n);e=f[l>>2]|0;f[e+(r*40|0)+24>>2]=0}else{Nl(n|0,t|0,(f[e+(r*40|0)+20>>2]|0)*24|0)|0;e=f[l>>2]|0}t=f[(f[(f[s>>2]|0)+40>>2]|0)+(r*40|0)+4>>2]|0;f[e+(r*40|0)+4>>2]=t;t=Nn(t*24|0)|0;e=f[l>>2]|0;f[e+(r*40|0)+16>>2]=t;if(!t)break;n=f[(f[(f[s>>2]|0)+40>>2]|0)+(r*40|0)+16>>2]|0;if(!n){zn(t);e=f[l>>2]|0;f[e+(r*40|0)+16>>2]=0}else{Nl(t|0,n|0,(f[e+(r*40|0)+4>>2]|0)*24|0)|0;e=f[l>>2]|0}f[e+(r*40|0)+32>>2]=0;f[e+(r*40|0)+36>>2]=0;r=r+1|0;if(r>>>0>=(f[a>>2]|0)>>>0){o=32;break}n=f[(f[(f[s>>2]|0)+40>>2]|0)+(r*40|0)+20>>2]|0;f[e+(r*40|0)+20>>2]=n;n=Nn(n*24|0)|0;e=f[l>>2]|0;f[e+(r*40|0)+24>>2]=n;if(!n)break e}if((o|0)==32)return i|0;if(r){zn(f[e+24>>2]|0);zn(f[(f[l>>2]|0)+16>>2]|0);if((r|0)!=1){e=1;do{zn(f[(f[l>>2]|0)+(e*40|0)+24>>2]|0);zn(f[(f[l>>2]|0)+(e*40|0)+16>>2]|0);e=e+1|0}while((e|0)!=(r|0))}e=f[l>>2]|0}zn(e);zn(f[u>>2]|0);zn(i);u=0;return u|0}}while(0);if(r){zn(f[e+24>>2]|0);if((r|0)!=1){e=1;do{zn(f[(f[l>>2]|0)+(e*40|0)+24>>2]|0);e=e+1|0}while((e|0)!=(r|0))}e=f[l>>2]|0}zn(e);zn(f[u>>2]|0);zn(i);u=0;return u|0}function lf(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0;if(!r){r=0;return r|0}n=qt()|0;u=e+84|0;f[u>>2]=n;if(!n){r=0;return r|0}Kt(r,n);s=e+188|0;oa(f[s>>2]|0,27,t)|0;s=f[s>>2]|0;l=ua(s)|0;n=ca(s)|0;if(l){o=0;a=1;while(1){if(!a)a=0;else a=(po[f[n>>2]&63](e,i,t)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{n=n+4|0;a=a&1}}ha(s);if(!a){r=e+80|0;Vt(f[r>>2]|0);f[r>>2]=0;r=0;return r|0}}else ha(s);l=f[r+16>>2]|0;if(!l){r=1;return r|0}s=f[(f[u>>2]|0)+24>>2]|0;n=f[r+24>>2]|0;a=0;do{f[n+(a*52|0)+36>>2]=f[s+(a*52|0)+36>>2];r=s+(a*52|0)+44|0;f[n+(a*52|0)+44>>2]=f[r>>2];f[r>>2]=0;a=a+1|0}while(a>>>0<l>>>0);n=1;return n|0}function of(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;v=c;c=c+16|0;l=v+8|0;if(!r){Ht(t,1,10654,v)|0;m=0;c=v;return m|0}a=f[e+112>>2]|0;s=ie(f[e+116>>2]|0,a)|0;if(s>>>0<=n>>>0){f[l>>2]=n;f[l+4>>2]=s+-1;Ht(t,1,10692,l)|0;m=0;c=v;return m|0}m=(n>>>0)%(a>>>0)|0;_=(n>>>0)/(a>>>0)|0;l=f[e+100>>2]|0;s=ie(l,m)|0;o=f[e+92>>2]|0;s=s+o|0;f[r>>2]=s;w=e+80|0;a=f[w>>2]|0;u=f[a>>2]|0;s=s>>>0<u>>>0?u:s;f[r>>2]=s;o=(ie(l,m+1|0)|0)+o|0;m=r+8|0;f[m>>2]=o;l=f[a+8>>2]|0;o=o>>>0>l>>>0?l:o;f[m>>2]=o;m=f[e+104>>2]|0;l=ie(m,_)|0;u=f[e+96>>2]|0;l=l+u|0;k=r+4|0;f[k>>2]=l;b=f[a+4>>2]|0;l=l>>>0<b>>>0?b:l;f[k>>2]=l;u=(ie(m,_+1|0)|0)+u|0;_=r+12|0;f[_>>2]=u;m=f[a+12>>2]|0;u=u>>>0>m>>>0?m:u;f[_>>2]=u;_=r+24|0;m=r+16|0;k=f[m>>2]|0;if(k){b=f[a+24>>2]|0;d=s+-1|0;h=l+-1|0;o=o+-1|0;a=u+-1|0;s=0;l=f[_>>2]|0;while(1){u=f[b+(s*52|0)+40>>2]|0;f[l+40>>2]=u;A=f[l>>2]|0;E=(d+A|0)/(A|0)|0;f[l+16>>2]=E;p=f[l+4>>2]|0;M=(h+p|0)/(p|0)|0;f[l+20>>2]=M;A=(o+A|0)/(A|0)|0;p=(a+p|0)/(p|0)|0;y=Bl(1,0,u|0)|0;g=x;A=Il(A|0,((A|0)<0)<<31>>31|0,-1,-1)|0;A=Il(A|0,x|0,y|0,g|0)|0;A=Pl(A|0,x|0,u|0)|0;E=Il(E|0,((E|0)<0)<<31>>31|0,-1,-1)|0;E=Il(E|0,x|0,y|0,g|0)|0;E=Pl(E|0,x|0,u|0)|0;f[l+8>>2]=A-E;p=Il(p|0,((p|0)<0)<<31>>31|0,-1,-1)|0;p=Il(p|0,x|0,y|0,g|0)|0;p=Pl(p|0,x|0,u|0)|0;M=Il(M|0,((M|0)<0)<<31>>31|0,-1,-1)|0;g=Il(M|0,x|0,y|0,g|0)|0;u=Pl(g|0,x|0,u|0)|0;f[l+12>>2]=p-u;s=s+1|0;if(s>>>0>=k>>>0)break;else l=l+52|0}}h=e+84|0;a=f[h>>2]|0;if(a)Vt(a);a=qt()|0;f[h>>2]=a;if(!a){A=0;c=v;return A|0}Kt(r,a);f[e+60>>2]=n;l=e+188|0;oa(f[l>>2]|0,28,t)|0;l=f[l>>2]|0;o=ua(l)|0;a=ca(l)|0;if(o){u=0;s=1;while(1){if(!s)s=0;else s=(po[f[a>>2]&63](e,i,t)|0)!=0;u=u+1|0;if((u|0)==(o|0))break;else{a=a+4|0;s=s&1}}ha(l);if(!s){Vt(f[w>>2]|0);f[w>>2]=0;A=0;c=v;return A|0}}else ha(l);a=f[m>>2]|0;if(!a){A=1;c=v;return A|0}o=f[(f[h>>2]|0)+24>>2]|0;l=f[_>>2]|0;u=0;while(1){f[l+(u*52|0)+36>>2]=f[o+(u*52|0)+36>>2];s=f[l+(u*52|0)+44>>2]|0;if(!s)s=o;else{zn(s);s=f[(f[h>>2]|0)+24>>2]|0;l=f[_>>2]|0;a=f[m>>2]|0}A=s+(u*52|0)+44|0;f[l+(u*52|0)+44>>2]=f[A>>2];f[A>>2]=0;u=u+1|0;if(u>>>0>=a>>>0){a=1;break}else o=s}c=v;return a|0}function uf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0;o=c;c=c+16|0;l=o;f[e+168>>2]=i;t=f[e+80>>2]|0;e:do{if((((t|0)!=0?(s=f[t+24>>2]|0,(s|0)!=0):0)?(n=f[e+12>>2]|0,(n|0)!=0):0)?(a=f[n+5584>>2]|0,(a|0)!=0):0){t=f[t+16>>2]|0;if(!t)t=1;else{n=0;while(1){if((f[a+(n*1080|0)+4>>2]|0)>>>0<=i>>>0)break;f[s+(n*52|0)+40>>2]=i;n=n+1|0;if(n>>>0>=t>>>0){t=1;break e}}Ht(r,1,10753,l)|0;t=0}}else t=0}while(0);c=o;return t|0}function cf(e,i,r){e=e|0;i=i|0;r=r|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0;z=c;c=c+48|0;j=z+32|0;U=z+24|0;F=z+16|0;D=z+8|0;N=z;S=e+204|0;a=f[S>>2]|0;x=e+116|0;P=e+112|0;O=ie(f[P>>2]|0,f[x>>2]|0)|0;B=(O|0)==1;if(!O){H=1;c=z;return H|0}I=e+200|0;T=e+12|0;C=e+164|0;R=e+8|0;L=a+20|0;E=a+24|0;A=0;a=0;u=0;e:while(1){if((f[I>>2]|0)!=(A|0)){H=5;break}y=A;A=A+1|0;M=ie(f[x>>2]|0,f[P>>2]|0)|0;f[D>>2]=A;f[D+4>>2]=M;Ht(r,4,10866,D)|0;f[T>>2]=0;M=f[S>>2]|0;f[M+12>>2]=f[(f[C>>2]|0)+(y*5640|0)+5588>>2];f[R>>2]=0;if(!(Nr(M,f[I>>2]|0,r)|0))break;s=f[S>>2]|0;if(f[(f[s+24>>2]|0)+16>>2]|0){o=0;do{l=f[(f[f[L>>2]>>2]|0)+20>>2]|0;if(B){f[l+(o*52|0)+32>>2]=f[(f[(f[E>>2]|0)+24>>2]|0)+(o*52|0)+44>>2];f[l+(o*52|0)+36>>2]=0}else{if(!(Dr(l+(o*52|0)|0)|0)){H=14;break e}s=f[S>>2]|0}o=o+1|0}while(o>>>0<(f[(f[s+24>>2]|0)+16>>2]|0)>>>0)}M=Yr(s)|0;if(!B){if(M>>>0>u>>>0){s=Hn(a,M)|0;if(!s){H=20;break}else{a=s;s=M}}else s=u;l=f[S>>2]|0;y=l+24|0;o=f[y>>2]|0;if(f[o+16>>2]|0){g=l+20|0;l=a;p=0;do{_=f[(f[f[g>>2]>>2]|0)+20>>2]|0;h=f[o+24>>2]|0;w=f[h+(p*52|0)+24>>2]|0;w=((w&7|0)!=0&1)+(w>>>3)|0;d=f[_+(p*52|0)+8>>2]|0;b=f[_+(p*52|0)>>2]|0;v=d-b|0;k=f[_+(p*52|0)+12>>2]|0;_=f[_+(p*52|0)+4>>2]|0;X=f[o>>2]|0;q=f[h+(p*52|0)>>2]|0;u=f[h+(p*52|0)+4>>2]|0;Y=(q+~X+(f[o+8>>2]|0)|0)/(q|0)|0;m=Y-v|0;o=b-((X+-1+q|0)/(q|0)|0)+(ie(Y,_-(((f[o+4>>2]|0)+-1+u|0)/(u|0)|0)|0)|0)|0;o=(f[h+(p*52|0)+44>>2]|0)+(o<<2)|0;i:do{switch(((w|0)==3?4:w)|0){case 1:{u=(k|0)==(_|0);if(!(f[h+(p*52|0)+32>>2]|0)){if(u)break i;w=(d|0)==(b|0);b=k-_|0;k=0;while(1){if(!w){u=0;h=l;d=o;while(1){t[h>>0]=f[d>>2];u=u+1|0;if((u|0)==(v|0))break;else{h=h+1|0;d=d+4|0}}l=l+v|0;o=o+(v<<2)|0}k=k+1|0;if((k|0)==(b|0))break;else o=o+(m<<2)|0}}else{if(u)break i;w=(d|0)==(b|0);b=k-_|0;k=0;while(1){if(!w){u=0;h=l;d=o;while(1){t[h>>0]=f[d>>2];u=u+1|0;if((u|0)==(v|0))break;else{h=h+1|0;d=d+4|0}}l=l+v|0;o=o+(v<<2)|0}k=k+1|0;if((k|0)==(b|0))break;else o=o+(m<<2)|0}}break}case 2:{u=(k|0)==(_|0);if(!(f[h+(p*52|0)+32>>2]|0)){if(!u){w=(d|0)==(b|0);b=k-_|0;k=0;while(1){if(!w){u=0;h=l;d=o;while(1){n[h>>1]=f[d>>2];u=u+1|0;if((u|0)==(v|0))break;else{h=h+2|0;d=d+4|0}}l=l+(v<<1)|0;o=o+(v<<2)|0}k=k+1|0;if((k|0)==(b|0))break;else o=o+(m<<2)|0}}}else if(!u){w=(d|0)==(b|0);b=k-_|0;k=0;while(1){if(!w){u=0;h=l;d=o;while(1){n[h>>1]=f[d>>2];u=u+1|0;if((u|0)==(v|0))break;else{h=h+2|0;d=d+4|0}}l=l+(v<<1)|0;o=o+(v<<2)|0}k=k+1|0;if((k|0)==(b|0))break;else o=o+(m<<2)|0}}break}case 4:{if((k|0)!=(_|0)){w=(d|0)==(b|0);b=k-_|0;k=0;while(1){if(!w){u=0;h=l;d=o;while(1){f[h>>2]=f[d>>2];u=u+1|0;if((u|0)==(v|0))break;else{h=h+4|0;d=d+4|0}}l=l+(v<<2)|0;o=o+(v<<2)|0}k=k+1|0;if((k|0)==(b|0))break;else o=o+(m<<2)|0}}break}default:{}}}while(0);p=p+1|0;o=f[y>>2]|0}while(p>>>0<(f[o+16>>2]|0)>>>0);l=f[S>>2]|0}if(!(qr(l,a,M)|0)){H=63;break}}else s=u;if(!(Mf(e,i,r)|0)){H=65;break}if(A>>>0>=O>>>0){H=67;break}else u=s}if((H|0)==5)Ht(r,1,10829,N)|0;else if((H|0)==14){Ht(r,1,10887,F)|0;if(!a){X=0;c=z;return X|0}zn(a);X=0;c=z;return X|0}else if((H|0)==20){if(a)zn(a);Ht(r,1,10925,U)|0;X=0;c=z;return X|0}else if((H|0)==63){Ht(r,1,10964,j)|0;zn(a);X=0;c=z;return X|0}else if((H|0)==65){if(!a){X=0;c=z;return X|0}zn(a);X=0;c=z;return X|0}else if((H|0)==67){if(!a){X=1;c=z;return X|0}zn(a);X=1;c=z;return X|0}if(!a){X=0;c=z;return X|0}zn(a);X=0;c=z;return X|0}function hf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,s=0,l=0,o=0;t=e+188|0;if(!(oa(f[t>>2]|0,29,r)|0)){i=0;return i|0}if(((n[e+88>>1]|0)+-3&65535)<4?(oa(f[t>>2]|0,30,r)|0)==0:0){i=0;return i|0}if(!(oa(f[t>>2]|0,31,r)|0)){i=0;return i|0}if(!(oa(f[t>>2]|0,32,r)|0)){i=0;return i|0}if(!(oa(f[t>>2]|0,33,r)|0)){i=0;return i|0}o=f[t>>2]|0;s=ua(o)|0;t=ca(o)|0;if(!s)t=1;else{l=0;a=t;t=1;while(1){if(!t)t=0;else t=(po[f[a>>2]&63](e,i,r)|0)!=0;t=t&1;l=l+1|0;if((l|0)==(s|0))break;else a=a+4|0}}ha(o);i=t;return i|0}function df(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+16|0;a=qt()|0;o=e+80|0;f[o>>2]=a;if(!a){Ht(t,1,11011,h)|0;i=0;c=h;return i|0}Kt(r,a);l=f[r+24>>2]|0;if((l|0)!=0?(u=f[r+16>>2]|0,(u|0)!=0):0){s=0;do{r=l+(s*52|0)+44|0;a=f[r>>2]|0;if(a){f[(f[(f[o>>2]|0)+24>>2]|0)+(s*52|0)+44>>2]=a;f[r>>2]=0}s=s+1|0}while(s>>>0<u>>>0)}a=e+192|0;if(!(oa(f[a>>2]|0,34,t)|0)){i=0;c=h;return i|0}if(!(oa(f[a>>2]|0,35,t)|0)){i=0;c=h;return i|0}if(!(oa(f[a>>2]|0,36,t)|0)){i=0;c=h;return i|0}s=f[a>>2]|0;l=ua(s)|0;a=ca(s)|0;if(l){o=0;r=1;while(1){if(!r)r=0;else r=(po[f[a>>2]&63](e,i,t)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{a=a+4|0;r=r&1}}ha(s);if(!r){i=0;c=h;return i|0}}else ha(s);a=e+188|0;if(!(oa(f[a>>2]|0,37,t)|0)){i=0;c=h;return i|0}if(!(oa(f[a>>2]|0,38,t)|0)){i=0;c=h;return i|0}if(!(oa(f[a>>2]|0,39,t)|0)){i=0;c=h;return i|0}if(!(oa(f[a>>2]|0,40,t)|0)){i=0;c=h;return i|0}if(!(oa(f[a>>2]|0,41,t)|0)){i=0;c=h;return i|0}if(!(oa(f[a>>2]|0,42,t)|0)){i=0;c=h;return i|0}if(!(oa(f[a>>2]|0,43,t)|0)){i=0;c=h;return i|0}r=e+88|0;if(((n[r>>1]|0)+-3&65535)<4){if(!(oa(f[a>>2]|0,44,t)|0)){i=0;c=h;return i|0}if((n[r>>1]|0)==4?(oa(f[a>>2]|0,45,t)|0)==0:0){i=0;c=h;return i|0}}if(!(oa(f[a>>2]|0,46,t)|0)){i=0;c=h;return i|0}if((f[e+108>>2]|0)!=0?(oa(f[a>>2]|0,47,t)|0)==0:0){i=0;c=h;return i|0}if((n[r>>1]&256)!=0?(oa(f[a>>2]|0,48,t)|0)==0:0){i=0;c=h;return i|0}if((f[e+196>>2]|0)!=0?(oa(f[a>>2]|0,49,t)|0)==0:0){i=0;c=h;return i|0}if(!(oa(f[a>>2]|0,50,t)|0)){i=0;c=h;return i|0}if(!(oa(f[a>>2]|0,51,t)|0)){i=0;c=h;return i|0}o=f[a>>2]|0;s=ua(o)|0;a=ca(o)|0;if(!s)a=1;else{l=0;r=a;a=1;while(1){if(!a)a=0;else a=(po[f[r>>2]&63](e,i,t)|0)!=0;a=a&1;l=l+1|0;if((l|0)==(s|0))break;else r=r+4|0}}ha(o);i=a;c=h;return i|0}function bf(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;w=c;c=c+48|0;b=w+40|0;k=w+32|0;d=w+24|0;u=w+16|0;l=w+8|0;s=w;o=e+200|0;if((f[o>>2]|0)==(i|0)){h=ie(f[e+116>>2]|0,f[e+112>>2]|0)|0;f[l>>2]=i+1;f[l+4>>2]=h;Ht(a,4,10866,l)|0;f[e+12>>2]=0;h=e+204|0;l=f[h>>2]|0;f[l+12>>2]=f[(f[e+164>>2]|0)+(i*5640|0)+5588>>2];f[e+8>>2]=0;if(Nr(l,f[o>>2]|0,a)|0){s=f[h>>2]|0;e:do{if(f[(f[s+24>>2]|0)+16>>2]|0){l=0;while(1){if(!(Dr((f[(f[f[s+20>>2]>>2]|0)+20>>2]|0)+(l*52|0)|0)|0))break;l=l+1|0;s=f[h>>2]|0;if(l>>>0>=(f[(f[s+24>>2]|0)+16>>2]|0)>>>0)break e}Ht(a,1,10887,d)|0;k=0;c=w;return k|0}}while(0);if(!(qr(s,r,t)|0)){Ht(a,1,10964,k)|0;k=0;c=w;return k|0}if(Mf(e,n,a)|0){k=1;c=w;return k|0}f[b>>2]=i;Ht(a,1,11101,b)|0;k=0;c=w;return k|0}}else Ht(a,1,10829,s)|0;f[u>>2]=i;Ht(a,1,11044,u)|0;k=0;c=w;return k|0}function kf(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0,l=0;if(!e)return;n=e+5164|0;i=f[n>>2]|0;if(i){a=e+5160|0;r=f[a>>2]|0;if(r){t=0;while(1){i=f[i+(t<<3)>>2]|0;if(i){zn(i);r=f[a>>2]|0}t=t+1|0;if(t>>>0>=r>>>0)break;i=f[n>>2]|0}i=f[n>>2]|0}f[a>>2]=0;zn(i);f[n>>2]=0}i=e+5172|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0}i=e+5584|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0}i=e+5608|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0}i=e+5604|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0}i=e+5624|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0;f[e+5632>>2]=0;f[e+5628>>2]=0}l=e+5612|0;i=f[l>>2]|0;if(i){s=e+5616|0;r=f[s>>2]|0;if(r){a=0;while(1){t=i+12|0;n=f[t>>2]|0;if(n){zn(n);f[t>>2]=0;r=f[s>>2]|0}a=a+1|0;if(a>>>0>=r>>>0)break;else i=i+20|0}i=f[l>>2]|0}zn(i);f[l>>2]=0}i=e+5600|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0}i=e+5592|0;r=f[i>>2]|0;if(!r)return;zn(r);f[i>>2]=0;f[e+5596>>2]=0;return}function wf(e,i,r){e=e|0;i=i|0;r=r|0;return 1}function _f(e,i,r){e=e|0;i=i|0;r=r|0;return(f[e+8>>2]|0)==0&(f[e+188>>2]|0)!=0&(f[e+192>>2]|0)!=0&1|0}function mf(e,i,r){e=e|0;i=i|0;r=r|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0,V=0,G=0,K=0,W=0,Z=0;Z=c;c=c+224|0;W=Z+200|0;V=Z+192|0;X=Z+184|0;z=Z+176|0;H=Z+168|0;j=Z+160|0;F=Z+152|0;N=Z+144|0;D=Z+136|0;R=Z+128|0;I=Z+120|0;C=Z+112|0;T=Z+104|0;S=Z+96|0;A=Z+88|0;E=Z+80|0;B=Z+72|0;O=Z+64|0;M=Z+56|0;y=Z+48|0;g=Z+40|0;L=Z+32|0;k=Z+24|0;h=Z+16|0;u=Z+8|0;U=Z;q=Z+216|0;a=Z+204|0;P=Z+212|0;p=Z+208|0;K=e+8|0;f[K>>2]=1;e:do{if((Ot(i,q,2,r)|0)==2?(ct(q,a,2),(f[a>>2]|0)==65359):0){f[K>>2]=2;b=Dt(i)|0;b=Il(b|0,x|0,-2,-1)|0;d=x;G=e+196|0;s=f[G>>2]|0;f[s>>2]=b;f[s+4>>2]=d;s=U;f[s>>2]=b;f[s+4>>2]=d;Ht(r,4,15766,U)|0;s=f[G>>2]|0;d=f[s>>2]|0;b=s+24|0;a=f[b>>2]|0;o=s+32|0;l=f[o>>2]|0;do{if((a+1|0)>>>0>l>>>0){v=~~(+(l>>>0)+100.0)>>>0;f[o>>2]=v;a=s+28|0;s=Hn(f[a>>2]|0,v*24|0)|0;if(!s){zn(f[a>>2]|0);f[a>>2]=0;f[o>>2]=0;f[b>>2]=0;Ht(r,1,15803,u)|0;break e}else{f[a>>2]=s;a=f[b>>2]|0;break}}else s=f[s+28>>2]|0}while(0);n[s+(a*24|0)>>1]=-177;m=Pl(0,d|0,32)|0;v=s+(a*24|0)+8|0;f[v>>2]=m;f[v+4>>2]=x;f[s+(a*24|0)+16>>2]=2;f[b>>2]=a+1;v=e+16|0;if((Ot(i,f[v>>2]|0,2,r)|0)!=2){Ht(r,1,8295,k)|0;r=0;c=Z;return r|0}ct(f[v>>2]|0,P,2);a=f[P>>2]|0;if((a|0)!=65424){m=e+20|0;w=0;l=0;_=0;i:while(1){if(a>>>0<65280){Y=14;break}else u=784;while(1){s=f[u>>2]|0;o=(s|0)==0;if(o|(s|0)==(a|0))break;else u=u+12|0}if(o){Ht(r,2,15914,g)|0;h=2;r:while(1){do{if((Ot(i,f[v>>2]|0,2,r)|0)!=2){Y=20;break i}ct(f[v>>2]|0,U,2);a=f[U>>2]|0}while(a>>>0<65280);u=784;while(1){s=f[u>>2]|0;if((s|0)==0|(s|0)==(a|0)){o=u;a=u;break}else u=u+12|0}if(!(f[a+4>>2]&f[K>>2])){Y=25;break i}if((s|0)>=65424){Y=100;break}switch(s|0){case 0:break;default:{k=o;b=h;break r}}h=h+2|0}if((Y|0)==100){Y=0;switch(s|0){case 65424:{s=w;a=_;Y=27;break i}default:{k=o;b=h}}}u=f[G>>2]|0;d=Dt(i)|0;d=d-b|0;o=u+24|0;a=f[o>>2]|0;s=u+32|0;h=f[s>>2]|0;if((a+1|0)>>>0>h>>>0){a=~~(+(h>>>0)+100.0)>>>0;f[s>>2]=a;u=u+28|0;a=Hn(f[u>>2]|0,a*24|0)|0;if(!a){l=u;a=u;Y=32;break}f[u>>2]=a;s=a;a=f[o>>2]|0}else s=f[u+28>>2]|0;n[s+(a*24|0)>>1]=0;h=s+(a*24|0)+8|0;f[h>>2]=d;f[h+4>>2]=((d|0)<0)<<31>>31;f[s+(a*24|0)+16>>2]=b;f[o>>2]=a+1;a=f[k>>2]|0;f[P>>2]=a;if((a|0)==65424){s=w;a=_;break}else o=784;while(1){s=f[o>>2]|0;if((s|0)==0|(s|0)==(a|0))break;else o=o+12|0}}else o=u;_=(s|0)==65361?1:_;w=(s|0)==65362?1:w;l=(s|0)==65372?1:l;if(!(f[o+4>>2]&f[K>>2])){Y=38;break}if((Ot(i,f[v>>2]|0,2,r)|0)!=2){Y=40;break}ct(f[v>>2]|0,p,2);s=(f[p>>2]|0)+-2|0;f[p>>2]=s;a=f[v>>2]|0;if(s>>>0>(f[m>>2]|0)>>>0){a=Hn(a,s)|0;if(!a){Y=43;break}f[v>>2]=a;s=f[p>>2]|0;f[m>>2]=s}a=Ot(i,a,s,r)|0;if((a|0)!=(f[p>>2]|0)){Y=46;break}if(!(Co[f[o+8>>2]&63](e,f[v>>2]|0,a,r)|0)){Y=48;break}h=f[G>>2]|0;d=f[o>>2]|0;b=Dt(i)|0;k=f[p>>2]|0;b=-4-k+b|0;k=k+4|0;o=h+24|0;a=f[o>>2]|0;s=h+32|0;u=f[s>>2]|0;if((a+1|0)>>>0>u>>>0){a=~~(+(u>>>0)+100.0)>>>0;f[s>>2]=a;u=h+28|0;a=Hn(f[u>>2]|0,a*24|0)|0;if(!a){l=u;a=u;Y=53;break}f[u>>2]=a;s=a;a=f[o>>2]|0}else s=f[h+28>>2]|0;n[s+(a*24|0)>>1]=d;d=s+(a*24|0)+8|0;f[d>>2]=b;f[d+4>>2]=((b|0)<0)<<31>>31;f[s+(a*24|0)+16>>2]=k;f[o>>2]=a+1;if((Ot(i,f[v>>2]|0,2,r)|0)!=2){Y=55;break}ct(f[v>>2]|0,P,2);a=f[P>>2]|0;if((a|0)==65424){s=w;a=_;break}}switch(Y|0){case 14:{f[L>>2]=a;Ht(r,1,15863,L)|0;r=0;c=Z;return r|0}case 20:{Ht(r,1,8295,y)|0;Y=34;break}case 25:{Ht(r,1,8339,M)|0;Y=34;break}case 27:{f[P>>2]=65424;break}case 32:{zn(f[a>>2]|0);f[l>>2]=0;f[s>>2]=0;f[o>>2]=0;Ht(r,1,15803,O)|0;Y=34;break}case 38:{Ht(r,1,8339,E)|0;r=0;c=Z;return r|0}case 40:{Ht(r,1,8295,A)|0;r=0;c=Z;return r|0}case 43:{zn(f[v>>2]|0);f[v>>2]=0;f[m>>2]=0;Ht(r,1,8427,S)|0;r=0;c=Z;return r|0}case 46:{Ht(r,1,8295,T)|0;r=0;c=Z;return r|0}case 48:{Ht(r,1,15985,C)|0;r=0;c=Z;return r|0}case 53:{zn(f[a>>2]|0);f[l>>2]=0;f[s>>2]=0;f[o>>2]=0;Ht(r,1,15803,I)|0;r=0;c=Z;return r|0}case 55:{Ht(r,1,8295,R)|0;r=0;c=Z;return r|0}}if((Y|0)==34){Ht(r,1,15930,B)|0;r=0;c=Z;return r|0}if(a){if(!s){Ht(r,1,16090,N)|0;r=0;c=Z;return r|0}if(!l){Ht(r,1,16136,F)|0;r=0;c=Z;return r|0}i:do{if(t[e+184>>0]&1){m=e+120|0;do{if(f[m>>2]|0){d=e+124|0;b=0;a=0;s=0;r:do{l=f[d>>2]|0;o=f[l+(b<<3)>>2]|0;t:do{if(o){u=f[l+(b<<3)+4>>2]|0;l=a>>>0<u>>>0;h=l?0:a-u|0;if((u|0)==(a|0)|l^1)a=h;else{o=l?o+a|0:o;a=u-a|0;while(1){if(a>>>0<4){Y=70;break r}ct(o,U,4);l=a+-4|0;a=f[U>>2]|0;s=a+s|0;if(l>>>0<a>>>0)break;if((l|0)==(a|0)){a=h;break t}else{o=o+(a+4)|0;a=l-a|0}}a=a-l|0}}}while(0);b=b+1|0}while(b>>>0<(f[m>>2]|0)>>>0);if((Y|0)==70){Ht(r,1,16182,j)|0;break}if(!a)Y=77;else Ht(r,1,16213,H)|0}else{s=0;Y=77}}while(0);r:do{if((Y|0)==77){l=Nn(s)|0;k=e+144|0;f[k>>2]=l;if(!l){Ht(r,1,13302,z)|0;break}w=e+132|0;f[w>>2]=s;o=f[m>>2]|0;_=e+124|0;do{if(o){a=f[_>>2]|0;l=a;b=0;d=0;s=0;t:while(1){u=f[l+(b<<3)>>2]|0;if(!u)u=d;else{l=f[l+(b<<3)+4>>2]|0;a=(f[k>>2]|0)+s|0;n:do{if(d>>>0<l>>>0){Nl(a|0,u|0,d|0)|0;s=s+d|0;if((l|0)==(d|0)){u=0;break}h=u+d|0;a=l-d|0;while(1){if(a>>>0<4){Y=88;break t}ct(h,q,4);u=h+4|0;o=a+-4|0;l=f[q>>2]|0;a=(f[k>>2]|0)+s|0;if(o>>>0<l>>>0){l=u;break}Nl(a|0,u|0,l|0)|0;a=f[q>>2]|0;s=a+s|0;if((o|0)==(a|0)){u=0;break n}else{h=h+(a+4)|0;a=o-a|0}}Nl(a|0,l|0,o|0)|0;u=(f[q>>2]|0)-o|0;s=o+s|0}else{Nl(a|0,u|0,l|0)|0;u=d-l|0;s=l+s|0}}while(0);zn(f[(f[_>>2]|0)+(b<<3)>>2]|0);l=f[_>>2]|0;f[l+(b<<3)>>2]=0;f[l+(b<<3)+4>>2]=0;o=f[m>>2]|0;a=l}b=b+1|0;if(b>>>0>=o>>>0){Y=94;break}else d=u}if((Y|0)==88){Ht(r,1,16182,X)|0;break r}else if((Y|0)==94){l=f[k>>2]|0;s=f[w>>2]|0;break}}else a=f[_>>2]|0}while(0);f[e+128>>2]=l;f[e+152>>2]=s;f[m>>2]=0;zn(a);f[_>>2]=0;break i}}while(0);Ht(r,1,16236,V)|0;r=0;c=Z;return r|0}}while(0);Ht(r,4,16262,W)|0;W=Dt(i)|0;r=(f[G>>2]|0)+8|0;f[r>>2]=W+-2;f[r+4>>2]=0;f[K>>2]=8;r=1;c=Z;return r|0}}Ht(r,1,16044,D)|0;r=0;c=Z;return r|0}}while(0);Ht(r,1,15839,h)|0;r=0;c=Z;return r|0}function vf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0;P=c;c=c+16|0;x=P;R=f[e+80>>2]|0;L=e+88|0;S=ie(f[e+112>>2]|0,f[e+116>>2]|0)|0;w=f[R+16>>2]|0;b=w*1080|0;k=f[e+12>>2]|0;w=ie(w<<2,w)|0;e:do{if(S){_=k+5604|0;m=k+5620|0;v=k+5612|0;p=k+5616|0;g=k+5632|0;y=k+5624|0;M=k+5584|0;T=0;C=f[e+164>>2]|0;i:while(1){o=C+5584|0;E=f[o>>2]|0;Nl(C|0,k|0,5640)|0;i=C+5636|0;t[i>>0]=t[i>>0]&-4;f[C+5168>>2]=0;i=C+5604|0;f[i>>2]=0;u=C+5620|0;f[u>>2]=0;A=C+5612|0;f[A>>2]=0;h=C+5632|0;f[h>>2]=0;d=C+5624|0;f[d>>2]=0;f[o>>2]=E;if(f[_>>2]|0){n=Nn(w)|0;f[i>>2]=n;if(!n){i=0;n=25;break}Nl(n|0,f[_>>2]|0,w|0)|0}i=(f[m>>2]|0)*20|0;n=Nn(i)|0;f[A>>2]=n;if(!n){i=0;n=25;break}Nl(n|0,f[v>>2]|0,i|0)|0;i=f[p>>2]|0;if(i){s=0;l=f[A>>2]|0;o=f[v>>2]|0;while(1){a=o+12|0;if(f[a>>2]|0){i=o+16|0;n=Nn(f[i>>2]|0)|0;f[l+12>>2]=n;if(!n){i=0;n=25;break i}Nl(n|0,f[a>>2]|0,f[i>>2]|0)|0;i=f[p>>2]|0}f[u>>2]=(f[u>>2]|0)+1;s=s+1|0;if(s>>>0>=i>>>0)break;else{l=l+20|0;o=o+20|0}}}i=(f[g>>2]|0)*20|0;n=Nn(i)|0;f[d>>2]=n;if(!n){i=0;n=25;break}Nl(n|0,f[y>>2]|0,i|0)|0;f[h>>2]=f[g>>2];s=f[g>>2]|0;if(s){l=0;n=f[d>>2]|0;a=f[y>>2]|0;while(1){i=f[a+8>>2]|0;if(i)f[n+8>>2]=(f[A>>2]|0)+(((i-(f[v>>2]|0)|0)/20|0)*20|0);i=f[a+12>>2]|0;if(i)f[n+12>>2]=(f[A>>2]|0)+(((i-(f[v>>2]|0)|0)/20|0)*20|0);l=l+1|0;if(l>>>0>=s>>>0)break;else{n=n+20|0;a=a+20|0}}}Nl(E|0,f[M>>2]|0,b|0)|0;T=T+1|0;if(T>>>0>=S>>>0)break e;else C=C+5640|0}if((n|0)==25){c=P;return i|0}}}while(0);n=Lr(1)|0;i=e+204|0;f[i>>2]=n;if(!n){r=0;c=P;return r|0}if(Br(n,R,L)|0){r=1;c=P;return r|0}Ir(f[i>>2]|0);f[i>>2]=0;Ht(r,1,8839,x)|0;r=0;c=P;return r|0}function pf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0;y=c;c=c+128|0;p=y+120|0;v=y+112|0;m=y+104|0;_=y+96|0;w=y+88|0;k=y+80|0;b=y+72|0;d=y+64|0;h=y+56|0;u=y+48|0;o=y+40|0;l=y+32|0;s=y+24|0;a=y+16|0;n=y+8|0;t=y;if(!e){c=y;return}il(12191,17,1,r)|0;f[t>>2]=f[e>>2];qs(r,12209,t)|0;f[n>>2]=f[e+4>>2];qs(r,12222,n)|0;f[a>>2]=f[e+8>>2];qs(r,12234,a)|0;f[s>>2]=f[e+16>>2];qs(r,12251,s)|0;if((i|0)>0){a=e+5584|0;s=0;do{n=f[a>>2]|0;f[l>>2]=s;qs(r,12262,l)|0;f[o>>2]=f[n+(s*1080|0)>>2];qs(r,12276,o)|0;e=n+(s*1080|0)+4|0;f[u>>2]=f[e>>2];qs(r,12290,u)|0;f[h>>2]=f[n+(s*1080|0)+8>>2];qs(r,12313,h)|0;f[d>>2]=f[n+(s*1080|0)+12>>2];qs(r,12329,d)|0;f[b>>2]=f[n+(s*1080|0)+16>>2];qs(r,12345,b)|0;f[k>>2]=f[n+(s*1080|0)+20>>2];qs(r,12362,k)|0;il(12377,23,1,r)|0;if(f[e>>2]|0){t=0;do{M=f[n+(s*1080|0)+944+(t<<2)>>2]|0;f[w>>2]=f[n+(s*1080|0)+812+(t<<2)>>2];f[w+4>>2]=M;qs(r,12401,w)|0;t=t+1|0}while(t>>>0<(f[e>>2]|0)>>>0)}Xs(10,r)|0;M=n+(s*1080|0)+24|0;f[_>>2]=f[M>>2];qs(r,12410,_)|0;f[m>>2]=f[n+(s*1080|0)+804>>2];qs(r,12425,m)|0;il(12442,20,1,r)|0;if((f[M>>2]|0)!=1){e=(f[e>>2]|0)*3|0;if((e|0)>2){e=e+-2|0;g=8}}else{e=1;g=8}if((g|0)==8){g=0;t=0;do{M=f[n+(s*1080|0)+28+(t<<3)>>2]|0;f[v>>2]=f[n+(s*1080|0)+28+(t<<3)+4>>2];f[v+4>>2]=M;qs(r,12401,v)|0;t=t+1|0}while((t|0)!=(e|0))}Xs(10,r)|0;f[p>>2]=f[n+(s*1080|0)+808>>2];qs(r,12463,p)|0;il(12480,5,1,r)|0;s=s+1|0}while((s|0)!=(i|0))}il(10321,4,1,r)|0;c=y;return}function gf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0;T=c;c=c+80|0;p=T+32|0;g=T+24|0;E=T+16|0;M=T+8|0;b=T+64|0;y=T+60|0;d=T+56|0;w=T+52|0;m=T+48|0;_=T+44|0;v=T+40|0;k=T+36|0;f[b>>2]=1;t=Nn(1e3)|0;if(!t){Ht(r,1,12127,T)|0;r=0;c=T;return r|0}A=e+116|0;S=e+112|0;o=e+204|0;u=e+84|0;h=e+8|0;n=1e3;l=0;while(1){if(!(Qn(e,y,d,w,m,_,v,k,b,i,r)|0)){a=5;break}if(!(f[b>>2]|0)){a=17;break}s=f[d>>2]|0;if(s>>>0>n>>>0){n=Hn(t,s)|0;if(!n){a=9;break}else{t=n;a=s}}else a=n;n=f[y>>2]|0;if(!($n(e,n,t,s,i,r)|0)){a=11;break}n=n+1|0;s=ie(f[S>>2]|0,f[A>>2]|0)|0;f[g>>2]=n;f[g+4>>2]=s;Ht(r,4,11986,g)|0;s=f[o>>2]|0;if(!($f(f[(f[f[s+20>>2]>>2]|0)+20>>2]|0,f[s+24>>2]|0,t,f[(f[u>>2]|0)+24>>2]|0)|0)){a=13;break}f[p>>2]=n;Ht(r,4,12016,p)|0;s=Nt(i)|0;if((s|0)==0&(x|0)==0?(f[h>>2]|0)==64:0){a=17;break}l=l+1|0;if((l|0)==(ie(f[S>>2]|0,f[A>>2]|0)|0)){a=17;break}else n=a}if((a|0)==5){zn(t);r=0;c=T;return r|0}else if((a|0)==9){zn(t);S=ie(f[S>>2]|0,f[A>>2]|0)|0;f[M>>2]=(f[y>>2]|0)+1;f[M+4>>2]=S;Ht(r,1,11946,M)|0;r=0;c=T;return r|0}else if((a|0)==11){zn(t);S=ie(f[S>>2]|0,f[A>>2]|0)|0;f[E>>2]=n+1;f[E+4>>2]=S;Ht(r,1,12162,E)|0;r=0;c=T;return r|0}else if((a|0)==13){zn(t);r=0;c=T;return r|0}else if((a|0)==17){zn(t);r=1;c=T;return r|0}return 0}function yf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,P=0;P=c;c=c+96|0;E=P+56|0;C=P+48|0;M=P+40|0;A=P+32|0;R=P+24|0;o=P+16|0;l=P+8|0;_=P+92|0;T=P+88|0;w=P+84|0;v=P+80|0;g=P+76|0;p=P+72|0;y=P+68|0;m=P+64|0;f[_>>2]=1;t=Nn(1e3)|0;if(!t){Ht(r,1,11880,P)|0;L=0;c=P;return L|0}S=e+196|0;a=f[S>>2]|0;n=f[a+40>>2]|0;e:do{if(!n){n=ie(f[e+116>>2]|0,f[e+112>>2]|0)|0;f[a+36>>2]=n;n=Fn(n,40)|0;a=f[S>>2]|0;f[a+40>>2]=n;i:do{if(n){if(f[a+36>>2]|0){s=0;do{f[n+(s*40|0)+28>>2]=100;f[n+(s*40|0)+20>>2]=0;k=Fn(100,24)|0;a=f[S>>2]|0;n=f[a+40>>2]|0;f[n+(s*40|0)+24>>2]=k;s=s+1|0;if(!k)break i}while(s>>>0<(f[a+36>>2]|0)>>>0)}a=f[e+60>>2]|0;if(!n)break e;else{L=12;break e}}}while(0);zn(t);L=0;c=P;return L|0}else{a=f[e+60>>2]|0;L=12}}while(0);if((L|0)==12)if(f[n+16>>2]|0){if(!(f[n+(a*40|0)+4>>2]|0)){k=e+64|0;k=Il(f[k>>2]|0,f[k+4>>2]|0,2,0)|0;if(!(mt(i,k,x,r)|0)){Ht(r,1,11918,l)|0;zn(t);L=0;c=P;return L|0}}else{k=f[n+(a*40|0)+16>>2]|0;k=Il(f[k>>2]|0,f[k+4>>2]|0,2,0)|0;if(!(mt(i,k,x,r)|0)){Ht(r,1,11918,o)|0;zn(t);L=0;c=P;return L|0}}n=e+8|0;if((f[n>>2]|0)==256)f[n>>2]=8}e:do{if(Qn(e,T,w,v,g,p,y,m,_,i,r)|0){b=e+116|0;k=e+112|0;u=e+204|0;h=e+84|0;d=a+1|0;n=1e3;while(1){if(!(f[_>>2]|0))break;o=f[w>>2]|0;if(o>>>0>n>>>0){n=Hn(t,o)|0;if(!n){L=26;break}else{t=n;l=o}}else l=n;s=f[T>>2]|0;if(!($n(e,s,t,o,i,r)|0)){L=28;break}n=s+1|0;o=ie(f[k>>2]|0,f[b>>2]|0)|0;f[A>>2]=n;f[A+4>>2]=o;Ht(r,4,11986,A)|0;o=f[u>>2]|0;if(!($f(f[(f[f[o+20>>2]>>2]|0)+20>>2]|0,f[o+24>>2]|0,t,f[(f[h>>2]|0)+24>>2]|0)|0)){L=30;break}f[M>>2]=n;Ht(r,4,12016,M)|0;if((s|0)==(a|0)){L=32;break}f[E>>2]=n;f[E+4>>2]=d;Ht(r,2,12060,E)|0;if(!(Qn(e,T,w,v,g,p,y,m,_,i,r)|0))break e;else n=l}if((L|0)==26){zn(t);L=ie(f[k>>2]|0,f[b>>2]|0)|0;f[R>>2]=(f[T>>2]|0)+1;f[R+4>>2]=L;Ht(r,1,11946,R)|0;L=0;c=P;return L|0}else if((L|0)==28){zn(t);L=0;c=P;return L|0}else if((L|0)==30){zn(t);L=0;c=P;return L|0}else if((L|0)==32){L=(f[S>>2]|0)+8|0;L=Il(f[L>>2]|0,f[L+4>>2]|0,2,0)|0;if(!(mt(i,L,x,r)|0)){Ht(r,1,11918,C)|0;zn(t);L=0;c=P;return L|0}}zn(t);L=1;c=P;return L|0}}while(0);zn(t);L=0;c=P;return L|0}function Mf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0;O=c;c=c+32|0;R=O+16|0;v=O+8|0;u=O;C=O+20|0;L=f[e+40>>2]|0;P=e+36|0;d=f[P>>2]|0;b=e+204|0;o=f[b>>2]|0;f[o+16>>2]=0;T=e+8|0;f[T>>2]=0;f[C>>2]=0;ut(d,65424,2);ut(d+2|0,10,2);x=e+200|0;ut(d+4|0,f[x>>2]|0,2);A=e+12|0;ut(d+10|0,f[A>>2]|0,1);S=e+164|0;ut(d+11|0,f[(f[S>>2]|0)+((f[x>>2]|0)*5640|0)+5588>>2]|0,1);f[C>>2]=12;s=d+12|0;t=L+-12|0;h=e+88|0;if(((n[h>>1]|0)+-3&65535)>=4?(a=f[x>>2]|0,l=f[S>>2]|0,(f[l+(a*5640|0)+420>>2]|0)!=0):0){f[C>>2]=0;Wf(f[(f[e+80>>2]|0)+16>>2]|0,l,a,s,C);E=f[C>>2]|0;a=E+12|0;s=d+a|0;t=t-E|0}else a=12;f[C>>2]=0;ut(s,65427,2);f[o+4>>2]=f[T>>2];E=f[A>>2]|0;f[o+8>>2]=E;if(!E)f[(f[f[o+20>>2]>>2]|0)+840>>2]=0;f[C>>2]=0;if(!(jr(o,f[x>>2]|0,s+2|0,C,t+-4|0,0)|0)){Ht(r,1,11860,u)|0;i=0;c=O;return i|0}t=(f[C>>2]|0)+2|0;f[C>>2]=t;t=t+a|0;ut(d+6|0,t,4);if(((n[h>>1]|0)+-3&65535)<4){E=e+28|0;ut(f[E>>2]|0,f[x>>2]|0,1);M=(f[E>>2]|0)+1|0;f[E>>2]=M;ut(M,t,4);f[E>>2]=(f[E>>2]|0)+4}a=d+t|0;E=L-t|0;g=f[b>>2]|0;y=e+88|0;_=f[S>>2]|0;m=f[x>>2]|0;h=Qf(y,0,m)|0;M=e+8|0;f[A>>2]=(f[A>>2]|0)+1;e:do{if(h>>>0>1){d=g+4|0;b=g+8|0;k=g+20|0;w=e+28|0;l=a;a=E;t=0;u=1;while(1){f[M>>2]=u;f[C>>2]=0;ut(l,65424,2);ut(l+2|0,10,2);ut(l+4|0,f[x>>2]|0,2);ut(l+10|0,f[A>>2]|0,1);ut(l+11|0,f[(f[S>>2]|0)+((f[x>>2]|0)*5640|0)+5588>>2]|0,1);f[C>>2]=0;ut(l+12|0,65427,2);f[d>>2]=f[T>>2];o=f[A>>2]|0;f[b>>2]=o;if(!o)f[(f[f[k>>2]>>2]|0)+840>>2]=0;f[C>>2]=0;if(!(jr(g,f[x>>2]|0,l+14|0,C,a+-16|0,0)|0))break;B=f[C>>2]|0;I=B+2|0;f[C>>2]=I;o=B+14|0;s=l+o|0;t=t+12+I|0;a=a+-12+(-2-B)|0;ut(l+6|0,o,4);if(((n[y>>1]|0)+-3&65535)<4){ut(f[w>>2]|0,f[x>>2]|0,1);I=(f[w>>2]|0)+1|0;f[w>>2]=I;ut(I,o,4);f[w>>2]=(f[w>>2]|0)+4}f[A>>2]=(f[A>>2]|0)+1;u=u+1|0;if(u>>>0>=h>>>0){p=12;break e}else l=s}Ht(r,1,11860,v)|0}else{s=a;a=E;t=0;p=12}}while(0);e:do{if((p|0)==12){k=_+(m*5640|0)+420|0;i:do{if(f[k>>2]|0){w=g+16|0;_=g+4|0;m=g+8|0;v=g+20|0;b=e+28|0;d=1;r:while(1){f[w>>2]=d;h=Qf(y,d,f[x>>2]|0)|0;if(h){u=0;while(1){f[M>>2]=u;f[C>>2]=0;ut(s,65424,2);ut(s+2|0,10,2);ut(s+4|0,f[x>>2]|0,2);ut(s+10|0,f[A>>2]|0,1);ut(s+11|0,f[(f[S>>2]|0)+((f[x>>2]|0)*5640|0)+5588>>2]|0,1);f[C>>2]=0;ut(s+12|0,65427,2);f[_>>2]=f[T>>2];I=f[A>>2]|0;f[m>>2]=I;if(!I)f[(f[f[v>>2]>>2]|0)+840>>2]=0;f[C>>2]=0;if(!(jr(g,f[x>>2]|0,s+14|0,C,a+-16|0,0)|0))break r;I=f[C>>2]|0;l=I+2|0;f[C>>2]=l;t=t+12+l|0;l=I+14|0;o=s+l|0;a=a+-12+(-2-I)|0;ut(s+6|0,l,4);if(((n[y>>1]|0)+-3&65535)<4){ut(f[b>>2]|0,f[x>>2]|0,1);I=(f[b>>2]|0)+1|0;f[b>>2]=I;ut(I,l,4);f[b>>2]=(f[b>>2]|0)+4}f[A>>2]=(f[A>>2]|0)+1;u=u+1|0;if(u>>>0>=h>>>0){s=o;break}else s=o}}d=d+1|0;if(d>>>0>(f[k>>2]|0)>>>0)break i}Ht(r,1,11860,R)|0;break e}}while(0);I=t-E+L|0;if((Bt(i,f[P>>2]|0,I,r)|0)!=(I|0)){I=0;c=O;return I|0}f[x>>2]=(f[x>>2]|0)+1;I=1;c=O;return I|0}}while(0);I=0;c=O;return I|0}function Ef(e,i,r){e=e|0;i=i|0;r=r|0;e=e+44|0;ut(f[e>>2]|0,65497,2);if((Bt(i,f[e>>2]|0,2,r)|0)!=2){i=0;return i|0}i=(It(i,r)|0)!=0&1;return i|0}function Af(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0;a=(f[e+32>>2]|0)*5|0;l=e+16|0;l=Il(f[l>>2]|0,f[l+4>>2]|0,6,0)|0;s=x;t=Dt(i)|0;n=x;if(!(Ut(i,l,s,r)|0)){l=0;return l|0}if((Bt(i,f[e+24>>2]|0,a,r)|0)!=(a|0)){l=0;return l|0}l=(Ut(i,t,n,r)|0)!=0&1;return l|0}function Sf(e,i,r){e=e|0;i=i|0;r=r|0;e=f[e+196>>2]|0;if(!e)return 1;i=Dt(i)|0;r=e;r=xl(i|0,x|0,f[r>>2]|0,f[r+4>>2]|0)|0;i=e+16|0;f[i>>2]=r;f[i+4>>2]=x;return 1}function Tf(e,i,r){e=e|0;i=i|0;r=r|0;r=e+204|0;Ir(f[r>>2]|0);f[r>>2]=0;r=e+24|0;i=f[r>>2]|0;if(i){zn(i);f[r>>2]=0;f[e+28>>2]=0}r=e+36|0;i=f[r>>2]|0;if(!i){e=e+40|0;f[e>>2]=0;return 1}zn(i);f[r>>2]=0;e=e+40|0;f[e>>2]=0;return 1}function Cf(e,i,r){e=e|0;i=i|0;r=r|0;r=e+44|0;i=f[r>>2]|0;if(i){zn(i);f[r>>2]=0}f[e+48>>2]=0;return 1}function Rf(e,i,r){e=e|0;i=i|0;r=r|0;return 1}function Lf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0;n=c;c=c+32|0;t=(f[e+8>>2]|0)==0&(f[e+188>>2]|0)!=0&(f[e+192>>2]|0)!=0&1;i=(f[(f[(f[e+164>>2]|0)+5584>>2]|0)+4>>2]|0)+-1|0;if(i>>>0>31){Ht(r,1,11790,n)|0;r=0;c=n;return r|0}i=1<<i;if((f[e+100>>2]|0)>>>0<i>>>0){Ht(r,1,11790,n+8|0)|0;r=0;c=n;return r|0}if((f[e+104>>2]|0)>>>0>=i>>>0){r=t;c=n;return r|0}Ht(r,1,11790,n+16|0)|0;r=0;c=n;return r|0}function xf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,s=0,l=0,o=0;if((n[e+88>>1]&-32256)<<16>>16!=-32256){o=1;return o|0}l=ie(f[e+112>>2]|0,f[e+116>>2]|0)|0;if(!l){o=1;return o|0}s=e+80|0;o=0;r=1;a=f[e+164>>2]|0;while(1){if((f[a+16>>2]|0)==2){r=(f[a+5608>>2]|0)!=0&r;e=f[(f[s>>2]|0)+16>>2]|0;if(e){t=0;i=f[a+5584>>2]|0;while(1){r=(f[i+20>>2]&1^1)&r;t=t+1|0;if(t>>>0>=e>>>0)break;else i=i+1080|0}}}o=o+1|0;if((o|0)==(l|0))break;else a=a+5640|0}return r|0}function Pf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0;a=e+88|0;s=e+32|0;l=f[e+80>>2]|0;o=ie(f[e+116>>2]|0,f[e+112>>2]|0)|0;f[s>>2]=0;if(!o)return 1;t=f[e+164>>2]|0;n=0;while(1){Er(l,a,n);i=t+420|0;r=0;e=0;do{u=Qf(a,e,n)|0;f[s>>2]=(f[s>>2]|0)+u;r=u+r|0;e=e+1|0}while(e>>>0<=(f[i>>2]|0)>>>0);f[t+5588>>2]=r;n=n+1|0;if((n|0)==(o|0))break;else t=t+5640|0}return 1}function Of(e,i,r){e=e|0;i=i|0;r=r|0;e=f[e+44>>2]|0;ut(e,65359,2);return(Bt(i,e,2,r)|0)==2|0}function Bf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0;k=c;c=c+16|0;l=k;o=f[e+80>>2]|0;d=o+16|0;u=(f[d>>2]|0)*3|0;b=u+40|0;t=f[o+24>>2]|0;a=e+48|0;h=e+44|0;n=f[h>>2]|0;do{if(b>>>0>(f[a>>2]|0)>>>0){n=Hn(n,b)|0;if(n){f[h>>2]=n;f[a>>2]=b;break}zn(f[h>>2]|0);f[h>>2]=0;f[a>>2]=0;Ht(r,1,11752,l)|0;i=0;c=k;return i|0}}while(0);ut(n,65361,2);ut(n+2|0,u+38|0,2);ut(n+4|0,s[e+88>>1]|0,2);ut(n+6|0,f[o+8>>2]|0,4);ut(n+10|0,f[o+12>>2]|0,4);ut(n+14|0,f[o>>2]|0,4);ut(n+18|0,f[o+4>>2]|0,4);ut(n+22|0,f[e+100>>2]|0,4);ut(n+26|0,f[e+104>>2]|0,4);ut(n+30|0,f[e+92>>2]|0,4);ut(n+34|0,f[e+96>>2]|0,4);ut(n+38|0,f[d>>2]|0,2);if(f[d>>2]|0){a=0;n=n+40|0;while(1){ut(n,(f[t+24>>2]|0)+-1+(f[t+32>>2]<<7)|0,1);ut(n+1|0,f[t>>2]|0,1);ut(n+2|0,f[t+4>>2]|0,1);a=a+1|0;if(a>>>0>=(f[d>>2]|0)>>>0)break;else{n=n+3|0;t=t+52|0}}}i=(Bt(i,f[h>>2]|0,b,r)|0)==(b|0)&1;c=k;return i|0}function If(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0;_=c;c=c+32|0;w=_+16|0;k=_+8|0;l=_;b=_+20|0;o=e+200|0;u=f[o>>2]|0;h=e+164|0;d=f[h>>2]|0;t=f[d+(u*5640|0)+5584>>2]|0;if(!(f[t>>2]&1))a=5;else a=(f[t+4>>2]|0)+5|0;s=a+9|0;f[b>>2]=s;n=e+48|0;e=e+44|0;t=f[e>>2]|0;do{if(s>>>0>(f[n>>2]|0)>>>0){t=Hn(t,s)|0;if(t){f[e>>2]=t;f[n>>2]=s;break}zn(f[e>>2]|0);f[e>>2]=0;f[n>>2]=0;Ht(r,1,11687,l)|0;w=0;c=_;return w|0}}while(0);ut(t,65362,2);ut(t+2|0,a+7|0,2);ut(t+4|0,f[d+(u*5640|0)>>2]|0,1);ut(t+5|0,f[d+(u*5640|0)+4>>2]|0,1);ut(t+6|0,f[d+(u*5640|0)+8>>2]|0,2);ut(t+8|0,f[d+(u*5640|0)+16>>2]|0,1);f[b>>2]=a;if(!(Jf(f[h>>2]|0,f[o>>2]|0,t+9|0,b,r)|0)){Ht(r,1,11726,k)|0;w=0;c=_;return w|0}if(!(f[b>>2]|0)){w=(Bt(i,f[e>>2]|0,s,r)|0)==(s|0)&1;c=_;return w|0}else{Ht(r,1,11726,w)|0;w=0;c=_;return w|0}return 0}function Df(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0;k=c;c=c+32|0;b=k+16|0;d=k+8|0;l=k;u=k+20|0;o=e+200|0;h=e+164|0;t=f[(f[h>>2]|0)+((f[o>>2]|0)*5640|0)+5584>>2]|0;n=f[t+24>>2]|0;if((n|0)==1)t=1;else t=((f[t+4>>2]|0)*3|0)+-2|0;a=(n|0)==0?t+1|0:t<<1|1;s=a+4|0;f[u>>2]=s;n=e+48|0;e=e+44|0;t=f[e>>2]|0;do{if(s>>>0>(f[n>>2]|0)>>>0){t=Hn(t,s)|0;if(t){f[e>>2]=t;f[n>>2]=s;break}zn(f[e>>2]|0);f[e>>2]=0;f[n>>2]=0;Ht(r,1,11622,l)|0;b=0;c=k;return b|0}}while(0);ut(t,65372,2);ut(t+2|0,a+2|0,2);f[u>>2]=a;if(!(Zf(f[h>>2]|0,f[o>>2]|0,0,t+4|0,u,r)|0)){Ht(r,1,11661,d)|0;b=0;c=k;return b|0}if(!(f[u>>2]|0)){b=(Bt(i,f[e>>2]|0,s,r)|0)==(s|0)&1;c=k;return b|0}else{Ht(r,1,11661,b)|0;b=0;c=k;return b|0}return 0}function Nf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0;y=c;c=c+16|0;p=y;_=y+4|0;b=e+80|0;t=f[(f[b>>2]|0)+16>>2]|0;if(t>>>0<=1){g=1;c=y;return g|0}m=e+164|0;v=e+200|0;w=e+48|0;d=e+44|0;h=1;while(1){s=f[m>>2]|0;o=f[v>>2]|0;a=f[s+(o*5640|0)+5584>>2]|0;l=f[a+(h*1080|0)>>2]|0;e:do{if((((((f[a>>2]|0)==(l|0)?(k=f[a+4>>2]|0,(k|0)==(f[a+(h*1080|0)+4>>2]|0)):0)?(f[a+8>>2]|0)==(f[a+(h*1080|0)+8>>2]|0):0)?(f[a+12>>2]|0)==(f[a+(h*1080|0)+12>>2]|0):0)?(f[a+16>>2]|0)==(f[a+(h*1080|0)+16>>2]|0):0)?(f[a+20>>2]|0)==(f[a+(h*1080|0)+20>>2]|0):0){if(k){e=0;do{if((f[a+812+(e<<2)>>2]|0)!=(f[a+(h*1080|0)+812+(e<<2)>>2]|0)){g=13;break e}if((f[a+944+(e<<2)>>2]|0)!=(f[a+(h*1080|0)+944+(e<<2)>>2]|0)){g=13;break e}e=e+1|0}while(e>>>0<k>>>0)}}else g=13}while(0);if((g|0)==13){g=0;if(!(l&1))e=5;else e=(f[a+(h*1080|0)+4>>2]|0)+5|0;u=e+(t>>>0<257?6:7)|0;n=f[d>>2]|0;if(u>>>0>(f[w>>2]|0)>>>0){e=Hn(n,u)|0;if(!e){g=17;break}f[d>>2]=e;f[w>>2]=u;o=f[v>>2]|0;s=f[m>>2]|0;a=f[s+(o*5640|0)+5584>>2]|0;t=f[(f[b>>2]|0)+16>>2]|0;l=f[a+(h*1080|0)>>2]|0;n=e}t=t>>>0<257?1:2;if(!(l&1))e=5;else e=(f[a+(h*1080|0)+4>>2]|0)+5|0;ut(n,65363,2);ut(n+2|0,t+3+e|0,2);ut(n+4|0,h,t);l=t|4;ut(n+l|0,f[(f[s+(o*5640|0)+5584>>2]|0)+(h*1080|0)>>2]|0,1);f[_>>2]=e;Jf(f[m>>2]|0,f[v>>2]|0,n+(l+1)|0,_,r)|0;if((Bt(i,f[d>>2]|0,u,r)|0)!=(u|0)){e=0;g=24;break}t=f[(f[b>>2]|0)+16>>2]|0}h=h+1|0;if(h>>>0>=t>>>0){e=1;g=24;break}}if((g|0)==17){zn(f[d>>2]|0);f[d>>2]=0;f[w>>2]=0;Ht(r,1,11548,p)|0;g=0;c=y;return g|0}else if((g|0)==24){c=y;return e|0}return 0}function Ff(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0;v=c;c=c+16|0;_=v;b=v+4|0;h=e+80|0;t=f[(f[h>>2]|0)+16>>2]|0;if(t>>>0<=1){m=1;c=v;return m|0}k=e+164|0;w=e+200|0;d=e+48|0;u=e+44|0;o=1;while(1){l=f[(f[k>>2]|0)+((f[w>>2]|0)*5640|0)+5584>>2]|0;a=f[l+24>>2]|0;s=f[l+(o*1080|0)+24>>2]|0;e:do{if((a|0)==(s|0)?(f[l+804>>2]|0)==(f[l+(o*1080|0)+804>>2]|0):0){if((a|0)!=1){n=(f[l+4>>2]|0)*3|0;e=n+-2|0;if((n|0)!=((f[l+(o*1080|0)+4>>2]|0)*3|0)){m=14;break}if(!e)break}else e=1;n=0;do{if((f[l+28+(n<<3)>>2]|0)!=(f[l+(o*1080|0)+28+(n<<3)>>2]|0)){m=14;break e}n=n+1|0}while(n>>>0<e>>>0);if(a){n=0;do{if((f[l+28+(n<<3)+4>>2]|0)!=(f[l+(o*1080|0)+28+(n<<3)+4>>2]|0)){m=14;break e}n=n+1|0}while(n>>>0<e>>>0)}}else m=14}while(0);if((m|0)==14){m=0;if((s|0)==1)e=1;else e=((f[l+(o*1080|0)+4>>2]|0)*3|0)+-2|0;a=((s|0)==0?e+1|0:e<<1|1)+5+(t>>>0>256&1)|0;e=f[u>>2]|0;if(a>>>0>(f[d>>2]|0)>>>0){e=Hn(e,a)|0;if(!e){m=18;break}f[u>>2]=e;f[d>>2]=a;t=f[(f[k>>2]|0)+((f[w>>2]|0)*5640|0)+5584>>2]|0;n=f[t+(o*1080|0)+24>>2]|0}else{n=s;t=l}if((n|0)==1)t=1;else t=((f[t+(o*1080|0)+4>>2]|0)*3|0)+-2|0;n=(n|0)==0?t+1|0:t<<1|1;f[b>>2]=n+6;ut(e,65373,2);t=e+2|0;if((f[(f[h>>2]|0)+16>>2]|0)>>>0<257){ut(t,n+3|0,2);ut(e+4|0,o,1);e=e+5|0}else{ut(t,n+4|0,2);ut(e+4|0,o,2);e=e+6|0}f[b>>2]=n;Zf(f[k>>2]|0,f[w>>2]|0,o,e,b,r)|0;if((Bt(i,f[u>>2]|0,a,r)|0)!=(a|0)){e=0;m=28;break}t=f[(f[h>>2]|0)+16>>2]|0}o=o+1|0;if(o>>>0>=t>>>0){e=1;m=28;break}}if((m|0)==18){zn(f[u>>2]|0);f[u>>2]=0;f[d>>2]=0;Ht(r,1,11476,_)|0;m=0;c=v;return m|0}else if((m|0)==28){c=v;return e|0}return 0}function Uf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0;u=c;c=c+16|0;a=u;s=(f[e+32>>2]|0)*5|0;l=s+6|0;n=e+48|0;o=e+44|0;t=f[o>>2]|0;do{if(l>>>0>(f[n>>2]|0)>>>0){t=Hn(t,l)|0;if(t){f[o>>2]=t;f[n>>2]=l;break}zn(f[o>>2]|0);f[o>>2]=0;f[n>>2]=0;Ht(r,1,11437,a)|0;i=0;c=u;return i|0}}while(0);a=Dt(i)|0;e=e+16|0;f[e>>2]=a;f[e+4>>2]=x;ut(t,65365,2);ut(t+2|0,s+4|0,2);ut(t+4|0,0,1);ut(t+5|0,80,1);i=(Bt(i,f[o>>2]|0,l,r)|0)==(l|0)&1;c=u;return i|0}function jf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;w=c;c=c+16|0;l=w;k=w+4|0;f[k>>2]=0;h=e+200|0;t=f[h>>2]|0;u=e+164|0;n=f[u>>2]|0;o=e+80|0;s=f[(f[o>>2]|0)+16>>2]|0;b=(ie(s>>>0<257?7:9,(f[n+(t*5640|0)+420>>2]|0)+1|0)|0)+4|0;a=e+48|0;d=e+44|0;e=f[d>>2]|0;do{if(b>>>0>(f[a>>2]|0)>>>0){t=Hn(e,b)|0;if(t){f[d>>2]=t;f[a>>2]=b;a=t;e=f[(f[o>>2]|0)+16>>2]|0;n=f[u>>2]|0;t=f[h>>2]|0;break}zn(f[d>>2]|0);f[d>>2]=0;f[a>>2]=0;Ht(r,1,11398,l)|0;i=0;c=w;return i|0}else{a=e;e=s}}while(0);Wf(e,n,t,a,k);i=(Bt(i,f[d>>2]|0,b,r)|0)==(b|0)&1;c=w;return i|0}function Hf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0;l=e+164|0;o=e+80|0;n=f[o>>2]|0;t=f[n+16>>2]|0;if(!t){i=1;return i|0}s=e+44|0;e=0;a=f[(f[l>>2]|0)+5584>>2]|0;while(1){if(f[a+808>>2]|0){u=f[(f[l>>2]|0)+5584>>2]|0;h=t>>>0<257?1:2;n=h+6|0;c=f[s>>2]|0;ut(c,65374,2);t=h|4;ut(c+2|0,t,2);ut(c+4|0,e,h);ut(c+t|0,0,1);ut(c+(t+1)|0,f[u+(e*1080|0)+808>>2]|0,1);if((Bt(i,f[s>>2]|0,n,r)|0)!=(n|0)){e=0;t=7;break}n=f[o>>2]|0}e=e+1|0;t=f[n+16>>2]|0;if(e>>>0>=t>>>0){e=1;t=7;break}else a=a+1080|0}if((t|0)==7)return e|0;return 0}function zf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0;u=c;c=c+16|0;a=u;s=f[e+108>>2]|0;l=dl(s)|0;o=l+6|0;t=e+48|0;n=e+44|0;e=f[n>>2]|0;do{if(o>>>0>(f[t>>2]|0)>>>0){e=Hn(e,o)|0;if(e){f[n>>2]=e;f[t>>2]=o;break}zn(f[n>>2]|0);f[n>>2]=0;f[t>>2]=0;Ht(r,1,11355,a)|0;i=0;c=u;return i|0}}while(0);ut(e,65380,2);ut(e+2|0,l+4|0,2);ut(e+4|0,1,2);Nl(e+6|0,s|0,l|0)|0;i=(Bt(i,f[n>>2]|0,o,r)|0)==(o|0)&1;c=u;return i|0}function Yf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0;S=c;c=c+32|0;y=S+24|0;v=S+16|0;b=S+8|0;a=S;l=f[e+80>>2]|0;o=l+16|0;s=f[o>>2]|0;u=s+6|0;g=e+48|0;A=e+44|0;n=f[A>>2]|0;do{if(u>>>0>(f[g>>2]|0)>>>0){n=Hn(n,u)|0;if(n){f[A>>2]=n;f[g>>2]=u;break}zn(f[A>>2]|0);f[A>>2]=0;f[g>>2]=0;Ht(r,1,11199,a)|0;i=0;c=S;return i|0}}while(0);ut(n,65400,2);ut(n+2|0,s+4|0,2);ut(n+4|0,f[o>>2]|0,2);if(f[o>>2]|0){s=0;a=f[l+24>>2]|0;n=n+6|0;while(1){ut(n,(f[a+24>>2]|0)+-1|f[a+32>>2]<<7,1);s=s+1|0;if(s>>>0>=(f[o>>2]|0)>>>0)break;else{a=a+52|0;n=n+1|0}}}if((Bt(i,f[A>>2]|0,u,r)|0)!=(u|0)){i=0;c=S;return i|0}w=e+200|0;d=f[w>>2]|0;_=e+164|0;h=f[_>>2]|0;a=h+(d*5640|0)+5616|0;e:do{if(f[a>>2]|0){u=0;e=f[h+(d*5640|0)+5612>>2]|0;while(1){s=e+16|0;l=f[s>>2]|0;o=l+10|0;n=f[A>>2]|0;if(o>>>0>(f[g>>2]|0)>>>0){n=Hn(n,o)|0;if(!n)break;f[A>>2]=n;f[g>>2]=o}ut(n,65396,2);ut(n+2|0,l+8|0,2);ut(n+4|0,0,2);ut(n+6|0,f[e+4>>2]<<8|f[e+8>>2]&255|f[e>>2]<<10,2);ut(n+8|0,0,2);Nl(n+10|0,f[e+12>>2]|0,f[s>>2]|0)|0;if((Bt(i,f[A>>2]|0,o,r)|0)!=(o|0)){m=0;M=42;break}u=u+1|0;if(u>>>0>=(f[a>>2]|0)>>>0)break e;else e=e+20|0}if((M|0)==42){c=S;return m|0}zn(f[A>>2]|0);f[A>>2]=0;f[g>>2]=0;Ht(r,1,11238,b)|0;i=0;c=S;return i|0}}while(0);b=h+(d*5640|0)+5628|0;e:do{if(f[b>>2]|0){k=0;h=f[h+(d*5640|0)+5624>>2]|0;while(1){u=h+4|0;a=f[u>>2]|0;l=a>>>0>255;o=l?2:1;l=l?32768:0;a=ie(o,a<<1)|0;e=a+19|0;n=f[A>>2]|0;if(e>>>0>(f[g>>2]|0)>>>0){n=Hn(n,e)|0;if(!n)break;f[A>>2]=n;f[g>>2]=e}ut(n,65397,2);ut(n+2|0,a+17|0,2);ut(n+4|0,0,2);ut(n+6|0,f[h>>2]|0,1);ut(n+7|0,0,2);ut(n+9|0,1,2);ut(n+11|0,1,1);ut(n+12|0,f[u>>2]|l,2);n=n+14|0;if(!(f[u>>2]|0))a=0;else{s=0;do{ut(n,s,o);n=n+o|0;s=s+1|0;a=f[u>>2]|0}while(s>>>0<a>>>0)}ut(n,a|l,2);n=n+2|0;if(!(f[u>>2]|0))s=n;else{a=0;do{ut(n,a,o);n=n+o|0;a=a+1|0}while(a>>>0<(f[u>>2]|0)>>>0);s=n}n=((t[h+16>>0]^1)&255)<<16&65536;a=f[h+8>>2]|0;if(a)n=f[a+8>>2]|n;a=f[h+12>>2]|0;if(a)n=f[a+8>>2]<<8|n;ut(s,n,3);if((Bt(i,f[A>>2]|0,e,r)|0)!=(e|0)){m=0;M=42;break}k=k+1|0;if(k>>>0>=(f[b>>2]|0)>>>0)break e;else h=h+20|0}if((M|0)==42){c=S;return m|0}zn(f[A>>2]|0);f[A>>2]=0;f[g>>2]=0;Ht(r,1,11277,v)|0;i=0;c=S;return i|0}}while(0);o=f[w>>2]|0;l=f[_>>2]|0;u=l+(o*5640|0)+5628|0;a=f[u>>2]|0;e=a+5|0;n=f[A>>2]|0;do{if(e>>>0>(f[g>>2]|0)>>>0){n=Hn(n,e)|0;if(!n){zn(f[A>>2]|0);f[A>>2]=0;f[g>>2]=0;Ht(r,1,11316,y)|0;p=1;break}else{f[A>>2]=n;f[g>>2]=e;E=n;M=37;break}}else{E=n;M=37}}while(0);if((M|0)==37){ut(E,65399,2);ut(E+2|0,a+3|0,2);ut(E+4|0,f[u>>2]|0,1);if(f[u>>2]|0){s=0;a=E+5|0;n=f[l+(o*5640|0)+5624>>2]|0;while(1){ut(a,f[n>>2]|0,1);s=s+1|0;if(s>>>0>=(f[u>>2]|0)>>>0)break;else{a=a+1|0;n=n+20|0}}}p=(Bt(i,f[A>>2]|0,e,r)|0)!=(e|0)}i=p&1^1;c=S;return i|0}function qf(e,i,r){e=e|0;i=i|0;r=r|0;r=Dt(i)|0;i=(f[e+196>>2]|0)+8|0;f[i>>2]=r;f[i+4>>2]=x;return 1}function Xf(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0;n=c;c=c+16|0;i=Lr(0)|0;t=e+204|0;f[t>>2]=i;if(!i){Ht(r,1,11159,n)|0;r=0;c=n;return r|0}if(Br(i,f[e+80>>2]|0,e+88|0)|0){r=1;c=n;return r|0}Ir(f[t>>2]|0);f[t>>2]=0;r=0;c=n;return r|0}function Vf(e,i,r){e=e|0;i=i|0;r=r|0;var a=0,s=0,l=0,u=0,c=0,h=0,d=0.0,b=0,k=0,w=0,_=0,m=0,v=0.0,p=0,g=0,y=0.0,M=0.0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,P=0.0,O=0.0,B=0.0,I=0.0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0;j=e+80|0;R=f[j>>2]|0;H=e+164|0;s=f[H>>2]|0;U=R+24|0;L=f[U>>2]|0;r=f[L>>2]|0;a=f[L+4>>2]|0;F=R+16|0;L=ie(f[L+24>>2]|0,f[F>>2]|0)|0;C=Dt(i)|0;w=e+116|0;c=f[w>>2]|0;_=e+112|0;i=f[_>>2]|0;P=(+(C>>>0)+4294967296.0*+(x|0))/+((ie(i,c)|0)>>>0);C=(t[e+181>>0]&8)==0?1:2;if(c){m=e+92|0;p=e+100|0;g=e+96|0;E=e+104|0;A=R+4|0;S=R+8|0;T=R+12|0;M=+((ie(r<<3,a)|0)>>>0);h=i;r=i;k=0;i=s;do{b=k;k=k+1|0;if(!r)r=0;else{h=0;do{y=+go[C&3](i);c=f[i+8>>2]|0;y=y/+(c>>>0);z=f[m>>2]|0;s=f[p>>2]|0;u=(ie(s,h)|0)+z|0;r=f[R>>2]|0;r=(u|0)>(r|0)?u:r;u=f[g>>2]|0;l=f[E>>2]|0;Y=(ie(l,b)|0)+u|0;a=f[A>>2]|0;a=(Y|0)>(a|0)?Y:a;h=h+1|0;z=(ie(s,h)|0)+z|0;s=f[S>>2]|0;s=(z|0)<(s|0)?z:s;u=(ie(l,k)|0)+u|0;l=f[T>>2]|0;l=(u|0)<(l|0)?u:l;u=i+20|0;d=+o[u>>2];if(d!=0.0)o[u>>2]=+((ie(ie(s-r|0,L)|0,l-a|0)|0)>>>0)/(M*d)-y;if(c>>>0>1){d=+((ie(ie(s-r|0,L)|0,l-a|0)|0)>>>0);r=1;a=i+24|0;while(1){v=+o[a>>2];if(v!=0.0)o[a>>2]=d/(M*v)-y;r=r+1|0;if(r>>>0>=c>>>0)break;else a=a+4|0}}i=i+5640|0;r=f[_>>2]|0}while(h>>>0<r>>>0);c=f[w>>2]|0;h=r}}while(k>>>0<c>>>0);if(!c)c=0;else{m=(h|0)==0;v=P+2.0;g=h>>>0>1?h:1;p=0;r=f[H>>2]|0;do{if(!m){k=r+16|0;w=0;_=r;while(1){i=_+20|0;d=+o[i>>2];if(d!=0.0?(M=d-P,o[i>>2]=M,M<30.0):0)o[i>>2]=30.0;l=_+24|0;i=f[_+8>>2]|0;b=i+-1|0;d=+o[l>>2];a=d!=0.0;if(b>>>0>1){u=k+(i<<2)|0;s=1;i=l;do{if(a?(M=d-P,o[i>>2]=M,B=+o[i+-4>>2],M<B+10.0):0)o[i>>2]=B+20.0;i=i+4|0;s=s+1|0;d=+o[i>>2];a=d!=0.0}while((s|0)!=(b|0));if(a){O=d;D=u;N=29}}else if(a){O=d;D=l;N=29}if((N|0)==29?(N=0,M=O-v,o[D>>2]=M,I=+o[D+-4>>2],M<I+10.0):0)o[D>>2]=I+20.0;w=w+1|0;if(w>>>0>=h>>>0)break;else{k=k+5640|0;_=_+5640|0}}r=r+(g*5640|0)|0}p=p+1|0}while(p>>>0<c>>>0)}}else{h=i;c=0}a=f[F>>2]|0;if(!a)p=0;else{s=(f[e+100>>2]|0)+-1|0;l=(f[e+104>>2]|0)+-1|0;u=0;i=f[U>>2]|0;r=0;while(1){Y=f[i>>2]|0;z=f[i+4>>2]|0;Y=ie(((l+z|0)>>>0)/(z>>>0)|0,((s+Y|0)>>>0)/(Y>>>0)|0)|0;r=(ie(Y,f[i+24>>2]|0)|0)+r|0;u=u+1|0;if(u>>>0>=a>>>0)break;else i=i+52|0}p=~~(+(r>>>0)*.1625)>>>0}b=f[(f[j>>2]|0)+16>>2]|0;w=b+-1|0;m=ie(c,h)|0;k=(m|0)==0;if(k)s=0;else{i=0;r=0;a=f[H>>2]|0;while(1){Y=f[a+5588>>2]|0;r=r>>>0>Y>>>0?r:Y;i=i+1|0;if((i|0)==(m|0))break;else a=a+5640|0}s=r*12|0}_=e+88|0;if(((n[_>>1]|0)+-3&65535)>=4){if(k){i=0;r=0}else{h=(b|0)==0;u=0;r=0;do{if(!h){a=f[(f[H>>2]|0)+(u*5640|0)+5584>>2]|0;l=0;do{if(!(f[a+(l*1080|0)>>2]&1))i=5;else i=(f[a+(l*1080|0)+4>>2]|0)+5|0;r=r>>>0>i>>>0?r:i;l=l+1|0}while((l|0)!=(b|0))}u=u+1|0}while((u|0)!=(m|0));c=0;i=0;do{if(!h){l=f[(f[H>>2]|0)+(c*5640|0)+5584>>2]|0;u=0;do{if(!(f[l+(u*1080|0)>>2]&1))a=5;else a=(f[l+(u*1080|0)+4>>2]|0)+5|0;i=i>>>0>a>>>0?i:a;u=u+1|0}while((u|0)!=(b|0))}c=c+1|0}while((c|0)!=(m|0))}s=(ie(r+12+i|0,w)|0)+s|0}if(k)r=13;else{a=0;r=0;i=f[H>>2]|0;while(1){Y=f[i+420>>2]|0;r=r>>>0>Y>>>0?r:Y;a=a+1|0;if((a|0)==(m|0))break;else i=i+5640|0}r=(r*9|0)+13|0}Y=s+p+r|0;f[e+40>>2]=Y;Y=Nn(Y)|0;f[e+36>>2]=Y;if(!Y){Y=0;return Y|0}if(((n[_>>1]|0)+-3&65535)>=4){Y=1;return Y|0}r=Nn((f[e+32>>2]|0)*5|0)|0;f[e+24>>2]=r;if(!r){Y=0;return Y|0}f[e+28>>2]=r;Y=1;return Y|0}function Gf(e){e=e|0;return 0.0}function Kf(e){e=e|0;return+ +((((f[e+5588>>2]|0)*14|0)+-14|0)>>>0)}function Wf(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0;a=f[i+(r*5640|0)+5584>>2]|0;w=(f[i+(r*5640|0)+420>>2]|0)+1|0;o=e>>>0<257?1:2;k=ie(w,(o<<1)+5|0)|0;_=k+4|0;ut(t,65375,2);ut(t+2|0,k+2|0,2);if(!w){f[n>>2]=_;return}u=o+1|0;c=o+3|0;h=o|4;d=h+o|0;b=d+1|0;k=i+(r*5640|0)+8|0;s=a+4|0;l=0;t=t+4|0;a=i+(r*5640|0)+424|0;while(1){ut(t,f[a>>2]|0,1);ut(t+1|0,f[a+4>>2]|0,o);v=a+8|0;ut(t+u|0,f[v>>2]|0,2);i=a+12|0;ut(t+c|0,f[i>>2]|0,1);r=a+16|0;ut(t+h|0,f[r>>2]|0,o);ut(t+d|0,f[a+36>>2]|0,1);p=f[v>>2]|0;m=f[k>>2]|0;f[v>>2]=(p|0)<(m|0)?p:m;v=f[i>>2]|0;m=f[s>>2]|0;f[i>>2]=(v|0)<(m|0)?v:m;i=f[r>>2]|0;f[r>>2]=(i|0)<(e|0)?i:e;l=l+1|0;if((l|0)==(w|0))break;else{t=t+b|0;a=a+148|0}}f[n>>2]=_;return}function Zf(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+16|0;o=d+8|0;l=d;u=f[e+(i*5640|0)+5584>>2]|0;i=f[u+(r*1080|0)+24>>2]|0;do{if((i|0)!=1){e=(f[u+(r*1080|0)+4>>2]|0)*3|0;s=e+-2|0;if(!i){e=e+-1|0;if((f[n>>2]|0)>>>0<e>>>0){Ht(a,1,11515,l)|0;n=0;c=d;return n|0}else{ut(t,f[u+(r*1080|0)+804>>2]<<5,1);if(!s)break;else i=0;do{t=t+1|0;ut(t,f[u+(r*1080|0)+28+(i<<3)>>2]<<3,1);i=i+1|0}while((i|0)!=(s|0))}}else h=7}else{s=1;i=1;h=7}}while(0);if((h|0)==7){e=s<<1|1;if((f[n>>2]|0)>>>0<e>>>0){Ht(a,1,11515,o)|0;n=0;c=d;return n|0}ut(t,(f[u+(r*1080|0)+804>>2]<<5)+i|0,1);if(s){t=t+1|0;i=0;while(1){ut(t,(f[u+(r*1080|0)+28+(i<<3)>>2]<<11)+(f[u+(r*1080|0)+28+(i<<3)+4>>2]|0)|0,2);i=i+1|0;if((i|0)==(s|0))break;else t=t+2|0}}}f[n>>2]=(f[n>>2]|0)-e;n=1;c=d;return n|0}function Jf(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0;l=c;c=c+16|0;a=f[e+(i*5640|0)+5584>>2]|0;if((f[t>>2]|0)>>>0<5){Ht(n,1,11587,l)|0;t=0;c=l;return t|0}s=a+4|0;ut(r,(f[s>>2]|0)+-1|0,1);ut(r+1|0,(f[a+8>>2]|0)+-2|0,1);ut(r+2|0,(f[a+12>>2]|0)+-2|0,1);ut(r+3|0,f[a+16>>2]|0,1);ut(r+4|0,f[a+20>>2]|0,1);i=(f[t>>2]|0)+-5|0;f[t>>2]=i;if(!(f[a>>2]&1)){t=1;c=l;return t|0}e=f[s>>2]|0;if(i>>>0<e>>>0){Ht(n,1,11587,l+8|0)|0;t=0;c=l;return t|0}if(!e)e=0;else{i=r+5|0;r=0;while(1){ut(i,(f[a+944+(r<<2)>>2]<<4)+(f[a+812+(r<<2)>>2]|0)|0,1);r=r+1|0;e=f[s>>2]|0;if(r>>>0>=e>>>0)break;else i=i+1|0}i=f[t>>2]|0}f[t>>2]=i-e;t=1;c=l;return t|0}function Qf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0;l=f[e+76>>2]|0;n=f[l+(r*5640|0)+4>>2]|0;s=696;while(1){h=f[s>>2]|0;if((h|0)==-1|(h|0)==(n|0))break;else s=s+12|0}if(!(t[e+93>>0]&8)){e=1;return e|0}h=a[e+92>>0]|0;o=l+(r*5640|0)+424+(i*148|0)+92|0;u=l+(r*5640|0)+424+(i*148|0)+88|0;c=l+(r*5640|0)+424+(i*148|0)+96|0;i=l+(r*5640|0)+424+(i*148|0)+84|0;l=t[s+4>>0]|0;switch(l|0){case 67:{n=f[o>>2]|0;break}case 82:{n=f[u>>2]|0;break}case 80:{n=f[c>>2]|0;break}case 76:{n=f[i>>2]|0;break}default:n=1}if((h|0)!=(l|0)){l=t[s+5>>0]|0;switch(l|0){case 67:{n=ie(f[o>>2]|0,n)|0;break}case 82:{n=ie(f[u>>2]|0,n)|0;break}case 80:{n=ie(f[c>>2]|0,n)|0;break}case 76:{n=ie(f[i>>2]|0,n)|0;break}default:{}}if((h|0)!=(l|0)){l=t[s+6>>0]|0;switch(l|0){case 67:{n=ie(f[o>>2]|0,n)|0;break}case 82:{n=ie(f[u>>2]|0,n)|0;break}case 80:{n=ie(f[c>>2]|0,n)|0;break}case 76:{n=ie(f[i>>2]|0,n)|0;break}default:{}}if((h|0)!=(l|0)){s=t[s+7>>0]|0;switch(s|0){case 67:{n=ie(f[o>>2]|0,n)|0;break}case 82:{n=ie(f[u>>2]|0,n)|0;break}case 80:{n=ie(f[c>>2]|0,n)|0;break}case 76:{n=ie(f[i>>2]|0,n)|0;break}default:{}}if((h|0)==(s|0))s=3;else{e=n;return e|0}}else s=2}else s=1}else s=0;f[e+84>>2]=s;e=n;return e|0}function $f(e,i,r,l){e=e|0;i=i|0;r=r|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0;T=i+16|0;if(!(f[T>>2]|0)){T=1;return T|0}S=0;A=f[i+24>>2]|0;while(1){u=l+44|0;o=f[u>>2]|0;c=l+8|0;if(!o){i=l+12|0;o=Fn(ie(f[i>>2]|0,f[c>>2]|0)|0,4)|0;f[u>>2]=o;if(!o){r=0;l=61;break}}else i=l+12|0;w=A+36|0;f[l+36>>2]=f[w>>2];M=f[A+24>>2]|0;v=f[e+24>>2]|0;w=f[w>>2]|0;M=((M&7|0)!=0&1)+(M>>>3)|0;M=(M|0)==3?4:M;d=f[v+(w*136|0)+8>>2]|0;h=f[v+(w*136|0)>>2]|0;g=d-h|0;m=f[v+(w*136|0)+12>>2]|0;w=f[v+(w*136|0)+4>>2]|0;v=m-w|0;u=f[l+16>>2]|0;k=f[l+40>>2]|0;b=Bl(1,0,k|0)|0;y=x;u=Il(u|0,0,-1,-1)|0;u=Il(u|0,x|0,b|0,y|0)|0;u=Dl(u|0,x|0,k|0)|0;_=Il(f[l+20>>2]|0,0,-1,-1)|0;y=Il(_|0,x|0,b|0,y|0)|0;k=Dl(y|0,x|0,k|0)|0;y=f[c>>2]|0;c=u+y|0;b=f[i>>2]|0;_=k+b|0;do{if(u>>>0<h>>>0){i=h-u|0;if(d>>>0>c>>>0){E=c-h|0;p=0;h=g-E|0;d=i}else{p=0;h=0;d=i;E=g}}else{i=u-h|0;if(d>>>0>c>>>0){p=i;h=d-c|0;d=0;E=y;break}else{p=i;h=0;d=0;E=g-i|0;break}}}while(0);do{if(k>>>0<w>>>0){c=w-k|0;if(m>>>0>_>>>0){u=_-w|0;b=u;i=0;u=v-u|0}else{b=v;i=0;u=0}}else{i=k-w|0;if(m>>>0>_>>>0){u=m-_|0;c=0;break}else{b=v-i|0;u=0;c=0;break}}}while(0);if((p|h|E|u|i|b|0)<0){r=0;l=61;break}i=(ie(i,g)|0)+p|0;w=p+h|0;_=(ie(u,g)|0)-p|0;k=y-E|0;o=o+((ie(y,c)|0)+d<<2)|0;switch(M|0){case 1:{r=r+i|0;i=(b|0)==0;if(!(f[A+32>>2]|0)){if(!i){h=(E|0)==0;d=0;i=o;while(1){if(!h){c=i+(E<<2)|0;u=0;o=r;while(1){f[i>>2]=a[o>>0];u=u+1|0;if((u|0)==(E|0))break;else{i=i+4|0;o=o+1|0}}i=c;r=r+E|0}r=r+w|0;d=d+1|0;if((d|0)==(b|0))break;else i=i+(k<<2)|0}}}else if(!i){h=(E|0)==0;d=0;i=o;while(1){if(!h){c=i+(E<<2)|0;u=0;o=r;while(1){f[i>>2]=t[o>>0];u=u+1|0;if((u|0)==(E|0))break;else{i=i+4|0;o=o+1|0}}i=c;r=r+E|0}r=r+w|0;d=d+1|0;if((d|0)==(b|0))break;else i=i+(k<<2)|0}}r=r+_|0;break}case 2:{r=r+(i<<1)|0;i=(b|0)==0;if(!(f[A+32>>2]|0)){if(!i){h=(E|0)==0;d=0;i=o;while(1){if(!h){c=i+(E<<2)|0;u=0;o=r;while(1){f[i>>2]=s[o>>1];u=u+1|0;if((u|0)==(E|0))break;else{i=i+4|0;o=o+2|0}}i=c;r=r+(E<<1)|0}r=r+(w<<1)|0;d=d+1|0;if((d|0)==(b|0))break;else i=i+(k<<2)|0}}}else if(!i){h=(E|0)==0;d=0;i=o;while(1){if(!h){c=i+(E<<2)|0;u=0;o=r;while(1){f[i>>2]=n[o>>1];u=u+1|0;if((u|0)==(E|0))break;else{i=i+4|0;o=o+2|0}}i=c;r=r+(E<<1)|0}r=r+(w<<1)|0;d=d+1|0;if((d|0)==(b|0))break;else i=i+(k<<2)|0}}r=r+(_<<1)|0;break}case 4:{r=r+(i<<2)|0;if(b){h=(E|0)==0;d=0;i=o;while(1){if(!h){c=i+(E<<2)|0;u=0;o=r;while(1){f[i>>2]=f[o>>2];u=u+1|0;if((u|0)==(E|0))break;else{i=i+4|0;o=o+4|0}}i=c;r=r+(E<<2)|0}r=r+(w<<2)|0;d=d+1|0;if((d|0)==(b|0))break;else i=i+(k<<2)|0}}r=r+(_<<2)|0;break}default:{}}S=S+1|0;if(S>>>0>=(f[T>>2]|0)>>>0){r=1;l=61;break}else{l=l+52|0;A=A+52|0;e=e+52|0}}if((l|0)==61)return r|0;return 0}function ea(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;A=c;c=c+112|0;M=A+88|0;p=A+80|0;g=A+72|0;v=A+64|0;w=A+56|0;k=A+48|0;h=A+40|0;o=A+32|0;l=A+24|0;s=A+16|0;_=A+100|0;m=A+96|0;y=A+92|0;f[m>>2]=0;E=e+200|0;if((r|0)!=8){Ht(n,1,8662,A)|0;Ht(n,1,8662,A+8|0)|0;n=0;c=A;return n|0}ct(i,E,2);ct(i+2|0,_,4);ct(i+6|0,y,1);ct(i+7|0,m,1);u=f[E>>2]|0;i=f[e+112>>2]|0;if(u>>>0>=(ie(f[e+116>>2]|0,i)|0)>>>0){f[s>>2]=u;Ht(n,1,15258,s)|0;n=0;c=A;return n|0}r=f[e+164>>2]|0;b=(u>>>0)%(i>>>0)|0;d=(u>>>0)/(i>>>0)|0;i=f[_>>2]|0;do{if((i+-1|0)>>>0<13){if((i|0)==12){f[l>>2]=12;Ht(n,2,15282,l)|0;i=f[_>>2]|0;break}f[o>>2]=i;Ht(n,1,15319,o)|0;n=0;c=A;return n|0}}while(0);if(!i){Ht(n,4,15380,h)|0;f[e+72>>2]=1}i=f[m>>2]|0;do{if(!i)i=f[r+(u*5640|0)+5588>>2]|0;else{i=((a[e+76>>0]|0)>>>4&1)+i|0;f[m>>2]=i;s=r+(u*5640|0)+5588|0;l=f[s>>2]|0;r=f[y>>2]|0;if((l+-1|0)>>>0<r>>>0){f[k>>2]=r;f[k+4>>2]=l;Ht(n,1,15491,k)|0;f[e+72>>2]=1;n=0;c=A;return n|0}if(r>>>0<i>>>0){f[s>>2]=i;break}f[w>>2]=r;f[w+4>>2]=i;Ht(n,1,15590,w)|0;f[e+72>>2]=1;n=0;c=A;return n|0}}while(0);if((i|0)!=0?(i|0)==((f[y>>2]|0)+1|0):0){w=e+76|0;t[w>>0]=t[w>>0]|1}f[e+24>>2]=(f[e+72>>2]|0)==0?(f[_>>2]|0)+-12|0:0;f[e+8>>2]=16;i=f[e+60>>2]|0;if((i|0)==-1){if((b>>>0>=(f[e+28>>2]|0)>>>0?b>>>0<(f[e+36>>2]|0)>>>0:0)?d>>>0>=(f[e+32>>2]|0)>>>0:0)i=(d>>>0>=(f[e+40>>2]|0)>>>0&1)<<2&255;else i=4;_=e+76|0;t[_>>0]=t[_>>0]&-5|i}else{_=e+76|0;t[_>>0]=((f[E>>2]|0)!=(i|0)&1)<<2&255|t[_>>0]&-5}o=e+196|0;i=f[o>>2]|0;if(!i){n=1;c=A;return n|0}l=f[E>>2]|0;i=f[i+40>>2]|0;f[i+(l*40|0)>>2]=l;f[i+(l*40|0)+12>>2]=f[y>>2];r=f[m>>2]|0;if(r){f[i+(l*40|0)+4>>2]=r;f[i+(l*40|0)+8>>2]=f[m>>2];i=f[i+(l*40|0)+16>>2]|0;if(!i){M=Fn(f[m>>2]|0,24)|0;f[(f[(f[o>>2]|0)+40>>2]|0)+((f[E>>2]|0)*40|0)+16>>2]=M;if(M){n=1;c=A;return n|0}Ht(n,1,15698,v)|0;n=0;c=A;return n|0}i=Hn(i,(f[m>>2]|0)*24|0)|0;r=(f[(f[o>>2]|0)+40>>2]|0)+((f[E>>2]|0)*40|0)+16|0;if(!i){zn(f[r>>2]|0);f[(f[(f[o>>2]|0)+40>>2]|0)+((f[E>>2]|0)*40|0)+16>>2]=0;Ht(n,1,15698,g)|0;n=0;c=A;return n|0}else{f[r>>2]=i;n=1;c=A;return n|0}}if(!(f[i+(l*40|0)+16>>2]|0)){f[i+(l*40|0)+8>>2]=10;g=Fn(10,24)|0;r=f[E>>2]|0;i=f[(f[o>>2]|0)+40>>2]|0;f[i+(r*40|0)+16>>2]=g;if(!g){f[i+(r*40|0)+8>>2]=0;Ht(n,1,15698,p)|0;n=0;c=A;return n|0}else l=r}r=f[y>>2]|0;s=i+(l*40|0)+8|0;if(r>>>0<(f[s>>2]|0)>>>0){n=1;c=A;return n|0}r=r+1|0;f[s>>2]=r;i=Hn(f[i+(l*40|0)+16>>2]|0,r*24|0)|0;r=(f[(f[o>>2]|0)+40>>2]|0)+((f[E>>2]|0)*40|0)+16|0;if(!i){zn(f[r>>2]|0);E=f[E>>2]|0;y=f[(f[o>>2]|0)+40>>2]|0;f[y+(E*40|0)+16>>2]=0;f[y+(E*40|0)+8>>2]=0;Ht(n,1,15698,M)|0;n=0;c=A;return n|0}else{f[r>>2]=i;n=1;c=A;return n|0}return 0}function ia(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;m=c;c=c+64|0;k=m+48|0;w=m+40|0;o=m+32|0;d=m+56|0;l=m+52|0;f[d>>2]=r;_=e+80|0;u=f[_>>2]|0;b=e+8|0;if((f[b>>2]|0)==16)h=(f[e+164>>2]|0)+((f[e+200>>2]|0)*5640|0)|0;else h=f[e+12>>2]|0;a=h+5636|0;s=t[a>>0]|0;if(s&1){Ht(n,1,15025,m)|0;_=0;c=m;return _|0}t[a>>0]=s|1;if(r>>>0<5){Ht(n,1,15089,m+8|0)|0;_=0;c=m;return _|0}ct(i,h,1);if((f[h>>2]|0)>>>0>7){Ht(n,1,15115,m+16|0)|0;_=0;c=m;return _|0}ct(i+1|0,l,1);l=f[l>>2]|0;a=h+4|0;f[a>>2]=l;if((l|0)>4){Ht(n,1,15149,m+24|0)|0;f[a>>2]=-1}a=h+8|0;ct(i+2|0,a,2);a=f[a>>2]|0;if((a+-1|0)>>>0>65534){f[o>>2]=a;Ht(n,1,15190,o)|0;_=0;c=m;return _|0}o=f[e+172>>2]|0;f[h+12>>2]=(o|0)==0?a:o;ct(i+4|0,h+16|0,1);o=i+5|0;f[d>>2]=r+-5;l=f[u+16>>2]|0;if(l){i=f[h>>2]&1;a=f[h+5584>>2]|0;s=0;do{f[a+(s*1080|0)>>2]=i;s=s+1|0}while(s>>>0<l>>>0)}if(!(_i(e,0,o,d,n)|0)){Ht(n,1,15089,w)|0;_=0;c=m;return _|0}if(f[d>>2]|0){Ht(n,1,15089,k)|0;_=0;c=m;return _|0}if((f[b>>2]|0)==16)a=(f[e+164>>2]|0)+((f[e+200>>2]|0)*5640|0)|0;else a=f[e+12>>2]|0;a=f[a+5584>>2]|0;r=a+4|0;s=f[r>>2]|0;h=s<<2;if((f[(f[_>>2]|0)+16>>2]|0)>>>0<=1){_=1;c=m;return _|0}d=a+8|0;b=a+12|0;e=a+16|0;n=a+20|0;k=a+812|0;w=a+944|0;f[a+1084>>2]=s;l=f[d>>2]|0;f[a+1088>>2]=l;i=f[b>>2]|0;f[a+1092>>2]=i;o=f[e>>2]|0;f[a+1096>>2]=o;u=f[n>>2]|0;f[a+1100>>2]=u;Nl(a+1892|0,k|0,h|0)|0;Nl(a+2024|0,w|0,h|0)|0;if((f[(f[_>>2]|0)+16>>2]|0)>>>0<=2){_=1;c=m;return _|0}f[a+2164>>2]=s;f[a+2168>>2]=l;f[a+2172>>2]=i;f[a+2176>>2]=o;f[a+2180>>2]=u;Nl(a+2972|0,k|0,h|0)|0;Nl(a+3104|0,w|0,h|0)|0;if((f[(f[_>>2]|0)+16>>2]|0)>>>0>3)s=3;else{_=1;c=m;return _|0}while(1){l=f[d>>2]|0;i=f[b>>2]|0;o=f[e>>2]|0;u=f[n>>2]|0;f[a+3244>>2]=f[r>>2];f[a+3248>>2]=l;f[a+3252>>2]=i;f[a+3256>>2]=o;f[a+3260>>2]=u;Nl(a+4052|0,k|0,h|0)|0;Nl(a+4184|0,w|0,h|0)|0;s=s+1|0;if(s>>>0>=(f[(f[_>>2]|0)+16>>2]|0)>>>0){a=1;break}else a=a+1080|0}c=m;return a|0}function ra(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0;p=c;c=c+272|0;d=p;m=p+136|0;v=p+8|0;if(!e){v=0;c=p;return v|0}h=e+4|0;if((f[e>>2]|0)==(i|0)?(f[h>>2]|0)==(r|0):0)n=e+8|0;else{f[e>>2]=i;f[h>>2]=r;f[m>>2]=i;f[v>>2]=r;n=e+8|0;f[n>>2]=0;a=0;l=r;o=i;u=0;while(1){_=ie(l,o)|0;o=(o+1|0)/2|0;s=u+1|0;f[m+(s<<2)>>2]=o;l=(l+1|0)/2|0;f[v+(s<<2)>>2]=l;a=a+_|0;if(_>>>0<=1)break;else u=s}f[n>>2]=a;if(!a){n=e+12|0;a=f[n>>2]|0;if(a){zn(a);f[n>>2]=0}zn(e);v=0;c=p;return v|0}s=a<<4;l=e+16|0;o=e+12|0;do{if(s>>>0>(f[l>>2]|0)>>>0){a=Hn(f[o>>2]|0,s)|0;if(a){f[o>>2]=a;r=f[l>>2]|0;Ol(a+r|0,0,s-r|0)|0;f[l>>2]=s;r=f[h>>2]|0;i=f[e>>2]|0;break}Ht(t,1,20166,d)|0;n=f[o>>2]|0;if(n){zn(n);f[o>>2]=0}zn(e);v=0;c=p;return v|0}}while(0);a=f[o>>2]|0;i=a+((ie(r,i)|0)<<4)|0;if(u){_=0;r=i;do{k=f[v+(_<<2)>>2]|0;e:do{if((k|0)>0){w=f[m+(_<<2)>>2]|0;if((w|0)<=0){s=k+-1|0;l=0;while(1){b=(l&1|0)!=0|(l|0)==(s|0);o=b?r:i+(w<<4)|0;r=b?r:i;l=l+1|0;if((l|0)>=(k|0)){i=o;break e}else i=o}}b=((w+2+((w|0)<2?~w:-3)|0)>>>1)+1|0;t=k+-1|0;d=0;while(1){h=w;o=r;while(1){f[a>>2]=o;s=a+16|0;l=h;h=h+-2|0;if((h|0)>-1){f[s>>2]=o;a=a+32|0}else a=s;if((l|0)<=2)break;else o=o+16|0}r=r+(b<<4)|0;h=(d&1|0)!=0|(d|0)==(t|0);s=h?r:i+(w<<4)|0;r=h?r:i;d=d+1|0;if((d|0)>=(k|0)){i=s;break}else i=s}}}while(0);_=_+1|0}while((_|0)!=(u|0))}f[a>>2]=0}n=f[n>>2]|0;if(!n){v=e;c=p;return v|0}a=0;i=f[e+12>>2]|0;while(1){f[i+4>>2]=999;f[i+8>>2]=0;f[i+12>>2]=0;a=a+1|0;if((a|0)==(n|0))break;else i=i+16|0}c=p;return e|0}function ta(e){e=e|0;var i=0,r=0;if(!e)return;i=e+12|0;r=f[i>>2]|0;if(r){zn(r);f[i>>2]=0}zn(e);return}function na(e,i,r){e=e|0;i=i|0;r=r|0;i=(f[e+12>>2]|0)+(i<<4)|0;if(!i)return;while(1){e=i+4|0;if((f[e>>2]|0)<=(r|0)){i=4;break}f[e>>2]=r;i=f[i>>2]|0;if(!i){i=4;break}}if((i|0)==4)return}function fa(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0;o=c;c=c+128|0;l=o;r=(f[i+12>>2]|0)+(r<<4)|0;if(!(f[r>>2]|0)){n=0;a=l}else{n=r;i=l;while(1){a=i+4|0;f[i>>2]=r;r=f[n>>2]|0;if(!(f[r>>2]|0)){n=0;break}else{n=r;i=a}}}while(1){s=r+8|0;i=f[s>>2]|0;if((n|0)>(i|0)){f[s>>2]=n;i=n}e:do{if((i|0)<(t|0)){n=r+4|0;while(1){if((i|0)>=(f[n>>2]|0))break;ma(e,0,1);i=i+1|0;if((i|0)>=(t|0)){r=i;break e}}r=r+12|0;if(!(f[r>>2]|0)){ma(e,1,1);f[r>>2]=1;r=i}else r=i}else r=i}while(0);f[s>>2]=r;if((a|0)==(l|0))break;s=a+-4|0;n=r;r=f[s>>2]|0;a=s}c=o;return}function aa(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0;o=c;c=c+128|0;l=o;r=(f[i+12>>2]|0)+(r<<4)|0;if(!(f[r>>2]|0)){i=0;a=l}else{n=r;i=l;while(1){a=i+4|0;f[i>>2]=r;r=f[n>>2]|0;if(!(f[r>>2]|0)){i=0;break}else{n=r;i=a}}}while(1){s=r+8|0;n=f[s>>2]|0;if((i|0)>(n|0))f[s>>2]=i;else i=n;r=r+4|0;e:do{if((i|0)<(t|0)){while(1){if((i|0)>=(f[r>>2]|0))break e;if(va(e,1)|0)break;i=i+1|0;if((i|0)>=(t|0))break e}f[r>>2]=i}}while(0);f[s>>2]=i;if((a|0)==(l|0))break;s=a+-4|0;r=f[s>>2]|0;a=s}c=o;return(f[r>>2]|0)<(t|0)|0}function sa(){var e=0,i=0;e=Fn(1,12)|0;if(!e){e=0;return e|0}f[e+4>>2]=10;i=Fn(10,4)|0;f[e+8>>2]=i;if(i){i=e;return i|0}zn(e);i=0;return i|0}function la(e){e=e|0;var i=0;if(!e)return;i=f[e+8>>2]|0;if(i)zn(i);zn(e);return}function oa(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0;l=c;c=c+16|0;s=l;a=e+4|0;n=f[a>>2]|0;t=f[e>>2]|0;do{if((n|0)==(t|0)){n=n+10|0;f[a>>2]=n;t=e+8|0;n=Hn(f[t>>2]|0,n<<2)|0;if(n){f[t>>2]=n;t=f[e>>2]|0;break}zn(f[t>>2]|0);f[a>>2]=0;f[e>>2]=0;Ht(r,1,20214,s)|0;e=0;c=l;return e|0}else n=f[e+8>>2]|0}while(0);f[n+(t<<2)>>2]=i;f[e>>2]=t+1;e=1;c=l;return e|0}function ua(e){e=e|0;return f[e>>2]|0}function ca(e){e=e|0;return f[e+8>>2]|0}function ha(e){e=e|0;f[e>>2]=0;return}function da(){return Nn(20)|0}function ba(e){e=e|0;if(!e)return;zn(e);return}function ka(e){e=e|0;return(f[e+8>>2]|0)-(f[e>>2]|0)|0}function wa(e,i,r){e=e|0;i=i|0;r=r|0;f[e>>2]=i;f[e+4>>2]=i+r;f[e+8>>2]=i;f[e+12>>2]=0;f[e+16>>2]=8;return}function _a(e,i,r){e=e|0;i=i|0;r=r|0;f[e>>2]=i;f[e+4>>2]=i+r;f[e+8>>2]=i;f[e+12>>2]=0;f[e+16>>2]=0;return}function ma(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0;if(!r)return;u=e+16|0;c=e+12|0;h=e+8|0;s=e+4|0;e=f[u>>2]|0;o=r+-1|0;do{l=i>>>o&1;if(!e){a=f[c>>2]|0;e=a<<8&65280;f[c>>2]=e;e=(e|0)==65280?7:8;f[u>>2]=e;n=f[h>>2]|0;if(n>>>0<(f[s>>2]|0)>>>0){f[h>>2]=n+1;t[n>>0]=a;e=f[u>>2]|0}}e=e+-1|0;f[u>>2]=e;f[c>>2]=l<<e|f[c>>2];o=o+-1|0}while(o>>>0<r>>>0);return}function va(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,s=0,l=0,o=0,u=0,c=0;if(!i){i=0;return i|0}o=e+16|0;u=e+12|0;c=e+8|0;s=e+4|0;r=f[o>>2]|0;t=f[u>>2]|0;l=i+-1|0;e=0;do{if(!r){n=t<<8&65280;f[u>>2]=n;r=(n|0)==65280?7:8;f[o>>2]=r;t=f[c>>2]|0;if(t>>>0<(f[s>>2]|0)>>>0){f[c>>2]=t+1;t=a[t>>0]|0|n;f[u>>2]=t}else t=n}r=r+-1|0;f[o>>2]=r;e=((t>>>r&1)<<l)+e|0;l=l+-1|0}while(l>>>0<i>>>0);return e|0}function pa(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0;n=e+12|0;i=f[n>>2]|0;l=i<<8&65280;f[n>>2]=l;a=e+16|0;f[a>>2]=(l|0)==65280?7:8;l=e+8|0;r=f[l>>2]|0;s=e+4|0;if(r>>>0>=(f[s>>2]|0)>>>0){l=0;return l|0}f[l>>2]=r+1;t[r>>0]=i;if((f[a>>2]|0)!=7){l=1;return l|0}i=f[n>>2]|0;e=i<<8&65280;f[n>>2]=e;f[a>>2]=(e|0)==65280?7:8;e=f[l>>2]|0;if(e>>>0>=(f[s>>2]|0)>>>0){l=0;return l|0}f[l>>2]=e+1;t[e>>0]=i;l=1;return l|0}function ga(e){e=e|0;var i=0,r=0,t=0,n=0,s=0;s=e+12|0;i=f[s>>2]|0;do{if((i&255|0)==255){t=i<<8&65280;f[s>>2]=t;i=e+16|0;f[i>>2]=(t|0)==65280?7:8;n=e+8|0;r=f[n>>2]|0;if(r>>>0<(f[e+4>>2]|0)>>>0){f[n>>2]=r+1;f[s>>2]=a[r>>0]|0|t;break}else{e=0;return e|0}}else i=e+16|0}while(0);f[i>>2]=0;e=1;return e|0}function ya(e){e=e|0;return Pa(e,1)|0}function Ma(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;R=c;c=c+32|0;T=R+16|0;C=R;o=f[e+24>>2]|0;l=(f[o+8>>2]|0)-(f[o>>2]|0)|0;s=(f[o+12>>2]|0)-(f[o+4>>2]|0)|0;S=(f[e+8>>2]|0)-(f[e>>2]|0)|0;if((i|0)==1){C=1;c=R;return C|0}a=i+-1|0;n=(a|0)==0;if(n)i=0;else{r=o;t=a;i=0;do{A=r;r=r+136|0;E=(f[A+144>>2]|0)-(f[r>>2]|0)|0;i=i>>>0<E>>>0?E:i;A=(f[A+148>>2]|0)-(f[A+140>>2]|0)|0;i=i>>>0<A>>>0?A:i;t=t+-1|0}while((t|0)!=0);i=i<<2}A=Un(i)|0;f[T>>2]=A;if(!A){C=0;c=R;return C|0}f[C>>2]=A;if(!n){m=e+32|0;v=T+8|0;p=C+8|0;g=T+4|0;y=T+12|0;M=C+4|0;E=C+12|0;do{w=f[m>>2]|0;d=o;o=o+136|0;f[v>>2]=l;f[p>>2]=s;b=f[d+144>>2]|0;k=f[o>>2]|0;t=l;l=b-k|0;i=f[d+148>>2]|0;d=d+140|0;_=f[d>>2]|0;r=s;s=i-_|0;f[g>>2]=l-t;f[y>>2]=(k|0)%2|0;_=(i|0)==(_|0);if(!_){h=l<<2;i=0;while(1){e=ie(i,S)|0;u=w+(e<<2)|0;if(t){r=u;n=A+(f[y>>2]<<2)|0;while(1){t=t+-1|0;f[n>>2]=f[r>>2];if(!t)break;else{r=r+4|0;n=n+8|0}}}r=f[g>>2]|0;if(r){t=w+((f[v>>2]|0)+e<<2)|0;n=A+(1-(f[y>>2]|0)<<2)|0;while(1){r=r+-1|0;f[n>>2]=f[t>>2];if(!r)break;else{t=t+4|0;n=n+8|0}}}Oa(T);Nl(u|0,A|0,h|0)|0;i=i+1|0;if((i|0)==(s|0))break;t=f[v>>2]|0}r=f[p>>2]|0;i=f[d>>2]|0}f[M>>2]=s-r;f[E>>2]=(i|0)%2|0;e:do{if((b|0)!=(k|0)){i=0;while(1){if(r){t=w+(i<<2)|0;n=A+(f[E>>2]<<2)|0;while(1){r=r+-1|0;f[n>>2]=f[t>>2];if(!r)break;else{t=t+(S<<2)|0;n=n+8|0}}}r=f[M>>2]|0;if(r){t=w+((ie(f[p>>2]|0,S)|0)+i<<2)|0;n=A+(1-(f[E>>2]|0)<<2)|0;while(1){r=r+-1|0;f[n>>2]=f[t>>2];if(!r)break;else{t=t+(S<<2)|0;n=n+8|0}}}Oa(C);if(!_){r=0;do{f[w+((ie(r,S)|0)+i<<2)>>2]=f[A+(r<<2)>>2];r=r+1|0}while((r|0)!=(s|0))}i=i+1|0;if((i|0)==(l|0))break e;r=f[p>>2]|0}}}while(0);a=a+-1|0}while((a|0)!=0)}jn(A);C=1;c=R;return C|0}function Ea(e){e=e|0;if(!e){e=0;return e|0}e=(e+-1|0)>>>0<2?1:2;return e|0}function Aa(e,i){e=e|0;i=i|0;return+ +u[56+(i*80|0)+(e<<3)>>3]}function Sa(e){e=e|0;return Pa(e,2)|0}function Ta(e){e=e|0;return 0}function Ca(e,i){e=e|0;i=i|0;return+ +u[376+(i*80|0)+(e<<3)>>3]}function Ra(e,i){e=e|0;i=i|0;var r=0.0,t=0,n=0,a=0,s=0,l=0,o=0,c=0,h=0,d=0,b=0;o=e+4|0;c=((f[o>>2]|0)*3|0)+-2|0;if(!c)return;h=e+20|0;d=e+24|0;b=0;do{if(!b){t=0;n=0}else{n=b+-1|0;t=((n>>>0)/3|0)+1|0;n=((n>>>0)%3|0)+1|0}if((n|0)==0|(f[h>>2]|0)==0)a=0;else a=(n+-1|0)>>>0<2?1:2;if(!(f[d>>2]|0))r=1.0;else r=+(1<<a|0)/+u[376+(n*80|0)+((f[o>>2]|0)+~t<<3)>>3];l=~~+H(+(r*8192.0));s=a+i|0;if((l|0)>1){t=l;n=0;while(1){t=t>>1;if((t|0)<=1)break;else n=n+1|0}a=l;t=0;do{a=a>>1;t=t+1|0}while((a|0)>1);n=n+-12|0}else{n=-13;t=0}a=11-t|0;f[e+28+(b<<3)+4>>2]=((a|0)<0?l>>0-a:l<<a)&2047;f[e+28+(b<<3)>>2]=s-n;b=b+1|0}while((b|0)!=(c|0));return}function La(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0;X=c;c=c+32|0;z=X+16|0;Y=X;h=f[e+24>>2]|0;d=f[h+8>>2]|0;b=f[h>>2]|0;o=f[h+12>>2]|0;u=f[h+4>>2]|0;H=e+8|0;s=f[H>>2]|0;l=f[e>>2]|0;j=s-l|0;a=i+-1|0;n=(a|0)==0;if(n)i=80;else{r=h;t=a;i=0;do{U=r;r=r+136|0;F=(f[U+144>>2]|0)-(f[r>>2]|0)|0;i=i>>>0<F>>>0?F:i;U=(f[U+148>>2]|0)-(f[U+140>>2]|0)|0;i=i>>>0<U>>>0?U:i;t=t+-1|0}while((t|0)!=0);i=(i<<4)+80|0}U=Un(i)|0;f[z>>2]=U;if(!U){q=0;c=X;return q|0}f[Y>>2]=U;e:do{if(!n){E=e+32|0;A=e+12|0;S=e+4|0;T=z+8|0;C=Y+8|0;R=z+4|0;L=z+12|0;x=Y+4|0;P=Y+12|0;O=j<<1;B=j<<2;I=j*3|0;N=l<<2;F=s<<2;D=N-F|0;N=F-N|0;F=s-l<<2;i=a;r=U;a=s;t=l;_=o-u|0;n=h;s=d-b|0;while(1){m=f[E>>2]|0;t=ie((f[A>>2]|0)-(f[S>>2]|0)|0,a-t|0)|0;f[T>>2]=s;f[C>>2]=_;y=n+136|0;k=f[n+144>>2]|0;w=f[y>>2]|0;M=k-w|0;p=f[n+148>>2]|0;d=n+140|0;v=f[d>>2]|0;g=p-v|0;f[R>>2]=M-s;f[L>>2]=(w|0)%2|0;if((g|0)>3){a=(M|0)>0;s=(p+-4-v|0)>>>2;h=ie(D,s)|0;s=m+(N+(ie(F,s)|0)<<2)|0;l=m;o=t;u=g;while(1){Ia(z,l,j,o);Da(z);if(a){n=M;do{b=n;n=n+-1|0;f[l+(n<<2)>>2]=f[U+(n<<4)>>2];f[l+(n+j<<2)>>2]=f[U+(n<<4)+4>>2];f[l+(n+O<<2)>>2]=f[U+(n<<4)+8>>2];f[l+(n+I<<2)>>2]=f[U+(n<<4)+12>>2]}while((b|0)>1)}u=u+-4|0;if((u|0)<=3)break;else{l=l+(B<<2)|0;o=o-B|0}}t=D+t+h|0}else s=m;a=g&3;i:do{if(!a)q=21;else{Ia(z,s,j,t);Da(z);if((M|0)>0)t=M;else{o=g-_|0;f[x>>2]=o;a=(f[d>>2]|0)%2|0;f[P>>2]=a;u=_;l=m;break}while(1){n=t;t=t+-1|0;switch(a|0){case 3:{f[s+(t+O<<2)>>2]=f[U+(t<<4)+8>>2];q=18;break}case 2:{q=18;break}case 1:{q=19;break}default:{}}if((q|0)==18){f[s+(t+j<<2)>>2]=f[U+(t<<4)+4>>2];q=19}if((q|0)==19){q=0;f[s+(t<<2)>>2]=f[U+(t<<4)>>2]}if((n|0)<=1){q=21;break i}}}}while(0);if((q|0)==21){q=0;o=g-_|0;f[x>>2]=o;a=(f[d>>2]|0)%2|0;f[P>>2]=a;if((M|0)>3){b=(p|0)==(v|0);k=k+-4-w|0;d=f[C>>2]|0;u=(d|0)>0;l=1-a|0;h=(o|0)>0;n=m;s=M;while(1){if(u){t=0;do{_=r+((t<<1)+a<<4)|0;w=n+((ie(t,j)|0)<<2)|0;f[_>>2]=f[w>>2];f[_+4>>2]=f[w+4>>2];f[_+8>>2]=f[w+8>>2];f[_+12>>2]=f[w+12>>2];t=t+1|0}while((t|0)!=(d|0))}if(h){t=0;do{_=r+(l+(t<<1)<<4)|0;w=n+((ie(t+d|0,j)|0)<<2)|0;f[_>>2]=f[w>>2];f[_+4>>2]=f[w+4>>2];f[_+8>>2]=f[w+8>>2];f[_+12>>2]=f[w+12>>2];t=t+1|0}while((t|0)!=(o|0))}Da(Y);if(!b){r=f[Y>>2]|0;t=0;do{_=n+((ie(t,j)|0)<<2)|0;w=r+(t<<4)|0;f[_>>2]=f[w>>2];f[_+4>>2]=f[w+4>>2];f[_+8>>2]=f[w+8>>2];f[_+12>>2]=f[w+12>>2];t=t+1|0}while((t|0)!=(g|0))}s=s+-4|0;if((s|0)<=3)break;else n=n+16|0}u=d;l=m+((k+4&-4)<<2)|0}else{u=_;l=m}}s=M&3;if(s){r=f[Y>>2]|0;if((u|0)>0){t=s<<2;n=0;do{Nl(r+((n<<1)+a<<4)|0,l+((ie(n,j)|0)<<2)|0,t|0)|0;n=n+1|0}while((n|0)!=(u|0))}t=1-a|0;if((o|0)>0){n=s<<2;a=0;do{Nl(r+(t+(a<<1)<<4)|0,l+((ie(a+u|0,j)|0)<<2)|0,n|0)|0;a=a+1|0}while((a|0)!=(o|0))}Da(Y);if((p|0)!=(v|0)){t=s<<2;n=0;do{Nl(l+((ie(n,j)|0)<<2)|0,r+(n<<4)|0,t|0)|0;n=n+1|0}while((n|0)!=(g|0))}}i=i+-1|0;if(!i)break e;a=f[H>>2]|0;t=f[e>>2]|0;_=g;n=y;s=M}}}while(0);jn(U);q=1;c=X;return q|0}function xa(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0;if(!t){t=(i|0)>0;if(!(t|(r|0)>1))return;if(t){t=e+((r<<1)+-2<<2)|0;n=0;do{o=n;n=n+1|0;u=e+((o<<1|1)<<2)|0;f[u>>2]=(f[u>>2]|0)-((f[((n|0)<(r|0)?e+(n<<1<<2)|0:t)>>2]|0)+(f[((o|0)<(r|0)?e+(o<<1<<2)|0:t)>>2]|0)>>1)}while((n|0)!=(i|0))}if((r|0)<=0)return;n=e+4|0;a=(i<<1)+-1|0;s=0;do{if((s|0)<1)t=n;else t=e+((((s|0)>(i|0)?i:s)<<1)+-1<<2)|0;u=e+(s<<1<<2)|0;f[u>>2]=((f[t>>2]|0)+2+(f[e+(((s|0)<(i|0)?s<<1|1:a)<<2)>>2]|0)>>2)+(f[u>>2]|0);s=s+1|0}while((s|0)!=(r|0));return}if((i|0)==1&(r|0)==0){f[e>>2]=f[e>>2]<<1;return}if((i|0)>0){n=e+4|0;a=(r<<1)+-1|0;s=e+(a<<2)|0;u=0;do{l=u<<1;o=f[e+(((u|0)<(r|0)?l|1:a)<<2)>>2]|0;if((u|0)>=1)if((u|0)>(r|0))t=s;else t=e+(l+-1<<2)|0;else t=n;l=e+(l<<2)|0;f[l>>2]=(f[l>>2]|0)-((f[t>>2]|0)+o>>1);u=u+1|0}while((u|0)!=(i|0))}if((r|0)<=0)return;t=e+((i<<1)+-2<<2)|0;n=0;do{o=n;n=n+1|0;u=e+((o<<1|1)<<2)|0;f[u>>2]=((f[((o|0)<(i|0)?e+(o<<1<<2)|0:t)>>2]|0)+2+(f[((n|0)<(i|0)?e+(n<<1<<2)|0:t)>>2]|0)>>2)+(f[u>>2]|0)}while((n|0)!=(r|0));return}function Pa(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0;y=(f[e+8>>2]|0)-(f[e>>2]|0)|0;a=f[e+16>>2]|0;l=a+-1|0;M=f[e+32>>2]|0;s=f[e+24>>2]|0;n=(l|0)==0;if(n)e=0;else{r=s;t=l;e=0;do{g=r;r=r+136|0;p=(f[g+144>>2]|0)-(f[r>>2]|0)|0;e=e>>>0<p>>>0?p:e;g=(f[g+148>>2]|0)-(f[g+140>>2]|0)|0;e=e>>>0<g>>>0?g:e;t=t+-1|0}while((t|0)!=0);e=e<<2}g=Nn(e)|0;if(!((e|0)==0|(g|0)!=0)){i=0;return i|0}if(!n){v=a+-2|0;p=v;e=s+(l*136|0)|0;v=s+(v*136|0)|0;while(1){w=f[e>>2]|0;m=(f[e+8>>2]|0)-w|0;h=f[e+4>>2]|0;b=(f[e+12>>2]|0)-h|0;k=(f[v+8>>2]|0)-(f[v>>2]|0)|0;e=f[v+12>>2]|0;r=f[v+4>>2]|0;c=e-r|0;w=w&1;h=h&1;d=b-c|0;_=(m|0)>0;e:do{if(_){n=(e|0)==(r|0);l=(b|0)==(c|0);o=g+((h^1)<<2)|0;u=ie(c,y)|0;s=g+(h<<2)|0;if((b|0)>0){a=0;while(1){r=M+(a<<2)|0;e=0;do{f[g+(e<<2)>>2]=f[M+((ie(e,y)|0)+a<<2)>>2];e=e+1|0}while((e|0)!=(b|0));xo[i&3](g,d,c,h);if(!n){t=c;e=s;while(1){t=t+-1|0;f[r>>2]=f[e>>2];if(!t)break;else{r=r+(y<<2)|0;e=e+8|0}}}if(!l){e=d;r=M+(a+u<<2)|0;t=o;while(1){e=e+-1|0;f[r>>2]=f[t>>2];if(!e)break;else{r=r+(y<<2)|0;t=t+8|0}}}a=a+1|0;if((a|0)==(m|0))break e}}if(n){r=0;while(1){xo[i&3](g,d,c,h);if(!l){e=d;t=M+(r+u<<2)|0;n=o;while(1){e=e+-1|0;f[t>>2]=f[n>>2];if(!e)break;else{t=t+(y<<2)|0;n=n+8|0}}}r=r+1|0;if((r|0)==(m|0))break e}}else n=0;do{xo[i&3](g,d,c,h);e=c;r=M+(n<<2)|0;t=s;while(1){e=e+-1|0;f[r>>2]=f[t>>2];if(!e)break;else{r=r+(y<<2)|0;t=t+8|0}}if(!l){e=d;r=M+(n+u<<2)|0;t=o;while(1){e=e+-1|0;f[r>>2]=f[t>>2];if(!e)break;else{r=r+(y<<2)|0;t=t+8|0}}}n=n+1|0}while((n|0)!=(m|0))}}while(0);a=m-k|0;if((b|0)>0){s=(k|0)>0;l=g+(w<<2)|0;o=(a|0)>0;u=g+((w^1)<<2)|0;c=0;do{n=ie(c,y)|0;r=M+(n<<2)|0;if(_){e=0;do{f[g+(e<<2)>>2]=f[M+(e+n<<2)>>2];e=e+1|0}while((e|0)!=(m|0))}xo[i&3](g,a,k,w);if(s){t=0;e=l;while(1){f[r>>2]=f[e>>2];t=t+1|0;if((t|0)==(k|0))break;else{r=r+4|0;e=e+8|0}}}if(o){t=0;e=M+(n+k<<2)|0;r=u;while(1){f[e>>2]=f[r>>2];t=t+1|0;if((t|0)==(a|0))break;else{e=e+4|0;r=r+8|0}}}c=c+1|0}while((c|0)!=(b|0))}if(!p)break;else{e=v;p=p+-1|0;v=v+-136|0}}}zn(g);i=1;return i|0}function Oa(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0;l=f[e>>2]|0;o=f[e+4>>2]|0;u=f[e+8>>2]|0;if(!(f[e+12>>2]|0)){t=(o|0)>0;if(!(t|(u|0)>1))return;if((u|0)>0){i=l+4|0;r=(o<<1)+-1|0;n=0;do{if((n|0)<1)e=i;else e=l+((((n|0)>(o|0)?o:n)<<1)+-1<<2)|0;a=n<<1;s=l+(a<<2)|0;f[s>>2]=(f[s>>2]|0)-((f[e>>2]|0)+2+(f[l+(((n|0)<(o|0)?a|1:r)<<2)>>2]|0)>>2);n=n+1|0}while((n|0)!=(u|0))}if(!t)return;e=l+((u<<1)+-2<<2)|0;i=0;do{a=i<<1;n=i;i=i+1|0;s=l+((a|1)<<2)|0;f[s>>2]=((f[((i|0)<(u|0)?l+(i<<1<<2)|0:e)>>2]|0)+(f[((n|0)<(u|0)?l+(a<<2)|0:e)>>2]|0)>>1)+(f[s>>2]|0)}while((i|0)!=(o|0));return}if((o|0)==1&(u|0)==0){f[l>>2]=(f[l>>2]|0)/2|0;return}if((u|0)>0){e=l+((o<<1)+-2<<2)|0;i=0;do{a=i<<1;n=i;i=i+1|0;s=l+((a|1)<<2)|0;f[s>>2]=(f[s>>2]|0)-((f[((n|0)<(o|0)?l+(a<<2)|0:e)>>2]|0)+2+(f[((i|0)<(o|0)?l+(i<<1<<2)|0:e)>>2]|0)>>2)}while((i|0)!=(u|0))}if((o|0)<=0)return;i=l+4|0;r=(u<<1)+-1|0;t=l+(r<<2)|0;s=0;do{n=s<<1;a=f[l+(((s|0)<(u|0)?n|1:r)<<2)>>2]|0;if((s|0)>=1)if((s|0)>(u|0))e=t;else e=l+(n+-1<<2)|0;else e=i;n=l+(n<<2)|0;f[n>>2]=((f[e>>2]|0)+a>>1)+(f[n>>2]|0);s=s+1|0}while((s|0)!=(o|0));return}function Ba(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0;if(!t){o=(i|0)>0;if(!(o|(r|0)>1))return;if(o){t=e+((r<<1)+-2<<2)|0;n=0;do{h=n;n=n+1|0;c=(f[((n|0)<(r|0)?e+(n<<1<<2)|0:t)>>2]|0)+(f[((h|0)<(r|0)?e+(h<<1<<2)|0:t)>>2]|0)|0;c=zl(c|0,((c|0)<0)<<31>>31|0,12993,0)|0;c=Il(c|0,x|0,4096,0)|0;c=Dl(c|0,x|0,13)|0;h=e+((h<<1|1)<<2)|0;f[h>>2]=(f[h>>2]|0)-c}while((n|0)!=(i|0))}l=(r|0)>0;if(l){n=e+4|0;a=(i<<1)+-1|0;s=0;do{if((s|0)<1)t=n;else t=e+((((s|0)>(i|0)?i:s)<<1)+-1<<2)|0;c=(f[e+(((s|0)<(i|0)?s<<1|1:a)<<2)>>2]|0)+(f[t>>2]|0)|0;c=zl(c|0,((c|0)<0)<<31>>31|0,434,0)|0;c=Il(c|0,x|0,4096,0)|0;c=Dl(c|0,x|0,13)|0;h=e+(s<<1<<2)|0;f[h>>2]=(f[h>>2]|0)-c;s=s+1|0}while((s|0)!=(r|0))}if(o){t=e+((r<<1)+-2<<2)|0;n=0;do{h=n;n=n+1|0;c=(f[((n|0)<(r|0)?e+(n<<1<<2)|0:t)>>2]|0)+(f[((h|0)<(r|0)?e+(h<<1<<2)|0:t)>>2]|0)|0;c=zl(c|0,((c|0)<0)<<31>>31|0,7233,0)|0;c=Il(c|0,x|0,4096,0)|0;c=Dl(c|0,x|0,13)|0;h=e+((h<<1|1)<<2)|0;f[h>>2]=c+(f[h>>2]|0)}while((n|0)!=(i|0))}if(l){n=e+4|0;a=(i<<1)+-1|0;s=0;do{if((s|0)<1)t=n;else t=e+((((s|0)>(i|0)?i:s)<<1)+-1<<2)|0;c=(f[e+(((s|0)<(i|0)?s<<1|1:a)<<2)>>2]|0)+(f[t>>2]|0)|0;c=zl(c|0,((c|0)<0)<<31>>31|0,3633,0)|0;c=Il(c|0,x|0,4096,0)|0;c=Dl(c|0,x|0,13)|0;h=e+(s<<1<<2)|0;f[h>>2]=c+(f[h>>2]|0);s=s+1|0}while((s|0)!=(r|0))}if(o){t=0;do{h=e+((t<<1|1)<<2)|0;c=f[h>>2]|0;c=zl(c|0,((c|0)<0)<<31>>31|0,5038,0)|0;c=Il(c|0,x|0,4096,0)|0;c=Dl(c|0,x|0,13)|0;f[h>>2]=c;t=t+1|0}while((t|0)!=(i|0))}if(l)t=0;else return;do{i=e+(t<<1<<2)|0;h=f[i>>2]|0;h=zl(h|0,((h|0)<0)<<31>>31|0,6659,0)|0;h=Il(h|0,x|0,4096,0)|0;h=Dl(h|0,x|0,13)|0;f[i>>2]=h;t=t+1|0}while((t|0)!=(r|0));return}h=(r|0)>0;if(!((i|0)>1|h))return;c=(i|0)>0;if(c){n=e+4|0;a=(r<<1)+-1|0;s=e+(a<<2)|0;u=0;do{l=u<<1;o=f[e+(((u|0)<(r|0)?l|1:a)<<2)>>2]|0;if((u|0)>=1)if((u|0)>(r|0))t=s;else t=e+(l+-1<<2)|0;else t=n;t=(f[t>>2]|0)+o|0;t=zl(t|0,((t|0)<0)<<31>>31|0,12993,0)|0;t=Il(t|0,x|0,4096,0)|0;t=Dl(t|0,x|0,13)|0;o=e+(l<<2)|0;f[o>>2]=(f[o>>2]|0)-t;u=u+1|0}while((u|0)!=(i|0))}if(h){t=e+((i<<1)+-2<<2)|0;n=0;do{u=n;n=n+1|0;o=(f[((n|0)<(i|0)?e+(n<<1<<2)|0:t)>>2]|0)+(f[((u|0)<(i|0)?e+(u<<1<<2)|0:t)>>2]|0)|0;o=zl(o|0,((o|0)<0)<<31>>31|0,434,0)|0;o=Il(o|0,x|0,4096,0)|0;o=Dl(o|0,x|0,13)|0;u=e+((u<<1|1)<<2)|0;f[u>>2]=(f[u>>2]|0)-o}while((n|0)!=(r|0))}if(c){n=e+4|0;a=(r<<1)+-1|0;s=e+(a<<2)|0;u=0;do{l=u<<1;o=f[e+(((u|0)<(r|0)?l|1:a)<<2)>>2]|0;if((u|0)>=1)if((u|0)>(r|0))t=s;else t=e+(l+-1<<2)|0;else t=n;t=(f[t>>2]|0)+o|0;t=zl(t|0,((t|0)<0)<<31>>31|0,7233,0)|0;t=Il(t|0,x|0,4096,0)|0;t=Dl(t|0,x|0,13)|0;o=e+(l<<2)|0;f[o>>2]=t+(f[o>>2]|0);u=u+1|0}while((u|0)!=(i|0))}if(h){t=e+((i<<1)+-2<<2)|0;n=0;do{u=n;n=n+1|0;o=(f[((n|0)<(i|0)?e+(n<<1<<2)|0:t)>>2]|0)+(f[((u|0)<(i|0)?e+(u<<1<<2)|0:t)>>2]|0)|0;o=zl(o|0,((o|0)<0)<<31>>31|0,3633,0)|0;o=Il(o|0,x|0,4096,0)|0;o=Dl(o|0,x|0,13)|0;u=e+((u<<1|1)<<2)|0;f[u>>2]=o+(f[u>>2]|0)}while((n|0)!=(r|0))}if(c){t=0;do{c=e+(t<<1<<2)|0;u=f[c>>2]|0;u=zl(u|0,((u|0)<0)<<31>>31|0,5038,0)|0;u=Il(u|0,x|0,4096,0)|0;u=Dl(u|0,x|0,13)|0;f[c>>2]=u;t=t+1|0}while((t|0)!=(i|0))}if(h)t=0;else return;do{i=e+((t<<1|1)<<2)|0;h=f[i>>2]|0;h=zl(h|0,((h|0)<0)<<31>>31|0,6659,0)|0;h=Il(h|0,x|0,4096,0)|0;h=Dl(h|0,x|0,13)|0;f[i>>2]=h;t=t+1|0}while((t|0)!=(r|0));return}function Ia(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0;h=f[e>>2]|0;l=f[e+12>>2]|0;w=f[e+8>>2]|0;d=r*3|0;c=1-l|0;u=e+4|0;o=w;e=0;while(1){s=h+(l<<4)|0;if(((o+d|0)<(t|0)?(i&15|0)==0:0)?((s|r)&15|0)==0:0){if((o|0)>0){n=0;do{s=n<<3;f[h+(l<<4)+(s<<2)>>2]=f[i+(n<<2)>>2];a=n+r|0;f[h+(l<<4)+((s|1)<<2)>>2]=f[i+(a<<2)>>2];a=a+r|0;f[h+(l<<4)+((s|2)<<2)>>2]=f[i+(a<<2)>>2];f[h+(l<<4)+((s|3)<<2)>>2]=f[i+(a+r<<2)>>2];n=n+1|0}while((n|0)!=(o|0))}}else _=3;if((_|0)==3?(_=0,(o|0)>0):0){s=0;do{n=s<<3;f[h+(l<<4)+(n<<2)>>2]=f[i+(s<<2)>>2];a=s+r|0;if(((a|0)<(t|0)?(f[h+(l<<4)+((n|1)<<2)>>2]=f[i+(a<<2)>>2],b=a+r|0,(b|0)<(t|0)):0)?(f[h+(l<<4)+((n|2)<<2)>>2]=f[i+(b<<2)>>2],k=b+r|0,(k|0)<(t|0)):0)f[h+(l<<4)+((n|3)<<2)>>2]=f[i+(k<<2)>>2];s=s+1|0}while((s|0)!=(o|0))}e=e+1|0;if((e|0)==2)break;else{i=i+(w<<2)|0;t=t-w|0;l=c;o=f[u>>2]|0}}return}function Da(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0,l=0,u=0.0,c=0.0,h=0,d=0.0,b=0,k=0;do{if(!(f[e+12>>2]|0)){r=f[e+8>>2]|0;if((f[e+4>>2]|0)>0){i=f[e>>2]|0;if((r|0)>0){s=0;n=1;l=9;break}else{s=0;a=1;break}}if((r|0)>1){t=0;n=1;l=7}else return}else{r=f[e+8>>2]|0;if((r|0)<=0)if((f[e+4>>2]|0)>1){i=f[e>>2]|0;s=1;a=0;break}else return;else{t=1;n=0;l=7}}}while(0);if((l|0)==7){i=f[e>>2]|0;s=t;l=9}if((l|0)==9){t=0;do{l=t<<3;b=i+(s<<4)+(l<<2)|0;h=i+(s<<4)+((l|1)<<2)|0;d=+o[h>>2];a=i+(s<<4)+((l|2)<<2)|0;c=+o[a>>2];l=i+(s<<4)+((l|3)<<2)|0;u=+o[l>>2];o[b>>2]=+o[b>>2]*1.2301740646362305;o[h>>2]=d*1.2301740646362305;o[a>>2]=c*1.2301740646362305;o[l>>2]=u*1.2301740646362305;t=t+1|0}while((t|0)!=(r|0));a=n}t=f[e+4>>2]|0;if((t|0)>0){n=0;do{b=n<<3;l=i+(a<<4)+(b<<2)|0;e=i+(a<<4)+((b|1)<<2)|0;u=+o[e>>2];h=i+(a<<4)+((b|2)<<2)|0;c=+o[h>>2];b=i+(a<<4)+((b|3)<<2)|0;d=+o[b>>2];o[l>>2]=+o[l>>2]*1.625732421875;o[e>>2]=u*1.625732421875;o[h>>2]=c*1.625732421875;o[b>>2]=d*1.625732421875;n=n+1|0}while((n|0)!=(t|0))}k=i+(a<<4)|0;n=i+(s+1<<4)|0;l=t-s|0;l=(r|0)<(l|0)?r:l;Na(k,n,r,l,-.4435068666934967);e=i+(s<<4)|0;h=i+(a+1<<4)|0;b=r-a|0;b=(t|0)<(b|0)?t:b;Na(e,h,t,b,-.8829110860824585);Na(k,n,r,l,.05298011749982834);Na(e,h,t,b,1.5861343145370483);return}function Na(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=+n;var f=0.0,a=0.0,s=0.0,l=0.0,u=0,c=0,h=0,d=0,b=0.0,k=0.0,w=0,_=0.0,m=0.0,v=0,p=0.0,g=0.0,y=0,M=0.0;if((t|0)>0){h=t<<1;c=h+-2|0;a=+o[e>>2];s=+o[e+4>>2];l=+o[e+8>>2];f=+o[e+12>>2];e=i;u=0;while(1){y=e+-16|0;v=e+-12|0;g=+o[v>>2];w=e+-8|0;m=+o[w>>2];d=e+-4|0;k=+o[d>>2];M=a;a=+o[e>>2];p=s;s=+o[e+4>>2];_=l;l=+o[e+8>>2];b=f;f=+o[e+12>>2];o[y>>2]=+o[y>>2]+(M+a)*n;o[v>>2]=g+(p+s)*n;o[w>>2]=m+(_+l)*n;o[d>>2]=k+(b+f)*n;u=u+1|0;if((u|0)==(t|0))break;else e=e+32|0}e=i+(c<<4)|0;i=i+(h<<4)|0}if((t|0)>=(r|0))return;f=n+n;a=f*+o[e>>2];s=f*+o[e+4>>2];l=f*+o[e+8>>2];f=f*+o[e+12>>2];while(1){d=i+-16|0;w=i+-12|0;p=+o[w>>2];v=i+-8|0;g=+o[v>>2];y=i+-4|0;M=+o[y>>2];o[d>>2]=a+ +o[d>>2];o[w>>2]=s+p;o[v>>2]=l+g;o[y>>2]=f+M;t=t+1|0;if((t|0)==(r|0))break;else i=i+32|0}return}function Fa(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0.0,s=0,l=0,u=0,c=0,h=0,d=0,b=0.0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;M=r<<2;E=Nn(r<<4)|0;if(!E){e=0;return e|0}A=E+M|0;Ol(E|0,0,M|0)|0;g=r+-1|0;p=(r|0)==0;if(!p){t=0;n=E;while(1){f[n>>2]=t;t=t+1|0;if((t|0)==(r|0))break;else n=n+4|0}}e:do{if(g){w=g;l=0;t=0;_=e;m=1;v=E;while(1){u=_+(l<<2)|0;if(l>>>0<r>>>0){s=l;n=u;a=0.0}else break;while(1){b=+o[n>>2];b=b>0.0?b:-b;y=b>a;t=y?s:t;a=y?b:a;s=s+1|0;if((s|0)==(r|0))break;else n=n+(r<<2)|0}if(a==0.0)break;if((t|0)!=(l|0)){y=t-l|0;k=v+(y<<2)|0;d=f[v>>2]|0;f[v>>2]=f[k>>2];f[k>>2]=d;y=_+((ie(y,r)|0)<<2)|0;Nl(A|0,y|0,M|0)|0;Nl(y|0,_|0,M|0)|0;Nl(_|0,A|0,M|0)|0}n=l;k=l+1|0;b=+o[u>>2];if(m>>>0<r>>>0){c=_+(k<<2)|0;d=k+w|0;h=m;s=_+(n+r<<2)|0;while(1){a=+o[s>>2]/b;o[s>>2]=a;n=m;l=s;u=c;while(1){l=l+4|0;o[l>>2]=+o[l>>2]-a*+o[u>>2];n=n+1|0;if((n|0)==(r|0))break;else u=u+4|0}h=h+1|0;if((h|0)==(r|0))break;else s=s+(d<<2)|0}}if(k>>>0<g>>>0){w=w+-1|0;l=k;_=_+(r<<2)|0;m=m+1|0;v=v+4|0}else break e}zn(E);e=0;return e|0}}while(0);t=r<<1;y=A+(t<<2)|0;if(!p){p=A+(g+r<<2)|0;w=A+(t+g<<2)|0;_=e+((ie(r,r)|0)+-1<<2)|0;m=~r;v=0;k=i;while(1){Ol(A|0,0,M|0)|0;o[A+(v<<2)>>2]=1.0;l=0;u=1;c=E;h=y;d=e;while(1){if(!l)a=0.0;else{t=1;n=y;s=d;a=0.0;while(1){a=a+ +o[s>>2]*+o[n>>2];t=t+1|0;if((t|0)==(u|0))break;else{n=n+4|0;s=s+4|0}}}o[h>>2]=+o[A+(f[c>>2]<<2)>>2]-a;l=l+1|0;if((l|0)==(r|0)){l=r;u=p;c=y;h=w;d=_;break}else{u=u+1|0;c=c+4|0;h=h+4|0;d=d+(r<<2)|0}}while(1){t=l;l=l+-1|0;b=+o[d>>2];if(t>>>0<r>>>0){n=c;s=d;a=0.0;while(1){s=s+4|0;a=a+ +o[s>>2]*+o[n>>2];t=t+1|0;if((t|0)==(r|0))break;else n=n+4|0}}else a=0.0;c=c+-4|0;o[u>>2]=(+o[h>>2]-a)/b;if(!l){t=0;n=k;break}else{u=u+-4|0;h=h+-4|0;d=d+(m<<2)|0}}while(1){f[n>>2]=f[A+(t+r<<2)>>2];t=t+1|0;if((t|0)==(r|0))break;else n=n+(r<<2)|0}v=v+1|0;if((v|0)==(r|0))break;else k=k+4|0}}zn(E);e=1;return e|0}function Ua(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0;a=Fn(1,44)|0;if(!a){a=0;return a|0}s=Qa()|0;f[a>>2]=s;if(!s){$a(0);f[a>>2]=0;s=a+4|0;ks(f[s>>2]|0);f[s>>2]=0;if((f[a+40>>2]|0)==0?(r=a+8|0,i=f[r>>2]|0,(i|0)!=0):0){jn(i);f[r>>2]=0}i=a+12|0;r=f[i>>2]|0;if(r){jn(r);f[i>>2]=0}zn(a);s=0;return s|0}s=bs()|0;i=a+4|0;f[i>>2]=s;if(s){f[a+40>>2]=e;s=a;return s|0}$a(f[a>>2]|0);f[a>>2]=0;ks(f[i>>2]|0);f[i>>2]=0;if((f[a+40>>2]|0)==0?(t=a+8|0,n=f[t>>2]|0,(n|0)!=0):0){jn(n);f[t>>2]=0}i=a+12|0;r=f[i>>2]|0;if(r){jn(r);f[i>>2]=0}zn(a);s=0;return s|0}function ja(e){e=e|0;var i=0,r=0,t=0;if(!e)return;$a(f[e>>2]|0);f[e>>2]=0;t=e+4|0;ks(f[t>>2]|0);f[t>>2]=0;if((f[e+40>>2]|0)==0?(i=e+8|0,r=f[i>>2]|0,(r|0)!=0):0){jn(r);f[i>>2]=0}i=e+12|0;r=f[i>>2]|0;if(r){jn(r);f[i>>2]=0}zn(e);return}function Ha(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,l=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0,V=0,G=0,K=0,W=0,Z=0,J=0,Q=0,$=0,ee=0,re=0,te=0,ne=0,fe=0,ae=0,se=0,le=0,oe=0,ue=0,ce=0,he=0,de=0,be=0,ke=0,we=0,_e=0,me=0,ve=0,pe=0,ge=0,ye=0,Me=0,Ee=0,Ae=0,Se=0,Te=0,Ce=0,Re=0;Ee=(f[i+8>>2]|0)-(f[i>>2]|0)|0;Ae=i+20|0;t=f[Ae>>2]|0;if(!t){e=1;return e|0}Se=i+24|0;Te=r+808|0;Ce=r+16|0;ve=e+4|0;ge=e+8|0;ye=e+16|0;Me=e+20|0;me=r+20|0;ke=i+32|0;we=e+32|0;_e=e+12|0;r=t;be=0;e:while(1){he=f[Se>>2]|0;de=he+(be*136|0)+24|0;i=f[de>>2]|0;if(i){oe=he+(be*136|0)+16|0;ue=he+(be*136|0)+20|0;ce=be+-1|0;r=f[ue>>2]|0;t=f[oe>>2]|0;le=0;do{if(ie(r,t)|0){te=he+(be*136|0)+28+(le*36|0)+20|0;ne=he+(be*136|0)+28+(le*36|0)+16|0;fe=he+(be*136|0)+28+(le*36|0)|0;ae=he+(be*136|0)+28+(le*36|0)+4|0;se=he+(be*136|0)+28+(le*36|0)+32|0;re=0;do{i=f[te>>2]|0;$=i+(re*40|0)+16|0;ee=i+(re*40|0)+20|0;if(ie(f[ee>>2]|0,f[$>>2]|0)|0){J=i+(re*40|0)+24|0;Q=0;do{r=f[J>>2]|0;q=f[ne>>2]|0;l=f[Te>>2]|0;i=f[Ce>>2]|0;X=f[ve>>2]|0;V=f[e>>2]|0;G=r+(Q*56|0)+8|0;Z=r+(Q*56|0)+12|0;if(!(Ya(e,(f[r+(Q*56|0)+16>>2]|0)-(f[G>>2]|0)|0,(f[r+(Q*56|0)+20>>2]|0)-(f[Z>>2]|0)|0)|0)){r=0;P=201;break e}K=r+(Q*56|0)+24|0;u=f[K>>2]|0;ss(V);ls(V,18,0,46);ls(V,17,0,3);ls(V,0,0,4);W=r+(Q*56|0)+48|0;t=f[W>>2]|0;if(t){U=r+(Q*56|0)+4|0;j=(i&1|0)!=0;H=(i&2|0)==0;z=(i&8|0)==0;Y=q<<8;F=(i&32|0)==0;i=u+l|0;r=2;N=0;do{u=f[U>>2]|0;D=j&(r>>>0<2?(i|0)<=((f[K>>2]|0)+-4|0):0);l=f[u+(N<<5)>>2]|0;if(l){t=(f[l>>2]|0)+(f[u+(N<<5)+4>>2]|0)|0;l=f[u+(N<<5)+16>>2]|0;if(!D){if(!(hs(V,t,l)|0)){r=0;P=201;break e}}else ws(X,t,l);B=u+(N<<5)+12|0;i:do{if(f[B>>2]|0){I=H|D;O=0;while(1){r:do{switch(r|0){case 0:{if(D){y=1<<i;y=y>>1|y;l=f[Me>>2]|0;if(!l)break r;g=0-y|0;t=f[ye>>2]|0;p=0;while(1){v=p;p=p+4|0;if(!t)t=0;else{w=(v|0)==-4;_=v|3;m=0;do{t:do{if(!w)if(z){b=v;do{if(b>>>0>=(f[Me>>2]|0)>>>0)break t;h=b;b=b+1|0;t=(ie(f[we>>2]|0,b)|0)+m|0;l=t+1|0;u=f[_e>>2]|0;c=u+(l<<1)|0;h=(ie(f[ye>>2]|0,h)|0)+m|0;h=(f[ge>>2]|0)+(h<<2)|0;d=f[ve>>2]|0;P=n[c>>1]|0;if((P&255|0)!=0&(P&20480|0)==0){if(_s(d)|0){R=_s(d)|0;f[h>>2]=(R|0)!=0?g:y;x=f[we>>2]|0;P=u+(l-x<<1)|0;L=u+(x+l<<1)|0;C=u+(l+~x<<1)|0;n[C>>1]=s[C>>1]|2;n[P>>1]=n[P>>1]|n[3436+(R<<1)>>1];P=t+2|0;C=u+(P-x<<1)|0;n[C>>1]=s[C>>1]|4;C=u+(t<<1)|0;n[C>>1]=n[C>>1]|n[3436+(R+2<<1)>>1];n[c>>1]=s[c>>1]|4096;C=u+(P<<1)|0;n[C>>1]=n[C>>1]|n[3436+(R+4<<1)>>1];C=u+(x+t<<1)|0;n[C>>1]=s[C>>1]|1;n[L>>1]=n[L>>1]|n[3436+(R+6<<1)>>1];P=u+(x+P<<1)|0;n[P>>1]=s[P>>1]|8}n[c>>1]=s[c>>1]|16384}}while(b>>>0<p>>>0)}else{k=v;do{t=f[Me>>2]|0;if(k>>>0>=t>>>0)break t;x=k;k=k+1|0;l=(ie(f[we>>2]|0,k)|0)+m|0;u=l+1|0;c=f[_e>>2]|0;h=c+(u<<1)|0;d=(ie(f[ye>>2]|0,x)|0)+m|0;d=(f[ge>>2]|0)+(d<<2)|0;b=f[ve>>2]|0;P=n[h>>1]|0;P=(x|0)==(_|0)|(x|0)==(t+-1|0)?P&-1095:P;if((P&255|0)!=0&(P&20480|0)==0){if(_s(b)|0){R=_s(b)|0;f[d>>2]=(R|0)!=0?g:y;x=f[we>>2]|0;P=c+(u-x<<1)|0;L=c+(x+u<<1)|0;C=c+(u+~x<<1)|0;n[C>>1]=s[C>>1]|2;n[P>>1]=n[P>>1]|n[3436+(R<<1)>>1];P=l+2|0;C=c+(P-x<<1)|0;n[C>>1]=s[C>>1]|4;C=c+(l<<1)|0;n[C>>1]=n[C>>1]|n[3436+(R+2<<1)>>1];n[h>>1]=s[h>>1]|4096;C=c+(P<<1)|0;n[C>>1]=n[C>>1]|n[3436+(R+4<<1)>>1];C=c+(x+l<<1)|0;n[C>>1]=s[C>>1]|1;n[L>>1]=n[L>>1]|n[3436+(R+6<<1)>>1];P=c+(x+P<<1)|0;n[P>>1]=s[P>>1]|8}n[h>>1]=s[h>>1]|16384}}while(k>>>0<p>>>0)}}while(0);m=m+1|0;t=f[ye>>2]|0}while(m>>>0<t>>>0);l=f[Me>>2]|0}if(p>>>0>=l>>>0){P=163;break r}}}if(z){u=f[ge>>2]|0;c=(f[_e>>2]|0)+2|0;_=1<<i;_=_>>1|_;t=f[Me>>2]|0;l=f[ye>>2]|0;if(t>>>0>3){b=l;d=0;while(1){if(!l){l=b;h=0}else{l=0;do{P=(f[we>>2]|0)+l|0;qa(e,c+(P<<1)|0,u+(l<<2)|0,q,_);t=(f[ye>>2]|0)+l|0;P=(f[we>>2]|0)+P|0;qa(e,c+(P<<1)|0,u+(t<<2)|0,q,_);t=(f[ye>>2]|0)+t|0;P=(f[we>>2]|0)+P|0;qa(e,c+(P<<1)|0,u+(t<<2)|0,q,_);qa(e,c+((f[we>>2]|0)+P<<1)|0,u+((f[ye>>2]|0)+t<<2)|0,q,_);l=l+1|0;t=f[ye>>2]|0}while(l>>>0<t>>>0);l=t;h=t;t=f[Me>>2]|0}u=u+(h<<2<<2)|0;c=c+(f[we>>2]<<2<<1)|0;d=d+4|0;if(d>>>0<(t&-4)>>>0){b=l;l=h}else{w=c;k=d;break}}}else{w=c;k=0}if(!l){P=163;break r}else b=0;while(1){if(k>>>0<t>>>0){c=u+(b<<2)|0;h=w+(b<<1)|0;d=k;while(1){h=h+(f[we>>2]<<1)|0;qa(e,h,c,q,_);l=f[ye>>2]|0;d=d+1|0;t=f[Me>>2]|0;if(d>>>0>=t>>>0)break;else c=c+(l<<2)|0}}b=b+1|0;if(b>>>0>=l>>>0){P=163;break r}}}y=1<<i;y=y>>1|y;t=f[Me>>2]|0;if(!t){P=163;break r}M=0-y|0;l=f[ye>>2]|0;c=l;g=0;while(1){p=g;g=g+4|0;do{if(!l){u=c;l=0}else{v=p|3;if((p|0)==-4){u=c;l=c;break}else m=0;do{_=p;do{t=f[Me>>2]|0;if(_>>>0>=t>>>0)break;P=_;_=_+1|0;c=(ie(f[we>>2]|0,_)|0)+m|0;h=c+1|0;d=f[_e>>2]|0;b=d+(h<<1)|0;k=(ie(f[ye>>2]|0,P)|0)+m|0;k=(f[ge>>2]|0)+(k<<2)|0;w=f[e>>2]|0;l=n[b>>1]|0;t=(P|0)==(v|0)|(P|0)==(t+-1|0)?l&-1095:l;l=t&255;if((l|0)!=0&(t&20480|0)==0){u=w+100|0;f[u>>2]=w+24+(a[20267+(l|Y)>>0]<<2);if(ds(w)|0){x=t>>>4&255;f[u>>2]=w+24+(a[21291+x>>0]<<2);P=ds(w)|0;x=a[21547+x>>0]|0;R=x^P;f[k>>2]=(P|0)!=(x|0)?M:y;x=f[we>>2]|0;P=d+(h-x<<1)|0;L=d+(x+h<<1)|0;C=d+(h+~x<<1)|0;n[C>>1]=s[C>>1]|2;n[P>>1]=n[P>>1]|n[3436+(R<<1)>>1];P=c+2|0;C=d+(P-x<<1)|0;n[C>>1]=s[C>>1]|4;C=d+(c<<1)|0;n[C>>1]=n[C>>1]|n[3436+(R+2<<1)>>1];n[b>>1]=s[b>>1]|4096;C=d+(P<<1)|0;n[C>>1]=n[C>>1]|n[3436+(R+4<<1)>>1];C=d+(x+c<<1)|0;n[C>>1]=s[C>>1]|1;n[L>>1]=n[L>>1]|n[3436+(R+6<<1)>>1];P=d+(x+P<<1)|0;n[P>>1]=s[P>>1]|8}n[b>>1]=s[b>>1]|16384}}while(_>>>0<g>>>0);m=m+1|0;t=f[ye>>2]|0}while(m>>>0<t>>>0);u=t;l=t;t=f[Me>>2]|0}}while(0);if(g>>>0>=t>>>0){P=163;break}else c=u}break}case 1:{if(D){w=1<<i>>1;_=(i|0)>0?0-w|0:-1;l=f[Me>>2]|0;if(!l)break r;u=f[ye>>2]|0;t=u;k=0;while(1){b=k;k=k+4|0;if(!u){c=t;u=0}else{d=(b|0)==-4;h=0;do{c=h;h=h+1|0;if(!d){u=b;do{if(u>>>0>=(f[Me>>2]|0)>>>0)break;l=u;u=u+1|0;t=(ie(f[we>>2]|0,u)|0)+h|0;t=(f[_e>>2]|0)+(t<<1)|0;l=(ie(f[ye>>2]|0,l)|0)+c|0;l=(f[ge>>2]|0)+(l<<2)|0;if((n[t>>1]&20480)==4096){x=(_s(f[ve>>2]|0)|0)!=0;x=x?w:_;P=f[l>>2]|0;f[l>>2]=((P|0)<0?0-x|0:x)+P;n[t>>1]=s[t>>1]|8192}}while(u>>>0<k>>>0);t=f[ye>>2]|0}}while(h>>>0<t>>>0);c=t;u=t;l=f[Me>>2]|0}if(k>>>0>=l>>>0){P=163;break r}else t=c}}if(!z){v=1<<i>>1;p=(i|0)>0?0-v|0:-1;t=f[Me>>2]|0;if(!t){P=163;break r}l=f[ye>>2]|0;u=l;m=0;while(1){_=m;m=m+4|0;if(!l)l=0;else{k=(_|0)==-4;w=_|3;t=u;b=0;do{d=b;b=b+1|0;if(!k){c=_;do{t=f[Me>>2]|0;if(c>>>0>=t>>>0)break;x=c;c=c+1|0;l=(ie(f[we>>2]|0,c)|0)+b|0;l=(f[_e>>2]|0)+(l<<1)|0;u=(ie(f[ye>>2]|0,x)|0)+d|0;u=(f[ge>>2]|0)+(u<<2)|0;h=f[e>>2]|0;P=n[l>>1]|0;t=(x|0)==(w|0)|(x|0)==(t+-1|0)?P&-1095:P;if((t&20480|0)==4096){f[h+100>>2]=h+24+(((t&8192|0)!=0?16:(t&255|0)!=0?15:14)<<2);x=(ds(h)|0)!=0;x=x?v:p;P=f[u>>2]|0;f[u>>2]=((P|0)<0?0-x|0:x)+P;n[l>>1]=s[l>>1]|8192}}while(c>>>0<m>>>0);t=f[ye>>2]|0}}while(b>>>0<t>>>0);u=t;l=t;t=f[Me>>2]|0}if(m>>>0>=t>>>0){P=163;break r}}}u=f[ge>>2]|0;c=(f[_e>>2]|0)+2|0;g=1<<i>>1;y=(i|0)>0?0-g|0:-1;t=f[Me>>2]|0;l=f[ye>>2]|0;if(t>>>0>3){d=l;v=c;p=0;while(1){if(!l){l=d;h=0}else{t=d;m=0;do{l=u+(m<<2)|0;d=f[we>>2]|0;k=d+m|0;c=v+(k<<1)|0;b=f[e>>2]|0;h=n[c>>1]|0;if((h&20480|0)==4096){f[b+100>>2]=b+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);d=(ds(b)|0)!=0;d=d?g:y;t=f[l>>2]|0;f[l>>2]=((t|0)<0?0-d|0:d)+t;n[c>>1]=s[c>>1]|8192;t=f[ye>>2]|0;l=f[we>>2]|0;d=f[e>>2]|0}else{l=d;d=b}w=t+m|0;b=u+(w<<2)|0;_=l+k|0;c=v+(_<<1)|0;h=n[c>>1]|0;if((h&20480|0)==4096){f[d+100>>2]=d+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);l=(ds(d)|0)!=0;l=l?g:y;t=f[b>>2]|0;f[b>>2]=((t|0)<0?0-l|0:l)+t;n[c>>1]=s[c>>1]|8192;t=f[ye>>2]|0;l=f[we>>2]|0;d=f[e>>2]|0}k=t+w|0;b=u+(k<<2)|0;w=l+_|0;c=v+(w<<1)|0;h=n[c>>1]|0;if((h&20480|0)==4096){f[d+100>>2]=d+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);l=(ds(d)|0)!=0;l=l?g:y;t=f[b>>2]|0;f[b>>2]=((t|0)<0?0-l|0:l)+t;n[c>>1]=s[c>>1]|8192;t=f[ye>>2]|0;l=f[we>>2]|0;d=f[e>>2]|0}h=u+(t+k<<2)|0;l=v+(l+w<<1)|0;c=n[l>>1]|0;if((c&20480|0)==4096){f[d+100>>2]=d+24+(((c&8192|0)!=0?16:(c&255|0)!=0?15:14)<<2);P=(ds(d)|0)!=0;P=P?g:y;t=f[h>>2]|0;f[h>>2]=((t|0)<0?0-P|0:P)+t;n[l>>1]=s[l>>1]|8192;t=f[ye>>2]|0}m=m+1|0}while(m>>>0<t>>>0);l=t;h=t;t=f[Me>>2]|0}u=u+(h<<2<<2)|0;c=v+(f[we>>2]<<2<<1)|0;b=p+4|0;if(b>>>0<(t&-4)>>>0){d=l;l=h;v=c;p=b}else{m=b;break}}}else m=0;if(!l){P=163;break r}else _=0;do{if(m>>>0<t>>>0){b=u+(_<<2)|0;k=c+(_<<1)|0;w=m;while(1){k=k+(f[we>>2]<<1)|0;d=f[e>>2]|0;h=n[k>>1]|0;if((h&20480|0)==4096){f[d+100>>2]=d+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);t=(ds(d)|0)!=0;t=t?g:y;h=f[b>>2]|0;f[b>>2]=((h|0)<0?0-t|0:t)+h;n[k>>1]=s[k>>1]|8192;h=f[ye>>2]|0;t=f[Me>>2]|0}else h=l;w=w+1|0;if(w>>>0>=t>>>0){l=h;break}else{l=h;b=b+(h<<2)|0}}}_=_+1|0}while(_>>>0<l>>>0);P=163;break}case 2:{L=f[e>>2]|0;x=1<<i;x=x>>1|x;do{if(z){u=f[ge>>2]|0;c=(f[_e>>2]|0)+2|0;l=f[Me>>2]|0;if(l>>>0>3){y=L+92|0;M=L+100|0;E=L+96|0;A=0-x|0;h=f[ye>>2]|0;t=h;b=0;while(1){if(!h)h=0;else{_=b|1;m=_+1|0;v=b|3;p=_+3|0;g=0;do{t=f[we>>2]|0;l=g;g=g+1|0;R=(ie(t,_)|0)+g|0;P=f[_e>>2]|0;R=n[P+((ie(t,m)|0)+g<<1)>>1]|n[P+(R<<1)>>1];R=R|n[P+((ie(t,v)|0)+g<<1)>>1];t:do{if(!((R|n[P+((ie(t,p)|0)+g<<1)>>1])&20735)){f[M>>2]=y;if(!(ds(L)|0))break;f[M>>2]=E;k=(ds(L)|0)<<1;k=k|(ds(L)|0);if(k>>>0>=4)break;w=u+((ie(f[ye>>2]|0,k)|0)+l<<2)|0;l=c+((ie(f[we>>2]|0,k)|0)+l<<1)|0;d=k;while(1){if(d>>>0>=(f[Me>>2]|0)>>>0)break t;t=f[we>>2]|0;h=l;l=l+(t<<1)|0;if((d|0)==(k|0)){P=f[e>>2]|0;R=(s[l>>1]|0)>>>4&255;f[P+100>>2]=P+24+(a[21291+R>>0]<<2);P=ds(P)|0;R=a[21547+R>>0]|0;T=R^P;f[w>>2]=(P|0)!=(R|0)?A:x;R=f[we>>2]|0;P=h+(t-R<<1)|0;C=h+(R+t<<1)|0;S=h+(t+~R<<1)|0;n[S>>1]=s[S>>1]|2;n[P>>1]=n[P>>1]|n[3436+(T<<1)>>1];P=t+1|0;S=h+(P-R<<1)|0;n[S>>1]=s[S>>1]|4;S=t+-1|0;t=h+(S<<1)|0;n[t>>1]=n[t>>1]|n[3436+(T+2<<1)>>1];n[l>>1]=s[l>>1]|4096;t=h+(P<<1)|0;n[t>>1]=n[t>>1]|n[3436+(T+4<<1)>>1];S=h+(R+S<<1)|0;n[S>>1]=s[S>>1]|1;n[C>>1]=n[C>>1]|n[3436+(T+6<<1)>>1];P=h+(R+P<<1)|0;n[P>>1]=s[P>>1]|8;n[l>>1]=s[l>>1]&49151}else Xa(e,l,w,q,x);d=d+1|0;if(d>>>0>=4)break;else w=w+(f[ye>>2]<<2)|0}}else{R=t+l|0;Xa(e,c+(R<<1)|0,u+(l<<2)|0,q,x);P=(f[ye>>2]|0)+l|0;R=(f[we>>2]|0)+R|0;Xa(e,c+(R<<1)|0,u+(P<<2)|0,q,x);P=(f[ye>>2]|0)+P|0;R=(f[we>>2]|0)+R|0;Xa(e,c+(R<<1)|0,u+(P<<2)|0,q,x);Xa(e,c+((f[we>>2]|0)+R<<1)|0,u+((f[ye>>2]|0)+P<<2)|0,q,x)}}while(0);t=f[ye>>2]|0}while(g>>>0<t>>>0);h=t;l=f[Me>>2]|0}u=u+(h<<2<<2)|0;c=c+(f[we>>2]<<2<<1)|0;b=b+4|0;if(b>>>0>=(l&-4)>>>0){w=u;k=c;break}}}else{t=f[ye>>2]|0;w=u;k=c;b=0}if(!t)break;else d=0;do{if(b>>>0<l>>>0){u=w+(d<<2)|0;c=k+(d<<1)|0;h=b;while(1){c=c+(f[we>>2]<<1)|0;Xa(e,c,u,q,x);t=f[ye>>2]|0;h=h+1|0;l=f[Me>>2]|0;if(h>>>0>=l>>>0)break;else u=u+(t<<2)|0}}d=d+1|0}while(d>>>0<t>>>0)}else{t=f[Me>>2]|0;if(!t)break;S=L+92|0;T=L+100|0;C=L+96|0;R=0-x|0;l=f[ye>>2]|0;A=0;while(1){if(!l){u=A+4|0;l=0}else{g=A|3;y=A|1;M=y+1|0;E=y+3|0;u=A+4|0;p=0;while(1){do{if(g>>>0<t>>>0){t=f[we>>2]|0;c=p+1|0;v=(ie(t,y)|0)+c|0;l=f[_e>>2]|0;if(n[l+(v<<1)>>1]&20735){v=0;t=0;P=127;break}if(n[l+((ie(t,M)|0)+c<<1)>>1]&20735){v=0;t=0;P=127;break}if(n[l+((ie(t,g)|0)+c<<1)>>1]&20735){v=0;t=0;P=127;break}if(n[l+((ie(t,E)|0)+c<<1)>>1]&20665){v=0;t=0;P=127;break}f[T>>2]=S;if(!(ds(L)|0))break;f[T>>2]=C;t=(ds(L)|0)<<1;v=1;t=t|(ds(L)|0);P=127}else{v=0;t=0;P=127}}while(0);if((P|0)==127){P=0;c=t+A|0;t:do{if(c>>>0<u>>>0){m=c;do{t=f[Me>>2]|0;if(m>>>0>=t>>>0)break t;Re=m;m=m+1|0;h=(ie(f[we>>2]|0,m)|0)+p|0;d=h+1|0;b=f[_e>>2]|0;k=b+(d<<1)|0;w=(ie(f[ye>>2]|0,Re)|0)+p|0;w=(f[ge>>2]|0)+(w<<2)|0;_=f[e>>2]|0;l=n[k>>1]|0;l=(Re|0)==(g|0)|(Re|0)==(t+-1|0)?l&-1095:l;do{if(!(v&(Re|0)==(c|0))){if(l&20480)break;t=_+100|0;f[t>>2]=_+24+(a[20267+(l&255|Y)>>0]<<2);if(ds(_)|0)P=133}else{t=_+100|0;P=133}}while(0);if((P|0)==133){P=0;l=l>>>4&255;f[t>>2]=_+24+(a[21291+l>>0]<<2);Re=ds(_)|0;_=a[21547+l>>0]|0;l=_^Re;f[w>>2]=(Re|0)!=(_|0)?R:x;_=f[we>>2]|0;Re=b+(d-_<<1)|0;w=b+(_+d<<1)|0;d=b+(d+~_<<1)|0;n[d>>1]=s[d>>1]|2;n[Re>>1]=n[Re>>1]|n[3436+(l<<1)>>1];Re=h+2|0;d=b+(Re-_<<1)|0;n[d>>1]=s[d>>1]|4;d=b+(h<<1)|0;n[d>>1]=n[d>>1]|n[3436+(l+2<<1)>>1];n[k>>1]=s[k>>1]|4096;d=b+(Re<<1)|0;n[d>>1]=n[d>>1]|n[3436+(l+4<<1)>>1];d=b+(_+h<<1)|0;n[d>>1]=s[d>>1]|1;n[w>>1]=n[w>>1]|n[3436+(l+6<<1)>>1];Re=b+(_+Re<<1)|0;n[Re>>1]=s[Re>>1]|8}n[k>>1]=s[k>>1]&49151}while(m>>>0<u>>>0)}}while(0);c=p+1|0}l=f[ye>>2]|0;t=f[Me>>2]|0;if(c>>>0<l>>>0)p=c;else break}}if(u>>>0<t>>>0)A=u;else break}}}while(0);if(F){P=163;break r}f[L+100>>2]=L+96;ds(L)|0;ds(L)|0;ds(L)|0;ds(L)|0;P=163;break}default:P=163}}while(0);do{if((P|0)==163){P=0;if(I)break;ss(V);ls(V,18,0,46);ls(V,17,0,3);ls(V,0,0,4)}}while(0);r=r+1|0;Re=(r|0)==3;i=(Re<<31>>31)+i|0;r=Re?0:r;O=O+1|0;if(O>>>0>=(f[B>>2]|0)>>>0)break i}}}while(0);t=f[W>>2]|0}N=N+1|0}while(N>>>0<t>>>0)}r=(f[G>>2]|0)-(f[fe>>2]|0)|0;i=(f[Z>>2]|0)-(f[ae>>2]|0)|0;t=f[ne>>2]|0;if(t&1){Re=f[Se>>2]|0;r=(f[Re+(ce*136|0)+8>>2]|0)+r-(f[Re+(ce*136|0)>>2]|0)|0}if(t&2){Re=f[Se>>2]|0;i=(f[Re+(ce*136|0)+12>>2]|0)+i-(f[Re+(ce*136|0)+4>>2]|0)|0}k=f[ge>>2]|0;w=f[ye>>2]|0;_=f[Me>>2]|0;t=f[Te>>2]|0;if((t|0)!=0?(pe=1<<t,(_|0)!=0):0){t=(w|0)==0;b=0;do{if(!t){l=ie(b,w)|0;d=0;do{u=k+(d+l<<2)|0;c=f[u>>2]|0;h=(c|0)>-1?c:0-c|0;if((h|0)>=(pe|0)){Re=h>>f[Te>>2];f[u>>2]=(c|0)<0?0-Re|0:Re}d=d+1|0}while((d|0)!=(w|0))}b=b+1|0}while((b|0)!=(_|0))}d=(ie(i,Ee)|0)+r|0;b=f[ke>>2]|0;r=(_|0)==0;if((f[me>>2]|0)==1){if(!r){r=(w|0)==0;u=0;do{if(!r){i=ie(u,w)|0;t=(ie(u,Ee)|0)+d|0;l=0;do{f[b+(t+l<<2)>>2]=(f[k+(l+i<<2)>>2]|0)/2|0;l=l+1|0}while((l|0)!=(w|0))}u=u+1|0}while((u|0)!=(_|0))}}else if(!r){h=(w|0)==0;r=k;c=0;u=b+(d<<2)|0;while(1){if(!h){i=r;t=0;l=u;while(1){o[l>>2]=+(f[i>>2]|0)*+o[se>>2];t=t+1|0;if((t|0)==(w|0))break;else{i=i+4|0;l=l+4|0}}r=r+(w<<2)|0}c=c+1|0;if((c|0)==(_|0))break;else u=u+(Ee<<2)|0}}Q=Q+1|0}while(Q>>>0<(ie(f[ee>>2]|0,f[$>>2]|0)|0)>>>0);r=f[ue>>2]|0;t=f[oe>>2]|0}re=re+1|0}while(re>>>0<(ie(r,t)|0)>>>0);i=f[de>>2]|0}le=le+1|0}while(le>>>0<i>>>0);r=f[Ae>>2]|0}be=be+1|0;if(be>>>0>=r>>>0){r=1;P=201;break}}if((P|0)==201)return r|0;return 0}function za(e,i,r,l,c){e=e|0;i=i|0;r=r|0;l=l|0;c=c|0;var h=0,d=0,b=0,k=0,w=0,_=0,m=0.0,v=0.0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,z=0,Y=0,q=0,X=0,V=0.0,G=0,K=0,W=0,Z=0,J=0,Q=0,$=0,ee=0,re=0,te=0,ne=0,fe=0,ae=0,se=0,le=0.0,oe=0,ue=0,ce=0,he=0,de=0,be=0,ke=0,we=0,_e=0,me=0,ve=0,pe=0,ge=0,ye=0,Me=0,Ee=0,Ae=0,Se=0,Te=0,Ce=0,Re=0,Le=0,xe=0,Pe=0,Oe=0,Be=0,Ie=0,De=0,Ne=0,Fe=0,Ue=0,je=0,He=0,ze=0,Ye=0,qe=0,Xe=0,Ve=0,Ge=0,Ke=0,We=0,Ze=0,Je=0,Qe=0,$e=0;Ze=i+32|0;u[Ze>>3]=0.0;Je=i+16|0;h=f[Je>>2]|0;if(!h){Qe=1;return Qe|0}We=i+20|0;qe=r+5584|0;Xe=e+16|0;Ve=e+20|0;Ge=e+8|0;Ke=e+36|0;He=(l|0)!=0;ze=e+32|0;Ye=e+12|0;i=h;je=0;e:while(1){r=f[We>>2]|0;h=f[qe>>2]|0;Fe=(f[r+(je*52|0)+8>>2]|0)-(f[r+(je*52|0)>>2]|0)|0;Ue=r+(je*52|0)+16|0;d=f[Ue>>2]|0;if(d){Ne=r+(je*52|0)+24|0;Ie=r+(je*52|0)+32|0;De=h+(je*1080|0)+20|0;Pe=h+(je*1080|0)+16|0;Be=He&je>>>0<c>>>0;Oe=l+(je<<3)|0;i=d;xe=0;do{Re=f[Ne>>2]|0;Le=Re+(xe*136|0)+24|0;r=f[Le>>2]|0;if(r){Ae=Re+(xe*136|0)+16|0;Se=Re+(xe*136|0)+20|0;Te=~xe;Ce=xe+-1|0;i=f[Se>>2]|0;h=f[Ae>>2]|0;Ee=0;do{Me=Re+(xe*136|0)+28+(Ee*36|0)+32|0;if(ie(i,h)|0){_e=67108864/(~~+H(+(+o[Me>>2]*8192.0))|0)|0;me=Re+(xe*136|0)+28+(Ee*36|0)+20|0;ve=Re+(xe*136|0)+28+(Ee*36|0)|0;pe=Re+(xe*136|0)+28+(Ee*36|0)+4|0;ge=Re+(xe*136|0)+28+(Ee*36|0)+16|0;ye=((_e|0)<0)<<31>>31;we=0;do{r=f[me>>2]|0;be=r+(we*40|0)+16|0;ke=r+(we*40|0)+20|0;if(ie(f[ke>>2]|0,f[be>>2]|0)|0){he=r+(we*40|0)+24|0;de=0;do{ce=f[he>>2]|0;d=f[ce+(de*52|0)+12>>2]|0;i=d-(f[ve>>2]|0)|0;b=f[ce+(de*52|0)+16>>2]|0;r=b-(f[pe>>2]|0)|0;h=f[ge>>2]|0;if(h&1){ue=f[Ne>>2]|0;i=(f[ue+(Ce*136|0)+8>>2]|0)+i-(f[ue+(Ce*136|0)>>2]|0)|0}if(h&2){ue=f[Ne>>2]|0;r=(f[ue+(Ce*136|0)+12>>2]|0)+r-(f[ue+(Ce*136|0)+4>>2]|0)|0}if(!(Ya(e,(f[ce+(de*52|0)+20>>2]|0)-d|0,(f[ce+(de*52|0)+24>>2]|0)-b|0)|0)){i=0;Qe=173;break e}k=f[Xe>>2]|0;w=f[Ve>>2]|0;_=Fe-k|0;p=(ie(r,Fe)|0)+i|0;g=f[Ie>>2]|0;f[Ge>>2]=g+(p<<2);f[Ke>>2]=Fe;i=(w|0)==0;if((f[De>>2]|0)==1){if(!i){d=(k|0)==0;b=0;i=0;while(1){if(!d){r=0;h=i;while(1){ue=g+(h+p<<2)|0;f[ue>>2]=f[ue>>2]<<6;r=r+1|0;if((r|0)==(k|0))break;else h=h+1|0}i=k+i|0}b=b+1|0;if((b|0)==(w|0))break;else i=i+_|0}}}else if(!i){d=(k|0)==0;b=0;i=0;while(1){if(!d){r=0;h=i;while(1){ue=g+(h+p<<2)|0;oe=f[ue>>2]|0;oe=zl(oe|0,((oe|0)<0)<<31>>31|0,_e|0,ye|0)|0;oe=Il(oe|0,x|0,4096,0)|0;oe=Dl(oe|0,x|0,18)|0;f[ue>>2]=oe;r=r+1|0;if((r|0)==(k|0))break;else h=h+1|0}i=k+i|0}b=b+1|0;if((b|0)==(w|0))break;else i=i+_|0}}ae=f[ge>>2]|0;se=(f[Ue>>2]|0)+Te|0;_=f[De>>2]|0;le=+o[Me>>2];oe=f[Pe>>2]|0;ue=f[e>>2]|0;d=f[Xe>>2]|0;do{if(!d)i=0;else{b=f[Ve>>2]|0;k=(b|0)==0;w=0;i=0;do{if(!k){r=f[Ke>>2]|0;h=0;do{fe=f[g+(p+((ie(h,r)|0)+w)<<2)>>2]|0;fe=(fe|0)>-1?fe:0-fe|0;i=(i|0)>(fe|0)?i:fe;h=h+1|0}while((h|0)!=(b|0))}w=w+1|0}while((w|0)!=(d|0));if(!i){i=0;break}if((i|0)>1){r=i;i=0}else{i=-5;break}while(1){r=r>>1;if((r|0)<=1)break;else i=i+1|0}i=i+-4|0}}while(0);ne=ce+(de*52|0)+28|0;f[ne>>2]=i;i=i+-1|0;ss(ue);ls(ue,18,0,46);ls(ue,17,0,3);ls(ue,0,0,4);fe=ce+(de*52|0)|0;is(ue,f[fe>>2]|0);i:do{if((i|0)>-1){re=ce+(de*52|0)+8|0;K=oe&1;te=(K|0)!=0;W=(_|0)==1;Z=(oe&4|0)==0;K=(K|0)==0;J=(oe&2|0)==0;Q=(oe&8|0)==0;$=ae<<8;ee=(oe&32|0)==0;r=0;X=i;V=0.0;i=0;G=2;while(1){q=f[re>>2]|0;B=te&(G>>>0<2?(X|0)<((f[ne>>2]|0)+-4|0):0);r:do{switch(G|0){case 0:{P=1<<X+6;r=f[Ve>>2]|0;if(!r){d=0;break r}O=(X|0)==0;b=f[Xe>>2]|0;h=b;d=0;L=0;do{R=L;L=L+4|0;if(!h)h=0;else{T=(R|0)==-4;C=R|3;h=b;S=0;do{if(!T){A=R;do{r=f[Ve>>2]|0;if(A>>>0>=r>>>0)break;do{if(Q)r=0;else{if((A|0)==(C|0)){r=1;break}r=(A|0)==(r+-1|0)}}while(0);k=A;A=A+1|0;p=(ie(f[ze>>2]|0,A)|0)+S|0;g=p+1|0;y=f[Ye>>2]|0;E=y+(g<<1)|0;k=(ie(f[Ke>>2]|0,k)|0)+S|0;k=(f[Ge>>2]|0)+(k<<2)|0;M=f[e>>2]|0;w=n[E>>1]|0;w=r?w&-1095:w;r=w&255;if((r|0)!=0&(w&20480|0)==0){h=f[k>>2]|0;h=(((h|0)<0?0-h|0:h)&P|0)!=0;b=h&1;_=M+100|0;f[_>>2]=M+24+(a[20267+(r|$)>>0]<<2);if(B)fs(M,b);else rs(M,b);if(h){r=f[k>>2]|0;h=r>>>31;r=(r|0)<0?0-r|0:r;if(O)r=3708+((r&127)<<1)|0;else r=3452+((r>>>X&127)<<1)|0;d=(n[r>>1]|0)+d|0;r=w>>>4&255;f[_>>2]=M+24+(a[21291+r>>0]<<2);if(B)fs(M,h);else rs(M,a[21547+r>>0]^h);z=f[ze>>2]|0;Y=y+(g-z<<1)|0;j=y+(z+g<<1)|0;U=y+(g+~z<<1)|0;n[U>>1]=s[U>>1]|2;n[Y>>1]=n[Y>>1]|n[3436+(h<<1)>>1];Y=p+2|0;U=y+(Y-z<<1)|0;n[U>>1]=s[U>>1]|4;U=y+(p<<1)|0;n[U>>1]=n[U>>1]|n[3436+((h|2)<<1)>>1];n[E>>1]=s[E>>1]|4096;U=y+(Y<<1)|0;n[U>>1]=n[U>>1]|n[3436+((h|4)<<1)>>1];U=y+(z+p<<1)|0;n[U>>1]=s[U>>1]|1;n[j>>1]=n[j>>1]|n[3436+((h|6)<<1)>>1];Y=y+(z+Y<<1)|0;n[Y>>1]=s[Y>>1]|8}n[E>>1]=s[E>>1]|16384}}while(A>>>0<L>>>0);h=f[Xe>>2]|0}S=S+1|0}while(S>>>0<h>>>0);r=f[Ve>>2]|0;b=h}}while(L>>>0<r>>>0);break}case 1:{S=1<<X+6;r=f[Ve>>2]|0;if(!r){d=0;break r}T=(X|0)==0;b=f[Xe>>2]|0;h=b;d=0;A=0;do{E=A;A=A+4|0;if(!h)h=0;else{y=(E|0)==-4;M=E|3;h=b;g=0;do{p=g;g=g+1|0;if(!y){_=E;do{r=f[Ve>>2]|0;if(_>>>0>=r>>>0)break;do{if(Q)r=0;else{if((_|0)==(M|0)){r=1;break}r=(_|0)==(r+-1|0)}}while(0);h=_;_=_+1|0;k=(ie(f[ze>>2]|0,_)|0)+g|0;k=(f[Ye>>2]|0)+(k<<1)|0;w=f[e>>2]|0;b=n[k>>1]|0;b=r?b&-1095:b;if((b&20480|0)==4096){h=f[(f[Ge>>2]|0)+((ie(f[Ke>>2]|0,h)|0)+p<<2)>>2]|0;h=(h|0)<0?0-h|0:h;if(T)r=4220+((h&127)<<1)|0;else r=3964+((h>>>X&127)<<1)|0;d=(n[r>>1]|0)+d|0;r=(h&S|0)!=0&1;f[w+100>>2]=w+24+(((b&8192|0)!=0?16:(b&255|0)!=0?15:14)<<2);if(B)fs(w,r);else rs(w,r);n[k>>1]=s[k>>1]|8192}}while(_>>>0<A>>>0);h=f[Xe>>2]|0}}while(g>>>0<h>>>0);r=f[Ve>>2]|0;b=h}}while(A>>>0<r>>>0);break}case 2:{N=f[e>>2]|0;F=1<<X+6;h=f[Ve>>2]|0;if(!h)r=0;else{U=N+92|0;j=N+100|0;z=N+96|0;Y=(X|0)==0;d=f[Xe>>2]|0;r=0;D=0;while(1){if(!d){b=D+4|0;d=0}else{C=D|3;R=D|1;L=R+1|0;P=R+3|0;b=D+4|0;O=D+1|0;B=D+2|0;I=D+3|0;T=0;while(1){do{if(C>>>0<h>>>0){h=f[ze>>2]|0;w=T+1|0;k=(ie(h,R)|0)+w|0;d=f[Ye>>2]|0;k=n[d+(k<<1)>>1]|0;if(Q){S=n[d+((ie(h,L)|0)+w<<1)>>1]|k;S=S|n[d+((ie(h,C)|0)+w<<1)>>1];h=((S|n[d+((ie(h,P)|0)+w<<1)>>1])&20735)==0&1}else{do{if(!(k&20735)){if(n[d+((ie(h,L)|0)+w<<1)>>1]&20735){h=1;break}if(n[d+((ie(h,C)|0)+w<<1)>>1]&20735){h=1;break}h=(n[d+((ie(h,P)|0)+w<<1)>>1]&20665)!=0}else h=1}while(0);h=h&1^1}if(!h){S=0;h=0;Qe=109;break}h=f[Ke>>2]|0;d=f[Ge>>2]|0;S=f[d+((ie(h,D)|0)+T<<2)>>2]|0;do{if(!(((S|0)<0?0-S|0:S)&F)){S=f[d+((ie(h,O)|0)+T<<2)>>2]|0;if(((S|0)<0?0-S|0:S)&F){h=1;break}S=f[d+((ie(h,B)|0)+T<<2)>>2]|0;if(((S|0)<0?0-S|0:S)&F){h=2;break}h=f[d+((ie(h,I)|0)+T<<2)>>2]|0;h=(((h|0)<0?0-h|0:h)&F|0)==0?4:3}else h=0}while(0);f[j>>2]=U;rs(N,(h|0)!=4&1);if((h|0)==4){k=w;break}f[j>>2]=z;rs(N,h>>>1);rs(N,h&1);S=1;Qe=109}else{S=0;h=0;Qe=109}}while(0);if((Qe|0)==109){Qe=0;A=h+D|0;t:do{if(A>>>0<b>>>0){E=A;do{h=f[Ve>>2]|0;if(E>>>0>=h>>>0)break t;do{if(Q)h=0;else{if((E|0)==(C|0)){h=1;break}h=(E|0)==(h+-1|0)}}while(0);$e=E;E=E+1|0;_=(ie(f[ze>>2]|0,E)|0)+T|0;p=_+1|0;g=f[Ye>>2]|0;M=g+(p<<1)|0;d=(ie(f[Ke>>2]|0,$e)|0)+T|0;d=(f[Ge>>2]|0)+(d<<2)|0;y=f[e>>2]|0;k=n[M>>1]|0;w=h?k&-1095:k;do{if(!(S&($e|0)==(A|0))){if(k&20480)break;f[y+100>>2]=y+24+(a[20267+(w&255|$)>>0]<<2);$e=f[d>>2]|0;$e=((($e|0)<0?0-$e|0:$e)&F|0)!=0;rs(y,$e&1);if($e)Qe=117}else Qe=117}while(0);if((Qe|0)==117){Qe=0;d=f[d>>2]|0;h=(d|0)<0?0-d|0:d;if(Y)h=3708+((h&127)<<1)|0;else h=3452+((h>>>X&127)<<1)|0;r=(n[h>>1]|0)+r|0;$e=w>>>4&255;f[y+100>>2]=y+24+(a[21291+$e>>0]<<2);k=d>>>31;rs(y,a[21547+$e>>0]^k);y=f[ze>>2]|0;$e=g+(p-y<<1)|0;w=g+(y+p<<1)|0;p=g+(p+~y<<1)|0;n[p>>1]=s[p>>1]|2;n[$e>>1]=n[$e>>1]|n[3436+(k<<1)>>1];$e=_+2|0;p=g+($e-y<<1)|0;n[p>>1]=s[p>>1]|4;p=g+(_<<1)|0;n[p>>1]=n[p>>1]|n[3436+((k|2)<<1)>>1];n[M>>1]=s[M>>1]|4096;p=g+($e<<1)|0;n[p>>1]=n[p>>1]|n[3436+((k|4)<<1)>>1];p=g+(y+_<<1)|0;n[p>>1]=s[p>>1]|1;n[w>>1]=n[w>>1]|n[3436+((k|6)<<1)>>1];$e=g+(y+$e<<1)|0;n[$e>>1]=s[$e>>1]|8}n[M>>1]=s[M>>1]&49151}while(E>>>0<b>>>0)}}while(0);k=T+1|0}d=f[Xe>>2]|0;h=f[Ve>>2]|0;if(k>>>0<d>>>0)T=k;else break}}if(b>>>0<h>>>0)D=b;else break}}if(ee){d=r;break r}cs(ue);d=r;break}default:d=r}}while(0);if(Be)m=+u[Oe>>3];else m=1.0;if(W)v=+Aa(se,ae);else v=+Ca(se,ae);v=+(1<<X|0)*(le*(m*v));v=v*(+(d|0)*v*.0001220703125);V=V+v;u[Ze>>3]=+u[Ze>>3]+v;do{if(Z)Qe=137;else{if((X|0)<1&(G|0)==2){Qe=137;break}ts(ue);h=q+(i*24|0)+20|0;r=t[h>>0]|1;t[h>>0]=r;h=1}}while(0);do{if((Qe|0)==137){r=(f[ne>>2]|0)+-4|0;if((G|0)!=0&(X|0)<(r|0))if(K)Qe=141;else Qe=140;else if(K|((G|0)!=2|(X|0)!=(r|0)))Qe=141;else Qe=140;if((Qe|0)==140){Qe=0;ts(ue);h=q+(i*24|0)+20|0;r=t[h>>0]|1;t[h>>0]=r;h=1;break}else if((Qe|0)==141){Qe=0;h=q+(i*24|0)+20|0;r=t[h>>0]&-2;t[h>>0]=r;h=3;break}}}while(0);Y=G+1|0;$e=(Y|0)==3;G=$e?0:Y;X=($e<<31>>31)+X|0;do{if((X|0)>0&(r&1)!=0)if(te&(G>>>0<2?(X|0)<((f[ne>>2]|0)+-4|0):0)){ns(ue);break}else{os(ue);break}}while(0);u[q+(i*24|0)+8>>3]=V;f[q+(i*24|0)>>2]=(es(ue)|0)+h;if(!J)as(ue);i=i+1|0;if((X|0)<=-1)break i;else r=d}}else i=0}while(0);do{if(!(oe&16)){if(oe&1)break;ts(ue)}else us(ue)}while(0);w=ce+(de*52|0)+48|0;f[w>>2]=i;if(i){d=ce+(de*52|0)+8|0;k=0;do{b=f[d>>2]|0;r=b+(k*24|0)|0;$e=f[r>>2]|0;if($e>>>0>(es(ue)|0)>>>0){i=es(ue)|0;f[r>>2]=i}else i=f[r>>2]|0;do{if(i>>>0>1){h=i+-1|0;if((t[(f[fe>>2]|0)+h>>0]|0)!=-1)break;f[r>>2]=h;i=h}}while(0);if(!k)r=0;else r=f[(f[d>>2]|0)+((k+-1|0)*24|0)>>2]|0;f[b+(k*24|0)+16>>2]=i-r;k=k+1|0}while(k>>>0<(f[w>>2]|0)>>>0)}de=de+1|0}while(de>>>0<(ie(f[ke>>2]|0,f[be>>2]|0)|0)>>>0);i=f[Se>>2]|0;h=f[Ae>>2]|0}we=we+1|0}while(we>>>0<(ie(i,h)|0)>>>0);r=f[Le>>2]|0}Ee=Ee+1|0}while(Ee>>>0<r>>>0);i=f[Ue>>2]|0}xe=xe+1|0}while(xe>>>0<i>>>0);i=f[Je>>2]|0}je=je+1|0;if(je>>>0>=i>>>0){i=1;Qe=173;break}}if((Qe|0)==173)return i|0;return 0}function Ya(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0;a=ie(r,i)|0;if(!(f[e+40>>2]|0)){s=e+24|0;l=e+8|0;t=f[l>>2]|0;do{if(a>>>0>(f[s>>2]|0)>>>0){jn(t);n=a<<2;t=Un(n)|0;f[l>>2]=t;if(!t){i=0;return i|0}else{f[s>>2]=a;break}}else n=a<<2}while(0);Ol(t|0,0,n|0)|0}a=i+2|0;f[e+32>>2]=a;a=ie(r+2|0,a)|0;s=e+28|0;l=e+12|0;t=f[l>>2]|0;do{if(a>>>0>(f[s>>2]|0)>>>0){jn(t);n=a<<1;t=Un(n)|0;f[l>>2]=t;if(!t){i=0;return i|0}else{f[s>>2]=a;break}}else n=a<<1}while(0);Ol(t|0,0,n|0)|0;f[e+16>>2]=i;f[e+20>>2]=r;i=1;return i|0}function qa(e,i,r,t,l){e=e|0;i=i|0;r=r|0;t=t|0;l=l|0;var o=0,u=0,c=0,h=0;o=f[e>>2]|0;c=n[i>>1]|0;h=c&255;if(!((h|0)!=0&(c&20480|0)==0))return;u=o+100|0;f[u>>2]=o+24+(a[20267+(h|t<<8)>>0]<<2);if(ds(o)|0){t=c>>>4&255;f[u>>2]=o+24+(a[21291+t>>0]<<2);c=ds(o)|0;t=a[21547+t>>0]|0;h=t^c;f[r>>2]=(c|0)!=(t|0)?0-l|0:l;e=f[e+32>>2]|0;l=i+(0-e<<1)|0;t=i+(e<<1)|0;r=i+(~e<<1)|0;n[r>>1]=s[r>>1]|2;n[l>>1]=n[l>>1]|n[3436+(h<<1)>>1];l=i+(1-e<<1)|0;n[l>>1]=s[l>>1]|4;l=i+-2|0;n[l>>1]=n[l>>1]|n[3436+(h+2<<1)>>1];n[i>>1]=s[i>>1]|4096;l=i+2|0;n[l>>1]=n[l>>1]|n[3436+(h+4<<1)>>1];l=i+(e+-1<<1)|0;n[l>>1]=s[l>>1]|1;n[t>>1]=n[t>>1]|n[3436+(h+6<<1)>>1];e=i+(e+1<<1)|0;n[e>>1]=s[e>>1]|8}n[i>>1]=s[i>>1]|16384;return}function Xa(e,i,r,t,l){e=e|0;i=i|0;r=r|0;t=t|0;l=l|0;var o=0,u=0,c=0;o=f[e>>2]|0;c=n[i>>1]|0;if(c&20480){e=n[i>>1]|0;e=e&65535;e=e&49151;e=e&65535;n[i>>1]=e;return}u=o+100|0;f[u>>2]=o+24+(a[20267+(c&255|t<<8)>>0]<<2);if(!(ds(o)|0)){e=n[i>>1]|0;e=e&65535;e=e&49151;e=e&65535;n[i>>1]=e;return}t=c>>>4&255;f[u>>2]=o+24+(a[21291+t>>0]<<2);u=ds(o)|0;t=a[21547+t>>0]|0;c=t^u;f[r>>2]=(u|0)!=(t|0)?0-l|0:l;e=f[e+32>>2]|0;l=i+(0-e<<1)|0;t=i+(e<<1)|0;r=i+(~e<<1)|0;n[r>>1]=s[r>>1]|2;n[l>>1]=n[l>>1]|n[3436+(c<<1)>>1];l=i+(1-e<<1)|0;n[l>>1]=s[l>>1]|4;l=i+-2|0;n[l>>1]=n[l>>1]|n[3436+(c+2<<1)>>1];n[i>>1]=s[i>>1]|4096;l=i+2|0;n[l>>1]=n[l>>1]|n[3436+(c+4<<1)>>1];l=i+(e+-1<<1)|0;n[l>>1]=s[l>>1]|1;n[t>>1]=n[t>>1]|n[3436+(c+6<<1)>>1];e=i+(e+1<<1)|0;n[e>>1]=s[e>>1]|8;e=n[i>>1]|0;e=e&65535;e=e&49151;e=e&65535;n[i>>1]=e;return}function Va(e,i,r,t,s,l,o,u,h,d,b,k){e=e|0;i=i|0;r=r|0;t=t|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;d=d|0;b=b|0;k=k|0;var w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,P=0,O=0,B=0;B=c;c=c+16|0;O=B;f[O>>2]=0;w=f[e>>2]|0;C=f[e+4>>2]|0;e=f[C+76>>2]|0;L=e+(i*5640|0)|0;m=(n[C>>1]|0)==4?2:1;v=C+80|0;if(!(f[v>>2]|0))_=1;else _=f[w+16>>2]|0;P=(f[e+(i*5640|0)+420>>2]|0)+1|0;R=yr(w,C,i,k)|0;if(!R){i=0;c=B;return i|0}f[l>>2]=0;e:do{if(!k){if(_){e=0;i:while(1){k=0;b=R;w=0;while(1){Mr(R,C,i,w,e,d,0);if((f[b+80>>2]|0)==-1){e=9;break i}h=b+36|0;r:while(1){do{if(!(Ar(b)|0))break r}while((f[h>>2]|0)>>>0>=t>>>0);f[O>>2]=0;if(!(Za(i,r,L,b,s,O,o,u)|0)){e=13;break i}T=f[O>>2]|0;f[l>>2]=(f[l>>2]|0)+T;o=o-T|0;k=T+k|0;s=s+T|0}T=f[v>>2]|0;if((T|0)!=0&k>>>0>T>>>0){e=17;break i}w=w+1|0;if(w>>>0<m>>>0)b=b+232|0;else break}e=e+1|0;if(e>>>0>=_>>>0)break e}if((e|0)==9){gr(R,P);i=0;c=B;return i|0}else if((e|0)==13){gr(R,P);i=0;c=B;return i|0}else if((e|0)==17){gr(R,P);i=0;c=B;return i|0}}}else{Mr(R,C,i,b,h,d,k);A=R+(b*232|0)|0;if((f[R+(b*232|0)+80>>2]|0)==-1){gr(R,P);i=0;c=B;return i|0}d=R+(b*232|0)+36|0;p=(u|0)==0;g=r+840|0;y=u+12|0;M=u+8|0;E=u+88|0;v=C+93|0;m=e+(i*5640|0)+5636|0;while(1){do{if(!(Ar(A)|0))break e}while((f[d>>2]|0)>>>0>=t>>>0);f[O>>2]=0;if(!(Za(i,r,L,A,s,O,o,u)|0))break;_=f[O>>2]|0;s=s+_|0;o=o-_|0;f[l>>2]=(f[l>>2]|0)+_;if(!p){if(!(f[y>>2]|0))e=f[M>>2]|0;else{w=f[E>>2]|0;e=f[M>>2]|0;b=f[w+(i*592|0)+548>>2]|0;k=b+(e<<5)|0;if(!e){h=(f[w+(i*592|0)+12>>2]|0)+1|0;w=((h|0)<0)<<31>>31;C=k;f[C>>2]=h;f[C+4>>2]=w}else{if((((a[m>>0]|0)>>>2|(a[v>>0]|0)>>>3)&1)!=0?(T=k,S=f[T>>2]|0,T=f[T+4>>2]|0,!((S|0)==0&(T|0)==0)):0){h=S;w=T}else{h=b+(e+-1<<5)+16|0;h=Il(f[h>>2]|0,f[h+4>>2]|0,1,0)|0;w=x}C=k;f[C>>2]=h;f[C+4>>2]=w}k=Il(h|0,w|0,-1,-1)|0;h=x;_=Il(k|0,h|0,_|0,0)|0;C=b+(e<<5)+16|0;f[C>>2]=_;f[C+4>>2]=x;C=b+(e<<5)+8|0;_=C;_=Il(k|0,h|0,f[_>>2]|0,f[_+4>>2]|0)|0;f[C>>2]=_;f[C+4>>2]=x}f[M>>2]=e+1}f[g>>2]=(f[g>>2]|0)+1}gr(R,P);i=0;c=B;return i|0}}while(0);gr(R,P);i=1;c=B;return i|0}function Ga(e,i,r,t,n,a,s,l){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0,V=0,G=0,K=0,W=0,Z=0,J=0,Q=0,$=0;Q=c;c=c+112|0;K=Q+64|0;W=Q+32|0;q=Q;Y=Q+96|0;z=Q+92|0;o=f[e>>2]|0;F=e+4|0;J=f[F>>2]|0;s=f[J+76>>2]|0;j=s+(i*5640|0)|0;H=s+(i*5640|0)+420|0;Z=(f[H>>2]|0)+1|0;J=pr(o,J,i)|0;if(!J){$=0;c=Q;return $|0}U=o+16|0;N=s+(i*5640|0)+12|0;D=r+20|0;I=o+24|0;i=a;e=t;O=J;B=0;e:while(1){if((f[O+80>>2]|0)==-1){$=4;break}s=Nn(f[U>>2]<<2)|0;if(!s){$=6;break}Ol(s|0,1,f[U>>2]<<2|0)|0;if(Ar(O)|0){a=O+24|0;r=O+28|0;P=O+36|0;o=O+32|0;x=i;L=e;while(1){if((f[N>>2]|0)>>>0>(f[P>>2]|0)>>>0){i=f[a>>2]|0;e=f[D>>2]|0;if((f[r>>2]|0)>>>0<(f[e+(i*52|0)+20>>2]|0)>>>0){f[s+(i<<2)>>2]=0;R=f[F>>2]|0;f[z>>2]=0;if(!(Ja(R,e,j,O,Y,L,z,x,l)|0)){$=45;break e}C=f[z>>2]|0;if(!(f[Y>>2]|0))e=C;else{T=x-C|0;A=L+C|0;f[z>>2]=0;i=f[r>>2]|0;u=f[(f[D>>2]|0)+((f[a>>2]|0)*52|0)+24>>2]|0;M=u+(i*136|0)+24|0;e=f[M>>2]|0;i:do{if(!e){e=A;$=43}else{E=L+x|0;h=e;R=0;y=u+(i*136|0)+28|0;u=A;r:while(1){e=f[o>>2]|0;i=f[y+20>>2]|0;if(((f[y+8>>2]|0)!=(f[y>>2]|0)?(f[y+12>>2]|0)!=(f[y+4>>2]|0):0)?(G=ie(f[i+(e*40|0)+20>>2]|0,f[i+(e*40|0)+16>>2]|0)|0,(G|0)!=0):0){S=0;e=f[i+(e*40|0)+24>>2]|0;k=u;while(1){p=e+40|0;if(!(f[p>>2]|0))i=k;else{g=e+44|0;i=f[g>>2]|0;do{if(!i){b=f[e+4>>2]|0;f[g>>2]=1;f[e+36>>2]=0}else{u=i+-1|0;h=f[e+4>>2]|0;if((f[h+(u<<5)+8>>2]|0)!=(f[h+(u<<5)+20>>2]|0)){b=h+(u<<5)|0;break}f[g>>2]=i+1;b=h+(i<<5)|0}}while(0);v=e+36|0;i=e+32|0;m=k;d=b+28|0;u=f[d>>2]|0;if((u+m|0)>>>0<m>>>0|(k+u|0)>>>0>E>>>0){i=R;e=S;break r}h=f[v>>2]|0;m=k;_=b;while(1){b=u+h|0;if(b>>>0<h>>>0){i=R;e=S;$=29;break e}k=f[e>>2]|0;if(b>>>0>(f[i>>2]|0)>>>0){u=Hn(k,b)|0;if(!u){$=32;break e}h=f[v>>2]|0;w=f[d>>2]|0;f[i>>2]=w+h;f[e>>2]=u;k=u;u=w}Nl(k+h|0,m|0,u|0)|0;u=_+8|0;h=f[u>>2]|0;if(!h){f[_>>2]=e;b=f[v>>2]|0;f[_+4>>2]=b}else b=f[v>>2]|0;k=f[d>>2]|0;w=m;m=m+k|0;d=f[_+24>>2]|0;h=d+h|0;f[u>>2]=h;u=f[p>>2]|0;f[p>>2]=u-d;f[_+12>>2]=h;h=k+b|0;f[v>>2]=h;b=_+16|0;f[b>>2]=(f[b>>2]|0)+k;if((u|0)==(d|0)){i=m;break}f[g>>2]=(f[g>>2]|0)+1;b=m;d=_+60|0;u=f[d>>2]|0;if((u+b|0)>>>0<b>>>0?1:(w+(u+k)|0)>>>0>E>>>0){i=R;e=S;break r}else _=_+32|0}f[e+48>>2]=f[g>>2]}S=S+1|0;if(S>>>0>=G>>>0){e=i;break}else{e=e+56|0;k=i}}i=f[M>>2]|0}else{i=h;e=u}R=R+1|0;if(R>>>0>=i>>>0){$=43;break i}else{h=i;y=y+36|0;u=e}}A=f[o>>2]|0;S=f[r>>2]|0;R=f[a>>2]|0;f[q>>2]=u;f[q+4>>2]=T;f[q+8>>2]=e;f[q+12>>2]=A;f[q+16>>2]=i;f[q+20>>2]=S;f[q+24>>2]=R;Ht(l,2,21803,q)|0;e=f[z>>2]|0}}while(0);if(($|0)==43){$=0;e=e-A|0;f[z>>2]=e}e=e+C|0}u=f[a>>2]|0;C=f[r>>2]|0;i=(f[I>>2]|0)+(u*52|0)+36|0;R=f[i>>2]|0;f[i>>2]=C>>>0>R>>>0?C:R;i=e}else $=47}else{e=f[D>>2]|0;$=47}if(($|0)==47){$=0;R=f[F>>2]|0;f[z>>2]=0;if(!(Ja(R,e,j,O,Y,L,z,x,l)|0)){$=69;break e}p=f[z>>2]|0;if(!(f[Y>>2]|0))e=p;else{u=x-p|0;y=f[r>>2]|0;M=f[a>>2]|0;e=f[(f[D>>2]|0)+(M*52|0)+24>>2]|0;f[z>>2]=0;v=f[e+(y*136|0)+24>>2]|0;if(!v)e=0;else{g=f[o>>2]|0;i=0;m=e+(y*136|0)+28|0;while(1){h=f[m+20>>2]|0;if(((f[m+8>>2]|0)!=(f[m>>2]|0)?(f[m+12>>2]|0)!=(f[m+4>>2]|0):0)?(X=ie(f[h+(g*40|0)+20>>2]|0,f[h+(g*40|0)+16>>2]|0)|0,(X|0)!=0):0){e=0;_=f[h+(g*40|0)+24>>2]|0;while(1){k=_+40|0;i:do{if(f[k>>2]|0){w=_+44|0;h=f[w>>2]|0;do{if(!h){b=f[_+4>>2]|0;f[w>>2]=1;f[_+36>>2]=0}else{d=h+-1|0;b=f[_+4>>2]|0;if((f[b+(d<<5)+8>>2]|0)!=(f[b+(d<<5)+20>>2]|0)){b=b+(d<<5)|0;break}f[w>>2]=h+1;b=b+(h<<5)|0}}while(0);R=f[z>>2]|0;h=f[b+28>>2]|0;d=h+R|0;if(d>>>0<R>>>0|d>>>0>u>>>0){a=g;r=y;o=M;$=65;break e}while(1){f[z>>2]=d;R=f[b+24>>2]|0;C=b+8|0;f[C>>2]=(f[C>>2]|0)+R;C=f[k>>2]|0;f[k>>2]=C-R;if((C|0)==(R|0))break i;f[w>>2]=(f[w>>2]|0)+1;R=f[z>>2]|0;h=f[b+60>>2]|0;d=h+R|0;if(d>>>0<R>>>0|d>>>0>u>>>0){a=g;r=y;o=M;$=65;break e}else b=b+32|0}}}while(0);e=e+1|0;if(e>>>0>=X>>>0)break;else _=_+56|0}}i=i+1|0;if(i>>>0>=v>>>0)break;else m=m+36|0}e=f[z>>2]|0}e=e+p|0}u=f[a>>2]|0;i=e}if((f[s+(u<<2)>>2]|0)!=0?(V=(f[I>>2]|0)+(u*52|0)+36|0,(f[V>>2]|0)==0):0)f[V>>2]=(f[(f[D>>2]|0)+(u*52|0)+20>>2]|0)+-1;e=L+i|0;i=x-i|0;if(!(Ar(O)|0))break;else{x=i;L=e}}}zn(s);B=B+1|0;if(B>>>0>(f[H>>2]|0)>>>0){s=e;$=75;break}else O=O+232|0}if(($|0)==4){gr(J,Z);$=0;c=Q;return $|0}else if(($|0)==6){gr(J,Z);$=0;c=Q;return $|0}else if(($|0)==29){n=f[o>>2]|0;t=f[r>>2]|0;K=f[a>>2]|0;f[W>>2]=u;f[W+4>>2]=h;f[W+8>>2]=~u;f[W+12>>2]=e;f[W+16>>2]=n;f[W+20>>2]=i;f[W+24>>2]=t;f[W+28>>2]=K;Ht(l,1,21888,W)|0;$=45}else if(($|0)==32){zn(f[e>>2]|0);f[e>>2]=0;f[i>>2]=0;$=45}else if(($|0)==65){f[K>>2]=h;f[K+4>>2]=u;f[K+8>>2]=e;f[K+12>>2]=a;f[K+16>>2]=i;f[K+20>>2]=r;f[K+24>>2]=o;Ht(l,1,21987,K)|0;$=69}else if(($|0)==75){gr(J,Z);f[n>>2]=s-t;$=1;c=Q;return $|0}if(($|0)==45){gr(J,Z);zn(s);$=0;c=Q;return $|0}else if(($|0)==69){gr(J,Z);zn(s);$=0;c=Q;return $|0}return 0}function Ka(e,i){e=e|0;i=i|0;var r=0;r=Fn(1,8)|0;if(!r){e=0;return e|0}f[r>>2]=e;f[r+4>>2]=i;e=r;return e|0}function Wa(e){e=e|0;if(!e)return;zn(e);return}function Za(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0.0,I=0,D=0;m=f[n+28>>2]|0;I=f[n+32>>2]|0;D=f[n+36>>2]|0;_=f[(f[i+20>>2]|0)+((f[n+24>>2]|0)*52|0)+24>>2]|0;if(!(f[r>>2]&2))P=a;else{t[a>>0]=-1;t[a+1>>0]=-111;t[a+2>>0]=0;t[a+3>>0]=4;P=i+840|0;t[a+4>>0]=(f[P>>2]|0)>>>8;t[a+5>>0]=f[P>>2];l=l+-6|0;P=a+6|0}if((D|0)==0?(w=_+(m*136|0)+24|0,(f[w>>2]|0)!=0):0){b=_+(m*136|0)+28|0;k=0;while(1){n=f[b+20>>2]|0;Wr(f[n+(I*40|0)+32>>2]|0);h=n+(I*40|0)+36|0;Wr(f[h>>2]|0);d=ie(f[n+(I*40|0)+20>>2]|0,f[n+(I*40|0)+16>>2]|0)|0;if(d){n=n+(I*40|0)+24|0;i=b+28|0;c=0;do{O=f[n>>2]|0;f[O+(c*52|0)+40>>2]=0;na(f[h>>2]|0,c,(f[i>>2]|0)-(f[O+(c*52|0)+28>>2]|0)|0);c=c+1|0}while((c|0)!=(d|0))}k=k+1|0;if(k>>>0>=(f[w>>2]|0)>>>0)break;else b=b+36|0}}L=da()|0;if(!L){s=0;return s|0}wa(L,P,l);ma(L,1,1);x=_+(m*136|0)+28|0;O=_+(m*136|0)+24|0;if(f[O>>2]|0){S=D+1|0;C=x;R=0;while(1){d=f[C+20>>2]|0;T=ie(f[d+(I*40|0)+20>>2]|0,f[d+(I*40|0)+16>>2]|0)|0;b=d+(I*40|0)+24|0;n=(T|0)==0;if(!n){i=d+(I*40|0)+32|0;c=f[b>>2]|0;h=0;while(1){if((f[c+40>>2]|0)==0?(f[(f[c+4>>2]|0)+(D*24|0)>>2]|0)!=0:0)na(f[i>>2]|0,h,D);h=h+1|0;if((h|0)==(T|0))break;else c=c+52|0}if(!n){A=d+(I*40|0)+32|0;E=d+(I*40|0)+36|0;y=f[b>>2]|0;M=0;while(1){n=(f[y+4>>2]|0)+(D*24|0)|0;g=y+40|0;if(!(f[g>>2]|0))fa(L,f[A>>2]|0,M,S);else ma(L,(f[n>>2]|0)!=0&1,1);i=f[n>>2]|0;if(i){if(!(f[g>>2]|0)){f[y+32>>2]=3;fa(L,f[E>>2]|0,M,999);i=f[n>>2]|0}e:do{switch(i|0){case 1:{ma(L,0,1);break}case 2:{ma(L,2,2);break}default:{if(i>>>0<6){ma(L,i+-3|12,4);break e}if(i>>>0<37){ma(L,i+-6|480,9);break e}if(i>>>0<165)ma(L,i+-37|65408,16)}}}while(0);b=f[g>>2]|0;i=f[n>>2]|0;p=i+b|0;v=y+8|0;if(b>>>0<p>>>0){m=y+32|0;w=b+-1+i|0;h=0;d=0;c=0;_=(f[v>>2]|0)+(b*24|0)|0;while(1){c=c+1|0;d=(f[_+16>>2]|0)+d|0;if((t[_+20>>0]&1)!=0|(b|0)==(w|0)){if((d|0)>1){i=0;do{d=d>>1;i=i+1|0}while((d|0)>1)}else i=0;k=f[m>>2]|0;if((c|0)>1){d=0;do{c=c>>1;d=d+1|0}while((c|0)>1);c=d}else c=0;d=i+1-k-c|0;h=(h|0)>(d|0)?h:d;d=0;c=0}b=b+1|0;if((b|0)==(p|0))break;else _=_+24|0}if((h|0)>0){i=h;while(1){ma(L,1,1);if((i|0)>1)i=i+-1|0;else{i=d;break}}}else i=d}else{h=0;i=0;c=0}ma(L,0,1);w=y+32|0;f[w>>2]=(f[w>>2]|0)+h;h=f[g>>2]|0;if(h>>>0<p>>>0){k=(f[v>>2]|0)+(h*24|0)|0;while(1){c=c+1|0;d=(f[k+16>>2]|0)+i|0;if((t[k+20>>0]&1)==0?(h|0)!=((f[g>>2]|0)+-1+(f[n>>2]|0)|0):0)i=d;else{b=f[w>>2]|0;if((c|0)>1){i=0;do{c=c>>1;i=i+1|0}while((c|0)>1)}else i=0;ma(L,d,i+b|0);i=0;c=0}h=h+1|0;if((h|0)==(p|0))break;else k=k+24|0}}}M=M+1|0;if((M|0)==(T|0))break;else y=y+52|0}}}R=R+1|0;if(R>>>0>=(f[O>>2]|0)>>>0)break;else C=C+36|0}}if(!(pa(L)|0)){ba(L);s=0;return s|0}i=ka(L)|0;n=P+i|0;l=l-i|0;ba(L);if(f[r>>2]&4){t[n>>0]=-1;t[P+(i+1)>>0]=-110;l=l+-2|0;n=P+(i+2)|0}v=(o|0)!=0;if(v?(f[o+12>>2]|0)!=0:0){P=n-a|0;r=(f[(f[o+88>>2]|0)+(e*592|0)+548>>2]|0)+(f[o+8>>2]<<5)+8|0;f[r>>2]=P;f[r+4>>2]=((P|0)<0)<<31>>31}i=f[O>>2]|0;e:do{if(i){p=o+12|0;g=o+8|0;y=o+88|0;_=x;m=0;i:while(1){c=f[_+20>>2]|0;w=ie(f[c+(I*40|0)+20>>2]|0,f[c+(I*40|0)+16>>2]|0)|0;c=f[c+(I*40|0)+24>>2]|0;if(w){if(v){k=0;while(1){b=f[c+4>>2]|0;i=b+(D*24|0)|0;if(f[i>>2]|0){h=b+(D*24|0)+4|0;d=f[h>>2]|0;if(d>>>0>l>>>0){n=0;l=81;break i}Nl(n|0,f[b+(D*24|0)+16>>2]|0,d|0)|0;r=c+40|0;f[r>>2]=(f[r>>2]|0)+(f[i>>2]|0);r=f[h>>2]|0;n=n+r|0;l=l-r|0;if((f[p>>2]|0)!=0?(r=(f[(f[y>>2]|0)+(e*592|0)+548>>2]|0)+(f[g>>2]<<5)+24|0,B=+u[b+(D*24|0)+8>>3]+ +u[r>>3],u[r>>3]=B,+u[o>>3]<B):0)u[o>>3]=B}k=k+1|0;if(k>>>0>=w>>>0)break;else c=c+52|0}}else{k=0;while(1){i=f[c+4>>2]|0;h=i+(D*24|0)|0;if(f[h>>2]|0){d=i+(D*24|0)+4|0;b=f[d>>2]|0;if(b>>>0>l>>>0){n=0;l=81;break i}Nl(n|0,f[i+(D*24|0)+16>>2]|0,b|0)|0;r=c+40|0;f[r>>2]=(f[r>>2]|0)+(f[h>>2]|0);r=f[d>>2]|0;l=l-r|0;n=n+r|0}k=k+1|0;if(k>>>0>=w>>>0)break;else c=c+52|0}}i=f[O>>2]|0}m=m+1|0;if(m>>>0>=i>>>0)break e;else _=_+36|0}if((l|0)==81)return n|0}}while(0);f[s>>2]=n-a+(f[s>>2]|0);s=1;return s|0}function Ja(e,i,r,n,a,s,l,o,u){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;var h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0;U=c;c=c+64|0;N=U+40|0;D=U+32|0;M=U+24|0;y=U+16|0;p=U+8|0;v=U;g=U+48|0;F=U+44|0;f[F>>2]=s;A=f[n+28>>2]|0;I=n+24|0;E=f[i+((f[I>>2]|0)*52|0)+24>>2]|0;O=n+36|0;if((f[O>>2]|0)==0?(m=E+(A*136|0)+24|0,h=f[m>>2]|0,(h|0)!=0):0){_=n+32|0;k=0;w=E+(A*136|0)+28|0;while(1){i=f[_>>2]|0;d=f[w+20>>2]|0;if((f[w+8>>2]|0)!=(f[w>>2]|0)?(f[w+12>>2]|0)!=(f[w+4>>2]|0):0){Wr(f[d+(i*40|0)+32>>2]|0);Wr(f[d+(i*40|0)+36>>2]|0);h=ie(f[d+(i*40|0)+20>>2]|0,f[d+(i*40|0)+16>>2]|0)|0;if(h){b=0;i=f[d+(i*40|0)+24>>2]|0;while(1){f[i+44>>2]=0;f[i+48>>2]=0;b=b+1|0;if((b|0)==(h|0))break;else i=i+56|0}}h=f[m>>2]|0}k=k+1|0;if(k>>>0>=h>>>0)break;else w=w+36|0}}do{if(f[r>>2]&2){if(o>>>0<6){Ht(u,2,22072,v)|0;break}i=f[F>>2]|0;if((t[i>>0]|0)==-1?(t[i+1>>0]|0)==-111:0){f[F>>2]=i+6;break}Ht(u,2,22114,p)|0}}while(0);P=da()|0;if(!P){s=0;c=U;return s|0}do{if(!(t[e+96>>0]&1))if(!(t[r+5636>>0]&2)){L=f[F>>2]|0;f[g>>2]=s+o-L;x=F;break}else{x=r+5168|0;L=f[x>>2]|0;g=r+5180|0;break}else{x=e+40|0;L=f[x>>2]|0;g=e+44|0}}while(0);_a(P,L,f[g>>2]|0);if(!(va(P,1)|0)){ga(P)|0;h=ka(P)|0;i=L+h|0;ba(P);do{if(f[r>>2]&4){if(((f[g>>2]|0)-i+(f[x>>2]|0)|0)>>>0<2){Ht(u,2,22135,y)|0;break}if((t[i>>0]|0)==-1?(t[L+(h+1)>>0]|0)==-110:0){i=L+(h+2)|0;break}Ht(u,2,22177,M)|0}}while(0);f[g>>2]=(f[g>>2]|0)+((f[x>>2]|0)-i);f[x>>2]=i;f[a>>2]=0;f[l>>2]=(f[F>>2]|0)-s;s=1;c=U;return s|0}R=E+(A*136|0)+24|0;i=f[R>>2]|0;e:do{if(i){T=n+32|0;C=r+5584|0;S=0;E=E+(A*136|0)+28|0;i:while(1){h=f[T>>2]|0;d=f[E+20>>2]|0;if(((f[E+8>>2]|0)!=(f[E>>2]|0)?(f[E+12>>2]|0)!=(f[E+4>>2]|0):0)?(B=ie(f[d+(h*40|0)+20>>2]|0,f[d+(h*40|0)+16>>2]|0)|0,(B|0)!=0):0){e=d+(h*40|0)+32|0;n=d+(h*40|0)+36|0;y=E+28|0;M=0;o=f[d+(h*40|0)+24>>2]|0;while(1){h=o+44|0;if(!(f[h>>2]|0))i=aa(P,f[e>>2]|0,M,(f[O>>2]|0)+1|0)|0;else i=va(P,1)|0;r:do{if(!i)f[o+40>>2]=0;else{if(!(f[h>>2]|0)){i=0;while(1)if(!(aa(P,f[n>>2]|0,M,i)|0))i=i+1|0;else break;f[o+24>>2]=1-i+(f[y>>2]|0);f[o+28>>2]=3}do{if(va(P,1)|0)if(va(P,1)|0){i=va(P,2)|0;if((i|0)!=3){i=i+3|0;break}i=va(P,5)|0;if((i|0)==31){i=(va(P,7)|0)+37|0;break}else{i=i+6|0;break}}else i=2;else i=1}while(0);v=o+40|0;f[v>>2]=i;i=0;while(1)if(!(va(P,1)|0))break;else i=i+1|0;p=o+28|0;f[p>>2]=(f[p>>2]|0)+i;h=f[h>>2]|0;do{if(!h){d=f[(f[C>>2]|0)+((f[I>>2]|0)*1080|0)+16>>2]|0;i=o+52|0;if(!(f[i>>2]|0)){f[i>>2]=10;b=o+4|0;h=Hn(f[b>>2]|0,320)|0;if(!h){h=i;d=b;i=b;b=66;break i}f[b>>2]=h}else h=f[o+4>>2]|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[h+16>>2]=0;f[h+20>>2]=0;f[h+24>>2]=0;f[h+28>>2]=0;if(d&4){f[h+20>>2]=1;h=0;break}h=h+20|0;if(!(d&1)){f[h>>2]=109;h=0;break}else{f[h>>2]=10;h=0;break}}else{w=h+-1|0;_=o+4|0;d=f[_>>2]|0;if((f[d+(w<<5)+8>>2]|0)!=(f[d+(w<<5)+20>>2]|0)){i=o+52|0;h=w;break}k=f[(f[C>>2]|0)+((f[I>>2]|0)*1080|0)+16>>2]|0;i=o+52|0;b=f[i>>2]|0;if((h+1|0)>>>0>b>>>0){A=b+10|0;f[i>>2]=A;d=Hn(d,A<<5)|0;if(!d){d=_;h=i;i=_;b=77;break i}f[_>>2]=d}A=d+(h<<5)|0;f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;f[A+12>>2]=0;f[A+16>>2]=0;f[A+20>>2]=0;f[A+24>>2]=0;f[A+28>>2]=0;if(k&4){f[d+(h<<5)+20>>2]=1;break}if(!(k&1)){f[d+(h<<5)+20>>2]=109;break}else{A=f[d+(w<<5)+20>>2]|0;f[d+(h<<5)+20>>2]=(A|0)==1|(A|0)==10?2:1;break}}}while(0);m=o+4|0;w=f[v>>2]|0;while(1){k=f[m>>2]|0;d=(f[k+(h<<5)+20>>2]|0)-(f[k+(h<<5)+8>>2]|0)|0;d=(d|0)<(w|0)?d:w;f[k+(h<<5)+24>>2]=d;k=f[p>>2]|0;if(d>>>0>1){b=0;while(1){b=b+1|0;if(d>>>0>3)d=d>>>1;else{d=b;break}}}else d=0;k=va(P,d+k|0)|0;d=f[m>>2]|0;f[d+(h<<5)+28>>2]=k;k=w-(f[d+(h<<5)+24>>2]|0)|0;if((k|0)<=0)break r;w=h+1|0;_=f[(f[C>>2]|0)+((f[I>>2]|0)*1080|0)+16>>2]|0;b=f[i>>2]|0;if((h+2|0)>>>0>b>>>0){A=b+10|0;f[i>>2]=A;d=Hn(d,A<<5)|0;if(!d){d=m;h=m;b=90;break i}f[m>>2]=d}A=d+(w<<5)|0;f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;f[A+12>>2]=0;f[A+16>>2]=0;f[A+20>>2]=0;f[A+24>>2]=0;f[A+28>>2]=0;if(_&4){f[d+(w<<5)+20>>2]=1;h=w;w=k;continue}if(!(_&1)){f[d+(w<<5)+20>>2]=109;h=w;w=k;continue}else{A=f[d+(h<<5)+20>>2]|0;f[d+(w<<5)+20>>2]=(A|0)==1|(A|0)==10?2:1;h=w;w=k;continue}}}}while(0);M=M+1|0;if(M>>>0>=B>>>0)break;else o=o+56|0}i=f[R>>2]|0}S=S+1|0;if(S>>>0>=i>>>0)break e;else E=E+36|0}if((b|0)==66){zn(f[i>>2]|0);f[d>>2]=0;f[h>>2]=0;ba(P);s=0;c=U;return s|0}else if((b|0)==77){zn(f[i>>2]|0);f[d>>2]=0;f[h>>2]=0;ba(P);s=0;c=U;return s|0}else if((b|0)==90){zn(f[h>>2]|0);f[d>>2]=0;f[i>>2]=0;ba(P);s=0;c=U;return s|0}}}while(0);if(!(ga(P)|0)){ba(P);s=0;c=U;return s|0}h=ka(P)|0;i=L+h|0;ba(P);do{if(f[r>>2]&4){if(((f[g>>2]|0)-i+(f[x>>2]|0)|0)>>>0<2){Ht(u,2,22135,D)|0;break}if((t[i>>0]|0)==-1?(t[L+(h+1)>>0]|0)==-110:0){i=L+(h+2)|0;break}Ht(u,2,22177,N)|0}}while(0);f[g>>2]=(f[g>>2]|0)+((f[x>>2]|0)-i);f[x>>2]=i;f[a>>2]=1;f[l>>2]=(f[F>>2]|0)-s;s=1;c=U;return s|0}function Qa(){return Nn(104)|0}function $a(e){e=e|0;if(!e)return;zn(e);return}function es(e){e=e|0;return(f[e+12>>2]|0)-(f[e+16>>2]|0)|0}function is(e,i){e=e|0;i=i|0;var r=0,n=0;f[e+100>>2]=e+24;f[e+4>>2]=32768;f[e>>2]=0;n=i+-1|0;f[e+12>>2]=n;r=e+8|0;f[r>>2]=12;f[r>>2]=(t[n>>0]|0)==-1?13:12;f[e+16>>2]=i;return}function rs(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0;a=f[e+100>>2]|0;s=f[a>>2]|0;o=(f[s+4>>2]|0)==(i|0);n=f[s>>2]|0;u=e+4|0;i=(f[u>>2]|0)-n|0;f[u>>2]=i;if(!o){if(i>>>0<n>>>0){o=(f[e>>2]|0)+n|0;f[e>>2]=o;n=i;i=o;o=e}else{f[u>>2]=n;i=f[e>>2]|0;o=e}f[a>>2]=f[s+12>>2];l=e+8|0;s=e+12|0;a=i;i=f[l>>2]|0;while(1){n=n<<1;f[u>>2]=n;r=a<<1;f[o>>2]=r;i=i+-1|0;f[l>>2]=i;if(!i){i=f[s>>2]|0;n=t[i>>0]|0;do{if(n<<24>>24!=-1){if(!(r&134217728)){r=i+1|0;f[s>>2]=r;t[r>>0]=a>>>18;r=f[o>>2]&524287;f[o>>2]=r;f[l>>2]=8;i=8;break}t[i>>0]=n+1<<24>>24;i=f[s>>2]|0;if((t[i>>0]|0)==-1){e=f[o>>2]&134217727;f[o>>2]=e;r=i+1|0;f[s>>2]=r;t[r>>0]=e>>>20;r=f[o>>2]&1048575;f[o>>2]=r;f[l>>2]=7;i=7;break}else{r=i+1|0;f[s>>2]=r;t[r>>0]=(f[o>>2]|0)>>>19;r=f[o>>2]&524287;f[o>>2]=r;f[l>>2]=8;i=8;break}}else{r=i+1|0;f[s>>2]=r;t[r>>0]=a>>>19;r=f[o>>2]&1048575;f[o>>2]=r;f[l>>2]=7;i=7}}while(0);n=f[u>>2]|0}if(!(n&32768))a=r;else break}return}if(i&32768){f[e>>2]=(f[e>>2]|0)+n;return}if(i>>>0<n>>>0){f[u>>2]=n;r=f[e>>2]|0;o=e}else{r=(f[e>>2]|0)+n|0;f[e>>2]=r;n=i;o=e}f[a>>2]=f[s+8>>2];l=e+8|0;s=e+12|0;a=r;i=f[l>>2]|0;while(1){n=n<<1;f[u>>2]=n;r=a<<1;f[o>>2]=r;i=i+-1|0;f[l>>2]=i;if(!i){i=f[s>>2]|0;n=t[i>>0]|0;do{if(n<<24>>24!=-1){if(!(r&134217728)){r=i+1|0;f[s>>2]=r;t[r>>0]=a>>>18;r=f[o>>2]&524287;f[o>>2]=r;f[l>>2]=8;i=8;break}t[i>>0]=n+1<<24>>24;i=f[s>>2]|0;if((t[i>>0]|0)==-1){e=f[o>>2]&134217727;f[o>>2]=e;r=i+1|0;f[s>>2]=r;t[r>>0]=e>>>20;r=f[o>>2]&1048575;f[o>>2]=r;f[l>>2]=7;i=7;break}else{r=i+1|0;f[s>>2]=r;t[r>>0]=(f[o>>2]|0)>>>19;r=f[o>>2]&524287;f[o>>2]=r;f[l>>2]=8;i=8;break}}else{r=i+1|0;f[s>>2]=r;t[r>>0]=a>>>19;r=f[o>>2]&1048575;f[o>>2]=r;f[l>>2]=7;i=7}}while(0);n=f[u>>2]|0}if(!(n&32768))a=r;else break}return}function ts(e){e=e|0;var i=0,r=0,n=0,a=0,s=0;s=f[e>>2]|0;n=s|65535;a=e+8|0;n=(n>>>0<((f[e+4>>2]|0)+s|0)>>>0?n:n+-32768|0)<<f[a>>2];f[e>>2]=n;s=e+12|0;i=f[s>>2]|0;r=t[i>>0]|0;do{if(r<<24>>24!=-1){if(!(n&134217728)){i=i+1|0;f[s>>2]=i;t[i>>0]=n>>>19;i=f[e>>2]&524287;f[e>>2]=i;f[a>>2]=8;r=8;break}t[i>>0]=r+1<<24>>24;i=f[s>>2]|0;if((t[i>>0]|0)==-1){r=f[e>>2]&134217727;f[e>>2]=r;i=i+1|0;f[s>>2]=i;t[i>>0]=r>>>20;i=f[e>>2]&1048575;f[e>>2]=i;f[a>>2]=7;r=7;break}else{i=i+1|0;f[s>>2]=i;t[i>>0]=(f[e>>2]|0)>>>19;i=f[e>>2]&524287;f[e>>2]=i;f[a>>2]=8;r=8;break}}else{i=i+1|0;f[s>>2]=i;t[i>>0]=n>>>20;i=f[e>>2]&1048575;f[e>>2]=i;f[a>>2]=7;r=7}}while(0);i=i<<r;f[e>>2]=i;r=f[s>>2]|0;n=t[r>>0]|0;do{if(n<<24>>24!=-1){if(!(i&134217728)){n=r+1|0;f[s>>2]=n;t[n>>0]=i>>>19;f[e>>2]=f[e>>2]&524287;f[a>>2]=8;break}t[r>>0]=n+1<<24>>24;i=f[s>>2]|0;if((t[i>>0]|0)==-1){r=f[e>>2]&134217727;f[e>>2]=r;n=i+1|0;f[s>>2]=n;t[n>>0]=r>>>20;f[e>>2]=f[e>>2]&1048575;f[a>>2]=7;break}else{n=i+1|0;f[s>>2]=n;t[n>>0]=(f[e>>2]|0)>>>19;f[e>>2]=f[e>>2]&524287;f[a>>2]=8;break}}else{n=r+1|0;f[s>>2]=n;t[n>>0]=i>>>20;f[e>>2]=f[e>>2]&1048575;f[a>>2]=7}}while(0);i=f[s>>2]|0;if((t[i>>0]|0)==-1)return;f[s>>2]=i+1;return}function ns(e){e=e|0;f[e>>2]=0;f[e+8>>2]=8;return}function fs(e,i){e=e|0;i=i|0;var r=0,n=0,a=0;r=e+8|0;n=(f[r>>2]|0)+-1|0;f[r>>2]=n;i=(i<<n)+(f[e>>2]|0)|0;f[e>>2]=i;if(n)return;n=e+12|0;a=(f[n>>2]|0)+1|0;f[n>>2]=a;t[a>>0]=i;f[r>>2]=8;f[r>>2]=(t[f[n>>2]>>0]|0)==-1?7:8;f[e>>2]=0;return}function as(e){e=e|0;f[e+28>>2]=1156;f[e+32>>2]=1156;f[e+36>>2]=1156;f[e+40>>2]=1156;f[e+44>>2]=1156;f[e+48>>2]=1156;f[e+52>>2]=1156;f[e+56>>2]=1156;f[e+60>>2]=1156;f[e+64>>2]=1156;f[e+68>>2]=1156;f[e+72>>2]=1156;f[e+76>>2]=1156;f[e+80>>2]=1156;f[e+84>>2]=1156;f[e+88>>2]=1156;f[e+96>>2]=2628;f[e+92>>2]=1252;f[e+24>>2]=1284;return}function ss(e){e=e|0;f[e+24>>2]=1156;f[e+28>>2]=1156;f[e+32>>2]=1156;f[e+36>>2]=1156;f[e+40>>2]=1156;f[e+44>>2]=1156;f[e+48>>2]=1156;f[e+52>>2]=1156;f[e+56>>2]=1156;f[e+60>>2]=1156;f[e+64>>2]=1156;f[e+68>>2]=1156;f[e+72>>2]=1156;f[e+76>>2]=1156;f[e+80>>2]=1156;f[e+84>>2]=1156;f[e+88>>2]=1156;f[e+92>>2]=1156;f[e+96>>2]=1156;return}function ls(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;f[e+24+(i<<2)>>2]=1156+((t<<1)+r<<4);return}function os(e){e=e|0;var i=0,r=0;f[e+100>>2]=e+24;f[e+4>>2]=32768;f[e>>2]=0;i=e+8|0;f[i>>2]=12;r=e+12|0;e=(f[r>>2]|0)+-1|0;f[r>>2]=e;if((t[e>>0]|0)!=-1)return;f[i>>2]=13;return}function us(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0;l=e+8|0;i=f[l>>2]|0;n=12-i|0;if((n|0)>0){a=e+12|0;r=f[e>>2]|0;do{i=r<<i;f[e>>2]=i;f[l>>2]=0;r=f[a>>2]|0;s=t[r>>0]|0;do{if(s<<24>>24!=-1){if(!(i&134217728)){r=r+1|0;f[a>>2]=r;t[r>>0]=i>>>19;r=f[e>>2]&524287;f[e>>2]=r;f[l>>2]=8;i=8;break}t[r>>0]=s+1<<24>>24;i=f[a>>2]|0;if((t[i>>0]|0)==-1){s=f[e>>2]&134217727;f[e>>2]=s;r=i+1|0;f[a>>2]=r;t[r>>0]=s>>>20;r=f[e>>2]&1048575;f[e>>2]=r;f[l>>2]=7;i=7;break}else{r=i+1|0;f[a>>2]=r;t[r>>0]=(f[e>>2]|0)>>>19;r=f[e>>2]&524287;f[e>>2]=r;f[l>>2]=8;i=8;break}}else{r=r+1|0;f[a>>2]=r;t[r>>0]=i>>>20;r=f[e>>2]&1048575;f[e>>2]=r;f[l>>2]=7;i=7}}while(0);n=n-i|0}while((n|0)>0)}else a=e+12|0;i=f[a>>2]|0;r=t[i>>0]|0;if(r<<24>>24==-1)return;n=f[e>>2]|0;if(!(n&134217728)){s=i+1|0;f[a>>2]=s;t[s>>0]=n>>>19;f[e>>2]=f[e>>2]&524287;f[l>>2]=8;return}t[i>>0]=r+1<<24>>24;i=f[a>>2]|0;if((t[i>>0]|0)==-1){n=f[e>>2]&134217727;f[e>>2]=n;s=i+1|0;f[a>>2]=s;t[s>>0]=n>>>20;f[e>>2]=f[e>>2]&1048575;f[l>>2]=7;return}else{s=i+1|0;f[a>>2]=s;t[s>>0]=(f[e>>2]|0)>>>19;f[e>>2]=f[e>>2]&524287;f[l>>2]=8;return}}function cs(e){e=e|0;f[e+100>>2]=e+96;rs(e,1);rs(e,0);rs(e,1);rs(e,0);return}function hs(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0;f[e+100>>2]=e+24;f[e+16>>2]=i;f[e+20>>2]=i+r;s=e+12|0;f[s>>2]=i;do{if(r){l=a[i>>0]<<16;f[e>>2]=l;n=i+1|0;if((r|0)==1)r=255;else r=a[n>>0]|0;if((t[i>>0]|0)!=-1){f[s>>2]=n;n=l|r<<8;f[e>>2]=n;r=e+8|0;f[r>>2]=8;s=e;l=1;break}if(r>>>0>143){n=l|65280;f[e>>2]=n;r=e+8|0;f[r>>2]=8;s=e;l=1;break}else{f[s>>2]=n;n=l+(r<<9)|0;f[e>>2]=n;r=e+8|0;f[r>>2]=7;s=e;l=0;break}}else{f[e>>2]=16776960;r=e+8|0;f[r>>2]=8;n=16776960;s=e;l=1}}while(0);f[s>>2]=n<<7;f[r>>2]=l;f[e+4>>2]=32768;return 1}function ds(e){e=e|0;var i=0,r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;r=f[e+100>>2]|0;n=f[r>>2]|0;o=f[n>>2]|0;d=e+4|0;l=(f[d>>2]|0)-o|0;f[d>>2]=l;s=f[e>>2]|0;if(s>>>16>>>0<o>>>0){f[d>>2]=o;i=f[n+4>>2]|0;if(l>>>0<o>>>0)f[r>>2]=f[n+8>>2];else{f[r>>2]=f[n+12>>2];i=1-i|0}u=e+8|0;c=e+12|0;h=e+20|0;n=f[u>>2]|0;r=s;do{do{if(!n){s=f[c>>2]|0;n=f[h>>2]|0;if((s|0)==(n|0)){r=r+65280|0;f[e>>2]=r;f[u>>2]=8;n=8;break}l=s+1|0;if((l|0)==(n|0))n=255;else n=a[l>>0]|0;if((t[s>>0]|0)!=-1){f[c>>2]=l;r=r+(n<<8)|0;f[e>>2]=r;f[u>>2]=8;n=8;break}if(n>>>0>143){r=r+65280|0;f[e>>2]=r;f[u>>2]=8;n=8;break}else{f[c>>2]=l;r=r+(n<<9)|0;f[e>>2]=r;f[u>>2]=7;n=7;break}}}while(0);o=o<<1;f[d>>2]=o;r=r<<1;f[e>>2]=r;n=n+-1|0;f[u>>2]=n}while(o>>>0<32768);return i|0}s=s-(o<<16)|0;f[e>>2]=s;if(l&32768){e=f[n+4>>2]|0;return e|0}i=f[n+4>>2]|0;if(o>>>0>l>>>0){f[r>>2]=f[n+12>>2];i=1-i|0}else f[r>>2]=f[n+8>>2];u=e+8|0;c=e+12|0;h=e+20|0;n=f[u>>2]|0;r=s;o=l;do{do{if(!n){s=f[c>>2]|0;n=f[h>>2]|0;if((s|0)==(n|0)){r=r+65280|0;f[e>>2]=r;f[u>>2]=8;n=8;break}l=s+1|0;if((l|0)==(n|0))n=255;else n=a[l>>0]|0;if((t[s>>0]|0)!=-1){f[c>>2]=l;r=r+(n<<8)|0;f[e>>2]=r;f[u>>2]=8;n=8;break}if(n>>>0>143){r=r+65280|0;f[e>>2]=r;f[u>>2]=8;n=8;break}else{f[c>>2]=l;r=r+(n<<9)|0;f[e>>2]=r;f[u>>2]=7;n=7;break}}}while(0);o=o<<1;f[d>>2]=o;r=r<<1;f[e>>2]=r;n=n+-1|0;f[u>>2]=n}while(o>>>0<32768);return i|0}function bs(){return Nn(28)|0}function ks(e){e=e|0;if(!e)return;zn(e);return}function ws(e,i,r){e=e|0;i=i|0;r=r|0;f[e+20>>2]=i;f[e+8>>2]=r;f[e+12>>2]=0;t[e>>0]=0;f[e+4>>2]=0;return}function _s(e){e=e|0;var i=0,r=0,n=0,a=0,s=0;a=e+4|0;i=f[a>>2]|0;do{if(!i){f[a>>2]=8;r=e+12|0;n=f[r>>2]|0;if((n|0)==(f[e+8>>2]|0)){t[e>>0]=-1;i=8;r=-1;break}if((t[e>>0]|0)==-1){f[a>>2]=7;i=7}else i=8;s=t[(f[e+20>>2]|0)+n>>0]|0;t[e>>0]=s;f[r>>2]=n+1;r=s}else r=t[e>>0]|0}while(0);s=i+-1|0;f[a>>2]=s;return(r&255)>>>s&1|0}function ms(){var e=0;if(!(f[665]|0))e=2712;else e=f[(xe()|0)+60>>2]|0;return e|0}function vs(e){e=e|0;var i=0,r=0;i=0;while(1){if((a[22198+i>>0]|0)==(e|0)){r=2;break}i=i+1|0;if((i|0)==87){i=87;e=22286;r=5;break}}if((r|0)==2)if(!i)e=22286;else{e=22286;r=5}if((r|0)==5)while(1){r=e;while(1){e=r+1|0;if(!(t[r>>0]|0))break;else r=e}i=i+-1|0;if(!i)break;else r=5}return e|0}function ps(e){e=e|0;if(e>>>0>4294963200){f[(ms()|0)>>2]=0-e;e=-1}return e|0}function gs(e,i){e=+e;i=i|0;var r=0,t=0,n=0;u[d>>3]=e;r=f[d>>2]|0;t=f[d+4>>2]|0;n=Dl(r|0,t|0,52)|0;n=n&2047;switch(n|0){case 0:{if(e!=0.0){e=+gs(e*18446744073709551616.0,i);r=(f[i>>2]|0)+-64|0}else r=0;f[i>>2]=r;break}case 2047:break;default:{f[i>>2]=n+-1022;f[d>>2]=r;f[d+4>>2]=t&-2146435073|1071644672;e=+u[d>>3]}}return+e}function ys(e,i){e=+e;i=i|0;return+ +gs(e,i)}function Ms(e,i){e=+e;i=i|0;return+ +Ss(e,i)}function Es(e){e=+e;return~~+As(e)|0}function As(e){e=+e;var i=0;i=(o[d>>2]=e,f[d>>2]|0);if((i&2130706432)>>>0<=1249902592){i=(i|0)<0;e=i?e+-8388608.0+8388608.0:e+8388608.0+-8388608.0;if(e==0.0)e=i?-0.0:0.0}return+e}function Ss(e,i){e=+e;i=i|0;var r=0;if((i|0)>1023){e=e*8988465674311579538646525.0e283;r=i+-1023|0;if((r|0)>1023){r=i+-2046|0;r=(r|0)>1023?1023:r;e=e*8988465674311579538646525.0e283}}else if((i|0)<-1022){e=e*2.2250738585072014e-308;r=i+1022|0;if((r|0)<-1022){r=i+2044|0;r=(r|0)<-1022?-1022:r;e=e*2.2250738585072014e-308}}else r=i;r=Bl(r+1023|0,0,52)|0;i=x;f[d>>2]=r;f[d+4>>2]=i;return+(e*+u[d>>3])}function Ts(e,i,r){e=e|0;i=i|0;r=r|0;do{if(e){if(i>>>0<128){t[e>>0]=i;e=1;break}if(i>>>0<2048){t[e>>0]=i>>>6|192;t[e+1>>0]=i&63|128;e=2;break}if(i>>>0<55296|(i&-8192|0)==57344){t[e>>0]=i>>>12|224;t[e+1>>0]=i>>>6&63|128;t[e+2>>0]=i&63|128;e=3;break}if((i+-65536|0)>>>0<1048576){t[e>>0]=i>>>18|240;t[e+1>>0]=i>>>12&63|128;t[e+2>>0]=i>>>6&63|128;t[e+3>>0]=i&63|128;e=4;break}else{f[(ms()|0)>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function Cs(e,i){e=e|0;i=i|0;if(!e)e=0;else e=Ts(e,i,0)|0;return e|0}function Rs(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+112|0;d=b+40|0;u=b+24|0;o=b+16|0;a=b;h=b+52|0;n=t[i>>0]|0;if(ll(24090,n<<24>>24,4)|0){r=yl(1144)|0;if(!r)r=0;else{s=r;l=s+112|0;do{f[s>>2]=0;s=s+4|0}while((s|0)<(l|0));if(!(ul(i,43)|0))f[r>>2]=n<<24>>24==114?8:4;if(ul(i,101)|0){f[a>>2]=e;f[a+4>>2]=2;f[a+8>>2]=1;pe(221,a|0)|0;n=t[i>>0]|0}if(n<<24>>24==97){f[o>>2]=e;f[o+4>>2]=3;n=pe(221,o|0)|0;if(!(n&1024)){f[u>>2]=e;f[u+4>>2]=4;f[u+8>>2]=n|1024;pe(221,u|0)|0}i=f[r>>2]|128;f[r>>2]=i}else i=f[r>>2]|0;f[r+60>>2]=e;f[r+44>>2]=r+120;f[r+48>>2]=1024;n=r+75|0;t[n>>0]=-1;if((i&8|0)==0?(f[d>>2]=e,f[d+4>>2]=21505,f[d+8>>2]=h,(Be(54,d|0)|0)==0):0)t[n>>0]=10;f[r+32>>2]=60;f[r+36>>2]=61;f[r+40>>2]=3;f[r+12>>2]=1;if(!(f[666]|0))f[r+76>>2]=-1;Ne(2688);n=f[671]|0;f[r+56>>2]=n;if(n)f[n+52>>2]=r;f[671]=r;Ie(2688)}}else{f[(ms()|0)>>2]=22;r=0}c=b;return r|0}function Ls(e){e=e|0;var i=0,r=0,n=0;r=(ul(e,43)|0)==0;i=t[e>>0]|0;r=r?i<<24>>24!=114&1:2;n=(ul(e,120)|0)==0;r=n?r:r|128;e=(ul(e,101)|0)==0;e=e?r:r|524288;e=i<<24>>24==114?e:e|64;e=i<<24>>24==119?e|512:e;return(i<<24>>24==97?e|1024:e)|0}function xs(e){e=e|0;return 0}function Ps(e){e=e|0;return}function Os(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+16|0;u=h;o=i&255;t[u>>0]=o;n=e+16|0;s=f[n>>2]|0;if(!s)if(!(js(e)|0)){s=f[n>>2]|0;l=4}else r=-1;else l=4;do{if((l|0)==4){n=e+20|0;l=f[n>>2]|0;if(l>>>0<s>>>0?(r=i&255,(r|0)!=(t[e+75>>0]|0)):0){f[n>>2]=l+1;t[l>>0]=o;break}if((po[f[e+36>>2]&63](e,u,1)|0)==1)r=a[u>>0]|0;else r=-1}}while(0);c=h;return r|0}function Bs(e){e=e|0;var i=0,r=0;i=c;c=c+16|0;r=i;f[r>>2]=f[e+60>>2];e=ps(Fe(6,r|0)|0)|0;c=i;return e|0}function Is(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0;h=c;c=c+48|0;s=h+16|0;a=h;n=h+32|0;f[n>>2]=i;l=n+4|0;u=e+48|0;d=f[u>>2]|0;f[l>>2]=r-((d|0)!=0&1);o=e+44|0;f[n+8>>2]=f[o>>2];f[n+12>>2]=d;if(!(f[665]|0)){f[s>>2]=f[e+60>>2];f[s+4>>2]=n;f[s+8>>2]=2;n=ps(ze(145,s|0)|0)|0}else{Me(5,e|0);f[a>>2]=f[e+60>>2];f[a+4>>2]=n;f[a+8>>2]=2;n=ps(ze(145,a|0)|0)|0;ve(0)}if((n|0)>=1){l=f[l>>2]|0;if(n>>>0>l>>>0){s=f[o>>2]|0;a=e+4|0;f[a>>2]=s;f[e+8>>2]=s+(n-l);if(!(f[u>>2]|0))n=r;else{f[a>>2]=s+1;t[i+(r+-1)>>0]=t[s>>0]|0;n=r}}}else{f[e>>2]=f[e>>2]|n&48^16;f[e+8>>2]=0;f[e+4>>2]=0}c=h;return n|0}function Ds(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0;n=c;c=c+32|0;a=n;t=n+20|0;f[a>>2]=f[e+60>>2];f[a+4>>2]=0;f[a+8>>2]=i;f[a+12>>2]=t;f[a+16>>2]=r;if((ps(He(140,a|0)|0)|0)<0){f[t>>2]=-1;e=-1}else e=f[t>>2]|0;c=n;return e|0}function Ns(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;w=c;c=c+48|0;d=w+16|0;h=w;t=w+32|0;b=e+28|0;n=f[b>>2]|0;f[t>>2]=n;k=e+20|0;n=(f[k>>2]|0)-n|0;f[t+4>>2]=n;f[t+8>>2]=i;f[t+12>>2]=r;o=e+60|0;u=e+44|0;i=2;n=n+r|0;while(1){if(!(f[665]|0)){f[d>>2]=f[o>>2];f[d+4>>2]=t;f[d+8>>2]=i;s=ps(Ye(146,d|0)|0)|0}else{Me(6,e|0);f[h>>2]=f[o>>2];f[h+4>>2]=t;f[h+8>>2]=i;s=ps(Ye(146,h|0)|0)|0;ve(0)}if((n|0)==(s|0)){n=6;break}if((s|0)<0){n=8;break}n=n-s|0;a=f[t+4>>2]|0;if(s>>>0<=a>>>0)if((i|0)==2){f[b>>2]=(f[b>>2]|0)+s;l=a;i=2}else l=a;else{l=f[u>>2]|0;f[b>>2]=l;f[k>>2]=l;l=f[t+12>>2]|0;s=s-a|0;t=t+8|0;i=i+-1|0}f[t>>2]=(f[t>>2]|0)+s;f[t+4>>2]=l-s}if((n|0)==6){d=f[u>>2]|0;f[e+16>>2]=d+(f[e+48>>2]|0);e=d;f[b>>2]=e;f[k>>2]=e}else if((n|0)==8){f[e+16>>2]=0;f[b>>2]=0;f[k>>2]=0;f[e>>2]=f[e>>2]|32;if((i|0)==2)r=0;else r=r-(f[t+4>>2]|0)|0}c=w;return r|0}function Fs(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0;a=c;c=c+80|0;n=a;f[e+36>>2]=61;if((f[e>>2]&64|0)==0?(f[n>>2]=f[e+60>>2],f[n+4>>2]=21505,f[n+8>>2]=a+12,(Be(54,n|0)|0)!=0):0)t[e+75>>0]=-1;n=Ns(e,i,r)|0;c=a;return n|0}function Us(e){e=e|0;var i=0,r=0;i=e+74|0;r=t[i>>0]|0;t[i>>0]=r+255|r;i=e+20|0;r=e+44|0;if((f[i>>2]|0)>>>0>(f[r>>2]|0)>>>0)po[f[e+36>>2]&63](e,0,0)|0;f[e+16>>2]=0;f[e+28>>2]=0;f[i>>2]=0;i=f[e>>2]|0;if(i&20)if(!(i&4))i=-1;else{f[e>>2]=i|32;i=-1}else{i=f[r>>2]|0;f[e+8>>2]=i;f[e+4>>2]=i;i=0}return i|0}function js(e){e=e|0;var i=0,r=0;i=e+74|0;r=t[i>>0]|0;t[i>>0]=r+255|r;i=f[e>>2]|0;if(!(i&8)){f[e+8>>2]=0;f[e+4>>2]=0;i=f[e+44>>2]|0;f[e+28>>2]=i;f[e+20>>2]=i;f[e+16>>2]=i+(f[e+48>>2]|0);i=0}else{f[e>>2]=i|32;i=-1}return i|0}function Hs(e){e=e|0;var i=0,r=0,t=0;t=(f[e>>2]&1|0)!=0;if(!t){Ne(2688);r=f[e+52>>2]|0;i=e+56|0;if(r)f[r+56>>2]=f[i>>2];i=f[i>>2]|0;if(i)f[i+52>>2]=r;if((f[671]|0)==(e|0))f[671]=i;Ie(2688)}i=zs(e)|0;i=Ao[f[e+12>>2]&15](e)|0|i;r=f[e+92>>2]|0;if(r)Ml(r);if(!t)Ml(e);return i|0}function zs(e){e=e|0;var i=0,r=0;do{if(e){if((f[e+76>>2]|0)<=-1){i=wl(e)|0;break}r=(xs(e)|0)==0;i=wl(e)|0;if(!r)Ps(e)}else{if(!(f[677]|0))i=0;else i=zs(f[677]|0)|0;Ne(2688);e=f[671]|0;if(e)do{if((f[e+76>>2]|0)>-1)r=xs(e)|0;else r=0;if((f[e+20>>2]|0)>>>0>(f[e+28>>2]|0)>>>0)i=wl(e)|0|i;if(r)Ps(e);e=f[e+56>>2]|0}while((e|0)!=0);Ie(2688)}}while(0);return i|0}function Ys(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0;a=c;c=c+32|0;n=a+16|0;r=a;if(ll(24090,t[i>>0]|0,4)|0){s=Ls(i)|0|32768;f[r>>2]=e;f[r+4>>2]=s;f[r+8>>2]=438;r=ps(Ue(5,r|0)|0)|0;if((r|0)>=0){e=Rs(r,i)|0;if(!e){f[n>>2]=r;Fe(6,n|0)|0;e=0}}else e=0}else{f[(ms()|0)>>2]=22;e=0}c=a;return e|0}function qs(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0;t=c;c=c+16|0;n=t;f[n>>2]=r;r=fl(e,i,n)|0;c=t;return r|0}function Xs(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0;if((f[i+76>>2]|0)>=0?(xs(i)|0)!=0:0){if((t[i+75>>0]|0)!=(e|0)?(n=i+20|0,a=f[n>>2]|0,a>>>0<(f[i+16>>2]|0)>>>0):0){f[n>>2]=a+1;t[a>>0]=e;r=e&255}else r=Os(i,e)|0;Ps(i)}else l=3;do{if((l|0)==3){if((t[i+75>>0]|0)!=(e|0)?(s=i+20|0,r=f[s>>2]|0,r>>>0<(f[i+16>>2]|0)>>>0):0){f[s>>2]=r+1;t[r>>0]=e;r=e&255;break}r=Os(i,e)|0}}while(0);return r|0}function Vs(e,i){e=e|0;i=i|0;return(il(e,dl(e)|0,1,i)|0)+-1|0}function Gs(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0;o=ie(r,i)|0;if((f[n+76>>2]|0)>-1)u=xs(n)|0;else u=0;a=n+74|0;s=t[a>>0]|0;t[a>>0]=s+255|s;a=n+4|0;s=f[a>>2]|0;l=(f[n+8>>2]|0)-s|0;if((l|0)>0){l=l>>>0<o>>>0?l:o;Nl(e|0,s|0,l|0)|0;f[a>>2]=s+l;e=e+l|0;a=o-l|0}else a=o;e:do{if(!a)c=13;else{l=n+32|0;s=a;while(1){if(Us(n)|0){r=s;break}a=po[f[l>>2]&63](n,e,s)|0;if((a+1|0)>>>0<2){r=s;break}if((s|0)==(a|0)){c=13;break e}else{e=e+a|0;s=s-a|0}}if(u)Ps(n);r=((o-r|0)>>>0)/(i>>>0)|0}}while(0);if((c|0)==13)if(u)Ps(n);return r|0}function Ks(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0;if((r|0)==1)i=i-(f[e+8>>2]|0)+(f[e+4>>2]|0)|0;n=e+20|0;t=e+28|0;if((f[n>>2]|0)>>>0>(f[t>>2]|0)>>>0?(po[f[e+36>>2]&63](e,0,0)|0,(f[n>>2]|0)==0):0)i=-1;else{f[e+16>>2]=0;f[t>>2]=0;f[n>>2]=0;if((po[f[e+40>>2]&63](e,i,r)|0)<0)i=-1;else{f[e+8>>2]=0;f[e+4>>2]=0;f[e>>2]=f[e>>2]&-17;i=0}}return i|0}function Ws(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;if((f[e+76>>2]|0)>-1){t=(xs(e)|0)==0;i=Ks(e,i,r)|0;if(!t)Ps(e)}else i=Ks(e,i,r)|0;return i|0}function Zs(e,i,r){e=e|0;i=i|0;r=r|0;return Ws(e,i,r)|0}function Js(e){e=e|0;var i=0;if(!(f[e>>2]&128))i=1;else i=(f[e+20>>2]|0)>>>0>(f[e+28>>2]|0)>>>0?2:1;i=po[f[e+40>>2]&63](e,0,i)|0;if((i|0)>=0)i=i-(f[e+8>>2]|0)+(f[e+4>>2]|0)+(f[e+20>>2]|0)-(f[e+28>>2]|0)|0;return i|0}function Qs(e){e=e|0;var i=0;if((f[e+76>>2]|0)>-1){i=(xs(e)|0)==0;e=Js(e)|0}else e=Js(e)|0;return e|0}function $s(e){e=e|0;return Qs(e)|0}function el(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;n=r+16|0;a=f[n>>2]|0;if(!a)if(!(js(r)|0)){a=f[n>>2]|0;s=4}else n=0;else s=4;e:do{if((s|0)==4){l=r+20|0;s=f[l>>2]|0;if((a-s|0)>>>0<i>>>0){n=po[f[r+36>>2]&63](r,e,i)|0;break}i:do{if((t[r+75>>0]|0)>-1){n=i;while(1){if(!n){a=s;n=0;break i}a=n+-1|0;if((t[e+a>>0]|0)==10)break;else n=a}if((po[f[r+36>>2]&63](r,e,n)|0)>>>0<n>>>0)break e;i=i-n|0;e=e+n|0;a=f[l>>2]|0}else{a=s;n=0}}while(0);Nl(a|0,e|0,i|0)|0;f[l>>2]=(f[l>>2]|0)+i;n=n+i|0}}while(0);return n|0}function il(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0;n=ie(r,i)|0;if((f[t+76>>2]|0)>-1){a=(xs(t)|0)==0;e=el(e,n,t)|0;if(!a)Ps(t)}else e=el(e,n,t)|0;if((e|0)!=(n|0))r=(e>>>0)/(i>>>0)|0;return r|0}function rl(e,i){e=e|0;i=i|0;var r=0,t=0;r=c;c=c+16|0;t=r;f[t>>2]=i;i=fl(f[676]|0,e,t)|0;c=r;return i|0}function tl(e){e=e|0;var i=0,r=0,n=0,a=0;n=f[676]|0;if((f[n+76>>2]|0)>-1)a=xs(n)|0;else a=0;do{if((Vs(e,n)|0)<0)i=1;else{if((t[n+75>>0]|0)!=10?(i=n+20|0,r=f[i>>2]|0,r>>>0<(f[n+16>>2]|0)>>>0):0){f[i>>2]=r+1;t[r>>0]=10;i=0;break}i=(Os(n,10)|0)<0}}while(0);if(a)Ps(n);return i<<31>>31|0}function nl(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0;t=c;c=c+16|0;n=t;f[n>>2]=r;r=sl(e,i,n)|0;c=t;return r|0}function fl(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;m=c;c=c+224|0;b=m+80|0;_=m+96|0;w=m;k=m+136|0;n=_;a=n+40|0;do{f[n>>2]=0;n=n+4|0}while((n|0)<(a|0));f[b>>2]=f[r>>2];if((_l(0,i,b,w,_)|0)<0)r=-1;else{if((f[e+76>>2]|0)>-1)h=xs(e)|0;else h=0;r=f[e>>2]|0;d=r&32;if((t[e+74>>0]|0)<1)f[e>>2]=r&-33;r=e+48|0;if(!(f[r>>2]|0)){a=e+44|0;s=f[a>>2]|0;f[a>>2]=k;l=e+28|0;f[l>>2]=k;o=e+20|0;f[o>>2]=k;f[r>>2]=80;u=e+16|0;f[u>>2]=k+80;n=_l(e,i,b,w,_)|0;if(s){po[f[e+36>>2]&63](e,0,0)|0;n=(f[o>>2]|0)==0?-1:n;f[a>>2]=s;f[r>>2]=0;f[u>>2]=0;f[l>>2]=0;f[o>>2]=0}}else n=_l(e,i,b,w,_)|0;r=f[e>>2]|0;f[e>>2]=r|d;if(h)Ps(e);r=(r&32|0)==0?n:-1}c=m;return r|0}function al(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+128|0;a=d+112|0;h=d;s=h;l=2716;o=s+112|0;do{f[s>>2]=f[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));if((i+-1|0)>>>0>2147483646)if(!i){i=1;u=4}else{f[(ms()|0)>>2]=75;i=-1}else{a=e;u=4}if((u|0)==4){u=-2-a|0;u=i>>>0>u>>>0?u:i;f[h+48>>2]=u;e=h+20|0;f[e>>2]=a;f[h+44>>2]=a;i=a+u|0;a=h+16|0;f[a>>2]=i;f[h+28>>2]=i;i=fl(h,r,n)|0;if(u){r=f[e>>2]|0;t[r+(((r|0)==(f[a>>2]|0))<<31>>31)>>0]=0}}c=d;return i|0}function sl(e,i,r){e=e|0;i=i|0;r=r|0;return al(e,2147483647,i,r)|0}function ll(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;s=i&255;n=(r|0)!=0;e:do{if(n&(e&3|0)!=0){a=i&255;while(1){if((t[e>>0]|0)==a<<24>>24){l=6;break e}e=e+1|0;r=r+-1|0;n=(r|0)!=0;if(!(n&(e&3|0)!=0)){l=5;break}}}else l=5}while(0);if((l|0)==5)if(n)l=6;else r=0;e:do{if((l|0)==6){a=i&255;if((t[e>>0]|0)!=a<<24>>24){n=ie(s,16843009)|0;i:do{if(r>>>0>3)while(1){s=f[e>>2]^n;if((s&-2139062144^-2139062144)&s+-16843009)break;e=e+4|0;r=r+-4|0;if(r>>>0<=3){l=11;break i}}else l=11}while(0);if((l|0)==11)if(!r){r=0;break}while(1){if((t[e>>0]|0)==a<<24>>24)break e;e=e+1|0;r=r+-1|0;if(!r){r=0;break}}}}}while(0);return((r|0)!=0?e:0)|0}function ol(e,i){e=e|0;i=i|0;var r=0,n=0;r=i;e:do{if(!((r^e)&3)){if(r&3)do{r=t[i>>0]|0;t[e>>0]=r;if(!(r<<24>>24))break e;i=i+1|0;e=e+1|0}while((i&3|0)!=0);r=f[i>>2]|0;if(!((r&-2139062144^-2139062144)&r+-16843009)){n=e;while(1){i=i+4|0;e=n+4|0;f[n>>2]=r;r=f[i>>2]|0;if((r&-2139062144^-2139062144)&r+-16843009)break;else n=e}}n=8}else n=8}while(0);if((n|0)==8){n=t[i>>0]|0;t[e>>0]=n;if(n<<24>>24)do{i=i+1|0;e=e+1|0;n=t[i>>0]|0;t[e>>0]=n}while(n<<24>>24!=0)}return e|0}function ul(e,i){e=e|0;i=i|0;e=cl(e,i)|0;return((t[e>>0]|0)==(i&255)<<24>>24?e:0)|0}function cl(e,i){e=e|0;i=i|0;var r=0,n=0,a=0;n=i&255;e:do{if(!n)e=e+(dl(e)|0)|0;else{if(e&3){r=i&255;do{a=t[e>>0]|0;if(a<<24>>24==0?1:a<<24>>24==r<<24>>24)break e;e=e+1|0}while((e&3|0)!=0)}n=ie(n,16843009)|0;r=f[e>>2]|0;i:do{if(!((r&-2139062144^-2139062144)&r+-16843009))do{a=r^n;if((a&-2139062144^-2139062144)&a+-16843009)break i;e=e+4|0;r=f[e>>2]|0}while(((r&-2139062144^-2139062144)&r+-16843009|0)==0)}while(0);r=i&255;while(1){a=t[e>>0]|0;if(a<<24>>24==0?1:a<<24>>24==r<<24>>24)break;else e=e+1|0}}}while(0);return e|0}function hl(e,i){e=e|0;i=i|0;ol(e,i)|0;return e|0}function dl(e){e=e|0;var i=0,r=0,n=0;n=e;e:do{if(!(n&3))r=4;else{i=e;e=n;while(1){if(!(t[i>>0]|0))break e;i=i+1|0;e=i;if(!(e&3)){e=i;r=4;break}}}}while(0);if((r|0)==4){while(1){i=f[e>>2]|0;if(!((i&-2139062144^-2139062144)&i+-16843009))e=e+4|0;else break}if((i&255)<<24>>24)do{e=e+1|0}while((t[e>>0]|0)!=0)}return e-n|0}function bl(e){e=e|0;if(!(f[e+68>>2]|0))Ps(e);return}function kl(e){e=e|0;if(!(f[e+68>>2]|0))Ps(e);return}function wl(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0;i=e+20|0;a=e+28|0;if((f[i>>2]|0)>>>0>(f[a>>2]|0)>>>0?(po[f[e+36>>2]&63](e,0,0)|0,(f[i>>2]|0)==0):0)i=-1;else{s=e+4|0;r=f[s>>2]|0;t=e+8|0;n=f[t>>2]|0;if(r>>>0<n>>>0)po[f[e+40>>2]&63](e,r-n|0,1)|0;f[e+16>>2]=0;f[a>>2]=0;f[i>>2]=0;f[t>>2]=0;f[s>>2]=0;i=0}return i|0}function _l(e,i,r,s,l){e=e|0;i=i|0;r=r|0;s=s|0;l=l|0;var o=0,h=0,b=0,k=0,w=0.0,_=0,m=0,v=0,p=0,g=0.0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0,V=0,G=0,K=0,W=0,Z=0,J=0,Q=0,$=0,ee=0,re=0,te=0,ne=0,fe=0,ae=0,se=0;se=c;c=c+624|0;re=se+24|0;ne=se+16|0;te=se+588|0;Z=se+576|0;ee=se;G=se+536|0;ae=se+8|0;fe=se+528|0;F=(e|0)!=0;U=G+40|0;V=U;G=G+39|0;K=ae+4|0;W=Z+12|0;Z=Z+11|0;J=te;Q=W;$=Q-J|0;j=-2-J|0;H=Q+2|0;z=re+288|0;Y=te+9|0;q=Y;X=te+8|0;o=0;y=i;h=0;i=0;e:while(1){do{if((o|0)>-1)if((h|0)>(2147483647-o|0)){f[(ms()|0)>>2]=75;o=-1;break}else{o=h+o|0;break}}while(0);h=t[y>>0]|0;if(!(h<<24>>24)){N=245;break}else b=y;i:while(1){switch(h<<24>>24){case 37:{h=b;N=9;break i}case 0:{h=b;break i}default:{}}D=b+1|0;h=t[D>>0]|0;b=D}i:do{if((N|0)==9)while(1){N=0;if((t[h+1>>0]|0)!=37)break i;b=b+1|0;h=h+2|0;if((t[h>>0]|0)==37)N=9;else break}}while(0);E=b-y|0;if(F?(f[e>>2]&32|0)==0:0)el(y,E,e)|0;if((b|0)!=(y|0)){y=h;h=E;continue}_=h+1|0;b=t[_>>0]|0;k=(b<<24>>24)+-48|0;if(k>>>0<10){D=(t[h+2>>0]|0)==36;_=D?h+3|0:_;b=t[_>>0]|0;p=D?k:-1;i=D?1:i}else p=-1;h=b<<24>>24;i:do{if((h&-32|0)==32){k=0;while(1){if(!(1<<h+-32&75913)){m=k;h=_;break i}k=1<<(b<<24>>24)+-32|k;_=_+1|0;b=t[_>>0]|0;h=b<<24>>24;if((h&-32|0)!=32){m=k;h=_;break}}}else{m=0;h=_}}while(0);do{if(b<<24>>24==42){k=h+1|0;b=(t[k>>0]|0)+-48|0;if(b>>>0<10?(t[h+2>>0]|0)==36:0){f[l+(b<<2)>>2]=10;i=1;h=h+3|0;b=f[s+((t[k>>0]|0)+-48<<3)>>2]|0}else{if(i){o=-1;break e}if(!F){M=m;h=k;i=0;D=0;break}i=(f[r>>2]|0)+(4-1)&~(4-1);b=f[i>>2]|0;f[r>>2]=i+4;i=0;h=k}if((b|0)<0){M=m|8192;D=0-b|0}else{M=m;D=b}}else{k=(b<<24>>24)+-48|0;if(k>>>0<10){b=0;do{b=(b*10|0)+k|0;h=h+1|0;k=(t[h>>0]|0)+-48|0}while(k>>>0<10);if((b|0)<0){o=-1;break e}else{M=m;D=b}}else{M=m;D=0}}}while(0);i:do{if((t[h>>0]|0)==46){k=h+1|0;b=t[k>>0]|0;if(b<<24>>24!=42){_=(b<<24>>24)+-48|0;if(_>>>0<10){h=k;b=0}else{h=k;_=0;break}while(1){b=(b*10|0)+_|0;h=h+1|0;_=(t[h>>0]|0)+-48|0;if(_>>>0>=10){_=b;break i}}}k=h+2|0;b=(t[k>>0]|0)+-48|0;if(b>>>0<10?(t[h+3>>0]|0)==36:0){f[l+(b<<2)>>2]=10;h=h+4|0;_=f[s+((t[k>>0]|0)+-48<<3)>>2]|0;break}if(i){o=-1;break e}if(F){h=(f[r>>2]|0)+(4-1)&~(4-1);_=f[h>>2]|0;f[r>>2]=h+4;h=k}else{h=k;_=0}}else _=-1}while(0);v=0;while(1){b=(t[h>>0]|0)+-65|0;if(b>>>0>57){o=-1;break e}k=h+1|0;b=t[25126+(v*58|0)+b>>0]|0;m=b&255;if((m+-1|0)>>>0<8){h=k;v=m}else{I=k;break}}if(!(b<<24>>24)){o=-1;break}k=(p|0)>-1;do{if(b<<24>>24==19)if(k){o=-1;break e}else N=52;else{if(k){f[l+(p<<2)>>2]=m;O=s+(p<<3)|0;B=f[O+4>>2]|0;N=ee;f[N>>2]=f[O>>2];f[N+4>>2]=B;N=52;break}if(!F){o=0;break e}vl(ee,m,r)}}while(0);if((N|0)==52?(N=0,!F):0){y=I;h=E;continue}p=t[h>>0]|0;p=(v|0)!=0&(p&15|0)==3?p&-33:p;k=M&-65537;B=(M&8192|0)==0?M:k;i:do{switch(p|0){case 110:switch(v|0){case 0:{f[f[ee>>2]>>2]=o;y=I;h=E;continue e}case 1:{f[f[ee>>2]>>2]=o;y=I;h=E;continue e}case 2:{y=f[ee>>2]|0;f[y>>2]=o;f[y+4>>2]=((o|0)<0)<<31>>31;y=I;h=E;continue e}case 3:{n[f[ee>>2]>>1]=o;y=I;h=E;continue e}case 4:{t[f[ee>>2]>>0]=o;y=I;h=E;continue e}case 6:{f[f[ee>>2]>>2]=o;y=I;h=E;continue e}case 7:{y=f[ee>>2]|0;f[y>>2]=o;f[y+4>>2]=((o|0)<0)<<31>>31;y=I;h=E;continue e}default:{y=I;h=E;continue e}}case 112:{v=B|8;_=_>>>0>8?_:8;p=120;N=64;break}case 88:case 120:{v=B;N=64;break}case 111:{k=ee;b=f[k>>2]|0;k=f[k+4>>2]|0;if((b|0)==0&(k|0)==0)h=U;else{h=U;do{h=h+-1|0;t[h>>0]=b&7|48;b=Dl(b|0,k|0,3)|0;k=x}while(!((b|0)==0&(k|0)==0))}if(!(B&8)){b=B;v=0;m=25606;N=77}else{v=V-h+1|0;b=B;_=(_|0)<(v|0)?v:_;v=0;m=25606;N=77}break}case 105:case 100:{b=ee;h=f[b>>2]|0;b=f[b+4>>2]|0;if((b|0)<0){h=xl(0,0,h|0,b|0)|0;b=x;k=ee;f[k>>2]=h;f[k+4>>2]=b;k=1;m=25606;N=76;break i}if(!(B&2048)){m=B&1;k=m;m=(m|0)==0?25606:25608;N=76}else{k=1;m=25607;N=76}break}case 117:{b=ee;h=f[b>>2]|0;b=f[b+4>>2]|0;k=0;m=25606;N=76;break}case 99:{t[G>>0]=f[ee>>2];y=G;b=1;v=0;p=25606;h=U;break}case 109:{h=vs(f[(ms()|0)>>2]|0)|0;N=82;break}case 115:{h=f[ee>>2]|0;h=(h|0)!=0?h:25616;N=82;break}case 67:{f[ae>>2]=f[ee>>2];f[K>>2]=0;f[ee>>2]=ae;_=-1;N=86;break}case 83:{if(!_){gl(e,32,D,0,B);h=0;N=98}else N=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{w=+u[ee>>3];f[ne>>2]=0;u[d>>3]=w;if((f[d+4>>2]|0)>=0)if(!(B&2048)){O=B&1;P=O;O=(O|0)==0?25624:25629}else{P=1;O=25626}else{w=-w;P=1;O=25623}u[d>>3]=w;L=f[d+4>>2]&2146435072;do{if(L>>>0<2146435072|(L|0)==2146435072&0<0){g=+ys(w,ne)*2.0;b=g!=0.0;if(b)f[ne>>2]=(f[ne>>2]|0)+-1;C=p|32;if((C|0)==97){y=p&32;E=(y|0)==0?O:O+9|0;M=P|2;h=12-_|0;do{if(!(_>>>0>11|(h|0)==0)){w=8.0;do{h=h+-1|0;w=w*16.0}while((h|0)!=0);if((t[E>>0]|0)==45){w=-(w+(-g-w));break}else{w=g+w-w;break}}else w=g}while(0);b=f[ne>>2]|0;h=(b|0)<0?0-b|0:b;h=pl(h,((h|0)<0)<<31>>31,W)|0;if((h|0)==(W|0)){t[Z>>0]=48;h=Z}t[h+-1>>0]=(b>>31&2)+43;v=h+-2|0;t[v>>0]=p+15;m=(_|0)<1;k=(B&8|0)==0;b=te;while(1){O=~~w;h=b+1|0;t[b>>0]=a[25590+O>>0]|y;w=(w-+(O|0))*16.0;do{if((h-J|0)==1){if(k&(m&w==0.0))break;t[h>>0]=46;h=b+2|0}}while(0);if(!(w!=0.0))break;else b=h}_=(_|0)!=0&(j+h|0)<(_|0)?H+_-v|0:$-v+h|0;k=_+M|0;gl(e,32,D,k,B);if(!(f[e>>2]&32))el(E,M,e)|0;gl(e,48,D,k,B^65536);h=h-J|0;if(!(f[e>>2]&32))el(te,h,e)|0;b=Q-v|0;gl(e,48,_-(h+b)|0,0,0);if(!(f[e>>2]&32))el(v,b,e)|0;gl(e,32,D,k,B^8192);h=(k|0)<(D|0)?D:k;break}h=(_|0)<0?6:_;if(b){b=(f[ne>>2]|0)+-28|0;f[ne>>2]=b;w=g*268435456.0}else{w=g;b=f[ne>>2]|0}L=(b|0)<0?re:z;R=L;b=L;do{T=~~w>>>0;f[b>>2]=T;b=b+4|0;w=(w-+(T>>>0))*1.0e9}while(w!=0.0);k=b;b=f[ne>>2]|0;if((b|0)>0){m=L;while(1){v=(b|0)>29?29:b;_=k+-4|0;do{if(_>>>0<m>>>0)_=m;else{b=0;do{T=Bl(f[_>>2]|0,0,v|0)|0;T=Il(T|0,x|0,b|0,0)|0;b=x;S=ql(T|0,b|0,1e9,0)|0;f[_>>2]=S;b=Yl(T|0,b|0,1e9,0)|0;_=_+-4|0}while(_>>>0>=m>>>0);if(!b){_=m;break}_=m+-4|0;f[_>>2]=b}}while(0);while(1){if(k>>>0<=_>>>0)break;b=k+-4|0;if(!(f[b>>2]|0))k=b;else break}b=(f[ne>>2]|0)-v|0;f[ne>>2]=b;if((b|0)>0)m=_;else break}}else _=L;if((b|0)<0){E=((h+25|0)/9|0)+1|0;A=(C|0)==102;y=_;while(1){M=0-b|0;M=(M|0)>9?9:M;do{if(y>>>0<k>>>0){b=(1<<M)+-1|0;m=1e9>>>M;_=0;v=y;do{T=f[v>>2]|0;f[v>>2]=(T>>>M)+_;_=ie(T&b,m)|0;v=v+4|0}while(v>>>0<k>>>0);b=(f[y>>2]|0)==0?y+4|0:y;if(!_){_=b;break}f[k>>2]=_;_=b;k=k+4|0}else _=(f[y>>2]|0)==0?y+4|0:y}while(0);b=A?L:_;k=(k-b>>2|0)>(E|0)?b+(E<<2)|0:k;b=(f[ne>>2]|0)+M|0;f[ne>>2]=b;if((b|0)>=0){y=_;break}else y=_}}else y=_;do{if(y>>>0<k>>>0){b=(R-y>>2)*9|0;m=f[y>>2]|0;if(m>>>0<10)break;else _=10;do{_=_*10|0;b=b+1|0}while(m>>>0>=_>>>0)}else b=0}while(0);S=(C|0)==103;T=(h|0)!=0;_=h-((C|0)!=102?b:0)+((T&S)<<31>>31)|0;if((_|0)<(((k-R>>2)*9|0)+-9|0)){v=_+9216|0;A=(v|0)/9|0;_=L+(A+-1023<<2)|0;v=((v|0)%9|0)+1|0;if((v|0)<9){m=10;do{m=m*10|0;v=v+1|0}while((v|0)!=9)}else m=10;M=f[_>>2]|0;E=(M>>>0)%(m>>>0)|0;if((E|0)==0?(L+(A+-1022<<2)|0)==(k|0):0)m=y;else N=163;do{if((N|0)==163){N=0;g=(((M>>>0)/(m>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;v=(m|0)/2|0;do{if(E>>>0<v>>>0)w=.5;else{if((E|0)==(v|0)?(L+(A+-1022<<2)|0)==(k|0):0){w=1.0;break}w=1.5}}while(0);do{if(P){if((t[O>>0]|0)!=45)break;g=-g;w=-w}}while(0);v=M-E|0;f[_>>2]=v;if(!(g+w!=g)){m=y;break}C=v+m|0;f[_>>2]=C;if(C>>>0>999999999){b=y;while(1){m=_+-4|0;f[_>>2]=0;if(m>>>0<b>>>0){b=b+-4|0;f[b>>2]=0}C=(f[m>>2]|0)+1|0;f[m>>2]=C;if(C>>>0>999999999)_=m;else{y=b;_=m;break}}}b=(R-y>>2)*9|0;v=f[y>>2]|0;if(v>>>0<10){m=y;break}else m=10;do{m=m*10|0;b=b+1|0}while(v>>>0>=m>>>0);m=y}}while(0);C=_+4|0;y=m;k=k>>>0>C>>>0?C:k}E=0-b|0;while(1){if(k>>>0<=y>>>0){A=0;C=k;break}_=k+-4|0;if(!(f[_>>2]|0))k=_;else{A=1;C=k;break}}do{if(S){h=(T&1^1)+h|0;if((h|0)>(b|0)&(b|0)>-5){p=p+-1|0;h=h+-1-b|0}else{p=p+-2|0;h=h+-1|0}k=B&8;if(k)break;do{if(A){k=f[C+-4>>2]|0;if(!k){_=9;break}if(!((k>>>0)%10|0)){m=10;_=0}else{_=0;break}do{m=m*10|0;_=_+1|0}while(((k>>>0)%(m>>>0)|0|0)==0)}else _=9}while(0);k=((C-R>>2)*9|0)+-9|0;if((p|32|0)==102){k=k-_|0;k=(k|0)<0?0:k;h=(h|0)<(k|0)?h:k;k=0;break}else{k=k+b-_|0;k=(k|0)<0?0:k;h=(h|0)<(k|0)?h:k;k=0;break}}else k=B&8}while(0);M=h|k;m=(M|0)!=0&1;v=(p|32|0)==102;if(v){b=(b|0)>0?b:0;p=0}else{_=(b|0)<0?E:b;_=pl(_,((_|0)<0)<<31>>31,W)|0;if((Q-_|0)<2)do{_=_+-1|0;t[_>>0]=48}while((Q-_|0)<2);t[_+-1>>0]=(b>>31&2)+43;R=_+-2|0;t[R>>0]=p;b=Q-R|0;p=R}E=P+1+h+m+b|0;gl(e,32,D,E,B);if(!(f[e>>2]&32))el(O,P,e)|0;gl(e,48,D,E,B^65536);do{if(v){_=y>>>0>L>>>0?L:y;b=_;do{k=pl(f[b>>2]|0,0,Y)|0;do{if((b|0)==(_|0)){if((k|0)!=(Y|0))break;t[X>>0]=48;k=X}else{if(k>>>0<=te>>>0)break;do{k=k+-1|0;t[k>>0]=48}while(k>>>0>te>>>0)}}while(0);if(!(f[e>>2]&32))el(k,q-k|0,e)|0;b=b+4|0}while(b>>>0<=L>>>0);do{if(M){if(f[e>>2]&32)break;el(25658,1,e)|0}}while(0);if((h|0)>0&b>>>0<C>>>0){k=b;while(1){b=pl(f[k>>2]|0,0,Y)|0;if(b>>>0>te>>>0)do{b=b+-1|0;t[b>>0]=48}while(b>>>0>te>>>0);if(!(f[e>>2]&32))el(b,(h|0)>9?9:h,e)|0;k=k+4|0;b=h+-9|0;if(!((h|0)>9&k>>>0<C>>>0)){h=b;break}else h=b}}gl(e,48,h+9|0,9,0)}else{v=A?C:y+4|0;if((h|0)>-1){m=(k|0)==0;_=y;do{b=pl(f[_>>2]|0,0,Y)|0;if((b|0)==(Y|0)){t[X>>0]=48;b=X}do{if((_|0)==(y|0)){k=b+1|0;if(!(f[e>>2]&32))el(b,1,e)|0;if(m&(h|0)<1){b=k;break}if(f[e>>2]&32){b=k;break}el(25658,1,e)|0;b=k}else{if(b>>>0<=te>>>0)break;do{b=b+-1|0;t[b>>0]=48}while(b>>>0>te>>>0)}}while(0);k=q-b|0;if(!(f[e>>2]&32))el(b,(h|0)>(k|0)?k:h,e)|0;h=h-k|0;_=_+4|0}while(_>>>0<v>>>0&(h|0)>-1)}gl(e,48,h+18|0,18,0);if(f[e>>2]&32)break;el(p,Q-p|0,e)|0}}while(0);gl(e,32,D,E,B^8192);h=(E|0)<(D|0)?D:E}else{v=(p&32|0)!=0;m=w!=w|0.0!=0.0;b=m?0:P;_=b+3|0;gl(e,32,D,_,k);h=f[e>>2]|0;if(!(h&32)){el(O,b,e)|0;h=f[e>>2]|0}if(!(h&32))el(m?v?25650:25654:v?25642:25646,3,e)|0;gl(e,32,D,_,B^8192);h=(_|0)<(D|0)?D:_}}while(0);y=I;continue e}default:{k=B;b=_;v=0;p=25606;h=U}}}while(0);i:do{if((N|0)==64){k=ee;b=f[k>>2]|0;k=f[k+4>>2]|0;m=p&32;if(!((b|0)==0&(k|0)==0)){h=U;do{h=h+-1|0;t[h>>0]=a[25590+(b&15)>>0]|m;b=Dl(b|0,k|0,4)|0;k=x}while(!((b|0)==0&(k|0)==0));N=ee;if((v&8|0)==0|(f[N>>2]|0)==0&(f[N+4>>2]|0)==0){b=v;v=0;m=25606;N=77}else{b=v;v=2;m=25606+(p>>4)|0;N=77}}else{h=U;b=v;v=0;m=25606;N=77}}else if((N|0)==76){h=pl(h,b,U)|0;b=B;v=k;N=77}else if((N|0)==82){N=0;B=ll(h,0,_)|0;O=(B|0)==0;y=h;b=O?_:B-h|0;v=0;p=25606;h=O?h+_|0:B}else if((N|0)==86){N=0;b=0;h=0;m=f[ee>>2]|0;while(1){k=f[m>>2]|0;if(!k)break;h=Cs(fe,k)|0;if((h|0)<0|h>>>0>(_-b|0)>>>0)break;b=h+b|0;if(_>>>0>b>>>0)m=m+4|0;else break}if((h|0)<0){o=-1;break e}gl(e,32,D,b,B);if(!b){h=0;N=98}else{k=0;_=f[ee>>2]|0;while(1){h=f[_>>2]|0;if(!h){h=b;N=98;break i}h=Cs(fe,h)|0;k=h+k|0;if((k|0)>(b|0)){h=b;N=98;break i}if(!(f[e>>2]&32))el(fe,h,e)|0;if(k>>>0>=b>>>0){h=b;N=98;break}else _=_+4|0}}}}while(0);if((N|0)==98){N=0;gl(e,32,D,h,B^8192);y=I;h=(D|0)>(h|0)?D:h;continue}if((N|0)==77){N=0;k=(_|0)>-1?b&-65537:b;b=ee;b=(f[b>>2]|0)!=0|(f[b+4>>2]|0)!=0;if((_|0)!=0|b){b=(b&1^1)+(V-h)|0;y=h;b=(_|0)>(b|0)?_:b;p=m;h=U}else{y=U;b=0;p=m;h=U}}m=h-y|0;b=(b|0)<(m|0)?m:b;_=v+b|0;h=(D|0)<(_|0)?_:D;gl(e,32,h,_,k);if(!(f[e>>2]&32))el(p,v,e)|0;gl(e,48,h,_,k^65536);gl(e,48,b,m,0);if(!(f[e>>2]&32))el(y,m,e)|0;gl(e,32,h,_,k^8192);y=I}e:do{if((N|0)==245)if(!e)if(i){o=1;while(1){i=f[l+(o<<2)>>2]|0;if(!i)break;vl(s+(o<<3)|0,i,r);o=o+1|0;if((o|0)>=10){o=1;break e}}if((o|0)<10)while(1){if(f[l+(o<<2)>>2]|0){o=-1;break e}o=o+1|0;if((o|0)>=10){o=1;break}}else o=1}else o=0}while(0);c=se;return o|0}function ml(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0;t=e+20|0;n=f[t>>2]|0;e=(f[e+16>>2]|0)-n|0;e=e>>>0>r>>>0?r:e;Nl(n|0,i|0,e|0)|0;f[t>>2]=(f[t>>2]|0)+e;return r|0}function vl(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0.0;e:do{if(i>>>0<=20)do{switch(i|0){case 9:{t=(f[r>>2]|0)+(4-1)&~(4-1);i=f[t>>2]|0;f[r>>2]=t+4;f[e>>2]=i;break e}case 10:{t=(f[r>>2]|0)+(4-1)&~(4-1);i=f[t>>2]|0;f[r>>2]=t+4;t=e;f[t>>2]=i;f[t+4>>2]=((i|0)<0)<<31>>31;break e}case 11:{t=(f[r>>2]|0)+(4-1)&~(4-1);i=f[t>>2]|0;f[r>>2]=t+4;t=e;f[t>>2]=i;f[t+4>>2]=0;break e}case 12:{t=(f[r>>2]|0)+(8-1)&~(8-1);i=t;n=f[i>>2]|0;i=f[i+4>>2]|0;f[r>>2]=t+8;t=e;f[t>>2]=n;f[t+4>>2]=i;break e}case 13:{n=(f[r>>2]|0)+(4-1)&~(4-1);t=f[n>>2]|0;f[r>>2]=n+4;t=(t&65535)<<16>>16;n=e;f[n>>2]=t;f[n+4>>2]=((t|0)<0)<<31>>31;break e}case 14:{n=(f[r>>2]|0)+(4-1)&~(4-1);t=f[n>>2]|0;f[r>>2]=n+4;n=e;f[n>>2]=t&65535;f[n+4>>2]=0;break e}case 15:{n=(f[r>>2]|0)+(4-1)&~(4-1);t=f[n>>2]|0;f[r>>2]=n+4;t=(t&255)<<24>>24;n=e;f[n>>2]=t;f[n+4>>2]=((t|0)<0)<<31>>31;break e}case 16:{n=(f[r>>2]|0)+(4-1)&~(4-1);t=f[n>>2]|0;f[r>>2]=n+4;n=e;f[n>>2]=t&255;f[n+4>>2]=0;break e}case 17:{n=(f[r>>2]|0)+(8-1)&~(8-1);a=+u[n>>3];f[r>>2]=n+8;u[e>>3]=a;break e}case 18:{n=(f[r>>2]|0)+(8-1)&~(8-1);a=+u[n>>3];f[r>>2]=n+8;u[e>>3]=a;break e}default:break e}}while(0)}while(0);return}function pl(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if(i>>>0>0|(i|0)==0&e>>>0>4294967295)while(1){n=ql(e|0,i|0,10,0)|0;r=r+-1|0;t[r>>0]=n|48;n=Yl(e|0,i|0,10,0)|0;if(i>>>0>9|(i|0)==9&e>>>0>4294967295){e=n;i=x}else{e=n;break}}if(e)while(1){r=r+-1|0;t[r>>0]=(e>>>0)%10|0|48;if(e>>>0<10)break;else e=(e>>>0)/10|0}return r|0}function gl(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0;l=c;c=c+256|0;s=l;do{if((r|0)>(t|0)&(n&73728|0)==0){n=r-t|0;Ol(s|0,i|0,(n>>>0>256?256:n)|0)|0;i=f[e>>2]|0;a=(i&32|0)==0;if(n>>>0>255){t=r-t|0;do{if(a){el(s,256,e)|0;i=f[e>>2]|0}n=n+-256|0;a=(i&32|0)==0}while(n>>>0>255);if(a)n=t&255;else break}else if(!a)break;el(s,n,e)|0}}while(0);c=l;return}function yl(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0;do{if(e>>>0<245){b=e>>>0<11?16:e+11&-8;e=b>>>3;l=f[735]|0;r=l>>>e;if(r&3){e=(r&1^1)+e|0;t=e<<1;r=2980+(t<<2)|0;t=2980+(t+2<<2)|0;n=f[t>>2]|0;a=n+8|0;s=f[a>>2]|0;do{if((r|0)!=(s|0)){if(s>>>0<(f[739]|0)>>>0)ye();i=s+12|0;if((f[i>>2]|0)==(n|0)){f[i>>2]=r;f[t>>2]=s;break}else ye()}else f[735]=l&~(1<<e)}while(0);F=e<<3;f[n+4>>2]=F|3;F=n+(F|4)|0;f[F>>2]=f[F>>2]|1;F=a;return F|0}s=f[737]|0;if(b>>>0>s>>>0){if(r){t=2<<e;t=r<<e&(t|0-t);t=(t&0-t)+-1|0;o=t>>>12&16;t=t>>>o;n=t>>>5&8;t=t>>>n;a=t>>>2&4;t=t>>>a;r=t>>>1&2;t=t>>>r;e=t>>>1&1;e=(n|o|a|r|e)+(t>>>e)|0;t=e<<1;r=2980+(t<<2)|0;t=2980+(t+2<<2)|0;a=f[t>>2]|0;o=a+8|0;n=f[o>>2]|0;do{if((r|0)!=(n|0)){if(n>>>0<(f[739]|0)>>>0)ye();i=n+12|0;if((f[i>>2]|0)==(a|0)){f[i>>2]=r;f[t>>2]=n;u=f[737]|0;break}else ye()}else{f[735]=l&~(1<<e);u=s}}while(0);F=e<<3;s=F-b|0;f[a+4>>2]=b|3;l=a+b|0;f[a+(b|4)>>2]=s|1;f[a+F>>2]=s;if(u){n=f[740]|0;r=u>>>3;i=r<<1;t=2980+(i<<2)|0;e=f[735]|0;r=1<<r;if(e&r){e=2980+(i+2<<2)|0;i=f[e>>2]|0;if(i>>>0<(f[739]|0)>>>0)ye();else{c=e;h=i}}else{f[735]=e|r;c=2980+(i+2<<2)|0;h=t}f[c>>2]=n;f[h+12>>2]=n;f[n+8>>2]=h;f[n+12>>2]=t}f[737]=s;f[740]=l;F=o;return F|0}e=f[736]|0;if(e){r=(e&0-e)+-1|0;N=r>>>12&16;r=r>>>N;D=r>>>5&8;r=r>>>D;F=r>>>2&4;r=r>>>F;e=r>>>1&2;r=r>>>e;t=r>>>1&1;t=f[3244+((D|N|F|e|t)+(r>>>t)<<2)>>2]|0;r=(f[t+4>>2]&-8)-b|0;e=t;while(1){i=f[e+16>>2]|0;if(!i){i=f[e+20>>2]|0;if(!i){o=r;break}}e=(f[i+4>>2]&-8)-b|0;F=e>>>0<r>>>0;r=F?e:r;e=i;t=F?i:t}a=f[739]|0;if(t>>>0<a>>>0)ye();l=t+b|0;if(t>>>0>=l>>>0)ye();s=f[t+24>>2]|0;r=f[t+12>>2]|0;do{if((r|0)==(t|0)){e=t+20|0;i=f[e>>2]|0;if(!i){e=t+16|0;i=f[e>>2]|0;if(!i){d=0;break}}while(1){r=i+20|0;n=f[r>>2]|0;if(n){i=n;e=r;continue}r=i+16|0;n=f[r>>2]|0;if(!n)break;else{i=n;e=r}}if(e>>>0<a>>>0)ye();else{f[e>>2]=0;d=i;break}}else{n=f[t+8>>2]|0;if(n>>>0<a>>>0)ye();i=n+12|0;if((f[i>>2]|0)!=(t|0))ye();e=r+8|0;if((f[e>>2]|0)==(t|0)){f[i>>2]=r;f[e>>2]=n;d=r;break}else ye()}}while(0);do{if(s){i=f[t+28>>2]|0;e=3244+(i<<2)|0;if((t|0)==(f[e>>2]|0)){f[e>>2]=d;if(!d){f[736]=f[736]&~(1<<i);break}}else{if(s>>>0<(f[739]|0)>>>0)ye();i=s+16|0;if((f[i>>2]|0)==(t|0))f[i>>2]=d;else f[s+20>>2]=d;if(!d)break}e=f[739]|0;if(d>>>0<e>>>0)ye();f[d+24>>2]=s;i=f[t+16>>2]|0;do{if(i)if(i>>>0<e>>>0)ye();else{f[d+16>>2]=i;f[i+24>>2]=d;break}}while(0);i=f[t+20>>2]|0;if(i)if(i>>>0<(f[739]|0)>>>0)ye();else{f[d+20>>2]=i;f[i+24>>2]=d;break}}}while(0);if(o>>>0<16){F=o+b|0;f[t+4>>2]=F|3;F=t+(F+4)|0;f[F>>2]=f[F>>2]|1}else{f[t+4>>2]=b|3;f[t+(b|4)>>2]=o|1;f[t+(o+b)>>2]=o;i=f[737]|0;if(i){a=f[740]|0;r=i>>>3;i=r<<1;n=2980+(i<<2)|0;e=f[735]|0;r=1<<r;if(e&r){i=2980+(i+2<<2)|0;e=f[i>>2]|0;if(e>>>0<(f[739]|0)>>>0)ye();else{k=i;w=e}}else{f[735]=e|r;k=2980+(i+2<<2)|0;w=n}f[k>>2]=a;f[w+12>>2]=a;f[a+8>>2]=w;f[a+12>>2]=n}f[737]=o;f[740]=l}F=t+8|0;return F|0}else w=b}else w=b}else if(e>>>0<=4294967231){e=e+11|0;h=e&-8;c=f[736]|0;if(c){r=0-h|0;e=e>>>8;if(e)if(h>>>0>16777215)u=31;else{w=(e+1048320|0)>>>16&8;g=e<<w;k=(g+520192|0)>>>16&4;g=g<<k;u=(g+245760|0)>>>16&2;u=14-(k|w|u)+(g<<u>>>15)|0;u=h>>>(u+7|0)&1|u<<1}else u=0;e=f[3244+(u<<2)>>2]|0;e:do{if(!e){n=0;e=0;g=86}else{s=r;n=0;l=h<<((u|0)==31?0:25-(u>>>1)|0);o=e;e=0;while(1){a=f[o+4>>2]&-8;r=a-h|0;if(r>>>0<s>>>0)if((a|0)==(h|0)){a=o;e=o;g=90;break e}else e=o;else r=s;g=f[o+20>>2]|0;o=f[o+16+(l>>>31<<2)>>2]|0;n=(g|0)==0|(g|0)==(o|0)?n:g;if(!o){g=86;break}else{s=r;l=l<<1}}}}while(0);if((g|0)==86){if((n|0)==0&(e|0)==0){e=2<<u;e=c&(e|0-e);if(!e){w=h;break}e=(e&0-e)+-1|0;d=e>>>12&16;e=e>>>d;c=e>>>5&8;e=e>>>c;k=e>>>2&4;e=e>>>k;w=e>>>1&2;e=e>>>w;n=e>>>1&1;n=f[3244+((c|d|k|w|n)+(e>>>n)<<2)>>2]|0;e=0}if(!n){l=r;o=e}else{a=n;g=90}}if((g|0)==90)while(1){g=0;w=(f[a+4>>2]&-8)-h|0;n=w>>>0<r>>>0;r=n?w:r;e=n?a:e;n=f[a+16>>2]|0;if(n){a=n;g=90;continue}a=f[a+20>>2]|0;if(!a){l=r;o=e;break}else g=90}if((o|0)!=0?l>>>0<((f[737]|0)-h|0)>>>0:0){n=f[739]|0;if(o>>>0<n>>>0)ye();s=o+h|0;if(o>>>0>=s>>>0)ye();a=f[o+24>>2]|0;r=f[o+12>>2]|0;do{if((r|0)==(o|0)){e=o+20|0;i=f[e>>2]|0;if(!i){e=o+16|0;i=f[e>>2]|0;if(!i){b=0;break}}while(1){r=i+20|0;t=f[r>>2]|0;if(t){i=t;e=r;continue}r=i+16|0;t=f[r>>2]|0;if(!t)break;else{i=t;e=r}}if(e>>>0<n>>>0)ye();else{f[e>>2]=0;b=i;break}}else{t=f[o+8>>2]|0;if(t>>>0<n>>>0)ye();i=t+12|0;if((f[i>>2]|0)!=(o|0))ye();e=r+8|0;if((f[e>>2]|0)==(o|0)){f[i>>2]=r;f[e>>2]=t;b=r;break}else ye()}}while(0);do{if(a){i=f[o+28>>2]|0;e=3244+(i<<2)|0;if((o|0)==(f[e>>2]|0)){f[e>>2]=b;if(!b){f[736]=f[736]&~(1<<i);break}}else{if(a>>>0<(f[739]|0)>>>0)ye();i=a+16|0;if((f[i>>2]|0)==(o|0))f[i>>2]=b;else f[a+20>>2]=b;if(!b)break}e=f[739]|0;if(b>>>0<e>>>0)ye();f[b+24>>2]=a;i=f[o+16>>2]|0;do{if(i)if(i>>>0<e>>>0)ye();else{f[b+16>>2]=i;f[i+24>>2]=b;break}}while(0);i=f[o+20>>2]|0;if(i)if(i>>>0<(f[739]|0)>>>0)ye();else{f[b+20>>2]=i;f[i+24>>2]=b;break}}}while(0);e:do{if(l>>>0>=16){f[o+4>>2]=h|3;f[o+(h|4)>>2]=l|1;f[o+(l+h)>>2]=l;i=l>>>3;if(l>>>0<256){e=i<<1;t=2980+(e<<2)|0;r=f[735]|0;i=1<<i;if(r&i){i=2980+(e+2<<2)|0;e=f[i>>2]|0;if(e>>>0<(f[739]|0)>>>0)ye();else{m=i;v=e}}else{f[735]=r|i;m=2980+(e+2<<2)|0;v=t}f[m>>2]=s;f[v+12>>2]=s;f[o+(h+8)>>2]=v;f[o+(h+12)>>2]=t;break}i=l>>>8;if(i)if(l>>>0>16777215)t=31;else{N=(i+1048320|0)>>>16&8;F=i<<N;D=(F+520192|0)>>>16&4;F=F<<D;t=(F+245760|0)>>>16&2;t=14-(D|N|t)+(F<<t>>>15)|0;t=l>>>(t+7|0)&1|t<<1}else t=0;i=3244+(t<<2)|0;f[o+(h+28)>>2]=t;f[o+(h+20)>>2]=0;f[o+(h+16)>>2]=0;e=f[736]|0;r=1<<t;if(!(e&r)){f[736]=e|r;f[i>>2]=s;f[o+(h+24)>>2]=i;f[o+(h+12)>>2]=s;f[o+(h+8)>>2]=s;break}i=f[i>>2]|0;i:do{if((f[i+4>>2]&-8|0)!=(l|0)){t=l<<((t|0)==31?0:25-(t>>>1)|0);while(1){e=i+16+(t>>>31<<2)|0;r=f[e>>2]|0;if(!r)break;if((f[r+4>>2]&-8|0)==(l|0)){E=r;break i}else{t=t<<1;i=r}}if(e>>>0<(f[739]|0)>>>0)ye();else{f[e>>2]=s;f[o+(h+24)>>2]=i;f[o+(h+12)>>2]=s;f[o+(h+8)>>2]=s;break e}}else E=i}while(0);i=E+8|0;e=f[i>>2]|0;F=f[739]|0;if(e>>>0>=F>>>0&E>>>0>=F>>>0){f[e+12>>2]=s;f[i>>2]=s;f[o+(h+8)>>2]=e;f[o+(h+12)>>2]=E;f[o+(h+24)>>2]=0;break}else ye()}else{F=l+h|0;f[o+4>>2]=F|3;F=o+(F+4)|0;f[F>>2]=f[F>>2]|1}}while(0);F=o+8|0;return F|0}else w=h}else w=h}else w=-1}while(0);r=f[737]|0;if(r>>>0>=w>>>0){i=r-w|0;e=f[740]|0;if(i>>>0>15){f[740]=e+w;f[737]=i;f[e+(w+4)>>2]=i|1;f[e+r>>2]=i;f[e+4>>2]=w|3}else{f[737]=0;f[740]=0;f[e+4>>2]=r|3;F=e+(r+4)|0;f[F>>2]=f[F>>2]|1}F=e+8|0;return F|0}e=f[738]|0;if(e>>>0>w>>>0){N=e-w|0;f[738]=N;F=f[741]|0;f[741]=F+w;f[F+(w+4)>>2]=N|1;f[F+4>>2]=w|3;F=F+8|0;return F|0}do{if(!(f[853]|0)){e=Ce(30)|0;if(!(e+-1&e)){f[855]=e;f[854]=e;f[856]=-1;f[857]=-1;f[858]=0;f[846]=0;f[853]=(je(0)|0)&-16^1431655768;break}else ye()}}while(0);o=w+48|0;l=f[855]|0;u=w+47|0;s=l+u|0;l=0-l|0;c=s&l;if(c>>>0<=w>>>0){F=0;return F|0}e=f[845]|0;if((e|0)!=0?(v=f[843]|0,E=v+c|0,E>>>0<=v>>>0|E>>>0>e>>>0):0){F=0;return F|0}e:do{if(!(f[846]&4)){e=f[741]|0;i:do{if(e){n=3388;while(1){r=f[n>>2]|0;if(r>>>0<=e>>>0?(_=n+4|0,(r+(f[_>>2]|0)|0)>>>0>e>>>0):0){a=n;e=_;break}n=f[n+8>>2]|0;if(!n){g=174;break i}}r=s-(f[738]|0)&l;if(r>>>0<2147483647){n=Se(r|0)|0;E=(n|0)==((f[a>>2]|0)+(f[e>>2]|0)|0);e=E?r:0;if(E){if((n|0)!=(-1|0)){y=n;k=e;g=194;break e}}else g=184}else e=0}else g=174}while(0);do{if((g|0)==174){a=Se(0)|0;if((a|0)!=(-1|0)){e=a;r=f[854]|0;n=r+-1|0;if(!(n&e))r=c;else r=c-e+(n+e&0-r)|0;e=f[843]|0;n=e+r|0;if(r>>>0>w>>>0&r>>>0<2147483647){E=f[845]|0;if((E|0)!=0?n>>>0<=e>>>0|n>>>0>E>>>0:0){e=0;break}n=Se(r|0)|0;E=(n|0)==(a|0);e=E?r:0;if(E){y=a;k=e;g=194;break e}else g=184}else e=0}else e=0}}while(0);i:do{if((g|0)==184){a=0-r|0;do{if(o>>>0>r>>>0&(r>>>0<2147483647&(n|0)!=(-1|0))?(p=f[855]|0,p=u-r+p&0-p,p>>>0<2147483647):0)if((Se(p|0)|0)==(-1|0)){Se(a|0)|0;break i}else{r=p+r|0;break}}while(0);if((n|0)!=(-1|0)){y=n;k=r;g=194;break e}}}while(0);f[846]=f[846]|4;g=191}else{e=0;g=191}}while(0);if((((g|0)==191?c>>>0<2147483647:0)?(y=Se(c|0)|0,M=Se(0)|0,y>>>0<M>>>0&((y|0)!=(-1|0)&(M|0)!=(-1|0))):0)?(A=M-y|0,S=A>>>0>(w+40|0)>>>0,S):0){k=S?A:e;g=194}if((g|0)==194){e=(f[843]|0)+k|0;f[843]=e;if(e>>>0>(f[844]|0)>>>0)f[844]=e;s=f[741]|0;e:do{if(s){a=3388;do{e=f[a>>2]|0;r=a+4|0;n=f[r>>2]|0;if((y|0)==(e+n|0)){T=e;C=r;R=n;L=a;g=204;break}a=f[a+8>>2]|0}while((a|0)!=0);if(((g|0)==204?(f[L+12>>2]&8|0)==0:0)?s>>>0<y>>>0&s>>>0>=T>>>0:0){f[C>>2]=R+k;F=(f[738]|0)+k|0;N=s+8|0;N=(N&7|0)==0?0:0-N&7;D=F-N|0;f[741]=s+N;f[738]=D;f[s+(N+4)>>2]=D|1;f[s+(F+4)>>2]=40;f[742]=f[857];break}e=f[739]|0;if(y>>>0<e>>>0){f[739]=y;e=y}r=y+k|0;a=3388;while(1){if((f[a>>2]|0)==(r|0)){n=a;r=a;g=212;break}a=f[a+8>>2]|0;if(!a){r=3388;break}}if((g|0)==212)if(!(f[r+12>>2]&8)){f[n>>2]=y;d=r+4|0;f[d>>2]=(f[d>>2]|0)+k;d=y+8|0;d=(d&7|0)==0?0:0-d&7;u=y+(k+8)|0;u=(u&7|0)==0?0:0-u&7;i=y+(u+k)|0;h=d+w|0;b=y+h|0;c=i-(y+d)-w|0;f[y+(d+4)>>2]=w|3;i:do{if((i|0)!=(s|0)){if((i|0)==(f[740]|0)){F=(f[737]|0)+c|0;f[737]=F;f[740]=b;f[y+(h+4)>>2]=F|1;f[y+(F+h)>>2]=F;break}l=k+4|0;r=f[y+(l+u)>>2]|0;if((r&3|0)==1){o=r&-8;a=r>>>3;r:do{if(r>>>0>=256){s=f[y+((u|24)+k)>>2]|0;t=f[y+(k+12+u)>>2]|0;do{if((t|0)==(i|0)){n=u|16;t=y+(l+n)|0;r=f[t>>2]|0;if(!r){t=y+(n+k)|0;r=f[t>>2]|0;if(!r){I=0;break}}while(1){n=r+20|0;a=f[n>>2]|0;if(a){r=a;t=n;continue}n=r+16|0;a=f[n>>2]|0;if(!a)break;else{r=a;t=n}}if(t>>>0<e>>>0)ye();else{f[t>>2]=0;I=r;break}}else{n=f[y+((u|8)+k)>>2]|0;if(n>>>0<e>>>0)ye();e=n+12|0;if((f[e>>2]|0)!=(i|0))ye();r=t+8|0;if((f[r>>2]|0)==(i|0)){f[e>>2]=t;f[r>>2]=n;I=t;break}else ye()}}while(0);if(!s)break;e=f[y+(k+28+u)>>2]|0;r=3244+(e<<2)|0;do{if((i|0)!=(f[r>>2]|0)){if(s>>>0<(f[739]|0)>>>0)ye();e=s+16|0;if((f[e>>2]|0)==(i|0))f[e>>2]=I;else f[s+20>>2]=I;if(!I)break r}else{f[r>>2]=I;if(I)break;f[736]=f[736]&~(1<<e);break r}}while(0);r=f[739]|0;if(I>>>0<r>>>0)ye();f[I+24>>2]=s;i=u|16;e=f[y+(i+k)>>2]|0;do{if(e)if(e>>>0<r>>>0)ye();else{f[I+16>>2]=e;f[e+24>>2]=I;break}}while(0);i=f[y+(l+i)>>2]|0;if(!i)break;if(i>>>0<(f[739]|0)>>>0)ye();else{f[I+20>>2]=i;f[i+24>>2]=I;break}}else{t=f[y+((u|8)+k)>>2]|0;n=f[y+(k+12+u)>>2]|0;r=2980+(a<<1<<2)|0;do{if((t|0)!=(r|0)){if(t>>>0<e>>>0)ye();if((f[t+12>>2]|0)==(i|0))break;ye()}}while(0);if((n|0)==(t|0)){f[735]=f[735]&~(1<<a);break}do{if((n|0)==(r|0))x=n+8|0;else{if(n>>>0<e>>>0)ye();e=n+8|0;if((f[e>>2]|0)==(i|0)){x=e;break}ye()}}while(0);f[t+12>>2]=n;f[x>>2]=t}}while(0);i=y+((o|u)+k)|0;n=o+c|0}else n=c;i=i+4|0;f[i>>2]=f[i>>2]&-2;f[y+(h+4)>>2]=n|1;f[y+(n+h)>>2]=n;i=n>>>3;if(n>>>0<256){e=i<<1;t=2980+(e<<2)|0;r=f[735]|0;i=1<<i;do{if(!(r&i)){f[735]=r|i;D=2980+(e+2<<2)|0;N=t}else{i=2980+(e+2<<2)|0;e=f[i>>2]|0;if(e>>>0>=(f[739]|0)>>>0){D=i;N=e;break}ye()}}while(0);f[D>>2]=b;f[N+12>>2]=b;f[y+(h+8)>>2]=N;f[y+(h+12)>>2]=t;break}i=n>>>8;do{if(!i)t=0;else{if(n>>>0>16777215){t=31;break}D=(i+1048320|0)>>>16&8;N=i<<D;I=(N+520192|0)>>>16&4;N=N<<I;t=(N+245760|0)>>>16&2;t=14-(I|D|t)+(N<<t>>>15)|0;t=n>>>(t+7|0)&1|t<<1}}while(0);i=3244+(t<<2)|0;f[y+(h+28)>>2]=t;f[y+(h+20)>>2]=0;f[y+(h+16)>>2]=0;e=f[736]|0;r=1<<t;if(!(e&r)){f[736]=e|r;f[i>>2]=b;f[y+(h+24)>>2]=i;f[y+(h+12)>>2]=b;f[y+(h+8)>>2]=b;break}i=f[i>>2]|0;r:do{if((f[i+4>>2]&-8|0)!=(n|0)){t=n<<((t|0)==31?0:25-(t>>>1)|0);while(1){e=i+16+(t>>>31<<2)|0;r=f[e>>2]|0;if(!r)break;if((f[r+4>>2]&-8|0)==(n|0)){F=r;break r}else{t=t<<1;i=r}}if(e>>>0<(f[739]|0)>>>0)ye();else{f[e>>2]=b;f[y+(h+24)>>2]=i;f[y+(h+12)>>2]=b;f[y+(h+8)>>2]=b;break i}}else F=i}while(0);i=F+8|0;e=f[i>>2]|0;N=f[739]|0;if(e>>>0>=N>>>0&F>>>0>=N>>>0){f[e+12>>2]=b;f[i>>2]=b;f[y+(h+8)>>2]=e;f[y+(h+12)>>2]=F;f[y+(h+24)>>2]=0;break}else ye()}else{F=(f[738]|0)+c|0;f[738]=F;f[741]=b;f[y+(h+4)>>2]=F|1}}while(0);F=y+(d|8)|0;return F|0}else r=3388;while(1){e=f[r>>2]|0;if(e>>>0<=s>>>0?(i=f[r+4>>2]|0,t=e+i|0,t>>>0>s>>>0):0)break;r=f[r+8>>2]|0}n=e+(i+-39)|0;e=e+(i+-47+((n&7|0)==0?0:0-n&7))|0;n=s+16|0;e=e>>>0<n>>>0?s:e;i=e+8|0;r=y+8|0;r=(r&7|0)==0?0:0-r&7;F=k+-40-r|0;f[741]=y+r;f[738]=F;f[y+(r+4)>>2]=F|1;f[y+(k+-36)>>2]=40;f[742]=f[857];r=e+4|0;f[r>>2]=27;f[i>>2]=f[847];f[i+4>>2]=f[848];f[i+8>>2]=f[849];f[i+12>>2]=f[850];f[847]=y;f[848]=k;f[850]=0;f[849]=i;i=e+28|0;f[i>>2]=7;if((e+32|0)>>>0<t>>>0)do{F=i;i=i+4|0;f[i>>2]=7}while((F+8|0)>>>0<t>>>0);if((e|0)!=(s|0)){a=e-s|0;f[r>>2]=f[r>>2]&-2;f[s+4>>2]=a|1;f[e>>2]=a;i=a>>>3;if(a>>>0<256){e=i<<1;t=2980+(e<<2)|0;r=f[735]|0;i=1<<i;if(r&i){i=2980+(e+2<<2)|0;e=f[i>>2]|0;if(e>>>0<(f[739]|0)>>>0)ye();else{P=i;O=e}}else{f[735]=r|i;P=2980+(e+2<<2)|0;O=t}f[P>>2]=s;f[O+12>>2]=s;f[s+8>>2]=O;f[s+12>>2]=t;break}i=a>>>8;if(i)if(a>>>0>16777215)t=31;else{N=(i+1048320|0)>>>16&8;F=i<<N;D=(F+520192|0)>>>16&4;F=F<<D;t=(F+245760|0)>>>16&2;t=14-(D|N|t)+(F<<t>>>15)|0;t=a>>>(t+7|0)&1|t<<1}else t=0;r=3244+(t<<2)|0;f[s+28>>2]=t;f[s+20>>2]=0;f[n>>2]=0;i=f[736]|0;e=1<<t;if(!(i&e)){f[736]=i|e;f[r>>2]=s;f[s+24>>2]=r;f[s+12>>2]=s;f[s+8>>2]=s;break}i=f[r>>2]|0;i:do{if((f[i+4>>2]&-8|0)!=(a|0)){t=a<<((t|0)==31?0:25-(t>>>1)|0);while(1){e=i+16+(t>>>31<<2)|0;r=f[e>>2]|0;if(!r)break;if((f[r+4>>2]&-8|0)==(a|0)){B=r;break i}else{t=t<<1;i=r}}if(e>>>0<(f[739]|0)>>>0)ye();else{f[e>>2]=s;f[s+24>>2]=i;f[s+12>>2]=s;f[s+8>>2]=s;break e}}else B=i}while(0);i=B+8|0;e=f[i>>2]|0;F=f[739]|0;if(e>>>0>=F>>>0&B>>>0>=F>>>0){f[e+12>>2]=s;f[i>>2]=s;f[s+8>>2]=e;f[s+12>>2]=B;f[s+24>>2]=0;break}else ye()}}else{F=f[739]|0;if((F|0)==0|y>>>0<F>>>0)f[739]=y;f[847]=y;f[848]=k;f[850]=0;f[744]=f[853];f[743]=-1;i=0;do{F=i<<1;N=2980+(F<<2)|0;f[2980+(F+3<<2)>>2]=N;f[2980+(F+2<<2)>>2]=N;i=i+1|0}while((i|0)!=32);F=y+8|0;F=(F&7|0)==0?0:0-F&7;N=k+-40-F|0;f[741]=y+F;f[738]=N;f[y+(F+4)>>2]=N|1;f[y+(k+-36)>>2]=40;f[742]=f[857]}}while(0);i=f[738]|0;if(i>>>0>w>>>0){N=i-w|0;f[738]=N;F=f[741]|0;f[741]=F+w;f[F+(w+4)>>2]=N|1;f[F+4>>2]=w|3;F=F+8|0;return F|0}}f[(ms()|0)>>2]=12;F=0;return F|0}function Ml(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0;if(!e)return;i=e+-8|0;l=f[739]|0;if(i>>>0<l>>>0)ye();r=f[e+-4>>2]|0;t=r&3;if((t|0)==1)ye();b=r&-8;w=e+(b+-8)|0;do{if(!(r&1)){i=f[i>>2]|0;if(!t)return;o=-8-i|0;c=e+o|0;h=i+b|0;if(c>>>0<l>>>0)ye();if((c|0)==(f[740]|0)){i=e+(b+-4)|0;r=f[i>>2]|0;if((r&3|0)!=3){p=c;a=h;break}f[737]=h;f[i>>2]=r&-2;f[e+(o+4)>>2]=h|1;f[w>>2]=h;return}n=i>>>3;if(i>>>0<256){t=f[e+(o+8)>>2]|0;r=f[e+(o+12)>>2]|0;i=2980+(n<<1<<2)|0;if((t|0)!=(i|0)){if(t>>>0<l>>>0)ye();if((f[t+12>>2]|0)!=(c|0))ye()}if((r|0)==(t|0)){f[735]=f[735]&~(1<<n);p=c;a=h;break}if((r|0)!=(i|0)){if(r>>>0<l>>>0)ye();i=r+8|0;if((f[i>>2]|0)==(c|0))s=i;else ye()}else s=r+8|0;f[t+12>>2]=r;f[s>>2]=t;p=c;a=h;break}s=f[e+(o+24)>>2]|0;t=f[e+(o+12)>>2]|0;do{if((t|0)==(c|0)){r=e+(o+20)|0;i=f[r>>2]|0;if(!i){r=e+(o+16)|0;i=f[r>>2]|0;if(!i){u=0;break}}while(1){t=i+20|0;n=f[t>>2]|0;if(n){i=n;r=t;continue}t=i+16|0;n=f[t>>2]|0;if(!n)break;else{i=n;r=t}}if(r>>>0<l>>>0)ye();else{f[r>>2]=0;u=i;break}}else{n=f[e+(o+8)>>2]|0;if(n>>>0<l>>>0)ye();i=n+12|0;if((f[i>>2]|0)!=(c|0))ye();r=t+8|0;if((f[r>>2]|0)==(c|0)){f[i>>2]=t;f[r>>2]=n;u=t;break}else ye()}}while(0);if(s){i=f[e+(o+28)>>2]|0;r=3244+(i<<2)|0;if((c|0)==(f[r>>2]|0)){f[r>>2]=u;if(!u){f[736]=f[736]&~(1<<i);p=c;a=h;break}}else{if(s>>>0<(f[739]|0)>>>0)ye();i=s+16|0;if((f[i>>2]|0)==(c|0))f[i>>2]=u;else f[s+20>>2]=u;if(!u){p=c;a=h;break}}r=f[739]|0;if(u>>>0<r>>>0)ye();f[u+24>>2]=s;i=f[e+(o+16)>>2]|0;do{if(i)if(i>>>0<r>>>0)ye();else{f[u+16>>2]=i;f[i+24>>2]=u;break}}while(0);i=f[e+(o+20)>>2]|0;if(i)if(i>>>0<(f[739]|0)>>>0)ye();else{f[u+20>>2]=i;f[i+24>>2]=u;p=c;a=h;break}else{p=c;a=h}}else{p=c;a=h}}else{p=i;a=b}}while(0);if(p>>>0>=w>>>0)ye();i=e+(b+-4)|0;r=f[i>>2]|0;if(!(r&1))ye();if(!(r&2)){if((w|0)==(f[741]|0)){v=(f[738]|0)+a|0;f[738]=v;f[741]=p;f[p+4>>2]=v|1;if((p|0)!=(f[740]|0))return;f[740]=0;f[737]=0;return}if((w|0)==(f[740]|0)){v=(f[737]|0)+a|0;f[737]=v;f[740]=p;f[p+4>>2]=v|1;f[p+v>>2]=v;return}a=(r&-8)+a|0;n=r>>>3;do{if(r>>>0>=256){s=f[e+(b+16)>>2]|0;i=f[e+(b|4)>>2]|0;do{if((i|0)==(w|0)){r=e+(b+12)|0;i=f[r>>2]|0;if(!i){r=e+(b+8)|0;i=f[r>>2]|0;if(!i){k=0;break}}while(1){t=i+20|0;n=f[t>>2]|0;if(n){i=n;r=t;continue}t=i+16|0;n=f[t>>2]|0;if(!n)break;else{i=n;r=t}}if(r>>>0<(f[739]|0)>>>0)ye();else{f[r>>2]=0;k=i;break}}else{r=f[e+b>>2]|0;if(r>>>0<(f[739]|0)>>>0)ye();t=r+12|0;if((f[t>>2]|0)!=(w|0))ye();n=i+8|0;if((f[n>>2]|0)==(w|0)){f[t>>2]=i;f[n>>2]=r;k=i;break}else ye()}}while(0);if(s){i=f[e+(b+20)>>2]|0;r=3244+(i<<2)|0;if((w|0)==(f[r>>2]|0)){f[r>>2]=k;if(!k){f[736]=f[736]&~(1<<i);break}}else{if(s>>>0<(f[739]|0)>>>0)ye();i=s+16|0;if((f[i>>2]|0)==(w|0))f[i>>2]=k;else f[s+20>>2]=k;if(!k)break}r=f[739]|0;if(k>>>0<r>>>0)ye();f[k+24>>2]=s;i=f[e+(b+8)>>2]|0;do{if(i)if(i>>>0<r>>>0)ye();else{f[k+16>>2]=i;f[i+24>>2]=k;break}}while(0);i=f[e+(b+12)>>2]|0;if(i)if(i>>>0<(f[739]|0)>>>0)ye();else{f[k+20>>2]=i;f[i+24>>2]=k;break}}}else{t=f[e+b>>2]|0;r=f[e+(b|4)>>2]|0;i=2980+(n<<1<<2)|0;if((t|0)!=(i|0)){if(t>>>0<(f[739]|0)>>>0)ye();if((f[t+12>>2]|0)!=(w|0))ye()}if((r|0)==(t|0)){f[735]=f[735]&~(1<<n);break}if((r|0)!=(i|0)){if(r>>>0<(f[739]|0)>>>0)ye();i=r+8|0;if((f[i>>2]|0)==(w|0))d=i;else ye()}else d=r+8|0;f[t+12>>2]=r;f[d>>2]=t}}while(0);f[p+4>>2]=a|1;f[p+a>>2]=a;if((p|0)==(f[740]|0)){f[737]=a;return}}else{f[i>>2]=r&-2;f[p+4>>2]=a|1;f[p+a>>2]=a}i=a>>>3;if(a>>>0<256){r=i<<1;n=2980+(r<<2)|0;t=f[735]|0;i=1<<i;if(t&i){i=2980+(r+2<<2)|0;r=f[i>>2]|0;if(r>>>0<(f[739]|0)>>>0)ye();else{_=i;m=r}}else{f[735]=t|i;_=2980+(r+2<<2)|0;m=n}f[_>>2]=p;f[m+12>>2]=p;f[p+8>>2]=m;f[p+12>>2]=n;return}i=a>>>8;if(i)if(a>>>0>16777215)n=31;else{_=(i+1048320|0)>>>16&8;m=i<<_;w=(m+520192|0)>>>16&4;m=m<<w;n=(m+245760|0)>>>16&2;n=14-(w|_|n)+(m<<n>>>15)|0;n=a>>>(n+7|0)&1|n<<1}else n=0;i=3244+(n<<2)|0;f[p+28>>2]=n;f[p+20>>2]=0;f[p+16>>2]=0;r=f[736]|0;t=1<<n;e:do{if(r&t){i=f[i>>2]|0;i:do{if((f[i+4>>2]&-8|0)!=(a|0)){n=a<<((n|0)==31?0:25-(n>>>1)|0);while(1){r=i+16+(n>>>31<<2)|0;t=f[r>>2]|0;if(!t)break;if((f[t+4>>2]&-8|0)==(a|0)){v=t;break i}else{n=n<<1;i=t}}if(r>>>0<(f[739]|0)>>>0)ye();else{f[r>>2]=p;f[p+24>>2]=i;f[p+12>>2]=p;f[p+8>>2]=p;break e}}else v=i}while(0);i=v+8|0;r=f[i>>2]|0;m=f[739]|0;if(r>>>0>=m>>>0&v>>>0>=m>>>0){f[r+12>>2]=p;f[i>>2]=p;f[p+8>>2]=r;f[p+12>>2]=v;f[p+24>>2]=0;break}else ye()}else{f[736]=r|t;f[i>>2]=p;f[p+24>>2]=i;f[p+12>>2]=p;f[p+8>>2]=p}}while(0);p=(f[743]|0)+-1|0;f[743]=p;if(!p)i=3396;else return;while(1){i=f[i>>2]|0;if(!i)break;else i=i+8|0}f[743]=-1;return}function El(e,i){e=e|0;i=i|0;var r=0;if(e){r=ie(i,e)|0;if((i|e)>>>0>65535)r=((r>>>0)/(e>>>0)|0|0)==(i|0)?r:-1}else r=0;i=yl(r)|0;if(!i)return i|0;if(!(f[i+-4>>2]&3))return i|0;Ol(i|0,0,r|0)|0;return i|0}function Al(e,i){e=e|0;i=i|0;var r=0,t=0;if(!e){e=yl(i)|0;return e|0}if(i>>>0>4294967231){f[(ms()|0)>>2]=12;e=0;return e|0}r=Tl(e+-8|0,i>>>0<11?16:i+11&-8)|0;if(r){e=r+8|0;return e|0}r=yl(i)|0;if(!r){e=0;return e|0}t=f[e+-4>>2]|0;t=(t&-8)-((t&3|0)==0?8:4)|0;Nl(r|0,e|0,(t>>>0<i>>>0?t:i)|0)|0;Ml(e);e=r;return e|0}function Sl(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;do{if((i|0)!=8){t=i>>>2;if((i&3|0)!=0|(t|0)==0){e=22;return e|0}if(t+1073741823&t){e=22;return e|0}if((-64-i|0)>>>0<r>>>0){e=12;return e|0}else{t=Cl(i>>>0<16?16:i,r)|0;break}}else t=yl(r)|0}while(0);if(!t){e=12;return e|0}f[e>>2]=t;e=0;return e|0}function Tl(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0;b=e+4|0;k=f[b>>2]|0;o=k&-8;c=e+o|0;l=f[739]|0;r=k&3;if(!((r|0)!=1&e>>>0>=l>>>0&e>>>0<c>>>0))ye();t=e+(o|4)|0;n=f[t>>2]|0;if(!(n&1))ye();if(!r){if(i>>>0<256){e=0;return e|0}if(o>>>0>=(i+4|0)>>>0?(o-i|0)>>>0<=f[855]<<1>>>0:0)return e|0;e=0;return e|0}if(o>>>0>=i>>>0){r=o-i|0;if(r>>>0<=15)return e|0;f[b>>2]=k&1|i|2;f[e+(i+4)>>2]=r|3;f[t>>2]=f[t>>2]|1;Rl(e+i|0,r);return e|0}if((c|0)==(f[741]|0)){r=(f[738]|0)+o|0;if(r>>>0<=i>>>0){e=0;return e|0}d=r-i|0;f[b>>2]=k&1|i|2;f[e+(i+4)>>2]=d|1;f[741]=e+i;f[738]=d;return e|0}if((c|0)==(f[740]|0)){t=(f[737]|0)+o|0;if(t>>>0<i>>>0){e=0;return e|0}r=t-i|0;if(r>>>0>15){f[b>>2]=k&1|i|2;f[e+(i+4)>>2]=r|1;f[e+t>>2]=r;t=e+(t+4)|0;f[t>>2]=f[t>>2]&-2;t=e+i|0}else{f[b>>2]=k&1|t|2;t=e+(t+4)|0;f[t>>2]=f[t>>2]|1;t=0;r=0}f[737]=r;f[740]=t;return e|0}if(n&2){e=0;return e|0}h=(n&-8)+o|0;if(h>>>0<i>>>0){e=0;return e|0}d=h-i|0;a=n>>>3;do{if(n>>>0>=256){s=f[e+(o+24)>>2]|0;a=f[e+(o+12)>>2]|0;do{if((a|0)==(c|0)){t=e+(o+20)|0;r=f[t>>2]|0;if(!r){t=e+(o+16)|0;r=f[t>>2]|0;if(!r){u=0;break}}while(1){n=r+20|0;a=f[n>>2]|0;if(a){r=a;t=n;continue}n=r+16|0;a=f[n>>2]|0;if(!a)break;else{r=a;t=n}}if(t>>>0<l>>>0)ye();else{f[t>>2]=0;u=r;break}}else{n=f[e+(o+8)>>2]|0;if(n>>>0<l>>>0)ye();r=n+12|0;if((f[r>>2]|0)!=(c|0))ye();t=a+8|0;if((f[t>>2]|0)==(c|0)){f[r>>2]=a;f[t>>2]=n;u=a;break}else ye()}}while(0);if(s){r=f[e+(o+28)>>2]|0;t=3244+(r<<2)|0;if((c|0)==(f[t>>2]|0)){f[t>>2]=u;if(!u){f[736]=f[736]&~(1<<r);break}}else{if(s>>>0<(f[739]|0)>>>0)ye();r=s+16|0;if((f[r>>2]|0)==(c|0))f[r>>2]=u;else f[s+20>>2]=u;if(!u)break}t=f[739]|0;if(u>>>0<t>>>0)ye();f[u+24>>2]=s;r=f[e+(o+16)>>2]|0;do{if(r)if(r>>>0<t>>>0)ye();else{f[u+16>>2]=r;f[r+24>>2]=u;break}}while(0);r=f[e+(o+20)>>2]|0;if(r)if(r>>>0<(f[739]|0)>>>0)ye();else{f[u+20>>2]=r;f[r+24>>2]=u;break}}}else{n=f[e+(o+8)>>2]|0;t=f[e+(o+12)>>2]|0;r=2980+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0<l>>>0)ye();if((f[n+12>>2]|0)!=(c|0))ye()}if((t|0)==(n|0)){f[735]=f[735]&~(1<<a);break}if((t|0)!=(r|0)){if(t>>>0<l>>>0)ye();r=t+8|0;if((f[r>>2]|0)==(c|0))s=r;else ye()}else s=t+8|0;f[n+12>>2]=t;f[s>>2]=n}}while(0);if(d>>>0<16){f[b>>2]=h|k&1|2;i=e+(h|4)|0;f[i>>2]=f[i>>2]|1;return e|0}else{f[b>>2]=k&1|i|2;f[e+(i+4)>>2]=d|3;k=e+(h|4)|0;f[k>>2]=f[k>>2]|1;Rl(e+i|0,d);return e|0}return 0}function Cl(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0;e=e>>>0<16?16:e;if(e+-1&e){r=16;while(1)if(r>>>0<e>>>0)r=r<<1;else{e=r;break}}if((-64-e|0)>>>0<=i>>>0){f[(ms()|0)>>2]=12;l=0;return l|0}s=i>>>0<11?16:i+11&-8;t=yl(s+12+e|0)|0;if(!t){l=0;return l|0}i=t+-8|0;r=e+-1|0;do{if(t&r){n=t+r&0-e;r=n+-8|0;a=i;n=(r-a|0)>>>0>15?r:n+(e+-8)|0;a=n-a|0;e=t+-4|0;t=f[e>>2]|0;r=(t&-8)-a|0;if(!(t&3)){f[n>>2]=(f[i>>2]|0)+a;f[n+4>>2]=r;i=n;break}else{t=n+4|0;f[t>>2]=r|f[t>>2]&1|2;r=n+(r+4)|0;f[r>>2]=f[r>>2]|1;f[e>>2]=a|f[e>>2]&1|2;f[t>>2]=f[t>>2]|1;Rl(i,a);i=n;break}}}while(0);e=i+4|0;r=f[e>>2]|0;if((r&3|0)!=0?(l=r&-8,l>>>0>(s+16|0)>>>0):0){a=l-s|0;f[e>>2]=s|r&1|2;f[i+(s|4)>>2]=a|3;l=i+(l|4)|0;f[l>>2]=f[l>>2]|1;Rl(i+s|0,a)}l=i+8|0;return l|0}function Rl(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0;w=e+i|0;r=f[e+4>>2]|0;do{if(!(r&1)){u=f[e>>2]|0;if(!(r&3))return;d=e+(0-u)|0;h=u+i|0;o=f[739]|0;if(d>>>0<o>>>0)ye();if((d|0)==(f[740]|0)){t=e+(i+4)|0;r=f[t>>2]|0;if((r&3|0)!=3){v=d;s=h;break}f[737]=h;f[t>>2]=r&-2;f[e+(4-u)>>2]=h|1;f[w>>2]=h;return}a=u>>>3;if(u>>>0<256){n=f[e+(8-u)>>2]|0;t=f[e+(12-u)>>2]|0;r=2980+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0<o>>>0)ye();if((f[n+12>>2]|0)!=(d|0))ye()}if((t|0)==(n|0)){f[735]=f[735]&~(1<<a);v=d;s=h;break}if((t|0)!=(r|0)){if(t>>>0<o>>>0)ye();r=t+8|0;if((f[r>>2]|0)==(d|0))l=r;else ye()}else l=t+8|0;f[n+12>>2]=t;f[l>>2]=n;v=d;s=h;break}l=f[e+(24-u)>>2]|0;n=f[e+(12-u)>>2]|0;do{if((n|0)==(d|0)){n=16-u|0;t=e+(n+4)|0;r=f[t>>2]|0;if(!r){t=e+n|0;r=f[t>>2]|0;if(!r){c=0;break}}while(1){n=r+20|0;a=f[n>>2]|0;if(a){r=a;t=n;continue}n=r+16|0;a=f[n>>2]|0;if(!a)break;else{r=a;t=n}}if(t>>>0<o>>>0)ye();else{f[t>>2]=0;c=r;break}}else{a=f[e+(8-u)>>2]|0;if(a>>>0<o>>>0)ye();r=a+12|0;if((f[r>>2]|0)!=(d|0))ye();t=n+8|0;if((f[t>>2]|0)==(d|0)){f[r>>2]=n;f[t>>2]=a;c=n;break}else ye()}}while(0);if(l){r=f[e+(28-u)>>2]|0;t=3244+(r<<2)|0;if((d|0)==(f[t>>2]|0)){f[t>>2]=c;if(!c){f[736]=f[736]&~(1<<r);v=d;s=h;break}}else{if(l>>>0<(f[739]|0)>>>0)ye();r=l+16|0;if((f[r>>2]|0)==(d|0))f[r>>2]=c;else f[l+20>>2]=c;if(!c){v=d;s=h;break}}n=f[739]|0;if(c>>>0<n>>>0)ye();f[c+24>>2]=l;r=16-u|0;t=f[e+r>>2]|0;do{if(t)if(t>>>0<n>>>0)ye();else{f[c+16>>2]=t;f[t+24>>2]=c;break}}while(0);r=f[e+(r+4)>>2]|0;if(r)if(r>>>0<(f[739]|0)>>>0)ye();else{f[c+20>>2]=r;f[r+24>>2]=c;v=d;s=h;break}else{v=d;s=h}}else{v=d;s=h}}else{v=e;s=i}}while(0);o=f[739]|0;if(w>>>0<o>>>0)ye();r=e+(i+4)|0;t=f[r>>2]|0;if(!(t&2)){if((w|0)==(f[741]|0)){m=(f[738]|0)+s|0;f[738]=m;f[741]=v;f[v+4>>2]=m|1;if((v|0)!=(f[740]|0))return;f[740]=0;f[737]=0;return}if((w|0)==(f[740]|0)){m=(f[737]|0)+s|0;f[737]=m;f[740]=v;f[v+4>>2]=m|1;f[v+m>>2]=m;return}s=(t&-8)+s|0;a=t>>>3;do{if(t>>>0>=256){l=f[e+(i+24)>>2]|0;n=f[e+(i+12)>>2]|0;do{if((n|0)==(w|0)){t=e+(i+20)|0;r=f[t>>2]|0;if(!r){t=e+(i+16)|0;r=f[t>>2]|0;if(!r){k=0;break}}while(1){n=r+20|0;a=f[n>>2]|0;if(a){r=a;t=n;continue}n=r+16|0;a=f[n>>2]|0;if(!a)break;else{r=a;t=n}}if(t>>>0<o>>>0)ye();else{f[t>>2]=0;k=r;break}}else{a=f[e+(i+8)>>2]|0;if(a>>>0<o>>>0)ye();r=a+12|0;if((f[r>>2]|0)!=(w|0))ye();t=n+8|0;if((f[t>>2]|0)==(w|0)){f[r>>2]=n;f[t>>2]=a;k=n;break}else ye()}}while(0);if(l){r=f[e+(i+28)>>2]|0;t=3244+(r<<2)|0;if((w|0)==(f[t>>2]|0)){f[t>>2]=k;if(!k){f[736]=f[736]&~(1<<r);break}}else{if(l>>>0<(f[739]|0)>>>0)ye();r=l+16|0;if((f[r>>2]|0)==(w|0))f[r>>2]=k;else f[l+20>>2]=k;if(!k)break}t=f[739]|0;if(k>>>0<t>>>0)ye();f[k+24>>2]=l;r=f[e+(i+16)>>2]|0;do{if(r)if(r>>>0<t>>>0)ye();else{f[k+16>>2]=r;f[r+24>>2]=k;break}}while(0);r=f[e+(i+20)>>2]|0;if(r)if(r>>>0<(f[739]|0)>>>0)ye();else{f[k+20>>2]=r;f[r+24>>2]=k;break}}}else{n=f[e+(i+8)>>2]|0;t=f[e+(i+12)>>2]|0;r=2980+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0<o>>>0)ye();if((f[n+12>>2]|0)!=(w|0))ye()}if((t|0)==(n|0)){f[735]=f[735]&~(1<<a);break}if((t|0)!=(r|0)){if(t>>>0<o>>>0)ye();r=t+8|0;if((f[r>>2]|0)==(w|0))b=r;else ye()}else b=t+8|0;f[n+12>>2]=t;f[b>>2]=n}}while(0);f[v+4>>2]=s|1;f[v+s>>2]=s;if((v|0)==(f[740]|0)){f[737]=s;return}}else{f[r>>2]=t&-2;f[v+4>>2]=s|1;f[v+s>>2]=s}r=s>>>3;if(s>>>0<256){t=r<<1;a=2980+(t<<2)|0;n=f[735]|0;r=1<<r;if(n&r){r=2980+(t+2<<2)|0;t=f[r>>2]|0;if(t>>>0<(f[739]|0)>>>0)ye();else{_=r;m=t}}else{f[735]=n|r;_=2980+(t+2<<2)|0;m=a}f[_>>2]=v;f[m+12>>2]=v;f[v+8>>2]=m;f[v+12>>2]=a;return}r=s>>>8;if(r)if(s>>>0>16777215)a=31;else{_=(r+1048320|0)>>>16&8;m=r<<_;w=(m+520192|0)>>>16&4;m=m<<w;a=(m+245760|0)>>>16&2;a=14-(w|_|a)+(m<<a>>>15)|0;a=s>>>(a+7|0)&1|a<<1}else a=0;r=3244+(a<<2)|0;f[v+28>>2]=a;f[v+20>>2]=0;f[v+16>>2]=0;t=f[736]|0;n=1<<a;if(!(t&n)){f[736]=t|n;f[r>>2]=v;f[v+24>>2]=r;f[v+12>>2]=v;f[v+8>>2]=v;return}r=f[r>>2]|0;e:do{if((f[r+4>>2]&-8|0)!=(s|0)){a=s<<((a|0)==31?0:25-(a>>>1)|0);while(1){t=r+16+(a>>>31<<2)|0;n=f[t>>2]|0;if(!n)break;if((f[n+4>>2]&-8|0)==(s|0)){r=n;break e}else{a=a<<1;r=n}}if(t>>>0<(f[739]|0)>>>0)ye();f[t>>2]=v;f[v+24>>2]=r;f[v+12>>2]=v;f[v+8>>2]=v;return}}while(0);t=r+8|0;n=f[t>>2]|0;m=f[739]|0;if(!(n>>>0>=m>>>0&r>>>0>=m>>>0))ye();f[n+12>>2]=v;f[t>>2]=v;f[v+8>>2]=n;f[v+12>>2]=r;f[v+24>>2]=0;return}function Ll(){}function xl(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;t=i-t-(r>>>0>e>>>0|0)>>>0;return(x=t,e-r>>>0|0)|0}function Pl(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){x=i>>r;return e>>>r|(i&(1<<r)-1)<<32-r}x=(i|0)<0?-1:0;return i>>r-32|0}function Ol(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;n=e+r|0;if((r|0)>=20){i=i&255;s=e&3;l=i|i<<8|i<<16|i<<24;a=n&~3;if(s){s=e+4-s|0;while((e|0)<(s|0)){t[e>>0]=i;e=e+1|0}}while((e|0)<(a|0)){f[e>>2]=l;e=e+4|0}}while((e|0)<(n|0)){t[e>>0]=i;e=e+1|0}return e-r|0}function Bl(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){x=i<<r|(e&(1<<r)-1<<32-r)>>>32-r;return e<<r}x=e<<r-32;return 0}function Il(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;r=e+r>>>0;return(x=i+t+(r>>>0<e>>>0|0)>>>0,r|0)|0}function Dl(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){x=i>>>r;return e>>>r|(i&(1<<r)-1)<<32-r}x=0;return i>>>r-32|0}function Nl(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if((r|0)>=4096)return Te(e|0,i|0,r|0)|0;n=e|0;if((e&3)==(i&3)){while(e&3){if(!r)return n|0;t[e>>0]=t[i>>0]|0;e=e+1|0;i=i+1|0;r=r-1|0}while((r|0)>=4){f[e>>2]=f[i>>2];e=e+4|0;i=i+4|0;r=r-4|0}}while((r|0)>0){t[e>>0]=t[i>>0]|0;e=e+1|0;i=i+1|0;r=r-1|0}return n|0}function Fl(e){e=e|0;var i=0;i=t[k+(e&255)>>0]|0;if((i|0)<8)return i|0;i=t[k+(e>>8&255)>>0]|0;if((i|0)<8)return i+8|0;i=t[k+(e>>16&255)>>0]|0;if((i|0)<8)return i+16|0;return(t[k+(e>>>24)>>0]|0)+24|0}function Ul(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,f=0;f=e&65535;n=i&65535;r=ie(n,f)|0;t=e>>>16;e=(r>>>16)+(ie(n,t)|0)|0;n=i>>>16;i=ie(n,f)|0;return(x=(e>>>16)+(ie(n,t)|0)+(((e&65535)+i|0)>>>16)|0,e+i<<16|r&65535|0)|0}function jl(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,f=0,a=0,s=0,l=0,o=0;o=i>>31|((i|0)<0?-1:0)<<1;l=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;f=t>>31|((t|0)<0?-1:0)<<1;n=((t|0)<0?-1:0)>>31|((t|0)<0?-1:0)<<1;s=xl(o^e,l^i,o,l)|0;a=x;e=f^o;i=n^l;return xl((Xl(s,a,xl(f^r,n^t,f,n)|0,x,0)|0)^e,x^i,e,i)|0}function Hl(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0;n=c;c=c+16|0;l=n|0;s=i>>31|((i|0)<0?-1:0)<<1;a=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;u=t>>31|((t|0)<0?-1:0)<<1;o=((t|0)<0?-1:0)>>31|((t|0)<0?-1:0)<<1;e=xl(s^e,a^i,s,a)|0;i=x;Xl(e,i,xl(u^r,o^t,u,o)|0,x,l)|0;t=xl(f[l>>2]^s,f[l+4>>2]^a,s,a)|0;r=x;c=n;return(x=r,t)|0}function zl(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,f=0;n=e;f=r;r=Ul(n,f)|0;e=x;return(x=(ie(i,f)|0)+(ie(t,n)|0)+e|e&0,r|0|0)|0}function Yl(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;return Xl(e,i,r,t,0)|0}function ql(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0;a=c;c=c+16|0;n=a|0;Xl(e,i,r,t,n)|0;c=a;return(x=f[n+4>>2]|0,f[n>>2]|0)|0}function Xl(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0;c=e;o=i;u=o;s=r;d=t;l=d;if(!u){a=(n|0)!=0;if(!l){if(a){f[n>>2]=(c>>>0)%(s>>>0);f[n+4>>2]=0}d=0;n=(c>>>0)/(s>>>0)>>>0;return(x=d,n)|0}else{if(!a){d=0;n=0;return(x=d,n)|0}f[n>>2]=e|0;f[n+4>>2]=i&0;d=0;n=0;return(x=d,n)|0}}a=(l|0)==0;do{if(s){if(!a){a=(te(l|0)|0)-(te(u|0)|0)|0;if(a>>>0<=31){h=a+1|0;l=31-a|0;i=a-31>>31;s=h;e=c>>>(h>>>0)&i|u<<l;i=u>>>(h>>>0)&i;a=0;l=c<<l;break}if(!n){d=0;n=0;return(x=d,n)|0}f[n>>2]=e|0;f[n+4>>2]=o|i&0;d=0;n=0;return(x=d,n)|0}a=s-1|0;if(a&s){l=(te(s|0)|0)+33-(te(u|0)|0)|0;k=64-l|0;h=32-l|0;o=h>>31;b=l-32|0;i=b>>31;s=l;e=h-1>>31&u>>>(b>>>0)|(u<<h|c>>>(l>>>0))&i;i=i&u>>>(l>>>0);a=c<<k&o;l=(u<<k|c>>>(b>>>0))&o|c<<h&l-33>>31;break}if(n){f[n>>2]=a&c;f[n+4>>2]=0}if((s|0)==1){b=o|i&0;k=e|0|0;return(x=b,k)|0}else{k=Fl(s|0)|0;b=u>>>(k>>>0)|0;k=u<<32-k|c>>>(k>>>0)|0;return(x=b,k)|0}}else{if(a){if(n){f[n>>2]=(u>>>0)%(s>>>0);f[n+4>>2]=0}b=0;k=(u>>>0)/(s>>>0)>>>0;return(x=b,k)|0}if(!c){if(n){f[n>>2]=0;f[n+4>>2]=(u>>>0)%(l>>>0)}b=0;k=(u>>>0)/(l>>>0)>>>0;return(x=b,k)|0}a=l-1|0;if(!(a&l)){if(n){f[n>>2]=e|0;f[n+4>>2]=a&u|i&0}b=0;k=u>>>((Fl(l|0)|0)>>>0);return(x=b,k)|0}a=(te(l|0)|0)-(te(u|0)|0)|0;if(a>>>0<=30){i=a+1|0;l=31-a|0;s=i;e=u<<l|c>>>(i>>>0);i=u>>>(i>>>0);a=0;l=c<<l;break}if(!n){b=0;k=0;return(x=b,k)|0}f[n>>2]=e|0;f[n+4>>2]=o|i&0;b=0;k=0;return(x=b,k)|0}}while(0);if(!s){u=l;o=0;l=0}else{h=r|0|0;c=d|t&0;u=Il(h|0,c|0,-1,-1)|0;r=x;o=l;l=0;do{t=o;o=a>>>31|o<<1;a=l|a<<1;t=e<<1|t>>>31|0;d=e>>>31|i<<1|0;xl(u,r,t,d)|0;k=x;b=k>>31|((k|0)<0?-1:0)<<1;l=b&1;e=xl(t,d,b&h,(((k|0)<0?-1:0)>>31|((k|0)<0?-1:0)<<1)&c)|0;i=x;s=s-1|0}while((s|0)!=0);u=o;o=0}s=0;if(n){f[n>>2]=e;f[n+4>>2]=i}b=(a|0)>>>31|(u|s)<<1|(s<<1|a>>>31)&0|o;k=(a<<1|0>>>31)&-2|l;return(x=b,k)|0}function Vl(e,i,r,t,n,f,a,s){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;s=s|0;return vo[e&3](i|0,r|0,t|0,n|0,f|0,a|0,s|0)|0}function Gl(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;return po[e&63](i|0,r|0,t|0)|0}function Kl(e,i){e=e|0;i=i|0;return+go[e&3](i|0)}function Wl(e,i){e=e|0;i=i|0;yo[e&7](i|0)}function Zl(e,i,r){e=e|0;i=i|0;r=r|0;Mo[e&7](i|0,r|0)}function Jl(e,i,r,t,n,f,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;return Eo[e&7](i|0,r|0,t|0,n|0,f|0,a|0)|0}function Ql(e,i){e=e|0;i=i|0;return Ao[e&15](i|0)|0}function $l(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;So[e&15](i|0,r|0,t|0)}function eo(e,i,r,t,n,f,a,s,l,o,u,c){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;return To[e&3](i|0,r|0,t|0,n|0,f|0,a|0,s|0,l|0,o|0,u|0,c|0)|0}function io(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;return Co[e&63](i|0,r|0,t|0,n|0)|0}function ro(e,i,r){e=e|0;i=i|0;r=r|0;return Ro[e&7](i|0,r|0)|0}function to(e,i,r,t,n,f){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;return Lo[e&3](i|0,r|0,t|0,n|0,f|0)|0}function no(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;xo[e&3](i|0,r|0,t|0,n|0)}function fo(e,i,r,t,n,f,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;ne(0);return 0}function ao(e,i,r){e=e|0;i=i|0;r=r|0;ne(1);return 0}function so(e){e=e|0;ne(2);return 0.0}function lo(e){e=e|0;ne(3)}function oo(e,i){e=e|0;i=i|0;ne(4)}function uo(e,i,r,t,n,f){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;ne(5);return 0}function co(e){e=e|0;ne(6);return 0}function ho(e,i,r){e=e|0;i=i|0;r=r|0;ne(7)}function bo(e,i,r,t,n,f,a,s,l,o,u){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;ne(8);return 0}function ko(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;ne(9);return 0}function wo(e,i){e=e|0;i=i|0;ne(10);return 0}function _o(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;ne(11);return 0}function mo(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;ne(12)}var vo=[fo,ef,Bi,fo];var po=[ao,ml,Fs,Ds,gt,yt,Mt,Et,Rn,Ln,Pn,Wn,uf,Si,ji,cf,hf,Ai,Ti,On,Bn,In,Dn,wf,_f,mf,vf,gf,yf,Ef,Af,Sf,Tf,Cf,Rf,Lf,xf,Pf,Of,Bf,If,Df,Nf,Ff,Uf,jf,Hf,zf,Yf,qf,Xf,Vf,qi,Xi,Vi,Gi,Ki,Wi,Zi,Ji,Is,Ns,ao,ao];var go=[so,Gf,Kf,so];var yo=[lo,Vn,Oi,Xr,Vr,bl,kl,lo];var Mo=[oo,st,lt,ot,Yt,qn,Mi,oo];var Eo=[uo,$n,Pi,bf,xi,uo,uo,uo];var Ao=[co,Bs,af,sf,Ui,Fi,Hs,Ta,Ea,co,co,co,co,co,co,co];var So=[ho,mi,vi,pi,gi,hi,di,bi,ki,li,oi,ui,ci,tf,Ni,ho];var To=[bo,Qn,Li,bo];var Co=[ko,ea,ia,Xe,Ve,Ge,Ke,We,Ze,Je,Qe,$e,ei,ii,ri,ti,ni,fi,ai,si,lr,or,ur,rr,tr,nr,fr,ar,sr,_t,mt,vt,pt,lf,Zn,yi,Ri,df,Gn,Ci,Ei,ko,ko,ko,ko,ko,ko,ko,ko,ko,ko,ko,ko,ko,ko,ko,ko,ko,ko,ko,ko,ko,ko,ko];var Ro=[wo,xn,Qi,$i,er,ir,wo,wo];var Lo=[_o,of,Ii,_o];var xo=[mo,xa,Ba,mo];return{_opj_stream_destroy:St,_opj_stream_set_read_function:Tt,_opj_read_tile_header:ln,_opj_set_warning_handler:Jt,_opj_destroy_cstr_info:En,_opj_image_create:Xt,_opj_set_error_handler:Qt,_opj_stream_set_user_data:xt,_opj_end_decompress:mn,_bitshift64Lshr:Dl,_opj_stream_set_seek_function:Ct,_opj_decode:an,_opj_set_decoded_resolution_factor:cn,_i64Add:Il,_opj_stream_create_default_file_stream:Tn,_opj_set_default_decoder_parameters:tn,_bitshift64Ashr:Pl,_opj_get_decoded_tile:un,_memset:Ol,_opj_version:en,_memcpy:Nl,_opj_destroy_cstr_index:Sn,_opj_stream_set_user_data_length:Pt,_opj_stream_set_skip_function:Lt,_opj_image_destroy:Vt,_opj_stream_create_file_stream:Cn,_opj_setup_encoder:bn,_opj_stream_default_create:At,_bitshift64Shl:Bl,_opj_stream_create:wt,_jp2_version:at,_i64Subtract:xl,_opj_get_cstr_index:An,_opj_encode:wn,_opj_read_header:fn,_opj_get_cstr_info:Mn,_opj_set_default_encoder_parameters:dn,_opj_set_decode_area:sn,_opj_stream_set_write_function:Rt,_opj_dump_codec:yn,_opj_create_decompress:rn,_opj_decode_tile_data:on,_free:Ml,_opj_image_tile_create:Wt,_opj_set_MCT:vn,_opj_set_info_handler:Zt,_opj_start_compress:kn,_opj_write_tile:pn,_opj_setup_decoder:nn,_malloc:yl,_opj_end_compress:_n,_opj_destroy_codec:gn,_jp2_decode:ft,_opj_stream_create_buffer_stream:$t,_opj_create_compress:hn,runPostSets:Ll,stackAlloc:Zr,stackSave:Jr,stackRestore:Qr,establishStackSpace:$r,setThrew:et,setTempRet0:tt,getTempRet0:nt,dynCall_iiiiiiii:Vl,dynCall_iiii:Gl,dynCall_di:Kl,dynCall_vi:Wl,dynCall_vii:Zl,dynCall_iiiiiii:Jl,dynCall_ii:Ql,dynCall_viii:$l,dynCall_iiiiiiiiiiii:eo,dynCall_iiiii:io,dynCall_iii:ro,dynCall_iiiiii:to,dynCall_viiii:no}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_opj_stream_destroy=Module._opj_stream_destroy=asm._opj_stream_destroy,_opj_stream_set_read_function=Module._opj_stream_set_read_function=asm._opj_stream_set_read_function,_opj_read_tile_header=Module._opj_read_tile_header=asm._opj_read_tile_header,_opj_set_warning_handler=Module._opj_set_warning_handler=asm._opj_set_warning_handler,_opj_destroy_cstr_info=Module._opj_destroy_cstr_info=asm._opj_destroy_cstr_info,_opj_image_create=Module._opj_image_create=asm._opj_image_create,_opj_set_error_handler=Module._opj_set_error_handler=asm._opj_set_error_handler,_opj_image_tile_create=Module._opj_image_tile_create=asm._opj_image_tile_create,_opj_end_decompress=Module._opj_end_decompress=asm._opj_end_decompress,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_opj_stream_set_seek_function=Module._opj_stream_set_seek_function=asm._opj_stream_set_seek_function,_opj_decode=Module._opj_decode=asm._opj_decode,_opj_set_decoded_resolution_factor=Module._opj_set_decoded_resolution_factor=asm._opj_set_decoded_resolution_factor,_opj_stream_create_default_file_stream=Module._opj_stream_create_default_file_stream=asm._opj_stream_create_default_file_stream,_opj_encode=Module._opj_encode=asm._opj_encode,_bitshift64Ashr=Module._bitshift64Ashr=asm._bitshift64Ashr,_opj_get_decoded_tile=Module._opj_get_decoded_tile=asm._opj_get_decoded_tile,_memset=Module._memset=asm._memset,_opj_version=Module._opj_version=asm._opj_version,_memcpy=Module._memcpy=asm._memcpy,_opj_destroy_cstr_index=Module._opj_destroy_cstr_index=asm._opj_destroy_cstr_index,_opj_stream_set_user_data_length=Module._opj_stream_set_user_data_length=asm._opj_stream_set_user_data_length,_opj_stream_set_skip_function=Module._opj_stream_set_skip_function=asm._opj_stream_set_skip_function,_opj_image_destroy=Module._opj_image_destroy=asm._opj_image_destroy,_opj_stream_create_file_stream=Module._opj_stream_create_file_stream=asm._opj_stream_create_file_stream,_opj_setup_encoder=Module._opj_setup_encoder=asm._opj_setup_encoder,_opj_stream_default_create=Module._opj_stream_default_create=asm._opj_stream_default_create,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,_opj_stream_create=Module._opj_stream_create=asm._opj_stream_create,_jp2_version=Module._jp2_version=asm._jp2_version,_i64Subtract=Module._i64Subtract=asm._i64Subtract,_opj_get_cstr_index=Module._opj_get_cstr_index=asm._opj_get_cstr_index,_opj_set_default_decoder_parameters=Module._opj_set_default_decoder_parameters=asm._opj_set_default_decoder_parameters,_i64Add=Module._i64Add=asm._i64Add,_opj_get_cstr_info=Module._opj_get_cstr_info=asm._opj_get_cstr_info,_opj_set_default_encoder_parameters=Module._opj_set_default_encoder_parameters=asm._opj_set_default_encoder_parameters,_opj_set_decode_area=Module._opj_set_decode_area=asm._opj_set_decode_area,_opj_stream_set_write_function=Module._opj_stream_set_write_function=asm._opj_stream_set_write_function,_opj_dump_codec=Module._opj_dump_codec=asm._opj_dump_codec,_opj_read_header=Module._opj_read_header=asm._opj_read_header,_opj_create_decompress=Module._opj_create_decompress=asm._opj_create_decompress,_opj_decode_tile_data=Module._opj_decode_tile_data=asm._opj_decode_tile_data,_opj_set_info_handler=Module._opj_set_info_handler=asm._opj_set_info_handler,_opj_stream_set_user_data=Module._opj_stream_set_user_data=asm._opj_stream_set_user_data,_opj_set_MCT=Module._opj_set_MCT=asm._opj_set_MCT,_free=Module._free=asm._free,runPostSets=Module.runPostSets=asm.runPostSets,_opj_start_compress=Module._opj_start_compress=asm._opj_start_compress,_opj_write_tile=Module._opj_write_tile=asm._opj_write_tile,_opj_setup_decoder=Module._opj_setup_decoder=asm._opj_setup_decoder,_malloc=Module._malloc=asm._malloc,_opj_end_compress=Module._opj_end_compress=asm._opj_end_compress,_opj_destroy_codec=Module._opj_destroy_codec=asm._opj_destroy_codec,_jp2_decode=Module._jp2_decode=asm._jp2_decode,_opj_stream_create_buffer_stream=Module._opj_stream_create_buffer_stream=asm._opj_stream_create_buffer_stream,_opj_create_compress=Module._opj_create_compress=asm._opj_create_compress,dynCall_iiiiiiii=Module.dynCall_iiiiiiii=asm.dynCall_iiiiiiii,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_di=Module.dynCall_di=asm.dynCall_di,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_iiiiiii=Module.dynCall_iiiiiii=asm.dynCall_iiiiiii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_iiiiiiiiiiii=Module.dynCall_iiiiiiiiiiii=asm.dynCall_iiiiiiiiiiii,dynCall_iiiii=Module.dynCall_iiiii=asm.dynCall_iiiii,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii,initialStackTop;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}Runtime.stackAlloc=asm.stackAlloc,Runtime.stackSave=asm.stackSave,Runtime.stackRestore=asm.stackRestore,Runtime.establishStackSpace=asm.establishStackSpace,Runtime.setTempRet0=asm.setTempRet0,Runtime.getTempRet0=asm.getTempRet0,ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var preloadStartTime=null,calledMain=!1;function run(e){function i(){Module.calledRun||(Module.calledRun=!0,ABORT||(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}e=e||Module.arguments,null===preloadStartTime&&(preloadStartTime=Date.now()),runDependencies>0||(preRun(),runDependencies>0||Module.calledRun||(Module.setStatus?(Module.setStatus("Running..."),setTimeout((function(){setTimeout((function(){Module.setStatus("")}),1),i()}),1)):i()))}function exit(e,i){if(!i||!Module.noExitRuntime)throw Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE?(process.stdout.once("drain",(function(){process.exit(e)})),console.log(" "),setTimeout((function(){process.exit(e)}),500)):ENVIRONMENT_IS_SHELL&&"function"==typeof quit&&quit(e),new ExitStatus(e)}dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function(e){assert(0==runDependencies,"cannot call main when async dependencies remain! (listen on __ATMAIN__)"),assert(0==__ATPRERUN__.length,"cannot call main when preRun functions remain to be called"),e=e||[],ensureInitRuntime();var i=e.length+1;function r(){for(var e=0;e<3;e++)t.push(0)}var t=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];r();for(var n=0;n<i-1;n+=1)t.push(allocate(intArrayFromString(e[n]),"i8",ALLOC_NORMAL)),r();t.push(0),t=allocate(t,"i32",ALLOC_NORMAL);try{exit(Module._main(i,t,0),!0)}catch(e){if(e instanceof ExitStatus)return;if("SimulateInfiniteLoop"==e)return void(Module.noExitRuntime=!0);throw e&&"object"==typeof e&&e.stack&&Module.printErr("exception thrown: "+[e,e.stack]),e}finally{calledMain=!0}},Module.run=Module.run=run,Module.exit=Module.exit=exit;var abortDecorators=[];function abort(e){void 0!==e?(Module.print(e),Module.printErr(e),e=JSON.stringify(e)):e="",ABORT=!0,EXITSTATUS=1;var i="abort("+e+") at "+stackTrace()+"\\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";throw abortDecorators&&abortDecorators.forEach((function(r){i=r(i,e)})),i}if(Module.abort=Module.abort=abort,Module.preInit)for("function"==typeof Module.preInit&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;return Module.noInitialRun&&(shouldRunNow=!1),run(),Module};module.exports=OpenJPEG},function(module,exports){var CharLS=function(Module){var Module;Module=Module||{},Module||(Module=(void 0!==CharLS?CharLS:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB="object"==typeof window,ENVIRONMENT_IS_WORKER="function"==typeof importScripts,ENVIRONMENT_IS_NODE="object"==typeof process&&"function"==typeof require&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){Module.print||(Module.print=function(e){process.stdout.write(e+"\\n")}),Module.printErr||(Module.printErr=function(e){process.stderr.write(e+"\\n")});var nodeFS=require("fs"),nodePath=require("path");Module.read=function(e,i){e=nodePath.normalize(e);var r=nodeFS.readFileSync(e);return r||e==nodePath.resolve(e)||(e=path.join(__dirname,"..","src",e),r=nodeFS.readFileSync(e)),r&&!i&&(r=r.toString()),r},Module.readBinary=function(e){var i=Module.read(e,!0);return i.buffer||(i=new Uint8Array(i)),assert(i.buffer),i},Module.load=function(e){globalEval(read(e))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),void 0!==module&&(module.exports=Module),process.on("uncaughtException",(function(e){if(!(e instanceof ExitStatus))throw e})),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),"undefined"!=typeof printErr&&(Module.printErr=printErr),"undefined"!=typeof read?Module.read=read:Module.read=function(){throw"no read() available (jsc?)"},Module.readBinary=function(e){if("function"==typeof readbuffer)return new Uint8Array(readbuffer(e));var i=read(e,"binary");return assert("object"==typeof i),i},"undefined"!=typeof scriptArgs?Module.arguments=scriptArgs:void 0!==arguments&&(Module.arguments=arguments);else{if(!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER)throw"Unknown runtime environment. Where are we?";if(Module.read=function(e){var i=new XMLHttpRequest;return i.open("GET",e,!1),i.send(null),i.responseText},void 0!==arguments&&(Module.arguments=arguments),"undefined"!=typeof console)Module.print||(Module.print=function(e){console.log(e)}),Module.printErr||(Module.printErr=function(e){console.log(e)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&"undefined"!=typeof dump?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),void 0===Module.setWindowTitle&&(Module.setWindowTitle=function(e){document.title=e})}function globalEval(e){eval.call(null,e)}for(var key in!Module.load&&Module.read&&(Module.load=function(e){globalEval(Module.read(e))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[],moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);var Runtime={setTempRet0:function(e){tempRet0=e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:if("*"===e[e.length-1])return Runtime.QUANTUM_SIZE;if("i"===e[0]){var i=parseInt(e.substr(1));return assert(i%8==0),i/8}return 0}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,i){return"double"===i||"i64"===i?7&e&&(assert(4==(7&e)),e+=4):assert(0==(3&e)),e},getAlignSize:function(e,i,r){return r||"i64"!=e&&"double"!=e?e?Math.min(i||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(i,8):8},dynCall:function(e,i,r){return r&&r.length?(r.splice||(r=Array.prototype.slice.call(r)),r.splice(0,0,i),Module["dynCall_"+e].apply(null,r)):Module["dynCall_"+e].call(null,i)},functionPointers:[],addFunction:function(e){for(var i=0;i<Runtime.functionPointers.length;i++)if(!Runtime.functionPointers[i])return Runtime.functionPointers[i]=e,2*(1+i);throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."},removeFunction:function(e){Runtime.functionPointers[(e-2)/2]=null},warnOnce:function(e){Runtime.warnOnce.shown||(Runtime.warnOnce.shown={}),Runtime.warnOnce.shown[e]||(Runtime.warnOnce.shown[e]=1,Module.printErr(e))},funcWrappers:{},getFuncWrapper:function(e,i){assert(i),Runtime.funcWrappers[i]||(Runtime.funcWrappers[i]={});var r=Runtime.funcWrappers[i];return r[e]||(r[e]=function(){return Runtime.dynCall(i,e,arguments)}),r[e]},getCompilerSetting:function(e){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"},stackAlloc:function(e){var i=STACKTOP;return STACKTOP=(STACKTOP=STACKTOP+e|0)+15&-16,i},staticAlloc:function(e){var i=STATICTOP;return STATICTOP=(STATICTOP=STATICTOP+e|0)+15&-16,i},dynamicAlloc:function(e){var i=DYNAMICTOP;if((DYNAMICTOP=(DYNAMICTOP=DYNAMICTOP+e|0)+15&-16)>=TOTAL_MEMORY&&!enlargeMemory())return DYNAMICTOP=i,0;return i},alignMemory:function(e,i){return e=Math.ceil(e/(i||16))*(i||16)},makeBigInt:function(e,i,r){return r?+(e>>>0)+4294967296*+(i>>>0):+(e>>>0)+4294967296*+(0|i)},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var __THREW__=0,ABORT=!1,EXITSTATUS=0,undef=0,tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat,tempI64,tempI64b,tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9;function assert(e,i){e||abort("Assertion failed: "+i)}var globalScope=this,cwrap,ccall;function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}function setValue(e,i,r,t){switch("*"===(r=r||"i8").charAt(r.length-1)&&(r="i32"),r){case"i1":case"i8":HEAP8[e>>0]=i;break;case"i16":HEAP16[e>>1]=i;break;case"i32":HEAP32[e>>2]=i;break;case"i64":tempI64=[i>>>0,(tempDouble=i,+Math_abs(tempDouble)>=1?tempDouble>0?(0|Math_min(+Math_floor(tempDouble/4294967296),4294967295))>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=i;break;case"double":HEAPF64[e>>3]=i;break;default:abort("invalid type for setValue: "+r)}}function getValue(e,i,r){switch("*"===(i=i||"i8").charAt(i.length-1)&&(i="i32"),i){case"i1":case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+i)}return null}!function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var i=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,i),i},stringToC:function(e){var i=0;return null!=e&&0!==e&&writeStringToMemory(e,i=Runtime.stackAlloc(1+(e.length<<2))),i}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(e,i,r,t,n){var f=getCFunc(e),a=[],s=0;if(t)for(var l=0;l<t.length;l++){var o=toC[r[l]];o?(0===s&&(s=Runtime.stackSave()),a[l]=o(t[l])):a[l]=t[l]}var u=f.apply(null,a);if("string"===i&&(u=Pointer_stringify(u)),0!==s){if(n&&n.async)return void EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(s)}));Runtime.stackRestore(s)}return u};var sourceRegex=/^function\\s*\\(([^)]*)\\)\\s*{\\s*([^*]*?)[\\s;]*(?:return\\s*(.*?)[;\\s]*)?}$/;function parseJSFunc(e){var i=e.toString().match(sourceRegex);return i?{arguments:(i=i.slice(1))[0],body:i[1],returnValue:i[2]}:{}}var JSsource={};for(var fun in JSfuncs)JSfuncs.hasOwnProperty(fun)&&(JSsource[fun]=parseJSFunc(JSfuncs[fun]));cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident),numericArgs=argTypes.every((function(e){return"number"===e})),numericRet="string"!==returnType;if(numericRet&&numericArgs)return cfunc;var argNames=argTypes.map((function(e,i){return"$"+i})),funcstr="(function("+argNames.join(",")+") {",nargs=argTypes.length;if(!numericArgs){funcstr+="var stack = "+JSsource.stackSave.body+";";for(var i=0;i<nargs;i++){var arg=argNames[i],type=argTypes[i];if("number"!==type){var convertCode=JSsource[type+"ToC"];funcstr+="var "+convertCode.arguments+" = "+arg+";",funcstr+=convertCode.body+";",funcstr+=arg+"="+convertCode.returnValue+";"}}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;if(funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");",!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}return numericArgs||(funcstr+=JSsource.stackRestore.body.replace("()","(stack)")+";"),funcstr+="return ret})",eval(funcstr)}}(),Module.ccall=ccall,Module.cwrap=cwrap,Module.setValue=setValue,Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;function allocate(e,i,r,t){var n,f;"number"==typeof e?(n=!0,f=e):(n=!1,f=e.length);var a,s="string"==typeof i?i:null;if(a=r==ALLOC_NONE?t:[_malloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][void 0===r?ALLOC_STATIC:r](Math.max(f,s?1:i.length)),n){var l;t=a;for(assert(0==(3&a)),l=a+(-4&f);t<l;t+=4)HEAP32[t>>2]=0;for(l=a+f;t<l;)HEAP8[t++>>0]=0;return a}if("i8"===s)return e.subarray||e.slice?HEAPU8.set(e,a):HEAPU8.set(new Uint8Array(e),a),a;for(var o,u,c,h=0;h<f;){var d=e[h];"function"==typeof d&&(d=Runtime.getFunctionIndex(d)),0!==(o=s||i[h])?("i64"==o&&(o="i32"),setValue(a+h,d,o),c!==o&&(u=Runtime.getNativeTypeSize(o),c=o),h+=u):h++}return a}function getMemory(e){return staticSealed?void 0!==_sbrk&&!_sbrk.called||!runtimeInitialized?Runtime.dynamicAlloc(e):_malloc(e):Runtime.staticAlloc(e)}function Pointer_stringify(e,i){if(0===i||!e)return"";for(var r,t=0,n=0;t|=r=HEAPU8[e+n>>0],(0!=r||i)&&(n++,!i||n!=i););i||(i=n);var f="";if(t<128){for(var a;i>0;)a=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(i,1024))),f=f?f+a:a,e+=1024,i-=1024;return f}return Module.UTF8ToString(e)}function AsciiToString(e){for(var i="";;){var r=HEAP8[e++>>0];if(!r)return i;i+=String.fromCharCode(r)}}function stringToAscii(e,i){return writeAsciiToMemory(e,i,!1)}function UTF8ArrayToString(e,i){for(var r,t,n,f,a,s="";;){if(!(r=e[i++]))return s;if(128&r)if(t=63&e[i++],192!=(224&r))if(n=63&e[i++],224==(240&r)?r=(15&r)<<12|t<<6|n:(f=63&e[i++],240==(248&r)?r=(7&r)<<18|t<<12|n<<6|f:(a=63&e[i++],r=248==(252&r)?(3&r)<<24|t<<18|n<<12|f<<6|a:(1&r)<<30|t<<24|n<<18|f<<12|a<<6|63&e[i++])),r<65536)s+=String.fromCharCode(r);else{var l=r-65536;s+=String.fromCharCode(55296|l>>10,56320|1023&l)}else s+=String.fromCharCode((31&r)<<6|t);else s+=String.fromCharCode(r)}}function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}function stringToUTF8Array(e,i,r,t){if(!(t>0))return 0;for(var n=r,f=r+t-1,a=0;a<e.length;++a){var s=e.charCodeAt(a);if(s>=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++a)),s<=127){if(r>=f)break;i[r++]=s}else if(s<=2047){if(r+1>=f)break;i[r++]=192|s>>6,i[r++]=128|63&s}else if(s<=65535){if(r+2>=f)break;i[r++]=224|s>>12,i[r++]=128|s>>6&63,i[r++]=128|63&s}else if(s<=2097151){if(r+3>=f)break;i[r++]=240|s>>18,i[r++]=128|s>>12&63,i[r++]=128|s>>6&63,i[r++]=128|63&s}else if(s<=67108863){if(r+4>=f)break;i[r++]=248|s>>24,i[r++]=128|s>>18&63,i[r++]=128|s>>12&63,i[r++]=128|s>>6&63,i[r++]=128|63&s}else{if(r+5>=f)break;i[r++]=252|s>>30,i[r++]=128|s>>24&63,i[r++]=128|s>>18&63,i[r++]=128|s>>12&63,i[r++]=128|s>>6&63,i[r++]=128|63&s}}return i[r]=0,r-n}function stringToUTF8(e,i,r){return stringToUTF8Array(e,HEAPU8,i,r)}function lengthBytesUTF8(e){for(var i=0,r=0;r<e.length;++r){var t=e.charCodeAt(r);t>=55296&&t<=57343&&(t=65536+((1023&t)<<10)|1023&e.charCodeAt(++r)),t<=127?++i:i+=t<=2047?2:t<=65535?3:t<=2097151?4:t<=67108863?5:6}return i}function UTF16ToString(e){for(var i=0,r="";;){var t=HEAP16[e+2*i>>1];if(0==t)return r;++i,r+=String.fromCharCode(t)}}function stringToUTF16(e,i,r){if(void 0===r&&(r=2147483647),r<2)return 0;for(var t=i,n=(r-=2)<2*e.length?r/2:e.length,f=0;f<n;++f){var a=e.charCodeAt(f);HEAP16[i>>1]=a,i+=2}return HEAP16[i>>1]=0,i-t}function lengthBytesUTF16(e){return 2*e.length}function UTF32ToString(e){for(var i=0,r="";;){var t=HEAP32[e+4*i>>2];if(0==t)return r;if(++i,t>=65536){var n=t-65536;r+=String.fromCharCode(55296|n>>10,56320|1023&n)}else r+=String.fromCharCode(t)}}function stringToUTF32(e,i,r){if(void 0===r&&(r=2147483647),r<4)return 0;for(var t=i,n=t+r-4,f=0;f<e.length;++f){var a=e.charCodeAt(f);if(a>=55296&&a<=57343)a=65536+((1023&a)<<10)|1023&e.charCodeAt(++f);if(HEAP32[i>>2]=a,(i+=4)+4>n)break}return HEAP32[i>>2]=0,i-t}function lengthBytesUTF32(e){for(var i=0,r=0;r<e.length;++r){var t=e.charCodeAt(r);t>=55296&&t<=57343&&++r,i+=4}return i}function demangle(e){var i=!!Module.___cxa_demangle;if(i)try{var r=_malloc(e.length);writeStringToMemory(e.substr(1),r);var t=_malloc(4),n=Module.___cxa_demangle(r,0,0,t);if(0===getValue(t,"i32")&&n)return Pointer_stringify(n)}catch(e){}finally{r&&_free(r),t&&_free(t),n&&_free(n)}var f=3,a={v:"void",b:"bool",c:"char",s:"short",i:"int",l:"long",f:"float",d:"double",w:"wchar_t",a:"signed char",h:"unsigned char",t:"unsigned short",j:"unsigned int",m:"unsigned long",x:"long long",y:"unsigned long long",z:"..."},s=[],l=!0;var o=e;try{if("Object._main"==e||"_main"==e)return"main()";if("number"==typeof e&&(e=Pointer_stringify(e)),"_"!==e[0])return e;if("_"!==e[1])return e;if("Z"!==e[2])return e;switch(e[3]){case"n":return"operator new()";case"d":return"operator delete()"}o=function i(r,t,n){t=t||1/0;var o,u="",c=[];if("N"===e[f]){if(o=function(){"K"===e[++f]&&f++;for(var i=[];"E"!==e[f];)if("S"!==e[f])if("C"!==e[f]){var r=parseInt(e.substr(f)),t=r.toString().length;if(!r||!t){f--;break}var n=e.substr(f+t,r);i.push(n),s.push(n),f+=t+r}else i.push(i[i.length-1]),f+=2;else{f++;var a=e.indexOf("_",f),l=e.substring(f,a)||0;i.push(s[l]||"?"),f=a+1}return f++,i}().join("::"),0===--t)return r?[o]:o}else if(("K"===e[f]||l&&"L"===e[f])&&f++,k=parseInt(e.substr(f))){var h=k.toString().length;o=e.substr(f+h,k),f+=h+k}if(l=!1,"I"===e[f]){f++;var d=i(!0);u+=i(!0,1,!0)[0]+" "+o+"<"+d.join(", ")+">"}else u=o;e:for(;f<e.length&&t-- >0;){var b=e[f++];if(b in a)c.push(a[b]);else switch(b){case"P":c.push(i(!0,1,!0)[0]+"*");break;case"R":c.push(i(!0,1,!0)[0]+"&");break;case"L":f++;var k=e.indexOf("E",f)-f;c.push(e.substr(f,k)),f+=k+2;break;case"A":k=parseInt(e.substr(f));if(f+=k.toString().length,"_"!==e[f])throw"?";f++,c.push(i(!0,1,!0)[0]+" ["+k+"]");break;case"E":break e;default:u+="?"+b;break e}}return n||1!==c.length||"void"!==c[0]||(c=[]),r?(u&&c.push(u+"?"),c):u+"("+c.join(", ")+")"}()}catch(e){o+="?"}return o.indexOf("?")>=0&&!i&&Runtime.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),o}function demangleAll(e){return e.replace(/__Z[\\w\\d_]+/g,(function(e){var i=demangle(e);return e===i?e:e+" ["+i+"]"}))}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(i){e=i}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE,Module.allocate=allocate,Module.getMemory=getMemory,Module.Pointer_stringify=Pointer_stringify,Module.AsciiToString=AsciiToString,Module.stringToAscii=stringToAscii,Module.UTF8ArrayToString=UTF8ArrayToString,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8Array=stringToUTF8Array,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8,Module.UTF16ToString=UTF16ToString,Module.stringToUTF16=stringToUTF16,Module.lengthBytesUTF16=lengthBytesUTF16,Module.UTF32ToString=UTF32ToString,Module.stringToUTF32=stringToUTF32,Module.lengthBytesUTF32=lengthBytesUTF32,Module.stackTrace=stackTrace;var PAGE_SIZE=4096,HEAP,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function alignMemoryPage(e){return e%4096>0&&(e+=4096-e%4096),e}var STATIC_BASE=0,STATICTOP=0,staticSealed=!1,STACK_BASE=0,STACKTOP=0,STACK_MAX=0,DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}for(var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||4e8,totalMemory=65536,buffer;totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK;)totalMemory<16777216?totalMemory*=2:totalMemory+=16777216;function callRuntimeCallbacks(e){for(;e.length>0;){var i=e.shift();if("function"!=typeof i){var r=i.func;"number"==typeof r?void 0===i.arg?Runtime.dynCall("v",r):Runtime.dynCall("vi",r,[i.arg]):r(void 0===i.arg?null:i.arg)}else i()}}totalMemory!==TOTAL_MEMORY&&(TOTAL_MEMORY=totalMemory),assert("undefined"!=typeof Int32Array&&"undefined"!=typeof Float64Array&&!!new Int32Array(1).subarray&&!!new Int32Array(1).set,"JS engine does not provide full typed array support"),buffer=new ArrayBuffer(TOTAL_MEMORY),HEAP8=new Int8Array(buffer),HEAP16=new Int16Array(buffer),HEAP32=new Int32Array(buffer),HEAPU8=new Uint8Array(buffer),HEAPU16=new Uint16Array(buffer),HEAPU32=new Uint32Array(buffer),HEAPF32=new Float32Array(buffer),HEAPF64=new Float64Array(buffer),HEAP32[0]=255,assert(255===HEAPU8[0]&&0===HEAPU8[3],"Typed arrays 2 must be run on a little-endian system"),Module.HEAP=HEAP,Module.buffer=buffer,Module.HEAP8=HEAP8,Module.HEAP16=HEAP16,Module.HEAP32=HEAP32,Module.HEAPU8=HEAPU8,Module.HEAPU16=HEAPU16,Module.HEAPU32=HEAPU32,Module.HEAPF32=HEAPF32,Module.HEAPF64=HEAPF64;var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for("function"==typeof Module.preRun&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for("function"==typeof Module.postRun&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}function addOnInit(e){__ATINIT__.unshift(e)}function addOnPreMain(e){__ATMAIN__.unshift(e)}function addOnExit(e){__ATEXIT__.unshift(e)}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}function intArrayFromString(e,i,r){var t=r>0?r:lengthBytesUTF8(e)+1,n=new Array(t),f=stringToUTF8Array(e,n,0,n.length);return i&&(n.length=f),n}function intArrayToString(e){for(var i=[],r=0;r<e.length;r++){var t=e[r];t>255&&(t&=255),i.push(String.fromCharCode(t))}return i.join("")}function writeStringToMemory(e,i,r){for(var t=intArrayFromString(e,r),n=0;n<t.length;){var f=t[n];HEAP8[i+n>>0]=f,n+=1}}function writeArrayToMemory(e,i){for(var r=0;r<e.length;r++)HEAP8[i++>>0]=e[r]}function writeAsciiToMemory(e,i,r){for(var t=0;t<e.length;++t)HEAP8[i++>>0]=e.charCodeAt(t);r||(HEAP8[i>>0]=0)}function unSign(e,i,r){return e>=0?e:i<=32?2*Math.abs(1<<i-1)+e:Math.pow(2,i)+e}function reSign(e,i,r){if(e<=0)return e;var t=i<=32?Math.abs(1<<i-1):Math.pow(2,i-1);return e>=t&&(i<=32||e>t)&&(e=-2*t+e),e}Module.addOnPreRun=addOnPreRun,Module.addOnInit=addOnInit,Module.addOnPreMain=addOnPreMain,Module.addOnExit=addOnExit,Module.addOnPostRun=addOnPostRun,Module.intArrayFromString=intArrayFromString,Module.intArrayToString=intArrayToString,Module.writeStringToMemory=writeStringToMemory,Module.writeArrayToMemory=writeArrayToMemory,Module.writeAsciiToMemory=writeAsciiToMemory,Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(e,i){var r=65535&e,t=65535&i;return r*t+((e>>>16)*t+r*(i>>>16)<<16)|0}),Math.imul=Math.imul,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var i=0;i<32;i++)if(e&1<<31-i)return i;return 32}),Math.clz32=Math.clz32;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_min=Math.min,Math_clz32=Math.clz32,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),0==runDependencies&&(null!==runDependencyWatcher&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var i=dependenciesFulfilled;dependenciesFulfilled=null,i()}}Module.addRunDependency=addRunDependency,Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var memoryInitializer=null,ASM_CONSTS=[];STATIC_BASE=8,STATICTOP=STATIC_BASE+59744,__ATINIT__.push({func:function(){__GLOBAL__I_000101()}},{func:function(){__GLOBAL__sub_I_jpegls_cpp()}},{func:function(){__GLOBAL__sub_I_iostream_cpp()}}),allocate([0,0,0,0,0,0,0,0,84,144,0,0,31,194,0,0,216,0,0,0,0,0,0,0,84,144,0,0,237,191,0,0,48,0,0,0,0,0,0,0,44,144,0,0,41,192,0,0,84,144,0,0,55,192,0,0,48,0,0,0,0,0,0,0,84,144,0,0,115,192,0,0,48,0,0,0,0,0,0,0,84,144,0,0,175,192,0,0,152,3,0,0,0,0,0,0,84,144,0,0,241,192,0,0,216,3,0,0,0,0,0,0,84,144,0,0,55,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,95,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,135,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,175,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,216,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,241,193,0,0,48,0,0,0,0,0,0,0,44,144,0,0,13,194,0,0,84,144,0,0,80,194,0,0,216,0,0,0,0,0,0,0,84,144,0,0,44,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,139,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,179,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,219,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,3,195,0,0,48,0,0,0,0,0,0,0,84,144,0,0,103,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,157,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,211,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,8,196,0,0,216,0,0,0,0,0,0,0,84,144,0,0,71,196,0,0,216,0,0,0,0,0,0,0,84,144,0,0,138,196,0,0,160,1,0,0,0,0,0,0,44,144,0,0,120,196,0,0,84,144,0,0,187,196,0,0,160,1,0,0,0,0,0,0,84,144,0,0,246,196,0,0,160,1,0,0,0,0,0,0,84,144,0,0,49,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,103,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,157,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,210,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,17,198,0,0,160,1,0,0,0,0,0,0,84,144,0,0,86,198,0,0,72,3,0,0,0,0,0,0,84,144,0,0,162,198,0,0,56,2,0,0,0,0,0,0,44,144,0,0,182,198,0,0,84,144,0,0,196,198,0,0,56,2,0,0,0,0,0,0,84,144,0,0,112,199,0,0,96,2,0,0,0,0,0,0,44,144,0,0,125,199,0,0,84,144,0,0,138,199,0,0,96,2,0,0,0,0,0,0,44,144,0,0,156,199,0,0,84,144,0,0,169,199,0,0,96,2,0,0,0,0,0,0,84,144,0,0,181,199,0,0,120,2,0,0,0,0,0,0,84,144,0,0,214,199,0,0,144,2,0,0,0,0,0,0,84,144,0,0,28,200,0,0,144,2,0,0,0,0,0,0,84,144,0,0,248,199,0,0,176,2,0,0,0,0,0,0,84,144,0,0,62,200,0,0,160,2,0,0,0,0,0,0,84,144,0,0,99,200,0,0,160,2,0,0,0,0,0,0,84,144,0,0,182,221,0,0,160,3,0,0,0,0,0,0,84,144,0,0,245,221,0,0,160,3,0,0,0,0,0,0,84,144,0,0,13,222,0,0,152,3,0,0,0,0,0,0,84,144,0,0,38,222,0,0,152,3,0,0,0,0,0,0,44,144,0,0,62,222,0,0,84,144,0,0,87,222,0,0,104,2,0,0,0,0,0,0,44,144,0,0,110,222,0,0,84,144,0,0,135,222,0,0,72,3,0,0,0,0,0,0,84,144,0,0,161,222,0,0,56,3,0,0,0,0,0,0,44,144,0,0,187,222,0,0,84,144,0,0,205,222,0,0,112,3,0,0,0,0,0,0,84,144,0,0,247,222,0,0,112,3,0,0,0,0,0,0,44,144,0,0,33,223,0,0,44,144,0,0,82,223,0,0,124,144,0,0,131,223,0,0,0,0,0,0,1,0,0,0,120,3,0,0,3,244,255,255,124,144,0,0,178,223,0,0,0,0,0,0,1,0,0,0,136,3,0,0,3,244,255,255,124,144,0,0,225,223,0,0,0,0,0,0,1,0,0,0,120,3,0,0,3,244,255,255,124,144,0,0,16,224,0,0,0,0,0,0,1,0,0,0,136,3,0,0,3,244,255,255,84,144,0,0,63,224,0,0,80,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,144,0,0,187,224,0,0,48,3,0,0,0,0,0,0,124,144,0,0,209,224,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,64,10,0,0,2,0,0,0,124,144,0,0,227,224,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,124,144,0,0,5,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,124,144,0,0,40,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,84,144,0,0,75,225,0,0,144,4,0,0,0,0,0,0,84,144,0,0,109,225,0,0,144,4,0,0,0,0,0,0,124,144,0,0,144,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,84,144,0,0,178,225,0,0,32,4,0,0,0,0,0,0,84,144,0,0,200,225,0,0,32,4,0,0,0,0,0,0,84,144,0,0,220,225,0,0,32,4,0,0,0,0,0,0,124,144,0,0,240,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,64,10,0,0,2,0,0,0,84,144,0,0,2,226,0,0,32,4,0,0,0,0,0,0,84,144,0,0,23,226,0,0,32,4,0,0,0,0,0,0,124,144,0,0,44,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,80,10,0,0,0,0,0,0,124,144,0,0,112,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,104,10,0,0,0,0,0,0,124,144,0,0,180,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,128,10,0,0,0,0,0,0,124,144,0,0,248,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,152,10,0,0,0,0,0,0,124,144,0,0,60,227,0,0,0,0,0,0,3,0,0,0,32,4,0,0,2,0,0,0,176,10,0,0,2,0,0,0,184,10,0,0,0,8,0,0,124,144,0,0,129,227,0,0,0,0,0,0,3,0,0,0,32,4,0,0,2,0,0,0,176,10,0,0,2,0,0,0,192,10,0,0,0,8,0,0,124,144,0,0,198,227,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,200,10,0,0,0,8,0,0,124,144,0,0,11,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,200,10,0,0,0,8,0,0,124,144,0,0,80,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,108,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,136,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,164,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,192,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,216,10,0,0,0,0,0,0,124,144,0,0,6,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,224,10,0,0,0,0,0,0,124,144,0,0,76,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,232,10,0,0,0,0,0,0,124,144,0,0,146,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,240,10,0,0,0,0,0,0,124,144,0,0,216,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,248,10,0,0,2,0,0,0,124,144,0,0,237,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,248,10,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,144,0,0,73,233,0,0,44,144,0,0,50,233,0,0,124,144,0,0,28,233,0,0,0,0,0,0,1,0,0,0,8,11,0,0,0,0,0,0,124,144,0,0,237,232,0,0,0,0,0,0,1,0,0,0,8,11,0,0,0,0,0,0,124,144,0,0,215,232,0,0,0,0,0,0,1,0,0,0,0,11,0,0,0,0,0,0,124,144,0,0,168,232,0,0,0,0,0,0,1,0,0,0,0,11,0,0,0,0,0,0,44,144,0,0,149,232,0,0,44,144,0,0,115,232,0,0,44,144,0,0,81,232,0,0,44,144,0,0,60,232,0,0,44,144,0,0,39,232,0,0,44,144,0,0,14,232,0,0,44,144,0,0,245,231,0,0,44,144,0,0,220,231,0,0,44,144,0,0,195,231,0,0,44,144,0,0,171,231,0,0,44,144,0,0,190,232,0,0,44,144,0,0,3,233],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE),allocate([156,143,0,0,0,0,0,0,8,2,0,0,1,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,248,1,0,0,3,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,232,1,0,0,5,0,0,0,6,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,216,1,0,0,7,0,0,0,8,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,200,1,0,0,9,0,0,0,10,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,184,1,0,0,11,0,0,0,12,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,0,0,0,0,168,1,0,0,13,0,0,0,14,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,0,0,0,0,144,1,0,0,15,0,0,0,16,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,128,1,0,0,17,0,0,0,18,0,0,0,9,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,112,1,0,0,19,0,0,0,20,0,0,0,10,0,0,0,2,0,0,0,10,0,0,0,0,0,0,0,96,1,0,0,21,0,0,0,22,0,0,0,11,0,0,0,3,0,0,0,11,0,0,0,0,0,0,0,80,1,0,0,23,0,0,0,24,0,0,0,12,0,0,0,4,0,0,0,12,0,0,0,0,0,0,0,64,1,0,0,25,0,0,0,26,0,0,0,13,0,0,0,5,0,0,0,13,0,0,0,0,0,0,0,240,0,0,0,27,0,0,0,28,0,0,0,14,0,0,0,6,0,0,0,14,0,0,0,0,0,0,0,224,0,0,0,29,0,0,0,30,0,0,0,15,0,0,0,7,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,31,0,0,0,32,0,0,0,16,0,0,0,8,0,0,0,16,0,0,0,0,0,0,0,200,0,0,0,33,0,0,0,34,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,184,0,0,0,33,0,0,0,35,0,0,0,3,0,0,0,4,0,0,0,56,0,0,0,0,0,0,0,216,3,0,0,36,0,0,0,37,0,0,0,200,255,255,255,200,255,255,255,216,3,0,0,38,0,0,0,39,0,0,0,56,0,0,0,0,0,0,0,104,0,0,0,40,0,0,0,41,0,0,0,200,255,255,255,200,255,255,255,104,0,0,0,42,0,0,0,43,0,0,0,0,0,0,0,88,0,0,0,44,0,0,0,45,0,0,0,17,0,0,0,1,0,0,0,1,0,0,0,5,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,17,0,0,0,3,0,0,0,18,0,0,0,104,141,0,0,64,141,0,0,84,141,0,0,124,141,0,0,0,0,0,0,32,0,0,0,46,0,0,0,47,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,56,0,0,0,48,0,0,0,49,0,0,0,8,0,0,0,9,0,0,0,0,0,0,0,72,0,0,0,50,0,0,0,51,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,120,0,0,0,52,0,0,0,53,0,0,0,12,0,0,0,13,0,0,0,0,0,0,0,136,0,0,0,54,0,0,0,55,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,152,0,0,0,56,0,0,0,57,0,0,0,16,0,0,0,17,0,0,0,0,0,0,0,168,0,0,0,58,0,0,0,59,0,0,0,18,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,216,0,0,0,60,0,0,0,61,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,62,0,0,0,63,0,0,0,20,0,0,0,21,0,0,0,0,0,0,0,16,1,0,0,64,0,0,0,65,0,0,0,22,0,0,0,23,0,0,0,0,0,0,0,32,1,0,0,66,0,0,0,67,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,48,1,0,0,68,0,0,0,69,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,160,1,0,0,70,0,0,0,71,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,24,2,0,0,72,0,0,0,73,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,2,0,0,0,0,0,0,0,40,2,0,0,74,0,0,0,75,0,0,0,18,0,0,0,0,0,0,0,64,2,0,0,76,0,0,0,77,0,0,0,19,0,0,0,2,0,0,0,0,0,0,0,80,2,0,0,78,0,0,0,79,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,104,2,0,0,80,0,0,0,81,0,0,0,7,0,0,0,0,0,0,0,128,2,0,0,82,0,0,0,83,0,0,0,8,0,0,0,0,0,0,0,160,2,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,2,0,0,0,9,0,0,0,28,0,0,0,0,0,0,0,208,2,0,0,84,0,0,0,88,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,3,0,0,0,10,0,0,0,29,0,0,0,0,0,0,0,224,2,0,0,84,0,0,0,89,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,4,0,0,0,11,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,1,203,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,88,146,0,0,200,146,0,0,56,147,0,0,56,147,0,0,120,187,0,0,168,155,0,0,168,149,0,0,0,0,0,0,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,9,0,0,0,159,219,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,9,0,0,0,151,215,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,9,0,0,0,143,211,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+35640),allocate([1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+39844),allocate([240,2,0,0,90,0,0,0,91,0,0,0,20,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,10,0,0,0,11,0,0,0,13,0,0,0,12,0,0,0,13,0,0,0,19,0,0,0,14,0,0,0,20,0,0,0,0,0,0,0,0,3,0,0,90,0,0,0,92,0,0,0,21,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,14,0,0,0,11,0,0,0,13,0,0,0,15,0,0,0,16,0,0,0,21,0,0,0,15,0,0,0,22,0,0,0,0,0,0,0,16,3,0,0,93,0,0,0,94,0,0,0,22,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,17,0,0,0,2,0,0,0,2,0,0,0,18,0,0,0,4,0,0,0,23,0,0,0,16,0,0,0,24,0,0,0,0,0,0,0,32,3,0,0,93,0,0,0,95,0,0,0,23,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,19,0,0,0,20,0,0,0,25,0,0,0,3,0,0,0,26,0,0,0,0,0,0,0,56,3,0,0,96,0,0,0,97,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,3,0,0,93,0,0,0,98,0,0,0,17,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,18,0,0,0,4,0,0,0,23,0,0,0,3,0,0,0,26,0,0,0,0,0,0,0,160,3,0,0,90,0,0,0,99,0,0,0,24,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,14,0,0,0,11,0,0,0,13,0,0,0,12,0,0,0,13,0,0,0,19,0,0,0,15,0,0,0,22,0,0,0,8,0,0,0,0,0,0,0,168,3,0,0,100,0,0,0,101,0,0,0,248,255,255,255,248,255,255,255,168,3,0,0,102,0,0,0,103,0,0,0,8,0,0,0,0,0,0,0,192,3,0,0,104,0,0,0,105,0,0,0,248,255,255,255,248,255,255,255,192,3,0,0,106,0,0,0,107,0,0,0,4,0,0,0,0,0,0,0,216,3,0,0,36,0,0,0,37,0,0,0,252,255,255,255,252,255,255,255,216,3,0,0,38,0,0,0,39,0,0,0,4,0,0,0,0,0,0,0,240,3,0,0,108,0,0,0,109,0,0,0,252,255,255,255,252,255,255,255,240,3,0,0,110,0,0,0,111,0,0,0,0,0,0,0,96,3,0,0,112,0,0,0,113,0,0,0,7,0,0,0,0,0,0,0,112,3,0,0,114,0,0,0,115,0,0,0,0,0,0,0,8,4,0,0,72,0,0,0,116,0,0,0,21,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,117,0,0,0,118,0,0,0,119,0,0,0,1,0,0,0,33,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,5,0,0,120,0,0,0,121,0,0,0,119,0,0,0,2,0,0,0,34,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,5,0,0,122,0,0,0,123,0,0,0,119,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,5,0,0,124,0,0,0,125,0,0,0,119,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,5,0,0,126,0,0,0,127,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,23,0,0,0,5,0,0,0,24,0,0,0,1,0,0,0,2,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,5,0,0,128,0,0,0,129,0,0,0,119,0,0,0,7,0,0,0,8,0,0,0,25,0,0,0,9,0,0,0,26,0,0,0,3,0,0,0,4,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,5,0,0,130,0,0,0,131,0,0,0,119,0,0,0,22,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,1,0,0,0,248,255,255,255,224,5,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,6,0,0,132,0,0,0,133,0,0,0,119,0,0,0,30,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,2,0,0,0,248,255,255,255,8,6,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,6,0,0,134,0,0,0,135,0,0,0,119,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,6,0,0,136,0,0,0,137,0,0,0,119,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,6,0,0,138,0,0,0,139,0,0,0,119,0,0,0,38,0,0,0,39,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,40,0,0,0,29,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,6,0,0,140,0,0,0,141,0,0,0,119,0,0,0,41,0,0,0,42,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,43,0,0,0,35,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,176,6,0,0,142,0,0,0,143,0,0,0,119,0,0,0,44,0,0,0,45,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,46,0,0,0,41,0,0,0,42,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,6,0,0,144,0,0,0,145,0,0,0,119,0,0,0,47,0,0,0,48,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,49,0,0,0,47,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,6,0,0,146,0,0,0,147,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,7,0,0,148,0,0,0,149,0,0,0,119,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,7,0,0,150,0,0,0,151,0,0,0,119,0,0,0,1,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,7,0,0,152,0,0,0,153,0,0,0,119,0,0,0,2,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,7,0,0,154,0,0,0,155,0,0,0,119,0,0,0,19,0,0,0,7,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,7,0,0,156,0,0,0,157,0,0,0,119,0,0,0,20,0,0,0,8,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,4,0,0,158,0,0,0,159,0,0,0,119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,5,0,0,160,0,0,0,161,0,0,0,119,0,0,0,27,0,0,0,21,0,0,0,28,0,0,0,22,0,0,0,29,0,0,0,9,0,0,0,23,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,4,0,0,162,0,0,0,163,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,12,0,0,0,50,0,0,0,51,0,0,0,13,0,0,0,52,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,5,0,0,164,0,0,0,165,0,0,0,119,0,0,0,53,0,0,0,54,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,0,0,0,0,80,5,0,0,166,0,0,0,167,0,0,0,119,0,0,0,55,0,0,0,56,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,0,0,0,0,32,4,0,0,168,0,0,0,169,0,0,0,119,0,0,0,0,0,0,0,48,4,0,0,168,0,0,0,170,0,0,0,119,0,0,0,24,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,30,0,0,0,25,0,0,0,31,0,0,0,26,0,0,0,32,0,0,0,13,0,0,0,27,0,0,0,14,0,0,0,0,0,0,0,80,4,0,0,168,0,0,0,171,0,0,0,119,0,0,0,5,0,0,0,6,0,0,0,15,0,0,0,57,0,0,0,58,0,0,0,16,0,0,0,59,0,0,0,0,0,0,0,112,4,0,0,168,0,0,0,172,0,0,0,119,0,0,0,7,0,0,0,8,0,0,0,17,0,0,0,60,0,0,0,61,0,0,0,18,0,0,0,62,0,0,0,0,0,0,0,144,4,0,0,168,0,0,0,173,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,176,4,0,0,168,0,0,0,174,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,192,4,0,0,168,0,0,0,175,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,37,0,0,0,89,0,0,0,45,0,0,0,37,0,0,0,109,0,0,0,45,0,0,0,37,0,0,0,100,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,0,0,0,114,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,102,0,0,0,97,0,0,0,108,0,0,0,115,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,110,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,114,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,117,0,0,0,114,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,114,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,99,0,0,0,104,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,105,0,0,0,108,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,101,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,121,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,117,0,0,0,115,0,0,0,116,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,116,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,111,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,77,0,0,0,0,0,0,0,80,0,0,0,77,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,97,0,0,0,32,0,0,0,37,0,0,0,98,0,0,0,32,0,0,0,37,0,0,0,100,0,0,0,32,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,89,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,3,32,2,32,2,32,2,32,2,32,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,1,96,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,213,8,213,8,213,8,213,8,213,8,213,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,4,192,4,192,4,192,4,192,4,192,4,192,8,214,8,214,8,214,8,214,8,214,8,214,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,4,192,4,192,4,192,4,192,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,97,119,83,116,114,101,97,109,32,111,114,32,114,97,119,68,97,116,97,32,110,101,101,100,115,32,116,111,32,114,101,102,101,114,101,110,99,101,32,116,111,32,115,111,109,101,116,104,105,110,103,0,119,105,100,116,104,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,54,53,53,51,53,93,0,104,101,105,103,104,116,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,54,53,53,51,53,93,0,98,105,116,115,112,101,114,115,97,109,112,108,101,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,50,44,32,49,54,93,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,110,101,101,100,115,32,116,111,32,98,101,32,115,101,116,32,116,111,32,97,32,118,97,108,117,101,32,111,102,32,123,78,111,110,101,44,32,83,97,109,112,108,101,44,32,76,105,110,101,125,0,99,111,109,112,111,110,101,110,116,115,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,50,53,53,93,0,117,110,99,111,109,112,114,101,115,115,101,100,32,115,105,122,101,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,119,105,116,104,32,116,104,101,32,111,116,104,101,114,32,112,97,114,97,109,101,116,101,114,115,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,99,97,110,110,111,116,32,98,101,32,115,101,116,32,116,111,32,83,97,109,112,108,101,32,105,110,32,99,111,109,98,105,110,97,116,105,111,110,32,119,105,116,104,32,99,111,109,112,111,110,101,110,116,115,32,61,32,52,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,99,97,110,32,111,110,108,121,32,98,101,32,115,101,116,32,116,111,32,78,111,110,101,32,105,110,32,99,111,109,98,105,110,97,116,105,111,110,32,119,105,116,104,32,99,111,109,112,111,110,101,110,116,115,32,61,32,49,0,67,111,108,111,114,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110,32,0,78,111,32,109,111,114,101,32,98,121,116,101,115,32,97,118,97,105,108,97,98,108,101,32,105,110,32,105,110,112,117,116,32,98,117,102,102,101,114,44,32,115,116,105,108,108,32,110,101,101,100,101,100,105,110,103,32,0,65,110,32,111,100,100,32,110,117,109,98,101,114,32,111,102,32,98,121,116,101,115,32,40,0,41,32,99,97,110,110,111,116,32,98,101,32,115,119,97,112,112,101,100,46,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,116,69,69,69,0,49,49,80,114,111,99,101,115,115,76,105,110,101,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,116,69,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,116,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,105,110,103,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,57,98,97,115,105,99,95,111,115,116,114,105,110,103,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,51,84,114,97,110,115,102,111,114,109,78,111,110,101,73,116,69,69,0,50,50,80,111,115,116,80,114,111,99,101,115,83,105,110,103,108,101,83,116,114,101,97,109,0,50,53,80,111,115,116,80,114,111,99,101,115,83,105,110,103,108,101,67,111,109,112,111,110,101,110,116,0,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,116,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,55,84,114,105,112,108,101,116,73,116,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,51,84,114,97,110,115,102,111,114,109,78,111,110,101,73,104,69,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,55,84,114,105,112,108,101,116,73,104,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,54,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,50,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,104,76,105,56,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,55,84,114,105,112,108,101,116,73,104,69,76,105,56,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,104,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,116,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,55,84,114,105,112,108,101,116,73,116,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,55,84,114,105,112,108,101,116,73,104,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,54,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,50,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,104,76,105,56,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,55,84,114,105,112,108,101,116,73,104,69,76,105,56,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,104,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,67,104,97,114,76,83,32,101,114,114,111,114,0,99,104,97,114,108,115,0,49,53,99,104,97,114,108,115,95,99,97,116,101,103,111,114,121,0,112,97,114,97,109,115,46,88,116,104,117,109,98,110,97,105,108,32,105,115,32,62,32,48,32,98,117,116,32,112,97,114,97,109,115,46,116,104,117,109,98,110,97,105,108,32,61,61,32,110,117,108,108,95,112,116,114,0,49,55,74,112,101,103,77,97,114,107,101,114,83,101,103,109,101,110,116,0,49,49,74,112,101,103,83,101,103,109,101,110,116,0,50,48,74,112,101,103,73,109,97,103,101,68,97,116,97,83,101,103,109,101,110,116,0,69,120,112,101,99,116,101,100,32,74,80,69,71,32,77,97,114,107,101,114,32,115,116,97,114,116,32,98,121,116,101,32,48,120,70,70,32,98,117,116,32,116,104,101,32,98,121,116,101,32,118,97,108,117,101,32,119,97,115,32,48,120,0,74,80,69,71,32,101,110,99,111,100,105,110,103,32,119,105,116,104,32,109,97,114,107,101,114,32,0,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,46,0,85,110,107,110,111,119,110,32,74,80,69,71,32,109,97,114,107,101,114,32,0,32,101,110,99,111,117,110,116,101,114,101,100,46,0,109,114,102,120,0,83,116,57,98,97,100,95,97,108,108,111,99,0,83,116,57,101,120,99,101,112,116,105,111,110,0,83,116,49,51,114,117,110,116,105,109,101,95,101,114,114,111,114,0,83,116,57,116,121,112,101,95,105,110,102,111,0,83,116,56,98,97,100,95,99,97,115,116,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,57,95,95,112,111,105,110,116,101,114,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,112,98,97,115,101,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,49,95,95,118,109,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,85,115,101,114,115,47,99,104,97,102,101,121,47,101,109,115,100,107,95,112,111,114,116,97,98,108,101,47,101,109,115,99,114,105,112,116,101,110,47,49,46,51,53,46,48,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,115,116,114,105,110,103,0,95,95,116,104,114,111,119,95,108,101,110,103,116,104,95,101,114,114,111,114,0,33,34,118,101,99,116,111,114,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,85,115,101,114,115,47,99,104,97,102,101,121,47,101,109,115,100,107,95,112,111,114,116,97,98,108,101,47,101,109,115,99,114,105,112,116,101,110,47,49,46,51,53,46,48,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,118,101,99,116,111,114,0,112,116,104,114,101,97,100,95,111,110,99,101,32,102,97,105,108,117,114,101,32,105,110,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,95,102,97,115,116,40,41,0,115,116,100,58,58,98,97,100,95,97,108,108,111,99,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,114,101,116,117,114,110,101,100,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,116,104,114,101,119,32,97,110,32,101,120,99,101,112,116,105,111,110,0,115,116,100,58,58,98,97,100,95,99,97,115,116,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,112,116,104,114,101,97,100,32,107,101,121,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,99,97,110,110,111,116,32,122,101,114,111,32,111,117,116,32,116,104,114,101,97,100,32,118,97,108,117,101,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,58,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,102,111,114,101,105,103,110,32,101,120,99,101,112,116,105,111,110,0,116,101,114,109,105,110,97,116,105,110,103,0,117,110,99,97,117,103,104,116,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+42396),allocate([32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,105,110,102,105,110,105,116,121,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,80,79,83,73,88],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+52636),allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,119,69,69,0,117,110,115,117,112,112,111,114,116,101,100,32,108,111,99,97,108,101,32,102,111,114,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,52,95,95,115,104,97,114,101,100,95,99,111,117,110,116,69,0,78,83,116,51,95,95,49,49,50,115,121,115,116,101,109,95,101,114,114,111,114,69,0,78,83,116,51,95,95,49,49,52,101,114,114,111,114,95,99,97,116,101,103,111,114,121,69,0,78,83,116,51,95,95,49,49,50,95,95,100,111,95,109,101,115,115,97,103,101,69,0,58,32,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,57,95,95,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,69,0,105,111,115,95,98,97,115,101,58,58,99,108,101,97,114,0,105,111,115,116,114,101,97,109,0,117,110,115,112,101,99,105,102,105,101,100,32,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,32,101,114,114,111,114,0,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,65,66,67,68,69,70,120,88,43,45,112,80,105,73,110,78,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,102,97,99,101,116,69,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,119,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,99,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,115,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,105,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,49,54,95,95,110,97,114,114,111,119,95,116,111,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,49,49,55,95,95,119,105,100,101,110,95,102,114,111,109,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,119,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,95,95,105,109,112,69,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,99,69,69,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,119,69,69,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,99,69,69,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,99,69,69,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,119,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,48,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,49,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,48,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,49,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,99,69,69,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,119,69,69,0,37,112,0,67,0,37,0,0,0,0,0,108,0,108,108,0,0,76,0,37,112,0,0,0,0,37,72,58,37,77,58,37,83,37,109,47,37,100,47,37,121,37,89,45,37,109,45,37,100,37,73,58,37,77,58,37,83,32,37,112,37,72,58,37,77,37,72,58,37,77,58,37,83,108,111,99,97,108,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,48,49,50,51,52,53,54,55,56,57,0,37,76,102,0,109,111,110,101,121,95,103,101,116,32,101,114,114,111,114,0,48,49,50,51,52,53,54,55,56,57,0,37,46,48,76,102,0,116,114,117,101,0,102,97,108,115,101,0,83,117,110,100,97,121,0,77,111,110,100,97,121,0,84,117,101,115,100,97,121,0,87,101,100,110,101,115,100,97,121,0,84,104,117,114,115,100,97,121,0,70,114,105,100,97,121,0,83,97,116,117,114,100,97,121,0,83,117,110,0,77,111,110,0,84,117,101,0,87,101,100,0,84,104,117,0,70,114,105,0,83,97,116,0,74,97,110,117,97,114,121,0,70,101,98,114,117,97,114,121,0,77,97,114,99,104,0,65,112,114,105,108,0,77,97,121,0,74,117,110,101,0,74,117,108,121,0,65,117,103,117,115,116,0,83,101,112,116,101,109,98,101,114,0,79,99,116,111,98,101,114,0,78,111,118,101,109,98,101,114,0,68,101,99,101,109,98,101,114,0,74,97,110,0,70,101,98,0,77,97,114,0,65,112,114,0,74,117,110,0,74,117,108,0,65,117,103,0,83,101,112,0,79,99,116,0,78,111,118,0,68,101,99,0,65,77,0,80,77,0,37,109,47,37,100,47,37,121,0,37,72,58,37,77,58,37,83,0,37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,0,37,73,58,37,77,58,37,83,32,37,112,0,78,83,116,51,95,95,49,49,51,109,101,115,115,97,103,101,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,48,95,95,116,105,109,101,95,112,117,116,69,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,119,69,69,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,99,69,69,0,78,83,116,51,95,95,49,57,116,105,109,101,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,112,117,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,119,69,69,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,103,101,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,49,49,50,99,111,100,101,99,118,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,48,99,116,121,112,101,95,98,97,115,101,69,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+56215);var tempDoublePtr=Runtime.alignMemory(allocate(12,"i8",ALLOC_STATIC),8);function copyTempFloat(e){HEAP8[tempDoublePtr]=HEAP8[e],HEAP8[tempDoublePtr+1]=HEAP8[e+1],HEAP8[tempDoublePtr+2]=HEAP8[e+2],HEAP8[tempDoublePtr+3]=HEAP8[e+3]}function copyTempDouble(e){HEAP8[tempDoublePtr]=HEAP8[e],HEAP8[tempDoublePtr+1]=HEAP8[e+1],HEAP8[tempDoublePtr+2]=HEAP8[e+2],HEAP8[tempDoublePtr+3]=HEAP8[e+3],HEAP8[tempDoublePtr+4]=HEAP8[e+4],HEAP8[tempDoublePtr+5]=HEAP8[e+5],HEAP8[tempDoublePtr+6]=HEAP8[e+6],HEAP8[tempDoublePtr+7]=HEAP8[e+7]}function _atexit(e,i){__ATEXIT__.unshift({func:e,arg:i})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}function ___assert_fail(e,i,r,t){throw ABORT=!0,"Assertion failed: "+Pointer_stringify(e)+", at: "+[i?Pointer_stringify(i):"unknown filename",r,t?Pointer_stringify(t):"unknown function"]+" at "+stackTrace()}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}assert(tempDoublePtr%8==0),Module._i64Subtract=_i64Subtract;var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:function(e){if(!e||EXCEPTIONS.infos[e])return e;for(var i in EXCEPTIONS.infos){if(EXCEPTIONS.infos[i].adjusted===e)return i}return e},addRef:function(e){e&&EXCEPTIONS.infos[e].refcount++},decRef:function(e){if(e){var i=EXCEPTIONS.infos[e];assert(i.refcount>0),i.refcount--,0===i.refcount&&(i.destructor&&Runtime.dynCall("vi",i.destructor,[e]),delete EXCEPTIONS.infos[e],___cxa_free_exception(e))}},clearRef:function(e){e&&(EXCEPTIONS.infos[e].refcount=0)}};function ___resumeException(e){throw EXCEPTIONS.last||(EXCEPTIONS.last=e),EXCEPTIONS.clearRef(EXCEPTIONS.deAdjust(e)),e}function ___cxa_find_matching_catch(){var e=EXCEPTIONS.last;if(!e)return 0|(asm.setTempRet0(0),0);var i=EXCEPTIONS.infos[e],r=i.type;if(!r)return 0|(asm.setTempRet0(0),e);var t=Array.prototype.slice.call(arguments);Module.___cxa_is_pointer_type(r);___cxa_find_matching_catch.buffer||(___cxa_find_matching_catch.buffer=_malloc(4)),HEAP32[___cxa_find_matching_catch.buffer>>2]=e,e=___cxa_find_matching_catch.buffer;for(var n=0;n<t.length;n++)if(t[n]&&Module.___cxa_can_catch(t[n],r,e))return e=HEAP32[e>>2],i.adjusted=e,0|(asm.setTempRet0(t[n]),e);return e=HEAP32[e>>2],0|(asm.setTempRet0(r),e)}function ___cxa_throw(e,i,r){throw EXCEPTIONS.infos[e]={ptr:e,adjusted:e,type:i,destructor:r,refcount:0},EXCEPTIONS.last=e,"uncaught_exception"in __ZSt18uncaught_exceptionv?__ZSt18uncaught_exceptionv.uncaught_exception++:__ZSt18uncaught_exceptionv.uncaught_exception=1,e}Module._memset=_memset;var _BDtoILow=!0,_emscripten_resume=!0;function ___gxx_personality_v0(){}var _emscripten_landingpad=!0;function __isLeapYear(e){return e%4==0&&(e%100!=0||e%400==0)}function __arraySum(e,i){for(var r=0,t=0;t<=i;r+=e[t++]);return r}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31],__MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(e,i){for(var r=new Date(e.getTime());i>0;){var t=__isLeapYear(r.getFullYear()),n=r.getMonth(),f=(t?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[n];if(!(i>f-r.getDate()))return r.setDate(r.getDate()+i),r;i-=f-r.getDate()+1,r.setDate(1),n<11?r.setMonth(n+1):(r.setMonth(0),r.setFullYear(r.getFullYear()+1))}return r}function _strftime(e,i,r,t){var n=HEAP32[t+40>>2],f={tm_sec:HEAP32[t>>2],tm_min:HEAP32[t+4>>2],tm_hour:HEAP32[t+8>>2],tm_mday:HEAP32[t+12>>2],tm_mon:HEAP32[t+16>>2],tm_year:HEAP32[t+20>>2],tm_wday:HEAP32[t+24>>2],tm_yday:HEAP32[t+28>>2],tm_isdst:HEAP32[t+32>>2],tm_gmtoff:HEAP32[t+36>>2],tm_zone:n?Pointer_stringify(n):""},a=Pointer_stringify(r),s={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S"};for(var l in s)a=a.replace(new RegExp(l,"g"),s[l]);var o=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],u=["January","February","March","April","May","June","July","August","September","October","November","December"];function c(e,i,r){for(var t="number"==typeof e?e.toString():e||"";t.length<i;)t=r[0]+t;return t}function h(e,i){return c(e,i,"0")}function d(e,i){function r(e){return e<0?-1:e>0?1:0}var t;return 0===(t=r(e.getFullYear()-i.getFullYear()))&&0===(t=r(e.getMonth()-i.getMonth()))&&(t=r(e.getDate()-i.getDate())),t}function b(e){switch(e.getDay()){case 0:return new Date(e.getFullYear()-1,11,29);case 1:return e;case 2:return new Date(e.getFullYear(),0,3);case 3:return new Date(e.getFullYear(),0,2);case 4:return new Date(e.getFullYear(),0,1);case 5:return new Date(e.getFullYear()-1,11,31);case 6:return new Date(e.getFullYear()-1,11,30)}}function k(e){var i=__addDays(new Date(e.tm_year+1900,0,1),e.tm_yday),r=new Date(i.getFullYear(),0,4),t=new Date(i.getFullYear()+1,0,4),n=b(r),f=b(t);return d(n,i)<=0?d(f,i)<=0?i.getFullYear()+1:i.getFullYear():i.getFullYear()-1}var w={"%a":function(e){return o[e.tm_wday].substring(0,3)},"%A":function(e){return o[e.tm_wday]},"%b":function(e){return u[e.tm_mon].substring(0,3)},"%B":function(e){return u[e.tm_mon]},"%C":function(e){return h((e.tm_year+1900)/100|0,2)},"%d":function(e){return h(e.tm_mday,2)},"%e":function(e){return c(e.tm_mday,2," ")},"%g":function(e){return k(e).toString().substring(2)},"%G":function(e){return k(e)},"%H":function(e){return h(e.tm_hour,2)},"%I":function(e){return h(e.tm_hour<13?e.tm_hour:e.tm_hour-12,2)},"%j":function(e){return h(e.tm_mday+__arraySum(__isLeapYear(e.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,e.tm_mon-1),3)},"%m":function(e){return h(e.tm_mon+1,2)},"%M":function(e){return h(e.tm_min,2)},"%n":function(){return"\\n"},"%p":function(e){return e.tm_hour>0&&e.tm_hour<13?"AM":"PM"},"%S":function(e){return h(e.tm_sec,2)},"%t":function(){return"\\t"},"%u":function(e){return new Date(e.tm_year+1900,e.tm_mon+1,e.tm_mday,0,0,0,0).getDay()||7},"%U":function(e){var i=new Date(e.tm_year+1900,0,1),r=0===i.getDay()?i:__addDays(i,7-i.getDay()),t=new Date(e.tm_year+1900,e.tm_mon,e.tm_mday);if(d(r,t)<0){var n=__arraySum(__isLeapYear(t.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,t.getMonth()-1)-31,f=31-r.getDate()+n+t.getDate();return h(Math.ceil(f/7),2)}return 0===d(r,i)?"01":"00"},"%V":function(e){var i,r=new Date(e.tm_year+1900,0,4),t=new Date(e.tm_year+1901,0,4),n=b(r),f=b(t),a=__addDays(new Date(e.tm_year+1900,0,1),e.tm_yday);return d(a,n)<0?"53":d(f,a)<=0?"01":(i=n.getFullYear()<e.tm_year+1900?e.tm_yday+32-n.getDate():e.tm_yday+1-n.getDate(),h(Math.ceil(i/7),2))},"%w":function(e){return new Date(e.tm_year+1900,e.tm_mon+1,e.tm_mday,0,0,0,0).getDay()},"%W":function(e){var i=new Date(e.tm_year,0,1),r=1===i.getDay()?i:__addDays(i,0===i.getDay()?1:7-i.getDay()+1),t=new Date(e.tm_year+1900,e.tm_mon,e.tm_mday);if(d(r,t)<0){var n=__arraySum(__isLeapYear(t.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,t.getMonth()-1)-31,f=31-r.getDate()+n+t.getDate();return h(Math.ceil(f/7),2)}return 0===d(r,i)?"01":"00"},"%y":function(e){return(e.tm_year+1900).toString().substring(2)},"%Y":function(e){return e.tm_year+1900},"%z":function(e){var i=e.tm_gmtoff,r=i>=0;return i=(i=Math.abs(i)/60)/60*100+i%60,(r?"+":"-")+String("0000"+i).slice(-4)},"%Z":function(e){return e.tm_zone},"%%":function(){return"%"}};for(var l in w)a.indexOf(l)>=0&&(a=a.replace(new RegExp(l,"g"),w[l](f)));var _=intArrayFromString(a,!1);return _.length>i?0:(writeArrayToMemory(_,e),_.length-1)}function _strftime_l(e,i,r,t){return _strftime(e,i,r,t)}function _abort(){Module.abort()}function _free(){}function ___cxa_free_exception(e){try{return _free(e)}catch(e){}}function ___cxa_end_catch(){if(___cxa_end_catch.rethrown)___cxa_end_catch.rethrown=!1;else{asm.setThrew(0);var e=EXCEPTIONS.caught.pop();e&&(EXCEPTIONS.decRef(EXCEPTIONS.deAdjust(e)),EXCEPTIONS.last=0)}}function _pthread_once(e,i){_pthread_once.seen||(_pthread_once.seen={}),e in _pthread_once.seen||(Runtime.dynCall("v",i),_pthread_once.seen[e]=1)}function ___lock(){}function ___unlock(){}Module._free=_free;var PTHREAD_SPECIFIC={};function _pthread_getspecific(e){return PTHREAD_SPECIFIC[e]||0}function ___setErrNo(e){return Module.___errno_location&&(HEAP32[Module.___errno_location()>>2]=e),e}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(e){switch(e){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator&&navigator.hardwareConcurrency||1}return ___setErrNo(ERRNO_CODES.EINVAL),-1}var _fabs=Math_abs,PTHREAD_SPECIFIC_NEXT_KEY=1;function _pthread_key_create(e,i){return 0==e?ERRNO_CODES.EINVAL:(HEAP32[e>>2]=PTHREAD_SPECIFIC_NEXT_KEY,PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0,PTHREAD_SPECIFIC_NEXT_KEY++,0)}var PATH=void 0;function _emscripten_set_main_loop_timing(e,i){if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=i,!Browser.mainLoop.func)return 1;if(0==e)Browser.mainLoop.scheduler=function(){setTimeout(Browser.mainLoop.runner,i)},Browser.mainLoop.method="timeout";else if(1==e)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(2==e){if(!window.setImmediate){var r=[],t="__emcc";window.addEventListener("message",(function(e){e.source===window&&e.data===t&&(e.stopPropagation(),r.shift()())}),!0),window.setImmediate=function(e){r.push(e),window.postMessage(t,"*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(e,i,r,t,n){Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=t;var f=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var i=Date.now(),r=Browser.mainLoop.queue.shift();if(r.func(r.arg),Browser.mainLoop.remainingBlockers){var n=Browser.mainLoop.remainingBlockers,a=n%1==0?n-1:Math.floor(n);r.counted?Browser.mainLoop.remainingBlockers=a:(a+=.5,Browser.mainLoop.remainingBlockers=(8*n+a)/9)}return console.log(\'main loop blocker "\'+r.name+\'" took \'+(Date.now()-i)+" ms"),Browser.mainLoop.updateStatus(),void setTimeout(Browser.mainLoop.runner,0)}f<Browser.mainLoop.currentlyRunningMainloop||(Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0,1==Browser.mainLoop.timingMode&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0?Browser.mainLoop.scheduler():("timeout"===Browser.mainLoop.method&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter((function(){void 0!==t?Runtime.dynCall("vi",e,[t]):Runtime.dynCall("v",e)})),f<Browser.mainLoop.currentlyRunningMainloop||("object"==typeof SDL&&SDL.audio&&SDL.audio.queueNewAudioData&&SDL.audio.queueNewAudioData(),Browser.mainLoop.scheduler())))}},n||(i&&i>0?_emscripten_set_main_loop_timing(0,1e3/i):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),r)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,i=Browser.mainLoop.timingValue,r=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(r,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,i),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",i=Browser.mainLoop.remainingBlockers,r=Browser.mainLoop.expectedBlockers;i?i<r?Module.setStatus(e+" ("+(r-i)+"/"+r+")"):Module.setStatus(e):Module.setStatus("")}},runIter:function(e){if(!ABORT){if(Module.preMainLoop)if(!1===Module.preMainLoop())return;try{e()}catch(e){if(e instanceof ExitStatus)return;throw e&&"object"==typeof e&&e.stack&&Module.printErr("exception thrown: "+[e,e.stack]),e}Module.postMainLoop&&Module.postMainLoop()}}},isFullScreen:!1,pointerLock:!1,moduleContextCreatedCallbacks:[],workers:[],init:function(){if(Module.preloadPlugins||(Module.preloadPlugins=[]),!Browser.initted){Browser.initted=!0;try{new Blob,Browser.hasBlobConstructor=!0}catch(e){Browser.hasBlobConstructor=!1,console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Browser.BlobBuilder="undefined"!=typeof MozBlobBuilder?MozBlobBuilder:"undefined"!=typeof WebKitBlobBuilder?WebKitBlobBuilder:Browser.hasBlobConstructor?null:console.log("warning: no BlobBuilder"),Browser.URLObject="undefined"!=typeof window?window.URL?window.URL:window.webkitURL:void 0,Module.noImageDecoding||void 0!==Browser.URLObject||(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),Module.noImageDecoding=!0);var e={canHandle:function(e){return!Module.noImageDecoding&&/\\.(jpg|jpeg|png|bmp)$/i.test(e)},handle:function(e,i,r,t){var n=null;if(Browser.hasBlobConstructor)try{(n=new Blob([e],{type:Browser.getMimetype(i)})).size!==e.length&&(n=new Blob([new Uint8Array(e).buffer],{type:Browser.getMimetype(i)}))}catch(e){Runtime.warnOnce("Blob constructor present but fails: "+e+"; falling back to blob builder")}if(!n){var f=new Browser.BlobBuilder;f.append(new Uint8Array(e).buffer),n=f.getBlob()}var a=Browser.URLObject.createObjectURL(n),s=new Image;s.onload=function(){assert(s.complete,"Image "+i+" could not be decoded");var t=document.createElement("canvas");t.width=s.width,t.height=s.height,t.getContext("2d").drawImage(s,0,0),Module.preloadedImages[i]=t,Browser.URLObject.revokeObjectURL(a),r&&r(e)},s.onerror=function(e){console.log("Image "+a+" could not be decoded"),t&&t()},s.src=a}};Module.preloadPlugins.push(e);var i={canHandle:function(e){return!Module.noAudioDecoding&&e.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(e,i,r,t){var n=!1;function f(t){n||(n=!0,Module.preloadedAudios[i]=t,r&&r(e))}function a(){n||(n=!0,Module.preloadedAudios[i]=new Audio,t&&t())}if(!Browser.hasBlobConstructor)return a();try{var s=new Blob([e],{type:Browser.getMimetype(i)})}catch(e){return a()}var l=Browser.URLObject.createObjectURL(s),o=new Audio;o.addEventListener("canplaythrough",(function(){f(o)}),!1),o.onerror=function(r){n||(console.log("warning: browser could not fully decode audio "+i+", trying slower base64 approach"),o.src="data:audio/x-"+i.substr(-3)+";base64,"+function(e){for(var i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="",t=0,n=0,f=0;f<e.length;f++)for(t=t<<8|e[f],n+=8;n>=6;){var a=t>>n-6&63;n-=6,r+=i[a]}return 2==n?(r+=i[(3&t)<<4],r+="=="):4==n&&(r+=i[(15&t)<<2],r+="="),r}(e),f(o))},o.src=l,Browser.safeSetTimeout((function(){f(o)}),1e4)}};Module.preloadPlugins.push(i);var r=Module.canvas;r&&(r.requestPointerLock=r.requestPointerLock||r.mozRequestPointerLock||r.webkitRequestPointerLock||r.msRequestPointerLock||function(){},r.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},r.exitPointerLock=r.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",t,!1),document.addEventListener("mozpointerlockchange",t,!1),document.addEventListener("webkitpointerlockchange",t,!1),document.addEventListener("mspointerlockchange",t,!1),Module.elementPointerLock&&r.addEventListener("click",(function(e){!Browser.pointerLock&&r.requestPointerLock&&(r.requestPointerLock(),e.preventDefault())}),!1))}function t(){Browser.pointerLock=document.pointerLockElement===r||document.mozPointerLockElement===r||document.webkitPointerLockElement===r||document.msPointerLockElement===r}},createContext:function(e,i,r,t){if(i&&Module.ctx&&e==Module.canvas)return Module.ctx;var n,f;if(i){var a={antialias:!1,alpha:!1};if(t)for(var s in t)a[s]=t[s];(f=GL.createContext(e,a))&&(n=GL.getContext(f).GLctx),e.style.backgroundColor="black"}else n=e.getContext("2d");return n?(r&&(i||assert("undefined"==typeof GLctx,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=n,i&&GL.makeContextCurrent(f),Module.useWebGL=i,Browser.moduleContextCreatedCallbacks.forEach((function(e){e()})),Browser.init()),n):null},destroyContext:function(e,i,r){},fullScreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullScreen:function(e,i,r){Browser.lockPointer=e,Browser.resizeCanvas=i,Browser.vrDevice=r,void 0===Browser.lockPointer&&(Browser.lockPointer=!0),void 0===Browser.resizeCanvas&&(Browser.resizeCanvas=!1),void 0===Browser.vrDevice&&(Browser.vrDevice=null);var t=Module.canvas;function n(){Browser.isFullScreen=!1;var e=t.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===e?(t.cancelFullScreen=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen||function(){},t.cancelFullScreen=t.cancelFullScreen.bind(document),Browser.lockPointer&&t.requestPointerLock(),Browser.isFullScreen=!0,Browser.resizeCanvas&&Browser.setFullScreenCanvasSize()):(e.parentNode.insertBefore(t,e),e.parentNode.removeChild(e),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullScreen),Browser.updateCanvasDimensions(t)}Browser.fullScreenHandlersInstalled||(Browser.fullScreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",n,!1),document.addEventListener("mozfullscreenchange",n,!1),document.addEventListener("webkitfullscreenchange",n,!1),document.addEventListener("MSFullscreenChange",n,!1));var f=document.createElement("div");t.parentNode.insertBefore(f,t),f.appendChild(t),f.requestFullScreen=f.requestFullScreen||f.mozRequestFullScreen||f.msRequestFullscreen||(f.webkitRequestFullScreen?function(){f.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),r?f.requestFullScreen({vrDisplay:r}):f.requestFullScreen()},nextRAF:0,fakeRequestAnimationFrame:function(e){var i=Date.now();if(0===Browser.nextRAF)Browser.nextRAF=i+1e3/60;else for(;i+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var r=Math.max(Browser.nextRAF-i,0);setTimeout(e,r)},requestAnimationFrame:function(e){"undefined"==typeof window?Browser.fakeRequestAnimationFrame(e):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(e))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach((function(e){e()}))}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame((function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))}))},safeSetTimeout:function(e,i){return Module.noExitRuntime=!0,setTimeout((function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))}),i)},safeSetInterval:function(e,i){return Module.noExitRuntime=!0,setInterval((function(){ABORT||Browser.allowAsyncCallbacks&&e()}),i)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var i=0;switch(e.type){case"DOMMouseScroll":i=e.detail;break;case"mousewheel":i=e.wheelDelta;break;case"wheel":i=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return i},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)"mousemove"!=e.type&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),"undefined"!=typeof SDL?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var i=Module.canvas.getBoundingClientRect(),r=Module.canvas.width,t=Module.canvas.height,n=void 0!==window.scrollX?window.scrollX:window.pageXOffset,f=void 0!==window.scrollY?window.scrollY:window.pageYOffset;if("touchstart"===e.type||"touchend"===e.type||"touchmove"===e.type){var a=e.touch;if(void 0===a)return;var s=a.pageX-(n+i.left),l=a.pageY-(f+i.top),o={x:s*=r/i.width,y:l*=t/i.height};if("touchstart"===e.type)Browser.lastTouches[a.identifier]=o,Browser.touches[a.identifier]=o;else if("touchend"===e.type||"touchmove"===e.type){var u=Browser.touches[a.identifier];u||(u=o),Browser.lastTouches[a.identifier]=u,Browser.touches[a.identifier]=o}return}var c=e.pageX-(n+i.left),h=e.pageY-(f+i.top);c*=r/i.width,h*=t/i.height,Browser.mouseMovementX=c-Browser.mouseX,Browser.mouseMovementY=h-Browser.mouseY,Browser.mouseX=c,Browser.mouseY=h}},xhrLoad:function(e,i,r){var t=new XMLHttpRequest;t.open("GET",e,!0),t.responseType="arraybuffer",t.onload=function(){200==t.status||0==t.status&&t.response?i(t.response):r()},t.onerror=r,t.send(null)},asyncLoad:function(e,i,r,t){Browser.xhrLoad(e,(function(r){assert(r,\'Loading data file "\'+e+\'" failed (no arrayBuffer).\'),i(new Uint8Array(r)),t||removeRunDependency("al "+e)}),(function(i){if(!r)throw\'Loading data file "\'+e+\'" failed.\';r()})),t||addRunDependency("al "+e)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach((function(i){i(e.width,e.height)}))},setCanvasSize:function(e,i,r){var t=Module.canvas;Browser.updateCanvasDimensions(t,e,i),r||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e|=8388608,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e&=-8388609,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,i,r){i&&r?(e.widthNative=i,e.heightNative=r):(i=e.widthNative,r=e.heightNative);var t=i,n=r;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(t/n<Module.forcedAspectRatio?t=Math.round(n*Module.forcedAspectRatio):n=Math.round(t/Module.forcedAspectRatio)),(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===e.parentNode&&"undefined"!=typeof screen){var f=Math.min(screen.width/t,screen.height/n);t=Math.round(t*f),n=Math.round(n*f)}Browser.resizeCanvas?(e.width!=t&&(e.width=t),e.height!=n&&(e.height=n),void 0!==e.style&&(e.style.removeProperty("width"),e.style.removeProperty("height"))):(e.width!=i&&(e.width=i),e.height!=r&&(e.height=r),void 0!==e.style&&(t!=i||n!=r?(e.style.setProperty("width",t+"px","important"),e.style.setProperty("height",n+"px","important")):(e.style.removeProperty("width"),e.style.removeProperty("height"))))},wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:function(){var e=Browser.nextWgetRequestHandle;return Browser.nextWgetRequestHandle++,e}};function _pthread_setspecific(e,i){return e in PTHREAD_SPECIFIC?(PTHREAD_SPECIFIC[e]=i,0):ERRNO_CODES.EINVAL}function _malloc(e){return Runtime.dynamicAlloc(e+8)+8&4294967288}function ___cxa_allocate_exception(e){return _malloc(e)}Module._malloc=_malloc;var SYSCALLS={varargs:0,get:function(e){return SYSCALLS.varargs+=4,HEAP32[SYSCALLS.varargs-4>>2]},getStr:function(){return Pointer_stringify(SYSCALLS.get())},get64:function(){var e=SYSCALLS.get(),i=SYSCALLS.get();return assert(e>=0?0===i:-1===i),e},getZero:function(){assert(0===SYSCALLS.get())}};function ___syscall54(e,i){SYSCALLS.varargs=i;try{return 0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___cxa_pure_virtual(){throw ABORT=!0,"Pure virtual function called!"}Module._i64Add=_i64Add,Module._bitshift64Lshr=_bitshift64Lshr;var _BDtoIHigh=!0;function _pthread_cleanup_push(e,i){__ATEXIT__.push((function(){Runtime.dynCall("vi",e,[i])})),_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cond_broadcast(){return 0}function ___cxa_guard_acquire(e){return HEAP8[e>>0]?0:(HEAP8[e>>0]=1,1)}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!"),__ATEXIT__.pop(),_pthread_cleanup_push.level=__ATEXIT__.length}function ___cxa_guard_release(){}function ___cxa_begin_catch(e){return __ZSt18uncaught_exceptionv.uncaught_exception--,EXCEPTIONS.caught.push(e),EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(e)),e}function _llvm_eh_typeid_for(e){return e}function _emscripten_memcpy_big(e,i,r){return HEAPU8.set(HEAPU8.subarray(i,i+r),e),e}function ___syscall6(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD();return FS.close(r),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function _pthread_mutex_lock(){}Module._memcpy=_memcpy;var _emscripten_postinvoke=!0;function _sbrk(e){var i=_sbrk;i.called||(DYNAMICTOP=alignMemoryPage(DYNAMICTOP),i.called=!0,assert(Runtime.dynamicAlloc),i.alloc=Runtime.dynamicAlloc,Runtime.dynamicAlloc=function(){abort("cannot dynamically allocate, sbrk now has control")});var r=DYNAMICTOP;if(0!=e&&!i.alloc(e))return-1>>>0;return r}function ___cxa_guard_abort(){}Module._bitshift64Shl=_bitshift64Shl,Module._memmove=_memmove;var _emscripten_preinvoke=!0,_BItoD=!0;function _pthread_cond_wait(){return 0}function ___cxa_rethrow(){___cxa_end_catch.rethrown=!0;var e=EXCEPTIONS.caught.pop();throw EXCEPTIONS.last=e,e}function _pthread_mutex_unlock(){}function _time(e){var i=Date.now()/1e3|0;return e&&(HEAP32[e>>2]=i),i}function _pthread_self(){return 0}function ___syscall140(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD(),t=SYSCALLS.get(),n=SYSCALLS.get(),f=SYSCALLS.get(),a=SYSCALLS.get(),s=n;return assert(0===t),FS.llseek(r,s,a),HEAP32[f>>2]=r.position,r.getdents&&0===s&&0===a&&(r.getdents=null),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall146(e,i){SYSCALLS.varargs=i;try{SYSCALLS.get();var r=SYSCALLS.get(),t=SYSCALLS.get(),n=0;___syscall146.buffer||(___syscall146.buffer=[]);for(var f=___syscall146.buffer,a=0;a<t;a++){for(var s=HEAP32[r+8*a>>2],l=HEAP32[r+(8*a+4)>>2],o=0;o<l;o++){var u=HEAPU8[s+o];0===u||10===u?(Module.print(UTF8ArrayToString(f,0)),f.length=0):f.push(u)}n+=l}return n}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall145(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD(),t=SYSCALLS.get(),n=SYSCALLS.get();return SYSCALLS.doReadv(r,t,n)}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}var ___dso_handle=allocate(1,"i32*",ALLOC_STATIC);Module.requestFullScreen=function(e,i,r){Browser.requestFullScreen(e,i,r)},Module.requestAnimationFrame=function(e){Browser.requestAnimationFrame(e)},Module.setCanvasSize=function(e,i,r){Browser.setCanvasSize(e,i,r)},Module.pauseMainLoop=function(){Browser.mainLoop.pause()},Module.resumeMainLoop=function(){Browser.mainLoop.resume()},Module.getUserMedia=function(){Browser.getUserMedia()},Module.createContext=function(e,i,r,t){return Browser.createContext(e,i,r,t)},STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP),staticSealed=!0,STACK_MAX=STACK_BASE+TOTAL_STACK,DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX),assert(DYNAMIC_BASE<TOTAL_MEMORY,"TOTAL_MEMORY not big enough for stack");var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_DYNAMIC);function invoke_iiiiiiii(e,i,r,t,n,f,a,s){try{return Module.dynCall_iiiiiiii(e,i,r,t,n,f,a,s)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiii(e,i,r,t,n,f){try{Module.dynCall_viiiii(e,i,r,t,n,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiid(e,i,r,t,n,f,a){try{return Module.dynCall_iiiiiid(e,i,r,t,n,f,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_vi(e,i){try{Module.dynCall_vi(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_vii(e,i,r){try{Module.dynCall_vii(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiii(e,i,r,t,n,f,a){try{return Module.dynCall_iiiiiii(e,i,r,t,n,f,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_ii(e,i){try{return Module.dynCall_ii(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiiiiiiii(e,i,r,t,n,f,a,s,l,o,u,c){try{return Module.dynCall_iiiiiiiiiiii(e,i,r,t,n,f,a,s,l,o,u,c)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiii(e,i,r,t){try{return Module.dynCall_iiii(e,i,r,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiiiiiiiiiii(e,i,r,t,n,f,a,s,l,o,u,c,h,d,b,k){try{Module.dynCall_viiiiiiiiiiiiiii(e,i,r,t,n,f,a,s,l,o,u,c,h,d,b,k)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiii(e,i,r,t,n,f,a){try{Module.dynCall_viiiiii(e,i,r,t,n,f,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiii(e,i,r,t,n,f,a,s){try{Module.dynCall_viiiiiii(e,i,r,t,n,f,a,s)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiiiiii(e,i,r,t,n,f,a,s,l,o,u){try{Module.dynCall_viiiiiiiiii(e,i,r,t,n,f,a,s,l,o,u)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iii(e,i,r){try{return Module.dynCall_iii(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiii(e,i,r,t,n,f){try{return Module.dynCall_iiiiii(e,i,r,t,n,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_diii(e,i,r,t){try{return Module.dynCall_diii(e,i,r,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_i(e){try{return Module.dynCall_i(e)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiii(e,i,r,t,n){try{return Module.dynCall_iiiii(e,i,r,t,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viii(e,i,r,t){try{Module.dynCall_viii(e,i,r,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_v(e){try{Module.dynCall_v(e)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiiiii(e,i,r,t,n,f,a,s,l){try{return Module.dynCall_iiiiiiiii(e,i,r,t,n,f,a,s,l)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiid(e,i,r,t,n,f){try{return Module.dynCall_iiiiid(e,i,r,t,n,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiii(e,i,r,t,n){try{Module.dynCall_viiii(e,i,r,t,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}Module.asmGlobalArg={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort:abort,assert:assert,invoke_iiiiiiii:invoke_iiiiiiii,invoke_viiiii:invoke_viiiii,invoke_iiiiiid:invoke_iiiiiid,invoke_vi:invoke_vi,invoke_vii:invoke_vii,invoke_iiiiiii:invoke_iiiiiii,invoke_ii:invoke_ii,invoke_iiiiiiiiiiii:invoke_iiiiiiiiiiii,invoke_iiii:invoke_iiii,invoke_viiiiiiiiiiiiiii:invoke_viiiiiiiiiiiiiii,invoke_viiiiii:invoke_viiiiii,invoke_viiiiiii:invoke_viiiiiii,invoke_viiiiiiiiii:invoke_viiiiiiiiii,invoke_iii:invoke_iii,invoke_iiiiii:invoke_iiiiii,invoke_diii:invoke_diii,invoke_i:invoke_i,invoke_iiiii:invoke_iiiii,invoke_viii:invoke_viii,invoke_v:invoke_v,invoke_iiiiiiiii:invoke_iiiiiiiii,invoke_iiiiid:invoke_iiiiid,invoke_viiii:invoke_viiii,_fabs:_fabs,_strftime:_strftime,_pthread_cond_wait:_pthread_cond_wait,___lock:___lock,_pthread_key_create:_pthread_key_create,_abort:_abort,___cxa_guard_acquire:___cxa_guard_acquire,___setErrNo:___setErrNo,___gxx_personality_v0:___gxx_personality_v0,___assert_fail:___assert_fail,___cxa_free_exception:___cxa_free_exception,___cxa_allocate_exception:___cxa_allocate_exception,___cxa_find_matching_catch:___cxa_find_matching_catch,__isLeapYear:__isLeapYear,___cxa_guard_release:___cxa_guard_release,__addDays:__addDays,_strftime_l:_strftime_l,_emscripten_set_main_loop_timing:_emscripten_set_main_loop_timing,_llvm_eh_typeid_for:_llvm_eh_typeid_for,_sbrk:_sbrk,___cxa_begin_catch:___cxa_begin_catch,_emscripten_memcpy_big:_emscripten_memcpy_big,___cxa_end_catch:___cxa_end_catch,___resumeException:___resumeException,__ZSt18uncaught_exceptionv:__ZSt18uncaught_exceptionv,_sysconf:_sysconf,_pthread_getspecific:_pthread_getspecific,__arraySum:__arraySum,_pthread_self:_pthread_self,_pthread_mutex_unlock:_pthread_mutex_unlock,_pthread_once:_pthread_once,___syscall54:___syscall54,___unlock:___unlock,_pthread_cleanup_pop:_pthread_cleanup_pop,_pthread_cond_broadcast:_pthread_cond_broadcast,_emscripten_set_main_loop:_emscripten_set_main_loop,_pthread_setspecific:_pthread_setspecific,___cxa_atexit:___cxa_atexit,___cxa_throw:___cxa_throw,___cxa_rethrow:___cxa_rethrow,___syscall6:___syscall6,_pthread_cleanup_push:_pthread_cleanup_push,___cxa_pure_virtual:___cxa_pure_virtual,_time:_time,_pthread_mutex_lock:_pthread_mutex_lock,___cxa_guard_abort:___cxa_guard_abort,_atexit:_atexit,___syscall140:___syscall140,___syscall145:___syscall145,___syscall146:___syscall146,STACKTOP:STACKTOP,STACK_MAX:STACK_MAX,tempDoublePtr:tempDoublePtr,ABORT:ABORT,cttz_i8:cttz_i8,___dso_handle:___dso_handle};var asm=function(e,i,r){"use asm";var t=new e.Int8Array(r);var n=new e.Int16Array(r);var f=new e.Int32Array(r);var a=new e.Uint8Array(r);var s=new e.Uint16Array(r);var l=new e.Uint32Array(r);var o=new e.Float32Array(r);var u=new e.Float64Array(r);var c=i.STACKTOP|0;var h=i.STACK_MAX|0;var d=i.tempDoublePtr|0;var b=i.ABORT|0;var k=i.cttz_i8|0;var w=i.___dso_handle|0;var _=0;var m=0;var v=0;var p=0;var g=e.NaN,y=e.Infinity;var M=0,E=0,A=0,S=0,T=0.0,C=0,R=0,L=0,x=0.0;var P=0;var O=0;var B=0;var I=0;var D=0;var N=0;var F=0;var U=0;var j=0;var H=0;var z=e.Math.floor;var Y=e.Math.abs;var q=e.Math.sqrt;var X=e.Math.pow;var V=e.Math.cos;var G=e.Math.sin;var K=e.Math.tan;var W=e.Math.acos;var Z=e.Math.asin;var J=e.Math.atan;var Q=e.Math.atan2;var $=e.Math.exp;var ee=e.Math.log;var ie=e.Math.ceil;var re=e.Math.imul;var te=e.Math.min;var ne=e.Math.clz32;var fe=i.abort;var ae=i.assert;var se=i.invoke_iiiiiiii;var le=i.invoke_viiiii;var oe=i.invoke_iiiiiid;var ue=i.invoke_vi;var ce=i.invoke_vii;var he=i.invoke_iiiiiii;var de=i.invoke_ii;var be=i.invoke_iiiiiiiiiiii;var ke=i.invoke_iiii;var we=i.invoke_viiiiiiiiiiiiiii;var _e=i.invoke_viiiiii;var me=i.invoke_viiiiiii;var ve=i.invoke_viiiiiiiiii;var pe=i.invoke_iii;var ge=i.invoke_iiiiii;var ye=i.invoke_diii;var Me=i.invoke_i;var Ee=i.invoke_iiiii;var Ae=i.invoke_viii;var Se=i.invoke_v;var Te=i.invoke_iiiiiiiii;var Ce=i.invoke_iiiiid;var Re=i.invoke_viiii;var Le=i._fabs;var xe=i._strftime;var Pe=i._pthread_cond_wait;var Oe=i.___lock;var Be=i._pthread_key_create;var Ie=i._abort;var De=i.___cxa_guard_acquire;var Ne=i.___setErrNo;var Fe=i.___gxx_personality_v0;var Ue=i.___assert_fail;var je=i.___cxa_free_exception;var He=i.___cxa_allocate_exception;var ze=i.___cxa_find_matching_catch;var Ye=i.__isLeapYear;var qe=i.___cxa_guard_release;var Xe=i.__addDays;var Ve=i._strftime_l;var Ge=i._emscripten_set_main_loop_timing;var Ke=i._llvm_eh_typeid_for;var We=i._sbrk;var Ze=i.___cxa_begin_catch;var Je=i._emscripten_memcpy_big;var Qe=i.___cxa_end_catch;var $e=i.___resumeException;var ei=i.__ZSt18uncaught_exceptionv;var ii=i._sysconf;var ri=i._pthread_getspecific;var ti=i.__arraySum;var ni=i._pthread_self;var fi=i._pthread_mutex_unlock;var ai=i._pthread_once;var si=i.___syscall54;var li=i.___unlock;var oi=i._pthread_cleanup_pop;var ui=i._pthread_cond_broadcast;var ci=i._emscripten_set_main_loop;var hi=i._pthread_setspecific;var di=i.___cxa_atexit;var bi=i.___cxa_throw;var ki=i.___cxa_rethrow;var wi=i.___syscall6;var _i=i._pthread_cleanup_push;var mi=i.___cxa_pure_virtual;var vi=i._time;var pi=i._pthread_mutex_lock;var gi=i.___cxa_guard_abort;var yi=i._atexit;var Mi=i.___syscall140;var Ei=i.___syscall145;var Ai=i.___syscall146;var Si=0.0;function Ti(e){e=e|0;var i=0;i=c;c=c+e|0;c=c+15&-16;return i|0}function Ci(){return c|0}function Ri(e){e=e|0;c=e}function Li(e,i){e=e|0;i=i|0;c=e;h=i}function xi(e,i){e=e|0;i=i|0;if(!_){_=e;m=i}}function Pi(e){e=e|0;t[d>>0]=t[e>>0];t[d+1>>0]=t[e+1>>0];t[d+2>>0]=t[e+2>>0];t[d+3>>0]=t[e+3>>0]}function Oi(e){e=e|0;t[d>>0]=t[e>>0];t[d+1>>0]=t[e+1>>0];t[d+2>>0]=t[e+2>>0];t[d+3>>0]=t[e+3>>0];t[d+4>>0]=t[e+4>>0];t[d+5>>0]=t[e+5>>0];t[d+6>>0]=t[e+6>>0];t[d+7>>0]=t[e+7>>0]}function Bi(e){e=e|0;P=e}function Ii(){return P|0}function Di(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0;y=c;c=c+128|0;b=y+44|0;m=y+8|0;u=y+4|0;d=y;k=r+4|0;w=r+8|0;_=0;Re(35,f[r>>2]|0,f[k>>2]|0,f[w>>2]|0,n|0);h=_;_=0;if(!(h&1)){l=b;s=l+84|0;do{f[l>>2]=f[n>>2];l=l+4|0;n=n+4|0}while((l|0)<(s|0));n=b+12|0;if((f[n>>2]|0)==0?(o=re(((f[b+8>>2]|0)+7|0)/8|0,f[b>>2]|0)|0,f[n>>2]=o,(f[b+24>>2]|0)!=0):0)f[n>>2]=re(f[b+16>>2]|0,o)|0;_=0;ue(176,m|0);h=_;_=0;if(!(h&1)){n=b+56|0;do{if(f[n>>2]|0){_=0;n=de(66,n|0)|0;h=_;_=0;if(!(h&1)){f[u>>2]=n;s=m+28|0;l=f[s>>2]|0;if(l>>>0<(f[m+32>>2]|0)>>>0){f[l>>2]=n;f[s>>2]=l+4;f[u>>2]=0;v=19;break}_=0;ce(57,m+24|0,u|0);h=_;_=0;if(h&1){s=ze(824,0)|0;n=P;l=f[u>>2]|0;f[u>>2]=0;if(!l)break;fM[f[(f[l>>2]|0)+4>>2]&255](l);break}else{n=f[u>>2]|0;f[u>>2]=0;if(!n){v=19;break}fM[f[(f[n>>2]|0)+4>>2]&255](n);v=19;break}}else v=15}else v=19}while(0);e:do{if((v|0)==19){l=b+4|0;o=b+8|0;u=b+16|0;_=0;n=Ee(14,f[b>>2]|0,f[l>>2]|0,f[o>>2]|0,f[u>>2]|0)|0;h=_;_=0;if(!(h&1)){f[d>>2]=n;h=m+28|0;s=f[h>>2]|0;do{if(s>>>0>=(f[m+32>>2]|0)>>>0){_=0;ce(57,m+24|0,d|0);s=_;_=0;if(s&1){s=ze(824,0)|0;n=P;l=f[d>>2]|0;f[d>>2]=0;if(!l)break e;fM[f[(f[l>>2]|0)+4>>2]&255](l);break e}else{n=f[d>>2]|0;f[d>>2]=0;if(!n)break;fM[f[(f[n>>2]|0)+4>>2]&255](n);break}}else{f[s>>2]=n;f[h>>2]=s+4;f[d>>2]=0}}while(0);n=f[b+28>>2]|0;if((n|0)!=0?(_=0,ce(58,m|0,n|0),v=_,_=0,v&1):0){v=15;break}i:do{if(!(f[b+24>>2]|0)){n=re(f[l>>2]|0,f[b>>2]|0)|0;n=re(n,((f[o>>2]|0)+7|0)/8|0)|0;if((f[u>>2]|0)>0){l=0;while(1){_=0;Ae(4,m|0,r|0,b|0);v=_;_=0;if(v&1)break;s=f[k>>2]|0;if(s){f[k>>2]=s+n;f[w>>2]=(f[w>>2]|0)-n}l=l+1|0;if((l|0)>=(f[u>>2]|0))break i}s=ze(824,0)|0;n=P;v=16;break e}}else{_=0;Ae(4,m|0,r|0,b|0);v=_;_=0;if(v&1){v=15;break e}}}while(0);_=0;pe(33,m|0,e|0)|0;v=_;_=0;if(!(v&1)){f[i>>2]=f[m+16>>2];if(a)t[a>>0]=0;l=m+24|0;n=f[l>>2]|0;if(n){s=f[h>>2]|0;if((s|0)!=(n|0)){do{a=s+-4|0;f[h>>2]=a;s=f[a>>2]|0;f[a>>2]=0;if(s)fM[f[(f[s>>2]|0)+4>>2]&255](s);s=f[h>>2]|0}while((s|0)!=(n|0));n=f[l>>2]|0}Ip(n)}a=0;c=y;return a|0}else v=15}else v=15}}while(0);if((v|0)==15){s=ze(824,0)|0;n=P;v=16}h=m+24|0;l=f[h>>2]|0;if(l){u=m+28|0;o=f[u>>2]|0;if((o|0)!=(l|0)){do{m=o+-4|0;f[u>>2]=m;o=f[m>>2]|0;f[m>>2]=0;if(o)fM[f[(f[o>>2]|0)+4>>2]&255](o);o=f[u>>2]|0}while((o|0)!=(l|0));l=f[h>>2]|0}Ip(l)}}else v=5}else v=5;if((v|0)==5){s=ze(824,0)|0;n=P}m=(n|0)==(Ke(824)|0);o=Ze(s|0)|0;n=(a|0)==0;if(!m){if(!n)t[a>>0]=0;Qe();a=14;c=y;return a|0}l=o+12|0;do{if(!n){n=f[l>>2]|0;_=0;s=Me(1)|0;m=_;_=0;if(!(m&1))if((n|0)==(s|0)){Xy(a,lM[f[(f[o>>2]|0)+8>>2]&127](o)|0)|0;v=60;break}else{t[a>>0]=0;v=60;break}}else v=60}while(0);if((v|0)==60?(p=f[l>>2]|0,_=0,g=Me(1)|0,a=_,_=0,!(a&1)):0){a=(p|0)==(g|0)?f[o+8>>2]|0:13;Qe();c=y;return a|0}n=ze()|0;_=0;Se(3);y=_;_=0;if(y&1){y=ze(0)|0;Fi(y)}else $e(n|0);return 0}function Ni(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0;u=c;c=c+112|0;a=u+96|0;o=u+84|0;h=u+72|0;d=u+60|0;b=u+48|0;k=u+36|0;w=u+24|0;m=u+12|0;v=u;l=(i|0)==0;if((e|0)==0&l){n=He(16)|0;_=0;Ae(5,a|0,48504,52);v=_;_=0;if(!(v&1)){_=0;i=Me(1)|0;v=_;_=0;if(!(v&1)?(_=0,Re(36,n|0,1,i|0,a|0),v=_,_=0,!(v&1)):0){_=0;Ae(6,n|0,824,96);_=0;e=0}else e=1;i=ze()|0;Oh(a);if(!e){v=i;$e(v|0)}}else i=ze()|0;je(n|0);v=i;$e(v|0)}s=f[t>>2]|0;if((s+-1|0)>>>0>65534){n=He(16)|0;_=0;Ae(5,o|0,48557,41);v=_;_=0;if(!(v&1)){_=0;i=Me(1)|0;v=_;_=0;if(!(v&1)?(_=0,Re(36,n|0,1,i|0,o|0),v=_,_=0,!(v&1)):0){_=0;Ae(6,n|0,824,96);_=0;e=0}else e=1;i=ze()|0;Oh(o);if(!e){v=i;$e(v|0)}}else i=ze()|0;je(n|0);v=i;$e(v|0)}a=f[t+4>>2]|0;if((a+-1|0)>>>0>65534){n=He(16)|0;_=0;Ae(5,h|0,48599,42);v=_;_=0;if(!(v&1)){_=0;i=Me(1)|0;v=_;_=0;if(!(v&1)?(_=0,Re(36,n|0,1,i|0,h|0),v=_,_=0,!(v&1)):0){_=0;Ae(6,n|0,824,96);_=0;e=0}else e=1;i=ze()|0;Oh(h);if(!e){v=i;$e(v|0)}}else i=ze()|0;je(n|0);v=i;$e(v|0)}n=f[t+8>>2]|0;if((n+-2|0)>>>0>14){n=He(16)|0;_=0;Ae(5,d|0,48642,46);v=_;_=0;if(!(v&1)){_=0;i=Me(1)|0;v=_;_=0;if(!(v&1)?(_=0,Re(36,n|0,1,i|0,d|0),v=_,_=0,!(v&1)):0){_=0;Ae(6,n|0,824,96);_=0;e=0}else e=1;i=ze()|0;Oh(d);if(!e){v=i;$e(v|0)}}else i=ze()|0;je(n|0);v=i;$e(v|0)}e=f[t+24>>2]|0;if(e>>>0>=3){n=He(16)|0;_=0;Ae(5,b|0,48689,65);v=_;_=0;if(!(v&1)){_=0;i=Me(1)|0;v=_;_=0;if(!(v&1)?(_=0,Re(36,n|0,1,i|0,b|0),v=_,_=0,!(v&1)):0){_=0;Ae(6,n|0,824,96);_=0;e=0}else e=1;i=ze()|0;Oh(b);if(!e){v=i;$e(v|0)}}else i=ze()|0;je(n|0);v=i;$e(v|0)}i=f[t+16>>2]|0;if((i+-1|0)>>>0>254){n=He(16)|0;_=0;Ae(5,k|0,48755,44);v=_;_=0;if(!(v&1)){_=0;i=Me(1)|0;v=_;_=0;if(!(v&1)?(_=0,Re(36,n|0,1,i|0,k|0),v=_,_=0,!(v&1)):0){_=0;Ae(6,n|0,824,96);_=0;e=0}else e=1;i=ze()|0;Oh(k);if(!e){v=i;$e(v|0)}}else i=ze()|0;je(n|0);v=i;$e(v|0)}if(!l?(k=re(a,s)|0,(re(re(k,(n|0)>8?2:1)|0,i)|0)>>>0>r>>>0):0){n=He(16)|0;_=0;Ae(5,w|0,48800,58);v=_;_=0;if(!(v&1)){_=0;i=Me(1)|0;v=_;_=0;if(!(v&1)?(_=0,Re(36,n|0,1,i|0,w|0),v=_,_=0,!(v&1)):0){_=0;Ae(6,n|0,824,96);_=0;e=0}else e=1;i=ze()|0;Oh(w);if(!e){v=i;$e(v|0)}}else i=ze()|0;je(n|0);v=i;$e(v|0)}switch(i|0){case 4:{if((e|0)!=2){c=u;return}n=He(16)|0;_=0;Ae(5,m|0,48859,73);v=_;_=0;if(!(v&1)){_=0;i=Me(1)|0;v=_;_=0;if(!(v&1)?(_=0,Re(36,n|0,1,i|0,m|0),v=_,_=0,!(v&1)):0){_=0;Ae(6,n|0,824,96);_=0;e=0}else e=1;i=ze()|0;Oh(m);if(!e){v=i;$e(v|0)}}else i=ze()|0;je(n|0);v=i;$e(v|0)}case 3:{c=u;return}default:{if(!e){c=u;return}n=He(16)|0;_=0;Ae(5,v|0,48933,73);m=_;_=0;if(!(m&1)){_=0;i=Me(1)|0;m=_;_=0;if(!(m&1)?(_=0,Re(36,n|0,1,i|0,v|0),m=_,_=0,!(m&1)):0){_=0;Ae(6,n|0,824,96);_=0;e=0}else e=1;i=ze()|0;Oh(v);if(!e){v=i;$e(v|0)}}else i=ze()|0;je(n|0);v=i;$e(v|0)}}}function Fi(e){e=e|0;Ze(e|0)|0;zp()}function Ui(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+128|0;s=d+116|0;l=d;_=0;f[s>>2]=f[i>>2];f[s+4>>2]=f[i+4>>2];f[s+8>>2]=f[i+8>>2];ce(59,l|0,s|0);a=_;_=0;if(!(a&1)){if(r){a=l+16|0;i=a+84|0;do{f[a>>2]=f[r>>2];a=a+4|0;r=r+4|0}while((a|0)<(i|0))}_=0;f[s>>2]=f[e>>2];f[s+4>>2]=f[e+4>>2];f[s+8>>2]=f[e+8>>2];ce(60,l|0,s|0);l=_;_=0;if(!(l&1)){if(n)t[n>>0]=0;h=0;c=d;return h|0}}e=ze(824,0)|0;l=P;l=(l|0)==(Ke(824)|0);e=Ze(e|0)|0;i=(n|0)==0;if(!l){if(!i)t[n>>0]=0;Qe();h=14;c=d;return h|0}a=e+12|0;do{if(!i){i=f[a>>2]|0;_=0;r=Me(1)|0;l=_;_=0;if(!(l&1))if((i|0)==(r|0)){Xy(n,lM[f[(f[e>>2]|0)+8>>2]&127](e)|0)|0;h=10;break}else{t[n>>0]=0;h=10;break}}else h=10}while(0);if((h|0)==10?(o=f[a>>2]|0,_=0,u=Me(1)|0,h=_,_=0,!(h&1)):0){h=(o|0)==(u|0)?f[e+8>>2]|0:13;Qe();c=d;return h|0}i=ze()|0;_=0;Se(3);d=_;_=0;if(d&1){d=ze(0)|0;Fi(d)}else $e(i|0);return 0}function ji(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0;u=c;c=c+128|0;a=u+116|0;n=u;_=0;f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];ce(59,n|0,a|0);a=_;_=0;if((!(a&1)?(_=0,ue(177,n|0),a=_,_=0,!(a&1)):0)?(_=0,ce(61,n|0,1),a=_,_=0,!(a&1)):0){e=n+16|0;n=i+84|0;do{f[i>>2]=f[e>>2];i=i+4|0;e=e+4|0}while((i|0)<(n|0));if(r)t[r>>0]=0;r=0;c=u;return r|0}a=ze(824,0)|0;i=P;i=(i|0)==(Ke(824)|0);a=Ze(a|0)|0;e=(r|0)==0;if(!i){if(!e)t[r>>0]=0;Qe();r=14;c=u;return r|0}i=a+12|0;do{if(!e){e=f[i>>2]|0;_=0;n=Me(1)|0;h=_;_=0;if(!(h&1))if((e|0)==(n|0)){Xy(r,lM[f[(f[a>>2]|0)+8>>2]&127](a)|0)|0;o=13;break}else{t[r>>0]=0;o=13;break}}else o=13}while(0);if((o|0)==13?(s=f[i>>2]|0,_=0,l=Me(1)|0,h=_,_=0,!(h&1)):0){h=(s|0)==(l|0)?f[a+8>>2]|0:13;Qe();c=u;return h|0}e=ze()|0;_=0;Se(3);h=_;_=0;if(h&1){h=ze(0)|0;Fi(h)}else $e(e|0);return 0}function Hi(e,i,r,t,n,a,s){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0;d=c;c=c+48|0;o=d+36|0;l=d+24|0;u=d+12|0;h=d;if(!((e|0)!=0&(r|0)!=0&(t|0)!=0&(a|0)!=0)){n=1;c=d;return n|0}f[u>>2]=0;f[u+4>>2]=e;f[u+8>>2]=i;f[h>>2]=0;f[h+4>>2]=t;f[h+8>>2]=n;f[l>>2]=f[u>>2];f[l+4>>2]=f[u+4>>2];f[l+8>>2]=f[u+8>>2];f[o>>2]=f[h>>2];f[o+4>>2]=f[h+4>>2];f[o+8>>2]=f[h+8>>2];n=Di(l,r,o,a,s)|0;c=d;return n|0}function zi(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0;n=c;c=c+32|0;a=n+12|0;s=n;l=s;f[l>>2]=0;f[l+4>>2]=0;f[s+4>>2]=e;f[s+8>>2]=i;f[a>>2]=f[s>>2];f[a+4>>2]=f[s+4>>2];f[a+8>>2]=f[s+8>>2];r=ji(a,r,t)|0;c=n;return r|0}function Yi(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+48|0;l=s+36|0;o=s+24|0;h=s+12|0;u=s;f[h>>2]=0;f[h+4>>2]=e;f[h+8>>2]=i;f[u>>2]=0;f[u+4>>2]=r;f[u+8>>2]=t;f[o>>2]=f[h>>2];f[o+4>>2]=f[h+4>>2];f[o+8>>2]=f[h+8>>2];f[l>>2]=f[u>>2];f[l+4>>2]=f[u+4>>2];f[l+8>>2]=f[u+8>>2];t=Ui(o,l,n,a)|0;c=s;return t|0}function qi(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0;u=e+4|0;r=f[e>>2]|0;n=((f[u>>2]|0)-r>>2)+1|0;if(n>>>0>1073741823){Pp(e);r=f[e>>2]|0}c=e+8|0;t=(f[c>>2]|0)-r|0;if(t>>2>>>0<536870911){t=t>>1;t=t>>>0<n>>>0?n:t;r=(f[u>>2]|0)-r>>2;if(!t){a=0;s=0}else l=6}else{t=1073741823;r=(f[u>>2]|0)-r>>2;l=6}if((l|0)==6){a=t;s=Bp(t<<2)|0}n=s+(r<<2)|0;t=n;o=s+(a<<2)|0;l=f[i>>2]|0;f[i>>2]=0;f[n>>2]=l;l=s+(r+1<<2)|0;s=f[e>>2]|0;r=f[u>>2]|0;if((r|0)==(s|0)){n=e;a=u}else{do{r=r+-4|0;i=f[r>>2]|0;f[r>>2]=0;f[n+-4>>2]=i;n=t+-4|0;t=n}while((r|0)!=(s|0));r=t;n=e;a=u;t=r;s=f[e>>2]|0;r=f[u>>2]|0}f[n>>2]=t;f[a>>2]=l;f[c>>2]=o;n=s;if((r|0)!=(n|0))do{r=r+-4|0;t=f[r>>2]|0;f[r>>2]=0;if(t)fM[f[(f[t>>2]|0)+4>>2]&255](t)}while((r|0)!=(n|0));if(!s)return;Ip(s);return}function Xi(){if(t[8]|0)return 35648;if(!(De(8)|0))return 35648;di(72,35648,w|0)|0;qe(8);return 35648}function Vi(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+32|0;u=d;op(u,(1<<i)+-1|0,0);s=f[u>>2]|0;h=s+1|0;r=h<<1;f[e>>2]=0;l=e+4|0;f[l>>2]=0;f[e+8>>2]=0;e:do{if(h){if(!((s|0)<-1?(_=0,ue(178,e|0),o=_,_=0,o&1):0))n=4;if((n|0)==4?(_=0,a=de(67,r|0)|0,o=_,_=0,!(o&1)):0){f[l>>2]=a;f[e>>2]=a;f[e+8>>2]=a+r;i=a;while(1){t[i>>0]=0;i=(f[l>>2]|0)+1|0;f[l>>2]=i;r=r+-1|0;if(!r)break e}}r=ze()|0;i=f[e>>2]|0;if(!i)$e(r|0);if((f[l>>2]|0)!=(i|0))f[l>>2]=i;Ip(i);$e(r|0)}}while(0);i=~s;if((s|0)<(i|0)){c=d;return}l=u+12|0;o=u+8|0;s=u+4|0;a=i;do{i=f[l>>2]|0;if((a|0)>(0-i|0)){r=f[o>>2]|0;if((a|0)>(0-r|0)){n=f[s>>2]|0;if((a|0)>(0-n|0))if((a|0)>=0)if((a|0)>0)if((n|0)<=(a|0))if((r|0)>(a|0))i=2;else i=(i|0)>(a|0)?3:4;else i=1;else i=0;else i=-1;else i=-2}else i=-3}else i=-4;t[(f[e>>2]|0)+(a+h)>>0]=i;a=a+1|0}while((a|0)<(h|0));c=d;return}function Gi(e,i,r){e=e|0;i=i|0;r=r|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0;k=f[r+16>>2]|0;switch(k|0){case 64:case 0:{_=0;e=pe(34,e|0,i|0)|0;i=_;_=0;if(i&1)w=16;else a=e;break}default:{s=(1<<f[i+8>>2])+-1|0;b=f[i+20>>2]|0;d=b<<1;d=((d+s|0)/(d|1|0)|0)+1|0;e=0;while(1)if((1<<e|0)<(d|0))e=e+1|0;else break;a=0;while(1)if((1<<a|0)<(s|0))a=a+1|0;else{o=a;break}s=f[r>>2]|0;_=0;a=de(67,4624)|0;h=_;_=0;if(h&1)w=16;else{l=((o|0)<8?8:o)+o<<1;u=a+4|0;c=i;h=u+84|0;do{f[u>>2]=f[c>>2];u=u+4|0;c=c+4|0}while((u|0)<(h|0));u=a+88|0;h=u+40|0;do{f[u>>2]=0;u=u+4|0}while((u|0)<(h|0));f[a>>2]=35660;f[a+128>>2]=s;f[a+132>>2]=d;f[a+136>>2]=b;f[a+140>>2]=e;f[a+144>>2]=o;f[a+148>>2]=l;f[a+152>>2]=k;e=a+156|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+172>>2]=f[i>>2];f[a+176>>2]=0;f[a+180>>2]=0;f[a+184>>2]=0;e=a+4568|0;s=a+188|0;do{f[s>>2]=0;f[s+4>>2]=0;n[s+8>>1]=0;n[s+10>>1]=1;s=s+12|0}while((s|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=a+4580|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=a+4592|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[a+28>>2]|0))f[a+20>>2]=1}}}if((w|0)==16){w=ze()|0;$e(w|0)}if(!a)return a|0;_=0;ce(f[(f[a>>2]|0)+12>>2]|0,a|0,r|0);w=_;_=0;if(!(w&1))return a|0;e=ze()|0;if(!a){w=e;$e(w|0)}fM[f[(f[a>>2]|0)+4>>2]&255](a);w=e;$e(w|0);return 0}function Ki(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;r=(f[i+24>>2]|0)==2;if(r?(f[i+16>>2]|0)!=3:0){i=0;return i|0}d=f[i+20>>2]|0;e=f[i+8>>2]|0;e:do{if(!d){if(r){if((e|0)!=8)break;a=Bp(4600)|0;o=a+4|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=a+88|0;c=o+40|0;do{f[o>>2]=0;o=o+4|0}while((o|0)<(c|0));f[a>>2]=35688;e=a+132|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+148>>2]=f[i>>2];f[a+152>>2]=0;f[a+156>>2]=0;f[a+160>>2]=0;e=a+4544|0;r=a+164|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=a+4556|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=a+4568|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[a+28>>2]|0))f[a+20>>2]=1;i=a;return i|0}switch(e|0){case 8:{a=Bp(4600)|0;o=a+4|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=a+88|0;c=o+40|0;do{f[o>>2]=0;o=o+4|0}while((o|0)<(c|0));f[a>>2]=35716;e=a+132|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+148>>2]=f[i>>2];f[a+152>>2]=0;f[a+156>>2]=0;f[a+160>>2]=0;e=a+4544|0;r=a+164|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=a+4556|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=a+4568|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[a+28>>2]|0))f[a+20>>2]=1;i=a;return i|0}case 12:{a=Bp(4600)|0;o=a+4|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=a+88|0;c=o+40|0;do{f[o>>2]=0;o=o+4|0}while((o|0)<(c|0));f[a>>2]=35744;e=a+132|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+148>>2]=f[i>>2];f[a+152>>2]=0;f[a+156>>2]=0;f[a+160>>2]=0;e=a+4544|0;r=a+164|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=a+4556|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=a+4568|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[a+28>>2]|0))f[a+20>>2]=1;i=a;return i|0}case 16:{a=Bp(4600)|0;o=a+4|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=a+88|0;c=o+40|0;do{f[o>>2]=0;o=o+4|0}while((o|0)<(c|0));f[a>>2]=35772;e=a+132|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+148>>2]=f[i>>2];f[a+152>>2]=0;f[a+156>>2]=0;f[a+160>>2]=0;e=a+4544|0;r=a+164|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=a+4556|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=a+4568|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[a+28>>2]|0))f[a+20>>2]=1;i=a;return i|0}default:break e}}}while(0);h=(1<<e)+-1|0;if((e|0)<9){l=d<<1;l=((l+h|0)/(l|1|0)|0)+1|0;if(r){e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Bp(4624)|0;o=s+4|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=s+88|0;c=o+40|0;do{f[o>>2]=0;o=o+4|0}while((o|0)<(c|0));f[s>>2]=35800;f[s+128>>2]=h;f[s+132>>2]=l;f[s+136>>2]=d;f[s+140>>2]=e;f[s+144>>2]=r;f[s+148>>2]=a;f[s+152>>2]=64;e=s+156|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[s+172>>2]=f[i>>2];f[s+176>>2]=0;f[s+180>>2]=0;f[s+184>>2]=0;e=s+4568|0;r=s+188|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=s+4580|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=s+4592|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[s+28>>2]|0))f[s+20>>2]=1;i=s;return i|0}else{e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Bp(4624)|0;o=s+4|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=s+88|0;c=o+40|0;do{f[o>>2]=0;o=o+4|0}while((o|0)<(c|0));f[s>>2]=35660;f[s+128>>2]=h;f[s+132>>2]=l;f[s+136>>2]=d;f[s+140>>2]=e;f[s+144>>2]=r;f[s+148>>2]=a;f[s+152>>2]=64;e=s+156|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[s+172>>2]=f[i>>2];f[s+176>>2]=0;f[s+180>>2]=0;f[s+184>>2]=0;e=s+4568|0;r=s+188|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=s+4580|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=s+4592|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[s+28>>2]|0))f[s+20>>2]=1;i=s;return i|0}}if((e|0)>=17){i=0;return i|0}l=d<<1;l=((l+h|0)/(l|1|0)|0)+1|0;if(r){e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Bp(4624)|0;o=s+4|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=s+88|0;c=o+40|0;do{f[o>>2]=0;o=o+4|0}while((o|0)<(c|0));f[s>>2]=35828;f[s+128>>2]=h;f[s+132>>2]=l;f[s+136>>2]=d;f[s+140>>2]=e;f[s+144>>2]=r;f[s+148>>2]=a;f[s+152>>2]=64;e=s+156|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[s+172>>2]=f[i>>2];f[s+176>>2]=0;f[s+180>>2]=0;f[s+184>>2]=0;e=s+4568|0;r=s+188|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=s+4580|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=s+4592|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[s+28>>2]|0))f[s+20>>2]=1;i=s;return i|0}else{e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Bp(4624)|0;o=s+4|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=s+88|0;c=o+40|0;do{f[o>>2]=0;o=o+4|0}while((o|0)<(c|0));f[s>>2]=35856;f[s+128>>2]=h;f[s+132>>2]=l;f[s+136>>2]=d;f[s+140>>2]=e;f[s+144>>2]=r;f[s+148>>2]=a;f[s+152>>2]=64;e=s+156|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[s+172>>2]=f[i>>2];f[s+176>>2]=0;f[s+180>>2]=0;f[s+184>>2]=0;e=s+4568|0;r=s+188|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=s+4580|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=s+4592|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[s+28>>2]|0))f[s+20>>2]=1;i=s;return i|0}return 0}function Wi(e,i,r){e=e|0;i=i|0;r=r|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0;k=f[r+16>>2]|0;switch(k|0){case 64:case 0:{_=0;e=pe(35,e|0,i|0)|0;i=_;_=0;if(i&1)w=16;else a=e;break}default:{s=(1<<f[i+8>>2])+-1|0;b=f[i+20>>2]|0;d=b<<1;d=((d+s|0)/(d|1|0)|0)+1|0;e=0;while(1)if((1<<e|0)<(d|0))e=e+1|0;else break;a=0;while(1)if((1<<a|0)<(s|0))a=a+1|0;else{o=a;break}s=f[r>>2]|0;_=0;a=de(67,4632)|0;h=_;_=0;if(h&1)w=16;else{l=((o|0)<8?8:o)+o<<1;f[a+4>>2]=0;u=a+8|0;c=i;h=u+84|0;do{f[u>>2]=f[c>>2];u=u+4|0;c=c+4|0}while((u|0)<(h|0));f[a+92>>2]=0;f[a+96>>2]=0;f[a+100>>2]=32;f[a+104>>2]=0;f[a+108>>2]=0;t[a+112>>0]=0;h=a+116|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[h+16>>2]=0;f[a>>2]=35884;f[a+136>>2]=s;f[a+140>>2]=d;f[a+144>>2]=b;f[a+148>>2]=e;f[a+152>>2]=o;f[a+156>>2]=l;f[a+160>>2]=k;e=a+164|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+180>>2]=f[i>>2];f[a+184>>2]=0;f[a+188>>2]=0;f[a+192>>2]=0;e=a+4576|0;s=a+196|0;do{f[s>>2]=0;f[s+4>>2]=0;n[s+8>>1]=0;n[s+10>>1]=1;s=s+12|0}while((s|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=a+4588|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=a+4600|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[a+32>>2]|0))f[a+24>>2]=1}}}if((w|0)==16){w=ze()|0;$e(w|0)}if(!a)return a|0;_=0;ce(f[(f[a>>2]|0)+8>>2]|0,a|0,r|0);w=_;_=0;if(!(w&1))return a|0;e=ze()|0;if(!a){w=e;$e(w|0)}fM[f[(f[a>>2]|0)+4>>2]&255](a);w=e;$e(w|0);return 0}function Zi(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;r=(f[i+24>>2]|0)==2;if(r?(f[i+16>>2]|0)!=3:0){i=0;return i|0}d=f[i+20>>2]|0;e=f[i+8>>2]|0;e:do{if(!d){if(r){if((e|0)!=8)break;a=Bp(4608)|0;f[a+4>>2]=0;o=a+8|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));f[a+92>>2]=0;f[a+96>>2]=0;f[a+100>>2]=32;f[a+104>>2]=0;f[a+108>>2]=0;t[a+112>>0]=0;e=a+116|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[a>>2]=35912;e=a+140|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+156>>2]=f[i>>2];f[a+160>>2]=0;f[a+164>>2]=0;f[a+168>>2]=0;e=a+4552|0;r=a+172|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=a+4564|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=a+4576|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[a+32>>2]|0))f[a+24>>2]=1;i=a;return i|0}switch(e|0){case 8:{a=Bp(4608)|0;f[a+4>>2]=0;o=a+8|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));f[a+92>>2]=0;f[a+96>>2]=0;f[a+100>>2]=32;f[a+104>>2]=0;f[a+108>>2]=0;t[a+112>>0]=0;e=a+116|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[a>>2]=35940;e=a+140|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+156>>2]=f[i>>2];f[a+160>>2]=0;f[a+164>>2]=0;f[a+168>>2]=0;e=a+4552|0;r=a+172|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=a+4564|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=a+4576|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[a+32>>2]|0))f[a+24>>2]=1;i=a;return i|0}case 12:{a=Bp(4608)|0;f[a+4>>2]=0;o=a+8|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));f[a+92>>2]=0;f[a+96>>2]=0;f[a+100>>2]=32;f[a+104>>2]=0;f[a+108>>2]=0;t[a+112>>0]=0;e=a+116|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[a>>2]=35968;e=a+140|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+156>>2]=f[i>>2];f[a+160>>2]=0;f[a+164>>2]=0;f[a+168>>2]=0;e=a+4552|0;r=a+172|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=a+4564|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=a+4576|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[a+32>>2]|0))f[a+24>>2]=1;i=a;return i|0}case 16:{a=Bp(4608)|0;f[a+4>>2]=0;o=a+8|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));f[a+92>>2]=0;f[a+96>>2]=0;f[a+100>>2]=32;f[a+104>>2]=0;f[a+108>>2]=0;t[a+112>>0]=0;e=a+116|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[a>>2]=35996;e=a+140|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+156>>2]=f[i>>2];f[a+160>>2]=0;f[a+164>>2]=0;f[a+168>>2]=0;e=a+4552|0;r=a+172|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=a+4564|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=a+4576|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[a+32>>2]|0))f[a+24>>2]=1;i=a;return i|0}default:break e}}}while(0);h=(1<<e)+-1|0;if((e|0)<9){l=d<<1;l=((l+h|0)/(l|1|0)|0)+1|0;if(r){e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Bp(4632)|0;f[s+4>>2]=0;o=s+8|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));f[s+92>>2]=0;f[s+96>>2]=0;f[s+100>>2]=32;f[s+104>>2]=0;f[s+108>>2]=0;t[s+112>>0]=0;c=s+116|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[s>>2]=36024;f[s+136>>2]=h;f[s+140>>2]=l;f[s+144>>2]=d;f[s+148>>2]=e;f[s+152>>2]=r;f[s+156>>2]=a;f[s+160>>2]=64;e=s+164|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[s+180>>2]=f[i>>2];f[s+184>>2]=0;f[s+188>>2]=0;f[s+192>>2]=0;e=s+4576|0;r=s+196|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=s+4588|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=s+4600|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[s+32>>2]|0))f[s+24>>2]=1;i=s;return i|0}else{e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Bp(4632)|0;f[s+4>>2]=0;o=s+8|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));f[s+92>>2]=0;f[s+96>>2]=0;f[s+100>>2]=32;f[s+104>>2]=0;f[s+108>>2]=0;t[s+112>>0]=0;c=s+116|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[s>>2]=35884;f[s+136>>2]=h;f[s+140>>2]=l;f[s+144>>2]=d;f[s+148>>2]=e;f[s+152>>2]=r;f[s+156>>2]=a;f[s+160>>2]=64;e=s+164|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[s+180>>2]=f[i>>2];f[s+184>>2]=0;f[s+188>>2]=0;f[s+192>>2]=0;e=s+4576|0;r=s+196|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=s+4588|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=s+4600|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[s+32>>2]|0))f[s+24>>2]=1;i=s;return i|0}}if((e|0)>=17){i=0;return i|0}l=d<<1;l=((l+h|0)/(l|1|0)|0)+1|0;if(r){e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Bp(4632)|0;f[s+4>>2]=0;o=s+8|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));f[s+92>>2]=0;f[s+96>>2]=0;f[s+100>>2]=32;f[s+104>>2]=0;f[s+108>>2]=0;t[s+112>>0]=0;c=s+116|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[s>>2]=36052;f[s+136>>2]=h;f[s+140>>2]=l;f[s+144>>2]=d;f[s+148>>2]=e;f[s+152>>2]=r;f[s+156>>2]=a;f[s+160>>2]=64;e=s+164|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[s+180>>2]=f[i>>2];f[s+184>>2]=0;f[s+188>>2]=0;f[s+192>>2]=0;e=s+4576|0;r=s+196|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=s+4588|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=s+4600|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[s+32>>2]|0))f[s+24>>2]=1;i=s;return i|0}else{e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Bp(4632)|0;f[s+4>>2]=0;o=s+8|0;u=i;c=o+84|0;do{f[o>>2]=f[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));f[s+92>>2]=0;f[s+96>>2]=0;f[s+100>>2]=32;f[s+104>>2]=0;f[s+108>>2]=0;t[s+112>>0]=0;c=s+116|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[s>>2]=36080;f[s+136>>2]=h;f[s+140>>2]=l;f[s+144>>2]=d;f[s+148>>2]=e;f[s+152>>2]=r;f[s+156>>2]=a;f[s+160>>2]=64;e=s+164|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[s+180>>2]=f[i>>2];f[s+184>>2]=0;f[s+188>>2]=0;f[s+192>>2]=0;e=s+4576|0;r=s+196|0;do{f[r>>2]=0;f[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));f[e>>2]=0;f[e+4>>2]=0;n[e+8>>1]=0;t[e+10>>0]=0;i=s+4588|0;f[i>>2]=0;f[i+4>>2]=0;n[i+8>>1]=0;t[i+10>>0]=0;i=s+4600|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;t[i+28>>0]=0;if(!(f[s+32>>2]|0))f[s+24>>2]=1;i=s;return i|0}return 0}function Ji(){var e=0,i=0,r=0,t=0,n=0,a=0,s=0;e=2832;do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=4880);ym(2832,0,2048)|0;e=0;do{s=2832+(e+128<<3)|0;f[s>>2]=0;f[s+4>>2]=1;e=e+1|0}while((e|0)!=128);e=3088;f[e>>2]=1;f[e+4>>2]=3;e=3096;f[e>>2]=1;f[e+4>>2]=3;e=3104;f[e>>2]=1;f[e+4>>2]=3;e=3112;f[e>>2]=1;f[e+4>>2]=3;e=3120;f[e>>2]=1;f[e+4>>2]=3;e=3128;f[e>>2]=1;f[e+4>>2]=3;e=3136;f[e>>2]=1;f[e+4>>2]=3;e=3144;f[e>>2]=1;f[e+4>>2]=3;e=3152;f[e>>2]=1;f[e+4>>2]=3;e=3160;f[e>>2]=1;f[e+4>>2]=3;e=3168;f[e>>2]=1;f[e+4>>2]=3;e=3176;f[e>>2]=1;f[e+4>>2]=3;e=3184;f[e>>2]=1;f[e+4>>2]=3;e=3192;f[e>>2]=1;f[e+4>>2]=3;e=3200;f[e>>2]=1;f[e+4>>2]=3;e=3208;f[e>>2]=1;f[e+4>>2]=3;e=3216;f[e>>2]=1;f[e+4>>2]=3;e=3224;f[e>>2]=1;f[e+4>>2]=3;e=3232;f[e>>2]=1;f[e+4>>2]=3;e=3240;f[e>>2]=1;f[e+4>>2]=3;e=3248;f[e>>2]=1;f[e+4>>2]=3;e=3256;f[e>>2]=1;f[e+4>>2]=3;e=3264;f[e>>2]=1;f[e+4>>2]=3;e=3272;f[e>>2]=1;f[e+4>>2]=3;e=3280;f[e>>2]=1;f[e+4>>2]=3;e=3288;f[e>>2]=1;f[e+4>>2]=3;e=3296;f[e>>2]=1;f[e+4>>2]=3;e=3304;f[e>>2]=1;f[e+4>>2]=3;e=3312;f[e>>2]=1;f[e+4>>2]=3;e=3320;f[e>>2]=1;f[e+4>>2]=3;e=3328;f[e>>2]=1;f[e+4>>2]=3;e=3336;f[e>>2]=1;f[e+4>>2]=3;e=2896;f[e>>2]=2;f[e+4>>2]=5;e=2904;f[e>>2]=2;f[e+4>>2]=5;e=2912;f[e>>2]=2;f[e+4>>2]=5;e=2920;f[e>>2]=2;f[e+4>>2]=5;e=2928;f[e>>2]=2;f[e+4>>2]=5;e=2936;f[e>>2]=2;f[e+4>>2]=5;e=2944;f[e>>2]=2;f[e+4>>2]=5;e=2952;f[e>>2]=2;f[e+4>>2]=5;e=2848;f[e>>2]=3;f[e+4>>2]=7;e=2856;f[e>>2]=3;f[e+4>>2]=7;e=0;do{s=2832+(e+64<<3)|0;f[s>>2]=-1;f[s+4>>2]=2;e=e+1|0}while((e|0)!=64);e=2960;f[e>>2]=-2;f[e+4>>2]=4;e=2968;f[e>>2]=-2;f[e+4>>2]=4;e=2976;f[e>>2]=-2;f[e+4>>2]=4;e=2984;f[e>>2]=-2;f[e+4>>2]=4;e=2992;f[e>>2]=-2;f[e+4>>2]=4;e=3e3;f[e>>2]=-2;f[e+4>>2]=4;e=3008;f[e>>2]=-2;f[e+4>>2]=4;e=3016;f[e>>2]=-2;f[e+4>>2]=4;e=3024;f[e>>2]=-2;f[e+4>>2]=4;e=3032;f[e>>2]=-2;f[e+4>>2]=4;e=3040;f[e>>2]=-2;f[e+4>>2]=4;e=3048;f[e>>2]=-2;f[e+4>>2]=4;e=3056;f[e>>2]=-2;f[e+4>>2]=4;e=3064;f[e>>2]=-2;f[e+4>>2]=4;e=3072;f[e>>2]=-2;f[e+4>>2]=4;e=3080;f[e>>2]=-2;f[e+4>>2]=4;e=2864;f[e>>2]=-3;f[e+4>>2]=6;e=2872;f[e>>2]=-3;f[e+4>>2]=6;e=2880;f[e>>2]=-3;f[e+4>>2]=6;e=2888;f[e>>2]=-3;f[e+4>>2]=6;e=2840;f[e>>2]=-4;f[e+4>>2]=8;e=4880;do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=6928);ym(4880,0,2048)|0;r=2;e=0;n=0;a=0;while(1){r=r<<16>>16;i=8-r|0;t=1<<i;if((i|0)!=31){e=(e&1|2)<<i;i=0;do{s=4880+(i+e<<3)|0;f[s>>2]=n;f[s+4>>2]=r;i=i+1|0}while((i|0)<(t|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==7){i=2;n=1;a=-1;s=-1;break}else{r=(e>>1)+2|0;n=i>>16}}while(1){r=i<<16>>16;e=8-r|0;t=1<<e;if((e|0)!=31){e=(n&1|2)<<e;i=0;do{n=4880+(i+e<<3)|0;f[n>>2]=a;f[n+4>>2]=r;i=i+1|0}while((i|0)<(t|0))}e=(s<<16)+-65536|0;n=e>>31^e>>15;i=(n>>1)+2|0;if((i|0)>8){e=6928;break}else{a=e>>16;s=s+-1|0}}do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=8976);ym(6928,0,2048)|0;n=3;e=0;t=0;a=0;while(1){i=8-n|0;r=1<<i;if((i|0)!=31){e=(e&3|4)<<i;i=0;do{s=6928+(i+e<<3)|0;f[s>>2]=t;f[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==12){n=3;i=1;t=-1;a=-1;break}else{n=(e>>2)+3|0;t=i>>16}}while(1){e=8-n|0;r=1<<e;if((e|0)!=31){e=(i&3|4)<<e;i=0;do{s=6928+(i+e<<3)|0;f[s>>2]=t;f[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>2)+3|0;if((n|0)>8){e=8976;break}else{t=e>>16;a=a+-1|0}}do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=11024);ym(8976,0,2048)|0;n=4;e=0;t=0;a=0;while(1){i=8-n|0;r=1<<i;if((i|0)!=31){e=(e&7|8)<<i;i=0;do{s=8976+(i+e<<3)|0;f[s>>2]=t;f[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==20){n=4;i=1;t=-1;a=-1;break}else{n=(e>>3)+4|0;t=i>>16}}while(1){e=8-n|0;r=1<<e;if((e|0)!=31){e=(i&7|8)<<e;i=0;do{s=8976+(i+e<<3)|0;f[s>>2]=t;f[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>3)+4|0;if((n|0)>8){e=11024;break}else{t=e>>16;a=a+-1|0}}do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=13072);ym(11024,0,2048)|0;n=5;e=0;t=0;a=0;while(1){i=8-n|0;r=1<<i;if((i|0)!=31){e=(e&15|16)<<i;i=0;do{s=11024+(i+e<<3)|0;f[s>>2]=t;f[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==32){n=5;i=1;t=-1;a=-1;break}else{n=(e>>4)+5|0;t=i>>16}}while(1){e=8-n|0;r=1<<e;if((e|0)!=31){e=(i&15|16)<<e;i=0;do{s=11024+(i+e<<3)|0;f[s>>2]=t;f[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>4)+5|0;if((n|0)>8){e=13072;break}else{t=e>>16;a=a+-1|0}}do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=15120);ym(13072,0,2048)|0;n=6;e=0;t=0;a=0;while(1){i=8-n|0;r=1<<i;if((i|0)!=31){e=(e&31|32)<<i;i=0;do{s=13072+(i+e<<3)|0;f[s>>2]=t;f[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==48){n=6;i=1;t=-1;a=-1;break}else{n=(e>>5)+6|0;t=i>>16}}while(1){e=8-n|0;r=1<<e;if((e|0)!=31){e=(i&31|32)<<e;i=0;do{s=13072+(i+e<<3)|0;f[s>>2]=t;f[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>5)+6|0;if((n|0)>8){e=15120;break}else{t=e>>16;a=a+-1|0}}do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=17168);ym(15120,0,2048)|0;n=7;e=0;t=0;a=0;while(1){i=8-n|0;r=1<<i;if((i|0)!=31){e=(e&63|64)<<i;i=0;do{s=15120+(i+e<<3)|0;f[s>>2]=t;f[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==64){n=7;i=1;t=-1;a=-1;break}else{n=(e>>6)+7|0;t=i>>16}}while(1){e=8-n|0;r=1<<e;if((e|0)!=31){e=(i&63|64)<<e;i=0;do{s=15120+(i+e<<3)|0;f[s>>2]=t;f[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>6)+7|0;if((n|0)>8){e=17168;break}else{t=e>>16;a=a+-1|0}}do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=19216);ym(17168,0,2048)|0;n=8;e=0;t=0;a=0;while(1){i=8-n|0;r=1<<i;if((i|0)!=31){e=(e&127|128)<<i;i=0;do{s=17168+(i+e<<3)|0;f[s>>2]=t;f[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==64){a=8;t=1;n=-1;s=-1;break}else{n=(e>>7)+8|0;t=i>>16}}while(1){e=8-a|0;r=1<<e;if((e|0)!=31){e=(t&127|128)<<e;i=0;do{t=17168+(i+e<<3)|0;f[t>>2]=n;f[t+4>>2]=a;i=i+1|0}while((i|0)<(r|0))}i=(s<<16)+-65536|0;t=i>>31^i>>15;e=t>>7;if((e|0)>0){e=19216;break}else{a=e+8|0;n=i>>16;s=s+-1|0}}do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=21264);ym(19216,0,2048)|0;e=21264;do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=23312);ym(21264,0,2048)|0;e=23312;do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=25360);ym(23312,0,2048)|0;e=25360;do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=27408);ym(25360,0,2048)|0;e=27408;do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=29456);ym(27408,0,2048)|0;e=29456;do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=31504);ym(29456,0,2048)|0;e=31504;do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=33552);ym(31504,0,2048)|0;e=33552;do{f[e>>2]=0;f[e+4>>2]=0;e=e+8|0}while((e|0)!=35600);ym(33552,0,2048)|0;Vi(35600,8);di(179,35600,w|0)|0;Vi(35612,10);di(179,35612,w|0)|0;Vi(35624,12);di(179,35624,w|0)|0;Vi(35636,16);di(179,35636,w|0)|0;return}function Qi(e){e=e|0;var i=0;i=f[e>>2]|0;if(!i)return;e=e+4|0;if((f[e>>2]|0)!=(i|0))f[e>>2]=i;Ip(i);return}function $i(e){e=e|0;var i=0,r=0;f[e>>2]=36080;i=f[e+4616>>2]|0;if(i){r=e+4620|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function er(e){e=e|0;var i=0,r=0;f[e>>2]=36080;i=f[e+4616>>2]|0;if(i){r=e+4620|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function ir(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,f[e+136>>2]|0,f[e+144>>2]|0);u=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[h+8>>2]|0:l;s=f[i+12>>2]|0;s=(s|0)==0?f[h+12>>2]|0:s;r=f[i+16>>2]|0;a=f[h+16>>2]|0;f[e+184>>2]=(u|0)==0?f[h+4>>2]|0:u;f[e+188>>2]=l;f[e+192>>2]=s;Ht(e);s=e+140|0;i=(f[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{f[e+196+(l*12|0)>>2]=i;f[e+196+(l*12|0)+4>>2]=0;n[e+196+(l*12|0)+8>>1]=0;n[e+196+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(f[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;f[e+4576>>2]=u;f[e+4580>>2]=0;t[e+4584>>0]=h;t[e+4585>>0]=1;t[e+4586>>0]=0;f[e+4588>>2]=u;f[e+4592>>2]=1;t[e+4596>>0]=h;t[e+4597>>0]=1;t[e+4598>>0]=0;f[e+4600>>2]=0;c=o;return}function rr(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=f[i>>2]|0;f[i>>2]=0;i=f[u>>2]|0;f[u>>2]=o;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);f[h>>2]=0;f[h+4>>2]=a;u=r+8|0;f[h+8>>2]=f[u>>2];if(a){i=Bp(4624)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{f[s>>2]=f[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{f[s>>2]=0;s=s+4|0}while((s|0)<(o|0));f[i>>2]=35856;f[i+128>>2]=f[e+136>>2];f[i+132>>2]=f[e+140>>2];f[i+136>>2]=f[e+144>>2];f[i+140>>2]=f[e+148>>2];f[i+144>>2]=f[e+152>>2];f[i+148>>2]=f[e+156>>2];f[i+152>>2]=f[e+160>>2];s=i+156|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[i+172>>2]=f[a>>2];f[i+176>>2]=0;f[i+180>>2]=0;f[i+184>>2]=0;s=i+4568|0;a=i+188|0;do{f[a>>2]=0;f[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;f[s>>2]=0;f[s+4>>2]=0;n[s+8>>1]=0;t[s+10>>0]=0;o=i+4580|0;f[o>>2]=0;f[o+4>>2]=0;n[o+8>>1]=0;t[o+10>>0]=0;o=i+4592|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;f[o+16>>2]=0;f[o+20>>2]=0;f[o+24>>2]=0;t[o+28>>0]=0;if(!(f[i+28>>2]|0))f[i+20>>2]=1;a=f[l>>2]|0;f[l>>2]=i;if(a){fM[f[(f[a>>2]|0)+4>>2]&255](a);i=f[l>>2]|0}Ct(i,h)}h=e+100|0;f[h>>2]=32;f[e+96>>2]=0;i=f[r>>2]|0;if(!i){f[e+108>>2]=f[r+4>>2];f[e+104>>2]=f[u>>2];Lt(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}f[e+132>>2]=i;s=e+120|0;u=e+124|0;a=f[u>>2]|0;i=f[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){f[u>>2]=d;a=d}}else{Rt(s,4e3-o|0);i=f[s>>2]|0;l=i;a=f[u>>2]|0}f[e+108>>2]=l;f[e+104>>2]=a-i;Lt(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function tr(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+32>>2]|0)!=0?(f[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(37,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+16>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(38,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(39,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(40,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+20>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=2;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=2;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function nr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;f[e>>2]=36460;f[e+4>>2]=r;d=e+8|0;s=f[r>>2]|0;c=r+16|0;n=f[c>>2]|0;l=re(n,s)|0;f[d>>2]=0;b=e+12|0;f[b>>2]=0;f[e+16>>2]=0;do{if(l){if(!((l|0)<0?(_=0,ue(178,d|0),s=_,_=0,s&1):0))h=4;if((h|0)==4?(o=l<<1,_=0,u=de(67,o|0)|0,s=_,_=0,!(s&1)):0){f[d>>2]=u;s=u+(l<<1)|0;f[e+16>>2]=s;ym(u|0,0,o|0)|0;f[b>>2]=s;s=f[r>>2]|0;n=f[c>>2]|0;break}l=ze()|0;a=f[d>>2]|0;n=a;if(a){s=f[b>>2]|0;if((s|0)!=(a|0))f[b>>2]=s+(~((s+-2-n|0)>>>1)<<1);Ip(a)}b=l;$e(b|0)}}while(0);l=e+20|0;n=re(s<<1,n)|0;f[l>>2]=0;o=e+24|0;f[o>>2]=0;f[e+28>>2]=0;if(!n){b=e+36|0;f[b>>2]=f[i>>2];f[b+4>>2]=f[i+4>>2];f[b+8>>2]=f[i+8>>2];return}if(!((n|0)<0?(_=0,ue(178,l|0),r=_,_=0,r&1):0))h=13;if((h|0)==13?(_=0,a=de(67,n|0)|0,h=_,_=0,!(h&1)):0){f[o>>2]=a;f[l>>2]=a;f[e+28>>2]=a+n;do{t[a>>0]=0;a=(f[o>>2]|0)+1|0;f[o>>2]=a;n=n+-1|0}while((n|0)!=0);b=e+36|0;f[b>>2]=f[i>>2];f[b+4>>2]=f[i+4>>2];f[b+8>>2]=f[i+8>>2];return}s=ze()|0;a=f[l>>2]|0;if(a){if((f[o>>2]|0)!=(a|0))f[o>>2]=a;Ip(a)}a=f[d>>2]|0;if(!a){b=s;$e(b|0)}n=f[b>>2]|0;if((n|0)!=(a|0))f[b>>2]=n+(~((n+-2-a|0)>>>1)<<1);Ip(a);b=s;$e(b|0)}function fr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;f[e>>2]=36436;f[e+4>>2]=r;d=e+8|0;s=f[r>>2]|0;c=r+16|0;n=f[c>>2]|0;l=re(n,s)|0;f[d>>2]=0;b=e+12|0;f[b>>2]=0;f[e+16>>2]=0;do{if(l){if(!((l|0)<0?(_=0,ue(178,d|0),s=_,_=0,s&1):0))h=4;if((h|0)==4?(o=l<<1,_=0,u=de(67,o|0)|0,s=_,_=0,!(s&1)):0){f[d>>2]=u;s=u+(l<<1)|0;f[e+16>>2]=s;ym(u|0,0,o|0)|0;f[b>>2]=s;s=f[r>>2]|0;n=f[c>>2]|0;break}l=ze()|0;a=f[d>>2]|0;n=a;if(a){s=f[b>>2]|0;if((s|0)!=(a|0))f[b>>2]=s+(~((s+-2-n|0)>>>1)<<1);Ip(a)}b=l;$e(b|0)}}while(0);l=e+20|0;n=re(s<<1,n)|0;f[l>>2]=0;o=e+24|0;f[o>>2]=0;f[e+28>>2]=0;if(!n){b=e+36|0;f[b>>2]=f[i>>2];f[b+4>>2]=f[i+4>>2];f[b+8>>2]=f[i+8>>2];return}if(!((n|0)<0?(_=0,ue(178,l|0),r=_,_=0,r&1):0))h=13;if((h|0)==13?(_=0,a=de(67,n|0)|0,h=_,_=0,!(h&1)):0){f[o>>2]=a;f[l>>2]=a;f[e+28>>2]=a+n;do{t[a>>0]=0;a=(f[o>>2]|0)+1|0;f[o>>2]=a;n=n+-1|0}while((n|0)!=0);b=e+36|0;f[b>>2]=f[i>>2];f[b+4>>2]=f[i+4>>2];f[b+8>>2]=f[i+8>>2];return}s=ze()|0;a=f[l>>2]|0;if(a){if((f[o>>2]|0)!=(a|0))f[o>>2]=a;Ip(a)}a=f[d>>2]|0;if(!a){b=s;$e(b|0)}n=f[b>>2]|0;if((n|0)!=(a|0))f[b>>2]=n+(~((n+-2-a|0)>>>1)<<1);Ip(a);b=s;$e(b|0)}function ar(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;f[e>>2]=36412;f[e+4>>2]=r;d=e+8|0;s=f[r>>2]|0;c=r+16|0;n=f[c>>2]|0;l=re(n,s)|0;f[d>>2]=0;b=e+12|0;f[b>>2]=0;f[e+16>>2]=0;do{if(l){if(!((l|0)<0?(_=0,ue(178,d|0),s=_,_=0,s&1):0))h=4;if((h|0)==4?(o=l<<1,_=0,u=de(67,o|0)|0,s=_,_=0,!(s&1)):0){f[d>>2]=u;s=u+(l<<1)|0;f[e+16>>2]=s;ym(u|0,0,o|0)|0;f[b>>2]=s;s=f[r>>2]|0;n=f[c>>2]|0;break}l=ze()|0;a=f[d>>2]|0;n=a;if(a){s=f[b>>2]|0;if((s|0)!=(a|0))f[b>>2]=s+(~((s+-2-n|0)>>>1)<<1);Ip(a)}b=l;$e(b|0)}}while(0);l=e+20|0;n=re(s<<1,n)|0;f[l>>2]=0;o=e+24|0;f[o>>2]=0;f[e+28>>2]=0;if(!n){b=e+36|0;f[b>>2]=f[i>>2];f[b+4>>2]=f[i+4>>2];f[b+8>>2]=f[i+8>>2];return}if(!((n|0)<0?(_=0,ue(178,l|0),r=_,_=0,r&1):0))h=13;if((h|0)==13?(_=0,a=de(67,n|0)|0,h=_,_=0,!(h&1)):0){f[o>>2]=a;f[l>>2]=a;f[e+28>>2]=a+n;do{t[a>>0]=0;a=(f[o>>2]|0)+1|0;f[o>>2]=a;n=n+-1|0}while((n|0)!=0);b=e+36|0;f[b>>2]=f[i>>2];f[b+4>>2]=f[i+4>>2];f[b+8>>2]=f[i+8>>2];return}s=ze()|0;a=f[l>>2]|0;if(a){if((f[o>>2]|0)!=(a|0))f[o>>2]=a;Ip(a)}a=f[d>>2]|0;if(!a){b=s;$e(b|0)}n=f[b>>2]|0;if((n|0)!=(a|0))f[b>>2]=n+(~((n+-2-a|0)>>>1)<<1);Ip(a);b=s;$e(b|0)}function sr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;f[e>>2]=36388;f[e+4>>2]=r;d=e+8|0;s=f[r>>2]|0;c=r+16|0;n=f[c>>2]|0;l=re(n,s)|0;f[d>>2]=0;b=e+12|0;f[b>>2]=0;f[e+16>>2]=0;do{if(l){if(!((l|0)<0?(_=0,ue(178,d|0),s=_,_=0,s&1):0))h=4;if((h|0)==4?(o=l<<1,_=0,u=de(67,o|0)|0,s=_,_=0,!(s&1)):0){f[d>>2]=u;s=u+(l<<1)|0;f[e+16>>2]=s;ym(u|0,0,o|0)|0;f[b>>2]=s;s=f[r>>2]|0;n=f[c>>2]|0;break}l=ze()|0;a=f[d>>2]|0;n=a;if(a){s=f[b>>2]|0;if((s|0)!=(a|0))f[b>>2]=s+(~((s+-2-n|0)>>>1)<<1);Ip(a)}b=l;$e(b|0)}}while(0);l=e+20|0;n=re(s<<1,n)|0;f[l>>2]=0;o=e+24|0;f[o>>2]=0;f[e+28>>2]=0;if(!n){b=e+36|0;f[b>>2]=f[i>>2];f[b+4>>2]=f[i+4>>2];f[b+8>>2]=f[i+8>>2];return}if(!((n|0)<0?(_=0,ue(178,l|0),r=_,_=0,r&1):0))h=13;if((h|0)==13?(_=0,a=de(67,n|0)|0,h=_,_=0,!(h&1)):0){f[o>>2]=a;f[l>>2]=a;f[e+28>>2]=a+n;do{t[a>>0]=0;a=(f[o>>2]|0)+1|0;f[o>>2]=a;n=n+-1|0}while((n|0)!=0);b=e+36|0;f[b>>2]=f[i>>2];f[b+4>>2]=f[i+4>>2];f[b+8>>2]=f[i+8>>2];return}s=ze()|0;a=f[l>>2]|0;if(a){if((f[o>>2]|0)!=(a|0))f[o>>2]=a;Ip(a)}a=f[d>>2]|0;if(!a){b=s;$e(b|0)}n=f[b>>2]|0;if((n|0)!=(a|0))f[b>>2]=n+(~((n+-2-a|0)>>>1)<<1);Ip(a);b=s;$e(b|0)}function lr(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0;l=e+32|0;Bh(l,i)|0;s=e+44|0;f[s>>2]=0;o=e+48|0;a=f[o>>2]|0;if(a&8){i=t[l>>0]|0;if(!(i&1)){i=((i&255)>>>1)+(l+1)|0;f[s>>2]=i;r=l+1|0;n=l+1|0}else{i=(f[e+40>>2]|0)+(f[e+36>>2]|0)|0;f[s>>2]=i;n=f[e+40>>2]|0;r=n}f[e+8>>2]=r;f[e+12>>2]=n;f[e+16>>2]=i}if(!(a&16))return;i=t[l>>0]|0;if(!(i&1)){a=(i&255)>>>1;f[s>>2]=l+1+a;i=10;s=a}else{a=f[e+36>>2]|0;f[s>>2]=(f[e+40>>2]|0)+a;i=(f[l>>2]&-2)+-1|0;s=a}Nh(l,i,0);i=t[l>>0]|0;if(!(i&1)){a=l+1|0;n=(i&255)>>>1;r=l+1|0}else{r=f[e+40>>2]|0;a=r;n=f[e+36>>2]|0}i=e+24|0;f[i>>2]=r;f[e+20>>2]=r;f[e+28>>2]=a+n;if(!(f[o>>2]&3))return;f[i>>2]=r+s;return}function or(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;k=c;c=c+32|0;l=k+16|0;b=k+8|0;o=k;_=0;ce(65,b|0,e|0);h=_;_=0;e:do{if(h&1){r=ze(0)|0;n=e;a=e}else{do{if(t[b>>0]|0){n=f[(f[e>>2]|0)+-12>>2]|0;f[o>>2]=f[e+(n+24)>>2];u=e+n|0;h=f[e+(n+4)>>2]|0;a=i+r|0;n=e+(n+76)|0;r=f[n>>2]|0;do{if((r|0)==-1){_=0;r=de(68,u|0)|0;w=_;_=0;if(w&1)d=13;else{f[l>>2]=r;_=0;r=pe(37,l|0,44220)|0;w=_;_=0;if(!(w&1)?(_=0,s=pe(f[(f[r>>2]|0)+28>>2]|0,r|0,32)|0,w=_,_=0,!(w&1)):0){Bu(l);r=s<<24>>24;f[n>>2]=r;d=9;break}r=ze(0)|0;Bu(l)}}else d=9}while(0);if((d|0)==9){_=0;f[l>>2]=f[o>>2];r=he(39,l|0,i|0,((h&176|0)==32?a:i)|0,a|0,u|0,r&255|0)|0;w=_;_=0;if(!(w&1)){if(r)break;w=f[(f[e>>2]|0)+-12>>2]|0;_=0;ce(66,e+w|0,f[e+(w+16)>>2]|5|0);w=_;_=0;if(!(w&1))break;else d=13}else d=13}if((d|0)==13)r=ze(0)|0;nb(b);n=e;a=e;break e}}while(0);nb(b);c=k;return e|0}}while(0);Ze(r|0)|0;_=0;ue(181,n+(f[(f[a>>2]|0)+-12>>2]|0)|0);w=_;_=0;if(!(w&1)){Qe();c=k;return e|0}r=ze()|0;_=0;Se(3);w=_;_=0;if(w&1){w=ze(0)|0;Fi(w)}else $e(r|0);return 0}function ur(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0;r=f[i+48>>2]|0;if(r&16){r=i+44|0;n=f[r>>2]|0;a=f[i+24>>2]|0;if(n>>>0<a>>>0)f[r>>2]=a;else a=n;n=f[i+20>>2]|0;s=a-n|0;if(s>>>0>4294967279)xp(e);if(s>>>0<11){t[e>>0]=s<<1;r=e+1|0}else{i=s+16&-16;r=Bp(i)|0;f[e+8>>2]=r;f[e>>2]=i|1;f[e+4>>2]=s}if((n|0)!=(a|0)){i=r;while(1){t[i>>0]=t[n>>0]|0;n=n+1|0;if((n|0)==(a|0))break;else i=i+1|0}r=r+s|0}t[r>>0]=0;return}if(!(r&8)){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}n=f[i+8>>2]|0;i=f[i+16>>2]|0;s=i-n|0;if(s>>>0>4294967279)xp(e);if(s>>>0<11){t[e>>0]=s<<1;r=e+1|0}else{a=s+16&-16;r=Bp(a)|0;f[e+8>>2]=r;f[e>>2]=a|1;f[e+4>>2]=s}if((n|0)!=(i|0)){a=r;while(1){t[a>>0]=t[n>>0]|0;n=n+1|0;if((n|0)==(i|0))break;else a=a+1|0}r=r+s|0}t[r>>0]=0;return}function cr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0;f[e>>2]=36364;f[e+4>>2]=r;b=e+8|0;l=f[r>>2]|0;h=r+16|0;s=f[h>>2]|0;c=re(s,l)|0;f[b>>2]=0;k=e+12|0;f[k>>2]=0;f[e+16>>2]=0;do{if(c){if(!((c|0)<0?(_=0,ue(178,b|0),l=_,_=0,l&1):0))d=4;if((d|0)==4?(o=c<<1,_=0,u=de(67,o|0)|0,l=_,_=0,!(l&1)):0){f[b>>2]=u;l=u+(c<<1)|0;f[e+16>>2]=l;ym(u|0,0,o|0)|0;f[k>>2]=l;l=f[r>>2]|0;s=f[h>>2]|0;break}o=ze()|0;a=f[b>>2]|0;s=a;if(a){l=f[k>>2]|0;if((l|0)!=(a|0))f[k>>2]=l+(~((l+-2-s|0)>>>1)<<1);Ip(a)}k=o;$e(k|0)}}while(0);o=e+20|0;s=re(l<<1,s)|0;f[o>>2]=0;u=e+24|0;f[u>>2]=0;f[e+28>>2]=0;if(!s){k=e+32|0;b=n;b=f[b>>2]|0;n=n+4|0;n=f[n>>2]|0;d=k;f[d>>2]=b;k=k+4|0;f[k>>2]=n;k=e+40|0;f[k>>2]=b;k=e+48|0;f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];return}if(!((s|0)<0?(_=0,ue(178,o|0),h=_,_=0,h&1):0))d=13;if((d|0)==13?(_=0,a=de(67,s|0)|0,d=_,_=0,!(d&1)):0){f[u>>2]=a;f[o>>2]=a;f[e+28>>2]=a+s;do{t[a>>0]=0;a=(f[u>>2]|0)+1|0;f[u>>2]=a;s=s+-1|0}while((s|0)!=0);k=e+32|0;b=n;b=f[b>>2]|0;n=n+4|0;n=f[n>>2]|0;d=k;f[d>>2]=b;k=k+4|0;f[k>>2]=n;k=e+40|0;f[k>>2]=b;k=e+48|0;f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];return}l=ze()|0;a=f[o>>2]|0;if(a){if((f[u>>2]|0)!=(a|0))f[u>>2]=a;Ip(a)}a=f[b>>2]|0;if(!a){k=l;$e(k|0)}s=f[k>>2]|0;if((s|0)!=(a|0))f[k>>2]=s+(~((s+-2-a|0)>>>1)<<1);Ip(a);k=l;$e(k|0)}function hr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0;f[e>>2]=36340;f[e+4>>2]=r;b=e+8|0;l=f[r>>2]|0;h=r+16|0;s=f[h>>2]|0;c=re(s,l)|0;f[b>>2]=0;k=e+12|0;f[k>>2]=0;f[e+16>>2]=0;do{if(c){if(!((c|0)<0?(_=0,ue(178,b|0),l=_,_=0,l&1):0))d=4;if((d|0)==4?(o=c<<1,_=0,u=de(67,o|0)|0,l=_,_=0,!(l&1)):0){f[b>>2]=u;l=u+(c<<1)|0;f[e+16>>2]=l;ym(u|0,0,o|0)|0;f[k>>2]=l;l=f[r>>2]|0;s=f[h>>2]|0;break}o=ze()|0;a=f[b>>2]|0;s=a;if(a){l=f[k>>2]|0;if((l|0)!=(a|0))f[k>>2]=l+(~((l+-2-s|0)>>>1)<<1);Ip(a)}k=o;$e(k|0)}}while(0);o=e+20|0;s=re(l<<1,s)|0;f[o>>2]=0;u=e+24|0;f[u>>2]=0;f[e+28>>2]=0;if(!s){k=e+32|0;b=n;b=f[b>>2]|0;n=n+4|0;n=f[n>>2]|0;d=k;f[d>>2]=b;k=k+4|0;f[k>>2]=n;k=e+40|0;f[k>>2]=b;k=e+48|0;f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];return}if(!((s|0)<0?(_=0,ue(178,o|0),h=_,_=0,h&1):0))d=13;if((d|0)==13?(_=0,a=de(67,s|0)|0,d=_,_=0,!(d&1)):0){f[u>>2]=a;f[o>>2]=a;f[e+28>>2]=a+s;do{t[a>>0]=0;a=(f[u>>2]|0)+1|0;f[u>>2]=a;s=s+-1|0}while((s|0)!=0);k=e+32|0;b=n;b=f[b>>2]|0;n=n+4|0;n=f[n>>2]|0;d=k;f[d>>2]=b;k=k+4|0;f[k>>2]=n;k=e+40|0;f[k>>2]=b;k=e+48|0;f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];return}l=ze()|0;a=f[o>>2]|0;if(a){if((f[u>>2]|0)!=(a|0))f[u>>2]=a;Ip(a)}a=f[b>>2]|0;if(!a){k=l;$e(k|0)}s=f[k>>2]|0;if((s|0)!=(a|0))f[k>>2]=s+(~((s+-2-a|0)>>>1)<<1);Ip(a);k=l;$e(k|0)}function dr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0;f[e>>2]=36316;f[e+4>>2]=r;b=e+8|0;l=f[r>>2]|0;h=r+16|0;s=f[h>>2]|0;c=re(s,l)|0;f[b>>2]=0;k=e+12|0;f[k>>2]=0;f[e+16>>2]=0;do{if(c){if(!((c|0)<0?(_=0,ue(178,b|0),l=_,_=0,l&1):0))d=4;if((d|0)==4?(o=c<<1,_=0,u=de(67,o|0)|0,l=_,_=0,!(l&1)):0){f[b>>2]=u;l=u+(c<<1)|0;f[e+16>>2]=l;ym(u|0,0,o|0)|0;f[k>>2]=l;l=f[r>>2]|0;s=f[h>>2]|0;break}o=ze()|0;a=f[b>>2]|0;s=a;if(a){l=f[k>>2]|0;if((l|0)!=(a|0))f[k>>2]=l+(~((l+-2-s|0)>>>1)<<1);Ip(a)}k=o;$e(k|0)}}while(0);o=e+20|0;s=re(l<<1,s)|0;f[o>>2]=0;u=e+24|0;f[u>>2]=0;f[e+28>>2]=0;if(!s){k=e+32|0;b=n;b=f[b>>2]|0;n=n+4|0;n=f[n>>2]|0;d=k;f[d>>2]=b;k=k+4|0;f[k>>2]=n;k=e+40|0;f[k>>2]=b;k=e+48|0;f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];return}if(!((s|0)<0?(_=0,ue(178,o|0),h=_,_=0,h&1):0))d=13;if((d|0)==13?(_=0,a=de(67,s|0)|0,d=_,_=0,!(d&1)):0){f[u>>2]=a;f[o>>2]=a;f[e+28>>2]=a+s;do{t[a>>0]=0;a=(f[u>>2]|0)+1|0;f[u>>2]=a;s=s+-1|0}while((s|0)!=0);k=e+32|0;b=n;b=f[b>>2]|0;n=n+4|0;n=f[n>>2]|0;d=k;f[d>>2]=b;k=k+4|0;f[k>>2]=n;k=e+40|0;f[k>>2]=b;k=e+48|0;f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];return}l=ze()|0;a=f[o>>2]|0;if(a){if((f[u>>2]|0)!=(a|0))f[u>>2]=a;Ip(a)}a=f[b>>2]|0;if(!a){k=l;$e(k|0)}s=f[k>>2]|0;if((s|0)!=(a|0))f[k>>2]=s+(~((s+-2-a|0)>>>1)<<1);Ip(a);k=l;$e(k|0)}function br(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=36316;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}t=f[e+8>>2]|0;if(!t)return;i=e+12|0;r=f[i>>2]|0;if((r|0)!=(t|0))f[i>>2]=r+(~((r+-2-t|0)>>>1)<<1);Ip(t);return}function kr(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=36316;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}t=f[e+8>>2]|0;if(!t){Ip(e);return}i=e+12|0;r=f[i>>2]|0;if((r|0)!=(t|0))f[i>>2]=r+(~((r+-2-t|0)>>>1)<<1);Ip(t);Ip(e);return}function wr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;a=e+48|0;if(!(f[a>>2]|0)){o=e+52|0;gr(e,i,f[o>>2]|0,r,n);f[o>>2]=(f[o>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}u=e+4|0;s=r<<1;l=re(s,f[(f[u>>2]|0)+16>>2]|0)|0;o=e+20|0;gr(e,i,f[o>>2]|0,r,n);i=f[u>>2]|0;if((f[i+28>>2]|0)==536870912)pr(f[o>>2]|0,re(s,f[i+16>>2]|0)|0);u=f[a>>2]|0;if((uM[f[(f[u>>2]|0)+48>>2]&63](u,f[o>>2]|0,l)|0)==(l|0))return;i=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,i|0,3,35648);u=_;_=0;if(u&1){u=ze()|0;je(i|0);$e(u|0)}else bi(i|0,824,96)}function _r(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0;n=f[e+48>>2]|0;if(!n){n=e+52|0;mr(e,f[n>>2]|0,i,r,t);f[n>>2]=(f[n>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}else{vr(e,n,i,r,t);return}}function mr(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,k=0;h=e+4|0;o=f[h>>2]|0;do{if(!(t[o+32>>0]|0))d=i;else{u=e+8|0;Am(f[u>>2]|0,i|0,a*6|0)|0;o=f[h>>2]|0;c=f[o+16>>2]|0;if((a|0)<=0){d=f[u>>2]|0;break}i=f[u>>2]|0;o=i;u=0;while(1){d=o+4|0;b=n[o>>1]|0;n[o>>1]=n[d>>1]|0;n[d>>1]=b;u=u+1|0;if((u|0)==(a|0))break;else o=o+(c<<1)|0}d=i;o=f[h>>2]|0}}while(0);switch(f[o+16>>2]|0){case 3:if((f[o+24>>2]|0)==2){if((a|0)<=0)return;o=e+32|0;i=0;do{b=f[o>>2]|0;h=s[d+(i*6|0)+2>>1]<<b;l=32768-h|0;e=l+(s[d+(i*6|0)+4>>1]<<b)&65535;l=l+(s[d+(i*6|0)>>1]<<b)&65535;n[r+(i*6|0)>>1]=(h+49152+((e+l|0)>>>2)&65535)>>>b;n[r+(i*6|0)+2>>1]=e>>>b;n[r+(i*6|0)+4>>1]=l>>>b;i=i+1|0}while((i|0)!=(a|0));return}else{u=(l|0)<(a|0)?l:a;if((u|0)<=0)return;c=l<<1;o=f[e+32>>2]|0;i=0;do{a=s[d+(i*6|0)+2>>1]<<o;b=32768-a|0;e=b+(s[d+(i*6|0)+4>>1]<<o)&65535;b=b+(s[d+(i*6|0)>>1]<<o)&65535;n[r+(i<<1)>>1]=(a+49152+((e+b|0)>>>2)&65535)>>>o;n[r+(i+l<<1)>>1]=e>>>o;n[r+(i+c<<1)>>1]=b>>>o;i=i+1|0}while((i|0)!=(u|0));return}case 4:{if((f[o+24>>2]|0)!=1)return;u=(l|0)<(a|0)?l:a;if((u|0)<=0)return;c=l<<1;h=l*3|0;o=f[e+32>>2]|0;i=0;do{b=n[d+(i<<3)+6>>1]|0;k=s[d+(i<<3)+2>>1]<<o;e=32768-k|0;a=e+(s[d+(i<<3)+4>>1]<<o)&65535;e=e+(s[d+(i<<3)>>1]<<o)&65535;n[r+(i<<1)>>1]=(k+49152+((a+e|0)>>>2)&65535)>>>o;n[r+(i+l<<1)>>1]=a>>>o;n[r+(i+c<<1)>>1]=e>>>o;n[r+(i+h<<1)>>1]=b;i=i+1|0}while((i|0)!=(u|0));return}default:return}}function vr(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0;b=c;c=c+176|0;k=b+152|0;v=b+16|0;m=b;u=e+4|0;s=f[u>>2]|0;d=n<<1;l=re(d,f[s+16>>2]|0)|0;do{if(l){o=e+20|0;while(1){s=uM[f[(f[i>>2]|0)+32>>2]&63](i,f[o>>2]|0,l)|0;if(!s)break;if((l|0)==(s|0)){h=26;break}else l=l-s|0}if((h|0)==26){s=f[u>>2]|0;break}h=v+56|0;u=v+4|0;f[v>>2]=36160;f[h>>2]=36180;_=0;ce(62,v+56|0,u|0);b=_;_=0;if(b&1){v=ze()|0;nd(h);$e(v|0)}f[v+128>>2]=0;f[v+132>>2]=-1;f[v>>2]=36200;f[v+56>>2]=36220;_=0;ue(180,u|0);b=_;_=0;do{if(b&1)s=ze()|0;else{f[u>>2]=36236;i=v+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[v+52>>2]=16;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;_=0;ce(63,u|0,k|0);b=_;_=0;if(b&1){s=ze()|0;Oh(k);Oh(i);cd(u);break}Oh(k);_=0;s=ke(28,v|0,49029,57)|0;k=_;_=0;if(!(k&1)?(_=0,pe(36,s|0,0)|0,k=_,_=0,!(k&1)):0){o=He(16)|0;_=0;ce(64,m|0,u|0);k=_;_=0;if(!(k&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,o|0,3,35648,m|0);k=_;_=0;if(k&1)l=1;else{_=0;Ae(6,o|0,824,96);_=0;l=0}s=ze()|0;Oh(m);if(!l){m=s;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}}else s=ze()|0;je(o|0);m=s;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}m=ze()|0;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}}while(0);v=s;nd(h);$e(v|0)}}while(0);l=e+20|0;if((f[s+28>>2]|0)!=536870912){v=f[l>>2]|0;mr(e,v,r,n,a);c=b;return}pr(f[l>>2]|0,re(d,f[s+16>>2]|0)|0);v=f[l>>2]|0;mr(e,v,r,n,a);c=b;return}function pr(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0;a=c;c=c+176|0;r=a+152|0;u=a+16|0;l=a;if(!(i&1)){r=(i|0)/4|0;if((i|0)>3){n=0;do{u=e+(n<<2)|0;o=f[u>>2]|0;f[u>>2]=o>>>8&16711935|o<<8&-16711936;n=n+1|0}while((n|0)<(r|0))}if(!(i&3)){c=a;return}l=e+(i+-2)|0;u=e+(i+-1)|0;o=t[l>>0]|0;t[l>>0]=t[u>>0]|0;t[u>>0]=o;c=a;return}o=u+56|0;s=u+4|0;f[u>>2]=36160;f[o>>2]=36180;_=0;ce(62,u+56|0,s|0);a=_;_=0;if(a&1){u=ze()|0;nd(o);$e(u|0)}f[u+128>>2]=0;f[u+132>>2]=-1;f[u>>2]=36200;f[u+56>>2]=36220;_=0;ue(180,s|0);a=_;_=0;do{if(a&1)r=ze()|0;else{f[s>>2]=36236;a=u+36|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[u+52>>2]=16;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;_=0;ce(63,s|0,r|0);e=_;_=0;if(e&1){u=ze()|0;Oh(r);Oh(a);cd(s);r=u;break}Oh(r);_=0;r=ke(28,u|0,49087,24)|0;e=_;_=0;if((!(e&1)?(_=0,n=pe(36,r|0,i|0)|0,i=_,_=0,!(i&1)):0)?(_=0,ke(28,n|0,49112,20)|0,i=_,_=0,!(i&1)):0){e=He(16)|0;_=0;ce(64,l|0,s|0);i=_;_=0;if(!(i&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,e|0,1,35648,l|0);i=_;_=0;if(i&1)n=1;else{_=0;Ae(6,e|0,824,96);_=0;n=0}r=ze()|0;Oh(l);if(!n){l=r;f[u>>2]=36200;f[o>>2]=36220;f[s>>2]=36236;Oh(a);cd(s);nd(o);$e(l|0)}}else r=ze()|0;je(e|0);l=r;f[u>>2]=36200;f[o>>2]=36220;f[s>>2]=36236;Oh(a);cd(s);nd(o);$e(l|0)}l=ze()|0;f[u>>2]=36200;f[o>>2]=36220;f[s>>2]=36236;Oh(a);cd(s);nd(o);$e(l|0)}}while(0);u=r;nd(o);$e(u|0)}function gr(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0;d=e+4|0;o=f[d>>2]|0;e:do{switch(f[o+16>>2]|0){case 3:{if((f[o+24>>2]|0)==2){if((a|0)<=0)break e;o=e+40|0;e=0;do{l=f[o>>2]|0;c=s[i+(e*6|0)+2>>1]<<l;u=s[i+(e*6|0)+4>>1]<<l;h=(s[i+(e*6|0)>>1]<<l)-(u+c>>2)+16384|0;n[r+(e*6|0)>>1]=(u+32768+h&65535)>>>l;n[r+(e*6|0)+2>>1]=(h&65535)>>>l;n[r+(e*6|0)+4>>1]=(c+32768+h&65535)>>>l;e=e+1|0}while((e|0)!=(a|0))}else{u=(a|0)<(l|0)?a:l;if((u|0)<=0)break e;c=l<<1;o=e+40|0;e=0;do{h=f[o>>2]|0;k=s[i+(e+l<<1)>>1]<<h;w=s[i+(e+c<<1)>>1]<<h;b=(s[i+(e<<1)>>1]<<h)-(w+k>>2)+16384|0;n[r+(e*6|0)>>1]=(w+32768+b&65535)>>>h;n[r+(e*6|0)+2>>1]=(b&65535)>>>h;n[r+(e*6|0)+4>>1]=(k+32768+b&65535)>>>h;e=e+1|0}while((e|0)!=(u|0))}break}case 4:{if((f[o+24>>2]|0)==1?(h=(a|0)<(l|0)?a:l,(h|0)>0):0){c=l<<1;o=e+40|0;e=l*3|0;u=0;do{w=f[o>>2]|0;k=s[i+(u+l<<1)>>1]<<w;m=s[i+(u+c<<1)>>1]<<w;b=(s[i+(u<<1)>>1]<<w)-(m+k>>2)+16384|0;_=n[i+(u+e<<1)>>1]|0;v=Sm((b&65535)>>>w&65535|0,0,16)|0;k=(k+32768+b&65535)>>>w|P;_=Sm(_&65535|0,0,48)|0;_=v|(m+32768+b&65535)>>>w&65535|_;k=k&65535|P;w=r+(u<<3)|0;b=w;n[b>>1]=_;n[b+2>>1]=_>>>16;w=w+4|0;n[w>>1]=k;n[w+2>>1]=k>>>16;u=u+1|0}while((u|0)!=(h|0))}break}default:{}}}while(0);o=f[d>>2]|0;if(!(t[o+32>>0]|0))return;u=f[o+16>>2]|0;if((a|0)<=0)return;o=r;e=0;while(1){v=o+4|0;m=n[o>>1]|0;n[o>>1]=n[v>>1]|0;n[v>>1]=m;e=e+1|0;if((e|0)==(a|0))break;else o=o+(u<<1)|0}return}function yr(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=36340;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}t=f[e+8>>2]|0;if(!t)return;i=e+12|0;r=f[i>>2]|0;if((r|0)!=(t|0))f[i>>2]=r+(~((r+-2-t|0)>>>1)<<1);Ip(t);return}function Mr(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=36340;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}t=f[e+8>>2]|0;if(!t){Ip(e);return}i=e+12|0;r=f[i>>2]|0;if((r|0)!=(t|0))f[i>>2]=r+(~((r+-2-t|0)>>>1)<<1);Ip(t);Ip(e);return}function Er(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;a=e+48|0;if(!(f[a>>2]|0)){o=e+52|0;Cr(e,i,f[o>>2]|0,r,n);f[o>>2]=(f[o>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}u=e+4|0;s=r<<1;l=re(s,f[(f[u>>2]|0)+16>>2]|0)|0;o=e+20|0;Cr(e,i,f[o>>2]|0,r,n);i=f[u>>2]|0;if((f[i+28>>2]|0)==536870912)pr(f[o>>2]|0,re(s,f[i+16>>2]|0)|0);u=f[a>>2]|0;if((uM[f[(f[u>>2]|0)+48>>2]&63](u,f[o>>2]|0,l)|0)==(l|0))return;i=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,i|0,3,35648);u=_;_=0;if(u&1){u=ze()|0;je(i|0);$e(u|0)}else bi(i|0,824,96)}function Ar(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0;n=f[e+48>>2]|0;if(!n){n=e+52|0;Sr(e,f[n>>2]|0,i,r,t);f[n>>2]=(f[n>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}else{Tr(e,n,i,r,t);return}}function Sr(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,k=0;h=e+4|0;o=f[h>>2]|0;do{if(!(t[o+32>>0]|0))d=i;else{u=e+8|0;Am(f[u>>2]|0,i|0,a*6|0)|0;o=f[h>>2]|0;c=f[o+16>>2]|0;if((a|0)<=0){d=f[u>>2]|0;break}i=f[u>>2]|0;o=i;u=0;while(1){d=o+4|0;b=n[o>>1]|0;n[o>>1]=n[d>>1]|0;n[d>>1]=b;u=u+1|0;if((u|0)==(a|0))break;else o=o+(c<<1)|0}d=i;o=f[h>>2]|0}}while(0);switch(f[o+16>>2]|0){case 3:if((f[o+24>>2]|0)==2){if((a|0)<=0)return;o=e+32|0;i=0;do{l=f[o>>2]|0;h=s[d+(i*6|0)>>1]<<l;e=s[d+(i*6|0)+2>>1]<<l;b=((s[d+(i*6|0)+4>>1]<<l)+32768-((e+h|0)>>>1)&65535)>>>l&65535;n[r+(i*6|0)>>1]=(h+32768-e&65535)>>>l;n[r+(i*6|0)+2>>1]=(e&65535)>>>l;n[r+(i*6|0)+4>>1]=b;i=i+1|0}while((i|0)!=(a|0));return}else{u=(l|0)<(a|0)?l:a;if((u|0)<=0)return;c=l<<1;o=f[e+32>>2]|0;i=0;do{a=s[d+(i*6|0)>>1]<<o;e=s[d+(i*6|0)+2>>1]<<o;b=((s[d+(i*6|0)+4>>1]<<o)+32768-((e+a|0)>>>1)&65535)>>>o&65535;n[r+(i<<1)>>1]=(a+32768-e&65535)>>>o;n[r+(i+l<<1)>>1]=(e&65535)>>>o;n[r+(i+c<<1)>>1]=b;i=i+1|0}while((i|0)!=(u|0));return}case 4:{if((f[o+24>>2]|0)!=1)return;u=(l|0)<(a|0)?l:a;if((u|0)<=0)return;c=l<<1;h=l*3|0;o=f[e+32>>2]|0;i=0;do{b=n[d+(i<<3)+6>>1]|0;k=s[d+(i<<3)>>1]<<o;a=s[d+(i<<3)+2>>1]<<o;e=((s[d+(i<<3)+4>>1]<<o)+32768-((a+k|0)>>>1)&65535)>>>o&65535;n[r+(i<<1)>>1]=(k+32768-a&65535)>>>o;n[r+(i+l<<1)>>1]=(a&65535)>>>o;n[r+(i+c<<1)>>1]=e;n[r+(i+h<<1)>>1]=b;i=i+1|0}while((i|0)!=(u|0));return}default:return}}function Tr(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0;b=c;c=c+176|0;k=b+152|0;v=b+16|0;m=b;u=e+4|0;s=f[u>>2]|0;d=n<<1;l=re(d,f[s+16>>2]|0)|0;do{if(l){o=e+20|0;while(1){s=uM[f[(f[i>>2]|0)+32>>2]&63](i,f[o>>2]|0,l)|0;if(!s)break;if((l|0)==(s|0)){h=26;break}else l=l-s|0}if((h|0)==26){s=f[u>>2]|0;break}h=v+56|0;u=v+4|0;f[v>>2]=36160;f[h>>2]=36180;_=0;ce(62,v+56|0,u|0);b=_;_=0;if(b&1){v=ze()|0;nd(h);$e(v|0)}f[v+128>>2]=0;f[v+132>>2]=-1;f[v>>2]=36200;f[v+56>>2]=36220;_=0;ue(180,u|0);b=_;_=0;do{if(b&1)s=ze()|0;else{f[u>>2]=36236;i=v+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[v+52>>2]=16;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;_=0;ce(63,u|0,k|0);b=_;_=0;if(b&1){s=ze()|0;Oh(k);Oh(i);cd(u);break}Oh(k);_=0;s=ke(28,v|0,49029,57)|0;k=_;_=0;if(!(k&1)?(_=0,pe(36,s|0,0)|0,k=_,_=0,!(k&1)):0){o=He(16)|0;_=0;ce(64,m|0,u|0);k=_;_=0;if(!(k&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,o|0,3,35648,m|0);k=_;_=0;if(k&1)l=1;else{_=0;Ae(6,o|0,824,96);_=0;l=0}s=ze()|0;Oh(m);if(!l){m=s;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}}else s=ze()|0;je(o|0);m=s;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}m=ze()|0;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}}while(0);v=s;nd(h);$e(v|0)}}while(0);l=e+20|0;if((f[s+28>>2]|0)!=536870912){v=f[l>>2]|0;Sr(e,v,r,n,a);c=b;return}pr(f[l>>2]|0,re(d,f[s+16>>2]|0)|0);v=f[l>>2]|0;Sr(e,v,r,n,a);c=b;return}function Cr(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;d=e+4|0;o=f[d>>2]|0;e:do{switch(f[o+16>>2]|0){case 3:{if((f[o+24>>2]|0)==2){if((a|0)<=0)break e;o=e+40|0;e=0;do{h=f[o>>2]|0;c=s[i+(e*6|0)+2>>1]<<h;u=(s[i+(e*6|0)>>1]<<h)+32768+c&65535;c=c&65535;l=((s[i+(e*6|0)+4>>1]<<h)+32768+((u+c|0)>>>1)&65535)>>>h&65535;n[r+(e*6|0)>>1]=u>>>h;n[r+(e*6|0)+2>>1]=c>>>h;n[r+(e*6|0)+4>>1]=l;e=e+1|0}while((e|0)!=(a|0))}else{u=(a|0)<(l|0)?a:l;if((u|0)<=0)break e;c=l<<1;o=e+40|0;e=0;do{b=f[o>>2]|0;k=s[i+(e+l<<1)>>1]<<b;w=(s[i+(e<<1)>>1]<<b)+32768+k&65535;k=k&65535;h=((s[i+(e+c<<1)>>1]<<b)+32768+((w+k|0)>>>1)&65535)>>>b&65535;n[r+(e*6|0)>>1]=w>>>b;n[r+(e*6|0)+2>>1]=k>>>b;n[r+(e*6|0)+4>>1]=h;e=e+1|0}while((e|0)!=(u|0))}break}case 4:{if((f[o+24>>2]|0)==1?(h=(a|0)<(l|0)?a:l,(h|0)>0):0){c=l<<1;o=e+40|0;e=l*3|0;u=0;do{b=f[o>>2]|0;w=s[i+(u+l<<1)>>1]<<b;m=(s[i+(u<<1)>>1]<<b)+32768+w&65535;w=w&65535;k=((s[i+(u+c<<1)>>1]<<b)+32768+((m+w|0)>>>1)&65535)>>>b;_=n[i+(u+e<<1)>>1]|0;w=Sm(w>>>b&65535|0,0,16)|0;k=P|k;_=Sm(_&65535|0,0,48)|0;_=m>>>b&65535|w|_;k=k&65535|P;w=r+(u<<3)|0;b=w;n[b>>1]=_;n[b+2>>1]=_>>>16;w=w+4|0;n[w>>1]=k;n[w+2>>1]=k>>>16;u=u+1|0}while((u|0)!=(h|0))}break}default:{}}}while(0);o=f[d>>2]|0;if(!(t[o+32>>0]|0))return;u=f[o+16>>2]|0;if((a|0)<=0)return;o=r;e=0;while(1){m=o+4|0;_=n[o>>1]|0;n[o>>1]=n[m>>1]|0;n[m>>1]=_;e=e+1|0;if((e|0)==(a|0))break;else o=o+(u<<1)|0}return}function Rr(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=36364;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}t=f[e+8>>2]|0;if(!t)return;i=e+12|0;r=f[i>>2]|0;if((r|0)!=(t|0))f[i>>2]=r+(~((r+-2-t|0)>>>1)<<1);Ip(t);return}function Lr(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=36364;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}t=f[e+8>>2]|0;if(!t){Ip(e);return}i=e+12|0;r=f[i>>2]|0;if((r|0)!=(t|0))f[i>>2]=r+(~((r+-2-t|0)>>>1)<<1);Ip(t);Ip(e);return}function xr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;a=e+48|0;if(!(f[a>>2]|0)){o=e+52|0;Ir(e,i,f[o>>2]|0,r,n);f[o>>2]=(f[o>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}u=e+4|0;s=r<<1;l=re(s,f[(f[u>>2]|0)+16>>2]|0)|0;o=e+20|0;Ir(e,i,f[o>>2]|0,r,n);i=f[u>>2]|0;if((f[i+28>>2]|0)==536870912)pr(f[o>>2]|0,re(s,f[i+16>>2]|0)|0);u=f[a>>2]|0;if((uM[f[(f[u>>2]|0)+48>>2]&63](u,f[o>>2]|0,l)|0)==(l|0))return;i=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,i|0,3,35648);u=_;_=0;if(u&1){u=ze()|0;je(i|0);$e(u|0)}else bi(i|0,824,96)}function Pr(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0;n=f[e+48>>2]|0;if(!n){n=e+52|0;Or(e,f[n>>2]|0,i,r,t);f[n>>2]=(f[n>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}else{Br(e,n,i,r,t);return}}function Or(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0;h=e+4|0;o=f[h>>2]|0;do{if(!(t[o+32>>0]|0))d=i;else{u=e+8|0;Am(f[u>>2]|0,i|0,a*6|0)|0;o=f[h>>2]|0;c=f[o+16>>2]|0;if((a|0)<=0){d=f[u>>2]|0;break}i=f[u>>2]|0;o=i;u=0;while(1){d=o+4|0;b=n[o>>1]|0;n[o>>1]=n[d>>1]|0;n[d>>1]=b;u=u+1|0;if((u|0)==(a|0))break;else o=o+(c<<1)|0}d=i;o=f[h>>2]|0}}while(0);switch(f[o+16>>2]|0){case 3:if((f[o+24>>2]|0)==2){if((a|0)<=0)return;o=e+32|0;i=0;do{l=f[o>>2]|0;e=s[d+(i*6|0)+2>>1]<<l;b=(32768-e+(s[d+(i*6|0)+4>>1]<<l)&65535)>>>l&65535;n[r+(i*6|0)>>1]=((s[d+(i*6|0)>>1]<<l)+32768-e&65535)>>>l;n[r+(i*6|0)+2>>1]=(e&65535)>>>l;n[r+(i*6|0)+4>>1]=b;i=i+1|0}while((i|0)!=(a|0));return}else{u=(l|0)<(a|0)?l:a;if((u|0)<=0)return;c=l<<1;o=f[e+32>>2]|0;i=0;do{e=s[d+(i*6|0)+2>>1]<<o;b=(32768-e+(s[d+(i*6|0)+4>>1]<<o)&65535)>>>o&65535;n[r+(i<<1)>>1]=((s[d+(i*6|0)>>1]<<o)+32768-e&65535)>>>o;n[r+(i+l<<1)>>1]=(e&65535)>>>o;n[r+(i+c<<1)>>1]=b;i=i+1|0}while((i|0)!=(u|0));return}case 4:{if((f[o+24>>2]|0)!=1)return;c=(l|0)<(a|0)?l:a;if((c|0)<=0)return;h=l<<1;u=l*3|0;o=f[e+32>>2]|0;i=0;do{b=n[d+(i<<3)+6>>1]|0;a=s[d+(i<<3)+2>>1]<<o;e=(32768-a+(s[d+(i<<3)+4>>1]<<o)&65535)>>>o&65535;n[r+(i<<1)>>1]=((s[d+(i<<3)>>1]<<o)+32768-a&65535)>>>o;n[r+(i+l<<1)>>1]=(a&65535)>>>o;n[r+(i+h<<1)>>1]=e;n[r+(i+u<<1)>>1]=b;i=i+1|0}while((i|0)!=(c|0));return}default:return}}function Br(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0;b=c;c=c+176|0;k=b+152|0;v=b+16|0;m=b;u=e+4|0;s=f[u>>2]|0;d=n<<1;l=re(d,f[s+16>>2]|0)|0;do{if(l){o=e+20|0;while(1){s=uM[f[(f[i>>2]|0)+32>>2]&63](i,f[o>>2]|0,l)|0;if(!s)break;if((l|0)==(s|0)){h=26;break}else l=l-s|0}if((h|0)==26){s=f[u>>2]|0;break}h=v+56|0;u=v+4|0;f[v>>2]=36160;f[h>>2]=36180;_=0;ce(62,v+56|0,u|0);b=_;_=0;if(b&1){v=ze()|0;nd(h);$e(v|0)}f[v+128>>2]=0;f[v+132>>2]=-1;f[v>>2]=36200;f[v+56>>2]=36220;_=0;ue(180,u|0);b=_;_=0;do{if(b&1)s=ze()|0;else{f[u>>2]=36236;i=v+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[v+52>>2]=16;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;_=0;ce(63,u|0,k|0);b=_;_=0;if(b&1){s=ze()|0;Oh(k);Oh(i);cd(u);break}Oh(k);_=0;s=ke(28,v|0,49029,57)|0;k=_;_=0;if(!(k&1)?(_=0,pe(36,s|0,0)|0,k=_,_=0,!(k&1)):0){o=He(16)|0;_=0;ce(64,m|0,u|0);k=_;_=0;if(!(k&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,o|0,3,35648,m|0);k=_;_=0;if(k&1)l=1;else{_=0;Ae(6,o|0,824,96);_=0;l=0}s=ze()|0;Oh(m);if(!l){m=s;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}}else s=ze()|0;je(o|0);m=s;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}m=ze()|0;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}}while(0);v=s;nd(h);$e(v|0)}}while(0);l=e+20|0;if((f[s+28>>2]|0)!=536870912){v=f[l>>2]|0;Or(e,v,r,n,a);c=b;return}pr(f[l>>2]|0,re(d,f[s+16>>2]|0)|0);v=f[l>>2]|0;Or(e,v,r,n,a);c=b;return}function Ir(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;d=e+4|0;o=f[d>>2]|0;e:do{switch(f[o+16>>2]|0){case 3:{if((f[o+24>>2]|0)==2){if((a|0)<=0)break e;o=e+40|0;e=0;do{h=f[o>>2]|0;c=s[i+(e*6|0)+2>>1]<<h;l=(c+32768+(s[i+(e*6|0)+4>>1]<<h)&65535)>>>h&65535;n[r+(e*6|0)>>1]=((s[i+(e*6|0)>>1]<<h)+32768+c&65535)>>>h;n[r+(e*6|0)+2>>1]=(c&65535)>>>h;n[r+(e*6|0)+4>>1]=l;e=e+1|0}while((e|0)!=(a|0))}else{u=(a|0)<(l|0)?a:l;if((u|0)<=0)break e;c=l<<1;o=e+40|0;e=0;do{b=f[o>>2]|0;k=s[i+(e+l<<1)>>1]<<b;h=(k+32768+(s[i+(e+c<<1)>>1]<<b)&65535)>>>b&65535;n[r+(e*6|0)>>1]=((s[i+(e<<1)>>1]<<b)+32768+k&65535)>>>b;n[r+(e*6|0)+2>>1]=(k&65535)>>>b;n[r+(e*6|0)+4>>1]=h;e=e+1|0}while((e|0)!=(u|0))}break}case 4:{if((f[o+24>>2]|0)==1?(h=(a|0)<(l|0)?a:l,(h|0)>0):0){c=l<<1;o=e+40|0;e=l*3|0;u=0;do{w=f[o>>2]|0;m=s[i+(u+l<<1)>>1]<<w;k=((s[i+(u<<1)>>1]<<w)+32768+m&65535)>>>w;b=(m+32768+(s[i+(u+c<<1)>>1]<<w)&65535)>>>w;_=n[i+(u+e<<1)>>1]|0;w=Sm((m&65535)>>>w&65535|0,0,16)|0;b=b|P;_=Sm(_&65535|0,0,48)|0;_=w|k&65535|_;b=b&65535|P;k=r+(u<<3)|0;w=k;n[w>>1]=_;n[w+2>>1]=_>>>16;k=k+4|0;n[k>>1]=b;n[k+2>>1]=b>>>16;u=u+1|0}while((u|0)!=(h|0))}break}default:{}}}while(0);o=f[d>>2]|0;if(!(t[o+32>>0]|0))return;u=f[o+16>>2]|0;if((a|0)<=0)return;o=r;e=0;while(1){m=o+4|0;_=n[o>>1]|0;n[o>>1]=n[m>>1]|0;n[m>>1]=_;e=e+1|0;if((e|0)==(a|0))break;else o=o+(u<<1)|0}return}function Dr(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0;b=c;c=c+16|0;h=b;d=f[e>>2]|0;if(!d){e=0;c=b;return e|0}k=i;o=n-k|0;u=a+12|0;l=f[u>>2]|0;o=(l|0)>(o|0)?l-o|0:0;l=r;a=l-k|0;if((a|0)>0?(uM[f[(f[d>>2]|0)+48>>2]&63](d,i,a)|0)!=(a|0):0){f[e>>2]=0;k=0;c=b;return k|0}do{if((o|0)>0){Ph(h,o,s);_=0;a=ke(f[(f[d>>2]|0)+48>>2]|0,d|0,((t[h>>0]&1)==0?h+1|0:f[h+8>>2]|0)|0,o|0)|0;k=_;_=0;if(k&1){k=ze()|0;Oh(h);$e(k|0)}if((a|0)==(o|0)){Oh(h);break}f[e>>2]=0;Oh(h);k=0;c=b;return k|0}}while(0);n=n-l|0;if((n|0)>0?(uM[f[(f[d>>2]|0)+48>>2]&63](d,r,n)|0)!=(n|0):0){f[e>>2]=0;k=0;c=b;return k|0}f[u>>2]=0;k=d;c=b;return k|0}function Nr(e){e=e|0;f[e>>2]=36236;Oh(e+32|0);cd(e);return}function Fr(e){e=e|0;f[e>>2]=36236;Oh(e+32|0);cd(e);Ip(e);return}function Ur(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0;l=i+44|0;o=f[l>>2]|0;c=i+24|0;h=f[c>>2]|0;if(o>>>0<h>>>0){f[l>>2]=h;o=h}u=o;l=s&24;if(!l){i=e;f[i>>2]=0;f[i+4>>2]=0;i=e+8|0;f[i>>2]=-1;f[i+4>>2]=-1;return}if((a|0)==1&(l|0)==24){i=e;f[i>>2]=0;f[i+4>>2]=0;i=e+8|0;f[i>>2]=-1;f[i+4>>2]=-1;return}e:do{switch(a|0){case 0:{l=0;a=0;break}case 1:if(!(s&8)){a=h-(f[i+20>>2]|0)|0;l=a;a=((a|0)<0)<<31>>31;break e}else{a=(f[i+12>>2]|0)-(f[i+8>>2]|0)|0;l=a;a=((a|0)<0)<<31>>31;break e}case 2:{l=i+32|0;if(!(t[l>>0]&1))l=l+1|0;else l=f[i+40>>2]|0;a=o-l|0;l=a;a=((a|0)<0)<<31>>31;break}default:{i=e;f[i>>2]=0;f[i+4>>2]=0;i=e+8|0;f[i>>2]=-1;f[i+4>>2]=-1;return}}}while(0);a=Mm(l|0,a|0,r|0,n|0)|0;r=P;if((r|0)>=0){l=i+32|0;if(!(t[l>>0]&1))l=l+1|0;else l=f[i+40>>2]|0;n=o-l|0;o=((n|0)<0)<<31>>31;if(!((o|0)<(r|0)|(o|0)==(r|0)&n>>>0<a>>>0)){l=s&8;if(!((a|0)==0&(r|0)==0)){if((l|0)!=0?(f[i+12>>2]|0)==0:0){i=e;f[i>>2]=0;f[i+4>>2]=0;i=e+8|0;f[i>>2]=-1;f[i+4>>2]=-1;return}if((s&16|0)!=0&(h|0)==0){i=e;f[i>>2]=0;f[i+4>>2]=0;i=e+8|0;f[i>>2]=-1;f[i+4>>2]=-1;return}}if(l){f[i+12>>2]=(f[i+8>>2]|0)+a;f[i+16>>2]=u}if(s&16)f[c>>2]=(f[i+20>>2]|0)+a;i=e;f[i>>2]=0;f[i+4>>2]=0;i=e+8|0;f[i>>2]=a;f[i+4>>2]=r;return}}i=e;f[i>>2]=0;f[i+4>>2]=0;i=e+8|0;f[i>>2]=-1;f[i+4>>2]=-1;return}function jr(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;r=r+8|0;hM[f[(f[i>>2]|0)+16>>2]&15](e,i,f[r>>2]|0,f[r+4>>2]|0,0,t);return}function Hr(e){e=e|0;var i=0,r=0,t=0,n=0;i=e+44|0;r=f[i>>2]|0;t=f[e+24>>2]|0;if(r>>>0<t>>>0){f[i>>2]=t;r=t}if(!(f[e+48>>2]&8)){e=-1;return e|0}n=e+16|0;i=f[n>>2]|0;t=e+12|0;if(i>>>0<r>>>0){t=f[t>>2]|0;f[n>>2]=r;i=r}else t=f[t>>2]|0;if(t>>>0>=i>>>0){e=-1;return e|0}e=a[t>>0]|0;return e|0}function zr(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0;n=e+44|0;r=f[n>>2]|0;a=f[e+24>>2]|0;if(r>>>0<a>>>0){f[n>>2]=a;r=a}o=e+8|0;n=f[o>>2]|0;u=e+12|0;s=f[u>>2]|0;l=n;if(n>>>0>=s>>>0){e=-1;return e|0}if((i|0)==-1){f[o>>2]=n;f[u>>2]=s+-1;f[e+16>>2]=r;e=0;return e|0}if(!(f[e+48>>2]&16)){a=i&255;n=s+-1|0;if(a<<24>>24!=(t[n>>0]|0)){e=-1;return e|0}}else{a=i&255;n=s+-1|0}f[o>>2]=l;f[u>>2]=n;f[e+16>>2]=r;t[n>>0]=a;e=i;return e|0}function Yr(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0;v=c;c=c+16|0;d=v;if((i|0)==-1){e=0;c=v;return e|0}b=e+12|0;k=e+8|0;w=(f[b>>2]|0)-(f[k>>2]|0)|0;m=e+24|0;r=f[m>>2]|0;h=e+28|0;n=f[h>>2]|0;do{if((r|0)==(n|0)){o=e+48|0;if(!(f[o>>2]&16)){e=-1;c=v;return e|0}u=e+20|0;l=f[u>>2]|0;a=r-l|0;s=e+44|0;l=(f[s>>2]|0)-l|0;n=e+32|0;_=0;ce(67,n|0,0);r=_;_=0;if(!(r&1)){if(!(t[n>>0]&1))r=10;else r=(f[n>>2]&-2)+-1|0;_=0;Ae(8,n|0,r|0,0);r=_;_=0;if(!(r&1)){r=t[n>>0]|0;if(!(r&1)){n=n+1|0;r=(r&255)>>>1}else{n=f[e+40>>2]|0;r=f[e+36>>2]|0}p=n+r|0;f[u>>2]=n;f[h>>2]=p;u=n+a|0;f[m>>2]=u;r=n+l|0;f[s>>2]=r;n=p;break}}p=ze(0)|0;Ze(p|0)|0;Qe();p=-1;c=v;return p|0}else{p=e+44|0;o=e+48|0;s=p;u=r;r=f[p>>2]|0}}while(0);l=u+1|0;f[d>>2]=l;a=f[(l>>>0<r>>>0?s:d)>>2]|0;f[s>>2]=a;if(f[o>>2]&8){r=e+32|0;if(!(t[r>>0]&1))r=r+1|0;else r=f[e+40>>2]|0;f[k>>2]=r;f[b>>2]=r+w;f[e+16>>2]=a}if((u|0)==(n|0)){p=kM[f[(f[e>>2]|0)+52>>2]&63](e,i&255)|0;c=v;return p|0}else{f[m>>2]=l;t[u>>0]=i;p=i&255;c=v;return p|0}return 0}function qr(e){e=e|0;var i=0,r=0;f[e>>2]=36200;i=e+56|0;f[i>>2]=36220;r=e+4|0;f[r>>2]=36236;Oh(e+36|0);cd(r);nd(i);return}function Xr(e){e=e|0;var i=0,r=0;f[e>>2]=36200;i=e+56|0;f[i>>2]=36220;r=e+4|0;f[r>>2]=36236;Oh(e+36|0);cd(r);nd(i);Ip(e);return}function Vr(e){e=e|0;var i=0,r=0,t=0,n=0;n=f[(f[e>>2]|0)+-12>>2]|0;i=e+n|0;f[i>>2]=36200;r=e+(n+56)|0;f[r>>2]=36220;t=e+(n+4)|0;f[t>>2]=36236;Oh(e+(n+36)|0);cd(t);nd(r);Ip(i);return}function Gr(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=36388;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}t=f[e+8>>2]|0;if(!t)return;i=e+12|0;r=f[i>>2]|0;if((r|0)!=(t|0))f[i>>2]=r+(~((r+-2-t|0)>>>1)<<1);Ip(t);return}function Kr(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=36388;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}t=f[e+8>>2]|0;if(!t){Ip(e);return}i=e+12|0;r=f[i>>2]|0;if((r|0)!=(t|0))f[i>>2]=r+(~((r+-2-t|0)>>>1)<<1);Ip(t);Ip(e);return}function Wr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;a=e+36|0;if(!(f[a>>2]|0)){o=e+40|0;$r(e,i,f[o>>2]|0,r,n);f[o>>2]=(f[o>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}u=e+4|0;s=r<<1;l=re(s,f[(f[u>>2]|0)+16>>2]|0)|0;o=e+20|0;$r(e,i,f[o>>2]|0,r,n);i=f[u>>2]|0;if((f[i+28>>2]|0)==536870912)pr(f[o>>2]|0,re(s,f[i+16>>2]|0)|0);u=f[a>>2]|0;if((uM[f[(f[u>>2]|0)+48>>2]&63](u,f[o>>2]|0,l)|0)==(l|0))return;i=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,i|0,3,35648);u=_;_=0;if(u&1){u=ze()|0;je(i|0);$e(u|0)}else bi(i|0,824,96)}function Zr(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0;n=f[e+36>>2]|0;if(!n){n=e+40|0;Jr(e,f[n>>2]|0,i,r,t);f[n>>2]=(f[n>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}else{Qr(e,n,i,r,t);return}}function Jr(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0;c=e+4|0;o=f[c>>2]|0;do{if(!(t[o+32>>0]|0))h=i;else{e=e+8|0;Am(f[e>>2]|0,i|0,a*6|0)|0;o=f[c>>2]|0;u=f[o+16>>2]|0;if((a|0)<=0){h=f[e>>2]|0;break}e=f[e>>2]|0;o=e;i=0;while(1){h=o+4|0;d=n[o>>1]|0;n[o>>1]=n[h>>1]|0;n[h>>1]=d;i=i+1|0;if((i|0)==(a|0))break;else o=o+(u<<1)|0}h=e;o=f[c>>2]|0}}while(0);switch(f[o+16>>2]|0){case 3:{if((f[o+24>>2]|0)==2){if((a|0)>0)o=0;else return;do{c=s[h+(o*6|0)+2>>1]|0;l=32768-c+(s[h+(o*6|0)+4>>1]|0)|0;d=(s[h+(o*6|0)>>1]|0)-c+32768|0;n[r+(o*6|0)>>1]=c+49152+(((l&65535)+(d&65535)|0)>>>2);n[r+(o*6|0)+2>>1]=l;n[r+(o*6|0)+4>>1]=d;o=o+1|0}while((o|0)!=(a|0));return}o=(l|0)<(a|0)?l:a;if((o|0)<=0)return;e=l<<1;i=0;do{c=s[h+(i*6|0)+2>>1]|0;a=32768-c+(s[h+(i*6|0)+4>>1]|0)|0;d=(s[h+(i*6|0)>>1]|0)-c+32768|0;n[r+(i<<1)>>1]=c+49152+(((a&65535)+(d&65535)|0)>>>2);n[r+(i+l<<1)>>1]=a;n[r+(i+e<<1)>>1]=d;i=i+1|0}while((i|0)!=(o|0));return}case 4:{if((f[o+24>>2]|0)!=1)return;o=(l|0)<(a|0)?l:a;if((o|0)<=0)return;e=l<<1;i=l*3|0;u=0;do{d=n[h+(u<<3)+6>>1]|0;b=s[h+(u<<3)+2>>1]|0;c=32768-b+(s[h+(u<<3)+4>>1]|0)|0;a=(s[h+(u<<3)>>1]|0)-b+32768|0;n[r+(u<<1)>>1]=b+49152+(((c&65535)+(a&65535)|0)>>>2);n[r+(u+l<<1)>>1]=c;n[r+(u+e<<1)>>1]=a;n[r+(u+i<<1)>>1]=d;u=u+1|0}while((u|0)!=(o|0));return}default:return}}function Qr(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0;b=c;c=c+176|0;k=b+152|0;v=b+16|0;m=b;u=e+4|0;s=f[u>>2]|0;d=n<<1;l=re(d,f[s+16>>2]|0)|0;do{if(l){o=e+20|0;while(1){s=uM[f[(f[i>>2]|0)+32>>2]&63](i,f[o>>2]|0,l)|0;if(!s)break;if((l|0)==(s|0)){h=26;break}else l=l-s|0}if((h|0)==26){s=f[u>>2]|0;break}h=v+56|0;u=v+4|0;f[v>>2]=36160;f[h>>2]=36180;_=0;ce(62,v+56|0,u|0);b=_;_=0;if(b&1){v=ze()|0;nd(h);$e(v|0)}f[v+128>>2]=0;f[v+132>>2]=-1;f[v>>2]=36200;f[v+56>>2]=36220;_=0;ue(180,u|0);b=_;_=0;do{if(b&1)s=ze()|0;else{f[u>>2]=36236;i=v+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[v+52>>2]=16;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;_=0;ce(63,u|0,k|0);b=_;_=0;if(b&1){s=ze()|0;Oh(k);Oh(i);cd(u);break}Oh(k);_=0;s=ke(28,v|0,49029,57)|0;k=_;_=0;if(!(k&1)?(_=0,pe(36,s|0,0)|0,k=_,_=0,!(k&1)):0){o=He(16)|0;_=0;ce(64,m|0,u|0);k=_;_=0;if(!(k&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,o|0,3,35648,m|0);k=_;_=0;if(k&1)l=1;else{_=0;Ae(6,o|0,824,96);_=0;l=0}s=ze()|0;Oh(m);if(!l){m=s;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}}else s=ze()|0;je(o|0);m=s;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}m=ze()|0;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}}while(0);v=s;nd(h);$e(v|0)}}while(0);l=e+20|0;if((f[s+28>>2]|0)!=536870912){v=f[l>>2]|0;Jr(e,v,r,n,a);c=b;return}pr(f[l>>2]|0,re(d,f[s+16>>2]|0)|0);v=f[l>>2]|0;Jr(e,v,r,n,a);c=b;return}function $r(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0;h=e+4|0;e=f[h>>2]|0;e:do{switch(f[e+16>>2]|0){case 3:{if((f[e+24>>2]|0)==2){if((a|0)>0)e=0;else break e;while(1){c=s[i+(e*6|0)+2>>1]|0;u=s[i+(e*6|0)+4>>1]|0;l=(s[i+(e*6|0)>>1]|0)-((u+c|0)>>>2)+16384|0;n[r+(e*6|0)>>1]=u+32768+l;n[r+(e*6|0)+2>>1]=l;n[r+(e*6|0)+4>>1]=c+32768+l;e=e+1|0;if((e|0)==(a|0))break e}}e=(a|0)<(l|0)?a:l;if((e|0)>0){o=l<<1;u=0;do{d=s[i+(u+l<<1)>>1]|0;b=s[i+(u+o<<1)>>1]|0;c=(s[i+(u<<1)>>1]|0)-((b+d|0)>>>2)+16384|0;n[r+(u*6|0)>>1]=b+32768+c;n[r+(u*6|0)+2>>1]=c;n[r+(u*6|0)+4>>1]=d+32768+c;u=u+1|0}while((u|0)!=(e|0))}break}case 4:{if((f[e+24>>2]|0)==1?(c=(a|0)<(l|0)?a:l,(c|0)>0):0){e=l<<1;o=l*3|0;u=0;do{d=s[i+(u+l<<1)>>1]|0;k=s[i+(u+e<<1)>>1]|0;b=(s[i+(u<<1)>>1]|0)-((k+d|0)>>>2)+16384|0;w=n[i+(u+o<<1)>>1]|0;_=Sm(b&65535|0,0,16)|0;d=d+32768+b|P;w=Sm(w&65535|0,0,48)|0;w=_|k+32768+b&65535|w;d=d&65535|P;b=r+(u<<3)|0;k=b;n[k>>1]=w;n[k+2>>1]=w>>>16;b=b+4|0;n[b>>1]=d;n[b+2>>1]=d>>>16;u=u+1|0}while((u|0)!=(c|0))}break}default:{}}}while(0);e=f[h>>2]|0;if(!(t[e+32>>0]|0))return;u=f[e+16>>2]|0;if((a|0)<=0)return;e=r;o=0;while(1){_=e+4|0;w=n[e>>1]|0;n[e>>1]=n[_>>1]|0;n[_>>1]=w;o=o+1|0;if((o|0)==(a|0))break;else e=e+(u<<1)|0}return}function et(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=36412;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}t=f[e+8>>2]|0;if(!t)return;i=e+12|0;r=f[i>>2]|0;if((r|0)!=(t|0))f[i>>2]=r+(~((r+-2-t|0)>>>1)<<1);Ip(t);return}function it(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=36412;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}t=f[e+8>>2]|0;if(!t){Ip(e);return}i=e+12|0;r=f[i>>2]|0;if((r|0)!=(t|0))f[i>>2]=r+(~((r+-2-t|0)>>>1)<<1);Ip(t);Ip(e);return}function rt(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;a=e+36|0;if(!(f[a>>2]|0)){o=e+40|0;at(e,i,f[o>>2]|0,r,n);f[o>>2]=(f[o>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}u=e+4|0;s=r<<1;l=re(s,f[(f[u>>2]|0)+16>>2]|0)|0;o=e+20|0;at(e,i,f[o>>2]|0,r,n);i=f[u>>2]|0;if((f[i+28>>2]|0)==536870912)pr(f[o>>2]|0,re(s,f[i+16>>2]|0)|0);u=f[a>>2]|0;if((uM[f[(f[u>>2]|0)+48>>2]&63](u,f[o>>2]|0,l)|0)==(l|0))return;i=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,i|0,3,35648);u=_;_=0;if(u&1){u=ze()|0;je(i|0);$e(u|0)}else bi(i|0,824,96)}function tt(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0;n=f[e+36>>2]|0;if(!n){n=e+40|0;nt(e,f[n>>2]|0,i,r,t);f[n>>2]=(f[n>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}else{ft(e,n,i,r,t);return}}function nt(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,k=0;c=e+4|0;o=f[c>>2]|0;do{if(!(t[o+32>>0]|0))h=i;else{e=e+8|0;Am(f[e>>2]|0,i|0,a*6|0)|0;o=f[c>>2]|0;u=f[o+16>>2]|0;if((a|0)<=0){h=f[e>>2]|0;break}e=f[e>>2]|0;o=e;i=0;while(1){h=o+4|0;d=n[o>>1]|0;n[o>>1]=n[h>>1]|0;n[h>>1]=d;i=i+1|0;if((i|0)==(a|0))break;else o=o+(u<<1)|0}h=e;o=f[c>>2]|0}}while(0);switch(f[o+16>>2]|0){case 3:{if((f[o+24>>2]|0)==2){if((a|0)>0)o=0;else return;do{u=s[h+(o*6|0)>>1]|0;l=n[h+(o*6|0)+2>>1]|0;c=l&65535;d=(s[h+(o*6|0)+4>>1]|0)+32768-((c+u|0)>>>1)&65535;n[r+(o*6|0)>>1]=u+32768-c;n[r+(o*6|0)+2>>1]=l;n[r+(o*6|0)+4>>1]=d;o=o+1|0}while((o|0)!=(a|0));return}o=(l|0)<(a|0)?l:a;if((o|0)<=0)return;e=l<<1;i=0;do{a=n[h+(i*6|0)+2>>1]|0;u=s[h+(i*6|0)>>1]|0;c=a&65535;d=(s[h+(i*6|0)+4>>1]|0)+32768-((c+u|0)>>>1)&65535;n[r+(i<<1)>>1]=u+32768-c;n[r+(i+l<<1)>>1]=a;n[r+(i+e<<1)>>1]=d;i=i+1|0}while((i|0)!=(o|0));return}case 4:{if((f[o+24>>2]|0)!=1)return;o=(l|0)<(a|0)?l:a;if((o|0)<=0)return;e=l<<1;i=l*3|0;u=0;do{c=n[h+(u<<3)+2>>1]|0;d=n[h+(u<<3)+6>>1]|0;k=s[h+(u<<3)>>1]|0;b=c&65535;a=(s[h+(u<<3)+4>>1]|0)+32768-((b+k|0)>>>1)&65535;n[r+(u<<1)>>1]=k+32768-b;n[r+(u+l<<1)>>1]=c;n[r+(u+e<<1)>>1]=a;n[r+(u+i<<1)>>1]=d;u=u+1|0}while((u|0)!=(o|0));return}default:return}}function ft(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0;b=c;c=c+176|0;k=b+152|0;v=b+16|0;m=b;u=e+4|0;s=f[u>>2]|0;d=n<<1;l=re(d,f[s+16>>2]|0)|0;do{if(l){o=e+20|0;while(1){s=uM[f[(f[i>>2]|0)+32>>2]&63](i,f[o>>2]|0,l)|0;if(!s)break;if((l|0)==(s|0)){h=26;break}else l=l-s|0}if((h|0)==26){s=f[u>>2]|0;break}h=v+56|0;u=v+4|0;f[v>>2]=36160;f[h>>2]=36180;_=0;ce(62,v+56|0,u|0);b=_;_=0;if(b&1){v=ze()|0;nd(h);$e(v|0)}f[v+128>>2]=0;f[v+132>>2]=-1;f[v>>2]=36200;f[v+56>>2]=36220;_=0;ue(180,u|0);b=_;_=0;do{if(b&1)s=ze()|0;else{f[u>>2]=36236;i=v+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[v+52>>2]=16;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;_=0;ce(63,u|0,k|0);b=_;_=0;if(b&1){s=ze()|0;Oh(k);Oh(i);cd(u);break}Oh(k);_=0;s=ke(28,v|0,49029,57)|0;k=_;_=0;if(!(k&1)?(_=0,pe(36,s|0,0)|0,k=_,_=0,!(k&1)):0){o=He(16)|0;_=0;ce(64,m|0,u|0);k=_;_=0;if(!(k&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,o|0,3,35648,m|0);k=_;_=0;if(k&1)l=1;else{_=0;Ae(6,o|0,824,96);_=0;l=0}s=ze()|0;Oh(m);if(!l){m=s;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}}else s=ze()|0;je(o|0);m=s;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}m=ze()|0;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}}while(0);v=s;nd(h);$e(v|0)}}while(0);l=e+20|0;if((f[s+28>>2]|0)!=536870912){v=f[l>>2]|0;nt(e,v,r,n,a);c=b;return}pr(f[l>>2]|0,re(d,f[s+16>>2]|0)|0);v=f[l>>2]|0;nt(e,v,r,n,a);c=b;return}function at(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0;h=e+4|0;e=f[h>>2]|0;e:do{switch(f[e+16>>2]|0){case 3:{if((f[e+24>>2]|0)==2){if((a|0)>0)e=0;else break e;while(1){c=n[i+(e*6|0)+2>>1]|0;l=c&65535;u=(s[i+(e*6|0)>>1]|0)+32768+l|0;l=(s[i+(e*6|0)+4>>1]|0)+32768+(((u&65535)+l|0)>>>1)&65535;n[r+(e*6|0)>>1]=u;n[r+(e*6|0)+2>>1]=c;n[r+(e*6|0)+4>>1]=l;e=e+1|0;if((e|0)==(a|0))break e}}e=(a|0)<(l|0)?a:l;if((e|0)>0){o=l<<1;u=0;do{d=n[i+(u+l<<1)>>1]|0;c=d&65535;b=(s[i+(u<<1)>>1]|0)+32768+c|0;c=(s[i+(u+o<<1)>>1]|0)+32768+(((b&65535)+c|0)>>>1)&65535;n[r+(u*6|0)>>1]=b;n[r+(u*6|0)+2>>1]=d;n[r+(u*6|0)+4>>1]=c;u=u+1|0}while((u|0)!=(e|0))}break}case 4:{if((f[e+24>>2]|0)==1?(c=(a|0)<(l|0)?a:l,(c|0)>0):0){e=l<<1;o=l*3|0;u=0;do{b=n[i+(u+l<<1)>>1]|0;d=b&65535;k=(s[i+(u<<1)>>1]|0)+32768+d&65535;d=(s[i+(u+e<<1)>>1]|0)+32768+((k+d|0)>>>1)|0;w=n[i+(u+o<<1)>>1]|0;b=Sm(b&65535|0,0,16)|0;d=P|d;w=Sm(w&65535|0,0,48)|0;w=k|b|w;d=d&65535|P;b=r+(u<<3)|0;k=b;n[k>>1]=w;n[k+2>>1]=w>>>16;b=b+4|0;n[b>>1]=d;n[b+2>>1]=d>>>16;u=u+1|0}while((u|0)!=(c|0))}break}default:{}}}while(0);e=f[h>>2]|0;if(!(t[e+32>>0]|0))return;u=f[e+16>>2]|0;if((a|0)<=0)return;e=r;o=0;while(1){w=e+4|0;k=n[e>>1]|0;n[e>>1]=n[w>>1]|0;n[w>>1]=k;o=o+1|0;if((o|0)==(a|0))break;else e=e+(u<<1)|0}return}function st(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=36436;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}t=f[e+8>>2]|0;if(!t)return;i=e+12|0;r=f[i>>2]|0;if((r|0)!=(t|0))f[i>>2]=r+(~((r+-2-t|0)>>>1)<<1);Ip(t);return}function lt(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=36436;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}t=f[e+8>>2]|0;if(!t){Ip(e);return}i=e+12|0;r=f[i>>2]|0;if((r|0)!=(t|0))f[i>>2]=r+(~((r+-2-t|0)>>>1)<<1);Ip(t);Ip(e);return}function ot(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;a=e+36|0;if(!(f[a>>2]|0)){o=e+40|0;dt(e,i,f[o>>2]|0,r,n);f[o>>2]=(f[o>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}u=e+4|0;s=r<<1;l=re(s,f[(f[u>>2]|0)+16>>2]|0)|0;o=e+20|0;dt(e,i,f[o>>2]|0,r,n);i=f[u>>2]|0;if((f[i+28>>2]|0)==536870912)pr(f[o>>2]|0,re(s,f[i+16>>2]|0)|0);u=f[a>>2]|0;if((uM[f[(f[u>>2]|0)+48>>2]&63](u,f[o>>2]|0,l)|0)==(l|0))return;i=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,i|0,3,35648);u=_;_=0;if(u&1){u=ze()|0;je(i|0);$e(u|0)}else bi(i|0,824,96)}function ut(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0;n=f[e+36>>2]|0;if(!n){n=e+40|0;ct(e,f[n>>2]|0,i,r,t);f[n>>2]=(f[n>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}else{ht(e,n,i,r,t);return}}function ct(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0;c=e+4|0;o=f[c>>2]|0;do{if(!(t[o+32>>0]|0))h=i;else{e=e+8|0;Am(f[e>>2]|0,i|0,a*6|0)|0;o=f[c>>2]|0;u=f[o+16>>2]|0;if((a|0)<=0){h=f[e>>2]|0;break}e=f[e>>2]|0;o=e;i=0;while(1){h=o+4|0;d=n[o>>1]|0;n[o>>1]=n[h>>1]|0;n[h>>1]=d;i=i+1|0;if((i|0)==(a|0))break;else o=o+(u<<1)|0}h=e;o=f[c>>2]|0}}while(0);switch(f[o+16>>2]|0){case 3:{if((f[o+24>>2]|0)==2){if((a|0)>0)o=0;else return;do{l=n[h+(o*6|0)+2>>1]|0;c=l&65535;d=32768-c+(s[h+(o*6|0)+4>>1]|0)&65535;n[r+(o*6|0)>>1]=(s[h+(o*6|0)>>1]|0)+32768-c;n[r+(o*6|0)+2>>1]=l;n[r+(o*6|0)+4>>1]=d;o=o+1|0}while((o|0)!=(a|0));return}o=(l|0)<(a|0)?l:a;if((o|0)<=0)return;e=l<<1;i=0;do{a=n[h+(i*6|0)+2>>1]|0;c=a&65535;d=32768-c+(s[h+(i*6|0)+4>>1]|0)&65535;n[r+(i<<1)>>1]=(s[h+(i*6|0)>>1]|0)+32768-c;n[r+(i+l<<1)>>1]=a;n[r+(i+e<<1)>>1]=d;i=i+1|0}while((i|0)!=(o|0));return}case 4:{if((f[o+24>>2]|0)!=1)return;o=(l|0)<(a|0)?l:a;if((o|0)<=0)return;e=l<<1;i=l*3|0;u=0;do{c=n[h+(u<<3)+2>>1]|0;d=n[h+(u<<3)+6>>1]|0;b=c&65535;a=32768-b+(s[h+(u<<3)+4>>1]|0)&65535;n[r+(u<<1)>>1]=(s[h+(u<<3)>>1]|0)+32768-b;n[r+(u+l<<1)>>1]=c;n[r+(u+e<<1)>>1]=a;n[r+(u+i<<1)>>1]=d;u=u+1|0}while((u|0)!=(o|0));return}default:return}}function ht(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0;b=c;c=c+176|0;k=b+152|0;v=b+16|0;m=b;u=e+4|0;s=f[u>>2]|0;d=n<<1;l=re(d,f[s+16>>2]|0)|0;do{if(l){o=e+20|0;while(1){s=uM[f[(f[i>>2]|0)+32>>2]&63](i,f[o>>2]|0,l)|0;if(!s)break;if((l|0)==(s|0)){h=26;break}else l=l-s|0}if((h|0)==26){s=f[u>>2]|0;break}h=v+56|0;u=v+4|0;f[v>>2]=36160;f[h>>2]=36180;_=0;ce(62,v+56|0,u|0);b=_;_=0;if(b&1){v=ze()|0;nd(h);$e(v|0)}f[v+128>>2]=0;f[v+132>>2]=-1;f[v>>2]=36200;f[v+56>>2]=36220;_=0;ue(180,u|0);b=_;_=0;do{if(b&1)s=ze()|0;else{f[u>>2]=36236;i=v+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[v+52>>2]=16;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;_=0;ce(63,u|0,k|0);b=_;_=0;if(b&1){s=ze()|0;Oh(k);Oh(i);cd(u);break}Oh(k);_=0;s=ke(28,v|0,49029,57)|0;k=_;_=0;if(!(k&1)?(_=0,pe(36,s|0,0)|0,k=_,_=0,!(k&1)):0){o=He(16)|0;_=0;ce(64,m|0,u|0);k=_;_=0;if(!(k&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,o|0,3,35648,m|0);k=_;_=0;if(k&1)l=1;else{_=0;Ae(6,o|0,824,96);_=0;l=0}s=ze()|0;Oh(m);if(!l){m=s;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}}else s=ze()|0;je(o|0);m=s;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}m=ze()|0;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}}while(0);v=s;nd(h);$e(v|0)}}while(0);l=e+20|0;if((f[s+28>>2]|0)!=536870912){v=f[l>>2]|0;ct(e,v,r,n,a);c=b;return}pr(f[l>>2]|0,re(d,f[s+16>>2]|0)|0);v=f[l>>2]|0;ct(e,v,r,n,a);c=b;return}function dt(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0;h=e+4|0;e=f[h>>2]|0;e:do{switch(f[e+16>>2]|0){case 3:{if((f[e+24>>2]|0)==2){if((a|0)>0)e=0;else break e;while(1){c=n[i+(e*6|0)+2>>1]|0;u=c&65535;l=u+32768+(s[i+(e*6|0)+4>>1]|0)&65535;n[r+(e*6|0)>>1]=(s[i+(e*6|0)>>1]|0)+32768+u;n[r+(e*6|0)+2>>1]=c;n[r+(e*6|0)+4>>1]=l;e=e+1|0;if((e|0)==(a|0))break e}}e=(a|0)<(l|0)?a:l;if((e|0)>0){o=l<<1;u=0;do{d=n[i+(u+l<<1)>>1]|0;b=d&65535;c=b+32768+(s[i+(u+o<<1)>>1]|0)&65535;n[r+(u*6|0)>>1]=(s[i+(u<<1)>>1]|0)+32768+b;n[r+(u*6|0)+2>>1]=d;n[r+(u*6|0)+4>>1]=c;u=u+1|0}while((u|0)!=(e|0))}break}case 4:{if((f[e+24>>2]|0)==1?(c=(a|0)<(l|0)?a:l,(c|0)>0):0){e=l<<1;o=l*3|0;u=0;do{b=n[i+(u+l<<1)>>1]|0;d=b&65535;k=(s[i+(u<<1)>>1]|0)+32768+d|0;d=d+32768+(s[i+(u+e<<1)>>1]|0)|0;w=n[i+(u+o<<1)>>1]|0;b=Sm(b&65535|0,0,16)|0;d=P|d;w=Sm(w&65535|0,0,48)|0;w=k&65535|b|w;d=d&65535|P;b=r+(u<<3)|0;k=b;n[k>>1]=w;n[k+2>>1]=w>>>16;b=b+4|0;n[b>>1]=d;n[b+2>>1]=d>>>16;u=u+1|0}while((u|0)!=(c|0))}break}default:{}}}while(0);e=f[h>>2]|0;if(!(t[e+32>>0]|0))return;u=f[e+16>>2]|0;if((a|0)<=0)return;e=r;o=0;while(1){w=e+4|0;k=n[e>>1]|0;n[e>>1]=n[w>>1]|0;n[w>>1]=k;o=o+1|0;if((o|0)==(a|0))break;else e=e+(u<<1)|0}return}function bt(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=36460;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}t=f[e+8>>2]|0;if(!t)return;i=e+12|0;r=f[i>>2]|0;if((r|0)!=(t|0))f[i>>2]=r+(~((r+-2-t|0)>>>1)<<1);Ip(t);return}function kt(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=36460;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}t=f[e+8>>2]|0;if(!t){Ip(e);return}i=e+12|0;r=f[i>>2]|0;if((r|0)!=(t|0))f[i>>2]=r+(~((r+-2-t|0)>>>1)<<1);Ip(t);Ip(e);return}function wt(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;a=e+36|0;if(!(f[a>>2]|0)){o=e+40|0;pt(e,i,f[o>>2]|0,r,n);f[o>>2]=(f[o>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}u=e+4|0;s=r<<1;l=re(s,f[(f[u>>2]|0)+16>>2]|0)|0;o=e+20|0;pt(e,i,f[o>>2]|0,r,n);i=f[u>>2]|0;if((f[i+28>>2]|0)==536870912)pr(f[o>>2]|0,re(s,f[i+16>>2]|0)|0);u=f[a>>2]|0;if((uM[f[(f[u>>2]|0)+48>>2]&63](u,f[o>>2]|0,l)|0)==(l|0))return;i=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,i|0,3,35648);u=_;_=0;if(u&1){u=ze()|0;je(i|0);$e(u|0)}else bi(i|0,824,96)}function _t(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0;n=f[e+36>>2]|0;if(!n){n=e+40|0;mt(e,f[n>>2]|0,i,r,t);f[n>>2]=(f[n>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}else{vt(e,n,i,r,t);return}}function mt(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0;u=e+4|0;l=f[u>>2]|0;do{if(!(t[l+32>>0]|0))c=i;else{e=e+8|0;Am(f[e>>2]|0,i|0,a*6|0)|0;l=f[u>>2]|0;o=f[l+16>>2]|0;if((a|0)<=0){c=f[e>>2]|0;break}e=f[e>>2]|0;l=e;i=0;while(1){c=l+4|0;h=n[l>>1]|0;n[l>>1]=n[c>>1]|0;n[c>>1]=h;i=i+1|0;if((i|0)==(a|0))break;else l=l+(o<<1)|0}c=e;l=f[u>>2]|0}}while(0);switch(f[l+16>>2]|0){case 3:{if((f[l+24>>2]|0)==2){if((a|0)>0)l=0;else return;do{s=n[c+(l*6|0)+2>>1]|0;h=n[c+(l*6|0)+4>>1]|0;n[r+(l*6|0)>>1]=n[c+(l*6|0)>>1]|0;n[r+(l*6|0)+2>>1]=s;n[r+(l*6|0)+4>>1]=h;l=l+1|0}while((l|0)!=(a|0));return}l=(s|0)<(a|0)?s:a;if((l|0)<=0)return;e=s<<1;i=0;do{a=n[c+(i*6|0)+2>>1]|0;h=n[c+(i*6|0)+4>>1]|0;n[r+(i<<1)>>1]=n[c+(i*6|0)>>1]|0;n[r+(i+s<<1)>>1]=a;n[r+(i+e<<1)>>1]=h;i=i+1|0}while((i|0)!=(l|0));return}case 4:{if((f[l+24>>2]|0)!=1)return;l=(s|0)<(a|0)?s:a;if((l|0)<=0)return;e=s<<1;i=s*3|0;o=0;do{u=n[c+(o<<3)+2>>1]|0;a=n[c+(o<<3)+4>>1]|0;h=n[c+(o<<3)+6>>1]|0;n[r+(o<<1)>>1]=n[c+(o<<3)>>1]|0;n[r+(o+s<<1)>>1]=u;n[r+(o+e<<1)>>1]=a;n[r+(o+i<<1)>>1]=h;o=o+1|0}while((o|0)!=(l|0));return}default:return}}function vt(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0;b=c;c=c+176|0;k=b+152|0;v=b+16|0;m=b;u=e+4|0;s=f[u>>2]|0;d=n<<1;l=re(d,f[s+16>>2]|0)|0;do{if(l){o=e+20|0;while(1){s=uM[f[(f[i>>2]|0)+32>>2]&63](i,f[o>>2]|0,l)|0;if(!s)break;if((l|0)==(s|0)){h=26;break}else l=l-s|0}if((h|0)==26){s=f[u>>2]|0;break}h=v+56|0;u=v+4|0;f[v>>2]=36160;f[h>>2]=36180;_=0;ce(62,v+56|0,u|0);b=_;_=0;if(b&1){v=ze()|0;nd(h);$e(v|0)}f[v+128>>2]=0;f[v+132>>2]=-1;f[v>>2]=36200;f[v+56>>2]=36220;_=0;ue(180,u|0);b=_;_=0;do{if(b&1)s=ze()|0;else{f[u>>2]=36236;i=v+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[v+52>>2]=16;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;_=0;ce(63,u|0,k|0);b=_;_=0;if(b&1){s=ze()|0;Oh(k);Oh(i);cd(u);break}Oh(k);_=0;s=ke(28,v|0,49029,57)|0;k=_;_=0;if(!(k&1)?(_=0,pe(36,s|0,0)|0,k=_,_=0,!(k&1)):0){o=He(16)|0;_=0;ce(64,m|0,u|0);k=_;_=0;if(!(k&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,o|0,3,35648,m|0);k=_;_=0;if(k&1)l=1;else{_=0;Ae(6,o|0,824,96);_=0;l=0}s=ze()|0;Oh(m);if(!l){m=s;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}}else s=ze()|0;je(o|0);m=s;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}m=ze()|0;f[v>>2]=36200;f[h>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(h);$e(m|0)}}while(0);v=s;nd(h);$e(v|0)}}while(0);l=e+20|0;if((f[s+28>>2]|0)!=536870912){v=f[l>>2]|0;mt(e,v,r,n,a);c=b;return}pr(f[l>>2]|0,re(d,f[s+16>>2]|0)|0);v=f[l>>2]|0;mt(e,v,r,n,a);c=b;return}function pt(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0;h=e+4|0;e=f[h>>2]|0;e:do{switch(f[e+16>>2]|0){case 3:{if((f[e+24>>2]|0)==2){if((a|0)>0)e=0;else break e;while(1){c=n[i+(e*6|0)+2>>1]|0;l=n[i+(e*6|0)+4>>1]|0;n[r+(e*6|0)>>1]=n[i+(e*6|0)>>1]|0;n[r+(e*6|0)+2>>1]=c;n[r+(e*6|0)+4>>1]=l;e=e+1|0;if((e|0)==(a|0))break e}}e=(a|0)<(l|0)?a:l;if((e|0)>0){o=l<<1;u=0;do{d=n[i+(u+l<<1)>>1]|0;c=n[i+(u+o<<1)>>1]|0;n[r+(u*6|0)>>1]=n[i+(u<<1)>>1]|0;n[r+(u*6|0)+2>>1]=d;n[r+(u*6|0)+4>>1]=c;u=u+1|0}while((u|0)!=(e|0))}break}case 4:{if((f[e+24>>2]|0)==1?(c=(a|0)<(l|0)?a:l,(c|0)>0):0){e=l<<1;o=l*3|0;u=0;do{d=n[i+(u<<1)>>1]|0;w=n[i+(u+o<<1)>>1]|0;b=s[i+(u+e<<1)>>1]|0;k=Sm(s[i+(u+l<<1)>>1]|0,0,16)|0;b=P|b;w=Sm(w&65535|0,0,48)|0;w=k|d&65535|w;b=b&65535|P;d=r+(u<<3)|0;k=d;n[k>>1]=w;n[k+2>>1]=w>>>16;d=d+4|0;n[d>>1]=b;n[d+2>>1]=b>>>16;u=u+1|0}while((u|0)!=(c|0))}break}default:{}}}while(0);e=f[h>>2]|0;if(!(t[e+32>>0]|0))return;u=f[e+16>>2]|0;if((a|0)<=0)return;e=r;o=0;while(1){w=e+4|0;k=n[e>>1]|0;n[e>>1]=n[w>>1]|0;n[w>>1]=k;o=o+1|0;if((o|0)==(a|0))break;else e=e+(u<<1)|0}return}function gt(e){e=e|0;return}function yt(e){e=e|0;Ip(e);return}function Mt(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;r=re(f[e+8>>2]|0,r)|0;e=f[e+4>>2]|0;if((uM[f[(f[e>>2]|0)+48>>2]&63](e,i,r)|0)==(r|0))return;n=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,n|0,3,35648);e=_;_=0;if(e&1){e=ze()|0;je(n|0);$e(e|0)}else bi(n|0,824,96)}function Et(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+16|0;h=d;u=e+8|0;a=f[u>>2]|0;n=re(a,r)|0;do{if(n){l=e+4|0;s=n;while(1){a=f[l>>2]|0;a=uM[f[(f[a>>2]|0)+32>>2]&63](a,i,s)|0;if(!a)break;n=s-a|0;if((s|0)==(a|0)){o=11;break}else s=n}if((o|0)==11){a=f[u>>2]|0;s=n;break}n=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,n|0,3,35648);e=_;_=0;if(e&1){e=ze()|0;je(n|0);$e(e|0)}else bi(n|0,824,96)}else s=0}while(0);if((a|0)==2){pr(i,r<<1);a=f[u>>2]|0}n=f[e+12>>2]|0;if((n|0)<=(re(a,r)|0)){c=d;return}e=f[e+4>>2]|0;hM[f[(f[e>>2]|0)+16>>2]&15](h,e,n-s|0,0,1,24);c=d;return}function At(e){e=e|0;Ip(e);return}function St(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;t=e+4|0;Am(f[t>>2]|0,i|0,re(f[e+8>>2]|0,r)|0)|0;f[t>>2]=(f[t>>2]|0)+(f[e+12>>2]|0);return}function Tt(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;t=e+4|0;Am(i|0,f[t>>2]|0,re(f[e+8>>2]|0,r)|0)|0;f[t>>2]=(f[t>>2]|0)+(f[e+12>>2]|0);return}function Ct(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0;f[e+112>>2]=0;f[e+108>>2]=0;c=f[i>>2]|0;a=c;do{if(c){l=e+92|0;c=e+96|0;o=f[c>>2]|0;u=f[l>>2]|0;r=u;n=o-r|0;if(n>>>0>=4e4)if(n>>>0>4e4?(s=u+4e4|0,(o|0)!=(s|0)):0){f[c>>2]=s;s=r}else s=r;else{Rt(l,4e4-n|0);s=f[l>>2]|0;a=f[i>>2]|0}r=e+116|0;f[r>>2]=s;o=e+124|0;f[o>>2]=s;u=e+104|0;f[u>>2]=a;n=a;if(a){if((f[n+12>>2]|0)==(f[n+16>>2]|0)){i=(lM[f[(f[a>>2]|0)+36>>2]&127](n)|0)==-1;n=f[o>>2]|0;if(i)break;a=f[r>>2]|0}else{n=s;a=s}l=n-a|0;if(l>>>0<=64){s=e+92|0;if((n|0)==(a|0))n=a;else{n=a;a=0;do{t[(f[s>>2]|0)+a>>0]=t[n+a>>0]|0;a=a+1|0;n=f[r>>2]|0}while(a>>>0<l>>>0);a=f[o>>2]|0}s=f[s>>2]|0;i=s;h=i-n|0;f[r>>2]=s;n=a+h|0;f[o>>2]=n;s=e+120|0;f[s>>2]=(f[s>>2]|0)+h;u=f[u>>2]|0;n=uM[f[(f[u>>2]|0)+32>>2]&63](u,n,(f[c>>2]|0)-(i+l)|0)|0;n=(f[o>>2]|0)+n|0;f[o>>2]=n}}else n=s}else{f[e+104>>2]=0;n=f[i+4>>2]|0;r=e+116|0;f[r>>2]=n;n=n+(f[i+8>>2]|0)|0;f[e+124>>2]=n}}while(0);r=f[r>>2]|0;if(r>>>0>=n>>>0){c=r;h=e+120|0;f[h>>2]=c;jt(e);return}while(1){if((t[r>>0]|0)==-1){n=20;break}r=r+1|0;if(r>>>0>=n>>>0){n=20;break}}if((n|0)==20){h=e+120|0;f[h>>2]=r;jt(e);return}}function Rt(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0;u=e+8|0;a=f[u>>2]|0;c=e+4|0;r=f[c>>2]|0;n=r;if((a-n|0)>>>0>=i>>>0){do{t[r>>0]=0;r=(f[c>>2]|0)+1|0;f[c>>2]=r;i=i+-1|0}while((i|0)!=0);return}r=f[e>>2]|0;s=n-r+i|0;if((s|0)<0){Pp(e);a=f[u>>2]|0;r=f[e>>2]|0}n=a-r|0;if(n>>>0<1073741823){n=n<<1;n=n>>>0<s>>>0?s:n;r=(f[c>>2]|0)-r|0;if(!n){a=0;l=0;s=r}else o=8}else{n=2147483647;r=(f[c>>2]|0)-r|0;o=8}if((o|0)==8){a=n;l=Bp(n)|0;s=r}r=l+s|0;a=l+a|0;n=r;do{t[n>>0]=0;n=r+1|0;r=n;i=i+-1|0}while((i|0)!=0);i=f[e>>2]|0;n=(f[c>>2]|0)-i|0;o=l+(s-n)|0;Am(o|0,i|0,n|0)|0;f[e>>2]=o;f[c>>2]=r;f[u>>2]=a;if(!i)return;Ip(i);return}function Lt(e){e=e|0;var i=0,r=0,t=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0;g=c;c=c+32|0;M=g+12|0;p=g;w=e+180|0;m=(f[w>>2]|0)+4|0;if((f[e+32>>2]|0)==1)v=f[e+24>>2]|0;else v=1;i=re(v<<1,m)|0;f[M>>2]=0;E=M+4|0;f[E>>2]=0;f[M+8>>2]=0;do{if(i){if(!((i|0)<0?(_=0,ue(178,M|0),y=_,_=0,y&1):0))l=6;if((l|0)==6?(r=i<<1,_=0,t=de(67,r|0)|0,y=_,_=0,!(y&1)):0){f[M>>2]=t;y=t+(i<<1)|0;f[M+8>>2]=y;ym(t|0,0,r|0)|0;f[E>>2]=y;break}t=ze()|0;i=f[M>>2]|0;if(!i)$e(t|0);r=f[E>>2]|0;if((r|0)!=(i|0))f[E>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);$e(t|0)}}while(0);f[p>>2]=0;y=p+4|0;f[y>>2]=0;f[p+8>>2]=0;do{if(!v)l=18;else{if(!(v>>>0>1073741823?(_=0,ue(178,p|0),k=_,_=0,k&1):0))l=16;if((l|0)==16?(a=v<<2,_=0,s=de(67,a|0)|0,k=_,_=0,!(k&1)):0){f[p>>2]=s;l=s+(v<<2)|0;f[p+8>>2]=l;ym(s|0,0,a|0)|0;f[y>>2]=l;l=18;break}t=ze()|0;i=f[p>>2]|0;r=i;if(i){a=f[y>>2]|0;if((a|0)!=(i|0))f[y>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}}while(0);if((l|0)==18){s=e+12|0;e:do{if((f[s>>2]|0)>0){l=e+4604|0;o=(re(v,m)|0)+1|0;u=e+4608|0;h=e+92|0;d=(v|0)>0;b=e+4600|0;k=0;i:while(1){r=f[M>>2]|0;i=r+2|0;f[l>>2]=i;r=r+(o<<1)|0;f[u>>2]=r;if(!(k&1))i=r;else{f[l>>2]=r;f[u>>2]=i}a=f[h>>2]|0;_=0;Re(f[(f[a>>2]|0)+12>>2]|0,a|0,i|0,f[w>>2]|0,m|0);a=_;_=0;if(a&1){l=28;break}if(d){i=f[l>>2]|0;r=f[u>>2]|0;t=f[p>>2]|0;a=0;do{f[b>>2]=f[t+(a<<2)>>2];t=f[w>>2]|0;n[i+(t<<1)>>1]=n[i+(t+-1<<1)>>1]|0;n[r+-2>>1]=n[i>>1]|0;_=0;ce(68,e|0,0);t=_;_=0;if(t&1){l=27;break i}t=f[p>>2]|0;f[t+(a<<2)>>2]=f[b>>2];i=(f[l>>2]|0)+(m<<1)|0;f[l>>2]=i;r=(f[u>>2]|0)+(m<<1)|0;f[u>>2]=r;a=a+1|0}while((a|0)<(v|0))}k=k+1|0;if((k|0)>=(f[s>>2]|0)){l=40;break e}}if((l|0)==27){t=ze()|0;break}else if((l|0)==28){t=ze()|0;break}}else l=40}while(0);do{if((l|0)==40){_=0;ue(182,e|0);e=_;_=0;if(e&1){t=ze()|0;break}i=f[p>>2]|0;r=i;if(i){t=f[y>>2]|0;if((t|0)!=(i|0))f[y>>2]=t+(~((t+-4-r|0)>>>2)<<2);Ip(i)}i=f[M>>2]|0;if(!i){c=g;return}r=f[E>>2]|0;if((r|0)!=(i|0))f[E>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);c=g;return}}while(0);i=f[p>>2]|0;r=i;if(i){a=f[y>>2]|0;if((a|0)!=(i|0))f[y>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}i=f[M>>2]|0;if(!i)$e(t|0);r=f[E>>2]|0;if((r|0)!=(i|0))f[E>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);$e(t|0)}function xt(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;k=e+4604|0;i=f[k>>2]|0;m=e+180|0;if((f[m>>2]|0)<=0)return;w=e+4608|0;_=e+4612|0;l=i;o=s[i+-2>>1]|0;i=s[i>>1]|0;b=0;while(1){d=f[w>>2]|0;h=s[d+(b+-1<<1)>>1]|0;a=b+1|0;r=s[l+(a<<1)>>1]|0;c=f[_>>2]|0;u=i-o|0;l=o-h|0;c=((((t[c+(r-i)>>0]|0)*9|0)+(t[c+u>>0]|0)|0)*9|0)+(t[c+l>>0]|0)|0;if(!c){a=(Dt(e,b,0)|0)+b|0;r=f[k>>2]|0;i=s[r+(a+-1<<1)>>1]|0;r=s[r+(a<<1)>>1]|0}else{o=i-h>>31;if((o^l|0)<0)l=i;else l=h+((o^u|0)<0?0:u)|0;d=It(e,c,s[d+(b<<1)>>1]|0,l,0)|0;n[(f[w>>2]|0)+(b<<1)>>1]=d}if((a|0)>=(f[m>>2]|0))break;l=f[k>>2]|0;o=i;i=r;b=a}return}function Pt(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0;a=e+104|0;if((f[a>>2]|0)>>>0<4)Ot(e);s=e+100|0;l=e+112|0;o=e+96|0;u=e+108|0;c=e+116|0;i=f[s>>2]|0;n=0;do{r=t[l>>0]|0;if((i|0)>31)break;i=f[o>>2]|0;if(!(r<<24>>24)){t[f[u>>2]>>0]=i>>>24;f[o>>2]=f[o>>2]<<8;i=(f[s>>2]|0)+8|0}else{t[f[u>>2]>>0]=i>>>25;f[o>>2]=f[o>>2]<<7;i=(f[s>>2]|0)+7|0}f[s>>2]=i;h=f[u>>2]|0;r=(t[h>>0]|0)==-1&1;t[l>>0]=r;f[u>>2]=h+1;f[a>>2]=(f[a>>2]|0)+-1;f[c>>2]=(f[c>>2]|0)+1;n=n+1|0}while((n|0)<4);if(!(r<<24>>24))Bt(e,0,(i|0)%8|0);else Bt(e,0,(i+-1|0)%8|0);if((f[a>>2]|0)>>>0<4)Ot(e);i=f[s>>2]|0;r=0;do{if((i|0)>31)break;i=f[o>>2]|0;if(!(t[l>>0]|0)){t[f[u>>2]>>0]=i>>>24;f[o>>2]=f[o>>2]<<8;i=(f[s>>2]|0)+8|0}else{t[f[u>>2]>>0]=i>>>25;f[o>>2]=f[o>>2]<<7;i=(f[s>>2]|0)+7|0}f[s>>2]=i;h=f[u>>2]|0;t[l>>0]=(t[h>>0]|0)==-1&1;f[u>>2]=h+1;f[a>>2]=(f[a>>2]|0)+-1;f[c>>2]=(f[c>>2]|0)+1;r=r+1|0}while((r|0)<4);if(!(f[e+132>>2]|0))return;Ot(e);return}function Ot(e){e=e|0;var i=0,r=0,n=0,a=0,s=0;i=f[e+132>>2]|0;if(!i){i=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,i|0,4,35648);e=_;_=0;if(!(e&1))bi(i|0,824,96);e=ze()|0;je(i|0);$e(e|0)}r=e+108|0;n=e+120|0;s=f[n>>2]|0;a=(f[r>>2]|0)-s|0;if((uM[f[(f[i>>2]|0)+48>>2]&63](i,s,a)|0)==(a|0)){s=f[n>>2]|0;f[r>>2]=s;f[e+104>>2]=(f[e+124>>2]|0)-s;return}i=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,i|0,4,35648);s=_;_=0;if(!(s&1))bi(i|0,824,96);s=ze()|0;je(i|0);$e(s|0)}function Bt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;c=e+100|0;r=(f[c>>2]|0)-r|0;f[c>>2]=r;if((r|0)>-1){h=e+96|0;f[h>>2]=f[h>>2]|i<<r;return}h=e+96|0;f[h>>2]=f[h>>2]|i>>0-r;u=e+104|0;if((f[u>>2]|0)>>>0<4){Ot(e);r=f[c>>2]|0}s=e+112|0;l=e+108|0;o=e+116|0;n=0;while(1){if((r|0)>31)break;r=f[h>>2]|0;if(!(t[s>>0]|0)){t[f[l>>2]>>0]=r>>>24;f[h>>2]=f[h>>2]<<8;r=(f[c>>2]|0)+8|0}else{t[f[l>>2]>>0]=r>>>25;f[h>>2]=f[h>>2]<<7;r=(f[c>>2]|0)+7|0}f[c>>2]=r;d=f[l>>2]|0;t[s>>0]=(t[d>>0]|0)==-1&1;f[l>>2]=d+1;f[u>>2]=(f[u>>2]|0)+-1;f[o>>2]=(f[o>>2]|0)+1;n=n+1|0;if((n|0)>=4){a=11;break}}e:do{if((a|0)==11)if((r|0)<0){f[h>>2]=f[h>>2]|i>>0-r;if((f[u>>2]|0)>>>0<4){Ot(e);r=f[c>>2]|0;n=0}else n=0;do{if((r|0)>31)break e;r=f[h>>2]|0;if(!(t[s>>0]|0)){t[f[l>>2]>>0]=r>>>24;f[h>>2]=f[h>>2]<<8;r=(f[c>>2]|0)+8|0}else{t[f[l>>2]>>0]=r>>>25;f[h>>2]=f[h>>2]<<7;r=(f[c>>2]|0)+7|0}f[c>>2]=r;d=f[l>>2]|0;t[s>>0]=(t[d>>0]|0)==-1&1;f[l>>2]=d+1;f[u>>2]=(f[u>>2]|0)+-1;f[o>>2]=(f[o>>2]|0)+1;n=n+1|0}while((n|0)<4)}}while(0);f[h>>2]=f[h>>2]|i<<r;return}function It(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0;_=i>>31;s=(_^i)-_|0;k=e+196+(s*12|0)+10|0;l=n[k>>1]|0;b=e+196+(s*12|0)|0;a=f[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){i=5;while(1)if((l<<i|0)<(a|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;h=e+196+(s*12|0)+8|0;a=(n[h>>1]^_)-_+t|0;w=e+136|0;t=f[w>>2]|0;if((a&t|0)==(a|0))c=a;else c=t&~(a>>31);a=(r-c^_)-_|0;u=e+144|0;t=f[u>>2]|0;if((a|0)>0)a=(a+t|0)/(t<<1|1|0)|0;else a=(a-t|0)/(t<<1|1|0)|0;d=e+140|0;o=f[d>>2]|0;r=((a|0)<0?o:0)+a|0;o=r-((r|0)<((o+1|0)/2|0|0)?0:o)|0;s=e+196+(s*12|0)+4|0;if(!(t|i))a=(f[s>>2]<<1)+-1+l>>31;else a=0;t=a^o;Ut(e,i,t>>30^t<<1,f[e+156>>2]|0);t=f[e+160>>2]|0;i=(f[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;a=(f[s>>2]|0)+(re(f[u>>2]<<1|1,o)|0)|0;r=n[k>>1]|0;if((r|0)==(t|0)){i=i>>1;a=a>>1;r=t>>1}f[b>>2]=i;t=r+1|0;n[k>>1]=t;i=t+a|0;if((i|0)>=1){if((a|0)>0){a=a-t|0;k=n[h>>1]|0;n[h>>1]=(k<<16>>16<127&1)+(k&65535);a=(a|0)>0?0:a}}else{a=n[h>>1]|0;n[h>>1]=(a&65535)-(a<<16>>16>-128&1);a=(i|0)>(~r|0)?i:0-r|0}f[s>>2]=a;t=f[u>>2]|0;r=t<<1|1;i=(re(r,(o^_)-_|0)|0)+c|0;if((i|0)>=(0-t|0)){a=f[w>>2]|0;if((a+t|0)<(i|0))i=i-(re(f[d>>2]|0,r)|0)|0}else{i=(re(f[d>>2]|0,r)|0)+i|0;a=f[w>>2]|0}if((i&a|0)==(i|0)){_=i;_=_&65535;return _|0}_=a&~(i>>31);_=_&65535;return _|0}function Dt(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0;c=(f[e+180>>2]|0)-i|0;h=f[e+4608>>2]|0;d=f[e+4604>>2]|0;a=n[h+(i+-1<<1)>>1]|0;u=a&65535;r=f[e+144>>2]|0;l=0;while(1){t=h+(l+i<<1)|0;o=(s[t>>1]|0)-u|0;if((((o|0)>-1?o:0-o|0)|0)>(r|0))break;n[t>>1]=a;l=l+1|0;if((l|0)==(c|0)){l=c;break}}a=(l|0)==(c|0);o=e+4600|0;t=f[36476+(f[o>>2]<<2)>>2]|0;if((1<<t|0)>(l|0))r=l;else{r=l;do{Bt(e,1,1);t=f[o>>2]|0;r=r-(1<<f[36476+(t<<2)>>2])|0;t=(t|0)>30?31:t+1|0;f[o>>2]=t;t=f[36476+(t<<2)>>2]|0}while((r|0)>=(1<<t|0))}if(!a){Bt(e,r,t+1|0);c=l+i|0;i=h+(c<<1)|0;n[i>>1]=Nt(e,s[i>>1]|0,u,s[d+(c<<1)>>1]|0)|0;e=f[o>>2]|0;f[o>>2]=(e|0)<1?0:e+-1|0;e=l+1|0;return e|0}if(!r){e=c;return e|0}Bt(e,1,1);e=c;return e|0}function Nt(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0;l=r-t|0;o=e+136|0;s=e+144|0;n=f[s>>2]|0;if((((l|0)>-1?l:0-l|0)|0)>(n|0)){a=t-r>>31|1;i=re(a,i-t|0)|0;if((i|0)>0)i=(n+i|0)/(n<<1|1|0)|0;else i=(i-n|0)/(n<<1|1|0)|0;l=e+140|0;n=f[l>>2]|0;r=((i|0)<0?n:0)+i|0;n=r-((r|0)<((n+1|0)/2|0|0)?0:n)|0;Ft(e,e+4576|0,n);n=re(n,a)|0;a=f[s>>2]|0;s=a<<1|1;n=(re(n,s)|0)+t|0;if((n|0)>=(0-a|0)){i=f[o>>2]|0;if((i+a|0)<(n|0))n=n-(re(f[l>>2]|0,s)|0)|0}else{n=(re(f[l>>2]|0,s)|0)+n|0;i=f[o>>2]|0}if((n&i|0)==(n|0)){o=n;o=o&65535;return o|0}o=i&~(n>>31);o=o&65535;return o|0}else{i=i-r|0;if((i|0)>0)i=(n+i|0)/(n<<1|1|0)|0;else i=(i-n|0)/(n<<1|1|0)|0;l=e+140|0;n=f[l>>2]|0;a=((i|0)<0?n:0)+i|0;n=a-((a|0)<((n+1|0)/2|0|0)?0:n)|0;Ft(e,e+4588|0,n);a=f[s>>2]|0;s=a<<1|1;n=(re(s,n)|0)+r|0;if((n|0)>=(0-a|0)){i=f[o>>2]|0;if((i+a|0)<(n|0))n=n-(re(f[l>>2]|0,s)|0)|0}else{n=(re(f[l>>2]|0,s)|0)+n|0;i=f[o>>2]|0}if((n&i|0)==(n|0)){o=n;o=o&65535;return o|0}o=i&~(n>>31);o=o&65535;return o|0}return 0}function Ft(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=f[h>>2]|0;s=(re(o>>>1,c)|0)+(f[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;Ut(e,s,n,(f[e+156>>2]|0)+-1-(f[36476+(f[e+4600>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;t[e>>0]=(a[e>>0]|0)+1}n=(n+1-(f[h>>2]|0)>>1)+(f[i>>2]|0)|0;f[i>>2]=n;s=t[d>>0]|0;if(s<<24>>24!=(t[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}f[i>>2]=n>>1;e=(s&255)>>>1;t[d>>0]=e;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}function Ut(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0;n=r>>i;a=e+148|0;s=t-(f[a>>2]|0)|0;if((n|0)<(s+-1|0)){if((n|0)>30){t=(n|0)/2|0;Bt(e,0,t);n=n-t|0}Bt(e,1,n+1|0);Bt(e,(1<<i)+-1&r,i);return}if((s|0)>31){Bt(e,0,31);Bt(e,1,t+-31-(f[a>>2]|0)|0)}else Bt(e,1,s);i=f[a>>2]|0;Bt(e,(1<<i)+-1&r+-1,i);return}function jt(e){e=e|0;var i=0,r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;u=e+116|0;i=f[u>>2]|0;c=e+120|0;if(i>>>0<((f[c>>2]|0)+-3|0)>>>0){c=e+112|0;o=f[c>>2]|0;e=e+108|0;f[e>>2]=(a[i+1>>0]<<16|a[i>>0]<<24|a[i+2>>0]<<8|a[i+3>>0])>>>o|f[e>>2];e=32-o>>3;f[u>>2]=i+e;f[c>>2]=(e<<3)+o;return}o=e+104|0;r=f[o>>2]|0;do{if(r){if((f[r+12>>2]|0)==(f[r+16>>2]|0)){if((lM[f[(f[r>>2]|0)+36>>2]&127](r)|0)==-1)break;i=f[u>>2]|0}s=e+124|0;r=f[s>>2]|0;l=r-i|0;if(l>>>0<=64){n=e+92|0;if((r|0)==(i|0))r=i;else{r=0;do{t[(f[n>>2]|0)+r>>0]=t[i+r>>0]|0;r=r+1|0;i=f[u>>2]|0}while(r>>>0<l>>>0);r=i;i=f[s>>2]|0}d=f[n>>2]|0;n=d;h=n-r|0;f[u>>2]=d;r=i+h|0;f[s>>2]=r;f[c>>2]=(f[c>>2]|0)+h;o=f[o>>2]|0;o=uM[f[(f[o>>2]|0)+32>>2]&63](o,r,(f[e+96>>2]|0)-(n+l)|0)|0;f[s>>2]=(f[s>>2]|0)+o}}}while(0);o=e+112|0;l=e+108|0;e=f[e+124>>2]|0;s=e+-1|0;i=f[u>>2]|0;while(1){if(i>>>0>=e>>>0){r=14;break}n=t[i>>0]|0;r=n&255;n=n<<24>>24==-1;if(n){if((i|0)==(s|0)){r=25;break}i=i+1|0;if((t[i>>0]|0)<0){r=25;break}}else i=i+1|0;d=f[o>>2]|0;f[l>>2]=r<<24-d|f[l>>2];f[u>>2]=i;d=d+(n?7:8)|0;f[o>>2]=d;if((d|0)>=24){r=33;break}}if((r|0)==14){if((f[o>>2]|0)>=1)return;i=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,i|0,5,35648);d=_;_=0;if(!(d&1))bi(i|0,824,96);d=ze()|0;je(i|0);$e(d|0)}else if((r|0)==25){if((f[o>>2]|0)>=1)return;i=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,i|0,5,35648);d=_;_=0;if(!(d&1))bi(i|0,824,96);d=ze()|0;je(i|0);$e(d|0)}else if((r|0)==33){e:do{if(i>>>0<e>>>0)do{if((t[i>>0]|0)==-1)break e;i=i+1|0}while(i>>>0<e>>>0)}while(0);f[c>>2]=i;return}}function Ht(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0;k=c;c=c+32|0;n=k;b=e+144|0;e:do{if(!(f[b>>2]|0)){r=f[e+136>>2]|0;i=e+152|0;if((((r|0)==((1<<f[i>>2])+-1|0)?(op(n,r,0),(f[n+4>>2]|0)==(f[e+184>>2]|0)):0)?(f[n+8>>2]|0)==(f[e+188>>2]|0):0)?(f[n+12>>2]|0)==(f[e+192>>2]|0):0)switch(f[i>>2]|0){case 8:{b=f[8900]|0;f[e+4612>>2]=b+(((f[8901]|0)-b|0)>>>1);c=k;return}case 10:{b=f[8903]|0;f[e+4612>>2]=b+(((f[8904]|0)-b|0)>>>1);c=k;return}case 12:{b=f[8906]|0;f[e+4612>>2]=b+(((f[8907]|0)-b|0)>>>1);c=k;return}case 16:{b=f[8909]|0;f[e+4612>>2]=b+(((f[8910]|0)-b|0)>>>1);c=k;return}default:break e}}else i=e+152|0}while(0);d=1<<f[i>>2];r=e+4616|0;n=d<<1;a=e+4620|0;s=f[a>>2]|0;i=f[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)f[a>>2]=o}else{zt(r,n-l|0);i=f[r>>2]|0}h=e+4612|0;f[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=k;return}o=e+192|0;u=e+188|0;l=e+184|0;s=i;do{i=f[o>>2]|0;if((s|0)>(0-i|0)){r=f[u>>2]|0;if((s|0)>(0-r|0)){n=f[l>>2]|0;if((s|0)>(0-n|0)){a=f[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;t[(f[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=k;return}function zt(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0;u=e+8|0;a=f[u>>2]|0;c=e+4|0;r=f[c>>2]|0;n=r;if((a-n|0)>>>0>=i>>>0){do{t[r>>0]=0;r=(f[c>>2]|0)+1|0;f[c>>2]=r;i=i+-1|0}while((i|0)!=0);return}r=f[e>>2]|0;s=n-r+i|0;if((s|0)<0){Pp(e);a=f[u>>2]|0;r=f[e>>2]|0}n=a-r|0;if(n>>>0<1073741823){n=n<<1;n=n>>>0<s>>>0?s:n;r=(f[c>>2]|0)-r|0;if(!n){a=0;l=0;s=r}else o=8}else{n=2147483647;r=(f[c>>2]|0)-r|0;o=8}if((o|0)==8){a=n;l=Bp(n)|0;s=r}r=l+s|0;a=l+a|0;n=r;do{t[n>>0]=0;n=r+1|0;r=n;i=i+-1|0}while((i|0)!=0);i=f[e>>2]|0;n=(f[c>>2]|0)-i|0;o=l+(s-n)|0;Am(o|0,i|0,n|0)|0;f[e>>2]=o;f[c>>2]=r;f[u>>2]=a;if(!i)return;Ip(i);return}function Yt(e){e=e|0;var i=0,r=0;f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function qt(e){e=e|0;var i=0,r=0;f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function Xt(e){e=e|0;var i=0,r=0;f[e>>2]=36052;i=f[e+4616>>2]|0;if(i){r=e+4620|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function Vt(e){e=e|0;var i=0,r=0;f[e>>2]=36052;i=f[e+4616>>2]|0;if(i){r=e+4620|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function Gt(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,f[e+136>>2]|0,f[e+144>>2]|0);u=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[h+8>>2]|0:l;s=f[i+12>>2]|0;s=(s|0)==0?f[h+12>>2]|0:s;r=f[i+16>>2]|0;a=f[h+16>>2]|0;f[e+184>>2]=(u|0)==0?f[h+4>>2]|0:u;f[e+188>>2]=l;f[e+192>>2]=s;nn(e);s=e+140|0;i=(f[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{f[e+196+(l*12|0)>>2]=i;f[e+196+(l*12|0)+4>>2]=0;n[e+196+(l*12|0)+8>>1]=0;n[e+196+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(f[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;f[e+4576>>2]=u;f[e+4580>>2]=0;t[e+4584>>0]=h;t[e+4585>>0]=1;t[e+4586>>0]=0;f[e+4588>>2]=u;f[e+4592>>2]=1;t[e+4596>>0]=h;t[e+4597>>0]=1;t[e+4598>>0]=0;f[e+4600>>2]=0;c=o;return}function Kt(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=f[i>>2]|0;f[i>>2]=0;i=f[u>>2]|0;f[u>>2]=o;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);f[h>>2]=0;f[h+4>>2]=a;u=r+8|0;f[h+8>>2]=f[u>>2];if(a){i=Bp(4624)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{f[s>>2]=f[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{f[s>>2]=0;s=s+4|0}while((s|0)<(o|0));f[i>>2]=35828;f[i+128>>2]=f[e+136>>2];f[i+132>>2]=f[e+140>>2];f[i+136>>2]=f[e+144>>2];f[i+140>>2]=f[e+148>>2];f[i+144>>2]=f[e+152>>2];f[i+148>>2]=f[e+156>>2];f[i+152>>2]=f[e+160>>2];s=i+156|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[i+172>>2]=f[a>>2];f[i+176>>2]=0;f[i+180>>2]=0;f[i+184>>2]=0;s=i+4568|0;a=i+188|0;do{f[a>>2]=0;f[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;f[s>>2]=0;f[s+4>>2]=0;n[s+8>>1]=0;t[s+10>>0]=0;o=i+4580|0;f[o>>2]=0;f[o+4>>2]=0;n[o+8>>1]=0;t[o+10>>0]=0;o=i+4592|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;f[o+16>>2]=0;f[o+20>>2]=0;f[o+24>>2]=0;t[o+28>>0]=0;if(!(f[i+28>>2]|0))f[i+20>>2]=1;a=f[l>>2]|0;f[l>>2]=i;if(a){fM[f[(f[a>>2]|0)+4>>2]&255](a);i=f[l>>2]|0}Ct(i,h)}h=e+100|0;f[h>>2]=32;f[e+96>>2]=0;i=f[r>>2]|0;if(!i){f[e+108>>2]=f[r+4>>2];f[e+104>>2]=f[u>>2];Zt(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}f[e+132>>2]=i;s=e+120|0;u=e+124|0;a=f[u>>2]|0;i=f[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){f[u>>2]=d;a=d}}else{Rt(s,4e3-o|0);i=f[s>>2]|0;l=i;a=f[u>>2]|0}f[e+108>>2]=l;f[e+104>>2]=a-i;Zt(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function Wt(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+32>>2]|0)!=0?(f[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(37,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+16>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(38,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(39,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(40,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+20>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=6;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=6;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function Zt(e){e=e|0;var i=0,r=0,t=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0;p=c;c=c+32|0;y=p+12|0;v=p;k=e+180|0;w=(f[k>>2]|0)+4|0;if((f[e+32>>2]|0)==1)m=f[e+24>>2]|0;else m=1;i=re(m<<1,w)|0;f[y>>2]=0;M=y+4|0;f[M>>2]=0;f[y+8>>2]=0;do{if(i){if(!(i>>>0>715827882?(_=0,ue(178,y|0),g=_,_=0,g&1):0))l=6;if((l|0)==6?(_=0,r=de(67,i*6|0)|0,g=_,_=0,!(g&1)):0){f[M>>2]=r;f[y>>2]=r;t=r+(i*6|0)|0;f[y+8>>2]=t;while(1){n[r>>1]=0;n[r+2>>1]=0;n[r+4>>1]=0;i=i+-1|0;if(!i)break;else r=r+6|0}f[M>>2]=t;break}t=ze()|0;i=f[y>>2]|0;if(!i)$e(t|0);r=f[M>>2]|0;if((r|0)!=(i|0))f[M>>2]=r+(~(((r+-6-i|0)>>>0)/6|0)*6|0);Ip(i);$e(t|0)}}while(0);f[v>>2]=0;g=v+4|0;f[g>>2]=0;f[v+8>>2]=0;do{if(!m)l=20;else{if(!(m>>>0>1073741823?(_=0,ue(178,v|0),b=_,_=0,b&1):0))l=18;if((l|0)==18?(a=m<<2,_=0,s=de(67,a|0)|0,b=_,_=0,!(b&1)):0){f[v>>2]=s;l=s+(m<<2)|0;f[v+8>>2]=l;ym(s|0,0,a|0)|0;f[g>>2]=l;l=20;break}t=ze()|0;i=f[v>>2]|0;r=i;if(i){a=f[g>>2]|0;if((a|0)!=(i|0))f[g>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}}while(0);if((l|0)==20){a=e+12|0;e:do{if((f[a>>2]|0)>0){s=e+4604|0;l=(re(m,w)|0)+1|0;o=e+4608|0;u=e+92|0;h=(m|0)>0;d=e+4600|0;b=0;i:while(1){r=f[y>>2]|0;i=r+6|0;f[s>>2]=i;r=r+(l*6|0)|0;f[o>>2]=r;if(!(b&1))i=r;else{f[s>>2]=r;f[o>>2]=i}t=f[u>>2]|0;_=0;Re(f[(f[t>>2]|0)+12>>2]|0,t|0,i|0,f[k>>2]|0,w|0);t=_;_=0;if(t&1){l=30;break}if(h){i=f[v>>2]|0;r=f[s>>2]|0;t=0;do{f[d>>2]=f[i+(t<<2)>>2];E=f[k>>2]|0;i=r+(E*6|0)|0;r=r+((E+-1|0)*6|0)|0;n[i>>1]=n[r>>1]|0;n[i+2>>1]=n[r+2>>1]|0;n[i+4>>1]=n[r+4>>1]|0;r=(f[o>>2]|0)+-6|0;i=f[s>>2]|0;n[r>>1]=n[i>>1]|0;n[r+2>>1]=n[i+2>>1]|0;n[r+4>>1]=n[i+4>>1]|0;_=0;ce(69,e|0,0);r=_;_=0;if(r&1){l=29;break i}i=f[v>>2]|0;f[i+(t<<2)>>2]=f[d>>2];r=(f[s>>2]|0)+(w*6|0)|0;f[s>>2]=r;f[o>>2]=(f[o>>2]|0)+(w*6|0);t=t+1|0}while((t|0)<(m|0))}b=b+1|0;if((b|0)>=(f[a>>2]|0)){l=42;break e}}if((l|0)==29){t=ze()|0;break}else if((l|0)==30){t=ze()|0;break}}else l=42}while(0);do{if((l|0)==42){_=0;ue(182,e|0);E=_;_=0;if(E&1){t=ze()|0;break}i=f[v>>2]|0;r=i;if(i){t=f[g>>2]|0;if((t|0)!=(i|0))f[g>>2]=t+(~((t+-4-r|0)>>>2)<<2);Ip(i)}i=f[y>>2]|0;if(!i){c=p;return}r=f[M>>2]|0;if((r|0)!=(i|0))f[M>>2]=r+(~(((r+-6-i|0)>>>0)/6|0)*6|0);Ip(i);c=p;return}}while(0);i=f[v>>2]|0;r=i;if(i){a=f[g>>2]|0;if((a|0)!=(i|0))f[g>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}i=f[y>>2]|0;if(!i)$e(t|0);r=f[M>>2]|0;if((r|0)!=(i|0))f[M>>2]=r+(~(((r+-6-i|0)>>>0)/6|0)*6|0);Ip(i);$e(t|0)}function Jt(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0;T=e+180|0;if((f[T>>2]|0)<=0)return;C=e+4608|0;R=e+4604|0;L=e+4612|0;S=0;while(1){M=S+-1|0;o=f[C>>2]|0;u=f[R>>2]|0;i=S+1|0;l=s[u+(S*6|0)>>1]|0;A=f[L>>2]|0;c=s[u+(M*6|0)>>1]|0;h=l-c|0;d=s[o+(M*6|0)>>1]|0;b=c-d|0;k=((((t[A+((s[u+(i*6|0)>>1]|0)-l)>>0]|0)*9|0)+(t[A+h>>0]|0)|0)*9|0)+(t[A+b>>0]|0)|0;a=s[u+(S*6|0)+2>>1]|0;w=s[u+(M*6|0)+2>>1]|0;_=a-w|0;m=s[o+(M*6|0)+2>>1]|0;v=w-m|0;p=((((t[A+((s[u+(i*6|0)+2>>1]|0)-a)>>0]|0)*9|0)+(t[A+_>>0]|0)|0)*9|0)+(t[A+v>>0]|0)|0;r=s[u+(S*6|0)+4>>1]|0;g=s[u+(M*6|0)+4>>1]|0;y=r-g|0;M=s[o+(M*6|0)+4>>1]|0;E=g-M|0;A=((((t[A+((s[u+(i*6|0)+4>>1]|0)-r)>>0]|0)*9|0)+(t[A+y>>0]|0)|0)*9|0)+(t[A+E>>0]|0)|0;if(!(p|k|A))i=(Qt(e,S,0)|0)+S|0;else{u=s[o+(S*6|0)>>1]|0;o=l-d>>31;if((o^b|0)>=0)if((o^h|0)<0)l=d;else l=d-c+l|0;u=$t(e,k,u,l,0)|0;o=s[(f[C>>2]|0)+(S*6|0)+2>>1]|0;l=a-m>>31;if((l^v|0)>=0)if((l^_|0)<0)a=m;else a=m-w+a|0;l=$t(e,p,o,a,0)|0;o=s[(f[C>>2]|0)+(S*6|0)+4>>1]|0;a=r-M>>31;if((a^E|0)>=0)if((a^y|0)<0)r=M;else r=M-g+r|0;E=$t(e,A,o,r,0)|0;A=f[C>>2]|0;n[A+(S*6|0)>>1]=u;n[A+(S*6|0)+2>>1]=l;n[A+(S*6|0)+4>>1]=E}if((i|0)<(f[T>>2]|0))S=i;else break}return}function Qt(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0;T=c;c=c+48|0;_=T+30|0;w=T+24|0;k=T+18|0;m=T+12|0;M=T+6|0;E=T;A=(f[e+180>>2]|0)-i|0;S=f[e+4608>>2]|0;v=f[e+4604>>2]|0;y=i+-1|0;p=n[S+(y*6|0)>>1]|0;g=n[S+(y*6|0)+2>>1]|0;y=n[S+(y*6|0)+4>>1]|0;r=p&65535;t=e+144|0;a=g&65535;l=y&65535;b=0;while(1){h=b+i|0;o=S+(h*6|0)|0;u=S+(h*6|0)+2|0;h=S+(h*6|0)+4|0;C=(s[o>>1]|0)-r|0;d=f[t>>2]|0;if((((C|0)>-1?C:0-C|0)|0)>(d|0))break;C=(s[u>>1]|0)-a|0;if((((C|0)>-1?C:0-C|0)|0)>(d|0))break;C=(s[h>>1]|0)-l|0;if((((C|0)>-1?C:0-C|0)|0)>(d|0))break;n[o>>1]=p;n[u>>1]=g;n[h>>1]=y;b=b+1|0;if((b|0)==(A|0)){b=A;break}}a=(b|0)==(A|0);l=e+4600|0;t=f[36476+(f[l>>2]<<2)>>2]|0;if((1<<t|0)>(b|0))r=b;else{r=b;do{Bt(e,1,1);t=f[l>>2]|0;r=r-(1<<f[36476+(t<<2)>>2])|0;t=(t|0)>30?31:t+1|0;f[l>>2]=t;t=f[36476+(t<<2)>>2]|0}while((r|0)>=(1<<t|0))}if(!a){Bt(e,r,t+1|0);i=b+i|0;C=S+(i*6|0)|0;n[M>>1]=n[C>>1]|0;n[M+2>>1]=n[C+2>>1]|0;n[M+4>>1]=n[C+4>>1]|0;n[E>>1]=p;n[E+2>>1]=g;n[E+4>>1]=y;i=v+(i*6|0)|0;n[k>>1]=n[M>>1]|0;n[k+2>>1]=n[M+2>>1]|0;n[k+4>>1]=n[M+4>>1]|0;n[w>>1]=n[E>>1]|0;n[w+2>>1]=n[E+2>>1]|0;n[w+4>>1]=n[E+4>>1]|0;n[_>>1]=n[i>>1]|0;n[_+2>>1]=n[i+2>>1]|0;n[_+4>>1]=n[i+4>>1]|0;rn(m,e,k,w,_);n[C>>1]=n[m>>1]|0;n[C+2>>1]=n[m+2>>1]|0;n[C+4>>1]=n[m+4>>1]|0;C=f[l>>2]|0;f[l>>2]=(C|0)<1?0:C+-1|0;C=b+1|0;c=T;return C|0}if(!r){C=A;c=T;return C|0}Bt(e,1,1);C=A;c=T;return C|0}function $t(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0;_=i>>31;s=(_^i)-_|0;k=e+196+(s*12|0)+10|0;l=n[k>>1]|0;b=e+196+(s*12|0)|0;a=f[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){i=5;while(1)if((l<<i|0)<(a|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;h=e+196+(s*12|0)+8|0;a=(n[h>>1]^_)-_+t|0;w=e+136|0;t=f[w>>2]|0;if((a&t|0)==(a|0))c=a;else c=t&~(a>>31);a=(r-c^_)-_|0;u=e+144|0;t=f[u>>2]|0;if((a|0)>0)a=(a+t|0)/(t<<1|1|0)|0;else a=(a-t|0)/(t<<1|1|0)|0;d=e+140|0;o=f[d>>2]|0;r=((a|0)<0?o:0)+a|0;o=r-((r|0)<((o+1|0)/2|0|0)?0:o)|0;s=e+196+(s*12|0)+4|0;if(!(t|i))a=(f[s>>2]<<1)+-1+l>>31;else a=0;t=a^o;en(e,i,t>>30^t<<1,f[e+156>>2]|0);t=f[e+160>>2]|0;i=(f[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;a=(f[s>>2]|0)+(re(f[u>>2]<<1|1,o)|0)|0;r=n[k>>1]|0;if((r|0)==(t|0)){i=i>>1;a=a>>1;r=t>>1}f[b>>2]=i;t=r+1|0;n[k>>1]=t;i=t+a|0;if((i|0)>=1){if((a|0)>0){a=a-t|0;k=n[h>>1]|0;n[h>>1]=(k<<16>>16<127&1)+(k&65535);a=(a|0)>0?0:a}}else{a=n[h>>1]|0;n[h>>1]=(a&65535)-(a<<16>>16>-128&1);a=(i|0)>(~r|0)?i:0-r|0}f[s>>2]=a;t=f[u>>2]|0;r=t<<1|1;i=(re(r,(o^_)-_|0)|0)+c|0;if((i|0)>=(0-t|0)){a=f[w>>2]|0;if((a+t|0)<(i|0))i=i-(re(f[d>>2]|0,r)|0)|0}else{i=(re(f[d>>2]|0,r)|0)+i|0;a=f[w>>2]|0}if((i&a|0)==(i|0)){_=i;_=_&65535;return _|0}_=a&~(i>>31);_=_&65535;return _|0}function en(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0;n=r>>i;a=e+148|0;s=t-(f[a>>2]|0)|0;if((n|0)<(s+-1|0)){if((n|0)>30){t=(n|0)/2|0;Bt(e,0,t);n=n-t|0}Bt(e,1,n+1|0);Bt(e,(1<<i)+-1&r,i);return}if((s|0)>31){Bt(e,0,31);Bt(e,1,t+-31-(f[a>>2]|0)|0)}else Bt(e,1,s);i=f[a>>2]|0;Bt(e,(1<<i)+-1&r+-1,i);return}function rn(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0;_=i+136|0;b=s[a>>1]|0;k=b-(s[t>>1]|0)>>31|1;l=re(k,(s[r>>1]|0)-b|0)|0;h=i+144|0;o=f[h>>2]|0;if((l|0)>0)l=(l+o|0)/(o<<1|1|0)|0;else l=(l-o|0)/(o<<1|1|0)|0;y=i+140|0;c=f[y>>2]|0;u=((l|0)<0?c:0)+l|0;c=u-((u|0)<((c+1|0)/2|0|0)?0:c)|0;u=i+4576|0;tn(i,u,c);v=s[a+2>>1]|0;p=v-(s[t+2>>1]|0)>>31|1;l=re(p,(s[r+2>>1]|0)-v|0)|0;o=f[h>>2]|0;if((l|0)>0)l=(l+o|0)/(o<<1|1|0)|0;else l=(l-o|0)/(o<<1|1|0)|0;w=f[y>>2]|0;g=((l|0)<0?w:0)+l|0;w=g-((g|0)<((w+1|0)/2|0|0)?0:w)|0;tn(i,u,w);g=s[a+4>>1]|0;m=g-(s[t+4>>1]|0)>>31|1;l=re(m,(s[r+4>>1]|0)-g|0)|0;o=f[h>>2]|0;if((l|0)>0)l=(l+o|0)/(o<<1|1|0)|0;else l=(l-o|0)/(o<<1|1|0)|0;d=f[y>>2]|0;l=((l|0)<0?d:0)+l|0;d=l-((l|0)<((d+1|0)/2|0|0)?0:d)|0;tn(i,u,d);u=f[h>>2]|0;h=u<<1|1;l=(re(re(h,c)|0,k)|0)+b|0;r=0-u|0;if((l|0)>=(r|0)){o=f[_>>2]|0;if((o+u|0)<(l|0)){l=l-(re(f[y>>2]|0,h)|0)|0;t=o}else t=o}else{l=(re(f[y>>2]|0,h)|0)+l|0;t=f[_>>2]|0}if((l&t|0)!=(l|0))l=t&~(l>>31);a=l&65535;l=(re(re(h,w)|0,p)|0)+v|0;if((l|0)>=(r|0)){if((t+u|0)<(l|0))l=l-(re(f[y>>2]|0,h)|0)|0}else l=(re(f[y>>2]|0,h)|0)+l|0;if((l&t|0)!=(l|0))l=t&~(l>>31);o=l&65535;l=(re(re(h,d)|0,m)|0)+g|0;if((l|0)>=(r|0)){if((t+u|0)<(l|0))l=l-(re(f[y>>2]|0,h)|0)|0}else l=(re(f[y>>2]|0,h)|0)+l|0;if((l&t|0)==(l|0)){y=l;y=y&65535;n[e>>1]=a;g=e+2|0;n[g>>1]=o;e=e+4|0;n[e>>1]=y;return}y=t&~(l>>31);y=y&65535;n[e>>1]=a;g=e+2|0;n[g>>1]=o;e=e+4|0;n[e>>1]=y;return}function tn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=f[h>>2]|0;s=(re(o>>>1,c)|0)+(f[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;en(e,s,n,(f[e+156>>2]|0)+-1-(f[36476+(f[e+4600>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;t[e>>0]=(a[e>>0]|0)+1}n=(n+1-(f[h>>2]|0)>>1)+(f[i>>2]|0)|0;f[i>>2]=n;s=t[d>>0]|0;if(s<<24>>24!=(t[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}f[i>>2]=n>>1;e=(s&255)>>>1;t[d>>0]=e;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}function nn(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0;k=c;c=c+32|0;n=k;b=e+144|0;e:do{if(!(f[b>>2]|0)){r=f[e+136>>2]|0;i=e+152|0;if((((r|0)==((1<<f[i>>2])+-1|0)?(op(n,r,0),(f[n+4>>2]|0)==(f[e+184>>2]|0)):0)?(f[n+8>>2]|0)==(f[e+188>>2]|0):0)?(f[n+12>>2]|0)==(f[e+192>>2]|0):0)switch(f[i>>2]|0){case 8:{b=f[8900]|0;f[e+4612>>2]=b+(((f[8901]|0)-b|0)>>>1);c=k;return}case 10:{b=f[8903]|0;f[e+4612>>2]=b+(((f[8904]|0)-b|0)>>>1);c=k;return}case 12:{b=f[8906]|0;f[e+4612>>2]=b+(((f[8907]|0)-b|0)>>>1);c=k;return}case 16:{b=f[8909]|0;f[e+4612>>2]=b+(((f[8910]|0)-b|0)>>>1);c=k;return}default:break e}}else i=e+152|0}while(0);d=1<<f[i>>2];r=e+4616|0;n=d<<1;a=e+4620|0;s=f[a>>2]|0;i=f[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)f[a>>2]=o}else{zt(r,n-l|0);i=f[r>>2]|0}h=e+4612|0;f[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=k;return}o=e+192|0;u=e+188|0;l=e+184|0;s=i;do{i=f[o>>2]|0;if((s|0)>(0-i|0)){r=f[u>>2]|0;if((s|0)>(0-r|0)){n=f[l>>2]|0;if((s|0)>(0-n|0)){a=f[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;t[(f[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=k;return}function fn(e){e=e|0;var i=0,r=0;f[e>>2]=36024;i=f[e+4616>>2]|0;if(i){r=e+4620|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function an(e){e=e|0;var i=0,r=0;f[e>>2]=36024;i=f[e+4616>>2]|0;if(i){r=e+4620|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function sn(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,f[e+136>>2]|0,f[e+144>>2]|0);u=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[h+8>>2]|0:l;s=f[i+12>>2]|0;s=(s|0)==0?f[h+12>>2]|0:s;r=f[i+16>>2]|0;a=f[h+16>>2]|0;f[e+184>>2]=(u|0)==0?f[h+4>>2]|0:u;f[e+188>>2]=l;f[e+192>>2]=s;Wn(e);s=e+140|0;i=(f[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{f[e+196+(l*12|0)>>2]=i;f[e+196+(l*12|0)+4>>2]=0;n[e+196+(l*12|0)+8>>1]=0;n[e+196+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(f[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;f[e+4576>>2]=u;f[e+4580>>2]=0;t[e+4584>>0]=h;t[e+4585>>0]=1;t[e+4586>>0]=0;f[e+4588>>2]=u;f[e+4592>>2]=1;t[e+4596>>0]=h;t[e+4597>>0]=1;t[e+4598>>0]=0;f[e+4600>>2]=0;c=o;return}function ln(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=f[i>>2]|0;f[i>>2]=0;i=f[u>>2]|0;f[u>>2]=o;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);f[h>>2]=0;f[h+4>>2]=a;u=r+8|0;f[h+8>>2]=f[u>>2];if(a){i=Bp(4624)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{f[s>>2]=f[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{f[s>>2]=0;s=s+4|0}while((s|0)<(o|0));f[i>>2]=35800;f[i+128>>2]=f[e+136>>2];f[i+132>>2]=f[e+140>>2];f[i+136>>2]=f[e+144>>2];f[i+140>>2]=f[e+148>>2];f[i+144>>2]=f[e+152>>2];f[i+148>>2]=f[e+156>>2];f[i+152>>2]=f[e+160>>2];s=i+156|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[i+172>>2]=f[a>>2];f[i+176>>2]=0;f[i+180>>2]=0;f[i+184>>2]=0;s=i+4568|0;a=i+188|0;do{f[a>>2]=0;f[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;f[s>>2]=0;f[s+4>>2]=0;n[s+8>>1]=0;t[s+10>>0]=0;o=i+4580|0;f[o>>2]=0;f[o+4>>2]=0;n[o+8>>1]=0;t[o+10>>0]=0;o=i+4592|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;f[o+16>>2]=0;f[o+20>>2]=0;f[o+24>>2]=0;t[o+28>>0]=0;if(!(f[i+28>>2]|0))f[i+20>>2]=1;a=f[l>>2]|0;f[l>>2]=i;if(a){fM[f[(f[a>>2]|0)+4>>2]&255](a);i=f[l>>2]|0}Ct(i,h)}h=e+100|0;f[h>>2]=32;f[e+96>>2]=0;i=f[r>>2]|0;if(!i){f[e+108>>2]=f[r+4>>2];f[e+104>>2]=f[u>>2];zn(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}f[e+132>>2]=i;s=e+120|0;u=e+124|0;a=f[u>>2]|0;i=f[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){f[u>>2]=d;a=d}}else{Rt(s,4e3-o|0);i=f[s>>2]|0;l=i;a=f[u>>2]|0}f[e+108>>2]=l;f[e+104>>2]=a-i;zn(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function on(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+32>>2]|0)!=0?(f[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(44,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+16>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(45,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(46,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(47,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+20>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=3;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=3;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function un(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;f[e>>2]=36712;f[e+4>>2]=r;h=e+8|0;n=f[r>>2]|0;u=r+16|0;l=f[u>>2]|0;s=re(l,n)|0;f[h>>2]=0;d=e+12|0;f[d>>2]=0;f[e+16>>2]=0;do{if(!s)s=l;else{if(!((s|0)<0?(_=0,ue(178,h|0),l=_,_=0,l&1):0))c=4;if((c|0)==4?(_=0,o=de(67,s|0)|0,l=_,_=0,!(l&1)):0){f[d>>2]=o;f[h>>2]=o;f[e+16>>2]=o+s;n=o;do{t[n>>0]=0;n=(f[d>>2]|0)+1|0;f[d>>2]=n;s=s+-1|0}while((s|0)!=0);s=f[u>>2]|0;n=f[r>>2]|0;break}n=ze()|0;a=f[h>>2]|0;if(a){if((f[d>>2]|0)!=(a|0))f[d>>2]=a;Ip(a)}d=n;$e(d|0)}}while(0);l=e+20|0;n=re(s,n)|0;f[l>>2]=0;s=e+24|0;f[s>>2]=0;f[e+28>>2]=0;if(!n){d=e+36|0;f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];return}if(!((n|0)<0?(_=0,ue(178,l|0),r=_,_=0,r&1):0))c=15;if((c|0)==15?(_=0,a=de(67,n|0)|0,c=_,_=0,!(c&1)):0){f[s>>2]=a;f[l>>2]=a;f[e+28>>2]=a+n;do{t[a>>0]=0;a=(f[s>>2]|0)+1|0;f[s>>2]=a;n=n+-1|0}while((n|0)!=0);d=e+36|0;f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];return}n=ze()|0;a=f[l>>2]|0;if(a){if((f[s>>2]|0)!=(a|0))f[s>>2]=a;Ip(a)}a=f[h>>2]|0;if(!a){d=n;$e(d|0)}if((f[d>>2]|0)!=(a|0))f[d>>2]=a;Ip(a);d=n;$e(d|0)}function cn(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;f[e>>2]=36688;f[e+4>>2]=r;h=e+8|0;n=f[r>>2]|0;u=r+16|0;l=f[u>>2]|0;s=re(l,n)|0;f[h>>2]=0;d=e+12|0;f[d>>2]=0;f[e+16>>2]=0;do{if(!s)s=l;else{if(!((s|0)<0?(_=0,ue(178,h|0),l=_,_=0,l&1):0))c=4;if((c|0)==4?(_=0,o=de(67,s|0)|0,l=_,_=0,!(l&1)):0){f[d>>2]=o;f[h>>2]=o;f[e+16>>2]=o+s;n=o;do{t[n>>0]=0;n=(f[d>>2]|0)+1|0;f[d>>2]=n;s=s+-1|0}while((s|0)!=0);s=f[u>>2]|0;n=f[r>>2]|0;break}n=ze()|0;a=f[h>>2]|0;if(a){if((f[d>>2]|0)!=(a|0))f[d>>2]=a;Ip(a)}d=n;$e(d|0)}}while(0);l=e+20|0;n=re(s,n)|0;f[l>>2]=0;s=e+24|0;f[s>>2]=0;f[e+28>>2]=0;if(!n){d=e+36|0;f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];return}if(!((n|0)<0?(_=0,ue(178,l|0),r=_,_=0,r&1):0))c=15;if((c|0)==15?(_=0,a=de(67,n|0)|0,c=_,_=0,!(c&1)):0){f[s>>2]=a;f[l>>2]=a;f[e+28>>2]=a+n;do{t[a>>0]=0;a=(f[s>>2]|0)+1|0;f[s>>2]=a;n=n+-1|0}while((n|0)!=0);d=e+36|0;f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];return}n=ze()|0;a=f[l>>2]|0;if(a){if((f[s>>2]|0)!=(a|0))f[s>>2]=a;Ip(a)}a=f[h>>2]|0;if(!a){d=n;$e(d|0)}if((f[d>>2]|0)!=(a|0))f[d>>2]=a;Ip(a);d=n;$e(d|0)}function hn(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;f[e>>2]=36664;f[e+4>>2]=r;h=e+8|0;n=f[r>>2]|0;u=r+16|0;l=f[u>>2]|0;s=re(l,n)|0;f[h>>2]=0;d=e+12|0;f[d>>2]=0;f[e+16>>2]=0;do{if(!s)s=l;else{if(!((s|0)<0?(_=0,ue(178,h|0),l=_,_=0,l&1):0))c=4;if((c|0)==4?(_=0,o=de(67,s|0)|0,l=_,_=0,!(l&1)):0){f[d>>2]=o;f[h>>2]=o;f[e+16>>2]=o+s;n=o;do{t[n>>0]=0;n=(f[d>>2]|0)+1|0;f[d>>2]=n;s=s+-1|0}while((s|0)!=0);s=f[u>>2]|0;n=f[r>>2]|0;break}n=ze()|0;a=f[h>>2]|0;if(a){if((f[d>>2]|0)!=(a|0))f[d>>2]=a;Ip(a)}d=n;$e(d|0)}}while(0);l=e+20|0;n=re(s,n)|0;f[l>>2]=0;s=e+24|0;f[s>>2]=0;f[e+28>>2]=0;if(!n){d=e+36|0;f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];return}if(!((n|0)<0?(_=0,ue(178,l|0),r=_,_=0,r&1):0))c=15;if((c|0)==15?(_=0,a=de(67,n|0)|0,c=_,_=0,!(c&1)):0){f[s>>2]=a;f[l>>2]=a;f[e+28>>2]=a+n;do{t[a>>0]=0;a=(f[s>>2]|0)+1|0;f[s>>2]=a;n=n+-1|0}while((n|0)!=0);d=e+36|0;f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];return}n=ze()|0;a=f[l>>2]|0;if(a){if((f[s>>2]|0)!=(a|0))f[s>>2]=a;Ip(a)}a=f[h>>2]|0;if(!a){d=n;$e(d|0)}if((f[d>>2]|0)!=(a|0))f[d>>2]=a;Ip(a);d=n;$e(d|0)}function dn(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;f[e>>2]=36640;f[e+4>>2]=r;h=e+8|0;n=f[r>>2]|0;u=r+16|0;l=f[u>>2]|0;s=re(l,n)|0;f[h>>2]=0;d=e+12|0;f[d>>2]=0;f[e+16>>2]=0;do{if(!s)s=l;else{if(!((s|0)<0?(_=0,ue(178,h|0),l=_,_=0,l&1):0))c=4;if((c|0)==4?(_=0,o=de(67,s|0)|0,l=_,_=0,!(l&1)):0){f[d>>2]=o;f[h>>2]=o;f[e+16>>2]=o+s;n=o;do{t[n>>0]=0;n=(f[d>>2]|0)+1|0;f[d>>2]=n;s=s+-1|0}while((s|0)!=0);s=f[u>>2]|0;n=f[r>>2]|0;break}n=ze()|0;a=f[h>>2]|0;if(a){if((f[d>>2]|0)!=(a|0))f[d>>2]=a;Ip(a)}d=n;$e(d|0)}}while(0);l=e+20|0;n=re(s,n)|0;f[l>>2]=0;s=e+24|0;f[s>>2]=0;f[e+28>>2]=0;if(!n){d=e+36|0;f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];return}if(!((n|0)<0?(_=0,ue(178,l|0),r=_,_=0,r&1):0))c=15;if((c|0)==15?(_=0,a=de(67,n|0)|0,c=_,_=0,!(c&1)):0){f[s>>2]=a;f[l>>2]=a;f[e+28>>2]=a+n;do{t[a>>0]=0;a=(f[s>>2]|0)+1|0;f[s>>2]=a;n=n+-1|0}while((n|0)!=0);d=e+36|0;f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];return}n=ze()|0;a=f[l>>2]|0;if(a){if((f[s>>2]|0)!=(a|0))f[s>>2]=a;Ip(a)}a=f[h>>2]|0;if(!a){d=n;$e(d|0)}if((f[d>>2]|0)!=(a|0))f[d>>2]=a;Ip(a);d=n;$e(d|0)}function bn(e){e=e|0;var i=0,r=0;f[e>>2]=36640;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=f[e+8>>2]|0;if(!r)return;i=e+12|0;if((f[i>>2]|0)!=(r|0))f[i>>2]=r;Ip(r);return}function kn(e){e=e|0;var i=0,r=0;f[e>>2]=36640;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}i=f[e+8>>2]|0;if(!i){Ip(e);return}r=e+12|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i);Ip(e);return}function wn(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0;a=e+36|0;if(!(f[a>>2]|0)){a=e+40|0;pn(e,i,f[a>>2]|0,r,n);f[a>>2]=(f[a>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}s=re(f[(f[e+4>>2]|0)+16>>2]|0,r)|0;l=e+20|0;pn(e,i,f[l>>2]|0,r,n);e=f[a>>2]|0;if((uM[f[(f[e>>2]|0)+48>>2]&63](e,f[l>>2]|0,s)|0)==(s|0))return;a=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,a|0,3,35648);l=_;_=0;if(l&1){l=ze()|0;je(a|0);$e(l|0)}else bi(a|0,824,96)}function _n(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0;n=f[e+36>>2]|0;if(!n){n=e+40|0;mn(e,f[n>>2]|0,i,r,t);f[n>>2]=(f[n>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}else{vn(e,n,i,r,t);return}}function mn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0;u=e+4|0;l=f[u>>2]|0;if(!(t[l+32>>0]|0))u=i;else{o=e+8|0;Am(f[o>>2]|0,i|0,n*3|0)|0;l=f[u>>2]|0;i=f[l+16>>2]|0;if((n|0)>0){l=f[o>>2]|0;e=0;while(1){c=l+2|0;h=t[l>>0]|0;t[l>>0]=t[c>>0]|0;t[c>>0]=h;e=e+1|0;if((e|0)==(n|0))break;else l=l+i|0}l=f[u>>2]|0}u=f[o>>2]|0}switch(f[l+16>>2]|0){case 3:{if((f[l+24>>2]|0)==2){if((n|0)>0)l=0;else return;do{o=a[u+(l*3|0)+1>>0]|0;s=128-o+(a[u+(l*3|0)+2>>0]|0)|0;c=(a[u+(l*3|0)>>0]|0)-o+128|0;h=r+(l*3|0)|0;t[h>>0]=o+192+(((s&255)+(c&255)|0)>>>2);t[h+1>>0]=s;t[h+2>>0]=c;l=l+1|0}while((l|0)!=(n|0));return}l=(s|0)<(n|0)?s:n;if((l|0)<=0)return;e=s<<1;i=0;do{n=a[u+(i*3|0)+1>>0]|0;c=128-n+(a[u+(i*3|0)+2>>0]|0)|0;h=(a[u+(i*3|0)>>0]|0)-n+128|0;t[r+i>>0]=n+192+(((c&255)+(h&255)|0)>>>2);t[r+(i+s)>>0]=c;t[r+(i+e)>>0]=h;i=i+1|0}while((i|0)!=(l|0));return}case 4:{if((f[l+24>>2]|0)!=1)return;l=(s|0)<(n|0)?s:n;if((l|0)<=0)return;e=s<<1;i=s*3|0;o=0;do{h=t[u+(o<<2)+3>>0]|0;d=a[u+(o<<2)+1>>0]|0;n=128-d+(a[u+(o<<2)+2>>0]|0)|0;c=(a[u+(o<<2)>>0]|0)-d+128|0;t[r+o>>0]=d+192+(((n&255)+(c&255)|0)>>>2);t[r+(o+s)>>0]=n;t[r+(o+e)>>0]=c;t[r+(o+i)>>0]=h;o=o+1|0}while((o|0)!=(l|0));return}default:return}}function vn(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0;d=c;c=c+176|0;b=d+152|0;m=d+16|0;k=d;l=re(f[(f[e+4>>2]|0)+16>>2]|0,n)|0;u=e+20|0;s=f[u>>2]|0;if(!l){m=s;mn(e,m,r,n,a);c=d;return}while(1){o=uM[f[(f[i>>2]|0)+32>>2]&63](i,s,l)|0;if(!o)break;s=f[u>>2]|0;if((l|0)==(o|0)){h=26;break}else l=l-o|0}if((h|0)==26){mn(e,s,r,n,a);c=d;return}r=m+56|0;u=m+4|0;f[m>>2]=36160;f[r>>2]=36180;_=0;ce(62,m+56|0,u|0);d=_;_=0;if(d&1){m=ze()|0;nd(r);$e(m|0)}f[m+128>>2]=0;f[m+132>>2]=-1;f[m>>2]=36200;f[m+56>>2]=36220;_=0;ue(180,u|0);d=_;_=0;do{if(d&1)s=ze()|0;else{f[u>>2]=36236;i=m+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[m+52>>2]=16;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;_=0;ce(63,u|0,b|0);d=_;_=0;if(d&1){s=ze()|0;Oh(b);Oh(i);cd(u);break}Oh(b);_=0;s=ke(28,m|0,49029,57)|0;b=_;_=0;if(!(b&1)?(_=0,pe(36,s|0,0)|0,b=_,_=0,!(b&1)):0){o=He(16)|0;_=0;ce(64,k|0,u|0);b=_;_=0;if(!(b&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,o|0,3,35648,k|0);b=_;_=0;if(b&1)l=1;else{_=0;Ae(6,o|0,824,96);_=0;l=0}s=ze()|0;Oh(k);if(!l){k=s;f[m>>2]=36200;f[r>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(r);$e(k|0)}}else s=ze()|0;je(o|0);k=s;f[m>>2]=36200;f[r>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(r);$e(k|0)}k=ze()|0;f[m>>2]=36200;f[r>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(r);$e(k|0)}}while(0);m=s;nd(r);$e(m|0)}function pn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0;c=e+4|0;e=f[c>>2]|0;e:do{switch(f[e+16>>2]|0){case 3:{if((f[e+24>>2]|0)==2){if((n|0)>0)e=0;else break e;while(1){o=a[i+(e*3|0)+1>>0]|0;l=a[i+(e*3|0)+2>>0]|0;u=(a[i+(e*3|0)>>0]|0)-((l+o|0)>>>2)+64|0;s=r+(e*3|0)|0;t[s>>0]=l+128+u;t[s+1>>0]=u;t[s+2>>0]=o+128+u;e=e+1|0;if((e|0)==(n|0))break e}}e=(n|0)<(s|0)?n:s;if((e|0)>0){l=s<<1;o=0;do{d=a[i+(o+s)>>0]|0;b=a[i+(o+l)>>0]|0;h=(a[i+o>>0]|0)-((b+d|0)>>>2)+64|0;u=r+(o*3|0)|0;t[u>>0]=b+128+h;t[u+1>>0]=h;t[u+2>>0]=d+128+h;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((f[e+24>>2]|0)==1?(u=(n|0)<(s|0)?n:s,(u|0)>0):0){e=s<<1;l=s*3|0;o=0;do{h=a[i+(o+s)>>0]|0;k=a[i+(o+e)>>0]|0;d=(a[i+o>>0]|0)-((k+h|0)>>>2)+64|0;b=r+(o<<2)|0;d=d<<8&65280|a[i+(o+l)>>0]<<24|k+128+d&255|h+128+d<<16&16711680;t[b>>0]=d;t[b+1>>0]=d>>8;t[b+2>>0]=d>>16;t[b+3>>0]=d>>24;o=o+1|0}while((o|0)!=(u|0))}break}default:{}}}while(0);e=f[c>>2]|0;if(!(t[e+32>>0]|0))return;o=f[e+16>>2]|0;if((n|0)>0){e=r;l=0}else return;while(1){k=e+2|0;b=t[e>>0]|0;t[e>>0]=t[k>>0]|0;t[k>>0]=b;l=l+1|0;if((l|0)==(n|0))break;else e=e+o|0}return}function gn(e){e=e|0;var i=0,r=0;f[e>>2]=36664;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=f[e+8>>2]|0;if(!r)return;i=e+12|0;if((f[i>>2]|0)!=(r|0))f[i>>2]=r;Ip(r);return}function yn(e){e=e|0;var i=0,r=0;f[e>>2]=36664;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}i=f[e+8>>2]|0;if(!i){Ip(e);return}r=e+12|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i);Ip(e);return}function Mn(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0;a=e+36|0;if(!(f[a>>2]|0)){a=e+40|0;Tn(e,i,f[a>>2]|0,r,n);f[a>>2]=(f[a>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}s=re(f[(f[e+4>>2]|0)+16>>2]|0,r)|0;l=e+20|0;Tn(e,i,f[l>>2]|0,r,n);e=f[a>>2]|0;if((uM[f[(f[e>>2]|0)+48>>2]&63](e,f[l>>2]|0,s)|0)==(s|0))return;a=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,a|0,3,35648);l=_;_=0;if(l&1){l=ze()|0;je(a|0);$e(l|0)}else bi(a|0,824,96)}function En(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0;n=f[e+36>>2]|0;if(!n){n=e+40|0;An(e,f[n>>2]|0,i,r,t);f[n>>2]=(f[n>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}else{Sn(e,n,i,r,t);return}}function An(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0;u=e+4|0;l=f[u>>2]|0;if(!(t[l+32>>0]|0))u=i;else{o=e+8|0;Am(f[o>>2]|0,i|0,n*3|0)|0;l=f[u>>2]|0;i=f[l+16>>2]|0;if((n|0)>0){l=f[o>>2]|0;e=0;while(1){c=l+2|0;h=t[l>>0]|0;t[l>>0]=t[c>>0]|0;t[c>>0]=h;e=e+1|0;if((e|0)==(n|0))break;else l=l+i|0}l=f[u>>2]|0}u=f[o>>2]|0}switch(f[l+16>>2]|0){case 3:{if((f[l+24>>2]|0)==2){if((n|0)>0)l=0;else return;do{i=a[u+(l*3|0)>>0]|0;s=t[u+(l*3|0)+1>>0]|0;o=s&255;c=(a[u+(l*3|0)+2>>0]|0)+128-((o+i|0)>>>1)&255;h=r+(l*3|0)|0;t[h>>0]=i+128-o;t[h+1>>0]=s;t[h+2>>0]=c;l=l+1|0}while((l|0)!=(n|0));return}l=(s|0)<(n|0)?s:n;if((l|0)<=0)return;e=s<<1;i=0;do{c=t[u+(i*3|0)+1>>0]|0;o=a[u+(i*3|0)>>0]|0;n=c&255;h=(a[u+(i*3|0)+2>>0]|0)+128-((n+o|0)>>>1)&255;t[r+i>>0]=o+128-n;t[r+(i+s)>>0]=c;t[r+(i+e)>>0]=h;i=i+1|0}while((i|0)!=(l|0));return}case 4:{if((f[l+24>>2]|0)!=1)return;l=(s|0)<(n|0)?s:n;if((l|0)<=0)return;e=s<<1;i=s*3|0;o=0;do{n=t[u+(o<<2)+1>>0]|0;h=t[u+(o<<2)+3>>0]|0;b=a[u+(o<<2)>>0]|0;d=n&255;c=(a[u+(o<<2)+2>>0]|0)+128-((d+b|0)>>>1)&255;t[r+o>>0]=b+128-d;t[r+(o+s)>>0]=n;t[r+(o+e)>>0]=c;t[r+(o+i)>>0]=h;o=o+1|0}while((o|0)!=(l|0));return}default:return}}function Sn(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0;d=c;c=c+176|0;b=d+152|0;m=d+16|0;k=d;l=re(f[(f[e+4>>2]|0)+16>>2]|0,n)|0;u=e+20|0;s=f[u>>2]|0;if(!l){m=s;An(e,m,r,n,a);c=d;return}while(1){o=uM[f[(f[i>>2]|0)+32>>2]&63](i,s,l)|0;if(!o)break;s=f[u>>2]|0;if((l|0)==(o|0)){h=26;break}else l=l-o|0}if((h|0)==26){An(e,s,r,n,a);c=d;return}r=m+56|0;u=m+4|0;f[m>>2]=36160;f[r>>2]=36180;_=0;ce(62,m+56|0,u|0);d=_;_=0;if(d&1){m=ze()|0;nd(r);$e(m|0)}f[m+128>>2]=0;f[m+132>>2]=-1;f[m>>2]=36200;f[m+56>>2]=36220;_=0;ue(180,u|0);d=_;_=0;do{if(d&1)s=ze()|0;else{f[u>>2]=36236;i=m+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[m+52>>2]=16;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;_=0;ce(63,u|0,b|0);d=_;_=0;if(d&1){s=ze()|0;Oh(b);Oh(i);cd(u);break}Oh(b);_=0;s=ke(28,m|0,49029,57)|0;b=_;_=0;if(!(b&1)?(_=0,pe(36,s|0,0)|0,b=_,_=0,!(b&1)):0){o=He(16)|0;_=0;ce(64,k|0,u|0);b=_;_=0;if(!(b&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,o|0,3,35648,k|0);b=_;_=0;if(b&1)l=1;else{_=0;Ae(6,o|0,824,96);_=0;l=0}s=ze()|0;Oh(k);if(!l){k=s;f[m>>2]=36200;f[r>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(r);$e(k|0)}}else s=ze()|0;je(o|0);k=s;f[m>>2]=36200;f[r>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(r);$e(k|0)}k=ze()|0;f[m>>2]=36200;f[r>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(r);$e(k|0)}}while(0);m=s;nd(r);$e(m|0)}function Tn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0;c=e+4|0;e=f[c>>2]|0;e:do{switch(f[e+16>>2]|0){case 3:{if((f[e+24>>2]|0)==2){if((n|0)>0)e=0;else break e;while(1){o=t[i+(e*3|0)+1>>0]|0;u=o&255;l=(a[i+(e*3|0)>>0]|0)+128+u|0;u=(a[i+(e*3|0)+2>>0]|0)+128+(((l&255)+u|0)>>>1)&255;s=r+(e*3|0)|0;t[s>>0]=l;t[s+1>>0]=o;t[s+2>>0]=u;e=e+1|0;if((e|0)==(n|0))break e}}e=(n|0)<(s|0)?n:s;if((e|0)>0){l=s<<1;o=0;do{d=t[i+(o+s)>>0]|0;h=d&255;b=(a[i+o>>0]|0)+128+h|0;h=(a[i+(o+l)>>0]|0)+128+(((b&255)+h|0)>>>1)&255;u=r+(o*3|0)|0;t[u>>0]=b;t[u+1>>0]=d;t[u+2>>0]=h;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((f[e+24>>2]|0)==1?(u=(n|0)<(s|0)?n:s,(u|0)>0):0){e=s<<1;l=s*3|0;o=0;do{d=a[i+(o+s)>>0]|0;h=(a[i+o>>0]|0)+128+d&255;b=r+(o<<2)|0;d=h|d<<8|a[i+(o+l)>>0]<<24|(a[i+(o+e)>>0]|0)+128+((h+d|0)>>>1)<<16&16711680;t[b>>0]=d;t[b+1>>0]=d>>8;t[b+2>>0]=d>>16;t[b+3>>0]=d>>24;o=o+1|0}while((o|0)!=(u|0))}break}default:{}}}while(0);e=f[c>>2]|0;if(!(t[e+32>>0]|0))return;o=f[e+16>>2]|0;if((n|0)>0){e=r;l=0}else return;while(1){b=e+2|0;d=t[e>>0]|0;t[e>>0]=t[b>>0]|0;t[b>>0]=d;l=l+1|0;if((l|0)==(n|0))break;else e=e+o|0}return}function Cn(e){e=e|0;var i=0,r=0;f[e>>2]=36688;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=f[e+8>>2]|0;if(!r)return;i=e+12|0;if((f[i>>2]|0)!=(r|0))f[i>>2]=r;Ip(r);return}function Rn(e){e=e|0;var i=0,r=0;f[e>>2]=36688;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}i=f[e+8>>2]|0;if(!i){Ip(e);return}r=e+12|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i);Ip(e);return}function Ln(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0;a=e+36|0;if(!(f[a>>2]|0)){a=e+40|0;Bn(e,i,f[a>>2]|0,r,n);f[a>>2]=(f[a>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}s=re(f[(f[e+4>>2]|0)+16>>2]|0,r)|0;l=e+20|0;Bn(e,i,f[l>>2]|0,r,n);e=f[a>>2]|0;if((uM[f[(f[e>>2]|0)+48>>2]&63](e,f[l>>2]|0,s)|0)==(s|0))return;a=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,a|0,3,35648);l=_;_=0;if(l&1){l=ze()|0;je(a|0);$e(l|0)}else bi(a|0,824,96)}function xn(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0;n=f[e+36>>2]|0;if(!n){n=e+40|0;Pn(e,f[n>>2]|0,i,r,t);f[n>>2]=(f[n>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}else{On(e,n,i,r,t);return}}function Pn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0;u=e+4|0;l=f[u>>2]|0;if(!(t[l+32>>0]|0))u=i;else{o=e+8|0;Am(f[o>>2]|0,i|0,n*3|0)|0;l=f[u>>2]|0;i=f[l+16>>2]|0;if((n|0)>0){l=f[o>>2]|0;e=0;while(1){c=l+2|0;h=t[l>>0]|0;t[l>>0]=t[c>>0]|0;t[c>>0]=h;e=e+1|0;if((e|0)==(n|0))break;else l=l+i|0}l=f[u>>2]|0}u=f[o>>2]|0}switch(f[l+16>>2]|0){case 3:{if((f[l+24>>2]|0)==2){if((n|0)>0)l=0;else return;do{s=t[u+(l*3|0)+1>>0]|0;o=s&255;c=128-o+(a[u+(l*3|0)+2>>0]|0)&255;h=r+(l*3|0)|0;t[h>>0]=(a[u+(l*3|0)>>0]|0)+128-o;t[h+1>>0]=s;t[h+2>>0]=c;l=l+1|0}while((l|0)!=(n|0));return}l=(s|0)<(n|0)?s:n;if((l|0)<=0)return;e=s<<1;i=0;do{c=t[u+(i*3|0)+1>>0]|0;n=c&255;h=128-n+(a[u+(i*3|0)+2>>0]|0)&255;t[r+i>>0]=(a[u+(i*3|0)>>0]|0)+128-n;t[r+(i+s)>>0]=c;t[r+(i+e)>>0]=h;i=i+1|0}while((i|0)!=(l|0));return}case 4:{if((f[l+24>>2]|0)!=1)return;l=(s|0)<(n|0)?s:n;if((l|0)<=0)return;e=s<<1;i=s*3|0;o=0;do{n=t[u+(o<<2)+1>>0]|0;h=t[u+(o<<2)+3>>0]|0;d=n&255;c=128-d+(a[u+(o<<2)+2>>0]|0)&255;t[r+o>>0]=(a[u+(o<<2)>>0]|0)+128-d;t[r+(o+s)>>0]=n;t[r+(o+e)>>0]=c;t[r+(o+i)>>0]=h;o=o+1|0}while((o|0)!=(l|0));return}default:return}}function On(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0;d=c;c=c+176|0;b=d+152|0;m=d+16|0;k=d;l=re(f[(f[e+4>>2]|0)+16>>2]|0,n)|0;u=e+20|0;s=f[u>>2]|0;if(!l){m=s;Pn(e,m,r,n,a);c=d;return}while(1){o=uM[f[(f[i>>2]|0)+32>>2]&63](i,s,l)|0;if(!o)break;s=f[u>>2]|0;if((l|0)==(o|0)){h=26;break}else l=l-o|0}if((h|0)==26){Pn(e,s,r,n,a);c=d;return}r=m+56|0;u=m+4|0;f[m>>2]=36160;f[r>>2]=36180;_=0;ce(62,m+56|0,u|0);d=_;_=0;if(d&1){m=ze()|0;nd(r);$e(m|0)}f[m+128>>2]=0;f[m+132>>2]=-1;f[m>>2]=36200;f[m+56>>2]=36220;_=0;ue(180,u|0);d=_;_=0;do{if(d&1)s=ze()|0;else{f[u>>2]=36236;i=m+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[m+52>>2]=16;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;_=0;ce(63,u|0,b|0);d=_;_=0;if(d&1){s=ze()|0;Oh(b);Oh(i);cd(u);break}Oh(b);_=0;s=ke(28,m|0,49029,57)|0;b=_;_=0;if(!(b&1)?(_=0,pe(36,s|0,0)|0,b=_,_=0,!(b&1)):0){o=He(16)|0;_=0;ce(64,k|0,u|0);b=_;_=0;if(!(b&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,o|0,3,35648,k|0);b=_;_=0;if(b&1)l=1;else{_=0;Ae(6,o|0,824,96);_=0;l=0}s=ze()|0;Oh(k);if(!l){k=s;f[m>>2]=36200;f[r>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(r);$e(k|0)}}else s=ze()|0;je(o|0);k=s;f[m>>2]=36200;f[r>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(r);$e(k|0)}k=ze()|0;f[m>>2]=36200;f[r>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(r);$e(k|0)}}while(0);m=s;nd(r);$e(m|0)}function Bn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0;c=e+4|0;e=f[c>>2]|0;e:do{switch(f[e+16>>2]|0){case 3:{if((f[e+24>>2]|0)==2){if((n|0)>0)e=0;else break e;while(1){o=t[i+(e*3|0)+1>>0]|0;l=o&255;u=l+128+(a[i+(e*3|0)+2>>0]|0)&255;s=r+(e*3|0)|0;t[s>>0]=(a[i+(e*3|0)>>0]|0)+128+l;t[s+1>>0]=o;t[s+2>>0]=u;e=e+1|0;if((e|0)==(n|0))break e}}e=(n|0)<(s|0)?n:s;if((e|0)>0){l=s<<1;o=0;do{d=t[i+(o+s)>>0]|0;b=d&255;h=b+128+(a[i+(o+l)>>0]|0)&255;u=r+(o*3|0)|0;t[u>>0]=(a[i+o>>0]|0)+128+b;t[u+1>>0]=d;t[u+2>>0]=h;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((f[e+24>>2]|0)==1?(u=(n|0)<(s|0)?n:s,(u|0)>0):0){e=s<<1;l=s*3|0;o=0;do{d=a[i+(o+s)>>0]|0;b=r+(o<<2)|0;d=(a[i+o>>0]|0)+128+d&255|d<<8|a[i+(o+l)>>0]<<24|d+128+(a[i+(o+e)>>0]|0)<<16&16711680;t[b>>0]=d;t[b+1>>0]=d>>8;t[b+2>>0]=d>>16;t[b+3>>0]=d>>24;o=o+1|0}while((o|0)!=(u|0))}break}default:{}}}while(0);e=f[c>>2]|0;if(!(t[e+32>>0]|0))return;o=f[e+16>>2]|0;if((n|0)>0){e=r;l=0}else return;while(1){b=e+2|0;d=t[e>>0]|0;t[e>>0]=t[b>>0]|0;t[b>>0]=d;l=l+1|0;if((l|0)==(n|0))break;else e=e+o|0}return}function In(e){e=e|0;var i=0,r=0;f[e>>2]=36712;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=f[e+8>>2]|0;if(!r)return;i=e+12|0;if((f[i>>2]|0)!=(r|0))f[i>>2]=r;Ip(r);return}function Dn(e){e=e|0;var i=0,r=0;f[e>>2]=36712;i=f[e+20>>2]|0;if(i){r=e+24|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}i=f[e+8>>2]|0;if(!i){Ip(e);return}r=e+12|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i);Ip(e);return}function Nn(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0;a=e+36|0;if(!(f[a>>2]|0)){a=e+40|0;Hn(e,i,f[a>>2]|0,r,n);f[a>>2]=(f[a>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}s=re(f[(f[e+4>>2]|0)+16>>2]|0,r)|0;l=e+20|0;Hn(e,i,f[l>>2]|0,r,n);e=f[a>>2]|0;if((uM[f[(f[e>>2]|0)+48>>2]&63](e,f[l>>2]|0,s)|0)==(s|0))return;a=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,a|0,3,35648);l=_;_=0;if(l&1){l=ze()|0;je(a|0);$e(l|0)}else bi(a|0,824,96)}function Fn(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0;n=f[e+36>>2]|0;if(!n){n=e+40|0;Un(e,f[n>>2]|0,i,r,t);f[n>>2]=(f[n>>2]|0)+(f[(f[e+4>>2]|0)+12>>2]|0);return}else{jn(e,n,i,r,t);return}}function Un(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,c=0;o=e+4|0;s=f[o>>2]|0;if(!(t[s+32>>0]|0))o=i;else{l=e+8|0;Am(f[l>>2]|0,i|0,n*3|0)|0;s=f[o>>2]|0;i=f[s+16>>2]|0;if((n|0)>0){s=f[l>>2]|0;e=0;while(1){u=s+2|0;c=t[s>>0]|0;t[s>>0]=t[u>>0]|0;t[u>>0]=c;e=e+1|0;if((e|0)==(n|0))break;else s=s+i|0}s=f[o>>2]|0}o=f[l>>2]|0}switch(f[s+16>>2]|0){case 3:{if((f[s+24>>2]|0)==2){if((n|0)>0)s=0;else return;do{a=t[o+(s*3|0)+1>>0]|0;u=t[o+(s*3|0)+2>>0]|0;c=r+(s*3|0)|0;t[c>>0]=t[o+(s*3|0)>>0]|0;t[c+1>>0]=a;t[c+2>>0]=u;s=s+1|0}while((s|0)!=(n|0));return}s=(a|0)<(n|0)?a:n;if((s|0)<=0)return;e=a<<1;i=0;do{u=t[o+(i*3|0)+1>>0]|0;c=t[o+(i*3|0)+2>>0]|0;t[r+i>>0]=t[o+(i*3|0)>>0]|0;t[r+(i+a)>>0]=u;t[r+(i+e)>>0]=c;i=i+1|0}while((i|0)!=(s|0));return}case 4:{if((f[s+24>>2]|0)!=1)return;s=(a|0)<(n|0)?a:n;if((s|0)<=0)return;e=a<<1;i=a*3|0;l=0;do{n=t[o+(l<<2)+1>>0]|0;u=t[o+(l<<2)+2>>0]|0;c=t[o+(l<<2)+3>>0]|0;t[r+l>>0]=t[o+(l<<2)>>0]|0;t[r+(l+a)>>0]=n;t[r+(l+e)>>0]=u;t[r+(l+i)>>0]=c;l=l+1|0}while((l|0)!=(s|0));return}default:return}}function jn(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0;d=c;c=c+176|0;b=d+152|0;m=d+16|0;k=d;l=re(f[(f[e+4>>2]|0)+16>>2]|0,n)|0;u=e+20|0;s=f[u>>2]|0;if(!l){m=s;Un(e,m,r,n,a);c=d;return}while(1){o=uM[f[(f[i>>2]|0)+32>>2]&63](i,s,l)|0;if(!o)break;s=f[u>>2]|0;if((l|0)==(o|0)){h=26;break}else l=l-o|0}if((h|0)==26){Un(e,s,r,n,a);c=d;return}r=m+56|0;u=m+4|0;f[m>>2]=36160;f[r>>2]=36180;_=0;ce(62,m+56|0,u|0);d=_;_=0;if(d&1){m=ze()|0;nd(r);$e(m|0)}f[m+128>>2]=0;f[m+132>>2]=-1;f[m>>2]=36200;f[m+56>>2]=36220;_=0;ue(180,u|0);d=_;_=0;do{if(d&1)s=ze()|0;else{f[u>>2]=36236;i=m+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[m+52>>2]=16;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;_=0;ce(63,u|0,b|0);d=_;_=0;if(d&1){s=ze()|0;Oh(b);Oh(i);cd(u);break}Oh(b);_=0;s=ke(28,m|0,49029,57)|0;b=_;_=0;if(!(b&1)?(_=0,pe(36,s|0,0)|0,b=_,_=0,!(b&1)):0){o=He(16)|0;_=0;ce(64,k|0,u|0);b=_;_=0;if(!(b&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,o|0,3,35648,k|0);b=_;_=0;if(b&1)l=1;else{_=0;Ae(6,o|0,824,96);_=0;l=0}s=ze()|0;Oh(k);if(!l){k=s;f[m>>2]=36200;f[r>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(r);$e(k|0)}}else s=ze()|0;je(o|0);k=s;f[m>>2]=36200;f[r>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(r);$e(k|0)}k=ze()|0;f[m>>2]=36200;f[r>>2]=36220;f[u>>2]=36236;Oh(i);cd(u);nd(r);$e(k|0)}}while(0);m=s;nd(r);$e(m|0)}function Hn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0;c=e+4|0;e=f[c>>2]|0;e:do{switch(f[e+16>>2]|0){case 3:{if((f[e+24>>2]|0)==2){if((n|0)>0)e=0;else break e;while(1){o=t[i+(e*3|0)+1>>0]|0;u=t[i+(e*3|0)+2>>0]|0;s=r+(e*3|0)|0;t[s>>0]=t[i+(e*3|0)>>0]|0;t[s+1>>0]=o;t[s+2>>0]=u;e=e+1|0;if((e|0)==(n|0))break e}}e=(n|0)<(s|0)?n:s;if((e|0)>0){l=s<<1;o=0;do{d=t[i+(o+s)>>0]|0;h=t[i+(o+l)>>0]|0;u=r+(o*3|0)|0;t[u>>0]=t[i+o>>0]|0;t[u+1>>0]=d;t[u+2>>0]=h;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((f[e+24>>2]|0)==1?(u=(n|0)<(s|0)?n:s,(u|0)>0):0){e=s<<1;l=s*3|0;o=0;do{d=r+(o<<2)|0;h=a[i+(o+s)>>0]<<8|a[i+o>>0]|a[i+(o+e)>>0]<<16|a[i+(o+l)>>0]<<24;t[d>>0]=h;t[d+1>>0]=h>>8;t[d+2>>0]=h>>16;t[d+3>>0]=h>>24;o=o+1|0}while((o|0)!=(u|0))}break}default:{}}}while(0);e=f[c>>2]|0;if(!(t[e+32>>0]|0))return;o=f[e+16>>2]|0;if((n|0)>0){e=r;l=0}else return;while(1){d=e+2|0;h=t[e>>0]|0;t[e>>0]=t[d>>0]|0;t[d>>0]=h;l=l+1|0;if((l|0)==(n|0))break;else e=e+o|0}return}function zn(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0;p=c;c=c+32|0;y=p+12|0;v=p;k=e+180|0;w=(f[k>>2]|0)+4|0;if((f[e+32>>2]|0)==1)m=f[e+24>>2]|0;else m=1;i=re(m<<1,w)|0;f[y>>2]=0;M=y+4|0;f[M>>2]=0;f[y+8>>2]=0;e:do{if(i){if(!(i>>>0>1431655765?(_=0,ue(178,y|0),g=_,_=0,g&1):0))s=6;if((s|0)==6?(_=0,r=de(67,i*3|0)|0,g=_,_=0,!(g&1)):0){f[M>>2]=r;f[y>>2]=r;f[y+8>>2]=r+(i*3|0);while(1){t[r>>0]=0;t[r+1>>0]=0;t[r+2>>0]=0;r=(f[M>>2]|0)+3|0;f[M>>2]=r;i=i+-1|0;if(!i)break e}}n=ze()|0;i=f[y>>2]|0;if(!i)$e(n|0);r=f[M>>2]|0;if((r|0)!=(i|0))f[M>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Ip(i);$e(n|0)}}while(0);f[v>>2]=0;g=v+4|0;f[g>>2]=0;f[v+8>>2]=0;do{if(!m)s=19;else{if(!(m>>>0>1073741823?(_=0,ue(178,v|0),b=_,_=0,b&1):0))s=17;if((s|0)==17?(n=m<<2,_=0,a=de(67,n|0)|0,b=_,_=0,!(b&1)):0){f[v>>2]=a;s=a+(m<<2)|0;f[v+8>>2]=s;ym(a|0,0,n|0)|0;f[g>>2]=s;s=19;break}n=ze()|0;i=f[v>>2]|0;r=i;if(i){a=f[g>>2]|0;if((a|0)!=(i|0))f[g>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}}while(0);if((s|0)==19){a=e+12|0;e:do{if((f[a>>2]|0)>0){s=e+4604|0;l=(re(m,w)|0)+1|0;o=e+4608|0;u=e+92|0;h=(m|0)>0;d=e+4600|0;b=0;i:while(1){n=f[y>>2]|0;i=n+3|0;f[s>>2]=i;r=n+(l*3|0)|0;f[o>>2]=r;if(!(b&1))i=l;else{f[s>>2]=r;f[o>>2]=i;i=1}r=f[u>>2]|0;_=0;Re(f[(f[r>>2]|0)+12>>2]|0,r|0,n+(i*3|0)|0,f[k>>2]|0,w|0);n=_;_=0;if(n&1){s=29;break}if(h){i=f[v>>2]|0;r=f[s>>2]|0;n=0;do{f[d>>2]=f[i+(n<<2)>>2];E=f[k>>2]|0;i=r+(E*3|0)|0;r=r+((E+-1|0)*3|0)|0;t[i>>0]=t[r>>0]|0;t[i+1>>0]=t[r+1>>0]|0;t[i+2>>0]=t[r+2>>0]|0;i=f[s>>2]|0;r=(f[o>>2]|0)+-3|0;t[r>>0]=t[i>>0]|0;t[r+1>>0]=t[i+1>>0]|0;t[r+2>>0]=t[i+2>>0]|0;_=0;ce(70,e|0,0);r=_;_=0;if(r&1){s=28;break i}i=f[v>>2]|0;f[i+(n<<2)>>2]=f[d>>2];r=(f[s>>2]|0)+(w*3|0)|0;f[s>>2]=r;f[o>>2]=(f[o>>2]|0)+(w*3|0);n=n+1|0}while((n|0)<(m|0))}b=b+1|0;if((b|0)>=(f[a>>2]|0)){s=41;break e}}if((s|0)==28){n=ze()|0;break}else if((s|0)==29){n=ze()|0;break}}else s=41}while(0);do{if((s|0)==41){_=0;ue(182,e|0);E=_;_=0;if(E&1){n=ze()|0;break}i=f[v>>2]|0;r=i;if(i){n=f[g>>2]|0;if((n|0)!=(i|0))f[g>>2]=n+(~((n+-4-r|0)>>>2)<<2);Ip(i)}i=f[y>>2]|0;if(!i){c=p;return}r=f[M>>2]|0;if((r|0)!=(i|0))f[M>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Ip(i);c=p;return}}while(0);i=f[v>>2]|0;r=i;if(i){a=f[g>>2]|0;if((a|0)!=(i|0))f[g>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}i=f[y>>2]|0;if(!i)$e(n|0);r=f[M>>2]|0;if((r|0)!=(i|0))f[M>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Ip(i);$e(n|0)}function Yn(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;S=e+180|0;if((f[S>>2]|0)<=0)return;T=e+4608|0;C=e+4604|0;R=e+4612|0;A=0;while(1){y=A+-1|0;l=f[T>>2]|0;o=f[C>>2]|0;i=A+1|0;s=a[o+(A*3|0)>>0]|0;E=f[R>>2]|0;u=a[o+(y*3|0)>>0]|0;c=s-u|0;h=a[l+(y*3|0)>>0]|0;d=u-h|0;b=((((t[E+((a[o+(i*3|0)>>0]|0)-s)>>0]|0)*9|0)+(t[E+c>>0]|0)|0)*9|0)+(t[E+d>>0]|0)|0;n=a[o+(A*3|0)+1>>0]|0;k=a[o+(y*3|0)+1>>0]|0;w=n-k|0;_=a[l+(y*3|0)+1>>0]|0;m=k-_|0;v=((((t[E+((a[o+(i*3|0)+1>>0]|0)-n)>>0]|0)*9|0)+(t[E+w>>0]|0)|0)*9|0)+(t[E+m>>0]|0)|0;r=a[o+(A*3|0)+2>>0]|0;p=a[o+(y*3|0)+2>>0]|0;g=r-p|0;y=a[l+(y*3|0)+2>>0]|0;M=p-y|0;E=((((t[E+((a[o+(i*3|0)+2>>0]|0)-r)>>0]|0)*9|0)+(t[E+g>>0]|0)|0)*9|0)+(t[E+M>>0]|0)|0;if(!(v|b|E))i=(qn(e,A,0)|0)+A|0;else{o=a[l+(A*3|0)>>0]|0;l=s-h>>31;if((l^d|0)>=0)if((l^c|0)<0)s=h;else s=h-u+s|0;o=Xn(e,b,o,s,0)|0;l=a[(f[T>>2]|0)+(A*3|0)+1>>0]|0;s=n-_>>31;if((s^m|0)>=0)if((s^w|0)<0)n=_;else n=_-k+n|0;s=Xn(e,v,l,n,0)|0;l=a[(f[T>>2]|0)+(A*3|0)+2>>0]|0;n=r-y>>31;if((n^M|0)>=0)if((n^g|0)<0)r=y;else r=y-p+r|0;E=Xn(e,E,l,r,0)|0;A=(f[T>>2]|0)+(A*3|0)|0;t[A>>0]=o;t[A+1>>0]=s;t[A+2>>0]=E}if((i|0)<(f[S>>2]|0))A=i;else break}return}function qn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0;T=c;c=c+32|0;S=T+15|0;w=T+12|0;k=T+9|0;_=T+6|0;y=T+3|0;M=T;E=(f[e+180>>2]|0)-i|0;A=f[e+4608>>2]|0;m=f[e+4604>>2]|0;g=A+((i+-1|0)*3|0)|0;v=t[g>>0]|0;p=t[g+1>>0]|0;g=t[g+2>>0]|0;r=v&255;n=e+144|0;s=p&255;l=g&255;b=0;while(1){o=A+((b+i|0)*3|0)|0;u=o+1|0;h=o+2|0;C=(a[o>>0]|0)-r|0;d=f[n>>2]|0;if((((C|0)>-1?C:0-C|0)|0)>(d|0))break;C=(a[u>>0]|0)-s|0;if((((C|0)>-1?C:0-C|0)|0)>(d|0))break;C=(a[h>>0]|0)-l|0;if((((C|0)>-1?C:0-C|0)|0)>(d|0))break;t[o>>0]=v;t[u>>0]=p;t[h>>0]=g;b=b+1|0;if((b|0)==(E|0)){b=E;break}}s=(b|0)==(E|0);l=e+4600|0;n=f[36476+(f[l>>2]<<2)>>2]|0;if((1<<n|0)>(b|0))r=b;else{r=b;do{Bt(e,1,1);n=f[l>>2]|0;r=r-(1<<f[36476+(n<<2)>>2])|0;n=(n|0)>30?31:n+1|0;f[l>>2]=n;n=f[36476+(n<<2)>>2]|0}while((r|0)>=(1<<n|0))}if(!s){Bt(e,r,n+1|0);i=b+i|0;C=A+(i*3|0)|0;t[y>>0]=t[C>>0]|0;t[y+1>>0]=t[C+1>>0]|0;t[y+2>>0]=t[C+2>>0]|0;t[M>>0]=v;t[M+1>>0]=p;t[M+2>>0]=g;i=m+(i*3|0)|0;t[k>>0]=t[y>>0]|0;t[k+1>>0]=t[y+1>>0]|0;t[k+2>>0]=t[y+2>>0]|0;t[w>>0]=t[M>>0]|0;t[w+1>>0]=t[M+1>>0]|0;t[w+2>>0]=t[M+2>>0]|0;t[S>>0]=t[i>>0]|0;t[S+1>>0]=t[i+1>>0]|0;t[S+2>>0]=t[i+2>>0]|0;Gn(_,e,k,w,S);t[C>>0]=t[_>>0]|0;t[C+1>>0]=t[_+1>>0]|0;t[C+2>>0]=t[_+2>>0]|0;C=f[l>>2]|0;f[l>>2]=(C|0)<1?0:C+-1|0;C=b+1|0;c=T;return C|0}if(!r){C=E;c=T;return C|0}Bt(e,1,1);C=E;c=T;return C|0}function Xn(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0;_=i>>31;s=(_^i)-_|0;k=e+196+(s*12|0)+10|0;l=n[k>>1]|0;b=e+196+(s*12|0)|0;a=f[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){i=5;while(1)if((l<<i|0)<(a|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;h=e+196+(s*12|0)+8|0;a=(n[h>>1]^_)-_+t|0;w=e+136|0;t=f[w>>2]|0;if((a&t|0)==(a|0))c=a;else c=t&~(a>>31);a=(r-c^_)-_|0;u=e+144|0;t=f[u>>2]|0;if((a|0)>0)a=(a+t|0)/(t<<1|1|0)|0;else a=(a-t|0)/(t<<1|1|0)|0;d=e+140|0;o=f[d>>2]|0;r=((a|0)<0?o:0)+a|0;o=r-((r|0)<((o+1|0)/2|0|0)?0:o)|0;s=e+196+(s*12|0)+4|0;if(!(t|i))a=(f[s>>2]<<1)+-1+l>>31;else a=0;t=a^o;Vn(e,i,t>>30^t<<1,f[e+156>>2]|0);t=f[e+160>>2]|0;i=(f[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;a=(f[s>>2]|0)+(re(f[u>>2]<<1|1,o)|0)|0;r=n[k>>1]|0;if((r|0)==(t|0)){i=i>>1;a=a>>1;r=t>>1}f[b>>2]=i;t=r+1|0;n[k>>1]=t;i=t+a|0;if((i|0)>=1){if((a|0)>0){a=a-t|0;k=n[h>>1]|0;n[h>>1]=(k<<16>>16<127&1)+(k&65535);a=(a|0)>0?0:a}}else{a=n[h>>1]|0;n[h>>1]=(a&65535)-(a<<16>>16>-128&1);a=(i|0)>(~r|0)?i:0-r|0}f[s>>2]=a;t=f[u>>2]|0;r=t<<1|1;i=(re(r,(o^_)-_|0)|0)+c|0;if((i|0)>=(0-t|0)){a=f[w>>2]|0;if((a+t|0)<(i|0))i=i-(re(f[d>>2]|0,r)|0)|0}else{i=(re(f[d>>2]|0,r)|0)+i|0;a=f[w>>2]|0}if((i&a|0)==(i|0)){_=i;_=_&255;return _|0}_=a&~(i>>31);_=_&255;return _|0}function Vn(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0;n=r>>i;a=e+148|0;s=t-(f[a>>2]|0)|0;if((n|0)<(s+-1|0)){if((n|0)>30){t=(n|0)/2|0;Bt(e,0,t);n=n-t|0}Bt(e,1,n+1|0);Bt(e,(1<<i)+-1&r,i);return}if((s|0)>31){Bt(e,0,31);Bt(e,1,t+-31-(f[a>>2]|0)|0)}else Bt(e,1,s);i=f[a>>2]|0;Bt(e,(1<<i)+-1&r+-1,i);return}function Gn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0;_=i+136|0;b=a[s>>0]|0;k=b-(a[n>>0]|0)>>31|1;l=re(k,(a[r>>0]|0)-b|0)|0;h=i+144|0;o=f[h>>2]|0;if((l|0)>0)l=(l+o|0)/(o<<1|1|0)|0;else l=(l-o|0)/(o<<1|1|0)|0;y=i+140|0;c=f[y>>2]|0;u=((l|0)<0?c:0)+l|0;c=u-((u|0)<((c+1|0)/2|0|0)?0:c)|0;u=i+4576|0;Kn(i,u,c);v=a[s+1>>0]|0;p=v-(a[n+1>>0]|0)>>31|1;l=re(p,(a[r+1>>0]|0)-v|0)|0;o=f[h>>2]|0;if((l|0)>0)l=(l+o|0)/(o<<1|1|0)|0;else l=(l-o|0)/(o<<1|1|0)|0;w=f[y>>2]|0;g=((l|0)<0?w:0)+l|0;w=g-((g|0)<((w+1|0)/2|0|0)?0:w)|0;Kn(i,u,w);g=a[s+2>>0]|0;m=g-(a[n+2>>0]|0)>>31|1;l=re(m,(a[r+2>>0]|0)-g|0)|0;o=f[h>>2]|0;if((l|0)>0)l=(l+o|0)/(o<<1|1|0)|0;else l=(l-o|0)/(o<<1|1|0)|0;d=f[y>>2]|0;l=((l|0)<0?d:0)+l|0;d=l-((l|0)<((d+1|0)/2|0|0)?0:d)|0;Kn(i,u,d);u=f[h>>2]|0;h=u<<1|1;l=(re(re(h,c)|0,k)|0)+b|0;r=0-u|0;if((l|0)>=(r|0)){o=f[_>>2]|0;if((o+u|0)<(l|0)){l=l-(re(f[y>>2]|0,h)|0)|0;n=o}else n=o}else{l=(re(f[y>>2]|0,h)|0)+l|0;n=f[_>>2]|0}if((l&n|0)!=(l|0))l=n&~(l>>31);s=l&255;l=(re(re(h,w)|0,p)|0)+v|0;if((l|0)>=(r|0)){if((n+u|0)<(l|0))l=l-(re(f[y>>2]|0,h)|0)|0}else l=(re(f[y>>2]|0,h)|0)+l|0;if((l&n|0)!=(l|0))l=n&~(l>>31);o=l&255;l=(re(re(h,d)|0,m)|0)+g|0;if((l|0)>=(r|0)){if((n+u|0)<(l|0))l=l-(re(f[y>>2]|0,h)|0)|0}else l=(re(f[y>>2]|0,h)|0)+l|0;if((l&n|0)==(l|0)){y=l;y=y&255;t[e>>0]=s;g=e+1|0;t[g>>0]=o;e=e+2|0;t[e>>0]=y;return}y=n&~(l>>31);y=y&255;t[e>>0]=s;g=e+1|0;t[g>>0]=o;e=e+2|0;t[e>>0]=y;return}function Kn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=f[h>>2]|0;s=(re(o>>>1,c)|0)+(f[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;Vn(e,s,n,(f[e+156>>2]|0)+-1-(f[36476+(f[e+4600>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;t[e>>0]=(a[e>>0]|0)+1}n=(n+1-(f[h>>2]|0)>>1)+(f[i>>2]|0)|0;f[i>>2]=n;s=t[d>>0]|0;if(s<<24>>24!=(t[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}f[i>>2]=n>>1;e=(s&255)>>>1;t[d>>0]=e;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}function Wn(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0;k=c;c=c+32|0;n=k;b=e+144|0;e:do{if(!(f[b>>2]|0)){r=f[e+136>>2]|0;i=e+152|0;if((((r|0)==((1<<f[i>>2])+-1|0)?(op(n,r,0),(f[n+4>>2]|0)==(f[e+184>>2]|0)):0)?(f[n+8>>2]|0)==(f[e+188>>2]|0):0)?(f[n+12>>2]|0)==(f[e+192>>2]|0):0)switch(f[i>>2]|0){case 8:{b=f[8900]|0;f[e+4612>>2]=b+(((f[8901]|0)-b|0)>>>1);c=k;return}case 10:{b=f[8903]|0;f[e+4612>>2]=b+(((f[8904]|0)-b|0)>>>1);c=k;return}case 12:{b=f[8906]|0;f[e+4612>>2]=b+(((f[8907]|0)-b|0)>>>1);c=k;return}case 16:{b=f[8909]|0;f[e+4612>>2]=b+(((f[8910]|0)-b|0)>>>1);c=k;return}default:break e}}else i=e+152|0}while(0);d=1<<f[i>>2];r=e+4616|0;n=d<<1;a=e+4620|0;s=f[a>>2]|0;i=f[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)f[a>>2]=o}else{zt(r,n-l|0);i=f[r>>2]|0}h=e+4612|0;f[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=k;return}o=e+192|0;u=e+188|0;l=e+184|0;s=i;do{i=f[o>>2]|0;if((s|0)>(0-i|0)){r=f[u>>2]|0;if((s|0)>(0-r|0)){n=f[l>>2]|0;if((s|0)>(0-n|0)){a=f[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;t[(f[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=k;return}function Zn(e){e=e|0;var i=0,r=0;f[e>>2]=35996;i=f[e+4592>>2]|0;if(i){r=e+4596|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function Jn(e){e=e|0;var i=0,r=0;f[e>>2]=35996;i=f[e+4592>>2]|0;if(i){r=e+4596|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function Qn(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,65535,0);o=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[u+8>>2]|0:l;a=f[i+12>>2]|0;a=(a|0)==0?f[u+12>>2]|0:a;i=f[i+16>>2]|0;r=f[u+16>>2]|0;f[e+160>>2]=(o|0)==0?f[u+4>>2]|0:o;f[e+164>>2]=l;f[e+168>>2]=a;lf(e);a=0;do{f[e+172+(a*12|0)>>2]=1024;f[e+172+(a*12|0)+4>>2]=0;n[e+172+(a*12|0)+8>>1]=0;n[e+172+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;f[e+4552>>2]=1024;f[e+4556>>2]=0;t[e+4560>>0]=u;t[e+4561>>0]=1;t[e+4562>>0]=0;f[e+4564>>2]=1024;f[e+4568>>2]=1;t[e+4572>>0]=u;t[e+4573>>0]=1;t[e+4574>>0]=0;f[e+4576>>2]=0;c=s;return}function $n(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=f[i>>2]|0;f[i>>2]=0;i=f[u>>2]|0;f[u>>2]=o;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);f[h>>2]=0;f[h+4>>2]=a;u=r+8|0;f[h+8>>2]=f[u>>2];if(a){i=Bp(4600)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{f[s>>2]=f[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{f[s>>2]=0;s=s+4|0}while((s|0)<(o|0));f[i>>2]=35772;s=i+132|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[i+148>>2]=f[a>>2];f[i+152>>2]=0;f[i+156>>2]=0;f[i+160>>2]=0;s=i+4544|0;a=i+164|0;do{f[a>>2]=0;f[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;f[s>>2]=0;f[s+4>>2]=0;n[s+8>>1]=0;t[s+10>>0]=0;o=i+4556|0;f[o>>2]=0;f[o+4>>2]=0;n[o+8>>1]=0;t[o+10>>0]=0;o=i+4568|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;f[o+16>>2]=0;f[o+20>>2]=0;f[o+24>>2]=0;t[o+28>>0]=0;if(!(f[i+28>>2]|0))f[i+20>>2]=1;a=f[l>>2]|0;f[l>>2]=i;if(a){fM[f[(f[a>>2]|0)+4>>2]&255](a);i=f[l>>2]|0}Ct(i,h)}h=e+100|0;f[h>>2]=32;f[e+96>>2]=0;i=f[r>>2]|0;if(!i){f[e+108>>2]=f[r+4>>2];f[e+104>>2]=f[u>>2];rf(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}f[e+132>>2]=i;s=e+120|0;u=e+124|0;a=f[u>>2]|0;i=f[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){f[u>>2]=d;a=d}}else{Rt(s,4e3-o|0);i=f[s>>2]|0;l=i;a=f[u>>2]|0}f[e+108>>2]=l;f[e+104>>2]=a-i;rf(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function ef(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+32>>2]|0)!=0?(f[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(37,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+16>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(38,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(39,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(40,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+20>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=2;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=2;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function rf(e){e=e|0;var i=0,r=0,t=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0;g=c;c=c+32|0;M=g+12|0;p=g;w=e+156|0;m=(f[w>>2]|0)+4|0;if((f[e+32>>2]|0)==1)v=f[e+24>>2]|0;else v=1;i=re(v<<1,m)|0;f[M>>2]=0;E=M+4|0;f[E>>2]=0;f[M+8>>2]=0;do{if(i){if(!((i|0)<0?(_=0,ue(178,M|0),y=_,_=0,y&1):0))l=6;if((l|0)==6?(r=i<<1,_=0,t=de(67,r|0)|0,y=_,_=0,!(y&1)):0){f[M>>2]=t;y=t+(i<<1)|0;f[M+8>>2]=y;ym(t|0,0,r|0)|0;f[E>>2]=y;break}t=ze()|0;i=f[M>>2]|0;if(!i)$e(t|0);r=f[E>>2]|0;if((r|0)!=(i|0))f[E>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);$e(t|0)}}while(0);f[p>>2]=0;y=p+4|0;f[y>>2]=0;f[p+8>>2]=0;do{if(!v)l=18;else{if(!(v>>>0>1073741823?(_=0,ue(178,p|0),k=_,_=0,k&1):0))l=16;if((l|0)==16?(a=v<<2,_=0,s=de(67,a|0)|0,k=_,_=0,!(k&1)):0){f[p>>2]=s;l=s+(v<<2)|0;f[p+8>>2]=l;ym(s|0,0,a|0)|0;f[y>>2]=l;l=18;break}t=ze()|0;i=f[p>>2]|0;r=i;if(i){a=f[y>>2]|0;if((a|0)!=(i|0))f[y>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}}while(0);if((l|0)==18){s=e+12|0;e:do{if((f[s>>2]|0)>0){l=e+4580|0;o=(re(v,m)|0)+1|0;u=e+4584|0;h=e+92|0;d=(v|0)>0;b=e+4576|0;k=0;i:while(1){r=f[M>>2]|0;i=r+2|0;f[l>>2]=i;r=r+(o<<1)|0;f[u>>2]=r;if(!(k&1))i=r;else{f[l>>2]=r;f[u>>2]=i}a=f[h>>2]|0;_=0;Re(f[(f[a>>2]|0)+12>>2]|0,a|0,i|0,f[w>>2]|0,m|0);a=_;_=0;if(a&1){l=28;break}if(d){i=f[l>>2]|0;r=f[u>>2]|0;t=f[p>>2]|0;a=0;do{f[b>>2]=f[t+(a<<2)>>2];t=f[w>>2]|0;n[i+(t<<1)>>1]=n[i+(t+-1<<1)>>1]|0;n[r+-2>>1]=n[i>>1]|0;_=0;ce(71,e|0,0);t=_;_=0;if(t&1){l=27;break i}t=f[p>>2]|0;f[t+(a<<2)>>2]=f[b>>2];i=(f[l>>2]|0)+(m<<1)|0;f[l>>2]=i;r=(f[u>>2]|0)+(m<<1)|0;f[u>>2]=r;a=a+1|0}while((a|0)<(v|0))}k=k+1|0;if((k|0)>=(f[s>>2]|0)){l=40;break e}}if((l|0)==27){t=ze()|0;break}else if((l|0)==28){t=ze()|0;break}}else l=40}while(0);do{if((l|0)==40){_=0;ue(182,e|0);e=_;_=0;if(e&1){t=ze()|0;break}i=f[p>>2]|0;r=i;if(i){t=f[y>>2]|0;if((t|0)!=(i|0))f[y>>2]=t+(~((t+-4-r|0)>>>2)<<2);Ip(i)}i=f[M>>2]|0;if(!i){c=g;return}r=f[E>>2]|0;if((r|0)!=(i|0))f[E>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);c=g;return}}while(0);i=f[p>>2]|0;r=i;if(i){a=f[y>>2]|0;if((a|0)!=(i|0))f[y>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}i=f[M>>2]|0;if(!i)$e(t|0);r=f[E>>2]|0;if((r|0)!=(i|0))f[E>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);$e(t|0)}function tf(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;k=e+4580|0;i=f[k>>2]|0;m=e+156|0;if((f[m>>2]|0)<=0)return;w=e+4584|0;_=e+4588|0;l=i;o=s[i+-2>>1]|0;i=s[i>>1]|0;b=0;while(1){d=f[w>>2]|0;h=s[d+(b+-1<<1)>>1]|0;a=b+1|0;r=s[l+(a<<1)>>1]|0;c=f[_>>2]|0;u=i-o|0;l=o-h|0;c=((((t[c+(r-i)>>0]|0)*9|0)+(t[c+u>>0]|0)|0)*9|0)+(t[c+l>>0]|0)|0;if(!c){a=(ff(e,b,0)|0)+b|0;r=f[k>>2]|0;i=s[r+(a+-1<<1)>>1]|0;r=s[r+(a<<1)>>1]|0}else{o=i-h>>31;if((o^l|0)<0)l=i;else l=h+((o^u|0)<0?0:u)|0;d=nf(e,c,s[d+(b<<1)>>1]|0,l,0)|0;n[(f[w>>2]|0)+(b<<1)>>1]=d}if((a|0)>=(f[m>>2]|0))break;l=f[k>>2]|0;o=i;i=r;b=a}return}function nf(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0;w=i>>31;u=(w^i)-w|0;k=e+172+(u*12|0)+10|0;l=n[k>>1]|0;b=e+172+(u*12|0)|0;a=f[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){s=5;while(1)if((l<<s|0)<(a|0))s=s+1|0;else break}else s=4;else s=3;else s=2;else s=1;else s=0;d=e+172+(u*12|0)+8|0;a=(n[d>>1]^w)-w+t|0;if((a&65535|0)==(a|0))h=a;else h=a>>31&65535^65535;o=(r-h^w)-w<<16;c=o>>16;if(!s)a=(f[e+172+(u*12|0)+4>>2]<<1)+-1+l>>31;else a=0;t=a^c;t=t>>30^t<<1;a=t>>s;if((a|0)<47){if((a|0)>30){l=(a|0)/2|0;Bt(e,0,l);a=a-l|0}Bt(e,1,a+1|0);Bt(e,t&(1<<s)+-1,s)}else{Bt(e,0,31);Bt(e,1,17);Bt(e,t+65535&65535,16)}t=e+172+(u*12|0)+4|0;l=n[k>>1]|0;a=l<<16>>16==64;s=a&1;r=(f[t>>2]|0)+c>>s;l=a?32:l<<16>>16;f[b>>2]=(f[b>>2]|0)+((o|0)>-65536?c:0-c|0)>>s;s=l+1|0;n[k>>1]=s;a=s+r|0;if((a|0)<1){k=n[d>>1]|0;n[d>>1]=(k&65535)-(k<<16>>16>-128&1);k=(a|0)>(~l|0)?a:0-l|0;f[t>>2]=k;w=c^w;i=i>>>31;i=h+i|0;i=i+w|0;i=i&65535;return i|0}if((r|0)<=0){k=r;f[t>>2]=k;w=c^w;i=i>>>31;i=h+i|0;i=i+w|0;i=i&65535;return i|0}k=r-s|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);k=(k|0)>0?0:k;f[t>>2]=k;w=c^w;i=i>>>31;i=h+i|0;i=i+w|0;i=i&65535;return i|0}function ff(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0;o=(f[e+156>>2]|0)-i|0;u=f[e+4584>>2]|0;h=f[e+4580>>2]|0;a=n[u+(i+-1<<1)>>1]|0;t=0;while(1){r=u+(t+i<<1)|0;if((n[r>>1]|0)!=a<<16>>16){d=t;break}n[r>>1]=a;t=t+1|0;if((t|0)==(o|0)){d=o;break}}l=a&65535;a=(d|0)==(o|0);c=e+4576|0;t=f[36476+(f[c>>2]<<2)>>2]|0;if((1<<t|0)>(d|0))r=d;else{r=d;do{Bt(e,1,1);t=f[c>>2]|0;r=r-(1<<f[36476+(t<<2)>>2])|0;t=(t|0)>30?31:t+1|0;f[c>>2]=t;t=f[36476+(t<<2)>>2]|0}while((r|0)>=(1<<t|0))}if(a){if(!r){e=o;return e|0}Bt(e,1,1);e=o;return e|0}Bt(e,r,t+1|0);r=d+i|0;a=u+(r<<1)|0;t=s[a>>1]|0;r=s[h+(r<<1)>>1]|0;h=l-r|0;if((((h|0)>-1?h:0-h|0)|0)<1){r=t-l<<16>>16;af(e,e+4564|0,r);r=r+l|0}else{h=r-l>>31|1;i=(re(t-r<<16,h)|0)>>16;af(e,e+4552|0,i);r=(re(i,h)|0)+r|0}n[a>>1]=r;e=f[c>>2]|0;f[c>>2]=(e|0)<1?0:e+-1|0;e=d+1|0;return e|0}function af(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=f[h>>2]|0;s=(re(o>>>1,c)|0)+(f[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;sf(e,s,n,63-(f[36476+(f[e+4576>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;t[e>>0]=(a[e>>0]|0)+1}n=(n+1-(f[h>>2]|0)>>1)+(f[i>>2]|0)|0;f[i>>2]=n;s=t[d>>0]|0;if(s<<24>>24!=(t[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}f[i>>2]=n>>1;e=(s&255)>>>1;t[d>>0]=e;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}function sf(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,f=0;n=r>>i;f=t+-16|0;if((n|0)<(t+-17|0)){if((n|0)>30){t=(n|0)/2|0;Bt(e,0,t);n=n-t|0}Bt(e,1,n+1|0);Bt(e,(1<<i)+-1&r,i);return}if((f|0)>31){Bt(e,0,31);Bt(e,1,t+-47|0)}else Bt(e,1,f);Bt(e,r+65535&65535,16);return}function lf(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,65535,0);u=e+160|0;if(((f[o+4>>2]|0)==(f[u>>2]|0)?(f[o+8>>2]|0)==(f[e+164>>2]|0):0)?(f[o+12>>2]|0)==(f[e+168>>2]|0):0){u=f[8909]|0;f[e+4588>>2]=u+(((f[8910]|0)-u|0)>>>1);c=h;return}r=e+4592|0;n=e+4596|0;a=f[n>>2]|0;i=f[r>>2]|0;s=a-i|0;if(s>>>0>=131072){if(s>>>0>131072?(l=i+131072|0,(a|0)!=(l|0)):0)f[n>>2]=l}else{zt(r,131072-s|0);i=f[r>>2]|0}o=e+4588|0;f[o>>2]=i+65536;l=e+168|0;a=e+164|0;s=-65536;while(1){i=f[l>>2]|0;if((s|0)>(0-i|0)){r=f[a>>2]|0;if((s|0)>(0-r|0)){n=f[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){t[(f[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;t[(f[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==65536)break}c=h;return}function of(e){e=e|0;var i=0,r=0;f[e>>2]=35968;i=f[e+4592>>2]|0;if(i){r=e+4596|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function uf(e){e=e|0;var i=0,r=0;f[e>>2]=35968;i=f[e+4592>>2]|0;if(i){r=e+4596|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function cf(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,4095,0);o=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[u+8>>2]|0:l;a=f[i+12>>2]|0;a=(a|0)==0?f[u+12>>2]|0:a;i=f[i+16>>2]|0;r=f[u+16>>2]|0;f[e+160>>2]=(o|0)==0?f[u+4>>2]|0:o;f[e+164>>2]=l;f[e+168>>2]=a;pf(e);a=0;do{f[e+172+(a*12|0)>>2]=64;f[e+172+(a*12|0)+4>>2]=0;n[e+172+(a*12|0)+8>>1]=0;n[e+172+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;f[e+4552>>2]=64;f[e+4556>>2]=0;t[e+4560>>0]=u;t[e+4561>>0]=1;t[e+4562>>0]=0;f[e+4564>>2]=64;f[e+4568>>2]=1;t[e+4572>>0]=u;t[e+4573>>0]=1;t[e+4574>>0]=0;f[e+4576>>2]=0;c=s;return}function hf(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=f[i>>2]|0;f[i>>2]=0;i=f[u>>2]|0;f[u>>2]=o;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);f[h>>2]=0;f[h+4>>2]=a;u=r+8|0;f[h+8>>2]=f[u>>2];if(a){i=Bp(4600)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{f[s>>2]=f[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{f[s>>2]=0;s=s+4|0}while((s|0)<(o|0));f[i>>2]=35744;s=i+132|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[i+148>>2]=f[a>>2];f[i+152>>2]=0;f[i+156>>2]=0;f[i+160>>2]=0;s=i+4544|0;a=i+164|0;do{f[a>>2]=0;f[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;f[s>>2]=0;f[s+4>>2]=0;n[s+8>>1]=0;t[s+10>>0]=0;o=i+4556|0;f[o>>2]=0;f[o+4>>2]=0;n[o+8>>1]=0;t[o+10>>0]=0;o=i+4568|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;f[o+16>>2]=0;f[o+20>>2]=0;f[o+24>>2]=0;t[o+28>>0]=0;if(!(f[i+28>>2]|0))f[i+20>>2]=1;a=f[l>>2]|0;f[l>>2]=i;if(a){fM[f[(f[a>>2]|0)+4>>2]&255](a);i=f[l>>2]|0}Ct(i,h)}h=e+100|0;f[h>>2]=32;f[e+96>>2]=0;i=f[r>>2]|0;if(!i){f[e+108>>2]=f[r+4>>2];f[e+104>>2]=f[u>>2];bf(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}f[e+132>>2]=i;s=e+120|0;u=e+124|0;a=f[u>>2]|0;i=f[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){f[u>>2]=d;a=d}}else{Rt(s,4e3-o|0);i=f[s>>2]|0;l=i;a=f[u>>2]|0}f[e+108>>2]=l;f[e+104>>2]=a-i;bf(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function df(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+32>>2]|0)!=0?(f[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(37,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+16>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(38,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(39,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(40,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+20>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=2;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=2;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function bf(e){e=e|0;var i=0,r=0,t=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0;g=c;c=c+32|0;M=g+12|0;p=g;w=e+156|0;m=(f[w>>2]|0)+4|0;if((f[e+32>>2]|0)==1)v=f[e+24>>2]|0;else v=1;i=re(v<<1,m)|0;f[M>>2]=0;E=M+4|0;f[E>>2]=0;f[M+8>>2]=0;do{if(i){if(!((i|0)<0?(_=0,ue(178,M|0),y=_,_=0,y&1):0))l=6;if((l|0)==6?(r=i<<1,_=0,t=de(67,r|0)|0,y=_,_=0,!(y&1)):0){f[M>>2]=t;y=t+(i<<1)|0;f[M+8>>2]=y;ym(t|0,0,r|0)|0;f[E>>2]=y;break}t=ze()|0;i=f[M>>2]|0;if(!i)$e(t|0);r=f[E>>2]|0;if((r|0)!=(i|0))f[E>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);$e(t|0)}}while(0);f[p>>2]=0;y=p+4|0;f[y>>2]=0;f[p+8>>2]=0;do{if(!v)l=18;else{if(!(v>>>0>1073741823?(_=0,ue(178,p|0),k=_,_=0,k&1):0))l=16;if((l|0)==16?(a=v<<2,_=0,s=de(67,a|0)|0,k=_,_=0,!(k&1)):0){f[p>>2]=s;l=s+(v<<2)|0;f[p+8>>2]=l;ym(s|0,0,a|0)|0;f[y>>2]=l;l=18;break}t=ze()|0;i=f[p>>2]|0;r=i;if(i){a=f[y>>2]|0;if((a|0)!=(i|0))f[y>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}}while(0);if((l|0)==18){s=e+12|0;e:do{if((f[s>>2]|0)>0){l=e+4580|0;o=(re(v,m)|0)+1|0;u=e+4584|0;h=e+92|0;d=(v|0)>0;b=e+4576|0;k=0;i:while(1){r=f[M>>2]|0;i=r+2|0;f[l>>2]=i;r=r+(o<<1)|0;f[u>>2]=r;if(!(k&1))i=r;else{f[l>>2]=r;f[u>>2]=i}a=f[h>>2]|0;_=0;Re(f[(f[a>>2]|0)+12>>2]|0,a|0,i|0,f[w>>2]|0,m|0);a=_;_=0;if(a&1){l=28;break}if(d){i=f[l>>2]|0;r=f[u>>2]|0;t=f[p>>2]|0;a=0;do{f[b>>2]=f[t+(a<<2)>>2];t=f[w>>2]|0;n[i+(t<<1)>>1]=n[i+(t+-1<<1)>>1]|0;n[r+-2>>1]=n[i>>1]|0;_=0;ce(72,e|0,0);t=_;_=0;if(t&1){l=27;break i}t=f[p>>2]|0;f[t+(a<<2)>>2]=f[b>>2];i=(f[l>>2]|0)+(m<<1)|0;f[l>>2]=i;r=(f[u>>2]|0)+(m<<1)|0;f[u>>2]=r;a=a+1|0}while((a|0)<(v|0))}k=k+1|0;if((k|0)>=(f[s>>2]|0)){l=40;break e}}if((l|0)==27){t=ze()|0;break}else if((l|0)==28){t=ze()|0;break}}else l=40}while(0);do{if((l|0)==40){_=0;ue(182,e|0);e=_;_=0;if(e&1){t=ze()|0;break}i=f[p>>2]|0;r=i;if(i){t=f[y>>2]|0;if((t|0)!=(i|0))f[y>>2]=t+(~((t+-4-r|0)>>>2)<<2);Ip(i)}i=f[M>>2]|0;if(!i){c=g;return}r=f[E>>2]|0;if((r|0)!=(i|0))f[E>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);c=g;return}}while(0);i=f[p>>2]|0;r=i;if(i){a=f[y>>2]|0;if((a|0)!=(i|0))f[y>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}i=f[M>>2]|0;if(!i)$e(t|0);r=f[E>>2]|0;if((r|0)!=(i|0))f[E>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);$e(t|0)}function kf(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;k=e+4580|0;i=f[k>>2]|0;m=e+156|0;if((f[m>>2]|0)<=0)return;w=e+4584|0;_=e+4588|0;l=i;o=s[i+-2>>1]|0;i=s[i>>1]|0;b=0;while(1){d=f[w>>2]|0;h=s[d+(b+-1<<1)>>1]|0;a=b+1|0;r=s[l+(a<<1)>>1]|0;c=f[_>>2]|0;u=i-o|0;l=o-h|0;c=((((t[c+(r-i)>>0]|0)*9|0)+(t[c+u>>0]|0)|0)*9|0)+(t[c+l>>0]|0)|0;if(!c){a=(_f(e,b,0)|0)+b|0;r=f[k>>2]|0;i=s[r+(a+-1<<1)>>1]|0;r=s[r+(a<<1)>>1]|0}else{o=i-h>>31;if((o^l|0)<0)l=i;else l=h+((o^u|0)<0?0:u)|0;d=wf(e,c,s[d+(b<<1)>>1]|0,l,0)|0;n[(f[w>>2]|0)+(b<<1)>>1]=d}if((a|0)>=(f[m>>2]|0))break;l=f[k>>2]|0;o=i;i=r;b=a}return}function wf(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0;w=i>>31;u=(w^i)-w|0;k=e+172+(u*12|0)+10|0;l=n[k>>1]|0;b=e+172+(u*12|0)|0;a=f[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){s=5;while(1)if((l<<s|0)<(a|0))s=s+1|0;else break}else s=4;else s=3;else s=2;else s=1;else s=0;d=e+172+(u*12|0)+8|0;a=(n[d>>1]^w)-w+t|0;if((a&4095|0)==(a|0))h=a;else h=a>>31&4095^4095;o=(r-h^w)-w<<20;c=o>>20;if(!s)a=(f[e+172+(u*12|0)+4>>2]<<1)+-1+l>>31;else a=0;t=a^c;t=t>>30^t<<1;a=t>>s;if((a|0)<35){if((a|0)>30){l=(a|0)/2|0;Bt(e,0,l);a=a-l|0}Bt(e,1,a+1|0);Bt(e,t&(1<<s)+-1,s)}else{Bt(e,0,31);Bt(e,1,5);Bt(e,t+4095&4095,12)}t=e+172+(u*12|0)+4|0;l=n[k>>1]|0;a=l<<16>>16==64;s=a&1;r=(f[t>>2]|0)+c>>s;l=a?32:l<<16>>16;f[b>>2]=(f[b>>2]|0)+((o|0)>-1048576?c:0-c|0)>>s;s=l+1|0;n[k>>1]=s;a=s+r|0;if((a|0)<1){k=n[d>>1]|0;n[d>>1]=(k&65535)-(k<<16>>16>-128&1);k=(a|0)>(~l|0)?a:0-l|0;f[t>>2]=k;w=c^w;i=i>>>31;i=h+i|0;i=i+w|0;i=i&4095;i=i&65535;return i|0}if((r|0)<=0){k=r;f[t>>2]=k;w=c^w;i=i>>>31;i=h+i|0;i=i+w|0;i=i&4095;i=i&65535;return i|0}k=r-s|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);k=(k|0)>0?0:k;f[t>>2]=k;w=c^w;i=i>>>31;i=h+i|0;i=i+w|0;i=i&4095;i=i&65535;return i|0}function _f(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0;o=(f[e+156>>2]|0)-i|0;u=f[e+4584>>2]|0;h=f[e+4580>>2]|0;a=n[u+(i+-1<<1)>>1]|0;t=0;while(1){r=u+(t+i<<1)|0;if((n[r>>1]|0)!=a<<16>>16){d=t;break}n[r>>1]=a;t=t+1|0;if((t|0)==(o|0)){d=o;break}}l=a&65535;a=(d|0)==(o|0);c=e+4576|0;t=f[36476+(f[c>>2]<<2)>>2]|0;if((1<<t|0)>(d|0))r=d;else{r=d;do{Bt(e,1,1);t=f[c>>2]|0;r=r-(1<<f[36476+(t<<2)>>2])|0;t=(t|0)>30?31:t+1|0;f[c>>2]=t;t=f[36476+(t<<2)>>2]|0}while((r|0)>=(1<<t|0))}if(a){if(!r){e=o;return e|0}Bt(e,1,1);e=o;return e|0}Bt(e,r,t+1|0);r=d+i|0;a=u+(r<<1)|0;t=s[a>>1]|0;r=s[h+(r<<1)>>1]|0;h=l-r|0;if((((h|0)>-1?h:0-h|0)|0)<1){r=t-l<<20>>20;mf(e,e+4564|0,r);r=r+l|0}else{h=r-l>>31|1;i=(re(t-r<<20,h)|0)>>20;mf(e,e+4552|0,i);r=(re(i,h)|0)+r|0}n[a>>1]=r&4095;e=f[c>>2]|0;f[c>>2]=(e|0)<1?0:e+-1|0;e=d+1|0;return e|0}function mf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=f[h>>2]|0;s=(re(o>>>1,c)|0)+(f[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;vf(e,s,n,47-(f[36476+(f[e+4576>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;t[e>>0]=(a[e>>0]|0)+1}n=(n+1-(f[h>>2]|0)>>1)+(f[i>>2]|0)|0;f[i>>2]=n;s=t[d>>0]|0;if(s<<24>>24!=(t[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}f[i>>2]=n>>1;e=(s&255)>>>1;t[d>>0]=e;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}function vf(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,f=0;n=r>>i;f=t+-12|0;if((n|0)<(t+-13|0)){if((n|0)>30){t=(n|0)/2|0;Bt(e,0,t);n=n-t|0}Bt(e,1,n+1|0);Bt(e,(1<<i)+-1&r,i);return}if((f|0)>31){Bt(e,0,31);Bt(e,1,t+-43|0)}else Bt(e,1,f);Bt(e,r+4095&4095,12);return}function pf(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,4095,0);u=e+160|0;if(((f[o+4>>2]|0)==(f[u>>2]|0)?(f[o+8>>2]|0)==(f[e+164>>2]|0):0)?(f[o+12>>2]|0)==(f[e+168>>2]|0):0){u=f[8906]|0;f[e+4588>>2]=u+(((f[8907]|0)-u|0)>>>1);c=h;return}r=e+4592|0;n=e+4596|0;a=f[n>>2]|0;i=f[r>>2]|0;s=a-i|0;if(s>>>0>=8192){if(s>>>0>8192?(l=i+8192|0,(a|0)!=(l|0)):0)f[n>>2]=l}else{zt(r,8192-s|0);i=f[r>>2]|0}o=e+4588|0;f[o>>2]=i+4096;l=e+168|0;a=e+164|0;s=-4096;while(1){i=f[l>>2]|0;if((s|0)>(0-i|0)){r=f[a>>2]|0;if((s|0)>(0-r|0)){n=f[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){t[(f[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;t[(f[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==4096)break}c=h;return}function gf(e){e=e|0;var i=0,r=0;f[e>>2]=35940;i=f[e+4592>>2]|0;if(i){r=e+4596|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function yf(e){e=e|0;var i=0,r=0;f[e>>2]=35940;i=f[e+4592>>2]|0;if(i){r=e+4596|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function Mf(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,255,0);o=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[u+8>>2]|0:l;a=f[i+12>>2]|0;a=(a|0)==0?f[u+12>>2]|0:a;i=f[i+16>>2]|0;r=f[u+16>>2]|0;f[e+160>>2]=(o|0)==0?f[u+4>>2]|0:o;f[e+164>>2]=l;f[e+168>>2]=a;Pf(e);a=0;do{f[e+172+(a*12|0)>>2]=4;f[e+172+(a*12|0)+4>>2]=0;n[e+172+(a*12|0)+8>>1]=0;n[e+172+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;f[e+4552>>2]=4;f[e+4556>>2]=0;t[e+4560>>0]=u;t[e+4561>>0]=1;t[e+4562>>0]=0;f[e+4564>>2]=4;f[e+4568>>2]=1;t[e+4572>>0]=u;t[e+4573>>0]=1;t[e+4574>>0]=0;f[e+4576>>2]=0;c=s;return}function Ef(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=f[i>>2]|0;f[i>>2]=0;i=f[u>>2]|0;f[u>>2]=o;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);f[h>>2]=0;f[h+4>>2]=a;u=r+8|0;f[h+8>>2]=f[u>>2];if(a){i=Bp(4600)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{f[s>>2]=f[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{f[s>>2]=0;s=s+4|0}while((s|0)<(o|0));f[i>>2]=35716;s=i+132|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[i+148>>2]=f[a>>2];f[i+152>>2]=0;f[i+156>>2]=0;f[i+160>>2]=0;s=i+4544|0;a=i+164|0;do{f[a>>2]=0;f[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;f[s>>2]=0;f[s+4>>2]=0;n[s+8>>1]=0;t[s+10>>0]=0;o=i+4556|0;f[o>>2]=0;f[o+4>>2]=0;n[o+8>>1]=0;t[o+10>>0]=0;o=i+4568|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;f[o+16>>2]=0;f[o+20>>2]=0;f[o+24>>2]=0;t[o+28>>0]=0;if(!(f[i+28>>2]|0))f[i+20>>2]=1;a=f[l>>2]|0;f[l>>2]=i;if(a){fM[f[(f[a>>2]|0)+4>>2]&255](a);i=f[l>>2]|0}Ct(i,h)}h=e+100|0;f[h>>2]=32;f[e+96>>2]=0;i=f[r>>2]|0;if(!i){f[e+108>>2]=f[r+4>>2];f[e+104>>2]=f[u>>2];Sf(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}f[e+132>>2]=i;s=e+120|0;u=e+124|0;a=f[u>>2]|0;i=f[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){f[u>>2]=d;a=d}}else{Rt(s,4e3-o|0);i=f[s>>2]|0;l=i;a=f[u>>2]|0}f[e+108>>2]=l;f[e+104>>2]=a-i;Sf(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function Af(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+32>>2]|0)!=0?(f[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(44,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+16>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(45,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(46,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(47,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+20>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=1;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=1;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function Sf(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0;p=c;c=c+32|0;y=p+12|0;v=p;k=e+156|0;w=(f[k>>2]|0)+4|0;if((f[e+32>>2]|0)==1)m=f[e+24>>2]|0;else m=1;i=re(m<<1,w)|0;f[y>>2]=0;M=y+4|0;f[M>>2]=0;f[y+8>>2]=0;e:do{if(i){if(!((i|0)<0?(_=0,ue(178,y|0),g=_,_=0,g&1):0))s=6;if((s|0)==6?(_=0,r=de(67,i|0)|0,g=_,_=0,!(g&1)):0){f[M>>2]=r;f[y>>2]=r;f[y+8>>2]=r+i;while(1){t[r>>0]=0;r=(f[M>>2]|0)+1|0;f[M>>2]=r;i=i+-1|0;if(!i)break e}}r=ze()|0;i=f[y>>2]|0;if(!i)$e(r|0);if((f[M>>2]|0)!=(i|0))f[M>>2]=i;Ip(i);$e(r|0)}}while(0);f[v>>2]=0;g=v+4|0;f[g>>2]=0;f[v+8>>2]=0;do{if(!m)s=19;else{if(!(m>>>0>1073741823?(_=0,ue(178,v|0),b=_,_=0,b&1):0))s=17;if((s|0)==17?(n=m<<2,_=0,a=de(67,n|0)|0,b=_,_=0,!(b&1)):0){f[v>>2]=a;s=a+(m<<2)|0;f[v+8>>2]=s;ym(a|0,0,n|0)|0;f[g>>2]=s;s=19;break}r=ze()|0;i=f[v>>2]|0;n=i;if(i){a=f[g>>2]|0;if((a|0)!=(i|0))f[g>>2]=a+(~((a+-4-n|0)>>>2)<<2);Ip(i)}}}while(0);if((s|0)==19){a=e+12|0;e:do{if((f[a>>2]|0)>0){s=e+4580|0;l=(re(m,w)|0)+1|0;o=e+4584|0;u=e+92|0;h=(m|0)>0;d=e+4576|0;b=0;i:while(1){r=f[y>>2]|0;i=r+1|0;f[s>>2]=i;r=r+l|0;f[o>>2]=r;if(!(b&1))i=r;else{f[s>>2]=r;f[o>>2]=i}n=f[u>>2]|0;_=0;Re(f[(f[n>>2]|0)+12>>2]|0,n|0,i|0,f[k>>2]|0,w|0);n=_;_=0;if(n&1){s=29;break}if(h){i=f[s>>2]|0;r=f[v>>2]|0;n=0;do{f[d>>2]=f[r+(n<<2)>>2];r=f[k>>2]|0;t[i+r>>0]=t[i+(r+-1)>>0]|0;t[(f[o>>2]|0)+-1>>0]=t[f[s>>2]>>0]|0;_=0;ce(73,e|0,0);r=_;_=0;if(r&1){s=28;break i}r=f[v>>2]|0;f[r+(n<<2)>>2]=f[d>>2];i=(f[s>>2]|0)+w|0;f[s>>2]=i;f[o>>2]=(f[o>>2]|0)+w;n=n+1|0}while((n|0)<(m|0))}b=b+1|0;if((b|0)>=(f[a>>2]|0)){s=41;break e}}if((s|0)==28){r=ze()|0;break}else if((s|0)==29){r=ze()|0;break}}else s=41}while(0);do{if((s|0)==41){_=0;ue(182,e|0);e=_;_=0;if(e&1){r=ze()|0;break}i=f[v>>2]|0;r=i;if(i){n=f[g>>2]|0;if((n|0)!=(i|0))f[g>>2]=n+(~((n+-4-r|0)>>>2)<<2);Ip(i)}i=f[y>>2]|0;if(!i){c=p;return}if((f[M>>2]|0)!=(i|0))f[M>>2]=i;Ip(i);c=p;return}}while(0);i=f[v>>2]|0;n=i;if(i){a=f[g>>2]|0;if((a|0)!=(i|0))f[g>>2]=a+(~((a+-4-n|0)>>>2)<<2);Ip(i)}}i=f[y>>2]|0;if(!i)$e(r|0);if((f[M>>2]|0)!=(i|0))f[M>>2]=i;Ip(i);$e(r|0)}function Tf(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0;b=e+4580|0;i=f[b>>2]|0;_=e+156|0;if((f[_>>2]|0)<=0)return;k=e+4584|0;w=e+4588|0;s=i;l=a[i+-1>>0]|0;i=a[i>>0]|0;d=0;while(1){h=f[k>>2]|0;c=a[h+(d+-1)>>0]|0;n=d+1|0;r=a[s+n>>0]|0;u=f[w>>2]|0;o=i-l|0;s=l-c|0;u=((((t[u+(r-i)>>0]|0)*9|0)+(t[u+o>>0]|0)|0)*9|0)+(t[u+s>>0]|0)|0;if(!u){n=(Rf(e,d,0)|0)+d|0;r=f[b>>2]|0;i=a[r+(n+-1)>>0]|0;r=a[r+n>>0]|0}else{l=i-c>>31;if((l^s|0)<0)s=i;else s=c+((l^o|0)<0?0:o)|0;h=Cf(e,u,a[h+d>>0]|0,s,0)|0;t[(f[k>>2]|0)+d>>0]=h}if((n|0)>=(f[_>>2]|0))break;s=f[b>>2]|0;l=i;i=r;d=n}return}function Cf(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0;w=i>>31;u=(w^i)-w|0;k=e+172+(u*12|0)+10|0;l=n[k>>1]|0;b=e+172+(u*12|0)|0;a=f[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){s=5;while(1)if((l<<s|0)<(a|0))s=s+1|0;else break}else s=4;else s=3;else s=2;else s=1;else s=0;d=e+172+(u*12|0)+8|0;a=(n[d>>1]^w)-w+t|0;if((a&255|0)==(a|0))h=a;else h=a>>31&255^255;o=(r-h^w)-w<<24;c=o>>24;if(!s)a=(f[e+172+(u*12|0)+4>>2]<<1)+-1+l>>31;else a=0;a=a^c;a=a>>30^a<<1;t=a>>s;if((t|0)<23){Bt(e,1,t+1|0);Bt(e,a&(1<<s)+-1,s)}else{Bt(e,1,24);Bt(e,a+255&255,8)}t=e+172+(u*12|0)+4|0;l=n[k>>1]|0;a=l<<16>>16==64;s=a&1;r=(f[t>>2]|0)+c>>s;l=a?32:l<<16>>16;f[b>>2]=(f[b>>2]|0)+((o|0)>-16777216?c:0-c|0)>>s;s=l+1|0;n[k>>1]=s;a=s+r|0;if((a|0)<1){k=n[d>>1]|0;n[d>>1]=(k&65535)-(k<<16>>16>-128&1);k=(a|0)>(~l|0)?a:0-l|0;f[t>>2]=k;w=c^w;i=i>>>31;i=h+i|0;i=i+w|0;i=i&255;return i|0}if((r|0)<=0){k=r;f[t>>2]=k;w=c^w;i=i>>>31;i=h+i|0;i=i+w|0;i=i&255;return i|0}k=r-s|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);k=(k|0)>0?0:k;f[t>>2]=k;w=c^w;i=i>>>31;i=h+i|0;i=i+w|0;i=i&255;return i|0}function Rf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;o=(f[e+156>>2]|0)-i|0;u=f[e+4584>>2]|0;h=f[e+4580>>2]|0;s=t[u+(i+-1)>>0]|0;n=0;while(1){r=u+(n+i)|0;if((t[r>>0]|0)!=s<<24>>24){d=n;break}t[r>>0]=s;n=n+1|0;if((n|0)==(o|0)){d=o;break}}l=s&255;s=(d|0)==(o|0);c=e+4576|0;n=f[36476+(f[c>>2]<<2)>>2]|0;if((1<<n|0)>(d|0))r=d;else{r=d;do{Bt(e,1,1);n=f[c>>2]|0;r=r-(1<<f[36476+(n<<2)>>2])|0;n=(n|0)>30?31:n+1|0;f[c>>2]=n;n=f[36476+(n<<2)>>2]|0}while((r|0)>=(1<<n|0))}if(s){if(!r){e=o;return e|0}Bt(e,1,1);e=o;return e|0}Bt(e,r,n+1|0);r=d+i|0;s=u+r|0;n=a[s>>0]|0;r=a[h+r>>0]|0;h=l-r|0;if((((h|0)>-1?h:0-h|0)|0)<1){r=n-l<<24>>24;Lf(e,e+4564|0,r);r=r+l|0}else{h=r-l>>31|1;i=(re(n-r<<24,h)|0)>>24;Lf(e,e+4552|0,i);r=(re(i,h)|0)+r|0}t[s>>0]=r;e=f[c>>2]|0;f[c>>2]=(e|0)<1?0:e+-1|0;e=d+1|0;return e|0}function Lf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=f[h>>2]|0;s=(re(o>>>1,c)|0)+(f[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;xf(e,s,n,31-(f[36476+(f[e+4576>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;t[e>>0]=(a[e>>0]|0)+1}n=(n+1-(f[h>>2]|0)>>1)+(f[i>>2]|0)|0;f[i>>2]=n;s=t[d>>0]|0;if(s<<24>>24!=(t[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}f[i>>2]=n>>1;e=(s&255)>>>1;t[d>>0]=e;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}function xf(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,f=0;n=r>>i;f=t+-8|0;if((n|0)<(t+-9|0)){if((n|0)>30){t=(n|0)/2|0;Bt(e,0,t);n=n-t|0}Bt(e,1,n+1|0);Bt(e,(1<<i)+-1&r,i);return}if((f|0)>31){Bt(e,0,31);Bt(e,1,t+-39|0)}else Bt(e,1,f);Bt(e,r+255&255,8);return}function Pf(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,255,0);u=e+160|0;if(((f[o+4>>2]|0)==(f[u>>2]|0)?(f[o+8>>2]|0)==(f[e+164>>2]|0):0)?(f[o+12>>2]|0)==(f[e+168>>2]|0):0){u=f[8900]|0;f[e+4588>>2]=u+(((f[8901]|0)-u|0)>>>1);c=h;return}r=e+4592|0;n=e+4596|0;a=f[n>>2]|0;i=f[r>>2]|0;s=a-i|0;if(s>>>0>=512){if(s>>>0>512?(l=i+512|0,(a|0)!=(l|0)):0)f[n>>2]=l}else{zt(r,512-s|0);i=f[r>>2]|0}o=e+4588|0;f[o>>2]=i+256;l=e+168|0;a=e+164|0;s=-256;while(1){i=f[l>>2]|0;if((s|0)>(0-i|0)){r=f[a>>2]|0;if((s|0)>(0-r|0)){n=f[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){t[(f[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;t[(f[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==256)break}c=h;return}function Of(e){e=e|0;var i=0,r=0;f[e>>2]=35912;i=f[e+4592>>2]|0;if(i){r=e+4596|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function Bf(e){e=e|0;var i=0,r=0;f[e>>2]=35912;i=f[e+4592>>2]|0;if(i){r=e+4596|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function If(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,255,0);o=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[u+8>>2]|0:l;a=f[i+12>>2]|0;a=(a|0)==0?f[u+12>>2]|0:a;i=f[i+16>>2]|0;r=f[u+16>>2]|0;f[e+160>>2]=(o|0)==0?f[u+4>>2]|0:o;f[e+164>>2]=l;f[e+168>>2]=a;qf(e);a=0;do{f[e+172+(a*12|0)>>2]=4;f[e+172+(a*12|0)+4>>2]=0;n[e+172+(a*12|0)+8>>1]=0;n[e+172+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;f[e+4552>>2]=4;f[e+4556>>2]=0;t[e+4560>>0]=u;t[e+4561>>0]=1;t[e+4562>>0]=0;f[e+4564>>2]=4;f[e+4568>>2]=1;t[e+4572>>0]=u;t[e+4573>>0]=1;t[e+4574>>0]=0;f[e+4576>>2]=0;c=s;return}function Df(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=f[i>>2]|0;f[i>>2]=0;i=f[u>>2]|0;f[u>>2]=o;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);f[h>>2]=0;f[h+4>>2]=a;u=r+8|0;f[h+8>>2]=f[u>>2];if(a){i=Bp(4600)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{f[s>>2]=f[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{f[s>>2]=0;s=s+4|0}while((s|0)<(o|0));f[i>>2]=35688;s=i+132|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[i+148>>2]=f[a>>2];f[i+152>>2]=0;f[i+156>>2]=0;f[i+160>>2]=0;s=i+4544|0;a=i+164|0;do{f[a>>2]=0;f[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;f[s>>2]=0;f[s+4>>2]=0;n[s+8>>1]=0;t[s+10>>0]=0;o=i+4556|0;f[o>>2]=0;f[o+4>>2]=0;n[o+8>>1]=0;t[o+10>>0]=0;o=i+4568|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;f[o+16>>2]=0;f[o+20>>2]=0;f[o+24>>2]=0;t[o+28>>0]=0;if(!(f[i+28>>2]|0))f[i+20>>2]=1;a=f[l>>2]|0;f[l>>2]=i;if(a){fM[f[(f[a>>2]|0)+4>>2]&255](a);i=f[l>>2]|0}Ct(i,h)}h=e+100|0;f[h>>2]=32;f[e+96>>2]=0;i=f[r>>2]|0;if(!i){f[e+108>>2]=f[r+4>>2];f[e+104>>2]=f[u>>2];Ff(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}f[e+132>>2]=i;s=e+120|0;u=e+124|0;a=f[u>>2]|0;i=f[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){f[u>>2]=d;a=d}}else{Rt(s,4e3-o|0);i=f[s>>2]|0;l=i;a=f[u>>2]|0}f[e+108>>2]=l;f[e+104>>2]=a-i;Ff(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function Nf(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+32>>2]|0)!=0?(f[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(44,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+16>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(45,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(46,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(47,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+20>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=3;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=3;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function Ff(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0;p=c;c=c+32|0;y=p+12|0;v=p;k=e+156|0;w=(f[k>>2]|0)+4|0;if((f[e+32>>2]|0)==1)m=f[e+24>>2]|0;else m=1;i=re(m<<1,w)|0;f[y>>2]=0;M=y+4|0;f[M>>2]=0;f[y+8>>2]=0;e:do{if(i){if(!(i>>>0>1431655765?(_=0,ue(178,y|0),g=_,_=0,g&1):0))s=6;if((s|0)==6?(_=0,r=de(67,i*3|0)|0,g=_,_=0,!(g&1)):0){f[M>>2]=r;f[y>>2]=r;f[y+8>>2]=r+(i*3|0);while(1){t[r>>0]=0;t[r+1>>0]=0;t[r+2>>0]=0;r=(f[M>>2]|0)+3|0;f[M>>2]=r;i=i+-1|0;if(!i)break e}}n=ze()|0;i=f[y>>2]|0;if(!i)$e(n|0);r=f[M>>2]|0;if((r|0)!=(i|0))f[M>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Ip(i);$e(n|0)}}while(0);f[v>>2]=0;g=v+4|0;f[g>>2]=0;f[v+8>>2]=0;do{if(!m)s=19;else{if(!(m>>>0>1073741823?(_=0,ue(178,v|0),b=_,_=0,b&1):0))s=17;if((s|0)==17?(n=m<<2,_=0,a=de(67,n|0)|0,b=_,_=0,!(b&1)):0){f[v>>2]=a;s=a+(m<<2)|0;f[v+8>>2]=s;ym(a|0,0,n|0)|0;f[g>>2]=s;s=19;break}n=ze()|0;i=f[v>>2]|0;r=i;if(i){a=f[g>>2]|0;if((a|0)!=(i|0))f[g>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}}while(0);if((s|0)==19){a=e+12|0;e:do{if((f[a>>2]|0)>0){s=e+4580|0;l=(re(m,w)|0)+1|0;o=e+4584|0;u=e+92|0;h=(m|0)>0;d=e+4576|0;b=0;i:while(1){n=f[y>>2]|0;i=n+3|0;f[s>>2]=i;r=n+(l*3|0)|0;f[o>>2]=r;if(!(b&1))i=l;else{f[s>>2]=r;f[o>>2]=i;i=1}r=f[u>>2]|0;_=0;Re(f[(f[r>>2]|0)+12>>2]|0,r|0,n+(i*3|0)|0,f[k>>2]|0,w|0);n=_;_=0;if(n&1){s=29;break}if(h){i=f[v>>2]|0;r=f[s>>2]|0;n=0;do{f[d>>2]=f[i+(n<<2)>>2];E=f[k>>2]|0;i=r+(E*3|0)|0;r=r+((E+-1|0)*3|0)|0;t[i>>0]=t[r>>0]|0;t[i+1>>0]=t[r+1>>0]|0;t[i+2>>0]=t[r+2>>0]|0;i=f[s>>2]|0;r=(f[o>>2]|0)+-3|0;t[r>>0]=t[i>>0]|0;t[r+1>>0]=t[i+1>>0]|0;t[r+2>>0]=t[i+2>>0]|0;_=0;ce(74,e|0,0);r=_;_=0;if(r&1){s=28;break i}i=f[v>>2]|0;f[i+(n<<2)>>2]=f[d>>2];r=(f[s>>2]|0)+(w*3|0)|0;f[s>>2]=r;f[o>>2]=(f[o>>2]|0)+(w*3|0);n=n+1|0}while((n|0)<(m|0))}b=b+1|0;if((b|0)>=(f[a>>2]|0)){s=41;break e}}if((s|0)==28){n=ze()|0;break}else if((s|0)==29){n=ze()|0;break}}else s=41}while(0);do{if((s|0)==41){_=0;ue(182,e|0);E=_;_=0;if(E&1){n=ze()|0;break}i=f[v>>2]|0;r=i;if(i){n=f[g>>2]|0;if((n|0)!=(i|0))f[g>>2]=n+(~((n+-4-r|0)>>>2)<<2);Ip(i)}i=f[y>>2]|0;if(!i){c=p;return}r=f[M>>2]|0;if((r|0)!=(i|0))f[M>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Ip(i);c=p;return}}while(0);i=f[v>>2]|0;r=i;if(i){a=f[g>>2]|0;if((a|0)!=(i|0))f[g>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}i=f[y>>2]|0;if(!i)$e(n|0);r=f[M>>2]|0;if((r|0)!=(i|0))f[M>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Ip(i);$e(n|0)}function Uf(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;S=e+156|0;if((f[S>>2]|0)<=0)return;T=e+4584|0;C=e+4580|0;R=e+4588|0;A=0;while(1){y=A+-1|0;l=f[T>>2]|0;o=f[C>>2]|0;i=A+1|0;s=a[o+(A*3|0)>>0]|0;E=f[R>>2]|0;u=a[o+(y*3|0)>>0]|0;c=s-u|0;h=a[l+(y*3|0)>>0]|0;d=u-h|0;b=((((t[E+((a[o+(i*3|0)>>0]|0)-s)>>0]|0)*9|0)+(t[E+c>>0]|0)|0)*9|0)+(t[E+d>>0]|0)|0;n=a[o+(A*3|0)+1>>0]|0;k=a[o+(y*3|0)+1>>0]|0;w=n-k|0;_=a[l+(y*3|0)+1>>0]|0;m=k-_|0;v=((((t[E+((a[o+(i*3|0)+1>>0]|0)-n)>>0]|0)*9|0)+(t[E+w>>0]|0)|0)*9|0)+(t[E+m>>0]|0)|0;r=a[o+(A*3|0)+2>>0]|0;p=a[o+(y*3|0)+2>>0]|0;g=r-p|0;y=a[l+(y*3|0)+2>>0]|0;M=p-y|0;E=((((t[E+((a[o+(i*3|0)+2>>0]|0)-r)>>0]|0)*9|0)+(t[E+g>>0]|0)|0)*9|0)+(t[E+M>>0]|0)|0;if(!(v|b|E))i=(jf(e,A,0)|0)+A|0;else{o=a[l+(A*3|0)>>0]|0;l=s-h>>31;if((l^d|0)>=0)if((l^c|0)<0)s=h;else s=h-u+s|0;o=Hf(e,b,o,s,0)|0;l=a[(f[T>>2]|0)+(A*3|0)+1>>0]|0;s=n-_>>31;if((s^m|0)>=0)if((s^w|0)<0)n=_;else n=_-k+n|0;s=Hf(e,v,l,n,0)|0;l=a[(f[T>>2]|0)+(A*3|0)+2>>0]|0;n=r-y>>31;if((n^M|0)>=0)if((n^g|0)<0)r=y;else r=y-p+r|0;E=Hf(e,E,l,r,0)|0;A=(f[T>>2]|0)+(A*3|0)|0;t[A>>0]=o;t[A+1>>0]=s;t[A+2>>0]=E}if((i|0)<(f[S>>2]|0))A=i;else break}return}function jf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0;h=(f[e+156>>2]|0)-i|0;d=f[e+4584>>2]|0;b=f[e+4580>>2]|0;c=d+((i+-1|0)*3|0)|0;k=t[c>>0]|0;u=t[c+1>>0]|0;c=t[c+2>>0]|0;l=0;while(1){r=d+((l+i|0)*3|0)|0;n=r+1|0;s=r+2|0;if(!(((t[r>>0]|0)==k<<24>>24?(t[n>>0]|0)==u<<24>>24:0)&(t[s>>0]|0)==c<<24>>24))break;t[r>>0]=k;t[n>>0]=u;t[s>>0]=c;l=l+1|0;if((l|0)==(h|0)){l=h;break}}s=(l|0)==(h|0);o=e+4576|0;n=f[36476+(f[o>>2]<<2)>>2]|0;if((1<<n|0)>(l|0))r=l;else{r=l;do{Bt(e,1,1);n=f[o>>2]|0;r=r-(1<<f[36476+(n<<2)>>2])|0;n=(n|0)>30?31:n+1|0;f[o>>2]=n;n=f[36476+(n<<2)>>2]|0}while((r|0)>=(1<<n|0))}if(!s){Bt(e,r,n+1|0);w=l+i|0;h=d+(w*3|0)|0;d=h+1|0;_=t[d>>0]|0;i=h+2|0;r=t[i>>0]|0;b=b+(w*3|0)|0;w=t[b+1>>0]|0;v=t[b+2>>0]|0;b=a[b>>0]|0;s=b-(k&255)>>31|1;n=(re((a[h>>0]|0)-b<<24,s)|0)>>24;m=e+4552|0;zf(e,m,n);k=w&255;w=k-(u&255)>>31|1;_=(re((_&255)-k<<24,w)|0)>>24;zf(e,m,_);u=v&255;c=u-(c&255)>>31|1;r=(re((r&255)-u<<24,c)|0)>>24;zf(e,m,r);k=(re(_,w)|0)+k&255;e=(re(r,c)|0)+u&255;t[h>>0]=(re(n,s)|0)+b;t[d>>0]=k;t[i>>0]=e;e=f[o>>2]|0;f[o>>2]=(e|0)<1?0:e+-1|0;e=l+1|0;return e|0}if(!r){v=h;return v|0}Bt(e,1,1);v=h;return v|0}function Hf(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0;w=i>>31;u=(w^i)-w|0;k=e+172+(u*12|0)+10|0;l=n[k>>1]|0;b=e+172+(u*12|0)|0;a=f[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){s=5;while(1)if((l<<s|0)<(a|0))s=s+1|0;else break}else s=4;else s=3;else s=2;else s=1;else s=0;d=e+172+(u*12|0)+8|0;a=(n[d>>1]^w)-w+t|0;if((a&255|0)==(a|0))h=a;else h=a>>31&255^255;o=(r-h^w)-w<<24;c=o>>24;if(!s)a=(f[e+172+(u*12|0)+4>>2]<<1)+-1+l>>31;else a=0;a=a^c;a=a>>30^a<<1;t=a>>s;if((t|0)<23){Bt(e,1,t+1|0);Bt(e,a&(1<<s)+-1,s)}else{Bt(e,1,24);Bt(e,a+255&255,8)}t=e+172+(u*12|0)+4|0;l=n[k>>1]|0;a=l<<16>>16==64;s=a&1;r=(f[t>>2]|0)+c>>s;l=a?32:l<<16>>16;f[b>>2]=(f[b>>2]|0)+((o|0)>-16777216?c:0-c|0)>>s;s=l+1|0;n[k>>1]=s;a=s+r|0;if((a|0)<1){k=n[d>>1]|0;n[d>>1]=(k&65535)-(k<<16>>16>-128&1);k=(a|0)>(~l|0)?a:0-l|0;f[t>>2]=k;w=c^w;i=i>>>31;i=h+i|0;i=i+w|0;i=i&255;return i|0}if((r|0)<=0){k=r;f[t>>2]=k;w=c^w;i=i>>>31;i=h+i|0;i=i+w|0;i=i&255;return i|0}k=r-s|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);k=(k|0)>0?0:k;f[t>>2]=k;w=c^w;i=i>>>31;i=h+i|0;i=i+w|0;i=i&255;return i|0}function zf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=f[h>>2]|0;s=(re(o>>>1,c)|0)+(f[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;Yf(e,s,n,31-(f[36476+(f[e+4576>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;t[e>>0]=(a[e>>0]|0)+1}n=(n+1-(f[h>>2]|0)>>1)+(f[i>>2]|0)|0;f[i>>2]=n;s=t[d>>0]|0;if(s<<24>>24!=(t[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}f[i>>2]=n>>1;e=(s&255)>>>1;t[d>>0]=e;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}function Yf(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,f=0;n=r>>i;f=t+-8|0;if((n|0)<(t+-9|0)){if((n|0)>30){t=(n|0)/2|0;Bt(e,0,t);n=n-t|0}Bt(e,1,n+1|0);Bt(e,(1<<i)+-1&r,i);return}if((f|0)>31){Bt(e,0,31);Bt(e,1,t+-39|0)}else Bt(e,1,f);Bt(e,r+255&255,8);return}function qf(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,255,0);u=e+160|0;if(((f[o+4>>2]|0)==(f[u>>2]|0)?(f[o+8>>2]|0)==(f[e+164>>2]|0):0)?(f[o+12>>2]|0)==(f[e+168>>2]|0):0){u=f[8900]|0;f[e+4588>>2]=u+(((f[8901]|0)-u|0)>>>1);c=h;return}r=e+4592|0;n=e+4596|0;a=f[n>>2]|0;i=f[r>>2]|0;s=a-i|0;if(s>>>0>=512){if(s>>>0>512?(l=i+512|0,(a|0)!=(l|0)):0)f[n>>2]=l}else{zt(r,512-s|0);i=f[r>>2]|0}o=e+4588|0;f[o>>2]=i+256;l=e+168|0;a=e+164|0;s=-256;while(1){i=f[l>>2]|0;if((s|0)>(0-i|0)){r=f[a>>2]|0;if((s|0)>(0-r|0)){n=f[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){t[(f[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;t[(f[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==256)break}c=h;return}function Xf(e){e=e|0;var i=0,r=0;f[e>>2]=35884;i=f[e+4616>>2]|0;if(i){r=e+4620|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function Vf(e){e=e|0;var i=0,r=0;f[e>>2]=35884;i=f[e+4616>>2]|0;if(i){r=e+4620|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36612;i=f[e+120>>2]|0;if(i){r=e+124|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+92|0;i=f[r>>2]|0;f[r>>2]=0;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function Gf(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,f[e+136>>2]|0,f[e+144>>2]|0);u=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[h+8>>2]|0:l;s=f[i+12>>2]|0;s=(s|0)==0?f[h+12>>2]|0:s;r=f[i+16>>2]|0;a=f[h+16>>2]|0;f[e+184>>2]=(u|0)==0?f[h+4>>2]|0:u;f[e+188>>2]=l;f[e+192>>2]=s;ta(e);s=e+140|0;i=(f[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{f[e+196+(l*12|0)>>2]=i;f[e+196+(l*12|0)+4>>2]=0;n[e+196+(l*12|0)+8>>1]=0;n[e+196+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(f[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;f[e+4576>>2]=u;f[e+4580>>2]=0;t[e+4584>>0]=h;t[e+4585>>0]=1;t[e+4586>>0]=0;f[e+4588>>2]=u;f[e+4592>>2]=1;t[e+4596>>0]=h;t[e+4597>>0]=1;t[e+4598>>0]=0;f[e+4600>>2]=0;c=o;return}function Kf(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=f[i>>2]|0;f[i>>2]=0;i=f[u>>2]|0;f[u>>2]=o;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);f[h>>2]=0;f[h+4>>2]=a;u=r+8|0;f[h+8>>2]=f[u>>2];if(a){i=Bp(4624)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{f[s>>2]=f[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{f[s>>2]=0;s=s+4|0}while((s|0)<(o|0));f[i>>2]=35660;f[i+128>>2]=f[e+136>>2];f[i+132>>2]=f[e+140>>2];f[i+136>>2]=f[e+144>>2];f[i+140>>2]=f[e+148>>2];f[i+144>>2]=f[e+152>>2];f[i+148>>2]=f[e+156>>2];f[i+152>>2]=f[e+160>>2];s=i+156|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[i+172>>2]=f[a>>2];f[i+176>>2]=0;f[i+180>>2]=0;f[i+184>>2]=0;s=i+4568|0;a=i+188|0;do{f[a>>2]=0;f[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;f[s>>2]=0;f[s+4>>2]=0;n[s+8>>1]=0;t[s+10>>0]=0;o=i+4580|0;f[o>>2]=0;f[o+4>>2]=0;n[o+8>>1]=0;t[o+10>>0]=0;o=i+4592|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;f[o+16>>2]=0;f[o+20>>2]=0;f[o+24>>2]=0;t[o+28>>0]=0;if(!(f[i+28>>2]|0))f[i+20>>2]=1;a=f[l>>2]|0;f[l>>2]=i;if(a){fM[f[(f[a>>2]|0)+4>>2]&255](a);i=f[l>>2]|0}Ct(i,h)}h=e+100|0;f[h>>2]=32;f[e+96>>2]=0;i=f[r>>2]|0;if(!i){f[e+108>>2]=f[r+4>>2];f[e+104>>2]=f[u>>2];Zf(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}f[e+132>>2]=i;s=e+120|0;u=e+124|0;a=f[u>>2]|0;i=f[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){f[u>>2]=d;a=d}}else{Rt(s,4e3-o|0);i=f[s>>2]|0;l=i;a=f[u>>2]|0}f[e+108>>2]=l;f[e+104>>2]=a-i;Zf(e);d=e+116|0;d=f[d>>2]|0;e=f[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function Wf(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+32>>2]|0)!=0?(f[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(44,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+16>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(45,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(46,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(47,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+20>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=1;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=1;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function Zf(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0;p=c;c=c+32|0;y=p+12|0;v=p;w=e+180|0;m=(f[w>>2]|0)+4|0;if((f[e+32>>2]|0)==1)b=f[e+24>>2]|0;else b=1;i=re(b<<1,m)|0;f[y>>2]=0;M=y+4|0;f[M>>2]=0;f[y+8>>2]=0;e:do{if(i){if(!((i|0)<0?(_=0,ue(178,y|0),g=_,_=0,g&1):0))k=6;if((k|0)==6?(_=0,r=de(67,i|0)|0,g=_,_=0,!(g&1)):0){f[M>>2]=r;f[y>>2]=r;f[y+8>>2]=r+i;while(1){t[r>>0]=0;r=(f[M>>2]|0)+1|0;f[M>>2]=r;i=i+-1|0;if(!i)break e}}r=ze()|0;i=f[y>>2]|0;if(!i)$e(r|0);if((f[M>>2]|0)!=(i|0))f[M>>2]=i;Ip(i);$e(r|0)}}while(0);f[v>>2]=0;g=v+4|0;f[g>>2]=0;f[v+8>>2]=0;do{if(!b)k=19;else{if(!(b>>>0>1073741823?(_=0,ue(178,v|0),d=_,_=0,d&1):0))k=17;if((k|0)==17?(n=b<<2,_=0,a=de(67,n|0)|0,d=_,_=0,!(d&1)):0){f[v>>2]=a;k=a+(b<<2)|0;f[v+8>>2]=k;ym(a|0,0,n|0)|0;f[g>>2]=k;k=19;break}r=ze()|0;i=f[v>>2]|0;n=i;if(i){a=f[g>>2]|0;if((a|0)!=(i|0))f[g>>2]=a+(~((a+-4-n|0)>>>2)<<2);Ip(i)}}}while(0);if((k|0)==19){l=e+12|0;e:do{if((f[l>>2]|0)>0){o=e+4604|0;u=(re(b,m)|0)+1|0;h=e+4608|0;d=e+92|0;s=e+4600|0;if((b|0)>0)a=0;else{n=0;while(1){r=f[y>>2]|0;i=r+1|0;f[o>>2]=i;r=r+u|0;f[h>>2]=r;if(!(n&1))i=r;else{f[o>>2]=r;f[h>>2]=i}b=f[d>>2]|0;_=0;Re(f[(f[b>>2]|0)+12>>2]|0,b|0,i|0,f[w>>2]|0,m|0);b=_;_=0;if(b&1)break;n=n+1|0;if((n|0)>=(f[l>>2]|0)){k=45;break e}}r=ze()|0;break}i:while(1){r=f[y>>2]|0;i=r+1|0;f[o>>2]=i;r=r+u|0;f[h>>2]=r;if(!(a&1))i=r;else{f[o>>2]=r;f[h>>2]=i}k=f[d>>2]|0;_=0;Re(f[(f[k>>2]|0)+12>>2]|0,k|0,i|0,f[w>>2]|0,m|0);k=_;_=0;if(k&1){k=28;break}i=f[v>>2]|0;r=f[o>>2]|0;n=0;do{f[s>>2]=f[i+(n<<2)>>2];k=f[w>>2]|0;t[r+k>>0]=t[r+(k+-1)>>0]|0;t[(f[h>>2]|0)+-1>>0]=t[f[o>>2]>>0]|0;_=0;ce(75,e|0,0);k=_;_=0;if(k&1){k=36;break i}i=f[v>>2]|0;f[i+(n<<2)>>2]=f[s>>2];r=(f[o>>2]|0)+m|0;f[o>>2]=r;f[h>>2]=(f[h>>2]|0)+m;n=n+1|0}while((n|0)<(b|0));a=a+1|0;if((a|0)>=(f[l>>2]|0)){k=45;break e}}if((k|0)==28){r=ze()|0;break}else if((k|0)==36){r=ze()|0;break}}else k=45}while(0);do{if((k|0)==45){_=0;ue(182,e|0);e=_;_=0;if(e&1){r=ze()|0;break}i=f[v>>2]|0;r=i;if(i){n=f[g>>2]|0;if((n|0)!=(i|0))f[g>>2]=n+(~((n+-4-r|0)>>>2)<<2);Ip(i)}i=f[y>>2]|0;if(!i){c=p;return}if((f[M>>2]|0)!=(i|0))f[M>>2]=i;Ip(i);c=p;return}}while(0);i=f[v>>2]|0;n=i;if(i){a=f[g>>2]|0;if((a|0)!=(i|0))f[g>>2]=a+(~((a+-4-n|0)>>>2)<<2);Ip(i)}}i=f[y>>2]|0;if(!i)$e(r|0);if((f[M>>2]|0)!=(i|0))f[M>>2]=i;Ip(i);$e(r|0)}function Jf(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0;b=e+4604|0;i=f[b>>2]|0;_=e+180|0;if((f[_>>2]|0)<=0)return;k=e+4608|0;w=e+4612|0;s=i;l=a[i+-1>>0]|0;i=a[i>>0]|0;d=0;while(1){h=f[k>>2]|0;c=a[h+(d+-1)>>0]|0;n=d+1|0;r=a[s+n>>0]|0;u=f[w>>2]|0;o=i-l|0;s=l-c|0;u=((((t[u+(r-i)>>0]|0)*9|0)+(t[u+o>>0]|0)|0)*9|0)+(t[u+s>>0]|0)|0;if(!u){n=($f(e,d,0)|0)+d|0;r=f[b>>2]|0;i=a[r+(n+-1)>>0]|0;r=a[r+n>>0]|0}else{l=i-c>>31;if((l^s|0)<0)s=i;else s=c+((l^o|0)<0?0:o)|0;h=Qf(e,u,a[h+d>>0]|0,s,0)|0;t[(f[k>>2]|0)+d>>0]=h}if((n|0)>=(f[_>>2]|0))break;s=f[b>>2]|0;l=i;i=r;d=n}return}function Qf(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0;_=i>>31;s=(_^i)-_|0;k=e+196+(s*12|0)+10|0;l=n[k>>1]|0;b=e+196+(s*12|0)|0;a=f[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){i=5;while(1)if((l<<i|0)<(a|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;h=e+196+(s*12|0)+8|0;a=(n[h>>1]^_)-_+t|0;w=e+136|0;t=f[w>>2]|0;if((a&t|0)==(a|0))c=a;else c=t&~(a>>31);a=(r-c^_)-_|0;u=e+144|0;t=f[u>>2]|0;if((a|0)>0)a=(a+t|0)/(t<<1|1|0)|0;else a=(a-t|0)/(t<<1|1|0)|0;d=e+140|0;o=f[d>>2]|0;r=((a|0)<0?o:0)+a|0;o=r-((r|0)<((o+1|0)/2|0|0)?0:o)|0;s=e+196+(s*12|0)+4|0;if(!(t|i))a=(f[s>>2]<<1)+-1+l>>31;else a=0;t=a^o;ra(e,i,t>>30^t<<1,f[e+156>>2]|0);t=f[e+160>>2]|0;i=(f[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;a=(f[s>>2]|0)+(re(f[u>>2]<<1|1,o)|0)|0;r=n[k>>1]|0;if((r|0)==(t|0)){i=i>>1;a=a>>1;r=t>>1}f[b>>2]=i;t=r+1|0;n[k>>1]=t;i=t+a|0;if((i|0)>=1){if((a|0)>0){a=a-t|0;k=n[h>>1]|0;n[h>>1]=(k<<16>>16<127&1)+(k&65535);a=(a|0)>0?0:a}}else{a=n[h>>1]|0;n[h>>1]=(a&65535)-(a<<16>>16>-128&1);a=(i|0)>(~r|0)?i:0-r|0}f[s>>2]=a;t=f[u>>2]|0;r=t<<1|1;i=(re(r,(o^_)-_|0)|0)+c|0;if((i|0)>=(0-t|0)){a=f[w>>2]|0;if((a+t|0)<(i|0))i=i-(re(f[d>>2]|0,r)|0)|0}else{i=(re(f[d>>2]|0,r)|0)+i|0;a=f[w>>2]|0}if((i&a|0)==(i|0)){_=i;_=_&255;return _|0}_=a&~(i>>31);_=_&255;return _|0}function $f(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;c=(f[e+180>>2]|0)-i|0;h=f[e+4608>>2]|0;d=f[e+4604>>2]|0;s=t[h+(i+-1)>>0]|0;u=s&255;r=e+144|0;l=0;while(1){n=h+(l+i)|0;o=(a[n>>0]|0)-u|0;if((((o|0)>-1?o:0-o|0)|0)>(f[r>>2]|0))break;t[n>>0]=s;l=l+1|0;if((l|0)==(c|0)){l=c;break}}s=(l|0)==(c|0);o=e+4600|0;n=f[36476+(f[o>>2]<<2)>>2]|0;if((1<<n|0)>(l|0))r=l;else{r=l;do{Bt(e,1,1);n=f[o>>2]|0;r=r-(1<<f[36476+(n<<2)>>2])|0;n=(n|0)>30?31:n+1|0;f[o>>2]=n;n=f[36476+(n<<2)>>2]|0}while((r|0)>=(1<<n|0))}if(!s){Bt(e,r,n+1|0);c=l+i|0;i=h+c|0;t[i>>0]=ea(e,a[i>>0]|0,u,a[d+c>>0]|0)|0;e=f[o>>2]|0;f[o>>2]=(e|0)<1?0:e+-1|0;e=l+1|0;return e|0}if(!r){e=c;return e|0}Bt(e,1,1);e=c;return e|0}function ea(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0;l=r-t|0;o=e+136|0;s=e+144|0;n=f[s>>2]|0;if((((l|0)>-1?l:0-l|0)|0)>(n|0)){a=t-r>>31|1;i=re(a,i-t|0)|0;if((i|0)>0)i=(n+i|0)/(n<<1|1|0)|0;else i=(i-n|0)/(n<<1|1|0)|0;l=e+140|0;n=f[l>>2]|0;r=((i|0)<0?n:0)+i|0;n=r-((r|0)<((n+1|0)/2|0|0)?0:n)|0;ia(e,e+4576|0,n);n=re(n,a)|0;a=f[s>>2]|0;s=a<<1|1;n=(re(n,s)|0)+t|0;if((n|0)>=(0-a|0)){i=f[o>>2]|0;if((i+a|0)<(n|0))n=n-(re(f[l>>2]|0,s)|0)|0}else{n=(re(f[l>>2]|0,s)|0)+n|0;i=f[o>>2]|0}if((n&i|0)==(n|0)){o=n;o=o&255;return o|0}o=i&~(n>>31);o=o&255;return o|0}else{i=i-r|0;if((i|0)>0)i=(n+i|0)/(n<<1|1|0)|0;else i=(i-n|0)/(n<<1|1|0)|0;l=e+140|0;n=f[l>>2]|0;a=((i|0)<0?n:0)+i|0;n=a-((a|0)<((n+1|0)/2|0|0)?0:n)|0;ia(e,e+4588|0,n);a=f[s>>2]|0;s=a<<1|1;n=(re(s,n)|0)+r|0;if((n|0)>=(0-a|0)){i=f[o>>2]|0;if((i+a|0)<(n|0))n=n-(re(f[l>>2]|0,s)|0)|0}else{n=(re(f[l>>2]|0,s)|0)+n|0;i=f[o>>2]|0}if((n&i|0)==(n|0)){o=n;o=o&255;return o|0}o=i&~(n>>31);o=o&255;return o|0}return 0}function ia(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=f[h>>2]|0;s=(re(o>>>1,c)|0)+(f[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;ra(e,s,n,(f[e+156>>2]|0)+-1-(f[36476+(f[e+4600>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;t[e>>0]=(a[e>>0]|0)+1}n=(n+1-(f[h>>2]|0)>>1)+(f[i>>2]|0)|0;f[i>>2]=n;s=t[d>>0]|0;if(s<<24>>24!=(t[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}f[i>>2]=n>>1;e=(s&255)>>>1;t[d>>0]=e;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;t[d>>0]=i;return}function ra(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0;n=r>>i;a=e+148|0;s=t-(f[a>>2]|0)|0;if((n|0)<(s+-1|0)){if((n|0)>30){t=(n|0)/2|0;Bt(e,0,t);n=n-t|0}Bt(e,1,n+1|0);Bt(e,(1<<i)+-1&r,i);return}if((s|0)>31){Bt(e,0,31);Bt(e,1,t+-31-(f[a>>2]|0)|0)}else Bt(e,1,s);i=f[a>>2]|0;Bt(e,(1<<i)+-1&r+-1,i);return}function ta(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0;k=c;c=c+32|0;n=k;b=e+144|0;e:do{if(!(f[b>>2]|0)){r=f[e+136>>2]|0;i=e+152|0;if((((r|0)==((1<<f[i>>2])+-1|0)?(op(n,r,0),(f[n+4>>2]|0)==(f[e+184>>2]|0)):0)?(f[n+8>>2]|0)==(f[e+188>>2]|0):0)?(f[n+12>>2]|0)==(f[e+192>>2]|0):0)switch(f[i>>2]|0){case 8:{b=f[8900]|0;f[e+4612>>2]=b+(((f[8901]|0)-b|0)>>>1);c=k;return}case 10:{b=f[8903]|0;f[e+4612>>2]=b+(((f[8904]|0)-b|0)>>>1);c=k;return}case 12:{b=f[8906]|0;f[e+4612>>2]=b+(((f[8907]|0)-b|0)>>>1);c=k;return}case 16:{b=f[8909]|0;f[e+4612>>2]=b+(((f[8910]|0)-b|0)>>>1);c=k;return}default:break e}}else i=e+152|0}while(0);d=1<<f[i>>2];r=e+4616|0;n=d<<1;a=e+4620|0;s=f[a>>2]|0;i=f[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)f[a>>2]=o}else{zt(r,n-l|0);i=f[r>>2]|0}h=e+4612|0;f[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=k;return}o=e+192|0;u=e+188|0;l=e+184|0;s=i;do{i=f[o>>2]|0;if((s|0)>(0-i|0)){r=f[u>>2]|0;if((s|0)>(0-r|0)){n=f[l>>2]|0;if((s|0)>(0-n|0)){a=f[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;t[(f[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=k;return}function na(e){e=e|0;var i=0,r=0;f[e>>2]=35856;i=f[e+4608>>2]|0;if(i){r=e+4612|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}e=e+88|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function fa(e){e=e|0;var i=0,r=0;f[e>>2]=35856;i=f[e+4608>>2]|0;if(i){r=e+4612|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+88|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function aa(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+28>>2]|0)!=0?(f[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(37,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+12>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(38,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(39,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(40,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+16>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=2;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=2;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function sa(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,f[e+128>>2]|0,f[e+136>>2]|0);u=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[h+8>>2]|0:l;s=f[i+12>>2]|0;s=(s|0)==0?f[h+12>>2]|0:s;r=f[i+16>>2]|0;a=f[h+16>>2]|0;f[e+176>>2]=(u|0)==0?f[h+4>>2]|0:u;f[e+180>>2]=l;f[e+184>>2]=s;ma(e);s=e+132|0;i=(f[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{f[e+188+(l*12|0)>>2]=i;f[e+188+(l*12|0)+4>>2]=0;n[e+188+(l*12|0)+8>>1]=0;n[e+188+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(f[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;f[e+4568>>2]=u;f[e+4572>>2]=0;t[e+4576>>0]=h;t[e+4577>>0]=1;t[e+4578>>0]=0;f[e+4580>>2]=u;f[e+4584>>2]=1;t[e+4588>>0]=h;t[e+4589>>0]=1;t[e+4590>>0]=0;f[e+4592>>2]=0;c=o;return}function la(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=f[i>>2]|0;f[i>>2]=0;i=f[l>>2]|0;f[l>>2]=s;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=f[l>>2]|0;t[e+4620>>0]=a&1;i=e+156|0;f[i>>2]=f[r>>2];f[i+4>>2]=f[r+4>>2];f[i+8>>2]=f[r+8>>2];f[i+12>>2]=f[r+12>>2];Ct(e,n);oa(e);i=f[e+116>>2]|0;e=f[e+112>>2]|0;while(1){a=i+-1|0;r=(t[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=f[l>>2]|0;if(!a)return;f[l>>2]=a+i;n=n+8|0;f[n>>2]=(f[n>>2]|0)-i;return}function oa(e){e=e|0;var i=0,r=0,t=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;S=c;c=c+32|0;C=S+12|0;A=S;y=e+172|0;M=(f[y>>2]|0)+4|0;if((f[e+28>>2]|0)==1)E=f[e+20>>2]|0;else E=1;i=re(E<<1,M)|0;f[C>>2]=0;R=C+4|0;f[R>>2]=0;f[C+8>>2]=0;do{if(i){if(!((i|0)<0?(_=0,ue(178,C|0),T=_,_=0,T&1):0))l=6;if((l|0)==6?(r=i<<1,_=0,t=de(67,r|0)|0,T=_,_=0,!(T&1)):0){f[C>>2]=t;T=t+(i<<1)|0;f[C+8>>2]=T;ym(t|0,0,r|0)|0;f[R>>2]=T;break}t=ze()|0;i=f[C>>2]|0;if(!i)$e(t|0);r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);$e(t|0)}}while(0);f[A>>2]=0;T=A+4|0;f[T>>2]=0;f[A+8>>2]=0;do{if(!E)l=18;else{if(!(E>>>0>1073741823?(_=0,ue(178,A|0),g=_,_=0,g&1):0))l=16;if((l|0)==16?(a=E<<2,_=0,s=de(67,a|0)|0,g=_,_=0,!(g&1)):0){f[A>>2]=s;l=s+(E<<2)|0;f[A+8>>2]=l;ym(s|0,0,a|0)|0;f[T>>2]=l;l=18;break}t=ze()|0;i=f[A>>2]|0;r=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}}while(0);if((l|0)==18){s=e+8|0;e:do{if((f[s>>2]|0)>0){l=e+4596|0;o=re(E,M)|0;u=o+1|0;h=e+4600|0;d=(E|0)>0;b=e+160|0;k=e+168|0;w=e+164|0;m=e+156|0;v=e+88|0;p=e+4592|0;g=0;i:while(1){t=f[C>>2]|0;r=t+2|0;f[l>>2]=r;t=t+(u<<1)|0;f[h>>2]=t;if(!(g&1))i=t;else{f[l>>2]=t;f[h>>2]=r;i=r;r=t}if(d){a=f[A>>2]|0;t=0;do{f[p>>2]=f[a+(t<<2)>>2];a=f[y>>2]|0;n[r+(a<<1)>>1]=n[r+(a+-1<<1)>>1]|0;n[i+-2>>1]=n[r>>1]|0;_=0;ce(76,e|0,0);a=_;_=0;if(a&1){l=29;break i}a=f[A>>2]|0;f[a+(t<<2)>>2]=f[p>>2];r=(f[l>>2]|0)+(M<<1)|0;f[l>>2]=r;i=(f[h>>2]|0)+(M<<1)|0;f[h>>2]=i;t=t+1|0}while((t|0)<(E|0))}a=f[b>>2]|0;if(((a|0)<=(g|0)?(g|0)<((f[k>>2]|0)+a|0):0)?(a=f[v>>2]|0,_=0,Re(f[(f[a>>2]|0)+8>>2]|0,a|0,i+((f[m>>2]|0)-o<<1)|0,f[w>>2]|0,M|0),a=_,_=0,a&1):0){l=30;break}g=g+1|0;if((g|0)>=(f[s>>2]|0)){l=42;break e}}if((l|0)==29){t=ze()|0;break}else if((l|0)==30){t=ze()|0;break}}else l=42}while(0);do{if((l|0)==42){_=0;ue(183,e|0);e=_;_=0;if(e&1){t=ze()|0;break}i=f[A>>2]|0;r=i;if(i){t=f[T>>2]|0;if((t|0)!=(i|0))f[T>>2]=t+(~((t+-4-r|0)>>>2)<<2);Ip(i)}i=f[C>>2]|0;if(!i){c=S;return}r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);c=S;return}}while(0);i=f[A>>2]|0;r=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}i=f[C>>2]|0;if(!i)$e(t|0);r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);$e(t|0)}function ua(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0;w=e+4596|0;r=f[w>>2]|0;p=e+172|0;i=f[p>>2]|0;if((i|0)<=0)return;_=e+4600|0;m=e+4604|0;v=e+4592|0;c=r;o=s[r+-2>>1]|0;r=s[r>>1]|0;k=0;while(1){d=f[_>>2]|0;u=n[d+(k+-1<<1)>>1]|0;b=u&65535;l=k+1|0;a=s[c+(l<<1)>>1]|0;h=f[m>>2]|0;c=r-o|0;o=o-b|0;h=((((t[h+(a-r)>>0]|0)*9|0)+(t[h+c>>0]|0)|0)*9|0)+(t[h+o>>0]|0)|0;d=d+(k<<1)|0;if(!h){i=da(e,u,d,i-k|0)|0;r=i+k|0;if((r|0)!=(f[p>>2]|0)){b=ba(e,b,s[(f[w>>2]|0)+(r<<1)>>1]|0)|0;n[(f[_>>2]|0)+(r<<1)>>1]=b;b=f[v>>2]|0;f[v>>2]=(b|0)<1?0:b+-1|0;i=i+1|0}l=i+k|0;a=f[w>>2]|0;r=s[a+(l+-1<<1)>>1]|0;a=s[a+(l<<1)>>1]|0}else{i=r-b>>31;if((i^o|0)<0)i=r;else i=b+((i^c|0)<0?0:c)|0;b=ha(e,h,s[d>>1]|0,i,0)|0;n[(f[_>>2]|0)+(k<<1)>>1]=b}i=f[p>>2]|0;if((i|0)<=(l|0))break;c=f[w>>2]|0;o=r;r=a;k=l}return}function ca(e){e=e|0;var i=0,r=0,n=0,a=0;n=e+116|0;r=f[n>>2]|0;if((t[r>>0]|0)!=-1){a=e+112|0;i=f[a>>2]|0;if((i|0)<1){jt(e);i=f[a>>2]|0;r=f[n>>2]|0}e=e+108|0;n=f[e>>2]|0;f[a>>2]=i+-1;i=n<<1;f[e>>2]=i;if((t[r>>0]|0)!=-1){i=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,i|0,6,35648);e=_;_=0;if(!(e&1))bi(i|0,824,96);e=ze()|0;je(i|0);$e(e|0)}}else i=f[e+108>>2]|0;if(!i)return;i=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,i|0,6,35648);e=_;_=0;if(!(e&1))bi(i|0,824,96);e=ze()|0;je(i|0);$e(e|0)}function ha(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,m=0,v=0;v=i>>31;c=(v^i)-v|0;k=e+188+(c*12|0)+10|0;r=n[k>>1]|0;b=e+188+(c*12|0)|0;s=f[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){i=5;while(1)if((r<<i|0)<(s|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;d=e+188+(c*12|0)+8|0;r=(n[d>>1]^v)-v+a|0;m=e+128|0;s=f[m>>2]|0;if((r&s|0)==(r|0))h=r;else h=s&~(r>>31);r=e+112|0;if((f[r>>2]|0)<8)jt(e);s=e+108|0;a=f[s>>2]|0;l=a>>>24;o=f[2832+(i<<11)+(l<<3)+4>>2]|0;if(!o){u=f[e+148>>2]|0;s=f[e+140>>2]|0;r=wa(e)|0;if((r|0)<(u+-1-s|0)){if(i)r=(_a(e,i)|0)+(r<<i)|0}else r=(_a(e,s)|0)+1|0;r=r<<31>>31^r>>1;if((((r|0)>-1?r:0-r|0)|0)>65535){r=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,r|0,5,35648);e=_;_=0;if(e&1){e=ze()|0;je(r|0);$e(e|0)}else bi(r|0,824,96)}}else{f[r>>2]=(f[r>>2]|0)-o;f[s>>2]=a<<o;r=f[2832+(i<<11)+(l<<3)>>2]|0}u=e+136|0;a=f[u>>2]|0;if(!i){if(!a)s=(f[e+188+(c*12|0)+4>>2]<<1)+-1+(n[k>>1]|0)>>31;else s=0;o=s^r}else o=r;i=f[e+152>>2]|0;s=(f[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;l=e+188+(c*12|0)+4|0;r=(f[l>>2]|0)+(re(a<<1|1,o)|0)|0;a=n[k>>1]|0;if((a|0)==(i|0)){s=s>>1;r=r>>1;a=i>>1}f[b>>2]=s;i=a+1|0;n[k>>1]=i;s=i+r|0;if((s|0)>=1){if((r|0)>0){r=r-i|0;k=n[d>>1]|0;n[d>>1]=(k<<16>>16<127&1)+(k&65535);r=(r|0)>0?0:r}}else{r=n[d>>1]|0;n[d>>1]=(r&65535)-(r<<16>>16>-128&1);r=(s|0)>(~a|0)?s:0-a|0}f[l>>2]=r;i=f[u>>2]|0;a=i<<1|1;s=(re(a,(o^v)-v|0)|0)+h|0;if((s|0)>=(0-i|0)){r=f[m>>2]|0;if((r+i|0)<(s|0))s=s-(re(f[e+132>>2]|0,a)|0)|0}else{s=(re(f[e+132>>2]|0,a)|0)+s|0;r=f[m>>2]|0}if((s&r|0)==(s|0)){e=s;e=e&65535;return e|0}e=r&~(s>>31);e=e&65535;return e|0}function da(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0;u=e+112|0;c=e+108|0;h=e+4592|0;s=f[u>>2]|0;l=0;while(1){if((s|0)<1){jt(e);s=f[u>>2]|0}o=f[c>>2]|0;s=s+-1|0;f[u>>2]=s;f[c>>2]=o<<1;if((o|0)>=0){d=8;break}o=f[h>>2]|0;b=1<<f[36476+(o<<2)>>2];k=a-l|0;k=(b|0)<(k|0)?b:k;l=k+l|0;if((k|0)==(b|0))f[h>>2]=(o|0)>30?31:o+1|0;if((l|0)==(a|0)){s=a;break}}if((d|0)==8)if((l|0)!=(a|0)){s=f[h>>2]|0;if((s+-4|0)>>>0<28)s=_a(e,f[36476+(s<<2)>>2]|0)|0;else s=0;s=s+l|0;if((s|0)>(a|0)){s=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,s|0,5,35648);k=_;_=0;if(k&1){k=ze()|0;je(s|0);$e(k|0)}else bi(s|0,824,96)}}else s=a;if((s|0)>0)l=0;else return s|0;do{n[r+(l<<1)>>1]=i;l=l+1|0}while((l|0)!=(s|0));return s|0}function ba(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0;a=i-r|0;s=e+128|0;t=e+136|0;if((((a|0)>-1?a:0-a|0)|0)>(f[t>>2]|0)){i=re(ka(e,e+4568|0)|0,r-i>>31|1)|0;n=f[t>>2]|0;a=n<<1|1;i=(re(i,a)|0)+r|0;if((i|0)>=(0-n|0)){t=f[s>>2]|0;if((t+n|0)<(i|0))i=i-(re(f[e+132>>2]|0,a)|0)|0}else{i=(re(f[e+132>>2]|0,a)|0)+i|0;t=f[s>>2]|0}if((i&t|0)==(i|0)){e=i;e=e&65535;return e|0}e=t&~(i>>31);e=e&65535;return e|0}else{r=ka(e,e+4580|0)|0;a=f[t>>2]|0;n=a<<1|1;i=(re(n,r)|0)+i|0;if((i|0)>=(0-a|0)){t=f[s>>2]|0;if((t+a|0)<(i|0))i=i-(re(f[e+132>>2]|0,n)|0)|0}else{i=(re(f[e+132>>2]|0,n)|0)+i|0;t=f[s>>2]|0}if((i&t|0)==(i|0)){e=i;e=e&65535;return e|0}e=t&~(i>>31);e=e&65535;return e|0}return 0}function ka(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0;h=i+9|0;r=a[h>>0]|0;l=i+4|0;s=(re(r>>>1,f[l>>2]|0)|0)+(f[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;o=f[e+148>>2]|0;u=f[36476+(f[e+4592>>2]<<2)>>2]|0;r=f[e+140>>2]|0;s=wa(e)|0;do{if((s|0)<(o+-2-u-r|0))if(!n){n=f[l>>2]|0;e=n+s|0;r=e&1;e=(r+e|0)/2|0;c=8;break}else{u=(_a(e,n)|0)+(s<<n)|0;n=f[l>>2]|0;s=u+n|0;o=s&1;r=o;l=1;s=(o+s|0)/2|0;break}else{s=(_a(e,r)|0)+1|0;o=f[l>>2]|0;e=s+o|0;r=e&1;e=(r+e|0)/2|0;if(!n){n=o;c=8}else{u=s;l=1;s=e;n=o}}}while(0);if((c|0)==8){u=s;l=a[i+10>>0]<<1>>>0>=(a[h>>0]|0)>>>0;s=e}s=(r|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;t[c>>0]=(a[c>>0]|0)+1}r=(u+1-n>>1)+(f[i>>2]|0)|0;f[i>>2]=r;n=t[h>>0]|0;if(n<<24>>24!=(t[i+8>>0]|0)){i=n;i=i&255;i=i+1|0;i=i&255;t[h>>0]=i;return s|0}f[i>>2]=r>>1;c=(n&255)>>>1;t[h>>0]=c;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;i=c;i=i&255;i=i+1|0;i=i&255;t[h>>0]=i;return s|0}function wa(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0;a=e+112|0;if((f[a>>2]|0)<16)jt(e);s=e+108|0;r=f[s>>2]|0;if((r|0)>=0)if(!(r&1073741824))if(!(r&536870912))if(!(r&268435456))if(!(r&134217728))if(!(r&67108864))if(!(r&33554432))if(!(r&16777216))if(!(r&8388608))if(!(r&4194304))if(!(r&2097152))if(!(r&1048576))if(!(r&524288))if(!(r&262144))if(!(r&131072)){n=r>>>12&16;i=n+-1|0;if(!n){i=(f[a>>2]|0)+-15|0;f[a>>2]=i;t=r<<15;f[s>>2]=t;r=i;i=15;while(1){if((r|0)<1){jt(e);n=f[s>>2]|0;r=f[a>>2]|0}else n=t;r=r+-1|0;f[a>>2]=r;t=n<<1;f[s>>2]=t;if((n|0)<0)break;else i=i+1|0}return i|0}}else i=14;else i=13;else i=12;else i=11;else i=10;else i=9;else i=8;else i=7;else i=6;else i=5;else i=4;else i=3;else i=2;else i=1;else i=0;e=i+1|0;f[a>>2]=(f[a>>2]|0)-e;f[s>>2]=r<<e;s=i;return s|0}function _a(e,i){e=e|0;i=i|0;var r=0,n=0,a=0;n=e+112|0;r=f[n>>2]|0;if((r|0)<(i|0)){jt(e);r=f[n>>2]|0;if((r|0)<(i|0)){r=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,r|0,5,35648);e=_;_=0;if(e&1){e=ze()|0;je(r|0);$e(e|0)}else bi(r|0,824,96)}}a=e+108|0;e=f[a>>2]|0;f[n>>2]=r-i;f[a>>2]=e<<i;return e>>>(32-i|0)|0}function ma(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0;k=c;c=c+32|0;n=k;b=e+136|0;e:do{if(!(f[b>>2]|0)){r=f[e+128>>2]|0;i=e+144|0;if((((r|0)==((1<<f[i>>2])+-1|0)?(op(n,r,0),(f[n+4>>2]|0)==(f[e+176>>2]|0)):0)?(f[n+8>>2]|0)==(f[e+180>>2]|0):0)?(f[n+12>>2]|0)==(f[e+184>>2]|0):0)switch(f[i>>2]|0){case 8:{b=f[8900]|0;f[e+4604>>2]=b+(((f[8901]|0)-b|0)>>>1);c=k;return}case 10:{b=f[8903]|0;f[e+4604>>2]=b+(((f[8904]|0)-b|0)>>>1);c=k;return}case 12:{b=f[8906]|0;f[e+4604>>2]=b+(((f[8907]|0)-b|0)>>>1);c=k;return}case 16:{b=f[8909]|0;f[e+4604>>2]=b+(((f[8910]|0)-b|0)>>>1);c=k;return}default:break e}}else i=e+144|0}while(0);d=1<<f[i>>2];r=e+4608|0;n=d<<1;a=e+4612|0;s=f[a>>2]|0;i=f[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)f[a>>2]=o}else{zt(r,n-l|0);i=f[r>>2]|0}h=e+4604|0;f[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=k;return}o=e+184|0;u=e+180|0;l=e+176|0;s=i;do{i=f[o>>2]|0;if((s|0)>(0-i|0)){r=f[u>>2]|0;if((s|0)>(0-r|0)){n=f[l>>2]|0;if((s|0)>(0-n|0)){a=f[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;t[(f[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=k;return}function va(e){e=e|0;var i=0,r=0;f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}e=e+88|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function pa(e){e=e|0;var i=0,r=0;f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+88|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function ga(e){e=e|0;var i=0,r=0;f[e>>2]=35828;i=f[e+4608>>2]|0;if(i){r=e+4612|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}e=e+88|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function ya(e){e=e|0;var i=0,r=0;f[e>>2]=35828;i=f[e+4608>>2]|0;if(i){r=e+4612|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+88|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function Ma(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+28>>2]|0)!=0?(f[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(37,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+12>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(38,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(39,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(40,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+16>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=6;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=6;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function Ea(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,f[e+128>>2]|0,f[e+136>>2]|0);u=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[h+8>>2]|0:l;s=f[i+12>>2]|0;s=(s|0)==0?f[h+12>>2]|0:s;r=f[i+16>>2]|0;a=f[h+16>>2]|0;f[e+176>>2]=(u|0)==0?f[h+4>>2]|0:u;f[e+180>>2]=l;f[e+184>>2]=s;Pa(e);s=e+132|0;i=(f[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{f[e+188+(l*12|0)>>2]=i;f[e+188+(l*12|0)+4>>2]=0;n[e+188+(l*12|0)+8>>1]=0;n[e+188+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(f[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;f[e+4568>>2]=u;f[e+4572>>2]=0;t[e+4576>>0]=h;t[e+4577>>0]=1;t[e+4578>>0]=0;f[e+4580>>2]=u;f[e+4584>>2]=1;t[e+4588>>0]=h;t[e+4589>>0]=1;t[e+4590>>0]=0;f[e+4592>>2]=0;c=o;return}function Aa(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=f[i>>2]|0;f[i>>2]=0;i=f[l>>2]|0;f[l>>2]=s;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=f[l>>2]|0;t[e+4620>>0]=a&1;i=e+156|0;f[i>>2]=f[r>>2];f[i+4>>2]=f[r+4>>2];f[i+8>>2]=f[r+8>>2];f[i+12>>2]=f[r+12>>2];Ct(e,n);Sa(e);i=f[e+116>>2]|0;e=f[e+112>>2]|0;while(1){a=i+-1|0;r=(t[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=f[l>>2]|0;if(!a)return;f[l>>2]=a+i;n=n+8|0;f[n>>2]=(f[n>>2]|0)-i;return}function Sa(e){e=e|0;var i=0,r=0,t=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;S=c;c=c+32|0;C=S+12|0;A=S;y=e+172|0;M=(f[y>>2]|0)+4|0;if((f[e+28>>2]|0)==1)E=f[e+20>>2]|0;else E=1;i=re(E<<1,M)|0;f[C>>2]=0;R=C+4|0;f[R>>2]=0;f[C+8>>2]=0;do{if(i){if(!(i>>>0>715827882?(_=0,ue(178,C|0),T=_,_=0,T&1):0))l=6;if((l|0)==6?(_=0,r=de(67,i*6|0)|0,T=_,_=0,!(T&1)):0){f[R>>2]=r;f[C>>2]=r;t=r+(i*6|0)|0;f[C+8>>2]=t;while(1){n[r>>1]=0;n[r+2>>1]=0;n[r+4>>1]=0;i=i+-1|0;if(!i)break;else r=r+6|0}f[R>>2]=t;break}t=ze()|0;i=f[C>>2]|0;if(!i)$e(t|0);r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~(((r+-6-i|0)>>>0)/6|0)*6|0);Ip(i);$e(t|0)}}while(0);f[A>>2]=0;T=A+4|0;f[T>>2]=0;f[A+8>>2]=0;do{if(!E)l=20;else{if(!(E>>>0>1073741823?(_=0,ue(178,A|0),g=_,_=0,g&1):0))l=18;if((l|0)==18?(a=E<<2,_=0,s=de(67,a|0)|0,g=_,_=0,!(g&1)):0){f[A>>2]=s;l=s+(E<<2)|0;f[A+8>>2]=l;ym(s|0,0,a|0)|0;f[T>>2]=l;l=20;break}t=ze()|0;i=f[A>>2]|0;r=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}}while(0);if((l|0)==20){s=e+8|0;e:do{if((f[s>>2]|0)>0){l=e+4596|0;o=re(E,M)|0;u=o+1|0;h=e+4600|0;d=(E|0)>0;b=e+160|0;k=e+168|0;w=e+164|0;m=e+156|0;v=e+88|0;p=e+4592|0;g=0;i:while(1){t=f[C>>2]|0;r=t+6|0;f[l>>2]=r;t=t+(u*6|0)|0;f[h>>2]=t;if(!(g&1))i=t;else{f[l>>2]=t;f[h>>2]=r;i=r;r=t}if(d){a=f[A>>2]|0;t=0;do{f[p>>2]=f[a+(t<<2)>>2];i=f[y>>2]|0;a=r+(i*6|0)|0;r=r+((i+-1|0)*6|0)|0;n[a>>1]=n[r>>1]|0;n[a+2>>1]=n[r+2>>1]|0;n[a+4>>1]=n[r+4>>1]|0;a=(f[h>>2]|0)+-6|0;r=f[l>>2]|0;n[a>>1]=n[r>>1]|0;n[a+2>>1]=n[r+2>>1]|0;n[a+4>>1]=n[r+4>>1]|0;_=0;ce(77,e|0,0);a=_;_=0;if(a&1){l=31;break i}a=f[A>>2]|0;f[a+(t<<2)>>2]=f[p>>2];r=(f[l>>2]|0)+(M*6|0)|0;f[l>>2]=r;i=(f[h>>2]|0)+(M*6|0)|0;f[h>>2]=i;t=t+1|0}while((t|0)<(E|0))}a=f[b>>2]|0;if(((a|0)<=(g|0)?(g|0)<((f[k>>2]|0)+a|0):0)?(a=f[v>>2]|0,_=0,Re(f[(f[a>>2]|0)+8>>2]|0,a|0,i+(((f[m>>2]|0)-o|0)*6|0)|0,f[w>>2]|0,M|0),a=_,_=0,a&1):0){l=32;break}g=g+1|0;if((g|0)>=(f[s>>2]|0)){l=44;break e}}if((l|0)==31){t=ze()|0;break}else if((l|0)==32){t=ze()|0;break}}else l=44}while(0);do{if((l|0)==44){_=0;ue(183,e|0);e=_;_=0;if(e&1){t=ze()|0;break}i=f[A>>2]|0;r=i;if(i){t=f[T>>2]|0;if((t|0)!=(i|0))f[T>>2]=t+(~((t+-4-r|0)>>>2)<<2);Ip(i)}i=f[C>>2]|0;if(!i){c=S;return}r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~(((r+-6-i|0)>>>0)/6|0)*6|0);Ip(i);c=S;return}}while(0);i=f[A>>2]|0;r=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}i=f[C>>2]|0;if(!i)$e(t|0);r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~(((r+-6-i|0)>>>0)/6|0)*6|0);Ip(i);$e(t|0)}function Ta(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0;U=c;c=c+32|0;R=U+24|0;F=U+18|0;N=U+12|0;L=U+6|0;x=U;P=e+172|0;i=f[P>>2]|0;if((i|0)<=0){c=U;return}O=e+4600|0;B=e+4596|0;I=e+4604|0;D=e+4592|0;C=0;while(1){a=C+-1|0;l=f[O>>2]|0;j=f[B>>2]|0;r=C+1|0;o=s[j+(C*6|0)>>1]|0;T=f[I>>2]|0;u=s[j+(a*6|0)>>1]|0;h=o-u|0;d=s[l+(a*6|0)>>1]|0;b=u-d|0;k=((((t[T+((s[j+(r*6|0)>>1]|0)-o)>>0]|0)*9|0)+(t[T+h>>0]|0)|0)*9|0)+(t[T+b>>0]|0)|0;w=s[j+(C*6|0)+2>>1]|0;_=s[j+(a*6|0)+2>>1]|0;m=w-_|0;v=s[l+(a*6|0)+2>>1]|0;p=_-v|0;g=((((t[T+((s[j+(r*6|0)+2>>1]|0)-w)>>0]|0)*9|0)+(t[T+m>>0]|0)|0)*9|0)+(t[T+p>>0]|0)|0;y=s[j+(C*6|0)+4>>1]|0;M=s[j+(a*6|0)+4>>1]|0;E=y-M|0;A=s[l+(a*6|0)+4>>1]|0;S=M-A|0;T=((((t[T+((s[j+(r*6|0)+4>>1]|0)-y)>>0]|0)*9|0)+(t[T+E>>0]|0)|0)*9|0)+(t[T+S>>0]|0)|0;if(!(g|k|T)){r=l+(a*6|0)|0;n[N>>1]=n[r>>1]|0;n[N+2>>1]=n[r+2>>1]|0;n[N+4>>1]=n[r+4>>1]|0;n[R>>1]=n[r>>1]|0;n[R+2>>1]=n[r+2>>1]|0;n[R+4>>1]=n[r+4>>1]|0;i=Ca(e,R,l+(C*6|0)|0,i-C|0)|0;r=i+C|0;if((r|0)!=(f[P>>2]|0)){j=(f[B>>2]|0)+(r*6|0)|0;n[x>>1]=n[j>>1]|0;n[x+2>>1]=n[j+2>>1]|0;n[x+4>>1]=n[j+4>>1]|0;j=(f[O>>2]|0)+(r*6|0)|0;n[F>>1]=n[N>>1]|0;n[F+2>>1]=n[N+2>>1]|0;n[F+4>>1]=n[N+4>>1]|0;n[R>>1]=n[x>>1]|0;n[R+2>>1]=n[x+2>>1]|0;n[R+4>>1]=n[x+4>>1]|0;Ra(L,e,F,R);n[j>>1]=n[L>>1]|0;n[j+2>>1]=n[L+2>>1]|0;n[j+4>>1]=n[L+4>>1]|0;j=f[D>>2]|0;f[D>>2]=(j|0)<1?0:j+-1|0;i=i+1|0}r=i+C|0}else{a=s[l+(C*6|0)>>1]|0;i=o-d>>31;if((i^b|0)>=0)if((i^h|0)<0)i=d;else i=d-u+o|0;else i=o;o=La(e,k,a,i,0)|0;a=s[(f[O>>2]|0)+(C*6|0)+2>>1]|0;i=w-v>>31;if((i^p|0)>=0)if((i^m|0)<0)i=v;else i=v-_+w|0;else i=w;a=La(e,g,a,i,0)|0;l=s[(f[O>>2]|0)+(C*6|0)+4>>1]|0;i=y-A>>31;if((i^S|0)>=0)if((i^E|0)<0)i=A;else i=A-M+y|0;else i=y;T=La(e,T,l,i,0)|0;j=f[O>>2]|0;n[j+(C*6|0)>>1]=o;n[j+(C*6|0)+2>>1]=a;n[j+(C*6|0)+4>>1]=T}i=f[P>>2]|0;if((r|0)>=(i|0))break;else C=r}c=U;return}function Ca(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0;u=e+112|0;c=e+108|0;h=e+4592|0;s=f[u>>2]|0;l=0;while(1){if((s|0)<1){jt(e);s=f[u>>2]|0}o=f[c>>2]|0;s=s+-1|0;f[u>>2]=s;f[c>>2]=o<<1;if((o|0)>=0){d=8;break}o=f[h>>2]|0;b=1<<f[36476+(o<<2)>>2];k=a-l|0;k=(b|0)<(k|0)?b:k;l=k+l|0;if((k|0)==(b|0))f[h>>2]=(o|0)>30?31:o+1|0;if((l|0)==(a|0)){s=a;break}}if((d|0)==8)if((l|0)!=(a|0)){s=f[h>>2]|0;if((s+-4|0)>>>0<28)s=_a(e,f[36476+(s<<2)>>2]|0)|0;else s=0;s=s+l|0;if((s|0)>(a|0)){s=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,s|0,5,35648);k=_;_=0;if(k&1){k=ze()|0;je(s|0);$e(k|0)}else bi(s|0,824,96)}}else s=a;if((s|0)<=0)return s|0;l=0;do{k=r+(l*6|0)|0;n[k>>1]=n[i>>1]|0;n[k+2>>1]=n[i+2>>1]|0;n[k+4>>1]=n[i+4>>1]|0;l=l+1|0}while((l|0)!=(s|0));return s|0}function Ra(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;c=i+4568|0;b=xa(i,c)|0;o=xa(i,c)|0;c=xa(i,c)|0;l=i+128|0;a=s[t>>1]|0;h=f[i+136>>2]|0;d=h<<1|1;a=(re(re(d,b)|0,a-(s[r>>1]|0)>>31|1)|0)+a|0;b=0-h|0;if((a|0)>=(b|0)){l=f[l>>2]|0;if((l+h|0)<(a|0))a=a-(re(f[i+132>>2]|0,d)|0)|0}else{a=(re(f[i+132>>2]|0,d)|0)+a|0;l=f[l>>2]|0}if((a&l|0)!=(a|0))a=l&~(a>>31);u=a&65535;a=s[t+2>>1]|0;a=(re(re(d,o)|0,a-(s[r+2>>1]|0)>>31|1)|0)+a|0;if((a|0)>=(b|0)){if((l+h|0)<(a|0))a=a-(re(f[i+132>>2]|0,d)|0)|0}else a=(re(f[i+132>>2]|0,d)|0)+a|0;if((a&l|0)!=(a|0))a=l&~(a>>31);o=a&65535;a=s[t+4>>1]|0;a=(re(re(d,c)|0,a-(s[r+4>>1]|0)>>31|1)|0)+a|0;if((a|0)>=(b|0)){if((l+h|0)<(a|0))a=a-(re(f[i+132>>2]|0,d)|0)|0}else a=(re(f[i+132>>2]|0,d)|0)+a|0;if((a&l|0)==(a|0)){i=a;i=i&65535;n[e>>1]=u;b=e+2|0;n[b>>1]=o;e=e+4|0;n[e>>1]=i;return}i=l&~(a>>31);i=i&65535;n[e>>1]=u;b=e+2|0;n[b>>1]=o;e=e+4|0;n[e>>1]=i;return}function La(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,m=0,v=0;v=i>>31;c=(v^i)-v|0;k=e+188+(c*12|0)+10|0;r=n[k>>1]|0;b=e+188+(c*12|0)|0;s=f[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){i=5;while(1)if((r<<i|0)<(s|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;d=e+188+(c*12|0)+8|0;r=(n[d>>1]^v)-v+a|0;m=e+128|0;s=f[m>>2]|0;if((r&s|0)==(r|0))h=r;else h=s&~(r>>31);r=e+112|0;if((f[r>>2]|0)<8)jt(e);s=e+108|0;a=f[s>>2]|0;l=a>>>24;o=f[2832+(i<<11)+(l<<3)+4>>2]|0;if(!o){u=f[e+148>>2]|0;s=f[e+140>>2]|0;r=wa(e)|0;if((r|0)<(u+-1-s|0)){if(i)r=(_a(e,i)|0)+(r<<i)|0}else r=(_a(e,s)|0)+1|0;r=r<<31>>31^r>>1;if((((r|0)>-1?r:0-r|0)|0)>65535){r=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,r|0,5,35648);e=_;_=0;if(e&1){e=ze()|0;je(r|0);$e(e|0)}else bi(r|0,824,96)}}else{f[r>>2]=(f[r>>2]|0)-o;f[s>>2]=a<<o;r=f[2832+(i<<11)+(l<<3)>>2]|0}u=e+136|0;a=f[u>>2]|0;if(!i){if(!a)s=(f[e+188+(c*12|0)+4>>2]<<1)+-1+(n[k>>1]|0)>>31;else s=0;o=s^r}else o=r;i=f[e+152>>2]|0;s=(f[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;l=e+188+(c*12|0)+4|0;r=(f[l>>2]|0)+(re(a<<1|1,o)|0)|0;a=n[k>>1]|0;if((a|0)==(i|0)){s=s>>1;r=r>>1;a=i>>1}f[b>>2]=s;i=a+1|0;n[k>>1]=i;s=i+r|0;if((s|0)>=1){if((r|0)>0){r=r-i|0;k=n[d>>1]|0;n[d>>1]=(k<<16>>16<127&1)+(k&65535);r=(r|0)>0?0:r}}else{r=n[d>>1]|0;n[d>>1]=(r&65535)-(r<<16>>16>-128&1);r=(s|0)>(~a|0)?s:0-a|0}f[l>>2]=r;i=f[u>>2]|0;a=i<<1|1;s=(re(a,(o^v)-v|0)|0)+h|0;if((s|0)>=(0-i|0)){r=f[m>>2]|0;if((r+i|0)<(s|0))s=s-(re(f[e+132>>2]|0,a)|0)|0}else{s=(re(f[e+132>>2]|0,a)|0)+s|0;r=f[m>>2]|0}if((s&r|0)==(s|0)){e=s;e=e&65535;return e|0}e=r&~(s>>31);e=e&65535;return e|0}function xa(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0;h=i+9|0;r=a[h>>0]|0;l=i+4|0;s=(re(r>>>1,f[l>>2]|0)|0)+(f[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;o=f[e+148>>2]|0;u=f[36476+(f[e+4592>>2]<<2)>>2]|0;r=f[e+140>>2]|0;s=wa(e)|0;do{if((s|0)<(o+-2-u-r|0))if(!n){n=f[l>>2]|0;e=n+s|0;r=e&1;e=(r+e|0)/2|0;c=8;break}else{u=(_a(e,n)|0)+(s<<n)|0;n=f[l>>2]|0;s=u+n|0;o=s&1;r=o;l=1;s=(o+s|0)/2|0;break}else{s=(_a(e,r)|0)+1|0;o=f[l>>2]|0;e=s+o|0;r=e&1;e=(r+e|0)/2|0;if(!n){n=o;c=8}else{u=s;l=1;s=e;n=o}}}while(0);if((c|0)==8){u=s;l=a[i+10>>0]<<1>>>0>=(a[h>>0]|0)>>>0;s=e}s=(r|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;t[c>>0]=(a[c>>0]|0)+1}r=(u+1-n>>1)+(f[i>>2]|0)|0;f[i>>2]=r;n=t[h>>0]|0;if(n<<24>>24!=(t[i+8>>0]|0)){i=n;i=i&255;i=i+1|0;i=i&255;t[h>>0]=i;return s|0}f[i>>2]=r>>1;c=(n&255)>>>1;t[h>>0]=c;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;i=c;i=i&255;i=i+1|0;i=i&255;t[h>>0]=i;return s|0}function Pa(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0;k=c;c=c+32|0;n=k;b=e+136|0;e:do{if(!(f[b>>2]|0)){r=f[e+128>>2]|0;i=e+144|0;if((((r|0)==((1<<f[i>>2])+-1|0)?(op(n,r,0),(f[n+4>>2]|0)==(f[e+176>>2]|0)):0)?(f[n+8>>2]|0)==(f[e+180>>2]|0):0)?(f[n+12>>2]|0)==(f[e+184>>2]|0):0)switch(f[i>>2]|0){case 8:{b=f[8900]|0;f[e+4604>>2]=b+(((f[8901]|0)-b|0)>>>1);c=k;return}case 10:{b=f[8903]|0;f[e+4604>>2]=b+(((f[8904]|0)-b|0)>>>1);c=k;return}case 12:{b=f[8906]|0;f[e+4604>>2]=b+(((f[8907]|0)-b|0)>>>1);c=k;return}case 16:{b=f[8909]|0;f[e+4604>>2]=b+(((f[8910]|0)-b|0)>>>1);c=k;return}default:break e}}else i=e+144|0}while(0);d=1<<f[i>>2];r=e+4608|0;n=d<<1;a=e+4612|0;s=f[a>>2]|0;i=f[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)f[a>>2]=o}else{zt(r,n-l|0);i=f[r>>2]|0}h=e+4604|0;f[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=k;return}o=e+184|0;u=e+180|0;l=e+176|0;s=i;do{i=f[o>>2]|0;if((s|0)>(0-i|0)){r=f[u>>2]|0;if((s|0)>(0-r|0)){n=f[l>>2]|0;if((s|0)>(0-n|0)){a=f[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;t[(f[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=k;return}function Oa(e){e=e|0;var i=0,r=0;f[e>>2]=35800;i=f[e+4608>>2]|0;if(i){r=e+4612|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}e=e+88|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function Ba(e){e=e|0;var i=0,r=0;f[e>>2]=35800;i=f[e+4608>>2]|0;if(i){r=e+4612|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+88|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function Ia(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+28>>2]|0)!=0?(f[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(44,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+12>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(45,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(46,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(47,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+16>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=3;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=3;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function Da(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,f[e+128>>2]|0,f[e+136>>2]|0);u=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[h+8>>2]|0:l;s=f[i+12>>2]|0;s=(s|0)==0?f[h+12>>2]|0:s;r=f[i+16>>2]|0;a=f[h+16>>2]|0;f[e+176>>2]=(u|0)==0?f[h+4>>2]|0:u;f[e+180>>2]=l;f[e+184>>2]=s;qa(e);s=e+132|0;i=(f[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{f[e+188+(l*12|0)>>2]=i;f[e+188+(l*12|0)+4>>2]=0;n[e+188+(l*12|0)+8>>1]=0;n[e+188+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(f[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;f[e+4568>>2]=u;f[e+4572>>2]=0;t[e+4576>>0]=h;t[e+4577>>0]=1;t[e+4578>>0]=0;f[e+4580>>2]=u;f[e+4584>>2]=1;t[e+4588>>0]=h;t[e+4589>>0]=1;t[e+4590>>0]=0;f[e+4592>>2]=0;c=o;return}function Na(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=f[i>>2]|0;f[i>>2]=0;i=f[l>>2]|0;f[l>>2]=s;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=f[l>>2]|0;t[e+4620>>0]=a&1;i=e+156|0;f[i>>2]=f[r>>2];f[i+4>>2]=f[r+4>>2];f[i+8>>2]=f[r+8>>2];f[i+12>>2]=f[r+12>>2];Ct(e,n);Fa(e);i=f[e+116>>2]|0;e=f[e+112>>2]|0;while(1){a=i+-1|0;r=(t[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=f[l>>2]|0;if(!a)return;f[l>>2]=a+i;n=n+8|0;f[n>>2]=(f[n>>2]|0)-i;return}function Fa(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;S=c;c=c+32|0;C=S+12|0;A=S;y=e+172|0;M=(f[y>>2]|0)+4|0;if((f[e+28>>2]|0)==1)E=f[e+20>>2]|0;else E=1;i=re(E<<1,M)|0;f[C>>2]=0;R=C+4|0;f[R>>2]=0;f[C+8>>2]=0;e:do{if(i){if(!(i>>>0>1431655765?(_=0,ue(178,C|0),T=_,_=0,T&1):0))s=6;if((s|0)==6?(_=0,r=de(67,i*3|0)|0,T=_,_=0,!(T&1)):0){f[R>>2]=r;f[C>>2]=r;f[C+8>>2]=r+(i*3|0);while(1){t[r>>0]=0;t[r+1>>0]=0;t[r+2>>0]=0;r=(f[R>>2]|0)+3|0;f[R>>2]=r;i=i+-1|0;if(!i)break e}}n=ze()|0;i=f[C>>2]|0;if(!i)$e(n|0);r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Ip(i);$e(n|0)}}while(0);f[A>>2]=0;T=A+4|0;f[T>>2]=0;f[A+8>>2]=0;do{if(!E)s=19;else{if(!(E>>>0>1073741823?(_=0,ue(178,A|0),g=_,_=0,g&1):0))s=17;if((s|0)==17?(n=E<<2,_=0,a=de(67,n|0)|0,g=_,_=0,!(g&1)):0){f[A>>2]=a;s=a+(E<<2)|0;f[A+8>>2]=s;ym(a|0,0,n|0)|0;f[T>>2]=s;s=19;break}n=ze()|0;i=f[A>>2]|0;r=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}}while(0);if((s|0)==19){s=e+8|0;e:do{if((f[s>>2]|0)>0){l=e+4596|0;o=re(E,M)|0;u=o+1|0;h=e+4600|0;d=(E|0)>0;b=e+160|0;k=e+168|0;w=e+164|0;m=e+156|0;v=e+88|0;p=e+4592|0;g=0;i:while(1){n=f[C>>2]|0;r=n+3|0;f[l>>2]=r;n=n+(u*3|0)|0;f[h>>2]=n;if(!(g&1))i=n;else{f[l>>2]=n;f[h>>2]=r;i=r;r=n}if(d){a=f[A>>2]|0;n=0;do{f[p>>2]=f[a+(n<<2)>>2];i=f[y>>2]|0;a=r+(i*3|0)|0;r=r+((i+-1|0)*3|0)|0;t[a>>0]=t[r>>0]|0;t[a+1>>0]=t[r+1>>0]|0;t[a+2>>0]=t[r+2>>0]|0;r=f[l>>2]|0;a=(f[h>>2]|0)+-3|0;t[a>>0]=t[r>>0]|0;t[a+1>>0]=t[r+1>>0]|0;t[a+2>>0]=t[r+2>>0]|0;_=0;ce(78,e|0,0);a=_;_=0;if(a&1){s=30;break i}a=f[A>>2]|0;f[a+(n<<2)>>2]=f[p>>2];r=(f[l>>2]|0)+(M*3|0)|0;f[l>>2]=r;i=(f[h>>2]|0)+(M*3|0)|0;f[h>>2]=i;n=n+1|0}while((n|0)<(E|0))}a=f[b>>2]|0;if(((a|0)<=(g|0)?(g|0)<((f[k>>2]|0)+a|0):0)?(a=f[v>>2]|0,_=0,Re(f[(f[a>>2]|0)+8>>2]|0,a|0,i+(((f[m>>2]|0)-o|0)*3|0)|0,f[w>>2]|0,M|0),a=_,_=0,a&1):0){s=31;break}g=g+1|0;if((g|0)>=(f[s>>2]|0)){s=43;break e}}if((s|0)==30){n=ze()|0;break}else if((s|0)==31){n=ze()|0;break}}else s=43}while(0);do{if((s|0)==43){_=0;ue(183,e|0);e=_;_=0;if(e&1){n=ze()|0;break}i=f[A>>2]|0;r=i;if(i){n=f[T>>2]|0;if((n|0)!=(i|0))f[T>>2]=n+(~((n+-4-r|0)>>>2)<<2);Ip(i)}i=f[C>>2]|0;if(!i){c=S;return}r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Ip(i);c=S;return}}while(0);i=f[A>>2]|0;r=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}i=f[C>>2]|0;if(!i)$e(n|0);r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Ip(i);$e(n|0)}function Ua(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0;F=c;c=c+16|0;C=F+12|0;N=F+9|0;D=F+6|0;R=F+3|0;L=F;x=e+172|0;i=f[x>>2]|0;if((i|0)<=0){c=F;return}P=e+4600|0;O=e+4596|0;B=e+4604|0;I=e+4592|0;T=0;while(1){E=T+-1|0;n=f[P>>2]|0;s=n+(E*3|0)|0;U=f[O>>2]|0;r=T+1|0;l=a[U+(T*3|0)>>0]|0;S=f[B>>2]|0;o=a[U+(E*3|0)>>0]|0;u=l-o|0;h=a[s>>0]|0;d=o-h|0;b=((((t[S+((a[U+(r*3|0)>>0]|0)-l)>>0]|0)*9|0)+(t[S+u>>0]|0)|0)*9|0)+(t[S+d>>0]|0)|0;k=a[U+(T*3|0)+1>>0]|0;w=a[U+(E*3|0)+1>>0]|0;_=k-w|0;m=a[n+(E*3|0)+1>>0]|0;v=w-m|0;p=((((t[S+((a[U+(r*3|0)+1>>0]|0)-k)>>0]|0)*9|0)+(t[S+_>>0]|0)|0)*9|0)+(t[S+v>>0]|0)|0;g=a[U+(T*3|0)+2>>0]|0;y=a[U+(E*3|0)+2>>0]|0;M=g-y|0;E=a[n+(E*3|0)+2>>0]|0;A=y-E|0;S=((((t[S+((a[U+(r*3|0)+2>>0]|0)-g)>>0]|0)*9|0)+(t[S+M>>0]|0)|0)*9|0)+(t[S+A>>0]|0)|0;if(!(p|b|S)){t[D>>0]=t[s>>0]|0;t[D+1>>0]=t[s+1>>0]|0;t[D+2>>0]=t[s+2>>0]|0;t[C>>0]=t[s>>0]|0;t[C+1>>0]=t[s+1>>0]|0;t[C+2>>0]=t[s+2>>0]|0;i=ja(e,C,n+(T*3|0)|0,i-T|0)|0;r=i+T|0;if((r|0)!=(f[x>>2]|0)){U=(f[O>>2]|0)+(r*3|0)|0;t[L>>0]=t[U>>0]|0;t[L+1>>0]=t[U+1>>0]|0;t[L+2>>0]=t[U+2>>0]|0;U=f[P>>2]|0;t[N>>0]=t[D>>0]|0;t[N+1>>0]=t[D+1>>0]|0;t[N+2>>0]=t[D+2>>0]|0;t[C>>0]=t[L>>0]|0;t[C+1>>0]=t[L+1>>0]|0;t[C+2>>0]=t[L+2>>0]|0;Ha(R,e,N,C);U=U+(r*3|0)|0;t[U>>0]=t[R>>0]|0;t[U+1>>0]=t[R+1>>0]|0;t[U+2>>0]=t[R+2>>0]|0;U=f[I>>2]|0;f[I>>2]=(U|0)<1?0:U+-1|0;i=i+1|0}r=i+T|0}else{n=a[n+(T*3|0)>>0]|0;i=l-h>>31;if((i^d|0)>=0)if((i^u|0)<0)i=h;else i=h-o+l|0;else i=l;l=za(e,b,n,i,0)|0;n=a[(f[P>>2]|0)+(T*3|0)+1>>0]|0;i=k-m>>31;if((i^v|0)>=0)if((i^_|0)<0)i=m;else i=m-w+k|0;else i=k;n=za(e,p,n,i,0)|0;s=a[(f[P>>2]|0)+(T*3|0)+2>>0]|0;i=g-E>>31;if((i^A|0)>=0)if((i^M|0)<0)i=E;else i=E-y+g|0;else i=g;S=za(e,S,s,i,0)|0;U=(f[P>>2]|0)+(T*3|0)|0;t[U>>0]=l;t[U+1>>0]=n;t[U+2>>0]=S}i=f[x>>2]|0;if((r|0)>=(i|0))break;else T=r}c=F;return}function ja(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;o=e+112|0;u=e+108|0;c=e+4592|0;a=f[o>>2]|0;s=0;while(1){if((a|0)<1){jt(e);a=f[o>>2]|0}l=f[u>>2]|0;a=a+-1|0;f[o>>2]=a;f[u>>2]=l<<1;if((l|0)>=0){h=8;break}l=f[c>>2]|0;d=1<<f[36476+(l<<2)>>2];b=n-s|0;b=(d|0)<(b|0)?d:b;s=b+s|0;if((b|0)==(d|0))f[c>>2]=(l|0)>30?31:l+1|0;if((s|0)==(n|0)){a=n;break}}if((h|0)==8)if((s|0)!=(n|0)){a=f[c>>2]|0;if((a+-4|0)>>>0<28)a=_a(e,f[36476+(a<<2)>>2]|0)|0;else a=0;a=a+s|0;if((a|0)>(n|0)){a=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,a|0,5,35648);b=_;_=0;if(b&1){b=ze()|0;je(a|0);$e(b|0)}else bi(a|0,824,96)}}else a=n;if((a|0)<=0)return a|0;s=0;do{b=r+(s*3|0)|0;t[b>>0]=t[i>>0]|0;t[b+1>>0]=t[i+1>>0]|0;t[b+2>>0]=t[i+2>>0]|0;s=s+1|0}while((s|0)!=(a|0));return a|0}function Ha(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;c=i+4568|0;b=Ya(i,c)|0;o=Ya(i,c)|0;c=Ya(i,c)|0;l=i+128|0;s=a[n>>0]|0;h=f[i+136>>2]|0;d=h<<1|1;s=(re(re(d,b)|0,s-(a[r>>0]|0)>>31|1)|0)+s|0;b=0-h|0;if((s|0)>=(b|0)){l=f[l>>2]|0;if((l+h|0)<(s|0))s=s-(re(f[i+132>>2]|0,d)|0)|0}else{s=(re(f[i+132>>2]|0,d)|0)+s|0;l=f[l>>2]|0}if((s&l|0)!=(s|0))s=l&~(s>>31);u=s&255;s=a[n+1>>0]|0;s=(re(re(d,o)|0,s-(a[r+1>>0]|0)>>31|1)|0)+s|0;if((s|0)>=(b|0)){if((l+h|0)<(s|0))s=s-(re(f[i+132>>2]|0,d)|0)|0}else s=(re(f[i+132>>2]|0,d)|0)+s|0;if((s&l|0)!=(s|0))s=l&~(s>>31);o=s&255;s=a[n+2>>0]|0;s=(re(re(d,c)|0,s-(a[r+2>>0]|0)>>31|1)|0)+s|0;if((s|0)>=(b|0)){if((l+h|0)<(s|0))s=s-(re(f[i+132>>2]|0,d)|0)|0}else s=(re(f[i+132>>2]|0,d)|0)+s|0;if((s&l|0)==(s|0)){i=s;i=i&255;t[e>>0]=u;b=e+1|0;t[b>>0]=o;e=e+2|0;t[e>>0]=i;return}i=l&~(s>>31);i=i&255;t[e>>0]=u;b=e+1|0;t[b>>0]=o;e=e+2|0;t[e>>0]=i;return}function za(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,m=0,v=0;v=i>>31;c=(v^i)-v|0;k=e+188+(c*12|0)+10|0;r=n[k>>1]|0;b=e+188+(c*12|0)|0;s=f[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){i=5;while(1)if((r<<i|0)<(s|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;d=e+188+(c*12|0)+8|0;r=(n[d>>1]^v)-v+a|0;m=e+128|0;s=f[m>>2]|0;if((r&s|0)==(r|0))h=r;else h=s&~(r>>31);r=e+112|0;if((f[r>>2]|0)<8)jt(e);s=e+108|0;a=f[s>>2]|0;l=a>>>24;o=f[2832+(i<<11)+(l<<3)+4>>2]|0;if(!o){u=f[e+148>>2]|0;s=f[e+140>>2]|0;r=wa(e)|0;if((r|0)<(u+-1-s|0)){if(i)r=(_a(e,i)|0)+(r<<i)|0}else r=(_a(e,s)|0)+1|0;r=r<<31>>31^r>>1;if((((r|0)>-1?r:0-r|0)|0)>65535){r=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,r|0,5,35648);e=_;_=0;if(e&1){e=ze()|0;je(r|0);$e(e|0)}else bi(r|0,824,96)}}else{f[r>>2]=(f[r>>2]|0)-o;f[s>>2]=a<<o;r=f[2832+(i<<11)+(l<<3)>>2]|0}u=e+136|0;a=f[u>>2]|0;if(!i){if(!a)s=(f[e+188+(c*12|0)+4>>2]<<1)+-1+(n[k>>1]|0)>>31;else s=0;o=s^r}else o=r;i=f[e+152>>2]|0;s=(f[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;l=e+188+(c*12|0)+4|0;r=(f[l>>2]|0)+(re(a<<1|1,o)|0)|0;a=n[k>>1]|0;if((a|0)==(i|0)){s=s>>1;r=r>>1;a=i>>1}f[b>>2]=s;i=a+1|0;n[k>>1]=i;s=i+r|0;if((s|0)>=1){if((r|0)>0){r=r-i|0;k=n[d>>1]|0;n[d>>1]=(k<<16>>16<127&1)+(k&65535);r=(r|0)>0?0:r}}else{r=n[d>>1]|0;n[d>>1]=(r&65535)-(r<<16>>16>-128&1);r=(s|0)>(~a|0)?s:0-a|0}f[l>>2]=r;i=f[u>>2]|0;a=i<<1|1;s=(re(a,(o^v)-v|0)|0)+h|0;if((s|0)>=(0-i|0)){r=f[m>>2]|0;if((r+i|0)<(s|0))s=s-(re(f[e+132>>2]|0,a)|0)|0}else{s=(re(f[e+132>>2]|0,a)|0)+s|0;r=f[m>>2]|0}if((s&r|0)==(s|0)){e=s;e=e&255;return e|0}e=r&~(s>>31);e=e&255;return e|0}function Ya(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0;h=i+9|0;r=a[h>>0]|0;l=i+4|0;s=(re(r>>>1,f[l>>2]|0)|0)+(f[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;o=f[e+148>>2]|0;u=f[36476+(f[e+4592>>2]<<2)>>2]|0;r=f[e+140>>2]|0;s=wa(e)|0;do{if((s|0)<(o+-2-u-r|0))if(!n){n=f[l>>2]|0;e=n+s|0;r=e&1;e=(r+e|0)/2|0;c=8;break}else{u=(_a(e,n)|0)+(s<<n)|0;n=f[l>>2]|0;s=u+n|0;o=s&1;r=o;l=1;s=(o+s|0)/2|0;break}else{s=(_a(e,r)|0)+1|0;o=f[l>>2]|0;e=s+o|0;r=e&1;e=(r+e|0)/2|0;if(!n){n=o;c=8}else{u=s;l=1;s=e;n=o}}}while(0);if((c|0)==8){u=s;l=a[i+10>>0]<<1>>>0>=(a[h>>0]|0)>>>0;s=e}s=(r|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;t[c>>0]=(a[c>>0]|0)+1}r=(u+1-n>>1)+(f[i>>2]|0)|0;f[i>>2]=r;n=t[h>>0]|0;if(n<<24>>24!=(t[i+8>>0]|0)){i=n;i=i&255;i=i+1|0;i=i&255;t[h>>0]=i;return s|0}f[i>>2]=r>>1;c=(n&255)>>>1;t[h>>0]=c;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;i=c;i=i&255;i=i+1|0;i=i&255;t[h>>0]=i;return s|0}function qa(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0;k=c;c=c+32|0;n=k;b=e+136|0;e:do{if(!(f[b>>2]|0)){r=f[e+128>>2]|0;i=e+144|0;if((((r|0)==((1<<f[i>>2])+-1|0)?(op(n,r,0),(f[n+4>>2]|0)==(f[e+176>>2]|0)):0)?(f[n+8>>2]|0)==(f[e+180>>2]|0):0)?(f[n+12>>2]|0)==(f[e+184>>2]|0):0)switch(f[i>>2]|0){case 8:{b=f[8900]|0;f[e+4604>>2]=b+(((f[8901]|0)-b|0)>>>1);c=k;return}case 10:{b=f[8903]|0;f[e+4604>>2]=b+(((f[8904]|0)-b|0)>>>1);c=k;return}case 12:{b=f[8906]|0;f[e+4604>>2]=b+(((f[8907]|0)-b|0)>>>1);c=k;return}case 16:{b=f[8909]|0;f[e+4604>>2]=b+(((f[8910]|0)-b|0)>>>1);c=k;return}default:break e}}else i=e+144|0}while(0);d=1<<f[i>>2];r=e+4608|0;n=d<<1;a=e+4612|0;s=f[a>>2]|0;i=f[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)f[a>>2]=o}else{zt(r,n-l|0);i=f[r>>2]|0}h=e+4604|0;f[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=k;return}o=e+184|0;u=e+180|0;l=e+176|0;s=i;do{i=f[o>>2]|0;if((s|0)>(0-i|0)){r=f[u>>2]|0;if((s|0)>(0-r|0)){n=f[l>>2]|0;if((s|0)>(0-n|0)){a=f[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;t[(f[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=k;return}function Xa(e){e=e|0;var i=0,r=0;f[e>>2]=35772;i=f[e+4584>>2]|0;if(i){r=e+4588|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}e=e+88|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function Va(e){e=e|0;var i=0,r=0;f[e>>2]=35772;i=f[e+4584>>2]|0;if(i){r=e+4588|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+88|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function Ga(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+28>>2]|0)!=0?(f[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(37,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+12>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(38,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(39,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(40,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+16>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=2;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=2;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function Ka(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,65535,0);o=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[u+8>>2]|0:l;a=f[i+12>>2]|0;a=(a|0)==0?f[u+12>>2]|0:a;i=f[i+16>>2]|0;r=f[u+16>>2]|0;f[e+152>>2]=(o|0)==0?f[u+4>>2]|0:o;f[e+156>>2]=l;f[e+160>>2]=a;rs(e);a=0;do{f[e+164+(a*12|0)>>2]=1024;f[e+164+(a*12|0)+4>>2]=0;n[e+164+(a*12|0)+8>>1]=0;n[e+164+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;f[e+4544>>2]=1024;f[e+4548>>2]=0;t[e+4552>>0]=u;t[e+4553>>0]=1;t[e+4554>>0]=0;f[e+4556>>2]=1024;f[e+4560>>2]=1;t[e+4564>>0]=u;t[e+4565>>0]=1;t[e+4566>>0]=0;f[e+4568>>2]=0;c=s;return}function Wa(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=f[i>>2]|0;f[i>>2]=0;i=f[l>>2]|0;f[l>>2]=s;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=f[l>>2]|0;t[e+4596>>0]=a&1;i=e+132|0;f[i>>2]=f[r>>2];f[i+4>>2]=f[r+4>>2];f[i+8>>2]=f[r+8>>2];f[i+12>>2]=f[r+12>>2];Ct(e,n);Za(e);i=f[e+116>>2]|0;e=f[e+112>>2]|0;while(1){a=i+-1|0;r=(t[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=f[l>>2]|0;if(!a)return;f[l>>2]=a+i;n=n+8|0;f[n>>2]=(f[n>>2]|0)-i;return}function Za(e){e=e|0;var i=0,r=0,t=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;S=c;c=c+32|0;C=S+12|0;A=S;y=e+148|0;M=(f[y>>2]|0)+4|0;if((f[e+28>>2]|0)==1)E=f[e+20>>2]|0;else E=1;i=re(E<<1,M)|0;f[C>>2]=0;R=C+4|0;f[R>>2]=0;f[C+8>>2]=0;do{if(i){if(!((i|0)<0?(_=0,ue(178,C|0),T=_,_=0,T&1):0))l=6;if((l|0)==6?(r=i<<1,_=0,t=de(67,r|0)|0,T=_,_=0,!(T&1)):0){f[C>>2]=t;T=t+(i<<1)|0;f[C+8>>2]=T;ym(t|0,0,r|0)|0;f[R>>2]=T;break}t=ze()|0;i=f[C>>2]|0;if(!i)$e(t|0);r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);$e(t|0)}}while(0);f[A>>2]=0;T=A+4|0;f[T>>2]=0;f[A+8>>2]=0;do{if(!E)l=18;else{if(!(E>>>0>1073741823?(_=0,ue(178,A|0),g=_,_=0,g&1):0))l=16;if((l|0)==16?(a=E<<2,_=0,s=de(67,a|0)|0,g=_,_=0,!(g&1)):0){f[A>>2]=s;l=s+(E<<2)|0;f[A+8>>2]=l;ym(s|0,0,a|0)|0;f[T>>2]=l;l=18;break}t=ze()|0;i=f[A>>2]|0;r=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}}while(0);if((l|0)==18){s=e+8|0;e:do{if((f[s>>2]|0)>0){l=e+4572|0;o=re(E,M)|0;u=o+1|0;h=e+4576|0;d=(E|0)>0;b=e+136|0;k=e+144|0;w=e+140|0;m=e+132|0;v=e+88|0;p=e+4568|0;g=0;i:while(1){t=f[C>>2]|0;r=t+2|0;f[l>>2]=r;t=t+(u<<1)|0;f[h>>2]=t;if(!(g&1))i=t;else{f[l>>2]=t;f[h>>2]=r;i=r;r=t}if(d){a=f[A>>2]|0;t=0;do{f[p>>2]=f[a+(t<<2)>>2];a=f[y>>2]|0;n[r+(a<<1)>>1]=n[r+(a+-1<<1)>>1]|0;n[i+-2>>1]=n[r>>1]|0;_=0;ce(79,e|0,0);a=_;_=0;if(a&1){l=29;break i}a=f[A>>2]|0;f[a+(t<<2)>>2]=f[p>>2];r=(f[l>>2]|0)+(M<<1)|0;f[l>>2]=r;i=(f[h>>2]|0)+(M<<1)|0;f[h>>2]=i;t=t+1|0}while((t|0)<(E|0))}a=f[b>>2]|0;if(((a|0)<=(g|0)?(g|0)<((f[k>>2]|0)+a|0):0)?(a=f[v>>2]|0,_=0,Re(f[(f[a>>2]|0)+8>>2]|0,a|0,i+((f[m>>2]|0)-o<<1)|0,f[w>>2]|0,M|0),a=_,_=0,a&1):0){l=30;break}g=g+1|0;if((g|0)>=(f[s>>2]|0)){l=42;break e}}if((l|0)==29){t=ze()|0;break}else if((l|0)==30){t=ze()|0;break}}else l=42}while(0);do{if((l|0)==42){_=0;ue(183,e|0);e=_;_=0;if(e&1){t=ze()|0;break}i=f[A>>2]|0;r=i;if(i){t=f[T>>2]|0;if((t|0)!=(i|0))f[T>>2]=t+(~((t+-4-r|0)>>>2)<<2);Ip(i)}i=f[C>>2]|0;if(!i){c=S;return}r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);c=S;return}}while(0);i=f[A>>2]|0;r=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}i=f[C>>2]|0;if(!i)$e(t|0);r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);$e(t|0)}function Ja(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;k=e+4572|0;i=f[k>>2]|0;m=e+148|0;if((f[m>>2]|0)<=0)return;w=e+4576|0;_=e+4580|0;l=i;o=s[i+-2>>1]|0;i=s[i>>1]|0;b=0;while(1){d=f[w>>2]|0;h=s[d+(b+-1<<1)>>1]|0;a=b+1|0;r=s[l+(a<<1)>>1]|0;c=f[_>>2]|0;u=i-o|0;l=o-h|0;c=((((t[c+(r-i)>>0]|0)*9|0)+(t[c+u>>0]|0)|0)*9|0)+(t[c+l>>0]|0)|0;if(!c){a=($a(e,b,0)|0)+b|0;r=f[k>>2]|0;i=s[r+(a+-1<<1)>>1]|0;r=s[r+(a<<1)>>1]|0}else{o=i-h>>31;if((o^l|0)<0)l=i;else l=h+((o^u|0)<0?0:u)|0;d=Qa(e,c,s[d+(b<<1)>>1]|0,l,0)|0;n[(f[w>>2]|0)+(b<<1)>>1]=d}if((a|0)>=(f[m>>2]|0))break;l=f[k>>2]|0;o=i;i=r;b=a}return}function Qa(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,m=0;m=i>>31;h=(m^i)-m|0;k=e+164+(h*12|0)+10|0;r=n[k>>1]|0;b=e+164+(h*12|0)|0;s=f[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){l=5;while(1)if((r<<l|0)<(s|0))l=l+1|0;else break}else l=4;else l=3;else l=2;else l=1;else l=0;d=e+164+(h*12|0)+8|0;r=(n[d>>1]^m)-m+a|0;if((r&65535|0)!=(r|0))r=r>>31&65535^65535;s=e+112|0;if((f[s>>2]|0)<8)jt(e);a=e+108|0;o=f[a>>2]|0;u=o>>>24;c=f[2832+(l<<11)+(u<<3)+4>>2]|0;if(!c){s=wa(e)|0;if((s|0)<47){if(l)s=(_a(e,l)|0)+(s<<l)|0}else s=(_a(e,16)|0)+1|0;s=s<<31>>31^s>>1;if((((s|0)>-1?s:0-s|0)|0)>65535){r=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,r|0,5,35648);i=_;_=0;if(i&1){i=ze()|0;je(r|0);$e(i|0)}else bi(r|0,824,96)}}else{f[s>>2]=(f[s>>2]|0)-c;f[a>>2]=o<<c;s=f[2832+(l<<11)+(u<<3)>>2]|0}c=e+164+(h*12|0)+4|0;a=f[c>>2]|0;if(!l){e=n[k>>1]|0;l=e;s=(a<<1)+-1+(e<<16>>16)>>31^s}else l=n[k>>1]|0;o=l<<16>>16==64;e=o&1;u=a+s>>e;o=o?32:l<<16>>16;f[b>>2]=((s|0)>-1?s:0-s|0)+(f[b>>2]|0)>>e;a=o+1|0;n[k>>1]=a;l=a+u|0;if((l|0)<1){k=n[d>>1]|0;n[d>>1]=(k&65535)-(k<<16>>16>-128&1);k=(l|0)>(~o|0)?l:0-o|0;f[c>>2]=k;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&65535;return i|0}if((u|0)<=0){k=u;f[c>>2]=k;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&65535;return i|0}k=u-a|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);k=(k|0)>0?0:k;f[c>>2]=k;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&65535;return i|0}function $a(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,l=0,o=0;l=e+4576|0;a=f[l>>2]|0;r=n[a+(i+-1<<1)>>1]|0;o=e+148|0;a=es(e,r,a+(i<<1)|0,(f[o>>2]|0)-i|0)|0;t=a+i|0;if((t|0)==(f[o>>2]|0)){o=a;return o|0}r=r&65535;i=s[(f[e+4572>>2]|0)+(t<<1)>>1]|0;o=r-i|0;if((((o|0)>-1?o:0-o|0)|0)<1)r=(is(e,e+4556|0)|0)+r|0;else r=(re(is(e,e+4544|0)|0,i-r>>31|1)|0)+i|0;n[(f[l>>2]|0)+(t<<1)>>1]=r;o=e+4568|0;e=f[o>>2]|0;f[o>>2]=(e|0)<1?0:e+-1|0;o=a+1|0;return o|0}function es(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0;u=e+112|0;c=e+108|0;h=e+4568|0;s=f[u>>2]|0;l=0;while(1){if((s|0)<1){jt(e);s=f[u>>2]|0}o=f[c>>2]|0;s=s+-1|0;f[u>>2]=s;f[c>>2]=o<<1;if((o|0)>=0){d=8;break}o=f[h>>2]|0;b=1<<f[36476+(o<<2)>>2];k=a-l|0;k=(b|0)<(k|0)?b:k;l=k+l|0;if((k|0)==(b|0))f[h>>2]=(o|0)>30?31:o+1|0;if((l|0)==(a|0)){s=a;break}}if((d|0)==8)if((l|0)!=(a|0)){s=f[h>>2]|0;if((s+-4|0)>>>0<28)s=_a(e,f[36476+(s<<2)>>2]|0)|0;else s=0;s=s+l|0;if((s|0)>(a|0)){s=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,s|0,5,35648);k=_;_=0;if(k&1){k=ze()|0;je(s|0);$e(k|0)}else bi(s|0,824,96)}}else s=a;if((s|0)>0)l=0;else return s|0;do{n[r+(l<<1)>>1]=i;l=l+1|0}while((l|0)!=(s|0));return s|0}function is(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0;u=i+9|0;r=a[u>>0]|0;l=i+4|0;s=(re(r>>>1,f[l>>2]|0)|0)+(f[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;s=f[36476+(f[e+4568>>2]<<2)>>2]|0;r=wa(e)|0;do{if((r|0)<(46-s|0))if(!n){e=f[l>>2]|0;s=e+r|0;n=s&1;s=(n+s|0)/2|0;o=8;break}else{r=(_a(e,n)|0)+(r<<n)|0;e=f[l>>2]|0;s=r+e|0;c=s&1;n=c;l=1;s=(c+s|0)/2|0;break}else{r=(_a(e,16)|0)+1|0;e=f[l>>2]|0;s=r+e|0;l=s&1;s=(l+s|0)/2|0;if(!n){n=l;o=8}else{n=l;l=1}}}while(0);if((o|0)==8)l=a[i+10>>0]<<1>>>0>=(a[u>>0]|0)>>>0;s=(n|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;t[c>>0]=(a[c>>0]|0)+1}r=(r+1-e>>1)+(f[i>>2]|0)|0;f[i>>2]=r;n=t[u>>0]|0;if(n<<24>>24!=(t[i+8>>0]|0)){c=n;c=c&255;c=c+1|0;c=c&255;t[u>>0]=c;return s|0}f[i>>2]=r>>1;c=(n&255)>>>1;t[u>>0]=c;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;c=c&255;c=c+1|0;c=c&255;t[u>>0]=c;return s|0}function rs(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,65535,0);u=e+152|0;if(((f[o+4>>2]|0)==(f[u>>2]|0)?(f[o+8>>2]|0)==(f[e+156>>2]|0):0)?(f[o+12>>2]|0)==(f[e+160>>2]|0):0){u=f[8909]|0;f[e+4580>>2]=u+(((f[8910]|0)-u|0)>>>1);c=h;return}r=e+4584|0;n=e+4588|0;a=f[n>>2]|0;i=f[r>>2]|0;s=a-i|0;if(s>>>0>=131072){if(s>>>0>131072?(l=i+131072|0,(a|0)!=(l|0)):0)f[n>>2]=l}else{zt(r,131072-s|0);i=f[r>>2]|0}o=e+4580|0;f[o>>2]=i+65536;l=e+160|0;a=e+156|0;s=-65536;while(1){i=f[l>>2]|0;if((s|0)>(0-i|0)){r=f[a>>2]|0;if((s|0)>(0-r|0)){n=f[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){t[(f[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;t[(f[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==65536)break}c=h;return}function ts(e){e=e|0;var i=0,r=0;f[e>>2]=35744;i=f[e+4584>>2]|0;if(i){r=e+4588|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}e=e+88|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function ns(e){e=e|0;var i=0,r=0;f[e>>2]=35744;i=f[e+4584>>2]|0;if(i){r=e+4588|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+88|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function fs(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+28>>2]|0)!=0?(f[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(37,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+12>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(38,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(39,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(40,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+16>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=2;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=2;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function as(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,4095,0);o=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[u+8>>2]|0:l;a=f[i+12>>2]|0;a=(a|0)==0?f[u+12>>2]|0:a;i=f[i+16>>2]|0;r=f[u+16>>2]|0;f[e+152>>2]=(o|0)==0?f[u+4>>2]|0:o;f[e+156>>2]=l;f[e+160>>2]=a;bs(e);a=0;do{f[e+164+(a*12|0)>>2]=64;f[e+164+(a*12|0)+4>>2]=0;n[e+164+(a*12|0)+8>>1]=0;n[e+164+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;f[e+4544>>2]=64;f[e+4548>>2]=0;t[e+4552>>0]=u;t[e+4553>>0]=1;t[e+4554>>0]=0;f[e+4556>>2]=64;f[e+4560>>2]=1;t[e+4564>>0]=u;t[e+4565>>0]=1;t[e+4566>>0]=0;f[e+4568>>2]=0;c=s;return}function ss(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=f[i>>2]|0;f[i>>2]=0;i=f[l>>2]|0;f[l>>2]=s;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=f[l>>2]|0;t[e+4596>>0]=a&1;i=e+132|0;f[i>>2]=f[r>>2];f[i+4>>2]=f[r+4>>2];f[i+8>>2]=f[r+8>>2];f[i+12>>2]=f[r+12>>2];Ct(e,n);ls(e);i=f[e+116>>2]|0;e=f[e+112>>2]|0;while(1){a=i+-1|0;r=(t[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=f[l>>2]|0;if(!a)return;f[l>>2]=a+i;n=n+8|0;f[n>>2]=(f[n>>2]|0)-i;return}function ls(e){e=e|0;var i=0,r=0,t=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;S=c;c=c+32|0;C=S+12|0;A=S;y=e+148|0;M=(f[y>>2]|0)+4|0;if((f[e+28>>2]|0)==1)E=f[e+20>>2]|0;else E=1;i=re(E<<1,M)|0;f[C>>2]=0;R=C+4|0;f[R>>2]=0;f[C+8>>2]=0;do{if(i){if(!((i|0)<0?(_=0,ue(178,C|0),T=_,_=0,T&1):0))l=6;if((l|0)==6?(r=i<<1,_=0,t=de(67,r|0)|0,T=_,_=0,!(T&1)):0){f[C>>2]=t;T=t+(i<<1)|0;f[C+8>>2]=T;ym(t|0,0,r|0)|0;f[R>>2]=T;break}t=ze()|0;i=f[C>>2]|0;if(!i)$e(t|0);r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);$e(t|0)}}while(0);f[A>>2]=0;T=A+4|0;f[T>>2]=0;f[A+8>>2]=0;do{if(!E)l=18;else{if(!(E>>>0>1073741823?(_=0,ue(178,A|0),g=_,_=0,g&1):0))l=16;if((l|0)==16?(a=E<<2,_=0,s=de(67,a|0)|0,g=_,_=0,!(g&1)):0){f[A>>2]=s;l=s+(E<<2)|0;f[A+8>>2]=l;ym(s|0,0,a|0)|0;f[T>>2]=l;l=18;break}t=ze()|0;i=f[A>>2]|0;r=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}}while(0);if((l|0)==18){s=e+8|0;e:do{if((f[s>>2]|0)>0){l=e+4572|0;o=re(E,M)|0;u=o+1|0;h=e+4576|0;d=(E|0)>0;b=e+136|0;k=e+144|0;w=e+140|0;m=e+132|0;v=e+88|0;p=e+4568|0;g=0;i:while(1){t=f[C>>2]|0;r=t+2|0;f[l>>2]=r;t=t+(u<<1)|0;f[h>>2]=t;if(!(g&1))i=t;else{f[l>>2]=t;f[h>>2]=r;i=r;r=t}if(d){a=f[A>>2]|0;t=0;do{f[p>>2]=f[a+(t<<2)>>2];a=f[y>>2]|0;n[r+(a<<1)>>1]=n[r+(a+-1<<1)>>1]|0;n[i+-2>>1]=n[r>>1]|0;_=0;ce(80,e|0,0);a=_;_=0;if(a&1){l=29;break i}a=f[A>>2]|0;f[a+(t<<2)>>2]=f[p>>2];r=(f[l>>2]|0)+(M<<1)|0;f[l>>2]=r;i=(f[h>>2]|0)+(M<<1)|0;f[h>>2]=i;t=t+1|0}while((t|0)<(E|0))}a=f[b>>2]|0;if(((a|0)<=(g|0)?(g|0)<((f[k>>2]|0)+a|0):0)?(a=f[v>>2]|0,_=0,Re(f[(f[a>>2]|0)+8>>2]|0,a|0,i+((f[m>>2]|0)-o<<1)|0,f[w>>2]|0,M|0),a=_,_=0,a&1):0){l=30;break}g=g+1|0;if((g|0)>=(f[s>>2]|0)){l=42;break e}}if((l|0)==29){t=ze()|0;break}else if((l|0)==30){t=ze()|0;break}}else l=42}while(0);do{if((l|0)==42){_=0;ue(183,e|0);e=_;_=0;if(e&1){t=ze()|0;break}i=f[A>>2]|0;r=i;if(i){t=f[T>>2]|0;if((t|0)!=(i|0))f[T>>2]=t+(~((t+-4-r|0)>>>2)<<2);Ip(i)}i=f[C>>2]|0;if(!i){c=S;return}r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);c=S;return}}while(0);i=f[A>>2]|0;r=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}i=f[C>>2]|0;if(!i)$e(t|0);r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~((r+-2-i|0)>>>1)<<1);Ip(i);$e(t|0)}function os(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;k=e+4572|0;i=f[k>>2]|0;m=e+148|0;if((f[m>>2]|0)<=0)return;w=e+4576|0;_=e+4580|0;l=i;o=s[i+-2>>1]|0;i=s[i>>1]|0;b=0;while(1){d=f[w>>2]|0;h=s[d+(b+-1<<1)>>1]|0;a=b+1|0;r=s[l+(a<<1)>>1]|0;c=f[_>>2]|0;u=i-o|0;l=o-h|0;c=((((t[c+(r-i)>>0]|0)*9|0)+(t[c+u>>0]|0)|0)*9|0)+(t[c+l>>0]|0)|0;if(!c){a=(cs(e,b,0)|0)+b|0;r=f[k>>2]|0;i=s[r+(a+-1<<1)>>1]|0;r=s[r+(a<<1)>>1]|0}else{o=i-h>>31;if((o^l|0)<0)l=i;else l=h+((o^u|0)<0?0:u)|0;d=us(e,c,s[d+(b<<1)>>1]|0,l,0)|0;n[(f[w>>2]|0)+(b<<1)>>1]=d}if((a|0)>=(f[m>>2]|0))break;l=f[k>>2]|0;o=i;i=r;b=a}return}function us(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,m=0;m=i>>31;h=(m^i)-m|0;k=e+164+(h*12|0)+10|0;r=n[k>>1]|0;b=e+164+(h*12|0)|0;s=f[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){l=5;while(1)if((r<<l|0)<(s|0))l=l+1|0;else break}else l=4;else l=3;else l=2;else l=1;else l=0;d=e+164+(h*12|0)+8|0;r=(n[d>>1]^m)-m+a|0;if((r&4095|0)!=(r|0))r=r>>31&4095^4095;s=e+112|0;if((f[s>>2]|0)<8)jt(e);a=e+108|0;o=f[a>>2]|0;u=o>>>24;c=f[2832+(l<<11)+(u<<3)+4>>2]|0;if(!c){s=wa(e)|0;if((s|0)<35){if(l)s=(_a(e,l)|0)+(s<<l)|0}else s=(_a(e,12)|0)+1|0;s=s<<31>>31^s>>1;if((((s|0)>-1?s:0-s|0)|0)>65535){r=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,r|0,5,35648);i=_;_=0;if(i&1){i=ze()|0;je(r|0);$e(i|0)}else bi(r|0,824,96)}}else{f[s>>2]=(f[s>>2]|0)-c;f[a>>2]=o<<c;s=f[2832+(l<<11)+(u<<3)>>2]|0}c=e+164+(h*12|0)+4|0;a=f[c>>2]|0;if(!l){e=n[k>>1]|0;l=e;s=(a<<1)+-1+(e<<16>>16)>>31^s}else l=n[k>>1]|0;o=l<<16>>16==64;e=o&1;u=a+s>>e;o=o?32:l<<16>>16;f[b>>2]=((s|0)>-1?s:0-s|0)+(f[b>>2]|0)>>e;a=o+1|0;n[k>>1]=a;l=a+u|0;if((l|0)<1){k=n[d>>1]|0;n[d>>1]=(k&65535)-(k<<16>>16>-128&1);k=(l|0)>(~o|0)?l:0-o|0;f[c>>2]=k;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&4095;i=i&65535;return i|0}if((u|0)<=0){k=u;f[c>>2]=k;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&4095;i=i&65535;return i|0}k=u-a|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);k=(k|0)>0?0:k;f[c>>2]=k;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&4095;i=i&65535;return i|0}function cs(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,l=0,o=0;l=e+4576|0;a=f[l>>2]|0;r=n[a+(i+-1<<1)>>1]|0;o=e+148|0;a=hs(e,r,a+(i<<1)|0,(f[o>>2]|0)-i|0)|0;t=a+i|0;if((t|0)==(f[o>>2]|0)){o=a;return o|0}r=r&65535;i=s[(f[e+4572>>2]|0)+(t<<1)>>1]|0;o=r-i|0;if((((o|0)>-1?o:0-o|0)|0)<1)r=(ds(e,e+4556|0)|0)+r|0;else r=(re(ds(e,e+4544|0)|0,i-r>>31|1)|0)+i|0;n[(f[l>>2]|0)+(t<<1)>>1]=r&4095;o=e+4568|0;e=f[o>>2]|0;f[o>>2]=(e|0)<1?0:e+-1|0;o=a+1|0;return o|0}function hs(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0;u=e+112|0;c=e+108|0;h=e+4568|0;s=f[u>>2]|0;l=0;while(1){if((s|0)<1){jt(e);s=f[u>>2]|0}o=f[c>>2]|0;s=s+-1|0;f[u>>2]=s;f[c>>2]=o<<1;if((o|0)>=0){d=8;break}o=f[h>>2]|0;b=1<<f[36476+(o<<2)>>2];k=a-l|0;k=(b|0)<(k|0)?b:k;l=k+l|0;if((k|0)==(b|0))f[h>>2]=(o|0)>30?31:o+1|0;if((l|0)==(a|0)){s=a;break}}if((d|0)==8)if((l|0)!=(a|0)){s=f[h>>2]|0;if((s+-4|0)>>>0<28)s=_a(e,f[36476+(s<<2)>>2]|0)|0;else s=0;s=s+l|0;if((s|0)>(a|0)){s=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,s|0,5,35648);k=_;_=0;if(k&1){k=ze()|0;je(s|0);$e(k|0)}else bi(s|0,824,96)}}else s=a;if((s|0)>0)l=0;else return s|0;do{n[r+(l<<1)>>1]=i;l=l+1|0}while((l|0)!=(s|0));return s|0}function ds(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0;u=i+9|0;r=a[u>>0]|0;l=i+4|0;s=(re(r>>>1,f[l>>2]|0)|0)+(f[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;s=f[36476+(f[e+4568>>2]<<2)>>2]|0;r=wa(e)|0;do{if((r|0)<(34-s|0))if(!n){e=f[l>>2]|0;s=e+r|0;n=s&1;s=(n+s|0)/2|0;o=8;break}else{r=(_a(e,n)|0)+(r<<n)|0;e=f[l>>2]|0;s=r+e|0;c=s&1;n=c;l=1;s=(c+s|0)/2|0;break}else{r=(_a(e,12)|0)+1|0;e=f[l>>2]|0;s=r+e|0;l=s&1;s=(l+s|0)/2|0;if(!n){n=l;o=8}else{n=l;l=1}}}while(0);if((o|0)==8)l=a[i+10>>0]<<1>>>0>=(a[u>>0]|0)>>>0;s=(n|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;t[c>>0]=(a[c>>0]|0)+1}r=(r+1-e>>1)+(f[i>>2]|0)|0;f[i>>2]=r;n=t[u>>0]|0;if(n<<24>>24!=(t[i+8>>0]|0)){c=n;c=c&255;c=c+1|0;c=c&255;t[u>>0]=c;return s|0}f[i>>2]=r>>1;c=(n&255)>>>1;t[u>>0]=c;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;c=c&255;c=c+1|0;c=c&255;t[u>>0]=c;return s|0}function bs(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,4095,0);u=e+152|0;if(((f[o+4>>2]|0)==(f[u>>2]|0)?(f[o+8>>2]|0)==(f[e+156>>2]|0):0)?(f[o+12>>2]|0)==(f[e+160>>2]|0):0){u=f[8906]|0;f[e+4580>>2]=u+(((f[8907]|0)-u|0)>>>1);c=h;return}r=e+4584|0;n=e+4588|0;a=f[n>>2]|0;i=f[r>>2]|0;s=a-i|0;if(s>>>0>=8192){if(s>>>0>8192?(l=i+8192|0,(a|0)!=(l|0)):0)f[n>>2]=l}else{zt(r,8192-s|0);i=f[r>>2]|0}o=e+4580|0;f[o>>2]=i+4096;l=e+160|0;a=e+156|0;s=-4096;while(1){i=f[l>>2]|0;if((s|0)>(0-i|0)){r=f[a>>2]|0;if((s|0)>(0-r|0)){n=f[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){t[(f[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;t[(f[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==4096)break}c=h;return}function ks(e){e=e|0;var i=0,r=0;f[e>>2]=35716;i=f[e+4584>>2]|0;if(i){r=e+4588|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}e=e+88|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function ws(e){e=e|0;var i=0,r=0;f[e>>2]=35716;i=f[e+4584>>2]|0;if(i){r=e+4588|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+88|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function _s(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+28>>2]|0)!=0?(f[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(44,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+12>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(45,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(46,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(47,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+16>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=1;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=1;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function ms(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,255,0);o=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[u+8>>2]|0:l;a=f[i+12>>2]|0;a=(a|0)==0?f[u+12>>2]|0:a;i=f[i+16>>2]|0;r=f[u+16>>2]|0;f[e+152>>2]=(o|0)==0?f[u+4>>2]|0:o;f[e+156>>2]=l;f[e+160>>2]=a;Ss(e);a=0;do{f[e+164+(a*12|0)>>2]=4;f[e+164+(a*12|0)+4>>2]=0;n[e+164+(a*12|0)+8>>1]=0;n[e+164+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;f[e+4544>>2]=4;f[e+4548>>2]=0;t[e+4552>>0]=u;t[e+4553>>0]=1;t[e+4554>>0]=0;f[e+4556>>2]=4;f[e+4560>>2]=1;t[e+4564>>0]=u;t[e+4565>>0]=1;t[e+4566>>0]=0;f[e+4568>>2]=0;c=s;return}function vs(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=f[i>>2]|0;f[i>>2]=0;i=f[l>>2]|0;f[l>>2]=s;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=f[l>>2]|0;t[e+4596>>0]=a&1;i=e+132|0;f[i>>2]=f[r>>2];f[i+4>>2]=f[r+4>>2];f[i+8>>2]=f[r+8>>2];f[i+12>>2]=f[r+12>>2];Ct(e,n);ps(e);i=f[e+116>>2]|0;e=f[e+112>>2]|0;while(1){a=i+-1|0;r=(t[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=f[l>>2]|0;if(!a)return;f[l>>2]=a+i;n=n+8|0;f[n>>2]=(f[n>>2]|0)-i;return}function ps(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;S=c;c=c+32|0;C=S+12|0;A=S;y=e+148|0;M=(f[y>>2]|0)+4|0;if((f[e+28>>2]|0)==1)E=f[e+20>>2]|0;else E=1;i=re(E<<1,M)|0;f[C>>2]=0;R=C+4|0;f[R>>2]=0;f[C+8>>2]=0;e:do{if(i){if(!((i|0)<0?(_=0,ue(178,C|0),T=_,_=0,T&1):0))s=6;if((s|0)==6?(_=0,r=de(67,i|0)|0,T=_,_=0,!(T&1)):0){f[R>>2]=r;f[C>>2]=r;f[C+8>>2]=r+i;while(1){t[r>>0]=0;r=(f[R>>2]|0)+1|0;f[R>>2]=r;i=i+-1|0;if(!i)break e}}r=ze()|0;i=f[C>>2]|0;if(!i)$e(r|0);if((f[R>>2]|0)!=(i|0))f[R>>2]=i;Ip(i);$e(r|0)}}while(0);f[A>>2]=0;T=A+4|0;f[T>>2]=0;f[A+8>>2]=0;do{if(!E)s=19;else{if(!(E>>>0>1073741823?(_=0,ue(178,A|0),g=_,_=0,g&1):0))s=17;if((s|0)==17?(n=E<<2,_=0,a=de(67,n|0)|0,g=_,_=0,!(g&1)):0){f[A>>2]=a;s=a+(E<<2)|0;f[A+8>>2]=s;ym(a|0,0,n|0)|0;f[T>>2]=s;s=19;break}r=ze()|0;i=f[A>>2]|0;n=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-n|0)>>>2)<<2);Ip(i)}}}while(0);if((s|0)==19){s=e+8|0;e:do{if((f[s>>2]|0)>0){l=e+4572|0;o=re(E,M)|0;u=o+1|0;h=e+4576|0;d=(E|0)>0;b=e+136|0;k=e+144|0;w=e+140|0;m=e+132|0;v=e+88|0;p=e+4568|0;g=0;i:while(1){n=f[C>>2]|0;r=n+1|0;f[l>>2]=r;n=n+u|0;f[h>>2]=n;if(!(g&1))i=n;else{f[l>>2]=n;f[h>>2]=r;i=r;r=n}if(d){a=f[A>>2]|0;n=0;do{f[p>>2]=f[a+(n<<2)>>2];a=f[y>>2]|0;t[r+a>>0]=t[r+(a+-1)>>0]|0;t[(f[h>>2]|0)+-1>>0]=t[f[l>>2]>>0]|0;_=0;ce(81,e|0,0);a=_;_=0;if(a&1){s=30;break i}a=f[A>>2]|0;f[a+(n<<2)>>2]=f[p>>2];r=(f[l>>2]|0)+M|0;f[l>>2]=r;i=(f[h>>2]|0)+M|0;f[h>>2]=i;n=n+1|0}while((n|0)<(E|0))}a=f[b>>2]|0;if(((a|0)<=(g|0)?(g|0)<((f[k>>2]|0)+a|0):0)?(a=f[v>>2]|0,_=0,Re(f[(f[a>>2]|0)+8>>2]|0,a|0,i+((f[m>>2]|0)-o)|0,f[w>>2]|0,M|0),a=_,_=0,a&1):0){s=31;break}g=g+1|0;if((g|0)>=(f[s>>2]|0)){s=43;break e}}if((s|0)==30){r=ze()|0;break}else if((s|0)==31){r=ze()|0;break}}else s=43}while(0);do{if((s|0)==43){_=0;ue(183,e|0);e=_;_=0;if(e&1){r=ze()|0;break}i=f[A>>2]|0;r=i;if(i){n=f[T>>2]|0;if((n|0)!=(i|0))f[T>>2]=n+(~((n+-4-r|0)>>>2)<<2);Ip(i)}i=f[C>>2]|0;if(!i){c=S;return}if((f[R>>2]|0)!=(i|0))f[R>>2]=i;Ip(i);c=S;return}}while(0);i=f[A>>2]|0;n=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-n|0)>>>2)<<2);Ip(i)}}i=f[C>>2]|0;if(!i)$e(r|0);if((f[R>>2]|0)!=(i|0))f[R>>2]=i;Ip(i);$e(r|0)}function gs(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0;b=e+4572|0;i=f[b>>2]|0;_=e+148|0;if((f[_>>2]|0)<=0)return;k=e+4576|0;w=e+4580|0;s=i;l=a[i+-1>>0]|0;i=a[i>>0]|0;d=0;while(1){h=f[k>>2]|0;c=a[h+(d+-1)>>0]|0;n=d+1|0;r=a[s+n>>0]|0;u=f[w>>2]|0;o=i-l|0;s=l-c|0;u=((((t[u+(r-i)>>0]|0)*9|0)+(t[u+o>>0]|0)|0)*9|0)+(t[u+s>>0]|0)|0;if(!u){n=(Ms(e,d,0)|0)+d|0;r=f[b>>2]|0;i=a[r+(n+-1)>>0]|0;r=a[r+n>>0]|0}else{l=i-c>>31;if((l^s|0)<0)s=i;else s=c+((l^o|0)<0?0:o)|0;h=ys(e,u,a[h+d>>0]|0,s,0)|0;t[(f[k>>2]|0)+d>>0]=h}if((n|0)>=(f[_>>2]|0))break;s=f[b>>2]|0;l=i;i=r;d=n}return}function ys(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,m=0;m=i>>31;h=(m^i)-m|0;k=e+164+(h*12|0)+10|0;r=n[k>>1]|0;b=e+164+(h*12|0)|0;s=f[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){l=5;while(1)if((r<<l|0)<(s|0))l=l+1|0;else break}else l=4;else l=3;else l=2;else l=1;else l=0;d=e+164+(h*12|0)+8|0;r=(n[d>>1]^m)-m+a|0;if((r&255|0)!=(r|0))r=r>>31&255^255;s=e+112|0;if((f[s>>2]|0)<8)jt(e);a=e+108|0;o=f[a>>2]|0;u=o>>>24;c=f[2832+(l<<11)+(u<<3)+4>>2]|0;if(!c){s=wa(e)|0;if((s|0)<23){if(l)s=(_a(e,l)|0)+(s<<l)|0}else s=(_a(e,8)|0)+1|0;s=s<<31>>31^s>>1;if((((s|0)>-1?s:0-s|0)|0)>65535){r=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,r|0,5,35648);i=_;_=0;if(i&1){i=ze()|0;je(r|0);$e(i|0)}else bi(r|0,824,96)}}else{f[s>>2]=(f[s>>2]|0)-c;f[a>>2]=o<<c;s=f[2832+(l<<11)+(u<<3)>>2]|0}c=e+164+(h*12|0)+4|0;a=f[c>>2]|0;if(!l){e=n[k>>1]|0;l=e;s=(a<<1)+-1+(e<<16>>16)>>31^s}else l=n[k>>1]|0;o=l<<16>>16==64;e=o&1;u=a+s>>e;o=o?32:l<<16>>16;f[b>>2]=((s|0)>-1?s:0-s|0)+(f[b>>2]|0)>>e;a=o+1|0;n[k>>1]=a;l=a+u|0;if((l|0)<1){k=n[d>>1]|0;n[d>>1]=(k&65535)-(k<<16>>16>-128&1);k=(l|0)>(~o|0)?l:0-o|0;f[c>>2]=k;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&255;return i|0}if((u|0)<=0){k=u;f[c>>2]=k;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&255;return i|0}k=u-a|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);k=(k|0)>0?0:k;f[c>>2]=k;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&255;return i|0}function Ms(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0;l=e+4576|0;s=f[l>>2]|0;r=t[s+(i+-1)>>0]|0;o=e+148|0;s=Es(e,r,s+i|0,(f[o>>2]|0)-i|0)|0;n=s+i|0;if((n|0)==(f[o>>2]|0)){o=s;return o|0}r=r&255;i=a[(f[e+4572>>2]|0)+n>>0]|0;o=r-i|0;if((((o|0)>-1?o:0-o|0)|0)<1)r=(As(e,e+4556|0)|0)+r|0;else r=(re(As(e,e+4544|0)|0,i-r>>31|1)|0)+i|0;t[(f[l>>2]|0)+n>>0]=r;o=e+4568|0;e=f[o>>2]|0;f[o>>2]=(e|0)<1?0:e+-1|0;o=s+1|0;return o|0}function Es(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;o=e+112|0;u=e+108|0;c=e+4568|0;a=f[o>>2]|0;s=0;while(1){if((a|0)<1){jt(e);a=f[o>>2]|0}l=f[u>>2]|0;a=a+-1|0;f[o>>2]=a;f[u>>2]=l<<1;if((l|0)>=0){h=8;break}l=f[c>>2]|0;d=1<<f[36476+(l<<2)>>2];b=n-s|0;b=(d|0)<(b|0)?d:b;s=b+s|0;if((b|0)==(d|0))f[c>>2]=(l|0)>30?31:l+1|0;if((s|0)==(n|0)){a=n;break}}if((h|0)==8)if((s|0)!=(n|0)){a=f[c>>2]|0;if((a+-4|0)>>>0<28)a=_a(e,f[36476+(a<<2)>>2]|0)|0;else a=0;a=a+s|0;if((a|0)>(n|0)){a=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,a|0,5,35648);b=_;_=0;if(b&1){b=ze()|0;je(a|0);$e(b|0)}else bi(a|0,824,96)}}else a=n;if((a|0)<=0)return a|0;ym(r|0,i|0,a|0)|0;return a|0}function As(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0;u=i+9|0;r=a[u>>0]|0;l=i+4|0;s=(re(r>>>1,f[l>>2]|0)|0)+(f[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;s=f[36476+(f[e+4568>>2]<<2)>>2]|0;r=wa(e)|0;do{if((r|0)<(22-s|0))if(!n){e=f[l>>2]|0;s=e+r|0;n=s&1;s=(n+s|0)/2|0;o=8;break}else{r=(_a(e,n)|0)+(r<<n)|0;e=f[l>>2]|0;s=r+e|0;c=s&1;n=c;l=1;s=(c+s|0)/2|0;break}else{r=(_a(e,8)|0)+1|0;e=f[l>>2]|0;s=r+e|0;l=s&1;s=(l+s|0)/2|0;if(!n){n=l;o=8}else{n=l;l=1}}}while(0);if((o|0)==8)l=a[i+10>>0]<<1>>>0>=(a[u>>0]|0)>>>0;s=(n|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;t[c>>0]=(a[c>>0]|0)+1}r=(r+1-e>>1)+(f[i>>2]|0)|0;f[i>>2]=r;n=t[u>>0]|0;if(n<<24>>24!=(t[i+8>>0]|0)){c=n;c=c&255;c=c+1|0;c=c&255;t[u>>0]=c;return s|0}f[i>>2]=r>>1;c=(n&255)>>>1;t[u>>0]=c;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;c=c&255;c=c+1|0;c=c&255;t[u>>0]=c;return s|0}function Ss(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,255,0);u=e+152|0;if(((f[o+4>>2]|0)==(f[u>>2]|0)?(f[o+8>>2]|0)==(f[e+156>>2]|0):0)?(f[o+12>>2]|0)==(f[e+160>>2]|0):0){u=f[8900]|0;f[e+4580>>2]=u+(((f[8901]|0)-u|0)>>>1);c=h;return}r=e+4584|0;n=e+4588|0;a=f[n>>2]|0;i=f[r>>2]|0;s=a-i|0;if(s>>>0>=512){if(s>>>0>512?(l=i+512|0,(a|0)!=(l|0)):0)f[n>>2]=l}else{zt(r,512-s|0);i=f[r>>2]|0}o=e+4580|0;f[o>>2]=i+256;l=e+160|0;a=e+156|0;s=-256;while(1){i=f[l>>2]|0;if((s|0)>(0-i|0)){r=f[a>>2]|0;if((s|0)>(0-r|0)){n=f[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){t[(f[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;t[(f[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==256)break}c=h;return}function Ts(e){e=e|0;var i=0,r=0;f[e>>2]=35688;i=f[e+4584>>2]|0;if(i){r=e+4588|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}e=e+88|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function Cs(e){e=e|0;var i=0,r=0;f[e>>2]=35688;i=f[e+4584>>2]|0;if(i){r=e+4588|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+88|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function Rs(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+28>>2]|0)!=0?(f[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(44,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+12>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(45,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(46,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(47,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+16>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=3;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=3;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function Ls(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,255,0);o=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[u+8>>2]|0:l;a=f[i+12>>2]|0;a=(a|0)==0?f[u+12>>2]|0:a;i=f[i+16>>2]|0;r=f[u+16>>2]|0;f[e+152>>2]=(o|0)==0?f[u+4>>2]|0:o;f[e+156>>2]=l;f[e+160>>2]=a;Dv(e);a=0;do{f[e+164+(a*12|0)>>2]=4;f[e+164+(a*12|0)+4>>2]=0;n[e+164+(a*12|0)+8>>1]=0;n[e+164+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;f[e+4544>>2]=4;f[e+4548>>2]=0;t[e+4552>>0]=u;t[e+4553>>0]=1;t[e+4554>>0]=0;f[e+4556>>2]=4;f[e+4560>>2]=1;t[e+4564>>0]=u;t[e+4565>>0]=1;t[e+4566>>0]=0;f[e+4568>>2]=0;c=s;return}function xs(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=f[i>>2]|0;f[i>>2]=0;i=f[l>>2]|0;f[l>>2]=s;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=f[l>>2]|0;t[e+4596>>0]=a&1;i=e+132|0;f[i>>2]=f[r>>2];f[i+4>>2]=f[r+4>>2];f[i+8>>2]=f[r+8>>2];f[i+12>>2]=f[r+12>>2];Ct(e,n);Ps(e);i=f[e+116>>2]|0;e=f[e+112>>2]|0;while(1){a=i+-1|0;r=(t[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=f[l>>2]|0;if(!a)return;f[l>>2]=a+i;n=n+8|0;f[n>>2]=(f[n>>2]|0)-i;return}function Ps(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;S=c;c=c+32|0;C=S+12|0;A=S;y=e+148|0;M=(f[y>>2]|0)+4|0;if((f[e+28>>2]|0)==1)E=f[e+20>>2]|0;else E=1;i=re(E<<1,M)|0;f[C>>2]=0;R=C+4|0;f[R>>2]=0;f[C+8>>2]=0;e:do{if(i){if(!(i>>>0>1431655765?(_=0,ue(178,C|0),T=_,_=0,T&1):0))s=6;if((s|0)==6?(_=0,r=de(67,i*3|0)|0,T=_,_=0,!(T&1)):0){f[R>>2]=r;f[C>>2]=r;f[C+8>>2]=r+(i*3|0);while(1){t[r>>0]=0;t[r+1>>0]=0;t[r+2>>0]=0;r=(f[R>>2]|0)+3|0;f[R>>2]=r;i=i+-1|0;if(!i)break e}}n=ze()|0;i=f[C>>2]|0;if(!i)$e(n|0);r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Ip(i);$e(n|0)}}while(0);f[A>>2]=0;T=A+4|0;f[T>>2]=0;f[A+8>>2]=0;do{if(!E)s=19;else{if(!(E>>>0>1073741823?(_=0,ue(178,A|0),g=_,_=0,g&1):0))s=17;if((s|0)==17?(n=E<<2,_=0,a=de(67,n|0)|0,g=_,_=0,!(g&1)):0){f[A>>2]=a;s=a+(E<<2)|0;f[A+8>>2]=s;ym(a|0,0,n|0)|0;f[T>>2]=s;s=19;break}n=ze()|0;i=f[A>>2]|0;r=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}}while(0);if((s|0)==19){s=e+8|0;e:do{if((f[s>>2]|0)>0){l=e+4572|0;o=re(E,M)|0;u=o+1|0;h=e+4576|0;d=(E|0)>0;b=e+136|0;k=e+144|0;w=e+140|0;m=e+132|0;v=e+88|0;p=e+4568|0;g=0;i:while(1){n=f[C>>2]|0;r=n+3|0;f[l>>2]=r;n=n+(u*3|0)|0;f[h>>2]=n;if(!(g&1))i=n;else{f[l>>2]=n;f[h>>2]=r;i=r;r=n}if(d){a=f[A>>2]|0;n=0;do{f[p>>2]=f[a+(n<<2)>>2];i=f[y>>2]|0;a=r+(i*3|0)|0;r=r+((i+-1|0)*3|0)|0;t[a>>0]=t[r>>0]|0;t[a+1>>0]=t[r+1>>0]|0;t[a+2>>0]=t[r+2>>0]|0;r=f[l>>2]|0;a=(f[h>>2]|0)+-3|0;t[a>>0]=t[r>>0]|0;t[a+1>>0]=t[r+1>>0]|0;t[a+2>>0]=t[r+2>>0]|0;_=0;ce(82,e|0,0);a=_;_=0;if(a&1){s=30;break i}a=f[A>>2]|0;f[a+(n<<2)>>2]=f[p>>2];r=(f[l>>2]|0)+(M*3|0)|0;f[l>>2]=r;i=(f[h>>2]|0)+(M*3|0)|0;f[h>>2]=i;n=n+1|0}while((n|0)<(E|0))}a=f[b>>2]|0;if(((a|0)<=(g|0)?(g|0)<((f[k>>2]|0)+a|0):0)?(a=f[v>>2]|0,_=0,Re(f[(f[a>>2]|0)+8>>2]|0,a|0,i+(((f[m>>2]|0)-o|0)*3|0)|0,f[w>>2]|0,M|0),a=_,_=0,a&1):0){s=31;break}g=g+1|0;if((g|0)>=(f[s>>2]|0)){s=43;break e}}if((s|0)==30){n=ze()|0;break}else if((s|0)==31){n=ze()|0;break}}else s=43}while(0);do{if((s|0)==43){_=0;ue(183,e|0);e=_;_=0;if(e&1){n=ze()|0;break}i=f[A>>2]|0;r=i;if(i){n=f[T>>2]|0;if((n|0)!=(i|0))f[T>>2]=n+(~((n+-4-r|0)>>>2)<<2);Ip(i)}i=f[C>>2]|0;if(!i){c=S;return}r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Ip(i);c=S;return}}while(0);i=f[A>>2]|0;r=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Ip(i)}}i=f[C>>2]|0;if(!i)$e(n|0);r=f[R>>2]|0;if((r|0)!=(i|0))f[R>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Ip(i);$e(n|0)}function Os(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;S=e+148|0;if((f[S>>2]|0)<=0)return;T=e+4576|0;C=e+4572|0;R=e+4580|0;A=0;while(1){y=A+-1|0;l=f[T>>2]|0;o=f[C>>2]|0;i=A+1|0;s=a[o+(A*3|0)>>0]|0;E=f[R>>2]|0;u=a[o+(y*3|0)>>0]|0;c=s-u|0;h=a[l+(y*3|0)>>0]|0;d=u-h|0;b=((((t[E+((a[o+(i*3|0)>>0]|0)-s)>>0]|0)*9|0)+(t[E+c>>0]|0)|0)*9|0)+(t[E+d>>0]|0)|0;n=a[o+(A*3|0)+1>>0]|0;k=a[o+(y*3|0)+1>>0]|0;w=n-k|0;_=a[l+(y*3|0)+1>>0]|0;m=k-_|0;v=((((t[E+((a[o+(i*3|0)+1>>0]|0)-n)>>0]|0)*9|0)+(t[E+w>>0]|0)|0)*9|0)+(t[E+m>>0]|0)|0;r=a[o+(A*3|0)+2>>0]|0;p=a[o+(y*3|0)+2>>0]|0;g=r-p|0;y=a[l+(y*3|0)+2>>0]|0;M=p-y|0;E=((((t[E+((a[o+(i*3|0)+2>>0]|0)-r)>>0]|0)*9|0)+(t[E+g>>0]|0)|0)*9|0)+(t[E+M>>0]|0)|0;if(!(v|b|E))i=(Bs(e,A,0)|0)+A|0;else{o=a[l+(A*3|0)>>0]|0;l=s-h>>31;if((l^d|0)>=0)if((l^c|0)<0)s=h;else s=h-u+s|0;o=Is(e,b,o,s,0)|0;l=a[(f[T>>2]|0)+(A*3|0)+1>>0]|0;s=n-_>>31;if((s^m|0)>=0)if((s^w|0)<0)n=_;else n=_-k+n|0;s=Is(e,v,l,n,0)|0;l=a[(f[T>>2]|0)+(A*3|0)+2>>0]|0;n=r-y>>31;if((n^M|0)>=0)if((n^g|0)<0)r=y;else r=y-p+r|0;E=Is(e,E,l,r,0)|0;A=(f[T>>2]|0)+(A*3|0)|0;t[A>>0]=o;t[A+1>>0]=s;t[A+2>>0]=E}if((i|0)<(f[S>>2]|0))A=i;else break}return}function Bs(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;u=c;c=c+16|0;d=u+3|0;b=u;s=e+4576|0;r=f[s>>2]|0;n=r+((i+-1|0)*3|0)|0;l=t[n>>0]|0;o=t[n+1>>0]|0;n=t[n+2>>0]|0;t[b>>0]=l;t[b+1>>0]=o;t[b+2>>0]=n;h=e+148|0;a=(f[h>>2]|0)-i|0;t[d>>0]=t[b>>0]|0;t[d+1>>0]=t[b+1>>0]|0;t[d+2>>0]=t[b+2>>0]|0;a=Ds(e,d,r+(i*3|0)|0,a)|0;r=a+i|0;if((r|0)==(f[h>>2]|0)){b=a;c=u;return b|0}d=(f[e+4572>>2]|0)+(r*3|0)|0;i=t[d>>0]|0;h=t[d+1>>0]|0;d=t[d+2>>0]|0;b=f[s>>2]|0;k=e+4544|0;s=Ns(e,k)|0;w=Ns(e,k)|0;i=i&255;h=h&255;h=(re(h-(o&255)>>31|1,w)|0)+h&255;d=d&255;d=(re(d-(n&255)>>31|1,Ns(e,k)|0)|0)+d&255;b=b+(r*3|0)|0;t[b>>0]=(re(i-(l&255)>>31|1,s)|0)+i;t[b+1>>0]=h;t[b+2>>0]=d;b=e+4568|0;d=f[b>>2]|0;f[b>>2]=(d|0)<1?0:d+-1|0;b=a+1|0;c=u;return b|0}function Is(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,m=0;m=i>>31;h=(m^i)-m|0;k=e+164+(h*12|0)+10|0;r=n[k>>1]|0;b=e+164+(h*12|0)|0;s=f[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){l=5;while(1)if((r<<l|0)<(s|0))l=l+1|0;else break}else l=4;else l=3;else l=2;else l=1;else l=0;d=e+164+(h*12|0)+8|0;r=(n[d>>1]^m)-m+a|0;if((r&255|0)!=(r|0))r=r>>31&255^255;s=e+112|0;if((f[s>>2]|0)<8)jt(e);a=e+108|0;o=f[a>>2]|0;u=o>>>24;c=f[2832+(l<<11)+(u<<3)+4>>2]|0;if(!c){s=wa(e)|0;if((s|0)<23){if(l)s=(_a(e,l)|0)+(s<<l)|0}else s=(_a(e,8)|0)+1|0;s=s<<31>>31^s>>1;if((((s|0)>-1?s:0-s|0)|0)>65535){r=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,r|0,5,35648);i=_;_=0;if(i&1){i=ze()|0;je(r|0);$e(i|0)}else bi(r|0,824,96)}}else{f[s>>2]=(f[s>>2]|0)-c;f[a>>2]=o<<c;s=f[2832+(l<<11)+(u<<3)>>2]|0}c=e+164+(h*12|0)+4|0;a=f[c>>2]|0;if(!l){e=n[k>>1]|0;l=e;s=(a<<1)+-1+(e<<16>>16)>>31^s}else l=n[k>>1]|0;o=l<<16>>16==64;e=o&1;u=a+s>>e;o=o?32:l<<16>>16;f[b>>2]=((s|0)>-1?s:0-s|0)+(f[b>>2]|0)>>e;a=o+1|0;n[k>>1]=a;l=a+u|0;if((l|0)<1){k=n[d>>1]|0;n[d>>1]=(k&65535)-(k<<16>>16>-128&1);k=(l|0)>(~o|0)?l:0-o|0;f[c>>2]=k;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&255;return i|0}if((u|0)<=0){k=u;f[c>>2]=k;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&255;return i|0}k=u-a|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);k=(k|0)>0?0:k;f[c>>2]=k;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&255;return i|0}function Ds(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;o=e+112|0;u=e+108|0;c=e+4568|0;a=f[o>>2]|0;s=0;while(1){if((a|0)<1){jt(e);a=f[o>>2]|0}l=f[u>>2]|0;a=a+-1|0;f[o>>2]=a;f[u>>2]=l<<1;if((l|0)>=0){h=8;break}l=f[c>>2]|0;d=1<<f[36476+(l<<2)>>2];b=n-s|0;b=(d|0)<(b|0)?d:b;s=b+s|0;if((b|0)==(d|0))f[c>>2]=(l|0)>30?31:l+1|0;if((s|0)==(n|0)){a=n;break}}if((h|0)==8)if((s|0)!=(n|0)){a=f[c>>2]|0;if((a+-4|0)>>>0<28)a=_a(e,f[36476+(a<<2)>>2]|0)|0;else a=0;a=a+s|0;if((a|0)>(n|0)){a=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,a|0,5,35648);b=_;_=0;if(b&1){b=ze()|0;je(a|0);$e(b|0)}else bi(a|0,824,96)}}else a=n;if((a|0)<=0)return a|0;s=0;do{b=r+(s*3|0)|0;t[b>>0]=t[i>>0]|0;t[b+1>>0]=t[i+1>>0]|0;t[b+2>>0]=t[i+2>>0]|0;s=s+1|0}while((s|0)!=(a|0));return a|0}function Ns(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0;u=i+9|0;r=a[u>>0]|0;l=i+4|0;s=(re(r>>>1,f[l>>2]|0)|0)+(f[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;s=f[36476+(f[e+4568>>2]<<2)>>2]|0;r=wa(e)|0;do{if((r|0)<(22-s|0))if(!n){e=f[l>>2]|0;s=e+r|0;n=s&1;s=(n+s|0)/2|0;o=8;break}else{r=(_a(e,n)|0)+(r<<n)|0;e=f[l>>2]|0;s=r+e|0;c=s&1;n=c;l=1;s=(c+s|0)/2|0;break}else{r=(_a(e,8)|0)+1|0;e=f[l>>2]|0;s=r+e|0;l=s&1;s=(l+s|0)/2|0;if(!n){n=l;o=8}else{n=l;l=1}}}while(0);if((o|0)==8)l=a[i+10>>0]<<1>>>0>=(a[u>>0]|0)>>>0;s=(n|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;t[c>>0]=(a[c>>0]|0)+1}r=(r+1-e>>1)+(f[i>>2]|0)|0;f[i>>2]=r;n=t[u>>0]|0;if(n<<24>>24!=(t[i+8>>0]|0)){c=n;c=c&255;c=c+1|0;c=c&255;t[u>>0]=c;return s|0}f[i>>2]=r>>1;c=(n&255)>>>1;t[u>>0]=c;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;c=c&255;c=c+1|0;c=c&255;t[u>>0]=c;return s|0}function Fs(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;d=c;c=c+128|0;s=d;k=d+116|0;w=d+104|0;o=d+20|0;h=d+16|0;u=d+12|0;b=d+8|0;l=d+4|0;t[k>>0]=t[58887]|0;t[k+1>>0]=t[58888]|0;t[k+2>>0]=t[58889]|0;t[k+3>>0]=t[58890]|0;t[k+4>>0]=t[58891]|0;t[k+5>>0]=t[58892]|0;_k(k+1|0,58893,0,f[r+4>>2]|0);e=Vb()|0;f[s>>2]=a;a=w+(n_(w,12,e,k,s)|0)|0;k=mk(w,a,r)|0;e=sd(r)|0;f[b>>2]=e;_=0;me(3,w|0,k|0,a|0,o|0,h|0,u|0,b|0);a=_;_=0;if(a&1){w=ze()|0;bh(e)|0;$e(w|0)}else{bh(e)|0;f[l>>2]=f[i>>2];k=f[h>>2]|0;w=f[u>>2]|0;f[s>>2]=f[l>>2];w=a_(s,o,k,w,r,n)|0;c=d;return w|0}return 0}function Us(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0;d=c;c=c+240|0;s=d+8|0;e=d;k=d+204|0;o=d+32|0;h=d+28|0;u=d+24|0;b=d+20|0;l=d+16|0;w=e;f[w>>2]=37;f[w+4>>2]=0;_k(e+1|0,58895,0,f[r+4>>2]|0);w=Vb()|0;m=s;f[m>>2]=n;f[m+4>>2]=a;a=k+(n_(k,23,w,e,s)|0)|0;n=mk(k,a,r)|0;e=sd(r)|0;f[b>>2]=e;_=0;me(3,k|0,n|0,a|0,o|0,h|0,u|0,b|0);a=_;_=0;if(a&1){m=ze()|0;bh(e)|0;$e(m|0)}else{bh(e)|0;f[l>>2]=f[i>>2];w=f[h>>2]|0;m=f[u>>2]|0;f[s>>2]=f[l>>2];m=a_(s,o,w,m,r,t)|0;c=d;return m|0}return 0}function js(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=+n;var a=0,s=0,l=0,o=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0;A=c;c=c+352|0;p=A+312|0;k=A+48|0;b=A+32|0;o=A+24|0;a=A+8|0;d=A;m=A+316|0;v=A+80|0;l=A+84|0;E=A+76|0;M=A+72|0;g=A+68|0;y=A+64|0;h=d;f[h>>2]=37;f[h+4>>2]=0;h=Ek(d+1|0,58898,f[r+4>>2]|0)|0;f[v>>2]=m;e=Vb()|0;if(h){f[a>>2]=f[r+8>>2];u[a+8>>3]=n;a=n_(m,30,e,d,a)|0}else{u[o>>3]=n;a=n_(m,30,e,d,o)|0}e:do{if((a|0)>29){_=0;e=Me(3)|0;a=_;_=0;a=a&1;if(h){if(!a?(_=0,f[b>>2]=f[r+8>>2],u[b+8>>3]=n,s=Ee(17,v|0,e|0,d|0,b|0)|0,w=_,_=0,!(w&1)):0)S=12}else if(!a?(_=0,f[k>>2]=f[r+8>>2],u[k+8>>3]=n,w=Ee(17,v|0,e|0,d|0,k|0)|0,k=_,_=0,!(k&1)):0){s=w;S=12}do{if((S|0)==12){e=f[v>>2]|0;if(!e){_=0;Se(6);w=_;_=0;if(w&1)break;a=f[v>>2]|0}else a=e;e=a;d=a;S=16;break e}}while(0);e=ze()|0}else{e=f[v>>2]|0;d=0;s=a;S=16}}while(0);if((S|0)==16){o=e+s|0;h=mk(e,o,r)|0;do{if((e|0)==(m|0)){e=m;a=0;S=22}else{s=Lc(s<<3)|0;if(!s){_=0;Se(6);S=_;_=0;if(S&1){a=0;S=20;break}e=f[v>>2]|0}a=s;l=s;S=22}}while(0);do{if((S|0)==22){_=0;s=de(68,r|0)|0;v=_;_=0;if(!(v&1)){f[g>>2]=s;_=0;me(4,e|0,h|0,o|0,l|0,E|0,M|0,g|0);g=_;_=0;if(g&1){e=ze()|0;bh(s)|0;break}bh(s)|0;f[y>>2]=f[i>>2];S=f[E>>2]|0;e=f[M>>2]|0;_=0;f[p>>2]=f[y>>2];e=he(40,p|0,l|0,S|0,e|0,r|0,t|0)|0;S=_;_=0;if(!(S&1)){f[i>>2]=e;if(a)xc(a);if(d)xc(d);c=A;return e|0}else S=20}else S=20}}while(0);if((S|0)==20)e=ze()|0;if(a)xc(a);if(d)xc(d)}$e(e|0);return 0}function Hs(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0;E=c;c=c+16|0;A=E;M=Du(l,44212)|0;g=Du(l,44368)|0;aM[f[(f[g>>2]|0)+20>>2]&127](A,g);f[s>>2]=n;l=t[e>>0]|0;switch(l<<24>>24){case 43:case 45:{_=0;l=pe(f[(f[M>>2]|0)+44>>2]|0,M|0,l|0)|0;y=_;_=0;if(y&1)p=8;else{h=f[s>>2]|0;f[s>>2]=h+4;f[h>>2]=l;h=e+1|0;p=10}break}default:{h=e;p=10}}e:do{if((p|0)==10){y=r;i:do{if((y-h|0)>1?(t[h>>0]|0)==48:0){o=h+1|0;switch(t[o>>0]|0){case 88:case 120:break;default:{p=11;break i}}_=0;l=pe(f[(f[M>>2]|0)+44>>2]|0,M|0,48)|0;v=_;_=0;if(v&1){p=8;break e}v=f[s>>2]|0;f[s>>2]=v+4;f[v>>2]=l;h=h+2|0;_=0;l=pe(f[(f[M>>2]|0)+44>>2]|0,M|0,t[o>>0]|0)|0;v=_;_=0;if(v&1){p=8;break e}v=f[s>>2]|0;f[s>>2]=v+4;f[v>>2]=l;if(h>>>0<r>>>0){l=h;while(1){o=t[l>>0]|0;_=0;u=Me(3)|0;v=_;_=0;if(v&1)break;_=0;o=pe(39,o<<24>>24|0,u|0)|0;v=_;_=0;if(v&1)break;if(!o){v=h;break i}l=l+1|0;if(l>>>0>=r>>>0){v=h;break i}}l=ze()|0;break e}else{v=h;l=h}}else p=11}while(0);i:do{if((p|0)==11)if(h>>>0<r>>>0){l=h;while(1){o=t[l>>0]|0;_=0;u=Me(3)|0;v=_;_=0;if(v&1)break;_=0;o=pe(40,o<<24>>24|0,u|0)|0;v=_;_=0;if(v&1)break;if(!o){v=h;break i}l=l+1|0;if(l>>>0>=r>>>0){v=h;break i}}l=ze()|0;break e}else{v=h;l=h}}while(0);w=t[A>>0]|0;m=A+4|0;if(((w&1)==0?(w&255)>>>1:f[m>>2]|0)|0){if((v|0)!=(l|0)?(d=l+-1|0,v>>>0<d>>>0):0){u=v;o=d;do{w=t[u>>0]|0;t[u>>0]=t[o>>0]|0;t[o>>0]=w;u=u+1|0;o=o+-1|0}while(u>>>0<o>>>0)}_=0;d=de(f[(f[g>>2]|0)+16>>2]|0,g|0)|0;w=_;_=0;if(w&1){p=8;break}b=A+8|0;k=A+1|0;i:do{if(v>>>0<l>>>0){o=0;u=0;w=v;while(1){h=t[((t[A>>0]&1)==0?k:f[b>>2]|0)+u>>0]|0;if(h<<24>>24>0&(o|0)==(h<<24>>24|0)){o=f[s>>2]|0;f[s>>2]=o+4;f[o>>2]=d;o=t[A>>0]|0;h=0;u=(u>>>0<(((o&1)==0?(o&255)>>>1:f[m>>2]|0)+-1|0)>>>0&1)+u|0}else h=o;_=0;o=pe(f[(f[M>>2]|0)+44>>2]|0,M|0,t[w>>0]|0)|0;S=_;_=0;if(S&1)break;S=f[s>>2]|0;f[s>>2]=S+4;f[S>>2]=o;w=w+1|0;if(w>>>0>=l>>>0)break i;else o=h+1|0}l=ze()|0;break e}}while(0);o=n+(v-e<<2)|0;h=f[s>>2]|0;if((o|0)!=(h|0)){u=h+-4|0;if(o>>>0<u>>>0){do{S=f[o>>2]|0;f[o>>2]=f[u>>2];f[u>>2]=S;o=o+4|0;u=u+-4|0}while(o>>>0<u>>>0);d=M;o=h}else{d=M;o=h}}else d=M}else{_=0;Ee(f[(f[M>>2]|0)+48>>2]|0,M|0,v|0,l|0,f[s>>2]|0)|0;S=_;_=0;if(S&1){p=8;break}o=(f[s>>2]|0)+(l-v<<2)|0;f[s>>2]=o;d=M}i:do{if(l>>>0<r>>>0){while(1){o=t[l>>0]|0;if(o<<24>>24==46){u=l;break}_=0;u=pe(f[(f[d>>2]|0)+44>>2]|0,M|0,o|0)|0;S=_;_=0;if(S&1){p=4;break}S=f[s>>2]|0;o=S+4|0;f[s>>2]=o;f[S>>2]=u;l=l+1|0;if(l>>>0>=r>>>0)break i}if((p|0)==4){l=ze()|0;break e}_=0;l=de(f[(f[g>>2]|0)+12>>2]|0,g|0)|0;S=_;_=0;if(S&1){p=8;break e}S=f[s>>2]|0;o=S+4|0;f[s>>2]=o;f[S>>2]=l;l=u+1|0}}while(0);_=0;Ee(f[(f[M>>2]|0)+48>>2]|0,M|0,l|0,r|0,o|0)|0;S=_;_=0;if(S&1)p=8;else{S=(f[s>>2]|0)+(y-l<<2)|0;f[s>>2]=S;f[a>>2]=(i|0)==(r|0)?S:n+(i-e<<2)|0;Oh(A);c=E;return}}}while(0);if((p|0)==8)l=ze()|0;Oh(A);$e(l|0)}function zs(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=+n;var a=0,s=0,l=0,o=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0;A=c;c=c+352|0;p=A+304|0;k=A+48|0;b=A+32|0;o=A+24|0;a=A+8|0;d=A;m=A+308|0;v=A+72|0;l=A+76|0;E=A+68|0;M=A+64|0;g=A+60|0;y=A+56|0;h=d;f[h>>2]=37;f[h+4>>2]=0;h=Ek(d+1|0,58899,f[r+4>>2]|0)|0;f[v>>2]=m;e=Vb()|0;if(h){f[a>>2]=f[r+8>>2];u[a+8>>3]=n;a=n_(m,30,e,d,a)|0}else{u[o>>3]=n;a=n_(m,30,e,d,o)|0}e:do{if((a|0)>29){_=0;e=Me(3)|0;a=_;_=0;a=a&1;if(h){if(!a?(_=0,f[b>>2]=f[r+8>>2],u[b+8>>3]=n,s=Ee(17,v|0,e|0,d|0,b|0)|0,w=_,_=0,!(w&1)):0)S=12}else if(!a?(_=0,u[k>>3]=n,w=Ee(17,v|0,e|0,d|0,k|0)|0,k=_,_=0,!(k&1)):0){s=w;S=12}do{if((S|0)==12){e=f[v>>2]|0;if(!e){_=0;Se(6);w=_;_=0;if(w&1)break;a=f[v>>2]|0}else a=e;e=a;d=a;S=16;break e}}while(0);e=ze()|0}else{e=f[v>>2]|0;d=0;s=a;S=16}}while(0);if((S|0)==16){o=e+s|0;h=mk(e,o,r)|0;do{if((e|0)==(m|0)){e=m;a=0;S=22}else{s=Lc(s<<3)|0;if(!s){_=0;Se(6);S=_;_=0;if(S&1){a=0;S=20;break}e=f[v>>2]|0}a=s;l=s;S=22}}while(0);do{if((S|0)==22){_=0;s=de(68,r|0)|0;v=_;_=0;if(!(v&1)){f[g>>2]=s;_=0;me(4,e|0,h|0,o|0,l|0,E|0,M|0,g|0);g=_;_=0;if(g&1){e=ze()|0;bh(s)|0;break}bh(s)|0;f[y>>2]=f[i>>2];S=f[E>>2]|0;e=f[M>>2]|0;_=0;f[p>>2]=f[y>>2];e=he(40,p|0,l|0,S|0,e|0,r|0,t|0)|0;S=_;_=0;if(!(S&1)){f[i>>2]=e;if(a)xc(a);if(d)xc(d);c=A;return e|0}else S=20}else S=20}}while(0);if((S|0)==20)e=ze()|0;if(a)xc(a);if(d)xc(d)}$e(e|0);return 0}function Ys(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;k=c;c=c+192|0;u=k;e=k+180|0;d=k+160|0;b=k+12|0;o=k+8|0;h=k+4|0;t[e>>0]=t[58901]|0;t[e+1>>0]=t[58902]|0;t[e+2>>0]=t[58903]|0;t[e+3>>0]=t[58904]|0;t[e+4>>0]=t[58905]|0;t[e+5>>0]=t[58906]|0;s=Vb()|0;f[u>>2]=a;e=n_(d,20,s,e,u)|0;a=d+e|0;s=mk(d,a,r)|0;l=sd(r)|0;f[o>>2]=l;_=0;o=pe(37,o|0,44212)|0;w=_;_=0;if(w&1){w=ze()|0;bh(l)|0;$e(w|0)}else{bh(l)|0;vM[f[(f[o>>2]|0)+48>>2]&31](o,d,a,b)|0;w=b+(e<<2)|0;f[h>>2]=f[i>>2];f[u>>2]=f[h>>2];w=a_(u,b,(s|0)==(a|0)?w:b+(s-d<<2)|0,w,r,n)|0;c=k;return w|0}return 0}function qs(e,i,r,s,l,o,u,h){e=e|0;i=i|0;r=r|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;var d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0;C=c;c=c+32|0;y=C+16|0;g=C+12|0;A=C+8|0;M=C+4|0;E=C;d=sd(s)|0;f[A>>2]=d;_=0;A=pe(37,A|0,44220)|0;p=_;_=0;if(p&1){C=ze()|0;bh(d)|0;$e(C|0)}bh(d)|0;f[l>>2]=0;p=A+8|0;d=f[i>>2]|0;e:do{if((u|0)!=(h|0)){i:while(1){b=d;if(d){if((f[d+12>>2]|0)==(f[d+16>>2]|0)?(lM[f[(f[d>>2]|0)+36>>2]&127](d)|0)==-1:0){f[i>>2]=0;d=0;b=0}}else d=0;m=(d|0)==0;w=f[r>>2]|0;k=w;do{if(w){if((f[w+12>>2]|0)==(f[w+16>>2]|0)?(lM[f[(f[w>>2]|0)+36>>2]&127](w)|0)==-1:0){f[r>>2]=0;k=0;T=12;break}if(!m){T=13;break i}}else T=12}while(0);if((T|0)==12){T=0;if(m){T=13;break}else w=0}r:do{if((uM[f[(f[A>>2]|0)+36>>2]&63](A,t[u>>0]|0,0)|0)<<24>>24==37){w=u+1|0;if((w|0)==(h|0)){T=17;break i}v=uM[f[(f[A>>2]|0)+36>>2]&63](A,t[w>>0]|0,0)|0;switch(v<<24>>24){case 48:case 69:{m=u+2|0;if((m|0)==(h|0)){T=20;break i}u=w;w=uM[f[(f[A>>2]|0)+36>>2]&63](A,t[m>>0]|0,0)|0;d=v;break}default:{w=v;d=0}}v=f[(f[e>>2]|0)+36>>2]|0;f[M>>2]=b;f[E>>2]=k;f[g>>2]=f[M>>2];f[y>>2]=f[E>>2];f[i>>2]=yM[v&15](e,g,y,s,l,o,w,d)|0;u=u+2|0}else{b=t[u>>0]|0;if(b<<24>>24>-1?(S=f[p>>2]|0,(n[S+(b<<24>>24<<1)>>1]&8192)!=0):0){do{u=u+1|0;if((u|0)==(h|0)){u=h;break}b=t[u>>0]|0;if(b<<24>>24<=-1)break}while((n[S+(b<<24>>24<<1)>>1]&8192)!=0);b=w;while(1){if(d){if((f[d+12>>2]|0)==(f[d+16>>2]|0)?(lM[f[(f[d>>2]|0)+36>>2]&127](d)|0)==-1:0){f[i>>2]=0;d=0}}else d=0;k=(d|0)==0;do{if(w){if((f[w+12>>2]|0)!=(f[w+16>>2]|0))if(k){v=b;break}else break r;if((lM[f[(f[w>>2]|0)+36>>2]&127](w)|0)!=-1)if(k^(b|0)==0){v=b;w=b;break}else break r;else{f[r>>2]=0;b=0;T=39;break}}else T=39}while(0);if((T|0)==39){T=0;if(k)break r;else{v=b;w=0}}k=d+12|0;b=f[k>>2]|0;m=d+16|0;if((b|0)==(f[m>>2]|0))b=lM[f[(f[d>>2]|0)+36>>2]&127](d)|0;else b=a[b>>0]|0;if((b&255)<<24>>24<=-1)break r;if(!(n[(f[p>>2]|0)+(b<<24>>24<<1)>>1]&8192))break r;b=f[k>>2]|0;if((b|0)==(f[m>>2]|0)){lM[f[(f[d>>2]|0)+40>>2]&127](d)|0;b=v;continue}else{f[k>>2]=b+1;b=v;continue}}}k=d+12|0;b=f[k>>2]|0;w=d+16|0;if((b|0)==(f[w>>2]|0))b=lM[f[(f[d>>2]|0)+36>>2]&127](d)|0;else b=a[b>>0]|0;v=kM[f[(f[A>>2]|0)+12>>2]&63](A,b&255)|0;if(v<<24>>24!=(kM[f[(f[A>>2]|0)+12>>2]&63](A,t[u>>0]|0)|0)<<24>>24){T=57;break i}b=f[k>>2]|0;if((b|0)==(f[w>>2]|0))lM[f[(f[d>>2]|0)+40>>2]&127](d)|0;else f[k>>2]=b+1;u=u+1|0}}while(0);d=f[i>>2]|0;if(!((u|0)!=(h|0)&(f[l>>2]|0)==0))break e}if((T|0)==13){f[l>>2]=4;break}else if((T|0)==17){f[l>>2]=4;break}else if((T|0)==20){f[l>>2]=4;break}else if((T|0)==57){f[l>>2]=4;d=f[i>>2]|0;break}}}while(0);if(d){if((f[d+12>>2]|0)==(f[d+16>>2]|0)?(lM[f[(f[d>>2]|0)+36>>2]&127](d)|0)==-1:0){f[i>>2]=0;d=0}}else d=0;u=(d|0)==0;b=f[r>>2]|0;do{if(b){if((f[b+12>>2]|0)==(f[b+16>>2]|0)?(lM[f[(f[b>>2]|0)+36>>2]&127](b)|0)==-1:0){f[r>>2]=0;T=67;break}if(!u)T=68}else T=67}while(0);if((T|0)==67?u:0)T=68;if((T|0)==68)f[l>>2]=f[l>>2]|2;c=C;return d|0}function Xs(e){e=e|0;return}function Vs(e){e=e|0;Ip(e);return}function Gs(e){e=e|0;return 2}function Ks(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=qs(e,o,l,t,n,a,58907,58915)|0;c=s;return e|0}function Ws(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0;l=c;c=c+16|0;o=l+12|0;u=l+8|0;d=l+4|0;h=l;b=e+8|0;b=lM[f[(f[b>>2]|0)+20>>2]&127](b)|0;f[d>>2]=f[i>>2];f[h>>2]=f[r>>2];r=t[b>>0]|0;k=(r&1)==0;i=k?b+1|0:f[b+8>>2]|0;r=i+(k?(r&255)>>>1:f[b+4>>2]|0)|0;f[u>>2]=f[d>>2];f[o>>2]=f[h>>2];e=qs(e,u,o,n,a,s,i,r)|0;c=l;return e|0}function Zs(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u+4|0;o=u;t=sd(t)|0;f[s>>2]=t;_=0;s=pe(37,s|0,44220)|0;h=_;_=0;if(h&1){h=ze()|0;bh(t)|0;$e(h|0)}else{bh(t)|0;f[o>>2]=f[r>>2];f[l>>2]=f[o>>2];Js(e,a+24|0,i,l,n,s);c=u;return f[i>>2]|0}return 0}function Js(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0;s=c;c=c+16|0;l=s+4|0;o=s;e=e+8|0;e=lM[f[f[e>>2]>>2]&127](e)|0;f[o>>2]=f[t>>2];f[l>>2]=f[o>>2];r=(Nw(r,l,e,e+168|0,a,n,0)|0)-e|0;if((r|0)<168)f[i>>2]=((r|0)/12|0|0)%7|0;c=s;return}function Qs(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u+4|0;o=u;t=sd(t)|0;f[s>>2]=t;_=0;s=pe(37,s|0,44220)|0;h=_;_=0;if(h&1){h=ze()|0;bh(t)|0;$e(h|0)}else{bh(t)|0;f[o>>2]=f[r>>2];f[l>>2]=f[o>>2];$s(e,a+16|0,i,l,n,s);c=u;return f[i>>2]|0}return 0}function $s(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0;s=c;c=c+16|0;l=s+4|0;o=s;e=e+8|0;e=lM[f[(f[e>>2]|0)+4>>2]&127](e)|0;f[o>>2]=f[t>>2];f[l>>2]=f[o>>2];r=(Nw(r,l,e,e+288|0,a,n,0)|0)-e|0;if((r|0)<288)f[i>>2]=((r|0)/12|0|0)%12|0;c=s;return}function el(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u+4|0;o=u;t=sd(t)|0;f[s>>2]=t;_=0;s=pe(37,s|0,44220)|0;h=_;_=0;if(h&1){h=ze()|0;bh(t)|0;$e(h|0)}else{bh(t)|0;f[o>>2]=f[r>>2];f[l>>2]=f[o>>2];il(e,a+20|0,i,l,n,s);c=u;return f[i>>2]|0}return 0}function il(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=s_(r,e,n,a,4)|0;if(!(f[n>>2]&4)){if((e|0)<69)e=e+2e3|0;else e=(e+-69|0)>>>0<31?e+1900|0:e;f[i>>2]=e+-1900}c=s;return}function rl(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0,V=0,G=0,K=0;V=c;c=c+144|0;u=V+132|0;o=V+116|0;U=V+128|0;M=V+124|0;B=V+120|0;j=V+112|0;H=V+108|0;z=V+104|0;Y=V+100|0;q=V+96|0;X=V+92|0;h=V+88|0;d=V+84|0;b=V+80|0;k=V+76|0;w=V+72|0;m=V+68|0;v=V+64|0;p=V+60|0;g=V+56|0;y=V+52|0;E=V+48|0;A=V+44|0;S=V+40|0;T=V+36|0;C=V+32|0;R=V+28|0;L=V+24|0;x=V+20|0;P=V+16|0;O=V+12|0;I=V+8|0;D=V+4|0;N=V;f[a>>2]=0;F=sd(n)|0;f[U>>2]=F;_=0;U=pe(37,U|0,44220)|0;K=_;_=0;if(K&1){K=ze()|0;bh(F)|0;$e(K|0)}bh(F)|0;do{switch(l<<24>>24|0){case 65:case 97:{f[M>>2]=f[r>>2];f[u>>2]=f[M>>2];Js(e,s+24|0,i,u,a,U);G=28;break}case 104:case 66:case 98:{f[B>>2]=f[r>>2];f[u>>2]=f[B>>2];$s(e,s+16|0,i,u,a,U);G=28;break}case 99:{G=e+8|0;G=lM[f[(f[G>>2]|0)+12>>2]&127](G)|0;f[j>>2]=f[i>>2];f[H>>2]=f[r>>2];l=t[G>>0]|0;r=(l&1)==0;K=r?G+1|0:f[G+8>>2]|0;G=K+(r?(l&255)>>>1:f[G+4>>2]|0)|0;f[o>>2]=f[j>>2];f[u>>2]=f[H>>2];f[i>>2]=qs(e,o,u,n,a,s,K,G)|0;G=28;break}case 101:case 100:{f[z>>2]=f[r>>2];f[u>>2]=f[z>>2];tl(e,s+12|0,i,u,a,U);G=28;break}case 68:{f[Y>>2]=f[i>>2];f[q>>2]=f[r>>2];f[o>>2]=f[Y>>2];f[u>>2]=f[q>>2];f[i>>2]=qs(e,o,u,n,a,s,58915,58923)|0;G=28;break}case 70:{f[X>>2]=f[i>>2];f[h>>2]=f[r>>2];f[o>>2]=f[X>>2];f[u>>2]=f[h>>2];f[i>>2]=qs(e,o,u,n,a,s,58923,58931)|0;G=28;break}case 72:{f[d>>2]=f[r>>2];f[u>>2]=f[d>>2];nl(e,s+8|0,i,u,a,U);G=28;break}case 73:{f[b>>2]=f[r>>2];f[u>>2]=f[b>>2];fl(e,s+8|0,i,u,a,U);G=28;break}case 106:{f[k>>2]=f[r>>2];f[u>>2]=f[k>>2];al(e,s+28|0,i,u,a,U);G=28;break}case 109:{f[w>>2]=f[r>>2];f[u>>2]=f[w>>2];sl(e,s+16|0,i,u,a,U);G=28;break}case 77:{f[m>>2]=f[r>>2];f[u>>2]=f[m>>2];ll(e,s+4|0,i,u,a,U);G=28;break}case 116:case 110:{f[v>>2]=f[r>>2];f[u>>2]=f[v>>2];ol(e,i,u,a,U);G=28;break}case 112:{f[p>>2]=f[r>>2];f[u>>2]=f[p>>2];ul(e,s+8|0,i,u,a,U);G=28;break}case 114:{f[g>>2]=f[i>>2];f[y>>2]=f[r>>2];f[o>>2]=f[g>>2];f[u>>2]=f[y>>2];f[i>>2]=qs(e,o,u,n,a,s,58931,58942)|0;G=28;break}case 82:{f[E>>2]=f[i>>2];f[A>>2]=f[r>>2];f[o>>2]=f[E>>2];f[u>>2]=f[A>>2];f[i>>2]=qs(e,o,u,n,a,s,58942,58947)|0;G=28;break}case 83:{f[S>>2]=f[r>>2];f[u>>2]=f[S>>2];cl(e,s,i,u,a,U);G=28;break}case 84:{f[T>>2]=f[i>>2];f[C>>2]=f[r>>2];f[o>>2]=f[T>>2];f[u>>2]=f[C>>2];f[i>>2]=qs(e,o,u,n,a,s,58947,58955)|0;G=28;break}case 119:{f[R>>2]=f[r>>2];f[u>>2]=f[R>>2];hl(e,s+24|0,i,u,a,U);G=28;break}case 120:{K=f[(f[e>>2]|0)+20>>2]|0;f[L>>2]=f[i>>2];f[x>>2]=f[r>>2];f[o>>2]=f[L>>2];f[u>>2]=f[x>>2];o=sM[K&63](e,o,u,n,a,s)|0;break}case 88:{G=e+8|0;G=lM[f[(f[G>>2]|0)+24>>2]&127](G)|0;f[P>>2]=f[i>>2];f[O>>2]=f[r>>2];l=t[G>>0]|0;r=(l&1)==0;K=r?G+1|0:f[G+8>>2]|0;G=K+(r?(l&255)>>>1:f[G+4>>2]|0)|0;f[o>>2]=f[P>>2];f[u>>2]=f[O>>2];f[i>>2]=qs(e,o,u,n,a,s,K,G)|0;G=28;break}case 121:{f[I>>2]=f[r>>2];f[u>>2]=f[I>>2];il(e,s+20|0,i,u,a,U);G=28;break}case 89:{f[D>>2]=f[r>>2];f[u>>2]=f[D>>2];dl(e,s+20|0,i,u,a,U);G=28;break}case 37:{f[N>>2]=f[r>>2];f[u>>2]=f[N>>2];bl(e,i,u,a,U);G=28;break}default:{f[a>>2]=f[a>>2]|4;G=28}}}while(0);if((G|0)==28)o=f[i>>2]|0;c=V;return o|0}function tl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=s_(r,e,n,a,2)|0;r=f[n>>2]|0;if((e+-1|0)>>>0<31&(r&4|0)==0)f[i>>2]=e;else f[n>>2]=r|4;c=s;return}function nl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=s_(r,e,n,a,2)|0;r=f[n>>2]|0;if((e|0)<24&(r&4|0)==0)f[i>>2]=e;else f[n>>2]=r|4;c=s;return}function fl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=s_(r,e,n,a,2)|0;r=f[n>>2]|0;if((e+-1|0)>>>0<12&(r&4|0)==0)f[i>>2]=e;else f[n>>2]=r|4;c=s;return}function al(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=s_(r,e,n,a,3)|0;r=f[n>>2]|0;if((e|0)<366&(r&4|0)==0)f[i>>2]=e;else f[n>>2]=r|4;c=s;return}function sl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=s_(r,e,n,a,2)|0;r=f[n>>2]|0;if((e|0)<13&(r&4|0)==0)f[i>>2]=e+-1;else f[n>>2]=r|4;c=s;return}function ll(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=s_(r,e,n,a,2)|0;r=f[n>>2]|0;if((e|0)<60&(r&4|0)==0)f[i>>2]=e;else f[n>>2]=r|4;c=s;return}function ol(e,i,r,t,s){e=e|0;i=i|0;r=r|0;t=t|0;s=s|0;var l=0,o=0,u=0;o=s+8|0;e:while(1){s=f[i>>2]|0;do{if(s){if((f[s+12>>2]|0)==(f[s+16>>2]|0))if((lM[f[(f[s>>2]|0)+36>>2]&127](s)|0)==-1){f[i>>2]=0;s=0;break}else{s=f[i>>2]|0;break}}else s=0}while(0);s=(s|0)==0;e=f[r>>2]|0;do{if(e){if((f[e+12>>2]|0)!=(f[e+16>>2]|0))if(s)break;else break e;if((lM[f[(f[e>>2]|0)+36>>2]&127](e)|0)!=-1)if(s)break;else break e;else{f[r>>2]=0;u=12;break}}else u=12}while(0);if((u|0)==12){u=0;if(s){e=0;break}else e=0}s=f[i>>2]|0;l=f[s+12>>2]|0;if((l|0)==(f[s+16>>2]|0))s=lM[f[(f[s>>2]|0)+36>>2]&127](s)|0;else s=a[l>>0]|0;if((s&255)<<24>>24<=-1)break;if(!(n[(f[o>>2]|0)+(s<<24>>24<<1)>>1]&8192))break;s=f[i>>2]|0;e=s+12|0;l=f[e>>2]|0;if((l|0)==(f[s+16>>2]|0)){lM[f[(f[s>>2]|0)+40>>2]&127](s)|0;continue}else{f[e>>2]=l+1;continue}}s=f[i>>2]|0;do{if(s){if((f[s+12>>2]|0)==(f[s+16>>2]|0))if((lM[f[(f[s>>2]|0)+36>>2]&127](s)|0)==-1){f[i>>2]=0;s=0;break}else{s=f[i>>2]|0;break}}else s=0}while(0);s=(s|0)==0;do{if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)?(lM[f[(f[e>>2]|0)+36>>2]&127](e)|0)==-1:0){f[r>>2]=0;u=32;break}if(!s)u=33}else u=32}while(0);if((u|0)==32?s:0)u=33;if((u|0)==33)f[t>>2]=f[t>>2]|2;return}function ul(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0;d=c;c=c+16|0;o=d+4|0;u=d;h=e+8|0;h=lM[f[(f[h>>2]|0)+8>>2]&127](h)|0;e=t[h>>0]|0;if(!(e&1))l=(e&255)>>>1;else l=f[h+4>>2]|0;e=t[h+12>>0]|0;if(!(e&1))e=(e&255)>>>1;else e=f[h+16>>2]|0;do{if((l|0)!=(0-e|0)){f[u>>2]=f[n>>2];f[o>>2]=f[u>>2];e=Nw(r,o,h,h+24|0,s,a,0)|0;l=f[i>>2]|0;if((e|0)==(h|0)&(l|0)==12){f[i>>2]=0;break}if((l|0)<12&(e-h|0)==12)f[i>>2]=l+12}else f[a>>2]=f[a>>2]|4}while(0);c=d;return}function cl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=s_(r,e,n,a,2)|0;r=f[n>>2]|0;if((e|0)<61&(r&4|0)==0)f[i>>2]=e;else f[n>>2]=r|4;c=s;return}function hl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=s_(r,e,n,a,1)|0;r=f[n>>2]|0;if((e|0)<7&(r&4|0)==0)f[i>>2]=e;else f[n>>2]=r|4;c=s;return}function dl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=s_(r,e,n,a,4)|0;if(!(f[n>>2]&4))f[i>>2]=e+-1900;c=s;return}function bl(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var s=0,l=0,o=0;e=f[i>>2]|0;do{if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0))if((lM[f[(f[e>>2]|0)+36>>2]&127](e)|0)==-1){f[i>>2]=0;e=0;break}else{e=f[i>>2]|0;break}}else e=0}while(0);s=(e|0)==0;e=f[r>>2]|0;do{if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)?(lM[f[(f[e>>2]|0)+36>>2]&127](e)|0)==-1:0){f[r>>2]=0;o=11;break}if(s){l=e;o=13}else o=12}else o=11}while(0);if((o|0)==11)if(s)o=12;else{l=0;o=13}e:do{if((o|0)==12)f[t>>2]=f[t>>2]|6;else if((o|0)==13){e=f[i>>2]|0;s=f[e+12>>2]|0;if((s|0)==(f[e+16>>2]|0))e=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;else e=a[s>>0]|0;if((uM[f[(f[n>>2]|0)+36>>2]&63](n,e&255,0)|0)<<24>>24!=37){f[t>>2]=f[t>>2]|4;break}e=f[i>>2]|0;s=e+12|0;n=f[s>>2]|0;if((n|0)==(f[e+16>>2]|0)){lM[f[(f[e>>2]|0)+40>>2]&127](e)|0;e=f[i>>2]|0;if(!e)e=0;else o=21}else{f[s>>2]=n+1;o=21}do{if((o|0)==21)if((f[e+12>>2]|0)==(f[e+16>>2]|0))if((lM[f[(f[e>>2]|0)+36>>2]&127](e)|0)==-1){f[i>>2]=0;e=0;break}else{e=f[i>>2]|0;break}}while(0);e=(e|0)==0;do{if(l){if((f[l+12>>2]|0)==(f[l+16>>2]|0)?(lM[f[(f[l>>2]|0)+36>>2]&127](l)|0)==-1:0){f[r>>2]=0;o=30;break}if(e)break e}else o=30}while(0);if((o|0)==30?!e:0)break;f[t>>2]=f[t>>2]|2}}while(0);return}function kl(e,i,r,t,n,a,s,l){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0;M=c;c=c+32|0;m=M+16|0;w=M+12|0;g=M+8|0;v=M+4|0;p=M;o=sd(t)|0;f[g>>2]=o;_=0;g=pe(37,g|0,44212)|0;k=_;_=0;if(k&1){M=ze()|0;bh(o)|0;$e(M|0)}bh(o)|0;f[n>>2]=0;o=f[i>>2]|0;e:do{if((s|0)!=(l|0)){i:while(1){h=o;if(o){u=f[o+12>>2]|0;if((u|0)==(f[o+16>>2]|0))u=lM[f[(f[o>>2]|0)+36>>2]&127](o)|0;else u=f[u>>2]|0;if((u|0)==-1){f[i>>2]=0;o=0;b=1;k=0}else{b=0;k=h}}else{o=0;b=1;k=h}d=f[r>>2]|0;u=d;do{if(d){h=f[d+12>>2]|0;if((h|0)==(f[d+16>>2]|0))h=lM[f[(f[d>>2]|0)+36>>2]&127](d)|0;else h=f[h>>2]|0;if((h|0)!=-1)if(b)break;else{y=17;break i}else{f[r>>2]=0;u=0;y=15;break}}else y=15}while(0);if((y|0)==15){y=0;if(b){y=17;break}else d=0}r:do{if((uM[f[(f[g>>2]|0)+52>>2]&63](g,f[s>>2]|0,0)|0)<<24>>24==37){h=s+4|0;if((h|0)==(l|0)){y=21;break i}b=uM[f[(f[g>>2]|0)+52>>2]&63](g,f[h>>2]|0,0)|0;switch(b<<24>>24){case 48:case 69:{d=s+8|0;if((d|0)==(l|0)){y=24;break i}s=h;h=uM[f[(f[g>>2]|0)+52>>2]&63](g,f[d>>2]|0,0)|0;o=b;break}default:{h=b;o=0}}b=f[(f[e>>2]|0)+36>>2]|0;f[v>>2]=k;f[p>>2]=u;f[w>>2]=f[v>>2];f[m>>2]=f[p>>2];f[i>>2]=yM[b&15](e,w,m,t,n,a,h,o)|0;s=s+8|0}else{if(!(uM[f[(f[g>>2]|0)+12>>2]&63](g,8192,f[s>>2]|0)|0)){h=o+12|0;u=f[h>>2]|0;d=o+16|0;if((u|0)==(f[d>>2]|0))u=lM[f[(f[o>>2]|0)+36>>2]&127](o)|0;else u=f[u>>2]|0;k=kM[f[(f[g>>2]|0)+28>>2]&63](g,u)|0;if((k|0)!=(kM[f[(f[g>>2]|0)+28>>2]&63](g,f[s>>2]|0)|0)){y=61;break i}u=f[h>>2]|0;if((u|0)==(f[d>>2]|0))lM[f[(f[o>>2]|0)+40>>2]&127](o)|0;else f[h>>2]=u+4;s=s+4|0;break}do{s=s+4|0;if((s|0)==(l|0)){s=l;break}}while(uM[f[(f[g>>2]|0)+12>>2]&63](g,8192,f[s>>2]|0)|0);u=d;b=d;while(1){if(o){h=f[o+12>>2]|0;if((h|0)==(f[o+16>>2]|0))h=lM[f[(f[o>>2]|0)+36>>2]&127](o)|0;else h=f[h>>2]|0;if((h|0)==-1){f[i>>2]=0;d=1;o=0}else d=0}else{d=1;o=0}do{if(b){h=f[b+12>>2]|0;if((h|0)==(f[b+16>>2]|0))h=lM[f[(f[b>>2]|0)+36>>2]&127](b)|0;else h=f[h>>2]|0;if((h|0)!=-1)if(d^(u|0)==0){k=u;b=u;break}else break r;else{f[r>>2]=0;u=0;y=44;break}}else y=44}while(0);if((y|0)==44){y=0;if(d)break r;else{k=u;b=0}}h=o+12|0;u=f[h>>2]|0;d=o+16|0;if((u|0)==(f[d>>2]|0))u=lM[f[(f[o>>2]|0)+36>>2]&127](o)|0;else u=f[u>>2]|0;if(!(uM[f[(f[g>>2]|0)+12>>2]&63](g,8192,u)|0))break r;u=f[h>>2]|0;if((u|0)==(f[d>>2]|0)){lM[f[(f[o>>2]|0)+40>>2]&127](o)|0;u=k;continue}else{f[h>>2]=u+4;u=k;continue}}}}while(0);o=f[i>>2]|0;if(!((s|0)!=(l|0)&(f[n>>2]|0)==0))break e}if((y|0)==17){f[n>>2]=4;break}else if((y|0)==21){f[n>>2]=4;break}else if((y|0)==24){f[n>>2]=4;break}else if((y|0)==61){f[n>>2]=4;o=f[i>>2]|0;break}}}while(0);if(o){s=f[o+12>>2]|0;if((s|0)==(f[o+16>>2]|0))s=lM[f[(f[o>>2]|0)+36>>2]&127](o)|0;else s=f[s>>2]|0;if((s|0)==-1){f[i>>2]=0;o=0;h=1}else h=0}else{o=0;h=1}s=f[r>>2]|0;do{if(s){u=f[s+12>>2]|0;if((u|0)==(f[s+16>>2]|0))s=lM[f[(f[s>>2]|0)+36>>2]&127](s)|0;else s=f[u>>2]|0;if((s|0)!=-1)if(h)break;else{y=76;break}else{f[r>>2]=0;y=74;break}}else y=74}while(0);if((y|0)==74?h:0)y=76;if((y|0)==76)f[n>>2]=f[n>>2]|2;c=M;return o|0}function wl(e){e=e|0;return}function _l(e){e=e|0;Ip(e);return}function ml(e){e=e|0;return 2}function vl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=kl(e,o,l,t,n,a,44788,44820)|0;c=s;return e|0}function pl(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;l=c;c=c+16|0;o=l+12|0;u=l+8|0;d=l+4|0;h=l;w=e+8|0;w=lM[f[(f[w>>2]|0)+20>>2]&127](w)|0;f[d>>2]=f[i>>2];f[h>>2]=f[r>>2];b=t[w>>0]|0;k=(b&1)==0;r=w+4|0;i=k?r:f[w+8>>2]|0;r=i+((k?(b&255)>>>1:f[r>>2]|0)<<2)|0;f[u>>2]=f[d>>2];f[o>>2]=f[h>>2];e=kl(e,u,o,n,a,s,i,r)|0;c=l;return e|0}function gl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u+4|0;o=u;t=sd(t)|0;f[s>>2]=t;_=0;s=pe(37,s|0,44212)|0;h=_;_=0;if(h&1){h=ze()|0;bh(t)|0;$e(h|0)}else{bh(t)|0;f[o>>2]=f[r>>2];f[l>>2]=f[o>>2];yl(e,a+24|0,i,l,n,s);c=u;return f[i>>2]|0}return 0}function yl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0;s=c;c=c+16|0;l=s+4|0;o=s;e=e+8|0;e=lM[f[f[e>>2]>>2]&127](e)|0;f[o>>2]=f[t>>2];f[l>>2]=f[o>>2];r=(Kw(r,l,e,e+168|0,a,n,0)|0)-e|0;if((r|0)<168)f[i>>2]=((r|0)/12|0|0)%7|0;c=s;return}function Ml(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u+4|0;o=u;t=sd(t)|0;f[s>>2]=t;_=0;s=pe(37,s|0,44212)|0;h=_;_=0;if(h&1){h=ze()|0;bh(t)|0;$e(h|0)}else{bh(t)|0;f[o>>2]=f[r>>2];f[l>>2]=f[o>>2];El(e,a+16|0,i,l,n,s);c=u;return f[i>>2]|0}return 0}function El(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0;s=c;c=c+16|0;l=s+4|0;o=s;e=e+8|0;e=lM[f[(f[e>>2]|0)+4>>2]&127](e)|0;f[o>>2]=f[t>>2];f[l>>2]=f[o>>2];r=(Kw(r,l,e,e+288|0,a,n,0)|0)-e|0;if((r|0)<288)f[i>>2]=((r|0)/12|0|0)%12|0;c=s;return}function Al(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u+4|0;o=u;t=sd(t)|0;f[s>>2]=t;_=0;s=pe(37,s|0,44212)|0;h=_;_=0;if(h&1){h=ze()|0;bh(t)|0;$e(h|0)}else{bh(t)|0;f[o>>2]=f[r>>2];f[l>>2]=f[o>>2];Sl(e,a+20|0,i,l,n,s);c=u;return f[i>>2]|0}return 0}function Sl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=l_(r,e,n,a,4)|0;if(!(f[n>>2]&4)){if((e|0)<69)e=e+2e3|0;else e=(e+-69|0)>>>0<31?e+1900|0:e;f[i>>2]=e+-1900}c=s;return}function Tl(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0,V=0,G=0,K=0;V=c;c=c+144|0;u=V+132|0;o=V+116|0;U=V+128|0;M=V+124|0;B=V+120|0;j=V+112|0;H=V+108|0;z=V+104|0;Y=V+100|0;q=V+96|0;X=V+92|0;h=V+88|0;d=V+84|0;b=V+80|0;k=V+76|0;w=V+72|0;m=V+68|0;v=V+64|0;p=V+60|0;g=V+56|0;y=V+52|0;E=V+48|0;A=V+44|0;S=V+40|0;T=V+36|0;C=V+32|0;R=V+28|0;L=V+24|0;x=V+20|0;P=V+16|0;O=V+12|0;I=V+8|0;D=V+4|0;N=V;f[a>>2]=0;F=sd(n)|0;f[U>>2]=F;_=0;U=pe(37,U|0,44212)|0;K=_;_=0;if(K&1){K=ze()|0;bh(F)|0;$e(K|0)}bh(F)|0;do{switch(l<<24>>24|0){case 65:case 97:{f[M>>2]=f[r>>2];f[u>>2]=f[M>>2];yl(e,s+24|0,i,u,a,U);G=28;break}case 104:case 66:case 98:{f[B>>2]=f[r>>2];f[u>>2]=f[B>>2];El(e,s+16|0,i,u,a,U);G=28;break}case 99:{K=e+8|0;K=lM[f[(f[K>>2]|0)+12>>2]&127](K)|0;f[j>>2]=f[i>>2];f[H>>2]=f[r>>2];l=t[K>>0]|0;r=(l&1)==0;G=K+4|0;K=r?G:f[K+8>>2]|0;G=K+((r?(l&255)>>>1:f[G>>2]|0)<<2)|0;f[o>>2]=f[j>>2];f[u>>2]=f[H>>2];f[i>>2]=kl(e,o,u,n,a,s,K,G)|0;G=28;break}case 101:case 100:{f[z>>2]=f[r>>2];f[u>>2]=f[z>>2];Cl(e,s+12|0,i,u,a,U);G=28;break}case 68:{f[Y>>2]=f[i>>2];f[q>>2]=f[r>>2];f[o>>2]=f[Y>>2];f[u>>2]=f[q>>2];f[i>>2]=kl(e,o,u,n,a,s,44820,44852)|0;G=28;break}case 70:{f[X>>2]=f[i>>2];f[h>>2]=f[r>>2];f[o>>2]=f[X>>2];f[u>>2]=f[h>>2];f[i>>2]=kl(e,o,u,n,a,s,44852,44884)|0;G=28;break}case 72:{f[d>>2]=f[r>>2];f[u>>2]=f[d>>2];Rl(e,s+8|0,i,u,a,U);G=28;break}case 73:{f[b>>2]=f[r>>2];f[u>>2]=f[b>>2];Ll(e,s+8|0,i,u,a,U);G=28;break}case 106:{f[k>>2]=f[r>>2];f[u>>2]=f[k>>2];xl(e,s+28|0,i,u,a,U);G=28;break}case 109:{f[w>>2]=f[r>>2];f[u>>2]=f[w>>2];Pl(e,s+16|0,i,u,a,U);G=28;break}case 77:{f[m>>2]=f[r>>2];f[u>>2]=f[m>>2];Ol(e,s+4|0,i,u,a,U);G=28;break}case 116:case 110:{f[v>>2]=f[r>>2];f[u>>2]=f[v>>2];Bl(e,i,u,a,U);G=28;break}case 112:{f[p>>2]=f[r>>2];f[u>>2]=f[p>>2];Il(e,s+8|0,i,u,a,U);G=28;break}case 114:{f[g>>2]=f[i>>2];f[y>>2]=f[r>>2];f[o>>2]=f[g>>2];f[u>>2]=f[y>>2];f[i>>2]=kl(e,o,u,n,a,s,44884,44928)|0;G=28;break}case 82:{f[E>>2]=f[i>>2];f[A>>2]=f[r>>2];f[o>>2]=f[E>>2];f[u>>2]=f[A>>2];f[i>>2]=kl(e,o,u,n,a,s,44928,44948)|0;G=28;break}case 83:{f[S>>2]=f[r>>2];f[u>>2]=f[S>>2];Dl(e,s,i,u,a,U);G=28;break}case 84:{f[T>>2]=f[i>>2];f[C>>2]=f[r>>2];f[o>>2]=f[T>>2];f[u>>2]=f[C>>2];f[i>>2]=kl(e,o,u,n,a,s,44948,44980)|0;G=28;break}case 119:{f[R>>2]=f[r>>2];f[u>>2]=f[R>>2];Nl(e,s+24|0,i,u,a,U);G=28;break}case 120:{K=f[(f[e>>2]|0)+20>>2]|0;f[L>>2]=f[i>>2];f[x>>2]=f[r>>2];f[o>>2]=f[L>>2];f[u>>2]=f[x>>2];o=sM[K&63](e,o,u,n,a,s)|0;break}case 88:{K=e+8|0;K=lM[f[(f[K>>2]|0)+24>>2]&127](K)|0;f[P>>2]=f[i>>2];f[O>>2]=f[r>>2];l=t[K>>0]|0;r=(l&1)==0;G=K+4|0;K=r?G:f[K+8>>2]|0;G=K+((r?(l&255)>>>1:f[G>>2]|0)<<2)|0;f[o>>2]=f[P>>2];f[u>>2]=f[O>>2];f[i>>2]=kl(e,o,u,n,a,s,K,G)|0;G=28;break}case 121:{f[I>>2]=f[r>>2];f[u>>2]=f[I>>2];Sl(e,s+20|0,i,u,a,U);G=28;break}case 89:{f[D>>2]=f[r>>2];f[u>>2]=f[D>>2];Fl(e,s+20|0,i,u,a,U);G=28;break}case 37:{f[N>>2]=f[r>>2];f[u>>2]=f[N>>2];Ul(e,i,u,a,U);G=28;break}default:{f[a>>2]=f[a>>2]|4;G=28}}}while(0);if((G|0)==28)o=f[i>>2]|0;c=V;return o|0}function Cl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=l_(r,e,n,a,2)|0;r=f[n>>2]|0;if((e+-1|0)>>>0<31&(r&4|0)==0)f[i>>2]=e;else f[n>>2]=r|4;c=s;return}function Rl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=l_(r,e,n,a,2)|0;r=f[n>>2]|0;if((e|0)<24&(r&4|0)==0)f[i>>2]=e;else f[n>>2]=r|4;c=s;return}function Ll(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=l_(r,e,n,a,2)|0;r=f[n>>2]|0;if((e+-1|0)>>>0<12&(r&4|0)==0)f[i>>2]=e;else f[n>>2]=r|4;c=s;return}function xl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=l_(r,e,n,a,3)|0;r=f[n>>2]|0;if((e|0)<366&(r&4|0)==0)f[i>>2]=e;else f[n>>2]=r|4;c=s;return}function Pl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=l_(r,e,n,a,2)|0;r=f[n>>2]|0;if((e|0)<13&(r&4|0)==0)f[i>>2]=e+-1;else f[n>>2]=r|4;c=s;return}function Ol(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=l_(r,e,n,a,2)|0;r=f[n>>2]|0;if((e|0)<60&(r&4|0)==0)f[i>>2]=e;else f[n>>2]=r|4;c=s;return}function Bl(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0;e:while(1){e=f[i>>2]|0;do{if(e){a=f[e+12>>2]|0;if((a|0)==(f[e+16>>2]|0))e=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;else e=f[a>>2]|0;if((e|0)==-1){f[i>>2]=0;s=1;break}else{s=(f[i>>2]|0)==0;break}}else s=1}while(0);a=f[r>>2]|0;do{if(a){e=f[a+12>>2]|0;if((e|0)==(f[a+16>>2]|0))e=lM[f[(f[a>>2]|0)+36>>2]&127](a)|0;else e=f[e>>2]|0;if((e|0)!=-1)if(s){s=a;break}else{s=a;break e}else{f[r>>2]=0;l=15;break}}else l=15}while(0);if((l|0)==15){l=0;if(s){s=0;break}else s=0}e=f[i>>2]|0;a=f[e+12>>2]|0;if((a|0)==(f[e+16>>2]|0))e=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;else e=f[a>>2]|0;if(!(uM[f[(f[n>>2]|0)+12>>2]&63](n,8192,e)|0))break;e=f[i>>2]|0;a=e+12|0;s=f[a>>2]|0;if((s|0)==(f[e+16>>2]|0)){lM[f[(f[e>>2]|0)+40>>2]&127](e)|0;continue}else{f[a>>2]=s+4;continue}}e=f[i>>2]|0;do{if(e){a=f[e+12>>2]|0;if((a|0)==(f[e+16>>2]|0))e=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;else e=f[a>>2]|0;if((e|0)==-1){f[i>>2]=0;a=1;break}else{a=(f[i>>2]|0)==0;break}}else a=1}while(0);do{if(s){e=f[s+12>>2]|0;if((e|0)==(f[s+16>>2]|0))e=lM[f[(f[s>>2]|0)+36>>2]&127](s)|0;else e=f[e>>2]|0;if((e|0)!=-1)if(a)break;else{l=39;break}else{f[r>>2]=0;l=37;break}}else l=37}while(0);if((l|0)==37?a:0)l=39;if((l|0)==39)f[t>>2]=f[t>>2]|2;return}function Il(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0;d=c;c=c+16|0;o=d+4|0;u=d;h=e+8|0;h=lM[f[(f[h>>2]|0)+8>>2]&127](h)|0;e=t[h>>0]|0;if(!(e&1))l=(e&255)>>>1;else l=f[h+4>>2]|0;e=t[h+12>>0]|0;if(!(e&1))e=(e&255)>>>1;else e=f[h+16>>2]|0;do{if((l|0)!=(0-e|0)){f[u>>2]=f[n>>2];f[o>>2]=f[u>>2];e=Kw(r,o,h,h+24|0,s,a,0)|0;l=f[i>>2]|0;if((e|0)==(h|0)&(l|0)==12){f[i>>2]=0;break}if((l|0)<12&(e-h|0)==12)f[i>>2]=l+12}else f[a>>2]=f[a>>2]|4}while(0);c=d;return}function Dl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=l_(r,e,n,a,2)|0;r=f[n>>2]|0;if((e|0)<61&(r&4|0)==0)f[i>>2]=e;else f[n>>2]=r|4;c=s;return}function Nl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=l_(r,e,n,a,1)|0;r=f[n>>2]|0;if((e|0)<7&(r&4|0)==0)f[i>>2]=e;else f[n>>2]=r|4;c=s;return}function Fl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;f[l>>2]=f[t>>2];f[e>>2]=f[l>>2];e=l_(r,e,n,a,4)|0;if(!(f[n>>2]&4))f[i>>2]=e+-1900;c=s;return}function Ul(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0,o=0;e=f[i>>2]|0;do{if(e){a=f[e+12>>2]|0;if((a|0)==(f[e+16>>2]|0))e=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;else e=f[a>>2]|0;if((e|0)==-1){f[i>>2]=0;s=1;break}else{s=(f[i>>2]|0)==0;break}}else s=1}while(0);a=f[r>>2]|0;do{if(a){e=f[a+12>>2]|0;if((e|0)==(f[a+16>>2]|0))e=lM[f[(f[a>>2]|0)+36>>2]&127](a)|0;else e=f[e>>2]|0;if((e|0)!=-1)if(s){l=a;o=17;break}else{o=16;break}else{f[r>>2]=0;o=14;break}}else o=14}while(0);if((o|0)==14)if(s)o=16;else{l=0;o=17}e:do{if((o|0)==16)f[t>>2]=f[t>>2]|6;else if((o|0)==17){e=f[i>>2]|0;a=f[e+12>>2]|0;if((a|0)==(f[e+16>>2]|0))e=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;else e=f[a>>2]|0;if((uM[f[(f[n>>2]|0)+52>>2]&63](n,e,0)|0)<<24>>24!=37){f[t>>2]=f[t>>2]|4;break}e=f[i>>2]|0;a=e+12|0;s=f[a>>2]|0;if((s|0)==(f[e+16>>2]|0)){lM[f[(f[e>>2]|0)+40>>2]&127](e)|0;e=f[i>>2]|0;if(!e)a=1;else o=25}else{f[a>>2]=s+4;o=25}do{if((o|0)==25){a=f[e+12>>2]|0;if((a|0)==(f[e+16>>2]|0))e=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;else e=f[a>>2]|0;if((e|0)==-1){f[i>>2]=0;a=1;break}else{a=(f[i>>2]|0)==0;break}}}while(0);do{if(l){e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0))e=lM[f[(f[l>>2]|0)+36>>2]&127](l)|0;else e=f[e>>2]|0;if((e|0)!=-1)if(a)break e;else break;else{f[r>>2]=0;o=37;break}}else o=37}while(0);if((o|0)==37?!a:0)break;f[t>>2]=f[t>>2]|2}}while(0);return}function jl(e){e=e|0;Hl(e+8|0);return}function Hl(e){e=e|0;var i=0,r=0,t=0;i=f[e>>2]|0;_=0;r=Me(3)|0;t=_;_=0;do{if(!(t&1)){if((i|0)!=(r|0)?(_=0,ue(188,f[e>>2]|0),t=_,_=0,t&1):0)break;return}}while(0);t=ze(0)|0;Fi(t)}function zl(e){e=e|0;Hl(e+8|0);Ip(e);return}function Yl(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0;u=c;c=c+112|0;o=u+4|0;r=u;f[r>>2]=o+100;ql(e+8|0,o,r,a,s,l);a=f[r>>2]|0;r=f[i>>2]|0;if((o|0)!=(a|0))do{l=t[o>>0]|0;do{if(r){n=r+24|0;s=f[n>>2]|0;if((s|0)==(f[r+28>>2]|0)){i=(kM[f[(f[r>>2]|0)+52>>2]&63](r,l&255)|0)==-1;r=i?0:r;break}else{f[n>>2]=s+1;t[s>>0]=l;break}}else r=0}while(0);o=o+1|0}while((o|0)!=(a|0));c=u;return r|0}function ql(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0;h=c;c=c+16|0;u=h;t[u>>0]=37;l=u+1|0;t[l>>0]=a;o=u+2|0;t[o>>0]=s;t[u+3>>0]=0;if(s<<24>>24){t[l>>0]=s;t[o>>0]=a}f[r>>2]=i+(Ve(i|0,(f[r>>2]|0)-i|0,u|0,n|0,f[e>>2]|0)|0);c=h;return}function Xl(e){e=e|0;Hl(e+8|0);return}function Vl(e){e=e|0;Hl(e+8|0);Ip(e);return}function Gl(e,i,r,t,n,a,s){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;var l=0;l=c;c=c+416|0;t=l+8|0;r=l;f[r>>2]=t+400;Kl(e+8|0,t,r,n,a,s);e=f[r>>2]|0;r=f[i>>2]|0;if((t|0)!=(e|0)){n=t;do{t=f[n>>2]|0;if(!r)r=0;else{a=r+24|0;s=f[a>>2]|0;if((s|0)==(f[r+28>>2]|0))t=kM[f[(f[r>>2]|0)+52>>2]&63](r,t)|0;else{f[a>>2]=s+4;f[s>>2]=t}r=(t|0)==-1?0:r}n=n+4|0}while((n|0)!=(e|0))}c=l;return r|0}function Kl(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+128|0;u=s+16|0;h=s+12|0;l=s;o=s+8|0;f[h>>2]=u+100;ql(e,u,h,t,n,a);n=l;f[n>>2]=0;f[n+4>>2]=0;f[o>>2]=u;n=(f[r>>2]|0)-i>>2;a=Wg(f[e>>2]|0)|0;_=0;n=Ee(18,i|0,o|0,n|0,l|0)|0;e=_;_=0;if(e&1){n=ze()|0;if((a|0)!=0?(_=0,de(75,a|0)|0,h=_,_=0,h&1):0){h=ze(0)|0;Fi(h)}$e(n|0)}if((a|0)!=0?(_=0,de(75,a|0)|0,h=_,_=0,h&1):0){h=ze(0)|0;Fi(h)}if((n|0)==-1)Xo(58955);else{f[r>>2]=i+(n<<2);c=s;return}}function Wl(e){e=e|0;return}function Zl(e){e=e|0;Ip(e);return}function Jl(e){e=e|0;return 127}function Ql(e){e=e|0;return 127}function $l(e,i){e=e|0;i=i|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}function eo(e,i){e=e|0;i=i|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}function io(e,i){e=e|0;i=i|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}function ro(e,i){e=e|0;i=i|0;Ph(e,1,45);return}function to(e){e=e|0;return 0}function no(e,i){e=e|0;i=i|0;t[e>>0]=2;t[e+1>>0]=3;t[e+2>>0]=0;t[e+3>>0]=4;return}function fo(e,i){e=e|0;i=i|0;t[e>>0]=2;t[e+1>>0]=3;t[e+2>>0]=0;t[e+3>>0]=4;return}function ao(e){e=e|0;return}function so(e){e=e|0;Ip(e);return}function lo(e){e=e|0;return 127}function oo(e){e=e|0;return 127}function uo(e,i){e=e|0;i=i|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}function co(e,i){e=e|0;i=i|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}function ho(e,i){e=e|0;i=i|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}function bo(e,i){e=e|0;i=i|0;Ph(e,1,45);return}function ko(e){e=e|0;return 0}function wo(e,i){e=e|0;i=i|0;t[e>>0]=2;t[e+1>>0]=3;t[e+2>>0]=0;t[e+3>>0]=4;return}function _o(e,i){e=e|0;i=i|0;t[e>>0]=2;t[e+1>>0]=3;t[e+2>>0]=0;t[e+3>>0]=4;return}function mo(e){e=e|0;return}function vo(e){e=e|0;Ip(e);return}function po(e){e=e|0;return 2147483647}function go(e){e=e|0;return 2147483647}function yo(e,i){e=e|0;i=i|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}function Mo(e,i){e=e|0;i=i|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}function Eo(e,i){e=e|0;i=i|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}function Ao(e,i){e=e|0;i=i|0;Vh(e,1,45);return}function So(e){e=e|0;return 0}function To(e,i){e=e|0;i=i|0;t[e>>0]=2;t[e+1>>0]=3;t[e+2>>0]=0;t[e+3>>0]=4;return}function Co(e,i){e=e|0;i=i|0;t[e>>0]=2;t[e+1>>0]=3;t[e+2>>0]=0;t[e+3>>0]=4;return}function Ro(e){e=e|0;return}function Lo(e){e=e|0;Ip(e);return}function xo(e){e=e|0;return 2147483647}function Po(e){e=e|0;return 2147483647}function Oo(e,i){e=e|0;i=i|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}function Bo(e,i){e=e|0;i=i|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}function Io(e,i){e=e|0;i=i|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}function Do(e,i){e=e|0;i=i|0;Vh(e,1,45);return}function No(e){e=e|0;return 0}function Fo(e,i){e=e|0;i=i|0;t[e>>0]=2;t[e+1>>0]=3;t[e+2>>0]=0;t[e+3>>0]=4;return}function Uo(e,i){e=e|0;i=i|0;t[e>>0]=2;t[e+1>>0]=3;t[e+2>>0]=0;t[e+3>>0]=4;return}function jo(e){e=e|0;return}function Ho(e){e=e|0;Ip(e);return}function zo(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0;T=c;c=c+240|0;A=T+24|0;S=T;e=T+136|0;R=T+16|0;E=T+12|0;C=T+8|0;b=T+134|0;u=T+4|0;M=T+124|0;f[R>>2]=e;L=R+4|0;f[L>>2]=189;h=e+100|0;_=0;o=de(68,a|0)|0;y=_;_=0;if(!(y&1)){f[C>>2]=o;_=0;e=pe(37,C|0,44220)|0;y=_;_=0;e:do{if(!(y&1)?(t[b>>0]=0,f[u>>2]=f[r>>2],d=f[a+4>>2]|0,_=0,f[A>>2]=f[u>>2],d=be(1,i|0,A|0,n|0,C|0,d|0,s|0,b|0,e|0,R|0,E|0,h|0)|0,y=_,_=0,!(y&1)):0){i:do{if(d){_=0;Ee(f[(f[e>>2]|0)+32>>2]|0,e|0,58976,58986,M|0)|0;y=_;_=0;if(y&1){P=10;break e}u=f[E>>2]|0;h=f[R>>2]|0;e=u-h|0;if((e|0)>98){e=Lc(e+2|0)|0;o=e;if(!e){_=0;Se(6);y=_;_=0;if(!(y&1)){e=0;P=13}}else P=13}else{o=0;e=A;P=13}do{if((P|0)==13){if(t[b>>0]|0){t[e>>0]=45;e=e+1|0}g=M+10|0;y=M;if(h>>>0<u>>>0){d=M+1|0;n=d+1|0;a=n+1|0;b=a+1|0;k=b+1|0;w=k+1|0;m=w+1|0;v=m+1|0;p=v+1|0;do{u=t[h>>0]|0;do{if((t[M>>0]|0)!=u<<24>>24)if((t[d>>0]|0)!=u<<24>>24)if((t[n>>0]|0)!=u<<24>>24)if((t[a>>0]|0)!=u<<24>>24)if((t[b>>0]|0)==u<<24>>24)u=b;else{if((t[k>>0]|0)==u<<24>>24){u=k;break}if((t[w>>0]|0)==u<<24>>24){u=w;break}if((t[m>>0]|0)==u<<24>>24){u=m;break}if((t[v>>0]|0)==u<<24>>24){u=v;break}u=(t[p>>0]|0)==u<<24>>24?p:g}else u=a;else u=n;else u=d;else u=M}while(0);t[e>>0]=t[58976+(u-y)>>0]|0;h=h+1|0;e=e+1|0}while(h>>>0<(f[E>>2]|0)>>>0)}t[e>>0]=0;f[S>>2]=l;if((Py(A,58987,S)|0)!=1?(_=0,ue(190,58991),l=_,_=0,l&1):0)break;if(o)xc(o);break i}}while(0);e=ze()|0;if(!o){u=e;o=R;break e}xc(o);u=e;o=R;break e}}while(0);e=f[i>>2]|0;do{if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;e=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;l=_;_=0;if(l&1){P=10;break e}if((e|0)==-1){f[i>>2]=0;e=0;break}else{e=f[i>>2]|0;break}}}else e=0}while(0);o=(e|0)==0;e=f[r>>2]|0;do{if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;e=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;l=_;_=0;if(l&1){P=10;break e}if((e|0)==-1){f[r>>2]=0;P=37;break}}if(!o)P=38}else P=37}while(0);if((P|0)==37?o:0)P=38;if((P|0)==38)f[s>>2]=f[s>>2]|2;o=f[i>>2]|0;bh(f[C>>2]|0)|0;e=f[R>>2]|0;f[R>>2]=0;if((e|0)!=0?(_=0,ue(f[L>>2]|0,e|0),P=_,_=0,P&1):0){P=ze(0)|0;Fi(P)}c=T;return o|0}else P=10}while(0);if((P|0)==10){u=ze()|0;o=R}bh(f[C>>2]|0)|0;e=f[o>>2]|0;f[o>>2]=0;if(!e)x=u;else{o=f[L>>2]|0;P=45}}else{u=ze()|0;f[R>>2]=0;o=189;P=45}if((P|0)==45){_=0;ue(o|0,e|0);P=_;_=0;if(P&1){P=ze(0)|0;Fi(P)}else x=u}$e(x|0);return 0}function Yo(e){e=e|0;return}function qo(e,i,r,s,l,o,u,h,d,b,k){e=e|0;i=i|0;r=r|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;d=d|0;b=b|0;k=k|0;var w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0,V=0,G=0,K=0,W=0,Z=0,J=0,Q=0,$=0,ee=0,ie=0,re=0,te=0;ie=c;c=c+512|0;H=ie+88|0;p=ie+96|0;te=ie+80|0;X=ie+72|0;q=ie+68|0;V=ie+500|0;z=ie+497|0;G=ie+496|0;Z=ie+56|0;ee=ie+44|0;Q=ie+32|0;J=ie+20|0;$=ie+8|0;Y=ie+4|0;W=ie;f[H>>2]=k;f[te>>2]=p;re=te+4|0;f[re>>2]=189;f[X>>2]=p;f[q>>2]=p+400;f[Z>>2]=0;f[Z+4>>2]=0;f[Z+8>>2]=0;f[ee>>2]=0;f[ee+4>>2]=0;f[ee+8>>2]=0;f[Q>>2]=0;f[Q+4>>2]=0;f[Q+8>>2]=0;f[J>>2]=0;f[J+4>>2]=0;f[J+8>>2]=0;f[$>>2]=0;f[$+4>>2]=0;f[$+8>>2]=0;_=0;ve(1,r|0,s|0,V|0,z|0,G|0,Z|0,ee|0,Q|0,J|0,Y|0);j=_;_=0;e:do{if(j&1)h=ze()|0;else{f[b>>2]=f[d>>2];B=h+8|0;I=Q+4|0;D=J+4|0;N=J+8|0;F=J+1|0;U=Q+8|0;j=Q+1|0;A=(l&512|0)!=0;S=ee+8|0;T=ee+1|0;C=ee+4|0;R=$+4|0;L=$+8|0;x=$+1|0;P=V+3|0;O=Z+4|0;E=0;v=0;i:while(1){k=f[e>>2]|0;do{if(k){if((f[k+12>>2]|0)==(f[k+16>>2]|0)){_=0;k=de(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;M=_;_=0;if(M&1){K=24;break i}if((k|0)==-1){f[e>>2]=0;k=0;break}else{k=f[e>>2]|0;break}}}else k=0}while(0);k=(k|0)==0;h=f[i>>2]|0;do{if(h){if((f[h+12>>2]|0)!=(f[h+16>>2]|0))if(k){M=h;break}else{K=235;break i}_=0;r=de(f[(f[h>>2]|0)+36>>2]|0,h|0)|0;M=_;_=0;if(M&1){K=24;break i}if((r|0)!=-1)if(k){M=h;break}else{K=235;break i}else{f[i>>2]=0;K=15;break}}else K=15}while(0);if((K|0)==15){K=0;if(k){K=235;break}else M=0}r:do{switch(t[V+E>>0]|0){case 1:{if((E|0)!=3){k=f[e>>2]|0;h=f[k+12>>2]|0;if((h|0)==(f[k+16>>2]|0)){_=0;k=de(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;K=_;_=0;if(K&1){K=24;break i}}else k=a[h>>0]|0;if((k&255)<<24>>24<=-1){K=40;break i}if(!(n[(f[B>>2]|0)+(k<<24>>24<<1)>>1]&8192)){K=40;break i}k=f[e>>2]|0;h=k+12|0;r=f[h>>2]|0;if((r|0)==(f[k+16>>2]|0)){_=0;k=de(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;K=_;_=0;if(K&1){K=24;break i}}else{f[h>>2]=r+1;k=a[r>>0]|0}_=0;ce(67,$|0,k&255|0);K=_;_=0;if(K&1){K=24;break i}else{k=M;s=M;K=42}}break}case 0:{if((E|0)!=3){k=M;s=M;K=42}break}case 3:{h=t[Q>>0]|0;k=(h&1)==0?(h&255)>>>1:f[I>>2]|0;r=t[J>>0]|0;s=(r&1)==0?(r&255)>>>1:f[D>>2]|0;if((k|0)!=(0-s|0)){if(!k){k=f[e>>2]|0;h=f[k+12>>2]|0;if((h|0)==(f[k+16>>2]|0)){_=0;k=de(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;M=_;_=0;if(M&1){K=24;break i}h=t[J>>0]|0}else{k=a[h>>0]|0;h=r}if((k&255)<<24>>24!=(t[((h&1)==0?F:f[N>>2]|0)>>0]|0))break r;k=f[e>>2]|0;h=k+12|0;r=f[h>>2]|0;if((r|0)==(f[k+16>>2]|0)){_=0;de(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;M=_;_=0;if(M&1){K=24;break i}}else f[h>>2]=r+1;t[u>>0]=1;M=t[J>>0]|0;v=((M&1)==0?(M&255)>>>1:f[D>>2]|0)>>>0>1?J:v;break r}l=f[e>>2]|0;w=f[l+12>>2]|0;r=f[l+16>>2]|0;k=(w|0)==(r|0);if(!s){if(k){_=0;k=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;M=_;_=0;if(M&1){K=24;break i}h=t[Q>>0]|0}else k=a[w>>0]|0;if((k&255)<<24>>24!=(t[((h&1)==0?j:f[U>>2]|0)>>0]|0)){t[u>>0]=1;break r}k=f[e>>2]|0;h=k+12|0;r=f[h>>2]|0;if((r|0)==(f[k+16>>2]|0)){_=0;de(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;M=_;_=0;if(M&1){K=24;break i}}else f[h>>2]=r+1;M=t[Q>>0]|0;v=((M&1)==0?(M&255)>>>1:f[I>>2]|0)>>>0>1?Q:v;break r}if(k){_=0;k=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;M=_;_=0;if(M&1){K=24;break i}r=f[e>>2]|0;h=t[Q>>0]|0;l=r;w=f[r+12>>2]|0;r=f[r+16>>2]|0}else k=a[w>>0]|0;s=l+12|0;r=(w|0)==(r|0);if((k&255)<<24>>24==(t[((h&1)==0?j:f[U>>2]|0)>>0]|0)){if(r){_=0;de(f[(f[l>>2]|0)+40>>2]|0,l|0)|0;M=_;_=0;if(M&1){K=24;break i}}else f[s>>2]=w+1;M=t[Q>>0]|0;v=((M&1)==0?(M&255)>>>1:f[I>>2]|0)>>>0>1?Q:v;break r}if(r){_=0;k=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;M=_;_=0;if(M&1){K=24;break i}}else k=a[w>>0]|0;if((k&255)<<24>>24!=(t[((t[J>>0]&1)==0?F:f[N>>2]|0)>>0]|0)){K=104;break i}k=f[e>>2]|0;h=k+12|0;r=f[h>>2]|0;if((r|0)==(f[k+16>>2]|0)){_=0;de(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;M=_;_=0;if(M&1){K=24;break i}}else f[h>>2]=r+1;t[u>>0]=1;M=t[J>>0]|0;v=((M&1)==0?(M&255)>>>1:f[D>>2]|0)>>>0>1?J:v}break}case 2:{if(!(E>>>0<2|(v|0)!=0)?!(A|(E|0)==2&(t[P>>0]|0)!=0):0){v=0;break r}g=t[ee>>0]|0;k=(g&1)==0;y=f[S>>2]|0;r=k?T:y;m=r;t:do{if((E|0)!=0?(a[V+(E+-1)>>0]|0)<2:0){w=k?(g&255)>>>1:f[C>>2]|0;s=r+w|0;l=f[B>>2]|0;n:do{if(!w)h=m;else{w=r;h=m;do{k=t[w>>0]|0;if(k<<24>>24<=-1)break n;if(!(n[l+(k<<24>>24<<1)>>1]&8192))break n;w=w+1|0;h=w}while((w|0)!=(s|0))}}while(0);s=h-m|0;l=t[$>>0]|0;k=(l&1)==0;l=k?(l&255)>>>1:f[R>>2]|0;if(l>>>0>=s>>>0){k=k?x:f[L>>2]|0;w=k+l|0;if((h|0)!=(m|0)){k=k+(l-s)|0;while(1){if((t[k>>0]|0)!=(t[r>>0]|0)){h=m;break t}k=k+1|0;if((k|0)==(w|0))break;else r=r+1|0}}}else h=m}else h=m}while(0);k=(g&1)==0;k=(k?T:y)+(k?(g&255)>>>1:f[C>>2]|0)|0;t:do{if((h|0)!=(k|0)){l=M;s=M;k=h;while(1){h=f[e>>2]|0;do{if(h){if((f[h+12>>2]|0)==(f[h+16>>2]|0)){_=0;h=de(f[(f[h>>2]|0)+36>>2]|0,h|0)|0;M=_;_=0;if(M&1){K=21;break i}if((h|0)==-1){f[e>>2]=0;h=0;break}else{h=f[e>>2]|0;break}}}else h=0}while(0);r=(h|0)==0;do{if(s){if((f[s+12>>2]|0)!=(f[s+16>>2]|0))if(r){h=l;w=s;break}else break t;_=0;h=de(f[(f[s>>2]|0)+36>>2]|0,s|0)|0;M=_;_=0;if(M&1){K=21;break i}if((h|0)!=-1)if(r^(l|0)==0){h=l;w=l;break}else break t;else{f[i>>2]=0;h=0;K=131;break}}else{h=l;K=131}}while(0);if((K|0)==131){K=0;if(r)break t;else w=0}r=f[e>>2]|0;s=f[r+12>>2]|0;if((s|0)==(f[r+16>>2]|0)){_=0;r=de(f[(f[r>>2]|0)+36>>2]|0,r|0)|0;M=_;_=0;if(M&1){K=21;break i}}else r=a[s>>0]|0;if((r&255)<<24>>24!=(t[k>>0]|0))break t;r=f[e>>2]|0;s=r+12|0;l=f[s>>2]|0;if((l|0)==(f[r+16>>2]|0)){_=0;de(f[(f[r>>2]|0)+40>>2]|0,r|0)|0;M=_;_=0;if(M&1){K=21;break i}}else f[s>>2]=l+1;k=k+1|0;r=t[ee>>0]|0;M=(r&1)==0;r=(M?T:f[S>>2]|0)+(M?(r&255)>>>1:f[C>>2]|0)|0;if((k|0)==(r|0)){k=r;break}else{l=h;s=w}}}}while(0);if(A?(M=t[ee>>0]|0,y=(M&1)==0,(k|0)!=((y?T:f[S>>2]|0)+(y?(M&255)>>>1:f[C>>2]|0)|0)):0){K=143;break i}break}case 4:{m=t[G>>0]|0;h=M;l=M;k=0;t:while(1){r=f[e>>2]|0;do{if(r){if((f[r+12>>2]|0)==(f[r+16>>2]|0)){_=0;r=de(f[(f[r>>2]|0)+36>>2]|0,r|0)|0;M=_;_=0;if(M&1){K=23;break i}if((r|0)==-1){f[e>>2]=0;r=0;break}else{r=f[e>>2]|0;break}}}else r=0}while(0);s=(r|0)==0;do{if(l){if((f[l+12>>2]|0)!=(f[l+16>>2]|0))if(s){w=h;break}else{s=h;break t}_=0;r=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;M=_;_=0;if(M&1){K=23;break i}if((r|0)!=-1)if(s^(h|0)==0){w=h;l=h;break}else{s=h;break t}else{f[i>>2]=0;h=0;K=156;break}}else K=156}while(0);if((K|0)==156){K=0;if(s){s=h;break}else{w=h;l=0}}h=f[e>>2]|0;r=f[h+12>>2]|0;if((r|0)==(f[h+16>>2]|0)){_=0;h=de(f[(f[h>>2]|0)+36>>2]|0,h|0)|0;M=_;_=0;if(M&1){K=23;break i}}else h=a[r>>0]|0;r=h&255;if(r<<24>>24>-1?(n[(f[B>>2]|0)+(h<<24>>24<<1)>>1]&2048)!=0:0){h=f[b>>2]|0;if((h|0)==(f[H>>2]|0)){_=0;Ae(12,d|0,b|0,H|0);M=_;_=0;if(M&1){K=23;break i}h=f[b>>2]|0}f[b>>2]=h+1;t[h>>0]=r;k=k+1|0}else{M=t[Z>>0]|0;if(!(r<<24>>24==m<<24>>24&((k|0)!=0?(((M&1)==0?(M&255)>>>1:f[O>>2]|0)|0)!=0:0))){s=w;break}if((p|0)==(f[q>>2]|0)){_=0;Ae(13,te|0,X|0,q|0);M=_;_=0;if(M&1){K=23;break i}p=f[X>>2]|0}M=p+4|0;f[X>>2]=M;f[p>>2]=k;p=M;k=0}h=f[e>>2]|0;r=h+12|0;s=f[r>>2]|0;if((s|0)==(f[h+16>>2]|0)){_=0;de(f[(f[h>>2]|0)+40>>2]|0,h|0)|0;M=_;_=0;if(M&1){K=23;break i}else{h=w;continue}}else{f[r>>2]=s+1;h=w;continue}}if((k|0)!=0?(f[te>>2]|0)!=(p|0):0){if((p|0)==(f[q>>2]|0)){_=0;Ae(13,te|0,X|0,q|0);M=_;_=0;if(M&1){K=24;break i}p=f[X>>2]|0}M=p+4|0;f[X>>2]=M;f[p>>2]=k;p=M}w=f[Y>>2]|0;if((w|0)>0){k=f[e>>2]|0;do{if(k){if((f[k+12>>2]|0)==(f[k+16>>2]|0)){_=0;k=de(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;M=_;_=0;if(M&1){K=24;break i}if((k|0)==-1){f[e>>2]=0;k=0;break}else{k=f[e>>2]|0;break}}}else k=0}while(0);k=(k|0)==0;do{if(s){if((f[s+12>>2]|0)==(f[s+16>>2]|0)){_=0;h=de(f[(f[s>>2]|0)+36>>2]|0,s|0)|0;M=_;_=0;if(M&1){K=24;break i}if((h|0)==-1){f[i>>2]=0;K=193;break}}if(!k){K=198;break i}}else K=193}while(0);if((K|0)==193){K=0;if(k){K=198;break i}else s=0}k=f[e>>2]|0;h=f[k+12>>2]|0;if((h|0)==(f[k+16>>2]|0)){_=0;k=de(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;M=_;_=0;if(M&1){K=24;break i}}else k=a[h>>0]|0;if((k&255)<<24>>24!=(t[z>>0]|0)){K=198;break i}k=f[e>>2]|0;h=k+12|0;r=f[h>>2]|0;if((r|0)==(f[k+16>>2]|0)){_=0;de(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;M=_;_=0;if(M&1){K=24;break i}}else f[h>>2]=r+1;if((w|0)>0){l=s;r=s;m=w;while(1){k=f[e>>2]|0;do{if(k){if((f[k+12>>2]|0)==(f[k+16>>2]|0)){_=0;k=de(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;M=_;_=0;if(M&1){K=22;break i}if((k|0)==-1){f[e>>2]=0;k=0;break}else{k=f[e>>2]|0;break}}}else k=0}while(0);h=(k|0)==0;do{if(r){if((f[r+12>>2]|0)!=(f[r+16>>2]|0))if(h){k=l;w=r;break}else{K=222;break i}_=0;k=de(f[(f[r>>2]|0)+36>>2]|0,r|0)|0;M=_;_=0;if(M&1){K=22;break i}if((k|0)!=-1)if(h^(l|0)==0){k=l;w=l;break}else{K=222;break i}else{f[i>>2]=0;k=0;K=215;break}}else{k=l;K=215}}while(0);if((K|0)==215){K=0;if(h){K=222;break i}else w=0}h=f[e>>2]|0;r=f[h+12>>2]|0;if((r|0)==(f[h+16>>2]|0)){_=0;h=de(f[(f[h>>2]|0)+36>>2]|0,h|0)|0;M=_;_=0;if(M&1){K=22;break i}}else h=a[r>>0]|0;if((h&255)<<24>>24<=-1){K=222;break i}if(!(n[(f[B>>2]|0)+(h<<24>>24<<1)>>1]&2048)){K=222;break i}if((f[b>>2]|0)==(f[H>>2]|0)?(_=0,Ae(12,d|0,b|0,H|0),M=_,_=0,M&1):0){K=22;break i}h=f[e>>2]|0;r=f[h+12>>2]|0;if((r|0)==(f[h+16>>2]|0)){_=0;h=de(f[(f[h>>2]|0)+36>>2]|0,h|0)|0;M=_;_=0;if(M&1){K=22;break i}}else h=a[r>>0]|0;r=f[b>>2]|0;f[b>>2]=r+1;t[r>>0]=h;h=m;m=m+-1|0;f[Y>>2]=m;r=f[e>>2]|0;s=r+12|0;l=f[s>>2]|0;if((l|0)==(f[r+16>>2]|0)){_=0;de(f[(f[r>>2]|0)+40>>2]|0,r|0)|0;M=_;_=0;if(M&1){K=22;break i}}else f[s>>2]=l+1;if((h|0)<=1)break;else{l=k;r=w}}}}if((f[b>>2]|0)==(f[d>>2]|0)){K=233;break i}break}default:{}}}while(0);r:do{if((K|0)==42)while(1){K=0;h=f[e>>2]|0;do{if(h){if((f[h+12>>2]|0)==(f[h+16>>2]|0)){_=0;h=de(f[(f[h>>2]|0)+36>>2]|0,h|0)|0;M=_;_=0;if(M&1){K=20;break i}if((h|0)==-1){f[e>>2]=0;h=0;break}else{h=f[e>>2]|0;break}}}else h=0}while(0);r=(h|0)==0;do{if(s){if((f[s+12>>2]|0)!=(f[s+16>>2]|0))if(r){l=k;break}else break r;_=0;h=de(f[(f[s>>2]|0)+36>>2]|0,s|0)|0;M=_;_=0;if(M&1){K=20;break i}if((h|0)!=-1)if(r^(k|0)==0){l=k;s=k;break}else break r;else{f[i>>2]=0;k=0;K=54;break}}else K=54}while(0);if((K|0)==54){K=0;if(r)break r;else{l=k;s=0}}k=f[e>>2]|0;h=f[k+12>>2]|0;if((h|0)==(f[k+16>>2]|0)){_=0;k=de(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;M=_;_=0;if(M&1){K=20;break i}}else k=a[h>>0]|0;if((k&255)<<24>>24<=-1)break r;if(!(n[(f[B>>2]|0)+(k<<24>>24<<1)>>1]&8192))break r;k=f[e>>2]|0;h=k+12|0;r=f[h>>2]|0;if((r|0)==(f[k+16>>2]|0)){_=0;k=de(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;K=_;_=0;if(K&1){K=20;break i}}else{f[h>>2]=r+1;k=a[r>>0]|0}_=0;ce(67,$|0,k&255|0);K=_;_=0;if(K&1){K=20;break i}else{k=l;K=42}}}while(0);E=E+1|0;if(E>>>0>=4){K=235;break}}i:switch(K|0){case 20:{h=ze()|0;break e}case 21:{h=ze()|0;break e}case 22:{h=ze()|0;break e}case 23:{h=ze()|0;break e}case 24:{h=ze()|0;break e}case 40:{f[o>>2]=f[o>>2]|4;h=0;break}case 104:{f[o>>2]=f[o>>2]|4;h=0;break}case 143:{f[o>>2]=f[o>>2]|4;h=0;break}case 198:{f[o>>2]=f[o>>2]|4;h=0;break}case 222:{f[o>>2]=f[o>>2]|4;h=0;break}case 233:{f[o>>2]=f[o>>2]|4;h=0;break}case 235:{r:do{if(v){l=v+1|0;w=v+8|0;m=v+4|0;r=1;t:while(1){k=t[v>>0]|0;if(!(k&1))k=(k&255)>>>1;else k=f[m>>2]|0;if(r>>>0>=k>>>0)break r;k=f[e>>2]|0;do{if(k){if((f[k+12>>2]|0)==(f[k+16>>2]|0)){_=0;k=de(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;b=_;_=0;if(b&1){K=19;break t}if((k|0)==-1){f[e>>2]=0;k=0;break}else{k=f[e>>2]|0;break}}}else k=0}while(0);h=(k|0)==0;k=f[i>>2]|0;do{if(k){if((f[k+12>>2]|0)==(f[k+16>>2]|0)){_=0;k=de(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;b=_;_=0;if(b&1){K=19;break t}if((k|0)==-1){f[i>>2]=0;K=253;break}}if(!h){K=260;break t}}else K=253}while(0);if((K|0)==253?(K=0,h):0){K=260;break}k=f[e>>2]|0;h=f[k+12>>2]|0;if((h|0)==(f[k+16>>2]|0)){_=0;k=de(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;b=_;_=0;if(b&1){K=19;break}}else k=a[h>>0]|0;if(!(t[v>>0]&1))h=l;else h=f[w>>2]|0;if((k&255)<<24>>24!=(t[h+r>>0]|0)){K=260;break}k=r+1|0;h=f[e>>2]|0;r=h+12|0;s=f[r>>2]|0;if((s|0)==(f[h+16>>2]|0)){_=0;de(f[(f[h>>2]|0)+40>>2]|0,h|0)|0;b=_;_=0;if(b&1){K=19;break}else{r=k;continue}}else{f[r>>2]=s+1;r=k;continue}}if((K|0)==19){h=ze()|0;break e}else if((K|0)==260){f[o>>2]=f[o>>2]|4;h=0;break i}}}while(0);k=f[te>>2]|0;if((k|0)!=(p|0)?(f[W>>2]=0,Ko(Z,k,p,W),(f[W>>2]|0)!=0):0){f[o>>2]=f[o>>2]|4;h=0}else h=1;break}}Oh($);Oh(J);Oh(Q);Oh(ee);Oh(Z);k=f[te>>2]|0;f[te>>2]=0;if((k|0)!=0?(_=0,ue(f[re>>2]|0,k|0),te=_,_=0,te&1):0){te=ze(0)|0;Fi(te)}c=ie;return h|0}}while(0);Oh($);Oh(J);Oh(Q);Oh(ee);Oh(Z);k=f[te>>2]|0;f[te>>2]=0;if((k|0)!=0?(_=0,ue(f[re>>2]|0,k|0),te=_,_=0,te&1):0){te=ze(0)|0;Fi(te)}$e(h|0);return 0}function Xo(e){e=e|0;var i=0;i=He(8)|0;_=0;ce(90,i|0,e|0);e=_;_=0;if(e&1){e=ze()|0;je(i|0);$e(e|0)}else bi(i|0,616,80)}function Vo(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0;y=c;c=c+144|0;o=y+24|0;e=y+32|0;M=y+16|0;m=y+8|0;b=y+4|0;k=y+28|0;u=y;f[M>>2]=e;S=M+4|0;f[S>>2]=189;h=e+100|0;_=0;g=de(68,a|0)|0;d=_;_=0;if(!(d&1)){f[b>>2]=g;_=0;d=pe(37,b|0,44220)|0;e=_;_=0;e:do{if(!(e&1)?(t[k>>0]=0,v=f[r>>2]|0,f[u>>2]=v,w=f[a+4>>2]|0,p=v,_=0,f[o>>2]=f[u>>2],w=be(1,i|0,o|0,n|0,b|0,w|0,s|0,k|0,d|0,M|0,m|0,h|0)|0,a=_,_=0,!(a&1)):0){if(w){if(!(t[l>>0]&1)){t[l+1>>0]=0;t[l>>0]=0}else{t[f[l+8>>2]>>0]=0;f[l+4>>2]=0}if(t[k>>0]|0){_=0;e=pe(f[(f[d>>2]|0)+28>>2]|0,d|0,45)|0;a=_;_=0;if(a&1)break;_=0;ce(67,l|0,e|0);a=_;_=0;if(a&1)break}_=0;u=pe(f[(f[d>>2]|0)+28>>2]|0,d|0,48)|0;a=_;_=0;if(a&1)break;e=f[M>>2]|0;h=f[m>>2]|0;o=h+-1|0;i:do{if(e>>>0<o>>>0)do{if((t[e>>0]|0)!=u<<24>>24)break i;e=e+1|0}while(e>>>0<o>>>0)}while(0);_=0;ke(32,l|0,e|0,h|0)|0;l=_;_=0;if(l&1)break}e=f[i>>2]|0;do{if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;e=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;l=_;_=0;if(l&1)break e;if((e|0)==-1){f[i>>2]=0;e=0;break}else{e=f[i>>2]|0;break}}}else e=0}while(0);o=(e|0)==0;do{if(v){if((f[p+12>>2]|0)==(f[p+16>>2]|0)){_=0;e=de(f[(f[v>>2]|0)+36>>2]|0,p|0)|0;p=_;_=0;if(p&1)break e;if((e|0)==-1){f[r>>2]=0;A=29;break}}if(!o)A=30}else A=29}while(0);if((A|0)==29?o:0)A=30;if((A|0)==30)f[s>>2]=f[s>>2]|2;o=f[i>>2]|0;bh(g)|0;e=f[M>>2]|0;f[M>>2]=0;if((e|0)!=0?(_=0,ue(f[S>>2]|0,e|0),S=_,_=0,S&1):0){S=ze(0)|0;Fi(S)}c=y;return o|0}}while(0);o=ze()|0;bh(g)|0;e=f[M>>2]|0;f[M>>2]=0;if(!e)E=o;else A=36}else{o=ze()|0;f[M>>2]=0;A=36}if((A|0)==36){_=0;ue(f[S>>2]|0,e|0);S=_;_=0;if(S&1){S=ze(0)|0;Fi(S)}else E=o}$e(E|0);return 0}function Go(e,i,r,n,a,s,l,o,u,h){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;var d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;A=c;c=c+112|0;d=A+100|0;b=A+88|0;k=A+76|0;w=A+64|0;m=A+52|0;v=A+48|0;p=A+36|0;g=A+24|0;y=A+12|0;M=A;do{if(e){e=Du(i,43828)|0;aM[f[(f[e>>2]|0)+44>>2]&127](d,e);M=f[d>>2]|0;t[r>>0]=M;t[r+1>>0]=M>>8;t[r+2>>0]=M>>16;t[r+3>>0]=M>>24;aM[f[(f[e>>2]|0)+32>>2]&127](b,e);if(!(t[u>>0]&1)){t[u+1>>0]=0;t[u>>0]=0}else{t[f[u+8>>2]>>0]=0;f[u+4>>2]=0}_=0;ce(91,u|0,0);r=_;_=0;if(r&1){r=ze(0)|0;Fi(r)}f[u>>2]=f[b>>2];f[u+4>>2]=f[b+4>>2];f[u+8>>2]=f[b+8>>2];f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;Oh(b);aM[f[(f[e>>2]|0)+28>>2]&127](k,e);if(!(t[o>>0]&1)){t[o+1>>0]=0;t[o>>0]=0}else{t[f[o+8>>2]>>0]=0;f[o+4>>2]=0}_=0;ce(91,o|0,0);r=_;_=0;if(r&1){r=ze(0)|0;Fi(r)}f[o>>2]=f[k>>2];f[o+4>>2]=f[k+4>>2];f[o+8>>2]=f[k+8>>2];f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;Oh(k);t[n>>0]=lM[f[(f[e>>2]|0)+12>>2]&127](e)|0;t[a>>0]=lM[f[(f[e>>2]|0)+16>>2]&127](e)|0;aM[f[(f[e>>2]|0)+20>>2]&127](w,e);if(!(t[s>>0]&1)){t[s+1>>0]=0;t[s>>0]=0}else{t[f[s+8>>2]>>0]=0;f[s+4>>2]=0}_=0;ce(91,s|0,0);a=_;_=0;if(a&1){a=ze(0)|0;Fi(a)}f[s>>2]=f[w>>2];f[s+4>>2]=f[w+4>>2];f[s+8>>2]=f[w+8>>2];f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;Oh(w);aM[f[(f[e>>2]|0)+24>>2]&127](m,e);if(!(t[l>>0]&1)){t[l+1>>0]=0;t[l>>0]=0}else{t[f[l+8>>2]>>0]=0;f[l+4>>2]=0}_=0;ce(91,l|0,0);a=_;_=0;if(a&1){a=ze(0)|0;Fi(a)}else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;Oh(m);E=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;break}}else{e=Du(i,43764)|0;aM[f[(f[e>>2]|0)+44>>2]&127](v,e);v=f[v>>2]|0;t[r>>0]=v;t[r+1>>0]=v>>8;t[r+2>>0]=v>>16;t[r+3>>0]=v>>24;aM[f[(f[e>>2]|0)+32>>2]&127](p,e);if(!(t[u>>0]&1)){t[u+1>>0]=0;t[u>>0]=0}else{t[f[u+8>>2]>>0]=0;f[u+4>>2]=0}_=0;ce(91,u|0,0);r=_;_=0;if(r&1){r=ze(0)|0;Fi(r)}f[u>>2]=f[p>>2];f[u+4>>2]=f[p+4>>2];f[u+8>>2]=f[p+8>>2];f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;Oh(p);aM[f[(f[e>>2]|0)+28>>2]&127](g,e);if(!(t[o>>0]&1)){t[o+1>>0]=0;t[o>>0]=0}else{t[f[o+8>>2]>>0]=0;f[o+4>>2]=0}_=0;ce(91,o|0,0);r=_;_=0;if(r&1){r=ze(0)|0;Fi(r)}f[o>>2]=f[g>>2];f[o+4>>2]=f[g+4>>2];f[o+8>>2]=f[g+8>>2];f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;Oh(g);t[n>>0]=lM[f[(f[e>>2]|0)+12>>2]&127](e)|0;t[a>>0]=lM[f[(f[e>>2]|0)+16>>2]&127](e)|0;aM[f[(f[e>>2]|0)+20>>2]&127](y,e);if(!(t[s>>0]&1)){t[s+1>>0]=0;t[s>>0]=0}else{t[f[s+8>>2]>>0]=0;f[s+4>>2]=0}_=0;ce(91,s|0,0);a=_;_=0;if(a&1){a=ze(0)|0;Fi(a)}f[s>>2]=f[y>>2];f[s+4>>2]=f[y+4>>2];f[s+8>>2]=f[y+8>>2];f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;Oh(y);aM[f[(f[e>>2]|0)+24>>2]&127](M,e);if(!(t[l>>0]&1)){t[l+1>>0]=0;t[l>>0]=0}else{t[f[l+8>>2]>>0]=0;f[l+4>>2]=0}_=0;ce(91,l|0,0);a=_;_=0;if(a&1){a=ze(0)|0;Fi(a)}else{f[l>>2]=f[M>>2];f[l+4>>2]=f[M+4>>2];f[l+8>>2]=f[M+8>>2];f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;Oh(M);E=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;break}}}while(0);f[h>>2]=E;c=A;return}function Ko(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0;a=t[e>>0]|0;l=e+4|0;s=f[l>>2]|0;e:do{if(((a&1)==0?(a&255)>>>1:s)|0){if((i|0)!=(r|0)){a=r+-4|0;if(a>>>0>i>>>0){s=i;do{o=f[s>>2]|0;f[s>>2]=f[a>>2];f[a>>2]=o;s=s+4|0;a=a+-4|0}while(s>>>0<a>>>0)}a=t[e>>0]|0;s=f[l>>2]|0}o=(a&1)==0;l=o?e+1|0:f[e+8>>2]|0;r=r+-4|0;e=l+(o?(a&255)>>>1:s)|0;s=t[l>>0]|0;a=s<<24>>24<1|s<<24>>24==127;i:do{if(r>>>0>i>>>0){while(1){if(!a?(s<<24>>24|0)!=(f[i>>2]|0):0)break;l=(e-l|0)>1?l+1|0:l;i=i+4|0;s=t[l>>0]|0;a=s<<24>>24<1|s<<24>>24==127;if(i>>>0>=r>>>0)break i}f[n>>2]=4;break e}}while(0);if(!a?((f[r>>2]|0)+-1|0)>>>0>=s<<24>>24>>>0:0)f[n>>2]=4}}while(0);return}function Wo(e){e=e|0;return}function Zo(e){e=e|0;Ip(e);return}function Jo(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0;T=c;c=c+576|0;M=T+424|0;S=T;e=T+24|0;R=T+16|0;E=T+12|0;C=T+8|0;b=T+464|0;u=T+4|0;A=T+468|0;f[R>>2]=e;x=R+4|0;f[x>>2]=189;h=e+400|0;_=0;o=de(68,a|0)|0;y=_;_=0;if(!(y&1)){f[C>>2]=o;_=0;e=pe(37,C|0,44212)|0;y=_;_=0;e:do{if(!(y&1)?(t[b>>0]=0,f[u>>2]=f[r>>2],d=f[a+4>>2]|0,_=0,f[M>>2]=f[u>>2],d=be(2,i|0,M|0,n|0,C|0,d|0,s|0,b|0,e|0,R|0,E|0,h|0)|0,y=_,_=0,!(y&1)):0){i:do{if(d){_=0;Ee(f[(f[e>>2]|0)+48>>2]|0,e|0,59007,59017,M|0)|0;y=_;_=0;if(y&1){P=10;break e}u=f[E>>2]|0;h=f[R>>2]|0;e=u-h|0;if((e|0)>392){e=Lc((e>>2)+2|0)|0;o=e;if(!e){_=0;Se(6);y=_;_=0;if(!(y&1)){e=0;P=13}}else P=13}else{o=0;e=A;P=13}do{if((P|0)==13){if(t[b>>0]|0){t[e>>0]=45;e=e+1|0}g=M+40|0;y=M;if(h>>>0<u>>>0){d=M+4|0;n=d+4|0;a=n+4|0;b=a+4|0;k=b+4|0;w=k+4|0;m=w+4|0;v=m+4|0;p=v+4|0;do{u=f[h>>2]|0;do{if((f[M>>2]|0)!=(u|0))if((f[d>>2]|0)!=(u|0))if((f[n>>2]|0)!=(u|0))if((f[a>>2]|0)!=(u|0))if((f[b>>2]|0)==(u|0))u=b;else{if((f[k>>2]|0)==(u|0)){u=k;break}if((f[w>>2]|0)==(u|0)){u=w;break}if((f[m>>2]|0)==(u|0)){u=m;break}if((f[v>>2]|0)==(u|0)){u=v;break}u=(f[p>>2]|0)==(u|0)?p:g}else u=a;else u=n;else u=d;else u=M}while(0);t[e>>0]=t[59007+(u-y>>2)>>0]|0;h=h+4|0;e=e+1|0}while(h>>>0<(f[E>>2]|0)>>>0)}t[e>>0]=0;f[S>>2]=l;if((Py(A,58987,S)|0)!=1?(_=0,ue(190,58991),l=_,_=0,l&1):0)break;if(o)xc(o);break i}}while(0);e=ze()|0;if(!o){u=e;o=R;break e}xc(o);u=e;o=R;break e}}while(0);e=f[i>>2]|0;do{if(e){o=f[e+12>>2]|0;if((o|0)==(f[e+16>>2]|0)){_=0;e=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;l=_;_=0;if(l&1){P=10;break e}}else e=f[o>>2]|0;if((e|0)==-1){f[i>>2]=0;u=1;break}else{u=(f[i>>2]|0)==0;break}}else u=1}while(0);e=f[r>>2]|0;do{if(e){o=f[e+12>>2]|0;if((o|0)==(f[e+16>>2]|0)){_=0;e=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;l=_;_=0;if(l&1){P=10;break e}}else e=f[o>>2]|0;if((e|0)!=-1)if(u)break;else{P=40;break}else{f[r>>2]=0;P=38;break}}else P=38}while(0);if((P|0)==38?u:0)P=40;if((P|0)==40)f[s>>2]=f[s>>2]|2;o=f[i>>2]|0;bh(f[C>>2]|0)|0;e=f[R>>2]|0;f[R>>2]=0;if((e|0)!=0?(_=0,ue(f[x>>2]|0,e|0),P=_,_=0,P&1):0){P=ze(0)|0;Fi(P)}c=T;return o|0}else P=10}while(0);if((P|0)==10){u=ze()|0;o=R}bh(f[C>>2]|0)|0;e=f[o>>2]|0;f[o>>2]=0;if(!e)L=u;else{o=f[x>>2]|0;P=47}}else{u=ze()|0;f[R>>2]=0;o=189;P=47}if((P|0)==47){_=0;ue(o|0,e|0);P=_;_=0;if(P&1){P=ze(0)|0;Fi(P)}else L=u}$e(L|0);return 0}function Qo(e,i,r,n,s,l,o,u,h,d,b){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;d=d|0;b=b|0;var k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0,V=0,G=0,K=0,W=0,Z=0,J=0,Q=0;Z=c;c=c+512|0;D=Z+96|0;k=Z+104|0;Q=Z+88|0;j=Z+80|0;U=Z+76|0;H=Z+504|0;N=Z+72|0;z=Z+68|0;X=Z+56|0;W=Z+44|0;G=Z+32|0;V=Z+20|0;K=Z+8|0;F=Z+4|0;q=Z;f[D>>2]=b;f[Q>>2]=k;J=Q+4|0;f[J>>2]=189;f[j>>2]=k;f[U>>2]=k+400;f[X>>2]=0;f[X+4>>2]=0;f[X+8>>2]=0;f[W>>2]=0;f[W+4>>2]=0;f[W+8>>2]=0;f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;f[V>>2]=0;f[V+4>>2]=0;f[V+8>>2]=0;f[K>>2]=0;f[K+4>>2]=0;f[K+8>>2]=0;_=0;ve(2,r|0,n|0,H|0,N|0,z|0,X|0,W|0,G|0,V|0,F|0);I=_;_=0;e:do{if(I&1)r=ze()|0;else{f[d>>2]=f[h>>2];P=G+4|0;O=V+4|0;B=V+8|0;I=G+8|0;A=(s&512|0)!=0;S=W+8|0;T=W+4|0;C=K+4|0;R=K+8|0;L=H+3|0;x=X+4|0;E=0;m=0;i:while(1){b=f[e>>2]|0;do{if(b){r=f[b+12>>2]|0;if((r|0)==(f[b+16>>2]|0)){_=0;b=de(f[(f[b>>2]|0)+36>>2]|0,b|0)|0;M=_;_=0;if(M&1){Y=26;break i}}else b=f[r>>2]|0;if((b|0)==-1){f[e>>2]=0;n=1;break}else{n=(f[e>>2]|0)==0;break}}else n=1}while(0);r=f[i>>2]|0;do{if(r){b=f[r+12>>2]|0;if((b|0)==(f[r+16>>2]|0)){_=0;b=de(f[(f[r>>2]|0)+36>>2]|0,r|0)|0;M=_;_=0;if(M&1){Y=26;break i}}else b=f[b>>2]|0;if((b|0)!=-1)if(n){M=r;break}else{v=k;Y=244;break i}else{f[i>>2]=0;Y=16;break}}else Y=16}while(0);if((Y|0)==16){Y=0;if(n){v=k;Y=244;break}else M=0}r:do{switch(t[H+E>>0]|0){case 1:{if((E|0)!=3){b=f[e>>2]|0;r=f[b+12>>2]|0;if((r|0)==(f[b+16>>2]|0)){_=0;b=de(f[(f[b>>2]|0)+36>>2]|0,b|0)|0;Y=_;_=0;if(Y&1){Y=26;break i}}else b=f[r>>2]|0;_=0;b=ke(f[(f[u>>2]|0)+12>>2]|0,u|0,8192,b|0)|0;Y=_;_=0;if(Y&1){Y=26;break i}if(!b){Y=42;break i}b=f[e>>2]|0;r=b+12|0;n=f[r>>2]|0;if((n|0)==(f[b+16>>2]|0)){_=0;b=de(f[(f[b>>2]|0)+40>>2]|0,b|0)|0;Y=_;_=0;if(Y&1){Y=26;break i}}else{f[r>>2]=n+4;b=f[n>>2]|0}_=0;ce(92,K|0,b|0);Y=_;_=0;if(Y&1){Y=26;break i}else{b=M;s=M;Y=44}}else b=k;break}case 0:{if((E|0)==3)b=k;else{b=M;s=M;Y=44}break}case 3:{r=t[G>>0]|0;b=(r&1)==0?(r&255)>>>1:f[P>>2]|0;n=t[V>>0]|0;s=(n&1)==0?(n&255)>>>1:f[O>>2]|0;if((b|0)==(0-s|0))b=k;else{if(!b){b=f[e>>2]|0;r=f[b+12>>2]|0;if((r|0)==(f[b+16>>2]|0)){_=0;b=de(f[(f[b>>2]|0)+36>>2]|0,b|0)|0;M=_;_=0;if(M&1){Y=26;break i}r=t[V>>0]|0}else{b=f[r>>2]|0;r=n}if((b|0)!=(f[((r&1)==0?O:f[B>>2]|0)>>2]|0)){b=k;break r}b=f[e>>2]|0;r=b+12|0;n=f[r>>2]|0;if((n|0)==(f[b+16>>2]|0)){_=0;de(f[(f[b>>2]|0)+40>>2]|0,b|0)|0;M=_;_=0;if(M&1){Y=26;break i}}else f[r>>2]=n+4;t[o>>0]=1;M=t[V>>0]|0;b=k;m=((M&1)==0?(M&255)>>>1:f[O>>2]|0)>>>0>1?V:m;break r}w=f[e>>2]|0;v=f[w+12>>2]|0;n=f[w+16>>2]|0;b=(v|0)==(n|0);if(!s){if(b){_=0;b=de(f[(f[w>>2]|0)+36>>2]|0,w|0)|0;M=_;_=0;if(M&1){Y=26;break i}r=t[G>>0]|0}else b=f[v>>2]|0;if((b|0)!=(f[((r&1)==0?P:f[I>>2]|0)>>2]|0)){t[o>>0]=1;b=k;break r}b=f[e>>2]|0;r=b+12|0;n=f[r>>2]|0;if((n|0)==(f[b+16>>2]|0)){_=0;de(f[(f[b>>2]|0)+40>>2]|0,b|0)|0;M=_;_=0;if(M&1){Y=26;break i}}else f[r>>2]=n+4;M=t[G>>0]|0;b=k;m=((M&1)==0?(M&255)>>>1:f[P>>2]|0)>>>0>1?G:m;break r}if(b){_=0;b=de(f[(f[w>>2]|0)+36>>2]|0,w|0)|0;M=_;_=0;if(M&1){Y=26;break i}n=f[e>>2]|0;r=t[G>>0]|0;w=n;v=f[n+12>>2]|0;n=f[n+16>>2]|0}else b=f[v>>2]|0;s=w+12|0;n=(v|0)==(n|0);if((b|0)==(f[((r&1)==0?P:f[I>>2]|0)>>2]|0)){if(n){_=0;de(f[(f[w>>2]|0)+40>>2]|0,w|0)|0;M=_;_=0;if(M&1){Y=26;break i}}else f[s>>2]=v+4;M=t[G>>0]|0;b=k;m=((M&1)==0?(M&255)>>>1:f[P>>2]|0)>>>0>1?G:m;break r}if(n){_=0;b=de(f[(f[w>>2]|0)+36>>2]|0,w|0)|0;M=_;_=0;if(M&1){Y=26;break i}}else b=f[v>>2]|0;if((b|0)!=(f[((t[V>>0]&1)==0?O:f[B>>2]|0)>>2]|0)){Y=107;break i}b=f[e>>2]|0;r=b+12|0;n=f[r>>2]|0;if((n|0)==(f[b+16>>2]|0)){_=0;de(f[(f[b>>2]|0)+40>>2]|0,b|0)|0;M=_;_=0;if(M&1){Y=26;break i}}else f[r>>2]=n+4;t[o>>0]=1;M=t[V>>0]|0;b=k;m=((M&1)==0?(M&255)>>>1:f[O>>2]|0)>>>0>1?V:m}break}case 2:{if(!(E>>>0<2|(m|0)!=0)?!(A|(E|0)==2&(t[L>>0]|0)!=0):0){b=k;m=0;break r}s=t[W>>0]|0;n=f[S>>2]|0;r=(s&1)==0?T:n;b=r;t:do{if((E|0)!=0?(a[H+(E+-1)>>0]|0)<2:0){y=(s&1)==0;n:do{if((r|0)!=((y?T:n)+((y?(s&255)>>>1:f[T>>2]|0)<<2)|0)){s=r;while(1){_=0;r=ke(f[(f[u>>2]|0)+12>>2]|0,u|0,8192,f[s>>2]|0)|0;y=_;_=0;if(y&1){Y=23;break i}if(!r)break;s=s+4|0;b=s;r=t[W>>0]|0;n=f[S>>2]|0;y=(r&1)==0;if((s|0)==((y?T:n)+((y?(r&255)>>>1:f[T>>2]|0)<<2)|0)){s=r;break n}}s=t[W>>0]|0;n=f[S>>2]|0}}while(0);v=(s&1)==0?T:n;r=v;p=b-r>>2;g=t[K>>0]|0;w=(g&1)==0;g=w?(g&255)>>>1:f[C>>2]|0;if(g>>>0>=p>>>0){w=w?C:f[R>>2]|0;y=w+(g<<2)|0;if(!p)r=b;else{w=w+(g-p<<2)|0;while(1){if((f[w>>2]|0)!=(f[v>>2]|0))break t;w=w+4|0;if((w|0)==(y|0)){r=b;break}else v=v+4|0}}}}else r=b}while(0);b=(s&1)==0;b=(b?T:n)+((b?(s&255)>>>1:f[T>>2]|0)<<2)|0;t:do{if((r|0)!=(b|0)){w=M;s=M;b=r;while(1){r=f[e>>2]|0;do{if(r){n=f[r+12>>2]|0;if((n|0)==(f[r+16>>2]|0)){_=0;r=de(f[(f[r>>2]|0)+36>>2]|0,r|0)|0;M=_;_=0;if(M&1){Y=22;break i}}else r=f[n>>2]|0;if((r|0)==-1){f[e>>2]=0;n=1;break}else{n=(f[e>>2]|0)==0;break}}else n=1}while(0);do{if(s){r=f[s+12>>2]|0;if((r|0)==(f[s+16>>2]|0)){_=0;r=de(f[(f[s>>2]|0)+36>>2]|0,s|0)|0;M=_;_=0;if(M&1){Y=22;break i}}else r=f[r>>2]|0;if((r|0)!=-1)if(n^(w|0)==0){r=w;v=w;break}else break t;else{f[i>>2]=0;r=0;Y=136;break}}else{r=w;Y=136}}while(0);if((Y|0)==136){Y=0;if(n)break t;else v=0}n=f[e>>2]|0;s=f[n+12>>2]|0;if((s|0)==(f[n+16>>2]|0)){_=0;n=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;M=_;_=0;if(M&1){Y=22;break i}}else n=f[s>>2]|0;if((n|0)!=(f[b>>2]|0))break t;n=f[e>>2]|0;s=n+12|0;w=f[s>>2]|0;if((w|0)==(f[n+16>>2]|0)){_=0;de(f[(f[n>>2]|0)+40>>2]|0,n|0)|0;M=_;_=0;if(M&1){Y=22;break i}}else f[s>>2]=w+4;b=b+4|0;n=t[W>>0]|0;M=(n&1)==0;n=(M?T:f[S>>2]|0)+((M?(n&255)>>>1:f[T>>2]|0)<<2)|0;if((b|0)==(n|0)){b=n;break}else{w=r;s=v}}}}while(0);if(A?(M=t[W>>0]|0,y=(M&1)==0,(b|0)!=((y?T:f[S>>2]|0)+((y?(M&255)>>>1:f[T>>2]|0)<<2)|0)):0){Y=148;break i}else b=k;break}case 4:{g=f[z>>2]|0;p=M;w=M;b=k;r=0;t:while(1){n=f[e>>2]|0;do{if(n){s=f[n+12>>2]|0;if((s|0)==(f[n+16>>2]|0)){_=0;n=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;M=_;_=0;if(M&1){Y=25;break i}}else n=f[s>>2]|0;if((n|0)==-1){f[e>>2]=0;s=1;break}else{s=(f[e>>2]|0)==0;break}}else s=1}while(0);do{if(w){n=f[w+12>>2]|0;if((n|0)==(f[w+16>>2]|0)){_=0;n=de(f[(f[w>>2]|0)+36>>2]|0,w|0)|0;M=_;_=0;if(M&1){Y=25;break i}}else n=f[n>>2]|0;if((n|0)!=-1)if(s^(p|0)==0){n=p;v=p;break}else{k=p;break t}else{f[i>>2]=0;n=0;Y=162;break}}else{n=p;Y=162}}while(0);if((Y|0)==162){Y=0;if(s){k=n;break}else v=0}s=f[e>>2]|0;k=f[s+12>>2]|0;if((k|0)==(f[s+16>>2]|0)){_=0;s=de(f[(f[s>>2]|0)+36>>2]|0,s|0)|0;M=_;_=0;if(M&1){Y=25;break i}}else s=f[k>>2]|0;_=0;k=ke(f[(f[u>>2]|0)+12>>2]|0,u|0,2048,s|0)|0;M=_;_=0;if(M&1){Y=25;break i}if(k){k=f[d>>2]|0;if((k|0)==(f[D>>2]|0)){_=0;Ae(14,h|0,d|0,D|0);M=_;_=0;if(M&1){Y=25;break i}k=f[d>>2]|0}f[d>>2]=k+4;f[k>>2]=s;r=r+1|0}else{M=t[X>>0]|0;if(!((s|0)==(g|0)&((r|0)!=0?(((M&1)==0?(M&255)>>>1:f[x>>2]|0)|0)!=0:0))){k=n;break}if((b|0)==(f[U>>2]|0)){_=0;Ae(13,Q|0,j|0,U|0);M=_;_=0;if(M&1){Y=25;break i}b=f[j>>2]|0}M=b+4|0;f[j>>2]=M;f[b>>2]=r;b=M;r=0}s=f[e>>2]|0;k=s+12|0;w=f[k>>2]|0;if((w|0)==(f[s+16>>2]|0)){_=0;de(f[(f[s>>2]|0)+40>>2]|0,s|0)|0;M=_;_=0;if(M&1){Y=25;break i}else{p=n;w=v;continue}}else{f[k>>2]=w+4;p=n;w=v;continue}}if((r|0)!=0?(f[Q>>2]|0)!=(b|0):0){if((b|0)==(f[U>>2]|0)){_=0;Ae(13,Q|0,j|0,U|0);M=_;_=0;if(M&1){Y=26;break i}b=f[j>>2]|0}M=b+4|0;f[j>>2]=M;f[b>>2]=r;b=M}v=f[F>>2]|0;if((v|0)>0){r=f[e>>2]|0;do{if(r){n=f[r+12>>2]|0;if((n|0)==(f[r+16>>2]|0)){_=0;r=de(f[(f[r>>2]|0)+36>>2]|0,r|0)|0;M=_;_=0;if(M&1){Y=26;break i}}else r=f[n>>2]|0;if((r|0)==-1){f[e>>2]=0;n=1;break}else{n=(f[e>>2]|0)==0;break}}else n=1}while(0);do{if(k){r=f[k+12>>2]|0;if((r|0)==(f[k+16>>2]|0)){_=0;r=de(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;M=_;_=0;if(M&1){Y=26;break i}}else r=f[r>>2]|0;if((r|0)!=-1)if(n)break;else{Y=206;break i}else{f[i>>2]=0;Y=200;break}}else Y=200}while(0);if((Y|0)==200){Y=0;if(n){Y=206;break i}else k=0}r=f[e>>2]|0;n=f[r+12>>2]|0;if((n|0)==(f[r+16>>2]|0)){_=0;r=de(f[(f[r>>2]|0)+36>>2]|0,r|0)|0;M=_;_=0;if(M&1){Y=26;break i}}else r=f[n>>2]|0;if((r|0)!=(f[N>>2]|0)){Y=206;break i}r=f[e>>2]|0;n=r+12|0;s=f[n>>2]|0;if((s|0)==(f[r+16>>2]|0)){_=0;de(f[(f[r>>2]|0)+40>>2]|0,r|0)|0;M=_;_=0;if(M&1){Y=26;break i}}else f[n>>2]=s+4;if((v|0)>0){w=k;s=k;p=v;while(1){r=f[e>>2]|0;do{if(r){n=f[r+12>>2]|0;if((n|0)==(f[r+16>>2]|0)){_=0;r=de(f[(f[r>>2]|0)+36>>2]|0,r|0)|0;M=_;_=0;if(M&1){Y=24;break i}}else r=f[n>>2]|0;if((r|0)==-1){f[e>>2]=0;n=1;break}else{n=(f[e>>2]|0)==0;break}}else n=1}while(0);do{if(s){r=f[s+12>>2]|0;if((r|0)==(f[s+16>>2]|0)){_=0;r=de(f[(f[s>>2]|0)+36>>2]|0,s|0)|0;M=_;_=0;if(M&1){Y=24;break i}}else r=f[r>>2]|0;if((r|0)!=-1)if(n^(w|0)==0){r=w;v=w;break}else{Y=231;break i}else{f[i>>2]=0;r=0;Y=224;break}}else{r=w;Y=224}}while(0);if((Y|0)==224){Y=0;if(n){Y=231;break i}else v=0}n=f[e>>2]|0;s=f[n+12>>2]|0;if((s|0)==(f[n+16>>2]|0)){_=0;n=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;M=_;_=0;if(M&1){Y=24;break i}}else n=f[s>>2]|0;_=0;n=ke(f[(f[u>>2]|0)+12>>2]|0,u|0,2048,n|0)|0;M=_;_=0;if(M&1){Y=24;break i}if(!n){Y=231;break i}if((f[d>>2]|0)==(f[D>>2]|0)?(_=0,Ae(14,h|0,d|0,D|0),M=_,_=0,M&1):0){Y=24;break i}n=f[e>>2]|0;s=f[n+12>>2]|0;if((s|0)==(f[n+16>>2]|0)){_=0;n=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;M=_;_=0;if(M&1){Y=24;break i}}else n=f[s>>2]|0;s=f[d>>2]|0;f[d>>2]=s+4;f[s>>2]=n;n=p;p=p+-1|0;f[F>>2]=p;s=f[e>>2]|0;k=s+12|0;w=f[k>>2]|0;if((w|0)==(f[s+16>>2]|0)){_=0;de(f[(f[s>>2]|0)+40>>2]|0,s|0)|0;M=_;_=0;if(M&1){Y=24;break i}}else f[k>>2]=w+4;if((n|0)<=1)break;else{w=r;s=v}}}}if((f[d>>2]|0)==(f[h>>2]|0)){Y=242;break i}break}default:b=k}}while(0);r:do{if((Y|0)==44)while(1){Y=0;r=f[e>>2]|0;do{if(r){n=f[r+12>>2]|0;if((n|0)==(f[r+16>>2]|0)){_=0;r=de(f[(f[r>>2]|0)+36>>2]|0,r|0)|0;M=_;_=0;if(M&1){Y=21;break i}}else r=f[n>>2]|0;if((r|0)==-1){f[e>>2]=0;n=1;break}else{n=(f[e>>2]|0)==0;break}}else n=1}while(0);do{if(s){r=f[s+12>>2]|0;if((r|0)==(f[s+16>>2]|0)){_=0;r=de(f[(f[s>>2]|0)+36>>2]|0,s|0)|0;M=_;_=0;if(M&1){Y=21;break i}}else r=f[r>>2]|0;if((r|0)!=-1)if(n^(b|0)==0){w=b;s=b;break}else{b=k;break r}else{f[i>>2]=0;b=0;Y=57;break}}else Y=57}while(0);if((Y|0)==57){Y=0;if(n){b=k;break r}else{w=b;s=0}}b=f[e>>2]|0;r=f[b+12>>2]|0;if((r|0)==(f[b+16>>2]|0)){_=0;b=de(f[(f[b>>2]|0)+36>>2]|0,b|0)|0;M=_;_=0;if(M&1){Y=21;break i}}else b=f[r>>2]|0;_=0;b=ke(f[(f[u>>2]|0)+12>>2]|0,u|0,8192,b|0)|0;M=_;_=0;if(M&1){Y=21;break i}if(!b){b=k;break r}b=f[e>>2]|0;r=b+12|0;n=f[r>>2]|0;if((n|0)==(f[b+16>>2]|0)){_=0;b=de(f[(f[b>>2]|0)+40>>2]|0,b|0)|0;Y=_;_=0;if(Y&1){Y=21;break i}}else{f[r>>2]=n+4;b=f[n>>2]|0}_=0;ce(92,K|0,b|0);Y=_;_=0;if(Y&1){Y=21;break i}else{b=w;Y=44}}}while(0);E=E+1|0;if(E>>>0>=4){v=b;Y=244;break}else k=b}i:switch(Y|0){case 21:{r=ze()|0;break e}case 22:{r=ze()|0;break e}case 23:{r=ze()|0;break e}case 24:{r=ze()|0;break e}case 25:{r=ze()|0;break e}case 26:{r=ze()|0;break e}case 42:{f[l>>2]=f[l>>2]|4;r=0;break}case 107:{f[l>>2]=f[l>>2]|4;r=0;break}case 148:{f[l>>2]=f[l>>2]|4;r=0;break}case 206:{f[l>>2]=f[l>>2]|4;r=0;break}case 231:{f[l>>2]=f[l>>2]|4;r=0;break}case 242:{f[l>>2]=f[l>>2]|4;r=0;break}case 244:{r:do{if(m){k=m+4|0;w=m+8|0;s=1;t:while(1){b=t[m>>0]|0;if(!(b&1))b=(b&255)>>>1;else b=f[k>>2]|0;if(s>>>0>=b>>>0)break r;b=f[e>>2]|0;do{if(b){r=f[b+12>>2]|0;if((r|0)==(f[b+16>>2]|0)){_=0;b=de(f[(f[b>>2]|0)+36>>2]|0,b|0)|0;d=_;_=0;if(d&1){Y=20;break t}}else b=f[r>>2]|0;if((b|0)==-1){f[e>>2]=0;n=1;break}else{n=(f[e>>2]|0)==0;break}}else n=1}while(0);b=f[i>>2]|0;do{if(b){r=f[b+12>>2]|0;if((r|0)==(f[b+16>>2]|0)){_=0;b=de(f[(f[b>>2]|0)+36>>2]|0,b|0)|0;d=_;_=0;if(d&1){Y=20;break t}}else b=f[r>>2]|0;if((b|0)!=-1)if(n)break;else{Y=271;break t}else{f[i>>2]=0;Y=263;break}}else Y=263}while(0);if((Y|0)==263?(Y=0,n):0){Y=271;break}b=f[e>>2]|0;r=f[b+12>>2]|0;if((r|0)==(f[b+16>>2]|0)){_=0;b=de(f[(f[b>>2]|0)+36>>2]|0,b|0)|0;d=_;_=0;if(d&1){Y=20;break}}else b=f[r>>2]|0;if(!(t[m>>0]&1))r=k;else r=f[w>>2]|0;if((b|0)!=(f[r+(s<<2)>>2]|0)){Y=271;break}b=s+1|0;r=f[e>>2]|0;n=r+12|0;s=f[n>>2]|0;if((s|0)==(f[r+16>>2]|0)){_=0;de(f[(f[r>>2]|0)+40>>2]|0,r|0)|0;d=_;_=0;if(d&1){Y=20;break}else{s=b;continue}}else{f[n>>2]=s+4;s=b;continue}}if((Y|0)==20){r=ze()|0;break e}else if((Y|0)==271){f[l>>2]=f[l>>2]|4;r=0;break i}}}while(0);b=f[Q>>2]|0;if((b|0)!=(v|0)?(f[q>>2]=0,Ko(X,b,v,q),(f[q>>2]|0)!=0):0){f[l>>2]=f[l>>2]|4;r=0}else r=1;break}}Gh(K);Gh(V);Gh(G);Gh(W);Oh(X);b=f[Q>>2]|0;f[Q>>2]=0;if((b|0)!=0?(_=0,ue(f[J>>2]|0,b|0),Q=_,_=0,Q&1):0){Q=ze(0)|0;Fi(Q)}c=Z;return r|0}}while(0);Gh(K);Gh(V);Gh(G);Gh(W);Oh(X);b=f[Q>>2]|0;f[Q>>2]=0;if((b|0)!=0?(_=0,ue(f[J>>2]|0,b|0),Q=_,_=0,Q&1):0){Q=ze(0)|0;Fi(Q)}$e(r|0);return 0}function $o(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0;y=c;c=c+432|0;o=y+424|0;e=y+24|0;E=y+16|0;m=y+8|0;b=y+4|0;k=y+428|0;u=y;f[E>>2]=e;S=E+4|0;f[S>>2]=189;h=e+400|0;_=0;g=de(68,a|0)|0;d=_;_=0;if(!(d&1)){f[b>>2]=g;_=0;d=pe(37,b|0,44212)|0;e=_;_=0;e:do{if(!(e&1)?(t[k>>0]=0,v=f[r>>2]|0,f[u>>2]=v,w=f[a+4>>2]|0,p=v,_=0,f[o>>2]=f[u>>2],w=be(2,i|0,o|0,n|0,b|0,w|0,s|0,k|0,d|0,E|0,m|0,h|0)|0,a=_,_=0,!(a&1)):0){if(w){if(!(t[l>>0]&1))t[l>>0]=0;else f[f[l+8>>2]>>2]=0;f[l+4>>2]=0;if(t[k>>0]|0){_=0;e=pe(f[(f[d>>2]|0)+44>>2]|0,d|0,45)|0;a=_;_=0;if(a&1)break;_=0;ce(92,l|0,e|0);a=_;_=0;if(a&1)break}_=0;u=pe(f[(f[d>>2]|0)+44>>2]|0,d|0,48)|0;a=_;_=0;if(a&1)break;e=f[E>>2]|0;h=f[m>>2]|0;o=h+-4|0;i:do{if(e>>>0<o>>>0)do{if((f[e>>2]|0)!=(u|0))break i;e=e+4|0}while(e>>>0<o>>>0)}while(0);_=0;ke(33,l|0,e|0,h|0)|0;l=_;_=0;if(l&1)break}e=f[i>>2]|0;do{if(e){o=f[e+12>>2]|0;if((o|0)==(f[e+16>>2]|0)){_=0;e=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;l=_;_=0;if(l&1)break e}else e=f[o>>2]|0;if((e|0)==-1){f[i>>2]=0;o=1;break}else{o=(f[i>>2]|0)==0;break}}else o=1}while(0);do{if(v){e=f[p+12>>2]|0;if((e|0)==(f[p+16>>2]|0)){_=0;e=de(f[(f[v>>2]|0)+36>>2]|0,p|0)|0;p=_;_=0;if(p&1)break e}else e=f[e>>2]|0;if((e|0)!=-1)if(o)break;else{A=32;break}else{f[r>>2]=0;A=30;break}}else A=30}while(0);if((A|0)==30?o:0)A=32;if((A|0)==32)f[s>>2]=f[s>>2]|2;o=f[i>>2]|0;bh(g)|0;e=f[E>>2]|0;f[E>>2]=0;if((e|0)!=0?(_=0,ue(f[S>>2]|0,e|0),S=_,_=0,S&1):0){S=ze(0)|0;Fi(S)}c=y;return o|0}}while(0);o=ze()|0;bh(g)|0;e=f[E>>2]|0;f[E>>2]=0;if(!e)M=o;else A=38}else{o=ze()|0;f[E>>2]=0;A=38}if((A|0)==38){_=0;ue(f[S>>2]|0,e|0);S=_;_=0;if(S&1){S=ze(0)|0;Fi(S)}else M=o}$e(M|0);return 0}function eu(e,i,r,n,a,s,l,o,u,h){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;var d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;A=c;c=c+112|0;d=A+100|0;b=A+88|0;k=A+76|0;w=A+64|0;m=A+52|0;v=A+48|0;p=A+36|0;g=A+24|0;y=A+12|0;M=A;do{if(e){e=Du(i,43956)|0;aM[f[(f[e>>2]|0)+44>>2]&127](d,e);M=f[d>>2]|0;t[r>>0]=M;t[r+1>>0]=M>>8;t[r+2>>0]=M>>16;t[r+3>>0]=M>>24;aM[f[(f[e>>2]|0)+32>>2]&127](b,e);if(!(t[u>>0]&1))t[u>>0]=0;else f[f[u+8>>2]>>2]=0;f[u+4>>2]=0;_=0;ce(93,u|0,0);r=_;_=0;if(r&1){r=ze(0)|0;Fi(r)}f[u>>2]=f[b>>2];f[u+4>>2]=f[b+4>>2];f[u+8>>2]=f[b+8>>2];f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;Gh(b);aM[f[(f[e>>2]|0)+28>>2]&127](k,e);if(!(t[o>>0]&1))t[o>>0]=0;else f[f[o+8>>2]>>2]=0;f[o+4>>2]=0;_=0;ce(93,o|0,0);r=_;_=0;if(r&1){r=ze(0)|0;Fi(r)}f[o>>2]=f[k>>2];f[o+4>>2]=f[k+4>>2];f[o+8>>2]=f[k+8>>2];f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;Gh(k);f[n>>2]=lM[f[(f[e>>2]|0)+12>>2]&127](e)|0;f[a>>2]=lM[f[(f[e>>2]|0)+16>>2]&127](e)|0;aM[f[(f[e>>2]|0)+20>>2]&127](w,e);if(!(t[s>>0]&1)){t[s+1>>0]=0;t[s>>0]=0}else{t[f[s+8>>2]>>0]=0;f[s+4>>2]=0}_=0;ce(91,s|0,0);a=_;_=0;if(a&1){a=ze(0)|0;Fi(a)}f[s>>2]=f[w>>2];f[s+4>>2]=f[w+4>>2];f[s+8>>2]=f[w+8>>2];f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;Oh(w);aM[f[(f[e>>2]|0)+24>>2]&127](m,e);if(!(t[l>>0]&1))t[l>>0]=0;else f[f[l+8>>2]>>2]=0;f[l+4>>2]=0;_=0;ce(93,l|0,0);a=_;_=0;if(a&1){a=ze(0)|0;Fi(a)}else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;Gh(m);E=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;break}}else{e=Du(i,43892)|0;aM[f[(f[e>>2]|0)+44>>2]&127](v,e);v=f[v>>2]|0;t[r>>0]=v;t[r+1>>0]=v>>8;t[r+2>>0]=v>>16;t[r+3>>0]=v>>24;aM[f[(f[e>>2]|0)+32>>2]&127](p,e);if(!(t[u>>0]&1))t[u>>0]=0;else f[f[u+8>>2]>>2]=0;f[u+4>>2]=0;_=0;ce(93,u|0,0);r=_;_=0;if(r&1){r=ze(0)|0;Fi(r)}f[u>>2]=f[p>>2];f[u+4>>2]=f[p+4>>2];f[u+8>>2]=f[p+8>>2];f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;Gh(p);aM[f[(f[e>>2]|0)+28>>2]&127](g,e);if(!(t[o>>0]&1))t[o>>0]=0;else f[f[o+8>>2]>>2]=0;f[o+4>>2]=0;_=0;ce(93,o|0,0);r=_;_=0;if(r&1){r=ze(0)|0;Fi(r)}f[o>>2]=f[g>>2];f[o+4>>2]=f[g+4>>2];f[o+8>>2]=f[g+8>>2];f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;Gh(g);f[n>>2]=lM[f[(f[e>>2]|0)+12>>2]&127](e)|0;f[a>>2]=lM[f[(f[e>>2]|0)+16>>2]&127](e)|0;aM[f[(f[e>>2]|0)+20>>2]&127](y,e);if(!(t[s>>0]&1)){t[s+1>>0]=0;t[s>>0]=0}else{t[f[s+8>>2]>>0]=0;f[s+4>>2]=0}_=0;ce(91,s|0,0);a=_;_=0;if(a&1){a=ze(0)|0;Fi(a)}f[s>>2]=f[y>>2];f[s+4>>2]=f[y+4>>2];f[s+8>>2]=f[y+8>>2];f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;Oh(y);aM[f[(f[e>>2]|0)+24>>2]&127](M,e);if(!(t[l>>0]&1))t[l>>0]=0;else f[f[l+8>>2]>>2]=0;f[l+4>>2]=0;_=0;ce(93,l|0,0);a=_;_=0;if(a&1){a=ze(0)|0;Fi(a)}else{f[l>>2]=f[M>>2];f[l+4>>2]=f[M+4>>2];f[l+8>>2]=f[M+8>>2];f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;Gh(M);E=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;break}}}while(0);f[h>>2]=E;c=A;return}function iu(e){e=e|0;return}function ru(e){e=e|0;Ip(e);return}function tu(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=+s;var l=0,o=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0;R=c;c=c+384|0;g=R+8|0;l=R;h=R+284|0;d=R+72|0;o=R+184|0;x=R+68|0;S=R+80|0;M=R+77|0;T=R+76|0;P=R+56|0;B=R+44|0;O=R+32|0;b=R+28|0;p=R+84|0;A=R+24|0;E=R+20|0;y=R+16|0;f[d>>2]=h;u[g>>3]=s;h=xy(h,100,59018,g)|0;do{if(h>>>0>99){_=0;e=Me(3)|0;C=_;_=0;if(!(C&1)?(_=0,u[l>>3]=s,m=Ee(17,d|0,e|0,59018,l|0)|0,C=_,_=0,!(C&1)):0){e=f[d>>2]|0;if(!e){_=0;Se(6);C=_;_=0;if(C&1){e=0;l=0;C=7;break}e=f[d>>2]|0}o=Lc(m)|0;l=o;if(!o){_=0;Se(6);C=_;_=0;if(C&1)C=7;else{v=0;C=10}}else{v=o;C=10}}else{e=0;l=0;C=7}}else{l=0;e=0;v=o;m=h;C=10}}while(0);if((C|0)==10){_=0;o=de(68,n|0)|0;w=_;_=0;if(w&1)C=7;else{f[x>>2]=o;_=0;w=pe(37,x|0,44220)|0;k=_;_=0;if(!(k&1)?(k=f[d>>2]|0,_=0,Ee(f[(f[w>>2]|0)+32>>2]|0,w|0,k|0,k+m|0,v|0)|0,k=_,_=0,!(k&1)):0){if(!m)k=0;else k=(t[f[d>>2]>>0]|0)==45;f[P>>2]=0;f[P+4>>2]=0;f[P+8>>2]=0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;f[O>>2]=0;f[O+4>>2]=0;f[O+8>>2]=0;_=0;ve(3,r|0,k|0,x|0,S|0,M|0,T|0,P|0,B|0,O|0,b|0);r=_;_=0;if(!(r&1)){b=f[b>>2]|0;if((m|0)>(b|0)){r=t[O>>0]|0;h=t[B>>0]|0;h=(m-b<<1|1)+b+((r&1)==0?(r&255)>>>1:f[O+4>>2]|0)+((h&1)==0?(h&255)>>>1:f[B+4>>2]|0)|0}else{r=t[O>>0]|0;h=t[B>>0]|0;h=b+2+((r&1)==0?(r&255)>>>1:f[O+4>>2]|0)+((h&1)==0?(h&255)>>>1:f[B+4>>2]|0)|0}if(h>>>0>100){h=Lc(h)|0;d=h;if(!h){_=0;Se(6);p=_;_=0;if(!(p&1)){h=0;C=26}}else C=26}else{d=0;h=p;C=26}if((C|0)==26){_=0;we(1,h|0,A|0,E|0,f[n+4>>2]|0,v|0,v+m|0,w|0,k|0,S|0,t[M>>0]|0,t[T>>0]|0,P|0,B|0,O|0,b|0);T=_;_=0;if(!(T&1)?(f[y>>2]=f[i>>2],i=f[A>>2]|0,L=f[E>>2]|0,_=0,f[g>>2]=f[y>>2],L=he(39,g|0,h|0,i|0,L|0,n|0,a|0)|0,i=_,_=0,!(i&1)):0){if(d){xc(d);o=f[x>>2]|0}Oh(O);Oh(B);Oh(P);bh(o)|0;if(l)xc(l);if(e)xc(e);c=R;return L|0}}h=ze()|0;if(d){xc(d);o=f[x>>2]|0}}else h=ze()|0;Oh(O);Oh(B);Oh(P)}else h=ze()|0;bh(o)|0}}if((C|0)==7)h=ze()|0;if(l)xc(l);if(e)xc(e);$e(h|0);return 0}function nu(e,i,r,n,a,s,l,o,u,h){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;var d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;R=c;c=c+112|0;k=R+108|0;w=R+96|0;p=R+92|0;g=R+80|0;y=R+68|0;M=R+56|0;E=R+52|0;A=R+40|0;S=R+36|0;T=R+24|0;m=R+12|0;v=R;do{if(e){e=Du(r,43828)|0;r=f[e>>2]|0;do{if(i){aM[f[r+44>>2]&127](k,e);i=f[k>>2]|0;t[n>>0]=i;t[n+1>>0]=i>>8;t[n+2>>0]=i>>16;t[n+3>>0]=i>>24;aM[f[(f[e>>2]|0)+32>>2]&127](w,e);if(!(t[u>>0]&1)){t[u+1>>0]=0;t[u>>0]=0}else{t[f[u+8>>2]>>0]=0;f[u+4>>2]=0}_=0;ce(91,u|0,0);n=_;_=0;if(n&1){u=ze(0)|0;Fi(u)}else{f[u>>2]=f[w>>2];f[u+4>>2]=f[w+4>>2];f[u+8>>2]=f[w+8>>2];f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;Oh(w);b=e;break}}else{aM[f[r+40>>2]&127](p,e);i=f[p>>2]|0;t[n>>0]=i;t[n+1>>0]=i>>8;t[n+2>>0]=i>>16;t[n+3>>0]=i>>24;aM[f[(f[e>>2]|0)+28>>2]&127](g,e);if(!(t[u>>0]&1)){t[u+1>>0]=0;t[u>>0]=0}else{t[f[u+8>>2]>>0]=0;f[u+4>>2]=0}_=0;ce(91,u|0,0);n=_;_=0;if(n&1){u=ze(0)|0;Fi(u)}else{f[u>>2]=f[g>>2];f[u+4>>2]=f[g+4>>2];f[u+8>>2]=f[g+8>>2];f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;Oh(g);b=e;break}}}while(0);t[a>>0]=lM[f[(f[e>>2]|0)+12>>2]&127](e)|0;t[s>>0]=lM[f[(f[e>>2]|0)+16>>2]&127](e)|0;aM[f[(f[b>>2]|0)+20>>2]&127](y,e);if(!(t[l>>0]&1)){t[l+1>>0]=0;t[l>>0]=0}else{t[f[l+8>>2]>>0]=0;f[l+4>>2]=0}_=0;ce(91,l|0,0);s=_;_=0;if(s&1){s=ze(0)|0;Fi(s)}f[l>>2]=f[y>>2];f[l+4>>2]=f[y+4>>2];f[l+8>>2]=f[y+8>>2];f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;Oh(y);aM[f[(f[b>>2]|0)+24>>2]&127](M,e);if(!(t[o>>0]&1)){t[o+1>>0]=0;t[o>>0]=0}else{t[f[o+8>>2]>>0]=0;f[o+4>>2]=0}_=0;ce(91,o|0,0);s=_;_=0;if(s&1){s=ze(0)|0;Fi(s)}else{f[o>>2]=f[M>>2];f[o+4>>2]=f[M+4>>2];f[o+8>>2]=f[M+8>>2];f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;Oh(M);C=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;break}}else{e=Du(r,43764)|0;r=f[e>>2]|0;do{if(i){aM[f[r+44>>2]&127](E,e);i=f[E>>2]|0;t[n>>0]=i;t[n+1>>0]=i>>8;t[n+2>>0]=i>>16;t[n+3>>0]=i>>24;aM[f[(f[e>>2]|0)+32>>2]&127](A,e);if(!(t[u>>0]&1)){t[u+1>>0]=0;t[u>>0]=0}else{t[f[u+8>>2]>>0]=0;f[u+4>>2]=0}_=0;ce(91,u|0,0);n=_;_=0;if(n&1){u=ze(0)|0;Fi(u)}else{f[u>>2]=f[A>>2];f[u+4>>2]=f[A+4>>2];f[u+8>>2]=f[A+8>>2];f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;Oh(A);d=e;break}}else{aM[f[r+40>>2]&127](S,e);i=f[S>>2]|0;t[n>>0]=i;t[n+1>>0]=i>>8;t[n+2>>0]=i>>16;t[n+3>>0]=i>>24;aM[f[(f[e>>2]|0)+28>>2]&127](T,e);if(!(t[u>>0]&1)){t[u+1>>0]=0;t[u>>0]=0}else{t[f[u+8>>2]>>0]=0;f[u+4>>2]=0}_=0;ce(91,u|0,0);n=_;_=0;if(n&1){u=ze(0)|0;Fi(u)}else{f[u>>2]=f[T>>2];f[u+4>>2]=f[T+4>>2];f[u+8>>2]=f[T+8>>2];f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;Oh(T);d=e;break}}}while(0);t[a>>0]=lM[f[(f[e>>2]|0)+12>>2]&127](e)|0;t[s>>0]=lM[f[(f[e>>2]|0)+16>>2]&127](e)|0;aM[f[(f[d>>2]|0)+20>>2]&127](m,e);if(!(t[l>>0]&1)){t[l+1>>0]=0;t[l>>0]=0}else{t[f[l+8>>2]>>0]=0;f[l+4>>2]=0}_=0;ce(91,l|0,0);s=_;_=0;if(s&1){s=ze(0)|0;Fi(s)}f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;Oh(m);aM[f[(f[d>>2]|0)+24>>2]&127](v,e);if(!(t[o>>0]&1)){t[o+1>>0]=0;t[o>>0]=0}else{t[f[o+8>>2]>>0]=0;f[o+4>>2]=0}_=0;ce(91,o|0,0);s=_;_=0;if(s&1){s=ze(0)|0;Fi(s)}else{f[o>>2]=f[v>>2];f[o+4>>2]=f[v+4>>2];f[o+8>>2]=f[v+8>>2];f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;Oh(v);C=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;break}}}while(0);f[h>>2]=C;c=R;return}function fu(e,i,r,a,s,l,o,u,c,h,d,b,k,w,_){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;h=h|0;d=d|0;b=b|0;k=k|0;w=w|0;_=_|0;var m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0;f[r>>2]=e;U=w+4|0;j=w+8|0;H=w+1|0;O=k+4|0;B=(a&512|0)==0;I=k+8|0;D=k+1|0;N=o+8|0;F=(_|0)>0;S=b+4|0;T=b+8|0;C=b+1|0;R=_+1|0;x=-2-_-((_|0)<0?~_:-1)|0;P=(_|0)>0;A=0;do{switch(t[c+A>>0]|0){case 0:{f[i>>2]=f[r>>2];break}case 1:{f[i>>2]=f[r>>2];M=kM[f[(f[o>>2]|0)+28>>2]&63](o,32)|0;E=f[r>>2]|0;f[r>>2]=E+1;t[E>>0]=M;break}case 3:{E=t[w>>0]|0;m=(E&1)==0;if((m?(E&255)>>>1:f[U>>2]|0)|0){M=t[(m?H:f[j>>2]|0)>>0]|0;E=f[r>>2]|0;f[r>>2]=E+1;t[E>>0]=M}break}case 2:{p=t[k>>0]|0;m=(p&1)==0;p=m?(p&255)>>>1:f[O>>2]|0;if(!(B|(p|0)==0)){v=m?D:f[I>>2]|0;g=v+p|0;m=f[r>>2]|0;if(p)do{t[m>>0]=t[v>>0]|0;v=v+1|0;m=m+1|0}while((v|0)!=(g|0));f[r>>2]=m}break}case 4:{m=f[r>>2]|0;s=u?s+1|0:s;y=s;g=f[N>>2]|0;e:do{if(s>>>0<l>>>0){v=s;do{p=t[v>>0]|0;if(p<<24>>24<=-1)break e;if(!(n[g+(p<<24>>24<<1)>>1]&2048))break e;v=v+1|0}while(v>>>0<l>>>0)}else v=s}while(0);p=v;if(F){M=-2-p-~(p>>>0>y>>>0?y:p)|0;M=x>>>0>M>>>0?x:M;if(v>>>0>s>>>0&P){p=v;y=_;while(1){p=p+-1|0;E=t[p>>0]|0;g=f[r>>2]|0;f[r>>2]=g+1;t[g>>0]=E;g=(y|0)>1;if(!(p>>>0>s>>>0&g))break;else y=y+-1|0}}else g=P;E=R+M|0;p=v+(M+1)|0;if(g)y=kM[f[(f[o>>2]|0)+28>>2]&63](o,48)|0;else y=0;v=f[r>>2]|0;f[r>>2]=v+1;if((E|0)>0){g=E;while(1){t[v>>0]=y;v=f[r>>2]|0;f[r>>2]=v+1;if((g|0)>1)g=g+-1|0;else break}}t[v>>0]=h}else p=v;if((p|0)!=(s|0)){E=t[b>>0]|0;v=(E&1)==0;if(!((v?(E&255)>>>1:f[S>>2]|0)|0))v=-1;else v=t[(v?C:f[T>>2]|0)>>0]|0;if((p|0)!=(s|0)){g=0;y=0;while(1){if((y|0)==(v|0)){E=f[r>>2]|0;f[r>>2]=E+1;t[E>>0]=d;g=g+1|0;E=t[b>>0]|0;v=(E&1)==0;if(g>>>0<(v?(E&255)>>>1:f[S>>2]|0)>>>0){v=t[(v?C:f[T>>2]|0)+g>>0]|0;v=v<<24>>24==127?-1:v<<24>>24;y=0}else{v=y;y=0}}p=p+-1|0;M=t[p>>0]|0;E=f[r>>2]|0;f[r>>2]=E+1;t[E>>0]=M;if((p|0)==(s|0))break;else y=y+1|0}}}else{M=kM[f[(f[o>>2]|0)+28>>2]&63](o,48)|0;E=f[r>>2]|0;f[r>>2]=E+1;t[E>>0]=M}v=f[r>>2]|0;if((m|0)!=(v|0)?(L=v+-1|0,m>>>0<L>>>0):0){v=L;do{E=t[m>>0]|0;t[m>>0]=t[v>>0]|0;t[v>>0]=E;m=m+1|0;v=v+-1|0}while(m>>>0<v>>>0)}break}default:{}}A=A+1|0}while((A|0)!=4);v=t[w>>0]|0;s=(v&1)==0;v=s?(v&255)>>>1:f[U>>2]|0;if(v>>>0>1){m=s?H:f[j>>2]|0;p=m+v|0;s=f[r>>2]|0;if((v|0)!=1){m=m+1|0;do{t[s>>0]=t[m>>0]|0;s=s+1|0;m=m+1|0}while((m|0)!=(p|0))}f[r>>2]=s}switch(a&176|0){case 32:{f[i>>2]=f[r>>2];break}case 16:break;default:f[i>>2]=e}return}function au(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0;A=c;c=c+176|0;w=A+56|0;T=A+52|0;M=A+64|0;p=A+61|0;E=A+60|0;C=A+40|0;L=A+28|0;R=A+16|0;h=A+12|0;k=A+68|0;y=A+8|0;g=A+4|0;m=A;e=sd(n)|0;f[T>>2]=e;_=0;v=pe(37,T|0,44220)|0;b=_;_=0;do{if(b&1)x=13;else{d=t[s>>0]|0;l=(d&1)==0;b=s+4|0;if(!((l?(d&255)>>>1:f[b>>2]|0)|0))d=0;else{l=t[(l?s+1|0:f[s+8>>2]|0)>>0]|0;_=0;o=pe(f[(f[v>>2]|0)+28>>2]|0,v|0,45)|0;d=_;_=0;if(d&1){x=13;break}d=l<<24>>24==o<<24>>24}f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;f[L>>2]=0;f[L+4>>2]=0;f[L+8>>2]=0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;_=0;ve(3,r|0,d|0,T|0,M|0,p|0,E|0,C|0,L|0,R|0,h|0);u=_;_=0;if(!(u&1)){u=t[s>>0]|0;r=f[b>>2]|0;l=(u&1)==0?(u&255)>>>1:r;h=f[h>>2]|0;if((l|0)>(h|0)){P=t[R>>0]|0;o=t[L>>0]|0;l=(l-h<<1|1)+h+((P&1)==0?(P&255)>>>1:f[R+4>>2]|0)+((o&1)==0?(o&255)>>>1:f[L+4>>2]|0)|0}else{P=t[R>>0]|0;l=t[L>>0]|0;l=h+2+((P&1)==0?(P&255)>>>1:f[R+4>>2]|0)+((l&1)==0?(l&255)>>>1:f[L+4>>2]|0)|0}if(l>>>0>100){l=Lc(l)|0;o=l;if(!l){_=0;Se(6);P=_;_=0;if(!(P&1)){u=t[s>>0]|0;r=f[b>>2]|0;l=0;x=17}}else x=17}else{o=0;l=k;x=17}if((x|0)==17){P=(u&1)==0;s=P?s+1|0:f[s+8>>2]|0;_=0;we(1,l|0,y|0,g|0,f[n+4>>2]|0,s|0,s+(P?(u&255)>>>1:r)|0,v|0,d|0,M|0,t[p>>0]|0,t[E>>0]|0,C|0,L|0,R|0,h|0);P=_;_=0;if(!(P&1)?(f[m>>2]=f[i>>2],P=f[y>>2]|0,S=f[g>>2]|0,_=0,f[w>>2]=f[m>>2],S=he(39,w|0,l|0,P|0,S|0,n|0,a|0)|0,P=_,_=0,!(P&1)):0){if(o){xc(o);e=f[T>>2]|0}Oh(R);Oh(L);Oh(C);bh(e)|0;c=A;return S|0}}l=ze()|0;if(o){xc(o);e=f[T>>2]|0}}else l=ze()|0;Oh(R);Oh(L);Oh(C)}}while(0);if((x|0)==13)l=ze()|0;bh(e)|0;$e(l|0);return 0}function su(e){e=e|0;return}function lu(e){e=e|0;Ip(e);return}function ou(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=+s;var l=0,o=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0;R=c;c=c+992|0;g=R+8|0;l=R;h=R+888|0;d=R+880|0;o=R+480|0;x=R+76|0;S=R+884|0;M=R+72|0;T=R+68|0;P=R+56|0;B=R+44|0;O=R+32|0;b=R+28|0;p=R+80|0;A=R+24|0;E=R+20|0;y=R+16|0;f[d>>2]=h;u[g>>3]=s;h=xy(h,100,59018,g)|0;do{if(h>>>0>99){_=0;e=Me(3)|0;C=_;_=0;if(!(C&1)?(_=0,u[l>>3]=s,m=Ee(17,d|0,e|0,59018,l|0)|0,C=_,_=0,!(C&1)):0){e=f[d>>2]|0;if(!e){_=0;Se(6);C=_;_=0;if(C&1){e=0;l=0;C=7;break}e=f[d>>2]|0}o=Lc(m<<2)|0;l=o;if(!o){_=0;Se(6);C=_;_=0;if(C&1)C=7;else{v=0;C=10}}else{v=o;C=10}}else{e=0;l=0;C=7}}else{l=0;e=0;v=o;m=h;C=10}}while(0);if((C|0)==10){_=0;o=de(68,n|0)|0;w=_;_=0;if(w&1)C=7;else{f[x>>2]=o;_=0;w=pe(37,x|0,44212)|0;k=_;_=0;if(!(k&1)?(k=f[d>>2]|0,_=0,Ee(f[(f[w>>2]|0)+48>>2]|0,w|0,k|0,k+m|0,v|0)|0,k=_,_=0,!(k&1)):0){if(!m)k=0;else k=(t[f[d>>2]>>0]|0)==45;f[P>>2]=0;f[P+4>>2]=0;f[P+8>>2]=0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;f[O>>2]=0;f[O+4>>2]=0;f[O+8>>2]=0;_=0;ve(4,r|0,k|0,x|0,S|0,M|0,T|0,P|0,B|0,O|0,b|0);r=_;_=0;if(!(r&1)){b=f[b>>2]|0;if((m|0)>(b|0)){r=t[O>>0]|0;h=t[B>>0]|0;h=(m-b<<1|1)+b+((r&1)==0?(r&255)>>>1:f[O+4>>2]|0)+((h&1)==0?(h&255)>>>1:f[B+4>>2]|0)|0}else{r=t[O>>0]|0;h=t[B>>0]|0;h=b+2+((r&1)==0?(r&255)>>>1:f[O+4>>2]|0)+((h&1)==0?(h&255)>>>1:f[B+4>>2]|0)|0}if(h>>>0>100){h=Lc(h<<2)|0;d=h;if(!h){_=0;Se(6);p=_;_=0;if(!(p&1)){h=0;C=26}}else C=26}else{d=0;h=p;C=26}if((C|0)==26){_=0;we(2,h|0,A|0,E|0,f[n+4>>2]|0,v|0,v+(m<<2)|0,w|0,k|0,S|0,f[M>>2]|0,f[T>>2]|0,P|0,B|0,O|0,b|0);T=_;_=0;if(!(T&1)?(f[y>>2]=f[i>>2],i=f[A>>2]|0,L=f[E>>2]|0,_=0,f[g>>2]=f[y>>2],L=he(40,g|0,h|0,i|0,L|0,n|0,a|0)|0,i=_,_=0,!(i&1)):0){if(d){xc(d);o=f[x>>2]|0}Gh(O);Gh(B);Oh(P);bh(o)|0;if(l)xc(l);if(e)xc(e);c=R;return L|0}}h=ze()|0;if(d){xc(d);o=f[x>>2]|0}}else h=ze()|0;Gh(O);Gh(B);Oh(P)}else h=ze()|0;bh(o)|0}}if((C|0)==7)h=ze()|0;if(l)xc(l);if(e)xc(e);$e(h|0);return 0}function uu(e,i,r,n,a,s,l,o,u,h){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;var d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0;T=c;c=c+112|0;d=T+108|0;b=T+96|0;m=T+92|0;v=T+80|0;p=T+68|0;g=T+56|0;y=T+52|0;M=T+40|0;E=T+36|0;A=T+24|0;k=T+12|0;w=T;do{if(e){e=Du(r,43956)|0;r=f[e>>2]|0;do{if(i){aM[f[r+44>>2]&127](d,e);i=f[d>>2]|0;t[n>>0]=i;t[n+1>>0]=i>>8;t[n+2>>0]=i>>16;t[n+3>>0]=i>>24;aM[f[(f[e>>2]|0)+32>>2]&127](b,e);if(!(t[u>>0]&1))t[u>>0]=0;else f[f[u+8>>2]>>2]=0;f[u+4>>2]=0;_=0;ce(93,u|0,0);n=_;_=0;if(n&1){u=ze(0)|0;Fi(u)}else{f[u>>2]=f[b>>2];f[u+4>>2]=f[b+4>>2];f[u+8>>2]=f[b+8>>2];f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;Gh(b);break}}else{aM[f[r+40>>2]&127](m,e);i=f[m>>2]|0;t[n>>0]=i;t[n+1>>0]=i>>8;t[n+2>>0]=i>>16;t[n+3>>0]=i>>24;aM[f[(f[e>>2]|0)+28>>2]&127](v,e);if(!(t[u>>0]&1))t[u>>0]=0;else f[f[u+8>>2]>>2]=0;f[u+4>>2]=0;_=0;ce(93,u|0,0);n=_;_=0;if(n&1){u=ze(0)|0;Fi(u)}else{f[u>>2]=f[v>>2];f[u+4>>2]=f[v+4>>2];f[u+8>>2]=f[v+8>>2];f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;Gh(v);break}}}while(0);f[a>>2]=lM[f[(f[e>>2]|0)+12>>2]&127](e)|0;f[s>>2]=lM[f[(f[e>>2]|0)+16>>2]&127](e)|0;aM[f[(f[e>>2]|0)+20>>2]&127](p,e);if(!(t[l>>0]&1)){t[l+1>>0]=0;t[l>>0]=0}else{t[f[l+8>>2]>>0]=0;f[l+4>>2]=0}_=0;ce(91,l|0,0);s=_;_=0;if(s&1){s=ze(0)|0;Fi(s)}f[l>>2]=f[p>>2];f[l+4>>2]=f[p+4>>2];f[l+8>>2]=f[p+8>>2];f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;Oh(p);aM[f[(f[e>>2]|0)+24>>2]&127](g,e);if(!(t[o>>0]&1))t[o>>0]=0;else f[f[o+8>>2]>>2]=0;f[o+4>>2]=0;_=0;ce(93,o|0,0);s=_;_=0;if(s&1){s=ze(0)|0;Fi(s)}else{f[o>>2]=f[g>>2];f[o+4>>2]=f[g+4>>2];f[o+8>>2]=f[g+8>>2];f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;Gh(g);S=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;break}}else{e=Du(r,43892)|0;r=f[e>>2]|0;do{if(i){aM[f[r+44>>2]&127](y,e);i=f[y>>2]|0;t[n>>0]=i;t[n+1>>0]=i>>8;t[n+2>>0]=i>>16;t[n+3>>0]=i>>24;aM[f[(f[e>>2]|0)+32>>2]&127](M,e);if(!(t[u>>0]&1))t[u>>0]=0;else f[f[u+8>>2]>>2]=0;f[u+4>>2]=0;_=0;ce(93,u|0,0);n=_;_=0;if(n&1){u=ze(0)|0;Fi(u)}else{f[u>>2]=f[M>>2];f[u+4>>2]=f[M+4>>2];f[u+8>>2]=f[M+8>>2];f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;Gh(M);break}}else{aM[f[r+40>>2]&127](E,e);i=f[E>>2]|0;t[n>>0]=i;t[n+1>>0]=i>>8;t[n+2>>0]=i>>16;t[n+3>>0]=i>>24;aM[f[(f[e>>2]|0)+28>>2]&127](A,e);if(!(t[u>>0]&1))t[u>>0]=0;else f[f[u+8>>2]>>2]=0;f[u+4>>2]=0;_=0;ce(93,u|0,0);n=_;_=0;if(n&1){u=ze(0)|0;Fi(u)}else{f[u>>2]=f[A>>2];f[u+4>>2]=f[A+4>>2];f[u+8>>2]=f[A+8>>2];f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;Gh(A);break}}}while(0);f[a>>2]=lM[f[(f[e>>2]|0)+12>>2]&127](e)|0;f[s>>2]=lM[f[(f[e>>2]|0)+16>>2]&127](e)|0;aM[f[(f[e>>2]|0)+20>>2]&127](k,e);if(!(t[l>>0]&1)){t[l+1>>0]=0;t[l>>0]=0}else{t[f[l+8>>2]>>0]=0;f[l+4>>2]=0}_=0;ce(91,l|0,0);s=_;_=0;if(s&1){s=ze(0)|0;Fi(s)}f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;Oh(k);aM[f[(f[e>>2]|0)+24>>2]&127](w,e);if(!(t[o>>0]&1))t[o>>0]=0;else f[f[o+8>>2]>>2]=0;f[o+4>>2]=0;_=0;ce(93,o|0,0);s=_;_=0;if(s&1){s=ze(0)|0;Fi(s)}else{f[o>>2]=f[w>>2];f[o+4>>2]=f[w+4>>2];f[o+8>>2]=f[w+8>>2];f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;Gh(w);S=lM[f[(f[e>>2]|0)+36>>2]&127](e)|0;break}}}while(0);f[h>>2]=S;c=T;return}function cu(e,i,r,n,a,s,l,o,u,c,h,d,b,k,w){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;h=h|0;d=d|0;b=b|0;k=k|0;w=w|0;var _=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0;f[r>>2]=e;I=k+4|0;D=k+8|0;C=b+4|0;R=(n&512|0)==0;L=b+8|0;x=(w|0)>0;P=d+4|0;O=d+8|0;B=d+1|0;S=(w|0)>0;A=0;do{switch(t[u+A>>0]|0){case 0:{f[i>>2]=f[r>>2];break}case 1:{f[i>>2]=f[r>>2];M=kM[f[(f[l>>2]|0)+44>>2]&63](l,32)|0;E=f[r>>2]|0;f[r>>2]=E+4;f[E>>2]=M;break}case 3:{E=t[k>>0]|0;_=(E&1)==0;if((_?(E&255)>>>1:f[I>>2]|0)|0){M=f[(_?I:f[D>>2]|0)>>2]|0;E=f[r>>2]|0;f[r>>2]=E+4;f[E>>2]=M}break}case 2:{g=t[b>>0]|0;_=(g&1)==0;g=_?(g&255)>>>1:f[C>>2]|0;if(!(R|(g|0)==0)){_=_?C:f[L>>2]|0;v=_+(g<<2)|0;p=f[r>>2]|0;if(g){m=p;while(1){f[m>>2]=f[_>>2];_=_+4|0;if((_|0)==(v|0))break;else m=m+4|0}}f[r>>2]=p+(g<<2)}break}case 4:{_=f[r>>2]|0;a=o?a+4|0:a;e:do{if(a>>>0<s>>>0){m=a;do{if(!(uM[f[(f[l>>2]|0)+12>>2]&63](l,2048,f[m>>2]|0)|0))break e;m=m+4|0}while(m>>>0<s>>>0)}else m=a}while(0);if(x){if(m>>>0>a>>>0&S){g=f[r>>2]|0;p=w;while(1){m=m+-4|0;v=g+4|0;f[g>>2]=f[m>>2];y=p+-1|0;p=(p|0)>1;if(m>>>0>a>>>0&p){g=v;p=y}else{g=y;break}}f[r>>2]=v;v=g}else{p=S;v=w}if(p)y=kM[f[(f[l>>2]|0)+44>>2]&63](l,48)|0;else y=0;M=f[r>>2]|0;p=v+((v|0)<0?~v:-1)|0;if((v|0)>0){g=M;while(1){f[g>>2]=y;if((v|0)>1){g=g+4|0;v=v+-1|0}else break}}f[r>>2]=M+(p+2<<2);f[M+(p+1<<2)>>2]=c}if((m|0)==(a|0)){M=kM[f[(f[l>>2]|0)+44>>2]&63](l,48)|0;E=f[r>>2]|0;m=E+4|0;f[r>>2]=m;f[E>>2]=M}else{M=t[d>>0]|0;v=(M&1)==0;E=f[P>>2]|0;if(!((v?(M&255)>>>1:E)|0))v=-1;else v=t[(v?B:f[O>>2]|0)>>0]|0;if((m|0)!=(a|0)){y=0;M=0;while(1){p=f[r>>2]|0;if((M|0)==(v|0)){g=p+4|0;f[r>>2]=g;f[p>>2]=h;y=y+1|0;p=t[d>>0]|0;v=(p&1)==0;if(y>>>0<(v?(p&255)>>>1:E)>>>0){v=t[(v?B:f[O>>2]|0)+y>>0]|0;p=g;v=v<<24>>24==127?-1:v<<24>>24;g=0}else{p=g;v=M;g=0}}else g=M;m=m+-4|0;M=f[m>>2]|0;f[r>>2]=p+4;f[p>>2]=M;if((m|0)==(a|0))break;else M=g+1|0}}m=f[r>>2]|0}if((_|0)!=(m|0)?(T=m+-4|0,_>>>0<T>>>0):0){m=T;do{E=f[_>>2]|0;f[_>>2]=f[m>>2];f[m>>2]=E;_=_+4|0;m=m+-4|0}while(_>>>0<m>>>0)}break}default:{}}A=A+1|0}while((A|0)!=4);_=t[k>>0]|0;a=(_&1)==0;_=a?(_&255)>>>1:f[I>>2]|0;if(_>>>0>1){m=a?I:f[D>>2]|0;a=m+4|0;m=m+(_<<2)|0;v=f[r>>2]|0;p=m-a|0;if((_|0)!=1){_=v;while(1){f[_>>2]=f[a>>2];a=a+4|0;if((a|0)==(m|0))break;else _=_+4|0}}f[r>>2]=v+(p>>>2<<2)}switch(n&176|0){case 32:{f[i>>2]=f[r>>2];break}case 16:break;default:f[i>>2]=e}return}function hu(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0;A=c;c=c+480|0;k=A+468|0;T=A+464|0;M=A+472|0;p=A+56|0;E=A+52|0;C=A+40|0;L=A+28|0;R=A+16|0;h=A+12|0;b=A+64|0;y=A+8|0;g=A+4|0;w=A;e=sd(n)|0;f[T>>2]=e;_=0;m=pe(37,T|0,44212)|0;v=_;_=0;do{if(v&1)x=13;else{d=t[s>>0]|0;l=(d&1)==0;v=s+4|0;if(!((l?(d&255)>>>1:f[v>>2]|0)|0))d=0;else{l=f[(l?v:f[s+8>>2]|0)>>2]|0;_=0;o=pe(f[(f[m>>2]|0)+44>>2]|0,m|0,45)|0;d=_;_=0;if(d&1){x=13;break}d=(l|0)==(o|0)}f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;f[L>>2]=0;f[L+4>>2]=0;f[L+8>>2]=0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;_=0;ve(4,r|0,d|0,T|0,M|0,p|0,E|0,C|0,L|0,R|0,h|0);u=_;_=0;if(!(u&1)){u=t[s>>0]|0;r=f[v>>2]|0;l=(u&1)==0?(u&255)>>>1:r;h=f[h>>2]|0;if((l|0)>(h|0)){P=t[R>>0]|0;o=t[L>>0]|0;l=(l-h<<1|1)+h+((P&1)==0?(P&255)>>>1:f[R+4>>2]|0)+((o&1)==0?(o&255)>>>1:f[L+4>>2]|0)|0}else{P=t[R>>0]|0;l=t[L>>0]|0;l=h+2+((P&1)==0?(P&255)>>>1:f[R+4>>2]|0)+((l&1)==0?(l&255)>>>1:f[L+4>>2]|0)|0}if(l>>>0>100){l=Lc(l<<2)|0;o=l;if(!l){_=0;Se(6);P=_;_=0;if(!(P&1)){u=t[s>>0]|0;r=f[v>>2]|0;l=0;x=17}}else x=17}else{o=0;l=b;x=17}if((x|0)==17){P=(u&1)==0;s=P?v:f[s+8>>2]|0;_=0;we(2,l|0,y|0,g|0,f[n+4>>2]|0,s|0,s+((P?(u&255)>>>1:r)<<2)|0,m|0,d|0,M|0,f[p>>2]|0,f[E>>2]|0,C|0,L|0,R|0,h|0);P=_;_=0;if(!(P&1)?(f[w>>2]=f[i>>2],P=f[y>>2]|0,S=f[g>>2]|0,_=0,f[k>>2]=f[w>>2],S=he(40,k|0,l|0,P|0,S|0,n|0,a|0)|0,P=_,_=0,!(P&1)):0){if(o){xc(o);e=f[T>>2]|0}Gh(R);Gh(L);Oh(C);bh(e)|0;c=A;return S|0}}l=ze()|0;if(o){xc(o);e=f[T>>2]|0}}else l=ze()|0;Gh(R);Gh(L);Oh(C)}}while(0);if((x|0)==13)l=ze()|0;bh(e)|0;$e(l|0);return 0}function du(e){e=e|0;return}function bu(e){e=e|0;Ip(e);return}function ku(e,i,r){e=e|0;i=i|0;r=r|0;e=qg((t[i>>0]&1)==0?i+1|0:f[i+8>>2]|0,1)|0;return e>>>((e|0)!=(-1|0)&1)|0}function wu(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0;o=c;c=c+16|0;u=o;f[u>>2]=0;f[u+4>>2]=0;f[u+8>>2]=0;l=t[s>>0]|0;h=(l&1)==0;i=h?s+1|0:f[s+8>>2]|0;l=h?(l&255)>>>1:f[s+4>>2]|0;s=i+l|0;e:do{if((l|0)>0){while(1){_=0;ce(67,u|0,t[i>>0]|0);h=_;_=0;if(h&1)break;i=i+1|0;if(i>>>0>=s>>>0){l=4;break e}}i=ze()|0;l=7}else l=4}while(0);e:do{if((l|0)==4){_=0;i=Ee(19,((r|0)==-1?-1:r<<1)|0,n|0,a|0,((t[u>>0]&1)==0?u+1|0:f[u+8>>2]|0)|0)|0;h=_;_=0;if(h&1){i=ze()|0;l=7;break}f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;h=Vy(i)|0;s=i+h|0;i:do{if((h|0)>0){while(1){_=0;ce(67,e|0,t[i>>0]|0);h=_;_=0;if(h&1)break;i=i+1|0;if(i>>>0>=s>>>0)break i}i=ze()|0;Oh(e);break e}}while(0);Oh(u);c=o;return}}while(0);Oh(u);$e(i|0)}function _u(e,i){e=e|0;i=i|0;return}function mu(e){e=e|0;return}function vu(e){e=e|0;Ip(e);return}function pu(e,i,r){e=e|0;i=i|0;r=r|0;e=qg((t[i>>0]&1)==0?i+1|0:f[i+8>>2]|0,1)|0;return e>>>((e|0)!=(-1|0)&1)|0}function gu(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0;y=c;c=c+224|0;b=y+184|0;d=y+192|0;h=y+180|0;k=y+176|0;p=y+168|0;v=y+40|0;m=y+32|0;g=y+28|0;M=y+16|0;u=y+8|0;w=y;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;f[u+4>>2]=0;f[u>>2]=44696;o=t[s>>0]|0;E=(o&1)==0;l=s+4|0;i=E?l:f[s+8>>2]|0;s=E?(o&255)>>>1:f[l>>2]|0;l=i+(s<<2)|0;o=d+32|0;e:do{if((s|0)>0){i:while(1){f[k>>2]=i;_=0;s=Te(f[(f[u>>2]|0)+12>>2]|0,u|0,b|0,i|0,l|0,k|0,d|0,o|0,h|0)|0;E=_;_=0;if(E&1){s=12;break}if((s|0)==2?1:(f[k>>2]|0)==(i|0)){s=5;break}if(d>>>0<(f[h>>2]|0)>>>0){i=d;do{_=0;ce(67,M|0,t[i>>0]|0);E=_;_=0;if(E&1){s=11;break i}i=i+1|0}while(i>>>0<(f[h>>2]|0)>>>0)}i=f[k>>2]|0;if(!((s|0)!=2&i>>>0<l>>>0)){s=9;break e}}if((s|0)==5){_=0;ue(190,58955);_=0;i=ze()|0}else if((s|0)==11)i=ze()|0;else if((s|0)==12)i=ze()|0}else s=9}while(0);e:do{if((s|0)==9){_=0;i=Ee(19,((r|0)==-1?-1:r<<1)|0,n|0,a|0,((t[M>>0]&1)==0?M+1|0:f[M+8>>2]|0)|0)|0;E=_;_=0;if(E&1){i=ze()|0;break}f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[w+4>>2]=0;f[w>>2]=44744;E=Vy(i)|0;l=i+E|0;o=l;u=v+128|0;i:do{if((E|0)>0){r:while(1){f[g>>2]=i;_=0;s=Te(f[(f[w>>2]|0)+16>>2]|0,w|0,p|0,i|0,((o-i|0)>32?i+32|0:l)|0,g|0,v|0,u|0,m|0)|0;E=_;_=0;if(E&1){s=24;break}if((s|0)==2?1:(f[g>>2]|0)==(i|0)){s=18;break}if(v>>>0<(f[m>>2]|0)>>>0){i=v;do{_=0;ce(92,e|0,f[i>>2]|0);E=_;_=0;if(E&1){s=23;break r}i=i+4|0}while(i>>>0<(f[m>>2]|0)>>>0)}i=f[g>>2]|0;if(!((s|0)!=2&i>>>0<l>>>0))break i}if((s|0)==18){_=0;ue(190,58955);_=0;i=ze()|0}else if((s|0)==23)i=ze()|0;else if((s|0)==24)i=ze()|0;Gh(e);break e}}while(0);Oh(M);c=y;return}}while(0);Oh(M);$e(i|0)}function yu(e,i){e=e|0;i=i|0;return}function Mu(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0;f[e+4>>2]=i+-1;f[e>>2]=44196;s=e+8|0;_=0;ce(94,s|0,28);a=_;_=0;if(a&1)i=ze()|0;else{a=e+144|0;_=0;Ae(5,a|0,58885,1);n=_;_=0;if(n&1)i=ze()|0;else{r=f[s>>2]|0;n=e+12|0;i=f[n>>2]|0;if((i|0)!=(r|0)){do{i=i+-4|0}while((i|0)!=(r|0));f[n>>2]=i}f[495]=0;f[494]=43124;_=0;ce(95,e|0,1976);n=_;_=0;do{if(((((((((((((!(n&1)?(f[497]=0,f[496]=43164,_=0,ce(96,e|0,1984),n=_,_=0,!(n&1)):0)?(f[499]=0,f[498]=44236,f[500]=0,t[2004]=0,f[500]=zu()|0,_=0,ce(97,e|0,1992),n=_,_=0,!(n&1)):0)?(f[503]=0,f[502]=44484,_=0,ce(98,e|0,2008),n=_,_=0,!(n&1)):0)?(f[505]=0,f[504]=44552,_=0,ce(99,e|0,2016),n=_,_=0,!(n&1)):0)?(_=0,ce(100,2024,1),n=_,_=0,!(n&1)):0)?(_=0,ce(101,e|0,2024),n=_,_=0,!(n&1)):0)?(f[511]=0,f[510]=44600,_=0,ce(102,e|0,2040),n=_,_=0,!(n&1)):0)?(f[513]=0,f[512]=44648,_=0,ce(103,e|0,2048),n=_,_=0,!(n&1)):0)?(fw(2056,1),_=0,ce(104,e|0,2056),n=_,_=0,!(n&1)):0)?(aw(2080,1),_=0,ce(105,e|0,2080),n=_,_=0,!(n&1)):0)?(f[529]=0,f[528]=43204,_=0,ce(106,e|0,2112),n=_,_=0,!(n&1)):0)?(f[531]=0,f[530]=43276,_=0,ce(107,e|0,2120),n=_,_=0,!(n&1)):0)?(f[533]=0,f[532]=43348,_=0,ce(108,e|0,2128),n=_,_=0,!(n&1)):0){f[535]=0;f[534]=43408;_=0;ce(109,e|0,2136);n=_;_=0;if(n&1){l=42;break}f[537]=0;f[536]=43716;_=0;ce(110,e|0,2144);n=_;_=0;if(n&1){l=42;break}f[539]=0;f[538]=43780;_=0;ce(111,e|0,2152);n=_;_=0;if(n&1){l=42;break}f[541]=0;f[540]=43844;_=0;ce(112,e|0,2160);n=_;_=0;if(n&1){l=42;break}f[543]=0;f[542]=43908;_=0;ce(113,e|0,2168);n=_;_=0;if(n&1){l=42;break}f[545]=0;f[544]=43972;_=0;ce(114,e|0,2176);n=_;_=0;if(n&1){l=42;break}f[547]=0;f[546]=44008;_=0;ce(115,e|0,2184);n=_;_=0;if(n&1){l=42;break}f[549]=0;f[548]=44044;_=0;ce(116,e|0,2192);n=_;_=0;if(n&1){l=42;break}f[551]=0;f[550]=44080;_=0;ce(117,e|0,2200);n=_;_=0;if(n&1){l=42;break}f[553]=0;f[552]=43468;f[554]=43516;_=0;ce(118,e|0,2208);n=_;_=0;if(n&1){l=42;break}f[557]=0;f[556]=43560;f[558]=43608;_=0;ce(119,e|0,2224);n=_;_=0;if(n&1){l=42;break}f[561]=0;f[560]=44464;_=0;i=Me(3)|0;n=_;_=0;if(n&1){i=ze()|0;break}f[562]=i;f[560]=43652;_=0;ce(120,e|0,2240);n=_;_=0;if(n&1){l=42;break}f[565]=0;f[564]=44464;_=0;i=Me(3)|0;n=_;_=0;if(n&1){i=ze()|0;break}f[566]=i;f[564]=43684;_=0;ce(121,e|0,2256);l=_;_=0;if(l&1){l=42;break}f[569]=0;f[568]=44116;_=0;ce(122,e|0,2272);l=_;_=0;if(l&1){l=42;break}f[571]=0;f[570]=44156;_=0;ce(123,e|0,2280);l=_;_=0;if(l&1){l=42;break}return}else l=42}while(0);if((l|0)==42)i=ze()|0;Oh(a)}Y_(s)}$e(i|0)}function Eu(){var e=0;do{if((t[2288]|0)==0?(De(2288)|0)!=0:0){_=0;Me(4)|0;e=_;_=0;if(e&1){e=ze()|0;gi(2288);$e(e|0)}else{f[11246]=44980;qe(2288);break}}}while(0);return f[11246]|0}function Au(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0;dh(i);n=e+8|0;t=f[n>>2]|0;do{if((f[e+12>>2]|0)-t>>2>>>0<=r>>>0){_=0;ce(124,n|0,r+1|0);e=_;_=0;if(!(e&1)){t=f[n>>2]|0;break}t=ze()|0;if(i)bh(i)|0;$e(t|0)}}while(0);e=f[t+(r<<2)>>2]|0;if(e){bh(e)|0;t=f[n>>2]|0}f[t+(r<<2)>>2]=i;return}function Su(e){e=e|0;var i=0,r=0,t=0,n=0;f[e>>2]=44196;t=e+8|0;n=e+12|0;i=f[t>>2]|0;if((f[n>>2]|0)!=(i|0)){r=0;do{i=f[i+(r<<2)>>2]|0;if(i)bh(i)|0;r=r+1|0;i=f[t>>2]|0}while(r>>>0<(f[n>>2]|0)-i>>2>>>0)}Oh(e+144|0);Y_(t);return}function Tu(e){e=e|0;Su(e);Ip(e);return}function Cu(e,i){e=e|0;i=i|0;if(X_(e,i)|0)return f[(f[e+8>>2]|0)+(i<<2)>>2]|0;else{e=He(4)|0;Wp(e);bi(e|0,640,82)}return 0}function Ru(){Mu(2296,1);f[11245]=2296;return 44980}function Lu(){var e=0;e=f[(Eu()|0)>>2]|0;f[11247]=e;dh(e);return 44988}function xu(){var e=0;do{if((t[2456]|0)==0?(De(2456)|0)!=0:0){_=0;Me(5)|0;e=_;_=0;if(e&1){e=ze()|0;gi(2456);$e(e|0)}else{f[11248]=44988;qe(2456);break}}}while(0);return f[11248]|0}function Pu(e){e=e|0;var i=0,r=0;_=0;i=Me(6)|0;r=_;_=0;if(r&1){r=ze(0)|0;Fi(r)}else{r=f[i>>2]|0;f[e>>2]=r;dh(r);return}}function Ou(e,i){e=e|0;i=i|0;i=f[i>>2]|0;f[e>>2]=i;dh(i);return}function Bu(e){e=e|0;bh(f[e>>2]|0)|0;return}function Iu(e){e=e|0;var i=0,r=0;r=c;c=c+16|0;i=r;if((f[e>>2]|0)!=-1){f[i>>2]=e;f[i+4>>2]=191;f[i+8>>2]=0;Rh(e,i,192)}c=r;return(f[e+4>>2]|0)+-1|0}function Du(e,i){e=e|0;i=i|0;e=f[e>>2]|0;return Cu(e,Iu(i)|0)|0}function Nu(e){e=e|0;Ip(e);return}function Fu(e){e=e|0;if(e)fM[f[(f[e>>2]|0)+4>>2]&255](e);return}function Uu(e){e=e|0;var i=0;i=f[11052]|0;f[11052]=i+1;f[e+4>>2]=i+1;return}function ju(e){e=e|0;Ip(e);return}function Hu(e,i,r){e=e|0;i=i|0;r=r|0;if(r>>>0<128)r=(n[(zu()|0)+(r<<1)>>1]&i)<<16>>16!=0;else r=0;return r|0}function zu(){var e=0,i=0;_=0;e=Me(7)|0;i=_;_=0;if(i&1){i=ze(0)|0;Fi(i)}else return f[e>>2]|0;return 0}function Yu(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var a=0,l=0;l=(r-i|0)>>>2;if((i|0)!=(r|0)){a=i;while(1){e=f[a>>2]|0;if(e>>>0<128)e=s[(zu()|0)+(e<<1)>>1]|0;else e=0;n[t>>1]=e;a=a+4|0;if((a|0)==(r|0))break;else t=t+2|0}}return i+(l<<2)|0}function qu(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;e:do{if((r|0)==(t|0))r=t;else while(1){e=f[r>>2]|0;if(e>>>0<128?(n[(zu()|0)+(e<<1)>>1]&i)<<16>>16!=0:0)break e;r=r+4|0;if((r|0)==(t|0)){r=t;break}}}while(0);return r|0}function Xu(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;e:do{if((r|0)==(t|0))r=t;else while(1){e=f[r>>2]|0;if(e>>>0>=128)break e;if(!((n[(zu()|0)+(e<<1)>>1]&i)<<16>>16))break e;r=r+4|0;if((r|0)==(t|0)){r=t;break}}}while(0);return r|0}function Vu(e,i){e=e|0;i=i|0;if(i>>>0<128)i=f[(Gu()|0)+(i<<2)>>2]|0;return i|0}function Gu(){var e=0,i=0;_=0;e=Me(8)|0;i=_;_=0;if(i&1){i=ze(0)|0;Fi(i)}else return f[e>>2]|0;return 0}function Ku(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0;n=(r-i|0)>>>2;if((i|0)!=(r|0)){t=i;do{e=f[t>>2]|0;if(e>>>0<128)e=f[(Gu()|0)+(e<<2)>>2]|0;f[t>>2]=e;t=t+4|0}while((t|0)!=(r|0))}return i+(n<<2)|0}function Wu(e,i){e=e|0;i=i|0;if(i>>>0<128)i=f[(Zu()|0)+(i<<2)>>2]|0;return i|0}function Zu(){var e=0,i=0;_=0;e=Me(9)|0;i=_;_=0;if(i&1){i=ze(0)|0;Fi(i)}else return f[e>>2]|0;return 0}function Ju(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0;n=(r-i|0)>>>2;if((i|0)!=(r|0)){t=i;do{e=f[t>>2]|0;if(e>>>0<128)e=f[(Zu()|0)+(e<<2)>>2]|0;f[t>>2]=e;t=t+4|0}while((t|0)!=(r|0))}return i+(n<<2)|0}function Qu(e,i){e=e|0;i=i|0;return i<<24>>24|0}function $u(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;if((i|0)!=(r|0))while(1){f[n>>2]=t[i>>0];i=i+1|0;if((i|0)==(r|0))break;else n=n+4|0}return r|0}function ec(e,i,r){e=e|0;i=i|0;r=r|0;return(i>>>0<128?i&255:r)|0}function ic(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=(r-i|0)>>>2;if((i|0)!=(r|0)){s=i;e=a;while(1){a=f[s>>2]|0;t[e>>0]=a>>>0<128?a&255:n;s=s+4|0;if((s|0)==(r|0))break;else e=e+1|0}}return i+(l<<2)|0}function rc(e){e=e|0;var i=0;f[e>>2]=44236;i=f[e+8>>2]|0;if((i|0)!=0?(t[e+12>>0]|0)!=0:0)Dp(i);return}function tc(e){e=e|0;rc(e);Ip(e);return}function nc(e,i){e=e|0;i=i|0;if(i<<24>>24>-1)i=f[(Gu()|0)+((i&255)<<2)>>2]&255;return i|0}function fc(e,i,r){e=e|0;i=i|0;r=r|0;if((i|0)!=(r|0)){e=i;do{i=t[e>>0]|0;if(i<<24>>24>-1)i=f[(Gu()|0)+(i<<24>>24<<2)>>2]&255;t[e>>0]=i;e=e+1|0}while((e|0)!=(r|0))}return r|0}function ac(e,i){e=e|0;i=i|0;if(i<<24>>24>-1)i=f[(Zu()|0)+(i<<24>>24<<2)>>2]&255;return i|0}function sc(e,i,r){e=e|0;i=i|0;r=r|0;if((i|0)!=(r|0)){e=i;do{i=t[e>>0]|0;if(i<<24>>24>-1)i=f[(Zu()|0)+(i<<24>>24<<2)>>2]&255;t[e>>0]=i;e=e+1|0}while((e|0)!=(r|0))}return r|0}function lc(e,i){e=e|0;i=i|0;return i|0}function oc(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;if((i|0)!=(r|0))while(1){t[n>>0]=t[i>>0]|0;i=i+1|0;if((i|0)==(r|0))break;else n=n+1|0}return r|0}function uc(e,i,r){e=e|0;i=i|0;r=r|0;return(i<<24>>24>-1?i:r)|0}function cc(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;if((i|0)!=(r|0))while(1){e=t[i>>0]|0;t[f>>0]=e<<24>>24>-1?e:n;i=i+1|0;if((i|0)==(r|0))break;else f=f+1|0}return r|0}function hc(e){e=e|0;Ip(e);return}function dc(e,i,r,t,n,a,s,l){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;l=l|0;f[n>>2]=r;f[l>>2]=a;return 3}function bc(e,i,r,t,n,a,s,l){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;l=l|0;f[n>>2]=r;f[l>>2]=a;return 3}function kc(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f[n>>2]=r;return 3}function wc(e){e=e|0;return 1}function _c(e){e=e|0;return 1}function mc(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;e=t-r|0;return(e>>>0<n>>>0?e:n)|0}function vc(e){e=e|0;return 1}function pc(e,i){e=e|0;i=i|0;var r=0;f[e+4>>2]=i+-1;f[e>>2]=44304;_=0;i=Me(3)|0;r=_;_=0;if(r&1){r=ze()|0;$e(r|0)}else{f[e+8>>2]=i;return}}function gc(e){e=e|0;Dw(e);Ip(e);return}function yc(e,i,r,s,l){e=e|0;i=i|0;r=r|0;s=s|0;l=l|0;var o=0,h=0,b=0,k=0,w=0.0,_=0,m=0,v=0,p=0,g=0.0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0,Y=0,q=0,X=0,V=0,G=0,K=0,W=0,Z=0,J=0,Q=0,$=0,ee=0,ie=0,te=0,ne=0,fe=0,ae=0,se=0;se=c;c=c+624|0;ie=se+24|0;ne=se+16|0;te=se+588|0;Z=se+576|0;ee=se;G=se+536|0;ae=se+8|0;fe=se+528|0;F=(e|0)!=0;U=G+40|0;V=U;G=G+39|0;K=ae+4|0;W=Z+12|0;Z=Z+11|0;J=te;Q=W;$=Q-J|0;j=-2-J|0;H=Q+2|0;z=ie+288|0;Y=te+9|0;q=Y;X=te+8|0;o=0;y=i;h=0;i=0;e:while(1){do{if((o|0)>-1)if((h|0)>(2147483647-o|0)){f[(Ig()|0)>>2]=75;o=-1;break}else{o=h+o|0;break}}while(0);h=t[y>>0]|0;if(!(h<<24>>24)){N=245;break}else b=y;i:while(1){switch(h<<24>>24){case 37:{h=b;N=9;break i}case 0:{h=b;break i}default:{}}D=b+1|0;h=t[D>>0]|0;b=D}i:do{if((N|0)==9)while(1){N=0;if((t[h+1>>0]|0)!=37)break i;b=b+1|0;h=h+2|0;if((t[h>>0]|0)==37)N=9;else break}}while(0);E=b-y|0;if(F?(f[e>>2]&32|0)==0:0)Cy(y,E,e)|0;if((b|0)!=(y|0)){y=h;h=E;continue}_=h+1|0;b=t[_>>0]|0;k=(b<<24>>24)+-48|0;if(k>>>0<10){D=(t[h+2>>0]|0)==36;_=D?h+3|0:_;b=t[_>>0]|0;p=D?k:-1;i=D?1:i}else p=-1;h=b<<24>>24;i:do{if((h&-32|0)==32){k=0;while(1){if(!(1<<h+-32&75913)){m=k;h=_;break i}k=1<<(b<<24>>24)+-32|k;_=_+1|0;b=t[_>>0]|0;h=b<<24>>24;if((h&-32|0)!=32){m=k;h=_;break}}}else{m=0;h=_}}while(0);do{if(b<<24>>24==42){k=h+1|0;b=(t[k>>0]|0)+-48|0;if(b>>>0<10?(t[h+2>>0]|0)==36:0){f[l+(b<<2)>>2]=10;i=1;h=h+3|0;b=f[s+((t[k>>0]|0)+-48<<3)>>2]|0}else{if(i){o=-1;break e}if(!F){M=m;h=k;i=0;D=0;break}i=(f[r>>2]|0)+(4-1)&~(4-1);b=f[i>>2]|0;f[r>>2]=i+4;i=0;h=k}if((b|0)<0){M=m|8192;D=0-b|0}else{M=m;D=b}}else{k=(b<<24>>24)+-48|0;if(k>>>0<10){b=0;do{b=(b*10|0)+k|0;h=h+1|0;k=(t[h>>0]|0)+-48|0}while(k>>>0<10);if((b|0)<0){o=-1;break e}else{M=m;D=b}}else{M=m;D=0}}}while(0);i:do{if((t[h>>0]|0)==46){k=h+1|0;b=t[k>>0]|0;if(b<<24>>24!=42){_=(b<<24>>24)+-48|0;if(_>>>0<10){h=k;b=0}else{h=k;_=0;break}while(1){b=(b*10|0)+_|0;h=h+1|0;_=(t[h>>0]|0)+-48|0;if(_>>>0>=10){_=b;break i}}}k=h+2|0;b=(t[k>>0]|0)+-48|0;if(b>>>0<10?(t[h+3>>0]|0)==36:0){f[l+(b<<2)>>2]=10;h=h+4|0;_=f[s+((t[k>>0]|0)+-48<<3)>>2]|0;break}if(i){o=-1;break e}if(F){h=(f[r>>2]|0)+(4-1)&~(4-1);_=f[h>>2]|0;f[r>>2]=h+4;h=k}else{h=k;_=0}}else _=-1}while(0);v=0;while(1){b=(t[h>>0]|0)+-65|0;if(b>>>0>57){o=-1;break e}k=h+1|0;b=t[56223+(v*58|0)+b>>0]|0;m=b&255;if((m+-1|0)>>>0<8){h=k;v=m}else{I=k;break}}if(!(b<<24>>24)){o=-1;break}k=(p|0)>-1;do{if(b<<24>>24==19)if(k){o=-1;break e}else N=52;else{if(k){f[l+(p<<2)>>2]=m;O=s+(p<<3)|0;B=f[O+4>>2]|0;N=ee;f[N>>2]=f[O>>2];f[N+4>>2]=B;N=52;break}if(!F){o=0;break e}Tc(ee,m,r)}}while(0);if((N|0)==52?(N=0,!F):0){y=I;h=E;continue}p=t[h>>0]|0;p=(v|0)!=0&(p&15|0)==3?p&-33:p;k=M&-65537;B=(M&8192|0)==0?M:k;i:do{switch(p|0){case 110:switch(v|0){case 0:{f[f[ee>>2]>>2]=o;y=I;h=E;continue e}case 1:{f[f[ee>>2]>>2]=o;y=I;h=E;continue e}case 2:{y=f[ee>>2]|0;f[y>>2]=o;f[y+4>>2]=((o|0)<0)<<31>>31;y=I;h=E;continue e}case 3:{n[f[ee>>2]>>1]=o;y=I;h=E;continue e}case 4:{t[f[ee>>2]>>0]=o;y=I;h=E;continue e}case 6:{f[f[ee>>2]>>2]=o;y=I;h=E;continue e}case 7:{y=f[ee>>2]|0;f[y>>2]=o;f[y+4>>2]=((o|0)<0)<<31>>31;y=I;h=E;continue e}default:{y=I;h=E;continue e}}case 112:{v=B|8;_=_>>>0>8?_:8;p=120;N=64;break}case 88:case 120:{v=B;N=64;break}case 111:{k=ee;b=f[k>>2]|0;k=f[k+4>>2]|0;if((b|0)==0&(k|0)==0)h=U;else{h=U;do{h=h+-1|0;t[h>>0]=b&7|48;b=Em(b|0,k|0,3)|0;k=P}while(!((b|0)==0&(k|0)==0))}if(!(B&8)){b=B;v=0;m=56703;N=77}else{v=V-h+1|0;b=B;_=(_|0)<(v|0)?v:_;v=0;m=56703;N=77}break}case 105:case 100:{b=ee;h=f[b>>2]|0;b=f[b+4>>2]|0;if((b|0)<0){h=gm(0,0,h|0,b|0)|0;b=P;k=ee;f[k>>2]=h;f[k+4>>2]=b;k=1;m=56703;N=76;break i}if(!(B&2048)){m=B&1;k=m;m=(m|0)==0?56703:56705;N=76}else{k=1;m=56704;N=76}break}case 117:{b=ee;h=f[b>>2]|0;b=f[b+4>>2]|0;k=0;m=56703;N=76;break}case 99:{t[G>>0]=f[ee>>2];y=G;b=1;v=0;p=56703;h=U;break}case 109:{h=Dg(f[(Ig()|0)>>2]|0)|0;N=82;break}case 115:{h=f[ee>>2]|0;h=(h|0)!=0?h:56713;N=82;break}case 67:{f[ae>>2]=f[ee>>2];f[K>>2]=0;f[ee>>2]=ae;_=-1;N=86;break}case 83:{if(!_){Rc(e,32,D,0,B);h=0;N=98}else N=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{w=+u[ee>>3];f[ne>>2]=0;u[d>>3]=w;if((f[d+4>>2]|0)>=0)if(!(B&2048)){O=B&1;x=O;O=(O|0)==0?56721:56726}else{x=1;O=56723}else{w=-w;x=1;O=56720}u[d>>3]=w;L=f[d+4>>2]&2146435072;do{if(L>>>0<2146435072|(L|0)==2146435072&0<0){g=+iy(w,ne)*2.0;b=g!=0.0;if(b)f[ne>>2]=(f[ne>>2]|0)+-1;C=p|32;if((C|0)==97){y=p&32;E=(y|0)==0?O:O+9|0;M=x|2;h=12-_|0;do{if(!(_>>>0>11|(h|0)==0)){w=8.0;do{h=h+-1|0;w=w*16.0}while((h|0)!=0);if((t[E>>0]|0)==45){w=-(w+(-g-w));break}else{w=g+w-w;break}}else w=g}while(0);b=f[ne>>2]|0;h=(b|0)<0?0-b|0:b;h=Cc(h,((h|0)<0)<<31>>31,W)|0;if((h|0)==(W|0)){t[Z>>0]=48;h=Z}t[h+-1>>0]=(b>>31&2)+43;v=h+-2|0;t[v>>0]=p+15;m=(_|0)<1;k=(B&8|0)==0;b=te;while(1){O=~~w;h=b+1|0;t[b>>0]=a[56687+O>>0]|y;w=(w-+(O|0))*16.0;do{if((h-J|0)==1){if(k&(m&w==0.0))break;t[h>>0]=46;h=b+2|0}}while(0);if(!(w!=0.0))break;else b=h}_=(_|0)!=0&(j+h|0)<(_|0)?H+_-v|0:$-v+h|0;k=_+M|0;Rc(e,32,D,k,B);if(!(f[e>>2]&32))Cy(E,M,e)|0;Rc(e,48,D,k,B^65536);h=h-J|0;if(!(f[e>>2]&32))Cy(te,h,e)|0;b=Q-v|0;Rc(e,48,_-(h+b)|0,0,0);if(!(f[e>>2]&32))Cy(v,b,e)|0;Rc(e,32,D,k,B^8192);h=(k|0)<(D|0)?D:k;break}h=(_|0)<0?6:_;if(b){b=(f[ne>>2]|0)+-28|0;f[ne>>2]=b;w=g*268435456.0}else{w=g;b=f[ne>>2]|0}L=(b|0)<0?ie:z;R=L;b=L;do{T=~~w>>>0;f[b>>2]=T;b=b+4|0;w=(w-+(T>>>0))*1.0e9}while(w!=0.0);k=b;b=f[ne>>2]|0;if((b|0)>0){m=L;while(1){v=(b|0)>29?29:b;_=k+-4|0;do{if(_>>>0<m>>>0)_=m;else{b=0;do{T=Sm(f[_>>2]|0,0,v|0)|0;T=Mm(T|0,P|0,b|0,0)|0;b=P;S=Im(T|0,b|0,1e9,0)|0;f[_>>2]=S;b=Bm(T|0,b|0,1e9,0)|0;_=_+-4|0}while(_>>>0>=m>>>0);if(!b){_=m;break}_=m+-4|0;f[_>>2]=b}}while(0);while(1){if(k>>>0<=_>>>0)break;b=k+-4|0;if(!(f[b>>2]|0))k=b;else break}b=(f[ne>>2]|0)-v|0;f[ne>>2]=b;if((b|0)>0)m=_;else break}}else _=L;if((b|0)<0){E=((h+25|0)/9|0)+1|0;A=(C|0)==102;y=_;while(1){M=0-b|0;M=(M|0)>9?9:M;do{if(y>>>0<k>>>0){b=(1<<M)+-1|0;m=1e9>>>M;_=0;v=y;do{T=f[v>>2]|0;f[v>>2]=(T>>>M)+_;_=re(T&b,m)|0;v=v+4|0}while(v>>>0<k>>>0);b=(f[y>>2]|0)==0?y+4|0:y;if(!_){_=b;break}f[k>>2]=_;_=b;k=k+4|0}else _=(f[y>>2]|0)==0?y+4|0:y}while(0);b=A?L:_;k=(k-b>>2|0)>(E|0)?b+(E<<2)|0:k;b=(f[ne>>2]|0)+M|0;f[ne>>2]=b;if((b|0)>=0){y=_;break}else y=_}}else y=_;do{if(y>>>0<k>>>0){b=(R-y>>2)*9|0;m=f[y>>2]|0;if(m>>>0<10)break;else _=10;do{_=_*10|0;b=b+1|0}while(m>>>0>=_>>>0)}else b=0}while(0);S=(C|0)==103;T=(h|0)!=0;_=h-((C|0)!=102?b:0)+((T&S)<<31>>31)|0;if((_|0)<(((k-R>>2)*9|0)+-9|0)){v=_+9216|0;A=(v|0)/9|0;_=L+(A+-1023<<2)|0;v=((v|0)%9|0)+1|0;if((v|0)<9){m=10;do{m=m*10|0;v=v+1|0}while((v|0)!=9)}else m=10;M=f[_>>2]|0;E=(M>>>0)%(m>>>0)|0;if((E|0)==0?(L+(A+-1022<<2)|0)==(k|0):0)m=y;else N=163;do{if((N|0)==163){N=0;g=(((M>>>0)/(m>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;v=(m|0)/2|0;do{if(E>>>0<v>>>0)w=.5;else{if((E|0)==(v|0)?(L+(A+-1022<<2)|0)==(k|0):0){w=1.0;break}w=1.5}}while(0);do{if(x){if((t[O>>0]|0)!=45)break;g=-g;w=-w}}while(0);v=M-E|0;f[_>>2]=v;if(!(g+w!=g)){m=y;break}C=v+m|0;f[_>>2]=C;if(C>>>0>999999999){b=y;while(1){m=_+-4|0;f[_>>2]=0;if(m>>>0<b>>>0){b=b+-4|0;f[b>>2]=0}C=(f[m>>2]|0)+1|0;f[m>>2]=C;if(C>>>0>999999999)_=m;else{y=b;_=m;break}}}b=(R-y>>2)*9|0;v=f[y>>2]|0;if(v>>>0<10){m=y;break}else m=10;do{m=m*10|0;b=b+1|0}while(v>>>0>=m>>>0);m=y}}while(0);C=_+4|0;y=m;k=k>>>0>C>>>0?C:k}E=0-b|0;while(1){if(k>>>0<=y>>>0){A=0;C=k;break}_=k+-4|0;if(!(f[_>>2]|0))k=_;else{A=1;C=k;break}}do{if(S){h=(T&1^1)+h|0;if((h|0)>(b|0)&(b|0)>-5){p=p+-1|0;h=h+-1-b|0}else{p=p+-2|0;h=h+-1|0}k=B&8;if(k)break;do{if(A){k=f[C+-4>>2]|0;if(!k){_=9;break}if(!((k>>>0)%10|0)){m=10;_=0}else{_=0;break}do{m=m*10|0;_=_+1|0}while(((k>>>0)%(m>>>0)|0|0)==0)}else _=9}while(0);k=((C-R>>2)*9|0)+-9|0;if((p|32|0)==102){k=k-_|0;k=(k|0)<0?0:k;h=(h|0)<(k|0)?h:k;k=0;break}else{k=k+b-_|0;k=(k|0)<0?0:k;h=(h|0)<(k|0)?h:k;k=0;break}}else k=B&8}while(0);M=h|k;m=(M|0)!=0&1;v=(p|32|0)==102;if(v){b=(b|0)>0?b:0;p=0}else{_=(b|0)<0?E:b;_=Cc(_,((_|0)<0)<<31>>31,W)|0;if((Q-_|0)<2)do{_=_+-1|0;t[_>>0]=48}while((Q-_|0)<2);t[_+-1>>0]=(b>>31&2)+43;R=_+-2|0;t[R>>0]=p;b=Q-R|0;p=R}E=x+1+h+m+b|0;Rc(e,32,D,E,B);if(!(f[e>>2]&32))Cy(O,x,e)|0;Rc(e,48,D,E,B^65536);do{if(v){_=y>>>0>L>>>0?L:y;b=_;do{k=Cc(f[b>>2]|0,0,Y)|0;do{if((b|0)==(_|0)){if((k|0)!=(Y|0))break;t[X>>0]=48;k=X}else{if(k>>>0<=te>>>0)break;do{k=k+-1|0;t[k>>0]=48}while(k>>>0>te>>>0)}}while(0);if(!(f[e>>2]&32))Cy(k,q-k|0,e)|0;b=b+4|0}while(b>>>0<=L>>>0);do{if(M){if(f[e>>2]&32)break;Cy(56755,1,e)|0}}while(0);if((h|0)>0&b>>>0<C>>>0){k=b;while(1){b=Cc(f[k>>2]|0,0,Y)|0;if(b>>>0>te>>>0)do{b=b+-1|0;t[b>>0]=48}while(b>>>0>te>>>0);if(!(f[e>>2]&32))Cy(b,(h|0)>9?9:h,e)|0;k=k+4|0;b=h+-9|0;if(!((h|0)>9&k>>>0<C>>>0)){h=b;break}else h=b}}Rc(e,48,h+9|0,9,0)}else{v=A?C:y+4|0;if((h|0)>-1){m=(k|0)==0;_=y;do{b=Cc(f[_>>2]|0,0,Y)|0;if((b|0)==(Y|0)){t[X>>0]=48;b=X}do{if((_|0)==(y|0)){k=b+1|0;if(!(f[e>>2]&32))Cy(b,1,e)|0;if(m&(h|0)<1){b=k;break}if(f[e>>2]&32){b=k;break}Cy(56755,1,e)|0;b=k}else{if(b>>>0<=te>>>0)break;do{b=b+-1|0;t[b>>0]=48}while(b>>>0>te>>>0)}}while(0);k=q-b|0;if(!(f[e>>2]&32))Cy(b,(h|0)>(k|0)?k:h,e)|0;h=h-k|0;_=_+4|0}while(_>>>0<v>>>0&(h|0)>-1)}Rc(e,48,h+18|0,18,0);if(f[e>>2]&32)break;Cy(p,Q-p|0,e)|0}}while(0);Rc(e,32,D,E,B^8192);h=(E|0)<(D|0)?D:E}else{v=(p&32|0)!=0;m=w!=w|0.0!=0.0;b=m?0:x;_=b+3|0;Rc(e,32,D,_,k);h=f[e>>2]|0;if(!(h&32)){Cy(O,b,e)|0;h=f[e>>2]|0}if(!(h&32))Cy(m?v?56747:56751:v?56739:56743,3,e)|0;Rc(e,32,D,_,B^8192);h=(_|0)<(D|0)?D:_}}while(0);y=I;continue e}default:{k=B;b=_;v=0;p=56703;h=U}}}while(0);i:do{if((N|0)==64){k=ee;b=f[k>>2]|0;k=f[k+4>>2]|0;m=p&32;if(!((b|0)==0&(k|0)==0)){h=U;do{h=h+-1|0;t[h>>0]=a[56687+(b&15)>>0]|m;b=Em(b|0,k|0,4)|0;k=P}while(!((b|0)==0&(k|0)==0));N=ee;if((v&8|0)==0|(f[N>>2]|0)==0&(f[N+4>>2]|0)==0){b=v;v=0;m=56703;N=77}else{b=v;v=2;m=56703+(p>>4)|0;N=77}}else{h=U;b=v;v=0;m=56703;N=77}}else if((N|0)==76){h=Cc(h,b,U)|0;b=B;v=k;N=77}else if((N|0)==82){N=0;B=zy(h,0,_)|0;O=(B|0)==0;y=h;b=O?_:B-h|0;v=0;p=56703;h=O?h+_|0:B}else if((N|0)==86){N=0;b=0;h=0;m=f[ee>>2]|0;while(1){k=f[m>>2]|0;if(!k)break;h=dy(fe,k)|0;if((h|0)<0|h>>>0>(_-b|0)>>>0)break;b=h+b|0;if(_>>>0>b>>>0)m=m+4|0;else break}if((h|0)<0){o=-1;break e}Rc(e,32,D,b,B);if(!b){h=0;N=98}else{k=0;_=f[ee>>2]|0;while(1){h=f[_>>2]|0;if(!h){h=b;N=98;break i}h=dy(fe,h)|0;k=h+k|0;if((k|0)>(b|0)){h=b;N=98;break i}if(!(f[e>>2]&32))Cy(fe,h,e)|0;if(k>>>0>=b>>>0){h=b;N=98;break}else _=_+4|0}}}}while(0);if((N|0)==98){N=0;Rc(e,32,D,h,B^8192);y=I;h=(D|0)>(h|0)?D:h;continue}if((N|0)==77){N=0;k=(_|0)>-1?b&-65537:b;b=ee;b=(f[b>>2]|0)!=0|(f[b+4>>2]|0)!=0;if((_|0)!=0|b){b=(b&1^1)+(V-h)|0;y=h;b=(_|0)>(b|0)?_:b;p=m;h=U}else{y=U;b=0;p=m;h=U}}m=h-y|0;b=(b|0)<(m|0)?m:b;_=v+b|0;h=(D|0)<(_|0)?_:D;Rc(e,32,h,_,k);if(!(f[e>>2]&32))Cy(p,v,e)|0;Rc(e,48,h,_,k^65536);Rc(e,48,b,m,0);if(!(f[e>>2]&32))Cy(y,m,e)|0;Rc(e,32,h,_,k^8192);y=I}e:do{if((N|0)==245)if(!e)if(i){o=1;while(1){i=f[l+(o<<2)>>2]|0;if(!i)break;Tc(s+(o<<3)|0,i,r);o=o+1|0;if((o|0)>=10){o=1;break e}}if((o|0)<10)while(1){if(f[l+(o<<2)>>2]|0){o=-1;break e}o=o+1|0;if((o|0)>=10){o=1;break}}else o=1}else o=0}while(0);c=se;return o|0}function Mc(e,i,r){e=e|0;i=i|0;r=r|0;return yy(e,i,r)|0}function Ec(e,i,r){e=e|0;i=i|0;r=r|0;var t=0.0,n=0,a=0,s=0,l=0;l=c;c=c+112|0;s=l;n=s;a=n+112|0;do{f[n>>2]=0;n=n+4|0}while((n|0)<(a|0));n=s+4|0;f[n>>2]=e;a=s+8|0;f[a>>2]=-1;f[s+44>>2]=e;f[s+76>>2]=-1;Ug(s,0);t=+Ng(s,r,1);r=(f[n>>2]|0)-(f[a>>2]|0)+(f[s+108>>2]|0)|0;if(i)f[i>>2]=(r|0)!=0?e+r|0:e;c=l;return+t}function Ac(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0,o=0;o=c;c=c+112|0;l=o;f[l>>2]=0;a=l+4|0;f[a>>2]=e;f[l+44>>2]=e;s=l+8|0;f[s>>2]=(e|0)<0?-1:e+2147483647|0;f[l+76>>2]=-1;Ug(l,0);t=Fg(l,r,1,t,n)|0;if(i)f[i>>2]=e+((f[a>>2]|0)+(f[l+108>>2]|0)-(f[s>>2]|0));c=o;return t|0}function Sc(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0;t=e+20|0;n=f[t>>2]|0;e=(f[e+16>>2]|0)-n|0;e=e>>>0>r>>>0?r:e;Am(n|0,i|0,e|0)|0;f[t>>2]=(f[t>>2]|0)+e;return r|0}function Tc(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0.0;e:do{if(i>>>0<=20)do{switch(i|0){case 9:{t=(f[r>>2]|0)+(4-1)&~(4-1);i=f[t>>2]|0;f[r>>2]=t+4;f[e>>2]=i;break e}case 10:{t=(f[r>>2]|0)+(4-1)&~(4-1);i=f[t>>2]|0;f[r>>2]=t+4;t=e;f[t>>2]=i;f[t+4>>2]=((i|0)<0)<<31>>31;break e}case 11:{t=(f[r>>2]|0)+(4-1)&~(4-1);i=f[t>>2]|0;f[r>>2]=t+4;t=e;f[t>>2]=i;f[t+4>>2]=0;break e}case 12:{t=(f[r>>2]|0)+(8-1)&~(8-1);i=t;n=f[i>>2]|0;i=f[i+4>>2]|0;f[r>>2]=t+8;t=e;f[t>>2]=n;f[t+4>>2]=i;break e}case 13:{n=(f[r>>2]|0)+(4-1)&~(4-1);t=f[n>>2]|0;f[r>>2]=n+4;t=(t&65535)<<16>>16;n=e;f[n>>2]=t;f[n+4>>2]=((t|0)<0)<<31>>31;break e}case 14:{n=(f[r>>2]|0)+(4-1)&~(4-1);t=f[n>>2]|0;f[r>>2]=n+4;n=e;f[n>>2]=t&65535;f[n+4>>2]=0;break e}case 15:{n=(f[r>>2]|0)+(4-1)&~(4-1);t=f[n>>2]|0;f[r>>2]=n+4;t=(t&255)<<24>>24;n=e;f[n>>2]=t;f[n+4>>2]=((t|0)<0)<<31>>31;break e}case 16:{n=(f[r>>2]|0)+(4-1)&~(4-1);t=f[n>>2]|0;f[r>>2]=n+4;n=e;f[n>>2]=t&255;f[n+4>>2]=0;break e}case 17:{n=(f[r>>2]|0)+(8-1)&~(8-1);a=+u[n>>3];f[r>>2]=n+8;u[e>>3]=a;break e}case 18:{n=(f[r>>2]|0)+(8-1)&~(8-1);a=+u[n>>3];f[r>>2]=n+8;u[e>>3]=a;break e}default:break e}}while(0)}while(0);return}function Cc(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if(i>>>0>0|(i|0)==0&e>>>0>4294967295)while(1){n=Im(e|0,i|0,10,0)|0;r=r+-1|0;t[r>>0]=n|48;n=Bm(e|0,i|0,10,0)|0;if(i>>>0>9|(i|0)==9&e>>>0>4294967295){e=n;i=P}else{e=n;break}}if(e)while(1){r=r+-1|0;t[r>>0]=(e>>>0)%10|0|48;if(e>>>0<10)break;else e=(e>>>0)/10|0}return r|0}function Rc(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0;l=c;c=c+256|0;s=l;do{if((r|0)>(t|0)&(n&73728|0)==0){n=r-t|0;ym(s|0,i|0,(n>>>0>256?256:n)|0)|0;i=f[e>>2]|0;a=(i&32|0)==0;if(n>>>0>255){t=r-t|0;do{if(a){Cy(s,256,e)|0;i=f[e>>2]|0}n=n+-256|0;a=(i&32|0)==0}while(n>>>0>255);if(a)n=t&255;else break}else if(!a)break;Cy(s,n,e)|0}}while(0);c=l;return}function Lc(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0,I=0,D=0,N=0,F=0;do{if(e>>>0<245){b=e>>>0<11?16:e+11&-8;e=b>>>3;l=f[10218]|0;r=l>>>e;if(r&3){e=(r&1^1)+e|0;t=e<<1;r=40912+(t<<2)|0;t=40912+(t+2<<2)|0;n=f[t>>2]|0;a=n+8|0;s=f[a>>2]|0;do{if((r|0)!=(s|0)){if(s>>>0<(f[10222]|0)>>>0)Ie();i=s+12|0;if((f[i>>2]|0)==(n|0)){f[i>>2]=r;f[t>>2]=s;break}else Ie()}else f[10218]=l&~(1<<e)}while(0);F=e<<3;f[n+4>>2]=F|3;F=n+(F|4)|0;f[F>>2]=f[F>>2]|1;F=a;return F|0}s=f[10220]|0;if(b>>>0>s>>>0){if(r){t=2<<e;t=r<<e&(t|0-t);t=(t&0-t)+-1|0;o=t>>>12&16;t=t>>>o;n=t>>>5&8;t=t>>>n;a=t>>>2&4;t=t>>>a;r=t>>>1&2;t=t>>>r;e=t>>>1&1;e=(n|o|a|r|e)+(t>>>e)|0;t=e<<1;r=40912+(t<<2)|0;t=40912+(t+2<<2)|0;a=f[t>>2]|0;o=a+8|0;n=f[o>>2]|0;do{if((r|0)!=(n|0)){if(n>>>0<(f[10222]|0)>>>0)Ie();i=n+12|0;if((f[i>>2]|0)==(a|0)){f[i>>2]=r;f[t>>2]=n;u=f[10220]|0;break}else Ie()}else{f[10218]=l&~(1<<e);u=s}}while(0);F=e<<3;s=F-b|0;f[a+4>>2]=b|3;l=a+b|0;f[a+(b|4)>>2]=s|1;f[a+F>>2]=s;if(u){n=f[10223]|0;r=u>>>3;i=r<<1;t=40912+(i<<2)|0;e=f[10218]|0;r=1<<r;if(e&r){e=40912+(i+2<<2)|0;i=f[e>>2]|0;if(i>>>0<(f[10222]|0)>>>0)Ie();else{c=e;h=i}}else{f[10218]=e|r;c=40912+(i+2<<2)|0;h=t}f[c>>2]=n;f[h+12>>2]=n;f[n+8>>2]=h;f[n+12>>2]=t}f[10220]=s;f[10223]=l;F=o;return F|0}e=f[10219]|0;if(e){r=(e&0-e)+-1|0;N=r>>>12&16;r=r>>>N;D=r>>>5&8;r=r>>>D;F=r>>>2&4;r=r>>>F;e=r>>>1&2;r=r>>>e;t=r>>>1&1;t=f[41176+((D|N|F|e|t)+(r>>>t)<<2)>>2]|0;r=(f[t+4>>2]&-8)-b|0;e=t;while(1){i=f[e+16>>2]|0;if(!i){i=f[e+20>>2]|0;if(!i){o=r;break}}e=(f[i+4>>2]&-8)-b|0;F=e>>>0<r>>>0;r=F?e:r;e=i;t=F?i:t}a=f[10222]|0;if(t>>>0<a>>>0)Ie();l=t+b|0;if(t>>>0>=l>>>0)Ie();s=f[t+24>>2]|0;r=f[t+12>>2]|0;do{if((r|0)==(t|0)){e=t+20|0;i=f[e>>2]|0;if(!i){e=t+16|0;i=f[e>>2]|0;if(!i){d=0;break}}while(1){r=i+20|0;n=f[r>>2]|0;if(n){i=n;e=r;continue}r=i+16|0;n=f[r>>2]|0;if(!n)break;else{i=n;e=r}}if(e>>>0<a>>>0)Ie();else{f[e>>2]=0;d=i;break}}else{n=f[t+8>>2]|0;if(n>>>0<a>>>0)Ie();i=n+12|0;if((f[i>>2]|0)!=(t|0))Ie();e=r+8|0;if((f[e>>2]|0)==(t|0)){f[i>>2]=r;f[e>>2]=n;d=r;break}else Ie()}}while(0);do{if(s){i=f[t+28>>2]|0;e=41176+(i<<2)|0;if((t|0)==(f[e>>2]|0)){f[e>>2]=d;if(!d){f[10219]=f[10219]&~(1<<i);break}}else{if(s>>>0<(f[10222]|0)>>>0)Ie();i=s+16|0;if((f[i>>2]|0)==(t|0))f[i>>2]=d;else f[s+20>>2]=d;if(!d)break}e=f[10222]|0;if(d>>>0<e>>>0)Ie();f[d+24>>2]=s;i=f[t+16>>2]|0;do{if(i)if(i>>>0<e>>>0)Ie();else{f[d+16>>2]=i;f[i+24>>2]=d;break}}while(0);i=f[t+20>>2]|0;if(i)if(i>>>0<(f[10222]|0)>>>0)Ie();else{f[d+20>>2]=i;f[i+24>>2]=d;break}}}while(0);if(o>>>0<16){F=o+b|0;f[t+4>>2]=F|3;F=t+(F+4)|0;f[F>>2]=f[F>>2]|1}else{f[t+4>>2]=b|3;f[t+(b|4)>>2]=o|1;f[t+(o+b)>>2]=o;i=f[10220]|0;if(i){a=f[10223]|0;r=i>>>3;i=r<<1;n=40912+(i<<2)|0;e=f[10218]|0;r=1<<r;if(e&r){i=40912+(i+2<<2)|0;e=f[i>>2]|0;if(e>>>0<(f[10222]|0)>>>0)Ie();else{k=i;w=e}}else{f[10218]=e|r;k=40912+(i+2<<2)|0;w=n}f[k>>2]=a;f[w+12>>2]=a;f[a+8>>2]=w;f[a+12>>2]=n}f[10220]=o;f[10223]=l}F=t+8|0;return F|0}else w=b}else w=b}else if(e>>>0<=4294967231){e=e+11|0;h=e&-8;c=f[10219]|0;if(c){r=0-h|0;e=e>>>8;if(e)if(h>>>0>16777215)u=31;else{w=(e+1048320|0)>>>16&8;g=e<<w;k=(g+520192|0)>>>16&4;g=g<<k;u=(g+245760|0)>>>16&2;u=14-(k|w|u)+(g<<u>>>15)|0;u=h>>>(u+7|0)&1|u<<1}else u=0;e=f[41176+(u<<2)>>2]|0;e:do{if(!e){n=0;e=0;g=86}else{s=r;n=0;l=h<<((u|0)==31?0:25-(u>>>1)|0);o=e;e=0;while(1){a=f[o+4>>2]&-8;r=a-h|0;if(r>>>0<s>>>0)if((a|0)==(h|0)){a=o;e=o;g=90;break e}else e=o;else r=s;g=f[o+20>>2]|0;o=f[o+16+(l>>>31<<2)>>2]|0;n=(g|0)==0|(g|0)==(o|0)?n:g;if(!o){g=86;break}else{s=r;l=l<<1}}}}while(0);if((g|0)==86){if((n|0)==0&(e|0)==0){e=2<<u;e=c&(e|0-e);if(!e){w=h;break}e=(e&0-e)+-1|0;d=e>>>12&16;e=e>>>d;c=e>>>5&8;e=e>>>c;k=e>>>2&4;e=e>>>k;w=e>>>1&2;e=e>>>w;n=e>>>1&1;n=f[41176+((c|d|k|w|n)+(e>>>n)<<2)>>2]|0;e=0}if(!n){l=r;o=e}else{a=n;g=90}}if((g|0)==90)while(1){g=0;w=(f[a+4>>2]&-8)-h|0;n=w>>>0<r>>>0;r=n?w:r;e=n?a:e;n=f[a+16>>2]|0;if(n){a=n;g=90;continue}a=f[a+20>>2]|0;if(!a){l=r;o=e;break}else g=90}if((o|0)!=0?l>>>0<((f[10220]|0)-h|0)>>>0:0){n=f[10222]|0;if(o>>>0<n>>>0)Ie();s=o+h|0;if(o>>>0>=s>>>0)Ie();a=f[o+24>>2]|0;r=f[o+12>>2]|0;do{if((r|0)==(o|0)){e=o+20|0;i=f[e>>2]|0;if(!i){e=o+16|0;i=f[e>>2]|0;if(!i){b=0;break}}while(1){r=i+20|0;t=f[r>>2]|0;if(t){i=t;e=r;continue}r=i+16|0;t=f[r>>2]|0;if(!t)break;else{i=t;e=r}}if(e>>>0<n>>>0)Ie();else{f[e>>2]=0;b=i;break}}else{t=f[o+8>>2]|0;if(t>>>0<n>>>0)Ie();i=t+12|0;if((f[i>>2]|0)!=(o|0))Ie();e=r+8|0;if((f[e>>2]|0)==(o|0)){f[i>>2]=r;f[e>>2]=t;b=r;break}else Ie()}}while(0);do{if(a){i=f[o+28>>2]|0;e=41176+(i<<2)|0;if((o|0)==(f[e>>2]|0)){f[e>>2]=b;if(!b){f[10219]=f[10219]&~(1<<i);break}}else{if(a>>>0<(f[10222]|0)>>>0)Ie();i=a+16|0;if((f[i>>2]|0)==(o|0))f[i>>2]=b;else f[a+20>>2]=b;if(!b)break}e=f[10222]|0;if(b>>>0<e>>>0)Ie();f[b+24>>2]=a;i=f[o+16>>2]|0;do{if(i)if(i>>>0<e>>>0)Ie();else{f[b+16>>2]=i;f[i+24>>2]=b;break}}while(0);i=f[o+20>>2]|0;if(i)if(i>>>0<(f[10222]|0)>>>0)Ie();else{f[b+20>>2]=i;f[i+24>>2]=b;break}}}while(0);e:do{if(l>>>0>=16){f[o+4>>2]=h|3;f[o+(h|4)>>2]=l|1;f[o+(l+h)>>2]=l;i=l>>>3;if(l>>>0<256){e=i<<1;t=40912+(e<<2)|0;r=f[10218]|0;i=1<<i;if(r&i){i=40912+(e+2<<2)|0;e=f[i>>2]|0;if(e>>>0<(f[10222]|0)>>>0)Ie();else{m=i;v=e}}else{f[10218]=r|i;m=40912+(e+2<<2)|0;v=t}f[m>>2]=s;f[v+12>>2]=s;f[o+(h+8)>>2]=v;f[o+(h+12)>>2]=t;break}i=l>>>8;if(i)if(l>>>0>16777215)t=31;else{N=(i+1048320|0)>>>16&8;F=i<<N;D=(F+520192|0)>>>16&4;F=F<<D;t=(F+245760|0)>>>16&2;t=14-(D|N|t)+(F<<t>>>15)|0;t=l>>>(t+7|0)&1|t<<1}else t=0;i=41176+(t<<2)|0;f[o+(h+28)>>2]=t;f[o+(h+20)>>2]=0;f[o+(h+16)>>2]=0;e=f[10219]|0;r=1<<t;if(!(e&r)){f[10219]=e|r;f[i>>2]=s;f[o+(h+24)>>2]=i;f[o+(h+12)>>2]=s;f[o+(h+8)>>2]=s;break}i=f[i>>2]|0;i:do{if((f[i+4>>2]&-8|0)!=(l|0)){t=l<<((t|0)==31?0:25-(t>>>1)|0);while(1){e=i+16+(t>>>31<<2)|0;r=f[e>>2]|0;if(!r)break;if((f[r+4>>2]&-8|0)==(l|0)){E=r;break i}else{t=t<<1;i=r}}if(e>>>0<(f[10222]|0)>>>0)Ie();else{f[e>>2]=s;f[o+(h+24)>>2]=i;f[o+(h+12)>>2]=s;f[o+(h+8)>>2]=s;break e}}else E=i}while(0);i=E+8|0;e=f[i>>2]|0;F=f[10222]|0;if(e>>>0>=F>>>0&E>>>0>=F>>>0){f[e+12>>2]=s;f[i>>2]=s;f[o+(h+8)>>2]=e;f[o+(h+12)>>2]=E;f[o+(h+24)>>2]=0;break}else Ie()}else{F=l+h|0;f[o+4>>2]=F|3;F=o+(F+4)|0;f[F>>2]=f[F>>2]|1}}while(0);F=o+8|0;return F|0}else w=h}else w=h}else w=-1}while(0);r=f[10220]|0;if(r>>>0>=w>>>0){i=r-w|0;e=f[10223]|0;if(i>>>0>15){f[10223]=e+w;f[10220]=i;f[e+(w+4)>>2]=i|1;f[e+r>>2]=i;f[e+4>>2]=w|3}else{f[10220]=0;f[10223]=0;f[e+4>>2]=r|3;F=e+(r+4)|0;f[F>>2]=f[F>>2]|1}F=e+8|0;return F|0}e=f[10221]|0;if(e>>>0>w>>>0){N=e-w|0;f[10221]=N;F=f[10224]|0;f[10224]=F+w;f[F+(w+4)>>2]=N|1;f[F+4>>2]=w|3;F=F+8|0;return F|0}do{if(!(f[10336]|0)){e=ii(30)|0;if(!(e+-1&e)){f[10338]=e;f[10337]=e;f[10339]=-1;f[10340]=-1;f[10341]=0;f[10329]=0;f[10336]=(vi(0)|0)&-16^1431655768;break}else Ie()}}while(0);o=w+48|0;l=f[10338]|0;u=w+47|0;s=l+u|0;l=0-l|0;c=s&l;if(c>>>0<=w>>>0){F=0;return F|0}e=f[10328]|0;if((e|0)!=0?(v=f[10326]|0,E=v+c|0,E>>>0<=v>>>0|E>>>0>e>>>0):0){F=0;return F|0}e:do{if(!(f[10329]&4)){e=f[10224]|0;i:do{if(e){n=41320;while(1){r=f[n>>2]|0;if(r>>>0<=e>>>0?(_=n+4|0,(r+(f[_>>2]|0)|0)>>>0>e>>>0):0){a=n;e=_;break}n=f[n+8>>2]|0;if(!n){g=174;break i}}r=s-(f[10221]|0)&l;if(r>>>0<2147483647){n=We(r|0)|0;E=(n|0)==((f[a>>2]|0)+(f[e>>2]|0)|0);e=E?r:0;if(E){if((n|0)!=(-1|0)){y=n;k=e;g=194;break e}}else g=184}else e=0}else g=174}while(0);do{if((g|0)==174){a=We(0)|0;if((a|0)!=(-1|0)){e=a;r=f[10337]|0;n=r+-1|0;if(!(n&e))r=c;else r=c-e+(n+e&0-r)|0;e=f[10326]|0;n=e+r|0;if(r>>>0>w>>>0&r>>>0<2147483647){E=f[10328]|0;if((E|0)!=0?n>>>0<=e>>>0|n>>>0>E>>>0:0){e=0;break}n=We(r|0)|0;E=(n|0)==(a|0);e=E?r:0;if(E){y=a;k=e;g=194;break e}else g=184}else e=0}else e=0}}while(0);i:do{if((g|0)==184){a=0-r|0;do{if(o>>>0>r>>>0&(r>>>0<2147483647&(n|0)!=(-1|0))?(p=f[10338]|0,p=u-r+p&0-p,p>>>0<2147483647):0)if((We(p|0)|0)==(-1|0)){We(a|0)|0;break i}else{r=p+r|0;break}}while(0);if((n|0)!=(-1|0)){y=n;k=r;g=194;break e}}}while(0);f[10329]=f[10329]|4;g=191}else{e=0;g=191}}while(0);if((((g|0)==191?c>>>0<2147483647:0)?(y=We(c|0)|0,M=We(0)|0,y>>>0<M>>>0&((y|0)!=(-1|0)&(M|0)!=(-1|0))):0)?(A=M-y|0,S=A>>>0>(w+40|0)>>>0,S):0){k=S?A:e;g=194}if((g|0)==194){e=(f[10326]|0)+k|0;f[10326]=e;if(e>>>0>(f[10327]|0)>>>0)f[10327]=e;s=f[10224]|0;e:do{if(s){a=41320;do{e=f[a>>2]|0;r=a+4|0;n=f[r>>2]|0;if((y|0)==(e+n|0)){T=e;C=r;R=n;L=a;g=204;break}a=f[a+8>>2]|0}while((a|0)!=0);if(((g|0)==204?(f[L+12>>2]&8|0)==0:0)?s>>>0<y>>>0&s>>>0>=T>>>0:0){f[C>>2]=R+k;F=(f[10221]|0)+k|0;N=s+8|0;N=(N&7|0)==0?0:0-N&7;D=F-N|0;f[10224]=s+N;f[10221]=D;f[s+(N+4)>>2]=D|1;f[s+(F+4)>>2]=40;f[10225]=f[10340];break}e=f[10222]|0;if(y>>>0<e>>>0){f[10222]=y;e=y}r=y+k|0;a=41320;while(1){if((f[a>>2]|0)==(r|0)){n=a;r=a;g=212;break}a=f[a+8>>2]|0;if(!a){r=41320;break}}if((g|0)==212)if(!(f[r+12>>2]&8)){f[n>>2]=y;d=r+4|0;f[d>>2]=(f[d>>2]|0)+k;d=y+8|0;d=(d&7|0)==0?0:0-d&7;u=y+(k+8)|0;u=(u&7|0)==0?0:0-u&7;i=y+(u+k)|0;h=d+w|0;b=y+h|0;c=i-(y+d)-w|0;f[y+(d+4)>>2]=w|3;i:do{if((i|0)!=(s|0)){if((i|0)==(f[10223]|0)){F=(f[10220]|0)+c|0;f[10220]=F;f[10223]=b;f[y+(h+4)>>2]=F|1;f[y+(F+h)>>2]=F;break}l=k+4|0;r=f[y+(l+u)>>2]|0;if((r&3|0)==1){o=r&-8;a=r>>>3;r:do{if(r>>>0>=256){s=f[y+((u|24)+k)>>2]|0;t=f[y+(k+12+u)>>2]|0;do{if((t|0)==(i|0)){n=u|16;t=y+(l+n)|0;r=f[t>>2]|0;if(!r){t=y+(n+k)|0;r=f[t>>2]|0;if(!r){I=0;break}}while(1){n=r+20|0;a=f[n>>2]|0;if(a){r=a;t=n;continue}n=r+16|0;a=f[n>>2]|0;if(!a)break;else{r=a;t=n}}if(t>>>0<e>>>0)Ie();else{f[t>>2]=0;I=r;break}}else{n=f[y+((u|8)+k)>>2]|0;if(n>>>0<e>>>0)Ie();e=n+12|0;if((f[e>>2]|0)!=(i|0))Ie();r=t+8|0;if((f[r>>2]|0)==(i|0)){f[e>>2]=t;f[r>>2]=n;I=t;break}else Ie()}}while(0);if(!s)break;e=f[y+(k+28+u)>>2]|0;r=41176+(e<<2)|0;do{if((i|0)!=(f[r>>2]|0)){if(s>>>0<(f[10222]|0)>>>0)Ie();e=s+16|0;if((f[e>>2]|0)==(i|0))f[e>>2]=I;else f[s+20>>2]=I;if(!I)break r}else{f[r>>2]=I;if(I)break;f[10219]=f[10219]&~(1<<e);break r}}while(0);r=f[10222]|0;if(I>>>0<r>>>0)Ie();f[I+24>>2]=s;i=u|16;e=f[y+(i+k)>>2]|0;do{if(e)if(e>>>0<r>>>0)Ie();else{f[I+16>>2]=e;f[e+24>>2]=I;break}}while(0);i=f[y+(l+i)>>2]|0;if(!i)break;if(i>>>0<(f[10222]|0)>>>0)Ie();else{f[I+20>>2]=i;f[i+24>>2]=I;break}}else{t=f[y+((u|8)+k)>>2]|0;n=f[y+(k+12+u)>>2]|0;r=40912+(a<<1<<2)|0;do{if((t|0)!=(r|0)){if(t>>>0<e>>>0)Ie();if((f[t+12>>2]|0)==(i|0))break;Ie()}}while(0);if((n|0)==(t|0)){f[10218]=f[10218]&~(1<<a);break}do{if((n|0)==(r|0))x=n+8|0;else{if(n>>>0<e>>>0)Ie();e=n+8|0;if((f[e>>2]|0)==(i|0)){x=e;break}Ie()}}while(0);f[t+12>>2]=n;f[x>>2]=t}}while(0);i=y+((o|u)+k)|0;n=o+c|0}else n=c;i=i+4|0;f[i>>2]=f[i>>2]&-2;f[y+(h+4)>>2]=n|1;f[y+(n+h)>>2]=n;i=n>>>3;if(n>>>0<256){e=i<<1;t=40912+(e<<2)|0;r=f[10218]|0;i=1<<i;do{if(!(r&i)){f[10218]=r|i;D=40912+(e+2<<2)|0;N=t}else{i=40912+(e+2<<2)|0;e=f[i>>2]|0;if(e>>>0>=(f[10222]|0)>>>0){D=i;N=e;break}Ie()}}while(0);f[D>>2]=b;f[N+12>>2]=b;f[y+(h+8)>>2]=N;f[y+(h+12)>>2]=t;break}i=n>>>8;do{if(!i)t=0;else{if(n>>>0>16777215){t=31;break}D=(i+1048320|0)>>>16&8;N=i<<D;I=(N+520192|0)>>>16&4;N=N<<I;t=(N+245760|0)>>>16&2;t=14-(I|D|t)+(N<<t>>>15)|0;t=n>>>(t+7|0)&1|t<<1}}while(0);i=41176+(t<<2)|0;f[y+(h+28)>>2]=t;f[y+(h+20)>>2]=0;f[y+(h+16)>>2]=0;e=f[10219]|0;r=1<<t;if(!(e&r)){f[10219]=e|r;f[i>>2]=b;f[y+(h+24)>>2]=i;f[y+(h+12)>>2]=b;f[y+(h+8)>>2]=b;break}i=f[i>>2]|0;r:do{if((f[i+4>>2]&-8|0)!=(n|0)){t=n<<((t|0)==31?0:25-(t>>>1)|0);while(1){e=i+16+(t>>>31<<2)|0;r=f[e>>2]|0;if(!r)break;if((f[r+4>>2]&-8|0)==(n|0)){F=r;break r}else{t=t<<1;i=r}}if(e>>>0<(f[10222]|0)>>>0)Ie();else{f[e>>2]=b;f[y+(h+24)>>2]=i;f[y+(h+12)>>2]=b;f[y+(h+8)>>2]=b;break i}}else F=i}while(0);i=F+8|0;e=f[i>>2]|0;N=f[10222]|0;if(e>>>0>=N>>>0&F>>>0>=N>>>0){f[e+12>>2]=b;f[i>>2]=b;f[y+(h+8)>>2]=e;f[y+(h+12)>>2]=F;f[y+(h+24)>>2]=0;break}else Ie()}else{F=(f[10221]|0)+c|0;f[10221]=F;f[10224]=b;f[y+(h+4)>>2]=F|1}}while(0);F=y+(d|8)|0;return F|0}else r=41320;while(1){e=f[r>>2]|0;if(e>>>0<=s>>>0?(i=f[r+4>>2]|0,t=e+i|0,t>>>0>s>>>0):0)break;r=f[r+8>>2]|0}n=e+(i+-39)|0;e=e+(i+-47+((n&7|0)==0?0:0-n&7))|0;n=s+16|0;e=e>>>0<n>>>0?s:e;i=e+8|0;r=y+8|0;r=(r&7|0)==0?0:0-r&7;F=k+-40-r|0;f[10224]=y+r;f[10221]=F;f[y+(r+4)>>2]=F|1;f[y+(k+-36)>>2]=40;f[10225]=f[10340];r=e+4|0;f[r>>2]=27;f[i>>2]=f[10330];f[i+4>>2]=f[10331];f[i+8>>2]=f[10332];f[i+12>>2]=f[10333];f[10330]=y;f[10331]=k;f[10333]=0;f[10332]=i;i=e+28|0;f[i>>2]=7;if((e+32|0)>>>0<t>>>0)do{F=i;i=i+4|0;f[i>>2]=7}while((F+8|0)>>>0<t>>>0);if((e|0)!=(s|0)){a=e-s|0;f[r>>2]=f[r>>2]&-2;f[s+4>>2]=a|1;f[e>>2]=a;i=a>>>3;if(a>>>0<256){e=i<<1;t=40912+(e<<2)|0;r=f[10218]|0;i=1<<i;if(r&i){i=40912+(e+2<<2)|0;e=f[i>>2]|0;if(e>>>0<(f[10222]|0)>>>0)Ie();else{P=i;O=e}}else{f[10218]=r|i;P=40912+(e+2<<2)|0;O=t}f[P>>2]=s;f[O+12>>2]=s;f[s+8>>2]=O;f[s+12>>2]=t;break}i=a>>>8;if(i)if(a>>>0>16777215)t=31;else{N=(i+1048320|0)>>>16&8;F=i<<N;D=(F+520192|0)>>>16&4;F=F<<D;t=(F+245760|0)>>>16&2;t=14-(D|N|t)+(F<<t>>>15)|0;t=a>>>(t+7|0)&1|t<<1}else t=0;r=41176+(t<<2)|0;f[s+28>>2]=t;f[s+20>>2]=0;f[n>>2]=0;i=f[10219]|0;e=1<<t;if(!(i&e)){f[10219]=i|e;f[r>>2]=s;f[s+24>>2]=r;f[s+12>>2]=s;f[s+8>>2]=s;break}i=f[r>>2]|0;i:do{if((f[i+4>>2]&-8|0)!=(a|0)){t=a<<((t|0)==31?0:25-(t>>>1)|0);while(1){e=i+16+(t>>>31<<2)|0;r=f[e>>2]|0;if(!r)break;if((f[r+4>>2]&-8|0)==(a|0)){B=r;break i}else{t=t<<1;i=r}}if(e>>>0<(f[10222]|0)>>>0)Ie();else{f[e>>2]=s;f[s+24>>2]=i;f[s+12>>2]=s;f[s+8>>2]=s;break e}}else B=i}while(0);i=B+8|0;e=f[i>>2]|0;F=f[10222]|0;if(e>>>0>=F>>>0&B>>>0>=F>>>0){f[e+12>>2]=s;f[i>>2]=s;f[s+8>>2]=e;f[s+12>>2]=B;f[s+24>>2]=0;break}else Ie()}}else{F=f[10222]|0;if((F|0)==0|y>>>0<F>>>0)f[10222]=y;f[10330]=y;f[10331]=k;f[10333]=0;f[10227]=f[10336];f[10226]=-1;i=0;do{F=i<<1;N=40912+(F<<2)|0;f[40912+(F+3<<2)>>2]=N;f[40912+(F+2<<2)>>2]=N;i=i+1|0}while((i|0)!=32);F=y+8|0;F=(F&7|0)==0?0:0-F&7;N=k+-40-F|0;f[10224]=y+F;f[10221]=N;f[y+(F+4)>>2]=N|1;f[y+(k+-36)>>2]=40;f[10225]=f[10340]}}while(0);i=f[10221]|0;if(i>>>0>w>>>0){N=i-w|0;f[10221]=N;F=f[10224]|0;f[10224]=F+w;f[F+(w+4)>>2]=N|1;f[F+4>>2]=w|3;F=F+8|0;return F|0}}f[(Ig()|0)>>2]=12;F=0;return F|0}function xc(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0;if(!e)return;i=e+-8|0;l=f[10222]|0;if(i>>>0<l>>>0)Ie();r=f[e+-4>>2]|0;t=r&3;if((t|0)==1)Ie();b=r&-8;w=e+(b+-8)|0;do{if(!(r&1)){i=f[i>>2]|0;if(!t)return;o=-8-i|0;c=e+o|0;h=i+b|0;if(c>>>0<l>>>0)Ie();if((c|0)==(f[10223]|0)){i=e+(b+-4)|0;r=f[i>>2]|0;if((r&3|0)!=3){p=c;a=h;break}f[10220]=h;f[i>>2]=r&-2;f[e+(o+4)>>2]=h|1;f[w>>2]=h;return}n=i>>>3;if(i>>>0<256){t=f[e+(o+8)>>2]|0;r=f[e+(o+12)>>2]|0;i=40912+(n<<1<<2)|0;if((t|0)!=(i|0)){if(t>>>0<l>>>0)Ie();if((f[t+12>>2]|0)!=(c|0))Ie()}if((r|0)==(t|0)){f[10218]=f[10218]&~(1<<n);p=c;a=h;break}if((r|0)!=(i|0)){if(r>>>0<l>>>0)Ie();i=r+8|0;if((f[i>>2]|0)==(c|0))s=i;else Ie()}else s=r+8|0;f[t+12>>2]=r;f[s>>2]=t;p=c;a=h;break}s=f[e+(o+24)>>2]|0;t=f[e+(o+12)>>2]|0;do{if((t|0)==(c|0)){r=e+(o+20)|0;i=f[r>>2]|0;if(!i){r=e+(o+16)|0;i=f[r>>2]|0;if(!i){u=0;break}}while(1){t=i+20|0;n=f[t>>2]|0;if(n){i=n;r=t;continue}t=i+16|0;n=f[t>>2]|0;if(!n)break;else{i=n;r=t}}if(r>>>0<l>>>0)Ie();else{f[r>>2]=0;u=i;break}}else{n=f[e+(o+8)>>2]|0;if(n>>>0<l>>>0)Ie();i=n+12|0;if((f[i>>2]|0)!=(c|0))Ie();r=t+8|0;if((f[r>>2]|0)==(c|0)){f[i>>2]=t;f[r>>2]=n;u=t;break}else Ie()}}while(0);if(s){i=f[e+(o+28)>>2]|0;r=41176+(i<<2)|0;if((c|0)==(f[r>>2]|0)){f[r>>2]=u;if(!u){f[10219]=f[10219]&~(1<<i);p=c;a=h;break}}else{if(s>>>0<(f[10222]|0)>>>0)Ie();i=s+16|0;if((f[i>>2]|0)==(c|0))f[i>>2]=u;else f[s+20>>2]=u;if(!u){p=c;a=h;break}}r=f[10222]|0;if(u>>>0<r>>>0)Ie();f[u+24>>2]=s;i=f[e+(o+16)>>2]|0;do{if(i)if(i>>>0<r>>>0)Ie();else{f[u+16>>2]=i;f[i+24>>2]=u;break}}while(0);i=f[e+(o+20)>>2]|0;if(i)if(i>>>0<(f[10222]|0)>>>0)Ie();else{f[u+20>>2]=i;f[i+24>>2]=u;p=c;a=h;break}else{p=c;a=h}}else{p=c;a=h}}else{p=i;a=b}}while(0);if(p>>>0>=w>>>0)Ie();i=e+(b+-4)|0;r=f[i>>2]|0;if(!(r&1))Ie();if(!(r&2)){if((w|0)==(f[10224]|0)){v=(f[10221]|0)+a|0;f[10221]=v;f[10224]=p;f[p+4>>2]=v|1;if((p|0)!=(f[10223]|0))return;f[10223]=0;f[10220]=0;return}if((w|0)==(f[10223]|0)){v=(f[10220]|0)+a|0;f[10220]=v;f[10223]=p;f[p+4>>2]=v|1;f[p+v>>2]=v;return}a=(r&-8)+a|0;n=r>>>3;do{if(r>>>0>=256){s=f[e+(b+16)>>2]|0;i=f[e+(b|4)>>2]|0;do{if((i|0)==(w|0)){r=e+(b+12)|0;i=f[r>>2]|0;if(!i){r=e+(b+8)|0;i=f[r>>2]|0;if(!i){k=0;break}}while(1){t=i+20|0;n=f[t>>2]|0;if(n){i=n;r=t;continue}t=i+16|0;n=f[t>>2]|0;if(!n)break;else{i=n;r=t}}if(r>>>0<(f[10222]|0)>>>0)Ie();else{f[r>>2]=0;k=i;break}}else{r=f[e+b>>2]|0;if(r>>>0<(f[10222]|0)>>>0)Ie();t=r+12|0;if((f[t>>2]|0)!=(w|0))Ie();n=i+8|0;if((f[n>>2]|0)==(w|0)){f[t>>2]=i;f[n>>2]=r;k=i;break}else Ie()}}while(0);if(s){i=f[e+(b+20)>>2]|0;r=41176+(i<<2)|0;if((w|0)==(f[r>>2]|0)){f[r>>2]=k;if(!k){f[10219]=f[10219]&~(1<<i);break}}else{if(s>>>0<(f[10222]|0)>>>0)Ie();i=s+16|0;if((f[i>>2]|0)==(w|0))f[i>>2]=k;else f[s+20>>2]=k;if(!k)break}r=f[10222]|0;if(k>>>0<r>>>0)Ie();f[k+24>>2]=s;i=f[e+(b+8)>>2]|0;do{if(i)if(i>>>0<r>>>0)Ie();else{f[k+16>>2]=i;f[i+24>>2]=k;break}}while(0);i=f[e+(b+12)>>2]|0;if(i)if(i>>>0<(f[10222]|0)>>>0)Ie();else{f[k+20>>2]=i;f[i+24>>2]=k;break}}}else{t=f[e+b>>2]|0;r=f[e+(b|4)>>2]|0;i=40912+(n<<1<<2)|0;if((t|0)!=(i|0)){if(t>>>0<(f[10222]|0)>>>0)Ie();if((f[t+12>>2]|0)!=(w|0))Ie()}if((r|0)==(t|0)){f[10218]=f[10218]&~(1<<n);break}if((r|0)!=(i|0)){if(r>>>0<(f[10222]|0)>>>0)Ie();i=r+8|0;if((f[i>>2]|0)==(w|0))d=i;else Ie()}else d=r+8|0;f[t+12>>2]=r;f[d>>2]=t}}while(0);f[p+4>>2]=a|1;f[p+a>>2]=a;if((p|0)==(f[10223]|0)){f[10220]=a;return}}else{f[i>>2]=r&-2;f[p+4>>2]=a|1;f[p+a>>2]=a}i=a>>>3;if(a>>>0<256){r=i<<1;n=40912+(r<<2)|0;t=f[10218]|0;i=1<<i;if(t&i){i=40912+(r+2<<2)|0;r=f[i>>2]|0;if(r>>>0<(f[10222]|0)>>>0)Ie();else{_=i;m=r}}else{f[10218]=t|i;_=40912+(r+2<<2)|0;m=n}f[_>>2]=p;f[m+12>>2]=p;f[p+8>>2]=m;f[p+12>>2]=n;return}i=a>>>8;if(i)if(a>>>0>16777215)n=31;else{_=(i+1048320|0)>>>16&8;m=i<<_;w=(m+520192|0)>>>16&4;m=m<<w;n=(m+245760|0)>>>16&2;n=14-(w|_|n)+(m<<n>>>15)|0;n=a>>>(n+7|0)&1|n<<1}else n=0;i=41176+(n<<2)|0;f[p+28>>2]=n;f[p+20>>2]=0;f[p+16>>2]=0;r=f[10219]|0;t=1<<n;e:do{if(r&t){i=f[i>>2]|0;i:do{if((f[i+4>>2]&-8|0)!=(a|0)){n=a<<((n|0)==31?0:25-(n>>>1)|0);while(1){r=i+16+(n>>>31<<2)|0;t=f[r>>2]|0;if(!t)break;if((f[t+4>>2]&-8|0)==(a|0)){v=t;break i}else{n=n<<1;i=t}}if(r>>>0<(f[10222]|0)>>>0)Ie();else{f[r>>2]=p;f[p+24>>2]=i;f[p+12>>2]=p;f[p+8>>2]=p;break e}}else v=i}while(0);i=v+8|0;r=f[i>>2]|0;m=f[10222]|0;if(r>>>0>=m>>>0&v>>>0>=m>>>0){f[r+12>>2]=p;f[i>>2]=p;f[p+8>>2]=r;f[p+12>>2]=v;f[p+24>>2]=0;break}else Ie()}else{f[10219]=r|t;f[i>>2]=p;f[p+24>>2]=i;f[p+12>>2]=p;f[p+8>>2]=p}}while(0);p=(f[10226]|0)+-1|0;f[10226]=p;if(!p)i=41328;else return;while(1){i=f[i>>2]|0;if(!i)break;else i=i+8|0}f[10226]=-1;return}function Pc(e,i){e=e|0;i=i|0;var r=0;if(e){r=re(i,e)|0;if((i|e)>>>0>65535)r=((r>>>0)/(e>>>0)|0|0)==(i|0)?r:-1}else r=0;i=Lc(r)|0;if(!i)return i|0;if(!(f[i+-4>>2]&3))return i|0;ym(i|0,0,r|0)|0;return i|0}function Oc(e,i){e=e|0;i=i|0;var r=0,t=0;if(!e){e=Lc(i)|0;return e|0}if(i>>>0>4294967231){f[(Ig()|0)>>2]=12;e=0;return e|0}r=Bc(e+-8|0,i>>>0<11?16:i+11&-8)|0;if(r){e=r+8|0;return e|0}r=Lc(i)|0;if(!r){e=0;return e|0}t=f[e+-4>>2]|0;t=(t&-8)-((t&3|0)==0?8:4)|0;Am(r|0,e|0,(t>>>0<i>>>0?t:i)|0)|0;xc(e);e=r;return e|0}function Bc(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0;b=e+4|0;k=f[b>>2]|0;o=k&-8;c=e+o|0;l=f[10222]|0;r=k&3;if(!((r|0)!=1&e>>>0>=l>>>0&e>>>0<c>>>0))Ie();t=e+(o|4)|0;n=f[t>>2]|0;if(!(n&1))Ie();if(!r){if(i>>>0<256){e=0;return e|0}if(o>>>0>=(i+4|0)>>>0?(o-i|0)>>>0<=f[10338]<<1>>>0:0)return e|0;e=0;return e|0}if(o>>>0>=i>>>0){r=o-i|0;if(r>>>0<=15)return e|0;f[b>>2]=k&1|i|2;f[e+(i+4)>>2]=r|3;f[t>>2]=f[t>>2]|1;Ic(e+i|0,r);return e|0}if((c|0)==(f[10224]|0)){r=(f[10221]|0)+o|0;if(r>>>0<=i>>>0){e=0;return e|0}d=r-i|0;f[b>>2]=k&1|i|2;f[e+(i+4)>>2]=d|1;f[10224]=e+i;f[10221]=d;return e|0}if((c|0)==(f[10223]|0)){t=(f[10220]|0)+o|0;if(t>>>0<i>>>0){e=0;return e|0}r=t-i|0;if(r>>>0>15){f[b>>2]=k&1|i|2;f[e+(i+4)>>2]=r|1;f[e+t>>2]=r;t=e+(t+4)|0;f[t>>2]=f[t>>2]&-2;t=e+i|0}else{f[b>>2]=k&1|t|2;t=e+(t+4)|0;f[t>>2]=f[t>>2]|1;t=0;r=0}f[10220]=r;f[10223]=t;return e|0}if(n&2){e=0;return e|0}h=(n&-8)+o|0;if(h>>>0<i>>>0){e=0;return e|0}d=h-i|0;a=n>>>3;do{if(n>>>0>=256){s=f[e+(o+24)>>2]|0;a=f[e+(o+12)>>2]|0;do{if((a|0)==(c|0)){t=e+(o+20)|0;r=f[t>>2]|0;if(!r){t=e+(o+16)|0;r=f[t>>2]|0;if(!r){u=0;break}}while(1){n=r+20|0;a=f[n>>2]|0;if(a){r=a;t=n;continue}n=r+16|0;a=f[n>>2]|0;if(!a)break;else{r=a;t=n}}if(t>>>0<l>>>0)Ie();else{f[t>>2]=0;u=r;break}}else{n=f[e+(o+8)>>2]|0;if(n>>>0<l>>>0)Ie();r=n+12|0;if((f[r>>2]|0)!=(c|0))Ie();t=a+8|0;if((f[t>>2]|0)==(c|0)){f[r>>2]=a;f[t>>2]=n;u=a;break}else Ie()}}while(0);if(s){r=f[e+(o+28)>>2]|0;t=41176+(r<<2)|0;if((c|0)==(f[t>>2]|0)){f[t>>2]=u;if(!u){f[10219]=f[10219]&~(1<<r);break}}else{if(s>>>0<(f[10222]|0)>>>0)Ie();r=s+16|0;if((f[r>>2]|0)==(c|0))f[r>>2]=u;else f[s+20>>2]=u;if(!u)break}t=f[10222]|0;if(u>>>0<t>>>0)Ie();f[u+24>>2]=s;r=f[e+(o+16)>>2]|0;do{if(r)if(r>>>0<t>>>0)Ie();else{f[u+16>>2]=r;f[r+24>>2]=u;break}}while(0);r=f[e+(o+20)>>2]|0;if(r)if(r>>>0<(f[10222]|0)>>>0)Ie();else{f[u+20>>2]=r;f[r+24>>2]=u;break}}}else{n=f[e+(o+8)>>2]|0;t=f[e+(o+12)>>2]|0;r=40912+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0<l>>>0)Ie();if((f[n+12>>2]|0)!=(c|0))Ie()}if((t|0)==(n|0)){f[10218]=f[10218]&~(1<<a);break}if((t|0)!=(r|0)){if(t>>>0<l>>>0)Ie();r=t+8|0;if((f[r>>2]|0)==(c|0))s=r;else Ie()}else s=t+8|0;f[n+12>>2]=t;f[s>>2]=n}}while(0);if(d>>>0<16){f[b>>2]=h|k&1|2;i=e+(h|4)|0;f[i>>2]=f[i>>2]|1;return e|0}else{f[b>>2]=k&1|i|2;f[e+(i+4)>>2]=d|3;k=e+(h|4)|0;f[k>>2]=f[k>>2]|1;Ic(e+i|0,d);return e|0}return 0}function Ic(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0;w=e+i|0;r=f[e+4>>2]|0;do{if(!(r&1)){u=f[e>>2]|0;if(!(r&3))return;d=e+(0-u)|0;h=u+i|0;o=f[10222]|0;if(d>>>0<o>>>0)Ie();if((d|0)==(f[10223]|0)){t=e+(i+4)|0;r=f[t>>2]|0;if((r&3|0)!=3){v=d;s=h;break}f[10220]=h;f[t>>2]=r&-2;f[e+(4-u)>>2]=h|1;f[w>>2]=h;return}a=u>>>3;if(u>>>0<256){n=f[e+(8-u)>>2]|0;t=f[e+(12-u)>>2]|0;r=40912+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0<o>>>0)Ie();if((f[n+12>>2]|0)!=(d|0))Ie()}if((t|0)==(n|0)){f[10218]=f[10218]&~(1<<a);v=d;s=h;break}if((t|0)!=(r|0)){if(t>>>0<o>>>0)Ie();r=t+8|0;if((f[r>>2]|0)==(d|0))l=r;else Ie()}else l=t+8|0;f[n+12>>2]=t;f[l>>2]=n;v=d;s=h;break}l=f[e+(24-u)>>2]|0;n=f[e+(12-u)>>2]|0;do{if((n|0)==(d|0)){n=16-u|0;t=e+(n+4)|0;r=f[t>>2]|0;if(!r){t=e+n|0;r=f[t>>2]|0;if(!r){c=0;break}}while(1){n=r+20|0;a=f[n>>2]|0;if(a){r=a;t=n;continue}n=r+16|0;a=f[n>>2]|0;if(!a)break;else{r=a;t=n}}if(t>>>0<o>>>0)Ie();else{f[t>>2]=0;c=r;break}}else{a=f[e+(8-u)>>2]|0;if(a>>>0<o>>>0)Ie();r=a+12|0;if((f[r>>2]|0)!=(d|0))Ie();t=n+8|0;if((f[t>>2]|0)==(d|0)){f[r>>2]=n;f[t>>2]=a;c=n;break}else Ie()}}while(0);if(l){r=f[e+(28-u)>>2]|0;t=41176+(r<<2)|0;if((d|0)==(f[t>>2]|0)){f[t>>2]=c;if(!c){f[10219]=f[10219]&~(1<<r);v=d;s=h;break}}else{if(l>>>0<(f[10222]|0)>>>0)Ie();r=l+16|0;if((f[r>>2]|0)==(d|0))f[r>>2]=c;else f[l+20>>2]=c;if(!c){v=d;s=h;break}}n=f[10222]|0;if(c>>>0<n>>>0)Ie();f[c+24>>2]=l;r=16-u|0;t=f[e+r>>2]|0;do{if(t)if(t>>>0<n>>>0)Ie();else{f[c+16>>2]=t;f[t+24>>2]=c;break}}while(0);r=f[e+(r+4)>>2]|0;if(r)if(r>>>0<(f[10222]|0)>>>0)Ie();else{f[c+20>>2]=r;f[r+24>>2]=c;v=d;s=h;break}else{v=d;s=h}}else{v=d;s=h}}else{v=e;s=i}}while(0);o=f[10222]|0;if(w>>>0<o>>>0)Ie();r=e+(i+4)|0;t=f[r>>2]|0;if(!(t&2)){if((w|0)==(f[10224]|0)){m=(f[10221]|0)+s|0;f[10221]=m;f[10224]=v;f[v+4>>2]=m|1;if((v|0)!=(f[10223]|0))return;f[10223]=0;f[10220]=0;return}if((w|0)==(f[10223]|0)){m=(f[10220]|0)+s|0;f[10220]=m;f[10223]=v;f[v+4>>2]=m|1;f[v+m>>2]=m;return}s=(t&-8)+s|0;a=t>>>3;do{if(t>>>0>=256){l=f[e+(i+24)>>2]|0;n=f[e+(i+12)>>2]|0;do{if((n|0)==(w|0)){t=e+(i+20)|0;r=f[t>>2]|0;if(!r){t=e+(i+16)|0;r=f[t>>2]|0;if(!r){k=0;break}}while(1){n=r+20|0;a=f[n>>2]|0;if(a){r=a;t=n;continue}n=r+16|0;a=f[n>>2]|0;if(!a)break;else{r=a;t=n}}if(t>>>0<o>>>0)Ie();else{f[t>>2]=0;k=r;break}}else{a=f[e+(i+8)>>2]|0;if(a>>>0<o>>>0)Ie();r=a+12|0;if((f[r>>2]|0)!=(w|0))Ie();t=n+8|0;if((f[t>>2]|0)==(w|0)){f[r>>2]=n;f[t>>2]=a;k=n;break}else Ie()}}while(0);if(l){r=f[e+(i+28)>>2]|0;t=41176+(r<<2)|0;if((w|0)==(f[t>>2]|0)){f[t>>2]=k;if(!k){f[10219]=f[10219]&~(1<<r);break}}else{if(l>>>0<(f[10222]|0)>>>0)Ie();r=l+16|0;if((f[r>>2]|0)==(w|0))f[r>>2]=k;else f[l+20>>2]=k;if(!k)break}t=f[10222]|0;if(k>>>0<t>>>0)Ie();f[k+24>>2]=l;r=f[e+(i+16)>>2]|0;do{if(r)if(r>>>0<t>>>0)Ie();else{f[k+16>>2]=r;f[r+24>>2]=k;break}}while(0);r=f[e+(i+20)>>2]|0;if(r)if(r>>>0<(f[10222]|0)>>>0)Ie();else{f[k+20>>2]=r;f[r+24>>2]=k;break}}}else{n=f[e+(i+8)>>2]|0;t=f[e+(i+12)>>2]|0;r=40912+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0<o>>>0)Ie();if((f[n+12>>2]|0)!=(w|0))Ie()}if((t|0)==(n|0)){f[10218]=f[10218]&~(1<<a);break}if((t|0)!=(r|0)){if(t>>>0<o>>>0)Ie();r=t+8|0;if((f[r>>2]|0)==(w|0))b=r;else Ie()}else b=t+8|0;f[n+12>>2]=t;f[b>>2]=n}}while(0);f[v+4>>2]=s|1;f[v+s>>2]=s;if((v|0)==(f[10223]|0)){f[10220]=s;return}}else{f[r>>2]=t&-2;f[v+4>>2]=s|1;f[v+s>>2]=s}r=s>>>3;if(s>>>0<256){t=r<<1;a=40912+(t<<2)|0;n=f[10218]|0;r=1<<r;if(n&r){r=40912+(t+2<<2)|0;t=f[r>>2]|0;if(t>>>0<(f[10222]|0)>>>0)Ie();else{_=r;m=t}}else{f[10218]=n|r;_=40912+(t+2<<2)|0;m=a}f[_>>2]=v;f[m+12>>2]=v;f[v+8>>2]=m;f[v+12>>2]=a;return}r=s>>>8;if(r)if(s>>>0>16777215)a=31;else{_=(r+1048320|0)>>>16&8;m=r<<_;w=(m+520192|0)>>>16&4;m=m<<w;a=(m+245760|0)>>>16&2;a=14-(w|_|a)+(m<<a>>>15)|0;a=s>>>(a+7|0)&1|a<<1}else a=0;r=41176+(a<<2)|0;f[v+28>>2]=a;f[v+20>>2]=0;f[v+16>>2]=0;t=f[10219]|0;n=1<<a;if(!(t&n)){f[10219]=t|n;f[r>>2]=v;f[v+24>>2]=r;f[v+12>>2]=v;f[v+8>>2]=v;return}r=f[r>>2]|0;e:do{if((f[r+4>>2]&-8|0)!=(s|0)){a=s<<((a|0)==31?0:25-(a>>>1)|0);while(1){t=r+16+(a>>>31<<2)|0;n=f[t>>2]|0;if(!n)break;if((f[n+4>>2]&-8|0)==(s|0)){r=n;break e}else{a=a<<1;r=n}}if(t>>>0<(f[10222]|0)>>>0)Ie();f[t>>2]=v;f[v+24>>2]=r;f[v+12>>2]=v;f[v+8>>2]=v;return}}while(0);t=r+8|0;n=f[t>>2]|0;m=f[10222]|0;if(!(n>>>0>=m>>>0&r>>>0>=m>>>0))Ie();f[n+12>>2]=v;f[t>>2]=v;f[v+8>>2]=n;f[v+12>>2]=r;f[v+24>>2]=0;return}function Dc(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0;t=f[9321]|0;jc(42048,t,42104);f[10342]=42892;f[10344]=42912;f[10343]=0;e=f[10720]|0;_=0;ce(62,41368+e|0,42048);a=_;_=0;if(a&1){a=ze()|0;nd(41376);$e(a|0)}f[41368+(e+72)>>2]=0;f[41368+(e+76)>>2]=-1;n=f[9322]|0;Hc(42152,n,42112);f[10364]=42972;f[10365]=42992;r=f[10740]|0;_=0;ce(62,41456+r|0,42152);a=_;_=0;if(a&1){a=ze()|0;nd(41460);$e(a|0)}e=r+72|0;f[41456+e>>2]=0;i=r+76|0;f[41456+i>>2]=-1;a=f[9320]|0;Hc(42200,a,42120);f[10385]=42972;f[10386]=42992;_=0;ce(62,41540+r|0,42200);s=_;_=0;if(s&1){s=ze()|0;nd(41544);$e(s|0)}f[41540+e>>2]=0;f[41540+i>>2]=-1;s=f[41540+((f[(f[10385]|0)+-12>>2]|0)+24)>>2]|0;f[10406]=42972;f[10407]=42992;_=0;ce(62,41624+r|0,s|0);s=_;_=0;if(s&1){s=ze()|0;nd(41628);$e(s|0)}f[41624+e>>2]=0;f[41624+i>>2]=-1;f[41368+((f[(f[10342]|0)+-12>>2]|0)+72)>>2]=41456;e=41540+((f[(f[10385]|0)+-12>>2]|0)+4)|0;f[e>>2]=f[e>>2]|8192;f[41540+((f[(f[10385]|0)+-12>>2]|0)+72)>>2]=41456;zc(42248,t,42128);f[10427]=42932;f[10429]=42952;f[10428]=0;e=f[10730]|0;_=0;ce(62,41708+e|0,42248);s=_;_=0;if(s&1){s=ze()|0;od(41716);$e(s|0)}f[41708+(e+72)>>2]=0;f[41708+(e+76)>>2]=-1;Yc(42304,n,42136);f[10449]=43012;f[10450]=43032;r=f[10750]|0;_=0;ce(62,41796+r|0,42304);s=_;_=0;if(s&1){s=ze()|0;od(41800);$e(s|0)}e=r+72|0;f[41796+e>>2]=0;i=r+76|0;f[41796+i>>2]=-1;Yc(42352,a,42144);f[10470]=43012;f[10471]=43032;_=0;ce(62,41880+r|0,42352);s=_;_=0;if(s&1){s=ze()|0;od(41884);$e(s|0)}f[41880+e>>2]=0;f[41880+i>>2]=-1;s=f[41880+((f[(f[10470]|0)+-12>>2]|0)+24)>>2]|0;f[10491]=43012;f[10492]=43032;_=0;ce(62,41964+r|0,s|0);s=_;_=0;if(s&1){s=ze()|0;od(41968);$e(s|0)}else{f[41964+e>>2]=0;f[41964+i>>2]=-1;f[41708+((f[(f[10427]|0)+-12>>2]|0)+72)>>2]=41796;s=41880+((f[(f[10470]|0)+-12>>2]|0)+4)|0;f[s>>2]=f[s>>2]|8192;f[41880+((f[(f[10470]|0)+-12>>2]|0)+72)>>2]=41796;return}}function Nc(e){e=e|0;_=0;de(70,41456)|0;e=_;_=0;if(((!(e&1)?(_=0,de(70,41624)|0,e=_,_=0,!(e&1)):0)?(_=0,de(71,41796)|0,e=_,_=0,!(e&1)):0)?(_=0,de(71,41964)|0,e=_,_=0,!(e&1)):0)return;e=ze(0)|0;Fi(e)}function Fc(){Dc(0);di(187,56757,w|0)|0;return}function Uc(){return}function jc(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;a=c;c=c+16|0;s=a+4|0;n=a;dd(e);f[e>>2]=42600;f[e+32>>2]=i;f[e+40>>2]=r;f[e+48>>2]=-1;t[e+52>>0]=0;Ou(s,e+4|0);f[n>>2]=f[s>>2];_=0;ce(23,e|0,n|0);r=_;_=0;if(r&1){s=ze()|0;Bu(n);cd(e);$e(s|0)}else{Bu(n);c=a;return}}function Hc(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;a=c;c=c+16|0;s=a+4|0;n=a;dd(e);f[e>>2]=42536;f[e+32>>2]=i;Ou(s,e+4|0);f[n>>2]=f[s>>2];_=0;i=pe(37,n|0,44280)|0;s=_;_=0;if(s&1){s=ze()|0;Bu(n);cd(e);$e(s|0)}else{Bu(n);f[e+36>>2]=i;f[e+40>>2]=r;t[e+44>>0]=(lM[f[(f[i>>2]|0)+28>>2]&127](i)|0)&1;c=a;return}}function zc(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;a=c;c=c+16|0;s=a+4|0;n=a;Cd(e);f[e>>2]=42472;f[e+32>>2]=i;f[e+40>>2]=r;f[e+48>>2]=-1;t[e+52>>0]=0;Ou(s,e+4|0);f[n>>2]=f[s>>2];_=0;ce(21,e|0,n|0);r=_;_=0;if(r&1){s=ze()|0;Bu(n);Sd(e);$e(s|0)}else{Bu(n);c=a;return}}function Yc(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;a=c;c=c+16|0;s=a+4|0;n=a;Cd(e);f[e>>2]=42408;f[e+32>>2]=i;Ou(s,e+4|0);f[n>>2]=f[s>>2];_=0;i=pe(37,n|0,44288)|0;s=_;_=0;if(s&1){s=ze()|0;Bu(n);Sd(e);$e(s|0)}else{Bu(n);f[e+36>>2]=i;f[e+40>>2]=r;t[e+44>>0]=(lM[f[(f[i>>2]|0)+28>>2]&127](i)|0)&1;c=a;return}}function qc(e){e=e|0;Sd(e);Ip(e);return}function Xc(e,i){e=e|0;i=i|0;lM[f[(f[e>>2]|0)+24>>2]&127](e)|0;i=Du(i,44288)|0;f[e+36>>2]=i;t[e+44>>0]=(lM[f[(f[i>>2]|0)+28>>2]&127](i)|0)&1;return}function Vc(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u;r=e+36|0;t=e+40|0;n=l+8|0;a=l;i=e+32|0;e:while(1){e=f[r>>2]|0;e=wM[f[(f[e>>2]|0)+20>>2]&31](e,f[t>>2]|0,l,n,s)|0;h=(f[s>>2]|0)-a|0;if((Ry(l,1,h,f[i>>2]|0)|0)!=(h|0)){e=-1;break}switch(e|0){case 1:break;case 2:{e=-1;break e}default:{o=4;break e}}}if((o|0)==4)e=((Sy(f[i>>2]|0)|0)!=0)<<31>>31;c=u;return e|0}function Gc(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;e:do{if(!(t[e+44>>0]|0))if((r|0)>0){n=i;i=0;while(1){if((kM[f[(f[e>>2]|0)+52>>2]&63](e,f[n>>2]|0)|0)==-1)break e;i=i+1|0;if((i|0)<(r|0))n=n+4|0;else break}}else i=0;else i=Ry(i,4,r,f[e+32>>2]|0)|0}while(0);return i|0}function Kc(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;m=c;c=c+32|0;k=m+16|0;r=m+8|0;b=m+4|0;d=m;w=(i|0)==-1;e:do{if(!w){f[r>>2]=i;if(t[e+44>>0]|0)if((Ry(r,4,1,f[e+32>>2]|0)|0)==1){_=11;break}else{r=-1;break}f[b>>2]=k;u=r+4|0;h=e+36|0;a=e+40|0;s=k+8|0;l=k;o=e+32|0;while(1){e=f[h>>2]|0;e=yM[f[(f[e>>2]|0)+12>>2]&15](e,f[a>>2]|0,r,u,d,k,s,b)|0;if((f[d>>2]|0)==(r|0)){r=-1;break e}if((e|0)==3)break;n=(e|0)==1;if(e>>>0>=2){r=-1;break e}e=(f[b>>2]|0)-l|0;if((Ry(k,1,e,f[o>>2]|0)|0)!=(e|0)){r=-1;break e}if(n)r=n?f[d>>2]|0:r;else{_=11;break e}}if((Ry(r,1,1,f[o>>2]|0)|0)!=1)r=-1;else _=11}else _=11}while(0);if((_|0)==11)r=w?0:i;c=m;return r|0}function Wc(e,i){e=e|0;i=i|0;var r=0,n=0;n=Du(i,44288)|0;r=e+36|0;f[r>>2]=n;i=e+44|0;f[i>>2]=lM[f[(f[n>>2]|0)+24>>2]&127](n)|0;r=f[r>>2]|0;t[e+53>>0]=(lM[f[(f[r>>2]|0)+28>>2]&127](r)|0)&1;if((f[i>>2]|0)>8)Xo(56783);return}function Zc(e){e=e|0;Sd(e);Ip(e);return}function Jc(e){e=e|0;return eh(e,0)|0}function Qc(e){e=e|0;return eh(e,1)|0}function $c(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;u=h+16|0;o=h+8|0;n=h+4|0;a=h;s=e+52|0;r=(t[s>>0]|0)!=0;e:do{if((i|0)==-1)if(r)i=-1;else{i=f[e+48>>2]|0;t[s>>0]=(i|0)!=-1&1}else{l=e+48|0;i:do{if(r){f[n>>2]=f[l>>2];r=f[e+36>>2]|0;switch(yM[f[(f[r>>2]|0)+12>>2]&15](r,f[e+40>>2]|0,n,n+4|0,a,u,u+8|0,o)|0){case 1:case 2:{i=-1;break e}case 3:{t[u>>0]=f[l>>2];f[o>>2]=u+1;break}default:{}}r=e+32|0;while(1){n=f[o>>2]|0;if(n>>>0<=u>>>0)break i;e=n+-1|0;f[o>>2]=e;if((Oy(t[e>>0]|0,f[r>>2]|0)|0)==-1){i=-1;break e}}}}while(0);f[l>>2]=i;t[s>>0]=1}}while(0);c=h;return i|0}function eh(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0;_=c;c=c+32|0;w=_+16|0;k=_+8|0;h=_+4|0;d=_;a=e+52|0;e:do{if(t[a>>0]|0){n=e+48|0;r=f[n>>2]|0;if(i){f[n>>2]=-1;t[a>>0]=0}}else{r=f[e+44>>2]|0;r=(r|0)>1?r:1;b=e+32|0;if((r|0)>0){a=0;do{n=Ly(f[b>>2]|0)|0;if((n|0)==-1){r=-1;break e}t[w+a>>0]=n;a=a+1|0}while((a|0)<(r|0))}i:do{if(!(t[e+53>>0]|0)){l=e+40|0;o=e+36|0;u=k+4|0;r:while(1){m=f[l>>2]|0;a=m;n=f[a>>2]|0;a=f[a+4>>2]|0;v=f[o>>2]|0;s=w+r|0;switch(yM[f[(f[v>>2]|0)+16>>2]&15](v,m,w,s,h,k,u,d)|0){case 2:{r=-1;break e}case 3:break r;case 1:break;default:break i}v=f[l>>2]|0;f[v>>2]=n;f[v+4>>2]=a;if((r|0)==8){r=-1;break e}n=Ly(f[b>>2]|0)|0;if((n|0)==-1){r=-1;break e}t[s>>0]=n;r=r+1|0}f[k>>2]=t[w>>0]}else f[k>>2]=t[w>>0]}while(0);if(i){r=f[k>>2]|0;f[e+48>>2]=r;break}while(1){if((r|0)<=0)break;r=r+-1|0;if((Oy(t[w+r>>0]|0,f[b>>2]|0)|0)==-1){r=-1;break e}}r=f[k>>2]|0}}while(0);c=_;return r|0}function ih(e){e=e|0;cd(e);Ip(e);return}function rh(e,i){e=e|0;i=i|0;lM[f[(f[e>>2]|0)+24>>2]&127](e)|0;i=Du(i,44280)|0;f[e+36>>2]=i;t[e+44>>0]=(lM[f[(f[i>>2]|0)+28>>2]&127](i)|0)&1;return}function th(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u;r=e+36|0;t=e+40|0;n=l+8|0;a=l;i=e+32|0;e:while(1){e=f[r>>2]|0;e=wM[f[(f[e>>2]|0)+20>>2]&31](e,f[t>>2]|0,l,n,s)|0;h=(f[s>>2]|0)-a|0;if((Ry(l,1,h,f[i>>2]|0)|0)!=(h|0)){e=-1;break}switch(e|0){case 1:break;case 2:{e=-1;break e}default:{o=4;break e}}}if((o|0)==4)e=((Sy(f[i>>2]|0)|0)!=0)<<31>>31;c=u;return e|0}function nh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;e:do{if(!(t[e+44>>0]|0))if((r|0)>0){n=i;i=0;while(1){if((kM[f[(f[e>>2]|0)+52>>2]&63](e,a[n>>0]|0)|0)==-1)break e;i=i+1|0;if((i|0)<(r|0))n=n+1|0;else break}}else i=0;else i=Ry(i,1,r,f[e+32>>2]|0)|0}while(0);return i|0}function fh(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;m=c;c=c+32|0;k=m+16|0;r=m+8|0;b=m+4|0;d=m;w=(i|0)==-1;e:do{if(!w){t[r>>0]=i;if(t[e+44>>0]|0)if((Ry(r,1,1,f[e+32>>2]|0)|0)==1){_=11;break}else{r=-1;break}f[b>>2]=k;h=r+1|0;a=e+36|0;s=e+40|0;l=k+8|0;o=k;u=e+32|0;while(1){e=f[a>>2]|0;e=yM[f[(f[e>>2]|0)+12>>2]&15](e,f[s>>2]|0,r,h,d,k,l,b)|0;if((f[d>>2]|0)==(r|0)){r=-1;break e}if((e|0)==3)break;n=(e|0)==1;if(e>>>0>=2){r=-1;break e}e=(f[b>>2]|0)-o|0;if((Ry(k,1,e,f[u>>2]|0)|0)!=(e|0)){r=-1;break e}if(n)r=n?f[d>>2]|0:r;else{_=11;break e}}if((Ry(r,1,1,f[u>>2]|0)|0)!=1)r=-1;else _=11}else _=11}while(0);if((_|0)==11)r=w?0:i;c=m;return r|0}function ah(e,i){e=e|0;i=i|0;var r=0,n=0;n=Du(i,44280)|0;r=e+36|0;f[r>>2]=n;i=e+44|0;f[i>>2]=lM[f[(f[n>>2]|0)+24>>2]&127](n)|0;r=f[r>>2]|0;t[e+53>>0]=(lM[f[(f[r>>2]|0)+28>>2]&127](r)|0)&1;if((f[i>>2]|0)>8)Xo(56783);return}function sh(e){e=e|0;cd(e);Ip(e);return}function lh(e){e=e|0;return ch(e,0)|0}function oh(e){e=e|0;return ch(e,1)|0}function uh(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;u=h+16|0;o=h+4|0;n=h+8|0;a=h;s=e+52|0;r=(t[s>>0]|0)!=0;e:do{if((i|0)==-1)if(r)i=-1;else{i=f[e+48>>2]|0;t[s>>0]=(i|0)!=-1&1}else{l=e+48|0;i:do{if(r){t[n>>0]=f[l>>2];r=f[e+36>>2]|0;switch(yM[f[(f[r>>2]|0)+12>>2]&15](r,f[e+40>>2]|0,n,n+1|0,a,u,u+8|0,o)|0){case 1:case 2:{i=-1;break e}case 3:{t[u>>0]=f[l>>2];f[o>>2]=u+1;break}default:{}}r=e+32|0;while(1){n=f[o>>2]|0;if(n>>>0<=u>>>0)break i;e=n+-1|0;f[o>>2]=e;if((Oy(t[e>>0]|0,f[r>>2]|0)|0)==-1){i=-1;break e}}}}while(0);f[l>>2]=i;t[s>>0]=1}}while(0);c=h;return i|0}function ch(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0,p=0;m=c;c=c+32|0;_=m+16|0;w=m+8|0;d=m+4|0;b=m;s=e+52|0;e:do{if(t[s>>0]|0){n=e+48|0;r=f[n>>2]|0;if(i){f[n>>2]=-1;t[s>>0]=0}}else{r=f[e+44>>2]|0;r=(r|0)>1?r:1;k=e+32|0;if((r|0)>0){s=0;do{n=Ly(f[k>>2]|0)|0;if((n|0)==-1){r=-1;break e}t[_+s>>0]=n;s=s+1|0}while((s|0)<(r|0))}i:do{if(!(t[e+53>>0]|0)){o=e+40|0;u=e+36|0;h=w+1|0;r:while(1){v=f[o>>2]|0;s=v;n=f[s>>2]|0;s=f[s+4>>2]|0;p=f[u>>2]|0;l=_+r|0;switch(yM[f[(f[p>>2]|0)+16>>2]&15](p,v,_,l,d,w,h,b)|0){case 2:{r=-1;break e}case 3:break r;case 1:break;default:break i}p=f[o>>2]|0;f[p>>2]=n;f[p+4>>2]=s;if((r|0)==8){r=-1;break e}n=Ly(f[k>>2]|0)|0;if((n|0)==-1){r=-1;break e}t[l>>0]=n;r=r+1|0}t[w>>0]=t[_>>0]|0}else t[w>>0]=t[_>>0]|0}while(0);if(i){r=t[w>>0]|0;f[e+48>>2]=r&255}else{while(1){if((r|0)<=0)break;r=r+-1|0;if((Oy(a[_+r>>0]|0,f[k>>2]|0)|0)==-1){r=-1;break e}}r=t[w>>0]|0}r=r&255}}while(0);c=m;return r|0}function hh(e){e=e|0;return}function dh(e){e=e|0;e=e+4|0;f[e>>2]=(f[e>>2]|0)+1;return}function bh(e){e=e|0;var i=0,r=0;r=e+4|0;i=f[r>>2]|0;f[r>>2]=i+-1;if(!i){fM[f[(f[e>>2]|0)+8>>2]&255](e);e=1}else e=0;return e|0}function kh(e,i){e=e|0;i=i|0;f[e>>2]=36868;_=0;ce(86,e+4|0,((t[i>>0]&1)==0?i+1|0:f[i+8>>2]|0)|0);e=_;_=0;if(e&1){e=ze()|0;$e(e|0)}else return}function wh(e,i){e=e|0;i=i|0;f[e>>2]=36868;_=0;ce(86,e+4|0,i|0);e=_;_=0;if(e&1){e=ze()|0;$e(e|0)}else return}function _h(e,i){e=e|0;i=i|0;var r=0,t=0;t=Vy(i)|0;r=Bp(t+13|0)|0;f[r>>2]=t;f[r+4>>2]=t;f[r+8>>2]=0;r=r+12|0;Am(r|0,i|0,t+1|0)|0;f[e>>2]=r;return}function mh(e,i,r){e=e|0;i=i|0;r=r|0;f[e>>2]=r;f[e+4>>2]=i;return}function vh(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0;n=c;c=c+16|0;t=n;pM[f[(f[e>>2]|0)+12>>2]&15](t,e,i);if((f[t+4>>2]|0)==(f[r+4>>2]|0))t=(f[t>>2]|0)==(f[r>>2]|0);else t=0;c=n;return t|0}function ph(e,i,r){e=e|0;i=i|0;r=r|0;return((f[i>>2]|0)==(r|0)?(f[i+4>>2]|0)==(e|0):0)|0}function gh(e,i,r){e=e|0;i=i|0;r=r|0;i=Dg(r)|0;xh(e,i,Vy(i)|0);return}function yh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;l=c;c=c+16|0;s=l;n=f[i>>2]|0;do{if(n){a=t[r>>0]|0;if(!(a&1))a=(a&255)>>>1;else a=f[r+4>>2]|0;if(a){jh(r,56990)|0;n=f[i>>2]|0}i=f[i+4>>2]|0;pM[f[(f[i>>2]|0)+24>>2]&15](s,i,n);i=t[s>>0]|0;a=(i&1)==0;_=0;ke(30,r|0,(a?s+1|0:f[s+8>>2]|0)|0,(a?(i&255)>>>1:f[s+4>>2]|0)|0)|0;i=_;_=0;if(i&1){l=ze()|0;Oh(s);$e(l|0)}else{Oh(s);break}}}while(0);f[e>>2]=f[r>>2];f[e+4>>2]=f[r+4>>2];f[e+8>>2]=f[r+8>>2];f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;c=l;return}function Mh(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0;n=c;c=c+32|0;t=n+12|0;a=n;xh(a,r,Vy(r)|0);_=0;Ae(10,t|0,i|0,a|0);r=_;_=0;do{if(!(r&1)){_=0;ce(87,e|0,t|0);r=_;_=0;if(r&1){n=ze()|0;Oh(t);t=n;break}else{Oh(t);Oh(a);f[e>>2]=42664;r=f[i+4>>2]|0;a=e+8|0;f[a>>2]=f[i>>2];f[a+4>>2]=r;c=n;return}}else t=ze()|0}while(0);Oh(a);$e(t|0)}function Eh(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0;a=c;c=c+48|0;n=a+24|0;l=a+16|0;s=a;f[l>>2]=i;f[l+4>>2]=r;Lh(s,t);_=0;Ae(10,n|0,l|0,s|0);t=_;_=0;do{if(!(t&1)){_=0;ce(87,e|0,n|0);l=_;_=0;if(l&1){l=ze()|0;Oh(n);n=l;break}else{Oh(n);Oh(s);f[e>>2]=42664;f[e+8>>2]=i;f[e+12>>2]=r;c=a;return}}else n=ze()|0}while(0);Oh(s);$e(n|0)}function Ah(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0;n=c;c=c+48|0;t=n+24|0;s=n+16|0;a=n;f[s>>2]=i;f[s+4>>2]=r;xh(a,58898,0);_=0;Ae(10,t|0,s|0,a|0);s=_;_=0;do{if(!(s&1)){_=0;ce(87,e|0,t|0);s=_;_=0;if(s&1){s=ze()|0;Oh(t);t=s;break}else{Oh(t);Oh(a);f[e>>2]=42664;f[e+8>>2]=i;f[e+12>>2]=r;c=n;return}}else t=ze()|0}while(0);Oh(a);$e(t|0)}function Sh(e){e=e|0;Xp(e);return}function Th(e){e=e|0;Xp(e);Ip(e);return}function Ch(e){e=e|0;return}function Rh(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;pi(42676)|0;if((f[e>>2]|0)==1)do{Pe(42704,42676)|0}while((f[e>>2]|0)==1);do{if(!(f[e>>2]|0)){f[e>>2]=1;_=0;de(72,42676)|0;t=_;_=0;if((((!(t&1)?(_=0,ue(r|0,i|0),t=_,_=0,!(t&1)):0)?(_=0,de(73,42676)|0,t=_,_=0,!(t&1)):0)?(f[e>>2]=-1,_=0,de(72,42676)|0,t=_,_=0,!(t&1)):0)?(_=0,de(74,42704)|0,t=_,_=0,!(t&1)):0)break;t=ze(0)|0;Ze(t|0)|0;_=0;de(73,42676)|0;t=_;_=0;if((!(t&1)?(f[e>>2]=0,_=0,de(72,42676)|0,t=_,_=0,!(t&1)):0)?(_=0,de(74,42704)|0,t=_,_=0,!(t&1)):0){_=0;Se(5);_=0}i=ze()|0;_=0;Se(3);t=_;_=0;if(t&1){t=ze(0)|0;Fi(t)}else $e(i|0)}else fi(42676)|0}while(0);return}function Lh(e,i){e=e|0;i=i|0;if(!(t[i>>0]&1)){f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2]}else xh(e,f[i+8>>2]|0,f[i+4>>2]|0);return}function xh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0;if(r>>>0>4294967279)xp(e);if(r>>>0<11){t[e>>0]=r<<1;e=e+1|0}else{a=r+16&-16;n=Bp(a)|0;f[e+8>>2]=n;f[e>>2]=a|1;f[e+4>>2]=r;e=n}Am(e|0,i|0,r|0)|0;t[e+r>>0]=0;return}function Ph(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0;if(i>>>0>4294967279)xp(e);if(i>>>0<11){t[e>>0]=i<<1;e=e+1|0}else{a=i+16&-16;n=Bp(a)|0;f[e+8>>2]=n;f[e>>2]=a|1;f[e+4>>2]=i;e=n}ym(e|0,r|0,i|0)|0;t[e+i>>0]=0;return}function Oh(e){e=e|0;if(t[e>>0]&1)Ip(f[e+8>>2]|0);return}function Bh(e,i){e=e|0;i=i|0;var r=0,n=0;if((e|0)!=(i|0)){r=t[i>>0]|0;n=(r&1)==0;Dh(e,n?i+1|0:f[i+8>>2]|0,n?(r&255)>>>1:f[i+4>>2]|0)|0}return e|0}function Ih(e,i){e=e|0;i=i|0;return Dh(e,i,Vy(i)|0)|0}function Dh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;n=t[e>>0]|0;if(!(n&1))s=10;else{n=f[e>>2]|0;s=(n&-2)+-1|0;n=n&255}a=(n&1)==0;do{if(s>>>0>=r>>>0){if(a)n=e+1|0;else n=f[e+8>>2]|0;Tm(n|0,i|0,r|0)|0;t[n+r>>0]=0;if(!(t[e>>0]&1)){t[e>>0]=r<<1;break}else{f[e+4>>2]=r;break}}else{if(a)n=(n&255)>>>1;else n=f[e+4>>2]|0;Yh(e,s,r-s|0,n,0,n,r,i)}}while(0);return e|0}function Nh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0;n=t[e>>0]|0;a=(n&1)==0;if(a)n=(n&255)>>>1;else n=f[e+4>>2]|0;do{if(n>>>0>=i>>>0)if(a){t[e+1+i>>0]=0;t[e>>0]=i<<1;break}else{t[(f[e+8>>2]|0)+i>>0]=0;f[e+4>>2]=i;break}else Fh(e,i-n|0,r)|0}while(0);return}function Fh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;if(i){n=t[e>>0]|0;if(!(n&1))a=10;else{n=f[e>>2]|0;a=(n&-2)+-1|0;n=n&255}if(!(n&1))s=(n&255)>>>1;else s=f[e+4>>2]|0;if((a-s|0)>>>0<i>>>0){qh(e,a,i-a+s|0,s,s,0,0);n=t[e>>0]|0}if(!(n&1))a=e+1|0;else a=f[e+8>>2]|0;ym(a+s|0,r|0,i|0)|0;n=s+i|0;if(!(t[e>>0]&1))t[e>>0]=n<<1;else f[e+4>>2]=n;t[a+n>>0]=0}return e|0}function Uh(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0;if(i>>>0>4294967279)xp(e);r=t[e>>0]|0;if(!(r&1))n=10;else{r=f[e>>2]|0;n=(r&-2)+-1|0;r=r&255}if(!(r&1))o=(r&255)>>>1;else o=f[e+4>>2]|0;i=o>>>0>i>>>0?o:i;if(i>>>0<11)l=10;else l=(i+16&-16)+-1|0;e:do{if((l|0)!=(n|0)){do{if((l|0)!=10){i=l+1|0;if(l>>>0<=n>>>0){_=0;i=de(67,i|0)|0;s=_;_=0;if(s&1){e=ze(0)|0;Ze(e|0)|0;Qe();break e}}else i=Bp(i)|0;if(!(r&1)){n=1;a=e+1|0;s=0;break}else{n=1;a=f[e+8>>2]|0;s=1;break}}else{i=e+1|0;n=0;a=f[e+8>>2]|0;s=1}}while(0);if(!(r&1))r=(r&255)>>>1;else r=f[e+4>>2]|0;Am(i|0,a|0,r+1|0)|0;if(s)Ip(a);if(n){f[e>>2]=l+1|1;f[e+4>>2]=o;f[e+8>>2]=i;break}else{t[e>>0]=o<<1;break}}}while(0);return}function jh(e,i){e=e|0;i=i|0;return zh(e,i,Vy(i)|0)|0}function Hh(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0;r=t[e>>0]|0;n=(r&1)!=0;if(n){a=(f[e>>2]&-2)+-1|0;s=f[e+4>>2]|0}else{a=10;s=(r&255)>>>1}if((s|0)==(a|0)){qh(e,a,1,a,a,0,0);if(!(t[e>>0]&1))a=7;else a=8}else if(n)a=8;else a=7;if((a|0)==7){t[e>>0]=(s<<1)+2;r=e+1|0;n=s+1|0}else if((a|0)==8){r=f[e+8>>2]|0;n=s+1|0;f[e+4>>2]=n}t[r+s>>0]=i;t[r+n>>0]=0;return}function zh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;n=t[e>>0]|0;if(!(n&1))a=10;else{n=f[e>>2]|0;a=(n&-2)+-1|0;n=n&255}if(!(n&1))s=(n&255)>>>1;else s=f[e+4>>2]|0;if((a-s|0)>>>0>=r>>>0){if(r){if(!(n&1))a=e+1|0;else a=f[e+8>>2]|0;Am(a+s|0,i|0,r|0)|0;n=s+r|0;if(!(t[e>>0]&1))t[e>>0]=n<<1;else f[e+4>>2]=n;t[a+n>>0]=0}}else Yh(e,a,r-a+s|0,s,s,0,r,i);return e|0}function Yh(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,c=0,h=0;if((-18-i|0)>>>0<r>>>0)xp(e);if(!(t[e>>0]&1))h=e+1|0;else h=f[e+8>>2]|0;if(i>>>0<2147483623){u=r+i|0;c=i<<1;u=u>>>0<c>>>0?c:u;u=u>>>0<11?11:u+16&-16}else u=-17;c=Bp(u)|0;if(a)Am(c|0,h|0,a|0)|0;if(l)Am(c+a|0,o|0,l|0)|0;r=n-s|0;if((r|0)!=(a|0))Am(c+(l+a)|0,h+(s+a)|0,r-a|0)|0;if((i|0)!=10)Ip(h);f[e+8>>2]=c;f[e>>2]=u|1;i=r+l|0;f[e+4>>2]=i;t[c+i>>0]=0;return}function qh(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,c=0;if((-17-i|0)>>>0<r>>>0)xp(e);if(!(t[e>>0]&1))c=e+1|0;else c=f[e+8>>2]|0;if(i>>>0<2147483623){o=r+i|0;u=i<<1;o=o>>>0<u>>>0?u:o;o=o>>>0<11?11:o+16&-16}else o=-17;u=Bp(o)|0;if(a)Am(u|0,c|0,a|0)|0;r=n-s|0;if((r|0)!=(a|0))Am(u+(l+a)|0,c+(s+a)|0,r-a|0)|0;if((i|0)!=10)Ip(c);f[e+8>>2]=u;f[e>>2]=o|1;return}function Xh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0;if(r>>>0>1073741807)xp(e);if(r>>>0<2){t[e>>0]=r<<1;e=e+4|0}else{a=r+4&-4;n=Bp(a<<2)|0;f[e+8>>2]=n;f[e>>2]=a|1;f[e+4>>2]=r;e=n}Wy(e,i,r)|0;f[e+(r<<2)>>2]=0;return}function Vh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0;if(i>>>0>1073741807)xp(e);if(i>>>0<2){t[e>>0]=i<<1;e=e+4|0}else{a=i+4&-4;n=Bp(a<<2)|0;f[e+8>>2]=n;f[e>>2]=a|1;f[e+4>>2]=i;e=n}Jy(e,r,i)|0;f[e+(i<<2)>>2]=0;return}function Gh(e){e=e|0;if(t[e>>0]&1)Ip(f[e+8>>2]|0);return}function Kh(e,i){e=e|0;i=i|0;return Wh(e,i,Ky(i)|0)|0}function Wh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;n=t[e>>0]|0;if(!(n&1))s=1;else{n=f[e>>2]|0;s=(n&-2)+-1|0;n=n&255}a=(n&1)==0;do{if(s>>>0>=r>>>0){if(a)n=e+4|0;else n=f[e+8>>2]|0;Zy(n,i,r)|0;f[n+(r<<2)>>2]=0;if(!(t[e>>0]&1)){t[e>>0]=r<<1;break}else{f[e+4>>2]=r;break}}else{if(a)n=(n&255)>>>1;else n=f[e+4>>2]|0;Qh(e,s,r-s|0,n,0,n,r,i)}}while(0);return e|0}function Zh(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0;if(i>>>0>1073741807)xp(e);r=t[e>>0]|0;if(!(r&1))n=1;else{r=f[e>>2]|0;n=(r&-2)+-1|0;r=r&255}if(!(r&1))o=(r&255)>>>1;else o=f[e+4>>2]|0;i=o>>>0>i>>>0?o:i;if(i>>>0<2)l=1;else l=(i+4&-4)+-1|0;e:do{if((l|0)!=(n|0)){do{if((l|0)!=1){i=(l<<2)+4|0;if(l>>>0<=n>>>0){_=0;i=de(67,i|0)|0;s=_;_=0;if(s&1){e=ze(0)|0;Ze(e|0)|0;Qe();break e}}else i=Bp(i)|0;if(!(r&1)){n=1;a=e+4|0;s=0;break}else{n=1;a=f[e+8>>2]|0;s=1;break}}else{i=e+4|0;n=0;a=f[e+8>>2]|0;s=1}}while(0);if(!(r&1))r=(r&255)>>>1;else r=f[e+4>>2]|0;Wy(i,a,r+1|0)|0;if(s)Ip(a);if(n){f[e>>2]=l+1|1;f[e+4>>2]=o;f[e+8>>2]=i;break}else{t[e>>0]=o<<1;break}}}while(0);return}function Jh(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0;r=t[e>>0]|0;n=(r&1)!=0;if(n){a=(f[e>>2]&-2)+-1|0;s=f[e+4>>2]|0}else{a=1;s=(r&255)>>>1}if((s|0)==(a|0)){$h(e,a,1,a,a,0,0);if(!(t[e>>0]&1))a=7;else a=8}else if(n)a=8;else a=7;if((a|0)==7){t[e>>0]=(s<<1)+2;r=e+4|0;n=s+1|0}else if((a|0)==8){r=f[e+8>>2]|0;n=s+1|0;f[e+4>>2]=n}f[r+(s<<2)>>2]=i;f[r+(n<<2)>>2]=0;return}function Qh(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,c=0,h=0;if((1073741806-i|0)>>>0<r>>>0)xp(e);if(!(t[e>>0]&1))h=e+4|0;else h=f[e+8>>2]|0;if(i>>>0<536870887){u=r+i|0;c=i<<1;u=u>>>0<c>>>0?c:u;u=u>>>0<2?2:u+4&-4}else u=1073741807;c=Bp(u<<2)|0;if(a)Wy(c,h,a)|0;if(l)Wy(c+(a<<2)|0,o,l)|0;r=n-s|0;if((r|0)!=(a|0))Wy(c+(l+a<<2)|0,h+(s+a<<2)|0,r-a|0)|0;if((i|0)!=1)Ip(h);f[e+8>>2]=c;f[e>>2]=u|1;i=r+l|0;f[e+4>>2]=i;f[c+(i<<2)>>2]=0;return}function $h(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,c=0;if((1073741807-i|0)>>>0<r>>>0)xp(e);if(!(t[e>>0]&1))c=e+4|0;else c=f[e+8>>2]|0;if(i>>>0<536870887){o=r+i|0;u=i<<1;o=o>>>0<u>>>0?u:o;o=o>>>0<2?2:o+4&-4}else o=1073741807;u=Bp(o<<2)|0;if(a)Wy(u,c,a)|0;r=n-s|0;if((r|0)!=(a|0))Wy(u+(l+a<<2)|0,c+(s+a<<2)|0,r-a|0)|0;if((i|0)!=1)Ip(c);f[e+8>>2]=u;f[e>>2]=o|1;return}function ed(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;a=i;n=r-a|0;if(n>>>0>4294967279)xp(e);if(n>>>0<11){t[e>>0]=n<<1;s=e+1|0}else{l=n+16&-16;s=Bp(l)|0;f[e+8>>2]=s;f[e>>2]=l|1;f[e+4>>2]=n}e=r-a|0;if((i|0)!=(r|0)){n=s;while(1){t[n>>0]=t[i>>0]|0;i=i+1|0;if((i|0)==(r|0))break;else n=n+1|0}}t[s+e>>0]=0;return}function id(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;s=i;n=r-s|0;a=n>>2;if(a>>>0>1073741807)xp(e);if(a>>>0<2){t[e>>0]=n>>>1;e=e+4|0}else{l=a+4&-4;n=Bp(l<<2)|0;f[e+8>>2]=n;f[e>>2]=l|1;f[e+4>>2]=a;e=n}a=(r-s|0)>>>2;if((i|0)!=(r|0)){n=e;while(1){f[n>>2]=f[i>>2];i=i+4|0;if((i|0)==(r|0))break;else n=n+4|0}}f[e+(a<<2)>>2]=0;return}function rd(e,i){e=e|0;i=i|0;var r=0,t=0,n=0;r=c;c=c+16|0;t=r;n=(f[e+24>>2]|0)==0;f[e+16>>2]=n&1|i;if(!((n&1|i)&f[e+20>>2])){c=r;return}i=He(16)|0;kb()|0;f[t>>2]=1;f[t+4>>2]=43112;_=0;Ae(11,i|0,57437,t|0);n=_;_=0;if(n&1){n=ze()|0;je(i|0);$e(n|0)}else bi(i|0,864,112)}function td(e){e=e|0;var i=0;f[e>>2]=43068;_=0;ce(88,e|0,0);i=_;_=0;if(i&1){i=ze(0)|0;Fi(i)}else{Bu(e+28|0);xc(f[e+32>>2]|0);xc(f[e+36>>2]|0);xc(f[e+48>>2]|0);xc(f[e+60>>2]|0);return}}function nd(e){e=e|0;td(e);return}function fd(e){e=e|0;td(e);Ip(e);return}function ad(e,i){e=e|0;i=i|0;var r=0,t=0,n=0;r=f[e+40>>2]|0;t=e+32|0;n=e+36|0;if(r)do{r=r+-1|0;pM[f[(f[t>>2]|0)+(r<<2)>>2]&15](i,e,f[(f[n>>2]|0)+(r<<2)>>2]|0)}while((r|0)!=0);return}function sd(e){e=e|0;var i=0,r=0;r=c;c=c+16|0;i=r;Ou(i,e+28|0);c=r;return f[i>>2]|0}function ld(e,i){e=e|0;i=i|0;var r=0;f[e+24>>2]=i;f[e+16>>2]=(i|0)==0&1;f[e+20>>2]=0;f[e+4>>2]=4098;f[e+12>>2]=0;f[e+8>>2]=6;r=e+28|0;i=e+32|0;e=i+40|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(e|0));Pu(r);return}function od(e){e=e|0;td(e);return}function ud(e){e=e|0;td(e);Ip(e);return}function cd(e){e=e|0;f[e>>2]=42760;Bu(e+4|0);return}function hd(e){e=e|0;f[e>>2]=42760;Bu(e+4|0);Ip(e);return}function dd(e){e=e|0;f[e>>2]=42760;Pu(e+4|0);e=e+8|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;return}function bd(e,i){e=e|0;i=i|0;return}function kd(e,i,r){e=e|0;i=i|0;r=r|0;return e|0}function wd(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;i=e;f[i>>2]=0;f[i+4>>2]=0;i=e+8|0;f[i>>2]=-1;f[i+4>>2]=-1;return}function _d(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;i=e;f[i>>2]=0;f[i+4>>2]=0;i=e+8|0;f[i>>2]=-1;f[i+4>>2]=-1;return}function md(e){e=e|0;return 0}function vd(e){e=e|0;return 0}function pd(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;s=e+12|0;l=e+16|0;e:do{if((r|0)>0){a=i;i=0;while(1){n=f[s>>2]|0;if(n>>>0<(f[l>>2]|0)>>>0){f[s>>2]=n+1;n=t[n>>0]|0}else{n=lM[f[(f[e>>2]|0)+40>>2]&127](e)|0;if((n|0)==-1)break e;n=n&255}t[a>>0]=n;i=i+1|0;if((i|0)<(r|0))a=a+1|0;else break}}else i=0}while(0);return i|0}function gd(e){e=e|0;return-1}function yd(e){e=e|0;var i=0;if((lM[f[(f[e>>2]|0)+36>>2]&127](e)|0)==-1)e=-1;else{i=e+12|0;e=f[i>>2]|0;f[i>>2]=e+1;e=a[e>>0]|0}return e|0}function Md(e,i){e=e|0;i=i|0;return-1}function Ed(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0;l=e+24|0;o=e+28|0;e:do{if((r|0)>0){s=i;i=0;while(1){n=f[l>>2]|0;if(n>>>0>=(f[o>>2]|0)>>>0){if((kM[f[(f[e>>2]|0)+52>>2]&63](e,a[s>>0]|0)|0)==-1)break e}else{u=t[s>>0]|0;f[l>>2]=n+1;t[n>>0]=u}i=i+1|0;if((i|0)<(r|0))s=s+1|0;else break}}else i=0}while(0);return i|0}function Ad(e,i){e=e|0;i=i|0;return-1}function Sd(e){e=e|0;f[e>>2]=42824;Bu(e+4|0);return}function Td(e){e=e|0;f[e>>2]=42824;Bu(e+4|0);Ip(e);return}function Cd(e){e=e|0;f[e>>2]=42824;Pu(e+4|0);e=e+8|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;return}function Rd(e,i){e=e|0;i=i|0;return}function Ld(e,i,r){e=e|0;i=i|0;r=r|0;return e|0}function xd(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;i=e;f[i>>2]=0;f[i+4>>2]=0;i=e+8|0;f[i>>2]=-1;f[i+4>>2]=-1;return}function Pd(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;i=e;f[i>>2]=0;f[i+4>>2]=0;i=e+8|0;f[i>>2]=-1;f[i+4>>2]=-1;return}function Od(e){e=e|0;return 0}function Bd(e){e=e|0;return 0}function Id(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0;a=e+12|0;s=e+16|0;e:do{if((r|0)>0){n=i;i=0;while(1){t=f[a>>2]|0;if(t>>>0>=(f[s>>2]|0)>>>0){t=lM[f[(f[e>>2]|0)+40>>2]&127](e)|0;if((t|0)==-1)break e}else{f[a>>2]=t+4;t=f[t>>2]|0}f[n>>2]=t;i=i+1|0;if((i|0)<(r|0))n=n+4|0;else break}}else i=0}while(0);return i|0}function Dd(e){e=e|0;return-1}function Nd(e){e=e|0;var i=0;if((lM[f[(f[e>>2]|0)+36>>2]&127](e)|0)==-1)e=-1;else{i=e+12|0;e=f[i>>2]|0;f[i>>2]=e+4;e=f[e>>2]|0}return e|0}function Fd(e,i){e=e|0;i=i|0;return-1}function Ud(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0;a=e+24|0;s=e+28|0;e:do{if((r|0)>0){n=i;i=0;while(1){t=f[a>>2]|0;if(t>>>0>=(f[s>>2]|0)>>>0){if((kM[f[(f[e>>2]|0)+52>>2]&63](e,f[n>>2]|0)|0)==-1)break e}else{l=f[n>>2]|0;f[a>>2]=t+4;f[t>>2]=l}i=i+1|0;if((i|0)<(r|0))n=n+4|0;else break}}else i=0}while(0);return i|0}function jd(e,i){e=e|0;i=i|0;return-1}function Hd(e){e=e|0;td(e+8|0);return}function zd(e){e=e|0;td(e+((f[(f[e>>2]|0)+-12>>2]|0)+8)|0);return}function Yd(e){e=e|0;td(e+8|0);Ip(e);return}function qd(e){e=e|0;Yd(e+(f[(f[e>>2]|0)+-12>>2]|0)|0);return}function Xd(e){e=e|0;var i=0,r=0,n=0,a=0;n=c;c=c+16|0;r=n;e:do{if(f[e+((f[(f[e>>2]|0)+-12>>2]|0)+24)>>2]|0){_=0;ce(65,r|0,e|0);i=_;_=0;i:do{if(i&1)i=ze(0)|0;else{do{if(t[r>>0]|0){i=f[e+((f[(f[e>>2]|0)+-12>>2]|0)+24)>>2]|0;_=0;i=de(f[(f[i>>2]|0)+24>>2]|0,i|0)|0;a=_;_=0;if(!(a&1)){if((i|0)!=-1)break;a=f[(f[e>>2]|0)+-12>>2]|0;_=0;ce(66,e+a|0,f[e+(a+16)>>2]|1|0);a=_;_=0;if(!(a&1))break}i=ze(0)|0;nb(r);break i}}while(0);nb(r);break e}}while(0);Ze(i|0)|0;_=0;ue(181,e+(f[(f[e>>2]|0)+-12>>2]|0)|0);a=_;_=0;if(!(a&1)){Qe();break}i=ze()|0;_=0;Se(3);a=_;_=0;if(a&1){a=ze(0)|0;Fi(a)}else $e(i|0)}}while(0);c=n;return e|0}function Vd(e){e=e|0;var i=0;i=e+16|0;f[i>>2]=f[i>>2]|1;if(!(f[e+20>>2]&1))return;else ki()}function Gd(e){e=e|0;td(e+8|0);return}function Kd(e){e=e|0;td(e+((f[(f[e>>2]|0)+-12>>2]|0)+8)|0);return}function Wd(e){e=e|0;td(e+8|0);Ip(e);return}function Zd(e){e=e|0;Wd(e+(f[(f[e>>2]|0)+-12>>2]|0)|0);return}function Jd(e){e=e|0;var i=0,r=0,n=0,a=0;n=c;c=c+16|0;r=n;e:do{if(f[e+((f[(f[e>>2]|0)+-12>>2]|0)+24)>>2]|0){_=0;ce(89,r|0,e|0);i=_;_=0;i:do{if(i&1)i=ze(0)|0;else{do{if(t[r>>0]|0){i=f[e+((f[(f[e>>2]|0)+-12>>2]|0)+24)>>2]|0;_=0;i=de(f[(f[i>>2]|0)+24>>2]|0,i|0)|0;a=_;_=0;if(!(a&1)){if((i|0)!=-1)break;a=f[(f[e>>2]|0)+-12>>2]|0;_=0;ce(66,e+a|0,f[e+(a+16)>>2]|1|0);a=_;_=0;if(!(a&1))break}i=ze(0)|0;hb(r);break i}}while(0);hb(r);break e}}while(0);Ze(i|0)|0;_=0;ue(181,e+(f[(f[e>>2]|0)+-12>>2]|0)|0);a=_;_=0;if(!(a&1)){Qe();break}i=ze()|0;_=0;Se(3);a=_;_=0;if(a&1){a=ze(0)|0;Fi(a)}else $e(i|0)}}while(0);c=n;return e|0}function Qd(e,i){e=e|0;i=i|0;return}function $d(e){e=e|0;td(e+4|0);return}function eb(e){e=e|0;td(e+((f[(f[e>>2]|0)+-12>>2]|0)+4)|0);return}function ib(e){e=e|0;td(e+4|0);Ip(e);return}function rb(e){e=e|0;ib(e+(f[(f[e>>2]|0)+-12>>2]|0)|0);return}function tb(e,i){e=e|0;i=i|0;var r=0;t[e>>0]=0;f[e+4>>2]=i;r=f[(f[i>>2]|0)+-12>>2]|0;if(!(f[i+(r+16)>>2]|0)){r=f[i+(r+72)>>2]|0;if(r)Xd(r)|0;t[e>>0]=1}return}function nb(e){e=e|0;var i=0,r=0;e=e+4|0;r=f[e>>2]|0;i=f[(f[r>>2]|0)+-12>>2]|0;do{if((((f[r+(i+24)>>2]|0)!=0?(f[r+(i+16)>>2]|0)==0:0)?(f[r+(i+4)>>2]&8192|0)!=0:0)?!(ei()|0):0){i=f[e>>2]|0;i=f[i+((f[(f[i>>2]|0)+-12>>2]|0)+24)>>2]|0;_=0;i=de(f[(f[i>>2]|0)+24>>2]|0,i|0)|0;r=_;_=0;if(!(r&1)){if((i|0)!=-1)break;i=f[e>>2]|0;r=f[(f[i>>2]|0)+-12>>2]|0;_=0;ce(66,i+r|0,f[i+(r+16)>>2]|1|0);r=_;_=0;if(!(r&1))break}r=ze(0)|0;Ze(r|0)|0;_=0;Se(3);r=_;_=0;if(r&1){r=ze(0)|0;Fi(r)}}}while(0);return}function fb(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;k=c;c=c+32|0;o=k+20|0;u=k+16|0;d=k+8|0;r=k;_=0;ce(65,d|0,e|0);h=_;_=0;e:do{if(h&1){r=ze(0)|0;n=e;a=e;b=19}else{do{if(t[d>>0]|0){f[r>>2]=sd(e+(f[(f[e>>2]|0)+-12>>2]|0)|0)|0;_=0;h=pe(37,r|0,43392)|0;l=_;_=0;if(l&1){b=ze(0)|0;Bu(r);r=b}else{Bu(r);a=f[(f[e>>2]|0)+-12>>2]|0;l=f[e+(a+24)>>2]|0;n=e+a|0;a=e+(a+76)|0;r=f[a>>2]|0;do{if((r|0)==-1){f[o>>2]=sd(n)|0;_=0;r=pe(37,o|0,44220)|0;w=_;_=0;if(!(w&1)?(_=0,s=pe(f[(f[r>>2]|0)+28>>2]|0,r|0,32)|0,w=_,_=0,!(w&1)):0){Bu(o);r=s<<24>>24;f[a>>2]=r;b=10;break}r=ze(0)|0;Bu(o)}else b=10}while(0);if((b|0)==10){w=f[(f[h>>2]|0)+16>>2]|0;f[u>>2]=l;_=0;f[o>>2]=f[u>>2];r=ge(w|0,h|0,o|0,n|0,r&255|0,i|0)|0;w=_;_=0;if(!(w&1)){if(r)break;w=f[(f[e>>2]|0)+-12>>2]|0;_=0;ce(66,e+w|0,f[e+(w+16)>>2]|5|0);w=_;_=0;if(!(w&1))break}r=ze(0)|0}}nb(d);n=e;a=e;b=19;break e}}while(0);nb(d)}}while(0);do{if((b|0)==19){Ze(r|0)|0;_=0;ue(181,n+(f[(f[a>>2]|0)+-12>>2]|0)|0);w=_;_=0;if(!(w&1)){Qe();break}r=ze()|0;_=0;Se(3);w=_;_=0;if(w&1){w=ze(0)|0;Fi(w)}else $e(r|0)}}while(0);c=k;return e|0}function ab(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;k=c;c=c+32|0;o=k+20|0;u=k+16|0;d=k+8|0;r=k;_=0;ce(65,d|0,e|0);h=_;_=0;e:do{if(h&1){r=ze(0)|0;n=e;a=e;b=19}else{do{if(t[d>>0]|0){f[r>>2]=sd(e+(f[(f[e>>2]|0)+-12>>2]|0)|0)|0;_=0;h=pe(37,r|0,43392)|0;l=_;_=0;if(l&1){b=ze(0)|0;Bu(r);r=b}else{Bu(r);a=f[(f[e>>2]|0)+-12>>2]|0;l=f[e+(a+24)>>2]|0;n=e+a|0;a=e+(a+76)|0;r=f[a>>2]|0;do{if((r|0)==-1){f[o>>2]=sd(n)|0;_=0;r=pe(37,o|0,44220)|0;w=_;_=0;if(!(w&1)?(_=0,s=pe(f[(f[r>>2]|0)+28>>2]|0,r|0,32)|0,w=_,_=0,!(w&1)):0){Bu(o);r=s<<24>>24;f[a>>2]=r;b=10;break}r=ze(0)|0;Bu(o)}else b=10}while(0);if((b|0)==10){w=f[(f[h>>2]|0)+24>>2]|0;f[u>>2]=l;_=0;f[o>>2]=f[u>>2];r=ge(w|0,h|0,o|0,n|0,r&255|0,i|0)|0;w=_;_=0;if(!(w&1)){if(r)break;w=f[(f[e>>2]|0)+-12>>2]|0;_=0;ce(66,e+w|0,f[e+(w+16)>>2]|5|0);w=_;_=0;if(!(w&1))break}r=ze(0)|0}}nb(d);n=e;a=e;b=19;break e}}while(0);nb(d)}}while(0);do{if((b|0)==19){Ze(r|0)|0;_=0;ue(181,n+(f[(f[a>>2]|0)+-12>>2]|0)|0);w=_;_=0;if(!(w&1)){Qe();break}r=ze()|0;_=0;Se(3);w=_;_=0;if(w&1){w=ze(0)|0;Fi(w)}else $e(r|0)}}while(0);c=k;return e|0}function sb(e){e=e|0;td(e+4|0);return}function lb(e){e=e|0;td(e+((f[(f[e>>2]|0)+-12>>2]|0)+4)|0);return}function ob(e){e=e|0;td(e+4|0);Ip(e);return}function ub(e){e=e|0;ob(e+(f[(f[e>>2]|0)+-12>>2]|0)|0);return}function cb(e,i){e=e|0;i=i|0;var r=0;t[e>>0]=0;f[e+4>>2]=i;r=f[(f[i>>2]|0)+-12>>2]|0;if(!(f[i+(r+16)>>2]|0)){r=f[i+(r+72)>>2]|0;if(r)Jd(r)|0;t[e>>0]=1}return}function hb(e){e=e|0;var i=0,r=0;e=e+4|0;r=f[e>>2]|0;i=f[(f[r>>2]|0)+-12>>2]|0;do{if((((f[r+(i+24)>>2]|0)!=0?(f[r+(i+16)>>2]|0)==0:0)?(f[r+(i+4)>>2]&8192|0)!=0:0)?!(ei()|0):0){i=f[e>>2]|0;i=f[i+((f[(f[i>>2]|0)+-12>>2]|0)+24)>>2]|0;_=0;i=de(f[(f[i>>2]|0)+24>>2]|0,i|0)|0;r=_;_=0;if(!(r&1)){if((i|0)!=-1)break;i=f[e>>2]|0;r=f[(f[i>>2]|0)+-12>>2]|0;_=0;ce(66,i+r|0,f[i+(r+16)>>2]|1|0);r=_;_=0;if(!(r&1))break}r=ze(0)|0;Ze(r|0)|0;_=0;Se(3);r=_;_=0;if(r&1){r=ze(0)|0;Fi(r)}}}while(0);return}function db(e){e=e|0;return 57453}function bb(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)!=1&(r|0)<257)gh(e,i,r);else xh(e,57462,35);return}function kb(){if((t[1048]|0)==0?(De(1048)|0)!=0:0){f[10778]=43084;di(72,43112,w|0)|0;qe(1048)}return 43112}function wb(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0;t=c;c=c+16|0;n=t+8|0;a=t;l=r;s=f[l+4>>2]|0;r=a;f[r>>2]=f[l>>2];f[r+4>>2]=s;f[n>>2]=f[a>>2];f[n+4>>2]=f[a+4>>2];Mh(e,n,i);f[e>>2]=43048;c=t;return}function _b(e){e=e|0;Sh(e);return}function mb(e){e=e|0;Sh(e);Ip(e);return}function vb(e){e=e|0;td(e);Ip(e);return}function pb(e){e=e|0;Ip(e);return}function gb(e){e=e|0;return}function yb(e){e=e|0;return}function Mb(e){e=e|0;Ip(e);return}function Eb(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;var a=0,s=0;e:do{if((n|0)==(f|0))s=6;else while(1){if((i|0)==(r|0)){i=-1;break e}e=t[i>>0]|0;a=t[n>>0]|0;if(e<<24>>24<a<<24>>24){i=-1;break e}if(a<<24>>24<e<<24>>24){i=1;break e}i=i+1|0;n=n+1|0;if((n|0)==(f|0)){s=6;break}}}while(0);if((s|0)==6)i=(i|0)!=(r|0)&1;return i|0}function Ab(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;ed(e,r,t);return}function Sb(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if((i|0)==(r|0))e=0;else{e=0;do{e=(t[i>>0]|0)+(e<<4)|0;n=e&-268435456;e=(n>>>24|n)^e;i=i+1|0}while((i|0)!=(r|0))}return e|0}function Tb(e){e=e|0;return}function Cb(e){e=e|0;Ip(e);return}function Rb(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0;e:do{if((t|0)==(n|0))s=6;else while(1){if((i|0)==(r|0)){i=-1;break e}e=f[i>>2]|0;a=f[t>>2]|0;if((e|0)<(a|0)){i=-1;break e}if((a|0)<(e|0)){i=1;break e}i=i+4|0;t=t+4|0;if((t|0)==(n|0)){s=6;break}}}while(0);if((s|0)==6)i=(i|0)!=(r|0)&1;return i|0}function Lb(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;id(e,r,t);return}function xb(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;if((i|0)==(r|0))e=0;else{e=0;do{e=(f[i>>2]|0)+(e<<4)|0;t=e&-268435456;e=(t>>>24|t)^e;i=i+4|0}while((i|0)!=(r|0))}return e|0}function Pb(e){e=e|0;return}function Ob(e){e=e|0;Ip(e);return}function Bb(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0;m=c;c=c+64|0;k=m+56|0;l=m+52|0;d=m+48|0;o=m+44|0;u=m+40|0;h=m+36|0;b=m+32|0;v=m+8|0;w=m;e:do{if(!(f[n+4>>2]&1)){f[d>>2]=-1;v=f[(f[e>>2]|0)+16>>2]|0;f[o>>2]=f[i>>2];f[u>>2]=f[r>>2];f[l>>2]=f[o>>2];f[k>>2]=f[u>>2];l=sM[v&63](e,l,k,n,a,d)|0;f[i>>2]=l;switch(f[d>>2]|0){case 0:{t[s>>0]=0;break e}case 1:{t[s>>0]=1;break e}default:{t[s>>0]=1;f[a>>2]=4;break e}}}else{l=sd(n)|0;f[h>>2]=l;_=0;e=pe(37,h|0,44220)|0;d=_;_=0;do{if(!(d&1)){bh(l)|0;l=sd(n)|0;f[b>>2]=l;_=0;u=pe(37,b|0,44360)|0;b=_;_=0;if(b&1){v=ze()|0;bh(l)|0;l=v;break}bh(l)|0;_=0;ce(f[(f[u>>2]|0)+24>>2]|0,v|0,u|0);b=_;_=0;if(!(b&1)){o=v+12|0;_=0;ce(f[(f[u>>2]|0)+28>>2]|0,o|0,u|0);b=_;_=0;if(!(b&1)){f[w>>2]=f[r>>2];_=0;f[k>>2]=f[w>>2];l=se(7,i|0,k|0,v|0,v+24|0,e|0,a|0,1)|0;a=_;_=0;if(a&1){l=ze()|0;Oh(v+12|0);Oh(v);break}else{t[s>>0]=(l|0)==(v|0)&1;l=f[i>>2]|0;Oh(v+12|0);Oh(v);break e}}}else o=v;l=ze()|0;u=P;if((v|0)!=(o|0))do{o=o+-12|0;Oh(o)}while((o|0)!=(v|0))}else{v=ze()|0;bh(l)|0;l=v}}while(0);$e(l|0)}}while(0);c=m;return l|0}function Ib(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=Fw(e,o,l,t,n,a)|0;c=s;return e|0}function Db(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=Uw(e,o,l,t,n,a)|0;c=s;return e|0}function Nb(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=jw(e,o,l,t,n,a)|0;c=s;return e|0}function Fb(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=Hw(e,o,l,t,n,a)|0;c=s;return e|0}function Ub(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=zw(e,o,l,t,n,a)|0;c=s;return e|0}function jb(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=Yw(e,o,l,t,n,a)|0;c=s;return e|0}function Hb(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=qw(e,o,l,t,n,a)|0;c=s;return e|0}function zb(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=Xw(e,o,l,t,n,a)|0;c=s;return e|0}function Yb(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=Vw(e,o,l,t,n,a)|0;c=s;return e|0}function qb(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0;C=c;c=c+240|0;M=C;m=C+208|0;L=C+32|0;e=C+28|0;R=C+16|0;y=C+12|0;p=C+48|0;g=C+8|0;v=C+4|0;f[L>>2]=0;f[L+4>>2]=0;f[L+8>>2]=0;_=0;n=de(68,n|0)|0;w=_;_=0;do{if(w&1)e=ze()|0;else{f[e>>2]=n;_=0;e=pe(37,e|0,44220)|0;w=_;_=0;if(!(w&1)?(_=0,Ee(f[(f[e>>2]|0)+32>>2]|0,e|0,57498,57524,m|0)|0,w=_,_=0,!(w&1)):0){bh(n)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;if(!(t[R>>0]&1))e=10;else e=(f[R>>2]&-2)+-1|0;_=0;Ae(8,R|0,e|0,0);w=_;_=0;e:do{if(!(w&1)){k=R+8|0;w=R+1|0;n=(t[R>>0]&1)==0?w:f[k>>2]|0;f[y>>2]=n;f[g>>2]=p;f[v>>2]=0;b=R+4|0;e=f[i>>2]|0;i:while(1){if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;o=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;d=_;_=0;if(d&1){x=29;break}if((o|0)==-1){f[i>>2]=0;e=0}}}else e=0;u=(e|0)==0;o=f[r>>2]|0;do{if(o){if((f[o+12>>2]|0)!=(f[o+16>>2]|0))if(u)break;else break i;_=0;h=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;d=_;_=0;if(d&1){x=29;break i}if((h|0)!=-1)if(u)break;else break i;else{f[r>>2]=0;x=19;break}}else x=19}while(0);if((x|0)==19){x=0;if(u){o=0;break}else o=0}u=t[R>>0]|0;u=(u&1)==0?(u&255)>>>1:f[b>>2]|0;if((f[y>>2]|0)==(n+u|0)){_=0;Ae(8,R|0,u<<1|0,0);d=_;_=0;if(d&1){x=29;break}if(!(t[R>>0]&1))n=10;else n=(f[R>>2]&-2)+-1|0;_=0;Ae(8,R|0,n|0,0);d=_;_=0;if(d&1){x=29;break}n=(t[R>>0]&1)==0?w:f[k>>2]|0;f[y>>2]=n+u}h=e+12|0;u=f[h>>2]|0;d=e+16|0;if((u|0)==(f[d>>2]|0)){_=0;u=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;P=_;_=0;if(P&1){x=29;break}}else u=a[u>>0]|0;if(Xb(u&255,16,n,y,v,0,L,p,g,m)|0)break;o=f[h>>2]|0;if((o|0)==(f[d>>2]|0)){_=0;de(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;P=_;_=0;if(P&1){x=29;break}else continue}else{f[h>>2]=o+1;continue}}if((x|0)==29){e=ze()|0;break}_=0;Ae(8,R|0,(f[y>>2]|0)-n|0,0);P=_;_=0;if((!(P&1)?(E=t[R>>0]|0,A=f[k>>2]|0,_=0,S=Me(3)|0,P=_,_=0,!(P&1)):0)?(_=0,f[M>>2]=l,T=Ee(16,((E&1)==0?w:A)|0,S|0,58882,M|0)|0,P=_,_=0,!(P&1)):0){if((T|0)!=1)f[s>>2]=4;if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;n=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;P=_;_=0;if(P&1){x=30;break}if((n|0)==-1){f[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(o){if((f[o+12>>2]|0)==(f[o+16>>2]|0)){_=0;e=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;P=_;_=0;if(P&1){x=30;break e}if((e|0)==-1){f[r>>2]=0;x=55;break}}if(!n)x=56}else x=55}while(0);if((x|0)==55?n:0)x=56;if((x|0)==56)f[s>>2]=f[s>>2]|2;P=f[i>>2]|0;Oh(R);Oh(L);c=C;return P|0}else x=30}else x=30}while(0);if((x|0)==30)e=ze()|0;Oh(R);break}e=ze()|0;bh(n)|0}}while(0);Oh(L);$e(e|0);return 0}function Xb(e,i,r,n,a,s,l,o,u,c){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;var h=0,d=0,b=0,k=0;b=f[n>>2]|0;k=(b|0)==(r|0);do{if(k){h=(t[c+24>>0]|0)==e<<24>>24;if(!h?(t[c+25>>0]|0)!=e<<24>>24:0){d=5;break}f[n>>2]=r+1;t[r>>0]=h?43:45;f[a>>2]=0;h=0}else d=5}while(0);e:do{if((d|0)==5){d=t[l>>0]|0;if(e<<24>>24==s<<24>>24?(((d&1)==0?(d&255)>>>1:f[l+4>>2]|0)|0)!=0:0){h=f[u>>2]|0;if((h-o|0)>=160){h=0;break}i=f[a>>2]|0;f[u>>2]=h+4;f[h>>2]=i;f[a>>2]=0;h=0;break}l=c+26|0;h=c;while(1){if((t[h>>0]|0)==e<<24>>24)break;h=h+1|0;if((h|0)==(l|0)){h=l;break}}h=h-c|0;if((h|0)>23)h=-1;else{switch(i|0){case 10:case 8:{if((h|0)>=(i|0)){h=-1;break e}break}case 16:{if((h|0)>=22){if(k){h=-1;break e}if((b-r|0)>=3){h=-1;break e}if((t[b+-1>>0]|0)!=48){h=-1;break e}f[a>>2]=0;h=t[57498+h>>0]|0;f[n>>2]=b+1;t[b>>0]=h;h=0;break e}break}default:{}}h=t[57498+h>>0]|0;f[n>>2]=b+1;t[b>>0]=h;f[a>>2]=(f[a>>2]|0)+1;h=0}}}while(0);return h|0}function Vb(){var e=0,i=0;do{if((t[1968]|0)==0?(De(1968)|0)!=0:0){_=0;e=ke(31,2147483647,58885,0)|0;i=_;_=0;if(i&1){i=ze()|0;gi(1968);$e(i|0)}else{f[11196]=e;qe(1968);break}}}while(0);return f[11196]|0}function Gb(e){e=e|0;return}function Kb(e){e=e|0;Ip(e);return}function Wb(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0;m=c;c=c+64|0;k=m+56|0;l=m+52|0;d=m+48|0;o=m+44|0;u=m+40|0;h=m+36|0;b=m+32|0;v=m+8|0;w=m;e:do{if(!(f[n+4>>2]&1)){f[d>>2]=-1;v=f[(f[e>>2]|0)+16>>2]|0;f[o>>2]=f[i>>2];f[u>>2]=f[r>>2];f[l>>2]=f[o>>2];f[k>>2]=f[u>>2];l=sM[v&63](e,l,k,n,a,d)|0;f[i>>2]=l;switch(f[d>>2]|0){case 0:{t[s>>0]=0;break e}case 1:{t[s>>0]=1;break e}default:{t[s>>0]=1;f[a>>2]=4;break e}}}else{l=sd(n)|0;f[h>>2]=l;_=0;e=pe(37,h|0,44212)|0;d=_;_=0;do{if(!(d&1)){bh(l)|0;l=sd(n)|0;f[b>>2]=l;_=0;u=pe(37,b|0,44368)|0;b=_;_=0;if(b&1){v=ze()|0;bh(l)|0;l=v;break}bh(l)|0;_=0;ce(f[(f[u>>2]|0)+24>>2]|0,v|0,u|0);b=_;_=0;if(!(b&1)){o=v+12|0;_=0;ce(f[(f[u>>2]|0)+28>>2]|0,o|0,u|0);b=_;_=0;if(!(b&1)){f[w>>2]=f[r>>2];_=0;f[k>>2]=f[w>>2];l=se(8,i|0,k|0,v|0,v+24|0,e|0,a|0,1)|0;a=_;_=0;if(a&1){l=ze()|0;Gh(v+12|0);Gh(v);break}else{t[s>>0]=(l|0)==(v|0)&1;l=f[i>>2]|0;Gh(v+12|0);Gh(v);break e}}}else o=v;l=ze()|0;u=P;if((v|0)!=(o|0))do{o=o+-12|0;Gh(o)}while((o|0)!=(v|0))}else{v=ze()|0;bh(l)|0;l=v}}while(0);$e(l|0)}}while(0);c=m;return l|0}function Zb(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=Ww(e,o,l,t,n,a)|0;c=s;return e|0}function Jb(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=Zw(e,o,l,t,n,a)|0;c=s;return e|0}function Qb(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=Jw(e,o,l,t,n,a)|0;c=s;return e|0}function $b(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=Qw(e,o,l,t,n,a)|0;c=s;return e|0}function ek(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=$w(e,o,l,t,n,a)|0;c=s;return e|0}function ik(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=e_(e,o,l,t,n,a)|0;c=s;return e|0}function rk(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=i_(e,o,l,t,n,a)|0;c=s;return e|0}function tk(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=r_(e,o,l,t,n,a)|0;c=s;return e|0}function nk(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;f[h>>2]=f[i>>2];f[u>>2]=f[r>>2];f[o>>2]=f[h>>2];f[l>>2]=f[u>>2];e=t_(e,o,l,t,n,a)|0;c=s;return e|0}function fk(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0;T=c;c=c+320|0;y=T;w=T+208|0;R=T+32|0;e=T+28|0;C=T+16|0;g=T+12|0;v=T+48|0;p=T+8|0;m=T+4|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;_=0;n=de(68,n|0)|0;k=_;_=0;do{if(k&1)e=ze()|0;else{f[e>>2]=n;_=0;e=pe(37,e|0,44212)|0;k=_;_=0;if(!(k&1)?(_=0,Ee(f[(f[e>>2]|0)+48>>2]|0,e|0,57498,57524,w|0)|0,k=_,_=0,!(k&1)):0){bh(n)|0;f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;if(!(t[C>>0]&1))e=10;else e=(f[C>>2]&-2)+-1|0;_=0;Ae(8,C|0,e|0,0);k=_;_=0;e:do{if(!(k&1)){b=C+8|0;k=C+1|0;e=(t[C>>0]&1)==0?k:f[b>>2]|0;f[g>>2]=e;f[p>>2]=v;f[m>>2]=0;d=C+4|0;l=f[i>>2]|0;i:while(1){if(l){n=f[l+12>>2]|0;if((n|0)==(f[l+16>>2]|0)){_=0;n=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;h=_;_=0;if(h&1){L=30;break}}else n=f[n>>2]|0;if((n|0)==-1){f[i>>2]=0;n=0;o=1}else{n=l;o=0}}else{n=0;o=1}u=f[r>>2]|0;do{if(u){l=f[u+12>>2]|0;if((l|0)==(f[u+16>>2]|0)){_=0;l=de(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;h=_;_=0;if(h&1){L=30;break i}}else l=f[l>>2]|0;if((l|0)!=-1)if(o){l=u;break}else{l=u;break i}else{f[r>>2]=0;L=20;break}}else L=20}while(0);if((L|0)==20){L=0;if(o){l=0;break}else l=0}o=t[C>>0]|0;o=(o&1)==0?(o&255)>>>1:f[d>>2]|0;if((f[g>>2]|0)==(e+o|0)){_=0;Ae(8,C|0,o<<1|0,0);h=_;_=0;if(h&1){L=30;break}if(!(t[C>>0]&1))e=10;else e=(f[C>>2]&-2)+-1|0;_=0;Ae(8,C|0,e|0,0);h=_;_=0;if(h&1){L=30;break}e=(t[C>>0]&1)==0?k:f[b>>2]|0;f[g>>2]=e+o}u=n+12|0;o=f[u>>2]|0;h=n+16|0;if((o|0)==(f[h>>2]|0)){_=0;o=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;x=_;_=0;if(x&1){L=30;break}}else o=f[o>>2]|0;if(ak(o,16,e,g,m,0,R,v,p,w)|0)break;l=f[u>>2]|0;if((l|0)==(f[h>>2]|0)){_=0;de(f[(f[n>>2]|0)+40>>2]|0,n|0)|0;x=_;_=0;if(x&1){L=30;break}else{l=n;continue}}else{f[u>>2]=l+4;l=n;continue}}if((L|0)==30){e=ze()|0;break}_=0;Ae(8,C|0,(f[g>>2]|0)-e|0,0);x=_;_=0;if((!(x&1)?(M=t[C>>0]|0,E=f[b>>2]|0,_=0,A=Me(3)|0,x=_,_=0,!(x&1)):0)?(_=0,f[y>>2]=s,S=Ee(16,((M&1)==0?k:E)|0,A|0,58882,y|0)|0,x=_,_=0,!(x&1)):0){if((S|0)!=1)f[a>>2]=4;if(n){e=f[n+12>>2]|0;if((e|0)==(f[n+16>>2]|0)){_=0;e=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;x=_;_=0;if(x&1){L=31;break}}else e=f[e>>2]|0;if((e|0)==-1){f[i>>2]=0;n=1}else n=0}else n=1;do{if(l){e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0)){_=0;e=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;x=_;_=0;if(x&1){L=31;break e}}else e=f[e>>2]|0;if((e|0)!=-1)if(n)break;else{L=59;break}else{f[r>>2]=0;L=57;break}}else L=57}while(0);if((L|0)==57?n:0)L=59;if((L|0)==59)f[a>>2]=f[a>>2]|2;x=f[i>>2]|0;Oh(C);Oh(R);c=T;return x|0}else L=31}else L=31}while(0);if((L|0)==31)e=ze()|0;Oh(C);break}e=ze()|0;bh(n)|0}}while(0);Oh(R);$e(e|0);return 0}function ak(e,i,r,n,a,s,l,o,u,c){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;var h=0,d=0,b=0,k=0;b=f[n>>2]|0;k=(b|0)==(r|0);do{if(k){h=(f[c+96>>2]|0)==(e|0);if(!h?(f[c+100>>2]|0)!=(e|0):0){d=5;break}f[n>>2]=r+1;t[r>>0]=h?43:45;f[a>>2]=0;h=0}else d=5}while(0);e:do{if((d|0)==5){d=t[l>>0]|0;if((e|0)==(s|0)?(((d&1)==0?(d&255)>>>1:f[l+4>>2]|0)|0)!=0:0){h=f[u>>2]|0;if((h-o|0)>=160){h=0;break}i=f[a>>2]|0;f[u>>2]=h+4;f[h>>2]=i;f[a>>2]=0;h=0;break}l=c+104|0;h=c;while(1){if((f[h>>2]|0)==(e|0))break;h=h+4|0;if((h|0)==(l|0)){h=l;break}}h=h-c|0;l=h>>2;if((h|0)>92)h=-1;else{switch(i|0){case 10:case 8:{if((l|0)>=(i|0)){h=-1;break e}break}case 16:{if((h|0)>=88){if(k){h=-1;break e}if((b-r|0)>=3){h=-1;break e}if((t[b+-1>>0]|0)!=48){h=-1;break e}f[a>>2]=0;h=t[57498+l>>0]|0;f[n>>2]=b+1;t[b>>0]=h;h=0;break e}break}default:{}}h=t[57498+l>>0]|0;f[n>>2]=b+1;t[b>>0]=h;f[a>>2]=(f[a>>2]|0)+1;h=0}}}while(0);return h|0}function sk(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;o=u;i=sd(i)|0;f[o>>2]=i;_=0;a=pe(37,o|0,44220)|0;h=_;_=0;if((((!(h&1)?(_=0,Ee(f[(f[a>>2]|0)+32>>2]|0,a|0,57498,57524,r|0)|0,h=_,_=0,!(h&1)):0)?(_=0,l=pe(37,o|0,44360)|0,h=_,_=0,!(h&1)):0)?(_=0,s=de(f[(f[l>>2]|0)+16>>2]|0,l|0)|0,h=_,_=0,!(h&1)):0)?(t[n>>0]=s,_=0,ce(f[(f[l>>2]|0)+20>>2]|0,e|0,l|0),h=_,_=0,!(h&1)):0){bh(i)|0;c=u;return}h=ze()|0;bh(i)|0;$e(h|0)}function lk(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;d=c;c=c+16|0;h=d;i=sd(i)|0;f[h>>2]=i;_=0;s=pe(37,h|0,44220)|0;b=_;_=0;if(((((!(b&1)?(_=0,Ee(f[(f[s>>2]|0)+32>>2]|0,s|0,57498,57530,r|0)|0,b=_,_=0,!(b&1)):0)?(_=0,u=pe(37,h|0,44360)|0,b=_,_=0,!(b&1)):0)?(_=0,l=de(f[(f[u>>2]|0)+12>>2]|0,u|0)|0,b=_,_=0,!(b&1)):0)?(t[n>>0]=l,_=0,o=de(f[(f[u>>2]|0)+16>>2]|0,u|0)|0,b=_,_=0,!(b&1)):0)?(t[a>>0]=o,_=0,ce(f[(f[u>>2]|0)+20>>2]|0,e|0,u|0),b=_,_=0,!(b&1)):0){bh(i)|0;c=d;return}b=ze()|0;bh(i)|0;$e(b|0)}function ok(e,i,r,n,s,l,o,u,c,h,d,b){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;h=h|0;d=d|0;b=b|0;var k=0,w=0;e:do{if(e<<24>>24==l<<24>>24)if(t[i>>0]|0){t[i>>0]=0;r=f[s>>2]|0;f[s>>2]=r+1;t[r>>0]=46;r=t[u>>0]|0;if((((r&1)==0?(r&255)>>>1:f[u+4>>2]|0)|0)!=0?(k=f[h>>2]|0,(k-c|0)<160):0){c=f[d>>2]|0;f[h>>2]=k+4;f[k>>2]=c;k=0}else k=0}else k=-1;else{if(e<<24>>24==o<<24>>24?(o=t[u>>0]|0,(((o&1)==0?(o&255)>>>1:f[u+4>>2]|0)|0)!=0):0){if(!(t[i>>0]|0)){k=-1;break}k=f[h>>2]|0;if((k-c|0)>=160){k=0;break}c=f[d>>2]|0;f[h>>2]=k+4;f[k>>2]=c;f[d>>2]=0;k=0;break}l=b+32|0;k=b;while(1){if((t[k>>0]|0)==e<<24>>24)break;k=k+1|0;if((k|0)==(l|0)){k=l;break}}l=k-b|0;if((l|0)>31)k=-1;else{o=t[57498+l>>0]|0;switch(l|0){case 24:case 25:{k=f[s>>2]|0;if((k|0)!=(n|0)?(a[k+-1>>0]&95|0)!=(a[r>>0]&127|0):0){k=-1;break e}f[s>>2]=k+1;t[k>>0]=o;k=0;break e}case 23:case 22:{t[r>>0]=80;k=f[s>>2]|0;f[s>>2]=k+1;t[k>>0]=o;k=0;break e}default:{k=o&95;if((((k|0)==(t[r>>0]|0)?(t[r>>0]=k|128,(t[i>>0]|0)!=0):0)?(t[i>>0]=0,r=t[u>>0]|0,(((r&1)==0?(r&255)>>>1:f[u+4>>2]|0)|0)!=0):0)?(w=f[h>>2]|0,(w-c|0)<160):0){c=f[d>>2]|0;f[h>>2]=w+4;f[w>>2]=c}h=f[s>>2]|0;f[s>>2]=h+1;t[h>>0]=o;if((l|0)>21){k=0;break e}f[d>>2]=(f[d>>2]|0)+1;k=0;break e}}}}}while(0);return k|0}function uk(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0;o=c;c=c+16|0;l=o;i=sd(i)|0;f[l>>2]=i;_=0;n=pe(37,l|0,44212)|0;u=_;_=0;if((((!(u&1)?(_=0,Ee(f[(f[n>>2]|0)+48>>2]|0,n|0,57498,57524,r|0)|0,u=_,_=0,!(u&1)):0)?(_=0,s=pe(37,l|0,44368)|0,u=_,_=0,!(u&1)):0)?(_=0,a=de(f[(f[s>>2]|0)+16>>2]|0,s|0)|0,u=_,_=0,!(u&1)):0)?(f[t>>2]=a,_=0,ce(f[(f[s>>2]|0)+20>>2]|0,e|0,s|0),u=_,_=0,!(u&1)):0){bh(i)|0;c=o;return}u=ze()|0;bh(i)|0;$e(u|0)}function ck(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0;h=c;c=c+16|0;u=h;i=sd(i)|0;f[u>>2]=i;_=0;a=pe(37,u|0,44212)|0;d=_;_=0;if(((((!(d&1)?(_=0,Ee(f[(f[a>>2]|0)+48>>2]|0,a|0,57498,57530,r|0)|0,d=_,_=0,!(d&1)):0)?(_=0,o=pe(37,u|0,44368)|0,d=_,_=0,!(d&1)):0)?(_=0,s=de(f[(f[o>>2]|0)+12>>2]|0,o|0)|0,d=_,_=0,!(d&1)):0)?(f[t>>2]=s,_=0,l=de(f[(f[o>>2]|0)+16>>2]|0,o|0)|0,d=_,_=0,!(d&1)):0)?(f[n>>2]=l,_=0,ce(f[(f[o>>2]|0)+20>>2]|0,e|0,o|0),d=_,_=0,!(d&1)):0){bh(i)|0;c=h;return}d=ze()|0;bh(i)|0;$e(d|0)}function hk(e,i,r,n,s,l,o,u,c,h,d,b){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;h=h|0;d=d|0;b=b|0;var k=0,w=0;e:do{if((e|0)==(l|0))if(t[i>>0]|0){t[i>>0]=0;r=f[s>>2]|0;f[s>>2]=r+1;t[r>>0]=46;r=t[u>>0]|0;if((((r&1)==0?(r&255)>>>1:f[u+4>>2]|0)|0)!=0?(k=f[h>>2]|0,(k-c|0)<160):0){c=f[d>>2]|0;f[h>>2]=k+4;f[k>>2]=c;k=0}else k=0}else k=-1;else{if((e|0)==(o|0)?(o=t[u>>0]|0,(((o&1)==0?(o&255)>>>1:f[u+4>>2]|0)|0)!=0):0){if(!(t[i>>0]|0)){k=-1;break}k=f[h>>2]|0;if((k-c|0)>=160){k=0;break}c=f[d>>2]|0;f[h>>2]=k+4;f[k>>2]=c;f[d>>2]=0;k=0;break}l=b+128|0;k=b;while(1){if((f[k>>2]|0)==(e|0))break;k=k+4|0;if((k|0)==(l|0)){k=l;break}}l=k-b|0;k=l>>2;if((l|0)<=124){o=t[57498+k>>0]|0;switch(k|0){case 24:case 25:{k=f[s>>2]|0;if((k|0)!=(n|0)?(a[k+-1>>0]&95|0)!=(a[r>>0]&127|0):0){k=-1;break e}f[s>>2]=k+1;t[k>>0]=o;k=0;break e}case 23:case 22:{t[r>>0]=80;break}default:{k=o&95;if((((k|0)==(t[r>>0]|0)?(t[r>>0]=k|128,(t[i>>0]|0)!=0):0)?(t[i>>0]=0,r=t[u>>0]|0,(((r&1)==0?(r&255)>>>1:f[u+4>>2]|0)|0)!=0):0)?(w=f[h>>2]|0,(w-c|0)<160):0){c=f[d>>2]|0;f[h>>2]=w+4;f[w>>2]=c}}}h=f[s>>2]|0;f[s>>2]=h+1;t[h>>0]=o;if((l|0)>84)k=0;else{f[d>>2]=(f[d>>2]|0)+1;k=0}}else k=-1}}while(0);return k|0}function dk(e){e=e|0;return}function bk(e){e=e|0;Ip(e);return}function kk(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+32|0;s=d+20|0;l=d+16|0;o=d+12|0;h=d;e:do{if(!(f[r+4>>2]&1)){h=f[(f[e>>2]|0)+24>>2]|0;f[l>>2]=f[i>>2];f[s>>2]=f[l>>2];s=wM[h&31](e,s,r,n,a&1)|0}else{s=sd(r)|0;f[o>>2]=s;_=0;l=pe(37,o|0,44360)|0;u=_;_=0;i:do{if(u&1){d=ze()|0;bh(s)|0;s=d}else{bh(s)|0;s=f[l>>2]|0;if(a)aM[f[s+24>>2]&127](h,l);else aM[f[s+28>>2]&127](h,l);e=t[h>>0]|0;u=(e&1)==0;s=h+1|0;a=h+8|0;o=u?s:h+1|0;s=u?s:f[h+8>>2]|0;u=h+4|0;r=(e&1)==0;r:do{if((s|0)!=((r?o:f[a>>2]|0)+(r?(e&255)>>>1:f[u>>2]|0)|0)){t:while(1){l=t[s>>0]|0;n=f[i>>2]|0;do{if(n){r=n+24|0;e=f[r>>2]|0;if((e|0)!=(f[n+28>>2]|0)){f[r>>2]=e+1;t[e>>0]=l;break}_=0;l=pe(f[(f[n>>2]|0)+52>>2]|0,n|0,l&255|0)|0;e=_;_=0;if(e&1)break t;if((l|0)==-1)f[i>>2]=0}}while(0);s=s+1|0;e=t[h>>0]|0;r=(e&1)==0;if((s|0)==((r?o:f[a>>2]|0)+(r?(e&255)>>>1:f[u>>2]|0)|0))break r}s=ze()|0;Oh(h);break i}}while(0);s=f[i>>2]|0;Oh(h);break e}}while(0);$e(s|0)}}while(0);c=d;return s|0}function wk(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;d=c;c=c+64|0;s=d;k=d+56|0;w=d+44|0;o=d+20|0;h=d+16|0;u=d+12|0;b=d+8|0;l=d+4|0;t[k>>0]=t[58887]|0;t[k+1>>0]=t[58888]|0;t[k+2>>0]=t[58889]|0;t[k+3>>0]=t[58890]|0;t[k+4>>0]=t[58891]|0;t[k+5>>0]=t[58892]|0;_k(k+1|0,58893,1,f[r+4>>2]|0);e=Vb()|0;f[s>>2]=a;a=w+(n_(w,12,e,k,s)|0)|0;k=mk(w,a,r)|0;e=sd(r)|0;f[b>>2]=e;_=0;me(1,w|0,k|0,a|0,o|0,h|0,u|0,b|0);a=_;_=0;if(a&1){w=ze()|0;bh(e)|0;$e(w|0)}else{bh(e)|0;f[l>>2]=f[i>>2];k=f[h>>2]|0;w=f[u>>2]|0;f[s>>2]=f[l>>2];w=Dr(s,o,k,w,r,n)|0;c=d;return w|0}return 0}function _k(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var f=0,a=0;if(n&2048){t[e>>0]=43;e=e+1|0}if(n&512){t[e>>0]=35;e=e+1|0}f=t[i>>0]|0;if(f<<24>>24){a=i;while(1){a=a+1|0;i=e+1|0;t[e>>0]=f;f=t[a>>0]|0;if(!(f<<24>>24)){e=i;break}else e=i}}e:do{switch(n&74|0){case 64:{t[e>>0]=111;break}case 8:if(!(n&16384)){t[e>>0]=120;break e}else{t[e>>0]=88;break e}default:if(r){t[e>>0]=100;break e}else{t[e>>0]=117;break e}}}while(0);return}function mk(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;e:do{switch(f[r+4>>2]&176|0){case 16:{r=t[e>>0]|0;switch(r<<24>>24){case 43:case 45:{e=e+1|0;break e}default:{}}if((i-e|0)>1&r<<24>>24==48){switch(t[e+1>>0]|0){case 88:case 120:break;default:{n=7;break e}}e=e+2|0}else n=7;break}case 32:{e=i;break}default:n=7}}while(0);return e|0}function vk(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0;g=c;c=c+16|0;y=g;v=Du(l,44220)|0;h=Du(l,44360)|0;aM[f[(f[h>>2]|0)+20>>2]&127](y,h);w=t[y>>0]|0;m=y+4|0;e:do{if(!(((w&1)==0?(w&255)>>>1:f[m>>2]|0)|0)){_=0;Ee(f[(f[v>>2]|0)+32>>2]|0,v|0,e|0,r|0,n|0)|0;p=_;_=0;if(p&1)p=5;else{l=n+(r-e)|0;f[s>>2]=l;p=29}}else{f[s>>2]=n;l=t[e>>0]|0;switch(l<<24>>24){case 43:case 45:{_=0;l=pe(f[(f[v>>2]|0)+28>>2]|0,v|0,l|0)|0;w=_;_=0;if(w&1){p=5;break e}u=f[s>>2]|0;f[s>>2]=u+1;t[u>>0]=l;u=e+1|0;break}default:u=e}i:do{if((r-u|0)>1?(t[u>>0]|0)==48:0){l=u+1|0;switch(t[l>>0]|0){case 88:case 120:break;default:break i}_=0;o=pe(f[(f[v>>2]|0)+28>>2]|0,v|0,48)|0;w=_;_=0;if(w&1){p=5;break e}w=f[s>>2]|0;f[s>>2]=w+1;t[w>>0]=o;_=0;l=pe(f[(f[v>>2]|0)+28>>2]|0,v|0,t[l>>0]|0)|0;w=_;_=0;if(w&1){p=5;break e}w=f[s>>2]|0;f[s>>2]=w+1;t[w>>0]=l;u=u+2|0}}while(0);if((u|0)!=(r|0)?(d=r+-1|0,u>>>0<d>>>0):0){o=u;l=d;do{w=t[o>>0]|0;t[o>>0]=t[l>>0]|0;t[l>>0]=w;o=o+1|0;l=l+-1|0}while(o>>>0<l>>>0)}_=0;d=de(f[(f[h>>2]|0)+16>>2]|0,h|0)|0;w=_;_=0;if(!(w&1)){b=y+8|0;k=y+1|0;i:do{if(u>>>0<r>>>0){l=0;o=0;w=u;while(1){h=t[((t[y>>0]&1)==0?k:f[b>>2]|0)+o>>0]|0;if(h<<24>>24!=0&(l|0)==(h<<24>>24|0)){l=f[s>>2]|0;f[s>>2]=l+1;t[l>>0]=d;l=t[y>>0]|0;h=0;o=(o>>>0<(((l&1)==0?(l&255)>>>1:f[m>>2]|0)+-1|0)>>>0&1)+o|0}else h=l;_=0;l=pe(f[(f[v>>2]|0)+28>>2]|0,v|0,t[w>>0]|0)|0;M=_;_=0;if(M&1)break;M=f[s>>2]|0;f[s>>2]=M+1;t[M>>0]=l;w=w+1|0;if(w>>>0>=r>>>0)break i;else l=h+1|0}l=ze()|0;break e}}while(0);o=e;l=n+(u-o)|0;e=f[s>>2]|0;if((l|0)==(e|0)){e=o;p=29}else{e=e+-1|0;if(l>>>0<e>>>0)do{M=t[l>>0]|0;t[l>>0]=t[e>>0]|0;t[e>>0]=M;l=l+1|0;e=e+-1|0}while(l>>>0<e>>>0);e=o;l=f[s>>2]|0;p=29}}else p=5}}while(0);if((p|0)==5)l=ze()|0;else if((p|0)==29){f[a>>2]=(i|0)==(r|0)?l:n+(i-e)|0;Oh(y);c=g;return}Oh(y);$e(l|0)}function pk(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0;d=c;c=c+96|0;s=d+8|0;e=d;k=d+74|0;o=d+32|0;h=d+28|0;u=d+24|0;b=d+20|0;l=d+16|0;w=e;f[w>>2]=37;f[w+4>>2]=0;_k(e+1|0,58895,1,f[r+4>>2]|0);w=Vb()|0;m=s;f[m>>2]=n;f[m+4>>2]=a;a=k+(n_(k,22,w,e,s)|0)|0;n=mk(k,a,r)|0;e=sd(r)|0;f[b>>2]=e;_=0;me(1,k|0,n|0,a|0,o|0,h|0,u|0,b|0);a=_;_=0;if(a&1){m=ze()|0;bh(e)|0;$e(m|0)}else{bh(e)|0;f[l>>2]=f[i>>2];w=f[h>>2]|0;m=f[u>>2]|0;f[s>>2]=f[l>>2];m=Dr(s,o,w,m,r,t)|0;c=d;return m|0}return 0}function gk(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;d=c;c=c+64|0;s=d;k=d+56|0;w=d+44|0;o=d+20|0;h=d+16|0;u=d+12|0;b=d+8|0;l=d+4|0;t[k>>0]=t[58887]|0;t[k+1>>0]=t[58888]|0;t[k+2>>0]=t[58889]|0;t[k+3>>0]=t[58890]|0;t[k+4>>0]=t[58891]|0;t[k+5>>0]=t[58892]|0;_k(k+1|0,58893,0,f[r+4>>2]|0);e=Vb()|0;f[s>>2]=a;a=w+(n_(w,12,e,k,s)|0)|0;k=mk(w,a,r)|0;e=sd(r)|0;f[b>>2]=e;_=0;me(1,w|0,k|0,a|0,o|0,h|0,u|0,b|0);a=_;_=0;if(a&1){w=ze()|0;bh(e)|0;$e(w|0)}else{bh(e)|0;f[l>>2]=f[i>>2];k=f[h>>2]|0;w=f[u>>2]|0;f[s>>2]=f[l>>2];w=Dr(s,o,k,w,r,n)|0;c=d;return w|0}return 0}function yk(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0;d=c;c=c+112|0;s=d+8|0;e=d;k=d+75|0;o=d+32|0;h=d+28|0;u=d+24|0;b=d+20|0;l=d+16|0;w=e;f[w>>2]=37;f[w+4>>2]=0;_k(e+1|0,58895,0,f[r+4>>2]|0);w=Vb()|0;m=s;f[m>>2]=n;f[m+4>>2]=a;a=k+(n_(k,23,w,e,s)|0)|0;n=mk(k,a,r)|0;e=sd(r)|0;f[b>>2]=e;_=0;me(1,k|0,n|0,a|0,o|0,h|0,u|0,b|0);a=_;_=0;if(a&1){m=ze()|0;bh(e)|0;$e(m|0)}else{bh(e)|0;f[l>>2]=f[i>>2];w=f[h>>2]|0;m=f[u>>2]|0;f[s>>2]=f[l>>2];m=Dr(s,o,w,m,r,t)|0;c=d;return m|0}return 0}function Mk(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=+n;var a=0,s=0,l=0,o=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0;A=c;c=c+176|0;p=A+84|0;k=A+48|0;b=A+32|0;o=A+24|0;a=A+8|0;d=A;m=A+88|0;v=A+80|0;l=A+118|0;E=A+76|0;M=A+72|0;g=A+68|0;y=A+64|0;h=d;f[h>>2]=37;f[h+4>>2]=0;h=Ek(d+1|0,58898,f[r+4>>2]|0)|0;f[v>>2]=m;e=Vb()|0;if(h){f[a>>2]=f[r+8>>2];u[a+8>>3]=n;a=n_(m,30,e,d,a)|0}else{u[o>>3]=n;a=n_(m,30,e,d,o)|0}e:do{if((a|0)>29){_=0;e=Me(3)|0;a=_;_=0;a=a&1;if(h){if(!a?(_=0,f[b>>2]=f[r+8>>2],u[b+8>>3]=n,s=Ee(17,v|0,e|0,d|0,b|0)|0,w=_,_=0,!(w&1)):0)S=12}else if(!a?(_=0,f[k>>2]=f[r+8>>2],u[k+8>>3]=n,w=Ee(17,v|0,e|0,d|0,k|0)|0,k=_,_=0,!(k&1)):0){s=w;S=12}do{if((S|0)==12){e=f[v>>2]|0;if(!e){_=0;Se(6);w=_;_=0;if(w&1)break;a=f[v>>2]|0}else a=e;e=a;d=a;S=16;break e}}while(0);e=ze()|0}else{e=f[v>>2]|0;d=0;s=a;S=16}}while(0);if((S|0)==16){o=e+s|0;h=mk(e,o,r)|0;do{if((e|0)==(m|0)){e=m;a=0;S=22}else{s=Lc(s<<1)|0;if(!s){_=0;Se(6);S=_;_=0;if(S&1){a=0;S=20;break}e=f[v>>2]|0}a=s;l=s;S=22}}while(0);do{if((S|0)==22){_=0;s=de(68,r|0)|0;v=_;_=0;if(!(v&1)){f[g>>2]=s;_=0;me(2,e|0,h|0,o|0,l|0,E|0,M|0,g|0);g=_;_=0;if(g&1){e=ze()|0;bh(s)|0;break}bh(s)|0;f[y>>2]=f[i>>2];S=f[E>>2]|0;e=f[M>>2]|0;_=0;f[p>>2]=f[y>>2];e=he(39,p|0,l|0,S|0,e|0,r|0,t|0)|0;S=_;_=0;if(!(S&1)){f[i>>2]=e;if(a)xc(a);if(d)xc(d);c=A;return e|0}else S=20}else S=20}}while(0);if((S|0)==20)e=ze()|0;if(a)xc(a);if(d)xc(d)}$e(e|0);return 0}function Ek(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0,a=0,s=0,l=0;if(r&2048){t[e>>0]=43;e=e+1|0}if(r&1024){t[e>>0]=35;e=e+1|0}s=r&260;f=r>>>14;l=(s|0)==260;if(l)a=0;else{t[e>>0]=46;t[e+1>>0]=42;e=e+2|0;a=1}r=t[i>>0]|0;if(r<<24>>24){n=e;while(1){i=i+1|0;e=n+1|0;t[n>>0]=r;r=t[i>>0]|0;if(!(r<<24>>24))break;else n=e}}e:do{switch(s|0){case 4:if(!(f&1)){t[e>>0]=102;break e}else{t[e>>0]=70;break e}case 256:if(!(f&1)){t[e>>0]=101;break e}else{t[e>>0]=69;break e}default:{r=(f&1|0)!=0;if(l)if(r){t[e>>0]=65;break e}else{t[e>>0]=97;break e}else if(r){t[e>>0]=71;break e}else{t[e>>0]=103;break e}}}}while(0);return a|0}function Ak(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0;A=c;c=c+16|0;S=A;E=Du(l,44220)|0;y=Du(l,44360)|0;aM[f[(f[y>>2]|0)+20>>2]&127](S,y);f[s>>2]=n;l=t[e>>0]|0;switch(l<<24>>24){case 43:case 45:{_=0;l=pe(f[(f[E>>2]|0)+28>>2]|0,E|0,l|0)|0;M=_;_=0;if(M&1)g=8;else{d=f[s>>2]|0;f[s>>2]=d+1;t[d>>0]=l;d=e+1|0;g=10}break}default:{d=e;g=10}}e:do{if((g|0)==10){M=r;i:do{if((M-d|0)>1?(t[d>>0]|0)==48:0){u=d+1|0;switch(t[u>>0]|0){case 88:case 120:break;default:{g=11;break i}}_=0;l=pe(f[(f[E>>2]|0)+28>>2]|0,E|0,48)|0;p=_;_=0;if(p&1){g=8;break e}p=f[s>>2]|0;f[s>>2]=p+1;t[p>>0]=l;d=d+2|0;_=0;l=pe(f[(f[E>>2]|0)+28>>2]|0,E|0,t[u>>0]|0)|0;p=_;_=0;if(p&1){g=8;break e}p=f[s>>2]|0;f[s>>2]=p+1;t[p>>0]=l;if(d>>>0<r>>>0){l=d;while(1){u=t[l>>0]|0;_=0;h=Me(3)|0;p=_;_=0;if(p&1)break;_=0;u=pe(39,u<<24>>24|0,h|0)|0;p=_;_=0;if(p&1)break;if(!u){p=d;break i}l=l+1|0;if(l>>>0>=r>>>0){p=d;break i}}l=ze()|0;break e}else{p=d;l=d}}else g=11}while(0);i:do{if((g|0)==11)if(d>>>0<r>>>0){l=d;while(1){u=t[l>>0]|0;_=0;h=Me(3)|0;p=_;_=0;if(p&1)break;_=0;u=pe(40,u<<24>>24|0,h|0)|0;p=_;_=0;if(p&1)break;if(!u){p=d;break i}l=l+1|0;if(l>>>0>=r>>>0){p=d;break i}}l=ze()|0;break e}else{p=d;l=d}}while(0);m=t[S>>0]|0;v=S+4|0;if(((m&1)==0?(m&255)>>>1:f[v>>2]|0)|0){if((p|0)!=(l|0)?(b=l+-1|0,p>>>0<b>>>0):0){h=p;u=b;do{m=t[h>>0]|0;t[h>>0]=t[u>>0]|0;t[u>>0]=m;h=h+1|0;u=u+-1|0}while(h>>>0<u>>>0)}_=0;b=de(f[(f[y>>2]|0)+16>>2]|0,y|0)|0;m=_;_=0;if(m&1){g=8;break}k=S+8|0;w=S+1|0;i:do{if(p>>>0<l>>>0){u=0;h=0;m=p;while(1){d=t[((t[S>>0]&1)==0?w:f[k>>2]|0)+h>>0]|0;if(d<<24>>24>0&(u|0)==(d<<24>>24|0)){u=f[s>>2]|0;f[s>>2]=u+1;t[u>>0]=b;u=t[S>>0]|0;d=0;h=(h>>>0<(((u&1)==0?(u&255)>>>1:f[v>>2]|0)+-1|0)>>>0&1)+h|0}else d=u;_=0;u=pe(f[(f[E>>2]|0)+28>>2]|0,E|0,t[m>>0]|0)|0;T=_;_=0;if(T&1)break;T=f[s>>2]|0;f[s>>2]=T+1;t[T>>0]=u;m=m+1|0;if(m>>>0>=l>>>0)break i;else u=d+1|0}l=ze()|0;break e}}while(0);u=n+(p-e)|0;h=f[s>>2]|0;if((u|0)!=(h|0)?(o=h+-1|0,u>>>0<o>>>0):0){do{T=t[u>>0]|0;t[u>>0]=t[o>>0]|0;t[o>>0]=T;u=u+1|0;o=o+-1|0}while(u>>>0<o>>>0);u=E}else u=E}else{_=0;Ee(f[(f[E>>2]|0)+32>>2]|0,E|0,p|0,l|0,f[s>>2]|0)|0;T=_;_=0;if(T&1){g=8;break}f[s>>2]=(f[s>>2]|0)+(l-p);u=E}i:do{if(l>>>0<r>>>0){while(1){o=t[l>>0]|0;if(o<<24>>24==46)break;_=0;o=pe(f[(f[u>>2]|0)+28>>2]|0,E|0,o|0)|0;T=_;_=0;if(T&1){g=4;break}T=f[s>>2]|0;f[s>>2]=T+1;t[T>>0]=o;l=l+1|0;if(l>>>0>=r>>>0)break i}if((g|0)==4){l=ze()|0;break e}_=0;o=de(f[(f[y>>2]|0)+12>>2]|0,y|0)|0;T=_;_=0;if(T&1){g=8;break e}T=f[s>>2]|0;f[s>>2]=T+1;t[T>>0]=o;l=l+1|0}}while(0);_=0;Ee(f[(f[E>>2]|0)+32>>2]|0,E|0,l|0,r|0,f[s>>2]|0)|0;T=_;_=0;if(T&1)g=8;else{T=(f[s>>2]|0)+(M-l)|0;f[s>>2]=T;f[a>>2]=(i|0)==(r|0)?T:n+(i-e)|0;Oh(S);c=A;return}}}while(0);if((g|0)==8)l=ze()|0;Oh(S);$e(l|0)}function Sk(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=+n;var a=0,s=0,l=0,o=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0;A=c;c=c+176|0;p=A+76|0;k=A+48|0;b=A+32|0;o=A+24|0;a=A+8|0;d=A;m=A+80|0;v=A+72|0;l=A+110|0;E=A+68|0;M=A+64|0;g=A+60|0;y=A+56|0;h=d;f[h>>2]=37;f[h+4>>2]=0;h=Ek(d+1|0,58899,f[r+4>>2]|0)|0;f[v>>2]=m;e=Vb()|0;if(h){f[a>>2]=f[r+8>>2];u[a+8>>3]=n;a=n_(m,30,e,d,a)|0}else{u[o>>3]=n;a=n_(m,30,e,d,o)|0}e:do{if((a|0)>29){_=0;e=Me(3)|0;a=_;_=0;a=a&1;if(h){if(!a?(_=0,f[b>>2]=f[r+8>>2],u[b+8>>3]=n,s=Ee(17,v|0,e|0,d|0,b|0)|0,w=_,_=0,!(w&1)):0)S=12}else if(!a?(_=0,u[k>>3]=n,w=Ee(17,v|0,e|0,d|0,k|0)|0,k=_,_=0,!(k&1)):0){s=w;S=12}do{if((S|0)==12){e=f[v>>2]|0;if(!e){_=0;Se(6);w=_;_=0;if(w&1)break;a=f[v>>2]|0}else a=e;e=a;d=a;S=16;break e}}while(0);e=ze()|0}else{e=f[v>>2]|0;d=0;s=a;S=16}}while(0);if((S|0)==16){o=e+s|0;h=mk(e,o,r)|0;do{if((e|0)==(m|0)){e=m;a=0;S=22}else{s=Lc(s<<1)|0;if(!s){_=0;Se(6);S=_;_=0;if(S&1){a=0;S=20;break}e=f[v>>2]|0}a=s;l=s;S=22}}while(0);do{if((S|0)==22){_=0;s=de(68,r|0)|0;v=_;_=0;if(!(v&1)){f[g>>2]=s;_=0;me(2,e|0,h|0,o|0,l|0,E|0,M|0,g|0);g=_;_=0;if(g&1){e=ze()|0;bh(s)|0;break}bh(s)|0;f[y>>2]=f[i>>2];S=f[E>>2]|0;e=f[M>>2]|0;_=0;f[p>>2]=f[y>>2];e=he(39,p|0,l|0,S|0,e|0,r|0,t|0)|0;S=_;_=0;if(!(S&1)){f[i>>2]=e;if(a)xc(a);if(d)xc(d);c=A;return e|0}else S=20}else S=20}}while(0);if((S|0)==20)e=ze()|0;if(a)xc(a);if(d)xc(d)}$e(e|0);return 0}function Tk(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;k=c;c=c+80|0;u=k;e=k+70|0;d=k+12|0;b=k+32|0;o=k+8|0;h=k+4|0;t[e>>0]=t[58901]|0;t[e+1>>0]=t[58902]|0;t[e+2>>0]=t[58903]|0;t[e+3>>0]=t[58904]|0;t[e+4>>0]=t[58905]|0;t[e+5>>0]=t[58906]|0;s=Vb()|0;f[u>>2]=a;e=n_(d,20,s,e,u)|0;a=d+e|0;s=mk(d,a,r)|0;l=sd(r)|0;f[o>>2]=l;_=0;o=pe(37,o|0,44220)|0;w=_;_=0;if(w&1){w=ze()|0;bh(l)|0;$e(w|0)}else{bh(l)|0;vM[f[(f[o>>2]|0)+32>>2]&31](o,d,a,b)|0;w=b+e|0;f[h>>2]=f[i>>2];f[u>>2]=f[h>>2];w=Dr(u,b,(s|0)==(a|0)?w:b+(s-d)|0,w,r,n)|0;c=k;return w|0}return 0}function Ck(e){e=e|0;return}function Rk(e){e=e|0;Ip(e);return}function Lk(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;s=h+20|0;l=h+16|0;o=h+12|0;u=h;e:do{if(!(f[r+4>>2]&1)){u=f[(f[e>>2]|0)+24>>2]|0;f[l>>2]=f[i>>2];f[s>>2]=f[l>>2];s=wM[u&31](e,s,r,n,a&1)|0}else{s=sd(r)|0;f[o>>2]=s;_=0;l=pe(37,o|0,44368)|0;o=_;_=0;i:do{if(o&1){h=ze()|0;bh(s)|0;s=h}else{bh(s)|0;s=f[l>>2]|0;if(a)aM[f[s+24>>2]&127](u,l);else aM[f[s+28>>2]&127](u,l);e=t[u>>0]|0;r=(e&1)==0;s=u+4|0;a=u+8|0;o=r?s:u+4|0;s=r?s:f[u+8>>2]|0;r=(e&1)==0;r:do{if((s|0)!=((r?o:f[a>>2]|0)+((r?(e&255)>>>1:f[o>>2]|0)<<2)|0)){while(1){l=f[s>>2]|0;n=f[i>>2]|0;if(n){r=n+24|0;e=f[r>>2]|0;if((e|0)==(f[n+28>>2]|0)){_=0;l=pe(f[(f[n>>2]|0)+52>>2]|0,n|0,l|0)|0;e=_;_=0;if(e&1)break}else{f[r>>2]=e+4;f[e>>2]=l}if((l|0)==-1)f[i>>2]=0}s=s+4|0;e=t[u>>0]|0;r=(e&1)==0;if((s|0)==((r?o:f[a>>2]|0)+((r?(e&255)>>>1:f[o>>2]|0)<<2)|0))break r}s=ze()|0;Gh(u);break i}}while(0);s=f[i>>2]|0;Gh(u);break e}}while(0);$e(s|0)}}while(0);c=h;return s|0}function xk(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;d=c;c=c+128|0;s=d;k=d+116|0;w=d+104|0;o=d+20|0;h=d+16|0;u=d+12|0;b=d+8|0;l=d+4|0;t[k>>0]=t[58887]|0;t[k+1>>0]=t[58888]|0;t[k+2>>0]=t[58889]|0;t[k+3>>0]=t[58890]|0;t[k+4>>0]=t[58891]|0;t[k+5>>0]=t[58892]|0;_k(k+1|0,58893,1,f[r+4>>2]|0);e=Vb()|0;f[s>>2]=a;a=w+(n_(w,12,e,k,s)|0)|0;k=mk(w,a,r)|0;e=sd(r)|0;f[b>>2]=e;_=0;me(3,w|0,k|0,a|0,o|0,h|0,u|0,b|0);a=_;_=0;if(a&1){w=ze()|0;bh(e)|0;$e(w|0)}else{bh(e)|0;f[l>>2]=f[i>>2];k=f[h>>2]|0;w=f[u>>2]|0;f[s>>2]=f[l>>2];w=a_(s,o,k,w,r,n)|0;c=d;return w|0}return 0}function Pk(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0;g=c;c=c+16|0;y=g;v=Du(l,44212)|0;h=Du(l,44368)|0;aM[f[(f[h>>2]|0)+20>>2]&127](y,h);w=t[y>>0]|0;m=y+4|0;e:do{if(!(((w&1)==0?(w&255)>>>1:f[m>>2]|0)|0)){_=0;Ee(f[(f[v>>2]|0)+48>>2]|0,v|0,e|0,r|0,n|0)|0;p=_;_=0;if(p&1)p=5;else{l=n+(r-e<<2)|0;f[s>>2]=l;p=28}}else{f[s>>2]=n;l=t[e>>0]|0;switch(l<<24>>24){case 43:case 45:{_=0;l=pe(f[(f[v>>2]|0)+44>>2]|0,v|0,l|0)|0;w=_;_=0;if(w&1){p=5;break e}u=f[s>>2]|0;f[s>>2]=u+4;f[u>>2]=l;u=e+1|0;break}default:u=e}i:do{if((r-u|0)>1?(t[u>>0]|0)==48:0){l=u+1|0;switch(t[l>>0]|0){case 88:case 120:break;default:{w=u;break i}}_=0;o=pe(f[(f[v>>2]|0)+44>>2]|0,v|0,48)|0;w=_;_=0;if(w&1){p=5;break e}w=f[s>>2]|0;f[s>>2]=w+4;f[w>>2]=o;_=0;l=pe(f[(f[v>>2]|0)+44>>2]|0,v|0,t[l>>0]|0)|0;w=_;_=0;if(w&1){p=5;break e}w=f[s>>2]|0;f[s>>2]=w+4;f[w>>2]=l;w=u+2|0}else w=u}while(0);if((w|0)!=(r|0)?(d=r+-1|0,w>>>0<d>>>0):0){o=w;l=d;do{k=t[o>>0]|0;t[o>>0]=t[l>>0]|0;t[l>>0]=k;o=o+1|0;l=l+-1|0}while(o>>>0<l>>>0)}_=0;h=de(f[(f[h>>2]|0)+16>>2]|0,h|0)|0;k=_;_=0;if(!(k&1)){d=y+8|0;b=y+1|0;i:do{if(w>>>0<r>>>0){l=0;o=0;k=w;while(1){u=t[((t[y>>0]&1)==0?b:f[d>>2]|0)+o>>0]|0;if(u<<24>>24!=0&(l|0)==(u<<24>>24|0)){l=f[s>>2]|0;f[s>>2]=l+4;f[l>>2]=h;l=t[y>>0]|0;u=0;o=(o>>>0<(((l&1)==0?(l&255)>>>1:f[m>>2]|0)+-1|0)>>>0&1)+o|0}else u=l;_=0;l=pe(f[(f[v>>2]|0)+44>>2]|0,v|0,t[k>>0]|0)|0;M=_;_=0;if(M&1)break;M=f[s>>2]|0;f[s>>2]=M+4;f[M>>2]=l;k=k+1|0;if(k>>>0>=r>>>0)break i;else l=u+1|0}l=ze()|0;break e}}while(0);u=e;l=n+(w-u<<2)|0;o=f[s>>2]|0;if((l|0)!=(o|0)){e=o+-4|0;if(l>>>0<e>>>0){do{M=f[l>>2]|0;f[l>>2]=f[e>>2];f[e>>2]=M;l=l+4|0;e=e+-4|0}while(l>>>0<e>>>0);e=u;l=o;p=28}else{e=u;l=o;p=28}}else{e=u;p=28}}else p=5}}while(0);if((p|0)==5)l=ze()|0;else if((p|0)==28){f[a>>2]=(i|0)==(r|0)?l:n+(i-e<<2)|0;Oh(y);c=g;return}Oh(y);$e(l|0)}function Ok(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0;d=c;c=c+224|0;s=d+8|0;e=d;k=d+196|0;o=d+32|0;h=d+28|0;u=d+24|0;b=d+20|0;l=d+16|0;w=e;f[w>>2]=37;f[w+4>>2]=0;_k(e+1|0,58895,1,f[r+4>>2]|0);w=Vb()|0;m=s;f[m>>2]=n;f[m+4>>2]=a;a=k+(n_(k,22,w,e,s)|0)|0;n=mk(k,a,r)|0;e=sd(r)|0;f[b>>2]=e;_=0;me(3,k|0,n|0,a|0,o|0,h|0,u|0,b|0);a=_;_=0;if(a&1){m=ze()|0;bh(e)|0;$e(m|0)}else{bh(e)|0;f[l>>2]=f[i>>2];w=f[h>>2]|0;m=f[u>>2]|0;f[s>>2]=f[l>>2];m=a_(s,o,w,m,r,t)|0;c=d;return m|0}return 0}function Bk(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0;p=c;c=c+16|0;m=p;k=p+8|0;e:do{if((r|0)==(n|0))u=n;else{u=r;while(1){if(!(f[u>>2]|0))break e;u=u+4|0;if((u|0)==(n|0)){u=n;break}}}}while(0);f[o>>2]=s;f[a>>2]=r;d=l;w=e+8|0;e:do{if(!((s|0)==(l|0)|(r|0)==(n|0))){e=s;h=u;i:while(1){y=i;s=f[y+4>>2]|0;u=m;f[u>>2]=f[y>>2];f[u+4>>2]=s;u=Wg(f[w>>2]|0)|0;_=0;s=ge(21,e|0,a|0,h-r>>2|0,d-e|0,i|0)|0;y=_;_=0;if(y&1){g=9;break}if((u|0)!=0?(_=0,de(75,u|0)|0,y=_,_=0,y&1):0){g=8;break}switch(s|0){case 0:{b=1;break e}case-1:{u=e;g=14;break i}default:{}}u=(f[o>>2]|0)+s|0;f[o>>2]=u;if((u|0)==(l|0)){g=27;break}if((h|0)==(n|0)){r=f[a>>2]|0;e=u;u=n}else{u=Wg(f[w>>2]|0)|0;_=0;r=ke(34,k|0,0,i|0)|0;y=_;_=0;if(y&1){g=35;break}if((u|0)!=0?(_=0,de(75,u|0)|0,y=_,_=0,y&1):0){g=34;break}if((r|0)==-1){b=2;break e}if(r>>>0>(d-(f[o>>2]|0)|0)>>>0){b=1;break e}if(r){u=k;while(1){h=t[u>>0]|0;y=f[o>>2]|0;f[o>>2]=y+1;t[y>>0]=h;r=r+-1|0;if(!r)break;else u=u+1|0}}r=(f[a>>2]|0)+4|0;f[a>>2]=r;r:do{if((r|0)==(n|0))u=n;else{u=r;while(1){if(!(f[u>>2]|0))break r;u=u+4|0;if((u|0)==(n|0)){u=n;break}}}}while(0);e=f[o>>2]|0}if((e|0)==(l|0)|(r|0)==(n|0)){g=47;break e}else h=u}if((g|0)==8){y=ze(0)|0;Fi(y)}else if((g|0)==9){r=ze()|0;if((u|0)!=0?(_=0,de(75,u|0)|0,y=_,_=0,y&1):0){y=ze(0)|0;Fi(y)}$e(r|0)}else if((g|0)==14){f[o>>2]=u;i:do{if((r|0)!=(f[a>>2]|0)){while(1){y=f[r>>2]|0;e=Wg(f[w>>2]|0)|0;_=0;u=ke(34,u|0,y|0,m|0)|0;y=_;_=0;if(y&1){v=e;break}if((e|0)!=0?(_=0,de(75,e|0)|0,y=_,_=0,y&1):0){g=18;break}if((u|0)==-1)break i;u=(f[o>>2]|0)+u|0;f[o>>2]=u;r=r+4|0;if((r|0)==(f[a>>2]|0))break i}if((g|0)==18){y=ze(0)|0;Fi(y)}r=ze()|0;if((v|0)!=0?(_=0,de(75,v|0)|0,y=_,_=0,y&1):0){y=ze(0)|0;Fi(y)}$e(r|0)}}while(0);f[a>>2]=r;b=2;break}else if((g|0)==27){r=f[a>>2]|0;g=47;break}else if((g|0)==34){y=ze(0)|0;Fi(y)}else if((g|0)==35){r=ze()|0;if((u|0)!=0?(_=0,de(75,u|0)|0,y=_,_=0,y&1):0){y=ze(0)|0;Fi(y)}$e(r|0)}}else g=47}while(0);if((g|0)==47)b=(r|0)!=(n|0)&1;c=p;return b|0}function Ik(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0;p=c;c=c+16|0;v=p;e:do{if((r|0)==(n|0))u=n;else{u=r;while(1){if(!(t[u>>0]|0))break e;u=u+1|0;if((u|0)==(n|0)){u=n;break}}}}while(0);f[o>>2]=s;f[a>>2]=r;b=l;w=e+8|0;e:do{if(!((s|0)==(l|0)|(r|0)==(n|0))){e=s;d=u;i:while(1){h=i;u=f[h+4>>2]|0;s=v;f[s>>2]=f[h>>2];f[s+4>>2]=u;s=d;u=Wg(f[w>>2]|0)|0;_=0;h=ge(22,e|0,a|0,s-r|0,b-e>>2|0,i|0)|0;y=_;_=0;if(y&1){g=9;break}if((u|0)!=0?(_=0,de(75,u|0)|0,y=_,_=0,y&1):0){g=8;break}switch(h|0){case 0:{k=2;break e}case-1:{u=e;g=14;break i}default:{}}e=(f[o>>2]|0)+(h<<2)|0;f[o>>2]=e;if((e|0)==(l|0)){g=31;break}r=f[a>>2]|0;if((d|0)==(n|0))u=n;else{u=Wg(f[w>>2]|0)|0;_=0;r=Ee(20,e|0,r|0,1,i|0)|0;y=_;_=0;if(y&1){g=38;break}if((u|0)!=0?(_=0,de(75,u|0)|0,y=_,_=0,y&1):0){g=37;break}if(r){k=2;break e}f[o>>2]=(f[o>>2]|0)+4;r=(f[a>>2]|0)+1|0;f[a>>2]=r;r:do{if((r|0)==(n|0))u=n;else{u=r;while(1){if(!(t[u>>0]|0))break r;u=u+1|0;if((u|0)==(n|0)){u=n;break}}}}while(0);e=f[o>>2]|0}if((e|0)==(l|0)|(r|0)==(n|0)){g=47;break e}else d=u}if((g|0)==8){y=ze(0)|0;Fi(y)}else if((g|0)==9){r=ze()|0;if((u|0)!=0?(_=0,de(75,u|0)|0,y=_,_=0,y&1):0){y=ze(0)|0;Fi(y)}$e(r|0)}else if((g|0)==14){f[o>>2]=u;i:do{if((r|0)!=(f[a>>2]|0)){e=u;r:while(1){u=Wg(f[w>>2]|0)|0;_=0;e=Ee(20,e|0,r|0,s-r|0,v|0)|0;y=_;_=0;if(y&1){g=19;break}if((u|0)!=0?(_=0,de(75,u|0)|0,y=_,_=0,y&1):0){g=18;break}switch(e|0){case-1:{g=25;break r}case-2:{g=26;break r}case 0:{r=r+1|0;break}default:r=r+e|0}e=(f[o>>2]|0)+4|0;f[o>>2]=e;if((r|0)==(f[a>>2]|0)){m=r;break i}}if((g|0)==18){y=ze(0)|0;Fi(y)}else if((g|0)==19){r=ze()|0;if((u|0)!=0?(_=0,de(75,u|0)|0,y=_,_=0,y&1):0){y=ze(0)|0;Fi(y)}$e(r|0)}else if((g|0)==25){f[a>>2]=r;k=2;break e}else if((g|0)==26){f[a>>2]=r;k=1;break e}}else m=r}while(0);f[a>>2]=m;k=(m|0)!=(n|0)&1;break}else if((g|0)==31){r=f[a>>2]|0;g=47;break}else if((g|0)==37){y=ze(0)|0;Fi(y)}else if((g|0)==38){r=ze()|0;if((u|0)!=0?(_=0,de(75,u|0)|0,y=_,_=0,y&1):0){y=ze(0)|0;Fi(y)}$e(r|0)}}else g=47}while(0);if((g|0)==47)k=(r|0)!=(n|0)&1;c=p;return k|0}function Dk(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=c;c=c+16|0;s=l;f[a>>2]=r;r=Wg(f[e+8>>2]|0)|0;_=0;e=ke(34,s|0,0,i|0)|0;i=_;_=0;if(i&1){s=ze()|0;if((r|0)!=0?(_=0,de(75,r|0)|0,l=_,_=0,l&1):0){l=ze(0)|0;Fi(l)}$e(s|0)}if((r|0)!=0?(_=0,de(75,r|0)|0,i=_,_=0,i&1):0){i=ze(0)|0;Fi(i)}switch(e|0){case 0:case-1:{s=2;break}default:{e=e+-1|0;if(e>>>0<=(n-(f[a>>2]|0)|0)>>>0)if(!e)s=0;else while(1){i=t[s>>0]|0;n=f[a>>2]|0;f[a>>2]=n+1;t[n>>0]=i;e=e+-1|0;if(!e){s=0;break}else s=s+1|0}else s=1}}c=l;return s|0}function Nk(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0;i=e+8|0;_=0;r=de(75,f[i>>2]|0)|0;t=_;_=0;do{if(t&1)n=16;else{_=0;t=ke(35,0,0,4)|0;e=_;_=0;if(e&1){e=ze(0)|0;if(!r)break;_=0;de(75,r|0)|0;s=_;_=0;if(!(s&1))break;s=ze(0)|0;Fi(s)}if((r|0)!=0?(_=0,de(75,r|0)|0,s=_,_=0,s&1):0){s=ze(0)|0;Fi(s)}if(!t){e=f[i>>2]|0;if(e){_=0;e=de(75,e|0)|0;s=_;_=0;if(s&1){n=16;break}if((e|0)!=0?(_=0,de(75,e|0)|0,s=_,_=0,s&1):0){s=ze(0)|0;Fi(s)}else a=0}else a=1}else a=-1;return a|0}}while(0);if((n|0)==16)e=ze(0)|0;Fi(e);return 0}function Fk(e){e=e|0;return 0}function Uk(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;u=t;o=e+8|0;e:do{if((r|0)==(t|0)|(n|0)==0)e=0;else{e=0;l=0;while(1){s=Wg(f[o>>2]|0)|0;_=0;a=ke(36,r|0,u-r|0,i|0)|0;d=_;_=0;if(d&1){h=s;break}if((s|0)!=0?(_=0,de(75,s|0)|0,d=_,_=0,d&1):0){c=5;break}switch(a|0){case-2:case-1:break e;case 0:{r=r+1|0;a=1;break}default:r=r+a|0}e=a+e|0;l=l+1|0;if((r|0)==(t|0)|l>>>0>=n>>>0)break e}if((c|0)==5){d=ze(0)|0;Fi(d)}e=ze()|0;if((h|0)!=0?(_=0,de(75,h|0)|0,d=_,_=0,d&1):0){d=ze(0)|0;Fi(d)}$e(e|0)}}while(0);return e|0}function jk(e){e=e|0;var i=0,r=0;e=f[e+8>>2]|0;if(e){_=0;e=de(75,e|0)|0;r=_;_=0;if(r&1){r=ze(0)|0;Fi(r)}if((e|0)!=0?(_=0,de(75,e|0)|0,r=_,_=0,r&1):0){r=ze(0)|0;Fi(r)}else i=4}else i=1;return i|0}function Hk(e){e=e|0;Ip(e);return}function zk(e,i,r,t,n,a,s,l){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0;e=c;c=c+16|0;o=e+4|0;i=e;f[o>>2]=r;f[i>>2]=a;s=G_(r,t,o,a,s,i,1114111,0)|0;f[n>>2]=f[o>>2];f[l>>2]=f[i>>2];c=e;return s|0}function Yk(e,i,r,t,n,a,s,l){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0;e=c;c=c+16|0;o=e+4|0;i=e;f[o>>2]=r;f[i>>2]=a;s=K_(r,t,o,a,s,i,1114111,0)|0;f[n>>2]=f[o>>2];f[l>>2]=f[i>>2];c=e;return s|0}function qk(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f[n>>2]=r;return 3}function Xk(e){e=e|0;return 0}function Vk(e){e=e|0;return 0}function Gk(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;return W_(r,t,n,1114111,0)|0}function Kk(e){e=e|0;return 4}function Wk(e){e=e|0;Ip(e);return}function Zk(e,i,r,t,n,a,s,l){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0;e=c;c=c+16|0;o=e+4|0;i=e;f[o>>2]=r;f[i>>2]=a;s=Z_(r,t,o,a,s,i,1114111,0)|0;f[n>>2]=f[o>>2];f[l>>2]=f[i>>2];c=e;return s|0}function Jk(e,i,r,t,n,a,s,l){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0;e=c;c=c+16|0;o=e+4|0;i=e;f[o>>2]=r;f[i>>2]=a;s=J_(r,t,o,a,s,i,1114111,0)|0;f[n>>2]=f[o>>2];f[l>>2]=f[i>>2];c=e;return s|0}function Qk(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f[n>>2]=r;return 3}function $k(e){e=e|0;return 0}function ew(e){e=e|0;return 0}function iw(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;return Q_(r,t,n,1114111,0)|0}function rw(e){e=e|0;return 4}function tw(e){e=e|0;Ip(e);return}function nw(e){e=e|0;Ip(e);return}function fw(e,i){e=e|0;i=i|0;f[e+4>>2]=i+-1;f[e>>2]=44384;t[e+8>>0]=46;t[e+9>>0]=44;e=e+12|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}function aw(e,i){e=e|0;i=i|0;f[e+4>>2]=i+-1;f[e>>2]=44424;f[e+8>>2]=46;f[e+12>>2]=44;e=e+16|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return}function sw(e){e=e|0;f[e>>2]=44384;Oh(e+12|0);return}function lw(e){e=e|0;sw(e);Ip(e);return}function ow(e){e=e|0;f[e>>2]=44424;Oh(e+16|0);return}function uw(e){e=e|0;ow(e);Ip(e);return}function cw(e){e=e|0;return t[e+8>>0]|0}function hw(e){e=e|0;return f[e+8>>2]|0}function dw(e){e=e|0;return t[e+9>>0]|0}function bw(e){e=e|0;return f[e+12>>2]|0}function kw(e,i){e=e|0;i=i|0;Lh(e,i+12|0);return}function ww(e,i){e=e|0;i=i|0;Lh(e,i+16|0);return}function _w(e,i){e=e|0;i=i|0;xh(e,59024,4);return}function mw(e,i){e=e|0;i=i|0;Xh(e,44996,Ky(44996)|0);return}function vw(e,i){e=e|0;i=i|0;xh(e,59029,5);return}function pw(e,i){e=e|0;i=i|0;Xh(e,45016,Ky(45016)|0);return}function gw(e){e=e|0;switch(f[e+4>>2]&74|0){case 64:{e=8;break}case 8:{e=16;break}case 0:{e=0;break}default:e=10}return e|0}function yw(e){e=e|0;do{if((t[2464]|0)==0?(De(2464)|0)!=0:0){if((t[2472]|0)==0?(De(2472)|0)!=0:0){e=45040;do{f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;e=e+12|0}while((e|0)!=45208);di(193,0,w|0)|0;qe(2472)}_=0;pe(41,45040,59035)|0;e=_;_=0;if(((((((((((((!(e&1)?(_=0,pe(41,45052,59042)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45064,59049)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45076,59057)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45088,59067)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45100,59076)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45112,59083)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45124,59092)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45136,59096)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45148,59100)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45160,59104)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45172,59108)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45184,59112)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45196,59116)|0,e=_,_=0,!(e&1)):0){f[11302]=45040;qe(2464);break}e=ze()|0;gi(2464);$e(e|0)}}while(0);return f[11302]|0}function Mw(e){e=e|0;do{if((t[2480]|0)==0?(De(2480)|0)!=0:0){if((t[2488]|0)==0?(De(2488)|0)!=0:0){e=45212;do{f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;e=e+12|0}while((e|0)!=45380);di(194,0,w|0)|0;qe(2488)}_=0;pe(42,45212,45380)|0;e=_;_=0;if(((((((((((((!(e&1)?(_=0,pe(42,45224,45408)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,45236,45436)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,45248,45468)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,45260,45508)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,45272,45544)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,45284,45572)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,45296,45608)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,45308,45624)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,45320,45640)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,45332,45656)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,45344,45672)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,45356,45688)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,45368,45704)|0,e=_,_=0,!(e&1)):0){f[11430]=45212;qe(2480);break}e=ze()|0;gi(2480);$e(e|0)}}while(0);return f[11430]|0}function Ew(e){e=e|0;e:do{if((t[2496]|0)==0?(De(2496)|0)!=0:0){if((t[2504]|0)==0?(De(2504)|0)!=0:0){e=45724;do{f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;e=e+12|0}while((e|0)!=46012);di(195,0,w|0)|0;qe(2504)}_=0;pe(41,45724,59120)|0;e=_;_=0;do{if((((((((((((((!(e&1)?(_=0,pe(41,45736,59128)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45748,59137)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45760,59143)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45772,59149)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45784,59153)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45796,59158)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45808,59163)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45820,59170)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45832,59180)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45844,59188)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45856,59197)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45868,59206)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45880,59210)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(41,45892,59214)|0,e=_,_=0,!(e&1)):0){_=0;pe(41,45904,59218)|0;e=_;_=0;if(e&1)break;_=0;pe(41,45916,59149)|0;e=_;_=0;if(e&1)break;_=0;pe(41,45928,59222)|0;e=_;_=0;if(e&1)break;_=0;pe(41,45940,59226)|0;e=_;_=0;if(e&1)break;_=0;pe(41,45952,59230)|0;e=_;_=0;if(e&1)break;_=0;pe(41,45964,59234)|0;e=_;_=0;if(e&1)break;_=0;pe(41,45976,59238)|0;e=_;_=0;if(e&1)break;_=0;pe(41,45988,59242)|0;e=_;_=0;if(e&1)break;_=0;pe(41,46e3,59246)|0;e=_;_=0;if(e&1)break;f[11503]=45724;qe(2496);break e}}while(0);e=ze()|0;gi(2496);$e(e|0)}}while(0);return f[11503]|0}function Aw(e){e=e|0;e:do{if((t[2512]|0)==0?(De(2512)|0)!=0:0){if((t[2520]|0)==0?(De(2520)|0)!=0:0){e=46016;do{f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;e=e+12|0}while((e|0)!=46304);di(196,0,w|0)|0;qe(2520)}_=0;pe(42,46016,46304)|0;e=_;_=0;do{if((((((((((((((!(e&1)?(_=0,pe(42,46028,46336)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,46040,46372)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,46052,46396)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,46064,46420)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,46076,46436)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,46088,46456)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,46100,46476)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,46112,46504)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,46124,46544)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,46136,46576)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,46148,46612)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,46160,46648)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,46172,46664)|0,e=_,_=0,!(e&1)):0)?(_=0,pe(42,46184,46680)|0,e=_,_=0,!(e&1)):0){_=0;pe(42,46196,46696)|0;e=_;_=0;if(e&1)break;_=0;pe(42,46208,46420)|0;e=_;_=0;if(e&1)break;_=0;pe(42,46220,46712)|0;e=_;_=0;if(e&1)break;_=0;pe(42,46232,46728)|0;e=_;_=0;if(e&1)break;_=0;pe(42,46244,46744)|0;e=_;_=0;if(e&1)break;_=0;pe(42,46256,46760)|0;e=_;_=0;if(e&1)break;_=0;pe(42,46268,46776)|0;e=_;_=0;if(e&1)break;_=0;pe(42,46280,46792)|0;e=_;_=0;if(e&1)break;_=0;pe(42,46292,46808)|0;e=_;_=0;if(e&1)break;f[11706]=46016;qe(2512);break e}}while(0);e=ze()|0;gi(2512);$e(e|0)}}while(0);return f[11706]|0}function Sw(e){e=e|0;do{if((t[2528]|0)==0?(De(2528)|0)!=0:0){if((t[2536]|0)==0?(De(2536)|0)!=0:0){e=46828;do{f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;e=e+12|0}while((e|0)!=47116);di(197,0,w|0)|0;qe(2536)}_=0;pe(41,46828,59250)|0;e=_;_=0;if(!(e&1)?(_=0,pe(41,46840,59253)|0,e=_,_=0,!(e&1)):0){f[11779]=46828;qe(2528);break}e=ze()|0;gi(2528);$e(e|0)}}while(0);return f[11779]|0}function Tw(e){e=e|0;do{if((t[2544]|0)==0?(De(2544)|0)!=0:0){if((t[2552]|0)==0?(De(2552)|0)!=0:0){e=47120;do{f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;e=e+12|0}while((e|0)!=47408);di(198,0,w|0)|0;qe(2552)}_=0;pe(42,47120,47408)|0;e=_;_=0;if(!(e&1)?(_=0,pe(42,47132,47420)|0,e=_,_=0,!(e&1)):0){f[11858]=47120;qe(2544);break}e=ze()|0;gi(2544);$e(e|0)}}while(0);return f[11858]|0}function Cw(e){e=e|0;do{if((t[2560]|0)==0?(De(2560)|0)!=0:0){_=0;Ae(5,47436,59256,8);e=_;_=0;if(e&1){e=ze()|0;gi(2560);$e(e|0)}else{di(199,47436,w|0)|0;qe(2560);break}}}while(0);return 47436}function Rw(e){e=e|0;var i=0;do{if((t[2568]|0)==0?(De(2568)|0)!=0:0){_=0;e=de(76,47448)|0;i=_;_=0;if(!(i&1)?(_=0,Ae(15,47484,47448,e|0),i=_,_=0,!(i&1)):0){di(200,47484,w|0)|0;qe(2568);break}i=ze()|0;gi(2568);$e(i|0)}}while(0);return 47484}function Lw(e){e=e|0;do{if((t[2576]|0)==0?(De(2576)|0)!=0:0){_=0;Ae(5,47496,59265,8);e=_;_=0;if(e&1){e=ze()|0;gi(2576);$e(e|0)}else{di(199,47496,w|0)|0;qe(2576);break}}}while(0);return 47496}function xw(e){e=e|0;var i=0;do{if((t[2584]|0)==0?(De(2584)|0)!=0:0){_=0;e=de(76,47508)|0;i=_;_=0;if(!(i&1)?(_=0,Ae(15,47544,47508,e|0),i=_,_=0,!(i&1)):0){di(200,47544,w|0)|0;qe(2584);break}i=ze()|0;gi(2584);$e(i|0)}}while(0);return 47544}function Pw(e){e=e|0;do{if((t[2592]|0)==0?(De(2592)|0)!=0:0){_=0;Ae(5,47556,59274,20);e=_;_=0;if(e&1){e=ze()|0;gi(2592);$e(e|0)}else{di(199,47556,w|0)|0;qe(2592);break}}}while(0);return 47556}function Ow(e){e=e|0;var i=0;do{if((t[2600]|0)==0?(De(2600)|0)!=0:0){_=0;e=de(76,47568)|0;i=_;_=0;if(!(i&1)?(_=0,Ae(15,47652,47568,e|0),i=_,_=0,!(i&1)):0){di(200,47652,w|0)|0;qe(2600);break}i=ze()|0;gi(2600);$e(i|0)}}while(0);return 47652}function Bw(e){e=e|0;do{if((t[2608]|0)==0?(De(2608)|0)!=0:0){_=0;Ae(5,47664,59295,11);e=_;_=0;if(e&1){e=ze()|0;gi(2608);$e(e|0)}else{di(199,47664,w|0)|0;qe(2608);break}}}while(0);return 47664}function Iw(e){e=e|0;var i=0;do{if((t[2616]|0)==0?(De(2616)|0)!=0:0){_=0;e=de(76,47676)|0;i=_;_=0;if(!(i&1)?(_=0,Ae(15,47724,47676,e|0),i=_,_=0,!(i&1)):0){di(200,47724,w|0)|0;qe(2616);break}i=ze()|0;gi(2616);$e(i|0)}}while(0);return 47724}function Dw(e){e=e|0;var i=0,r=0,t=0;f[e>>2]=44304;e=e+8|0;i=f[e>>2]|0;_=0;r=Me(3)|0;t=_;_=0;do{if(!(t&1)){if((i|0)!=(r|0)?(_=0,ue(188,f[e>>2]|0),t=_,_=0,t&1):0)break;return}}while(0);t=ze(0)|0;Fi(t)}function Nw(e,i,r,n,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;o=o|0;var u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0;A=c;c=c+112|0;h=A;b=(n-r|0)/12|0;do{if(b>>>0>100){h=Lc(b)|0;if((h|0)==0?(_=0,Se(6),E=_,_=0,E&1):0){u=0;m=6;break}u=h;m=11}else{u=0;m=11}}while(0);e:do{if((m|0)==11){if((r|0)==(n|0))d=0;else{m=r;k=0;w=h;while(1){d=t[m>>0]|0;if(!(d&1))d=(d&255)>>>1;else d=f[m+4>>2]|0;if(!d){t[w>>0]=2;d=k+1|0;b=b+-1|0}else{t[w>>0]=1;d=k}m=m+12|0;if((m|0)==(n|0))break;else{k=d;w=w+1|0}}}M=(r|0)==(n|0);E=(r|0)==(n|0);y=0;v=d;i:while(1){d=f[e>>2]|0;do{if(d){if((f[d+12>>2]|0)==(f[d+16>>2]|0)){_=0;d=de(f[(f[d>>2]|0)+36>>2]|0,d|0)|0;g=_;_=0;if(g&1){m=5;break i}if((d|0)==-1){f[e>>2]=0;d=0;break}else{d=f[e>>2]|0;break}}}else d=0}while(0);m=(d|0)==0;k=f[i>>2]|0;if(k){if((f[k+12>>2]|0)==(f[k+16>>2]|0)){_=0;d=de(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;g=_;_=0;if(g&1){m=5;break}if((d|0)==-1){f[i>>2]=0;k=0}}}else k=0;w=(k|0)==0;d=f[e>>2]|0;if(!((b|0)!=0&(m^w))){m=64;break}k=f[d+12>>2]|0;if((k|0)==(f[d+16>>2]|0)){_=0;d=de(f[(f[d>>2]|0)+36>>2]|0,d|0)|0;g=_;_=0;if(g&1){m=5;break}}else d=a[k>>0]|0;d=d&255;if(!o){_=0;d=pe(f[(f[s>>2]|0)+12>>2]|0,s|0,d|0)|0;g=_;_=0;if(g&1){m=5;break}}g=y+1|0;if(M){d=0;m=v}else{w=0;p=r;m=v;v=h;while(1){do{if((t[v>>0]|0)==1){if(!(t[p>>0]&1))k=p+1|0;else k=f[p+8>>2]|0;k=t[k+y>>0]|0;if(!o){_=0;k=pe(f[(f[s>>2]|0)+12>>2]|0,s|0,k|0)|0;S=_;_=0;if(S&1){m=4;break i}}if(d<<24>>24!=k<<24>>24){t[v>>0]=0;k=w;b=b+-1|0;break}k=t[p>>0]|0;if(!(k&1))k=(k&255)>>>1;else k=f[p+4>>2]|0;if((k|0)==(g|0)){t[v>>0]=2;k=1;m=m+1|0;b=b+-1|0}else k=1}else k=w}while(0);p=p+12|0;if((p|0)==(n|0)){d=k;break}else{w=k;v=v+1|0}}}if(!d){y=g;v=m;continue}d=f[e>>2]|0;k=d+12|0;w=f[k>>2]|0;if((w|0)==(f[d+16>>2]|0)){_=0;de(f[(f[d>>2]|0)+40>>2]|0,d|0)|0;S=_;_=0;if(S&1){m=5;break}}else f[k>>2]=w+1;if((m+b|0)>>>0<2|E){y=g;v=m;continue}else{d=r;w=m;m=h}while(1){if((t[m>>0]|0)==2){k=t[d>>0]|0;if(!(k&1))k=(k&255)>>>1;else k=f[d+4>>2]|0;if((k|0)!=(g|0)){t[m>>0]=0;w=w+-1|0}}d=d+12|0;if((d|0)==(n|0)){y=g;v=w;continue i}else m=m+1|0}}if((m|0)==4){r=ze()|0;break}else if((m|0)==5){r=ze()|0;break}else if((m|0)==64){do{if(d){if((f[d+12>>2]|0)==(f[d+16>>2]|0)){_=0;d=de(f[(f[d>>2]|0)+36>>2]|0,d|0)|0;S=_;_=0;if(S&1){m=6;break e}if((d|0)==-1){f[e>>2]=0;d=0;break}else{d=f[e>>2]|0;break}}}else d=0}while(0);b=(d|0)==0;do{if(!w){if((f[k+12>>2]|0)==(f[k+16>>2]|0)){_=0;d=de(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;S=_;_=0;if(S&1){m=6;break e}if((d|0)==-1){f[i>>2]=0;m=76;break}}if(!b)m=77}else m=76}while(0);if((m|0)==76?b:0)m=77;if((m|0)==77)f[l>>2]=f[l>>2]|2;i:do{if((r|0)==(n|0))m=81;else while(1){if((t[h>>0]|0)==2)break i;r=r+12|0;if((r|0)==(n|0)){m=81;break}else h=h+1|0}}while(0);if((m|0)==81){f[l>>2]=f[l>>2]|4;r=n}if(u)xc(u);c=A;return r|0}}}while(0);if((m|0)==6)r=ze()|0;if(u)xc(u);$e(r|0);return 0}function Fw(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0;S=c;c=c+240|0;v=S+202|0;o=S+200|0;C=S+24|0;T=S+12|0;g=S+8|0;E=S+40|0;A=S+4|0;y=S;p=gw(n)|0;sk(C,n,v,o);f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;if(!(t[T>>0]&1))e=10;else e=(f[T>>2]&-2)+-1|0;_=0;Ae(8,T|0,e|0,0);m=_;_=0;e:do{if(!(m&1)){k=T+8|0;w=T+1|0;n=(t[T>>0]&1)==0?w:f[k>>2]|0;f[g>>2]=n;f[A>>2]=E;f[y>>2]=0;m=T+4|0;b=t[o>>0]|0;e=f[i>>2]|0;i:while(1){if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;o=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;d=_;_=0;if(d&1){R=24;break}if((o|0)==-1){f[i>>2]=0;e=0}}}else e=0;u=(e|0)==0;o=f[r>>2]|0;do{if(o){if((f[o+12>>2]|0)!=(f[o+16>>2]|0))if(u)break;else break i;_=0;h=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;d=_;_=0;if(d&1){R=24;break i}if((h|0)!=-1)if(u)break;else break i;else{f[r>>2]=0;R=16;break}}else R=16}while(0);if((R|0)==16){R=0;if(u){o=0;break}else o=0}u=t[T>>0]|0;u=(u&1)==0?(u&255)>>>1:f[m>>2]|0;if((f[g>>2]|0)==(n+u|0)){_=0;Ae(8,T|0,u<<1|0,0);d=_;_=0;if(d&1){R=24;break}if(!(t[T>>0]&1))n=10;else n=(f[T>>2]&-2)+-1|0;_=0;Ae(8,T|0,n|0,0);d=_;_=0;if(d&1){R=24;break}n=(t[T>>0]&1)==0?w:f[k>>2]|0;f[g>>2]=n+u}h=e+12|0;u=f[h>>2]|0;d=e+16|0;if((u|0)==(f[d>>2]|0)){_=0;u=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=24;break}}else u=a[u>>0]|0;if(Xb(u&255,p,n,g,y,b,C,E,A,v)|0)break;o=f[h>>2]|0;if((o|0)==(f[d>>2]|0)){_=0;de(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=24;break}else continue}else{f[h>>2]=o+1;continue}}if((R|0)==24){e=ze()|0;break}L=t[C>>0]|0;if((((L&1)==0?(L&255)>>>1:f[C+4>>2]|0)|0)!=0?(M=f[A>>2]|0,(M-E|0)<160):0){L=f[y>>2]|0;f[A>>2]=M+4;f[M>>2]=L}_=0;n=Ee(21,n|0,f[g>>2]|0,s|0,p|0)|0;L=_;_=0;if(!(L&1)){f[l>>2]=n;Ko(C,E,f[A>>2]|0,s);if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;n=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=25;break}if((n|0)==-1){f[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(o){if((f[o+12>>2]|0)==(f[o+16>>2]|0)){_=0;e=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;L=_;_=0;if(L&1){R=25;break e}if((e|0)==-1){f[r>>2]=0;R=49;break}}if(!n)R=50}else R=49}while(0);if((R|0)==49?n:0)R=50;if((R|0)==50)f[s>>2]=f[s>>2]|2;L=f[i>>2]|0;Oh(T);Oh(C);c=S;return L|0}else R=25}else R=25}while(0);if((R|0)==25)e=ze()|0;Oh(T);Oh(C);$e(e|0);return 0}function Uw(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0;S=c;c=c+240|0;v=S+202|0;o=S+200|0;C=S+24|0;T=S+12|0;g=S+8|0;E=S+40|0;A=S+4|0;y=S;p=gw(n)|0;sk(C,n,v,o);f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;if(!(t[T>>0]&1))e=10;else e=(f[T>>2]&-2)+-1|0;_=0;Ae(8,T|0,e|0,0);m=_;_=0;e:do{if(!(m&1)){k=T+8|0;w=T+1|0;n=(t[T>>0]&1)==0?w:f[k>>2]|0;f[g>>2]=n;f[A>>2]=E;f[y>>2]=0;m=T+4|0;b=t[o>>0]|0;e=f[i>>2]|0;i:while(1){if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;o=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;d=_;_=0;if(d&1){R=24;break}if((o|0)==-1){f[i>>2]=0;e=0}}}else e=0;o=(e|0)==0;u=f[r>>2]|0;do{if(u){if((f[u+12>>2]|0)!=(f[u+16>>2]|0))if(o)break;else break i;_=0;h=de(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;d=_;_=0;if(d&1){R=24;break i}if((h|0)!=-1)if(o)break;else break i;else{f[r>>2]=0;R=16;break}}else R=16}while(0);if((R|0)==16){R=0;if(o){u=0;break}else u=0}o=t[T>>0]|0;o=(o&1)==0?(o&255)>>>1:f[m>>2]|0;if((f[g>>2]|0)==(n+o|0)){_=0;Ae(8,T|0,o<<1|0,0);d=_;_=0;if(d&1){R=24;break}if(!(t[T>>0]&1))n=10;else n=(f[T>>2]&-2)+-1|0;_=0;Ae(8,T|0,n|0,0);d=_;_=0;if(d&1){R=24;break}n=(t[T>>0]&1)==0?w:f[k>>2]|0;f[g>>2]=n+o}h=e+12|0;o=f[h>>2]|0;d=e+16|0;if((o|0)==(f[d>>2]|0)){_=0;o=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=24;break}}else o=a[o>>0]|0;if(Xb(o&255,p,n,g,y,b,C,E,A,v)|0)break;o=f[h>>2]|0;if((o|0)==(f[d>>2]|0)){_=0;de(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=24;break}else continue}else{f[h>>2]=o+1;continue}}if((R|0)==24){e=ze()|0;break}L=t[C>>0]|0;if((((L&1)==0?(L&255)>>>1:f[C+4>>2]|0)|0)!=0?(M=f[A>>2]|0,(M-E|0)<160):0){L=f[y>>2]|0;f[A>>2]=M+4;f[M>>2]=L}_=0;n=Ee(22,n|0,f[g>>2]|0,s|0,p|0)|0;o=P;L=_;_=0;if(!(L&1)){L=l;f[L>>2]=n;f[L+4>>2]=o;Ko(C,E,f[A>>2]|0,s);if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;n=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=25;break}if((n|0)==-1){f[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(u){if((f[u+12>>2]|0)==(f[u+16>>2]|0)){_=0;e=de(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;L=_;_=0;if(L&1){R=25;break e}if((e|0)==-1){f[r>>2]=0;R=49;break}}if(!n)R=50}else R=49}while(0);if((R|0)==49?n:0)R=50;if((R|0)==50)f[s>>2]=f[s>>2]|2;L=f[i>>2]|0;Oh(T);Oh(C);c=S;return L|0}else R=25}else R=25}while(0);if((R|0)==25)e=ze()|0;Oh(T);Oh(C);$e(e|0);return 0}function jw(e,i,r,s,l,o){e=e|0;i=i|0;r=r|0;s=s|0;l=l|0;o=o|0;var u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0;T=c;c=c+240|0;p=T+202|0;u=T+200|0;R=T+24|0;C=T+12|0;y=T+8|0;A=T+40|0;S=T+4|0;M=T;g=gw(s)|0;sk(R,s,p,u);f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;if(!(t[C>>0]&1))e=10;else e=(f[C>>2]&-2)+-1|0;_=0;Ae(8,C|0,e|0,0);v=_;_=0;e:do{if(!(v&1)){w=C+8|0;m=C+1|0;s=(t[C>>0]&1)==0?m:f[w>>2]|0;f[y>>2]=s;f[S>>2]=A;f[M>>2]=0;v=C+4|0;k=t[u>>0]|0;e=f[i>>2]|0;i:while(1){if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;u=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;b=_;_=0;if(b&1){L=24;break}if((u|0)==-1){f[i>>2]=0;e=0}}}else e=0;h=(e|0)==0;u=f[r>>2]|0;do{if(u){if((f[u+12>>2]|0)!=(f[u+16>>2]|0))if(h)break;else break i;_=0;d=de(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;b=_;_=0;if(b&1){L=24;break i}if((d|0)!=-1)if(h)break;else break i;else{f[r>>2]=0;L=16;break}}else L=16}while(0);if((L|0)==16){L=0;if(h){u=0;break}else u=0}h=t[C>>0]|0;h=(h&1)==0?(h&255)>>>1:f[v>>2]|0;if((f[y>>2]|0)==(s+h|0)){_=0;Ae(8,C|0,h<<1|0,0);b=_;_=0;if(b&1){L=24;break}if(!(t[C>>0]&1))s=10;else s=(f[C>>2]&-2)+-1|0;_=0;Ae(8,C|0,s|0,0);b=_;_=0;if(b&1){L=24;break}s=(t[C>>0]&1)==0?m:f[w>>2]|0;f[y>>2]=s+h}d=e+12|0;h=f[d>>2]|0;b=e+16|0;if((h|0)==(f[b>>2]|0)){_=0;h=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;x=_;_=0;if(x&1){L=24;break}}else h=a[h>>0]|0;if(Xb(h&255,g,s,y,M,k,R,A,S,p)|0)break;u=f[d>>2]|0;if((u|0)==(f[b>>2]|0)){_=0;de(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;x=_;_=0;if(x&1){L=24;break}else continue}else{f[d>>2]=u+1;continue}}if((L|0)==24){e=ze()|0;break}x=t[R>>0]|0;if((((x&1)==0?(x&255)>>>1:f[R+4>>2]|0)|0)!=0?(E=f[S>>2]|0,(E-A|0)<160):0){x=f[M>>2]|0;f[S>>2]=E+4;f[E>>2]=x}_=0;s=Ee(23,s|0,f[y>>2]|0,l|0,g|0)|0;x=_;_=0;if(!(x&1)){n[o>>1]=s;Ko(R,A,f[S>>2]|0,l);if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;s=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;x=_;_=0;if(x&1){L=25;break}if((s|0)==-1){f[i>>2]=0;e=0}}}else e=0;s=(e|0)==0;do{if(u){if((f[u+12>>2]|0)==(f[u+16>>2]|0)){_=0;e=de(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;x=_;_=0;if(x&1){L=25;break e}if((e|0)==-1){f[r>>2]=0;L=49;break}}if(!s)L=50}else L=49}while(0);if((L|0)==49?s:0)L=50;if((L|0)==50)f[l>>2]=f[l>>2]|2;x=f[i>>2]|0;Oh(C);Oh(R);c=T;return x|0}else L=25}else L=25}while(0);if((L|0)==25)e=ze()|0;Oh(C);Oh(R);$e(e|0);return 0}function Hw(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0;S=c;c=c+240|0;v=S+202|0;o=S+200|0;C=S+24|0;T=S+12|0;g=S+8|0;E=S+40|0;A=S+4|0;y=S;p=gw(n)|0;sk(C,n,v,o);f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;if(!(t[T>>0]&1))e=10;else e=(f[T>>2]&-2)+-1|0;_=0;Ae(8,T|0,e|0,0);m=_;_=0;e:do{if(!(m&1)){k=T+8|0;w=T+1|0;n=(t[T>>0]&1)==0?w:f[k>>2]|0;f[g>>2]=n;f[A>>2]=E;f[y>>2]=0;m=T+4|0;b=t[o>>0]|0;e=f[i>>2]|0;i:while(1){if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;o=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;d=_;_=0;if(d&1){R=24;break}if((o|0)==-1){f[i>>2]=0;e=0}}}else e=0;u=(e|0)==0;o=f[r>>2]|0;do{if(o){if((f[o+12>>2]|0)!=(f[o+16>>2]|0))if(u)break;else break i;_=0;h=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;d=_;_=0;if(d&1){R=24;break i}if((h|0)!=-1)if(u)break;else break i;else{f[r>>2]=0;R=16;break}}else R=16}while(0);if((R|0)==16){R=0;if(u){o=0;break}else o=0}u=t[T>>0]|0;u=(u&1)==0?(u&255)>>>1:f[m>>2]|0;if((f[g>>2]|0)==(n+u|0)){_=0;Ae(8,T|0,u<<1|0,0);d=_;_=0;if(d&1){R=24;break}if(!(t[T>>0]&1))n=10;else n=(f[T>>2]&-2)+-1|0;_=0;Ae(8,T|0,n|0,0);d=_;_=0;if(d&1){R=24;break}n=(t[T>>0]&1)==0?w:f[k>>2]|0;f[g>>2]=n+u}h=e+12|0;u=f[h>>2]|0;d=e+16|0;if((u|0)==(f[d>>2]|0)){_=0;u=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=24;break}}else u=a[u>>0]|0;if(Xb(u&255,p,n,g,y,b,C,E,A,v)|0)break;o=f[h>>2]|0;if((o|0)==(f[d>>2]|0)){_=0;de(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=24;break}else continue}else{f[h>>2]=o+1;continue}}if((R|0)==24){e=ze()|0;break}L=t[C>>0]|0;if((((L&1)==0?(L&255)>>>1:f[C+4>>2]|0)|0)!=0?(M=f[A>>2]|0,(M-E|0)<160):0){L=f[y>>2]|0;f[A>>2]=M+4;f[M>>2]=L}_=0;n=Ee(24,n|0,f[g>>2]|0,s|0,p|0)|0;L=_;_=0;if(!(L&1)){f[l>>2]=n;Ko(C,E,f[A>>2]|0,s);if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;n=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=25;break}if((n|0)==-1){f[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(o){if((f[o+12>>2]|0)==(f[o+16>>2]|0)){_=0;e=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;L=_;_=0;if(L&1){R=25;break e}if((e|0)==-1){f[r>>2]=0;R=49;break}}if(!n)R=50}else R=49}while(0);if((R|0)==49?n:0)R=50;if((R|0)==50)f[s>>2]=f[s>>2]|2;L=f[i>>2]|0;Oh(T);Oh(C);c=S;return L|0}else R=25}else R=25}while(0);if((R|0)==25)e=ze()|0;Oh(T);Oh(C);$e(e|0);return 0}function zw(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0;S=c;c=c+240|0;v=S+202|0;o=S+200|0;C=S+24|0;T=S+12|0;g=S+8|0;E=S+40|0;A=S+4|0;y=S;p=gw(n)|0;sk(C,n,v,o);f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;if(!(t[T>>0]&1))e=10;else e=(f[T>>2]&-2)+-1|0;_=0;Ae(8,T|0,e|0,0);m=_;_=0;e:do{if(!(m&1)){k=T+8|0;w=T+1|0;n=(t[T>>0]&1)==0?w:f[k>>2]|0;f[g>>2]=n;f[A>>2]=E;f[y>>2]=0;m=T+4|0;b=t[o>>0]|0;e=f[i>>2]|0;i:while(1){if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;o=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;d=_;_=0;if(d&1){R=24;break}if((o|0)==-1){f[i>>2]=0;e=0}}}else e=0;u=(e|0)==0;o=f[r>>2]|0;do{if(o){if((f[o+12>>2]|0)!=(f[o+16>>2]|0))if(u)break;else break i;_=0;h=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;d=_;_=0;if(d&1){R=24;break i}if((h|0)!=-1)if(u)break;else break i;else{f[r>>2]=0;R=16;break}}else R=16}while(0);if((R|0)==16){R=0;if(u){o=0;break}else o=0}u=t[T>>0]|0;u=(u&1)==0?(u&255)>>>1:f[m>>2]|0;if((f[g>>2]|0)==(n+u|0)){_=0;Ae(8,T|0,u<<1|0,0);d=_;_=0;if(d&1){R=24;break}if(!(t[T>>0]&1))n=10;else n=(f[T>>2]&-2)+-1|0;_=0;Ae(8,T|0,n|0,0);d=_;_=0;if(d&1){R=24;break}n=(t[T>>0]&1)==0?w:f[k>>2]|0;f[g>>2]=n+u}h=e+12|0;u=f[h>>2]|0;d=e+16|0;if((u|0)==(f[d>>2]|0)){_=0;u=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=24;break}}else u=a[u>>0]|0;if(Xb(u&255,p,n,g,y,b,C,E,A,v)|0)break;o=f[h>>2]|0;if((o|0)==(f[d>>2]|0)){_=0;de(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=24;break}else continue}else{f[h>>2]=o+1;continue}}if((R|0)==24){e=ze()|0;break}L=t[C>>0]|0;if((((L&1)==0?(L&255)>>>1:f[C+4>>2]|0)|0)!=0?(M=f[A>>2]|0,(M-E|0)<160):0){L=f[y>>2]|0;f[A>>2]=M+4;f[M>>2]=L}_=0;n=Ee(25,n|0,f[g>>2]|0,s|0,p|0)|0;L=_;_=0;if(!(L&1)){f[l>>2]=n;Ko(C,E,f[A>>2]|0,s);if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;n=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=25;break}if((n|0)==-1){f[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(o){if((f[o+12>>2]|0)==(f[o+16>>2]|0)){_=0;e=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;L=_;_=0;if(L&1){R=25;break e}if((e|0)==-1){f[r>>2]=0;R=49;break}}if(!n)R=50}else R=49}while(0);if((R|0)==49?n:0)R=50;if((R|0)==50)f[s>>2]=f[s>>2]|2;L=f[i>>2]|0;Oh(T);Oh(C);c=S;return L|0}else R=25}else R=25}while(0);if((R|0)==25)e=ze()|0;Oh(T);Oh(C);$e(e|0);return 0}function Yw(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0;S=c;c=c+240|0;v=S+202|0;o=S+200|0;C=S+24|0;T=S+12|0;g=S+8|0;E=S+40|0;A=S+4|0;y=S;p=gw(n)|0;sk(C,n,v,o);f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;if(!(t[T>>0]&1))e=10;else e=(f[T>>2]&-2)+-1|0;_=0;Ae(8,T|0,e|0,0);m=_;_=0;e:do{if(!(m&1)){k=T+8|0;w=T+1|0;n=(t[T>>0]&1)==0?w:f[k>>2]|0;f[g>>2]=n;f[A>>2]=E;f[y>>2]=0;m=T+4|0;b=t[o>>0]|0;e=f[i>>2]|0;i:while(1){if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;o=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;d=_;_=0;if(d&1){R=24;break}if((o|0)==-1){f[i>>2]=0;e=0}}}else e=0;o=(e|0)==0;u=f[r>>2]|0;do{if(u){if((f[u+12>>2]|0)!=(f[u+16>>2]|0))if(o)break;else break i;_=0;h=de(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;d=_;_=0;if(d&1){R=24;break i}if((h|0)!=-1)if(o)break;else break i;else{f[r>>2]=0;R=16;break}}else R=16}while(0);if((R|0)==16){R=0;if(o){u=0;break}else u=0}o=t[T>>0]|0;o=(o&1)==0?(o&255)>>>1:f[m>>2]|0;if((f[g>>2]|0)==(n+o|0)){_=0;Ae(8,T|0,o<<1|0,0);d=_;_=0;if(d&1){R=24;break}if(!(t[T>>0]&1))n=10;else n=(f[T>>2]&-2)+-1|0;_=0;Ae(8,T|0,n|0,0);d=_;_=0;if(d&1){R=24;break}n=(t[T>>0]&1)==0?w:f[k>>2]|0;f[g>>2]=n+o}h=e+12|0;o=f[h>>2]|0;d=e+16|0;if((o|0)==(f[d>>2]|0)){_=0;o=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=24;break}}else o=a[o>>0]|0;if(Xb(o&255,p,n,g,y,b,C,E,A,v)|0)break;o=f[h>>2]|0;if((o|0)==(f[d>>2]|0)){_=0;de(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=24;break}else continue}else{f[h>>2]=o+1;continue}}if((R|0)==24){e=ze()|0;break}L=t[C>>0]|0;if((((L&1)==0?(L&255)>>>1:f[C+4>>2]|0)|0)!=0?(M=f[A>>2]|0,(M-E|0)<160):0){L=f[y>>2]|0;f[A>>2]=M+4;f[M>>2]=L}_=0;n=Ee(26,n|0,f[g>>2]|0,s|0,p|0)|0;o=P;L=_;_=0;if(!(L&1)){L=l;f[L>>2]=n;f[L+4>>2]=o;Ko(C,E,f[A>>2]|0,s);if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;n=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;L=_;_=0;if(L&1){R=25;break}if((n|0)==-1){f[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(u){if((f[u+12>>2]|0)==(f[u+16>>2]|0)){_=0;e=de(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;L=_;_=0;if(L&1){R=25;break e}if((e|0)==-1){f[r>>2]=0;R=49;break}}if(!n)R=50}else R=49}while(0);if((R|0)==49?n:0)R=50;if((R|0)==50)f[s>>2]=f[s>>2]|2;L=f[i>>2]|0;Oh(T);Oh(C);c=S;return L|0}else R=25}else R=25}while(0);if((R|0)==25)e=ze()|0;Oh(T);Oh(C);$e(e|0);return 0}function qw(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var u=0.0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0;L=c;c=c+240|0;y=L+208|0;h=L+203|0;d=L+202|0;P=L+24|0;x=L+12|0;E=L+8|0;C=L+40|0;R=L+4|0;A=L;S=L+201|0;M=L+200|0;lk(P,n,y,h,d);f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;if(!(t[x>>0]&1))e=10;else e=(f[x>>2]&-2)+-1|0;_=0;Ae(8,x|0,e|0,0);g=_;_=0;e:do{if(!(g&1)){v=x+8|0;p=x+1|0;n=(t[x>>0]&1)==0?p:f[v>>2]|0;f[E>>2]=n;f[R>>2]=C;f[A>>2]=0;t[S>>0]=1;t[M>>0]=69;g=x+4|0;m=t[h>>0]|0;w=t[d>>0]|0;e=f[i>>2]|0;i:while(1){if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;h=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;k=_;_=0;if(k&1){O=24;break}if((h|0)==-1){f[i>>2]=0;e=0}}}else e=0;d=(e|0)==0;h=f[r>>2]|0;do{if(h){if((f[h+12>>2]|0)!=(f[h+16>>2]|0))if(d)break;else break i;_=0;b=de(f[(f[h>>2]|0)+36>>2]|0,h|0)|0;k=_;_=0;if(k&1){O=24;break i}if((b|0)!=-1)if(d)break;else break i;else{f[r>>2]=0;O=16;break}}else O=16}while(0);if((O|0)==16){O=0;if(d){h=0;break}else h=0}d=t[x>>0]|0;d=(d&1)==0?(d&255)>>>1:f[g>>2]|0;if((f[E>>2]|0)==(n+d|0)){_=0;Ae(8,x|0,d<<1|0,0);k=_;_=0;if(k&1){O=24;break}if(!(t[x>>0]&1))n=10;else n=(f[x>>2]&-2)+-1|0;_=0;Ae(8,x|0,n|0,0);k=_;_=0;if(k&1){O=24;break}n=(t[x>>0]&1)==0?p:f[v>>2]|0;f[E>>2]=n+d}b=e+12|0;d=f[b>>2]|0;k=e+16|0;if((d|0)==(f[k>>2]|0)){_=0;d=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;B=_;_=0;if(B&1){O=24;break}}else d=a[d>>0]|0;if(ok(d&255,S,M,n,E,m,w,P,C,R,A,y)|0)break;h=f[b>>2]|0;if((h|0)==(f[k>>2]|0)){_=0;de(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;B=_;_=0;if(B&1){O=24;break}else continue}else{f[b>>2]=h+1;continue}}if((O|0)==24){e=ze()|0;break}B=t[P>>0]|0;if(!((t[S>>0]|0)==0?1:(((B&1)==0?(B&255)>>>1:f[P+4>>2]|0)|0)==0)?(T=f[R>>2]|0,(T-C|0)<160):0){B=f[A>>2]|0;f[R>>2]=T+4;f[T>>2]=B}_=0;u=+ye(1,n|0,f[E>>2]|0,s|0);B=_;_=0;if(!(B&1)){o[l>>2]=u;Ko(P,C,f[R>>2]|0,s);if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;n=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;B=_;_=0;if(B&1){O=25;break}if((n|0)==-1){f[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(h){if((f[h+12>>2]|0)==(f[h+16>>2]|0)){_=0;e=de(f[(f[h>>2]|0)+36>>2]|0,h|0)|0;B=_;_=0;if(B&1){O=25;break e}if((e|0)==-1){f[r>>2]=0;O=49;break}}if(!n)O=50}else O=49}while(0);if((O|0)==49?n:0)O=50;if((O|0)==50)f[s>>2]=f[s>>2]|2;B=f[i>>2]|0;Oh(x);Oh(P);c=L;return B|0}else O=25}else O=25}while(0);if((O|0)==25)e=ze()|0;Oh(x);Oh(P);$e(e|0);return 0}function Xw(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0.0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0;L=c;c=c+240|0;y=L+208|0;h=L+203|0;d=L+202|0;P=L+24|0;x=L+12|0;E=L+8|0;C=L+40|0;R=L+4|0;A=L;S=L+201|0;M=L+200|0;lk(P,n,y,h,d);f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;if(!(t[x>>0]&1))e=10;else e=(f[x>>2]&-2)+-1|0;_=0;Ae(8,x|0,e|0,0);g=_;_=0;e:do{if(!(g&1)){v=x+8|0;p=x+1|0;n=(t[x>>0]&1)==0?p:f[v>>2]|0;f[E>>2]=n;f[R>>2]=C;f[A>>2]=0;t[S>>0]=1;t[M>>0]=69;g=x+4|0;m=t[h>>0]|0;w=t[d>>0]|0;e=f[i>>2]|0;i:while(1){if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;h=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;k=_;_=0;if(k&1){O=24;break}if((h|0)==-1){f[i>>2]=0;e=0}}}else e=0;d=(e|0)==0;h=f[r>>2]|0;do{if(h){if((f[h+12>>2]|0)!=(f[h+16>>2]|0))if(d)break;else break i;_=0;b=de(f[(f[h>>2]|0)+36>>2]|0,h|0)|0;k=_;_=0;if(k&1){O=24;break i}if((b|0)!=-1)if(d)break;else break i;else{f[r>>2]=0;O=16;break}}else O=16}while(0);if((O|0)==16){O=0;if(d){h=0;break}else h=0}d=t[x>>0]|0;d=(d&1)==0?(d&255)>>>1:f[g>>2]|0;if((f[E>>2]|0)==(n+d|0)){_=0;Ae(8,x|0,d<<1|0,0);k=_;_=0;if(k&1){O=24;break}if(!(t[x>>0]&1))n=10;else n=(f[x>>2]&-2)+-1|0;_=0;Ae(8,x|0,n|0,0);k=_;_=0;if(k&1){O=24;break}n=(t[x>>0]&1)==0?p:f[v>>2]|0;f[E>>2]=n+d}b=e+12|0;d=f[b>>2]|0;k=e+16|0;if((d|0)==(f[k>>2]|0)){_=0;d=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;B=_;_=0;if(B&1){O=24;break}}else d=a[d>>0]|0;if(ok(d&255,S,M,n,E,m,w,P,C,R,A,y)|0)break;h=f[b>>2]|0;if((h|0)==(f[k>>2]|0)){_=0;de(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;B=_;_=0;if(B&1){O=24;break}else continue}else{f[b>>2]=h+1;continue}}if((O|0)==24){e=ze()|0;break}B=t[P>>0]|0;if(!((t[S>>0]|0)==0?1:(((B&1)==0?(B&255)>>>1:f[P+4>>2]|0)|0)==0)?(T=f[R>>2]|0,(T-C|0)<160):0){B=f[A>>2]|0;f[R>>2]=T+4;f[T>>2]=B}_=0;o=+ye(2,n|0,f[E>>2]|0,s|0);B=_;_=0;if(!(B&1)){u[l>>3]=o;Ko(P,C,f[R>>2]|0,s);if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;n=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;B=_;_=0;if(B&1){O=25;break}if((n|0)==-1){f[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(h){if((f[h+12>>2]|0)==(f[h+16>>2]|0)){_=0;e=de(f[(f[h>>2]|0)+36>>2]|0,h|0)|0;B=_;_=0;if(B&1){O=25;break e}if((e|0)==-1){f[r>>2]=0;O=49;break}}if(!n)O=50}else O=49}while(0);if((O|0)==49?n:0)O=50;if((O|0)==50)f[s>>2]=f[s>>2]|2;B=f[i>>2]|0;Oh(x);Oh(P);c=L;return B|0}else O=25}else O=25}while(0);if((O|0)==25)e=ze()|0;Oh(x);Oh(P);$e(e|0);return 0}function Vw(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0.0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0,B=0;L=c;c=c+240|0;y=L+208|0;h=L+203|0;d=L+202|0;P=L+24|0;x=L+12|0;E=L+8|0;C=L+40|0;R=L+4|0;A=L;S=L+201|0;M=L+200|0;lk(P,n,y,h,d);f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;if(!(t[x>>0]&1))e=10;else e=(f[x>>2]&-2)+-1|0;_=0;Ae(8,x|0,e|0,0);g=_;_=0;e:do{if(!(g&1)){v=x+8|0;p=x+1|0;n=(t[x>>0]&1)==0?p:f[v>>2]|0;f[E>>2]=n;f[R>>2]=C;f[A>>2]=0;t[S>>0]=1;t[M>>0]=69;g=x+4|0;m=t[h>>0]|0;w=t[d>>0]|0;e=f[i>>2]|0;i:while(1){if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;h=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;k=_;_=0;if(k&1){O=24;break}if((h|0)==-1){f[i>>2]=0;e=0}}}else e=0;d=(e|0)==0;h=f[r>>2]|0;do{if(h){if((f[h+12>>2]|0)!=(f[h+16>>2]|0))if(d)break;else break i;_=0;b=de(f[(f[h>>2]|0)+36>>2]|0,h|0)|0;k=_;_=0;if(k&1){O=24;break i}if((b|0)!=-1)if(d)break;else break i;else{f[r>>2]=0;O=16;break}}else O=16}while(0);if((O|0)==16){O=0;if(d){h=0;break}else h=0}d=t[x>>0]|0;d=(d&1)==0?(d&255)>>>1:f[g>>2]|0;if((f[E>>2]|0)==(n+d|0)){_=0;Ae(8,x|0,d<<1|0,0);k=_;_=0;if(k&1){O=24;break}if(!(t[x>>0]&1))n=10;else n=(f[x>>2]&-2)+-1|0;_=0;Ae(8,x|0,n|0,0);k=_;_=0;if(k&1){O=24;break}n=(t[x>>0]&1)==0?p:f[v>>2]|0;f[E>>2]=n+d}b=e+12|0;d=f[b>>2]|0;k=e+16|0;if((d|0)==(f[k>>2]|0)){_=0;d=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;B=_;_=0;if(B&1){O=24;break}}else d=a[d>>0]|0;if(ok(d&255,S,M,n,E,m,w,P,C,R,A,y)|0)break;h=f[b>>2]|0;if((h|0)==(f[k>>2]|0)){_=0;de(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;B=_;_=0;if(B&1){O=24;break}else continue}else{f[b>>2]=h+1;continue}}if((O|0)==24){e=ze()|0;break}B=t[P>>0]|0;if(!((t[S>>0]|0)==0?1:(((B&1)==0?(B&255)>>>1:f[P+4>>2]|0)|0)==0)?(T=f[R>>2]|0,(T-C|0)<160):0){B=f[A>>2]|0;f[R>>2]=T+4;f[T>>2]=B}_=0;o=+ye(3,n|0,f[E>>2]|0,s|0);B=_;_=0;if(!(B&1)){u[l>>3]=o;Ko(P,C,f[R>>2]|0,s);if(e){if((f[e+12>>2]|0)==(f[e+16>>2]|0)){_=0;n=de(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;B=_;_=0;if(B&1){O=25;break}if((n|0)==-1){f[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(h){if((f[h+12>>2]|0)==(f[h+16>>2]|0)){_=0;e=de(f[(f[h>>2]|0)+36>>2]|0,h|0)|0;B=_;_=0;if(B&1){O=25;break e}if((e|0)==-1){f[r>>2]=0;O=49;break}}if(!n)O=50}else O=49}while(0);if((O|0)==49?n:0)O=50;if((O|0)==50)f[s>>2]=f[s>>2]|2;B=f[i>>2]|0;Oh(x);Oh(P);c=L;return B|0}else O=25}else O=25}while(0);if((O|0)==25)e=ze()|0;Oh(x);Oh(P);$e(e|0);return 0}function Gw(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0;n=c;c=c+16|0;a=n;f[a>>2]=t;t=Wg(i)|0;i=Fy(e,r,a)|0;if((t|0)!=0?(_=0,de(75,t|0)|0,a=_,_=0,a&1):0){a=ze(0)|0;Fi(a)}c=n;return i|0}function Kw(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;E=c;c=c+112|0;u=E;d=(n-r|0)/12|0;do{if(d>>>0>100){u=Lc(d)|0;if((u|0)==0?(_=0,Se(6),M=_,_=0,M&1):0){o=0;k=6;break}o=u;k=11}else{o=0;k=11}}while(0);e:do{if((k|0)==11){if((r|0)==(n|0))h=0;else{w=r;b=0;k=u;while(1){h=t[w>>0]|0;if(!(h&1))h=(h&255)>>>1;else h=f[w+4>>2]|0;if(!h){t[k>>0]=2;h=b+1|0;d=d+-1|0}else{t[k>>0]=1;h=b}w=w+12|0;if((w|0)==(n|0))break;else{b=h;k=k+1|0}}}y=(r|0)==(n|0);M=(r|0)==(n|0);g=0;m=d;i:while(1){d=f[e>>2]|0;do{if(d){b=f[d+12>>2]|0;if((b|0)==(f[d+16>>2]|0)){_=0;d=de(f[(f[d>>2]|0)+36>>2]|0,d|0)|0;p=_;_=0;if(p&1){k=5;break i}}else d=f[b>>2]|0;if((d|0)==-1){f[e>>2]=0;w=1;break}else{w=(f[e>>2]|0)==0;break}}else w=1}while(0);b=f[i>>2]|0;if(b){d=f[b+12>>2]|0;if((d|0)==(f[b+16>>2]|0)){_=0;d=de(f[(f[b>>2]|0)+36>>2]|0,b|0)|0;p=_;_=0;if(p&1){k=5;break}}else d=f[d>>2]|0;if((d|0)==-1){f[i>>2]=0;b=0;k=1}else k=0}else{b=0;k=1}d=f[e>>2]|0;if(!((m|0)!=0&(w^k))){k=66;break}b=f[d+12>>2]|0;if((b|0)==(f[d+16>>2]|0)){_=0;d=de(f[(f[d>>2]|0)+36>>2]|0,d|0)|0;p=_;_=0;if(p&1){k=5;break}}else d=f[b>>2]|0;if(!l){_=0;d=pe(f[(f[a>>2]|0)+28>>2]|0,a|0,d|0)|0;p=_;_=0;if(p&1){k=5;break}}p=g+1|0;if(y){d=0;w=m}else{w=0;v=r;k=m;m=u;while(1){do{if((t[m>>0]|0)==1){if(!(t[v>>0]&1))b=v+4|0;else b=f[v+8>>2]|0;b=f[b+(g<<2)>>2]|0;if(!l){_=0;b=pe(f[(f[a>>2]|0)+28>>2]|0,a|0,b|0)|0;A=_;_=0;if(A&1){k=4;break i}}if((d|0)!=(b|0)){t[m>>0]=0;b=w;k=k+-1|0;break}b=t[v>>0]|0;if(!(b&1))b=(b&255)>>>1;else b=f[v+4>>2]|0;if((b|0)==(p|0)){t[m>>0]=2;b=1;h=h+1|0;k=k+-1|0}else b=1}else b=w}while(0);v=v+12|0;if((v|0)==(n|0)){d=b;w=k;break}else{w=b;m=m+1|0}}}if(!d){g=p;m=w;continue}d=f[e>>2]|0;b=d+12|0;k=f[b>>2]|0;if((k|0)==(f[d+16>>2]|0)){_=0;de(f[(f[d>>2]|0)+40>>2]|0,d|0)|0;A=_;_=0;if(A&1){k=5;break}}else f[b>>2]=k+4;if((h+w|0)>>>0<2|M){g=p;m=w;continue}else{d=r;k=u}while(1){if((t[k>>0]|0)==2){b=t[d>>0]|0;if(!(b&1))b=(b&255)>>>1;else b=f[d+4>>2]|0;if((b|0)!=(p|0)){t[k>>0]=0;h=h+-1|0}}d=d+12|0;if((d|0)==(n|0)){g=p;m=w;continue i}else k=k+1|0}}if((k|0)==4){r=ze()|0;break}else if((k|0)==5){r=ze()|0;break}else if((k|0)==66){do{if(d){h=f[d+12>>2]|0;if((h|0)==(f[d+16>>2]|0)){_=0;h=de(f[(f[d>>2]|0)+36>>2]|0,d|0)|0;A=_;_=0;if(A&1){k=6;break e}}else h=f[h>>2]|0;if((h|0)==-1){f[e>>2]=0;d=1;break}else{d=(f[e>>2]|0)==0;break}}else d=1}while(0);do{if(b){h=f[b+12>>2]|0;if((h|0)==(f[b+16>>2]|0)){_=0;h=de(f[(f[b>>2]|0)+36>>2]|0,b|0)|0;A=_;_=0;if(A&1){k=6;break e}}else h=f[h>>2]|0;if((h|0)!=-1)if(d)break;else{k=81;break}else{f[i>>2]=0;k=79;break}}else k=79}while(0);if((k|0)==79?d:0)k=81;if((k|0)==81)f[s>>2]=f[s>>2]|2;i:do{if((r|0)==(n|0))k=85;else while(1){if((t[u>>0]|0)==2)break i;r=r+12|0;if((r|0)==(n|0)){k=85;break}else u=u+1|0}}while(0);if((k|0)==85){f[s>>2]=f[s>>2]|4;r=n}if(o)xc(o);c=E;return r|0}}}while(0);if((k|0)==6)r=ze()|0;if(o)xc(o);$e(r|0);return 0}function Ww(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;A=c;c=c+320|0;m=A+208|0;l=A+200|0;T=A+24|0;S=A+12|0;p=A+8|0;M=A+40|0;E=A+4|0;g=A;v=gw(n)|0;uk(T,n,m,l);f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;if(!(t[S>>0]&1))e=10;else e=(f[S>>2]&-2)+-1|0;_=0;Ae(8,S|0,e|0,0);w=_;_=0;e:do{if(!(w&1)){b=S+8|0;k=S+1|0;e=(t[S>>0]&1)==0?k:f[b>>2]|0;f[p>>2]=e;f[E>>2]=M;f[g>>2]=0;w=S+4|0;d=f[l>>2]|0;l=f[i>>2]|0;i:while(1){if(l){n=f[l+12>>2]|0;if((n|0)==(f[l+16>>2]|0)){_=0;n=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;h=_;_=0;if(h&1){C=25;break}}else n=f[n>>2]|0;if((n|0)==-1){f[i>>2]=0;n=0;o=1}else{n=l;o=0}}else{n=0;o=1}u=f[r>>2]|0;do{if(u){l=f[u+12>>2]|0;if((l|0)==(f[u+16>>2]|0)){_=0;l=de(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;h=_;_=0;if(h&1){C=25;break i}}else l=f[l>>2]|0;if((l|0)!=-1)if(o)break;else{l=u;break i}else{f[r>>2]=0;C=17;break}}else C=17}while(0);if((C|0)==17){C=0;if(o){l=0;break}else u=0}l=t[S>>0]|0;l=(l&1)==0?(l&255)>>>1:f[w>>2]|0;if((f[p>>2]|0)==(e+l|0)){_=0;Ae(8,S|0,l<<1|0,0);h=_;_=0;if(h&1){C=25;break}if(!(t[S>>0]&1))e=10;else e=(f[S>>2]&-2)+-1|0;_=0;Ae(8,S|0,e|0,0);h=_;_=0;if(h&1){C=25;break}e=(t[S>>0]&1)==0?k:f[b>>2]|0;f[p>>2]=e+l}o=n+12|0;l=f[o>>2]|0;h=n+16|0;if((l|0)==(f[h>>2]|0)){_=0;l=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;R=_;_=0;if(R&1){C=25;break}}else l=f[l>>2]|0;if(ak(l,v,e,p,g,d,T,M,E,m)|0){l=u;break}l=f[o>>2]|0;if((l|0)==(f[h>>2]|0)){_=0;de(f[(f[n>>2]|0)+40>>2]|0,n|0)|0;R=_;_=0;if(R&1){C=25;break}else{l=n;continue}}else{f[o>>2]=l+4;l=n;continue}}if((C|0)==25){e=ze()|0;break}R=t[T>>0]|0;if((((R&1)==0?(R&255)>>>1:f[T+4>>2]|0)|0)!=0?(y=f[E>>2]|0,(y-M|0)<160):0){R=f[g>>2]|0;f[E>>2]=y+4;f[y>>2]=R}_=0;e=Ee(21,e|0,f[p>>2]|0,a|0,v|0)|0;R=_;_=0;if(!(R&1)){f[s>>2]=e;Ko(T,M,f[E>>2]|0,a);if(n){e=f[n+12>>2]|0;if((e|0)==(f[n+16>>2]|0)){_=0;e=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;R=_;_=0;if(R&1){C=26;break}}else e=f[e>>2]|0;if((e|0)==-1){f[i>>2]=0;n=1}else n=0}else n=1;do{if(l){e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0)){_=0;e=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;R=_;_=0;if(R&1){C=26;break e}}else e=f[e>>2]|0;if((e|0)!=-1)if(n)break;else{C=53;break}else{f[r>>2]=0;C=51;break}}else C=51}while(0);if((C|0)==51?n:0)C=53;if((C|0)==53)f[a>>2]=f[a>>2]|2;R=f[i>>2]|0;Oh(S);Oh(T);c=A;return R|0}else C=26}else C=26}while(0);if((C|0)==26)e=ze()|0;Oh(S);Oh(T);$e(e|0);return 0}function Zw(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;A=c;c=c+320|0;m=A+208|0;l=A+200|0;T=A+24|0;S=A+12|0;p=A+8|0;M=A+40|0;E=A+4|0;g=A;v=gw(n)|0;uk(T,n,m,l);f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;if(!(t[S>>0]&1))e=10;else e=(f[S>>2]&-2)+-1|0;_=0;Ae(8,S|0,e|0,0);w=_;_=0;e:do{if(!(w&1)){b=S+8|0;k=S+1|0;e=(t[S>>0]&1)==0?k:f[b>>2]|0;f[p>>2]=e;f[E>>2]=M;f[g>>2]=0;w=S+4|0;d=f[l>>2]|0;l=f[i>>2]|0;i:while(1){if(l){n=f[l+12>>2]|0;if((n|0)==(f[l+16>>2]|0)){_=0;n=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;h=_;_=0;if(h&1){C=25;break}}else n=f[n>>2]|0;if((n|0)==-1){f[i>>2]=0;l=0;u=1}else u=0}else{l=0;u=1}o=f[r>>2]|0;do{if(o){n=f[o+12>>2]|0;if((n|0)==(f[o+16>>2]|0)){_=0;n=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;h=_;_=0;if(h&1){C=25;break i}}else n=f[n>>2]|0;if((n|0)!=-1)if(u)break;else break i;else{f[r>>2]=0;C=17;break}}else C=17}while(0);if((C|0)==17){C=0;if(u){o=0;break}else o=0}n=t[S>>0]|0;n=(n&1)==0?(n&255)>>>1:f[w>>2]|0;if((f[p>>2]|0)==(e+n|0)){_=0;Ae(8,S|0,n<<1|0,0);h=_;_=0;if(h&1){C=25;break}if(!(t[S>>0]&1))e=10;else e=(f[S>>2]&-2)+-1|0;_=0;Ae(8,S|0,e|0,0);h=_;_=0;if(h&1){C=25;break}e=(t[S>>0]&1)==0?k:f[b>>2]|0;f[p>>2]=e+n}u=l+12|0;n=f[u>>2]|0;h=l+16|0;if((n|0)==(f[h>>2]|0)){_=0;n=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;R=_;_=0;if(R&1){C=25;break}}else n=f[n>>2]|0;if(ak(n,v,e,p,g,d,T,M,E,m)|0)break;n=f[u>>2]|0;if((n|0)==(f[h>>2]|0)){_=0;de(f[(f[l>>2]|0)+40>>2]|0,l|0)|0;R=_;_=0;if(R&1){C=25;break}else continue}else{f[u>>2]=n+4;continue}}if((C|0)==25){e=ze()|0;break}R=t[T>>0]|0;if((((R&1)==0?(R&255)>>>1:f[T+4>>2]|0)|0)!=0?(y=f[E>>2]|0,(y-M|0)<160):0){R=f[g>>2]|0;f[E>>2]=y+4;f[y>>2]=R}_=0;e=Ee(22,e|0,f[p>>2]|0,a|0,v|0)|0;n=P;R=_;_=0;if(!(R&1)){R=s;f[R>>2]=e;f[R+4>>2]=n;Ko(T,M,f[E>>2]|0,a);if(l){e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0)){_=0;e=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;R=_;_=0;if(R&1){C=26;break}}else e=f[e>>2]|0;if((e|0)==-1){f[i>>2]=0;n=1}else n=0}else n=1;do{if(o){e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0)){_=0;e=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;R=_;_=0;if(R&1){C=26;break e}}else e=f[e>>2]|0;if((e|0)!=-1)if(n)break;else{C=53;break}else{f[r>>2]=0;C=51;break}}else C=51}while(0);if((C|0)==51?n:0)C=53;if((C|0)==53)f[a>>2]=f[a>>2]|2;R=f[i>>2]|0;Oh(S);Oh(T);c=A;return R|0}else C=26}else C=26}while(0);if((C|0)==26)e=ze()|0;Oh(S);Oh(T);$e(e|0);return 0}function Jw(e,i,r,a,s,l){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0;S=c;c=c+320|0;v=S+208|0;o=S+200|0;C=S+24|0;T=S+12|0;g=S+8|0;E=S+40|0;A=S+4|0;y=S;p=gw(a)|0;uk(C,a,v,o);f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;if(!(t[T>>0]&1))e=10;else e=(f[T>>2]&-2)+-1|0;_=0;Ae(8,T|0,e|0,0);m=_;_=0;e:do{if(!(m&1)){k=T+8|0;w=T+1|0;e=(t[T>>0]&1)==0?w:f[k>>2]|0;f[g>>2]=e;f[A>>2]=E;f[y>>2]=0;m=T+4|0;b=f[o>>2]|0;o=f[i>>2]|0;i:while(1){if(o){a=f[o+12>>2]|0;if((a|0)==(f[o+16>>2]|0)){_=0;a=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;d=_;_=0;if(d&1){R=25;break}}else a=f[a>>2]|0;if((a|0)==-1){f[i>>2]=0;a=0;u=1}else{a=o;u=0}}else{a=0;u=1}h=f[r>>2]|0;do{if(h){o=f[h+12>>2]|0;if((o|0)==(f[h+16>>2]|0)){_=0;o=de(f[(f[h>>2]|0)+36>>2]|0,h|0)|0;d=_;_=0;if(d&1){R=25;break i}}else o=f[o>>2]|0;if((o|0)!=-1)if(u)break;else{o=h;break i}else{f[r>>2]=0;R=17;break}}else R=17}while(0);if((R|0)==17){R=0;if(u){o=0;break}else h=0}o=t[T>>0]|0;o=(o&1)==0?(o&255)>>>1:f[m>>2]|0;if((f[g>>2]|0)==(e+o|0)){_=0;Ae(8,T|0,o<<1|0,0);d=_;_=0;if(d&1){R=25;break}if(!(t[T>>0]&1))e=10;else e=(f[T>>2]&-2)+-1|0;_=0;Ae(8,T|0,e|0,0);d=_;_=0;if(d&1){R=25;break}e=(t[T>>0]&1)==0?w:f[k>>2]|0;f[g>>2]=e+o}u=a+12|0;o=f[u>>2]|0;d=a+16|0;if((o|0)==(f[d>>2]|0)){_=0;o=de(f[(f[a>>2]|0)+36>>2]|0,a|0)|0;L=_;_=0;if(L&1){R=25;break}}else o=f[o>>2]|0;if(ak(o,p,e,g,y,b,C,E,A,v)|0){o=h;break}o=f[u>>2]|0;if((o|0)==(f[d>>2]|0)){_=0;de(f[(f[a>>2]|0)+40>>2]|0,a|0)|0;L=_;_=0;if(L&1){R=25;break}else{o=a;continue}}else{f[u>>2]=o+4;o=a;continue}}if((R|0)==25){e=ze()|0;break}L=t[C>>0]|0;if((((L&1)==0?(L&255)>>>1:f[C+4>>2]|0)|0)!=0?(M=f[A>>2]|0,(M-E|0)<160):0){L=f[y>>2]|0;f[A>>2]=M+4;f[M>>2]=L}_=0;e=Ee(23,e|0,f[g>>2]|0,s|0,p|0)|0;L=_;_=0;if(!(L&1)){n[l>>1]=e;Ko(C,E,f[A>>2]|0,s);if(a){e=f[a+12>>2]|0;if((e|0)==(f[a+16>>2]|0)){_=0;e=de(f[(f[a>>2]|0)+36>>2]|0,a|0)|0;L=_;_=0;if(L&1){R=26;break}}else e=f[e>>2]|0;if((e|0)==-1){f[i>>2]=0;a=1}else a=0}else a=1;do{if(o){e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0)){_=0;e=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;L=_;_=0;if(L&1){R=26;break e}}else e=f[e>>2]|0;if((e|0)!=-1)if(a)break;else{R=53;break}else{f[r>>2]=0;R=51;break}}else R=51}while(0);if((R|0)==51?a:0)R=53;if((R|0)==53)f[s>>2]=f[s>>2]|2;L=f[i>>2]|0;Oh(T);Oh(C);c=S;return L|0}else R=26}else R=26}while(0);if((R|0)==26)e=ze()|0;Oh(T);Oh(C);$e(e|0);return 0}function Qw(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;A=c;c=c+320|0;m=A+208|0;l=A+200|0;T=A+24|0;S=A+12|0;p=A+8|0;M=A+40|0;E=A+4|0;g=A;v=gw(n)|0;uk(T,n,m,l);f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;if(!(t[S>>0]&1))e=10;else e=(f[S>>2]&-2)+-1|0;_=0;Ae(8,S|0,e|0,0);w=_;_=0;e:do{if(!(w&1)){b=S+8|0;k=S+1|0;e=(t[S>>0]&1)==0?k:f[b>>2]|0;f[p>>2]=e;f[E>>2]=M;f[g>>2]=0;w=S+4|0;d=f[l>>2]|0;l=f[i>>2]|0;i:while(1){if(l){n=f[l+12>>2]|0;if((n|0)==(f[l+16>>2]|0)){_=0;n=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;h=_;_=0;if(h&1){C=25;break}}else n=f[n>>2]|0;if((n|0)==-1){f[i>>2]=0;n=0;o=1}else{n=l;o=0}}else{n=0;o=1}u=f[r>>2]|0;do{if(u){l=f[u+12>>2]|0;if((l|0)==(f[u+16>>2]|0)){_=0;l=de(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;h=_;_=0;if(h&1){C=25;break i}}else l=f[l>>2]|0;if((l|0)!=-1)if(o)break;else{l=u;break i}else{f[r>>2]=0;C=17;break}}else C=17}while(0);if((C|0)==17){C=0;if(o){l=0;break}else u=0}l=t[S>>0]|0;l=(l&1)==0?(l&255)>>>1:f[w>>2]|0;if((f[p>>2]|0)==(e+l|0)){_=0;Ae(8,S|0,l<<1|0,0);h=_;_=0;if(h&1){C=25;break}if(!(t[S>>0]&1))e=10;else e=(f[S>>2]&-2)+-1|0;_=0;Ae(8,S|0,e|0,0);h=_;_=0;if(h&1){C=25;break}e=(t[S>>0]&1)==0?k:f[b>>2]|0;f[p>>2]=e+l}o=n+12|0;l=f[o>>2]|0;h=n+16|0;if((l|0)==(f[h>>2]|0)){_=0;l=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;R=_;_=0;if(R&1){C=25;break}}else l=f[l>>2]|0;if(ak(l,v,e,p,g,d,T,M,E,m)|0){l=u;break}l=f[o>>2]|0;if((l|0)==(f[h>>2]|0)){_=0;de(f[(f[n>>2]|0)+40>>2]|0,n|0)|0;R=_;_=0;if(R&1){C=25;break}else{l=n;continue}}else{f[o>>2]=l+4;l=n;continue}}if((C|0)==25){e=ze()|0;break}R=t[T>>0]|0;if((((R&1)==0?(R&255)>>>1:f[T+4>>2]|0)|0)!=0?(y=f[E>>2]|0,(y-M|0)<160):0){R=f[g>>2]|0;f[E>>2]=y+4;f[y>>2]=R}_=0;e=Ee(24,e|0,f[p>>2]|0,a|0,v|0)|0;R=_;_=0;if(!(R&1)){f[s>>2]=e;Ko(T,M,f[E>>2]|0,a);if(n){e=f[n+12>>2]|0;if((e|0)==(f[n+16>>2]|0)){_=0;e=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;R=_;_=0;if(R&1){C=26;break}}else e=f[e>>2]|0;if((e|0)==-1){f[i>>2]=0;n=1}else n=0}else n=1;do{if(l){e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0)){_=0;e=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;R=_;_=0;if(R&1){C=26;break e}}else e=f[e>>2]|0;if((e|0)!=-1)if(n)break;else{C=53;break}else{f[r>>2]=0;C=51;break}}else C=51}while(0);if((C|0)==51?n:0)C=53;if((C|0)==53)f[a>>2]=f[a>>2]|2;R=f[i>>2]|0;Oh(S);Oh(T);c=A;return R|0}else C=26}else C=26}while(0);if((C|0)==26)e=ze()|0;Oh(S);Oh(T);$e(e|0);return 0}function $w(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;A=c;c=c+320|0;m=A+208|0;l=A+200|0;T=A+24|0;S=A+12|0;p=A+8|0;M=A+40|0;E=A+4|0;g=A;v=gw(n)|0;uk(T,n,m,l);f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;if(!(t[S>>0]&1))e=10;else e=(f[S>>2]&-2)+-1|0;_=0;Ae(8,S|0,e|0,0);w=_;_=0;e:do{if(!(w&1)){b=S+8|0;k=S+1|0;e=(t[S>>0]&1)==0?k:f[b>>2]|0;f[p>>2]=e;f[E>>2]=M;f[g>>2]=0;w=S+4|0;d=f[l>>2]|0;l=f[i>>2]|0;i:while(1){if(l){n=f[l+12>>2]|0;if((n|0)==(f[l+16>>2]|0)){_=0;n=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;h=_;_=0;if(h&1){C=25;break}}else n=f[n>>2]|0;if((n|0)==-1){f[i>>2]=0;n=0;o=1}else{n=l;o=0}}else{n=0;o=1}u=f[r>>2]|0;do{if(u){l=f[u+12>>2]|0;if((l|0)==(f[u+16>>2]|0)){_=0;l=de(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;h=_;_=0;if(h&1){C=25;break i}}else l=f[l>>2]|0;if((l|0)!=-1)if(o)break;else{l=u;break i}else{f[r>>2]=0;C=17;break}}else C=17}while(0);if((C|0)==17){C=0;if(o){l=0;break}else u=0}l=t[S>>0]|0;l=(l&1)==0?(l&255)>>>1:f[w>>2]|0;if((f[p>>2]|0)==(e+l|0)){_=0;Ae(8,S|0,l<<1|0,0);h=_;_=0;if(h&1){C=25;break}if(!(t[S>>0]&1))e=10;else e=(f[S>>2]&-2)+-1|0;_=0;Ae(8,S|0,e|0,0);h=_;_=0;if(h&1){C=25;break}e=(t[S>>0]&1)==0?k:f[b>>2]|0;f[p>>2]=e+l}o=n+12|0;l=f[o>>2]|0;h=n+16|0;if((l|0)==(f[h>>2]|0)){_=0;l=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;R=_;_=0;if(R&1){C=25;break}}else l=f[l>>2]|0;if(ak(l,v,e,p,g,d,T,M,E,m)|0){l=u;break}l=f[o>>2]|0;if((l|0)==(f[h>>2]|0)){_=0;de(f[(f[n>>2]|0)+40>>2]|0,n|0)|0;R=_;_=0;if(R&1){C=25;break}else{l=n;continue}}else{f[o>>2]=l+4;l=n;continue}}if((C|0)==25){e=ze()|0;break}R=t[T>>0]|0;if((((R&1)==0?(R&255)>>>1:f[T+4>>2]|0)|0)!=0?(y=f[E>>2]|0,(y-M|0)<160):0){R=f[g>>2]|0;f[E>>2]=y+4;f[y>>2]=R}_=0;e=Ee(25,e|0,f[p>>2]|0,a|0,v|0)|0;R=_;_=0;if(!(R&1)){f[s>>2]=e;Ko(T,M,f[E>>2]|0,a);if(n){e=f[n+12>>2]|0;if((e|0)==(f[n+16>>2]|0)){_=0;e=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;R=_;_=0;if(R&1){C=26;break}}else e=f[e>>2]|0;if((e|0)==-1){f[i>>2]=0;n=1}else n=0}else n=1;do{if(l){e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0)){_=0;e=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;R=_;_=0;if(R&1){C=26;break e}}else e=f[e>>2]|0;if((e|0)!=-1)if(n)break;else{C=53;break}else{f[r>>2]=0;C=51;break}}else C=51}while(0);if((C|0)==51?n:0)C=53;if((C|0)==53)f[a>>2]=f[a>>2]|2;R=f[i>>2]|0;Oh(S);Oh(T);c=A;return R|0}else C=26}else C=26}while(0);if((C|0)==26)e=ze()|0;Oh(S);Oh(T);$e(e|0);return 0}function e_(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;A=c;c=c+320|0;m=A+208|0;l=A+200|0;T=A+24|0;S=A+12|0;p=A+8|0;M=A+40|0;E=A+4|0;g=A;v=gw(n)|0;uk(T,n,m,l);f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;if(!(t[S>>0]&1))e=10;else e=(f[S>>2]&-2)+-1|0;_=0;Ae(8,S|0,e|0,0);w=_;_=0;e:do{if(!(w&1)){b=S+8|0;k=S+1|0;e=(t[S>>0]&1)==0?k:f[b>>2]|0;f[p>>2]=e;f[E>>2]=M;f[g>>2]=0;w=S+4|0;d=f[l>>2]|0;l=f[i>>2]|0;i:while(1){if(l){n=f[l+12>>2]|0;if((n|0)==(f[l+16>>2]|0)){_=0;n=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;h=_;_=0;if(h&1){C=25;break}}else n=f[n>>2]|0;if((n|0)==-1){f[i>>2]=0;l=0;u=1}else u=0}else{l=0;u=1}o=f[r>>2]|0;do{if(o){n=f[o+12>>2]|0;if((n|0)==(f[o+16>>2]|0)){_=0;n=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;h=_;_=0;if(h&1){C=25;break i}}else n=f[n>>2]|0;if((n|0)!=-1)if(u)break;else break i;else{f[r>>2]=0;C=17;break}}else C=17}while(0);if((C|0)==17){C=0;if(u){o=0;break}else o=0}n=t[S>>0]|0;n=(n&1)==0?(n&255)>>>1:f[w>>2]|0;if((f[p>>2]|0)==(e+n|0)){_=0;Ae(8,S|0,n<<1|0,0);h=_;_=0;if(h&1){C=25;break}if(!(t[S>>0]&1))e=10;else e=(f[S>>2]&-2)+-1|0;_=0;Ae(8,S|0,e|0,0);h=_;_=0;if(h&1){C=25;break}e=(t[S>>0]&1)==0?k:f[b>>2]|0;f[p>>2]=e+n}u=l+12|0;n=f[u>>2]|0;h=l+16|0;if((n|0)==(f[h>>2]|0)){_=0;n=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;R=_;_=0;if(R&1){C=25;break}}else n=f[n>>2]|0;if(ak(n,v,e,p,g,d,T,M,E,m)|0)break;n=f[u>>2]|0;if((n|0)==(f[h>>2]|0)){_=0;de(f[(f[l>>2]|0)+40>>2]|0,l|0)|0;R=_;_=0;if(R&1){C=25;break}else continue}else{f[u>>2]=n+4;continue}}if((C|0)==25){e=ze()|0;break}R=t[T>>0]|0;if((((R&1)==0?(R&255)>>>1:f[T+4>>2]|0)|0)!=0?(y=f[E>>2]|0,(y-M|0)<160):0){R=f[g>>2]|0;f[E>>2]=y+4;f[y>>2]=R}_=0;e=Ee(26,e|0,f[p>>2]|0,a|0,v|0)|0;n=P;R=_;_=0;if(!(R&1)){R=s;f[R>>2]=e;f[R+4>>2]=n;Ko(T,M,f[E>>2]|0,a);if(l){e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0)){_=0;e=de(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;R=_;_=0;if(R&1){C=26;break}}else e=f[e>>2]|0;if((e|0)==-1){f[i>>2]=0;n=1}else n=0}else n=1;do{if(o){e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0)){_=0;e=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;R=_;_=0;if(R&1){C=26;break e}}else e=f[e>>2]|0;if((e|0)!=-1)if(n)break;else{C=53;break}else{f[r>>2]=0;C=51;break}}else C=51}while(0);if((C|0)==51?n:0)C=53;if((C|0)==53)f[a>>2]=f[a>>2]|2;R=f[i>>2]|0;Oh(S);Oh(T);c=A;return R|0}else C=26}else C=26}while(0);if((C|0)==26)e=ze()|0;Oh(S);Oh(T);$e(e|0);return 0}function i_(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0.0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0;R=c;c=c+352|0;g=R+208|0;u=R+40|0;h=R+36|0;x=R+24|0;L=R+12|0;M=R+8|0;T=R+48|0;C=R+4|0;E=R;A=R+337|0;y=R+336|0;ck(x,n,g,u,h);f[L>>2]=0;f[L+4>>2]=0;f[L+8>>2]=0;if(!(t[L>>0]&1))e=10;else e=(f[L>>2]&-2)+-1|0;_=0;Ae(8,L|0,e|0,0);p=_;_=0;e:do{if(!(p&1)){m=L+8|0;v=L+1|0;e=(t[L>>0]&1)==0?v:f[m>>2]|0;f[M>>2]=e;f[C>>2]=T;f[E>>2]=0;t[A>>0]=1;t[y>>0]=69;p=L+4|0;w=f[u>>2]|0;k=f[h>>2]|0;n=f[i>>2]|0;i:while(1){if(n){u=f[n+12>>2]|0;if((u|0)==(f[n+16>>2]|0)){_=0;u=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;b=_;_=0;if(b&1){P=25;break}}else u=f[u>>2]|0;if((u|0)==-1){f[i>>2]=0;n=0;d=1}else d=0}else{n=0;d=1}u=f[r>>2]|0;do{if(u){h=f[u+12>>2]|0;if((h|0)==(f[u+16>>2]|0)){_=0;h=de(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;b=_;_=0;if(b&1){P=25;break i}}else h=f[h>>2]|0;if((h|0)!=-1)if(d)break;else break i;else{f[r>>2]=0;P=17;break}}else P=17}while(0);if((P|0)==17){P=0;if(d){u=0;break}else u=0}h=t[L>>0]|0;h=(h&1)==0?(h&255)>>>1:f[p>>2]|0;if((f[M>>2]|0)==(e+h|0)){_=0;Ae(8,L|0,h<<1|0,0);b=_;_=0;if(b&1){P=25;break}if(!(t[L>>0]&1))e=10;else e=(f[L>>2]&-2)+-1|0;_=0;Ae(8,L|0,e|0,0);b=_;_=0;if(b&1){P=25;break}e=(t[L>>0]&1)==0?v:f[m>>2]|0;f[M>>2]=e+h}d=n+12|0;h=f[d>>2]|0;b=n+16|0;if((h|0)==(f[b>>2]|0)){_=0;h=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;O=_;_=0;if(O&1){P=25;break}}else h=f[h>>2]|0;if(hk(h,A,y,e,M,w,k,x,T,C,E,g)|0)break;u=f[d>>2]|0;if((u|0)==(f[b>>2]|0)){_=0;de(f[(f[n>>2]|0)+40>>2]|0,n|0)|0;O=_;_=0;if(O&1){P=25;break}else continue}else{f[d>>2]=u+4;continue}}if((P|0)==25){e=ze()|0;break}O=t[x>>0]|0;if(!((t[A>>0]|0)==0?1:(((O&1)==0?(O&255)>>>1:f[x+4>>2]|0)|0)==0)?(S=f[C>>2]|0,(S-T|0)<160):0){O=f[E>>2]|0;f[C>>2]=S+4;f[S>>2]=O}_=0;l=+ye(1,e|0,f[M>>2]|0,a|0);O=_;_=0;if(!(O&1)){o[s>>2]=l;Ko(x,T,f[C>>2]|0,a);if(n){e=f[n+12>>2]|0;if((e|0)==(f[n+16>>2]|0)){_=0;e=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;O=_;_=0;if(O&1){P=26;break}}else e=f[e>>2]|0;if((e|0)==-1){f[i>>2]=0;n=1}else n=0}else n=1;do{if(u){e=f[u+12>>2]|0;if((e|0)==(f[u+16>>2]|0)){_=0;e=de(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;O=_;_=0;if(O&1){P=26;break e}}else e=f[e>>2]|0;if((e|0)!=-1)if(n)break;else{P=53;break}else{f[r>>2]=0;P=51;break}}else P=51}while(0);if((P|0)==51?n:0)P=53;if((P|0)==53)f[a>>2]=f[a>>2]|2;O=f[i>>2]|0;Oh(L);Oh(x);c=R;return O|0}else P=26}else P=26}while(0);if((P|0)==26)e=ze()|0;Oh(L);Oh(x);$e(e|0);return 0}function r_(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0.0,o=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0;R=c;c=c+352|0;g=R+208|0;o=R+40|0;h=R+36|0;x=R+24|0;L=R+12|0;M=R+8|0;T=R+48|0;C=R+4|0;E=R;A=R+337|0;y=R+336|0;ck(x,n,g,o,h);f[L>>2]=0;f[L+4>>2]=0;f[L+8>>2]=0;if(!(t[L>>0]&1))e=10;else e=(f[L>>2]&-2)+-1|0;_=0;Ae(8,L|0,e|0,0);p=_;_=0;e:do{if(!(p&1)){m=L+8|0;v=L+1|0;e=(t[L>>0]&1)==0?v:f[m>>2]|0;f[M>>2]=e;f[C>>2]=T;f[E>>2]=0;t[A>>0]=1;t[y>>0]=69;p=L+4|0;w=f[o>>2]|0;k=f[h>>2]|0;n=f[i>>2]|0;i:while(1){if(n){o=f[n+12>>2]|0;if((o|0)==(f[n+16>>2]|0)){_=0;o=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;b=_;_=0;if(b&1){P=25;break}}else o=f[o>>2]|0;if((o|0)==-1){f[i>>2]=0;n=0;d=1}else d=0}else{n=0;d=1}o=f[r>>2]|0;do{if(o){h=f[o+12>>2]|0;if((h|0)==(f[o+16>>2]|0)){_=0;h=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;b=_;_=0;if(b&1){P=25;break i}}else h=f[h>>2]|0;if((h|0)!=-1)if(d)break;else break i;else{f[r>>2]=0;P=17;break}}else P=17}while(0);if((P|0)==17){P=0;if(d){o=0;break}else o=0}h=t[L>>0]|0;h=(h&1)==0?(h&255)>>>1:f[p>>2]|0;if((f[M>>2]|0)==(e+h|0)){_=0;Ae(8,L|0,h<<1|0,0);b=_;_=0;if(b&1){P=25;break}if(!(t[L>>0]&1))e=10;else e=(f[L>>2]&-2)+-1|0;_=0;Ae(8,L|0,e|0,0);b=_;_=0;if(b&1){P=25;break}e=(t[L>>0]&1)==0?v:f[m>>2]|0;f[M>>2]=e+h}d=n+12|0;h=f[d>>2]|0;b=n+16|0;if((h|0)==(f[b>>2]|0)){_=0;h=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;O=_;_=0;if(O&1){P=25;break}}else h=f[h>>2]|0;if(hk(h,A,y,e,M,w,k,x,T,C,E,g)|0)break;o=f[d>>2]|0;if((o|0)==(f[b>>2]|0)){_=0;de(f[(f[n>>2]|0)+40>>2]|0,n|0)|0;O=_;_=0;if(O&1){P=25;break}else continue}else{f[d>>2]=o+4;continue}}if((P|0)==25){e=ze()|0;break}O=t[x>>0]|0;if(!((t[A>>0]|0)==0?1:(((O&1)==0?(O&255)>>>1:f[x+4>>2]|0)|0)==0)?(S=f[C>>2]|0,(S-T|0)<160):0){O=f[E>>2]|0;f[C>>2]=S+4;f[S>>2]=O}_=0;l=+ye(2,e|0,f[M>>2]|0,a|0);O=_;_=0;if(!(O&1)){u[s>>3]=l;Ko(x,T,f[C>>2]|0,a);if(n){e=f[n+12>>2]|0;if((e|0)==(f[n+16>>2]|0)){_=0;e=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;O=_;_=0;if(O&1){P=26;break}}else e=f[e>>2]|0;if((e|0)==-1){f[i>>2]=0;n=1}else n=0}else n=1;do{if(o){e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0)){_=0;e=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;O=_;_=0;if(O&1){P=26;break e}}else e=f[e>>2]|0;if((e|0)!=-1)if(n)break;else{P=53;break}else{f[r>>2]=0;P=51;break}}else P=51}while(0);if((P|0)==51?n:0)P=53;if((P|0)==53)f[a>>2]=f[a>>2]|2;O=f[i>>2]|0;Oh(L);Oh(x);c=R;return O|0}else P=26}else P=26}while(0);if((P|0)==26)e=ze()|0;Oh(L);Oh(x);$e(e|0);return 0}function t_(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0.0,o=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=0;R=c;c=c+352|0;g=R+208|0;o=R+40|0;h=R+36|0;x=R+24|0;L=R+12|0;M=R+8|0;T=R+48|0;C=R+4|0;E=R;A=R+337|0;y=R+336|0;ck(x,n,g,o,h);f[L>>2]=0;f[L+4>>2]=0;f[L+8>>2]=0;if(!(t[L>>0]&1))e=10;else e=(f[L>>2]&-2)+-1|0;_=0;Ae(8,L|0,e|0,0);p=_;_=0;e:do{if(!(p&1)){m=L+8|0;v=L+1|0;e=(t[L>>0]&1)==0?v:f[m>>2]|0;f[M>>2]=e;f[C>>2]=T;f[E>>2]=0;t[A>>0]=1;t[y>>0]=69;p=L+4|0;w=f[o>>2]|0;k=f[h>>2]|0;n=f[i>>2]|0;i:while(1){if(n){o=f[n+12>>2]|0;if((o|0)==(f[n+16>>2]|0)){_=0;o=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;b=_;_=0;if(b&1){P=25;break}}else o=f[o>>2]|0;if((o|0)==-1){f[i>>2]=0;n=0;d=1}else d=0}else{n=0;d=1}o=f[r>>2]|0;do{if(o){h=f[o+12>>2]|0;if((h|0)==(f[o+16>>2]|0)){_=0;h=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;b=_;_=0;if(b&1){P=25;break i}}else h=f[h>>2]|0;if((h|0)!=-1)if(d)break;else break i;else{f[r>>2]=0;P=17;break}}else P=17}while(0);if((P|0)==17){P=0;if(d){o=0;break}else o=0}h=t[L>>0]|0;h=(h&1)==0?(h&255)>>>1:f[p>>2]|0;if((f[M>>2]|0)==(e+h|0)){_=0;Ae(8,L|0,h<<1|0,0);b=_;_=0;if(b&1){P=25;break}if(!(t[L>>0]&1))e=10;else e=(f[L>>2]&-2)+-1|0;_=0;Ae(8,L|0,e|0,0);b=_;_=0;if(b&1){P=25;break}e=(t[L>>0]&1)==0?v:f[m>>2]|0;f[M>>2]=e+h}d=n+12|0;h=f[d>>2]|0;b=n+16|0;if((h|0)==(f[b>>2]|0)){_=0;h=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;O=_;_=0;if(O&1){P=25;break}}else h=f[h>>2]|0;if(hk(h,A,y,e,M,w,k,x,T,C,E,g)|0)break;o=f[d>>2]|0;if((o|0)==(f[b>>2]|0)){_=0;de(f[(f[n>>2]|0)+40>>2]|0,n|0)|0;O=_;_=0;if(O&1){P=25;break}else continue}else{f[d>>2]=o+4;continue}}if((P|0)==25){e=ze()|0;break}O=t[x>>0]|0;if(!((t[A>>0]|0)==0?1:(((O&1)==0?(O&255)>>>1:f[x+4>>2]|0)|0)==0)?(S=f[C>>2]|0,(S-T|0)<160):0){O=f[E>>2]|0;f[C>>2]=S+4;f[S>>2]=O}_=0;l=+ye(3,e|0,f[M>>2]|0,a|0);O=_;_=0;if(!(O&1)){u[s>>3]=l;Ko(x,T,f[C>>2]|0,a);if(n){e=f[n+12>>2]|0;if((e|0)==(f[n+16>>2]|0)){_=0;e=de(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;O=_;_=0;if(O&1){P=26;break}}else e=f[e>>2]|0;if((e|0)==-1){f[i>>2]=0;n=1}else n=0}else n=1;do{if(o){e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0)){_=0;e=de(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;O=_;_=0;if(O&1){P=26;break e}}else e=f[e>>2]|0;if((e|0)!=-1)if(n)break;else{P=53;break}else{f[r>>2]=0;P=51;break}}else P=51}while(0);if((P|0)==51?n:0)P=53;if((P|0)==53)f[a>>2]=f[a>>2]|2;O=f[i>>2]|0;Oh(L);Oh(x);c=R;return O|0}else P=26}else P=26}while(0);if((P|0)==26)e=ze()|0;Oh(L);Oh(x);$e(e|0);return 0}function n_(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0;a=c;c=c+16|0;s=a;f[s>>2]=n;n=Wg(r)|0;r=Ny(e,i,t,s)|0;if((n|0)!=0?(_=0,de(75,n|0)|0,s=_,_=0,s&1):0){s=ze(0)|0;Fi(s)}c=a;return r|0}function f_(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0;n=c;c=c+16|0;a=n;f[a>>2]=t;t=Wg(i)|0;_=0;i=ke(37,e|0,r|0,a|0)|0;e=_;_=0;if(e&1){i=ze()|0;if((t|0)!=0?(_=0,de(75,t|0)|0,a=_,_=0,a&1):0){a=ze(0)|0;Fi(a)}$e(i|0)}else{if((t|0)!=0?(_=0,de(75,t|0)|0,a=_,_=0,a&1):0){a=ze(0)|0;Fi(a)}c=n;return i|0}return 0}function a_(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,k=0;b=c;c=c+16|0;d=b;l=f[e>>2]|0;e:do{if(!l)l=0;else{k=i;u=n-k>>2;h=a+12|0;o=f[h>>2]|0;u=(o|0)>(u|0)?o-u|0:0;o=r;k=o-k|0;a=k>>2;if((k|0)>0?(uM[f[(f[l>>2]|0)+48>>2]&63](l,i,a)|0)!=(a|0):0){f[e>>2]=0;l=0;break}do{if((u|0)>0){Vh(d,u,s);_=0;a=ke(f[(f[l>>2]|0)+48>>2]|0,l|0,((t[d>>0]&1)==0?d+4|0:f[d+8>>2]|0)|0,u|0)|0;k=_;_=0;if(k&1){k=ze()|0;Gh(d);$e(k|0)}if((a|0)==(u|0)){Gh(d);break}else{f[e>>2]=0;Gh(d);l=0;break e}}}while(0);k=n-o|0;n=k>>2;if((k|0)>0?(uM[f[(f[l>>2]|0)+48>>2]&63](l,r,n)|0)!=(n|0):0){f[e>>2]=0;l=0;break}f[h>>2]=0}}while(0);c=b;return l|0}function s_(e,i,r,t,s){e=e|0;i=i|0;r=r|0;t=t|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0;l=f[e>>2]|0;do{if(l){if((f[l+12>>2]|0)==(f[l+16>>2]|0))if((lM[f[(f[l>>2]|0)+36>>2]&127](l)|0)==-1){f[e>>2]=0;l=0;break}else{l=f[e>>2]|0;break}}else l=0}while(0);o=(l|0)==0;l=f[i>>2]|0;do{if(l){if((f[l+12>>2]|0)==(f[l+16>>2]|0)?(lM[f[(f[l>>2]|0)+36>>2]&127](l)|0)==-1:0){f[i>>2]=0;_=11;break}if(o)_=13;else _=12}else _=11}while(0);if((_|0)==11)if(o)_=12;else{l=0;_=13}e:do{if((_|0)==12){f[r>>2]=f[r>>2]|6;l=0}else if((_|0)==13){o=f[e>>2]|0;u=f[o+12>>2]|0;if((u|0)==(f[o+16>>2]|0))o=lM[f[(f[o>>2]|0)+36>>2]&127](o)|0;else o=a[u>>0]|0;u=o&255;if(u<<24>>24>-1?(w=t+8|0,(n[(f[w>>2]|0)+(o<<24>>24<<1)>>1]&2048)!=0):0){h=(uM[f[(f[t>>2]|0)+36>>2]&63](t,u,0)|0)<<24>>24;o=f[e>>2]|0;u=o+12|0;c=f[u>>2]|0;if((c|0)==(f[o+16>>2]|0)){lM[f[(f[o>>2]|0)+40>>2]&127](o)|0;b=s;d=l;s=l;l=h}else{f[u>>2]=c+1;b=s;d=l;s=l;l=h}while(1){l=l+-48|0;k=b+-1|0;o=f[e>>2]|0;do{if(o){if((f[o+12>>2]|0)==(f[o+16>>2]|0))if((lM[f[(f[o>>2]|0)+36>>2]&127](o)|0)==-1){f[e>>2]=0;o=0;break}else{o=f[e>>2]|0;break}}else o=0}while(0);c=(o|0)==0;if(s)if((f[s+12>>2]|0)==(f[s+16>>2]|0))if((lM[f[(f[s>>2]|0)+36>>2]&127](s)|0)==-1){f[i>>2]=0;u=0;s=0}else{u=d;s=d}else u=d;else{u=d;s=0}o=f[e>>2]|0;if(!((b|0)>1&(c^(s|0)==0)))break;c=f[o+12>>2]|0;if((c|0)==(f[o+16>>2]|0))o=lM[f[(f[o>>2]|0)+36>>2]&127](o)|0;else o=a[c>>0]|0;c=o&255;if(c<<24>>24<=-1)break e;if(!(n[(f[w>>2]|0)+(o<<24>>24<<1)>>1]&2048))break e;l=((uM[f[(f[t>>2]|0)+36>>2]&63](t,c,0)|0)<<24>>24)+(l*10|0)|0;o=f[e>>2]|0;c=o+12|0;h=f[c>>2]|0;if((h|0)==(f[o+16>>2]|0)){lM[f[(f[o>>2]|0)+40>>2]&127](o)|0;b=k;d=u;continue}else{f[c>>2]=h+1;b=k;d=u;continue}}do{if(o){if((f[o+12>>2]|0)==(f[o+16>>2]|0))if((lM[f[(f[o>>2]|0)+36>>2]&127](o)|0)==-1){f[e>>2]=0;o=0;break}else{o=f[e>>2]|0;break}}else o=0}while(0);o=(o|0)==0;do{if(u){if((f[u+12>>2]|0)==(f[u+16>>2]|0)?(lM[f[(f[u>>2]|0)+36>>2]&127](u)|0)==-1:0){f[i>>2]=0;_=50;break}if(o)break e}else _=50}while(0);if((_|0)==50?!o:0)break;f[r>>2]=f[r>>2]|2;break}f[r>>2]=f[r>>2]|4;l=0}}while(0);return l|0}function l_(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;a=f[e>>2]|0;do{if(a){s=f[a+12>>2]|0;if((s|0)==(f[a+16>>2]|0))a=lM[f[(f[a>>2]|0)+36>>2]&127](a)|0;else a=f[s>>2]|0;if((a|0)==-1){f[e>>2]=0;l=1;break}else{l=(f[e>>2]|0)==0;break}}else l=1}while(0);s=f[i>>2]|0;do{if(s){a=f[s+12>>2]|0;if((a|0)==(f[s+16>>2]|0))a=lM[f[(f[s>>2]|0)+36>>2]&127](s)|0;else a=f[a>>2]|0;if((a|0)!=-1)if(l){b=17;break}else{b=16;break}else{f[i>>2]=0;b=14;break}}else b=14}while(0);if((b|0)==14)if(l)b=16;else{s=0;b=17}e:do{if((b|0)==16){f[r>>2]=f[r>>2]|6;a=0}else if((b|0)==17){a=f[e>>2]|0;l=f[a+12>>2]|0;if((l|0)==(f[a+16>>2]|0))a=lM[f[(f[a>>2]|0)+36>>2]&127](a)|0;else a=f[l>>2]|0;if(!(uM[f[(f[t>>2]|0)+12>>2]&63](t,2048,a)|0)){f[r>>2]=f[r>>2]|4;a=0;break}a=(uM[f[(f[t>>2]|0)+52>>2]&63](t,a,0)|0)<<24>>24;l=f[e>>2]|0;o=l+12|0;u=f[o>>2]|0;if((u|0)==(f[l+16>>2]|0)){lM[f[(f[l>>2]|0)+40>>2]&127](l)|0;h=n;c=s;o=s}else{f[o>>2]=u+4;h=n;c=s;o=s}while(1){a=a+-48|0;d=h+-1|0;s=f[e>>2]|0;do{if(s){l=f[s+12>>2]|0;if((l|0)==(f[s+16>>2]|0))s=lM[f[(f[s>>2]|0)+36>>2]&127](s)|0;else s=f[l>>2]|0;if((s|0)==-1){f[e>>2]=0;u=1;break}else{u=(f[e>>2]|0)==0;break}}else u=1}while(0);do{if(o){s=f[o+12>>2]|0;if((s|0)==(f[o+16>>2]|0))s=lM[f[(f[o>>2]|0)+36>>2]&127](o)|0;else s=f[s>>2]|0;if((s|0)==-1){f[i>>2]=0;o=0;n=0;s=1;break}else{o=c;n=c;s=(c|0)==0;break}}else{o=c;n=0;s=1}}while(0);l=f[e>>2]|0;if(!((h|0)>1&(u^s)))break;s=f[l+12>>2]|0;if((s|0)==(f[l+16>>2]|0))s=lM[f[(f[l>>2]|0)+36>>2]&127](l)|0;else s=f[s>>2]|0;if(!(uM[f[(f[t>>2]|0)+12>>2]&63](t,2048,s)|0))break e;a=((uM[f[(f[t>>2]|0)+52>>2]&63](t,s,0)|0)<<24>>24)+(a*10|0)|0;s=f[e>>2]|0;l=s+12|0;u=f[l>>2]|0;if((u|0)==(f[s+16>>2]|0)){lM[f[(f[s>>2]|0)+40>>2]&127](s)|0;h=d;c=o;o=n;continue}else{f[l>>2]=u+4;h=d;c=o;o=n;continue}}do{if(l){s=f[l+12>>2]|0;if((s|0)==(f[l+16>>2]|0))s=lM[f[(f[l>>2]|0)+36>>2]&127](l)|0;else s=f[s>>2]|0;if((s|0)==-1){f[e>>2]=0;l=1;break}else{l=(f[e>>2]|0)==0;break}}else l=1}while(0);do{if(o){s=f[o+12>>2]|0;if((s|0)==(f[o+16>>2]|0))s=lM[f[(f[o>>2]|0)+36>>2]&127](o)|0;else s=f[s>>2]|0;if((s|0)!=-1)if(l)break e;else break;else{f[i>>2]=0;b=60;break}}else b=60}while(0);if((b|0)==60?!l:0)break;f[r>>2]=f[r>>2]|2}}while(0);return a|0}function o_(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0;a=e+4|0;t=(f[a>>2]|0)!=189;l=f[e>>2]|0;s=l;n=(f[r>>2]|0)-s|0;n=n>>>0<2147483647?n<<1:-1;s=(f[i>>2]|0)-s|0;l=Oc(t?l:0,n)|0;if(!l)Mg();do{if(!t){t=f[e>>2]|0;f[e>>2]=l;if(t){_=0;ue(f[a>>2]|0,t|0);l=_;_=0;if(l&1){l=ze(0)|0;Fi(l)}else{o=f[e>>2]|0;break}}else o=l}else{f[e>>2]=l;o=l}}while(0);f[a>>2]=201;f[i>>2]=o+s;f[r>>2]=(f[e>>2]|0)+n;return}function u_(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0;a=e+4|0;t=(f[a>>2]|0)!=189;l=f[e>>2]|0;s=l;n=(f[r>>2]|0)-s|0;n=n>>>0<2147483647?n<<1:-1;s=(f[i>>2]|0)-s>>2;l=Oc(t?l:0,n)|0;if(!l)Mg();do{if(!t){t=f[e>>2]|0;f[e>>2]=l;if(t){_=0;ue(f[a>>2]|0,t|0);l=_;_=0;if(l&1){l=ze(0)|0;Fi(l)}else{o=f[e>>2]|0;break}}else o=l}else{f[e>>2]=l;o=l}}while(0);f[a>>2]=201;f[i>>2]=o+(s<<2);f[r>>2]=(f[e>>2]|0)+(n>>>2<<2);return}function c_(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0;s=i;n=t[e>>0]|0;if(!(n&1)){a=10;u=(n&255)>>>1}else{n=f[e>>2]|0;a=(n&-2)+-1|0;u=f[e+4>>2]|0;n=n&255}o=r-s|0;do{if((r|0)!=(i|0)){if((a-u|0)>>>0<o>>>0){qh(e,a,u+o-a|0,u,u,0,0);n=t[e>>0]|0}if(!(n&1))l=e+1|0;else l=f[e+8>>2]|0;s=r+(u-s)|0;if((i|0)!=(r|0)){n=i;a=l+u|0;while(1){t[a>>0]=t[n>>0]|0;n=n+1|0;if((n|0)==(r|0))break;else a=a+1|0}}t[l+s>>0]=0;n=u+o|0;if(!(t[e>>0]&1)){t[e>>0]=n<<1;break}else{f[e+4>>2]=n;break}}}while(0);return e|0}function h_(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0;a=e+4|0;t=(f[a>>2]|0)!=189;l=f[e>>2]|0;s=l;n=(f[r>>2]|0)-s|0;n=n>>>0<2147483647?n<<1:-1;s=(f[i>>2]|0)-s>>2;l=Oc(t?l:0,n)|0;if(!l)Mg();do{if(!t){t=f[e>>2]|0;f[e>>2]=l;if(t){_=0;ue(f[a>>2]|0,t|0);l=_;_=0;if(l&1){l=ze(0)|0;Fi(l)}else{o=f[e>>2]|0;break}}else o=l}else{f[e>>2]=l;o=l}}while(0);f[a>>2]=201;f[i>>2]=o+(s<<2);f[r>>2]=(f[e>>2]|0)+(n>>>2<<2);return}function d_(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0;s=i;n=t[e>>0]|0;if(!(n&1)){a=1;u=(n&255)>>>1}else{n=f[e>>2]|0;a=(n&-2)+-1|0;u=f[e+4>>2]|0;n=n&255}o=r-s>>2;do{if(o){if((a-u|0)>>>0<o>>>0){$h(e,a,u+o-a|0,u,u,0,0);n=t[e>>0]|0}if(!(n&1))l=e+4|0;else l=f[e+8>>2]|0;s=u+((r-s|0)>>>2)|0;if((i|0)!=(r|0)){n=i;a=l+(u<<2)|0;while(1){f[a>>2]=f[n>>2];n=n+4|0;if((n|0)==(r|0))break;else a=a+4|0}}f[l+(s<<2)>>2]=0;n=u+o|0;if(!(t[e>>0]&1)){t[e>>0]=n<<1;break}else{f[e+4>>2]=n;break}}}while(0);return e|0}function b_(e,i){e=e|0;i=i|0;var r=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;t[e+128>>0]=0;do{if(i){_=0;ce(125,e|0,i|0);r=_;_=0;if(r&1){r=ze()|0;Y_(e);$e(r|0)}else{am(e,i);break}}}while(0);return}function k_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43148)|0);return}function w_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43188)|0);return}function __(e,i){e=e|0;i=i|0;Au(e,i,Iu(44220)|0);return}function m_(e,i){e=e|0;i=i|0;Au(e,i,Iu(44212)|0);return}function v_(e,i){e=e|0;i=i|0;Au(e,i,Iu(44280)|0);return}function p_(e,i){e=e|0;i=i|0;Au(e,i,Iu(44288)|0);return}function g_(e,i){e=e|0;i=i|0;Au(e,i,Iu(44344)|0);return}function y_(e,i){e=e|0;i=i|0;Au(e,i,Iu(44352)|0);return}function M_(e,i){e=e|0;i=i|0;Au(e,i,Iu(44360)|0);return}function E_(e,i){e=e|0;i=i|0;Au(e,i,Iu(44368)|0);return}function A_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43260)|0);return}function S_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43332)|0);return}function T_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43392)|0);return}function C_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43452)|0);return}function R_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43764)|0);return}function L_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43828)|0);return}function x_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43892)|0);return}function P_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43956)|0);return}function O_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43992)|0);return}function B_(e,i){e=e|0;i=i|0;Au(e,i,Iu(44028)|0);return}function I_(e,i){e=e|0;i=i|0;Au(e,i,Iu(44064)|0);return}function D_(e,i){e=e|0;i=i|0;Au(e,i,Iu(44100)|0);return}function N_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43544)|0);return}function F_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43636)|0);return}function U_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43668)|0);return}function j_(e,i){e=e|0;i=i|0;Au(e,i,Iu(43700)|0);return}function H_(e,i){e=e|0;i=i|0;Au(e,i,Iu(44140)|0);return}function z_(e,i){e=e|0;i=i|0;Au(e,i,Iu(44180)|0);return}function Y_(e){e=e|0;var i=0,r=0,n=0;r=f[e>>2]|0;do{if(r){n=e+4|0;i=f[n>>2]|0;if((i|0)!=(r|0)){do{i=i+-4|0}while((i|0)!=(r|0));f[n>>2]=i}if((e+16|0)==(r|0)){t[e+128>>0]=0;break}else{Ip(r);break}}}while(0);return}function q_(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0;s=e+4|0;r=f[s>>2]|0;t=f[e>>2]|0;n=r-t>>2;if(n>>>0>=i>>>0){if(n>>>0>i>>>0?(a=t+(i<<2)|0,(r|0)!=(a|0)):0){do{r=r+-4|0}while((r|0)!=(a|0));f[s>>2]=r}}else fm(e,i-n|0);return}function X_(e,i){e=e|0;i=i|0;var r=0;r=f[e+8>>2]|0;if((f[e+12>>2]|0)-r>>2>>>0>i>>>0)r=(f[r+(i<<2)>>2]|0)!=0;else r=0;return r|0}function V_(e){e=e|0;var i=0,r=0;r=e+4|0;i=f[r>>2]|0;r=f[r+4>>2]|0;e=(f[e>>2]|0)+(r>>1)|0;if(r&1)i=f[(f[e>>2]|0)+i>>2]|0;fM[i&255](e);return}function G_(e,i,r,a,l,o,u,c){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;o=o|0;u=u|0;c=c|0;var h=0,d=0;f[r>>2]=e;f[o>>2]=a;if(c&2)if((l-a|0)<3)e=1;else{f[o>>2]=a+1;t[a>>0]=-17;h=f[o>>2]|0;f[o>>2]=h+1;t[h>>0]=-69;h=f[o>>2]|0;f[o>>2]=h+1;t[h>>0]=-65;h=4}else h=4;e:do{if((h|0)==4){d=i;e=f[r>>2]|0;if(e>>>0<i>>>0)while(1){c=n[e>>1]|0;h=c&65535;if(h>>>0>u>>>0){e=2;break e}do{if((c&65535)<128){e=f[o>>2]|0;if((l-e|0)<1){e=1;break e}f[o>>2]=e+1;t[e>>0]=c}else{if((c&65535)<2048){e=f[o>>2]|0;if((l-e|0)<2){e=1;break e}f[o>>2]=e+1;t[e>>0]=h>>>6|192;a=f[o>>2]|0;f[o>>2]=a+1;t[a>>0]=h&63|128;break}if((c&65535)<55296){e=f[o>>2]|0;if((l-e|0)<3){e=1;break e}f[o>>2]=e+1;t[e>>0]=h>>>12|224;a=f[o>>2]|0;f[o>>2]=a+1;t[a>>0]=h>>>6&63|128;a=f[o>>2]|0;f[o>>2]=a+1;t[a>>0]=h&63|128;break}if((c&65535)>=56320){if((c&65535)<57344){e=2;break e}e=f[o>>2]|0;if((l-e|0)<3){e=1;break e}f[o>>2]=e+1;t[e>>0]=h>>>12|224;a=f[o>>2]|0;f[o>>2]=a+1;t[a>>0]=h>>>6&63|128;a=f[o>>2]|0;f[o>>2]=a+1;t[a>>0]=h&63|128;break}if((d-e|0)<4){e=1;break e}e=e+2|0;c=s[e>>1]|0;if((c&64512|0)!=56320){e=2;break e}if((l-(f[o>>2]|0)|0)<4){e=1;break e}a=h&960;if(((a<<10)+65536|h<<10&64512|c&1023)>>>0>u>>>0){e=2;break e}f[r>>2]=e;e=(a>>>6)+1|0;a=f[o>>2]|0;f[o>>2]=a+1;t[a>>0]=e>>>2|240;a=f[o>>2]|0;f[o>>2]=a+1;t[a>>0]=h>>>2&15|e<<4&48|128;a=f[o>>2]|0;f[o>>2]=a+1;t[a>>0]=h<<4&48|c>>>6&15|128;h=f[o>>2]|0;f[o>>2]=h+1;t[h>>0]=c&63|128}}while(0);e=(f[r>>2]|0)+2|0;f[r>>2]=e;if(e>>>0>=i>>>0){e=0;break}}else e=0}}while(0);return e|0}function K_(e,i,r,s,l,o,u,c){e=e|0;i=i|0;r=r|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;var h=0,d=0,b=0,k=0,w=0,_=0;f[r>>2]=e;f[o>>2]=s;if(c&4){e=f[r>>2]|0;c=i;if((((c-e|0)>2?(t[e>>0]|0)==-17:0)?(t[e+1>>0]|0)==-69:0)?(t[e+2>>0]|0)==-65:0){f[r>>2]=e+3;h=f[o>>2]|0}else h=s}else{h=s;c=i}w=l;s=f[r>>2]|0;e=s>>>0<i>>>0;e:do{if(e&h>>>0<l>>>0)while(1){e=t[s>>0]|0;b=e&255;if(b>>>0>u>>>0){e=2;break e}do{if(e<<24>>24>-1){n[h>>1]=e&255;f[r>>2]=s+1}else{if((e&255)<194){e=2;break e}if((e&255)<224){if((c-s|0)<2){e=1;break e}e=a[s+1>>0]|0;if((e&192|0)!=128){e=2;break e}e=e&63|b<<6&1984;if(e>>>0>u>>>0){e=2;break e}n[h>>1]=e;f[r>>2]=s+2;break}if((e&255)<240){if((c-s|0)<3){e=1;break e}d=t[s+1>>0]|0;e=t[s+2>>0]|0;switch(b|0){case 224:{if((d&-32)<<24>>24!=-96){e=2;break e}break}case 237:{if((d&-32)<<24>>24!=-128){e=2;break e}break}default:if((d&-64)<<24>>24!=-128){e=2;break e}}e=e&255;if((e&192|0)!=128){e=2;break e}e=(d&255)<<6&4032|b<<12|e&63;if((e&65535)>>>0>u>>>0){e=2;break e}n[h>>1]=e;f[r>>2]=s+3;break}if((e&255)>=245){e=2;break e}if((c-s|0)<4){e=1;break e}d=t[s+1>>0]|0;e=t[s+2>>0]|0;s=t[s+3>>0]|0;switch(b|0){case 240:{if((d+112&255)>=48){e=2;break e}break}case 244:{if((d&-16)<<24>>24!=-128){e=2;break e}break}default:if((d&-64)<<24>>24!=-128){e=2;break e}}k=e&255;if((k&192|0)!=128){e=2;break e}e=s&255;if((e&192|0)!=128){e=2;break e}if((w-h|0)<4){e=1;break e}b=b&7;s=d&255;d=k<<6;e=e&63;if((s<<12&258048|b<<18|d&4032|e)>>>0>u>>>0){e=2;break e}n[h>>1]=s<<2&60|k>>>4&3|((s>>>4&3|b<<2)<<6)+16320|55296;k=h+2|0;f[o>>2]=k;n[k>>1]=e|d&960|56320;f[r>>2]=(f[r>>2]|0)+4}}while(0);h=(f[o>>2]|0)+2|0;f[o>>2]=h;s=f[r>>2]|0;e=s>>>0<i>>>0;if(!(e&h>>>0<l>>>0)){_=39;break}}else _=39}while(0);if((_|0)==39)e=e&1;return e|0}function W_(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i;if((((f&4|0)!=0?(d-e|0)>2:0)?(t[e>>0]|0)==-17:0)?(t[e+1>>0]|0)==-69:0)f=(t[e+2>>0]|0)==-65?e+3|0:e;else f=e;e:do{if((r|0)!=0&f>>>0<i>>>0){h=f;s=0;i:while(1){f=t[h>>0]|0;c=f&255;if(c>>>0>n>>>0){f=h;s=42;break e}do{if(f<<24>>24>-1)f=h+1|0;else{if((f&255)<194){f=h;s=42;break e}if((f&255)<224){if((d-h|0)<2){f=h;s=42;break e}f=a[h+1>>0]|0;if((f&192|0)!=128){f=h;s=42;break e}if((f&63|c<<6&1984)>>>0>n>>>0){f=h;s=42;break e}f=h+2|0;break}if((f&255)<240){f=h;if((d-f|0)<3){f=h;s=42;break e}o=t[h+1>>0]|0;l=t[h+2>>0]|0;switch(c|0){case 224:{if((o&-32)<<24>>24!=-96){s=20;break i}break}case 237:{if((o&-32)<<24>>24!=-128){s=22;break i}break}default:if((o&-64)<<24>>24!=-128){s=24;break i}}f=l&255;if((f&192|0)!=128){f=h;s=42;break e}if(((o&255)<<6&4032|c<<12&61440|f&63)>>>0>n>>>0){f=h;s=42;break e}f=h+3|0;break}if((f&255)>=245){f=h;s=42;break e}f=h;if((r-s|0)>>>0<2|(d-f|0)<4){f=h;s=42;break e}u=t[h+1>>0]|0;l=t[h+2>>0]|0;o=t[h+3>>0]|0;switch(c|0){case 240:{if((u+112&255)>=48){s=32;break i}break}case 244:{if((u&-16)<<24>>24!=-128){s=34;break i}break}default:if((u&-64)<<24>>24!=-128){s=36;break i}}l=l&255;if((l&192|0)!=128){f=h;s=42;break e}f=o&255;if((f&192|0)!=128){f=h;s=42;break e}if(((u&255)<<12&258048|c<<18&1835008|l<<6&4032|f&63)>>>0>n>>>0){f=h;s=42;break e}f=h+4|0;s=s+1|0}}while(0);s=s+1|0;if(!(s>>>0<r>>>0&f>>>0<i>>>0)){s=42;break e}else h=f}if((s|0)==20){f=f-e|0;break}else if((s|0)==22){f=f-e|0;break}else if((s|0)==24){f=f-e|0;break}else if((s|0)==32){f=f-e|0;break}else if((s|0)==34){f=f-e|0;break}else if((s|0)==36){f=f-e|0;break}}else s=42}while(0);if((s|0)==42)f=f-e|0;return f|0}function Z_(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,c=0;f[r>>2]=e;f[s>>2]=n;c=a;if(o&2)if((c-n|0)<3)e=1;else{f[s>>2]=n+1;t[n>>0]=-17;u=f[s>>2]|0;f[s>>2]=u+1;t[u>>0]=-69;u=f[s>>2]|0;f[s>>2]=u+1;t[u>>0]=-65;u=4}else u=4;e:do{if((u|0)==4){e=f[r>>2]|0;if(e>>>0<i>>>0)while(1){o=f[e>>2]|0;if(o>>>0>l>>>0|(o&-2048|0)==55296){e=2;break e}do{if(o>>>0>=128){if(o>>>0<2048){e=f[s>>2]|0;if((c-e|0)<2){e=1;break e}f[s>>2]=e+1;t[e>>0]=o>>>6|192;u=f[s>>2]|0;f[s>>2]=u+1;t[u>>0]=o&63|128;break}e=f[s>>2]|0;a=c-e|0;if(o>>>0<65536){if((a|0)<3){e=1;break e}f[s>>2]=e+1;t[e>>0]=o>>>12|224;u=f[s>>2]|0;f[s>>2]=u+1;t[u>>0]=o>>>6&63|128;u=f[s>>2]|0;f[s>>2]=u+1;t[u>>0]=o&63|128;break}else{if((a|0)<4){e=1;break e}f[s>>2]=e+1;t[e>>0]=o>>>18|240;u=f[s>>2]|0;f[s>>2]=u+1;t[u>>0]=o>>>12&63|128;u=f[s>>2]|0;f[s>>2]=u+1;t[u>>0]=o>>>6&63|128;u=f[s>>2]|0;f[s>>2]=u+1;t[u>>0]=o&63|128;break}}else{e=f[s>>2]|0;if((c-e|0)<1){e=1;break e}f[s>>2]=e+1;t[e>>0]=o}}while(0);e=(f[r>>2]|0)+4|0;f[r>>2]=e;if(e>>>0>=i>>>0){e=0;break}}else e=0}}while(0);return e|0}function J_(e,i,r,n,s,l,o,u){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;o=o|0;u=u|0;var c=0,h=0,d=0,b=0,k=0,w=0;f[r>>2]=e;f[l>>2]=n;if(u&4){e=f[r>>2]|0;u=i;if((((u-e|0)>2?(t[e>>0]|0)==-17:0)?(t[e+1>>0]|0)==-69:0)?(t[e+2>>0]|0)==-65:0){f[r>>2]=e+3;n=f[l>>2]|0;k=u}else k=u}else k=i;u=f[r>>2]|0;e=u>>>0<i>>>0;e:do{if(e&n>>>0<s>>>0)while(1){e=t[u>>0]|0;b=e&255;do{if(e<<24>>24>-1){if(b>>>0>o>>>0){e=2;break e}f[n>>2]=b;f[r>>2]=u+1}else{if((e&255)<194){e=2;break e}if((e&255)<224){if((k-u|0)<2){e=1;break e}e=a[u+1>>0]|0;if((e&192|0)!=128){e=2;break e}e=e&63|b<<6&1984;if(e>>>0>o>>>0){e=2;break e}f[n>>2]=e;f[r>>2]=u+2;break}if((e&255)<240){if((k-u|0)<3){e=1;break e}c=t[u+1>>0]|0;e=t[u+2>>0]|0;switch(b|0){case 224:{if((c&-32)<<24>>24!=-96){e=2;break e}break}case 237:{if((c&-32)<<24>>24!=-128){e=2;break e}break}default:if((c&-64)<<24>>24!=-128){e=2;break e}}e=e&255;if((e&192|0)!=128){e=2;break e}e=(c&255)<<6&4032|b<<12&61440|e&63;if(e>>>0>o>>>0){e=2;break e}f[n>>2]=e;f[r>>2]=u+3;break}if((e&255)>=245){e=2;break e}if((k-u|0)<4){e=1;break e}d=t[u+1>>0]|0;e=t[u+2>>0]|0;c=t[u+3>>0]|0;switch(b|0){case 240:{if((d+112&255)>=48){e=2;break e}break}case 244:{if((d&-16)<<24>>24!=-128){e=2;break e}break}default:if((d&-64)<<24>>24!=-128){e=2;break e}}h=e&255;if((h&192|0)!=128){e=2;break e}e=c&255;if((e&192|0)!=128){e=2;break e}e=(d&255)<<12&258048|b<<18&1835008|h<<6&4032|e&63;if(e>>>0>o>>>0){e=2;break e}f[n>>2]=e;f[r>>2]=u+4}}while(0);n=(f[l>>2]|0)+4|0;f[l>>2]=n;u=f[r>>2]|0;e=u>>>0<i>>>0;if(!(e&n>>>0<s>>>0)){w=38;break}}else w=38}while(0);if((w|0)==38)e=e&1;return e|0}function Q_(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i;if((((f&4|0)!=0?(d-e|0)>2:0)?(t[e>>0]|0)==-17:0)?(t[e+1>>0]|0)==-69:0)f=(t[e+2>>0]|0)==-65?e+3|0:e;else f=e;e:do{if((r|0)!=0&f>>>0<i>>>0){c=f;h=0;i:while(1){f=t[c>>0]|0;u=f&255;do{if(f<<24>>24>-1){if(u>>>0>n>>>0){f=c;s=42;break e}f=c+1|0}else{if((f&255)<194){f=c;s=42;break e}if((f&255)<224){if((d-c|0)<2){f=c;s=42;break e}f=a[c+1>>0]|0;if((f&192|0)!=128){f=c;s=42;break e}if((f&63|u<<6&1984)>>>0>n>>>0){f=c;s=42;break e}f=c+2|0;break}if((f&255)<240){f=c;if((d-f|0)<3){f=c;s=42;break e}l=t[c+1>>0]|0;s=t[c+2>>0]|0;switch(u|0){case 224:{if((l&-32)<<24>>24!=-96){s=20;break i}break}case 237:{if((l&-32)<<24>>24!=-128){s=22;break i}break}default:if((l&-64)<<24>>24!=-128){s=24;break i}}f=s&255;if((f&192|0)!=128){f=c;s=42;break e}if(((l&255)<<6&4032|u<<12&61440|f&63)>>>0>n>>>0){f=c;s=42;break e}f=c+3|0;break}if((f&255)>=245){f=c;s=42;break e}f=c;if((d-f|0)<4){f=c;s=42;break e}o=t[c+1>>0]|0;s=t[c+2>>0]|0;l=t[c+3>>0]|0;switch(u|0){case 240:{if((o+112&255)>=48){s=32;break i}break}case 244:{if((o&-16)<<24>>24!=-128){s=34;break i}break}default:if((o&-64)<<24>>24!=-128){s=36;break i}}s=s&255;if((s&192|0)!=128){f=c;s=42;break e}f=l&255;if((f&192|0)!=128){f=c;s=42;break e}if(((o&255)<<12&258048|u<<18&1835008|s<<6&4032|f&63)>>>0>n>>>0){f=c;s=42;break e}f=c+4|0}}while(0);h=h+1|0;if(!(h>>>0<r>>>0&f>>>0<i>>>0)){s=42;break e}else c=f}if((s|0)==20){f=f-e|0;break}else if((s|0)==22){f=f-e|0;break}else if((s|0)==24){f=f-e|0;break}else if((s|0)==32){f=f-e|0;break}else if((s|0)==34){f=f-e|0;break}else if((s|0)==36){f=f-e|0;break}}else s=42}while(0);if((s|0)==42)f=f-e|0;return f|0}function $_(e){e=e|0;Oh(45196);Oh(45184);Oh(45172);Oh(45160);Oh(45148);Oh(45136);Oh(45124);Oh(45112);Oh(45100);Oh(45088);Oh(45076);Oh(45064);Oh(45052);Oh(45040);return}function em(e){e=e|0;Gh(45368);Gh(45356);Gh(45344);Gh(45332);Gh(45320);Gh(45308);Gh(45296);Gh(45284);Gh(45272);Gh(45260);Gh(45248);Gh(45236);Gh(45224);Gh(45212);return}function im(e){e=e|0;Oh(46e3);Oh(45988);Oh(45976);Oh(45964);Oh(45952);Oh(45940);Oh(45928);Oh(45916);Oh(45904);Oh(45892);Oh(45880);Oh(45868);Oh(45856);Oh(45844);Oh(45832);Oh(45820);Oh(45808);Oh(45796);Oh(45784);Oh(45772);Oh(45760);Oh(45748);Oh(45736);Oh(45724);return}function rm(e){e=e|0;Gh(46292);Gh(46280);Gh(46268);Gh(46256);Gh(46244);Gh(46232);Gh(46220);Gh(46208);Gh(46196);Gh(46184);Gh(46172);Gh(46160);Gh(46148);Gh(46136);Gh(46124);Gh(46112);Gh(46100);Gh(46088);Gh(46076);Gh(46064);Gh(46052);Gh(46040);Gh(46028);Gh(46016);return}function tm(e){e=e|0;Oh(47104);Oh(47092);Oh(47080);Oh(47068);Oh(47056);Oh(47044);Oh(47032);Oh(47020);Oh(47008);Oh(46996);Oh(46984);Oh(46972);Oh(46960);Oh(46948);Oh(46936);Oh(46924);Oh(46912);Oh(46900);Oh(46888);Oh(46876);Oh(46864);Oh(46852);Oh(46840);Oh(46828);return}function nm(e){e=e|0;Gh(47396);Gh(47384);Gh(47372);Gh(47360);Gh(47348);Gh(47336);Gh(47324);Gh(47312);Gh(47300);Gh(47288);Gh(47276);Gh(47264);Gh(47252);Gh(47240);Gh(47228);Gh(47216);Gh(47204);Gh(47192);Gh(47180);Gh(47168);Gh(47156);Gh(47144);Gh(47132);Gh(47120);return}function fm(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0,o=0;o=c;c=c+32|0;l=o;a=f[e+8>>2]|0;r=f[e+4>>2]|0;if(a-r>>2>>>0<i>>>0){t=f[e>>2]|0;s=r-t>>2;n=s+i|0;if(n>>>0>1073741823)Pp(e);r=a-t|0;if(r>>2>>>0<536870911){r=r>>1;r=r>>>0<n>>>0?n:r}else r=1073741823;sm(l,r,s,e+16|0);s=l+8|0;a=f[s>>2]|0;ym(a|0,0,i<<2|0)|0;f[s>>2]=a+(i<<2);lm(e,l);om(l)}else am(e,i);c=o;return}function am(e,i){e=e|0;i=i|0;var r=0;r=e+4|0;e=i;i=f[r>>2]|0;do{f[i>>2]=0;i=(f[r>>2]|0)+4|0;f[r>>2]=i;e=e+-1|0}while((e|0)!=0);return}function sm(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0;f[e+12>>2]=0;f[e+16>>2]=n;do{if(i){a=n+112|0;if(i>>>0<29&(t[a>>0]|0)==0){t[a>>0]=1;break}else{n=Bp(i<<2)|0;break}}else n=0}while(0);f[e>>2]=n;r=n+(r<<2)|0;f[e+8>>2]=r;f[e+4>>2]=r;f[e+12>>2]=n+(i<<2);return}function lm(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0;t=f[e>>2]|0;a=e+4|0;r=i+4|0;n=(f[a>>2]|0)-t|0;s=(f[r>>2]|0)+(0-(n>>2)<<2)|0;f[r>>2]=s;Am(s|0,t|0,n|0)|0;n=f[e>>2]|0;f[e>>2]=f[r>>2];f[r>>2]=n;n=i+8|0;t=f[a>>2]|0;f[a>>2]=f[n>>2];f[n>>2]=t;n=e+8|0;e=i+12|0;t=f[n>>2]|0;f[n>>2]=f[e>>2];f[e>>2]=t;f[i>>2]=f[r>>2];return}function om(e){e=e|0;var i=0,r=0,n=0;r=f[e+4>>2]|0;n=e+8|0;i=f[n>>2]|0;if((i|0)!=(r|0)){do{i=i+-4|0}while((i|0)!=(r|0));f[n>>2]=i}r=f[e>>2]|0;do{if(r){i=f[e+16>>2]|0;if((i|0)==(r|0)){t[i+112>>0]=0;break}else{Ip(r);break}}}while(0);return}function um(e,i){e=e|0;i=i|0;var r=0;if(i>>>0>1073741823)Pp(e);r=e+128|0;if(i>>>0<29&(t[r>>0]|0)==0){t[r>>0]=1;r=e+16|0}else r=Bp(i<<2)|0;f[e+4>>2]=r;f[e>>2]=r;f[e+8>>2]=r+(i<<2);return}function cm(e,i,r){e=e|0;i=i|0;r=r|0;var t=0.0,n=0,a=0,s=0,l=0;l=c;c=c+16|0;s=l;do{if((e|0)!=(i|0)){n=Ig()|0;a=f[n>>2]|0;f[n>>2]=0;t=+Uy(e,s,Vb()|0);e=f[n>>2]|0;if(!e)f[n>>2]=a;if((f[s>>2]|0)!=(i|0)){f[r>>2]=4;t=0.0;break}if((e|0)==34)f[r>>2]=4}else{f[r>>2]=4;t=0.0}}while(0);c=l;return+t}function hm(e,i,r){e=e|0;i=i|0;r=r|0;var t=0.0,n=0,a=0,s=0,l=0;l=c;c=c+16|0;s=l;do{if((e|0)!=(i|0)){n=Ig()|0;a=f[n>>2]|0;f[n>>2]=0;t=+Uy(e,s,Vb()|0);e=f[n>>2]|0;if(!e)f[n>>2]=a;if((f[s>>2]|0)!=(i|0)){f[r>>2]=4;t=0.0;break}if((e|0)==34)f[r>>2]=4}else{f[r>>2]=4;t=0.0}}while(0);c=l;return+t}function dm(e,i,r){e=e|0;i=i|0;r=r|0;var t=0.0,n=0,a=0,s=0,l=0;l=c;c=c+16|0;s=l;do{if((e|0)==(i|0)){f[r>>2]=4;t=0.0}else{n=Ig()|0;a=f[n>>2]|0;f[n>>2]=0;t=+Uy(e,s,Vb()|0);e=f[n>>2]|0;if(!e)f[n>>2]=a;if((f[s>>2]|0)!=(i|0)){f[r>>2]=4;t=0.0;break}if((e|0)==34)f[r>>2]=4}}while(0);c=l;return+t}function bm(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0;o=c;c=c+16|0;l=o;do{if((e|0)!=(i|0)){if((t[e>>0]|0)==45){f[r>>2]=4;n=0;e=0;break}a=Ig()|0;s=f[a>>2]|0;f[a>>2]=0;e=Cg(e,l,n,Vb()|0)|0;n=f[a>>2]|0;if(!n)f[a>>2]=s;if((f[l>>2]|0)!=(i|0)){f[r>>2]=4;n=0;e=0;break}if((n|0)==34){f[r>>2]=4;n=-1;e=-1}else n=P}else{f[r>>2]=4;n=0;e=0}}while(0);P=n;c=o;return e|0}function km(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;u=c;c=c+16|0;o=u;do{if((e|0)!=(i|0)){if((t[e>>0]|0)==45){f[r>>2]=4;e=0;break}s=Ig()|0;l=f[s>>2]|0;f[s>>2]=0;e=Cg(e,o,n,Vb()|0)|0;n=P;a=f[s>>2]|0;if(!a)f[s>>2]=l;if((f[o>>2]|0)!=(i|0)){f[r>>2]=4;e=0;break}if(n>>>0>0|(n|0)==0&e>>>0>4294967295|(a|0)==34){f[r>>2]=4;e=-1;break}else break}else{f[r>>2]=4;e=0}}while(0);c=u;return e|0}function wm(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;u=c;c=c+16|0;o=u;do{if((e|0)!=(i|0)){if((t[e>>0]|0)==45){f[r>>2]=4;e=0;break}s=Ig()|0;l=f[s>>2]|0;f[s>>2]=0;e=Cg(e,o,n,Vb()|0)|0;n=P;a=f[s>>2]|0;if(!a)f[s>>2]=l;if((f[o>>2]|0)!=(i|0)){f[r>>2]=4;e=0;break}if(n>>>0>0|(n|0)==0&e>>>0>4294967295|(a|0)==34){f[r>>2]=4;e=-1;break}else break}else{f[r>>2]=4;e=0}}while(0);c=u;return e|0}function _m(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;u=c;c=c+16|0;o=u;do{if((e|0)!=(i|0)){if((t[e>>0]|0)==45){f[r>>2]=4;e=0;break}s=Ig()|0;l=f[s>>2]|0;f[s>>2]=0;e=Cg(e,o,n,Vb()|0)|0;n=P;a=f[s>>2]|0;if(!a)f[s>>2]=l;if((f[o>>2]|0)!=(i|0)){f[r>>2]=4;e=0;break}if(n>>>0>0|(n|0)==0&e>>>0>65535|(a|0)==34){f[r>>2]=4;e=-1;break}else{e=e&65535;break}}else{f[r>>2]=4;e=0}}while(0);c=u;return e|0}function mm(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0;o=c;c=c+16|0;l=o;do{if((e|0)!=(i|0)){a=Ig()|0;s=f[a>>2]|0;f[a>>2]=0;e=Rg(e,l,t,Vb()|0)|0;t=P;n=f[a>>2]|0;if(!n)f[a>>2]=s;if((f[l>>2]|0)!=(i|0)){f[r>>2]=4;t=0;e=0;break}if((n|0)==34){f[r>>2]=4;l=(t|0)>0|(t|0)==0&e>>>0>0;P=l?2147483647:-2147483648;c=o;return(l?-1:0)|0}}else{f[r>>2]=4;t=0;e=0}}while(0);P=t;c=o;return e|0}function vm(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0;o=c;c=c+16|0;l=o;e:do{if((e|0)==(i|0)){f[r>>2]=4;e=0}else{a=Ig()|0;s=f[a>>2]|0;f[a>>2]=0;e=Rg(e,l,t,Vb()|0)|0;t=P;n=f[a>>2]|0;if(!n)f[a>>2]=s;if((f[l>>2]|0)!=(i|0)){f[r>>2]=4;e=0;break}do{if((n|0)==34){f[r>>2]=4;if((t|0)>0|(t|0)==0&e>>>0>0){e=2147483647;break e}}else{if((t|0)<-1|(t|0)==-1&e>>>0<2147483648){f[r>>2]=4;break}if((t|0)>0|(t|0)==0&e>>>0>2147483647){f[r>>2]=4;e=2147483647;break e}else break e}}while(0);e=-2147483648}}while(0);c=o;return e|0}function pm(){}function gm(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;t=i-t-(r>>>0>e>>>0|0)>>>0;return(P=t,e-r>>>0|0)|0}function ym(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;n=e+r|0;if((r|0)>=20){i=i&255;s=e&3;l=i|i<<8|i<<16|i<<24;a=n&~3;if(s){s=e+4-s|0;while((e|0)<(s|0)){t[e>>0]=i;e=e+1|0}}while((e|0)<(a|0)){f[e>>2]=l;e=e+4|0}}while((e|0)<(n|0)){t[e>>0]=i;e=e+1|0}return e-r|0}function Mm(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;r=e+r>>>0;return(P=i+t+(r>>>0<e>>>0|0)>>>0,r|0)|0}function Em(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){P=i>>>r;return e>>>r|(i&(1<<r)-1)<<32-r}P=0;return i>>>r-32|0}function Am(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if((r|0)>=4096)return Je(e|0,i|0,r|0)|0;n=e|0;if((e&3)==(i&3)){while(e&3){if(!r)return n|0;t[e>>0]=t[i>>0]|0;e=e+1|0;i=i+1|0;r=r-1|0}while((r|0)>=4){f[e>>2]=f[i>>2];e=e+4|0;i=i+4|0;r=r-4|0}}while((r|0)>0){t[e>>0]=t[i>>0]|0;e=e+1|0;i=i+1|0;r=r-1|0}return n|0}function Sm(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){P=i<<r|(e&(1<<r)-1<<32-r)>>>32-r;return e<<r}P=e<<r-32;return 0}function Tm(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if((i|0)<(e|0)&(e|0)<(i+r|0)){n=e;i=i+r|0;e=e+r|0;while((r|0)>0){e=e-1|0;i=i-1|0;r=r-1|0;t[e>>0]=t[i>>0]|0}e=n}else Am(e,i,r)|0;return e|0}function Cm(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){P=i>>r;return e>>>r|(i&(1<<r)-1)<<32-r}P=(i|0)<0?-1:0;return i>>r-32|0}function Rm(e){e=e|0;var i=0;i=t[k+(e&255)>>0]|0;if((i|0)<8)return i|0;i=t[k+(e>>8&255)>>0]|0;if((i|0)<8)return i+8|0;i=t[k+(e>>16&255)>>0]|0;if((i|0)<8)return i+16|0;return(t[k+(e>>>24)>>0]|0)+24|0}function Lm(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,f=0;f=e&65535;n=i&65535;r=re(n,f)|0;t=e>>>16;e=(r>>>16)+(re(n,t)|0)|0;n=i>>>16;i=re(n,f)|0;return(P=(e>>>16)+(re(n,t)|0)+(((e&65535)+i|0)>>>16)|0,e+i<<16|r&65535|0)|0}function xm(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,f=0,a=0,s=0,l=0,o=0;o=i>>31|((i|0)<0?-1:0)<<1;l=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;f=t>>31|((t|0)<0?-1:0)<<1;n=((t|0)<0?-1:0)>>31|((t|0)<0?-1:0)<<1;s=gm(o^e,l^i,o,l)|0;a=P;e=f^o;i=n^l;return gm((Dm(s,a,gm(f^r,n^t,f,n)|0,P,0)|0)^e,P^i,e,i)|0}function Pm(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0,s=0,l=0,o=0,u=0;n=c;c=c+16|0;l=n|0;s=i>>31|((i|0)<0?-1:0)<<1;a=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;u=t>>31|((t|0)<0?-1:0)<<1;o=((t|0)<0?-1:0)>>31|((t|0)<0?-1:0)<<1;e=gm(s^e,a^i,s,a)|0;i=P;Dm(e,i,gm(u^r,o^t,u,o)|0,P,l)|0;t=gm(f[l>>2]^s,f[l+4>>2]^a,s,a)|0;r=P;c=n;return(P=r,t)|0}function Om(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,f=0;n=e;f=r;r=Lm(n,f)|0;e=P;return(P=(re(i,f)|0)+(re(t,n)|0)+e|e&0,r|0|0)|0}function Bm(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;return Dm(e,i,r,t,0)|0}function Im(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0;a=c;c=c+16|0;n=a|0;Dm(e,i,r,t,n)|0;c=a;return(P=f[n+4>>2]|0,f[n>>2]|0)|0}function Dm(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0;c=e;o=i;u=o;s=r;d=t;l=d;if(!u){a=(n|0)!=0;if(!l){if(a){f[n>>2]=(c>>>0)%(s>>>0);f[n+4>>2]=0}d=0;n=(c>>>0)/(s>>>0)>>>0;return(P=d,n)|0}else{if(!a){d=0;n=0;return(P=d,n)|0}f[n>>2]=e|0;f[n+4>>2]=i&0;d=0;n=0;return(P=d,n)|0}}a=(l|0)==0;do{if(s){if(!a){a=(ne(l|0)|0)-(ne(u|0)|0)|0;if(a>>>0<=31){h=a+1|0;l=31-a|0;i=a-31>>31;s=h;e=c>>>(h>>>0)&i|u<<l;i=u>>>(h>>>0)&i;a=0;l=c<<l;break}if(!n){d=0;n=0;return(P=d,n)|0}f[n>>2]=e|0;f[n+4>>2]=o|i&0;d=0;n=0;return(P=d,n)|0}a=s-1|0;if(a&s){l=(ne(s|0)|0)+33-(ne(u|0)|0)|0;k=64-l|0;h=32-l|0;o=h>>31;b=l-32|0;i=b>>31;s=l;e=h-1>>31&u>>>(b>>>0)|(u<<h|c>>>(l>>>0))&i;i=i&u>>>(l>>>0);a=c<<k&o;l=(u<<k|c>>>(b>>>0))&o|c<<h&l-33>>31;break}if(n){f[n>>2]=a&c;f[n+4>>2]=0}if((s|0)==1){b=o|i&0;k=e|0|0;return(P=b,k)|0}else{k=Rm(s|0)|0;b=u>>>(k>>>0)|0;k=u<<32-k|c>>>(k>>>0)|0;return(P=b,k)|0}}else{if(a){if(n){f[n>>2]=(u>>>0)%(s>>>0);f[n+4>>2]=0}b=0;k=(u>>>0)/(s>>>0)>>>0;return(P=b,k)|0}if(!c){if(n){f[n>>2]=0;f[n+4>>2]=(u>>>0)%(l>>>0)}b=0;k=(u>>>0)/(l>>>0)>>>0;return(P=b,k)|0}a=l-1|0;if(!(a&l)){if(n){f[n>>2]=e|0;f[n+4>>2]=a&u|i&0}b=0;k=u>>>((Rm(l|0)|0)>>>0);return(P=b,k)|0}a=(ne(l|0)|0)-(ne(u|0)|0)|0;if(a>>>0<=30){i=a+1|0;l=31-a|0;s=i;e=u<<l|c>>>(i>>>0);i=u>>>(i>>>0);a=0;l=c<<l;break}if(!n){b=0;k=0;return(P=b,k)|0}f[n>>2]=e|0;f[n+4>>2]=o|i&0;b=0;k=0;return(P=b,k)|0}}while(0);if(!s){u=l;o=0;l=0}else{h=r|0|0;c=d|t&0;u=Mm(h|0,c|0,-1,-1)|0;r=P;o=l;l=0;do{t=o;o=a>>>31|o<<1;a=l|a<<1;t=e<<1|t>>>31|0;d=e>>>31|i<<1|0;gm(u,r,t,d)|0;k=P;b=k>>31|((k|0)<0?-1:0)<<1;l=b&1;e=gm(t,d,b&h,(((k|0)<0?-1:0)>>31|((k|0)<0?-1:0)<<1)&c)|0;i=P;s=s-1|0}while((s|0)!=0);u=o;o=0}s=0;if(n){f[n>>2]=e;f[n+4>>2]=i}b=(a|0)>>>31|(u|s)<<1|(s<<1|a>>>31)&0|o;k=(a<<1|0>>>31)&-2|l;return(P=b,k)|0}function Nm(e,i,r,t,n,f,a,s){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;s=s|0;return rM[e&15](i|0,r|0,t|0,n|0,f|0,a|0,s|0)|0}function Fm(e,i,r,t,n,f){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;tM[e&15](i|0,r|0,t|0,n|0,f|0)}function Um(e,i,r,t,n,f,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=+a;return nM[e&3](i|0,r|0,t|0,n|0,f|0,+a)|0}function jm(e,i){e=e|0;i=i|0;fM[e&255](i|0)}function Hm(e,i,r){e=e|0;i=i|0;r=r|0;aM[e&127](i|0,r|0)}function zm(e,i,r,t,n,f,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;return sM[e&63](i|0,r|0,t|0,n|0,f|0,a|0)|0}function Ym(e,i){e=e|0;i=i|0;return lM[e&127](i|0)|0}function qm(e,i,r,t,n,f,a,s,l,o,u,c){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;return oM[e&3](i|0,r|0,t|0,n|0,f|0,a|0,s|0,l|0,o|0,u|0,c|0)|0}function Xm(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;return uM[e&63](i|0,r|0,t|0)|0}function Vm(e,i,r,t,n,f,a,s,l,o,u,c,h,d,b,k){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;h=h|0;d=d|0;b=b|0;k=k|0;cM[e&3](i|0,r|0,t|0,n|0,f|0,a|0,s|0,l|0,o|0,u|0,c|0,h|0,d|0,b|0,k|0)}function Gm(e,i,r,t,n,f,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;hM[e&15](i|0,r|0,t|0,n|0,f|0,a|0)}function Km(e,i,r,t,n,f,a,s){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;s=s|0;dM[e&7](i|0,r|0,t|0,n|0,f|0,a|0,s|0)}function Wm(e,i,r,t,n,f,a,s,l,o,u){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;bM[e&7](i|0,r|0,t|0,n|0,f|0,a|0,s|0,l|0,o|0,u|0)}function Zm(e,i,r){e=e|0;i=i|0;r=r|0;return kM[e&63](i|0,r|0)|0}function Jm(e,i,r,t,n,f){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;return wM[e&31](i|0,r|0,t|0,n|0,f|0)|0}function Qm(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;return+_M[e&3](i|0,r|0,t|0)}function $m(e){e=e|0;return mM[e&15]()|0}function ev(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;return vM[e&31](i|0,r|0,t|0,n|0)|0}function iv(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;pM[e&15](i|0,r|0,t|0)}function rv(e){e=e|0;gM[e&7]()}function tv(e,i,r,t,n,f,a,s,l){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;s=s|0;l=l|0;return yM[e&15](i|0,r|0,t|0,n|0,f|0,a|0,s|0,l|0)|0}function nv(e,i,r,t,n,f){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=+f;return MM[e&7](i|0,r|0,t|0,n|0,+f)|0}function fv(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;EM[e&63](i|0,r|0,t|0,n|0)}function av(e,i,r,t,n,f,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;fe(0);return 0}function sv(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;fe(1)}function lv(e,i,r,t,n,f){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=+f;fe(2);return 0}function ov(e){e=e|0;fe(3)}function uv(e,i){e=e|0;i=i|0;fe(4)}function cv(e,i,r,t,n,f){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;fe(5);return 0}function hv(e){e=e|0;fe(6);return 0}function dv(e){e=e|0;return fi(e|0)|0}function bv(e){e=e|0;return pi(e|0)|0}function kv(e){e=e|0;return ui(e|0)|0}function wv(e,i,r,t,n,f,a,s,l,o,u){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;fe(7);return 0}function _v(e,i,r){e=e|0;i=i|0;r=r|0;fe(8);return 0}function mv(e,i,r,t,n,f,a,s,l,o,u,c,h,d,b){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;h=h|0;d=d|0;b=b|0;fe(9)}function vv(e,i,r,t,n,f){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;fe(10)}function pv(e,i,r,t,n,f,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;fe(11)}function gv(e,i,r,t,n,f,a,s,l,o){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;s=s|0;l=l|0;o=o|0;fe(12)}function yv(e,i){e=e|0;i=i|0;fe(13);return 0}function Mv(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;fe(14);return 0}function Ev(e,i,r){e=e|0;i=i|0;r=r|0;fe(15);return 0.0}function Av(){fe(16);return 0}function Sv(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;fe(17);return 0}function Tv(e,i,r){e=e|0;i=i|0;r=r|0;fe(18)}function Cv(e,i,r){e=e|0;i=i|0;r=r|0;bi(e|0,i|0,r|0)}function Rv(){fe(19)}function Lv(){mi()}function xv(){Qe()}function Pv(){ki()}function Ov(e,i,r,t,n,f,a,s){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;f=f|0;a=a|0;s=s|0;fe(20);return 0}function Bv(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=+n;fe(21);return 0}function Iv(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;fe(22)}function Dv(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,255,0);u=e+152|0;if(((f[o+4>>2]|0)==(f[u>>2]|0)?(f[o+8>>2]|0)==(f[e+156>>2]|0):0)?(f[o+12>>2]|0)==(f[e+160>>2]|0):0){u=f[8900]|0;f[e+4580>>2]=u+(((f[8901]|0)-u|0)>>>1);c=h;return}r=e+4584|0;n=e+4588|0;a=f[n>>2]|0;i=f[r>>2]|0;s=a-i|0;if(s>>>0>=512){if(s>>>0>512?(l=i+512|0,(a|0)!=(l|0)):0)f[n>>2]=l}else{zt(r,512-s|0);i=f[r>>2]|0}o=e+4580|0;f[o>>2]=i+256;l=e+160|0;a=e+156|0;s=-256;while(1){i=f[l>>2]|0;if((s|0)>(0-i|0)){r=f[a>>2]|0;if((s|0)>(0-r|0)){n=f[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){t[(f[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;t[(f[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==256)break}c=h;return}function Nv(e){e=e|0;var i=0,r=0;f[e>>2]=35660;i=f[e+4608>>2]|0;if(i){r=e+4612|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}e=e+88|0;i=f[e>>2]|0;f[e>>2]=0;if(!i)return;fM[f[(f[i>>2]|0)+4>>2]&255](i);return}function Fv(e){e=e|0;var i=0,r=0;f[e>>2]=35660;i=f[e+4608>>2]|0;if(i){r=e+4612|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}f[e>>2]=36736;i=f[e+92>>2]|0;if(i){r=e+96|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i)}r=e+88|0;i=f[r>>2]|0;f[r>>2]=0;if(!i){Ip(e);return}fM[f[(f[i>>2]|0)+4>>2]&255](i);Ip(e);return}function Uv(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0;y=c;c=c+352|0;M=y+328|0;E=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;k=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((f[e+28>>2]|0)!=0?(f[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=f[p>>2]|0;if(!l){e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[r>>0]|0;Re(44,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}e=f[e+12>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[n>>0]|0;Re(45,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[a>>0]|0;Re(46,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(48)|0;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];t[M>>0]=t[s>>0]|0;Re(47,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=E+56|0;a=E+4|0;f[E>>2]=36160;f[l>>2]=36180;_=0;ce(62,E+56|0,a|0);y=_;_=0;if(y&1){A=ze()|0;nd(l);$e(A|0)}f[E+128>>2]=0;f[E+132>>2]=-1;f[E>>2]=36200;f[E+56>>2]=36220;_=0;ue(180,a|0);y=_;_=0;do{if(y&1)e=ze()|0;else{f[a>>2]=36236;s=E+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[E+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);y=_;_=0;if(y&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,E|0,49007,21)|0;M=_;_=0;do{if((!(M&1)?(_=0,d=pe(36,e|0,f[p>>2]|0)|0,M=_,_=0,!(M&1)):0)?(_=0,ke(28,d|0,50997,18)|0,M=_,_=0,!(M&1)):0){n=He(16)|0;_=0;ce(64,k|0,a|0);M=_;_=0;if(!(M&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,k|0);M=_;_=0;if(M&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(k);if(!r)break}else e=ze()|0;je(n|0)}else A=34}while(0);if((A|0)==34)e=ze()|0;f[E>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}if((e|0)<=8){e=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,e|0,8,35648);A=_;_=0;if(!(A&1))bi(e|0,824,96);A=ze()|0;je(e|0);$e(A|0)}r=16-e|0;switch(l|0){case 1:{e=Bp(60)|0;f[o>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[o>>2];f[M+4>>2]=f[o+4>>2];Re(41,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 2:{e=Bp(60)|0;f[u>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[u>>2];f[M+4>>2]=f[u+4>>2];Re(42,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}case 3:{e=Bp(60)|0;f[h>>2]=r;_=0;f[E>>2]=f[i>>2];f[E+4>>2]=f[i+4>>2];f[E+8>>2]=f[i+8>>2];f[M>>2]=f[h>>2];f[M+4>>2]=f[h+4>>2];Re(43,e|0,E|0,m|0,M|0);A=_;_=0;if(!(A&1)){A=e;c=y;return A|0}A=ze()|0;Ip(e);$e(A|0)}default:{l=g+56|0;a=g+4|0;f[g>>2]=36160;f[l>>2]=36180;_=0;ce(62,g+56|0,a|0);E=_;_=0;if(E&1){A=ze()|0;nd(l);$e(A|0)}f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=36200;f[g+56>>2]=36220;_=0;ue(180,a|0);E=_;_=0;do{if(E&1)e=ze()|0;else{f[a>>2]=36236;s=g+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[g+52>>2]=16;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_=0;ce(63,a|0,M|0);E=_;_=0;if(E&1){e=ze()|0;Oh(M);Oh(s);cd(a);break}Oh(M);_=0;e=ke(28,g|0,49007,21)|0;E=_;_=0;do{if((!(E&1)?(_=0,b=pe(36,e|0,f[p>>2]|0)|0,E=_,_=0,!(E&1)):0)?(_=0,ke(28,b|0,50997,18)|0,E=_,_=0,!(E&1)):0){n=He(16)|0;_=0;ce(64,v|0,a|0);E=_;_=0;if(!(E&1)){if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Re(36,n|0,9,35648,v|0);E=_;_=0;if(E&1)r=1;else{_=0;Ae(6,n|0,824,96);_=0;r=0}e=ze()|0;Oh(v);if(!r)break}else e=ze()|0;je(n|0)}else A=64}while(0);if((A|0)==64)e=ze()|0;f[g>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(l);A=e;$e(A|0)}}while(0);A=e;nd(l);$e(A|0)}}}r=f[i+4>>2]|0;n=Bp(16)|0;e=f[e+16>>2]|0;if(!r){A=f[i>>2]|0;f[n>>2]=36132;f[n+4>>2]=A;f[n+8>>2]=1;f[n+12>>2]=e;A=n;c=y;return A|0}else{f[n>>2]=36108;f[n+4>>2]=r;f[n+8>>2]=1;f[n+12>>2]=e;A=n;c=y;return A|0}return 0}function jv(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,f[e+128>>2]|0,f[e+136>>2]|0);u=f[i+4>>2]|0;l=f[i+8>>2]|0;l=(l|0)==0?f[h+8>>2]|0:l;s=f[i+12>>2]|0;s=(s|0)==0?f[h+12>>2]|0:s;r=f[i+16>>2]|0;a=f[h+16>>2]|0;f[e+176>>2]=(u|0)==0?f[h+4>>2]|0:u;f[e+180>>2]=l;f[e+184>>2]=s;Kv(e);s=e+132|0;i=(f[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{f[e+188+(l*12|0)>>2]=i;f[e+188+(l*12|0)+4>>2]=0;n[e+188+(l*12|0)+8>>1]=0;n[e+188+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(f[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;f[e+4568>>2]=u;f[e+4572>>2]=0;t[e+4576>>0]=h;t[e+4577>>0]=1;t[e+4578>>0]=0;f[e+4580>>2]=u;f[e+4584>>2]=1;t[e+4588>>0]=h;t[e+4589>>0]=1;t[e+4590>>0]=0;f[e+4592>>2]=0;c=o;return}function Hv(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=f[i>>2]|0;f[i>>2]=0;i=f[l>>2]|0;f[l>>2]=s;if(i)fM[f[(f[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=f[l>>2]|0;t[e+4620>>0]=a&1;i=e+156|0;f[i>>2]=f[r>>2];f[i+4>>2]=f[r+4>>2];f[i+8>>2]=f[r+8>>2];f[i+12>>2]=f[r+12>>2];Ct(e,n);zv(e);i=f[e+116>>2]|0;e=f[e+112>>2]|0;while(1){a=i+-1|0;r=(t[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=f[l>>2]|0;if(!a)return;f[l>>2]=a+i;n=n+8|0;f[n>>2]=(f[n>>2]|0)-i;return}function zv(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0;S=c;c=c+32|0;C=S+12|0;A=S;o=e+172|0;E=(f[o>>2]|0)+4|0;if((f[e+28>>2]|0)==1)u=f[e+20>>2]|0;else u=1;i=re(u<<1,E)|0;f[C>>2]=0;R=C+4|0;f[R>>2]=0;f[C+8>>2]=0;e:do{if(i){if(!((i|0)<0?(_=0,ue(178,C|0),T=_,_=0,T&1):0))M=6;if((M|0)==6?(_=0,r=de(67,i|0)|0,T=_,_=0,!(T&1)):0){f[R>>2]=r;f[C>>2]=r;f[C+8>>2]=r+i;while(1){t[r>>0]=0;r=(f[R>>2]|0)+1|0;f[R>>2]=r;i=i+-1|0;if(!i)break e}}r=ze()|0;i=f[C>>2]|0;if(!i)$e(r|0);if((f[R>>2]|0)!=(i|0))f[R>>2]=i;Ip(i);$e(r|0)}}while(0);f[A>>2]=0;T=A+4|0;f[T>>2]=0;f[A+8>>2]=0;do{if(!u)M=19;else{if(!(u>>>0>1073741823?(_=0,ue(178,A|0),y=_,_=0,y&1):0))M=17;if((M|0)==17?(n=u<<2,_=0,a=de(67,n|0)|0,y=_,_=0,!(y&1)):0){f[A>>2]=a;M=a+(u<<2)|0;f[A+8>>2]=M;ym(a|0,0,n|0)|0;f[T>>2]=M;M=19;break}r=ze()|0;i=f[A>>2]|0;n=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-n|0)>>>2)<<2);Ip(i)}}}while(0);if((M|0)==19){h=e+8|0;i=f[h>>2]|0;e:do{if((i|0)>0){d=e+4596|0;b=re(u,E)|0;k=b+1|0;w=e+4600|0;m=e+160|0;v=e+168|0;p=e+164|0;g=e+156|0;y=e+88|0;l=e+4592|0;if((u|0)>0)s=0;else{s=0;while(1){a=f[C>>2]|0;r=a+1|0;f[d>>2]=r;n=a+k|0;f[w>>2]=n;if(!(s&1))r=k;else{f[d>>2]=n;f[w>>2]=r;r=1}u=f[m>>2]|0;if((u|0)<=(s|0)?(s|0)<((f[v>>2]|0)+u|0):0){u=f[y>>2]|0;_=0;Re(f[(f[u>>2]|0)+8>>2]|0,u|0,a+(r+((f[g>>2]|0)-b))|0,f[p>>2]|0,E|0);u=_;_=0;if(u&1)break;i=f[h>>2]|0}s=s+1|0;if((s|0)>=(i|0)){M=50;break e}}r=ze()|0;break}i:while(1){r=f[C>>2]|0;i=r+1|0;f[d>>2]=i;r=r+k|0;f[w>>2]=r;if(s&1){f[d>>2]=r;f[w>>2]=i;i=r}a=f[A>>2]|0;r=i;n=0;do{f[l>>2]=f[a+(n<<2)>>2];M=f[o>>2]|0;t[r+M>>0]=t[r+(M+-1)>>0]|0;t[(f[w>>2]|0)+-1>>0]=t[f[d>>2]>>0]|0;_=0;ce(83,e|0,0);M=_;_=0;if(M&1){M=38;break i}a=f[A>>2]|0;f[a+(n<<2)>>2]=f[l>>2];r=(f[d>>2]|0)+E|0;f[d>>2]=r;i=f[w>>2]|0;f[w>>2]=i+E;n=n+1|0}while((n|0)<(u|0));M=f[m>>2]|0;if(((M|0)<=(s|0)?(s|0)<((f[v>>2]|0)+M|0):0)?(M=f[y>>2]|0,_=0,Re(f[(f[M>>2]|0)+8>>2]|0,M|0,i+(E+((f[g>>2]|0)-b))|0,f[p>>2]|0,E|0),M=_,_=0,M&1):0){M=30;break}s=s+1|0;if((s|0)>=(f[h>>2]|0)){M=50;break e}}if((M|0)==30){r=ze()|0;break}else if((M|0)==38){r=ze()|0;break}}else M=50}while(0);do{if((M|0)==50){_=0;ue(183,e|0);e=_;_=0;if(e&1){r=ze()|0;break}i=f[A>>2]|0;r=i;if(i){n=f[T>>2]|0;if((n|0)!=(i|0))f[T>>2]=n+(~((n+-4-r|0)>>>2)<<2);Ip(i)}i=f[C>>2]|0;if(!i){c=S;return}if((f[R>>2]|0)!=(i|0))f[R>>2]=i;Ip(i);c=S;return}}while(0);i=f[A>>2]|0;n=i;if(i){a=f[T>>2]|0;if((a|0)!=(i|0))f[T>>2]=a+(~((a+-4-n|0)>>>2)<<2);Ip(i)}}i=f[C>>2]|0;if(!i)$e(r|0);if((f[R>>2]|0)!=(i|0))f[R>>2]=i;Ip(i);$e(r|0)}function Yv(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0,v=0;k=e+4596|0;r=f[k>>2]|0;v=e+172|0;i=f[v>>2]|0;if((i|0)<=0)return;w=e+4600|0;_=e+4604|0;m=e+4592|0;u=r;l=a[r+-1>>0]|0;r=a[r>>0]|0;b=0;while(1){h=f[w>>2]|0;o=t[h+(b+-1)>>0]|0;d=o&255;s=b+1|0;n=a[u+s>>0]|0;c=f[_>>2]|0;u=r-l|0;l=l-d|0;c=((((t[c+(n-r)>>0]|0)*9|0)+(t[c+u>>0]|0)|0)*9|0)+(t[c+l>>0]|0)|0;h=h+b|0;if(!c){i=Xv(e,o,h,i-b|0)|0;r=i+b|0;if((r|0)!=(f[v>>2]|0)){d=Vv(e,d,a[(f[k>>2]|0)+r>>0]|0)|0;t[(f[w>>2]|0)+r>>0]=d;d=f[m>>2]|0;f[m>>2]=(d|0)<1?0:d+-1|0;i=i+1|0}s=i+b|0;n=f[k>>2]|0;r=a[n+(s+-1)>>0]|0;n=a[n+s>>0]|0}else{i=r-d>>31;if((i^l|0)<0)i=r;else i=d+((i^u|0)<0?0:u)|0;d=qv(e,c,a[h>>0]|0,i,0)|0;t[(f[w>>2]|0)+b>>0]=d}i=f[v>>2]|0;if((i|0)<=(s|0))break;u=f[k>>2]|0;l=r;r=n;b=s}return}function qv(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,m=0,v=0;v=i>>31;c=(v^i)-v|0;k=e+188+(c*12|0)+10|0;r=n[k>>1]|0;b=e+188+(c*12|0)|0;s=f[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){i=5;while(1)if((r<<i|0)<(s|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;d=e+188+(c*12|0)+8|0;r=(n[d>>1]^v)-v+a|0;m=e+128|0;s=f[m>>2]|0;if((r&s|0)==(r|0))h=r;else h=s&~(r>>31);r=e+112|0;if((f[r>>2]|0)<8)jt(e);s=e+108|0;a=f[s>>2]|0;l=a>>>24;o=f[2832+(i<<11)+(l<<3)+4>>2]|0;if(!o){u=f[e+148>>2]|0;s=f[e+140>>2]|0;r=wa(e)|0;if((r|0)<(u+-1-s|0)){if(i)r=(_a(e,i)|0)+(r<<i)|0}else r=(_a(e,s)|0)+1|0;r=r<<31>>31^r>>1;if((((r|0)>-1?r:0-r|0)|0)>65535){r=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,r|0,5,35648);e=_;_=0;if(e&1){e=ze()|0;je(r|0);$e(e|0)}else bi(r|0,824,96)}}else{f[r>>2]=(f[r>>2]|0)-o;f[s>>2]=a<<o;r=f[2832+(i<<11)+(l<<3)>>2]|0}u=e+136|0;a=f[u>>2]|0;if(!i){if(!a)s=(f[e+188+(c*12|0)+4>>2]<<1)+-1+(n[k>>1]|0)>>31;else s=0;o=s^r}else o=r;i=f[e+152>>2]|0;s=(f[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;l=e+188+(c*12|0)+4|0;r=(f[l>>2]|0)+(re(a<<1|1,o)|0)|0;a=n[k>>1]|0;if((a|0)==(i|0)){s=s>>1;r=r>>1;a=i>>1}f[b>>2]=s;i=a+1|0;n[k>>1]=i;s=i+r|0;if((s|0)>=1){if((r|0)>0){r=r-i|0;k=n[d>>1]|0;n[d>>1]=(k<<16>>16<127&1)+(k&65535);r=(r|0)>0?0:r}}else{r=n[d>>1]|0;n[d>>1]=(r&65535)-(r<<16>>16>-128&1);r=(s|0)>(~a|0)?s:0-a|0}f[l>>2]=r;i=f[u>>2]|0;a=i<<1|1;s=(re(a,(o^v)-v|0)|0)+h|0;if((s|0)>=(0-i|0)){r=f[m>>2]|0;if((r+i|0)<(s|0))s=s-(re(f[e+132>>2]|0,a)|0)|0}else{s=(re(f[e+132>>2]|0,a)|0)+s|0;r=f[m>>2]|0}if((s&r|0)==(s|0)){e=s;e=e&255;return e|0}e=r&~(s>>31);e=e&255;return e|0}function Xv(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;o=e+112|0;u=e+108|0;c=e+4592|0;a=f[o>>2]|0;s=0;while(1){if((a|0)<1){jt(e);a=f[o>>2]|0}l=f[u>>2]|0;a=a+-1|0;f[o>>2]=a;f[u>>2]=l<<1;if((l|0)>=0){h=8;break}l=f[c>>2]|0;d=1<<f[36476+(l<<2)>>2];b=n-s|0;b=(d|0)<(b|0)?d:b;s=b+s|0;if((b|0)==(d|0))f[c>>2]=(l|0)>30?31:l+1|0;if((s|0)==(n|0)){a=n;break}}if((h|0)==8)if((s|0)!=(n|0)){a=f[c>>2]|0;if((a+-4|0)>>>0<28)a=_a(e,f[36476+(a<<2)>>2]|0)|0;else a=0;a=a+s|0;if((a|0)>(n|0)){a=He(16)|0;if((t[8]|0)==0?(De(8)|0)!=0:0){di(72,35648,w|0)|0;qe(8)}_=0;Ae(7,a|0,5,35648);b=_;_=0;if(b&1){b=ze()|0;je(a|0);$e(b|0)}else bi(a|0,824,96)}}else a=n;if((a|0)<=0)return a|0;ym(r|0,i|0,a|0)|0;return a|0}function Vv(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0;a=i-r|0;s=e+128|0;t=e+136|0;if((((a|0)>-1?a:0-a|0)|0)>(f[t>>2]|0)){i=re(Gv(e,e+4568|0)|0,r-i>>31|1)|0;n=f[t>>2]|0;a=n<<1|1;i=(re(i,a)|0)+r|0;if((i|0)>=(0-n|0)){t=f[s>>2]|0;if((t+n|0)<(i|0))i=i-(re(f[e+132>>2]|0,a)|0)|0}else{i=(re(f[e+132>>2]|0,a)|0)+i|0;t=f[s>>2]|0}if((i&t|0)==(i|0)){e=i;e=e&255;return e|0}e=t&~(i>>31);e=e&255;return e|0}else{r=Gv(e,e+4580|0)|0;a=f[t>>2]|0;n=a<<1|1;i=(re(n,r)|0)+i|0;if((i|0)>=(0-a|0)){t=f[s>>2]|0;if((t+a|0)<(i|0))i=i-(re(f[e+132>>2]|0,n)|0)|0}else{i=(re(f[e+132>>2]|0,n)|0)+i|0;t=f[s>>2]|0}if((i&t|0)==(i|0)){e=i;e=e&255;return e|0}e=t&~(i>>31);e=e&255;return e|0}return 0}function Gv(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0;h=i+9|0;r=a[h>>0]|0;l=i+4|0;s=(re(r>>>1,f[l>>2]|0)|0)+(f[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;o=f[e+148>>2]|0;u=f[36476+(f[e+4592>>2]<<2)>>2]|0;r=f[e+140>>2]|0;s=wa(e)|0;do{if((s|0)<(o+-2-u-r|0))if(!n){n=f[l>>2]|0;e=n+s|0;r=e&1;e=(r+e|0)/2|0;c=8;break}else{u=(_a(e,n)|0)+(s<<n)|0;n=f[l>>2]|0;s=u+n|0;o=s&1;r=o;l=1;s=(o+s|0)/2|0;break}else{s=(_a(e,r)|0)+1|0;o=f[l>>2]|0;e=s+o|0;r=e&1;e=(r+e|0)/2|0;if(!n){n=o;c=8}else{u=s;l=1;s=e;n=o}}}while(0);if((c|0)==8){u=s;l=a[i+10>>0]<<1>>>0>=(a[h>>0]|0)>>>0;s=e}s=(r|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;t[c>>0]=(a[c>>0]|0)+1}r=(u+1-n>>1)+(f[i>>2]|0)|0;f[i>>2]=r;n=t[h>>0]|0;if(n<<24>>24!=(t[i+8>>0]|0)){i=n;i=i&255;i=i+1|0;i=i&255;t[h>>0]=i;return s|0}f[i>>2]=r>>1;c=(n&255)>>>1;t[h>>0]=c;i=i+10|0;t[i>>0]=(a[i>>0]|0)>>>1;i=c;i=i&255;i=i+1|0;i=i&255;t[h>>0]=i;return s|0}function Kv(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0;k=c;c=c+32|0;n=k;b=e+136|0;e:do{if(!(f[b>>2]|0)){r=f[e+128>>2]|0;i=e+144|0;if((((r|0)==((1<<f[i>>2])+-1|0)?(op(n,r,0),(f[n+4>>2]|0)==(f[e+176>>2]|0)):0)?(f[n+8>>2]|0)==(f[e+180>>2]|0):0)?(f[n+12>>2]|0)==(f[e+184>>2]|0):0)switch(f[i>>2]|0){case 8:{b=f[8900]|0;f[e+4604>>2]=b+(((f[8901]|0)-b|0)>>>1);c=k;return}case 10:{b=f[8903]|0;f[e+4604>>2]=b+(((f[8904]|0)-b|0)>>>1);c=k;return}case 12:{b=f[8906]|0;f[e+4604>>2]=b+(((f[8907]|0)-b|0)>>>1);c=k;return}case 16:{b=f[8909]|0;f[e+4604>>2]=b+(((f[8910]|0)-b|0)>>>1);c=k;return}default:break e}}else i=e+144|0}while(0);d=1<<f[i>>2];r=e+4608|0;n=d<<1;a=e+4612|0;s=f[a>>2]|0;i=f[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)f[a>>2]=o}else{zt(r,n-l|0);i=f[r>>2]|0}h=e+4604|0;f[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=k;return}o=e+184|0;u=e+180|0;l=e+176|0;s=i;do{i=f[o>>2]|0;if((s|0)>(0-i|0)){r=f[u>>2]|0;if((s|0)>(0-r|0)){n=f[l>>2]|0;if((s|0)>(0-n|0)){a=f[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;t[(f[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=k;return}function Wv(e){e=e|0;Ip(e);return}function Zv(e){e=e|0;return 50767}function Jv(e,i,r){e=e|0;i=i|0;r=r|0;xh(e,50754,12);return}function Qv(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0;m=c;c=c+16|0;v=m;f[v>>2]=0;p=v+4|0;f[p>>2]=0;f[v+8>>2]=0;k=v+8|0;_=0;a=de(67,1)|0;b=_;_=0;e:do{if((!(b&1)?(b=a+1|0,t[a>>0]=r,f[v>>2]=a,f[p>>2]=b,f[k>>2]=b,_=0,ce(84,v|0,i&65535|0),b=_,_=0,!(b&1)):0)?(_=0,ce(84,v|0,e&65535|0),b=_,_=0,!(b&1)):0){h=n&255;a=f[p>>2]|0;r=f[k>>2]|0;if(a>>>0>=r>>>0){i=f[v>>2]|0;e=i;l=a-e+1|0;if((l|0)<0){_=0;ue(178,v|0);b=_;_=0;if(b&1){w=52;break}e=f[v>>2]|0;r=f[k>>2]|0;i=e}u=i;a=r-u|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<l>>>0?l:a;r=f[p>>2]|0;o=r-u|0;if(!a){a=0;l=0}else w=12}else{o=f[p>>2]|0;a=2147483647;r=o;o=o-u|0;w=12}if((w|0)==12){_=0;l=de(67,a|0)|0;b=_;_=0;if(b&1){w=52;break}}t[l+o>>0]=h;d=r-u|0;b=l+(o-d)|0;Am(b|0,i|0,d|0)|0;f[v>>2]=b;f[p>>2]=l+(o+1);f[k>>2]=l+a;if(e)Ip(e)}else{t[a>>0]=h;f[p>>2]=(f[p>>2]|0)+1}i:do{if((n|0)>0){b=0;while(1){b=b+1|0;d=b&255;a=f[p>>2]|0;i=f[k>>2]|0;if(a>>>0>=i>>>0){e=f[v>>2]|0;r=e;l=a-r+1|0;if((l|0)<0){_=0;ue(178,v|0);h=_;_=0;if(h&1)break;e=f[v>>2]|0;r=e;i=f[k>>2]|0}h=e;a=i-h|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<l>>>0?l:a;i=f[p>>2]|0;o=i-h|0;if(!a){u=0;l=0}else w=25}else{o=f[p>>2]|0;a=2147483647;i=o;o=o-h|0;w=25}if((w|0)==25){w=0;_=0;l=de(67,a|0)|0;u=_;_=0;if(u&1)break;else u=a}t[l+o>>0]=d;a=l+(o+1)|0;h=i-h|0;d=l+(o-h)|0;Am(d|0,e|0,h|0)|0;f[v>>2]=d;f[p>>2]=a;f[k>>2]=l+u;if(r){Ip(r);a=f[p>>2]|0}}else{t[a>>0]=d;a=(f[p>>2]|0)+1|0;f[p>>2]=a}r=f[k>>2]|0;if(a>>>0>=r>>>0){i=f[v>>2]|0;e=i;l=a-e+1|0;if((l|0)<0){_=0;ue(178,v|0);d=_;_=0;if(d&1)break;e=f[v>>2]|0;r=f[k>>2]|0;i=e}h=i;a=r-h|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<l>>>0?l:a;l=f[p>>2]|0;o=l-h|0;if(!a){u=0;r=0}else w=36}else{o=f[p>>2]|0;a=2147483647;l=o;o=o-h|0;w=36}if((w|0)==36){w=0;_=0;r=de(67,a|0)|0;d=_;_=0;if(d&1)break;else u=a}t[r+o>>0]=17;a=r+(o+1)|0;h=l-h|0;d=r+(o-h)|0;Am(d|0,i|0,h|0)|0;f[v>>2]=d;f[p>>2]=a;f[k>>2]=r+u;if(e){Ip(e);a=f[p>>2]|0}}else{t[a>>0]=17;a=(f[p>>2]|0)+1|0;f[p>>2]=a}r=f[k>>2]|0;if(a>>>0>=r>>>0){i=f[v>>2]|0;e=i;l=a-e+1|0;if((l|0)<0){_=0;ue(178,v|0);d=_;_=0;if(d&1)break;e=f[v>>2]|0;r=f[k>>2]|0;i=e}u=i;a=r-u|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<l>>>0?l:a;r=f[p>>2]|0;o=r-u|0;if(!a){a=0;l=0}else w=48}else{o=f[p>>2]|0;a=2147483647;r=o;o=o-u|0;w=48}if((w|0)==48){w=0;_=0;l=de(67,a|0)|0;d=_;_=0;if(d&1)break}t[l+o>>0]=0;h=r-u|0;d=l+(o-h)|0;Am(d|0,i|0,h|0)|0;f[v>>2]=d;f[p>>2]=l+(o+1);f[k>>2]=l+a;if(e)Ip(e)}else{t[a>>0]=0;f[p>>2]=(f[p>>2]|0)+1}if((b|0)>=(n|0))break i}s=ze()|0;break e}}while(0);_=0;o=de(67,20)|0;n=_;_=0;if(!(n&1)){f[o>>2]=36800;t[o+4>>0]=-9;e=o+8|0;f[e>>2]=0;l=o+12|0;f[l>>2]=0;r=o+16|0;f[r>>2]=0;a=f[p>>2]|0;n=f[v>>2]|0;i=a-n|0;do{if((a|0)!=(n|0)){if(!((i|0)<0?(_=0,ue(178,e|0),n=_,_=0,n&1):0))w=62;if((w|0)==62?(_=0,s=de(67,i|0)|0,n=_,_=0,!(n&1)):0){f[l>>2]=s;f[e>>2]=s;f[r>>2]=s+i;a=f[v>>2]|0;r=f[p>>2]|0;if((a|0)==(r|0))break;do{t[s>>0]=t[a>>0]|0;s=(f[l>>2]|0)+1|0;f[l>>2]=s;a=a+1|0}while((a|0)!=(r|0));a=f[v>>2]|0;break}s=ze()|0;a=f[e>>2]|0;if(a){if((f[l>>2]|0)!=(a|0))f[l>>2]=a;Ip(a)}Ip(o);break e}}while(0);if(!a){c=m;return o|0}if((f[p>>2]|0)!=(a|0))f[p>>2]=a;Ip(a);c=m;return o|0}else w=52}else w=52}while(0);if((w|0)==52)s=ze()|0;a=f[v>>2]|0;if(!a)$e(s|0);if((f[p>>2]|0)!=(a|0))f[p>>2]=a;Ip(a);$e(s|0);return 0}function $v(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0;p=c;c=c+32|0;w=p+28|0;y=p+16|0;v=p+4|0;m=p;f[y>>2]=0;M=y+4|0;f[M>>2]=0;f[y+8>>2]=0;b=Bp(5)|0;f[y>>2]=b;k=y+8|0;f[k>>2]=b+5;t[b>>0]=74;t[b+1>>0]=70;t[b+2>>0]=73;t[b+3>>0]=70;t[b+4>>0]=0;f[M>>2]=b+5;_=0;ce(84,y|0,f[e>>2]&65535|0);b=_;_=0;e:do{if(!(b&1)){h=f[e+4>>2]&255;i=f[M>>2]|0;n=f[k>>2]|0;if(i>>>0>=n>>>0){a=f[y>>2]|0;s=a;l=i-s+1|0;if((l|0)<0){_=0;ue(178,y|0);b=_;_=0;if(b&1){g=43;break}s=f[y>>2]|0;n=f[k>>2]|0;a=s}u=a;i=n-u|0;if(i>>>0<1073741823){i=i<<1;i=i>>>0<l>>>0?l:i;n=f[M>>2]|0;o=n-u|0;if(!i){i=0;l=0}else g=10}else{o=f[M>>2]|0;i=2147483647;n=o;o=o-u|0;g=10}if((g|0)==10){_=0;l=de(67,i|0)|0;b=_;_=0;if(b&1){g=43;break}}t[l+o>>0]=h;d=n-u|0;b=l+(o-d)|0;Am(b|0,a|0,d|0)|0;f[y>>2]=b;f[M>>2]=l+(o+1);f[k>>2]=l+i;if(s)Ip(s)}else{t[i>>0]=h;f[M>>2]=(f[M>>2]|0)+1}_=0;ce(84,y|0,f[e+8>>2]&65535|0);b=_;_=0;if(!(b&1)?(_=0,ce(84,y|0,f[e+12>>2]&65535|0),b=_,_=0,!(b&1)):0){b=e+16|0;d=f[b>>2]&255;i=f[M>>2]|0;a=f[k>>2]|0;if(i>>>0>=a>>>0){s=f[y>>2]|0;n=s;l=i-n+1|0;if((l|0)<0){_=0;ue(178,y|0);h=_;_=0;if(h&1){g=43;break}s=f[y>>2]|0;n=s;a=f[k>>2]|0}h=s;i=a-h|0;if(i>>>0<1073741823){i=i<<1;i=i>>>0<l>>>0?l:i;l=f[M>>2]|0;o=l-h|0;if(!i){u=0;a=0}else g=23}else{o=f[M>>2]|0;i=2147483647;l=o;o=o-h|0;g=23}if((g|0)==23){_=0;a=de(67,i|0)|0;u=_;_=0;if(u&1){g=43;break}else u=i}t[a+o>>0]=d;i=a+(o+1)|0;h=l-h|0;d=a+(o-h)|0;Am(d|0,s|0,h|0)|0;f[y>>2]=d;f[M>>2]=i;f[k>>2]=a+u;if(n){Ip(n);i=f[M>>2]|0}}else{t[i>>0]=d;i=(f[M>>2]|0)+1|0;f[M>>2]=i}d=e+20|0;h=f[d>>2]&255;n=f[k>>2]|0;if(i>>>0>=n>>>0){a=f[y>>2]|0;s=a;l=i-s+1|0;if((l|0)<0){_=0;ue(178,y|0);u=_;_=0;if(u&1){g=43;break}s=f[y>>2]|0;n=f[k>>2]|0;a=s}u=a;i=n-u|0;if(i>>>0<1073741823){i=i<<1;i=i>>>0<l>>>0?l:i;n=f[M>>2]|0;o=n-u|0;if(!i){i=0;l=0}else g=34}else{o=f[M>>2]|0;i=2147483647;n=o;o=o-u|0;g=34}if((g|0)==34){_=0;l=de(67,i|0)|0;E=_;_=0;if(E&1){g=43;break}}t[l+o>>0]=h;h=n-u|0;E=l+(o-h)|0;Am(E|0,a|0,h|0)|0;f[y>>2]=E;f[M>>2]=l+(o+1);f[k>>2]=l+i;if(s)Ip(s)}else{t[i>>0]=h;f[M>>2]=(f[M>>2]|0)+1}i=f[b>>2]|0;do{if((i|0)>0){if(!(f[e+24>>2]|0)){f[m>>2]=f[M>>2];E=0+(re(i*3|0,f[d>>2]|0)|0)|0;_=0;f[w>>2]=f[m>>2];Ee(15,y|0,w|0,0,E|0)|0;E=_;_=0;if(E&1){g=43;break e}else break}n=He(16)|0;_=0;Ae(5,v|0,50792,57);E=_;_=0;if(!(E&1)){_=0;i=Me(1)|0;E=_;_=0;if(!(E&1)?(_=0,Re(36,n|0,1,i|0,v|0),E=_,_=0,!(E&1)):0){_=0;Ae(6,n|0,824,96);_=0;r=0}else r=1;i=ze()|0;Oh(v);if(!r){r=i;break e}}else i=ze()|0;je(n|0);r=i;break e}}while(0);_=0;o=de(67,20)|0;E=_;_=0;if(!(E&1)){f[o>>2]=36800;t[o+4>>0]=-32;s=o+8|0;f[s>>2]=0;l=o+12|0;f[l>>2]=0;n=o+16|0;f[n>>2]=0;i=f[M>>2]|0;E=f[y>>2]|0;a=i-E|0;do{if((i|0)!=(E|0)){if(!((a|0)<0?(_=0,ue(178,s|0),E=_,_=0,E&1):0))g=53;if((g|0)==53?(_=0,r=de(67,a|0)|0,E=_,_=0,!(E&1)):0){f[l>>2]=r;f[s>>2]=r;f[n>>2]=r+a;i=f[y>>2]|0;n=f[M>>2]|0;if((i|0)==(n|0))break;do{t[r>>0]=t[i>>0]|0;r=(f[l>>2]|0)+1|0;f[l>>2]=r;i=i+1|0}while((i|0)!=(n|0));i=f[y>>2]|0;break}i=ze()|0;r=f[s>>2]|0;if(r){if((f[l>>2]|0)!=(r|0))f[l>>2]=r;Ip(r)}Ip(o);g=44;break e}}while(0);if(!i){c=p;return o|0}if((f[M>>2]|0)!=(i|0))f[M>>2]=i;Ip(i);c=p;return o|0}else g=43}else g=43}else g=43}while(0);if((g|0)==43){i=ze()|0;g=44}if((g|0)==44)r=i;i=f[y>>2]|0;if(!i)$e(r|0);if((f[M>>2]|0)!=(i|0))f[M>>2]=i;Ip(i);$e(r|0);return 0}function ep(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;o=c;c=c+16|0;h=o;f[h>>2]=0;d=h+4|0;f[d>>2]=0;f[h+8>>2]=0;_=0;i=de(67,1)|0;l=_;_=0;e:do{if((((((!(l&1)?(l=i+1|0,t[i>>0]=1,f[h>>2]=i,f[d>>2]=l,f[h+8>>2]=l,_=0,ce(84,h|0,f[e>>2]&65535|0),l=_,_=0,!(l&1)):0)?(_=0,ce(84,h|0,f[e+4>>2]&65535|0),l=_,_=0,!(l&1)):0)?(_=0,ce(84,h|0,f[e+8>>2]&65535|0),l=_,_=0,!(l&1)):0)?(_=0,ce(84,h|0,f[e+12>>2]&65535|0),l=_,_=0,!(l&1)):0)?(_=0,ce(84,h|0,f[e+16>>2]&65535|0),l=_,_=0,!(l&1)):0)?(_=0,u=de(67,20)|0,l=_,_=0,!(l&1)):0){f[u>>2]=36800;t[u+4>>0]=-8;a=u+8|0;f[a>>2]=0;l=u+12|0;f[l>>2]=0;e=u+16|0;f[e>>2]=0;i=f[d>>2]|0;b=f[h>>2]|0;n=i-b|0;do{if((i|0)!=(b|0)){if(!((n|0)<0?(_=0,ue(178,a|0),b=_,_=0,b&1):0))s=11;if((s|0)==11?(_=0,r=de(67,n|0)|0,b=_,_=0,!(b&1)):0){f[l>>2]=r;f[a>>2]=r;f[e>>2]=r+n;i=f[h>>2]|0;e=f[d>>2]|0;if((i|0)==(e|0))break;do{t[r>>0]=t[i>>0]|0;r=(f[l>>2]|0)+1|0;f[l>>2]=r;i=i+1|0}while((i|0)!=(e|0));i=f[h>>2]|0;break}r=ze()|0;i=f[a>>2]|0;if(i){if((f[l>>2]|0)!=(i|0))f[l>>2]=i;Ip(i)}Ip(u);break e}}while(0);if(!i){c=o;return u|0}if((f[d>>2]|0)!=(i|0))f[d>>2]=i;Ip(i);c=o;return u|0}else s=25}while(0);if((s|0)==25)r=ze()|0;i=f[h>>2]|0;if(!i)$e(r|0);if((f[d>>2]|0)!=(i|0))f[d>>2]=i;Ip(i);$e(r|0);return 0}function ip(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0;s=Bp(5)|0;t[s>>0]=109;t[s+1>>0]=114;t[s+2>>0]=102;t[s+3>>0]=120;t[s+4>>0]=e;_=0;a=de(67,20)|0;n=_;_=0;if(n&1){a=ze()|0;Ip(s);$e(a|0)}f[a>>2]=36800;t[a+4>>0]=-24;e=a+8|0;f[e>>2]=0;i=a+12|0;f[i>>2]=0;r=a+16|0;f[r>>2]=0;_=0;n=de(67,5)|0;l=_;_=0;if(!(l&1)){f[i>>2]=n;f[e>>2]=n;f[r>>2]=n+5;t[n>>0]=109;l=(f[i>>2]|0)+1|0;f[i>>2]=l;n=s+1|0;t[l>>0]=t[n>>0]|0;l=(f[i>>2]|0)+1|0;f[i>>2]=l;n=n+1|0;t[l>>0]=t[n>>0]|0;l=(f[i>>2]|0)+1|0;f[i>>2]=l;n=n+1|0;t[l>>0]=t[n>>0]|0;l=(f[i>>2]|0)+1|0;f[i>>2]=l;t[l>>0]=t[n+1>>0]|0;f[i>>2]=(f[i>>2]|0)+1;Ip(s);return a|0}l=ze()|0;Ip(a);Ip(s);$e(l|0);return 0}function rp(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0;g=c;c=c+16|0;y=g;f[y>>2]=0;M=y+4|0;f[M>>2]=0;f[y+8>>2]=0;v=y+8|0;_=0;a=de(67,1)|0;m=_;_=0;e:do{if(!(m&1)){o=a+1|0;m=o;t[a>>0]=i;f[y>>2]=a;f[M>>2]=m;f[v>>2]=m;if((i|0)>0){l=o;m=0;do{w=m+e&255;if(l>>>0>=o>>>0){a=f[y>>2]|0;u=a;l=l-u+1|0;if((l|0)<0){_=0;ue(178,y|0);k=_;_=0;if(k&1){p=28;break}u=f[y>>2]|0;o=f[v>>2]|0;k=u}else k=a;b=k;a=o-b|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<l>>>0?l:a;o=f[M>>2]|0;h=o-b|0;if(!a){d=0;l=0}else p=13}else{h=f[M>>2]|0;a=2147483647;o=h;h=h-b|0;p=13}if((p|0)==13){p=0;_=0;l=de(67,a|0)|0;d=_;_=0;if(d&1){p=28;break}else d=a}t[l+h>>0]=w;a=l+(h+1)|0;b=o-b|0;w=l+(h-b)|0;Am(w|0,k|0,b|0)|0;f[y>>2]=w;f[M>>2]=a;f[v>>2]=l+d;if(u){Ip(u);a=f[M>>2]|0}}else{t[l>>0]=w;a=(f[M>>2]|0)+1|0;f[M>>2]=a}o=f[v>>2]|0;if(a>>>0>=o>>>0){u=f[y>>2]|0;l=u;h=a-l+1|0;if((h|0)<0){_=0;ue(178,y|0);w=_;_=0;if(w&1){p=28;break}u=f[y>>2]|0;l=u;o=f[v>>2]|0}b=u;a=o-b|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<h>>>0?h:a;h=f[M>>2]|0;o=h-b|0;if(!a){a=0;d=0}else p=24}else{o=f[M>>2]|0;a=2147483647;h=o;o=o-b|0;p=24}if((p|0)==24){p=0;_=0;d=de(67,a|0)|0;w=_;_=0;if(w&1){p=28;break}}t[d+o>>0]=0;k=h-b|0;w=d+(o-k)|0;Am(w|0,u|0,k|0)|0;f[y>>2]=w;f[M>>2]=d+(o+1);f[v>>2]=d+a;if(l)Ip(l)}else{t[a>>0]=0;f[M>>2]=(f[M>>2]|0)+1}m=m+1|0;l=f[M>>2]|0;o=f[v>>2]|0}while((m|0)<(i|0));if((p|0)==28){s=ze()|0;break}a=r&255;if(l>>>0<o>>>0){t[l>>0]=a;l=(f[M>>2]|0)+1|0;f[M>>2]=l}else p=37}else{l=o;a=r&255;p=37}if((p|0)==37){u=f[y>>2]|0;h=u;d=l-h+1|0;if((d|0)<0){_=0;ue(178,y|0);r=_;_=0;if(r&1){p=29;break}h=f[y>>2]|0;o=f[v>>2]|0;u=h}w=u;l=o-w|0;if(l>>>0<1073741823){l=l<<1;l=l>>>0<d>>>0?d:l;d=f[M>>2]|0;b=d-w|0;if(!l){k=0;o=0}else p=43}else{b=f[M>>2]|0;l=2147483647;d=b;b=b-w|0;p=43}if((p|0)==43){_=0;o=de(67,l|0)|0;r=_;_=0;if(r&1){p=29;break}else k=l}t[o+b>>0]=a;l=o+(b+1)|0;e=d-w|0;r=o+(b-e)|0;Am(r|0,u|0,e|0)|0;f[y>>2]=r;f[M>>2]=l;f[v>>2]=o+k;if(h){Ip(h);l=f[M>>2]|0}}w=n&255;a=f[v>>2]|0;if(l>>>0>=a>>>0){o=f[y>>2]|0;u=o;l=l-u+1|0;if((l|0)<0){_=0;ue(178,y|0);n=_;_=0;if(n&1){p=29;break}u=f[y>>2]|0;a=f[v>>2]|0;o=u}k=o;a=a-k|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<l>>>0?l:a;h=f[M>>2]|0;d=h-k|0;if(!a){b=0;l=0}else p=54}else{d=f[M>>2]|0;a=2147483647;h=d;d=d-k|0;p=54}if((p|0)==54){_=0;l=de(67,a|0)|0;n=_;_=0;if(n&1){p=29;break}else b=a}t[l+d>>0]=w;a=l+(d+1)|0;r=h-k|0;n=l+(d-r)|0;Am(n|0,o|0,r|0)|0;f[y>>2]=n;f[M>>2]=a;f[v>>2]=l+b;if(u){Ip(u);a=f[M>>2]|0}}else{t[l>>0]=w;a=(f[M>>2]|0)+1|0;f[M>>2]=a}l=f[v>>2]|0;if(a>>>0>=l>>>0){o=f[y>>2]|0;u=o;h=a-u+1|0;if((h|0)<0){_=0;ue(178,y|0);n=_;_=0;if(n&1){p=29;break}u=f[y>>2]|0;l=f[v>>2]|0;o=u}b=o;a=l-b|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<h>>>0?h:a;l=f[M>>2]|0;d=l-b|0;if(!a){a=0;h=0}else p=65}else{d=f[M>>2]|0;a=2147483647;l=d;d=d-b|0;p=65}if((p|0)==65){_=0;h=de(67,a|0)|0;n=_;_=0;if(n&1){p=29;break}}t[h+d>>0]=0;r=l-b|0;n=h+(d-r)|0;Am(n|0,o|0,r|0)|0;f[y>>2]=n;f[M>>2]=h+(d+1);f[v>>2]=h+a;if(u)Ip(u)}else{t[a>>0]=0;f[M>>2]=(f[M>>2]|0)+1}_=0;d=de(67,20)|0;v=_;_=0;if(!(v&1)){f[d>>2]=36800;t[d+4>>0]=-38;u=d+8|0;f[u>>2]=0;h=d+12|0;f[h>>2]=0;l=d+16|0;f[l>>2]=0;a=f[M>>2]|0;v=f[y>>2]|0;o=a-v|0;do{if((a|0)!=(v|0)){if(!((o|0)<0?(_=0,ue(178,u|0),v=_,_=0,v&1):0))p=72;if((p|0)==72?(_=0,s=de(67,o|0)|0,v=_,_=0,!(v&1)):0){f[h>>2]=s;f[u>>2]=s;f[l>>2]=s+o;a=f[y>>2]|0;l=f[M>>2]|0;if((a|0)==(l|0))break;do{t[s>>0]=t[a>>0]|0;s=(f[h>>2]|0)+1|0;f[h>>2]=s;a=a+1|0}while((a|0)!=(l|0));a=f[y>>2]|0;break}s=ze()|0;a=f[u>>2]|0;if(a){if((f[h>>2]|0)!=(a|0))f[h>>2]=a;Ip(a)}Ip(d);break e}}while(0);if(!a){c=g;return d|0}if((f[M>>2]|0)!=(a|0))f[M>>2]=a;Ip(a);c=g;return d|0}else p=29}else p=29}while(0);if((p|0)==29)s=ze()|0;a=f[y>>2]|0;if(!a)$e(s|0);if((f[M>>2]|0)!=(a|0))f[M>>2]=a;Ip(a);$e(s|0);return 0}function tp(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0;d=(i&65535)>>>8&255;b=e+4|0;r=f[b>>2]|0;k=e+8|0;n=f[k>>2]|0;if(r>>>0>=n>>>0){a=f[e>>2]|0;s=a;l=r-s+1|0;if((l|0)<0){Pp(e);s=f[e>>2]|0;n=f[k>>2]|0;a=s}h=a;r=n-h|0;if(r>>>0<1073741823){r=r<<1;r=r>>>0<l>>>0?l:r;l=f[b>>2]|0;n=l-h|0;if(!r){c=0;u=0;o=n;r=l}else w=8}else{n=f[b>>2]|0;r=2147483647;l=n;n=n-h|0;w=8}if((w|0)==8){c=r;u=Bp(r)|0;o=n;r=l}t[u+o>>0]=d;n=u+(o+1)|0;h=r-h|0;d=u+(o-h)|0;Am(d|0,a|0,h|0)|0;f[e>>2]=d;f[b>>2]=n;f[k>>2]=u+c;if(s){Ip(s);n=f[b>>2]|0}}else{t[r>>0]=d;n=(f[b>>2]|0)+1|0;f[b>>2]=n}h=i&255;r=f[k>>2]|0;if(n>>>0<r>>>0){t[n>>0]=h;f[b>>2]=(f[b>>2]|0)+1;return}a=f[e>>2]|0;s=a;n=n-s+1|0;if((n|0)<0){Pp(e);s=f[e>>2]|0;r=f[k>>2]|0;a=s}c=a;r=r-c|0;if(r>>>0<1073741823){r=r<<1;r=r>>>0<n>>>0?n:r;l=f[b>>2]|0;n=l-c|0;if(!r){u=0;o=0;r=l}else w=18}else{n=f[b>>2]|0;r=2147483647;l=n;n=n-c|0;w=18}if((w|0)==18){u=r;o=Bp(r)|0;r=l}t[o+n>>0]=h;i=r-c|0;w=o+(n-i)|0;Am(w|0,a|0,i|0)|0;f[e>>2]=w;f[b>>2]=o+(n+1);f[k>>2]=o+u;if(!s)return;Ip(s);return}function np(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0;a=f[e>>2]|0;w=f[i>>2]|0;k=w;u=a;d=r;c=n-d|0;if((c|0)<=0){_=w;return _|0}b=e+8|0;i=f[b>>2]|0;_=e+4|0;h=f[_>>2]|0;s=h;if((c|0)<=(i-s|0)){o=s-k|0;if((c|0)>(o|0)){l=r+o|0;if((l|0)==(n|0))i=h;else{s=l;i=h;do{t[i>>0]=t[s>>0]|0;i=(f[_>>2]|0)+1|0;f[_>>2]=i;s=s+1|0}while((s|0)!=(n|0))}if((o|0)>0)o=i;else{_=w;return _|0}}else{o=h;l=n}a=o-(a+(c-u+k))|0;i=w+a|0;if(i>>>0<h>>>0){s=o;do{t[s>>0]=t[i>>0]|0;i=i+1|0;s=(f[_>>2]|0)+1|0;f[_>>2]=s}while((i|0)!=(h|0))}Tm(o+(0-a)|0,w|0,a|0)|0;Tm(w|0,r|0,l-d|0)|0;_=w;return _|0}s=s-u+c|0;if((s|0)<0){Pp(e);i=f[b>>2]|0;a=f[e>>2]|0}l=a;i=i-l|0;if(i>>>0<1073741823){i=i<<1;i=i>>>0<s>>>0?s:i;s=k-l|0;if(!i){l=0;c=0}else o=15}else{i=2147483647;s=k-l|0;o=15}if((o|0)==15){l=i;c=Bp(i)|0}u=c+s|0;i=u;o=c+l|0;if((r|0)!=(n|0)){a=r;l=u;do{t[l>>0]=t[a>>0]|0;l=i+1|0;i=l;a=a+1|0}while((a|0)!=(n|0));a=f[e>>2]|0}r=k-a|0;n=c+(s-r)|0;Am(n|0,a|0,r|0)|0;k=(f[_>>2]|0)-k|0;r=i;Am(r|0,w|0,k|0)|0;i=f[e>>2]|0;f[e>>2]=n;f[_>>2]=r+k;f[b>>2]=o;if(!i){_=u;return _|0}Ip(i);_=u;return _|0}function fp(e){e=e|0;var i=0;f[e>>2]=36800;i=f[e+8>>2]|0;if(!i)return;e=e+12|0;if((f[e>>2]|0)!=(i|0))f[e>>2]=i;Ip(i);return}function ap(e){e=e|0;var i=0,r=0;f[e>>2]=36800;i=f[e+8>>2]|0;if(!i){Ip(e);return}r=e+12|0;if((f[r>>2]|0)!=(i|0))f[r>>2]=i;Ip(i);Ip(e);return}function sp(e,i){e=e|0;i=i|0;var r=0,n=0,a=0;lp(i,-1);lp(i,t[e+4>>0]|0);a=e+12|0;n=e+8|0;e=(f[a>>2]|0)-(f[n>>2]|0)+2|0;lp(i,(e&65535)>>>8&255);lp(i,e&255);e=f[n>>2]|0;if((f[a>>2]|0)==(e|0))return;else r=0;do{lp(i,t[e+r>>0]|0);r=r+1|0;e=f[n>>2]|0}while(r>>>0<((f[a>>2]|0)-e|0)>>>0);return}function lp(e,i){e=e|0;i=i|0;var r=0,n=0,a=0;a=f[e+4>>2]|0;if(a){r=a+24|0;n=f[r>>2]|0;if((n|0)==(f[a+28>>2]|0)){kM[f[(f[a>>2]|0)+52>>2]&63](a,i&255)|0;return}else{f[r>>2]=n+1;t[n>>0]=i;return}}r=e+16|0;n=f[r>>2]|0;if(n>>>0<(f[e+12>>2]|0)>>>0){f[r>>2]=n+1;t[(f[e+8>>2]|0)+n>>0]=i;return}r=He(16)|0;_=0;n=Me(1)|0;i=_;_=0;if(i&1){i=ze()|0;je(r|0);$e(i|0)}_=0;Ae(7,r|0,4,n|0);i=_;_=0;if(i&1){i=ze()|0;je(r|0);$e(i|0)}else bi(r|0,824,96)}function op(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n=(i|0)<4095?(i+128|0)/256|0:16;a=(r*3|0)+2+n|0;t=r+1|0;a=(a|0)<(t|0)|(a|0)>(i|0)?t:a;f[e+4>>2]=a;t=(n<<2|3)+(r*5|0)|0;t=(t|0)>(i|0)|(t|0)<(a|0)?a:t;f[e+8>>2]=t;r=(r*7|0)+4+(n*17|0)|0;f[e+12>>2]=(r|0)>(i|0)|(r|0)<(t|0)?t:r;f[e>>2]=i;f[e+16>>2]=64;return}function up(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0;h=c;c=c+128|0;o=h+100|0;n=h+16|0;r=h+112|0;u=h+4|0;d=h;a=n;s=e+20|0;l=a+84|0;do{f[a>>2]=f[s>>2];a=a+4|0;s=s+4|0}while((a|0)<(l|0));f[n+16>>2]=f[e+4>>2];s=Wi(r,n,e+56|0)|0;r=f[(f[s>>2]|0)+16>>2]|0;e=e+8|0;_=0;f[o>>2]=f[e>>2];f[o+4>>2]=f[e+4>>2];f[o+8>>2]=f[e+8>>2];r=pe(r|0,s|0,o|0)|0;e=_;_=0;do{if(e&1)r=ze()|0;else{a=i+4|0;f[u>>2]=f[a>>2];f[u+4>>2]=f[a+4>>2];f[u+8>>2]=f[a+8>>2];a=i+16|0;e=f[a>>2]|0;o=u+8|0;f[o>>2]=(f[o>>2]|0)-e;o=u+4|0;f[o>>2]=(f[o>>2]|0)+e;o=f[(f[s>>2]|0)+12>>2]|0;f[d>>2]=r;_=0;r=Ee(o|0,s|0,d|0,u|0,((t[i>>0]|0)==0?0:(f[i+8>>2]|0)+e|0)|0)|0;u=_;_=0;if(u&1){r=ze()|0;n=f[d>>2]|0;f[d>>2]=0;if(!n)break;fM[f[(f[n>>2]|0)+4>>2]&255](n);break}n=f[d>>2]|0;f[d>>2]=0;if(n)fM[f[(f[n>>2]|0)+4>>2]&255](n);if(!(f[i+4>>2]|0))f[a>>2]=(f[a>>2]|0)+r;if(!s){c=h;return}fM[f[(f[s>>2]|0)+4>>2]&255](s);c=h;return}}while(0);if(!s)$e(r|0);fM[f[(f[s>>2]|0)+4>>2]&255](s);$e(r|0)}function cp(e,i){e=e|0;i=i|0;f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];t[e+12>>0]=0;i=e+16|0;e=i+100|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(e|0));return}function hp(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0;g=c;c=c+32|0;p=g+4|0;k=g+16|0;y=g;dp(e);w=e+16|0;a=f[e+24>>2]|0;e:do{if((a+-2|0)>>>0<=14){m=e+40|0;r=f[m>>2]|0;if(r>>>0>2)r=5;else{v=e+32|0;s=f[v>>2]|0;switch(s|0){case 0:{r=1;break e}case 4:{if((r|0)==2){r=2;break e}break}case 3:break;default:if(r){r=2;break e}}b=e+100|0;r=e+108|0;n=f[r>>2]|0;if((n|0)<1){n=f[w>>2]|0;f[r>>2]=n;r=f[e+20>>2]|0;f[e+112>>2]=r}else r=f[e+112>>2]|0;u=Om(r|0,((r|0)<0)<<31>>31|0,n|0,((n|0)<0)<<31>>31|0)|0;o=(a+7|0)/8|0;o=Om(u|0,P|0,o|0,((o|0)<0)<<31>>31|0)|0;u=i+4|0;r=f[u>>2]|0;l=i+8|0;if((r|0)!=0?(h=f[l>>2]|0,d=Om(s|0,((s|0)<0)<<31>>31|0,o|0,P|0)|0,a=P,0<(a|0)|0==(a|0)&h>>>0<d>>>0):0){r=He(16)|0;_=0;n=Me(1)|0;y=_;_=0;if(!(y&1)?(_=0,Ae(7,r|0,3,n|0),y=_,_=0,!(y&1)):0)bi(r|0,824,96);y=ze()|0;je(r|0);$e(y|0)}h=e+52|0;d=e+12|0;if((s|0)>0)s=0;else{c=g;return}while(1){bp(e,(s|0)==0);n=Gi(k,w,h)|0;a=f[(f[n>>2]|0)+8>>2]|0;_=0;f[p>>2]=f[i>>2];f[p+4>>2]=f[i+4>>2];f[p+8>>2]=f[i+8>>2];a=pe(a|0,n|0,p|0)|0;M=_;_=0;if(M&1){a=32;break}M=f[(f[n>>2]|0)+16>>2]|0;f[y>>2]=a;_=0;le(M|0,n|0,y|0,b|0,e|0,(t[d>>0]|0)!=0|0);M=_;_=0;if(M&1){a=30;break}a=f[y>>2]|0;f[y>>2]=0;if(a)fM[f[(f[a>>2]|0)+4>>2]&255](a);if(!r)r=0;else{r=r+o|0;f[u>>2]=r;f[l>>2]=(f[l>>2]|0)-o}a=(f[m>>2]|0)==0;s=(a&1)+s|0;if(n)fM[f[(f[n>>2]|0)+4>>2]&255](n);if(!a){a=34;break}if((s|0)>=(f[v>>2]|0)){a=34;break}}if((a|0)==30){r=ze()|0;a=f[y>>2]|0;f[y>>2]=0;if(a)fM[f[(f[a>>2]|0)+4>>2]&255](a)}else if((a|0)==32){r=ze()|0;if(!n){M=r;$e(M|0)}}else if((a|0)==34){c=g;return}fM[f[(f[n>>2]|0)+4>>2]&255](n);M=r;$e(M|0)}}else r=2}while(0);n=He(16)|0;_=0;a=Me(1)|0;M=_;_=0;if(!(M&1)?(_=0,Ae(7,n|0,r|0,a|0),M=_,_=0,!(M&1)):0)bi(n|0,824,96);M=ze()|0;je(n|0);$e(M|0)}function dp(e){e=e|0;var i=0,r=0,t=0,n=0;if((_p(e)|0)<<24>>24!=-40){i=He(16)|0;_=0;r=Me(1)|0;n=_;_=0;if(!(n&1)?(_=0,Ae(7,i|0,5,r|0),n=_,_=0,!(n&1)):0)bi(i|0,824,96);n=ze()|0;je(i|0);$e(n|0)}i=_p(e)|0;if(i<<24>>24==-38)return;while(1){t=((wp(e)|0)&255)<<8;t=t|(wp(e)|0)&255;i=mp(e,i)|0;r=-2-i+t|0;if((r|0)<0)break;if((r|0)>0){i=t+-2-i|0;r=0;do{wp(e)|0;r=r+1|0}while((r|0)!=(i|0))}i=_p(e)|0;if(i<<24>>24==-38){n=8;break}}if((n|0)==8)return;i=He(16)|0;_=0;r=Me(1)|0;n=_;_=0;if(!(n&1)?(_=0,Ae(7,i|0,5,r|0),n=_,_=0,!(n&1)):0)bi(i|0,824,96);n=ze()|0;je(i|0);$e(n|0)}function bp(e,i){e=e|0;i=i|0;var r=0,t=0,n=0;if(!i){if((wp(e)|0)<<24>>24!=-1){i=He(16)|0;_=0;r=Me(1)|0;e=_;_=0;if(!(e&1)?(_=0,Ae(7,i|0,12,r|0),e=_,_=0,!(e&1)):0)bi(i|0,824,96);e=ze()|0;je(i|0);$e(e|0)}if((wp(e)|0)<<24>>24!=-38){i=He(16)|0;_=0;r=Me(1)|0;e=_;_=0;if(!(e&1)?(_=0,Ae(7,i|0,5,r|0),e=_,_=0,!(e&1)):0)bi(i|0,824,96);e=ze()|0;je(i|0);$e(e|0)}}wp(e)|0;wp(e)|0;r=wp(e)|0;t=r&255;do{if(r<<24>>24==1){wp(e)|0;r=0;n=20}else{if((t|0)==(f[e+32>>2]|0)){i=wp(e)|0;if(!(r<<24>>24))break;else{r=0;n=20;break}}i=He(16)|0;_=0;r=Me(1)|0;e=_;_=0;if(!(e&1)?(_=0,Ae(7,i|0,2,r|0),e=_,_=0,!(e&1)):0)bi(i|0,824,96);e=ze()|0;je(i|0);$e(e|0)}}while(0);if((n|0)==20)while(1){wp(e)|0;r=r+1|0;i=wp(e)|0;if((r|0)==(t|0))break;else n=20}f[e+36>>2]=i&255;n=wp(e)|0;r=e+40|0;f[r>>2]=n&255;if((n&255)>=3){i=He(16)|0;_=0;r=Me(1)|0;e=_;_=0;if(!(e&1)?(_=0,Ae(7,i|0,5,r|0),e=_,_=0,!(e&1)):0)bi(i|0,824,96);e=ze()|0;je(i|0);$e(e|0)}if((wp(e)|0)<<24>>24){i=He(16)|0;_=0;r=Me(1)|0;e=_;_=0;if(!(e&1)?(_=0,Ae(7,i|0,5,r|0),e=_,_=0,!(e&1)):0)bi(i|0,824,96);e=ze()|0;je(i|0);$e(e|0)}t=e+28|0;if(f[t>>2]|0)return;i=f[e+108>>2]|0;if(!i)i=f[e+16>>2]|0;if(!(f[r>>2]|0))r=1;else r=f[e+32>>2]|0;n=re(r,i)|0;f[t>>2]=re(n,((f[e+24>>2]|0)+7|0)/8|0)|0;return}function kp(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0;if((r|0)<=0)return;d=i+4|0;b=i+8|0;w=0;do{k=wp(e)|0;n=f[d>>2]|0;a=f[b>>2]|0;if(n>>>0>=a>>>0){s=f[i>>2]|0;l=s;o=n-l+1|0;if((o|0)<0){Pp(i);l=f[i>>2]|0;a=f[b>>2]|0;s=l}h=s;n=a-h|0;if(n>>>0<1073741823){n=n<<1;n=n>>>0<o>>>0?o:n;o=f[d>>2]|0;a=o-h|0;if(!n){c=0;u=0;n=o}else _=10}else{a=f[d>>2]|0;n=2147483647;o=a;a=a-h|0;_=10}if((_|0)==10){_=0;c=n;u=Bp(n)|0;n=o}t[u+a>>0]=k;h=n-h|0;k=u+(a-h)|0;Am(k|0,s|0,h|0)|0;f[i>>2]=k;f[d>>2]=u+(a+1);f[b>>2]=u+c;if(l)Ip(l)}else{t[n>>0]=k;f[d>>2]=(f[d>>2]|0)+1}w=w+1|0}while((w|0)!=(r|0));return}function wp(e){e=e|0;var i=0,r=0,n=0,s=0;r=f[e>>2]|0;if(r){e=r+12|0;i=f[e>>2]|0;if((i|0)==(f[r+16>>2]|0))e=lM[f[(f[r>>2]|0)+40>>2]&127](r)|0;else{f[e>>2]=i+1;e=a[i>>0]|0}s=e&255;return s|0}n=e+8|0;s=f[n>>2]|0;if(s){e=e+4|0;i=f[e>>2]|0;r=t[i>>0]|0;if(!i){s=r;return s|0}f[e>>2]=i+1;f[n>>2]=s+-1;s=r;return s|0}e=He(16)|0;_=0;i=Me(1)|0;s=_;_=0;if(s&1){s=ze()|0;je(e|0);$e(s|0)}_=0;Ae(7,e|0,4,i|0);s=_;_=0;if(s&1){s=ze()|0;je(e|0);$e(s|0)}else bi(e|0,824,96);return 0}function _p(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0,l=0,o=0;r=c;c=c+176|0;i=r+152|0;o=r+16|0;s=r;l=wp(e)|0;t=l&255;if(l<<24>>24==-1){do{i=wp(e)|0}while(i<<24>>24==-1);c=r;return i|0}l=o+56|0;a=o+4|0;f[o>>2]=36160;f[l>>2]=36180;_=0;ce(62,o+56|0,a|0);n=_;_=0;if(n&1){o=ze()|0;nd(l);$e(o|0)}f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=36200;f[o+56>>2]=36220;_=0;ue(180,a|0);n=_;_=0;do{if(n&1)i=ze()|0;else{f[a>>2]=36236;n=o+36|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;f[n+12>>2]=0;f[o+52>>2]=16;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_=0;ce(63,a|0,i|0);r=_;_=0;if(r&1){o=ze()|0;Oh(i);Oh(n);cd(a);i=o;break}Oh(i);f[o+((f[(f[o>>2]|0)+-12>>2]|0)+76)>>2]=48;_=0;i=ke(28,o|0,50907,62)|0;r=_;_=0;if(!(r&1)?(r=i+((f[(f[i>>2]|0)+-12>>2]|0)+4)|0,f[r>>2]=f[r>>2]&-75|8,r=i+((f[(f[i>>2]|0)+-12>>2]|0)+4)|0,f[r>>2]=f[r>>2]|16384,f[i+((f[(f[i>>2]|0)+-12>>2]|0)+12)>>2]=2,_=0,pe(38,i|0,t|0)|0,t=_,_=0,!(t&1)):0){r=He(16)|0;_=0;ce(64,s|0,a|0);t=_;_=0;if(!(t&1)){_=0;i=Me(1)|0;t=_;_=0;if(!(t&1)?(_=0,Re(36,r|0,12,i|0,s|0),t=_,_=0,!(t&1)):0){_=0;Ae(6,r|0,824,96);_=0;e=0}else e=1;i=ze()|0;Oh(s);if(!e){s=i;f[o>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(n);cd(a);nd(l);$e(s|0)}}else i=ze()|0;je(r|0);s=i;f[o>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(n);cd(a);nd(l);$e(s|0)}s=ze()|0;f[o>>2]=36200;f[l>>2]=36220;f[a>>2]=36236;Oh(n);cd(a);nd(l);$e(s|0)}}while(0);o=i;nd(l);$e(o|0);return 0}function mp(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;r=c;c=c+320|0;l=r+300|0;h=r+152|0;o=r+288|0;d=r+16|0;u=r;switch(i<<24>>24){case-9:{f[e+24>>2]=(wp(e)|0)&255;b=((wp(e)|0)&255)<<8|(wp(e)|0)&255;f[e+16>>2]=((wp(e)|0)&255)<<8|(wp(e)|0)&255;f[e+20>>2]=b;f[e+32>>2]=(wp(e)|0)&255;b=6;c=r;return b|0}case-8:{b=vp(e)|0;c=r;return b|0}case-24:{b=pp(e)|0;c=r;return b|0}case-53:case-54:case-55:case-57:case-58:case-59:case-61:case-62:case-63:case-64:{s=h+56|0;n=h+4|0;f[h>>2]=36160;f[s>>2]=36180;_=0;ce(62,h+56|0,n|0);d=_;_=0;if(d&1){b=ze()|0;nd(s);$e(b|0)}f[h+128>>2]=0;f[h+132>>2]=-1;f[h>>2]=36200;f[h+56>>2]=36220;_=0;ue(180,n|0);d=_;_=0;do{if(d&1)e=ze()|0;else{f[n>>2]=36236;a=h+36|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[h+52>>2]=16;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;_=0;ce(63,n|0,l|0);d=_;_=0;if(d&1){e=ze()|0;Oh(l);Oh(a);cd(n);break}Oh(l);_=0;e=ke(28,h|0,50970,26)|0;d=_;_=0;do{if((!(d&1)?(_=0,t=pe(38,e|0,i&255|0)|0,d=_,_=0,!(d&1)):0)?(_=0,ke(28,t|0,50997,18)|0,d=_,_=0,!(d&1)):0){t=He(16)|0;_=0;ce(64,o|0,n|0);d=_;_=0;if(!(d&1)){_=0;e=Me(1)|0;d=_;_=0;if(!(d&1)?(_=0,Re(36,t|0,10,e|0,o|0),d=_,_=0,!(d&1)):0){_=0;Ae(6,t|0,824,96);_=0;r=0}else r=1;e=ze()|0;Oh(o);if(!r)break}else e=ze()|0;je(t|0)}else b=20}while(0);if((b|0)==20)e=ze()|0;f[h>>2]=36200;f[s>>2]=36220;f[n>>2]=36236;Oh(a);cd(n);nd(s);b=e;$e(b|0)}}while(0);b=e;nd(s);$e(b|0)}case-25:case-32:case-2:{b=0;c=r;return b|0}default:{o=d+56|0;a=d+4|0;f[d>>2]=36160;f[o>>2]=36180;_=0;ce(62,d+56|0,a|0);h=_;_=0;if(h&1){b=ze()|0;nd(o);$e(b|0)}f[d+128>>2]=0;f[d+132>>2]=-1;f[d>>2]=36200;f[d+56>>2]=36220;_=0;ue(180,a|0);h=_;_=0;do{if(h&1)e=ze()|0;else{f[a>>2]=36236;s=d+36|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[d+52>>2]=16;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;_=0;ce(63,a|0,l|0);h=_;_=0;if(h&1){e=ze()|0;Oh(l);Oh(s);cd(a);break}Oh(l);_=0;e=ke(28,d|0,51016,20)|0;h=_;_=0;do{if((!(h&1)?(_=0,n=pe(38,e|0,i&255|0)|0,h=_,_=0,!(h&1)):0)?(_=0,ke(28,n|0,51037,13)|0,h=_,_=0,!(h&1)):0){t=He(16)|0;_=0;ce(64,u|0,a|0);h=_;_=0;if(!(h&1)){_=0;e=Me(1)|0;h=_;_=0;if(!(h&1)?(_=0,Re(36,t|0,11,e|0,u|0),h=_,_=0,!(h&1)):0){_=0;Ae(6,t|0,824,96);_=0;r=0}else r=1;e=ze()|0;Oh(u);if(!r)break}else e=ze()|0;je(t|0)}else b=40}while(0);if((b|0)==40)e=ze()|0;f[d>>2]=36200;f[o>>2]=36220;f[a>>2]=36236;Oh(s);cd(a);nd(o);b=e;$e(b|0)}}while(0);b=e;nd(o);$e(b|0)}}return 0}function vp(e){e=e|0;var i=0;if((wp(e)|0)<<24>>24!=1){e=1;return e|0}i=((wp(e)|0)&255)<<8;f[e+52>>2]=i|(wp(e)|0)&255;i=((wp(e)|0)&255)<<8;f[e+56>>2]=i|(wp(e)|0)&255;i=((wp(e)|0)&255)<<8;f[e+60>>2]=i|(wp(e)|0)&255;i=((wp(e)|0)&255)<<8;f[e+64>>2]=i|(wp(e)|0)&255;i=((wp(e)|0)&255)<<8;f[e+68>>2]=i|(wp(e)|0)&255;e=11;return e|0}function pp(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0;r=c;c=c+16|0;n=r;f[n>>2]=0;a=n+4|0;f[a>>2]=0;f[n+8>>2]=0;_=0;Ae(9,e|0,n|0,4);i=_;_=0;e:do{if(i&1)t=3;else{i=f[n>>2]|0;i:do{if(!(Gy(i,51051,4)|0)){_=0;i=de(69,e|0)|0;s=_;_=0;if(s&1){t=3;break e}i=i&255;switch(i|0){case 3:case 2:case 1:case 0:{f[e+44>>2]=i;e=5;i=f[n>>2]|0;break i}case 5:case 4:{i=He(16)|0;_=0;e=Me(1)|0;s=_;_=0;if(!(s&1)?(_=0,Ae(7,i|0,7,e|0),s=_,_=0,!(s&1)):0){_=0;Ae(6,i|0,824,96);_=0;t=3;break e}e=ze()|0;je(i|0);break e}default:{i=He(16)|0;_=0;e=Me(1)|0;s=_;_=0;if(!(s&1)?(_=0,Ae(7,i|0,5,e|0),s=_,_=0,!(s&1)):0){_=0;Ae(6,i|0,824,96);_=0;t=3;break e}e=ze()|0;je(i|0);break e}}}else e=4}while(0);if(!i){c=r;return e|0}if((f[a>>2]|0)!=(i|0))f[a>>2]=i;Ip(i);c=r;return e|0}}while(0);if((t|0)==3)e=ze()|0;i=f[n>>2]|0;if(!i)$e(e|0);if((f[a>>2]|0)!=(i|0))f[a>>2]=i;Ip(i);$e(e|0);return 0}function gp(e){e=e|0;var i=0,r=0,t=0;t=f[(f[e>>2]|0)+-12>>2]|0;f[e+t>>2]=36200;i=e+(t+56)|0;f[i>>2]=36220;r=e+(t+4)|0;f[r>>2]=36236;Oh(e+(t+36)|0);cd(r);nd(i);return}function yp(e){e=e|0;return}function Mp(e){e=e|0;Ip(e);return}function Ep(e){e=e|0;t[e>>0]=0;e=e+4|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;f[e+28>>2]=0;return}function Ap(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0;n=c;c=c+16|0;a=n;i=ip(i)|0;f[a>>2]=i;r=e+28|0;t=f[r>>2]|0;if(t>>>0<(f[e+32>>2]|0)>>>0){f[t>>2]=i;f[r>>2]=t+4;f[a>>2]=0;c=n;return}_=0;ce(57,e+24|0,a|0);e=_;_=0;if(e&1){i=ze()|0;r=f[a>>2]|0;f[a>>2]=0;if(!r)$e(i|0);fM[f[(f[r>>2]|0)+4>>2]&255](r);$e(i|0)}else{i=f[a>>2]|0;f[a>>2]=0;if(!i){c=n;return}fM[f[(f[i>>2]|0)+4>>2]&255](i);c=n;return}}function Sp(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,a=0;t=e+4|0;f[t>>2]=f[i>>2];f[t+4>>2]=f[i+4>>2];f[t+8>>2]=f[i+8>>2];lp(e,-1);lp(e,-40);t=e+28|0;n=e+24|0;i=f[n>>2]|0;if((f[t>>2]|0)==(i|0)){lp(e,-1);lp(e,-39);e=e+16|0;e=f[e>>2]|0;return e|0}else r=0;do{a=f[i+(r<<2)>>2]|0;aM[f[(f[a>>2]|0)+8>>2]&127](a,e);r=r+1|0;i=f[n>>2]|0}while(r>>>0<(f[t>>2]|0)-i>>2>>>0);lp(e,-1);lp(e,-39);a=e+16|0;a=f[a>>2]|0;return a|0}function Tp(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;d=c;c=c+48|0;l=d+32|0;n=d+12|0;o=d+8|0;h=d+4|0;b=d;t=r+36|0;do{if(((((f[t>>2]|0)==0?(f[r+40>>2]|0)==0:0)?(f[r+44>>2]|0)==0:0)?(f[r+48>>2]|0)==0:0)?(f[r+52>>2]|0)==0:0){t=f[r+8>>2]|0;if((t|0)<=12){a=e+28|0;s=e+32|0;break}op(n,(1<<t)+-1|0,f[r+20>>2]|0);t=ep(n)|0;f[o>>2]=t;a=e+28|0;n=f[a>>2]|0;s=e+32|0;if(n>>>0<(f[s>>2]|0)>>>0){f[n>>2]=t;f[a>>2]=n+4;f[o>>2]=0;break}_=0;ce(57,e+24|0,o|0);l=_;_=0;if(!(l&1)){t=f[o>>2]|0;f[o>>2]=0;if(!t)break;fM[f[(f[t>>2]|0)+4>>2]&255](t);break}r=ze()|0;t=f[o>>2]|0;f[o>>2]=0;if(!t){b=r;$e(b|0)}fM[f[(f[t>>2]|0)+4>>2]&255](t);b=r;$e(b|0)}else u=6}while(0);do{if((u|0)==6){t=ep(t)|0;f[l>>2]=t;a=e+28|0;n=f[a>>2]|0;s=e+32|0;if(n>>>0<(f[s>>2]|0)>>>0){f[n>>2]=t;f[a>>2]=n+4;f[l>>2]=0;break}_=0;ce(57,e+24|0,l|0);u=_;_=0;if(!(u&1)){t=f[l>>2]|0;f[l>>2]=0;if(!t)break;fM[f[(f[t>>2]|0)+4>>2]&255](t);break}r=ze()|0;t=f[l>>2]|0;f[l>>2]=0;if(!t){b=r;$e(b|0)}fM[f[(f[t>>2]|0)+4>>2]&255](t);b=r;$e(b|0)}}while(0);t=e+20|0;n=(f[t>>2]|0)+1|0;f[t>>2]=n;t=f[r+24>>2]|0;l=(t|0)==0?1:f[r+16>>2]|0;t=rp(n,l,f[r+20>>2]|0,t)|0;f[h>>2]=t;n=f[a>>2]|0;do{if(n>>>0<(f[s>>2]|0)>>>0){f[n>>2]=t;f[a>>2]=n+4;f[h>>2]=0}else{_=0;ce(57,e+24|0,h|0);u=_;_=0;if(!(u&1)){t=f[h>>2]|0;f[h>>2]=0;if(!t)break;fM[f[(f[t>>2]|0)+4>>2]&255](t);break}r=ze()|0;t=f[h>>2]|0;f[h>>2]=0;if(!t){b=r;$e(b|0)}fM[f[(f[t>>2]|0)+4>>2]&255](t);b=r;$e(b|0)}}while(0);o=Bp(104)|0;f[o>>2]=36820;f[o+4>>2]=l;n=o+8|0;f[n>>2]=f[i>>2];f[n+4>>2]=f[i+4>>2];f[n+8>>2]=f[i+8>>2];n=o+20|0;t=n+84|0;do{f[n>>2]=f[r>>2];n=n+4|0;r=r+4|0}while((n|0)<(t|0));f[b>>2]=o;r=f[a>>2]|0;if(r>>>0<(f[s>>2]|0)>>>0){f[r>>2]=o;f[a>>2]=r+4;f[b>>2]=0;c=d;return}_=0;ce(57,e+24|0,b|0);e=_;_=0;if(e&1){r=ze()|0;t=f[b>>2]|0;f[b>>2]=0;if(!t){b=r;$e(b|0)}fM[f[(f[t>>2]|0)+4>>2]&255](t);b=r;$e(b|0)}else{r=f[b>>2]|0;f[b>>2]=0;if(!r){c=d;return}fM[f[(f[r>>2]|0)+4>>2]&255](r);c=d;return}}function Cp(e,i,r,n,a,s,l,o,u,h,d){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;d=d|0;var b=0,k=0,w=0,_=0,m=0,v=0,p=0;w=c;c=c+96|0;k=w;b=zi(e,i,k,0)|0;if(b){a=b;c=w;return a|0}t[k+32>>0]=0;m=f[k+8>>2]|0;p=f[k>>2]|0;v=f[k+4>>2]|0;b=re(v,p)|0;_=f[k+16>>2]|0;b=re(re(b,(m|0)<9?1:2)|0,_)|0;f[n>>2]=b;b=Lc(b)|0;f[r>>2]=b;f[a>>2]=p;f[s>>2]=v;f[l>>2]=m;f[o>>2]=f[k+12>>2];f[u>>2]=_;f[h>>2]=f[k+20>>2];f[d>>2]=f[k+24>>2];a=Yi(b,f[n>>2]|0,e,i,0,0)|0;c=w;return a|0}function Rp(e,i,r,t,n,a,s,l,o){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,h=0,d=0,b=0;d=c;c=c+96|0;u=d+4|0;s=d;h=u;b=h+84|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(b|0));f[u+16>>2]=a;f[u+8>>2]=n;f[u>>2]=r;f[u+4>>2]=t;f[l>>2]=Lc(i)|0;f[s>>2]=0;r=Hi(l,i,s,e,i,u,0)|0;f[o>>2]=f[s>>2];c=d;return r|0}function Lp(e,i){e=e|0;i=i|0;var r=0;r=c;c=c+16|0;f[r>>2]=i;i=f[9320]|0;Iy(i,e,r)|0;Ty(10,i)|0;Ie()}function xp(e){e=e|0;Ue(51337,51366,1164,51442)}function Pp(e){e=e|0;Ue(51463,51486,303,51442)}function Op(){var e=0,i=0;e=c;c=c+16|0;if(!(ai(37024,4)|0)){i=ri(f[9255]|0)|0;c=e;return i|0}else Lp(51562,e);return 0}function Bp(e){e=e|0;var i=0;i=(e|0)==0?1:e;e=Lc(i)|0;e:do{if(!e){while(1){e=Yp()|0;if(!e)break;gM[e&7]();e=Lc(i)|0;if(e)break e}i=He(4)|0;f[i>>2]=36844;bi(i|0,592,78)}}while(0);return e|0}function Ip(e){e=e|0;xc(e);return}function Dp(e){e=e|0;Ip(e);return}function Np(e){e=e|0;f[e>>2]=36844;return}function Fp(e){e=e|0;return}function Up(e){e=e|0;Ip(e);return}function jp(e){e=e|0;return 51611}function Hp(e){e=e|0;var i=0;i=c;c=c+16|0;_=0;Se(e|0);e=_;_=0;if(!(e&1)){_=0;ce(85,51626,i|0);_=0}e=ze(0)|0;Ze(e|0)|0;_=0;ce(85,51666,i+8|0);_=0;e=ze(0)|0;_=0;Se(3);i=_;_=0;if(i&1){i=ze(0)|0;Fi(i)}else Fi(e)}function zp(){var e=0,i=0,r=0;_=0;e=Me(2)|0;r=_;_=0;if(r&1){r=ze(0)|0;Fi(r)}if(((e|0)!=0?(i=f[e>>2]|0,(i|0)!=0):0)?(r=i+48|0,(f[r>>2]&-256|0)==1126902528?(f[r+4>>2]|0)==1129074247:0):0)Hp(f[i+12>>2]|0);r=f[9208]|0;f[9208]=r+0;Hp(r)}function Yp(){var e=0;e=f[9214]|0;f[9214]=e+0;return e|0}function qp(e){e=e|0;return}function Xp(e){e=e|0;f[e>>2]=36868;Sg(e+4|0);return}function Vp(e){e=e|0;Xp(e);Ip(e);return}function Gp(e){e=e|0;return f[e+4>>2]|0}function Kp(e){e=e|0;return}function Wp(e){e=e|0;f[e>>2]=36888;return}function Zp(e){e=e|0;return}function Jp(e){e=e|0;Ip(e);return}function Qp(e){e=e|0;return 51716}function $p(e){e=e|0;return}function eg(e){e=e|0;return}function ig(e){e=e|0;return}function rg(e){e=e|0;Ip(e);return}function tg(e){e=e|0;Ip(e);return}function ng(e){e=e|0;Ip(e);return}function fg(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0;s=c;c=c+64|0;a=s;if((e|0)!=(i|0))if((i|0)!=0?(n=cg(i,656,672,0)|0,(n|0)!=0):0){i=a;t=i+56|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(t|0));f[a>>2]=n;f[a+8>>2]=e;f[a+12>>2]=-1;f[a+48>>2]=1;EM[f[(f[n>>2]|0)+28>>2]&63](n,a,f[r>>2]|0,1);if((f[a+24>>2]|0)==1){f[r>>2]=f[a+16>>2];i=1}else i=0}else i=0;else i=1;c=s;return i|0}function ag(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0;e=i+16|0;a=f[e>>2]|0;do{if(a){if((a|0)!=(r|0)){n=i+36|0;f[n>>2]=(f[n>>2]|0)+1;f[i+24>>2]=2;t[i+54>>0]=1;break}e=i+24|0;if((f[e>>2]|0)==2)f[e>>2]=n}else{f[e>>2]=r;f[i+24>>2]=n;f[i+36>>2]=1}}while(0);return}function sg(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;if((e|0)==(f[i+8>>2]|0))ag(0,i,r,t);return}function lg(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;if((e|0)==(f[i+8>>2]|0))ag(0,i,r,t);else{e=f[e+8>>2]|0;EM[f[(f[e>>2]|0)+28>>2]&63](e,i,r,t)}return}function og(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0;a=f[e+4>>2]|0;n=a>>8;if(a&1)n=f[(f[r>>2]|0)+n>>2]|0;e=f[e>>2]|0;EM[f[(f[e>>2]|0)+28>>2]&63](e,i,r+n|0,(a&2|0)!=0?t:2);return}function ug(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0;e:do{if((e|0)!=(f[i+8>>2]|0)){s=f[e+12>>2]|0;a=e+16+(s<<3)|0;og(e+16|0,i,r,n);if((s|0)>1){s=i+54|0;e=e+24|0;do{og(e,i,r,n);if(t[s>>0]|0)break e;e=e+8|0}while(e>>>0<a>>>0)}}else ag(0,i,r,n)}while(0);return}function cg(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0;_=c;c=c+64|0;w=_;k=f[e>>2]|0;b=e+(f[k+-8>>2]|0)|0;k=f[k+-4>>2]|0;f[w>>2]=r;f[w+4>>2]=e;f[w+8>>2]=i;f[w+12>>2]=a;a=w+16|0;e=w+20|0;i=w+24|0;s=w+28|0;l=w+32|0;o=w+40|0;u=(k|0)==(r|0);h=a;d=h+36|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(d|0));n[a+36>>1]=0;t[a+38>>0]=0;e:do{if(u){f[w+48>>2]=1;hM[f[(f[r>>2]|0)+20>>2]&15](r,w,b,b,1,0);a=(f[i>>2]|0)==1?b:0}else{tM[f[(f[k>>2]|0)+24>>2]&15](k,w,b,1,0);switch(f[w+36>>2]|0){case 0:{a=(f[o>>2]|0)==1&(f[s>>2]|0)==1&(f[l>>2]|0)==1?f[e>>2]|0:0;break e}case 1:break;default:{a=0;break e}}if((f[i>>2]|0)!=1?!((f[o>>2]|0)==0&(f[s>>2]|0)==1&(f[l>>2]|0)==1):0){a=0;break}a=f[a>>2]|0}}while(0);c=_;return a|0}function hg(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;t[i+53>>0]=1;do{if((f[i+4>>2]|0)==(n|0)){t[i+52>>0]=1;n=i+16|0;e=f[n>>2]|0;if(!e){f[n>>2]=r;f[i+24>>2]=a;f[i+36>>2]=1;if(!((a|0)==1?(f[i+48>>2]|0)==1:0))break;t[i+54>>0]=1;break}if((e|0)!=(r|0)){a=i+36|0;f[a>>2]=(f[a>>2]|0)+1;t[i+54>>0]=1;break}e=i+24|0;n=f[e>>2]|0;if((n|0)==2){f[e>>2]=a;n=a}if((n|0)==1?(f[i+48>>2]|0)==1:0)t[i+54>>0]=1}}while(0);return}function dg(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0;e:do{if((e|0)==(f[i+8>>2]|0)){if((f[i+4>>2]|0)==(r|0)?(s=i+28|0,(f[s>>2]|0)!=1):0)f[s>>2]=n}else{if((e|0)!=(f[i>>2]|0)){w=f[e+12>>2]|0;o=e+16+(w<<3)|0;kg(e+16|0,i,r,n,a);s=e+24|0;if((w|0)<=1)break;l=f[e+8>>2]|0;if((l&2|0)==0?(u=i+36|0,(f[u>>2]|0)!=1):0){if(!(l&1)){l=i+54|0;while(1){if(t[l>>0]|0)break e;if((f[u>>2]|0)==1)break e;kg(s,i,r,n,a);s=s+8|0;if(s>>>0>=o>>>0)break e}}l=i+24|0;e=i+54|0;while(1){if(t[e>>0]|0)break e;if((f[u>>2]|0)==1?(f[l>>2]|0)==1:0)break e;kg(s,i,r,n,a);s=s+8|0;if(s>>>0>=o>>>0)break e}}l=i+54|0;while(1){if(t[l>>0]|0)break e;kg(s,i,r,n,a);s=s+8|0;if(s>>>0>=o>>>0)break e}}if((f[i+16>>2]|0)!=(r|0)?(k=i+20|0,(f[k>>2]|0)!=(r|0)):0){f[i+32>>2]=n;h=i+44|0;if((f[h>>2]|0)==4)break;l=f[e+12>>2]|0;o=e+16+(l<<3)|0;u=i+52|0;n=i+53|0;d=i+54|0;c=e+8|0;b=i+24|0;i:do{if((l|0)>0){l=0;s=0;e=e+16|0;while(1){t[u>>0]=0;t[n>>0]=0;bg(e,i,r,r,1,a);if(t[d>>0]|0){w=20;break i}do{if(t[n>>0]|0){if(!(t[u>>0]|0))if(!(f[c>>2]&1)){s=1;w=20;break i}else{s=1;break}if((f[b>>2]|0)==1)break i;if(!(f[c>>2]&2))break i;else{l=1;s=1}}}while(0);e=e+8|0;if(e>>>0>=o>>>0){w=20;break}}}else{l=0;s=0;w=20}}while(0);do{if((w|0)==20){if((!l?(f[k>>2]=r,r=i+40|0,f[r>>2]=(f[r>>2]|0)+1,(f[i+36>>2]|0)==1):0)?(f[b>>2]|0)==2:0){t[d>>0]=1;if(s)break}else w=24;if((w|0)==24?s:0)break;f[h>>2]=4;break e}}while(0);f[h>>2]=3;break}if((n|0)==1)f[i+32>>2]=1}}while(0);return}function bg(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;var s=0,l=0;l=f[e+4>>2]|0;s=l>>8;if(l&1)s=f[(f[t>>2]|0)+s>>2]|0;e=f[e>>2]|0;hM[f[(f[e>>2]|0)+20>>2]&15](e,i,r,t+s|0,(l&2|0)!=0?n:2,a);return}function kg(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0;s=f[e+4>>2]|0;a=s>>8;if(s&1)a=f[(f[r>>2]|0)+a>>2]|0;e=f[e>>2]|0;tM[f[(f[e>>2]|0)+24>>2]&15](e,i,r+a|0,(s&2|0)!=0?t:2,n);return}function wg(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0;e:do{if((e|0)==(f[i+8>>2]|0)){if((f[i+4>>2]|0)==(r|0)?(s=i+28|0,(f[s>>2]|0)!=1):0)f[s>>2]=n}else{if((e|0)!=(f[i>>2]|0)){o=f[e+8>>2]|0;tM[f[(f[o>>2]|0)+24>>2]&15](o,i,r,n,a);break}if((f[i+16>>2]|0)!=(r|0)?(l=i+20|0,(f[l>>2]|0)!=(r|0)):0){f[i+32>>2]=n;n=i+44|0;if((f[n>>2]|0)==4)break;s=i+52|0;t[s>>0]=0;u=i+53|0;t[u>>0]=0;e=f[e+8>>2]|0;hM[f[(f[e>>2]|0)+20>>2]&15](e,i,r,r,1,a);if(t[u>>0]|0){if(!(t[s>>0]|0)){s=1;o=13}}else{s=0;o=13}do{if((o|0)==13){f[l>>2]=r;u=i+40|0;f[u>>2]=(f[u>>2]|0)+1;if((f[i+36>>2]|0)==1?(f[i+24>>2]|0)==2:0){t[i+54>>0]=1;if(s)break}else o=16;if((o|0)==16?s:0)break;f[n>>2]=4;break e}}while(0);f[n>>2]=3;break}if((n|0)==1)f[i+32>>2]=1}}while(0);return}function _g(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;do{if((e|0)==(f[i+8>>2]|0)){if((f[i+4>>2]|0)==(r|0)?(l=i+28|0,(f[l>>2]|0)!=1):0)f[l>>2]=n}else if((e|0)==(f[i>>2]|0)){if((f[i+16>>2]|0)!=(r|0)?(s=i+20|0,(f[s>>2]|0)!=(r|0)):0){f[i+32>>2]=n;f[s>>2]=r;a=i+40|0;f[a>>2]=(f[a>>2]|0)+1;if((f[i+36>>2]|0)==1?(f[i+24>>2]|0)==2:0)t[i+54>>0]=1;f[i+44>>2]=4;break}if((n|0)==1)f[i+32>>2]=1}}while(0);return}function mg(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0;if((e|0)==(f[i+8>>2]|0))hg(0,i,r,n,a);else{h=i+52|0;d=t[h>>0]|0;b=i+53|0;k=t[b>>0]|0;c=f[e+12>>2]|0;l=e+16+(c<<3)|0;t[h>>0]=0;t[b>>0]=0;bg(e+16|0,i,r,n,a,s);e:do{if((c|0)>1){o=i+24|0;u=e+8|0;c=i+54|0;e=e+24|0;do{if(t[c>>0]|0)break e;if(!(t[h>>0]|0)){if((t[b>>0]|0)!=0?(f[u>>2]&1|0)==0:0)break e}else{if((f[o>>2]|0)==1)break e;if(!(f[u>>2]&2))break e}t[h>>0]=0;t[b>>0]=0;bg(e,i,r,n,a,s);e=e+8|0}while(e>>>0<l>>>0)}}while(0);t[h>>0]=d;t[b>>0]=k}return}function vg(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;if((e|0)==(f[i+8>>2]|0))hg(0,i,r,t,n);else{e=f[e+8>>2]|0;hM[f[(f[e>>2]|0)+20>>2]&15](e,i,r,t,n,a)}return}function pg(e,i,r,t,n,a){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;a=a|0;if((e|0)==(f[i+8>>2]|0))hg(0,i,r,t,n);return}function gg(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0;n=c;c=c+16|0;t=n;f[t>>2]=f[r>>2];e=uM[f[(f[e>>2]|0)+16>>2]&63](e,i,t)|0;if(e)f[r>>2]=f[t>>2];c=n;return e&1|0}function yg(e){e=e|0;if(!e)e=0;else e=(cg(e,656,704,0)|0)!=0;return e&1|0}function Mg(){var e=0;e=He(4)|0;Np(e);bi(e|0,592,78)}function Eg(){var e=0,i=0,r=0,t=0,n=0,a=0,s=0,l=0;n=c;c=c+48|0;s=n+32|0;r=n+24|0;l=n+16|0;a=n;n=n+36|0;e=Op()|0;if((e|0)!=0?(t=f[e>>2]|0,(t|0)!=0):0){e=t+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;if(!((i&-256|0)==1126902528&(e|0)==1129074247)){f[r>>2]=f[9257];Lp(51919,r)}if((i|0)==1126902529&(e|0)==1129074247)e=f[t+44>>2]|0;else e=t+80|0;f[n>>2]=e;t=f[t>>2]|0;e=f[t+4>>2]|0;if(uM[f[(f[608>>2]|0)+16>>2]&63](608,t,n)|0){l=f[n>>2]|0;n=f[9257]|0;l=lM[f[(f[l>>2]|0)+8>>2]&127](l)|0;f[a>>2]=n;f[a+4>>2]=e;f[a+8>>2]=l;Lp(51833,a)}else{f[l>>2]=f[9257];f[l+4>>2]=e;Lp(51878,l)}}Lp(51957,s)}function Ag(){var e=0;e=c;c=c+16|0;if(!(Be(37020,184)|0)){c=e;return}else Lp(51730,e)}function Sg(e){e=e|0;var i=0,r=0;r=(f[e>>2]|0)+-4|0;i=f[r>>2]|0;f[r>>2]=i+-1;if((i+-1|0)<0)Ip((f[e>>2]|0)+-12|0);return}function Tg(e){e=e|0;var i=0;i=c;c=c+16|0;xc(e);if(!(hi(f[9255]|0,0)|0)){c=i;return}else Lp(51780,i)}function Cg(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;e=jy(e,i,r)|0;return e|0}function Rg(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;e=Hy(e,i,r)|0;return e|0}function Lg(){return 37296}function xg(){return 37300}function Pg(){return 37304}function Og(e){e=e|0;return((e|0)==32|(e+-9|0)>>>0<5)&1|0}function Bg(e){e=e|0;if((e+-48|0)>>>0<10)e=1;else e=((e|32)+-97|0)>>>0<6;return e&1|0}function Ig(){var e=0;if(!(f[9258]|0))e=37308;else e=f[(ni()|0)+60>>2]|0;return e|0}function Dg(e){e=e|0;var i=0,r=0;i=0;while(1){if((a[51978+i>>0]|0)==(e|0)){r=2;break}i=i+1|0;if((i|0)==87){i=87;e=52066;r=5;break}}if((r|0)==2)if(!i)e=52066;else{e=52066;r=5}if((r|0)==5)while(1){r=e;while(1){e=r+1|0;if(!(t[r>>0]|0))break;else r=e}i=i+-1|0;if(!i)break;else r=5}return e|0}function Ng(e,i,r){e=e|0;i=i|0;r=r|0;var n=0.0,s=0,l=0.0,o=0,u=0,h=0.0,d=0,b=0,k=0,w=0.0,_=0.0,m=0,v=0,p=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,O=0,B=0,I=0,D=0,N=0,F=0.0;N=c;c=c+512|0;O=N;switch(i|0){case 0:{D=24;I=-149;S=4;break}case 1:{D=53;I=-1074;S=4;break}case 2:{D=53;I=-1074;S=4;break}default:n=0.0}e:do{if((S|0)==4){R=e+4|0;C=e+100|0;do{i=f[R>>2]|0;if(i>>>0<(f[C>>2]|0)>>>0){f[R>>2]=i+1;i=a[i>>0]|0}else i=jg(e)|0}while((Og(i)|0)!=0);i:do{switch(i|0){case 43:case 45:{s=1-(((i|0)==45&1)<<1)|0;i=f[R>>2]|0;if(i>>>0<(f[C>>2]|0)>>>0){f[R>>2]=i+1;i=a[i>>0]|0;B=s;break i}else{i=jg(e)|0;B=s;break i}}default:B=1}}while(0);s=i;i=0;do{if((s|32|0)!=(t[53870+i>>0]|0))break;do{if(i>>>0<7){s=f[R>>2]|0;if(s>>>0<(f[C>>2]|0)>>>0){f[R>>2]=s+1;s=a[s>>0]|0;break}else{s=jg(e)|0;break}}}while(0);i=i+1|0}while(i>>>0<8);i:do{switch(i|0){case 8:break;case 3:{S=23;break}default:{o=(r|0)!=0;if(o&i>>>0>3)if((i|0)==8)break i;else{S=23;break i}r:do{if(!i){i=0;do{if((s|32|0)!=(t[56747+i>>0]|0))break r;do{if(i>>>0<2){s=f[R>>2]|0;if(s>>>0<(f[C>>2]|0)>>>0){f[R>>2]=s+1;s=a[s>>0]|0;break}else{s=jg(e)|0;break}}}while(0);i=i+1|0}while(i>>>0<3)}}while(0);switch(i|0){case 3:{i=f[R>>2]|0;if(i>>>0<(f[C>>2]|0)>>>0){f[R>>2]=i+1;i=a[i>>0]|0}else i=jg(e)|0;if((i|0)==40)i=1;else{if(!(f[C>>2]|0)){n=g;break e}f[R>>2]=(f[R>>2]|0)+-1;n=g;break e}while(1){s=f[R>>2]|0;if(s>>>0<(f[C>>2]|0)>>>0){f[R>>2]=s+1;s=a[s>>0]|0}else s=jg(e)|0;if(!((s+-48|0)>>>0<10|(s+-65|0)>>>0<26)?!((s|0)==95|(s+-97|0)>>>0<26):0)break;i=i+1|0}if((s|0)==41){n=g;break e}s=(f[C>>2]|0)==0;if(!s)f[R>>2]=(f[R>>2]|0)+-1;if(!o){f[(Ig()|0)>>2]=22;Ug(e,0);n=0.0;break e}if(!i){n=g;break e}while(1){i=i+-1|0;if(!s)f[R>>2]=(f[R>>2]|0)+-1;if(!i){n=g;break e}}}case 0:{do{if((s|0)==48){i=f[R>>2]|0;if(i>>>0<(f[C>>2]|0)>>>0){f[R>>2]=i+1;i=a[i>>0]|0}else i=jg(e)|0;if((i|32|0)!=120){if(!(f[C>>2]|0)){i=48;break}f[R>>2]=(f[R>>2]|0)+-1;i=48;break}i=f[R>>2]|0;if(i>>>0<(f[C>>2]|0)>>>0){f[R>>2]=i+1;i=a[i>>0]|0;o=0}else{i=jg(e)|0;o=0}r:while(1){switch(i|0){case 46:{S=74;break r}case 48:break;default:{E=0;u=0;M=0;s=0;d=o;b=0;p=0;h=1.0;o=0;n=0.0;break r}}i=f[R>>2]|0;if(i>>>0<(f[C>>2]|0)>>>0){f[R>>2]=i+1;i=a[i>>0]|0;o=1;continue}else{i=jg(e)|0;o=1;continue}}if((S|0)==74){i=f[R>>2]|0;if(i>>>0<(f[C>>2]|0)>>>0){f[R>>2]=i+1;i=a[i>>0]|0}else i=jg(e)|0;if((i|0)==48){o=0;s=0;do{i=f[R>>2]|0;if(i>>>0<(f[C>>2]|0)>>>0){f[R>>2]=i+1;i=a[i>>0]|0}else i=jg(e)|0;o=Mm(o|0,s|0,-1,-1)|0;s=P}while((i|0)==48);E=0;u=0;M=o;d=1;b=1;p=0;h=1.0;o=0;n=0.0}else{E=0;u=0;M=0;s=0;d=o;b=1;p=0;h=1.0;o=0;n=0.0}}while(1){m=i+-48|0;k=i|32;if(m>>>0>=10){v=(i|0)==46;if(!(v|(k+-97|0)>>>0<6)){k=M;m=E;break}if(v)if(!b){v=u;s=E;m=E;b=1;k=p;l=h}else{k=M;m=E;i=46;break}else S=86}else S=86;if((S|0)==86){S=0;i=(i|0)>57?k+-87|0:m;do{if(!((E|0)<0|(E|0)==0&u>>>0<8)){if((E|0)<0|(E|0)==0&u>>>0<14){_=h*.0625;k=p;l=_;n=n+_*+(i|0);break}if((p|0)!=0|(i|0)==0){k=p;l=h}else{k=1;l=h;n=n+h*.5}}else{k=p;l=h;o=i+(o<<4)|0}}while(0);u=Mm(u|0,E|0,1,0)|0;v=M;m=P;d=1}i=f[R>>2]|0;if(i>>>0<(f[C>>2]|0)>>>0){f[R>>2]=i+1;E=m;M=v;i=a[i>>0]|0;p=k;h=l;continue}else{E=m;M=v;i=jg(e)|0;p=k;h=l;continue}}if(!d){i=(f[C>>2]|0)==0;if(!i)f[R>>2]=(f[R>>2]|0)+-1;if(r){if(!i?(A=f[R>>2]|0,f[R>>2]=A+-1,(b|0)!=0):0)f[R>>2]=A+-2}else Ug(e,0);n=+(B|0)*0.0;break e}d=(b|0)==0;b=d?u:k;d=d?m:s;if((m|0)<0|(m|0)==0&u>>>0<8){s=m;do{o=o<<4;u=Mm(u|0,s|0,1,0)|0;s=P}while((s|0)<0|(s|0)==0&u>>>0<8)}if((i|32|0)==112){s=Qy(e,r)|0;i=P;if((s|0)==0&(i|0)==-2147483648){if(!r){Ug(e,0);n=0.0;break e}if(!(f[C>>2]|0)){s=0;i=0}else{f[R>>2]=(f[R>>2]|0)+-1;s=0;i=0}}}else if(!(f[C>>2]|0)){s=0;i=0}else{f[R>>2]=(f[R>>2]|0)+-1;s=0;i=0}O=Sm(b|0,d|0,2)|0;O=Mm(O|0,P|0,-32,-1)|0;i=Mm(O|0,P|0,s|0,i|0)|0;s=P;if(!o){n=+(B|0)*0.0;break e}if((s|0)>0|(s|0)==0&i>>>0>(0-I|0)>>>0){f[(Ig()|0)>>2]=34;n=+(B|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break e}O=I+-106|0;x=((O|0)<0)<<31>>31;if((s|0)<(x|0)|(s|0)==(x|0)&i>>>0<O>>>0){f[(Ig()|0)>>2]=34;n=+(B|0)*2.2250738585072014e-308*2.2250738585072014e-308;break e}if((o|0)>-1){do{x=!(n>=.5);O=x&1|o<<1;o=O^1;n=n+(x?n:n+-1.0);i=Mm(i|0,s|0,-1,-1)|0;s=P}while((O|0)>-1);u=i;h=n}else{u=i;h=n}i=gm(32,0,I|0,((I|0)<0)<<31>>31|0)|0;i=Mm(u|0,s|0,i|0,P|0)|0;I=P;if(0>(I|0)|0==(I|0)&D>>>0>i>>>0)if((i|0)<0){i=0;S=127}else S=125;else{i=D;S=125}if((S|0)==125)if((i|0)<53)S=127;else{s=i;l=+(B|0);n=0.0}if((S|0)==127){n=+(B|0);s=i;l=n;n=+Jg(+ry(1.0,84-i|0),n)}D=(o&1|0)==0&(h!=0.0&(s|0)<32);n=l*(D?0.0:h)+(n+l*+(((D&1)+o|0)>>>0))-n;if(!(n!=0.0))f[(Ig()|0)>>2]=34;n=+ty(n,u);break e}else i=s}while(0);L=I+D|0;x=0-L|0;o=0;r:while(1){switch(i|0){case 46:{S=138;break r}case 48:break;default:{s=0;k=0;b=0;break r}}i=f[R>>2]|0;if(i>>>0<(f[C>>2]|0)>>>0){f[R>>2]=i+1;i=a[i>>0]|0;o=1;continue}else{i=jg(e)|0;o=1;continue}}if((S|0)==138){i=f[R>>2]|0;if(i>>>0<(f[C>>2]|0)>>>0){f[R>>2]=i+1;i=a[i>>0]|0}else i=jg(e)|0;if((i|0)==48){s=0;i=0;while(1){s=Mm(s|0,i|0,-1,-1)|0;o=P;i=f[R>>2]|0;if(i>>>0<(f[C>>2]|0)>>>0){f[R>>2]=i+1;i=a[i>>0]|0}else i=jg(e)|0;if((i|0)==48)i=o;else{k=o;o=1;b=1;break}}}else{s=0;k=0;b=1}}f[O>>2]=0;d=i+-48|0;u=(i|0)==46;r:do{if(u|d>>>0<10){T=O+496|0;E=0;v=0;p=u;S=k;m=o;A=b;o=0;u=0;b=0;t:while(1){do{if(p)if(!A){s=E;k=v;A=1}else{k=S;i=E;d=v;break t}else{p=Mm(E|0,v|0,1,0)|0;v=P;M=(i|0)!=48;if((u|0)>=125){if(!M){k=S;E=p;break}f[T>>2]=f[T>>2]|1;k=S;E=p;break}k=O+(u<<2)|0;if(o)d=i+-48+((f[k>>2]|0)*10|0)|0;f[k>>2]=d;o=o+1|0;d=(o|0)==9;k=S;E=p;m=1;o=d?0:o;u=(d&1)+u|0;b=M?p:b}}while(0);i=f[R>>2]|0;if(i>>>0<(f[C>>2]|0)>>>0){f[R>>2]=i+1;i=a[i>>0]|0}else i=jg(e)|0;d=i+-48|0;p=(i|0)==46;if(!(p|d>>>0<10)){d=A;S=161;break r}else S=k}m=(m|0)!=0;S=169}else{E=0;v=0;m=o;d=b;o=0;u=0;b=0;S=161}}while(0);do{if((S|0)==161){T=(d|0)==0;s=T?E:s;k=T?v:k;m=(m|0)!=0;if(!((i|32|0)==101&m))if((i|0)>-1){i=E;d=v;S=169;break}else{i=E;d=v;S=171;break}d=Qy(e,r)|0;i=P;if((d|0)==0&(i|0)==-2147483648){if(!r){Ug(e,0);n=0.0;break}if(!(f[C>>2]|0)){d=0;i=0}else{f[R>>2]=(f[R>>2]|0)+-1;d=0;i=0}}s=Mm(d|0,i|0,s|0,k|0)|0;m=E;k=P;d=v;S=173}}while(0);if((S|0)==169)if(f[C>>2]|0){f[R>>2]=(f[R>>2]|0)+-1;if(m){m=i;S=173}else S=172}else S=171;if((S|0)==171)if(m){m=i;S=173}else S=172;do{if((S|0)==172){f[(Ig()|0)>>2]=22;Ug(e,0);n=0.0}else if((S|0)==173){i=f[O>>2]|0;if(!i){n=+(B|0)*0.0;break}if(((d|0)<0|(d|0)==0&m>>>0<10)&((s|0)==(m|0)&(k|0)==(d|0))?D>>>0>30|(i>>>D|0)==0:0){n=+(B|0)*+(i>>>0);break}e=(I|0)/-2|0;R=((e|0)<0)<<31>>31;if((k|0)>(R|0)|(k|0)==(R|0)&s>>>0>e>>>0){f[(Ig()|0)>>2]=34;n=+(B|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}e=I+-106|0;R=((e|0)<0)<<31>>31;if((k|0)<(R|0)|(k|0)==(R|0)&s>>>0<e>>>0){f[(Ig()|0)>>2]=34;n=+(B|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(o){if((o|0)<9){d=O+(u<<2)|0;i=f[d>>2]|0;do{i=i*10|0;o=o+1|0}while((o|0)!=9);f[d>>2]=i}u=u+1|0}if((b|0)<9?(b|0)<=(s|0)&(s|0)<18:0){if((s|0)==9){n=+(B|0)*+((f[O>>2]|0)>>>0);break}if((s|0)<9){n=+(B|0)*+((f[O>>2]|0)>>>0)/+(f[37312+(8-s<<2)>>2]|0);break}e=D+27+(re(s,-3)|0)|0;i=f[O>>2]|0;if((e|0)>30|(i>>>e|0)==0){n=+(B|0)*+(i>>>0)*+(f[37312+(s+-10<<2)>>2]|0);break}}i=(s|0)%9|0;if(!i){o=0;i=0}else{m=(s|0)>-1?i:i+9|0;d=f[37312+(8-m<<2)>>2]|0;if(u){b=1e9/(d|0)|0;o=0;i=0;k=0;do{C=O+(k<<2)|0;R=f[C>>2]|0;e=((R>>>0)/(d>>>0)|0)+i|0;f[C>>2]=e;i=re((R>>>0)%(d>>>0)|0,b)|0;e=(k|0)==(o|0)&(e|0)==0;k=k+1|0;s=e?s+-9|0:s;o=e?k&127:o}while((k|0)!=(u|0));if(i){f[O+(u<<2)>>2]=i;u=u+1|0}}else{o=0;u=0}i=0;s=9-m+s|0}r:while(1){v=(s|0)<18;p=(s|0)==18;M=O+(o<<2)|0;do{if(!v){if(!p)break r;if((f[M>>2]|0)>>>0>=9007199){s=18;break r}}d=0;b=u+127|0;while(1){m=b&127;k=O+(m<<2)|0;b=Sm(f[k>>2]|0,0,29)|0;b=Mm(b|0,P|0,d|0,0)|0;d=P;if(d>>>0>0|(d|0)==0&b>>>0>1e9){e=Bm(b|0,d|0,1e9,0)|0;b=Im(b|0,d|0,1e9,0)|0;d=e}else d=0;f[k>>2]=b;e=(m|0)==(o|0);u=(m|0)!=(u+127&127|0)|e?u:(b|0)==0?m:u;if(e)break;else b=m+-1|0}i=i+-29|0}while((d|0)==0);o=o+127&127;if((o|0)==(u|0)){e=u+127&127;u=O+((u+126&127)<<2)|0;f[u>>2]=f[u>>2]|f[O+(e<<2)>>2];u=e}f[O+(o<<2)>>2]=d;s=s+9|0}r:while(1){E=u+1&127;M=O+((u+127&127)<<2)|0;while(1){v=(s|0)==18;p=(s|0)>27?9:1;m=v^1;while(1){b=o&127;k=(b|0)==(u|0);do{if(!k){d=f[O+(b<<2)>>2]|0;if(d>>>0<9007199){S=219;break}if(d>>>0>9007199)break;d=o+1&127;if((d|0)==(u|0)){S=219;break}d=f[O+(d<<2)>>2]|0;if(d>>>0<254740991){S=219;break}if(!(d>>>0>254740991|m)){s=b;break r}}else S=219}while(0);if((S|0)==219?(S=0,v):0){S=220;break r}i=i+p|0;if((o|0)==(u|0))o=u;else break}m=(1<<p)+-1|0;v=1e9>>>p;b=o;d=0;k=o;while(1){R=O+(k<<2)|0;e=f[R>>2]|0;o=(e>>>p)+d|0;f[R>>2]=o;d=re(e&m,v)|0;o=(k|0)==(b|0)&(o|0)==0;k=k+1&127;s=o?s+-9|0:s;o=o?k:b;if((k|0)==(u|0))break;else b=o}if(!d)continue;if((E|0)!=(o|0))break;f[M>>2]=f[M>>2]|1}f[O+(u<<2)>>2]=d;u=E}if((S|0)==220)if(k){f[O+(E+-1<<2)>>2]=0;s=u;u=E}else s=b;n=+((f[O+(s<<2)>>2]|0)>>>0);s=o+1&127;if((s|0)==(u|0)){u=o+2&127;f[O+(u+-1<<2)>>2]=0}_=+(B|0);l=_*(n*1.0e9+ +((f[O+(s<<2)>>2]|0)>>>0));v=i+53|0;k=v-I|0;m=(k|0)<(D|0);s=m&1;b=m?(k|0)<0?0:k:D;if((b|0)<53){F=+Jg(+ry(1.0,105-b|0),l);h=+$g(l,+ry(1.0,53-b|0));w=F;n=h;h=F+(l-h)}else{w=0.0;n=0.0;h=l}d=o+2&127;do{if((d|0)==(u|0))l=n;else{d=f[O+(d<<2)>>2]|0;do{if(d>>>0>=5e8){if(d>>>0>5e8){n=_*.75+n;break}if((o+3&127|0)==(u|0)){n=_*.5+n;break}else{n=_*.75+n;break}}else{if((d|0)==0?(o+3&127|0)==(u|0):0)break;n=_*.25+n}}while(0);if((53-b|0)<=1){l=n;break}if(+$g(n,1.0)!=0.0){l=n;break}l=n+1.0}}while(0);n=h+l-w;do{if((v&2147483647|0)>(-2-L|0)){if(+Y(+n)>=9007199254740992.0){s=m&(b|0)==(k|0)?0:s;i=i+1|0;n=n*.5}if((i+50|0)<=(x|0)?!(l!=0.0&(s|0)!=0):0)break;f[(Ig()|0)>>2]=34}}while(0);n=+ty(n,i)}}while(0);break e}default:{if(f[C>>2]|0)f[R>>2]=(f[R>>2]|0)+-1;f[(Ig()|0)>>2]=22;Ug(e,0);n=0.0;break e}}}}}while(0);if((S|0)==23){s=(f[C>>2]|0)==0;if(!s)f[R>>2]=(f[R>>2]|0)+-1;if((r|0)!=0&i>>>0>3)do{if(!s)f[R>>2]=(f[R>>2]|0)+-1;i=i+-1|0}while(i>>>0>3)}n=+(B|0)*y}}while(0);c=N;return+n}function Fg(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,k=0,w=0,_=0;e:do{if(i>>>0>36){f[(Ig()|0)>>2]=22;s=0;n=0}else{_=e+4|0;w=e+100|0;do{l=f[_>>2]|0;if(l>>>0<(f[w>>2]|0)>>>0){f[_>>2]=l+1;l=a[l>>0]|0}else l=jg(e)|0}while((Og(l)|0)!=0);i:do{switch(l|0){case 43:case 45:{o=((l|0)==45)<<31>>31;l=f[_>>2]|0;if(l>>>0<(f[w>>2]|0)>>>0){f[_>>2]=l+1;l=a[l>>0]|0;k=o;break i}else{l=jg(e)|0;k=o;break i}}default:k=0}}while(0);o=(i|0)==0;do{if((i&-17|0)==0&(l|0)==48){l=f[_>>2]|0;if(l>>>0<(f[w>>2]|0)>>>0){f[_>>2]=l+1;l=a[l>>0]|0}else l=jg(e)|0;if((l|32|0)!=120)if(o){i=8;d=46;break}else{d=32;break}i=f[_>>2]|0;if(i>>>0<(f[w>>2]|0)>>>0){f[_>>2]=i+1;l=a[i>>0]|0}else l=jg(e)|0;if((a[53879+(l+1)>>0]|0)>15){n=(f[w>>2]|0)==0;if(!n)f[_>>2]=(f[_>>2]|0)+-1;if(!r){Ug(e,0);s=0;n=0;break e}if(n){s=0;n=0;break e}f[_>>2]=(f[_>>2]|0)+-1;s=0;n=0;break e}else{i=16;d=46}}else{i=o?10:i;if((a[53879+(l+1)>>0]|0)>>>0<i>>>0)d=32;else{if(f[w>>2]|0)f[_>>2]=(f[_>>2]|0)+-1;Ug(e,0);f[(Ig()|0)>>2]=22;s=0;n=0;break e}}}while(0);if((d|0)==32)if((i|0)==10){i=l+-48|0;if(i>>>0<10){l=0;while(1){o=(l*10|0)+i|0;i=f[_>>2]|0;if(i>>>0<(f[w>>2]|0)>>>0){f[_>>2]=i+1;l=a[i>>0]|0}else l=jg(e)|0;i=l+-48|0;if(!(i>>>0<10&o>>>0<429496729)){i=o;break}else l=o}o=0}else{i=0;o=0}r=l+-48|0;if(r>>>0<10){while(1){u=Om(i|0,o|0,10,0)|0;c=P;h=((r|0)<0)<<31>>31;b=~h;if(c>>>0>b>>>0|(c|0)==(b|0)&u>>>0>~r>>>0){u=i;break}i=Mm(u|0,c|0,r|0,h|0)|0;o=P;l=f[_>>2]|0;if(l>>>0<(f[w>>2]|0)>>>0){f[_>>2]=l+1;l=a[l>>0]|0}else l=jg(e)|0;r=l+-48|0;if(!(r>>>0<10&(o>>>0<429496729|(o|0)==429496729&i>>>0<2576980378))){u=i;break}}if(r>>>0>9){l=u;i=k}else{i=10;d=72}}else{l=i;i=k}}else d=46;i:do{if((d|0)==46){if(!(i+-1&i)){d=t[54136+((i*23|0)>>>5&7)>>0]|0;o=t[53879+(l+1)>>0]|0;r=o&255;if(r>>>0<i>>>0){l=0;while(1){u=r|l<<d;l=f[_>>2]|0;if(l>>>0<(f[w>>2]|0)>>>0){f[_>>2]=l+1;l=a[l>>0]|0}else l=jg(e)|0;o=t[53879+(l+1)>>0]|0;r=o&255;if(!(u>>>0<134217728&r>>>0<i>>>0))break;else l=u}r=0}else{r=0;u=0}c=Em(-1,-1,d|0)|0;h=P;if((o&255)>>>0>=i>>>0|(r>>>0>h>>>0|(r|0)==(h|0)&u>>>0>c>>>0)){o=r;d=72;break}else l=r;while(1){u=Sm(u|0,l|0,d|0)|0;r=P;u=o&255|u;l=f[_>>2]|0;if(l>>>0<(f[w>>2]|0)>>>0){f[_>>2]=l+1;l=a[l>>0]|0}else l=jg(e)|0;o=t[53879+(l+1)>>0]|0;if((o&255)>>>0>=i>>>0|(r>>>0>h>>>0|(r|0)==(h|0)&u>>>0>c>>>0)){o=r;d=72;break i}else l=r}}o=t[53879+(l+1)>>0]|0;r=o&255;if(r>>>0<i>>>0){l=0;while(1){u=r+(re(l,i)|0)|0;l=f[_>>2]|0;if(l>>>0<(f[w>>2]|0)>>>0){f[_>>2]=l+1;l=a[l>>0]|0}else l=jg(e)|0;o=t[53879+(l+1)>>0]|0;r=o&255;if(!(u>>>0<119304647&r>>>0<i>>>0))break;else l=u}r=0}else{u=0;r=0}if((o&255)>>>0<i>>>0){d=Bm(-1,-1,i|0,0)|0;b=P;h=r;while(1){if(h>>>0>b>>>0|(h|0)==(b|0)&u>>>0>d>>>0){o=h;d=72;break i}r=Om(u|0,h|0,i|0,0)|0;c=P;o=o&255;if(c>>>0>4294967295|(c|0)==-1&r>>>0>~o>>>0){o=h;d=72;break i}u=Mm(o|0,0,r|0,c|0)|0;r=P;l=f[_>>2]|0;if(l>>>0<(f[w>>2]|0)>>>0){f[_>>2]=l+1;l=a[l>>0]|0}else l=jg(e)|0;o=t[53879+(l+1)>>0]|0;if((o&255)>>>0>=i>>>0){o=r;d=72;break}else h=r}}else{o=r;d=72}}}while(0);if((d|0)==72)if((a[53879+(l+1)>>0]|0)>>>0<i>>>0){do{l=f[_>>2]|0;if(l>>>0<(f[w>>2]|0)>>>0){f[_>>2]=l+1;l=a[l>>0]|0}else l=jg(e)|0}while((a[53879+(l+1)>>0]|0)>>>0<i>>>0);f[(Ig()|0)>>2]=34;o=s;l=n;i=(n&1|0)==0&0==0?k:0}else{l=u;i=k}if(f[w>>2]|0)f[_>>2]=(f[_>>2]|0)+-1;if(!(o>>>0<s>>>0|(o|0)==(s|0)&l>>>0<n>>>0)){if(!((n&1|0)!=0|0!=0|(i|0)!=0)){f[(Ig()|0)>>2]=34;n=Mm(n|0,s|0,-1,-1)|0;s=P;break}if(o>>>0>s>>>0|(o|0)==(s|0)&l>>>0>n>>>0){f[(Ig()|0)>>2]=34;break}}n=((i|0)<0)<<31>>31;n=gm(l^i|0,o^n|0,i|0,n|0)|0;s=P}}while(0);P=s;return n|0}function Ug(e,i){e=e|0;i=i|0;var r=0,t=0,n=0;f[e+104>>2]=i;r=f[e+4>>2]|0;t=f[e+8>>2]|0;n=t-r|0;f[e+108>>2]=n;if((i|0)!=0&(n|0)>(i|0))f[e+100>>2]=r+i;else f[e+100>>2]=t;return}function jg(e){e=e|0;var i=0,r=0,n=0,s=0,l=0,o=0;r=e+104|0;l=f[r>>2]|0;if((l|0)!=0?(f[e+108>>2]|0)>=(l|0):0)o=4;else{i=Ay(e)|0;if((i|0)>=0){s=f[r>>2]|0;r=e+8|0;if(s){n=f[r>>2]|0;l=f[e+4>>2]|0;r=n;s=s-(f[e+108>>2]|0)+-1|0;if((r-l|0)>(s|0))f[e+100>>2]=l+s;else o=9}else{n=f[r>>2]|0;r=n;o=9}if((o|0)==9)f[e+100>>2]=r;r=f[e+4>>2]|0;if(n){e=e+108|0;f[e>>2]=n+1-r+(f[e>>2]|0)}r=r+-1|0;if((a[r>>0]|0|0)!=(i|0))t[r>>0]=i}else o=4}if((o|0)==4){f[e+100>>2]=0;i=-1}return i|0}function Hg(e){e=e|0;if(e>>>0>4294963200){f[(Ig()|0)>>2]=0-e;e=-1}return e|0}function zg(e){e=e|0;return 0}function Yg(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;return t|0}function qg(e,i){e=e|0;i=i|0;return-1|0}function Xg(e){e=e|0;xc(e);return}function Vg(e,i){e=e|0;i=i|0;return(e+-48|0)>>>0<10|0}function Gg(e,i){e=e|0;i=i|0;return Bg(e)|0}function Kg(e,i,r){e=e|0;i=i|0;r=r|0;if(((t[i>>0]|0)!=0?(qy(i,58885)|0)!=0:0)?(qy(i,54145)|0)!=0:0)r=0;else if(!r)r=Pc(1,4)|0;return r|0}function Wg(e){e=e|0;var i=0,r=0;i=(ni()|0)+176|0;r=f[i>>2]|0;if(e)f[i>>2]=e;return r|0}function Zg(e,i){e=+e;i=+i;var r=0,t=0;u[d>>3]=e;t=f[d>>2]|0;r=f[d+4>>2]|0;u[d>>3]=i;r=f[d+4>>2]&-2147483648|r&2147483647;f[d>>2]=t;f[d+4>>2]=r;return+ +u[d>>3]}function Jg(e,i){e=+e;i=+i;return+ +Zg(e,i)}function Qg(e,i){e=+e;i=+i;var r=0,t=0,n=0,a=0,s=0,l=0,o=0,c=0,h=0,b=0,k=0,w=0;u[d>>3]=e;r=f[d>>2]|0;c=f[d+4>>2]|0;u[d>>3]=i;h=f[d>>2]|0;b=f[d+4>>2]|0;t=Em(r|0,c|0,52)|0;t=t&2047;l=Em(h|0,b|0,52)|0;l=l&2047;k=c&-2147483648;s=Sm(h|0,b|0,1)|0;o=P;e:do{if(!((s|0)==0&(o|0)==0)?(a=b&2147483647,!(a>>>0>2146435072|(a|0)==2146435072&h>>>0>0|(t|0)==2047)):0){n=Sm(r|0,c|0,1)|0;a=P;if(!(a>>>0>o>>>0|(a|0)==(o|0)&n>>>0>s>>>0))return+((n|0)==(s|0)&(a|0)==(o|0)?e*0.0:e);if(!t){t=Sm(r|0,c|0,12)|0;n=P;if((n|0)>-1|(n|0)==-1&t>>>0>4294967295){a=t;t=0;do{t=t+-1|0;a=Sm(a|0,n|0,1)|0;n=P}while((n|0)>-1|(n|0)==-1&a>>>0>4294967295)}else t=0;r=Sm(r|0,c|0,1-t|0)|0;n=P}else n=c&1048575|1048576;if(!l){a=Sm(h|0,b|0,12)|0;s=P;if((s|0)>-1|(s|0)==-1&a>>>0>4294967295){l=0;do{l=l+-1|0;a=Sm(a|0,s|0,1)|0;s=P}while((s|0)>-1|(s|0)==-1&a>>>0>4294967295)}else l=0;h=Sm(h|0,b|0,1-l|0)|0;c=P}else c=b&1048575|1048576;o=gm(r|0,n|0,h|0,c|0)|0;s=P;a=(s|0)>-1|(s|0)==-1&o>>>0>4294967295;i:do{if((t|0)>(l|0)){while(1){if(a)if((r|0)==(h|0)&(n|0)==(c|0))break;else{r=o;n=s}r=Sm(r|0,n|0,1)|0;n=P;t=t+-1|0;o=gm(r|0,n|0,h|0,c|0)|0;s=P;a=(s|0)>-1|(s|0)==-1&o>>>0>4294967295;if((t|0)<=(l|0))break i}i=e*0.0;break e}}while(0);if(a)if((r|0)==(h|0)&(n|0)==(c|0)){i=e*0.0;break}else{n=s;r=o}if(n>>>0<1048576|(n|0)==1048576&r>>>0<0)do{r=Sm(r|0,n|0,1)|0;n=P;t=t+-1|0}while(n>>>0<1048576|(n|0)==1048576&r>>>0<0);if((t|0)>0){b=Mm(r|0,n|0,0,-1048576)|0;r=P;t=Sm(t|0,0,52)|0;r=r|P;t=b|t}else{t=Em(r|0,n|0,1-t|0)|0;r=P}f[d>>2]=t;f[d+4>>2]=r|k;i=+u[d>>3]}else w=3}while(0);if((w|0)==3){i=e*i;i=i/i}return+i}function $g(e,i){e=+e;i=+i;return+ +Qg(e,i)}function ey(e,i){e=+e;i=i|0;var r=0,t=0,n=0;u[d>>3]=e;r=f[d>>2]|0;t=f[d+4>>2]|0;n=Em(r|0,t|0,52)|0;n=n&2047;switch(n|0){case 0:{if(e!=0.0){e=+ey(e*18446744073709551616.0,i);r=(f[i>>2]|0)+-64|0}else r=0;f[i>>2]=r;break}case 2047:break;default:{f[i>>2]=n+-1022;f[d>>2]=r;f[d+4>>2]=t&-2146435073|1071644672;e=+u[d>>3]}}return+e}function iy(e,i){e=+e;i=i|0;return+ +ey(e,i)}function ry(e,i){e=+e;i=i|0;var r=0;if((i|0)>1023){e=e*8988465674311579538646525.0e283;r=i+-1023|0;if((r|0)>1023){r=i+-2046|0;r=(r|0)>1023?1023:r;e=e*8988465674311579538646525.0e283}}else if((i|0)<-1022){e=e*2.2250738585072014e-308;r=i+1022|0;if((r|0)<-1022){r=i+2044|0;r=(r|0)<-1022?-1022:r;e=e*2.2250738585072014e-308}}else r=i;r=Sm(r+1023|0,0,52)|0;i=P;f[d>>2]=r;f[d+4>>2]=i;return+(e*+u[d>>3])}function ty(e,i){e=+e;i=i|0;return+ +ry(e,i)}function ny(e,i,r){e=e|0;i=i|0;r=r|0;return fy(0,e,i,(r|0)!=0?r:37344)|0}function fy(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;a=u;l=(n|0)==0?37348:n;n=f[l>>2]|0;e:do{if(!i)if(!n)n=0;else o=15;else{s=(e|0)==0?a:e;if(!r)n=-2;else{if(!n){n=t[i>>0]|0;a=n&255;if(n<<24>>24>-1){f[s>>2]=a;n=n<<24>>24!=0&1;break}n=a+-194|0;if(n>>>0>50){o=15;break}n=f[37076+(n<<2)>>2]|0;a=r+-1|0;if(a){i=i+1|0;o=9}}else{a=r;o=9}i:do{if((o|0)==9){e=t[i>>0]|0;h=(e&255)>>>3;if((h+-16|h+(n>>26))>>>0>7){o=15;break e}while(1){i=i+1|0;n=(e&255)+-128|n<<6;a=a+-1|0;if((n|0)>=0)break;if(!a)break i;e=t[i>>0]|0;if((e&-64)<<24>>24!=-128){o=15;break e}}f[l>>2]=0;f[s>>2]=n;n=r-a|0;break e}}while(0);f[l>>2]=n;n=-2}}}while(0);if((o|0)==15){f[l>>2]=0;f[(Ig()|0)>>2]=84;n=-1}c=u;return n|0}function ay(e){e=e|0;if(!e)e=1;else e=(f[e>>2]|0)==0;return e&1|0}function sy(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0;b=c;c=c+1040|0;u=b+8|0;d=b;o=f[i>>2]|0;f[d>>2]=o;h=(e|0)!=0;t=h?t:256;e=h?e:u;a=o;e:do{if((t|0)!=0&(o|0)!=0){l=t;o=a;t=0;while(1){a=r>>>2;s=a>>>0>=l>>>0;if(!(r>>>0>131|s)){a=o;break e}a=s?l:a;r=r-a|0;a=ly(e,d,a,n)|0;if((a|0)==-1){t=r;break}k=(e|0)==(u|0);o=k?0:a;s=l-o|0;e=k?e:e+(a<<2)|0;t=a+t|0;a=f[d>>2]|0;if((l|0)!=(o|0)&(a|0)!=0){l=s;o=a}else{l=s;break e}}r=t;l=0;a=f[d>>2]|0;t=-1}else{l=t;t=0}}while(0);e:do{if((a|0)!=0?(l|0)!=0&(r|0)!=0:0){s=a;a=e;while(1){e=fy(a,s,r,n)|0;if((e+2|0)>>>0<3)break;s=(f[d>>2]|0)+e|0;f[d>>2]=s;l=l+-1|0;t=t+1|0;if(!((l|0)!=0&(r|0)!=(e|0)))break e;else{r=r-e|0;a=a+4|0}}switch(e|0){case-1:{t=-1;break e}case 0:{f[d>>2]=0;break e}default:{f[n>>2]=0;break e}}}}while(0);if(h)f[i>>2]=f[d>>2];c=b;return t|0}function ly(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var s=0,l=0,o=0,u=0,c=0,h=0;s=f[i>>2]|0;if((n|0)!=0?(l=f[n>>2]|0,(l|0)!=0):0)if(!e){n=r;o=s;h=16}else{f[n>>2]=0;c=e;n=r;u=l;h=37}else if(!e){n=r;h=7}else{l=e;n=r;h=6}e:while(1)if((h|0)==6){if(!n){h=26;break}else e=l;while(1){l=t[s>>0]|0;do{if(((l&255)+-1|0)>>>0<127?n>>>0>4&(s&3|0)==0:0){o=s;while(1){s=f[o>>2]|0;if((s+-16843009|s)&-2139062144){l=s;s=o;h=32;break}f[e>>2]=s&255;f[e+4>>2]=a[o+1>>0];f[e+8>>2]=a[o+2>>0];s=o+4|0;l=e+16|0;f[e+12>>2]=a[o+3>>0];n=n+-4|0;if(n>>>0>4){e=l;o=s}else{h=31;break}}if((h|0)==31){e=l;l=t[s>>0]|0;break}else if((h|0)==32){l=l&255;break}}}while(0);l=l&255;if((l+-1|0)>>>0>=127)break;s=s+1|0;f[e>>2]=l;n=n+-1|0;if(!n){h=26;break e}else e=e+4|0}l=l+-194|0;if(l>>>0>50){h=48;break}c=e;u=f[37076+(l<<2)>>2]|0;s=s+1|0;h=37;continue}else if((h|0)==7){l=t[s>>0]|0;if(((l&255)+-1|0)>>>0<127?(s&3|0)==0:0){l=f[s>>2]|0;if(!((l+-16843009|l)&-2139062144))do{s=s+4|0;n=n+-4|0;l=f[s>>2]|0}while(((l+-16843009|l)&-2139062144|0)==0);l=l&255}l=l&255;if((l+-1|0)>>>0<127){n=n+-1|0;s=s+1|0;h=7;continue}l=l+-194|0;if(l>>>0>50){h=48;break}l=f[37076+(l<<2)>>2]|0;o=s+1|0;h=16;continue}else if((h|0)==16){h=(a[o>>0]|0)>>>3;if((h+-16|h+(l>>26))>>>0>7){h=17;break}s=o+1|0;if(l&33554432){if((t[s>>0]&-64)<<24>>24!=-128){h=20;break}s=o+2|0;if(l&524288){if((t[s>>0]&-64)<<24>>24!=-128){h=23;break}s=o+3|0}}n=n+-1|0;h=7;continue}else if((h|0)==37){l=a[s>>0]|0;h=l>>>3;if((h+-16|h+(u>>26))>>>0>7){h=38;break}o=s+1|0;e=l+-128|u<<6;if((e|0)<0){l=a[o>>0]|0;if((l&192|0)!=128){h=41;break}o=s+2|0;e=l+-128|e<<6;if((e|0)<0){l=a[o>>0]|0;if((l&192|0)!=128){h=44;break}e=l+-128|e<<6;s=s+3|0}else s=o}else s=o;f[c>>2]=e;l=c+4|0;n=n+-1|0;h=6;continue}if((h|0)==17){s=o+-1|0;h=47}else if((h|0)==20){s=o+-1|0;h=47}else if((h|0)==23){s=o+-1|0;h=47}else if((h|0)==26)f[i>>2]=s;else if((h|0)==38){e=c;l=u;s=s+-1|0;h=47}else if((h|0)==41){n=c;r=s+-1|0;h=52}else if((h|0)==44){n=c;r=s+-1|0;h=52}if((h|0)==47)if(!l)h=48;else{n=e;r=s;h=52}if((h|0)==48)if(!(t[s>>0]|0)){if(e){f[e>>2]=0;f[i>>2]=0}r=r-n|0}else{n=e;r=s;h=52}if((h|0)==52){f[(Ig()|0)>>2]=84;if(!n)r=-1;else{f[i>>2]=r;r=-1}}return r|0}function oy(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0;o=c;c=c+16|0;n=o;e:do{if(!i)n=0;else{do{if(r){l=(e|0)==0?n:e;n=t[i>>0]|0;e=n&255;if(n<<24>>24>-1){f[l>>2]=e;n=n<<24>>24!=0&1;break e}n=e+-194|0;if(n>>>0<=50){e=i+1|0;s=f[37076+(n<<2)>>2]|0;if(r>>>0<4?(s&-2147483648>>>((r*6|0)+-6|0)|0)!=0:0)break;n=a[e>>0]|0;r=n>>>3;if((r+-16|r+(s>>26))>>>0<=7){n=n+-128|s<<6;if((n|0)>=0){f[l>>2]=n;n=2;break e}e=a[i+2>>0]|0;if((e&192|0)==128){e=e+-128|n<<6;if((e|0)>=0){f[l>>2]=e;n=3;break e}n=a[i+3>>0]|0;if((n&192|0)==128){f[l>>2]=n+-128|e<<6;n=4;break e}}}}}}while(0);f[(Ig()|0)>>2]=84;n=-1}}while(0);c=o;return n|0}function uy(e,i,r){e=e|0;i=i|0;r=r|0;do{if(e){if(i>>>0<128){t[e>>0]=i;e=1;break}if(i>>>0<2048){t[e>>0]=i>>>6|192;t[e+1>>0]=i&63|128;e=2;break}if(i>>>0<55296|(i&-8192|0)==57344){t[e>>0]=i>>>12|224;t[e+1>>0]=i>>>6&63|128;t[e+2>>0]=i&63|128;e=3;break}if((i+-65536|0)>>>0<1048576){t[e>>0]=i>>>18|240;t[e+1>>0]=i>>>12&63|128;t[e+2>>0]=i>>>6&63|128;t[e+3>>0]=i&63|128;e=4;break}else{f[(Ig()|0)>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function cy(e,i,r,t,n){e=e|0;i=i|0;r=r|0;t=t|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;h=c;c=c+272|0;l=h+8|0;u=h;s=f[i>>2]|0;f[u>>2]=s;o=(e|0)!=0;n=o?t:256;t=o?e:l;e=s;e:do{if((n|0)!=0&(s|0)!=0){s=n;a=e;n=0;while(1){e=r>>>0>=s>>>0;if(!(e|r>>>0>32)){e=a;break e}e=e?s:r;r=r-e|0;e=hy(t,u,e,0)|0;if((e|0)==-1){n=r;break}b=(t|0)==(l|0);d=b?0:e;a=s-d|0;t=b?t:t+e|0;n=e+n|0;e=f[u>>2]|0;if((s|0)!=(d|0)&(e|0)!=0){s=a;a=e}else{s=a;break e}}r=n;s=0;e=f[u>>2]|0;n=-1}else{s=n;n=0}}while(0);e:do{if((e|0)!=0?(s|0)!=0&(r|0)!=0:0){a=e;e=t;while(1){t=uy(e,f[a>>2]|0,0)|0;if((t+1|0)>>>0<2)break;a=(f[u>>2]|0)+4|0;f[u>>2]=a;r=r+-1|0;n=n+1|0;if(!((s|0)!=(t|0)&(r|0)!=0))break e;else{s=s-t|0;e=e+t|0}}if(!t)f[u>>2]=0;else n=-1}}while(0);if(o)f[i>>2]=f[u>>2];c=h;return n|0}function hy(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0;o=c;c=c+16|0;l=o;e:do{if(!e){e=f[i>>2]|0;n=f[e>>2]|0;if(!n)r=0;else{r=0;do{if(n>>>0>127){n=uy(l,n,0)|0;if((n|0)==-1){r=-1;break e}}else n=1;r=n+r|0;e=e+4|0;n=f[e>>2]|0}while((n|0)!=0)}}else{i:do{if(r>>>0>3){n=r;a=f[i>>2]|0;while(1){s=f[a>>2]|0;if((s+-1|0)>>>0>126){if(!s)break;s=uy(e,s,0)|0;if((s|0)==-1){r=-1;break e}e=e+s|0;n=n-s|0}else{t[e>>0]=s;e=e+1|0;n=n+-1|0;a=f[i>>2]|0}a=a+4|0;f[i>>2]=a;if(n>>>0<=3)break i}t[e>>0]=0;f[i>>2]=0;r=r-n|0;break e}else n=r}while(0);if(n){a=f[i>>2]|0;while(1){s=f[a>>2]|0;if((s+-1|0)>>>0>126){if(!s){a=19;break}s=uy(l,s,0)|0;if((s|0)==-1){r=-1;break e}if(n>>>0<s>>>0){a=22;break}uy(e,f[a>>2]|0,0)|0;e=e+s|0;n=n-s|0}else{t[e>>0]=s;e=e+1|0;n=n+-1|0;a=f[i>>2]|0}a=a+4|0;f[i>>2]=a;if(!n)break e}if((a|0)==19){t[e>>0]=0;f[i>>2]=0;r=r-n|0;break}else if((a|0)==22){r=r-n|0;break}}}}while(0);c=o;return r|0}function dy(e,i){e=e|0;i=i|0;if(!e)e=0;else e=uy(e,i,0)|0;return e|0}function by(e){e=e|0;return 0}function ky(e){e=e|0;return}function wy(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+16|0;u=h;o=i&255;t[u>>0]=o;n=e+16|0;s=f[n>>2]|0;if(!s)if(!(Ey(e)|0)){s=f[n>>2]|0;l=4}else r=-1;else l=4;do{if((l|0)==4){n=e+20|0;l=f[n>>2]|0;if(l>>>0<s>>>0?(r=i&255,(r|0)!=(t[e+75>>0]|0)):0){f[n>>2]=l+1;t[l>>0]=o;break}if((uM[f[e+36>>2]&63](e,u,1)|0)==1)r=a[u>>0]|0;else r=-1}}while(0);c=h;return r|0}function _y(e){e=e|0;var i=0,r=0;i=c;c=c+16|0;r=i;f[r>>2]=f[e+60>>2];e=Hg(wi(6,r|0)|0)|0;c=i;return e|0}function my(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0;h=c;c=c+48|0;s=h+16|0;a=h;n=h+32|0;f[n>>2]=i;l=n+4|0;u=e+48|0;d=f[u>>2]|0;f[l>>2]=r-((d|0)!=0&1);o=e+44|0;f[n+8>>2]=f[o>>2];f[n+12>>2]=d;if(!(f[9258]|0)){f[s>>2]=f[e+60>>2];f[s+4>>2]=n;f[s+8>>2]=2;n=Hg(Ei(145,s|0)|0)|0}else{_i(185,e|0);f[a>>2]=f[e+60>>2];f[a+4>>2]=n;f[a+8>>2]=2;n=Hg(Ei(145,a|0)|0)|0;oi(0)}if((n|0)>=1){l=f[l>>2]|0;if(n>>>0>l>>>0){s=f[o>>2]|0;a=e+4|0;f[a>>2]=s;f[e+8>>2]=s+(n-l);if(!(f[u>>2]|0))n=r;else{f[a>>2]=s+1;t[i+(r+-1)>>0]=t[s>>0]|0;n=r}}}else{f[e>>2]=f[e>>2]|n&48^16;f[e+8>>2]=0;f[e+4>>2]=0}c=h;return n|0}function vy(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0;n=c;c=c+32|0;a=n;t=n+20|0;f[a>>2]=f[e+60>>2];f[a+4>>2]=0;f[a+8>>2]=i;f[a+12>>2]=t;f[a+16>>2]=r;if((Hg(Mi(140,a|0)|0)|0)<0){f[t>>2]=-1;e=-1}else e=f[t>>2]|0;c=n;return e|0}function py(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0;w=c;c=c+48|0;d=w+16|0;h=w;t=w+32|0;b=e+28|0;n=f[b>>2]|0;f[t>>2]=n;k=e+20|0;n=(f[k>>2]|0)-n|0;f[t+4>>2]=n;f[t+8>>2]=i;f[t+12>>2]=r;o=e+60|0;u=e+44|0;i=2;n=n+r|0;while(1){if(!(f[9258]|0)){f[d>>2]=f[o>>2];f[d+4>>2]=t;f[d+8>>2]=i;s=Hg(Ai(146,d|0)|0)|0}else{_i(186,e|0);f[h>>2]=f[o>>2];f[h+4>>2]=t;f[h+8>>2]=i;s=Hg(Ai(146,h|0)|0)|0;oi(0)}if((n|0)==(s|0)){n=6;break}if((s|0)<0){n=8;break}n=n-s|0;a=f[t+4>>2]|0;if(s>>>0<=a>>>0)if((i|0)==2){f[b>>2]=(f[b>>2]|0)+s;l=a;i=2}else l=a;else{l=f[u>>2]|0;f[b>>2]=l;f[k>>2]=l;l=f[t+12>>2]|0;s=s-a|0;t=t+8|0;i=i+-1|0}f[t>>2]=(f[t>>2]|0)+s;f[t+4>>2]=l-s}if((n|0)==6){d=f[u>>2]|0;f[e+16>>2]=d+(f[e+48>>2]|0);e=d;f[b>>2]=e;f[k>>2]=e}else if((n|0)==8){f[e+16>>2]=0;f[b>>2]=0;f[k>>2]=0;f[e>>2]=f[e>>2]|32;if((i|0)==2)r=0;else r=r-(f[t+4>>2]|0)|0}c=w;return r|0}function gy(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0;a=c;c=c+80|0;n=a;f[e+36>>2]=8;if((f[e>>2]&64|0)==0?(f[n>>2]=f[e+60>>2],f[n+4>>2]=21505,f[n+8>>2]=a+12,(si(54,n|0)|0)!=0):0)t[e+75>>0]=-1;n=py(e,i,r)|0;c=a;return n|0}function yy(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0;t=e+84|0;a=f[t>>2]|0;s=r+256|0;n=zy(a,0,s)|0;n=(n|0)==0?s:n-a|0;r=n>>>0<r>>>0?n:r;Am(i|0,a|0,r|0)|0;f[e+4>>2]=a+r;i=a+n|0;f[e+8>>2]=i;f[t>>2]=i;return r|0}function My(e){e=e|0;var i=0,r=0;i=e+74|0;r=t[i>>0]|0;t[i>>0]=r+255|r;i=e+20|0;r=e+44|0;if((f[i>>2]|0)>>>0>(f[r>>2]|0)>>>0)uM[f[e+36>>2]&63](e,0,0)|0;f[e+16>>2]=0;f[e+28>>2]=0;f[i>>2]=0;i=f[e>>2]|0;if(i&20)if(!(i&4))i=-1;else{f[e>>2]=i|32;i=-1}else{i=f[r>>2]|0;f[e+8>>2]=i;f[e+4>>2]=i;i=0}return i|0}function Ey(e){e=e|0;var i=0,r=0;i=e+74|0;r=t[i>>0]|0;t[i>>0]=r+255|r;i=f[e>>2]|0;if(!(i&8)){f[e+8>>2]=0;f[e+4>>2]=0;i=f[e+44>>2]|0;f[e+28>>2]=i;f[e+20>>2]=i;f[e+16>>2]=i+(f[e+48>>2]|0);i=0}else{f[e>>2]=i|32;i=-1}return i|0}function Ay(e){e=e|0;var i=0,r=0;r=c;c=c+16|0;i=r;if((f[e+8>>2]|0)==0?(My(e)|0)!=0:0)i=-1;else if((uM[f[e+32>>2]&63](e,i,1)|0)==1)i=a[i>>0]|0;else i=-1;c=r;return i|0}function Sy(e){e=e|0;var i=0,r=0;do{if(e){if((f[e+76>>2]|0)<=-1){i=iM(e)|0;break}r=(by(e)|0)==0;i=iM(e)|0;if(!r)ky(e)}else{if(!(f[9323]|0))i=0;else i=Sy(f[9323]|0)|0;Oe(37060);e=f[9264]|0;if(e)do{if((f[e+76>>2]|0)>-1)r=by(e)|0;else r=0;if((f[e+20>>2]|0)>>>0>(f[e+28>>2]|0)>>>0)i=iM(e)|0|i;if(r)ky(e);e=f[e+56>>2]|0}while((e|0)!=0);li(37060)}}while(0);return i|0}function Ty(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0;if((f[i+76>>2]|0)>=0?(by(i)|0)!=0:0){if((t[i+75>>0]|0)!=(e|0)?(n=i+20|0,a=f[n>>2]|0,a>>>0<(f[i+16>>2]|0)>>>0):0){f[n>>2]=a+1;t[a>>0]=e;r=e&255}else r=wy(i,e)|0;ky(i)}else l=3;do{if((l|0)==3){if((t[i+75>>0]|0)!=(e|0)?(s=i+20|0,r=f[s>>2]|0,r>>>0<(f[i+16>>2]|0)>>>0):0){f[s>>2]=r+1;t[r>>0]=e;r=e&255;break}r=wy(i,e)|0}}while(0);return r|0}function Cy(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;n=r+16|0;a=f[n>>2]|0;if(!a)if(!(Ey(r)|0)){a=f[n>>2]|0;s=4}else n=0;else s=4;e:do{if((s|0)==4){l=r+20|0;s=f[l>>2]|0;if((a-s|0)>>>0<i>>>0){n=uM[f[r+36>>2]&63](r,e,i)|0;break}i:do{if((t[r+75>>0]|0)>-1){n=i;while(1){if(!n){a=s;n=0;break i}a=n+-1|0;if((t[e+a>>0]|0)==10)break;else n=a}if((uM[f[r+36>>2]&63](r,e,n)|0)>>>0<n>>>0)break e;i=i-n|0;e=e+n|0;a=f[l>>2]|0}else{a=s;n=0}}while(0);Am(a|0,e|0,i|0)|0;f[l>>2]=(f[l>>2]|0)+i;n=n+i|0}}while(0);return n|0}function Ry(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0;n=re(r,i)|0;if((f[t+76>>2]|0)>-1){a=(by(t)|0)==0;e=Cy(e,n,t)|0;if(!a)ky(t)}else e=Cy(e,n,t)|0;if((e|0)!=(n|0))r=(e>>>0)/(i>>>0)|0;return r|0}function Ly(e){e=e|0;var i=0,r=0,t=0;if((f[e+76>>2]|0)>=0?(by(e)|0)!=0:0){i=e+4|0;r=f[i>>2]|0;if(r>>>0<(f[e+8>>2]|0)>>>0){f[i>>2]=r+1;i=a[r>>0]|0}else i=Ay(e)|0}else t=3;do{if((t|0)==3){i=e+4|0;r=f[i>>2]|0;if(r>>>0<(f[e+8>>2]|0)>>>0){f[i>>2]=r+1;i=a[r>>0]|0;break}else{i=Ay(e)|0;break}}}while(0);return i|0}function xy(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var n=0,a=0;n=c;c=c+16|0;a=n;f[a>>2]=t;t=Ny(e,i,r,a)|0;c=n;return t|0}function Py(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0;t=c;c=c+16|0;n=t;f[n>>2]=r;r=Fy(e,i,n)|0;c=t;return r|0}function Oy(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0;do{if((e|0)!=-1){if((f[i+76>>2]|0)>-1)a=by(i)|0;else a=0;if(!((f[i+8>>2]|0)==0?(My(i)|0)!=0:0))s=6;if((s|0)==6?(r=i+4|0,n=f[r>>2]|0,n>>>0>((f[i+44>>2]|0)+-8|0)>>>0):0){s=n+-1|0;f[r>>2]=s;t[s>>0]=e;f[i>>2]=f[i>>2]&-17;if(!a)break;ky(i);break}if(a){ky(i);e=-1}else e=-1}else e=-1}while(0);return e|0}function By(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0,l=0;l=c;c=c+16|0;t=l;n=Lc(240)|0;do{if(n){f[t>>2]=f[r>>2];t=Ny(n,240,i,t)|0;if(t>>>0<240){i=Oc(n,t+1|0)|0;f[e>>2]=(i|0)!=0?i:n;break}xc(n);if((t|0)>=0?(s=t+1|0,a=Lc(s)|0,f[e>>2]=a,(a|0)!=0):0)t=Ny(a,s,i,r)|0;else t=-1}else t=-1}while(0);c=l;return t|0}function Iy(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,k=0,w=0,_=0,m=0;m=c;c=c+224|0;b=m+80|0;_=m+96|0;w=m;k=m+136|0;n=_;a=n+40|0;do{f[n>>2]=0;n=n+4|0}while((n|0)<(a|0));f[b>>2]=f[r>>2];if((yc(0,i,b,w,_)|0)<0)r=-1;else{if((f[e+76>>2]|0)>-1)h=by(e)|0;else h=0;r=f[e>>2]|0;d=r&32;if((t[e+74>>0]|0)<1)f[e>>2]=r&-33;r=e+48|0;if(!(f[r>>2]|0)){a=e+44|0;s=f[a>>2]|0;f[a>>2]=k;l=e+28|0;f[l>>2]=k;o=e+20|0;f[o>>2]=k;f[r>>2]=80;u=e+16|0;f[u>>2]=k+80;n=yc(e,i,b,w,_)|0;if(s){uM[f[e+36>>2]&63](e,0,0)|0;n=(f[o>>2]|0)==0?-1:n;f[a>>2]=s;f[r>>2]=0;f[u>>2]=0;f[l>>2]=0;f[o>>2]=0}}else n=yc(e,i,b,w,_)|0;r=f[e>>2]|0;f[e>>2]=r|d;if(h)ky(e);r=(r&32|0)==0?n:-1}c=m;return r|0}function Dy(e,i,r){e=e|0;i=i|0;r=r|0;var s=0,l=0,h=0,d=0,b=0,k=0.0,w=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,O=0,B=0,I=0,D=0,N=0,F=0,U=0,j=0,H=0,z=0;H=c;c=c+304|0;O=H+16|0;I=H+8|0;B=H+33|0;D=H;E=H+32|0;if((f[e+76>>2]|0)>-1)j=by(e)|0;else j=0;s=t[i>>0]|0;e:do{if(s<<24>>24){N=e+4|0;F=e+100|0;x=e+108|0;A=e+8|0;S=B+10|0;T=B+33|0;C=I+4|0;R=B+46|0;L=B+94|0;h=s;s=0;d=i;m=0;l=0;i=0;i:while(1){r:do{if(!(Og(h&255)|0)){h=(t[d>>0]|0)==37;t:do{if(h){w=d+1|0;b=t[w>>0]|0;n:do{switch(b<<24>>24){case 37:break t;case 42:{M=0;b=d+2|0;break}default:{b=(b&255)+-48|0;if(b>>>0<10?(t[d+2>>0]|0)==36:0){f[O>>2]=f[r>>2];while(1){M=(f[O>>2]|0)+(4-1)&~(4-1);h=f[M>>2]|0;f[O>>2]=M+4;if(b>>>0>1)b=b+-1|0;else break}M=h;b=d+3|0;break n}b=(f[r>>2]|0)+(4-1)&~(4-1);M=f[b>>2]|0;f[r>>2]=b+4;b=w}}}while(0);h=t[b>>0]|0;d=h&255;if((d+-48|0)>>>0<10){h=0;while(1){w=(h*10|0)+-48+d|0;b=b+1|0;h=t[b>>0]|0;d=h&255;if((d+-48|0)>>>0>=10)break;else h=w}}else w=0;if(h<<24>>24==109){b=b+1|0;_=t[b>>0]|0;h=(M|0)!=0&1;l=0;i=0}else{_=h;h=0}d=b+1|0;switch(_&255|0){case 104:{y=(t[d>>0]|0)==104;d=y?b+2|0:d;b=y?-2:-1;break}case 108:{y=(t[d>>0]|0)==108;d=y?b+2|0:d;b=y?3:1;break}case 106:{b=3;break}case 116:case 122:{b=1;break}case 76:{b=2;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{d=b;b=0;break}default:{U=152;break i}}_=a[d>>0]|0;v=(_&47|0)==3;_=v?_|32:_;v=v?1:b;switch(_|0){case 99:{y=m;g=(w|0)<1?1:w;break}case 91:{y=m;g=w;break}case 110:{if(!M){b=m;break r}switch(v|0){case-2:{t[M>>0]=m;b=m;break r}case-1:{n[M>>1]=m;b=m;break r}case 0:{f[M>>2]=m;b=m;break r}case 1:{f[M>>2]=m;b=m;break r}case 3:{b=M;f[b>>2]=m;f[b+4>>2]=((m|0)<0)<<31>>31;b=m;break r}default:{b=m;break r}}}default:{Ug(e,0);do{b=f[N>>2]|0;if(b>>>0<(f[F>>2]|0)>>>0){f[N>>2]=b+1;b=a[b>>0]|0}else b=jg(e)|0}while((Og(b)|0)!=0);b=f[N>>2]|0;if(f[F>>2]|0){b=b+-1|0;f[N>>2]=b}y=(f[x>>2]|0)+m+b-(f[A>>2]|0)|0;g=w}}Ug(e,g);b=f[N>>2]|0;w=f[F>>2]|0;if(b>>>0<w>>>0)f[N>>2]=b+1;else{if((jg(e)|0)<0){U=152;break i}w=f[F>>2]|0}if(w)f[N>>2]=(f[N>>2]|0)+-1;n:do{switch(_|0){case 91:case 99:case 115:{p=(_|0)==99;f:do{if((_&239|0)==99){ym(B|0,-1,257)|0;t[B>>0]=0;if((_|0)==115){t[T>>0]=0;t[S>>0]=0;t[S+1>>0]=0;t[S+2>>0]=0;t[S+3>>0]=0;t[S+4>>0]=0}}else{z=d+1|0;m=(t[z>>0]|0)==94;b=m&1;_=m?z:d;d=m?d+2|0:z;ym(B|0,m&1|0,257)|0;t[B>>0]=0;switch(t[d>>0]|0){case 45:{m=(b^1)&255;t[R>>0]=m;d=_+2|0;break}case 93:{m=(b^1)&255;t[L>>0]=m;d=_+2|0;break}default:m=(b^1)&255}while(1){b=t[d>>0]|0;a:do{switch(b<<24>>24){case 0:{U=152;break i}case 93:break f;case 45:{_=d+1|0;b=t[_>>0]|0;switch(b<<24>>24){case 93:case 0:{b=45;break a}default:{}}d=t[d+-1>>0]|0;if((d&255)<(b&255)){d=d&255;do{d=d+1|0;t[B+d>>0]=m;b=t[_>>0]|0}while((d|0)<(b&255|0));d=_}else d=_;break}default:{}}}while(0);t[B+((b&255)+1)>>0]=m;d=d+1|0}}}while(0);_=p?g+1|0:31;m=(v|0)==1;v=(h|0)!=0;f:do{if(m){if(v){i=Lc(_<<2)|0;if(!i){l=0;U=152;break i}}else i=M;f[I>>2]=0;f[C>>2]=0;l=0;a:while(1){w=(i|0)==0;do{s:while(1){b=f[N>>2]|0;if(b>>>0<(f[F>>2]|0)>>>0){f[N>>2]=b+1;b=a[b>>0]|0}else b=jg(e)|0;if(!(t[B+(b+1)>>0]|0))break a;t[E>>0]=b;switch(fy(D,E,1,I)|0){case-1:{l=0;U=152;break i}case-2:break;default:break s}}if(!w){f[i+(l<<2)>>2]=f[D>>2];l=l+1|0}}while(!(v&(l|0)==(_|0)));l=_<<1|1;b=Oc(i,l<<2)|0;if(!b){l=0;U=152;break i}z=_;_=l;i=b;l=z}if(!(ay(I)|0)){l=0;U=152;break i}else{w=l;l=0}}else{if(v){l=Lc(_)|0;if(!l){l=0;i=0;U=152;break i}else b=0;while(1){do{i=f[N>>2]|0;if(i>>>0<(f[F>>2]|0)>>>0){f[N>>2]=i+1;i=a[i>>0]|0}else i=jg(e)|0;if(!(t[B+(i+1)>>0]|0)){w=b;i=0;break f}t[l+b>>0]=i;b=b+1|0}while((b|0)!=(_|0));i=_<<1|1;b=Oc(l,i)|0;if(!b){i=0;U=152;break i}else{z=_;_=i;l=b;b=z}}}if(!M){l=w;while(1){i=f[N>>2]|0;if(i>>>0<l>>>0){f[N>>2]=i+1;i=a[i>>0]|0}else i=jg(e)|0;if(!(t[B+(i+1)>>0]|0)){w=0;l=0;i=0;break f}l=f[F>>2]|0}}else{l=0;while(1){i=f[N>>2]|0;if(i>>>0<w>>>0){f[N>>2]=i+1;i=a[i>>0]|0}else i=jg(e)|0;if(!(t[B+(i+1)>>0]|0)){w=l;l=M;i=0;break f}t[M+l>>0]=i;w=f[F>>2]|0;l=l+1|0}}}}while(0);b=f[N>>2]|0;if(f[F>>2]|0){b=b+-1|0;f[N>>2]=b}b=b-(f[A>>2]|0)+(f[x>>2]|0)|0;if(!b)break i;if(!((b|0)==(g|0)|p^1))break i;do{if(v)if(m){f[M>>2]=i;break}else{f[M>>2]=l;break}}while(0);if(!p){if(i)f[i+(w<<2)>>2]=0;if(!l){l=0;break n}t[l+w>>0]=0}break}case 120:case 88:case 112:{b=16;U=134;break}case 111:{b=8;U=134;break}case 117:case 100:{b=10;U=134;break}case 105:{b=0;U=134;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{k=+Ng(e,v,0);if((f[x>>2]|0)==((f[A>>2]|0)-(f[N>>2]|0)|0))break i;if(M)switch(v|0){case 0:{o[M>>2]=k;break n}case 1:{u[M>>3]=k;break n}case 2:{u[M>>3]=k;break n}default:break n}break}default:{}}}while(0);n:do{if((U|0)==134){U=0;b=Fg(e,b,0,-1,-1)|0;if((f[x>>2]|0)==((f[A>>2]|0)-(f[N>>2]|0)|0))break i;if((M|0)!=0&(_|0)==112){f[M>>2]=b;break}if(M)switch(v|0){case-2:{t[M>>0]=b;break n}case-1:{n[M>>1]=b;break n}case 0:{f[M>>2]=b;break n}case 1:{f[M>>2]=b;break n}case 3:{z=M;f[z>>2]=b;f[z+4>>2]=P;break n}default:break n}}}while(0);s=((M|0)!=0&1)+s|0;b=(f[x>>2]|0)+y+(f[N>>2]|0)-(f[A>>2]|0)|0;break r}}while(0);d=d+(h&1)|0;Ug(e,0);h=f[N>>2]|0;if(h>>>0<(f[F>>2]|0)>>>0){f[N>>2]=h+1;h=a[h>>0]|0}else h=jg(e)|0;if((h|0)!=(a[d>>0]|0)){U=21;break i}b=m+1|0}else{while(1){h=d+1|0;if(!(Og(a[h>>0]|0)|0))break;else d=h}Ug(e,0);do{h=f[N>>2]|0;if(h>>>0<(f[F>>2]|0)>>>0){f[N>>2]=h+1;h=a[h>>0]|0}else h=jg(e)|0}while((Og(h)|0)!=0);h=f[N>>2]|0;if(f[F>>2]|0){h=h+-1|0;f[N>>2]=h}b=(f[x>>2]|0)+m+h-(f[A>>2]|0)|0}}while(0);d=d+1|0;h=t[d>>0]|0;if(!(h<<24>>24))break e;else m=b}if((U|0)==21){if(f[F>>2]|0)f[N>>2]=(f[N>>2]|0)+-1;if((s|0)!=0|(h|0)>-1)break;else{s=0;U=153}}else if((U|0)==152)if(!s){s=h;U=153}if((U|0)==153){h=s;s=-1}if(h){xc(l);xc(i)}}else s=0}while(0);if(j)ky(e);c=H;return s|0}function Ny(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+128|0;a=d+112|0;h=d;s=h;l=37352;o=s+112|0;do{f[s>>2]=f[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));if((i+-1|0)>>>0>2147483646)if(!i){i=1;u=4}else{f[(Ig()|0)>>2]=75;i=-1}else{a=e;u=4}if((u|0)==4){u=-2-a|0;u=i>>>0>u>>>0?u:i;f[h+48>>2]=u;e=h+20|0;f[e>>2]=a;f[h+44>>2]=a;i=a+u|0;a=h+16|0;f[a>>2]=i;f[h+28>>2]=i;i=Iy(h,r,n)|0;if(u){r=f[e>>2]|0;t[r+(((r|0)==(f[a>>2]|0))<<31>>31)>>0]=0}}c=d;return i|0}function Fy(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,n=0,a=0,s=0;a=c;c=c+112|0;t=a;n=t;s=n+112|0;do{f[n>>2]=0;n=n+4|0}while((n|0)<(s|0));f[t+32>>2]=29;f[t+44>>2]=e;f[t+76>>2]=-1;f[t+84>>2]=e;s=Dy(t,i,r)|0;c=a;return s|0}function Uy(e,i,r){e=e|0;i=i|0;r=r|0;return+ +Ec(e,i,2)}function jy(e,i,r){e=e|0;i=i|0;r=r|0;e=Ac(e,i,r,-1,-1)|0;return e|0}function Hy(e,i,r){e=e|0;i=i|0;r=r|0;e=Ac(e,i,r,0,-2147483648)|0;return e|0}function zy(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;s=i&255;n=(r|0)!=0;e:do{if(n&(e&3|0)!=0){a=i&255;while(1){if((t[e>>0]|0)==a<<24>>24){l=6;break e}e=e+1|0;r=r+-1|0;n=(r|0)!=0;if(!(n&(e&3|0)!=0)){l=5;break}}}else l=5}while(0);if((l|0)==5)if(n)l=6;else r=0;e:do{if((l|0)==6){a=i&255;if((t[e>>0]|0)!=a<<24>>24){n=re(s,16843009)|0;i:do{if(r>>>0>3)while(1){s=f[e>>2]^n;if((s&-2139062144^-2139062144)&s+-16843009)break;e=e+4|0;r=r+-4|0;if(r>>>0<=3){l=11;break i}}else l=11}while(0);if((l|0)==11)if(!r){r=0;break}while(1){if((t[e>>0]|0)==a<<24>>24)break e;e=e+1|0;r=r+-1|0;if(!r){r=0;break}}}}}while(0);return((r|0)!=0?e:0)|0}function Yy(e,i){e=e|0;i=i|0;var r=0,n=0;r=i;e:do{if(!((r^e)&3)){if(r&3)do{r=t[i>>0]|0;t[e>>0]=r;if(!(r<<24>>24))break e;i=i+1|0;e=e+1|0}while((i&3|0)!=0);r=f[i>>2]|0;if(!((r&-2139062144^-2139062144)&r+-16843009)){n=e;while(1){i=i+4|0;e=n+4|0;f[n>>2]=r;r=f[i>>2]|0;if((r&-2139062144^-2139062144)&r+-16843009)break;else n=e}}n=8}else n=8}while(0);if((n|0)==8){n=t[i>>0]|0;t[e>>0]=n;if(n<<24>>24)do{i=i+1|0;e=e+1|0;n=t[i>>0]|0;t[e>>0]=n}while(n<<24>>24!=0)}return e|0}function qy(e,i){e=e|0;i=i|0;var r=0,n=0;n=t[e>>0]|0;r=t[i>>0]|0;if(n<<24>>24==0?1:n<<24>>24!=r<<24>>24)i=n;else{do{e=e+1|0;i=i+1|0;n=t[e>>0]|0;r=t[i>>0]|0}while(!(n<<24>>24==0?1:n<<24>>24!=r<<24>>24));i=n}return(i&255)-(r&255)|0}function Xy(e,i){e=e|0;i=i|0;Yy(e,i)|0;return e|0}function Vy(e){e=e|0;var i=0,r=0,n=0;n=e;e:do{if(!(n&3))r=4;else{i=e;e=n;while(1){if(!(t[i>>0]|0))break e;i=i+1|0;e=i;if(!(e&3)){e=i;r=4;break}}}}while(0);if((r|0)==4){while(1){i=f[e>>2]|0;if(!((i&-2139062144^-2139062144)&i+-16843009))e=e+4|0;else break}if((i&255)<<24>>24)do{e=e+1|0}while((t[e>>0]|0)!=0)}return e-n|0}function Gy(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0;if(!r)i=0;else{n=t[e>>0]|0;e:do{if(!(n<<24>>24))n=0;else while(1){r=r+-1|0;f=t[i>>0]|0;if(!(n<<24>>24==f<<24>>24&((r|0)!=0&f<<24>>24!=0)))break e;e=e+1|0;i=i+1|0;n=t[e>>0]|0;if(!(n<<24>>24)){n=0;break}}}while(0);i=(n&255)-(a[i>>0]|0)|0}return i|0}function Ky(e){e=e|0;var i=0;i=e;while(1)if(!(f[i>>2]|0))break;else i=i+4|0;return i-e>>2|0}function Wy(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;if(r){t=e;while(1){r=r+-1|0;f[t>>2]=f[i>>2];if(!r)break;else{i=i+4|0;t=t+4|0}}}return e|0}function Zy(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;t=(r|0)==0;if(e-i>>2>>>0<r>>>0){if(!t)do{r=r+-1|0;f[e+(r<<2)>>2]=f[i+(r<<2)>>2]}while((r|0)!=0)}else if(!t){t=i;i=e;while(1){r=r+-1|0;f[i>>2]=f[t>>2];if(!r)break;else{t=t+4|0;i=i+4|0}}}return e|0}function Jy(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;if(r){t=e;while(1){r=r+-1|0;f[t>>2]=i;if(!r)break;else t=t+4|0}}return e|0}function Qy(e,i){e=e|0;i=i|0;var r=0,t=0,n=0,s=0,l=0,o=0;l=e+4|0;r=f[l>>2]|0;o=e+100|0;if(r>>>0<(f[o>>2]|0)>>>0){f[l>>2]=r+1;r=a[r>>0]|0}else r=jg(e)|0;switch(r|0){case 43:case 45:{t=(r|0)==45&1;r=f[l>>2]|0;if(r>>>0<(f[o>>2]|0)>>>0){f[l>>2]=r+1;r=a[r>>0]|0}else r=jg(e)|0;if((i|0)!=0&(r+-48|0)>>>0>9?(f[o>>2]|0)!=0:0){f[l>>2]=(f[l>>2]|0)+-1;s=t}else s=t;break}default:s=0}if((r+-48|0)>>>0>9)if(!(f[o>>2]|0)){t=-2147483648;r=0}else{f[l>>2]=(f[l>>2]|0)+-1;t=-2147483648;r=0}else{t=0;do{t=r+-48+(t*10|0)|0;r=f[l>>2]|0;if(r>>>0<(f[o>>2]|0)>>>0){f[l>>2]=r+1;r=a[r>>0]|0}else r=jg(e)|0}while((r+-48|0)>>>0<10&(t|0)<214748364);i=((t|0)<0)<<31>>31;if((r+-48|0)>>>0<10){do{i=Om(t|0,i|0,10,0)|0;t=P;r=Mm(r|0,((r|0)<0)<<31>>31|0,-48,-1)|0;t=Mm(r|0,P|0,i|0,t|0)|0;i=P;r=f[l>>2]|0;if(r>>>0<(f[o>>2]|0)>>>0){f[l>>2]=r+1;r=a[r>>0]|0}else r=jg(e)|0}while((r+-48|0)>>>0<10&((i|0)<21474836|(i|0)==21474836&t>>>0<2061584302));n=t}else n=t;if((r+-48|0)>>>0<10)do{r=f[l>>2]|0;if(r>>>0<(f[o>>2]|0)>>>0){f[l>>2]=r+1;r=a[r>>0]|0}else r=jg(e)|0}while((r+-48|0)>>>0<10);if(f[o>>2]|0)f[l>>2]=(f[l>>2]|0)+-1;e=(s|0)!=0;r=gm(0,0,n|0,i|0)|0;t=e?P:i;r=e?r:n}P=t;return r|0}function $y(e){e=e|0;if(!(f[e+68>>2]|0))ky(e);return}function eM(e){e=e|0;if(!(f[e+68>>2]|0))ky(e);return}function iM(e){e=e|0;var i=0,r=0,t=0,n=0,a=0,s=0;i=e+20|0;a=e+28|0;if((f[i>>2]|0)>>>0>(f[a>>2]|0)>>>0?(uM[f[e+36>>2]&63](e,0,0)|0,(f[i>>2]|0)==0):0)i=-1;else{s=e+4|0;r=f[s>>2]|0;t=e+8|0;n=f[t>>2]|0;if(r>>>0<n>>>0)uM[f[e+40>>2]&63](e,r-n|0,1)|0;f[e+16>>2]=0;f[a>>2]=0;f[i>>2]=0;f[t>>2]=0;f[s>>2]=0;i=0}return i|0}var rM=[av,Yl,Gl,zo,Vo,Jo,$o,Nw,Kw,av,av,av,av,av,av,av];var tM=[sv,Hv,xs,vs,ss,Wa,Na,Aa,la,_g,wg,dg,sv,sv,sv,sv];var nM=[lv,tu,ou,lv];var fM=[ov,Nv,Fv,Ts,Cs,ks,ws,ts,ns,Xa,Va,Oa,Ba,ga,ya,na,fa,Xf,Vf,Of,Bf,gf,yf,of,uf,Zn,Jn,fn,an,Xt,Vt,$i,er,gt,At,yt,$d,ib,eb,rb,qr,Xr,gp,Vr,Nr,Fr,br,kr,yr,Mr,Rr,Lr,Gr,Kr,et,it,st,lt,bt,kt,Yt,qt,bn,kn,gn,yn,Cn,Rn,In,Dn,va,pa,Ch,Wv,fp,ap,yp,Mp,Fp,Up,Xp,Vp,Zp,Jp,$p,rg,eg,ig,tg,ng,Sd,qc,Zc,cd,ih,sh,Sh,Th,hd,Td,Hd,Yd,zd,qd,Gd,Wd,Kd,Zd,sb,ob,lb,ub,_b,mb,td,vb,pb,gb,Mb,Fu,Tb,Cb,Pb,Ob,Gb,Kb,dk,bk,Ck,Rk,Xs,Vs,wl,_l,jl,zl,Xl,Vl,Wl,Zl,ao,so,mo,vo,Ro,Lo,jo,Ho,Wo,Zo,iu,ru,su,lu,du,bu,mu,vu,Su,Tu,rc,tc,Dw,gc,sw,lw,ow,uw,yb,Nu,ju,hc,Hk,Wk,tw,nw,Ep,dp,Pp,Qi,dd,Vd,Pt,ca,Tg,$y,eM,Nc,Xg,Yo,Xo,Uu,V_,$_,em,im,rm,tm,nm,Oh,Gh,xc,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov];var aM=[uv,jv,Ls,ms,as,Ka,Da,Ea,sa,Gf,If,Mf,cf,Qn,sn,Gt,ir,bd,sp,up,Xc,Wc,rh,ah,Rd,$l,eo,io,ro,no,fo,uo,co,ho,bo,wo,_o,yo,Mo,Eo,Ao,To,Co,Oo,Bo,Io,Do,Fo,Uo,_u,yu,kw,_w,vw,ww,mw,pw,qi,Ap,cp,hp,bp,ld,lr,ur,tb,rd,Hh,xt,Jt,Yn,tf,kf,Tf,Uf,Jf,ua,Ta,Ua,Ja,os,gs,Os,Yv,tp,Lp,_h,kh,ad,cb,wh,Uh,Jh,Zh,b_,k_,w_,__,m_,v_,pc,p_,g_,y_,M_,E_,A_,S_,T_,C_,R_,L_,x_,P_,O_,B_,I_,D_,N_,F_,U_,j_,H_,z_,q_,um,uv,uv];var sM=[cv,Bb,Ib,Db,Nb,Fb,Ub,jb,Hb,zb,Yb,qb,Wb,Zb,Jb,Qb,$b,ek,ik,rk,tk,nk,fk,pk,yk,Ok,Us,Ks,Ws,Zs,Qs,el,vl,pl,gl,Ml,Al,au,hu,Dr,a_,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv];var lM=[hv,md,vd,Hr,yd,Zv,jp,Gp,Qp,_y,Vc,Bd,Dd,Nd,Od,Jc,Qc,th,gd,lh,oh,db,Gs,yw,Ew,Sw,Pw,Bw,Cw,Lw,ml,Mw,Aw,Tw,Ow,Iw,Rw,xw,Jl,Ql,to,lo,oo,ko,po,go,So,xo,Po,No,Nk,Fk,jk,cw,dw,hw,bw,wc,_c,vc,Xk,Vk,Kk,$k,ew,rw,$v,Bp,sd,wp,Xd,Jd,dv,bv,kv,Wg,Ky,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv];var oM=[wv,qo,Qo,wv];var uM=[_v,kd,pd,Ed,vh,ph,fg,Sc,py,vy,my,gy,Ld,Id,Gc,Ud,nh,Sb,xb,ku,pu,fc,sc,uc,Hu,Ku,Ju,ec,or,Mc,zh,Kg,c_,d_,uy,oy,ny,By,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v,_v];var cM=[mv,fu,cu,mv];var hM=[vv,Ur,pg,vg,mg,xd,wd,wu,gu,vv,vv,vv,vv,vv,vv,vv];var dM=[pv,vk,Ak,Pk,Hs,pv,pv,pv];var bM=[gv,Go,eu,nu,uu,gv,gv,gv];var kM=[yv,Uv,Rs,_s,fs,Ga,Ia,Ma,aa,Wf,Nf,Af,df,ef,on,Wt,tr,zr,Yr,Fd,Kc,$c,jd,Md,fh,uh,Ad,nc,ac,lc,Vu,Wu,Qu,Sp,Ki,Zi,fb,Du,ab,Gg,Vg,Ih,Kh,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv];var wM=[Mv,Eb,Rb,kk,wk,gk,Tk,Lk,xk,Fs,Ys,cc,Dk,Uk,ic,kc,mc,qk,Gk,Qk,iw,cy,sy,Mv,Mv,Mv,Mv,Mv,Mv,Mv,Mv,Mv];var _M=[Ev,dm,hm,cm];var mM=[Av,Xi,Op,Vb,Ru,Lu,xu,Lg,Pg,xg,Av,Av,Av,Av,Av,Av];var vM=[Sv,Kf,Df,Ef,hf,$n,ln,Kt,rr,oc,Yu,qu,Xu,$u,Qv,np,Gw,f_,ly,Yg,fy,vm,mm,_m,wm,km,bm,Sv,Sv,Sv,Sv,Sv];var pM=[Tv,mh,Jv,bb,Tp,xh,Cv,Ah,Nh,kp,yh,wb,o_,u_,h_,Xh];var gM=[Rv,Lv,Eg,xv,Ag,Pv,Mg,Rv];var yM=[Ov,rl,Tl,Bk,Ik,dc,bc,zk,Yk,Zk,Jk,Ov,Ov,Ov,Ov,Ov];var MM=[Bv,Mk,Sk,js,zs,Bv,Bv,Bv];var EM=[Iv,St,Tt,Mt,Et,jr,wr,_r,Er,Ar,xr,Pr,Wr,Zr,rt,tt,ot,ut,wt,_t,wn,_n,Mn,En,Ln,xn,Nn,Fn,sg,lg,ug,Pd,_d,Ab,Lb,Ni,Eh,nr,fr,ar,sr,cr,hr,dr,un,cn,hn,dn,Iv,Iv,Iv,Iv,Iv,Iv,Iv,Iv,Iv,Iv,Iv,Iv,Iv,Iv,Iv,Iv];return{_jpegls_encode:Rp,___cxa_can_catch:gg,_free:xc,_jpegls_decode:Cp,___cxa_is_pointer_type:yg,_i64Add:Mm,_memmove:Tm,_i64Subtract:gm,_memset:ym,_malloc:Lc,_memcpy:Am,_bitshift64Lshr:Em,_bitshift64Shl:Sm,__GLOBAL__I_000101:Fc,__GLOBAL__sub_I_jpegls_cpp:Ji,__GLOBAL__sub_I_iostream_cpp:Uc,runPostSets:pm,stackAlloc:Ti,stackSave:Ci,stackRestore:Ri,establishStackSpace:Li,setThrew:xi,setTempRet0:Bi,getTempRet0:Ii,dynCall_iiiiiiii:Nm,dynCall_viiiii:Fm,dynCall_iiiiiid:Um,dynCall_vi:jm,dynCall_vii:Hm,dynCall_iiiiiii:zm,dynCall_ii:Ym,dynCall_iiiiiiiiiiii:qm,dynCall_iiii:Xm,dynCall_viiiiiiiiiiiiiii:Vm,dynCall_viiiiii:Gm,dynCall_viiiiiii:Km,dynCall_viiiiiiiiii:Wm,dynCall_iii:Zm,dynCall_iiiiii:Jm,dynCall_diii:Qm,dynCall_i:$m,dynCall_iiiii:ev,dynCall_viii:iv,dynCall_v:rv,dynCall_iiiiiiiii:tv,dynCall_iiiiid:nv,dynCall_viiii:fv}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_jpegls_encode=Module._jpegls_encode=asm._jpegls_encode,___cxa_can_catch=Module.___cxa_can_catch=asm.___cxa_can_catch,_free=Module._free=asm._free,_jpegls_decode=Module._jpegls_decode=asm._jpegls_decode,___cxa_is_pointer_type=Module.___cxa_is_pointer_type=asm.___cxa_is_pointer_type,_i64Add=Module._i64Add=asm._i64Add,_memmove=Module._memmove=asm._memmove,_i64Subtract=Module._i64Subtract=asm._i64Subtract,_memset=Module._memset=asm._memset,_malloc=Module._malloc=asm._malloc,_memcpy=Module._memcpy=asm._memcpy,runPostSets=Module.runPostSets=asm.runPostSets,__GLOBAL__sub_I_iostream_cpp=Module.__GLOBAL__sub_I_iostream_cpp=asm.__GLOBAL__sub_I_iostream_cpp,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,__GLOBAL__sub_I_jpegls_cpp=Module.__GLOBAL__sub_I_jpegls_cpp=asm.__GLOBAL__sub_I_jpegls_cpp,__GLOBAL__I_000101=Module.__GLOBAL__I_000101=asm.__GLOBAL__I_000101,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,dynCall_iiiiiiii=Module.dynCall_iiiiiiii=asm.dynCall_iiiiiiii,dynCall_viiiii=Module.dynCall_viiiii=asm.dynCall_viiiii,dynCall_iiiiiid=Module.dynCall_iiiiiid=asm.dynCall_iiiiiid,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_iiiiiii=Module.dynCall_iiiiiii=asm.dynCall_iiiiiii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_iiiiiiiiiiii=Module.dynCall_iiiiiiiiiiii=asm.dynCall_iiiiiiiiiiii,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_viiiiiiiiiiiiiii=Module.dynCall_viiiiiiiiiiiiiii=asm.dynCall_viiiiiiiiiiiiiii,dynCall_viiiiii=Module.dynCall_viiiiii=asm.dynCall_viiiiii,dynCall_viiiiiii=Module.dynCall_viiiiiii=asm.dynCall_viiiiiii,dynCall_viiiiiiiiii=Module.dynCall_viiiiiiiiii=asm.dynCall_viiiiiiiiii,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_diii=Module.dynCall_diii=asm.dynCall_diii,dynCall_i=Module.dynCall_i=asm.dynCall_i,dynCall_iiiii=Module.dynCall_iiiii=asm.dynCall_iiiii,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_v=Module.dynCall_v=asm.dynCall_v,dynCall_iiiiiiiii=Module.dynCall_iiiiiiiii=asm.dynCall_iiiiiiiii,dynCall_iiiiid=Module.dynCall_iiiiid=asm.dynCall_iiiiid,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii,initialStackTop;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}Runtime.stackAlloc=asm.stackAlloc,Runtime.stackSave=asm.stackSave,Runtime.stackRestore=asm.stackRestore,Runtime.establishStackSpace=asm.establishStackSpace,Runtime.setTempRet0=asm.setTempRet0,Runtime.getTempRet0=asm.getTempRet0,ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var preloadStartTime=null,calledMain=!1;function run(e){function i(){Module.calledRun||(Module.calledRun=!0,ABORT||(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}e=e||Module.arguments,null===preloadStartTime&&(preloadStartTime=Date.now()),runDependencies>0||(preRun(),runDependencies>0||Module.calledRun||(Module.setStatus?(Module.setStatus("Running..."),setTimeout((function(){setTimeout((function(){Module.setStatus("")}),1),i()}),1)):i()))}function exit(e,i){if(!i||!Module.noExitRuntime)throw Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE?(process.stdout.once("drain",(function(){process.exit(e)})),console.log(" "),setTimeout((function(){process.exit(e)}),500)):ENVIRONMENT_IS_SHELL&&"function"==typeof quit&&quit(e),new ExitStatus(e)}dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function(e){assert(0==runDependencies,"cannot call main when async dependencies remain! (listen on __ATMAIN__)"),assert(0==__ATPRERUN__.length,"cannot call main when preRun functions remain to be called"),e=e||[],ensureInitRuntime();var i=e.length+1;function r(){for(var e=0;e<3;e++)t.push(0)}var t=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];r();for(var n=0;n<i-1;n+=1)t.push(allocate(intArrayFromString(e[n]),"i8",ALLOC_NORMAL)),r();t.push(0),t=allocate(t,"i32",ALLOC_NORMAL);try{exit(Module._main(i,t,0),!0)}catch(e){if(e instanceof ExitStatus)return;if("SimulateInfiniteLoop"==e)return void(Module.noExitRuntime=!0);throw e&&"object"==typeof e&&e.stack&&Module.printErr("exception thrown: "+[e,e.stack]),e}finally{calledMain=!0}},Module.run=Module.run=run,Module.exit=Module.exit=exit;var abortDecorators=[];function abort(e){void 0!==e?(Module.print(e),Module.printErr(e),e=JSON.stringify(e)):e="",ABORT=!0,EXITSTATUS=1;var i="abort("+e+") at "+stackTrace()+"\\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";throw abortDecorators&&abortDecorators.forEach((function(r){i=r(i,e)})),i}if(Module.abort=Module.abort=abort,Module.preInit)for("function"==typeof Module.preInit&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;return Module.noInitialRun&&(shouldRunNow=!1),run(),Module};module.exports=CharLS},function(e,i){var r={Unkown:0,Grayscale:1,AdobeRGB:2,RGB:3,CYMK:4},t=function(){"use strict";var e=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),i=4017,t=799,n=3406,f=2276,a=1567,s=3784,l=5793,o=2896;function u(){}function c(e,i){for(var r,t,n=0,f=[],a=16;a>0&&!e[a-1];)a--;f.push({children:[],index:0});var s,l=f[0];for(r=0;r<a;r++){for(t=0;t<e[r];t++){for((l=f.pop()).children[l.index]=i[n];l.index>0;)l=f.pop();for(l.index++,f.push(l);f.length<=r;)f.push(s={children:[],index:0}),l.children[l.index]=s.children,l=s;n++}r+1<a&&(f.push(s={children:[],index:0}),l.children[l.index]=s.children,l=s)}return f[0].children}function h(e,i,r){return 64*((e.blocksPerLine+1)*i+r)}function d(i,r,t,n,f,a,s,l,o){t.precision,t.samplesPerLine,t.scanLines;var u=t.mcusPerLine,c=t.progressive,d=(t.maxH,t.maxV,r),b=0,k=0;function w(){if(k>0)return b>>--k&1;if(255==(b=i[r++])){var e=i[r++];if(e)throw"unexpected marker: "+(b<<8|e).toString(16)}return k=7,b>>>7}function _(e){for(var i,r=e;null!==(i=w());){if("number"==typeof(r=r[i]))return r;if("object"!=typeof r)throw"invalid huffman sequence"}return null}function m(e){for(var i=0;e>0;){var r=w();if(null===r)return;i=i<<1|r,e--}return i}function v(e){var i=m(e);return i>=1<<e-1?i:i+(-1<<e)+1}var p=0;var g,y=0;function M(e,i,r,t,n){var f=r%u;i(e,h(e,(r/u|0)*e.v+t,f*e.h+n))}function E(e,i,r){i(e,h(e,r/e.blocksPerLine|0,r%e.blocksPerLine))}var A,S,T,C,R,L,x=n.length;L=c?0===a?0===l?function(e,i){var r=_(e.huffmanTableDC),t=0===r?0:v(r)<<o;e.blockData[i]=e.pred+=t}:function(e,i){e.blockData[i]|=w()<<o}:0===l?function(i,r){if(p>0)p--;else for(var t=a,n=s;t<=n;){var f=_(i.huffmanTableAC),l=15&f,u=f>>4;if(0!==l){var c=e[t+=u];i.blockData[r+c]=v(l)*(1<<o),t++}else{if(u<15){p=m(u)+(1<<u)-1;break}t+=16}}}:function(i,r){for(var t=a,n=s,f=0;t<=n;){var l=e[t];switch(y){case 0:var u=_(i.huffmanTableAC),c=15&u;if(f=u>>4,0===c)f<15?(p=m(f)+(1<<f),y=4):(f=16,y=1);else{if(1!==c)throw"invalid ACn encoding";g=v(c),y=f?2:3}continue;case 1:case 2:i.blockData[r+l]?i.blockData[r+l]+=w()<<o:0===--f&&(y=2==y?3:0);break;case 3:i.blockData[r+l]?i.blockData[r+l]+=w()<<o:(i.blockData[r+l]=g<<o,y=0);break;case 4:i.blockData[r+l]&&(i.blockData[r+l]+=w()<<o)}t++}4===y&&0===--p&&(y=0)}:function(i,r){var t=_(i.huffmanTableDC),n=0===t?0:v(t);i.blockData[r]=i.pred+=n;for(var f=1;f<64;){var a=_(i.huffmanTableAC),s=15&a,l=a>>4;if(0!==s){var o=e[f+=l];i.blockData[r+o]=v(s),f++}else{if(l<15)break;f+=16}}};var P,O,B,I,D=0;for(O=1==x?n[0].blocksPerLine*n[0].blocksPerColumn:u*t.mcusPerColumn,f||(f=O);D<O;){for(S=0;S<x;S++)n[S].pred=0;if(p=0,1==x)for(A=n[0],R=0;R<f;R++)E(A,L,D),D++;else for(R=0;R<f;R++){for(S=0;S<x;S++)for(B=(A=n[S]).h,I=A.v,T=0;T<I;T++)for(C=0;C<B;C++)M(A,L,D,T,C);D++}if(k=0,(P=i[r]<<8|i[r+1])<=65280)throw"marker was not found";if(!(P>=65488&&P<=65495))break;r+=2}return r-d}function b(e,r,u){var c,h,d,b,k,w,_,m,v,p,g=e.quantizationTable;for(p=0;p<64;p++)u[p]=e.blockData[r+p]*g[p];for(p=0;p<8;++p){var y=8*p;0!==u[1+y]||0!==u[2+y]||0!==u[3+y]||0!==u[4+y]||0!==u[5+y]||0!==u[6+y]||0!==u[7+y]?(c=l*u[0+y]+128>>8,h=l*u[4+y]+128>>8,d=u[2+y],b=u[6+y],k=o*(u[1+y]-u[7+y])+128>>8,m=o*(u[1+y]+u[7+y])+128>>8,w=u[3+y]<<4,_=u[5+y]<<4,v=c-h+1>>1,c=c+h+1>>1,h=v,v=d*s+b*a+128>>8,d=d*a-b*s+128>>8,b=v,v=k-_+1>>1,k=k+_+1>>1,_=v,v=m+w+1>>1,w=m-w+1>>1,m=v,v=c-b+1>>1,c=c+b+1>>1,b=v,v=h-d+1>>1,h=h+d+1>>1,d=v,v=k*f+m*n+2048>>12,k=k*n-m*f+2048>>12,m=v,v=w*t+_*i+2048>>12,w=w*i-_*t+2048>>12,_=v,u[0+y]=c+m,u[7+y]=c-m,u[1+y]=h+_,u[6+y]=h-_,u[2+y]=d+w,u[5+y]=d-w,u[3+y]=b+k,u[4+y]=b-k):(v=l*u[0+y]+512>>10,u[0+y]=v,u[1+y]=v,u[2+y]=v,u[3+y]=v,u[4+y]=v,u[5+y]=v,u[6+y]=v,u[7+y]=v)}for(p=0;p<8;++p){var M=p;0!==u[8+M]||0!==u[16+M]||0!==u[24+M]||0!==u[32+M]||0!==u[40+M]||0!==u[48+M]||0!==u[56+M]?(c=l*u[0+M]+2048>>12,h=l*u[32+M]+2048>>12,d=u[16+M],b=u[48+M],k=o*(u[8+M]-u[56+M])+2048>>12,m=o*(u[8+M]+u[56+M])+2048>>12,w=u[24+M],_=u[40+M],v=c-h+1>>1,c=c+h+1>>1,h=v,v=d*s+b*a+2048>>12,d=d*a-b*s+2048>>12,b=v,v=k-_+1>>1,k=k+_+1>>1,_=v,v=m+w+1>>1,w=m-w+1>>1,m=v,v=c-b+1>>1,c=c+b+1>>1,b=v,v=h-d+1>>1,h=h+d+1>>1,d=v,v=k*f+m*n+2048>>12,k=k*n-m*f+2048>>12,m=v,v=w*t+_*i+2048>>12,w=w*i-_*t+2048>>12,_=v,u[0+M]=c+m,u[56+M]=c-m,u[8+M]=h+_,u[48+M]=h-_,u[16+M]=d+w,u[40+M]=d-w,u[24+M]=b+k,u[32+M]=b-k):(v=l*u[p+0]+8192>>14,u[0+M]=v,u[8+M]=v,u[16+M]=v,u[24+M]=v,u[32+M]=v,u[40+M]=v,u[48+M]=v,u[56+M]=v)}for(p=0;p<64;++p){var E=r+p,A=u[p];A=A<=-2056/e.bitConversion?0:A>=2024/e.bitConversion?255/e.bitConversion:A+2056/e.bitConversion>>4,e.blockData[E]=A}}function k(e,i){for(var r=i.blocksPerLine,t=i.blocksPerColumn,n=new Int32Array(64),f=0;f<t;f++)for(var a=0;a<r;a++){b(i,h(i,f,a),n)}return i.blockData}function w(e){return e<=0?0:e>=255?255:0|e}return u.prototype={load:function(e){var i=function(e){this.parse(e),this.onload&&this.onload()}.bind(this);if(e.indexOf("data:")>-1){for(var r=e.indexOf("base64,")+7,t=atob(e.substring(r)),n=new Uint8Array(t.length),f=t.length-1;f>=0;f--)n[f]=t.charCodeAt(f);i(t)}else{var a=new XMLHttpRequest;a.open("GET",e,!0),a.responseType="arraybuffer",a.onload=function(){var e=new Uint8Array(a.response);i(e)}.bind(this),a.send(null)}},parse:function(i){function t(){var e=i[l]<<8|i[l+1];return l+=2,e}function n(){var e=t(),r=i.subarray(l,l+e-2);return l+=r.length,r}function f(e){for(var i=Math.ceil(e.samplesPerLine/8/e.maxH),r=Math.ceil(e.scanLines/8/e.maxV),t=0;t<e.components.length;t++){X=e.components[t];var n=Math.ceil(Math.ceil(e.samplesPerLine/8)*X.h/e.maxH),f=Math.ceil(Math.ceil(e.scanLines/8)*X.v/e.maxV),a=i*X.h,s=64*(r*X.v)*(a+1);X.blockData=new Int16Array(s),X.blocksPerLine=n,X.blocksPerColumn=f}e.mcusPerLine=i,e.mcusPerColumn=r}var a,s,l=0,o=(i.length,null),u=null,h=[],b=[],w=[],_=t();if(65496!=_)throw"SOI not found";for(_=t();65497!=_;){var m,v;switch(_){case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:case 65534:var p=n();65504===_&&74===p[0]&&70===p[1]&&73===p[2]&&70===p[3]&&0===p[4]&&(o={version:{major:p[5],minor:p[6]},densityUnits:p[7],xDensity:p[8]<<8|p[9],yDensity:p[10]<<8|p[11],thumbWidth:p[12],thumbHeight:p[13],thumbData:p.subarray(14,14+3*p[12]*p[13])}),65518===_&&65===p[0]&&100===p[1]&&111===p[2]&&98===p[3]&&101===p[4]&&0===p[5]&&(u={version:p[6],flags0:p[7]<<8|p[8],flags1:p[9]<<8|p[10],transformCode:p[11]});break;case 65499:for(var g=t()+l-2;l<g;){var y=i[l++],M=new Int32Array(64);if(y>>4==0)for(m=0;m<64;m++){M[e[m]]=i[l++]}else{if(y>>4!=1)throw"DQT: invalid table spec";for(m=0;m<64;m++){M[e[m]]=t()}}h[15&y]=M}break;case 65472:case 65473:case 65474:if(a)throw"Only single frame JPEGs supported";t(),(a={}).extended=65473===_,a.progressive=65474===_,a.precision=i[l++],a.scanLines=t(),a.samplesPerLine=t(),a.components=[],a.componentIds={};var E,A=i[l++],S=0,T=0;for(q=0;q<A;q++){E=i[l];var C=i[l+1]>>4,R=15&i[l+1];S<C&&(S=C),T<R&&(T=R);var L=i[l+2];v=a.components.push({h:C,v:R,quantizationTable:h[L],quantizationTableId:L,bitConversion:255/((1<<a.precision)-1)}),a.componentIds[E]=v-1,l+=3}a.maxH=S,a.maxV=T,f(a);break;case 65476:var x=t();for(q=2;q<x;){var P=i[l++],O=new Uint8Array(16),B=0;for(m=0;m<16;m++,l++)B+=O[m]=i[l];var I=new Uint8Array(B);for(m=0;m<B;m++,l++)I[m]=i[l];q+=17+B,(P>>4==0?w:b)[15&P]=c(O,I)}break;case 65501:t(),s=t();break;case 65498:t();var D=i[l++],N=[];for(q=0;q<D;q++){var F=a.componentIds[i[l++]];X=a.components[F];var U=i[l++];X.huffmanTableDC=w[U>>4],X.huffmanTableAC=b[15&U],N.push(X)}var j=i[l++],H=i[l++],z=i[l++],Y=d(i,l,a,N,s,j,H,z>>4,15&z);l+=Y;break;case 65535:255!==i[l]&&l--;break;default:if(255==i[l-3]&&i[l-2]>=192&&i[l-2]<=254){l-=3;break}throw"unknown JPEG marker "+_.toString(16)}_=t()}switch(this.width=a.samplesPerLine,this.height=a.scanLines,this.jfif=o,this.adobe=u,this.components=[],a.components.length){case 1:this.colorspace=r.Grayscale;break;case 3:this.adobe?this.colorspace=r.AdobeRGB:this.colorspace=r.RGB;break;case 4:this.colorspace=r.CYMK;break;default:this.colorspace=r.Unknown}for(var q=0;q<a.components.length;q++){var X;(X=a.components[q]).quantizationTable||null===X.quantizationTableId||(X.quantizationTable=h[X.quantizationTableId]),this.components.push({output:k(0,X),scaleX:X.h/a.maxH,scaleY:X.v/a.maxV,blocksPerLine:X.blocksPerLine,blocksPerColumn:X.blocksPerColumn,bitConversion:X.bitConversion})}},getData16:function(e,i){if(1!==this.components.length)throw"Unsupported color mode";var r,t,n,f,a,s,l=this.width/e,o=this.height/i,u=0,c=this.components.length,d=new Uint16Array(e*i*c),b=new Uint16Array((this.components[0].blocksPerLine<<3)*this.components[0].blocksPerColumn*8);for(s=0;s<c;s++){for(var k,w,_,m=(r=this.components[s]).blocksPerLine,v=r.blocksPerColumn,p=m<<3,g=0,y=0;y<v;y++)for(var M=y<<3,E=0;E<m;E++){var A=h(r,y,E),S=(u=0,E<<3);for(k=0;k<8;k++){g=(M+k)*p;for(w=0;w<8;w++)b[g+S+w]=r.output[A+u++]}}for(t=r.scaleX*l,n=r.scaleY*o,u=s,a=0;a<i;a++)for(f=0;f<e;f++)_=(0|a*n)*p+(0|f*t),d[u]=b[_],u+=c}return d},getData:function(e,i){var r,t,n,f,a,s,l,o,u,c,d,b,k,_,m,v=this.width/e,p=this.height/i,g=0,y=this.components.length,M=e*i*y,E=new Uint8Array(M),A=new Uint8Array((this.components[0].blocksPerLine<<3)*this.components[0].blocksPerColumn*8);for(s=0;s<y;s++){for(var S,T,C,R=(r=this.components[s]).blocksPerLine,L=r.blocksPerColumn,x=R<<3,P=0,O=0;O<L;O++)for(var B=O<<3,I=0;I<R;I++){var D=h(r,O,I),N=(g=0,I<<3);for(S=0;S<8;S++){P=(B+S)*x;for(T=0;T<8;T++)A[P+N+T]=r.output[D+g++]*r.bitConversion}}for(t=r.scaleX*v,n=r.scaleY*p,g=s,a=0;a<i;a++)for(f=0;f<e;f++)C=(0|a*n)*x+(0|f*t),E[g]=A[C],g+=y}switch(y){case 1:case 2:break;case 3:if(m=!0,this.adobe&&this.adobe.transformCode?m=!0:void 0!==this.colorTransform&&(m=!!this.colorTransform),m)for(s=0;s<M;s+=y)l=E[s],o=E[s+1],b=w(l-179.456+1.402*(u=E[s+2])),k=w(l+135.459-.344*o-.714*u),_=w(l-226.816+1.772*o),E[s]=b,E[s+1]=k,E[s+2]=_;break;case 4:if(!this.adobe)throw"Unsupported color mode (4 components)";if(m=!1,this.adobe&&this.adobe.transformCode?m=!0:void 0!==this.colorTransform&&(m=!!this.colorTransform),m)for(s=0;s<M;s+=y)l=E[s],o=E[s+1],c=w(434.456-l-1.402*(u=E[s+2])),d=w(119.541-l+.344*o+.714*u),l=w(481.816-l-1.772*o),E[s]=c,E[s+1]=d,E[s+2]=l;break;default:throw"Unsupported color mode"}return E}},u}();e.exports=t},function(e,i,r){"use strict";e.exports=function(e,i,r,t){for(var n=65535&e|0,f=e>>>16&65535|0,a=0;0!==r;){r-=a=r>2e3?2e3:r;do{f=f+(n=n+i[t++]|0)|0}while(--a);n%=65521,f%=65521}return n|f<<16|0}},function(e,i,r){"use strict";var t=function(){for(var e,i=[],r=0;r<256;r++){e=r;for(var t=0;t<8;t++)e=1&e?3988292384^e>>>1:e>>>1;i[r]=e}return i}();e.exports=function(e,i,r,n){var f=t,a=n+r;e^=-1;for(var s=n;s<a;s++)e=e>>>8^f[255&(e^i[s])];return-1^e}},function(e,i,r){"use strict";var t=r(0),n=!0,f=!0;try{String.fromCharCode.apply(null,[0])}catch(e){n=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){f=!1}for(var a=new t.Buf8(256),s=0;s<256;s++)a[s]=s>=252?6:s>=248?5:s>=240?4:s>=224?3:s>=192?2:1;function l(e,i){if(i<65534&&(e.subarray&&f||!e.subarray&&n))return String.fromCharCode.apply(null,t.shrinkBuf(e,i));for(var r="",a=0;a<i;a++)r+=String.fromCharCode(e[a]);return r}a[254]=a[254]=1,i.string2buf=function(e){var i,r,n,f,a,s=e.length,l=0;for(f=0;f<s;f++)55296==(64512&(r=e.charCodeAt(f)))&&f+1<s&&56320==(64512&(n=e.charCodeAt(f+1)))&&(r=65536+(r-55296<<10)+(n-56320),f++),l+=r<128?1:r<2048?2:r<65536?3:4;for(i=new t.Buf8(l),a=0,f=0;a<l;f++)55296==(64512&(r=e.charCodeAt(f)))&&f+1<s&&56320==(64512&(n=e.charCodeAt(f+1)))&&(r=65536+(r-55296<<10)+(n-56320),f++),r<128?i[a++]=r:r<2048?(i[a++]=192|r>>>6,i[a++]=128|63&r):r<65536?(i[a++]=224|r>>>12,i[a++]=128|r>>>6&63,i[a++]=128|63&r):(i[a++]=240|r>>>18,i[a++]=128|r>>>12&63,i[a++]=128|r>>>6&63,i[a++]=128|63&r);return i},i.buf2binstring=function(e){return l(e,e.length)},i.binstring2buf=function(e){for(var i=new t.Buf8(e.length),r=0,n=i.length;r<n;r++)i[r]=e.charCodeAt(r);return i},i.buf2string=function(e,i){var r,t,n,f,s=i||e.length,o=new Array(2*s);for(t=0,r=0;r<s;)if((n=e[r++])<128)o[t++]=n;else if((f=a[n])>4)o[t++]=65533,r+=f-1;else{for(n&=2===f?31:3===f?15:7;f>1&&r<s;)n=n<<6|63&e[r++],f--;f>1?o[t++]=65533:n<65536?o[t++]=n:(n-=65536,o[t++]=55296|n>>10&1023,o[t++]=56320|1023&n)}return l(o,t)},i.utf8border=function(e,i){var r;for((i=i||e.length)>e.length&&(i=e.length),r=i-1;r>=0&&128==(192&e[r]);)r--;return r<0?i:0===r?i:r+a[e[r]]>i?r:i}},function(e,i,r){"use strict";e.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},function(e,i,r){"use strict";e.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},function(e,i){"use strict";var r={};function t(e){r.verbosity>=r.VERBOSITY_LEVELS.infos&&console.log("Info: "+e)}function n(e){r.verbosity>=r.VERBOSITY_LEVELS.warnings&&console.log("Warning: "+e)}function f(e,i,r){return Object.defineProperty(e,i,{value:r,enumerable:!0,configurable:!0,writable:!1}),r}function a(e){for(var i=1,r=0;e>i;)i<<=1,r++;return r}function s(e,i){return e[i]<<8|e[i+1]}function l(e,i){return(e[i]<<24|e[i+1]<<16|e[i+2]<<8|e[i+3])>>>0}function o(){var e={};return e.promise=new Promise((function(i,r){e.resolve=i,e.reject=r})),e}var u=function(){function e(){this.failOnCorruptedImage=!1}function i(e,i){e.x0=Math.ceil(i.XOsiz/e.XRsiz),e.x1=Math.ceil(i.Xsiz/e.XRsiz),e.y0=Math.ceil(i.YOsiz/e.YRsiz),e.y1=Math.ceil(i.Ysiz/e.YRsiz),e.width=e.x1-e.x0,e.height=e.y1-e.y0}function r(e,i){for(var r,t=e.SIZ,n=[],f=Math.ceil((t.Xsiz-t.XTOsiz)/t.XTsiz),a=Math.ceil((t.Ysiz-t.YTOsiz)/t.YTsiz),s=0;a>s;s++)for(var l=0;f>l;l++)(r={}).tx0=Math.max(t.XTOsiz+l*t.XTsiz,t.XOsiz),r.ty0=Math.max(t.YTOsiz+s*t.YTsiz,t.YOsiz),r.tx1=Math.min(t.XTOsiz+(l+1)*t.XTsiz,t.Xsiz),r.ty1=Math.min(t.YTOsiz+(s+1)*t.YTsiz,t.Ysiz),r.width=r.tx1-r.tx0,r.height=r.ty1-r.ty0,r.components=[],n.push(r);e.tiles=n;for(var o=0,u=t.Csiz;u>o;o++)for(var c=i[o],h=0,d=n.length;d>h;h++){var b={};r=n[h],b.tcx0=Math.ceil(r.tx0/c.XRsiz),b.tcy0=Math.ceil(r.ty0/c.YRsiz),b.tcx1=Math.ceil(r.tx1/c.XRsiz),b.tcy1=Math.ceil(r.ty1/c.YRsiz),b.width=b.tcx1-b.tcx0,b.height=b.tcy1-b.tcy0,r.components[o]=b}}function f(e,i,r){var t=i.codingStyleParameters,n={};return t.entropyCoderWithCustomPrecincts?(n.PPx=t.precinctsSizes[r].PPx,n.PPy=t.precinctsSizes[r].PPy):(n.PPx=15,n.PPy=15),n.xcb_=r>0?Math.min(t.xcb,n.PPx-1):Math.min(t.xcb,n.PPx),n.ycb_=r>0?Math.min(t.ycb,n.PPy-1):Math.min(t.ycb,n.PPy),n}function o(e,i,r){var t=1<<r.PPx,n=1<<r.PPy,f=0===i.resLevel,a=1<<r.PPx+(f?0:-1),s=1<<r.PPy+(f?0:-1),l=i.trx1>i.trx0?Math.ceil(i.trx1/t)-Math.floor(i.trx0/t):0,o=i.try1>i.try0?Math.ceil(i.try1/n)-Math.floor(i.try0/n):0,u=l*o;i.precinctParameters={precinctWidth:t,precinctHeight:n,numprecinctswide:l,numprecinctshigh:o,numprecincts:u,precinctWidthInSubband:a,precinctHeightInSubband:s}}function u(e,i,r){var t,n,f,a,s=r.xcb_,l=r.ycb_,o=1<<s,u=1<<l,c=i.tbx0>>s,h=i.tby0>>l,d=i.tbx1+o-1>>s,b=i.tby1+u-1>>l,k=i.resolution.precinctParameters,w=[],_=[];for(n=h;b>n;n++)for(t=c;d>t;t++){if((f={cbx:t,cby:n,tbx0:o*t,tby0:u*n,tbx1:o*(t+1),tby1:u*(n+1)}).tbx0_=Math.max(i.tbx0,f.tbx0),f.tby0_=Math.max(i.tby0,f.tby0),f.tbx1_=Math.min(i.tbx1,f.tbx1),f.tby1_=Math.min(i.tby1,f.tby1),a=Math.floor((f.tbx0_-i.tbx0)/k.precinctWidthInSubband)+Math.floor((f.tby0_-i.tby0)/k.precinctHeightInSubband)*k.numprecinctswide,f.precinctNumber=a,f.subbandType=i.type,f.Lblock=3,!(f.tbx1_<=f.tbx0_||f.tby1_<=f.tby0_)){w.push(f);var m=_[a];void 0!==m?(t<m.cbxMin?m.cbxMin=t:t>m.cbxMax&&(m.cbxMax=t),n<m.cbyMin?m.cbxMin=n:n>m.cbyMax&&(m.cbyMax=n)):_[a]=m={cbxMin:t,cbyMin:n,cbxMax:t,cbyMax:n},f.precinct=m}}i.codeblockParameters={codeblockWidth:s,codeblockHeight:l,numcodeblockwide:d-c+1,numcodeblockhigh:b-h+1},i.codeblocks=w,i.precincts=_}function h(e,i,r){for(var t=[],n=e.subbands,f=0,a=n.length;a>f;f++)for(var s=n[f].codeblocks,l=0,o=s.length;o>l;l++){var u=s[l];u.precinctNumber===i&&t.push(u)}return{layerNumber:r,codeblocks:t}}function d(e){for(var i=e.SIZ,r=e.currentTile.index,t=e.tiles[r],n=t.codingStyleDefaultParameters.layersCount,f=i.Csiz,a=0,s=0;f>s;s++)a=Math.max(a,t.components[s].codingStyleParameters.decompositionLevelsCount);var l=0,o=0,u=0,c=0;this.nextPacket=function(){for(;n>l;l++){for(;a>=o;o++){for(;f>u;u++){var e=t.components[u];if(!(o>e.codingStyleParameters.decompositionLevelsCount)){for(var i=e.resolutions[o],r=i.precinctParameters.numprecincts;r>c;){var s=h(i,c,l);return c++,s}c=0}}u=0}o=0}}}function b(e){for(var i=e.SIZ,r=e.currentTile.index,t=e.tiles[r],n=t.codingStyleDefaultParameters.layersCount,f=i.Csiz,a=0,s=0;f>s;s++)a=Math.max(a,t.components[s].codingStyleParameters.decompositionLevelsCount);var l=0,o=0,u=0,c=0;this.nextPacket=function(){for(;a>=l;l++){for(;n>o;o++){for(;f>u;u++){var e=t.components[u];if(!(l>e.codingStyleParameters.decompositionLevelsCount)){for(var i=e.resolutions[l],r=i.precinctParameters.numprecincts;r>c;){var s=h(i,c,o);return c++,s}c=0}}u=0}o=0}}}function k(e){var i,r,t,n,f=e.SIZ,a=e.currentTile.index,s=e.tiles[a],l=s.codingStyleDefaultParameters.layersCount,o=f.Csiz,u=0;for(t=0;o>t;t++){var c=s.components[t];u=Math.max(u,c.codingStyleParameters.decompositionLevelsCount)}var d=new Int32Array(u+1);for(r=0;u>=r;++r){var b=0;for(t=0;o>t;++t){var k=s.components[t].resolutions;r<k.length&&(b=Math.max(b,k[r].precinctParameters.numprecincts))}d[r]=b}i=0,r=0,t=0,n=0,this.nextPacket=function(){for(;u>=r;r++){for(;n<d[r];n++){for(;o>t;t++){var e=s.components[t];if(!(r>e.codingStyleParameters.decompositionLevelsCount)){var f=e.resolutions[r],a=f.precinctParameters.numprecincts;if(!(n>=a)){for(;l>i;){var c=h(f,n,i);return i++,c}i=0}}}t=0}n=0}}}function w(e){var i=e.SIZ,r=e.currentTile.index,t=e.tiles[r],n=t.codingStyleDefaultParameters.layersCount,f=i.Csiz,a=v(t),s=a,l=0,o=0,u=0,c=0,d=0;this.nextPacket=function(){for(;d<s.maxNumHigh;d++){for(;c<s.maxNumWide;c++){for(;f>u;u++){for(var e=t.components[u],i=e.codingStyleParameters.decompositionLevelsCount;i>=o;o++){var r=e.resolutions[o],b=a.components[u].resolutions[o],k=m(c,d,b,s,r);if(null!==k){for(;n>l;){var w=h(r,k,l);return l++,w}l=0}}o=0}u=0}c=0}}}function _(e){var i=e.SIZ,r=e.currentTile.index,t=e.tiles[r],n=t.codingStyleDefaultParameters.layersCount,f=i.Csiz,a=v(t),s=0,l=0,o=0,u=0,c=0;this.nextPacket=function(){for(;f>o;++o){for(var e=t.components[o],i=a.components[o],r=e.codingStyleParameters.decompositionLevelsCount;c<i.maxNumHigh;c++){for(;u<i.maxNumWide;u++){for(;r>=l;l++){var d=e.resolutions[l],b=i.resolutions[l],k=m(u,c,b,i,d);if(null!==k){for(;n>s;){var w=h(d,k,s);return s++,w}s=0}}l=0}u=0}c=0}}}function m(e,i,r,t,n){var f=e*t.minWidth,a=i*t.minHeight;if(f%r.width!=0||a%r.height!=0)return null;var s=a/r.width*n.precinctParameters.numprecinctswide;return f/r.height+s}function v(e){for(var i=e.components.length,r=Number.MAX_VALUE,t=Number.MAX_VALUE,n=0,f=0,a=new Array(i),s=0;i>s;s++){for(var l=e.components[s],o=l.codingStyleParameters.decompositionLevelsCount,u=new Array(o+1),c=Number.MAX_VALUE,h=Number.MAX_VALUE,d=0,b=0,k=1,w=o;w>=0;--w){var _=l.resolutions[w],m=k*_.precinctParameters.precinctWidth,v=k*_.precinctParameters.precinctHeight;c=Math.min(c,m),h=Math.min(h,v),d=Math.max(d,_.precinctParameters.numprecinctswide),b=Math.max(b,_.precinctParameters.numprecinctshigh),u[w]={width:m,height:v},k<<=1}r=Math.min(r,c),t=Math.min(t,h),n=Math.max(n,d),f=Math.max(f,b),a[s]={resolutions:u,minWidth:c,minHeight:h,maxNumWide:d,maxNumHigh:b}}return{components:a,minWidth:r,minHeight:t,maxNumWide:n,maxNumHigh:f}}function p(e){for(var i=e.SIZ,r=e.currentTile.index,t=e.tiles[r],n=i.Csiz,a=0;n>a;a++){for(var s=t.components[a],l=s.codingStyleParameters.decompositionLevelsCount,c=[],h=[],m=0;l>=m;m++){var v,p=f(0,s,m),g={},y=1<<l-m;if(g.trx0=Math.ceil(s.tcx0/y),g.try0=Math.ceil(s.tcy0/y),g.trx1=Math.ceil(s.tcx1/y),g.try1=Math.ceil(s.tcy1/y),g.resLevel=m,o(0,g,p),c.push(g),0===m)(v={}).type="LL",v.tbx0=Math.ceil(s.tcx0/y),v.tby0=Math.ceil(s.tcy0/y),v.tbx1=Math.ceil(s.tcx1/y),v.tby1=Math.ceil(s.tcy1/y),v.resolution=g,u(0,v,p),h.push(v),g.subbands=[v];else{var M=1<<l-m+1,E=[];(v={}).type="HL",v.tbx0=Math.ceil(s.tcx0/M-.5),v.tby0=Math.ceil(s.tcy0/M),v.tbx1=Math.ceil(s.tcx1/M-.5),v.tby1=Math.ceil(s.tcy1/M),v.resolution=g,u(0,v,p),h.push(v),E.push(v),(v={}).type="LH",v.tbx0=Math.ceil(s.tcx0/M),v.tby0=Math.ceil(s.tcy0/M-.5),v.tbx1=Math.ceil(s.tcx1/M),v.tby1=Math.ceil(s.tcy1/M-.5),v.resolution=g,u(0,v,p),h.push(v),E.push(v),(v={}).type="HH",v.tbx0=Math.ceil(s.tcx0/M-.5),v.tby0=Math.ceil(s.tcy0/M-.5),v.tbx1=Math.ceil(s.tcx1/M-.5),v.tby1=Math.ceil(s.tcy1/M-.5),v.resolution=g,u(0,v,p),h.push(v),E.push(v),g.subbands=E}}s.resolutions=c,s.subbands=h}var A=t.codingStyleDefaultParameters.progressionOrder;switch(A){case 0:t.packetsIterator=new d(e);break;case 1:t.packetsIterator=new b(e);break;case 2:t.packetsIterator=new k(e);break;case 3:t.packetsIterator=new w(e);break;case 4:t.packetsIterator=new _(e);break;default:throw new Error("JPX Error: Unsupported progression order "+A)}}function g(e,i,r,t){function n(e){for(;e>h;){if(r+c>=i.length)throw new Error("Unexpected EOF");var t=i[r+c];c++,d?(u=u<<7|t,h+=7,d=!1):(u=u<<8|t,h+=8),255===t&&(d=!0)}return u>>>(h-=e)&(1<<e)-1}function f(e){return 255===i[r+c-1]&&i[r+c]===e?(s(1),!0):255===i[r+c]&&i[r+c+1]===e&&(s(2),!0)}function s(e){c+=e}function l(){h=0,d&&(c++,d=!1)}function o(){if(0===n(1))return 1;if(0===n(1))return 2;var e=n(2);return 3>e?e+3:31>(e=n(5))?e+6:(e=n(7))+37}for(var u,c=0,h=0,d=!1,b=e.currentTile.index,k=e.tiles[b],w=e.COD.sopMarkerUsed,_=e.COD.ephMarkerUsed,m=k.packetsIterator;t>c;)try{l(),w&&f(145)&&s(4);var v=m.nextPacket();if(void 0===v)return;if(!n(1))continue;for(var p,g=v.layerNumber,y=[],M=0,E=v.codeblocks.length;E>M;M++){var A=(p=v.codeblocks[M]).precinct,S=p.cbx-A.cbxMin,R=p.cby-A.cbyMin,L=!1,x=!1;if(void 0!==p.included)L=!!n(1);else{var P,O;if(void 0!==(A=p.precinct).inclusionTree)P=A.inclusionTree;else{var B=A.cbxMax-A.cbxMin+1,I=A.cbyMax-A.cbyMin+1;P=new C(B,I),O=new T(B,I),A.inclusionTree=P,A.zeroBitPlanesTree=O}for(P.reset(S,R,g);;){if(c>=i.length)return;if(P.isAboveThreshold())break;if(P.isKnown())P.nextLevel();else if(n(1)){if(P.setKnown(),P.isLeaf()){p.included=!0,L=x=!0;break}P.nextLevel()}else P.incrementValue()}}if(L){if(x){for((O=A.zeroBitPlanesTree).reset(S,R);;){if(c>=i.length)return;if(n(1)){if(!O.nextLevel())break}else O.incrementValue()}p.zeroBitPlanes=O.value}for(var D=o();n(1);)p.Lblock++;var N=a(D),F=n((1<<N>D?N-1:N)+p.Lblock);y.push({codeblock:p,codingpasses:D,dataLength:F})}}for(l(),_&&f(146);y.length>0;){var U=y.shift();void 0===(p=U.codeblock).data&&(p.data=[]),p.data.push({data:i,start:r+c,end:r+c+U.dataLength,codingpasses:U.codingpasses}),c+=U.dataLength}}catch(e){return}return c}function y(e,i,r,t,n,f,a,s){for(var l=t.tbx0,o=t.tby0,u=t.tbx1-t.tbx0,h=t.codeblocks,d="H"===t.type.charAt(0)?1:0,b="H"===t.type.charAt(1)?i:0,k=0,w=h.length;w>k;++k){var _=h[k],m=_.tbx1_-_.tbx0_,v=_.tby1_-_.tby0_;if(0!==m&&0!==v&&void 0!==_.data){var p,g;p=new R(m,v,_.subbandType,_.zeroBitPlanes,f),g=2;var y,M,E,A=_.data,S=0,T=0;for(y=0,M=A.length;M>y;y++)S+=(E=A[y]).end-E.start,T+=E.codingpasses;var C=new Int16Array(S),L=0;for(y=0,M=A.length;M>y;y++){var x=(E=A[y]).data.subarray(E.start,E.end);C.set(x,L),L+=x.length}var P=new c(C,0,S);for(p.setDecoder(P),y=0;T>y;y++){switch(g){case 0:p.runSignificancePropogationPass();break;case 1:p.runMagnitudeRefinementPass();break;case 2:p.runCleanupPass(),s&&p.checkSegmentationSymbol()}g=(g+1)%3}var O,B,I,D=_.tbx0_-l+(_.tby0_-o)*u,N=p.coefficentsSign,F=p.coefficentsMagnitude,U=p.bitsDecoded,j=a?0:.5;L=0;var H="LL"!==t.type;for(y=0;v>y;y++){var z=2*(D/u|0)*(i-u)+d+b;for(O=0;m>O;O++){if(0!==(B=F[L])){B=(B+j)*n,0!==N[L]&&(B=-B),I=U[L];var Y=H?z+(D<<1):D;e[Y]=a&&I>=f?B:B*(1<<f-I)}D++,L++}D+=u-m}}}}function M(e,i,r){for(var t=i.components[r],n=t.codingStyleParameters,f=t.quantizationParameters,a=n.decompositionLevelsCount,s=f.SPqcds,l=f.scalarExpounded,o=f.guardBits,u=n.segmentationSymbolUsed,c=e.components[r].precision,h=n.reversibleTransformation,d=h?new P:new x,b=[],k=0,w=0;a>=w;w++){for(var _=t.resolutions[w],m=_.trx1-_.trx0,v=_.try1-_.try0,p=new Float32Array(m*v),g=0,M=_.subbands.length;M>g;g++){var E,A;l?(E=s[k].mu,A=s[k].epsilon,k++):(E=s[0].mu,A=s[0].epsilon+(w>0?1-w:0));var T=_.subbands[g],C=S[T.type];y(p,m,0,T,h?1:Math.pow(2,c+C-A)*(1+E/2048),o+A-1,h,u)}b.push({width:m,height:v,items:p})}var R=d.calculate(b,t.tcx0,t.tcy0);return{left:t.tcx0,top:t.tcy0,width:R.width,height:R.height,items:R.items}}function E(e){for(var i=e.SIZ,r=e.components,t=i.Csiz,n=[],f=0,a=e.tiles.length;a>f;f++){var s,l=e.tiles[f],o=[];for(s=0;t>s;s++)o[s]=M(e,l,s);var u=o[0];if(F=r[0].isSigned)var c=new Int16Array(u.items.length*t);else c=new Uint16Array(u.items.length*t);var h,d,b,k,w,_,m,v,p,g,y,E,A,S,T,C={left:u.left,top:u.top,width:u.width,height:u.height,items:c},R=0;if(l.codingStyleDefaultParameters.multipleComponentTransform){var L=4===t,x=o[0].items,P=o[1].items,O=o[2].items,B=L?o[3].items:null;d=.5+(128<<(h=r[0].precision-8)),k=-(w=.5*(b=255*(1<<h)));var I=l.components[0],D=t-3;if(m=x.length,I.codingStyleParameters.reversibleTransformation)for(_=0;m>_;_++,R+=D)v=x[_]+d,p=P[_],y=(E=v-((g=O[_])+p>>2))+g,A=E+p,c[R++]=0>=y?0:y>=b?255:y>>h,c[R++]=0>=E?0:E>=b?255:E>>h,c[R++]=0>=A?0:A>=b?255:A>>h;else for(_=0;m>_;_++,R+=D)v=x[_]+d,p=P[_],y=v+1.402*(g=O[_]),E=v-.34413*p-.71414*g,A=v+1.772*p,c[R++]=0>=y?0:y>=b?255:y>>h,c[R++]=0>=E?0:E>=b?255:E>>h,c[R++]=0>=A?0:A>=b?255:A>>h;if(L)for(_=0,R=3;m>_;_++,R+=4)S=B[_],c[R]=k>=S?0:S>=w?255:S+d>>h}else for(s=0;t>s;s++)if(8===r[s].precision){var N=o[s].items;for(d=.5+(128<<(h=r[s].precision-8)),k=-(b=127.5*(1<<h)),R=s,_=0,m=N.length;m>_;_++)T=N[_],c[R]=k>=T?0:T>=b?255:T+d>>h,R+=t}else{var F=r[s].isSigned;N=o[s].items;if(F)for(R=s,_=0,m=N.length;m>_;_++)c[R]=N[_],R+=t;else{d=.5+(128<<(h=r[s].precision-8));var U=Math.pow(2,r[s].precision)-1;for(R=s,_=0,m=N.length;m>_;_++)T=N[_],c[R]=Math.max(Math.min(T+d,U),0),R+=t}}n.push(C)}return n}function A(e,i){for(var r=e.SIZ.Csiz,t=e.tiles[i],n=0;r>n;n++){var f=t.components[n],a=void 0!==e.currentTile.QCC[n]?e.currentTile.QCC[n]:e.currentTile.QCD;f.quantizationParameters=a;var s=void 0!==e.currentTile.COC[n]?e.currentTile.COC[n]:e.currentTile.COD;f.codingStyleParameters=s}t.codingStyleDefaultParameters=e.currentTile.COD}var S={LL:0,LH:1,HL:1,HH:2};e.prototype={parse:function(e){if(65359!==s(e,0))for(var i=0,r=e.length;r>i;){var f=8,a=l(e,i),o=l(e,i+4);if(i+=f,1===a&&(a=4294967296*l(e,i)+l(e,i+4),i+=8,f+=8),0===a&&(a=r-i+f),f>a)throw new Error("JPX Error: Invalid box field size");var u=a-f,c=!0;switch(o){case 1785737832:c=!1;break;case 1668246642:var h=e[i];if(e[i+1],e[i+2],1===h){var d=l(e,i+3);switch(d){case 16:case 17:case 18:break;default:n("Unknown colorspace "+d)}}else 2===h&&t("ICC profile not supported");break;case 1785737827:this.parseCodestream(e,i,i+u);break;case 1783636e3:218793738!==l(e,i)&&n("Invalid JP2 signature");break;case 1783634458:case 1718909296:case 1920099697:case 1919251232:case 1768449138:break;default:n("Unsupported header type "+o+" ("+String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,255&o)+")")}c&&(i+=u)}else this.parseCodestream(e,0,e.length)},parseImageProperties:function(e){for(var i=e.getByte();i>=0;){if(65361===(i<<8|(i=e.getByte()))){e.skip(4);var r=e.getInt32()>>>0,t=e.getInt32()>>>0,n=e.getInt32()>>>0,f=e.getInt32()>>>0;e.skip(16);var a=e.getUint16();return this.width=r-n,this.height=t-f,this.componentsCount=a,void(this.bitsPerComponent=8)}}throw new Error("JPX Error: No size marker found in JPX stream")},parseCodestream:function(e,t,f){var a={};try{for(var o=!1,u=t;f>u+1;){var c=s(e,u);u+=2;var h,d,b,k,w,_,m=0;switch(c){case 65359:a.mainHeader=!0;break;case 65497:break;case 65361:m=s(e,u);var v={};v.Xsiz=l(e,u+4),v.Ysiz=l(e,u+8),v.XOsiz=l(e,u+12),v.YOsiz=l(e,u+16),v.XTsiz=l(e,u+20),v.YTsiz=l(e,u+24),v.XTOsiz=l(e,u+28),v.YTOsiz=l(e,u+32);var y=s(e,u+36);v.Csiz=y;var M=[];h=u+38;for(var S=0;y>S;S++){var T={precision:1+(127&e[h]),isSigned:!!(128&e[h]),XRsiz:e[h+1],YRsiz:e[h+1]};i(T,v),M.push(T)}a.SIZ=v,a.components=M,r(a,M),a.QCC=[],a.COC=[];break;case 65372:m=s(e,u);var C={};switch(h=u+2,31&(d=e[h++])){case 0:k=8,w=!0;break;case 1:k=16,w=!1;break;case 2:k=16,w=!0;break;default:throw new Error("JPX Error: Invalid SQcd value "+d)}for(C.noQuantization=8===k,C.scalarExpounded=w,C.guardBits=d>>5,b=[];m+u>h;){var R={};8===k?(R.epsilon=e[h++]>>3,R.mu=0):(R.epsilon=e[h]>>3,R.mu=(7&e[h])<<8|e[h+1],h+=2),b.push(R)}C.SPqcds=b,a.mainHeader?a.QCD=C:(a.currentTile.QCD=C,a.currentTile.QCC=[]);break;case 65373:m=s(e,u);var L,x={};switch(h=u+2,a.SIZ.Csiz<257?L=e[h++]:(L=s(e,h),h+=2),31&(d=e[h++])){case 0:k=8,w=!0;break;case 1:k=16,w=!1;break;case 2:k=16,w=!0;break;default:throw new Error("JPX Error: Invalid SQcd value "+d)}for(x.noQuantization=8===k,x.scalarExpounded=w,x.guardBits=d>>5,b=[];m+u>h;)R={},8===k?(R.epsilon=e[h++]>>3,R.mu=0):(R.epsilon=e[h]>>3,R.mu=(7&e[h])<<8|e[h+1],h+=2),b.push(R);x.SPqcds=b,a.mainHeader?a.QCC[L]=x:a.currentTile.QCC[L]=x;break;case 65362:m=s(e,u);var P={};h=u+2;var O=e[h++];P.entropyCoderWithCustomPrecincts=!!(1&O),P.sopMarkerUsed=!!(2&O),P.ephMarkerUsed=!!(4&O),P.progressionOrder=e[h++],P.layersCount=s(e,h),h+=2,P.multipleComponentTransform=e[h++],P.decompositionLevelsCount=e[h++],P.xcb=2+(15&e[h++]),P.ycb=2+(15&e[h++]);var B=e[h++];if(P.selectiveArithmeticCodingBypass=!!(1&B),P.resetContextProbabilities=!!(2&B),P.terminationOnEachCodingPass=!!(4&B),P.verticalyStripe=!!(8&B),P.predictableTermination=!!(16&B),P.segmentationSymbolUsed=!!(32&B),P.reversibleTransformation=e[h++],P.entropyCoderWithCustomPrecincts){for(var I=[];m+u>h;){var D=e[h++];I.push({PPx:15&D,PPy:D>>4})}P.precinctsSizes=I}var N=[];if(P.selectiveArithmeticCodingBypass&&N.push("selectiveArithmeticCodingBypass"),P.resetContextProbabilities&&N.push("resetContextProbabilities"),P.terminationOnEachCodingPass&&N.push("terminationOnEachCodingPass"),P.verticalyStripe&&N.push("verticalyStripe"),P.predictableTermination&&N.push("predictableTermination"),N.length>0)throw o=!0,new Error("JPX Error: Unsupported COD options ("+N.join(", ")+")");a.mainHeader?a.COD=P:(a.currentTile.COD=P,a.currentTile.COC=[]);break;case 65424:m=s(e,u),(_={}).index=s(e,u+2),_.length=l(e,u+4),_.dataEnd=_.length+u-2,_.partIndex=e[u+8],_.partsCount=e[u+9],a.mainHeader=!1,0===_.partIndex&&(_.COD=a.COD,_.COC=a.COC.slice(0),_.QCD=a.QCD,_.QCC=a.QCC.slice(0)),a.currentTile=_;break;case 65427:0===(_=a.currentTile).partIndex&&(A(a,_.index),p(a)),g(a,e,u,m=_.dataEnd-u);break;case 65365:case 65367:case 65368:case 65380:m=s(e,u);break;case 65363:throw new Error("JPX Error: Codestream code 0xFF53 (COC) is not implemented");default:throw new Error("JPX Error: Unknown codestream code: "+c.toString(16))}u+=m}}catch(e){if(o||this.failOnCorruptedImage)throw e;n("Trying to recover from "+e.message)}this.tiles=E(a),this.width=a.SIZ.Xsiz-a.SIZ.XOsiz,this.height=a.SIZ.Ysiz-a.SIZ.YOsiz,this.componentsCount=a.SIZ.Csiz}};var T=function(){function e(e,i){var r=a(Math.max(e,i))+1;this.levels=[];for(var t=0;r>t;t++){var n={width:e,height:i,items:[]};this.levels.push(n),e=Math.ceil(e/2),i=Math.ceil(i/2)}}return e.prototype={reset:function(e,i){for(var r,t=0,n=0;t<this.levels.length;){var f=e+i*(r=this.levels[t]).width;if(void 0!==r.items[f]){n=r.items[f];break}r.index=f,e>>=1,i>>=1,t++}t--,(r=this.levels[t]).items[r.index]=n,this.currentLevel=t,delete this.value},incrementValue:function(){var e=this.levels[this.currentLevel];e.items[e.index]++},nextLevel:function(){var e=this.currentLevel,i=this.levels[e],r=i.items[i.index];return 0>--e?(this.value=r,!1):(this.currentLevel=e,(i=this.levels[e]).items[i.index]=r,!0)}},e}(),C=function(){function e(e,i){var r=a(Math.max(e,i))+1;this.levels=[];for(var t=0;r>t;t++){for(var n=new Uint8Array(e*i),f=new Uint8Array(e*i),s=0,l=n.length;l>s;s++)n[s]=0,f[s]=0;var o={width:e,height:i,items:n,status:f};this.levels.push(o),e=Math.ceil(e/2),i=Math.ceil(i/2)}}return e.prototype={reset:function(e,i,r){this.currentStopValue=r;for(var t=0;t<this.levels.length;){var n=this.levels[t],f=e+i*n.width;n.index=f,e>>=1,i>>=1,t++}this.currentLevel=this.levels.length-1,this.minValue=this.levels[this.currentLevel].items[0]},incrementValue:function(){var e=this.levels[this.currentLevel];e.items[e.index]=e.items[e.index]+1,e.items[e.index]>this.minValue&&(this.minValue=e.items[e.index])},nextLevel:function(){var e=this.currentLevel;if(0>--e)return!1;this.currentLevel=e;var i=this.levels[e];return i.items[i.index]<this.minValue?i.items[i.index]=this.minValue:i.items[i.index]>this.minValue&&(this.minValue=i.items[i.index]),!0},isLeaf:function(){return 0===this.currentLevel},isAboveThreshold:function(){var e=this.currentLevel,i=this.levels[e];return i.items[i.index]>this.currentStopValue},isKnown:function(){var e=this.currentLevel,i=this.levels[e];return i.status[i.index]>0},setKnown:function(){var e=this.currentLevel,i=this.levels[e];i.status[i.index]=1}},e}(),R=function(){function e(e,i,f,a,s){this.width=e,this.height=i,this.contextLabelTable="HH"===f?n:"HL"===f?t:r;var l=e*i;this.neighborsSignificance=new Uint8Array(l),this.coefficentsSign=new Uint8Array(l),this.coefficentsMagnitude=s>14?new Uint32Array(l):s>6?new Uint16Array(l):new Uint8Array(l),this.processingFlags=new Uint8Array(l);var o=new Uint8Array(l);if(0!==a)for(var u=0;l>u;u++)o[u]=a;this.bitsDecoded=o,this.reset()}var i=17,r=new Uint8Array([0,5,8,0,3,7,8,0,4,7,8,0,0,0,0,0,1,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8]),t=new Uint8Array([0,3,4,0,5,7,7,0,8,8,8,0,0,0,0,0,1,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8]),n=new Uint8Array([0,1,2,0,1,2,2,0,2,2,2,0,0,0,0,0,3,4,5,0,4,5,5,0,5,5,5,0,0,0,0,0,6,7,7,0,7,7,7,0,7,7,7,0,0,0,0,0,8,8,8,0,8,8,8,0,8,8,8,0,0,0,0,0,8,8,8,0,8,8,8,0,8,8,8]);return e.prototype={setDecoder:function(e){this.decoder=e},reset:function(){this.contexts=new Int8Array(19),this.contexts[0]=8,this.contexts[i]=92,this.contexts[18]=6},setNeighborsSignificance:function(e,i,r){var t,n=this.neighborsSignificance,f=this.width,a=this.height,s=i>0,l=f>i+1;e>0&&(t=r-f,s&&(n[t-1]+=16),l&&(n[t+1]+=16),n[t]+=4),a>e+1&&(t=r+f,s&&(n[t-1]+=16),l&&(n[t+1]+=16),n[t]+=4),s&&(n[r-1]+=1),l&&(n[r+1]+=1),n[r]|=128},runSignificancePropogationPass:function(){for(var e=this.decoder,i=this.width,r=this.height,t=this.coefficentsMagnitude,n=this.coefficentsSign,f=this.neighborsSignificance,a=this.processingFlags,s=this.contexts,l=this.contextLabelTable,o=this.bitsDecoded,u=0;r>u;u+=4)for(var c=0;i>c;c++)for(var h=u*i+c,d=0;4>d;d++,h+=i){var b=u+d;if(b>=r)break;if(a[h]&=-2,!t[h]&&f[h]){var k=l[f[h]];if(e.readBit(s,k)){var w=this.decodeSignBit(b,c,h);n[h]=w,t[h]=1,this.setNeighborsSignificance(b,c,h),a[h]|=2}o[h]++,a[h]|=1}}},decodeSignBit:function(e,i,r){var t,n,f,a,s,l,o=this.width,u=this.height,c=this.coefficentsMagnitude,h=this.coefficentsSign;a=i>0&&0!==c[r-1],o>i+1&&0!==c[r+1]?(f=h[r+1],a?t=1-f-(n=h[r-1]):t=1-f-f):a?t=1-(n=h[r-1])-n:t=0;var d=3*t;return a=e>0&&0!==c[r-o],u>e+1&&0!==c[r+o]?(f=h[r+o],a?t=1-f-(n=h[r-o])+d:t=1-f-f+d):a?t=1-(n=h[r-o])-n+d:t=d,t>=0?(s=9+t,l=this.decoder.readBit(this.contexts,s)):(s=9-t,l=1^this.decoder.readBit(this.contexts,s)),l},runMagnitudeRefinementPass:function(){for(var e,i=this.decoder,r=this.width,t=this.height,n=this.coefficentsMagnitude,f=this.neighborsSignificance,a=this.contexts,s=this.bitsDecoded,l=this.processingFlags,o=r*t,u=4*r,c=0;o>c;c=e){e=Math.min(o,c+u);for(var h=0;r>h;h++)for(var d=c+h;e>d;d+=r)if(n[d]&&0==(1&l[d])){var b=16;if(0!=(2&l[d]))l[d]^=2,b=0===(127&f[d])?15:14;var k=i.readBit(a,b);n[d]=n[d]<<1|k,s[d]++,l[d]|=1}}},runCleanupPass:function(){for(var e,r=this.decoder,t=this.width,n=this.height,f=this.neighborsSignificance,a=this.coefficentsMagnitude,s=this.coefficentsSign,l=this.contexts,o=this.contextLabelTable,u=this.bitsDecoded,c=this.processingFlags,h=t,d=2*t,b=3*t,k=0;n>k;k=e){e=Math.min(k+4,n);for(var w=k*t,_=n>k+3,m=0;t>m;m++){var v,p=w+m,g=0,y=p,M=k;if(_&&0===c[p]&&0===c[p+h]&&0===c[p+d]&&0===c[p+b]&&0===f[p]&&0===f[p+h]&&0===f[p+d]&&0===f[p+b]){if(!r.readBit(l,18)){u[p]++,u[p+h]++,u[p+d]++,u[p+b]++;continue}0!==(g=r.readBit(l,i)<<1|r.readBit(l,i))&&(M=k+g,y+=g*t),v=this.decodeSignBit(M,m,y),s[y]=v,a[y]=1,this.setNeighborsSignificance(M,m,y),c[y]|=2,y=p;for(var E=k;M>=E;E++,y+=t)u[y]++;g++}for(M=k+g;e>M;M++,y+=t)if(!a[y]&&0==(1&c[y])){var A=o[f[y]];1===r.readBit(l,A)&&(v=this.decodeSignBit(M,m,y),s[y]=v,a[y]=1,this.setNeighborsSignificance(M,m,y),c[y]|=2),u[y]++}}}},checkSegmentationSymbol:function(){var e=this.decoder,r=this.contexts;if(10!==(e.readBit(r,i)<<3|e.readBit(r,i)<<2|e.readBit(r,i)<<1|e.readBit(r,i)))throw new Error("JPX Error: Invalid segmentation symbol")}},e}(),L=function(){function e(){}return e.prototype.calculate=function(e,i,r){for(var t=e[0],n=1,f=e.length;f>n;n++)t=this.iterate(t,e[n],i,r);return t},e.prototype.extend=function(e,i,r){var t=i-1,n=i+1,f=i+r-2,a=i+r;e[t--]=e[n++],e[a++]=e[f--],e[t--]=e[n++],e[a++]=e[f--],e[t--]=e[n++],e[a++]=e[f--],e[t]=e[n],e[a]=e[f]},e.prototype.iterate=function(e,i,r,t){var n,f,a,s,l,o,u=e.width,c=e.height,h=e.items,d=i.width,b=i.height,k=i.items;for(a=0,n=0;c>n;n++)for(s=2*n*d,f=0;u>f;f++,a++,s+=2)k[s]=h[a];h=e.items=null;var w=new Float32Array(d+8);if(1===d){if(0!=(1&r))for(o=0,a=0;b>o;o++,a+=d)k[a]*=.5}else for(o=0,a=0;b>o;o++,a+=d)w.set(k.subarray(a,a+d),4),this.extend(w,4,d),this.filter(w,4,d),k.set(w.subarray(4,4+d),a);var _=16,m=[];for(n=0;_>n;n++)m.push(new Float32Array(b+8));var v,p=0;if(e=4+b,1===b){if(0!=(1&t))for(l=0;d>l;l++)k[l]*=.5}else for(l=0;d>l;l++){if(0===p){for(_=Math.min(d-l,_),a=l,s=4;e>s;a+=d,s++)for(v=0;_>v;v++)m[v][s]=k[a+v];p=_}var g=m[--p];if(this.extend(g,4,b),this.filter(g,4,b),0===p)for(a=l-_+1,s=4;e>s;a+=d,s++)for(v=0;_>v;v++)k[a+v]=m[v][s]}return{width:d,height:b,items:k}},e}(),x=function(){function e(){L.call(this)}return e.prototype=Object.create(L.prototype),e.prototype.filter=function(e,i,r){var t,n,f,a,s=r>>1,l=-1.586134342059924,o=-.052980118572961,u=.882911075530934,c=.443506852043971,h=1.230174104914001;for(t=(i|=0)-3,n=s+4;n--;t+=2)e[t]*=.8128930661159609;for(f=c*e[(t=i-2)-1],n=s+3;n--&&(a=c*e[t+1],e[t]=h*e[t]-f-a,n--);t+=2)f=c*e[(t+=2)+1],e[t]=h*e[t]-f-a;for(f=u*e[(t=i-1)-1],n=s+2;n--&&(a=u*e[t+1],e[t]-=f+a,n--);t+=2)f=u*e[(t+=2)+1],e[t]-=f+a;for(f=o*e[(t=i)-1],n=s+1;n--&&(a=o*e[t+1],e[t]-=f+a,n--);t+=2)f=o*e[(t+=2)+1],e[t]-=f+a;if(0!==s)for(f=l*e[(t=i+1)-1],n=s;n--&&(a=l*e[t+1],e[t]-=f+a,n--);t+=2)f=l*e[(t+=2)+1],e[t]-=f+a},e}(),P=function(){function e(){L.call(this)}return e.prototype=Object.create(L.prototype),e.prototype.filter=function(e,i,r){var t,n,f=r>>1;for(t=i|=0,n=f+1;n--;t+=2)e[t]-=e[t-1]+e[t+1]+2>>2;for(t=i+1,n=f;n--;t+=2)e[t]+=e[t-1]+e[t+1]>>1},e}();return e}(),c=function(){function e(e,i,r){this.data=e,this.bp=i,this.dataEnd=r,this.chigh=e[i],this.clow=0,this.byteIn(),this.chigh=this.chigh<<7&65535|this.clow>>9&127,this.clow=this.clow<<7&65535,this.ct-=7,this.a=32768}var i=[{qe:22017,nmps:1,nlps:1,switchFlag:1},{qe:13313,nmps:2,nlps:6,switchFlag:0},{qe:6145,nmps:3,nlps:9,switchFlag:0},{qe:2753,nmps:4,nlps:12,switchFlag:0},{qe:1313,nmps:5,nlps:29,switchFlag:0},{qe:545,nmps:38,nlps:33,switchFlag:0},{qe:22017,nmps:7,nlps:6,switchFlag:1},{qe:21505,nmps:8,nlps:14,switchFlag:0},{qe:18433,nmps:9,nlps:14,switchFlag:0},{qe:14337,nmps:10,nlps:14,switchFlag:0},{qe:12289,nmps:11,nlps:17,switchFlag:0},{qe:9217,nmps:12,nlps:18,switchFlag:0},{qe:7169,nmps:13,nlps:20,switchFlag:0},{qe:5633,nmps:29,nlps:21,switchFlag:0},{qe:22017,nmps:15,nlps:14,switchFlag:1},{qe:21505,nmps:16,nlps:14,switchFlag:0},{qe:20737,nmps:17,nlps:15,switchFlag:0},{qe:18433,nmps:18,nlps:16,switchFlag:0},{qe:14337,nmps:19,nlps:17,switchFlag:0},{qe:13313,nmps:20,nlps:18,switchFlag:0},{qe:12289,nmps:21,nlps:19,switchFlag:0},{qe:10241,nmps:22,nlps:19,switchFlag:0},{qe:9217,nmps:23,nlps:20,switchFlag:0},{qe:8705,nmps:24,nlps:21,switchFlag:0},{qe:7169,nmps:25,nlps:22,switchFlag:0},{qe:6145,nmps:26,nlps:23,switchFlag:0},{qe:5633,nmps:27,nlps:24,switchFlag:0},{qe:5121,nmps:28,nlps:25,switchFlag:0},{qe:4609,nmps:29,nlps:26,switchFlag:0},{qe:4353,nmps:30,nlps:27,switchFlag:0},{qe:2753,nmps:31,nlps:28,switchFlag:0},{qe:2497,nmps:32,nlps:29,switchFlag:0},{qe:2209,nmps:33,nlps:30,switchFlag:0},{qe:1313,nmps:34,nlps:31,switchFlag:0},{qe:1089,nmps:35,nlps:32,switchFlag:0},{qe:673,nmps:36,nlps:33,switchFlag:0},{qe:545,nmps:37,nlps:34,switchFlag:0},{qe:321,nmps:38,nlps:35,switchFlag:0},{qe:273,nmps:39,nlps:36,switchFlag:0},{qe:133,nmps:40,nlps:37,switchFlag:0},{qe:73,nmps:41,nlps:38,switchFlag:0},{qe:37,nmps:42,nlps:39,switchFlag:0},{qe:21,nmps:43,nlps:40,switchFlag:0},{qe:9,nmps:44,nlps:41,switchFlag:0},{qe:5,nmps:45,nlps:42,switchFlag:0},{qe:1,nmps:45,nlps:43,switchFlag:0},{qe:22017,nmps:46,nlps:46,switchFlag:0}];return e.prototype={byteIn:function(){var e=this.data,i=this.bp;255===e[i]?e[i+1]>143?(this.clow+=65280,this.ct=8):(i++,this.clow+=e[i]<<9,this.ct=7,this.bp=i):(i++,this.clow+=i<this.dataEnd?e[i]<<8:65280,this.ct=8,this.bp=i);this.clow>65535&&(this.chigh+=this.clow>>16,this.clow&=65535)},readBit:function(e,r){var t,n=e[r]>>1,f=1&e[r],a=i[n],s=a.qe,l=this.a-s;if(this.chigh<s)s>l?(l=s,t=f,n=a.nmps):(l=s,t=1^f,1===a.switchFlag&&(f=t),n=a.nlps);else{if(this.chigh-=s,0!=(32768&l))return this.a=l,f;s>l?(t=1^f,1===a.switchFlag&&(f=t),n=a.nlps):(t=f,n=a.nmps)}do{0===this.ct&&this.byteIn(),l<<=1,this.chigh=this.chigh<<1&65535|this.clow>>15&1,this.clow=this.clow<<1&65535,this.ct--}while(0==(32768&l));return this.a=l,e[r]=n<<1|f,t}},e}(),h="undefined"==typeof window?this:window;h.PDFJS||(h.PDFJS={}),h.PDFJS.pdfBug=!1,r.VERBOSITY_LEVELS={errors:0,warnings:1,infos:5};var d;r.OPS={dependency:1,setLineWidth:2,setLineCap:3,setLineJoin:4,setMiterLimit:5,setDash:6,setRenderingIntent:7,setFlatness:8,setGState:9,save:10,restore:11,transform:12,moveTo:13,lineTo:14,curveTo:15,curveTo2:16,curveTo3:17,closePath:18,rectangle:19,stroke:20,closeStroke:21,fill:22,eoFill:23,fillStroke:24,eoFillStroke:25,closeFillStroke:26,closeEOFillStroke:27,endPath:28,clip:29,eoClip:30,beginText:31,endText:32,setCharSpacing:33,setWordSpacing:34,setHScale:35,setLeading:36,setFont:37,setTextRenderingMode:38,setTextRise:39,moveText:40,setLeadingMoveText:41,setTextMatrix:42,nextLine:43,showText:44,showSpacedText:45,nextLineShowText:46,nextLineSetSpacingShowText:47,setCharWidth:48,setCharWidthAndBounds:49,setStrokeColorSpace:50,setFillColorSpace:51,setStrokeColor:52,setStrokeColorN:53,setFillColor:54,setFillColorN:55,setStrokeGray:56,setFillGray:57,setStrokeRGBColor:58,setFillRGBColor:59,setStrokeCMYKColor:60,setFillCMYKColor:61,shadingFill:62,beginInlineImage:63,beginImageData:64,endInlineImage:65,paintXObject:66,markPoint:67,markPointProps:68,beginMarkedContent:69,beginMarkedContentProps:70,endMarkedContent:71,beginCompat:72,endCompat:73,paintFormXObjectBegin:74,paintFormXObjectEnd:75,beginGroup:76,endGroup:77,beginAnnotations:78,endAnnotations:79,beginAnnotation:80,endAnnotation:81,paintJpegXObject:82,paintImageMaskXObject:83,paintImageMaskXObjectGroup:84,paintImageXObject:85,paintInlineImageXObject:86,paintInlineImageXObjectGroup:87,paintImageXObjectRepeat:88,paintImageMaskXObjectRepeat:89,paintSolidColorImageMask:90,constructPath:91},r.UNSUPPORTED_FEATURES={unknown:"unknown",forms:"forms",javaScript:"javaScript",smask:"smask",shadingPattern:"shadingPattern",font:"font"},r.UnsupportedManager=(d=[],{listen:function(e){d.push(e)},notify:function(e){n(\'Unsupported feature "\'+e+\'"\');for(var i=0,r=d.length;r>i;i++)d[i](e)}});r.isValidUrl=function(e,i){if(!e)return!1;var r=/^[a-z][a-z0-9+\\-.]*(?=:)/i.exec(e);if(!r)return i;switch(r=r[0].toLowerCase()){case"http":case"https":case"ftp":case"mailto":case"tel":return!0;default:return!1}},r.shadow=f;r.PasswordResponses={NEED_PASSWORD:1,INCORRECT_PASSWORD:2};var b=function(){function e(e,i){this.name="PasswordException",this.message=e,this.code=i}return e.prototype=new Error,e.constructor=e,e}();r.PasswordException=b;var k=function(){function e(e,i){this.name="UnknownErrorException",this.message=e,this.details=i}return e.prototype=new Error,e.constructor=e,e}();r.UnknownErrorException=k;var w=function(){function e(e){this.name="InvalidPDFException",this.message=e}return e.prototype=new Error,e.constructor=e,e}();r.InvalidPDFException=w;var _=function(){function e(e){this.name="MissingPDFException",this.message=e}return e.prototype=new Error,e.constructor=e,e}();r.MissingPDFException=_;var m=function(){function e(e,i){this.name="UnexpectedResponseException",this.message=e,this.status=i}return e.prototype=new Error,e.constructor=e,e}();r.UnexpectedResponseException=m;(function(){function e(e){this.message=e}e.prototype=new Error,e.prototype.name="NotImplementedException",e.constructor=e})(),function(){function e(e,i){this.begin=e,this.end=i,this.message="Missing data ["+e+", "+i+")"}e.prototype=new Error,e.prototype.name="MissingDataException",e.constructor=e}(),function(){function e(e){this.message=e}e.prototype=new Error,e.prototype.name="XRefParseException",e.constructor=e}();Object.defineProperty(r,"isLittleEndian",{configurable:!0,get:function(){return f(r,"isLittleEndian",function(){var e=new Uint8Array(2);return e[0]=1,1===new Uint16Array(e.buffer)[0]}())}}),Object.defineProperty(r,"hasCanvasTypedArrays",{configurable:!0,get:function(){return f(r,"hasCanvasTypedArrays",function(){var e=document.createElement("canvas");return e.width=e.height=1,void 0!==e.getContext("2d").createImageData(1,1).data.buffer}())}});!function(){function e(e,i){this.buffer=e,this.byteLength=e.length,this.length=void 0===i?this.byteLength>>2:i,r(this.length)}function i(e){return{get:function(){var i=this.buffer,r=e<<2;return(i[r]|i[r+1]<<8|i[r+2]<<16|i[r+3]<<24)>>>0},set:function(i){var r=this.buffer,t=e<<2;r[t]=255&i,r[t+1]=i>>8&255,r[t+2]=i>>16&255,r[t+3]=i>>>24&255}}}function r(r){for(;r>t;)Object.defineProperty(e.prototype,t,i(t)),t++}e.prototype=Object.create(null);var t=0}();var v=r.Util=function(){function e(){}var i=["rgb(",0,",",0,",",0,")"];return e.makeCssRgb=function(e,r,t){return i[1]=e,i[3]=r,i[5]=t,i.join("")},e.transform=function(e,i){return[e[0]*i[0]+e[2]*i[1],e[1]*i[0]+e[3]*i[1],e[0]*i[2]+e[2]*i[3],e[1]*i[2]+e[3]*i[3],e[0]*i[4]+e[2]*i[5]+e[4],e[1]*i[4]+e[3]*i[5]+e[5]]},e.applyTransform=function(e,i){return[e[0]*i[0]+e[1]*i[2]+i[4],e[0]*i[1]+e[1]*i[3]+i[5]]},e.applyInverseTransform=function(e,i){var r=i[0]*i[3]-i[1]*i[2];return[(e[0]*i[3]-e[1]*i[2]+i[2]*i[5]-i[4]*i[3])/r,(-e[0]*i[1]+e[1]*i[0]+i[4]*i[1]-i[5]*i[0])/r]},e.getAxialAlignedBoundingBox=function(i,r){var t=e.applyTransform(i,r),n=e.applyTransform(i.slice(2,4),r),f=e.applyTransform([i[0],i[3]],r),a=e.applyTransform([i[2],i[1]],r);return[Math.min(t[0],n[0],f[0],a[0]),Math.min(t[1],n[1],f[1],a[1]),Math.max(t[0],n[0],f[0],a[0]),Math.max(t[1],n[1],f[1],a[1])]},e.inverseTransform=function(e){var i=e[0]*e[3]-e[1]*e[2];return[e[3]/i,-e[1]/i,-e[2]/i,e[0]/i,(e[2]*e[5]-e[4]*e[3])/i,(e[4]*e[1]-e[5]*e[0])/i]},e.apply3dTransform=function(e,i){return[e[0]*i[0]+e[1]*i[1]+e[2]*i[2],e[3]*i[0]+e[4]*i[1]+e[5]*i[2],e[6]*i[0]+e[7]*i[1]+e[8]*i[2]]},e.singularValueDecompose2dScale=function(e){var i=[e[0],e[2],e[1],e[3]],r=e[0]*i[0]+e[1]*i[2],t=e[0]*i[1]+e[1]*i[3],n=e[2]*i[0]+e[3]*i[2],f=e[2]*i[1]+e[3]*i[3],a=(r+f)/2,s=Math.sqrt((r+f)*(r+f)-4*(r*f-n*t))/2,l=a+s||1,o=a-s||1;return[Math.sqrt(l),Math.sqrt(o)]},e.normalizeRect=function(e){var i=e.slice(0);return e[0]>e[2]&&(i[0]=e[2],i[2]=e[0]),e[1]>e[3]&&(i[1]=e[3],i[3]=e[1]),i},e.intersect=function(i,r){function t(e,i){return e-i}var n=[i[0],i[2],r[0],r[2]].sort(t),f=[i[1],i[3],r[1],r[3]].sort(t),a=[];return i=e.normalizeRect(i),r=e.normalizeRect(r),(n[0]===i[0]&&n[1]===r[0]||n[0]===r[0]&&n[1]===i[0])&&(a[0]=n[1],a[2]=n[2],(f[0]===i[1]&&f[1]===r[1]||f[0]===r[1]&&f[1]===i[1])&&(a[1]=f[1],a[3]=f[2],a))},e.sign=function(e){return 0>e?-1:1},e.appendToArray=function(e,i){Array.prototype.push.apply(e,i)},e.prependToArray=function(e,i){Array.prototype.unshift.apply(e,i)},e.extendObj=function(e,i){for(var r in i)e[r]=i[r]},e.getInheritableProperty=function(e,i){for(;e&&!e.has(i);)e=e.get("Parent");return e?e.get(i):null},e.inherit=function(e,i,r){for(var t in e.prototype=Object.create(i.prototype),e.prototype.constructor=e,r)e.prototype[t]=r[t]},e.loadScript=function(e,i){var r=document.createElement("script"),t=!1;r.setAttribute("src",e),i&&(r.onload=function(){t||i(),t=!0}),document.getElementsByTagName("head")[0].appendChild(r)},e}();r.PageViewport=function(){function e(e,i,r,t,n,f){this.viewBox=e,this.scale=i,this.rotation=r,this.offsetX=t,this.offsetY=n;var a,s,l,o,u,c,h,d,b=(e[2]+e[0])/2,k=(e[3]+e[1])/2;switch(r=0>(r%=360)?r+360:r){case 180:a=-1,s=0,l=0,o=1;break;case 90:a=0,s=1,l=1,o=0;break;case 270:a=0,s=-1,l=-1,o=0;break;default:a=1,s=0,l=0,o=-1}f&&(l=-l,o=-o),0===a?(u=Math.abs(k-e[1])*i+t,c=Math.abs(b-e[0])*i+n,h=Math.abs(e[3]-e[1])*i,d=Math.abs(e[2]-e[0])*i):(u=Math.abs(b-e[0])*i+t,c=Math.abs(k-e[1])*i+n,h=Math.abs(e[2]-e[0])*i,d=Math.abs(e[3]-e[1])*i),this.transform=[a*i,s*i,l*i,o*i,u-a*i*b-l*i*k,c-s*i*b-o*i*k],this.width=h,this.height=d,this.fontScale=i}return e.prototype={clone:function(i){var r="scale"in(i=i||{})?i.scale:this.scale,t="rotation"in i?i.rotation:this.rotation;return new e(this.viewBox.slice(),r,t,this.offsetX,this.offsetY,i.dontFlip)},convertToViewportPoint:function(e,i){return v.applyTransform([e,i],this.transform)},convertToViewportRectangle:function(e){var i=v.applyTransform([e[0],e[1]],this.transform),r=v.applyTransform([e[2],e[3]],this.transform);return[i[0],i[1],r[0],r[1]]},convertToPdfPoint:function(e,i){return v.applyInverseTransform([e,i],this.transform)}},e}();r.createPromiseCapability=o,function(){function e(e){this._status=i,this._handlers=[];try{e.call(this,this._resolve.bind(this),this._reject.bind(this))}catch(e){this._reject(e)}}if(h.Promise)return"function"!=typeof h.Promise.all&&(h.Promise.all=function(e){var i,r,t=0,n=[],f=new h.Promise((function(e,t){i=e,r=t}));return e.forEach((function(e,f){t++,e.then((function(e){n[f]=e,0===--t&&i(n)}),r)})),0===t&&i(n),f}),"function"!=typeof h.Promise.resolve&&(h.Promise.resolve=function(e){return new h.Promise((function(i){i(e)}))}),"function"!=typeof h.Promise.reject&&(h.Promise.reject=function(e){return new h.Promise((function(i,r){r(e)}))}),void("function"!=typeof h.Promise.prototype.catch&&(h.Promise.prototype.catch=function(e){return h.Promise.prototype.then(void 0,e)}));var i=0,r=2,t={handlers:[],running:!1,unhandledRejections:[],pendingRejectionCheck:!1,scheduleHandlers:function(e){e._status!==i&&(this.handlers=this.handlers.concat(e._handlers),e._handlers=[],this.running||(this.running=!0,setTimeout(this.runHandlers.bind(this),0)))},runHandlers:function(){for(var e=Date.now()+1;this.handlers.length>0;){var i=this.handlers.shift(),t=i.thisPromise._status,n=i.thisPromise._value;try{1===t?"function"==typeof i.onResolve&&(n=i.onResolve(n)):"function"==typeof i.onReject&&(n=i.onReject(n),t=1,i.thisPromise._unhandledRejection&&this.removeUnhandeledRejection(i.thisPromise))}catch(e){t=r,n=e}if(i.nextPromise._updateStatus(t,n),Date.now()>=e)break}return this.handlers.length>0?void setTimeout(this.runHandlers.bind(this),0):void(this.running=!1)},addUnhandledRejection:function(e){this.unhandledRejections.push({promise:e,time:Date.now()}),this.scheduleRejectionCheck()},removeUnhandeledRejection:function(e){e._unhandledRejection=!1;for(var i=0;i<this.unhandledRejections.length;i++)this.unhandledRejections[i].promise===e&&(this.unhandledRejections.splice(i),i--)},scheduleRejectionCheck:function(){this.pendingRejectionCheck||(this.pendingRejectionCheck=!0,setTimeout(function(){this.pendingRejectionCheck=!1;for(var e=Date.now(),i=0;i<this.unhandledRejections.length;i++)if(e-this.unhandledRejections[i].time>500){var r=this.unhandledRejections[i].promise._value,t="Unhandled rejection: "+r;r.stack&&(t+="\\n"+r.stack),n(t),this.unhandledRejections.splice(i),i--}this.unhandledRejections.length&&this.scheduleRejectionCheck()}.bind(this),500))}};e.all=function(i){function t(e){a._status!==r&&(l=[],f(e))}var n,f,a=new e((function(e,i){n=e,f=i})),s=i.length,l=[];if(0===s)return n(l),a;for(var o=0,u=i.length;u>o;++o){var c=i[o],h=function(e){return function(i){a._status!==r&&(l[e]=i,0===--s&&n(l))}}(o);e.isPromise(c)?c.then(h,t):h(c)}return a},e.isPromise=function(e){return e&&"function"==typeof e.then},e.resolve=function(i){return new e((function(e){e(i)}))},e.reject=function(i){return new e((function(e,r){r(i)}))},e.prototype={_status:null,_value:null,_handlers:null,_unhandledRejection:null,_updateStatus:function(i,n){if(1!==this._status&&this._status!==r){if(1===i&&e.isPromise(n))return void n.then(this._updateStatus.bind(this,1),this._updateStatus.bind(this,r));this._status=i,this._value=n,i===r&&0===this._handlers.length&&(this._unhandledRejection=!0,t.addUnhandledRejection(this)),t.scheduleHandlers(this)}},_resolve:function(e){this._updateStatus(1,e)},_reject:function(e){this._updateStatus(r,e)},then:function(i,r){var n=new e((function(e,i){this.resolve=e,this.reject=i}));return this._handlers.push({thisPromise:this,onResolve:i,onReject:r,nextPromise:n}),t.scheduleHandlers(this),n},catch:function(e){return this.then(void 0,e)}},h.Promise=e}();!function(){function e(e,i,r){for(;e.length<r;)e+=i;return e}function i(){this.started={},this.times=[],this.enabled=!0}i.prototype={time:function(e){this.enabled&&(e in this.started&&n("Timer is already running for "+e),this.started[e]=Date.now())},timeEnd:function(e){this.enabled&&(e in this.started||n("Timer has not been started for "+e),this.times.push({name:e,start:this.started[e],end:Date.now()}),delete this.started[e])},toString:function(){var i,r,t=this.times,n="",f=0;for(i=0,r=t.length;r>i;++i){var a=t[i].name;a.length>f&&(f=a.length)}for(i=0,r=t.length;r>i;++i){var s=t[i],l=s.end-s.start;n+=e(s.name," ",f)+" "+l+"ms\\n"}return n}}}();r.createBlob=function(e,i){if("undefined"!=typeof Blob)return new Blob([e],{type:i});var r=new MozBlobBuilder;return r.append(e),r.getBlob(i)},r.createObjectURL=function(){var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";return function(i,t){if(!r.disableCreateObjectURL&&"undefined"!=typeof URL&&URL.createObjectURL){var n=r.createBlob(i,t);return URL.createObjectURL(n)}for(var f="data:"+t+";base64,",a=0,s=i.length;s>a;a+=3){var l=255&i[a],o=255&i[a+1],u=255&i[a+2];f+=e[l>>2]+e[(3&l)<<4|o>>4]+e[s>a+1?(15&o)<<2|u>>6:64]+e[s>a+2?63&u:64]}return f}}(),e.exports=u},function(e,i,r){"use strict";var t={};(0,r(0).assign)(t,r(13),r(16),r(10)),e.exports=t},function(e,i,r){"use strict";var t=r(14),n=r(0),f=r(8),a=r(2),s=r(9),l=Object.prototype.toString,o=0,u=-1,c=0,h=8;function d(e){if(!(this instanceof d))return new d(e);this.options=n.assign({level:u,method:h,chunkSize:16384,windowBits:15,memLevel:8,strategy:c,to:""},e||{});var i=this.options;i.raw&&i.windowBits>0?i.windowBits=-i.windowBits:i.gzip&&i.windowBits>0&&i.windowBits<16&&(i.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new s,this.strm.avail_out=0;var r=t.deflateInit2(this.strm,i.level,i.method,i.windowBits,i.memLevel,i.strategy);if(r!==o)throw new Error(a[r]);if(i.header&&t.deflateSetHeader(this.strm,i.header),i.dictionary){var b;if(b="string"==typeof i.dictionary?f.string2buf(i.dictionary):"[object ArrayBuffer]"===l.call(i.dictionary)?new Uint8Array(i.dictionary):i.dictionary,(r=t.deflateSetDictionary(this.strm,b))!==o)throw new Error(a[r]);this._dict_set=!0}}function b(e,i){var r=new d(i);if(r.push(e,!0),r.err)throw r.msg||a[r.err];return r.result}d.prototype.push=function(e,i){var r,a,s=this.strm,u=this.options.chunkSize;if(this.ended)return!1;a=i===~~i?i:!0===i?4:0,"string"==typeof e?s.input=f.string2buf(e):"[object ArrayBuffer]"===l.call(e)?s.input=new Uint8Array(e):s.input=e,s.next_in=0,s.avail_in=s.input.length;do{if(0===s.avail_out&&(s.output=new n.Buf8(u),s.next_out=0,s.avail_out=u),1!==(r=t.deflate(s,a))&&r!==o)return this.onEnd(r),this.ended=!0,!1;0!==s.avail_out&&(0!==s.avail_in||4!==a&&2!==a)||("string"===this.options.to?this.onData(f.buf2binstring(n.shrinkBuf(s.output,s.next_out))):this.onData(n.shrinkBuf(s.output,s.next_out)))}while((s.avail_in>0||0===s.avail_out)&&1!==r);return 4===a?(r=t.deflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===o):2!==a||(this.onEnd(o),s.avail_out=0,!0)},d.prototype.onData=function(e){this.chunks.push(e)},d.prototype.onEnd=function(e){e===o&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=n.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},i.Deflate=d,i.deflate=b,i.deflateRaw=function(e,i){return(i=i||{}).raw=!0,b(e,i)},i.gzip=function(e,i){return(i=i||{}).gzip=!0,b(e,i)}},function(e,i,r){"use strict";var t,n=r(0),f=r(15),a=r(6),s=r(7),l=r(2),o=0,u=1,c=3,h=4,d=5,b=0,k=1,w=-2,_=-3,m=-5,v=-1,p=1,g=2,y=3,M=4,E=0,A=2,S=8,T=9,C=15,R=8,L=286,x=30,P=19,O=2*L+1,B=15,I=3,D=258,N=D+I+1,F=32,U=42,j=69,H=73,z=91,Y=103,q=113,X=666,V=1,G=2,K=3,W=4,Z=3;function J(e,i){return e.msg=l[i],i}function Q(e){return(e<<1)-(e>4?9:0)}function $(e){for(var i=e.length;--i>=0;)e[i]=0}function ee(e){var i=e.state,r=i.pending;r>e.avail_out&&(r=e.avail_out),0!==r&&(n.arraySet(e.output,i.pending_buf,i.pending_out,r,e.next_out),e.next_out+=r,i.pending_out+=r,e.total_out+=r,e.avail_out-=r,i.pending-=r,0===i.pending&&(i.pending_out=0))}function ie(e,i){f._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,i),e.block_start=e.strstart,ee(e.strm)}function re(e,i){e.pending_buf[e.pending++]=i}function te(e,i){e.pending_buf[e.pending++]=i>>>8&255,e.pending_buf[e.pending++]=255&i}function ne(e,i){var r,t,n=e.max_chain_length,f=e.strstart,a=e.prev_length,s=e.nice_match,l=e.strstart>e.w_size-N?e.strstart-(e.w_size-N):0,o=e.window,u=e.w_mask,c=e.prev,h=e.strstart+D,d=o[f+a-1],b=o[f+a];e.prev_length>=e.good_match&&(n>>=2),s>e.lookahead&&(s=e.lookahead);do{if(o[(r=i)+a]===b&&o[r+a-1]===d&&o[r]===o[f]&&o[++r]===o[f+1]){f+=2,r++;do{}while(o[++f]===o[++r]&&o[++f]===o[++r]&&o[++f]===o[++r]&&o[++f]===o[++r]&&o[++f]===o[++r]&&o[++f]===o[++r]&&o[++f]===o[++r]&&o[++f]===o[++r]&&f<h);if(t=D-(h-f),f=h-D,t>a){if(e.match_start=i,a=t,t>=s)break;d=o[f+a-1],b=o[f+a]}}}while((i=c[i&u])>l&&0!=--n);return a<=e.lookahead?a:e.lookahead}function fe(e){var i,r,t,f,l,o,u,c,h,d,b=e.w_size;do{if(f=e.window_size-e.lookahead-e.strstart,e.strstart>=b+(b-N)){n.arraySet(e.window,e.window,b,b,0),e.match_start-=b,e.strstart-=b,e.block_start-=b,i=r=e.hash_size;do{t=e.head[--i],e.head[i]=t>=b?t-b:0}while(--r);i=r=b;do{t=e.prev[--i],e.prev[i]=t>=b?t-b:0}while(--r);f+=b}if(0===e.strm.avail_in)break;if(o=e.strm,u=e.window,c=e.strstart+e.lookahead,h=f,d=void 0,(d=o.avail_in)>h&&(d=h),r=0===d?0:(o.avail_in-=d,n.arraySet(u,o.input,o.next_in,d,c),1===o.state.wrap?o.adler=a(o.adler,u,d,c):2===o.state.wrap&&(o.adler=s(o.adler,u,d,c)),o.next_in+=d,o.total_in+=d,d),e.lookahead+=r,e.lookahead+e.insert>=I)for(l=e.strstart-e.insert,e.ins_h=e.window[l],e.ins_h=(e.ins_h<<e.hash_shift^e.window[l+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[l+I-1])&e.hash_mask,e.prev[l&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=l,l++,e.insert--,!(e.lookahead+e.insert<I)););}while(e.lookahead<N&&0!==e.strm.avail_in)}function ae(e,i){for(var r,t;;){if(e.lookahead<N){if(fe(e),e.lookahead<N&&i===o)return V;if(0===e.lookahead)break}if(r=0,e.lookahead>=I&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+I-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==r&&e.strstart-r<=e.w_size-N&&(e.match_length=ne(e,r)),e.match_length>=I)if(t=f._tr_tally(e,e.strstart-e.match_start,e.match_length-I),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=I){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+I-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart}while(0!=--e.match_length);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else t=f._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(t&&(ie(e,!1),0===e.strm.avail_out))return V}return e.insert=e.strstart<I-1?e.strstart:I-1,i===h?(ie(e,!0),0===e.strm.avail_out?K:W):e.last_lit&&(ie(e,!1),0===e.strm.avail_out)?V:G}function se(e,i){for(var r,t,n;;){if(e.lookahead<N){if(fe(e),e.lookahead<N&&i===o)return V;if(0===e.lookahead)break}if(r=0,e.lookahead>=I&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+I-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=I-1,0!==r&&e.prev_length<e.max_lazy_match&&e.strstart-r<=e.w_size-N&&(e.match_length=ne(e,r),e.match_length<=5&&(e.strategy===p||e.match_length===I&&e.strstart-e.match_start>4096)&&(e.match_length=I-1)),e.prev_length>=I&&e.match_length<=e.prev_length){n=e.strstart+e.lookahead-I,t=f._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-I),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=n&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+I-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart)}while(0!=--e.prev_length);if(e.match_available=0,e.match_length=I-1,e.strstart++,t&&(ie(e,!1),0===e.strm.avail_out))return V}else if(e.match_available){if((t=f._tr_tally(e,0,e.window[e.strstart-1]))&&ie(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return V}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(t=f._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<I-1?e.strstart:I-1,i===h?(ie(e,!0),0===e.strm.avail_out?K:W):e.last_lit&&(ie(e,!1),0===e.strm.avail_out)?V:G}function le(e,i,r,t,n){this.good_length=e,this.max_lazy=i,this.nice_length=r,this.max_chain=t,this.func=n}function oe(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=S,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new n.Buf16(2*O),this.dyn_dtree=new n.Buf16(2*(2*x+1)),this.bl_tree=new n.Buf16(2*(2*P+1)),$(this.dyn_ltree),$(this.dyn_dtree),$(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new n.Buf16(B+1),this.heap=new n.Buf16(2*L+1),$(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new n.Buf16(2*L+1),$(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function ue(e){var i;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=A,(i=e.state).pending=0,i.pending_out=0,i.wrap<0&&(i.wrap=-i.wrap),i.status=i.wrap?U:q,e.adler=2===i.wrap?0:1,i.last_flush=o,f._tr_init(i),b):J(e,w)}function ce(e){var i,r=ue(e);return r===b&&((i=e.state).window_size=2*i.w_size,$(i.head),i.max_lazy_match=t[i.level].max_lazy,i.good_match=t[i.level].good_length,i.nice_match=t[i.level].nice_length,i.max_chain_length=t[i.level].max_chain,i.strstart=0,i.block_start=0,i.lookahead=0,i.insert=0,i.match_length=i.prev_length=I-1,i.match_available=0,i.ins_h=0),r}function he(e,i,r,t,f,a){if(!e)return w;var s=1;if(i===v&&(i=6),t<0?(s=0,t=-t):t>15&&(s=2,t-=16),f<1||f>T||r!==S||t<8||t>15||i<0||i>9||a<0||a>M)return J(e,w);8===t&&(t=9);var l=new oe;return e.state=l,l.strm=e,l.wrap=s,l.gzhead=null,l.w_bits=t,l.w_size=1<<l.w_bits,l.w_mask=l.w_size-1,l.hash_bits=f+7,l.hash_size=1<<l.hash_bits,l.hash_mask=l.hash_size-1,l.hash_shift=~~((l.hash_bits+I-1)/I),l.window=new n.Buf8(2*l.w_size),l.head=new n.Buf16(l.hash_size),l.prev=new n.Buf16(l.w_size),l.lit_bufsize=1<<f+6,l.pending_buf_size=4*l.lit_bufsize,l.pending_buf=new n.Buf8(l.pending_buf_size),l.d_buf=1*l.lit_bufsize,l.l_buf=3*l.lit_bufsize,l.level=i,l.strategy=a,l.method=r,ce(e)}t=[new le(0,0,0,0,(function(e,i){var r=65535;for(r>e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(fe(e),0===e.lookahead&&i===o)return V;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var t=e.block_start+r;if((0===e.strstart||e.strstart>=t)&&(e.lookahead=e.strstart-t,e.strstart=t,ie(e,!1),0===e.strm.avail_out))return V;if(e.strstart-e.block_start>=e.w_size-N&&(ie(e,!1),0===e.strm.avail_out))return V}return e.insert=0,i===h?(ie(e,!0),0===e.strm.avail_out?K:W):(e.strstart>e.block_start&&(ie(e,!1),e.strm.avail_out),V)})),new le(4,4,8,4,ae),new le(4,5,16,8,ae),new le(4,6,32,32,ae),new le(4,4,16,16,se),new le(8,16,32,32,se),new le(8,16,128,128,se),new le(8,32,128,256,se),new le(32,128,258,1024,se),new le(32,258,258,4096,se)],i.deflateInit=function(e,i){return he(e,i,S,C,R,E)},i.deflateInit2=he,i.deflateReset=ce,i.deflateResetKeep=ue,i.deflateSetHeader=function(e,i){return e&&e.state?2!==e.state.wrap?w:(e.state.gzhead=i,b):w},i.deflate=function(e,i){var r,n,a,l;if(!e||!e.state||i>d||i<0)return e?J(e,w):w;if(n=e.state,!e.output||!e.input&&0!==e.avail_in||n.status===X&&i!==h)return J(e,0===e.avail_out?m:w);if(n.strm=e,r=n.last_flush,n.last_flush=i,n.status===U)if(2===n.wrap)e.adler=0,re(n,31),re(n,139),re(n,8),n.gzhead?(re(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),re(n,255&n.gzhead.time),re(n,n.gzhead.time>>8&255),re(n,n.gzhead.time>>16&255),re(n,n.gzhead.time>>24&255),re(n,9===n.level?2:n.strategy>=g||n.level<2?4:0),re(n,255&n.gzhead.os),n.gzhead.extra&&n.gzhead.extra.length&&(re(n,255&n.gzhead.extra.length),re(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(e.adler=s(e.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=j):(re(n,0),re(n,0),re(n,0),re(n,0),re(n,0),re(n,9===n.level?2:n.strategy>=g||n.level<2?4:0),re(n,Z),n.status=q);else{var _=S+(n.w_bits-8<<4)<<8;_|=(n.strategy>=g||n.level<2?0:n.level<6?1:6===n.level?2:3)<<6,0!==n.strstart&&(_|=F),_+=31-_%31,n.status=q,te(n,_),0!==n.strstart&&(te(n,e.adler>>>16),te(n,65535&e.adler)),e.adler=1}if(n.status===j)if(n.gzhead.extra){for(a=n.pending;n.gzindex<(65535&n.gzhead.extra.length)&&(n.pending!==n.pending_buf_size||(n.gzhead.hcrc&&n.pending>a&&(e.adler=s(e.adler,n.pending_buf,n.pending-a,a)),ee(e),a=n.pending,n.pending!==n.pending_buf_size));)re(n,255&n.gzhead.extra[n.gzindex]),n.gzindex++;n.gzhead.hcrc&&n.pending>a&&(e.adler=s(e.adler,n.pending_buf,n.pending-a,a)),n.gzindex===n.gzhead.extra.length&&(n.gzindex=0,n.status=H)}else n.status=H;if(n.status===H)if(n.gzhead.name){a=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>a&&(e.adler=s(e.adler,n.pending_buf,n.pending-a,a)),ee(e),a=n.pending,n.pending===n.pending_buf_size)){l=1;break}l=n.gzindex<n.gzhead.name.length?255&n.gzhead.name.charCodeAt(n.gzindex++):0,re(n,l)}while(0!==l);n.gzhead.hcrc&&n.pending>a&&(e.adler=s(e.adler,n.pending_buf,n.pending-a,a)),0===l&&(n.gzindex=0,n.status=z)}else n.status=z;if(n.status===z)if(n.gzhead.comment){a=n.pending;do{if(n.pending===n.pending_buf_size&&(n.gzhead.hcrc&&n.pending>a&&(e.adler=s(e.adler,n.pending_buf,n.pending-a,a)),ee(e),a=n.pending,n.pending===n.pending_buf_size)){l=1;break}l=n.gzindex<n.gzhead.comment.length?255&n.gzhead.comment.charCodeAt(n.gzindex++):0,re(n,l)}while(0!==l);n.gzhead.hcrc&&n.pending>a&&(e.adler=s(e.adler,n.pending_buf,n.pending-a,a)),0===l&&(n.status=Y)}else n.status=Y;if(n.status===Y&&(n.gzhead.hcrc?(n.pending+2>n.pending_buf_size&&ee(e),n.pending+2<=n.pending_buf_size&&(re(n,255&e.adler),re(n,e.adler>>8&255),e.adler=0,n.status=q)):n.status=q),0!==n.pending){if(ee(e),0===e.avail_out)return n.last_flush=-1,b}else if(0===e.avail_in&&Q(i)<=Q(r)&&i!==h)return J(e,m);if(n.status===X&&0!==e.avail_in)return J(e,m);if(0!==e.avail_in||0!==n.lookahead||i!==o&&n.status!==X){var v=n.strategy===g?function(e,i){for(var r;;){if(0===e.lookahead&&(fe(e),0===e.lookahead)){if(i===o)return V;break}if(e.match_length=0,r=f._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(ie(e,!1),0===e.strm.avail_out))return V}return e.insert=0,i===h?(ie(e,!0),0===e.strm.avail_out?K:W):e.last_lit&&(ie(e,!1),0===e.strm.avail_out)?V:G}(n,i):n.strategy===y?function(e,i){for(var r,t,n,a,s=e.window;;){if(e.lookahead<=D){if(fe(e),e.lookahead<=D&&i===o)return V;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=I&&e.strstart>0&&(t=s[n=e.strstart-1])===s[++n]&&t===s[++n]&&t===s[++n]){a=e.strstart+D;do{}while(t===s[++n]&&t===s[++n]&&t===s[++n]&&t===s[++n]&&t===s[++n]&&t===s[++n]&&t===s[++n]&&t===s[++n]&&n<a);e.match_length=D-(a-n),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=I?(r=f._tr_tally(e,1,e.match_length-I),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=f._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(ie(e,!1),0===e.strm.avail_out))return V}return e.insert=0,i===h?(ie(e,!0),0===e.strm.avail_out?K:W):e.last_lit&&(ie(e,!1),0===e.strm.avail_out)?V:G}(n,i):t[n.level].func(n,i);if(v!==K&&v!==W||(n.status=X),v===V||v===K)return 0===e.avail_out&&(n.last_flush=-1),b;if(v===G&&(i===u?f._tr_align(n):i!==d&&(f._tr_stored_block(n,0,0,!1),i===c&&($(n.head),0===n.lookahead&&(n.strstart=0,n.block_start=0,n.insert=0))),ee(e),0===e.avail_out))return n.last_flush=-1,b}return i!==h?b:n.wrap<=0?k:(2===n.wrap?(re(n,255&e.adler),re(n,e.adler>>8&255),re(n,e.adler>>16&255),re(n,e.adler>>24&255),re(n,255&e.total_in),re(n,e.total_in>>8&255),re(n,e.total_in>>16&255),re(n,e.total_in>>24&255)):(te(n,e.adler>>>16),te(n,65535&e.adler)),ee(e),n.wrap>0&&(n.wrap=-n.wrap),0!==n.pending?b:k)},i.deflateEnd=function(e){var i;return e&&e.state?(i=e.state.status)!==U&&i!==j&&i!==H&&i!==z&&i!==Y&&i!==q&&i!==X?J(e,w):(e.state=null,i===q?J(e,_):b):w},i.deflateSetDictionary=function(e,i){var r,t,f,s,l,o,u,c,h=i.length;if(!e||!e.state)return w;if(2===(s=(r=e.state).wrap)||1===s&&r.status!==U||r.lookahead)return w;for(1===s&&(e.adler=a(e.adler,i,h,0)),r.wrap=0,h>=r.w_size&&(0===s&&($(r.head),r.strstart=0,r.block_start=0,r.insert=0),c=new n.Buf8(r.w_size),n.arraySet(c,i,h-r.w_size,r.w_size,0),i=c,h=r.w_size),l=e.avail_in,o=e.next_in,u=e.input,e.avail_in=h,e.next_in=0,e.input=i,fe(r);r.lookahead>=I;){t=r.strstart,f=r.lookahead-(I-1);do{r.ins_h=(r.ins_h<<r.hash_shift^r.window[t+I-1])&r.hash_mask,r.prev[t&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=t,t++}while(--f);r.strstart=t,r.lookahead=I-1,fe(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=I-1,r.match_available=0,e.next_in=o,e.input=u,e.avail_in=l,r.wrap=s,b},i.deflateInfo="pako deflate (from Nodeca project)"},function(e,i,r){"use strict";var t=r(0),n=4,f=0,a=1,s=2;function l(e){for(var i=e.length;--i>=0;)e[i]=0}var o=0,u=1,c=2,h=29,d=256,b=d+1+h,k=30,w=19,_=2*b+1,m=15,v=16,p=7,g=256,y=16,M=17,E=18,A=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],S=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],T=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],C=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],R=new Array(2*(b+2));l(R);var L=new Array(2*k);l(L);var x=new Array(512);l(x);var P=new Array(256);l(P);var O=new Array(h);l(O);var B,I,D,N=new Array(k);function F(e,i,r,t,n){this.static_tree=e,this.extra_bits=i,this.extra_base=r,this.elems=t,this.max_length=n,this.has_stree=e&&e.length}function U(e,i){this.dyn_tree=e,this.max_code=0,this.stat_desc=i}function j(e){return e<256?x[e]:x[256+(e>>>7)]}function H(e,i){e.pending_buf[e.pending++]=255&i,e.pending_buf[e.pending++]=i>>>8&255}function z(e,i,r){e.bi_valid>v-r?(e.bi_buf|=i<<e.bi_valid&65535,H(e,e.bi_buf),e.bi_buf=i>>v-e.bi_valid,e.bi_valid+=r-v):(e.bi_buf|=i<<e.bi_valid&65535,e.bi_valid+=r)}function Y(e,i,r){z(e,r[2*i],r[2*i+1])}function q(e,i){var r=0;do{r|=1&e,e>>>=1,r<<=1}while(--i>0);return r>>>1}function X(e,i,r){var t,n,f=new Array(m+1),a=0;for(t=1;t<=m;t++)f[t]=a=a+r[t-1]<<1;for(n=0;n<=i;n++){var s=e[2*n+1];0!==s&&(e[2*n]=q(f[s]++,s))}}function V(e){var i;for(i=0;i<b;i++)e.dyn_ltree[2*i]=0;for(i=0;i<k;i++)e.dyn_dtree[2*i]=0;for(i=0;i<w;i++)e.bl_tree[2*i]=0;e.dyn_ltree[2*g]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function G(e){e.bi_valid>8?H(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function K(e,i,r,t){var n=2*i,f=2*r;return e[n]<e[f]||e[n]===e[f]&&t[i]<=t[r]}function W(e,i,r){for(var t=e.heap[r],n=r<<1;n<=e.heap_len&&(n<e.heap_len&&K(i,e.heap[n+1],e.heap[n],e.depth)&&n++,!K(i,t,e.heap[n],e.depth));)e.heap[r]=e.heap[n],r=n,n<<=1;e.heap[r]=t}function Z(e,i,r){var t,n,f,a,s=0;if(0!==e.last_lit)do{t=e.pending_buf[e.d_buf+2*s]<<8|e.pending_buf[e.d_buf+2*s+1],n=e.pending_buf[e.l_buf+s],s++,0===t?Y(e,n,i):(Y(e,(f=P[n])+d+1,i),0!==(a=A[f])&&z(e,n-=O[f],a),Y(e,f=j(--t),r),0!==(a=S[f])&&z(e,t-=N[f],a))}while(s<e.last_lit);Y(e,g,i)}function J(e,i){var r,t,n,f=i.dyn_tree,a=i.stat_desc.static_tree,s=i.stat_desc.has_stree,l=i.stat_desc.elems,o=-1;for(e.heap_len=0,e.heap_max=_,r=0;r<l;r++)0!==f[2*r]?(e.heap[++e.heap_len]=o=r,e.depth[r]=0):f[2*r+1]=0;for(;e.heap_len<2;)f[2*(n=e.heap[++e.heap_len]=o<2?++o:0)]=1,e.depth[n]=0,e.opt_len--,s&&(e.static_len-=a[2*n+1]);for(i.max_code=o,r=e.heap_len>>1;r>=1;r--)W(e,f,r);n=l;do{r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],W(e,f,1),t=e.heap[1],e.heap[--e.heap_max]=r,e.heap[--e.heap_max]=t,f[2*n]=f[2*r]+f[2*t],e.depth[n]=(e.depth[r]>=e.depth[t]?e.depth[r]:e.depth[t])+1,f[2*r+1]=f[2*t+1]=n,e.heap[1]=n++,W(e,f,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,i){var r,t,n,f,a,s,l=i.dyn_tree,o=i.max_code,u=i.stat_desc.static_tree,c=i.stat_desc.has_stree,h=i.stat_desc.extra_bits,d=i.stat_desc.extra_base,b=i.stat_desc.max_length,k=0;for(f=0;f<=m;f++)e.bl_count[f]=0;for(l[2*e.heap[e.heap_max]+1]=0,r=e.heap_max+1;r<_;r++)(f=l[2*l[2*(t=e.heap[r])+1]+1]+1)>b&&(f=b,k++),l[2*t+1]=f,t>o||(e.bl_count[f]++,a=0,t>=d&&(a=h[t-d]),s=l[2*t],e.opt_len+=s*(f+a),c&&(e.static_len+=s*(u[2*t+1]+a)));if(0!==k){do{for(f=b-1;0===e.bl_count[f];)f--;e.bl_count[f]--,e.bl_count[f+1]+=2,e.bl_count[b]--,k-=2}while(k>0);for(f=b;0!==f;f--)for(t=e.bl_count[f];0!==t;)(n=e.heap[--r])>o||(l[2*n+1]!==f&&(e.opt_len+=(f-l[2*n+1])*l[2*n],l[2*n+1]=f),t--)}}(e,i),X(f,o,e.bl_count)}function Q(e,i,r){var t,n,f=-1,a=i[1],s=0,l=7,o=4;for(0===a&&(l=138,o=3),i[2*(r+1)+1]=65535,t=0;t<=r;t++)n=a,a=i[2*(t+1)+1],++s<l&&n===a||(s<o?e.bl_tree[2*n]+=s:0!==n?(n!==f&&e.bl_tree[2*n]++,e.bl_tree[2*y]++):s<=10?e.bl_tree[2*M]++:e.bl_tree[2*E]++,s=0,f=n,0===a?(l=138,o=3):n===a?(l=6,o=3):(l=7,o=4))}function $(e,i,r){var t,n,f=-1,a=i[1],s=0,l=7,o=4;for(0===a&&(l=138,o=3),t=0;t<=r;t++)if(n=a,a=i[2*(t+1)+1],!(++s<l&&n===a)){if(s<o)do{Y(e,n,e.bl_tree)}while(0!=--s);else 0!==n?(n!==f&&(Y(e,n,e.bl_tree),s--),Y(e,y,e.bl_tree),z(e,s-3,2)):s<=10?(Y(e,M,e.bl_tree),z(e,s-3,3)):(Y(e,E,e.bl_tree),z(e,s-11,7));s=0,f=n,0===a?(l=138,o=3):n===a?(l=6,o=3):(l=7,o=4)}}l(N);var ee=!1;function ie(e,i,r,n){z(e,(o<<1)+(n?1:0),3),function(e,i,r,n){G(e),n&&(H(e,r),H(e,~r)),t.arraySet(e.pending_buf,e.window,i,r,e.pending),e.pending+=r}(e,i,r,!0)}i._tr_init=function(e){ee||(!function(){var e,i,r,t,n,f=new Array(m+1);for(r=0,t=0;t<h-1;t++)for(O[t]=r,e=0;e<1<<A[t];e++)P[r++]=t;for(P[r-1]=t,n=0,t=0;t<16;t++)for(N[t]=n,e=0;e<1<<S[t];e++)x[n++]=t;for(n>>=7;t<k;t++)for(N[t]=n<<7,e=0;e<1<<S[t]-7;e++)x[256+n++]=t;for(i=0;i<=m;i++)f[i]=0;for(e=0;e<=143;)R[2*e+1]=8,e++,f[8]++;for(;e<=255;)R[2*e+1]=9,e++,f[9]++;for(;e<=279;)R[2*e+1]=7,e++,f[7]++;for(;e<=287;)R[2*e+1]=8,e++,f[8]++;for(X(R,b+1,f),e=0;e<k;e++)L[2*e+1]=5,L[2*e]=q(e,5);B=new F(R,A,d+1,b,m),I=new F(L,S,0,k,m),D=new F(new Array(0),T,0,w,p)}(),ee=!0),e.l_desc=new U(e.dyn_ltree,B),e.d_desc=new U(e.dyn_dtree,I),e.bl_desc=new U(e.bl_tree,D),e.bi_buf=0,e.bi_valid=0,V(e)},i._tr_stored_block=ie,i._tr_flush_block=function(e,i,r,t){var l,o,h=0;e.level>0?(e.strm.data_type===s&&(e.strm.data_type=function(e){var i,r=4093624447;for(i=0;i<=31;i++,r>>>=1)if(1&r&&0!==e.dyn_ltree[2*i])return f;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return a;for(i=32;i<d;i++)if(0!==e.dyn_ltree[2*i])return a;return f}(e)),J(e,e.l_desc),J(e,e.d_desc),h=function(e){var i;for(Q(e,e.dyn_ltree,e.l_desc.max_code),Q(e,e.dyn_dtree,e.d_desc.max_code),J(e,e.bl_desc),i=w-1;i>=3&&0===e.bl_tree[2*C[i]+1];i--);return e.opt_len+=3*(i+1)+5+5+4,i}(e),l=e.opt_len+3+7>>>3,(o=e.static_len+3+7>>>3)<=l&&(l=o)):l=o=r+5,r+4<=l&&-1!==i?ie(e,i,r,t):e.strategy===n||o===l?(z(e,(u<<1)+(t?1:0),3),Z(e,R,L)):(z(e,(c<<1)+(t?1:0),3),function(e,i,r,t){var n;for(z(e,i-257,5),z(e,r-1,5),z(e,t-4,4),n=0;n<t;n++)z(e,e.bl_tree[2*C[n]+1],3);$(e,e.dyn_ltree,i-1),$(e,e.dyn_dtree,r-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,h+1),Z(e,e.dyn_ltree,e.dyn_dtree)),V(e),t&&G(e)},i._tr_tally=function(e,i,r){return e.pending_buf[e.d_buf+2*e.last_lit]=i>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&i,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===i?e.dyn_ltree[2*r]++:(e.matches++,i--,e.dyn_ltree[2*(P[r]+d+1)]++,e.dyn_dtree[2*j(i)]++),e.last_lit===e.lit_bufsize-1},i._tr_align=function(e){z(e,u<<1,3),Y(e,g,R),function(e){16===e.bi_valid?(H(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},function(e,i,r){"use strict";var t=r(17),n=r(0),f=r(8),a=r(10),s=r(2),l=r(9),o=r(20),u=Object.prototype.toString;function c(e){if(!(this instanceof c))return new c(e);this.options=n.assign({chunkSize:16384,windowBits:0,to:""},e||{});var i=this.options;i.raw&&i.windowBits>=0&&i.windowBits<16&&(i.windowBits=-i.windowBits,0===i.windowBits&&(i.windowBits=-15)),!(i.windowBits>=0&&i.windowBits<16)||e&&e.windowBits||(i.windowBits+=32),i.windowBits>15&&i.windowBits<48&&0==(15&i.windowBits)&&(i.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new l,this.strm.avail_out=0;var r=t.inflateInit2(this.strm,i.windowBits);if(r!==a.Z_OK)throw new Error(s[r]);if(this.header=new o,t.inflateGetHeader(this.strm,this.header),i.dictionary&&("string"==typeof i.dictionary?i.dictionary=f.string2buf(i.dictionary):"[object ArrayBuffer]"===u.call(i.dictionary)&&(i.dictionary=new Uint8Array(i.dictionary)),i.raw&&(r=t.inflateSetDictionary(this.strm,i.dictionary))!==a.Z_OK))throw new Error(s[r])}function h(e,i){var r=new c(i);if(r.push(e,!0),r.err)throw r.msg||s[r.err];return r.result}c.prototype.push=function(e,i){var r,s,l,o,c,h=this.strm,d=this.options.chunkSize,b=this.options.dictionary,k=!1;if(this.ended)return!1;s=i===~~i?i:!0===i?a.Z_FINISH:a.Z_NO_FLUSH,"string"==typeof e?h.input=f.binstring2buf(e):"[object ArrayBuffer]"===u.call(e)?h.input=new Uint8Array(e):h.input=e,h.next_in=0,h.avail_in=h.input.length;do{if(0===h.avail_out&&(h.output=new n.Buf8(d),h.next_out=0,h.avail_out=d),(r=t.inflate(h,a.Z_NO_FLUSH))===a.Z_NEED_DICT&&b&&(r=t.inflateSetDictionary(this.strm,b)),r===a.Z_BUF_ERROR&&!0===k&&(r=a.Z_OK,k=!1),r!==a.Z_STREAM_END&&r!==a.Z_OK)return this.onEnd(r),this.ended=!0,!1;h.next_out&&(0!==h.avail_out&&r!==a.Z_STREAM_END&&(0!==h.avail_in||s!==a.Z_FINISH&&s!==a.Z_SYNC_FLUSH)||("string"===this.options.to?(l=f.utf8border(h.output,h.next_out),o=h.next_out-l,c=f.buf2string(h.output,l),h.next_out=o,h.avail_out=d-o,o&&n.arraySet(h.output,h.output,l,o,0),this.onData(c)):this.onData(n.shrinkBuf(h.output,h.next_out)))),0===h.avail_in&&0===h.avail_out&&(k=!0)}while((h.avail_in>0||0===h.avail_out)&&r!==a.Z_STREAM_END);return r===a.Z_STREAM_END&&(s=a.Z_FINISH),s===a.Z_FINISH?(r=t.inflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===a.Z_OK):s!==a.Z_SYNC_FLUSH||(this.onEnd(a.Z_OK),h.avail_out=0,!0)},c.prototype.onData=function(e){this.chunks.push(e)},c.prototype.onEnd=function(e){e===a.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=n.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},i.Inflate=c,i.inflate=h,i.inflateRaw=function(e,i){return(i=i||{}).raw=!0,h(e,i)},i.ungzip=h},function(e,i,r){"use strict";var t=r(0),n=r(6),f=r(7),a=r(18),s=r(19),l=0,o=1,u=2,c=4,h=5,d=6,b=0,k=1,w=2,_=-2,m=-3,v=-4,p=-5,g=8,y=1,M=2,E=3,A=4,S=5,T=6,C=7,R=8,L=9,x=10,P=11,O=12,B=13,I=14,D=15,N=16,F=17,U=18,j=19,H=20,z=21,Y=22,q=23,X=24,V=25,G=26,K=27,W=28,Z=29,J=30,Q=31,$=32,ee=852,ie=592,re=15;function te(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function ne(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new t.Buf16(320),this.work=new t.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function fe(e){var i;return e&&e.state?(i=e.state,e.total_in=e.total_out=i.total=0,e.msg="",i.wrap&&(e.adler=1&i.wrap),i.mode=y,i.last=0,i.havedict=0,i.dmax=32768,i.head=null,i.hold=0,i.bits=0,i.lencode=i.lendyn=new t.Buf32(ee),i.distcode=i.distdyn=new t.Buf32(ie),i.sane=1,i.back=-1,b):_}function ae(e){var i;return e&&e.state?((i=e.state).wsize=0,i.whave=0,i.wnext=0,fe(e)):_}function se(e,i){var r,t;return e&&e.state?(t=e.state,i<0?(r=0,i=-i):(r=1+(i>>4),i<48&&(i&=15)),i&&(i<8||i>15)?_:(null!==t.window&&t.wbits!==i&&(t.window=null),t.wrap=r,t.wbits=i,ae(e))):_}function le(e,i){var r,t;return e?(t=new ne,e.state=t,t.window=null,(r=se(e,i))!==b&&(e.state=null),r):_}var oe,ue,ce=!0;function he(e){if(ce){var i;for(oe=new t.Buf32(512),ue=new t.Buf32(32),i=0;i<144;)e.lens[i++]=8;for(;i<256;)e.lens[i++]=9;for(;i<280;)e.lens[i++]=7;for(;i<288;)e.lens[i++]=8;for(s(o,e.lens,0,288,oe,0,e.work,{bits:9}),i=0;i<32;)e.lens[i++]=5;s(u,e.lens,0,32,ue,0,e.work,{bits:5}),ce=!1}e.lencode=oe,e.lenbits=9,e.distcode=ue,e.distbits=5}function de(e,i,r,n){var f,a=e.state;return null===a.window&&(a.wsize=1<<a.wbits,a.wnext=0,a.whave=0,a.window=new t.Buf8(a.wsize)),n>=a.wsize?(t.arraySet(a.window,i,r-a.wsize,a.wsize,0),a.wnext=0,a.whave=a.wsize):((f=a.wsize-a.wnext)>n&&(f=n),t.arraySet(a.window,i,r-n,f,a.wnext),(n-=f)?(t.arraySet(a.window,i,r-n,n,0),a.wnext=n,a.whave=a.wsize):(a.wnext+=f,a.wnext===a.wsize&&(a.wnext=0),a.whave<a.wsize&&(a.whave+=f))),0}i.inflateReset=ae,i.inflateReset2=se,i.inflateResetKeep=fe,i.inflateInit=function(e){return le(e,re)},i.inflateInit2=le,i.inflate=function(e,i){var r,ee,ie,re,ne,fe,ae,se,le,oe,ue,ce,be,ke,we,_e,me,ve,pe,ge,ye,Me,Ee,Ae,Se=0,Te=new t.Buf8(4),Ce=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return _;(r=e.state).mode===O&&(r.mode=B),ne=e.next_out,ie=e.output,ae=e.avail_out,re=e.next_in,ee=e.input,fe=e.avail_in,se=r.hold,le=r.bits,oe=fe,ue=ae,Me=b;e:for(;;)switch(r.mode){case y:if(0===r.wrap){r.mode=B;break}for(;le<16;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}if(2&r.wrap&&35615===se){r.check=0,Te[0]=255&se,Te[1]=se>>>8&255,r.check=f(r.check,Te,2,0),se=0,le=0,r.mode=M;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&se)<<8)+(se>>8))%31){e.msg="incorrect header check",r.mode=J;break}if((15&se)!==g){e.msg="unknown compression method",r.mode=J;break}if(le-=4,ye=8+(15&(se>>>=4)),0===r.wbits)r.wbits=ye;else if(ye>r.wbits){e.msg="invalid window size",r.mode=J;break}r.dmax=1<<ye,e.adler=r.check=1,r.mode=512&se?x:O,se=0,le=0;break;case M:for(;le<16;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}if(r.flags=se,(255&r.flags)!==g){e.msg="unknown compression method",r.mode=J;break}if(57344&r.flags){e.msg="unknown header flags set",r.mode=J;break}r.head&&(r.head.text=se>>8&1),512&r.flags&&(Te[0]=255&se,Te[1]=se>>>8&255,r.check=f(r.check,Te,2,0)),se=0,le=0,r.mode=E;case E:for(;le<32;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}r.head&&(r.head.time=se),512&r.flags&&(Te[0]=255&se,Te[1]=se>>>8&255,Te[2]=se>>>16&255,Te[3]=se>>>24&255,r.check=f(r.check,Te,4,0)),se=0,le=0,r.mode=A;case A:for(;le<16;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}r.head&&(r.head.xflags=255&se,r.head.os=se>>8),512&r.flags&&(Te[0]=255&se,Te[1]=se>>>8&255,r.check=f(r.check,Te,2,0)),se=0,le=0,r.mode=S;case S:if(1024&r.flags){for(;le<16;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}r.length=se,r.head&&(r.head.extra_len=se),512&r.flags&&(Te[0]=255&se,Te[1]=se>>>8&255,r.check=f(r.check,Te,2,0)),se=0,le=0}else r.head&&(r.head.extra=null);r.mode=T;case T:if(1024&r.flags&&((ce=r.length)>fe&&(ce=fe),ce&&(r.head&&(ye=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),t.arraySet(r.head.extra,ee,re,ce,ye)),512&r.flags&&(r.check=f(r.check,ee,ce,re)),fe-=ce,re+=ce,r.length-=ce),r.length))break e;r.length=0,r.mode=C;case C:if(2048&r.flags){if(0===fe)break e;ce=0;do{ye=ee[re+ce++],r.head&&ye&&r.length<65536&&(r.head.name+=String.fromCharCode(ye))}while(ye&&ce<fe);if(512&r.flags&&(r.check=f(r.check,ee,ce,re)),fe-=ce,re+=ce,ye)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=R;case R:if(4096&r.flags){if(0===fe)break e;ce=0;do{ye=ee[re+ce++],r.head&&ye&&r.length<65536&&(r.head.comment+=String.fromCharCode(ye))}while(ye&&ce<fe);if(512&r.flags&&(r.check=f(r.check,ee,ce,re)),fe-=ce,re+=ce,ye)break e}else r.head&&(r.head.comment=null);r.mode=L;case L:if(512&r.flags){for(;le<16;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}if(se!==(65535&r.check)){e.msg="header crc mismatch",r.mode=J;break}se=0,le=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=O;break;case x:for(;le<32;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}e.adler=r.check=te(se),se=0,le=0,r.mode=P;case P:if(0===r.havedict)return e.next_out=ne,e.avail_out=ae,e.next_in=re,e.avail_in=fe,r.hold=se,r.bits=le,w;e.adler=r.check=1,r.mode=O;case O:if(i===h||i===d)break e;case B:if(r.last){se>>>=7&le,le-=7&le,r.mode=K;break}for(;le<3;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}switch(r.last=1&se,le-=1,3&(se>>>=1)){case 0:r.mode=I;break;case 1:if(he(r),r.mode=H,i===d){se>>>=2,le-=2;break e}break;case 2:r.mode=F;break;case 3:e.msg="invalid block type",r.mode=J}se>>>=2,le-=2;break;case I:for(se>>>=7&le,le-=7&le;le<32;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}if((65535&se)!=(se>>>16^65535)){e.msg="invalid stored block lengths",r.mode=J;break}if(r.length=65535&se,se=0,le=0,r.mode=D,i===d)break e;case D:r.mode=N;case N:if(ce=r.length){if(ce>fe&&(ce=fe),ce>ae&&(ce=ae),0===ce)break e;t.arraySet(ie,ee,re,ce,ne),fe-=ce,re+=ce,ae-=ce,ne+=ce,r.length-=ce;break}r.mode=O;break;case F:for(;le<14;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}if(r.nlen=257+(31&se),se>>>=5,le-=5,r.ndist=1+(31&se),se>>>=5,le-=5,r.ncode=4+(15&se),se>>>=4,le-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=J;break}r.have=0,r.mode=U;case U:for(;r.have<r.ncode;){for(;le<3;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}r.lens[Ce[r.have++]]=7&se,se>>>=3,le-=3}for(;r.have<19;)r.lens[Ce[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,Ee={bits:r.lenbits},Me=s(l,r.lens,0,19,r.lencode,0,r.work,Ee),r.lenbits=Ee.bits,Me){e.msg="invalid code lengths set",r.mode=J;break}r.have=0,r.mode=j;case j:for(;r.have<r.nlen+r.ndist;){for(;_e=(Se=r.lencode[se&(1<<r.lenbits)-1])>>>16&255,me=65535&Se,!((we=Se>>>24)<=le);){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}if(me<16)se>>>=we,le-=we,r.lens[r.have++]=me;else{if(16===me){for(Ae=we+2;le<Ae;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}if(se>>>=we,le-=we,0===r.have){e.msg="invalid bit length repeat",r.mode=J;break}ye=r.lens[r.have-1],ce=3+(3&se),se>>>=2,le-=2}else if(17===me){for(Ae=we+3;le<Ae;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}le-=we,ye=0,ce=3+(7&(se>>>=we)),se>>>=3,le-=3}else{for(Ae=we+7;le<Ae;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}le-=we,ye=0,ce=11+(127&(se>>>=we)),se>>>=7,le-=7}if(r.have+ce>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=J;break}for(;ce--;)r.lens[r.have++]=ye}}if(r.mode===J)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=J;break}if(r.lenbits=9,Ee={bits:r.lenbits},Me=s(o,r.lens,0,r.nlen,r.lencode,0,r.work,Ee),r.lenbits=Ee.bits,Me){e.msg="invalid literal/lengths set",r.mode=J;break}if(r.distbits=6,r.distcode=r.distdyn,Ee={bits:r.distbits},Me=s(u,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,Ee),r.distbits=Ee.bits,Me){e.msg="invalid distances set",r.mode=J;break}if(r.mode=H,i===d)break e;case H:r.mode=z;case z:if(fe>=6&&ae>=258){e.next_out=ne,e.avail_out=ae,e.next_in=re,e.avail_in=fe,r.hold=se,r.bits=le,a(e,ue),ne=e.next_out,ie=e.output,ae=e.avail_out,re=e.next_in,ee=e.input,fe=e.avail_in,se=r.hold,le=r.bits,r.mode===O&&(r.back=-1);break}for(r.back=0;_e=(Se=r.lencode[se&(1<<r.lenbits)-1])>>>16&255,me=65535&Se,!((we=Se>>>24)<=le);){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}if(_e&&0==(240&_e)){for(ve=we,pe=_e,ge=me;_e=(Se=r.lencode[ge+((se&(1<<ve+pe)-1)>>ve)])>>>16&255,me=65535&Se,!(ve+(we=Se>>>24)<=le);){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}se>>>=ve,le-=ve,r.back+=ve}if(se>>>=we,le-=we,r.back+=we,r.length=me,0===_e){r.mode=G;break}if(32&_e){r.back=-1,r.mode=O;break}if(64&_e){e.msg="invalid literal/length code",r.mode=J;break}r.extra=15&_e,r.mode=Y;case Y:if(r.extra){for(Ae=r.extra;le<Ae;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}r.length+=se&(1<<r.extra)-1,se>>>=r.extra,le-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=q;case q:for(;_e=(Se=r.distcode[se&(1<<r.distbits)-1])>>>16&255,me=65535&Se,!((we=Se>>>24)<=le);){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}if(0==(240&_e)){for(ve=we,pe=_e,ge=me;_e=(Se=r.distcode[ge+((se&(1<<ve+pe)-1)>>ve)])>>>16&255,me=65535&Se,!(ve+(we=Se>>>24)<=le);){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}se>>>=ve,le-=ve,r.back+=ve}if(se>>>=we,le-=we,r.back+=we,64&_e){e.msg="invalid distance code",r.mode=J;break}r.offset=me,r.extra=15&_e,r.mode=X;case X:if(r.extra){for(Ae=r.extra;le<Ae;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}r.offset+=se&(1<<r.extra)-1,se>>>=r.extra,le-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=J;break}r.mode=V;case V:if(0===ae)break e;if(ce=ue-ae,r.offset>ce){if((ce=r.offset-ce)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=J;break}ce>r.wnext?(ce-=r.wnext,be=r.wsize-ce):be=r.wnext-ce,ce>r.length&&(ce=r.length),ke=r.window}else ke=ie,be=ne-r.offset,ce=r.length;ce>ae&&(ce=ae),ae-=ce,r.length-=ce;do{ie[ne++]=ke[be++]}while(--ce);0===r.length&&(r.mode=z);break;case G:if(0===ae)break e;ie[ne++]=r.length,ae--,r.mode=z;break;case K:if(r.wrap){for(;le<32;){if(0===fe)break e;fe--,se|=ee[re++]<<le,le+=8}if(ue-=ae,e.total_out+=ue,r.total+=ue,ue&&(e.adler=r.check=r.flags?f(r.check,ie,ue,ne-ue):n(r.check,ie,ue,ne-ue)),ue=ae,(r.flags?se:te(se))!==r.check){e.msg="incorrect data check",r.mode=J;break}se=0,le=0}r.mode=W;case W:if(r.wrap&&r.flags){for(;le<32;){if(0===fe)break e;fe--,se+=ee[re++]<<le,le+=8}if(se!==(4294967295&r.total)){e.msg="incorrect length check",r.mode=J;break}se=0,le=0}r.mode=Z;case Z:Me=k;break e;case J:Me=m;break e;case Q:return v;case $:default:return _}return e.next_out=ne,e.avail_out=ae,e.next_in=re,e.avail_in=fe,r.hold=se,r.bits=le,(r.wsize||ue!==e.avail_out&&r.mode<J&&(r.mode<K||i!==c))&&de(e,e.output,e.next_out,ue-e.avail_out)?(r.mode=Q,v):(oe-=e.avail_in,ue-=e.avail_out,e.total_in+=oe,e.total_out+=ue,r.total+=ue,r.wrap&&ue&&(e.adler=r.check=r.flags?f(r.check,ie,ue,e.next_out-ue):n(r.check,ie,ue,e.next_out-ue)),e.data_type=r.bits+(r.last?64:0)+(r.mode===O?128:0)+(r.mode===H||r.mode===D?256:0),(0===oe&&0===ue||i===c)&&Me===b&&(Me=p),Me)},i.inflateEnd=function(e){if(!e||!e.state)return _;var i=e.state;return i.window&&(i.window=null),e.state=null,b},i.inflateGetHeader=function(e,i){var r;return e&&e.state?0==(2&(r=e.state).wrap)?_:(r.head=i,i.done=!1,b):_},i.inflateSetDictionary=function(e,i){var r,t=i.length;return e&&e.state?0!==(r=e.state).wrap&&r.mode!==P?_:r.mode===P&&n(1,i,t,0)!==r.check?m:de(e,i,t,t)?(r.mode=Q,v):(r.havedict=1,b):_},i.inflateInfo="pako inflate (from Nodeca project)"},function(e,i,r){"use strict";e.exports=function(e,i){var r,t,n,f,a,s,l,o,u,c,h,d,b,k,w,_,m,v,p,g,y,M,E,A,S;r=e.state,t=e.next_in,A=e.input,n=t+(e.avail_in-5),f=e.next_out,S=e.output,a=f-(i-e.avail_out),s=f+(e.avail_out-257),l=r.dmax,o=r.wsize,u=r.whave,c=r.wnext,h=r.window,d=r.hold,b=r.bits,k=r.lencode,w=r.distcode,_=(1<<r.lenbits)-1,m=(1<<r.distbits)-1;e:do{b<15&&(d+=A[t++]<<b,b+=8,d+=A[t++]<<b,b+=8),v=k[d&_];i:for(;;){if(d>>>=p=v>>>24,b-=p,0===(p=v>>>16&255))S[f++]=65535&v;else{if(!(16&p)){if(0==(64&p)){v=k[(65535&v)+(d&(1<<p)-1)];continue i}if(32&p){r.mode=12;break e}e.msg="invalid literal/length code",r.mode=30;break e}g=65535&v,(p&=15)&&(b<p&&(d+=A[t++]<<b,b+=8),g+=d&(1<<p)-1,d>>>=p,b-=p),b<15&&(d+=A[t++]<<b,b+=8,d+=A[t++]<<b,b+=8),v=w[d&m];r:for(;;){if(d>>>=p=v>>>24,b-=p,!(16&(p=v>>>16&255))){if(0==(64&p)){v=w[(65535&v)+(d&(1<<p)-1)];continue r}e.msg="invalid distance code",r.mode=30;break e}if(y=65535&v,b<(p&=15)&&(d+=A[t++]<<b,(b+=8)<p&&(d+=A[t++]<<b,b+=8)),(y+=d&(1<<p)-1)>l){e.msg="invalid distance too far back",r.mode=30;break e}if(d>>>=p,b-=p,y>(p=f-a)){if((p=y-p)>u&&r.sane){e.msg="invalid distance too far back",r.mode=30;break e}if(M=0,E=h,0===c){if(M+=o-p,p<g){g-=p;do{S[f++]=h[M++]}while(--p);M=f-y,E=S}}else if(c<p){if(M+=o+c-p,(p-=c)<g){g-=p;do{S[f++]=h[M++]}while(--p);if(M=0,c<g){g-=p=c;do{S[f++]=h[M++]}while(--p);M=f-y,E=S}}}else if(M+=c-p,p<g){g-=p;do{S[f++]=h[M++]}while(--p);M=f-y,E=S}for(;g>2;)S[f++]=E[M++],S[f++]=E[M++],S[f++]=E[M++],g-=3;g&&(S[f++]=E[M++],g>1&&(S[f++]=E[M++]))}else{M=f-y;do{S[f++]=S[M++],S[f++]=S[M++],S[f++]=S[M++],g-=3}while(g>2);g&&(S[f++]=S[M++],g>1&&(S[f++]=S[M++]))}break}}break}}while(t<n&&f<s);t-=g=b>>3,d&=(1<<(b-=g<<3))-1,e.next_in=t,e.next_out=f,e.avail_in=t<n?n-t+5:5-(t-n),e.avail_out=f<s?s-f+257:257-(f-s),r.hold=d,r.bits=b}},function(e,i,r){"use strict";var t=r(0),n=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],f=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],a=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],s=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];e.exports=function(e,i,r,l,o,u,c,h){var d,b,k,w,_,m,v,p,g,y=h.bits,M=0,E=0,A=0,S=0,T=0,C=0,R=0,L=0,x=0,P=0,O=null,B=0,I=new t.Buf16(16),D=new t.Buf16(16),N=null,F=0;for(M=0;M<=15;M++)I[M]=0;for(E=0;E<l;E++)I[i[r+E]]++;for(T=y,S=15;S>=1&&0===I[S];S--);if(T>S&&(T=S),0===S)return o[u++]=20971520,o[u++]=20971520,h.bits=1,0;for(A=1;A<S&&0===I[A];A++);for(T<A&&(T=A),L=1,M=1;M<=15;M++)if(L<<=1,(L-=I[M])<0)return-1;if(L>0&&(0===e||1!==S))return-1;for(D[1]=0,M=1;M<15;M++)D[M+1]=D[M]+I[M];for(E=0;E<l;E++)0!==i[r+E]&&(c[D[i[r+E]]++]=E);if(0===e?(O=N=c,m=19):1===e?(O=n,B-=257,N=f,F-=257,m=256):(O=a,N=s,m=-1),P=0,E=0,M=A,_=u,C=T,R=0,k=-1,w=(x=1<<T)-1,1===e&&x>852||2===e&&x>592)return 1;for(;;){v=M-R,c[E]<m?(p=0,g=c[E]):c[E]>m?(p=N[F+c[E]],g=O[B+c[E]]):(p=96,g=0),d=1<<M-R,A=b=1<<C;do{o[_+(P>>R)+(b-=d)]=v<<24|p<<16|g|0}while(0!==b);for(d=1<<M-1;P&d;)d>>=1;if(0!==d?(P&=d-1,P+=d):P=0,E++,0==--I[M]){if(M===S)break;M=i[r+c[E]]}if(M>T&&(P&w)!==k){for(0===R&&(R=T),_+=A,L=1<<(C=M-R);C+R<S&&!((L-=I[C+R])<=0);)C++,L<<=1;if(x+=1<<C,1===e&&x>852||2===e&&x>592)return 1;o[k=P&w]=T<<24|C<<16|_-u|0}}return 0!==P&&(o[_+P]=M-R<<24|64<<16|0),h.bits=T,0}},function(e,i,r){"use strict";e.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},function(e,i,r){"use strict";r.r(i);var t,n={},f=!1;function a(e){if(n[e.taskType])return console.log(\'attempt to register duplicate task handler "\',e.taskType,\'"\'),!1;n[e.taskType]=e,f&&e.initialize(t.taskConfiguration)}self.onmessage=function(e){if("initialize"!==e.data.taskType){if("loadWebWorkerTask"===e.data.taskType)return i=e.data,t=i.config,void self.importScripts(i.sourcePath);var i;if(n[e.data.taskType])try{n[e.data.taskType].handler(e.data,(function(i,r){self.postMessage({taskType:e.data.taskType,status:"success",result:i,workerIndex:e.data.workerIndex},r)}))}catch(i){console.log("task ".concat(e.data.taskType," failed - ").concat(i.message)),self.postMessage({taskType:e.data.taskType,status:"failed",result:i.message,workerIndex:e.data.workerIndex})}else console.log("no task handler for ",e.data.taskType),console.log(n),self.postMessage({taskType:e.data.taskType,status:"failed - no task handler registered",workerIndex:e.data.workerIndex})}else!function(e){if(!f){if(t=e.config,self.registerTaskHandler=a,e.config.webWorkerTaskPaths)for(var i=0;i<e.config.webWorkerTaskPaths.length;i++)self.importScripts(e.config.webWorkerTaskPaths[i]);Object.keys(n).forEach((function(e){n[e].initialize(t.taskConfiguration)})),self.postMessage({taskType:"initialize",status:"success",result:{},workerIndex:e.workerIndex}),f=!0}}(e.data)};var s,l=r(3),o=r.n(l),u=r(11),c=r.n(u);function h(e,i){var r=function(e,i,r){var t=s._malloc(e.length);s.writeArrayToMemory(e,t);var n=s._malloc(4),f=s._malloc(4),a=s._malloc(4),l=s._malloc(4),o=s._malloc(4),u=(new Date).getTime();if(0!==s.ccall("jp2_decode","number",["number","number","number","number","number","number","number"],[t,e.length,n,f,a,l,o]))return console.log("[opj_decode] decoding failed!"),s._free(t),s._free(s.getValue(n,"*")),s._free(a),s._free(l),s._free(f),void s._free(o);var c=s.getValue(n,"*"),h={length:s.getValue(f,"i32"),sx:s.getValue(a,"i32"),sy:s.getValue(l,"i32"),nbChannels:s.getValue(o,"i32"),perf_timetodecode:void 0,pixelData:void 0},d=h.sx*h.sy*h.nbChannels,b=new Int32Array(s.HEAP32.buffer,c,d);if(1===i)if(Uint8Array.from)h.pixelData=Uint8Array.from(b);else{h.pixelData=new Uint8Array(d);for(var k=0;k<d;k++)h.pixelData[k]=b[k]}else if(r)if(Int16Array.from)h.pixelData=Int16Array.from(b);else{h.pixelData=new Int16Array(d);for(var w=0;w<d;w++)h.pixelData[w]=b[w]}else if(Uint16Array.from)h.pixelData=Uint16Array.from(b);else{h.pixelData=new Uint16Array(d);for(var _=0;_<d;_++)h.pixelData[_]=b[_]}var m=(new Date).getTime();return h.perf_timetodecode=m-u,s._free(t),s._free(n),s._free(c),s._free(f),s._free(a),s._free(l),s._free(o),h}(i,e.bitsAllocated<=8?1:2,1===e.pixelRepresentation);return e.columns=r.sx,e.rows=r.sy,e.pixelData=r.pixelData,r.nbChannels>1&&(e.photometricInterpretation="RGB"),e}function d(e){if(!e.usePDFJS&&void 0===o.a)throw new Error("OpenJPEG decoder not loaded");if(!(s||(s=o()())&&s._jp2_decode))throw new Error("OpenJPEG failed to initialize")}var b,k=function(e,i,r){var t=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return d(r),t.usePDFJS||r.usePDFJS?function(e,i){var r=new c.a;r.parse(i);var t=r.tiles.length;if(1!==t)throw new Error("JPEG2000 decoder returned a tileCount of ".concat(t,", when 1 is expected"));return e.columns=r.width,e.rows=r.height,e.pixelData=r.tiles[0].items,e}(e,i):h(e,i)},w=r(4),_=r.n(w);function m(){if(void 0===_.a)throw new Error("No JPEG-LS decoder loaded");if(!(b||(b=_()())&&b._jpegls_decode))throw new Error("JPEG-LS failed to initialize")}var v=function(e,i){m();var r=function(e,i){var r=b._malloc(e.length);b.writeArrayToMemory(e,r);var t=b._malloc(4),n=b._malloc(4),f=b._malloc(4),a=b._malloc(4),s=b._malloc(4),l=b._malloc(4),o=b._malloc(4),u=b._malloc(4),c=b._malloc(4),h={result:b.ccall("jpegls_decode","number",["number","number","number","number","number","number","number","number","number","number","number"],[r,e.length,t,n,f,a,s,l,u,o,c]),width:b.getValue(f,"i32"),height:b.getValue(a,"i32"),bitsPerSample:b.getValue(s,"i32"),stride:b.getValue(l,"i32"),components:b.getValue(u,"i32"),allowedLossyError:b.getValue(o,"i32"),interleaveMode:b.getValue(c,"i32"),pixelData:void 0},d=b.getValue(t,"*");return h.bitsPerSample<=8?(h.pixelData=new Uint8Array(h.width*h.height*h.components),h.pixelData.set(new Uint8Array(b.HEAP8.buffer,d,h.pixelData.length))):i?(h.pixelData=new Int16Array(h.width*h.height*h.components),h.pixelData.set(new Int16Array(b.HEAP16.buffer,d,h.pixelData.length))):(h.pixelData=new Uint16Array(h.width*h.height*h.components),h.pixelData.set(new Uint16Array(b.HEAP16.buffer,d,h.pixelData.length))),b._free(r),b._free(d),b._free(t),b._free(n),b._free(f),b._free(a),b._free(s),b._free(l),b._free(u),b._free(c),h}(i,1===e.pixelRepresentation);if(0!==r.result&&6!==r.result)throw new Error("JPEG-LS decoder failed to decode frame (error code ".concat(r.result,")"));return e.columns=r.width,e.rows=r.height,e.pixelData=r.pixelData,e};var p=function(e){for(var i,r=e[0],t=e[0],n=e.length,f=1;f<n;f++)i=e[f],r=Math.min(r,i),t=Math.max(t,i);return{min:r,max:t}};function g(e){return"number"==typeof e}var y=function(e,i){var r=i.buffer,t=i.byteOffset,n=i.length;return 16===e.bitsAllocated?(t%2&&(r=r.slice(t),t=0),0===e.pixelRepresentation?e.pixelData=new Uint16Array(r,t,n/2):e.pixelData=new Int16Array(r,t,n/2)):8===e.bitsAllocated||1===e.bitsAllocated?e.pixelData=i:32===e.bitsAllocated&&(t%2&&(r=r.slice(t),t=0),e.pixelData=new Float32Array(r,t,n/4)),e};var M=function(e,i){if(16===e.bitsAllocated){var r=i.buffer,t=i.byteOffset,n=i.length;t%2&&(r=r.slice(t),t=0),0===e.pixelRepresentation?e.pixelData=new Uint16Array(r,t,n/2):e.pixelData=new Int16Array(r,t,n/2);for(var f=0;f<e.pixelData.length;f++)e.pixelData[f]=(255&(a=e.pixelData[f]))<<8|a>>8&255}else 8===e.bitsAllocated&&(e.pixelData=i);var a;return e};var E=function(e,i){if(8===e.bitsAllocated)return e.planarConfiguration?function(e,i){for(var r=i,t=e.rows*e.columns,n=new ArrayBuffer(t*e.samplesPerPixel),f=new DataView(r.buffer,r.byteOffset),a=new Int8Array(r.buffer,r.byteOffset),s=new Int8Array(n),l=0,o=f.getInt32(0,!0),u=0;u<o;++u){l=u*t;var c=f.getInt32(4*(u+1),!0),h=f.getInt32(4*(u+2),!0);0===h&&(h=r.length);for(var d=t*o;c<h;){var b=a[c++];if(b>=0&&b<=127)for(var k=0;k<b+1&&l<d;++k)s[l]=a[c++],l++;else if(b<=-1&&b>=-127)for(var w=a[c++],_=0;_<1-b&&l<d;++_)s[l]=w,l++}}return e.pixelData=new Uint8Array(n),e}(e,i):function(e,i){for(var r=i,t=e.rows*e.columns,n=new ArrayBuffer(t*e.samplesPerPixel),f=new DataView(r.buffer,r.byteOffset),a=new Int8Array(r.buffer,r.byteOffset),s=new Int8Array(n),l=0,o=f.getInt32(0,!0),u=0;u<o;++u){l=u;var c=f.getInt32(4*(u+1),!0),h=f.getInt32(4*(u+2),!0);0===h&&(h=r.length);for(var d=t*o;c<h;){var b=a[c++];if(b>=0&&b<=127)for(var k=0;k<b+1&&l<d;++k)s[l]=a[c++],l+=e.samplesPerPixel;else if(b<=-1&&b>=-127)for(var w=a[c++],_=0;_<1-b&&l<d;++_)s[l]=w,l+=e.samplesPerPixel}}return e.pixelData=new Uint8Array(n),e}(e,i);if(16===e.bitsAllocated)return function(e,i){for(var r=i,t=e.rows*e.columns,n=new ArrayBuffer(t*e.samplesPerPixel*2),f=new DataView(r.buffer,r.byteOffset),a=new Int8Array(r.buffer,r.byteOffset),s=new Int8Array(n),l=f.getInt32(0,!0),o=0;o<l;++o){var u=0,c=0===o?1:0,h=f.getInt32(4*(o+1),!0),d=f.getInt32(4*(o+2),!0);for(0===d&&(d=r.length);h<d;){var b=a[h++];if(b>=0&&b<=127)for(var k=0;k<b+1&&u<t;++k)s[2*u+c]=a[h++],u++;else if(b<=-1&&b>=-127)for(var w=a[h++],_=0;_<1-b&&u<t;++_)s[2*u+c]=w,u++}}0===e.pixelRepresentation?e.pixelData=new Uint16Array(n):e.pixelData=new Int16Array(n);return e}(e,i);throw new Error("unsupported pixel format for RLE")},A=r(5),S=r.n(A);var T=function(e,i){if(void 0===S.a)throw new Error("No JPEG Baseline decoder loaded");var r=new S.a;return r.parse(i),r.colorTransform=!1,8===e.bitsAllocated?(e.pixelData=r.getData(e.columns,e.rows),e):16===e.bitsAllocated?(e.pixelData=r.getData16(e.columns,e.rows),e):void 0},C=r(1),R=r.n(C);var L=function(e,i){if(void 0===R.a||void 0===R.a.lossless||void 0===R.a.lossless.Decoder)throw new Error("No JPEG Lossless decoder loaded");var r=e.bitsAllocated<=8?1:2,t=i.buffer,n=(new R.a.lossless.Decoder).decode(t,i.byteOffset,i.length,r);return 0===e.pixelRepresentation?16===e.bitsAllocated?(e.pixelData=new Uint16Array(n.buffer),e):(e.pixelData=new Uint8Array(n.buffer),e):(e.pixelData=new Int16Array(n.buffer),e)};var x,P=function(e,i,r,t,n){var f=(new Date).getTime();switch(i){case"1.2.840.10008.1.2":case"1.2.840.10008.1.2.1":e=y(e,r);break;case"1.2.840.10008.1.2.2":e=M(e,r);break;case"1.2.840.10008.1.2.1.99":e=y(e,r);break;case"1.2.840.10008.1.2.5":e=E(e,r);break;case"1.2.840.10008.1.2.4.50":case"1.2.840.10008.1.2.4.51":e=T(e,r);break;case"1.2.840.10008.1.2.4.57":case"1.2.840.10008.1.2.4.70":e=L(e,r);break;case"1.2.840.10008.1.2.4.80":case"1.2.840.10008.1.2.4.81":e=v(e,r);break;case"1.2.840.10008.1.2.4.90":case"1.2.840.10008.1.2.4.91":e=k(e,r,t,n);break;default:throw new Error("no decoder for transfer syntax ".concat(i))}var a=void 0!==e.pixelRepresentation&&1===e.pixelRepresentation,s=a&&void 0!==e.bitsStored?32-e.bitsStored:void 0;if(a&&void 0!==s)for(var l=0;l<e.pixelData.length;l++)e.pixelData[l]=e.pixelData[l]<<s>>s;var o=e.pixelData;if(e.pixelDataLength=e.pixelData.length,n.targetBuffer){var u,c,h=n.targetBuffer;u=h.offset,c=h.length;var d,b=n.targetBuffer,w=b.arrayBuffer,_=b.type;switch(null==u&&(u=0),null==c&&0!==u?c=e.pixelDataLength-u:null==c&&(c=e.pixelDataLength),_){case"Uint8Array":d=Uint8Array;break;case"Uint16Array":d=Uint16Array;break;case"Float32Array":d=Float32Array;break;default:throw new Error("target array for image does not have a valid type.")}var m,p=e.pixelData;if(c!==p.length)throw new Error("target array for image does not have the same length as the decoded image length.");(m=w?new d(w,u,c):new d(c)).set(p,0),o=m}if(n.preScale&&n.preScale.scalingParameters){var g=n.preScale.scalingParameters,A=g.rescaleSlope,S=g.rescaleIntercept;"number"==typeof A&&"number"==typeof S&&function(e,i){var r=e.length,t=i.rescaleSlope,n=i.rescaleIntercept,f=i.suvbw;if("PT"===i.modality){if("number"!=typeof f)return;for(var a=0;a<r;a++)e[a]=f*(e[a]*t+n)}else for(var s=0;s<r;s++)e[s]=e[s]*t+n}(o,g)}n.targetBuffer&&(!n.targetBuffer.arrayBuffer||n.targetBuffer.arrayBuffer instanceof ArrayBuffer)&&(e.pixelData=o);var C=(new Date).getTime();return e.decodeTimeInMS=C-f,e};function O(e){e.decodeTask.initializeCodecsOnStartup&&(d(e.decodeTask),m(e.decodeTask))}var B={taskType:"decodeTask",handler:function(e,i){O(x);var r=x&&x.decodeTask&&x.decodeTask.strict,t=e.data.imageFrame,n=new Uint8Array(e.data.pixelData);if(P(t,e.data.transferSyntax,n,x.decodeTask,e.data.options),!t.pixelData)throw new Error("decodeTask: imageFrame.pixelData is undefined after decoding");!function(e){var i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=p(e.pixelData),t=!(g(e.smallestPixelValue)&&g(e.largestPixelValue));!0!==i||t?(e.smallestPixelValue=r.min,e.largestPixelValue=r.max):(e.smallestPixelValue!==r.min&&console.warn("Image smallestPixelValue tag is incorrect. Rendering performance will suffer considerably."),e.largestPixelValue!==r.max&&console.warn("Image largestPixelValue tag is incorrect. Rendering performance will suffer considerably."))}(t,r),t.pixelData=t.pixelData.buffer,i(t,[t.pixelData])},initialize:function(e){x=e,O(e)}};r(12);r.d(i,"registerTaskHandler",(function(){return a})),r.d(i,"version",(function(){return"3.3.2"})),a(B);var I={registerTaskHandler:a,version:"3.3.2"};i.default=I}]);\n//# sourceMappingURL=abe907a48c03814beada.worker.js.map',null)}},function(e,i,r){"use strict";var f=window.URL||window.webkitURL;e.exports=function(e,i){try{try{var r;try{(r=new(window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder)).append(e),r=r.getBlob()}catch(i){r=new Blob([e])}return new Worker(f.createObjectURL(r))}catch(i){return new Worker("data:application/javascript,"+encodeURIComponent(e))}}catch(e){if(!i)throw Error("Inline worker is not supported");return new Worker(i)}}},function(e,i){var r={Unkown:0,Grayscale:1,AdobeRGB:2,RGB:3,CYMK:4},f=function(){"use strict";var e=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),i=4017,f=799,n=3406,t=2276,a=1567,s=3784,l=5793,o=2896;function u(){}function c(e,i){for(var r,f,n=0,t=[],a=16;a>0&&!e[a-1];)a--;t.push({children:[],index:0});var s,l=t[0];for(r=0;r<a;r++){for(f=0;f<e[r];f++){for((l=t.pop()).children[l.index]=i[n];l.index>0;)l=t.pop();for(l.index++,t.push(l);t.length<=r;)t.push(s={children:[],index:0}),l.children[l.index]=s.children,l=s;n++}r+1<a&&(t.push(s={children:[],index:0}),l.children[l.index]=s.children,l=s)}return t[0].children}function h(e,i,r){return 64*((e.blocksPerLine+1)*i+r)}function d(i,r,f,n,t,a,s,l,o){f.precision,f.samplesPerLine,f.scanLines;var u=f.mcusPerLine,c=f.progressive,d=(f.maxH,f.maxV,r),b=0,_=0;function k(){if(_>0)return b>>--_&1;if(255==(b=i[r++])){var e=i[r++];if(e)throw"unexpected marker: "+(b<<8|e).toString(16)}return _=7,b>>>7}function w(e){for(var i,r=e;null!==(i=k());){if("number"==typeof(r=r[i]))return r;if("object"!=typeof r)throw"invalid huffman sequence"}return null}function m(e){for(var i=0;e>0;){var r=k();if(null===r)return;i=i<<1|r,e--}return i}function v(e){var i=m(e);return i>=1<<e-1?i:i+(-1<<e)+1}var p=0;var g,y=0;function M(e,i,r,f,n){var t=r%u;i(e,h(e,(r/u|0)*e.v+f,t*e.h+n))}function A(e,i,r){i(e,h(e,r/e.blocksPerLine|0,r%e.blocksPerLine))}var E,S,T,R,C,P,I=n.length;P=c?0===a?0===l?function(e,i){var r=w(e.huffmanTableDC),f=0===r?0:v(r)<<o;e.blockData[i]=e.pred+=f}:function(e,i){e.blockData[i]|=k()<<o}:0===l?function(i,r){if(p>0)p--;else for(var f=a,n=s;f<=n;){var t=w(i.huffmanTableAC),l=15&t,u=t>>4;if(0!==l){var c=e[f+=u];i.blockData[r+c]=v(l)*(1<<o),f++}else{if(u<15){p=m(u)+(1<<u)-1;break}f+=16}}}:function(i,r){for(var f=a,n=s,t=0;f<=n;){var l=e[f];switch(y){case 0:var u=w(i.huffmanTableAC),c=15&u;if(t=u>>4,0===c)t<15?(p=m(t)+(1<<t),y=4):(t=16,y=1);else{if(1!==c)throw"invalid ACn encoding";g=v(c),y=t?2:3}continue;case 1:case 2:i.blockData[r+l]?i.blockData[r+l]+=k()<<o:0===--t&&(y=2==y?3:0);break;case 3:i.blockData[r+l]?i.blockData[r+l]+=k()<<o:(i.blockData[r+l]=g<<o,y=0);break;case 4:i.blockData[r+l]&&(i.blockData[r+l]+=k()<<o)}f++}4===y&&0===--p&&(y=0)}:function(i,r){var f=w(i.huffmanTableDC),n=0===f?0:v(f);i.blockData[r]=i.pred+=n;for(var t=1;t<64;){var a=w(i.huffmanTableAC),s=15&a,l=a>>4;if(0!==s){var o=e[t+=l];i.blockData[r+o]=v(s),t++}else{if(l<15)break;t+=16}}};var O,x,L,B,z=0;for(x=1==I?n[0].blocksPerLine*n[0].blocksPerColumn:u*f.mcusPerColumn,t||(t=x);z<x;){for(S=0;S<I;S++)n[S].pred=0;if(p=0,1==I)for(E=n[0],C=0;C<t;C++)A(E,P,z),z++;else for(C=0;C<t;C++){for(S=0;S<I;S++)for(L=(E=n[S]).h,B=E.v,T=0;T<B;T++)for(R=0;R<L;R++)M(E,P,z,T,R);z++}if(_=0,(O=i[r]<<8|i[r+1])<=65280)throw"marker was not found";if(!(O>=65488&&O<=65495))break;r+=2}return r-d}function b(e,r,u){var c,h,d,b,_,k,w,m,v,p,g=e.quantizationTable;for(p=0;p<64;p++)u[p]=e.blockData[r+p]*g[p];for(p=0;p<8;++p){var y=8*p;0!==u[1+y]||0!==u[2+y]||0!==u[3+y]||0!==u[4+y]||0!==u[5+y]||0!==u[6+y]||0!==u[7+y]?(c=l*u[0+y]+128>>8,h=l*u[4+y]+128>>8,d=u[2+y],b=u[6+y],_=o*(u[1+y]-u[7+y])+128>>8,m=o*(u[1+y]+u[7+y])+128>>8,k=u[3+y]<<4,w=u[5+y]<<4,v=c-h+1>>1,c=c+h+1>>1,h=v,v=d*s+b*a+128>>8,d=d*a-b*s+128>>8,b=v,v=_-w+1>>1,_=_+w+1>>1,w=v,v=m+k+1>>1,k=m-k+1>>1,m=v,v=c-b+1>>1,c=c+b+1>>1,b=v,v=h-d+1>>1,h=h+d+1>>1,d=v,v=_*t+m*n+2048>>12,_=_*n-m*t+2048>>12,m=v,v=k*f+w*i+2048>>12,k=k*i-w*f+2048>>12,w=v,u[0+y]=c+m,u[7+y]=c-m,u[1+y]=h+w,u[6+y]=h-w,u[2+y]=d+k,u[5+y]=d-k,u[3+y]=b+_,u[4+y]=b-_):(v=l*u[0+y]+512>>10,u[0+y]=v,u[1+y]=v,u[2+y]=v,u[3+y]=v,u[4+y]=v,u[5+y]=v,u[6+y]=v,u[7+y]=v)}for(p=0;p<8;++p){var M=p;0!==u[8+M]||0!==u[16+M]||0!==u[24+M]||0!==u[32+M]||0!==u[40+M]||0!==u[48+M]||0!==u[56+M]?(c=l*u[0+M]+2048>>12,h=l*u[32+M]+2048>>12,d=u[16+M],b=u[48+M],_=o*(u[8+M]-u[56+M])+2048>>12,m=o*(u[8+M]+u[56+M])+2048>>12,k=u[24+M],w=u[40+M],v=c-h+1>>1,c=c+h+1>>1,h=v,v=d*s+b*a+2048>>12,d=d*a-b*s+2048>>12,b=v,v=_-w+1>>1,_=_+w+1>>1,w=v,v=m+k+1>>1,k=m-k+1>>1,m=v,v=c-b+1>>1,c=c+b+1>>1,b=v,v=h-d+1>>1,h=h+d+1>>1,d=v,v=_*t+m*n+2048>>12,_=_*n-m*t+2048>>12,m=v,v=k*f+w*i+2048>>12,k=k*i-w*f+2048>>12,w=v,u[0+M]=c+m,u[56+M]=c-m,u[8+M]=h+w,u[48+M]=h-w,u[16+M]=d+k,u[40+M]=d-k,u[24+M]=b+_,u[32+M]=b-_):(v=l*u[p+0]+8192>>14,u[0+M]=v,u[8+M]=v,u[16+M]=v,u[24+M]=v,u[32+M]=v,u[40+M]=v,u[48+M]=v,u[56+M]=v)}for(p=0;p<64;++p){var A=r+p,E=u[p];E=E<=-2056/e.bitConversion?0:E>=2024/e.bitConversion?255/e.bitConversion:E+2056/e.bitConversion>>4,e.blockData[A]=E}}function _(e,i){for(var r=i.blocksPerLine,f=i.blocksPerColumn,n=new Int32Array(64),t=0;t<f;t++)for(var a=0;a<r;a++){b(i,h(i,t,a),n)}return i.blockData}function k(e){return e<=0?0:e>=255?255:0|e}return u.prototype={load:function(e){var i=function(e){this.parse(e),this.onload&&this.onload()}.bind(this);if(e.indexOf("data:")>-1){for(var r=e.indexOf("base64,")+7,f=atob(e.substring(r)),n=new Uint8Array(f.length),t=f.length-1;t>=0;t--)n[t]=f.charCodeAt(t);i(f)}else{var a=new XMLHttpRequest;a.open("GET",e,!0),a.responseType="arraybuffer",a.onload=function(){var e=new Uint8Array(a.response);i(e)}.bind(this),a.send(null)}},parse:function(i){function f(){var e=i[l]<<8|i[l+1];return l+=2,e}function n(){var e=f(),r=i.subarray(l,l+e-2);return l+=r.length,r}function t(e){for(var i=Math.ceil(e.samplesPerLine/8/e.maxH),r=Math.ceil(e.scanLines/8/e.maxV),f=0;f<e.components.length;f++){$=e.components[f];var n=Math.ceil(Math.ceil(e.samplesPerLine/8)*$.h/e.maxH),t=Math.ceil(Math.ceil(e.scanLines/8)*$.v/e.maxV),a=i*$.h,s=64*(r*$.v)*(a+1);$.blockData=new Int16Array(s),$.blocksPerLine=n,$.blocksPerColumn=t}e.mcusPerLine=i,e.mcusPerColumn=r}var a,s,l=0,o=(i.length,null),u=null,h=[],b=[],k=[],w=f();if(65496!=w)throw"SOI not found";for(w=f();65497!=w;){var m,v;switch(w){case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:case 65534:var p=n();65504===w&&74===p[0]&&70===p[1]&&73===p[2]&&70===p[3]&&0===p[4]&&(o={version:{major:p[5],minor:p[6]},densityUnits:p[7],xDensity:p[8]<<8|p[9],yDensity:p[10]<<8|p[11],thumbWidth:p[12],thumbHeight:p[13],thumbData:p.subarray(14,14+3*p[12]*p[13])}),65518===w&&65===p[0]&&100===p[1]&&111===p[2]&&98===p[3]&&101===p[4]&&0===p[5]&&(u={version:p[6],flags0:p[7]<<8|p[8],flags1:p[9]<<8|p[10],transformCode:p[11]});break;case 65499:for(var g=f()+l-2;l<g;){var y=i[l++],M=new Int32Array(64);if(y>>4==0)for(m=0;m<64;m++){M[e[m]]=i[l++]}else{if(y>>4!=1)throw"DQT: invalid table spec";for(m=0;m<64;m++){M[e[m]]=f()}}h[15&y]=M}break;case 65472:case 65473:case 65474:if(a)throw"Only single frame JPEGs supported";f(),(a={}).extended=65473===w,a.progressive=65474===w,a.precision=i[l++],a.scanLines=f(),a.samplesPerLine=f(),a.components=[],a.componentIds={};var A,E=i[l++],S=0,T=0;for(q=0;q<E;q++){A=i[l];var R=i[l+1]>>4,C=15&i[l+1];S<R&&(S=R),T<C&&(T=C);var P=i[l+2];v=a.components.push({h:R,v:C,quantizationTable:h[P],quantizationTableId:P,bitConversion:255/((1<<a.precision)-1)}),a.componentIds[A]=v-1,l+=3}a.maxH=S,a.maxV=T,t(a);break;case 65476:var I=f();for(q=2;q<I;){var O=i[l++],x=new Uint8Array(16),L=0;for(m=0;m<16;m++,l++)L+=x[m]=i[l];var B=new Uint8Array(L);for(m=0;m<L;m++,l++)B[m]=i[l];q+=17+L,(O>>4==0?k:b)[15&O]=c(x,B)}break;case 65501:f(),s=f();break;case 65498:f();var z=i[l++],D=[];for(q=0;q<z;q++){var N=a.componentIds[i[l++]];$=a.components[N];var F=i[l++];$.huffmanTableDC=k[F>>4],$.huffmanTableAC=b[15&F],D.push($)}var H=i[l++],U=i[l++],j=i[l++],Y=d(i,l,a,D,s,H,U,j>>4,15&j);l+=Y;break;case 65535:255!==i[l]&&l--;break;default:if(255==i[l-3]&&i[l-2]>=192&&i[l-2]<=254){l-=3;break}throw"unknown JPEG marker "+w.toString(16)}w=f()}switch(this.width=a.samplesPerLine,this.height=a.scanLines,this.jfif=o,this.adobe=u,this.components=[],a.components.length){case 1:this.colorspace=r.Grayscale;break;case 3:this.adobe?this.colorspace=r.AdobeRGB:this.colorspace=r.RGB;break;case 4:this.colorspace=r.CYMK;break;default:this.colorspace=r.Unknown}for(var q=0;q<a.components.length;q++){var $;($=a.components[q]).quantizationTable||null===$.quantizationTableId||($.quantizationTable=h[$.quantizationTableId]),this.components.push({output:_(0,$),scaleX:$.h/a.maxH,scaleY:$.v/a.maxV,blocksPerLine:$.blocksPerLine,blocksPerColumn:$.blocksPerColumn,bitConversion:$.bitConversion})}},getData16:function(e,i){if(1!==this.components.length)throw"Unsupported color mode";var r,f,n,t,a,s,l=this.width/e,o=this.height/i,u=0,c=this.components.length,d=new Uint16Array(e*i*c),b=new Uint16Array((this.components[0].blocksPerLine<<3)*this.components[0].blocksPerColumn*8);for(s=0;s<c;s++){for(var _,k,w,m=(r=this.components[s]).blocksPerLine,v=r.blocksPerColumn,p=m<<3,g=0,y=0;y<v;y++)for(var M=y<<3,A=0;A<m;A++){var E=h(r,y,A),S=(u=0,A<<3);for(_=0;_<8;_++){g=(M+_)*p;for(k=0;k<8;k++)b[g+S+k]=r.output[E+u++]}}for(f=r.scaleX*l,n=r.scaleY*o,u=s,a=0;a<i;a++)for(t=0;t<e;t++)w=(0|a*n)*p+(0|t*f),d[u]=b[w],u+=c}return d},getData:function(e,i){var r,f,n,t,a,s,l,o,u,c,d,b,_,w,m,v=this.width/e,p=this.height/i,g=0,y=this.components.length,M=e*i*y,A=new Uint8Array(M),E=new Uint8Array((this.components[0].blocksPerLine<<3)*this.components[0].blocksPerColumn*8);for(s=0;s<y;s++){for(var S,T,R,C=(r=this.components[s]).blocksPerLine,P=r.blocksPerColumn,I=C<<3,O=0,x=0;x<P;x++)for(var L=x<<3,B=0;B<C;B++){var z=h(r,x,B),D=(g=0,B<<3);for(S=0;S<8;S++){O=(L+S)*I;for(T=0;T<8;T++)E[O+D+T]=r.output[z+g++]*r.bitConversion}}for(f=r.scaleX*v,n=r.scaleY*p,g=s,a=0;a<i;a++)for(t=0;t<e;t++)R=(0|a*n)*I+(0|t*f),A[g]=E[R],g+=y}switch(y){case 1:case 2:break;case 3:if(m=!0,this.adobe&&this.adobe.transformCode?m=!0:void 0!==this.colorTransform&&(m=!!this.colorTransform),m)for(s=0;s<M;s+=y)l=A[s],o=A[s+1],b=k(l-179.456+1.402*(u=A[s+2])),_=k(l+135.459-.344*o-.714*u),w=k(l-226.816+1.772*o),A[s]=b,A[s+1]=_,A[s+2]=w;break;case 4:if(!this.adobe)throw"Unsupported color mode (4 components)";if(m=!1,this.adobe&&this.adobe.transformCode?m=!0:void 0!==this.colorTransform&&(m=!!this.colorTransform),m)for(s=0;s<M;s+=y)l=A[s],o=A[s+1],c=k(434.456-l-1.402*(u=A[s+2])),d=k(119.541-l+.344*o+.714*u),l=k(481.816-l-1.772*o),A[s]=c,A[s+1]=d,A[s+2]=l;break;default:throw"Unsupported color mode"}return A}},u}();e.exports=f},function(module,exports){var CharLS=function(Module){var Module;Module=Module||{},Module||(Module=(void 0!==CharLS?CharLS:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB="object"==typeof window,ENVIRONMENT_IS_WORKER="function"==typeof importScripts,ENVIRONMENT_IS_NODE="object"==typeof process&&"function"==typeof require&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){Module.print||(Module.print=function(e){process.stdout.write(e+"\n")}),Module.printErr||(Module.printErr=function(e){process.stderr.write(e+"\n")});var nodeFS=require("fs"),nodePath=require("path");Module.read=function(e,i){e=nodePath.normalize(e);var r=nodeFS.readFileSync(e);return r||e==nodePath.resolve(e)||(e=path.join(__dirname,"..","src",e),r=nodeFS.readFileSync(e)),r&&!i&&(r=r.toString()),r},Module.readBinary=function(e){var i=Module.read(e,!0);return i.buffer||(i=new Uint8Array(i)),assert(i.buffer),i},Module.load=function(e){globalEval(read(e))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),void 0!==module&&(module.exports=Module),process.on("uncaughtException",(function(e){if(!(e instanceof ExitStatus))throw e})),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),"undefined"!=typeof printErr&&(Module.printErr=printErr),"undefined"!=typeof read?Module.read=read:Module.read=function(){throw"no read() available (jsc?)"},Module.readBinary=function(e){if("function"==typeof readbuffer)return new Uint8Array(readbuffer(e));var i=read(e,"binary");return assert("object"==typeof i),i},"undefined"!=typeof scriptArgs?Module.arguments=scriptArgs:void 0!==arguments&&(Module.arguments=arguments);else{if(!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER)throw"Unknown runtime environment. Where are we?";if(Module.read=function(e){var i=new XMLHttpRequest;return i.open("GET",e,!1),i.send(null),i.responseText},void 0!==arguments&&(Module.arguments=arguments),"undefined"!=typeof console)Module.print||(Module.print=function(e){console.log(e)}),Module.printErr||(Module.printErr=function(e){console.log(e)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&"undefined"!=typeof dump?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),void 0===Module.setWindowTitle&&(Module.setWindowTitle=function(e){document.title=e})}function globalEval(e){eval.call(null,e)}for(var key in!Module.load&&Module.read&&(Module.load=function(e){globalEval(Module.read(e))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[],moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);var Runtime={setTempRet0:function(e){tempRet0=e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:if("*"===e[e.length-1])return Runtime.QUANTUM_SIZE;if("i"===e[0]){var i=parseInt(e.substr(1));return assert(i%8==0),i/8}return 0}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,i){return"double"===i||"i64"===i?7&e&&(assert(4==(7&e)),e+=4):assert(0==(3&e)),e},getAlignSize:function(e,i,r){return r||"i64"!=e&&"double"!=e?e?Math.min(i||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(i,8):8},dynCall:function(e,i,r){return r&&r.length?(r.splice||(r=Array.prototype.slice.call(r)),r.splice(0,0,i),Module["dynCall_"+e].apply(null,r)):Module["dynCall_"+e].call(null,i)},functionPointers:[],addFunction:function(e){for(var i=0;i<Runtime.functionPointers.length;i++)if(!Runtime.functionPointers[i])return Runtime.functionPointers[i]=e,2*(1+i);throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."},removeFunction:function(e){Runtime.functionPointers[(e-2)/2]=null},warnOnce:function(e){Runtime.warnOnce.shown||(Runtime.warnOnce.shown={}),Runtime.warnOnce.shown[e]||(Runtime.warnOnce.shown[e]=1,Module.printErr(e))},funcWrappers:{},getFuncWrapper:function(e,i){assert(i),Runtime.funcWrappers[i]||(Runtime.funcWrappers[i]={});var r=Runtime.funcWrappers[i];return r[e]||(r[e]=function(){return Runtime.dynCall(i,e,arguments)}),r[e]},getCompilerSetting:function(e){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"},stackAlloc:function(e){var i=STACKTOP;return STACKTOP=(STACKTOP=STACKTOP+e|0)+15&-16,i},staticAlloc:function(e){var i=STATICTOP;return STATICTOP=(STATICTOP=STATICTOP+e|0)+15&-16,i},dynamicAlloc:function(e){var i=DYNAMICTOP;if((DYNAMICTOP=(DYNAMICTOP=DYNAMICTOP+e|0)+15&-16)>=TOTAL_MEMORY&&!enlargeMemory())return DYNAMICTOP=i,0;return i},alignMemory:function(e,i){return e=Math.ceil(e/(i||16))*(i||16)},makeBigInt:function(e,i,r){return r?+(e>>>0)+4294967296*+(i>>>0):+(e>>>0)+4294967296*+(0|i)},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var __THREW__=0,ABORT=!1,EXITSTATUS=0,undef=0,tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat,tempI64,tempI64b,tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9;function assert(e,i){e||abort("Assertion failed: "+i)}var globalScope=this,cwrap,ccall;function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}function setValue(e,i,r,f){switch("*"===(r=r||"i8").charAt(r.length-1)&&(r="i32"),r){case"i1":case"i8":HEAP8[e>>0]=i;break;case"i16":HEAP16[e>>1]=i;break;case"i32":HEAP32[e>>2]=i;break;case"i64":tempI64=[i>>>0,(tempDouble=i,+Math_abs(tempDouble)>=1?tempDouble>0?(0|Math_min(+Math_floor(tempDouble/4294967296),4294967295))>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=i;break;case"double":HEAPF64[e>>3]=i;break;default:abort("invalid type for setValue: "+r)}}function getValue(e,i,r){switch("*"===(i=i||"i8").charAt(i.length-1)&&(i="i32"),i){case"i1":case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+i)}return null}!function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var i=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,i),i},stringToC:function(e){var i=0;return null!=e&&0!==e&&writeStringToMemory(e,i=Runtime.stackAlloc(1+(e.length<<2))),i}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(e,i,r,f,n){var t=getCFunc(e),a=[],s=0;if(f)for(var l=0;l<f.length;l++){var o=toC[r[l]];o?(0===s&&(s=Runtime.stackSave()),a[l]=o(f[l])):a[l]=f[l]}var u=t.apply(null,a);if("string"===i&&(u=Pointer_stringify(u)),0!==s){if(n&&n.async)return void EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(s)}));Runtime.stackRestore(s)}return u};var sourceRegex=/^function\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(e){var i=e.toString().match(sourceRegex);return i?{arguments:(i=i.slice(1))[0],body:i[1],returnValue:i[2]}:{}}var JSsource={};for(var fun in JSfuncs)JSfuncs.hasOwnProperty(fun)&&(JSsource[fun]=parseJSFunc(JSfuncs[fun]));cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident),numericArgs=argTypes.every((function(e){return"number"===e})),numericRet="string"!==returnType;if(numericRet&&numericArgs)return cfunc;var argNames=argTypes.map((function(e,i){return"$"+i})),funcstr="(function("+argNames.join(",")+") {",nargs=argTypes.length;if(!numericArgs){funcstr+="var stack = "+JSsource.stackSave.body+";";for(var i=0;i<nargs;i++){var arg=argNames[i],type=argTypes[i];if("number"!==type){var convertCode=JSsource[type+"ToC"];funcstr+="var "+convertCode.arguments+" = "+arg+";",funcstr+=convertCode.body+";",funcstr+=arg+"="+convertCode.returnValue+";"}}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;if(funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");",!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}return numericArgs||(funcstr+=JSsource.stackRestore.body.replace("()","(stack)")+";"),funcstr+="return ret})",eval(funcstr)}}(),Module.ccall=ccall,Module.cwrap=cwrap,Module.setValue=setValue,Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;function allocate(e,i,r,f){var n,t;"number"==typeof e?(n=!0,t=e):(n=!1,t=e.length);var a,s="string"==typeof i?i:null;if(a=r==ALLOC_NONE?f:[_malloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][void 0===r?ALLOC_STATIC:r](Math.max(t,s?1:i.length)),n){var l;f=a;for(assert(0==(3&a)),l=a+(-4&t);f<l;f+=4)HEAP32[f>>2]=0;for(l=a+t;f<l;)HEAP8[f++>>0]=0;return a}if("i8"===s)return e.subarray||e.slice?HEAPU8.set(e,a):HEAPU8.set(new Uint8Array(e),a),a;for(var o,u,c,h=0;h<t;){var d=e[h];"function"==typeof d&&(d=Runtime.getFunctionIndex(d)),0!==(o=s||i[h])?("i64"==o&&(o="i32"),setValue(a+h,d,o),c!==o&&(u=Runtime.getNativeTypeSize(o),c=o),h+=u):h++}return a}function getMemory(e){return staticSealed?void 0!==_sbrk&&!_sbrk.called||!runtimeInitialized?Runtime.dynamicAlloc(e):_malloc(e):Runtime.staticAlloc(e)}function Pointer_stringify(e,i){if(0===i||!e)return"";for(var r,f=0,n=0;f|=r=HEAPU8[e+n>>0],(0!=r||i)&&(n++,!i||n!=i););i||(i=n);var t="";if(f<128){for(var a;i>0;)a=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(i,1024))),t=t?t+a:a,e+=1024,i-=1024;return t}return Module.UTF8ToString(e)}function AsciiToString(e){for(var i="";;){var r=HEAP8[e++>>0];if(!r)return i;i+=String.fromCharCode(r)}}function stringToAscii(e,i){return writeAsciiToMemory(e,i,!1)}function UTF8ArrayToString(e,i){for(var r,f,n,t,a,s="";;){if(!(r=e[i++]))return s;if(128&r)if(f=63&e[i++],192!=(224&r))if(n=63&e[i++],224==(240&r)?r=(15&r)<<12|f<<6|n:(t=63&e[i++],240==(248&r)?r=(7&r)<<18|f<<12|n<<6|t:(a=63&e[i++],r=248==(252&r)?(3&r)<<24|f<<18|n<<12|t<<6|a:(1&r)<<30|f<<24|n<<18|t<<12|a<<6|63&e[i++])),r<65536)s+=String.fromCharCode(r);else{var l=r-65536;s+=String.fromCharCode(55296|l>>10,56320|1023&l)}else s+=String.fromCharCode((31&r)<<6|f);else s+=String.fromCharCode(r)}}function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}function stringToUTF8Array(e,i,r,f){if(!(f>0))return 0;for(var n=r,t=r+f-1,a=0;a<e.length;++a){var s=e.charCodeAt(a);if(s>=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++a)),s<=127){if(r>=t)break;i[r++]=s}else if(s<=2047){if(r+1>=t)break;i[r++]=192|s>>6,i[r++]=128|63&s}else if(s<=65535){if(r+2>=t)break;i[r++]=224|s>>12,i[r++]=128|s>>6&63,i[r++]=128|63&s}else if(s<=2097151){if(r+3>=t)break;i[r++]=240|s>>18,i[r++]=128|s>>12&63,i[r++]=128|s>>6&63,i[r++]=128|63&s}else if(s<=67108863){if(r+4>=t)break;i[r++]=248|s>>24,i[r++]=128|s>>18&63,i[r++]=128|s>>12&63,i[r++]=128|s>>6&63,i[r++]=128|63&s}else{if(r+5>=t)break;i[r++]=252|s>>30,i[r++]=128|s>>24&63,i[r++]=128|s>>18&63,i[r++]=128|s>>12&63,i[r++]=128|s>>6&63,i[r++]=128|63&s}}return i[r]=0,r-n}function stringToUTF8(e,i,r){return stringToUTF8Array(e,HEAPU8,i,r)}function lengthBytesUTF8(e){for(var i=0,r=0;r<e.length;++r){var f=e.charCodeAt(r);f>=55296&&f<=57343&&(f=65536+((1023&f)<<10)|1023&e.charCodeAt(++r)),f<=127?++i:i+=f<=2047?2:f<=65535?3:f<=2097151?4:f<=67108863?5:6}return i}function UTF16ToString(e){for(var i=0,r="";;){var f=HEAP16[e+2*i>>1];if(0==f)return r;++i,r+=String.fromCharCode(f)}}function stringToUTF16(e,i,r){if(void 0===r&&(r=2147483647),r<2)return 0;for(var f=i,n=(r-=2)<2*e.length?r/2:e.length,t=0;t<n;++t){var a=e.charCodeAt(t);HEAP16[i>>1]=a,i+=2}return HEAP16[i>>1]=0,i-f}function lengthBytesUTF16(e){return 2*e.length}function UTF32ToString(e){for(var i=0,r="";;){var f=HEAP32[e+4*i>>2];if(0==f)return r;if(++i,f>=65536){var n=f-65536;r+=String.fromCharCode(55296|n>>10,56320|1023&n)}else r+=String.fromCharCode(f)}}function stringToUTF32(e,i,r){if(void 0===r&&(r=2147483647),r<4)return 0;for(var f=i,n=f+r-4,t=0;t<e.length;++t){var a=e.charCodeAt(t);if(a>=55296&&a<=57343)a=65536+((1023&a)<<10)|1023&e.charCodeAt(++t);if(HEAP32[i>>2]=a,(i+=4)+4>n)break}return HEAP32[i>>2]=0,i-f}function lengthBytesUTF32(e){for(var i=0,r=0;r<e.length;++r){var f=e.charCodeAt(r);f>=55296&&f<=57343&&++r,i+=4}return i}function demangle(e){var i=!!Module.___cxa_demangle;if(i)try{var r=_malloc(e.length);writeStringToMemory(e.substr(1),r);var f=_malloc(4),n=Module.___cxa_demangle(r,0,0,f);if(0===getValue(f,"i32")&&n)return Pointer_stringify(n)}catch(e){}finally{r&&_free(r),f&&_free(f),n&&_free(n)}var t=3,a={v:"void",b:"bool",c:"char",s:"short",i:"int",l:"long",f:"float",d:"double",w:"wchar_t",a:"signed char",h:"unsigned char",t:"unsigned short",j:"unsigned int",m:"unsigned long",x:"long long",y:"unsigned long long",z:"..."},s=[],l=!0;var o=e;try{if("Object._main"==e||"_main"==e)return"main()";if("number"==typeof e&&(e=Pointer_stringify(e)),"_"!==e[0])return e;if("_"!==e[1])return e;if("Z"!==e[2])return e;switch(e[3]){case"n":return"operator new()";case"d":return"operator delete()"}o=function i(r,f,n){f=f||1/0;var o,u="",c=[];if("N"===e[t]){if(o=function(){"K"===e[++t]&&t++;for(var i=[];"E"!==e[t];)if("S"!==e[t])if("C"!==e[t]){var r=parseInt(e.substr(t)),f=r.toString().length;if(!r||!f){t--;break}var n=e.substr(t+f,r);i.push(n),s.push(n),t+=f+r}else i.push(i[i.length-1]),t+=2;else{t++;var a=e.indexOf("_",t),l=e.substring(t,a)||0;i.push(s[l]||"?"),t=a+1}return t++,i}().join("::"),0===--f)return r?[o]:o}else if(("K"===e[t]||l&&"L"===e[t])&&t++,_=parseInt(e.substr(t))){var h=_.toString().length;o=e.substr(t+h,_),t+=h+_}if(l=!1,"I"===e[t]){t++;var d=i(!0);u+=i(!0,1,!0)[0]+" "+o+"<"+d.join(", ")+">"}else u=o;e:for(;t<e.length&&f-- >0;){var b=e[t++];if(b in a)c.push(a[b]);else switch(b){case"P":c.push(i(!0,1,!0)[0]+"*");break;case"R":c.push(i(!0,1,!0)[0]+"&");break;case"L":t++;var _=e.indexOf("E",t)-t;c.push(e.substr(t,_)),t+=_+2;break;case"A":_=parseInt(e.substr(t));if(t+=_.toString().length,"_"!==e[t])throw"?";t++,c.push(i(!0,1,!0)[0]+" ["+_+"]");break;case"E":break e;default:u+="?"+b;break e}}return n||1!==c.length||"void"!==c[0]||(c=[]),r?(u&&c.push(u+"?"),c):u+"("+c.join(", ")+")"}()}catch(e){o+="?"}return o.indexOf("?")>=0&&!i&&Runtime.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),o}function demangleAll(e){return e.replace(/__Z[\w\d_]+/g,(function(e){var i=demangle(e);return e===i?e:e+" ["+i+"]"}))}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(i){e=i}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE,Module.allocate=allocate,Module.getMemory=getMemory,Module.Pointer_stringify=Pointer_stringify,Module.AsciiToString=AsciiToString,Module.stringToAscii=stringToAscii,Module.UTF8ArrayToString=UTF8ArrayToString,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8Array=stringToUTF8Array,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8,Module.UTF16ToString=UTF16ToString,Module.stringToUTF16=stringToUTF16,Module.lengthBytesUTF16=lengthBytesUTF16,Module.UTF32ToString=UTF32ToString,Module.stringToUTF32=stringToUTF32,Module.lengthBytesUTF32=lengthBytesUTF32,Module.stackTrace=stackTrace;var PAGE_SIZE=4096,HEAP,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function alignMemoryPage(e){return e%4096>0&&(e+=4096-e%4096),e}var STATIC_BASE=0,STATICTOP=0,staticSealed=!1,STACK_BASE=0,STACKTOP=0,STACK_MAX=0,DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}for(var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||4e8,totalMemory=65536,buffer;totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK;)totalMemory<16777216?totalMemory*=2:totalMemory+=16777216;function callRuntimeCallbacks(e){for(;e.length>0;){var i=e.shift();if("function"!=typeof i){var r=i.func;"number"==typeof r?void 0===i.arg?Runtime.dynCall("v",r):Runtime.dynCall("vi",r,[i.arg]):r(void 0===i.arg?null:i.arg)}else i()}}totalMemory!==TOTAL_MEMORY&&(TOTAL_MEMORY=totalMemory),assert("undefined"!=typeof Int32Array&&"undefined"!=typeof Float64Array&&!!new Int32Array(1).subarray&&!!new Int32Array(1).set,"JS engine does not provide full typed array support"),buffer=new ArrayBuffer(TOTAL_MEMORY),HEAP8=new Int8Array(buffer),HEAP16=new Int16Array(buffer),HEAP32=new Int32Array(buffer),HEAPU8=new Uint8Array(buffer),HEAPU16=new Uint16Array(buffer),HEAPU32=new Uint32Array(buffer),HEAPF32=new Float32Array(buffer),HEAPF64=new Float64Array(buffer),HEAP32[0]=255,assert(255===HEAPU8[0]&&0===HEAPU8[3],"Typed arrays 2 must be run on a little-endian system"),Module.HEAP=HEAP,Module.buffer=buffer,Module.HEAP8=HEAP8,Module.HEAP16=HEAP16,Module.HEAP32=HEAP32,Module.HEAPU8=HEAPU8,Module.HEAPU16=HEAPU16,Module.HEAPU32=HEAPU32,Module.HEAPF32=HEAPF32,Module.HEAPF64=HEAPF64;var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for("function"==typeof Module.preRun&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for("function"==typeof Module.postRun&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}function addOnInit(e){__ATINIT__.unshift(e)}function addOnPreMain(e){__ATMAIN__.unshift(e)}function addOnExit(e){__ATEXIT__.unshift(e)}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}function intArrayFromString(e,i,r){var f=r>0?r:lengthBytesUTF8(e)+1,n=new Array(f),t=stringToUTF8Array(e,n,0,n.length);return i&&(n.length=t),n}function intArrayToString(e){for(var i=[],r=0;r<e.length;r++){var f=e[r];f>255&&(f&=255),i.push(String.fromCharCode(f))}return i.join("")}function writeStringToMemory(e,i,r){for(var f=intArrayFromString(e,r),n=0;n<f.length;){var t=f[n];HEAP8[i+n>>0]=t,n+=1}}function writeArrayToMemory(e,i){for(var r=0;r<e.length;r++)HEAP8[i++>>0]=e[r]}function writeAsciiToMemory(e,i,r){for(var f=0;f<e.length;++f)HEAP8[i++>>0]=e.charCodeAt(f);r||(HEAP8[i>>0]=0)}function unSign(e,i,r){return e>=0?e:i<=32?2*Math.abs(1<<i-1)+e:Math.pow(2,i)+e}function reSign(e,i,r){if(e<=0)return e;var f=i<=32?Math.abs(1<<i-1):Math.pow(2,i-1);return e>=f&&(i<=32||e>f)&&(e=-2*f+e),e}Module.addOnPreRun=addOnPreRun,Module.addOnInit=addOnInit,Module.addOnPreMain=addOnPreMain,Module.addOnExit=addOnExit,Module.addOnPostRun=addOnPostRun,Module.intArrayFromString=intArrayFromString,Module.intArrayToString=intArrayToString,Module.writeStringToMemory=writeStringToMemory,Module.writeArrayToMemory=writeArrayToMemory,Module.writeAsciiToMemory=writeAsciiToMemory,Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(e,i){var r=65535&e,f=65535&i;return r*f+((e>>>16)*f+r*(i>>>16)<<16)|0}),Math.imul=Math.imul,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var i=0;i<32;i++)if(e&1<<31-i)return i;return 32}),Math.clz32=Math.clz32;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_min=Math.min,Math_clz32=Math.clz32,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),0==runDependencies&&(null!==runDependencyWatcher&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var i=dependenciesFulfilled;dependenciesFulfilled=null,i()}}Module.addRunDependency=addRunDependency,Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var memoryInitializer=null,ASM_CONSTS=[];STATIC_BASE=8,STATICTOP=STATIC_BASE+59744,__ATINIT__.push({func:function(){__GLOBAL__I_000101()}},{func:function(){__GLOBAL__sub_I_jpegls_cpp()}},{func:function(){__GLOBAL__sub_I_iostream_cpp()}}),allocate([0,0,0,0,0,0,0,0,84,144,0,0,31,194,0,0,216,0,0,0,0,0,0,0,84,144,0,0,237,191,0,0,48,0,0,0,0,0,0,0,44,144,0,0,41,192,0,0,84,144,0,0,55,192,0,0,48,0,0,0,0,0,0,0,84,144,0,0,115,192,0,0,48,0,0,0,0,0,0,0,84,144,0,0,175,192,0,0,152,3,0,0,0,0,0,0,84,144,0,0,241,192,0,0,216,3,0,0,0,0,0,0,84,144,0,0,55,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,95,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,135,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,175,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,216,193,0,0,48,0,0,0,0,0,0,0,84,144,0,0,241,193,0,0,48,0,0,0,0,0,0,0,44,144,0,0,13,194,0,0,84,144,0,0,80,194,0,0,216,0,0,0,0,0,0,0,84,144,0,0,44,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,139,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,179,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,219,194,0,0,48,0,0,0,0,0,0,0,84,144,0,0,3,195,0,0,48,0,0,0,0,0,0,0,84,144,0,0,103,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,157,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,211,195,0,0,216,0,0,0,0,0,0,0,84,144,0,0,8,196,0,0,216,0,0,0,0,0,0,0,84,144,0,0,71,196,0,0,216,0,0,0,0,0,0,0,84,144,0,0,138,196,0,0,160,1,0,0,0,0,0,0,44,144,0,0,120,196,0,0,84,144,0,0,187,196,0,0,160,1,0,0,0,0,0,0,84,144,0,0,246,196,0,0,160,1,0,0,0,0,0,0,84,144,0,0,49,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,103,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,157,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,210,197,0,0,160,1,0,0,0,0,0,0,84,144,0,0,17,198,0,0,160,1,0,0,0,0,0,0,84,144,0,0,86,198,0,0,72,3,0,0,0,0,0,0,84,144,0,0,162,198,0,0,56,2,0,0,0,0,0,0,44,144,0,0,182,198,0,0,84,144,0,0,196,198,0,0,56,2,0,0,0,0,0,0,84,144,0,0,112,199,0,0,96,2,0,0,0,0,0,0,44,144,0,0,125,199,0,0,84,144,0,0,138,199,0,0,96,2,0,0,0,0,0,0,44,144,0,0,156,199,0,0,84,144,0,0,169,199,0,0,96,2,0,0,0,0,0,0,84,144,0,0,181,199,0,0,120,2,0,0,0,0,0,0,84,144,0,0,214,199,0,0,144,2,0,0,0,0,0,0,84,144,0,0,28,200,0,0,144,2,0,0,0,0,0,0,84,144,0,0,248,199,0,0,176,2,0,0,0,0,0,0,84,144,0,0,62,200,0,0,160,2,0,0,0,0,0,0,84,144,0,0,99,200,0,0,160,2,0,0,0,0,0,0,84,144,0,0,182,221,0,0,160,3,0,0,0,0,0,0,84,144,0,0,245,221,0,0,160,3,0,0,0,0,0,0,84,144,0,0,13,222,0,0,152,3,0,0,0,0,0,0,84,144,0,0,38,222,0,0,152,3,0,0,0,0,0,0,44,144,0,0,62,222,0,0,84,144,0,0,87,222,0,0,104,2,0,0,0,0,0,0,44,144,0,0,110,222,0,0,84,144,0,0,135,222,0,0,72,3,0,0,0,0,0,0,84,144,0,0,161,222,0,0,56,3,0,0,0,0,0,0,44,144,0,0,187,222,0,0,84,144,0,0,205,222,0,0,112,3,0,0,0,0,0,0,84,144,0,0,247,222,0,0,112,3,0,0,0,0,0,0,44,144,0,0,33,223,0,0,44,144,0,0,82,223,0,0,124,144,0,0,131,223,0,0,0,0,0,0,1,0,0,0,120,3,0,0,3,244,255,255,124,144,0,0,178,223,0,0,0,0,0,0,1,0,0,0,136,3,0,0,3,244,255,255,124,144,0,0,225,223,0,0,0,0,0,0,1,0,0,0,120,3,0,0,3,244,255,255,124,144,0,0,16,224,0,0,0,0,0,0,1,0,0,0,136,3,0,0,3,244,255,255,84,144,0,0,63,224,0,0,80,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,144,0,0,187,224,0,0,48,3,0,0,0,0,0,0,124,144,0,0,209,224,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,64,10,0,0,2,0,0,0,124,144,0,0,227,224,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,124,144,0,0,5,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,124,144,0,0,40,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,84,144,0,0,75,225,0,0,144,4,0,0,0,0,0,0,84,144,0,0,109,225,0,0,144,4,0,0,0,0,0,0,124,144,0,0,144,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,72,10,0,0,2,0,0,0,84,144,0,0,178,225,0,0,32,4,0,0,0,0,0,0,84,144,0,0,200,225,0,0,32,4,0,0,0,0,0,0,84,144,0,0,220,225,0,0,32,4,0,0,0,0,0,0,124,144,0,0,240,225,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,64,10,0,0,2,0,0,0,84,144,0,0,2,226,0,0,32,4,0,0,0,0,0,0,84,144,0,0,23,226,0,0,32,4,0,0,0,0,0,0,124,144,0,0,44,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,80,10,0,0,0,0,0,0,124,144,0,0,112,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,104,10,0,0,0,0,0,0,124,144,0,0,180,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,128,10,0,0,0,0,0,0,124,144,0,0,248,226,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,152,10,0,0,0,0,0,0,124,144,0,0,60,227,0,0,0,0,0,0,3,0,0,0,32,4,0,0,2,0,0,0,176,10,0,0,2,0,0,0,184,10,0,0,0,8,0,0,124,144,0,0,129,227,0,0,0,0,0,0,3,0,0,0,32,4,0,0,2,0,0,0,176,10,0,0,2,0,0,0,192,10,0,0,0,8,0,0,124,144,0,0,198,227,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,200,10,0,0,0,8,0,0,124,144,0,0,11,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,200,10,0,0,0,8,0,0,124,144,0,0,80,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,108,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,136,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,164,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,208,10,0,0,2,0,0,0,124,144,0,0,192,228,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,216,10,0,0,0,0,0,0,124,144,0,0,6,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,224,10,0,0,0,0,0,0,124,144,0,0,76,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,232,10,0,0,0,0,0,0,124,144,0,0,146,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,240,10,0,0,0,0,0,0,124,144,0,0,216,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,248,10,0,0,2,0,0,0,124,144,0,0,237,229,0,0,0,0,0,0,2,0,0,0,32,4,0,0,2,0,0,0,248,10,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,144,0,0,73,233,0,0,44,144,0,0,50,233,0,0,124,144,0,0,28,233,0,0,0,0,0,0,1,0,0,0,8,11,0,0,0,0,0,0,124,144,0,0,237,232,0,0,0,0,0,0,1,0,0,0,8,11,0,0,0,0,0,0,124,144,0,0,215,232,0,0,0,0,0,0,1,0,0,0,0,11,0,0,0,0,0,0,124,144,0,0,168,232,0,0,0,0,0,0,1,0,0,0,0,11,0,0,0,0,0,0,44,144,0,0,149,232,0,0,44,144,0,0,115,232,0,0,44,144,0,0,81,232,0,0,44,144,0,0,60,232,0,0,44,144,0,0,39,232,0,0,44,144,0,0,14,232,0,0,44,144,0,0,245,231,0,0,44,144,0,0,220,231,0,0,44,144,0,0,195,231,0,0,44,144,0,0,171,231,0,0,44,144,0,0,190,232,0,0,44,144,0,0,3,233],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE),allocate([156,143,0,0,0,0,0,0,8,2,0,0,1,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,248,1,0,0,3,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,232,1,0,0,5,0,0,0,6,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,216,1,0,0,7,0,0,0,8,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,200,1,0,0,9,0,0,0,10,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,184,1,0,0,11,0,0,0,12,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,0,0,0,0,168,1,0,0,13,0,0,0,14,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,0,0,0,0,144,1,0,0,15,0,0,0,16,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,128,1,0,0,17,0,0,0,18,0,0,0,9,0,0,0,1,0,0,0,9,0,0,0,0,0,0,0,112,1,0,0,19,0,0,0,20,0,0,0,10,0,0,0,2,0,0,0,10,0,0,0,0,0,0,0,96,1,0,0,21,0,0,0,22,0,0,0,11,0,0,0,3,0,0,0,11,0,0,0,0,0,0,0,80,1,0,0,23,0,0,0,24,0,0,0,12,0,0,0,4,0,0,0,12,0,0,0,0,0,0,0,64,1,0,0,25,0,0,0,26,0,0,0,13,0,0,0,5,0,0,0,13,0,0,0,0,0,0,0,240,0,0,0,27,0,0,0,28,0,0,0,14,0,0,0,6,0,0,0,14,0,0,0,0,0,0,0,224,0,0,0,29,0,0,0,30,0,0,0,15,0,0,0,7,0,0,0,15,0,0,0,0,0,0,0,16,0,0,0,31,0,0,0,32,0,0,0,16,0,0,0,8,0,0,0,16,0,0,0,0,0,0,0,200,0,0,0,33,0,0,0,34,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,184,0,0,0,33,0,0,0,35,0,0,0,3,0,0,0,4,0,0,0,56,0,0,0,0,0,0,0,216,3,0,0,36,0,0,0,37,0,0,0,200,255,255,255,200,255,255,255,216,3,0,0,38,0,0,0,39,0,0,0,56,0,0,0,0,0,0,0,104,0,0,0,40,0,0,0,41,0,0,0,200,255,255,255,200,255,255,255,104,0,0,0,42,0,0,0,43,0,0,0,0,0,0,0,88,0,0,0,44,0,0,0,45,0,0,0,17,0,0,0,1,0,0,0,1,0,0,0,5,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,17,0,0,0,3,0,0,0,18,0,0,0,104,141,0,0,64,141,0,0,84,141,0,0,124,141,0,0,0,0,0,0,32,0,0,0,46,0,0,0,47,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,56,0,0,0,48,0,0,0,49,0,0,0,8,0,0,0,9,0,0,0,0,0,0,0,72,0,0,0,50,0,0,0,51,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,120,0,0,0,52,0,0,0,53,0,0,0,12,0,0,0,13,0,0,0,0,0,0,0,136,0,0,0,54,0,0,0,55,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,152,0,0,0,56,0,0,0,57,0,0,0,16,0,0,0,17,0,0,0,0,0,0,0,168,0,0,0,58,0,0,0,59,0,0,0,18,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,216,0,0,0,60,0,0,0,61,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,62,0,0,0,63,0,0,0,20,0,0,0,21,0,0,0,0,0,0,0,16,1,0,0,64,0,0,0,65,0,0,0,22,0,0,0,23,0,0,0,0,0,0,0,32,1,0,0,66,0,0,0,67,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,48,1,0,0,68,0,0,0,69,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,160,1,0,0,70,0,0,0,71,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,24,2,0,0,72,0,0,0,73,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,2,0,0,0,0,0,0,0,40,2,0,0,74,0,0,0,75,0,0,0,18,0,0,0,0,0,0,0,64,2,0,0,76,0,0,0,77,0,0,0,19,0,0,0,2,0,0,0,0,0,0,0,80,2,0,0,78,0,0,0,79,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,104,2,0,0,80,0,0,0,81,0,0,0,7,0,0,0,0,0,0,0,128,2,0,0,82,0,0,0,83,0,0,0,8,0,0,0,0,0,0,0,160,2,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,2,0,0,0,9,0,0,0,28,0,0,0,0,0,0,0,208,2,0,0,84,0,0,0,88,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,3,0,0,0,10,0,0,0,29,0,0,0,0,0,0,0,224,2,0,0,84,0,0,0,89,0,0,0,86,0,0,0,87,0,0,0,6,0,0,0,4,0,0,0,11,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,1,203,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,88,146,0,0,200,146,0,0,56,147,0,0,56,147,0,0,120,187,0,0,168,155,0,0,168,149,0,0,0,0,0,0,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,9,0,0,0,159,219,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,9,0,0,0,151,215,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,9,0,0,0,143,211,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+35640),allocate([1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+39844),allocate([240,2,0,0,90,0,0,0,91,0,0,0,20,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,10,0,0,0,11,0,0,0,13,0,0,0,12,0,0,0,13,0,0,0,19,0,0,0,14,0,0,0,20,0,0,0,0,0,0,0,0,3,0,0,90,0,0,0,92,0,0,0,21,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,14,0,0,0,11,0,0,0,13,0,0,0,15,0,0,0,16,0,0,0,21,0,0,0,15,0,0,0,22,0,0,0,0,0,0,0,16,3,0,0,93,0,0,0,94,0,0,0,22,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,17,0,0,0,2,0,0,0,2,0,0,0,18,0,0,0,4,0,0,0,23,0,0,0,16,0,0,0,24,0,0,0,0,0,0,0,32,3,0,0,93,0,0,0,95,0,0,0,23,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,19,0,0,0,20,0,0,0,25,0,0,0,3,0,0,0,26,0,0,0,0,0,0,0,56,3,0,0,96,0,0,0,97,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,3,0,0,93,0,0,0,98,0,0,0,17,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,18,0,0,0,4,0,0,0,23,0,0,0,3,0,0,0,26,0,0,0,0,0,0,0,160,3,0,0,90,0,0,0,99,0,0,0,24,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,14,0,0,0,11,0,0,0,13,0,0,0,12,0,0,0,13,0,0,0,19,0,0,0,15,0,0,0,22,0,0,0,8,0,0,0,0,0,0,0,168,3,0,0,100,0,0,0,101,0,0,0,248,255,255,255,248,255,255,255,168,3,0,0,102,0,0,0,103,0,0,0,8,0,0,0,0,0,0,0,192,3,0,0,104,0,0,0,105,0,0,0,248,255,255,255,248,255,255,255,192,3,0,0,106,0,0,0,107,0,0,0,4,0,0,0,0,0,0,0,216,3,0,0,36,0,0,0,37,0,0,0,252,255,255,255,252,255,255,255,216,3,0,0,38,0,0,0,39,0,0,0,4,0,0,0,0,0,0,0,240,3,0,0,108,0,0,0,109,0,0,0,252,255,255,255,252,255,255,255,240,3,0,0,110,0,0,0,111,0,0,0,0,0,0,0,96,3,0,0,112,0,0,0,113,0,0,0,7,0,0,0,0,0,0,0,112,3,0,0,114,0,0,0,115,0,0,0,0,0,0,0,8,4,0,0,72,0,0,0,116,0,0,0,21,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,117,0,0,0,118,0,0,0,119,0,0,0,1,0,0,0,33,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,5,0,0,120,0,0,0,121,0,0,0,119,0,0,0,2,0,0,0,34,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,5,0,0,122,0,0,0,123,0,0,0,119,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,5,0,0,124,0,0,0,125,0,0,0,119,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,5,0,0,126,0,0,0,127,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,23,0,0,0,5,0,0,0,24,0,0,0,1,0,0,0,2,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,5,0,0,128,0,0,0,129,0,0,0,119,0,0,0,7,0,0,0,8,0,0,0,25,0,0,0,9,0,0,0,26,0,0,0,3,0,0,0,4,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,5,0,0,130,0,0,0,131,0,0,0,119,0,0,0,22,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,1,0,0,0,248,255,255,255,224,5,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,6,0,0,132,0,0,0,133,0,0,0,119,0,0,0,30,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,2,0,0,0,248,255,255,255,8,6,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,6,0,0,134,0,0,0,135,0,0,0,119,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,6,0,0,136,0,0,0,137,0,0,0,119,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,6,0,0,138,0,0,0,139,0,0,0,119,0,0,0,38,0,0,0,39,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,40,0,0,0,29,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,6,0,0,140,0,0,0,141,0,0,0,119,0,0,0,41,0,0,0,42,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,43,0,0,0,35,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,176,6,0,0,142,0,0,0,143,0,0,0,119,0,0,0,44,0,0,0,45,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,46,0,0,0,41,0,0,0,42,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,6,0,0,144,0,0,0,145,0,0,0,119,0,0,0,47,0,0,0,48,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,49,0,0,0,47,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,6,0,0,146,0,0,0,147,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,7,0,0,148,0,0,0,149,0,0,0,119,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,7,0,0,150,0,0,0,151,0,0,0,119,0,0,0,1,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,80,7,0,0,152,0,0,0,153,0,0,0,119,0,0,0,2,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,7,0,0,154,0,0,0,155,0,0,0,119,0,0,0,19,0,0,0,7,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,7,0,0,156,0,0,0,157,0,0,0,119,0,0,0,20,0,0,0,8,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,4,0,0,158,0,0,0,159,0,0,0,119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,5,0,0,160,0,0,0,161,0,0,0,119,0,0,0,27,0,0,0,21,0,0,0,28,0,0,0,22,0,0,0,29,0,0,0,9,0,0,0,23,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,4,0,0,162,0,0,0,163,0,0,0,119,0,0,0,3,0,0,0,4,0,0,0,12,0,0,0,50,0,0,0,51,0,0,0,13,0,0,0,52,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,5,0,0,164,0,0,0,165,0,0,0,119,0,0,0,53,0,0,0,54,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,0,0,0,0,80,5,0,0,166,0,0,0,167,0,0,0,119,0,0,0,55,0,0,0,56,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,0,0,0,0,32,4,0,0,168,0,0,0,169,0,0,0,119,0,0,0,0,0,0,0,48,4,0,0,168,0,0,0,170,0,0,0,119,0,0,0,24,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,30,0,0,0,25,0,0,0,31,0,0,0,26,0,0,0,32,0,0,0,13,0,0,0,27,0,0,0,14,0,0,0,0,0,0,0,80,4,0,0,168,0,0,0,171,0,0,0,119,0,0,0,5,0,0,0,6,0,0,0,15,0,0,0,57,0,0,0,58,0,0,0,16,0,0,0,59,0,0,0,0,0,0,0,112,4,0,0,168,0,0,0,172,0,0,0,119,0,0,0,7,0,0,0,8,0,0,0,17,0,0,0,60,0,0,0,61,0,0,0,18,0,0,0,62,0,0,0,0,0,0,0,144,4,0,0,168,0,0,0,173,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,176,4,0,0,168,0,0,0,174,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,192,4,0,0,168,0,0,0,175,0,0,0,119,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,37,0,0,0,89,0,0,0,45,0,0,0,37,0,0,0,109,0,0,0,45,0,0,0,37,0,0,0,100,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,0,0,0,114,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,102,0,0,0,97,0,0,0,108,0,0,0,115,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,110,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,114,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,117,0,0,0,114,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,114,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,99,0,0,0,104,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,105,0,0,0,108,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,101,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,121,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,117,0,0,0,115,0,0,0,116,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,116,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,111,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,77,0,0,0,0,0,0,0,80,0,0,0,77,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,97,0,0,0,32,0,0,0,37,0,0,0,98,0,0,0,32,0,0,0,37,0,0,0,100,0,0,0,32,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,89,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,3,32,2,32,2,32,2,32,2,32,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,1,96,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,213,8,213,8,213,8,213,8,213,8,213,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,4,192,4,192,4,192,4,192,4,192,4,192,8,214,8,214,8,214,8,214,8,214,8,214,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,4,192,4,192,4,192,4,192,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,97,119,83,116,114,101,97,109,32,111,114,32,114,97,119,68,97,116,97,32,110,101,101,100,115,32,116,111,32,114,101,102,101,114,101,110,99,101,32,116,111,32,115,111,109,101,116,104,105,110,103,0,119,105,100,116,104,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,54,53,53,51,53,93,0,104,101,105,103,104,116,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,54,53,53,51,53,93,0,98,105,116,115,112,101,114,115,97,109,112,108,101,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,50,44,32,49,54,93,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,110,101,101,100,115,32,116,111,32,98,101,32,115,101,116,32,116,111,32,97,32,118,97,108,117,101,32,111,102,32,123,78,111,110,101,44,32,83,97,109,112,108,101,44,32,76,105,110,101,125,0,99,111,109,112,111,110,101,110,116,115,32,110,101,101,100,115,32,116,111,32,98,101,32,105,110,32,116,104,101,32,114,97,110,103,101,32,91,49,44,32,50,53,53,93,0,117,110,99,111,109,112,114,101,115,115,101,100,32,115,105,122,101,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,32,119,105,116,104,32,116,104,101,32,111,116,104,101,114,32,112,97,114,97,109,101,116,101,114,115,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,99,97,110,110,111,116,32,98,101,32,115,101,116,32,116,111,32,83,97,109,112,108,101,32,105,110,32,99,111,109,98,105,110,97,116,105,111,110,32,119,105,116,104,32,99,111,109,112,111,110,101,110,116,115,32,61,32,52,0,105,110,116,101,114,108,101,97,118,101,77,111,100,101,32,99,97,110,32,111,110,108,121,32,98,101,32,115,101,116,32,116,111,32,78,111,110,101,32,105,110,32,99,111,109,98,105,110,97,116,105,111,110,32,119,105,116,104,32,99,111,109,112,111,110,101,110,116,115,32,61,32,49,0,67,111,108,111,114,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110,32,0,78,111,32,109,111,114,101,32,98,121,116,101,115,32,97,118,97,105,108,97,98,108,101,32,105,110,32,105,110,112,117,116,32,98,117,102,102,101,114,44,32,115,116,105,108,108,32,110,101,101,100,101,100,105,110,103,32,0,65,110,32,111,100,100,32,110,117,109,98,101,114,32,111,102,32,98,121,116,101,115,32,40,0,41,32,99,97,110,110,111,116,32,98,101,32,115,119,97,112,112,101,100,46,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,116,69,69,69,0,49,49,80,114,111,99,101,115,115,76,105,110,101,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,116,69,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,116,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,105,110,103,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,57,98,97,115,105,99,95,111,115,116,114,105,110,103,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,51,84,114,97,110,115,102,111,114,109,78,111,110,101,73,116,69,69,0,50,50,80,111,115,116,80,114,111,99,101,115,83,105,110,103,108,101,83,116,114,101,97,109,0,50,53,80,111,115,116,80,114,111,99,101,115,83,105,110,103,108,101,67,111,109,112,111,110,101,110,116,0,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,116,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,55,84,114,105,112,108,101,116,73,116,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,51,84,114,97,110,115,102,111,114,109,78,111,110,101,73,104,69,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,55,84,114,105,112,108,101,116,73,104,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,54,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,50,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,104,76,105,56,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,55,84,114,105,112,108,101,116,73,104,69,76,105,56,69,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,104,69,49,53,69,110,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,116,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,55,84,114,105,112,108,101,116,73,116,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,55,84,114,105,112,108,101,116,73,104,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,54,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,50,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,104,76,105,56,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,55,84,114,105,112,108,101,116,73,104,69,76,105,56,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,104,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,67,104,97,114,76,83,32,101,114,114,111,114,0,99,104,97,114,108,115,0,49,53,99,104,97,114,108,115,95,99,97,116,101,103,111,114,121,0,112,97,114,97,109,115,46,88,116,104,117,109,98,110,97,105,108,32,105,115,32,62,32,48,32,98,117,116,32,112,97,114,97,109,115,46,116,104,117,109,98,110,97,105,108,32,61,61,32,110,117,108,108,95,112,116,114,0,49,55,74,112,101,103,77,97,114,107,101,114,83,101,103,109,101,110,116,0,49,49,74,112,101,103,83,101,103,109,101,110,116,0,50,48,74,112,101,103,73,109,97,103,101,68,97,116,97,83,101,103,109,101,110,116,0,69,120,112,101,99,116,101,100,32,74,80,69,71,32,77,97,114,107,101,114,32,115,116,97,114,116,32,98,121,116,101,32,48,120,70,70,32,98,117,116,32,116,104,101,32,98,121,116,101,32,118,97,108,117,101,32,119,97,115,32,48,120,0,74,80,69,71,32,101,110,99,111,100,105,110,103,32,119,105,116,104,32,109,97,114,107,101,114,32,0,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,46,0,85,110,107,110,111,119,110,32,74,80,69,71,32,109,97,114,107,101,114,32,0,32,101,110,99,111,117,110,116,101,114,101,100,46,0,109,114,102,120,0,83,116,57,98,97,100,95,97,108,108,111,99,0,83,116,57,101,120,99,101,112,116,105,111,110,0,83,116,49,51,114,117,110,116,105,109,101,95,101,114,114,111,114,0,83,116,57,116,121,112,101,95,105,110,102,111,0,83,116,56,98,97,100,95,99,97,115,116,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,57,95,95,112,111,105,110,116,101,114,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,112,98,97,115,101,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,49,95,95,118,109,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,85,115,101,114,115,47,99,104,97,102,101,121,47,101,109,115,100,107,95,112,111,114,116,97,98,108,101,47,101,109,115,99,114,105,112,116,101,110,47,49,46,51,53,46,48,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,115,116,114,105,110,103,0,95,95,116,104,114,111,119,95,108,101,110,103,116,104,95,101,114,114,111,114,0,33,34,118,101,99,116,111,114,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,85,115,101,114,115,47,99,104,97,102,101,121,47,101,109,115,100,107,95,112,111,114,116,97,98,108,101,47,101,109,115,99,114,105,112,116,101,110,47,49,46,51,53,46,48,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,118,101,99,116,111,114,0,112,116,104,114,101,97,100,95,111,110,99,101,32,102,97,105,108,117,114,101,32,105,110,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,95,102,97,115,116,40,41,0,115,116,100,58,58,98,97,100,95,97,108,108,111,99,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,114,101,116,117,114,110,101,100,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,116,104,114,101,119,32,97,110,32,101,120,99,101,112,116,105,111,110,0,115,116,100,58,58,98,97,100,95,99,97,115,116,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,112,116,104,114,101,97,100,32,107,101,121,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,99,97,110,110,111,116,32,122,101,114,111,32,111,117,116,32,116,104,114,101,97,100,32,118,97,108,117,101,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,58,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,102,111,114,101,105,103,110,32,101,120,99,101,112,116,105,111,110,0,116,101,114,109,105,110,97,116,105,110,103,0,117,110,99,97,117,103,104,116,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+42396),allocate([32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,105,110,102,105,110,105,116,121,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,80,79,83,73,88],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+52636),allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,119,69,69,0,117,110,115,117,112,112,111,114,116,101,100,32,108,111,99,97,108,101,32,102,111,114,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,52,95,95,115,104,97,114,101,100,95,99,111,117,110,116,69,0,78,83,116,51,95,95,49,49,50,115,121,115,116,101,109,95,101,114,114,111,114,69,0,78,83,116,51,95,95,49,49,52,101,114,114,111,114,95,99,97,116,101,103,111,114,121,69,0,78,83,116,51,95,95,49,49,50,95,95,100,111,95,109,101,115,115,97,103,101,69,0,58,32,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,57,95,95,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,69,0,105,111,115,95,98,97,115,101,58,58,99,108,101,97,114,0,105,111,115,116,114,101,97,109,0,117,110,115,112,101,99,105,102,105,101,100,32,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,32,101,114,114,111,114,0,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,65,66,67,68,69,70,120,88,43,45,112,80,105,73,110,78,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,102,97,99,101,116,69,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,119,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,99,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,115,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,105,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,49,54,95,95,110,97,114,114,111,119,95,116,111,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,49,49,55,95,95,119,105,100,101,110,95,102,114,111,109,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,119,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,95,95,105,109,112,69,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,99,69,69,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,119,69,69,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,99,69,69,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,99,69,69,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,119,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,48,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,49,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,48,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,49,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,99,69,69,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,119,69,69,0,37,112,0,67,0,37,0,0,0,0,0,108,0,108,108,0,0,76,0,37,112,0,0,0,0,37,72,58,37,77,58,37,83,37,109,47,37,100,47,37,121,37,89,45,37,109,45,37,100,37,73,58,37,77,58,37,83,32,37,112,37,72,58,37,77,37,72,58,37,77,58,37,83,108,111,99,97,108,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,48,49,50,51,52,53,54,55,56,57,0,37,76,102,0,109,111,110,101,121,95,103,101,116,32,101,114,114,111,114,0,48,49,50,51,52,53,54,55,56,57,0,37,46,48,76,102,0,116,114,117,101,0,102,97,108,115,101,0,83,117,110,100,97,121,0,77,111,110,100,97,121,0,84,117,101,115,100,97,121,0,87,101,100,110,101,115,100,97,121,0,84,104,117,114,115,100,97,121,0,70,114,105,100,97,121,0,83,97,116,117,114,100,97,121,0,83,117,110,0,77,111,110,0,84,117,101,0,87,101,100,0,84,104,117,0,70,114,105,0,83,97,116,0,74,97,110,117,97,114,121,0,70,101,98,114,117,97,114,121,0,77,97,114,99,104,0,65,112,114,105,108,0,77,97,121,0,74,117,110,101,0,74,117,108,121,0,65,117,103,117,115,116,0,83,101,112,116,101,109,98,101,114,0,79,99,116,111,98,101,114,0,78,111,118,101,109,98,101,114,0,68,101,99,101,109,98,101,114,0,74,97,110,0,70,101,98,0,77,97,114,0,65,112,114,0,74,117,110,0,74,117,108,0,65,117,103,0,83,101,112,0,79,99,116,0,78,111,118,0,68,101,99,0,65,77,0,80,77,0,37,109,47,37,100,47,37,121,0,37,72,58,37,77,58,37,83,0,37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,0,37,73,58,37,77,58,37,83,32,37,112,0,78,83,116,51,95,95,49,49,51,109,101,115,115,97,103,101,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,48,95,95,116,105,109,101,95,112,117,116,69,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,119,69,69,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,99,69,69,0,78,83,116,51,95,95,49,57,116,105,109,101,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,112,117,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,119,69,69,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,103,101,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,49,49,50,99,111,100,101,99,118,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,48,99,116,121,112,101,95,98,97,115,101,69,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+56215);var tempDoublePtr=Runtime.alignMemory(allocate(12,"i8",ALLOC_STATIC),8);function copyTempFloat(e){HEAP8[tempDoublePtr]=HEAP8[e],HEAP8[tempDoublePtr+1]=HEAP8[e+1],HEAP8[tempDoublePtr+2]=HEAP8[e+2],HEAP8[tempDoublePtr+3]=HEAP8[e+3]}function copyTempDouble(e){HEAP8[tempDoublePtr]=HEAP8[e],HEAP8[tempDoublePtr+1]=HEAP8[e+1],HEAP8[tempDoublePtr+2]=HEAP8[e+2],HEAP8[tempDoublePtr+3]=HEAP8[e+3],HEAP8[tempDoublePtr+4]=HEAP8[e+4],HEAP8[tempDoublePtr+5]=HEAP8[e+5],HEAP8[tempDoublePtr+6]=HEAP8[e+6],HEAP8[tempDoublePtr+7]=HEAP8[e+7]}function _atexit(e,i){__ATEXIT__.unshift({func:e,arg:i})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}function ___assert_fail(e,i,r,f){throw ABORT=!0,"Assertion failed: "+Pointer_stringify(e)+", at: "+[i?Pointer_stringify(i):"unknown filename",r,f?Pointer_stringify(f):"unknown function"]+" at "+stackTrace()}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}assert(tempDoublePtr%8==0),Module._i64Subtract=_i64Subtract;var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:function(e){if(!e||EXCEPTIONS.infos[e])return e;for(var i in EXCEPTIONS.infos){if(EXCEPTIONS.infos[i].adjusted===e)return i}return e},addRef:function(e){e&&EXCEPTIONS.infos[e].refcount++},decRef:function(e){if(e){var i=EXCEPTIONS.infos[e];assert(i.refcount>0),i.refcount--,0===i.refcount&&(i.destructor&&Runtime.dynCall("vi",i.destructor,[e]),delete EXCEPTIONS.infos[e],___cxa_free_exception(e))}},clearRef:function(e){e&&(EXCEPTIONS.infos[e].refcount=0)}};function ___resumeException(e){throw EXCEPTIONS.last||(EXCEPTIONS.last=e),EXCEPTIONS.clearRef(EXCEPTIONS.deAdjust(e)),e}function ___cxa_find_matching_catch(){var e=EXCEPTIONS.last;if(!e)return 0|(asm.setTempRet0(0),0);var i=EXCEPTIONS.infos[e],r=i.type;if(!r)return 0|(asm.setTempRet0(0),e);var f=Array.prototype.slice.call(arguments);Module.___cxa_is_pointer_type(r);___cxa_find_matching_catch.buffer||(___cxa_find_matching_catch.buffer=_malloc(4)),HEAP32[___cxa_find_matching_catch.buffer>>2]=e,e=___cxa_find_matching_catch.buffer;for(var n=0;n<f.length;n++)if(f[n]&&Module.___cxa_can_catch(f[n],r,e))return e=HEAP32[e>>2],i.adjusted=e,0|(asm.setTempRet0(f[n]),e);return e=HEAP32[e>>2],0|(asm.setTempRet0(r),e)}function ___cxa_throw(e,i,r){throw EXCEPTIONS.infos[e]={ptr:e,adjusted:e,type:i,destructor:r,refcount:0},EXCEPTIONS.last=e,"uncaught_exception"in __ZSt18uncaught_exceptionv?__ZSt18uncaught_exceptionv.uncaught_exception++:__ZSt18uncaught_exceptionv.uncaught_exception=1,e}Module._memset=_memset;var _BDtoILow=!0,_emscripten_resume=!0;function ___gxx_personality_v0(){}var _emscripten_landingpad=!0;function __isLeapYear(e){return e%4==0&&(e%100!=0||e%400==0)}function __arraySum(e,i){for(var r=0,f=0;f<=i;r+=e[f++]);return r}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31],__MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(e,i){for(var r=new Date(e.getTime());i>0;){var f=__isLeapYear(r.getFullYear()),n=r.getMonth(),t=(f?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[n];if(!(i>t-r.getDate()))return r.setDate(r.getDate()+i),r;i-=t-r.getDate()+1,r.setDate(1),n<11?r.setMonth(n+1):(r.setMonth(0),r.setFullYear(r.getFullYear()+1))}return r}function _strftime(e,i,r,f){var n=HEAP32[f+40>>2],t={tm_sec:HEAP32[f>>2],tm_min:HEAP32[f+4>>2],tm_hour:HEAP32[f+8>>2],tm_mday:HEAP32[f+12>>2],tm_mon:HEAP32[f+16>>2],tm_year:HEAP32[f+20>>2],tm_wday:HEAP32[f+24>>2],tm_yday:HEAP32[f+28>>2],tm_isdst:HEAP32[f+32>>2],tm_gmtoff:HEAP32[f+36>>2],tm_zone:n?Pointer_stringify(n):""},a=Pointer_stringify(r),s={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S"};for(var l in s)a=a.replace(new RegExp(l,"g"),s[l]);var o=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],u=["January","February","March","April","May","June","July","August","September","October","November","December"];function c(e,i,r){for(var f="number"==typeof e?e.toString():e||"";f.length<i;)f=r[0]+f;return f}function h(e,i){return c(e,i,"0")}function d(e,i){function r(e){return e<0?-1:e>0?1:0}var f;return 0===(f=r(e.getFullYear()-i.getFullYear()))&&0===(f=r(e.getMonth()-i.getMonth()))&&(f=r(e.getDate()-i.getDate())),f}function b(e){switch(e.getDay()){case 0:return new Date(e.getFullYear()-1,11,29);case 1:return e;case 2:return new Date(e.getFullYear(),0,3);case 3:return new Date(e.getFullYear(),0,2);case 4:return new Date(e.getFullYear(),0,1);case 5:return new Date(e.getFullYear()-1,11,31);case 6:return new Date(e.getFullYear()-1,11,30)}}function _(e){var i=__addDays(new Date(e.tm_year+1900,0,1),e.tm_yday),r=new Date(i.getFullYear(),0,4),f=new Date(i.getFullYear()+1,0,4),n=b(r),t=b(f);return d(n,i)<=0?d(t,i)<=0?i.getFullYear()+1:i.getFullYear():i.getFullYear()-1}var k={"%a":function(e){return o[e.tm_wday].substring(0,3)},"%A":function(e){return o[e.tm_wday]},"%b":function(e){return u[e.tm_mon].substring(0,3)},"%B":function(e){return u[e.tm_mon]},"%C":function(e){return h((e.tm_year+1900)/100|0,2)},"%d":function(e){return h(e.tm_mday,2)},"%e":function(e){return c(e.tm_mday,2," ")},"%g":function(e){return _(e).toString().substring(2)},"%G":function(e){return _(e)},"%H":function(e){return h(e.tm_hour,2)},"%I":function(e){return h(e.tm_hour<13?e.tm_hour:e.tm_hour-12,2)},"%j":function(e){return h(e.tm_mday+__arraySum(__isLeapYear(e.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,e.tm_mon-1),3)},"%m":function(e){return h(e.tm_mon+1,2)},"%M":function(e){return h(e.tm_min,2)},"%n":function(){return"\n"},"%p":function(e){return e.tm_hour>0&&e.tm_hour<13?"AM":"PM"},"%S":function(e){return h(e.tm_sec,2)},"%t":function(){return"\t"},"%u":function(e){return new Date(e.tm_year+1900,e.tm_mon+1,e.tm_mday,0,0,0,0).getDay()||7},"%U":function(e){var i=new Date(e.tm_year+1900,0,1),r=0===i.getDay()?i:__addDays(i,7-i.getDay()),f=new Date(e.tm_year+1900,e.tm_mon,e.tm_mday);if(d(r,f)<0){var n=__arraySum(__isLeapYear(f.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,f.getMonth()-1)-31,t=31-r.getDate()+n+f.getDate();return h(Math.ceil(t/7),2)}return 0===d(r,i)?"01":"00"},"%V":function(e){var i,r=new Date(e.tm_year+1900,0,4),f=new Date(e.tm_year+1901,0,4),n=b(r),t=b(f),a=__addDays(new Date(e.tm_year+1900,0,1),e.tm_yday);return d(a,n)<0?"53":d(t,a)<=0?"01":(i=n.getFullYear()<e.tm_year+1900?e.tm_yday+32-n.getDate():e.tm_yday+1-n.getDate(),h(Math.ceil(i/7),2))},"%w":function(e){return new Date(e.tm_year+1900,e.tm_mon+1,e.tm_mday,0,0,0,0).getDay()},"%W":function(e){var i=new Date(e.tm_year,0,1),r=1===i.getDay()?i:__addDays(i,0===i.getDay()?1:7-i.getDay()+1),f=new Date(e.tm_year+1900,e.tm_mon,e.tm_mday);if(d(r,f)<0){var n=__arraySum(__isLeapYear(f.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,f.getMonth()-1)-31,t=31-r.getDate()+n+f.getDate();return h(Math.ceil(t/7),2)}return 0===d(r,i)?"01":"00"},"%y":function(e){return(e.tm_year+1900).toString().substring(2)},"%Y":function(e){return e.tm_year+1900},"%z":function(e){var i=e.tm_gmtoff,r=i>=0;return i=(i=Math.abs(i)/60)/60*100+i%60,(r?"+":"-")+String("0000"+i).slice(-4)},"%Z":function(e){return e.tm_zone},"%%":function(){return"%"}};for(var l in k)a.indexOf(l)>=0&&(a=a.replace(new RegExp(l,"g"),k[l](t)));var w=intArrayFromString(a,!1);return w.length>i?0:(writeArrayToMemory(w,e),w.length-1)}function _strftime_l(e,i,r,f){return _strftime(e,i,r,f)}function _abort(){Module.abort()}function _free(){}function ___cxa_free_exception(e){try{return _free(e)}catch(e){}}function ___cxa_end_catch(){if(___cxa_end_catch.rethrown)___cxa_end_catch.rethrown=!1;else{asm.setThrew(0);var e=EXCEPTIONS.caught.pop();e&&(EXCEPTIONS.decRef(EXCEPTIONS.deAdjust(e)),EXCEPTIONS.last=0)}}function _pthread_once(e,i){_pthread_once.seen||(_pthread_once.seen={}),e in _pthread_once.seen||(Runtime.dynCall("v",i),_pthread_once.seen[e]=1)}function ___lock(){}function ___unlock(){}Module._free=_free;var PTHREAD_SPECIFIC={};function _pthread_getspecific(e){return PTHREAD_SPECIFIC[e]||0}function ___setErrNo(e){return Module.___errno_location&&(HEAP32[Module.___errno_location()>>2]=e),e}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(e){switch(e){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator&&navigator.hardwareConcurrency||1}return ___setErrNo(ERRNO_CODES.EINVAL),-1}var _fabs=Math_abs,PTHREAD_SPECIFIC_NEXT_KEY=1;function _pthread_key_create(e,i){return 0==e?ERRNO_CODES.EINVAL:(HEAP32[e>>2]=PTHREAD_SPECIFIC_NEXT_KEY,PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0,PTHREAD_SPECIFIC_NEXT_KEY++,0)}var PATH=void 0;function _emscripten_set_main_loop_timing(e,i){if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=i,!Browser.mainLoop.func)return 1;if(0==e)Browser.mainLoop.scheduler=function(){setTimeout(Browser.mainLoop.runner,i)},Browser.mainLoop.method="timeout";else if(1==e)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(2==e){if(!window.setImmediate){var r=[],f="__emcc";window.addEventListener("message",(function(e){e.source===window&&e.data===f&&(e.stopPropagation(),r.shift()())}),!0),window.setImmediate=function(e){r.push(e),window.postMessage(f,"*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(e,i,r,f,n){Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=f;var t=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var i=Date.now(),r=Browser.mainLoop.queue.shift();if(r.func(r.arg),Browser.mainLoop.remainingBlockers){var n=Browser.mainLoop.remainingBlockers,a=n%1==0?n-1:Math.floor(n);r.counted?Browser.mainLoop.remainingBlockers=a:(a+=.5,Browser.mainLoop.remainingBlockers=(8*n+a)/9)}return console.log('main loop blocker "'+r.name+'" took '+(Date.now()-i)+" ms"),Browser.mainLoop.updateStatus(),void setTimeout(Browser.mainLoop.runner,0)}t<Browser.mainLoop.currentlyRunningMainloop||(Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0,1==Browser.mainLoop.timingMode&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0?Browser.mainLoop.scheduler():("timeout"===Browser.mainLoop.method&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter((function(){void 0!==f?Runtime.dynCall("vi",e,[f]):Runtime.dynCall("v",e)})),t<Browser.mainLoop.currentlyRunningMainloop||("object"==typeof SDL&&SDL.audio&&SDL.audio.queueNewAudioData&&SDL.audio.queueNewAudioData(),Browser.mainLoop.scheduler())))}},n||(i&&i>0?_emscripten_set_main_loop_timing(0,1e3/i):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),r)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,i=Browser.mainLoop.timingValue,r=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(r,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,i),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",i=Browser.mainLoop.remainingBlockers,r=Browser.mainLoop.expectedBlockers;i?i<r?Module.setStatus(e+" ("+(r-i)+"/"+r+")"):Module.setStatus(e):Module.setStatus("")}},runIter:function(e){if(!ABORT){if(Module.preMainLoop)if(!1===Module.preMainLoop())return;try{e()}catch(e){if(e instanceof ExitStatus)return;throw e&&"object"==typeof e&&e.stack&&Module.printErr("exception thrown: "+[e,e.stack]),e}Module.postMainLoop&&Module.postMainLoop()}}},isFullScreen:!1,pointerLock:!1,moduleContextCreatedCallbacks:[],workers:[],init:function(){if(Module.preloadPlugins||(Module.preloadPlugins=[]),!Browser.initted){Browser.initted=!0;try{new Blob,Browser.hasBlobConstructor=!0}catch(e){Browser.hasBlobConstructor=!1,console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Browser.BlobBuilder="undefined"!=typeof MozBlobBuilder?MozBlobBuilder:"undefined"!=typeof WebKitBlobBuilder?WebKitBlobBuilder:Browser.hasBlobConstructor?null:console.log("warning: no BlobBuilder"),Browser.URLObject="undefined"!=typeof window?window.URL?window.URL:window.webkitURL:void 0,Module.noImageDecoding||void 0!==Browser.URLObject||(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),Module.noImageDecoding=!0);var e={canHandle:function(e){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(e)},handle:function(e,i,r,f){var n=null;if(Browser.hasBlobConstructor)try{(n=new Blob([e],{type:Browser.getMimetype(i)})).size!==e.length&&(n=new Blob([new Uint8Array(e).buffer],{type:Browser.getMimetype(i)}))}catch(e){Runtime.warnOnce("Blob constructor present but fails: "+e+"; falling back to blob builder")}if(!n){var t=new Browser.BlobBuilder;t.append(new Uint8Array(e).buffer),n=t.getBlob()}var a=Browser.URLObject.createObjectURL(n),s=new Image;s.onload=function(){assert(s.complete,"Image "+i+" could not be decoded");var f=document.createElement("canvas");f.width=s.width,f.height=s.height,f.getContext("2d").drawImage(s,0,0),Module.preloadedImages[i]=f,Browser.URLObject.revokeObjectURL(a),r&&r(e)},s.onerror=function(e){console.log("Image "+a+" could not be decoded"),f&&f()},s.src=a}};Module.preloadPlugins.push(e);var i={canHandle:function(e){return!Module.noAudioDecoding&&e.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(e,i,r,f){var n=!1;function t(f){n||(n=!0,Module.preloadedAudios[i]=f,r&&r(e))}function a(){n||(n=!0,Module.preloadedAudios[i]=new Audio,f&&f())}if(!Browser.hasBlobConstructor)return a();try{var s=new Blob([e],{type:Browser.getMimetype(i)})}catch(e){return a()}var l=Browser.URLObject.createObjectURL(s),o=new Audio;o.addEventListener("canplaythrough",(function(){t(o)}),!1),o.onerror=function(r){n||(console.log("warning: browser could not fully decode audio "+i+", trying slower base64 approach"),o.src="data:audio/x-"+i.substr(-3)+";base64,"+function(e){for(var i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="",f=0,n=0,t=0;t<e.length;t++)for(f=f<<8|e[t],n+=8;n>=6;){var a=f>>n-6&63;n-=6,r+=i[a]}return 2==n?(r+=i[(3&f)<<4],r+="=="):4==n&&(r+=i[(15&f)<<2],r+="="),r}(e),t(o))},o.src=l,Browser.safeSetTimeout((function(){t(o)}),1e4)}};Module.preloadPlugins.push(i);var r=Module.canvas;r&&(r.requestPointerLock=r.requestPointerLock||r.mozRequestPointerLock||r.webkitRequestPointerLock||r.msRequestPointerLock||function(){},r.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},r.exitPointerLock=r.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",f,!1),document.addEventListener("mozpointerlockchange",f,!1),document.addEventListener("webkitpointerlockchange",f,!1),document.addEventListener("mspointerlockchange",f,!1),Module.elementPointerLock&&r.addEventListener("click",(function(e){!Browser.pointerLock&&r.requestPointerLock&&(r.requestPointerLock(),e.preventDefault())}),!1))}function f(){Browser.pointerLock=document.pointerLockElement===r||document.mozPointerLockElement===r||document.webkitPointerLockElement===r||document.msPointerLockElement===r}},createContext:function(e,i,r,f){if(i&&Module.ctx&&e==Module.canvas)return Module.ctx;var n,t;if(i){var a={antialias:!1,alpha:!1};if(f)for(var s in f)a[s]=f[s];(t=GL.createContext(e,a))&&(n=GL.getContext(t).GLctx),e.style.backgroundColor="black"}else n=e.getContext("2d");return n?(r&&(i||assert("undefined"==typeof GLctx,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=n,i&&GL.makeContextCurrent(t),Module.useWebGL=i,Browser.moduleContextCreatedCallbacks.forEach((function(e){e()})),Browser.init()),n):null},destroyContext:function(e,i,r){},fullScreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullScreen:function(e,i,r){Browser.lockPointer=e,Browser.resizeCanvas=i,Browser.vrDevice=r,void 0===Browser.lockPointer&&(Browser.lockPointer=!0),void 0===Browser.resizeCanvas&&(Browser.resizeCanvas=!1),void 0===Browser.vrDevice&&(Browser.vrDevice=null);var f=Module.canvas;function n(){Browser.isFullScreen=!1;var e=f.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===e?(f.cancelFullScreen=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen||function(){},f.cancelFullScreen=f.cancelFullScreen.bind(document),Browser.lockPointer&&f.requestPointerLock(),Browser.isFullScreen=!0,Browser.resizeCanvas&&Browser.setFullScreenCanvasSize()):(e.parentNode.insertBefore(f,e),e.parentNode.removeChild(e),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullScreen),Browser.updateCanvasDimensions(f)}Browser.fullScreenHandlersInstalled||(Browser.fullScreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",n,!1),document.addEventListener("mozfullscreenchange",n,!1),document.addEventListener("webkitfullscreenchange",n,!1),document.addEventListener("MSFullscreenChange",n,!1));var t=document.createElement("div");f.parentNode.insertBefore(t,f),t.appendChild(f),t.requestFullScreen=t.requestFullScreen||t.mozRequestFullScreen||t.msRequestFullscreen||(t.webkitRequestFullScreen?function(){t.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),r?t.requestFullScreen({vrDisplay:r}):t.requestFullScreen()},nextRAF:0,fakeRequestAnimationFrame:function(e){var i=Date.now();if(0===Browser.nextRAF)Browser.nextRAF=i+1e3/60;else for(;i+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var r=Math.max(Browser.nextRAF-i,0);setTimeout(e,r)},requestAnimationFrame:function(e){"undefined"==typeof window?Browser.fakeRequestAnimationFrame(e):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(e))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach((function(e){e()}))}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame((function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))}))},safeSetTimeout:function(e,i){return Module.noExitRuntime=!0,setTimeout((function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))}),i)},safeSetInterval:function(e,i){return Module.noExitRuntime=!0,setInterval((function(){ABORT||Browser.allowAsyncCallbacks&&e()}),i)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var i=0;switch(e.type){case"DOMMouseScroll":i=e.detail;break;case"mousewheel":i=e.wheelDelta;break;case"wheel":i=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return i},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)"mousemove"!=e.type&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),"undefined"!=typeof SDL?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var i=Module.canvas.getBoundingClientRect(),r=Module.canvas.width,f=Module.canvas.height,n=void 0!==window.scrollX?window.scrollX:window.pageXOffset,t=void 0!==window.scrollY?window.scrollY:window.pageYOffset;if("touchstart"===e.type||"touchend"===e.type||"touchmove"===e.type){var a=e.touch;if(void 0===a)return;var s=a.pageX-(n+i.left),l=a.pageY-(t+i.top),o={x:s*=r/i.width,y:l*=f/i.height};if("touchstart"===e.type)Browser.lastTouches[a.identifier]=o,Browser.touches[a.identifier]=o;else if("touchend"===e.type||"touchmove"===e.type){var u=Browser.touches[a.identifier];u||(u=o),Browser.lastTouches[a.identifier]=u,Browser.touches[a.identifier]=o}return}var c=e.pageX-(n+i.left),h=e.pageY-(t+i.top);c*=r/i.width,h*=f/i.height,Browser.mouseMovementX=c-Browser.mouseX,Browser.mouseMovementY=h-Browser.mouseY,Browser.mouseX=c,Browser.mouseY=h}},xhrLoad:function(e,i,r){var f=new XMLHttpRequest;f.open("GET",e,!0),f.responseType="arraybuffer",f.onload=function(){200==f.status||0==f.status&&f.response?i(f.response):r()},f.onerror=r,f.send(null)},asyncLoad:function(e,i,r,f){Browser.xhrLoad(e,(function(r){assert(r,'Loading data file "'+e+'" failed (no arrayBuffer).'),i(new Uint8Array(r)),f||removeRunDependency("al "+e)}),(function(i){if(!r)throw'Loading data file "'+e+'" failed.';r()})),f||addRunDependency("al "+e)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach((function(i){i(e.width,e.height)}))},setCanvasSize:function(e,i,r){var f=Module.canvas;Browser.updateCanvasDimensions(f,e,i),r||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e|=8388608,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e&=-8388609,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,i,r){i&&r?(e.widthNative=i,e.heightNative=r):(i=e.widthNative,r=e.heightNative);var f=i,n=r;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(f/n<Module.forcedAspectRatio?f=Math.round(n*Module.forcedAspectRatio):n=Math.round(f/Module.forcedAspectRatio)),(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===e.parentNode&&"undefined"!=typeof screen){var t=Math.min(screen.width/f,screen.height/n);f=Math.round(f*t),n=Math.round(n*t)}Browser.resizeCanvas?(e.width!=f&&(e.width=f),e.height!=n&&(e.height=n),void 0!==e.style&&(e.style.removeProperty("width"),e.style.removeProperty("height"))):(e.width!=i&&(e.width=i),e.height!=r&&(e.height=r),void 0!==e.style&&(f!=i||n!=r?(e.style.setProperty("width",f+"px","important"),e.style.setProperty("height",n+"px","important")):(e.style.removeProperty("width"),e.style.removeProperty("height"))))},wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:function(){var e=Browser.nextWgetRequestHandle;return Browser.nextWgetRequestHandle++,e}};function _pthread_setspecific(e,i){return e in PTHREAD_SPECIFIC?(PTHREAD_SPECIFIC[e]=i,0):ERRNO_CODES.EINVAL}function _malloc(e){return Runtime.dynamicAlloc(e+8)+8&4294967288}function ___cxa_allocate_exception(e){return _malloc(e)}Module._malloc=_malloc;var SYSCALLS={varargs:0,get:function(e){return SYSCALLS.varargs+=4,HEAP32[SYSCALLS.varargs-4>>2]},getStr:function(){return Pointer_stringify(SYSCALLS.get())},get64:function(){var e=SYSCALLS.get(),i=SYSCALLS.get();return assert(e>=0?0===i:-1===i),e},getZero:function(){assert(0===SYSCALLS.get())}};function ___syscall54(e,i){SYSCALLS.varargs=i;try{return 0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___cxa_pure_virtual(){throw ABORT=!0,"Pure virtual function called!"}Module._i64Add=_i64Add,Module._bitshift64Lshr=_bitshift64Lshr;var _BDtoIHigh=!0;function _pthread_cleanup_push(e,i){__ATEXIT__.push((function(){Runtime.dynCall("vi",e,[i])})),_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cond_broadcast(){return 0}function ___cxa_guard_acquire(e){return HEAP8[e>>0]?0:(HEAP8[e>>0]=1,1)}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!"),__ATEXIT__.pop(),_pthread_cleanup_push.level=__ATEXIT__.length}function ___cxa_guard_release(){}function ___cxa_begin_catch(e){return __ZSt18uncaught_exceptionv.uncaught_exception--,EXCEPTIONS.caught.push(e),EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(e)),e}function _llvm_eh_typeid_for(e){return e}function _emscripten_memcpy_big(e,i,r){return HEAPU8.set(HEAPU8.subarray(i,i+r),e),e}function ___syscall6(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD();return FS.close(r),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function _pthread_mutex_lock(){}Module._memcpy=_memcpy;var _emscripten_postinvoke=!0;function _sbrk(e){var i=_sbrk;i.called||(DYNAMICTOP=alignMemoryPage(DYNAMICTOP),i.called=!0,assert(Runtime.dynamicAlloc),i.alloc=Runtime.dynamicAlloc,Runtime.dynamicAlloc=function(){abort("cannot dynamically allocate, sbrk now has control")});var r=DYNAMICTOP;if(0!=e&&!i.alloc(e))return-1>>>0;return r}function ___cxa_guard_abort(){}Module._bitshift64Shl=_bitshift64Shl,Module._memmove=_memmove;var _emscripten_preinvoke=!0,_BItoD=!0;function _pthread_cond_wait(){return 0}function ___cxa_rethrow(){___cxa_end_catch.rethrown=!0;var e=EXCEPTIONS.caught.pop();throw EXCEPTIONS.last=e,e}function _pthread_mutex_unlock(){}function _time(e){var i=Date.now()/1e3|0;return e&&(HEAP32[e>>2]=i),i}function _pthread_self(){return 0}function ___syscall140(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD(),f=SYSCALLS.get(),n=SYSCALLS.get(),t=SYSCALLS.get(),a=SYSCALLS.get(),s=n;return assert(0===f),FS.llseek(r,s,a),HEAP32[t>>2]=r.position,r.getdents&&0===s&&0===a&&(r.getdents=null),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall146(e,i){SYSCALLS.varargs=i;try{SYSCALLS.get();var r=SYSCALLS.get(),f=SYSCALLS.get(),n=0;___syscall146.buffer||(___syscall146.buffer=[]);for(var t=___syscall146.buffer,a=0;a<f;a++){for(var s=HEAP32[r+8*a>>2],l=HEAP32[r+(8*a+4)>>2],o=0;o<l;o++){var u=HEAPU8[s+o];0===u||10===u?(Module.print(UTF8ArrayToString(t,0)),t.length=0):t.push(u)}n+=l}return n}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall145(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD(),f=SYSCALLS.get(),n=SYSCALLS.get();return SYSCALLS.doReadv(r,f,n)}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}var ___dso_handle=allocate(1,"i32*",ALLOC_STATIC);Module.requestFullScreen=function(e,i,r){Browser.requestFullScreen(e,i,r)},Module.requestAnimationFrame=function(e){Browser.requestAnimationFrame(e)},Module.setCanvasSize=function(e,i,r){Browser.setCanvasSize(e,i,r)},Module.pauseMainLoop=function(){Browser.mainLoop.pause()},Module.resumeMainLoop=function(){Browser.mainLoop.resume()},Module.getUserMedia=function(){Browser.getUserMedia()},Module.createContext=function(e,i,r,f){return Browser.createContext(e,i,r,f)},STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP),staticSealed=!0,STACK_MAX=STACK_BASE+TOTAL_STACK,DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX),assert(DYNAMIC_BASE<TOTAL_MEMORY,"TOTAL_MEMORY not big enough for stack");var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_DYNAMIC);function invoke_iiiiiiii(e,i,r,f,n,t,a,s){try{return Module.dynCall_iiiiiiii(e,i,r,f,n,t,a,s)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiii(e,i,r,f,n,t){try{Module.dynCall_viiiii(e,i,r,f,n,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiid(e,i,r,f,n,t,a){try{return Module.dynCall_iiiiiid(e,i,r,f,n,t,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_vi(e,i){try{Module.dynCall_vi(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_vii(e,i,r){try{Module.dynCall_vii(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiii(e,i,r,f,n,t,a){try{return Module.dynCall_iiiiiii(e,i,r,f,n,t,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_ii(e,i){try{return Module.dynCall_ii(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiiiiiiii(e,i,r,f,n,t,a,s,l,o,u,c){try{return Module.dynCall_iiiiiiiiiiii(e,i,r,f,n,t,a,s,l,o,u,c)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiii(e,i,r,f){try{return Module.dynCall_iiii(e,i,r,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiiiiiiiiiii(e,i,r,f,n,t,a,s,l,o,u,c,h,d,b,_){try{Module.dynCall_viiiiiiiiiiiiiii(e,i,r,f,n,t,a,s,l,o,u,c,h,d,b,_)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiii(e,i,r,f,n,t,a){try{Module.dynCall_viiiiii(e,i,r,f,n,t,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiii(e,i,r,f,n,t,a,s){try{Module.dynCall_viiiiiii(e,i,r,f,n,t,a,s)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiiiiii(e,i,r,f,n,t,a,s,l,o,u){try{Module.dynCall_viiiiiiiiii(e,i,r,f,n,t,a,s,l,o,u)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iii(e,i,r){try{return Module.dynCall_iii(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiii(e,i,r,f,n,t){try{return Module.dynCall_iiiiii(e,i,r,f,n,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_diii(e,i,r,f){try{return Module.dynCall_diii(e,i,r,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_i(e){try{return Module.dynCall_i(e)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiii(e,i,r,f,n){try{return Module.dynCall_iiiii(e,i,r,f,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viii(e,i,r,f){try{Module.dynCall_viii(e,i,r,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_v(e){try{Module.dynCall_v(e)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiiiii(e,i,r,f,n,t,a,s,l){try{return Module.dynCall_iiiiiiiii(e,i,r,f,n,t,a,s,l)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiid(e,i,r,f,n,t){try{return Module.dynCall_iiiiid(e,i,r,f,n,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiii(e,i,r,f,n){try{Module.dynCall_viiii(e,i,r,f,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}Module.asmGlobalArg={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort:abort,assert:assert,invoke_iiiiiiii:invoke_iiiiiiii,invoke_viiiii:invoke_viiiii,invoke_iiiiiid:invoke_iiiiiid,invoke_vi:invoke_vi,invoke_vii:invoke_vii,invoke_iiiiiii:invoke_iiiiiii,invoke_ii:invoke_ii,invoke_iiiiiiiiiiii:invoke_iiiiiiiiiiii,invoke_iiii:invoke_iiii,invoke_viiiiiiiiiiiiiii:invoke_viiiiiiiiiiiiiii,invoke_viiiiii:invoke_viiiiii,invoke_viiiiiii:invoke_viiiiiii,invoke_viiiiiiiiii:invoke_viiiiiiiiii,invoke_iii:invoke_iii,invoke_iiiiii:invoke_iiiiii,invoke_diii:invoke_diii,invoke_i:invoke_i,invoke_iiiii:invoke_iiiii,invoke_viii:invoke_viii,invoke_v:invoke_v,invoke_iiiiiiiii:invoke_iiiiiiiii,invoke_iiiiid:invoke_iiiiid,invoke_viiii:invoke_viiii,_fabs:_fabs,_strftime:_strftime,_pthread_cond_wait:_pthread_cond_wait,___lock:___lock,_pthread_key_create:_pthread_key_create,_abort:_abort,___cxa_guard_acquire:___cxa_guard_acquire,___setErrNo:___setErrNo,___gxx_personality_v0:___gxx_personality_v0,___assert_fail:___assert_fail,___cxa_free_exception:___cxa_free_exception,___cxa_allocate_exception:___cxa_allocate_exception,___cxa_find_matching_catch:___cxa_find_matching_catch,__isLeapYear:__isLeapYear,___cxa_guard_release:___cxa_guard_release,__addDays:__addDays,_strftime_l:_strftime_l,_emscripten_set_main_loop_timing:_emscripten_set_main_loop_timing,_llvm_eh_typeid_for:_llvm_eh_typeid_for,_sbrk:_sbrk,___cxa_begin_catch:___cxa_begin_catch,_emscripten_memcpy_big:_emscripten_memcpy_big,___cxa_end_catch:___cxa_end_catch,___resumeException:___resumeException,__ZSt18uncaught_exceptionv:__ZSt18uncaught_exceptionv,_sysconf:_sysconf,_pthread_getspecific:_pthread_getspecific,__arraySum:__arraySum,_pthread_self:_pthread_self,_pthread_mutex_unlock:_pthread_mutex_unlock,_pthread_once:_pthread_once,___syscall54:___syscall54,___unlock:___unlock,_pthread_cleanup_pop:_pthread_cleanup_pop,_pthread_cond_broadcast:_pthread_cond_broadcast,_emscripten_set_main_loop:_emscripten_set_main_loop,_pthread_setspecific:_pthread_setspecific,___cxa_atexit:___cxa_atexit,___cxa_throw:___cxa_throw,___cxa_rethrow:___cxa_rethrow,___syscall6:___syscall6,_pthread_cleanup_push:_pthread_cleanup_push,___cxa_pure_virtual:___cxa_pure_virtual,_time:_time,_pthread_mutex_lock:_pthread_mutex_lock,___cxa_guard_abort:___cxa_guard_abort,_atexit:_atexit,___syscall140:___syscall140,___syscall145:___syscall145,___syscall146:___syscall146,STACKTOP:STACKTOP,STACK_MAX:STACK_MAX,tempDoublePtr:tempDoublePtr,ABORT:ABORT,cttz_i8:cttz_i8,___dso_handle:___dso_handle};var asm=function(e,i,r){"use asm";var f=new e.Int8Array(r);var n=new e.Int16Array(r);var t=new e.Int32Array(r);var a=new e.Uint8Array(r);var s=new e.Uint16Array(r);var l=new e.Uint32Array(r);var o=new e.Float32Array(r);var u=new e.Float64Array(r);var c=i.STACKTOP|0;var h=i.STACK_MAX|0;var d=i.tempDoublePtr|0;var b=i.ABORT|0;var _=i.cttz_i8|0;var k=i.___dso_handle|0;var w=0;var m=0;var v=0;var p=0;var g=e.NaN,y=e.Infinity;var M=0,A=0,E=0,S=0,T=0.0,R=0,C=0,P=0,I=0.0;var O=0;var x=0;var L=0;var B=0;var z=0;var D=0;var N=0;var F=0;var H=0;var U=0;var j=e.Math.floor;var Y=e.Math.abs;var q=e.Math.sqrt;var $=e.Math.pow;var V=e.Math.cos;var X=e.Math.sin;var G=e.Math.tan;var K=e.Math.acos;var W=e.Math.asin;var Z=e.Math.atan;var J=e.Math.atan2;var Q=e.Math.exp;var ee=e.Math.log;var ie=e.Math.ceil;var re=e.Math.imul;var fe=e.Math.min;var ne=e.Math.clz32;var te=i.abort;var ae=i.assert;var se=i.invoke_iiiiiiii;var le=i.invoke_viiiii;var oe=i.invoke_iiiiiid;var ue=i.invoke_vi;var ce=i.invoke_vii;var he=i.invoke_iiiiiii;var de=i.invoke_ii;var be=i.invoke_iiiiiiiiiiii;var _e=i.invoke_iiii;var ke=i.invoke_viiiiiiiiiiiiiii;var we=i.invoke_viiiiii;var me=i.invoke_viiiiiii;var ve=i.invoke_viiiiiiiiii;var pe=i.invoke_iii;var ge=i.invoke_iiiiii;var ye=i.invoke_diii;var Me=i.invoke_i;var Ae=i.invoke_iiiii;var Ee=i.invoke_viii;var Se=i.invoke_v;var Te=i.invoke_iiiiiiiii;var Re=i.invoke_iiiiid;var Ce=i.invoke_viiii;var Pe=i._fabs;var Ie=i._strftime;var Oe=i._pthread_cond_wait;var xe=i.___lock;var Le=i._pthread_key_create;var Be=i._abort;var ze=i.___cxa_guard_acquire;var De=i.___setErrNo;var Ne=i.___gxx_personality_v0;var Fe=i.___assert_fail;var He=i.___cxa_free_exception;var Ue=i.___cxa_allocate_exception;var je=i.___cxa_find_matching_catch;var Ye=i.__isLeapYear;var qe=i.___cxa_guard_release;var $e=i.__addDays;var Ve=i._strftime_l;var Xe=i._emscripten_set_main_loop_timing;var Ge=i._llvm_eh_typeid_for;var Ke=i._sbrk;var We=i.___cxa_begin_catch;var Ze=i._emscripten_memcpy_big;var Je=i.___cxa_end_catch;var Qe=i.___resumeException;var ei=i.__ZSt18uncaught_exceptionv;var ii=i._sysconf;var ri=i._pthread_getspecific;var fi=i.__arraySum;var ni=i._pthread_self;var ti=i._pthread_mutex_unlock;var ai=i._pthread_once;var si=i.___syscall54;var li=i.___unlock;var oi=i._pthread_cleanup_pop;var ui=i._pthread_cond_broadcast;var ci=i._emscripten_set_main_loop;var hi=i._pthread_setspecific;var di=i.___cxa_atexit;var bi=i.___cxa_throw;var _i=i.___cxa_rethrow;var ki=i.___syscall6;var wi=i._pthread_cleanup_push;var mi=i.___cxa_pure_virtual;var vi=i._time;var pi=i._pthread_mutex_lock;var gi=i.___cxa_guard_abort;var yi=i._atexit;var Mi=i.___syscall140;var Ai=i.___syscall145;var Ei=i.___syscall146;var Si=0.0;function Ti(e){e=e|0;var i=0;i=c;c=c+e|0;c=c+15&-16;return i|0}function Ri(){return c|0}function Ci(e){e=e|0;c=e}function Pi(e,i){e=e|0;i=i|0;c=e;h=i}function Ii(e,i){e=e|0;i=i|0;if(!w){w=e;m=i}}function Oi(e){e=e|0;f[d>>0]=f[e>>0];f[d+1>>0]=f[e+1>>0];f[d+2>>0]=f[e+2>>0];f[d+3>>0]=f[e+3>>0]}function xi(e){e=e|0;f[d>>0]=f[e>>0];f[d+1>>0]=f[e+1>>0];f[d+2>>0]=f[e+2>>0];f[d+3>>0]=f[e+3>>0];f[d+4>>0]=f[e+4>>0];f[d+5>>0]=f[e+5>>0];f[d+6>>0]=f[e+6>>0];f[d+7>>0]=f[e+7>>0]}function Li(e){e=e|0;O=e}function Bi(){return O|0}function zi(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0;y=c;c=c+128|0;b=y+44|0;m=y+8|0;u=y+4|0;d=y;_=r+4|0;k=r+8|0;w=0;Ce(35,t[r>>2]|0,t[_>>2]|0,t[k>>2]|0,n|0);h=w;w=0;if(!(h&1)){l=b;s=l+84|0;do{t[l>>2]=t[n>>2];l=l+4|0;n=n+4|0}while((l|0)<(s|0));n=b+12|0;if((t[n>>2]|0)==0?(o=re(((t[b+8>>2]|0)+7|0)/8|0,t[b>>2]|0)|0,t[n>>2]=o,(t[b+24>>2]|0)!=0):0)t[n>>2]=re(t[b+16>>2]|0,o)|0;w=0;ue(176,m|0);h=w;w=0;if(!(h&1)){n=b+56|0;do{if(t[n>>2]|0){w=0;n=de(66,n|0)|0;h=w;w=0;if(!(h&1)){t[u>>2]=n;s=m+28|0;l=t[s>>2]|0;if(l>>>0<(t[m+32>>2]|0)>>>0){t[l>>2]=n;t[s>>2]=l+4;t[u>>2]=0;v=19;break}w=0;ce(57,m+24|0,u|0);h=w;w=0;if(h&1){s=je(824,0)|0;n=O;l=t[u>>2]|0;t[u>>2]=0;if(!l)break;tM[t[(t[l>>2]|0)+4>>2]&255](l);break}else{n=t[u>>2]|0;t[u>>2]=0;if(!n){v=19;break}tM[t[(t[n>>2]|0)+4>>2]&255](n);v=19;break}}else v=15}else v=19}while(0);e:do{if((v|0)==19){l=b+4|0;o=b+8|0;u=b+16|0;w=0;n=Ae(14,t[b>>2]|0,t[l>>2]|0,t[o>>2]|0,t[u>>2]|0)|0;h=w;w=0;if(!(h&1)){t[d>>2]=n;h=m+28|0;s=t[h>>2]|0;do{if(s>>>0>=(t[m+32>>2]|0)>>>0){w=0;ce(57,m+24|0,d|0);s=w;w=0;if(s&1){s=je(824,0)|0;n=O;l=t[d>>2]|0;t[d>>2]=0;if(!l)break e;tM[t[(t[l>>2]|0)+4>>2]&255](l);break e}else{n=t[d>>2]|0;t[d>>2]=0;if(!n)break;tM[t[(t[n>>2]|0)+4>>2]&255](n);break}}else{t[s>>2]=n;t[h>>2]=s+4;t[d>>2]=0}}while(0);n=t[b+28>>2]|0;if((n|0)!=0?(w=0,ce(58,m|0,n|0),v=w,w=0,v&1):0){v=15;break}i:do{if(!(t[b+24>>2]|0)){n=re(t[l>>2]|0,t[b>>2]|0)|0;n=re(n,((t[o>>2]|0)+7|0)/8|0)|0;if((t[u>>2]|0)>0){l=0;while(1){w=0;Ee(4,m|0,r|0,b|0);v=w;w=0;if(v&1)break;s=t[_>>2]|0;if(s){t[_>>2]=s+n;t[k>>2]=(t[k>>2]|0)-n}l=l+1|0;if((l|0)>=(t[u>>2]|0))break i}s=je(824,0)|0;n=O;v=16;break e}}else{w=0;Ee(4,m|0,r|0,b|0);v=w;w=0;if(v&1){v=15;break e}}}while(0);w=0;pe(33,m|0,e|0)|0;v=w;w=0;if(!(v&1)){t[i>>2]=t[m+16>>2];if(a)f[a>>0]=0;l=m+24|0;n=t[l>>2]|0;if(n){s=t[h>>2]|0;if((s|0)!=(n|0)){do{a=s+-4|0;t[h>>2]=a;s=t[a>>2]|0;t[a>>2]=0;if(s)tM[t[(t[s>>2]|0)+4>>2]&255](s);s=t[h>>2]|0}while((s|0)!=(n|0));n=t[l>>2]|0}Bp(n)}a=0;c=y;return a|0}else v=15}else v=15}}while(0);if((v|0)==15){s=je(824,0)|0;n=O;v=16}h=m+24|0;l=t[h>>2]|0;if(l){u=m+28|0;o=t[u>>2]|0;if((o|0)!=(l|0)){do{m=o+-4|0;t[u>>2]=m;o=t[m>>2]|0;t[m>>2]=0;if(o)tM[t[(t[o>>2]|0)+4>>2]&255](o);o=t[u>>2]|0}while((o|0)!=(l|0));l=t[h>>2]|0}Bp(l)}}else v=5}else v=5;if((v|0)==5){s=je(824,0)|0;n=O}m=(n|0)==(Ge(824)|0);o=We(s|0)|0;n=(a|0)==0;if(!m){if(!n)f[a>>0]=0;Je();a=14;c=y;return a|0}l=o+12|0;do{if(!n){n=t[l>>2]|0;w=0;s=Me(1)|0;m=w;w=0;if(!(m&1))if((n|0)==(s|0)){$y(a,lM[t[(t[o>>2]|0)+8>>2]&127](o)|0)|0;v=60;break}else{f[a>>0]=0;v=60;break}}else v=60}while(0);if((v|0)==60?(p=t[l>>2]|0,w=0,g=Me(1)|0,a=w,w=0,!(a&1)):0){a=(p|0)==(g|0)?t[o+8>>2]|0:13;Je();c=y;return a|0}n=je()|0;w=0;Se(3);y=w;w=0;if(y&1){y=je(0)|0;Ni(y)}else Qe(n|0);return 0}function Di(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0;u=c;c=c+112|0;a=u+96|0;o=u+84|0;h=u+72|0;d=u+60|0;b=u+48|0;_=u+36|0;k=u+24|0;m=u+12|0;v=u;l=(i|0)==0;if((e|0)==0&l){n=Ue(16)|0;w=0;Ee(5,a|0,48504,52);v=w;w=0;if(!(v&1)){w=0;i=Me(1)|0;v=w;w=0;if(!(v&1)?(w=0,Ce(36,n|0,1,i|0,a|0),v=w,w=0,!(v&1)):0){w=0;Ee(6,n|0,824,96);w=0;e=0}else e=1;i=je()|0;xh(a);if(!e){v=i;Qe(v|0)}}else i=je()|0;He(n|0);v=i;Qe(v|0)}s=t[f>>2]|0;if((s+-1|0)>>>0>65534){n=Ue(16)|0;w=0;Ee(5,o|0,48557,41);v=w;w=0;if(!(v&1)){w=0;i=Me(1)|0;v=w;w=0;if(!(v&1)?(w=0,Ce(36,n|0,1,i|0,o|0),v=w,w=0,!(v&1)):0){w=0;Ee(6,n|0,824,96);w=0;e=0}else e=1;i=je()|0;xh(o);if(!e){v=i;Qe(v|0)}}else i=je()|0;He(n|0);v=i;Qe(v|0)}a=t[f+4>>2]|0;if((a+-1|0)>>>0>65534){n=Ue(16)|0;w=0;Ee(5,h|0,48599,42);v=w;w=0;if(!(v&1)){w=0;i=Me(1)|0;v=w;w=0;if(!(v&1)?(w=0,Ce(36,n|0,1,i|0,h|0),v=w,w=0,!(v&1)):0){w=0;Ee(6,n|0,824,96);w=0;e=0}else e=1;i=je()|0;xh(h);if(!e){v=i;Qe(v|0)}}else i=je()|0;He(n|0);v=i;Qe(v|0)}n=t[f+8>>2]|0;if((n+-2|0)>>>0>14){n=Ue(16)|0;w=0;Ee(5,d|0,48642,46);v=w;w=0;if(!(v&1)){w=0;i=Me(1)|0;v=w;w=0;if(!(v&1)?(w=0,Ce(36,n|0,1,i|0,d|0),v=w,w=0,!(v&1)):0){w=0;Ee(6,n|0,824,96);w=0;e=0}else e=1;i=je()|0;xh(d);if(!e){v=i;Qe(v|0)}}else i=je()|0;He(n|0);v=i;Qe(v|0)}e=t[f+24>>2]|0;if(e>>>0>=3){n=Ue(16)|0;w=0;Ee(5,b|0,48689,65);v=w;w=0;if(!(v&1)){w=0;i=Me(1)|0;v=w;w=0;if(!(v&1)?(w=0,Ce(36,n|0,1,i|0,b|0),v=w,w=0,!(v&1)):0){w=0;Ee(6,n|0,824,96);w=0;e=0}else e=1;i=je()|0;xh(b);if(!e){v=i;Qe(v|0)}}else i=je()|0;He(n|0);v=i;Qe(v|0)}i=t[f+16>>2]|0;if((i+-1|0)>>>0>254){n=Ue(16)|0;w=0;Ee(5,_|0,48755,44);v=w;w=0;if(!(v&1)){w=0;i=Me(1)|0;v=w;w=0;if(!(v&1)?(w=0,Ce(36,n|0,1,i|0,_|0),v=w,w=0,!(v&1)):0){w=0;Ee(6,n|0,824,96);w=0;e=0}else e=1;i=je()|0;xh(_);if(!e){v=i;Qe(v|0)}}else i=je()|0;He(n|0);v=i;Qe(v|0)}if(!l?(_=re(a,s)|0,(re(re(_,(n|0)>8?2:1)|0,i)|0)>>>0>r>>>0):0){n=Ue(16)|0;w=0;Ee(5,k|0,48800,58);v=w;w=0;if(!(v&1)){w=0;i=Me(1)|0;v=w;w=0;if(!(v&1)?(w=0,Ce(36,n|0,1,i|0,k|0),v=w,w=0,!(v&1)):0){w=0;Ee(6,n|0,824,96);w=0;e=0}else e=1;i=je()|0;xh(k);if(!e){v=i;Qe(v|0)}}else i=je()|0;He(n|0);v=i;Qe(v|0)}switch(i|0){case 4:{if((e|0)!=2){c=u;return}n=Ue(16)|0;w=0;Ee(5,m|0,48859,73);v=w;w=0;if(!(v&1)){w=0;i=Me(1)|0;v=w;w=0;if(!(v&1)?(w=0,Ce(36,n|0,1,i|0,m|0),v=w,w=0,!(v&1)):0){w=0;Ee(6,n|0,824,96);w=0;e=0}else e=1;i=je()|0;xh(m);if(!e){v=i;Qe(v|0)}}else i=je()|0;He(n|0);v=i;Qe(v|0)}case 3:{c=u;return}default:{if(!e){c=u;return}n=Ue(16)|0;w=0;Ee(5,v|0,48933,73);m=w;w=0;if(!(m&1)){w=0;i=Me(1)|0;m=w;w=0;if(!(m&1)?(w=0,Ce(36,n|0,1,i|0,v|0),m=w,w=0,!(m&1)):0){w=0;Ee(6,n|0,824,96);w=0;e=0}else e=1;i=je()|0;xh(v);if(!e){v=i;Qe(v|0)}}else i=je()|0;He(n|0);v=i;Qe(v|0)}}}function Ni(e){e=e|0;We(e|0)|0;jp()}function Fi(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+128|0;s=d+116|0;l=d;w=0;t[s>>2]=t[i>>2];t[s+4>>2]=t[i+4>>2];t[s+8>>2]=t[i+8>>2];ce(59,l|0,s|0);a=w;w=0;if(!(a&1)){if(r){a=l+16|0;i=a+84|0;do{t[a>>2]=t[r>>2];a=a+4|0;r=r+4|0}while((a|0)<(i|0))}w=0;t[s>>2]=t[e>>2];t[s+4>>2]=t[e+4>>2];t[s+8>>2]=t[e+8>>2];ce(60,l|0,s|0);l=w;w=0;if(!(l&1)){if(n)f[n>>0]=0;h=0;c=d;return h|0}}e=je(824,0)|0;l=O;l=(l|0)==(Ge(824)|0);e=We(e|0)|0;i=(n|0)==0;if(!l){if(!i)f[n>>0]=0;Je();h=14;c=d;return h|0}a=e+12|0;do{if(!i){i=t[a>>2]|0;w=0;r=Me(1)|0;l=w;w=0;if(!(l&1))if((i|0)==(r|0)){$y(n,lM[t[(t[e>>2]|0)+8>>2]&127](e)|0)|0;h=10;break}else{f[n>>0]=0;h=10;break}}else h=10}while(0);if((h|0)==10?(o=t[a>>2]|0,w=0,u=Me(1)|0,h=w,w=0,!(h&1)):0){h=(o|0)==(u|0)?t[e+8>>2]|0:13;Je();c=d;return h|0}i=je()|0;w=0;Se(3);d=w;w=0;if(d&1){d=je(0)|0;Ni(d)}else Qe(i|0);return 0}function Hi(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0;u=c;c=c+128|0;a=u+116|0;n=u;w=0;t[a>>2]=t[e>>2];t[a+4>>2]=t[e+4>>2];t[a+8>>2]=t[e+8>>2];ce(59,n|0,a|0);a=w;w=0;if((!(a&1)?(w=0,ue(177,n|0),a=w,w=0,!(a&1)):0)?(w=0,ce(61,n|0,1),a=w,w=0,!(a&1)):0){e=n+16|0;n=i+84|0;do{t[i>>2]=t[e>>2];i=i+4|0;e=e+4|0}while((i|0)<(n|0));if(r)f[r>>0]=0;r=0;c=u;return r|0}a=je(824,0)|0;i=O;i=(i|0)==(Ge(824)|0);a=We(a|0)|0;e=(r|0)==0;if(!i){if(!e)f[r>>0]=0;Je();r=14;c=u;return r|0}i=a+12|0;do{if(!e){e=t[i>>2]|0;w=0;n=Me(1)|0;h=w;w=0;if(!(h&1))if((e|0)==(n|0)){$y(r,lM[t[(t[a>>2]|0)+8>>2]&127](a)|0)|0;o=13;break}else{f[r>>0]=0;o=13;break}}else o=13}while(0);if((o|0)==13?(s=t[i>>2]|0,w=0,l=Me(1)|0,h=w,w=0,!(h&1)):0){h=(s|0)==(l|0)?t[a+8>>2]|0:13;Je();c=u;return h|0}e=je()|0;w=0;Se(3);h=w;w=0;if(h&1){h=je(0)|0;Ni(h)}else Qe(e|0);return 0}function Ui(e,i,r,f,n,a,s){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0;d=c;c=c+48|0;o=d+36|0;l=d+24|0;u=d+12|0;h=d;if(!((e|0)!=0&(r|0)!=0&(f|0)!=0&(a|0)!=0)){n=1;c=d;return n|0}t[u>>2]=0;t[u+4>>2]=e;t[u+8>>2]=i;t[h>>2]=0;t[h+4>>2]=f;t[h+8>>2]=n;t[l>>2]=t[u>>2];t[l+4>>2]=t[u+4>>2];t[l+8>>2]=t[u+8>>2];t[o>>2]=t[h>>2];t[o+4>>2]=t[h+4>>2];t[o+8>>2]=t[h+8>>2];n=zi(l,r,o,a,s)|0;c=d;return n|0}function ji(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0;n=c;c=c+32|0;a=n+12|0;s=n;l=s;t[l>>2]=0;t[l+4>>2]=0;t[s+4>>2]=e;t[s+8>>2]=i;t[a>>2]=t[s>>2];t[a+4>>2]=t[s+4>>2];t[a+8>>2]=t[s+8>>2];r=Hi(a,r,f)|0;c=n;return r|0}function Yi(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+48|0;l=s+36|0;o=s+24|0;h=s+12|0;u=s;t[h>>2]=0;t[h+4>>2]=e;t[h+8>>2]=i;t[u>>2]=0;t[u+4>>2]=r;t[u+8>>2]=f;t[o>>2]=t[h>>2];t[o+4>>2]=t[h+4>>2];t[o+8>>2]=t[h+8>>2];t[l>>2]=t[u>>2];t[l+4>>2]=t[u+4>>2];t[l+8>>2]=t[u+8>>2];f=Fi(o,l,n,a)|0;c=s;return f|0}function qi(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0;u=e+4|0;r=t[e>>2]|0;n=((t[u>>2]|0)-r>>2)+1|0;if(n>>>0>1073741823){Op(e);r=t[e>>2]|0}c=e+8|0;f=(t[c>>2]|0)-r|0;if(f>>2>>>0<536870911){f=f>>1;f=f>>>0<n>>>0?n:f;r=(t[u>>2]|0)-r>>2;if(!f){a=0;s=0}else l=6}else{f=1073741823;r=(t[u>>2]|0)-r>>2;l=6}if((l|0)==6){a=f;s=Lp(f<<2)|0}n=s+(r<<2)|0;f=n;o=s+(a<<2)|0;l=t[i>>2]|0;t[i>>2]=0;t[n>>2]=l;l=s+(r+1<<2)|0;s=t[e>>2]|0;r=t[u>>2]|0;if((r|0)==(s|0)){n=e;a=u}else{do{r=r+-4|0;i=t[r>>2]|0;t[r>>2]=0;t[n+-4>>2]=i;n=f+-4|0;f=n}while((r|0)!=(s|0));r=f;n=e;a=u;f=r;s=t[e>>2]|0;r=t[u>>2]|0}t[n>>2]=f;t[a>>2]=l;t[c>>2]=o;n=s;if((r|0)!=(n|0))do{r=r+-4|0;f=t[r>>2]|0;t[r>>2]=0;if(f)tM[t[(t[f>>2]|0)+4>>2]&255](f)}while((r|0)!=(n|0));if(!s)return;Bp(s);return}function $i(){if(f[8]|0)return 35648;if(!(ze(8)|0))return 35648;di(72,35648,k|0)|0;qe(8);return 35648}function Vi(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+32|0;u=d;op(u,(1<<i)+-1|0,0);s=t[u>>2]|0;h=s+1|0;r=h<<1;t[e>>2]=0;l=e+4|0;t[l>>2]=0;t[e+8>>2]=0;e:do{if(h){if(!((s|0)<-1?(w=0,ue(178,e|0),o=w,w=0,o&1):0))n=4;if((n|0)==4?(w=0,a=de(67,r|0)|0,o=w,w=0,!(o&1)):0){t[l>>2]=a;t[e>>2]=a;t[e+8>>2]=a+r;i=a;while(1){f[i>>0]=0;i=(t[l>>2]|0)+1|0;t[l>>2]=i;r=r+-1|0;if(!r)break e}}r=je()|0;i=t[e>>2]|0;if(!i)Qe(r|0);if((t[l>>2]|0)!=(i|0))t[l>>2]=i;Bp(i);Qe(r|0)}}while(0);i=~s;if((s|0)<(i|0)){c=d;return}l=u+12|0;o=u+8|0;s=u+4|0;a=i;do{i=t[l>>2]|0;if((a|0)>(0-i|0)){r=t[o>>2]|0;if((a|0)>(0-r|0)){n=t[s>>2]|0;if((a|0)>(0-n|0))if((a|0)>=0)if((a|0)>0)if((n|0)<=(a|0))if((r|0)>(a|0))i=2;else i=(i|0)>(a|0)?3:4;else i=1;else i=0;else i=-1;else i=-2}else i=-3}else i=-4;f[(t[e>>2]|0)+(a+h)>>0]=i;a=a+1|0}while((a|0)<(h|0));c=d;return}function Xi(e,i,r){e=e|0;i=i|0;r=r|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0;_=t[r+16>>2]|0;switch(_|0){case 64:case 0:{w=0;e=pe(34,e|0,i|0)|0;i=w;w=0;if(i&1)k=16;else a=e;break}default:{s=(1<<t[i+8>>2])+-1|0;b=t[i+20>>2]|0;d=b<<1;d=((d+s|0)/(d|1|0)|0)+1|0;e=0;while(1)if((1<<e|0)<(d|0))e=e+1|0;else break;a=0;while(1)if((1<<a|0)<(s|0))a=a+1|0;else{o=a;break}s=t[r>>2]|0;w=0;a=de(67,4624)|0;h=w;w=0;if(h&1)k=16;else{l=((o|0)<8?8:o)+o<<1;u=a+4|0;c=i;h=u+84|0;do{t[u>>2]=t[c>>2];u=u+4|0;c=c+4|0}while((u|0)<(h|0));u=a+88|0;h=u+40|0;do{t[u>>2]=0;u=u+4|0}while((u|0)<(h|0));t[a>>2]=35660;t[a+128>>2]=s;t[a+132>>2]=d;t[a+136>>2]=b;t[a+140>>2]=e;t[a+144>>2]=o;t[a+148>>2]=l;t[a+152>>2]=_;e=a+156|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[a+172>>2]=t[i>>2];t[a+176>>2]=0;t[a+180>>2]=0;t[a+184>>2]=0;e=a+4568|0;s=a+188|0;do{t[s>>2]=0;t[s+4>>2]=0;n[s+8>>1]=0;n[s+10>>1]=1;s=s+12|0}while((s|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=a+4580|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=a+4592|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[a+28>>2]|0))t[a+20>>2]=1}}}if((k|0)==16){k=je()|0;Qe(k|0)}if(!a)return a|0;w=0;ce(t[(t[a>>2]|0)+12>>2]|0,a|0,r|0);k=w;w=0;if(!(k&1))return a|0;e=je()|0;if(!a){k=e;Qe(k|0)}tM[t[(t[a>>2]|0)+4>>2]&255](a);k=e;Qe(k|0);return 0}function Gi(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;r=(t[i+24>>2]|0)==2;if(r?(t[i+16>>2]|0)!=3:0){i=0;return i|0}d=t[i+20>>2]|0;e=t[i+8>>2]|0;e:do{if(!d){if(r){if((e|0)!=8)break;a=Lp(4600)|0;o=a+4|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=a+88|0;c=o+40|0;do{t[o>>2]=0;o=o+4|0}while((o|0)<(c|0));t[a>>2]=35688;e=a+132|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[a+148>>2]=t[i>>2];t[a+152>>2]=0;t[a+156>>2]=0;t[a+160>>2]=0;e=a+4544|0;r=a+164|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=a+4556|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=a+4568|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[a+28>>2]|0))t[a+20>>2]=1;i=a;return i|0}switch(e|0){case 8:{a=Lp(4600)|0;o=a+4|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=a+88|0;c=o+40|0;do{t[o>>2]=0;o=o+4|0}while((o|0)<(c|0));t[a>>2]=35716;e=a+132|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[a+148>>2]=t[i>>2];t[a+152>>2]=0;t[a+156>>2]=0;t[a+160>>2]=0;e=a+4544|0;r=a+164|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=a+4556|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=a+4568|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[a+28>>2]|0))t[a+20>>2]=1;i=a;return i|0}case 12:{a=Lp(4600)|0;o=a+4|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=a+88|0;c=o+40|0;do{t[o>>2]=0;o=o+4|0}while((o|0)<(c|0));t[a>>2]=35744;e=a+132|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[a+148>>2]=t[i>>2];t[a+152>>2]=0;t[a+156>>2]=0;t[a+160>>2]=0;e=a+4544|0;r=a+164|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=a+4556|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=a+4568|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[a+28>>2]|0))t[a+20>>2]=1;i=a;return i|0}case 16:{a=Lp(4600)|0;o=a+4|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=a+88|0;c=o+40|0;do{t[o>>2]=0;o=o+4|0}while((o|0)<(c|0));t[a>>2]=35772;e=a+132|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[a+148>>2]=t[i>>2];t[a+152>>2]=0;t[a+156>>2]=0;t[a+160>>2]=0;e=a+4544|0;r=a+164|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=a+4556|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=a+4568|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[a+28>>2]|0))t[a+20>>2]=1;i=a;return i|0}default:break e}}}while(0);h=(1<<e)+-1|0;if((e|0)<9){l=d<<1;l=((l+h|0)/(l|1|0)|0)+1|0;if(r){e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Lp(4624)|0;o=s+4|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=s+88|0;c=o+40|0;do{t[o>>2]=0;o=o+4|0}while((o|0)<(c|0));t[s>>2]=35800;t[s+128>>2]=h;t[s+132>>2]=l;t[s+136>>2]=d;t[s+140>>2]=e;t[s+144>>2]=r;t[s+148>>2]=a;t[s+152>>2]=64;e=s+156|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[s+172>>2]=t[i>>2];t[s+176>>2]=0;t[s+180>>2]=0;t[s+184>>2]=0;e=s+4568|0;r=s+188|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=s+4580|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=s+4592|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[s+28>>2]|0))t[s+20>>2]=1;i=s;return i|0}else{e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Lp(4624)|0;o=s+4|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=s+88|0;c=o+40|0;do{t[o>>2]=0;o=o+4|0}while((o|0)<(c|0));t[s>>2]=35660;t[s+128>>2]=h;t[s+132>>2]=l;t[s+136>>2]=d;t[s+140>>2]=e;t[s+144>>2]=r;t[s+148>>2]=a;t[s+152>>2]=64;e=s+156|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[s+172>>2]=t[i>>2];t[s+176>>2]=0;t[s+180>>2]=0;t[s+184>>2]=0;e=s+4568|0;r=s+188|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=s+4580|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=s+4592|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[s+28>>2]|0))t[s+20>>2]=1;i=s;return i|0}}if((e|0)>=17){i=0;return i|0}l=d<<1;l=((l+h|0)/(l|1|0)|0)+1|0;if(r){e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Lp(4624)|0;o=s+4|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=s+88|0;c=o+40|0;do{t[o>>2]=0;o=o+4|0}while((o|0)<(c|0));t[s>>2]=35828;t[s+128>>2]=h;t[s+132>>2]=l;t[s+136>>2]=d;t[s+140>>2]=e;t[s+144>>2]=r;t[s+148>>2]=a;t[s+152>>2]=64;e=s+156|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[s+172>>2]=t[i>>2];t[s+176>>2]=0;t[s+180>>2]=0;t[s+184>>2]=0;e=s+4568|0;r=s+188|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=s+4580|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=s+4592|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[s+28>>2]|0))t[s+20>>2]=1;i=s;return i|0}else{e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Lp(4624)|0;o=s+4|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));o=s+88|0;c=o+40|0;do{t[o>>2]=0;o=o+4|0}while((o|0)<(c|0));t[s>>2]=35856;t[s+128>>2]=h;t[s+132>>2]=l;t[s+136>>2]=d;t[s+140>>2]=e;t[s+144>>2]=r;t[s+148>>2]=a;t[s+152>>2]=64;e=s+156|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[s+172>>2]=t[i>>2];t[s+176>>2]=0;t[s+180>>2]=0;t[s+184>>2]=0;e=s+4568|0;r=s+188|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=s+4580|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=s+4592|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[s+28>>2]|0))t[s+20>>2]=1;i=s;return i|0}return 0}function Ki(e,i,r){e=e|0;i=i|0;r=r|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0;_=t[r+16>>2]|0;switch(_|0){case 64:case 0:{w=0;e=pe(35,e|0,i|0)|0;i=w;w=0;if(i&1)k=16;else a=e;break}default:{s=(1<<t[i+8>>2])+-1|0;b=t[i+20>>2]|0;d=b<<1;d=((d+s|0)/(d|1|0)|0)+1|0;e=0;while(1)if((1<<e|0)<(d|0))e=e+1|0;else break;a=0;while(1)if((1<<a|0)<(s|0))a=a+1|0;else{o=a;break}s=t[r>>2]|0;w=0;a=de(67,4632)|0;h=w;w=0;if(h&1)k=16;else{l=((o|0)<8?8:o)+o<<1;t[a+4>>2]=0;u=a+8|0;c=i;h=u+84|0;do{t[u>>2]=t[c>>2];u=u+4|0;c=c+4|0}while((u|0)<(h|0));t[a+92>>2]=0;t[a+96>>2]=0;t[a+100>>2]=32;t[a+104>>2]=0;t[a+108>>2]=0;f[a+112>>0]=0;h=a+116|0;t[h>>2]=0;t[h+4>>2]=0;t[h+8>>2]=0;t[h+12>>2]=0;t[h+16>>2]=0;t[a>>2]=35884;t[a+136>>2]=s;t[a+140>>2]=d;t[a+144>>2]=b;t[a+148>>2]=e;t[a+152>>2]=o;t[a+156>>2]=l;t[a+160>>2]=_;e=a+164|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[a+180>>2]=t[i>>2];t[a+184>>2]=0;t[a+188>>2]=0;t[a+192>>2]=0;e=a+4576|0;s=a+196|0;do{t[s>>2]=0;t[s+4>>2]=0;n[s+8>>1]=0;n[s+10>>1]=1;s=s+12|0}while((s|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=a+4588|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=a+4600|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[a+32>>2]|0))t[a+24>>2]=1}}}if((k|0)==16){k=je()|0;Qe(k|0)}if(!a)return a|0;w=0;ce(t[(t[a>>2]|0)+8>>2]|0,a|0,r|0);k=w;w=0;if(!(k&1))return a|0;e=je()|0;if(!a){k=e;Qe(k|0)}tM[t[(t[a>>2]|0)+4>>2]&255](a);k=e;Qe(k|0);return 0}function Wi(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;r=(t[i+24>>2]|0)==2;if(r?(t[i+16>>2]|0)!=3:0){i=0;return i|0}d=t[i+20>>2]|0;e=t[i+8>>2]|0;e:do{if(!d){if(r){if((e|0)!=8)break;a=Lp(4608)|0;t[a+4>>2]=0;o=a+8|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));t[a+92>>2]=0;t[a+96>>2]=0;t[a+100>>2]=32;t[a+104>>2]=0;t[a+108>>2]=0;f[a+112>>0]=0;e=a+116|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[e+16>>2]=0;t[a>>2]=35912;e=a+140|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[a+156>>2]=t[i>>2];t[a+160>>2]=0;t[a+164>>2]=0;t[a+168>>2]=0;e=a+4552|0;r=a+172|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=a+4564|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=a+4576|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[a+32>>2]|0))t[a+24>>2]=1;i=a;return i|0}switch(e|0){case 8:{a=Lp(4608)|0;t[a+4>>2]=0;o=a+8|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));t[a+92>>2]=0;t[a+96>>2]=0;t[a+100>>2]=32;t[a+104>>2]=0;t[a+108>>2]=0;f[a+112>>0]=0;e=a+116|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[e+16>>2]=0;t[a>>2]=35940;e=a+140|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[a+156>>2]=t[i>>2];t[a+160>>2]=0;t[a+164>>2]=0;t[a+168>>2]=0;e=a+4552|0;r=a+172|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=a+4564|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=a+4576|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[a+32>>2]|0))t[a+24>>2]=1;i=a;return i|0}case 12:{a=Lp(4608)|0;t[a+4>>2]=0;o=a+8|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));t[a+92>>2]=0;t[a+96>>2]=0;t[a+100>>2]=32;t[a+104>>2]=0;t[a+108>>2]=0;f[a+112>>0]=0;e=a+116|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[e+16>>2]=0;t[a>>2]=35968;e=a+140|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[a+156>>2]=t[i>>2];t[a+160>>2]=0;t[a+164>>2]=0;t[a+168>>2]=0;e=a+4552|0;r=a+172|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=a+4564|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=a+4576|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[a+32>>2]|0))t[a+24>>2]=1;i=a;return i|0}case 16:{a=Lp(4608)|0;t[a+4>>2]=0;o=a+8|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));t[a+92>>2]=0;t[a+96>>2]=0;t[a+100>>2]=32;t[a+104>>2]=0;t[a+108>>2]=0;f[a+112>>0]=0;e=a+116|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[e+16>>2]=0;t[a>>2]=35996;e=a+140|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[a+156>>2]=t[i>>2];t[a+160>>2]=0;t[a+164>>2]=0;t[a+168>>2]=0;e=a+4552|0;r=a+172|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=a+4564|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=a+4576|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[a+32>>2]|0))t[a+24>>2]=1;i=a;return i|0}default:break e}}}while(0);h=(1<<e)+-1|0;if((e|0)<9){l=d<<1;l=((l+h|0)/(l|1|0)|0)+1|0;if(r){e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Lp(4632)|0;t[s+4>>2]=0;o=s+8|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));t[s+92>>2]=0;t[s+96>>2]=0;t[s+100>>2]=32;t[s+104>>2]=0;t[s+108>>2]=0;f[s+112>>0]=0;c=s+116|0;t[c>>2]=0;t[c+4>>2]=0;t[c+8>>2]=0;t[c+12>>2]=0;t[c+16>>2]=0;t[s>>2]=36024;t[s+136>>2]=h;t[s+140>>2]=l;t[s+144>>2]=d;t[s+148>>2]=e;t[s+152>>2]=r;t[s+156>>2]=a;t[s+160>>2]=64;e=s+164|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[s+180>>2]=t[i>>2];t[s+184>>2]=0;t[s+188>>2]=0;t[s+192>>2]=0;e=s+4576|0;r=s+196|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=s+4588|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=s+4600|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[s+32>>2]|0))t[s+24>>2]=1;i=s;return i|0}else{e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Lp(4632)|0;t[s+4>>2]=0;o=s+8|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));t[s+92>>2]=0;t[s+96>>2]=0;t[s+100>>2]=32;t[s+104>>2]=0;t[s+108>>2]=0;f[s+112>>0]=0;c=s+116|0;t[c>>2]=0;t[c+4>>2]=0;t[c+8>>2]=0;t[c+12>>2]=0;t[c+16>>2]=0;t[s>>2]=35884;t[s+136>>2]=h;t[s+140>>2]=l;t[s+144>>2]=d;t[s+148>>2]=e;t[s+152>>2]=r;t[s+156>>2]=a;t[s+160>>2]=64;e=s+164|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[s+180>>2]=t[i>>2];t[s+184>>2]=0;t[s+188>>2]=0;t[s+192>>2]=0;e=s+4576|0;r=s+196|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=s+4588|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=s+4600|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[s+32>>2]|0))t[s+24>>2]=1;i=s;return i|0}}if((e|0)>=17){i=0;return i|0}l=d<<1;l=((l+h|0)/(l|1|0)|0)+1|0;if(r){e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Lp(4632)|0;t[s+4>>2]=0;o=s+8|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));t[s+92>>2]=0;t[s+96>>2]=0;t[s+100>>2]=32;t[s+104>>2]=0;t[s+108>>2]=0;f[s+112>>0]=0;c=s+116|0;t[c>>2]=0;t[c+4>>2]=0;t[c+8>>2]=0;t[c+12>>2]=0;t[c+16>>2]=0;t[s>>2]=36052;t[s+136>>2]=h;t[s+140>>2]=l;t[s+144>>2]=d;t[s+148>>2]=e;t[s+152>>2]=r;t[s+156>>2]=a;t[s+160>>2]=64;e=s+164|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[s+180>>2]=t[i>>2];t[s+184>>2]=0;t[s+188>>2]=0;t[s+192>>2]=0;e=s+4576|0;r=s+196|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=s+4588|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=s+4600|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[s+32>>2]|0))t[s+24>>2]=1;i=s;return i|0}else{e=0;while(1)if((1<<e|0)<(l|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(h|0))r=r+1|0;else break;a=((r|0)<8?8:r)+r<<1;s=Lp(4632)|0;t[s+4>>2]=0;o=s+8|0;u=i;c=o+84|0;do{t[o>>2]=t[u>>2];o=o+4|0;u=u+4|0}while((o|0)<(c|0));t[s+92>>2]=0;t[s+96>>2]=0;t[s+100>>2]=32;t[s+104>>2]=0;t[s+108>>2]=0;f[s+112>>0]=0;c=s+116|0;t[c>>2]=0;t[c+4>>2]=0;t[c+8>>2]=0;t[c+12>>2]=0;t[c+16>>2]=0;t[s>>2]=36080;t[s+136>>2]=h;t[s+140>>2]=l;t[s+144>>2]=d;t[s+148>>2]=e;t[s+152>>2]=r;t[s+156>>2]=a;t[s+160>>2]=64;e=s+164|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[s+180>>2]=t[i>>2];t[s+184>>2]=0;t[s+188>>2]=0;t[s+192>>2]=0;e=s+4576|0;r=s+196|0;do{t[r>>2]=0;t[r+4>>2]=0;n[r+8>>1]=0;n[r+10>>1]=1;r=r+12|0}while((r|0)!=(e|0));t[e>>2]=0;t[e+4>>2]=0;n[e+8>>1]=0;f[e+10>>0]=0;i=s+4588|0;t[i>>2]=0;t[i+4>>2]=0;n[i+8>>1]=0;f[i+10>>0]=0;i=s+4600|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[i+16>>2]=0;t[i+20>>2]=0;t[i+24>>2]=0;f[i+28>>0]=0;if(!(t[s+32>>2]|0))t[s+24>>2]=1;i=s;return i|0}return 0}function Zi(){var e=0,i=0,r=0,f=0,n=0,a=0,s=0;e=2832;do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=4880);ym(2832,0,2048)|0;e=0;do{s=2832+(e+128<<3)|0;t[s>>2]=0;t[s+4>>2]=1;e=e+1|0}while((e|0)!=128);e=3088;t[e>>2]=1;t[e+4>>2]=3;e=3096;t[e>>2]=1;t[e+4>>2]=3;e=3104;t[e>>2]=1;t[e+4>>2]=3;e=3112;t[e>>2]=1;t[e+4>>2]=3;e=3120;t[e>>2]=1;t[e+4>>2]=3;e=3128;t[e>>2]=1;t[e+4>>2]=3;e=3136;t[e>>2]=1;t[e+4>>2]=3;e=3144;t[e>>2]=1;t[e+4>>2]=3;e=3152;t[e>>2]=1;t[e+4>>2]=3;e=3160;t[e>>2]=1;t[e+4>>2]=3;e=3168;t[e>>2]=1;t[e+4>>2]=3;e=3176;t[e>>2]=1;t[e+4>>2]=3;e=3184;t[e>>2]=1;t[e+4>>2]=3;e=3192;t[e>>2]=1;t[e+4>>2]=3;e=3200;t[e>>2]=1;t[e+4>>2]=3;e=3208;t[e>>2]=1;t[e+4>>2]=3;e=3216;t[e>>2]=1;t[e+4>>2]=3;e=3224;t[e>>2]=1;t[e+4>>2]=3;e=3232;t[e>>2]=1;t[e+4>>2]=3;e=3240;t[e>>2]=1;t[e+4>>2]=3;e=3248;t[e>>2]=1;t[e+4>>2]=3;e=3256;t[e>>2]=1;t[e+4>>2]=3;e=3264;t[e>>2]=1;t[e+4>>2]=3;e=3272;t[e>>2]=1;t[e+4>>2]=3;e=3280;t[e>>2]=1;t[e+4>>2]=3;e=3288;t[e>>2]=1;t[e+4>>2]=3;e=3296;t[e>>2]=1;t[e+4>>2]=3;e=3304;t[e>>2]=1;t[e+4>>2]=3;e=3312;t[e>>2]=1;t[e+4>>2]=3;e=3320;t[e>>2]=1;t[e+4>>2]=3;e=3328;t[e>>2]=1;t[e+4>>2]=3;e=3336;t[e>>2]=1;t[e+4>>2]=3;e=2896;t[e>>2]=2;t[e+4>>2]=5;e=2904;t[e>>2]=2;t[e+4>>2]=5;e=2912;t[e>>2]=2;t[e+4>>2]=5;e=2920;t[e>>2]=2;t[e+4>>2]=5;e=2928;t[e>>2]=2;t[e+4>>2]=5;e=2936;t[e>>2]=2;t[e+4>>2]=5;e=2944;t[e>>2]=2;t[e+4>>2]=5;e=2952;t[e>>2]=2;t[e+4>>2]=5;e=2848;t[e>>2]=3;t[e+4>>2]=7;e=2856;t[e>>2]=3;t[e+4>>2]=7;e=0;do{s=2832+(e+64<<3)|0;t[s>>2]=-1;t[s+4>>2]=2;e=e+1|0}while((e|0)!=64);e=2960;t[e>>2]=-2;t[e+4>>2]=4;e=2968;t[e>>2]=-2;t[e+4>>2]=4;e=2976;t[e>>2]=-2;t[e+4>>2]=4;e=2984;t[e>>2]=-2;t[e+4>>2]=4;e=2992;t[e>>2]=-2;t[e+4>>2]=4;e=3e3;t[e>>2]=-2;t[e+4>>2]=4;e=3008;t[e>>2]=-2;t[e+4>>2]=4;e=3016;t[e>>2]=-2;t[e+4>>2]=4;e=3024;t[e>>2]=-2;t[e+4>>2]=4;e=3032;t[e>>2]=-2;t[e+4>>2]=4;e=3040;t[e>>2]=-2;t[e+4>>2]=4;e=3048;t[e>>2]=-2;t[e+4>>2]=4;e=3056;t[e>>2]=-2;t[e+4>>2]=4;e=3064;t[e>>2]=-2;t[e+4>>2]=4;e=3072;t[e>>2]=-2;t[e+4>>2]=4;e=3080;t[e>>2]=-2;t[e+4>>2]=4;e=2864;t[e>>2]=-3;t[e+4>>2]=6;e=2872;t[e>>2]=-3;t[e+4>>2]=6;e=2880;t[e>>2]=-3;t[e+4>>2]=6;e=2888;t[e>>2]=-3;t[e+4>>2]=6;e=2840;t[e>>2]=-4;t[e+4>>2]=8;e=4880;do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=6928);ym(4880,0,2048)|0;r=2;e=0;n=0;a=0;while(1){r=r<<16>>16;i=8-r|0;f=1<<i;if((i|0)!=31){e=(e&1|2)<<i;i=0;do{s=4880+(i+e<<3)|0;t[s>>2]=n;t[s+4>>2]=r;i=i+1|0}while((i|0)<(f|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==7){i=2;n=1;a=-1;s=-1;break}else{r=(e>>1)+2|0;n=i>>16}}while(1){r=i<<16>>16;e=8-r|0;f=1<<e;if((e|0)!=31){e=(n&1|2)<<e;i=0;do{n=4880+(i+e<<3)|0;t[n>>2]=a;t[n+4>>2]=r;i=i+1|0}while((i|0)<(f|0))}e=(s<<16)+-65536|0;n=e>>31^e>>15;i=(n>>1)+2|0;if((i|0)>8){e=6928;break}else{a=e>>16;s=s+-1|0}}do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=8976);ym(6928,0,2048)|0;n=3;e=0;f=0;a=0;while(1){i=8-n|0;r=1<<i;if((i|0)!=31){e=(e&3|4)<<i;i=0;do{s=6928+(i+e<<3)|0;t[s>>2]=f;t[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==12){n=3;i=1;f=-1;a=-1;break}else{n=(e>>2)+3|0;f=i>>16}}while(1){e=8-n|0;r=1<<e;if((e|0)!=31){e=(i&3|4)<<e;i=0;do{s=6928+(i+e<<3)|0;t[s>>2]=f;t[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>2)+3|0;if((n|0)>8){e=8976;break}else{f=e>>16;a=a+-1|0}}do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=11024);ym(8976,0,2048)|0;n=4;e=0;f=0;a=0;while(1){i=8-n|0;r=1<<i;if((i|0)!=31){e=(e&7|8)<<i;i=0;do{s=8976+(i+e<<3)|0;t[s>>2]=f;t[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==20){n=4;i=1;f=-1;a=-1;break}else{n=(e>>3)+4|0;f=i>>16}}while(1){e=8-n|0;r=1<<e;if((e|0)!=31){e=(i&7|8)<<e;i=0;do{s=8976+(i+e<<3)|0;t[s>>2]=f;t[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>3)+4|0;if((n|0)>8){e=11024;break}else{f=e>>16;a=a+-1|0}}do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=13072);ym(11024,0,2048)|0;n=5;e=0;f=0;a=0;while(1){i=8-n|0;r=1<<i;if((i|0)!=31){e=(e&15|16)<<i;i=0;do{s=11024+(i+e<<3)|0;t[s>>2]=f;t[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==32){n=5;i=1;f=-1;a=-1;break}else{n=(e>>4)+5|0;f=i>>16}}while(1){e=8-n|0;r=1<<e;if((e|0)!=31){e=(i&15|16)<<e;i=0;do{s=11024+(i+e<<3)|0;t[s>>2]=f;t[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>4)+5|0;if((n|0)>8){e=13072;break}else{f=e>>16;a=a+-1|0}}do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=15120);ym(13072,0,2048)|0;n=6;e=0;f=0;a=0;while(1){i=8-n|0;r=1<<i;if((i|0)!=31){e=(e&31|32)<<i;i=0;do{s=13072+(i+e<<3)|0;t[s>>2]=f;t[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==48){n=6;i=1;f=-1;a=-1;break}else{n=(e>>5)+6|0;f=i>>16}}while(1){e=8-n|0;r=1<<e;if((e|0)!=31){e=(i&31|32)<<e;i=0;do{s=13072+(i+e<<3)|0;t[s>>2]=f;t[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>5)+6|0;if((n|0)>8){e=15120;break}else{f=e>>16;a=a+-1|0}}do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=17168);ym(15120,0,2048)|0;n=7;e=0;f=0;a=0;while(1){i=8-n|0;r=1<<i;if((i|0)!=31){e=(e&63|64)<<i;i=0;do{s=15120+(i+e<<3)|0;t[s>>2]=f;t[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==64){n=7;i=1;f=-1;a=-1;break}else{n=(e>>6)+7|0;f=i>>16}}while(1){e=8-n|0;r=1<<e;if((e|0)!=31){e=(i&63|64)<<e;i=0;do{s=15120+(i+e<<3)|0;t[s>>2]=f;t[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>6)+7|0;if((n|0)>8){e=17168;break}else{f=e>>16;a=a+-1|0}}do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=19216);ym(17168,0,2048)|0;n=8;e=0;f=0;a=0;while(1){i=8-n|0;r=1<<i;if((i|0)!=31){e=(e&127|128)<<i;i=0;do{s=17168+(i+e<<3)|0;t[s>>2]=f;t[s+4>>2]=n;i=i+1|0}while((i|0)<(r|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==64){a=8;f=1;n=-1;s=-1;break}else{n=(e>>7)+8|0;f=i>>16}}while(1){e=8-a|0;r=1<<e;if((e|0)!=31){e=(f&127|128)<<e;i=0;do{f=17168+(i+e<<3)|0;t[f>>2]=n;t[f+4>>2]=a;i=i+1|0}while((i|0)<(r|0))}i=(s<<16)+-65536|0;f=i>>31^i>>15;e=f>>7;if((e|0)>0){e=19216;break}else{a=e+8|0;n=i>>16;s=s+-1|0}}do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=21264);ym(19216,0,2048)|0;e=21264;do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=23312);ym(21264,0,2048)|0;e=23312;do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=25360);ym(23312,0,2048)|0;e=25360;do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=27408);ym(25360,0,2048)|0;e=27408;do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=29456);ym(27408,0,2048)|0;e=29456;do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=31504);ym(29456,0,2048)|0;e=31504;do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=33552);ym(31504,0,2048)|0;e=33552;do{t[e>>2]=0;t[e+4>>2]=0;e=e+8|0}while((e|0)!=35600);ym(33552,0,2048)|0;Vi(35600,8);di(179,35600,k|0)|0;Vi(35612,10);di(179,35612,k|0)|0;Vi(35624,12);di(179,35624,k|0)|0;Vi(35636,16);di(179,35636,k|0)|0;return}function Ji(e){e=e|0;var i=0;i=t[e>>2]|0;if(!i)return;e=e+4|0;if((t[e>>2]|0)!=(i|0))t[e>>2]=i;Bp(i);return}function Qi(e){e=e|0;var i=0,r=0;t[e>>2]=36080;i=t[e+4616>>2]|0;if(i){r=e+4620|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function er(e){e=e|0;var i=0,r=0;t[e>>2]=36080;i=t[e+4616>>2]|0;if(i){r=e+4620|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function ir(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,t[e+136>>2]|0,t[e+144>>2]|0);u=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[h+8>>2]|0:l;s=t[i+12>>2]|0;s=(s|0)==0?t[h+12>>2]|0:s;r=t[i+16>>2]|0;a=t[h+16>>2]|0;t[e+184>>2]=(u|0)==0?t[h+4>>2]|0:u;t[e+188>>2]=l;t[e+192>>2]=s;jf(e);s=e+140|0;i=(t[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{t[e+196+(l*12|0)>>2]=i;t[e+196+(l*12|0)+4>>2]=0;n[e+196+(l*12|0)+8>>1]=0;n[e+196+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(t[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;t[e+4576>>2]=u;t[e+4580>>2]=0;f[e+4584>>0]=h;f[e+4585>>0]=1;f[e+4586>>0]=0;t[e+4588>>2]=u;t[e+4592>>2]=1;f[e+4596>>0]=h;f[e+4597>>0]=1;f[e+4598>>0]=0;t[e+4600>>2]=0;c=o;return}function rr(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=t[i>>2]|0;t[i>>2]=0;i=t[u>>2]|0;t[u>>2]=o;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);t[h>>2]=0;t[h+4>>2]=a;u=r+8|0;t[h+8>>2]=t[u>>2];if(a){i=Lp(4624)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{t[s>>2]=t[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{t[s>>2]=0;s=s+4|0}while((s|0)<(o|0));t[i>>2]=35856;t[i+128>>2]=t[e+136>>2];t[i+132>>2]=t[e+140>>2];t[i+136>>2]=t[e+144>>2];t[i+140>>2]=t[e+148>>2];t[i+144>>2]=t[e+152>>2];t[i+148>>2]=t[e+156>>2];t[i+152>>2]=t[e+160>>2];s=i+156|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[i+172>>2]=t[a>>2];t[i+176>>2]=0;t[i+180>>2]=0;t[i+184>>2]=0;s=i+4568|0;a=i+188|0;do{t[a>>2]=0;t[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;t[s>>2]=0;t[s+4>>2]=0;n[s+8>>1]=0;f[s+10>>0]=0;o=i+4580|0;t[o>>2]=0;t[o+4>>2]=0;n[o+8>>1]=0;f[o+10>>0]=0;o=i+4592|0;t[o>>2]=0;t[o+4>>2]=0;t[o+8>>2]=0;t[o+12>>2]=0;t[o+16>>2]=0;t[o+20>>2]=0;t[o+24>>2]=0;f[o+28>>0]=0;if(!(t[i+28>>2]|0))t[i+20>>2]=1;a=t[l>>2]|0;t[l>>2]=i;if(a){tM[t[(t[a>>2]|0)+4>>2]&255](a);i=t[l>>2]|0}Cf(i,h)}h=e+100|0;t[h>>2]=32;t[e+96>>2]=0;i=t[r>>2]|0;if(!i){t[e+108>>2]=t[r+4>>2];t[e+104>>2]=t[u>>2];If(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}t[e+132>>2]=i;s=e+120|0;u=e+124|0;a=t[u>>2]|0;i=t[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){t[u>>2]=d;a=d}}else{Pf(s,4e3-o|0);i=t[s>>2]|0;l=i;a=t[u>>2]|0}t[e+108>>2]=l;t[e+104>>2]=a-i;If(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function fr(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+32>>2]|0)!=0?(t[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(37,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+16>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(38,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(39,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(40,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+20>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=2;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=2;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function nr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;t[e>>2]=36460;t[e+4>>2]=r;d=e+8|0;s=t[r>>2]|0;c=r+16|0;n=t[c>>2]|0;l=re(n,s)|0;t[d>>2]=0;b=e+12|0;t[b>>2]=0;t[e+16>>2]=0;do{if(l){if(!((l|0)<0?(w=0,ue(178,d|0),s=w,w=0,s&1):0))h=4;if((h|0)==4?(o=l<<1,w=0,u=de(67,o|0)|0,s=w,w=0,!(s&1)):0){t[d>>2]=u;s=u+(l<<1)|0;t[e+16>>2]=s;ym(u|0,0,o|0)|0;t[b>>2]=s;s=t[r>>2]|0;n=t[c>>2]|0;break}l=je()|0;a=t[d>>2]|0;n=a;if(a){s=t[b>>2]|0;if((s|0)!=(a|0))t[b>>2]=s+(~((s+-2-n|0)>>>1)<<1);Bp(a)}b=l;Qe(b|0)}}while(0);l=e+20|0;n=re(s<<1,n)|0;t[l>>2]=0;o=e+24|0;t[o>>2]=0;t[e+28>>2]=0;if(!n){b=e+36|0;t[b>>2]=t[i>>2];t[b+4>>2]=t[i+4>>2];t[b+8>>2]=t[i+8>>2];return}if(!((n|0)<0?(w=0,ue(178,l|0),r=w,w=0,r&1):0))h=13;if((h|0)==13?(w=0,a=de(67,n|0)|0,h=w,w=0,!(h&1)):0){t[o>>2]=a;t[l>>2]=a;t[e+28>>2]=a+n;do{f[a>>0]=0;a=(t[o>>2]|0)+1|0;t[o>>2]=a;n=n+-1|0}while((n|0)!=0);b=e+36|0;t[b>>2]=t[i>>2];t[b+4>>2]=t[i+4>>2];t[b+8>>2]=t[i+8>>2];return}s=je()|0;a=t[l>>2]|0;if(a){if((t[o>>2]|0)!=(a|0))t[o>>2]=a;Bp(a)}a=t[d>>2]|0;if(!a){b=s;Qe(b|0)}n=t[b>>2]|0;if((n|0)!=(a|0))t[b>>2]=n+(~((n+-2-a|0)>>>1)<<1);Bp(a);b=s;Qe(b|0)}function tr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;t[e>>2]=36436;t[e+4>>2]=r;d=e+8|0;s=t[r>>2]|0;c=r+16|0;n=t[c>>2]|0;l=re(n,s)|0;t[d>>2]=0;b=e+12|0;t[b>>2]=0;t[e+16>>2]=0;do{if(l){if(!((l|0)<0?(w=0,ue(178,d|0),s=w,w=0,s&1):0))h=4;if((h|0)==4?(o=l<<1,w=0,u=de(67,o|0)|0,s=w,w=0,!(s&1)):0){t[d>>2]=u;s=u+(l<<1)|0;t[e+16>>2]=s;ym(u|0,0,o|0)|0;t[b>>2]=s;s=t[r>>2]|0;n=t[c>>2]|0;break}l=je()|0;a=t[d>>2]|0;n=a;if(a){s=t[b>>2]|0;if((s|0)!=(a|0))t[b>>2]=s+(~((s+-2-n|0)>>>1)<<1);Bp(a)}b=l;Qe(b|0)}}while(0);l=e+20|0;n=re(s<<1,n)|0;t[l>>2]=0;o=e+24|0;t[o>>2]=0;t[e+28>>2]=0;if(!n){b=e+36|0;t[b>>2]=t[i>>2];t[b+4>>2]=t[i+4>>2];t[b+8>>2]=t[i+8>>2];return}if(!((n|0)<0?(w=0,ue(178,l|0),r=w,w=0,r&1):0))h=13;if((h|0)==13?(w=0,a=de(67,n|0)|0,h=w,w=0,!(h&1)):0){t[o>>2]=a;t[l>>2]=a;t[e+28>>2]=a+n;do{f[a>>0]=0;a=(t[o>>2]|0)+1|0;t[o>>2]=a;n=n+-1|0}while((n|0)!=0);b=e+36|0;t[b>>2]=t[i>>2];t[b+4>>2]=t[i+4>>2];t[b+8>>2]=t[i+8>>2];return}s=je()|0;a=t[l>>2]|0;if(a){if((t[o>>2]|0)!=(a|0))t[o>>2]=a;Bp(a)}a=t[d>>2]|0;if(!a){b=s;Qe(b|0)}n=t[b>>2]|0;if((n|0)!=(a|0))t[b>>2]=n+(~((n+-2-a|0)>>>1)<<1);Bp(a);b=s;Qe(b|0)}function ar(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;t[e>>2]=36412;t[e+4>>2]=r;d=e+8|0;s=t[r>>2]|0;c=r+16|0;n=t[c>>2]|0;l=re(n,s)|0;t[d>>2]=0;b=e+12|0;t[b>>2]=0;t[e+16>>2]=0;do{if(l){if(!((l|0)<0?(w=0,ue(178,d|0),s=w,w=0,s&1):0))h=4;if((h|0)==4?(o=l<<1,w=0,u=de(67,o|0)|0,s=w,w=0,!(s&1)):0){t[d>>2]=u;s=u+(l<<1)|0;t[e+16>>2]=s;ym(u|0,0,o|0)|0;t[b>>2]=s;s=t[r>>2]|0;n=t[c>>2]|0;break}l=je()|0;a=t[d>>2]|0;n=a;if(a){s=t[b>>2]|0;if((s|0)!=(a|0))t[b>>2]=s+(~((s+-2-n|0)>>>1)<<1);Bp(a)}b=l;Qe(b|0)}}while(0);l=e+20|0;n=re(s<<1,n)|0;t[l>>2]=0;o=e+24|0;t[o>>2]=0;t[e+28>>2]=0;if(!n){b=e+36|0;t[b>>2]=t[i>>2];t[b+4>>2]=t[i+4>>2];t[b+8>>2]=t[i+8>>2];return}if(!((n|0)<0?(w=0,ue(178,l|0),r=w,w=0,r&1):0))h=13;if((h|0)==13?(w=0,a=de(67,n|0)|0,h=w,w=0,!(h&1)):0){t[o>>2]=a;t[l>>2]=a;t[e+28>>2]=a+n;do{f[a>>0]=0;a=(t[o>>2]|0)+1|0;t[o>>2]=a;n=n+-1|0}while((n|0)!=0);b=e+36|0;t[b>>2]=t[i>>2];t[b+4>>2]=t[i+4>>2];t[b+8>>2]=t[i+8>>2];return}s=je()|0;a=t[l>>2]|0;if(a){if((t[o>>2]|0)!=(a|0))t[o>>2]=a;Bp(a)}a=t[d>>2]|0;if(!a){b=s;Qe(b|0)}n=t[b>>2]|0;if((n|0)!=(a|0))t[b>>2]=n+(~((n+-2-a|0)>>>1)<<1);Bp(a);b=s;Qe(b|0)}function sr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;t[e>>2]=36388;t[e+4>>2]=r;d=e+8|0;s=t[r>>2]|0;c=r+16|0;n=t[c>>2]|0;l=re(n,s)|0;t[d>>2]=0;b=e+12|0;t[b>>2]=0;t[e+16>>2]=0;do{if(l){if(!((l|0)<0?(w=0,ue(178,d|0),s=w,w=0,s&1):0))h=4;if((h|0)==4?(o=l<<1,w=0,u=de(67,o|0)|0,s=w,w=0,!(s&1)):0){t[d>>2]=u;s=u+(l<<1)|0;t[e+16>>2]=s;ym(u|0,0,o|0)|0;t[b>>2]=s;s=t[r>>2]|0;n=t[c>>2]|0;break}l=je()|0;a=t[d>>2]|0;n=a;if(a){s=t[b>>2]|0;if((s|0)!=(a|0))t[b>>2]=s+(~((s+-2-n|0)>>>1)<<1);Bp(a)}b=l;Qe(b|0)}}while(0);l=e+20|0;n=re(s<<1,n)|0;t[l>>2]=0;o=e+24|0;t[o>>2]=0;t[e+28>>2]=0;if(!n){b=e+36|0;t[b>>2]=t[i>>2];t[b+4>>2]=t[i+4>>2];t[b+8>>2]=t[i+8>>2];return}if(!((n|0)<0?(w=0,ue(178,l|0),r=w,w=0,r&1):0))h=13;if((h|0)==13?(w=0,a=de(67,n|0)|0,h=w,w=0,!(h&1)):0){t[o>>2]=a;t[l>>2]=a;t[e+28>>2]=a+n;do{f[a>>0]=0;a=(t[o>>2]|0)+1|0;t[o>>2]=a;n=n+-1|0}while((n|0)!=0);b=e+36|0;t[b>>2]=t[i>>2];t[b+4>>2]=t[i+4>>2];t[b+8>>2]=t[i+8>>2];return}s=je()|0;a=t[l>>2]|0;if(a){if((t[o>>2]|0)!=(a|0))t[o>>2]=a;Bp(a)}a=t[d>>2]|0;if(!a){b=s;Qe(b|0)}n=t[b>>2]|0;if((n|0)!=(a|0))t[b>>2]=n+(~((n+-2-a|0)>>>1)<<1);Bp(a);b=s;Qe(b|0)}function lr(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0;l=e+32|0;Lh(l,i)|0;s=e+44|0;t[s>>2]=0;o=e+48|0;a=t[o>>2]|0;if(a&8){i=f[l>>0]|0;if(!(i&1)){i=((i&255)>>>1)+(l+1)|0;t[s>>2]=i;r=l+1|0;n=l+1|0}else{i=(t[e+40>>2]|0)+(t[e+36>>2]|0)|0;t[s>>2]=i;n=t[e+40>>2]|0;r=n}t[e+8>>2]=r;t[e+12>>2]=n;t[e+16>>2]=i}if(!(a&16))return;i=f[l>>0]|0;if(!(i&1)){a=(i&255)>>>1;t[s>>2]=l+1+a;i=10;s=a}else{a=t[e+36>>2]|0;t[s>>2]=(t[e+40>>2]|0)+a;i=(t[l>>2]&-2)+-1|0;s=a}Dh(l,i,0);i=f[l>>0]|0;if(!(i&1)){a=l+1|0;n=(i&255)>>>1;r=l+1|0}else{r=t[e+40>>2]|0;a=r;n=t[e+36>>2]|0}i=e+24|0;t[i>>2]=r;t[e+20>>2]=r;t[e+28>>2]=a+n;if(!(t[o>>2]&3))return;t[i>>2]=r+s;return}function or(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;_=c;c=c+32|0;l=_+16|0;b=_+8|0;o=_;w=0;ce(65,b|0,e|0);h=w;w=0;e:do{if(h&1){r=je(0)|0;n=e;a=e}else{do{if(f[b>>0]|0){n=t[(t[e>>2]|0)+-12>>2]|0;t[o>>2]=t[e+(n+24)>>2];u=e+n|0;h=t[e+(n+4)>>2]|0;a=i+r|0;n=e+(n+76)|0;r=t[n>>2]|0;do{if((r|0)==-1){w=0;r=de(68,u|0)|0;k=w;w=0;if(k&1)d=13;else{t[l>>2]=r;w=0;r=pe(37,l|0,44220)|0;k=w;w=0;if(!(k&1)?(w=0,s=pe(t[(t[r>>2]|0)+28>>2]|0,r|0,32)|0,k=w,w=0,!(k&1)):0){Lu(l);r=s<<24>>24;t[n>>2]=r;d=9;break}r=je(0)|0;Lu(l)}}else d=9}while(0);if((d|0)==9){w=0;t[l>>2]=t[o>>2];r=he(39,l|0,i|0,((h&176|0)==32?a:i)|0,a|0,u|0,r&255|0)|0;k=w;w=0;if(!(k&1)){if(r)break;k=t[(t[e>>2]|0)+-12>>2]|0;w=0;ce(66,e+k|0,t[e+(k+16)>>2]|5|0);k=w;w=0;if(!(k&1))break;else d=13}else d=13}if((d|0)==13)r=je(0)|0;nb(b);n=e;a=e;break e}}while(0);nb(b);c=_;return e|0}}while(0);We(r|0)|0;w=0;ue(181,n+(t[(t[a>>2]|0)+-12>>2]|0)|0);k=w;w=0;if(!(k&1)){Je();c=_;return e|0}r=je()|0;w=0;Se(3);k=w;w=0;if(k&1){k=je(0)|0;Ni(k)}else Qe(r|0);return 0}function ur(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0;r=t[i+48>>2]|0;if(r&16){r=i+44|0;n=t[r>>2]|0;a=t[i+24>>2]|0;if(n>>>0<a>>>0)t[r>>2]=a;else a=n;n=t[i+20>>2]|0;s=a-n|0;if(s>>>0>4294967279)Ip(e);if(s>>>0<11){f[e>>0]=s<<1;r=e+1|0}else{i=s+16&-16;r=Lp(i)|0;t[e+8>>2]=r;t[e>>2]=i|1;t[e+4>>2]=s}if((n|0)!=(a|0)){i=r;while(1){f[i>>0]=f[n>>0]|0;n=n+1|0;if((n|0)==(a|0))break;else i=i+1|0}r=r+s|0}f[r>>0]=0;return}if(!(r&8)){t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}n=t[i+8>>2]|0;i=t[i+16>>2]|0;s=i-n|0;if(s>>>0>4294967279)Ip(e);if(s>>>0<11){f[e>>0]=s<<1;r=e+1|0}else{a=s+16&-16;r=Lp(a)|0;t[e+8>>2]=r;t[e>>2]=a|1;t[e+4>>2]=s}if((n|0)!=(i|0)){a=r;while(1){f[a>>0]=f[n>>0]|0;n=n+1|0;if((n|0)==(i|0))break;else a=a+1|0}r=r+s|0}f[r>>0]=0;return}function cr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0;t[e>>2]=36364;t[e+4>>2]=r;b=e+8|0;l=t[r>>2]|0;h=r+16|0;s=t[h>>2]|0;c=re(s,l)|0;t[b>>2]=0;_=e+12|0;t[_>>2]=0;t[e+16>>2]=0;do{if(c){if(!((c|0)<0?(w=0,ue(178,b|0),l=w,w=0,l&1):0))d=4;if((d|0)==4?(o=c<<1,w=0,u=de(67,o|0)|0,l=w,w=0,!(l&1)):0){t[b>>2]=u;l=u+(c<<1)|0;t[e+16>>2]=l;ym(u|0,0,o|0)|0;t[_>>2]=l;l=t[r>>2]|0;s=t[h>>2]|0;break}o=je()|0;a=t[b>>2]|0;s=a;if(a){l=t[_>>2]|0;if((l|0)!=(a|0))t[_>>2]=l+(~((l+-2-s|0)>>>1)<<1);Bp(a)}_=o;Qe(_|0)}}while(0);o=e+20|0;s=re(l<<1,s)|0;t[o>>2]=0;u=e+24|0;t[u>>2]=0;t[e+28>>2]=0;if(!s){_=e+32|0;b=n;b=t[b>>2]|0;n=n+4|0;n=t[n>>2]|0;d=_;t[d>>2]=b;_=_+4|0;t[_>>2]=n;_=e+40|0;t[_>>2]=b;_=e+48|0;t[_>>2]=t[i>>2];t[_+4>>2]=t[i+4>>2];t[_+8>>2]=t[i+8>>2];return}if(!((s|0)<0?(w=0,ue(178,o|0),h=w,w=0,h&1):0))d=13;if((d|0)==13?(w=0,a=de(67,s|0)|0,d=w,w=0,!(d&1)):0){t[u>>2]=a;t[o>>2]=a;t[e+28>>2]=a+s;do{f[a>>0]=0;a=(t[u>>2]|0)+1|0;t[u>>2]=a;s=s+-1|0}while((s|0)!=0);_=e+32|0;b=n;b=t[b>>2]|0;n=n+4|0;n=t[n>>2]|0;d=_;t[d>>2]=b;_=_+4|0;t[_>>2]=n;_=e+40|0;t[_>>2]=b;_=e+48|0;t[_>>2]=t[i>>2];t[_+4>>2]=t[i+4>>2];t[_+8>>2]=t[i+8>>2];return}l=je()|0;a=t[o>>2]|0;if(a){if((t[u>>2]|0)!=(a|0))t[u>>2]=a;Bp(a)}a=t[b>>2]|0;if(!a){_=l;Qe(_|0)}s=t[_>>2]|0;if((s|0)!=(a|0))t[_>>2]=s+(~((s+-2-a|0)>>>1)<<1);Bp(a);_=l;Qe(_|0)}function hr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0;t[e>>2]=36340;t[e+4>>2]=r;b=e+8|0;l=t[r>>2]|0;h=r+16|0;s=t[h>>2]|0;c=re(s,l)|0;t[b>>2]=0;_=e+12|0;t[_>>2]=0;t[e+16>>2]=0;do{if(c){if(!((c|0)<0?(w=0,ue(178,b|0),l=w,w=0,l&1):0))d=4;if((d|0)==4?(o=c<<1,w=0,u=de(67,o|0)|0,l=w,w=0,!(l&1)):0){t[b>>2]=u;l=u+(c<<1)|0;t[e+16>>2]=l;ym(u|0,0,o|0)|0;t[_>>2]=l;l=t[r>>2]|0;s=t[h>>2]|0;break}o=je()|0;a=t[b>>2]|0;s=a;if(a){l=t[_>>2]|0;if((l|0)!=(a|0))t[_>>2]=l+(~((l+-2-s|0)>>>1)<<1);Bp(a)}_=o;Qe(_|0)}}while(0);o=e+20|0;s=re(l<<1,s)|0;t[o>>2]=0;u=e+24|0;t[u>>2]=0;t[e+28>>2]=0;if(!s){_=e+32|0;b=n;b=t[b>>2]|0;n=n+4|0;n=t[n>>2]|0;d=_;t[d>>2]=b;_=_+4|0;t[_>>2]=n;_=e+40|0;t[_>>2]=b;_=e+48|0;t[_>>2]=t[i>>2];t[_+4>>2]=t[i+4>>2];t[_+8>>2]=t[i+8>>2];return}if(!((s|0)<0?(w=0,ue(178,o|0),h=w,w=0,h&1):0))d=13;if((d|0)==13?(w=0,a=de(67,s|0)|0,d=w,w=0,!(d&1)):0){t[u>>2]=a;t[o>>2]=a;t[e+28>>2]=a+s;do{f[a>>0]=0;a=(t[u>>2]|0)+1|0;t[u>>2]=a;s=s+-1|0}while((s|0)!=0);_=e+32|0;b=n;b=t[b>>2]|0;n=n+4|0;n=t[n>>2]|0;d=_;t[d>>2]=b;_=_+4|0;t[_>>2]=n;_=e+40|0;t[_>>2]=b;_=e+48|0;t[_>>2]=t[i>>2];t[_+4>>2]=t[i+4>>2];t[_+8>>2]=t[i+8>>2];return}l=je()|0;a=t[o>>2]|0;if(a){if((t[u>>2]|0)!=(a|0))t[u>>2]=a;Bp(a)}a=t[b>>2]|0;if(!a){_=l;Qe(_|0)}s=t[_>>2]|0;if((s|0)!=(a|0))t[_>>2]=s+(~((s+-2-a|0)>>>1)<<1);Bp(a);_=l;Qe(_|0)}function dr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0;t[e>>2]=36316;t[e+4>>2]=r;b=e+8|0;l=t[r>>2]|0;h=r+16|0;s=t[h>>2]|0;c=re(s,l)|0;t[b>>2]=0;_=e+12|0;t[_>>2]=0;t[e+16>>2]=0;do{if(c){if(!((c|0)<0?(w=0,ue(178,b|0),l=w,w=0,l&1):0))d=4;if((d|0)==4?(o=c<<1,w=0,u=de(67,o|0)|0,l=w,w=0,!(l&1)):0){t[b>>2]=u;l=u+(c<<1)|0;t[e+16>>2]=l;ym(u|0,0,o|0)|0;t[_>>2]=l;l=t[r>>2]|0;s=t[h>>2]|0;break}o=je()|0;a=t[b>>2]|0;s=a;if(a){l=t[_>>2]|0;if((l|0)!=(a|0))t[_>>2]=l+(~((l+-2-s|0)>>>1)<<1);Bp(a)}_=o;Qe(_|0)}}while(0);o=e+20|0;s=re(l<<1,s)|0;t[o>>2]=0;u=e+24|0;t[u>>2]=0;t[e+28>>2]=0;if(!s){_=e+32|0;b=n;b=t[b>>2]|0;n=n+4|0;n=t[n>>2]|0;d=_;t[d>>2]=b;_=_+4|0;t[_>>2]=n;_=e+40|0;t[_>>2]=b;_=e+48|0;t[_>>2]=t[i>>2];t[_+4>>2]=t[i+4>>2];t[_+8>>2]=t[i+8>>2];return}if(!((s|0)<0?(w=0,ue(178,o|0),h=w,w=0,h&1):0))d=13;if((d|0)==13?(w=0,a=de(67,s|0)|0,d=w,w=0,!(d&1)):0){t[u>>2]=a;t[o>>2]=a;t[e+28>>2]=a+s;do{f[a>>0]=0;a=(t[u>>2]|0)+1|0;t[u>>2]=a;s=s+-1|0}while((s|0)!=0);_=e+32|0;b=n;b=t[b>>2]|0;n=n+4|0;n=t[n>>2]|0;d=_;t[d>>2]=b;_=_+4|0;t[_>>2]=n;_=e+40|0;t[_>>2]=b;_=e+48|0;t[_>>2]=t[i>>2];t[_+4>>2]=t[i+4>>2];t[_+8>>2]=t[i+8>>2];return}l=je()|0;a=t[o>>2]|0;if(a){if((t[u>>2]|0)!=(a|0))t[u>>2]=a;Bp(a)}a=t[b>>2]|0;if(!a){_=l;Qe(_|0)}s=t[_>>2]|0;if((s|0)!=(a|0))t[_>>2]=s+(~((s+-2-a|0)>>>1)<<1);Bp(a);_=l;Qe(_|0)}function br(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=36316;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}f=t[e+8>>2]|0;if(!f)return;i=e+12|0;r=t[i>>2]|0;if((r|0)!=(f|0))t[i>>2]=r+(~((r+-2-f|0)>>>1)<<1);Bp(f);return}function _r(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=36316;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}f=t[e+8>>2]|0;if(!f){Bp(e);return}i=e+12|0;r=t[i>>2]|0;if((r|0)!=(f|0))t[i>>2]=r+(~((r+-2-f|0)>>>1)<<1);Bp(f);Bp(e);return}function kr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;a=e+48|0;if(!(t[a>>2]|0)){o=e+52|0;gr(e,i,t[o>>2]|0,r,n);t[o>>2]=(t[o>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}u=e+4|0;s=r<<1;l=re(s,t[(t[u>>2]|0)+16>>2]|0)|0;o=e+20|0;gr(e,i,t[o>>2]|0,r,n);i=t[u>>2]|0;if((t[i+28>>2]|0)==536870912)pr(t[o>>2]|0,re(s,t[i+16>>2]|0)|0);u=t[a>>2]|0;if((uM[t[(t[u>>2]|0)+48>>2]&63](u,t[o>>2]|0,l)|0)==(l|0))return;i=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,i|0,3,35648);u=w;w=0;if(u&1){u=je()|0;He(i|0);Qe(u|0)}else bi(i|0,824,96)}function wr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0;n=t[e+48>>2]|0;if(!n){n=e+52|0;mr(e,t[n>>2]|0,i,r,f);t[n>>2]=(t[n>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}else{vr(e,n,i,r,f);return}}function mr(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,_=0;h=e+4|0;o=t[h>>2]|0;do{if(!(f[o+32>>0]|0))d=i;else{u=e+8|0;Em(t[u>>2]|0,i|0,a*6|0)|0;o=t[h>>2]|0;c=t[o+16>>2]|0;if((a|0)<=0){d=t[u>>2]|0;break}i=t[u>>2]|0;o=i;u=0;while(1){d=o+4|0;b=n[o>>1]|0;n[o>>1]=n[d>>1]|0;n[d>>1]=b;u=u+1|0;if((u|0)==(a|0))break;else o=o+(c<<1)|0}d=i;o=t[h>>2]|0}}while(0);switch(t[o+16>>2]|0){case 3:if((t[o+24>>2]|0)==2){if((a|0)<=0)return;o=e+32|0;i=0;do{b=t[o>>2]|0;h=s[d+(i*6|0)+2>>1]<<b;l=32768-h|0;e=l+(s[d+(i*6|0)+4>>1]<<b)&65535;l=l+(s[d+(i*6|0)>>1]<<b)&65535;n[r+(i*6|0)>>1]=(h+49152+((e+l|0)>>>2)&65535)>>>b;n[r+(i*6|0)+2>>1]=e>>>b;n[r+(i*6|0)+4>>1]=l>>>b;i=i+1|0}while((i|0)!=(a|0));return}else{u=(l|0)<(a|0)?l:a;if((u|0)<=0)return;c=l<<1;o=t[e+32>>2]|0;i=0;do{a=s[d+(i*6|0)+2>>1]<<o;b=32768-a|0;e=b+(s[d+(i*6|0)+4>>1]<<o)&65535;b=b+(s[d+(i*6|0)>>1]<<o)&65535;n[r+(i<<1)>>1]=(a+49152+((e+b|0)>>>2)&65535)>>>o;n[r+(i+l<<1)>>1]=e>>>o;n[r+(i+c<<1)>>1]=b>>>o;i=i+1|0}while((i|0)!=(u|0));return}case 4:{if((t[o+24>>2]|0)!=1)return;u=(l|0)<(a|0)?l:a;if((u|0)<=0)return;c=l<<1;h=l*3|0;o=t[e+32>>2]|0;i=0;do{b=n[d+(i<<3)+6>>1]|0;_=s[d+(i<<3)+2>>1]<<o;e=32768-_|0;a=e+(s[d+(i<<3)+4>>1]<<o)&65535;e=e+(s[d+(i<<3)>>1]<<o)&65535;n[r+(i<<1)>>1]=(_+49152+((a+e|0)>>>2)&65535)>>>o;n[r+(i+l<<1)>>1]=a>>>o;n[r+(i+c<<1)>>1]=e>>>o;n[r+(i+h<<1)>>1]=b;i=i+1|0}while((i|0)!=(u|0));return}default:return}}function vr(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0;b=c;c=c+176|0;_=b+152|0;v=b+16|0;m=b;u=e+4|0;s=t[u>>2]|0;d=n<<1;l=re(d,t[s+16>>2]|0)|0;do{if(l){o=e+20|0;while(1){s=uM[t[(t[i>>2]|0)+32>>2]&63](i,t[o>>2]|0,l)|0;if(!s)break;if((l|0)==(s|0)){h=26;break}else l=l-s|0}if((h|0)==26){s=t[u>>2]|0;break}h=v+56|0;u=v+4|0;t[v>>2]=36160;t[h>>2]=36180;w=0;ce(62,v+56|0,u|0);b=w;w=0;if(b&1){v=je()|0;nd(h);Qe(v|0)}t[v+128>>2]=0;t[v+132>>2]=-1;t[v>>2]=36200;t[v+56>>2]=36220;w=0;ue(180,u|0);b=w;w=0;do{if(b&1)s=je()|0;else{t[u>>2]=36236;i=v+36|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[v+52>>2]=16;t[_>>2]=0;t[_+4>>2]=0;t[_+8>>2]=0;w=0;ce(63,u|0,_|0);b=w;w=0;if(b&1){s=je()|0;xh(_);xh(i);cd(u);break}xh(_);w=0;s=_e(28,v|0,49029,57)|0;_=w;w=0;if(!(_&1)?(w=0,pe(36,s|0,0)|0,_=w,w=0,!(_&1)):0){o=Ue(16)|0;w=0;ce(64,m|0,u|0);_=w;w=0;if(!(_&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,o|0,3,35648,m|0);_=w;w=0;if(_&1)l=1;else{w=0;Ee(6,o|0,824,96);w=0;l=0}s=je()|0;xh(m);if(!l){m=s;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}}else s=je()|0;He(o|0);m=s;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}m=je()|0;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}}while(0);v=s;nd(h);Qe(v|0)}}while(0);l=e+20|0;if((t[s+28>>2]|0)!=536870912){v=t[l>>2]|0;mr(e,v,r,n,a);c=b;return}pr(t[l>>2]|0,re(d,t[s+16>>2]|0)|0);v=t[l>>2]|0;mr(e,v,r,n,a);c=b;return}function pr(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0;a=c;c=c+176|0;r=a+152|0;u=a+16|0;l=a;if(!(i&1)){r=(i|0)/4|0;if((i|0)>3){n=0;do{u=e+(n<<2)|0;o=t[u>>2]|0;t[u>>2]=o>>>8&16711935|o<<8&-16711936;n=n+1|0}while((n|0)<(r|0))}if(!(i&3)){c=a;return}l=e+(i+-2)|0;u=e+(i+-1)|0;o=f[l>>0]|0;f[l>>0]=f[u>>0]|0;f[u>>0]=o;c=a;return}o=u+56|0;s=u+4|0;t[u>>2]=36160;t[o>>2]=36180;w=0;ce(62,u+56|0,s|0);a=w;w=0;if(a&1){u=je()|0;nd(o);Qe(u|0)}t[u+128>>2]=0;t[u+132>>2]=-1;t[u>>2]=36200;t[u+56>>2]=36220;w=0;ue(180,s|0);a=w;w=0;do{if(a&1)r=je()|0;else{t[s>>2]=36236;a=u+36|0;t[a>>2]=0;t[a+4>>2]=0;t[a+8>>2]=0;t[a+12>>2]=0;t[u+52>>2]=16;t[r>>2]=0;t[r+4>>2]=0;t[r+8>>2]=0;w=0;ce(63,s|0,r|0);e=w;w=0;if(e&1){u=je()|0;xh(r);xh(a);cd(s);r=u;break}xh(r);w=0;r=_e(28,u|0,49087,24)|0;e=w;w=0;if((!(e&1)?(w=0,n=pe(36,r|0,i|0)|0,i=w,w=0,!(i&1)):0)?(w=0,_e(28,n|0,49112,20)|0,i=w,w=0,!(i&1)):0){e=Ue(16)|0;w=0;ce(64,l|0,s|0);i=w;w=0;if(!(i&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,e|0,1,35648,l|0);i=w;w=0;if(i&1)n=1;else{w=0;Ee(6,e|0,824,96);w=0;n=0}r=je()|0;xh(l);if(!n){l=r;t[u>>2]=36200;t[o>>2]=36220;t[s>>2]=36236;xh(a);cd(s);nd(o);Qe(l|0)}}else r=je()|0;He(e|0);l=r;t[u>>2]=36200;t[o>>2]=36220;t[s>>2]=36236;xh(a);cd(s);nd(o);Qe(l|0)}l=je()|0;t[u>>2]=36200;t[o>>2]=36220;t[s>>2]=36236;xh(a);cd(s);nd(o);Qe(l|0)}}while(0);u=r;nd(o);Qe(u|0)}function gr(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0;d=e+4|0;o=t[d>>2]|0;e:do{switch(t[o+16>>2]|0){case 3:{if((t[o+24>>2]|0)==2){if((a|0)<=0)break e;o=e+40|0;e=0;do{l=t[o>>2]|0;c=s[i+(e*6|0)+2>>1]<<l;u=s[i+(e*6|0)+4>>1]<<l;h=(s[i+(e*6|0)>>1]<<l)-(u+c>>2)+16384|0;n[r+(e*6|0)>>1]=(u+32768+h&65535)>>>l;n[r+(e*6|0)+2>>1]=(h&65535)>>>l;n[r+(e*6|0)+4>>1]=(c+32768+h&65535)>>>l;e=e+1|0}while((e|0)!=(a|0))}else{u=(a|0)<(l|0)?a:l;if((u|0)<=0)break e;c=l<<1;o=e+40|0;e=0;do{h=t[o>>2]|0;_=s[i+(e+l<<1)>>1]<<h;k=s[i+(e+c<<1)>>1]<<h;b=(s[i+(e<<1)>>1]<<h)-(k+_>>2)+16384|0;n[r+(e*6|0)>>1]=(k+32768+b&65535)>>>h;n[r+(e*6|0)+2>>1]=(b&65535)>>>h;n[r+(e*6|0)+4>>1]=(_+32768+b&65535)>>>h;e=e+1|0}while((e|0)!=(u|0))}break}case 4:{if((t[o+24>>2]|0)==1?(h=(a|0)<(l|0)?a:l,(h|0)>0):0){c=l<<1;o=e+40|0;e=l*3|0;u=0;do{k=t[o>>2]|0;_=s[i+(u+l<<1)>>1]<<k;m=s[i+(u+c<<1)>>1]<<k;b=(s[i+(u<<1)>>1]<<k)-(m+_>>2)+16384|0;w=n[i+(u+e<<1)>>1]|0;v=Sm((b&65535)>>>k&65535|0,0,16)|0;_=(_+32768+b&65535)>>>k|O;w=Sm(w&65535|0,0,48)|0;w=v|(m+32768+b&65535)>>>k&65535|w;_=_&65535|O;k=r+(u<<3)|0;b=k;n[b>>1]=w;n[b+2>>1]=w>>>16;k=k+4|0;n[k>>1]=_;n[k+2>>1]=_>>>16;u=u+1|0}while((u|0)!=(h|0))}break}default:{}}}while(0);o=t[d>>2]|0;if(!(f[o+32>>0]|0))return;u=t[o+16>>2]|0;if((a|0)<=0)return;o=r;e=0;while(1){v=o+4|0;m=n[o>>1]|0;n[o>>1]=n[v>>1]|0;n[v>>1]=m;e=e+1|0;if((e|0)==(a|0))break;else o=o+(u<<1)|0}return}function yr(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=36340;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}f=t[e+8>>2]|0;if(!f)return;i=e+12|0;r=t[i>>2]|0;if((r|0)!=(f|0))t[i>>2]=r+(~((r+-2-f|0)>>>1)<<1);Bp(f);return}function Mr(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=36340;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}f=t[e+8>>2]|0;if(!f){Bp(e);return}i=e+12|0;r=t[i>>2]|0;if((r|0)!=(f|0))t[i>>2]=r+(~((r+-2-f|0)>>>1)<<1);Bp(f);Bp(e);return}function Ar(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;a=e+48|0;if(!(t[a>>2]|0)){o=e+52|0;Rr(e,i,t[o>>2]|0,r,n);t[o>>2]=(t[o>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}u=e+4|0;s=r<<1;l=re(s,t[(t[u>>2]|0)+16>>2]|0)|0;o=e+20|0;Rr(e,i,t[o>>2]|0,r,n);i=t[u>>2]|0;if((t[i+28>>2]|0)==536870912)pr(t[o>>2]|0,re(s,t[i+16>>2]|0)|0);u=t[a>>2]|0;if((uM[t[(t[u>>2]|0)+48>>2]&63](u,t[o>>2]|0,l)|0)==(l|0))return;i=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,i|0,3,35648);u=w;w=0;if(u&1){u=je()|0;He(i|0);Qe(u|0)}else bi(i|0,824,96)}function Er(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0;n=t[e+48>>2]|0;if(!n){n=e+52|0;Sr(e,t[n>>2]|0,i,r,f);t[n>>2]=(t[n>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}else{Tr(e,n,i,r,f);return}}function Sr(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,_=0;h=e+4|0;o=t[h>>2]|0;do{if(!(f[o+32>>0]|0))d=i;else{u=e+8|0;Em(t[u>>2]|0,i|0,a*6|0)|0;o=t[h>>2]|0;c=t[o+16>>2]|0;if((a|0)<=0){d=t[u>>2]|0;break}i=t[u>>2]|0;o=i;u=0;while(1){d=o+4|0;b=n[o>>1]|0;n[o>>1]=n[d>>1]|0;n[d>>1]=b;u=u+1|0;if((u|0)==(a|0))break;else o=o+(c<<1)|0}d=i;o=t[h>>2]|0}}while(0);switch(t[o+16>>2]|0){case 3:if((t[o+24>>2]|0)==2){if((a|0)<=0)return;o=e+32|0;i=0;do{l=t[o>>2]|0;h=s[d+(i*6|0)>>1]<<l;e=s[d+(i*6|0)+2>>1]<<l;b=((s[d+(i*6|0)+4>>1]<<l)+32768-((e+h|0)>>>1)&65535)>>>l&65535;n[r+(i*6|0)>>1]=(h+32768-e&65535)>>>l;n[r+(i*6|0)+2>>1]=(e&65535)>>>l;n[r+(i*6|0)+4>>1]=b;i=i+1|0}while((i|0)!=(a|0));return}else{u=(l|0)<(a|0)?l:a;if((u|0)<=0)return;c=l<<1;o=t[e+32>>2]|0;i=0;do{a=s[d+(i*6|0)>>1]<<o;e=s[d+(i*6|0)+2>>1]<<o;b=((s[d+(i*6|0)+4>>1]<<o)+32768-((e+a|0)>>>1)&65535)>>>o&65535;n[r+(i<<1)>>1]=(a+32768-e&65535)>>>o;n[r+(i+l<<1)>>1]=(e&65535)>>>o;n[r+(i+c<<1)>>1]=b;i=i+1|0}while((i|0)!=(u|0));return}case 4:{if((t[o+24>>2]|0)!=1)return;u=(l|0)<(a|0)?l:a;if((u|0)<=0)return;c=l<<1;h=l*3|0;o=t[e+32>>2]|0;i=0;do{b=n[d+(i<<3)+6>>1]|0;_=s[d+(i<<3)>>1]<<o;a=s[d+(i<<3)+2>>1]<<o;e=((s[d+(i<<3)+4>>1]<<o)+32768-((a+_|0)>>>1)&65535)>>>o&65535;n[r+(i<<1)>>1]=(_+32768-a&65535)>>>o;n[r+(i+l<<1)>>1]=(a&65535)>>>o;n[r+(i+c<<1)>>1]=e;n[r+(i+h<<1)>>1]=b;i=i+1|0}while((i|0)!=(u|0));return}default:return}}function Tr(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0;b=c;c=c+176|0;_=b+152|0;v=b+16|0;m=b;u=e+4|0;s=t[u>>2]|0;d=n<<1;l=re(d,t[s+16>>2]|0)|0;do{if(l){o=e+20|0;while(1){s=uM[t[(t[i>>2]|0)+32>>2]&63](i,t[o>>2]|0,l)|0;if(!s)break;if((l|0)==(s|0)){h=26;break}else l=l-s|0}if((h|0)==26){s=t[u>>2]|0;break}h=v+56|0;u=v+4|0;t[v>>2]=36160;t[h>>2]=36180;w=0;ce(62,v+56|0,u|0);b=w;w=0;if(b&1){v=je()|0;nd(h);Qe(v|0)}t[v+128>>2]=0;t[v+132>>2]=-1;t[v>>2]=36200;t[v+56>>2]=36220;w=0;ue(180,u|0);b=w;w=0;do{if(b&1)s=je()|0;else{t[u>>2]=36236;i=v+36|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[v+52>>2]=16;t[_>>2]=0;t[_+4>>2]=0;t[_+8>>2]=0;w=0;ce(63,u|0,_|0);b=w;w=0;if(b&1){s=je()|0;xh(_);xh(i);cd(u);break}xh(_);w=0;s=_e(28,v|0,49029,57)|0;_=w;w=0;if(!(_&1)?(w=0,pe(36,s|0,0)|0,_=w,w=0,!(_&1)):0){o=Ue(16)|0;w=0;ce(64,m|0,u|0);_=w;w=0;if(!(_&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,o|0,3,35648,m|0);_=w;w=0;if(_&1)l=1;else{w=0;Ee(6,o|0,824,96);w=0;l=0}s=je()|0;xh(m);if(!l){m=s;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}}else s=je()|0;He(o|0);m=s;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}m=je()|0;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}}while(0);v=s;nd(h);Qe(v|0)}}while(0);l=e+20|0;if((t[s+28>>2]|0)!=536870912){v=t[l>>2]|0;Sr(e,v,r,n,a);c=b;return}pr(t[l>>2]|0,re(d,t[s+16>>2]|0)|0);v=t[l>>2]|0;Sr(e,v,r,n,a);c=b;return}function Rr(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;d=e+4|0;o=t[d>>2]|0;e:do{switch(t[o+16>>2]|0){case 3:{if((t[o+24>>2]|0)==2){if((a|0)<=0)break e;o=e+40|0;e=0;do{h=t[o>>2]|0;c=s[i+(e*6|0)+2>>1]<<h;u=(s[i+(e*6|0)>>1]<<h)+32768+c&65535;c=c&65535;l=((s[i+(e*6|0)+4>>1]<<h)+32768+((u+c|0)>>>1)&65535)>>>h&65535;n[r+(e*6|0)>>1]=u>>>h;n[r+(e*6|0)+2>>1]=c>>>h;n[r+(e*6|0)+4>>1]=l;e=e+1|0}while((e|0)!=(a|0))}else{u=(a|0)<(l|0)?a:l;if((u|0)<=0)break e;c=l<<1;o=e+40|0;e=0;do{b=t[o>>2]|0;_=s[i+(e+l<<1)>>1]<<b;k=(s[i+(e<<1)>>1]<<b)+32768+_&65535;_=_&65535;h=((s[i+(e+c<<1)>>1]<<b)+32768+((k+_|0)>>>1)&65535)>>>b&65535;n[r+(e*6|0)>>1]=k>>>b;n[r+(e*6|0)+2>>1]=_>>>b;n[r+(e*6|0)+4>>1]=h;e=e+1|0}while((e|0)!=(u|0))}break}case 4:{if((t[o+24>>2]|0)==1?(h=(a|0)<(l|0)?a:l,(h|0)>0):0){c=l<<1;o=e+40|0;e=l*3|0;u=0;do{b=t[o>>2]|0;k=s[i+(u+l<<1)>>1]<<b;m=(s[i+(u<<1)>>1]<<b)+32768+k&65535;k=k&65535;_=((s[i+(u+c<<1)>>1]<<b)+32768+((m+k|0)>>>1)&65535)>>>b;w=n[i+(u+e<<1)>>1]|0;k=Sm(k>>>b&65535|0,0,16)|0;_=O|_;w=Sm(w&65535|0,0,48)|0;w=m>>>b&65535|k|w;_=_&65535|O;k=r+(u<<3)|0;b=k;n[b>>1]=w;n[b+2>>1]=w>>>16;k=k+4|0;n[k>>1]=_;n[k+2>>1]=_>>>16;u=u+1|0}while((u|0)!=(h|0))}break}default:{}}}while(0);o=t[d>>2]|0;if(!(f[o+32>>0]|0))return;u=t[o+16>>2]|0;if((a|0)<=0)return;o=r;e=0;while(1){m=o+4|0;w=n[o>>1]|0;n[o>>1]=n[m>>1]|0;n[m>>1]=w;e=e+1|0;if((e|0)==(a|0))break;else o=o+(u<<1)|0}return}function Cr(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=36364;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}f=t[e+8>>2]|0;if(!f)return;i=e+12|0;r=t[i>>2]|0;if((r|0)!=(f|0))t[i>>2]=r+(~((r+-2-f|0)>>>1)<<1);Bp(f);return}function Pr(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=36364;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}f=t[e+8>>2]|0;if(!f){Bp(e);return}i=e+12|0;r=t[i>>2]|0;if((r|0)!=(f|0))t[i>>2]=r+(~((r+-2-f|0)>>>1)<<1);Bp(f);Bp(e);return}function Ir(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;a=e+48|0;if(!(t[a>>2]|0)){o=e+52|0;Br(e,i,t[o>>2]|0,r,n);t[o>>2]=(t[o>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}u=e+4|0;s=r<<1;l=re(s,t[(t[u>>2]|0)+16>>2]|0)|0;o=e+20|0;Br(e,i,t[o>>2]|0,r,n);i=t[u>>2]|0;if((t[i+28>>2]|0)==536870912)pr(t[o>>2]|0,re(s,t[i+16>>2]|0)|0);u=t[a>>2]|0;if((uM[t[(t[u>>2]|0)+48>>2]&63](u,t[o>>2]|0,l)|0)==(l|0))return;i=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,i|0,3,35648);u=w;w=0;if(u&1){u=je()|0;He(i|0);Qe(u|0)}else bi(i|0,824,96)}function Or(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0;n=t[e+48>>2]|0;if(!n){n=e+52|0;xr(e,t[n>>2]|0,i,r,f);t[n>>2]=(t[n>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}else{Lr(e,n,i,r,f);return}}function xr(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0;h=e+4|0;o=t[h>>2]|0;do{if(!(f[o+32>>0]|0))d=i;else{u=e+8|0;Em(t[u>>2]|0,i|0,a*6|0)|0;o=t[h>>2]|0;c=t[o+16>>2]|0;if((a|0)<=0){d=t[u>>2]|0;break}i=t[u>>2]|0;o=i;u=0;while(1){d=o+4|0;b=n[o>>1]|0;n[o>>1]=n[d>>1]|0;n[d>>1]=b;u=u+1|0;if((u|0)==(a|0))break;else o=o+(c<<1)|0}d=i;o=t[h>>2]|0}}while(0);switch(t[o+16>>2]|0){case 3:if((t[o+24>>2]|0)==2){if((a|0)<=0)return;o=e+32|0;i=0;do{l=t[o>>2]|0;e=s[d+(i*6|0)+2>>1]<<l;b=(32768-e+(s[d+(i*6|0)+4>>1]<<l)&65535)>>>l&65535;n[r+(i*6|0)>>1]=((s[d+(i*6|0)>>1]<<l)+32768-e&65535)>>>l;n[r+(i*6|0)+2>>1]=(e&65535)>>>l;n[r+(i*6|0)+4>>1]=b;i=i+1|0}while((i|0)!=(a|0));return}else{u=(l|0)<(a|0)?l:a;if((u|0)<=0)return;c=l<<1;o=t[e+32>>2]|0;i=0;do{e=s[d+(i*6|0)+2>>1]<<o;b=(32768-e+(s[d+(i*6|0)+4>>1]<<o)&65535)>>>o&65535;n[r+(i<<1)>>1]=((s[d+(i*6|0)>>1]<<o)+32768-e&65535)>>>o;n[r+(i+l<<1)>>1]=(e&65535)>>>o;n[r+(i+c<<1)>>1]=b;i=i+1|0}while((i|0)!=(u|0));return}case 4:{if((t[o+24>>2]|0)!=1)return;c=(l|0)<(a|0)?l:a;if((c|0)<=0)return;h=l<<1;u=l*3|0;o=t[e+32>>2]|0;i=0;do{b=n[d+(i<<3)+6>>1]|0;a=s[d+(i<<3)+2>>1]<<o;e=(32768-a+(s[d+(i<<3)+4>>1]<<o)&65535)>>>o&65535;n[r+(i<<1)>>1]=((s[d+(i<<3)>>1]<<o)+32768-a&65535)>>>o;n[r+(i+l<<1)>>1]=(a&65535)>>>o;n[r+(i+h<<1)>>1]=e;n[r+(i+u<<1)>>1]=b;i=i+1|0}while((i|0)!=(c|0));return}default:return}}function Lr(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0;b=c;c=c+176|0;_=b+152|0;v=b+16|0;m=b;u=e+4|0;s=t[u>>2]|0;d=n<<1;l=re(d,t[s+16>>2]|0)|0;do{if(l){o=e+20|0;while(1){s=uM[t[(t[i>>2]|0)+32>>2]&63](i,t[o>>2]|0,l)|0;if(!s)break;if((l|0)==(s|0)){h=26;break}else l=l-s|0}if((h|0)==26){s=t[u>>2]|0;break}h=v+56|0;u=v+4|0;t[v>>2]=36160;t[h>>2]=36180;w=0;ce(62,v+56|0,u|0);b=w;w=0;if(b&1){v=je()|0;nd(h);Qe(v|0)}t[v+128>>2]=0;t[v+132>>2]=-1;t[v>>2]=36200;t[v+56>>2]=36220;w=0;ue(180,u|0);b=w;w=0;do{if(b&1)s=je()|0;else{t[u>>2]=36236;i=v+36|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[v+52>>2]=16;t[_>>2]=0;t[_+4>>2]=0;t[_+8>>2]=0;w=0;ce(63,u|0,_|0);b=w;w=0;if(b&1){s=je()|0;xh(_);xh(i);cd(u);break}xh(_);w=0;s=_e(28,v|0,49029,57)|0;_=w;w=0;if(!(_&1)?(w=0,pe(36,s|0,0)|0,_=w,w=0,!(_&1)):0){o=Ue(16)|0;w=0;ce(64,m|0,u|0);_=w;w=0;if(!(_&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,o|0,3,35648,m|0);_=w;w=0;if(_&1)l=1;else{w=0;Ee(6,o|0,824,96);w=0;l=0}s=je()|0;xh(m);if(!l){m=s;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}}else s=je()|0;He(o|0);m=s;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}m=je()|0;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}}while(0);v=s;nd(h);Qe(v|0)}}while(0);l=e+20|0;if((t[s+28>>2]|0)!=536870912){v=t[l>>2]|0;xr(e,v,r,n,a);c=b;return}pr(t[l>>2]|0,re(d,t[s+16>>2]|0)|0);v=t[l>>2]|0;xr(e,v,r,n,a);c=b;return}function Br(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;d=e+4|0;o=t[d>>2]|0;e:do{switch(t[o+16>>2]|0){case 3:{if((t[o+24>>2]|0)==2){if((a|0)<=0)break e;o=e+40|0;e=0;do{h=t[o>>2]|0;c=s[i+(e*6|0)+2>>1]<<h;l=(c+32768+(s[i+(e*6|0)+4>>1]<<h)&65535)>>>h&65535;n[r+(e*6|0)>>1]=((s[i+(e*6|0)>>1]<<h)+32768+c&65535)>>>h;n[r+(e*6|0)+2>>1]=(c&65535)>>>h;n[r+(e*6|0)+4>>1]=l;e=e+1|0}while((e|0)!=(a|0))}else{u=(a|0)<(l|0)?a:l;if((u|0)<=0)break e;c=l<<1;o=e+40|0;e=0;do{b=t[o>>2]|0;_=s[i+(e+l<<1)>>1]<<b;h=(_+32768+(s[i+(e+c<<1)>>1]<<b)&65535)>>>b&65535;n[r+(e*6|0)>>1]=((s[i+(e<<1)>>1]<<b)+32768+_&65535)>>>b;n[r+(e*6|0)+2>>1]=(_&65535)>>>b;n[r+(e*6|0)+4>>1]=h;e=e+1|0}while((e|0)!=(u|0))}break}case 4:{if((t[o+24>>2]|0)==1?(h=(a|0)<(l|0)?a:l,(h|0)>0):0){c=l<<1;o=e+40|0;e=l*3|0;u=0;do{k=t[o>>2]|0;m=s[i+(u+l<<1)>>1]<<k;_=((s[i+(u<<1)>>1]<<k)+32768+m&65535)>>>k;b=(m+32768+(s[i+(u+c<<1)>>1]<<k)&65535)>>>k;w=n[i+(u+e<<1)>>1]|0;k=Sm((m&65535)>>>k&65535|0,0,16)|0;b=b|O;w=Sm(w&65535|0,0,48)|0;w=k|_&65535|w;b=b&65535|O;_=r+(u<<3)|0;k=_;n[k>>1]=w;n[k+2>>1]=w>>>16;_=_+4|0;n[_>>1]=b;n[_+2>>1]=b>>>16;u=u+1|0}while((u|0)!=(h|0))}break}default:{}}}while(0);o=t[d>>2]|0;if(!(f[o+32>>0]|0))return;u=t[o+16>>2]|0;if((a|0)<=0)return;o=r;e=0;while(1){m=o+4|0;w=n[o>>1]|0;n[o>>1]=n[m>>1]|0;n[m>>1]=w;e=e+1|0;if((e|0)==(a|0))break;else o=o+(u<<1)|0}return}function zr(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0;b=c;c=c+16|0;h=b;d=t[e>>2]|0;if(!d){e=0;c=b;return e|0}_=i;o=n-_|0;u=a+12|0;l=t[u>>2]|0;o=(l|0)>(o|0)?l-o|0:0;l=r;a=l-_|0;if((a|0)>0?(uM[t[(t[d>>2]|0)+48>>2]&63](d,i,a)|0)!=(a|0):0){t[e>>2]=0;_=0;c=b;return _|0}do{if((o|0)>0){Oh(h,o,s);w=0;a=_e(t[(t[d>>2]|0)+48>>2]|0,d|0,((f[h>>0]&1)==0?h+1|0:t[h+8>>2]|0)|0,o|0)|0;_=w;w=0;if(_&1){_=je()|0;xh(h);Qe(_|0)}if((a|0)==(o|0)){xh(h);break}t[e>>2]=0;xh(h);_=0;c=b;return _|0}}while(0);n=n-l|0;if((n|0)>0?(uM[t[(t[d>>2]|0)+48>>2]&63](d,r,n)|0)!=(n|0):0){t[e>>2]=0;_=0;c=b;return _|0}t[u>>2]=0;_=d;c=b;return _|0}function Dr(e){e=e|0;t[e>>2]=36236;xh(e+32|0);cd(e);return}function Nr(e){e=e|0;t[e>>2]=36236;xh(e+32|0);cd(e);Bp(e);return}function Fr(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0;l=i+44|0;o=t[l>>2]|0;c=i+24|0;h=t[c>>2]|0;if(o>>>0<h>>>0){t[l>>2]=h;o=h}u=o;l=s&24;if(!l){i=e;t[i>>2]=0;t[i+4>>2]=0;i=e+8|0;t[i>>2]=-1;t[i+4>>2]=-1;return}if((a|0)==1&(l|0)==24){i=e;t[i>>2]=0;t[i+4>>2]=0;i=e+8|0;t[i>>2]=-1;t[i+4>>2]=-1;return}e:do{switch(a|0){case 0:{l=0;a=0;break}case 1:if(!(s&8)){a=h-(t[i+20>>2]|0)|0;l=a;a=((a|0)<0)<<31>>31;break e}else{a=(t[i+12>>2]|0)-(t[i+8>>2]|0)|0;l=a;a=((a|0)<0)<<31>>31;break e}case 2:{l=i+32|0;if(!(f[l>>0]&1))l=l+1|0;else l=t[i+40>>2]|0;a=o-l|0;l=a;a=((a|0)<0)<<31>>31;break}default:{i=e;t[i>>2]=0;t[i+4>>2]=0;i=e+8|0;t[i>>2]=-1;t[i+4>>2]=-1;return}}}while(0);a=Mm(l|0,a|0,r|0,n|0)|0;r=O;if((r|0)>=0){l=i+32|0;if(!(f[l>>0]&1))l=l+1|0;else l=t[i+40>>2]|0;n=o-l|0;o=((n|0)<0)<<31>>31;if(!((o|0)<(r|0)|(o|0)==(r|0)&n>>>0<a>>>0)){l=s&8;if(!((a|0)==0&(r|0)==0)){if((l|0)!=0?(t[i+12>>2]|0)==0:0){i=e;t[i>>2]=0;t[i+4>>2]=0;i=e+8|0;t[i>>2]=-1;t[i+4>>2]=-1;return}if((s&16|0)!=0&(h|0)==0){i=e;t[i>>2]=0;t[i+4>>2]=0;i=e+8|0;t[i>>2]=-1;t[i+4>>2]=-1;return}}if(l){t[i+12>>2]=(t[i+8>>2]|0)+a;t[i+16>>2]=u}if(s&16)t[c>>2]=(t[i+20>>2]|0)+a;i=e;t[i>>2]=0;t[i+4>>2]=0;i=e+8|0;t[i>>2]=a;t[i+4>>2]=r;return}}i=e;t[i>>2]=0;t[i+4>>2]=0;i=e+8|0;t[i>>2]=-1;t[i+4>>2]=-1;return}function Hr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;r=r+8|0;hM[t[(t[i>>2]|0)+16>>2]&15](e,i,t[r>>2]|0,t[r+4>>2]|0,0,f);return}function Ur(e){e=e|0;var i=0,r=0,f=0,n=0;i=e+44|0;r=t[i>>2]|0;f=t[e+24>>2]|0;if(r>>>0<f>>>0){t[i>>2]=f;r=f}if(!(t[e+48>>2]&8)){e=-1;return e|0}n=e+16|0;i=t[n>>2]|0;f=e+12|0;if(i>>>0<r>>>0){f=t[f>>2]|0;t[n>>2]=r;i=r}else f=t[f>>2]|0;if(f>>>0>=i>>>0){e=-1;return e|0}e=a[f>>0]|0;return e|0}function jr(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0;n=e+44|0;r=t[n>>2]|0;a=t[e+24>>2]|0;if(r>>>0<a>>>0){t[n>>2]=a;r=a}o=e+8|0;n=t[o>>2]|0;u=e+12|0;s=t[u>>2]|0;l=n;if(n>>>0>=s>>>0){e=-1;return e|0}if((i|0)==-1){t[o>>2]=n;t[u>>2]=s+-1;t[e+16>>2]=r;e=0;return e|0}if(!(t[e+48>>2]&16)){a=i&255;n=s+-1|0;if(a<<24>>24!=(f[n>>0]|0)){e=-1;return e|0}}else{a=i&255;n=s+-1|0}t[o>>2]=l;t[u>>2]=n;t[e+16>>2]=r;f[n>>0]=a;e=i;return e|0}function Yr(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0;v=c;c=c+16|0;d=v;if((i|0)==-1){e=0;c=v;return e|0}b=e+12|0;_=e+8|0;k=(t[b>>2]|0)-(t[_>>2]|0)|0;m=e+24|0;r=t[m>>2]|0;h=e+28|0;n=t[h>>2]|0;do{if((r|0)==(n|0)){o=e+48|0;if(!(t[o>>2]&16)){e=-1;c=v;return e|0}u=e+20|0;l=t[u>>2]|0;a=r-l|0;s=e+44|0;l=(t[s>>2]|0)-l|0;n=e+32|0;w=0;ce(67,n|0,0);r=w;w=0;if(!(r&1)){if(!(f[n>>0]&1))r=10;else r=(t[n>>2]&-2)+-1|0;w=0;Ee(8,n|0,r|0,0);r=w;w=0;if(!(r&1)){r=f[n>>0]|0;if(!(r&1)){n=n+1|0;r=(r&255)>>>1}else{n=t[e+40>>2]|0;r=t[e+36>>2]|0}p=n+r|0;t[u>>2]=n;t[h>>2]=p;u=n+a|0;t[m>>2]=u;r=n+l|0;t[s>>2]=r;n=p;break}}p=je(0)|0;We(p|0)|0;Je();p=-1;c=v;return p|0}else{p=e+44|0;o=e+48|0;s=p;u=r;r=t[p>>2]|0}}while(0);l=u+1|0;t[d>>2]=l;a=t[(l>>>0<r>>>0?s:d)>>2]|0;t[s>>2]=a;if(t[o>>2]&8){r=e+32|0;if(!(f[r>>0]&1))r=r+1|0;else r=t[e+40>>2]|0;t[_>>2]=r;t[b>>2]=r+k;t[e+16>>2]=a}if((u|0)==(n|0)){p=_M[t[(t[e>>2]|0)+52>>2]&63](e,i&255)|0;c=v;return p|0}else{t[m>>2]=l;f[u>>0]=i;p=i&255;c=v;return p|0}return 0}function qr(e){e=e|0;var i=0,r=0;t[e>>2]=36200;i=e+56|0;t[i>>2]=36220;r=e+4|0;t[r>>2]=36236;xh(e+36|0);cd(r);nd(i);return}function $r(e){e=e|0;var i=0,r=0;t[e>>2]=36200;i=e+56|0;t[i>>2]=36220;r=e+4|0;t[r>>2]=36236;xh(e+36|0);cd(r);nd(i);Bp(e);return}function Vr(e){e=e|0;var i=0,r=0,f=0,n=0;n=t[(t[e>>2]|0)+-12>>2]|0;i=e+n|0;t[i>>2]=36200;r=e+(n+56)|0;t[r>>2]=36220;f=e+(n+4)|0;t[f>>2]=36236;xh(e+(n+36)|0);cd(f);nd(r);Bp(i);return}function Xr(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=36388;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}f=t[e+8>>2]|0;if(!f)return;i=e+12|0;r=t[i>>2]|0;if((r|0)!=(f|0))t[i>>2]=r+(~((r+-2-f|0)>>>1)<<1);Bp(f);return}function Gr(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=36388;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}f=t[e+8>>2]|0;if(!f){Bp(e);return}i=e+12|0;r=t[i>>2]|0;if((r|0)!=(f|0))t[i>>2]=r+(~((r+-2-f|0)>>>1)<<1);Bp(f);Bp(e);return}function Kr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;a=e+36|0;if(!(t[a>>2]|0)){o=e+40|0;Qr(e,i,t[o>>2]|0,r,n);t[o>>2]=(t[o>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}u=e+4|0;s=r<<1;l=re(s,t[(t[u>>2]|0)+16>>2]|0)|0;o=e+20|0;Qr(e,i,t[o>>2]|0,r,n);i=t[u>>2]|0;if((t[i+28>>2]|0)==536870912)pr(t[o>>2]|0,re(s,t[i+16>>2]|0)|0);u=t[a>>2]|0;if((uM[t[(t[u>>2]|0)+48>>2]&63](u,t[o>>2]|0,l)|0)==(l|0))return;i=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,i|0,3,35648);u=w;w=0;if(u&1){u=je()|0;He(i|0);Qe(u|0)}else bi(i|0,824,96)}function Wr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0;n=t[e+36>>2]|0;if(!n){n=e+40|0;Zr(e,t[n>>2]|0,i,r,f);t[n>>2]=(t[n>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}else{Jr(e,n,i,r,f);return}}function Zr(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0;c=e+4|0;o=t[c>>2]|0;do{if(!(f[o+32>>0]|0))h=i;else{e=e+8|0;Em(t[e>>2]|0,i|0,a*6|0)|0;o=t[c>>2]|0;u=t[o+16>>2]|0;if((a|0)<=0){h=t[e>>2]|0;break}e=t[e>>2]|0;o=e;i=0;while(1){h=o+4|0;d=n[o>>1]|0;n[o>>1]=n[h>>1]|0;n[h>>1]=d;i=i+1|0;if((i|0)==(a|0))break;else o=o+(u<<1)|0}h=e;o=t[c>>2]|0}}while(0);switch(t[o+16>>2]|0){case 3:{if((t[o+24>>2]|0)==2){if((a|0)>0)o=0;else return;do{c=s[h+(o*6|0)+2>>1]|0;l=32768-c+(s[h+(o*6|0)+4>>1]|0)|0;d=(s[h+(o*6|0)>>1]|0)-c+32768|0;n[r+(o*6|0)>>1]=c+49152+(((l&65535)+(d&65535)|0)>>>2);n[r+(o*6|0)+2>>1]=l;n[r+(o*6|0)+4>>1]=d;o=o+1|0}while((o|0)!=(a|0));return}o=(l|0)<(a|0)?l:a;if((o|0)<=0)return;e=l<<1;i=0;do{c=s[h+(i*6|0)+2>>1]|0;a=32768-c+(s[h+(i*6|0)+4>>1]|0)|0;d=(s[h+(i*6|0)>>1]|0)-c+32768|0;n[r+(i<<1)>>1]=c+49152+(((a&65535)+(d&65535)|0)>>>2);n[r+(i+l<<1)>>1]=a;n[r+(i+e<<1)>>1]=d;i=i+1|0}while((i|0)!=(o|0));return}case 4:{if((t[o+24>>2]|0)!=1)return;o=(l|0)<(a|0)?l:a;if((o|0)<=0)return;e=l<<1;i=l*3|0;u=0;do{d=n[h+(u<<3)+6>>1]|0;b=s[h+(u<<3)+2>>1]|0;c=32768-b+(s[h+(u<<3)+4>>1]|0)|0;a=(s[h+(u<<3)>>1]|0)-b+32768|0;n[r+(u<<1)>>1]=b+49152+(((c&65535)+(a&65535)|0)>>>2);n[r+(u+l<<1)>>1]=c;n[r+(u+e<<1)>>1]=a;n[r+(u+i<<1)>>1]=d;u=u+1|0}while((u|0)!=(o|0));return}default:return}}function Jr(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0;b=c;c=c+176|0;_=b+152|0;v=b+16|0;m=b;u=e+4|0;s=t[u>>2]|0;d=n<<1;l=re(d,t[s+16>>2]|0)|0;do{if(l){o=e+20|0;while(1){s=uM[t[(t[i>>2]|0)+32>>2]&63](i,t[o>>2]|0,l)|0;if(!s)break;if((l|0)==(s|0)){h=26;break}else l=l-s|0}if((h|0)==26){s=t[u>>2]|0;break}h=v+56|0;u=v+4|0;t[v>>2]=36160;t[h>>2]=36180;w=0;ce(62,v+56|0,u|0);b=w;w=0;if(b&1){v=je()|0;nd(h);Qe(v|0)}t[v+128>>2]=0;t[v+132>>2]=-1;t[v>>2]=36200;t[v+56>>2]=36220;w=0;ue(180,u|0);b=w;w=0;do{if(b&1)s=je()|0;else{t[u>>2]=36236;i=v+36|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[v+52>>2]=16;t[_>>2]=0;t[_+4>>2]=0;t[_+8>>2]=0;w=0;ce(63,u|0,_|0);b=w;w=0;if(b&1){s=je()|0;xh(_);xh(i);cd(u);break}xh(_);w=0;s=_e(28,v|0,49029,57)|0;_=w;w=0;if(!(_&1)?(w=0,pe(36,s|0,0)|0,_=w,w=0,!(_&1)):0){o=Ue(16)|0;w=0;ce(64,m|0,u|0);_=w;w=0;if(!(_&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,o|0,3,35648,m|0);_=w;w=0;if(_&1)l=1;else{w=0;Ee(6,o|0,824,96);w=0;l=0}s=je()|0;xh(m);if(!l){m=s;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}}else s=je()|0;He(o|0);m=s;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}m=je()|0;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}}while(0);v=s;nd(h);Qe(v|0)}}while(0);l=e+20|0;if((t[s+28>>2]|0)!=536870912){v=t[l>>2]|0;Zr(e,v,r,n,a);c=b;return}pr(t[l>>2]|0,re(d,t[s+16>>2]|0)|0);v=t[l>>2]|0;Zr(e,v,r,n,a);c=b;return}function Qr(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0;h=e+4|0;e=t[h>>2]|0;e:do{switch(t[e+16>>2]|0){case 3:{if((t[e+24>>2]|0)==2){if((a|0)>0)e=0;else break e;while(1){c=s[i+(e*6|0)+2>>1]|0;u=s[i+(e*6|0)+4>>1]|0;l=(s[i+(e*6|0)>>1]|0)-((u+c|0)>>>2)+16384|0;n[r+(e*6|0)>>1]=u+32768+l;n[r+(e*6|0)+2>>1]=l;n[r+(e*6|0)+4>>1]=c+32768+l;e=e+1|0;if((e|0)==(a|0))break e}}e=(a|0)<(l|0)?a:l;if((e|0)>0){o=l<<1;u=0;do{d=s[i+(u+l<<1)>>1]|0;b=s[i+(u+o<<1)>>1]|0;c=(s[i+(u<<1)>>1]|0)-((b+d|0)>>>2)+16384|0;n[r+(u*6|0)>>1]=b+32768+c;n[r+(u*6|0)+2>>1]=c;n[r+(u*6|0)+4>>1]=d+32768+c;u=u+1|0}while((u|0)!=(e|0))}break}case 4:{if((t[e+24>>2]|0)==1?(c=(a|0)<(l|0)?a:l,(c|0)>0):0){e=l<<1;o=l*3|0;u=0;do{d=s[i+(u+l<<1)>>1]|0;_=s[i+(u+e<<1)>>1]|0;b=(s[i+(u<<1)>>1]|0)-((_+d|0)>>>2)+16384|0;k=n[i+(u+o<<1)>>1]|0;w=Sm(b&65535|0,0,16)|0;d=d+32768+b|O;k=Sm(k&65535|0,0,48)|0;k=w|_+32768+b&65535|k;d=d&65535|O;b=r+(u<<3)|0;_=b;n[_>>1]=k;n[_+2>>1]=k>>>16;b=b+4|0;n[b>>1]=d;n[b+2>>1]=d>>>16;u=u+1|0}while((u|0)!=(c|0))}break}default:{}}}while(0);e=t[h>>2]|0;if(!(f[e+32>>0]|0))return;u=t[e+16>>2]|0;if((a|0)<=0)return;e=r;o=0;while(1){w=e+4|0;k=n[e>>1]|0;n[e>>1]=n[w>>1]|0;n[w>>1]=k;o=o+1|0;if((o|0)==(a|0))break;else e=e+(u<<1)|0}return}function ef(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=36412;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}f=t[e+8>>2]|0;if(!f)return;i=e+12|0;r=t[i>>2]|0;if((r|0)!=(f|0))t[i>>2]=r+(~((r+-2-f|0)>>>1)<<1);Bp(f);return}function rf(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=36412;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}f=t[e+8>>2]|0;if(!f){Bp(e);return}i=e+12|0;r=t[i>>2]|0;if((r|0)!=(f|0))t[i>>2]=r+(~((r+-2-f|0)>>>1)<<1);Bp(f);Bp(e);return}function ff(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;a=e+36|0;if(!(t[a>>2]|0)){o=e+40|0;sf(e,i,t[o>>2]|0,r,n);t[o>>2]=(t[o>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}u=e+4|0;s=r<<1;l=re(s,t[(t[u>>2]|0)+16>>2]|0)|0;o=e+20|0;sf(e,i,t[o>>2]|0,r,n);i=t[u>>2]|0;if((t[i+28>>2]|0)==536870912)pr(t[o>>2]|0,re(s,t[i+16>>2]|0)|0);u=t[a>>2]|0;if((uM[t[(t[u>>2]|0)+48>>2]&63](u,t[o>>2]|0,l)|0)==(l|0))return;i=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,i|0,3,35648);u=w;w=0;if(u&1){u=je()|0;He(i|0);Qe(u|0)}else bi(i|0,824,96)}function nf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0;n=t[e+36>>2]|0;if(!n){n=e+40|0;tf(e,t[n>>2]|0,i,r,f);t[n>>2]=(t[n>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}else{af(e,n,i,r,f);return}}function tf(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,_=0;c=e+4|0;o=t[c>>2]|0;do{if(!(f[o+32>>0]|0))h=i;else{e=e+8|0;Em(t[e>>2]|0,i|0,a*6|0)|0;o=t[c>>2]|0;u=t[o+16>>2]|0;if((a|0)<=0){h=t[e>>2]|0;break}e=t[e>>2]|0;o=e;i=0;while(1){h=o+4|0;d=n[o>>1]|0;n[o>>1]=n[h>>1]|0;n[h>>1]=d;i=i+1|0;if((i|0)==(a|0))break;else o=o+(u<<1)|0}h=e;o=t[c>>2]|0}}while(0);switch(t[o+16>>2]|0){case 3:{if((t[o+24>>2]|0)==2){if((a|0)>0)o=0;else return;do{u=s[h+(o*6|0)>>1]|0;l=n[h+(o*6|0)+2>>1]|0;c=l&65535;d=(s[h+(o*6|0)+4>>1]|0)+32768-((c+u|0)>>>1)&65535;n[r+(o*6|0)>>1]=u+32768-c;n[r+(o*6|0)+2>>1]=l;n[r+(o*6|0)+4>>1]=d;o=o+1|0}while((o|0)!=(a|0));return}o=(l|0)<(a|0)?l:a;if((o|0)<=0)return;e=l<<1;i=0;do{a=n[h+(i*6|0)+2>>1]|0;u=s[h+(i*6|0)>>1]|0;c=a&65535;d=(s[h+(i*6|0)+4>>1]|0)+32768-((c+u|0)>>>1)&65535;n[r+(i<<1)>>1]=u+32768-c;n[r+(i+l<<1)>>1]=a;n[r+(i+e<<1)>>1]=d;i=i+1|0}while((i|0)!=(o|0));return}case 4:{if((t[o+24>>2]|0)!=1)return;o=(l|0)<(a|0)?l:a;if((o|0)<=0)return;e=l<<1;i=l*3|0;u=0;do{c=n[h+(u<<3)+2>>1]|0;d=n[h+(u<<3)+6>>1]|0;_=s[h+(u<<3)>>1]|0;b=c&65535;a=(s[h+(u<<3)+4>>1]|0)+32768-((b+_|0)>>>1)&65535;n[r+(u<<1)>>1]=_+32768-b;n[r+(u+l<<1)>>1]=c;n[r+(u+e<<1)>>1]=a;n[r+(u+i<<1)>>1]=d;u=u+1|0}while((u|0)!=(o|0));return}default:return}}function af(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0;b=c;c=c+176|0;_=b+152|0;v=b+16|0;m=b;u=e+4|0;s=t[u>>2]|0;d=n<<1;l=re(d,t[s+16>>2]|0)|0;do{if(l){o=e+20|0;while(1){s=uM[t[(t[i>>2]|0)+32>>2]&63](i,t[o>>2]|0,l)|0;if(!s)break;if((l|0)==(s|0)){h=26;break}else l=l-s|0}if((h|0)==26){s=t[u>>2]|0;break}h=v+56|0;u=v+4|0;t[v>>2]=36160;t[h>>2]=36180;w=0;ce(62,v+56|0,u|0);b=w;w=0;if(b&1){v=je()|0;nd(h);Qe(v|0)}t[v+128>>2]=0;t[v+132>>2]=-1;t[v>>2]=36200;t[v+56>>2]=36220;w=0;ue(180,u|0);b=w;w=0;do{if(b&1)s=je()|0;else{t[u>>2]=36236;i=v+36|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[v+52>>2]=16;t[_>>2]=0;t[_+4>>2]=0;t[_+8>>2]=0;w=0;ce(63,u|0,_|0);b=w;w=0;if(b&1){s=je()|0;xh(_);xh(i);cd(u);break}xh(_);w=0;s=_e(28,v|0,49029,57)|0;_=w;w=0;if(!(_&1)?(w=0,pe(36,s|0,0)|0,_=w,w=0,!(_&1)):0){o=Ue(16)|0;w=0;ce(64,m|0,u|0);_=w;w=0;if(!(_&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,o|0,3,35648,m|0);_=w;w=0;if(_&1)l=1;else{w=0;Ee(6,o|0,824,96);w=0;l=0}s=je()|0;xh(m);if(!l){m=s;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}}else s=je()|0;He(o|0);m=s;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}m=je()|0;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}}while(0);v=s;nd(h);Qe(v|0)}}while(0);l=e+20|0;if((t[s+28>>2]|0)!=536870912){v=t[l>>2]|0;tf(e,v,r,n,a);c=b;return}pr(t[l>>2]|0,re(d,t[s+16>>2]|0)|0);v=t[l>>2]|0;tf(e,v,r,n,a);c=b;return}function sf(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0;h=e+4|0;e=t[h>>2]|0;e:do{switch(t[e+16>>2]|0){case 3:{if((t[e+24>>2]|0)==2){if((a|0)>0)e=0;else break e;while(1){c=n[i+(e*6|0)+2>>1]|0;l=c&65535;u=(s[i+(e*6|0)>>1]|0)+32768+l|0;l=(s[i+(e*6|0)+4>>1]|0)+32768+(((u&65535)+l|0)>>>1)&65535;n[r+(e*6|0)>>1]=u;n[r+(e*6|0)+2>>1]=c;n[r+(e*6|0)+4>>1]=l;e=e+1|0;if((e|0)==(a|0))break e}}e=(a|0)<(l|0)?a:l;if((e|0)>0){o=l<<1;u=0;do{d=n[i+(u+l<<1)>>1]|0;c=d&65535;b=(s[i+(u<<1)>>1]|0)+32768+c|0;c=(s[i+(u+o<<1)>>1]|0)+32768+(((b&65535)+c|0)>>>1)&65535;n[r+(u*6|0)>>1]=b;n[r+(u*6|0)+2>>1]=d;n[r+(u*6|0)+4>>1]=c;u=u+1|0}while((u|0)!=(e|0))}break}case 4:{if((t[e+24>>2]|0)==1?(c=(a|0)<(l|0)?a:l,(c|0)>0):0){e=l<<1;o=l*3|0;u=0;do{b=n[i+(u+l<<1)>>1]|0;d=b&65535;_=(s[i+(u<<1)>>1]|0)+32768+d&65535;d=(s[i+(u+e<<1)>>1]|0)+32768+((_+d|0)>>>1)|0;k=n[i+(u+o<<1)>>1]|0;b=Sm(b&65535|0,0,16)|0;d=O|d;k=Sm(k&65535|0,0,48)|0;k=_|b|k;d=d&65535|O;b=r+(u<<3)|0;_=b;n[_>>1]=k;n[_+2>>1]=k>>>16;b=b+4|0;n[b>>1]=d;n[b+2>>1]=d>>>16;u=u+1|0}while((u|0)!=(c|0))}break}default:{}}}while(0);e=t[h>>2]|0;if(!(f[e+32>>0]|0))return;u=t[e+16>>2]|0;if((a|0)<=0)return;e=r;o=0;while(1){k=e+4|0;_=n[e>>1]|0;n[e>>1]=n[k>>1]|0;n[k>>1]=_;o=o+1|0;if((o|0)==(a|0))break;else e=e+(u<<1)|0}return}function lf(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=36436;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}f=t[e+8>>2]|0;if(!f)return;i=e+12|0;r=t[i>>2]|0;if((r|0)!=(f|0))t[i>>2]=r+(~((r+-2-f|0)>>>1)<<1);Bp(f);return}function of(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=36436;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}f=t[e+8>>2]|0;if(!f){Bp(e);return}i=e+12|0;r=t[i>>2]|0;if((r|0)!=(f|0))t[i>>2]=r+(~((r+-2-f|0)>>>1)<<1);Bp(f);Bp(e);return}function uf(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;a=e+36|0;if(!(t[a>>2]|0)){o=e+40|0;bf(e,i,t[o>>2]|0,r,n);t[o>>2]=(t[o>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}u=e+4|0;s=r<<1;l=re(s,t[(t[u>>2]|0)+16>>2]|0)|0;o=e+20|0;bf(e,i,t[o>>2]|0,r,n);i=t[u>>2]|0;if((t[i+28>>2]|0)==536870912)pr(t[o>>2]|0,re(s,t[i+16>>2]|0)|0);u=t[a>>2]|0;if((uM[t[(t[u>>2]|0)+48>>2]&63](u,t[o>>2]|0,l)|0)==(l|0))return;i=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,i|0,3,35648);u=w;w=0;if(u&1){u=je()|0;He(i|0);Qe(u|0)}else bi(i|0,824,96)}function cf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0;n=t[e+36>>2]|0;if(!n){n=e+40|0;hf(e,t[n>>2]|0,i,r,f);t[n>>2]=(t[n>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}else{df(e,n,i,r,f);return}}function hf(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0;c=e+4|0;o=t[c>>2]|0;do{if(!(f[o+32>>0]|0))h=i;else{e=e+8|0;Em(t[e>>2]|0,i|0,a*6|0)|0;o=t[c>>2]|0;u=t[o+16>>2]|0;if((a|0)<=0){h=t[e>>2]|0;break}e=t[e>>2]|0;o=e;i=0;while(1){h=o+4|0;d=n[o>>1]|0;n[o>>1]=n[h>>1]|0;n[h>>1]=d;i=i+1|0;if((i|0)==(a|0))break;else o=o+(u<<1)|0}h=e;o=t[c>>2]|0}}while(0);switch(t[o+16>>2]|0){case 3:{if((t[o+24>>2]|0)==2){if((a|0)>0)o=0;else return;do{l=n[h+(o*6|0)+2>>1]|0;c=l&65535;d=32768-c+(s[h+(o*6|0)+4>>1]|0)&65535;n[r+(o*6|0)>>1]=(s[h+(o*6|0)>>1]|0)+32768-c;n[r+(o*6|0)+2>>1]=l;n[r+(o*6|0)+4>>1]=d;o=o+1|0}while((o|0)!=(a|0));return}o=(l|0)<(a|0)?l:a;if((o|0)<=0)return;e=l<<1;i=0;do{a=n[h+(i*6|0)+2>>1]|0;c=a&65535;d=32768-c+(s[h+(i*6|0)+4>>1]|0)&65535;n[r+(i<<1)>>1]=(s[h+(i*6|0)>>1]|0)+32768-c;n[r+(i+l<<1)>>1]=a;n[r+(i+e<<1)>>1]=d;i=i+1|0}while((i|0)!=(o|0));return}case 4:{if((t[o+24>>2]|0)!=1)return;o=(l|0)<(a|0)?l:a;if((o|0)<=0)return;e=l<<1;i=l*3|0;u=0;do{c=n[h+(u<<3)+2>>1]|0;d=n[h+(u<<3)+6>>1]|0;b=c&65535;a=32768-b+(s[h+(u<<3)+4>>1]|0)&65535;n[r+(u<<1)>>1]=(s[h+(u<<3)>>1]|0)+32768-b;n[r+(u+l<<1)>>1]=c;n[r+(u+e<<1)>>1]=a;n[r+(u+i<<1)>>1]=d;u=u+1|0}while((u|0)!=(o|0));return}default:return}}function df(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0;b=c;c=c+176|0;_=b+152|0;v=b+16|0;m=b;u=e+4|0;s=t[u>>2]|0;d=n<<1;l=re(d,t[s+16>>2]|0)|0;do{if(l){o=e+20|0;while(1){s=uM[t[(t[i>>2]|0)+32>>2]&63](i,t[o>>2]|0,l)|0;if(!s)break;if((l|0)==(s|0)){h=26;break}else l=l-s|0}if((h|0)==26){s=t[u>>2]|0;break}h=v+56|0;u=v+4|0;t[v>>2]=36160;t[h>>2]=36180;w=0;ce(62,v+56|0,u|0);b=w;w=0;if(b&1){v=je()|0;nd(h);Qe(v|0)}t[v+128>>2]=0;t[v+132>>2]=-1;t[v>>2]=36200;t[v+56>>2]=36220;w=0;ue(180,u|0);b=w;w=0;do{if(b&1)s=je()|0;else{t[u>>2]=36236;i=v+36|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[v+52>>2]=16;t[_>>2]=0;t[_+4>>2]=0;t[_+8>>2]=0;w=0;ce(63,u|0,_|0);b=w;w=0;if(b&1){s=je()|0;xh(_);xh(i);cd(u);break}xh(_);w=0;s=_e(28,v|0,49029,57)|0;_=w;w=0;if(!(_&1)?(w=0,pe(36,s|0,0)|0,_=w,w=0,!(_&1)):0){o=Ue(16)|0;w=0;ce(64,m|0,u|0);_=w;w=0;if(!(_&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,o|0,3,35648,m|0);_=w;w=0;if(_&1)l=1;else{w=0;Ee(6,o|0,824,96);w=0;l=0}s=je()|0;xh(m);if(!l){m=s;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}}else s=je()|0;He(o|0);m=s;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}m=je()|0;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}}while(0);v=s;nd(h);Qe(v|0)}}while(0);l=e+20|0;if((t[s+28>>2]|0)!=536870912){v=t[l>>2]|0;hf(e,v,r,n,a);c=b;return}pr(t[l>>2]|0,re(d,t[s+16>>2]|0)|0);v=t[l>>2]|0;hf(e,v,r,n,a);c=b;return}function bf(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0;h=e+4|0;e=t[h>>2]|0;e:do{switch(t[e+16>>2]|0){case 3:{if((t[e+24>>2]|0)==2){if((a|0)>0)e=0;else break e;while(1){c=n[i+(e*6|0)+2>>1]|0;u=c&65535;l=u+32768+(s[i+(e*6|0)+4>>1]|0)&65535;n[r+(e*6|0)>>1]=(s[i+(e*6|0)>>1]|0)+32768+u;n[r+(e*6|0)+2>>1]=c;n[r+(e*6|0)+4>>1]=l;e=e+1|0;if((e|0)==(a|0))break e}}e=(a|0)<(l|0)?a:l;if((e|0)>0){o=l<<1;u=0;do{d=n[i+(u+l<<1)>>1]|0;b=d&65535;c=b+32768+(s[i+(u+o<<1)>>1]|0)&65535;n[r+(u*6|0)>>1]=(s[i+(u<<1)>>1]|0)+32768+b;n[r+(u*6|0)+2>>1]=d;n[r+(u*6|0)+4>>1]=c;u=u+1|0}while((u|0)!=(e|0))}break}case 4:{if((t[e+24>>2]|0)==1?(c=(a|0)<(l|0)?a:l,(c|0)>0):0){e=l<<1;o=l*3|0;u=0;do{b=n[i+(u+l<<1)>>1]|0;d=b&65535;_=(s[i+(u<<1)>>1]|0)+32768+d|0;d=d+32768+(s[i+(u+e<<1)>>1]|0)|0;k=n[i+(u+o<<1)>>1]|0;b=Sm(b&65535|0,0,16)|0;d=O|d;k=Sm(k&65535|0,0,48)|0;k=_&65535|b|k;d=d&65535|O;b=r+(u<<3)|0;_=b;n[_>>1]=k;n[_+2>>1]=k>>>16;b=b+4|0;n[b>>1]=d;n[b+2>>1]=d>>>16;u=u+1|0}while((u|0)!=(c|0))}break}default:{}}}while(0);e=t[h>>2]|0;if(!(f[e+32>>0]|0))return;u=t[e+16>>2]|0;if((a|0)<=0)return;e=r;o=0;while(1){k=e+4|0;_=n[e>>1]|0;n[e>>1]=n[k>>1]|0;n[k>>1]=_;o=o+1|0;if((o|0)==(a|0))break;else e=e+(u<<1)|0}return}function _f(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=36460;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}f=t[e+8>>2]|0;if(!f)return;i=e+12|0;r=t[i>>2]|0;if((r|0)!=(f|0))t[i>>2]=r+(~((r+-2-f|0)>>>1)<<1);Bp(f);return}function kf(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=36460;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}f=t[e+8>>2]|0;if(!f){Bp(e);return}i=e+12|0;r=t[i>>2]|0;if((r|0)!=(f|0))t[i>>2]=r+(~((r+-2-f|0)>>>1)<<1);Bp(f);Bp(e);return}function wf(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;a=e+36|0;if(!(t[a>>2]|0)){o=e+40|0;gf(e,i,t[o>>2]|0,r,n);t[o>>2]=(t[o>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}u=e+4|0;s=r<<1;l=re(s,t[(t[u>>2]|0)+16>>2]|0)|0;o=e+20|0;gf(e,i,t[o>>2]|0,r,n);i=t[u>>2]|0;if((t[i+28>>2]|0)==536870912)pr(t[o>>2]|0,re(s,t[i+16>>2]|0)|0);u=t[a>>2]|0;if((uM[t[(t[u>>2]|0)+48>>2]&63](u,t[o>>2]|0,l)|0)==(l|0))return;i=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,i|0,3,35648);u=w;w=0;if(u&1){u=je()|0;He(i|0);Qe(u|0)}else bi(i|0,824,96)}function mf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0;n=t[e+36>>2]|0;if(!n){n=e+40|0;vf(e,t[n>>2]|0,i,r,f);t[n>>2]=(t[n>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}else{pf(e,n,i,r,f);return}}function vf(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0;u=e+4|0;l=t[u>>2]|0;do{if(!(f[l+32>>0]|0))c=i;else{e=e+8|0;Em(t[e>>2]|0,i|0,a*6|0)|0;l=t[u>>2]|0;o=t[l+16>>2]|0;if((a|0)<=0){c=t[e>>2]|0;break}e=t[e>>2]|0;l=e;i=0;while(1){c=l+4|0;h=n[l>>1]|0;n[l>>1]=n[c>>1]|0;n[c>>1]=h;i=i+1|0;if((i|0)==(a|0))break;else l=l+(o<<1)|0}c=e;l=t[u>>2]|0}}while(0);switch(t[l+16>>2]|0){case 3:{if((t[l+24>>2]|0)==2){if((a|0)>0)l=0;else return;do{s=n[c+(l*6|0)+2>>1]|0;h=n[c+(l*6|0)+4>>1]|0;n[r+(l*6|0)>>1]=n[c+(l*6|0)>>1]|0;n[r+(l*6|0)+2>>1]=s;n[r+(l*6|0)+4>>1]=h;l=l+1|0}while((l|0)!=(a|0));return}l=(s|0)<(a|0)?s:a;if((l|0)<=0)return;e=s<<1;i=0;do{a=n[c+(i*6|0)+2>>1]|0;h=n[c+(i*6|0)+4>>1]|0;n[r+(i<<1)>>1]=n[c+(i*6|0)>>1]|0;n[r+(i+s<<1)>>1]=a;n[r+(i+e<<1)>>1]=h;i=i+1|0}while((i|0)!=(l|0));return}case 4:{if((t[l+24>>2]|0)!=1)return;l=(s|0)<(a|0)?s:a;if((l|0)<=0)return;e=s<<1;i=s*3|0;o=0;do{u=n[c+(o<<3)+2>>1]|0;a=n[c+(o<<3)+4>>1]|0;h=n[c+(o<<3)+6>>1]|0;n[r+(o<<1)>>1]=n[c+(o<<3)>>1]|0;n[r+(o+s<<1)>>1]=u;n[r+(o+e<<1)>>1]=a;n[r+(o+i<<1)>>1]=h;o=o+1|0}while((o|0)!=(l|0));return}default:return}}function pf(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0;b=c;c=c+176|0;_=b+152|0;v=b+16|0;m=b;u=e+4|0;s=t[u>>2]|0;d=n<<1;l=re(d,t[s+16>>2]|0)|0;do{if(l){o=e+20|0;while(1){s=uM[t[(t[i>>2]|0)+32>>2]&63](i,t[o>>2]|0,l)|0;if(!s)break;if((l|0)==(s|0)){h=26;break}else l=l-s|0}if((h|0)==26){s=t[u>>2]|0;break}h=v+56|0;u=v+4|0;t[v>>2]=36160;t[h>>2]=36180;w=0;ce(62,v+56|0,u|0);b=w;w=0;if(b&1){v=je()|0;nd(h);Qe(v|0)}t[v+128>>2]=0;t[v+132>>2]=-1;t[v>>2]=36200;t[v+56>>2]=36220;w=0;ue(180,u|0);b=w;w=0;do{if(b&1)s=je()|0;else{t[u>>2]=36236;i=v+36|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[v+52>>2]=16;t[_>>2]=0;t[_+4>>2]=0;t[_+8>>2]=0;w=0;ce(63,u|0,_|0);b=w;w=0;if(b&1){s=je()|0;xh(_);xh(i);cd(u);break}xh(_);w=0;s=_e(28,v|0,49029,57)|0;_=w;w=0;if(!(_&1)?(w=0,pe(36,s|0,0)|0,_=w,w=0,!(_&1)):0){o=Ue(16)|0;w=0;ce(64,m|0,u|0);_=w;w=0;if(!(_&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,o|0,3,35648,m|0);_=w;w=0;if(_&1)l=1;else{w=0;Ee(6,o|0,824,96);w=0;l=0}s=je()|0;xh(m);if(!l){m=s;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}}else s=je()|0;He(o|0);m=s;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}m=je()|0;t[v>>2]=36200;t[h>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(h);Qe(m|0)}}while(0);v=s;nd(h);Qe(v|0)}}while(0);l=e+20|0;if((t[s+28>>2]|0)!=536870912){v=t[l>>2]|0;vf(e,v,r,n,a);c=b;return}pr(t[l>>2]|0,re(d,t[s+16>>2]|0)|0);v=t[l>>2]|0;vf(e,v,r,n,a);c=b;return}function gf(e,i,r,a,l){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0;h=e+4|0;e=t[h>>2]|0;e:do{switch(t[e+16>>2]|0){case 3:{if((t[e+24>>2]|0)==2){if((a|0)>0)e=0;else break e;while(1){c=n[i+(e*6|0)+2>>1]|0;l=n[i+(e*6|0)+4>>1]|0;n[r+(e*6|0)>>1]=n[i+(e*6|0)>>1]|0;n[r+(e*6|0)+2>>1]=c;n[r+(e*6|0)+4>>1]=l;e=e+1|0;if((e|0)==(a|0))break e}}e=(a|0)<(l|0)?a:l;if((e|0)>0){o=l<<1;u=0;do{d=n[i+(u+l<<1)>>1]|0;c=n[i+(u+o<<1)>>1]|0;n[r+(u*6|0)>>1]=n[i+(u<<1)>>1]|0;n[r+(u*6|0)+2>>1]=d;n[r+(u*6|0)+4>>1]=c;u=u+1|0}while((u|0)!=(e|0))}break}case 4:{if((t[e+24>>2]|0)==1?(c=(a|0)<(l|0)?a:l,(c|0)>0):0){e=l<<1;o=l*3|0;u=0;do{d=n[i+(u<<1)>>1]|0;k=n[i+(u+o<<1)>>1]|0;b=s[i+(u+e<<1)>>1]|0;_=Sm(s[i+(u+l<<1)>>1]|0,0,16)|0;b=O|b;k=Sm(k&65535|0,0,48)|0;k=_|d&65535|k;b=b&65535|O;d=r+(u<<3)|0;_=d;n[_>>1]=k;n[_+2>>1]=k>>>16;d=d+4|0;n[d>>1]=b;n[d+2>>1]=b>>>16;u=u+1|0}while((u|0)!=(c|0))}break}default:{}}}while(0);e=t[h>>2]|0;if(!(f[e+32>>0]|0))return;u=t[e+16>>2]|0;if((a|0)<=0)return;e=r;o=0;while(1){k=e+4|0;_=n[e>>1]|0;n[e>>1]=n[k>>1]|0;n[k>>1]=_;o=o+1|0;if((o|0)==(a|0))break;else e=e+(u<<1)|0}return}function yf(e){e=e|0;return}function Mf(e){e=e|0;Bp(e);return}function Af(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;r=re(t[e+8>>2]|0,r)|0;e=t[e+4>>2]|0;if((uM[t[(t[e>>2]|0)+48>>2]&63](e,i,r)|0)==(r|0))return;n=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,n|0,3,35648);e=w;w=0;if(e&1){e=je()|0;He(n|0);Qe(e|0)}else bi(n|0,824,96)}function Ef(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+16|0;h=d;u=e+8|0;a=t[u>>2]|0;n=re(a,r)|0;do{if(n){l=e+4|0;s=n;while(1){a=t[l>>2]|0;a=uM[t[(t[a>>2]|0)+32>>2]&63](a,i,s)|0;if(!a)break;n=s-a|0;if((s|0)==(a|0)){o=11;break}else s=n}if((o|0)==11){a=t[u>>2]|0;s=n;break}n=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,n|0,3,35648);e=w;w=0;if(e&1){e=je()|0;He(n|0);Qe(e|0)}else bi(n|0,824,96)}else s=0}while(0);if((a|0)==2){pr(i,r<<1);a=t[u>>2]|0}n=t[e+12>>2]|0;if((n|0)<=(re(a,r)|0)){c=d;return}e=t[e+4>>2]|0;hM[t[(t[e>>2]|0)+16>>2]&15](h,e,n-s|0,0,1,24);c=d;return}function Sf(e){e=e|0;Bp(e);return}function Tf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;f=e+4|0;Em(t[f>>2]|0,i|0,re(t[e+8>>2]|0,r)|0)|0;t[f>>2]=(t[f>>2]|0)+(t[e+12>>2]|0);return}function Rf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;f=e+4|0;Em(i|0,t[f>>2]|0,re(t[e+8>>2]|0,r)|0)|0;t[f>>2]=(t[f>>2]|0)+(t[e+12>>2]|0);return}function Cf(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0;t[e+112>>2]=0;t[e+108>>2]=0;c=t[i>>2]|0;a=c;do{if(c){l=e+92|0;c=e+96|0;o=t[c>>2]|0;u=t[l>>2]|0;r=u;n=o-r|0;if(n>>>0>=4e4)if(n>>>0>4e4?(s=u+4e4|0,(o|0)!=(s|0)):0){t[c>>2]=s;s=r}else s=r;else{Pf(l,4e4-n|0);s=t[l>>2]|0;a=t[i>>2]|0}r=e+116|0;t[r>>2]=s;o=e+124|0;t[o>>2]=s;u=e+104|0;t[u>>2]=a;n=a;if(a){if((t[n+12>>2]|0)==(t[n+16>>2]|0)){i=(lM[t[(t[a>>2]|0)+36>>2]&127](n)|0)==-1;n=t[o>>2]|0;if(i)break;a=t[r>>2]|0}else{n=s;a=s}l=n-a|0;if(l>>>0<=64){s=e+92|0;if((n|0)==(a|0))n=a;else{n=a;a=0;do{f[(t[s>>2]|0)+a>>0]=f[n+a>>0]|0;a=a+1|0;n=t[r>>2]|0}while(a>>>0<l>>>0);a=t[o>>2]|0}s=t[s>>2]|0;i=s;h=i-n|0;t[r>>2]=s;n=a+h|0;t[o>>2]=n;s=e+120|0;t[s>>2]=(t[s>>2]|0)+h;u=t[u>>2]|0;n=uM[t[(t[u>>2]|0)+32>>2]&63](u,n,(t[c>>2]|0)-(i+l)|0)|0;n=(t[o>>2]|0)+n|0;t[o>>2]=n}}else n=s}else{t[e+104>>2]=0;n=t[i+4>>2]|0;r=e+116|0;t[r>>2]=n;n=n+(t[i+8>>2]|0)|0;t[e+124>>2]=n}}while(0);r=t[r>>2]|0;if(r>>>0>=n>>>0){c=r;h=e+120|0;t[h>>2]=c;Uf(e);return}while(1){if((f[r>>0]|0)==-1){n=20;break}r=r+1|0;if(r>>>0>=n>>>0){n=20;break}}if((n|0)==20){h=e+120|0;t[h>>2]=r;Uf(e);return}}function Pf(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0;u=e+8|0;a=t[u>>2]|0;c=e+4|0;r=t[c>>2]|0;n=r;if((a-n|0)>>>0>=i>>>0){do{f[r>>0]=0;r=(t[c>>2]|0)+1|0;t[c>>2]=r;i=i+-1|0}while((i|0)!=0);return}r=t[e>>2]|0;s=n-r+i|0;if((s|0)<0){Op(e);a=t[u>>2]|0;r=t[e>>2]|0}n=a-r|0;if(n>>>0<1073741823){n=n<<1;n=n>>>0<s>>>0?s:n;r=(t[c>>2]|0)-r|0;if(!n){a=0;l=0;s=r}else o=8}else{n=2147483647;r=(t[c>>2]|0)-r|0;o=8}if((o|0)==8){a=n;l=Lp(n)|0;s=r}r=l+s|0;a=l+a|0;n=r;do{f[n>>0]=0;n=r+1|0;r=n;i=i+-1|0}while((i|0)!=0);i=t[e>>2]|0;n=(t[c>>2]|0)-i|0;o=l+(s-n)|0;Em(o|0,i|0,n|0)|0;t[e>>2]=o;t[c>>2]=r;t[u>>2]=a;if(!i)return;Bp(i);return}function If(e){e=e|0;var i=0,r=0,f=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0;g=c;c=c+32|0;M=g+12|0;p=g;k=e+180|0;m=(t[k>>2]|0)+4|0;if((t[e+32>>2]|0)==1)v=t[e+24>>2]|0;else v=1;i=re(v<<1,m)|0;t[M>>2]=0;A=M+4|0;t[A>>2]=0;t[M+8>>2]=0;do{if(i){if(!((i|0)<0?(w=0,ue(178,M|0),y=w,w=0,y&1):0))l=6;if((l|0)==6?(r=i<<1,w=0,f=de(67,r|0)|0,y=w,w=0,!(y&1)):0){t[M>>2]=f;y=f+(i<<1)|0;t[M+8>>2]=y;ym(f|0,0,r|0)|0;t[A>>2]=y;break}f=je()|0;i=t[M>>2]|0;if(!i)Qe(f|0);r=t[A>>2]|0;if((r|0)!=(i|0))t[A>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);Qe(f|0)}}while(0);t[p>>2]=0;y=p+4|0;t[y>>2]=0;t[p+8>>2]=0;do{if(!v)l=18;else{if(!(v>>>0>1073741823?(w=0,ue(178,p|0),_=w,w=0,_&1):0))l=16;if((l|0)==16?(a=v<<2,w=0,s=de(67,a|0)|0,_=w,w=0,!(_&1)):0){t[p>>2]=s;l=s+(v<<2)|0;t[p+8>>2]=l;ym(s|0,0,a|0)|0;t[y>>2]=l;l=18;break}f=je()|0;i=t[p>>2]|0;r=i;if(i){a=t[y>>2]|0;if((a|0)!=(i|0))t[y>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}}while(0);if((l|0)==18){s=e+12|0;e:do{if((t[s>>2]|0)>0){l=e+4604|0;o=(re(v,m)|0)+1|0;u=e+4608|0;h=e+92|0;d=(v|0)>0;b=e+4600|0;_=0;i:while(1){r=t[M>>2]|0;i=r+2|0;t[l>>2]=i;r=r+(o<<1)|0;t[u>>2]=r;if(!(_&1))i=r;else{t[l>>2]=r;t[u>>2]=i}a=t[h>>2]|0;w=0;Ce(t[(t[a>>2]|0)+12>>2]|0,a|0,i|0,t[k>>2]|0,m|0);a=w;w=0;if(a&1){l=28;break}if(d){i=t[l>>2]|0;r=t[u>>2]|0;f=t[p>>2]|0;a=0;do{t[b>>2]=t[f+(a<<2)>>2];f=t[k>>2]|0;n[i+(f<<1)>>1]=n[i+(f+-1<<1)>>1]|0;n[r+-2>>1]=n[i>>1]|0;w=0;ce(68,e|0,0);f=w;w=0;if(f&1){l=27;break i}f=t[p>>2]|0;t[f+(a<<2)>>2]=t[b>>2];i=(t[l>>2]|0)+(m<<1)|0;t[l>>2]=i;r=(t[u>>2]|0)+(m<<1)|0;t[u>>2]=r;a=a+1|0}while((a|0)<(v|0))}_=_+1|0;if((_|0)>=(t[s>>2]|0)){l=40;break e}}if((l|0)==27){f=je()|0;break}else if((l|0)==28){f=je()|0;break}}else l=40}while(0);do{if((l|0)==40){w=0;ue(182,e|0);e=w;w=0;if(e&1){f=je()|0;break}i=t[p>>2]|0;r=i;if(i){f=t[y>>2]|0;if((f|0)!=(i|0))t[y>>2]=f+(~((f+-4-r|0)>>>2)<<2);Bp(i)}i=t[M>>2]|0;if(!i){c=g;return}r=t[A>>2]|0;if((r|0)!=(i|0))t[A>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);c=g;return}}while(0);i=t[p>>2]|0;r=i;if(i){a=t[y>>2]|0;if((a|0)!=(i|0))t[y>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}i=t[M>>2]|0;if(!i)Qe(f|0);r=t[A>>2]|0;if((r|0)!=(i|0))t[A>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);Qe(f|0)}function Of(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;_=e+4604|0;i=t[_>>2]|0;m=e+180|0;if((t[m>>2]|0)<=0)return;k=e+4608|0;w=e+4612|0;l=i;o=s[i+-2>>1]|0;i=s[i>>1]|0;b=0;while(1){d=t[k>>2]|0;h=s[d+(b+-1<<1)>>1]|0;a=b+1|0;r=s[l+(a<<1)>>1]|0;c=t[w>>2]|0;u=i-o|0;l=o-h|0;c=((((f[c+(r-i)>>0]|0)*9|0)+(f[c+u>>0]|0)|0)*9|0)+(f[c+l>>0]|0)|0;if(!c){a=(Df(e,b,0)|0)+b|0;r=t[_>>2]|0;i=s[r+(a+-1<<1)>>1]|0;r=s[r+(a<<1)>>1]|0}else{o=i-h>>31;if((o^l|0)<0)l=i;else l=h+((o^u|0)<0?0:u)|0;d=zf(e,c,s[d+(b<<1)>>1]|0,l,0)|0;n[(t[k>>2]|0)+(b<<1)>>1]=d}if((a|0)>=(t[m>>2]|0))break;l=t[_>>2]|0;o=i;i=r;b=a}return}function xf(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0;a=e+104|0;if((t[a>>2]|0)>>>0<4)Lf(e);s=e+100|0;l=e+112|0;o=e+96|0;u=e+108|0;c=e+116|0;i=t[s>>2]|0;n=0;do{r=f[l>>0]|0;if((i|0)>31)break;i=t[o>>2]|0;if(!(r<<24>>24)){f[t[u>>2]>>0]=i>>>24;t[o>>2]=t[o>>2]<<8;i=(t[s>>2]|0)+8|0}else{f[t[u>>2]>>0]=i>>>25;t[o>>2]=t[o>>2]<<7;i=(t[s>>2]|0)+7|0}t[s>>2]=i;h=t[u>>2]|0;r=(f[h>>0]|0)==-1&1;f[l>>0]=r;t[u>>2]=h+1;t[a>>2]=(t[a>>2]|0)+-1;t[c>>2]=(t[c>>2]|0)+1;n=n+1|0}while((n|0)<4);if(!(r<<24>>24))Bf(e,0,(i|0)%8|0);else Bf(e,0,(i+-1|0)%8|0);if((t[a>>2]|0)>>>0<4)Lf(e);i=t[s>>2]|0;r=0;do{if((i|0)>31)break;i=t[o>>2]|0;if(!(f[l>>0]|0)){f[t[u>>2]>>0]=i>>>24;t[o>>2]=t[o>>2]<<8;i=(t[s>>2]|0)+8|0}else{f[t[u>>2]>>0]=i>>>25;t[o>>2]=t[o>>2]<<7;i=(t[s>>2]|0)+7|0}t[s>>2]=i;h=t[u>>2]|0;f[l>>0]=(f[h>>0]|0)==-1&1;t[u>>2]=h+1;t[a>>2]=(t[a>>2]|0)+-1;t[c>>2]=(t[c>>2]|0)+1;r=r+1|0}while((r|0)<4);if(!(t[e+132>>2]|0))return;Lf(e);return}function Lf(e){e=e|0;var i=0,r=0,n=0,a=0,s=0;i=t[e+132>>2]|0;if(!i){i=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,i|0,4,35648);e=w;w=0;if(!(e&1))bi(i|0,824,96);e=je()|0;He(i|0);Qe(e|0)}r=e+108|0;n=e+120|0;s=t[n>>2]|0;a=(t[r>>2]|0)-s|0;if((uM[t[(t[i>>2]|0)+48>>2]&63](i,s,a)|0)==(a|0)){s=t[n>>2]|0;t[r>>2]=s;t[e+104>>2]=(t[e+124>>2]|0)-s;return}i=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,i|0,4,35648);s=w;w=0;if(!(s&1))bi(i|0,824,96);s=je()|0;He(i|0);Qe(s|0)}function Bf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;c=e+100|0;r=(t[c>>2]|0)-r|0;t[c>>2]=r;if((r|0)>-1){h=e+96|0;t[h>>2]=t[h>>2]|i<<r;return}h=e+96|0;t[h>>2]=t[h>>2]|i>>0-r;u=e+104|0;if((t[u>>2]|0)>>>0<4){Lf(e);r=t[c>>2]|0}s=e+112|0;l=e+108|0;o=e+116|0;n=0;while(1){if((r|0)>31)break;r=t[h>>2]|0;if(!(f[s>>0]|0)){f[t[l>>2]>>0]=r>>>24;t[h>>2]=t[h>>2]<<8;r=(t[c>>2]|0)+8|0}else{f[t[l>>2]>>0]=r>>>25;t[h>>2]=t[h>>2]<<7;r=(t[c>>2]|0)+7|0}t[c>>2]=r;d=t[l>>2]|0;f[s>>0]=(f[d>>0]|0)==-1&1;t[l>>2]=d+1;t[u>>2]=(t[u>>2]|0)+-1;t[o>>2]=(t[o>>2]|0)+1;n=n+1|0;if((n|0)>=4){a=11;break}}e:do{if((a|0)==11)if((r|0)<0){t[h>>2]=t[h>>2]|i>>0-r;if((t[u>>2]|0)>>>0<4){Lf(e);r=t[c>>2]|0;n=0}else n=0;do{if((r|0)>31)break e;r=t[h>>2]|0;if(!(f[s>>0]|0)){f[t[l>>2]>>0]=r>>>24;t[h>>2]=t[h>>2]<<8;r=(t[c>>2]|0)+8|0}else{f[t[l>>2]>>0]=r>>>25;t[h>>2]=t[h>>2]<<7;r=(t[c>>2]|0)+7|0}t[c>>2]=r;d=t[l>>2]|0;f[s>>0]=(f[d>>0]|0)==-1&1;t[l>>2]=d+1;t[u>>2]=(t[u>>2]|0)+-1;t[o>>2]=(t[o>>2]|0)+1;n=n+1|0}while((n|0)<4)}}while(0);t[h>>2]=t[h>>2]|i<<r;return}function zf(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0;w=i>>31;s=(w^i)-w|0;_=e+196+(s*12|0)+10|0;l=n[_>>1]|0;b=e+196+(s*12|0)|0;a=t[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){i=5;while(1)if((l<<i|0)<(a|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;h=e+196+(s*12|0)+8|0;a=(n[h>>1]^w)-w+f|0;k=e+136|0;f=t[k>>2]|0;if((a&f|0)==(a|0))c=a;else c=f&~(a>>31);a=(r-c^w)-w|0;u=e+144|0;f=t[u>>2]|0;if((a|0)>0)a=(a+f|0)/(f<<1|1|0)|0;else a=(a-f|0)/(f<<1|1|0)|0;d=e+140|0;o=t[d>>2]|0;r=((a|0)<0?o:0)+a|0;o=r-((r|0)<((o+1|0)/2|0|0)?0:o)|0;s=e+196+(s*12|0)+4|0;if(!(f|i))a=(t[s>>2]<<1)+-1+l>>31;else a=0;f=a^o;Hf(e,i,f>>30^f<<1,t[e+156>>2]|0);f=t[e+160>>2]|0;i=(t[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;a=(t[s>>2]|0)+(re(t[u>>2]<<1|1,o)|0)|0;r=n[_>>1]|0;if((r|0)==(f|0)){i=i>>1;a=a>>1;r=f>>1}t[b>>2]=i;f=r+1|0;n[_>>1]=f;i=f+a|0;if((i|0)>=1){if((a|0)>0){a=a-f|0;_=n[h>>1]|0;n[h>>1]=(_<<16>>16<127&1)+(_&65535);a=(a|0)>0?0:a}}else{a=n[h>>1]|0;n[h>>1]=(a&65535)-(a<<16>>16>-128&1);a=(i|0)>(~r|0)?i:0-r|0}t[s>>2]=a;f=t[u>>2]|0;r=f<<1|1;i=(re(r,(o^w)-w|0)|0)+c|0;if((i|0)>=(0-f|0)){a=t[k>>2]|0;if((a+f|0)<(i|0))i=i-(re(t[d>>2]|0,r)|0)|0}else{i=(re(t[d>>2]|0,r)|0)+i|0;a=t[k>>2]|0}if((i&a|0)==(i|0)){w=i;w=w&65535;return w|0}w=a&~(i>>31);w=w&65535;return w|0}function Df(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0;c=(t[e+180>>2]|0)-i|0;h=t[e+4608>>2]|0;d=t[e+4604>>2]|0;a=n[h+(i+-1<<1)>>1]|0;u=a&65535;r=t[e+144>>2]|0;l=0;while(1){f=h+(l+i<<1)|0;o=(s[f>>1]|0)-u|0;if((((o|0)>-1?o:0-o|0)|0)>(r|0))break;n[f>>1]=a;l=l+1|0;if((l|0)==(c|0)){l=c;break}}a=(l|0)==(c|0);o=e+4600|0;f=t[36476+(t[o>>2]<<2)>>2]|0;if((1<<f|0)>(l|0))r=l;else{r=l;do{Bf(e,1,1);f=t[o>>2]|0;r=r-(1<<t[36476+(f<<2)>>2])|0;f=(f|0)>30?31:f+1|0;t[o>>2]=f;f=t[36476+(f<<2)>>2]|0}while((r|0)>=(1<<f|0))}if(!a){Bf(e,r,f+1|0);c=l+i|0;i=h+(c<<1)|0;n[i>>1]=Nf(e,s[i>>1]|0,u,s[d+(c<<1)>>1]|0)|0;e=t[o>>2]|0;t[o>>2]=(e|0)<1?0:e+-1|0;e=l+1|0;return e|0}if(!r){e=c;return e|0}Bf(e,1,1);e=c;return e|0}function Nf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0;l=r-f|0;o=e+136|0;s=e+144|0;n=t[s>>2]|0;if((((l|0)>-1?l:0-l|0)|0)>(n|0)){a=f-r>>31|1;i=re(a,i-f|0)|0;if((i|0)>0)i=(n+i|0)/(n<<1|1|0)|0;else i=(i-n|0)/(n<<1|1|0)|0;l=e+140|0;n=t[l>>2]|0;r=((i|0)<0?n:0)+i|0;n=r-((r|0)<((n+1|0)/2|0|0)?0:n)|0;Ff(e,e+4576|0,n);n=re(n,a)|0;a=t[s>>2]|0;s=a<<1|1;n=(re(n,s)|0)+f|0;if((n|0)>=(0-a|0)){i=t[o>>2]|0;if((i+a|0)<(n|0))n=n-(re(t[l>>2]|0,s)|0)|0}else{n=(re(t[l>>2]|0,s)|0)+n|0;i=t[o>>2]|0}if((n&i|0)==(n|0)){o=n;o=o&65535;return o|0}o=i&~(n>>31);o=o&65535;return o|0}else{i=i-r|0;if((i|0)>0)i=(n+i|0)/(n<<1|1|0)|0;else i=(i-n|0)/(n<<1|1|0)|0;l=e+140|0;n=t[l>>2]|0;a=((i|0)<0?n:0)+i|0;n=a-((a|0)<((n+1|0)/2|0|0)?0:n)|0;Ff(e,e+4588|0,n);a=t[s>>2]|0;s=a<<1|1;n=(re(s,n)|0)+r|0;if((n|0)>=(0-a|0)){i=t[o>>2]|0;if((i+a|0)<(n|0))n=n-(re(t[l>>2]|0,s)|0)|0}else{n=(re(t[l>>2]|0,s)|0)+n|0;i=t[o>>2]|0}if((n&i|0)==(n|0)){o=n;o=o&65535;return o|0}o=i&~(n>>31);o=o&65535;return o|0}return 0}function Ff(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=t[h>>2]|0;s=(re(o>>>1,c)|0)+(t[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;Hf(e,s,n,(t[e+156>>2]|0)+-1-(t[36476+(t[e+4600>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;f[e>>0]=(a[e>>0]|0)+1}n=(n+1-(t[h>>2]|0)>>1)+(t[i>>2]|0)|0;t[i>>2]=n;s=f[d>>0]|0;if(s<<24>>24!=(f[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}t[i>>2]=n>>1;e=(s&255)>>>1;f[d>>0]=e;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}function Hf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0;n=r>>i;a=e+148|0;s=f-(t[a>>2]|0)|0;if((n|0)<(s+-1|0)){if((n|0)>30){f=(n|0)/2|0;Bf(e,0,f);n=n-f|0}Bf(e,1,n+1|0);Bf(e,(1<<i)+-1&r,i);return}if((s|0)>31){Bf(e,0,31);Bf(e,1,f+-31-(t[a>>2]|0)|0)}else Bf(e,1,s);i=t[a>>2]|0;Bf(e,(1<<i)+-1&r+-1,i);return}function Uf(e){e=e|0;var i=0,r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;u=e+116|0;i=t[u>>2]|0;c=e+120|0;if(i>>>0<((t[c>>2]|0)+-3|0)>>>0){c=e+112|0;o=t[c>>2]|0;e=e+108|0;t[e>>2]=(a[i+1>>0]<<16|a[i>>0]<<24|a[i+2>>0]<<8|a[i+3>>0])>>>o|t[e>>2];e=32-o>>3;t[u>>2]=i+e;t[c>>2]=(e<<3)+o;return}o=e+104|0;r=t[o>>2]|0;do{if(r){if((t[r+12>>2]|0)==(t[r+16>>2]|0)){if((lM[t[(t[r>>2]|0)+36>>2]&127](r)|0)==-1)break;i=t[u>>2]|0}s=e+124|0;r=t[s>>2]|0;l=r-i|0;if(l>>>0<=64){n=e+92|0;if((r|0)==(i|0))r=i;else{r=0;do{f[(t[n>>2]|0)+r>>0]=f[i+r>>0]|0;r=r+1|0;i=t[u>>2]|0}while(r>>>0<l>>>0);r=i;i=t[s>>2]|0}d=t[n>>2]|0;n=d;h=n-r|0;t[u>>2]=d;r=i+h|0;t[s>>2]=r;t[c>>2]=(t[c>>2]|0)+h;o=t[o>>2]|0;o=uM[t[(t[o>>2]|0)+32>>2]&63](o,r,(t[e+96>>2]|0)-(n+l)|0)|0;t[s>>2]=(t[s>>2]|0)+o}}}while(0);o=e+112|0;l=e+108|0;e=t[e+124>>2]|0;s=e+-1|0;i=t[u>>2]|0;while(1){if(i>>>0>=e>>>0){r=14;break}n=f[i>>0]|0;r=n&255;n=n<<24>>24==-1;if(n){if((i|0)==(s|0)){r=25;break}i=i+1|0;if((f[i>>0]|0)<0){r=25;break}}else i=i+1|0;d=t[o>>2]|0;t[l>>2]=r<<24-d|t[l>>2];t[u>>2]=i;d=d+(n?7:8)|0;t[o>>2]=d;if((d|0)>=24){r=33;break}}if((r|0)==14){if((t[o>>2]|0)>=1)return;i=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,i|0,5,35648);d=w;w=0;if(!(d&1))bi(i|0,824,96);d=je()|0;He(i|0);Qe(d|0)}else if((r|0)==25){if((t[o>>2]|0)>=1)return;i=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,i|0,5,35648);d=w;w=0;if(!(d&1))bi(i|0,824,96);d=je()|0;He(i|0);Qe(d|0)}else if((r|0)==33){e:do{if(i>>>0<e>>>0)do{if((f[i>>0]|0)==-1)break e;i=i+1|0}while(i>>>0<e>>>0)}while(0);t[c>>2]=i;return}}function jf(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0;_=c;c=c+32|0;n=_;b=e+144|0;e:do{if(!(t[b>>2]|0)){r=t[e+136>>2]|0;i=e+152|0;if((((r|0)==((1<<t[i>>2])+-1|0)?(op(n,r,0),(t[n+4>>2]|0)==(t[e+184>>2]|0)):0)?(t[n+8>>2]|0)==(t[e+188>>2]|0):0)?(t[n+12>>2]|0)==(t[e+192>>2]|0):0)switch(t[i>>2]|0){case 8:{b=t[8900]|0;t[e+4612>>2]=b+(((t[8901]|0)-b|0)>>>1);c=_;return}case 10:{b=t[8903]|0;t[e+4612>>2]=b+(((t[8904]|0)-b|0)>>>1);c=_;return}case 12:{b=t[8906]|0;t[e+4612>>2]=b+(((t[8907]|0)-b|0)>>>1);c=_;return}case 16:{b=t[8909]|0;t[e+4612>>2]=b+(((t[8910]|0)-b|0)>>>1);c=_;return}default:break e}}else i=e+152|0}while(0);d=1<<t[i>>2];r=e+4616|0;n=d<<1;a=e+4620|0;s=t[a>>2]|0;i=t[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)t[a>>2]=o}else{Yf(r,n-l|0);i=t[r>>2]|0}h=e+4612|0;t[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=_;return}o=e+192|0;u=e+188|0;l=e+184|0;s=i;do{i=t[o>>2]|0;if((s|0)>(0-i|0)){r=t[u>>2]|0;if((s|0)>(0-r|0)){n=t[l>>2]|0;if((s|0)>(0-n|0)){a=t[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;f[(t[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=_;return}function Yf(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0;u=e+8|0;a=t[u>>2]|0;c=e+4|0;r=t[c>>2]|0;n=r;if((a-n|0)>>>0>=i>>>0){do{f[r>>0]=0;r=(t[c>>2]|0)+1|0;t[c>>2]=r;i=i+-1|0}while((i|0)!=0);return}r=t[e>>2]|0;s=n-r+i|0;if((s|0)<0){Op(e);a=t[u>>2]|0;r=t[e>>2]|0}n=a-r|0;if(n>>>0<1073741823){n=n<<1;n=n>>>0<s>>>0?s:n;r=(t[c>>2]|0)-r|0;if(!n){a=0;l=0;s=r}else o=8}else{n=2147483647;r=(t[c>>2]|0)-r|0;o=8}if((o|0)==8){a=n;l=Lp(n)|0;s=r}r=l+s|0;a=l+a|0;n=r;do{f[n>>0]=0;n=r+1|0;r=n;i=i+-1|0}while((i|0)!=0);i=t[e>>2]|0;n=(t[c>>2]|0)-i|0;o=l+(s-n)|0;Em(o|0,i|0,n|0)|0;t[e>>2]=o;t[c>>2]=r;t[u>>2]=a;if(!i)return;Bp(i);return}function qf(e){e=e|0;var i=0,r=0;t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function $f(e){e=e|0;var i=0,r=0;t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function Vf(e){e=e|0;var i=0,r=0;t[e>>2]=36052;i=t[e+4616>>2]|0;if(i){r=e+4620|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function Xf(e){e=e|0;var i=0,r=0;t[e>>2]=36052;i=t[e+4616>>2]|0;if(i){r=e+4620|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function Gf(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,t[e+136>>2]|0,t[e+144>>2]|0);u=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[h+8>>2]|0:l;s=t[i+12>>2]|0;s=(s|0)==0?t[h+12>>2]|0:s;r=t[i+16>>2]|0;a=t[h+16>>2]|0;t[e+184>>2]=(u|0)==0?t[h+4>>2]|0:u;t[e+188>>2]=l;t[e+192>>2]=s;tn(e);s=e+140|0;i=(t[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{t[e+196+(l*12|0)>>2]=i;t[e+196+(l*12|0)+4>>2]=0;n[e+196+(l*12|0)+8>>1]=0;n[e+196+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(t[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;t[e+4576>>2]=u;t[e+4580>>2]=0;f[e+4584>>0]=h;f[e+4585>>0]=1;f[e+4586>>0]=0;t[e+4588>>2]=u;t[e+4592>>2]=1;f[e+4596>>0]=h;f[e+4597>>0]=1;f[e+4598>>0]=0;t[e+4600>>2]=0;c=o;return}function Kf(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=t[i>>2]|0;t[i>>2]=0;i=t[u>>2]|0;t[u>>2]=o;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);t[h>>2]=0;t[h+4>>2]=a;u=r+8|0;t[h+8>>2]=t[u>>2];if(a){i=Lp(4624)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{t[s>>2]=t[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{t[s>>2]=0;s=s+4|0}while((s|0)<(o|0));t[i>>2]=35828;t[i+128>>2]=t[e+136>>2];t[i+132>>2]=t[e+140>>2];t[i+136>>2]=t[e+144>>2];t[i+140>>2]=t[e+148>>2];t[i+144>>2]=t[e+152>>2];t[i+148>>2]=t[e+156>>2];t[i+152>>2]=t[e+160>>2];s=i+156|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[i+172>>2]=t[a>>2];t[i+176>>2]=0;t[i+180>>2]=0;t[i+184>>2]=0;s=i+4568|0;a=i+188|0;do{t[a>>2]=0;t[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;t[s>>2]=0;t[s+4>>2]=0;n[s+8>>1]=0;f[s+10>>0]=0;o=i+4580|0;t[o>>2]=0;t[o+4>>2]=0;n[o+8>>1]=0;f[o+10>>0]=0;o=i+4592|0;t[o>>2]=0;t[o+4>>2]=0;t[o+8>>2]=0;t[o+12>>2]=0;t[o+16>>2]=0;t[o+20>>2]=0;t[o+24>>2]=0;f[o+28>>0]=0;if(!(t[i+28>>2]|0))t[i+20>>2]=1;a=t[l>>2]|0;t[l>>2]=i;if(a){tM[t[(t[a>>2]|0)+4>>2]&255](a);i=t[l>>2]|0}Cf(i,h)}h=e+100|0;t[h>>2]=32;t[e+96>>2]=0;i=t[r>>2]|0;if(!i){t[e+108>>2]=t[r+4>>2];t[e+104>>2]=t[u>>2];Zf(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}t[e+132>>2]=i;s=e+120|0;u=e+124|0;a=t[u>>2]|0;i=t[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){t[u>>2]=d;a=d}}else{Pf(s,4e3-o|0);i=t[s>>2]|0;l=i;a=t[u>>2]|0}t[e+108>>2]=l;t[e+104>>2]=a-i;Zf(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function Wf(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+32>>2]|0)!=0?(t[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(37,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+16>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(38,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(39,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(40,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+20>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=6;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=6;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function Zf(e){e=e|0;var i=0,r=0,f=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0;p=c;c=c+32|0;y=p+12|0;v=p;_=e+180|0;k=(t[_>>2]|0)+4|0;if((t[e+32>>2]|0)==1)m=t[e+24>>2]|0;else m=1;i=re(m<<1,k)|0;t[y>>2]=0;M=y+4|0;t[M>>2]=0;t[y+8>>2]=0;do{if(i){if(!(i>>>0>715827882?(w=0,ue(178,y|0),g=w,w=0,g&1):0))l=6;if((l|0)==6?(w=0,r=de(67,i*6|0)|0,g=w,w=0,!(g&1)):0){t[M>>2]=r;t[y>>2]=r;f=r+(i*6|0)|0;t[y+8>>2]=f;while(1){n[r>>1]=0;n[r+2>>1]=0;n[r+4>>1]=0;i=i+-1|0;if(!i)break;else r=r+6|0}t[M>>2]=f;break}f=je()|0;i=t[y>>2]|0;if(!i)Qe(f|0);r=t[M>>2]|0;if((r|0)!=(i|0))t[M>>2]=r+(~(((r+-6-i|0)>>>0)/6|0)*6|0);Bp(i);Qe(f|0)}}while(0);t[v>>2]=0;g=v+4|0;t[g>>2]=0;t[v+8>>2]=0;do{if(!m)l=20;else{if(!(m>>>0>1073741823?(w=0,ue(178,v|0),b=w,w=0,b&1):0))l=18;if((l|0)==18?(a=m<<2,w=0,s=de(67,a|0)|0,b=w,w=0,!(b&1)):0){t[v>>2]=s;l=s+(m<<2)|0;t[v+8>>2]=l;ym(s|0,0,a|0)|0;t[g>>2]=l;l=20;break}f=je()|0;i=t[v>>2]|0;r=i;if(i){a=t[g>>2]|0;if((a|0)!=(i|0))t[g>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}}while(0);if((l|0)==20){a=e+12|0;e:do{if((t[a>>2]|0)>0){s=e+4604|0;l=(re(m,k)|0)+1|0;o=e+4608|0;u=e+92|0;h=(m|0)>0;d=e+4600|0;b=0;i:while(1){r=t[y>>2]|0;i=r+6|0;t[s>>2]=i;r=r+(l*6|0)|0;t[o>>2]=r;if(!(b&1))i=r;else{t[s>>2]=r;t[o>>2]=i}f=t[u>>2]|0;w=0;Ce(t[(t[f>>2]|0)+12>>2]|0,f|0,i|0,t[_>>2]|0,k|0);f=w;w=0;if(f&1){l=30;break}if(h){i=t[v>>2]|0;r=t[s>>2]|0;f=0;do{t[d>>2]=t[i+(f<<2)>>2];A=t[_>>2]|0;i=r+(A*6|0)|0;r=r+((A+-1|0)*6|0)|0;n[i>>1]=n[r>>1]|0;n[i+2>>1]=n[r+2>>1]|0;n[i+4>>1]=n[r+4>>1]|0;r=(t[o>>2]|0)+-6|0;i=t[s>>2]|0;n[r>>1]=n[i>>1]|0;n[r+2>>1]=n[i+2>>1]|0;n[r+4>>1]=n[i+4>>1]|0;w=0;ce(69,e|0,0);r=w;w=0;if(r&1){l=29;break i}i=t[v>>2]|0;t[i+(f<<2)>>2]=t[d>>2];r=(t[s>>2]|0)+(k*6|0)|0;t[s>>2]=r;t[o>>2]=(t[o>>2]|0)+(k*6|0);f=f+1|0}while((f|0)<(m|0))}b=b+1|0;if((b|0)>=(t[a>>2]|0)){l=42;break e}}if((l|0)==29){f=je()|0;break}else if((l|0)==30){f=je()|0;break}}else l=42}while(0);do{if((l|0)==42){w=0;ue(182,e|0);A=w;w=0;if(A&1){f=je()|0;break}i=t[v>>2]|0;r=i;if(i){f=t[g>>2]|0;if((f|0)!=(i|0))t[g>>2]=f+(~((f+-4-r|0)>>>2)<<2);Bp(i)}i=t[y>>2]|0;if(!i){c=p;return}r=t[M>>2]|0;if((r|0)!=(i|0))t[M>>2]=r+(~(((r+-6-i|0)>>>0)/6|0)*6|0);Bp(i);c=p;return}}while(0);i=t[v>>2]|0;r=i;if(i){a=t[g>>2]|0;if((a|0)!=(i|0))t[g>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}i=t[y>>2]|0;if(!i)Qe(f|0);r=t[M>>2]|0;if((r|0)!=(i|0))t[M>>2]=r+(~(((r+-6-i|0)>>>0)/6|0)*6|0);Bp(i);Qe(f|0)}function Jf(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0;T=e+180|0;if((t[T>>2]|0)<=0)return;R=e+4608|0;C=e+4604|0;P=e+4612|0;S=0;while(1){M=S+-1|0;o=t[R>>2]|0;u=t[C>>2]|0;i=S+1|0;l=s[u+(S*6|0)>>1]|0;E=t[P>>2]|0;c=s[u+(M*6|0)>>1]|0;h=l-c|0;d=s[o+(M*6|0)>>1]|0;b=c-d|0;_=((((f[E+((s[u+(i*6|0)>>1]|0)-l)>>0]|0)*9|0)+(f[E+h>>0]|0)|0)*9|0)+(f[E+b>>0]|0)|0;a=s[u+(S*6|0)+2>>1]|0;k=s[u+(M*6|0)+2>>1]|0;w=a-k|0;m=s[o+(M*6|0)+2>>1]|0;v=k-m|0;p=((((f[E+((s[u+(i*6|0)+2>>1]|0)-a)>>0]|0)*9|0)+(f[E+w>>0]|0)|0)*9|0)+(f[E+v>>0]|0)|0;r=s[u+(S*6|0)+4>>1]|0;g=s[u+(M*6|0)+4>>1]|0;y=r-g|0;M=s[o+(M*6|0)+4>>1]|0;A=g-M|0;E=((((f[E+((s[u+(i*6|0)+4>>1]|0)-r)>>0]|0)*9|0)+(f[E+y>>0]|0)|0)*9|0)+(f[E+A>>0]|0)|0;if(!(p|_|E))i=(Qf(e,S,0)|0)+S|0;else{u=s[o+(S*6|0)>>1]|0;o=l-d>>31;if((o^b|0)>=0)if((o^h|0)<0)l=d;else l=d-c+l|0;u=en(e,_,u,l,0)|0;o=s[(t[R>>2]|0)+(S*6|0)+2>>1]|0;l=a-m>>31;if((l^v|0)>=0)if((l^w|0)<0)a=m;else a=m-k+a|0;l=en(e,p,o,a,0)|0;o=s[(t[R>>2]|0)+(S*6|0)+4>>1]|0;a=r-M>>31;if((a^A|0)>=0)if((a^y|0)<0)r=M;else r=M-g+r|0;A=en(e,E,o,r,0)|0;E=t[R>>2]|0;n[E+(S*6|0)>>1]=u;n[E+(S*6|0)+2>>1]=l;n[E+(S*6|0)+4>>1]=A}if((i|0)<(t[T>>2]|0))S=i;else break}return}function Qf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0;T=c;c=c+48|0;w=T+30|0;k=T+24|0;_=T+18|0;m=T+12|0;M=T+6|0;A=T;E=(t[e+180>>2]|0)-i|0;S=t[e+4608>>2]|0;v=t[e+4604>>2]|0;y=i+-1|0;p=n[S+(y*6|0)>>1]|0;g=n[S+(y*6|0)+2>>1]|0;y=n[S+(y*6|0)+4>>1]|0;r=p&65535;f=e+144|0;a=g&65535;l=y&65535;b=0;while(1){h=b+i|0;o=S+(h*6|0)|0;u=S+(h*6|0)+2|0;h=S+(h*6|0)+4|0;R=(s[o>>1]|0)-r|0;d=t[f>>2]|0;if((((R|0)>-1?R:0-R|0)|0)>(d|0))break;R=(s[u>>1]|0)-a|0;if((((R|0)>-1?R:0-R|0)|0)>(d|0))break;R=(s[h>>1]|0)-l|0;if((((R|0)>-1?R:0-R|0)|0)>(d|0))break;n[o>>1]=p;n[u>>1]=g;n[h>>1]=y;b=b+1|0;if((b|0)==(E|0)){b=E;break}}a=(b|0)==(E|0);l=e+4600|0;f=t[36476+(t[l>>2]<<2)>>2]|0;if((1<<f|0)>(b|0))r=b;else{r=b;do{Bf(e,1,1);f=t[l>>2]|0;r=r-(1<<t[36476+(f<<2)>>2])|0;f=(f|0)>30?31:f+1|0;t[l>>2]=f;f=t[36476+(f<<2)>>2]|0}while((r|0)>=(1<<f|0))}if(!a){Bf(e,r,f+1|0);i=b+i|0;R=S+(i*6|0)|0;n[M>>1]=n[R>>1]|0;n[M+2>>1]=n[R+2>>1]|0;n[M+4>>1]=n[R+4>>1]|0;n[A>>1]=p;n[A+2>>1]=g;n[A+4>>1]=y;i=v+(i*6|0)|0;n[_>>1]=n[M>>1]|0;n[_+2>>1]=n[M+2>>1]|0;n[_+4>>1]=n[M+4>>1]|0;n[k>>1]=n[A>>1]|0;n[k+2>>1]=n[A+2>>1]|0;n[k+4>>1]=n[A+4>>1]|0;n[w>>1]=n[i>>1]|0;n[w+2>>1]=n[i+2>>1]|0;n[w+4>>1]=n[i+4>>1]|0;fn(m,e,_,k,w);n[R>>1]=n[m>>1]|0;n[R+2>>1]=n[m+2>>1]|0;n[R+4>>1]=n[m+4>>1]|0;R=t[l>>2]|0;t[l>>2]=(R|0)<1?0:R+-1|0;R=b+1|0;c=T;return R|0}if(!r){R=E;c=T;return R|0}Bf(e,1,1);R=E;c=T;return R|0}function en(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0;w=i>>31;s=(w^i)-w|0;_=e+196+(s*12|0)+10|0;l=n[_>>1]|0;b=e+196+(s*12|0)|0;a=t[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){i=5;while(1)if((l<<i|0)<(a|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;h=e+196+(s*12|0)+8|0;a=(n[h>>1]^w)-w+f|0;k=e+136|0;f=t[k>>2]|0;if((a&f|0)==(a|0))c=a;else c=f&~(a>>31);a=(r-c^w)-w|0;u=e+144|0;f=t[u>>2]|0;if((a|0)>0)a=(a+f|0)/(f<<1|1|0)|0;else a=(a-f|0)/(f<<1|1|0)|0;d=e+140|0;o=t[d>>2]|0;r=((a|0)<0?o:0)+a|0;o=r-((r|0)<((o+1|0)/2|0|0)?0:o)|0;s=e+196+(s*12|0)+4|0;if(!(f|i))a=(t[s>>2]<<1)+-1+l>>31;else a=0;f=a^o;rn(e,i,f>>30^f<<1,t[e+156>>2]|0);f=t[e+160>>2]|0;i=(t[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;a=(t[s>>2]|0)+(re(t[u>>2]<<1|1,o)|0)|0;r=n[_>>1]|0;if((r|0)==(f|0)){i=i>>1;a=a>>1;r=f>>1}t[b>>2]=i;f=r+1|0;n[_>>1]=f;i=f+a|0;if((i|0)>=1){if((a|0)>0){a=a-f|0;_=n[h>>1]|0;n[h>>1]=(_<<16>>16<127&1)+(_&65535);a=(a|0)>0?0:a}}else{a=n[h>>1]|0;n[h>>1]=(a&65535)-(a<<16>>16>-128&1);a=(i|0)>(~r|0)?i:0-r|0}t[s>>2]=a;f=t[u>>2]|0;r=f<<1|1;i=(re(r,(o^w)-w|0)|0)+c|0;if((i|0)>=(0-f|0)){a=t[k>>2]|0;if((a+f|0)<(i|0))i=i-(re(t[d>>2]|0,r)|0)|0}else{i=(re(t[d>>2]|0,r)|0)+i|0;a=t[k>>2]|0}if((i&a|0)==(i|0)){w=i;w=w&65535;return w|0}w=a&~(i>>31);w=w&65535;return w|0}function rn(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0;n=r>>i;a=e+148|0;s=f-(t[a>>2]|0)|0;if((n|0)<(s+-1|0)){if((n|0)>30){f=(n|0)/2|0;Bf(e,0,f);n=n-f|0}Bf(e,1,n+1|0);Bf(e,(1<<i)+-1&r,i);return}if((s|0)>31){Bf(e,0,31);Bf(e,1,f+-31-(t[a>>2]|0)|0)}else Bf(e,1,s);i=t[a>>2]|0;Bf(e,(1<<i)+-1&r+-1,i);return}function fn(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0;w=i+136|0;b=s[a>>1]|0;_=b-(s[f>>1]|0)>>31|1;l=re(_,(s[r>>1]|0)-b|0)|0;h=i+144|0;o=t[h>>2]|0;if((l|0)>0)l=(l+o|0)/(o<<1|1|0)|0;else l=(l-o|0)/(o<<1|1|0)|0;y=i+140|0;c=t[y>>2]|0;u=((l|0)<0?c:0)+l|0;c=u-((u|0)<((c+1|0)/2|0|0)?0:c)|0;u=i+4576|0;nn(i,u,c);v=s[a+2>>1]|0;p=v-(s[f+2>>1]|0)>>31|1;l=re(p,(s[r+2>>1]|0)-v|0)|0;o=t[h>>2]|0;if((l|0)>0)l=(l+o|0)/(o<<1|1|0)|0;else l=(l-o|0)/(o<<1|1|0)|0;k=t[y>>2]|0;g=((l|0)<0?k:0)+l|0;k=g-((g|0)<((k+1|0)/2|0|0)?0:k)|0;nn(i,u,k);g=s[a+4>>1]|0;m=g-(s[f+4>>1]|0)>>31|1;l=re(m,(s[r+4>>1]|0)-g|0)|0;o=t[h>>2]|0;if((l|0)>0)l=(l+o|0)/(o<<1|1|0)|0;else l=(l-o|0)/(o<<1|1|0)|0;d=t[y>>2]|0;l=((l|0)<0?d:0)+l|0;d=l-((l|0)<((d+1|0)/2|0|0)?0:d)|0;nn(i,u,d);u=t[h>>2]|0;h=u<<1|1;l=(re(re(h,c)|0,_)|0)+b|0;r=0-u|0;if((l|0)>=(r|0)){o=t[w>>2]|0;if((o+u|0)<(l|0)){l=l-(re(t[y>>2]|0,h)|0)|0;f=o}else f=o}else{l=(re(t[y>>2]|0,h)|0)+l|0;f=t[w>>2]|0}if((l&f|0)!=(l|0))l=f&~(l>>31);a=l&65535;l=(re(re(h,k)|0,p)|0)+v|0;if((l|0)>=(r|0)){if((f+u|0)<(l|0))l=l-(re(t[y>>2]|0,h)|0)|0}else l=(re(t[y>>2]|0,h)|0)+l|0;if((l&f|0)!=(l|0))l=f&~(l>>31);o=l&65535;l=(re(re(h,d)|0,m)|0)+g|0;if((l|0)>=(r|0)){if((f+u|0)<(l|0))l=l-(re(t[y>>2]|0,h)|0)|0}else l=(re(t[y>>2]|0,h)|0)+l|0;if((l&f|0)==(l|0)){y=l;y=y&65535;n[e>>1]=a;g=e+2|0;n[g>>1]=o;e=e+4|0;n[e>>1]=y;return}y=f&~(l>>31);y=y&65535;n[e>>1]=a;g=e+2|0;n[g>>1]=o;e=e+4|0;n[e>>1]=y;return}function nn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=t[h>>2]|0;s=(re(o>>>1,c)|0)+(t[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;rn(e,s,n,(t[e+156>>2]|0)+-1-(t[36476+(t[e+4600>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;f[e>>0]=(a[e>>0]|0)+1}n=(n+1-(t[h>>2]|0)>>1)+(t[i>>2]|0)|0;t[i>>2]=n;s=f[d>>0]|0;if(s<<24>>24!=(f[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}t[i>>2]=n>>1;e=(s&255)>>>1;f[d>>0]=e;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}function tn(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0;_=c;c=c+32|0;n=_;b=e+144|0;e:do{if(!(t[b>>2]|0)){r=t[e+136>>2]|0;i=e+152|0;if((((r|0)==((1<<t[i>>2])+-1|0)?(op(n,r,0),(t[n+4>>2]|0)==(t[e+184>>2]|0)):0)?(t[n+8>>2]|0)==(t[e+188>>2]|0):0)?(t[n+12>>2]|0)==(t[e+192>>2]|0):0)switch(t[i>>2]|0){case 8:{b=t[8900]|0;t[e+4612>>2]=b+(((t[8901]|0)-b|0)>>>1);c=_;return}case 10:{b=t[8903]|0;t[e+4612>>2]=b+(((t[8904]|0)-b|0)>>>1);c=_;return}case 12:{b=t[8906]|0;t[e+4612>>2]=b+(((t[8907]|0)-b|0)>>>1);c=_;return}case 16:{b=t[8909]|0;t[e+4612>>2]=b+(((t[8910]|0)-b|0)>>>1);c=_;return}default:break e}}else i=e+152|0}while(0);d=1<<t[i>>2];r=e+4616|0;n=d<<1;a=e+4620|0;s=t[a>>2]|0;i=t[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)t[a>>2]=o}else{Yf(r,n-l|0);i=t[r>>2]|0}h=e+4612|0;t[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=_;return}o=e+192|0;u=e+188|0;l=e+184|0;s=i;do{i=t[o>>2]|0;if((s|0)>(0-i|0)){r=t[u>>2]|0;if((s|0)>(0-r|0)){n=t[l>>2]|0;if((s|0)>(0-n|0)){a=t[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;f[(t[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=_;return}function an(e){e=e|0;var i=0,r=0;t[e>>2]=36024;i=t[e+4616>>2]|0;if(i){r=e+4620|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function sn(e){e=e|0;var i=0,r=0;t[e>>2]=36024;i=t[e+4616>>2]|0;if(i){r=e+4620|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function ln(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,t[e+136>>2]|0,t[e+144>>2]|0);u=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[h+8>>2]|0:l;s=t[i+12>>2]|0;s=(s|0)==0?t[h+12>>2]|0:s;r=t[i+16>>2]|0;a=t[h+16>>2]|0;t[e+184>>2]=(u|0)==0?t[h+4>>2]|0:u;t[e+188>>2]=l;t[e+192>>2]=s;Wn(e);s=e+140|0;i=(t[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{t[e+196+(l*12|0)>>2]=i;t[e+196+(l*12|0)+4>>2]=0;n[e+196+(l*12|0)+8>>1]=0;n[e+196+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(t[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;t[e+4576>>2]=u;t[e+4580>>2]=0;f[e+4584>>0]=h;f[e+4585>>0]=1;f[e+4586>>0]=0;t[e+4588>>2]=u;t[e+4592>>2]=1;f[e+4596>>0]=h;f[e+4597>>0]=1;f[e+4598>>0]=0;t[e+4600>>2]=0;c=o;return}function on(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=t[i>>2]|0;t[i>>2]=0;i=t[u>>2]|0;t[u>>2]=o;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);t[h>>2]=0;t[h+4>>2]=a;u=r+8|0;t[h+8>>2]=t[u>>2];if(a){i=Lp(4624)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{t[s>>2]=t[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{t[s>>2]=0;s=s+4|0}while((s|0)<(o|0));t[i>>2]=35800;t[i+128>>2]=t[e+136>>2];t[i+132>>2]=t[e+140>>2];t[i+136>>2]=t[e+144>>2];t[i+140>>2]=t[e+148>>2];t[i+144>>2]=t[e+152>>2];t[i+148>>2]=t[e+156>>2];t[i+152>>2]=t[e+160>>2];s=i+156|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[i+172>>2]=t[a>>2];t[i+176>>2]=0;t[i+180>>2]=0;t[i+184>>2]=0;s=i+4568|0;a=i+188|0;do{t[a>>2]=0;t[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;t[s>>2]=0;t[s+4>>2]=0;n[s+8>>1]=0;f[s+10>>0]=0;o=i+4580|0;t[o>>2]=0;t[o+4>>2]=0;n[o+8>>1]=0;f[o+10>>0]=0;o=i+4592|0;t[o>>2]=0;t[o+4>>2]=0;t[o+8>>2]=0;t[o+12>>2]=0;t[o+16>>2]=0;t[o+20>>2]=0;t[o+24>>2]=0;f[o+28>>0]=0;if(!(t[i+28>>2]|0))t[i+20>>2]=1;a=t[l>>2]|0;t[l>>2]=i;if(a){tM[t[(t[a>>2]|0)+4>>2]&255](a);i=t[l>>2]|0}Cf(i,h)}h=e+100|0;t[h>>2]=32;t[e+96>>2]=0;i=t[r>>2]|0;if(!i){t[e+108>>2]=t[r+4>>2];t[e+104>>2]=t[u>>2];Yn(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}t[e+132>>2]=i;s=e+120|0;u=e+124|0;a=t[u>>2]|0;i=t[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){t[u>>2]=d;a=d}}else{Pf(s,4e3-o|0);i=t[s>>2]|0;l=i;a=t[u>>2]|0}t[e+108>>2]=l;t[e+104>>2]=a-i;Yn(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function un(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+32>>2]|0)!=0?(t[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(44,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+16>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(45,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(46,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(47,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+20>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=3;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=3;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function cn(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;t[e>>2]=36712;t[e+4>>2]=r;h=e+8|0;n=t[r>>2]|0;u=r+16|0;l=t[u>>2]|0;s=re(l,n)|0;t[h>>2]=0;d=e+12|0;t[d>>2]=0;t[e+16>>2]=0;do{if(!s)s=l;else{if(!((s|0)<0?(w=0,ue(178,h|0),l=w,w=0,l&1):0))c=4;if((c|0)==4?(w=0,o=de(67,s|0)|0,l=w,w=0,!(l&1)):0){t[d>>2]=o;t[h>>2]=o;t[e+16>>2]=o+s;n=o;do{f[n>>0]=0;n=(t[d>>2]|0)+1|0;t[d>>2]=n;s=s+-1|0}while((s|0)!=0);s=t[u>>2]|0;n=t[r>>2]|0;break}n=je()|0;a=t[h>>2]|0;if(a){if((t[d>>2]|0)!=(a|0))t[d>>2]=a;Bp(a)}d=n;Qe(d|0)}}while(0);l=e+20|0;n=re(s,n)|0;t[l>>2]=0;s=e+24|0;t[s>>2]=0;t[e+28>>2]=0;if(!n){d=e+36|0;t[d>>2]=t[i>>2];t[d+4>>2]=t[i+4>>2];t[d+8>>2]=t[i+8>>2];return}if(!((n|0)<0?(w=0,ue(178,l|0),r=w,w=0,r&1):0))c=15;if((c|0)==15?(w=0,a=de(67,n|0)|0,c=w,w=0,!(c&1)):0){t[s>>2]=a;t[l>>2]=a;t[e+28>>2]=a+n;do{f[a>>0]=0;a=(t[s>>2]|0)+1|0;t[s>>2]=a;n=n+-1|0}while((n|0)!=0);d=e+36|0;t[d>>2]=t[i>>2];t[d+4>>2]=t[i+4>>2];t[d+8>>2]=t[i+8>>2];return}n=je()|0;a=t[l>>2]|0;if(a){if((t[s>>2]|0)!=(a|0))t[s>>2]=a;Bp(a)}a=t[h>>2]|0;if(!a){d=n;Qe(d|0)}if((t[d>>2]|0)!=(a|0))t[d>>2]=a;Bp(a);d=n;Qe(d|0)}function hn(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;t[e>>2]=36688;t[e+4>>2]=r;h=e+8|0;n=t[r>>2]|0;u=r+16|0;l=t[u>>2]|0;s=re(l,n)|0;t[h>>2]=0;d=e+12|0;t[d>>2]=0;t[e+16>>2]=0;do{if(!s)s=l;else{if(!((s|0)<0?(w=0,ue(178,h|0),l=w,w=0,l&1):0))c=4;if((c|0)==4?(w=0,o=de(67,s|0)|0,l=w,w=0,!(l&1)):0){t[d>>2]=o;t[h>>2]=o;t[e+16>>2]=o+s;n=o;do{f[n>>0]=0;n=(t[d>>2]|0)+1|0;t[d>>2]=n;s=s+-1|0}while((s|0)!=0);s=t[u>>2]|0;n=t[r>>2]|0;break}n=je()|0;a=t[h>>2]|0;if(a){if((t[d>>2]|0)!=(a|0))t[d>>2]=a;Bp(a)}d=n;Qe(d|0)}}while(0);l=e+20|0;n=re(s,n)|0;t[l>>2]=0;s=e+24|0;t[s>>2]=0;t[e+28>>2]=0;if(!n){d=e+36|0;t[d>>2]=t[i>>2];t[d+4>>2]=t[i+4>>2];t[d+8>>2]=t[i+8>>2];return}if(!((n|0)<0?(w=0,ue(178,l|0),r=w,w=0,r&1):0))c=15;if((c|0)==15?(w=0,a=de(67,n|0)|0,c=w,w=0,!(c&1)):0){t[s>>2]=a;t[l>>2]=a;t[e+28>>2]=a+n;do{f[a>>0]=0;a=(t[s>>2]|0)+1|0;t[s>>2]=a;n=n+-1|0}while((n|0)!=0);d=e+36|0;t[d>>2]=t[i>>2];t[d+4>>2]=t[i+4>>2];t[d+8>>2]=t[i+8>>2];return}n=je()|0;a=t[l>>2]|0;if(a){if((t[s>>2]|0)!=(a|0))t[s>>2]=a;Bp(a)}a=t[h>>2]|0;if(!a){d=n;Qe(d|0)}if((t[d>>2]|0)!=(a|0))t[d>>2]=a;Bp(a);d=n;Qe(d|0)}function dn(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;t[e>>2]=36664;t[e+4>>2]=r;h=e+8|0;n=t[r>>2]|0;u=r+16|0;l=t[u>>2]|0;s=re(l,n)|0;t[h>>2]=0;d=e+12|0;t[d>>2]=0;t[e+16>>2]=0;do{if(!s)s=l;else{if(!((s|0)<0?(w=0,ue(178,h|0),l=w,w=0,l&1):0))c=4;if((c|0)==4?(w=0,o=de(67,s|0)|0,l=w,w=0,!(l&1)):0){t[d>>2]=o;t[h>>2]=o;t[e+16>>2]=o+s;n=o;do{f[n>>0]=0;n=(t[d>>2]|0)+1|0;t[d>>2]=n;s=s+-1|0}while((s|0)!=0);s=t[u>>2]|0;n=t[r>>2]|0;break}n=je()|0;a=t[h>>2]|0;if(a){if((t[d>>2]|0)!=(a|0))t[d>>2]=a;Bp(a)}d=n;Qe(d|0)}}while(0);l=e+20|0;n=re(s,n)|0;t[l>>2]=0;s=e+24|0;t[s>>2]=0;t[e+28>>2]=0;if(!n){d=e+36|0;t[d>>2]=t[i>>2];t[d+4>>2]=t[i+4>>2];t[d+8>>2]=t[i+8>>2];return}if(!((n|0)<0?(w=0,ue(178,l|0),r=w,w=0,r&1):0))c=15;if((c|0)==15?(w=0,a=de(67,n|0)|0,c=w,w=0,!(c&1)):0){t[s>>2]=a;t[l>>2]=a;t[e+28>>2]=a+n;do{f[a>>0]=0;a=(t[s>>2]|0)+1|0;t[s>>2]=a;n=n+-1|0}while((n|0)!=0);d=e+36|0;t[d>>2]=t[i>>2];t[d+4>>2]=t[i+4>>2];t[d+8>>2]=t[i+8>>2];return}n=je()|0;a=t[l>>2]|0;if(a){if((t[s>>2]|0)!=(a|0))t[s>>2]=a;Bp(a)}a=t[h>>2]|0;if(!a){d=n;Qe(d|0)}if((t[d>>2]|0)!=(a|0))t[d>>2]=a;Bp(a);d=n;Qe(d|0)}function bn(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;t[e>>2]=36640;t[e+4>>2]=r;h=e+8|0;n=t[r>>2]|0;u=r+16|0;l=t[u>>2]|0;s=re(l,n)|0;t[h>>2]=0;d=e+12|0;t[d>>2]=0;t[e+16>>2]=0;do{if(!s)s=l;else{if(!((s|0)<0?(w=0,ue(178,h|0),l=w,w=0,l&1):0))c=4;if((c|0)==4?(w=0,o=de(67,s|0)|0,l=w,w=0,!(l&1)):0){t[d>>2]=o;t[h>>2]=o;t[e+16>>2]=o+s;n=o;do{f[n>>0]=0;n=(t[d>>2]|0)+1|0;t[d>>2]=n;s=s+-1|0}while((s|0)!=0);s=t[u>>2]|0;n=t[r>>2]|0;break}n=je()|0;a=t[h>>2]|0;if(a){if((t[d>>2]|0)!=(a|0))t[d>>2]=a;Bp(a)}d=n;Qe(d|0)}}while(0);l=e+20|0;n=re(s,n)|0;t[l>>2]=0;s=e+24|0;t[s>>2]=0;t[e+28>>2]=0;if(!n){d=e+36|0;t[d>>2]=t[i>>2];t[d+4>>2]=t[i+4>>2];t[d+8>>2]=t[i+8>>2];return}if(!((n|0)<0?(w=0,ue(178,l|0),r=w,w=0,r&1):0))c=15;if((c|0)==15?(w=0,a=de(67,n|0)|0,c=w,w=0,!(c&1)):0){t[s>>2]=a;t[l>>2]=a;t[e+28>>2]=a+n;do{f[a>>0]=0;a=(t[s>>2]|0)+1|0;t[s>>2]=a;n=n+-1|0}while((n|0)!=0);d=e+36|0;t[d>>2]=t[i>>2];t[d+4>>2]=t[i+4>>2];t[d+8>>2]=t[i+8>>2];return}n=je()|0;a=t[l>>2]|0;if(a){if((t[s>>2]|0)!=(a|0))t[s>>2]=a;Bp(a)}a=t[h>>2]|0;if(!a){d=n;Qe(d|0)}if((t[d>>2]|0)!=(a|0))t[d>>2]=a;Bp(a);d=n;Qe(d|0)}function _n(e){e=e|0;var i=0,r=0;t[e>>2]=36640;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=t[e+8>>2]|0;if(!r)return;i=e+12|0;if((t[i>>2]|0)!=(r|0))t[i>>2]=r;Bp(r);return}function kn(e){e=e|0;var i=0,r=0;t[e>>2]=36640;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}i=t[e+8>>2]|0;if(!i){Bp(e);return}r=e+12|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i);Bp(e);return}function wn(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0;a=e+36|0;if(!(t[a>>2]|0)){a=e+40|0;gn(e,i,t[a>>2]|0,r,n);t[a>>2]=(t[a>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}s=re(t[(t[e+4>>2]|0)+16>>2]|0,r)|0;l=e+20|0;gn(e,i,t[l>>2]|0,r,n);e=t[a>>2]|0;if((uM[t[(t[e>>2]|0)+48>>2]&63](e,t[l>>2]|0,s)|0)==(s|0))return;a=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,a|0,3,35648);l=w;w=0;if(l&1){l=je()|0;He(a|0);Qe(l|0)}else bi(a|0,824,96)}function mn(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0;n=t[e+36>>2]|0;if(!n){n=e+40|0;vn(e,t[n>>2]|0,i,r,f);t[n>>2]=(t[n>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}else{pn(e,n,i,r,f);return}}function vn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0;u=e+4|0;l=t[u>>2]|0;if(!(f[l+32>>0]|0))u=i;else{o=e+8|0;Em(t[o>>2]|0,i|0,n*3|0)|0;l=t[u>>2]|0;i=t[l+16>>2]|0;if((n|0)>0){l=t[o>>2]|0;e=0;while(1){c=l+2|0;h=f[l>>0]|0;f[l>>0]=f[c>>0]|0;f[c>>0]=h;e=e+1|0;if((e|0)==(n|0))break;else l=l+i|0}l=t[u>>2]|0}u=t[o>>2]|0}switch(t[l+16>>2]|0){case 3:{if((t[l+24>>2]|0)==2){if((n|0)>0)l=0;else return;do{o=a[u+(l*3|0)+1>>0]|0;s=128-o+(a[u+(l*3|0)+2>>0]|0)|0;c=(a[u+(l*3|0)>>0]|0)-o+128|0;h=r+(l*3|0)|0;f[h>>0]=o+192+(((s&255)+(c&255)|0)>>>2);f[h+1>>0]=s;f[h+2>>0]=c;l=l+1|0}while((l|0)!=(n|0));return}l=(s|0)<(n|0)?s:n;if((l|0)<=0)return;e=s<<1;i=0;do{n=a[u+(i*3|0)+1>>0]|0;c=128-n+(a[u+(i*3|0)+2>>0]|0)|0;h=(a[u+(i*3|0)>>0]|0)-n+128|0;f[r+i>>0]=n+192+(((c&255)+(h&255)|0)>>>2);f[r+(i+s)>>0]=c;f[r+(i+e)>>0]=h;i=i+1|0}while((i|0)!=(l|0));return}case 4:{if((t[l+24>>2]|0)!=1)return;l=(s|0)<(n|0)?s:n;if((l|0)<=0)return;e=s<<1;i=s*3|0;o=0;do{h=f[u+(o<<2)+3>>0]|0;d=a[u+(o<<2)+1>>0]|0;n=128-d+(a[u+(o<<2)+2>>0]|0)|0;c=(a[u+(o<<2)>>0]|0)-d+128|0;f[r+o>>0]=d+192+(((n&255)+(c&255)|0)>>>2);f[r+(o+s)>>0]=n;f[r+(o+e)>>0]=c;f[r+(o+i)>>0]=h;o=o+1|0}while((o|0)!=(l|0));return}default:return}}function pn(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0;d=c;c=c+176|0;b=d+152|0;m=d+16|0;_=d;l=re(t[(t[e+4>>2]|0)+16>>2]|0,n)|0;u=e+20|0;s=t[u>>2]|0;if(!l){m=s;vn(e,m,r,n,a);c=d;return}while(1){o=uM[t[(t[i>>2]|0)+32>>2]&63](i,s,l)|0;if(!o)break;s=t[u>>2]|0;if((l|0)==(o|0)){h=26;break}else l=l-o|0}if((h|0)==26){vn(e,s,r,n,a);c=d;return}r=m+56|0;u=m+4|0;t[m>>2]=36160;t[r>>2]=36180;w=0;ce(62,m+56|0,u|0);d=w;w=0;if(d&1){m=je()|0;nd(r);Qe(m|0)}t[m+128>>2]=0;t[m+132>>2]=-1;t[m>>2]=36200;t[m+56>>2]=36220;w=0;ue(180,u|0);d=w;w=0;do{if(d&1)s=je()|0;else{t[u>>2]=36236;i=m+36|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[m+52>>2]=16;t[b>>2]=0;t[b+4>>2]=0;t[b+8>>2]=0;w=0;ce(63,u|0,b|0);d=w;w=0;if(d&1){s=je()|0;xh(b);xh(i);cd(u);break}xh(b);w=0;s=_e(28,m|0,49029,57)|0;b=w;w=0;if(!(b&1)?(w=0,pe(36,s|0,0)|0,b=w,w=0,!(b&1)):0){o=Ue(16)|0;w=0;ce(64,_|0,u|0);b=w;w=0;if(!(b&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,o|0,3,35648,_|0);b=w;w=0;if(b&1)l=1;else{w=0;Ee(6,o|0,824,96);w=0;l=0}s=je()|0;xh(_);if(!l){_=s;t[m>>2]=36200;t[r>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(r);Qe(_|0)}}else s=je()|0;He(o|0);_=s;t[m>>2]=36200;t[r>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(r);Qe(_|0)}_=je()|0;t[m>>2]=36200;t[r>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(r);Qe(_|0)}}while(0);m=s;nd(r);Qe(m|0)}function gn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0;c=e+4|0;e=t[c>>2]|0;e:do{switch(t[e+16>>2]|0){case 3:{if((t[e+24>>2]|0)==2){if((n|0)>0)e=0;else break e;while(1){o=a[i+(e*3|0)+1>>0]|0;l=a[i+(e*3|0)+2>>0]|0;u=(a[i+(e*3|0)>>0]|0)-((l+o|0)>>>2)+64|0;s=r+(e*3|0)|0;f[s>>0]=l+128+u;f[s+1>>0]=u;f[s+2>>0]=o+128+u;e=e+1|0;if((e|0)==(n|0))break e}}e=(n|0)<(s|0)?n:s;if((e|0)>0){l=s<<1;o=0;do{d=a[i+(o+s)>>0]|0;b=a[i+(o+l)>>0]|0;h=(a[i+o>>0]|0)-((b+d|0)>>>2)+64|0;u=r+(o*3|0)|0;f[u>>0]=b+128+h;f[u+1>>0]=h;f[u+2>>0]=d+128+h;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((t[e+24>>2]|0)==1?(u=(n|0)<(s|0)?n:s,(u|0)>0):0){e=s<<1;l=s*3|0;o=0;do{h=a[i+(o+s)>>0]|0;_=a[i+(o+e)>>0]|0;d=(a[i+o>>0]|0)-((_+h|0)>>>2)+64|0;b=r+(o<<2)|0;d=d<<8&65280|a[i+(o+l)>>0]<<24|_+128+d&255|h+128+d<<16&16711680;f[b>>0]=d;f[b+1>>0]=d>>8;f[b+2>>0]=d>>16;f[b+3>>0]=d>>24;o=o+1|0}while((o|0)!=(u|0))}break}default:{}}}while(0);e=t[c>>2]|0;if(!(f[e+32>>0]|0))return;o=t[e+16>>2]|0;if((n|0)>0){e=r;l=0}else return;while(1){_=e+2|0;b=f[e>>0]|0;f[e>>0]=f[_>>0]|0;f[_>>0]=b;l=l+1|0;if((l|0)==(n|0))break;else e=e+o|0}return}function yn(e){e=e|0;var i=0,r=0;t[e>>2]=36664;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=t[e+8>>2]|0;if(!r)return;i=e+12|0;if((t[i>>2]|0)!=(r|0))t[i>>2]=r;Bp(r);return}function Mn(e){e=e|0;var i=0,r=0;t[e>>2]=36664;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}i=t[e+8>>2]|0;if(!i){Bp(e);return}r=e+12|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i);Bp(e);return}function An(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0;a=e+36|0;if(!(t[a>>2]|0)){a=e+40|0;Rn(e,i,t[a>>2]|0,r,n);t[a>>2]=(t[a>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}s=re(t[(t[e+4>>2]|0)+16>>2]|0,r)|0;l=e+20|0;Rn(e,i,t[l>>2]|0,r,n);e=t[a>>2]|0;if((uM[t[(t[e>>2]|0)+48>>2]&63](e,t[l>>2]|0,s)|0)==(s|0))return;a=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,a|0,3,35648);l=w;w=0;if(l&1){l=je()|0;He(a|0);Qe(l|0)}else bi(a|0,824,96)}function En(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0;n=t[e+36>>2]|0;if(!n){n=e+40|0;Sn(e,t[n>>2]|0,i,r,f);t[n>>2]=(t[n>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}else{Tn(e,n,i,r,f);return}}function Sn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0;u=e+4|0;l=t[u>>2]|0;if(!(f[l+32>>0]|0))u=i;else{o=e+8|0;Em(t[o>>2]|0,i|0,n*3|0)|0;l=t[u>>2]|0;i=t[l+16>>2]|0;if((n|0)>0){l=t[o>>2]|0;e=0;while(1){c=l+2|0;h=f[l>>0]|0;f[l>>0]=f[c>>0]|0;f[c>>0]=h;e=e+1|0;if((e|0)==(n|0))break;else l=l+i|0}l=t[u>>2]|0}u=t[o>>2]|0}switch(t[l+16>>2]|0){case 3:{if((t[l+24>>2]|0)==2){if((n|0)>0)l=0;else return;do{i=a[u+(l*3|0)>>0]|0;s=f[u+(l*3|0)+1>>0]|0;o=s&255;c=(a[u+(l*3|0)+2>>0]|0)+128-((o+i|0)>>>1)&255;h=r+(l*3|0)|0;f[h>>0]=i+128-o;f[h+1>>0]=s;f[h+2>>0]=c;l=l+1|0}while((l|0)!=(n|0));return}l=(s|0)<(n|0)?s:n;if((l|0)<=0)return;e=s<<1;i=0;do{c=f[u+(i*3|0)+1>>0]|0;o=a[u+(i*3|0)>>0]|0;n=c&255;h=(a[u+(i*3|0)+2>>0]|0)+128-((n+o|0)>>>1)&255;f[r+i>>0]=o+128-n;f[r+(i+s)>>0]=c;f[r+(i+e)>>0]=h;i=i+1|0}while((i|0)!=(l|0));return}case 4:{if((t[l+24>>2]|0)!=1)return;l=(s|0)<(n|0)?s:n;if((l|0)<=0)return;e=s<<1;i=s*3|0;o=0;do{n=f[u+(o<<2)+1>>0]|0;h=f[u+(o<<2)+3>>0]|0;b=a[u+(o<<2)>>0]|0;d=n&255;c=(a[u+(o<<2)+2>>0]|0)+128-((d+b|0)>>>1)&255;f[r+o>>0]=b+128-d;f[r+(o+s)>>0]=n;f[r+(o+e)>>0]=c;f[r+(o+i)>>0]=h;o=o+1|0}while((o|0)!=(l|0));return}default:return}}function Tn(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0;d=c;c=c+176|0;b=d+152|0;m=d+16|0;_=d;l=re(t[(t[e+4>>2]|0)+16>>2]|0,n)|0;u=e+20|0;s=t[u>>2]|0;if(!l){m=s;Sn(e,m,r,n,a);c=d;return}while(1){o=uM[t[(t[i>>2]|0)+32>>2]&63](i,s,l)|0;if(!o)break;s=t[u>>2]|0;if((l|0)==(o|0)){h=26;break}else l=l-o|0}if((h|0)==26){Sn(e,s,r,n,a);c=d;return}r=m+56|0;u=m+4|0;t[m>>2]=36160;t[r>>2]=36180;w=0;ce(62,m+56|0,u|0);d=w;w=0;if(d&1){m=je()|0;nd(r);Qe(m|0)}t[m+128>>2]=0;t[m+132>>2]=-1;t[m>>2]=36200;t[m+56>>2]=36220;w=0;ue(180,u|0);d=w;w=0;do{if(d&1)s=je()|0;else{t[u>>2]=36236;i=m+36|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[m+52>>2]=16;t[b>>2]=0;t[b+4>>2]=0;t[b+8>>2]=0;w=0;ce(63,u|0,b|0);d=w;w=0;if(d&1){s=je()|0;xh(b);xh(i);cd(u);break}xh(b);w=0;s=_e(28,m|0,49029,57)|0;b=w;w=0;if(!(b&1)?(w=0,pe(36,s|0,0)|0,b=w,w=0,!(b&1)):0){o=Ue(16)|0;w=0;ce(64,_|0,u|0);b=w;w=0;if(!(b&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,o|0,3,35648,_|0);b=w;w=0;if(b&1)l=1;else{w=0;Ee(6,o|0,824,96);w=0;l=0}s=je()|0;xh(_);if(!l){_=s;t[m>>2]=36200;t[r>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(r);Qe(_|0)}}else s=je()|0;He(o|0);_=s;t[m>>2]=36200;t[r>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(r);Qe(_|0)}_=je()|0;t[m>>2]=36200;t[r>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(r);Qe(_|0)}}while(0);m=s;nd(r);Qe(m|0)}function Rn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0;c=e+4|0;e=t[c>>2]|0;e:do{switch(t[e+16>>2]|0){case 3:{if((t[e+24>>2]|0)==2){if((n|0)>0)e=0;else break e;while(1){o=f[i+(e*3|0)+1>>0]|0;u=o&255;l=(a[i+(e*3|0)>>0]|0)+128+u|0;u=(a[i+(e*3|0)+2>>0]|0)+128+(((l&255)+u|0)>>>1)&255;s=r+(e*3|0)|0;f[s>>0]=l;f[s+1>>0]=o;f[s+2>>0]=u;e=e+1|0;if((e|0)==(n|0))break e}}e=(n|0)<(s|0)?n:s;if((e|0)>0){l=s<<1;o=0;do{d=f[i+(o+s)>>0]|0;h=d&255;b=(a[i+o>>0]|0)+128+h|0;h=(a[i+(o+l)>>0]|0)+128+(((b&255)+h|0)>>>1)&255;u=r+(o*3|0)|0;f[u>>0]=b;f[u+1>>0]=d;f[u+2>>0]=h;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((t[e+24>>2]|0)==1?(u=(n|0)<(s|0)?n:s,(u|0)>0):0){e=s<<1;l=s*3|0;o=0;do{d=a[i+(o+s)>>0]|0;h=(a[i+o>>0]|0)+128+d&255;b=r+(o<<2)|0;d=h|d<<8|a[i+(o+l)>>0]<<24|(a[i+(o+e)>>0]|0)+128+((h+d|0)>>>1)<<16&16711680;f[b>>0]=d;f[b+1>>0]=d>>8;f[b+2>>0]=d>>16;f[b+3>>0]=d>>24;o=o+1|0}while((o|0)!=(u|0))}break}default:{}}}while(0);e=t[c>>2]|0;if(!(f[e+32>>0]|0))return;o=t[e+16>>2]|0;if((n|0)>0){e=r;l=0}else return;while(1){b=e+2|0;d=f[e>>0]|0;f[e>>0]=f[b>>0]|0;f[b>>0]=d;l=l+1|0;if((l|0)==(n|0))break;else e=e+o|0}return}function Cn(e){e=e|0;var i=0,r=0;t[e>>2]=36688;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=t[e+8>>2]|0;if(!r)return;i=e+12|0;if((t[i>>2]|0)!=(r|0))t[i>>2]=r;Bp(r);return}function Pn(e){e=e|0;var i=0,r=0;t[e>>2]=36688;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}i=t[e+8>>2]|0;if(!i){Bp(e);return}r=e+12|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i);Bp(e);return}function In(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0;a=e+36|0;if(!(t[a>>2]|0)){a=e+40|0;Bn(e,i,t[a>>2]|0,r,n);t[a>>2]=(t[a>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}s=re(t[(t[e+4>>2]|0)+16>>2]|0,r)|0;l=e+20|0;Bn(e,i,t[l>>2]|0,r,n);e=t[a>>2]|0;if((uM[t[(t[e>>2]|0)+48>>2]&63](e,t[l>>2]|0,s)|0)==(s|0))return;a=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,a|0,3,35648);l=w;w=0;if(l&1){l=je()|0;He(a|0);Qe(l|0)}else bi(a|0,824,96)}function On(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0;n=t[e+36>>2]|0;if(!n){n=e+40|0;xn(e,t[n>>2]|0,i,r,f);t[n>>2]=(t[n>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}else{Ln(e,n,i,r,f);return}}function xn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0;u=e+4|0;l=t[u>>2]|0;if(!(f[l+32>>0]|0))u=i;else{o=e+8|0;Em(t[o>>2]|0,i|0,n*3|0)|0;l=t[u>>2]|0;i=t[l+16>>2]|0;if((n|0)>0){l=t[o>>2]|0;e=0;while(1){c=l+2|0;h=f[l>>0]|0;f[l>>0]=f[c>>0]|0;f[c>>0]=h;e=e+1|0;if((e|0)==(n|0))break;else l=l+i|0}l=t[u>>2]|0}u=t[o>>2]|0}switch(t[l+16>>2]|0){case 3:{if((t[l+24>>2]|0)==2){if((n|0)>0)l=0;else return;do{s=f[u+(l*3|0)+1>>0]|0;o=s&255;c=128-o+(a[u+(l*3|0)+2>>0]|0)&255;h=r+(l*3|0)|0;f[h>>0]=(a[u+(l*3|0)>>0]|0)+128-o;f[h+1>>0]=s;f[h+2>>0]=c;l=l+1|0}while((l|0)!=(n|0));return}l=(s|0)<(n|0)?s:n;if((l|0)<=0)return;e=s<<1;i=0;do{c=f[u+(i*3|0)+1>>0]|0;n=c&255;h=128-n+(a[u+(i*3|0)+2>>0]|0)&255;f[r+i>>0]=(a[u+(i*3|0)>>0]|0)+128-n;f[r+(i+s)>>0]=c;f[r+(i+e)>>0]=h;i=i+1|0}while((i|0)!=(l|0));return}case 4:{if((t[l+24>>2]|0)!=1)return;l=(s|0)<(n|0)?s:n;if((l|0)<=0)return;e=s<<1;i=s*3|0;o=0;do{n=f[u+(o<<2)+1>>0]|0;h=f[u+(o<<2)+3>>0]|0;d=n&255;c=128-d+(a[u+(o<<2)+2>>0]|0)&255;f[r+o>>0]=(a[u+(o<<2)>>0]|0)+128-d;f[r+(o+s)>>0]=n;f[r+(o+e)>>0]=c;f[r+(o+i)>>0]=h;o=o+1|0}while((o|0)!=(l|0));return}default:return}}function Ln(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0;d=c;c=c+176|0;b=d+152|0;m=d+16|0;_=d;l=re(t[(t[e+4>>2]|0)+16>>2]|0,n)|0;u=e+20|0;s=t[u>>2]|0;if(!l){m=s;xn(e,m,r,n,a);c=d;return}while(1){o=uM[t[(t[i>>2]|0)+32>>2]&63](i,s,l)|0;if(!o)break;s=t[u>>2]|0;if((l|0)==(o|0)){h=26;break}else l=l-o|0}if((h|0)==26){xn(e,s,r,n,a);c=d;return}r=m+56|0;u=m+4|0;t[m>>2]=36160;t[r>>2]=36180;w=0;ce(62,m+56|0,u|0);d=w;w=0;if(d&1){m=je()|0;nd(r);Qe(m|0)}t[m+128>>2]=0;t[m+132>>2]=-1;t[m>>2]=36200;t[m+56>>2]=36220;w=0;ue(180,u|0);d=w;w=0;do{if(d&1)s=je()|0;else{t[u>>2]=36236;i=m+36|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[m+52>>2]=16;t[b>>2]=0;t[b+4>>2]=0;t[b+8>>2]=0;w=0;ce(63,u|0,b|0);d=w;w=0;if(d&1){s=je()|0;xh(b);xh(i);cd(u);break}xh(b);w=0;s=_e(28,m|0,49029,57)|0;b=w;w=0;if(!(b&1)?(w=0,pe(36,s|0,0)|0,b=w,w=0,!(b&1)):0){o=Ue(16)|0;w=0;ce(64,_|0,u|0);b=w;w=0;if(!(b&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,o|0,3,35648,_|0);b=w;w=0;if(b&1)l=1;else{w=0;Ee(6,o|0,824,96);w=0;l=0}s=je()|0;xh(_);if(!l){_=s;t[m>>2]=36200;t[r>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(r);Qe(_|0)}}else s=je()|0;He(o|0);_=s;t[m>>2]=36200;t[r>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(r);Qe(_|0)}_=je()|0;t[m>>2]=36200;t[r>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(r);Qe(_|0)}}while(0);m=s;nd(r);Qe(m|0)}function Bn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0;c=e+4|0;e=t[c>>2]|0;e:do{switch(t[e+16>>2]|0){case 3:{if((t[e+24>>2]|0)==2){if((n|0)>0)e=0;else break e;while(1){o=f[i+(e*3|0)+1>>0]|0;l=o&255;u=l+128+(a[i+(e*3|0)+2>>0]|0)&255;s=r+(e*3|0)|0;f[s>>0]=(a[i+(e*3|0)>>0]|0)+128+l;f[s+1>>0]=o;f[s+2>>0]=u;e=e+1|0;if((e|0)==(n|0))break e}}e=(n|0)<(s|0)?n:s;if((e|0)>0){l=s<<1;o=0;do{d=f[i+(o+s)>>0]|0;b=d&255;h=b+128+(a[i+(o+l)>>0]|0)&255;u=r+(o*3|0)|0;f[u>>0]=(a[i+o>>0]|0)+128+b;f[u+1>>0]=d;f[u+2>>0]=h;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((t[e+24>>2]|0)==1?(u=(n|0)<(s|0)?n:s,(u|0)>0):0){e=s<<1;l=s*3|0;o=0;do{d=a[i+(o+s)>>0]|0;b=r+(o<<2)|0;d=(a[i+o>>0]|0)+128+d&255|d<<8|a[i+(o+l)>>0]<<24|d+128+(a[i+(o+e)>>0]|0)<<16&16711680;f[b>>0]=d;f[b+1>>0]=d>>8;f[b+2>>0]=d>>16;f[b+3>>0]=d>>24;o=o+1|0}while((o|0)!=(u|0))}break}default:{}}}while(0);e=t[c>>2]|0;if(!(f[e+32>>0]|0))return;o=t[e+16>>2]|0;if((n|0)>0){e=r;l=0}else return;while(1){b=e+2|0;d=f[e>>0]|0;f[e>>0]=f[b>>0]|0;f[b>>0]=d;l=l+1|0;if((l|0)==(n|0))break;else e=e+o|0}return}function zn(e){e=e|0;var i=0,r=0;t[e>>2]=36712;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=t[e+8>>2]|0;if(!r)return;i=e+12|0;if((t[i>>2]|0)!=(r|0))t[i>>2]=r;Bp(r);return}function Dn(e){e=e|0;var i=0,r=0;t[e>>2]=36712;i=t[e+20>>2]|0;if(i){r=e+24|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}i=t[e+8>>2]|0;if(!i){Bp(e);return}r=e+12|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i);Bp(e);return}function Nn(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0;a=e+36|0;if(!(t[a>>2]|0)){a=e+40|0;jn(e,i,t[a>>2]|0,r,n);t[a>>2]=(t[a>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}s=re(t[(t[e+4>>2]|0)+16>>2]|0,r)|0;l=e+20|0;jn(e,i,t[l>>2]|0,r,n);e=t[a>>2]|0;if((uM[t[(t[e>>2]|0)+48>>2]&63](e,t[l>>2]|0,s)|0)==(s|0))return;a=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,a|0,3,35648);l=w;w=0;if(l&1){l=je()|0;He(a|0);Qe(l|0)}else bi(a|0,824,96)}function Fn(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0;n=t[e+36>>2]|0;if(!n){n=e+40|0;Hn(e,t[n>>2]|0,i,r,f);t[n>>2]=(t[n>>2]|0)+(t[(t[e+4>>2]|0)+12>>2]|0);return}else{Un(e,n,i,r,f);return}}function Hn(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,c=0;o=e+4|0;s=t[o>>2]|0;if(!(f[s+32>>0]|0))o=i;else{l=e+8|0;Em(t[l>>2]|0,i|0,n*3|0)|0;s=t[o>>2]|0;i=t[s+16>>2]|0;if((n|0)>0){s=t[l>>2]|0;e=0;while(1){u=s+2|0;c=f[s>>0]|0;f[s>>0]=f[u>>0]|0;f[u>>0]=c;e=e+1|0;if((e|0)==(n|0))break;else s=s+i|0}s=t[o>>2]|0}o=t[l>>2]|0}switch(t[s+16>>2]|0){case 3:{if((t[s+24>>2]|0)==2){if((n|0)>0)s=0;else return;do{a=f[o+(s*3|0)+1>>0]|0;u=f[o+(s*3|0)+2>>0]|0;c=r+(s*3|0)|0;f[c>>0]=f[o+(s*3|0)>>0]|0;f[c+1>>0]=a;f[c+2>>0]=u;s=s+1|0}while((s|0)!=(n|0));return}s=(a|0)<(n|0)?a:n;if((s|0)<=0)return;e=a<<1;i=0;do{u=f[o+(i*3|0)+1>>0]|0;c=f[o+(i*3|0)+2>>0]|0;f[r+i>>0]=f[o+(i*3|0)>>0]|0;f[r+(i+a)>>0]=u;f[r+(i+e)>>0]=c;i=i+1|0}while((i|0)!=(s|0));return}case 4:{if((t[s+24>>2]|0)!=1)return;s=(a|0)<(n|0)?a:n;if((s|0)<=0)return;e=a<<1;i=a*3|0;l=0;do{n=f[o+(l<<2)+1>>0]|0;u=f[o+(l<<2)+2>>0]|0;c=f[o+(l<<2)+3>>0]|0;f[r+l>>0]=f[o+(l<<2)>>0]|0;f[r+(l+a)>>0]=n;f[r+(l+e)>>0]=u;f[r+(l+i)>>0]=c;l=l+1|0}while((l|0)!=(s|0));return}default:return}}function Un(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0;d=c;c=c+176|0;b=d+152|0;m=d+16|0;_=d;l=re(t[(t[e+4>>2]|0)+16>>2]|0,n)|0;u=e+20|0;s=t[u>>2]|0;if(!l){m=s;Hn(e,m,r,n,a);c=d;return}while(1){o=uM[t[(t[i>>2]|0)+32>>2]&63](i,s,l)|0;if(!o)break;s=t[u>>2]|0;if((l|0)==(o|0)){h=26;break}else l=l-o|0}if((h|0)==26){Hn(e,s,r,n,a);c=d;return}r=m+56|0;u=m+4|0;t[m>>2]=36160;t[r>>2]=36180;w=0;ce(62,m+56|0,u|0);d=w;w=0;if(d&1){m=je()|0;nd(r);Qe(m|0)}t[m+128>>2]=0;t[m+132>>2]=-1;t[m>>2]=36200;t[m+56>>2]=36220;w=0;ue(180,u|0);d=w;w=0;do{if(d&1)s=je()|0;else{t[u>>2]=36236;i=m+36|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;t[i+12>>2]=0;t[m+52>>2]=16;t[b>>2]=0;t[b+4>>2]=0;t[b+8>>2]=0;w=0;ce(63,u|0,b|0);d=w;w=0;if(d&1){s=je()|0;xh(b);xh(i);cd(u);break}xh(b);w=0;s=_e(28,m|0,49029,57)|0;b=w;w=0;if(!(b&1)?(w=0,pe(36,s|0,0)|0,b=w,w=0,!(b&1)):0){o=Ue(16)|0;w=0;ce(64,_|0,u|0);b=w;w=0;if(!(b&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,o|0,3,35648,_|0);b=w;w=0;if(b&1)l=1;else{w=0;Ee(6,o|0,824,96);w=0;l=0}s=je()|0;xh(_);if(!l){_=s;t[m>>2]=36200;t[r>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(r);Qe(_|0)}}else s=je()|0;He(o|0);_=s;t[m>>2]=36200;t[r>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(r);Qe(_|0)}_=je()|0;t[m>>2]=36200;t[r>>2]=36220;t[u>>2]=36236;xh(i);cd(u);nd(r);Qe(_|0)}}while(0);m=s;nd(r);Qe(m|0)}function jn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0;c=e+4|0;e=t[c>>2]|0;e:do{switch(t[e+16>>2]|0){case 3:{if((t[e+24>>2]|0)==2){if((n|0)>0)e=0;else break e;while(1){o=f[i+(e*3|0)+1>>0]|0;u=f[i+(e*3|0)+2>>0]|0;s=r+(e*3|0)|0;f[s>>0]=f[i+(e*3|0)>>0]|0;f[s+1>>0]=o;f[s+2>>0]=u;e=e+1|0;if((e|0)==(n|0))break e}}e=(n|0)<(s|0)?n:s;if((e|0)>0){l=s<<1;o=0;do{d=f[i+(o+s)>>0]|0;h=f[i+(o+l)>>0]|0;u=r+(o*3|0)|0;f[u>>0]=f[i+o>>0]|0;f[u+1>>0]=d;f[u+2>>0]=h;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((t[e+24>>2]|0)==1?(u=(n|0)<(s|0)?n:s,(u|0)>0):0){e=s<<1;l=s*3|0;o=0;do{d=r+(o<<2)|0;h=a[i+(o+s)>>0]<<8|a[i+o>>0]|a[i+(o+e)>>0]<<16|a[i+(o+l)>>0]<<24;f[d>>0]=h;f[d+1>>0]=h>>8;f[d+2>>0]=h>>16;f[d+3>>0]=h>>24;o=o+1|0}while((o|0)!=(u|0))}break}default:{}}}while(0);e=t[c>>2]|0;if(!(f[e+32>>0]|0))return;o=t[e+16>>2]|0;if((n|0)>0){e=r;l=0}else return;while(1){d=e+2|0;h=f[e>>0]|0;f[e>>0]=f[d>>0]|0;f[d>>0]=h;l=l+1|0;if((l|0)==(n|0))break;else e=e+o|0}return}function Yn(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0;p=c;c=c+32|0;y=p+12|0;v=p;_=e+180|0;k=(t[_>>2]|0)+4|0;if((t[e+32>>2]|0)==1)m=t[e+24>>2]|0;else m=1;i=re(m<<1,k)|0;t[y>>2]=0;M=y+4|0;t[M>>2]=0;t[y+8>>2]=0;e:do{if(i){if(!(i>>>0>1431655765?(w=0,ue(178,y|0),g=w,w=0,g&1):0))s=6;if((s|0)==6?(w=0,r=de(67,i*3|0)|0,g=w,w=0,!(g&1)):0){t[M>>2]=r;t[y>>2]=r;t[y+8>>2]=r+(i*3|0);while(1){f[r>>0]=0;f[r+1>>0]=0;f[r+2>>0]=0;r=(t[M>>2]|0)+3|0;t[M>>2]=r;i=i+-1|0;if(!i)break e}}n=je()|0;i=t[y>>2]|0;if(!i)Qe(n|0);r=t[M>>2]|0;if((r|0)!=(i|0))t[M>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Bp(i);Qe(n|0)}}while(0);t[v>>2]=0;g=v+4|0;t[g>>2]=0;t[v+8>>2]=0;do{if(!m)s=19;else{if(!(m>>>0>1073741823?(w=0,ue(178,v|0),b=w,w=0,b&1):0))s=17;if((s|0)==17?(n=m<<2,w=0,a=de(67,n|0)|0,b=w,w=0,!(b&1)):0){t[v>>2]=a;s=a+(m<<2)|0;t[v+8>>2]=s;ym(a|0,0,n|0)|0;t[g>>2]=s;s=19;break}n=je()|0;i=t[v>>2]|0;r=i;if(i){a=t[g>>2]|0;if((a|0)!=(i|0))t[g>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}}while(0);if((s|0)==19){a=e+12|0;e:do{if((t[a>>2]|0)>0){s=e+4604|0;l=(re(m,k)|0)+1|0;o=e+4608|0;u=e+92|0;h=(m|0)>0;d=e+4600|0;b=0;i:while(1){n=t[y>>2]|0;i=n+3|0;t[s>>2]=i;r=n+(l*3|0)|0;t[o>>2]=r;if(!(b&1))i=l;else{t[s>>2]=r;t[o>>2]=i;i=1}r=t[u>>2]|0;w=0;Ce(t[(t[r>>2]|0)+12>>2]|0,r|0,n+(i*3|0)|0,t[_>>2]|0,k|0);n=w;w=0;if(n&1){s=29;break}if(h){i=t[v>>2]|0;r=t[s>>2]|0;n=0;do{t[d>>2]=t[i+(n<<2)>>2];A=t[_>>2]|0;i=r+(A*3|0)|0;r=r+((A+-1|0)*3|0)|0;f[i>>0]=f[r>>0]|0;f[i+1>>0]=f[r+1>>0]|0;f[i+2>>0]=f[r+2>>0]|0;i=t[s>>2]|0;r=(t[o>>2]|0)+-3|0;f[r>>0]=f[i>>0]|0;f[r+1>>0]=f[i+1>>0]|0;f[r+2>>0]=f[i+2>>0]|0;w=0;ce(70,e|0,0);r=w;w=0;if(r&1){s=28;break i}i=t[v>>2]|0;t[i+(n<<2)>>2]=t[d>>2];r=(t[s>>2]|0)+(k*3|0)|0;t[s>>2]=r;t[o>>2]=(t[o>>2]|0)+(k*3|0);n=n+1|0}while((n|0)<(m|0))}b=b+1|0;if((b|0)>=(t[a>>2]|0)){s=41;break e}}if((s|0)==28){n=je()|0;break}else if((s|0)==29){n=je()|0;break}}else s=41}while(0);do{if((s|0)==41){w=0;ue(182,e|0);A=w;w=0;if(A&1){n=je()|0;break}i=t[v>>2]|0;r=i;if(i){n=t[g>>2]|0;if((n|0)!=(i|0))t[g>>2]=n+(~((n+-4-r|0)>>>2)<<2);Bp(i)}i=t[y>>2]|0;if(!i){c=p;return}r=t[M>>2]|0;if((r|0)!=(i|0))t[M>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Bp(i);c=p;return}}while(0);i=t[v>>2]|0;r=i;if(i){a=t[g>>2]|0;if((a|0)!=(i|0))t[g>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}i=t[y>>2]|0;if(!i)Qe(n|0);r=t[M>>2]|0;if((r|0)!=(i|0))t[M>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Bp(i);Qe(n|0)}function qn(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;S=e+180|0;if((t[S>>2]|0)<=0)return;T=e+4608|0;R=e+4604|0;C=e+4612|0;E=0;while(1){y=E+-1|0;l=t[T>>2]|0;o=t[R>>2]|0;i=E+1|0;s=a[o+(E*3|0)>>0]|0;A=t[C>>2]|0;u=a[o+(y*3|0)>>0]|0;c=s-u|0;h=a[l+(y*3|0)>>0]|0;d=u-h|0;b=((((f[A+((a[o+(i*3|0)>>0]|0)-s)>>0]|0)*9|0)+(f[A+c>>0]|0)|0)*9|0)+(f[A+d>>0]|0)|0;n=a[o+(E*3|0)+1>>0]|0;_=a[o+(y*3|0)+1>>0]|0;k=n-_|0;w=a[l+(y*3|0)+1>>0]|0;m=_-w|0;v=((((f[A+((a[o+(i*3|0)+1>>0]|0)-n)>>0]|0)*9|0)+(f[A+k>>0]|0)|0)*9|0)+(f[A+m>>0]|0)|0;r=a[o+(E*3|0)+2>>0]|0;p=a[o+(y*3|0)+2>>0]|0;g=r-p|0;y=a[l+(y*3|0)+2>>0]|0;M=p-y|0;A=((((f[A+((a[o+(i*3|0)+2>>0]|0)-r)>>0]|0)*9|0)+(f[A+g>>0]|0)|0)*9|0)+(f[A+M>>0]|0)|0;if(!(v|b|A))i=($n(e,E,0)|0)+E|0;else{o=a[l+(E*3|0)>>0]|0;l=s-h>>31;if((l^d|0)>=0)if((l^c|0)<0)s=h;else s=h-u+s|0;o=Vn(e,b,o,s,0)|0;l=a[(t[T>>2]|0)+(E*3|0)+1>>0]|0;s=n-w>>31;if((s^m|0)>=0)if((s^k|0)<0)n=w;else n=w-_+n|0;s=Vn(e,v,l,n,0)|0;l=a[(t[T>>2]|0)+(E*3|0)+2>>0]|0;n=r-y>>31;if((n^M|0)>=0)if((n^g|0)<0)r=y;else r=y-p+r|0;A=Vn(e,A,l,r,0)|0;E=(t[T>>2]|0)+(E*3|0)|0;f[E>>0]=o;f[E+1>>0]=s;f[E+2>>0]=A}if((i|0)<(t[S>>2]|0))E=i;else break}return}function $n(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0;T=c;c=c+32|0;S=T+15|0;k=T+12|0;_=T+9|0;w=T+6|0;y=T+3|0;M=T;A=(t[e+180>>2]|0)-i|0;E=t[e+4608>>2]|0;m=t[e+4604>>2]|0;g=E+((i+-1|0)*3|0)|0;v=f[g>>0]|0;p=f[g+1>>0]|0;g=f[g+2>>0]|0;r=v&255;n=e+144|0;s=p&255;l=g&255;b=0;while(1){o=E+((b+i|0)*3|0)|0;u=o+1|0;h=o+2|0;R=(a[o>>0]|0)-r|0;d=t[n>>2]|0;if((((R|0)>-1?R:0-R|0)|0)>(d|0))break;R=(a[u>>0]|0)-s|0;if((((R|0)>-1?R:0-R|0)|0)>(d|0))break;R=(a[h>>0]|0)-l|0;if((((R|0)>-1?R:0-R|0)|0)>(d|0))break;f[o>>0]=v;f[u>>0]=p;f[h>>0]=g;b=b+1|0;if((b|0)==(A|0)){b=A;break}}s=(b|0)==(A|0);l=e+4600|0;n=t[36476+(t[l>>2]<<2)>>2]|0;if((1<<n|0)>(b|0))r=b;else{r=b;do{Bf(e,1,1);n=t[l>>2]|0;r=r-(1<<t[36476+(n<<2)>>2])|0;n=(n|0)>30?31:n+1|0;t[l>>2]=n;n=t[36476+(n<<2)>>2]|0}while((r|0)>=(1<<n|0))}if(!s){Bf(e,r,n+1|0);i=b+i|0;R=E+(i*3|0)|0;f[y>>0]=f[R>>0]|0;f[y+1>>0]=f[R+1>>0]|0;f[y+2>>0]=f[R+2>>0]|0;f[M>>0]=v;f[M+1>>0]=p;f[M+2>>0]=g;i=m+(i*3|0)|0;f[_>>0]=f[y>>0]|0;f[_+1>>0]=f[y+1>>0]|0;f[_+2>>0]=f[y+2>>0]|0;f[k>>0]=f[M>>0]|0;f[k+1>>0]=f[M+1>>0]|0;f[k+2>>0]=f[M+2>>0]|0;f[S>>0]=f[i>>0]|0;f[S+1>>0]=f[i+1>>0]|0;f[S+2>>0]=f[i+2>>0]|0;Gn(w,e,_,k,S);f[R>>0]=f[w>>0]|0;f[R+1>>0]=f[w+1>>0]|0;f[R+2>>0]=f[w+2>>0]|0;R=t[l>>2]|0;t[l>>2]=(R|0)<1?0:R+-1|0;R=b+1|0;c=T;return R|0}if(!r){R=A;c=T;return R|0}Bf(e,1,1);R=A;c=T;return R|0}function Vn(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0;w=i>>31;s=(w^i)-w|0;_=e+196+(s*12|0)+10|0;l=n[_>>1]|0;b=e+196+(s*12|0)|0;a=t[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){i=5;while(1)if((l<<i|0)<(a|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;h=e+196+(s*12|0)+8|0;a=(n[h>>1]^w)-w+f|0;k=e+136|0;f=t[k>>2]|0;if((a&f|0)==(a|0))c=a;else c=f&~(a>>31);a=(r-c^w)-w|0;u=e+144|0;f=t[u>>2]|0;if((a|0)>0)a=(a+f|0)/(f<<1|1|0)|0;else a=(a-f|0)/(f<<1|1|0)|0;d=e+140|0;o=t[d>>2]|0;r=((a|0)<0?o:0)+a|0;o=r-((r|0)<((o+1|0)/2|0|0)?0:o)|0;s=e+196+(s*12|0)+4|0;if(!(f|i))a=(t[s>>2]<<1)+-1+l>>31;else a=0;f=a^o;Xn(e,i,f>>30^f<<1,t[e+156>>2]|0);f=t[e+160>>2]|0;i=(t[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;a=(t[s>>2]|0)+(re(t[u>>2]<<1|1,o)|0)|0;r=n[_>>1]|0;if((r|0)==(f|0)){i=i>>1;a=a>>1;r=f>>1}t[b>>2]=i;f=r+1|0;n[_>>1]=f;i=f+a|0;if((i|0)>=1){if((a|0)>0){a=a-f|0;_=n[h>>1]|0;n[h>>1]=(_<<16>>16<127&1)+(_&65535);a=(a|0)>0?0:a}}else{a=n[h>>1]|0;n[h>>1]=(a&65535)-(a<<16>>16>-128&1);a=(i|0)>(~r|0)?i:0-r|0}t[s>>2]=a;f=t[u>>2]|0;r=f<<1|1;i=(re(r,(o^w)-w|0)|0)+c|0;if((i|0)>=(0-f|0)){a=t[k>>2]|0;if((a+f|0)<(i|0))i=i-(re(t[d>>2]|0,r)|0)|0}else{i=(re(t[d>>2]|0,r)|0)+i|0;a=t[k>>2]|0}if((i&a|0)==(i|0)){w=i;w=w&255;return w|0}w=a&~(i>>31);w=w&255;return w|0}function Xn(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0;n=r>>i;a=e+148|0;s=f-(t[a>>2]|0)|0;if((n|0)<(s+-1|0)){if((n|0)>30){f=(n|0)/2|0;Bf(e,0,f);n=n-f|0}Bf(e,1,n+1|0);Bf(e,(1<<i)+-1&r,i);return}if((s|0)>31){Bf(e,0,31);Bf(e,1,f+-31-(t[a>>2]|0)|0)}else Bf(e,1,s);i=t[a>>2]|0;Bf(e,(1<<i)+-1&r+-1,i);return}function Gn(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0;w=i+136|0;b=a[s>>0]|0;_=b-(a[n>>0]|0)>>31|1;l=re(_,(a[r>>0]|0)-b|0)|0;h=i+144|0;o=t[h>>2]|0;if((l|0)>0)l=(l+o|0)/(o<<1|1|0)|0;else l=(l-o|0)/(o<<1|1|0)|0;y=i+140|0;c=t[y>>2]|0;u=((l|0)<0?c:0)+l|0;c=u-((u|0)<((c+1|0)/2|0|0)?0:c)|0;u=i+4576|0;Kn(i,u,c);v=a[s+1>>0]|0;p=v-(a[n+1>>0]|0)>>31|1;l=re(p,(a[r+1>>0]|0)-v|0)|0;o=t[h>>2]|0;if((l|0)>0)l=(l+o|0)/(o<<1|1|0)|0;else l=(l-o|0)/(o<<1|1|0)|0;k=t[y>>2]|0;g=((l|0)<0?k:0)+l|0;k=g-((g|0)<((k+1|0)/2|0|0)?0:k)|0;Kn(i,u,k);g=a[s+2>>0]|0;m=g-(a[n+2>>0]|0)>>31|1;l=re(m,(a[r+2>>0]|0)-g|0)|0;o=t[h>>2]|0;if((l|0)>0)l=(l+o|0)/(o<<1|1|0)|0;else l=(l-o|0)/(o<<1|1|0)|0;d=t[y>>2]|0;l=((l|0)<0?d:0)+l|0;d=l-((l|0)<((d+1|0)/2|0|0)?0:d)|0;Kn(i,u,d);u=t[h>>2]|0;h=u<<1|1;l=(re(re(h,c)|0,_)|0)+b|0;r=0-u|0;if((l|0)>=(r|0)){o=t[w>>2]|0;if((o+u|0)<(l|0)){l=l-(re(t[y>>2]|0,h)|0)|0;n=o}else n=o}else{l=(re(t[y>>2]|0,h)|0)+l|0;n=t[w>>2]|0}if((l&n|0)!=(l|0))l=n&~(l>>31);s=l&255;l=(re(re(h,k)|0,p)|0)+v|0;if((l|0)>=(r|0)){if((n+u|0)<(l|0))l=l-(re(t[y>>2]|0,h)|0)|0}else l=(re(t[y>>2]|0,h)|0)+l|0;if((l&n|0)!=(l|0))l=n&~(l>>31);o=l&255;l=(re(re(h,d)|0,m)|0)+g|0;if((l|0)>=(r|0)){if((n+u|0)<(l|0))l=l-(re(t[y>>2]|0,h)|0)|0}else l=(re(t[y>>2]|0,h)|0)+l|0;if((l&n|0)==(l|0)){y=l;y=y&255;f[e>>0]=s;g=e+1|0;f[g>>0]=o;e=e+2|0;f[e>>0]=y;return}y=n&~(l>>31);y=y&255;f[e>>0]=s;g=e+1|0;f[g>>0]=o;e=e+2|0;f[e>>0]=y;return}function Kn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=t[h>>2]|0;s=(re(o>>>1,c)|0)+(t[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;Xn(e,s,n,(t[e+156>>2]|0)+-1-(t[36476+(t[e+4600>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;f[e>>0]=(a[e>>0]|0)+1}n=(n+1-(t[h>>2]|0)>>1)+(t[i>>2]|0)|0;t[i>>2]=n;s=f[d>>0]|0;if(s<<24>>24!=(f[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}t[i>>2]=n>>1;e=(s&255)>>>1;f[d>>0]=e;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}function Wn(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0;_=c;c=c+32|0;n=_;b=e+144|0;e:do{if(!(t[b>>2]|0)){r=t[e+136>>2]|0;i=e+152|0;if((((r|0)==((1<<t[i>>2])+-1|0)?(op(n,r,0),(t[n+4>>2]|0)==(t[e+184>>2]|0)):0)?(t[n+8>>2]|0)==(t[e+188>>2]|0):0)?(t[n+12>>2]|0)==(t[e+192>>2]|0):0)switch(t[i>>2]|0){case 8:{b=t[8900]|0;t[e+4612>>2]=b+(((t[8901]|0)-b|0)>>>1);c=_;return}case 10:{b=t[8903]|0;t[e+4612>>2]=b+(((t[8904]|0)-b|0)>>>1);c=_;return}case 12:{b=t[8906]|0;t[e+4612>>2]=b+(((t[8907]|0)-b|0)>>>1);c=_;return}case 16:{b=t[8909]|0;t[e+4612>>2]=b+(((t[8910]|0)-b|0)>>>1);c=_;return}default:break e}}else i=e+152|0}while(0);d=1<<t[i>>2];r=e+4616|0;n=d<<1;a=e+4620|0;s=t[a>>2]|0;i=t[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)t[a>>2]=o}else{Yf(r,n-l|0);i=t[r>>2]|0}h=e+4612|0;t[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=_;return}o=e+192|0;u=e+188|0;l=e+184|0;s=i;do{i=t[o>>2]|0;if((s|0)>(0-i|0)){r=t[u>>2]|0;if((s|0)>(0-r|0)){n=t[l>>2]|0;if((s|0)>(0-n|0)){a=t[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;f[(t[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=_;return}function Zn(e){e=e|0;var i=0,r=0;t[e>>2]=35996;i=t[e+4592>>2]|0;if(i){r=e+4596|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function Jn(e){e=e|0;var i=0,r=0;t[e>>2]=35996;i=t[e+4592>>2]|0;if(i){r=e+4596|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function Qn(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,65535,0);o=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[u+8>>2]|0:l;a=t[i+12>>2]|0;a=(a|0)==0?t[u+12>>2]|0:a;i=t[i+16>>2]|0;r=t[u+16>>2]|0;t[e+160>>2]=(o|0)==0?t[u+4>>2]|0:o;t[e+164>>2]=l;t[e+168>>2]=a;lt(e);a=0;do{t[e+172+(a*12|0)>>2]=1024;t[e+172+(a*12|0)+4>>2]=0;n[e+172+(a*12|0)+8>>1]=0;n[e+172+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;t[e+4552>>2]=1024;t[e+4556>>2]=0;f[e+4560>>0]=u;f[e+4561>>0]=1;f[e+4562>>0]=0;t[e+4564>>2]=1024;t[e+4568>>2]=1;f[e+4572>>0]=u;f[e+4573>>0]=1;f[e+4574>>0]=0;t[e+4576>>2]=0;c=s;return}function et(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=t[i>>2]|0;t[i>>2]=0;i=t[u>>2]|0;t[u>>2]=o;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);t[h>>2]=0;t[h+4>>2]=a;u=r+8|0;t[h+8>>2]=t[u>>2];if(a){i=Lp(4600)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{t[s>>2]=t[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{t[s>>2]=0;s=s+4|0}while((s|0)<(o|0));t[i>>2]=35772;s=i+132|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[i+148>>2]=t[a>>2];t[i+152>>2]=0;t[i+156>>2]=0;t[i+160>>2]=0;s=i+4544|0;a=i+164|0;do{t[a>>2]=0;t[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;t[s>>2]=0;t[s+4>>2]=0;n[s+8>>1]=0;f[s+10>>0]=0;o=i+4556|0;t[o>>2]=0;t[o+4>>2]=0;n[o+8>>1]=0;f[o+10>>0]=0;o=i+4568|0;t[o>>2]=0;t[o+4>>2]=0;t[o+8>>2]=0;t[o+12>>2]=0;t[o+16>>2]=0;t[o+20>>2]=0;t[o+24>>2]=0;f[o+28>>0]=0;if(!(t[i+28>>2]|0))t[i+20>>2]=1;a=t[l>>2]|0;t[l>>2]=i;if(a){tM[t[(t[a>>2]|0)+4>>2]&255](a);i=t[l>>2]|0}Cf(i,h)}h=e+100|0;t[h>>2]=32;t[e+96>>2]=0;i=t[r>>2]|0;if(!i){t[e+108>>2]=t[r+4>>2];t[e+104>>2]=t[u>>2];rt(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}t[e+132>>2]=i;s=e+120|0;u=e+124|0;a=t[u>>2]|0;i=t[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){t[u>>2]=d;a=d}}else{Pf(s,4e3-o|0);i=t[s>>2]|0;l=i;a=t[u>>2]|0}t[e+108>>2]=l;t[e+104>>2]=a-i;rt(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function it(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+32>>2]|0)!=0?(t[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(37,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+16>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(38,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(39,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(40,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+20>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=2;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=2;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function rt(e){e=e|0;var i=0,r=0,f=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0;g=c;c=c+32|0;M=g+12|0;p=g;k=e+156|0;m=(t[k>>2]|0)+4|0;if((t[e+32>>2]|0)==1)v=t[e+24>>2]|0;else v=1;i=re(v<<1,m)|0;t[M>>2]=0;A=M+4|0;t[A>>2]=0;t[M+8>>2]=0;do{if(i){if(!((i|0)<0?(w=0,ue(178,M|0),y=w,w=0,y&1):0))l=6;if((l|0)==6?(r=i<<1,w=0,f=de(67,r|0)|0,y=w,w=0,!(y&1)):0){t[M>>2]=f;y=f+(i<<1)|0;t[M+8>>2]=y;ym(f|0,0,r|0)|0;t[A>>2]=y;break}f=je()|0;i=t[M>>2]|0;if(!i)Qe(f|0);r=t[A>>2]|0;if((r|0)!=(i|0))t[A>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);Qe(f|0)}}while(0);t[p>>2]=0;y=p+4|0;t[y>>2]=0;t[p+8>>2]=0;do{if(!v)l=18;else{if(!(v>>>0>1073741823?(w=0,ue(178,p|0),_=w,w=0,_&1):0))l=16;if((l|0)==16?(a=v<<2,w=0,s=de(67,a|0)|0,_=w,w=0,!(_&1)):0){t[p>>2]=s;l=s+(v<<2)|0;t[p+8>>2]=l;ym(s|0,0,a|0)|0;t[y>>2]=l;l=18;break}f=je()|0;i=t[p>>2]|0;r=i;if(i){a=t[y>>2]|0;if((a|0)!=(i|0))t[y>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}}while(0);if((l|0)==18){s=e+12|0;e:do{if((t[s>>2]|0)>0){l=e+4580|0;o=(re(v,m)|0)+1|0;u=e+4584|0;h=e+92|0;d=(v|0)>0;b=e+4576|0;_=0;i:while(1){r=t[M>>2]|0;i=r+2|0;t[l>>2]=i;r=r+(o<<1)|0;t[u>>2]=r;if(!(_&1))i=r;else{t[l>>2]=r;t[u>>2]=i}a=t[h>>2]|0;w=0;Ce(t[(t[a>>2]|0)+12>>2]|0,a|0,i|0,t[k>>2]|0,m|0);a=w;w=0;if(a&1){l=28;break}if(d){i=t[l>>2]|0;r=t[u>>2]|0;f=t[p>>2]|0;a=0;do{t[b>>2]=t[f+(a<<2)>>2];f=t[k>>2]|0;n[i+(f<<1)>>1]=n[i+(f+-1<<1)>>1]|0;n[r+-2>>1]=n[i>>1]|0;w=0;ce(71,e|0,0);f=w;w=0;if(f&1){l=27;break i}f=t[p>>2]|0;t[f+(a<<2)>>2]=t[b>>2];i=(t[l>>2]|0)+(m<<1)|0;t[l>>2]=i;r=(t[u>>2]|0)+(m<<1)|0;t[u>>2]=r;a=a+1|0}while((a|0)<(v|0))}_=_+1|0;if((_|0)>=(t[s>>2]|0)){l=40;break e}}if((l|0)==27){f=je()|0;break}else if((l|0)==28){f=je()|0;break}}else l=40}while(0);do{if((l|0)==40){w=0;ue(182,e|0);e=w;w=0;if(e&1){f=je()|0;break}i=t[p>>2]|0;r=i;if(i){f=t[y>>2]|0;if((f|0)!=(i|0))t[y>>2]=f+(~((f+-4-r|0)>>>2)<<2);Bp(i)}i=t[M>>2]|0;if(!i){c=g;return}r=t[A>>2]|0;if((r|0)!=(i|0))t[A>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);c=g;return}}while(0);i=t[p>>2]|0;r=i;if(i){a=t[y>>2]|0;if((a|0)!=(i|0))t[y>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}i=t[M>>2]|0;if(!i)Qe(f|0);r=t[A>>2]|0;if((r|0)!=(i|0))t[A>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);Qe(f|0)}function ft(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;_=e+4580|0;i=t[_>>2]|0;m=e+156|0;if((t[m>>2]|0)<=0)return;k=e+4584|0;w=e+4588|0;l=i;o=s[i+-2>>1]|0;i=s[i>>1]|0;b=0;while(1){d=t[k>>2]|0;h=s[d+(b+-1<<1)>>1]|0;a=b+1|0;r=s[l+(a<<1)>>1]|0;c=t[w>>2]|0;u=i-o|0;l=o-h|0;c=((((f[c+(r-i)>>0]|0)*9|0)+(f[c+u>>0]|0)|0)*9|0)+(f[c+l>>0]|0)|0;if(!c){a=(tt(e,b,0)|0)+b|0;r=t[_>>2]|0;i=s[r+(a+-1<<1)>>1]|0;r=s[r+(a<<1)>>1]|0}else{o=i-h>>31;if((o^l|0)<0)l=i;else l=h+((o^u|0)<0?0:u)|0;d=nt(e,c,s[d+(b<<1)>>1]|0,l,0)|0;n[(t[k>>2]|0)+(b<<1)>>1]=d}if((a|0)>=(t[m>>2]|0))break;l=t[_>>2]|0;o=i;i=r;b=a}return}function nt(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0;k=i>>31;u=(k^i)-k|0;_=e+172+(u*12|0)+10|0;l=n[_>>1]|0;b=e+172+(u*12|0)|0;a=t[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){s=5;while(1)if((l<<s|0)<(a|0))s=s+1|0;else break}else s=4;else s=3;else s=2;else s=1;else s=0;d=e+172+(u*12|0)+8|0;a=(n[d>>1]^k)-k+f|0;if((a&65535|0)==(a|0))h=a;else h=a>>31&65535^65535;o=(r-h^k)-k<<16;c=o>>16;if(!s)a=(t[e+172+(u*12|0)+4>>2]<<1)+-1+l>>31;else a=0;f=a^c;f=f>>30^f<<1;a=f>>s;if((a|0)<47){if((a|0)>30){l=(a|0)/2|0;Bf(e,0,l);a=a-l|0}Bf(e,1,a+1|0);Bf(e,f&(1<<s)+-1,s)}else{Bf(e,0,31);Bf(e,1,17);Bf(e,f+65535&65535,16)}f=e+172+(u*12|0)+4|0;l=n[_>>1]|0;a=l<<16>>16==64;s=a&1;r=(t[f>>2]|0)+c>>s;l=a?32:l<<16>>16;t[b>>2]=(t[b>>2]|0)+((o|0)>-65536?c:0-c|0)>>s;s=l+1|0;n[_>>1]=s;a=s+r|0;if((a|0)<1){_=n[d>>1]|0;n[d>>1]=(_&65535)-(_<<16>>16>-128&1);_=(a|0)>(~l|0)?a:0-l|0;t[f>>2]=_;k=c^k;i=i>>>31;i=h+i|0;i=i+k|0;i=i&65535;return i|0}if((r|0)<=0){_=r;t[f>>2]=_;k=c^k;i=i>>>31;i=h+i|0;i=i+k|0;i=i&65535;return i|0}_=r-s|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);_=(_|0)>0?0:_;t[f>>2]=_;k=c^k;i=i>>>31;i=h+i|0;i=i+k|0;i=i&65535;return i|0}function tt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0;o=(t[e+156>>2]|0)-i|0;u=t[e+4584>>2]|0;h=t[e+4580>>2]|0;a=n[u+(i+-1<<1)>>1]|0;f=0;while(1){r=u+(f+i<<1)|0;if((n[r>>1]|0)!=a<<16>>16){d=f;break}n[r>>1]=a;f=f+1|0;if((f|0)==(o|0)){d=o;break}}l=a&65535;a=(d|0)==(o|0);c=e+4576|0;f=t[36476+(t[c>>2]<<2)>>2]|0;if((1<<f|0)>(d|0))r=d;else{r=d;do{Bf(e,1,1);f=t[c>>2]|0;r=r-(1<<t[36476+(f<<2)>>2])|0;f=(f|0)>30?31:f+1|0;t[c>>2]=f;f=t[36476+(f<<2)>>2]|0}while((r|0)>=(1<<f|0))}if(a){if(!r){e=o;return e|0}Bf(e,1,1);e=o;return e|0}Bf(e,r,f+1|0);r=d+i|0;a=u+(r<<1)|0;f=s[a>>1]|0;r=s[h+(r<<1)>>1]|0;h=l-r|0;if((((h|0)>-1?h:0-h|0)|0)<1){r=f-l<<16>>16;at(e,e+4564|0,r);r=r+l|0}else{h=r-l>>31|1;i=(re(f-r<<16,h)|0)>>16;at(e,e+4552|0,i);r=(re(i,h)|0)+r|0}n[a>>1]=r;e=t[c>>2]|0;t[c>>2]=(e|0)<1?0:e+-1|0;e=d+1|0;return e|0}function at(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=t[h>>2]|0;s=(re(o>>>1,c)|0)+(t[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;st(e,s,n,63-(t[36476+(t[e+4576>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;f[e>>0]=(a[e>>0]|0)+1}n=(n+1-(t[h>>2]|0)>>1)+(t[i>>2]|0)|0;t[i>>2]=n;s=f[d>>0]|0;if(s<<24>>24!=(f[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}t[i>>2]=n>>1;e=(s&255)>>>1;f[d>>0]=e;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}function st(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,t=0;n=r>>i;t=f+-16|0;if((n|0)<(f+-17|0)){if((n|0)>30){f=(n|0)/2|0;Bf(e,0,f);n=n-f|0}Bf(e,1,n+1|0);Bf(e,(1<<i)+-1&r,i);return}if((t|0)>31){Bf(e,0,31);Bf(e,1,f+-47|0)}else Bf(e,1,t);Bf(e,r+65535&65535,16);return}function lt(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,65535,0);u=e+160|0;if(((t[o+4>>2]|0)==(t[u>>2]|0)?(t[o+8>>2]|0)==(t[e+164>>2]|0):0)?(t[o+12>>2]|0)==(t[e+168>>2]|0):0){u=t[8909]|0;t[e+4588>>2]=u+(((t[8910]|0)-u|0)>>>1);c=h;return}r=e+4592|0;n=e+4596|0;a=t[n>>2]|0;i=t[r>>2]|0;s=a-i|0;if(s>>>0>=131072){if(s>>>0>131072?(l=i+131072|0,(a|0)!=(l|0)):0)t[n>>2]=l}else{Yf(r,131072-s|0);i=t[r>>2]|0}o=e+4588|0;t[o>>2]=i+65536;l=e+168|0;a=e+164|0;s=-65536;while(1){i=t[l>>2]|0;if((s|0)>(0-i|0)){r=t[a>>2]|0;if((s|0)>(0-r|0)){n=t[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){f[(t[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;f[(t[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==65536)break}c=h;return}function ot(e){e=e|0;var i=0,r=0;t[e>>2]=35968;i=t[e+4592>>2]|0;if(i){r=e+4596|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function ut(e){e=e|0;var i=0,r=0;t[e>>2]=35968;i=t[e+4592>>2]|0;if(i){r=e+4596|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function ct(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,4095,0);o=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[u+8>>2]|0:l;a=t[i+12>>2]|0;a=(a|0)==0?t[u+12>>2]|0:a;i=t[i+16>>2]|0;r=t[u+16>>2]|0;t[e+160>>2]=(o|0)==0?t[u+4>>2]|0:o;t[e+164>>2]=l;t[e+168>>2]=a;pt(e);a=0;do{t[e+172+(a*12|0)>>2]=64;t[e+172+(a*12|0)+4>>2]=0;n[e+172+(a*12|0)+8>>1]=0;n[e+172+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;t[e+4552>>2]=64;t[e+4556>>2]=0;f[e+4560>>0]=u;f[e+4561>>0]=1;f[e+4562>>0]=0;t[e+4564>>2]=64;t[e+4568>>2]=1;f[e+4572>>0]=u;f[e+4573>>0]=1;f[e+4574>>0]=0;t[e+4576>>2]=0;c=s;return}function ht(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=t[i>>2]|0;t[i>>2]=0;i=t[u>>2]|0;t[u>>2]=o;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);t[h>>2]=0;t[h+4>>2]=a;u=r+8|0;t[h+8>>2]=t[u>>2];if(a){i=Lp(4600)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{t[s>>2]=t[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{t[s>>2]=0;s=s+4|0}while((s|0)<(o|0));t[i>>2]=35744;s=i+132|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[i+148>>2]=t[a>>2];t[i+152>>2]=0;t[i+156>>2]=0;t[i+160>>2]=0;s=i+4544|0;a=i+164|0;do{t[a>>2]=0;t[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;t[s>>2]=0;t[s+4>>2]=0;n[s+8>>1]=0;f[s+10>>0]=0;o=i+4556|0;t[o>>2]=0;t[o+4>>2]=0;n[o+8>>1]=0;f[o+10>>0]=0;o=i+4568|0;t[o>>2]=0;t[o+4>>2]=0;t[o+8>>2]=0;t[o+12>>2]=0;t[o+16>>2]=0;t[o+20>>2]=0;t[o+24>>2]=0;f[o+28>>0]=0;if(!(t[i+28>>2]|0))t[i+20>>2]=1;a=t[l>>2]|0;t[l>>2]=i;if(a){tM[t[(t[a>>2]|0)+4>>2]&255](a);i=t[l>>2]|0}Cf(i,h)}h=e+100|0;t[h>>2]=32;t[e+96>>2]=0;i=t[r>>2]|0;if(!i){t[e+108>>2]=t[r+4>>2];t[e+104>>2]=t[u>>2];bt(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}t[e+132>>2]=i;s=e+120|0;u=e+124|0;a=t[u>>2]|0;i=t[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){t[u>>2]=d;a=d}}else{Pf(s,4e3-o|0);i=t[s>>2]|0;l=i;a=t[u>>2]|0}t[e+108>>2]=l;t[e+104>>2]=a-i;bt(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function dt(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+32>>2]|0)!=0?(t[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(37,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+16>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(38,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(39,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(40,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+20>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=2;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=2;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function bt(e){e=e|0;var i=0,r=0,f=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0;g=c;c=c+32|0;M=g+12|0;p=g;k=e+156|0;m=(t[k>>2]|0)+4|0;if((t[e+32>>2]|0)==1)v=t[e+24>>2]|0;else v=1;i=re(v<<1,m)|0;t[M>>2]=0;A=M+4|0;t[A>>2]=0;t[M+8>>2]=0;do{if(i){if(!((i|0)<0?(w=0,ue(178,M|0),y=w,w=0,y&1):0))l=6;if((l|0)==6?(r=i<<1,w=0,f=de(67,r|0)|0,y=w,w=0,!(y&1)):0){t[M>>2]=f;y=f+(i<<1)|0;t[M+8>>2]=y;ym(f|0,0,r|0)|0;t[A>>2]=y;break}f=je()|0;i=t[M>>2]|0;if(!i)Qe(f|0);r=t[A>>2]|0;if((r|0)!=(i|0))t[A>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);Qe(f|0)}}while(0);t[p>>2]=0;y=p+4|0;t[y>>2]=0;t[p+8>>2]=0;do{if(!v)l=18;else{if(!(v>>>0>1073741823?(w=0,ue(178,p|0),_=w,w=0,_&1):0))l=16;if((l|0)==16?(a=v<<2,w=0,s=de(67,a|0)|0,_=w,w=0,!(_&1)):0){t[p>>2]=s;l=s+(v<<2)|0;t[p+8>>2]=l;ym(s|0,0,a|0)|0;t[y>>2]=l;l=18;break}f=je()|0;i=t[p>>2]|0;r=i;if(i){a=t[y>>2]|0;if((a|0)!=(i|0))t[y>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}}while(0);if((l|0)==18){s=e+12|0;e:do{if((t[s>>2]|0)>0){l=e+4580|0;o=(re(v,m)|0)+1|0;u=e+4584|0;h=e+92|0;d=(v|0)>0;b=e+4576|0;_=0;i:while(1){r=t[M>>2]|0;i=r+2|0;t[l>>2]=i;r=r+(o<<1)|0;t[u>>2]=r;if(!(_&1))i=r;else{t[l>>2]=r;t[u>>2]=i}a=t[h>>2]|0;w=0;Ce(t[(t[a>>2]|0)+12>>2]|0,a|0,i|0,t[k>>2]|0,m|0);a=w;w=0;if(a&1){l=28;break}if(d){i=t[l>>2]|0;r=t[u>>2]|0;f=t[p>>2]|0;a=0;do{t[b>>2]=t[f+(a<<2)>>2];f=t[k>>2]|0;n[i+(f<<1)>>1]=n[i+(f+-1<<1)>>1]|0;n[r+-2>>1]=n[i>>1]|0;w=0;ce(72,e|0,0);f=w;w=0;if(f&1){l=27;break i}f=t[p>>2]|0;t[f+(a<<2)>>2]=t[b>>2];i=(t[l>>2]|0)+(m<<1)|0;t[l>>2]=i;r=(t[u>>2]|0)+(m<<1)|0;t[u>>2]=r;a=a+1|0}while((a|0)<(v|0))}_=_+1|0;if((_|0)>=(t[s>>2]|0)){l=40;break e}}if((l|0)==27){f=je()|0;break}else if((l|0)==28){f=je()|0;break}}else l=40}while(0);do{if((l|0)==40){w=0;ue(182,e|0);e=w;w=0;if(e&1){f=je()|0;break}i=t[p>>2]|0;r=i;if(i){f=t[y>>2]|0;if((f|0)!=(i|0))t[y>>2]=f+(~((f+-4-r|0)>>>2)<<2);Bp(i)}i=t[M>>2]|0;if(!i){c=g;return}r=t[A>>2]|0;if((r|0)!=(i|0))t[A>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);c=g;return}}while(0);i=t[p>>2]|0;r=i;if(i){a=t[y>>2]|0;if((a|0)!=(i|0))t[y>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}i=t[M>>2]|0;if(!i)Qe(f|0);r=t[A>>2]|0;if((r|0)!=(i|0))t[A>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);Qe(f|0)}function _t(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;_=e+4580|0;i=t[_>>2]|0;m=e+156|0;if((t[m>>2]|0)<=0)return;k=e+4584|0;w=e+4588|0;l=i;o=s[i+-2>>1]|0;i=s[i>>1]|0;b=0;while(1){d=t[k>>2]|0;h=s[d+(b+-1<<1)>>1]|0;a=b+1|0;r=s[l+(a<<1)>>1]|0;c=t[w>>2]|0;u=i-o|0;l=o-h|0;c=((((f[c+(r-i)>>0]|0)*9|0)+(f[c+u>>0]|0)|0)*9|0)+(f[c+l>>0]|0)|0;if(!c){a=(wt(e,b,0)|0)+b|0;r=t[_>>2]|0;i=s[r+(a+-1<<1)>>1]|0;r=s[r+(a<<1)>>1]|0}else{o=i-h>>31;if((o^l|0)<0)l=i;else l=h+((o^u|0)<0?0:u)|0;d=kt(e,c,s[d+(b<<1)>>1]|0,l,0)|0;n[(t[k>>2]|0)+(b<<1)>>1]=d}if((a|0)>=(t[m>>2]|0))break;l=t[_>>2]|0;o=i;i=r;b=a}return}function kt(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0;k=i>>31;u=(k^i)-k|0;_=e+172+(u*12|0)+10|0;l=n[_>>1]|0;b=e+172+(u*12|0)|0;a=t[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){s=5;while(1)if((l<<s|0)<(a|0))s=s+1|0;else break}else s=4;else s=3;else s=2;else s=1;else s=0;d=e+172+(u*12|0)+8|0;a=(n[d>>1]^k)-k+f|0;if((a&4095|0)==(a|0))h=a;else h=a>>31&4095^4095;o=(r-h^k)-k<<20;c=o>>20;if(!s)a=(t[e+172+(u*12|0)+4>>2]<<1)+-1+l>>31;else a=0;f=a^c;f=f>>30^f<<1;a=f>>s;if((a|0)<35){if((a|0)>30){l=(a|0)/2|0;Bf(e,0,l);a=a-l|0}Bf(e,1,a+1|0);Bf(e,f&(1<<s)+-1,s)}else{Bf(e,0,31);Bf(e,1,5);Bf(e,f+4095&4095,12)}f=e+172+(u*12|0)+4|0;l=n[_>>1]|0;a=l<<16>>16==64;s=a&1;r=(t[f>>2]|0)+c>>s;l=a?32:l<<16>>16;t[b>>2]=(t[b>>2]|0)+((o|0)>-1048576?c:0-c|0)>>s;s=l+1|0;n[_>>1]=s;a=s+r|0;if((a|0)<1){_=n[d>>1]|0;n[d>>1]=(_&65535)-(_<<16>>16>-128&1);_=(a|0)>(~l|0)?a:0-l|0;t[f>>2]=_;k=c^k;i=i>>>31;i=h+i|0;i=i+k|0;i=i&4095;i=i&65535;return i|0}if((r|0)<=0){_=r;t[f>>2]=_;k=c^k;i=i>>>31;i=h+i|0;i=i+k|0;i=i&4095;i=i&65535;return i|0}_=r-s|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);_=(_|0)>0?0:_;t[f>>2]=_;k=c^k;i=i>>>31;i=h+i|0;i=i+k|0;i=i&4095;i=i&65535;return i|0}function wt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0;o=(t[e+156>>2]|0)-i|0;u=t[e+4584>>2]|0;h=t[e+4580>>2]|0;a=n[u+(i+-1<<1)>>1]|0;f=0;while(1){r=u+(f+i<<1)|0;if((n[r>>1]|0)!=a<<16>>16){d=f;break}n[r>>1]=a;f=f+1|0;if((f|0)==(o|0)){d=o;break}}l=a&65535;a=(d|0)==(o|0);c=e+4576|0;f=t[36476+(t[c>>2]<<2)>>2]|0;if((1<<f|0)>(d|0))r=d;else{r=d;do{Bf(e,1,1);f=t[c>>2]|0;r=r-(1<<t[36476+(f<<2)>>2])|0;f=(f|0)>30?31:f+1|0;t[c>>2]=f;f=t[36476+(f<<2)>>2]|0}while((r|0)>=(1<<f|0))}if(a){if(!r){e=o;return e|0}Bf(e,1,1);e=o;return e|0}Bf(e,r,f+1|0);r=d+i|0;a=u+(r<<1)|0;f=s[a>>1]|0;r=s[h+(r<<1)>>1]|0;h=l-r|0;if((((h|0)>-1?h:0-h|0)|0)<1){r=f-l<<20>>20;mt(e,e+4564|0,r);r=r+l|0}else{h=r-l>>31|1;i=(re(f-r<<20,h)|0)>>20;mt(e,e+4552|0,i);r=(re(i,h)|0)+r|0}n[a>>1]=r&4095;e=t[c>>2]|0;t[c>>2]=(e|0)<1?0:e+-1|0;e=d+1|0;return e|0}function mt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=t[h>>2]|0;s=(re(o>>>1,c)|0)+(t[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;vt(e,s,n,47-(t[36476+(t[e+4576>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;f[e>>0]=(a[e>>0]|0)+1}n=(n+1-(t[h>>2]|0)>>1)+(t[i>>2]|0)|0;t[i>>2]=n;s=f[d>>0]|0;if(s<<24>>24!=(f[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}t[i>>2]=n>>1;e=(s&255)>>>1;f[d>>0]=e;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}function vt(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,t=0;n=r>>i;t=f+-12|0;if((n|0)<(f+-13|0)){if((n|0)>30){f=(n|0)/2|0;Bf(e,0,f);n=n-f|0}Bf(e,1,n+1|0);Bf(e,(1<<i)+-1&r,i);return}if((t|0)>31){Bf(e,0,31);Bf(e,1,f+-43|0)}else Bf(e,1,t);Bf(e,r+4095&4095,12);return}function pt(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,4095,0);u=e+160|0;if(((t[o+4>>2]|0)==(t[u>>2]|0)?(t[o+8>>2]|0)==(t[e+164>>2]|0):0)?(t[o+12>>2]|0)==(t[e+168>>2]|0):0){u=t[8906]|0;t[e+4588>>2]=u+(((t[8907]|0)-u|0)>>>1);c=h;return}r=e+4592|0;n=e+4596|0;a=t[n>>2]|0;i=t[r>>2]|0;s=a-i|0;if(s>>>0>=8192){if(s>>>0>8192?(l=i+8192|0,(a|0)!=(l|0)):0)t[n>>2]=l}else{Yf(r,8192-s|0);i=t[r>>2]|0}o=e+4588|0;t[o>>2]=i+4096;l=e+168|0;a=e+164|0;s=-4096;while(1){i=t[l>>2]|0;if((s|0)>(0-i|0)){r=t[a>>2]|0;if((s|0)>(0-r|0)){n=t[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){f[(t[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;f[(t[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==4096)break}c=h;return}function gt(e){e=e|0;var i=0,r=0;t[e>>2]=35940;i=t[e+4592>>2]|0;if(i){r=e+4596|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function yt(e){e=e|0;var i=0,r=0;t[e>>2]=35940;i=t[e+4592>>2]|0;if(i){r=e+4596|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function Mt(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,255,0);o=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[u+8>>2]|0:l;a=t[i+12>>2]|0;a=(a|0)==0?t[u+12>>2]|0:a;i=t[i+16>>2]|0;r=t[u+16>>2]|0;t[e+160>>2]=(o|0)==0?t[u+4>>2]|0:o;t[e+164>>2]=l;t[e+168>>2]=a;Ot(e);a=0;do{t[e+172+(a*12|0)>>2]=4;t[e+172+(a*12|0)+4>>2]=0;n[e+172+(a*12|0)+8>>1]=0;n[e+172+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;t[e+4552>>2]=4;t[e+4556>>2]=0;f[e+4560>>0]=u;f[e+4561>>0]=1;f[e+4562>>0]=0;t[e+4564>>2]=4;t[e+4568>>2]=1;f[e+4572>>0]=u;f[e+4573>>0]=1;f[e+4574>>0]=0;t[e+4576>>2]=0;c=s;return}function At(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=t[i>>2]|0;t[i>>2]=0;i=t[u>>2]|0;t[u>>2]=o;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);t[h>>2]=0;t[h+4>>2]=a;u=r+8|0;t[h+8>>2]=t[u>>2];if(a){i=Lp(4600)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{t[s>>2]=t[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{t[s>>2]=0;s=s+4|0}while((s|0)<(o|0));t[i>>2]=35716;s=i+132|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[i+148>>2]=t[a>>2];t[i+152>>2]=0;t[i+156>>2]=0;t[i+160>>2]=0;s=i+4544|0;a=i+164|0;do{t[a>>2]=0;t[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;t[s>>2]=0;t[s+4>>2]=0;n[s+8>>1]=0;f[s+10>>0]=0;o=i+4556|0;t[o>>2]=0;t[o+4>>2]=0;n[o+8>>1]=0;f[o+10>>0]=0;o=i+4568|0;t[o>>2]=0;t[o+4>>2]=0;t[o+8>>2]=0;t[o+12>>2]=0;t[o+16>>2]=0;t[o+20>>2]=0;t[o+24>>2]=0;f[o+28>>0]=0;if(!(t[i+28>>2]|0))t[i+20>>2]=1;a=t[l>>2]|0;t[l>>2]=i;if(a){tM[t[(t[a>>2]|0)+4>>2]&255](a);i=t[l>>2]|0}Cf(i,h)}h=e+100|0;t[h>>2]=32;t[e+96>>2]=0;i=t[r>>2]|0;if(!i){t[e+108>>2]=t[r+4>>2];t[e+104>>2]=t[u>>2];St(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}t[e+132>>2]=i;s=e+120|0;u=e+124|0;a=t[u>>2]|0;i=t[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){t[u>>2]=d;a=d}}else{Pf(s,4e3-o|0);i=t[s>>2]|0;l=i;a=t[u>>2]|0}t[e+108>>2]=l;t[e+104>>2]=a-i;St(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function Et(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+32>>2]|0)!=0?(t[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(44,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+16>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(45,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(46,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(47,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+20>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=1;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=1;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function St(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0;p=c;c=c+32|0;y=p+12|0;v=p;_=e+156|0;k=(t[_>>2]|0)+4|0;if((t[e+32>>2]|0)==1)m=t[e+24>>2]|0;else m=1;i=re(m<<1,k)|0;t[y>>2]=0;M=y+4|0;t[M>>2]=0;t[y+8>>2]=0;e:do{if(i){if(!((i|0)<0?(w=0,ue(178,y|0),g=w,w=0,g&1):0))s=6;if((s|0)==6?(w=0,r=de(67,i|0)|0,g=w,w=0,!(g&1)):0){t[M>>2]=r;t[y>>2]=r;t[y+8>>2]=r+i;while(1){f[r>>0]=0;r=(t[M>>2]|0)+1|0;t[M>>2]=r;i=i+-1|0;if(!i)break e}}r=je()|0;i=t[y>>2]|0;if(!i)Qe(r|0);if((t[M>>2]|0)!=(i|0))t[M>>2]=i;Bp(i);Qe(r|0)}}while(0);t[v>>2]=0;g=v+4|0;t[g>>2]=0;t[v+8>>2]=0;do{if(!m)s=19;else{if(!(m>>>0>1073741823?(w=0,ue(178,v|0),b=w,w=0,b&1):0))s=17;if((s|0)==17?(n=m<<2,w=0,a=de(67,n|0)|0,b=w,w=0,!(b&1)):0){t[v>>2]=a;s=a+(m<<2)|0;t[v+8>>2]=s;ym(a|0,0,n|0)|0;t[g>>2]=s;s=19;break}r=je()|0;i=t[v>>2]|0;n=i;if(i){a=t[g>>2]|0;if((a|0)!=(i|0))t[g>>2]=a+(~((a+-4-n|0)>>>2)<<2);Bp(i)}}}while(0);if((s|0)==19){a=e+12|0;e:do{if((t[a>>2]|0)>0){s=e+4580|0;l=(re(m,k)|0)+1|0;o=e+4584|0;u=e+92|0;h=(m|0)>0;d=e+4576|0;b=0;i:while(1){r=t[y>>2]|0;i=r+1|0;t[s>>2]=i;r=r+l|0;t[o>>2]=r;if(!(b&1))i=r;else{t[s>>2]=r;t[o>>2]=i}n=t[u>>2]|0;w=0;Ce(t[(t[n>>2]|0)+12>>2]|0,n|0,i|0,t[_>>2]|0,k|0);n=w;w=0;if(n&1){s=29;break}if(h){i=t[s>>2]|0;r=t[v>>2]|0;n=0;do{t[d>>2]=t[r+(n<<2)>>2];r=t[_>>2]|0;f[i+r>>0]=f[i+(r+-1)>>0]|0;f[(t[o>>2]|0)+-1>>0]=f[t[s>>2]>>0]|0;w=0;ce(73,e|0,0);r=w;w=0;if(r&1){s=28;break i}r=t[v>>2]|0;t[r+(n<<2)>>2]=t[d>>2];i=(t[s>>2]|0)+k|0;t[s>>2]=i;t[o>>2]=(t[o>>2]|0)+k;n=n+1|0}while((n|0)<(m|0))}b=b+1|0;if((b|0)>=(t[a>>2]|0)){s=41;break e}}if((s|0)==28){r=je()|0;break}else if((s|0)==29){r=je()|0;break}}else s=41}while(0);do{if((s|0)==41){w=0;ue(182,e|0);e=w;w=0;if(e&1){r=je()|0;break}i=t[v>>2]|0;r=i;if(i){n=t[g>>2]|0;if((n|0)!=(i|0))t[g>>2]=n+(~((n+-4-r|0)>>>2)<<2);Bp(i)}i=t[y>>2]|0;if(!i){c=p;return}if((t[M>>2]|0)!=(i|0))t[M>>2]=i;Bp(i);c=p;return}}while(0);i=t[v>>2]|0;n=i;if(i){a=t[g>>2]|0;if((a|0)!=(i|0))t[g>>2]=a+(~((a+-4-n|0)>>>2)<<2);Bp(i)}}i=t[y>>2]|0;if(!i)Qe(r|0);if((t[M>>2]|0)!=(i|0))t[M>>2]=i;Bp(i);Qe(r|0)}function Tt(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0;b=e+4580|0;i=t[b>>2]|0;w=e+156|0;if((t[w>>2]|0)<=0)return;_=e+4584|0;k=e+4588|0;s=i;l=a[i+-1>>0]|0;i=a[i>>0]|0;d=0;while(1){h=t[_>>2]|0;c=a[h+(d+-1)>>0]|0;n=d+1|0;r=a[s+n>>0]|0;u=t[k>>2]|0;o=i-l|0;s=l-c|0;u=((((f[u+(r-i)>>0]|0)*9|0)+(f[u+o>>0]|0)|0)*9|0)+(f[u+s>>0]|0)|0;if(!u){n=(Ct(e,d,0)|0)+d|0;r=t[b>>2]|0;i=a[r+(n+-1)>>0]|0;r=a[r+n>>0]|0}else{l=i-c>>31;if((l^s|0)<0)s=i;else s=c+((l^o|0)<0?0:o)|0;h=Rt(e,u,a[h+d>>0]|0,s,0)|0;f[(t[_>>2]|0)+d>>0]=h}if((n|0)>=(t[w>>2]|0))break;s=t[b>>2]|0;l=i;i=r;d=n}return}function Rt(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0;k=i>>31;u=(k^i)-k|0;_=e+172+(u*12|0)+10|0;l=n[_>>1]|0;b=e+172+(u*12|0)|0;a=t[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){s=5;while(1)if((l<<s|0)<(a|0))s=s+1|0;else break}else s=4;else s=3;else s=2;else s=1;else s=0;d=e+172+(u*12|0)+8|0;a=(n[d>>1]^k)-k+f|0;if((a&255|0)==(a|0))h=a;else h=a>>31&255^255;o=(r-h^k)-k<<24;c=o>>24;if(!s)a=(t[e+172+(u*12|0)+4>>2]<<1)+-1+l>>31;else a=0;a=a^c;a=a>>30^a<<1;f=a>>s;if((f|0)<23){Bf(e,1,f+1|0);Bf(e,a&(1<<s)+-1,s)}else{Bf(e,1,24);Bf(e,a+255&255,8)}f=e+172+(u*12|0)+4|0;l=n[_>>1]|0;a=l<<16>>16==64;s=a&1;r=(t[f>>2]|0)+c>>s;l=a?32:l<<16>>16;t[b>>2]=(t[b>>2]|0)+((o|0)>-16777216?c:0-c|0)>>s;s=l+1|0;n[_>>1]=s;a=s+r|0;if((a|0)<1){_=n[d>>1]|0;n[d>>1]=(_&65535)-(_<<16>>16>-128&1);_=(a|0)>(~l|0)?a:0-l|0;t[f>>2]=_;k=c^k;i=i>>>31;i=h+i|0;i=i+k|0;i=i&255;return i|0}if((r|0)<=0){_=r;t[f>>2]=_;k=c^k;i=i>>>31;i=h+i|0;i=i+k|0;i=i&255;return i|0}_=r-s|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);_=(_|0)>0?0:_;t[f>>2]=_;k=c^k;i=i>>>31;i=h+i|0;i=i+k|0;i=i&255;return i|0}function Ct(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;o=(t[e+156>>2]|0)-i|0;u=t[e+4584>>2]|0;h=t[e+4580>>2]|0;s=f[u+(i+-1)>>0]|0;n=0;while(1){r=u+(n+i)|0;if((f[r>>0]|0)!=s<<24>>24){d=n;break}f[r>>0]=s;n=n+1|0;if((n|0)==(o|0)){d=o;break}}l=s&255;s=(d|0)==(o|0);c=e+4576|0;n=t[36476+(t[c>>2]<<2)>>2]|0;if((1<<n|0)>(d|0))r=d;else{r=d;do{Bf(e,1,1);n=t[c>>2]|0;r=r-(1<<t[36476+(n<<2)>>2])|0;n=(n|0)>30?31:n+1|0;t[c>>2]=n;n=t[36476+(n<<2)>>2]|0}while((r|0)>=(1<<n|0))}if(s){if(!r){e=o;return e|0}Bf(e,1,1);e=o;return e|0}Bf(e,r,n+1|0);r=d+i|0;s=u+r|0;n=a[s>>0]|0;r=a[h+r>>0]|0;h=l-r|0;if((((h|0)>-1?h:0-h|0)|0)<1){r=n-l<<24>>24;Pt(e,e+4564|0,r);r=r+l|0}else{h=r-l>>31|1;i=(re(n-r<<24,h)|0)>>24;Pt(e,e+4552|0,i);r=(re(i,h)|0)+r|0}f[s>>0]=r;e=t[c>>2]|0;t[c>>2]=(e|0)<1?0:e+-1|0;e=d+1|0;return e|0}function Pt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=t[h>>2]|0;s=(re(o>>>1,c)|0)+(t[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;It(e,s,n,31-(t[36476+(t[e+4576>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;f[e>>0]=(a[e>>0]|0)+1}n=(n+1-(t[h>>2]|0)>>1)+(t[i>>2]|0)|0;t[i>>2]=n;s=f[d>>0]|0;if(s<<24>>24!=(f[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}t[i>>2]=n>>1;e=(s&255)>>>1;f[d>>0]=e;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}function It(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,t=0;n=r>>i;t=f+-8|0;if((n|0)<(f+-9|0)){if((n|0)>30){f=(n|0)/2|0;Bf(e,0,f);n=n-f|0}Bf(e,1,n+1|0);Bf(e,(1<<i)+-1&r,i);return}if((t|0)>31){Bf(e,0,31);Bf(e,1,f+-39|0)}else Bf(e,1,t);Bf(e,r+255&255,8);return}function Ot(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,255,0);u=e+160|0;if(((t[o+4>>2]|0)==(t[u>>2]|0)?(t[o+8>>2]|0)==(t[e+164>>2]|0):0)?(t[o+12>>2]|0)==(t[e+168>>2]|0):0){u=t[8900]|0;t[e+4588>>2]=u+(((t[8901]|0)-u|0)>>>1);c=h;return}r=e+4592|0;n=e+4596|0;a=t[n>>2]|0;i=t[r>>2]|0;s=a-i|0;if(s>>>0>=512){if(s>>>0>512?(l=i+512|0,(a|0)!=(l|0)):0)t[n>>2]=l}else{Yf(r,512-s|0);i=t[r>>2]|0}o=e+4588|0;t[o>>2]=i+256;l=e+168|0;a=e+164|0;s=-256;while(1){i=t[l>>2]|0;if((s|0)>(0-i|0)){r=t[a>>2]|0;if((s|0)>(0-r|0)){n=t[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){f[(t[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;f[(t[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==256)break}c=h;return}function xt(e){e=e|0;var i=0,r=0;t[e>>2]=35912;i=t[e+4592>>2]|0;if(i){r=e+4596|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function Lt(e){e=e|0;var i=0,r=0;t[e>>2]=35912;i=t[e+4592>>2]|0;if(i){r=e+4596|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function Bt(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,255,0);o=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[u+8>>2]|0:l;a=t[i+12>>2]|0;a=(a|0)==0?t[u+12>>2]|0:a;i=t[i+16>>2]|0;r=t[u+16>>2]|0;t[e+160>>2]=(o|0)==0?t[u+4>>2]|0:o;t[e+164>>2]=l;t[e+168>>2]=a;qt(e);a=0;do{t[e+172+(a*12|0)>>2]=4;t[e+172+(a*12|0)+4>>2]=0;n[e+172+(a*12|0)+8>>1]=0;n[e+172+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;t[e+4552>>2]=4;t[e+4556>>2]=0;f[e+4560>>0]=u;f[e+4561>>0]=1;f[e+4562>>0]=0;t[e+4564>>2]=4;t[e+4568>>2]=1;f[e+4572>>0]=u;f[e+4573>>0]=1;f[e+4574>>0]=0;t[e+4576>>2]=0;c=s;return}function zt(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=t[i>>2]|0;t[i>>2]=0;i=t[u>>2]|0;t[u>>2]=o;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);t[h>>2]=0;t[h+4>>2]=a;u=r+8|0;t[h+8>>2]=t[u>>2];if(a){i=Lp(4600)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{t[s>>2]=t[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{t[s>>2]=0;s=s+4|0}while((s|0)<(o|0));t[i>>2]=35688;s=i+132|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[i+148>>2]=t[a>>2];t[i+152>>2]=0;t[i+156>>2]=0;t[i+160>>2]=0;s=i+4544|0;a=i+164|0;do{t[a>>2]=0;t[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;t[s>>2]=0;t[s+4>>2]=0;n[s+8>>1]=0;f[s+10>>0]=0;o=i+4556|0;t[o>>2]=0;t[o+4>>2]=0;n[o+8>>1]=0;f[o+10>>0]=0;o=i+4568|0;t[o>>2]=0;t[o+4>>2]=0;t[o+8>>2]=0;t[o+12>>2]=0;t[o+16>>2]=0;t[o+20>>2]=0;t[o+24>>2]=0;f[o+28>>0]=0;if(!(t[i+28>>2]|0))t[i+20>>2]=1;a=t[l>>2]|0;t[l>>2]=i;if(a){tM[t[(t[a>>2]|0)+4>>2]&255](a);i=t[l>>2]|0}Cf(i,h)}h=e+100|0;t[h>>2]=32;t[e+96>>2]=0;i=t[r>>2]|0;if(!i){t[e+108>>2]=t[r+4>>2];t[e+104>>2]=t[u>>2];Nt(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}t[e+132>>2]=i;s=e+120|0;u=e+124|0;a=t[u>>2]|0;i=t[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){t[u>>2]=d;a=d}}else{Pf(s,4e3-o|0);i=t[s>>2]|0;l=i;a=t[u>>2]|0}t[e+108>>2]=l;t[e+104>>2]=a-i;Nt(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function Dt(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+32>>2]|0)!=0?(t[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(44,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+16>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(45,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(46,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(47,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+20>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=3;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=3;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function Nt(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0;p=c;c=c+32|0;y=p+12|0;v=p;_=e+156|0;k=(t[_>>2]|0)+4|0;if((t[e+32>>2]|0)==1)m=t[e+24>>2]|0;else m=1;i=re(m<<1,k)|0;t[y>>2]=0;M=y+4|0;t[M>>2]=0;t[y+8>>2]=0;e:do{if(i){if(!(i>>>0>1431655765?(w=0,ue(178,y|0),g=w,w=0,g&1):0))s=6;if((s|0)==6?(w=0,r=de(67,i*3|0)|0,g=w,w=0,!(g&1)):0){t[M>>2]=r;t[y>>2]=r;t[y+8>>2]=r+(i*3|0);while(1){f[r>>0]=0;f[r+1>>0]=0;f[r+2>>0]=0;r=(t[M>>2]|0)+3|0;t[M>>2]=r;i=i+-1|0;if(!i)break e}}n=je()|0;i=t[y>>2]|0;if(!i)Qe(n|0);r=t[M>>2]|0;if((r|0)!=(i|0))t[M>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Bp(i);Qe(n|0)}}while(0);t[v>>2]=0;g=v+4|0;t[g>>2]=0;t[v+8>>2]=0;do{if(!m)s=19;else{if(!(m>>>0>1073741823?(w=0,ue(178,v|0),b=w,w=0,b&1):0))s=17;if((s|0)==17?(n=m<<2,w=0,a=de(67,n|0)|0,b=w,w=0,!(b&1)):0){t[v>>2]=a;s=a+(m<<2)|0;t[v+8>>2]=s;ym(a|0,0,n|0)|0;t[g>>2]=s;s=19;break}n=je()|0;i=t[v>>2]|0;r=i;if(i){a=t[g>>2]|0;if((a|0)!=(i|0))t[g>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}}while(0);if((s|0)==19){a=e+12|0;e:do{if((t[a>>2]|0)>0){s=e+4580|0;l=(re(m,k)|0)+1|0;o=e+4584|0;u=e+92|0;h=(m|0)>0;d=e+4576|0;b=0;i:while(1){n=t[y>>2]|0;i=n+3|0;t[s>>2]=i;r=n+(l*3|0)|0;t[o>>2]=r;if(!(b&1))i=l;else{t[s>>2]=r;t[o>>2]=i;i=1}r=t[u>>2]|0;w=0;Ce(t[(t[r>>2]|0)+12>>2]|0,r|0,n+(i*3|0)|0,t[_>>2]|0,k|0);n=w;w=0;if(n&1){s=29;break}if(h){i=t[v>>2]|0;r=t[s>>2]|0;n=0;do{t[d>>2]=t[i+(n<<2)>>2];A=t[_>>2]|0;i=r+(A*3|0)|0;r=r+((A+-1|0)*3|0)|0;f[i>>0]=f[r>>0]|0;f[i+1>>0]=f[r+1>>0]|0;f[i+2>>0]=f[r+2>>0]|0;i=t[s>>2]|0;r=(t[o>>2]|0)+-3|0;f[r>>0]=f[i>>0]|0;f[r+1>>0]=f[i+1>>0]|0;f[r+2>>0]=f[i+2>>0]|0;w=0;ce(74,e|0,0);r=w;w=0;if(r&1){s=28;break i}i=t[v>>2]|0;t[i+(n<<2)>>2]=t[d>>2];r=(t[s>>2]|0)+(k*3|0)|0;t[s>>2]=r;t[o>>2]=(t[o>>2]|0)+(k*3|0);n=n+1|0}while((n|0)<(m|0))}b=b+1|0;if((b|0)>=(t[a>>2]|0)){s=41;break e}}if((s|0)==28){n=je()|0;break}else if((s|0)==29){n=je()|0;break}}else s=41}while(0);do{if((s|0)==41){w=0;ue(182,e|0);A=w;w=0;if(A&1){n=je()|0;break}i=t[v>>2]|0;r=i;if(i){n=t[g>>2]|0;if((n|0)!=(i|0))t[g>>2]=n+(~((n+-4-r|0)>>>2)<<2);Bp(i)}i=t[y>>2]|0;if(!i){c=p;return}r=t[M>>2]|0;if((r|0)!=(i|0))t[M>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Bp(i);c=p;return}}while(0);i=t[v>>2]|0;r=i;if(i){a=t[g>>2]|0;if((a|0)!=(i|0))t[g>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}i=t[y>>2]|0;if(!i)Qe(n|0);r=t[M>>2]|0;if((r|0)!=(i|0))t[M>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Bp(i);Qe(n|0)}function Ft(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;S=e+156|0;if((t[S>>2]|0)<=0)return;T=e+4584|0;R=e+4580|0;C=e+4588|0;E=0;while(1){y=E+-1|0;l=t[T>>2]|0;o=t[R>>2]|0;i=E+1|0;s=a[o+(E*3|0)>>0]|0;A=t[C>>2]|0;u=a[o+(y*3|0)>>0]|0;c=s-u|0;h=a[l+(y*3|0)>>0]|0;d=u-h|0;b=((((f[A+((a[o+(i*3|0)>>0]|0)-s)>>0]|0)*9|0)+(f[A+c>>0]|0)|0)*9|0)+(f[A+d>>0]|0)|0;n=a[o+(E*3|0)+1>>0]|0;_=a[o+(y*3|0)+1>>0]|0;k=n-_|0;w=a[l+(y*3|0)+1>>0]|0;m=_-w|0;v=((((f[A+((a[o+(i*3|0)+1>>0]|0)-n)>>0]|0)*9|0)+(f[A+k>>0]|0)|0)*9|0)+(f[A+m>>0]|0)|0;r=a[o+(E*3|0)+2>>0]|0;p=a[o+(y*3|0)+2>>0]|0;g=r-p|0;y=a[l+(y*3|0)+2>>0]|0;M=p-y|0;A=((((f[A+((a[o+(i*3|0)+2>>0]|0)-r)>>0]|0)*9|0)+(f[A+g>>0]|0)|0)*9|0)+(f[A+M>>0]|0)|0;if(!(v|b|A))i=(Ht(e,E,0)|0)+E|0;else{o=a[l+(E*3|0)>>0]|0;l=s-h>>31;if((l^d|0)>=0)if((l^c|0)<0)s=h;else s=h-u+s|0;o=Ut(e,b,o,s,0)|0;l=a[(t[T>>2]|0)+(E*3|0)+1>>0]|0;s=n-w>>31;if((s^m|0)>=0)if((s^k|0)<0)n=w;else n=w-_+n|0;s=Ut(e,v,l,n,0)|0;l=a[(t[T>>2]|0)+(E*3|0)+2>>0]|0;n=r-y>>31;if((n^M|0)>=0)if((n^g|0)<0)r=y;else r=y-p+r|0;A=Ut(e,A,l,r,0)|0;E=(t[T>>2]|0)+(E*3|0)|0;f[E>>0]=o;f[E+1>>0]=s;f[E+2>>0]=A}if((i|0)<(t[S>>2]|0))E=i;else break}return}function Ht(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0;h=(t[e+156>>2]|0)-i|0;d=t[e+4584>>2]|0;b=t[e+4580>>2]|0;c=d+((i+-1|0)*3|0)|0;_=f[c>>0]|0;u=f[c+1>>0]|0;c=f[c+2>>0]|0;l=0;while(1){r=d+((l+i|0)*3|0)|0;n=r+1|0;s=r+2|0;if(!(((f[r>>0]|0)==_<<24>>24?(f[n>>0]|0)==u<<24>>24:0)&(f[s>>0]|0)==c<<24>>24))break;f[r>>0]=_;f[n>>0]=u;f[s>>0]=c;l=l+1|0;if((l|0)==(h|0)){l=h;break}}s=(l|0)==(h|0);o=e+4576|0;n=t[36476+(t[o>>2]<<2)>>2]|0;if((1<<n|0)>(l|0))r=l;else{r=l;do{Bf(e,1,1);n=t[o>>2]|0;r=r-(1<<t[36476+(n<<2)>>2])|0;n=(n|0)>30?31:n+1|0;t[o>>2]=n;n=t[36476+(n<<2)>>2]|0}while((r|0)>=(1<<n|0))}if(!s){Bf(e,r,n+1|0);k=l+i|0;h=d+(k*3|0)|0;d=h+1|0;w=f[d>>0]|0;i=h+2|0;r=f[i>>0]|0;b=b+(k*3|0)|0;k=f[b+1>>0]|0;v=f[b+2>>0]|0;b=a[b>>0]|0;s=b-(_&255)>>31|1;n=(re((a[h>>0]|0)-b<<24,s)|0)>>24;m=e+4552|0;jt(e,m,n);_=k&255;k=_-(u&255)>>31|1;w=(re((w&255)-_<<24,k)|0)>>24;jt(e,m,w);u=v&255;c=u-(c&255)>>31|1;r=(re((r&255)-u<<24,c)|0)>>24;jt(e,m,r);_=(re(w,k)|0)+_&255;e=(re(r,c)|0)+u&255;f[h>>0]=(re(n,s)|0)+b;f[d>>0]=_;f[i>>0]=e;e=t[o>>2]|0;t[o>>2]=(e|0)<1?0:e+-1|0;e=l+1|0;return e|0}if(!r){v=h;return v|0}Bf(e,1,1);v=h;return v|0}function Ut(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0;k=i>>31;u=(k^i)-k|0;_=e+172+(u*12|0)+10|0;l=n[_>>1]|0;b=e+172+(u*12|0)|0;a=t[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){s=5;while(1)if((l<<s|0)<(a|0))s=s+1|0;else break}else s=4;else s=3;else s=2;else s=1;else s=0;d=e+172+(u*12|0)+8|0;a=(n[d>>1]^k)-k+f|0;if((a&255|0)==(a|0))h=a;else h=a>>31&255^255;o=(r-h^k)-k<<24;c=o>>24;if(!s)a=(t[e+172+(u*12|0)+4>>2]<<1)+-1+l>>31;else a=0;a=a^c;a=a>>30^a<<1;f=a>>s;if((f|0)<23){Bf(e,1,f+1|0);Bf(e,a&(1<<s)+-1,s)}else{Bf(e,1,24);Bf(e,a+255&255,8)}f=e+172+(u*12|0)+4|0;l=n[_>>1]|0;a=l<<16>>16==64;s=a&1;r=(t[f>>2]|0)+c>>s;l=a?32:l<<16>>16;t[b>>2]=(t[b>>2]|0)+((o|0)>-16777216?c:0-c|0)>>s;s=l+1|0;n[_>>1]=s;a=s+r|0;if((a|0)<1){_=n[d>>1]|0;n[d>>1]=(_&65535)-(_<<16>>16>-128&1);_=(a|0)>(~l|0)?a:0-l|0;t[f>>2]=_;k=c^k;i=i>>>31;i=h+i|0;i=i+k|0;i=i&255;return i|0}if((r|0)<=0){_=r;t[f>>2]=_;k=c^k;i=i>>>31;i=h+i|0;i=i+k|0;i=i&255;return i|0}_=r-s|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);_=(_|0)>0?0:_;t[f>>2]=_;k=c^k;i=i>>>31;i=h+i|0;i=i+k|0;i=i&255;return i|0}function jt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=t[h>>2]|0;s=(re(o>>>1,c)|0)+(t[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;Yt(e,s,n,31-(t[36476+(t[e+4576>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;f[e>>0]=(a[e>>0]|0)+1}n=(n+1-(t[h>>2]|0)>>1)+(t[i>>2]|0)|0;t[i>>2]=n;s=f[d>>0]|0;if(s<<24>>24!=(f[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}t[i>>2]=n>>1;e=(s&255)>>>1;f[d>>0]=e;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}function Yt(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,t=0;n=r>>i;t=f+-8|0;if((n|0)<(f+-9|0)){if((n|0)>30){f=(n|0)/2|0;Bf(e,0,f);n=n-f|0}Bf(e,1,n+1|0);Bf(e,(1<<i)+-1&r,i);return}if((t|0)>31){Bf(e,0,31);Bf(e,1,f+-39|0)}else Bf(e,1,t);Bf(e,r+255&255,8);return}function qt(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,255,0);u=e+160|0;if(((t[o+4>>2]|0)==(t[u>>2]|0)?(t[o+8>>2]|0)==(t[e+164>>2]|0):0)?(t[o+12>>2]|0)==(t[e+168>>2]|0):0){u=t[8900]|0;t[e+4588>>2]=u+(((t[8901]|0)-u|0)>>>1);c=h;return}r=e+4592|0;n=e+4596|0;a=t[n>>2]|0;i=t[r>>2]|0;s=a-i|0;if(s>>>0>=512){if(s>>>0>512?(l=i+512|0,(a|0)!=(l|0)):0)t[n>>2]=l}else{Yf(r,512-s|0);i=t[r>>2]|0}o=e+4588|0;t[o>>2]=i+256;l=e+168|0;a=e+164|0;s=-256;while(1){i=t[l>>2]|0;if((s|0)>(0-i|0)){r=t[a>>2]|0;if((s|0)>(0-r|0)){n=t[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){f[(t[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;f[(t[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==256)break}c=h;return}function $t(e){e=e|0;var i=0,r=0;t[e>>2]=35884;i=t[e+4616>>2]|0;if(i){r=e+4620|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);e=e+4|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function Vt(e){e=e|0;var i=0,r=0;t[e>>2]=35884;i=t[e+4616>>2]|0;if(i){r=e+4620|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36612;i=t[e+120>>2]|0;if(i){r=e+124|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+92|0;i=t[r>>2]|0;t[r>>2]=0;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);r=e+4|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function Xt(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,t[e+136>>2]|0,t[e+144>>2]|0);u=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[h+8>>2]|0:l;s=t[i+12>>2]|0;s=(s|0)==0?t[h+12>>2]|0:s;r=t[i+16>>2]|0;a=t[h+16>>2]|0;t[e+184>>2]=(u|0)==0?t[h+4>>2]|0:u;t[e+188>>2]=l;t[e+192>>2]=s;fa(e);s=e+140|0;i=(t[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{t[e+196+(l*12|0)>>2]=i;t[e+196+(l*12|0)+4>>2]=0;n[e+196+(l*12|0)+8>>1]=0;n[e+196+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(t[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;t[e+4576>>2]=u;t[e+4580>>2]=0;f[e+4584>>0]=h;f[e+4585>>0]=1;f[e+4586>>0]=0;t[e+4588>>2]=u;t[e+4592>>2]=1;f[e+4596>>0]=h;f[e+4597>>0]=1;f[e+4598>>0]=0;t[e+4600>>2]=0;c=o;return}function Gt(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+16|0;h=b;u=e+92|0;o=t[i>>2]|0;t[i>>2]=0;i=t[u>>2]|0;t[u>>2]=o;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);t[h>>2]=0;t[h+4>>2]=a;u=r+8|0;t[h+8>>2]=t[u>>2];if(a){i=Lp(4624)|0;a=e+8|0;s=i+4|0;l=a;o=s+84|0;do{t[s>>2]=t[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));s=i+88|0;o=s+40|0;do{t[s>>2]=0;s=s+4|0}while((s|0)<(o|0));t[i>>2]=35660;t[i+128>>2]=t[e+136>>2];t[i+132>>2]=t[e+140>>2];t[i+136>>2]=t[e+144>>2];t[i+140>>2]=t[e+148>>2];t[i+144>>2]=t[e+152>>2];t[i+148>>2]=t[e+156>>2];t[i+152>>2]=t[e+160>>2];s=i+156|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[i+172>>2]=t[a>>2];t[i+176>>2]=0;t[i+180>>2]=0;t[i+184>>2]=0;s=i+4568|0;a=i+188|0;do{t[a>>2]=0;t[a+4>>2]=0;n[a+8>>1]=0;n[a+10>>1]=1;a=a+12|0}while((a|0)!=(s|0));l=e+4|0;t[s>>2]=0;t[s+4>>2]=0;n[s+8>>1]=0;f[s+10>>0]=0;o=i+4580|0;t[o>>2]=0;t[o+4>>2]=0;n[o+8>>1]=0;f[o+10>>0]=0;o=i+4592|0;t[o>>2]=0;t[o+4>>2]=0;t[o+8>>2]=0;t[o+12>>2]=0;t[o+16>>2]=0;t[o+20>>2]=0;t[o+24>>2]=0;f[o+28>>0]=0;if(!(t[i+28>>2]|0))t[i+20>>2]=1;a=t[l>>2]|0;t[l>>2]=i;if(a){tM[t[(t[a>>2]|0)+4>>2]&255](a);i=t[l>>2]|0}Cf(i,h)}h=e+100|0;t[h>>2]=32;t[e+96>>2]=0;i=t[r>>2]|0;if(!i){t[e+108>>2]=t[r+4>>2];t[e+104>>2]=t[u>>2];Wt(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}t[e+132>>2]=i;s=e+120|0;u=e+124|0;a=t[u>>2]|0;i=t[s>>2]|0;l=i;o=a-l|0;if(o>>>0>=4e3){if(o>>>0>4e3?(d=i+4e3|0,(a|0)!=(d|0)):0){t[u>>2]=d;a=d}}else{Pf(s,4e3-o|0);i=t[s>>2]|0;l=i;a=t[u>>2]|0}t[e+108>>2]=l;t[e+104>>2]=a-i;Wt(e);d=e+116|0;d=t[d>>2]|0;e=t[h>>2]|0;e=e+-32|0;e=(e|0)/8|0;e=d-e|0;c=b;return e|0}function Kt(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+32>>2]|0)!=0?(t[e+24>>2]|0)!=1:0){m=e+8|0;p=e+36|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(44,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+16>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(45,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(46,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(47,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+20>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=1;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=1;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function Wt(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0;p=c;c=c+32|0;y=p+12|0;v=p;k=e+180|0;m=(t[k>>2]|0)+4|0;if((t[e+32>>2]|0)==1)b=t[e+24>>2]|0;else b=1;i=re(b<<1,m)|0;t[y>>2]=0;M=y+4|0;t[M>>2]=0;t[y+8>>2]=0;e:do{if(i){if(!((i|0)<0?(w=0,ue(178,y|0),g=w,w=0,g&1):0))_=6;if((_|0)==6?(w=0,r=de(67,i|0)|0,g=w,w=0,!(g&1)):0){t[M>>2]=r;t[y>>2]=r;t[y+8>>2]=r+i;while(1){f[r>>0]=0;r=(t[M>>2]|0)+1|0;t[M>>2]=r;i=i+-1|0;if(!i)break e}}r=je()|0;i=t[y>>2]|0;if(!i)Qe(r|0);if((t[M>>2]|0)!=(i|0))t[M>>2]=i;Bp(i);Qe(r|0)}}while(0);t[v>>2]=0;g=v+4|0;t[g>>2]=0;t[v+8>>2]=0;do{if(!b)_=19;else{if(!(b>>>0>1073741823?(w=0,ue(178,v|0),d=w,w=0,d&1):0))_=17;if((_|0)==17?(n=b<<2,w=0,a=de(67,n|0)|0,d=w,w=0,!(d&1)):0){t[v>>2]=a;_=a+(b<<2)|0;t[v+8>>2]=_;ym(a|0,0,n|0)|0;t[g>>2]=_;_=19;break}r=je()|0;i=t[v>>2]|0;n=i;if(i){a=t[g>>2]|0;if((a|0)!=(i|0))t[g>>2]=a+(~((a+-4-n|0)>>>2)<<2);Bp(i)}}}while(0);if((_|0)==19){l=e+12|0;e:do{if((t[l>>2]|0)>0){o=e+4604|0;u=(re(b,m)|0)+1|0;h=e+4608|0;d=e+92|0;s=e+4600|0;if((b|0)>0)a=0;else{n=0;while(1){r=t[y>>2]|0;i=r+1|0;t[o>>2]=i;r=r+u|0;t[h>>2]=r;if(!(n&1))i=r;else{t[o>>2]=r;t[h>>2]=i}b=t[d>>2]|0;w=0;Ce(t[(t[b>>2]|0)+12>>2]|0,b|0,i|0,t[k>>2]|0,m|0);b=w;w=0;if(b&1)break;n=n+1|0;if((n|0)>=(t[l>>2]|0)){_=45;break e}}r=je()|0;break}i:while(1){r=t[y>>2]|0;i=r+1|0;t[o>>2]=i;r=r+u|0;t[h>>2]=r;if(!(a&1))i=r;else{t[o>>2]=r;t[h>>2]=i}_=t[d>>2]|0;w=0;Ce(t[(t[_>>2]|0)+12>>2]|0,_|0,i|0,t[k>>2]|0,m|0);_=w;w=0;if(_&1){_=28;break}i=t[v>>2]|0;r=t[o>>2]|0;n=0;do{t[s>>2]=t[i+(n<<2)>>2];_=t[k>>2]|0;f[r+_>>0]=f[r+(_+-1)>>0]|0;f[(t[h>>2]|0)+-1>>0]=f[t[o>>2]>>0]|0;w=0;ce(75,e|0,0);_=w;w=0;if(_&1){_=36;break i}i=t[v>>2]|0;t[i+(n<<2)>>2]=t[s>>2];r=(t[o>>2]|0)+m|0;t[o>>2]=r;t[h>>2]=(t[h>>2]|0)+m;n=n+1|0}while((n|0)<(b|0));a=a+1|0;if((a|0)>=(t[l>>2]|0)){_=45;break e}}if((_|0)==28){r=je()|0;break}else if((_|0)==36){r=je()|0;break}}else _=45}while(0);do{if((_|0)==45){w=0;ue(182,e|0);e=w;w=0;if(e&1){r=je()|0;break}i=t[v>>2]|0;r=i;if(i){n=t[g>>2]|0;if((n|0)!=(i|0))t[g>>2]=n+(~((n+-4-r|0)>>>2)<<2);Bp(i)}i=t[y>>2]|0;if(!i){c=p;return}if((t[M>>2]|0)!=(i|0))t[M>>2]=i;Bp(i);c=p;return}}while(0);i=t[v>>2]|0;n=i;if(i){a=t[g>>2]|0;if((a|0)!=(i|0))t[g>>2]=a+(~((a+-4-n|0)>>>2)<<2);Bp(i)}}i=t[y>>2]|0;if(!i)Qe(r|0);if((t[M>>2]|0)!=(i|0))t[M>>2]=i;Bp(i);Qe(r|0)}function Zt(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0;b=e+4604|0;i=t[b>>2]|0;w=e+180|0;if((t[w>>2]|0)<=0)return;_=e+4608|0;k=e+4612|0;s=i;l=a[i+-1>>0]|0;i=a[i>>0]|0;d=0;while(1){h=t[_>>2]|0;c=a[h+(d+-1)>>0]|0;n=d+1|0;r=a[s+n>>0]|0;u=t[k>>2]|0;o=i-l|0;s=l-c|0;u=((((f[u+(r-i)>>0]|0)*9|0)+(f[u+o>>0]|0)|0)*9|0)+(f[u+s>>0]|0)|0;if(!u){n=(Qt(e,d,0)|0)+d|0;r=t[b>>2]|0;i=a[r+(n+-1)>>0]|0;r=a[r+n>>0]|0}else{l=i-c>>31;if((l^s|0)<0)s=i;else s=c+((l^o|0)<0?0:o)|0;h=Jt(e,u,a[h+d>>0]|0,s,0)|0;f[(t[_>>2]|0)+d>>0]=h}if((n|0)>=(t[w>>2]|0))break;s=t[b>>2]|0;l=i;i=r;d=n}return}function Jt(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0;w=i>>31;s=(w^i)-w|0;_=e+196+(s*12|0)+10|0;l=n[_>>1]|0;b=e+196+(s*12|0)|0;a=t[b>>2]|0;if((l|0)<(a|0))if((l<<1|0)<(a|0))if((l<<2|0)<(a|0))if((l<<3|0)<(a|0))if((l<<4|0)<(a|0)){i=5;while(1)if((l<<i|0)<(a|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;h=e+196+(s*12|0)+8|0;a=(n[h>>1]^w)-w+f|0;k=e+136|0;f=t[k>>2]|0;if((a&f|0)==(a|0))c=a;else c=f&~(a>>31);a=(r-c^w)-w|0;u=e+144|0;f=t[u>>2]|0;if((a|0)>0)a=(a+f|0)/(f<<1|1|0)|0;else a=(a-f|0)/(f<<1|1|0)|0;d=e+140|0;o=t[d>>2]|0;r=((a|0)<0?o:0)+a|0;o=r-((r|0)<((o+1|0)/2|0|0)?0:o)|0;s=e+196+(s*12|0)+4|0;if(!(f|i))a=(t[s>>2]<<1)+-1+l>>31;else a=0;f=a^o;ra(e,i,f>>30^f<<1,t[e+156>>2]|0);f=t[e+160>>2]|0;i=(t[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;a=(t[s>>2]|0)+(re(t[u>>2]<<1|1,o)|0)|0;r=n[_>>1]|0;if((r|0)==(f|0)){i=i>>1;a=a>>1;r=f>>1}t[b>>2]=i;f=r+1|0;n[_>>1]=f;i=f+a|0;if((i|0)>=1){if((a|0)>0){a=a-f|0;_=n[h>>1]|0;n[h>>1]=(_<<16>>16<127&1)+(_&65535);a=(a|0)>0?0:a}}else{a=n[h>>1]|0;n[h>>1]=(a&65535)-(a<<16>>16>-128&1);a=(i|0)>(~r|0)?i:0-r|0}t[s>>2]=a;f=t[u>>2]|0;r=f<<1|1;i=(re(r,(o^w)-w|0)|0)+c|0;if((i|0)>=(0-f|0)){a=t[k>>2]|0;if((a+f|0)<(i|0))i=i-(re(t[d>>2]|0,r)|0)|0}else{i=(re(t[d>>2]|0,r)|0)+i|0;a=t[k>>2]|0}if((i&a|0)==(i|0)){w=i;w=w&255;return w|0}w=a&~(i>>31);w=w&255;return w|0}function Qt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;c=(t[e+180>>2]|0)-i|0;h=t[e+4608>>2]|0;d=t[e+4604>>2]|0;s=f[h+(i+-1)>>0]|0;u=s&255;r=e+144|0;l=0;while(1){n=h+(l+i)|0;o=(a[n>>0]|0)-u|0;if((((o|0)>-1?o:0-o|0)|0)>(t[r>>2]|0))break;f[n>>0]=s;l=l+1|0;if((l|0)==(c|0)){l=c;break}}s=(l|0)==(c|0);o=e+4600|0;n=t[36476+(t[o>>2]<<2)>>2]|0;if((1<<n|0)>(l|0))r=l;else{r=l;do{Bf(e,1,1);n=t[o>>2]|0;r=r-(1<<t[36476+(n<<2)>>2])|0;n=(n|0)>30?31:n+1|0;t[o>>2]=n;n=t[36476+(n<<2)>>2]|0}while((r|0)>=(1<<n|0))}if(!s){Bf(e,r,n+1|0);c=l+i|0;i=h+c|0;f[i>>0]=ea(e,a[i>>0]|0,u,a[d+c>>0]|0)|0;e=t[o>>2]|0;t[o>>2]=(e|0)<1?0:e+-1|0;e=l+1|0;return e|0}if(!r){e=c;return e|0}Bf(e,1,1);e=c;return e|0}function ea(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0;l=r-f|0;o=e+136|0;s=e+144|0;n=t[s>>2]|0;if((((l|0)>-1?l:0-l|0)|0)>(n|0)){a=f-r>>31|1;i=re(a,i-f|0)|0;if((i|0)>0)i=(n+i|0)/(n<<1|1|0)|0;else i=(i-n|0)/(n<<1|1|0)|0;l=e+140|0;n=t[l>>2]|0;r=((i|0)<0?n:0)+i|0;n=r-((r|0)<((n+1|0)/2|0|0)?0:n)|0;ia(e,e+4576|0,n);n=re(n,a)|0;a=t[s>>2]|0;s=a<<1|1;n=(re(n,s)|0)+f|0;if((n|0)>=(0-a|0)){i=t[o>>2]|0;if((i+a|0)<(n|0))n=n-(re(t[l>>2]|0,s)|0)|0}else{n=(re(t[l>>2]|0,s)|0)+n|0;i=t[o>>2]|0}if((n&i|0)==(n|0)){o=n;o=o&255;return o|0}o=i&~(n>>31);o=o&255;return o|0}else{i=i-r|0;if((i|0)>0)i=(n+i|0)/(n<<1|1|0)|0;else i=(i-n|0)/(n<<1|1|0)|0;l=e+140|0;n=t[l>>2]|0;a=((i|0)<0?n:0)+i|0;n=a-((a|0)<((n+1|0)/2|0|0)?0:n)|0;ia(e,e+4588|0,n);a=t[s>>2]|0;s=a<<1|1;n=(re(s,n)|0)+r|0;if((n|0)>=(0-a|0)){i=t[o>>2]|0;if((i+a|0)<(n|0))n=n-(re(t[l>>2]|0,s)|0)|0}else{n=(re(t[l>>2]|0,s)|0)+n|0;i=t[o>>2]|0}if((n&i|0)==(n|0)){o=n;o=o&255;return o|0}o=i&~(n>>31);o=o&255;return o|0}return 0}function ia(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i+9|0;o=a[d>>0]|0;h=i+4|0;c=t[h>>2]|0;s=(re(o>>>1,c)|0)+(t[i>>2]|0)|0;if((o|0)<(s|0)){l=o;n=0;do{l=l<<1;n=n+1|0}while((l|0)<(s|0));s=n}else s=0;if((r|0)>0&(s|0)==0?a[i+10>>0]<<1>>>0<o>>>0:0)n=1;else u=5;do{if((u|0)==5){n=(r|0)<0;if(n?a[i+10>>0]<<1>>>0>=o>>>0:0){n=1;break}n=n&(s|0)!=0}}while(0);n=(((r|0)>-1?r:0-r|0)<<1)-c+(n<<31>>31)|0;ra(e,s,n,(t[e+156>>2]|0)+-1-(t[36476+(t[e+4600>>2]<<2)>>2]|0)|0);if((r|0)<0){e=i+10|0;f[e>>0]=(a[e>>0]|0)+1}n=(n+1-(t[h>>2]|0)>>1)+(t[i>>2]|0)|0;t[i>>2]=n;s=f[d>>0]|0;if(s<<24>>24!=(f[i+8>>0]|0)){i=s;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}t[i>>2]=n>>1;e=(s&255)>>>1;f[d>>0]=e;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;i=e;i=i&255;i=i+1|0;i=i&255;f[d>>0]=i;return}function ra(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0;n=r>>i;a=e+148|0;s=f-(t[a>>2]|0)|0;if((n|0)<(s+-1|0)){if((n|0)>30){f=(n|0)/2|0;Bf(e,0,f);n=n-f|0}Bf(e,1,n+1|0);Bf(e,(1<<i)+-1&r,i);return}if((s|0)>31){Bf(e,0,31);Bf(e,1,f+-31-(t[a>>2]|0)|0)}else Bf(e,1,s);i=t[a>>2]|0;Bf(e,(1<<i)+-1&r+-1,i);return}function fa(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0;_=c;c=c+32|0;n=_;b=e+144|0;e:do{if(!(t[b>>2]|0)){r=t[e+136>>2]|0;i=e+152|0;if((((r|0)==((1<<t[i>>2])+-1|0)?(op(n,r,0),(t[n+4>>2]|0)==(t[e+184>>2]|0)):0)?(t[n+8>>2]|0)==(t[e+188>>2]|0):0)?(t[n+12>>2]|0)==(t[e+192>>2]|0):0)switch(t[i>>2]|0){case 8:{b=t[8900]|0;t[e+4612>>2]=b+(((t[8901]|0)-b|0)>>>1);c=_;return}case 10:{b=t[8903]|0;t[e+4612>>2]=b+(((t[8904]|0)-b|0)>>>1);c=_;return}case 12:{b=t[8906]|0;t[e+4612>>2]=b+(((t[8907]|0)-b|0)>>>1);c=_;return}case 16:{b=t[8909]|0;t[e+4612>>2]=b+(((t[8910]|0)-b|0)>>>1);c=_;return}default:break e}}else i=e+152|0}while(0);d=1<<t[i>>2];r=e+4616|0;n=d<<1;a=e+4620|0;s=t[a>>2]|0;i=t[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)t[a>>2]=o}else{Yf(r,n-l|0);i=t[r>>2]|0}h=e+4612|0;t[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=_;return}o=e+192|0;u=e+188|0;l=e+184|0;s=i;do{i=t[o>>2]|0;if((s|0)>(0-i|0)){r=t[u>>2]|0;if((s|0)>(0-r|0)){n=t[l>>2]|0;if((s|0)>(0-n|0)){a=t[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;f[(t[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=_;return}function na(e){e=e|0;var i=0,r=0;t[e>>2]=35856;i=t[e+4608>>2]|0;if(i){r=e+4612|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}e=e+88|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function ta(e){e=e|0;var i=0,r=0;t[e>>2]=35856;i=t[e+4608>>2]|0;if(i){r=e+4612|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+88|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function aa(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+28>>2]|0)!=0?(t[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(37,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+12>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(38,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(39,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(40,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+16>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=2;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=2;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function sa(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,t[e+128>>2]|0,t[e+136>>2]|0);u=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[h+8>>2]|0:l;s=t[i+12>>2]|0;s=(s|0)==0?t[h+12>>2]|0:s;r=t[i+16>>2]|0;a=t[h+16>>2]|0;t[e+176>>2]=(u|0)==0?t[h+4>>2]|0:u;t[e+180>>2]=l;t[e+184>>2]=s;ma(e);s=e+132|0;i=(t[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{t[e+188+(l*12|0)>>2]=i;t[e+188+(l*12|0)+4>>2]=0;n[e+188+(l*12|0)+8>>1]=0;n[e+188+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(t[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;t[e+4568>>2]=u;t[e+4572>>2]=0;f[e+4576>>0]=h;f[e+4577>>0]=1;f[e+4578>>0]=0;t[e+4580>>2]=u;t[e+4584>>2]=1;f[e+4588>>0]=h;f[e+4589>>0]=1;f[e+4590>>0]=0;t[e+4592>>2]=0;c=o;return}function la(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=t[i>>2]|0;t[i>>2]=0;i=t[l>>2]|0;t[l>>2]=s;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=t[l>>2]|0;f[e+4620>>0]=a&1;i=e+156|0;t[i>>2]=t[r>>2];t[i+4>>2]=t[r+4>>2];t[i+8>>2]=t[r+8>>2];t[i+12>>2]=t[r+12>>2];Cf(e,n);oa(e);i=t[e+116>>2]|0;e=t[e+112>>2]|0;while(1){a=i+-1|0;r=(f[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=t[l>>2]|0;if(!a)return;t[l>>2]=a+i;n=n+8|0;t[n>>2]=(t[n>>2]|0)-i;return}function oa(e){e=e|0;var i=0,r=0,f=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;S=c;c=c+32|0;R=S+12|0;E=S;y=e+172|0;M=(t[y>>2]|0)+4|0;if((t[e+28>>2]|0)==1)A=t[e+20>>2]|0;else A=1;i=re(A<<1,M)|0;t[R>>2]=0;C=R+4|0;t[C>>2]=0;t[R+8>>2]=0;do{if(i){if(!((i|0)<0?(w=0,ue(178,R|0),T=w,w=0,T&1):0))l=6;if((l|0)==6?(r=i<<1,w=0,f=de(67,r|0)|0,T=w,w=0,!(T&1)):0){t[R>>2]=f;T=f+(i<<1)|0;t[R+8>>2]=T;ym(f|0,0,r|0)|0;t[C>>2]=T;break}f=je()|0;i=t[R>>2]|0;if(!i)Qe(f|0);r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);Qe(f|0)}}while(0);t[E>>2]=0;T=E+4|0;t[T>>2]=0;t[E+8>>2]=0;do{if(!A)l=18;else{if(!(A>>>0>1073741823?(w=0,ue(178,E|0),g=w,w=0,g&1):0))l=16;if((l|0)==16?(a=A<<2,w=0,s=de(67,a|0)|0,g=w,w=0,!(g&1)):0){t[E>>2]=s;l=s+(A<<2)|0;t[E+8>>2]=l;ym(s|0,0,a|0)|0;t[T>>2]=l;l=18;break}f=je()|0;i=t[E>>2]|0;r=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}}while(0);if((l|0)==18){s=e+8|0;e:do{if((t[s>>2]|0)>0){l=e+4596|0;o=re(A,M)|0;u=o+1|0;h=e+4600|0;d=(A|0)>0;b=e+160|0;_=e+168|0;k=e+164|0;m=e+156|0;v=e+88|0;p=e+4592|0;g=0;i:while(1){f=t[R>>2]|0;r=f+2|0;t[l>>2]=r;f=f+(u<<1)|0;t[h>>2]=f;if(!(g&1))i=f;else{t[l>>2]=f;t[h>>2]=r;i=r;r=f}if(d){a=t[E>>2]|0;f=0;do{t[p>>2]=t[a+(f<<2)>>2];a=t[y>>2]|0;n[r+(a<<1)>>1]=n[r+(a+-1<<1)>>1]|0;n[i+-2>>1]=n[r>>1]|0;w=0;ce(76,e|0,0);a=w;w=0;if(a&1){l=29;break i}a=t[E>>2]|0;t[a+(f<<2)>>2]=t[p>>2];r=(t[l>>2]|0)+(M<<1)|0;t[l>>2]=r;i=(t[h>>2]|0)+(M<<1)|0;t[h>>2]=i;f=f+1|0}while((f|0)<(A|0))}a=t[b>>2]|0;if(((a|0)<=(g|0)?(g|0)<((t[_>>2]|0)+a|0):0)?(a=t[v>>2]|0,w=0,Ce(t[(t[a>>2]|0)+8>>2]|0,a|0,i+((t[m>>2]|0)-o<<1)|0,t[k>>2]|0,M|0),a=w,w=0,a&1):0){l=30;break}g=g+1|0;if((g|0)>=(t[s>>2]|0)){l=42;break e}}if((l|0)==29){f=je()|0;break}else if((l|0)==30){f=je()|0;break}}else l=42}while(0);do{if((l|0)==42){w=0;ue(183,e|0);e=w;w=0;if(e&1){f=je()|0;break}i=t[E>>2]|0;r=i;if(i){f=t[T>>2]|0;if((f|0)!=(i|0))t[T>>2]=f+(~((f+-4-r|0)>>>2)<<2);Bp(i)}i=t[R>>2]|0;if(!i){c=S;return}r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);c=S;return}}while(0);i=t[E>>2]|0;r=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}i=t[R>>2]|0;if(!i)Qe(f|0);r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);Qe(f|0)}function ua(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0;k=e+4596|0;r=t[k>>2]|0;p=e+172|0;i=t[p>>2]|0;if((i|0)<=0)return;w=e+4600|0;m=e+4604|0;v=e+4592|0;c=r;o=s[r+-2>>1]|0;r=s[r>>1]|0;_=0;while(1){d=t[w>>2]|0;u=n[d+(_+-1<<1)>>1]|0;b=u&65535;l=_+1|0;a=s[c+(l<<1)>>1]|0;h=t[m>>2]|0;c=r-o|0;o=o-b|0;h=((((f[h+(a-r)>>0]|0)*9|0)+(f[h+c>>0]|0)|0)*9|0)+(f[h+o>>0]|0)|0;d=d+(_<<1)|0;if(!h){i=da(e,u,d,i-_|0)|0;r=i+_|0;if((r|0)!=(t[p>>2]|0)){b=ba(e,b,s[(t[k>>2]|0)+(r<<1)>>1]|0)|0;n[(t[w>>2]|0)+(r<<1)>>1]=b;b=t[v>>2]|0;t[v>>2]=(b|0)<1?0:b+-1|0;i=i+1|0}l=i+_|0;a=t[k>>2]|0;r=s[a+(l+-1<<1)>>1]|0;a=s[a+(l<<1)>>1]|0}else{i=r-b>>31;if((i^o|0)<0)i=r;else i=b+((i^c|0)<0?0:c)|0;b=ha(e,h,s[d>>1]|0,i,0)|0;n[(t[w>>2]|0)+(_<<1)>>1]=b}i=t[p>>2]|0;if((i|0)<=(l|0))break;c=t[k>>2]|0;o=r;r=a;_=l}return}function ca(e){e=e|0;var i=0,r=0,n=0,a=0;n=e+116|0;r=t[n>>2]|0;if((f[r>>0]|0)!=-1){a=e+112|0;i=t[a>>2]|0;if((i|0)<1){Uf(e);i=t[a>>2]|0;r=t[n>>2]|0}e=e+108|0;n=t[e>>2]|0;t[a>>2]=i+-1;i=n<<1;t[e>>2]=i;if((f[r>>0]|0)!=-1){i=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,i|0,6,35648);e=w;w=0;if(!(e&1))bi(i|0,824,96);e=je()|0;He(i|0);Qe(e|0)}}else i=t[e+108>>2]|0;if(!i)return;i=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,i|0,6,35648);e=w;w=0;if(!(e&1))bi(i|0,824,96);e=je()|0;He(i|0);Qe(e|0)}function ha(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,m=0,v=0;v=i>>31;c=(v^i)-v|0;_=e+188+(c*12|0)+10|0;r=n[_>>1]|0;b=e+188+(c*12|0)|0;s=t[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){i=5;while(1)if((r<<i|0)<(s|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;d=e+188+(c*12|0)+8|0;r=(n[d>>1]^v)-v+a|0;m=e+128|0;s=t[m>>2]|0;if((r&s|0)==(r|0))h=r;else h=s&~(r>>31);r=e+112|0;if((t[r>>2]|0)<8)Uf(e);s=e+108|0;a=t[s>>2]|0;l=a>>>24;o=t[2832+(i<<11)+(l<<3)+4>>2]|0;if(!o){u=t[e+148>>2]|0;s=t[e+140>>2]|0;r=ka(e)|0;if((r|0)<(u+-1-s|0)){if(i)r=(wa(e,i)|0)+(r<<i)|0}else r=(wa(e,s)|0)+1|0;r=r<<31>>31^r>>1;if((((r|0)>-1?r:0-r|0)|0)>65535){r=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,r|0,5,35648);e=w;w=0;if(e&1){e=je()|0;He(r|0);Qe(e|0)}else bi(r|0,824,96)}}else{t[r>>2]=(t[r>>2]|0)-o;t[s>>2]=a<<o;r=t[2832+(i<<11)+(l<<3)>>2]|0}u=e+136|0;a=t[u>>2]|0;if(!i){if(!a)s=(t[e+188+(c*12|0)+4>>2]<<1)+-1+(n[_>>1]|0)>>31;else s=0;o=s^r}else o=r;i=t[e+152>>2]|0;s=(t[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;l=e+188+(c*12|0)+4|0;r=(t[l>>2]|0)+(re(a<<1|1,o)|0)|0;a=n[_>>1]|0;if((a|0)==(i|0)){s=s>>1;r=r>>1;a=i>>1}t[b>>2]=s;i=a+1|0;n[_>>1]=i;s=i+r|0;if((s|0)>=1){if((r|0)>0){r=r-i|0;_=n[d>>1]|0;n[d>>1]=(_<<16>>16<127&1)+(_&65535);r=(r|0)>0?0:r}}else{r=n[d>>1]|0;n[d>>1]=(r&65535)-(r<<16>>16>-128&1);r=(s|0)>(~a|0)?s:0-a|0}t[l>>2]=r;i=t[u>>2]|0;a=i<<1|1;s=(re(a,(o^v)-v|0)|0)+h|0;if((s|0)>=(0-i|0)){r=t[m>>2]|0;if((r+i|0)<(s|0))s=s-(re(t[e+132>>2]|0,a)|0)|0}else{s=(re(t[e+132>>2]|0,a)|0)+s|0;r=t[m>>2]|0}if((s&r|0)==(s|0)){e=s;e=e&65535;return e|0}e=r&~(s>>31);e=e&65535;return e|0}function da(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0;u=e+112|0;c=e+108|0;h=e+4592|0;s=t[u>>2]|0;l=0;while(1){if((s|0)<1){Uf(e);s=t[u>>2]|0}o=t[c>>2]|0;s=s+-1|0;t[u>>2]=s;t[c>>2]=o<<1;if((o|0)>=0){d=8;break}o=t[h>>2]|0;b=1<<t[36476+(o<<2)>>2];_=a-l|0;_=(b|0)<(_|0)?b:_;l=_+l|0;if((_|0)==(b|0))t[h>>2]=(o|0)>30?31:o+1|0;if((l|0)==(a|0)){s=a;break}}if((d|0)==8)if((l|0)!=(a|0)){s=t[h>>2]|0;if((s+-4|0)>>>0<28)s=wa(e,t[36476+(s<<2)>>2]|0)|0;else s=0;s=s+l|0;if((s|0)>(a|0)){s=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,s|0,5,35648);_=w;w=0;if(_&1){_=je()|0;He(s|0);Qe(_|0)}else bi(s|0,824,96)}}else s=a;if((s|0)>0)l=0;else return s|0;do{n[r+(l<<1)>>1]=i;l=l+1|0}while((l|0)!=(s|0));return s|0}function ba(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0;a=i-r|0;s=e+128|0;f=e+136|0;if((((a|0)>-1?a:0-a|0)|0)>(t[f>>2]|0)){i=re(_a(e,e+4568|0)|0,r-i>>31|1)|0;n=t[f>>2]|0;a=n<<1|1;i=(re(i,a)|0)+r|0;if((i|0)>=(0-n|0)){f=t[s>>2]|0;if((f+n|0)<(i|0))i=i-(re(t[e+132>>2]|0,a)|0)|0}else{i=(re(t[e+132>>2]|0,a)|0)+i|0;f=t[s>>2]|0}if((i&f|0)==(i|0)){e=i;e=e&65535;return e|0}e=f&~(i>>31);e=e&65535;return e|0}else{r=_a(e,e+4580|0)|0;a=t[f>>2]|0;n=a<<1|1;i=(re(n,r)|0)+i|0;if((i|0)>=(0-a|0)){f=t[s>>2]|0;if((f+a|0)<(i|0))i=i-(re(t[e+132>>2]|0,n)|0)|0}else{i=(re(t[e+132>>2]|0,n)|0)+i|0;f=t[s>>2]|0}if((i&f|0)==(i|0)){e=i;e=e&65535;return e|0}e=f&~(i>>31);e=e&65535;return e|0}return 0}function _a(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0;h=i+9|0;r=a[h>>0]|0;l=i+4|0;s=(re(r>>>1,t[l>>2]|0)|0)+(t[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;o=t[e+148>>2]|0;u=t[36476+(t[e+4592>>2]<<2)>>2]|0;r=t[e+140>>2]|0;s=ka(e)|0;do{if((s|0)<(o+-2-u-r|0))if(!n){n=t[l>>2]|0;e=n+s|0;r=e&1;e=(r+e|0)/2|0;c=8;break}else{u=(wa(e,n)|0)+(s<<n)|0;n=t[l>>2]|0;s=u+n|0;o=s&1;r=o;l=1;s=(o+s|0)/2|0;break}else{s=(wa(e,r)|0)+1|0;o=t[l>>2]|0;e=s+o|0;r=e&1;e=(r+e|0)/2|0;if(!n){n=o;c=8}else{u=s;l=1;s=e;n=o}}}while(0);if((c|0)==8){u=s;l=a[i+10>>0]<<1>>>0>=(a[h>>0]|0)>>>0;s=e}s=(r|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;f[c>>0]=(a[c>>0]|0)+1}r=(u+1-n>>1)+(t[i>>2]|0)|0;t[i>>2]=r;n=f[h>>0]|0;if(n<<24>>24!=(f[i+8>>0]|0)){i=n;i=i&255;i=i+1|0;i=i&255;f[h>>0]=i;return s|0}t[i>>2]=r>>1;c=(n&255)>>>1;f[h>>0]=c;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;i=c;i=i&255;i=i+1|0;i=i&255;f[h>>0]=i;return s|0}function ka(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0;a=e+112|0;if((t[a>>2]|0)<16)Uf(e);s=e+108|0;r=t[s>>2]|0;if((r|0)>=0)if(!(r&1073741824))if(!(r&536870912))if(!(r&268435456))if(!(r&134217728))if(!(r&67108864))if(!(r&33554432))if(!(r&16777216))if(!(r&8388608))if(!(r&4194304))if(!(r&2097152))if(!(r&1048576))if(!(r&524288))if(!(r&262144))if(!(r&131072)){n=r>>>12&16;i=n+-1|0;if(!n){i=(t[a>>2]|0)+-15|0;t[a>>2]=i;f=r<<15;t[s>>2]=f;r=i;i=15;while(1){if((r|0)<1){Uf(e);n=t[s>>2]|0;r=t[a>>2]|0}else n=f;r=r+-1|0;t[a>>2]=r;f=n<<1;t[s>>2]=f;if((n|0)<0)break;else i=i+1|0}return i|0}}else i=14;else i=13;else i=12;else i=11;else i=10;else i=9;else i=8;else i=7;else i=6;else i=5;else i=4;else i=3;else i=2;else i=1;else i=0;e=i+1|0;t[a>>2]=(t[a>>2]|0)-e;t[s>>2]=r<<e;s=i;return s|0}function wa(e,i){e=e|0;i=i|0;var r=0,n=0,a=0;n=e+112|0;r=t[n>>2]|0;if((r|0)<(i|0)){Uf(e);r=t[n>>2]|0;if((r|0)<(i|0)){r=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,r|0,5,35648);e=w;w=0;if(e&1){e=je()|0;He(r|0);Qe(e|0)}else bi(r|0,824,96)}}a=e+108|0;e=t[a>>2]|0;t[n>>2]=r-i;t[a>>2]=e<<i;return e>>>(32-i|0)|0}function ma(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0;_=c;c=c+32|0;n=_;b=e+136|0;e:do{if(!(t[b>>2]|0)){r=t[e+128>>2]|0;i=e+144|0;if((((r|0)==((1<<t[i>>2])+-1|0)?(op(n,r,0),(t[n+4>>2]|0)==(t[e+176>>2]|0)):0)?(t[n+8>>2]|0)==(t[e+180>>2]|0):0)?(t[n+12>>2]|0)==(t[e+184>>2]|0):0)switch(t[i>>2]|0){case 8:{b=t[8900]|0;t[e+4604>>2]=b+(((t[8901]|0)-b|0)>>>1);c=_;return}case 10:{b=t[8903]|0;t[e+4604>>2]=b+(((t[8904]|0)-b|0)>>>1);c=_;return}case 12:{b=t[8906]|0;t[e+4604>>2]=b+(((t[8907]|0)-b|0)>>>1);c=_;return}case 16:{b=t[8909]|0;t[e+4604>>2]=b+(((t[8910]|0)-b|0)>>>1);c=_;return}default:break e}}else i=e+144|0}while(0);d=1<<t[i>>2];r=e+4608|0;n=d<<1;a=e+4612|0;s=t[a>>2]|0;i=t[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)t[a>>2]=o}else{Yf(r,n-l|0);i=t[r>>2]|0}h=e+4604|0;t[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=_;return}o=e+184|0;u=e+180|0;l=e+176|0;s=i;do{i=t[o>>2]|0;if((s|0)>(0-i|0)){r=t[u>>2]|0;if((s|0)>(0-r|0)){n=t[l>>2]|0;if((s|0)>(0-n|0)){a=t[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;f[(t[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=_;return}function va(e){e=e|0;var i=0,r=0;t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}e=e+88|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function pa(e){e=e|0;var i=0,r=0;t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+88|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function ga(e){e=e|0;var i=0,r=0;t[e>>2]=35828;i=t[e+4608>>2]|0;if(i){r=e+4612|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}e=e+88|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function ya(e){e=e|0;var i=0,r=0;t[e>>2]=35828;i=t[e+4608>>2]|0;if(i){r=e+4612|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+88|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function Ma(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+28>>2]|0)!=0?(t[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(37,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+12>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(38,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(39,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(40,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+16>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=6;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=6;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function Aa(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,t[e+128>>2]|0,t[e+136>>2]|0);u=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[h+8>>2]|0:l;s=t[i+12>>2]|0;s=(s|0)==0?t[h+12>>2]|0:s;r=t[i+16>>2]|0;a=t[h+16>>2]|0;t[e+176>>2]=(u|0)==0?t[h+4>>2]|0:u;t[e+180>>2]=l;t[e+184>>2]=s;Oa(e);s=e+132|0;i=(t[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{t[e+188+(l*12|0)>>2]=i;t[e+188+(l*12|0)+4>>2]=0;n[e+188+(l*12|0)+8>>1]=0;n[e+188+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(t[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;t[e+4568>>2]=u;t[e+4572>>2]=0;f[e+4576>>0]=h;f[e+4577>>0]=1;f[e+4578>>0]=0;t[e+4580>>2]=u;t[e+4584>>2]=1;f[e+4588>>0]=h;f[e+4589>>0]=1;f[e+4590>>0]=0;t[e+4592>>2]=0;c=o;return}function Ea(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=t[i>>2]|0;t[i>>2]=0;i=t[l>>2]|0;t[l>>2]=s;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=t[l>>2]|0;f[e+4620>>0]=a&1;i=e+156|0;t[i>>2]=t[r>>2];t[i+4>>2]=t[r+4>>2];t[i+8>>2]=t[r+8>>2];t[i+12>>2]=t[r+12>>2];Cf(e,n);Sa(e);i=t[e+116>>2]|0;e=t[e+112>>2]|0;while(1){a=i+-1|0;r=(f[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=t[l>>2]|0;if(!a)return;t[l>>2]=a+i;n=n+8|0;t[n>>2]=(t[n>>2]|0)-i;return}function Sa(e){e=e|0;var i=0,r=0,f=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;S=c;c=c+32|0;R=S+12|0;E=S;y=e+172|0;M=(t[y>>2]|0)+4|0;if((t[e+28>>2]|0)==1)A=t[e+20>>2]|0;else A=1;i=re(A<<1,M)|0;t[R>>2]=0;C=R+4|0;t[C>>2]=0;t[R+8>>2]=0;do{if(i){if(!(i>>>0>715827882?(w=0,ue(178,R|0),T=w,w=0,T&1):0))l=6;if((l|0)==6?(w=0,r=de(67,i*6|0)|0,T=w,w=0,!(T&1)):0){t[C>>2]=r;t[R>>2]=r;f=r+(i*6|0)|0;t[R+8>>2]=f;while(1){n[r>>1]=0;n[r+2>>1]=0;n[r+4>>1]=0;i=i+-1|0;if(!i)break;else r=r+6|0}t[C>>2]=f;break}f=je()|0;i=t[R>>2]|0;if(!i)Qe(f|0);r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~(((r+-6-i|0)>>>0)/6|0)*6|0);Bp(i);Qe(f|0)}}while(0);t[E>>2]=0;T=E+4|0;t[T>>2]=0;t[E+8>>2]=0;do{if(!A)l=20;else{if(!(A>>>0>1073741823?(w=0,ue(178,E|0),g=w,w=0,g&1):0))l=18;if((l|0)==18?(a=A<<2,w=0,s=de(67,a|0)|0,g=w,w=0,!(g&1)):0){t[E>>2]=s;l=s+(A<<2)|0;t[E+8>>2]=l;ym(s|0,0,a|0)|0;t[T>>2]=l;l=20;break}f=je()|0;i=t[E>>2]|0;r=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}}while(0);if((l|0)==20){s=e+8|0;e:do{if((t[s>>2]|0)>0){l=e+4596|0;o=re(A,M)|0;u=o+1|0;h=e+4600|0;d=(A|0)>0;b=e+160|0;_=e+168|0;k=e+164|0;m=e+156|0;v=e+88|0;p=e+4592|0;g=0;i:while(1){f=t[R>>2]|0;r=f+6|0;t[l>>2]=r;f=f+(u*6|0)|0;t[h>>2]=f;if(!(g&1))i=f;else{t[l>>2]=f;t[h>>2]=r;i=r;r=f}if(d){a=t[E>>2]|0;f=0;do{t[p>>2]=t[a+(f<<2)>>2];i=t[y>>2]|0;a=r+(i*6|0)|0;r=r+((i+-1|0)*6|0)|0;n[a>>1]=n[r>>1]|0;n[a+2>>1]=n[r+2>>1]|0;n[a+4>>1]=n[r+4>>1]|0;a=(t[h>>2]|0)+-6|0;r=t[l>>2]|0;n[a>>1]=n[r>>1]|0;n[a+2>>1]=n[r+2>>1]|0;n[a+4>>1]=n[r+4>>1]|0;w=0;ce(77,e|0,0);a=w;w=0;if(a&1){l=31;break i}a=t[E>>2]|0;t[a+(f<<2)>>2]=t[p>>2];r=(t[l>>2]|0)+(M*6|0)|0;t[l>>2]=r;i=(t[h>>2]|0)+(M*6|0)|0;t[h>>2]=i;f=f+1|0}while((f|0)<(A|0))}a=t[b>>2]|0;if(((a|0)<=(g|0)?(g|0)<((t[_>>2]|0)+a|0):0)?(a=t[v>>2]|0,w=0,Ce(t[(t[a>>2]|0)+8>>2]|0,a|0,i+(((t[m>>2]|0)-o|0)*6|0)|0,t[k>>2]|0,M|0),a=w,w=0,a&1):0){l=32;break}g=g+1|0;if((g|0)>=(t[s>>2]|0)){l=44;break e}}if((l|0)==31){f=je()|0;break}else if((l|0)==32){f=je()|0;break}}else l=44}while(0);do{if((l|0)==44){w=0;ue(183,e|0);e=w;w=0;if(e&1){f=je()|0;break}i=t[E>>2]|0;r=i;if(i){f=t[T>>2]|0;if((f|0)!=(i|0))t[T>>2]=f+(~((f+-4-r|0)>>>2)<<2);Bp(i)}i=t[R>>2]|0;if(!i){c=S;return}r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~(((r+-6-i|0)>>>0)/6|0)*6|0);Bp(i);c=S;return}}while(0);i=t[E>>2]|0;r=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}i=t[R>>2]|0;if(!i)Qe(f|0);r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~(((r+-6-i|0)>>>0)/6|0)*6|0);Bp(i);Qe(f|0)}function Ta(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0;F=c;c=c+32|0;C=F+24|0;N=F+18|0;D=F+12|0;P=F+6|0;I=F;O=e+172|0;i=t[O>>2]|0;if((i|0)<=0){c=F;return}x=e+4600|0;L=e+4596|0;B=e+4604|0;z=e+4592|0;R=0;while(1){a=R+-1|0;l=t[x>>2]|0;H=t[L>>2]|0;r=R+1|0;o=s[H+(R*6|0)>>1]|0;T=t[B>>2]|0;u=s[H+(a*6|0)>>1]|0;h=o-u|0;d=s[l+(a*6|0)>>1]|0;b=u-d|0;_=((((f[T+((s[H+(r*6|0)>>1]|0)-o)>>0]|0)*9|0)+(f[T+h>>0]|0)|0)*9|0)+(f[T+b>>0]|0)|0;k=s[H+(R*6|0)+2>>1]|0;w=s[H+(a*6|0)+2>>1]|0;m=k-w|0;v=s[l+(a*6|0)+2>>1]|0;p=w-v|0;g=((((f[T+((s[H+(r*6|0)+2>>1]|0)-k)>>0]|0)*9|0)+(f[T+m>>0]|0)|0)*9|0)+(f[T+p>>0]|0)|0;y=s[H+(R*6|0)+4>>1]|0;M=s[H+(a*6|0)+4>>1]|0;A=y-M|0;E=s[l+(a*6|0)+4>>1]|0;S=M-E|0;T=((((f[T+((s[H+(r*6|0)+4>>1]|0)-y)>>0]|0)*9|0)+(f[T+A>>0]|0)|0)*9|0)+(f[T+S>>0]|0)|0;if(!(g|_|T)){r=l+(a*6|0)|0;n[D>>1]=n[r>>1]|0;n[D+2>>1]=n[r+2>>1]|0;n[D+4>>1]=n[r+4>>1]|0;n[C>>1]=n[r>>1]|0;n[C+2>>1]=n[r+2>>1]|0;n[C+4>>1]=n[r+4>>1]|0;i=Ra(e,C,l+(R*6|0)|0,i-R|0)|0;r=i+R|0;if((r|0)!=(t[O>>2]|0)){H=(t[L>>2]|0)+(r*6|0)|0;n[I>>1]=n[H>>1]|0;n[I+2>>1]=n[H+2>>1]|0;n[I+4>>1]=n[H+4>>1]|0;H=(t[x>>2]|0)+(r*6|0)|0;n[N>>1]=n[D>>1]|0;n[N+2>>1]=n[D+2>>1]|0;n[N+4>>1]=n[D+4>>1]|0;n[C>>1]=n[I>>1]|0;n[C+2>>1]=n[I+2>>1]|0;n[C+4>>1]=n[I+4>>1]|0;Ca(P,e,N,C);n[H>>1]=n[P>>1]|0;n[H+2>>1]=n[P+2>>1]|0;n[H+4>>1]=n[P+4>>1]|0;H=t[z>>2]|0;t[z>>2]=(H|0)<1?0:H+-1|0;i=i+1|0}r=i+R|0}else{a=s[l+(R*6|0)>>1]|0;i=o-d>>31;if((i^b|0)>=0)if((i^h|0)<0)i=d;else i=d-u+o|0;else i=o;o=Pa(e,_,a,i,0)|0;a=s[(t[x>>2]|0)+(R*6|0)+2>>1]|0;i=k-v>>31;if((i^p|0)>=0)if((i^m|0)<0)i=v;else i=v-w+k|0;else i=k;a=Pa(e,g,a,i,0)|0;l=s[(t[x>>2]|0)+(R*6|0)+4>>1]|0;i=y-E>>31;if((i^S|0)>=0)if((i^A|0)<0)i=E;else i=E-M+y|0;else i=y;T=Pa(e,T,l,i,0)|0;H=t[x>>2]|0;n[H+(R*6|0)>>1]=o;n[H+(R*6|0)+2>>1]=a;n[H+(R*6|0)+4>>1]=T}i=t[O>>2]|0;if((r|0)>=(i|0))break;else R=r}c=F;return}function Ra(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0;u=e+112|0;c=e+108|0;h=e+4592|0;s=t[u>>2]|0;l=0;while(1){if((s|0)<1){Uf(e);s=t[u>>2]|0}o=t[c>>2]|0;s=s+-1|0;t[u>>2]=s;t[c>>2]=o<<1;if((o|0)>=0){d=8;break}o=t[h>>2]|0;b=1<<t[36476+(o<<2)>>2];_=a-l|0;_=(b|0)<(_|0)?b:_;l=_+l|0;if((_|0)==(b|0))t[h>>2]=(o|0)>30?31:o+1|0;if((l|0)==(a|0)){s=a;break}}if((d|0)==8)if((l|0)!=(a|0)){s=t[h>>2]|0;if((s+-4|0)>>>0<28)s=wa(e,t[36476+(s<<2)>>2]|0)|0;else s=0;s=s+l|0;if((s|0)>(a|0)){s=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,s|0,5,35648);_=w;w=0;if(_&1){_=je()|0;He(s|0);Qe(_|0)}else bi(s|0,824,96)}}else s=a;if((s|0)<=0)return s|0;l=0;do{_=r+(l*6|0)|0;n[_>>1]=n[i>>1]|0;n[_+2>>1]=n[i+2>>1]|0;n[_+4>>1]=n[i+4>>1]|0;l=l+1|0}while((l|0)!=(s|0));return s|0}function Ca(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;c=i+4568|0;b=Ia(i,c)|0;o=Ia(i,c)|0;c=Ia(i,c)|0;l=i+128|0;a=s[f>>1]|0;h=t[i+136>>2]|0;d=h<<1|1;a=(re(re(d,b)|0,a-(s[r>>1]|0)>>31|1)|0)+a|0;b=0-h|0;if((a|0)>=(b|0)){l=t[l>>2]|0;if((l+h|0)<(a|0))a=a-(re(t[i+132>>2]|0,d)|0)|0}else{a=(re(t[i+132>>2]|0,d)|0)+a|0;l=t[l>>2]|0}if((a&l|0)!=(a|0))a=l&~(a>>31);u=a&65535;a=s[f+2>>1]|0;a=(re(re(d,o)|0,a-(s[r+2>>1]|0)>>31|1)|0)+a|0;if((a|0)>=(b|0)){if((l+h|0)<(a|0))a=a-(re(t[i+132>>2]|0,d)|0)|0}else a=(re(t[i+132>>2]|0,d)|0)+a|0;if((a&l|0)!=(a|0))a=l&~(a>>31);o=a&65535;a=s[f+4>>1]|0;a=(re(re(d,c)|0,a-(s[r+4>>1]|0)>>31|1)|0)+a|0;if((a|0)>=(b|0)){if((l+h|0)<(a|0))a=a-(re(t[i+132>>2]|0,d)|0)|0}else a=(re(t[i+132>>2]|0,d)|0)+a|0;if((a&l|0)==(a|0)){i=a;i=i&65535;n[e>>1]=u;b=e+2|0;n[b>>1]=o;e=e+4|0;n[e>>1]=i;return}i=l&~(a>>31);i=i&65535;n[e>>1]=u;b=e+2|0;n[b>>1]=o;e=e+4|0;n[e>>1]=i;return}function Pa(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,m=0,v=0;v=i>>31;c=(v^i)-v|0;_=e+188+(c*12|0)+10|0;r=n[_>>1]|0;b=e+188+(c*12|0)|0;s=t[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){i=5;while(1)if((r<<i|0)<(s|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;d=e+188+(c*12|0)+8|0;r=(n[d>>1]^v)-v+a|0;m=e+128|0;s=t[m>>2]|0;if((r&s|0)==(r|0))h=r;else h=s&~(r>>31);r=e+112|0;if((t[r>>2]|0)<8)Uf(e);s=e+108|0;a=t[s>>2]|0;l=a>>>24;o=t[2832+(i<<11)+(l<<3)+4>>2]|0;if(!o){u=t[e+148>>2]|0;s=t[e+140>>2]|0;r=ka(e)|0;if((r|0)<(u+-1-s|0)){if(i)r=(wa(e,i)|0)+(r<<i)|0}else r=(wa(e,s)|0)+1|0;r=r<<31>>31^r>>1;if((((r|0)>-1?r:0-r|0)|0)>65535){r=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,r|0,5,35648);e=w;w=0;if(e&1){e=je()|0;He(r|0);Qe(e|0)}else bi(r|0,824,96)}}else{t[r>>2]=(t[r>>2]|0)-o;t[s>>2]=a<<o;r=t[2832+(i<<11)+(l<<3)>>2]|0}u=e+136|0;a=t[u>>2]|0;if(!i){if(!a)s=(t[e+188+(c*12|0)+4>>2]<<1)+-1+(n[_>>1]|0)>>31;else s=0;o=s^r}else o=r;i=t[e+152>>2]|0;s=(t[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;l=e+188+(c*12|0)+4|0;r=(t[l>>2]|0)+(re(a<<1|1,o)|0)|0;a=n[_>>1]|0;if((a|0)==(i|0)){s=s>>1;r=r>>1;a=i>>1}t[b>>2]=s;i=a+1|0;n[_>>1]=i;s=i+r|0;if((s|0)>=1){if((r|0)>0){r=r-i|0;_=n[d>>1]|0;n[d>>1]=(_<<16>>16<127&1)+(_&65535);r=(r|0)>0?0:r}}else{r=n[d>>1]|0;n[d>>1]=(r&65535)-(r<<16>>16>-128&1);r=(s|0)>(~a|0)?s:0-a|0}t[l>>2]=r;i=t[u>>2]|0;a=i<<1|1;s=(re(a,(o^v)-v|0)|0)+h|0;if((s|0)>=(0-i|0)){r=t[m>>2]|0;if((r+i|0)<(s|0))s=s-(re(t[e+132>>2]|0,a)|0)|0}else{s=(re(t[e+132>>2]|0,a)|0)+s|0;r=t[m>>2]|0}if((s&r|0)==(s|0)){e=s;e=e&65535;return e|0}e=r&~(s>>31);e=e&65535;return e|0}function Ia(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0;h=i+9|0;r=a[h>>0]|0;l=i+4|0;s=(re(r>>>1,t[l>>2]|0)|0)+(t[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;o=t[e+148>>2]|0;u=t[36476+(t[e+4592>>2]<<2)>>2]|0;r=t[e+140>>2]|0;s=ka(e)|0;do{if((s|0)<(o+-2-u-r|0))if(!n){n=t[l>>2]|0;e=n+s|0;r=e&1;e=(r+e|0)/2|0;c=8;break}else{u=(wa(e,n)|0)+(s<<n)|0;n=t[l>>2]|0;s=u+n|0;o=s&1;r=o;l=1;s=(o+s|0)/2|0;break}else{s=(wa(e,r)|0)+1|0;o=t[l>>2]|0;e=s+o|0;r=e&1;e=(r+e|0)/2|0;if(!n){n=o;c=8}else{u=s;l=1;s=e;n=o}}}while(0);if((c|0)==8){u=s;l=a[i+10>>0]<<1>>>0>=(a[h>>0]|0)>>>0;s=e}s=(r|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;f[c>>0]=(a[c>>0]|0)+1}r=(u+1-n>>1)+(t[i>>2]|0)|0;t[i>>2]=r;n=f[h>>0]|0;if(n<<24>>24!=(f[i+8>>0]|0)){i=n;i=i&255;i=i+1|0;i=i&255;f[h>>0]=i;return s|0}t[i>>2]=r>>1;c=(n&255)>>>1;f[h>>0]=c;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;i=c;i=i&255;i=i+1|0;i=i&255;f[h>>0]=i;return s|0}function Oa(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0;_=c;c=c+32|0;n=_;b=e+136|0;e:do{if(!(t[b>>2]|0)){r=t[e+128>>2]|0;i=e+144|0;if((((r|0)==((1<<t[i>>2])+-1|0)?(op(n,r,0),(t[n+4>>2]|0)==(t[e+176>>2]|0)):0)?(t[n+8>>2]|0)==(t[e+180>>2]|0):0)?(t[n+12>>2]|0)==(t[e+184>>2]|0):0)switch(t[i>>2]|0){case 8:{b=t[8900]|0;t[e+4604>>2]=b+(((t[8901]|0)-b|0)>>>1);c=_;return}case 10:{b=t[8903]|0;t[e+4604>>2]=b+(((t[8904]|0)-b|0)>>>1);c=_;return}case 12:{b=t[8906]|0;t[e+4604>>2]=b+(((t[8907]|0)-b|0)>>>1);c=_;return}case 16:{b=t[8909]|0;t[e+4604>>2]=b+(((t[8910]|0)-b|0)>>>1);c=_;return}default:break e}}else i=e+144|0}while(0);d=1<<t[i>>2];r=e+4608|0;n=d<<1;a=e+4612|0;s=t[a>>2]|0;i=t[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)t[a>>2]=o}else{Yf(r,n-l|0);i=t[r>>2]|0}h=e+4604|0;t[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=_;return}o=e+184|0;u=e+180|0;l=e+176|0;s=i;do{i=t[o>>2]|0;if((s|0)>(0-i|0)){r=t[u>>2]|0;if((s|0)>(0-r|0)){n=t[l>>2]|0;if((s|0)>(0-n|0)){a=t[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;f[(t[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=_;return}function xa(e){e=e|0;var i=0,r=0;t[e>>2]=35800;i=t[e+4608>>2]|0;if(i){r=e+4612|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}e=e+88|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function La(e){e=e|0;var i=0,r=0;t[e>>2]=35800;i=t[e+4608>>2]|0;if(i){r=e+4612|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+88|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function Ba(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+28>>2]|0)!=0?(t[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(44,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+12>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(45,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(46,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(47,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+16>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=3;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=3;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function za(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,t[e+128>>2]|0,t[e+136>>2]|0);u=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[h+8>>2]|0:l;s=t[i+12>>2]|0;s=(s|0)==0?t[h+12>>2]|0:s;r=t[i+16>>2]|0;a=t[h+16>>2]|0;t[e+176>>2]=(u|0)==0?t[h+4>>2]|0:u;t[e+180>>2]=l;t[e+184>>2]=s;qa(e);s=e+132|0;i=(t[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{t[e+188+(l*12|0)>>2]=i;t[e+188+(l*12|0)+4>>2]=0;n[e+188+(l*12|0)+8>>1]=0;n[e+188+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(t[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;t[e+4568>>2]=u;t[e+4572>>2]=0;f[e+4576>>0]=h;f[e+4577>>0]=1;f[e+4578>>0]=0;t[e+4580>>2]=u;t[e+4584>>2]=1;f[e+4588>>0]=h;f[e+4589>>0]=1;f[e+4590>>0]=0;t[e+4592>>2]=0;c=o;return}function Da(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=t[i>>2]|0;t[i>>2]=0;i=t[l>>2]|0;t[l>>2]=s;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=t[l>>2]|0;f[e+4620>>0]=a&1;i=e+156|0;t[i>>2]=t[r>>2];t[i+4>>2]=t[r+4>>2];t[i+8>>2]=t[r+8>>2];t[i+12>>2]=t[r+12>>2];Cf(e,n);Na(e);i=t[e+116>>2]|0;e=t[e+112>>2]|0;while(1){a=i+-1|0;r=(f[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=t[l>>2]|0;if(!a)return;t[l>>2]=a+i;n=n+8|0;t[n>>2]=(t[n>>2]|0)-i;return}function Na(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;S=c;c=c+32|0;R=S+12|0;E=S;y=e+172|0;M=(t[y>>2]|0)+4|0;if((t[e+28>>2]|0)==1)A=t[e+20>>2]|0;else A=1;i=re(A<<1,M)|0;t[R>>2]=0;C=R+4|0;t[C>>2]=0;t[R+8>>2]=0;e:do{if(i){if(!(i>>>0>1431655765?(w=0,ue(178,R|0),T=w,w=0,T&1):0))s=6;if((s|0)==6?(w=0,r=de(67,i*3|0)|0,T=w,w=0,!(T&1)):0){t[C>>2]=r;t[R>>2]=r;t[R+8>>2]=r+(i*3|0);while(1){f[r>>0]=0;f[r+1>>0]=0;f[r+2>>0]=0;r=(t[C>>2]|0)+3|0;t[C>>2]=r;i=i+-1|0;if(!i)break e}}n=je()|0;i=t[R>>2]|0;if(!i)Qe(n|0);r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Bp(i);Qe(n|0)}}while(0);t[E>>2]=0;T=E+4|0;t[T>>2]=0;t[E+8>>2]=0;do{if(!A)s=19;else{if(!(A>>>0>1073741823?(w=0,ue(178,E|0),g=w,w=0,g&1):0))s=17;if((s|0)==17?(n=A<<2,w=0,a=de(67,n|0)|0,g=w,w=0,!(g&1)):0){t[E>>2]=a;s=a+(A<<2)|0;t[E+8>>2]=s;ym(a|0,0,n|0)|0;t[T>>2]=s;s=19;break}n=je()|0;i=t[E>>2]|0;r=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}}while(0);if((s|0)==19){s=e+8|0;e:do{if((t[s>>2]|0)>0){l=e+4596|0;o=re(A,M)|0;u=o+1|0;h=e+4600|0;d=(A|0)>0;b=e+160|0;_=e+168|0;k=e+164|0;m=e+156|0;v=e+88|0;p=e+4592|0;g=0;i:while(1){n=t[R>>2]|0;r=n+3|0;t[l>>2]=r;n=n+(u*3|0)|0;t[h>>2]=n;if(!(g&1))i=n;else{t[l>>2]=n;t[h>>2]=r;i=r;r=n}if(d){a=t[E>>2]|0;n=0;do{t[p>>2]=t[a+(n<<2)>>2];i=t[y>>2]|0;a=r+(i*3|0)|0;r=r+((i+-1|0)*3|0)|0;f[a>>0]=f[r>>0]|0;f[a+1>>0]=f[r+1>>0]|0;f[a+2>>0]=f[r+2>>0]|0;r=t[l>>2]|0;a=(t[h>>2]|0)+-3|0;f[a>>0]=f[r>>0]|0;f[a+1>>0]=f[r+1>>0]|0;f[a+2>>0]=f[r+2>>0]|0;w=0;ce(78,e|0,0);a=w;w=0;if(a&1){s=30;break i}a=t[E>>2]|0;t[a+(n<<2)>>2]=t[p>>2];r=(t[l>>2]|0)+(M*3|0)|0;t[l>>2]=r;i=(t[h>>2]|0)+(M*3|0)|0;t[h>>2]=i;n=n+1|0}while((n|0)<(A|0))}a=t[b>>2]|0;if(((a|0)<=(g|0)?(g|0)<((t[_>>2]|0)+a|0):0)?(a=t[v>>2]|0,w=0,Ce(t[(t[a>>2]|0)+8>>2]|0,a|0,i+(((t[m>>2]|0)-o|0)*3|0)|0,t[k>>2]|0,M|0),a=w,w=0,a&1):0){s=31;break}g=g+1|0;if((g|0)>=(t[s>>2]|0)){s=43;break e}}if((s|0)==30){n=je()|0;break}else if((s|0)==31){n=je()|0;break}}else s=43}while(0);do{if((s|0)==43){w=0;ue(183,e|0);e=w;w=0;if(e&1){n=je()|0;break}i=t[E>>2]|0;r=i;if(i){n=t[T>>2]|0;if((n|0)!=(i|0))t[T>>2]=n+(~((n+-4-r|0)>>>2)<<2);Bp(i)}i=t[R>>2]|0;if(!i){c=S;return}r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Bp(i);c=S;return}}while(0);i=t[E>>2]|0;r=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}i=t[R>>2]|0;if(!i)Qe(n|0);r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Bp(i);Qe(n|0)}function Fa(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0;N=c;c=c+16|0;R=N+12|0;D=N+9|0;z=N+6|0;C=N+3|0;P=N;I=e+172|0;i=t[I>>2]|0;if((i|0)<=0){c=N;return}O=e+4600|0;x=e+4596|0;L=e+4604|0;B=e+4592|0;T=0;while(1){A=T+-1|0;n=t[O>>2]|0;s=n+(A*3|0)|0;F=t[x>>2]|0;r=T+1|0;l=a[F+(T*3|0)>>0]|0;S=t[L>>2]|0;o=a[F+(A*3|0)>>0]|0;u=l-o|0;h=a[s>>0]|0;d=o-h|0;b=((((f[S+((a[F+(r*3|0)>>0]|0)-l)>>0]|0)*9|0)+(f[S+u>>0]|0)|0)*9|0)+(f[S+d>>0]|0)|0;_=a[F+(T*3|0)+1>>0]|0;k=a[F+(A*3|0)+1>>0]|0;w=_-k|0;m=a[n+(A*3|0)+1>>0]|0;v=k-m|0;p=((((f[S+((a[F+(r*3|0)+1>>0]|0)-_)>>0]|0)*9|0)+(f[S+w>>0]|0)|0)*9|0)+(f[S+v>>0]|0)|0;g=a[F+(T*3|0)+2>>0]|0;y=a[F+(A*3|0)+2>>0]|0;M=g-y|0;A=a[n+(A*3|0)+2>>0]|0;E=y-A|0;S=((((f[S+((a[F+(r*3|0)+2>>0]|0)-g)>>0]|0)*9|0)+(f[S+M>>0]|0)|0)*9|0)+(f[S+E>>0]|0)|0;if(!(p|b|S)){f[z>>0]=f[s>>0]|0;f[z+1>>0]=f[s+1>>0]|0;f[z+2>>0]=f[s+2>>0]|0;f[R>>0]=f[s>>0]|0;f[R+1>>0]=f[s+1>>0]|0;f[R+2>>0]=f[s+2>>0]|0;i=Ha(e,R,n+(T*3|0)|0,i-T|0)|0;r=i+T|0;if((r|0)!=(t[I>>2]|0)){F=(t[x>>2]|0)+(r*3|0)|0;f[P>>0]=f[F>>0]|0;f[P+1>>0]=f[F+1>>0]|0;f[P+2>>0]=f[F+2>>0]|0;F=t[O>>2]|0;f[D>>0]=f[z>>0]|0;f[D+1>>0]=f[z+1>>0]|0;f[D+2>>0]=f[z+2>>0]|0;f[R>>0]=f[P>>0]|0;f[R+1>>0]=f[P+1>>0]|0;f[R+2>>0]=f[P+2>>0]|0;Ua(C,e,D,R);F=F+(r*3|0)|0;f[F>>0]=f[C>>0]|0;f[F+1>>0]=f[C+1>>0]|0;f[F+2>>0]=f[C+2>>0]|0;F=t[B>>2]|0;t[B>>2]=(F|0)<1?0:F+-1|0;i=i+1|0}r=i+T|0}else{n=a[n+(T*3|0)>>0]|0;i=l-h>>31;if((i^d|0)>=0)if((i^u|0)<0)i=h;else i=h-o+l|0;else i=l;l=ja(e,b,n,i,0)|0;n=a[(t[O>>2]|0)+(T*3|0)+1>>0]|0;i=_-m>>31;if((i^v|0)>=0)if((i^w|0)<0)i=m;else i=m-k+_|0;else i=_;n=ja(e,p,n,i,0)|0;s=a[(t[O>>2]|0)+(T*3|0)+2>>0]|0;i=g-A>>31;if((i^E|0)>=0)if((i^M|0)<0)i=A;else i=A-y+g|0;else i=g;S=ja(e,S,s,i,0)|0;F=(t[O>>2]|0)+(T*3|0)|0;f[F>>0]=l;f[F+1>>0]=n;f[F+2>>0]=S}i=t[I>>2]|0;if((r|0)>=(i|0))break;else T=r}c=N;return}function Ha(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;o=e+112|0;u=e+108|0;c=e+4592|0;a=t[o>>2]|0;s=0;while(1){if((a|0)<1){Uf(e);a=t[o>>2]|0}l=t[u>>2]|0;a=a+-1|0;t[o>>2]=a;t[u>>2]=l<<1;if((l|0)>=0){h=8;break}l=t[c>>2]|0;d=1<<t[36476+(l<<2)>>2];b=n-s|0;b=(d|0)<(b|0)?d:b;s=b+s|0;if((b|0)==(d|0))t[c>>2]=(l|0)>30?31:l+1|0;if((s|0)==(n|0)){a=n;break}}if((h|0)==8)if((s|0)!=(n|0)){a=t[c>>2]|0;if((a+-4|0)>>>0<28)a=wa(e,t[36476+(a<<2)>>2]|0)|0;else a=0;a=a+s|0;if((a|0)>(n|0)){a=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,a|0,5,35648);b=w;w=0;if(b&1){b=je()|0;He(a|0);Qe(b|0)}else bi(a|0,824,96)}}else a=n;if((a|0)<=0)return a|0;s=0;do{b=r+(s*3|0)|0;f[b>>0]=f[i>>0]|0;f[b+1>>0]=f[i+1>>0]|0;f[b+2>>0]=f[i+2>>0]|0;s=s+1|0}while((s|0)!=(a|0));return a|0}function Ua(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;c=i+4568|0;b=Ya(i,c)|0;o=Ya(i,c)|0;c=Ya(i,c)|0;l=i+128|0;s=a[n>>0]|0;h=t[i+136>>2]|0;d=h<<1|1;s=(re(re(d,b)|0,s-(a[r>>0]|0)>>31|1)|0)+s|0;b=0-h|0;if((s|0)>=(b|0)){l=t[l>>2]|0;if((l+h|0)<(s|0))s=s-(re(t[i+132>>2]|0,d)|0)|0}else{s=(re(t[i+132>>2]|0,d)|0)+s|0;l=t[l>>2]|0}if((s&l|0)!=(s|0))s=l&~(s>>31);u=s&255;s=a[n+1>>0]|0;s=(re(re(d,o)|0,s-(a[r+1>>0]|0)>>31|1)|0)+s|0;if((s|0)>=(b|0)){if((l+h|0)<(s|0))s=s-(re(t[i+132>>2]|0,d)|0)|0}else s=(re(t[i+132>>2]|0,d)|0)+s|0;if((s&l|0)!=(s|0))s=l&~(s>>31);o=s&255;s=a[n+2>>0]|0;s=(re(re(d,c)|0,s-(a[r+2>>0]|0)>>31|1)|0)+s|0;if((s|0)>=(b|0)){if((l+h|0)<(s|0))s=s-(re(t[i+132>>2]|0,d)|0)|0}else s=(re(t[i+132>>2]|0,d)|0)+s|0;if((s&l|0)==(s|0)){i=s;i=i&255;f[e>>0]=u;b=e+1|0;f[b>>0]=o;e=e+2|0;f[e>>0]=i;return}i=l&~(s>>31);i=i&255;f[e>>0]=u;b=e+1|0;f[b>>0]=o;e=e+2|0;f[e>>0]=i;return}function ja(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,m=0,v=0;v=i>>31;c=(v^i)-v|0;_=e+188+(c*12|0)+10|0;r=n[_>>1]|0;b=e+188+(c*12|0)|0;s=t[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){i=5;while(1)if((r<<i|0)<(s|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;d=e+188+(c*12|0)+8|0;r=(n[d>>1]^v)-v+a|0;m=e+128|0;s=t[m>>2]|0;if((r&s|0)==(r|0))h=r;else h=s&~(r>>31);r=e+112|0;if((t[r>>2]|0)<8)Uf(e);s=e+108|0;a=t[s>>2]|0;l=a>>>24;o=t[2832+(i<<11)+(l<<3)+4>>2]|0;if(!o){u=t[e+148>>2]|0;s=t[e+140>>2]|0;r=ka(e)|0;if((r|0)<(u+-1-s|0)){if(i)r=(wa(e,i)|0)+(r<<i)|0}else r=(wa(e,s)|0)+1|0;r=r<<31>>31^r>>1;if((((r|0)>-1?r:0-r|0)|0)>65535){r=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,r|0,5,35648);e=w;w=0;if(e&1){e=je()|0;He(r|0);Qe(e|0)}else bi(r|0,824,96)}}else{t[r>>2]=(t[r>>2]|0)-o;t[s>>2]=a<<o;r=t[2832+(i<<11)+(l<<3)>>2]|0}u=e+136|0;a=t[u>>2]|0;if(!i){if(!a)s=(t[e+188+(c*12|0)+4>>2]<<1)+-1+(n[_>>1]|0)>>31;else s=0;o=s^r}else o=r;i=t[e+152>>2]|0;s=(t[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;l=e+188+(c*12|0)+4|0;r=(t[l>>2]|0)+(re(a<<1|1,o)|0)|0;a=n[_>>1]|0;if((a|0)==(i|0)){s=s>>1;r=r>>1;a=i>>1}t[b>>2]=s;i=a+1|0;n[_>>1]=i;s=i+r|0;if((s|0)>=1){if((r|0)>0){r=r-i|0;_=n[d>>1]|0;n[d>>1]=(_<<16>>16<127&1)+(_&65535);r=(r|0)>0?0:r}}else{r=n[d>>1]|0;n[d>>1]=(r&65535)-(r<<16>>16>-128&1);r=(s|0)>(~a|0)?s:0-a|0}t[l>>2]=r;i=t[u>>2]|0;a=i<<1|1;s=(re(a,(o^v)-v|0)|0)+h|0;if((s|0)>=(0-i|0)){r=t[m>>2]|0;if((r+i|0)<(s|0))s=s-(re(t[e+132>>2]|0,a)|0)|0}else{s=(re(t[e+132>>2]|0,a)|0)+s|0;r=t[m>>2]|0}if((s&r|0)==(s|0)){e=s;e=e&255;return e|0}e=r&~(s>>31);e=e&255;return e|0}function Ya(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0;h=i+9|0;r=a[h>>0]|0;l=i+4|0;s=(re(r>>>1,t[l>>2]|0)|0)+(t[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;o=t[e+148>>2]|0;u=t[36476+(t[e+4592>>2]<<2)>>2]|0;r=t[e+140>>2]|0;s=ka(e)|0;do{if((s|0)<(o+-2-u-r|0))if(!n){n=t[l>>2]|0;e=n+s|0;r=e&1;e=(r+e|0)/2|0;c=8;break}else{u=(wa(e,n)|0)+(s<<n)|0;n=t[l>>2]|0;s=u+n|0;o=s&1;r=o;l=1;s=(o+s|0)/2|0;break}else{s=(wa(e,r)|0)+1|0;o=t[l>>2]|0;e=s+o|0;r=e&1;e=(r+e|0)/2|0;if(!n){n=o;c=8}else{u=s;l=1;s=e;n=o}}}while(0);if((c|0)==8){u=s;l=a[i+10>>0]<<1>>>0>=(a[h>>0]|0)>>>0;s=e}s=(r|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;f[c>>0]=(a[c>>0]|0)+1}r=(u+1-n>>1)+(t[i>>2]|0)|0;t[i>>2]=r;n=f[h>>0]|0;if(n<<24>>24!=(f[i+8>>0]|0)){i=n;i=i&255;i=i+1|0;i=i&255;f[h>>0]=i;return s|0}t[i>>2]=r>>1;c=(n&255)>>>1;f[h>>0]=c;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;i=c;i=i&255;i=i+1|0;i=i&255;f[h>>0]=i;return s|0}function qa(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0;_=c;c=c+32|0;n=_;b=e+136|0;e:do{if(!(t[b>>2]|0)){r=t[e+128>>2]|0;i=e+144|0;if((((r|0)==((1<<t[i>>2])+-1|0)?(op(n,r,0),(t[n+4>>2]|0)==(t[e+176>>2]|0)):0)?(t[n+8>>2]|0)==(t[e+180>>2]|0):0)?(t[n+12>>2]|0)==(t[e+184>>2]|0):0)switch(t[i>>2]|0){case 8:{b=t[8900]|0;t[e+4604>>2]=b+(((t[8901]|0)-b|0)>>>1);c=_;return}case 10:{b=t[8903]|0;t[e+4604>>2]=b+(((t[8904]|0)-b|0)>>>1);c=_;return}case 12:{b=t[8906]|0;t[e+4604>>2]=b+(((t[8907]|0)-b|0)>>>1);c=_;return}case 16:{b=t[8909]|0;t[e+4604>>2]=b+(((t[8910]|0)-b|0)>>>1);c=_;return}default:break e}}else i=e+144|0}while(0);d=1<<t[i>>2];r=e+4608|0;n=d<<1;a=e+4612|0;s=t[a>>2]|0;i=t[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)t[a>>2]=o}else{Yf(r,n-l|0);i=t[r>>2]|0}h=e+4604|0;t[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=_;return}o=e+184|0;u=e+180|0;l=e+176|0;s=i;do{i=t[o>>2]|0;if((s|0)>(0-i|0)){r=t[u>>2]|0;if((s|0)>(0-r|0)){n=t[l>>2]|0;if((s|0)>(0-n|0)){a=t[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;f[(t[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=_;return}function $a(e){e=e|0;var i=0,r=0;t[e>>2]=35772;i=t[e+4584>>2]|0;if(i){r=e+4588|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}e=e+88|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function Va(e){e=e|0;var i=0,r=0;t[e>>2]=35772;i=t[e+4584>>2]|0;if(i){r=e+4588|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+88|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function Xa(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+28>>2]|0)!=0?(t[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(37,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+12>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(38,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(39,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(40,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+16>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=2;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=2;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function Ga(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,65535,0);o=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[u+8>>2]|0:l;a=t[i+12>>2]|0;a=(a|0)==0?t[u+12>>2]|0:a;i=t[i+16>>2]|0;r=t[u+16>>2]|0;t[e+152>>2]=(o|0)==0?t[u+4>>2]|0:o;t[e+156>>2]=l;t[e+160>>2]=a;rs(e);a=0;do{t[e+164+(a*12|0)>>2]=1024;t[e+164+(a*12|0)+4>>2]=0;n[e+164+(a*12|0)+8>>1]=0;n[e+164+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;t[e+4544>>2]=1024;t[e+4548>>2]=0;f[e+4552>>0]=u;f[e+4553>>0]=1;f[e+4554>>0]=0;t[e+4556>>2]=1024;t[e+4560>>2]=1;f[e+4564>>0]=u;f[e+4565>>0]=1;f[e+4566>>0]=0;t[e+4568>>2]=0;c=s;return}function Ka(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=t[i>>2]|0;t[i>>2]=0;i=t[l>>2]|0;t[l>>2]=s;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=t[l>>2]|0;f[e+4596>>0]=a&1;i=e+132|0;t[i>>2]=t[r>>2];t[i+4>>2]=t[r+4>>2];t[i+8>>2]=t[r+8>>2];t[i+12>>2]=t[r+12>>2];Cf(e,n);Wa(e);i=t[e+116>>2]|0;e=t[e+112>>2]|0;while(1){a=i+-1|0;r=(f[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=t[l>>2]|0;if(!a)return;t[l>>2]=a+i;n=n+8|0;t[n>>2]=(t[n>>2]|0)-i;return}function Wa(e){e=e|0;var i=0,r=0,f=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;S=c;c=c+32|0;R=S+12|0;E=S;y=e+148|0;M=(t[y>>2]|0)+4|0;if((t[e+28>>2]|0)==1)A=t[e+20>>2]|0;else A=1;i=re(A<<1,M)|0;t[R>>2]=0;C=R+4|0;t[C>>2]=0;t[R+8>>2]=0;do{if(i){if(!((i|0)<0?(w=0,ue(178,R|0),T=w,w=0,T&1):0))l=6;if((l|0)==6?(r=i<<1,w=0,f=de(67,r|0)|0,T=w,w=0,!(T&1)):0){t[R>>2]=f;T=f+(i<<1)|0;t[R+8>>2]=T;ym(f|0,0,r|0)|0;t[C>>2]=T;break}f=je()|0;i=t[R>>2]|0;if(!i)Qe(f|0);r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);Qe(f|0)}}while(0);t[E>>2]=0;T=E+4|0;t[T>>2]=0;t[E+8>>2]=0;do{if(!A)l=18;else{if(!(A>>>0>1073741823?(w=0,ue(178,E|0),g=w,w=0,g&1):0))l=16;if((l|0)==16?(a=A<<2,w=0,s=de(67,a|0)|0,g=w,w=0,!(g&1)):0){t[E>>2]=s;l=s+(A<<2)|0;t[E+8>>2]=l;ym(s|0,0,a|0)|0;t[T>>2]=l;l=18;break}f=je()|0;i=t[E>>2]|0;r=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}}while(0);if((l|0)==18){s=e+8|0;e:do{if((t[s>>2]|0)>0){l=e+4572|0;o=re(A,M)|0;u=o+1|0;h=e+4576|0;d=(A|0)>0;b=e+136|0;_=e+144|0;k=e+140|0;m=e+132|0;v=e+88|0;p=e+4568|0;g=0;i:while(1){f=t[R>>2]|0;r=f+2|0;t[l>>2]=r;f=f+(u<<1)|0;t[h>>2]=f;if(!(g&1))i=f;else{t[l>>2]=f;t[h>>2]=r;i=r;r=f}if(d){a=t[E>>2]|0;f=0;do{t[p>>2]=t[a+(f<<2)>>2];a=t[y>>2]|0;n[r+(a<<1)>>1]=n[r+(a+-1<<1)>>1]|0;n[i+-2>>1]=n[r>>1]|0;w=0;ce(79,e|0,0);a=w;w=0;if(a&1){l=29;break i}a=t[E>>2]|0;t[a+(f<<2)>>2]=t[p>>2];r=(t[l>>2]|0)+(M<<1)|0;t[l>>2]=r;i=(t[h>>2]|0)+(M<<1)|0;t[h>>2]=i;f=f+1|0}while((f|0)<(A|0))}a=t[b>>2]|0;if(((a|0)<=(g|0)?(g|0)<((t[_>>2]|0)+a|0):0)?(a=t[v>>2]|0,w=0,Ce(t[(t[a>>2]|0)+8>>2]|0,a|0,i+((t[m>>2]|0)-o<<1)|0,t[k>>2]|0,M|0),a=w,w=0,a&1):0){l=30;break}g=g+1|0;if((g|0)>=(t[s>>2]|0)){l=42;break e}}if((l|0)==29){f=je()|0;break}else if((l|0)==30){f=je()|0;break}}else l=42}while(0);do{if((l|0)==42){w=0;ue(183,e|0);e=w;w=0;if(e&1){f=je()|0;break}i=t[E>>2]|0;r=i;if(i){f=t[T>>2]|0;if((f|0)!=(i|0))t[T>>2]=f+(~((f+-4-r|0)>>>2)<<2);Bp(i)}i=t[R>>2]|0;if(!i){c=S;return}r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);c=S;return}}while(0);i=t[E>>2]|0;r=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}i=t[R>>2]|0;if(!i)Qe(f|0);r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);Qe(f|0)}function Za(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;_=e+4572|0;i=t[_>>2]|0;m=e+148|0;if((t[m>>2]|0)<=0)return;k=e+4576|0;w=e+4580|0;l=i;o=s[i+-2>>1]|0;i=s[i>>1]|0;b=0;while(1){d=t[k>>2]|0;h=s[d+(b+-1<<1)>>1]|0;a=b+1|0;r=s[l+(a<<1)>>1]|0;c=t[w>>2]|0;u=i-o|0;l=o-h|0;c=((((f[c+(r-i)>>0]|0)*9|0)+(f[c+u>>0]|0)|0)*9|0)+(f[c+l>>0]|0)|0;if(!c){a=(Qa(e,b,0)|0)+b|0;r=t[_>>2]|0;i=s[r+(a+-1<<1)>>1]|0;r=s[r+(a<<1)>>1]|0}else{o=i-h>>31;if((o^l|0)<0)l=i;else l=h+((o^u|0)<0?0:u)|0;d=Ja(e,c,s[d+(b<<1)>>1]|0,l,0)|0;n[(t[k>>2]|0)+(b<<1)>>1]=d}if((a|0)>=(t[m>>2]|0))break;l=t[_>>2]|0;o=i;i=r;b=a}return}function Ja(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,m=0;m=i>>31;h=(m^i)-m|0;_=e+164+(h*12|0)+10|0;r=n[_>>1]|0;b=e+164+(h*12|0)|0;s=t[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){l=5;while(1)if((r<<l|0)<(s|0))l=l+1|0;else break}else l=4;else l=3;else l=2;else l=1;else l=0;d=e+164+(h*12|0)+8|0;r=(n[d>>1]^m)-m+a|0;if((r&65535|0)!=(r|0))r=r>>31&65535^65535;s=e+112|0;if((t[s>>2]|0)<8)Uf(e);a=e+108|0;o=t[a>>2]|0;u=o>>>24;c=t[2832+(l<<11)+(u<<3)+4>>2]|0;if(!c){s=ka(e)|0;if((s|0)<47){if(l)s=(wa(e,l)|0)+(s<<l)|0}else s=(wa(e,16)|0)+1|0;s=s<<31>>31^s>>1;if((((s|0)>-1?s:0-s|0)|0)>65535){r=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,r|0,5,35648);i=w;w=0;if(i&1){i=je()|0;He(r|0);Qe(i|0)}else bi(r|0,824,96)}}else{t[s>>2]=(t[s>>2]|0)-c;t[a>>2]=o<<c;s=t[2832+(l<<11)+(u<<3)>>2]|0}c=e+164+(h*12|0)+4|0;a=t[c>>2]|0;if(!l){e=n[_>>1]|0;l=e;s=(a<<1)+-1+(e<<16>>16)>>31^s}else l=n[_>>1]|0;o=l<<16>>16==64;e=o&1;u=a+s>>e;o=o?32:l<<16>>16;t[b>>2]=((s|0)>-1?s:0-s|0)+(t[b>>2]|0)>>e;a=o+1|0;n[_>>1]=a;l=a+u|0;if((l|0)<1){_=n[d>>1]|0;n[d>>1]=(_&65535)-(_<<16>>16>-128&1);_=(l|0)>(~o|0)?l:0-o|0;t[c>>2]=_;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&65535;return i|0}if((u|0)<=0){_=u;t[c>>2]=_;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&65535;return i|0}_=u-a|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);_=(_|0)>0?0:_;t[c>>2]=_;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&65535;return i|0}function Qa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,l=0,o=0;l=e+4576|0;a=t[l>>2]|0;r=n[a+(i+-1<<1)>>1]|0;o=e+148|0;a=es(e,r,a+(i<<1)|0,(t[o>>2]|0)-i|0)|0;f=a+i|0;if((f|0)==(t[o>>2]|0)){o=a;return o|0}r=r&65535;i=s[(t[e+4572>>2]|0)+(f<<1)>>1]|0;o=r-i|0;if((((o|0)>-1?o:0-o|0)|0)<1)r=(is(e,e+4556|0)|0)+r|0;else r=(re(is(e,e+4544|0)|0,i-r>>31|1)|0)+i|0;n[(t[l>>2]|0)+(f<<1)>>1]=r;o=e+4568|0;e=t[o>>2]|0;t[o>>2]=(e|0)<1?0:e+-1|0;o=a+1|0;return o|0}function es(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0;u=e+112|0;c=e+108|0;h=e+4568|0;s=t[u>>2]|0;l=0;while(1){if((s|0)<1){Uf(e);s=t[u>>2]|0}o=t[c>>2]|0;s=s+-1|0;t[u>>2]=s;t[c>>2]=o<<1;if((o|0)>=0){d=8;break}o=t[h>>2]|0;b=1<<t[36476+(o<<2)>>2];_=a-l|0;_=(b|0)<(_|0)?b:_;l=_+l|0;if((_|0)==(b|0))t[h>>2]=(o|0)>30?31:o+1|0;if((l|0)==(a|0)){s=a;break}}if((d|0)==8)if((l|0)!=(a|0)){s=t[h>>2]|0;if((s+-4|0)>>>0<28)s=wa(e,t[36476+(s<<2)>>2]|0)|0;else s=0;s=s+l|0;if((s|0)>(a|0)){s=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,s|0,5,35648);_=w;w=0;if(_&1){_=je()|0;He(s|0);Qe(_|0)}else bi(s|0,824,96)}}else s=a;if((s|0)>0)l=0;else return s|0;do{n[r+(l<<1)>>1]=i;l=l+1|0}while((l|0)!=(s|0));return s|0}function is(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0;u=i+9|0;r=a[u>>0]|0;l=i+4|0;s=(re(r>>>1,t[l>>2]|0)|0)+(t[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;s=t[36476+(t[e+4568>>2]<<2)>>2]|0;r=ka(e)|0;do{if((r|0)<(46-s|0))if(!n){e=t[l>>2]|0;s=e+r|0;n=s&1;s=(n+s|0)/2|0;o=8;break}else{r=(wa(e,n)|0)+(r<<n)|0;e=t[l>>2]|0;s=r+e|0;c=s&1;n=c;l=1;s=(c+s|0)/2|0;break}else{r=(wa(e,16)|0)+1|0;e=t[l>>2]|0;s=r+e|0;l=s&1;s=(l+s|0)/2|0;if(!n){n=l;o=8}else{n=l;l=1}}}while(0);if((o|0)==8)l=a[i+10>>0]<<1>>>0>=(a[u>>0]|0)>>>0;s=(n|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;f[c>>0]=(a[c>>0]|0)+1}r=(r+1-e>>1)+(t[i>>2]|0)|0;t[i>>2]=r;n=f[u>>0]|0;if(n<<24>>24!=(f[i+8>>0]|0)){c=n;c=c&255;c=c+1|0;c=c&255;f[u>>0]=c;return s|0}t[i>>2]=r>>1;c=(n&255)>>>1;f[u>>0]=c;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;c=c&255;c=c+1|0;c=c&255;f[u>>0]=c;return s|0}function rs(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,65535,0);u=e+152|0;if(((t[o+4>>2]|0)==(t[u>>2]|0)?(t[o+8>>2]|0)==(t[e+156>>2]|0):0)?(t[o+12>>2]|0)==(t[e+160>>2]|0):0){u=t[8909]|0;t[e+4580>>2]=u+(((t[8910]|0)-u|0)>>>1);c=h;return}r=e+4584|0;n=e+4588|0;a=t[n>>2]|0;i=t[r>>2]|0;s=a-i|0;if(s>>>0>=131072){if(s>>>0>131072?(l=i+131072|0,(a|0)!=(l|0)):0)t[n>>2]=l}else{Yf(r,131072-s|0);i=t[r>>2]|0}o=e+4580|0;t[o>>2]=i+65536;l=e+160|0;a=e+156|0;s=-65536;while(1){i=t[l>>2]|0;if((s|0)>(0-i|0)){r=t[a>>2]|0;if((s|0)>(0-r|0)){n=t[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){f[(t[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;f[(t[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==65536)break}c=h;return}function fs(e){e=e|0;var i=0,r=0;t[e>>2]=35744;i=t[e+4584>>2]|0;if(i){r=e+4588|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}e=e+88|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function ns(e){e=e|0;var i=0,r=0;t[e>>2]=35744;i=t[e+4584>>2]|0;if(i){r=e+4588|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+88|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function ts(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+28>>2]|0)!=0?(t[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(37,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+12>>2]|0;if((e|0)==16)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(38,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(39,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(40,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+16>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=2;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=2;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function as(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,4095,0);o=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[u+8>>2]|0:l;a=t[i+12>>2]|0;a=(a|0)==0?t[u+12>>2]|0:a;i=t[i+16>>2]|0;r=t[u+16>>2]|0;t[e+152>>2]=(o|0)==0?t[u+4>>2]|0:o;t[e+156>>2]=l;t[e+160>>2]=a;bs(e);a=0;do{t[e+164+(a*12|0)>>2]=64;t[e+164+(a*12|0)+4>>2]=0;n[e+164+(a*12|0)+8>>1]=0;n[e+164+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;t[e+4544>>2]=64;t[e+4548>>2]=0;f[e+4552>>0]=u;f[e+4553>>0]=1;f[e+4554>>0]=0;t[e+4556>>2]=64;t[e+4560>>2]=1;f[e+4564>>0]=u;f[e+4565>>0]=1;f[e+4566>>0]=0;t[e+4568>>2]=0;c=s;return}function ss(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=t[i>>2]|0;t[i>>2]=0;i=t[l>>2]|0;t[l>>2]=s;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=t[l>>2]|0;f[e+4596>>0]=a&1;i=e+132|0;t[i>>2]=t[r>>2];t[i+4>>2]=t[r+4>>2];t[i+8>>2]=t[r+8>>2];t[i+12>>2]=t[r+12>>2];Cf(e,n);ls(e);i=t[e+116>>2]|0;e=t[e+112>>2]|0;while(1){a=i+-1|0;r=(f[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=t[l>>2]|0;if(!a)return;t[l>>2]=a+i;n=n+8|0;t[n>>2]=(t[n>>2]|0)-i;return}function ls(e){e=e|0;var i=0,r=0,f=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;S=c;c=c+32|0;R=S+12|0;E=S;y=e+148|0;M=(t[y>>2]|0)+4|0;if((t[e+28>>2]|0)==1)A=t[e+20>>2]|0;else A=1;i=re(A<<1,M)|0;t[R>>2]=0;C=R+4|0;t[C>>2]=0;t[R+8>>2]=0;do{if(i){if(!((i|0)<0?(w=0,ue(178,R|0),T=w,w=0,T&1):0))l=6;if((l|0)==6?(r=i<<1,w=0,f=de(67,r|0)|0,T=w,w=0,!(T&1)):0){t[R>>2]=f;T=f+(i<<1)|0;t[R+8>>2]=T;ym(f|0,0,r|0)|0;t[C>>2]=T;break}f=je()|0;i=t[R>>2]|0;if(!i)Qe(f|0);r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);Qe(f|0)}}while(0);t[E>>2]=0;T=E+4|0;t[T>>2]=0;t[E+8>>2]=0;do{if(!A)l=18;else{if(!(A>>>0>1073741823?(w=0,ue(178,E|0),g=w,w=0,g&1):0))l=16;if((l|0)==16?(a=A<<2,w=0,s=de(67,a|0)|0,g=w,w=0,!(g&1)):0){t[E>>2]=s;l=s+(A<<2)|0;t[E+8>>2]=l;ym(s|0,0,a|0)|0;t[T>>2]=l;l=18;break}f=je()|0;i=t[E>>2]|0;r=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}}while(0);if((l|0)==18){s=e+8|0;e:do{if((t[s>>2]|0)>0){l=e+4572|0;o=re(A,M)|0;u=o+1|0;h=e+4576|0;d=(A|0)>0;b=e+136|0;_=e+144|0;k=e+140|0;m=e+132|0;v=e+88|0;p=e+4568|0;g=0;i:while(1){f=t[R>>2]|0;r=f+2|0;t[l>>2]=r;f=f+(u<<1)|0;t[h>>2]=f;if(!(g&1))i=f;else{t[l>>2]=f;t[h>>2]=r;i=r;r=f}if(d){a=t[E>>2]|0;f=0;do{t[p>>2]=t[a+(f<<2)>>2];a=t[y>>2]|0;n[r+(a<<1)>>1]=n[r+(a+-1<<1)>>1]|0;n[i+-2>>1]=n[r>>1]|0;w=0;ce(80,e|0,0);a=w;w=0;if(a&1){l=29;break i}a=t[E>>2]|0;t[a+(f<<2)>>2]=t[p>>2];r=(t[l>>2]|0)+(M<<1)|0;t[l>>2]=r;i=(t[h>>2]|0)+(M<<1)|0;t[h>>2]=i;f=f+1|0}while((f|0)<(A|0))}a=t[b>>2]|0;if(((a|0)<=(g|0)?(g|0)<((t[_>>2]|0)+a|0):0)?(a=t[v>>2]|0,w=0,Ce(t[(t[a>>2]|0)+8>>2]|0,a|0,i+((t[m>>2]|0)-o<<1)|0,t[k>>2]|0,M|0),a=w,w=0,a&1):0){l=30;break}g=g+1|0;if((g|0)>=(t[s>>2]|0)){l=42;break e}}if((l|0)==29){f=je()|0;break}else if((l|0)==30){f=je()|0;break}}else l=42}while(0);do{if((l|0)==42){w=0;ue(183,e|0);e=w;w=0;if(e&1){f=je()|0;break}i=t[E>>2]|0;r=i;if(i){f=t[T>>2]|0;if((f|0)!=(i|0))t[T>>2]=f+(~((f+-4-r|0)>>>2)<<2);Bp(i)}i=t[R>>2]|0;if(!i){c=S;return}r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);c=S;return}}while(0);i=t[E>>2]|0;r=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}i=t[R>>2]|0;if(!i)Qe(f|0);r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~((r+-2-i|0)>>>1)<<1);Bp(i);Qe(f|0)}function os(e,i){e=e|0;i=i|0;var r=0,a=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;_=e+4572|0;i=t[_>>2]|0;m=e+148|0;if((t[m>>2]|0)<=0)return;k=e+4576|0;w=e+4580|0;l=i;o=s[i+-2>>1]|0;i=s[i>>1]|0;b=0;while(1){d=t[k>>2]|0;h=s[d+(b+-1<<1)>>1]|0;a=b+1|0;r=s[l+(a<<1)>>1]|0;c=t[w>>2]|0;u=i-o|0;l=o-h|0;c=((((f[c+(r-i)>>0]|0)*9|0)+(f[c+u>>0]|0)|0)*9|0)+(f[c+l>>0]|0)|0;if(!c){a=(cs(e,b,0)|0)+b|0;r=t[_>>2]|0;i=s[r+(a+-1<<1)>>1]|0;r=s[r+(a<<1)>>1]|0}else{o=i-h>>31;if((o^l|0)<0)l=i;else l=h+((o^u|0)<0?0:u)|0;d=us(e,c,s[d+(b<<1)>>1]|0,l,0)|0;n[(t[k>>2]|0)+(b<<1)>>1]=d}if((a|0)>=(t[m>>2]|0))break;l=t[_>>2]|0;o=i;i=r;b=a}return}function us(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,m=0;m=i>>31;h=(m^i)-m|0;_=e+164+(h*12|0)+10|0;r=n[_>>1]|0;b=e+164+(h*12|0)|0;s=t[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){l=5;while(1)if((r<<l|0)<(s|0))l=l+1|0;else break}else l=4;else l=3;else l=2;else l=1;else l=0;d=e+164+(h*12|0)+8|0;r=(n[d>>1]^m)-m+a|0;if((r&4095|0)!=(r|0))r=r>>31&4095^4095;s=e+112|0;if((t[s>>2]|0)<8)Uf(e);a=e+108|0;o=t[a>>2]|0;u=o>>>24;c=t[2832+(l<<11)+(u<<3)+4>>2]|0;if(!c){s=ka(e)|0;if((s|0)<35){if(l)s=(wa(e,l)|0)+(s<<l)|0}else s=(wa(e,12)|0)+1|0;s=s<<31>>31^s>>1;if((((s|0)>-1?s:0-s|0)|0)>65535){r=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,r|0,5,35648);i=w;w=0;if(i&1){i=je()|0;He(r|0);Qe(i|0)}else bi(r|0,824,96)}}else{t[s>>2]=(t[s>>2]|0)-c;t[a>>2]=o<<c;s=t[2832+(l<<11)+(u<<3)>>2]|0}c=e+164+(h*12|0)+4|0;a=t[c>>2]|0;if(!l){e=n[_>>1]|0;l=e;s=(a<<1)+-1+(e<<16>>16)>>31^s}else l=n[_>>1]|0;o=l<<16>>16==64;e=o&1;u=a+s>>e;o=o?32:l<<16>>16;t[b>>2]=((s|0)>-1?s:0-s|0)+(t[b>>2]|0)>>e;a=o+1|0;n[_>>1]=a;l=a+u|0;if((l|0)<1){_=n[d>>1]|0;n[d>>1]=(_&65535)-(_<<16>>16>-128&1);_=(l|0)>(~o|0)?l:0-o|0;t[c>>2]=_;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&4095;i=i&65535;return i|0}if((u|0)<=0){_=u;t[c>>2]=_;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&4095;i=i&65535;return i|0}_=u-a|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);_=(_|0)>0?0:_;t[c>>2]=_;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&4095;i=i&65535;return i|0}function cs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,l=0,o=0;l=e+4576|0;a=t[l>>2]|0;r=n[a+(i+-1<<1)>>1]|0;o=e+148|0;a=hs(e,r,a+(i<<1)|0,(t[o>>2]|0)-i|0)|0;f=a+i|0;if((f|0)==(t[o>>2]|0)){o=a;return o|0}r=r&65535;i=s[(t[e+4572>>2]|0)+(f<<1)>>1]|0;o=r-i|0;if((((o|0)>-1?o:0-o|0)|0)<1)r=(ds(e,e+4556|0)|0)+r|0;else r=(re(ds(e,e+4544|0)|0,i-r>>31|1)|0)+i|0;n[(t[l>>2]|0)+(f<<1)>>1]=r&4095;o=e+4568|0;e=t[o>>2]|0;t[o>>2]=(e|0)<1?0:e+-1|0;o=a+1|0;return o|0}function hs(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0;u=e+112|0;c=e+108|0;h=e+4568|0;s=t[u>>2]|0;l=0;while(1){if((s|0)<1){Uf(e);s=t[u>>2]|0}o=t[c>>2]|0;s=s+-1|0;t[u>>2]=s;t[c>>2]=o<<1;if((o|0)>=0){d=8;break}o=t[h>>2]|0;b=1<<t[36476+(o<<2)>>2];_=a-l|0;_=(b|0)<(_|0)?b:_;l=_+l|0;if((_|0)==(b|0))t[h>>2]=(o|0)>30?31:o+1|0;if((l|0)==(a|0)){s=a;break}}if((d|0)==8)if((l|0)!=(a|0)){s=t[h>>2]|0;if((s+-4|0)>>>0<28)s=wa(e,t[36476+(s<<2)>>2]|0)|0;else s=0;s=s+l|0;if((s|0)>(a|0)){s=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,s|0,5,35648);_=w;w=0;if(_&1){_=je()|0;He(s|0);Qe(_|0)}else bi(s|0,824,96)}}else s=a;if((s|0)>0)l=0;else return s|0;do{n[r+(l<<1)>>1]=i;l=l+1|0}while((l|0)!=(s|0));return s|0}function ds(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0;u=i+9|0;r=a[u>>0]|0;l=i+4|0;s=(re(r>>>1,t[l>>2]|0)|0)+(t[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;s=t[36476+(t[e+4568>>2]<<2)>>2]|0;r=ka(e)|0;do{if((r|0)<(34-s|0))if(!n){e=t[l>>2]|0;s=e+r|0;n=s&1;s=(n+s|0)/2|0;o=8;break}else{r=(wa(e,n)|0)+(r<<n)|0;e=t[l>>2]|0;s=r+e|0;c=s&1;n=c;l=1;s=(c+s|0)/2|0;break}else{r=(wa(e,12)|0)+1|0;e=t[l>>2]|0;s=r+e|0;l=s&1;s=(l+s|0)/2|0;if(!n){n=l;o=8}else{n=l;l=1}}}while(0);if((o|0)==8)l=a[i+10>>0]<<1>>>0>=(a[u>>0]|0)>>>0;s=(n|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;f[c>>0]=(a[c>>0]|0)+1}r=(r+1-e>>1)+(t[i>>2]|0)|0;t[i>>2]=r;n=f[u>>0]|0;if(n<<24>>24!=(f[i+8>>0]|0)){c=n;c=c&255;c=c+1|0;c=c&255;f[u>>0]=c;return s|0}t[i>>2]=r>>1;c=(n&255)>>>1;f[u>>0]=c;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;c=c&255;c=c+1|0;c=c&255;f[u>>0]=c;return s|0}function bs(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,4095,0);u=e+152|0;if(((t[o+4>>2]|0)==(t[u>>2]|0)?(t[o+8>>2]|0)==(t[e+156>>2]|0):0)?(t[o+12>>2]|0)==(t[e+160>>2]|0):0){u=t[8906]|0;t[e+4580>>2]=u+(((t[8907]|0)-u|0)>>>1);c=h;return}r=e+4584|0;n=e+4588|0;a=t[n>>2]|0;i=t[r>>2]|0;s=a-i|0;if(s>>>0>=8192){if(s>>>0>8192?(l=i+8192|0,(a|0)!=(l|0)):0)t[n>>2]=l}else{Yf(r,8192-s|0);i=t[r>>2]|0}o=e+4580|0;t[o>>2]=i+4096;l=e+160|0;a=e+156|0;s=-4096;while(1){i=t[l>>2]|0;if((s|0)>(0-i|0)){r=t[a>>2]|0;if((s|0)>(0-r|0)){n=t[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){f[(t[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;f[(t[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==4096)break}c=h;return}function _s(e){e=e|0;var i=0,r=0;t[e>>2]=35716;i=t[e+4584>>2]|0;if(i){r=e+4588|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}e=e+88|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function ks(e){e=e|0;var i=0,r=0;t[e>>2]=35716;i=t[e+4584>>2]|0;if(i){r=e+4588|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+88|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function ws(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+28>>2]|0)!=0?(t[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(44,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+12>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(45,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(46,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(47,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+16>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=1;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=1;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function ms(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,255,0);o=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[u+8>>2]|0:l;a=t[i+12>>2]|0;a=(a|0)==0?t[u+12>>2]|0:a;i=t[i+16>>2]|0;r=t[u+16>>2]|0;t[e+152>>2]=(o|0)==0?t[u+4>>2]|0:o;t[e+156>>2]=l;t[e+160>>2]=a;Ss(e);a=0;do{t[e+164+(a*12|0)>>2]=4;t[e+164+(a*12|0)+4>>2]=0;n[e+164+(a*12|0)+8>>1]=0;n[e+164+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;t[e+4544>>2]=4;t[e+4548>>2]=0;f[e+4552>>0]=u;f[e+4553>>0]=1;f[e+4554>>0]=0;t[e+4556>>2]=4;t[e+4560>>2]=1;f[e+4564>>0]=u;f[e+4565>>0]=1;f[e+4566>>0]=0;t[e+4568>>2]=0;c=s;return}function vs(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=t[i>>2]|0;t[i>>2]=0;i=t[l>>2]|0;t[l>>2]=s;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=t[l>>2]|0;f[e+4596>>0]=a&1;i=e+132|0;t[i>>2]=t[r>>2];t[i+4>>2]=t[r+4>>2];t[i+8>>2]=t[r+8>>2];t[i+12>>2]=t[r+12>>2];Cf(e,n);ps(e);i=t[e+116>>2]|0;e=t[e+112>>2]|0;while(1){a=i+-1|0;r=(f[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=t[l>>2]|0;if(!a)return;t[l>>2]=a+i;n=n+8|0;t[n>>2]=(t[n>>2]|0)-i;return}function ps(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;S=c;c=c+32|0;R=S+12|0;E=S;y=e+148|0;M=(t[y>>2]|0)+4|0;if((t[e+28>>2]|0)==1)A=t[e+20>>2]|0;else A=1;i=re(A<<1,M)|0;t[R>>2]=0;C=R+4|0;t[C>>2]=0;t[R+8>>2]=0;e:do{if(i){if(!((i|0)<0?(w=0,ue(178,R|0),T=w,w=0,T&1):0))s=6;if((s|0)==6?(w=0,r=de(67,i|0)|0,T=w,w=0,!(T&1)):0){t[C>>2]=r;t[R>>2]=r;t[R+8>>2]=r+i;while(1){f[r>>0]=0;r=(t[C>>2]|0)+1|0;t[C>>2]=r;i=i+-1|0;if(!i)break e}}r=je()|0;i=t[R>>2]|0;if(!i)Qe(r|0);if((t[C>>2]|0)!=(i|0))t[C>>2]=i;Bp(i);Qe(r|0)}}while(0);t[E>>2]=0;T=E+4|0;t[T>>2]=0;t[E+8>>2]=0;do{if(!A)s=19;else{if(!(A>>>0>1073741823?(w=0,ue(178,E|0),g=w,w=0,g&1):0))s=17;if((s|0)==17?(n=A<<2,w=0,a=de(67,n|0)|0,g=w,w=0,!(g&1)):0){t[E>>2]=a;s=a+(A<<2)|0;t[E+8>>2]=s;ym(a|0,0,n|0)|0;t[T>>2]=s;s=19;break}r=je()|0;i=t[E>>2]|0;n=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-n|0)>>>2)<<2);Bp(i)}}}while(0);if((s|0)==19){s=e+8|0;e:do{if((t[s>>2]|0)>0){l=e+4572|0;o=re(A,M)|0;u=o+1|0;h=e+4576|0;d=(A|0)>0;b=e+136|0;_=e+144|0;k=e+140|0;m=e+132|0;v=e+88|0;p=e+4568|0;g=0;i:while(1){n=t[R>>2]|0;r=n+1|0;t[l>>2]=r;n=n+u|0;t[h>>2]=n;if(!(g&1))i=n;else{t[l>>2]=n;t[h>>2]=r;i=r;r=n}if(d){a=t[E>>2]|0;n=0;do{t[p>>2]=t[a+(n<<2)>>2];a=t[y>>2]|0;f[r+a>>0]=f[r+(a+-1)>>0]|0;f[(t[h>>2]|0)+-1>>0]=f[t[l>>2]>>0]|0;w=0;ce(81,e|0,0);a=w;w=0;if(a&1){s=30;break i}a=t[E>>2]|0;t[a+(n<<2)>>2]=t[p>>2];r=(t[l>>2]|0)+M|0;t[l>>2]=r;i=(t[h>>2]|0)+M|0;t[h>>2]=i;n=n+1|0}while((n|0)<(A|0))}a=t[b>>2]|0;if(((a|0)<=(g|0)?(g|0)<((t[_>>2]|0)+a|0):0)?(a=t[v>>2]|0,w=0,Ce(t[(t[a>>2]|0)+8>>2]|0,a|0,i+((t[m>>2]|0)-o)|0,t[k>>2]|0,M|0),a=w,w=0,a&1):0){s=31;break}g=g+1|0;if((g|0)>=(t[s>>2]|0)){s=43;break e}}if((s|0)==30){r=je()|0;break}else if((s|0)==31){r=je()|0;break}}else s=43}while(0);do{if((s|0)==43){w=0;ue(183,e|0);e=w;w=0;if(e&1){r=je()|0;break}i=t[E>>2]|0;r=i;if(i){n=t[T>>2]|0;if((n|0)!=(i|0))t[T>>2]=n+(~((n+-4-r|0)>>>2)<<2);Bp(i)}i=t[R>>2]|0;if(!i){c=S;return}if((t[C>>2]|0)!=(i|0))t[C>>2]=i;Bp(i);c=S;return}}while(0);i=t[E>>2]|0;n=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-n|0)>>>2)<<2);Bp(i)}}i=t[R>>2]|0;if(!i)Qe(r|0);if((t[C>>2]|0)!=(i|0))t[C>>2]=i;Bp(i);Qe(r|0)}function gs(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0;b=e+4572|0;i=t[b>>2]|0;w=e+148|0;if((t[w>>2]|0)<=0)return;_=e+4576|0;k=e+4580|0;s=i;l=a[i+-1>>0]|0;i=a[i>>0]|0;d=0;while(1){h=t[_>>2]|0;c=a[h+(d+-1)>>0]|0;n=d+1|0;r=a[s+n>>0]|0;u=t[k>>2]|0;o=i-l|0;s=l-c|0;u=((((f[u+(r-i)>>0]|0)*9|0)+(f[u+o>>0]|0)|0)*9|0)+(f[u+s>>0]|0)|0;if(!u){n=(Ms(e,d,0)|0)+d|0;r=t[b>>2]|0;i=a[r+(n+-1)>>0]|0;r=a[r+n>>0]|0}else{l=i-c>>31;if((l^s|0)<0)s=i;else s=c+((l^o|0)<0?0:o)|0;h=ys(e,u,a[h+d>>0]|0,s,0)|0;f[(t[_>>2]|0)+d>>0]=h}if((n|0)>=(t[w>>2]|0))break;s=t[b>>2]|0;l=i;i=r;d=n}return}function ys(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,m=0;m=i>>31;h=(m^i)-m|0;_=e+164+(h*12|0)+10|0;r=n[_>>1]|0;b=e+164+(h*12|0)|0;s=t[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){l=5;while(1)if((r<<l|0)<(s|0))l=l+1|0;else break}else l=4;else l=3;else l=2;else l=1;else l=0;d=e+164+(h*12|0)+8|0;r=(n[d>>1]^m)-m+a|0;if((r&255|0)!=(r|0))r=r>>31&255^255;s=e+112|0;if((t[s>>2]|0)<8)Uf(e);a=e+108|0;o=t[a>>2]|0;u=o>>>24;c=t[2832+(l<<11)+(u<<3)+4>>2]|0;if(!c){s=ka(e)|0;if((s|0)<23){if(l)s=(wa(e,l)|0)+(s<<l)|0}else s=(wa(e,8)|0)+1|0;s=s<<31>>31^s>>1;if((((s|0)>-1?s:0-s|0)|0)>65535){r=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,r|0,5,35648);i=w;w=0;if(i&1){i=je()|0;He(r|0);Qe(i|0)}else bi(r|0,824,96)}}else{t[s>>2]=(t[s>>2]|0)-c;t[a>>2]=o<<c;s=t[2832+(l<<11)+(u<<3)>>2]|0}c=e+164+(h*12|0)+4|0;a=t[c>>2]|0;if(!l){e=n[_>>1]|0;l=e;s=(a<<1)+-1+(e<<16>>16)>>31^s}else l=n[_>>1]|0;o=l<<16>>16==64;e=o&1;u=a+s>>e;o=o?32:l<<16>>16;t[b>>2]=((s|0)>-1?s:0-s|0)+(t[b>>2]|0)>>e;a=o+1|0;n[_>>1]=a;l=a+u|0;if((l|0)<1){_=n[d>>1]|0;n[d>>1]=(_&65535)-(_<<16>>16>-128&1);_=(l|0)>(~o|0)?l:0-o|0;t[c>>2]=_;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&255;return i|0}if((u|0)<=0){_=u;t[c>>2]=_;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&255;return i|0}_=u-a|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);_=(_|0)>0?0:_;t[c>>2]=_;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&255;return i|0}function Ms(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0;l=e+4576|0;s=t[l>>2]|0;r=f[s+(i+-1)>>0]|0;o=e+148|0;s=As(e,r,s+i|0,(t[o>>2]|0)-i|0)|0;n=s+i|0;if((n|0)==(t[o>>2]|0)){o=s;return o|0}r=r&255;i=a[(t[e+4572>>2]|0)+n>>0]|0;o=r-i|0;if((((o|0)>-1?o:0-o|0)|0)<1)r=(Es(e,e+4556|0)|0)+r|0;else r=(re(Es(e,e+4544|0)|0,i-r>>31|1)|0)+i|0;f[(t[l>>2]|0)+n>>0]=r;o=e+4568|0;e=t[o>>2]|0;t[o>>2]=(e|0)<1?0:e+-1|0;o=s+1|0;return o|0}function As(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;o=e+112|0;u=e+108|0;c=e+4568|0;a=t[o>>2]|0;s=0;while(1){if((a|0)<1){Uf(e);a=t[o>>2]|0}l=t[u>>2]|0;a=a+-1|0;t[o>>2]=a;t[u>>2]=l<<1;if((l|0)>=0){h=8;break}l=t[c>>2]|0;d=1<<t[36476+(l<<2)>>2];b=n-s|0;b=(d|0)<(b|0)?d:b;s=b+s|0;if((b|0)==(d|0))t[c>>2]=(l|0)>30?31:l+1|0;if((s|0)==(n|0)){a=n;break}}if((h|0)==8)if((s|0)!=(n|0)){a=t[c>>2]|0;if((a+-4|0)>>>0<28)a=wa(e,t[36476+(a<<2)>>2]|0)|0;else a=0;a=a+s|0;if((a|0)>(n|0)){a=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,a|0,5,35648);b=w;w=0;if(b&1){b=je()|0;He(a|0);Qe(b|0)}else bi(a|0,824,96)}}else a=n;if((a|0)<=0)return a|0;ym(r|0,i|0,a|0)|0;return a|0}function Es(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0;u=i+9|0;r=a[u>>0]|0;l=i+4|0;s=(re(r>>>1,t[l>>2]|0)|0)+(t[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;s=t[36476+(t[e+4568>>2]<<2)>>2]|0;r=ka(e)|0;do{if((r|0)<(22-s|0))if(!n){e=t[l>>2]|0;s=e+r|0;n=s&1;s=(n+s|0)/2|0;o=8;break}else{r=(wa(e,n)|0)+(r<<n)|0;e=t[l>>2]|0;s=r+e|0;c=s&1;n=c;l=1;s=(c+s|0)/2|0;break}else{r=(wa(e,8)|0)+1|0;e=t[l>>2]|0;s=r+e|0;l=s&1;s=(l+s|0)/2|0;if(!n){n=l;o=8}else{n=l;l=1}}}while(0);if((o|0)==8)l=a[i+10>>0]<<1>>>0>=(a[u>>0]|0)>>>0;s=(n|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;f[c>>0]=(a[c>>0]|0)+1}r=(r+1-e>>1)+(t[i>>2]|0)|0;t[i>>2]=r;n=f[u>>0]|0;if(n<<24>>24!=(f[i+8>>0]|0)){c=n;c=c&255;c=c+1|0;c=c&255;f[u>>0]=c;return s|0}t[i>>2]=r>>1;c=(n&255)>>>1;f[u>>0]=c;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;c=c&255;c=c+1|0;c=c&255;f[u>>0]=c;return s|0}function Ss(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,255,0);u=e+152|0;if(((t[o+4>>2]|0)==(t[u>>2]|0)?(t[o+8>>2]|0)==(t[e+156>>2]|0):0)?(t[o+12>>2]|0)==(t[e+160>>2]|0):0){u=t[8900]|0;t[e+4580>>2]=u+(((t[8901]|0)-u|0)>>>1);c=h;return}r=e+4584|0;n=e+4588|0;a=t[n>>2]|0;i=t[r>>2]|0;s=a-i|0;if(s>>>0>=512){if(s>>>0>512?(l=i+512|0,(a|0)!=(l|0)):0)t[n>>2]=l}else{Yf(r,512-s|0);i=t[r>>2]|0}o=e+4580|0;t[o>>2]=i+256;l=e+160|0;a=e+156|0;s=-256;while(1){i=t[l>>2]|0;if((s|0)>(0-i|0)){r=t[a>>2]|0;if((s|0)>(0-r|0)){n=t[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){f[(t[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;f[(t[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==256)break}c=h;return}function Ts(e){e=e|0;var i=0,r=0;t[e>>2]=35688;i=t[e+4584>>2]|0;if(i){r=e+4588|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}e=e+88|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function Rs(e){e=e|0;var i=0,r=0;t[e>>2]=35688;i=t[e+4584>>2]|0;if(i){r=e+4588|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+88|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function Cs(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+28>>2]|0)!=0?(t[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(44,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+12>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(45,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(46,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(47,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+16>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=3;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=3;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function Ps(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0;s=c;c=c+32|0;u=s;op(u,255,0);o=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[u+8>>2]|0:l;a=t[i+12>>2]|0;a=(a|0)==0?t[u+12>>2]|0:a;i=t[i+16>>2]|0;r=t[u+16>>2]|0;t[e+152>>2]=(o|0)==0?t[u+4>>2]|0:o;t[e+156>>2]=l;t[e+160>>2]=a;zv(e);a=0;do{t[e+164+(a*12|0)>>2]=4;t[e+164+(a*12|0)+4>>2]=0;n[e+164+(a*12|0)+8>>1]=0;n[e+164+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);u=((i|0)==0?r:i)&255;t[e+4544>>2]=4;t[e+4548>>2]=0;f[e+4552>>0]=u;f[e+4553>>0]=1;f[e+4554>>0]=0;t[e+4556>>2]=4;t[e+4560>>2]=1;f[e+4564>>0]=u;f[e+4565>>0]=1;f[e+4566>>0]=0;t[e+4568>>2]=0;c=s;return}function Is(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=t[i>>2]|0;t[i>>2]=0;i=t[l>>2]|0;t[l>>2]=s;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=t[l>>2]|0;f[e+4596>>0]=a&1;i=e+132|0;t[i>>2]=t[r>>2];t[i+4>>2]=t[r+4>>2];t[i+8>>2]=t[r+8>>2];t[i+12>>2]=t[r+12>>2];Cf(e,n);Os(e);i=t[e+116>>2]|0;e=t[e+112>>2]|0;while(1){a=i+-1|0;r=(f[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=t[l>>2]|0;if(!a)return;t[l>>2]=a+i;n=n+8|0;t[n>>2]=(t[n>>2]|0)-i;return}function Os(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;S=c;c=c+32|0;R=S+12|0;E=S;y=e+148|0;M=(t[y>>2]|0)+4|0;if((t[e+28>>2]|0)==1)A=t[e+20>>2]|0;else A=1;i=re(A<<1,M)|0;t[R>>2]=0;C=R+4|0;t[C>>2]=0;t[R+8>>2]=0;e:do{if(i){if(!(i>>>0>1431655765?(w=0,ue(178,R|0),T=w,w=0,T&1):0))s=6;if((s|0)==6?(w=0,r=de(67,i*3|0)|0,T=w,w=0,!(T&1)):0){t[C>>2]=r;t[R>>2]=r;t[R+8>>2]=r+(i*3|0);while(1){f[r>>0]=0;f[r+1>>0]=0;f[r+2>>0]=0;r=(t[C>>2]|0)+3|0;t[C>>2]=r;i=i+-1|0;if(!i)break e}}n=je()|0;i=t[R>>2]|0;if(!i)Qe(n|0);r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Bp(i);Qe(n|0)}}while(0);t[E>>2]=0;T=E+4|0;t[T>>2]=0;t[E+8>>2]=0;do{if(!A)s=19;else{if(!(A>>>0>1073741823?(w=0,ue(178,E|0),g=w,w=0,g&1):0))s=17;if((s|0)==17?(n=A<<2,w=0,a=de(67,n|0)|0,g=w,w=0,!(g&1)):0){t[E>>2]=a;s=a+(A<<2)|0;t[E+8>>2]=s;ym(a|0,0,n|0)|0;t[T>>2]=s;s=19;break}n=je()|0;i=t[E>>2]|0;r=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}}while(0);if((s|0)==19){s=e+8|0;e:do{if((t[s>>2]|0)>0){l=e+4572|0;o=re(A,M)|0;u=o+1|0;h=e+4576|0;d=(A|0)>0;b=e+136|0;_=e+144|0;k=e+140|0;m=e+132|0;v=e+88|0;p=e+4568|0;g=0;i:while(1){n=t[R>>2]|0;r=n+3|0;t[l>>2]=r;n=n+(u*3|0)|0;t[h>>2]=n;if(!(g&1))i=n;else{t[l>>2]=n;t[h>>2]=r;i=r;r=n}if(d){a=t[E>>2]|0;n=0;do{t[p>>2]=t[a+(n<<2)>>2];i=t[y>>2]|0;a=r+(i*3|0)|0;r=r+((i+-1|0)*3|0)|0;f[a>>0]=f[r>>0]|0;f[a+1>>0]=f[r+1>>0]|0;f[a+2>>0]=f[r+2>>0]|0;r=t[l>>2]|0;a=(t[h>>2]|0)+-3|0;f[a>>0]=f[r>>0]|0;f[a+1>>0]=f[r+1>>0]|0;f[a+2>>0]=f[r+2>>0]|0;w=0;ce(82,e|0,0);a=w;w=0;if(a&1){s=30;break i}a=t[E>>2]|0;t[a+(n<<2)>>2]=t[p>>2];r=(t[l>>2]|0)+(M*3|0)|0;t[l>>2]=r;i=(t[h>>2]|0)+(M*3|0)|0;t[h>>2]=i;n=n+1|0}while((n|0)<(A|0))}a=t[b>>2]|0;if(((a|0)<=(g|0)?(g|0)<((t[_>>2]|0)+a|0):0)?(a=t[v>>2]|0,w=0,Ce(t[(t[a>>2]|0)+8>>2]|0,a|0,i+(((t[m>>2]|0)-o|0)*3|0)|0,t[k>>2]|0,M|0),a=w,w=0,a&1):0){s=31;break}g=g+1|0;if((g|0)>=(t[s>>2]|0)){s=43;break e}}if((s|0)==30){n=je()|0;break}else if((s|0)==31){n=je()|0;break}}else s=43}while(0);do{if((s|0)==43){w=0;ue(183,e|0);e=w;w=0;if(e&1){n=je()|0;break}i=t[E>>2]|0;r=i;if(i){n=t[T>>2]|0;if((n|0)!=(i|0))t[T>>2]=n+(~((n+-4-r|0)>>>2)<<2);Bp(i)}i=t[R>>2]|0;if(!i){c=S;return}r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Bp(i);c=S;return}}while(0);i=t[E>>2]|0;r=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-r|0)>>>2)<<2);Bp(i)}}i=t[R>>2]|0;if(!i)Qe(n|0);r=t[C>>2]|0;if((r|0)!=(i|0))t[C>>2]=r+(~(((r+-3-i|0)>>>0)/3|0)*3|0);Bp(i);Qe(n|0)}function xs(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;S=e+148|0;if((t[S>>2]|0)<=0)return;T=e+4576|0;R=e+4572|0;C=e+4580|0;E=0;while(1){y=E+-1|0;l=t[T>>2]|0;o=t[R>>2]|0;i=E+1|0;s=a[o+(E*3|0)>>0]|0;A=t[C>>2]|0;u=a[o+(y*3|0)>>0]|0;c=s-u|0;h=a[l+(y*3|0)>>0]|0;d=u-h|0;b=((((f[A+((a[o+(i*3|0)>>0]|0)-s)>>0]|0)*9|0)+(f[A+c>>0]|0)|0)*9|0)+(f[A+d>>0]|0)|0;n=a[o+(E*3|0)+1>>0]|0;_=a[o+(y*3|0)+1>>0]|0;k=n-_|0;w=a[l+(y*3|0)+1>>0]|0;m=_-w|0;v=((((f[A+((a[o+(i*3|0)+1>>0]|0)-n)>>0]|0)*9|0)+(f[A+k>>0]|0)|0)*9|0)+(f[A+m>>0]|0)|0;r=a[o+(E*3|0)+2>>0]|0;p=a[o+(y*3|0)+2>>0]|0;g=r-p|0;y=a[l+(y*3|0)+2>>0]|0;M=p-y|0;A=((((f[A+((a[o+(i*3|0)+2>>0]|0)-r)>>0]|0)*9|0)+(f[A+g>>0]|0)|0)*9|0)+(f[A+M>>0]|0)|0;if(!(v|b|A))i=(Ls(e,E,0)|0)+E|0;else{o=a[l+(E*3|0)>>0]|0;l=s-h>>31;if((l^d|0)>=0)if((l^c|0)<0)s=h;else s=h-u+s|0;o=Bs(e,b,o,s,0)|0;l=a[(t[T>>2]|0)+(E*3|0)+1>>0]|0;s=n-w>>31;if((s^m|0)>=0)if((s^k|0)<0)n=w;else n=w-_+n|0;s=Bs(e,v,l,n,0)|0;l=a[(t[T>>2]|0)+(E*3|0)+2>>0]|0;n=r-y>>31;if((n^M|0)>=0)if((n^g|0)<0)r=y;else r=y-p+r|0;A=Bs(e,A,l,r,0)|0;E=(t[T>>2]|0)+(E*3|0)|0;f[E>>0]=o;f[E+1>>0]=s;f[E+2>>0]=A}if((i|0)<(t[S>>2]|0))E=i;else break}return}function Ls(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;u=c;c=c+16|0;d=u+3|0;b=u;s=e+4576|0;r=t[s>>2]|0;n=r+((i+-1|0)*3|0)|0;l=f[n>>0]|0;o=f[n+1>>0]|0;n=f[n+2>>0]|0;f[b>>0]=l;f[b+1>>0]=o;f[b+2>>0]=n;h=e+148|0;a=(t[h>>2]|0)-i|0;f[d>>0]=f[b>>0]|0;f[d+1>>0]=f[b+1>>0]|0;f[d+2>>0]=f[b+2>>0]|0;a=zs(e,d,r+(i*3|0)|0,a)|0;r=a+i|0;if((r|0)==(t[h>>2]|0)){b=a;c=u;return b|0}d=(t[e+4572>>2]|0)+(r*3|0)|0;i=f[d>>0]|0;h=f[d+1>>0]|0;d=f[d+2>>0]|0;b=t[s>>2]|0;_=e+4544|0;s=Ds(e,_)|0;k=Ds(e,_)|0;i=i&255;h=h&255;h=(re(h-(o&255)>>31|1,k)|0)+h&255;d=d&255;d=(re(d-(n&255)>>31|1,Ds(e,_)|0)|0)+d&255;b=b+(r*3|0)|0;f[b>>0]=(re(i-(l&255)>>31|1,s)|0)+i;f[b+1>>0]=h;f[b+2>>0]=d;b=e+4568|0;d=t[b>>2]|0;t[b>>2]=(d|0)<1?0:d+-1|0;b=a+1|0;c=u;return b|0}function Bs(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,m=0;m=i>>31;h=(m^i)-m|0;_=e+164+(h*12|0)+10|0;r=n[_>>1]|0;b=e+164+(h*12|0)|0;s=t[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){l=5;while(1)if((r<<l|0)<(s|0))l=l+1|0;else break}else l=4;else l=3;else l=2;else l=1;else l=0;d=e+164+(h*12|0)+8|0;r=(n[d>>1]^m)-m+a|0;if((r&255|0)!=(r|0))r=r>>31&255^255;s=e+112|0;if((t[s>>2]|0)<8)Uf(e);a=e+108|0;o=t[a>>2]|0;u=o>>>24;c=t[2832+(l<<11)+(u<<3)+4>>2]|0;if(!c){s=ka(e)|0;if((s|0)<23){if(l)s=(wa(e,l)|0)+(s<<l)|0}else s=(wa(e,8)|0)+1|0;s=s<<31>>31^s>>1;if((((s|0)>-1?s:0-s|0)|0)>65535){r=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,r|0,5,35648);i=w;w=0;if(i&1){i=je()|0;He(r|0);Qe(i|0)}else bi(r|0,824,96)}}else{t[s>>2]=(t[s>>2]|0)-c;t[a>>2]=o<<c;s=t[2832+(l<<11)+(u<<3)>>2]|0}c=e+164+(h*12|0)+4|0;a=t[c>>2]|0;if(!l){e=n[_>>1]|0;l=e;s=(a<<1)+-1+(e<<16>>16)>>31^s}else l=n[_>>1]|0;o=l<<16>>16==64;e=o&1;u=a+s>>e;o=o?32:l<<16>>16;t[b>>2]=((s|0)>-1?s:0-s|0)+(t[b>>2]|0)>>e;a=o+1|0;n[_>>1]=a;l=a+u|0;if((l|0)<1){_=n[d>>1]|0;n[d>>1]=(_&65535)-(_<<16>>16>-128&1);_=(l|0)>(~o|0)?l:0-o|0;t[c>>2]=_;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&255;return i|0}if((u|0)<=0){_=u;t[c>>2]=_;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&255;return i|0}_=u-a|0;b=n[d>>1]|0;n[d>>1]=(b<<16>>16<127&1)+(b&65535);_=(_|0)>0?0:_;t[c>>2]=_;m=s^m;i=i>>>31;i=r+i|0;i=i+m|0;i=i&255;return i|0}function zs(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;o=e+112|0;u=e+108|0;c=e+4568|0;a=t[o>>2]|0;s=0;while(1){if((a|0)<1){Uf(e);a=t[o>>2]|0}l=t[u>>2]|0;a=a+-1|0;t[o>>2]=a;t[u>>2]=l<<1;if((l|0)>=0){h=8;break}l=t[c>>2]|0;d=1<<t[36476+(l<<2)>>2];b=n-s|0;b=(d|0)<(b|0)?d:b;s=b+s|0;if((b|0)==(d|0))t[c>>2]=(l|0)>30?31:l+1|0;if((s|0)==(n|0)){a=n;break}}if((h|0)==8)if((s|0)!=(n|0)){a=t[c>>2]|0;if((a+-4|0)>>>0<28)a=wa(e,t[36476+(a<<2)>>2]|0)|0;else a=0;a=a+s|0;if((a|0)>(n|0)){a=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,a|0,5,35648);b=w;w=0;if(b&1){b=je()|0;He(a|0);Qe(b|0)}else bi(a|0,824,96)}}else a=n;if((a|0)<=0)return a|0;s=0;do{b=r+(s*3|0)|0;f[b>>0]=f[i>>0]|0;f[b+1>>0]=f[i+1>>0]|0;f[b+2>>0]=f[i+2>>0]|0;s=s+1|0}while((s|0)!=(a|0));return a|0}function Ds(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0;u=i+9|0;r=a[u>>0]|0;l=i+4|0;s=(re(r>>>1,t[l>>2]|0)|0)+(t[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;s=t[36476+(t[e+4568>>2]<<2)>>2]|0;r=ka(e)|0;do{if((r|0)<(22-s|0))if(!n){e=t[l>>2]|0;s=e+r|0;n=s&1;s=(n+s|0)/2|0;o=8;break}else{r=(wa(e,n)|0)+(r<<n)|0;e=t[l>>2]|0;s=r+e|0;c=s&1;n=c;l=1;s=(c+s|0)/2|0;break}else{r=(wa(e,8)|0)+1|0;e=t[l>>2]|0;s=r+e|0;l=s&1;s=(l+s|0)/2|0;if(!n){n=l;o=8}else{n=l;l=1}}}while(0);if((o|0)==8)l=a[i+10>>0]<<1>>>0>=(a[u>>0]|0)>>>0;s=(n|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;f[c>>0]=(a[c>>0]|0)+1}r=(r+1-e>>1)+(t[i>>2]|0)|0;t[i>>2]=r;n=f[u>>0]|0;if(n<<24>>24!=(f[i+8>>0]|0)){c=n;c=c&255;c=c+1|0;c=c&255;f[u>>0]=c;return s|0}t[i>>2]=r>>1;c=(n&255)>>>1;f[u>>0]=c;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;c=c&255;c=c+1|0;c=c&255;f[u>>0]=c;return s|0}function Ns(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;d=c;c=c+128|0;s=d;_=d+116|0;k=d+104|0;o=d+20|0;h=d+16|0;u=d+12|0;b=d+8|0;l=d+4|0;f[_>>0]=f[58887]|0;f[_+1>>0]=f[58888]|0;f[_+2>>0]=f[58889]|0;f[_+3>>0]=f[58890]|0;f[_+4>>0]=f[58891]|0;f[_+5>>0]=f[58892]|0;w_(_+1|0,58893,0,t[r+4>>2]|0);e=Vb()|0;t[s>>2]=a;a=k+(nw(k,12,e,_,s)|0)|0;_=m_(k,a,r)|0;e=sd(r)|0;t[b>>2]=e;w=0;me(3,k|0,_|0,a|0,o|0,h|0,u|0,b|0);a=w;w=0;if(a&1){k=je()|0;bh(e)|0;Qe(k|0)}else{bh(e)|0;t[l>>2]=t[i>>2];_=t[h>>2]|0;k=t[u>>2]|0;t[s>>2]=t[l>>2];k=aw(s,o,_,k,r,n)|0;c=d;return k|0}return 0}function Fs(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0;d=c;c=c+240|0;s=d+8|0;e=d;_=d+204|0;o=d+32|0;h=d+28|0;u=d+24|0;b=d+20|0;l=d+16|0;k=e;t[k>>2]=37;t[k+4>>2]=0;w_(e+1|0,58895,0,t[r+4>>2]|0);k=Vb()|0;m=s;t[m>>2]=n;t[m+4>>2]=a;a=_+(nw(_,23,k,e,s)|0)|0;n=m_(_,a,r)|0;e=sd(r)|0;t[b>>2]=e;w=0;me(3,_|0,n|0,a|0,o|0,h|0,u|0,b|0);a=w;w=0;if(a&1){m=je()|0;bh(e)|0;Qe(m|0)}else{bh(e)|0;t[l>>2]=t[i>>2];k=t[h>>2]|0;m=t[u>>2]|0;t[s>>2]=t[l>>2];m=aw(s,o,k,m,r,f)|0;c=d;return m|0}return 0}function Hs(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=+n;var a=0,s=0,l=0,o=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0;E=c;c=c+352|0;p=E+312|0;_=E+48|0;b=E+32|0;o=E+24|0;a=E+8|0;d=E;m=E+316|0;v=E+80|0;l=E+84|0;A=E+76|0;M=E+72|0;g=E+68|0;y=E+64|0;h=d;t[h>>2]=37;t[h+4>>2]=0;h=A_(d+1|0,58898,t[r+4>>2]|0)|0;t[v>>2]=m;e=Vb()|0;if(h){t[a>>2]=t[r+8>>2];u[a+8>>3]=n;a=nw(m,30,e,d,a)|0}else{u[o>>3]=n;a=nw(m,30,e,d,o)|0}e:do{if((a|0)>29){w=0;e=Me(3)|0;a=w;w=0;a=a&1;if(h){if(!a?(w=0,t[b>>2]=t[r+8>>2],u[b+8>>3]=n,s=Ae(17,v|0,e|0,d|0,b|0)|0,k=w,w=0,!(k&1)):0)S=12}else if(!a?(w=0,t[_>>2]=t[r+8>>2],u[_+8>>3]=n,k=Ae(17,v|0,e|0,d|0,_|0)|0,_=w,w=0,!(_&1)):0){s=k;S=12}do{if((S|0)==12){e=t[v>>2]|0;if(!e){w=0;Se(6);k=w;w=0;if(k&1)break;a=t[v>>2]|0}else a=e;e=a;d=a;S=16;break e}}while(0);e=je()|0}else{e=t[v>>2]|0;d=0;s=a;S=16}}while(0);if((S|0)==16){o=e+s|0;h=m_(e,o,r)|0;do{if((e|0)==(m|0)){e=m;a=0;S=22}else{s=Pc(s<<3)|0;if(!s){w=0;Se(6);S=w;w=0;if(S&1){a=0;S=20;break}e=t[v>>2]|0}a=s;l=s;S=22}}while(0);do{if((S|0)==22){w=0;s=de(68,r|0)|0;v=w;w=0;if(!(v&1)){t[g>>2]=s;w=0;me(4,e|0,h|0,o|0,l|0,A|0,M|0,g|0);g=w;w=0;if(g&1){e=je()|0;bh(s)|0;break}bh(s)|0;t[y>>2]=t[i>>2];S=t[A>>2]|0;e=t[M>>2]|0;w=0;t[p>>2]=t[y>>2];e=he(40,p|0,l|0,S|0,e|0,r|0,f|0)|0;S=w;w=0;if(!(S&1)){t[i>>2]=e;if(a)Ic(a);if(d)Ic(d);c=E;return e|0}else S=20}else S=20}}while(0);if((S|0)==20)e=je()|0;if(a)Ic(a);if(d)Ic(d)}Qe(e|0);return 0}function Us(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0;A=c;c=c+16|0;E=A;M=zu(l,44212)|0;g=zu(l,44368)|0;aM[t[(t[g>>2]|0)+20>>2]&127](E,g);t[s>>2]=n;l=f[e>>0]|0;switch(l<<24>>24){case 43:case 45:{w=0;l=pe(t[(t[M>>2]|0)+44>>2]|0,M|0,l|0)|0;y=w;w=0;if(y&1)p=8;else{h=t[s>>2]|0;t[s>>2]=h+4;t[h>>2]=l;h=e+1|0;p=10}break}default:{h=e;p=10}}e:do{if((p|0)==10){y=r;i:do{if((y-h|0)>1?(f[h>>0]|0)==48:0){o=h+1|0;switch(f[o>>0]|0){case 88:case 120:break;default:{p=11;break i}}w=0;l=pe(t[(t[M>>2]|0)+44>>2]|0,M|0,48)|0;v=w;w=0;if(v&1){p=8;break e}v=t[s>>2]|0;t[s>>2]=v+4;t[v>>2]=l;h=h+2|0;w=0;l=pe(t[(t[M>>2]|0)+44>>2]|0,M|0,f[o>>0]|0)|0;v=w;w=0;if(v&1){p=8;break e}v=t[s>>2]|0;t[s>>2]=v+4;t[v>>2]=l;if(h>>>0<r>>>0){l=h;while(1){o=f[l>>0]|0;w=0;u=Me(3)|0;v=w;w=0;if(v&1)break;w=0;o=pe(39,o<<24>>24|0,u|0)|0;v=w;w=0;if(v&1)break;if(!o){v=h;break i}l=l+1|0;if(l>>>0>=r>>>0){v=h;break i}}l=je()|0;break e}else{v=h;l=h}}else p=11}while(0);i:do{if((p|0)==11)if(h>>>0<r>>>0){l=h;while(1){o=f[l>>0]|0;w=0;u=Me(3)|0;v=w;w=0;if(v&1)break;w=0;o=pe(40,o<<24>>24|0,u|0)|0;v=w;w=0;if(v&1)break;if(!o){v=h;break i}l=l+1|0;if(l>>>0>=r>>>0){v=h;break i}}l=je()|0;break e}else{v=h;l=h}}while(0);k=f[E>>0]|0;m=E+4|0;if(((k&1)==0?(k&255)>>>1:t[m>>2]|0)|0){if((v|0)!=(l|0)?(d=l+-1|0,v>>>0<d>>>0):0){u=v;o=d;do{k=f[u>>0]|0;f[u>>0]=f[o>>0]|0;f[o>>0]=k;u=u+1|0;o=o+-1|0}while(u>>>0<o>>>0)}w=0;d=de(t[(t[g>>2]|0)+16>>2]|0,g|0)|0;k=w;w=0;if(k&1){p=8;break}b=E+8|0;_=E+1|0;i:do{if(v>>>0<l>>>0){o=0;u=0;k=v;while(1){h=f[((f[E>>0]&1)==0?_:t[b>>2]|0)+u>>0]|0;if(h<<24>>24>0&(o|0)==(h<<24>>24|0)){o=t[s>>2]|0;t[s>>2]=o+4;t[o>>2]=d;o=f[E>>0]|0;h=0;u=(u>>>0<(((o&1)==0?(o&255)>>>1:t[m>>2]|0)+-1|0)>>>0&1)+u|0}else h=o;w=0;o=pe(t[(t[M>>2]|0)+44>>2]|0,M|0,f[k>>0]|0)|0;S=w;w=0;if(S&1)break;S=t[s>>2]|0;t[s>>2]=S+4;t[S>>2]=o;k=k+1|0;if(k>>>0>=l>>>0)break i;else o=h+1|0}l=je()|0;break e}}while(0);o=n+(v-e<<2)|0;h=t[s>>2]|0;if((o|0)!=(h|0)){u=h+-4|0;if(o>>>0<u>>>0){do{S=t[o>>2]|0;t[o>>2]=t[u>>2];t[u>>2]=S;o=o+4|0;u=u+-4|0}while(o>>>0<u>>>0);d=M;o=h}else{d=M;o=h}}else d=M}else{w=0;Ae(t[(t[M>>2]|0)+48>>2]|0,M|0,v|0,l|0,t[s>>2]|0)|0;S=w;w=0;if(S&1){p=8;break}o=(t[s>>2]|0)+(l-v<<2)|0;t[s>>2]=o;d=M}i:do{if(l>>>0<r>>>0){while(1){o=f[l>>0]|0;if(o<<24>>24==46){u=l;break}w=0;u=pe(t[(t[d>>2]|0)+44>>2]|0,M|0,o|0)|0;S=w;w=0;if(S&1){p=4;break}S=t[s>>2]|0;o=S+4|0;t[s>>2]=o;t[S>>2]=u;l=l+1|0;if(l>>>0>=r>>>0)break i}if((p|0)==4){l=je()|0;break e}w=0;l=de(t[(t[g>>2]|0)+12>>2]|0,g|0)|0;S=w;w=0;if(S&1){p=8;break e}S=t[s>>2]|0;o=S+4|0;t[s>>2]=o;t[S>>2]=l;l=u+1|0}}while(0);w=0;Ae(t[(t[M>>2]|0)+48>>2]|0,M|0,l|0,r|0,o|0)|0;S=w;w=0;if(S&1)p=8;else{S=(t[s>>2]|0)+(y-l<<2)|0;t[s>>2]=S;t[a>>2]=(i|0)==(r|0)?S:n+(i-e<<2)|0;xh(E);c=A;return}}}while(0);if((p|0)==8)l=je()|0;xh(E);Qe(l|0)}function js(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=+n;var a=0,s=0,l=0,o=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0;E=c;c=c+352|0;p=E+304|0;_=E+48|0;b=E+32|0;o=E+24|0;a=E+8|0;d=E;m=E+308|0;v=E+72|0;l=E+76|0;A=E+68|0;M=E+64|0;g=E+60|0;y=E+56|0;h=d;t[h>>2]=37;t[h+4>>2]=0;h=A_(d+1|0,58899,t[r+4>>2]|0)|0;t[v>>2]=m;e=Vb()|0;if(h){t[a>>2]=t[r+8>>2];u[a+8>>3]=n;a=nw(m,30,e,d,a)|0}else{u[o>>3]=n;a=nw(m,30,e,d,o)|0}e:do{if((a|0)>29){w=0;e=Me(3)|0;a=w;w=0;a=a&1;if(h){if(!a?(w=0,t[b>>2]=t[r+8>>2],u[b+8>>3]=n,s=Ae(17,v|0,e|0,d|0,b|0)|0,k=w,w=0,!(k&1)):0)S=12}else if(!a?(w=0,u[_>>3]=n,k=Ae(17,v|0,e|0,d|0,_|0)|0,_=w,w=0,!(_&1)):0){s=k;S=12}do{if((S|0)==12){e=t[v>>2]|0;if(!e){w=0;Se(6);k=w;w=0;if(k&1)break;a=t[v>>2]|0}else a=e;e=a;d=a;S=16;break e}}while(0);e=je()|0}else{e=t[v>>2]|0;d=0;s=a;S=16}}while(0);if((S|0)==16){o=e+s|0;h=m_(e,o,r)|0;do{if((e|0)==(m|0)){e=m;a=0;S=22}else{s=Pc(s<<3)|0;if(!s){w=0;Se(6);S=w;w=0;if(S&1){a=0;S=20;break}e=t[v>>2]|0}a=s;l=s;S=22}}while(0);do{if((S|0)==22){w=0;s=de(68,r|0)|0;v=w;w=0;if(!(v&1)){t[g>>2]=s;w=0;me(4,e|0,h|0,o|0,l|0,A|0,M|0,g|0);g=w;w=0;if(g&1){e=je()|0;bh(s)|0;break}bh(s)|0;t[y>>2]=t[i>>2];S=t[A>>2]|0;e=t[M>>2]|0;w=0;t[p>>2]=t[y>>2];e=he(40,p|0,l|0,S|0,e|0,r|0,f|0)|0;S=w;w=0;if(!(S&1)){t[i>>2]=e;if(a)Ic(a);if(d)Ic(d);c=E;return e|0}else S=20}else S=20}}while(0);if((S|0)==20)e=je()|0;if(a)Ic(a);if(d)Ic(d)}Qe(e|0);return 0}function Ys(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;_=c;c=c+192|0;u=_;e=_+180|0;d=_+160|0;b=_+12|0;o=_+8|0;h=_+4|0;f[e>>0]=f[58901]|0;f[e+1>>0]=f[58902]|0;f[e+2>>0]=f[58903]|0;f[e+3>>0]=f[58904]|0;f[e+4>>0]=f[58905]|0;f[e+5>>0]=f[58906]|0;s=Vb()|0;t[u>>2]=a;e=nw(d,20,s,e,u)|0;a=d+e|0;s=m_(d,a,r)|0;l=sd(r)|0;t[o>>2]=l;w=0;o=pe(37,o|0,44212)|0;k=w;w=0;if(k&1){k=je()|0;bh(l)|0;Qe(k|0)}else{bh(l)|0;vM[t[(t[o>>2]|0)+48>>2]&31](o,d,a,b)|0;k=b+(e<<2)|0;t[h>>2]=t[i>>2];t[u>>2]=t[h>>2];k=aw(u,b,(s|0)==(a|0)?k:b+(s-d<<2)|0,k,r,n)|0;c=_;return k|0}return 0}function qs(e,i,r,s,l,o,u,h){e=e|0;i=i|0;r=r|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;var d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0;R=c;c=c+32|0;y=R+16|0;g=R+12|0;E=R+8|0;M=R+4|0;A=R;d=sd(s)|0;t[E>>2]=d;w=0;E=pe(37,E|0,44220)|0;p=w;w=0;if(p&1){R=je()|0;bh(d)|0;Qe(R|0)}bh(d)|0;t[l>>2]=0;p=E+8|0;d=t[i>>2]|0;e:do{if((u|0)!=(h|0)){i:while(1){b=d;if(d){if((t[d+12>>2]|0)==(t[d+16>>2]|0)?(lM[t[(t[d>>2]|0)+36>>2]&127](d)|0)==-1:0){t[i>>2]=0;d=0;b=0}}else d=0;m=(d|0)==0;k=t[r>>2]|0;_=k;do{if(k){if((t[k+12>>2]|0)==(t[k+16>>2]|0)?(lM[t[(t[k>>2]|0)+36>>2]&127](k)|0)==-1:0){t[r>>2]=0;_=0;T=12;break}if(!m){T=13;break i}}else T=12}while(0);if((T|0)==12){T=0;if(m){T=13;break}else k=0}r:do{if((uM[t[(t[E>>2]|0)+36>>2]&63](E,f[u>>0]|0,0)|0)<<24>>24==37){k=u+1|0;if((k|0)==(h|0)){T=17;break i}v=uM[t[(t[E>>2]|0)+36>>2]&63](E,f[k>>0]|0,0)|0;switch(v<<24>>24){case 48:case 69:{m=u+2|0;if((m|0)==(h|0)){T=20;break i}u=k;k=uM[t[(t[E>>2]|0)+36>>2]&63](E,f[m>>0]|0,0)|0;d=v;break}default:{k=v;d=0}}v=t[(t[e>>2]|0)+36>>2]|0;t[M>>2]=b;t[A>>2]=_;t[g>>2]=t[M>>2];t[y>>2]=t[A>>2];t[i>>2]=yM[v&15](e,g,y,s,l,o,k,d)|0;u=u+2|0}else{b=f[u>>0]|0;if(b<<24>>24>-1?(S=t[p>>2]|0,(n[S+(b<<24>>24<<1)>>1]&8192)!=0):0){do{u=u+1|0;if((u|0)==(h|0)){u=h;break}b=f[u>>0]|0;if(b<<24>>24<=-1)break}while((n[S+(b<<24>>24<<1)>>1]&8192)!=0);b=k;while(1){if(d){if((t[d+12>>2]|0)==(t[d+16>>2]|0)?(lM[t[(t[d>>2]|0)+36>>2]&127](d)|0)==-1:0){t[i>>2]=0;d=0}}else d=0;_=(d|0)==0;do{if(k){if((t[k+12>>2]|0)!=(t[k+16>>2]|0))if(_){v=b;break}else break r;if((lM[t[(t[k>>2]|0)+36>>2]&127](k)|0)!=-1)if(_^(b|0)==0){v=b;k=b;break}else break r;else{t[r>>2]=0;b=0;T=39;break}}else T=39}while(0);if((T|0)==39){T=0;if(_)break r;else{v=b;k=0}}_=d+12|0;b=t[_>>2]|0;m=d+16|0;if((b|0)==(t[m>>2]|0))b=lM[t[(t[d>>2]|0)+36>>2]&127](d)|0;else b=a[b>>0]|0;if((b&255)<<24>>24<=-1)break r;if(!(n[(t[p>>2]|0)+(b<<24>>24<<1)>>1]&8192))break r;b=t[_>>2]|0;if((b|0)==(t[m>>2]|0)){lM[t[(t[d>>2]|0)+40>>2]&127](d)|0;b=v;continue}else{t[_>>2]=b+1;b=v;continue}}}_=d+12|0;b=t[_>>2]|0;k=d+16|0;if((b|0)==(t[k>>2]|0))b=lM[t[(t[d>>2]|0)+36>>2]&127](d)|0;else b=a[b>>0]|0;v=_M[t[(t[E>>2]|0)+12>>2]&63](E,b&255)|0;if(v<<24>>24!=(_M[t[(t[E>>2]|0)+12>>2]&63](E,f[u>>0]|0)|0)<<24>>24){T=57;break i}b=t[_>>2]|0;if((b|0)==(t[k>>2]|0))lM[t[(t[d>>2]|0)+40>>2]&127](d)|0;else t[_>>2]=b+1;u=u+1|0}}while(0);d=t[i>>2]|0;if(!((u|0)!=(h|0)&(t[l>>2]|0)==0))break e}if((T|0)==13){t[l>>2]=4;break}else if((T|0)==17){t[l>>2]=4;break}else if((T|0)==20){t[l>>2]=4;break}else if((T|0)==57){t[l>>2]=4;d=t[i>>2]|0;break}}}while(0);if(d){if((t[d+12>>2]|0)==(t[d+16>>2]|0)?(lM[t[(t[d>>2]|0)+36>>2]&127](d)|0)==-1:0){t[i>>2]=0;d=0}}else d=0;u=(d|0)==0;b=t[r>>2]|0;do{if(b){if((t[b+12>>2]|0)==(t[b+16>>2]|0)?(lM[t[(t[b>>2]|0)+36>>2]&127](b)|0)==-1:0){t[r>>2]=0;T=67;break}if(!u)T=68}else T=67}while(0);if((T|0)==67?u:0)T=68;if((T|0)==68)t[l>>2]=t[l>>2]|2;c=R;return d|0}function $s(e){e=e|0;return}function Vs(e){e=e|0;Bp(e);return}function Xs(e){e=e|0;return 2}function Gs(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=qs(e,o,l,f,n,a,58907,58915)|0;c=s;return e|0}function Ks(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0;l=c;c=c+16|0;o=l+12|0;u=l+8|0;d=l+4|0;h=l;b=e+8|0;b=lM[t[(t[b>>2]|0)+20>>2]&127](b)|0;t[d>>2]=t[i>>2];t[h>>2]=t[r>>2];r=f[b>>0]|0;_=(r&1)==0;i=_?b+1|0:t[b+8>>2]|0;r=i+(_?(r&255)>>>1:t[b+4>>2]|0)|0;t[u>>2]=t[d>>2];t[o>>2]=t[h>>2];e=qs(e,u,o,n,a,s,i,r)|0;c=l;return e|0}function Ws(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u+4|0;o=u;f=sd(f)|0;t[s>>2]=f;w=0;s=pe(37,s|0,44220)|0;h=w;w=0;if(h&1){h=je()|0;bh(f)|0;Qe(h|0)}else{bh(f)|0;t[o>>2]=t[r>>2];t[l>>2]=t[o>>2];Zs(e,a+24|0,i,l,n,s);c=u;return t[i>>2]|0}return 0}function Zs(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0;s=c;c=c+16|0;l=s+4|0;o=s;e=e+8|0;e=lM[t[t[e>>2]>>2]&127](e)|0;t[o>>2]=t[f>>2];t[l>>2]=t[o>>2];r=(Dk(r,l,e,e+168|0,a,n,0)|0)-e|0;if((r|0)<168)t[i>>2]=((r|0)/12|0|0)%7|0;c=s;return}function Js(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u+4|0;o=u;f=sd(f)|0;t[s>>2]=f;w=0;s=pe(37,s|0,44220)|0;h=w;w=0;if(h&1){h=je()|0;bh(f)|0;Qe(h|0)}else{bh(f)|0;t[o>>2]=t[r>>2];t[l>>2]=t[o>>2];Qs(e,a+16|0,i,l,n,s);c=u;return t[i>>2]|0}return 0}function Qs(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0;s=c;c=c+16|0;l=s+4|0;o=s;e=e+8|0;e=lM[t[(t[e>>2]|0)+4>>2]&127](e)|0;t[o>>2]=t[f>>2];t[l>>2]=t[o>>2];r=(Dk(r,l,e,e+288|0,a,n,0)|0)-e|0;if((r|0)<288)t[i>>2]=((r|0)/12|0|0)%12|0;c=s;return}function el(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u+4|0;o=u;f=sd(f)|0;t[s>>2]=f;w=0;s=pe(37,s|0,44220)|0;h=w;w=0;if(h&1){h=je()|0;bh(f)|0;Qe(h|0)}else{bh(f)|0;t[o>>2]=t[r>>2];t[l>>2]=t[o>>2];il(e,a+20|0,i,l,n,s);c=u;return t[i>>2]|0}return 0}function il(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=sw(r,e,n,a,4)|0;if(!(t[n>>2]&4)){if((e|0)<69)e=e+2e3|0;else e=(e+-69|0)>>>0<31?e+1900|0:e;t[i>>2]=e+-1900}c=s;return}function rl(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0,V=0,X=0,G=0;V=c;c=c+144|0;u=V+132|0;o=V+116|0;F=V+128|0;M=V+124|0;L=V+120|0;H=V+112|0;U=V+108|0;j=V+104|0;Y=V+100|0;q=V+96|0;$=V+92|0;h=V+88|0;d=V+84|0;b=V+80|0;_=V+76|0;k=V+72|0;m=V+68|0;v=V+64|0;p=V+60|0;g=V+56|0;y=V+52|0;A=V+48|0;E=V+44|0;S=V+40|0;T=V+36|0;R=V+32|0;C=V+28|0;P=V+24|0;I=V+20|0;O=V+16|0;x=V+12|0;B=V+8|0;z=V+4|0;D=V;t[a>>2]=0;N=sd(n)|0;t[F>>2]=N;w=0;F=pe(37,F|0,44220)|0;G=w;w=0;if(G&1){G=je()|0;bh(N)|0;Qe(G|0)}bh(N)|0;do{switch(l<<24>>24|0){case 65:case 97:{t[M>>2]=t[r>>2];t[u>>2]=t[M>>2];Zs(e,s+24|0,i,u,a,F);X=28;break}case 104:case 66:case 98:{t[L>>2]=t[r>>2];t[u>>2]=t[L>>2];Qs(e,s+16|0,i,u,a,F);X=28;break}case 99:{X=e+8|0;X=lM[t[(t[X>>2]|0)+12>>2]&127](X)|0;t[H>>2]=t[i>>2];t[U>>2]=t[r>>2];l=f[X>>0]|0;r=(l&1)==0;G=r?X+1|0:t[X+8>>2]|0;X=G+(r?(l&255)>>>1:t[X+4>>2]|0)|0;t[o>>2]=t[H>>2];t[u>>2]=t[U>>2];t[i>>2]=qs(e,o,u,n,a,s,G,X)|0;X=28;break}case 101:case 100:{t[j>>2]=t[r>>2];t[u>>2]=t[j>>2];fl(e,s+12|0,i,u,a,F);X=28;break}case 68:{t[Y>>2]=t[i>>2];t[q>>2]=t[r>>2];t[o>>2]=t[Y>>2];t[u>>2]=t[q>>2];t[i>>2]=qs(e,o,u,n,a,s,58915,58923)|0;X=28;break}case 70:{t[$>>2]=t[i>>2];t[h>>2]=t[r>>2];t[o>>2]=t[$>>2];t[u>>2]=t[h>>2];t[i>>2]=qs(e,o,u,n,a,s,58923,58931)|0;X=28;break}case 72:{t[d>>2]=t[r>>2];t[u>>2]=t[d>>2];nl(e,s+8|0,i,u,a,F);X=28;break}case 73:{t[b>>2]=t[r>>2];t[u>>2]=t[b>>2];tl(e,s+8|0,i,u,a,F);X=28;break}case 106:{t[_>>2]=t[r>>2];t[u>>2]=t[_>>2];al(e,s+28|0,i,u,a,F);X=28;break}case 109:{t[k>>2]=t[r>>2];t[u>>2]=t[k>>2];sl(e,s+16|0,i,u,a,F);X=28;break}case 77:{t[m>>2]=t[r>>2];t[u>>2]=t[m>>2];ll(e,s+4|0,i,u,a,F);X=28;break}case 116:case 110:{t[v>>2]=t[r>>2];t[u>>2]=t[v>>2];ol(e,i,u,a,F);X=28;break}case 112:{t[p>>2]=t[r>>2];t[u>>2]=t[p>>2];ul(e,s+8|0,i,u,a,F);X=28;break}case 114:{t[g>>2]=t[i>>2];t[y>>2]=t[r>>2];t[o>>2]=t[g>>2];t[u>>2]=t[y>>2];t[i>>2]=qs(e,o,u,n,a,s,58931,58942)|0;X=28;break}case 82:{t[A>>2]=t[i>>2];t[E>>2]=t[r>>2];t[o>>2]=t[A>>2];t[u>>2]=t[E>>2];t[i>>2]=qs(e,o,u,n,a,s,58942,58947)|0;X=28;break}case 83:{t[S>>2]=t[r>>2];t[u>>2]=t[S>>2];cl(e,s,i,u,a,F);X=28;break}case 84:{t[T>>2]=t[i>>2];t[R>>2]=t[r>>2];t[o>>2]=t[T>>2];t[u>>2]=t[R>>2];t[i>>2]=qs(e,o,u,n,a,s,58947,58955)|0;X=28;break}case 119:{t[C>>2]=t[r>>2];t[u>>2]=t[C>>2];hl(e,s+24|0,i,u,a,F);X=28;break}case 120:{G=t[(t[e>>2]|0)+20>>2]|0;t[P>>2]=t[i>>2];t[I>>2]=t[r>>2];t[o>>2]=t[P>>2];t[u>>2]=t[I>>2];o=sM[G&63](e,o,u,n,a,s)|0;break}case 88:{X=e+8|0;X=lM[t[(t[X>>2]|0)+24>>2]&127](X)|0;t[O>>2]=t[i>>2];t[x>>2]=t[r>>2];l=f[X>>0]|0;r=(l&1)==0;G=r?X+1|0:t[X+8>>2]|0;X=G+(r?(l&255)>>>1:t[X+4>>2]|0)|0;t[o>>2]=t[O>>2];t[u>>2]=t[x>>2];t[i>>2]=qs(e,o,u,n,a,s,G,X)|0;X=28;break}case 121:{t[B>>2]=t[r>>2];t[u>>2]=t[B>>2];il(e,s+20|0,i,u,a,F);X=28;break}case 89:{t[z>>2]=t[r>>2];t[u>>2]=t[z>>2];dl(e,s+20|0,i,u,a,F);X=28;break}case 37:{t[D>>2]=t[r>>2];t[u>>2]=t[D>>2];bl(e,i,u,a,F);X=28;break}default:{t[a>>2]=t[a>>2]|4;X=28}}}while(0);if((X|0)==28)o=t[i>>2]|0;c=V;return o|0}function fl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=sw(r,e,n,a,2)|0;r=t[n>>2]|0;if((e+-1|0)>>>0<31&(r&4|0)==0)t[i>>2]=e;else t[n>>2]=r|4;c=s;return}function nl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=sw(r,e,n,a,2)|0;r=t[n>>2]|0;if((e|0)<24&(r&4|0)==0)t[i>>2]=e;else t[n>>2]=r|4;c=s;return}function tl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=sw(r,e,n,a,2)|0;r=t[n>>2]|0;if((e+-1|0)>>>0<12&(r&4|0)==0)t[i>>2]=e;else t[n>>2]=r|4;c=s;return}function al(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=sw(r,e,n,a,3)|0;r=t[n>>2]|0;if((e|0)<366&(r&4|0)==0)t[i>>2]=e;else t[n>>2]=r|4;c=s;return}function sl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=sw(r,e,n,a,2)|0;r=t[n>>2]|0;if((e|0)<13&(r&4|0)==0)t[i>>2]=e+-1;else t[n>>2]=r|4;c=s;return}function ll(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=sw(r,e,n,a,2)|0;r=t[n>>2]|0;if((e|0)<60&(r&4|0)==0)t[i>>2]=e;else t[n>>2]=r|4;c=s;return}function ol(e,i,r,f,s){e=e|0;i=i|0;r=r|0;f=f|0;s=s|0;var l=0,o=0,u=0;o=s+8|0;e:while(1){s=t[i>>2]|0;do{if(s){if((t[s+12>>2]|0)==(t[s+16>>2]|0))if((lM[t[(t[s>>2]|0)+36>>2]&127](s)|0)==-1){t[i>>2]=0;s=0;break}else{s=t[i>>2]|0;break}}else s=0}while(0);s=(s|0)==0;e=t[r>>2]|0;do{if(e){if((t[e+12>>2]|0)!=(t[e+16>>2]|0))if(s)break;else break e;if((lM[t[(t[e>>2]|0)+36>>2]&127](e)|0)!=-1)if(s)break;else break e;else{t[r>>2]=0;u=12;break}}else u=12}while(0);if((u|0)==12){u=0;if(s){e=0;break}else e=0}s=t[i>>2]|0;l=t[s+12>>2]|0;if((l|0)==(t[s+16>>2]|0))s=lM[t[(t[s>>2]|0)+36>>2]&127](s)|0;else s=a[l>>0]|0;if((s&255)<<24>>24<=-1)break;if(!(n[(t[o>>2]|0)+(s<<24>>24<<1)>>1]&8192))break;s=t[i>>2]|0;e=s+12|0;l=t[e>>2]|0;if((l|0)==(t[s+16>>2]|0)){lM[t[(t[s>>2]|0)+40>>2]&127](s)|0;continue}else{t[e>>2]=l+1;continue}}s=t[i>>2]|0;do{if(s){if((t[s+12>>2]|0)==(t[s+16>>2]|0))if((lM[t[(t[s>>2]|0)+36>>2]&127](s)|0)==-1){t[i>>2]=0;s=0;break}else{s=t[i>>2]|0;break}}else s=0}while(0);s=(s|0)==0;do{if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)?(lM[t[(t[e>>2]|0)+36>>2]&127](e)|0)==-1:0){t[r>>2]=0;u=32;break}if(!s)u=33}else u=32}while(0);if((u|0)==32?s:0)u=33;if((u|0)==33)t[f>>2]=t[f>>2]|2;return}function ul(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0;d=c;c=c+16|0;o=d+4|0;u=d;h=e+8|0;h=lM[t[(t[h>>2]|0)+8>>2]&127](h)|0;e=f[h>>0]|0;if(!(e&1))l=(e&255)>>>1;else l=t[h+4>>2]|0;e=f[h+12>>0]|0;if(!(e&1))e=(e&255)>>>1;else e=t[h+16>>2]|0;do{if((l|0)!=(0-e|0)){t[u>>2]=t[n>>2];t[o>>2]=t[u>>2];e=Dk(r,o,h,h+24|0,s,a,0)|0;l=t[i>>2]|0;if((e|0)==(h|0)&(l|0)==12){t[i>>2]=0;break}if((l|0)<12&(e-h|0)==12)t[i>>2]=l+12}else t[a>>2]=t[a>>2]|4}while(0);c=d;return}function cl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=sw(r,e,n,a,2)|0;r=t[n>>2]|0;if((e|0)<61&(r&4|0)==0)t[i>>2]=e;else t[n>>2]=r|4;c=s;return}function hl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=sw(r,e,n,a,1)|0;r=t[n>>2]|0;if((e|0)<7&(r&4|0)==0)t[i>>2]=e;else t[n>>2]=r|4;c=s;return}function dl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=sw(r,e,n,a,4)|0;if(!(t[n>>2]&4))t[i>>2]=e+-1900;c=s;return}function bl(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var s=0,l=0,o=0;e=t[i>>2]|0;do{if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0))if((lM[t[(t[e>>2]|0)+36>>2]&127](e)|0)==-1){t[i>>2]=0;e=0;break}else{e=t[i>>2]|0;break}}else e=0}while(0);s=(e|0)==0;e=t[r>>2]|0;do{if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)?(lM[t[(t[e>>2]|0)+36>>2]&127](e)|0)==-1:0){t[r>>2]=0;o=11;break}if(s){l=e;o=13}else o=12}else o=11}while(0);if((o|0)==11)if(s)o=12;else{l=0;o=13}e:do{if((o|0)==12)t[f>>2]=t[f>>2]|6;else if((o|0)==13){e=t[i>>2]|0;s=t[e+12>>2]|0;if((s|0)==(t[e+16>>2]|0))e=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;else e=a[s>>0]|0;if((uM[t[(t[n>>2]|0)+36>>2]&63](n,e&255,0)|0)<<24>>24!=37){t[f>>2]=t[f>>2]|4;break}e=t[i>>2]|0;s=e+12|0;n=t[s>>2]|0;if((n|0)==(t[e+16>>2]|0)){lM[t[(t[e>>2]|0)+40>>2]&127](e)|0;e=t[i>>2]|0;if(!e)e=0;else o=21}else{t[s>>2]=n+1;o=21}do{if((o|0)==21)if((t[e+12>>2]|0)==(t[e+16>>2]|0))if((lM[t[(t[e>>2]|0)+36>>2]&127](e)|0)==-1){t[i>>2]=0;e=0;break}else{e=t[i>>2]|0;break}}while(0);e=(e|0)==0;do{if(l){if((t[l+12>>2]|0)==(t[l+16>>2]|0)?(lM[t[(t[l>>2]|0)+36>>2]&127](l)|0)==-1:0){t[r>>2]=0;o=30;break}if(e)break e}else o=30}while(0);if((o|0)==30?!e:0)break;t[f>>2]=t[f>>2]|2}}while(0);return}function _l(e,i,r,f,n,a,s,l){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0;M=c;c=c+32|0;m=M+16|0;k=M+12|0;g=M+8|0;v=M+4|0;p=M;o=sd(f)|0;t[g>>2]=o;w=0;g=pe(37,g|0,44212)|0;_=w;w=0;if(_&1){M=je()|0;bh(o)|0;Qe(M|0)}bh(o)|0;t[n>>2]=0;o=t[i>>2]|0;e:do{if((s|0)!=(l|0)){i:while(1){h=o;if(o){u=t[o+12>>2]|0;if((u|0)==(t[o+16>>2]|0))u=lM[t[(t[o>>2]|0)+36>>2]&127](o)|0;else u=t[u>>2]|0;if((u|0)==-1){t[i>>2]=0;o=0;b=1;_=0}else{b=0;_=h}}else{o=0;b=1;_=h}d=t[r>>2]|0;u=d;do{if(d){h=t[d+12>>2]|0;if((h|0)==(t[d+16>>2]|0))h=lM[t[(t[d>>2]|0)+36>>2]&127](d)|0;else h=t[h>>2]|0;if((h|0)!=-1)if(b)break;else{y=17;break i}else{t[r>>2]=0;u=0;y=15;break}}else y=15}while(0);if((y|0)==15){y=0;if(b){y=17;break}else d=0}r:do{if((uM[t[(t[g>>2]|0)+52>>2]&63](g,t[s>>2]|0,0)|0)<<24>>24==37){h=s+4|0;if((h|0)==(l|0)){y=21;break i}b=uM[t[(t[g>>2]|0)+52>>2]&63](g,t[h>>2]|0,0)|0;switch(b<<24>>24){case 48:case 69:{d=s+8|0;if((d|0)==(l|0)){y=24;break i}s=h;h=uM[t[(t[g>>2]|0)+52>>2]&63](g,t[d>>2]|0,0)|0;o=b;break}default:{h=b;o=0}}b=t[(t[e>>2]|0)+36>>2]|0;t[v>>2]=_;t[p>>2]=u;t[k>>2]=t[v>>2];t[m>>2]=t[p>>2];t[i>>2]=yM[b&15](e,k,m,f,n,a,h,o)|0;s=s+8|0}else{if(!(uM[t[(t[g>>2]|0)+12>>2]&63](g,8192,t[s>>2]|0)|0)){h=o+12|0;u=t[h>>2]|0;d=o+16|0;if((u|0)==(t[d>>2]|0))u=lM[t[(t[o>>2]|0)+36>>2]&127](o)|0;else u=t[u>>2]|0;_=_M[t[(t[g>>2]|0)+28>>2]&63](g,u)|0;if((_|0)!=(_M[t[(t[g>>2]|0)+28>>2]&63](g,t[s>>2]|0)|0)){y=61;break i}u=t[h>>2]|0;if((u|0)==(t[d>>2]|0))lM[t[(t[o>>2]|0)+40>>2]&127](o)|0;else t[h>>2]=u+4;s=s+4|0;break}do{s=s+4|0;if((s|0)==(l|0)){s=l;break}}while(uM[t[(t[g>>2]|0)+12>>2]&63](g,8192,t[s>>2]|0)|0);u=d;b=d;while(1){if(o){h=t[o+12>>2]|0;if((h|0)==(t[o+16>>2]|0))h=lM[t[(t[o>>2]|0)+36>>2]&127](o)|0;else h=t[h>>2]|0;if((h|0)==-1){t[i>>2]=0;d=1;o=0}else d=0}else{d=1;o=0}do{if(b){h=t[b+12>>2]|0;if((h|0)==(t[b+16>>2]|0))h=lM[t[(t[b>>2]|0)+36>>2]&127](b)|0;else h=t[h>>2]|0;if((h|0)!=-1)if(d^(u|0)==0){_=u;b=u;break}else break r;else{t[r>>2]=0;u=0;y=44;break}}else y=44}while(0);if((y|0)==44){y=0;if(d)break r;else{_=u;b=0}}h=o+12|0;u=t[h>>2]|0;d=o+16|0;if((u|0)==(t[d>>2]|0))u=lM[t[(t[o>>2]|0)+36>>2]&127](o)|0;else u=t[u>>2]|0;if(!(uM[t[(t[g>>2]|0)+12>>2]&63](g,8192,u)|0))break r;u=t[h>>2]|0;if((u|0)==(t[d>>2]|0)){lM[t[(t[o>>2]|0)+40>>2]&127](o)|0;u=_;continue}else{t[h>>2]=u+4;u=_;continue}}}}while(0);o=t[i>>2]|0;if(!((s|0)!=(l|0)&(t[n>>2]|0)==0))break e}if((y|0)==17){t[n>>2]=4;break}else if((y|0)==21){t[n>>2]=4;break}else if((y|0)==24){t[n>>2]=4;break}else if((y|0)==61){t[n>>2]=4;o=t[i>>2]|0;break}}}while(0);if(o){s=t[o+12>>2]|0;if((s|0)==(t[o+16>>2]|0))s=lM[t[(t[o>>2]|0)+36>>2]&127](o)|0;else s=t[s>>2]|0;if((s|0)==-1){t[i>>2]=0;o=0;h=1}else h=0}else{o=0;h=1}s=t[r>>2]|0;do{if(s){u=t[s+12>>2]|0;if((u|0)==(t[s+16>>2]|0))s=lM[t[(t[s>>2]|0)+36>>2]&127](s)|0;else s=t[u>>2]|0;if((s|0)!=-1)if(h)break;else{y=76;break}else{t[r>>2]=0;y=74;break}}else y=74}while(0);if((y|0)==74?h:0)y=76;if((y|0)==76)t[n>>2]=t[n>>2]|2;c=M;return o|0}function kl(e){e=e|0;return}function wl(e){e=e|0;Bp(e);return}function ml(e){e=e|0;return 2}function vl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=_l(e,o,l,f,n,a,44788,44820)|0;c=s;return e|0}function pl(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;l=c;c=c+16|0;o=l+12|0;u=l+8|0;d=l+4|0;h=l;k=e+8|0;k=lM[t[(t[k>>2]|0)+20>>2]&127](k)|0;t[d>>2]=t[i>>2];t[h>>2]=t[r>>2];b=f[k>>0]|0;_=(b&1)==0;r=k+4|0;i=_?r:t[k+8>>2]|0;r=i+((_?(b&255)>>>1:t[r>>2]|0)<<2)|0;t[u>>2]=t[d>>2];t[o>>2]=t[h>>2];e=_l(e,u,o,n,a,s,i,r)|0;c=l;return e|0}function gl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u+4|0;o=u;f=sd(f)|0;t[s>>2]=f;w=0;s=pe(37,s|0,44212)|0;h=w;w=0;if(h&1){h=je()|0;bh(f)|0;Qe(h|0)}else{bh(f)|0;t[o>>2]=t[r>>2];t[l>>2]=t[o>>2];yl(e,a+24|0,i,l,n,s);c=u;return t[i>>2]|0}return 0}function yl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0;s=c;c=c+16|0;l=s+4|0;o=s;e=e+8|0;e=lM[t[t[e>>2]>>2]&127](e)|0;t[o>>2]=t[f>>2];t[l>>2]=t[o>>2];r=(Gk(r,l,e,e+168|0,a,n,0)|0)-e|0;if((r|0)<168)t[i>>2]=((r|0)/12|0|0)%7|0;c=s;return}function Ml(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u+4|0;o=u;f=sd(f)|0;t[s>>2]=f;w=0;s=pe(37,s|0,44212)|0;h=w;w=0;if(h&1){h=je()|0;bh(f)|0;Qe(h|0)}else{bh(f)|0;t[o>>2]=t[r>>2];t[l>>2]=t[o>>2];Al(e,a+16|0,i,l,n,s);c=u;return t[i>>2]|0}return 0}function Al(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0;s=c;c=c+16|0;l=s+4|0;o=s;e=e+8|0;e=lM[t[(t[e>>2]|0)+4>>2]&127](e)|0;t[o>>2]=t[f>>2];t[l>>2]=t[o>>2];r=(Gk(r,l,e,e+288|0,a,n,0)|0)-e|0;if((r|0)<288)t[i>>2]=((r|0)/12|0|0)%12|0;c=s;return}function El(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u+4|0;o=u;f=sd(f)|0;t[s>>2]=f;w=0;s=pe(37,s|0,44212)|0;h=w;w=0;if(h&1){h=je()|0;bh(f)|0;Qe(h|0)}else{bh(f)|0;t[o>>2]=t[r>>2];t[l>>2]=t[o>>2];Sl(e,a+20|0,i,l,n,s);c=u;return t[i>>2]|0}return 0}function Sl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=lw(r,e,n,a,4)|0;if(!(t[n>>2]&4)){if((e|0)<69)e=e+2e3|0;else e=(e+-69|0)>>>0<31?e+1900|0:e;t[i>>2]=e+-1900}c=s;return}function Tl(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0,V=0,X=0,G=0;V=c;c=c+144|0;u=V+132|0;o=V+116|0;F=V+128|0;M=V+124|0;L=V+120|0;H=V+112|0;U=V+108|0;j=V+104|0;Y=V+100|0;q=V+96|0;$=V+92|0;h=V+88|0;d=V+84|0;b=V+80|0;_=V+76|0;k=V+72|0;m=V+68|0;v=V+64|0;p=V+60|0;g=V+56|0;y=V+52|0;A=V+48|0;E=V+44|0;S=V+40|0;T=V+36|0;R=V+32|0;C=V+28|0;P=V+24|0;I=V+20|0;O=V+16|0;x=V+12|0;B=V+8|0;z=V+4|0;D=V;t[a>>2]=0;N=sd(n)|0;t[F>>2]=N;w=0;F=pe(37,F|0,44212)|0;G=w;w=0;if(G&1){G=je()|0;bh(N)|0;Qe(G|0)}bh(N)|0;do{switch(l<<24>>24|0){case 65:case 97:{t[M>>2]=t[r>>2];t[u>>2]=t[M>>2];yl(e,s+24|0,i,u,a,F);X=28;break}case 104:case 66:case 98:{t[L>>2]=t[r>>2];t[u>>2]=t[L>>2];Al(e,s+16|0,i,u,a,F);X=28;break}case 99:{G=e+8|0;G=lM[t[(t[G>>2]|0)+12>>2]&127](G)|0;t[H>>2]=t[i>>2];t[U>>2]=t[r>>2];l=f[G>>0]|0;r=(l&1)==0;X=G+4|0;G=r?X:t[G+8>>2]|0;X=G+((r?(l&255)>>>1:t[X>>2]|0)<<2)|0;t[o>>2]=t[H>>2];t[u>>2]=t[U>>2];t[i>>2]=_l(e,o,u,n,a,s,G,X)|0;X=28;break}case 101:case 100:{t[j>>2]=t[r>>2];t[u>>2]=t[j>>2];Rl(e,s+12|0,i,u,a,F);X=28;break}case 68:{t[Y>>2]=t[i>>2];t[q>>2]=t[r>>2];t[o>>2]=t[Y>>2];t[u>>2]=t[q>>2];t[i>>2]=_l(e,o,u,n,a,s,44820,44852)|0;X=28;break}case 70:{t[$>>2]=t[i>>2];t[h>>2]=t[r>>2];t[o>>2]=t[$>>2];t[u>>2]=t[h>>2];t[i>>2]=_l(e,o,u,n,a,s,44852,44884)|0;X=28;break}case 72:{t[d>>2]=t[r>>2];t[u>>2]=t[d>>2];Cl(e,s+8|0,i,u,a,F);X=28;break}case 73:{t[b>>2]=t[r>>2];t[u>>2]=t[b>>2];Pl(e,s+8|0,i,u,a,F);X=28;break}case 106:{t[_>>2]=t[r>>2];t[u>>2]=t[_>>2];Il(e,s+28|0,i,u,a,F);X=28;break}case 109:{t[k>>2]=t[r>>2];t[u>>2]=t[k>>2];Ol(e,s+16|0,i,u,a,F);X=28;break}case 77:{t[m>>2]=t[r>>2];t[u>>2]=t[m>>2];xl(e,s+4|0,i,u,a,F);X=28;break}case 116:case 110:{t[v>>2]=t[r>>2];t[u>>2]=t[v>>2];Ll(e,i,u,a,F);X=28;break}case 112:{t[p>>2]=t[r>>2];t[u>>2]=t[p>>2];Bl(e,s+8|0,i,u,a,F);X=28;break}case 114:{t[g>>2]=t[i>>2];t[y>>2]=t[r>>2];t[o>>2]=t[g>>2];t[u>>2]=t[y>>2];t[i>>2]=_l(e,o,u,n,a,s,44884,44928)|0;X=28;break}case 82:{t[A>>2]=t[i>>2];t[E>>2]=t[r>>2];t[o>>2]=t[A>>2];t[u>>2]=t[E>>2];t[i>>2]=_l(e,o,u,n,a,s,44928,44948)|0;X=28;break}case 83:{t[S>>2]=t[r>>2];t[u>>2]=t[S>>2];zl(e,s,i,u,a,F);X=28;break}case 84:{t[T>>2]=t[i>>2];t[R>>2]=t[r>>2];t[o>>2]=t[T>>2];t[u>>2]=t[R>>2];t[i>>2]=_l(e,o,u,n,a,s,44948,44980)|0;X=28;break}case 119:{t[C>>2]=t[r>>2];t[u>>2]=t[C>>2];Dl(e,s+24|0,i,u,a,F);X=28;break}case 120:{G=t[(t[e>>2]|0)+20>>2]|0;t[P>>2]=t[i>>2];t[I>>2]=t[r>>2];t[o>>2]=t[P>>2];t[u>>2]=t[I>>2];o=sM[G&63](e,o,u,n,a,s)|0;break}case 88:{G=e+8|0;G=lM[t[(t[G>>2]|0)+24>>2]&127](G)|0;t[O>>2]=t[i>>2];t[x>>2]=t[r>>2];l=f[G>>0]|0;r=(l&1)==0;X=G+4|0;G=r?X:t[G+8>>2]|0;X=G+((r?(l&255)>>>1:t[X>>2]|0)<<2)|0;t[o>>2]=t[O>>2];t[u>>2]=t[x>>2];t[i>>2]=_l(e,o,u,n,a,s,G,X)|0;X=28;break}case 121:{t[B>>2]=t[r>>2];t[u>>2]=t[B>>2];Sl(e,s+20|0,i,u,a,F);X=28;break}case 89:{t[z>>2]=t[r>>2];t[u>>2]=t[z>>2];Nl(e,s+20|0,i,u,a,F);X=28;break}case 37:{t[D>>2]=t[r>>2];t[u>>2]=t[D>>2];Fl(e,i,u,a,F);X=28;break}default:{t[a>>2]=t[a>>2]|4;X=28}}}while(0);if((X|0)==28)o=t[i>>2]|0;c=V;return o|0}function Rl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=lw(r,e,n,a,2)|0;r=t[n>>2]|0;if((e+-1|0)>>>0<31&(r&4|0)==0)t[i>>2]=e;else t[n>>2]=r|4;c=s;return}function Cl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=lw(r,e,n,a,2)|0;r=t[n>>2]|0;if((e|0)<24&(r&4|0)==0)t[i>>2]=e;else t[n>>2]=r|4;c=s;return}function Pl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=lw(r,e,n,a,2)|0;r=t[n>>2]|0;if((e+-1|0)>>>0<12&(r&4|0)==0)t[i>>2]=e;else t[n>>2]=r|4;c=s;return}function Il(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=lw(r,e,n,a,3)|0;r=t[n>>2]|0;if((e|0)<366&(r&4|0)==0)t[i>>2]=e;else t[n>>2]=r|4;c=s;return}function Ol(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=lw(r,e,n,a,2)|0;r=t[n>>2]|0;if((e|0)<13&(r&4|0)==0)t[i>>2]=e+-1;else t[n>>2]=r|4;c=s;return}function xl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=lw(r,e,n,a,2)|0;r=t[n>>2]|0;if((e|0)<60&(r&4|0)==0)t[i>>2]=e;else t[n>>2]=r|4;c=s;return}function Ll(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0;e:while(1){e=t[i>>2]|0;do{if(e){a=t[e+12>>2]|0;if((a|0)==(t[e+16>>2]|0))e=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;else e=t[a>>2]|0;if((e|0)==-1){t[i>>2]=0;s=1;break}else{s=(t[i>>2]|0)==0;break}}else s=1}while(0);a=t[r>>2]|0;do{if(a){e=t[a+12>>2]|0;if((e|0)==(t[a+16>>2]|0))e=lM[t[(t[a>>2]|0)+36>>2]&127](a)|0;else e=t[e>>2]|0;if((e|0)!=-1)if(s){s=a;break}else{s=a;break e}else{t[r>>2]=0;l=15;break}}else l=15}while(0);if((l|0)==15){l=0;if(s){s=0;break}else s=0}e=t[i>>2]|0;a=t[e+12>>2]|0;if((a|0)==(t[e+16>>2]|0))e=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;else e=t[a>>2]|0;if(!(uM[t[(t[n>>2]|0)+12>>2]&63](n,8192,e)|0))break;e=t[i>>2]|0;a=e+12|0;s=t[a>>2]|0;if((s|0)==(t[e+16>>2]|0)){lM[t[(t[e>>2]|0)+40>>2]&127](e)|0;continue}else{t[a>>2]=s+4;continue}}e=t[i>>2]|0;do{if(e){a=t[e+12>>2]|0;if((a|0)==(t[e+16>>2]|0))e=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;else e=t[a>>2]|0;if((e|0)==-1){t[i>>2]=0;a=1;break}else{a=(t[i>>2]|0)==0;break}}else a=1}while(0);do{if(s){e=t[s+12>>2]|0;if((e|0)==(t[s+16>>2]|0))e=lM[t[(t[s>>2]|0)+36>>2]&127](s)|0;else e=t[e>>2]|0;if((e|0)!=-1)if(a)break;else{l=39;break}else{t[r>>2]=0;l=37;break}}else l=37}while(0);if((l|0)==37?a:0)l=39;if((l|0)==39)t[f>>2]=t[f>>2]|2;return}function Bl(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0;d=c;c=c+16|0;o=d+4|0;u=d;h=e+8|0;h=lM[t[(t[h>>2]|0)+8>>2]&127](h)|0;e=f[h>>0]|0;if(!(e&1))l=(e&255)>>>1;else l=t[h+4>>2]|0;e=f[h+12>>0]|0;if(!(e&1))e=(e&255)>>>1;else e=t[h+16>>2]|0;do{if((l|0)!=(0-e|0)){t[u>>2]=t[n>>2];t[o>>2]=t[u>>2];e=Gk(r,o,h,h+24|0,s,a,0)|0;l=t[i>>2]|0;if((e|0)==(h|0)&(l|0)==12){t[i>>2]=0;break}if((l|0)<12&(e-h|0)==12)t[i>>2]=l+12}else t[a>>2]=t[a>>2]|4}while(0);c=d;return}function zl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=lw(r,e,n,a,2)|0;r=t[n>>2]|0;if((e|0)<61&(r&4|0)==0)t[i>>2]=e;else t[n>>2]=r|4;c=s;return}function Dl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=lw(r,e,n,a,1)|0;r=t[n>>2]|0;if((e|0)<7&(r&4|0)==0)t[i>>2]=e;else t[n>>2]=r|4;c=s;return}function Nl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;s=c;c=c+16|0;e=s+4|0;l=s;t[l>>2]=t[f>>2];t[e>>2]=t[l>>2];e=lw(r,e,n,a,4)|0;if(!(t[n>>2]&4))t[i>>2]=e+-1900;c=s;return}function Fl(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0,o=0;e=t[i>>2]|0;do{if(e){a=t[e+12>>2]|0;if((a|0)==(t[e+16>>2]|0))e=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;else e=t[a>>2]|0;if((e|0)==-1){t[i>>2]=0;s=1;break}else{s=(t[i>>2]|0)==0;break}}else s=1}while(0);a=t[r>>2]|0;do{if(a){e=t[a+12>>2]|0;if((e|0)==(t[a+16>>2]|0))e=lM[t[(t[a>>2]|0)+36>>2]&127](a)|0;else e=t[e>>2]|0;if((e|0)!=-1)if(s){l=a;o=17;break}else{o=16;break}else{t[r>>2]=0;o=14;break}}else o=14}while(0);if((o|0)==14)if(s)o=16;else{l=0;o=17}e:do{if((o|0)==16)t[f>>2]=t[f>>2]|6;else if((o|0)==17){e=t[i>>2]|0;a=t[e+12>>2]|0;if((a|0)==(t[e+16>>2]|0))e=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;else e=t[a>>2]|0;if((uM[t[(t[n>>2]|0)+52>>2]&63](n,e,0)|0)<<24>>24!=37){t[f>>2]=t[f>>2]|4;break}e=t[i>>2]|0;a=e+12|0;s=t[a>>2]|0;if((s|0)==(t[e+16>>2]|0)){lM[t[(t[e>>2]|0)+40>>2]&127](e)|0;e=t[i>>2]|0;if(!e)a=1;else o=25}else{t[a>>2]=s+4;o=25}do{if((o|0)==25){a=t[e+12>>2]|0;if((a|0)==(t[e+16>>2]|0))e=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;else e=t[a>>2]|0;if((e|0)==-1){t[i>>2]=0;a=1;break}else{a=(t[i>>2]|0)==0;break}}}while(0);do{if(l){e=t[l+12>>2]|0;if((e|0)==(t[l+16>>2]|0))e=lM[t[(t[l>>2]|0)+36>>2]&127](l)|0;else e=t[e>>2]|0;if((e|0)!=-1)if(a)break e;else break;else{t[r>>2]=0;o=37;break}}else o=37}while(0);if((o|0)==37?!a:0)break;t[f>>2]=t[f>>2]|2}}while(0);return}function Hl(e){e=e|0;Ul(e+8|0);return}function Ul(e){e=e|0;var i=0,r=0,f=0;i=t[e>>2]|0;w=0;r=Me(3)|0;f=w;w=0;do{if(!(f&1)){if((i|0)!=(r|0)?(w=0,ue(188,t[e>>2]|0),f=w,w=0,f&1):0)break;return}}while(0);f=je(0)|0;Ni(f)}function jl(e){e=e|0;Ul(e+8|0);Bp(e);return}function Yl(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0;u=c;c=c+112|0;o=u+4|0;r=u;t[r>>2]=o+100;ql(e+8|0,o,r,a,s,l);a=t[r>>2]|0;r=t[i>>2]|0;if((o|0)!=(a|0))do{l=f[o>>0]|0;do{if(r){n=r+24|0;s=t[n>>2]|0;if((s|0)==(t[r+28>>2]|0)){i=(_M[t[(t[r>>2]|0)+52>>2]&63](r,l&255)|0)==-1;r=i?0:r;break}else{t[n>>2]=s+1;f[s>>0]=l;break}}else r=0}while(0);o=o+1|0}while((o|0)!=(a|0));c=u;return r|0}function ql(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0;h=c;c=c+16|0;u=h;f[u>>0]=37;l=u+1|0;f[l>>0]=a;o=u+2|0;f[o>>0]=s;f[u+3>>0]=0;if(s<<24>>24){f[l>>0]=s;f[o>>0]=a}t[r>>2]=i+(Ve(i|0,(t[r>>2]|0)-i|0,u|0,n|0,t[e>>2]|0)|0);c=h;return}function $l(e){e=e|0;Ul(e+8|0);return}function Vl(e){e=e|0;Ul(e+8|0);Bp(e);return}function Xl(e,i,r,f,n,a,s){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;var l=0;l=c;c=c+416|0;f=l+8|0;r=l;t[r>>2]=f+400;Gl(e+8|0,f,r,n,a,s);e=t[r>>2]|0;r=t[i>>2]|0;if((f|0)!=(e|0)){n=f;do{f=t[n>>2]|0;if(!r)r=0;else{a=r+24|0;s=t[a>>2]|0;if((s|0)==(t[r+28>>2]|0))f=_M[t[(t[r>>2]|0)+52>>2]&63](r,f)|0;else{t[a>>2]=s+4;t[s>>2]=f}r=(f|0)==-1?0:r}n=n+4|0}while((n|0)!=(e|0))}c=l;return r|0}function Gl(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+128|0;u=s+16|0;h=s+12|0;l=s;o=s+8|0;t[h>>2]=u+100;ql(e,u,h,f,n,a);n=l;t[n>>2]=0;t[n+4>>2]=0;t[o>>2]=u;n=(t[r>>2]|0)-i>>2;a=Kg(t[e>>2]|0)|0;w=0;n=Ae(18,i|0,o|0,n|0,l|0)|0;e=w;w=0;if(e&1){n=je()|0;if((a|0)!=0?(w=0,de(75,a|0)|0,h=w,w=0,h&1):0){h=je(0)|0;Ni(h)}Qe(n|0)}if((a|0)!=0?(w=0,de(75,a|0)|0,h=w,w=0,h&1):0){h=je(0)|0;Ni(h)}if((n|0)==-1)$o(58955);else{t[r>>2]=i+(n<<2);c=s;return}}function Kl(e){e=e|0;return}function Wl(e){e=e|0;Bp(e);return}function Zl(e){e=e|0;return 127}function Jl(e){e=e|0;return 127}function Ql(e,i){e=e|0;i=i|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}function eo(e,i){e=e|0;i=i|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}function io(e,i){e=e|0;i=i|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}function ro(e,i){e=e|0;i=i|0;Oh(e,1,45);return}function fo(e){e=e|0;return 0}function no(e,i){e=e|0;i=i|0;f[e>>0]=2;f[e+1>>0]=3;f[e+2>>0]=0;f[e+3>>0]=4;return}function to(e,i){e=e|0;i=i|0;f[e>>0]=2;f[e+1>>0]=3;f[e+2>>0]=0;f[e+3>>0]=4;return}function ao(e){e=e|0;return}function so(e){e=e|0;Bp(e);return}function lo(e){e=e|0;return 127}function oo(e){e=e|0;return 127}function uo(e,i){e=e|0;i=i|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}function co(e,i){e=e|0;i=i|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}function ho(e,i){e=e|0;i=i|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}function bo(e,i){e=e|0;i=i|0;Oh(e,1,45);return}function _o(e){e=e|0;return 0}function ko(e,i){e=e|0;i=i|0;f[e>>0]=2;f[e+1>>0]=3;f[e+2>>0]=0;f[e+3>>0]=4;return}function wo(e,i){e=e|0;i=i|0;f[e>>0]=2;f[e+1>>0]=3;f[e+2>>0]=0;f[e+3>>0]=4;return}function mo(e){e=e|0;return}function vo(e){e=e|0;Bp(e);return}function po(e){e=e|0;return 2147483647}function go(e){e=e|0;return 2147483647}function yo(e,i){e=e|0;i=i|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}function Mo(e,i){e=e|0;i=i|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}function Ao(e,i){e=e|0;i=i|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}function Eo(e,i){e=e|0;i=i|0;Vh(e,1,45);return}function So(e){e=e|0;return 0}function To(e,i){e=e|0;i=i|0;f[e>>0]=2;f[e+1>>0]=3;f[e+2>>0]=0;f[e+3>>0]=4;return}function Ro(e,i){e=e|0;i=i|0;f[e>>0]=2;f[e+1>>0]=3;f[e+2>>0]=0;f[e+3>>0]=4;return}function Co(e){e=e|0;return}function Po(e){e=e|0;Bp(e);return}function Io(e){e=e|0;return 2147483647}function Oo(e){e=e|0;return 2147483647}function xo(e,i){e=e|0;i=i|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}function Lo(e,i){e=e|0;i=i|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}function Bo(e,i){e=e|0;i=i|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}function zo(e,i){e=e|0;i=i|0;Vh(e,1,45);return}function Do(e){e=e|0;return 0}function No(e,i){e=e|0;i=i|0;f[e>>0]=2;f[e+1>>0]=3;f[e+2>>0]=0;f[e+3>>0]=4;return}function Fo(e,i){e=e|0;i=i|0;f[e>>0]=2;f[e+1>>0]=3;f[e+2>>0]=0;f[e+3>>0]=4;return}function Ho(e){e=e|0;return}function Uo(e){e=e|0;Bp(e);return}function jo(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0;T=c;c=c+240|0;E=T+24|0;S=T;e=T+136|0;C=T+16|0;A=T+12|0;R=T+8|0;b=T+134|0;u=T+4|0;M=T+124|0;t[C>>2]=e;P=C+4|0;t[P>>2]=189;h=e+100|0;w=0;o=de(68,a|0)|0;y=w;w=0;if(!(y&1)){t[R>>2]=o;w=0;e=pe(37,R|0,44220)|0;y=w;w=0;e:do{if(!(y&1)?(f[b>>0]=0,t[u>>2]=t[r>>2],d=t[a+4>>2]|0,w=0,t[E>>2]=t[u>>2],d=be(1,i|0,E|0,n|0,R|0,d|0,s|0,b|0,e|0,C|0,A|0,h|0)|0,y=w,w=0,!(y&1)):0){i:do{if(d){w=0;Ae(t[(t[e>>2]|0)+32>>2]|0,e|0,58976,58986,M|0)|0;y=w;w=0;if(y&1){O=10;break e}u=t[A>>2]|0;h=t[C>>2]|0;e=u-h|0;if((e|0)>98){e=Pc(e+2|0)|0;o=e;if(!e){w=0;Se(6);y=w;w=0;if(!(y&1)){e=0;O=13}}else O=13}else{o=0;e=E;O=13}do{if((O|0)==13){if(f[b>>0]|0){f[e>>0]=45;e=e+1|0}g=M+10|0;y=M;if(h>>>0<u>>>0){d=M+1|0;n=d+1|0;a=n+1|0;b=a+1|0;_=b+1|0;k=_+1|0;m=k+1|0;v=m+1|0;p=v+1|0;do{u=f[h>>0]|0;do{if((f[M>>0]|0)!=u<<24>>24)if((f[d>>0]|0)!=u<<24>>24)if((f[n>>0]|0)!=u<<24>>24)if((f[a>>0]|0)!=u<<24>>24)if((f[b>>0]|0)==u<<24>>24)u=b;else{if((f[_>>0]|0)==u<<24>>24){u=_;break}if((f[k>>0]|0)==u<<24>>24){u=k;break}if((f[m>>0]|0)==u<<24>>24){u=m;break}if((f[v>>0]|0)==u<<24>>24){u=v;break}u=(f[p>>0]|0)==u<<24>>24?p:g}else u=a;else u=n;else u=d;else u=M}while(0);f[e>>0]=f[58976+(u-y)>>0]|0;h=h+1|0;e=e+1|0}while(h>>>0<(t[A>>2]|0)>>>0)}f[e>>0]=0;t[S>>2]=l;if((Oy(E,58987,S)|0)!=1?(w=0,ue(190,58991),l=w,w=0,l&1):0)break;if(o)Ic(o);break i}}while(0);e=je()|0;if(!o){u=e;o=C;break e}Ic(o);u=e;o=C;break e}}while(0);e=t[i>>2]|0;do{if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;e=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;l=w;w=0;if(l&1){O=10;break e}if((e|0)==-1){t[i>>2]=0;e=0;break}else{e=t[i>>2]|0;break}}}else e=0}while(0);o=(e|0)==0;e=t[r>>2]|0;do{if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;e=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;l=w;w=0;if(l&1){O=10;break e}if((e|0)==-1){t[r>>2]=0;O=37;break}}if(!o)O=38}else O=37}while(0);if((O|0)==37?o:0)O=38;if((O|0)==38)t[s>>2]=t[s>>2]|2;o=t[i>>2]|0;bh(t[R>>2]|0)|0;e=t[C>>2]|0;t[C>>2]=0;if((e|0)!=0?(w=0,ue(t[P>>2]|0,e|0),O=w,w=0,O&1):0){O=je(0)|0;Ni(O)}c=T;return o|0}else O=10}while(0);if((O|0)==10){u=je()|0;o=C}bh(t[R>>2]|0)|0;e=t[o>>2]|0;t[o>>2]=0;if(!e)I=u;else{o=t[P>>2]|0;O=45}}else{u=je()|0;t[C>>2]=0;o=189;O=45}if((O|0)==45){w=0;ue(o|0,e|0);O=w;w=0;if(O&1){O=je(0)|0;Ni(O)}else I=u}Qe(I|0);return 0}function Yo(e){e=e|0;return}function qo(e,i,r,s,l,o,u,h,d,b,_){e=e|0;i=i|0;r=r|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;d=d|0;b=b|0;_=_|0;var k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0,V=0,X=0,G=0,K=0,W=0,Z=0,J=0,Q=0,ee=0,ie=0,re=0,fe=0;ie=c;c=c+512|0;U=ie+88|0;p=ie+96|0;fe=ie+80|0;$=ie+72|0;q=ie+68|0;V=ie+500|0;j=ie+497|0;X=ie+496|0;W=ie+56|0;ee=ie+44|0;J=ie+32|0;Z=ie+20|0;Q=ie+8|0;Y=ie+4|0;K=ie;t[U>>2]=_;t[fe>>2]=p;re=fe+4|0;t[re>>2]=189;t[$>>2]=p;t[q>>2]=p+400;t[W>>2]=0;t[W+4>>2]=0;t[W+8>>2]=0;t[ee>>2]=0;t[ee+4>>2]=0;t[ee+8>>2]=0;t[J>>2]=0;t[J+4>>2]=0;t[J+8>>2]=0;t[Z>>2]=0;t[Z+4>>2]=0;t[Z+8>>2]=0;t[Q>>2]=0;t[Q+4>>2]=0;t[Q+8>>2]=0;w=0;ve(1,r|0,s|0,V|0,j|0,X|0,W|0,ee|0,J|0,Z|0,Y|0);H=w;w=0;e:do{if(H&1)h=je()|0;else{t[b>>2]=t[d>>2];L=h+8|0;B=J+4|0;z=Z+4|0;D=Z+8|0;N=Z+1|0;F=J+8|0;H=J+1|0;E=(l&512|0)!=0;S=ee+8|0;T=ee+1|0;R=ee+4|0;C=Q+4|0;P=Q+8|0;I=Q+1|0;O=V+3|0;x=W+4|0;A=0;v=0;i:while(1){_=t[e>>2]|0;do{if(_){if((t[_+12>>2]|0)==(t[_+16>>2]|0)){w=0;_=de(t[(t[_>>2]|0)+36>>2]|0,_|0)|0;M=w;w=0;if(M&1){G=24;break i}if((_|0)==-1){t[e>>2]=0;_=0;break}else{_=t[e>>2]|0;break}}}else _=0}while(0);_=(_|0)==0;h=t[i>>2]|0;do{if(h){if((t[h+12>>2]|0)!=(t[h+16>>2]|0))if(_){M=h;break}else{G=235;break i}w=0;r=de(t[(t[h>>2]|0)+36>>2]|0,h|0)|0;M=w;w=0;if(M&1){G=24;break i}if((r|0)!=-1)if(_){M=h;break}else{G=235;break i}else{t[i>>2]=0;G=15;break}}else G=15}while(0);if((G|0)==15){G=0;if(_){G=235;break}else M=0}r:do{switch(f[V+A>>0]|0){case 1:{if((A|0)!=3){_=t[e>>2]|0;h=t[_+12>>2]|0;if((h|0)==(t[_+16>>2]|0)){w=0;_=de(t[(t[_>>2]|0)+36>>2]|0,_|0)|0;G=w;w=0;if(G&1){G=24;break i}}else _=a[h>>0]|0;if((_&255)<<24>>24<=-1){G=40;break i}if(!(n[(t[L>>2]|0)+(_<<24>>24<<1)>>1]&8192)){G=40;break i}_=t[e>>2]|0;h=_+12|0;r=t[h>>2]|0;if((r|0)==(t[_+16>>2]|0)){w=0;_=de(t[(t[_>>2]|0)+40>>2]|0,_|0)|0;G=w;w=0;if(G&1){G=24;break i}}else{t[h>>2]=r+1;_=a[r>>0]|0}w=0;ce(67,Q|0,_&255|0);G=w;w=0;if(G&1){G=24;break i}else{_=M;s=M;G=42}}break}case 0:{if((A|0)!=3){_=M;s=M;G=42}break}case 3:{h=f[J>>0]|0;_=(h&1)==0?(h&255)>>>1:t[B>>2]|0;r=f[Z>>0]|0;s=(r&1)==0?(r&255)>>>1:t[z>>2]|0;if((_|0)!=(0-s|0)){if(!_){_=t[e>>2]|0;h=t[_+12>>2]|0;if((h|0)==(t[_+16>>2]|0)){w=0;_=de(t[(t[_>>2]|0)+36>>2]|0,_|0)|0;M=w;w=0;if(M&1){G=24;break i}h=f[Z>>0]|0}else{_=a[h>>0]|0;h=r}if((_&255)<<24>>24!=(f[((h&1)==0?N:t[D>>2]|0)>>0]|0))break r;_=t[e>>2]|0;h=_+12|0;r=t[h>>2]|0;if((r|0)==(t[_+16>>2]|0)){w=0;de(t[(t[_>>2]|0)+40>>2]|0,_|0)|0;M=w;w=0;if(M&1){G=24;break i}}else t[h>>2]=r+1;f[u>>0]=1;M=f[Z>>0]|0;v=((M&1)==0?(M&255)>>>1:t[z>>2]|0)>>>0>1?Z:v;break r}l=t[e>>2]|0;k=t[l+12>>2]|0;r=t[l+16>>2]|0;_=(k|0)==(r|0);if(!s){if(_){w=0;_=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;M=w;w=0;if(M&1){G=24;break i}h=f[J>>0]|0}else _=a[k>>0]|0;if((_&255)<<24>>24!=(f[((h&1)==0?H:t[F>>2]|0)>>0]|0)){f[u>>0]=1;break r}_=t[e>>2]|0;h=_+12|0;r=t[h>>2]|0;if((r|0)==(t[_+16>>2]|0)){w=0;de(t[(t[_>>2]|0)+40>>2]|0,_|0)|0;M=w;w=0;if(M&1){G=24;break i}}else t[h>>2]=r+1;M=f[J>>0]|0;v=((M&1)==0?(M&255)>>>1:t[B>>2]|0)>>>0>1?J:v;break r}if(_){w=0;_=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;M=w;w=0;if(M&1){G=24;break i}r=t[e>>2]|0;h=f[J>>0]|0;l=r;k=t[r+12>>2]|0;r=t[r+16>>2]|0}else _=a[k>>0]|0;s=l+12|0;r=(k|0)==(r|0);if((_&255)<<24>>24==(f[((h&1)==0?H:t[F>>2]|0)>>0]|0)){if(r){w=0;de(t[(t[l>>2]|0)+40>>2]|0,l|0)|0;M=w;w=0;if(M&1){G=24;break i}}else t[s>>2]=k+1;M=f[J>>0]|0;v=((M&1)==0?(M&255)>>>1:t[B>>2]|0)>>>0>1?J:v;break r}if(r){w=0;_=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;M=w;w=0;if(M&1){G=24;break i}}else _=a[k>>0]|0;if((_&255)<<24>>24!=(f[((f[Z>>0]&1)==0?N:t[D>>2]|0)>>0]|0)){G=104;break i}_=t[e>>2]|0;h=_+12|0;r=t[h>>2]|0;if((r|0)==(t[_+16>>2]|0)){w=0;de(t[(t[_>>2]|0)+40>>2]|0,_|0)|0;M=w;w=0;if(M&1){G=24;break i}}else t[h>>2]=r+1;f[u>>0]=1;M=f[Z>>0]|0;v=((M&1)==0?(M&255)>>>1:t[z>>2]|0)>>>0>1?Z:v}break}case 2:{if(!(A>>>0<2|(v|0)!=0)?!(E|(A|0)==2&(f[O>>0]|0)!=0):0){v=0;break r}g=f[ee>>0]|0;_=(g&1)==0;y=t[S>>2]|0;r=_?T:y;m=r;f:do{if((A|0)!=0?(a[V+(A+-1)>>0]|0)<2:0){k=_?(g&255)>>>1:t[R>>2]|0;s=r+k|0;l=t[L>>2]|0;n:do{if(!k)h=m;else{k=r;h=m;do{_=f[k>>0]|0;if(_<<24>>24<=-1)break n;if(!(n[l+(_<<24>>24<<1)>>1]&8192))break n;k=k+1|0;h=k}while((k|0)!=(s|0))}}while(0);s=h-m|0;l=f[Q>>0]|0;_=(l&1)==0;l=_?(l&255)>>>1:t[C>>2]|0;if(l>>>0>=s>>>0){_=_?I:t[P>>2]|0;k=_+l|0;if((h|0)!=(m|0)){_=_+(l-s)|0;while(1){if((f[_>>0]|0)!=(f[r>>0]|0)){h=m;break f}_=_+1|0;if((_|0)==(k|0))break;else r=r+1|0}}}else h=m}else h=m}while(0);_=(g&1)==0;_=(_?T:y)+(_?(g&255)>>>1:t[R>>2]|0)|0;f:do{if((h|0)!=(_|0)){l=M;s=M;_=h;while(1){h=t[e>>2]|0;do{if(h){if((t[h+12>>2]|0)==(t[h+16>>2]|0)){w=0;h=de(t[(t[h>>2]|0)+36>>2]|0,h|0)|0;M=w;w=0;if(M&1){G=21;break i}if((h|0)==-1){t[e>>2]=0;h=0;break}else{h=t[e>>2]|0;break}}}else h=0}while(0);r=(h|0)==0;do{if(s){if((t[s+12>>2]|0)!=(t[s+16>>2]|0))if(r){h=l;k=s;break}else break f;w=0;h=de(t[(t[s>>2]|0)+36>>2]|0,s|0)|0;M=w;w=0;if(M&1){G=21;break i}if((h|0)!=-1)if(r^(l|0)==0){h=l;k=l;break}else break f;else{t[i>>2]=0;h=0;G=131;break}}else{h=l;G=131}}while(0);if((G|0)==131){G=0;if(r)break f;else k=0}r=t[e>>2]|0;s=t[r+12>>2]|0;if((s|0)==(t[r+16>>2]|0)){w=0;r=de(t[(t[r>>2]|0)+36>>2]|0,r|0)|0;M=w;w=0;if(M&1){G=21;break i}}else r=a[s>>0]|0;if((r&255)<<24>>24!=(f[_>>0]|0))break f;r=t[e>>2]|0;s=r+12|0;l=t[s>>2]|0;if((l|0)==(t[r+16>>2]|0)){w=0;de(t[(t[r>>2]|0)+40>>2]|0,r|0)|0;M=w;w=0;if(M&1){G=21;break i}}else t[s>>2]=l+1;_=_+1|0;r=f[ee>>0]|0;M=(r&1)==0;r=(M?T:t[S>>2]|0)+(M?(r&255)>>>1:t[R>>2]|0)|0;if((_|0)==(r|0)){_=r;break}else{l=h;s=k}}}}while(0);if(E?(M=f[ee>>0]|0,y=(M&1)==0,(_|0)!=((y?T:t[S>>2]|0)+(y?(M&255)>>>1:t[R>>2]|0)|0)):0){G=143;break i}break}case 4:{m=f[X>>0]|0;h=M;l=M;_=0;f:while(1){r=t[e>>2]|0;do{if(r){if((t[r+12>>2]|0)==(t[r+16>>2]|0)){w=0;r=de(t[(t[r>>2]|0)+36>>2]|0,r|0)|0;M=w;w=0;if(M&1){G=23;break i}if((r|0)==-1){t[e>>2]=0;r=0;break}else{r=t[e>>2]|0;break}}}else r=0}while(0);s=(r|0)==0;do{if(l){if((t[l+12>>2]|0)!=(t[l+16>>2]|0))if(s){k=h;break}else{s=h;break f}w=0;r=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;M=w;w=0;if(M&1){G=23;break i}if((r|0)!=-1)if(s^(h|0)==0){k=h;l=h;break}else{s=h;break f}else{t[i>>2]=0;h=0;G=156;break}}else G=156}while(0);if((G|0)==156){G=0;if(s){s=h;break}else{k=h;l=0}}h=t[e>>2]|0;r=t[h+12>>2]|0;if((r|0)==(t[h+16>>2]|0)){w=0;h=de(t[(t[h>>2]|0)+36>>2]|0,h|0)|0;M=w;w=0;if(M&1){G=23;break i}}else h=a[r>>0]|0;r=h&255;if(r<<24>>24>-1?(n[(t[L>>2]|0)+(h<<24>>24<<1)>>1]&2048)!=0:0){h=t[b>>2]|0;if((h|0)==(t[U>>2]|0)){w=0;Ee(12,d|0,b|0,U|0);M=w;w=0;if(M&1){G=23;break i}h=t[b>>2]|0}t[b>>2]=h+1;f[h>>0]=r;_=_+1|0}else{M=f[W>>0]|0;if(!(r<<24>>24==m<<24>>24&((_|0)!=0?(((M&1)==0?(M&255)>>>1:t[x>>2]|0)|0)!=0:0))){s=k;break}if((p|0)==(t[q>>2]|0)){w=0;Ee(13,fe|0,$|0,q|0);M=w;w=0;if(M&1){G=23;break i}p=t[$>>2]|0}M=p+4|0;t[$>>2]=M;t[p>>2]=_;p=M;_=0}h=t[e>>2]|0;r=h+12|0;s=t[r>>2]|0;if((s|0)==(t[h+16>>2]|0)){w=0;de(t[(t[h>>2]|0)+40>>2]|0,h|0)|0;M=w;w=0;if(M&1){G=23;break i}else{h=k;continue}}else{t[r>>2]=s+1;h=k;continue}}if((_|0)!=0?(t[fe>>2]|0)!=(p|0):0){if((p|0)==(t[q>>2]|0)){w=0;Ee(13,fe|0,$|0,q|0);M=w;w=0;if(M&1){G=24;break i}p=t[$>>2]|0}M=p+4|0;t[$>>2]=M;t[p>>2]=_;p=M}k=t[Y>>2]|0;if((k|0)>0){_=t[e>>2]|0;do{if(_){if((t[_+12>>2]|0)==(t[_+16>>2]|0)){w=0;_=de(t[(t[_>>2]|0)+36>>2]|0,_|0)|0;M=w;w=0;if(M&1){G=24;break i}if((_|0)==-1){t[e>>2]=0;_=0;break}else{_=t[e>>2]|0;break}}}else _=0}while(0);_=(_|0)==0;do{if(s){if((t[s+12>>2]|0)==(t[s+16>>2]|0)){w=0;h=de(t[(t[s>>2]|0)+36>>2]|0,s|0)|0;M=w;w=0;if(M&1){G=24;break i}if((h|0)==-1){t[i>>2]=0;G=193;break}}if(!_){G=198;break i}}else G=193}while(0);if((G|0)==193){G=0;if(_){G=198;break i}else s=0}_=t[e>>2]|0;h=t[_+12>>2]|0;if((h|0)==(t[_+16>>2]|0)){w=0;_=de(t[(t[_>>2]|0)+36>>2]|0,_|0)|0;M=w;w=0;if(M&1){G=24;break i}}else _=a[h>>0]|0;if((_&255)<<24>>24!=(f[j>>0]|0)){G=198;break i}_=t[e>>2]|0;h=_+12|0;r=t[h>>2]|0;if((r|0)==(t[_+16>>2]|0)){w=0;de(t[(t[_>>2]|0)+40>>2]|0,_|0)|0;M=w;w=0;if(M&1){G=24;break i}}else t[h>>2]=r+1;if((k|0)>0){l=s;r=s;m=k;while(1){_=t[e>>2]|0;do{if(_){if((t[_+12>>2]|0)==(t[_+16>>2]|0)){w=0;_=de(t[(t[_>>2]|0)+36>>2]|0,_|0)|0;M=w;w=0;if(M&1){G=22;break i}if((_|0)==-1){t[e>>2]=0;_=0;break}else{_=t[e>>2]|0;break}}}else _=0}while(0);h=(_|0)==0;do{if(r){if((t[r+12>>2]|0)!=(t[r+16>>2]|0))if(h){_=l;k=r;break}else{G=222;break i}w=0;_=de(t[(t[r>>2]|0)+36>>2]|0,r|0)|0;M=w;w=0;if(M&1){G=22;break i}if((_|0)!=-1)if(h^(l|0)==0){_=l;k=l;break}else{G=222;break i}else{t[i>>2]=0;_=0;G=215;break}}else{_=l;G=215}}while(0);if((G|0)==215){G=0;if(h){G=222;break i}else k=0}h=t[e>>2]|0;r=t[h+12>>2]|0;if((r|0)==(t[h+16>>2]|0)){w=0;h=de(t[(t[h>>2]|0)+36>>2]|0,h|0)|0;M=w;w=0;if(M&1){G=22;break i}}else h=a[r>>0]|0;if((h&255)<<24>>24<=-1){G=222;break i}if(!(n[(t[L>>2]|0)+(h<<24>>24<<1)>>1]&2048)){G=222;break i}if((t[b>>2]|0)==(t[U>>2]|0)?(w=0,Ee(12,d|0,b|0,U|0),M=w,w=0,M&1):0){G=22;break i}h=t[e>>2]|0;r=t[h+12>>2]|0;if((r|0)==(t[h+16>>2]|0)){w=0;h=de(t[(t[h>>2]|0)+36>>2]|0,h|0)|0;M=w;w=0;if(M&1){G=22;break i}}else h=a[r>>0]|0;r=t[b>>2]|0;t[b>>2]=r+1;f[r>>0]=h;h=m;m=m+-1|0;t[Y>>2]=m;r=t[e>>2]|0;s=r+12|0;l=t[s>>2]|0;if((l|0)==(t[r+16>>2]|0)){w=0;de(t[(t[r>>2]|0)+40>>2]|0,r|0)|0;M=w;w=0;if(M&1){G=22;break i}}else t[s>>2]=l+1;if((h|0)<=1)break;else{l=_;r=k}}}}if((t[b>>2]|0)==(t[d>>2]|0)){G=233;break i}break}default:{}}}while(0);r:do{if((G|0)==42)while(1){G=0;h=t[e>>2]|0;do{if(h){if((t[h+12>>2]|0)==(t[h+16>>2]|0)){w=0;h=de(t[(t[h>>2]|0)+36>>2]|0,h|0)|0;M=w;w=0;if(M&1){G=20;break i}if((h|0)==-1){t[e>>2]=0;h=0;break}else{h=t[e>>2]|0;break}}}else h=0}while(0);r=(h|0)==0;do{if(s){if((t[s+12>>2]|0)!=(t[s+16>>2]|0))if(r){l=_;break}else break r;w=0;h=de(t[(t[s>>2]|0)+36>>2]|0,s|0)|0;M=w;w=0;if(M&1){G=20;break i}if((h|0)!=-1)if(r^(_|0)==0){l=_;s=_;break}else break r;else{t[i>>2]=0;_=0;G=54;break}}else G=54}while(0);if((G|0)==54){G=0;if(r)break r;else{l=_;s=0}}_=t[e>>2]|0;h=t[_+12>>2]|0;if((h|0)==(t[_+16>>2]|0)){w=0;_=de(t[(t[_>>2]|0)+36>>2]|0,_|0)|0;M=w;w=0;if(M&1){G=20;break i}}else _=a[h>>0]|0;if((_&255)<<24>>24<=-1)break r;if(!(n[(t[L>>2]|0)+(_<<24>>24<<1)>>1]&8192))break r;_=t[e>>2]|0;h=_+12|0;r=t[h>>2]|0;if((r|0)==(t[_+16>>2]|0)){w=0;_=de(t[(t[_>>2]|0)+40>>2]|0,_|0)|0;G=w;w=0;if(G&1){G=20;break i}}else{t[h>>2]=r+1;_=a[r>>0]|0}w=0;ce(67,Q|0,_&255|0);G=w;w=0;if(G&1){G=20;break i}else{_=l;G=42}}}while(0);A=A+1|0;if(A>>>0>=4){G=235;break}}i:switch(G|0){case 20:{h=je()|0;break e}case 21:{h=je()|0;break e}case 22:{h=je()|0;break e}case 23:{h=je()|0;break e}case 24:{h=je()|0;break e}case 40:{t[o>>2]=t[o>>2]|4;h=0;break}case 104:{t[o>>2]=t[o>>2]|4;h=0;break}case 143:{t[o>>2]=t[o>>2]|4;h=0;break}case 198:{t[o>>2]=t[o>>2]|4;h=0;break}case 222:{t[o>>2]=t[o>>2]|4;h=0;break}case 233:{t[o>>2]=t[o>>2]|4;h=0;break}case 235:{r:do{if(v){l=v+1|0;k=v+8|0;m=v+4|0;r=1;f:while(1){_=f[v>>0]|0;if(!(_&1))_=(_&255)>>>1;else _=t[m>>2]|0;if(r>>>0>=_>>>0)break r;_=t[e>>2]|0;do{if(_){if((t[_+12>>2]|0)==(t[_+16>>2]|0)){w=0;_=de(t[(t[_>>2]|0)+36>>2]|0,_|0)|0;b=w;w=0;if(b&1){G=19;break f}if((_|0)==-1){t[e>>2]=0;_=0;break}else{_=t[e>>2]|0;break}}}else _=0}while(0);h=(_|0)==0;_=t[i>>2]|0;do{if(_){if((t[_+12>>2]|0)==(t[_+16>>2]|0)){w=0;_=de(t[(t[_>>2]|0)+36>>2]|0,_|0)|0;b=w;w=0;if(b&1){G=19;break f}if((_|0)==-1){t[i>>2]=0;G=253;break}}if(!h){G=260;break f}}else G=253}while(0);if((G|0)==253?(G=0,h):0){G=260;break}_=t[e>>2]|0;h=t[_+12>>2]|0;if((h|0)==(t[_+16>>2]|0)){w=0;_=de(t[(t[_>>2]|0)+36>>2]|0,_|0)|0;b=w;w=0;if(b&1){G=19;break}}else _=a[h>>0]|0;if(!(f[v>>0]&1))h=l;else h=t[k>>2]|0;if((_&255)<<24>>24!=(f[h+r>>0]|0)){G=260;break}_=r+1|0;h=t[e>>2]|0;r=h+12|0;s=t[r>>2]|0;if((s|0)==(t[h+16>>2]|0)){w=0;de(t[(t[h>>2]|0)+40>>2]|0,h|0)|0;b=w;w=0;if(b&1){G=19;break}else{r=_;continue}}else{t[r>>2]=s+1;r=_;continue}}if((G|0)==19){h=je()|0;break e}else if((G|0)==260){t[o>>2]=t[o>>2]|4;h=0;break i}}}while(0);_=t[fe>>2]|0;if((_|0)!=(p|0)?(t[K>>2]=0,Go(W,_,p,K),(t[K>>2]|0)!=0):0){t[o>>2]=t[o>>2]|4;h=0}else h=1;break}}xh(Q);xh(Z);xh(J);xh(ee);xh(W);_=t[fe>>2]|0;t[fe>>2]=0;if((_|0)!=0?(w=0,ue(t[re>>2]|0,_|0),fe=w,w=0,fe&1):0){fe=je(0)|0;Ni(fe)}c=ie;return h|0}}while(0);xh(Q);xh(Z);xh(J);xh(ee);xh(W);_=t[fe>>2]|0;t[fe>>2]=0;if((_|0)!=0?(w=0,ue(t[re>>2]|0,_|0),fe=w,w=0,fe&1):0){fe=je(0)|0;Ni(fe)}Qe(h|0);return 0}function $o(e){e=e|0;var i=0;i=Ue(8)|0;w=0;ce(90,i|0,e|0);e=w;w=0;if(e&1){e=je()|0;He(i|0);Qe(e|0)}else bi(i|0,616,80)}function Vo(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0;y=c;c=c+144|0;o=y+24|0;e=y+32|0;M=y+16|0;m=y+8|0;b=y+4|0;_=y+28|0;u=y;t[M>>2]=e;S=M+4|0;t[S>>2]=189;h=e+100|0;w=0;g=de(68,a|0)|0;d=w;w=0;if(!(d&1)){t[b>>2]=g;w=0;d=pe(37,b|0,44220)|0;e=w;w=0;e:do{if(!(e&1)?(f[_>>0]=0,v=t[r>>2]|0,t[u>>2]=v,k=t[a+4>>2]|0,p=v,w=0,t[o>>2]=t[u>>2],k=be(1,i|0,o|0,n|0,b|0,k|0,s|0,_|0,d|0,M|0,m|0,h|0)|0,a=w,w=0,!(a&1)):0){if(k){if(!(f[l>>0]&1)){f[l+1>>0]=0;f[l>>0]=0}else{f[t[l+8>>2]>>0]=0;t[l+4>>2]=0}if(f[_>>0]|0){w=0;e=pe(t[(t[d>>2]|0)+28>>2]|0,d|0,45)|0;a=w;w=0;if(a&1)break;w=0;ce(67,l|0,e|0);a=w;w=0;if(a&1)break}w=0;u=pe(t[(t[d>>2]|0)+28>>2]|0,d|0,48)|0;a=w;w=0;if(a&1)break;e=t[M>>2]|0;h=t[m>>2]|0;o=h+-1|0;i:do{if(e>>>0<o>>>0)do{if((f[e>>0]|0)!=u<<24>>24)break i;e=e+1|0}while(e>>>0<o>>>0)}while(0);w=0;_e(32,l|0,e|0,h|0)|0;l=w;w=0;if(l&1)break}e=t[i>>2]|0;do{if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;e=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;l=w;w=0;if(l&1)break e;if((e|0)==-1){t[i>>2]=0;e=0;break}else{e=t[i>>2]|0;break}}}else e=0}while(0);o=(e|0)==0;do{if(v){if((t[p+12>>2]|0)==(t[p+16>>2]|0)){w=0;e=de(t[(t[v>>2]|0)+36>>2]|0,p|0)|0;p=w;w=0;if(p&1)break e;if((e|0)==-1){t[r>>2]=0;E=29;break}}if(!o)E=30}else E=29}while(0);if((E|0)==29?o:0)E=30;if((E|0)==30)t[s>>2]=t[s>>2]|2;o=t[i>>2]|0;bh(g)|0;e=t[M>>2]|0;t[M>>2]=0;if((e|0)!=0?(w=0,ue(t[S>>2]|0,e|0),S=w,w=0,S&1):0){S=je(0)|0;Ni(S)}c=y;return o|0}}while(0);o=je()|0;bh(g)|0;e=t[M>>2]|0;t[M>>2]=0;if(!e)A=o;else E=36}else{o=je()|0;t[M>>2]=0;E=36}if((E|0)==36){w=0;ue(t[S>>2]|0,e|0);S=w;w=0;if(S&1){S=je(0)|0;Ni(S)}else A=o}Qe(A|0);return 0}function Xo(e,i,r,n,a,s,l,o,u,h){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;var d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;E=c;c=c+112|0;d=E+100|0;b=E+88|0;_=E+76|0;k=E+64|0;m=E+52|0;v=E+48|0;p=E+36|0;g=E+24|0;y=E+12|0;M=E;do{if(e){e=zu(i,43828)|0;aM[t[(t[e>>2]|0)+44>>2]&127](d,e);M=t[d>>2]|0;f[r>>0]=M;f[r+1>>0]=M>>8;f[r+2>>0]=M>>16;f[r+3>>0]=M>>24;aM[t[(t[e>>2]|0)+32>>2]&127](b,e);if(!(f[u>>0]&1)){f[u+1>>0]=0;f[u>>0]=0}else{f[t[u+8>>2]>>0]=0;t[u+4>>2]=0}w=0;ce(91,u|0,0);r=w;w=0;if(r&1){r=je(0)|0;Ni(r)}t[u>>2]=t[b>>2];t[u+4>>2]=t[b+4>>2];t[u+8>>2]=t[b+8>>2];t[b>>2]=0;t[b+4>>2]=0;t[b+8>>2]=0;xh(b);aM[t[(t[e>>2]|0)+28>>2]&127](_,e);if(!(f[o>>0]&1)){f[o+1>>0]=0;f[o>>0]=0}else{f[t[o+8>>2]>>0]=0;t[o+4>>2]=0}w=0;ce(91,o|0,0);r=w;w=0;if(r&1){r=je(0)|0;Ni(r)}t[o>>2]=t[_>>2];t[o+4>>2]=t[_+4>>2];t[o+8>>2]=t[_+8>>2];t[_>>2]=0;t[_+4>>2]=0;t[_+8>>2]=0;xh(_);f[n>>0]=lM[t[(t[e>>2]|0)+12>>2]&127](e)|0;f[a>>0]=lM[t[(t[e>>2]|0)+16>>2]&127](e)|0;aM[t[(t[e>>2]|0)+20>>2]&127](k,e);if(!(f[s>>0]&1)){f[s+1>>0]=0;f[s>>0]=0}else{f[t[s+8>>2]>>0]=0;t[s+4>>2]=0}w=0;ce(91,s|0,0);a=w;w=0;if(a&1){a=je(0)|0;Ni(a)}t[s>>2]=t[k>>2];t[s+4>>2]=t[k+4>>2];t[s+8>>2]=t[k+8>>2];t[k>>2]=0;t[k+4>>2]=0;t[k+8>>2]=0;xh(k);aM[t[(t[e>>2]|0)+24>>2]&127](m,e);if(!(f[l>>0]&1)){f[l+1>>0]=0;f[l>>0]=0}else{f[t[l+8>>2]>>0]=0;t[l+4>>2]=0}w=0;ce(91,l|0,0);a=w;w=0;if(a&1){a=je(0)|0;Ni(a)}else{t[l>>2]=t[m>>2];t[l+4>>2]=t[m+4>>2];t[l+8>>2]=t[m+8>>2];t[m>>2]=0;t[m+4>>2]=0;t[m+8>>2]=0;xh(m);A=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;break}}else{e=zu(i,43764)|0;aM[t[(t[e>>2]|0)+44>>2]&127](v,e);v=t[v>>2]|0;f[r>>0]=v;f[r+1>>0]=v>>8;f[r+2>>0]=v>>16;f[r+3>>0]=v>>24;aM[t[(t[e>>2]|0)+32>>2]&127](p,e);if(!(f[u>>0]&1)){f[u+1>>0]=0;f[u>>0]=0}else{f[t[u+8>>2]>>0]=0;t[u+4>>2]=0}w=0;ce(91,u|0,0);r=w;w=0;if(r&1){r=je(0)|0;Ni(r)}t[u>>2]=t[p>>2];t[u+4>>2]=t[p+4>>2];t[u+8>>2]=t[p+8>>2];t[p>>2]=0;t[p+4>>2]=0;t[p+8>>2]=0;xh(p);aM[t[(t[e>>2]|0)+28>>2]&127](g,e);if(!(f[o>>0]&1)){f[o+1>>0]=0;f[o>>0]=0}else{f[t[o+8>>2]>>0]=0;t[o+4>>2]=0}w=0;ce(91,o|0,0);r=w;w=0;if(r&1){r=je(0)|0;Ni(r)}t[o>>2]=t[g>>2];t[o+4>>2]=t[g+4>>2];t[o+8>>2]=t[g+8>>2];t[g>>2]=0;t[g+4>>2]=0;t[g+8>>2]=0;xh(g);f[n>>0]=lM[t[(t[e>>2]|0)+12>>2]&127](e)|0;f[a>>0]=lM[t[(t[e>>2]|0)+16>>2]&127](e)|0;aM[t[(t[e>>2]|0)+20>>2]&127](y,e);if(!(f[s>>0]&1)){f[s+1>>0]=0;f[s>>0]=0}else{f[t[s+8>>2]>>0]=0;t[s+4>>2]=0}w=0;ce(91,s|0,0);a=w;w=0;if(a&1){a=je(0)|0;Ni(a)}t[s>>2]=t[y>>2];t[s+4>>2]=t[y+4>>2];t[s+8>>2]=t[y+8>>2];t[y>>2]=0;t[y+4>>2]=0;t[y+8>>2]=0;xh(y);aM[t[(t[e>>2]|0)+24>>2]&127](M,e);if(!(f[l>>0]&1)){f[l+1>>0]=0;f[l>>0]=0}else{f[t[l+8>>2]>>0]=0;t[l+4>>2]=0}w=0;ce(91,l|0,0);a=w;w=0;if(a&1){a=je(0)|0;Ni(a)}else{t[l>>2]=t[M>>2];t[l+4>>2]=t[M+4>>2];t[l+8>>2]=t[M+8>>2];t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;xh(M);A=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;break}}}while(0);t[h>>2]=A;c=E;return}function Go(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0;a=f[e>>0]|0;l=e+4|0;s=t[l>>2]|0;e:do{if(((a&1)==0?(a&255)>>>1:s)|0){if((i|0)!=(r|0)){a=r+-4|0;if(a>>>0>i>>>0){s=i;do{o=t[s>>2]|0;t[s>>2]=t[a>>2];t[a>>2]=o;s=s+4|0;a=a+-4|0}while(s>>>0<a>>>0)}a=f[e>>0]|0;s=t[l>>2]|0}o=(a&1)==0;l=o?e+1|0:t[e+8>>2]|0;r=r+-4|0;e=l+(o?(a&255)>>>1:s)|0;s=f[l>>0]|0;a=s<<24>>24<1|s<<24>>24==127;i:do{if(r>>>0>i>>>0){while(1){if(!a?(s<<24>>24|0)!=(t[i>>2]|0):0)break;l=(e-l|0)>1?l+1|0:l;i=i+4|0;s=f[l>>0]|0;a=s<<24>>24<1|s<<24>>24==127;if(i>>>0>=r>>>0)break i}t[n>>2]=4;break e}}while(0);if(!a?((t[r>>2]|0)+-1|0)>>>0>=s<<24>>24>>>0:0)t[n>>2]=4}}while(0);return}function Ko(e){e=e|0;return}function Wo(e){e=e|0;Bp(e);return}function Zo(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0;T=c;c=c+576|0;M=T+424|0;S=T;e=T+24|0;C=T+16|0;A=T+12|0;R=T+8|0;b=T+464|0;u=T+4|0;E=T+468|0;t[C>>2]=e;I=C+4|0;t[I>>2]=189;h=e+400|0;w=0;o=de(68,a|0)|0;y=w;w=0;if(!(y&1)){t[R>>2]=o;w=0;e=pe(37,R|0,44212)|0;y=w;w=0;e:do{if(!(y&1)?(f[b>>0]=0,t[u>>2]=t[r>>2],d=t[a+4>>2]|0,w=0,t[M>>2]=t[u>>2],d=be(2,i|0,M|0,n|0,R|0,d|0,s|0,b|0,e|0,C|0,A|0,h|0)|0,y=w,w=0,!(y&1)):0){i:do{if(d){w=0;Ae(t[(t[e>>2]|0)+48>>2]|0,e|0,59007,59017,M|0)|0;y=w;w=0;if(y&1){O=10;break e}u=t[A>>2]|0;h=t[C>>2]|0;e=u-h|0;if((e|0)>392){e=Pc((e>>2)+2|0)|0;o=e;if(!e){w=0;Se(6);y=w;w=0;if(!(y&1)){e=0;O=13}}else O=13}else{o=0;e=E;O=13}do{if((O|0)==13){if(f[b>>0]|0){f[e>>0]=45;e=e+1|0}g=M+40|0;y=M;if(h>>>0<u>>>0){d=M+4|0;n=d+4|0;a=n+4|0;b=a+4|0;_=b+4|0;k=_+4|0;m=k+4|0;v=m+4|0;p=v+4|0;do{u=t[h>>2]|0;do{if((t[M>>2]|0)!=(u|0))if((t[d>>2]|0)!=(u|0))if((t[n>>2]|0)!=(u|0))if((t[a>>2]|0)!=(u|0))if((t[b>>2]|0)==(u|0))u=b;else{if((t[_>>2]|0)==(u|0)){u=_;break}if((t[k>>2]|0)==(u|0)){u=k;break}if((t[m>>2]|0)==(u|0)){u=m;break}if((t[v>>2]|0)==(u|0)){u=v;break}u=(t[p>>2]|0)==(u|0)?p:g}else u=a;else u=n;else u=d;else u=M}while(0);f[e>>0]=f[59007+(u-y>>2)>>0]|0;h=h+4|0;e=e+1|0}while(h>>>0<(t[A>>2]|0)>>>0)}f[e>>0]=0;t[S>>2]=l;if((Oy(E,58987,S)|0)!=1?(w=0,ue(190,58991),l=w,w=0,l&1):0)break;if(o)Ic(o);break i}}while(0);e=je()|0;if(!o){u=e;o=C;break e}Ic(o);u=e;o=C;break e}}while(0);e=t[i>>2]|0;do{if(e){o=t[e+12>>2]|0;if((o|0)==(t[e+16>>2]|0)){w=0;e=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;l=w;w=0;if(l&1){O=10;break e}}else e=t[o>>2]|0;if((e|0)==-1){t[i>>2]=0;u=1;break}else{u=(t[i>>2]|0)==0;break}}else u=1}while(0);e=t[r>>2]|0;do{if(e){o=t[e+12>>2]|0;if((o|0)==(t[e+16>>2]|0)){w=0;e=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;l=w;w=0;if(l&1){O=10;break e}}else e=t[o>>2]|0;if((e|0)!=-1)if(u)break;else{O=40;break}else{t[r>>2]=0;O=38;break}}else O=38}while(0);if((O|0)==38?u:0)O=40;if((O|0)==40)t[s>>2]=t[s>>2]|2;o=t[i>>2]|0;bh(t[R>>2]|0)|0;e=t[C>>2]|0;t[C>>2]=0;if((e|0)!=0?(w=0,ue(t[I>>2]|0,e|0),O=w,w=0,O&1):0){O=je(0)|0;Ni(O)}c=T;return o|0}else O=10}while(0);if((O|0)==10){u=je()|0;o=C}bh(t[R>>2]|0)|0;e=t[o>>2]|0;t[o>>2]=0;if(!e)P=u;else{o=t[I>>2]|0;O=47}}else{u=je()|0;t[C>>2]=0;o=189;O=47}if((O|0)==47){w=0;ue(o|0,e|0);O=w;w=0;if(O&1){O=je(0)|0;Ni(O)}else P=u}Qe(P|0);return 0}function Jo(e,i,r,n,s,l,o,u,h,d,b){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;d=d|0;b=b|0;var _=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0,V=0,X=0,G=0,K=0,W=0,Z=0,J=0;W=c;c=c+512|0;z=W+96|0;_=W+104|0;J=W+88|0;H=W+80|0;F=W+76|0;U=W+504|0;D=W+72|0;j=W+68|0;$=W+56|0;K=W+44|0;X=W+32|0;V=W+20|0;G=W+8|0;N=W+4|0;q=W;t[z>>2]=b;t[J>>2]=_;Z=J+4|0;t[Z>>2]=189;t[H>>2]=_;t[F>>2]=_+400;t[$>>2]=0;t[$+4>>2]=0;t[$+8>>2]=0;t[K>>2]=0;t[K+4>>2]=0;t[K+8>>2]=0;t[X>>2]=0;t[X+4>>2]=0;t[X+8>>2]=0;t[V>>2]=0;t[V+4>>2]=0;t[V+8>>2]=0;t[G>>2]=0;t[G+4>>2]=0;t[G+8>>2]=0;w=0;ve(2,r|0,n|0,U|0,D|0,j|0,$|0,K|0,X|0,V|0,N|0);B=w;w=0;e:do{if(B&1)r=je()|0;else{t[d>>2]=t[h>>2];O=X+4|0;x=V+4|0;L=V+8|0;B=X+8|0;E=(s&512|0)!=0;S=K+8|0;T=K+4|0;R=G+4|0;C=G+8|0;P=U+3|0;I=$+4|0;A=0;m=0;i:while(1){b=t[e>>2]|0;do{if(b){r=t[b+12>>2]|0;if((r|0)==(t[b+16>>2]|0)){w=0;b=de(t[(t[b>>2]|0)+36>>2]|0,b|0)|0;M=w;w=0;if(M&1){Y=26;break i}}else b=t[r>>2]|0;if((b|0)==-1){t[e>>2]=0;n=1;break}else{n=(t[e>>2]|0)==0;break}}else n=1}while(0);r=t[i>>2]|0;do{if(r){b=t[r+12>>2]|0;if((b|0)==(t[r+16>>2]|0)){w=0;b=de(t[(t[r>>2]|0)+36>>2]|0,r|0)|0;M=w;w=0;if(M&1){Y=26;break i}}else b=t[b>>2]|0;if((b|0)!=-1)if(n){M=r;break}else{v=_;Y=244;break i}else{t[i>>2]=0;Y=16;break}}else Y=16}while(0);if((Y|0)==16){Y=0;if(n){v=_;Y=244;break}else M=0}r:do{switch(f[U+A>>0]|0){case 1:{if((A|0)!=3){b=t[e>>2]|0;r=t[b+12>>2]|0;if((r|0)==(t[b+16>>2]|0)){w=0;b=de(t[(t[b>>2]|0)+36>>2]|0,b|0)|0;Y=w;w=0;if(Y&1){Y=26;break i}}else b=t[r>>2]|0;w=0;b=_e(t[(t[u>>2]|0)+12>>2]|0,u|0,8192,b|0)|0;Y=w;w=0;if(Y&1){Y=26;break i}if(!b){Y=42;break i}b=t[e>>2]|0;r=b+12|0;n=t[r>>2]|0;if((n|0)==(t[b+16>>2]|0)){w=0;b=de(t[(t[b>>2]|0)+40>>2]|0,b|0)|0;Y=w;w=0;if(Y&1){Y=26;break i}}else{t[r>>2]=n+4;b=t[n>>2]|0}w=0;ce(92,G|0,b|0);Y=w;w=0;if(Y&1){Y=26;break i}else{b=M;s=M;Y=44}}else b=_;break}case 0:{if((A|0)==3)b=_;else{b=M;s=M;Y=44}break}case 3:{r=f[X>>0]|0;b=(r&1)==0?(r&255)>>>1:t[O>>2]|0;n=f[V>>0]|0;s=(n&1)==0?(n&255)>>>1:t[x>>2]|0;if((b|0)==(0-s|0))b=_;else{if(!b){b=t[e>>2]|0;r=t[b+12>>2]|0;if((r|0)==(t[b+16>>2]|0)){w=0;b=de(t[(t[b>>2]|0)+36>>2]|0,b|0)|0;M=w;w=0;if(M&1){Y=26;break i}r=f[V>>0]|0}else{b=t[r>>2]|0;r=n}if((b|0)!=(t[((r&1)==0?x:t[L>>2]|0)>>2]|0)){b=_;break r}b=t[e>>2]|0;r=b+12|0;n=t[r>>2]|0;if((n|0)==(t[b+16>>2]|0)){w=0;de(t[(t[b>>2]|0)+40>>2]|0,b|0)|0;M=w;w=0;if(M&1){Y=26;break i}}else t[r>>2]=n+4;f[o>>0]=1;M=f[V>>0]|0;b=_;m=((M&1)==0?(M&255)>>>1:t[x>>2]|0)>>>0>1?V:m;break r}k=t[e>>2]|0;v=t[k+12>>2]|0;n=t[k+16>>2]|0;b=(v|0)==(n|0);if(!s){if(b){w=0;b=de(t[(t[k>>2]|0)+36>>2]|0,k|0)|0;M=w;w=0;if(M&1){Y=26;break i}r=f[X>>0]|0}else b=t[v>>2]|0;if((b|0)!=(t[((r&1)==0?O:t[B>>2]|0)>>2]|0)){f[o>>0]=1;b=_;break r}b=t[e>>2]|0;r=b+12|0;n=t[r>>2]|0;if((n|0)==(t[b+16>>2]|0)){w=0;de(t[(t[b>>2]|0)+40>>2]|0,b|0)|0;M=w;w=0;if(M&1){Y=26;break i}}else t[r>>2]=n+4;M=f[X>>0]|0;b=_;m=((M&1)==0?(M&255)>>>1:t[O>>2]|0)>>>0>1?X:m;break r}if(b){w=0;b=de(t[(t[k>>2]|0)+36>>2]|0,k|0)|0;M=w;w=0;if(M&1){Y=26;break i}n=t[e>>2]|0;r=f[X>>0]|0;k=n;v=t[n+12>>2]|0;n=t[n+16>>2]|0}else b=t[v>>2]|0;s=k+12|0;n=(v|0)==(n|0);if((b|0)==(t[((r&1)==0?O:t[B>>2]|0)>>2]|0)){if(n){w=0;de(t[(t[k>>2]|0)+40>>2]|0,k|0)|0;M=w;w=0;if(M&1){Y=26;break i}}else t[s>>2]=v+4;M=f[X>>0]|0;b=_;m=((M&1)==0?(M&255)>>>1:t[O>>2]|0)>>>0>1?X:m;break r}if(n){w=0;b=de(t[(t[k>>2]|0)+36>>2]|0,k|0)|0;M=w;w=0;if(M&1){Y=26;break i}}else b=t[v>>2]|0;if((b|0)!=(t[((f[V>>0]&1)==0?x:t[L>>2]|0)>>2]|0)){Y=107;break i}b=t[e>>2]|0;r=b+12|0;n=t[r>>2]|0;if((n|0)==(t[b+16>>2]|0)){w=0;de(t[(t[b>>2]|0)+40>>2]|0,b|0)|0;M=w;w=0;if(M&1){Y=26;break i}}else t[r>>2]=n+4;f[o>>0]=1;M=f[V>>0]|0;b=_;m=((M&1)==0?(M&255)>>>1:t[x>>2]|0)>>>0>1?V:m}break}case 2:{if(!(A>>>0<2|(m|0)!=0)?!(E|(A|0)==2&(f[P>>0]|0)!=0):0){b=_;m=0;break r}s=f[K>>0]|0;n=t[S>>2]|0;r=(s&1)==0?T:n;b=r;f:do{if((A|0)!=0?(a[U+(A+-1)>>0]|0)<2:0){y=(s&1)==0;n:do{if((r|0)!=((y?T:n)+((y?(s&255)>>>1:t[T>>2]|0)<<2)|0)){s=r;while(1){w=0;r=_e(t[(t[u>>2]|0)+12>>2]|0,u|0,8192,t[s>>2]|0)|0;y=w;w=0;if(y&1){Y=23;break i}if(!r)break;s=s+4|0;b=s;r=f[K>>0]|0;n=t[S>>2]|0;y=(r&1)==0;if((s|0)==((y?T:n)+((y?(r&255)>>>1:t[T>>2]|0)<<2)|0)){s=r;break n}}s=f[K>>0]|0;n=t[S>>2]|0}}while(0);v=(s&1)==0?T:n;r=v;p=b-r>>2;g=f[G>>0]|0;k=(g&1)==0;g=k?(g&255)>>>1:t[R>>2]|0;if(g>>>0>=p>>>0){k=k?R:t[C>>2]|0;y=k+(g<<2)|0;if(!p)r=b;else{k=k+(g-p<<2)|0;while(1){if((t[k>>2]|0)!=(t[v>>2]|0))break f;k=k+4|0;if((k|0)==(y|0)){r=b;break}else v=v+4|0}}}}else r=b}while(0);b=(s&1)==0;b=(b?T:n)+((b?(s&255)>>>1:t[T>>2]|0)<<2)|0;f:do{if((r|0)!=(b|0)){k=M;s=M;b=r;while(1){r=t[e>>2]|0;do{if(r){n=t[r+12>>2]|0;if((n|0)==(t[r+16>>2]|0)){w=0;r=de(t[(t[r>>2]|0)+36>>2]|0,r|0)|0;M=w;w=0;if(M&1){Y=22;break i}}else r=t[n>>2]|0;if((r|0)==-1){t[e>>2]=0;n=1;break}else{n=(t[e>>2]|0)==0;break}}else n=1}while(0);do{if(s){r=t[s+12>>2]|0;if((r|0)==(t[s+16>>2]|0)){w=0;r=de(t[(t[s>>2]|0)+36>>2]|0,s|0)|0;M=w;w=0;if(M&1){Y=22;break i}}else r=t[r>>2]|0;if((r|0)!=-1)if(n^(k|0)==0){r=k;v=k;break}else break f;else{t[i>>2]=0;r=0;Y=136;break}}else{r=k;Y=136}}while(0);if((Y|0)==136){Y=0;if(n)break f;else v=0}n=t[e>>2]|0;s=t[n+12>>2]|0;if((s|0)==(t[n+16>>2]|0)){w=0;n=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;M=w;w=0;if(M&1){Y=22;break i}}else n=t[s>>2]|0;if((n|0)!=(t[b>>2]|0))break f;n=t[e>>2]|0;s=n+12|0;k=t[s>>2]|0;if((k|0)==(t[n+16>>2]|0)){w=0;de(t[(t[n>>2]|0)+40>>2]|0,n|0)|0;M=w;w=0;if(M&1){Y=22;break i}}else t[s>>2]=k+4;b=b+4|0;n=f[K>>0]|0;M=(n&1)==0;n=(M?T:t[S>>2]|0)+((M?(n&255)>>>1:t[T>>2]|0)<<2)|0;if((b|0)==(n|0)){b=n;break}else{k=r;s=v}}}}while(0);if(E?(M=f[K>>0]|0,y=(M&1)==0,(b|0)!=((y?T:t[S>>2]|0)+((y?(M&255)>>>1:t[T>>2]|0)<<2)|0)):0){Y=148;break i}else b=_;break}case 4:{g=t[j>>2]|0;p=M;k=M;b=_;r=0;f:while(1){n=t[e>>2]|0;do{if(n){s=t[n+12>>2]|0;if((s|0)==(t[n+16>>2]|0)){w=0;n=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;M=w;w=0;if(M&1){Y=25;break i}}else n=t[s>>2]|0;if((n|0)==-1){t[e>>2]=0;s=1;break}else{s=(t[e>>2]|0)==0;break}}else s=1}while(0);do{if(k){n=t[k+12>>2]|0;if((n|0)==(t[k+16>>2]|0)){w=0;n=de(t[(t[k>>2]|0)+36>>2]|0,k|0)|0;M=w;w=0;if(M&1){Y=25;break i}}else n=t[n>>2]|0;if((n|0)!=-1)if(s^(p|0)==0){n=p;v=p;break}else{_=p;break f}else{t[i>>2]=0;n=0;Y=162;break}}else{n=p;Y=162}}while(0);if((Y|0)==162){Y=0;if(s){_=n;break}else v=0}s=t[e>>2]|0;_=t[s+12>>2]|0;if((_|0)==(t[s+16>>2]|0)){w=0;s=de(t[(t[s>>2]|0)+36>>2]|0,s|0)|0;M=w;w=0;if(M&1){Y=25;break i}}else s=t[_>>2]|0;w=0;_=_e(t[(t[u>>2]|0)+12>>2]|0,u|0,2048,s|0)|0;M=w;w=0;if(M&1){Y=25;break i}if(_){_=t[d>>2]|0;if((_|0)==(t[z>>2]|0)){w=0;Ee(14,h|0,d|0,z|0);M=w;w=0;if(M&1){Y=25;break i}_=t[d>>2]|0}t[d>>2]=_+4;t[_>>2]=s;r=r+1|0}else{M=f[$>>0]|0;if(!((s|0)==(g|0)&((r|0)!=0?(((M&1)==0?(M&255)>>>1:t[I>>2]|0)|0)!=0:0))){_=n;break}if((b|0)==(t[F>>2]|0)){w=0;Ee(13,J|0,H|0,F|0);M=w;w=0;if(M&1){Y=25;break i}b=t[H>>2]|0}M=b+4|0;t[H>>2]=M;t[b>>2]=r;b=M;r=0}s=t[e>>2]|0;_=s+12|0;k=t[_>>2]|0;if((k|0)==(t[s+16>>2]|0)){w=0;de(t[(t[s>>2]|0)+40>>2]|0,s|0)|0;M=w;w=0;if(M&1){Y=25;break i}else{p=n;k=v;continue}}else{t[_>>2]=k+4;p=n;k=v;continue}}if((r|0)!=0?(t[J>>2]|0)!=(b|0):0){if((b|0)==(t[F>>2]|0)){w=0;Ee(13,J|0,H|0,F|0);M=w;w=0;if(M&1){Y=26;break i}b=t[H>>2]|0}M=b+4|0;t[H>>2]=M;t[b>>2]=r;b=M}v=t[N>>2]|0;if((v|0)>0){r=t[e>>2]|0;do{if(r){n=t[r+12>>2]|0;if((n|0)==(t[r+16>>2]|0)){w=0;r=de(t[(t[r>>2]|0)+36>>2]|0,r|0)|0;M=w;w=0;if(M&1){Y=26;break i}}else r=t[n>>2]|0;if((r|0)==-1){t[e>>2]=0;n=1;break}else{n=(t[e>>2]|0)==0;break}}else n=1}while(0);do{if(_){r=t[_+12>>2]|0;if((r|0)==(t[_+16>>2]|0)){w=0;r=de(t[(t[_>>2]|0)+36>>2]|0,_|0)|0;M=w;w=0;if(M&1){Y=26;break i}}else r=t[r>>2]|0;if((r|0)!=-1)if(n)break;else{Y=206;break i}else{t[i>>2]=0;Y=200;break}}else Y=200}while(0);if((Y|0)==200){Y=0;if(n){Y=206;break i}else _=0}r=t[e>>2]|0;n=t[r+12>>2]|0;if((n|0)==(t[r+16>>2]|0)){w=0;r=de(t[(t[r>>2]|0)+36>>2]|0,r|0)|0;M=w;w=0;if(M&1){Y=26;break i}}else r=t[n>>2]|0;if((r|0)!=(t[D>>2]|0)){Y=206;break i}r=t[e>>2]|0;n=r+12|0;s=t[n>>2]|0;if((s|0)==(t[r+16>>2]|0)){w=0;de(t[(t[r>>2]|0)+40>>2]|0,r|0)|0;M=w;w=0;if(M&1){Y=26;break i}}else t[n>>2]=s+4;if((v|0)>0){k=_;s=_;p=v;while(1){r=t[e>>2]|0;do{if(r){n=t[r+12>>2]|0;if((n|0)==(t[r+16>>2]|0)){w=0;r=de(t[(t[r>>2]|0)+36>>2]|0,r|0)|0;M=w;w=0;if(M&1){Y=24;break i}}else r=t[n>>2]|0;if((r|0)==-1){t[e>>2]=0;n=1;break}else{n=(t[e>>2]|0)==0;break}}else n=1}while(0);do{if(s){r=t[s+12>>2]|0;if((r|0)==(t[s+16>>2]|0)){w=0;r=de(t[(t[s>>2]|0)+36>>2]|0,s|0)|0;M=w;w=0;if(M&1){Y=24;break i}}else r=t[r>>2]|0;if((r|0)!=-1)if(n^(k|0)==0){r=k;v=k;break}else{Y=231;break i}else{t[i>>2]=0;r=0;Y=224;break}}else{r=k;Y=224}}while(0);if((Y|0)==224){Y=0;if(n){Y=231;break i}else v=0}n=t[e>>2]|0;s=t[n+12>>2]|0;if((s|0)==(t[n+16>>2]|0)){w=0;n=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;M=w;w=0;if(M&1){Y=24;break i}}else n=t[s>>2]|0;w=0;n=_e(t[(t[u>>2]|0)+12>>2]|0,u|0,2048,n|0)|0;M=w;w=0;if(M&1){Y=24;break i}if(!n){Y=231;break i}if((t[d>>2]|0)==(t[z>>2]|0)?(w=0,Ee(14,h|0,d|0,z|0),M=w,w=0,M&1):0){Y=24;break i}n=t[e>>2]|0;s=t[n+12>>2]|0;if((s|0)==(t[n+16>>2]|0)){w=0;n=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;M=w;w=0;if(M&1){Y=24;break i}}else n=t[s>>2]|0;s=t[d>>2]|0;t[d>>2]=s+4;t[s>>2]=n;n=p;p=p+-1|0;t[N>>2]=p;s=t[e>>2]|0;_=s+12|0;k=t[_>>2]|0;if((k|0)==(t[s+16>>2]|0)){w=0;de(t[(t[s>>2]|0)+40>>2]|0,s|0)|0;M=w;w=0;if(M&1){Y=24;break i}}else t[_>>2]=k+4;if((n|0)<=1)break;else{k=r;s=v}}}}if((t[d>>2]|0)==(t[h>>2]|0)){Y=242;break i}break}default:b=_}}while(0);r:do{if((Y|0)==44)while(1){Y=0;r=t[e>>2]|0;do{if(r){n=t[r+12>>2]|0;if((n|0)==(t[r+16>>2]|0)){w=0;r=de(t[(t[r>>2]|0)+36>>2]|0,r|0)|0;M=w;w=0;if(M&1){Y=21;break i}}else r=t[n>>2]|0;if((r|0)==-1){t[e>>2]=0;n=1;break}else{n=(t[e>>2]|0)==0;break}}else n=1}while(0);do{if(s){r=t[s+12>>2]|0;if((r|0)==(t[s+16>>2]|0)){w=0;r=de(t[(t[s>>2]|0)+36>>2]|0,s|0)|0;M=w;w=0;if(M&1){Y=21;break i}}else r=t[r>>2]|0;if((r|0)!=-1)if(n^(b|0)==0){k=b;s=b;break}else{b=_;break r}else{t[i>>2]=0;b=0;Y=57;break}}else Y=57}while(0);if((Y|0)==57){Y=0;if(n){b=_;break r}else{k=b;s=0}}b=t[e>>2]|0;r=t[b+12>>2]|0;if((r|0)==(t[b+16>>2]|0)){w=0;b=de(t[(t[b>>2]|0)+36>>2]|0,b|0)|0;M=w;w=0;if(M&1){Y=21;break i}}else b=t[r>>2]|0;w=0;b=_e(t[(t[u>>2]|0)+12>>2]|0,u|0,8192,b|0)|0;M=w;w=0;if(M&1){Y=21;break i}if(!b){b=_;break r}b=t[e>>2]|0;r=b+12|0;n=t[r>>2]|0;if((n|0)==(t[b+16>>2]|0)){w=0;b=de(t[(t[b>>2]|0)+40>>2]|0,b|0)|0;Y=w;w=0;if(Y&1){Y=21;break i}}else{t[r>>2]=n+4;b=t[n>>2]|0}w=0;ce(92,G|0,b|0);Y=w;w=0;if(Y&1){Y=21;break i}else{b=k;Y=44}}}while(0);A=A+1|0;if(A>>>0>=4){v=b;Y=244;break}else _=b}i:switch(Y|0){case 21:{r=je()|0;break e}case 22:{r=je()|0;break e}case 23:{r=je()|0;break e}case 24:{r=je()|0;break e}case 25:{r=je()|0;break e}case 26:{r=je()|0;break e}case 42:{t[l>>2]=t[l>>2]|4;r=0;break}case 107:{t[l>>2]=t[l>>2]|4;r=0;break}case 148:{t[l>>2]=t[l>>2]|4;r=0;break}case 206:{t[l>>2]=t[l>>2]|4;r=0;break}case 231:{t[l>>2]=t[l>>2]|4;r=0;break}case 242:{t[l>>2]=t[l>>2]|4;r=0;break}case 244:{r:do{if(m){_=m+4|0;k=m+8|0;s=1;f:while(1){b=f[m>>0]|0;if(!(b&1))b=(b&255)>>>1;else b=t[_>>2]|0;if(s>>>0>=b>>>0)break r;b=t[e>>2]|0;do{if(b){r=t[b+12>>2]|0;if((r|0)==(t[b+16>>2]|0)){w=0;b=de(t[(t[b>>2]|0)+36>>2]|0,b|0)|0;d=w;w=0;if(d&1){Y=20;break f}}else b=t[r>>2]|0;if((b|0)==-1){t[e>>2]=0;n=1;break}else{n=(t[e>>2]|0)==0;break}}else n=1}while(0);b=t[i>>2]|0;do{if(b){r=t[b+12>>2]|0;if((r|0)==(t[b+16>>2]|0)){w=0;b=de(t[(t[b>>2]|0)+36>>2]|0,b|0)|0;d=w;w=0;if(d&1){Y=20;break f}}else b=t[r>>2]|0;if((b|0)!=-1)if(n)break;else{Y=271;break f}else{t[i>>2]=0;Y=263;break}}else Y=263}while(0);if((Y|0)==263?(Y=0,n):0){Y=271;break}b=t[e>>2]|0;r=t[b+12>>2]|0;if((r|0)==(t[b+16>>2]|0)){w=0;b=de(t[(t[b>>2]|0)+36>>2]|0,b|0)|0;d=w;w=0;if(d&1){Y=20;break}}else b=t[r>>2]|0;if(!(f[m>>0]&1))r=_;else r=t[k>>2]|0;if((b|0)!=(t[r+(s<<2)>>2]|0)){Y=271;break}b=s+1|0;r=t[e>>2]|0;n=r+12|0;s=t[n>>2]|0;if((s|0)==(t[r+16>>2]|0)){w=0;de(t[(t[r>>2]|0)+40>>2]|0,r|0)|0;d=w;w=0;if(d&1){Y=20;break}else{s=b;continue}}else{t[n>>2]=s+4;s=b;continue}}if((Y|0)==20){r=je()|0;break e}else if((Y|0)==271){t[l>>2]=t[l>>2]|4;r=0;break i}}}while(0);b=t[J>>2]|0;if((b|0)!=(v|0)?(t[q>>2]=0,Go($,b,v,q),(t[q>>2]|0)!=0):0){t[l>>2]=t[l>>2]|4;r=0}else r=1;break}}Xh(G);Xh(V);Xh(X);Xh(K);xh($);b=t[J>>2]|0;t[J>>2]=0;if((b|0)!=0?(w=0,ue(t[Z>>2]|0,b|0),J=w,w=0,J&1):0){J=je(0)|0;Ni(J)}c=W;return r|0}}while(0);Xh(G);Xh(V);Xh(X);Xh(K);xh($);b=t[J>>2]|0;t[J>>2]=0;if((b|0)!=0?(w=0,ue(t[Z>>2]|0,b|0),J=w,w=0,J&1):0){J=je(0)|0;Ni(J)}Qe(r|0);return 0}function Qo(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0;y=c;c=c+432|0;o=y+424|0;e=y+24|0;A=y+16|0;m=y+8|0;b=y+4|0;_=y+428|0;u=y;t[A>>2]=e;S=A+4|0;t[S>>2]=189;h=e+400|0;w=0;g=de(68,a|0)|0;d=w;w=0;if(!(d&1)){t[b>>2]=g;w=0;d=pe(37,b|0,44212)|0;e=w;w=0;e:do{if(!(e&1)?(f[_>>0]=0,v=t[r>>2]|0,t[u>>2]=v,k=t[a+4>>2]|0,p=v,w=0,t[o>>2]=t[u>>2],k=be(2,i|0,o|0,n|0,b|0,k|0,s|0,_|0,d|0,A|0,m|0,h|0)|0,a=w,w=0,!(a&1)):0){if(k){if(!(f[l>>0]&1))f[l>>0]=0;else t[t[l+8>>2]>>2]=0;t[l+4>>2]=0;if(f[_>>0]|0){w=0;e=pe(t[(t[d>>2]|0)+44>>2]|0,d|0,45)|0;a=w;w=0;if(a&1)break;w=0;ce(92,l|0,e|0);a=w;w=0;if(a&1)break}w=0;u=pe(t[(t[d>>2]|0)+44>>2]|0,d|0,48)|0;a=w;w=0;if(a&1)break;e=t[A>>2]|0;h=t[m>>2]|0;o=h+-4|0;i:do{if(e>>>0<o>>>0)do{if((t[e>>2]|0)!=(u|0))break i;e=e+4|0}while(e>>>0<o>>>0)}while(0);w=0;_e(33,l|0,e|0,h|0)|0;l=w;w=0;if(l&1)break}e=t[i>>2]|0;do{if(e){o=t[e+12>>2]|0;if((o|0)==(t[e+16>>2]|0)){w=0;e=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;l=w;w=0;if(l&1)break e}else e=t[o>>2]|0;if((e|0)==-1){t[i>>2]=0;o=1;break}else{o=(t[i>>2]|0)==0;break}}else o=1}while(0);do{if(v){e=t[p+12>>2]|0;if((e|0)==(t[p+16>>2]|0)){w=0;e=de(t[(t[v>>2]|0)+36>>2]|0,p|0)|0;p=w;w=0;if(p&1)break e}else e=t[e>>2]|0;if((e|0)!=-1)if(o)break;else{E=32;break}else{t[r>>2]=0;E=30;break}}else E=30}while(0);if((E|0)==30?o:0)E=32;if((E|0)==32)t[s>>2]=t[s>>2]|2;o=t[i>>2]|0;bh(g)|0;e=t[A>>2]|0;t[A>>2]=0;if((e|0)!=0?(w=0,ue(t[S>>2]|0,e|0),S=w,w=0,S&1):0){S=je(0)|0;Ni(S)}c=y;return o|0}}while(0);o=je()|0;bh(g)|0;e=t[A>>2]|0;t[A>>2]=0;if(!e)M=o;else E=38}else{o=je()|0;t[A>>2]=0;E=38}if((E|0)==38){w=0;ue(t[S>>2]|0,e|0);S=w;w=0;if(S&1){S=je(0)|0;Ni(S)}else M=o}Qe(M|0);return 0}function eu(e,i,r,n,a,s,l,o,u,h){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;var d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;E=c;c=c+112|0;d=E+100|0;b=E+88|0;_=E+76|0;k=E+64|0;m=E+52|0;v=E+48|0;p=E+36|0;g=E+24|0;y=E+12|0;M=E;do{if(e){e=zu(i,43956)|0;aM[t[(t[e>>2]|0)+44>>2]&127](d,e);M=t[d>>2]|0;f[r>>0]=M;f[r+1>>0]=M>>8;f[r+2>>0]=M>>16;f[r+3>>0]=M>>24;aM[t[(t[e>>2]|0)+32>>2]&127](b,e);if(!(f[u>>0]&1))f[u>>0]=0;else t[t[u+8>>2]>>2]=0;t[u+4>>2]=0;w=0;ce(93,u|0,0);r=w;w=0;if(r&1){r=je(0)|0;Ni(r)}t[u>>2]=t[b>>2];t[u+4>>2]=t[b+4>>2];t[u+8>>2]=t[b+8>>2];t[b>>2]=0;t[b+4>>2]=0;t[b+8>>2]=0;Xh(b);aM[t[(t[e>>2]|0)+28>>2]&127](_,e);if(!(f[o>>0]&1))f[o>>0]=0;else t[t[o+8>>2]>>2]=0;t[o+4>>2]=0;w=0;ce(93,o|0,0);r=w;w=0;if(r&1){r=je(0)|0;Ni(r)}t[o>>2]=t[_>>2];t[o+4>>2]=t[_+4>>2];t[o+8>>2]=t[_+8>>2];t[_>>2]=0;t[_+4>>2]=0;t[_+8>>2]=0;Xh(_);t[n>>2]=lM[t[(t[e>>2]|0)+12>>2]&127](e)|0;t[a>>2]=lM[t[(t[e>>2]|0)+16>>2]&127](e)|0;aM[t[(t[e>>2]|0)+20>>2]&127](k,e);if(!(f[s>>0]&1)){f[s+1>>0]=0;f[s>>0]=0}else{f[t[s+8>>2]>>0]=0;t[s+4>>2]=0}w=0;ce(91,s|0,0);a=w;w=0;if(a&1){a=je(0)|0;Ni(a)}t[s>>2]=t[k>>2];t[s+4>>2]=t[k+4>>2];t[s+8>>2]=t[k+8>>2];t[k>>2]=0;t[k+4>>2]=0;t[k+8>>2]=0;xh(k);aM[t[(t[e>>2]|0)+24>>2]&127](m,e);if(!(f[l>>0]&1))f[l>>0]=0;else t[t[l+8>>2]>>2]=0;t[l+4>>2]=0;w=0;ce(93,l|0,0);a=w;w=0;if(a&1){a=je(0)|0;Ni(a)}else{t[l>>2]=t[m>>2];t[l+4>>2]=t[m+4>>2];t[l+8>>2]=t[m+8>>2];t[m>>2]=0;t[m+4>>2]=0;t[m+8>>2]=0;Xh(m);A=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;break}}else{e=zu(i,43892)|0;aM[t[(t[e>>2]|0)+44>>2]&127](v,e);v=t[v>>2]|0;f[r>>0]=v;f[r+1>>0]=v>>8;f[r+2>>0]=v>>16;f[r+3>>0]=v>>24;aM[t[(t[e>>2]|0)+32>>2]&127](p,e);if(!(f[u>>0]&1))f[u>>0]=0;else t[t[u+8>>2]>>2]=0;t[u+4>>2]=0;w=0;ce(93,u|0,0);r=w;w=0;if(r&1){r=je(0)|0;Ni(r)}t[u>>2]=t[p>>2];t[u+4>>2]=t[p+4>>2];t[u+8>>2]=t[p+8>>2];t[p>>2]=0;t[p+4>>2]=0;t[p+8>>2]=0;Xh(p);aM[t[(t[e>>2]|0)+28>>2]&127](g,e);if(!(f[o>>0]&1))f[o>>0]=0;else t[t[o+8>>2]>>2]=0;t[o+4>>2]=0;w=0;ce(93,o|0,0);r=w;w=0;if(r&1){r=je(0)|0;Ni(r)}t[o>>2]=t[g>>2];t[o+4>>2]=t[g+4>>2];t[o+8>>2]=t[g+8>>2];t[g>>2]=0;t[g+4>>2]=0;t[g+8>>2]=0;Xh(g);t[n>>2]=lM[t[(t[e>>2]|0)+12>>2]&127](e)|0;t[a>>2]=lM[t[(t[e>>2]|0)+16>>2]&127](e)|0;aM[t[(t[e>>2]|0)+20>>2]&127](y,e);if(!(f[s>>0]&1)){f[s+1>>0]=0;f[s>>0]=0}else{f[t[s+8>>2]>>0]=0;t[s+4>>2]=0}w=0;ce(91,s|0,0);a=w;w=0;if(a&1){a=je(0)|0;Ni(a)}t[s>>2]=t[y>>2];t[s+4>>2]=t[y+4>>2];t[s+8>>2]=t[y+8>>2];t[y>>2]=0;t[y+4>>2]=0;t[y+8>>2]=0;xh(y);aM[t[(t[e>>2]|0)+24>>2]&127](M,e);if(!(f[l>>0]&1))f[l>>0]=0;else t[t[l+8>>2]>>2]=0;t[l+4>>2]=0;w=0;ce(93,l|0,0);a=w;w=0;if(a&1){a=je(0)|0;Ni(a)}else{t[l>>2]=t[M>>2];t[l+4>>2]=t[M+4>>2];t[l+8>>2]=t[M+8>>2];t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;Xh(M);A=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;break}}}while(0);t[h>>2]=A;c=E;return}function iu(e){e=e|0;return}function ru(e){e=e|0;Bp(e);return}function fu(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=+s;var l=0,o=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0;C=c;c=c+384|0;g=C+8|0;l=C;h=C+284|0;d=C+72|0;o=C+184|0;I=C+68|0;S=C+80|0;M=C+77|0;T=C+76|0;O=C+56|0;L=C+44|0;x=C+32|0;b=C+28|0;p=C+84|0;E=C+24|0;A=C+20|0;y=C+16|0;t[d>>2]=h;u[g>>3]=s;h=Iy(h,100,59018,g)|0;do{if(h>>>0>99){w=0;e=Me(3)|0;R=w;w=0;if(!(R&1)?(w=0,u[l>>3]=s,m=Ae(17,d|0,e|0,59018,l|0)|0,R=w,w=0,!(R&1)):0){e=t[d>>2]|0;if(!e){w=0;Se(6);R=w;w=0;if(R&1){e=0;l=0;R=7;break}e=t[d>>2]|0}o=Pc(m)|0;l=o;if(!o){w=0;Se(6);R=w;w=0;if(R&1)R=7;else{v=0;R=10}}else{v=o;R=10}}else{e=0;l=0;R=7}}else{l=0;e=0;v=o;m=h;R=10}}while(0);if((R|0)==10){w=0;o=de(68,n|0)|0;k=w;w=0;if(k&1)R=7;else{t[I>>2]=o;w=0;k=pe(37,I|0,44220)|0;_=w;w=0;if(!(_&1)?(_=t[d>>2]|0,w=0,Ae(t[(t[k>>2]|0)+32>>2]|0,k|0,_|0,_+m|0,v|0)|0,_=w,w=0,!(_&1)):0){if(!m)_=0;else _=(f[t[d>>2]>>0]|0)==45;t[O>>2]=0;t[O+4>>2]=0;t[O+8>>2]=0;t[L>>2]=0;t[L+4>>2]=0;t[L+8>>2]=0;t[x>>2]=0;t[x+4>>2]=0;t[x+8>>2]=0;w=0;ve(3,r|0,_|0,I|0,S|0,M|0,T|0,O|0,L|0,x|0,b|0);r=w;w=0;if(!(r&1)){b=t[b>>2]|0;if((m|0)>(b|0)){r=f[x>>0]|0;h=f[L>>0]|0;h=(m-b<<1|1)+b+((r&1)==0?(r&255)>>>1:t[x+4>>2]|0)+((h&1)==0?(h&255)>>>1:t[L+4>>2]|0)|0}else{r=f[x>>0]|0;h=f[L>>0]|0;h=b+2+((r&1)==0?(r&255)>>>1:t[x+4>>2]|0)+((h&1)==0?(h&255)>>>1:t[L+4>>2]|0)|0}if(h>>>0>100){h=Pc(h)|0;d=h;if(!h){w=0;Se(6);p=w;w=0;if(!(p&1)){h=0;R=26}}else R=26}else{d=0;h=p;R=26}if((R|0)==26){w=0;ke(1,h|0,E|0,A|0,t[n+4>>2]|0,v|0,v+m|0,k|0,_|0,S|0,f[M>>0]|0,f[T>>0]|0,O|0,L|0,x|0,b|0);T=w;w=0;if(!(T&1)?(t[y>>2]=t[i>>2],i=t[E>>2]|0,P=t[A>>2]|0,w=0,t[g>>2]=t[y>>2],P=he(39,g|0,h|0,i|0,P|0,n|0,a|0)|0,i=w,w=0,!(i&1)):0){if(d){Ic(d);o=t[I>>2]|0}xh(x);xh(L);xh(O);bh(o)|0;if(l)Ic(l);if(e)Ic(e);c=C;return P|0}}h=je()|0;if(d){Ic(d);o=t[I>>2]|0}}else h=je()|0;xh(x);xh(L);xh(O)}else h=je()|0;bh(o)|0}}if((R|0)==7)h=je()|0;if(l)Ic(l);if(e)Ic(e);Qe(h|0);return 0}function nu(e,i,r,n,a,s,l,o,u,h){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;var d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;C=c;c=c+112|0;_=C+108|0;k=C+96|0;p=C+92|0;g=C+80|0;y=C+68|0;M=C+56|0;A=C+52|0;E=C+40|0;S=C+36|0;T=C+24|0;m=C+12|0;v=C;do{if(e){e=zu(r,43828)|0;r=t[e>>2]|0;do{if(i){aM[t[r+44>>2]&127](_,e);i=t[_>>2]|0;f[n>>0]=i;f[n+1>>0]=i>>8;f[n+2>>0]=i>>16;f[n+3>>0]=i>>24;aM[t[(t[e>>2]|0)+32>>2]&127](k,e);if(!(f[u>>0]&1)){f[u+1>>0]=0;f[u>>0]=0}else{f[t[u+8>>2]>>0]=0;t[u+4>>2]=0}w=0;ce(91,u|0,0);n=w;w=0;if(n&1){u=je(0)|0;Ni(u)}else{t[u>>2]=t[k>>2];t[u+4>>2]=t[k+4>>2];t[u+8>>2]=t[k+8>>2];t[k>>2]=0;t[k+4>>2]=0;t[k+8>>2]=0;xh(k);b=e;break}}else{aM[t[r+40>>2]&127](p,e);i=t[p>>2]|0;f[n>>0]=i;f[n+1>>0]=i>>8;f[n+2>>0]=i>>16;f[n+3>>0]=i>>24;aM[t[(t[e>>2]|0)+28>>2]&127](g,e);if(!(f[u>>0]&1)){f[u+1>>0]=0;f[u>>0]=0}else{f[t[u+8>>2]>>0]=0;t[u+4>>2]=0}w=0;ce(91,u|0,0);n=w;w=0;if(n&1){u=je(0)|0;Ni(u)}else{t[u>>2]=t[g>>2];t[u+4>>2]=t[g+4>>2];t[u+8>>2]=t[g+8>>2];t[g>>2]=0;t[g+4>>2]=0;t[g+8>>2]=0;xh(g);b=e;break}}}while(0);f[a>>0]=lM[t[(t[e>>2]|0)+12>>2]&127](e)|0;f[s>>0]=lM[t[(t[e>>2]|0)+16>>2]&127](e)|0;aM[t[(t[b>>2]|0)+20>>2]&127](y,e);if(!(f[l>>0]&1)){f[l+1>>0]=0;f[l>>0]=0}else{f[t[l+8>>2]>>0]=0;t[l+4>>2]=0}w=0;ce(91,l|0,0);s=w;w=0;if(s&1){s=je(0)|0;Ni(s)}t[l>>2]=t[y>>2];t[l+4>>2]=t[y+4>>2];t[l+8>>2]=t[y+8>>2];t[y>>2]=0;t[y+4>>2]=0;t[y+8>>2]=0;xh(y);aM[t[(t[b>>2]|0)+24>>2]&127](M,e);if(!(f[o>>0]&1)){f[o+1>>0]=0;f[o>>0]=0}else{f[t[o+8>>2]>>0]=0;t[o+4>>2]=0}w=0;ce(91,o|0,0);s=w;w=0;if(s&1){s=je(0)|0;Ni(s)}else{t[o>>2]=t[M>>2];t[o+4>>2]=t[M+4>>2];t[o+8>>2]=t[M+8>>2];t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;xh(M);R=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;break}}else{e=zu(r,43764)|0;r=t[e>>2]|0;do{if(i){aM[t[r+44>>2]&127](A,e);i=t[A>>2]|0;f[n>>0]=i;f[n+1>>0]=i>>8;f[n+2>>0]=i>>16;f[n+3>>0]=i>>24;aM[t[(t[e>>2]|0)+32>>2]&127](E,e);if(!(f[u>>0]&1)){f[u+1>>0]=0;f[u>>0]=0}else{f[t[u+8>>2]>>0]=0;t[u+4>>2]=0}w=0;ce(91,u|0,0);n=w;w=0;if(n&1){u=je(0)|0;Ni(u)}else{t[u>>2]=t[E>>2];t[u+4>>2]=t[E+4>>2];t[u+8>>2]=t[E+8>>2];t[E>>2]=0;t[E+4>>2]=0;t[E+8>>2]=0;xh(E);d=e;break}}else{aM[t[r+40>>2]&127](S,e);i=t[S>>2]|0;f[n>>0]=i;f[n+1>>0]=i>>8;f[n+2>>0]=i>>16;f[n+3>>0]=i>>24;aM[t[(t[e>>2]|0)+28>>2]&127](T,e);if(!(f[u>>0]&1)){f[u+1>>0]=0;f[u>>0]=0}else{f[t[u+8>>2]>>0]=0;t[u+4>>2]=0}w=0;ce(91,u|0,0);n=w;w=0;if(n&1){u=je(0)|0;Ni(u)}else{t[u>>2]=t[T>>2];t[u+4>>2]=t[T+4>>2];t[u+8>>2]=t[T+8>>2];t[T>>2]=0;t[T+4>>2]=0;t[T+8>>2]=0;xh(T);d=e;break}}}while(0);f[a>>0]=lM[t[(t[e>>2]|0)+12>>2]&127](e)|0;f[s>>0]=lM[t[(t[e>>2]|0)+16>>2]&127](e)|0;aM[t[(t[d>>2]|0)+20>>2]&127](m,e);if(!(f[l>>0]&1)){f[l+1>>0]=0;f[l>>0]=0}else{f[t[l+8>>2]>>0]=0;t[l+4>>2]=0}w=0;ce(91,l|0,0);s=w;w=0;if(s&1){s=je(0)|0;Ni(s)}t[l>>2]=t[m>>2];t[l+4>>2]=t[m+4>>2];t[l+8>>2]=t[m+8>>2];t[m>>2]=0;t[m+4>>2]=0;t[m+8>>2]=0;xh(m);aM[t[(t[d>>2]|0)+24>>2]&127](v,e);if(!(f[o>>0]&1)){f[o+1>>0]=0;f[o>>0]=0}else{f[t[o+8>>2]>>0]=0;t[o+4>>2]=0}w=0;ce(91,o|0,0);s=w;w=0;if(s&1){s=je(0)|0;Ni(s)}else{t[o>>2]=t[v>>2];t[o+4>>2]=t[v+4>>2];t[o+8>>2]=t[v+8>>2];t[v>>2]=0;t[v+4>>2]=0;t[v+8>>2]=0;xh(v);R=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;break}}}while(0);t[h>>2]=R;c=C;return}function tu(e,i,r,a,s,l,o,u,c,h,d,b,_,k,w){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;h=h|0;d=d|0;b=b|0;_=_|0;k=k|0;w=w|0;var m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0;t[r>>2]=e;F=k+4|0;H=k+8|0;U=k+1|0;x=_+4|0;L=(a&512|0)==0;B=_+8|0;z=_+1|0;D=o+8|0;N=(w|0)>0;S=b+4|0;T=b+8|0;R=b+1|0;C=w+1|0;I=-2-w-((w|0)<0?~w:-1)|0;O=(w|0)>0;E=0;do{switch(f[c+E>>0]|0){case 0:{t[i>>2]=t[r>>2];break}case 1:{t[i>>2]=t[r>>2];M=_M[t[(t[o>>2]|0)+28>>2]&63](o,32)|0;A=t[r>>2]|0;t[r>>2]=A+1;f[A>>0]=M;break}case 3:{A=f[k>>0]|0;m=(A&1)==0;if((m?(A&255)>>>1:t[F>>2]|0)|0){M=f[(m?U:t[H>>2]|0)>>0]|0;A=t[r>>2]|0;t[r>>2]=A+1;f[A>>0]=M}break}case 2:{p=f[_>>0]|0;m=(p&1)==0;p=m?(p&255)>>>1:t[x>>2]|0;if(!(L|(p|0)==0)){v=m?z:t[B>>2]|0;g=v+p|0;m=t[r>>2]|0;if(p)do{f[m>>0]=f[v>>0]|0;v=v+1|0;m=m+1|0}while((v|0)!=(g|0));t[r>>2]=m}break}case 4:{m=t[r>>2]|0;s=u?s+1|0:s;y=s;g=t[D>>2]|0;e:do{if(s>>>0<l>>>0){v=s;do{p=f[v>>0]|0;if(p<<24>>24<=-1)break e;if(!(n[g+(p<<24>>24<<1)>>1]&2048))break e;v=v+1|0}while(v>>>0<l>>>0)}else v=s}while(0);p=v;if(N){M=-2-p-~(p>>>0>y>>>0?y:p)|0;M=I>>>0>M>>>0?I:M;if(v>>>0>s>>>0&O){p=v;y=w;while(1){p=p+-1|0;A=f[p>>0]|0;g=t[r>>2]|0;t[r>>2]=g+1;f[g>>0]=A;g=(y|0)>1;if(!(p>>>0>s>>>0&g))break;else y=y+-1|0}}else g=O;A=C+M|0;p=v+(M+1)|0;if(g)y=_M[t[(t[o>>2]|0)+28>>2]&63](o,48)|0;else y=0;v=t[r>>2]|0;t[r>>2]=v+1;if((A|0)>0){g=A;while(1){f[v>>0]=y;v=t[r>>2]|0;t[r>>2]=v+1;if((g|0)>1)g=g+-1|0;else break}}f[v>>0]=h}else p=v;if((p|0)!=(s|0)){A=f[b>>0]|0;v=(A&1)==0;if(!((v?(A&255)>>>1:t[S>>2]|0)|0))v=-1;else v=f[(v?R:t[T>>2]|0)>>0]|0;if((p|0)!=(s|0)){g=0;y=0;while(1){if((y|0)==(v|0)){A=t[r>>2]|0;t[r>>2]=A+1;f[A>>0]=d;g=g+1|0;A=f[b>>0]|0;v=(A&1)==0;if(g>>>0<(v?(A&255)>>>1:t[S>>2]|0)>>>0){v=f[(v?R:t[T>>2]|0)+g>>0]|0;v=v<<24>>24==127?-1:v<<24>>24;y=0}else{v=y;y=0}}p=p+-1|0;M=f[p>>0]|0;A=t[r>>2]|0;t[r>>2]=A+1;f[A>>0]=M;if((p|0)==(s|0))break;else y=y+1|0}}}else{M=_M[t[(t[o>>2]|0)+28>>2]&63](o,48)|0;A=t[r>>2]|0;t[r>>2]=A+1;f[A>>0]=M}v=t[r>>2]|0;if((m|0)!=(v|0)?(P=v+-1|0,m>>>0<P>>>0):0){v=P;do{A=f[m>>0]|0;f[m>>0]=f[v>>0]|0;f[v>>0]=A;m=m+1|0;v=v+-1|0}while(m>>>0<v>>>0)}break}default:{}}E=E+1|0}while((E|0)!=4);v=f[k>>0]|0;s=(v&1)==0;v=s?(v&255)>>>1:t[F>>2]|0;if(v>>>0>1){m=s?U:t[H>>2]|0;p=m+v|0;s=t[r>>2]|0;if((v|0)!=1){m=m+1|0;do{f[s>>0]=f[m>>0]|0;s=s+1|0;m=m+1|0}while((m|0)!=(p|0))}t[r>>2]=s}switch(a&176|0){case 32:{t[i>>2]=t[r>>2];break}case 16:break;default:t[i>>2]=e}return}function au(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0;E=c;c=c+176|0;k=E+56|0;T=E+52|0;M=E+64|0;p=E+61|0;A=E+60|0;R=E+40|0;P=E+28|0;C=E+16|0;h=E+12|0;_=E+68|0;y=E+8|0;g=E+4|0;m=E;e=sd(n)|0;t[T>>2]=e;w=0;v=pe(37,T|0,44220)|0;b=w;w=0;do{if(b&1)I=13;else{d=f[s>>0]|0;l=(d&1)==0;b=s+4|0;if(!((l?(d&255)>>>1:t[b>>2]|0)|0))d=0;else{l=f[(l?s+1|0:t[s+8>>2]|0)>>0]|0;w=0;o=pe(t[(t[v>>2]|0)+28>>2]|0,v|0,45)|0;d=w;w=0;if(d&1){I=13;break}d=l<<24>>24==o<<24>>24}t[R>>2]=0;t[R+4>>2]=0;t[R+8>>2]=0;t[P>>2]=0;t[P+4>>2]=0;t[P+8>>2]=0;t[C>>2]=0;t[C+4>>2]=0;t[C+8>>2]=0;w=0;ve(3,r|0,d|0,T|0,M|0,p|0,A|0,R|0,P|0,C|0,h|0);u=w;w=0;if(!(u&1)){u=f[s>>0]|0;r=t[b>>2]|0;l=(u&1)==0?(u&255)>>>1:r;h=t[h>>2]|0;if((l|0)>(h|0)){O=f[C>>0]|0;o=f[P>>0]|0;l=(l-h<<1|1)+h+((O&1)==0?(O&255)>>>1:t[C+4>>2]|0)+((o&1)==0?(o&255)>>>1:t[P+4>>2]|0)|0}else{O=f[C>>0]|0;l=f[P>>0]|0;l=h+2+((O&1)==0?(O&255)>>>1:t[C+4>>2]|0)+((l&1)==0?(l&255)>>>1:t[P+4>>2]|0)|0}if(l>>>0>100){l=Pc(l)|0;o=l;if(!l){w=0;Se(6);O=w;w=0;if(!(O&1)){u=f[s>>0]|0;r=t[b>>2]|0;l=0;I=17}}else I=17}else{o=0;l=_;I=17}if((I|0)==17){O=(u&1)==0;s=O?s+1|0:t[s+8>>2]|0;w=0;ke(1,l|0,y|0,g|0,t[n+4>>2]|0,s|0,s+(O?(u&255)>>>1:r)|0,v|0,d|0,M|0,f[p>>0]|0,f[A>>0]|0,R|0,P|0,C|0,h|0);O=w;w=0;if(!(O&1)?(t[m>>2]=t[i>>2],O=t[y>>2]|0,S=t[g>>2]|0,w=0,t[k>>2]=t[m>>2],S=he(39,k|0,l|0,O|0,S|0,n|0,a|0)|0,O=w,w=0,!(O&1)):0){if(o){Ic(o);e=t[T>>2]|0}xh(C);xh(P);xh(R);bh(e)|0;c=E;return S|0}}l=je()|0;if(o){Ic(o);e=t[T>>2]|0}}else l=je()|0;xh(C);xh(P);xh(R)}}while(0);if((I|0)==13)l=je()|0;bh(e)|0;Qe(l|0);return 0}function su(e){e=e|0;return}function lu(e){e=e|0;Bp(e);return}function ou(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=+s;var l=0,o=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0;C=c;c=c+992|0;g=C+8|0;l=C;h=C+888|0;d=C+880|0;o=C+480|0;I=C+76|0;S=C+884|0;M=C+72|0;T=C+68|0;O=C+56|0;L=C+44|0;x=C+32|0;b=C+28|0;p=C+80|0;E=C+24|0;A=C+20|0;y=C+16|0;t[d>>2]=h;u[g>>3]=s;h=Iy(h,100,59018,g)|0;do{if(h>>>0>99){w=0;e=Me(3)|0;R=w;w=0;if(!(R&1)?(w=0,u[l>>3]=s,m=Ae(17,d|0,e|0,59018,l|0)|0,R=w,w=0,!(R&1)):0){e=t[d>>2]|0;if(!e){w=0;Se(6);R=w;w=0;if(R&1){e=0;l=0;R=7;break}e=t[d>>2]|0}o=Pc(m<<2)|0;l=o;if(!o){w=0;Se(6);R=w;w=0;if(R&1)R=7;else{v=0;R=10}}else{v=o;R=10}}else{e=0;l=0;R=7}}else{l=0;e=0;v=o;m=h;R=10}}while(0);if((R|0)==10){w=0;o=de(68,n|0)|0;k=w;w=0;if(k&1)R=7;else{t[I>>2]=o;w=0;k=pe(37,I|0,44212)|0;_=w;w=0;if(!(_&1)?(_=t[d>>2]|0,w=0,Ae(t[(t[k>>2]|0)+48>>2]|0,k|0,_|0,_+m|0,v|0)|0,_=w,w=0,!(_&1)):0){if(!m)_=0;else _=(f[t[d>>2]>>0]|0)==45;t[O>>2]=0;t[O+4>>2]=0;t[O+8>>2]=0;t[L>>2]=0;t[L+4>>2]=0;t[L+8>>2]=0;t[x>>2]=0;t[x+4>>2]=0;t[x+8>>2]=0;w=0;ve(4,r|0,_|0,I|0,S|0,M|0,T|0,O|0,L|0,x|0,b|0);r=w;w=0;if(!(r&1)){b=t[b>>2]|0;if((m|0)>(b|0)){r=f[x>>0]|0;h=f[L>>0]|0;h=(m-b<<1|1)+b+((r&1)==0?(r&255)>>>1:t[x+4>>2]|0)+((h&1)==0?(h&255)>>>1:t[L+4>>2]|0)|0}else{r=f[x>>0]|0;h=f[L>>0]|0;h=b+2+((r&1)==0?(r&255)>>>1:t[x+4>>2]|0)+((h&1)==0?(h&255)>>>1:t[L+4>>2]|0)|0}if(h>>>0>100){h=Pc(h<<2)|0;d=h;if(!h){w=0;Se(6);p=w;w=0;if(!(p&1)){h=0;R=26}}else R=26}else{d=0;h=p;R=26}if((R|0)==26){w=0;ke(2,h|0,E|0,A|0,t[n+4>>2]|0,v|0,v+(m<<2)|0,k|0,_|0,S|0,t[M>>2]|0,t[T>>2]|0,O|0,L|0,x|0,b|0);T=w;w=0;if(!(T&1)?(t[y>>2]=t[i>>2],i=t[E>>2]|0,P=t[A>>2]|0,w=0,t[g>>2]=t[y>>2],P=he(40,g|0,h|0,i|0,P|0,n|0,a|0)|0,i=w,w=0,!(i&1)):0){if(d){Ic(d);o=t[I>>2]|0}Xh(x);Xh(L);xh(O);bh(o)|0;if(l)Ic(l);if(e)Ic(e);c=C;return P|0}}h=je()|0;if(d){Ic(d);o=t[I>>2]|0}}else h=je()|0;Xh(x);Xh(L);xh(O)}else h=je()|0;bh(o)|0}}if((R|0)==7)h=je()|0;if(l)Ic(l);if(e)Ic(e);Qe(h|0);return 0}function uu(e,i,r,n,a,s,l,o,u,h){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;var d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0;T=c;c=c+112|0;d=T+108|0;b=T+96|0;m=T+92|0;v=T+80|0;p=T+68|0;g=T+56|0;y=T+52|0;M=T+40|0;A=T+36|0;E=T+24|0;_=T+12|0;k=T;do{if(e){e=zu(r,43956)|0;r=t[e>>2]|0;do{if(i){aM[t[r+44>>2]&127](d,e);i=t[d>>2]|0;f[n>>0]=i;f[n+1>>0]=i>>8;f[n+2>>0]=i>>16;f[n+3>>0]=i>>24;aM[t[(t[e>>2]|0)+32>>2]&127](b,e);if(!(f[u>>0]&1))f[u>>0]=0;else t[t[u+8>>2]>>2]=0;t[u+4>>2]=0;w=0;ce(93,u|0,0);n=w;w=0;if(n&1){u=je(0)|0;Ni(u)}else{t[u>>2]=t[b>>2];t[u+4>>2]=t[b+4>>2];t[u+8>>2]=t[b+8>>2];t[b>>2]=0;t[b+4>>2]=0;t[b+8>>2]=0;Xh(b);break}}else{aM[t[r+40>>2]&127](m,e);i=t[m>>2]|0;f[n>>0]=i;f[n+1>>0]=i>>8;f[n+2>>0]=i>>16;f[n+3>>0]=i>>24;aM[t[(t[e>>2]|0)+28>>2]&127](v,e);if(!(f[u>>0]&1))f[u>>0]=0;else t[t[u+8>>2]>>2]=0;t[u+4>>2]=0;w=0;ce(93,u|0,0);n=w;w=0;if(n&1){u=je(0)|0;Ni(u)}else{t[u>>2]=t[v>>2];t[u+4>>2]=t[v+4>>2];t[u+8>>2]=t[v+8>>2];t[v>>2]=0;t[v+4>>2]=0;t[v+8>>2]=0;Xh(v);break}}}while(0);t[a>>2]=lM[t[(t[e>>2]|0)+12>>2]&127](e)|0;t[s>>2]=lM[t[(t[e>>2]|0)+16>>2]&127](e)|0;aM[t[(t[e>>2]|0)+20>>2]&127](p,e);if(!(f[l>>0]&1)){f[l+1>>0]=0;f[l>>0]=0}else{f[t[l+8>>2]>>0]=0;t[l+4>>2]=0}w=0;ce(91,l|0,0);s=w;w=0;if(s&1){s=je(0)|0;Ni(s)}t[l>>2]=t[p>>2];t[l+4>>2]=t[p+4>>2];t[l+8>>2]=t[p+8>>2];t[p>>2]=0;t[p+4>>2]=0;t[p+8>>2]=0;xh(p);aM[t[(t[e>>2]|0)+24>>2]&127](g,e);if(!(f[o>>0]&1))f[o>>0]=0;else t[t[o+8>>2]>>2]=0;t[o+4>>2]=0;w=0;ce(93,o|0,0);s=w;w=0;if(s&1){s=je(0)|0;Ni(s)}else{t[o>>2]=t[g>>2];t[o+4>>2]=t[g+4>>2];t[o+8>>2]=t[g+8>>2];t[g>>2]=0;t[g+4>>2]=0;t[g+8>>2]=0;Xh(g);S=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;break}}else{e=zu(r,43892)|0;r=t[e>>2]|0;do{if(i){aM[t[r+44>>2]&127](y,e);i=t[y>>2]|0;f[n>>0]=i;f[n+1>>0]=i>>8;f[n+2>>0]=i>>16;f[n+3>>0]=i>>24;aM[t[(t[e>>2]|0)+32>>2]&127](M,e);if(!(f[u>>0]&1))f[u>>0]=0;else t[t[u+8>>2]>>2]=0;t[u+4>>2]=0;w=0;ce(93,u|0,0);n=w;w=0;if(n&1){u=je(0)|0;Ni(u)}else{t[u>>2]=t[M>>2];t[u+4>>2]=t[M+4>>2];t[u+8>>2]=t[M+8>>2];t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;Xh(M);break}}else{aM[t[r+40>>2]&127](A,e);i=t[A>>2]|0;f[n>>0]=i;f[n+1>>0]=i>>8;f[n+2>>0]=i>>16;f[n+3>>0]=i>>24;aM[t[(t[e>>2]|0)+28>>2]&127](E,e);if(!(f[u>>0]&1))f[u>>0]=0;else t[t[u+8>>2]>>2]=0;t[u+4>>2]=0;w=0;ce(93,u|0,0);n=w;w=0;if(n&1){u=je(0)|0;Ni(u)}else{t[u>>2]=t[E>>2];t[u+4>>2]=t[E+4>>2];t[u+8>>2]=t[E+8>>2];t[E>>2]=0;t[E+4>>2]=0;t[E+8>>2]=0;Xh(E);break}}}while(0);t[a>>2]=lM[t[(t[e>>2]|0)+12>>2]&127](e)|0;t[s>>2]=lM[t[(t[e>>2]|0)+16>>2]&127](e)|0;aM[t[(t[e>>2]|0)+20>>2]&127](_,e);if(!(f[l>>0]&1)){f[l+1>>0]=0;f[l>>0]=0}else{f[t[l+8>>2]>>0]=0;t[l+4>>2]=0}w=0;ce(91,l|0,0);s=w;w=0;if(s&1){s=je(0)|0;Ni(s)}t[l>>2]=t[_>>2];t[l+4>>2]=t[_+4>>2];t[l+8>>2]=t[_+8>>2];t[_>>2]=0;t[_+4>>2]=0;t[_+8>>2]=0;xh(_);aM[t[(t[e>>2]|0)+24>>2]&127](k,e);if(!(f[o>>0]&1))f[o>>0]=0;else t[t[o+8>>2]>>2]=0;t[o+4>>2]=0;w=0;ce(93,o|0,0);s=w;w=0;if(s&1){s=je(0)|0;Ni(s)}else{t[o>>2]=t[k>>2];t[o+4>>2]=t[k+4>>2];t[o+8>>2]=t[k+8>>2];t[k>>2]=0;t[k+4>>2]=0;t[k+8>>2]=0;Xh(k);S=lM[t[(t[e>>2]|0)+36>>2]&127](e)|0;break}}}while(0);t[h>>2]=S;c=T;return}function cu(e,i,r,n,a,s,l,o,u,c,h,d,b,_,k){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;h=h|0;d=d|0;b=b|0;_=_|0;k=k|0;var w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0;t[r>>2]=e;B=_+4|0;z=_+8|0;R=b+4|0;C=(n&512|0)==0;P=b+8|0;I=(k|0)>0;O=d+4|0;x=d+8|0;L=d+1|0;S=(k|0)>0;E=0;do{switch(f[u+E>>0]|0){case 0:{t[i>>2]=t[r>>2];break}case 1:{t[i>>2]=t[r>>2];M=_M[t[(t[l>>2]|0)+44>>2]&63](l,32)|0;A=t[r>>2]|0;t[r>>2]=A+4;t[A>>2]=M;break}case 3:{A=f[_>>0]|0;w=(A&1)==0;if((w?(A&255)>>>1:t[B>>2]|0)|0){M=t[(w?B:t[z>>2]|0)>>2]|0;A=t[r>>2]|0;t[r>>2]=A+4;t[A>>2]=M}break}case 2:{g=f[b>>0]|0;w=(g&1)==0;g=w?(g&255)>>>1:t[R>>2]|0;if(!(C|(g|0)==0)){w=w?R:t[P>>2]|0;v=w+(g<<2)|0;p=t[r>>2]|0;if(g){m=p;while(1){t[m>>2]=t[w>>2];w=w+4|0;if((w|0)==(v|0))break;else m=m+4|0}}t[r>>2]=p+(g<<2)}break}case 4:{w=t[r>>2]|0;a=o?a+4|0:a;e:do{if(a>>>0<s>>>0){m=a;do{if(!(uM[t[(t[l>>2]|0)+12>>2]&63](l,2048,t[m>>2]|0)|0))break e;m=m+4|0}while(m>>>0<s>>>0)}else m=a}while(0);if(I){if(m>>>0>a>>>0&S){g=t[r>>2]|0;p=k;while(1){m=m+-4|0;v=g+4|0;t[g>>2]=t[m>>2];y=p+-1|0;p=(p|0)>1;if(m>>>0>a>>>0&p){g=v;p=y}else{g=y;break}}t[r>>2]=v;v=g}else{p=S;v=k}if(p)y=_M[t[(t[l>>2]|0)+44>>2]&63](l,48)|0;else y=0;M=t[r>>2]|0;p=v+((v|0)<0?~v:-1)|0;if((v|0)>0){g=M;while(1){t[g>>2]=y;if((v|0)>1){g=g+4|0;v=v+-1|0}else break}}t[r>>2]=M+(p+2<<2);t[M+(p+1<<2)>>2]=c}if((m|0)==(a|0)){M=_M[t[(t[l>>2]|0)+44>>2]&63](l,48)|0;A=t[r>>2]|0;m=A+4|0;t[r>>2]=m;t[A>>2]=M}else{M=f[d>>0]|0;v=(M&1)==0;A=t[O>>2]|0;if(!((v?(M&255)>>>1:A)|0))v=-1;else v=f[(v?L:t[x>>2]|0)>>0]|0;if((m|0)!=(a|0)){y=0;M=0;while(1){p=t[r>>2]|0;if((M|0)==(v|0)){g=p+4|0;t[r>>2]=g;t[p>>2]=h;y=y+1|0;p=f[d>>0]|0;v=(p&1)==0;if(y>>>0<(v?(p&255)>>>1:A)>>>0){v=f[(v?L:t[x>>2]|0)+y>>0]|0;p=g;v=v<<24>>24==127?-1:v<<24>>24;g=0}else{p=g;v=M;g=0}}else g=M;m=m+-4|0;M=t[m>>2]|0;t[r>>2]=p+4;t[p>>2]=M;if((m|0)==(a|0))break;else M=g+1|0}}m=t[r>>2]|0}if((w|0)!=(m|0)?(T=m+-4|0,w>>>0<T>>>0):0){m=T;do{A=t[w>>2]|0;t[w>>2]=t[m>>2];t[m>>2]=A;w=w+4|0;m=m+-4|0}while(w>>>0<m>>>0)}break}default:{}}E=E+1|0}while((E|0)!=4);w=f[_>>0]|0;a=(w&1)==0;w=a?(w&255)>>>1:t[B>>2]|0;if(w>>>0>1){m=a?B:t[z>>2]|0;a=m+4|0;m=m+(w<<2)|0;v=t[r>>2]|0;p=m-a|0;if((w|0)!=1){w=v;while(1){t[w>>2]=t[a>>2];a=a+4|0;if((a|0)==(m|0))break;else w=w+4|0}}t[r>>2]=v+(p>>>2<<2)}switch(n&176|0){case 32:{t[i>>2]=t[r>>2];break}case 16:break;default:t[i>>2]=e}return}function hu(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0;E=c;c=c+480|0;_=E+468|0;T=E+464|0;M=E+472|0;p=E+56|0;A=E+52|0;R=E+40|0;P=E+28|0;C=E+16|0;h=E+12|0;b=E+64|0;y=E+8|0;g=E+4|0;k=E;e=sd(n)|0;t[T>>2]=e;w=0;m=pe(37,T|0,44212)|0;v=w;w=0;do{if(v&1)I=13;else{d=f[s>>0]|0;l=(d&1)==0;v=s+4|0;if(!((l?(d&255)>>>1:t[v>>2]|0)|0))d=0;else{l=t[(l?v:t[s+8>>2]|0)>>2]|0;w=0;o=pe(t[(t[m>>2]|0)+44>>2]|0,m|0,45)|0;d=w;w=0;if(d&1){I=13;break}d=(l|0)==(o|0)}t[R>>2]=0;t[R+4>>2]=0;t[R+8>>2]=0;t[P>>2]=0;t[P+4>>2]=0;t[P+8>>2]=0;t[C>>2]=0;t[C+4>>2]=0;t[C+8>>2]=0;w=0;ve(4,r|0,d|0,T|0,M|0,p|0,A|0,R|0,P|0,C|0,h|0);u=w;w=0;if(!(u&1)){u=f[s>>0]|0;r=t[v>>2]|0;l=(u&1)==0?(u&255)>>>1:r;h=t[h>>2]|0;if((l|0)>(h|0)){O=f[C>>0]|0;o=f[P>>0]|0;l=(l-h<<1|1)+h+((O&1)==0?(O&255)>>>1:t[C+4>>2]|0)+((o&1)==0?(o&255)>>>1:t[P+4>>2]|0)|0}else{O=f[C>>0]|0;l=f[P>>0]|0;l=h+2+((O&1)==0?(O&255)>>>1:t[C+4>>2]|0)+((l&1)==0?(l&255)>>>1:t[P+4>>2]|0)|0}if(l>>>0>100){l=Pc(l<<2)|0;o=l;if(!l){w=0;Se(6);O=w;w=0;if(!(O&1)){u=f[s>>0]|0;r=t[v>>2]|0;l=0;I=17}}else I=17}else{o=0;l=b;I=17}if((I|0)==17){O=(u&1)==0;s=O?v:t[s+8>>2]|0;w=0;ke(2,l|0,y|0,g|0,t[n+4>>2]|0,s|0,s+((O?(u&255)>>>1:r)<<2)|0,m|0,d|0,M|0,t[p>>2]|0,t[A>>2]|0,R|0,P|0,C|0,h|0);O=w;w=0;if(!(O&1)?(t[k>>2]=t[i>>2],O=t[y>>2]|0,S=t[g>>2]|0,w=0,t[_>>2]=t[k>>2],S=he(40,_|0,l|0,O|0,S|0,n|0,a|0)|0,O=w,w=0,!(O&1)):0){if(o){Ic(o);e=t[T>>2]|0}Xh(C);Xh(P);xh(R);bh(e)|0;c=E;return S|0}}l=je()|0;if(o){Ic(o);e=t[T>>2]|0}}else l=je()|0;Xh(C);Xh(P);xh(R)}}while(0);if((I|0)==13)l=je()|0;bh(e)|0;Qe(l|0);return 0}function du(e){e=e|0;return}function bu(e){e=e|0;Bp(e);return}function _u(e,i,r){e=e|0;i=i|0;r=r|0;e=qg((f[i>>0]&1)==0?i+1|0:t[i+8>>2]|0,1)|0;return e>>>((e|0)!=(-1|0)&1)|0}function ku(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0;o=c;c=c+16|0;u=o;t[u>>2]=0;t[u+4>>2]=0;t[u+8>>2]=0;l=f[s>>0]|0;h=(l&1)==0;i=h?s+1|0:t[s+8>>2]|0;l=h?(l&255)>>>1:t[s+4>>2]|0;s=i+l|0;e:do{if((l|0)>0){while(1){w=0;ce(67,u|0,f[i>>0]|0);h=w;w=0;if(h&1)break;i=i+1|0;if(i>>>0>=s>>>0){l=4;break e}}i=je()|0;l=7}else l=4}while(0);e:do{if((l|0)==4){w=0;i=Ae(19,((r|0)==-1?-1:r<<1)|0,n|0,a|0,((f[u>>0]&1)==0?u+1|0:t[u+8>>2]|0)|0)|0;h=w;w=0;if(h&1){i=je()|0;l=7;break}t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;h=Vy(i)|0;s=i+h|0;i:do{if((h|0)>0){while(1){w=0;ce(67,e|0,f[i>>0]|0);h=w;w=0;if(h&1)break;i=i+1|0;if(i>>>0>=s>>>0)break i}i=je()|0;xh(e);break e}}while(0);xh(u);c=o;return}}while(0);xh(u);Qe(i|0)}function wu(e,i){e=e|0;i=i|0;return}function mu(e){e=e|0;return}function vu(e){e=e|0;Bp(e);return}function pu(e,i,r){e=e|0;i=i|0;r=r|0;e=qg((f[i>>0]&1)==0?i+1|0:t[i+8>>2]|0,1)|0;return e>>>((e|0)!=(-1|0)&1)|0}function gu(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0;y=c;c=c+224|0;b=y+184|0;d=y+192|0;h=y+180|0;_=y+176|0;p=y+168|0;v=y+40|0;m=y+32|0;g=y+28|0;M=y+16|0;u=y+8|0;k=y;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;t[u+4>>2]=0;t[u>>2]=44696;o=f[s>>0]|0;A=(o&1)==0;l=s+4|0;i=A?l:t[s+8>>2]|0;s=A?(o&255)>>>1:t[l>>2]|0;l=i+(s<<2)|0;o=d+32|0;e:do{if((s|0)>0){i:while(1){t[_>>2]=i;w=0;s=Te(t[(t[u>>2]|0)+12>>2]|0,u|0,b|0,i|0,l|0,_|0,d|0,o|0,h|0)|0;A=w;w=0;if(A&1){s=12;break}if((s|0)==2?1:(t[_>>2]|0)==(i|0)){s=5;break}if(d>>>0<(t[h>>2]|0)>>>0){i=d;do{w=0;ce(67,M|0,f[i>>0]|0);A=w;w=0;if(A&1){s=11;break i}i=i+1|0}while(i>>>0<(t[h>>2]|0)>>>0)}i=t[_>>2]|0;if(!((s|0)!=2&i>>>0<l>>>0)){s=9;break e}}if((s|0)==5){w=0;ue(190,58955);w=0;i=je()|0}else if((s|0)==11)i=je()|0;else if((s|0)==12)i=je()|0}else s=9}while(0);e:do{if((s|0)==9){w=0;i=Ae(19,((r|0)==-1?-1:r<<1)|0,n|0,a|0,((f[M>>0]&1)==0?M+1|0:t[M+8>>2]|0)|0)|0;A=w;w=0;if(A&1){i=je()|0;break}t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[k+4>>2]=0;t[k>>2]=44744;A=Vy(i)|0;l=i+A|0;o=l;u=v+128|0;i:do{if((A|0)>0){r:while(1){t[g>>2]=i;w=0;s=Te(t[(t[k>>2]|0)+16>>2]|0,k|0,p|0,i|0,((o-i|0)>32?i+32|0:l)|0,g|0,v|0,u|0,m|0)|0;A=w;w=0;if(A&1){s=24;break}if((s|0)==2?1:(t[g>>2]|0)==(i|0)){s=18;break}if(v>>>0<(t[m>>2]|0)>>>0){i=v;do{w=0;ce(92,e|0,t[i>>2]|0);A=w;w=0;if(A&1){s=23;break r}i=i+4|0}while(i>>>0<(t[m>>2]|0)>>>0)}i=t[g>>2]|0;if(!((s|0)!=2&i>>>0<l>>>0))break i}if((s|0)==18){w=0;ue(190,58955);w=0;i=je()|0}else if((s|0)==23)i=je()|0;else if((s|0)==24)i=je()|0;Xh(e);break e}}while(0);xh(M);c=y;return}}while(0);xh(M);Qe(i|0)}function yu(e,i){e=e|0;i=i|0;return}function Mu(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0;t[e+4>>2]=i+-1;t[e>>2]=44196;s=e+8|0;w=0;ce(94,s|0,28);a=w;w=0;if(a&1)i=je()|0;else{a=e+144|0;w=0;Ee(5,a|0,58885,1);n=w;w=0;if(n&1)i=je()|0;else{r=t[s>>2]|0;n=e+12|0;i=t[n>>2]|0;if((i|0)!=(r|0)){do{i=i+-4|0}while((i|0)!=(r|0));t[n>>2]=i}t[495]=0;t[494]=43124;w=0;ce(95,e|0,1976);n=w;w=0;do{if(((((((((((((!(n&1)?(t[497]=0,t[496]=43164,w=0,ce(96,e|0,1984),n=w,w=0,!(n&1)):0)?(t[499]=0,t[498]=44236,t[500]=0,f[2004]=0,t[500]=ju()|0,w=0,ce(97,e|0,1992),n=w,w=0,!(n&1)):0)?(t[503]=0,t[502]=44484,w=0,ce(98,e|0,2008),n=w,w=0,!(n&1)):0)?(t[505]=0,t[504]=44552,w=0,ce(99,e|0,2016),n=w,w=0,!(n&1)):0)?(w=0,ce(100,2024,1),n=w,w=0,!(n&1)):0)?(w=0,ce(101,e|0,2024),n=w,w=0,!(n&1)):0)?(t[511]=0,t[510]=44600,w=0,ce(102,e|0,2040),n=w,w=0,!(n&1)):0)?(t[513]=0,t[512]=44648,w=0,ce(103,e|0,2048),n=w,w=0,!(n&1)):0)?(tk(2056,1),w=0,ce(104,e|0,2056),n=w,w=0,!(n&1)):0)?(ak(2080,1),w=0,ce(105,e|0,2080),n=w,w=0,!(n&1)):0)?(t[529]=0,t[528]=43204,w=0,ce(106,e|0,2112),n=w,w=0,!(n&1)):0)?(t[531]=0,t[530]=43276,w=0,ce(107,e|0,2120),n=w,w=0,!(n&1)):0)?(t[533]=0,t[532]=43348,w=0,ce(108,e|0,2128),n=w,w=0,!(n&1)):0){t[535]=0;t[534]=43408;w=0;ce(109,e|0,2136);n=w;w=0;if(n&1){l=42;break}t[537]=0;t[536]=43716;w=0;ce(110,e|0,2144);n=w;w=0;if(n&1){l=42;break}t[539]=0;t[538]=43780;w=0;ce(111,e|0,2152);n=w;w=0;if(n&1){l=42;break}t[541]=0;t[540]=43844;w=0;ce(112,e|0,2160);n=w;w=0;if(n&1){l=42;break}t[543]=0;t[542]=43908;w=0;ce(113,e|0,2168);n=w;w=0;if(n&1){l=42;break}t[545]=0;t[544]=43972;w=0;ce(114,e|0,2176);n=w;w=0;if(n&1){l=42;break}t[547]=0;t[546]=44008;w=0;ce(115,e|0,2184);n=w;w=0;if(n&1){l=42;break}t[549]=0;t[548]=44044;w=0;ce(116,e|0,2192);n=w;w=0;if(n&1){l=42;break}t[551]=0;t[550]=44080;w=0;ce(117,e|0,2200);n=w;w=0;if(n&1){l=42;break}t[553]=0;t[552]=43468;t[554]=43516;w=0;ce(118,e|0,2208);n=w;w=0;if(n&1){l=42;break}t[557]=0;t[556]=43560;t[558]=43608;w=0;ce(119,e|0,2224);n=w;w=0;if(n&1){l=42;break}t[561]=0;t[560]=44464;w=0;i=Me(3)|0;n=w;w=0;if(n&1){i=je()|0;break}t[562]=i;t[560]=43652;w=0;ce(120,e|0,2240);n=w;w=0;if(n&1){l=42;break}t[565]=0;t[564]=44464;w=0;i=Me(3)|0;n=w;w=0;if(n&1){i=je()|0;break}t[566]=i;t[564]=43684;w=0;ce(121,e|0,2256);l=w;w=0;if(l&1){l=42;break}t[569]=0;t[568]=44116;w=0;ce(122,e|0,2272);l=w;w=0;if(l&1){l=42;break}t[571]=0;t[570]=44156;w=0;ce(123,e|0,2280);l=w;w=0;if(l&1){l=42;break}return}else l=42}while(0);if((l|0)==42)i=je()|0;xh(a)}Yw(s)}Qe(i|0)}function Au(){var e=0;do{if((f[2288]|0)==0?(ze(2288)|0)!=0:0){w=0;Me(4)|0;e=w;w=0;if(e&1){e=je()|0;gi(2288);Qe(e|0)}else{t[11246]=44980;qe(2288);break}}}while(0);return t[11246]|0}function Eu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0;dh(i);n=e+8|0;f=t[n>>2]|0;do{if((t[e+12>>2]|0)-f>>2>>>0<=r>>>0){w=0;ce(124,n|0,r+1|0);e=w;w=0;if(!(e&1)){f=t[n>>2]|0;break}f=je()|0;if(i)bh(i)|0;Qe(f|0)}}while(0);e=t[f+(r<<2)>>2]|0;if(e){bh(e)|0;f=t[n>>2]|0}t[f+(r<<2)>>2]=i;return}function Su(e){e=e|0;var i=0,r=0,f=0,n=0;t[e>>2]=44196;f=e+8|0;n=e+12|0;i=t[f>>2]|0;if((t[n>>2]|0)!=(i|0)){r=0;do{i=t[i+(r<<2)>>2]|0;if(i)bh(i)|0;r=r+1|0;i=t[f>>2]|0}while(r>>>0<(t[n>>2]|0)-i>>2>>>0)}xh(e+144|0);Yw(f);return}function Tu(e){e=e|0;Su(e);Bp(e);return}function Ru(e,i){e=e|0;i=i|0;if($w(e,i)|0)return t[(t[e+8>>2]|0)+(i<<2)>>2]|0;else{e=Ue(4)|0;Kp(e);bi(e|0,640,82)}return 0}function Cu(){Mu(2296,1);t[11245]=2296;return 44980}function Pu(){var e=0;e=t[(Au()|0)>>2]|0;t[11247]=e;dh(e);return 44988}function Iu(){var e=0;do{if((f[2456]|0)==0?(ze(2456)|0)!=0:0){w=0;Me(5)|0;e=w;w=0;if(e&1){e=je()|0;gi(2456);Qe(e|0)}else{t[11248]=44988;qe(2456);break}}}while(0);return t[11248]|0}function Ou(e){e=e|0;var i=0,r=0;w=0;i=Me(6)|0;r=w;w=0;if(r&1){r=je(0)|0;Ni(r)}else{r=t[i>>2]|0;t[e>>2]=r;dh(r);return}}function xu(e,i){e=e|0;i=i|0;i=t[i>>2]|0;t[e>>2]=i;dh(i);return}function Lu(e){e=e|0;bh(t[e>>2]|0)|0;return}function Bu(e){e=e|0;var i=0,r=0;r=c;c=c+16|0;i=r;if((t[e>>2]|0)!=-1){t[i>>2]=e;t[i+4>>2]=191;t[i+8>>2]=0;Ch(e,i,192)}c=r;return(t[e+4>>2]|0)+-1|0}function zu(e,i){e=e|0;i=i|0;e=t[e>>2]|0;return Ru(e,Bu(i)|0)|0}function Du(e){e=e|0;Bp(e);return}function Nu(e){e=e|0;if(e)tM[t[(t[e>>2]|0)+4>>2]&255](e);return}function Fu(e){e=e|0;var i=0;i=t[11052]|0;t[11052]=i+1;t[e+4>>2]=i+1;return}function Hu(e){e=e|0;Bp(e);return}function Uu(e,i,r){e=e|0;i=i|0;r=r|0;if(r>>>0<128)r=(n[(ju()|0)+(r<<1)>>1]&i)<<16>>16!=0;else r=0;return r|0}function ju(){var e=0,i=0;w=0;e=Me(7)|0;i=w;w=0;if(i&1){i=je(0)|0;Ni(i)}else return t[e>>2]|0;return 0}function Yu(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var a=0,l=0;l=(r-i|0)>>>2;if((i|0)!=(r|0)){a=i;while(1){e=t[a>>2]|0;if(e>>>0<128)e=s[(ju()|0)+(e<<1)>>1]|0;else e=0;n[f>>1]=e;a=a+4|0;if((a|0)==(r|0))break;else f=f+2|0}}return i+(l<<2)|0}function qu(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;e:do{if((r|0)==(f|0))r=f;else while(1){e=t[r>>2]|0;if(e>>>0<128?(n[(ju()|0)+(e<<1)>>1]&i)<<16>>16!=0:0)break e;r=r+4|0;if((r|0)==(f|0)){r=f;break}}}while(0);return r|0}function $u(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;e:do{if((r|0)==(f|0))r=f;else while(1){e=t[r>>2]|0;if(e>>>0>=128)break e;if(!((n[(ju()|0)+(e<<1)>>1]&i)<<16>>16))break e;r=r+4|0;if((r|0)==(f|0)){r=f;break}}}while(0);return r|0}function Vu(e,i){e=e|0;i=i|0;if(i>>>0<128)i=t[(Xu()|0)+(i<<2)>>2]|0;return i|0}function Xu(){var e=0,i=0;w=0;e=Me(8)|0;i=w;w=0;if(i&1){i=je(0)|0;Ni(i)}else return t[e>>2]|0;return 0}function Gu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0;n=(r-i|0)>>>2;if((i|0)!=(r|0)){f=i;do{e=t[f>>2]|0;if(e>>>0<128)e=t[(Xu()|0)+(e<<2)>>2]|0;t[f>>2]=e;f=f+4|0}while((f|0)!=(r|0))}return i+(n<<2)|0}function Ku(e,i){e=e|0;i=i|0;if(i>>>0<128)i=t[(Wu()|0)+(i<<2)>>2]|0;return i|0}function Wu(){var e=0,i=0;w=0;e=Me(9)|0;i=w;w=0;if(i&1){i=je(0)|0;Ni(i)}else return t[e>>2]|0;return 0}function Zu(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0;n=(r-i|0)>>>2;if((i|0)!=(r|0)){f=i;do{e=t[f>>2]|0;if(e>>>0<128)e=t[(Wu()|0)+(e<<2)>>2]|0;t[f>>2]=e;f=f+4|0}while((f|0)!=(r|0))}return i+(n<<2)|0}function Ju(e,i){e=e|0;i=i|0;return i<<24>>24|0}function Qu(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;if((i|0)!=(r|0))while(1){t[n>>2]=f[i>>0];i=i+1|0;if((i|0)==(r|0))break;else n=n+4|0}return r|0}function ec(e,i,r){e=e|0;i=i|0;r=r|0;return(i>>>0<128?i&255:r)|0}function ic(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=(r-i|0)>>>2;if((i|0)!=(r|0)){s=i;e=a;while(1){a=t[s>>2]|0;f[e>>0]=a>>>0<128?a&255:n;s=s+4|0;if((s|0)==(r|0))break;else e=e+1|0}}return i+(l<<2)|0}function rc(e){e=e|0;var i=0;t[e>>2]=44236;i=t[e+8>>2]|0;if((i|0)!=0?(f[e+12>>0]|0)!=0:0)zp(i);return}function fc(e){e=e|0;rc(e);Bp(e);return}function nc(e,i){e=e|0;i=i|0;if(i<<24>>24>-1)i=t[(Xu()|0)+((i&255)<<2)>>2]&255;return i|0}function tc(e,i,r){e=e|0;i=i|0;r=r|0;if((i|0)!=(r|0)){e=i;do{i=f[e>>0]|0;if(i<<24>>24>-1)i=t[(Xu()|0)+(i<<24>>24<<2)>>2]&255;f[e>>0]=i;e=e+1|0}while((e|0)!=(r|0))}return r|0}function ac(e,i){e=e|0;i=i|0;if(i<<24>>24>-1)i=t[(Wu()|0)+(i<<24>>24<<2)>>2]&255;return i|0}function sc(e,i,r){e=e|0;i=i|0;r=r|0;if((i|0)!=(r|0)){e=i;do{i=f[e>>0]|0;if(i<<24>>24>-1)i=t[(Wu()|0)+(i<<24>>24<<2)>>2]&255;f[e>>0]=i;e=e+1|0}while((e|0)!=(r|0))}return r|0}function lc(e,i){e=e|0;i=i|0;return i|0}function oc(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;if((i|0)!=(r|0))while(1){f[n>>0]=f[i>>0]|0;i=i+1|0;if((i|0)==(r|0))break;else n=n+1|0}return r|0}function uc(e,i,r){e=e|0;i=i|0;r=r|0;return(i<<24>>24>-1?i:r)|0}function cc(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;if((i|0)!=(r|0))while(1){e=f[i>>0]|0;f[t>>0]=e<<24>>24>-1?e:n;i=i+1|0;if((i|0)==(r|0))break;else t=t+1|0}return r|0}function hc(e){e=e|0;Bp(e);return}function dc(e,i,r,f,n,a,s,l){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;l=l|0;t[n>>2]=r;t[l>>2]=a;return 3}function bc(e,i,r,f,n,a,s,l){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;l=l|0;t[n>>2]=r;t[l>>2]=a;return 3}function _c(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t[n>>2]=r;return 3}function kc(e){e=e|0;return 1}function wc(e){e=e|0;return 1}function mc(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;e=f-r|0;return(e>>>0<n>>>0?e:n)|0}function vc(e){e=e|0;return 1}function pc(e,i){e=e|0;i=i|0;var r=0;t[e+4>>2]=i+-1;t[e>>2]=44304;w=0;i=Me(3)|0;r=w;w=0;if(r&1){r=je()|0;Qe(r|0)}else{t[e+8>>2]=i;return}}function gc(e){e=e|0;zk(e);Bp(e);return}function yc(e,i,r,s,l){e=e|0;i=i|0;r=r|0;s=s|0;l=l|0;var o=0,h=0,b=0,_=0,k=0.0,w=0,m=0,v=0,p=0,g=0.0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0,V=0,X=0,G=0,K=0,W=0,Z=0,J=0,Q=0,ee=0,ie=0,fe=0,ne=0,te=0,ae=0,se=0;se=c;c=c+624|0;ie=se+24|0;ne=se+16|0;fe=se+588|0;W=se+576|0;ee=se;X=se+536|0;ae=se+8|0;te=se+528|0;N=(e|0)!=0;F=X+40|0;V=F;X=X+39|0;G=ae+4|0;K=W+12|0;W=W+11|0;Z=fe;J=K;Q=J-Z|0;H=-2-Z|0;U=J+2|0;j=ie+288|0;Y=fe+9|0;q=Y;$=fe+8|0;o=0;y=i;h=0;i=0;e:while(1){do{if((o|0)>-1)if((h|0)>(2147483647-o|0)){t[(Bg()|0)>>2]=75;o=-1;break}else{o=h+o|0;break}}while(0);h=f[y>>0]|0;if(!(h<<24>>24)){D=245;break}else b=y;i:while(1){switch(h<<24>>24){case 37:{h=b;D=9;break i}case 0:{h=b;break i}default:{}}z=b+1|0;h=f[z>>0]|0;b=z}i:do{if((D|0)==9)while(1){D=0;if((f[h+1>>0]|0)!=37)break i;b=b+1|0;h=h+2|0;if((f[h>>0]|0)==37)D=9;else break}}while(0);A=b-y|0;if(N?(t[e>>2]&32|0)==0:0)Ry(y,A,e)|0;if((b|0)!=(y|0)){y=h;h=A;continue}w=h+1|0;b=f[w>>0]|0;_=(b<<24>>24)+-48|0;if(_>>>0<10){z=(f[h+2>>0]|0)==36;w=z?h+3|0:w;b=f[w>>0]|0;p=z?_:-1;i=z?1:i}else p=-1;h=b<<24>>24;i:do{if((h&-32|0)==32){_=0;while(1){if(!(1<<h+-32&75913)){m=_;h=w;break i}_=1<<(b<<24>>24)+-32|_;w=w+1|0;b=f[w>>0]|0;h=b<<24>>24;if((h&-32|0)!=32){m=_;h=w;break}}}else{m=0;h=w}}while(0);do{if(b<<24>>24==42){_=h+1|0;b=(f[_>>0]|0)+-48|0;if(b>>>0<10?(f[h+2>>0]|0)==36:0){t[l+(b<<2)>>2]=10;i=1;h=h+3|0;b=t[s+((f[_>>0]|0)+-48<<3)>>2]|0}else{if(i){o=-1;break e}if(!N){M=m;h=_;i=0;z=0;break}i=(t[r>>2]|0)+(4-1)&~(4-1);b=t[i>>2]|0;t[r>>2]=i+4;i=0;h=_}if((b|0)<0){M=m|8192;z=0-b|0}else{M=m;z=b}}else{_=(b<<24>>24)+-48|0;if(_>>>0<10){b=0;do{b=(b*10|0)+_|0;h=h+1|0;_=(f[h>>0]|0)+-48|0}while(_>>>0<10);if((b|0)<0){o=-1;break e}else{M=m;z=b}}else{M=m;z=0}}}while(0);i:do{if((f[h>>0]|0)==46){_=h+1|0;b=f[_>>0]|0;if(b<<24>>24!=42){w=(b<<24>>24)+-48|0;if(w>>>0<10){h=_;b=0}else{h=_;w=0;break}while(1){b=(b*10|0)+w|0;h=h+1|0;w=(f[h>>0]|0)+-48|0;if(w>>>0>=10){w=b;break i}}}_=h+2|0;b=(f[_>>0]|0)+-48|0;if(b>>>0<10?(f[h+3>>0]|0)==36:0){t[l+(b<<2)>>2]=10;h=h+4|0;w=t[s+((f[_>>0]|0)+-48<<3)>>2]|0;break}if(i){o=-1;break e}if(N){h=(t[r>>2]|0)+(4-1)&~(4-1);w=t[h>>2]|0;t[r>>2]=h+4;h=_}else{h=_;w=0}}else w=-1}while(0);v=0;while(1){b=(f[h>>0]|0)+-65|0;if(b>>>0>57){o=-1;break e}_=h+1|0;b=f[56223+(v*58|0)+b>>0]|0;m=b&255;if((m+-1|0)>>>0<8){h=_;v=m}else{B=_;break}}if(!(b<<24>>24)){o=-1;break}_=(p|0)>-1;do{if(b<<24>>24==19)if(_){o=-1;break e}else D=52;else{if(_){t[l+(p<<2)>>2]=m;x=s+(p<<3)|0;L=t[x+4>>2]|0;D=ee;t[D>>2]=t[x>>2];t[D+4>>2]=L;D=52;break}if(!N){o=0;break e}Tc(ee,m,r)}}while(0);if((D|0)==52?(D=0,!N):0){y=B;h=A;continue}p=f[h>>0]|0;p=(v|0)!=0&(p&15|0)==3?p&-33:p;_=M&-65537;L=(M&8192|0)==0?M:_;i:do{switch(p|0){case 110:switch(v|0){case 0:{t[t[ee>>2]>>2]=o;y=B;h=A;continue e}case 1:{t[t[ee>>2]>>2]=o;y=B;h=A;continue e}case 2:{y=t[ee>>2]|0;t[y>>2]=o;t[y+4>>2]=((o|0)<0)<<31>>31;y=B;h=A;continue e}case 3:{n[t[ee>>2]>>1]=o;y=B;h=A;continue e}case 4:{f[t[ee>>2]>>0]=o;y=B;h=A;continue e}case 6:{t[t[ee>>2]>>2]=o;y=B;h=A;continue e}case 7:{y=t[ee>>2]|0;t[y>>2]=o;t[y+4>>2]=((o|0)<0)<<31>>31;y=B;h=A;continue e}default:{y=B;h=A;continue e}}case 112:{v=L|8;w=w>>>0>8?w:8;p=120;D=64;break}case 88:case 120:{v=L;D=64;break}case 111:{_=ee;b=t[_>>2]|0;_=t[_+4>>2]|0;if((b|0)==0&(_|0)==0)h=F;else{h=F;do{h=h+-1|0;f[h>>0]=b&7|48;b=Am(b|0,_|0,3)|0;_=O}while(!((b|0)==0&(_|0)==0))}if(!(L&8)){b=L;v=0;m=56703;D=77}else{v=V-h+1|0;b=L;w=(w|0)<(v|0)?v:w;v=0;m=56703;D=77}break}case 105:case 100:{b=ee;h=t[b>>2]|0;b=t[b+4>>2]|0;if((b|0)<0){h=gm(0,0,h|0,b|0)|0;b=O;_=ee;t[_>>2]=h;t[_+4>>2]=b;_=1;m=56703;D=76;break i}if(!(L&2048)){m=L&1;_=m;m=(m|0)==0?56703:56705;D=76}else{_=1;m=56704;D=76}break}case 117:{b=ee;h=t[b>>2]|0;b=t[b+4>>2]|0;_=0;m=56703;D=76;break}case 99:{f[X>>0]=t[ee>>2];y=X;b=1;v=0;p=56703;h=F;break}case 109:{h=zg(t[(Bg()|0)>>2]|0)|0;D=82;break}case 115:{h=t[ee>>2]|0;h=(h|0)!=0?h:56713;D=82;break}case 67:{t[ae>>2]=t[ee>>2];t[G>>2]=0;t[ee>>2]=ae;w=-1;D=86;break}case 83:{if(!w){Cc(e,32,z,0,L);h=0;D=98}else D=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=+u[ee>>3];t[ne>>2]=0;u[d>>3]=k;if((t[d+4>>2]|0)>=0)if(!(L&2048)){x=L&1;I=x;x=(x|0)==0?56721:56726}else{I=1;x=56723}else{k=-k;I=1;x=56720}u[d>>3]=k;P=t[d+4>>2]&2146435072;do{if(P>>>0<2146435072|(P|0)==2146435072&0<0){g=+iy(k,ne)*2.0;b=g!=0.0;if(b)t[ne>>2]=(t[ne>>2]|0)+-1;R=p|32;if((R|0)==97){y=p&32;A=(y|0)==0?x:x+9|0;M=I|2;h=12-w|0;do{if(!(w>>>0>11|(h|0)==0)){k=8.0;do{h=h+-1|0;k=k*16.0}while((h|0)!=0);if((f[A>>0]|0)==45){k=-(k+(-g-k));break}else{k=g+k-k;break}}else k=g}while(0);b=t[ne>>2]|0;h=(b|0)<0?0-b|0:b;h=Rc(h,((h|0)<0)<<31>>31,K)|0;if((h|0)==(K|0)){f[W>>0]=48;h=W}f[h+-1>>0]=(b>>31&2)+43;v=h+-2|0;f[v>>0]=p+15;m=(w|0)<1;_=(L&8|0)==0;b=fe;while(1){x=~~k;h=b+1|0;f[b>>0]=a[56687+x>>0]|y;k=(k-+(x|0))*16.0;do{if((h-Z|0)==1){if(_&(m&k==0.0))break;f[h>>0]=46;h=b+2|0}}while(0);if(!(k!=0.0))break;else b=h}w=(w|0)!=0&(H+h|0)<(w|0)?U+w-v|0:Q-v+h|0;_=w+M|0;Cc(e,32,z,_,L);if(!(t[e>>2]&32))Ry(A,M,e)|0;Cc(e,48,z,_,L^65536);h=h-Z|0;if(!(t[e>>2]&32))Ry(fe,h,e)|0;b=J-v|0;Cc(e,48,w-(h+b)|0,0,0);if(!(t[e>>2]&32))Ry(v,b,e)|0;Cc(e,32,z,_,L^8192);h=(_|0)<(z|0)?z:_;break}h=(w|0)<0?6:w;if(b){b=(t[ne>>2]|0)+-28|0;t[ne>>2]=b;k=g*268435456.0}else{k=g;b=t[ne>>2]|0}P=(b|0)<0?ie:j;C=P;b=P;do{T=~~k>>>0;t[b>>2]=T;b=b+4|0;k=(k-+(T>>>0))*1.0e9}while(k!=0.0);_=b;b=t[ne>>2]|0;if((b|0)>0){m=P;while(1){v=(b|0)>29?29:b;w=_+-4|0;do{if(w>>>0<m>>>0)w=m;else{b=0;do{T=Sm(t[w>>2]|0,0,v|0)|0;T=Mm(T|0,O|0,b|0,0)|0;b=O;S=Bm(T|0,b|0,1e9,0)|0;t[w>>2]=S;b=Lm(T|0,b|0,1e9,0)|0;w=w+-4|0}while(w>>>0>=m>>>0);if(!b){w=m;break}w=m+-4|0;t[w>>2]=b}}while(0);while(1){if(_>>>0<=w>>>0)break;b=_+-4|0;if(!(t[b>>2]|0))_=b;else break}b=(t[ne>>2]|0)-v|0;t[ne>>2]=b;if((b|0)>0)m=w;else break}}else w=P;if((b|0)<0){A=((h+25|0)/9|0)+1|0;E=(R|0)==102;y=w;while(1){M=0-b|0;M=(M|0)>9?9:M;do{if(y>>>0<_>>>0){b=(1<<M)+-1|0;m=1e9>>>M;w=0;v=y;do{T=t[v>>2]|0;t[v>>2]=(T>>>M)+w;w=re(T&b,m)|0;v=v+4|0}while(v>>>0<_>>>0);b=(t[y>>2]|0)==0?y+4|0:y;if(!w){w=b;break}t[_>>2]=w;w=b;_=_+4|0}else w=(t[y>>2]|0)==0?y+4|0:y}while(0);b=E?P:w;_=(_-b>>2|0)>(A|0)?b+(A<<2)|0:_;b=(t[ne>>2]|0)+M|0;t[ne>>2]=b;if((b|0)>=0){y=w;break}else y=w}}else y=w;do{if(y>>>0<_>>>0){b=(C-y>>2)*9|0;m=t[y>>2]|0;if(m>>>0<10)break;else w=10;do{w=w*10|0;b=b+1|0}while(m>>>0>=w>>>0)}else b=0}while(0);S=(R|0)==103;T=(h|0)!=0;w=h-((R|0)!=102?b:0)+((T&S)<<31>>31)|0;if((w|0)<(((_-C>>2)*9|0)+-9|0)){v=w+9216|0;E=(v|0)/9|0;w=P+(E+-1023<<2)|0;v=((v|0)%9|0)+1|0;if((v|0)<9){m=10;do{m=m*10|0;v=v+1|0}while((v|0)!=9)}else m=10;M=t[w>>2]|0;A=(M>>>0)%(m>>>0)|0;if((A|0)==0?(P+(E+-1022<<2)|0)==(_|0):0)m=y;else D=163;do{if((D|0)==163){D=0;g=(((M>>>0)/(m>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;v=(m|0)/2|0;do{if(A>>>0<v>>>0)k=.5;else{if((A|0)==(v|0)?(P+(E+-1022<<2)|0)==(_|0):0){k=1.0;break}k=1.5}}while(0);do{if(I){if((f[x>>0]|0)!=45)break;g=-g;k=-k}}while(0);v=M-A|0;t[w>>2]=v;if(!(g+k!=g)){m=y;break}R=v+m|0;t[w>>2]=R;if(R>>>0>999999999){b=y;while(1){m=w+-4|0;t[w>>2]=0;if(m>>>0<b>>>0){b=b+-4|0;t[b>>2]=0}R=(t[m>>2]|0)+1|0;t[m>>2]=R;if(R>>>0>999999999)w=m;else{y=b;w=m;break}}}b=(C-y>>2)*9|0;v=t[y>>2]|0;if(v>>>0<10){m=y;break}else m=10;do{m=m*10|0;b=b+1|0}while(v>>>0>=m>>>0);m=y}}while(0);R=w+4|0;y=m;_=_>>>0>R>>>0?R:_}A=0-b|0;while(1){if(_>>>0<=y>>>0){E=0;R=_;break}w=_+-4|0;if(!(t[w>>2]|0))_=w;else{E=1;R=_;break}}do{if(S){h=(T&1^1)+h|0;if((h|0)>(b|0)&(b|0)>-5){p=p+-1|0;h=h+-1-b|0}else{p=p+-2|0;h=h+-1|0}_=L&8;if(_)break;do{if(E){_=t[R+-4>>2]|0;if(!_){w=9;break}if(!((_>>>0)%10|0)){m=10;w=0}else{w=0;break}do{m=m*10|0;w=w+1|0}while(((_>>>0)%(m>>>0)|0|0)==0)}else w=9}while(0);_=((R-C>>2)*9|0)+-9|0;if((p|32|0)==102){_=_-w|0;_=(_|0)<0?0:_;h=(h|0)<(_|0)?h:_;_=0;break}else{_=_+b-w|0;_=(_|0)<0?0:_;h=(h|0)<(_|0)?h:_;_=0;break}}else _=L&8}while(0);M=h|_;m=(M|0)!=0&1;v=(p|32|0)==102;if(v){b=(b|0)>0?b:0;p=0}else{w=(b|0)<0?A:b;w=Rc(w,((w|0)<0)<<31>>31,K)|0;if((J-w|0)<2)do{w=w+-1|0;f[w>>0]=48}while((J-w|0)<2);f[w+-1>>0]=(b>>31&2)+43;C=w+-2|0;f[C>>0]=p;b=J-C|0;p=C}A=I+1+h+m+b|0;Cc(e,32,z,A,L);if(!(t[e>>2]&32))Ry(x,I,e)|0;Cc(e,48,z,A,L^65536);do{if(v){w=y>>>0>P>>>0?P:y;b=w;do{_=Rc(t[b>>2]|0,0,Y)|0;do{if((b|0)==(w|0)){if((_|0)!=(Y|0))break;f[$>>0]=48;_=$}else{if(_>>>0<=fe>>>0)break;do{_=_+-1|0;f[_>>0]=48}while(_>>>0>fe>>>0)}}while(0);if(!(t[e>>2]&32))Ry(_,q-_|0,e)|0;b=b+4|0}while(b>>>0<=P>>>0);do{if(M){if(t[e>>2]&32)break;Ry(56755,1,e)|0}}while(0);if((h|0)>0&b>>>0<R>>>0){_=b;while(1){b=Rc(t[_>>2]|0,0,Y)|0;if(b>>>0>fe>>>0)do{b=b+-1|0;f[b>>0]=48}while(b>>>0>fe>>>0);if(!(t[e>>2]&32))Ry(b,(h|0)>9?9:h,e)|0;_=_+4|0;b=h+-9|0;if(!((h|0)>9&_>>>0<R>>>0)){h=b;break}else h=b}}Cc(e,48,h+9|0,9,0)}else{v=E?R:y+4|0;if((h|0)>-1){m=(_|0)==0;w=y;do{b=Rc(t[w>>2]|0,0,Y)|0;if((b|0)==(Y|0)){f[$>>0]=48;b=$}do{if((w|0)==(y|0)){_=b+1|0;if(!(t[e>>2]&32))Ry(b,1,e)|0;if(m&(h|0)<1){b=_;break}if(t[e>>2]&32){b=_;break}Ry(56755,1,e)|0;b=_}else{if(b>>>0<=fe>>>0)break;do{b=b+-1|0;f[b>>0]=48}while(b>>>0>fe>>>0)}}while(0);_=q-b|0;if(!(t[e>>2]&32))Ry(b,(h|0)>(_|0)?_:h,e)|0;h=h-_|0;w=w+4|0}while(w>>>0<v>>>0&(h|0)>-1)}Cc(e,48,h+18|0,18,0);if(t[e>>2]&32)break;Ry(p,J-p|0,e)|0}}while(0);Cc(e,32,z,A,L^8192);h=(A|0)<(z|0)?z:A}else{v=(p&32|0)!=0;m=k!=k|0.0!=0.0;b=m?0:I;w=b+3|0;Cc(e,32,z,w,_);h=t[e>>2]|0;if(!(h&32)){Ry(x,b,e)|0;h=t[e>>2]|0}if(!(h&32))Ry(m?v?56747:56751:v?56739:56743,3,e)|0;Cc(e,32,z,w,L^8192);h=(w|0)<(z|0)?z:w}}while(0);y=B;continue e}default:{_=L;b=w;v=0;p=56703;h=F}}}while(0);i:do{if((D|0)==64){_=ee;b=t[_>>2]|0;_=t[_+4>>2]|0;m=p&32;if(!((b|0)==0&(_|0)==0)){h=F;do{h=h+-1|0;f[h>>0]=a[56687+(b&15)>>0]|m;b=Am(b|0,_|0,4)|0;_=O}while(!((b|0)==0&(_|0)==0));D=ee;if((v&8|0)==0|(t[D>>2]|0)==0&(t[D+4>>2]|0)==0){b=v;v=0;m=56703;D=77}else{b=v;v=2;m=56703+(p>>4)|0;D=77}}else{h=F;b=v;v=0;m=56703;D=77}}else if((D|0)==76){h=Rc(h,b,F)|0;b=L;v=_;D=77}else if((D|0)==82){D=0;L=jy(h,0,w)|0;x=(L|0)==0;y=h;b=x?w:L-h|0;v=0;p=56703;h=x?h+w|0:L}else if((D|0)==86){D=0;b=0;h=0;m=t[ee>>2]|0;while(1){_=t[m>>2]|0;if(!_)break;h=dy(te,_)|0;if((h|0)<0|h>>>0>(w-b|0)>>>0)break;b=h+b|0;if(w>>>0>b>>>0)m=m+4|0;else break}if((h|0)<0){o=-1;break e}Cc(e,32,z,b,L);if(!b){h=0;D=98}else{_=0;w=t[ee>>2]|0;while(1){h=t[w>>2]|0;if(!h){h=b;D=98;break i}h=dy(te,h)|0;_=h+_|0;if((_|0)>(b|0)){h=b;D=98;break i}if(!(t[e>>2]&32))Ry(te,h,e)|0;if(_>>>0>=b>>>0){h=b;D=98;break}else w=w+4|0}}}}while(0);if((D|0)==98){D=0;Cc(e,32,z,h,L^8192);y=B;h=(z|0)>(h|0)?z:h;continue}if((D|0)==77){D=0;_=(w|0)>-1?b&-65537:b;b=ee;b=(t[b>>2]|0)!=0|(t[b+4>>2]|0)!=0;if((w|0)!=0|b){b=(b&1^1)+(V-h)|0;y=h;b=(w|0)>(b|0)?w:b;p=m;h=F}else{y=F;b=0;p=m;h=F}}m=h-y|0;b=(b|0)<(m|0)?m:b;w=v+b|0;h=(z|0)<(w|0)?w:z;Cc(e,32,h,w,_);if(!(t[e>>2]&32))Ry(p,v,e)|0;Cc(e,48,h,w,_^65536);Cc(e,48,b,m,0);if(!(t[e>>2]&32))Ry(y,m,e)|0;Cc(e,32,h,w,_^8192);y=B}e:do{if((D|0)==245)if(!e)if(i){o=1;while(1){i=t[l+(o<<2)>>2]|0;if(!i)break;Tc(s+(o<<3)|0,i,r);o=o+1|0;if((o|0)>=10){o=1;break e}}if((o|0)<10)while(1){if(t[l+(o<<2)>>2]|0){o=-1;break e}o=o+1|0;if((o|0)>=10){o=1;break}}else o=1}else o=0}while(0);c=se;return o|0}function Mc(e,i,r){e=e|0;i=i|0;r=r|0;return yy(e,i,r)|0}function Ac(e,i,r){e=e|0;i=i|0;r=r|0;var f=0.0,n=0,a=0,s=0,l=0;l=c;c=c+112|0;s=l;n=s;a=n+112|0;do{t[n>>2]=0;n=n+4|0}while((n|0)<(a|0));n=s+4|0;t[n>>2]=e;a=s+8|0;t[a>>2]=-1;t[s+44>>2]=e;t[s+76>>2]=-1;Fg(s,0);f=+Dg(s,r,1);r=(t[n>>2]|0)-(t[a>>2]|0)+(t[s+108>>2]|0)|0;if(i)t[i>>2]=(r|0)!=0?e+r|0:e;c=l;return+f}function Ec(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0,o=0;o=c;c=c+112|0;l=o;t[l>>2]=0;a=l+4|0;t[a>>2]=e;t[l+44>>2]=e;s=l+8|0;t[s>>2]=(e|0)<0?-1:e+2147483647|0;t[l+76>>2]=-1;Fg(l,0);f=Ng(l,r,1,f,n)|0;if(i)t[i>>2]=e+((t[a>>2]|0)+(t[l+108>>2]|0)-(t[s>>2]|0));c=o;return f|0}function Sc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0;f=e+20|0;n=t[f>>2]|0;e=(t[e+16>>2]|0)-n|0;e=e>>>0>r>>>0?r:e;Em(n|0,i|0,e|0)|0;t[f>>2]=(t[f>>2]|0)+e;return r|0}function Tc(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0.0;e:do{if(i>>>0<=20)do{switch(i|0){case 9:{f=(t[r>>2]|0)+(4-1)&~(4-1);i=t[f>>2]|0;t[r>>2]=f+4;t[e>>2]=i;break e}case 10:{f=(t[r>>2]|0)+(4-1)&~(4-1);i=t[f>>2]|0;t[r>>2]=f+4;f=e;t[f>>2]=i;t[f+4>>2]=((i|0)<0)<<31>>31;break e}case 11:{f=(t[r>>2]|0)+(4-1)&~(4-1);i=t[f>>2]|0;t[r>>2]=f+4;f=e;t[f>>2]=i;t[f+4>>2]=0;break e}case 12:{f=(t[r>>2]|0)+(8-1)&~(8-1);i=f;n=t[i>>2]|0;i=t[i+4>>2]|0;t[r>>2]=f+8;f=e;t[f>>2]=n;t[f+4>>2]=i;break e}case 13:{n=(t[r>>2]|0)+(4-1)&~(4-1);f=t[n>>2]|0;t[r>>2]=n+4;f=(f&65535)<<16>>16;n=e;t[n>>2]=f;t[n+4>>2]=((f|0)<0)<<31>>31;break e}case 14:{n=(t[r>>2]|0)+(4-1)&~(4-1);f=t[n>>2]|0;t[r>>2]=n+4;n=e;t[n>>2]=f&65535;t[n+4>>2]=0;break e}case 15:{n=(t[r>>2]|0)+(4-1)&~(4-1);f=t[n>>2]|0;t[r>>2]=n+4;f=(f&255)<<24>>24;n=e;t[n>>2]=f;t[n+4>>2]=((f|0)<0)<<31>>31;break e}case 16:{n=(t[r>>2]|0)+(4-1)&~(4-1);f=t[n>>2]|0;t[r>>2]=n+4;n=e;t[n>>2]=f&255;t[n+4>>2]=0;break e}case 17:{n=(t[r>>2]|0)+(8-1)&~(8-1);a=+u[n>>3];t[r>>2]=n+8;u[e>>3]=a;break e}case 18:{n=(t[r>>2]|0)+(8-1)&~(8-1);a=+u[n>>3];t[r>>2]=n+8;u[e>>3]=a;break e}default:break e}}while(0)}while(0);return}function Rc(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if(i>>>0>0|(i|0)==0&e>>>0>4294967295)while(1){n=Bm(e|0,i|0,10,0)|0;r=r+-1|0;f[r>>0]=n|48;n=Lm(e|0,i|0,10,0)|0;if(i>>>0>9|(i|0)==9&e>>>0>4294967295){e=n;i=O}else{e=n;break}}if(e)while(1){r=r+-1|0;f[r>>0]=(e>>>0)%10|0|48;if(e>>>0<10)break;else e=(e>>>0)/10|0}return r|0}function Cc(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0;l=c;c=c+256|0;s=l;do{if((r|0)>(f|0)&(n&73728|0)==0){n=r-f|0;ym(s|0,i|0,(n>>>0>256?256:n)|0)|0;i=t[e>>2]|0;a=(i&32|0)==0;if(n>>>0>255){f=r-f|0;do{if(a){Ry(s,256,e)|0;i=t[e>>2]|0}n=n+-256|0;a=(i&32|0)==0}while(n>>>0>255);if(a)n=f&255;else break}else if(!a)break;Ry(s,n,e)|0}}while(0);c=l;return}function Pc(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0;do{if(e>>>0<245){b=e>>>0<11?16:e+11&-8;e=b>>>3;l=t[10218]|0;r=l>>>e;if(r&3){e=(r&1^1)+e|0;f=e<<1;r=40912+(f<<2)|0;f=40912+(f+2<<2)|0;n=t[f>>2]|0;a=n+8|0;s=t[a>>2]|0;do{if((r|0)!=(s|0)){if(s>>>0<(t[10222]|0)>>>0)Be();i=s+12|0;if((t[i>>2]|0)==(n|0)){t[i>>2]=r;t[f>>2]=s;break}else Be()}else t[10218]=l&~(1<<e)}while(0);N=e<<3;t[n+4>>2]=N|3;N=n+(N|4)|0;t[N>>2]=t[N>>2]|1;N=a;return N|0}s=t[10220]|0;if(b>>>0>s>>>0){if(r){f=2<<e;f=r<<e&(f|0-f);f=(f&0-f)+-1|0;o=f>>>12&16;f=f>>>o;n=f>>>5&8;f=f>>>n;a=f>>>2&4;f=f>>>a;r=f>>>1&2;f=f>>>r;e=f>>>1&1;e=(n|o|a|r|e)+(f>>>e)|0;f=e<<1;r=40912+(f<<2)|0;f=40912+(f+2<<2)|0;a=t[f>>2]|0;o=a+8|0;n=t[o>>2]|0;do{if((r|0)!=(n|0)){if(n>>>0<(t[10222]|0)>>>0)Be();i=n+12|0;if((t[i>>2]|0)==(a|0)){t[i>>2]=r;t[f>>2]=n;u=t[10220]|0;break}else Be()}else{t[10218]=l&~(1<<e);u=s}}while(0);N=e<<3;s=N-b|0;t[a+4>>2]=b|3;l=a+b|0;t[a+(b|4)>>2]=s|1;t[a+N>>2]=s;if(u){n=t[10223]|0;r=u>>>3;i=r<<1;f=40912+(i<<2)|0;e=t[10218]|0;r=1<<r;if(e&r){e=40912+(i+2<<2)|0;i=t[e>>2]|0;if(i>>>0<(t[10222]|0)>>>0)Be();else{c=e;h=i}}else{t[10218]=e|r;c=40912+(i+2<<2)|0;h=f}t[c>>2]=n;t[h+12>>2]=n;t[n+8>>2]=h;t[n+12>>2]=f}t[10220]=s;t[10223]=l;N=o;return N|0}e=t[10219]|0;if(e){r=(e&0-e)+-1|0;D=r>>>12&16;r=r>>>D;z=r>>>5&8;r=r>>>z;N=r>>>2&4;r=r>>>N;e=r>>>1&2;r=r>>>e;f=r>>>1&1;f=t[41176+((z|D|N|e|f)+(r>>>f)<<2)>>2]|0;r=(t[f+4>>2]&-8)-b|0;e=f;while(1){i=t[e+16>>2]|0;if(!i){i=t[e+20>>2]|0;if(!i){o=r;break}}e=(t[i+4>>2]&-8)-b|0;N=e>>>0<r>>>0;r=N?e:r;e=i;f=N?i:f}a=t[10222]|0;if(f>>>0<a>>>0)Be();l=f+b|0;if(f>>>0>=l>>>0)Be();s=t[f+24>>2]|0;r=t[f+12>>2]|0;do{if((r|0)==(f|0)){e=f+20|0;i=t[e>>2]|0;if(!i){e=f+16|0;i=t[e>>2]|0;if(!i){d=0;break}}while(1){r=i+20|0;n=t[r>>2]|0;if(n){i=n;e=r;continue}r=i+16|0;n=t[r>>2]|0;if(!n)break;else{i=n;e=r}}if(e>>>0<a>>>0)Be();else{t[e>>2]=0;d=i;break}}else{n=t[f+8>>2]|0;if(n>>>0<a>>>0)Be();i=n+12|0;if((t[i>>2]|0)!=(f|0))Be();e=r+8|0;if((t[e>>2]|0)==(f|0)){t[i>>2]=r;t[e>>2]=n;d=r;break}else Be()}}while(0);do{if(s){i=t[f+28>>2]|0;e=41176+(i<<2)|0;if((f|0)==(t[e>>2]|0)){t[e>>2]=d;if(!d){t[10219]=t[10219]&~(1<<i);break}}else{if(s>>>0<(t[10222]|0)>>>0)Be();i=s+16|0;if((t[i>>2]|0)==(f|0))t[i>>2]=d;else t[s+20>>2]=d;if(!d)break}e=t[10222]|0;if(d>>>0<e>>>0)Be();t[d+24>>2]=s;i=t[f+16>>2]|0;do{if(i)if(i>>>0<e>>>0)Be();else{t[d+16>>2]=i;t[i+24>>2]=d;break}}while(0);i=t[f+20>>2]|0;if(i)if(i>>>0<(t[10222]|0)>>>0)Be();else{t[d+20>>2]=i;t[i+24>>2]=d;break}}}while(0);if(o>>>0<16){N=o+b|0;t[f+4>>2]=N|3;N=f+(N+4)|0;t[N>>2]=t[N>>2]|1}else{t[f+4>>2]=b|3;t[f+(b|4)>>2]=o|1;t[f+(o+b)>>2]=o;i=t[10220]|0;if(i){a=t[10223]|0;r=i>>>3;i=r<<1;n=40912+(i<<2)|0;e=t[10218]|0;r=1<<r;if(e&r){i=40912+(i+2<<2)|0;e=t[i>>2]|0;if(e>>>0<(t[10222]|0)>>>0)Be();else{_=i;k=e}}else{t[10218]=e|r;_=40912+(i+2<<2)|0;k=n}t[_>>2]=a;t[k+12>>2]=a;t[a+8>>2]=k;t[a+12>>2]=n}t[10220]=o;t[10223]=l}N=f+8|0;return N|0}else k=b}else k=b}else if(e>>>0<=4294967231){e=e+11|0;h=e&-8;c=t[10219]|0;if(c){r=0-h|0;e=e>>>8;if(e)if(h>>>0>16777215)u=31;else{k=(e+1048320|0)>>>16&8;g=e<<k;_=(g+520192|0)>>>16&4;g=g<<_;u=(g+245760|0)>>>16&2;u=14-(_|k|u)+(g<<u>>>15)|0;u=h>>>(u+7|0)&1|u<<1}else u=0;e=t[41176+(u<<2)>>2]|0;e:do{if(!e){n=0;e=0;g=86}else{s=r;n=0;l=h<<((u|0)==31?0:25-(u>>>1)|0);o=e;e=0;while(1){a=t[o+4>>2]&-8;r=a-h|0;if(r>>>0<s>>>0)if((a|0)==(h|0)){a=o;e=o;g=90;break e}else e=o;else r=s;g=t[o+20>>2]|0;o=t[o+16+(l>>>31<<2)>>2]|0;n=(g|0)==0|(g|0)==(o|0)?n:g;if(!o){g=86;break}else{s=r;l=l<<1}}}}while(0);if((g|0)==86){if((n|0)==0&(e|0)==0){e=2<<u;e=c&(e|0-e);if(!e){k=h;break}e=(e&0-e)+-1|0;d=e>>>12&16;e=e>>>d;c=e>>>5&8;e=e>>>c;_=e>>>2&4;e=e>>>_;k=e>>>1&2;e=e>>>k;n=e>>>1&1;n=t[41176+((c|d|_|k|n)+(e>>>n)<<2)>>2]|0;e=0}if(!n){l=r;o=e}else{a=n;g=90}}if((g|0)==90)while(1){g=0;k=(t[a+4>>2]&-8)-h|0;n=k>>>0<r>>>0;r=n?k:r;e=n?a:e;n=t[a+16>>2]|0;if(n){a=n;g=90;continue}a=t[a+20>>2]|0;if(!a){l=r;o=e;break}else g=90}if((o|0)!=0?l>>>0<((t[10220]|0)-h|0)>>>0:0){n=t[10222]|0;if(o>>>0<n>>>0)Be();s=o+h|0;if(o>>>0>=s>>>0)Be();a=t[o+24>>2]|0;r=t[o+12>>2]|0;do{if((r|0)==(o|0)){e=o+20|0;i=t[e>>2]|0;if(!i){e=o+16|0;i=t[e>>2]|0;if(!i){b=0;break}}while(1){r=i+20|0;f=t[r>>2]|0;if(f){i=f;e=r;continue}r=i+16|0;f=t[r>>2]|0;if(!f)break;else{i=f;e=r}}if(e>>>0<n>>>0)Be();else{t[e>>2]=0;b=i;break}}else{f=t[o+8>>2]|0;if(f>>>0<n>>>0)Be();i=f+12|0;if((t[i>>2]|0)!=(o|0))Be();e=r+8|0;if((t[e>>2]|0)==(o|0)){t[i>>2]=r;t[e>>2]=f;b=r;break}else Be()}}while(0);do{if(a){i=t[o+28>>2]|0;e=41176+(i<<2)|0;if((o|0)==(t[e>>2]|0)){t[e>>2]=b;if(!b){t[10219]=t[10219]&~(1<<i);break}}else{if(a>>>0<(t[10222]|0)>>>0)Be();i=a+16|0;if((t[i>>2]|0)==(o|0))t[i>>2]=b;else t[a+20>>2]=b;if(!b)break}e=t[10222]|0;if(b>>>0<e>>>0)Be();t[b+24>>2]=a;i=t[o+16>>2]|0;do{if(i)if(i>>>0<e>>>0)Be();else{t[b+16>>2]=i;t[i+24>>2]=b;break}}while(0);i=t[o+20>>2]|0;if(i)if(i>>>0<(t[10222]|0)>>>0)Be();else{t[b+20>>2]=i;t[i+24>>2]=b;break}}}while(0);e:do{if(l>>>0>=16){t[o+4>>2]=h|3;t[o+(h|4)>>2]=l|1;t[o+(l+h)>>2]=l;i=l>>>3;if(l>>>0<256){e=i<<1;f=40912+(e<<2)|0;r=t[10218]|0;i=1<<i;if(r&i){i=40912+(e+2<<2)|0;e=t[i>>2]|0;if(e>>>0<(t[10222]|0)>>>0)Be();else{m=i;v=e}}else{t[10218]=r|i;m=40912+(e+2<<2)|0;v=f}t[m>>2]=s;t[v+12>>2]=s;t[o+(h+8)>>2]=v;t[o+(h+12)>>2]=f;break}i=l>>>8;if(i)if(l>>>0>16777215)f=31;else{D=(i+1048320|0)>>>16&8;N=i<<D;z=(N+520192|0)>>>16&4;N=N<<z;f=(N+245760|0)>>>16&2;f=14-(z|D|f)+(N<<f>>>15)|0;f=l>>>(f+7|0)&1|f<<1}else f=0;i=41176+(f<<2)|0;t[o+(h+28)>>2]=f;t[o+(h+20)>>2]=0;t[o+(h+16)>>2]=0;e=t[10219]|0;r=1<<f;if(!(e&r)){t[10219]=e|r;t[i>>2]=s;t[o+(h+24)>>2]=i;t[o+(h+12)>>2]=s;t[o+(h+8)>>2]=s;break}i=t[i>>2]|0;i:do{if((t[i+4>>2]&-8|0)!=(l|0)){f=l<<((f|0)==31?0:25-(f>>>1)|0);while(1){e=i+16+(f>>>31<<2)|0;r=t[e>>2]|0;if(!r)break;if((t[r+4>>2]&-8|0)==(l|0)){A=r;break i}else{f=f<<1;i=r}}if(e>>>0<(t[10222]|0)>>>0)Be();else{t[e>>2]=s;t[o+(h+24)>>2]=i;t[o+(h+12)>>2]=s;t[o+(h+8)>>2]=s;break e}}else A=i}while(0);i=A+8|0;e=t[i>>2]|0;N=t[10222]|0;if(e>>>0>=N>>>0&A>>>0>=N>>>0){t[e+12>>2]=s;t[i>>2]=s;t[o+(h+8)>>2]=e;t[o+(h+12)>>2]=A;t[o+(h+24)>>2]=0;break}else Be()}else{N=l+h|0;t[o+4>>2]=N|3;N=o+(N+4)|0;t[N>>2]=t[N>>2]|1}}while(0);N=o+8|0;return N|0}else k=h}else k=h}else k=-1}while(0);r=t[10220]|0;if(r>>>0>=k>>>0){i=r-k|0;e=t[10223]|0;if(i>>>0>15){t[10223]=e+k;t[10220]=i;t[e+(k+4)>>2]=i|1;t[e+r>>2]=i;t[e+4>>2]=k|3}else{t[10220]=0;t[10223]=0;t[e+4>>2]=r|3;N=e+(r+4)|0;t[N>>2]=t[N>>2]|1}N=e+8|0;return N|0}e=t[10221]|0;if(e>>>0>k>>>0){D=e-k|0;t[10221]=D;N=t[10224]|0;t[10224]=N+k;t[N+(k+4)>>2]=D|1;t[N+4>>2]=k|3;N=N+8|0;return N|0}do{if(!(t[10336]|0)){e=ii(30)|0;if(!(e+-1&e)){t[10338]=e;t[10337]=e;t[10339]=-1;t[10340]=-1;t[10341]=0;t[10329]=0;t[10336]=(vi(0)|0)&-16^1431655768;break}else Be()}}while(0);o=k+48|0;l=t[10338]|0;u=k+47|0;s=l+u|0;l=0-l|0;c=s&l;if(c>>>0<=k>>>0){N=0;return N|0}e=t[10328]|0;if((e|0)!=0?(v=t[10326]|0,A=v+c|0,A>>>0<=v>>>0|A>>>0>e>>>0):0){N=0;return N|0}e:do{if(!(t[10329]&4)){e=t[10224]|0;i:do{if(e){n=41320;while(1){r=t[n>>2]|0;if(r>>>0<=e>>>0?(w=n+4|0,(r+(t[w>>2]|0)|0)>>>0>e>>>0):0){a=n;e=w;break}n=t[n+8>>2]|0;if(!n){g=174;break i}}r=s-(t[10221]|0)&l;if(r>>>0<2147483647){n=Ke(r|0)|0;A=(n|0)==((t[a>>2]|0)+(t[e>>2]|0)|0);e=A?r:0;if(A){if((n|0)!=(-1|0)){y=n;_=e;g=194;break e}}else g=184}else e=0}else g=174}while(0);do{if((g|0)==174){a=Ke(0)|0;if((a|0)!=(-1|0)){e=a;r=t[10337]|0;n=r+-1|0;if(!(n&e))r=c;else r=c-e+(n+e&0-r)|0;e=t[10326]|0;n=e+r|0;if(r>>>0>k>>>0&r>>>0<2147483647){A=t[10328]|0;if((A|0)!=0?n>>>0<=e>>>0|n>>>0>A>>>0:0){e=0;break}n=Ke(r|0)|0;A=(n|0)==(a|0);e=A?r:0;if(A){y=a;_=e;g=194;break e}else g=184}else e=0}else e=0}}while(0);i:do{if((g|0)==184){a=0-r|0;do{if(o>>>0>r>>>0&(r>>>0<2147483647&(n|0)!=(-1|0))?(p=t[10338]|0,p=u-r+p&0-p,p>>>0<2147483647):0)if((Ke(p|0)|0)==(-1|0)){Ke(a|0)|0;break i}else{r=p+r|0;break}}while(0);if((n|0)!=(-1|0)){y=n;_=r;g=194;break e}}}while(0);t[10329]=t[10329]|4;g=191}else{e=0;g=191}}while(0);if((((g|0)==191?c>>>0<2147483647:0)?(y=Ke(c|0)|0,M=Ke(0)|0,y>>>0<M>>>0&((y|0)!=(-1|0)&(M|0)!=(-1|0))):0)?(E=M-y|0,S=E>>>0>(k+40|0)>>>0,S):0){_=S?E:e;g=194}if((g|0)==194){e=(t[10326]|0)+_|0;t[10326]=e;if(e>>>0>(t[10327]|0)>>>0)t[10327]=e;s=t[10224]|0;e:do{if(s){a=41320;do{e=t[a>>2]|0;r=a+4|0;n=t[r>>2]|0;if((y|0)==(e+n|0)){T=e;R=r;C=n;P=a;g=204;break}a=t[a+8>>2]|0}while((a|0)!=0);if(((g|0)==204?(t[P+12>>2]&8|0)==0:0)?s>>>0<y>>>0&s>>>0>=T>>>0:0){t[R>>2]=C+_;N=(t[10221]|0)+_|0;D=s+8|0;D=(D&7|0)==0?0:0-D&7;z=N-D|0;t[10224]=s+D;t[10221]=z;t[s+(D+4)>>2]=z|1;t[s+(N+4)>>2]=40;t[10225]=t[10340];break}e=t[10222]|0;if(y>>>0<e>>>0){t[10222]=y;e=y}r=y+_|0;a=41320;while(1){if((t[a>>2]|0)==(r|0)){n=a;r=a;g=212;break}a=t[a+8>>2]|0;if(!a){r=41320;break}}if((g|0)==212)if(!(t[r+12>>2]&8)){t[n>>2]=y;d=r+4|0;t[d>>2]=(t[d>>2]|0)+_;d=y+8|0;d=(d&7|0)==0?0:0-d&7;u=y+(_+8)|0;u=(u&7|0)==0?0:0-u&7;i=y+(u+_)|0;h=d+k|0;b=y+h|0;c=i-(y+d)-k|0;t[y+(d+4)>>2]=k|3;i:do{if((i|0)!=(s|0)){if((i|0)==(t[10223]|0)){N=(t[10220]|0)+c|0;t[10220]=N;t[10223]=b;t[y+(h+4)>>2]=N|1;t[y+(N+h)>>2]=N;break}l=_+4|0;r=t[y+(l+u)>>2]|0;if((r&3|0)==1){o=r&-8;a=r>>>3;r:do{if(r>>>0>=256){s=t[y+((u|24)+_)>>2]|0;f=t[y+(_+12+u)>>2]|0;do{if((f|0)==(i|0)){n=u|16;f=y+(l+n)|0;r=t[f>>2]|0;if(!r){f=y+(n+_)|0;r=t[f>>2]|0;if(!r){B=0;break}}while(1){n=r+20|0;a=t[n>>2]|0;if(a){r=a;f=n;continue}n=r+16|0;a=t[n>>2]|0;if(!a)break;else{r=a;f=n}}if(f>>>0<e>>>0)Be();else{t[f>>2]=0;B=r;break}}else{n=t[y+((u|8)+_)>>2]|0;if(n>>>0<e>>>0)Be();e=n+12|0;if((t[e>>2]|0)!=(i|0))Be();r=f+8|0;if((t[r>>2]|0)==(i|0)){t[e>>2]=f;t[r>>2]=n;B=f;break}else Be()}}while(0);if(!s)break;e=t[y+(_+28+u)>>2]|0;r=41176+(e<<2)|0;do{if((i|0)!=(t[r>>2]|0)){if(s>>>0<(t[10222]|0)>>>0)Be();e=s+16|0;if((t[e>>2]|0)==(i|0))t[e>>2]=B;else t[s+20>>2]=B;if(!B)break r}else{t[r>>2]=B;if(B)break;t[10219]=t[10219]&~(1<<e);break r}}while(0);r=t[10222]|0;if(B>>>0<r>>>0)Be();t[B+24>>2]=s;i=u|16;e=t[y+(i+_)>>2]|0;do{if(e)if(e>>>0<r>>>0)Be();else{t[B+16>>2]=e;t[e+24>>2]=B;break}}while(0);i=t[y+(l+i)>>2]|0;if(!i)break;if(i>>>0<(t[10222]|0)>>>0)Be();else{t[B+20>>2]=i;t[i+24>>2]=B;break}}else{f=t[y+((u|8)+_)>>2]|0;n=t[y+(_+12+u)>>2]|0;r=40912+(a<<1<<2)|0;do{if((f|0)!=(r|0)){if(f>>>0<e>>>0)Be();if((t[f+12>>2]|0)==(i|0))break;Be()}}while(0);if((n|0)==(f|0)){t[10218]=t[10218]&~(1<<a);break}do{if((n|0)==(r|0))I=n+8|0;else{if(n>>>0<e>>>0)Be();e=n+8|0;if((t[e>>2]|0)==(i|0)){I=e;break}Be()}}while(0);t[f+12>>2]=n;t[I>>2]=f}}while(0);i=y+((o|u)+_)|0;n=o+c|0}else n=c;i=i+4|0;t[i>>2]=t[i>>2]&-2;t[y+(h+4)>>2]=n|1;t[y+(n+h)>>2]=n;i=n>>>3;if(n>>>0<256){e=i<<1;f=40912+(e<<2)|0;r=t[10218]|0;i=1<<i;do{if(!(r&i)){t[10218]=r|i;z=40912+(e+2<<2)|0;D=f}else{i=40912+(e+2<<2)|0;e=t[i>>2]|0;if(e>>>0>=(t[10222]|0)>>>0){z=i;D=e;break}Be()}}while(0);t[z>>2]=b;t[D+12>>2]=b;t[y+(h+8)>>2]=D;t[y+(h+12)>>2]=f;break}i=n>>>8;do{if(!i)f=0;else{if(n>>>0>16777215){f=31;break}z=(i+1048320|0)>>>16&8;D=i<<z;B=(D+520192|0)>>>16&4;D=D<<B;f=(D+245760|0)>>>16&2;f=14-(B|z|f)+(D<<f>>>15)|0;f=n>>>(f+7|0)&1|f<<1}}while(0);i=41176+(f<<2)|0;t[y+(h+28)>>2]=f;t[y+(h+20)>>2]=0;t[y+(h+16)>>2]=0;e=t[10219]|0;r=1<<f;if(!(e&r)){t[10219]=e|r;t[i>>2]=b;t[y+(h+24)>>2]=i;t[y+(h+12)>>2]=b;t[y+(h+8)>>2]=b;break}i=t[i>>2]|0;r:do{if((t[i+4>>2]&-8|0)!=(n|0)){f=n<<((f|0)==31?0:25-(f>>>1)|0);while(1){e=i+16+(f>>>31<<2)|0;r=t[e>>2]|0;if(!r)break;if((t[r+4>>2]&-8|0)==(n|0)){N=r;break r}else{f=f<<1;i=r}}if(e>>>0<(t[10222]|0)>>>0)Be();else{t[e>>2]=b;t[y+(h+24)>>2]=i;t[y+(h+12)>>2]=b;t[y+(h+8)>>2]=b;break i}}else N=i}while(0);i=N+8|0;e=t[i>>2]|0;D=t[10222]|0;if(e>>>0>=D>>>0&N>>>0>=D>>>0){t[e+12>>2]=b;t[i>>2]=b;t[y+(h+8)>>2]=e;t[y+(h+12)>>2]=N;t[y+(h+24)>>2]=0;break}else Be()}else{N=(t[10221]|0)+c|0;t[10221]=N;t[10224]=b;t[y+(h+4)>>2]=N|1}}while(0);N=y+(d|8)|0;return N|0}else r=41320;while(1){e=t[r>>2]|0;if(e>>>0<=s>>>0?(i=t[r+4>>2]|0,f=e+i|0,f>>>0>s>>>0):0)break;r=t[r+8>>2]|0}n=e+(i+-39)|0;e=e+(i+-47+((n&7|0)==0?0:0-n&7))|0;n=s+16|0;e=e>>>0<n>>>0?s:e;i=e+8|0;r=y+8|0;r=(r&7|0)==0?0:0-r&7;N=_+-40-r|0;t[10224]=y+r;t[10221]=N;t[y+(r+4)>>2]=N|1;t[y+(_+-36)>>2]=40;t[10225]=t[10340];r=e+4|0;t[r>>2]=27;t[i>>2]=t[10330];t[i+4>>2]=t[10331];t[i+8>>2]=t[10332];t[i+12>>2]=t[10333];t[10330]=y;t[10331]=_;t[10333]=0;t[10332]=i;i=e+28|0;t[i>>2]=7;if((e+32|0)>>>0<f>>>0)do{N=i;i=i+4|0;t[i>>2]=7}while((N+8|0)>>>0<f>>>0);if((e|0)!=(s|0)){a=e-s|0;t[r>>2]=t[r>>2]&-2;t[s+4>>2]=a|1;t[e>>2]=a;i=a>>>3;if(a>>>0<256){e=i<<1;f=40912+(e<<2)|0;r=t[10218]|0;i=1<<i;if(r&i){i=40912+(e+2<<2)|0;e=t[i>>2]|0;if(e>>>0<(t[10222]|0)>>>0)Be();else{O=i;x=e}}else{t[10218]=r|i;O=40912+(e+2<<2)|0;x=f}t[O>>2]=s;t[x+12>>2]=s;t[s+8>>2]=x;t[s+12>>2]=f;break}i=a>>>8;if(i)if(a>>>0>16777215)f=31;else{D=(i+1048320|0)>>>16&8;N=i<<D;z=(N+520192|0)>>>16&4;N=N<<z;f=(N+245760|0)>>>16&2;f=14-(z|D|f)+(N<<f>>>15)|0;f=a>>>(f+7|0)&1|f<<1}else f=0;r=41176+(f<<2)|0;t[s+28>>2]=f;t[s+20>>2]=0;t[n>>2]=0;i=t[10219]|0;e=1<<f;if(!(i&e)){t[10219]=i|e;t[r>>2]=s;t[s+24>>2]=r;t[s+12>>2]=s;t[s+8>>2]=s;break}i=t[r>>2]|0;i:do{if((t[i+4>>2]&-8|0)!=(a|0)){f=a<<((f|0)==31?0:25-(f>>>1)|0);while(1){e=i+16+(f>>>31<<2)|0;r=t[e>>2]|0;if(!r)break;if((t[r+4>>2]&-8|0)==(a|0)){L=r;break i}else{f=f<<1;i=r}}if(e>>>0<(t[10222]|0)>>>0)Be();else{t[e>>2]=s;t[s+24>>2]=i;t[s+12>>2]=s;t[s+8>>2]=s;break e}}else L=i}while(0);i=L+8|0;e=t[i>>2]|0;N=t[10222]|0;if(e>>>0>=N>>>0&L>>>0>=N>>>0){t[e+12>>2]=s;t[i>>2]=s;t[s+8>>2]=e;t[s+12>>2]=L;t[s+24>>2]=0;break}else Be()}}else{N=t[10222]|0;if((N|0)==0|y>>>0<N>>>0)t[10222]=y;t[10330]=y;t[10331]=_;t[10333]=0;t[10227]=t[10336];t[10226]=-1;i=0;do{N=i<<1;D=40912+(N<<2)|0;t[40912+(N+3<<2)>>2]=D;t[40912+(N+2<<2)>>2]=D;i=i+1|0}while((i|0)!=32);N=y+8|0;N=(N&7|0)==0?0:0-N&7;D=_+-40-N|0;t[10224]=y+N;t[10221]=D;t[y+(N+4)>>2]=D|1;t[y+(_+-36)>>2]=40;t[10225]=t[10340]}}while(0);i=t[10221]|0;if(i>>>0>k>>>0){D=i-k|0;t[10221]=D;N=t[10224]|0;t[10224]=N+k;t[N+(k+4)>>2]=D|1;t[N+4>>2]=k|3;N=N+8|0;return N|0}}t[(Bg()|0)>>2]=12;N=0;return N|0}function Ic(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0;if(!e)return;i=e+-8|0;l=t[10222]|0;if(i>>>0<l>>>0)Be();r=t[e+-4>>2]|0;f=r&3;if((f|0)==1)Be();b=r&-8;k=e+(b+-8)|0;do{if(!(r&1)){i=t[i>>2]|0;if(!f)return;o=-8-i|0;c=e+o|0;h=i+b|0;if(c>>>0<l>>>0)Be();if((c|0)==(t[10223]|0)){i=e+(b+-4)|0;r=t[i>>2]|0;if((r&3|0)!=3){p=c;a=h;break}t[10220]=h;t[i>>2]=r&-2;t[e+(o+4)>>2]=h|1;t[k>>2]=h;return}n=i>>>3;if(i>>>0<256){f=t[e+(o+8)>>2]|0;r=t[e+(o+12)>>2]|0;i=40912+(n<<1<<2)|0;if((f|0)!=(i|0)){if(f>>>0<l>>>0)Be();if((t[f+12>>2]|0)!=(c|0))Be()}if((r|0)==(f|0)){t[10218]=t[10218]&~(1<<n);p=c;a=h;break}if((r|0)!=(i|0)){if(r>>>0<l>>>0)Be();i=r+8|0;if((t[i>>2]|0)==(c|0))s=i;else Be()}else s=r+8|0;t[f+12>>2]=r;t[s>>2]=f;p=c;a=h;break}s=t[e+(o+24)>>2]|0;f=t[e+(o+12)>>2]|0;do{if((f|0)==(c|0)){r=e+(o+20)|0;i=t[r>>2]|0;if(!i){r=e+(o+16)|0;i=t[r>>2]|0;if(!i){u=0;break}}while(1){f=i+20|0;n=t[f>>2]|0;if(n){i=n;r=f;continue}f=i+16|0;n=t[f>>2]|0;if(!n)break;else{i=n;r=f}}if(r>>>0<l>>>0)Be();else{t[r>>2]=0;u=i;break}}else{n=t[e+(o+8)>>2]|0;if(n>>>0<l>>>0)Be();i=n+12|0;if((t[i>>2]|0)!=(c|0))Be();r=f+8|0;if((t[r>>2]|0)==(c|0)){t[i>>2]=f;t[r>>2]=n;u=f;break}else Be()}}while(0);if(s){i=t[e+(o+28)>>2]|0;r=41176+(i<<2)|0;if((c|0)==(t[r>>2]|0)){t[r>>2]=u;if(!u){t[10219]=t[10219]&~(1<<i);p=c;a=h;break}}else{if(s>>>0<(t[10222]|0)>>>0)Be();i=s+16|0;if((t[i>>2]|0)==(c|0))t[i>>2]=u;else t[s+20>>2]=u;if(!u){p=c;a=h;break}}r=t[10222]|0;if(u>>>0<r>>>0)Be();t[u+24>>2]=s;i=t[e+(o+16)>>2]|0;do{if(i)if(i>>>0<r>>>0)Be();else{t[u+16>>2]=i;t[i+24>>2]=u;break}}while(0);i=t[e+(o+20)>>2]|0;if(i)if(i>>>0<(t[10222]|0)>>>0)Be();else{t[u+20>>2]=i;t[i+24>>2]=u;p=c;a=h;break}else{p=c;a=h}}else{p=c;a=h}}else{p=i;a=b}}while(0);if(p>>>0>=k>>>0)Be();i=e+(b+-4)|0;r=t[i>>2]|0;if(!(r&1))Be();if(!(r&2)){if((k|0)==(t[10224]|0)){v=(t[10221]|0)+a|0;t[10221]=v;t[10224]=p;t[p+4>>2]=v|1;if((p|0)!=(t[10223]|0))return;t[10223]=0;t[10220]=0;return}if((k|0)==(t[10223]|0)){v=(t[10220]|0)+a|0;t[10220]=v;t[10223]=p;t[p+4>>2]=v|1;t[p+v>>2]=v;return}a=(r&-8)+a|0;n=r>>>3;do{if(r>>>0>=256){s=t[e+(b+16)>>2]|0;i=t[e+(b|4)>>2]|0;do{if((i|0)==(k|0)){r=e+(b+12)|0;i=t[r>>2]|0;if(!i){r=e+(b+8)|0;i=t[r>>2]|0;if(!i){_=0;break}}while(1){f=i+20|0;n=t[f>>2]|0;if(n){i=n;r=f;continue}f=i+16|0;n=t[f>>2]|0;if(!n)break;else{i=n;r=f}}if(r>>>0<(t[10222]|0)>>>0)Be();else{t[r>>2]=0;_=i;break}}else{r=t[e+b>>2]|0;if(r>>>0<(t[10222]|0)>>>0)Be();f=r+12|0;if((t[f>>2]|0)!=(k|0))Be();n=i+8|0;if((t[n>>2]|0)==(k|0)){t[f>>2]=i;t[n>>2]=r;_=i;break}else Be()}}while(0);if(s){i=t[e+(b+20)>>2]|0;r=41176+(i<<2)|0;if((k|0)==(t[r>>2]|0)){t[r>>2]=_;if(!_){t[10219]=t[10219]&~(1<<i);break}}else{if(s>>>0<(t[10222]|0)>>>0)Be();i=s+16|0;if((t[i>>2]|0)==(k|0))t[i>>2]=_;else t[s+20>>2]=_;if(!_)break}r=t[10222]|0;if(_>>>0<r>>>0)Be();t[_+24>>2]=s;i=t[e+(b+8)>>2]|0;do{if(i)if(i>>>0<r>>>0)Be();else{t[_+16>>2]=i;t[i+24>>2]=_;break}}while(0);i=t[e+(b+12)>>2]|0;if(i)if(i>>>0<(t[10222]|0)>>>0)Be();else{t[_+20>>2]=i;t[i+24>>2]=_;break}}}else{f=t[e+b>>2]|0;r=t[e+(b|4)>>2]|0;i=40912+(n<<1<<2)|0;if((f|0)!=(i|0)){if(f>>>0<(t[10222]|0)>>>0)Be();if((t[f+12>>2]|0)!=(k|0))Be()}if((r|0)==(f|0)){t[10218]=t[10218]&~(1<<n);break}if((r|0)!=(i|0)){if(r>>>0<(t[10222]|0)>>>0)Be();i=r+8|0;if((t[i>>2]|0)==(k|0))d=i;else Be()}else d=r+8|0;t[f+12>>2]=r;t[d>>2]=f}}while(0);t[p+4>>2]=a|1;t[p+a>>2]=a;if((p|0)==(t[10223]|0)){t[10220]=a;return}}else{t[i>>2]=r&-2;t[p+4>>2]=a|1;t[p+a>>2]=a}i=a>>>3;if(a>>>0<256){r=i<<1;n=40912+(r<<2)|0;f=t[10218]|0;i=1<<i;if(f&i){i=40912+(r+2<<2)|0;r=t[i>>2]|0;if(r>>>0<(t[10222]|0)>>>0)Be();else{w=i;m=r}}else{t[10218]=f|i;w=40912+(r+2<<2)|0;m=n}t[w>>2]=p;t[m+12>>2]=p;t[p+8>>2]=m;t[p+12>>2]=n;return}i=a>>>8;if(i)if(a>>>0>16777215)n=31;else{w=(i+1048320|0)>>>16&8;m=i<<w;k=(m+520192|0)>>>16&4;m=m<<k;n=(m+245760|0)>>>16&2;n=14-(k|w|n)+(m<<n>>>15)|0;n=a>>>(n+7|0)&1|n<<1}else n=0;i=41176+(n<<2)|0;t[p+28>>2]=n;t[p+20>>2]=0;t[p+16>>2]=0;r=t[10219]|0;f=1<<n;e:do{if(r&f){i=t[i>>2]|0;i:do{if((t[i+4>>2]&-8|0)!=(a|0)){n=a<<((n|0)==31?0:25-(n>>>1)|0);while(1){r=i+16+(n>>>31<<2)|0;f=t[r>>2]|0;if(!f)break;if((t[f+4>>2]&-8|0)==(a|0)){v=f;break i}else{n=n<<1;i=f}}if(r>>>0<(t[10222]|0)>>>0)Be();else{t[r>>2]=p;t[p+24>>2]=i;t[p+12>>2]=p;t[p+8>>2]=p;break e}}else v=i}while(0);i=v+8|0;r=t[i>>2]|0;m=t[10222]|0;if(r>>>0>=m>>>0&v>>>0>=m>>>0){t[r+12>>2]=p;t[i>>2]=p;t[p+8>>2]=r;t[p+12>>2]=v;t[p+24>>2]=0;break}else Be()}else{t[10219]=r|f;t[i>>2]=p;t[p+24>>2]=i;t[p+12>>2]=p;t[p+8>>2]=p}}while(0);p=(t[10226]|0)+-1|0;t[10226]=p;if(!p)i=41328;else return;while(1){i=t[i>>2]|0;if(!i)break;else i=i+8|0}t[10226]=-1;return}function Oc(e,i){e=e|0;i=i|0;var r=0;if(e){r=re(i,e)|0;if((i|e)>>>0>65535)r=((r>>>0)/(e>>>0)|0|0)==(i|0)?r:-1}else r=0;i=Pc(r)|0;if(!i)return i|0;if(!(t[i+-4>>2]&3))return i|0;ym(i|0,0,r|0)|0;return i|0}function xc(e,i){e=e|0;i=i|0;var r=0,f=0;if(!e){e=Pc(i)|0;return e|0}if(i>>>0>4294967231){t[(Bg()|0)>>2]=12;e=0;return e|0}r=Lc(e+-8|0,i>>>0<11?16:i+11&-8)|0;if(r){e=r+8|0;return e|0}r=Pc(i)|0;if(!r){e=0;return e|0}f=t[e+-4>>2]|0;f=(f&-8)-((f&3|0)==0?8:4)|0;Em(r|0,e|0,(f>>>0<i>>>0?f:i)|0)|0;Ic(e);e=r;return e|0}function Lc(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0;b=e+4|0;_=t[b>>2]|0;o=_&-8;c=e+o|0;l=t[10222]|0;r=_&3;if(!((r|0)!=1&e>>>0>=l>>>0&e>>>0<c>>>0))Be();f=e+(o|4)|0;n=t[f>>2]|0;if(!(n&1))Be();if(!r){if(i>>>0<256){e=0;return e|0}if(o>>>0>=(i+4|0)>>>0?(o-i|0)>>>0<=t[10338]<<1>>>0:0)return e|0;e=0;return e|0}if(o>>>0>=i>>>0){r=o-i|0;if(r>>>0<=15)return e|0;t[b>>2]=_&1|i|2;t[e+(i+4)>>2]=r|3;t[f>>2]=t[f>>2]|1;Bc(e+i|0,r);return e|0}if((c|0)==(t[10224]|0)){r=(t[10221]|0)+o|0;if(r>>>0<=i>>>0){e=0;return e|0}d=r-i|0;t[b>>2]=_&1|i|2;t[e+(i+4)>>2]=d|1;t[10224]=e+i;t[10221]=d;return e|0}if((c|0)==(t[10223]|0)){f=(t[10220]|0)+o|0;if(f>>>0<i>>>0){e=0;return e|0}r=f-i|0;if(r>>>0>15){t[b>>2]=_&1|i|2;t[e+(i+4)>>2]=r|1;t[e+f>>2]=r;f=e+(f+4)|0;t[f>>2]=t[f>>2]&-2;f=e+i|0}else{t[b>>2]=_&1|f|2;f=e+(f+4)|0;t[f>>2]=t[f>>2]|1;f=0;r=0}t[10220]=r;t[10223]=f;return e|0}if(n&2){e=0;return e|0}h=(n&-8)+o|0;if(h>>>0<i>>>0){e=0;return e|0}d=h-i|0;a=n>>>3;do{if(n>>>0>=256){s=t[e+(o+24)>>2]|0;a=t[e+(o+12)>>2]|0;do{if((a|0)==(c|0)){f=e+(o+20)|0;r=t[f>>2]|0;if(!r){f=e+(o+16)|0;r=t[f>>2]|0;if(!r){u=0;break}}while(1){n=r+20|0;a=t[n>>2]|0;if(a){r=a;f=n;continue}n=r+16|0;a=t[n>>2]|0;if(!a)break;else{r=a;f=n}}if(f>>>0<l>>>0)Be();else{t[f>>2]=0;u=r;break}}else{n=t[e+(o+8)>>2]|0;if(n>>>0<l>>>0)Be();r=n+12|0;if((t[r>>2]|0)!=(c|0))Be();f=a+8|0;if((t[f>>2]|0)==(c|0)){t[r>>2]=a;t[f>>2]=n;u=a;break}else Be()}}while(0);if(s){r=t[e+(o+28)>>2]|0;f=41176+(r<<2)|0;if((c|0)==(t[f>>2]|0)){t[f>>2]=u;if(!u){t[10219]=t[10219]&~(1<<r);break}}else{if(s>>>0<(t[10222]|0)>>>0)Be();r=s+16|0;if((t[r>>2]|0)==(c|0))t[r>>2]=u;else t[s+20>>2]=u;if(!u)break}f=t[10222]|0;if(u>>>0<f>>>0)Be();t[u+24>>2]=s;r=t[e+(o+16)>>2]|0;do{if(r)if(r>>>0<f>>>0)Be();else{t[u+16>>2]=r;t[r+24>>2]=u;break}}while(0);r=t[e+(o+20)>>2]|0;if(r)if(r>>>0<(t[10222]|0)>>>0)Be();else{t[u+20>>2]=r;t[r+24>>2]=u;break}}}else{n=t[e+(o+8)>>2]|0;f=t[e+(o+12)>>2]|0;r=40912+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0<l>>>0)Be();if((t[n+12>>2]|0)!=(c|0))Be()}if((f|0)==(n|0)){t[10218]=t[10218]&~(1<<a);break}if((f|0)!=(r|0)){if(f>>>0<l>>>0)Be();r=f+8|0;if((t[r>>2]|0)==(c|0))s=r;else Be()}else s=f+8|0;t[n+12>>2]=f;t[s>>2]=n}}while(0);if(d>>>0<16){t[b>>2]=h|_&1|2;i=e+(h|4)|0;t[i>>2]=t[i>>2]|1;return e|0}else{t[b>>2]=_&1|i|2;t[e+(i+4)>>2]=d|3;_=e+(h|4)|0;t[_>>2]=t[_>>2]|1;Bc(e+i|0,d);return e|0}return 0}function Bc(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0;k=e+i|0;r=t[e+4>>2]|0;do{if(!(r&1)){u=t[e>>2]|0;if(!(r&3))return;d=e+(0-u)|0;h=u+i|0;o=t[10222]|0;if(d>>>0<o>>>0)Be();if((d|0)==(t[10223]|0)){f=e+(i+4)|0;r=t[f>>2]|0;if((r&3|0)!=3){v=d;s=h;break}t[10220]=h;t[f>>2]=r&-2;t[e+(4-u)>>2]=h|1;t[k>>2]=h;return}a=u>>>3;if(u>>>0<256){n=t[e+(8-u)>>2]|0;f=t[e+(12-u)>>2]|0;r=40912+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0<o>>>0)Be();if((t[n+12>>2]|0)!=(d|0))Be()}if((f|0)==(n|0)){t[10218]=t[10218]&~(1<<a);v=d;s=h;break}if((f|0)!=(r|0)){if(f>>>0<o>>>0)Be();r=f+8|0;if((t[r>>2]|0)==(d|0))l=r;else Be()}else l=f+8|0;t[n+12>>2]=f;t[l>>2]=n;v=d;s=h;break}l=t[e+(24-u)>>2]|0;n=t[e+(12-u)>>2]|0;do{if((n|0)==(d|0)){n=16-u|0;f=e+(n+4)|0;r=t[f>>2]|0;if(!r){f=e+n|0;r=t[f>>2]|0;if(!r){c=0;break}}while(1){n=r+20|0;a=t[n>>2]|0;if(a){r=a;f=n;continue}n=r+16|0;a=t[n>>2]|0;if(!a)break;else{r=a;f=n}}if(f>>>0<o>>>0)Be();else{t[f>>2]=0;c=r;break}}else{a=t[e+(8-u)>>2]|0;if(a>>>0<o>>>0)Be();r=a+12|0;if((t[r>>2]|0)!=(d|0))Be();f=n+8|0;if((t[f>>2]|0)==(d|0)){t[r>>2]=n;t[f>>2]=a;c=n;break}else Be()}}while(0);if(l){r=t[e+(28-u)>>2]|0;f=41176+(r<<2)|0;if((d|0)==(t[f>>2]|0)){t[f>>2]=c;if(!c){t[10219]=t[10219]&~(1<<r);v=d;s=h;break}}else{if(l>>>0<(t[10222]|0)>>>0)Be();r=l+16|0;if((t[r>>2]|0)==(d|0))t[r>>2]=c;else t[l+20>>2]=c;if(!c){v=d;s=h;break}}n=t[10222]|0;if(c>>>0<n>>>0)Be();t[c+24>>2]=l;r=16-u|0;f=t[e+r>>2]|0;do{if(f)if(f>>>0<n>>>0)Be();else{t[c+16>>2]=f;t[f+24>>2]=c;break}}while(0);r=t[e+(r+4)>>2]|0;if(r)if(r>>>0<(t[10222]|0)>>>0)Be();else{t[c+20>>2]=r;t[r+24>>2]=c;v=d;s=h;break}else{v=d;s=h}}else{v=d;s=h}}else{v=e;s=i}}while(0);o=t[10222]|0;if(k>>>0<o>>>0)Be();r=e+(i+4)|0;f=t[r>>2]|0;if(!(f&2)){if((k|0)==(t[10224]|0)){m=(t[10221]|0)+s|0;t[10221]=m;t[10224]=v;t[v+4>>2]=m|1;if((v|0)!=(t[10223]|0))return;t[10223]=0;t[10220]=0;return}if((k|0)==(t[10223]|0)){m=(t[10220]|0)+s|0;t[10220]=m;t[10223]=v;t[v+4>>2]=m|1;t[v+m>>2]=m;return}s=(f&-8)+s|0;a=f>>>3;do{if(f>>>0>=256){l=t[e+(i+24)>>2]|0;n=t[e+(i+12)>>2]|0;do{if((n|0)==(k|0)){f=e+(i+20)|0;r=t[f>>2]|0;if(!r){f=e+(i+16)|0;r=t[f>>2]|0;if(!r){_=0;break}}while(1){n=r+20|0;a=t[n>>2]|0;if(a){r=a;f=n;continue}n=r+16|0;a=t[n>>2]|0;if(!a)break;else{r=a;f=n}}if(f>>>0<o>>>0)Be();else{t[f>>2]=0;_=r;break}}else{a=t[e+(i+8)>>2]|0;if(a>>>0<o>>>0)Be();r=a+12|0;if((t[r>>2]|0)!=(k|0))Be();f=n+8|0;if((t[f>>2]|0)==(k|0)){t[r>>2]=n;t[f>>2]=a;_=n;break}else Be()}}while(0);if(l){r=t[e+(i+28)>>2]|0;f=41176+(r<<2)|0;if((k|0)==(t[f>>2]|0)){t[f>>2]=_;if(!_){t[10219]=t[10219]&~(1<<r);break}}else{if(l>>>0<(t[10222]|0)>>>0)Be();r=l+16|0;if((t[r>>2]|0)==(k|0))t[r>>2]=_;else t[l+20>>2]=_;if(!_)break}f=t[10222]|0;if(_>>>0<f>>>0)Be();t[_+24>>2]=l;r=t[e+(i+16)>>2]|0;do{if(r)if(r>>>0<f>>>0)Be();else{t[_+16>>2]=r;t[r+24>>2]=_;break}}while(0);r=t[e+(i+20)>>2]|0;if(r)if(r>>>0<(t[10222]|0)>>>0)Be();else{t[_+20>>2]=r;t[r+24>>2]=_;break}}}else{n=t[e+(i+8)>>2]|0;f=t[e+(i+12)>>2]|0;r=40912+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0<o>>>0)Be();if((t[n+12>>2]|0)!=(k|0))Be()}if((f|0)==(n|0)){t[10218]=t[10218]&~(1<<a);break}if((f|0)!=(r|0)){if(f>>>0<o>>>0)Be();r=f+8|0;if((t[r>>2]|0)==(k|0))b=r;else Be()}else b=f+8|0;t[n+12>>2]=f;t[b>>2]=n}}while(0);t[v+4>>2]=s|1;t[v+s>>2]=s;if((v|0)==(t[10223]|0)){t[10220]=s;return}}else{t[r>>2]=f&-2;t[v+4>>2]=s|1;t[v+s>>2]=s}r=s>>>3;if(s>>>0<256){f=r<<1;a=40912+(f<<2)|0;n=t[10218]|0;r=1<<r;if(n&r){r=40912+(f+2<<2)|0;f=t[r>>2]|0;if(f>>>0<(t[10222]|0)>>>0)Be();else{w=r;m=f}}else{t[10218]=n|r;w=40912+(f+2<<2)|0;m=a}t[w>>2]=v;t[m+12>>2]=v;t[v+8>>2]=m;t[v+12>>2]=a;return}r=s>>>8;if(r)if(s>>>0>16777215)a=31;else{w=(r+1048320|0)>>>16&8;m=r<<w;k=(m+520192|0)>>>16&4;m=m<<k;a=(m+245760|0)>>>16&2;a=14-(k|w|a)+(m<<a>>>15)|0;a=s>>>(a+7|0)&1|a<<1}else a=0;r=41176+(a<<2)|0;t[v+28>>2]=a;t[v+20>>2]=0;t[v+16>>2]=0;f=t[10219]|0;n=1<<a;if(!(f&n)){t[10219]=f|n;t[r>>2]=v;t[v+24>>2]=r;t[v+12>>2]=v;t[v+8>>2]=v;return}r=t[r>>2]|0;e:do{if((t[r+4>>2]&-8|0)!=(s|0)){a=s<<((a|0)==31?0:25-(a>>>1)|0);while(1){f=r+16+(a>>>31<<2)|0;n=t[f>>2]|0;if(!n)break;if((t[n+4>>2]&-8|0)==(s|0)){r=n;break e}else{a=a<<1;r=n}}if(f>>>0<(t[10222]|0)>>>0)Be();t[f>>2]=v;t[v+24>>2]=r;t[v+12>>2]=v;t[v+8>>2]=v;return}}while(0);f=r+8|0;n=t[f>>2]|0;m=t[10222]|0;if(!(n>>>0>=m>>>0&r>>>0>=m>>>0))Be();t[n+12>>2]=v;t[f>>2]=v;t[v+8>>2]=n;t[v+12>>2]=r;t[v+24>>2]=0;return}function zc(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0;f=t[9321]|0;Hc(42048,f,42104);t[10342]=42892;t[10344]=42912;t[10343]=0;e=t[10720]|0;w=0;ce(62,41368+e|0,42048);a=w;w=0;if(a&1){a=je()|0;nd(41376);Qe(a|0)}t[41368+(e+72)>>2]=0;t[41368+(e+76)>>2]=-1;n=t[9322]|0;Uc(42152,n,42112);t[10364]=42972;t[10365]=42992;r=t[10740]|0;w=0;ce(62,41456+r|0,42152);a=w;w=0;if(a&1){a=je()|0;nd(41460);Qe(a|0)}e=r+72|0;t[41456+e>>2]=0;i=r+76|0;t[41456+i>>2]=-1;a=t[9320]|0;Uc(42200,a,42120);t[10385]=42972;t[10386]=42992;w=0;ce(62,41540+r|0,42200);s=w;w=0;if(s&1){s=je()|0;nd(41544);Qe(s|0)}t[41540+e>>2]=0;t[41540+i>>2]=-1;s=t[41540+((t[(t[10385]|0)+-12>>2]|0)+24)>>2]|0;t[10406]=42972;t[10407]=42992;w=0;ce(62,41624+r|0,s|0);s=w;w=0;if(s&1){s=je()|0;nd(41628);Qe(s|0)}t[41624+e>>2]=0;t[41624+i>>2]=-1;t[41368+((t[(t[10342]|0)+-12>>2]|0)+72)>>2]=41456;e=41540+((t[(t[10385]|0)+-12>>2]|0)+4)|0;t[e>>2]=t[e>>2]|8192;t[41540+((t[(t[10385]|0)+-12>>2]|0)+72)>>2]=41456;jc(42248,f,42128);t[10427]=42932;t[10429]=42952;t[10428]=0;e=t[10730]|0;w=0;ce(62,41708+e|0,42248);s=w;w=0;if(s&1){s=je()|0;od(41716);Qe(s|0)}t[41708+(e+72)>>2]=0;t[41708+(e+76)>>2]=-1;Yc(42304,n,42136);t[10449]=43012;t[10450]=43032;r=t[10750]|0;w=0;ce(62,41796+r|0,42304);s=w;w=0;if(s&1){s=je()|0;od(41800);Qe(s|0)}e=r+72|0;t[41796+e>>2]=0;i=r+76|0;t[41796+i>>2]=-1;Yc(42352,a,42144);t[10470]=43012;t[10471]=43032;w=0;ce(62,41880+r|0,42352);s=w;w=0;if(s&1){s=je()|0;od(41884);Qe(s|0)}t[41880+e>>2]=0;t[41880+i>>2]=-1;s=t[41880+((t[(t[10470]|0)+-12>>2]|0)+24)>>2]|0;t[10491]=43012;t[10492]=43032;w=0;ce(62,41964+r|0,s|0);s=w;w=0;if(s&1){s=je()|0;od(41968);Qe(s|0)}else{t[41964+e>>2]=0;t[41964+i>>2]=-1;t[41708+((t[(t[10427]|0)+-12>>2]|0)+72)>>2]=41796;s=41880+((t[(t[10470]|0)+-12>>2]|0)+4)|0;t[s>>2]=t[s>>2]|8192;t[41880+((t[(t[10470]|0)+-12>>2]|0)+72)>>2]=41796;return}}function Dc(e){e=e|0;w=0;de(70,41456)|0;e=w;w=0;if(((!(e&1)?(w=0,de(70,41624)|0,e=w,w=0,!(e&1)):0)?(w=0,de(71,41796)|0,e=w,w=0,!(e&1)):0)?(w=0,de(71,41964)|0,e=w,w=0,!(e&1)):0)return;e=je(0)|0;Ni(e)}function Nc(){zc(0);di(187,56757,k|0)|0;return}function Fc(){return}function Hc(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;a=c;c=c+16|0;s=a+4|0;n=a;dd(e);t[e>>2]=42600;t[e+32>>2]=i;t[e+40>>2]=r;t[e+48>>2]=-1;f[e+52>>0]=0;xu(s,e+4|0);t[n>>2]=t[s>>2];w=0;ce(23,e|0,n|0);r=w;w=0;if(r&1){s=je()|0;Lu(n);cd(e);Qe(s|0)}else{Lu(n);c=a;return}}function Uc(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;a=c;c=c+16|0;s=a+4|0;n=a;dd(e);t[e>>2]=42536;t[e+32>>2]=i;xu(s,e+4|0);t[n>>2]=t[s>>2];w=0;i=pe(37,n|0,44280)|0;s=w;w=0;if(s&1){s=je()|0;Lu(n);cd(e);Qe(s|0)}else{Lu(n);t[e+36>>2]=i;t[e+40>>2]=r;f[e+44>>0]=(lM[t[(t[i>>2]|0)+28>>2]&127](i)|0)&1;c=a;return}}function jc(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;a=c;c=c+16|0;s=a+4|0;n=a;Rd(e);t[e>>2]=42472;t[e+32>>2]=i;t[e+40>>2]=r;t[e+48>>2]=-1;f[e+52>>0]=0;xu(s,e+4|0);t[n>>2]=t[s>>2];w=0;ce(21,e|0,n|0);r=w;w=0;if(r&1){s=je()|0;Lu(n);Sd(e);Qe(s|0)}else{Lu(n);c=a;return}}function Yc(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;a=c;c=c+16|0;s=a+4|0;n=a;Rd(e);t[e>>2]=42408;t[e+32>>2]=i;xu(s,e+4|0);t[n>>2]=t[s>>2];w=0;i=pe(37,n|0,44288)|0;s=w;w=0;if(s&1){s=je()|0;Lu(n);Sd(e);Qe(s|0)}else{Lu(n);t[e+36>>2]=i;t[e+40>>2]=r;f[e+44>>0]=(lM[t[(t[i>>2]|0)+28>>2]&127](i)|0)&1;c=a;return}}function qc(e){e=e|0;Sd(e);Bp(e);return}function $c(e,i){e=e|0;i=i|0;lM[t[(t[e>>2]|0)+24>>2]&127](e)|0;i=zu(i,44288)|0;t[e+36>>2]=i;f[e+44>>0]=(lM[t[(t[i>>2]|0)+28>>2]&127](i)|0)&1;return}function Vc(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u;r=e+36|0;f=e+40|0;n=l+8|0;a=l;i=e+32|0;e:while(1){e=t[r>>2]|0;e=kM[t[(t[e>>2]|0)+20>>2]&31](e,t[f>>2]|0,l,n,s)|0;h=(t[s>>2]|0)-a|0;if((Cy(l,1,h,t[i>>2]|0)|0)!=(h|0)){e=-1;break}switch(e|0){case 1:break;case 2:{e=-1;break e}default:{o=4;break e}}}if((o|0)==4)e=((Sy(t[i>>2]|0)|0)!=0)<<31>>31;c=u;return e|0}function Xc(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;e:do{if(!(f[e+44>>0]|0))if((r|0)>0){n=i;i=0;while(1){if((_M[t[(t[e>>2]|0)+52>>2]&63](e,t[n>>2]|0)|0)==-1)break e;i=i+1|0;if((i|0)<(r|0))n=n+4|0;else break}}else i=0;else i=Cy(i,4,r,t[e+32>>2]|0)|0}while(0);return i|0}function Gc(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;m=c;c=c+32|0;_=m+16|0;r=m+8|0;b=m+4|0;d=m;k=(i|0)==-1;e:do{if(!k){t[r>>2]=i;if(f[e+44>>0]|0)if((Cy(r,4,1,t[e+32>>2]|0)|0)==1){w=11;break}else{r=-1;break}t[b>>2]=_;u=r+4|0;h=e+36|0;a=e+40|0;s=_+8|0;l=_;o=e+32|0;while(1){e=t[h>>2]|0;e=yM[t[(t[e>>2]|0)+12>>2]&15](e,t[a>>2]|0,r,u,d,_,s,b)|0;if((t[d>>2]|0)==(r|0)){r=-1;break e}if((e|0)==3)break;n=(e|0)==1;if(e>>>0>=2){r=-1;break e}e=(t[b>>2]|0)-l|0;if((Cy(_,1,e,t[o>>2]|0)|0)!=(e|0)){r=-1;break e}if(n)r=n?t[d>>2]|0:r;else{w=11;break e}}if((Cy(r,1,1,t[o>>2]|0)|0)!=1)r=-1;else w=11}else w=11}while(0);if((w|0)==11)r=k?0:i;c=m;return r|0}function Kc(e,i){e=e|0;i=i|0;var r=0,n=0;n=zu(i,44288)|0;r=e+36|0;t[r>>2]=n;i=e+44|0;t[i>>2]=lM[t[(t[n>>2]|0)+24>>2]&127](n)|0;r=t[r>>2]|0;f[e+53>>0]=(lM[t[(t[r>>2]|0)+28>>2]&127](r)|0)&1;if((t[i>>2]|0)>8)$o(56783);return}function Wc(e){e=e|0;Sd(e);Bp(e);return}function Zc(e){e=e|0;return eh(e,0)|0}function Jc(e){e=e|0;return eh(e,1)|0}function Qc(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;u=h+16|0;o=h+8|0;n=h+4|0;a=h;s=e+52|0;r=(f[s>>0]|0)!=0;e:do{if((i|0)==-1)if(r)i=-1;else{i=t[e+48>>2]|0;f[s>>0]=(i|0)!=-1&1}else{l=e+48|0;i:do{if(r){t[n>>2]=t[l>>2];r=t[e+36>>2]|0;switch(yM[t[(t[r>>2]|0)+12>>2]&15](r,t[e+40>>2]|0,n,n+4|0,a,u,u+8|0,o)|0){case 1:case 2:{i=-1;break e}case 3:{f[u>>0]=t[l>>2];t[o>>2]=u+1;break}default:{}}r=e+32|0;while(1){n=t[o>>2]|0;if(n>>>0<=u>>>0)break i;e=n+-1|0;t[o>>2]=e;if((xy(f[e>>0]|0,t[r>>2]|0)|0)==-1){i=-1;break e}}}}while(0);t[l>>2]=i;f[s>>0]=1}}while(0);c=h;return i|0}function eh(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0;w=c;c=c+32|0;k=w+16|0;_=w+8|0;h=w+4|0;d=w;a=e+52|0;e:do{if(f[a>>0]|0){n=e+48|0;r=t[n>>2]|0;if(i){t[n>>2]=-1;f[a>>0]=0}}else{r=t[e+44>>2]|0;r=(r|0)>1?r:1;b=e+32|0;if((r|0)>0){a=0;do{n=Py(t[b>>2]|0)|0;if((n|0)==-1){r=-1;break e}f[k+a>>0]=n;a=a+1|0}while((a|0)<(r|0))}i:do{if(!(f[e+53>>0]|0)){l=e+40|0;o=e+36|0;u=_+4|0;r:while(1){m=t[l>>2]|0;a=m;n=t[a>>2]|0;a=t[a+4>>2]|0;v=t[o>>2]|0;s=k+r|0;switch(yM[t[(t[v>>2]|0)+16>>2]&15](v,m,k,s,h,_,u,d)|0){case 2:{r=-1;break e}case 3:break r;case 1:break;default:break i}v=t[l>>2]|0;t[v>>2]=n;t[v+4>>2]=a;if((r|0)==8){r=-1;break e}n=Py(t[b>>2]|0)|0;if((n|0)==-1){r=-1;break e}f[s>>0]=n;r=r+1|0}t[_>>2]=f[k>>0]}else t[_>>2]=f[k>>0]}while(0);if(i){r=t[_>>2]|0;t[e+48>>2]=r;break}while(1){if((r|0)<=0)break;r=r+-1|0;if((xy(f[k+r>>0]|0,t[b>>2]|0)|0)==-1){r=-1;break e}}r=t[_>>2]|0}}while(0);c=w;return r|0}function ih(e){e=e|0;cd(e);Bp(e);return}function rh(e,i){e=e|0;i=i|0;lM[t[(t[e>>2]|0)+24>>2]&127](e)|0;i=zu(i,44280)|0;t[e+36>>2]=i;f[e+44>>0]=(lM[t[(t[i>>2]|0)+28>>2]&127](i)|0)&1;return}function fh(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;l=u+8|0;s=u;r=e+36|0;f=e+40|0;n=l+8|0;a=l;i=e+32|0;e:while(1){e=t[r>>2]|0;e=kM[t[(t[e>>2]|0)+20>>2]&31](e,t[f>>2]|0,l,n,s)|0;h=(t[s>>2]|0)-a|0;if((Cy(l,1,h,t[i>>2]|0)|0)!=(h|0)){e=-1;break}switch(e|0){case 1:break;case 2:{e=-1;break e}default:{o=4;break e}}}if((o|0)==4)e=((Sy(t[i>>2]|0)|0)!=0)<<31>>31;c=u;return e|0}function nh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;e:do{if(!(f[e+44>>0]|0))if((r|0)>0){n=i;i=0;while(1){if((_M[t[(t[e>>2]|0)+52>>2]&63](e,a[n>>0]|0)|0)==-1)break e;i=i+1|0;if((i|0)<(r|0))n=n+1|0;else break}}else i=0;else i=Cy(i,1,r,t[e+32>>2]|0)|0}while(0);return i|0}function th(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;m=c;c=c+32|0;_=m+16|0;r=m+8|0;b=m+4|0;d=m;k=(i|0)==-1;e:do{if(!k){f[r>>0]=i;if(f[e+44>>0]|0)if((Cy(r,1,1,t[e+32>>2]|0)|0)==1){w=11;break}else{r=-1;break}t[b>>2]=_;h=r+1|0;a=e+36|0;s=e+40|0;l=_+8|0;o=_;u=e+32|0;while(1){e=t[a>>2]|0;e=yM[t[(t[e>>2]|0)+12>>2]&15](e,t[s>>2]|0,r,h,d,_,l,b)|0;if((t[d>>2]|0)==(r|0)){r=-1;break e}if((e|0)==3)break;n=(e|0)==1;if(e>>>0>=2){r=-1;break e}e=(t[b>>2]|0)-o|0;if((Cy(_,1,e,t[u>>2]|0)|0)!=(e|0)){r=-1;break e}if(n)r=n?t[d>>2]|0:r;else{w=11;break e}}if((Cy(r,1,1,t[u>>2]|0)|0)!=1)r=-1;else w=11}else w=11}while(0);if((w|0)==11)r=k?0:i;c=m;return r|0}function ah(e,i){e=e|0;i=i|0;var r=0,n=0;n=zu(i,44280)|0;r=e+36|0;t[r>>2]=n;i=e+44|0;t[i>>2]=lM[t[(t[n>>2]|0)+24>>2]&127](n)|0;r=t[r>>2]|0;f[e+53>>0]=(lM[t[(t[r>>2]|0)+28>>2]&127](r)|0)&1;if((t[i>>2]|0)>8)$o(56783);return}function sh(e){e=e|0;cd(e);Bp(e);return}function lh(e){e=e|0;return ch(e,0)|0}function oh(e){e=e|0;return ch(e,1)|0}function uh(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;u=h+16|0;o=h+4|0;n=h+8|0;a=h;s=e+52|0;r=(f[s>>0]|0)!=0;e:do{if((i|0)==-1)if(r)i=-1;else{i=t[e+48>>2]|0;f[s>>0]=(i|0)!=-1&1}else{l=e+48|0;i:do{if(r){f[n>>0]=t[l>>2];r=t[e+36>>2]|0;switch(yM[t[(t[r>>2]|0)+12>>2]&15](r,t[e+40>>2]|0,n,n+1|0,a,u,u+8|0,o)|0){case 1:case 2:{i=-1;break e}case 3:{f[u>>0]=t[l>>2];t[o>>2]=u+1;break}default:{}}r=e+32|0;while(1){n=t[o>>2]|0;if(n>>>0<=u>>>0)break i;e=n+-1|0;t[o>>2]=e;if((xy(f[e>>0]|0,t[r>>2]|0)|0)==-1){i=-1;break e}}}}while(0);t[l>>2]=i;f[s>>0]=1}}while(0);c=h;return i|0}function ch(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0;m=c;c=c+32|0;w=m+16|0;k=m+8|0;d=m+4|0;b=m;s=e+52|0;e:do{if(f[s>>0]|0){n=e+48|0;r=t[n>>2]|0;if(i){t[n>>2]=-1;f[s>>0]=0}}else{r=t[e+44>>2]|0;r=(r|0)>1?r:1;_=e+32|0;if((r|0)>0){s=0;do{n=Py(t[_>>2]|0)|0;if((n|0)==-1){r=-1;break e}f[w+s>>0]=n;s=s+1|0}while((s|0)<(r|0))}i:do{if(!(f[e+53>>0]|0)){o=e+40|0;u=e+36|0;h=k+1|0;r:while(1){v=t[o>>2]|0;s=v;n=t[s>>2]|0;s=t[s+4>>2]|0;p=t[u>>2]|0;l=w+r|0;switch(yM[t[(t[p>>2]|0)+16>>2]&15](p,v,w,l,d,k,h,b)|0){case 2:{r=-1;break e}case 3:break r;case 1:break;default:break i}p=t[o>>2]|0;t[p>>2]=n;t[p+4>>2]=s;if((r|0)==8){r=-1;break e}n=Py(t[_>>2]|0)|0;if((n|0)==-1){r=-1;break e}f[l>>0]=n;r=r+1|0}f[k>>0]=f[w>>0]|0}else f[k>>0]=f[w>>0]|0}while(0);if(i){r=f[k>>0]|0;t[e+48>>2]=r&255}else{while(1){if((r|0)<=0)break;r=r+-1|0;if((xy(a[w+r>>0]|0,t[_>>2]|0)|0)==-1){r=-1;break e}}r=f[k>>0]|0}r=r&255}}while(0);c=m;return r|0}function hh(e){e=e|0;return}function dh(e){e=e|0;e=e+4|0;t[e>>2]=(t[e>>2]|0)+1;return}function bh(e){e=e|0;var i=0,r=0;r=e+4|0;i=t[r>>2]|0;t[r>>2]=i+-1;if(!i){tM[t[(t[e>>2]|0)+8>>2]&255](e);e=1}else e=0;return e|0}function _h(e,i){e=e|0;i=i|0;t[e>>2]=36868;w=0;ce(86,e+4|0,((f[i>>0]&1)==0?i+1|0:t[i+8>>2]|0)|0);e=w;w=0;if(e&1){e=je()|0;Qe(e|0)}else return}function kh(e,i){e=e|0;i=i|0;t[e>>2]=36868;w=0;ce(86,e+4|0,i|0);e=w;w=0;if(e&1){e=je()|0;Qe(e|0)}else return}function wh(e,i){e=e|0;i=i|0;var r=0,f=0;f=Vy(i)|0;r=Lp(f+13|0)|0;t[r>>2]=f;t[r+4>>2]=f;t[r+8>>2]=0;r=r+12|0;Em(r|0,i|0,f+1|0)|0;t[e>>2]=r;return}function mh(e,i,r){e=e|0;i=i|0;r=r|0;t[e>>2]=r;t[e+4>>2]=i;return}function vh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0;n=c;c=c+16|0;f=n;pM[t[(t[e>>2]|0)+12>>2]&15](f,e,i);if((t[f+4>>2]|0)==(t[r+4>>2]|0))f=(t[f>>2]|0)==(t[r>>2]|0);else f=0;c=n;return f|0}function ph(e,i,r){e=e|0;i=i|0;r=r|0;return((t[i>>2]|0)==(r|0)?(t[i+4>>2]|0)==(e|0):0)|0}function gh(e,i,r){e=e|0;i=i|0;r=r|0;i=zg(r)|0;Ih(e,i,Vy(i)|0);return}function yh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;l=c;c=c+16|0;s=l;n=t[i>>2]|0;do{if(n){a=f[r>>0]|0;if(!(a&1))a=(a&255)>>>1;else a=t[r+4>>2]|0;if(a){Hh(r,56990)|0;n=t[i>>2]|0}i=t[i+4>>2]|0;pM[t[(t[i>>2]|0)+24>>2]&15](s,i,n);i=f[s>>0]|0;a=(i&1)==0;w=0;_e(30,r|0,(a?s+1|0:t[s+8>>2]|0)|0,(a?(i&255)>>>1:t[s+4>>2]|0)|0)|0;i=w;w=0;if(i&1){l=je()|0;xh(s);Qe(l|0)}else{xh(s);break}}}while(0);t[e>>2]=t[r>>2];t[e+4>>2]=t[r+4>>2];t[e+8>>2]=t[r+8>>2];t[r>>2]=0;t[r+4>>2]=0;t[r+8>>2]=0;c=l;return}function Mh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0;n=c;c=c+32|0;f=n+12|0;a=n;Ih(a,r,Vy(r)|0);w=0;Ee(10,f|0,i|0,a|0);r=w;w=0;do{if(!(r&1)){w=0;ce(87,e|0,f|0);r=w;w=0;if(r&1){n=je()|0;xh(f);f=n;break}else{xh(f);xh(a);t[e>>2]=42664;r=t[i+4>>2]|0;a=e+8|0;t[a>>2]=t[i>>2];t[a+4>>2]=r;c=n;return}}else f=je()|0}while(0);xh(a);Qe(f|0)}function Ah(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0;a=c;c=c+48|0;n=a+24|0;l=a+16|0;s=a;t[l>>2]=i;t[l+4>>2]=r;Ph(s,f);w=0;Ee(10,n|0,l|0,s|0);f=w;w=0;do{if(!(f&1)){w=0;ce(87,e|0,n|0);l=w;w=0;if(l&1){l=je()|0;xh(n);n=l;break}else{xh(n);xh(s);t[e>>2]=42664;t[e+8>>2]=i;t[e+12>>2]=r;c=a;return}}else n=je()|0}while(0);xh(s);Qe(n|0)}function Eh(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0;n=c;c=c+48|0;f=n+24|0;s=n+16|0;a=n;t[s>>2]=i;t[s+4>>2]=r;Ih(a,58898,0);w=0;Ee(10,f|0,s|0,a|0);s=w;w=0;do{if(!(s&1)){w=0;ce(87,e|0,f|0);s=w;w=0;if(s&1){s=je()|0;xh(f);f=s;break}else{xh(f);xh(a);t[e>>2]=42664;t[e+8>>2]=i;t[e+12>>2]=r;c=n;return}}else f=je()|0}while(0);xh(a);Qe(f|0)}function Sh(e){e=e|0;$p(e);return}function Th(e){e=e|0;$p(e);Bp(e);return}function Rh(e){e=e|0;return}function Ch(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;pi(42676)|0;if((t[e>>2]|0)==1)do{Oe(42704,42676)|0}while((t[e>>2]|0)==1);do{if(!(t[e>>2]|0)){t[e>>2]=1;w=0;de(72,42676)|0;f=w;w=0;if((((!(f&1)?(w=0,ue(r|0,i|0),f=w,w=0,!(f&1)):0)?(w=0,de(73,42676)|0,f=w,w=0,!(f&1)):0)?(t[e>>2]=-1,w=0,de(72,42676)|0,f=w,w=0,!(f&1)):0)?(w=0,de(74,42704)|0,f=w,w=0,!(f&1)):0)break;f=je(0)|0;We(f|0)|0;w=0;de(73,42676)|0;f=w;w=0;if((!(f&1)?(t[e>>2]=0,w=0,de(72,42676)|0,f=w,w=0,!(f&1)):0)?(w=0,de(74,42704)|0,f=w,w=0,!(f&1)):0){w=0;Se(5);w=0}i=je()|0;w=0;Se(3);f=w;w=0;if(f&1){f=je(0)|0;Ni(f)}else Qe(i|0)}else ti(42676)|0}while(0);return}function Ph(e,i){e=e|0;i=i|0;if(!(f[i>>0]&1)){t[e>>2]=t[i>>2];t[e+4>>2]=t[i+4>>2];t[e+8>>2]=t[i+8>>2]}else Ih(e,t[i+8>>2]|0,t[i+4>>2]|0);return}function Ih(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0;if(r>>>0>4294967279)Ip(e);if(r>>>0<11){f[e>>0]=r<<1;e=e+1|0}else{a=r+16&-16;n=Lp(a)|0;t[e+8>>2]=n;t[e>>2]=a|1;t[e+4>>2]=r;e=n}Em(e|0,i|0,r|0)|0;f[e+r>>0]=0;return}function Oh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0;if(i>>>0>4294967279)Ip(e);if(i>>>0<11){f[e>>0]=i<<1;e=e+1|0}else{a=i+16&-16;n=Lp(a)|0;t[e+8>>2]=n;t[e>>2]=a|1;t[e+4>>2]=i;e=n}ym(e|0,r|0,i|0)|0;f[e+i>>0]=0;return}function xh(e){e=e|0;if(f[e>>0]&1)Bp(t[e+8>>2]|0);return}function Lh(e,i){e=e|0;i=i|0;var r=0,n=0;if((e|0)!=(i|0)){r=f[i>>0]|0;n=(r&1)==0;zh(e,n?i+1|0:t[i+8>>2]|0,n?(r&255)>>>1:t[i+4>>2]|0)|0}return e|0}function Bh(e,i){e=e|0;i=i|0;return zh(e,i,Vy(i)|0)|0}function zh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;n=f[e>>0]|0;if(!(n&1))s=10;else{n=t[e>>2]|0;s=(n&-2)+-1|0;n=n&255}a=(n&1)==0;do{if(s>>>0>=r>>>0){if(a)n=e+1|0;else n=t[e+8>>2]|0;Tm(n|0,i|0,r|0)|0;f[n+r>>0]=0;if(!(f[e>>0]&1)){f[e>>0]=r<<1;break}else{t[e+4>>2]=r;break}}else{if(a)n=(n&255)>>>1;else n=t[e+4>>2]|0;Yh(e,s,r-s|0,n,0,n,r,i)}}while(0);return e|0}function Dh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0;n=f[e>>0]|0;a=(n&1)==0;if(a)n=(n&255)>>>1;else n=t[e+4>>2]|0;do{if(n>>>0>=i>>>0)if(a){f[e+1+i>>0]=0;f[e>>0]=i<<1;break}else{f[(t[e+8>>2]|0)+i>>0]=0;t[e+4>>2]=i;break}else Nh(e,i-n|0,r)|0}while(0);return}function Nh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;if(i){n=f[e>>0]|0;if(!(n&1))a=10;else{n=t[e>>2]|0;a=(n&-2)+-1|0;n=n&255}if(!(n&1))s=(n&255)>>>1;else s=t[e+4>>2]|0;if((a-s|0)>>>0<i>>>0){qh(e,a,i-a+s|0,s,s,0,0);n=f[e>>0]|0}if(!(n&1))a=e+1|0;else a=t[e+8>>2]|0;ym(a+s|0,r|0,i|0)|0;n=s+i|0;if(!(f[e>>0]&1))f[e>>0]=n<<1;else t[e+4>>2]=n;f[a+n>>0]=0}return e|0}function Fh(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0;if(i>>>0>4294967279)Ip(e);r=f[e>>0]|0;if(!(r&1))n=10;else{r=t[e>>2]|0;n=(r&-2)+-1|0;r=r&255}if(!(r&1))o=(r&255)>>>1;else o=t[e+4>>2]|0;i=o>>>0>i>>>0?o:i;if(i>>>0<11)l=10;else l=(i+16&-16)+-1|0;e:do{if((l|0)!=(n|0)){do{if((l|0)!=10){i=l+1|0;if(l>>>0<=n>>>0){w=0;i=de(67,i|0)|0;s=w;w=0;if(s&1){e=je(0)|0;We(e|0)|0;Je();break e}}else i=Lp(i)|0;if(!(r&1)){n=1;a=e+1|0;s=0;break}else{n=1;a=t[e+8>>2]|0;s=1;break}}else{i=e+1|0;n=0;a=t[e+8>>2]|0;s=1}}while(0);if(!(r&1))r=(r&255)>>>1;else r=t[e+4>>2]|0;Em(i|0,a|0,r+1|0)|0;if(s)Bp(a);if(n){t[e>>2]=l+1|1;t[e+4>>2]=o;t[e+8>>2]=i;break}else{f[e>>0]=o<<1;break}}}while(0);return}function Hh(e,i){e=e|0;i=i|0;return jh(e,i,Vy(i)|0)|0}function Uh(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0;r=f[e>>0]|0;n=(r&1)!=0;if(n){a=(t[e>>2]&-2)+-1|0;s=t[e+4>>2]|0}else{a=10;s=(r&255)>>>1}if((s|0)==(a|0)){qh(e,a,1,a,a,0,0);if(!(f[e>>0]&1))a=7;else a=8}else if(n)a=8;else a=7;if((a|0)==7){f[e>>0]=(s<<1)+2;r=e+1|0;n=s+1|0}else if((a|0)==8){r=t[e+8>>2]|0;n=s+1|0;t[e+4>>2]=n}f[r+s>>0]=i;f[r+n>>0]=0;return}function jh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;n=f[e>>0]|0;if(!(n&1))a=10;else{n=t[e>>2]|0;a=(n&-2)+-1|0;n=n&255}if(!(n&1))s=(n&255)>>>1;else s=t[e+4>>2]|0;if((a-s|0)>>>0>=r>>>0){if(r){if(!(n&1))a=e+1|0;else a=t[e+8>>2]|0;Em(a+s|0,i|0,r|0)|0;n=s+r|0;if(!(f[e>>0]&1))f[e>>0]=n<<1;else t[e+4>>2]=n;f[a+n>>0]=0}}else Yh(e,a,r-a+s|0,s,s,0,r,i);return e|0}function Yh(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,c=0,h=0;if((-18-i|0)>>>0<r>>>0)Ip(e);if(!(f[e>>0]&1))h=e+1|0;else h=t[e+8>>2]|0;if(i>>>0<2147483623){u=r+i|0;c=i<<1;u=u>>>0<c>>>0?c:u;u=u>>>0<11?11:u+16&-16}else u=-17;c=Lp(u)|0;if(a)Em(c|0,h|0,a|0)|0;if(l)Em(c+a|0,o|0,l|0)|0;r=n-s|0;if((r|0)!=(a|0))Em(c+(l+a)|0,h+(s+a)|0,r-a|0)|0;if((i|0)!=10)Bp(h);t[e+8>>2]=c;t[e>>2]=u|1;i=r+l|0;t[e+4>>2]=i;f[c+i>>0]=0;return}function qh(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,c=0;if((-17-i|0)>>>0<r>>>0)Ip(e);if(!(f[e>>0]&1))c=e+1|0;else c=t[e+8>>2]|0;if(i>>>0<2147483623){o=r+i|0;u=i<<1;o=o>>>0<u>>>0?u:o;o=o>>>0<11?11:o+16&-16}else o=-17;u=Lp(o)|0;if(a)Em(u|0,c|0,a|0)|0;r=n-s|0;if((r|0)!=(a|0))Em(u+(l+a)|0,c+(s+a)|0,r-a|0)|0;if((i|0)!=10)Bp(c);t[e+8>>2]=u;t[e>>2]=o|1;return}function $h(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0;if(r>>>0>1073741807)Ip(e);if(r>>>0<2){f[e>>0]=r<<1;e=e+4|0}else{a=r+4&-4;n=Lp(a<<2)|0;t[e+8>>2]=n;t[e>>2]=a|1;t[e+4>>2]=r;e=n}Ky(e,i,r)|0;t[e+(r<<2)>>2]=0;return}function Vh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0;if(i>>>0>1073741807)Ip(e);if(i>>>0<2){f[e>>0]=i<<1;e=e+4|0}else{a=i+4&-4;n=Lp(a<<2)|0;t[e+8>>2]=n;t[e>>2]=a|1;t[e+4>>2]=i;e=n}Zy(e,r,i)|0;t[e+(i<<2)>>2]=0;return}function Xh(e){e=e|0;if(f[e>>0]&1)Bp(t[e+8>>2]|0);return}function Gh(e,i){e=e|0;i=i|0;return Kh(e,i,Gy(i)|0)|0}function Kh(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;n=f[e>>0]|0;if(!(n&1))s=1;else{n=t[e>>2]|0;s=(n&-2)+-1|0;n=n&255}a=(n&1)==0;do{if(s>>>0>=r>>>0){if(a)n=e+4|0;else n=t[e+8>>2]|0;Wy(n,i,r)|0;t[n+(r<<2)>>2]=0;if(!(f[e>>0]&1)){f[e>>0]=r<<1;break}else{t[e+4>>2]=r;break}}else{if(a)n=(n&255)>>>1;else n=t[e+4>>2]|0;Jh(e,s,r-s|0,n,0,n,r,i)}}while(0);return e|0}function Wh(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0;if(i>>>0>1073741807)Ip(e);r=f[e>>0]|0;if(!(r&1))n=1;else{r=t[e>>2]|0;n=(r&-2)+-1|0;r=r&255}if(!(r&1))o=(r&255)>>>1;else o=t[e+4>>2]|0;i=o>>>0>i>>>0?o:i;if(i>>>0<2)l=1;else l=(i+4&-4)+-1|0;e:do{if((l|0)!=(n|0)){do{if((l|0)!=1){i=(l<<2)+4|0;if(l>>>0<=n>>>0){w=0;i=de(67,i|0)|0;s=w;w=0;if(s&1){e=je(0)|0;We(e|0)|0;Je();break e}}else i=Lp(i)|0;if(!(r&1)){n=1;a=e+4|0;s=0;break}else{n=1;a=t[e+8>>2]|0;s=1;break}}else{i=e+4|0;n=0;a=t[e+8>>2]|0;s=1}}while(0);if(!(r&1))r=(r&255)>>>1;else r=t[e+4>>2]|0;Ky(i,a,r+1|0)|0;if(s)Bp(a);if(n){t[e>>2]=l+1|1;t[e+4>>2]=o;t[e+8>>2]=i;break}else{f[e>>0]=o<<1;break}}}while(0);return}function Zh(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0;r=f[e>>0]|0;n=(r&1)!=0;if(n){a=(t[e>>2]&-2)+-1|0;s=t[e+4>>2]|0}else{a=1;s=(r&255)>>>1}if((s|0)==(a|0)){Qh(e,a,1,a,a,0,0);if(!(f[e>>0]&1))a=7;else a=8}else if(n)a=8;else a=7;if((a|0)==7){f[e>>0]=(s<<1)+2;r=e+4|0;n=s+1|0}else if((a|0)==8){r=t[e+8>>2]|0;n=s+1|0;t[e+4>>2]=n}t[r+(s<<2)>>2]=i;t[r+(n<<2)>>2]=0;return}function Jh(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,c=0,h=0;if((1073741806-i|0)>>>0<r>>>0)Ip(e);if(!(f[e>>0]&1))h=e+4|0;else h=t[e+8>>2]|0;if(i>>>0<536870887){u=r+i|0;c=i<<1;u=u>>>0<c>>>0?c:u;u=u>>>0<2?2:u+4&-4}else u=1073741807;c=Lp(u<<2)|0;if(a)Ky(c,h,a)|0;if(l)Ky(c+(a<<2)|0,o,l)|0;r=n-s|0;if((r|0)!=(a|0))Ky(c+(l+a<<2)|0,h+(s+a<<2)|0,r-a|0)|0;if((i|0)!=1)Bp(h);t[e+8>>2]=c;t[e>>2]=u|1;i=r+l|0;t[e+4>>2]=i;t[c+(i<<2)>>2]=0;return}function Qh(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,c=0;if((1073741807-i|0)>>>0<r>>>0)Ip(e);if(!(f[e>>0]&1))c=e+4|0;else c=t[e+8>>2]|0;if(i>>>0<536870887){o=r+i|0;u=i<<1;o=o>>>0<u>>>0?u:o;o=o>>>0<2?2:o+4&-4}else o=1073741807;u=Lp(o<<2)|0;if(a)Ky(u,c,a)|0;r=n-s|0;if((r|0)!=(a|0))Ky(u+(l+a<<2)|0,c+(s+a<<2)|0,r-a|0)|0;if((i|0)!=1)Bp(c);t[e+8>>2]=u;t[e>>2]=o|1;return}function ed(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;a=i;n=r-a|0;if(n>>>0>4294967279)Ip(e);if(n>>>0<11){f[e>>0]=n<<1;s=e+1|0}else{l=n+16&-16;s=Lp(l)|0;t[e+8>>2]=s;t[e>>2]=l|1;t[e+4>>2]=n}e=r-a|0;if((i|0)!=(r|0)){n=s;while(1){f[n>>0]=f[i>>0]|0;i=i+1|0;if((i|0)==(r|0))break;else n=n+1|0}}f[s+e>>0]=0;return}function id(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;s=i;n=r-s|0;a=n>>2;if(a>>>0>1073741807)Ip(e);if(a>>>0<2){f[e>>0]=n>>>1;e=e+4|0}else{l=a+4&-4;n=Lp(l<<2)|0;t[e+8>>2]=n;t[e>>2]=l|1;t[e+4>>2]=a;e=n}a=(r-s|0)>>>2;if((i|0)!=(r|0)){n=e;while(1){t[n>>2]=t[i>>2];i=i+4|0;if((i|0)==(r|0))break;else n=n+4|0}}t[e+(a<<2)>>2]=0;return}function rd(e,i){e=e|0;i=i|0;var r=0,f=0,n=0;r=c;c=c+16|0;f=r;n=(t[e+24>>2]|0)==0;t[e+16>>2]=n&1|i;if(!((n&1|i)&t[e+20>>2])){c=r;return}i=Ue(16)|0;_b()|0;t[f>>2]=1;t[f+4>>2]=43112;w=0;Ee(11,i|0,57437,f|0);n=w;w=0;if(n&1){n=je()|0;He(i|0);Qe(n|0)}else bi(i|0,864,112)}function fd(e){e=e|0;var i=0;t[e>>2]=43068;w=0;ce(88,e|0,0);i=w;w=0;if(i&1){i=je(0)|0;Ni(i)}else{Lu(e+28|0);Ic(t[e+32>>2]|0);Ic(t[e+36>>2]|0);Ic(t[e+48>>2]|0);Ic(t[e+60>>2]|0);return}}function nd(e){e=e|0;fd(e);return}function td(e){e=e|0;fd(e);Bp(e);return}function ad(e,i){e=e|0;i=i|0;var r=0,f=0,n=0;r=t[e+40>>2]|0;f=e+32|0;n=e+36|0;if(r)do{r=r+-1|0;pM[t[(t[f>>2]|0)+(r<<2)>>2]&15](i,e,t[(t[n>>2]|0)+(r<<2)>>2]|0)}while((r|0)!=0);return}function sd(e){e=e|0;var i=0,r=0;r=c;c=c+16|0;i=r;xu(i,e+28|0);c=r;return t[i>>2]|0}function ld(e,i){e=e|0;i=i|0;var r=0;t[e+24>>2]=i;t[e+16>>2]=(i|0)==0&1;t[e+20>>2]=0;t[e+4>>2]=4098;t[e+12>>2]=0;t[e+8>>2]=6;r=e+28|0;i=e+32|0;e=i+40|0;do{t[i>>2]=0;i=i+4|0}while((i|0)<(e|0));Ou(r);return}function od(e){e=e|0;fd(e);return}function ud(e){e=e|0;fd(e);Bp(e);return}function cd(e){e=e|0;t[e>>2]=42760;Lu(e+4|0);return}function hd(e){e=e|0;t[e>>2]=42760;Lu(e+4|0);Bp(e);return}function dd(e){e=e|0;t[e>>2]=42760;Ou(e+4|0);e=e+8|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[e+16>>2]=0;t[e+20>>2]=0;return}function bd(e,i){e=e|0;i=i|0;return}function _d(e,i,r){e=e|0;i=i|0;r=r|0;return e|0}function kd(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;i=e;t[i>>2]=0;t[i+4>>2]=0;i=e+8|0;t[i>>2]=-1;t[i+4>>2]=-1;return}function wd(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;i=e;t[i>>2]=0;t[i+4>>2]=0;i=e+8|0;t[i>>2]=-1;t[i+4>>2]=-1;return}function md(e){e=e|0;return 0}function vd(e){e=e|0;return 0}function pd(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;s=e+12|0;l=e+16|0;e:do{if((r|0)>0){a=i;i=0;while(1){n=t[s>>2]|0;if(n>>>0<(t[l>>2]|0)>>>0){t[s>>2]=n+1;n=f[n>>0]|0}else{n=lM[t[(t[e>>2]|0)+40>>2]&127](e)|0;if((n|0)==-1)break e;n=n&255}f[a>>0]=n;i=i+1|0;if((i|0)<(r|0))a=a+1|0;else break}}else i=0}while(0);return i|0}function gd(e){e=e|0;return-1}function yd(e){e=e|0;var i=0;if((lM[t[(t[e>>2]|0)+36>>2]&127](e)|0)==-1)e=-1;else{i=e+12|0;e=t[i>>2]|0;t[i>>2]=e+1;e=a[e>>0]|0}return e|0}function Md(e,i){e=e|0;i=i|0;return-1}function Ad(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0;l=e+24|0;o=e+28|0;e:do{if((r|0)>0){s=i;i=0;while(1){n=t[l>>2]|0;if(n>>>0>=(t[o>>2]|0)>>>0){if((_M[t[(t[e>>2]|0)+52>>2]&63](e,a[s>>0]|0)|0)==-1)break e}else{u=f[s>>0]|0;t[l>>2]=n+1;f[n>>0]=u}i=i+1|0;if((i|0)<(r|0))s=s+1|0;else break}}else i=0}while(0);return i|0}function Ed(e,i){e=e|0;i=i|0;return-1}function Sd(e){e=e|0;t[e>>2]=42824;Lu(e+4|0);return}function Td(e){e=e|0;t[e>>2]=42824;Lu(e+4|0);Bp(e);return}function Rd(e){e=e|0;t[e>>2]=42824;Ou(e+4|0);e=e+8|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[e+16>>2]=0;t[e+20>>2]=0;return}function Cd(e,i){e=e|0;i=i|0;return}function Pd(e,i,r){e=e|0;i=i|0;r=r|0;return e|0}function Id(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;i=e;t[i>>2]=0;t[i+4>>2]=0;i=e+8|0;t[i>>2]=-1;t[i+4>>2]=-1;return}function Od(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;i=e;t[i>>2]=0;t[i+4>>2]=0;i=e+8|0;t[i>>2]=-1;t[i+4>>2]=-1;return}function xd(e){e=e|0;return 0}function Ld(e){e=e|0;return 0}function Bd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0;a=e+12|0;s=e+16|0;e:do{if((r|0)>0){n=i;i=0;while(1){f=t[a>>2]|0;if(f>>>0>=(t[s>>2]|0)>>>0){f=lM[t[(t[e>>2]|0)+40>>2]&127](e)|0;if((f|0)==-1)break e}else{t[a>>2]=f+4;f=t[f>>2]|0}t[n>>2]=f;i=i+1|0;if((i|0)<(r|0))n=n+4|0;else break}}else i=0}while(0);return i|0}function zd(e){e=e|0;return-1}function Dd(e){e=e|0;var i=0;if((lM[t[(t[e>>2]|0)+36>>2]&127](e)|0)==-1)e=-1;else{i=e+12|0;e=t[i>>2]|0;t[i>>2]=e+4;e=t[e>>2]|0}return e|0}function Nd(e,i){e=e|0;i=i|0;return-1}function Fd(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0;a=e+24|0;s=e+28|0;e:do{if((r|0)>0){n=i;i=0;while(1){f=t[a>>2]|0;if(f>>>0>=(t[s>>2]|0)>>>0){if((_M[t[(t[e>>2]|0)+52>>2]&63](e,t[n>>2]|0)|0)==-1)break e}else{l=t[n>>2]|0;t[a>>2]=f+4;t[f>>2]=l}i=i+1|0;if((i|0)<(r|0))n=n+4|0;else break}}else i=0}while(0);return i|0}function Hd(e,i){e=e|0;i=i|0;return-1}function Ud(e){e=e|0;fd(e+8|0);return}function jd(e){e=e|0;fd(e+((t[(t[e>>2]|0)+-12>>2]|0)+8)|0);return}function Yd(e){e=e|0;fd(e+8|0);Bp(e);return}function qd(e){e=e|0;Yd(e+(t[(t[e>>2]|0)+-12>>2]|0)|0);return}function $d(e){e=e|0;var i=0,r=0,n=0,a=0;n=c;c=c+16|0;r=n;e:do{if(t[e+((t[(t[e>>2]|0)+-12>>2]|0)+24)>>2]|0){w=0;ce(65,r|0,e|0);i=w;w=0;i:do{if(i&1)i=je(0)|0;else{do{if(f[r>>0]|0){i=t[e+((t[(t[e>>2]|0)+-12>>2]|0)+24)>>2]|0;w=0;i=de(t[(t[i>>2]|0)+24>>2]|0,i|0)|0;a=w;w=0;if(!(a&1)){if((i|0)!=-1)break;a=t[(t[e>>2]|0)+-12>>2]|0;w=0;ce(66,e+a|0,t[e+(a+16)>>2]|1|0);a=w;w=0;if(!(a&1))break}i=je(0)|0;nb(r);break i}}while(0);nb(r);break e}}while(0);We(i|0)|0;w=0;ue(181,e+(t[(t[e>>2]|0)+-12>>2]|0)|0);a=w;w=0;if(!(a&1)){Je();break}i=je()|0;w=0;Se(3);a=w;w=0;if(a&1){a=je(0)|0;Ni(a)}else Qe(i|0)}}while(0);c=n;return e|0}function Vd(e){e=e|0;var i=0;i=e+16|0;t[i>>2]=t[i>>2]|1;if(!(t[e+20>>2]&1))return;else _i()}function Xd(e){e=e|0;fd(e+8|0);return}function Gd(e){e=e|0;fd(e+((t[(t[e>>2]|0)+-12>>2]|0)+8)|0);return}function Kd(e){e=e|0;fd(e+8|0);Bp(e);return}function Wd(e){e=e|0;Kd(e+(t[(t[e>>2]|0)+-12>>2]|0)|0);return}function Zd(e){e=e|0;var i=0,r=0,n=0,a=0;n=c;c=c+16|0;r=n;e:do{if(t[e+((t[(t[e>>2]|0)+-12>>2]|0)+24)>>2]|0){w=0;ce(89,r|0,e|0);i=w;w=0;i:do{if(i&1)i=je(0)|0;else{do{if(f[r>>0]|0){i=t[e+((t[(t[e>>2]|0)+-12>>2]|0)+24)>>2]|0;w=0;i=de(t[(t[i>>2]|0)+24>>2]|0,i|0)|0;a=w;w=0;if(!(a&1)){if((i|0)!=-1)break;a=t[(t[e>>2]|0)+-12>>2]|0;w=0;ce(66,e+a|0,t[e+(a+16)>>2]|1|0);a=w;w=0;if(!(a&1))break}i=je(0)|0;hb(r);break i}}while(0);hb(r);break e}}while(0);We(i|0)|0;w=0;ue(181,e+(t[(t[e>>2]|0)+-12>>2]|0)|0);a=w;w=0;if(!(a&1)){Je();break}i=je()|0;w=0;Se(3);a=w;w=0;if(a&1){a=je(0)|0;Ni(a)}else Qe(i|0)}}while(0);c=n;return e|0}function Jd(e,i){e=e|0;i=i|0;return}function Qd(e){e=e|0;fd(e+4|0);return}function eb(e){e=e|0;fd(e+((t[(t[e>>2]|0)+-12>>2]|0)+4)|0);return}function ib(e){e=e|0;fd(e+4|0);Bp(e);return}function rb(e){e=e|0;ib(e+(t[(t[e>>2]|0)+-12>>2]|0)|0);return}function fb(e,i){e=e|0;i=i|0;var r=0;f[e>>0]=0;t[e+4>>2]=i;r=t[(t[i>>2]|0)+-12>>2]|0;if(!(t[i+(r+16)>>2]|0)){r=t[i+(r+72)>>2]|0;if(r)$d(r)|0;f[e>>0]=1}return}function nb(e){e=e|0;var i=0,r=0;e=e+4|0;r=t[e>>2]|0;i=t[(t[r>>2]|0)+-12>>2]|0;do{if((((t[r+(i+24)>>2]|0)!=0?(t[r+(i+16)>>2]|0)==0:0)?(t[r+(i+4)>>2]&8192|0)!=0:0)?!(ei()|0):0){i=t[e>>2]|0;i=t[i+((t[(t[i>>2]|0)+-12>>2]|0)+24)>>2]|0;w=0;i=de(t[(t[i>>2]|0)+24>>2]|0,i|0)|0;r=w;w=0;if(!(r&1)){if((i|0)!=-1)break;i=t[e>>2]|0;r=t[(t[i>>2]|0)+-12>>2]|0;w=0;ce(66,i+r|0,t[i+(r+16)>>2]|1|0);r=w;w=0;if(!(r&1))break}r=je(0)|0;We(r|0)|0;w=0;Se(3);r=w;w=0;if(r&1){r=je(0)|0;Ni(r)}}}while(0);return}function tb(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;_=c;c=c+32|0;o=_+20|0;u=_+16|0;d=_+8|0;r=_;w=0;ce(65,d|0,e|0);h=w;w=0;e:do{if(h&1){r=je(0)|0;n=e;a=e;b=19}else{do{if(f[d>>0]|0){t[r>>2]=sd(e+(t[(t[e>>2]|0)+-12>>2]|0)|0)|0;w=0;h=pe(37,r|0,43392)|0;l=w;w=0;if(l&1){b=je(0)|0;Lu(r);r=b}else{Lu(r);a=t[(t[e>>2]|0)+-12>>2]|0;l=t[e+(a+24)>>2]|0;n=e+a|0;a=e+(a+76)|0;r=t[a>>2]|0;do{if((r|0)==-1){t[o>>2]=sd(n)|0;w=0;r=pe(37,o|0,44220)|0;k=w;w=0;if(!(k&1)?(w=0,s=pe(t[(t[r>>2]|0)+28>>2]|0,r|0,32)|0,k=w,w=0,!(k&1)):0){Lu(o);r=s<<24>>24;t[a>>2]=r;b=10;break}r=je(0)|0;Lu(o)}else b=10}while(0);if((b|0)==10){k=t[(t[h>>2]|0)+16>>2]|0;t[u>>2]=l;w=0;t[o>>2]=t[u>>2];r=ge(k|0,h|0,o|0,n|0,r&255|0,i|0)|0;k=w;w=0;if(!(k&1)){if(r)break;k=t[(t[e>>2]|0)+-12>>2]|0;w=0;ce(66,e+k|0,t[e+(k+16)>>2]|5|0);k=w;w=0;if(!(k&1))break}r=je(0)|0}}nb(d);n=e;a=e;b=19;break e}}while(0);nb(d)}}while(0);do{if((b|0)==19){We(r|0)|0;w=0;ue(181,n+(t[(t[a>>2]|0)+-12>>2]|0)|0);k=w;w=0;if(!(k&1)){Je();break}r=je()|0;w=0;Se(3);k=w;w=0;if(k&1){k=je(0)|0;Ni(k)}else Qe(r|0)}}while(0);c=_;return e|0}function ab(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;_=c;c=c+32|0;o=_+20|0;u=_+16|0;d=_+8|0;r=_;w=0;ce(65,d|0,e|0);h=w;w=0;e:do{if(h&1){r=je(0)|0;n=e;a=e;b=19}else{do{if(f[d>>0]|0){t[r>>2]=sd(e+(t[(t[e>>2]|0)+-12>>2]|0)|0)|0;w=0;h=pe(37,r|0,43392)|0;l=w;w=0;if(l&1){b=je(0)|0;Lu(r);r=b}else{Lu(r);a=t[(t[e>>2]|0)+-12>>2]|0;l=t[e+(a+24)>>2]|0;n=e+a|0;a=e+(a+76)|0;r=t[a>>2]|0;do{if((r|0)==-1){t[o>>2]=sd(n)|0;w=0;r=pe(37,o|0,44220)|0;k=w;w=0;if(!(k&1)?(w=0,s=pe(t[(t[r>>2]|0)+28>>2]|0,r|0,32)|0,k=w,w=0,!(k&1)):0){Lu(o);r=s<<24>>24;t[a>>2]=r;b=10;break}r=je(0)|0;Lu(o)}else b=10}while(0);if((b|0)==10){k=t[(t[h>>2]|0)+24>>2]|0;t[u>>2]=l;w=0;t[o>>2]=t[u>>2];r=ge(k|0,h|0,o|0,n|0,r&255|0,i|0)|0;k=w;w=0;if(!(k&1)){if(r)break;k=t[(t[e>>2]|0)+-12>>2]|0;w=0;ce(66,e+k|0,t[e+(k+16)>>2]|5|0);k=w;w=0;if(!(k&1))break}r=je(0)|0}}nb(d);n=e;a=e;b=19;break e}}while(0);nb(d)}}while(0);do{if((b|0)==19){We(r|0)|0;w=0;ue(181,n+(t[(t[a>>2]|0)+-12>>2]|0)|0);k=w;w=0;if(!(k&1)){Je();break}r=je()|0;w=0;Se(3);k=w;w=0;if(k&1){k=je(0)|0;Ni(k)}else Qe(r|0)}}while(0);c=_;return e|0}function sb(e){e=e|0;fd(e+4|0);return}function lb(e){e=e|0;fd(e+((t[(t[e>>2]|0)+-12>>2]|0)+4)|0);return}function ob(e){e=e|0;fd(e+4|0);Bp(e);return}function ub(e){e=e|0;ob(e+(t[(t[e>>2]|0)+-12>>2]|0)|0);return}function cb(e,i){e=e|0;i=i|0;var r=0;f[e>>0]=0;t[e+4>>2]=i;r=t[(t[i>>2]|0)+-12>>2]|0;if(!(t[i+(r+16)>>2]|0)){r=t[i+(r+72)>>2]|0;if(r)Zd(r)|0;f[e>>0]=1}return}function hb(e){e=e|0;var i=0,r=0;e=e+4|0;r=t[e>>2]|0;i=t[(t[r>>2]|0)+-12>>2]|0;do{if((((t[r+(i+24)>>2]|0)!=0?(t[r+(i+16)>>2]|0)==0:0)?(t[r+(i+4)>>2]&8192|0)!=0:0)?!(ei()|0):0){i=t[e>>2]|0;i=t[i+((t[(t[i>>2]|0)+-12>>2]|0)+24)>>2]|0;w=0;i=de(t[(t[i>>2]|0)+24>>2]|0,i|0)|0;r=w;w=0;if(!(r&1)){if((i|0)!=-1)break;i=t[e>>2]|0;r=t[(t[i>>2]|0)+-12>>2]|0;w=0;ce(66,i+r|0,t[i+(r+16)>>2]|1|0);r=w;w=0;if(!(r&1))break}r=je(0)|0;We(r|0)|0;w=0;Se(3);r=w;w=0;if(r&1){r=je(0)|0;Ni(r)}}}while(0);return}function db(e){e=e|0;return 57453}function bb(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)!=1&(r|0)<257)gh(e,i,r);else Ih(e,57462,35);return}function _b(){if((f[1048]|0)==0?(ze(1048)|0)!=0:0){t[10778]=43084;di(72,43112,k|0)|0;qe(1048)}return 43112}function kb(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0;f=c;c=c+16|0;n=f+8|0;a=f;l=r;s=t[l+4>>2]|0;r=a;t[r>>2]=t[l>>2];t[r+4>>2]=s;t[n>>2]=t[a>>2];t[n+4>>2]=t[a+4>>2];Mh(e,n,i);t[e>>2]=43048;c=f;return}function wb(e){e=e|0;Sh(e);return}function mb(e){e=e|0;Sh(e);Bp(e);return}function vb(e){e=e|0;fd(e);Bp(e);return}function pb(e){e=e|0;Bp(e);return}function gb(e){e=e|0;return}function yb(e){e=e|0;return}function Mb(e){e=e|0;Bp(e);return}function Ab(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;var a=0,s=0;e:do{if((n|0)==(t|0))s=6;else while(1){if((i|0)==(r|0)){i=-1;break e}e=f[i>>0]|0;a=f[n>>0]|0;if(e<<24>>24<a<<24>>24){i=-1;break e}if(a<<24>>24<e<<24>>24){i=1;break e}i=i+1|0;n=n+1|0;if((n|0)==(t|0)){s=6;break}}}while(0);if((s|0)==6)i=(i|0)!=(r|0)&1;return i|0}function Eb(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;ed(e,r,f);return}function Sb(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if((i|0)==(r|0))e=0;else{e=0;do{e=(f[i>>0]|0)+(e<<4)|0;n=e&-268435456;e=(n>>>24|n)^e;i=i+1|0}while((i|0)!=(r|0))}return e|0}function Tb(e){e=e|0;return}function Rb(e){e=e|0;Bp(e);return}function Cb(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0;e:do{if((f|0)==(n|0))s=6;else while(1){if((i|0)==(r|0)){i=-1;break e}e=t[i>>2]|0;a=t[f>>2]|0;if((e|0)<(a|0)){i=-1;break e}if((a|0)<(e|0)){i=1;break e}i=i+4|0;f=f+4|0;if((f|0)==(n|0)){s=6;break}}}while(0);if((s|0)==6)i=(i|0)!=(r|0)&1;return i|0}function Pb(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;id(e,r,f);return}function Ib(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if((i|0)==(r|0))e=0;else{e=0;do{e=(t[i>>2]|0)+(e<<4)|0;f=e&-268435456;e=(f>>>24|f)^e;i=i+4|0}while((i|0)!=(r|0))}return e|0}function Ob(e){e=e|0;return}function xb(e){e=e|0;Bp(e);return}function Lb(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0;m=c;c=c+64|0;_=m+56|0;l=m+52|0;d=m+48|0;o=m+44|0;u=m+40|0;h=m+36|0;b=m+32|0;v=m+8|0;k=m;e:do{if(!(t[n+4>>2]&1)){t[d>>2]=-1;v=t[(t[e>>2]|0)+16>>2]|0;t[o>>2]=t[i>>2];t[u>>2]=t[r>>2];t[l>>2]=t[o>>2];t[_>>2]=t[u>>2];l=sM[v&63](e,l,_,n,a,d)|0;t[i>>2]=l;switch(t[d>>2]|0){case 0:{f[s>>0]=0;break e}case 1:{f[s>>0]=1;break e}default:{f[s>>0]=1;t[a>>2]=4;break e}}}else{l=sd(n)|0;t[h>>2]=l;w=0;e=pe(37,h|0,44220)|0;d=w;w=0;do{if(!(d&1)){bh(l)|0;l=sd(n)|0;t[b>>2]=l;w=0;u=pe(37,b|0,44360)|0;b=w;w=0;if(b&1){v=je()|0;bh(l)|0;l=v;break}bh(l)|0;w=0;ce(t[(t[u>>2]|0)+24>>2]|0,v|0,u|0);b=w;w=0;if(!(b&1)){o=v+12|0;w=0;ce(t[(t[u>>2]|0)+28>>2]|0,o|0,u|0);b=w;w=0;if(!(b&1)){t[k>>2]=t[r>>2];w=0;t[_>>2]=t[k>>2];l=se(7,i|0,_|0,v|0,v+24|0,e|0,a|0,1)|0;a=w;w=0;if(a&1){l=je()|0;xh(v+12|0);xh(v);break}else{f[s>>0]=(l|0)==(v|0)&1;l=t[i>>2]|0;xh(v+12|0);xh(v);break e}}}else o=v;l=je()|0;u=O;if((v|0)!=(o|0))do{o=o+-12|0;xh(o)}while((o|0)!=(v|0))}else{v=je()|0;bh(l)|0;l=v}}while(0);Qe(l|0)}}while(0);c=m;return l|0}function Bb(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=Nk(e,o,l,f,n,a)|0;c=s;return e|0}function zb(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=Fk(e,o,l,f,n,a)|0;c=s;return e|0}function Db(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=Hk(e,o,l,f,n,a)|0;c=s;return e|0}function Nb(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=Uk(e,o,l,f,n,a)|0;c=s;return e|0}function Fb(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=jk(e,o,l,f,n,a)|0;c=s;return e|0}function Hb(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=Yk(e,o,l,f,n,a)|0;c=s;return e|0}function Ub(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=qk(e,o,l,f,n,a)|0;c=s;return e|0}function jb(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=$k(e,o,l,f,n,a)|0;c=s;return e|0}function Yb(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=Vk(e,o,l,f,n,a)|0;c=s;return e|0}function qb(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0;R=c;c=c+240|0;M=R;m=R+208|0;P=R+32|0;e=R+28|0;C=R+16|0;y=R+12|0;p=R+48|0;g=R+8|0;v=R+4|0;t[P>>2]=0;t[P+4>>2]=0;t[P+8>>2]=0;w=0;n=de(68,n|0)|0;k=w;w=0;do{if(k&1)e=je()|0;else{t[e>>2]=n;w=0;e=pe(37,e|0,44220)|0;k=w;w=0;if(!(k&1)?(w=0,Ae(t[(t[e>>2]|0)+32>>2]|0,e|0,57498,57524,m|0)|0,k=w,w=0,!(k&1)):0){bh(n)|0;t[C>>2]=0;t[C+4>>2]=0;t[C+8>>2]=0;if(!(f[C>>0]&1))e=10;else e=(t[C>>2]&-2)+-1|0;w=0;Ee(8,C|0,e|0,0);k=w;w=0;e:do{if(!(k&1)){_=C+8|0;k=C+1|0;n=(f[C>>0]&1)==0?k:t[_>>2]|0;t[y>>2]=n;t[g>>2]=p;t[v>>2]=0;b=C+4|0;e=t[i>>2]|0;i:while(1){if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;o=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;d=w;w=0;if(d&1){I=29;break}if((o|0)==-1){t[i>>2]=0;e=0}}}else e=0;u=(e|0)==0;o=t[r>>2]|0;do{if(o){if((t[o+12>>2]|0)!=(t[o+16>>2]|0))if(u)break;else break i;w=0;h=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;d=w;w=0;if(d&1){I=29;break i}if((h|0)!=-1)if(u)break;else break i;else{t[r>>2]=0;I=19;break}}else I=19}while(0);if((I|0)==19){I=0;if(u){o=0;break}else o=0}u=f[C>>0]|0;u=(u&1)==0?(u&255)>>>1:t[b>>2]|0;if((t[y>>2]|0)==(n+u|0)){w=0;Ee(8,C|0,u<<1|0,0);d=w;w=0;if(d&1){I=29;break}if(!(f[C>>0]&1))n=10;else n=(t[C>>2]&-2)+-1|0;w=0;Ee(8,C|0,n|0,0);d=w;w=0;if(d&1){I=29;break}n=(f[C>>0]&1)==0?k:t[_>>2]|0;t[y>>2]=n+u}h=e+12|0;u=t[h>>2]|0;d=e+16|0;if((u|0)==(t[d>>2]|0)){w=0;u=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;O=w;w=0;if(O&1){I=29;break}}else u=a[u>>0]|0;if($b(u&255,16,n,y,v,0,P,p,g,m)|0)break;o=t[h>>2]|0;if((o|0)==(t[d>>2]|0)){w=0;de(t[(t[e>>2]|0)+40>>2]|0,e|0)|0;O=w;w=0;if(O&1){I=29;break}else continue}else{t[h>>2]=o+1;continue}}if((I|0)==29){e=je()|0;break}w=0;Ee(8,C|0,(t[y>>2]|0)-n|0,0);O=w;w=0;if((!(O&1)?(A=f[C>>0]|0,E=t[_>>2]|0,w=0,S=Me(3)|0,O=w,w=0,!(O&1)):0)?(w=0,t[M>>2]=l,T=Ae(16,((A&1)==0?k:E)|0,S|0,58882,M|0)|0,O=w,w=0,!(O&1)):0){if((T|0)!=1)t[s>>2]=4;if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;n=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;O=w;w=0;if(O&1){I=30;break}if((n|0)==-1){t[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(o){if((t[o+12>>2]|0)==(t[o+16>>2]|0)){w=0;e=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;O=w;w=0;if(O&1){I=30;break e}if((e|0)==-1){t[r>>2]=0;I=55;break}}if(!n)I=56}else I=55}while(0);if((I|0)==55?n:0)I=56;if((I|0)==56)t[s>>2]=t[s>>2]|2;O=t[i>>2]|0;xh(C);xh(P);c=R;return O|0}else I=30}else I=30}while(0);if((I|0)==30)e=je()|0;xh(C);break}e=je()|0;bh(n)|0}}while(0);xh(P);Qe(e|0);return 0}function $b(e,i,r,n,a,s,l,o,u,c){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;var h=0,d=0,b=0,_=0;b=t[n>>2]|0;_=(b|0)==(r|0);do{if(_){h=(f[c+24>>0]|0)==e<<24>>24;if(!h?(f[c+25>>0]|0)!=e<<24>>24:0){d=5;break}t[n>>2]=r+1;f[r>>0]=h?43:45;t[a>>2]=0;h=0}else d=5}while(0);e:do{if((d|0)==5){d=f[l>>0]|0;if(e<<24>>24==s<<24>>24?(((d&1)==0?(d&255)>>>1:t[l+4>>2]|0)|0)!=0:0){h=t[u>>2]|0;if((h-o|0)>=160){h=0;break}i=t[a>>2]|0;t[u>>2]=h+4;t[h>>2]=i;t[a>>2]=0;h=0;break}l=c+26|0;h=c;while(1){if((f[h>>0]|0)==e<<24>>24)break;h=h+1|0;if((h|0)==(l|0)){h=l;break}}h=h-c|0;if((h|0)>23)h=-1;else{switch(i|0){case 10:case 8:{if((h|0)>=(i|0)){h=-1;break e}break}case 16:{if((h|0)>=22){if(_){h=-1;break e}if((b-r|0)>=3){h=-1;break e}if((f[b+-1>>0]|0)!=48){h=-1;break e}t[a>>2]=0;h=f[57498+h>>0]|0;t[n>>2]=b+1;f[b>>0]=h;h=0;break e}break}default:{}}h=f[57498+h>>0]|0;t[n>>2]=b+1;f[b>>0]=h;t[a>>2]=(t[a>>2]|0)+1;h=0}}}while(0);return h|0}function Vb(){var e=0,i=0;do{if((f[1968]|0)==0?(ze(1968)|0)!=0:0){w=0;e=_e(31,2147483647,58885,0)|0;i=w;w=0;if(i&1){i=je()|0;gi(1968);Qe(i|0)}else{t[11196]=e;qe(1968);break}}}while(0);return t[11196]|0}function Xb(e){e=e|0;return}function Gb(e){e=e|0;Bp(e);return}function Kb(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0;m=c;c=c+64|0;_=m+56|0;l=m+52|0;d=m+48|0;o=m+44|0;u=m+40|0;h=m+36|0;b=m+32|0;v=m+8|0;k=m;e:do{if(!(t[n+4>>2]&1)){t[d>>2]=-1;v=t[(t[e>>2]|0)+16>>2]|0;t[o>>2]=t[i>>2];t[u>>2]=t[r>>2];t[l>>2]=t[o>>2];t[_>>2]=t[u>>2];l=sM[v&63](e,l,_,n,a,d)|0;t[i>>2]=l;switch(t[d>>2]|0){case 0:{f[s>>0]=0;break e}case 1:{f[s>>0]=1;break e}default:{f[s>>0]=1;t[a>>2]=4;break e}}}else{l=sd(n)|0;t[h>>2]=l;w=0;e=pe(37,h|0,44212)|0;d=w;w=0;do{if(!(d&1)){bh(l)|0;l=sd(n)|0;t[b>>2]=l;w=0;u=pe(37,b|0,44368)|0;b=w;w=0;if(b&1){v=je()|0;bh(l)|0;l=v;break}bh(l)|0;w=0;ce(t[(t[u>>2]|0)+24>>2]|0,v|0,u|0);b=w;w=0;if(!(b&1)){o=v+12|0;w=0;ce(t[(t[u>>2]|0)+28>>2]|0,o|0,u|0);b=w;w=0;if(!(b&1)){t[k>>2]=t[r>>2];w=0;t[_>>2]=t[k>>2];l=se(8,i|0,_|0,v|0,v+24|0,e|0,a|0,1)|0;a=w;w=0;if(a&1){l=je()|0;Xh(v+12|0);Xh(v);break}else{f[s>>0]=(l|0)==(v|0)&1;l=t[i>>2]|0;Xh(v+12|0);Xh(v);break e}}}else o=v;l=je()|0;u=O;if((v|0)!=(o|0))do{o=o+-12|0;Xh(o)}while((o|0)!=(v|0))}else{v=je()|0;bh(l)|0;l=v}}while(0);Qe(l|0)}}while(0);c=m;return l|0}function Wb(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=Kk(e,o,l,f,n,a)|0;c=s;return e|0}function Zb(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=Wk(e,o,l,f,n,a)|0;c=s;return e|0}function Jb(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=Zk(e,o,l,f,n,a)|0;c=s;return e|0}function Qb(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=Jk(e,o,l,f,n,a)|0;c=s;return e|0}function e_(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=Qk(e,o,l,f,n,a)|0;c=s;return e|0}function i_(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=ew(e,o,l,f,n,a)|0;c=s;return e|0}function r_(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=iw(e,o,l,f,n,a)|0;c=s;return e|0}function f_(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=rw(e,o,l,f,n,a)|0;c=s;return e|0}function n_(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;s=c;c=c+16|0;l=s+12|0;o=s+8|0;h=s+4|0;u=s;t[h>>2]=t[i>>2];t[u>>2]=t[r>>2];t[o>>2]=t[h>>2];t[l>>2]=t[u>>2];e=fw(e,o,l,f,n,a)|0;c=s;return e|0}function t_(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0;T=c;c=c+320|0;y=T;k=T+208|0;C=T+32|0;e=T+28|0;R=T+16|0;g=T+12|0;v=T+48|0;p=T+8|0;m=T+4|0;t[C>>2]=0;t[C+4>>2]=0;t[C+8>>2]=0;w=0;n=de(68,n|0)|0;_=w;w=0;do{if(_&1)e=je()|0;else{t[e>>2]=n;w=0;e=pe(37,e|0,44212)|0;_=w;w=0;if(!(_&1)?(w=0,Ae(t[(t[e>>2]|0)+48>>2]|0,e|0,57498,57524,k|0)|0,_=w,w=0,!(_&1)):0){bh(n)|0;t[R>>2]=0;t[R+4>>2]=0;t[R+8>>2]=0;if(!(f[R>>0]&1))e=10;else e=(t[R>>2]&-2)+-1|0;w=0;Ee(8,R|0,e|0,0);_=w;w=0;e:do{if(!(_&1)){b=R+8|0;_=R+1|0;e=(f[R>>0]&1)==0?_:t[b>>2]|0;t[g>>2]=e;t[p>>2]=v;t[m>>2]=0;d=R+4|0;l=t[i>>2]|0;i:while(1){if(l){n=t[l+12>>2]|0;if((n|0)==(t[l+16>>2]|0)){w=0;n=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;h=w;w=0;if(h&1){P=30;break}}else n=t[n>>2]|0;if((n|0)==-1){t[i>>2]=0;n=0;o=1}else{n=l;o=0}}else{n=0;o=1}u=t[r>>2]|0;do{if(u){l=t[u+12>>2]|0;if((l|0)==(t[u+16>>2]|0)){w=0;l=de(t[(t[u>>2]|0)+36>>2]|0,u|0)|0;h=w;w=0;if(h&1){P=30;break i}}else l=t[l>>2]|0;if((l|0)!=-1)if(o){l=u;break}else{l=u;break i}else{t[r>>2]=0;P=20;break}}else P=20}while(0);if((P|0)==20){P=0;if(o){l=0;break}else l=0}o=f[R>>0]|0;o=(o&1)==0?(o&255)>>>1:t[d>>2]|0;if((t[g>>2]|0)==(e+o|0)){w=0;Ee(8,R|0,o<<1|0,0);h=w;w=0;if(h&1){P=30;break}if(!(f[R>>0]&1))e=10;else e=(t[R>>2]&-2)+-1|0;w=0;Ee(8,R|0,e|0,0);h=w;w=0;if(h&1){P=30;break}e=(f[R>>0]&1)==0?_:t[b>>2]|0;t[g>>2]=e+o}u=n+12|0;o=t[u>>2]|0;h=n+16|0;if((o|0)==(t[h>>2]|0)){w=0;o=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;I=w;w=0;if(I&1){P=30;break}}else o=t[o>>2]|0;if(a_(o,16,e,g,m,0,C,v,p,k)|0)break;l=t[u>>2]|0;if((l|0)==(t[h>>2]|0)){w=0;de(t[(t[n>>2]|0)+40>>2]|0,n|0)|0;I=w;w=0;if(I&1){P=30;break}else{l=n;continue}}else{t[u>>2]=l+4;l=n;continue}}if((P|0)==30){e=je()|0;break}w=0;Ee(8,R|0,(t[g>>2]|0)-e|0,0);I=w;w=0;if((!(I&1)?(M=f[R>>0]|0,A=t[b>>2]|0,w=0,E=Me(3)|0,I=w,w=0,!(I&1)):0)?(w=0,t[y>>2]=s,S=Ae(16,((M&1)==0?_:A)|0,E|0,58882,y|0)|0,I=w,w=0,!(I&1)):0){if((S|0)!=1)t[a>>2]=4;if(n){e=t[n+12>>2]|0;if((e|0)==(t[n+16>>2]|0)){w=0;e=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;I=w;w=0;if(I&1){P=31;break}}else e=t[e>>2]|0;if((e|0)==-1){t[i>>2]=0;n=1}else n=0}else n=1;do{if(l){e=t[l+12>>2]|0;if((e|0)==(t[l+16>>2]|0)){w=0;e=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;I=w;w=0;if(I&1){P=31;break e}}else e=t[e>>2]|0;if((e|0)!=-1)if(n)break;else{P=59;break}else{t[r>>2]=0;P=57;break}}else P=57}while(0);if((P|0)==57?n:0)P=59;if((P|0)==59)t[a>>2]=t[a>>2]|2;I=t[i>>2]|0;xh(R);xh(C);c=T;return I|0}else P=31}else P=31}while(0);if((P|0)==31)e=je()|0;xh(R);break}e=je()|0;bh(n)|0}}while(0);xh(C);Qe(e|0);return 0}function a_(e,i,r,n,a,s,l,o,u,c){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;var h=0,d=0,b=0,_=0;b=t[n>>2]|0;_=(b|0)==(r|0);do{if(_){h=(t[c+96>>2]|0)==(e|0);if(!h?(t[c+100>>2]|0)!=(e|0):0){d=5;break}t[n>>2]=r+1;f[r>>0]=h?43:45;t[a>>2]=0;h=0}else d=5}while(0);e:do{if((d|0)==5){d=f[l>>0]|0;if((e|0)==(s|0)?(((d&1)==0?(d&255)>>>1:t[l+4>>2]|0)|0)!=0:0){h=t[u>>2]|0;if((h-o|0)>=160){h=0;break}i=t[a>>2]|0;t[u>>2]=h+4;t[h>>2]=i;t[a>>2]=0;h=0;break}l=c+104|0;h=c;while(1){if((t[h>>2]|0)==(e|0))break;h=h+4|0;if((h|0)==(l|0)){h=l;break}}h=h-c|0;l=h>>2;if((h|0)>92)h=-1;else{switch(i|0){case 10:case 8:{if((l|0)>=(i|0)){h=-1;break e}break}case 16:{if((h|0)>=88){if(_){h=-1;break e}if((b-r|0)>=3){h=-1;break e}if((f[b+-1>>0]|0)!=48){h=-1;break e}t[a>>2]=0;h=f[57498+l>>0]|0;t[n>>2]=b+1;f[b>>0]=h;h=0;break e}break}default:{}}h=f[57498+l>>0]|0;t[n>>2]=b+1;f[b>>0]=h;t[a>>2]=(t[a>>2]|0)+1;h=0}}}while(0);return h|0}function s_(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;o=u;i=sd(i)|0;t[o>>2]=i;w=0;a=pe(37,o|0,44220)|0;h=w;w=0;if((((!(h&1)?(w=0,Ae(t[(t[a>>2]|0)+32>>2]|0,a|0,57498,57524,r|0)|0,h=w,w=0,!(h&1)):0)?(w=0,l=pe(37,o|0,44360)|0,h=w,w=0,!(h&1)):0)?(w=0,s=de(t[(t[l>>2]|0)+16>>2]|0,l|0)|0,h=w,w=0,!(h&1)):0)?(f[n>>0]=s,w=0,ce(t[(t[l>>2]|0)+20>>2]|0,e|0,l|0),h=w,w=0,!(h&1)):0){bh(i)|0;c=u;return}h=je()|0;bh(i)|0;Qe(h|0)}function l_(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0;d=c;c=c+16|0;h=d;i=sd(i)|0;t[h>>2]=i;w=0;s=pe(37,h|0,44220)|0;b=w;w=0;if(((((!(b&1)?(w=0,Ae(t[(t[s>>2]|0)+32>>2]|0,s|0,57498,57530,r|0)|0,b=w,w=0,!(b&1)):0)?(w=0,u=pe(37,h|0,44360)|0,b=w,w=0,!(b&1)):0)?(w=0,l=de(t[(t[u>>2]|0)+12>>2]|0,u|0)|0,b=w,w=0,!(b&1)):0)?(f[n>>0]=l,w=0,o=de(t[(t[u>>2]|0)+16>>2]|0,u|0)|0,b=w,w=0,!(b&1)):0)?(f[a>>0]=o,w=0,ce(t[(t[u>>2]|0)+20>>2]|0,e|0,u|0),b=w,w=0,!(b&1)):0){bh(i)|0;c=d;return}b=je()|0;bh(i)|0;Qe(b|0)}function o_(e,i,r,n,s,l,o,u,c,h,d,b){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;h=h|0;d=d|0;b=b|0;var _=0,k=0;e:do{if(e<<24>>24==l<<24>>24)if(f[i>>0]|0){f[i>>0]=0;r=t[s>>2]|0;t[s>>2]=r+1;f[r>>0]=46;r=f[u>>0]|0;if((((r&1)==0?(r&255)>>>1:t[u+4>>2]|0)|0)!=0?(_=t[h>>2]|0,(_-c|0)<160):0){c=t[d>>2]|0;t[h>>2]=_+4;t[_>>2]=c;_=0}else _=0}else _=-1;else{if(e<<24>>24==o<<24>>24?(o=f[u>>0]|0,(((o&1)==0?(o&255)>>>1:t[u+4>>2]|0)|0)!=0):0){if(!(f[i>>0]|0)){_=-1;break}_=t[h>>2]|0;if((_-c|0)>=160){_=0;break}c=t[d>>2]|0;t[h>>2]=_+4;t[_>>2]=c;t[d>>2]=0;_=0;break}l=b+32|0;_=b;while(1){if((f[_>>0]|0)==e<<24>>24)break;_=_+1|0;if((_|0)==(l|0)){_=l;break}}l=_-b|0;if((l|0)>31)_=-1;else{o=f[57498+l>>0]|0;switch(l|0){case 24:case 25:{_=t[s>>2]|0;if((_|0)!=(n|0)?(a[_+-1>>0]&95|0)!=(a[r>>0]&127|0):0){_=-1;break e}t[s>>2]=_+1;f[_>>0]=o;_=0;break e}case 23:case 22:{f[r>>0]=80;_=t[s>>2]|0;t[s>>2]=_+1;f[_>>0]=o;_=0;break e}default:{_=o&95;if((((_|0)==(f[r>>0]|0)?(f[r>>0]=_|128,(f[i>>0]|0)!=0):0)?(f[i>>0]=0,r=f[u>>0]|0,(((r&1)==0?(r&255)>>>1:t[u+4>>2]|0)|0)!=0):0)?(k=t[h>>2]|0,(k-c|0)<160):0){c=t[d>>2]|0;t[h>>2]=k+4;t[k>>2]=c}h=t[s>>2]|0;t[s>>2]=h+1;f[h>>0]=o;if((l|0)>21){_=0;break e}t[d>>2]=(t[d>>2]|0)+1;_=0;break e}}}}}while(0);return _|0}function u_(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0;o=c;c=c+16|0;l=o;i=sd(i)|0;t[l>>2]=i;w=0;n=pe(37,l|0,44212)|0;u=w;w=0;if((((!(u&1)?(w=0,Ae(t[(t[n>>2]|0)+48>>2]|0,n|0,57498,57524,r|0)|0,u=w,w=0,!(u&1)):0)?(w=0,s=pe(37,l|0,44368)|0,u=w,w=0,!(u&1)):0)?(w=0,a=de(t[(t[s>>2]|0)+16>>2]|0,s|0)|0,u=w,w=0,!(u&1)):0)?(t[f>>2]=a,w=0,ce(t[(t[s>>2]|0)+20>>2]|0,e|0,s|0),u=w,w=0,!(u&1)):0){bh(i)|0;c=o;return}u=je()|0;bh(i)|0;Qe(u|0)}function c_(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0;h=c;c=c+16|0;u=h;i=sd(i)|0;t[u>>2]=i;w=0;a=pe(37,u|0,44212)|0;d=w;w=0;if(((((!(d&1)?(w=0,Ae(t[(t[a>>2]|0)+48>>2]|0,a|0,57498,57530,r|0)|0,d=w,w=0,!(d&1)):0)?(w=0,o=pe(37,u|0,44368)|0,d=w,w=0,!(d&1)):0)?(w=0,s=de(t[(t[o>>2]|0)+12>>2]|0,o|0)|0,d=w,w=0,!(d&1)):0)?(t[f>>2]=s,w=0,l=de(t[(t[o>>2]|0)+16>>2]|0,o|0)|0,d=w,w=0,!(d&1)):0)?(t[n>>2]=l,w=0,ce(t[(t[o>>2]|0)+20>>2]|0,e|0,o|0),d=w,w=0,!(d&1)):0){bh(i)|0;c=h;return}d=je()|0;bh(i)|0;Qe(d|0)}function h_(e,i,r,n,s,l,o,u,c,h,d,b){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;h=h|0;d=d|0;b=b|0;var _=0,k=0;e:do{if((e|0)==(l|0))if(f[i>>0]|0){f[i>>0]=0;r=t[s>>2]|0;t[s>>2]=r+1;f[r>>0]=46;r=f[u>>0]|0;if((((r&1)==0?(r&255)>>>1:t[u+4>>2]|0)|0)!=0?(_=t[h>>2]|0,(_-c|0)<160):0){c=t[d>>2]|0;t[h>>2]=_+4;t[_>>2]=c;_=0}else _=0}else _=-1;else{if((e|0)==(o|0)?(o=f[u>>0]|0,(((o&1)==0?(o&255)>>>1:t[u+4>>2]|0)|0)!=0):0){if(!(f[i>>0]|0)){_=-1;break}_=t[h>>2]|0;if((_-c|0)>=160){_=0;break}c=t[d>>2]|0;t[h>>2]=_+4;t[_>>2]=c;t[d>>2]=0;_=0;break}l=b+128|0;_=b;while(1){if((t[_>>2]|0)==(e|0))break;_=_+4|0;if((_|0)==(l|0)){_=l;break}}l=_-b|0;_=l>>2;if((l|0)<=124){o=f[57498+_>>0]|0;switch(_|0){case 24:case 25:{_=t[s>>2]|0;if((_|0)!=(n|0)?(a[_+-1>>0]&95|0)!=(a[r>>0]&127|0):0){_=-1;break e}t[s>>2]=_+1;f[_>>0]=o;_=0;break e}case 23:case 22:{f[r>>0]=80;break}default:{_=o&95;if((((_|0)==(f[r>>0]|0)?(f[r>>0]=_|128,(f[i>>0]|0)!=0):0)?(f[i>>0]=0,r=f[u>>0]|0,(((r&1)==0?(r&255)>>>1:t[u+4>>2]|0)|0)!=0):0)?(k=t[h>>2]|0,(k-c|0)<160):0){c=t[d>>2]|0;t[h>>2]=k+4;t[k>>2]=c}}}h=t[s>>2]|0;t[s>>2]=h+1;f[h>>0]=o;if((l|0)>84)_=0;else{t[d>>2]=(t[d>>2]|0)+1;_=0}}else _=-1}}while(0);return _|0}function d_(e){e=e|0;return}function b_(e){e=e|0;Bp(e);return}function __(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+32|0;s=d+20|0;l=d+16|0;o=d+12|0;h=d;e:do{if(!(t[r+4>>2]&1)){h=t[(t[e>>2]|0)+24>>2]|0;t[l>>2]=t[i>>2];t[s>>2]=t[l>>2];s=kM[h&31](e,s,r,n,a&1)|0}else{s=sd(r)|0;t[o>>2]=s;w=0;l=pe(37,o|0,44360)|0;u=w;w=0;i:do{if(u&1){d=je()|0;bh(s)|0;s=d}else{bh(s)|0;s=t[l>>2]|0;if(a)aM[t[s+24>>2]&127](h,l);else aM[t[s+28>>2]&127](h,l);e=f[h>>0]|0;u=(e&1)==0;s=h+1|0;a=h+8|0;o=u?s:h+1|0;s=u?s:t[h+8>>2]|0;u=h+4|0;r=(e&1)==0;r:do{if((s|0)!=((r?o:t[a>>2]|0)+(r?(e&255)>>>1:t[u>>2]|0)|0)){f:while(1){l=f[s>>0]|0;n=t[i>>2]|0;do{if(n){r=n+24|0;e=t[r>>2]|0;if((e|0)!=(t[n+28>>2]|0)){t[r>>2]=e+1;f[e>>0]=l;break}w=0;l=pe(t[(t[n>>2]|0)+52>>2]|0,n|0,l&255|0)|0;e=w;w=0;if(e&1)break f;if((l|0)==-1)t[i>>2]=0}}while(0);s=s+1|0;e=f[h>>0]|0;r=(e&1)==0;if((s|0)==((r?o:t[a>>2]|0)+(r?(e&255)>>>1:t[u>>2]|0)|0))break r}s=je()|0;xh(h);break i}}while(0);s=t[i>>2]|0;xh(h);break e}}while(0);Qe(s|0)}}while(0);c=d;return s|0}function k_(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;d=c;c=c+64|0;s=d;_=d+56|0;k=d+44|0;o=d+20|0;h=d+16|0;u=d+12|0;b=d+8|0;l=d+4|0;f[_>>0]=f[58887]|0;f[_+1>>0]=f[58888]|0;f[_+2>>0]=f[58889]|0;f[_+3>>0]=f[58890]|0;f[_+4>>0]=f[58891]|0;f[_+5>>0]=f[58892]|0;w_(_+1|0,58893,1,t[r+4>>2]|0);e=Vb()|0;t[s>>2]=a;a=k+(nw(k,12,e,_,s)|0)|0;_=m_(k,a,r)|0;e=sd(r)|0;t[b>>2]=e;w=0;me(1,k|0,_|0,a|0,o|0,h|0,u|0,b|0);a=w;w=0;if(a&1){k=je()|0;bh(e)|0;Qe(k|0)}else{bh(e)|0;t[l>>2]=t[i>>2];_=t[h>>2]|0;k=t[u>>2]|0;t[s>>2]=t[l>>2];k=zr(s,o,_,k,r,n)|0;c=d;return k|0}return 0}function w_(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var t=0,a=0;if(n&2048){f[e>>0]=43;e=e+1|0}if(n&512){f[e>>0]=35;e=e+1|0}t=f[i>>0]|0;if(t<<24>>24){a=i;while(1){a=a+1|0;i=e+1|0;f[e>>0]=t;t=f[a>>0]|0;if(!(t<<24>>24)){e=i;break}else e=i}}e:do{switch(n&74|0){case 64:{f[e>>0]=111;break}case 8:if(!(n&16384)){f[e>>0]=120;break e}else{f[e>>0]=88;break e}default:if(r){f[e>>0]=100;break e}else{f[e>>0]=117;break e}}}while(0);return}function m_(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;e:do{switch(t[r+4>>2]&176|0){case 16:{r=f[e>>0]|0;switch(r<<24>>24){case 43:case 45:{e=e+1|0;break e}default:{}}if((i-e|0)>1&r<<24>>24==48){switch(f[e+1>>0]|0){case 88:case 120:break;default:{n=7;break e}}e=e+2|0}else n=7;break}case 32:{e=i;break}default:n=7}}while(0);return e|0}function v_(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0;g=c;c=c+16|0;y=g;v=zu(l,44220)|0;h=zu(l,44360)|0;aM[t[(t[h>>2]|0)+20>>2]&127](y,h);k=f[y>>0]|0;m=y+4|0;e:do{if(!(((k&1)==0?(k&255)>>>1:t[m>>2]|0)|0)){w=0;Ae(t[(t[v>>2]|0)+32>>2]|0,v|0,e|0,r|0,n|0)|0;p=w;w=0;if(p&1)p=5;else{l=n+(r-e)|0;t[s>>2]=l;p=29}}else{t[s>>2]=n;l=f[e>>0]|0;switch(l<<24>>24){case 43:case 45:{w=0;l=pe(t[(t[v>>2]|0)+28>>2]|0,v|0,l|0)|0;k=w;w=0;if(k&1){p=5;break e}u=t[s>>2]|0;t[s>>2]=u+1;f[u>>0]=l;u=e+1|0;break}default:u=e}i:do{if((r-u|0)>1?(f[u>>0]|0)==48:0){l=u+1|0;switch(f[l>>0]|0){case 88:case 120:break;default:break i}w=0;o=pe(t[(t[v>>2]|0)+28>>2]|0,v|0,48)|0;k=w;w=0;if(k&1){p=5;break e}k=t[s>>2]|0;t[s>>2]=k+1;f[k>>0]=o;w=0;l=pe(t[(t[v>>2]|0)+28>>2]|0,v|0,f[l>>0]|0)|0;k=w;w=0;if(k&1){p=5;break e}k=t[s>>2]|0;t[s>>2]=k+1;f[k>>0]=l;u=u+2|0}}while(0);if((u|0)!=(r|0)?(d=r+-1|0,u>>>0<d>>>0):0){o=u;l=d;do{k=f[o>>0]|0;f[o>>0]=f[l>>0]|0;f[l>>0]=k;o=o+1|0;l=l+-1|0}while(o>>>0<l>>>0)}w=0;d=de(t[(t[h>>2]|0)+16>>2]|0,h|0)|0;k=w;w=0;if(!(k&1)){b=y+8|0;_=y+1|0;i:do{if(u>>>0<r>>>0){l=0;o=0;k=u;while(1){h=f[((f[y>>0]&1)==0?_:t[b>>2]|0)+o>>0]|0;if(h<<24>>24!=0&(l|0)==(h<<24>>24|0)){l=t[s>>2]|0;t[s>>2]=l+1;f[l>>0]=d;l=f[y>>0]|0;h=0;o=(o>>>0<(((l&1)==0?(l&255)>>>1:t[m>>2]|0)+-1|0)>>>0&1)+o|0}else h=l;w=0;l=pe(t[(t[v>>2]|0)+28>>2]|0,v|0,f[k>>0]|0)|0;M=w;w=0;if(M&1)break;M=t[s>>2]|0;t[s>>2]=M+1;f[M>>0]=l;k=k+1|0;if(k>>>0>=r>>>0)break i;else l=h+1|0}l=je()|0;break e}}while(0);o=e;l=n+(u-o)|0;e=t[s>>2]|0;if((l|0)==(e|0)){e=o;p=29}else{e=e+-1|0;if(l>>>0<e>>>0)do{M=f[l>>0]|0;f[l>>0]=f[e>>0]|0;f[e>>0]=M;l=l+1|0;e=e+-1|0}while(l>>>0<e>>>0);e=o;l=t[s>>2]|0;p=29}}else p=5}}while(0);if((p|0)==5)l=je()|0;else if((p|0)==29){t[a>>2]=(i|0)==(r|0)?l:n+(i-e)|0;xh(y);c=g;return}xh(y);Qe(l|0)}function p_(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0;d=c;c=c+96|0;s=d+8|0;e=d;_=d+74|0;o=d+32|0;h=d+28|0;u=d+24|0;b=d+20|0;l=d+16|0;k=e;t[k>>2]=37;t[k+4>>2]=0;w_(e+1|0,58895,1,t[r+4>>2]|0);k=Vb()|0;m=s;t[m>>2]=n;t[m+4>>2]=a;a=_+(nw(_,22,k,e,s)|0)|0;n=m_(_,a,r)|0;e=sd(r)|0;t[b>>2]=e;w=0;me(1,_|0,n|0,a|0,o|0,h|0,u|0,b|0);a=w;w=0;if(a&1){m=je()|0;bh(e)|0;Qe(m|0)}else{bh(e)|0;t[l>>2]=t[i>>2];k=t[h>>2]|0;m=t[u>>2]|0;t[s>>2]=t[l>>2];m=zr(s,o,k,m,r,f)|0;c=d;return m|0}return 0}function g_(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;d=c;c=c+64|0;s=d;_=d+56|0;k=d+44|0;o=d+20|0;h=d+16|0;u=d+12|0;b=d+8|0;l=d+4|0;f[_>>0]=f[58887]|0;f[_+1>>0]=f[58888]|0;f[_+2>>0]=f[58889]|0;f[_+3>>0]=f[58890]|0;f[_+4>>0]=f[58891]|0;f[_+5>>0]=f[58892]|0;w_(_+1|0,58893,0,t[r+4>>2]|0);e=Vb()|0;t[s>>2]=a;a=k+(nw(k,12,e,_,s)|0)|0;_=m_(k,a,r)|0;e=sd(r)|0;t[b>>2]=e;w=0;me(1,k|0,_|0,a|0,o|0,h|0,u|0,b|0);a=w;w=0;if(a&1){k=je()|0;bh(e)|0;Qe(k|0)}else{bh(e)|0;t[l>>2]=t[i>>2];_=t[h>>2]|0;k=t[u>>2]|0;t[s>>2]=t[l>>2];k=zr(s,o,_,k,r,n)|0;c=d;return k|0}return 0}function y_(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0;d=c;c=c+112|0;s=d+8|0;e=d;_=d+75|0;o=d+32|0;h=d+28|0;u=d+24|0;b=d+20|0;l=d+16|0;k=e;t[k>>2]=37;t[k+4>>2]=0;w_(e+1|0,58895,0,t[r+4>>2]|0);k=Vb()|0;m=s;t[m>>2]=n;t[m+4>>2]=a;a=_+(nw(_,23,k,e,s)|0)|0;n=m_(_,a,r)|0;e=sd(r)|0;t[b>>2]=e;w=0;me(1,_|0,n|0,a|0,o|0,h|0,u|0,b|0);a=w;w=0;if(a&1){m=je()|0;bh(e)|0;Qe(m|0)}else{bh(e)|0;t[l>>2]=t[i>>2];k=t[h>>2]|0;m=t[u>>2]|0;t[s>>2]=t[l>>2];m=zr(s,o,k,m,r,f)|0;c=d;return m|0}return 0}function M_(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=+n;var a=0,s=0,l=0,o=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0;E=c;c=c+176|0;p=E+84|0;_=E+48|0;b=E+32|0;o=E+24|0;a=E+8|0;d=E;m=E+88|0;v=E+80|0;l=E+118|0;A=E+76|0;M=E+72|0;g=E+68|0;y=E+64|0;h=d;t[h>>2]=37;t[h+4>>2]=0;h=A_(d+1|0,58898,t[r+4>>2]|0)|0;t[v>>2]=m;e=Vb()|0;if(h){t[a>>2]=t[r+8>>2];u[a+8>>3]=n;a=nw(m,30,e,d,a)|0}else{u[o>>3]=n;a=nw(m,30,e,d,o)|0}e:do{if((a|0)>29){w=0;e=Me(3)|0;a=w;w=0;a=a&1;if(h){if(!a?(w=0,t[b>>2]=t[r+8>>2],u[b+8>>3]=n,s=Ae(17,v|0,e|0,d|0,b|0)|0,k=w,w=0,!(k&1)):0)S=12}else if(!a?(w=0,t[_>>2]=t[r+8>>2],u[_+8>>3]=n,k=Ae(17,v|0,e|0,d|0,_|0)|0,_=w,w=0,!(_&1)):0){s=k;S=12}do{if((S|0)==12){e=t[v>>2]|0;if(!e){w=0;Se(6);k=w;w=0;if(k&1)break;a=t[v>>2]|0}else a=e;e=a;d=a;S=16;break e}}while(0);e=je()|0}else{e=t[v>>2]|0;d=0;s=a;S=16}}while(0);if((S|0)==16){o=e+s|0;h=m_(e,o,r)|0;do{if((e|0)==(m|0)){e=m;a=0;S=22}else{s=Pc(s<<1)|0;if(!s){w=0;Se(6);S=w;w=0;if(S&1){a=0;S=20;break}e=t[v>>2]|0}a=s;l=s;S=22}}while(0);do{if((S|0)==22){w=0;s=de(68,r|0)|0;v=w;w=0;if(!(v&1)){t[g>>2]=s;w=0;me(2,e|0,h|0,o|0,l|0,A|0,M|0,g|0);g=w;w=0;if(g&1){e=je()|0;bh(s)|0;break}bh(s)|0;t[y>>2]=t[i>>2];S=t[A>>2]|0;e=t[M>>2]|0;w=0;t[p>>2]=t[y>>2];e=he(39,p|0,l|0,S|0,e|0,r|0,f|0)|0;S=w;w=0;if(!(S&1)){t[i>>2]=e;if(a)Ic(a);if(d)Ic(d);c=E;return e|0}else S=20}else S=20}}while(0);if((S|0)==20)e=je()|0;if(a)Ic(a);if(d)Ic(d)}Qe(e|0);return 0}function A_(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,t=0,a=0,s=0,l=0;if(r&2048){f[e>>0]=43;e=e+1|0}if(r&1024){f[e>>0]=35;e=e+1|0}s=r&260;t=r>>>14;l=(s|0)==260;if(l)a=0;else{f[e>>0]=46;f[e+1>>0]=42;e=e+2|0;a=1}r=f[i>>0]|0;if(r<<24>>24){n=e;while(1){i=i+1|0;e=n+1|0;f[n>>0]=r;r=f[i>>0]|0;if(!(r<<24>>24))break;else n=e}}e:do{switch(s|0){case 4:if(!(t&1)){f[e>>0]=102;break e}else{f[e>>0]=70;break e}case 256:if(!(t&1)){f[e>>0]=101;break e}else{f[e>>0]=69;break e}default:{r=(t&1|0)!=0;if(l)if(r){f[e>>0]=65;break e}else{f[e>>0]=97;break e}else if(r){f[e>>0]=71;break e}else{f[e>>0]=103;break e}}}}while(0);return a|0}function E_(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0;E=c;c=c+16|0;S=E;A=zu(l,44220)|0;y=zu(l,44360)|0;aM[t[(t[y>>2]|0)+20>>2]&127](S,y);t[s>>2]=n;l=f[e>>0]|0;switch(l<<24>>24){case 43:case 45:{w=0;l=pe(t[(t[A>>2]|0)+28>>2]|0,A|0,l|0)|0;M=w;w=0;if(M&1)g=8;else{d=t[s>>2]|0;t[s>>2]=d+1;f[d>>0]=l;d=e+1|0;g=10}break}default:{d=e;g=10}}e:do{if((g|0)==10){M=r;i:do{if((M-d|0)>1?(f[d>>0]|0)==48:0){u=d+1|0;switch(f[u>>0]|0){case 88:case 120:break;default:{g=11;break i}}w=0;l=pe(t[(t[A>>2]|0)+28>>2]|0,A|0,48)|0;p=w;w=0;if(p&1){g=8;break e}p=t[s>>2]|0;t[s>>2]=p+1;f[p>>0]=l;d=d+2|0;w=0;l=pe(t[(t[A>>2]|0)+28>>2]|0,A|0,f[u>>0]|0)|0;p=w;w=0;if(p&1){g=8;break e}p=t[s>>2]|0;t[s>>2]=p+1;f[p>>0]=l;if(d>>>0<r>>>0){l=d;while(1){u=f[l>>0]|0;w=0;h=Me(3)|0;p=w;w=0;if(p&1)break;w=0;u=pe(39,u<<24>>24|0,h|0)|0;p=w;w=0;if(p&1)break;if(!u){p=d;break i}l=l+1|0;if(l>>>0>=r>>>0){p=d;break i}}l=je()|0;break e}else{p=d;l=d}}else g=11}while(0);i:do{if((g|0)==11)if(d>>>0<r>>>0){l=d;while(1){u=f[l>>0]|0;w=0;h=Me(3)|0;p=w;w=0;if(p&1)break;w=0;u=pe(40,u<<24>>24|0,h|0)|0;p=w;w=0;if(p&1)break;if(!u){p=d;break i}l=l+1|0;if(l>>>0>=r>>>0){p=d;break i}}l=je()|0;break e}else{p=d;l=d}}while(0);m=f[S>>0]|0;v=S+4|0;if(((m&1)==0?(m&255)>>>1:t[v>>2]|0)|0){if((p|0)!=(l|0)?(b=l+-1|0,p>>>0<b>>>0):0){h=p;u=b;do{m=f[h>>0]|0;f[h>>0]=f[u>>0]|0;f[u>>0]=m;h=h+1|0;u=u+-1|0}while(h>>>0<u>>>0)}w=0;b=de(t[(t[y>>2]|0)+16>>2]|0,y|0)|0;m=w;w=0;if(m&1){g=8;break}_=S+8|0;k=S+1|0;i:do{if(p>>>0<l>>>0){u=0;h=0;m=p;while(1){d=f[((f[S>>0]&1)==0?k:t[_>>2]|0)+h>>0]|0;if(d<<24>>24>0&(u|0)==(d<<24>>24|0)){u=t[s>>2]|0;t[s>>2]=u+1;f[u>>0]=b;u=f[S>>0]|0;d=0;h=(h>>>0<(((u&1)==0?(u&255)>>>1:t[v>>2]|0)+-1|0)>>>0&1)+h|0}else d=u;w=0;u=pe(t[(t[A>>2]|0)+28>>2]|0,A|0,f[m>>0]|0)|0;T=w;w=0;if(T&1)break;T=t[s>>2]|0;t[s>>2]=T+1;f[T>>0]=u;m=m+1|0;if(m>>>0>=l>>>0)break i;else u=d+1|0}l=je()|0;break e}}while(0);u=n+(p-e)|0;h=t[s>>2]|0;if((u|0)!=(h|0)?(o=h+-1|0,u>>>0<o>>>0):0){do{T=f[u>>0]|0;f[u>>0]=f[o>>0]|0;f[o>>0]=T;u=u+1|0;o=o+-1|0}while(u>>>0<o>>>0);u=A}else u=A}else{w=0;Ae(t[(t[A>>2]|0)+32>>2]|0,A|0,p|0,l|0,t[s>>2]|0)|0;T=w;w=0;if(T&1){g=8;break}t[s>>2]=(t[s>>2]|0)+(l-p);u=A}i:do{if(l>>>0<r>>>0){while(1){o=f[l>>0]|0;if(o<<24>>24==46)break;w=0;o=pe(t[(t[u>>2]|0)+28>>2]|0,A|0,o|0)|0;T=w;w=0;if(T&1){g=4;break}T=t[s>>2]|0;t[s>>2]=T+1;f[T>>0]=o;l=l+1|0;if(l>>>0>=r>>>0)break i}if((g|0)==4){l=je()|0;break e}w=0;o=de(t[(t[y>>2]|0)+12>>2]|0,y|0)|0;T=w;w=0;if(T&1){g=8;break e}T=t[s>>2]|0;t[s>>2]=T+1;f[T>>0]=o;l=l+1|0}}while(0);w=0;Ae(t[(t[A>>2]|0)+32>>2]|0,A|0,l|0,r|0,t[s>>2]|0)|0;T=w;w=0;if(T&1)g=8;else{T=(t[s>>2]|0)+(M-l)|0;t[s>>2]=T;t[a>>2]=(i|0)==(r|0)?T:n+(i-e)|0;xh(S);c=E;return}}}while(0);if((g|0)==8)l=je()|0;xh(S);Qe(l|0)}function S_(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=+n;var a=0,s=0,l=0,o=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0;E=c;c=c+176|0;p=E+76|0;_=E+48|0;b=E+32|0;o=E+24|0;a=E+8|0;d=E;m=E+80|0;v=E+72|0;l=E+110|0;A=E+68|0;M=E+64|0;g=E+60|0;y=E+56|0;h=d;t[h>>2]=37;t[h+4>>2]=0;h=A_(d+1|0,58899,t[r+4>>2]|0)|0;t[v>>2]=m;e=Vb()|0;if(h){t[a>>2]=t[r+8>>2];u[a+8>>3]=n;a=nw(m,30,e,d,a)|0}else{u[o>>3]=n;a=nw(m,30,e,d,o)|0}e:do{if((a|0)>29){w=0;e=Me(3)|0;a=w;w=0;a=a&1;if(h){if(!a?(w=0,t[b>>2]=t[r+8>>2],u[b+8>>3]=n,s=Ae(17,v|0,e|0,d|0,b|0)|0,k=w,w=0,!(k&1)):0)S=12}else if(!a?(w=0,u[_>>3]=n,k=Ae(17,v|0,e|0,d|0,_|0)|0,_=w,w=0,!(_&1)):0){s=k;S=12}do{if((S|0)==12){e=t[v>>2]|0;if(!e){w=0;Se(6);k=w;w=0;if(k&1)break;a=t[v>>2]|0}else a=e;e=a;d=a;S=16;break e}}while(0);e=je()|0}else{e=t[v>>2]|0;d=0;s=a;S=16}}while(0);if((S|0)==16){o=e+s|0;h=m_(e,o,r)|0;do{if((e|0)==(m|0)){e=m;a=0;S=22}else{s=Pc(s<<1)|0;if(!s){w=0;Se(6);S=w;w=0;if(S&1){a=0;S=20;break}e=t[v>>2]|0}a=s;l=s;S=22}}while(0);do{if((S|0)==22){w=0;s=de(68,r|0)|0;v=w;w=0;if(!(v&1)){t[g>>2]=s;w=0;me(2,e|0,h|0,o|0,l|0,A|0,M|0,g|0);g=w;w=0;if(g&1){e=je()|0;bh(s)|0;break}bh(s)|0;t[y>>2]=t[i>>2];S=t[A>>2]|0;e=t[M>>2]|0;w=0;t[p>>2]=t[y>>2];e=he(39,p|0,l|0,S|0,e|0,r|0,f|0)|0;S=w;w=0;if(!(S&1)){t[i>>2]=e;if(a)Ic(a);if(d)Ic(d);c=E;return e|0}else S=20}else S=20}}while(0);if((S|0)==20)e=je()|0;if(a)Ic(a);if(d)Ic(d)}Qe(e|0);return 0}function T_(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;_=c;c=c+80|0;u=_;e=_+70|0;d=_+12|0;b=_+32|0;o=_+8|0;h=_+4|0;f[e>>0]=f[58901]|0;f[e+1>>0]=f[58902]|0;f[e+2>>0]=f[58903]|0;f[e+3>>0]=f[58904]|0;f[e+4>>0]=f[58905]|0;f[e+5>>0]=f[58906]|0;s=Vb()|0;t[u>>2]=a;e=nw(d,20,s,e,u)|0;a=d+e|0;s=m_(d,a,r)|0;l=sd(r)|0;t[o>>2]=l;w=0;o=pe(37,o|0,44220)|0;k=w;w=0;if(k&1){k=je()|0;bh(l)|0;Qe(k|0)}else{bh(l)|0;vM[t[(t[o>>2]|0)+32>>2]&31](o,d,a,b)|0;k=b+e|0;t[h>>2]=t[i>>2];t[u>>2]=t[h>>2];k=zr(u,b,(s|0)==(a|0)?k:b+(s-d)|0,k,r,n)|0;c=_;return k|0}return 0}function R_(e){e=e|0;return}function C_(e){e=e|0;Bp(e);return}function P_(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;s=h+20|0;l=h+16|0;o=h+12|0;u=h;e:do{if(!(t[r+4>>2]&1)){u=t[(t[e>>2]|0)+24>>2]|0;t[l>>2]=t[i>>2];t[s>>2]=t[l>>2];s=kM[u&31](e,s,r,n,a&1)|0}else{s=sd(r)|0;t[o>>2]=s;w=0;l=pe(37,o|0,44368)|0;o=w;w=0;i:do{if(o&1){h=je()|0;bh(s)|0;s=h}else{bh(s)|0;s=t[l>>2]|0;if(a)aM[t[s+24>>2]&127](u,l);else aM[t[s+28>>2]&127](u,l);e=f[u>>0]|0;r=(e&1)==0;s=u+4|0;a=u+8|0;o=r?s:u+4|0;s=r?s:t[u+8>>2]|0;r=(e&1)==0;r:do{if((s|0)!=((r?o:t[a>>2]|0)+((r?(e&255)>>>1:t[o>>2]|0)<<2)|0)){while(1){l=t[s>>2]|0;n=t[i>>2]|0;if(n){r=n+24|0;e=t[r>>2]|0;if((e|0)==(t[n+28>>2]|0)){w=0;l=pe(t[(t[n>>2]|0)+52>>2]|0,n|0,l|0)|0;e=w;w=0;if(e&1)break}else{t[r>>2]=e+4;t[e>>2]=l}if((l|0)==-1)t[i>>2]=0}s=s+4|0;e=f[u>>0]|0;r=(e&1)==0;if((s|0)==((r?o:t[a>>2]|0)+((r?(e&255)>>>1:t[o>>2]|0)<<2)|0))break r}s=je()|0;Xh(u);break i}}while(0);s=t[i>>2]|0;Xh(u);break e}}while(0);Qe(s|0)}}while(0);c=h;return s|0}function I_(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;d=c;c=c+128|0;s=d;_=d+116|0;k=d+104|0;o=d+20|0;h=d+16|0;u=d+12|0;b=d+8|0;l=d+4|0;f[_>>0]=f[58887]|0;f[_+1>>0]=f[58888]|0;f[_+2>>0]=f[58889]|0;f[_+3>>0]=f[58890]|0;f[_+4>>0]=f[58891]|0;f[_+5>>0]=f[58892]|0;w_(_+1|0,58893,1,t[r+4>>2]|0);e=Vb()|0;t[s>>2]=a;a=k+(nw(k,12,e,_,s)|0)|0;_=m_(k,a,r)|0;e=sd(r)|0;t[b>>2]=e;w=0;me(3,k|0,_|0,a|0,o|0,h|0,u|0,b|0);a=w;w=0;if(a&1){k=je()|0;bh(e)|0;Qe(k|0)}else{bh(e)|0;t[l>>2]=t[i>>2];_=t[h>>2]|0;k=t[u>>2]|0;t[s>>2]=t[l>>2];k=aw(s,o,_,k,r,n)|0;c=d;return k|0}return 0}function O_(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0;g=c;c=c+16|0;y=g;v=zu(l,44212)|0;h=zu(l,44368)|0;aM[t[(t[h>>2]|0)+20>>2]&127](y,h);k=f[y>>0]|0;m=y+4|0;e:do{if(!(((k&1)==0?(k&255)>>>1:t[m>>2]|0)|0)){w=0;Ae(t[(t[v>>2]|0)+48>>2]|0,v|0,e|0,r|0,n|0)|0;p=w;w=0;if(p&1)p=5;else{l=n+(r-e<<2)|0;t[s>>2]=l;p=28}}else{t[s>>2]=n;l=f[e>>0]|0;switch(l<<24>>24){case 43:case 45:{w=0;l=pe(t[(t[v>>2]|0)+44>>2]|0,v|0,l|0)|0;k=w;w=0;if(k&1){p=5;break e}u=t[s>>2]|0;t[s>>2]=u+4;t[u>>2]=l;u=e+1|0;break}default:u=e}i:do{if((r-u|0)>1?(f[u>>0]|0)==48:0){l=u+1|0;switch(f[l>>0]|0){case 88:case 120:break;default:{k=u;break i}}w=0;o=pe(t[(t[v>>2]|0)+44>>2]|0,v|0,48)|0;k=w;w=0;if(k&1){p=5;break e}k=t[s>>2]|0;t[s>>2]=k+4;t[k>>2]=o;w=0;l=pe(t[(t[v>>2]|0)+44>>2]|0,v|0,f[l>>0]|0)|0;k=w;w=0;if(k&1){p=5;break e}k=t[s>>2]|0;t[s>>2]=k+4;t[k>>2]=l;k=u+2|0}else k=u}while(0);if((k|0)!=(r|0)?(d=r+-1|0,k>>>0<d>>>0):0){o=k;l=d;do{_=f[o>>0]|0;f[o>>0]=f[l>>0]|0;f[l>>0]=_;o=o+1|0;l=l+-1|0}while(o>>>0<l>>>0)}w=0;h=de(t[(t[h>>2]|0)+16>>2]|0,h|0)|0;_=w;w=0;if(!(_&1)){d=y+8|0;b=y+1|0;i:do{if(k>>>0<r>>>0){l=0;o=0;_=k;while(1){u=f[((f[y>>0]&1)==0?b:t[d>>2]|0)+o>>0]|0;if(u<<24>>24!=0&(l|0)==(u<<24>>24|0)){l=t[s>>2]|0;t[s>>2]=l+4;t[l>>2]=h;l=f[y>>0]|0;u=0;o=(o>>>0<(((l&1)==0?(l&255)>>>1:t[m>>2]|0)+-1|0)>>>0&1)+o|0}else u=l;w=0;l=pe(t[(t[v>>2]|0)+44>>2]|0,v|0,f[_>>0]|0)|0;M=w;w=0;if(M&1)break;M=t[s>>2]|0;t[s>>2]=M+4;t[M>>2]=l;_=_+1|0;if(_>>>0>=r>>>0)break i;else l=u+1|0}l=je()|0;break e}}while(0);u=e;l=n+(k-u<<2)|0;o=t[s>>2]|0;if((l|0)!=(o|0)){e=o+-4|0;if(l>>>0<e>>>0){do{M=t[l>>2]|0;t[l>>2]=t[e>>2];t[e>>2]=M;l=l+4|0;e=e+-4|0}while(l>>>0<e>>>0);e=u;l=o;p=28}else{e=u;l=o;p=28}}else{e=u;p=28}}else p=5}}while(0);if((p|0)==5)l=je()|0;else if((p|0)==28){t[a>>2]=(i|0)==(r|0)?l:n+(i-e<<2)|0;xh(y);c=g;return}xh(y);Qe(l|0)}function x_(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0;d=c;c=c+224|0;s=d+8|0;e=d;_=d+196|0;o=d+32|0;h=d+28|0;u=d+24|0;b=d+20|0;l=d+16|0;k=e;t[k>>2]=37;t[k+4>>2]=0;w_(e+1|0,58895,1,t[r+4>>2]|0);k=Vb()|0;m=s;t[m>>2]=n;t[m+4>>2]=a;a=_+(nw(_,22,k,e,s)|0)|0;n=m_(_,a,r)|0;e=sd(r)|0;t[b>>2]=e;w=0;me(3,_|0,n|0,a|0,o|0,h|0,u|0,b|0);a=w;w=0;if(a&1){m=je()|0;bh(e)|0;Qe(m|0)}else{bh(e)|0;t[l>>2]=t[i>>2];k=t[h>>2]|0;m=t[u>>2]|0;t[s>>2]=t[l>>2];m=aw(s,o,k,m,r,f)|0;c=d;return m|0}return 0}function L_(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0;p=c;c=c+16|0;m=p;_=p+8|0;e:do{if((r|0)==(n|0))u=n;else{u=r;while(1){if(!(t[u>>2]|0))break e;u=u+4|0;if((u|0)==(n|0)){u=n;break}}}}while(0);t[o>>2]=s;t[a>>2]=r;d=l;k=e+8|0;e:do{if(!((s|0)==(l|0)|(r|0)==(n|0))){e=s;h=u;i:while(1){y=i;s=t[y+4>>2]|0;u=m;t[u>>2]=t[y>>2];t[u+4>>2]=s;u=Kg(t[k>>2]|0)|0;w=0;s=ge(21,e|0,a|0,h-r>>2|0,d-e|0,i|0)|0;y=w;w=0;if(y&1){g=9;break}if((u|0)!=0?(w=0,de(75,u|0)|0,y=w,w=0,y&1):0){g=8;break}switch(s|0){case 0:{b=1;break e}case-1:{u=e;g=14;break i}default:{}}u=(t[o>>2]|0)+s|0;t[o>>2]=u;if((u|0)==(l|0)){g=27;break}if((h|0)==(n|0)){r=t[a>>2]|0;e=u;u=n}else{u=Kg(t[k>>2]|0)|0;w=0;r=_e(34,_|0,0,i|0)|0;y=w;w=0;if(y&1){g=35;break}if((u|0)!=0?(w=0,de(75,u|0)|0,y=w,w=0,y&1):0){g=34;break}if((r|0)==-1){b=2;break e}if(r>>>0>(d-(t[o>>2]|0)|0)>>>0){b=1;break e}if(r){u=_;while(1){h=f[u>>0]|0;y=t[o>>2]|0;t[o>>2]=y+1;f[y>>0]=h;r=r+-1|0;if(!r)break;else u=u+1|0}}r=(t[a>>2]|0)+4|0;t[a>>2]=r;r:do{if((r|0)==(n|0))u=n;else{u=r;while(1){if(!(t[u>>2]|0))break r;u=u+4|0;if((u|0)==(n|0)){u=n;break}}}}while(0);e=t[o>>2]|0}if((e|0)==(l|0)|(r|0)==(n|0)){g=47;break e}else h=u}if((g|0)==8){y=je(0)|0;Ni(y)}else if((g|0)==9){r=je()|0;if((u|0)!=0?(w=0,de(75,u|0)|0,y=w,w=0,y&1):0){y=je(0)|0;Ni(y)}Qe(r|0)}else if((g|0)==14){t[o>>2]=u;i:do{if((r|0)!=(t[a>>2]|0)){while(1){y=t[r>>2]|0;e=Kg(t[k>>2]|0)|0;w=0;u=_e(34,u|0,y|0,m|0)|0;y=w;w=0;if(y&1){v=e;break}if((e|0)!=0?(w=0,de(75,e|0)|0,y=w,w=0,y&1):0){g=18;break}if((u|0)==-1)break i;u=(t[o>>2]|0)+u|0;t[o>>2]=u;r=r+4|0;if((r|0)==(t[a>>2]|0))break i}if((g|0)==18){y=je(0)|0;Ni(y)}r=je()|0;if((v|0)!=0?(w=0,de(75,v|0)|0,y=w,w=0,y&1):0){y=je(0)|0;Ni(y)}Qe(r|0)}}while(0);t[a>>2]=r;b=2;break}else if((g|0)==27){r=t[a>>2]|0;g=47;break}else if((g|0)==34){y=je(0)|0;Ni(y)}else if((g|0)==35){r=je()|0;if((u|0)!=0?(w=0,de(75,u|0)|0,y=w,w=0,y&1):0){y=je(0)|0;Ni(y)}Qe(r|0)}}else g=47}while(0);if((g|0)==47)b=(r|0)!=(n|0)&1;c=p;return b|0}function B_(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0;p=c;c=c+16|0;v=p;e:do{if((r|0)==(n|0))u=n;else{u=r;while(1){if(!(f[u>>0]|0))break e;u=u+1|0;if((u|0)==(n|0)){u=n;break}}}}while(0);t[o>>2]=s;t[a>>2]=r;b=l;k=e+8|0;e:do{if(!((s|0)==(l|0)|(r|0)==(n|0))){e=s;d=u;i:while(1){h=i;u=t[h+4>>2]|0;s=v;t[s>>2]=t[h>>2];t[s+4>>2]=u;s=d;u=Kg(t[k>>2]|0)|0;w=0;h=ge(22,e|0,a|0,s-r|0,b-e>>2|0,i|0)|0;y=w;w=0;if(y&1){g=9;break}if((u|0)!=0?(w=0,de(75,u|0)|0,y=w,w=0,y&1):0){g=8;break}switch(h|0){case 0:{_=2;break e}case-1:{u=e;g=14;break i}default:{}}e=(t[o>>2]|0)+(h<<2)|0;t[o>>2]=e;if((e|0)==(l|0)){g=31;break}r=t[a>>2]|0;if((d|0)==(n|0))u=n;else{u=Kg(t[k>>2]|0)|0;w=0;r=Ae(20,e|0,r|0,1,i|0)|0;y=w;w=0;if(y&1){g=38;break}if((u|0)!=0?(w=0,de(75,u|0)|0,y=w,w=0,y&1):0){g=37;break}if(r){_=2;break e}t[o>>2]=(t[o>>2]|0)+4;r=(t[a>>2]|0)+1|0;t[a>>2]=r;r:do{if((r|0)==(n|0))u=n;else{u=r;while(1){if(!(f[u>>0]|0))break r;u=u+1|0;if((u|0)==(n|0)){u=n;break}}}}while(0);e=t[o>>2]|0}if((e|0)==(l|0)|(r|0)==(n|0)){g=47;break e}else d=u}if((g|0)==8){y=je(0)|0;Ni(y)}else if((g|0)==9){r=je()|0;if((u|0)!=0?(w=0,de(75,u|0)|0,y=w,w=0,y&1):0){y=je(0)|0;Ni(y)}Qe(r|0)}else if((g|0)==14){t[o>>2]=u;i:do{if((r|0)!=(t[a>>2]|0)){e=u;r:while(1){u=Kg(t[k>>2]|0)|0;w=0;e=Ae(20,e|0,r|0,s-r|0,v|0)|0;y=w;w=0;if(y&1){g=19;break}if((u|0)!=0?(w=0,de(75,u|0)|0,y=w,w=0,y&1):0){g=18;break}switch(e|0){case-1:{g=25;break r}case-2:{g=26;break r}case 0:{r=r+1|0;break}default:r=r+e|0}e=(t[o>>2]|0)+4|0;t[o>>2]=e;if((r|0)==(t[a>>2]|0)){m=r;break i}}if((g|0)==18){y=je(0)|0;Ni(y)}else if((g|0)==19){r=je()|0;if((u|0)!=0?(w=0,de(75,u|0)|0,y=w,w=0,y&1):0){y=je(0)|0;Ni(y)}Qe(r|0)}else if((g|0)==25){t[a>>2]=r;_=2;break e}else if((g|0)==26){t[a>>2]=r;_=1;break e}}else m=r}while(0);t[a>>2]=m;_=(m|0)!=(n|0)&1;break}else if((g|0)==31){r=t[a>>2]|0;g=47;break}else if((g|0)==37){y=je(0)|0;Ni(y)}else if((g|0)==38){r=je()|0;if((u|0)!=0?(w=0,de(75,u|0)|0,y=w,w=0,y&1):0){y=je(0)|0;Ni(y)}Qe(r|0)}}else g=47}while(0);if((g|0)==47)_=(r|0)!=(n|0)&1;c=p;return _|0}function z_(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=c;c=c+16|0;s=l;t[a>>2]=r;r=Kg(t[e+8>>2]|0)|0;w=0;e=_e(34,s|0,0,i|0)|0;i=w;w=0;if(i&1){s=je()|0;if((r|0)!=0?(w=0,de(75,r|0)|0,l=w,w=0,l&1):0){l=je(0)|0;Ni(l)}Qe(s|0)}if((r|0)!=0?(w=0,de(75,r|0)|0,i=w,w=0,i&1):0){i=je(0)|0;Ni(i)}switch(e|0){case 0:case-1:{s=2;break}default:{e=e+-1|0;if(e>>>0<=(n-(t[a>>2]|0)|0)>>>0)if(!e)s=0;else while(1){i=f[s>>0]|0;n=t[a>>2]|0;t[a>>2]=n+1;f[n>>0]=i;e=e+-1|0;if(!e){s=0;break}else s=s+1|0}else s=1}}c=l;return s|0}function D_(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0;i=e+8|0;w=0;r=de(75,t[i>>2]|0)|0;f=w;w=0;do{if(f&1)n=16;else{w=0;f=_e(35,0,0,4)|0;e=w;w=0;if(e&1){e=je(0)|0;if(!r)break;w=0;de(75,r|0)|0;s=w;w=0;if(!(s&1))break;s=je(0)|0;Ni(s)}if((r|0)!=0?(w=0,de(75,r|0)|0,s=w,w=0,s&1):0){s=je(0)|0;Ni(s)}if(!f){e=t[i>>2]|0;if(e){w=0;e=de(75,e|0)|0;s=w;w=0;if(s&1){n=16;break}if((e|0)!=0?(w=0,de(75,e|0)|0,s=w,w=0,s&1):0){s=je(0)|0;Ni(s)}else a=0}else a=1}else a=-1;return a|0}}while(0);if((n|0)==16)e=je(0)|0;Ni(e);return 0}function N_(e){e=e|0;return 0}function F_(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;u=f;o=e+8|0;e:do{if((r|0)==(f|0)|(n|0)==0)e=0;else{e=0;l=0;while(1){s=Kg(t[o>>2]|0)|0;w=0;a=_e(36,r|0,u-r|0,i|0)|0;d=w;w=0;if(d&1){h=s;break}if((s|0)!=0?(w=0,de(75,s|0)|0,d=w,w=0,d&1):0){c=5;break}switch(a|0){case-2:case-1:break e;case 0:{r=r+1|0;a=1;break}default:r=r+a|0}e=a+e|0;l=l+1|0;if((r|0)==(f|0)|l>>>0>=n>>>0)break e}if((c|0)==5){d=je(0)|0;Ni(d)}e=je()|0;if((h|0)!=0?(w=0,de(75,h|0)|0,d=w,w=0,d&1):0){d=je(0)|0;Ni(d)}Qe(e|0)}}while(0);return e|0}function H_(e){e=e|0;var i=0,r=0;e=t[e+8>>2]|0;if(e){w=0;e=de(75,e|0)|0;r=w;w=0;if(r&1){r=je(0)|0;Ni(r)}if((e|0)!=0?(w=0,de(75,e|0)|0,r=w,w=0,r&1):0){r=je(0)|0;Ni(r)}else i=4}else i=1;return i|0}function U_(e){e=e|0;Bp(e);return}function j_(e,i,r,f,n,a,s,l){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0;e=c;c=c+16|0;o=e+4|0;i=e;t[o>>2]=r;t[i>>2]=a;s=Xw(r,f,o,a,s,i,1114111,0)|0;t[n>>2]=t[o>>2];t[l>>2]=t[i>>2];c=e;return s|0}function Y_(e,i,r,f,n,a,s,l){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0;e=c;c=c+16|0;o=e+4|0;i=e;t[o>>2]=r;t[i>>2]=a;s=Gw(r,f,o,a,s,i,1114111,0)|0;t[n>>2]=t[o>>2];t[l>>2]=t[i>>2];c=e;return s|0}function q_(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t[n>>2]=r;return 3}function $_(e){e=e|0;return 0}function V_(e){e=e|0;return 0}function X_(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;return Kw(r,f,n,1114111,0)|0}function G_(e){e=e|0;return 4}function K_(e){e=e|0;Bp(e);return}function W_(e,i,r,f,n,a,s,l){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0;e=c;c=c+16|0;o=e+4|0;i=e;t[o>>2]=r;t[i>>2]=a;s=Ww(r,f,o,a,s,i,1114111,0)|0;t[n>>2]=t[o>>2];t[l>>2]=t[i>>2];c=e;return s|0}function Z_(e,i,r,f,n,a,s,l){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0;e=c;c=c+16|0;o=e+4|0;i=e;t[o>>2]=r;t[i>>2]=a;s=Zw(r,f,o,a,s,i,1114111,0)|0;t[n>>2]=t[o>>2];t[l>>2]=t[i>>2];c=e;return s|0}function J_(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t[n>>2]=r;return 3}function Q_(e){e=e|0;return 0}function ek(e){e=e|0;return 0}function ik(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;return Jw(r,f,n,1114111,0)|0}function rk(e){e=e|0;return 4}function fk(e){e=e|0;Bp(e);return}function nk(e){e=e|0;Bp(e);return}function tk(e,i){e=e|0;i=i|0;t[e+4>>2]=i+-1;t[e>>2]=44384;f[e+8>>0]=46;f[e+9>>0]=44;e=e+12|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}function ak(e,i){e=e|0;i=i|0;t[e+4>>2]=i+-1;t[e>>2]=44424;t[e+8>>2]=46;t[e+12>>2]=44;e=e+16|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return}function sk(e){e=e|0;t[e>>2]=44384;xh(e+12|0);return}function lk(e){e=e|0;sk(e);Bp(e);return}function ok(e){e=e|0;t[e>>2]=44424;xh(e+16|0);return}function uk(e){e=e|0;ok(e);Bp(e);return}function ck(e){e=e|0;return f[e+8>>0]|0}function hk(e){e=e|0;return t[e+8>>2]|0}function dk(e){e=e|0;return f[e+9>>0]|0}function bk(e){e=e|0;return t[e+12>>2]|0}function _k(e,i){e=e|0;i=i|0;Ph(e,i+12|0);return}function kk(e,i){e=e|0;i=i|0;Ph(e,i+16|0);return}function wk(e,i){e=e|0;i=i|0;Ih(e,59024,4);return}function mk(e,i){e=e|0;i=i|0;$h(e,44996,Gy(44996)|0);return}function vk(e,i){e=e|0;i=i|0;Ih(e,59029,5);return}function pk(e,i){e=e|0;i=i|0;$h(e,45016,Gy(45016)|0);return}function gk(e){e=e|0;switch(t[e+4>>2]&74|0){case 64:{e=8;break}case 8:{e=16;break}case 0:{e=0;break}default:e=10}return e|0}function yk(e){e=e|0;do{if((f[2464]|0)==0?(ze(2464)|0)!=0:0){if((f[2472]|0)==0?(ze(2472)|0)!=0:0){e=45040;do{t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;e=e+12|0}while((e|0)!=45208);di(193,0,k|0)|0;qe(2472)}w=0;pe(41,45040,59035)|0;e=w;w=0;if(((((((((((((!(e&1)?(w=0,pe(41,45052,59042)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45064,59049)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45076,59057)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45088,59067)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45100,59076)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45112,59083)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45124,59092)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45136,59096)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45148,59100)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45160,59104)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45172,59108)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45184,59112)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45196,59116)|0,e=w,w=0,!(e&1)):0){t[11302]=45040;qe(2464);break}e=je()|0;gi(2464);Qe(e|0)}}while(0);return t[11302]|0}function Mk(e){e=e|0;do{if((f[2480]|0)==0?(ze(2480)|0)!=0:0){if((f[2488]|0)==0?(ze(2488)|0)!=0:0){e=45212;do{t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;e=e+12|0}while((e|0)!=45380);di(194,0,k|0)|0;qe(2488)}w=0;pe(42,45212,45380)|0;e=w;w=0;if(((((((((((((!(e&1)?(w=0,pe(42,45224,45408)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,45236,45436)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,45248,45468)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,45260,45508)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,45272,45544)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,45284,45572)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,45296,45608)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,45308,45624)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,45320,45640)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,45332,45656)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,45344,45672)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,45356,45688)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,45368,45704)|0,e=w,w=0,!(e&1)):0){t[11430]=45212;qe(2480);break}e=je()|0;gi(2480);Qe(e|0)}}while(0);return t[11430]|0}function Ak(e){e=e|0;e:do{if((f[2496]|0)==0?(ze(2496)|0)!=0:0){if((f[2504]|0)==0?(ze(2504)|0)!=0:0){e=45724;do{t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;e=e+12|0}while((e|0)!=46012);di(195,0,k|0)|0;qe(2504)}w=0;pe(41,45724,59120)|0;e=w;w=0;do{if((((((((((((((!(e&1)?(w=0,pe(41,45736,59128)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45748,59137)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45760,59143)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45772,59149)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45784,59153)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45796,59158)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45808,59163)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45820,59170)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45832,59180)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45844,59188)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45856,59197)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45868,59206)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45880,59210)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(41,45892,59214)|0,e=w,w=0,!(e&1)):0){w=0;pe(41,45904,59218)|0;e=w;w=0;if(e&1)break;w=0;pe(41,45916,59149)|0;e=w;w=0;if(e&1)break;w=0;pe(41,45928,59222)|0;e=w;w=0;if(e&1)break;w=0;pe(41,45940,59226)|0;e=w;w=0;if(e&1)break;w=0;pe(41,45952,59230)|0;e=w;w=0;if(e&1)break;w=0;pe(41,45964,59234)|0;e=w;w=0;if(e&1)break;w=0;pe(41,45976,59238)|0;e=w;w=0;if(e&1)break;w=0;pe(41,45988,59242)|0;e=w;w=0;if(e&1)break;w=0;pe(41,46e3,59246)|0;e=w;w=0;if(e&1)break;t[11503]=45724;qe(2496);break e}}while(0);e=je()|0;gi(2496);Qe(e|0)}}while(0);return t[11503]|0}function Ek(e){e=e|0;e:do{if((f[2512]|0)==0?(ze(2512)|0)!=0:0){if((f[2520]|0)==0?(ze(2520)|0)!=0:0){e=46016;do{t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;e=e+12|0}while((e|0)!=46304);di(196,0,k|0)|0;qe(2520)}w=0;pe(42,46016,46304)|0;e=w;w=0;do{if((((((((((((((!(e&1)?(w=0,pe(42,46028,46336)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,46040,46372)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,46052,46396)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,46064,46420)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,46076,46436)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,46088,46456)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,46100,46476)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,46112,46504)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,46124,46544)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,46136,46576)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,46148,46612)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,46160,46648)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,46172,46664)|0,e=w,w=0,!(e&1)):0)?(w=0,pe(42,46184,46680)|0,e=w,w=0,!(e&1)):0){w=0;pe(42,46196,46696)|0;e=w;w=0;if(e&1)break;w=0;pe(42,46208,46420)|0;e=w;w=0;if(e&1)break;w=0;pe(42,46220,46712)|0;e=w;w=0;if(e&1)break;w=0;pe(42,46232,46728)|0;e=w;w=0;if(e&1)break;w=0;pe(42,46244,46744)|0;e=w;w=0;if(e&1)break;w=0;pe(42,46256,46760)|0;e=w;w=0;if(e&1)break;w=0;pe(42,46268,46776)|0;e=w;w=0;if(e&1)break;w=0;pe(42,46280,46792)|0;e=w;w=0;if(e&1)break;w=0;pe(42,46292,46808)|0;e=w;w=0;if(e&1)break;t[11706]=46016;qe(2512);break e}}while(0);e=je()|0;gi(2512);Qe(e|0)}}while(0);return t[11706]|0}function Sk(e){e=e|0;do{if((f[2528]|0)==0?(ze(2528)|0)!=0:0){if((f[2536]|0)==0?(ze(2536)|0)!=0:0){e=46828;do{t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;e=e+12|0}while((e|0)!=47116);di(197,0,k|0)|0;qe(2536)}w=0;pe(41,46828,59250)|0;e=w;w=0;if(!(e&1)?(w=0,pe(41,46840,59253)|0,e=w,w=0,!(e&1)):0){t[11779]=46828;qe(2528);break}e=je()|0;gi(2528);Qe(e|0)}}while(0);return t[11779]|0}function Tk(e){e=e|0;do{if((f[2544]|0)==0?(ze(2544)|0)!=0:0){if((f[2552]|0)==0?(ze(2552)|0)!=0:0){e=47120;do{t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;e=e+12|0}while((e|0)!=47408);di(198,0,k|0)|0;qe(2552)}w=0;pe(42,47120,47408)|0;e=w;w=0;if(!(e&1)?(w=0,pe(42,47132,47420)|0,e=w,w=0,!(e&1)):0){t[11858]=47120;qe(2544);break}e=je()|0;gi(2544);Qe(e|0)}}while(0);return t[11858]|0}function Rk(e){e=e|0;do{if((f[2560]|0)==0?(ze(2560)|0)!=0:0){w=0;Ee(5,47436,59256,8);e=w;w=0;if(e&1){e=je()|0;gi(2560);Qe(e|0)}else{di(199,47436,k|0)|0;qe(2560);break}}}while(0);return 47436}function Ck(e){e=e|0;var i=0;do{if((f[2568]|0)==0?(ze(2568)|0)!=0:0){w=0;e=de(76,47448)|0;i=w;w=0;if(!(i&1)?(w=0,Ee(15,47484,47448,e|0),i=w,w=0,!(i&1)):0){di(200,47484,k|0)|0;qe(2568);break}i=je()|0;gi(2568);Qe(i|0)}}while(0);return 47484}function Pk(e){e=e|0;do{if((f[2576]|0)==0?(ze(2576)|0)!=0:0){w=0;Ee(5,47496,59265,8);e=w;w=0;if(e&1){e=je()|0;gi(2576);Qe(e|0)}else{di(199,47496,k|0)|0;qe(2576);break}}}while(0);return 47496}function Ik(e){e=e|0;var i=0;do{if((f[2584]|0)==0?(ze(2584)|0)!=0:0){w=0;e=de(76,47508)|0;i=w;w=0;if(!(i&1)?(w=0,Ee(15,47544,47508,e|0),i=w,w=0,!(i&1)):0){di(200,47544,k|0)|0;qe(2584);break}i=je()|0;gi(2584);Qe(i|0)}}while(0);return 47544}function Ok(e){e=e|0;do{if((f[2592]|0)==0?(ze(2592)|0)!=0:0){w=0;Ee(5,47556,59274,20);e=w;w=0;if(e&1){e=je()|0;gi(2592);Qe(e|0)}else{di(199,47556,k|0)|0;qe(2592);break}}}while(0);return 47556}function xk(e){e=e|0;var i=0;do{if((f[2600]|0)==0?(ze(2600)|0)!=0:0){w=0;e=de(76,47568)|0;i=w;w=0;if(!(i&1)?(w=0,Ee(15,47652,47568,e|0),i=w,w=0,!(i&1)):0){di(200,47652,k|0)|0;qe(2600);break}i=je()|0;gi(2600);Qe(i|0)}}while(0);return 47652}function Lk(e){e=e|0;do{if((f[2608]|0)==0?(ze(2608)|0)!=0:0){w=0;Ee(5,47664,59295,11);e=w;w=0;if(e&1){e=je()|0;gi(2608);Qe(e|0)}else{di(199,47664,k|0)|0;qe(2608);break}}}while(0);return 47664}function Bk(e){e=e|0;var i=0;do{if((f[2616]|0)==0?(ze(2616)|0)!=0:0){w=0;e=de(76,47676)|0;i=w;w=0;if(!(i&1)?(w=0,Ee(15,47724,47676,e|0),i=w,w=0,!(i&1)):0){di(200,47724,k|0)|0;qe(2616);break}i=je()|0;gi(2616);Qe(i|0)}}while(0);return 47724}function zk(e){e=e|0;var i=0,r=0,f=0;t[e>>2]=44304;e=e+8|0;i=t[e>>2]|0;w=0;r=Me(3)|0;f=w;w=0;do{if(!(f&1)){if((i|0)!=(r|0)?(w=0,ue(188,t[e>>2]|0),f=w,w=0,f&1):0)break;return}}while(0);f=je(0)|0;Ni(f)}function Dk(e,i,r,n,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;o=o|0;var u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0;E=c;c=c+112|0;h=E;b=(n-r|0)/12|0;do{if(b>>>0>100){h=Pc(b)|0;if((h|0)==0?(w=0,Se(6),A=w,w=0,A&1):0){u=0;m=6;break}u=h;m=11}else{u=0;m=11}}while(0);e:do{if((m|0)==11){if((r|0)==(n|0))d=0;else{m=r;_=0;k=h;while(1){d=f[m>>0]|0;if(!(d&1))d=(d&255)>>>1;else d=t[m+4>>2]|0;if(!d){f[k>>0]=2;d=_+1|0;b=b+-1|0}else{f[k>>0]=1;d=_}m=m+12|0;if((m|0)==(n|0))break;else{_=d;k=k+1|0}}}M=(r|0)==(n|0);A=(r|0)==(n|0);y=0;v=d;i:while(1){d=t[e>>2]|0;do{if(d){if((t[d+12>>2]|0)==(t[d+16>>2]|0)){w=0;d=de(t[(t[d>>2]|0)+36>>2]|0,d|0)|0;g=w;w=0;if(g&1){m=5;break i}if((d|0)==-1){t[e>>2]=0;d=0;break}else{d=t[e>>2]|0;break}}}else d=0}while(0);m=(d|0)==0;_=t[i>>2]|0;if(_){if((t[_+12>>2]|0)==(t[_+16>>2]|0)){w=0;d=de(t[(t[_>>2]|0)+36>>2]|0,_|0)|0;g=w;w=0;if(g&1){m=5;break}if((d|0)==-1){t[i>>2]=0;_=0}}}else _=0;k=(_|0)==0;d=t[e>>2]|0;if(!((b|0)!=0&(m^k))){m=64;break}_=t[d+12>>2]|0;if((_|0)==(t[d+16>>2]|0)){w=0;d=de(t[(t[d>>2]|0)+36>>2]|0,d|0)|0;g=w;w=0;if(g&1){m=5;break}}else d=a[_>>0]|0;d=d&255;if(!o){w=0;d=pe(t[(t[s>>2]|0)+12>>2]|0,s|0,d|0)|0;g=w;w=0;if(g&1){m=5;break}}g=y+1|0;if(M){d=0;m=v}else{k=0;p=r;m=v;v=h;while(1){do{if((f[v>>0]|0)==1){if(!(f[p>>0]&1))_=p+1|0;else _=t[p+8>>2]|0;_=f[_+y>>0]|0;if(!o){w=0;_=pe(t[(t[s>>2]|0)+12>>2]|0,s|0,_|0)|0;S=w;w=0;if(S&1){m=4;break i}}if(d<<24>>24!=_<<24>>24){f[v>>0]=0;_=k;b=b+-1|0;break}_=f[p>>0]|0;if(!(_&1))_=(_&255)>>>1;else _=t[p+4>>2]|0;if((_|0)==(g|0)){f[v>>0]=2;_=1;m=m+1|0;b=b+-1|0}else _=1}else _=k}while(0);p=p+12|0;if((p|0)==(n|0)){d=_;break}else{k=_;v=v+1|0}}}if(!d){y=g;v=m;continue}d=t[e>>2]|0;_=d+12|0;k=t[_>>2]|0;if((k|0)==(t[d+16>>2]|0)){w=0;de(t[(t[d>>2]|0)+40>>2]|0,d|0)|0;S=w;w=0;if(S&1){m=5;break}}else t[_>>2]=k+1;if((m+b|0)>>>0<2|A){y=g;v=m;continue}else{d=r;k=m;m=h}while(1){if((f[m>>0]|0)==2){_=f[d>>0]|0;if(!(_&1))_=(_&255)>>>1;else _=t[d+4>>2]|0;if((_|0)!=(g|0)){f[m>>0]=0;k=k+-1|0}}d=d+12|0;if((d|0)==(n|0)){y=g;v=k;continue i}else m=m+1|0}}if((m|0)==4){r=je()|0;break}else if((m|0)==5){r=je()|0;break}else if((m|0)==64){do{if(d){if((t[d+12>>2]|0)==(t[d+16>>2]|0)){w=0;d=de(t[(t[d>>2]|0)+36>>2]|0,d|0)|0;S=w;w=0;if(S&1){m=6;break e}if((d|0)==-1){t[e>>2]=0;d=0;break}else{d=t[e>>2]|0;break}}}else d=0}while(0);b=(d|0)==0;do{if(!k){if((t[_+12>>2]|0)==(t[_+16>>2]|0)){w=0;d=de(t[(t[_>>2]|0)+36>>2]|0,_|0)|0;S=w;w=0;if(S&1){m=6;break e}if((d|0)==-1){t[i>>2]=0;m=76;break}}if(!b)m=77}else m=76}while(0);if((m|0)==76?b:0)m=77;if((m|0)==77)t[l>>2]=t[l>>2]|2;i:do{if((r|0)==(n|0))m=81;else while(1){if((f[h>>0]|0)==2)break i;r=r+12|0;if((r|0)==(n|0)){m=81;break}else h=h+1|0}}while(0);if((m|0)==81){t[l>>2]=t[l>>2]|4;r=n}if(u)Ic(u);c=E;return r|0}}}while(0);if((m|0)==6)r=je()|0;if(u)Ic(u);Qe(r|0);return 0}function Nk(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0;S=c;c=c+240|0;v=S+202|0;o=S+200|0;R=S+24|0;T=S+12|0;g=S+8|0;A=S+40|0;E=S+4|0;y=S;p=gk(n)|0;s_(R,n,v,o);t[T>>2]=0;t[T+4>>2]=0;t[T+8>>2]=0;if(!(f[T>>0]&1))e=10;else e=(t[T>>2]&-2)+-1|0;w=0;Ee(8,T|0,e|0,0);m=w;w=0;e:do{if(!(m&1)){_=T+8|0;k=T+1|0;n=(f[T>>0]&1)==0?k:t[_>>2]|0;t[g>>2]=n;t[E>>2]=A;t[y>>2]=0;m=T+4|0;b=f[o>>0]|0;e=t[i>>2]|0;i:while(1){if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;o=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;d=w;w=0;if(d&1){C=24;break}if((o|0)==-1){t[i>>2]=0;e=0}}}else e=0;u=(e|0)==0;o=t[r>>2]|0;do{if(o){if((t[o+12>>2]|0)!=(t[o+16>>2]|0))if(u)break;else break i;w=0;h=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;d=w;w=0;if(d&1){C=24;break i}if((h|0)!=-1)if(u)break;else break i;else{t[r>>2]=0;C=16;break}}else C=16}while(0);if((C|0)==16){C=0;if(u){o=0;break}else o=0}u=f[T>>0]|0;u=(u&1)==0?(u&255)>>>1:t[m>>2]|0;if((t[g>>2]|0)==(n+u|0)){w=0;Ee(8,T|0,u<<1|0,0);d=w;w=0;if(d&1){C=24;break}if(!(f[T>>0]&1))n=10;else n=(t[T>>2]&-2)+-1|0;w=0;Ee(8,T|0,n|0,0);d=w;w=0;if(d&1){C=24;break}n=(f[T>>0]&1)==0?k:t[_>>2]|0;t[g>>2]=n+u}h=e+12|0;u=t[h>>2]|0;d=e+16|0;if((u|0)==(t[d>>2]|0)){w=0;u=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=24;break}}else u=a[u>>0]|0;if($b(u&255,p,n,g,y,b,R,A,E,v)|0)break;o=t[h>>2]|0;if((o|0)==(t[d>>2]|0)){w=0;de(t[(t[e>>2]|0)+40>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=24;break}else continue}else{t[h>>2]=o+1;continue}}if((C|0)==24){e=je()|0;break}P=f[R>>0]|0;if((((P&1)==0?(P&255)>>>1:t[R+4>>2]|0)|0)!=0?(M=t[E>>2]|0,(M-A|0)<160):0){P=t[y>>2]|0;t[E>>2]=M+4;t[M>>2]=P}w=0;n=Ae(21,n|0,t[g>>2]|0,s|0,p|0)|0;P=w;w=0;if(!(P&1)){t[l>>2]=n;Go(R,A,t[E>>2]|0,s);if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;n=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=25;break}if((n|0)==-1){t[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(o){if((t[o+12>>2]|0)==(t[o+16>>2]|0)){w=0;e=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;P=w;w=0;if(P&1){C=25;break e}if((e|0)==-1){t[r>>2]=0;C=49;break}}if(!n)C=50}else C=49}while(0);if((C|0)==49?n:0)C=50;if((C|0)==50)t[s>>2]=t[s>>2]|2;P=t[i>>2]|0;xh(T);xh(R);c=S;return P|0}else C=25}else C=25}while(0);if((C|0)==25)e=je()|0;xh(T);xh(R);Qe(e|0);return 0}function Fk(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0;S=c;c=c+240|0;v=S+202|0;o=S+200|0;R=S+24|0;T=S+12|0;g=S+8|0;A=S+40|0;E=S+4|0;y=S;p=gk(n)|0;s_(R,n,v,o);t[T>>2]=0;t[T+4>>2]=0;t[T+8>>2]=0;if(!(f[T>>0]&1))e=10;else e=(t[T>>2]&-2)+-1|0;w=0;Ee(8,T|0,e|0,0);m=w;w=0;e:do{if(!(m&1)){_=T+8|0;k=T+1|0;n=(f[T>>0]&1)==0?k:t[_>>2]|0;t[g>>2]=n;t[E>>2]=A;t[y>>2]=0;m=T+4|0;b=f[o>>0]|0;e=t[i>>2]|0;i:while(1){if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;o=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;d=w;w=0;if(d&1){C=24;break}if((o|0)==-1){t[i>>2]=0;e=0}}}else e=0;o=(e|0)==0;u=t[r>>2]|0;do{if(u){if((t[u+12>>2]|0)!=(t[u+16>>2]|0))if(o)break;else break i;w=0;h=de(t[(t[u>>2]|0)+36>>2]|0,u|0)|0;d=w;w=0;if(d&1){C=24;break i}if((h|0)!=-1)if(o)break;else break i;else{t[r>>2]=0;C=16;break}}else C=16}while(0);if((C|0)==16){C=0;if(o){u=0;break}else u=0}o=f[T>>0]|0;o=(o&1)==0?(o&255)>>>1:t[m>>2]|0;if((t[g>>2]|0)==(n+o|0)){w=0;Ee(8,T|0,o<<1|0,0);d=w;w=0;if(d&1){C=24;break}if(!(f[T>>0]&1))n=10;else n=(t[T>>2]&-2)+-1|0;w=0;Ee(8,T|0,n|0,0);d=w;w=0;if(d&1){C=24;break}n=(f[T>>0]&1)==0?k:t[_>>2]|0;t[g>>2]=n+o}h=e+12|0;o=t[h>>2]|0;d=e+16|0;if((o|0)==(t[d>>2]|0)){w=0;o=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=24;break}}else o=a[o>>0]|0;if($b(o&255,p,n,g,y,b,R,A,E,v)|0)break;o=t[h>>2]|0;if((o|0)==(t[d>>2]|0)){w=0;de(t[(t[e>>2]|0)+40>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=24;break}else continue}else{t[h>>2]=o+1;continue}}if((C|0)==24){e=je()|0;break}P=f[R>>0]|0;if((((P&1)==0?(P&255)>>>1:t[R+4>>2]|0)|0)!=0?(M=t[E>>2]|0,(M-A|0)<160):0){P=t[y>>2]|0;t[E>>2]=M+4;t[M>>2]=P}w=0;n=Ae(22,n|0,t[g>>2]|0,s|0,p|0)|0;o=O;P=w;w=0;if(!(P&1)){P=l;t[P>>2]=n;t[P+4>>2]=o;Go(R,A,t[E>>2]|0,s);if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;n=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=25;break}if((n|0)==-1){t[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(u){if((t[u+12>>2]|0)==(t[u+16>>2]|0)){w=0;e=de(t[(t[u>>2]|0)+36>>2]|0,u|0)|0;P=w;w=0;if(P&1){C=25;break e}if((e|0)==-1){t[r>>2]=0;C=49;break}}if(!n)C=50}else C=49}while(0);if((C|0)==49?n:0)C=50;if((C|0)==50)t[s>>2]=t[s>>2]|2;P=t[i>>2]|0;xh(T);xh(R);c=S;return P|0}else C=25}else C=25}while(0);if((C|0)==25)e=je()|0;xh(T);xh(R);Qe(e|0);return 0}function Hk(e,i,r,s,l,o){e=e|0;i=i|0;r=r|0;s=s|0;l=l|0;o=o|0;var u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0;T=c;c=c+240|0;p=T+202|0;u=T+200|0;C=T+24|0;R=T+12|0;y=T+8|0;E=T+40|0;S=T+4|0;M=T;g=gk(s)|0;s_(C,s,p,u);t[R>>2]=0;t[R+4>>2]=0;t[R+8>>2]=0;if(!(f[R>>0]&1))e=10;else e=(t[R>>2]&-2)+-1|0;w=0;Ee(8,R|0,e|0,0);v=w;w=0;e:do{if(!(v&1)){k=R+8|0;m=R+1|0;s=(f[R>>0]&1)==0?m:t[k>>2]|0;t[y>>2]=s;t[S>>2]=E;t[M>>2]=0;v=R+4|0;_=f[u>>0]|0;e=t[i>>2]|0;i:while(1){if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;u=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;b=w;w=0;if(b&1){P=24;break}if((u|0)==-1){t[i>>2]=0;e=0}}}else e=0;h=(e|0)==0;u=t[r>>2]|0;do{if(u){if((t[u+12>>2]|0)!=(t[u+16>>2]|0))if(h)break;else break i;w=0;d=de(t[(t[u>>2]|0)+36>>2]|0,u|0)|0;b=w;w=0;if(b&1){P=24;break i}if((d|0)!=-1)if(h)break;else break i;else{t[r>>2]=0;P=16;break}}else P=16}while(0);if((P|0)==16){P=0;if(h){u=0;break}else u=0}h=f[R>>0]|0;h=(h&1)==0?(h&255)>>>1:t[v>>2]|0;if((t[y>>2]|0)==(s+h|0)){w=0;Ee(8,R|0,h<<1|0,0);b=w;w=0;if(b&1){P=24;break}if(!(f[R>>0]&1))s=10;else s=(t[R>>2]&-2)+-1|0;w=0;Ee(8,R|0,s|0,0);b=w;w=0;if(b&1){P=24;break}s=(f[R>>0]&1)==0?m:t[k>>2]|0;t[y>>2]=s+h}d=e+12|0;h=t[d>>2]|0;b=e+16|0;if((h|0)==(t[b>>2]|0)){w=0;h=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;I=w;w=0;if(I&1){P=24;break}}else h=a[h>>0]|0;if($b(h&255,g,s,y,M,_,C,E,S,p)|0)break;u=t[d>>2]|0;if((u|0)==(t[b>>2]|0)){w=0;de(t[(t[e>>2]|0)+40>>2]|0,e|0)|0;I=w;w=0;if(I&1){P=24;break}else continue}else{t[d>>2]=u+1;continue}}if((P|0)==24){e=je()|0;break}I=f[C>>0]|0;if((((I&1)==0?(I&255)>>>1:t[C+4>>2]|0)|0)!=0?(A=t[S>>2]|0,(A-E|0)<160):0){I=t[M>>2]|0;t[S>>2]=A+4;t[A>>2]=I}w=0;s=Ae(23,s|0,t[y>>2]|0,l|0,g|0)|0;I=w;w=0;if(!(I&1)){n[o>>1]=s;Go(C,E,t[S>>2]|0,l);if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;s=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;I=w;w=0;if(I&1){P=25;break}if((s|0)==-1){t[i>>2]=0;e=0}}}else e=0;s=(e|0)==0;do{if(u){if((t[u+12>>2]|0)==(t[u+16>>2]|0)){w=0;e=de(t[(t[u>>2]|0)+36>>2]|0,u|0)|0;I=w;w=0;if(I&1){P=25;break e}if((e|0)==-1){t[r>>2]=0;P=49;break}}if(!s)P=50}else P=49}while(0);if((P|0)==49?s:0)P=50;if((P|0)==50)t[l>>2]=t[l>>2]|2;I=t[i>>2]|0;xh(R);xh(C);c=T;return I|0}else P=25}else P=25}while(0);if((P|0)==25)e=je()|0;xh(R);xh(C);Qe(e|0);return 0}function Uk(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0;S=c;c=c+240|0;v=S+202|0;o=S+200|0;R=S+24|0;T=S+12|0;g=S+8|0;A=S+40|0;E=S+4|0;y=S;p=gk(n)|0;s_(R,n,v,o);t[T>>2]=0;t[T+4>>2]=0;t[T+8>>2]=0;if(!(f[T>>0]&1))e=10;else e=(t[T>>2]&-2)+-1|0;w=0;Ee(8,T|0,e|0,0);m=w;w=0;e:do{if(!(m&1)){_=T+8|0;k=T+1|0;n=(f[T>>0]&1)==0?k:t[_>>2]|0;t[g>>2]=n;t[E>>2]=A;t[y>>2]=0;m=T+4|0;b=f[o>>0]|0;e=t[i>>2]|0;i:while(1){if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;o=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;d=w;w=0;if(d&1){C=24;break}if((o|0)==-1){t[i>>2]=0;e=0}}}else e=0;u=(e|0)==0;o=t[r>>2]|0;do{if(o){if((t[o+12>>2]|0)!=(t[o+16>>2]|0))if(u)break;else break i;w=0;h=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;d=w;w=0;if(d&1){C=24;break i}if((h|0)!=-1)if(u)break;else break i;else{t[r>>2]=0;C=16;break}}else C=16}while(0);if((C|0)==16){C=0;if(u){o=0;break}else o=0}u=f[T>>0]|0;u=(u&1)==0?(u&255)>>>1:t[m>>2]|0;if((t[g>>2]|0)==(n+u|0)){w=0;Ee(8,T|0,u<<1|0,0);d=w;w=0;if(d&1){C=24;break}if(!(f[T>>0]&1))n=10;else n=(t[T>>2]&-2)+-1|0;w=0;Ee(8,T|0,n|0,0);d=w;w=0;if(d&1){C=24;break}n=(f[T>>0]&1)==0?k:t[_>>2]|0;t[g>>2]=n+u}h=e+12|0;u=t[h>>2]|0;d=e+16|0;if((u|0)==(t[d>>2]|0)){w=0;u=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=24;break}}else u=a[u>>0]|0;if($b(u&255,p,n,g,y,b,R,A,E,v)|0)break;o=t[h>>2]|0;if((o|0)==(t[d>>2]|0)){w=0;de(t[(t[e>>2]|0)+40>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=24;break}else continue}else{t[h>>2]=o+1;continue}}if((C|0)==24){e=je()|0;break}P=f[R>>0]|0;if((((P&1)==0?(P&255)>>>1:t[R+4>>2]|0)|0)!=0?(M=t[E>>2]|0,(M-A|0)<160):0){P=t[y>>2]|0;t[E>>2]=M+4;t[M>>2]=P}w=0;n=Ae(24,n|0,t[g>>2]|0,s|0,p|0)|0;P=w;w=0;if(!(P&1)){t[l>>2]=n;Go(R,A,t[E>>2]|0,s);if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;n=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=25;break}if((n|0)==-1){t[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(o){if((t[o+12>>2]|0)==(t[o+16>>2]|0)){w=0;e=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;P=w;w=0;if(P&1){C=25;break e}if((e|0)==-1){t[r>>2]=0;C=49;break}}if(!n)C=50}else C=49}while(0);if((C|0)==49?n:0)C=50;if((C|0)==50)t[s>>2]=t[s>>2]|2;P=t[i>>2]|0;xh(T);xh(R);c=S;return P|0}else C=25}else C=25}while(0);if((C|0)==25)e=je()|0;xh(T);xh(R);Qe(e|0);return 0}function jk(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0;S=c;c=c+240|0;v=S+202|0;o=S+200|0;R=S+24|0;T=S+12|0;g=S+8|0;A=S+40|0;E=S+4|0;y=S;p=gk(n)|0;s_(R,n,v,o);t[T>>2]=0;t[T+4>>2]=0;t[T+8>>2]=0;if(!(f[T>>0]&1))e=10;else e=(t[T>>2]&-2)+-1|0;w=0;Ee(8,T|0,e|0,0);m=w;w=0;e:do{if(!(m&1)){_=T+8|0;k=T+1|0;n=(f[T>>0]&1)==0?k:t[_>>2]|0;t[g>>2]=n;t[E>>2]=A;t[y>>2]=0;m=T+4|0;b=f[o>>0]|0;e=t[i>>2]|0;i:while(1){if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;o=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;d=w;w=0;if(d&1){C=24;break}if((o|0)==-1){t[i>>2]=0;e=0}}}else e=0;u=(e|0)==0;o=t[r>>2]|0;do{if(o){if((t[o+12>>2]|0)!=(t[o+16>>2]|0))if(u)break;else break i;w=0;h=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;d=w;w=0;if(d&1){C=24;break i}if((h|0)!=-1)if(u)break;else break i;else{t[r>>2]=0;C=16;break}}else C=16}while(0);if((C|0)==16){C=0;if(u){o=0;break}else o=0}u=f[T>>0]|0;u=(u&1)==0?(u&255)>>>1:t[m>>2]|0;if((t[g>>2]|0)==(n+u|0)){w=0;Ee(8,T|0,u<<1|0,0);d=w;w=0;if(d&1){C=24;break}if(!(f[T>>0]&1))n=10;else n=(t[T>>2]&-2)+-1|0;w=0;Ee(8,T|0,n|0,0);d=w;w=0;if(d&1){C=24;break}n=(f[T>>0]&1)==0?k:t[_>>2]|0;t[g>>2]=n+u}h=e+12|0;u=t[h>>2]|0;d=e+16|0;if((u|0)==(t[d>>2]|0)){w=0;u=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=24;break}}else u=a[u>>0]|0;if($b(u&255,p,n,g,y,b,R,A,E,v)|0)break;o=t[h>>2]|0;if((o|0)==(t[d>>2]|0)){w=0;de(t[(t[e>>2]|0)+40>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=24;break}else continue}else{t[h>>2]=o+1;continue}}if((C|0)==24){e=je()|0;break}P=f[R>>0]|0;if((((P&1)==0?(P&255)>>>1:t[R+4>>2]|0)|0)!=0?(M=t[E>>2]|0,(M-A|0)<160):0){P=t[y>>2]|0;t[E>>2]=M+4;t[M>>2]=P}w=0;n=Ae(25,n|0,t[g>>2]|0,s|0,p|0)|0;P=w;w=0;if(!(P&1)){t[l>>2]=n;Go(R,A,t[E>>2]|0,s);if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;n=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=25;break}if((n|0)==-1){t[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(o){if((t[o+12>>2]|0)==(t[o+16>>2]|0)){w=0;e=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;P=w;w=0;if(P&1){C=25;break e}if((e|0)==-1){t[r>>2]=0;C=49;break}}if(!n)C=50}else C=49}while(0);if((C|0)==49?n:0)C=50;if((C|0)==50)t[s>>2]=t[s>>2]|2;P=t[i>>2]|0;xh(T);xh(R);c=S;return P|0}else C=25}else C=25}while(0);if((C|0)==25)e=je()|0;xh(T);xh(R);Qe(e|0);return 0}function Yk(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0;S=c;c=c+240|0;v=S+202|0;o=S+200|0;R=S+24|0;T=S+12|0;g=S+8|0;A=S+40|0;E=S+4|0;y=S;p=gk(n)|0;s_(R,n,v,o);t[T>>2]=0;t[T+4>>2]=0;t[T+8>>2]=0;if(!(f[T>>0]&1))e=10;else e=(t[T>>2]&-2)+-1|0;w=0;Ee(8,T|0,e|0,0);m=w;w=0;e:do{if(!(m&1)){_=T+8|0;k=T+1|0;n=(f[T>>0]&1)==0?k:t[_>>2]|0;t[g>>2]=n;t[E>>2]=A;t[y>>2]=0;m=T+4|0;b=f[o>>0]|0;e=t[i>>2]|0;i:while(1){if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;o=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;d=w;w=0;if(d&1){C=24;break}if((o|0)==-1){t[i>>2]=0;e=0}}}else e=0;o=(e|0)==0;u=t[r>>2]|0;do{if(u){if((t[u+12>>2]|0)!=(t[u+16>>2]|0))if(o)break;else break i;w=0;h=de(t[(t[u>>2]|0)+36>>2]|0,u|0)|0;d=w;w=0;if(d&1){C=24;break i}if((h|0)!=-1)if(o)break;else break i;else{t[r>>2]=0;C=16;break}}else C=16}while(0);if((C|0)==16){C=0;if(o){u=0;break}else u=0}o=f[T>>0]|0;o=(o&1)==0?(o&255)>>>1:t[m>>2]|0;if((t[g>>2]|0)==(n+o|0)){w=0;Ee(8,T|0,o<<1|0,0);d=w;w=0;if(d&1){C=24;break}if(!(f[T>>0]&1))n=10;else n=(t[T>>2]&-2)+-1|0;w=0;Ee(8,T|0,n|0,0);d=w;w=0;if(d&1){C=24;break}n=(f[T>>0]&1)==0?k:t[_>>2]|0;t[g>>2]=n+o}h=e+12|0;o=t[h>>2]|0;d=e+16|0;if((o|0)==(t[d>>2]|0)){w=0;o=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=24;break}}else o=a[o>>0]|0;if($b(o&255,p,n,g,y,b,R,A,E,v)|0)break;o=t[h>>2]|0;if((o|0)==(t[d>>2]|0)){w=0;de(t[(t[e>>2]|0)+40>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=24;break}else continue}else{t[h>>2]=o+1;continue}}if((C|0)==24){e=je()|0;break}P=f[R>>0]|0;if((((P&1)==0?(P&255)>>>1:t[R+4>>2]|0)|0)!=0?(M=t[E>>2]|0,(M-A|0)<160):0){P=t[y>>2]|0;t[E>>2]=M+4;t[M>>2]=P}w=0;n=Ae(26,n|0,t[g>>2]|0,s|0,p|0)|0;o=O;P=w;w=0;if(!(P&1)){P=l;t[P>>2]=n;t[P+4>>2]=o;Go(R,A,t[E>>2]|0,s);if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;n=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;P=w;w=0;if(P&1){C=25;break}if((n|0)==-1){t[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(u){if((t[u+12>>2]|0)==(t[u+16>>2]|0)){w=0;e=de(t[(t[u>>2]|0)+36>>2]|0,u|0)|0;P=w;w=0;if(P&1){C=25;break e}if((e|0)==-1){t[r>>2]=0;C=49;break}}if(!n)C=50}else C=49}while(0);if((C|0)==49?n:0)C=50;if((C|0)==50)t[s>>2]=t[s>>2]|2;P=t[i>>2]|0;xh(T);xh(R);c=S;return P|0}else C=25}else C=25}while(0);if((C|0)==25)e=je()|0;xh(T);xh(R);Qe(e|0);return 0}function qk(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var u=0.0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0;P=c;c=c+240|0;y=P+208|0;h=P+203|0;d=P+202|0;O=P+24|0;I=P+12|0;A=P+8|0;R=P+40|0;C=P+4|0;E=P;S=P+201|0;M=P+200|0;l_(O,n,y,h,d);t[I>>2]=0;t[I+4>>2]=0;t[I+8>>2]=0;if(!(f[I>>0]&1))e=10;else e=(t[I>>2]&-2)+-1|0;w=0;Ee(8,I|0,e|0,0);g=w;w=0;e:do{if(!(g&1)){v=I+8|0;p=I+1|0;n=(f[I>>0]&1)==0?p:t[v>>2]|0;t[A>>2]=n;t[C>>2]=R;t[E>>2]=0;f[S>>0]=1;f[M>>0]=69;g=I+4|0;m=f[h>>0]|0;k=f[d>>0]|0;e=t[i>>2]|0;i:while(1){if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;h=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;_=w;w=0;if(_&1){x=24;break}if((h|0)==-1){t[i>>2]=0;e=0}}}else e=0;d=(e|0)==0;h=t[r>>2]|0;do{if(h){if((t[h+12>>2]|0)!=(t[h+16>>2]|0))if(d)break;else break i;w=0;b=de(t[(t[h>>2]|0)+36>>2]|0,h|0)|0;_=w;w=0;if(_&1){x=24;break i}if((b|0)!=-1)if(d)break;else break i;else{t[r>>2]=0;x=16;break}}else x=16}while(0);if((x|0)==16){x=0;if(d){h=0;break}else h=0}d=f[I>>0]|0;d=(d&1)==0?(d&255)>>>1:t[g>>2]|0;if((t[A>>2]|0)==(n+d|0)){w=0;Ee(8,I|0,d<<1|0,0);_=w;w=0;if(_&1){x=24;break}if(!(f[I>>0]&1))n=10;else n=(t[I>>2]&-2)+-1|0;w=0;Ee(8,I|0,n|0,0);_=w;w=0;if(_&1){x=24;break}n=(f[I>>0]&1)==0?p:t[v>>2]|0;t[A>>2]=n+d}b=e+12|0;d=t[b>>2]|0;_=e+16|0;if((d|0)==(t[_>>2]|0)){w=0;d=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;L=w;w=0;if(L&1){x=24;break}}else d=a[d>>0]|0;if(o_(d&255,S,M,n,A,m,k,O,R,C,E,y)|0)break;h=t[b>>2]|0;if((h|0)==(t[_>>2]|0)){w=0;de(t[(t[e>>2]|0)+40>>2]|0,e|0)|0;L=w;w=0;if(L&1){x=24;break}else continue}else{t[b>>2]=h+1;continue}}if((x|0)==24){e=je()|0;break}L=f[O>>0]|0;if(!((f[S>>0]|0)==0?1:(((L&1)==0?(L&255)>>>1:t[O+4>>2]|0)|0)==0)?(T=t[C>>2]|0,(T-R|0)<160):0){L=t[E>>2]|0;t[C>>2]=T+4;t[T>>2]=L}w=0;u=+ye(1,n|0,t[A>>2]|0,s|0);L=w;w=0;if(!(L&1)){o[l>>2]=u;Go(O,R,t[C>>2]|0,s);if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;n=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;L=w;w=0;if(L&1){x=25;break}if((n|0)==-1){t[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(h){if((t[h+12>>2]|0)==(t[h+16>>2]|0)){w=0;e=de(t[(t[h>>2]|0)+36>>2]|0,h|0)|0;L=w;w=0;if(L&1){x=25;break e}if((e|0)==-1){t[r>>2]=0;x=49;break}}if(!n)x=50}else x=49}while(0);if((x|0)==49?n:0)x=50;if((x|0)==50)t[s>>2]=t[s>>2]|2;L=t[i>>2]|0;xh(I);xh(O);c=P;return L|0}else x=25}else x=25}while(0);if((x|0)==25)e=je()|0;xh(I);xh(O);Qe(e|0);return 0}function $k(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0.0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0;P=c;c=c+240|0;y=P+208|0;h=P+203|0;d=P+202|0;O=P+24|0;I=P+12|0;A=P+8|0;R=P+40|0;C=P+4|0;E=P;S=P+201|0;M=P+200|0;l_(O,n,y,h,d);t[I>>2]=0;t[I+4>>2]=0;t[I+8>>2]=0;if(!(f[I>>0]&1))e=10;else e=(t[I>>2]&-2)+-1|0;w=0;Ee(8,I|0,e|0,0);g=w;w=0;e:do{if(!(g&1)){v=I+8|0;p=I+1|0;n=(f[I>>0]&1)==0?p:t[v>>2]|0;t[A>>2]=n;t[C>>2]=R;t[E>>2]=0;f[S>>0]=1;f[M>>0]=69;g=I+4|0;m=f[h>>0]|0;k=f[d>>0]|0;e=t[i>>2]|0;i:while(1){if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;h=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;_=w;w=0;if(_&1){x=24;break}if((h|0)==-1){t[i>>2]=0;e=0}}}else e=0;d=(e|0)==0;h=t[r>>2]|0;do{if(h){if((t[h+12>>2]|0)!=(t[h+16>>2]|0))if(d)break;else break i;w=0;b=de(t[(t[h>>2]|0)+36>>2]|0,h|0)|0;_=w;w=0;if(_&1){x=24;break i}if((b|0)!=-1)if(d)break;else break i;else{t[r>>2]=0;x=16;break}}else x=16}while(0);if((x|0)==16){x=0;if(d){h=0;break}else h=0}d=f[I>>0]|0;d=(d&1)==0?(d&255)>>>1:t[g>>2]|0;if((t[A>>2]|0)==(n+d|0)){w=0;Ee(8,I|0,d<<1|0,0);_=w;w=0;if(_&1){x=24;break}if(!(f[I>>0]&1))n=10;else n=(t[I>>2]&-2)+-1|0;w=0;Ee(8,I|0,n|0,0);_=w;w=0;if(_&1){x=24;break}n=(f[I>>0]&1)==0?p:t[v>>2]|0;t[A>>2]=n+d}b=e+12|0;d=t[b>>2]|0;_=e+16|0;if((d|0)==(t[_>>2]|0)){w=0;d=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;L=w;w=0;if(L&1){x=24;break}}else d=a[d>>0]|0;if(o_(d&255,S,M,n,A,m,k,O,R,C,E,y)|0)break;h=t[b>>2]|0;if((h|0)==(t[_>>2]|0)){w=0;de(t[(t[e>>2]|0)+40>>2]|0,e|0)|0;L=w;w=0;if(L&1){x=24;break}else continue}else{t[b>>2]=h+1;continue}}if((x|0)==24){e=je()|0;break}L=f[O>>0]|0;if(!((f[S>>0]|0)==0?1:(((L&1)==0?(L&255)>>>1:t[O+4>>2]|0)|0)==0)?(T=t[C>>2]|0,(T-R|0)<160):0){L=t[E>>2]|0;t[C>>2]=T+4;t[T>>2]=L}w=0;o=+ye(2,n|0,t[A>>2]|0,s|0);L=w;w=0;if(!(L&1)){u[l>>3]=o;Go(O,R,t[C>>2]|0,s);if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;n=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;L=w;w=0;if(L&1){x=25;break}if((n|0)==-1){t[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(h){if((t[h+12>>2]|0)==(t[h+16>>2]|0)){w=0;e=de(t[(t[h>>2]|0)+36>>2]|0,h|0)|0;L=w;w=0;if(L&1){x=25;break e}if((e|0)==-1){t[r>>2]=0;x=49;break}}if(!n)x=50}else x=49}while(0);if((x|0)==49?n:0)x=50;if((x|0)==50)t[s>>2]=t[s>>2]|2;L=t[i>>2]|0;xh(I);xh(O);c=P;return L|0}else x=25}else x=25}while(0);if((x|0)==25)e=je()|0;xh(I);xh(O);Qe(e|0);return 0}function Vk(e,i,r,n,s,l){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;var o=0.0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0;P=c;c=c+240|0;y=P+208|0;h=P+203|0;d=P+202|0;O=P+24|0;I=P+12|0;A=P+8|0;R=P+40|0;C=P+4|0;E=P;S=P+201|0;M=P+200|0;l_(O,n,y,h,d);t[I>>2]=0;t[I+4>>2]=0;t[I+8>>2]=0;if(!(f[I>>0]&1))e=10;else e=(t[I>>2]&-2)+-1|0;w=0;Ee(8,I|0,e|0,0);g=w;w=0;e:do{if(!(g&1)){v=I+8|0;p=I+1|0;n=(f[I>>0]&1)==0?p:t[v>>2]|0;t[A>>2]=n;t[C>>2]=R;t[E>>2]=0;f[S>>0]=1;f[M>>0]=69;g=I+4|0;m=f[h>>0]|0;k=f[d>>0]|0;e=t[i>>2]|0;i:while(1){if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;h=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;_=w;w=0;if(_&1){x=24;break}if((h|0)==-1){t[i>>2]=0;e=0}}}else e=0;d=(e|0)==0;h=t[r>>2]|0;do{if(h){if((t[h+12>>2]|0)!=(t[h+16>>2]|0))if(d)break;else break i;w=0;b=de(t[(t[h>>2]|0)+36>>2]|0,h|0)|0;_=w;w=0;if(_&1){x=24;break i}if((b|0)!=-1)if(d)break;else break i;else{t[r>>2]=0;x=16;break}}else x=16}while(0);if((x|0)==16){x=0;if(d){h=0;break}else h=0}d=f[I>>0]|0;d=(d&1)==0?(d&255)>>>1:t[g>>2]|0;if((t[A>>2]|0)==(n+d|0)){w=0;Ee(8,I|0,d<<1|0,0);_=w;w=0;if(_&1){x=24;break}if(!(f[I>>0]&1))n=10;else n=(t[I>>2]&-2)+-1|0;w=0;Ee(8,I|0,n|0,0);_=w;w=0;if(_&1){x=24;break}n=(f[I>>0]&1)==0?p:t[v>>2]|0;t[A>>2]=n+d}b=e+12|0;d=t[b>>2]|0;_=e+16|0;if((d|0)==(t[_>>2]|0)){w=0;d=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;L=w;w=0;if(L&1){x=24;break}}else d=a[d>>0]|0;if(o_(d&255,S,M,n,A,m,k,O,R,C,E,y)|0)break;h=t[b>>2]|0;if((h|0)==(t[_>>2]|0)){w=0;de(t[(t[e>>2]|0)+40>>2]|0,e|0)|0;L=w;w=0;if(L&1){x=24;break}else continue}else{t[b>>2]=h+1;continue}}if((x|0)==24){e=je()|0;break}L=f[O>>0]|0;if(!((f[S>>0]|0)==0?1:(((L&1)==0?(L&255)>>>1:t[O+4>>2]|0)|0)==0)?(T=t[C>>2]|0,(T-R|0)<160):0){L=t[E>>2]|0;t[C>>2]=T+4;t[T>>2]=L}w=0;o=+ye(3,n|0,t[A>>2]|0,s|0);L=w;w=0;if(!(L&1)){u[l>>3]=o;Go(O,R,t[C>>2]|0,s);if(e){if((t[e+12>>2]|0)==(t[e+16>>2]|0)){w=0;n=de(t[(t[e>>2]|0)+36>>2]|0,e|0)|0;L=w;w=0;if(L&1){x=25;break}if((n|0)==-1){t[i>>2]=0;e=0}}}else e=0;n=(e|0)==0;do{if(h){if((t[h+12>>2]|0)==(t[h+16>>2]|0)){w=0;e=de(t[(t[h>>2]|0)+36>>2]|0,h|0)|0;L=w;w=0;if(L&1){x=25;break e}if((e|0)==-1){t[r>>2]=0;x=49;break}}if(!n)x=50}else x=49}while(0);if((x|0)==49?n:0)x=50;if((x|0)==50)t[s>>2]=t[s>>2]|2;L=t[i>>2]|0;xh(I);xh(O);c=P;return L|0}else x=25}else x=25}while(0);if((x|0)==25)e=je()|0;xh(I);xh(O);Qe(e|0);return 0}function Xk(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0;n=c;c=c+16|0;a=n;t[a>>2]=f;f=Kg(i)|0;i=Ny(e,r,a)|0;if((f|0)!=0?(w=0,de(75,f|0)|0,a=w,w=0,a&1):0){a=je(0)|0;Ni(a)}c=n;return i|0}function Gk(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;A=c;c=c+112|0;u=A;d=(n-r|0)/12|0;do{if(d>>>0>100){u=Pc(d)|0;if((u|0)==0?(w=0,Se(6),M=w,w=0,M&1):0){o=0;_=6;break}o=u;_=11}else{o=0;_=11}}while(0);e:do{if((_|0)==11){if((r|0)==(n|0))h=0;else{k=r;b=0;_=u;while(1){h=f[k>>0]|0;if(!(h&1))h=(h&255)>>>1;else h=t[k+4>>2]|0;if(!h){f[_>>0]=2;h=b+1|0;d=d+-1|0}else{f[_>>0]=1;h=b}k=k+12|0;if((k|0)==(n|0))break;else{b=h;_=_+1|0}}}y=(r|0)==(n|0);M=(r|0)==(n|0);g=0;m=d;i:while(1){d=t[e>>2]|0;do{if(d){b=t[d+12>>2]|0;if((b|0)==(t[d+16>>2]|0)){w=0;d=de(t[(t[d>>2]|0)+36>>2]|0,d|0)|0;p=w;w=0;if(p&1){_=5;break i}}else d=t[b>>2]|0;if((d|0)==-1){t[e>>2]=0;k=1;break}else{k=(t[e>>2]|0)==0;break}}else k=1}while(0);b=t[i>>2]|0;if(b){d=t[b+12>>2]|0;if((d|0)==(t[b+16>>2]|0)){w=0;d=de(t[(t[b>>2]|0)+36>>2]|0,b|0)|0;p=w;w=0;if(p&1){_=5;break}}else d=t[d>>2]|0;if((d|0)==-1){t[i>>2]=0;b=0;_=1}else _=0}else{b=0;_=1}d=t[e>>2]|0;if(!((m|0)!=0&(k^_))){_=66;break}b=t[d+12>>2]|0;if((b|0)==(t[d+16>>2]|0)){w=0;d=de(t[(t[d>>2]|0)+36>>2]|0,d|0)|0;p=w;w=0;if(p&1){_=5;break}}else d=t[b>>2]|0;if(!l){w=0;d=pe(t[(t[a>>2]|0)+28>>2]|0,a|0,d|0)|0;p=w;w=0;if(p&1){_=5;break}}p=g+1|0;if(y){d=0;k=m}else{k=0;v=r;_=m;m=u;while(1){do{if((f[m>>0]|0)==1){if(!(f[v>>0]&1))b=v+4|0;else b=t[v+8>>2]|0;b=t[b+(g<<2)>>2]|0;if(!l){w=0;b=pe(t[(t[a>>2]|0)+28>>2]|0,a|0,b|0)|0;E=w;w=0;if(E&1){_=4;break i}}if((d|0)!=(b|0)){f[m>>0]=0;b=k;_=_+-1|0;break}b=f[v>>0]|0;if(!(b&1))b=(b&255)>>>1;else b=t[v+4>>2]|0;if((b|0)==(p|0)){f[m>>0]=2;b=1;h=h+1|0;_=_+-1|0}else b=1}else b=k}while(0);v=v+12|0;if((v|0)==(n|0)){d=b;k=_;break}else{k=b;m=m+1|0}}}if(!d){g=p;m=k;continue}d=t[e>>2]|0;b=d+12|0;_=t[b>>2]|0;if((_|0)==(t[d+16>>2]|0)){w=0;de(t[(t[d>>2]|0)+40>>2]|0,d|0)|0;E=w;w=0;if(E&1){_=5;break}}else t[b>>2]=_+4;if((h+k|0)>>>0<2|M){g=p;m=k;continue}else{d=r;_=u}while(1){if((f[_>>0]|0)==2){b=f[d>>0]|0;if(!(b&1))b=(b&255)>>>1;else b=t[d+4>>2]|0;if((b|0)!=(p|0)){f[_>>0]=0;h=h+-1|0}}d=d+12|0;if((d|0)==(n|0)){g=p;m=k;continue i}else _=_+1|0}}if((_|0)==4){r=je()|0;break}else if((_|0)==5){r=je()|0;break}else if((_|0)==66){do{if(d){h=t[d+12>>2]|0;if((h|0)==(t[d+16>>2]|0)){w=0;h=de(t[(t[d>>2]|0)+36>>2]|0,d|0)|0;E=w;w=0;if(E&1){_=6;break e}}else h=t[h>>2]|0;if((h|0)==-1){t[e>>2]=0;d=1;break}else{d=(t[e>>2]|0)==0;break}}else d=1}while(0);do{if(b){h=t[b+12>>2]|0;if((h|0)==(t[b+16>>2]|0)){w=0;h=de(t[(t[b>>2]|0)+36>>2]|0,b|0)|0;E=w;w=0;if(E&1){_=6;break e}}else h=t[h>>2]|0;if((h|0)!=-1)if(d)break;else{_=81;break}else{t[i>>2]=0;_=79;break}}else _=79}while(0);if((_|0)==79?d:0)_=81;if((_|0)==81)t[s>>2]=t[s>>2]|2;i:do{if((r|0)==(n|0))_=85;else while(1){if((f[u>>0]|0)==2)break i;r=r+12|0;if((r|0)==(n|0)){_=85;break}else u=u+1|0}}while(0);if((_|0)==85){t[s>>2]=t[s>>2]|4;r=n}if(o)Ic(o);c=A;return r|0}}}while(0);if((_|0)==6)r=je()|0;if(o)Ic(o);Qe(r|0);return 0}function Kk(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;E=c;c=c+320|0;m=E+208|0;l=E+200|0;T=E+24|0;S=E+12|0;p=E+8|0;M=E+40|0;A=E+4|0;g=E;v=gk(n)|0;u_(T,n,m,l);t[S>>2]=0;t[S+4>>2]=0;t[S+8>>2]=0;if(!(f[S>>0]&1))e=10;else e=(t[S>>2]&-2)+-1|0;w=0;Ee(8,S|0,e|0,0);k=w;w=0;e:do{if(!(k&1)){b=S+8|0;_=S+1|0;e=(f[S>>0]&1)==0?_:t[b>>2]|0;t[p>>2]=e;t[A>>2]=M;t[g>>2]=0;k=S+4|0;d=t[l>>2]|0;l=t[i>>2]|0;i:while(1){if(l){n=t[l+12>>2]|0;if((n|0)==(t[l+16>>2]|0)){w=0;n=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;h=w;w=0;if(h&1){R=25;break}}else n=t[n>>2]|0;if((n|0)==-1){t[i>>2]=0;n=0;o=1}else{n=l;o=0}}else{n=0;o=1}u=t[r>>2]|0;do{if(u){l=t[u+12>>2]|0;if((l|0)==(t[u+16>>2]|0)){w=0;l=de(t[(t[u>>2]|0)+36>>2]|0,u|0)|0;h=w;w=0;if(h&1){R=25;break i}}else l=t[l>>2]|0;if((l|0)!=-1)if(o)break;else{l=u;break i}else{t[r>>2]=0;R=17;break}}else R=17}while(0);if((R|0)==17){R=0;if(o){l=0;break}else u=0}l=f[S>>0]|0;l=(l&1)==0?(l&255)>>>1:t[k>>2]|0;if((t[p>>2]|0)==(e+l|0)){w=0;Ee(8,S|0,l<<1|0,0);h=w;w=0;if(h&1){R=25;break}if(!(f[S>>0]&1))e=10;else e=(t[S>>2]&-2)+-1|0;w=0;Ee(8,S|0,e|0,0);h=w;w=0;if(h&1){R=25;break}e=(f[S>>0]&1)==0?_:t[b>>2]|0;t[p>>2]=e+l}o=n+12|0;l=t[o>>2]|0;h=n+16|0;if((l|0)==(t[h>>2]|0)){w=0;l=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;C=w;w=0;if(C&1){R=25;break}}else l=t[l>>2]|0;if(a_(l,v,e,p,g,d,T,M,A,m)|0){l=u;break}l=t[o>>2]|0;if((l|0)==(t[h>>2]|0)){w=0;de(t[(t[n>>2]|0)+40>>2]|0,n|0)|0;C=w;w=0;if(C&1){R=25;break}else{l=n;continue}}else{t[o>>2]=l+4;l=n;continue}}if((R|0)==25){e=je()|0;break}C=f[T>>0]|0;if((((C&1)==0?(C&255)>>>1:t[T+4>>2]|0)|0)!=0?(y=t[A>>2]|0,(y-M|0)<160):0){C=t[g>>2]|0;t[A>>2]=y+4;t[y>>2]=C}w=0;e=Ae(21,e|0,t[p>>2]|0,a|0,v|0)|0;C=w;w=0;if(!(C&1)){t[s>>2]=e;Go(T,M,t[A>>2]|0,a);if(n){e=t[n+12>>2]|0;if((e|0)==(t[n+16>>2]|0)){w=0;e=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;C=w;w=0;if(C&1){R=26;break}}else e=t[e>>2]|0;if((e|0)==-1){t[i>>2]=0;n=1}else n=0}else n=1;do{if(l){e=t[l+12>>2]|0;if((e|0)==(t[l+16>>2]|0)){w=0;e=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;C=w;w=0;if(C&1){R=26;break e}}else e=t[e>>2]|0;if((e|0)!=-1)if(n)break;else{R=53;break}else{t[r>>2]=0;R=51;break}}else R=51}while(0);if((R|0)==51?n:0)R=53;if((R|0)==53)t[a>>2]=t[a>>2]|2;C=t[i>>2]|0;xh(S);xh(T);c=E;return C|0}else R=26}else R=26}while(0);if((R|0)==26)e=je()|0;xh(S);xh(T);Qe(e|0);return 0}function Wk(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;E=c;c=c+320|0;m=E+208|0;l=E+200|0;T=E+24|0;S=E+12|0;p=E+8|0;M=E+40|0;A=E+4|0;g=E;v=gk(n)|0;u_(T,n,m,l);t[S>>2]=0;t[S+4>>2]=0;t[S+8>>2]=0;if(!(f[S>>0]&1))e=10;else e=(t[S>>2]&-2)+-1|0;w=0;Ee(8,S|0,e|0,0);k=w;w=0;e:do{if(!(k&1)){b=S+8|0;_=S+1|0;e=(f[S>>0]&1)==0?_:t[b>>2]|0;t[p>>2]=e;t[A>>2]=M;t[g>>2]=0;k=S+4|0;d=t[l>>2]|0;l=t[i>>2]|0;i:while(1){if(l){n=t[l+12>>2]|0;if((n|0)==(t[l+16>>2]|0)){w=0;n=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;h=w;w=0;if(h&1){R=25;break}}else n=t[n>>2]|0;if((n|0)==-1){t[i>>2]=0;l=0;u=1}else u=0}else{l=0;u=1}o=t[r>>2]|0;do{if(o){n=t[o+12>>2]|0;if((n|0)==(t[o+16>>2]|0)){w=0;n=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;h=w;w=0;if(h&1){R=25;break i}}else n=t[n>>2]|0;if((n|0)!=-1)if(u)break;else break i;else{t[r>>2]=0;R=17;break}}else R=17}while(0);if((R|0)==17){R=0;if(u){o=0;break}else o=0}n=f[S>>0]|0;n=(n&1)==0?(n&255)>>>1:t[k>>2]|0;if((t[p>>2]|0)==(e+n|0)){w=0;Ee(8,S|0,n<<1|0,0);h=w;w=0;if(h&1){R=25;break}if(!(f[S>>0]&1))e=10;else e=(t[S>>2]&-2)+-1|0;w=0;Ee(8,S|0,e|0,0);h=w;w=0;if(h&1){R=25;break}e=(f[S>>0]&1)==0?_:t[b>>2]|0;t[p>>2]=e+n}u=l+12|0;n=t[u>>2]|0;h=l+16|0;if((n|0)==(t[h>>2]|0)){w=0;n=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;C=w;w=0;if(C&1){R=25;break}}else n=t[n>>2]|0;if(a_(n,v,e,p,g,d,T,M,A,m)|0)break;n=t[u>>2]|0;if((n|0)==(t[h>>2]|0)){w=0;de(t[(t[l>>2]|0)+40>>2]|0,l|0)|0;C=w;w=0;if(C&1){R=25;break}else continue}else{t[u>>2]=n+4;continue}}if((R|0)==25){e=je()|0;break}C=f[T>>0]|0;if((((C&1)==0?(C&255)>>>1:t[T+4>>2]|0)|0)!=0?(y=t[A>>2]|0,(y-M|0)<160):0){C=t[g>>2]|0;t[A>>2]=y+4;t[y>>2]=C}w=0;e=Ae(22,e|0,t[p>>2]|0,a|0,v|0)|0;n=O;C=w;w=0;if(!(C&1)){C=s;t[C>>2]=e;t[C+4>>2]=n;Go(T,M,t[A>>2]|0,a);if(l){e=t[l+12>>2]|0;if((e|0)==(t[l+16>>2]|0)){w=0;e=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;C=w;w=0;if(C&1){R=26;break}}else e=t[e>>2]|0;if((e|0)==-1){t[i>>2]=0;n=1}else n=0}else n=1;do{if(o){e=t[o+12>>2]|0;if((e|0)==(t[o+16>>2]|0)){w=0;e=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;C=w;w=0;if(C&1){R=26;break e}}else e=t[e>>2]|0;if((e|0)!=-1)if(n)break;else{R=53;break}else{t[r>>2]=0;R=51;break}}else R=51}while(0);if((R|0)==51?n:0)R=53;if((R|0)==53)t[a>>2]=t[a>>2]|2;C=t[i>>2]|0;xh(S);xh(T);c=E;return C|0}else R=26}else R=26}while(0);if((R|0)==26)e=je()|0;xh(S);xh(T);Qe(e|0);return 0}function Zk(e,i,r,a,s,l){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0;S=c;c=c+320|0;v=S+208|0;o=S+200|0;R=S+24|0;T=S+12|0;g=S+8|0;A=S+40|0;E=S+4|0;y=S;p=gk(a)|0;u_(R,a,v,o);t[T>>2]=0;t[T+4>>2]=0;t[T+8>>2]=0;if(!(f[T>>0]&1))e=10;else e=(t[T>>2]&-2)+-1|0;w=0;Ee(8,T|0,e|0,0);m=w;w=0;e:do{if(!(m&1)){_=T+8|0;k=T+1|0;e=(f[T>>0]&1)==0?k:t[_>>2]|0;t[g>>2]=e;t[E>>2]=A;t[y>>2]=0;m=T+4|0;b=t[o>>2]|0;o=t[i>>2]|0;i:while(1){if(o){a=t[o+12>>2]|0;if((a|0)==(t[o+16>>2]|0)){w=0;a=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;d=w;w=0;if(d&1){C=25;break}}else a=t[a>>2]|0;if((a|0)==-1){t[i>>2]=0;a=0;u=1}else{a=o;u=0}}else{a=0;u=1}h=t[r>>2]|0;do{if(h){o=t[h+12>>2]|0;if((o|0)==(t[h+16>>2]|0)){w=0;o=de(t[(t[h>>2]|0)+36>>2]|0,h|0)|0;d=w;w=0;if(d&1){C=25;break i}}else o=t[o>>2]|0;if((o|0)!=-1)if(u)break;else{o=h;break i}else{t[r>>2]=0;C=17;break}}else C=17}while(0);if((C|0)==17){C=0;if(u){o=0;break}else h=0}o=f[T>>0]|0;o=(o&1)==0?(o&255)>>>1:t[m>>2]|0;if((t[g>>2]|0)==(e+o|0)){w=0;Ee(8,T|0,o<<1|0,0);d=w;w=0;if(d&1){C=25;break}if(!(f[T>>0]&1))e=10;else e=(t[T>>2]&-2)+-1|0;w=0;Ee(8,T|0,e|0,0);d=w;w=0;if(d&1){C=25;break}e=(f[T>>0]&1)==0?k:t[_>>2]|0;t[g>>2]=e+o}u=a+12|0;o=t[u>>2]|0;d=a+16|0;if((o|0)==(t[d>>2]|0)){w=0;o=de(t[(t[a>>2]|0)+36>>2]|0,a|0)|0;P=w;w=0;if(P&1){C=25;break}}else o=t[o>>2]|0;if(a_(o,p,e,g,y,b,R,A,E,v)|0){o=h;break}o=t[u>>2]|0;if((o|0)==(t[d>>2]|0)){w=0;de(t[(t[a>>2]|0)+40>>2]|0,a|0)|0;P=w;w=0;if(P&1){C=25;break}else{o=a;continue}}else{t[u>>2]=o+4;o=a;continue}}if((C|0)==25){e=je()|0;break}P=f[R>>0]|0;if((((P&1)==0?(P&255)>>>1:t[R+4>>2]|0)|0)!=0?(M=t[E>>2]|0,(M-A|0)<160):0){P=t[y>>2]|0;t[E>>2]=M+4;t[M>>2]=P}w=0;e=Ae(23,e|0,t[g>>2]|0,s|0,p|0)|0;P=w;w=0;if(!(P&1)){n[l>>1]=e;Go(R,A,t[E>>2]|0,s);if(a){e=t[a+12>>2]|0;if((e|0)==(t[a+16>>2]|0)){w=0;e=de(t[(t[a>>2]|0)+36>>2]|0,a|0)|0;P=w;w=0;if(P&1){C=26;break}}else e=t[e>>2]|0;if((e|0)==-1){t[i>>2]=0;a=1}else a=0}else a=1;do{if(o){e=t[o+12>>2]|0;if((e|0)==(t[o+16>>2]|0)){w=0;e=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;P=w;w=0;if(P&1){C=26;break e}}else e=t[e>>2]|0;if((e|0)!=-1)if(a)break;else{C=53;break}else{t[r>>2]=0;C=51;break}}else C=51}while(0);if((C|0)==51?a:0)C=53;if((C|0)==53)t[s>>2]=t[s>>2]|2;P=t[i>>2]|0;xh(T);xh(R);c=S;return P|0}else C=26}else C=26}while(0);if((C|0)==26)e=je()|0;xh(T);xh(R);Qe(e|0);return 0}function Jk(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;E=c;c=c+320|0;m=E+208|0;l=E+200|0;T=E+24|0;S=E+12|0;p=E+8|0;M=E+40|0;A=E+4|0;g=E;v=gk(n)|0;u_(T,n,m,l);t[S>>2]=0;t[S+4>>2]=0;t[S+8>>2]=0;if(!(f[S>>0]&1))e=10;else e=(t[S>>2]&-2)+-1|0;w=0;Ee(8,S|0,e|0,0);k=w;w=0;e:do{if(!(k&1)){b=S+8|0;_=S+1|0;e=(f[S>>0]&1)==0?_:t[b>>2]|0;t[p>>2]=e;t[A>>2]=M;t[g>>2]=0;k=S+4|0;d=t[l>>2]|0;l=t[i>>2]|0;i:while(1){if(l){n=t[l+12>>2]|0;if((n|0)==(t[l+16>>2]|0)){w=0;n=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;h=w;w=0;if(h&1){R=25;break}}else n=t[n>>2]|0;if((n|0)==-1){t[i>>2]=0;n=0;o=1}else{n=l;o=0}}else{n=0;o=1}u=t[r>>2]|0;do{if(u){l=t[u+12>>2]|0;if((l|0)==(t[u+16>>2]|0)){w=0;l=de(t[(t[u>>2]|0)+36>>2]|0,u|0)|0;h=w;w=0;if(h&1){R=25;break i}}else l=t[l>>2]|0;if((l|0)!=-1)if(o)break;else{l=u;break i}else{t[r>>2]=0;R=17;break}}else R=17}while(0);if((R|0)==17){R=0;if(o){l=0;break}else u=0}l=f[S>>0]|0;l=(l&1)==0?(l&255)>>>1:t[k>>2]|0;if((t[p>>2]|0)==(e+l|0)){w=0;Ee(8,S|0,l<<1|0,0);h=w;w=0;if(h&1){R=25;break}if(!(f[S>>0]&1))e=10;else e=(t[S>>2]&-2)+-1|0;w=0;Ee(8,S|0,e|0,0);h=w;w=0;if(h&1){R=25;break}e=(f[S>>0]&1)==0?_:t[b>>2]|0;t[p>>2]=e+l}o=n+12|0;l=t[o>>2]|0;h=n+16|0;if((l|0)==(t[h>>2]|0)){w=0;l=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;C=w;w=0;if(C&1){R=25;break}}else l=t[l>>2]|0;if(a_(l,v,e,p,g,d,T,M,A,m)|0){l=u;break}l=t[o>>2]|0;if((l|0)==(t[h>>2]|0)){w=0;de(t[(t[n>>2]|0)+40>>2]|0,n|0)|0;C=w;w=0;if(C&1){R=25;break}else{l=n;continue}}else{t[o>>2]=l+4;l=n;continue}}if((R|0)==25){e=je()|0;break}C=f[T>>0]|0;if((((C&1)==0?(C&255)>>>1:t[T+4>>2]|0)|0)!=0?(y=t[A>>2]|0,(y-M|0)<160):0){C=t[g>>2]|0;t[A>>2]=y+4;t[y>>2]=C}w=0;e=Ae(24,e|0,t[p>>2]|0,a|0,v|0)|0;C=w;w=0;if(!(C&1)){t[s>>2]=e;Go(T,M,t[A>>2]|0,a);if(n){e=t[n+12>>2]|0;if((e|0)==(t[n+16>>2]|0)){w=0;e=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;C=w;w=0;if(C&1){R=26;break}}else e=t[e>>2]|0;if((e|0)==-1){t[i>>2]=0;n=1}else n=0}else n=1;do{if(l){e=t[l+12>>2]|0;if((e|0)==(t[l+16>>2]|0)){w=0;e=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;C=w;w=0;if(C&1){R=26;break e}}else e=t[e>>2]|0;if((e|0)!=-1)if(n)break;else{R=53;break}else{t[r>>2]=0;R=51;break}}else R=51}while(0);if((R|0)==51?n:0)R=53;if((R|0)==53)t[a>>2]=t[a>>2]|2;C=t[i>>2]|0;xh(S);xh(T);c=E;return C|0}else R=26}else R=26}while(0);if((R|0)==26)e=je()|0;xh(S);xh(T);Qe(e|0);return 0}function Qk(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;E=c;c=c+320|0;m=E+208|0;l=E+200|0;T=E+24|0;S=E+12|0;p=E+8|0;M=E+40|0;A=E+4|0;g=E;v=gk(n)|0;u_(T,n,m,l);t[S>>2]=0;t[S+4>>2]=0;t[S+8>>2]=0;if(!(f[S>>0]&1))e=10;else e=(t[S>>2]&-2)+-1|0;w=0;Ee(8,S|0,e|0,0);k=w;w=0;e:do{if(!(k&1)){b=S+8|0;_=S+1|0;e=(f[S>>0]&1)==0?_:t[b>>2]|0;t[p>>2]=e;t[A>>2]=M;t[g>>2]=0;k=S+4|0;d=t[l>>2]|0;l=t[i>>2]|0;i:while(1){if(l){n=t[l+12>>2]|0;if((n|0)==(t[l+16>>2]|0)){w=0;n=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;h=w;w=0;if(h&1){R=25;break}}else n=t[n>>2]|0;if((n|0)==-1){t[i>>2]=0;n=0;o=1}else{n=l;o=0}}else{n=0;o=1}u=t[r>>2]|0;do{if(u){l=t[u+12>>2]|0;if((l|0)==(t[u+16>>2]|0)){w=0;l=de(t[(t[u>>2]|0)+36>>2]|0,u|0)|0;h=w;w=0;if(h&1){R=25;break i}}else l=t[l>>2]|0;if((l|0)!=-1)if(o)break;else{l=u;break i}else{t[r>>2]=0;R=17;break}}else R=17}while(0);if((R|0)==17){R=0;if(o){l=0;break}else u=0}l=f[S>>0]|0;l=(l&1)==0?(l&255)>>>1:t[k>>2]|0;if((t[p>>2]|0)==(e+l|0)){w=0;Ee(8,S|0,l<<1|0,0);h=w;w=0;if(h&1){R=25;break}if(!(f[S>>0]&1))e=10;else e=(t[S>>2]&-2)+-1|0;w=0;Ee(8,S|0,e|0,0);h=w;w=0;if(h&1){R=25;break}e=(f[S>>0]&1)==0?_:t[b>>2]|0;t[p>>2]=e+l}o=n+12|0;l=t[o>>2]|0;h=n+16|0;if((l|0)==(t[h>>2]|0)){w=0;l=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;C=w;w=0;if(C&1){R=25;break}}else l=t[l>>2]|0;if(a_(l,v,e,p,g,d,T,M,A,m)|0){l=u;break}l=t[o>>2]|0;if((l|0)==(t[h>>2]|0)){w=0;de(t[(t[n>>2]|0)+40>>2]|0,n|0)|0;C=w;w=0;if(C&1){R=25;break}else{l=n;continue}}else{t[o>>2]=l+4;l=n;continue}}if((R|0)==25){e=je()|0;break}C=f[T>>0]|0;if((((C&1)==0?(C&255)>>>1:t[T+4>>2]|0)|0)!=0?(y=t[A>>2]|0,(y-M|0)<160):0){C=t[g>>2]|0;t[A>>2]=y+4;t[y>>2]=C}w=0;e=Ae(25,e|0,t[p>>2]|0,a|0,v|0)|0;C=w;w=0;if(!(C&1)){t[s>>2]=e;Go(T,M,t[A>>2]|0,a);if(n){e=t[n+12>>2]|0;if((e|0)==(t[n+16>>2]|0)){w=0;e=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;C=w;w=0;if(C&1){R=26;break}}else e=t[e>>2]|0;if((e|0)==-1){t[i>>2]=0;n=1}else n=0}else n=1;do{if(l){e=t[l+12>>2]|0;if((e|0)==(t[l+16>>2]|0)){w=0;e=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;C=w;w=0;if(C&1){R=26;break e}}else e=t[e>>2]|0;if((e|0)!=-1)if(n)break;else{R=53;break}else{t[r>>2]=0;R=51;break}}else R=51}while(0);if((R|0)==51?n:0)R=53;if((R|0)==53)t[a>>2]=t[a>>2]|2;C=t[i>>2]|0;xh(S);xh(T);c=E;return C|0}else R=26}else R=26}while(0);if((R|0)==26)e=je()|0;xh(S);xh(T);Qe(e|0);return 0}function ew(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;E=c;c=c+320|0;m=E+208|0;l=E+200|0;T=E+24|0;S=E+12|0;p=E+8|0;M=E+40|0;A=E+4|0;g=E;v=gk(n)|0;u_(T,n,m,l);t[S>>2]=0;t[S+4>>2]=0;t[S+8>>2]=0;if(!(f[S>>0]&1))e=10;else e=(t[S>>2]&-2)+-1|0;w=0;Ee(8,S|0,e|0,0);k=w;w=0;e:do{if(!(k&1)){b=S+8|0;_=S+1|0;e=(f[S>>0]&1)==0?_:t[b>>2]|0;t[p>>2]=e;t[A>>2]=M;t[g>>2]=0;k=S+4|0;d=t[l>>2]|0;l=t[i>>2]|0;i:while(1){if(l){n=t[l+12>>2]|0;if((n|0)==(t[l+16>>2]|0)){w=0;n=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;h=w;w=0;if(h&1){R=25;break}}else n=t[n>>2]|0;if((n|0)==-1){t[i>>2]=0;l=0;u=1}else u=0}else{l=0;u=1}o=t[r>>2]|0;do{if(o){n=t[o+12>>2]|0;if((n|0)==(t[o+16>>2]|0)){w=0;n=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;h=w;w=0;if(h&1){R=25;break i}}else n=t[n>>2]|0;if((n|0)!=-1)if(u)break;else break i;else{t[r>>2]=0;R=17;break}}else R=17}while(0);if((R|0)==17){R=0;if(u){o=0;break}else o=0}n=f[S>>0]|0;n=(n&1)==0?(n&255)>>>1:t[k>>2]|0;if((t[p>>2]|0)==(e+n|0)){w=0;Ee(8,S|0,n<<1|0,0);h=w;w=0;if(h&1){R=25;break}if(!(f[S>>0]&1))e=10;else e=(t[S>>2]&-2)+-1|0;w=0;Ee(8,S|0,e|0,0);h=w;w=0;if(h&1){R=25;break}e=(f[S>>0]&1)==0?_:t[b>>2]|0;t[p>>2]=e+n}u=l+12|0;n=t[u>>2]|0;h=l+16|0;if((n|0)==(t[h>>2]|0)){w=0;n=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;C=w;w=0;if(C&1){R=25;break}}else n=t[n>>2]|0;if(a_(n,v,e,p,g,d,T,M,A,m)|0)break;n=t[u>>2]|0;if((n|0)==(t[h>>2]|0)){w=0;de(t[(t[l>>2]|0)+40>>2]|0,l|0)|0;C=w;w=0;if(C&1){R=25;break}else continue}else{t[u>>2]=n+4;continue}}if((R|0)==25){e=je()|0;break}C=f[T>>0]|0;if((((C&1)==0?(C&255)>>>1:t[T+4>>2]|0)|0)!=0?(y=t[A>>2]|0,(y-M|0)<160):0){C=t[g>>2]|0;t[A>>2]=y+4;t[y>>2]=C}w=0;e=Ae(26,e|0,t[p>>2]|0,a|0,v|0)|0;n=O;C=w;w=0;if(!(C&1)){C=s;t[C>>2]=e;t[C+4>>2]=n;Go(T,M,t[A>>2]|0,a);if(l){e=t[l+12>>2]|0;if((e|0)==(t[l+16>>2]|0)){w=0;e=de(t[(t[l>>2]|0)+36>>2]|0,l|0)|0;C=w;w=0;if(C&1){R=26;break}}else e=t[e>>2]|0;if((e|0)==-1){t[i>>2]=0;n=1}else n=0}else n=1;do{if(o){e=t[o+12>>2]|0;if((e|0)==(t[o+16>>2]|0)){w=0;e=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;C=w;w=0;if(C&1){R=26;break e}}else e=t[e>>2]|0;if((e|0)!=-1)if(n)break;else{R=53;break}else{t[r>>2]=0;R=51;break}}else R=51}while(0);if((R|0)==51?n:0)R=53;if((R|0)==53)t[a>>2]=t[a>>2]|2;C=t[i>>2]|0;xh(S);xh(T);c=E;return C|0}else R=26}else R=26}while(0);if((R|0)==26)e=je()|0;xh(S);xh(T);Qe(e|0);return 0}function iw(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0.0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0;C=c;c=c+352|0;g=C+208|0;u=C+40|0;h=C+36|0;I=C+24|0;P=C+12|0;M=C+8|0;T=C+48|0;R=C+4|0;A=C;E=C+337|0;y=C+336|0;c_(I,n,g,u,h);t[P>>2]=0;t[P+4>>2]=0;t[P+8>>2]=0;if(!(f[P>>0]&1))e=10;else e=(t[P>>2]&-2)+-1|0;w=0;Ee(8,P|0,e|0,0);p=w;w=0;e:do{if(!(p&1)){m=P+8|0;v=P+1|0;e=(f[P>>0]&1)==0?v:t[m>>2]|0;t[M>>2]=e;t[R>>2]=T;t[A>>2]=0;f[E>>0]=1;f[y>>0]=69;p=P+4|0;k=t[u>>2]|0;_=t[h>>2]|0;n=t[i>>2]|0;i:while(1){if(n){u=t[n+12>>2]|0;if((u|0)==(t[n+16>>2]|0)){w=0;u=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;b=w;w=0;if(b&1){O=25;break}}else u=t[u>>2]|0;if((u|0)==-1){t[i>>2]=0;n=0;d=1}else d=0}else{n=0;d=1}u=t[r>>2]|0;do{if(u){h=t[u+12>>2]|0;if((h|0)==(t[u+16>>2]|0)){w=0;h=de(t[(t[u>>2]|0)+36>>2]|0,u|0)|0;b=w;w=0;if(b&1){O=25;break i}}else h=t[h>>2]|0;if((h|0)!=-1)if(d)break;else break i;else{t[r>>2]=0;O=17;break}}else O=17}while(0);if((O|0)==17){O=0;if(d){u=0;break}else u=0}h=f[P>>0]|0;h=(h&1)==0?(h&255)>>>1:t[p>>2]|0;if((t[M>>2]|0)==(e+h|0)){w=0;Ee(8,P|0,h<<1|0,0);b=w;w=0;if(b&1){O=25;break}if(!(f[P>>0]&1))e=10;else e=(t[P>>2]&-2)+-1|0;w=0;Ee(8,P|0,e|0,0);b=w;w=0;if(b&1){O=25;break}e=(f[P>>0]&1)==0?v:t[m>>2]|0;t[M>>2]=e+h}d=n+12|0;h=t[d>>2]|0;b=n+16|0;if((h|0)==(t[b>>2]|0)){w=0;h=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;x=w;w=0;if(x&1){O=25;break}}else h=t[h>>2]|0;if(h_(h,E,y,e,M,k,_,I,T,R,A,g)|0)break;u=t[d>>2]|0;if((u|0)==(t[b>>2]|0)){w=0;de(t[(t[n>>2]|0)+40>>2]|0,n|0)|0;x=w;w=0;if(x&1){O=25;break}else continue}else{t[d>>2]=u+4;continue}}if((O|0)==25){e=je()|0;break}x=f[I>>0]|0;if(!((f[E>>0]|0)==0?1:(((x&1)==0?(x&255)>>>1:t[I+4>>2]|0)|0)==0)?(S=t[R>>2]|0,(S-T|0)<160):0){x=t[A>>2]|0;t[R>>2]=S+4;t[S>>2]=x}w=0;l=+ye(1,e|0,t[M>>2]|0,a|0);x=w;w=0;if(!(x&1)){o[s>>2]=l;Go(I,T,t[R>>2]|0,a);if(n){e=t[n+12>>2]|0;if((e|0)==(t[n+16>>2]|0)){w=0;e=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;x=w;w=0;if(x&1){O=26;break}}else e=t[e>>2]|0;if((e|0)==-1){t[i>>2]=0;n=1}else n=0}else n=1;do{if(u){e=t[u+12>>2]|0;if((e|0)==(t[u+16>>2]|0)){w=0;e=de(t[(t[u>>2]|0)+36>>2]|0,u|0)|0;x=w;w=0;if(x&1){O=26;break e}}else e=t[e>>2]|0;if((e|0)!=-1)if(n)break;else{O=53;break}else{t[r>>2]=0;O=51;break}}else O=51}while(0);if((O|0)==51?n:0)O=53;if((O|0)==53)t[a>>2]=t[a>>2]|2;x=t[i>>2]|0;xh(P);xh(I);c=C;return x|0}else O=26}else O=26}while(0);if((O|0)==26)e=je()|0;xh(P);xh(I);Qe(e|0);return 0}function rw(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0.0,o=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0;C=c;c=c+352|0;g=C+208|0;o=C+40|0;h=C+36|0;I=C+24|0;P=C+12|0;M=C+8|0;T=C+48|0;R=C+4|0;A=C;E=C+337|0;y=C+336|0;c_(I,n,g,o,h);t[P>>2]=0;t[P+4>>2]=0;t[P+8>>2]=0;if(!(f[P>>0]&1))e=10;else e=(t[P>>2]&-2)+-1|0;w=0;Ee(8,P|0,e|0,0);p=w;w=0;e:do{if(!(p&1)){m=P+8|0;v=P+1|0;e=(f[P>>0]&1)==0?v:t[m>>2]|0;t[M>>2]=e;t[R>>2]=T;t[A>>2]=0;f[E>>0]=1;f[y>>0]=69;p=P+4|0;k=t[o>>2]|0;_=t[h>>2]|0;n=t[i>>2]|0;i:while(1){if(n){o=t[n+12>>2]|0;if((o|0)==(t[n+16>>2]|0)){w=0;o=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;b=w;w=0;if(b&1){O=25;break}}else o=t[o>>2]|0;if((o|0)==-1){t[i>>2]=0;n=0;d=1}else d=0}else{n=0;d=1}o=t[r>>2]|0;do{if(o){h=t[o+12>>2]|0;if((h|0)==(t[o+16>>2]|0)){w=0;h=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;b=w;w=0;if(b&1){O=25;break i}}else h=t[h>>2]|0;if((h|0)!=-1)if(d)break;else break i;else{t[r>>2]=0;O=17;break}}else O=17}while(0);if((O|0)==17){O=0;if(d){o=0;break}else o=0}h=f[P>>0]|0;h=(h&1)==0?(h&255)>>>1:t[p>>2]|0;if((t[M>>2]|0)==(e+h|0)){w=0;Ee(8,P|0,h<<1|0,0);b=w;w=0;if(b&1){O=25;break}if(!(f[P>>0]&1))e=10;else e=(t[P>>2]&-2)+-1|0;w=0;Ee(8,P|0,e|0,0);b=w;w=0;if(b&1){O=25;break}e=(f[P>>0]&1)==0?v:t[m>>2]|0;t[M>>2]=e+h}d=n+12|0;h=t[d>>2]|0;b=n+16|0;if((h|0)==(t[b>>2]|0)){w=0;h=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;x=w;w=0;if(x&1){O=25;break}}else h=t[h>>2]|0;if(h_(h,E,y,e,M,k,_,I,T,R,A,g)|0)break;o=t[d>>2]|0;if((o|0)==(t[b>>2]|0)){w=0;de(t[(t[n>>2]|0)+40>>2]|0,n|0)|0;x=w;w=0;if(x&1){O=25;break}else continue}else{t[d>>2]=o+4;continue}}if((O|0)==25){e=je()|0;break}x=f[I>>0]|0;if(!((f[E>>0]|0)==0?1:(((x&1)==0?(x&255)>>>1:t[I+4>>2]|0)|0)==0)?(S=t[R>>2]|0,(S-T|0)<160):0){x=t[A>>2]|0;t[R>>2]=S+4;t[S>>2]=x}w=0;l=+ye(2,e|0,t[M>>2]|0,a|0);x=w;w=0;if(!(x&1)){u[s>>3]=l;Go(I,T,t[R>>2]|0,a);if(n){e=t[n+12>>2]|0;if((e|0)==(t[n+16>>2]|0)){w=0;e=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;x=w;w=0;if(x&1){O=26;break}}else e=t[e>>2]|0;if((e|0)==-1){t[i>>2]=0;n=1}else n=0}else n=1;do{if(o){e=t[o+12>>2]|0;if((e|0)==(t[o+16>>2]|0)){w=0;e=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;x=w;w=0;if(x&1){O=26;break e}}else e=t[e>>2]|0;if((e|0)!=-1)if(n)break;else{O=53;break}else{t[r>>2]=0;O=51;break}}else O=51}while(0);if((O|0)==51?n:0)O=53;if((O|0)==53)t[a>>2]=t[a>>2]|2;x=t[i>>2]|0;xh(P);xh(I);c=C;return x|0}else O=26}else O=26}while(0);if((O|0)==26)e=je()|0;xh(P);xh(I);Qe(e|0);return 0}function fw(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0.0,o=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0;C=c;c=c+352|0;g=C+208|0;o=C+40|0;h=C+36|0;I=C+24|0;P=C+12|0;M=C+8|0;T=C+48|0;R=C+4|0;A=C;E=C+337|0;y=C+336|0;c_(I,n,g,o,h);t[P>>2]=0;t[P+4>>2]=0;t[P+8>>2]=0;if(!(f[P>>0]&1))e=10;else e=(t[P>>2]&-2)+-1|0;w=0;Ee(8,P|0,e|0,0);p=w;w=0;e:do{if(!(p&1)){m=P+8|0;v=P+1|0;e=(f[P>>0]&1)==0?v:t[m>>2]|0;t[M>>2]=e;t[R>>2]=T;t[A>>2]=0;f[E>>0]=1;f[y>>0]=69;p=P+4|0;k=t[o>>2]|0;_=t[h>>2]|0;n=t[i>>2]|0;i:while(1){if(n){o=t[n+12>>2]|0;if((o|0)==(t[n+16>>2]|0)){w=0;o=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;b=w;w=0;if(b&1){O=25;break}}else o=t[o>>2]|0;if((o|0)==-1){t[i>>2]=0;n=0;d=1}else d=0}else{n=0;d=1}o=t[r>>2]|0;do{if(o){h=t[o+12>>2]|0;if((h|0)==(t[o+16>>2]|0)){w=0;h=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;b=w;w=0;if(b&1){O=25;break i}}else h=t[h>>2]|0;if((h|0)!=-1)if(d)break;else break i;else{t[r>>2]=0;O=17;break}}else O=17}while(0);if((O|0)==17){O=0;if(d){o=0;break}else o=0}h=f[P>>0]|0;h=(h&1)==0?(h&255)>>>1:t[p>>2]|0;if((t[M>>2]|0)==(e+h|0)){w=0;Ee(8,P|0,h<<1|0,0);b=w;w=0;if(b&1){O=25;break}if(!(f[P>>0]&1))e=10;else e=(t[P>>2]&-2)+-1|0;w=0;Ee(8,P|0,e|0,0);b=w;w=0;if(b&1){O=25;break}e=(f[P>>0]&1)==0?v:t[m>>2]|0;t[M>>2]=e+h}d=n+12|0;h=t[d>>2]|0;b=n+16|0;if((h|0)==(t[b>>2]|0)){w=0;h=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;x=w;w=0;if(x&1){O=25;break}}else h=t[h>>2]|0;if(h_(h,E,y,e,M,k,_,I,T,R,A,g)|0)break;o=t[d>>2]|0;if((o|0)==(t[b>>2]|0)){w=0;de(t[(t[n>>2]|0)+40>>2]|0,n|0)|0;x=w;w=0;if(x&1){O=25;break}else continue}else{t[d>>2]=o+4;continue}}if((O|0)==25){e=je()|0;break}x=f[I>>0]|0;if(!((f[E>>0]|0)==0?1:(((x&1)==0?(x&255)>>>1:t[I+4>>2]|0)|0)==0)?(S=t[R>>2]|0,(S-T|0)<160):0){x=t[A>>2]|0;t[R>>2]=S+4;t[S>>2]=x}w=0;l=+ye(3,e|0,t[M>>2]|0,a|0);x=w;w=0;if(!(x&1)){u[s>>3]=l;Go(I,T,t[R>>2]|0,a);if(n){e=t[n+12>>2]|0;if((e|0)==(t[n+16>>2]|0)){w=0;e=de(t[(t[n>>2]|0)+36>>2]|0,n|0)|0;x=w;w=0;if(x&1){O=26;break}}else e=t[e>>2]|0;if((e|0)==-1){t[i>>2]=0;n=1}else n=0}else n=1;do{if(o){e=t[o+12>>2]|0;if((e|0)==(t[o+16>>2]|0)){w=0;e=de(t[(t[o>>2]|0)+36>>2]|0,o|0)|0;x=w;w=0;if(x&1){O=26;break e}}else e=t[e>>2]|0;if((e|0)!=-1)if(n)break;else{O=53;break}else{t[r>>2]=0;O=51;break}}else O=51}while(0);if((O|0)==51?n:0)O=53;if((O|0)==53)t[a>>2]=t[a>>2]|2;x=t[i>>2]|0;xh(P);xh(I);c=C;return x|0}else O=26}else O=26}while(0);if((O|0)==26)e=je()|0;xh(P);xh(I);Qe(e|0);return 0}function nw(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0;a=c;c=c+16|0;s=a;t[s>>2]=n;n=Kg(r)|0;r=Dy(e,i,f,s)|0;if((n|0)!=0?(w=0,de(75,n|0)|0,s=w,w=0,s&1):0){s=je(0)|0;Ni(s)}c=a;return r|0}function tw(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0;n=c;c=c+16|0;a=n;t[a>>2]=f;f=Kg(i)|0;w=0;i=_e(37,e|0,r|0,a|0)|0;e=w;w=0;if(e&1){i=je()|0;if((f|0)!=0?(w=0,de(75,f|0)|0,a=w,w=0,a&1):0){a=je(0)|0;Ni(a)}Qe(i|0)}else{if((f|0)!=0?(w=0,de(75,f|0)|0,a=w,w=0,a&1):0){a=je(0)|0;Ni(a)}c=n;return i|0}return 0}function aw(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0;b=c;c=c+16|0;d=b;l=t[e>>2]|0;e:do{if(!l)l=0;else{_=i;u=n-_>>2;h=a+12|0;o=t[h>>2]|0;u=(o|0)>(u|0)?o-u|0:0;o=r;_=o-_|0;a=_>>2;if((_|0)>0?(uM[t[(t[l>>2]|0)+48>>2]&63](l,i,a)|0)!=(a|0):0){t[e>>2]=0;l=0;break}do{if((u|0)>0){Vh(d,u,s);w=0;a=_e(t[(t[l>>2]|0)+48>>2]|0,l|0,((f[d>>0]&1)==0?d+4|0:t[d+8>>2]|0)|0,u|0)|0;_=w;w=0;if(_&1){_=je()|0;Xh(d);Qe(_|0)}if((a|0)==(u|0)){Xh(d);break}else{t[e>>2]=0;Xh(d);l=0;break e}}}while(0);_=n-o|0;n=_>>2;if((_|0)>0?(uM[t[(t[l>>2]|0)+48>>2]&63](l,r,n)|0)!=(n|0):0){t[e>>2]=0;l=0;break}t[h>>2]=0}}while(0);c=b;return l|0}function sw(e,i,r,f,s){e=e|0;i=i|0;r=r|0;f=f|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0;l=t[e>>2]|0;do{if(l){if((t[l+12>>2]|0)==(t[l+16>>2]|0))if((lM[t[(t[l>>2]|0)+36>>2]&127](l)|0)==-1){t[e>>2]=0;l=0;break}else{l=t[e>>2]|0;break}}else l=0}while(0);o=(l|0)==0;l=t[i>>2]|0;do{if(l){if((t[l+12>>2]|0)==(t[l+16>>2]|0)?(lM[t[(t[l>>2]|0)+36>>2]&127](l)|0)==-1:0){t[i>>2]=0;w=11;break}if(o)w=13;else w=12}else w=11}while(0);if((w|0)==11)if(o)w=12;else{l=0;w=13}e:do{if((w|0)==12){t[r>>2]=t[r>>2]|6;l=0}else if((w|0)==13){o=t[e>>2]|0;u=t[o+12>>2]|0;if((u|0)==(t[o+16>>2]|0))o=lM[t[(t[o>>2]|0)+36>>2]&127](o)|0;else o=a[u>>0]|0;u=o&255;if(u<<24>>24>-1?(k=f+8|0,(n[(t[k>>2]|0)+(o<<24>>24<<1)>>1]&2048)!=0):0){h=(uM[t[(t[f>>2]|0)+36>>2]&63](f,u,0)|0)<<24>>24;o=t[e>>2]|0;u=o+12|0;c=t[u>>2]|0;if((c|0)==(t[o+16>>2]|0)){lM[t[(t[o>>2]|0)+40>>2]&127](o)|0;b=s;d=l;s=l;l=h}else{t[u>>2]=c+1;b=s;d=l;s=l;l=h}while(1){l=l+-48|0;_=b+-1|0;o=t[e>>2]|0;do{if(o){if((t[o+12>>2]|0)==(t[o+16>>2]|0))if((lM[t[(t[o>>2]|0)+36>>2]&127](o)|0)==-1){t[e>>2]=0;o=0;break}else{o=t[e>>2]|0;break}}else o=0}while(0);c=(o|0)==0;if(s)if((t[s+12>>2]|0)==(t[s+16>>2]|0))if((lM[t[(t[s>>2]|0)+36>>2]&127](s)|0)==-1){t[i>>2]=0;u=0;s=0}else{u=d;s=d}else u=d;else{u=d;s=0}o=t[e>>2]|0;if(!((b|0)>1&(c^(s|0)==0)))break;c=t[o+12>>2]|0;if((c|0)==(t[o+16>>2]|0))o=lM[t[(t[o>>2]|0)+36>>2]&127](o)|0;else o=a[c>>0]|0;c=o&255;if(c<<24>>24<=-1)break e;if(!(n[(t[k>>2]|0)+(o<<24>>24<<1)>>1]&2048))break e;l=((uM[t[(t[f>>2]|0)+36>>2]&63](f,c,0)|0)<<24>>24)+(l*10|0)|0;o=t[e>>2]|0;c=o+12|0;h=t[c>>2]|0;if((h|0)==(t[o+16>>2]|0)){lM[t[(t[o>>2]|0)+40>>2]&127](o)|0;b=_;d=u;continue}else{t[c>>2]=h+1;b=_;d=u;continue}}do{if(o){if((t[o+12>>2]|0)==(t[o+16>>2]|0))if((lM[t[(t[o>>2]|0)+36>>2]&127](o)|0)==-1){t[e>>2]=0;o=0;break}else{o=t[e>>2]|0;break}}else o=0}while(0);o=(o|0)==0;do{if(u){if((t[u+12>>2]|0)==(t[u+16>>2]|0)?(lM[t[(t[u>>2]|0)+36>>2]&127](u)|0)==-1:0){t[i>>2]=0;w=50;break}if(o)break e}else w=50}while(0);if((w|0)==50?!o:0)break;t[r>>2]=t[r>>2]|2;break}t[r>>2]=t[r>>2]|4;l=0}}while(0);return l|0}function lw(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;a=t[e>>2]|0;do{if(a){s=t[a+12>>2]|0;if((s|0)==(t[a+16>>2]|0))a=lM[t[(t[a>>2]|0)+36>>2]&127](a)|0;else a=t[s>>2]|0;if((a|0)==-1){t[e>>2]=0;l=1;break}else{l=(t[e>>2]|0)==0;break}}else l=1}while(0);s=t[i>>2]|0;do{if(s){a=t[s+12>>2]|0;if((a|0)==(t[s+16>>2]|0))a=lM[t[(t[s>>2]|0)+36>>2]&127](s)|0;else a=t[a>>2]|0;if((a|0)!=-1)if(l){b=17;break}else{b=16;break}else{t[i>>2]=0;b=14;break}}else b=14}while(0);if((b|0)==14)if(l)b=16;else{s=0;b=17}e:do{if((b|0)==16){t[r>>2]=t[r>>2]|6;a=0}else if((b|0)==17){a=t[e>>2]|0;l=t[a+12>>2]|0;if((l|0)==(t[a+16>>2]|0))a=lM[t[(t[a>>2]|0)+36>>2]&127](a)|0;else a=t[l>>2]|0;if(!(uM[t[(t[f>>2]|0)+12>>2]&63](f,2048,a)|0)){t[r>>2]=t[r>>2]|4;a=0;break}a=(uM[t[(t[f>>2]|0)+52>>2]&63](f,a,0)|0)<<24>>24;l=t[e>>2]|0;o=l+12|0;u=t[o>>2]|0;if((u|0)==(t[l+16>>2]|0)){lM[t[(t[l>>2]|0)+40>>2]&127](l)|0;h=n;c=s;o=s}else{t[o>>2]=u+4;h=n;c=s;o=s}while(1){a=a+-48|0;d=h+-1|0;s=t[e>>2]|0;do{if(s){l=t[s+12>>2]|0;if((l|0)==(t[s+16>>2]|0))s=lM[t[(t[s>>2]|0)+36>>2]&127](s)|0;else s=t[l>>2]|0;if((s|0)==-1){t[e>>2]=0;u=1;break}else{u=(t[e>>2]|0)==0;break}}else u=1}while(0);do{if(o){s=t[o+12>>2]|0;if((s|0)==(t[o+16>>2]|0))s=lM[t[(t[o>>2]|0)+36>>2]&127](o)|0;else s=t[s>>2]|0;if((s|0)==-1){t[i>>2]=0;o=0;n=0;s=1;break}else{o=c;n=c;s=(c|0)==0;break}}else{o=c;n=0;s=1}}while(0);l=t[e>>2]|0;if(!((h|0)>1&(u^s)))break;s=t[l+12>>2]|0;if((s|0)==(t[l+16>>2]|0))s=lM[t[(t[l>>2]|0)+36>>2]&127](l)|0;else s=t[s>>2]|0;if(!(uM[t[(t[f>>2]|0)+12>>2]&63](f,2048,s)|0))break e;a=((uM[t[(t[f>>2]|0)+52>>2]&63](f,s,0)|0)<<24>>24)+(a*10|0)|0;s=t[e>>2]|0;l=s+12|0;u=t[l>>2]|0;if((u|0)==(t[s+16>>2]|0)){lM[t[(t[s>>2]|0)+40>>2]&127](s)|0;h=d;c=o;o=n;continue}else{t[l>>2]=u+4;h=d;c=o;o=n;continue}}do{if(l){s=t[l+12>>2]|0;if((s|0)==(t[l+16>>2]|0))s=lM[t[(t[l>>2]|0)+36>>2]&127](l)|0;else s=t[s>>2]|0;if((s|0)==-1){t[e>>2]=0;l=1;break}else{l=(t[e>>2]|0)==0;break}}else l=1}while(0);do{if(o){s=t[o+12>>2]|0;if((s|0)==(t[o+16>>2]|0))s=lM[t[(t[o>>2]|0)+36>>2]&127](o)|0;else s=t[s>>2]|0;if((s|0)!=-1)if(l)break e;else break;else{t[i>>2]=0;b=60;break}}else b=60}while(0);if((b|0)==60?!l:0)break;t[r>>2]=t[r>>2]|2}}while(0);return a|0}function ow(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0;a=e+4|0;f=(t[a>>2]|0)!=189;l=t[e>>2]|0;s=l;n=(t[r>>2]|0)-s|0;n=n>>>0<2147483647?n<<1:-1;s=(t[i>>2]|0)-s|0;l=xc(f?l:0,n)|0;if(!l)Mg();do{if(!f){f=t[e>>2]|0;t[e>>2]=l;if(f){w=0;ue(t[a>>2]|0,f|0);l=w;w=0;if(l&1){l=je(0)|0;Ni(l)}else{o=t[e>>2]|0;break}}else o=l}else{t[e>>2]=l;o=l}}while(0);t[a>>2]=201;t[i>>2]=o+s;t[r>>2]=(t[e>>2]|0)+n;return}function uw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0;a=e+4|0;f=(t[a>>2]|0)!=189;l=t[e>>2]|0;s=l;n=(t[r>>2]|0)-s|0;n=n>>>0<2147483647?n<<1:-1;s=(t[i>>2]|0)-s>>2;l=xc(f?l:0,n)|0;if(!l)Mg();do{if(!f){f=t[e>>2]|0;t[e>>2]=l;if(f){w=0;ue(t[a>>2]|0,f|0);l=w;w=0;if(l&1){l=je(0)|0;Ni(l)}else{o=t[e>>2]|0;break}}else o=l}else{t[e>>2]=l;o=l}}while(0);t[a>>2]=201;t[i>>2]=o+(s<<2);t[r>>2]=(t[e>>2]|0)+(n>>>2<<2);return}function cw(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0;s=i;n=f[e>>0]|0;if(!(n&1)){a=10;u=(n&255)>>>1}else{n=t[e>>2]|0;a=(n&-2)+-1|0;u=t[e+4>>2]|0;n=n&255}o=r-s|0;do{if((r|0)!=(i|0)){if((a-u|0)>>>0<o>>>0){qh(e,a,u+o-a|0,u,u,0,0);n=f[e>>0]|0}if(!(n&1))l=e+1|0;else l=t[e+8>>2]|0;s=r+(u-s)|0;if((i|0)!=(r|0)){n=i;a=l+u|0;while(1){f[a>>0]=f[n>>0]|0;n=n+1|0;if((n|0)==(r|0))break;else a=a+1|0}}f[l+s>>0]=0;n=u+o|0;if(!(f[e>>0]&1)){f[e>>0]=n<<1;break}else{t[e+4>>2]=n;break}}}while(0);return e|0}function hw(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0;a=e+4|0;f=(t[a>>2]|0)!=189;l=t[e>>2]|0;s=l;n=(t[r>>2]|0)-s|0;n=n>>>0<2147483647?n<<1:-1;s=(t[i>>2]|0)-s>>2;l=xc(f?l:0,n)|0;if(!l)Mg();do{if(!f){f=t[e>>2]|0;t[e>>2]=l;if(f){w=0;ue(t[a>>2]|0,f|0);l=w;w=0;if(l&1){l=je(0)|0;Ni(l)}else{o=t[e>>2]|0;break}}else o=l}else{t[e>>2]=l;o=l}}while(0);t[a>>2]=201;t[i>>2]=o+(s<<2);t[r>>2]=(t[e>>2]|0)+(n>>>2<<2);return}function dw(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0;s=i;n=f[e>>0]|0;if(!(n&1)){a=1;u=(n&255)>>>1}else{n=t[e>>2]|0;a=(n&-2)+-1|0;u=t[e+4>>2]|0;n=n&255}o=r-s>>2;do{if(o){if((a-u|0)>>>0<o>>>0){Qh(e,a,u+o-a|0,u,u,0,0);n=f[e>>0]|0}if(!(n&1))l=e+4|0;else l=t[e+8>>2]|0;s=u+((r-s|0)>>>2)|0;if((i|0)!=(r|0)){n=i;a=l+(u<<2)|0;while(1){t[a>>2]=t[n>>2];n=n+4|0;if((n|0)==(r|0))break;else a=a+4|0}}t[l+(s<<2)>>2]=0;n=u+o|0;if(!(f[e>>0]&1)){f[e>>0]=n<<1;break}else{t[e+4>>2]=n;break}}}while(0);return e|0}function bw(e,i){e=e|0;i=i|0;var r=0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;f[e+128>>0]=0;do{if(i){w=0;ce(125,e|0,i|0);r=w;w=0;if(r&1){r=je()|0;Yw(e);Qe(r|0)}else{am(e,i);break}}}while(0);return}function _w(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43148)|0);return}function kw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43188)|0);return}function ww(e,i){e=e|0;i=i|0;Eu(e,i,Bu(44220)|0);return}function mw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(44212)|0);return}function vw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(44280)|0);return}function pw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(44288)|0);return}function gw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(44344)|0);return}function yw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(44352)|0);return}function Mw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(44360)|0);return}function Aw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(44368)|0);return}function Ew(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43260)|0);return}function Sw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43332)|0);return}function Tw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43392)|0);return}function Rw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43452)|0);return}function Cw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43764)|0);return}function Pw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43828)|0);return}function Iw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43892)|0);return}function Ow(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43956)|0);return}function xw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43992)|0);return}function Lw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(44028)|0);return}function Bw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(44064)|0);return}function zw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(44100)|0);return}function Dw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43544)|0);return}function Nw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43636)|0);return}function Fw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43668)|0);return}function Hw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(43700)|0);return}function Uw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(44140)|0);return}function jw(e,i){e=e|0;i=i|0;Eu(e,i,Bu(44180)|0);return}function Yw(e){e=e|0;var i=0,r=0,n=0;r=t[e>>2]|0;do{if(r){n=e+4|0;i=t[n>>2]|0;if((i|0)!=(r|0)){do{i=i+-4|0}while((i|0)!=(r|0));t[n>>2]=i}if((e+16|0)==(r|0)){f[e+128>>0]=0;break}else{Bp(r);break}}}while(0);return}function qw(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0;s=e+4|0;r=t[s>>2]|0;f=t[e>>2]|0;n=r-f>>2;if(n>>>0>=i>>>0){if(n>>>0>i>>>0?(a=f+(i<<2)|0,(r|0)!=(a|0)):0){do{r=r+-4|0}while((r|0)!=(a|0));t[s>>2]=r}}else tm(e,i-n|0);return}function $w(e,i){e=e|0;i=i|0;var r=0;r=t[e+8>>2]|0;if((t[e+12>>2]|0)-r>>2>>>0>i>>>0)r=(t[r+(i<<2)>>2]|0)!=0;else r=0;return r|0}function Vw(e){e=e|0;var i=0,r=0;r=e+4|0;i=t[r>>2]|0;r=t[r+4>>2]|0;e=(t[e>>2]|0)+(r>>1)|0;if(r&1)i=t[(t[e>>2]|0)+i>>2]|0;tM[i&255](e);return}function Xw(e,i,r,a,l,o,u,c){e=e|0;i=i|0;r=r|0;a=a|0;l=l|0;o=o|0;u=u|0;c=c|0;var h=0,d=0;t[r>>2]=e;t[o>>2]=a;if(c&2)if((l-a|0)<3)e=1;else{t[o>>2]=a+1;f[a>>0]=-17;h=t[o>>2]|0;t[o>>2]=h+1;f[h>>0]=-69;h=t[o>>2]|0;t[o>>2]=h+1;f[h>>0]=-65;h=4}else h=4;e:do{if((h|0)==4){d=i;e=t[r>>2]|0;if(e>>>0<i>>>0)while(1){c=n[e>>1]|0;h=c&65535;if(h>>>0>u>>>0){e=2;break e}do{if((c&65535)<128){e=t[o>>2]|0;if((l-e|0)<1){e=1;break e}t[o>>2]=e+1;f[e>>0]=c}else{if((c&65535)<2048){e=t[o>>2]|0;if((l-e|0)<2){e=1;break e}t[o>>2]=e+1;f[e>>0]=h>>>6|192;a=t[o>>2]|0;t[o>>2]=a+1;f[a>>0]=h&63|128;break}if((c&65535)<55296){e=t[o>>2]|0;if((l-e|0)<3){e=1;break e}t[o>>2]=e+1;f[e>>0]=h>>>12|224;a=t[o>>2]|0;t[o>>2]=a+1;f[a>>0]=h>>>6&63|128;a=t[o>>2]|0;t[o>>2]=a+1;f[a>>0]=h&63|128;break}if((c&65535)>=56320){if((c&65535)<57344){e=2;break e}e=t[o>>2]|0;if((l-e|0)<3){e=1;break e}t[o>>2]=e+1;f[e>>0]=h>>>12|224;a=t[o>>2]|0;t[o>>2]=a+1;f[a>>0]=h>>>6&63|128;a=t[o>>2]|0;t[o>>2]=a+1;f[a>>0]=h&63|128;break}if((d-e|0)<4){e=1;break e}e=e+2|0;c=s[e>>1]|0;if((c&64512|0)!=56320){e=2;break e}if((l-(t[o>>2]|0)|0)<4){e=1;break e}a=h&960;if(((a<<10)+65536|h<<10&64512|c&1023)>>>0>u>>>0){e=2;break e}t[r>>2]=e;e=(a>>>6)+1|0;a=t[o>>2]|0;t[o>>2]=a+1;f[a>>0]=e>>>2|240;a=t[o>>2]|0;t[o>>2]=a+1;f[a>>0]=h>>>2&15|e<<4&48|128;a=t[o>>2]|0;t[o>>2]=a+1;f[a>>0]=h<<4&48|c>>>6&15|128;h=t[o>>2]|0;t[o>>2]=h+1;f[h>>0]=c&63|128}}while(0);e=(t[r>>2]|0)+2|0;t[r>>2]=e;if(e>>>0>=i>>>0){e=0;break}}else e=0}}while(0);return e|0}function Gw(e,i,r,s,l,o,u,c){e=e|0;i=i|0;r=r|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;var h=0,d=0,b=0,_=0,k=0,w=0;t[r>>2]=e;t[o>>2]=s;if(c&4){e=t[r>>2]|0;c=i;if((((c-e|0)>2?(f[e>>0]|0)==-17:0)?(f[e+1>>0]|0)==-69:0)?(f[e+2>>0]|0)==-65:0){t[r>>2]=e+3;h=t[o>>2]|0}else h=s}else{h=s;c=i}k=l;s=t[r>>2]|0;e=s>>>0<i>>>0;e:do{if(e&h>>>0<l>>>0)while(1){e=f[s>>0]|0;b=e&255;if(b>>>0>u>>>0){e=2;break e}do{if(e<<24>>24>-1){n[h>>1]=e&255;t[r>>2]=s+1}else{if((e&255)<194){e=2;break e}if((e&255)<224){if((c-s|0)<2){e=1;break e}e=a[s+1>>0]|0;if((e&192|0)!=128){e=2;break e}e=e&63|b<<6&1984;if(e>>>0>u>>>0){e=2;break e}n[h>>1]=e;t[r>>2]=s+2;break}if((e&255)<240){if((c-s|0)<3){e=1;break e}d=f[s+1>>0]|0;e=f[s+2>>0]|0;switch(b|0){case 224:{if((d&-32)<<24>>24!=-96){e=2;break e}break}case 237:{if((d&-32)<<24>>24!=-128){e=2;break e}break}default:if((d&-64)<<24>>24!=-128){e=2;break e}}e=e&255;if((e&192|0)!=128){e=2;break e}e=(d&255)<<6&4032|b<<12|e&63;if((e&65535)>>>0>u>>>0){e=2;break e}n[h>>1]=e;t[r>>2]=s+3;break}if((e&255)>=245){e=2;break e}if((c-s|0)<4){e=1;break e}d=f[s+1>>0]|0;e=f[s+2>>0]|0;s=f[s+3>>0]|0;switch(b|0){case 240:{if((d+112&255)>=48){e=2;break e}break}case 244:{if((d&-16)<<24>>24!=-128){e=2;break e}break}default:if((d&-64)<<24>>24!=-128){e=2;break e}}_=e&255;if((_&192|0)!=128){e=2;break e}e=s&255;if((e&192|0)!=128){e=2;break e}if((k-h|0)<4){e=1;break e}b=b&7;s=d&255;d=_<<6;e=e&63;if((s<<12&258048|b<<18|d&4032|e)>>>0>u>>>0){e=2;break e}n[h>>1]=s<<2&60|_>>>4&3|((s>>>4&3|b<<2)<<6)+16320|55296;_=h+2|0;t[o>>2]=_;n[_>>1]=e|d&960|56320;t[r>>2]=(t[r>>2]|0)+4}}while(0);h=(t[o>>2]|0)+2|0;t[o>>2]=h;s=t[r>>2]|0;e=s>>>0<i>>>0;if(!(e&h>>>0<l>>>0)){w=39;break}}else w=39}while(0);if((w|0)==39)e=e&1;return e|0}function Kw(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i;if((((t&4|0)!=0?(d-e|0)>2:0)?(f[e>>0]|0)==-17:0)?(f[e+1>>0]|0)==-69:0)t=(f[e+2>>0]|0)==-65?e+3|0:e;else t=e;e:do{if((r|0)!=0&t>>>0<i>>>0){h=t;s=0;i:while(1){t=f[h>>0]|0;c=t&255;if(c>>>0>n>>>0){t=h;s=42;break e}do{if(t<<24>>24>-1)t=h+1|0;else{if((t&255)<194){t=h;s=42;break e}if((t&255)<224){if((d-h|0)<2){t=h;s=42;break e}t=a[h+1>>0]|0;if((t&192|0)!=128){t=h;s=42;break e}if((t&63|c<<6&1984)>>>0>n>>>0){t=h;s=42;break e}t=h+2|0;break}if((t&255)<240){t=h;if((d-t|0)<3){t=h;s=42;break e}o=f[h+1>>0]|0;l=f[h+2>>0]|0;switch(c|0){case 224:{if((o&-32)<<24>>24!=-96){s=20;break i}break}case 237:{if((o&-32)<<24>>24!=-128){s=22;break i}break}default:if((o&-64)<<24>>24!=-128){s=24;break i}}t=l&255;if((t&192|0)!=128){t=h;s=42;break e}if(((o&255)<<6&4032|c<<12&61440|t&63)>>>0>n>>>0){t=h;s=42;break e}t=h+3|0;break}if((t&255)>=245){t=h;s=42;break e}t=h;if((r-s|0)>>>0<2|(d-t|0)<4){t=h;s=42;break e}u=f[h+1>>0]|0;l=f[h+2>>0]|0;o=f[h+3>>0]|0;switch(c|0){case 240:{if((u+112&255)>=48){s=32;break i}break}case 244:{if((u&-16)<<24>>24!=-128){s=34;break i}break}default:if((u&-64)<<24>>24!=-128){s=36;break i}}l=l&255;if((l&192|0)!=128){t=h;s=42;break e}t=o&255;if((t&192|0)!=128){t=h;s=42;break e}if(((u&255)<<12&258048|c<<18&1835008|l<<6&4032|t&63)>>>0>n>>>0){t=h;s=42;break e}t=h+4|0;s=s+1|0}}while(0);s=s+1|0;if(!(s>>>0<r>>>0&t>>>0<i>>>0)){s=42;break e}else h=t}if((s|0)==20){t=t-e|0;break}else if((s|0)==22){t=t-e|0;break}else if((s|0)==24){t=t-e|0;break}else if((s|0)==32){t=t-e|0;break}else if((s|0)==34){t=t-e|0;break}else if((s|0)==36){t=t-e|0;break}}else s=42}while(0);if((s|0)==42)t=t-e|0;return t|0}function Ww(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,c=0;t[r>>2]=e;t[s>>2]=n;c=a;if(o&2)if((c-n|0)<3)e=1;else{t[s>>2]=n+1;f[n>>0]=-17;u=t[s>>2]|0;t[s>>2]=u+1;f[u>>0]=-69;u=t[s>>2]|0;t[s>>2]=u+1;f[u>>0]=-65;u=4}else u=4;e:do{if((u|0)==4){e=t[r>>2]|0;if(e>>>0<i>>>0)while(1){o=t[e>>2]|0;if(o>>>0>l>>>0|(o&-2048|0)==55296){e=2;break e}do{if(o>>>0>=128){if(o>>>0<2048){e=t[s>>2]|0;if((c-e|0)<2){e=1;break e}t[s>>2]=e+1;f[e>>0]=o>>>6|192;u=t[s>>2]|0;t[s>>2]=u+1;f[u>>0]=o&63|128;break}e=t[s>>2]|0;a=c-e|0;if(o>>>0<65536){if((a|0)<3){e=1;break e}t[s>>2]=e+1;f[e>>0]=o>>>12|224;u=t[s>>2]|0;t[s>>2]=u+1;f[u>>0]=o>>>6&63|128;u=t[s>>2]|0;t[s>>2]=u+1;f[u>>0]=o&63|128;break}else{if((a|0)<4){e=1;break e}t[s>>2]=e+1;f[e>>0]=o>>>18|240;u=t[s>>2]|0;t[s>>2]=u+1;f[u>>0]=o>>>12&63|128;u=t[s>>2]|0;t[s>>2]=u+1;f[u>>0]=o>>>6&63|128;u=t[s>>2]|0;t[s>>2]=u+1;f[u>>0]=o&63|128;break}}else{e=t[s>>2]|0;if((c-e|0)<1){e=1;break e}t[s>>2]=e+1;f[e>>0]=o}}while(0);e=(t[r>>2]|0)+4|0;t[r>>2]=e;if(e>>>0>=i>>>0){e=0;break}}else e=0}}while(0);return e|0}function Zw(e,i,r,n,s,l,o,u){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;l=l|0;o=o|0;u=u|0;var c=0,h=0,d=0,b=0,_=0,k=0;t[r>>2]=e;t[l>>2]=n;if(u&4){e=t[r>>2]|0;u=i;if((((u-e|0)>2?(f[e>>0]|0)==-17:0)?(f[e+1>>0]|0)==-69:0)?(f[e+2>>0]|0)==-65:0){t[r>>2]=e+3;n=t[l>>2]|0;_=u}else _=u}else _=i;u=t[r>>2]|0;e=u>>>0<i>>>0;e:do{if(e&n>>>0<s>>>0)while(1){e=f[u>>0]|0;b=e&255;do{if(e<<24>>24>-1){if(b>>>0>o>>>0){e=2;break e}t[n>>2]=b;t[r>>2]=u+1}else{if((e&255)<194){e=2;break e}if((e&255)<224){if((_-u|0)<2){e=1;break e}e=a[u+1>>0]|0;if((e&192|0)!=128){e=2;break e}e=e&63|b<<6&1984;if(e>>>0>o>>>0){e=2;break e}t[n>>2]=e;t[r>>2]=u+2;break}if((e&255)<240){if((_-u|0)<3){e=1;break e}c=f[u+1>>0]|0;e=f[u+2>>0]|0;switch(b|0){case 224:{if((c&-32)<<24>>24!=-96){e=2;break e}break}case 237:{if((c&-32)<<24>>24!=-128){e=2;break e}break}default:if((c&-64)<<24>>24!=-128){e=2;break e}}e=e&255;if((e&192|0)!=128){e=2;break e}e=(c&255)<<6&4032|b<<12&61440|e&63;if(e>>>0>o>>>0){e=2;break e}t[n>>2]=e;t[r>>2]=u+3;break}if((e&255)>=245){e=2;break e}if((_-u|0)<4){e=1;break e}d=f[u+1>>0]|0;e=f[u+2>>0]|0;c=f[u+3>>0]|0;switch(b|0){case 240:{if((d+112&255)>=48){e=2;break e}break}case 244:{if((d&-16)<<24>>24!=-128){e=2;break e}break}default:if((d&-64)<<24>>24!=-128){e=2;break e}}h=e&255;if((h&192|0)!=128){e=2;break e}e=c&255;if((e&192|0)!=128){e=2;break e}e=(d&255)<<12&258048|b<<18&1835008|h<<6&4032|e&63;if(e>>>0>o>>>0){e=2;break e}t[n>>2]=e;t[r>>2]=u+4}}while(0);n=(t[l>>2]|0)+4|0;t[l>>2]=n;u=t[r>>2]|0;e=u>>>0<i>>>0;if(!(e&n>>>0<s>>>0)){k=38;break}}else k=38}while(0);if((k|0)==38)e=e&1;return e|0}function Jw(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0;d=i;if((((t&4|0)!=0?(d-e|0)>2:0)?(f[e>>0]|0)==-17:0)?(f[e+1>>0]|0)==-69:0)t=(f[e+2>>0]|0)==-65?e+3|0:e;else t=e;e:do{if((r|0)!=0&t>>>0<i>>>0){c=t;h=0;i:while(1){t=f[c>>0]|0;u=t&255;do{if(t<<24>>24>-1){if(u>>>0>n>>>0){t=c;s=42;break e}t=c+1|0}else{if((t&255)<194){t=c;s=42;break e}if((t&255)<224){if((d-c|0)<2){t=c;s=42;break e}t=a[c+1>>0]|0;if((t&192|0)!=128){t=c;s=42;break e}if((t&63|u<<6&1984)>>>0>n>>>0){t=c;s=42;break e}t=c+2|0;break}if((t&255)<240){t=c;if((d-t|0)<3){t=c;s=42;break e}l=f[c+1>>0]|0;s=f[c+2>>0]|0;switch(u|0){case 224:{if((l&-32)<<24>>24!=-96){s=20;break i}break}case 237:{if((l&-32)<<24>>24!=-128){s=22;break i}break}default:if((l&-64)<<24>>24!=-128){s=24;break i}}t=s&255;if((t&192|0)!=128){t=c;s=42;break e}if(((l&255)<<6&4032|u<<12&61440|t&63)>>>0>n>>>0){t=c;s=42;break e}t=c+3|0;break}if((t&255)>=245){t=c;s=42;break e}t=c;if((d-t|0)<4){t=c;s=42;break e}o=f[c+1>>0]|0;s=f[c+2>>0]|0;l=f[c+3>>0]|0;switch(u|0){case 240:{if((o+112&255)>=48){s=32;break i}break}case 244:{if((o&-16)<<24>>24!=-128){s=34;break i}break}default:if((o&-64)<<24>>24!=-128){s=36;break i}}s=s&255;if((s&192|0)!=128){t=c;s=42;break e}t=l&255;if((t&192|0)!=128){t=c;s=42;break e}if(((o&255)<<12&258048|u<<18&1835008|s<<6&4032|t&63)>>>0>n>>>0){t=c;s=42;break e}t=c+4|0}}while(0);h=h+1|0;if(!(h>>>0<r>>>0&t>>>0<i>>>0)){s=42;break e}else c=t}if((s|0)==20){t=t-e|0;break}else if((s|0)==22){t=t-e|0;break}else if((s|0)==24){t=t-e|0;break}else if((s|0)==32){t=t-e|0;break}else if((s|0)==34){t=t-e|0;break}else if((s|0)==36){t=t-e|0;break}}else s=42}while(0);if((s|0)==42)t=t-e|0;return t|0}function Qw(e){e=e|0;xh(45196);xh(45184);xh(45172);xh(45160);xh(45148);xh(45136);xh(45124);xh(45112);xh(45100);xh(45088);xh(45076);xh(45064);xh(45052);xh(45040);return}function em(e){e=e|0;Xh(45368);Xh(45356);Xh(45344);Xh(45332);Xh(45320);Xh(45308);Xh(45296);Xh(45284);Xh(45272);Xh(45260);Xh(45248);Xh(45236);Xh(45224);Xh(45212);return}function im(e){e=e|0;xh(46e3);xh(45988);xh(45976);xh(45964);xh(45952);xh(45940);xh(45928);xh(45916);xh(45904);xh(45892);xh(45880);xh(45868);xh(45856);xh(45844);xh(45832);xh(45820);xh(45808);xh(45796);xh(45784);xh(45772);xh(45760);xh(45748);xh(45736);xh(45724);return}function rm(e){e=e|0;Xh(46292);Xh(46280);Xh(46268);Xh(46256);Xh(46244);Xh(46232);Xh(46220);Xh(46208);Xh(46196);Xh(46184);Xh(46172);Xh(46160);Xh(46148);Xh(46136);Xh(46124);Xh(46112);Xh(46100);Xh(46088);Xh(46076);Xh(46064);Xh(46052);Xh(46040);Xh(46028);Xh(46016);return}function fm(e){e=e|0;xh(47104);xh(47092);xh(47080);xh(47068);xh(47056);xh(47044);xh(47032);xh(47020);xh(47008);xh(46996);xh(46984);xh(46972);xh(46960);xh(46948);xh(46936);xh(46924);xh(46912);xh(46900);xh(46888);xh(46876);xh(46864);xh(46852);xh(46840);xh(46828);return}function nm(e){e=e|0;Xh(47396);Xh(47384);Xh(47372);Xh(47360);Xh(47348);Xh(47336);Xh(47324);Xh(47312);Xh(47300);Xh(47288);Xh(47276);Xh(47264);Xh(47252);Xh(47240);Xh(47228);Xh(47216);Xh(47204);Xh(47192);Xh(47180);Xh(47168);Xh(47156);Xh(47144);Xh(47132);Xh(47120);return}function tm(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0,o=0;o=c;c=c+32|0;l=o;a=t[e+8>>2]|0;r=t[e+4>>2]|0;if(a-r>>2>>>0<i>>>0){f=t[e>>2]|0;s=r-f>>2;n=s+i|0;if(n>>>0>1073741823)Op(e);r=a-f|0;if(r>>2>>>0<536870911){r=r>>1;r=r>>>0<n>>>0?n:r}else r=1073741823;sm(l,r,s,e+16|0);s=l+8|0;a=t[s>>2]|0;ym(a|0,0,i<<2|0)|0;t[s>>2]=a+(i<<2);lm(e,l);om(l)}else am(e,i);c=o;return}function am(e,i){e=e|0;i=i|0;var r=0;r=e+4|0;e=i;i=t[r>>2]|0;do{t[i>>2]=0;i=(t[r>>2]|0)+4|0;t[r>>2]=i;e=e+-1|0}while((e|0)!=0);return}function sm(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0;t[e+12>>2]=0;t[e+16>>2]=n;do{if(i){a=n+112|0;if(i>>>0<29&(f[a>>0]|0)==0){f[a>>0]=1;break}else{n=Lp(i<<2)|0;break}}else n=0}while(0);t[e>>2]=n;r=n+(r<<2)|0;t[e+8>>2]=r;t[e+4>>2]=r;t[e+12>>2]=n+(i<<2);return}function lm(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0;f=t[e>>2]|0;a=e+4|0;r=i+4|0;n=(t[a>>2]|0)-f|0;s=(t[r>>2]|0)+(0-(n>>2)<<2)|0;t[r>>2]=s;Em(s|0,f|0,n|0)|0;n=t[e>>2]|0;t[e>>2]=t[r>>2];t[r>>2]=n;n=i+8|0;f=t[a>>2]|0;t[a>>2]=t[n>>2];t[n>>2]=f;n=e+8|0;e=i+12|0;f=t[n>>2]|0;t[n>>2]=t[e>>2];t[e>>2]=f;t[i>>2]=t[r>>2];return}function om(e){e=e|0;var i=0,r=0,n=0;r=t[e+4>>2]|0;n=e+8|0;i=t[n>>2]|0;if((i|0)!=(r|0)){do{i=i+-4|0}while((i|0)!=(r|0));t[n>>2]=i}r=t[e>>2]|0;do{if(r){i=t[e+16>>2]|0;if((i|0)==(r|0)){f[i+112>>0]=0;break}else{Bp(r);break}}}while(0);return}function um(e,i){e=e|0;i=i|0;var r=0;if(i>>>0>1073741823)Op(e);r=e+128|0;if(i>>>0<29&(f[r>>0]|0)==0){f[r>>0]=1;r=e+16|0}else r=Lp(i<<2)|0;t[e+4>>2]=r;t[e>>2]=r;t[e+8>>2]=r+(i<<2);return}function cm(e,i,r){e=e|0;i=i|0;r=r|0;var f=0.0,n=0,a=0,s=0,l=0;l=c;c=c+16|0;s=l;do{if((e|0)!=(i|0)){n=Bg()|0;a=t[n>>2]|0;t[n>>2]=0;f=+Fy(e,s,Vb()|0);e=t[n>>2]|0;if(!e)t[n>>2]=a;if((t[s>>2]|0)!=(i|0)){t[r>>2]=4;f=0.0;break}if((e|0)==34)t[r>>2]=4}else{t[r>>2]=4;f=0.0}}while(0);c=l;return+f}function hm(e,i,r){e=e|0;i=i|0;r=r|0;var f=0.0,n=0,a=0,s=0,l=0;l=c;c=c+16|0;s=l;do{if((e|0)!=(i|0)){n=Bg()|0;a=t[n>>2]|0;t[n>>2]=0;f=+Fy(e,s,Vb()|0);e=t[n>>2]|0;if(!e)t[n>>2]=a;if((t[s>>2]|0)!=(i|0)){t[r>>2]=4;f=0.0;break}if((e|0)==34)t[r>>2]=4}else{t[r>>2]=4;f=0.0}}while(0);c=l;return+f}function dm(e,i,r){e=e|0;i=i|0;r=r|0;var f=0.0,n=0,a=0,s=0,l=0;l=c;c=c+16|0;s=l;do{if((e|0)==(i|0)){t[r>>2]=4;f=0.0}else{n=Bg()|0;a=t[n>>2]|0;t[n>>2]=0;f=+Fy(e,s,Vb()|0);e=t[n>>2]|0;if(!e)t[n>>2]=a;if((t[s>>2]|0)!=(i|0)){t[r>>2]=4;f=0.0;break}if((e|0)==34)t[r>>2]=4}}while(0);c=l;return+f}function bm(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0;o=c;c=c+16|0;l=o;do{if((e|0)!=(i|0)){if((f[e>>0]|0)==45){t[r>>2]=4;n=0;e=0;break}a=Bg()|0;s=t[a>>2]|0;t[a>>2]=0;e=Rg(e,l,n,Vb()|0)|0;n=t[a>>2]|0;if(!n)t[a>>2]=s;if((t[l>>2]|0)!=(i|0)){t[r>>2]=4;n=0;e=0;break}if((n|0)==34){t[r>>2]=4;n=-1;e=-1}else n=O}else{t[r>>2]=4;n=0;e=0}}while(0);O=n;c=o;return e|0}function _m(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;u=c;c=c+16|0;o=u;do{if((e|0)!=(i|0)){if((f[e>>0]|0)==45){t[r>>2]=4;e=0;break}s=Bg()|0;l=t[s>>2]|0;t[s>>2]=0;e=Rg(e,o,n,Vb()|0)|0;n=O;a=t[s>>2]|0;if(!a)t[s>>2]=l;if((t[o>>2]|0)!=(i|0)){t[r>>2]=4;e=0;break}if(n>>>0>0|(n|0)==0&e>>>0>4294967295|(a|0)==34){t[r>>2]=4;e=-1;break}else break}else{t[r>>2]=4;e=0}}while(0);c=u;return e|0}function km(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;u=c;c=c+16|0;o=u;do{if((e|0)!=(i|0)){if((f[e>>0]|0)==45){t[r>>2]=4;e=0;break}s=Bg()|0;l=t[s>>2]|0;t[s>>2]=0;e=Rg(e,o,n,Vb()|0)|0;n=O;a=t[s>>2]|0;if(!a)t[s>>2]=l;if((t[o>>2]|0)!=(i|0)){t[r>>2]=4;e=0;break}if(n>>>0>0|(n|0)==0&e>>>0>4294967295|(a|0)==34){t[r>>2]=4;e=-1;break}else break}else{t[r>>2]=4;e=0}}while(0);c=u;return e|0}function wm(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0;u=c;c=c+16|0;o=u;do{if((e|0)!=(i|0)){if((f[e>>0]|0)==45){t[r>>2]=4;e=0;break}s=Bg()|0;l=t[s>>2]|0;t[s>>2]=0;e=Rg(e,o,n,Vb()|0)|0;n=O;a=t[s>>2]|0;if(!a)t[s>>2]=l;if((t[o>>2]|0)!=(i|0)){t[r>>2]=4;e=0;break}if(n>>>0>0|(n|0)==0&e>>>0>65535|(a|0)==34){t[r>>2]=4;e=-1;break}else{e=e&65535;break}}else{t[r>>2]=4;e=0}}while(0);c=u;return e|0}function mm(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0;o=c;c=c+16|0;l=o;do{if((e|0)!=(i|0)){a=Bg()|0;s=t[a>>2]|0;t[a>>2]=0;e=Cg(e,l,f,Vb()|0)|0;f=O;n=t[a>>2]|0;if(!n)t[a>>2]=s;if((t[l>>2]|0)!=(i|0)){t[r>>2]=4;f=0;e=0;break}if((n|0)==34){t[r>>2]=4;l=(f|0)>0|(f|0)==0&e>>>0>0;O=l?2147483647:-2147483648;c=o;return(l?-1:0)|0}}else{t[r>>2]=4;f=0;e=0}}while(0);O=f;c=o;return e|0}function vm(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0;o=c;c=c+16|0;l=o;e:do{if((e|0)==(i|0)){t[r>>2]=4;e=0}else{a=Bg()|0;s=t[a>>2]|0;t[a>>2]=0;e=Cg(e,l,f,Vb()|0)|0;f=O;n=t[a>>2]|0;if(!n)t[a>>2]=s;if((t[l>>2]|0)!=(i|0)){t[r>>2]=4;e=0;break}do{if((n|0)==34){t[r>>2]=4;if((f|0)>0|(f|0)==0&e>>>0>0){e=2147483647;break e}}else{if((f|0)<-1|(f|0)==-1&e>>>0<2147483648){t[r>>2]=4;break}if((f|0)>0|(f|0)==0&e>>>0>2147483647){t[r>>2]=4;e=2147483647;break e}else break e}}while(0);e=-2147483648}}while(0);c=o;return e|0}function pm(){}function gm(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;f=i-f-(r>>>0>e>>>0|0)>>>0;return(O=f,e-r>>>0|0)|0}function ym(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;n=e+r|0;if((r|0)>=20){i=i&255;s=e&3;l=i|i<<8|i<<16|i<<24;a=n&~3;if(s){s=e+4-s|0;while((e|0)<(s|0)){f[e>>0]=i;e=e+1|0}}while((e|0)<(a|0)){t[e>>2]=l;e=e+4|0}}while((e|0)<(n|0)){f[e>>0]=i;e=e+1|0}return e-r|0}function Mm(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;r=e+r>>>0;return(O=i+f+(r>>>0<e>>>0|0)>>>0,r|0)|0}function Am(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){O=i>>>r;return e>>>r|(i&(1<<r)-1)<<32-r}O=0;return i>>>r-32|0}function Em(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if((r|0)>=4096)return Ze(e|0,i|0,r|0)|0;n=e|0;if((e&3)==(i&3)){while(e&3){if(!r)return n|0;f[e>>0]=f[i>>0]|0;e=e+1|0;i=i+1|0;r=r-1|0}while((r|0)>=4){t[e>>2]=t[i>>2];e=e+4|0;i=i+4|0;r=r-4|0}}while((r|0)>0){f[e>>0]=f[i>>0]|0;e=e+1|0;i=i+1|0;r=r-1|0}return n|0}function Sm(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){O=i<<r|(e&(1<<r)-1<<32-r)>>>32-r;return e<<r}O=e<<r-32;return 0}function Tm(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if((i|0)<(e|0)&(e|0)<(i+r|0)){n=e;i=i+r|0;e=e+r|0;while((r|0)>0){e=e-1|0;i=i-1|0;r=r-1|0;f[e>>0]=f[i>>0]|0}e=n}else Em(e,i,r)|0;return e|0}function Rm(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){O=i>>r;return e>>>r|(i&(1<<r)-1)<<32-r}O=(i|0)<0?-1:0;return i>>r-32|0}function Cm(e){e=e|0;var i=0;i=f[_+(e&255)>>0]|0;if((i|0)<8)return i|0;i=f[_+(e>>8&255)>>0]|0;if((i|0)<8)return i+8|0;i=f[_+(e>>16&255)>>0]|0;if((i|0)<8)return i+16|0;return(f[_+(e>>>24)>>0]|0)+24|0}function Pm(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,t=0;t=e&65535;n=i&65535;r=re(n,t)|0;f=e>>>16;e=(r>>>16)+(re(n,f)|0)|0;n=i>>>16;i=re(n,t)|0;return(O=(e>>>16)+(re(n,f)|0)+(((e&65535)+i|0)>>>16)|0,e+i<<16|r&65535|0)|0}function Im(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,t=0,a=0,s=0,l=0,o=0;o=i>>31|((i|0)<0?-1:0)<<1;l=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;t=f>>31|((f|0)<0?-1:0)<<1;n=((f|0)<0?-1:0)>>31|((f|0)<0?-1:0)<<1;s=gm(o^e,l^i,o,l)|0;a=O;e=t^o;i=n^l;return gm((zm(s,a,gm(t^r,n^f,t,n)|0,O,0)|0)^e,O^i,e,i)|0}function Om(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0;n=c;c=c+16|0;l=n|0;s=i>>31|((i|0)<0?-1:0)<<1;a=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;u=f>>31|((f|0)<0?-1:0)<<1;o=((f|0)<0?-1:0)>>31|((f|0)<0?-1:0)<<1;e=gm(s^e,a^i,s,a)|0;i=O;zm(e,i,gm(u^r,o^f,u,o)|0,O,l)|0;f=gm(t[l>>2]^s,t[l+4>>2]^a,s,a)|0;r=O;c=n;return(O=r,f)|0}function xm(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,t=0;n=e;t=r;r=Pm(n,t)|0;e=O;return(O=(re(i,t)|0)+(re(f,n)|0)+e|e&0,r|0|0)|0}function Lm(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;return zm(e,i,r,f,0)|0}function Bm(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0;a=c;c=c+16|0;n=a|0;zm(e,i,r,f,n)|0;c=a;return(O=t[n+4>>2]|0,t[n>>2]|0)|0}function zm(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0;c=e;o=i;u=o;s=r;d=f;l=d;if(!u){a=(n|0)!=0;if(!l){if(a){t[n>>2]=(c>>>0)%(s>>>0);t[n+4>>2]=0}d=0;n=(c>>>0)/(s>>>0)>>>0;return(O=d,n)|0}else{if(!a){d=0;n=0;return(O=d,n)|0}t[n>>2]=e|0;t[n+4>>2]=i&0;d=0;n=0;return(O=d,n)|0}}a=(l|0)==0;do{if(s){if(!a){a=(ne(l|0)|0)-(ne(u|0)|0)|0;if(a>>>0<=31){h=a+1|0;l=31-a|0;i=a-31>>31;s=h;e=c>>>(h>>>0)&i|u<<l;i=u>>>(h>>>0)&i;a=0;l=c<<l;break}if(!n){d=0;n=0;return(O=d,n)|0}t[n>>2]=e|0;t[n+4>>2]=o|i&0;d=0;n=0;return(O=d,n)|0}a=s-1|0;if(a&s){l=(ne(s|0)|0)+33-(ne(u|0)|0)|0;_=64-l|0;h=32-l|0;o=h>>31;b=l-32|0;i=b>>31;s=l;e=h-1>>31&u>>>(b>>>0)|(u<<h|c>>>(l>>>0))&i;i=i&u>>>(l>>>0);a=c<<_&o;l=(u<<_|c>>>(b>>>0))&o|c<<h&l-33>>31;break}if(n){t[n>>2]=a&c;t[n+4>>2]=0}if((s|0)==1){b=o|i&0;_=e|0|0;return(O=b,_)|0}else{_=Cm(s|0)|0;b=u>>>(_>>>0)|0;_=u<<32-_|c>>>(_>>>0)|0;return(O=b,_)|0}}else{if(a){if(n){t[n>>2]=(u>>>0)%(s>>>0);t[n+4>>2]=0}b=0;_=(u>>>0)/(s>>>0)>>>0;return(O=b,_)|0}if(!c){if(n){t[n>>2]=0;t[n+4>>2]=(u>>>0)%(l>>>0)}b=0;_=(u>>>0)/(l>>>0)>>>0;return(O=b,_)|0}a=l-1|0;if(!(a&l)){if(n){t[n>>2]=e|0;t[n+4>>2]=a&u|i&0}b=0;_=u>>>((Cm(l|0)|0)>>>0);return(O=b,_)|0}a=(ne(l|0)|0)-(ne(u|0)|0)|0;if(a>>>0<=30){i=a+1|0;l=31-a|0;s=i;e=u<<l|c>>>(i>>>0);i=u>>>(i>>>0);a=0;l=c<<l;break}if(!n){b=0;_=0;return(O=b,_)|0}t[n>>2]=e|0;t[n+4>>2]=o|i&0;b=0;_=0;return(O=b,_)|0}}while(0);if(!s){u=l;o=0;l=0}else{h=r|0|0;c=d|f&0;u=Mm(h|0,c|0,-1,-1)|0;r=O;o=l;l=0;do{f=o;o=a>>>31|o<<1;a=l|a<<1;f=e<<1|f>>>31|0;d=e>>>31|i<<1|0;gm(u,r,f,d)|0;_=O;b=_>>31|((_|0)<0?-1:0)<<1;l=b&1;e=gm(f,d,b&h,(((_|0)<0?-1:0)>>31|((_|0)<0?-1:0)<<1)&c)|0;i=O;s=s-1|0}while((s|0)!=0);u=o;o=0}s=0;if(n){t[n>>2]=e;t[n+4>>2]=i}b=(a|0)>>>31|(u|s)<<1|(s<<1|a>>>31)&0|o;_=(a<<1|0>>>31)&-2|l;return(O=b,_)|0}function Dm(e,i,r,f,n,t,a,s){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;s=s|0;return rM[e&15](i|0,r|0,f|0,n|0,t|0,a|0,s|0)|0}function Nm(e,i,r,f,n,t){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;fM[e&15](i|0,r|0,f|0,n|0,t|0)}function Fm(e,i,r,f,n,t,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=+a;return nM[e&3](i|0,r|0,f|0,n|0,t|0,+a)|0}function Hm(e,i){e=e|0;i=i|0;tM[e&255](i|0)}function Um(e,i,r){e=e|0;i=i|0;r=r|0;aM[e&127](i|0,r|0)}function jm(e,i,r,f,n,t,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;return sM[e&63](i|0,r|0,f|0,n|0,t|0,a|0)|0}function Ym(e,i){e=e|0;i=i|0;return lM[e&127](i|0)|0}function qm(e,i,r,f,n,t,a,s,l,o,u,c){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;return oM[e&3](i|0,r|0,f|0,n|0,t|0,a|0,s|0,l|0,o|0,u|0,c|0)|0}function $m(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;return uM[e&63](i|0,r|0,f|0)|0}function Vm(e,i,r,f,n,t,a,s,l,o,u,c,h,d,b,_){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;h=h|0;d=d|0;b=b|0;_=_|0;cM[e&3](i|0,r|0,f|0,n|0,t|0,a|0,s|0,l|0,o|0,u|0,c|0,h|0,d|0,b|0,_|0)}function Xm(e,i,r,f,n,t,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;hM[e&15](i|0,r|0,f|0,n|0,t|0,a|0)}function Gm(e,i,r,f,n,t,a,s){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;s=s|0;dM[e&7](i|0,r|0,f|0,n|0,t|0,a|0,s|0)}function Km(e,i,r,f,n,t,a,s,l,o,u){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;bM[e&7](i|0,r|0,f|0,n|0,t|0,a|0,s|0,l|0,o|0,u|0)}function Wm(e,i,r){e=e|0;i=i|0;r=r|0;return _M[e&63](i|0,r|0)|0}function Zm(e,i,r,f,n,t){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;return kM[e&31](i|0,r|0,f|0,n|0,t|0)|0}function Jm(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;return+wM[e&3](i|0,r|0,f|0)}function Qm(e){e=e|0;return mM[e&15]()|0}function ev(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;return vM[e&31](i|0,r|0,f|0,n|0)|0}function iv(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;pM[e&15](i|0,r|0,f|0)}function rv(e){e=e|0;gM[e&7]()}function fv(e,i,r,f,n,t,a,s,l){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;s=s|0;l=l|0;return yM[e&15](i|0,r|0,f|0,n|0,t|0,a|0,s|0,l|0)|0}function nv(e,i,r,f,n,t){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=+t;return MM[e&7](i|0,r|0,f|0,n|0,+t)|0}function tv(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;AM[e&63](i|0,r|0,f|0,n|0)}function av(e,i,r,f,n,t,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;te(0);return 0}function sv(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;te(1)}function lv(e,i,r,f,n,t){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=+t;te(2);return 0}function ov(e){e=e|0;te(3)}function uv(e,i){e=e|0;i=i|0;te(4)}function cv(e,i,r,f,n,t){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;te(5);return 0}function hv(e){e=e|0;te(6);return 0}function dv(e){e=e|0;return ti(e|0)|0}function bv(e){e=e|0;return pi(e|0)|0}function _v(e){e=e|0;return ui(e|0)|0}function kv(e,i,r,f,n,t,a,s,l,o,u){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;te(7);return 0}function wv(e,i,r){e=e|0;i=i|0;r=r|0;te(8);return 0}function mv(e,i,r,f,n,t,a,s,l,o,u,c,h,d,b){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;h=h|0;d=d|0;b=b|0;te(9)}function vv(e,i,r,f,n,t){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;te(10)}function pv(e,i,r,f,n,t,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;te(11)}function gv(e,i,r,f,n,t,a,s,l,o){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;s=s|0;l=l|0;o=o|0;te(12)}function yv(e,i){e=e|0;i=i|0;te(13);return 0}function Mv(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;te(14);return 0}function Av(e,i,r){e=e|0;i=i|0;r=r|0;te(15);return 0.0}function Ev(){te(16);return 0}function Sv(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;te(17);return 0}function Tv(e,i,r){e=e|0;i=i|0;r=r|0;te(18)}function Rv(e,i,r){e=e|0;i=i|0;r=r|0;bi(e|0,i|0,r|0)}function Cv(){te(19)}function Pv(){mi()}function Iv(){Je()}function Ov(){_i()}function xv(e,i,r,f,n,t,a,s){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;s=s|0;te(20);return 0}function Lv(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=+n;te(21);return 0}function Bv(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;te(22)}function zv(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+32|0;o=h;op(o,255,0);u=e+152|0;if(((t[o+4>>2]|0)==(t[u>>2]|0)?(t[o+8>>2]|0)==(t[e+156>>2]|0):0)?(t[o+12>>2]|0)==(t[e+160>>2]|0):0){u=t[8900]|0;t[e+4580>>2]=u+(((t[8901]|0)-u|0)>>>1);c=h;return}r=e+4584|0;n=e+4588|0;a=t[n>>2]|0;i=t[r>>2]|0;s=a-i|0;if(s>>>0>=512){if(s>>>0>512?(l=i+512|0,(a|0)!=(l|0)):0)t[n>>2]=l}else{Yf(r,512-s|0);i=t[r>>2]|0}o=e+4580|0;t[o>>2]=i+256;l=e+160|0;a=e+156|0;s=-256;while(1){i=t[l>>2]|0;if((s|0)>(0-i|0)){r=t[a>>2]|0;if((s|0)>(0-r|0)){n=t[u>>2]|0;if((s|0)>(0-n|0))if((s|0)>=0){if((s|0)<1){f[(t[o>>2]|0)+s>>0]=0;s=1;continue}if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;f[(t[o>>2]|0)+s>>0]=i;s=s+1|0;if((s|0)==256)break}c=h;return}function Dv(e){e=e|0;var i=0,r=0;t[e>>2]=35660;i=t[e+4608>>2]|0;if(i){r=e+4612|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}e=e+88|0;i=t[e>>2]|0;t[e>>2]=0;if(!i)return;tM[t[(t[i>>2]|0)+4>>2]&255](i);return}function Nv(e){e=e|0;var i=0,r=0;t[e>>2]=35660;i=t[e+4608>>2]|0;if(i){r=e+4612|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}t[e>>2]=36736;i=t[e+92>>2]|0;if(i){r=e+96|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i)}r=e+88|0;i=t[r>>2]|0;t[r>>2]=0;if(!i){Bp(e);return}tM[t[(t[i>>2]|0)+4>>2]&255](i);Bp(e);return}function Fv(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;y=c;c=c+352|0;M=y+328|0;A=y+192|0;r=y+343|0;n=y+342|0;a=y+341|0;s=y+340|0;_=y+176|0;o=y+168|0;u=y+160|0;h=y+152|0;g=y;v=y+136|0;if((t[e+28>>2]|0)!=0?(t[e+20>>2]|0)!=1:0){m=e+4|0;p=e+32|0;l=t[p>>2]|0;if(!l){e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[r>>0]|0;Ce(44,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}e=t[e+12>>2]|0;if((e|0)==8)switch(l|0){case 1:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[n>>0]|0;Ce(45,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[a>>0]|0;Ce(46,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(48)|0;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];f[M>>0]=f[s>>0]|0;Ce(47,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=A+56|0;a=A+4|0;t[A>>2]=36160;t[l>>2]=36180;w=0;ce(62,A+56|0,a|0);y=w;w=0;if(y&1){E=je()|0;nd(l);Qe(E|0)}t[A+128>>2]=0;t[A+132>>2]=-1;t[A>>2]=36200;t[A+56>>2]=36220;w=0;ue(180,a|0);y=w;w=0;do{if(y&1)e=je()|0;else{t[a>>2]=36236;s=A+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[A+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);y=w;w=0;if(y&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,A|0,49007,21)|0;M=w;w=0;do{if((!(M&1)?(w=0,d=pe(36,e|0,t[p>>2]|0)|0,M=w,w=0,!(M&1)):0)?(w=0,_e(28,d|0,50997,18)|0,M=w,w=0,!(M&1)):0){n=Ue(16)|0;w=0;ce(64,_|0,a|0);M=w;w=0;if(!(M&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,_|0);M=w;w=0;if(M&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(_);if(!r)break}else e=je()|0;He(n|0)}else E=34}while(0);if((E|0)==34)e=je()|0;t[A>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}if((e|0)<=8){e=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,e|0,8,35648);E=w;w=0;if(!(E&1))bi(e|0,824,96);E=je()|0;He(e|0);Qe(E|0)}r=16-e|0;switch(l|0){case 1:{e=Lp(60)|0;t[o>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[o>>2];t[M+4>>2]=t[o+4>>2];Ce(41,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 2:{e=Lp(60)|0;t[u>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[u>>2];t[M+4>>2]=t[u+4>>2];Ce(42,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}case 3:{e=Lp(60)|0;t[h>>2]=r;w=0;t[A>>2]=t[i>>2];t[A+4>>2]=t[i+4>>2];t[A+8>>2]=t[i+8>>2];t[M>>2]=t[h>>2];t[M+4>>2]=t[h+4>>2];Ce(43,e|0,A|0,m|0,M|0);E=w;w=0;if(!(E&1)){E=e;c=y;return E|0}E=je()|0;Bp(e);Qe(E|0)}default:{l=g+56|0;a=g+4|0;t[g>>2]=36160;t[l>>2]=36180;w=0;ce(62,g+56|0,a|0);A=w;w=0;if(A&1){E=je()|0;nd(l);Qe(E|0)}t[g+128>>2]=0;t[g+132>>2]=-1;t[g>>2]=36200;t[g+56>>2]=36220;w=0;ue(180,a|0);A=w;w=0;do{if(A&1)e=je()|0;else{t[a>>2]=36236;s=g+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[g+52>>2]=16;t[M>>2]=0;t[M+4>>2]=0;t[M+8>>2]=0;w=0;ce(63,a|0,M|0);A=w;w=0;if(A&1){e=je()|0;xh(M);xh(s);cd(a);break}xh(M);w=0;e=_e(28,g|0,49007,21)|0;A=w;w=0;do{if((!(A&1)?(w=0,b=pe(36,e|0,t[p>>2]|0)|0,A=w,w=0,!(A&1)):0)?(w=0,_e(28,b|0,50997,18)|0,A=w,w=0,!(A&1)):0){n=Ue(16)|0;w=0;ce(64,v|0,a|0);A=w;w=0;if(!(A&1)){if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ce(36,n|0,9,35648,v|0);A=w;w=0;if(A&1)r=1;else{w=0;Ee(6,n|0,824,96);w=0;r=0}e=je()|0;xh(v);if(!r)break}else e=je()|0;He(n|0)}else E=64}while(0);if((E|0)==64)e=je()|0;t[g>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(l);E=e;Qe(E|0)}}while(0);E=e;nd(l);Qe(E|0)}}}r=t[i+4>>2]|0;n=Lp(16)|0;e=t[e+16>>2]|0;if(!r){E=t[i>>2]|0;t[n>>2]=36132;t[n+4>>2]=E;t[n+8>>2]=1;t[n+12>>2]=e;E=n;c=y;return E|0}else{t[n>>2]=36108;t[n+4>>2]=r;t[n+8>>2]=1;t[n+12>>2]=e;E=n;c=y;return E|0}return 0}function Hv(e,i){e=e|0;i=i|0;var r=0,a=0,s=0,l=0,o=0,u=0,h=0;o=c;c=c+32|0;h=o;op(h,t[e+128>>2]|0,t[e+136>>2]|0);u=t[i+4>>2]|0;l=t[i+8>>2]|0;l=(l|0)==0?t[h+8>>2]|0:l;s=t[i+12>>2]|0;s=(s|0)==0?t[h+12>>2]|0:s;r=t[i+16>>2]|0;a=t[h+16>>2]|0;t[e+176>>2]=(u|0)==0?t[h+4>>2]|0:u;t[e+180>>2]=l;t[e+184>>2]=s;Gv(e);s=e+132|0;i=(t[s>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;l=0;do{t[e+188+(l*12|0)>>2]=i;t[e+188+(l*12|0)+4>>2]=0;n[e+188+(l*12|0)+8>>1]=0;n[e+188+(l*12|0)+10>>1]=1;l=l+1|0}while((l|0)!=365);u=(t[s>>2]|0)+32|0;u=(u|0)<128?2:(u|0)/64|0;h=((r|0)==0?a:r)&255;t[e+4568>>2]=u;t[e+4572>>2]=0;f[e+4576>>0]=h;f[e+4577>>0]=1;f[e+4578>>0]=0;t[e+4580>>2]=u;t[e+4584>>2]=1;f[e+4588>>0]=h;f[e+4589>>0]=1;f[e+4590>>0]=0;t[e+4592>>2]=0;c=o;return}function Uv(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;l=e+88|0;s=t[i>>2]|0;t[i>>2]=0;i=t[l>>2]|0;t[l>>2]=s;if(i)tM[t[(t[i>>2]|0)+4>>2]&255](i);l=n+4|0;s=t[l>>2]|0;f[e+4620>>0]=a&1;i=e+156|0;t[i>>2]=t[r>>2];t[i+4>>2]=t[r+4>>2];t[i+8>>2]=t[r+8>>2];t[i+12>>2]=t[r+12>>2];Cf(e,n);jv(e);i=t[e+116>>2]|0;e=t[e+112>>2]|0;while(1){a=i+-1|0;r=(f[a>>0]|0)==-1?7:8;if((e|0)<(r|0))break;else{i=a;e=e-r|0}}i=i-s|0;a=t[l>>2]|0;if(!a)return;t[l>>2]=a+i;n=n+8|0;t[n>>2]=(t[n>>2]|0)-i;return}function jv(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;S=c;c=c+32|0;R=S+12|0;E=S;o=e+172|0;A=(t[o>>2]|0)+4|0;if((t[e+28>>2]|0)==1)u=t[e+20>>2]|0;else u=1;i=re(u<<1,A)|0;t[R>>2]=0;C=R+4|0;t[C>>2]=0;t[R+8>>2]=0;e:do{if(i){if(!((i|0)<0?(w=0,ue(178,R|0),T=w,w=0,T&1):0))M=6;if((M|0)==6?(w=0,r=de(67,i|0)|0,T=w,w=0,!(T&1)):0){t[C>>2]=r;t[R>>2]=r;t[R+8>>2]=r+i;while(1){f[r>>0]=0;r=(t[C>>2]|0)+1|0;t[C>>2]=r;i=i+-1|0;if(!i)break e}}r=je()|0;i=t[R>>2]|0;if(!i)Qe(r|0);if((t[C>>2]|0)!=(i|0))t[C>>2]=i;Bp(i);Qe(r|0)}}while(0);t[E>>2]=0;T=E+4|0;t[T>>2]=0;t[E+8>>2]=0;do{if(!u)M=19;else{if(!(u>>>0>1073741823?(w=0,ue(178,E|0),y=w,w=0,y&1):0))M=17;if((M|0)==17?(n=u<<2,w=0,a=de(67,n|0)|0,y=w,w=0,!(y&1)):0){t[E>>2]=a;M=a+(u<<2)|0;t[E+8>>2]=M;ym(a|0,0,n|0)|0;t[T>>2]=M;M=19;break}r=je()|0;i=t[E>>2]|0;n=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-n|0)>>>2)<<2);Bp(i)}}}while(0);if((M|0)==19){h=e+8|0;i=t[h>>2]|0;e:do{if((i|0)>0){d=e+4596|0;b=re(u,A)|0;_=b+1|0;k=e+4600|0;m=e+160|0;v=e+168|0;p=e+164|0;g=e+156|0;y=e+88|0;l=e+4592|0;if((u|0)>0)s=0;else{s=0;while(1){a=t[R>>2]|0;r=a+1|0;t[d>>2]=r;n=a+_|0;t[k>>2]=n;if(!(s&1))r=_;else{t[d>>2]=n;t[k>>2]=r;r=1}u=t[m>>2]|0;if((u|0)<=(s|0)?(s|0)<((t[v>>2]|0)+u|0):0){u=t[y>>2]|0;w=0;Ce(t[(t[u>>2]|0)+8>>2]|0,u|0,a+(r+((t[g>>2]|0)-b))|0,t[p>>2]|0,A|0);u=w;w=0;if(u&1)break;i=t[h>>2]|0}s=s+1|0;if((s|0)>=(i|0)){M=50;break e}}r=je()|0;break}i:while(1){r=t[R>>2]|0;i=r+1|0;t[d>>2]=i;r=r+_|0;t[k>>2]=r;if(s&1){t[d>>2]=r;t[k>>2]=i;i=r}a=t[E>>2]|0;r=i;n=0;do{t[l>>2]=t[a+(n<<2)>>2];M=t[o>>2]|0;f[r+M>>0]=f[r+(M+-1)>>0]|0;f[(t[k>>2]|0)+-1>>0]=f[t[d>>2]>>0]|0;w=0;ce(83,e|0,0);M=w;w=0;if(M&1){M=38;break i}a=t[E>>2]|0;t[a+(n<<2)>>2]=t[l>>2];r=(t[d>>2]|0)+A|0;t[d>>2]=r;i=t[k>>2]|0;t[k>>2]=i+A;n=n+1|0}while((n|0)<(u|0));M=t[m>>2]|0;if(((M|0)<=(s|0)?(s|0)<((t[v>>2]|0)+M|0):0)?(M=t[y>>2]|0,w=0,Ce(t[(t[M>>2]|0)+8>>2]|0,M|0,i+(A+((t[g>>2]|0)-b))|0,t[p>>2]|0,A|0),M=w,w=0,M&1):0){M=30;break}s=s+1|0;if((s|0)>=(t[h>>2]|0)){M=50;break e}}if((M|0)==30){r=je()|0;break}else if((M|0)==38){r=je()|0;break}}else M=50}while(0);do{if((M|0)==50){w=0;ue(183,e|0);e=w;w=0;if(e&1){r=je()|0;break}i=t[E>>2]|0;r=i;if(i){n=t[T>>2]|0;if((n|0)!=(i|0))t[T>>2]=n+(~((n+-4-r|0)>>>2)<<2);Bp(i)}i=t[R>>2]|0;if(!i){c=S;return}if((t[C>>2]|0)!=(i|0))t[C>>2]=i;Bp(i);c=S;return}}while(0);i=t[E>>2]|0;n=i;if(i){a=t[T>>2]|0;if((a|0)!=(i|0))t[T>>2]=a+(~((a+-4-n|0)>>>2)<<2);Bp(i)}}i=t[R>>2]|0;if(!i)Qe(r|0);if((t[C>>2]|0)!=(i|0))t[C>>2]=i;Bp(i);Qe(r|0)}function Yv(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0;_=e+4596|0;r=t[_>>2]|0;v=e+172|0;i=t[v>>2]|0;if((i|0)<=0)return;k=e+4600|0;w=e+4604|0;m=e+4592|0;u=r;l=a[r+-1>>0]|0;r=a[r>>0]|0;b=0;while(1){h=t[k>>2]|0;o=f[h+(b+-1)>>0]|0;d=o&255;s=b+1|0;n=a[u+s>>0]|0;c=t[w>>2]|0;u=r-l|0;l=l-d|0;c=((((f[c+(n-r)>>0]|0)*9|0)+(f[c+u>>0]|0)|0)*9|0)+(f[c+l>>0]|0)|0;h=h+b|0;if(!c){i=$v(e,o,h,i-b|0)|0;r=i+b|0;if((r|0)!=(t[v>>2]|0)){d=Vv(e,d,a[(t[_>>2]|0)+r>>0]|0)|0;f[(t[k>>2]|0)+r>>0]=d;d=t[m>>2]|0;t[m>>2]=(d|0)<1?0:d+-1|0;i=i+1|0}s=i+b|0;n=t[_>>2]|0;r=a[n+(s+-1)>>0]|0;n=a[n+s>>0]|0}else{i=r-d>>31;if((i^l|0)<0)i=r;else i=d+((i^u|0)<0?0:u)|0;d=qv(e,c,a[h>>0]|0,i,0)|0;f[(t[k>>2]|0)+b>>0]=d}i=t[v>>2]|0;if((i|0)<=(s|0))break;u=t[_>>2]|0;l=r;r=n;b=s}return}function qv(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,m=0,v=0;v=i>>31;c=(v^i)-v|0;_=e+188+(c*12|0)+10|0;r=n[_>>1]|0;b=e+188+(c*12|0)|0;s=t[b>>2]|0;if((r|0)<(s|0))if((r<<1|0)<(s|0))if((r<<2|0)<(s|0))if((r<<3|0)<(s|0))if((r<<4|0)<(s|0)){i=5;while(1)if((r<<i|0)<(s|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;d=e+188+(c*12|0)+8|0;r=(n[d>>1]^v)-v+a|0;m=e+128|0;s=t[m>>2]|0;if((r&s|0)==(r|0))h=r;else h=s&~(r>>31);r=e+112|0;if((t[r>>2]|0)<8)Uf(e);s=e+108|0;a=t[s>>2]|0;l=a>>>24;o=t[2832+(i<<11)+(l<<3)+4>>2]|0;if(!o){u=t[e+148>>2]|0;s=t[e+140>>2]|0;r=ka(e)|0;if((r|0)<(u+-1-s|0)){if(i)r=(wa(e,i)|0)+(r<<i)|0}else r=(wa(e,s)|0)+1|0;r=r<<31>>31^r>>1;if((((r|0)>-1?r:0-r|0)|0)>65535){r=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,r|0,5,35648);e=w;w=0;if(e&1){e=je()|0;He(r|0);Qe(e|0)}else bi(r|0,824,96)}}else{t[r>>2]=(t[r>>2]|0)-o;t[s>>2]=a<<o;r=t[2832+(i<<11)+(l<<3)>>2]|0}u=e+136|0;a=t[u>>2]|0;if(!i){if(!a)s=(t[e+188+(c*12|0)+4>>2]<<1)+-1+(n[_>>1]|0)>>31;else s=0;o=s^r}else o=r;i=t[e+152>>2]|0;s=(t[b>>2]|0)+((o|0)>-1?o:0-o|0)|0;l=e+188+(c*12|0)+4|0;r=(t[l>>2]|0)+(re(a<<1|1,o)|0)|0;a=n[_>>1]|0;if((a|0)==(i|0)){s=s>>1;r=r>>1;a=i>>1}t[b>>2]=s;i=a+1|0;n[_>>1]=i;s=i+r|0;if((s|0)>=1){if((r|0)>0){r=r-i|0;_=n[d>>1]|0;n[d>>1]=(_<<16>>16<127&1)+(_&65535);r=(r|0)>0?0:r}}else{r=n[d>>1]|0;n[d>>1]=(r&65535)-(r<<16>>16>-128&1);r=(s|0)>(~a|0)?s:0-a|0}t[l>>2]=r;i=t[u>>2]|0;a=i<<1|1;s=(re(a,(o^v)-v|0)|0)+h|0;if((s|0)>=(0-i|0)){r=t[m>>2]|0;if((r+i|0)<(s|0))s=s-(re(t[e+132>>2]|0,a)|0)|0}else{s=(re(t[e+132>>2]|0,a)|0)+s|0;r=t[m>>2]|0}if((s&r|0)==(s|0)){e=s;e=e&255;return e|0}e=r&~(s>>31);e=e&255;return e|0}function $v(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;o=e+112|0;u=e+108|0;c=e+4592|0;a=t[o>>2]|0;s=0;while(1){if((a|0)<1){Uf(e);a=t[o>>2]|0}l=t[u>>2]|0;a=a+-1|0;t[o>>2]=a;t[u>>2]=l<<1;if((l|0)>=0){h=8;break}l=t[c>>2]|0;d=1<<t[36476+(l<<2)>>2];b=n-s|0;b=(d|0)<(b|0)?d:b;s=b+s|0;if((b|0)==(d|0))t[c>>2]=(l|0)>30?31:l+1|0;if((s|0)==(n|0)){a=n;break}}if((h|0)==8)if((s|0)!=(n|0)){a=t[c>>2]|0;if((a+-4|0)>>>0<28)a=wa(e,t[36476+(a<<2)>>2]|0)|0;else a=0;a=a+s|0;if((a|0)>(n|0)){a=Ue(16)|0;if((f[8]|0)==0?(ze(8)|0)!=0:0){di(72,35648,k|0)|0;qe(8)}w=0;Ee(7,a|0,5,35648);b=w;w=0;if(b&1){b=je()|0;He(a|0);Qe(b|0)}else bi(a|0,824,96)}}else a=n;if((a|0)<=0)return a|0;ym(r|0,i|0,a|0)|0;return a|0}function Vv(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0;a=i-r|0;s=e+128|0;f=e+136|0;if((((a|0)>-1?a:0-a|0)|0)>(t[f>>2]|0)){i=re(Xv(e,e+4568|0)|0,r-i>>31|1)|0;n=t[f>>2]|0;a=n<<1|1;i=(re(i,a)|0)+r|0;if((i|0)>=(0-n|0)){f=t[s>>2]|0;if((f+n|0)<(i|0))i=i-(re(t[e+132>>2]|0,a)|0)|0}else{i=(re(t[e+132>>2]|0,a)|0)+i|0;f=t[s>>2]|0}if((i&f|0)==(i|0)){e=i;e=e&255;return e|0}e=f&~(i>>31);e=e&255;return e|0}else{r=Xv(e,e+4580|0)|0;a=t[f>>2]|0;n=a<<1|1;i=(re(n,r)|0)+i|0;if((i|0)>=(0-a|0)){f=t[s>>2]|0;if((f+a|0)<(i|0))i=i-(re(t[e+132>>2]|0,n)|0)|0}else{i=(re(t[e+132>>2]|0,n)|0)+i|0;f=t[s>>2]|0}if((i&f|0)==(i|0)){e=i;e=e&255;return e|0}e=f&~(i>>31);e=e&255;return e|0}return 0}function Xv(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0;h=i+9|0;r=a[h>>0]|0;l=i+4|0;s=(re(r>>>1,t[l>>2]|0)|0)+(t[i>>2]|0)|0;if((r|0)<(s|0)){n=0;do{r=r<<1;n=n+1|0}while((r|0)<(s|0))}else n=0;o=t[e+148>>2]|0;u=t[36476+(t[e+4592>>2]<<2)>>2]|0;r=t[e+140>>2]|0;s=ka(e)|0;do{if((s|0)<(o+-2-u-r|0))if(!n){n=t[l>>2]|0;e=n+s|0;r=e&1;e=(r+e|0)/2|0;c=8;break}else{u=(wa(e,n)|0)+(s<<n)|0;n=t[l>>2]|0;s=u+n|0;o=s&1;r=o;l=1;s=(o+s|0)/2|0;break}else{s=(wa(e,r)|0)+1|0;o=t[l>>2]|0;e=s+o|0;r=e&1;e=(r+e|0)/2|0;if(!n){n=o;c=8}else{u=s;l=1;s=e;n=o}}}while(0);if((c|0)==8){u=s;l=a[i+10>>0]<<1>>>0>=(a[h>>0]|0)>>>0;s=e}s=(r|0)!=0^l?s:0-s|0;if((s|0)<0){c=i+10|0;f[c>>0]=(a[c>>0]|0)+1}r=(u+1-n>>1)+(t[i>>2]|0)|0;t[i>>2]=r;n=f[h>>0]|0;if(n<<24>>24!=(f[i+8>>0]|0)){i=n;i=i&255;i=i+1|0;i=i&255;f[h>>0]=i;return s|0}t[i>>2]=r>>1;c=(n&255)>>>1;f[h>>0]=c;i=i+10|0;f[i>>0]=(a[i>>0]|0)>>>1;i=c;i=i&255;i=i+1|0;i=i&255;f[h>>0]=i;return s|0}function Gv(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0;_=c;c=c+32|0;n=_;b=e+136|0;e:do{if(!(t[b>>2]|0)){r=t[e+128>>2]|0;i=e+144|0;if((((r|0)==((1<<t[i>>2])+-1|0)?(op(n,r,0),(t[n+4>>2]|0)==(t[e+176>>2]|0)):0)?(t[n+8>>2]|0)==(t[e+180>>2]|0):0)?(t[n+12>>2]|0)==(t[e+184>>2]|0):0)switch(t[i>>2]|0){case 8:{b=t[8900]|0;t[e+4604>>2]=b+(((t[8901]|0)-b|0)>>>1);c=_;return}case 10:{b=t[8903]|0;t[e+4604>>2]=b+(((t[8904]|0)-b|0)>>>1);c=_;return}case 12:{b=t[8906]|0;t[e+4604>>2]=b+(((t[8907]|0)-b|0)>>>1);c=_;return}case 16:{b=t[8909]|0;t[e+4604>>2]=b+(((t[8910]|0)-b|0)>>>1);c=_;return}default:break e}}else i=e+144|0}while(0);d=1<<t[i>>2];r=e+4608|0;n=d<<1;a=e+4612|0;s=t[a>>2]|0;i=t[r>>2]|0;l=s-i|0;if(n>>>0<=l>>>0){if(n>>>0<l>>>0?(o=i+n|0,(s|0)!=(o|0)):0)t[a>>2]=o}else{Yf(r,n-l|0);i=t[r>>2]|0}h=e+4604|0;t[h>>2]=i+d;i=0-d|0;if((d|0)<=(i|0)){c=_;return}o=e+184|0;u=e+180|0;l=e+176|0;s=i;do{i=t[o>>2]|0;if((s|0)>(0-i|0)){r=t[u>>2]|0;if((s|0)>(0-r|0)){n=t[l>>2]|0;if((s|0)>(0-n|0)){a=t[b>>2]|0;if((s|0)>=(0-a|0))if((a|0)<(s|0))if((n|0)<=(s|0))if((r|0)>(s|0))i=2;else i=(i|0)>(s|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;f[(t[h>>2]|0)+s>>0]=i;s=s+1|0}while((s|0)!=(d|0));c=_;return}function Kv(e){e=e|0;Bp(e);return}function Wv(e){e=e|0;return 50767}function Zv(e,i,r){e=e|0;i=i|0;r=r|0;Ih(e,50754,12);return}function Jv(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0;m=c;c=c+16|0;v=m;t[v>>2]=0;p=v+4|0;t[p>>2]=0;t[v+8>>2]=0;_=v+8|0;w=0;a=de(67,1)|0;b=w;w=0;e:do{if((!(b&1)?(b=a+1|0,f[a>>0]=r,t[v>>2]=a,t[p>>2]=b,t[_>>2]=b,w=0,ce(84,v|0,i&65535|0),b=w,w=0,!(b&1)):0)?(w=0,ce(84,v|0,e&65535|0),b=w,w=0,!(b&1)):0){h=n&255;a=t[p>>2]|0;r=t[_>>2]|0;if(a>>>0>=r>>>0){i=t[v>>2]|0;e=i;l=a-e+1|0;if((l|0)<0){w=0;ue(178,v|0);b=w;w=0;if(b&1){k=52;break}e=t[v>>2]|0;r=t[_>>2]|0;i=e}u=i;a=r-u|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<l>>>0?l:a;r=t[p>>2]|0;o=r-u|0;if(!a){a=0;l=0}else k=12}else{o=t[p>>2]|0;a=2147483647;r=o;o=o-u|0;k=12}if((k|0)==12){w=0;l=de(67,a|0)|0;b=w;w=0;if(b&1){k=52;break}}f[l+o>>0]=h;d=r-u|0;b=l+(o-d)|0;Em(b|0,i|0,d|0)|0;t[v>>2]=b;t[p>>2]=l+(o+1);t[_>>2]=l+a;if(e)Bp(e)}else{f[a>>0]=h;t[p>>2]=(t[p>>2]|0)+1}i:do{if((n|0)>0){b=0;while(1){b=b+1|0;d=b&255;a=t[p>>2]|0;i=t[_>>2]|0;if(a>>>0>=i>>>0){e=t[v>>2]|0;r=e;l=a-r+1|0;if((l|0)<0){w=0;ue(178,v|0);h=w;w=0;if(h&1)break;e=t[v>>2]|0;r=e;i=t[_>>2]|0}h=e;a=i-h|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<l>>>0?l:a;i=t[p>>2]|0;o=i-h|0;if(!a){u=0;l=0}else k=25}else{o=t[p>>2]|0;a=2147483647;i=o;o=o-h|0;k=25}if((k|0)==25){k=0;w=0;l=de(67,a|0)|0;u=w;w=0;if(u&1)break;else u=a}f[l+o>>0]=d;a=l+(o+1)|0;h=i-h|0;d=l+(o-h)|0;Em(d|0,e|0,h|0)|0;t[v>>2]=d;t[p>>2]=a;t[_>>2]=l+u;if(r){Bp(r);a=t[p>>2]|0}}else{f[a>>0]=d;a=(t[p>>2]|0)+1|0;t[p>>2]=a}r=t[_>>2]|0;if(a>>>0>=r>>>0){i=t[v>>2]|0;e=i;l=a-e+1|0;if((l|0)<0){w=0;ue(178,v|0);d=w;w=0;if(d&1)break;e=t[v>>2]|0;r=t[_>>2]|0;i=e}h=i;a=r-h|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<l>>>0?l:a;l=t[p>>2]|0;o=l-h|0;if(!a){u=0;r=0}else k=36}else{o=t[p>>2]|0;a=2147483647;l=o;o=o-h|0;k=36}if((k|0)==36){k=0;w=0;r=de(67,a|0)|0;d=w;w=0;if(d&1)break;else u=a}f[r+o>>0]=17;a=r+(o+1)|0;h=l-h|0;d=r+(o-h)|0;Em(d|0,i|0,h|0)|0;t[v>>2]=d;t[p>>2]=a;t[_>>2]=r+u;if(e){Bp(e);a=t[p>>2]|0}}else{f[a>>0]=17;a=(t[p>>2]|0)+1|0;t[p>>2]=a}r=t[_>>2]|0;if(a>>>0>=r>>>0){i=t[v>>2]|0;e=i;l=a-e+1|0;if((l|0)<0){w=0;ue(178,v|0);d=w;w=0;if(d&1)break;e=t[v>>2]|0;r=t[_>>2]|0;i=e}u=i;a=r-u|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<l>>>0?l:a;r=t[p>>2]|0;o=r-u|0;if(!a){a=0;l=0}else k=48}else{o=t[p>>2]|0;a=2147483647;r=o;o=o-u|0;k=48}if((k|0)==48){k=0;w=0;l=de(67,a|0)|0;d=w;w=0;if(d&1)break}f[l+o>>0]=0;h=r-u|0;d=l+(o-h)|0;Em(d|0,i|0,h|0)|0;t[v>>2]=d;t[p>>2]=l+(o+1);t[_>>2]=l+a;if(e)Bp(e)}else{f[a>>0]=0;t[p>>2]=(t[p>>2]|0)+1}if((b|0)>=(n|0))break i}s=je()|0;break e}}while(0);w=0;o=de(67,20)|0;n=w;w=0;if(!(n&1)){t[o>>2]=36800;f[o+4>>0]=-9;e=o+8|0;t[e>>2]=0;l=o+12|0;t[l>>2]=0;r=o+16|0;t[r>>2]=0;a=t[p>>2]|0;n=t[v>>2]|0;i=a-n|0;do{if((a|0)!=(n|0)){if(!((i|0)<0?(w=0,ue(178,e|0),n=w,w=0,n&1):0))k=62;if((k|0)==62?(w=0,s=de(67,i|0)|0,n=w,w=0,!(n&1)):0){t[l>>2]=s;t[e>>2]=s;t[r>>2]=s+i;a=t[v>>2]|0;r=t[p>>2]|0;if((a|0)==(r|0))break;do{f[s>>0]=f[a>>0]|0;s=(t[l>>2]|0)+1|0;t[l>>2]=s;a=a+1|0}while((a|0)!=(r|0));a=t[v>>2]|0;break}s=je()|0;a=t[e>>2]|0;if(a){if((t[l>>2]|0)!=(a|0))t[l>>2]=a;Bp(a)}Bp(o);break e}}while(0);if(!a){c=m;return o|0}if((t[p>>2]|0)!=(a|0))t[p>>2]=a;Bp(a);c=m;return o|0}else k=52}else k=52}while(0);if((k|0)==52)s=je()|0;a=t[v>>2]|0;if(!a)Qe(s|0);if((t[p>>2]|0)!=(a|0))t[p>>2]=a;Bp(a);Qe(s|0);return 0}function Qv(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0;p=c;c=c+32|0;k=p+28|0;y=p+16|0;v=p+4|0;m=p;t[y>>2]=0;M=y+4|0;t[M>>2]=0;t[y+8>>2]=0;b=Lp(5)|0;t[y>>2]=b;_=y+8|0;t[_>>2]=b+5;f[b>>0]=74;f[b+1>>0]=70;f[b+2>>0]=73;f[b+3>>0]=70;f[b+4>>0]=0;t[M>>2]=b+5;w=0;ce(84,y|0,t[e>>2]&65535|0);b=w;w=0;e:do{if(!(b&1)){h=t[e+4>>2]&255;i=t[M>>2]|0;n=t[_>>2]|0;if(i>>>0>=n>>>0){a=t[y>>2]|0;s=a;l=i-s+1|0;if((l|0)<0){w=0;ue(178,y|0);b=w;w=0;if(b&1){g=43;break}s=t[y>>2]|0;n=t[_>>2]|0;a=s}u=a;i=n-u|0;if(i>>>0<1073741823){i=i<<1;i=i>>>0<l>>>0?l:i;n=t[M>>2]|0;o=n-u|0;if(!i){i=0;l=0}else g=10}else{o=t[M>>2]|0;i=2147483647;n=o;o=o-u|0;g=10}if((g|0)==10){w=0;l=de(67,i|0)|0;b=w;w=0;if(b&1){g=43;break}}f[l+o>>0]=h;d=n-u|0;b=l+(o-d)|0;Em(b|0,a|0,d|0)|0;t[y>>2]=b;t[M>>2]=l+(o+1);t[_>>2]=l+i;if(s)Bp(s)}else{f[i>>0]=h;t[M>>2]=(t[M>>2]|0)+1}w=0;ce(84,y|0,t[e+8>>2]&65535|0);b=w;w=0;if(!(b&1)?(w=0,ce(84,y|0,t[e+12>>2]&65535|0),b=w,w=0,!(b&1)):0){b=e+16|0;d=t[b>>2]&255;i=t[M>>2]|0;a=t[_>>2]|0;if(i>>>0>=a>>>0){s=t[y>>2]|0;n=s;l=i-n+1|0;if((l|0)<0){w=0;ue(178,y|0);h=w;w=0;if(h&1){g=43;break}s=t[y>>2]|0;n=s;a=t[_>>2]|0}h=s;i=a-h|0;if(i>>>0<1073741823){i=i<<1;i=i>>>0<l>>>0?l:i;l=t[M>>2]|0;o=l-h|0;if(!i){u=0;a=0}else g=23}else{o=t[M>>2]|0;i=2147483647;l=o;o=o-h|0;g=23}if((g|0)==23){w=0;a=de(67,i|0)|0;u=w;w=0;if(u&1){g=43;break}else u=i}f[a+o>>0]=d;i=a+(o+1)|0;h=l-h|0;d=a+(o-h)|0;Em(d|0,s|0,h|0)|0;t[y>>2]=d;t[M>>2]=i;t[_>>2]=a+u;if(n){Bp(n);i=t[M>>2]|0}}else{f[i>>0]=d;i=(t[M>>2]|0)+1|0;t[M>>2]=i}d=e+20|0;h=t[d>>2]&255;n=t[_>>2]|0;if(i>>>0>=n>>>0){a=t[y>>2]|0;s=a;l=i-s+1|0;if((l|0)<0){w=0;ue(178,y|0);u=w;w=0;if(u&1){g=43;break}s=t[y>>2]|0;n=t[_>>2]|0;a=s}u=a;i=n-u|0;if(i>>>0<1073741823){i=i<<1;i=i>>>0<l>>>0?l:i;n=t[M>>2]|0;o=n-u|0;if(!i){i=0;l=0}else g=34}else{o=t[M>>2]|0;i=2147483647;n=o;o=o-u|0;g=34}if((g|0)==34){w=0;l=de(67,i|0)|0;A=w;w=0;if(A&1){g=43;break}}f[l+o>>0]=h;h=n-u|0;A=l+(o-h)|0;Em(A|0,a|0,h|0)|0;t[y>>2]=A;t[M>>2]=l+(o+1);t[_>>2]=l+i;if(s)Bp(s)}else{f[i>>0]=h;t[M>>2]=(t[M>>2]|0)+1}i=t[b>>2]|0;do{if((i|0)>0){if(!(t[e+24>>2]|0)){t[m>>2]=t[M>>2];A=0+(re(i*3|0,t[d>>2]|0)|0)|0;w=0;t[k>>2]=t[m>>2];Ae(15,y|0,k|0,0,A|0)|0;A=w;w=0;if(A&1){g=43;break e}else break}n=Ue(16)|0;w=0;Ee(5,v|0,50792,57);A=w;w=0;if(!(A&1)){w=0;i=Me(1)|0;A=w;w=0;if(!(A&1)?(w=0,Ce(36,n|0,1,i|0,v|0),A=w,w=0,!(A&1)):0){w=0;Ee(6,n|0,824,96);w=0;r=0}else r=1;i=je()|0;xh(v);if(!r){r=i;break e}}else i=je()|0;He(n|0);r=i;break e}}while(0);w=0;o=de(67,20)|0;A=w;w=0;if(!(A&1)){t[o>>2]=36800;f[o+4>>0]=-32;s=o+8|0;t[s>>2]=0;l=o+12|0;t[l>>2]=0;n=o+16|0;t[n>>2]=0;i=t[M>>2]|0;A=t[y>>2]|0;a=i-A|0;do{if((i|0)!=(A|0)){if(!((a|0)<0?(w=0,ue(178,s|0),A=w,w=0,A&1):0))g=53;if((g|0)==53?(w=0,r=de(67,a|0)|0,A=w,w=0,!(A&1)):0){t[l>>2]=r;t[s>>2]=r;t[n>>2]=r+a;i=t[y>>2]|0;n=t[M>>2]|0;if((i|0)==(n|0))break;do{f[r>>0]=f[i>>0]|0;r=(t[l>>2]|0)+1|0;t[l>>2]=r;i=i+1|0}while((i|0)!=(n|0));i=t[y>>2]|0;break}i=je()|0;r=t[s>>2]|0;if(r){if((t[l>>2]|0)!=(r|0))t[l>>2]=r;Bp(r)}Bp(o);g=44;break e}}while(0);if(!i){c=p;return o|0}if((t[M>>2]|0)!=(i|0))t[M>>2]=i;Bp(i);c=p;return o|0}else g=43}else g=43}else g=43}while(0);if((g|0)==43){i=je()|0;g=44}if((g|0)==44)r=i;i=t[y>>2]|0;if(!i)Qe(r|0);if((t[M>>2]|0)!=(i|0))t[M>>2]=i;Bp(i);Qe(r|0);return 0}function ep(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;o=c;c=c+16|0;h=o;t[h>>2]=0;d=h+4|0;t[d>>2]=0;t[h+8>>2]=0;w=0;i=de(67,1)|0;l=w;w=0;e:do{if((((((!(l&1)?(l=i+1|0,f[i>>0]=1,t[h>>2]=i,t[d>>2]=l,t[h+8>>2]=l,w=0,ce(84,h|0,t[e>>2]&65535|0),l=w,w=0,!(l&1)):0)?(w=0,ce(84,h|0,t[e+4>>2]&65535|0),l=w,w=0,!(l&1)):0)?(w=0,ce(84,h|0,t[e+8>>2]&65535|0),l=w,w=0,!(l&1)):0)?(w=0,ce(84,h|0,t[e+12>>2]&65535|0),l=w,w=0,!(l&1)):0)?(w=0,ce(84,h|0,t[e+16>>2]&65535|0),l=w,w=0,!(l&1)):0)?(w=0,u=de(67,20)|0,l=w,w=0,!(l&1)):0){t[u>>2]=36800;f[u+4>>0]=-8;a=u+8|0;t[a>>2]=0;l=u+12|0;t[l>>2]=0;e=u+16|0;t[e>>2]=0;i=t[d>>2]|0;b=t[h>>2]|0;n=i-b|0;do{if((i|0)!=(b|0)){if(!((n|0)<0?(w=0,ue(178,a|0),b=w,w=0,b&1):0))s=11;if((s|0)==11?(w=0,r=de(67,n|0)|0,b=w,w=0,!(b&1)):0){t[l>>2]=r;t[a>>2]=r;t[e>>2]=r+n;i=t[h>>2]|0;e=t[d>>2]|0;if((i|0)==(e|0))break;do{f[r>>0]=f[i>>0]|0;r=(t[l>>2]|0)+1|0;t[l>>2]=r;i=i+1|0}while((i|0)!=(e|0));i=t[h>>2]|0;break}r=je()|0;i=t[a>>2]|0;if(i){if((t[l>>2]|0)!=(i|0))t[l>>2]=i;Bp(i)}Bp(u);break e}}while(0);if(!i){c=o;return u|0}if((t[d>>2]|0)!=(i|0))t[d>>2]=i;Bp(i);c=o;return u|0}else s=25}while(0);if((s|0)==25)r=je()|0;i=t[h>>2]|0;if(!i)Qe(r|0);if((t[d>>2]|0)!=(i|0))t[d>>2]=i;Bp(i);Qe(r|0);return 0}function ip(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0;s=Lp(5)|0;f[s>>0]=109;f[s+1>>0]=114;f[s+2>>0]=102;f[s+3>>0]=120;f[s+4>>0]=e;w=0;a=de(67,20)|0;n=w;w=0;if(n&1){a=je()|0;Bp(s);Qe(a|0)}t[a>>2]=36800;f[a+4>>0]=-24;e=a+8|0;t[e>>2]=0;i=a+12|0;t[i>>2]=0;r=a+16|0;t[r>>2]=0;w=0;n=de(67,5)|0;l=w;w=0;if(!(l&1)){t[i>>2]=n;t[e>>2]=n;t[r>>2]=n+5;f[n>>0]=109;l=(t[i>>2]|0)+1|0;t[i>>2]=l;n=s+1|0;f[l>>0]=f[n>>0]|0;l=(t[i>>2]|0)+1|0;t[i>>2]=l;n=n+1|0;f[l>>0]=f[n>>0]|0;l=(t[i>>2]|0)+1|0;t[i>>2]=l;n=n+1|0;f[l>>0]=f[n>>0]|0;l=(t[i>>2]|0)+1|0;t[i>>2]=l;f[l>>0]=f[n+1>>0]|0;t[i>>2]=(t[i>>2]|0)+1;Bp(s);return a|0}l=je()|0;Bp(a);Bp(s);Qe(l|0);return 0}function rp(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0;g=c;c=c+16|0;y=g;t[y>>2]=0;M=y+4|0;t[M>>2]=0;t[y+8>>2]=0;v=y+8|0;w=0;a=de(67,1)|0;m=w;w=0;e:do{if(!(m&1)){o=a+1|0;m=o;f[a>>0]=i;t[y>>2]=a;t[M>>2]=m;t[v>>2]=m;if((i|0)>0){l=o;m=0;do{k=m+e&255;if(l>>>0>=o>>>0){a=t[y>>2]|0;u=a;l=l-u+1|0;if((l|0)<0){w=0;ue(178,y|0);_=w;w=0;if(_&1){p=28;break}u=t[y>>2]|0;o=t[v>>2]|0;_=u}else _=a;b=_;a=o-b|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<l>>>0?l:a;o=t[M>>2]|0;h=o-b|0;if(!a){d=0;l=0}else p=13}else{h=t[M>>2]|0;a=2147483647;o=h;h=h-b|0;p=13}if((p|0)==13){p=0;w=0;l=de(67,a|0)|0;d=w;w=0;if(d&1){p=28;break}else d=a}f[l+h>>0]=k;a=l+(h+1)|0;b=o-b|0;k=l+(h-b)|0;Em(k|0,_|0,b|0)|0;t[y>>2]=k;t[M>>2]=a;t[v>>2]=l+d;if(u){Bp(u);a=t[M>>2]|0}}else{f[l>>0]=k;a=(t[M>>2]|0)+1|0;t[M>>2]=a}o=t[v>>2]|0;if(a>>>0>=o>>>0){u=t[y>>2]|0;l=u;h=a-l+1|0;if((h|0)<0){w=0;ue(178,y|0);k=w;w=0;if(k&1){p=28;break}u=t[y>>2]|0;l=u;o=t[v>>2]|0}b=u;a=o-b|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<h>>>0?h:a;h=t[M>>2]|0;o=h-b|0;if(!a){a=0;d=0}else p=24}else{o=t[M>>2]|0;a=2147483647;h=o;o=o-b|0;p=24}if((p|0)==24){p=0;w=0;d=de(67,a|0)|0;k=w;w=0;if(k&1){p=28;break}}f[d+o>>0]=0;_=h-b|0;k=d+(o-_)|0;Em(k|0,u|0,_|0)|0;t[y>>2]=k;t[M>>2]=d+(o+1);t[v>>2]=d+a;if(l)Bp(l)}else{f[a>>0]=0;t[M>>2]=(t[M>>2]|0)+1}m=m+1|0;l=t[M>>2]|0;o=t[v>>2]|0}while((m|0)<(i|0));if((p|0)==28){s=je()|0;break}a=r&255;if(l>>>0<o>>>0){f[l>>0]=a;l=(t[M>>2]|0)+1|0;t[M>>2]=l}else p=37}else{l=o;a=r&255;p=37}if((p|0)==37){u=t[y>>2]|0;h=u;d=l-h+1|0;if((d|0)<0){w=0;ue(178,y|0);r=w;w=0;if(r&1){p=29;break}h=t[y>>2]|0;o=t[v>>2]|0;u=h}k=u;l=o-k|0;if(l>>>0<1073741823){l=l<<1;l=l>>>0<d>>>0?d:l;d=t[M>>2]|0;b=d-k|0;if(!l){_=0;o=0}else p=43}else{b=t[M>>2]|0;l=2147483647;d=b;b=b-k|0;p=43}if((p|0)==43){w=0;o=de(67,l|0)|0;r=w;w=0;if(r&1){p=29;break}else _=l}f[o+b>>0]=a;l=o+(b+1)|0;e=d-k|0;r=o+(b-e)|0;Em(r|0,u|0,e|0)|0;t[y>>2]=r;t[M>>2]=l;t[v>>2]=o+_;if(h){Bp(h);l=t[M>>2]|0}}k=n&255;a=t[v>>2]|0;if(l>>>0>=a>>>0){o=t[y>>2]|0;u=o;l=l-u+1|0;if((l|0)<0){w=0;ue(178,y|0);n=w;w=0;if(n&1){p=29;break}u=t[y>>2]|0;a=t[v>>2]|0;o=u}_=o;a=a-_|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<l>>>0?l:a;h=t[M>>2]|0;d=h-_|0;if(!a){b=0;l=0}else p=54}else{d=t[M>>2]|0;a=2147483647;h=d;d=d-_|0;p=54}if((p|0)==54){w=0;l=de(67,a|0)|0;n=w;w=0;if(n&1){p=29;break}else b=a}f[l+d>>0]=k;a=l+(d+1)|0;r=h-_|0;n=l+(d-r)|0;Em(n|0,o|0,r|0)|0;t[y>>2]=n;t[M>>2]=a;t[v>>2]=l+b;if(u){Bp(u);a=t[M>>2]|0}}else{f[l>>0]=k;a=(t[M>>2]|0)+1|0;t[M>>2]=a}l=t[v>>2]|0;if(a>>>0>=l>>>0){o=t[y>>2]|0;u=o;h=a-u+1|0;if((h|0)<0){w=0;ue(178,y|0);n=w;w=0;if(n&1){p=29;break}u=t[y>>2]|0;l=t[v>>2]|0;o=u}b=o;a=l-b|0;if(a>>>0<1073741823){a=a<<1;a=a>>>0<h>>>0?h:a;l=t[M>>2]|0;d=l-b|0;if(!a){a=0;h=0}else p=65}else{d=t[M>>2]|0;a=2147483647;l=d;d=d-b|0;p=65}if((p|0)==65){w=0;h=de(67,a|0)|0;n=w;w=0;if(n&1){p=29;break}}f[h+d>>0]=0;r=l-b|0;n=h+(d-r)|0;Em(n|0,o|0,r|0)|0;t[y>>2]=n;t[M>>2]=h+(d+1);t[v>>2]=h+a;if(u)Bp(u)}else{f[a>>0]=0;t[M>>2]=(t[M>>2]|0)+1}w=0;d=de(67,20)|0;v=w;w=0;if(!(v&1)){t[d>>2]=36800;f[d+4>>0]=-38;u=d+8|0;t[u>>2]=0;h=d+12|0;t[h>>2]=0;l=d+16|0;t[l>>2]=0;a=t[M>>2]|0;v=t[y>>2]|0;o=a-v|0;do{if((a|0)!=(v|0)){if(!((o|0)<0?(w=0,ue(178,u|0),v=w,w=0,v&1):0))p=72;if((p|0)==72?(w=0,s=de(67,o|0)|0,v=w,w=0,!(v&1)):0){t[h>>2]=s;t[u>>2]=s;t[l>>2]=s+o;a=t[y>>2]|0;l=t[M>>2]|0;if((a|0)==(l|0))break;do{f[s>>0]=f[a>>0]|0;s=(t[h>>2]|0)+1|0;t[h>>2]=s;a=a+1|0}while((a|0)!=(l|0));a=t[y>>2]|0;break}s=je()|0;a=t[u>>2]|0;if(a){if((t[h>>2]|0)!=(a|0))t[h>>2]=a;Bp(a)}Bp(d);break e}}while(0);if(!a){c=g;return d|0}if((t[M>>2]|0)!=(a|0))t[M>>2]=a;Bp(a);c=g;return d|0}else p=29}else p=29}while(0);if((p|0)==29)s=je()|0;a=t[y>>2]|0;if(!a)Qe(s|0);if((t[M>>2]|0)!=(a|0))t[M>>2]=a;Bp(a);Qe(s|0);return 0}function fp(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0;d=(i&65535)>>>8&255;b=e+4|0;r=t[b>>2]|0;_=e+8|0;n=t[_>>2]|0;if(r>>>0>=n>>>0){a=t[e>>2]|0;s=a;l=r-s+1|0;if((l|0)<0){Op(e);s=t[e>>2]|0;n=t[_>>2]|0;a=s}h=a;r=n-h|0;if(r>>>0<1073741823){r=r<<1;r=r>>>0<l>>>0?l:r;l=t[b>>2]|0;n=l-h|0;if(!r){c=0;u=0;o=n;r=l}else k=8}else{n=t[b>>2]|0;r=2147483647;l=n;n=n-h|0;k=8}if((k|0)==8){c=r;u=Lp(r)|0;o=n;r=l}f[u+o>>0]=d;n=u+(o+1)|0;h=r-h|0;d=u+(o-h)|0;Em(d|0,a|0,h|0)|0;t[e>>2]=d;t[b>>2]=n;t[_>>2]=u+c;if(s){Bp(s);n=t[b>>2]|0}}else{f[r>>0]=d;n=(t[b>>2]|0)+1|0;t[b>>2]=n}h=i&255;r=t[_>>2]|0;if(n>>>0<r>>>0){f[n>>0]=h;t[b>>2]=(t[b>>2]|0)+1;return}a=t[e>>2]|0;s=a;n=n-s+1|0;if((n|0)<0){Op(e);s=t[e>>2]|0;r=t[_>>2]|0;a=s}c=a;r=r-c|0;if(r>>>0<1073741823){r=r<<1;r=r>>>0<n>>>0?n:r;l=t[b>>2]|0;n=l-c|0;if(!r){u=0;o=0;r=l}else k=18}else{n=t[b>>2]|0;r=2147483647;l=n;n=n-c|0;k=18}if((k|0)==18){u=r;o=Lp(r)|0;r=l}f[o+n>>0]=h;i=r-c|0;k=o+(n-i)|0;Em(k|0,a|0,i|0)|0;t[e>>2]=k;t[b>>2]=o+(n+1);t[_>>2]=o+u;if(!s)return;Bp(s);return}function np(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0;a=t[e>>2]|0;k=t[i>>2]|0;_=k;u=a;d=r;c=n-d|0;if((c|0)<=0){w=k;return w|0}b=e+8|0;i=t[b>>2]|0;w=e+4|0;h=t[w>>2]|0;s=h;if((c|0)<=(i-s|0)){o=s-_|0;if((c|0)>(o|0)){l=r+o|0;if((l|0)==(n|0))i=h;else{s=l;i=h;do{f[i>>0]=f[s>>0]|0;i=(t[w>>2]|0)+1|0;t[w>>2]=i;s=s+1|0}while((s|0)!=(n|0))}if((o|0)>0)o=i;else{w=k;return w|0}}else{o=h;l=n}a=o-(a+(c-u+_))|0;i=k+a|0;if(i>>>0<h>>>0){s=o;do{f[s>>0]=f[i>>0]|0;i=i+1|0;s=(t[w>>2]|0)+1|0;t[w>>2]=s}while((i|0)!=(h|0))}Tm(o+(0-a)|0,k|0,a|0)|0;Tm(k|0,r|0,l-d|0)|0;w=k;return w|0}s=s-u+c|0;if((s|0)<0){Op(e);i=t[b>>2]|0;a=t[e>>2]|0}l=a;i=i-l|0;if(i>>>0<1073741823){i=i<<1;i=i>>>0<s>>>0?s:i;s=_-l|0;if(!i){l=0;c=0}else o=15}else{i=2147483647;s=_-l|0;o=15}if((o|0)==15){l=i;c=Lp(i)|0}u=c+s|0;i=u;o=c+l|0;if((r|0)!=(n|0)){a=r;l=u;do{f[l>>0]=f[a>>0]|0;l=i+1|0;i=l;a=a+1|0}while((a|0)!=(n|0));a=t[e>>2]|0}r=_-a|0;n=c+(s-r)|0;Em(n|0,a|0,r|0)|0;_=(t[w>>2]|0)-_|0;r=i;Em(r|0,k|0,_|0)|0;i=t[e>>2]|0;t[e>>2]=n;t[w>>2]=r+_;t[b>>2]=o;if(!i){w=u;return w|0}Bp(i);w=u;return w|0}function tp(e){e=e|0;var i=0;t[e>>2]=36800;i=t[e+8>>2]|0;if(!i)return;e=e+12|0;if((t[e>>2]|0)!=(i|0))t[e>>2]=i;Bp(i);return}function ap(e){e=e|0;var i=0,r=0;t[e>>2]=36800;i=t[e+8>>2]|0;if(!i){Bp(e);return}r=e+12|0;if((t[r>>2]|0)!=(i|0))t[r>>2]=i;Bp(i);Bp(e);return}function sp(e,i){e=e|0;i=i|0;var r=0,n=0,a=0;lp(i,-1);lp(i,f[e+4>>0]|0);a=e+12|0;n=e+8|0;e=(t[a>>2]|0)-(t[n>>2]|0)+2|0;lp(i,(e&65535)>>>8&255);lp(i,e&255);e=t[n>>2]|0;if((t[a>>2]|0)==(e|0))return;else r=0;do{lp(i,f[e+r>>0]|0);r=r+1|0;e=t[n>>2]|0}while(r>>>0<((t[a>>2]|0)-e|0)>>>0);return}function lp(e,i){e=e|0;i=i|0;var r=0,n=0,a=0;a=t[e+4>>2]|0;if(a){r=a+24|0;n=t[r>>2]|0;if((n|0)==(t[a+28>>2]|0)){_M[t[(t[a>>2]|0)+52>>2]&63](a,i&255)|0;return}else{t[r>>2]=n+1;f[n>>0]=i;return}}r=e+16|0;n=t[r>>2]|0;if(n>>>0<(t[e+12>>2]|0)>>>0){t[r>>2]=n+1;f[(t[e+8>>2]|0)+n>>0]=i;return}r=Ue(16)|0;w=0;n=Me(1)|0;i=w;w=0;if(i&1){i=je()|0;He(r|0);Qe(i|0)}w=0;Ee(7,r|0,4,n|0);i=w;w=0;if(i&1){i=je()|0;He(r|0);Qe(i|0)}else bi(r|0,824,96)}function op(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;n=(i|0)<4095?(i+128|0)/256|0:16;a=(r*3|0)+2+n|0;f=r+1|0;a=(a|0)<(f|0)|(a|0)>(i|0)?f:a;t[e+4>>2]=a;f=(n<<2|3)+(r*5|0)|0;f=(f|0)>(i|0)|(f|0)<(a|0)?a:f;t[e+8>>2]=f;r=(r*7|0)+4+(n*17|0)|0;t[e+12>>2]=(r|0)>(i|0)|(r|0)<(f|0)?f:r;t[e>>2]=i;t[e+16>>2]=64;return}function up(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0;h=c;c=c+128|0;o=h+100|0;n=h+16|0;r=h+112|0;u=h+4|0;d=h;a=n;s=e+20|0;l=a+84|0;do{t[a>>2]=t[s>>2];a=a+4|0;s=s+4|0}while((a|0)<(l|0));t[n+16>>2]=t[e+4>>2];s=Ki(r,n,e+56|0)|0;r=t[(t[s>>2]|0)+16>>2]|0;e=e+8|0;w=0;t[o>>2]=t[e>>2];t[o+4>>2]=t[e+4>>2];t[o+8>>2]=t[e+8>>2];r=pe(r|0,s|0,o|0)|0;e=w;w=0;do{if(e&1)r=je()|0;else{a=i+4|0;t[u>>2]=t[a>>2];t[u+4>>2]=t[a+4>>2];t[u+8>>2]=t[a+8>>2];a=i+16|0;e=t[a>>2]|0;o=u+8|0;t[o>>2]=(t[o>>2]|0)-e;o=u+4|0;t[o>>2]=(t[o>>2]|0)+e;o=t[(t[s>>2]|0)+12>>2]|0;t[d>>2]=r;w=0;r=Ae(o|0,s|0,d|0,u|0,((f[i>>0]|0)==0?0:(t[i+8>>2]|0)+e|0)|0)|0;u=w;w=0;if(u&1){r=je()|0;n=t[d>>2]|0;t[d>>2]=0;if(!n)break;tM[t[(t[n>>2]|0)+4>>2]&255](n);break}n=t[d>>2]|0;t[d>>2]=0;if(n)tM[t[(t[n>>2]|0)+4>>2]&255](n);if(!(t[i+4>>2]|0))t[a>>2]=(t[a>>2]|0)+r;if(!s){c=h;return}tM[t[(t[s>>2]|0)+4>>2]&255](s);c=h;return}}while(0);if(!s)Qe(r|0);tM[t[(t[s>>2]|0)+4>>2]&255](s);Qe(r|0)}function cp(e,i){e=e|0;i=i|0;t[e>>2]=t[i>>2];t[e+4>>2]=t[i+4>>2];t[e+8>>2]=t[i+8>>2];f[e+12>>0]=0;i=e+16|0;e=i+100|0;do{t[i>>2]=0;i=i+4|0}while((i|0)<(e|0));return}function hp(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,m=0,v=0,p=0,g=0,y=0,M=0;g=c;c=c+32|0;p=g+4|0;_=g+16|0;y=g;dp(e);k=e+16|0;a=t[e+24>>2]|0;e:do{if((a+-2|0)>>>0<=14){m=e+40|0;r=t[m>>2]|0;if(r>>>0>2)r=5;else{v=e+32|0;s=t[v>>2]|0;switch(s|0){case 0:{r=1;break e}case 4:{if((r|0)==2){r=2;break e}break}case 3:break;default:if(r){r=2;break e}}b=e+100|0;r=e+108|0;n=t[r>>2]|0;if((n|0)<1){n=t[k>>2]|0;t[r>>2]=n;r=t[e+20>>2]|0;t[e+112>>2]=r}else r=t[e+112>>2]|0;u=xm(r|0,((r|0)<0)<<31>>31|0,n|0,((n|0)<0)<<31>>31|0)|0;o=(a+7|0)/8|0;o=xm(u|0,O|0,o|0,((o|0)<0)<<31>>31|0)|0;u=i+4|0;r=t[u>>2]|0;l=i+8|0;if((r|0)!=0?(h=t[l>>2]|0,d=xm(s|0,((s|0)<0)<<31>>31|0,o|0,O|0)|0,a=O,0<(a|0)|0==(a|0)&h>>>0<d>>>0):0){r=Ue(16)|0;w=0;n=Me(1)|0;y=w;w=0;if(!(y&1)?(w=0,Ee(7,r|0,3,n|0),y=w,w=0,!(y&1)):0)bi(r|0,824,96);y=je()|0;He(r|0);Qe(y|0)}h=e+52|0;d=e+12|0;if((s|0)>0)s=0;else{c=g;return}while(1){bp(e,(s|0)==0);n=Xi(_,k,h)|0;a=t[(t[n>>2]|0)+8>>2]|0;w=0;t[p>>2]=t[i>>2];t[p+4>>2]=t[i+4>>2];t[p+8>>2]=t[i+8>>2];a=pe(a|0,n|0,p|0)|0;M=w;w=0;if(M&1){a=32;break}M=t[(t[n>>2]|0)+16>>2]|0;t[y>>2]=a;w=0;le(M|0,n|0,y|0,b|0,e|0,(f[d>>0]|0)!=0|0);M=w;w=0;if(M&1){a=30;break}a=t[y>>2]|0;t[y>>2]=0;if(a)tM[t[(t[a>>2]|0)+4>>2]&255](a);if(!r)r=0;else{r=r+o|0;t[u>>2]=r;t[l>>2]=(t[l>>2]|0)-o}a=(t[m>>2]|0)==0;s=(a&1)+s|0;if(n)tM[t[(t[n>>2]|0)+4>>2]&255](n);if(!a){a=34;break}if((s|0)>=(t[v>>2]|0)){a=34;break}}if((a|0)==30){r=je()|0;a=t[y>>2]|0;t[y>>2]=0;if(a)tM[t[(t[a>>2]|0)+4>>2]&255](a)}else if((a|0)==32){r=je()|0;if(!n){M=r;Qe(M|0)}}else if((a|0)==34){c=g;return}tM[t[(t[n>>2]|0)+4>>2]&255](n);M=r;Qe(M|0)}}else r=2}while(0);n=Ue(16)|0;w=0;a=Me(1)|0;M=w;w=0;if(!(M&1)?(w=0,Ee(7,n|0,r|0,a|0),M=w,w=0,!(M&1)):0)bi(n|0,824,96);M=je()|0;He(n|0);Qe(M|0)}function dp(e){e=e|0;var i=0,r=0,f=0,n=0;if((wp(e)|0)<<24>>24!=-40){i=Ue(16)|0;w=0;r=Me(1)|0;n=w;w=0;if(!(n&1)?(w=0,Ee(7,i|0,5,r|0),n=w,w=0,!(n&1)):0)bi(i|0,824,96);n=je()|0;He(i|0);Qe(n|0)}i=wp(e)|0;if(i<<24>>24==-38)return;while(1){f=((kp(e)|0)&255)<<8;f=f|(kp(e)|0)&255;i=mp(e,i)|0;r=-2-i+f|0;if((r|0)<0)break;if((r|0)>0){i=f+-2-i|0;r=0;do{kp(e)|0;r=r+1|0}while((r|0)!=(i|0))}i=wp(e)|0;if(i<<24>>24==-38){n=8;break}}if((n|0)==8)return;i=Ue(16)|0;w=0;r=Me(1)|0;n=w;w=0;if(!(n&1)?(w=0,Ee(7,i|0,5,r|0),n=w,w=0,!(n&1)):0)bi(i|0,824,96);n=je()|0;He(i|0);Qe(n|0)}function bp(e,i){e=e|0;i=i|0;var r=0,f=0,n=0;if(!i){if((kp(e)|0)<<24>>24!=-1){i=Ue(16)|0;w=0;r=Me(1)|0;e=w;w=0;if(!(e&1)?(w=0,Ee(7,i|0,12,r|0),e=w,w=0,!(e&1)):0)bi(i|0,824,96);e=je()|0;He(i|0);Qe(e|0)}if((kp(e)|0)<<24>>24!=-38){i=Ue(16)|0;w=0;r=Me(1)|0;e=w;w=0;if(!(e&1)?(w=0,Ee(7,i|0,5,r|0),e=w,w=0,!(e&1)):0)bi(i|0,824,96);e=je()|0;He(i|0);Qe(e|0)}}kp(e)|0;kp(e)|0;r=kp(e)|0;f=r&255;do{if(r<<24>>24==1){kp(e)|0;r=0;n=20}else{if((f|0)==(t[e+32>>2]|0)){i=kp(e)|0;if(!(r<<24>>24))break;else{r=0;n=20;break}}i=Ue(16)|0;w=0;r=Me(1)|0;e=w;w=0;if(!(e&1)?(w=0,Ee(7,i|0,2,r|0),e=w,w=0,!(e&1)):0)bi(i|0,824,96);e=je()|0;He(i|0);Qe(e|0)}}while(0);if((n|0)==20)while(1){kp(e)|0;r=r+1|0;i=kp(e)|0;if((r|0)==(f|0))break;else n=20}t[e+36>>2]=i&255;n=kp(e)|0;r=e+40|0;t[r>>2]=n&255;if((n&255)>=3){i=Ue(16)|0;w=0;r=Me(1)|0;e=w;w=0;if(!(e&1)?(w=0,Ee(7,i|0,5,r|0),e=w,w=0,!(e&1)):0)bi(i|0,824,96);e=je()|0;He(i|0);Qe(e|0)}if((kp(e)|0)<<24>>24){i=Ue(16)|0;w=0;r=Me(1)|0;e=w;w=0;if(!(e&1)?(w=0,Ee(7,i|0,5,r|0),e=w,w=0,!(e&1)):0)bi(i|0,824,96);e=je()|0;He(i|0);Qe(e|0)}f=e+28|0;if(t[f>>2]|0)return;i=t[e+108>>2]|0;if(!i)i=t[e+16>>2]|0;if(!(t[r>>2]|0))r=1;else r=t[e+32>>2]|0;n=re(r,i)|0;t[f>>2]=re(n,((t[e+24>>2]|0)+7|0)/8|0)|0;return}function _p(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0;if((r|0)<=0)return;d=i+4|0;b=i+8|0;k=0;do{_=kp(e)|0;n=t[d>>2]|0;a=t[b>>2]|0;if(n>>>0>=a>>>0){s=t[i>>2]|0;l=s;o=n-l+1|0;if((o|0)<0){Op(i);l=t[i>>2]|0;a=t[b>>2]|0;s=l}h=s;n=a-h|0;if(n>>>0<1073741823){n=n<<1;n=n>>>0<o>>>0?o:n;o=t[d>>2]|0;a=o-h|0;if(!n){c=0;u=0;n=o}else w=10}else{a=t[d>>2]|0;n=2147483647;o=a;a=a-h|0;w=10}if((w|0)==10){w=0;c=n;u=Lp(n)|0;n=o}f[u+a>>0]=_;h=n-h|0;_=u+(a-h)|0;Em(_|0,s|0,h|0)|0;t[i>>2]=_;t[d>>2]=u+(a+1);t[b>>2]=u+c;if(l)Bp(l)}else{f[n>>0]=_;t[d>>2]=(t[d>>2]|0)+1}k=k+1|0}while((k|0)!=(r|0));return}function kp(e){e=e|0;var i=0,r=0,n=0,s=0;r=t[e>>2]|0;if(r){e=r+12|0;i=t[e>>2]|0;if((i|0)==(t[r+16>>2]|0))e=lM[t[(t[r>>2]|0)+40>>2]&127](r)|0;else{t[e>>2]=i+1;e=a[i>>0]|0}s=e&255;return s|0}n=e+8|0;s=t[n>>2]|0;if(s){e=e+4|0;i=t[e>>2]|0;r=f[i>>0]|0;if(!i){s=r;return s|0}t[e>>2]=i+1;t[n>>2]=s+-1;s=r;return s|0}e=Ue(16)|0;w=0;i=Me(1)|0;s=w;w=0;if(s&1){s=je()|0;He(e|0);Qe(s|0)}w=0;Ee(7,e|0,4,i|0);s=w;w=0;if(s&1){s=je()|0;He(e|0);Qe(s|0)}else bi(e|0,824,96);return 0}function wp(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0,l=0,o=0;r=c;c=c+176|0;i=r+152|0;o=r+16|0;s=r;l=kp(e)|0;f=l&255;if(l<<24>>24==-1){do{i=kp(e)|0}while(i<<24>>24==-1);c=r;return i|0}l=o+56|0;a=o+4|0;t[o>>2]=36160;t[l>>2]=36180;w=0;ce(62,o+56|0,a|0);n=w;w=0;if(n&1){o=je()|0;nd(l);Qe(o|0)}t[o+128>>2]=0;t[o+132>>2]=-1;t[o>>2]=36200;t[o+56>>2]=36220;w=0;ue(180,a|0);n=w;w=0;do{if(n&1)i=je()|0;else{t[a>>2]=36236;n=o+36|0;t[n>>2]=0;t[n+4>>2]=0;t[n+8>>2]=0;t[n+12>>2]=0;t[o+52>>2]=16;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=0;w=0;ce(63,a|0,i|0);r=w;w=0;if(r&1){o=je()|0;xh(i);xh(n);cd(a);i=o;break}xh(i);t[o+((t[(t[o>>2]|0)+-12>>2]|0)+76)>>2]=48;w=0;i=_e(28,o|0,50907,62)|0;r=w;w=0;if(!(r&1)?(r=i+((t[(t[i>>2]|0)+-12>>2]|0)+4)|0,t[r>>2]=t[r>>2]&-75|8,r=i+((t[(t[i>>2]|0)+-12>>2]|0)+4)|0,t[r>>2]=t[r>>2]|16384,t[i+((t[(t[i>>2]|0)+-12>>2]|0)+12)>>2]=2,w=0,pe(38,i|0,f|0)|0,f=w,w=0,!(f&1)):0){r=Ue(16)|0;w=0;ce(64,s|0,a|0);f=w;w=0;if(!(f&1)){w=0;i=Me(1)|0;f=w;w=0;if(!(f&1)?(w=0,Ce(36,r|0,12,i|0,s|0),f=w,w=0,!(f&1)):0){w=0;Ee(6,r|0,824,96);w=0;e=0}else e=1;i=je()|0;xh(s);if(!e){s=i;t[o>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(n);cd(a);nd(l);Qe(s|0)}}else i=je()|0;He(r|0);s=i;t[o>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(n);cd(a);nd(l);Qe(s|0)}s=je()|0;t[o>>2]=36200;t[l>>2]=36220;t[a>>2]=36236;xh(n);cd(a);nd(l);Qe(s|0)}}while(0);o=i;nd(l);Qe(o|0);return 0}function mp(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;r=c;c=c+320|0;l=r+300|0;h=r+152|0;o=r+288|0;d=r+16|0;u=r;switch(i<<24>>24){case-9:{t[e+24>>2]=(kp(e)|0)&255;b=((kp(e)|0)&255)<<8|(kp(e)|0)&255;t[e+16>>2]=((kp(e)|0)&255)<<8|(kp(e)|0)&255;t[e+20>>2]=b;t[e+32>>2]=(kp(e)|0)&255;b=6;c=r;return b|0}case-8:{b=vp(e)|0;c=r;return b|0}case-24:{b=pp(e)|0;c=r;return b|0}case-53:case-54:case-55:case-57:case-58:case-59:case-61:case-62:case-63:case-64:{s=h+56|0;n=h+4|0;t[h>>2]=36160;t[s>>2]=36180;w=0;ce(62,h+56|0,n|0);d=w;w=0;if(d&1){b=je()|0;nd(s);Qe(b|0)}t[h+128>>2]=0;t[h+132>>2]=-1;t[h>>2]=36200;t[h+56>>2]=36220;w=0;ue(180,n|0);d=w;w=0;do{if(d&1)e=je()|0;else{t[n>>2]=36236;a=h+36|0;t[a>>2]=0;t[a+4>>2]=0;t[a+8>>2]=0;t[a+12>>2]=0;t[h+52>>2]=16;t[l>>2]=0;t[l+4>>2]=0;t[l+8>>2]=0;w=0;ce(63,n|0,l|0);d=w;w=0;if(d&1){e=je()|0;xh(l);xh(a);cd(n);break}xh(l);w=0;e=_e(28,h|0,50970,26)|0;d=w;w=0;do{if((!(d&1)?(w=0,f=pe(38,e|0,i&255|0)|0,d=w,w=0,!(d&1)):0)?(w=0,_e(28,f|0,50997,18)|0,d=w,w=0,!(d&1)):0){f=Ue(16)|0;w=0;ce(64,o|0,n|0);d=w;w=0;if(!(d&1)){w=0;e=Me(1)|0;d=w;w=0;if(!(d&1)?(w=0,Ce(36,f|0,10,e|0,o|0),d=w,w=0,!(d&1)):0){w=0;Ee(6,f|0,824,96);w=0;r=0}else r=1;e=je()|0;xh(o);if(!r)break}else e=je()|0;He(f|0)}else b=20}while(0);if((b|0)==20)e=je()|0;t[h>>2]=36200;t[s>>2]=36220;t[n>>2]=36236;xh(a);cd(n);nd(s);b=e;Qe(b|0)}}while(0);b=e;nd(s);Qe(b|0)}case-25:case-32:case-2:{b=0;c=r;return b|0}default:{o=d+56|0;a=d+4|0;t[d>>2]=36160;t[o>>2]=36180;w=0;ce(62,d+56|0,a|0);h=w;w=0;if(h&1){b=je()|0;nd(o);Qe(b|0)}t[d+128>>2]=0;t[d+132>>2]=-1;t[d>>2]=36200;t[d+56>>2]=36220;w=0;ue(180,a|0);h=w;w=0;do{if(h&1)e=je()|0;else{t[a>>2]=36236;s=d+36|0;t[s>>2]=0;t[s+4>>2]=0;t[s+8>>2]=0;t[s+12>>2]=0;t[d+52>>2]=16;t[l>>2]=0;t[l+4>>2]=0;t[l+8>>2]=0;w=0;ce(63,a|0,l|0);h=w;w=0;if(h&1){e=je()|0;xh(l);xh(s);cd(a);break}xh(l);w=0;e=_e(28,d|0,51016,20)|0;h=w;w=0;do{if((!(h&1)?(w=0,n=pe(38,e|0,i&255|0)|0,h=w,w=0,!(h&1)):0)?(w=0,_e(28,n|0,51037,13)|0,h=w,w=0,!(h&1)):0){f=Ue(16)|0;w=0;ce(64,u|0,a|0);h=w;w=0;if(!(h&1)){w=0;e=Me(1)|0;h=w;w=0;if(!(h&1)?(w=0,Ce(36,f|0,11,e|0,u|0),h=w,w=0,!(h&1)):0){w=0;Ee(6,f|0,824,96);w=0;r=0}else r=1;e=je()|0;xh(u);if(!r)break}else e=je()|0;He(f|0)}else b=40}while(0);if((b|0)==40)e=je()|0;t[d>>2]=36200;t[o>>2]=36220;t[a>>2]=36236;xh(s);cd(a);nd(o);b=e;Qe(b|0)}}while(0);b=e;nd(o);Qe(b|0)}}return 0}function vp(e){e=e|0;var i=0;if((kp(e)|0)<<24>>24!=1){e=1;return e|0}i=((kp(e)|0)&255)<<8;t[e+52>>2]=i|(kp(e)|0)&255;i=((kp(e)|0)&255)<<8;t[e+56>>2]=i|(kp(e)|0)&255;i=((kp(e)|0)&255)<<8;t[e+60>>2]=i|(kp(e)|0)&255;i=((kp(e)|0)&255)<<8;t[e+64>>2]=i|(kp(e)|0)&255;i=((kp(e)|0)&255)<<8;t[e+68>>2]=i|(kp(e)|0)&255;e=11;return e|0}function pp(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0;r=c;c=c+16|0;n=r;t[n>>2]=0;a=n+4|0;t[a>>2]=0;t[n+8>>2]=0;w=0;Ee(9,e|0,n|0,4);i=w;w=0;e:do{if(i&1)f=3;else{i=t[n>>2]|0;i:do{if(!(Xy(i,51051,4)|0)){w=0;i=de(69,e|0)|0;s=w;w=0;if(s&1){f=3;break e}i=i&255;switch(i|0){case 3:case 2:case 1:case 0:{t[e+44>>2]=i;e=5;i=t[n>>2]|0;break i}case 5:case 4:{i=Ue(16)|0;w=0;e=Me(1)|0;s=w;w=0;if(!(s&1)?(w=0,Ee(7,i|0,7,e|0),s=w,w=0,!(s&1)):0){w=0;Ee(6,i|0,824,96);w=0;f=3;break e}e=je()|0;He(i|0);break e}default:{i=Ue(16)|0;w=0;e=Me(1)|0;s=w;w=0;if(!(s&1)?(w=0,Ee(7,i|0,5,e|0),s=w,w=0,!(s&1)):0){w=0;Ee(6,i|0,824,96);w=0;f=3;break e}e=je()|0;He(i|0);break e}}}else e=4}while(0);if(!i){c=r;return e|0}if((t[a>>2]|0)!=(i|0))t[a>>2]=i;Bp(i);c=r;return e|0}}while(0);if((f|0)==3)e=je()|0;i=t[n>>2]|0;if(!i)Qe(e|0);if((t[a>>2]|0)!=(i|0))t[a>>2]=i;Bp(i);Qe(e|0);return 0}function gp(e){e=e|0;var i=0,r=0,f=0;f=t[(t[e>>2]|0)+-12>>2]|0;t[e+f>>2]=36200;i=e+(f+56)|0;t[i>>2]=36220;r=e+(f+4)|0;t[r>>2]=36236;xh(e+(f+36)|0);cd(r);nd(i);return}function yp(e){e=e|0;return}function Mp(e){e=e|0;Bp(e);return}function Ap(e){e=e|0;f[e>>0]=0;e=e+4|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[e+16>>2]=0;t[e+20>>2]=0;t[e+24>>2]=0;t[e+28>>2]=0;return}function Ep(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0;n=c;c=c+16|0;a=n;i=ip(i)|0;t[a>>2]=i;r=e+28|0;f=t[r>>2]|0;if(f>>>0<(t[e+32>>2]|0)>>>0){t[f>>2]=i;t[r>>2]=f+4;t[a>>2]=0;c=n;return}w=0;ce(57,e+24|0,a|0);e=w;w=0;if(e&1){i=je()|0;r=t[a>>2]|0;t[a>>2]=0;if(!r)Qe(i|0);tM[t[(t[r>>2]|0)+4>>2]&255](r);Qe(i|0)}else{i=t[a>>2]|0;t[a>>2]=0;if(!i){c=n;return}tM[t[(t[i>>2]|0)+4>>2]&255](i);c=n;return}}function Sp(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0;f=e+4|0;t[f>>2]=t[i>>2];t[f+4>>2]=t[i+4>>2];t[f+8>>2]=t[i+8>>2];lp(e,-1);lp(e,-40);f=e+28|0;n=e+24|0;i=t[n>>2]|0;if((t[f>>2]|0)==(i|0)){lp(e,-1);lp(e,-39);e=e+16|0;e=t[e>>2]|0;return e|0}else r=0;do{a=t[i+(r<<2)>>2]|0;aM[t[(t[a>>2]|0)+8>>2]&127](a,e);r=r+1|0;i=t[n>>2]|0}while(r>>>0<(t[f>>2]|0)-i>>2>>>0);lp(e,-1);lp(e,-39);a=e+16|0;a=t[a>>2]|0;return a|0}function Tp(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;d=c;c=c+48|0;l=d+32|0;n=d+12|0;o=d+8|0;h=d+4|0;b=d;f=r+36|0;do{if(((((t[f>>2]|0)==0?(t[r+40>>2]|0)==0:0)?(t[r+44>>2]|0)==0:0)?(t[r+48>>2]|0)==0:0)?(t[r+52>>2]|0)==0:0){f=t[r+8>>2]|0;if((f|0)<=12){a=e+28|0;s=e+32|0;break}op(n,(1<<f)+-1|0,t[r+20>>2]|0);f=ep(n)|0;t[o>>2]=f;a=e+28|0;n=t[a>>2]|0;s=e+32|0;if(n>>>0<(t[s>>2]|0)>>>0){t[n>>2]=f;t[a>>2]=n+4;t[o>>2]=0;break}w=0;ce(57,e+24|0,o|0);l=w;w=0;if(!(l&1)){f=t[o>>2]|0;t[o>>2]=0;if(!f)break;tM[t[(t[f>>2]|0)+4>>2]&255](f);break}r=je()|0;f=t[o>>2]|0;t[o>>2]=0;if(!f){b=r;Qe(b|0)}tM[t[(t[f>>2]|0)+4>>2]&255](f);b=r;Qe(b|0)}else u=6}while(0);do{if((u|0)==6){f=ep(f)|0;t[l>>2]=f;a=e+28|0;n=t[a>>2]|0;s=e+32|0;if(n>>>0<(t[s>>2]|0)>>>0){t[n>>2]=f;t[a>>2]=n+4;t[l>>2]=0;break}w=0;ce(57,e+24|0,l|0);u=w;w=0;if(!(u&1)){f=t[l>>2]|0;t[l>>2]=0;if(!f)break;tM[t[(t[f>>2]|0)+4>>2]&255](f);break}r=je()|0;f=t[l>>2]|0;t[l>>2]=0;if(!f){b=r;Qe(b|0)}tM[t[(t[f>>2]|0)+4>>2]&255](f);b=r;Qe(b|0)}}while(0);f=e+20|0;n=(t[f>>2]|0)+1|0;t[f>>2]=n;f=t[r+24>>2]|0;l=(f|0)==0?1:t[r+16>>2]|0;f=rp(n,l,t[r+20>>2]|0,f)|0;t[h>>2]=f;n=t[a>>2]|0;do{if(n>>>0<(t[s>>2]|0)>>>0){t[n>>2]=f;t[a>>2]=n+4;t[h>>2]=0}else{w=0;ce(57,e+24|0,h|0);u=w;w=0;if(!(u&1)){f=t[h>>2]|0;t[h>>2]=0;if(!f)break;tM[t[(t[f>>2]|0)+4>>2]&255](f);break}r=je()|0;f=t[h>>2]|0;t[h>>2]=0;if(!f){b=r;Qe(b|0)}tM[t[(t[f>>2]|0)+4>>2]&255](f);b=r;Qe(b|0)}}while(0);o=Lp(104)|0;t[o>>2]=36820;t[o+4>>2]=l;n=o+8|0;t[n>>2]=t[i>>2];t[n+4>>2]=t[i+4>>2];t[n+8>>2]=t[i+8>>2];n=o+20|0;f=n+84|0;do{t[n>>2]=t[r>>2];n=n+4|0;r=r+4|0}while((n|0)<(f|0));t[b>>2]=o;r=t[a>>2]|0;if(r>>>0<(t[s>>2]|0)>>>0){t[r>>2]=o;t[a>>2]=r+4;t[b>>2]=0;c=d;return}w=0;ce(57,e+24|0,b|0);e=w;w=0;if(e&1){r=je()|0;f=t[b>>2]|0;t[b>>2]=0;if(!f){b=r;Qe(b|0)}tM[t[(t[f>>2]|0)+4>>2]&255](f);b=r;Qe(b|0)}else{r=t[b>>2]|0;t[b>>2]=0;if(!r){c=d;return}tM[t[(t[r>>2]|0)+4>>2]&255](r);c=d;return}}function Rp(e,i,r,n,a,s,l,o,u,h,d){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;d=d|0;var b=0,_=0,k=0,w=0,m=0,v=0,p=0;k=c;c=c+96|0;_=k;b=ji(e,i,_,0)|0;if(b){a=b;c=k;return a|0}f[_+32>>0]=0;m=t[_+8>>2]|0;p=t[_>>2]|0;v=t[_+4>>2]|0;b=re(v,p)|0;w=t[_+16>>2]|0;b=re(re(b,(m|0)<9?1:2)|0,w)|0;t[n>>2]=b;b=Pc(b)|0;t[r>>2]=b;t[a>>2]=p;t[s>>2]=v;t[l>>2]=m;t[o>>2]=t[_+12>>2];t[u>>2]=w;t[h>>2]=t[_+20>>2];t[d>>2]=t[_+24>>2];a=Yi(b,t[n>>2]|0,e,i,0,0)|0;c=k;return a|0}function Cp(e,i,r,f,n,a,s,l,o){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,h=0,d=0,b=0;d=c;c=c+96|0;u=d+4|0;s=d;h=u;b=h+84|0;do{t[h>>2]=0;h=h+4|0}while((h|0)<(b|0));t[u+16>>2]=a;t[u+8>>2]=n;t[u>>2]=r;t[u+4>>2]=f;t[l>>2]=Pc(i)|0;t[s>>2]=0;r=Ui(l,i,s,e,i,u,0)|0;t[o>>2]=t[s>>2];c=d;return r|0}function Pp(e,i){e=e|0;i=i|0;var r=0;r=c;c=c+16|0;t[r>>2]=i;i=t[9320]|0;By(i,e,r)|0;Ty(10,i)|0;Be()}function Ip(e){e=e|0;Fe(51337,51366,1164,51442)}function Op(e){e=e|0;Fe(51463,51486,303,51442)}function xp(){var e=0,i=0;e=c;c=c+16|0;if(!(ai(37024,4)|0)){i=ri(t[9255]|0)|0;c=e;return i|0}else Pp(51562,e);return 0}function Lp(e){e=e|0;var i=0;i=(e|0)==0?1:e;e=Pc(i)|0;e:do{if(!e){while(1){e=Yp()|0;if(!e)break;gM[e&7]();e=Pc(i)|0;if(e)break e}i=Ue(4)|0;t[i>>2]=36844;bi(i|0,592,78)}}while(0);return e|0}function Bp(e){e=e|0;Ic(e);return}function zp(e){e=e|0;Bp(e);return}function Dp(e){e=e|0;t[e>>2]=36844;return}function Np(e){e=e|0;return}function Fp(e){e=e|0;Bp(e);return}function Hp(e){e=e|0;return 51611}function Up(e){e=e|0;var i=0;i=c;c=c+16|0;w=0;Se(e|0);e=w;w=0;if(!(e&1)){w=0;ce(85,51626,i|0);w=0}e=je(0)|0;We(e|0)|0;w=0;ce(85,51666,i+8|0);w=0;e=je(0)|0;w=0;Se(3);i=w;w=0;if(i&1){i=je(0)|0;Ni(i)}else Ni(e)}function jp(){var e=0,i=0,r=0;w=0;e=Me(2)|0;r=w;w=0;if(r&1){r=je(0)|0;Ni(r)}if(((e|0)!=0?(i=t[e>>2]|0,(i|0)!=0):0)?(r=i+48|0,(t[r>>2]&-256|0)==1126902528?(t[r+4>>2]|0)==1129074247:0):0)Up(t[i+12>>2]|0);r=t[9208]|0;t[9208]=r+0;Up(r)}function Yp(){var e=0;e=t[9214]|0;t[9214]=e+0;return e|0}function qp(e){e=e|0;return}function $p(e){e=e|0;t[e>>2]=36868;Sg(e+4|0);return}function Vp(e){e=e|0;$p(e);Bp(e);return}function Xp(e){e=e|0;return t[e+4>>2]|0}function Gp(e){e=e|0;return}function Kp(e){e=e|0;t[e>>2]=36888;return}function Wp(e){e=e|0;return}function Zp(e){e=e|0;Bp(e);return}function Jp(e){e=e|0;return 51716}function Qp(e){e=e|0;return}function eg(e){e=e|0;return}function ig(e){e=e|0;return}function rg(e){e=e|0;Bp(e);return}function fg(e){e=e|0;Bp(e);return}function ng(e){e=e|0;Bp(e);return}function tg(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0;s=c;c=c+64|0;a=s;if((e|0)!=(i|0))if((i|0)!=0?(n=cg(i,656,672,0)|0,(n|0)!=0):0){i=a;f=i+56|0;do{t[i>>2]=0;i=i+4|0}while((i|0)<(f|0));t[a>>2]=n;t[a+8>>2]=e;t[a+12>>2]=-1;t[a+48>>2]=1;AM[t[(t[n>>2]|0)+28>>2]&63](n,a,t[r>>2]|0,1);if((t[a+24>>2]|0)==1){t[r>>2]=t[a+16>>2];i=1}else i=0}else i=0;else i=1;c=s;return i|0}function ag(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0;e=i+16|0;a=t[e>>2]|0;do{if(a){if((a|0)!=(r|0)){n=i+36|0;t[n>>2]=(t[n>>2]|0)+1;t[i+24>>2]=2;f[i+54>>0]=1;break}e=i+24|0;if((t[e>>2]|0)==2)t[e>>2]=n}else{t[e>>2]=r;t[i+24>>2]=n;t[i+36>>2]=1}}while(0);return}function sg(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;if((e|0)==(t[i+8>>2]|0))ag(0,i,r,f);return}function lg(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;if((e|0)==(t[i+8>>2]|0))ag(0,i,r,f);else{e=t[e+8>>2]|0;AM[t[(t[e>>2]|0)+28>>2]&63](e,i,r,f)}return}function og(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0;a=t[e+4>>2]|0;n=a>>8;if(a&1)n=t[(t[r>>2]|0)+n>>2]|0;e=t[e>>2]|0;AM[t[(t[e>>2]|0)+28>>2]&63](e,i,r+n|0,(a&2|0)!=0?f:2);return}function ug(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0;e:do{if((e|0)!=(t[i+8>>2]|0)){s=t[e+12>>2]|0;a=e+16+(s<<3)|0;og(e+16|0,i,r,n);if((s|0)>1){s=i+54|0;e=e+24|0;do{og(e,i,r,n);if(f[s>>0]|0)break e;e=e+8|0}while(e>>>0<a>>>0)}}else ag(0,i,r,n)}while(0);return}function cg(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0;w=c;c=c+64|0;k=w;_=t[e>>2]|0;b=e+(t[_+-8>>2]|0)|0;_=t[_+-4>>2]|0;t[k>>2]=r;t[k+4>>2]=e;t[k+8>>2]=i;t[k+12>>2]=a;a=k+16|0;e=k+20|0;i=k+24|0;s=k+28|0;l=k+32|0;o=k+40|0;u=(_|0)==(r|0);h=a;d=h+36|0;do{t[h>>2]=0;h=h+4|0}while((h|0)<(d|0));n[a+36>>1]=0;f[a+38>>0]=0;e:do{if(u){t[k+48>>2]=1;hM[t[(t[r>>2]|0)+20>>2]&15](r,k,b,b,1,0);a=(t[i>>2]|0)==1?b:0}else{fM[t[(t[_>>2]|0)+24>>2]&15](_,k,b,1,0);switch(t[k+36>>2]|0){case 0:{a=(t[o>>2]|0)==1&(t[s>>2]|0)==1&(t[l>>2]|0)==1?t[e>>2]|0:0;break e}case 1:break;default:{a=0;break e}}if((t[i>>2]|0)!=1?!((t[o>>2]|0)==0&(t[s>>2]|0)==1&(t[l>>2]|0)==1):0){a=0;break}a=t[a>>2]|0}}while(0);c=w;return a|0}function hg(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;f[i+53>>0]=1;do{if((t[i+4>>2]|0)==(n|0)){f[i+52>>0]=1;n=i+16|0;e=t[n>>2]|0;if(!e){t[n>>2]=r;t[i+24>>2]=a;t[i+36>>2]=1;if(!((a|0)==1?(t[i+48>>2]|0)==1:0))break;f[i+54>>0]=1;break}if((e|0)!=(r|0)){a=i+36|0;t[a>>2]=(t[a>>2]|0)+1;f[i+54>>0]=1;break}e=i+24|0;n=t[e>>2]|0;if((n|0)==2){t[e>>2]=a;n=a}if((n|0)==1?(t[i+48>>2]|0)==1:0)f[i+54>>0]=1}}while(0);return}function dg(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0;e:do{if((e|0)==(t[i+8>>2]|0)){if((t[i+4>>2]|0)==(r|0)?(s=i+28|0,(t[s>>2]|0)!=1):0)t[s>>2]=n}else{if((e|0)!=(t[i>>2]|0)){k=t[e+12>>2]|0;o=e+16+(k<<3)|0;_g(e+16|0,i,r,n,a);s=e+24|0;if((k|0)<=1)break;l=t[e+8>>2]|0;if((l&2|0)==0?(u=i+36|0,(t[u>>2]|0)!=1):0){if(!(l&1)){l=i+54|0;while(1){if(f[l>>0]|0)break e;if((t[u>>2]|0)==1)break e;_g(s,i,r,n,a);s=s+8|0;if(s>>>0>=o>>>0)break e}}l=i+24|0;e=i+54|0;while(1){if(f[e>>0]|0)break e;if((t[u>>2]|0)==1?(t[l>>2]|0)==1:0)break e;_g(s,i,r,n,a);s=s+8|0;if(s>>>0>=o>>>0)break e}}l=i+54|0;while(1){if(f[l>>0]|0)break e;_g(s,i,r,n,a);s=s+8|0;if(s>>>0>=o>>>0)break e}}if((t[i+16>>2]|0)!=(r|0)?(_=i+20|0,(t[_>>2]|0)!=(r|0)):0){t[i+32>>2]=n;h=i+44|0;if((t[h>>2]|0)==4)break;l=t[e+12>>2]|0;o=e+16+(l<<3)|0;u=i+52|0;n=i+53|0;d=i+54|0;c=e+8|0;b=i+24|0;i:do{if((l|0)>0){l=0;s=0;e=e+16|0;while(1){f[u>>0]=0;f[n>>0]=0;bg(e,i,r,r,1,a);if(f[d>>0]|0){k=20;break i}do{if(f[n>>0]|0){if(!(f[u>>0]|0))if(!(t[c>>2]&1)){s=1;k=20;break i}else{s=1;break}if((t[b>>2]|0)==1)break i;if(!(t[c>>2]&2))break i;else{l=1;s=1}}}while(0);e=e+8|0;if(e>>>0>=o>>>0){k=20;break}}}else{l=0;s=0;k=20}}while(0);do{if((k|0)==20){if((!l?(t[_>>2]=r,r=i+40|0,t[r>>2]=(t[r>>2]|0)+1,(t[i+36>>2]|0)==1):0)?(t[b>>2]|0)==2:0){f[d>>0]=1;if(s)break}else k=24;if((k|0)==24?s:0)break;t[h>>2]=4;break e}}while(0);t[h>>2]=3;break}if((n|0)==1)t[i+32>>2]=1}}while(0);return}function bg(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0;l=t[e+4>>2]|0;s=l>>8;if(l&1)s=t[(t[f>>2]|0)+s>>2]|0;e=t[e>>2]|0;hM[t[(t[e>>2]|0)+20>>2]&15](e,i,r,f+s|0,(l&2|0)!=0?n:2,a);return}function _g(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0;s=t[e+4>>2]|0;a=s>>8;if(s&1)a=t[(t[r>>2]|0)+a>>2]|0;e=t[e>>2]|0;fM[t[(t[e>>2]|0)+24>>2]&15](e,i,r+a|0,(s&2|0)!=0?f:2,n);return}function kg(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0;e:do{if((e|0)==(t[i+8>>2]|0)){if((t[i+4>>2]|0)==(r|0)?(s=i+28|0,(t[s>>2]|0)!=1):0)t[s>>2]=n}else{if((e|0)!=(t[i>>2]|0)){o=t[e+8>>2]|0;fM[t[(t[o>>2]|0)+24>>2]&15](o,i,r,n,a);break}if((t[i+16>>2]|0)!=(r|0)?(l=i+20|0,(t[l>>2]|0)!=(r|0)):0){t[i+32>>2]=n;n=i+44|0;if((t[n>>2]|0)==4)break;s=i+52|0;f[s>>0]=0;u=i+53|0;f[u>>0]=0;e=t[e+8>>2]|0;hM[t[(t[e>>2]|0)+20>>2]&15](e,i,r,r,1,a);if(f[u>>0]|0){if(!(f[s>>0]|0)){s=1;o=13}}else{s=0;o=13}do{if((o|0)==13){t[l>>2]=r;u=i+40|0;t[u>>2]=(t[u>>2]|0)+1;if((t[i+36>>2]|0)==1?(t[i+24>>2]|0)==2:0){f[i+54>>0]=1;if(s)break}else o=16;if((o|0)==16?s:0)break;t[n>>2]=4;break e}}while(0);t[n>>2]=3;break}if((n|0)==1)t[i+32>>2]=1}}while(0);return}function wg(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0;do{if((e|0)==(t[i+8>>2]|0)){if((t[i+4>>2]|0)==(r|0)?(l=i+28|0,(t[l>>2]|0)!=1):0)t[l>>2]=n}else if((e|0)==(t[i>>2]|0)){if((t[i+16>>2]|0)!=(r|0)?(s=i+20|0,(t[s>>2]|0)!=(r|0)):0){t[i+32>>2]=n;t[s>>2]=r;a=i+40|0;t[a>>2]=(t[a>>2]|0)+1;if((t[i+36>>2]|0)==1?(t[i+24>>2]|0)==2:0)f[i+54>>0]=1;t[i+44>>2]=4;break}if((n|0)==1)t[i+32>>2]=1}}while(0);return}function mg(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0;if((e|0)==(t[i+8>>2]|0))hg(0,i,r,n,a);else{h=i+52|0;d=f[h>>0]|0;b=i+53|0;_=f[b>>0]|0;c=t[e+12>>2]|0;l=e+16+(c<<3)|0;f[h>>0]=0;f[b>>0]=0;bg(e+16|0,i,r,n,a,s);e:do{if((c|0)>1){o=i+24|0;u=e+8|0;c=i+54|0;e=e+24|0;do{if(f[c>>0]|0)break e;if(!(f[h>>0]|0)){if((f[b>>0]|0)!=0?(t[u>>2]&1|0)==0:0)break e}else{if((t[o>>2]|0)==1)break e;if(!(t[u>>2]&2))break e}f[h>>0]=0;f[b>>0]=0;bg(e,i,r,n,a,s);e=e+8|0}while(e>>>0<l>>>0)}}while(0);f[h>>0]=d;f[b>>0]=_}return}function vg(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;if((e|0)==(t[i+8>>2]|0))hg(0,i,r,f,n);else{e=t[e+8>>2]|0;hM[t[(t[e>>2]|0)+20>>2]&15](e,i,r,f,n,a)}return}function pg(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;if((e|0)==(t[i+8>>2]|0))hg(0,i,r,f,n);return}function gg(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0;n=c;c=c+16|0;f=n;t[f>>2]=t[r>>2];e=uM[t[(t[e>>2]|0)+16>>2]&63](e,i,f)|0;if(e)t[r>>2]=t[f>>2];c=n;return e&1|0}function yg(e){e=e|0;if(!e)e=0;else e=(cg(e,656,704,0)|0)!=0;return e&1|0}function Mg(){var e=0;e=Ue(4)|0;Dp(e);bi(e|0,592,78)}function Ag(){var e=0,i=0,r=0,f=0,n=0,a=0,s=0,l=0;n=c;c=c+48|0;s=n+32|0;r=n+24|0;l=n+16|0;a=n;n=n+36|0;e=xp()|0;if((e|0)!=0?(f=t[e>>2]|0,(f|0)!=0):0){e=f+48|0;i=t[e>>2]|0;e=t[e+4>>2]|0;if(!((i&-256|0)==1126902528&(e|0)==1129074247)){t[r>>2]=t[9257];Pp(51919,r)}if((i|0)==1126902529&(e|0)==1129074247)e=t[f+44>>2]|0;else e=f+80|0;t[n>>2]=e;f=t[f>>2]|0;e=t[f+4>>2]|0;if(uM[t[(t[608>>2]|0)+16>>2]&63](608,f,n)|0){l=t[n>>2]|0;n=t[9257]|0;l=lM[t[(t[l>>2]|0)+8>>2]&127](l)|0;t[a>>2]=n;t[a+4>>2]=e;t[a+8>>2]=l;Pp(51833,a)}else{t[l>>2]=t[9257];t[l+4>>2]=e;Pp(51878,l)}}Pp(51957,s)}function Eg(){var e=0;e=c;c=c+16|0;if(!(Le(37020,184)|0)){c=e;return}else Pp(51730,e)}function Sg(e){e=e|0;var i=0,r=0;r=(t[e>>2]|0)+-4|0;i=t[r>>2]|0;t[r>>2]=i+-1;if((i+-1|0)<0)Bp((t[e>>2]|0)+-12|0);return}function Tg(e){e=e|0;var i=0;i=c;c=c+16|0;Ic(e);if(!(hi(t[9255]|0,0)|0)){c=i;return}else Pp(51780,i)}function Rg(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;e=Hy(e,i,r)|0;return e|0}function Cg(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;e=Uy(e,i,r)|0;return e|0}function Pg(){return 37296}function Ig(){return 37300}function Og(){return 37304}function xg(e){e=e|0;return((e|0)==32|(e+-9|0)>>>0<5)&1|0}function Lg(e){e=e|0;if((e+-48|0)>>>0<10)e=1;else e=((e|32)+-97|0)>>>0<6;return e&1|0}function Bg(){var e=0;if(!(t[9258]|0))e=37308;else e=t[(ni()|0)+60>>2]|0;return e|0}function zg(e){e=e|0;var i=0,r=0;i=0;while(1){if((a[51978+i>>0]|0)==(e|0)){r=2;break}i=i+1|0;if((i|0)==87){i=87;e=52066;r=5;break}}if((r|0)==2)if(!i)e=52066;else{e=52066;r=5}if((r|0)==5)while(1){r=e;while(1){e=r+1|0;if(!(f[r>>0]|0))break;else r=e}i=i+-1|0;if(!i)break;else r=5}return e|0}function Dg(e,i,r){e=e|0;i=i|0;r=r|0;var n=0.0,s=0,l=0.0,o=0,u=0,h=0.0,d=0,b=0,_=0,k=0.0,w=0.0,m=0,v=0,p=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,x=0,L=0,B=0,z=0,D=0,N=0.0;D=c;c=c+512|0;x=D;switch(i|0){case 0:{z=24;B=-149;S=4;break}case 1:{z=53;B=-1074;S=4;break}case 2:{z=53;B=-1074;S=4;break}default:n=0.0}e:do{if((S|0)==4){C=e+4|0;R=e+100|0;do{i=t[C>>2]|0;if(i>>>0<(t[R>>2]|0)>>>0){t[C>>2]=i+1;i=a[i>>0]|0}else i=Hg(e)|0}while((xg(i)|0)!=0);i:do{switch(i|0){case 43:case 45:{s=1-(((i|0)==45&1)<<1)|0;i=t[C>>2]|0;if(i>>>0<(t[R>>2]|0)>>>0){t[C>>2]=i+1;i=a[i>>0]|0;L=s;break i}else{i=Hg(e)|0;L=s;break i}}default:L=1}}while(0);s=i;i=0;do{if((s|32|0)!=(f[53870+i>>0]|0))break;do{if(i>>>0<7){s=t[C>>2]|0;if(s>>>0<(t[R>>2]|0)>>>0){t[C>>2]=s+1;s=a[s>>0]|0;break}else{s=Hg(e)|0;break}}}while(0);i=i+1|0}while(i>>>0<8);i:do{switch(i|0){case 8:break;case 3:{S=23;break}default:{o=(r|0)!=0;if(o&i>>>0>3)if((i|0)==8)break i;else{S=23;break i}r:do{if(!i){i=0;do{if((s|32|0)!=(f[56747+i>>0]|0))break r;do{if(i>>>0<2){s=t[C>>2]|0;if(s>>>0<(t[R>>2]|0)>>>0){t[C>>2]=s+1;s=a[s>>0]|0;break}else{s=Hg(e)|0;break}}}while(0);i=i+1|0}while(i>>>0<3)}}while(0);switch(i|0){case 3:{i=t[C>>2]|0;if(i>>>0<(t[R>>2]|0)>>>0){t[C>>2]=i+1;i=a[i>>0]|0}else i=Hg(e)|0;if((i|0)==40)i=1;else{if(!(t[R>>2]|0)){n=g;break e}t[C>>2]=(t[C>>2]|0)+-1;n=g;break e}while(1){s=t[C>>2]|0;if(s>>>0<(t[R>>2]|0)>>>0){t[C>>2]=s+1;s=a[s>>0]|0}else s=Hg(e)|0;if(!((s+-48|0)>>>0<10|(s+-65|0)>>>0<26)?!((s|0)==95|(s+-97|0)>>>0<26):0)break;i=i+1|0}if((s|0)==41){n=g;break e}s=(t[R>>2]|0)==0;if(!s)t[C>>2]=(t[C>>2]|0)+-1;if(!o){t[(Bg()|0)>>2]=22;Fg(e,0);n=0.0;break e}if(!i){n=g;break e}while(1){i=i+-1|0;if(!s)t[C>>2]=(t[C>>2]|0)+-1;if(!i){n=g;break e}}}case 0:{do{if((s|0)==48){i=t[C>>2]|0;if(i>>>0<(t[R>>2]|0)>>>0){t[C>>2]=i+1;i=a[i>>0]|0}else i=Hg(e)|0;if((i|32|0)!=120){if(!(t[R>>2]|0)){i=48;break}t[C>>2]=(t[C>>2]|0)+-1;i=48;break}i=t[C>>2]|0;if(i>>>0<(t[R>>2]|0)>>>0){t[C>>2]=i+1;i=a[i>>0]|0;o=0}else{i=Hg(e)|0;o=0}r:while(1){switch(i|0){case 46:{S=74;break r}case 48:break;default:{A=0;u=0;M=0;s=0;d=o;b=0;p=0;h=1.0;o=0;n=0.0;break r}}i=t[C>>2]|0;if(i>>>0<(t[R>>2]|0)>>>0){t[C>>2]=i+1;i=a[i>>0]|0;o=1;continue}else{i=Hg(e)|0;o=1;continue}}if((S|0)==74){i=t[C>>2]|0;if(i>>>0<(t[R>>2]|0)>>>0){t[C>>2]=i+1;i=a[i>>0]|0}else i=Hg(e)|0;if((i|0)==48){o=0;s=0;do{i=t[C>>2]|0;if(i>>>0<(t[R>>2]|0)>>>0){t[C>>2]=i+1;i=a[i>>0]|0}else i=Hg(e)|0;o=Mm(o|0,s|0,-1,-1)|0;s=O}while((i|0)==48);A=0;u=0;M=o;d=1;b=1;p=0;h=1.0;o=0;n=0.0}else{A=0;u=0;M=0;s=0;d=o;b=1;p=0;h=1.0;o=0;n=0.0}}while(1){m=i+-48|0;_=i|32;if(m>>>0>=10){v=(i|0)==46;if(!(v|(_+-97|0)>>>0<6)){_=M;m=A;break}if(v)if(!b){v=u;s=A;m=A;b=1;_=p;l=h}else{_=M;m=A;i=46;break}else S=86}else S=86;if((S|0)==86){S=0;i=(i|0)>57?_+-87|0:m;do{if(!((A|0)<0|(A|0)==0&u>>>0<8)){if((A|0)<0|(A|0)==0&u>>>0<14){w=h*.0625;_=p;l=w;n=n+w*+(i|0);break}if((p|0)!=0|(i|0)==0){_=p;l=h}else{_=1;l=h;n=n+h*.5}}else{_=p;l=h;o=i+(o<<4)|0}}while(0);u=Mm(u|0,A|0,1,0)|0;v=M;m=O;d=1}i=t[C>>2]|0;if(i>>>0<(t[R>>2]|0)>>>0){t[C>>2]=i+1;A=m;M=v;i=a[i>>0]|0;p=_;h=l;continue}else{A=m;M=v;i=Hg(e)|0;p=_;h=l;continue}}if(!d){i=(t[R>>2]|0)==0;if(!i)t[C>>2]=(t[C>>2]|0)+-1;if(r){if(!i?(E=t[C>>2]|0,t[C>>2]=E+-1,(b|0)!=0):0)t[C>>2]=E+-2}else Fg(e,0);n=+(L|0)*0.0;break e}d=(b|0)==0;b=d?u:_;d=d?m:s;if((m|0)<0|(m|0)==0&u>>>0<8){s=m;do{o=o<<4;u=Mm(u|0,s|0,1,0)|0;s=O}while((s|0)<0|(s|0)==0&u>>>0<8)}if((i|32|0)==112){s=Jy(e,r)|0;i=O;if((s|0)==0&(i|0)==-2147483648){if(!r){Fg(e,0);n=0.0;break e}if(!(t[R>>2]|0)){s=0;i=0}else{t[C>>2]=(t[C>>2]|0)+-1;s=0;i=0}}}else if(!(t[R>>2]|0)){s=0;i=0}else{t[C>>2]=(t[C>>2]|0)+-1;s=0;i=0}x=Sm(b|0,d|0,2)|0;x=Mm(x|0,O|0,-32,-1)|0;i=Mm(x|0,O|0,s|0,i|0)|0;s=O;if(!o){n=+(L|0)*0.0;break e}if((s|0)>0|(s|0)==0&i>>>0>(0-B|0)>>>0){t[(Bg()|0)>>2]=34;n=+(L|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break e}x=B+-106|0;I=((x|0)<0)<<31>>31;if((s|0)<(I|0)|(s|0)==(I|0)&i>>>0<x>>>0){t[(Bg()|0)>>2]=34;n=+(L|0)*2.2250738585072014e-308*2.2250738585072014e-308;break e}if((o|0)>-1){do{I=!(n>=.5);x=I&1|o<<1;o=x^1;n=n+(I?n:n+-1.0);i=Mm(i|0,s|0,-1,-1)|0;s=O}while((x|0)>-1);u=i;h=n}else{u=i;h=n}i=gm(32,0,B|0,((B|0)<0)<<31>>31|0)|0;i=Mm(u|0,s|0,i|0,O|0)|0;B=O;if(0>(B|0)|0==(B|0)&z>>>0>i>>>0)if((i|0)<0){i=0;S=127}else S=125;else{i=z;S=125}if((S|0)==125)if((i|0)<53)S=127;else{s=i;l=+(L|0);n=0.0}if((S|0)==127){n=+(L|0);s=i;l=n;n=+Zg(+ry(1.0,84-i|0),n)}z=(o&1|0)==0&(h!=0.0&(s|0)<32);n=l*(z?0.0:h)+(n+l*+(((z&1)+o|0)>>>0))-n;if(!(n!=0.0))t[(Bg()|0)>>2]=34;n=+fy(n,u);break e}else i=s}while(0);P=B+z|0;I=0-P|0;o=0;r:while(1){switch(i|0){case 46:{S=138;break r}case 48:break;default:{s=0;_=0;b=0;break r}}i=t[C>>2]|0;if(i>>>0<(t[R>>2]|0)>>>0){t[C>>2]=i+1;i=a[i>>0]|0;o=1;continue}else{i=Hg(e)|0;o=1;continue}}if((S|0)==138){i=t[C>>2]|0;if(i>>>0<(t[R>>2]|0)>>>0){t[C>>2]=i+1;i=a[i>>0]|0}else i=Hg(e)|0;if((i|0)==48){s=0;i=0;while(1){s=Mm(s|0,i|0,-1,-1)|0;o=O;i=t[C>>2]|0;if(i>>>0<(t[R>>2]|0)>>>0){t[C>>2]=i+1;i=a[i>>0]|0}else i=Hg(e)|0;if((i|0)==48)i=o;else{_=o;o=1;b=1;break}}}else{s=0;_=0;b=1}}t[x>>2]=0;d=i+-48|0;u=(i|0)==46;r:do{if(u|d>>>0<10){T=x+496|0;A=0;v=0;p=u;S=_;m=o;E=b;o=0;u=0;b=0;f:while(1){do{if(p)if(!E){s=A;_=v;E=1}else{_=S;i=A;d=v;break f}else{p=Mm(A|0,v|0,1,0)|0;v=O;M=(i|0)!=48;if((u|0)>=125){if(!M){_=S;A=p;break}t[T>>2]=t[T>>2]|1;_=S;A=p;break}_=x+(u<<2)|0;if(o)d=i+-48+((t[_>>2]|0)*10|0)|0;t[_>>2]=d;o=o+1|0;d=(o|0)==9;_=S;A=p;m=1;o=d?0:o;u=(d&1)+u|0;b=M?p:b}}while(0);i=t[C>>2]|0;if(i>>>0<(t[R>>2]|0)>>>0){t[C>>2]=i+1;i=a[i>>0]|0}else i=Hg(e)|0;d=i+-48|0;p=(i|0)==46;if(!(p|d>>>0<10)){d=E;S=161;break r}else S=_}m=(m|0)!=0;S=169}else{A=0;v=0;m=o;d=b;o=0;u=0;b=0;S=161}}while(0);do{if((S|0)==161){T=(d|0)==0;s=T?A:s;_=T?v:_;m=(m|0)!=0;if(!((i|32|0)==101&m))if((i|0)>-1){i=A;d=v;S=169;break}else{i=A;d=v;S=171;break}d=Jy(e,r)|0;i=O;if((d|0)==0&(i|0)==-2147483648){if(!r){Fg(e,0);n=0.0;break}if(!(t[R>>2]|0)){d=0;i=0}else{t[C>>2]=(t[C>>2]|0)+-1;d=0;i=0}}s=Mm(d|0,i|0,s|0,_|0)|0;m=A;_=O;d=v;S=173}}while(0);if((S|0)==169)if(t[R>>2]|0){t[C>>2]=(t[C>>2]|0)+-1;if(m){m=i;S=173}else S=172}else S=171;if((S|0)==171)if(m){m=i;S=173}else S=172;do{if((S|0)==172){t[(Bg()|0)>>2]=22;Fg(e,0);n=0.0}else if((S|0)==173){i=t[x>>2]|0;if(!i){n=+(L|0)*0.0;break}if(((d|0)<0|(d|0)==0&m>>>0<10)&((s|0)==(m|0)&(_|0)==(d|0))?z>>>0>30|(i>>>z|0)==0:0){n=+(L|0)*+(i>>>0);break}e=(B|0)/-2|0;C=((e|0)<0)<<31>>31;if((_|0)>(C|0)|(_|0)==(C|0)&s>>>0>e>>>0){t[(Bg()|0)>>2]=34;n=+(L|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}e=B+-106|0;C=((e|0)<0)<<31>>31;if((_|0)<(C|0)|(_|0)==(C|0)&s>>>0<e>>>0){t[(Bg()|0)>>2]=34;n=+(L|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(o){if((o|0)<9){d=x+(u<<2)|0;i=t[d>>2]|0;do{i=i*10|0;o=o+1|0}while((o|0)!=9);t[d>>2]=i}u=u+1|0}if((b|0)<9?(b|0)<=(s|0)&(s|0)<18:0){if((s|0)==9){n=+(L|0)*+((t[x>>2]|0)>>>0);break}if((s|0)<9){n=+(L|0)*+((t[x>>2]|0)>>>0)/+(t[37312+(8-s<<2)>>2]|0);break}e=z+27+(re(s,-3)|0)|0;i=t[x>>2]|0;if((e|0)>30|(i>>>e|0)==0){n=+(L|0)*+(i>>>0)*+(t[37312+(s+-10<<2)>>2]|0);break}}i=(s|0)%9|0;if(!i){o=0;i=0}else{m=(s|0)>-1?i:i+9|0;d=t[37312+(8-m<<2)>>2]|0;if(u){b=1e9/(d|0)|0;o=0;i=0;_=0;do{R=x+(_<<2)|0;C=t[R>>2]|0;e=((C>>>0)/(d>>>0)|0)+i|0;t[R>>2]=e;i=re((C>>>0)%(d>>>0)|0,b)|0;e=(_|0)==(o|0)&(e|0)==0;_=_+1|0;s=e?s+-9|0:s;o=e?_&127:o}while((_|0)!=(u|0));if(i){t[x+(u<<2)>>2]=i;u=u+1|0}}else{o=0;u=0}i=0;s=9-m+s|0}r:while(1){v=(s|0)<18;p=(s|0)==18;M=x+(o<<2)|0;do{if(!v){if(!p)break r;if((t[M>>2]|0)>>>0>=9007199){s=18;break r}}d=0;b=u+127|0;while(1){m=b&127;_=x+(m<<2)|0;b=Sm(t[_>>2]|0,0,29)|0;b=Mm(b|0,O|0,d|0,0)|0;d=O;if(d>>>0>0|(d|0)==0&b>>>0>1e9){e=Lm(b|0,d|0,1e9,0)|0;b=Bm(b|0,d|0,1e9,0)|0;d=e}else d=0;t[_>>2]=b;e=(m|0)==(o|0);u=(m|0)!=(u+127&127|0)|e?u:(b|0)==0?m:u;if(e)break;else b=m+-1|0}i=i+-29|0}while((d|0)==0);o=o+127&127;if((o|0)==(u|0)){e=u+127&127;u=x+((u+126&127)<<2)|0;t[u>>2]=t[u>>2]|t[x+(e<<2)>>2];u=e}t[x+(o<<2)>>2]=d;s=s+9|0}r:while(1){A=u+1&127;M=x+((u+127&127)<<2)|0;while(1){v=(s|0)==18;p=(s|0)>27?9:1;m=v^1;while(1){b=o&127;_=(b|0)==(u|0);do{if(!_){d=t[x+(b<<2)>>2]|0;if(d>>>0<9007199){S=219;break}if(d>>>0>9007199)break;d=o+1&127;if((d|0)==(u|0)){S=219;break}d=t[x+(d<<2)>>2]|0;if(d>>>0<254740991){S=219;break}if(!(d>>>0>254740991|m)){s=b;break r}}else S=219}while(0);if((S|0)==219?(S=0,v):0){S=220;break r}i=i+p|0;if((o|0)==(u|0))o=u;else break}m=(1<<p)+-1|0;v=1e9>>>p;b=o;d=0;_=o;while(1){C=x+(_<<2)|0;e=t[C>>2]|0;o=(e>>>p)+d|0;t[C>>2]=o;d=re(e&m,v)|0;o=(_|0)==(b|0)&(o|0)==0;_=_+1&127;s=o?s+-9|0:s;o=o?_:b;if((_|0)==(u|0))break;else b=o}if(!d)continue;if((A|0)!=(o|0))break;t[M>>2]=t[M>>2]|1}t[x+(u<<2)>>2]=d;u=A}if((S|0)==220)if(_){t[x+(A+-1<<2)>>2]=0;s=u;u=A}else s=b;n=+((t[x+(s<<2)>>2]|0)>>>0);s=o+1&127;if((s|0)==(u|0)){u=o+2&127;t[x+(u+-1<<2)>>2]=0}w=+(L|0);l=w*(n*1.0e9+ +((t[x+(s<<2)>>2]|0)>>>0));v=i+53|0;_=v-B|0;m=(_|0)<(z|0);s=m&1;b=m?(_|0)<0?0:_:z;if((b|0)<53){N=+Zg(+ry(1.0,105-b|0),l);h=+Qg(l,+ry(1.0,53-b|0));k=N;n=h;h=N+(l-h)}else{k=0.0;n=0.0;h=l}d=o+2&127;do{if((d|0)==(u|0))l=n;else{d=t[x+(d<<2)>>2]|0;do{if(d>>>0>=5e8){if(d>>>0>5e8){n=w*.75+n;break}if((o+3&127|0)==(u|0)){n=w*.5+n;break}else{n=w*.75+n;break}}else{if((d|0)==0?(o+3&127|0)==(u|0):0)break;n=w*.25+n}}while(0);if((53-b|0)<=1){l=n;break}if(+Qg(n,1.0)!=0.0){l=n;break}l=n+1.0}}while(0);n=h+l-k;do{if((v&2147483647|0)>(-2-P|0)){if(+Y(+n)>=9007199254740992.0){s=m&(b|0)==(_|0)?0:s;i=i+1|0;n=n*.5}if((i+50|0)<=(I|0)?!(l!=0.0&(s|0)!=0):0)break;t[(Bg()|0)>>2]=34}}while(0);n=+fy(n,i)}}while(0);break e}default:{if(t[R>>2]|0)t[C>>2]=(t[C>>2]|0)+-1;t[(Bg()|0)>>2]=22;Fg(e,0);n=0.0;break e}}}}}while(0);if((S|0)==23){s=(t[R>>2]|0)==0;if(!s)t[C>>2]=(t[C>>2]|0)+-1;if((r|0)!=0&i>>>0>3)do{if(!s)t[C>>2]=(t[C>>2]|0)+-1;i=i+-1|0}while(i>>>0>3)}n=+(L|0)*y}}while(0);c=D;return+n}function Ng(e,i,r,n,s){e=e|0;i=i|0;r=r|0;n=n|0;s=s|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0;e:do{if(i>>>0>36){t[(Bg()|0)>>2]=22;s=0;n=0}else{w=e+4|0;k=e+100|0;do{l=t[w>>2]|0;if(l>>>0<(t[k>>2]|0)>>>0){t[w>>2]=l+1;l=a[l>>0]|0}else l=Hg(e)|0}while((xg(l)|0)!=0);i:do{switch(l|0){case 43:case 45:{o=((l|0)==45)<<31>>31;l=t[w>>2]|0;if(l>>>0<(t[k>>2]|0)>>>0){t[w>>2]=l+1;l=a[l>>0]|0;_=o;break i}else{l=Hg(e)|0;_=o;break i}}default:_=0}}while(0);o=(i|0)==0;do{if((i&-17|0)==0&(l|0)==48){l=t[w>>2]|0;if(l>>>0<(t[k>>2]|0)>>>0){t[w>>2]=l+1;l=a[l>>0]|0}else l=Hg(e)|0;if((l|32|0)!=120)if(o){i=8;d=46;break}else{d=32;break}i=t[w>>2]|0;if(i>>>0<(t[k>>2]|0)>>>0){t[w>>2]=i+1;l=a[i>>0]|0}else l=Hg(e)|0;if((a[53879+(l+1)>>0]|0)>15){n=(t[k>>2]|0)==0;if(!n)t[w>>2]=(t[w>>2]|0)+-1;if(!r){Fg(e,0);s=0;n=0;break e}if(n){s=0;n=0;break e}t[w>>2]=(t[w>>2]|0)+-1;s=0;n=0;break e}else{i=16;d=46}}else{i=o?10:i;if((a[53879+(l+1)>>0]|0)>>>0<i>>>0)d=32;else{if(t[k>>2]|0)t[w>>2]=(t[w>>2]|0)+-1;Fg(e,0);t[(Bg()|0)>>2]=22;s=0;n=0;break e}}}while(0);if((d|0)==32)if((i|0)==10){i=l+-48|0;if(i>>>0<10){l=0;while(1){o=(l*10|0)+i|0;i=t[w>>2]|0;if(i>>>0<(t[k>>2]|0)>>>0){t[w>>2]=i+1;l=a[i>>0]|0}else l=Hg(e)|0;i=l+-48|0;if(!(i>>>0<10&o>>>0<429496729)){i=o;break}else l=o}o=0}else{i=0;o=0}r=l+-48|0;if(r>>>0<10){while(1){u=xm(i|0,o|0,10,0)|0;c=O;h=((r|0)<0)<<31>>31;b=~h;if(c>>>0>b>>>0|(c|0)==(b|0)&u>>>0>~r>>>0){u=i;break}i=Mm(u|0,c|0,r|0,h|0)|0;o=O;l=t[w>>2]|0;if(l>>>0<(t[k>>2]|0)>>>0){t[w>>2]=l+1;l=a[l>>0]|0}else l=Hg(e)|0;r=l+-48|0;if(!(r>>>0<10&(o>>>0<429496729|(o|0)==429496729&i>>>0<2576980378))){u=i;break}}if(r>>>0>9){l=u;i=_}else{i=10;d=72}}else{l=i;i=_}}else d=46;i:do{if((d|0)==46){if(!(i+-1&i)){d=f[54136+((i*23|0)>>>5&7)>>0]|0;o=f[53879+(l+1)>>0]|0;r=o&255;if(r>>>0<i>>>0){l=0;while(1){u=r|l<<d;l=t[w>>2]|0;if(l>>>0<(t[k>>2]|0)>>>0){t[w>>2]=l+1;l=a[l>>0]|0}else l=Hg(e)|0;o=f[53879+(l+1)>>0]|0;r=o&255;if(!(u>>>0<134217728&r>>>0<i>>>0))break;else l=u}r=0}else{r=0;u=0}c=Am(-1,-1,d|0)|0;h=O;if((o&255)>>>0>=i>>>0|(r>>>0>h>>>0|(r|0)==(h|0)&u>>>0>c>>>0)){o=r;d=72;break}else l=r;while(1){u=Sm(u|0,l|0,d|0)|0;r=O;u=o&255|u;l=t[w>>2]|0;if(l>>>0<(t[k>>2]|0)>>>0){t[w>>2]=l+1;l=a[l>>0]|0}else l=Hg(e)|0;o=f[53879+(l+1)>>0]|0;if((o&255)>>>0>=i>>>0|(r>>>0>h>>>0|(r|0)==(h|0)&u>>>0>c>>>0)){o=r;d=72;break i}else l=r}}o=f[53879+(l+1)>>0]|0;r=o&255;if(r>>>0<i>>>0){l=0;while(1){u=r+(re(l,i)|0)|0;l=t[w>>2]|0;if(l>>>0<(t[k>>2]|0)>>>0){t[w>>2]=l+1;l=a[l>>0]|0}else l=Hg(e)|0;o=f[53879+(l+1)>>0]|0;r=o&255;if(!(u>>>0<119304647&r>>>0<i>>>0))break;else l=u}r=0}else{u=0;r=0}if((o&255)>>>0<i>>>0){d=Lm(-1,-1,i|0,0)|0;b=O;h=r;while(1){if(h>>>0>b>>>0|(h|0)==(b|0)&u>>>0>d>>>0){o=h;d=72;break i}r=xm(u|0,h|0,i|0,0)|0;c=O;o=o&255;if(c>>>0>4294967295|(c|0)==-1&r>>>0>~o>>>0){o=h;d=72;break i}u=Mm(o|0,0,r|0,c|0)|0;r=O;l=t[w>>2]|0;if(l>>>0<(t[k>>2]|0)>>>0){t[w>>2]=l+1;l=a[l>>0]|0}else l=Hg(e)|0;o=f[53879+(l+1)>>0]|0;if((o&255)>>>0>=i>>>0){o=r;d=72;break}else h=r}}else{o=r;d=72}}}while(0);if((d|0)==72)if((a[53879+(l+1)>>0]|0)>>>0<i>>>0){do{l=t[w>>2]|0;if(l>>>0<(t[k>>2]|0)>>>0){t[w>>2]=l+1;l=a[l>>0]|0}else l=Hg(e)|0}while((a[53879+(l+1)>>0]|0)>>>0<i>>>0);t[(Bg()|0)>>2]=34;o=s;l=n;i=(n&1|0)==0&0==0?_:0}else{l=u;i=_}if(t[k>>2]|0)t[w>>2]=(t[w>>2]|0)+-1;if(!(o>>>0<s>>>0|(o|0)==(s|0)&l>>>0<n>>>0)){if(!((n&1|0)!=0|0!=0|(i|0)!=0)){t[(Bg()|0)>>2]=34;n=Mm(n|0,s|0,-1,-1)|0;s=O;break}if(o>>>0>s>>>0|(o|0)==(s|0)&l>>>0>n>>>0){t[(Bg()|0)>>2]=34;break}}n=((i|0)<0)<<31>>31;n=gm(l^i|0,o^n|0,i|0,n|0)|0;s=O}}while(0);O=s;return n|0}function Fg(e,i){e=e|0;i=i|0;var r=0,f=0,n=0;t[e+104>>2]=i;r=t[e+4>>2]|0;f=t[e+8>>2]|0;n=f-r|0;t[e+108>>2]=n;if((i|0)!=0&(n|0)>(i|0))t[e+100>>2]=r+i;else t[e+100>>2]=f;return}function Hg(e){e=e|0;var i=0,r=0,n=0,s=0,l=0,o=0;r=e+104|0;l=t[r>>2]|0;if((l|0)!=0?(t[e+108>>2]|0)>=(l|0):0)o=4;else{i=Ey(e)|0;if((i|0)>=0){s=t[r>>2]|0;r=e+8|0;if(s){n=t[r>>2]|0;l=t[e+4>>2]|0;r=n;s=s-(t[e+108>>2]|0)+-1|0;if((r-l|0)>(s|0))t[e+100>>2]=l+s;else o=9}else{n=t[r>>2]|0;r=n;o=9}if((o|0)==9)t[e+100>>2]=r;r=t[e+4>>2]|0;if(n){e=e+108|0;t[e>>2]=n+1-r+(t[e>>2]|0)}r=r+-1|0;if((a[r>>0]|0|0)!=(i|0))f[r>>0]=i}else o=4}if((o|0)==4){t[e+100>>2]=0;i=-1}return i|0}function Ug(e){e=e|0;if(e>>>0>4294963200){t[(Bg()|0)>>2]=0-e;e=-1}return e|0}function jg(e){e=e|0;return 0}function Yg(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;return f|0}function qg(e,i){e=e|0;i=i|0;return-1|0}function $g(e){e=e|0;Ic(e);return}function Vg(e,i){e=e|0;i=i|0;return(e+-48|0)>>>0<10|0}function Xg(e,i){e=e|0;i=i|0;return Lg(e)|0}function Gg(e,i,r){e=e|0;i=i|0;r=r|0;if(((f[i>>0]|0)!=0?(qy(i,58885)|0)!=0:0)?(qy(i,54145)|0)!=0:0)r=0;else if(!r)r=Oc(1,4)|0;return r|0}function Kg(e){e=e|0;var i=0,r=0;i=(ni()|0)+176|0;r=t[i>>2]|0;if(e)t[i>>2]=e;return r|0}function Wg(e,i){e=+e;i=+i;var r=0,f=0;u[d>>3]=e;f=t[d>>2]|0;r=t[d+4>>2]|0;u[d>>3]=i;r=t[d+4>>2]&-2147483648|r&2147483647;t[d>>2]=f;t[d+4>>2]=r;return+ +u[d>>3]}function Zg(e,i){e=+e;i=+i;return+ +Wg(e,i)}function Jg(e,i){e=+e;i=+i;var r=0,f=0,n=0,a=0,s=0,l=0,o=0,c=0,h=0,b=0,_=0,k=0;u[d>>3]=e;r=t[d>>2]|0;c=t[d+4>>2]|0;u[d>>3]=i;h=t[d>>2]|0;b=t[d+4>>2]|0;f=Am(r|0,c|0,52)|0;f=f&2047;l=Am(h|0,b|0,52)|0;l=l&2047;_=c&-2147483648;s=Sm(h|0,b|0,1)|0;o=O;e:do{if(!((s|0)==0&(o|0)==0)?(a=b&2147483647,!(a>>>0>2146435072|(a|0)==2146435072&h>>>0>0|(f|0)==2047)):0){n=Sm(r|0,c|0,1)|0;a=O;if(!(a>>>0>o>>>0|(a|0)==(o|0)&n>>>0>s>>>0))return+((n|0)==(s|0)&(a|0)==(o|0)?e*0.0:e);if(!f){f=Sm(r|0,c|0,12)|0;n=O;if((n|0)>-1|(n|0)==-1&f>>>0>4294967295){a=f;f=0;do{f=f+-1|0;a=Sm(a|0,n|0,1)|0;n=O}while((n|0)>-1|(n|0)==-1&a>>>0>4294967295)}else f=0;r=Sm(r|0,c|0,1-f|0)|0;n=O}else n=c&1048575|1048576;if(!l){a=Sm(h|0,b|0,12)|0;s=O;if((s|0)>-1|(s|0)==-1&a>>>0>4294967295){l=0;do{l=l+-1|0;a=Sm(a|0,s|0,1)|0;s=O}while((s|0)>-1|(s|0)==-1&a>>>0>4294967295)}else l=0;h=Sm(h|0,b|0,1-l|0)|0;c=O}else c=b&1048575|1048576;o=gm(r|0,n|0,h|0,c|0)|0;s=O;a=(s|0)>-1|(s|0)==-1&o>>>0>4294967295;i:do{if((f|0)>(l|0)){while(1){if(a)if((r|0)==(h|0)&(n|0)==(c|0))break;else{r=o;n=s}r=Sm(r|0,n|0,1)|0;n=O;f=f+-1|0;o=gm(r|0,n|0,h|0,c|0)|0;s=O;a=(s|0)>-1|(s|0)==-1&o>>>0>4294967295;if((f|0)<=(l|0))break i}i=e*0.0;break e}}while(0);if(a)if((r|0)==(h|0)&(n|0)==(c|0)){i=e*0.0;break}else{n=s;r=o}if(n>>>0<1048576|(n|0)==1048576&r>>>0<0)do{r=Sm(r|0,n|0,1)|0;n=O;f=f+-1|0}while(n>>>0<1048576|(n|0)==1048576&r>>>0<0);if((f|0)>0){b=Mm(r|0,n|0,0,-1048576)|0;r=O;f=Sm(f|0,0,52)|0;r=r|O;f=b|f}else{f=Am(r|0,n|0,1-f|0)|0;r=O}t[d>>2]=f;t[d+4>>2]=r|_;i=+u[d>>3]}else k=3}while(0);if((k|0)==3){i=e*i;i=i/i}return+i}function Qg(e,i){e=+e;i=+i;return+ +Jg(e,i)}function ey(e,i){e=+e;i=i|0;var r=0,f=0,n=0;u[d>>3]=e;r=t[d>>2]|0;f=t[d+4>>2]|0;n=Am(r|0,f|0,52)|0;n=n&2047;switch(n|0){case 0:{if(e!=0.0){e=+ey(e*18446744073709551616.0,i);r=(t[i>>2]|0)+-64|0}else r=0;t[i>>2]=r;break}case 2047:break;default:{t[i>>2]=n+-1022;t[d>>2]=r;t[d+4>>2]=f&-2146435073|1071644672;e=+u[d>>3]}}return+e}function iy(e,i){e=+e;i=i|0;return+ +ey(e,i)}function ry(e,i){e=+e;i=i|0;var r=0;if((i|0)>1023){e=e*8988465674311579538646525.0e283;r=i+-1023|0;if((r|0)>1023){r=i+-2046|0;r=(r|0)>1023?1023:r;e=e*8988465674311579538646525.0e283}}else if((i|0)<-1022){e=e*2.2250738585072014e-308;r=i+1022|0;if((r|0)<-1022){r=i+2044|0;r=(r|0)<-1022?-1022:r;e=e*2.2250738585072014e-308}}else r=i;r=Sm(r+1023|0,0,52)|0;i=O;t[d>>2]=r;t[d+4>>2]=i;return+(e*+u[d>>3])}function fy(e,i){e=+e;i=i|0;return+ +ry(e,i)}function ny(e,i,r){e=e|0;i=i|0;r=r|0;return ty(0,e,i,(r|0)!=0?r:37344)|0}function ty(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0;u=c;c=c+16|0;a=u;l=(n|0)==0?37348:n;n=t[l>>2]|0;e:do{if(!i)if(!n)n=0;else o=15;else{s=(e|0)==0?a:e;if(!r)n=-2;else{if(!n){n=f[i>>0]|0;a=n&255;if(n<<24>>24>-1){t[s>>2]=a;n=n<<24>>24!=0&1;break}n=a+-194|0;if(n>>>0>50){o=15;break}n=t[37076+(n<<2)>>2]|0;a=r+-1|0;if(a){i=i+1|0;o=9}}else{a=r;o=9}i:do{if((o|0)==9){e=f[i>>0]|0;h=(e&255)>>>3;if((h+-16|h+(n>>26))>>>0>7){o=15;break e}while(1){i=i+1|0;n=(e&255)+-128|n<<6;a=a+-1|0;if((n|0)>=0)break;if(!a)break i;e=f[i>>0]|0;if((e&-64)<<24>>24!=-128){o=15;break e}}t[l>>2]=0;t[s>>2]=n;n=r-a|0;break e}}while(0);t[l>>2]=n;n=-2}}}while(0);if((o|0)==15){t[l>>2]=0;t[(Bg()|0)>>2]=84;n=-1}c=u;return n|0}function ay(e){e=e|0;if(!e)e=1;else e=(t[e>>2]|0)==0;return e&1|0}function sy(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0;b=c;c=c+1040|0;u=b+8|0;d=b;o=t[i>>2]|0;t[d>>2]=o;h=(e|0)!=0;f=h?f:256;e=h?e:u;a=o;e:do{if((f|0)!=0&(o|0)!=0){l=f;o=a;f=0;while(1){a=r>>>2;s=a>>>0>=l>>>0;if(!(r>>>0>131|s)){a=o;break e}a=s?l:a;r=r-a|0;a=ly(e,d,a,n)|0;if((a|0)==-1){f=r;break}_=(e|0)==(u|0);o=_?0:a;s=l-o|0;e=_?e:e+(a<<2)|0;f=a+f|0;a=t[d>>2]|0;if((l|0)!=(o|0)&(a|0)!=0){l=s;o=a}else{l=s;break e}}r=f;l=0;a=t[d>>2]|0;f=-1}else{l=f;f=0}}while(0);e:do{if((a|0)!=0?(l|0)!=0&(r|0)!=0:0){s=a;a=e;while(1){e=ty(a,s,r,n)|0;if((e+2|0)>>>0<3)break;s=(t[d>>2]|0)+e|0;t[d>>2]=s;l=l+-1|0;f=f+1|0;if(!((l|0)!=0&(r|0)!=(e|0)))break e;else{r=r-e|0;a=a+4|0}}switch(e|0){case-1:{f=-1;break e}case 0:{t[d>>2]=0;break e}default:{t[n>>2]=0;break e}}}}while(0);if(h)t[i>>2]=t[d>>2];c=b;return f|0}function ly(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var s=0,l=0,o=0,u=0,c=0,h=0;s=t[i>>2]|0;if((n|0)!=0?(l=t[n>>2]|0,(l|0)!=0):0)if(!e){n=r;o=s;h=16}else{t[n>>2]=0;c=e;n=r;u=l;h=37}else if(!e){n=r;h=7}else{l=e;n=r;h=6}e:while(1)if((h|0)==6){if(!n){h=26;break}else e=l;while(1){l=f[s>>0]|0;do{if(((l&255)+-1|0)>>>0<127?n>>>0>4&(s&3|0)==0:0){o=s;while(1){s=t[o>>2]|0;if((s+-16843009|s)&-2139062144){l=s;s=o;h=32;break}t[e>>2]=s&255;t[e+4>>2]=a[o+1>>0];t[e+8>>2]=a[o+2>>0];s=o+4|0;l=e+16|0;t[e+12>>2]=a[o+3>>0];n=n+-4|0;if(n>>>0>4){e=l;o=s}else{h=31;break}}if((h|0)==31){e=l;l=f[s>>0]|0;break}else if((h|0)==32){l=l&255;break}}}while(0);l=l&255;if((l+-1|0)>>>0>=127)break;s=s+1|0;t[e>>2]=l;n=n+-1|0;if(!n){h=26;break e}else e=e+4|0}l=l+-194|0;if(l>>>0>50){h=48;break}c=e;u=t[37076+(l<<2)>>2]|0;s=s+1|0;h=37;continue}else if((h|0)==7){l=f[s>>0]|0;if(((l&255)+-1|0)>>>0<127?(s&3|0)==0:0){l=t[s>>2]|0;if(!((l+-16843009|l)&-2139062144))do{s=s+4|0;n=n+-4|0;l=t[s>>2]|0}while(((l+-16843009|l)&-2139062144|0)==0);l=l&255}l=l&255;if((l+-1|0)>>>0<127){n=n+-1|0;s=s+1|0;h=7;continue}l=l+-194|0;if(l>>>0>50){h=48;break}l=t[37076+(l<<2)>>2]|0;o=s+1|0;h=16;continue}else if((h|0)==16){h=(a[o>>0]|0)>>>3;if((h+-16|h+(l>>26))>>>0>7){h=17;break}s=o+1|0;if(l&33554432){if((f[s>>0]&-64)<<24>>24!=-128){h=20;break}s=o+2|0;if(l&524288){if((f[s>>0]&-64)<<24>>24!=-128){h=23;break}s=o+3|0}}n=n+-1|0;h=7;continue}else if((h|0)==37){l=a[s>>0]|0;h=l>>>3;if((h+-16|h+(u>>26))>>>0>7){h=38;break}o=s+1|0;e=l+-128|u<<6;if((e|0)<0){l=a[o>>0]|0;if((l&192|0)!=128){h=41;break}o=s+2|0;e=l+-128|e<<6;if((e|0)<0){l=a[o>>0]|0;if((l&192|0)!=128){h=44;break}e=l+-128|e<<6;s=s+3|0}else s=o}else s=o;t[c>>2]=e;l=c+4|0;n=n+-1|0;h=6;continue}if((h|0)==17){s=o+-1|0;h=47}else if((h|0)==20){s=o+-1|0;h=47}else if((h|0)==23){s=o+-1|0;h=47}else if((h|0)==26)t[i>>2]=s;else if((h|0)==38){e=c;l=u;s=s+-1|0;h=47}else if((h|0)==41){n=c;r=s+-1|0;h=52}else if((h|0)==44){n=c;r=s+-1|0;h=52}if((h|0)==47)if(!l)h=48;else{n=e;r=s;h=52}if((h|0)==48)if(!(f[s>>0]|0)){if(e){t[e>>2]=0;t[i>>2]=0}r=r-n|0}else{n=e;r=s;h=52}if((h|0)==52){t[(Bg()|0)>>2]=84;if(!n)r=-1;else{t[i>>2]=r;r=-1}}return r|0}function oy(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0;o=c;c=c+16|0;n=o;e:do{if(!i)n=0;else{do{if(r){l=(e|0)==0?n:e;n=f[i>>0]|0;e=n&255;if(n<<24>>24>-1){t[l>>2]=e;n=n<<24>>24!=0&1;break e}n=e+-194|0;if(n>>>0<=50){e=i+1|0;s=t[37076+(n<<2)>>2]|0;if(r>>>0<4?(s&-2147483648>>>((r*6|0)+-6|0)|0)!=0:0)break;n=a[e>>0]|0;r=n>>>3;if((r+-16|r+(s>>26))>>>0<=7){n=n+-128|s<<6;if((n|0)>=0){t[l>>2]=n;n=2;break e}e=a[i+2>>0]|0;if((e&192|0)==128){e=e+-128|n<<6;if((e|0)>=0){t[l>>2]=e;n=3;break e}n=a[i+3>>0]|0;if((n&192|0)==128){t[l>>2]=n+-128|e<<6;n=4;break e}}}}}}while(0);t[(Bg()|0)>>2]=84;n=-1}}while(0);c=o;return n|0}function uy(e,i,r){e=e|0;i=i|0;r=r|0;do{if(e){if(i>>>0<128){f[e>>0]=i;e=1;break}if(i>>>0<2048){f[e>>0]=i>>>6|192;f[e+1>>0]=i&63|128;e=2;break}if(i>>>0<55296|(i&-8192|0)==57344){f[e>>0]=i>>>12|224;f[e+1>>0]=i>>>6&63|128;f[e+2>>0]=i&63|128;e=3;break}if((i+-65536|0)>>>0<1048576){f[e>>0]=i>>>18|240;f[e+1>>0]=i>>>12&63|128;f[e+2>>0]=i>>>6&63|128;f[e+3>>0]=i&63|128;e=4;break}else{t[(Bg()|0)>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function cy(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;h=c;c=c+272|0;l=h+8|0;u=h;s=t[i>>2]|0;t[u>>2]=s;o=(e|0)!=0;n=o?f:256;f=o?e:l;e=s;e:do{if((n|0)!=0&(s|0)!=0){s=n;a=e;n=0;while(1){e=r>>>0>=s>>>0;if(!(e|r>>>0>32)){e=a;break e}e=e?s:r;r=r-e|0;e=hy(f,u,e,0)|0;if((e|0)==-1){n=r;break}b=(f|0)==(l|0);d=b?0:e;a=s-d|0;f=b?f:f+e|0;n=e+n|0;e=t[u>>2]|0;if((s|0)!=(d|0)&(e|0)!=0){s=a;a=e}else{s=a;break e}}r=n;s=0;e=t[u>>2]|0;n=-1}else{s=n;n=0}}while(0);e:do{if((e|0)!=0?(s|0)!=0&(r|0)!=0:0){a=e;e=f;while(1){f=uy(e,t[a>>2]|0,0)|0;if((f+1|0)>>>0<2)break;a=(t[u>>2]|0)+4|0;t[u>>2]=a;r=r+-1|0;n=n+1|0;if(!((s|0)!=(f|0)&(r|0)!=0))break e;else{s=s-f|0;e=e+f|0}}if(!f)t[u>>2]=0;else n=-1}}while(0);if(o)t[i>>2]=t[u>>2];c=h;return n|0}function hy(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0;o=c;c=c+16|0;l=o;e:do{if(!e){e=t[i>>2]|0;n=t[e>>2]|0;if(!n)r=0;else{r=0;do{if(n>>>0>127){n=uy(l,n,0)|0;if((n|0)==-1){r=-1;break e}}else n=1;r=n+r|0;e=e+4|0;n=t[e>>2]|0}while((n|0)!=0)}}else{i:do{if(r>>>0>3){n=r;a=t[i>>2]|0;while(1){s=t[a>>2]|0;if((s+-1|0)>>>0>126){if(!s)break;s=uy(e,s,0)|0;if((s|0)==-1){r=-1;break e}e=e+s|0;n=n-s|0}else{f[e>>0]=s;e=e+1|0;n=n+-1|0;a=t[i>>2]|0}a=a+4|0;t[i>>2]=a;if(n>>>0<=3)break i}f[e>>0]=0;t[i>>2]=0;r=r-n|0;break e}else n=r}while(0);if(n){a=t[i>>2]|0;while(1){s=t[a>>2]|0;if((s+-1|0)>>>0>126){if(!s){a=19;break}s=uy(l,s,0)|0;if((s|0)==-1){r=-1;break e}if(n>>>0<s>>>0){a=22;break}uy(e,t[a>>2]|0,0)|0;e=e+s|0;n=n-s|0}else{f[e>>0]=s;e=e+1|0;n=n+-1|0;a=t[i>>2]|0}a=a+4|0;t[i>>2]=a;if(!n)break e}if((a|0)==19){f[e>>0]=0;t[i>>2]=0;r=r-n|0;break}else if((a|0)==22){r=r-n|0;break}}}}while(0);c=o;return r|0}function dy(e,i){e=e|0;i=i|0;if(!e)e=0;else e=uy(e,i,0)|0;return e|0}function by(e){e=e|0;return 0}function _y(e){e=e|0;return}function ky(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+16|0;u=h;o=i&255;f[u>>0]=o;n=e+16|0;s=t[n>>2]|0;if(!s)if(!(Ay(e)|0)){s=t[n>>2]|0;l=4}else r=-1;else l=4;do{if((l|0)==4){n=e+20|0;l=t[n>>2]|0;if(l>>>0<s>>>0?(r=i&255,(r|0)!=(f[e+75>>0]|0)):0){t[n>>2]=l+1;f[l>>0]=o;break}if((uM[t[e+36>>2]&63](e,u,1)|0)==1)r=a[u>>0]|0;else r=-1}}while(0);c=h;return r|0}function wy(e){e=e|0;var i=0,r=0;i=c;c=c+16|0;r=i;t[r>>2]=t[e+60>>2];e=Ug(ki(6,r|0)|0)|0;c=i;return e|0}function my(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0;h=c;c=c+48|0;s=h+16|0;a=h;n=h+32|0;t[n>>2]=i;l=n+4|0;u=e+48|0;d=t[u>>2]|0;t[l>>2]=r-((d|0)!=0&1);o=e+44|0;t[n+8>>2]=t[o>>2];t[n+12>>2]=d;if(!(t[9258]|0)){t[s>>2]=t[e+60>>2];t[s+4>>2]=n;t[s+8>>2]=2;n=Ug(Ai(145,s|0)|0)|0}else{wi(185,e|0);t[a>>2]=t[e+60>>2];t[a+4>>2]=n;t[a+8>>2]=2;n=Ug(Ai(145,a|0)|0)|0;oi(0)}if((n|0)>=1){l=t[l>>2]|0;if(n>>>0>l>>>0){s=t[o>>2]|0;a=e+4|0;t[a>>2]=s;t[e+8>>2]=s+(n-l);if(!(t[u>>2]|0))n=r;else{t[a>>2]=s+1;f[i+(r+-1)>>0]=f[s>>0]|0;n=r}}}else{t[e>>2]=t[e>>2]|n&48^16;t[e+8>>2]=0;t[e+4>>2]=0}c=h;return n|0}function vy(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0;n=c;c=c+32|0;a=n;f=n+20|0;t[a>>2]=t[e+60>>2];t[a+4>>2]=0;t[a+8>>2]=i;t[a+12>>2]=f;t[a+16>>2]=r;if((Ug(Mi(140,a|0)|0)|0)<0){t[f>>2]=-1;e=-1}else e=t[f>>2]|0;c=n;return e|0}function py(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;k=c;c=c+48|0;d=k+16|0;h=k;f=k+32|0;b=e+28|0;n=t[b>>2]|0;t[f>>2]=n;_=e+20|0;n=(t[_>>2]|0)-n|0;t[f+4>>2]=n;t[f+8>>2]=i;t[f+12>>2]=r;o=e+60|0;u=e+44|0;i=2;n=n+r|0;while(1){if(!(t[9258]|0)){t[d>>2]=t[o>>2];t[d+4>>2]=f;t[d+8>>2]=i;s=Ug(Ei(146,d|0)|0)|0}else{wi(186,e|0);t[h>>2]=t[o>>2];t[h+4>>2]=f;t[h+8>>2]=i;s=Ug(Ei(146,h|0)|0)|0;oi(0)}if((n|0)==(s|0)){n=6;break}if((s|0)<0){n=8;break}n=n-s|0;a=t[f+4>>2]|0;if(s>>>0<=a>>>0)if((i|0)==2){t[b>>2]=(t[b>>2]|0)+s;l=a;i=2}else l=a;else{l=t[u>>2]|0;t[b>>2]=l;t[_>>2]=l;l=t[f+12>>2]|0;s=s-a|0;f=f+8|0;i=i+-1|0}t[f>>2]=(t[f>>2]|0)+s;t[f+4>>2]=l-s}if((n|0)==6){d=t[u>>2]|0;t[e+16>>2]=d+(t[e+48>>2]|0);e=d;t[b>>2]=e;t[_>>2]=e}else if((n|0)==8){t[e+16>>2]=0;t[b>>2]=0;t[_>>2]=0;t[e>>2]=t[e>>2]|32;if((i|0)==2)r=0;else r=r-(t[f+4>>2]|0)|0}c=k;return r|0}function gy(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0;a=c;c=c+80|0;n=a;t[e+36>>2]=8;if((t[e>>2]&64|0)==0?(t[n>>2]=t[e+60>>2],t[n+4>>2]=21505,t[n+8>>2]=a+12,(si(54,n|0)|0)!=0):0)f[e+75>>0]=-1;n=py(e,i,r)|0;c=a;return n|0}function yy(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0;f=e+84|0;a=t[f>>2]|0;s=r+256|0;n=jy(a,0,s)|0;n=(n|0)==0?s:n-a|0;r=n>>>0<r>>>0?n:r;Em(i|0,a|0,r|0)|0;t[e+4>>2]=a+r;i=a+n|0;t[e+8>>2]=i;t[f>>2]=i;return r|0}function My(e){e=e|0;var i=0,r=0;i=e+74|0;r=f[i>>0]|0;f[i>>0]=r+255|r;i=e+20|0;r=e+44|0;if((t[i>>2]|0)>>>0>(t[r>>2]|0)>>>0)uM[t[e+36>>2]&63](e,0,0)|0;t[e+16>>2]=0;t[e+28>>2]=0;t[i>>2]=0;i=t[e>>2]|0;if(i&20)if(!(i&4))i=-1;else{t[e>>2]=i|32;i=-1}else{i=t[r>>2]|0;t[e+8>>2]=i;t[e+4>>2]=i;i=0}return i|0}function Ay(e){e=e|0;var i=0,r=0;i=e+74|0;r=f[i>>0]|0;f[i>>0]=r+255|r;i=t[e>>2]|0;if(!(i&8)){t[e+8>>2]=0;t[e+4>>2]=0;i=t[e+44>>2]|0;t[e+28>>2]=i;t[e+20>>2]=i;t[e+16>>2]=i+(t[e+48>>2]|0);i=0}else{t[e>>2]=i|32;i=-1}return i|0}function Ey(e){e=e|0;var i=0,r=0;r=c;c=c+16|0;i=r;if((t[e+8>>2]|0)==0?(My(e)|0)!=0:0)i=-1;else if((uM[t[e+32>>2]&63](e,i,1)|0)==1)i=a[i>>0]|0;else i=-1;c=r;return i|0}function Sy(e){e=e|0;var i=0,r=0;do{if(e){if((t[e+76>>2]|0)<=-1){i=iM(e)|0;break}r=(by(e)|0)==0;i=iM(e)|0;if(!r)_y(e)}else{if(!(t[9323]|0))i=0;else i=Sy(t[9323]|0)|0;xe(37060);e=t[9264]|0;if(e)do{if((t[e+76>>2]|0)>-1)r=by(e)|0;else r=0;if((t[e+20>>2]|0)>>>0>(t[e+28>>2]|0)>>>0)i=iM(e)|0|i;if(r)_y(e);e=t[e+56>>2]|0}while((e|0)!=0);li(37060)}}while(0);return i|0}function Ty(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0;if((t[i+76>>2]|0)>=0?(by(i)|0)!=0:0){if((f[i+75>>0]|0)!=(e|0)?(n=i+20|0,a=t[n>>2]|0,a>>>0<(t[i+16>>2]|0)>>>0):0){t[n>>2]=a+1;f[a>>0]=e;r=e&255}else r=ky(i,e)|0;_y(i)}else l=3;do{if((l|0)==3){if((f[i+75>>0]|0)!=(e|0)?(s=i+20|0,r=t[s>>2]|0,r>>>0<(t[i+16>>2]|0)>>>0):0){t[s>>2]=r+1;f[r>>0]=e;r=e&255;break}r=ky(i,e)|0}}while(0);return r|0}function Ry(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;n=r+16|0;a=t[n>>2]|0;if(!a)if(!(Ay(r)|0)){a=t[n>>2]|0;s=4}else n=0;else s=4;e:do{if((s|0)==4){l=r+20|0;s=t[l>>2]|0;if((a-s|0)>>>0<i>>>0){n=uM[t[r+36>>2]&63](r,e,i)|0;break}i:do{if((f[r+75>>0]|0)>-1){n=i;while(1){if(!n){a=s;n=0;break i}a=n+-1|0;if((f[e+a>>0]|0)==10)break;else n=a}if((uM[t[r+36>>2]&63](r,e,n)|0)>>>0<n>>>0)break e;i=i-n|0;e=e+n|0;a=t[l>>2]|0}else{a=s;n=0}}while(0);Em(a|0,e|0,i|0)|0;t[l>>2]=(t[l>>2]|0)+i;n=n+i|0}}while(0);return n|0}function Cy(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0;n=re(r,i)|0;if((t[f+76>>2]|0)>-1){a=(by(f)|0)==0;e=Ry(e,n,f)|0;if(!a)_y(f)}else e=Ry(e,n,f)|0;if((e|0)!=(n|0))r=(e>>>0)/(i>>>0)|0;return r|0}function Py(e){e=e|0;var i=0,r=0,f=0;if((t[e+76>>2]|0)>=0?(by(e)|0)!=0:0){i=e+4|0;r=t[i>>2]|0;if(r>>>0<(t[e+8>>2]|0)>>>0){t[i>>2]=r+1;i=a[r>>0]|0}else i=Ey(e)|0}else f=3;do{if((f|0)==3){i=e+4|0;r=t[i>>2]|0;if(r>>>0<(t[e+8>>2]|0)>>>0){t[i>>2]=r+1;i=a[r>>0]|0;break}else{i=Ey(e)|0;break}}}while(0);return i|0}function Iy(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0;n=c;c=c+16|0;a=n;t[a>>2]=f;f=Dy(e,i,r,a)|0;c=n;return f|0}function Oy(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0;f=c;c=c+16|0;n=f;t[n>>2]=r;r=Ny(e,i,n)|0;c=f;return r|0}function xy(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0;do{if((e|0)!=-1){if((t[i+76>>2]|0)>-1)a=by(i)|0;else a=0;if(!((t[i+8>>2]|0)==0?(My(i)|0)!=0:0))s=6;if((s|0)==6?(r=i+4|0,n=t[r>>2]|0,n>>>0>((t[i+44>>2]|0)+-8|0)>>>0):0){s=n+-1|0;t[r>>2]=s;f[s>>0]=e;t[i>>2]=t[i>>2]&-17;if(!a)break;_y(i);break}if(a){_y(i);e=-1}else e=-1}else e=-1}while(0);return e|0}function Ly(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0;l=c;c=c+16|0;f=l;n=Pc(240)|0;do{if(n){t[f>>2]=t[r>>2];f=Dy(n,240,i,f)|0;if(f>>>0<240){i=xc(n,f+1|0)|0;t[e>>2]=(i|0)!=0?i:n;break}Ic(n);if((f|0)>=0?(s=f+1|0,a=Pc(s)|0,t[e>>2]=a,(a|0)!=0):0)f=Dy(a,s,i,r)|0;else f=-1}else f=-1}while(0);c=l;return f|0}function By(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;m=c;c=c+224|0;b=m+80|0;w=m+96|0;k=m;_=m+136|0;n=w;a=n+40|0;do{t[n>>2]=0;n=n+4|0}while((n|0)<(a|0));t[b>>2]=t[r>>2];if((yc(0,i,b,k,w)|0)<0)r=-1;else{if((t[e+76>>2]|0)>-1)h=by(e)|0;else h=0;r=t[e>>2]|0;d=r&32;if((f[e+74>>0]|0)<1)t[e>>2]=r&-33;r=e+48|0;if(!(t[r>>2]|0)){a=e+44|0;s=t[a>>2]|0;t[a>>2]=_;l=e+28|0;t[l>>2]=_;o=e+20|0;t[o>>2]=_;t[r>>2]=80;u=e+16|0;t[u>>2]=_+80;n=yc(e,i,b,k,w)|0;if(s){uM[t[e+36>>2]&63](e,0,0)|0;n=(t[o>>2]|0)==0?-1:n;t[a>>2]=s;t[r>>2]=0;t[u>>2]=0;t[l>>2]=0;t[o>>2]=0}}else n=yc(e,i,b,k,w)|0;r=t[e>>2]|0;t[e>>2]=r|d;if(h)_y(e);r=(r&32|0)==0?n:-1}c=m;return r|0}function zy(e,i,r){e=e|0;i=i|0;r=r|0;var s=0,l=0,h=0,d=0,b=0,_=0.0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0;U=c;c=c+304|0;x=U+16|0;B=U+8|0;L=U+33|0;z=U;A=U+32|0;if((t[e+76>>2]|0)>-1)H=by(e)|0;else H=0;s=f[i>>0]|0;e:do{if(s<<24>>24){D=e+4|0;N=e+100|0;I=e+108|0;E=e+8|0;S=L+10|0;T=L+33|0;R=B+4|0;C=L+46|0;P=L+94|0;h=s;s=0;d=i;m=0;l=0;i=0;i:while(1){r:do{if(!(xg(h&255)|0)){h=(f[d>>0]|0)==37;f:do{if(h){k=d+1|0;b=f[k>>0]|0;n:do{switch(b<<24>>24){case 37:break f;case 42:{M=0;b=d+2|0;break}default:{b=(b&255)+-48|0;if(b>>>0<10?(f[d+2>>0]|0)==36:0){t[x>>2]=t[r>>2];while(1){M=(t[x>>2]|0)+(4-1)&~(4-1);h=t[M>>2]|0;t[x>>2]=M+4;if(b>>>0>1)b=b+-1|0;else break}M=h;b=d+3|0;break n}b=(t[r>>2]|0)+(4-1)&~(4-1);M=t[b>>2]|0;t[r>>2]=b+4;b=k}}}while(0);h=f[b>>0]|0;d=h&255;if((d+-48|0)>>>0<10){h=0;while(1){k=(h*10|0)+-48+d|0;b=b+1|0;h=f[b>>0]|0;d=h&255;if((d+-48|0)>>>0>=10)break;else h=k}}else k=0;if(h<<24>>24==109){b=b+1|0;w=f[b>>0]|0;h=(M|0)!=0&1;l=0;i=0}else{w=h;h=0}d=b+1|0;switch(w&255|0){case 104:{y=(f[d>>0]|0)==104;d=y?b+2|0:d;b=y?-2:-1;break}case 108:{y=(f[d>>0]|0)==108;d=y?b+2|0:d;b=y?3:1;break}case 106:{b=3;break}case 116:case 122:{b=1;break}case 76:{b=2;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{d=b;b=0;break}default:{F=152;break i}}w=a[d>>0]|0;v=(w&47|0)==3;w=v?w|32:w;v=v?1:b;switch(w|0){case 99:{y=m;g=(k|0)<1?1:k;break}case 91:{y=m;g=k;break}case 110:{if(!M){b=m;break r}switch(v|0){case-2:{f[M>>0]=m;b=m;break r}case-1:{n[M>>1]=m;b=m;break r}case 0:{t[M>>2]=m;b=m;break r}case 1:{t[M>>2]=m;b=m;break r}case 3:{b=M;t[b>>2]=m;t[b+4>>2]=((m|0)<0)<<31>>31;b=m;break r}default:{b=m;break r}}}default:{Fg(e,0);do{b=t[D>>2]|0;if(b>>>0<(t[N>>2]|0)>>>0){t[D>>2]=b+1;b=a[b>>0]|0}else b=Hg(e)|0}while((xg(b)|0)!=0);b=t[D>>2]|0;if(t[N>>2]|0){b=b+-1|0;t[D>>2]=b}y=(t[I>>2]|0)+m+b-(t[E>>2]|0)|0;g=k}}Fg(e,g);b=t[D>>2]|0;k=t[N>>2]|0;if(b>>>0<k>>>0)t[D>>2]=b+1;else{if((Hg(e)|0)<0){F=152;break i}k=t[N>>2]|0}if(k)t[D>>2]=(t[D>>2]|0)+-1;n:do{switch(w|0){case 91:case 99:case 115:{p=(w|0)==99;t:do{if((w&239|0)==99){ym(L|0,-1,257)|0;f[L>>0]=0;if((w|0)==115){f[T>>0]=0;f[S>>0]=0;f[S+1>>0]=0;f[S+2>>0]=0;f[S+3>>0]=0;f[S+4>>0]=0}}else{j=d+1|0;m=(f[j>>0]|0)==94;b=m&1;w=m?j:d;d=m?d+2|0:j;ym(L|0,m&1|0,257)|0;f[L>>0]=0;switch(f[d>>0]|0){case 45:{m=(b^1)&255;f[C>>0]=m;d=w+2|0;break}case 93:{m=(b^1)&255;f[P>>0]=m;d=w+2|0;break}default:m=(b^1)&255}while(1){b=f[d>>0]|0;a:do{switch(b<<24>>24){case 0:{F=152;break i}case 93:break t;case 45:{w=d+1|0;b=f[w>>0]|0;switch(b<<24>>24){case 93:case 0:{b=45;break a}default:{}}d=f[d+-1>>0]|0;if((d&255)<(b&255)){d=d&255;do{d=d+1|0;f[L+d>>0]=m;b=f[w>>0]|0}while((d|0)<(b&255|0));d=w}else d=w;break}default:{}}}while(0);f[L+((b&255)+1)>>0]=m;d=d+1|0}}}while(0);w=p?g+1|0:31;m=(v|0)==1;v=(h|0)!=0;t:do{if(m){if(v){i=Pc(w<<2)|0;if(!i){l=0;F=152;break i}}else i=M;t[B>>2]=0;t[R>>2]=0;l=0;a:while(1){k=(i|0)==0;do{s:while(1){b=t[D>>2]|0;if(b>>>0<(t[N>>2]|0)>>>0){t[D>>2]=b+1;b=a[b>>0]|0}else b=Hg(e)|0;if(!(f[L+(b+1)>>0]|0))break a;f[A>>0]=b;switch(ty(z,A,1,B)|0){case-1:{l=0;F=152;break i}case-2:break;default:break s}}if(!k){t[i+(l<<2)>>2]=t[z>>2];l=l+1|0}}while(!(v&(l|0)==(w|0)));l=w<<1|1;b=xc(i,l<<2)|0;if(!b){l=0;F=152;break i}j=w;w=l;i=b;l=j}if(!(ay(B)|0)){l=0;F=152;break i}else{k=l;l=0}}else{if(v){l=Pc(w)|0;if(!l){l=0;i=0;F=152;break i}else b=0;while(1){do{i=t[D>>2]|0;if(i>>>0<(t[N>>2]|0)>>>0){t[D>>2]=i+1;i=a[i>>0]|0}else i=Hg(e)|0;if(!(f[L+(i+1)>>0]|0)){k=b;i=0;break t}f[l+b>>0]=i;b=b+1|0}while((b|0)!=(w|0));i=w<<1|1;b=xc(l,i)|0;if(!b){i=0;F=152;break i}else{j=w;w=i;l=b;b=j}}}if(!M){l=k;while(1){i=t[D>>2]|0;if(i>>>0<l>>>0){t[D>>2]=i+1;i=a[i>>0]|0}else i=Hg(e)|0;if(!(f[L+(i+1)>>0]|0)){k=0;l=0;i=0;break t}l=t[N>>2]|0}}else{l=0;while(1){i=t[D>>2]|0;if(i>>>0<k>>>0){t[D>>2]=i+1;i=a[i>>0]|0}else i=Hg(e)|0;if(!(f[L+(i+1)>>0]|0)){k=l;l=M;i=0;break t}f[M+l>>0]=i;k=t[N>>2]|0;l=l+1|0}}}}while(0);b=t[D>>2]|0;if(t[N>>2]|0){b=b+-1|0;t[D>>2]=b}b=b-(t[E>>2]|0)+(t[I>>2]|0)|0;if(!b)break i;if(!((b|0)==(g|0)|p^1))break i;do{if(v)if(m){t[M>>2]=i;break}else{t[M>>2]=l;break}}while(0);if(!p){if(i)t[i+(k<<2)>>2]=0;if(!l){l=0;break n}f[l+k>>0]=0}break}case 120:case 88:case 112:{b=16;F=134;break}case 111:{b=8;F=134;break}case 117:case 100:{b=10;F=134;break}case 105:{b=0;F=134;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{_=+Dg(e,v,0);if((t[I>>2]|0)==((t[E>>2]|0)-(t[D>>2]|0)|0))break i;if(M)switch(v|0){case 0:{o[M>>2]=_;break n}case 1:{u[M>>3]=_;break n}case 2:{u[M>>3]=_;break n}default:break n}break}default:{}}}while(0);n:do{if((F|0)==134){F=0;b=Ng(e,b,0,-1,-1)|0;if((t[I>>2]|0)==((t[E>>2]|0)-(t[D>>2]|0)|0))break i;if((M|0)!=0&(w|0)==112){t[M>>2]=b;break}if(M)switch(v|0){case-2:{f[M>>0]=b;break n}case-1:{n[M>>1]=b;break n}case 0:{t[M>>2]=b;break n}case 1:{t[M>>2]=b;break n}case 3:{j=M;t[j>>2]=b;t[j+4>>2]=O;break n}default:break n}}}while(0);s=((M|0)!=0&1)+s|0;b=(t[I>>2]|0)+y+(t[D>>2]|0)-(t[E>>2]|0)|0;break r}}while(0);d=d+(h&1)|0;Fg(e,0);h=t[D>>2]|0;if(h>>>0<(t[N>>2]|0)>>>0){t[D>>2]=h+1;h=a[h>>0]|0}else h=Hg(e)|0;if((h|0)!=(a[d>>0]|0)){F=21;break i}b=m+1|0}else{while(1){h=d+1|0;if(!(xg(a[h>>0]|0)|0))break;else d=h}Fg(e,0);do{h=t[D>>2]|0;if(h>>>0<(t[N>>2]|0)>>>0){t[D>>2]=h+1;h=a[h>>0]|0}else h=Hg(e)|0}while((xg(h)|0)!=0);h=t[D>>2]|0;if(t[N>>2]|0){h=h+-1|0;t[D>>2]=h}b=(t[I>>2]|0)+m+h-(t[E>>2]|0)|0}}while(0);d=d+1|0;h=f[d>>0]|0;if(!(h<<24>>24))break e;else m=b}if((F|0)==21){if(t[N>>2]|0)t[D>>2]=(t[D>>2]|0)+-1;if((s|0)!=0|(h|0)>-1)break;else{s=0;F=153}}else if((F|0)==152)if(!s){s=h;F=153}if((F|0)==153){h=s;s=-1}if(h){Ic(l);Ic(i)}}else s=0}while(0);if(H)_y(e);c=U;return s|0}function Dy(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+128|0;a=d+112|0;h=d;s=h;l=37352;o=s+112|0;do{t[s>>2]=t[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));if((i+-1|0)>>>0>2147483646)if(!i){i=1;u=4}else{t[(Bg()|0)>>2]=75;i=-1}else{a=e;u=4}if((u|0)==4){u=-2-a|0;u=i>>>0>u>>>0?u:i;t[h+48>>2]=u;e=h+20|0;t[e>>2]=a;t[h+44>>2]=a;i=a+u|0;a=h+16|0;t[a>>2]=i;t[h+28>>2]=i;i=By(h,r,n)|0;if(u){r=t[e>>2]|0;f[r+(((r|0)==(t[a>>2]|0))<<31>>31)>>0]=0}}c=d;return i|0}function Ny(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0;a=c;c=c+112|0;f=a;n=f;s=n+112|0;do{t[n>>2]=0;n=n+4|0}while((n|0)<(s|0));t[f+32>>2]=29;t[f+44>>2]=e;t[f+76>>2]=-1;t[f+84>>2]=e;s=zy(f,i,r)|0;c=a;return s|0}function Fy(e,i,r){e=e|0;i=i|0;r=r|0;return+ +Ac(e,i,2)}function Hy(e,i,r){e=e|0;i=i|0;r=r|0;e=Ec(e,i,r,-1,-1)|0;return e|0}function Uy(e,i,r){e=e|0;i=i|0;r=r|0;e=Ec(e,i,r,0,-2147483648)|0;return e|0}function jy(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;s=i&255;n=(r|0)!=0;e:do{if(n&(e&3|0)!=0){a=i&255;while(1){if((f[e>>0]|0)==a<<24>>24){l=6;break e}e=e+1|0;r=r+-1|0;n=(r|0)!=0;if(!(n&(e&3|0)!=0)){l=5;break}}}else l=5}while(0);if((l|0)==5)if(n)l=6;else r=0;e:do{if((l|0)==6){a=i&255;if((f[e>>0]|0)!=a<<24>>24){n=re(s,16843009)|0;i:do{if(r>>>0>3)while(1){s=t[e>>2]^n;if((s&-2139062144^-2139062144)&s+-16843009)break;e=e+4|0;r=r+-4|0;if(r>>>0<=3){l=11;break i}}else l=11}while(0);if((l|0)==11)if(!r){r=0;break}while(1){if((f[e>>0]|0)==a<<24>>24)break e;e=e+1|0;r=r+-1|0;if(!r){r=0;break}}}}}while(0);return((r|0)!=0?e:0)|0}function Yy(e,i){e=e|0;i=i|0;var r=0,n=0;r=i;e:do{if(!((r^e)&3)){if(r&3)do{r=f[i>>0]|0;f[e>>0]=r;if(!(r<<24>>24))break e;i=i+1|0;e=e+1|0}while((i&3|0)!=0);r=t[i>>2]|0;if(!((r&-2139062144^-2139062144)&r+-16843009)){n=e;while(1){i=i+4|0;e=n+4|0;t[n>>2]=r;r=t[i>>2]|0;if((r&-2139062144^-2139062144)&r+-16843009)break;else n=e}}n=8}else n=8}while(0);if((n|0)==8){n=f[i>>0]|0;f[e>>0]=n;if(n<<24>>24)do{i=i+1|0;e=e+1|0;n=f[i>>0]|0;f[e>>0]=n}while(n<<24>>24!=0)}return e|0}function qy(e,i){e=e|0;i=i|0;var r=0,n=0;n=f[e>>0]|0;r=f[i>>0]|0;if(n<<24>>24==0?1:n<<24>>24!=r<<24>>24)i=n;else{do{e=e+1|0;i=i+1|0;n=f[e>>0]|0;r=f[i>>0]|0}while(!(n<<24>>24==0?1:n<<24>>24!=r<<24>>24));i=n}return(i&255)-(r&255)|0}function $y(e,i){e=e|0;i=i|0;Yy(e,i)|0;return e|0}function Vy(e){e=e|0;var i=0,r=0,n=0;n=e;e:do{if(!(n&3))r=4;else{i=e;e=n;while(1){if(!(f[i>>0]|0))break e;i=i+1|0;e=i;if(!(e&3)){e=i;r=4;break}}}}while(0);if((r|0)==4){while(1){i=t[e>>2]|0;if(!((i&-2139062144^-2139062144)&i+-16843009))e=e+4|0;else break}if((i&255)<<24>>24)do{e=e+1|0}while((f[e>>0]|0)!=0)}return e-n|0}function Xy(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,t=0;if(!r)i=0;else{n=f[e>>0]|0;e:do{if(!(n<<24>>24))n=0;else while(1){r=r+-1|0;t=f[i>>0]|0;if(!(n<<24>>24==t<<24>>24&((r|0)!=0&t<<24>>24!=0)))break e;e=e+1|0;i=i+1|0;n=f[e>>0]|0;if(!(n<<24>>24)){n=0;break}}}while(0);i=(n&255)-(a[i>>0]|0)|0}return i|0}function Gy(e){e=e|0;var i=0;i=e;while(1)if(!(t[i>>2]|0))break;else i=i+4|0;return i-e>>2|0}function Ky(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if(r){f=e;while(1){r=r+-1|0;t[f>>2]=t[i>>2];if(!r)break;else{i=i+4|0;f=f+4|0}}}return e|0}function Wy(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=(r|0)==0;if(e-i>>2>>>0<r>>>0){if(!f)do{r=r+-1|0;t[e+(r<<2)>>2]=t[i+(r<<2)>>2]}while((r|0)!=0)}else if(!f){f=i;i=e;while(1){r=r+-1|0;t[i>>2]=t[f>>2];if(!r)break;else{f=f+4|0;i=i+4|0}}}return e|0}function Zy(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if(r){f=e;while(1){r=r+-1|0;t[f>>2]=i;if(!r)break;else f=f+4|0}}return e|0}function Jy(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,s=0,l=0,o=0;l=e+4|0;r=t[l>>2]|0;o=e+100|0;if(r>>>0<(t[o>>2]|0)>>>0){t[l>>2]=r+1;r=a[r>>0]|0}else r=Hg(e)|0;switch(r|0){case 43:case 45:{f=(r|0)==45&1;r=t[l>>2]|0;if(r>>>0<(t[o>>2]|0)>>>0){t[l>>2]=r+1;r=a[r>>0]|0}else r=Hg(e)|0;if((i|0)!=0&(r+-48|0)>>>0>9?(t[o>>2]|0)!=0:0){t[l>>2]=(t[l>>2]|0)+-1;s=f}else s=f;break}default:s=0}if((r+-48|0)>>>0>9)if(!(t[o>>2]|0)){f=-2147483648;r=0}else{t[l>>2]=(t[l>>2]|0)+-1;f=-2147483648;r=0}else{f=0;do{f=r+-48+(f*10|0)|0;r=t[l>>2]|0;if(r>>>0<(t[o>>2]|0)>>>0){t[l>>2]=r+1;r=a[r>>0]|0}else r=Hg(e)|0}while((r+-48|0)>>>0<10&(f|0)<214748364);i=((f|0)<0)<<31>>31;if((r+-48|0)>>>0<10){do{i=xm(f|0,i|0,10,0)|0;f=O;r=Mm(r|0,((r|0)<0)<<31>>31|0,-48,-1)|0;f=Mm(r|0,O|0,i|0,f|0)|0;i=O;r=t[l>>2]|0;if(r>>>0<(t[o>>2]|0)>>>0){t[l>>2]=r+1;r=a[r>>0]|0}else r=Hg(e)|0}while((r+-48|0)>>>0<10&((i|0)<21474836|(i|0)==21474836&f>>>0<2061584302));n=f}else n=f;if((r+-48|0)>>>0<10)do{r=t[l>>2]|0;if(r>>>0<(t[o>>2]|0)>>>0){t[l>>2]=r+1;r=a[r>>0]|0}else r=Hg(e)|0}while((r+-48|0)>>>0<10);if(t[o>>2]|0)t[l>>2]=(t[l>>2]|0)+-1;e=(s|0)!=0;r=gm(0,0,n|0,i|0)|0;f=e?O:i;r=e?r:n}O=f;return r|0}function Qy(e){e=e|0;if(!(t[e+68>>2]|0))_y(e);return}function eM(e){e=e|0;if(!(t[e+68>>2]|0))_y(e);return}function iM(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0;i=e+20|0;a=e+28|0;if((t[i>>2]|0)>>>0>(t[a>>2]|0)>>>0?(uM[t[e+36>>2]&63](e,0,0)|0,(t[i>>2]|0)==0):0)i=-1;else{s=e+4|0;r=t[s>>2]|0;f=e+8|0;n=t[f>>2]|0;if(r>>>0<n>>>0)uM[t[e+40>>2]&63](e,r-n|0,1)|0;t[e+16>>2]=0;t[a>>2]=0;t[i>>2]=0;t[f>>2]=0;t[s>>2]=0;i=0}return i|0}var rM=[av,Yl,Xl,jo,Vo,Zo,Qo,Dk,Gk,av,av,av,av,av,av,av];var fM=[sv,Uv,Is,vs,ss,Ka,Da,Ea,la,wg,kg,dg,sv,sv,sv,sv];var nM=[lv,fu,ou,lv];var tM=[ov,Dv,Nv,Ts,Rs,_s,ks,fs,ns,$a,Va,xa,La,ga,ya,na,ta,$t,Vt,xt,Lt,gt,yt,ot,ut,Zn,Jn,an,sn,Vf,Xf,Qi,er,yf,Sf,Mf,Qd,ib,eb,rb,qr,$r,gp,Vr,Dr,Nr,br,_r,yr,Mr,Cr,Pr,Xr,Gr,ef,rf,lf,of,_f,kf,qf,$f,_n,kn,yn,Mn,Cn,Pn,zn,Dn,va,pa,Rh,Kv,tp,ap,yp,Mp,Np,Fp,$p,Vp,Wp,Zp,Qp,rg,eg,ig,fg,ng,Sd,qc,Wc,cd,ih,sh,Sh,Th,hd,Td,Ud,Yd,jd,qd,Xd,Kd,Gd,Wd,sb,ob,lb,ub,wb,mb,fd,vb,pb,gb,Mb,Nu,Tb,Rb,Ob,xb,Xb,Gb,d_,b_,R_,C_,$s,Vs,kl,wl,Hl,jl,$l,Vl,Kl,Wl,ao,so,mo,vo,Co,Po,Ho,Uo,Ko,Wo,iu,ru,su,lu,du,bu,mu,vu,Su,Tu,rc,fc,zk,gc,sk,lk,ok,uk,yb,Du,Hu,hc,U_,K_,fk,nk,Ap,dp,Op,Ji,dd,Vd,xf,ca,Tg,Qy,eM,Dc,$g,Yo,$o,Fu,Vw,Qw,em,im,rm,fm,nm,xh,Xh,Ic,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov,ov];var aM=[uv,Hv,Ps,ms,as,Ga,za,Aa,sa,Xt,Bt,Mt,ct,Qn,ln,Gf,ir,bd,sp,up,$c,Kc,rh,ah,Cd,Ql,eo,io,ro,no,to,uo,co,ho,bo,ko,wo,yo,Mo,Ao,Eo,To,Ro,xo,Lo,Bo,zo,No,Fo,wu,yu,_k,wk,vk,kk,mk,pk,qi,Ep,cp,hp,bp,ld,lr,ur,fb,rd,Uh,Of,Jf,qn,ft,_t,Tt,Ft,Zt,ua,Ta,Fa,Za,os,gs,xs,Yv,fp,Pp,wh,_h,ad,cb,kh,Fh,Zh,Wh,bw,_w,kw,ww,mw,vw,pc,pw,gw,yw,Mw,Aw,Ew,Sw,Tw,Rw,Cw,Pw,Iw,Ow,xw,Lw,Bw,zw,Dw,Nw,Fw,Hw,Uw,jw,qw,um,uv,uv];var sM=[cv,Lb,Bb,zb,Db,Nb,Fb,Hb,Ub,jb,Yb,qb,Kb,Wb,Zb,Jb,Qb,e_,i_,r_,f_,n_,t_,p_,y_,x_,Fs,Gs,Ks,Ws,Js,el,vl,pl,gl,Ml,El,au,hu,zr,aw,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv,cv];var lM=[hv,md,vd,Ur,yd,Wv,Hp,Xp,Jp,wy,Vc,Ld,zd,Dd,xd,Zc,Jc,fh,gd,lh,oh,db,Xs,yk,Ak,Sk,Ok,Lk,Rk,Pk,ml,Mk,Ek,Tk,xk,Bk,Ck,Ik,Zl,Jl,fo,lo,oo,_o,po,go,So,Io,Oo,Do,D_,N_,H_,ck,dk,hk,bk,kc,wc,vc,$_,V_,G_,Q_,ek,rk,Qv,Lp,sd,kp,$d,Zd,dv,bv,_v,Kg,Gy,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv,hv];var oM=[kv,qo,Jo,kv];var uM=[wv,_d,pd,Ad,vh,ph,tg,Sc,py,vy,my,gy,Pd,Bd,Xc,Fd,nh,Sb,Ib,_u,pu,tc,sc,uc,Uu,Gu,Zu,ec,or,Mc,jh,Gg,cw,dw,uy,oy,ny,Ly,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv,wv];var cM=[mv,tu,cu,mv];var hM=[vv,Fr,pg,vg,mg,Id,kd,ku,gu,vv,vv,vv,vv,vv,vv,vv];var dM=[pv,v_,E_,O_,Us,pv,pv,pv];var bM=[gv,Xo,eu,nu,uu,gv,gv,gv];var _M=[yv,Fv,Cs,ws,ts,Xa,Ba,Ma,aa,Kt,Dt,Et,dt,it,un,Wf,fr,jr,Yr,Nd,Gc,Qc,Hd,Md,th,uh,Ed,nc,ac,lc,Vu,Ku,Ju,Sp,Gi,Wi,tb,zu,ab,Xg,Vg,Bh,Gh,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv,yv];var kM=[Mv,Ab,Cb,__,k_,g_,T_,P_,I_,Ns,Ys,cc,z_,F_,ic,_c,mc,q_,X_,J_,ik,cy,sy,Mv,Mv,Mv,Mv,Mv,Mv,Mv,Mv,Mv];var wM=[Av,dm,hm,cm];var mM=[Ev,$i,xp,Vb,Cu,Pu,Iu,Pg,Og,Ig,Ev,Ev,Ev,Ev,Ev,Ev];var vM=[Sv,Gt,zt,At,ht,et,on,Kf,rr,oc,Yu,qu,$u,Qu,Jv,np,Xk,tw,ly,Yg,ty,vm,mm,wm,km,_m,bm,Sv,Sv,Sv,Sv,Sv];var pM=[Tv,mh,Zv,bb,Tp,Ih,Rv,Eh,Dh,_p,yh,kb,ow,uw,hw,$h];var gM=[Cv,Pv,Ag,Iv,Eg,Ov,Mg,Cv];var yM=[xv,rl,Tl,L_,B_,dc,bc,j_,Y_,W_,Z_,xv,xv,xv,xv,xv];var MM=[Lv,M_,S_,Hs,js,Lv,Lv,Lv];var AM=[Bv,Tf,Rf,Af,Ef,Hr,kr,wr,Ar,Er,Ir,Or,Kr,Wr,ff,nf,uf,cf,wf,mf,wn,mn,An,En,In,On,Nn,Fn,sg,lg,ug,Od,wd,Eb,Pb,Di,Ah,nr,tr,ar,sr,cr,hr,dr,cn,hn,dn,bn,Bv,Bv,Bv,Bv,Bv,Bv,Bv,Bv,Bv,Bv,Bv,Bv,Bv,Bv,Bv,Bv];return{_jpegls_encode:Cp,___cxa_can_catch:gg,_free:Ic,_jpegls_decode:Rp,___cxa_is_pointer_type:yg,_i64Add:Mm,_memmove:Tm,_i64Subtract:gm,_memset:ym,_malloc:Pc,_memcpy:Em,_bitshift64Lshr:Am,_bitshift64Shl:Sm,__GLOBAL__I_000101:Nc,__GLOBAL__sub_I_jpegls_cpp:Zi,__GLOBAL__sub_I_iostream_cpp:Fc,runPostSets:pm,stackAlloc:Ti,stackSave:Ri,stackRestore:Ci,establishStackSpace:Pi,setThrew:Ii,setTempRet0:Li,getTempRet0:Bi,dynCall_iiiiiiii:Dm,dynCall_viiiii:Nm,dynCall_iiiiiid:Fm,dynCall_vi:Hm,dynCall_vii:Um,dynCall_iiiiiii:jm,dynCall_ii:Ym,dynCall_iiiiiiiiiiii:qm,dynCall_iiii:$m,dynCall_viiiiiiiiiiiiiii:Vm,dynCall_viiiiii:Xm,dynCall_viiiiiii:Gm,dynCall_viiiiiiiiii:Km,dynCall_iii:Wm,dynCall_iiiiii:Zm,dynCall_diii:Jm,dynCall_i:Qm,dynCall_iiiii:ev,dynCall_viii:iv,dynCall_v:rv,dynCall_iiiiiiiii:fv,dynCall_iiiiid:nv,dynCall_viiii:tv}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_jpegls_encode=Module._jpegls_encode=asm._jpegls_encode,___cxa_can_catch=Module.___cxa_can_catch=asm.___cxa_can_catch,_free=Module._free=asm._free,_jpegls_decode=Module._jpegls_decode=asm._jpegls_decode,___cxa_is_pointer_type=Module.___cxa_is_pointer_type=asm.___cxa_is_pointer_type,_i64Add=Module._i64Add=asm._i64Add,_memmove=Module._memmove=asm._memmove,_i64Subtract=Module._i64Subtract=asm._i64Subtract,_memset=Module._memset=asm._memset,_malloc=Module._malloc=asm._malloc,_memcpy=Module._memcpy=asm._memcpy,runPostSets=Module.runPostSets=asm.runPostSets,__GLOBAL__sub_I_iostream_cpp=Module.__GLOBAL__sub_I_iostream_cpp=asm.__GLOBAL__sub_I_iostream_cpp,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,__GLOBAL__sub_I_jpegls_cpp=Module.__GLOBAL__sub_I_jpegls_cpp=asm.__GLOBAL__sub_I_jpegls_cpp,__GLOBAL__I_000101=Module.__GLOBAL__I_000101=asm.__GLOBAL__I_000101,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,dynCall_iiiiiiii=Module.dynCall_iiiiiiii=asm.dynCall_iiiiiiii,dynCall_viiiii=Module.dynCall_viiiii=asm.dynCall_viiiii,dynCall_iiiiiid=Module.dynCall_iiiiiid=asm.dynCall_iiiiiid,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_iiiiiii=Module.dynCall_iiiiiii=asm.dynCall_iiiiiii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_iiiiiiiiiiii=Module.dynCall_iiiiiiiiiiii=asm.dynCall_iiiiiiiiiiii,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_viiiiiiiiiiiiiii=Module.dynCall_viiiiiiiiiiiiiii=asm.dynCall_viiiiiiiiiiiiiii,dynCall_viiiiii=Module.dynCall_viiiiii=asm.dynCall_viiiiii,dynCall_viiiiiii=Module.dynCall_viiiiiii=asm.dynCall_viiiiiii,dynCall_viiiiiiiiii=Module.dynCall_viiiiiiiiii=asm.dynCall_viiiiiiiiii,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_diii=Module.dynCall_diii=asm.dynCall_diii,dynCall_i=Module.dynCall_i=asm.dynCall_i,dynCall_iiiii=Module.dynCall_iiiii=asm.dynCall_iiiii,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_v=Module.dynCall_v=asm.dynCall_v,dynCall_iiiiiiiii=Module.dynCall_iiiiiiiii=asm.dynCall_iiiiiiiii,dynCall_iiiiid=Module.dynCall_iiiiid=asm.dynCall_iiiiid,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii,initialStackTop;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}Runtime.stackAlloc=asm.stackAlloc,Runtime.stackSave=asm.stackSave,Runtime.stackRestore=asm.stackRestore,Runtime.establishStackSpace=asm.establishStackSpace,Runtime.setTempRet0=asm.setTempRet0,Runtime.getTempRet0=asm.getTempRet0,ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var preloadStartTime=null,calledMain=!1;function run(e){function i(){Module.calledRun||(Module.calledRun=!0,ABORT||(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}e=e||Module.arguments,null===preloadStartTime&&(preloadStartTime=Date.now()),runDependencies>0||(preRun(),runDependencies>0||Module.calledRun||(Module.setStatus?(Module.setStatus("Running..."),setTimeout((function(){setTimeout((function(){Module.setStatus("")}),1),i()}),1)):i()))}function exit(e,i){if(!i||!Module.noExitRuntime)throw Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE?(process.stdout.once("drain",(function(){process.exit(e)})),console.log(" "),setTimeout((function(){process.exit(e)}),500)):ENVIRONMENT_IS_SHELL&&"function"==typeof quit&&quit(e),new ExitStatus(e)}dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function(e){assert(0==runDependencies,"cannot call main when async dependencies remain! (listen on __ATMAIN__)"),assert(0==__ATPRERUN__.length,"cannot call main when preRun functions remain to be called"),e=e||[],ensureInitRuntime();var i=e.length+1;function r(){for(var e=0;e<3;e++)f.push(0)}var f=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];r();for(var n=0;n<i-1;n+=1)f.push(allocate(intArrayFromString(e[n]),"i8",ALLOC_NORMAL)),r();f.push(0),f=allocate(f,"i32",ALLOC_NORMAL);try{exit(Module._main(i,f,0),!0)}catch(e){if(e instanceof ExitStatus)return;if("SimulateInfiniteLoop"==e)return void(Module.noExitRuntime=!0);throw e&&"object"==typeof e&&e.stack&&Module.printErr("exception thrown: "+[e,e.stack]),e}finally{calledMain=!0}},Module.run=Module.run=run,Module.exit=Module.exit=exit;var abortDecorators=[];function abort(e){void 0!==e?(Module.print(e),Module.printErr(e),e=JSON.stringify(e)):e="",ABORT=!0,EXITSTATUS=1;var i="abort("+e+") at "+stackTrace()+"\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";throw abortDecorators&&abortDecorators.forEach((function(r){i=r(i,e)})),i}if(Module.abort=Module.abort=abort,Module.preInit)for("function"==typeof Module.preInit&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;return Module.noInitialRun&&(shouldRunNow=!1),run(),Module};module.exports=CharLS},function(module,exports){var OpenJPEG=function(Module){var Module;Module=Module||{},Module||(Module=(void 0!==OpenJPEG?OpenJPEG:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB="object"==typeof window,ENVIRONMENT_IS_WORKER="function"==typeof importScripts,ENVIRONMENT_IS_NODE="object"==typeof process&&"function"==typeof require&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){Module.print||(Module.print=function(e){process.stdout.write(e+"\n")}),Module.printErr||(Module.printErr=function(e){process.stderr.write(e+"\n")});var nodeFS=require("fs"),nodePath=require("path");Module.read=function(e,i){e=nodePath.normalize(e);var r=nodeFS.readFileSync(e);return r||e==nodePath.resolve(e)||(e=path.join(__dirname,"..","src",e),r=nodeFS.readFileSync(e)),r&&!i&&(r=r.toString()),r},Module.readBinary=function(e){var i=Module.read(e,!0);return i.buffer||(i=new Uint8Array(i)),assert(i.buffer),i},Module.load=function(e){globalEval(read(e))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),void 0!==module&&(module.exports=Module),process.on("uncaughtException",(function(e){if(!(e instanceof ExitStatus))throw e})),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),"undefined"!=typeof printErr&&(Module.printErr=printErr),"undefined"!=typeof read?Module.read=read:Module.read=function(){throw"no read() available (jsc?)"},Module.readBinary=function(e){if("function"==typeof readbuffer)return new Uint8Array(readbuffer(e));var i=read(e,"binary");return assert("object"==typeof i),i},"undefined"!=typeof scriptArgs?Module.arguments=scriptArgs:void 0!==arguments&&(Module.arguments=arguments);else{if(!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER)throw"Unknown runtime environment. Where are we?";if(Module.read=function(e){var i=new XMLHttpRequest;return i.open("GET",e,!1),i.send(null),i.responseText},void 0!==arguments&&(Module.arguments=arguments),"undefined"!=typeof console)Module.print||(Module.print=function(e){console.log(e)}),Module.printErr||(Module.printErr=function(e){console.log(e)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&"undefined"!=typeof dump?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),void 0===Module.setWindowTitle&&(Module.setWindowTitle=function(e){document.title=e})}function globalEval(e){eval.call(null,e)}for(var key in!Module.load&&Module.read&&(Module.load=function(e){globalEval(Module.read(e))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[],moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);var Runtime={setTempRet0:function(e){tempRet0=e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:if("*"===e[e.length-1])return Runtime.QUANTUM_SIZE;if("i"===e[0]){var i=parseInt(e.substr(1));return assert(i%8==0),i/8}return 0}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,i){return"double"===i||"i64"===i?7&e&&(assert(4==(7&e)),e+=4):assert(0==(3&e)),e},getAlignSize:function(e,i,r){return r||"i64"!=e&&"double"!=e?e?Math.min(i||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(i,8):8},dynCall:function(e,i,r){return r&&r.length?(r.splice||(r=Array.prototype.slice.call(r)),r.splice(0,0,i),Module["dynCall_"+e].apply(null,r)):Module["dynCall_"+e].call(null,i)},functionPointers:[],addFunction:function(e){for(var i=0;i<Runtime.functionPointers.length;i++)if(!Runtime.functionPointers[i])return Runtime.functionPointers[i]=e,2*(1+i);throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."},removeFunction:function(e){Runtime.functionPointers[(e-2)/2]=null},warnOnce:function(e){Runtime.warnOnce.shown||(Runtime.warnOnce.shown={}),Runtime.warnOnce.shown[e]||(Runtime.warnOnce.shown[e]=1,Module.printErr(e))},funcWrappers:{},getFuncWrapper:function(e,i){assert(i),Runtime.funcWrappers[i]||(Runtime.funcWrappers[i]={});var r=Runtime.funcWrappers[i];return r[e]||(r[e]=function(){return Runtime.dynCall(i,e,arguments)}),r[e]},getCompilerSetting:function(e){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"},stackAlloc:function(e){var i=STACKTOP;return STACKTOP=(STACKTOP=STACKTOP+e|0)+15&-16,i},staticAlloc:function(e){var i=STATICTOP;return STATICTOP=(STATICTOP=STATICTOP+e|0)+15&-16,i},dynamicAlloc:function(e){var i=DYNAMICTOP;if((DYNAMICTOP=(DYNAMICTOP=DYNAMICTOP+e|0)+15&-16)>=TOTAL_MEMORY&&!enlargeMemory())return DYNAMICTOP=i,0;return i},alignMemory:function(e,i){return e=Math.ceil(e/(i||16))*(i||16)},makeBigInt:function(e,i,r){return r?+(e>>>0)+4294967296*+(i>>>0):+(e>>>0)+4294967296*+(0|i)},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var __THREW__=0,ABORT=!1,EXITSTATUS=0,undef=0,tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat,tempI64,tempI64b,tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9;function assert(e,i){e||abort("Assertion failed: "+i)}var globalScope=this,cwrap,ccall;function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}function setValue(e,i,r,f){switch("*"===(r=r||"i8").charAt(r.length-1)&&(r="i32"),r){case"i1":case"i8":HEAP8[e>>0]=i;break;case"i16":HEAP16[e>>1]=i;break;case"i32":HEAP32[e>>2]=i;break;case"i64":tempI64=[i>>>0,(tempDouble=i,+Math_abs(tempDouble)>=1?tempDouble>0?(0|Math_min(+Math_floor(tempDouble/4294967296),4294967295))>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=i;break;case"double":HEAPF64[e>>3]=i;break;default:abort("invalid type for setValue: "+r)}}function getValue(e,i,r){switch("*"===(i=i||"i8").charAt(i.length-1)&&(i="i32"),i){case"i1":case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+i)}return null}!function(){var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var i=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,i),i},stringToC:function(e){var i=0;return null!=e&&0!==e&&writeStringToMemory(e,i=Runtime.stackAlloc(1+(e.length<<2))),i}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function(e,i,r,f,n){var t=getCFunc(e),a=[],s=0;if(f)for(var l=0;l<f.length;l++){var o=toC[r[l]];o?(0===s&&(s=Runtime.stackSave()),a[l]=o(f[l])):a[l]=f[l]}var u=t.apply(null,a);if("string"===i&&(u=Pointer_stringify(u)),0!==s){if(n&&n.async)return void EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(s)}));Runtime.stackRestore(s)}return u};var sourceRegex=/^function\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(e){var i=e.toString().match(sourceRegex);return i?{arguments:(i=i.slice(1))[0],body:i[1],returnValue:i[2]}:{}}var JSsource={};for(var fun in JSfuncs)JSfuncs.hasOwnProperty(fun)&&(JSsource[fun]=parseJSFunc(JSfuncs[fun]));cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident),numericArgs=argTypes.every((function(e){return"number"===e})),numericRet="string"!==returnType;if(numericRet&&numericArgs)return cfunc;var argNames=argTypes.map((function(e,i){return"$"+i})),funcstr="(function("+argNames.join(",")+") {",nargs=argTypes.length;if(!numericArgs){funcstr+="var stack = "+JSsource.stackSave.body+";";for(var i=0;i<nargs;i++){var arg=argNames[i],type=argTypes[i];if("number"!==type){var convertCode=JSsource[type+"ToC"];funcstr+="var "+convertCode.arguments+" = "+arg+";",funcstr+=convertCode.body+";",funcstr+=arg+"="+convertCode.returnValue+";"}}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;if(funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");",!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}return numericArgs||(funcstr+=JSsource.stackRestore.body.replace("()","(stack)")+";"),funcstr+="return ret})",eval(funcstr)}}(),Module.ccall=ccall,Module.cwrap=cwrap,Module.setValue=setValue,Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;function allocate(e,i,r,f){var n,t;"number"==typeof e?(n=!0,t=e):(n=!1,t=e.length);var a,s="string"==typeof i?i:null;if(a=r==ALLOC_NONE?f:[_malloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][void 0===r?ALLOC_STATIC:r](Math.max(t,s?1:i.length)),n){var l;f=a;for(assert(0==(3&a)),l=a+(-4&t);f<l;f+=4)HEAP32[f>>2]=0;for(l=a+t;f<l;)HEAP8[f++>>0]=0;return a}if("i8"===s)return e.subarray||e.slice?HEAPU8.set(e,a):HEAPU8.set(new Uint8Array(e),a),a;for(var o,u,c,h=0;h<t;){var d=e[h];"function"==typeof d&&(d=Runtime.getFunctionIndex(d)),0!==(o=s||i[h])?("i64"==o&&(o="i32"),setValue(a+h,d,o),c!==o&&(u=Runtime.getNativeTypeSize(o),c=o),h+=u):h++}return a}function getMemory(e){return staticSealed?void 0!==_sbrk&&!_sbrk.called||!runtimeInitialized?Runtime.dynamicAlloc(e):_malloc(e):Runtime.staticAlloc(e)}function Pointer_stringify(e,i){if(0===i||!e)return"";for(var r,f=0,n=0;f|=r=HEAPU8[e+n>>0],(0!=r||i)&&(n++,!i||n!=i););i||(i=n);var t="";if(f<128){for(var a;i>0;)a=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(i,1024))),t=t?t+a:a,e+=1024,i-=1024;return t}return Module.UTF8ToString(e)}function AsciiToString(e){for(var i="";;){var r=HEAP8[e++>>0];if(!r)return i;i+=String.fromCharCode(r)}}function stringToAscii(e,i){return writeAsciiToMemory(e,i,!1)}function UTF8ArrayToString(e,i){for(var r,f,n,t,a,s="";;){if(!(r=e[i++]))return s;if(128&r)if(f=63&e[i++],192!=(224&r))if(n=63&e[i++],224==(240&r)?r=(15&r)<<12|f<<6|n:(t=63&e[i++],240==(248&r)?r=(7&r)<<18|f<<12|n<<6|t:(a=63&e[i++],r=248==(252&r)?(3&r)<<24|f<<18|n<<12|t<<6|a:(1&r)<<30|f<<24|n<<18|t<<12|a<<6|63&e[i++])),r<65536)s+=String.fromCharCode(r);else{var l=r-65536;s+=String.fromCharCode(55296|l>>10,56320|1023&l)}else s+=String.fromCharCode((31&r)<<6|f);else s+=String.fromCharCode(r)}}function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}function stringToUTF8Array(e,i,r,f){if(!(f>0))return 0;for(var n=r,t=r+f-1,a=0;a<e.length;++a){var s=e.charCodeAt(a);if(s>=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++a)),s<=127){if(r>=t)break;i[r++]=s}else if(s<=2047){if(r+1>=t)break;i[r++]=192|s>>6,i[r++]=128|63&s}else if(s<=65535){if(r+2>=t)break;i[r++]=224|s>>12,i[r++]=128|s>>6&63,i[r++]=128|63&s}else if(s<=2097151){if(r+3>=t)break;i[r++]=240|s>>18,i[r++]=128|s>>12&63,i[r++]=128|s>>6&63,i[r++]=128|63&s}else if(s<=67108863){if(r+4>=t)break;i[r++]=248|s>>24,i[r++]=128|s>>18&63,i[r++]=128|s>>12&63,i[r++]=128|s>>6&63,i[r++]=128|63&s}else{if(r+5>=t)break;i[r++]=252|s>>30,i[r++]=128|s>>24&63,i[r++]=128|s>>18&63,i[r++]=128|s>>12&63,i[r++]=128|s>>6&63,i[r++]=128|63&s}}return i[r]=0,r-n}function stringToUTF8(e,i,r){return stringToUTF8Array(e,HEAPU8,i,r)}function lengthBytesUTF8(e){for(var i=0,r=0;r<e.length;++r){var f=e.charCodeAt(r);f>=55296&&f<=57343&&(f=65536+((1023&f)<<10)|1023&e.charCodeAt(++r)),f<=127?++i:i+=f<=2047?2:f<=65535?3:f<=2097151?4:f<=67108863?5:6}return i}function UTF16ToString(e){for(var i=0,r="";;){var f=HEAP16[e+2*i>>1];if(0==f)return r;++i,r+=String.fromCharCode(f)}}function stringToUTF16(e,i,r){if(void 0===r&&(r=2147483647),r<2)return 0;for(var f=i,n=(r-=2)<2*e.length?r/2:e.length,t=0;t<n;++t){var a=e.charCodeAt(t);HEAP16[i>>1]=a,i+=2}return HEAP16[i>>1]=0,i-f}function lengthBytesUTF16(e){return 2*e.length}function UTF32ToString(e){for(var i=0,r="";;){var f=HEAP32[e+4*i>>2];if(0==f)return r;if(++i,f>=65536){var n=f-65536;r+=String.fromCharCode(55296|n>>10,56320|1023&n)}else r+=String.fromCharCode(f)}}function stringToUTF32(e,i,r){if(void 0===r&&(r=2147483647),r<4)return 0;for(var f=i,n=f+r-4,t=0;t<e.length;++t){var a=e.charCodeAt(t);if(a>=55296&&a<=57343)a=65536+((1023&a)<<10)|1023&e.charCodeAt(++t);if(HEAP32[i>>2]=a,(i+=4)+4>n)break}return HEAP32[i>>2]=0,i-f}function lengthBytesUTF32(e){for(var i=0,r=0;r<e.length;++r){var f=e.charCodeAt(r);f>=55296&&f<=57343&&++r,i+=4}return i}function demangle(e){var i=!!Module.___cxa_demangle;if(i)try{var r=_malloc(e.length);writeStringToMemory(e.substr(1),r);var f=_malloc(4),n=Module.___cxa_demangle(r,0,0,f);if(0===getValue(f,"i32")&&n)return Pointer_stringify(n)}catch(e){}finally{r&&_free(r),f&&_free(f),n&&_free(n)}var t=3,a={v:"void",b:"bool",c:"char",s:"short",i:"int",l:"long",f:"float",d:"double",w:"wchar_t",a:"signed char",h:"unsigned char",t:"unsigned short",j:"unsigned int",m:"unsigned long",x:"long long",y:"unsigned long long",z:"..."},s=[],l=!0;var o=e;try{if("Object._main"==e||"_main"==e)return"main()";if("number"==typeof e&&(e=Pointer_stringify(e)),"_"!==e[0])return e;if("_"!==e[1])return e;if("Z"!==e[2])return e;switch(e[3]){case"n":return"operator new()";case"d":return"operator delete()"}o=function i(r,f,n){f=f||1/0;var o,u="",c=[];if("N"===e[t]){if(o=function(){"K"===e[++t]&&t++;for(var i=[];"E"!==e[t];)if("S"!==e[t])if("C"!==e[t]){var r=parseInt(e.substr(t)),f=r.toString().length;if(!r||!f){t--;break}var n=e.substr(t+f,r);i.push(n),s.push(n),t+=f+r}else i.push(i[i.length-1]),t+=2;else{t++;var a=e.indexOf("_",t),l=e.substring(t,a)||0;i.push(s[l]||"?"),t=a+1}return t++,i}().join("::"),0===--f)return r?[o]:o}else if(("K"===e[t]||l&&"L"===e[t])&&t++,_=parseInt(e.substr(t))){var h=_.toString().length;o=e.substr(t+h,_),t+=h+_}if(l=!1,"I"===e[t]){t++;var d=i(!0);u+=i(!0,1,!0)[0]+" "+o+"<"+d.join(", ")+">"}else u=o;e:for(;t<e.length&&f-- >0;){var b=e[t++];if(b in a)c.push(a[b]);else switch(b){case"P":c.push(i(!0,1,!0)[0]+"*");break;case"R":c.push(i(!0,1,!0)[0]+"&");break;case"L":t++;var _=e.indexOf("E",t)-t;c.push(e.substr(t,_)),t+=_+2;break;case"A":_=parseInt(e.substr(t));if(t+=_.toString().length,"_"!==e[t])throw"?";t++,c.push(i(!0,1,!0)[0]+" ["+_+"]");break;case"E":break e;default:u+="?"+b;break e}}return n||1!==c.length||"void"!==c[0]||(c=[]),r?(u&&c.push(u+"?"),c):u+"("+c.join(", ")+")"}()}catch(e){o+="?"}return o.indexOf("?")>=0&&!i&&Runtime.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),o}function demangleAll(e){return e.replace(/__Z[\w\d_]+/g,(function(e){var i=demangle(e);return e===i?e:e+" ["+i+"]"}))}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(i){e=i}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE,Module.allocate=allocate,Module.getMemory=getMemory,Module.Pointer_stringify=Pointer_stringify,Module.AsciiToString=AsciiToString,Module.stringToAscii=stringToAscii,Module.UTF8ArrayToString=UTF8ArrayToString,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8Array=stringToUTF8Array,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8,Module.UTF16ToString=UTF16ToString,Module.stringToUTF16=stringToUTF16,Module.lengthBytesUTF16=lengthBytesUTF16,Module.UTF32ToString=UTF32ToString,Module.stringToUTF32=stringToUTF32,Module.lengthBytesUTF32=lengthBytesUTF32,Module.stackTrace=stackTrace;var PAGE_SIZE=4096,HEAP,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function alignMemoryPage(e){return e%4096>0&&(e+=4096-e%4096),e}var STATIC_BASE=0,STATICTOP=0,staticSealed=!1,STACK_BASE=0,STACKTOP=0,STACK_MAX=0,DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}for(var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||4e8,totalMemory=65536,buffer;totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK;)totalMemory<16777216?totalMemory*=2:totalMemory+=16777216;function callRuntimeCallbacks(e){for(;e.length>0;){var i=e.shift();if("function"!=typeof i){var r=i.func;"number"==typeof r?void 0===i.arg?Runtime.dynCall("v",r):Runtime.dynCall("vi",r,[i.arg]):r(void 0===i.arg?null:i.arg)}else i()}}totalMemory!==TOTAL_MEMORY&&(TOTAL_MEMORY=totalMemory),assert("undefined"!=typeof Int32Array&&"undefined"!=typeof Float64Array&&!!new Int32Array(1).subarray&&!!new Int32Array(1).set,"JS engine does not provide full typed array support"),buffer=new ArrayBuffer(TOTAL_MEMORY),HEAP8=new Int8Array(buffer),HEAP16=new Int16Array(buffer),HEAP32=new Int32Array(buffer),HEAPU8=new Uint8Array(buffer),HEAPU16=new Uint16Array(buffer),HEAPU32=new Uint32Array(buffer),HEAPF32=new Float32Array(buffer),HEAPF64=new Float64Array(buffer),HEAP32[0]=255,assert(255===HEAPU8[0]&&0===HEAPU8[3],"Typed arrays 2 must be run on a little-endian system"),Module.HEAP=HEAP,Module.buffer=buffer,Module.HEAP8=HEAP8,Module.HEAP16=HEAP16,Module.HEAP32=HEAP32,Module.HEAPU8=HEAPU8,Module.HEAPU16=HEAPU16,Module.HEAPU32=HEAPU32,Module.HEAPF32=HEAPF32,Module.HEAPF64=HEAPF64;var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for("function"==typeof Module.preRun&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for("function"==typeof Module.postRun&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}function addOnInit(e){__ATINIT__.unshift(e)}function addOnPreMain(e){__ATMAIN__.unshift(e)}function addOnExit(e){__ATEXIT__.unshift(e)}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}function intArrayFromString(e,i,r){var f=r>0?r:lengthBytesUTF8(e)+1,n=new Array(f),t=stringToUTF8Array(e,n,0,n.length);return i&&(n.length=t),n}function intArrayToString(e){for(var i=[],r=0;r<e.length;r++){var f=e[r];f>255&&(f&=255),i.push(String.fromCharCode(f))}return i.join("")}function writeStringToMemory(e,i,r){for(var f=intArrayFromString(e,r),n=0;n<f.length;){var t=f[n];HEAP8[i+n>>0]=t,n+=1}}function writeArrayToMemory(e,i){for(var r=0;r<e.length;r++)HEAP8[i++>>0]=e[r]}function writeAsciiToMemory(e,i,r){for(var f=0;f<e.length;++f)HEAP8[i++>>0]=e.charCodeAt(f);r||(HEAP8[i>>0]=0)}function unSign(e,i,r){return e>=0?e:i<=32?2*Math.abs(1<<i-1)+e:Math.pow(2,i)+e}function reSign(e,i,r){if(e<=0)return e;var f=i<=32?Math.abs(1<<i-1):Math.pow(2,i-1);return e>=f&&(i<=32||e>f)&&(e=-2*f+e),e}Module.addOnPreRun=addOnPreRun,Module.addOnInit=addOnInit,Module.addOnPreMain=addOnPreMain,Module.addOnExit=addOnExit,Module.addOnPostRun=addOnPostRun,Module.intArrayFromString=intArrayFromString,Module.intArrayToString=intArrayToString,Module.writeStringToMemory=writeStringToMemory,Module.writeArrayToMemory=writeArrayToMemory,Module.writeAsciiToMemory=writeAsciiToMemory,Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(e,i){var r=65535&e,f=65535&i;return r*f+((e>>>16)*f+r*(i>>>16)<<16)|0}),Math.imul=Math.imul,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var i=0;i<32;i++)if(e&1<<31-i)return i;return 32}),Math.clz32=Math.clz32;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_min=Math.min,Math_clz32=Math.clz32,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),0==runDependencies&&(null!==runDependencyWatcher&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var i=dependenciesFulfilled;dependenciesFulfilled=null,i()}}Module.addRunDependency=addRunDependency,Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var memoryInitializer=null,ASM_CONSTS=[];STATIC_BASE=8,STATICTOP=STATIC_BASE+25664,__ATINIT__.push(),allocate([131,192,202,161,69,182,251,63,127,251,58,112,206,136,234,63,127,251,58,112,206,136,234,63,131,192,202,161,69,182,251,63,225,122,20,174,71,225,252,63,94,186,73,12,2,43,249,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,6,64,0,0,0,0,0,128,21,64,92,143,194,245,40,92,37,64,215,163,112,61,10,87,53,64,246,40,92,143,194,85,69,64,133,235,81,184,30,85,85,64,102,102,102,102,102,86,101,64,205,204,204,204,204,84,117,64,207,247,83,227,165,155,240,63,70,182,243,253,212,120,249,63,39,49,8,172,28,90,7,64,29,90,100,59,223,207,22,64,41,92,143,194,245,168,38,64,164,112,61,10,215,163,54,64,0,0,0,0,0,160,70,64,31,133,235,81,184,158,86,64,205,204,204,204,204,156,102,64,0,0,0,0,0,0,0,0,207,247,83,227,165,155,240,63,70,182,243,253,212,120,249,63,39,49,8,172,28,90,7,64,29,90,100,59,223,207,22,64,41,92,143,194,245,168,38,64,164,112,61,10,215,163,54,64,0,0,0,0,0,160,70,64,31,133,235,81,184,158,86,64,205,204,204,204,204,156,102,64,0,0,0,0,0,0,0,0,173,250,92,109,197,254,230,63,86,125,174,182,98,127,237,63,199,75,55,137,65,96,249,63,242,210,77,98,16,88,8,64,250,126,106,188,116,19,24,64,133,235,81,184,30,5,40,64,0,0,0,0,0,0,56,64,92,143,194,245,40,252,71,64,236,81,184,30,133,251,87,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,113,61,10,215,163,112,255,63,104,145,237,124,63,181,16,64,117,147,24,4,86,206,32,64,102,102,102,102,102,230,48,64,236,81,184,30,133,235,64,64,92,143,194,245,40,236,80,64,154,153,153,153,153,233,96,64,154,153,153,153,153,233,112,64,51,51,51,51,51,231,128,64,147,24,4,86,14,45,0,64,182,243,253,212,120,233,15,64,246,40,92,143,194,181,32,64,10,215,163,112,61,10,49,64,195,245,40,92,143,34,65,64,184,30,133,235,81,40,81,64,154,153,153,153,153,41,97,64,154,153,153,153,153,41,113,64,0,0,0,0,0,40,129,64,0,0,0,0,0,0,0,0,147,24,4,86,14,45,0,64,182,243,253,212,120,233,15,64,246,40,92,143,194,181,32,64,10,215,163,112,61,10,49,64,195,245,40,92,143,34,65,64,184,30,133,235,81,40,81,64,154,153,153,153,153,41,97,64,154,153,153,153,153,41,113,64,0,0,0,0,0,40,129,64,0,0,0,0,0,0,0,0,164,112,61,10,215,163,0,64,236,81,184,30,133,235,14,64,119,190,159,26,47,157,32,64,174,71,225,122,20,46,49,64,123,20,174,71,225,90,65,64,246,40,92,143,194,101,81,64,154,153,153,153,153,105,97,64,154,153,153,153,153,105,113,64,154,153,153,153,153,105,129,64,0,0,0,0,0,0,0,0,4,0,0,0,67,80,82,76,0,0,0,0,0,0,0,0,76,82,67,80,0,0,0,0,3,0,0,0,80,67,82,76,0,0,0,0,1,0,0,0,82,76,67,80,0,0,0,0,2,0,0,0,82,80,67,76,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,144,255,0,0,12,0,0,0,1,0,0,0,82,255,0,0,20,0,0,0,2,0,0,0,83,255,0,0,20,0,0,0,3,0,0,0,94,255,0,0,20,0,0,0,4,0,0,0,92,255,0,0,20,0,0,0,5,0,0,0,93,255,0,0,20,0,0,0,6,0,0,0,95,255,0,0,20,0,0,0,7,0,0,0,81,255,0,0,2,0,0,0,8,0,0,0,85,255,0,0,4,0,0,0,9,0,0,0,87,255,0,0,4,0,0,0,10,0,0,0,88,255,0,0,16,0,0,0,11,0,0,0,96,255,0,0,4,0,0,0,12,0,0,0,97,255,0,0,16,0,0,0,13,0,0,0,145,255,0,0,0,0,0,0,0,0,0,0,99,255,0,0,4,0,0,0,14,0,0,0,100,255,0,0,20,0,0,0,15,0,0,0,116,255,0,0,20,0,0,0,16,0,0,0,120,255,0,0,4,0,0,0,17,0,0,0,117,255,0,0,20,0,0,0,18,0,0,0,119,255,0,0,20,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,8,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,32,32,80,106,20,0,0,0,112,121,116,102,21,0,0,0,104,50,112,106,22,0,0,0,114,100,104,105,23,0,0,0,114,108,111,99,24,0,0,0,99,99,112,98,25,0,0,0,114,108,99,112,26,0,0,0,112,97,109,99,27,0,0,0,102,101,100,99,28,0,0,0,1,86,0,0,0,0,0,0,164,4,0,0,180,4,0,0,1,86,0,0,1,0,0,0,180,4,0,0,164,4,0,0,1,52,0,0,0,0,0,0,196,4,0,0,68,5,0,0,1,52,0,0,1,0,0,0,212,4,0,0,84,5,0,0,1,24,0,0,0,0,0,0,228,4,0,0,164,5,0,0,1,24,0,0,1,0,0,0,244,4,0,0,180,5,0,0,193,10,0,0,0,0,0,0,4,5,0,0,4,6,0,0,193,10,0,0,1,0,0,0,20,5,0,0,20,6,0,0,33,5,0,0,0,0,0,0,36,5,0,0,36,8,0,0,33,5,0,0,1,0,0,0,52,5,0,0,52,8,0,0,33,2,0,0,0,0,0,0,68,9,0,0,164,8,0,0,33,2,0,0,1,0,0,0,84,9,0,0,180,8,0,0,1,86,0,0,0,0,0,0,100,5,0,0,84,5,0,0,1,86,0,0,1,0,0,0,116,5,0,0,68,5,0,0,1,84,0,0,0,0,0,0,132,5,0,0,68,6,0,0,1,84,0,0,1,0,0,0,148,5,0,0,84,6,0,0,1,72,0,0,0,0,0,0,164,5,0,0,68,6,0,0,1,72,0,0,1,0,0,0,180,5,0,0,84,6,0,0,1,56,0,0,0,0,0,0,196,5,0,0,68,6,0,0,1,56,0,0,1,0,0,0,212,5,0,0,84,6,0,0,1,48,0,0,0,0,0,0,228,5,0,0,164,6,0,0,1,48,0,0,1,0,0,0,244,5,0,0,180,6,0,0,1,36,0,0,0,0,0,0,4,6,0,0,196,6,0,0,1,36,0,0,1,0,0,0,20,6,0,0,212,6,0,0,1,28,0,0,0,0,0,0,36,6,0,0,4,7,0,0,1,28,0,0,1,0,0,0,52,6,0,0,20,7,0,0,1,22,0,0,0,0,0,0,36,8,0,0,36,7,0,0,1,22,0,0,1,0,0,0,52,8,0,0,52,7,0,0,1,86,0,0,0,0,0,0,100,6,0,0,84,6,0,0,1,86,0,0,1,0,0,0,116,6,0,0,68,6,0,0,1,84,0,0,0,0,0,0,132,6,0,0,68,6,0,0,1,84,0,0,1,0,0,0,148,6,0,0,84,6,0,0,1,81,0,0,0,0,0,0,164,6,0,0,100,6,0,0,1,81,0,0,1,0,0,0,180,6,0,0,116,6,0,0,1,72,0,0,0,0,0,0,196,6,0,0,132,6,0,0,1,72,0,0,1,0,0,0,212,6,0,0,148,6,0,0,1,56,0,0,0,0,0,0,228,6,0,0,164,6,0,0,1,56,0,0,1,0,0,0,244,6,0,0,180,6,0,0,1,52,0,0,0,0,0,0,4,7,0,0,196,6,0,0,1,52,0,0,1,0,0,0,20,7,0,0,212,6,0,0,1,48,0,0,0,0,0,0,36,7,0,0,228,6,0,0,1,48,0,0,1,0,0,0,52,7,0,0,244,6,0,0,1,40,0,0,0,0,0,0,68,7,0,0,228,6,0,0,1,40,0,0,1,0,0,0,84,7,0,0,244,6,0,0,1,36,0,0,0,0,0,0,100,7,0,0,4,7,0,0,1,36,0,0,1,0,0,0,116,7,0,0,20,7,0,0,1,34,0,0,0,0,0,0,132,7,0,0,36,7,0,0,1,34,0,0,1,0,0,0,148,7,0,0,52,7,0,0,1,28,0,0,0,0,0,0,164,7,0,0,68,7,0,0,1,28,0,0,1,0,0,0,180,7,0,0,84,7,0,0,1,24,0,0,0,0,0,0,196,7,0,0,100,7,0,0,1,24,0,0,1,0,0,0,212,7,0,0,116,7,0,0,1,22,0,0,0,0,0,0,228,7,0,0,132,7,0,0,1,22,0,0,1,0,0,0,244,7,0,0,148,7,0,0,1,20,0,0,0,0,0,0,4,8,0,0,164,7,0,0,1,20,0,0,1,0,0,0,20,8,0,0,180,7,0,0,1,18,0,0,0,0,0,0,36,8,0,0,196,7,0,0,1,18,0,0,1,0,0,0,52,8,0,0,212,7,0,0,1,17,0,0,0,0,0,0,68,8,0,0,228,7,0,0,1,17,0,0,1,0,0,0,84,8,0,0,244,7,0,0,193,10,0,0,0,0,0,0,100,8,0,0,4,8,0,0,193,10,0,0,1,0,0,0,116,8,0,0,20,8,0,0,193,9,0,0,0,0,0,0,132,8,0,0,36,8,0,0,193,9,0,0,1,0,0,0,148,8,0,0,52,8,0,0,161,8,0,0,0,0,0,0,164,8,0,0,68,8,0,0,161,8,0,0,1,0,0,0,180,8,0,0,84,8,0,0,33,5,0,0,0,0,0,0,196,8,0,0,100,8,0,0,33,5,0,0,1,0,0,0,212,8,0,0,116,8,0,0,65,4,0,0,0,0,0,0,228,8,0,0,132,8,0,0,65,4,0,0,1,0,0,0,244,8,0,0,148,8,0,0,161,2,0,0,0,0,0,0,4,9,0,0,164,8,0,0,161,2,0,0,1,0,0,0,20,9,0,0,180,8,0,0,33,2,0,0,0,0,0,0,36,9,0,0,196,8,0,0,33,2,0,0,1,0,0,0,52,9,0,0,212,8,0,0,65,1,0,0,0,0,0,0,68,9,0,0,228,8,0,0,65,1,0,0,1,0,0,0,84,9,0,0,244,8,0,0,17,1,0,0,0,0,0,0,100,9,0,0,4,9,0,0,17,1,0,0,1,0,0,0,116,9,0,0,20,9,0,0,133,0,0,0,0,0,0,0,132,9,0,0,36,9,0,0,133,0,0,0,1,0,0,0,148,9,0,0,52,9,0,0,73,0,0,0,0,0,0,0,164,9,0,0,68,9,0,0,73,0,0,0,1,0,0,0,180,9,0,0,84,9,0,0,37,0,0,0,0,0,0,0,196,9,0,0,100,9,0,0,37,0,0,0,1,0,0,0,212,9,0,0,116,9,0,0,21,0,0,0,0,0,0,0,228,9,0,0,132,9,0,0,21,0,0,0,1,0,0,0,244,9,0,0,148,9,0,0,9,0,0,0,0,0,0,0,4,10,0,0,164,9,0,0,9,0,0,0,1,0,0,0,20,10,0,0,180,9,0,0,5,0,0,0,0,0,0,0,36,10,0,0,196,9,0,0,5,0,0,0,1,0,0,0,52,10,0,0,212,9,0,0,1,0,0,0,0,0,0,0,36,10,0,0,228,9,0,0,1,0,0,0,1,0,0,0,52,10,0,0,244,9,0,0,1,86,0,0,0,0,0,0,68,10,0,0,68,10,0,0,1,86,0,0,1,0,0,0,84,10,0,0,84,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,11,0,0,12,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,38,94,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,64,4,32,0,32,2,128,0,128,8,16,0,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,1,0,3,128,4,0,6,128,7,0,9,128,10,0,12,128,13,0,15,128,16,0,18,128,19,0,21,128,22,0,24,128,25,0,27,128,28,0,30,128,31,0,33,128,34,0,36,128,37,0,39,128,40,0,42,128,43,0,45,128,46,0,48,128,49,0,51,128,52,0,54,128,55,0,57,128,58,0,60,128,61,0,63,128,64,0,66,128,67,0,69,128,70,0,72,128,73,0,75,128,76,0,78,128,79,0,81,128,82,0,84,128,85,0,87,128,88,0,90,128,91,0,93,128,94,0,96,128,97,0,99,128,100,0,102,128,103,0,105,128,106,0,108,128,109,0,111,128,112,0,114,128,115,0,117,128,118,0,0,0,0,0,0,0,0,0,0,0,0,128,0,128,0,128,0,128,0,0,1,0,1,0,1,128,1,128,1,0,2,0,2,128,2,128,2,0,3,0,3,128,3,0,4,0,4,128,4,0,5,128,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,128,11,0,12,128,12,0,13,0,14,128,14,0,15,0,16,128,16,128,17,0,18,0,19,128,19,128,20,0,21,0,22,0,23,128,23,128,24,128,25,128,26,0,27,0,28,0,29,0,30,0,31,0,32,0,33,0,34,0,35,0,36,0,37,128,38,128,39,128,40,128,41,0,43,0,44,0,45,128,46,128,47,0,49,0,50,128,51,128,52,0,54,0,55,128,56,0,58,0,59,128,60,0,62,128,63,128,64,0,66,128,67,0,69,128,70,0,72,128,73,0,75,128,76,0,78,128,79,128,81,0,83,128,84,0,86,0,88,128,89,0,91,0,93,128,94,128,96,0,98,0,100,128,101,128,103,0,105,0,107,0,109,128,110,128,112,128,114,128,116,0,118,0,120,0,122,0,124,0,126,0,24,128,23,0,23,128,22,0,22,128,21,0,21,128,20,0,20,128,19,0,19,128,18,0,18,128,17,0,17,128,16,0,16,128,15,0,15,128,14,0,14,128,13,0,13,128,12,0,12,128,11,0,11,128,10,0,10,128,9,0,9,128,8,0,8,128,7,0,7,128,6,0,6,128,5,0,5,128,4,0,4,128,3,0,3,128,2,0,2,128,1,0,1,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,1,128,1,0,2,128,2,0,3,128,3,0,4,128,4,0,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,0,11,128,11,0,12,128,12,0,13,128,13,0,14,128,14,0,15,128,15,0,16,128,16,0,17,128,17,0,18,128,18,0,19,128,19,0,20,128,20,0,21,128,21,0,22,128,22,0,23,128,23,0,32,0,31,0,30,0,29,0,28,0,27,128,26,128,25,128,24,128,23,0,23,0,22,0,21,128,20,128,19,0,19,0,18,128,17,128,16,0,16,0,15,128,14,0,14,0,13,128,12,0,12,128,11,128,10,0,10,128,9,0,9,128,8,0,8,128,7,0,7,128,6,0,6,128,5,128,5,0,5,128,4,0,4,0,4,128,3,0,3,0,3,128,2,128,2,0,2,0,2,128,1,128,1,0,1,0,1,0,1,128,0,128,0,128,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,128,0,128,0,128,0,0,1,0,1,0,1,128,1,128,1,0,2,0,2,128,2,128,2,0,3,0,3,128,3,0,4,0,4,128,4,0,5,128,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,128,11,0,12,128,12,0,13,0,14,128,14,0,15,0,16,128,16,128,17,0,18,0,19,128,19,128,20,0,21,0,22,0,23,128,23,128,24,128,25,128,26,0,27,0,28,0,29,0,30,0,31,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,115,101,116,117,112,32,116,104,101,32,100,101,99,111,100,101,114,0,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,114,101,97,100,32,116,104,101,32,104,101,97,100,101,114,0,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,33,0,91,69,82,82,79,82,93,32,37,115,0,83,116,114,101,97,109,32,114,101,97,99,104,101,100,32,105,116,115,32,101,110,100,32,33,10,0,69,114,114,111,114,32,111,110,32,119,114,105,116,105,110,103,32,115,116,114,101,97,109,33,10,0,83,116,114,101,97,109,32,101,114,114,111,114,33,10,0,50,46,49,46,48,0,67,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,116,104,101,32,111,112,106,95,115,101,116,117,112,95,100,101,99,111,100,101,114,32,102,117,110,99,116,105,111,110,32,105,115,32,110,111,116,32,97,32,100,101,99,111,109,112,114,101,115,115,111,114,32,104,97,110,100,108,101,114,46,10,0,67,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,116,104,101,32,111,112,106,95,114,101,97,100,95,104,101,97,100,101,114,32,102,117,110,99,116,105,111,110,32,105,115,32,110,111,116,32,97,32,100,101,99,111,109,112,114,101,115,115,111,114,32,104,97,110,100,108,101,114,46,10,0,119,98,0,114,98,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,58,32,37,100,32,110,111,116,32,105,110,32,114,97,110,103,101,32,91,49,44,37,100,93,10,0,68,101,112,114,101,99,97,116,101,100,32,102,105,101,108,100,115,32,99,112,95,99,105,110,101,109,97,32,111,114,32,99,112,95,114,115,105,122,32,97,114,101,32,117,115,101,100,10,80,108,101,97,115,101,32,99,111,110,115,105,100,101,114,32,117,115,105,110,103,32,111,110,108,121,32,116,104,101,32,114,115,105,122,32,102,105,101,108,100,10,83,101,101,32,111,112,101,110,106,112,101,103,46,104,32,100,111,99,117,109,101,110,116,97,116,105,111,110,32,102,111,114,32,109,111,114,101,32,100,101,116,97,105,108,115,10,0,84,104,101,32,100,101,115,105,114,101,100,32,109,97,120,105,109,117,109,32,99,111,100,101,115,116,114,101,97,109,32,115,105,122,101,32,104,97,115,32,108,105,109,105,116,101,100,10,97,116,32,108,101,97,115,116,32,111,110,101,32,111,102,32,116,104,101,32,100,101,115,105,114,101,100,32,113,117,97,108,105,116,121,32,108,97,121,101,114,115,10,0,74,80,69,71,32,50,48,48,48,32,83,99,97,108,97,98,108,101,32,68,105,103,105,116,97,108,32,67,105,110,101,109,97,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,49,32,115,105,110,103,108,101,32,113,117,97,108,105,116,121,32,108,97,121,101,114,45,62,32,78,117,109,98,101,114,32,111,102,32,108,97,121,101,114,115,32,102,111,114,99,101,100,32,116,111,32,49,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,45,62,32,82,97,116,101,32,111,102,32,116,104,101,32,108,97,115,116,32,108,97,121,101,114,32,40,37,51,46,49,102,41,32,119,105,108,108,32,98,101,32,117,115,101,100,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,60,61,32,53,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,53,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,62,61,32,49,32,38,38,32,60,61,32,54,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,49,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,62,61,32,49,32,38,38,32,60,61,32,54,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,54,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,51,48,50,48,56,51,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,65,115,32,110,111,32,114,97,116,101,32,104,97,115,32,98,101,101,110,32,103,105,118,101,110,44,32,116,104,105,115,32,108,105,109,105,116,32,119,105,108,108,32,98,101,32,117,115,101,100,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,51,48,50,48,56,51,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,45,62,32,83,112,101,99,105,102,105,101,100,32,114,97,116,101,32,101,120,99,101,101,100,115,32,116,104,105,115,32,108,105,109,105,116,46,32,82,97,116,101,32,119,105,108,108,32,98,101,32,102,111,114,99,101,100,32,116,111,32,49,51,48,50,48,56,51,32,98,121,116,101,115,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,48,52,49,54,54,54,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,65,115,32,110,111,32,114,97,116,101,32,104,97,115,32,98,101,101,110,32,103,105,118,101,110,44,32,116,104,105,115,32,108,105,109,105,116,32,119,105,108,108,32,98,101,32,117,115,101,100,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,48,52,49,54,54,54,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,45,62,32,83,112,101,99,105,102,105,101,100,32,114,97,116,101,32,101,120,99,101,101,100,115,32,116,104,105,115,32,108,105,109,105,116,46,32,82,97,116,101,32,119,105,108,108,32,98,101,32,102,111,114,99,101,100,32,116,111,32,49,48,52,49,54,54,54,32,98,121,116,101,115,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,51,32,99,111,109,112,111,110,101,110,116,115,45,62,32,78,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,111,102,32,105,110,112,117,116,32,105,109,97,103,101,32,40,37,100,41,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,115,105,103,110,101,100,0,117,110,115,105,103,110,101,100,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,80,114,101,99,105,115,105,111,110,32,111,102,32,101,97,99,104,32,99,111,109,112,111,110,101,110,116,32,115,104,97,108,108,32,98,101,32,49,50,32,98,105,116,115,32,117,110,115,105,103,110,101,100,45,62,32,65,116,32,108,101,97,115,116,32,99,111,109,112,111,110,101,110,116,32,37,100,32,111,102,32,105,110,112,117,116,32,105,109,97,103,101,32,40,37,100,32,98,105,116,115,44,32,37,115,41,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,119,105,100,116,104,32,60,61,32,50,48,52,56,32,97,110,100,32,104,101,105,103,104,116,32,60,61,32,49,48,56,48,10,45,62,32,73,110,112,117,116,32,105,109,97,103,101,32,115,105,122,101,32,37,100,32,120,32,37,100,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,119,105,100,116,104,32,60,61,32,52,48,57,54,32,97,110,100,32,104,101,105,103,104,116,32,60,61,32,50,49,54,48,10,45,62,32,73,109,97,103,101,32,115,105,122,101,32,37,100,32,120,32,37,100,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,52,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,76,111,110,103,32,84,101,114,109,32,83,116,111,114,97,103,101,32,112,114,111,102,105,108,101,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,66,114,111,97,100,99,97,115,116,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,73,77,70,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,97,114,116,45,50,32,112,114,111,102,105,108,101,32,100,101,102,105,110,101,100,10,98,117,116,32,110,111,32,80,97,114,116,45,50,32,101,120,116,101,110,115,105,111,110,32,101,110,97,98,108,101,100,46,10,80,114,111,102,105,108,101,32,115,101,116,32,116,111,32,78,79,78,69,46,10,0,85,110,115,117,112,112,111,114,116,101,100,32,80,97,114,116,45,50,32,101,120,116,101,110,115,105,111,110,32,101,110,97,98,108,101,100,10,80,114,111,102,105,108,101,32,115,101,116,32,116,111,32,78,79,78,69,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,112,121,32,111,102,32,117,115,101,114,32,101,110,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,112,121,32,111,102,32,99,111,109,109,101,110,116,32,115,116,114,105,110,103,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,109,109,101,110,116,32,115,116,114,105,110,103,10,0,37,115,37,115,0,67,114,101,97,116,101,100,32,98,121,32,79,112,101,110,74,80,69,71,32,118,101,114,115,105,111,110,32,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,105,108,101,32,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,99,104,101,99,107,105,110,103,32,116,104,101,32,112,111,99,32,118,97,108,117,101,115,46,10,0,77,105,115,115,105,110,103,32,112,97,99,107,101,116,115,32,112,111,115,115,105,98,108,101,32,108,111,115,115,32,111,102,32,100,97,116,97,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,105,108,101,32,99,111,109,112,111,110,101,110,116,32,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,101,109,112,32,98,117,102,102,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,100,101,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,70,97,105,108,101,100,32,116,111,32,105,110,118,101,114,115,101,32,101,110,99,111,100,101,114,32,77,67,84,32,100,101,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,110,111,114,109,115,32,10,0,70,97,105,108,101,100,32,116,111,32,115,101,116,117,112,32,106,50,107,32,109,99,116,32,101,110,99,111,100,105,110,103,10,0,67,97,110,110,111,116,32,112,101,114,102,111,114,109,32,77,67,84,32,111,110,32,99,111,109,112,111,110,101,110,116,115,32,119,105,116,104,32,100,105,102,102,101,114,101,110,116,32,115,105,122,101,115,46,32,68,105,115,97,98,108,105,110,103,32,77,67,84,46,10,0,83,116,114,101,97,109,32,116,111,111,32,115,104,111,114,116,10,0,73,110,99,111,110,115,105,115,116,101,110,116,32,109,97,114,107,101,114,32,115,105,122,101,10,0,77,97,114,107,101,114,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,32,119,105,116,104,32,105,116,115,32,112,111,115,105,116,105,111,110,10,0,77,97,114,107,101,114,32,115,105,122,101,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,115,116,114,101,97,109,32,108,101,110,103,116,104,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,104,101,97,100,101,114,10,0,78,111,116,32,115,117,114,101,32,104,111,119,32,116,104,97,116,32,104,97,112,112,101,110,101,100,46,10,0,70,97,105,108,32,116,111,32,114,101,97,100,32,116,104,101,32,99,117,114,114,101,110,116,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,32,40,37,35,120,41,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,116,108,32,109,97,114,107,101,114,10,0,84,105,108,101,32,112,97,114,116,32,108,101,110,103,116,104,32,115,105,122,101,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,115,116,114,101,97,109,32,108,101,110,103,116,104,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,79,84,32,109,97,114,107,101,114,10,0,111,112,106,95,106,50,107,95,97,112,112,108,121,95,110,98,95,116,105,108,101,95,112,97,114,116,115,95,99,111,114,114,101,99,116,105,111,110,32,101,114,114,111,114,10,0,78,111,110,32,99,111,110,102,111,114,109,97,110,116,32,99,111,100,101,115,116,114,101,97,109,32,84,80,115,111,116,61,61,84,78,115,111,116,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,80,80,84,32,109,97,114,107,101,114,10,0,70,97,105,108,101,100,32,116,111,32,109,101,114,103,101,32,80,80,84,32,100,97,116,97,10,0,67,97,110,110,111,116,32,100,101,99,111,100,101,32,116,105,108,101,44,32,109,101,109,111,114,121,32,101,114,114,111,114,10,0,72,101,97,100,101,114,32,111,102,32,116,105,108,101,32,37,100,32,47,32,37,100,32,104,97,115,32,98,101,101,110,32,114,101,97,100,46,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,46,10,0,78,111,32,69,79,67,32,109,97,114,107,101,114,46,32,80,111,115,115,105,98,108,121,32,97,32,116,114,117,110,99,97,116,101,100,32,115,116,114,101,97,109,10,0,83,116,114,101,97,109,32,100,111,101,115,32,110,111,116,32,101,110,100,32,119,105,116,104,32,69,79,67,10,0,83,116,114,101,97,109,32,116,111,111,32,115,104,111,114,116,44,32,101,120,112,101,99,116,101,100,32,83,79,84,10,0,78,101,101,100,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,109,97,105,110,32,104,101,97,100,101,114,32,98,101,102,111,114,101,32,98,101,103,105,110,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,114,101,109,97,105,110,105,110,103,32,99,111,100,101,115,116,114,101,97,109,0,78,111,32,100,101,99,111,100,101,100,32,97,114,101,97,32,112,97,114,97,109,101,116,101,114,115,44,32,115,101,116,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,116,111,32,116,104,101,32,119,104,111,108,101,32,105,109,97,103,101,10,0,76,101,102,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,115,105,122,61,37,100,41,46,10,0,76,101,102,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,79,115,105,122,61,37,100,41,46,10,0,85,112,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,115,105,122,61,37,100,41,46,10,0,85,112,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,79,115,105,122,61,37,100,41,46,10,0,82,105,103,104,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,79,115,105,122,61,37,100,41,46,10,0,82,105,103,104,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,115,105,122,61,37,100,41,46,10,0,66,111,116,116,111,109,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,79,115,105,122,61,37,100,41,46,10,0,66,111,116,116,111,109,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,115,105,122,61,37,100,41,46,10,0,83,105,122,101,32,120,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,99,111,109,112,111,110,101,110,116,32,105,109,97,103,101,32,105,115,32,105,110,99,111,114,114,101,99,116,32,40,99,111,109,112,91,37,100,93,46,119,61,37,100,41,46,10,0,83,105,122,101,32,121,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,99,111,109,112,111,110,101,110,116,32,105,109,97,103,101,32,105,115,32,105,110,99,111,114,114,101,99,116,32,40,99,111,109,112,91,37,100,93,46,104,61,37,100,41,46,10,0,83,101,116,116,105,110,103,32,100,101,99,111,100,105,110,103,32,97,114,101,97,32,116,111,32,37,100,44,37,100,44,37,100,44,37,100,10,0,87,114,111,110,103,32,102,108,97,103,10,0,67,111,100,101,115,116,114,101,97,109,32,105,110,102,111,32,102,114,111,109,32,109,97,105,110,32,104,101,97,100,101,114,58,32,123,10,0,9,32,116,120,48,61,37,100,44,32,116,121,48,61,37,100,10,0,9,32,116,100,120,61,37,100,44,32,116,100,121,61,37,100,10,0,9,32,116,119,61,37,100,44,32,116,104,61,37,100,10,0,125,10,0,67,111,100,101,115,116,114,101,97,109,32,105,110,100,101,120,32,102,114,111,109,32,109,97,105,110,32,104,101,97,100,101,114,58,32,123,10,0,9,32,77,97,105,110,32,104,101,97,100,101,114,32,115,116,97,114,116,32,112,111,115,105,116,105,111,110,61,37,108,108,105,10,9,32,77,97,105,110,32,104,101],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE),allocate([97,100,101,114,32,101,110,100,32,112,111,115,105,116,105,111,110,61,37,108,108,105,10,0,9,32,77,97,114,107,101,114,32,108,105,115,116,58,32,123,10,0,9,9,32,116,121,112,101,61,37,35,120,44,32,112,111,115,61,37,108,108,105,44,32,108,101,110,61,37,100,10,0,9,32,125,10,0,9,32,84,105,108,101,32,105,110,100,101,120,58,32,123,10,0,9,9,32,110,98,32,111,102,32,116,105,108,101,45,112,97,114,116,32,105,110,32,116,105,108,101,32,91,37,100,93,61,37,100,10,0,9,9,9,32,116,105,108,101,45,112,97,114,116,91,37,100,93,58,32,115,116,97,114,95,112,111,115,61,37,108,108,105,44,32,101,110,100,95,104,101,97,100,101,114,61,37,108,108,105,44,32,101,110,100,95,112,111,115,61,37,108,108,105,46,10,0,91,68,69,86,93,32,68,117,109,112,32,97,110,32,105,109,97,103,101,95,104,101,97,100,101,114,32,115,116,114,117,99,116,32,123,10,0,73,109,97,103,101,32,105,110,102,111,32,123,10,0,37,115,32,120,48,61,37,100,44,32,121,48,61,37,100,10,0,37,115,32,120,49,61,37,100,44,32,121,49,61,37,100,10,0,37,115,32,110,117,109,99,111,109,112,115,61,37,100,10,0,37,115,9,32,99,111,109,112,111,110,101,110,116,32,37,100,32,123,10,0,37,115,125,10,0,91,68,69,86,93,32,68,117,109,112,32,97,110,32,105,109,97,103,101,95,99,111,109,112,95,104,101,97,100,101,114,32,115,116,114,117,99,116,32,123,10,0,37,115,32,100,120,61,37,100,44,32,100,121,61,37,100,10,0,37,115,32,112,114,101,99,61,37,100,10,0,37,115,32,115,103,110,100,61,37,100,10,0,87,101,32,110,101,101,100,32,97,110,32,105,109,97,103,101,32,112,114,101,118,105,111,117,115,108,121,32,99,114,101,97,116,101,100,46,10,0,84,105,108,101,32,105,110,100,101,120,32,112,114,111,118,105,100,101,100,32,98,121,32,116,104,101,32,117,115,101,114,32,105,115,32,105,110,99,111,114,114,101,99,116,32,37,100,32,40,109,97,120,32,61,32,37,100,41,32,10,0,82,101,115,111,108,117,116,105,111,110,32,102,97,99,116,111,114,32,105,115,32,103,114,101,97,116,101,114,32,116,104,97,110,32,116,104,101,32,109,97,120,105,109,117,109,32,114,101,115,111,108,117,116,105,111,110,32,105,110,32,116,104,101,32,99,111,109,112,111,110,101,110,116,46,10,0,84,104,101,32,103,105,118,101,110,32,116,105,108,101,32,105,110,100,101,120,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,46,0,116,105,108,101,32,110,117,109,98,101,114,32,37,100,32,47,32,37,100,10,0,69,114,114,111,114,32,97,108,108,111,99,97,116,105,110,103,32,116,105,108,101,32,99,111,109,112,111,110,101,110,116,32,100,97,116,97,46,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,101,110,99,111,100,101,32,97,108,108,32,116,105,108,101,115,10,0,83,105,122,101,32,109,105,115,109,97,116,99,104,32,98,101,116,119,101,101,110,32,116,105,108,101,32,100,97,116,97,32,97,110,100,32,115,101,110,116,32,100,97,116,97,46,0,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,105,109,97,103,101,32,104,101,97,100,101,114,46,0,69,114,114,111,114,32,119,104,105,108,101,32,111,112,106,95,106,50,107,95,112,114,101,95,119,114,105,116,101,95,116,105,108,101,32,119,105,116,104,32,116,105,108,101,32,105,110,100,101,120,32,61,32,37,100,10,0,69,114,114,111,114,32,119,104,105,108,101,32,111,112,106,95,106,50,107,95,112,111,115,116,95,119,114,105,116,101,95,116,105,108,101,32,119,105,116,104,32,116,105,108,101,32,105,110,100,101,120,32,61,32,37,100,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,105,108,101,32,67,111,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,66,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,84,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,67,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,79,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,116,104,101,32,67,79,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,80,79,67,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,84,76,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,81,67,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,81,99,100,32,83,81,99,99,32,101,108,101,109,101,110,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,79,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,81,67,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,81,67,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,79,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,67,79,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,104,101,32,83,73,90,32,109,97,114,107,101,114,10,0,78,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,105,115,32,116,111,111,32,104,105,103,104,32,105,110,32,99,111,109,112,97,114,105,115,111,110,32,116,111,32,116,104,101,32,115,105,122,101,32,111,102,32,116,105,108,101,115,10,0,67,97,110,110,111,116,32,101,110,99,111,100,101,32,116,105,108,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,111,110,101,32,116,105,108,101,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,115,101,101,107,32,102,117,110,99,116,105,111,110,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,32,37,100,47,37,100,10,0,84,105,108,101,32,37,100,47,37,100,32,104,97,115,32,98,101,101,110,32,100,101,99,111,100,101,100,46,10,0,73,109,97,103,101,32,100,97,116,97,32,104,97,115,32,98,101,101,110,32,117,112,100,97,116,101,100,32,119,105,116,104,32,116,105,108,101,32,37,100,46,10,10,0,84,105,108,101,32,114,101,97,100,44,32,100,101,99,111,100,101,100,32,97,110,100,32,117,112,100,97,116,101,100,32,105,115,32,110,111,116,32,116,104,101,32,100,101,115,105,114,101,100,32,111,110,101,32,40,37,100,32,118,115,32,37,100,41,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,115,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,32,37,100,47,37,100,10,0,9,32,100,101,102,97,117,108,116,32,116,105,108,101,32,123,10,0,9,9,32,99,115,116,121,61,37,35,120,10,0,9,9,32,112,114,103,61,37,35,120,10,0,9,9,32,110,117,109,108,97,121,101,114,115,61,37,100,10,0,9,9,32,109,99,116,61,37,120,10,0,9,9,32,99,111,109,112,32,37,100,32,123,10,0,9,9,9,32,99,115,116,121,61,37,35,120,10,0,9,9,9,32,110,117,109,114,101,115,111,108,117,116,105,111,110,115,61,37,100,10,0,9,9,9,32,99,98,108,107,119,61,50,94,37,100,10,0,9,9,9,32,99,98,108,107,104,61,50,94,37,100,10,0,9,9,9,32,99,98,108,107,115,116,121,61,37,35,120,10,0,9,9,9,32,113,109,102,98,105,100,61,37,100,10,0,9,9,9,32,112,114,101,99,99,105,110,116,115,105,122,101,32,40,119,44,104,41,61,0,40,37,100,44,37,100,41,32,0,9,9,9,32,113,110,116,115,116,121,61,37,100,10,0,9,9,9,32,110,117,109,103,98,105,116,115,61,37,100,10,0,9,9,9,32,115,116,101,112,115,105,122,101,115,32,40,109,44,101,41,61,0,9,9,9,32,114,111,105,115,104,105,102,116,61,37,100,10,0,9,9,32,125,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,79,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110,32,115,116,97,103,101,115,46,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,67,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,100,97,116,97,32,115,112,97,110,110,105,110,103,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,77,67,67,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,99,111,108,108,101,99,116,105,111,110,115,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,111,116,104,101,114,32,116,104,97,110,32,97,114,114,97,121,32,100,101,99,111,114,114,101,108,97,116,105,111,110,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,119,105,116,104,32,105,110,100,105,120,32,115,104,117,102,102,108,101,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,119,105,116,104,111,117,116,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,105,110,100,105,120,101,115,10,0,67,114,114,111,114,32,114,101,97,100,105,110,103,32,67,66,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,84,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,99,116,32,100,97,116,97,32,119,105,116,104,105,110,32,109,117,108,116,105,112,108,101,32,77,67,84,32,114,101,99,111,114,100,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,77,67,84,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,77,67,84,32,109,97,114,107,101,114,115,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,82,71,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,84,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,84,32,109,97,114,107,101,114,58,32,112,97,99,107,101,116,32,104,101,97,100,101,114,32,104,97,118,101,32,98,101,101,110,32,112,114,101,118,105,111,117,115,108,121,32,102,111,117,110,100,32,105,110,32,116,104,101,32,109,97,105,110,32,104,101,97,100,101,114,32,40,80,80,77,32,109,97,114,107,101,114,41,46,10,0,90,112,112,116,32,37,117,32,97,108,114,101,97,100,121,32,114,101,97,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,80,80,77,32,109,97,114,107,101,114,10,0,90,112,112,109,32,37,117,32,97,108,114,101,97,100,121,32,114,101,97,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,76,84,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,76,77,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,84,76,77,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,32,115,105,122,101,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,32,105,115,32,105,108,108,101,103,97,108,32,45,62,32,37,100,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,32,105,115,32,110,111,116,32,99,111,109,112,97,116,105,98,108,101,32,119,105,116,104,32,116,104,101,32,114,101,109,97,105,110,105,110,103,32,110,117,109,98,101,114,32,111,102,32,112,97,114,97,109,101,116,101,114,115,32,40,32,37,100,32,118,115,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,101,103,97,116,105,118,101,32,111,114,32,122,101,114,111,32,105,109,97,103,101,32,115,105,122,101,32,40,37,100,32,120,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,105,110,118,97,108,105,100,32,116,105,108,101,32,115,105,122,101,32,40,116,100,120,58,32,37,100,44,32,116,100,121,58,32,37,100,41,10,0,80,114,101,118,101,110,116,32,98,117,102,102,101,114,32,111,118,101,114,102,108,111,119,32,40,120,49,58,32,37,100,44,32,121,49,58,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,105,108,108,101,103,97,108,32,116,105,108,101,32,111,102,102,115,101,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,83,73,90,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,115,32,102,111,114,32,99,111,109,112,32,61,32,37,100,32,58,32,100,120,61,37,117,32,100,121,61,37,117,10,32,40,115,104,111,117,108,100,32,98,101,32,98,101,116,119,101,101,110,32,49,32,97,110,100,32,50,53,53,32,97,99,99,111,114,100,105,110,103,32,116,104,101,32,74,80,69,71,50,48,48,48,32,110,111,114,109,41,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,115,32,58,32,37,117,32,120,32,37,117,32,40,109,97,120,105,109,117,109,32,102,105,120,101,100,32,98,121,32,106,112,101,103,50,48,48,48,32,110,111,114,109,32,105,115,32,54,53,53,51,53,32,116,105,108,101,115,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,79,67,32,109,97,114,107,101,114,10,0,84,111,111,32,109,97,110,121,32,80,79,67,115,32,37,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,81,67,67,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,110,117,109,98,101,114,58,32,37,100,44,32,114,101,103,97,114,100,105,110,103,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,37,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,81,99,100,32,111,114,32,83,81,99,99,32,101,108,101,109,101,110,116,10,0,87,104,105,108,101,32,114,101,97,100,105,110,103,32,67,67,80,95,81,78,84,83,84,89,32,101,108,101,109,101,110,116,32,105,110,115,105,100,101,32,81,67,68,32,111,114,32,81,67,67,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,44,32,110,117,109,98,101,114,32,111,102,32,115,117,98,98,97,110,100,115,32,40,37,100,41,32,105,115,32,103,114,101,97,116,101,114,32,116,111,32,79,80,74,95,74,50,75,95,77,65,88,66,65,78,68,83,32,40,37,100,41,46,32,83,111,32,119,101,32,108,105,109,105,116,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,101,108,101,109,101,110,116,115,32,115,116,111,114,101,100,32,116,111,32,79,80,74,95,74,50,75,95,77,65,88,66,65,78,68,83,32,40,37,100,41,32,97,110,100,32,115,107,105,112,32,116,104,101,32,114,101,115,116,46,32,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,81,67,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,82,71,78,32,109,97,114,107,101,114,10,0,98,97,100,32,99,111,109,112,111,110,101,110,116,32,110,117,109,98,101,114,32,105,110,32,82,71,78,32,40,37,100,32,119,104,101,110,32,116,104,101,114,101,32,97,114,101,32,111,110,108,121,32,37,100,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,67,32,109,97,114,107,101,114,32,40,98,97,100,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,102,111,114,32,110,117,109,114,101,115,111,108,117,116,105,111,110,115,32,58,32,37,100,44,32,109,97,120,32,118,97,108,117,101,32,105,115,32,115,101,116,32,105,110,32,111,112,101,110,106,112,101,103,46,104,32,97,116,32,37,100,10,0,69,114,114,111,114,32,100,101,99,111,100,105,110,103,32,99,111,109,112,111,110,101,110,116,32,37,100,46,10,84,104,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,116,111,32,114,101,109,111,118,101,32,105,115,32,104,105,103,104,101,114,32,116,104,97,110,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,111,102,32,116,104,105,115,32,99,111,109,112,111,110,101,110,116,10,77,111,100,105,102,121,32,116,104,101,32,99,112,95,114,101,100,117,99,101,32,112,97,114,97,109,101,116,101,114,46,10,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,44,32,73,110,118,97,108,105,100,32,99,98,108,107,119,47,99,98,108,107,104,32,99,111,109,98,105,110,97,116,105,111,110,10,0,73,110,118,97,108,105,100,32,112,114,101,99,105,110,99,116,32,115,105,122,101,10,0,67,79,68,32,109,97,114,107,101,114,32,97,108,114,101,97,100,121,32,114,101,97,100,46,32,78,111,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,67,79,68,32,109,97,114,107,101,114,32,112,101,114,32,116,105,108,101,46,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,68,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,110,32,83,99,111,100,32,118,97,108,117,101,32,105,110,32,67,79,68,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,110,32,112,114,111,103,114,101,115,115,105,111,110,32,111,114,100,101,114,32,105,110,32,67,79,68,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,108,97,121,101,114,115,32,105,110,32,67,79,68,32,109,97,114,107,101,114,32,58,32,37,100,32,110,111,116,32,105,110,32,114,97,110,103,101,32,91,49,45,54,53,53,51,53,93,10,0,73,110,118,97,108,105,100,32,116,105,108,101,32,110,117,109,98,101,114,32,37,100,10,0,69,109,112,116,121,32,83,79,84,32,109,97,114,107,101,114,32,100,101,116,101,99,116,101,100,58,32,80,115,111,116,61,37,100,46,10,0,80,115,111,116,32,118,97,108,117,101,32,105,115,32,110,111,116,32,99,111,114,114,101,99,116,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,74,80,69,71,50,48,48,48,32,110,111,114,109,58,32,37,100,46,10,0,80,115,111,116,32,118,97,108,117,101,32,111,102,32,116,104,101,32,99,117,114,114,101,110,116,32,116,105,108,101,45,112,97,114,116,32,105,115,32,101,113,117,97,108,32,116,111,32,122,101,114,111,44,32,119,101,32,97,115,115,117,109,105,110,103,32,105,116,32,105,115,32,116,104,101,32,108,97,115,116,32,116,105,108,101,45,112,97,114,116,32,111,102,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,46,10,0,73,110,32,83,79,84,32,109,97,114,107,101,114,44,32,84,80,83,111,116,32,40,37,100,41,32,105,115,32,110,111,116,32,118,97,108,105,100,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,99,117,114,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,45,112,97,114,116,32,40,37,100,41,44,32,103,105,118,105,110,103,32,117,112,10,0,73,110,32,83,79,84,32,109,97,114,107,101,114,44,32,84,80,83,111,116,32,40,37,100,41,32,105,115,32,110,111,116,32,118,97,108,105,100,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,99,117,114,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,45,112,97,114,116,32,40,104,101,97,100,101,114,41,32,40,37,100,41,44,32,103,105,118,105,110,103,32,117,112,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,83,79,84,32,109,97,114,107,101,114,46,32,84,105,108,101,32,105,110,100,101,120,32,97,108,108,111,99,97,116,105,111,110,32,102,97,105,108,101,100,10,0,83,116,97,114,116,32,116,111,32,114,101,97,100,32,106,50,107,32,109,97,105,110,32,104,101,97,100,101,114,32,40,37,100,41,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,109,104,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,97,32,83,79,67,32,109,97,114,107,101,114,32,10,0,65,32,109,97,114,107,101,114,32,73,68,32,119,97,115,32,101,120,112,101,99,116,101,100,32,40,48,120,102,102,45,45,41,32,105,110,115,116,101,97,100,32,111,102,32,37,46,56,120,10,0,85,110,107,110,111,119,110,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,32,109,97,114,107,101,114,32,104,97,118,101,32,98,101,101,110,32,100,101,116,101,99,116,101,100,32,97,110,100,32,103,101,110,101,114,97,116,101,100,32,101,114,114,111,114,46,10,0,77,97,114,107,101,114,32,104,97,110,100,108,101,114,32,102,117,110,99,116,105,111,110,32,102,97,105,108,101,100,32,116,111,32,114,101,97,100,32,116,104,101,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,10,0,114,101,113,117,105,114,101,100,32,83,73,90,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,114,101,113,117,105,114,101,100,32,67,79,68,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,114,101,113,117,105,114,101,100,32,81,67,68,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,98,121,116,101,115,32,116,111,32,114,101,97,100,32,78,112,112,109,10,0,67,111,114,114,117,112,116,101,100,32,80,80,77,32,109,97,114,107,101,114,115,10,0,70,97,105,108,101,100,32,116,111,32,109,101,114,103,101,32,80,80,77,32,100,97,116,97,10,0,77,97,105,110,32,104,101,97,100,101,114,32,104,97,115,32,98,101,101,110,32,99,111,114,114,101,99,116,108,121,32,100,101,99,111,100,101,100,46,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,32,105,110,32,116,104,101,32,74,80,50,32,102,105,108,101,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,115,112,101,99,105,102,105,101,100,32,119,104,105,108,101,32,115,101,116,116,105,110,103,32,117,112,32,74,80,50,32,101,110,99,111,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,119,104,101,110,32,115,101,116,117,112,32,116,104,101,32,74,80,50,32,101,110,99,111,100,101,114,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,115,112,101,99,105,102,105,101,100,32,98,117,116,32,117,110,107,110,111,119,110,32,101,110,117,109,99,115,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,115,112,101,99,105,102,105,101,100,32,98,117,116,32,110,111,116,32,101,110,111,117,103,104,32,105,109,97,103,101,32,99,111,109,112,111,110,101,110,116,115,32,102,111,114,32,97,110,32,97,117,116,111,109,97,116,105,99,32,99,100,101,102,32,98,111,120,32,99,114,101,97,116,105,111,110,46,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,112,111,115,105,116,105,111,110,32,99,111,110,102,108,105,99,116,115,32,119,105,116,104,32,99,111,108,111,114,32,99,104,97,110,110,101,108,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,77,117,108,116,105,112,108,101,32,97,108,112,104,97,32,99,104,97,110,110,101,108,115,32,115,112,101,99,105,102,105,101,100,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,115,101,116,117,112,32,116,104,101,32,74,80,50,32,101,110,99,111,100,101,114,10,0,74,80,50,32,98,111,120,32,119,104,105,99,104,32,97,114,101,32,97,102,116,101,114,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,110,111,116,32,98,101,32,114,101,97,100,32,98,121,32,116,104,105,115,32,102,117,110,99,116,105,111,110,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,111,108,100,32,74,80,50,32,72,101,97,100,101,114,32,100,97,116,97,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,119,114,105,116,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,102,116,121,112,32,100,97,116,97,10,0,69,114,114,111,114,32,119,104,105,108,101,32,119,114,105,116,105,110,103,32,102,116,121,112,32,100,97,116,97,32,116,111,32,115,116,114,101,97,109,10,0,70,97,105,108,101,100,32,116,111,32,115,101,101,107,32,105,110,32,116,104,101,32,115,116,114,101,97,109,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,106,112,101,103,50,48,48,48,32,102,105,108,101,32,104,101,97,100,101,114,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,115,105,122,101,115,32,104,105,103,104,101,114,32,116,104,97,110,32,50,94,51,50,10,0,98,97,100,32,112,108,97,99,101,100,32,106,112,101,103,32,99,111,100,101,115,116,114,101,97,109,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,111,102,32,117,110,100,101,102,105,110,101,100,32,115,105,122,101,115,10,0,105,110,118,97,108,105,100,32,98,111,120,32,115,105,122,101,32,37,100,32,40,37,120,41,10,0,70,111,117,110,100,32,97,32,109,105,115,112,108,97,99,101,100,32,39,37,99,37,99,37,99,37,99,39,32,98,111,120,32,111,117,116,115,105,100,101,32,106,112,50,104,32,98,111,120,10,0,74,80,69,71,50,48,48,48,32,72,101,97,100,101,114,32,98,111,120,32,110,111,116,32,114,101,97,100,32,121,101,116,44,32,39,37,99,37,99,37,99,37,99,39,32,98,111,120,32,119,105,108,108,32,98,101,32,105,103,110,111,114,101,100,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,115,107,105,112,112,105,110,103,32,74,80,69,71,50,48,48,48,32,98,111,120,44,32,115,116,114,101,97,109,32,101,114,114,111,114,10,0,73,110,118,97,108,105,100,32,98,111,120,32,115,105,122,101,32,37,100,32,102,111,114,32,98,111,120,32,39,37,99,37,99,37,99,37,99,39,46,32,78,101,101,100,32,37,100,32,98,121,116,101,115,44,32,37,100,32,98,121,116,101,115,32,114,101,109,97,105,110,105,110,103,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,106,112,101,103,50,48,48,48,32,98,111,120,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,114,101,97,100,105,110,103,32,74,80,69,71,50,48,48,48,32,98,111,120,44,32,115,116,114,101,97,109,32,101,114,114,111,114,10,0,77,97,108,102,111,114,109,101,100,32,74,80,50,32,102,105,108,101,32,102,111,114,109,97,116,58,32,102,105,114,115,116,32,98,111,120,32,109,117,115,116,32,98,101,32,74,80,69,71,32,50,48,48,48,32,115,105,103,110,97,116,117,114,101,32,98,111,120,10,0,77,97,108,102,111,114,109,101,100,32,74,80,50,32,102,105,108,101,32,102,111,114,109,97,116,58,32,115,101,99,111,110,100,32,98,111,120,32,109,117,115,116,32,98,101,32,102,105,108,101,32,116,121,112,101,32,98,111,120,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,100,97,116,97,32,102,111,114,32,67,68,69,70,32,98,111,120,46,10,0,78,117,109,98,101,114,32,111,102,32,99,104,97,110,110,101,108,32,100,101,115,99,114,105,112,116,105,111,110,32,105,115,32,101,113,117,97,108,32,116,111,32,122,101,114,111,32,105,110,32,67,68,69,70,32,98,111,120,46,10,0,78,101,101,100,32,116,111,32,114,101,97,100,32,97,32,80,67,76,82,32,98,111,120,32,98,101,102,111,114,101,32,116,104,101,32,67,77,65,80,32,98,111,120,46,10,0,79,110,108,121,32,111,110,101,32,67,77,65,80,32,98,111,120,32,105,115,32,97,108,108,111,119,101,100,46,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,100,97,116,97,32,102,111,114,32,67,77,65,80,32,98,111,120,46,10,0,73,110,118,97,108,105,100,32,80,67,76,82,32,98,111,120,46,32,82,101,112,111,114,116,115,32,37,100,32,101,110,116,114,105,101,115,10,0,73,110,118,97,108,105,100,32,80,67,76,82,32,98,111,120,46,32,82,101,112,111,114,116,115,32,48,32,112,97,108,101,116,116,101,32,99,111,108,117,109,110,115,10,0,65,32,66,80,67,67,32,104,101,97,100,101,114,32,98,111,120,32,105,115,32,97,118,97,105,108,97,98,108,101,32,97,108,116,104,111,117,103,104,32,66,80,67,32,103,105,118,101,110,32,98,121,32,116,104,101,32,73,72,68,82,32,98,111,120,32,40,37,100,41,32,105,110,100,105,99,97,116,101,32,99,111,109,112,111,110,101,110,116,115,32,98,105,116,32,100,101,112,116,104,32,105,115,32,99,111,110,115,116,97,110,116,10,0,66,97,100,32,66,80,67,67,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,65,32,99,111,110,102,111,114,109,105,110,103,32,74,80,50,32,114,101,97,100,101,114,32,115,104,97,108,108,32,105,103,110,111,114,101,32,97,108,108,32,67,111,108,111,117,114,32,83,112,101,99,105,102,105,99,97,116,105,111,110,32,98,111,120,101,115,32,97,102,116,101,114,32,116,104,101,32,102,105,114,115,116,44,32,115,111,32,119,101,32,105,103,110,111,114,101,32,116,104,105,115,32,111,110,101,46,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,58,32,37,100,41,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,67,73,69,76,97,98,44,32,98,97,100,32,115,105,122,101,58,32,37,100,41,10,0,67,79,76,82,32,66,79,88,32,109,101,116,104,32,118,97,108,117,101,32,105,115,32,110,111,116,32,97,32,114,101,103,117,108,97,114,32,118,97,108,117,101,32,40,37,100,41,44,32,115,111,32,119,101,32,119,105,108,108,32,105,103,110,111,114,101,32,116,104,101,32,101,110,116,105,114,101,32,67,111,108,111,117,114,32,83,112,101,99,105,102,105,99,97,116,105,111,110,32,98,111,120,46,32,10,0,66,97,100,32,105,109,97,103,101,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,105,109,97,103,101,32,104,101,97,100,101,114,32,40,105,104,100,114,41,10,0,74,80,50,32,73,72,68,82,32,98,111,120,58,32,99,111,109,112,114,101,115,115,105,111,110,32,116,121,112,101,32,105,110,100,105,99,97,116,101,32,116,104,97,116,32,116,104,101,32,102,105,108,101,32,105,115,32,110,111,116,32,97,32,99,111,110,102,111,114,109,105,110,103,32,74,80,50,32,102,105,108,101,32,40,37,100,41,32,10,0,84,104,101,32,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,102,105,114,115,116,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,111,102,32,108,101,115,115,32,116,104,97,110,32,56,32,98,121,116,101,115,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,88,76,32,98,111,120,32,111,102,32,108,101,115,115,32,116,104,97,110,32,49,54,32,98,121,116,101,115,10,0,66,111,120,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,58,32,98,111,120,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,58,32,110,111,32,39,105,104,100,114,39,32,98,111,120,46,10,0,84,104,101,32,102,116,121,112,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,115,101,99,111,110,100,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,69,114,114,111,114,32,119,105,116,104,32,70,84,89,80,32,115,105,103,110,97,116,117,114,101,32,66,111,120,32,115,105,122,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,119,105,116,104,32,70,84,89,80,32,66,111,120,10,0,84,104,101,32,115,105,103,110,97,116,117,114,101,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,102,105,114,115,116,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,69,114,114,111,114,32,119,105,116,104,32,74,80,32,115,105,103,110,97,116,117,114,101,32,66,111,120,32,115,105,122,101,10,0,69,114,114,111,114,32,119,105,116,104,32,74,80,32,83,105,103,110,97,116,117,114,101,32,58,32,98,97,100,32,109,97,103,105,99,32,110,117,109,98,101,114,10,0,111,112,106,95,106,112,50,95,97,112,112,108,121,95,99,100,101,102,58,32,99,110,61,37,100,44,32,110,117,109,99,111,109,112,115,61,37,100,10,0,111,112,106,95,106,112,50,95,97,112,112,108,121,95,99,100,101,102,58,32,97,99,110,61,37,100,44,32,110,117,109,99,111,109,112,115,61,37,100,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,105,110,100,101,120,32,37,100,32,40,62,61,32,37,100,41,46,10,0,73,110,99,111,109,112,108,101,116,101,32,99,104,97,110,110,101,108,32,100,101,102,105,110,105,116,105,111,110,115,46,10,0,85,110,101,120,112,101,99,116,101,100,32,79,79,77,46,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,47,112,97,108,101,116,116,101,32,105,110,100,101,120,32,102,111,114,32,100,105,114,101,99,116,32,109,97,112,112,105,110,103,32,37,100,46,10,0,67,111,109,112,111,110,101,110,116,32,37,100,32,105,115,32,109,97,112,112,101,100,32,116,119,105,99,101,46,10,0,68,105,114,101,99,116,32,117,115,101,32,97,116,32,35,37,100,32,104,111,119,101,118,101,114,32,112,99,111,108,61,37,100,46,10,0,67,111,109,112,111,110,101,110,116,32,37,100,32,100,111,101,115,110,39,116,32,104,97,118,101,32,97,32,109,97,112,112,105,110,103,46,10,0,67,111,109,112,111,110,101,110,116,32,109,97,112,112,105,110,103,32,115,101,101,109,115,32,119,114,111,110,103,46,32,84,114,121,105,110,103,32,116,111,32,99,111,114,114,101,99,116,46,10,0,84,105,108,101,115,32,100,111,110,39,116,32,97,108,108,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,100,105,109,101,110,115,105,111,110,46,32,83,107,105,112,32,116,104,101,32,77,67,84,32,115,116,101,112,46,10,0,78,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,40,37,100,41,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,97,32,77,67,84,46,32,83,107,105,112,32,116,104,101,32,77,67,84,32,115,116,101,112,46,10,0,116,105,108,101,115,32,114,101,113,117,105,114,101,32,97,116,32,108,101,97,115,116,32,111,110,101,32,114,101,115,111,108,117,116,105,111,110,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,105,108,101,32,100,97,116,97,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,105,108,101,32,114,101,115,111,108,117,116,105,111,110,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,98,97,110,100,32,112,114,101,99,105,110,116,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,99,117,114,114,101,110,116,32,112,114,101,99,105,110,99,116,32,99,111,100,101,98,108,111,99,107,32,101,108,101,109,101,110,116,10,0,78,111,32,105,110,99,108,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,32,105,109,115,98,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,97,103,45,116,114,101,101,10,0,116,103,116,95,99,114,101,97,116,101,32,116,114,101,101,45,62,110,117,109,110,111,100,101,115,32,61,61,32,48,44,32,110,111,32,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,97,103,45,116,114,101,101,32,110,111,100,101,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,105,110,105,116,105,97,108,105,122,101,32,116,104,101,32,116,97,103,32,116,114,101,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,97,32,110,101,119,32,118,97,108,105,100,97,116,105,111,110,32,112,114,111,99,101,100,117,114,101,10,0,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240),allocate([7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,3,3,6,3,6,6,8,3,6,6,8,6,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,9,10,12,13,10,10,13,13,12,13,12,13,13,13,13,13,9,10,12,11,10,9,13,12,12,11,12,11,13,12,13,12,9,10,12,11,10,10,11,11,12,13,9,10,13,13,10,10,9,10,12,13,10,9,11,12,12,11,9,10,13,12,10,9,9,10,12,13,10,9,11,12,12,13,12,13,11,12,11,12,9,10,12,11,10,10,11,11,12,11,12,11,11,11,11,11,9,10,12,11,10,9,13,12,12,13,9,10,11,12,10,9,9,10,12,13,10,10,13,13,12,11,9,10,11,11,10,10,9,10,12,13,10,10,13,13,12,11,9,10,11,11,10,10,9,10,12,11,10,9,13,12,12,13,9,10,11,12,10,9,9,10,12,11,10,10,11,11,12,11,12,11,11,11,11,11,9,10,12,13,10,9,11,12,12,13,12,13,11,12,11,12,9,10,12,13,10,9,11,12,12,11,9,10,13,12,10,9,9,10,12,11,10,10,11,11,12,13,9,10,13,13,10,10,9,10,12,11,10,9,13,12,12,11,12,11,13,12,13,12,9,10,12,13,10,10,13,13,12,13,12,13,13,13,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,1,0,0,0,0,0,0,1,0,0,1,1,1,1,1,1,1,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,1,1,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,0,0,1,1,0,0,1,1,1,0,0,1,0,0,1,1,0,0,1,1,0,1,1,1,1,1,0,0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,114,101,97,100,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,109,97,120,32,40,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,114,101,97,100,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,99,117,114,114,101,110,116,32,115,105,122,101,32,40,37,100,32,62,32,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,115,107,105,112,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,109,97,120,32,40,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,32,102,111,114,32,101,120,112,101,99,116,101,100,32,83,79,80,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,83,79,80,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,32,102,111,114,32,101,120,112,101,99,116,101,100,32,69,80,72,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,69,80,72,32,109,97,114,107,101,114,10,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,114,119,97],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480),allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+25118);var tempDoublePtr=Runtime.alignMemory(allocate(12,"i8",ALLOC_STATIC),8);function copyTempFloat(e){HEAP8[tempDoublePtr]=HEAP8[e],HEAP8[tempDoublePtr+1]=HEAP8[e+1],HEAP8[tempDoublePtr+2]=HEAP8[e+2],HEAP8[tempDoublePtr+3]=HEAP8[e+3]}function copyTempDouble(e){HEAP8[tempDoublePtr]=HEAP8[e],HEAP8[tempDoublePtr+1]=HEAP8[e+1],HEAP8[tempDoublePtr+2]=HEAP8[e+2],HEAP8[tempDoublePtr+3]=HEAP8[e+3],HEAP8[tempDoublePtr+4]=HEAP8[e+4],HEAP8[tempDoublePtr+5]=HEAP8[e+5],HEAP8[tempDoublePtr+6]=HEAP8[e+6],HEAP8[tempDoublePtr+7]=HEAP8[e+7]}assert(tempDoublePtr%8==0),Module._i64Subtract=_i64Subtract;var _floorf=Math_floor;Module._bitshift64Ashr=_bitshift64Ashr;var _SItoF=!0;Module._memset=_memset;var _BDtoILow=!0,_ceilf=Math_ceil;function _abort(){Module.abort()}function ___lock(){}function ___unlock(){}Module._bitshift64Shl=_bitshift64Shl,Module._i64Add=_i64Add;var _floor=Math_floor,_sqrt=Math_sqrt,PATH=void 0;function _emscripten_set_main_loop_timing(e,i){if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=i,!Browser.mainLoop.func)return 1;if(0==e)Browser.mainLoop.scheduler=function(){setTimeout(Browser.mainLoop.runner,i)},Browser.mainLoop.method="timeout";else if(1==e)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(2==e){if(!window.setImmediate){var r=[],f="__emcc";window.addEventListener("message",(function(e){e.source===window&&e.data===f&&(e.stopPropagation(),r.shift()())}),!0),window.setImmediate=function(e){r.push(e),window.postMessage(f,"*")}}Browser.mainLoop.scheduler=function(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(e,i,r,f,n){Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=f;var t=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var i=Date.now(),r=Browser.mainLoop.queue.shift();if(r.func(r.arg),Browser.mainLoop.remainingBlockers){var n=Browser.mainLoop.remainingBlockers,a=n%1==0?n-1:Math.floor(n);r.counted?Browser.mainLoop.remainingBlockers=a:(a+=.5,Browser.mainLoop.remainingBlockers=(8*n+a)/9)}return console.log('main loop blocker "'+r.name+'" took '+(Date.now()-i)+" ms"),Browser.mainLoop.updateStatus(),void setTimeout(Browser.mainLoop.runner,0)}t<Browser.mainLoop.currentlyRunningMainloop||(Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0,1==Browser.mainLoop.timingMode&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0?Browser.mainLoop.scheduler():("timeout"===Browser.mainLoop.method&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter((function(){void 0!==f?Runtime.dynCall("vi",e,[f]):Runtime.dynCall("v",e)})),t<Browser.mainLoop.currentlyRunningMainloop||("object"==typeof SDL&&SDL.audio&&SDL.audio.queueNewAudioData&&SDL.audio.queueNewAudioData(),Browser.mainLoop.scheduler())))}},n||(i&&i>0?_emscripten_set_main_loop_timing(0,1e3/i):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),r)throw"SimulateInfiniteLoop"}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,i=Browser.mainLoop.timingValue,r=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(r,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,i),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",i=Browser.mainLoop.remainingBlockers,r=Browser.mainLoop.expectedBlockers;i?i<r?Module.setStatus(e+" ("+(r-i)+"/"+r+")"):Module.setStatus(e):Module.setStatus("")}},runIter:function(e){if(!ABORT){if(Module.preMainLoop)if(!1===Module.preMainLoop())return;try{e()}catch(e){if(e instanceof ExitStatus)return;throw e&&"object"==typeof e&&e.stack&&Module.printErr("exception thrown: "+[e,e.stack]),e}Module.postMainLoop&&Module.postMainLoop()}}},isFullScreen:!1,pointerLock:!1,moduleContextCreatedCallbacks:[],workers:[],init:function(){if(Module.preloadPlugins||(Module.preloadPlugins=[]),!Browser.initted){Browser.initted=!0;try{new Blob,Browser.hasBlobConstructor=!0}catch(e){Browser.hasBlobConstructor=!1,console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Browser.BlobBuilder="undefined"!=typeof MozBlobBuilder?MozBlobBuilder:"undefined"!=typeof WebKitBlobBuilder?WebKitBlobBuilder:Browser.hasBlobConstructor?null:console.log("warning: no BlobBuilder"),Browser.URLObject="undefined"!=typeof window?window.URL?window.URL:window.webkitURL:void 0,Module.noImageDecoding||void 0!==Browser.URLObject||(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),Module.noImageDecoding=!0);var e={canHandle:function(e){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(e)},handle:function(e,i,r,f){var n=null;if(Browser.hasBlobConstructor)try{(n=new Blob([e],{type:Browser.getMimetype(i)})).size!==e.length&&(n=new Blob([new Uint8Array(e).buffer],{type:Browser.getMimetype(i)}))}catch(e){Runtime.warnOnce("Blob constructor present but fails: "+e+"; falling back to blob builder")}if(!n){var t=new Browser.BlobBuilder;t.append(new Uint8Array(e).buffer),n=t.getBlob()}var a=Browser.URLObject.createObjectURL(n),s=new Image;s.onload=function(){assert(s.complete,"Image "+i+" could not be decoded");var f=document.createElement("canvas");f.width=s.width,f.height=s.height,f.getContext("2d").drawImage(s,0,0),Module.preloadedImages[i]=f,Browser.URLObject.revokeObjectURL(a),r&&r(e)},s.onerror=function(e){console.log("Image "+a+" could not be decoded"),f&&f()},s.src=a}};Module.preloadPlugins.push(e);var i={canHandle:function(e){return!Module.noAudioDecoding&&e.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(e,i,r,f){var n=!1;function t(f){n||(n=!0,Module.preloadedAudios[i]=f,r&&r(e))}function a(){n||(n=!0,Module.preloadedAudios[i]=new Audio,f&&f())}if(!Browser.hasBlobConstructor)return a();try{var s=new Blob([e],{type:Browser.getMimetype(i)})}catch(e){return a()}var l=Browser.URLObject.createObjectURL(s),o=new Audio;o.addEventListener("canplaythrough",(function(){t(o)}),!1),o.onerror=function(r){n||(console.log("warning: browser could not fully decode audio "+i+", trying slower base64 approach"),o.src="data:audio/x-"+i.substr(-3)+";base64,"+function(e){for(var i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="",f=0,n=0,t=0;t<e.length;t++)for(f=f<<8|e[t],n+=8;n>=6;){var a=f>>n-6&63;n-=6,r+=i[a]}return 2==n?(r+=i[(3&f)<<4],r+="=="):4==n&&(r+=i[(15&f)<<2],r+="="),r}(e),t(o))},o.src=l,Browser.safeSetTimeout((function(){t(o)}),1e4)}};Module.preloadPlugins.push(i);var r=Module.canvas;r&&(r.requestPointerLock=r.requestPointerLock||r.mozRequestPointerLock||r.webkitRequestPointerLock||r.msRequestPointerLock||function(){},r.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},r.exitPointerLock=r.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",f,!1),document.addEventListener("mozpointerlockchange",f,!1),document.addEventListener("webkitpointerlockchange",f,!1),document.addEventListener("mspointerlockchange",f,!1),Module.elementPointerLock&&r.addEventListener("click",(function(e){!Browser.pointerLock&&r.requestPointerLock&&(r.requestPointerLock(),e.preventDefault())}),!1))}function f(){Browser.pointerLock=document.pointerLockElement===r||document.mozPointerLockElement===r||document.webkitPointerLockElement===r||document.msPointerLockElement===r}},createContext:function(e,i,r,f){if(i&&Module.ctx&&e==Module.canvas)return Module.ctx;var n,t;if(i){var a={antialias:!1,alpha:!1};if(f)for(var s in f)a[s]=f[s];(t=GL.createContext(e,a))&&(n=GL.getContext(t).GLctx),e.style.backgroundColor="black"}else n=e.getContext("2d");return n?(r&&(i||assert("undefined"==typeof GLctx,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=n,i&&GL.makeContextCurrent(t),Module.useWebGL=i,Browser.moduleContextCreatedCallbacks.forEach((function(e){e()})),Browser.init()),n):null},destroyContext:function(e,i,r){},fullScreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullScreen:function(e,i,r){Browser.lockPointer=e,Browser.resizeCanvas=i,Browser.vrDevice=r,void 0===Browser.lockPointer&&(Browser.lockPointer=!0),void 0===Browser.resizeCanvas&&(Browser.resizeCanvas=!1),void 0===Browser.vrDevice&&(Browser.vrDevice=null);var f=Module.canvas;function n(){Browser.isFullScreen=!1;var e=f.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===e?(f.cancelFullScreen=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen||function(){},f.cancelFullScreen=f.cancelFullScreen.bind(document),Browser.lockPointer&&f.requestPointerLock(),Browser.isFullScreen=!0,Browser.resizeCanvas&&Browser.setFullScreenCanvasSize()):(e.parentNode.insertBefore(f,e),e.parentNode.removeChild(e),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullScreen),Browser.updateCanvasDimensions(f)}Browser.fullScreenHandlersInstalled||(Browser.fullScreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",n,!1),document.addEventListener("mozfullscreenchange",n,!1),document.addEventListener("webkitfullscreenchange",n,!1),document.addEventListener("MSFullscreenChange",n,!1));var t=document.createElement("div");f.parentNode.insertBefore(t,f),t.appendChild(f),t.requestFullScreen=t.requestFullScreen||t.mozRequestFullScreen||t.msRequestFullscreen||(t.webkitRequestFullScreen?function(){t.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),r?t.requestFullScreen({vrDisplay:r}):t.requestFullScreen()},nextRAF:0,fakeRequestAnimationFrame:function(e){var i=Date.now();if(0===Browser.nextRAF)Browser.nextRAF=i+1e3/60;else for(;i+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var r=Math.max(Browser.nextRAF-i,0);setTimeout(e,r)},requestAnimationFrame:function(e){"undefined"==typeof window?Browser.fakeRequestAnimationFrame(e):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(e))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach((function(e){e()}))}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame((function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))}))},safeSetTimeout:function(e,i){return Module.noExitRuntime=!0,setTimeout((function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))}),i)},safeSetInterval:function(e,i){return Module.noExitRuntime=!0,setInterval((function(){ABORT||Browser.allowAsyncCallbacks&&e()}),i)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var i=0;switch(e.type){case"DOMMouseScroll":i=e.detail;break;case"mousewheel":i=e.wheelDelta;break;case"wheel":i=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return i},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)"mousemove"!=e.type&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),"undefined"!=typeof SDL?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var i=Module.canvas.getBoundingClientRect(),r=Module.canvas.width,f=Module.canvas.height,n=void 0!==window.scrollX?window.scrollX:window.pageXOffset,t=void 0!==window.scrollY?window.scrollY:window.pageYOffset;if("touchstart"===e.type||"touchend"===e.type||"touchmove"===e.type){var a=e.touch;if(void 0===a)return;var s=a.pageX-(n+i.left),l=a.pageY-(t+i.top),o={x:s*=r/i.width,y:l*=f/i.height};if("touchstart"===e.type)Browser.lastTouches[a.identifier]=o,Browser.touches[a.identifier]=o;else if("touchend"===e.type||"touchmove"===e.type){var u=Browser.touches[a.identifier];u||(u=o),Browser.lastTouches[a.identifier]=u,Browser.touches[a.identifier]=o}return}var c=e.pageX-(n+i.left),h=e.pageY-(t+i.top);c*=r/i.width,h*=f/i.height,Browser.mouseMovementX=c-Browser.mouseX,Browser.mouseMovementY=h-Browser.mouseY,Browser.mouseX=c,Browser.mouseY=h}},xhrLoad:function(e,i,r){var f=new XMLHttpRequest;f.open("GET",e,!0),f.responseType="arraybuffer",f.onload=function(){200==f.status||0==f.status&&f.response?i(f.response):r()},f.onerror=r,f.send(null)},asyncLoad:function(e,i,r,f){Browser.xhrLoad(e,(function(r){assert(r,'Loading data file "'+e+'" failed (no arrayBuffer).'),i(new Uint8Array(r)),f||removeRunDependency("al "+e)}),(function(i){if(!r)throw'Loading data file "'+e+'" failed.';r()})),f||addRunDependency("al "+e)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach((function(i){i(e.width,e.height)}))},setCanvasSize:function(e,i,r){var f=Module.canvas;Browser.updateCanvasDimensions(f,e,i),r||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e|=8388608,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e&=-8388609,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,i,r){i&&r?(e.widthNative=i,e.heightNative=r):(i=e.widthNative,r=e.heightNative);var f=i,n=r;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(f/n<Module.forcedAspectRatio?f=Math.round(n*Module.forcedAspectRatio):n=Math.round(f/Module.forcedAspectRatio)),(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===e.parentNode&&"undefined"!=typeof screen){var t=Math.min(screen.width/f,screen.height/n);f=Math.round(f*t),n=Math.round(n*t)}Browser.resizeCanvas?(e.width!=f&&(e.width=f),e.height!=n&&(e.height=n),void 0!==e.style&&(e.style.removeProperty("width"),e.style.removeProperty("height"))):(e.width!=i&&(e.width=i),e.height!=r&&(e.height=r),void 0!==e.style&&(f!=i||n!=r?(e.style.setProperty("width",f+"px","important"),e.style.setProperty("height",n+"px","important")):(e.style.removeProperty("width"),e.style.removeProperty("height"))))},wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:function(){var e=Browser.nextWgetRequestHandle;return Browser.nextWgetRequestHandle++,e}},SYSCALLS={varargs:0,get:function(e){return SYSCALLS.varargs+=4,HEAP32[SYSCALLS.varargs-4>>2]},getStr:function(){return Pointer_stringify(SYSCALLS.get())},get64:function(){var e=SYSCALLS.get(),i=SYSCALLS.get();return assert(e>=0?0===i:-1===i),e},getZero:function(){assert(0===SYSCALLS.get())}};function ___syscall54(e,i){SYSCALLS.varargs=i;try{return 0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___setErrNo(e){return Module.___errno_location&&(HEAP32[Module.___errno_location()>>2]=e),e}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _sysconf(e){switch(e){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator&&navigator.hardwareConcurrency||1}return ___setErrNo(ERRNO_CODES.EINVAL),-1}Module._bitshift64Lshr=_bitshift64Lshr;var _BDtoIHigh=!0;function _pthread_cleanup_push(e,i){__ATEXIT__.push((function(){Runtime.dynCall("vi",e,[i])})),_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!"),__ATEXIT__.pop(),_pthread_cleanup_push.level=__ATEXIT__.length}function ___syscall5(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStr(),f=SYSCALLS.get(),n=SYSCALLS.get();return FS.open(r,f,n).fd}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function _emscripten_memcpy_big(e,i,r){return HEAPU8.set(HEAPU8.subarray(i,i+r),e),e}function ___syscall6(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD();return FS.close(r),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}Module._memcpy=_memcpy;var _llvm_pow_f64=Math_pow;function _sbrk(e){var i=_sbrk;i.called||(DYNAMICTOP=alignMemoryPage(DYNAMICTOP),i.called=!0,assert(Runtime.dynamicAlloc),i.alloc=Runtime.dynamicAlloc,Runtime.dynamicAlloc=function(){abort("cannot dynamically allocate, sbrk now has control")});var r=DYNAMICTOP;if(0!=e&&!i.alloc(e))return-1>>>0;return r}var _BItoD=!0;function _time(e){var i=Date.now()/1e3|0;return e&&(HEAP32[e>>2]=i),i}function _pthread_self(){return 0}function ___syscall140(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD(),f=SYSCALLS.get(),n=SYSCALLS.get(),t=SYSCALLS.get(),a=SYSCALLS.get(),s=n;return assert(0===f),FS.llseek(r,s,a),HEAP32[t>>2]=r.position,r.getdents&&0===s&&0===a&&(r.getdents=null),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall146(e,i){SYSCALLS.varargs=i;try{SYSCALLS.get();var r=SYSCALLS.get(),f=SYSCALLS.get(),n=0;___syscall146.buffer||(___syscall146.buffer=[]);for(var t=___syscall146.buffer,a=0;a<f;a++){for(var s=HEAP32[r+8*a>>2],l=HEAP32[r+(8*a+4)>>2],o=0;o<l;o++){var u=HEAPU8[s+o];0===u||10===u?(Module.print(UTF8ArrayToString(t,0)),t.length=0):t.push(u)}n+=l}return n}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall221(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD();switch(SYSCALLS.get()){case 0:return(f=SYSCALLS.get())<0?-ERRNO_CODES.EINVAL:FS.open(r.path,r.flags,0,f).fd;case 1:case 2:return 0;case 3:return r.flags;case 4:var f=SYSCALLS.get();return r.flags|=f,0;case 12:case 12:f=SYSCALLS.get();return HEAP16[f+0>>1]=2,0;case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:return ___setErrNo(ERRNO_CODES.EINVAL),-1;default:return-ERRNO_CODES.EINVAL}}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall145(e,i){SYSCALLS.varargs=i;try{var r=SYSCALLS.getStreamFromFD(),f=SYSCALLS.get(),n=SYSCALLS.get();return SYSCALLS.doReadv(r,f,n)}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}Module.requestFullScreen=function(e,i,r){Browser.requestFullScreen(e,i,r)},Module.requestAnimationFrame=function(e){Browser.requestAnimationFrame(e)},Module.setCanvasSize=function(e,i,r){Browser.setCanvasSize(e,i,r)},Module.pauseMainLoop=function(){Browser.mainLoop.pause()},Module.resumeMainLoop=function(){Browser.mainLoop.resume()},Module.getUserMedia=function(){Browser.getUserMedia()},Module.createContext=function(e,i,r,f){return Browser.createContext(e,i,r,f)},STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP),staticSealed=!0,STACK_MAX=STACK_BASE+TOTAL_STACK,DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX),assert(DYNAMIC_BASE<TOTAL_MEMORY,"TOTAL_MEMORY not big enough for stack");var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_DYNAMIC);function invoke_iiiiiiii(e,i,r,f,n,t,a,s){try{return Module.dynCall_iiiiiiii(e,i,r,f,n,t,a,s)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiii(e,i,r,f){try{return Module.dynCall_iiii(e,i,r,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_di(e,i){try{return Module.dynCall_di(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_vi(e,i){try{Module.dynCall_vi(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_vii(e,i,r){try{Module.dynCall_vii(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiii(e,i,r,f,n,t,a){try{return Module.dynCall_iiiiiii(e,i,r,f,n,t,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_ii(e,i){try{return Module.dynCall_ii(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viii(e,i,r,f){try{Module.dynCall_viii(e,i,r,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiiiiiiii(e,i,r,f,n,t,a,s,l,o,u,c){try{return Module.dynCall_iiiiiiiiiiii(e,i,r,f,n,t,a,s,l,o,u,c)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiii(e,i,r,f,n){try{return Module.dynCall_iiiii(e,i,r,f,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iii(e,i,r){try{return Module.dynCall_iii(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiii(e,i,r,f,n,t){try{return Module.dynCall_iiiiii(e,i,r,f,n,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiii(e,i,r,f,n){try{Module.dynCall_viiii(e,i,r,f,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}Module.asmGlobalArg={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0},Module.asmLibraryArg={abort:abort,assert:assert,invoke_iiiiiiii:invoke_iiiiiiii,invoke_iiii:invoke_iiii,invoke_di:invoke_di,invoke_vi:invoke_vi,invoke_vii:invoke_vii,invoke_iiiiiii:invoke_iiiiiii,invoke_ii:invoke_ii,invoke_viii:invoke_viii,invoke_iiiiiiiiiiii:invoke_iiiiiiiiiiii,invoke_iiiii:invoke_iiiii,invoke_iii:invoke_iii,invoke_iiiiii:invoke_iiiiii,invoke_viiii:invoke_viiii,_pthread_cleanup_pop:_pthread_cleanup_pop,___syscall221:___syscall221,_llvm_pow_f64:_llvm_pow_f64,_abort:_abort,_pthread_cleanup_push:_pthread_cleanup_push,_ceilf:_ceilf,_emscripten_set_main_loop_timing:_emscripten_set_main_loop_timing,_sbrk:_sbrk,_emscripten_memcpy_big:_emscripten_memcpy_big,_sysconf:_sysconf,___setErrNo:___setErrNo,_floor:_floor,_pthread_self:_pthread_self,_sqrt:_sqrt,_floorf:_floorf,___syscall54:___syscall54,___unlock:___unlock,_emscripten_set_main_loop:_emscripten_set_main_loop,___lock:___lock,___syscall6:___syscall6,___syscall5:___syscall5,_time:_time,___syscall140:___syscall140,___syscall145:___syscall145,___syscall146:___syscall146,STACKTOP:STACKTOP,STACK_MAX:STACK_MAX,tempDoublePtr:tempDoublePtr,ABORT:ABORT,cttz_i8:cttz_i8};var asm=function(e,i,r){"use asm";var f=new e.Int8Array(r);var n=new e.Int16Array(r);var t=new e.Int32Array(r);var a=new e.Uint8Array(r);var s=new e.Uint16Array(r);var l=new e.Uint32Array(r);var o=new e.Float32Array(r);var u=new e.Float64Array(r);var c=i.STACKTOP|0;var h=i.STACK_MAX|0;var d=i.tempDoublePtr|0;var b=i.ABORT|0;var _=i.cttz_i8|0;var k=0;var w=0;var m=0;var v=0;var p=e.NaN,g=e.Infinity;var y=0,M=0,A=0,E=0,S=0.0,T=0,R=0,C=0,P=0.0;var I=0;var O=0;var x=0;var L=0;var B=0;var z=0;var D=0;var N=0;var F=0;var H=0;var U=e.Math.floor;var j=e.Math.abs;var Y=e.Math.sqrt;var q=e.Math.pow;var $=e.Math.cos;var V=e.Math.sin;var X=e.Math.tan;var G=e.Math.acos;var K=e.Math.asin;var W=e.Math.atan;var Z=e.Math.atan2;var J=e.Math.exp;var Q=e.Math.log;var ee=e.Math.ceil;var ie=e.Math.imul;var re=e.Math.min;var fe=e.Math.clz32;var ne=i.abort;var te=i.assert;var ae=i.invoke_iiiiiiii;var se=i.invoke_iiii;var le=i.invoke_di;var oe=i.invoke_vi;var ue=i.invoke_vii;var ce=i.invoke_iiiiiii;var he=i.invoke_ii;var de=i.invoke_viii;var be=i.invoke_iiiiiiiiiiii;var _e=i.invoke_iiiii;var ke=i.invoke_iii;var we=i.invoke_iiiiii;var me=i.invoke_viiii;var ve=i._pthread_cleanup_pop;var pe=i.___syscall221;var ge=i._llvm_pow_f64;var ye=i._abort;var Me=i._pthread_cleanup_push;var Ae=i._ceilf;var Ee=i._emscripten_set_main_loop_timing;var Se=i._sbrk;var Te=i._emscripten_memcpy_big;var Re=i._sysconf;var Ce=i.___setErrNo;var Pe=i._floor;var Ie=i._pthread_self;var Oe=i._sqrt;var xe=i._floorf;var Le=i.___syscall54;var Be=i.___unlock;var ze=i._emscripten_set_main_loop;var De=i.___lock;var Ne=i.___syscall6;var Fe=i.___syscall5;var He=i._time;var Ue=i.___syscall140;var je=i.___syscall145;var Ye=i.___syscall146;var qe=0.0;function $e(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+48|0;n=h+32|0;u=h+28|0;t[n>>2]=r;if((t[e+8>>2]|0)==16)o=(t[e+164>>2]|0)+((t[e+200>>2]|0)*5640|0)|0;else o=t[e+12>>2]|0;a=(t[e+80>>2]|0)+16|0;s=(t[a>>2]|0)>>>0<257?1:2;l=s+1|0;if(l>>>0>r>>>0){jf(f,1,14585,h)|0;f=0;c=h;return f|0}t[n>>2]=r-l;hf(i,u,s);r=t[u>>2]|0;if(r>>>0>=(t[a>>2]|0)>>>0){jf(f,1,14611,h+8|0)|0;f=0;c=h;return f|0}hf(i+s|0,(t[o+5584>>2]|0)+(r*1080|0)|0,1);if(!(wi(e,t[u>>2]|0,i+l|0,n,f)|0)){jf(f,1,14585,h+16|0)|0;f=0;c=h;return f|0}if(!(t[n>>2]|0)){f=1;c=h;return f|0}jf(f,1,14585,h+24|0)|0;f=0;c=h;return f|0}function Ve(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0;o=c;c=c+32|0;l=o+8|0;n=o+20|0;s=t[(t[e+80>>2]|0)+16>>2]|0;a=s>>>0<257?1:2;if((a+2|0)!=(r|0)){jf(f,1,14502,o)|0;l=0;c=o;return l|0}if((t[e+8>>2]|0)==16)e=(t[e+164>>2]|0)+((t[e+200>>2]|0)*5640|0)|0;else e=t[e+12>>2]|0;hf(i,n,a);hf(i+a|0,o+16|0,1);r=t[n>>2]|0;if(r>>>0<s>>>0){hf(i+(a+1)|0,(t[e+5584>>2]|0)+(r*1080|0)+808|0,1);l=1;c=o;return l|0}else{t[l>>2]=r;t[l+4>>2]=s;jf(f,1,14528,l)|0;l=0;c=o;return l|0}return 0}function Xe(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0;s=c;c=c+16|0;n=s+12|0;t[n>>2]=r;if(!(ki(e,0,i,n,f)|0)){jf(f,1,14476,s)|0;a=0;c=s;return a|0}if(t[n>>2]|0){jf(f,1,14476,s+8|0)|0;a=0;c=s;return a|0}if((t[e+8>>2]|0)==16)n=(t[e+164>>2]|0)+((t[e+200>>2]|0)*5640|0)|0;else n=t[e+12>>2]|0;n=t[n+5584>>2]|0;r=e+80|0;if((t[(t[r>>2]|0)+16>>2]|0)>>>0<=1){a=1;c=s;return a|0}f=n+24|0;e=n+804|0;a=n+28|0;i=1;while(1){t[n+1104>>2]=t[f>>2];t[n+1884>>2]=t[e>>2];Dl(n+1108|0,a|0,776)|0;i=i+1|0;if(i>>>0>=(t[(t[r>>2]|0)+16>>2]|0)>>>0){n=1;break}else n=n+1080|0}c=s;return n|0}function Ge(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+48|0;d=b+32|0;h=b+24|0;u=b+16|0;a=b+8|0;n=b;o=b+40|0;s=b+36|0;t[o>>2]=r;l=e+80|0;do{if((t[(t[l>>2]|0)+16>>2]|0)>>>0<257){if(r){hf(i,s,1);a=i+1|0;i=r+-1|0;break}jf(f,1,14129,n)|0;d=0;c=b;return d|0}else{if(r>>>0>=2){hf(i,s,2);a=i+2|0;i=r+-2|0;break}jf(f,1,14129,a)|0;d=0;c=b;return d|0}}while(0);t[o>>2]=i;n=t[s>>2]|0;i=t[(t[l>>2]|0)+16>>2]|0;if(n>>>0>=i>>>0){t[u>>2]=n;t[u+4>>2]=i;jf(f,1,14155,u)|0;d=0;c=b;return d|0}if(!(ki(e,n,a,o,f)|0)){jf(f,1,14129,h)|0;d=0;c=b;return d|0}if(!(t[o>>2]|0)){d=1;c=b;return d|0}jf(f,1,14129,d)|0;d=0;c=b;return d|0}function Ke(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0;v=c;c=c+16|0;s=v+8|0;m=v+12|0;w=t[(t[e+80>>2]|0)+16>>2]|0;k=w>>>0<257?1:2;_=(k<<1)+5|0;a=(r>>>0)/(_>>>0)|0;if((a|0)==0|((r>>>0)%(_>>>0)|0|0)!=0){jf(n,1,14085,v)|0;m=0;c=v;return m|0}if((t[e+8>>2]|0)==16)_=(t[e+164>>2]|0)+((t[e+200>>2]|0)*5640|0)|0;else _=t[e+12>>2]|0;r=_+5636|0;e=f[r>>0]|0;if(!(e&4))b=0;else b=(t[_+420>>2]|0)+1|0;d=b+a|0;if(d>>>0>31){t[s>>2]=d;jf(n,1,14111,s)|0;m=0;c=v;return m|0}f[r>>0]=e|4;if(b>>>0<d>>>0){n=k+1|0;h=_+8|0;s=k+3|0;l=k|4;o=l+k|0;u=o+1|0;e=i;a=b;r=_+424+(b*148|0)|0;while(1){hf(e,r,1);hf(e+1|0,r+4|0,k);i=r+8|0;hf(e+n|0,i,2);p=t[i>>2]|0;b=t[h>>2]|0;t[i>>2]=p>>>0<b>>>0?p:b;hf(e+s|0,r+12|0,1);i=r+16|0;hf(e+l|0,i,k);hf(e+o|0,m,1);t[r+36>>2]=t[m>>2];b=t[i>>2]|0;t[i>>2]=b>>>0<w>>>0?b:w;a=a+1|0;if(a>>>0>=d>>>0)break;else{e=e+u|0;r=r+148|0}}}t[_+420>>2]=d+-1;p=1;c=v;return p|0}function We(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0;N=c;c=c+144|0;D=N+128|0;x=N+120|0;O=N+112|0;P=N+104|0;C=N+96|0;R=N+88|0;S=N+72|0;v=N+64|0;w=N+56|0;k=N+48|0;_=N+40|0;m=N+32|0;u=N+24|0;l=N+16|0;s=N+136|0;y=N+132|0;B=t[e+80>>2]|0;z=e+88|0;if(r>>>0<36){jf(a,1,13440,N)|0;a=0;c=N;return a|0}L=r+-36|0;b=(L>>>0)/3|0;if((L>>>0)%3|0){jf(a,1,13440,N+8|0)|0;a=0;c=N;return a|0}hf(i,s,2);n[z>>1]=t[s>>2];M=B+8|0;hf(i+2|0,M,4);T=B+12|0;hf(i+6|0,T,4);hf(i+10|0,B,4);d=B+4|0;hf(i+14|0,d,4);g=e+100|0;hf(i+18|0,g,4);E=e+104|0;hf(i+22|0,E,4);p=e+92|0;hf(i+26|0,p,4);A=e+96|0;hf(i+30|0,A,4);hf(i+34|0,s,2);o=i+36|0;r=t[s>>2]|0;if(r>>>0>=16385){t[l>>2]=r;jf(a,1,13468,l)|0;a=0;c=N;return a|0}r=r&65535;L=B+16|0;t[L>>2]=r;if((r|0)!=(b|0)){t[u>>2]=r;t[u+4>>2]=b;jf(a,1,13529,u)|0;a=0;c=N;return a|0}u=t[B>>2]|0;h=t[M>>2]|0;if(h>>>0>u>>>0){r=t[d>>2]|0;i=t[T>>2]|0;if(r>>>0<i>>>0){s=t[g>>2]|0;l=t[E>>2]|0;if(!(ie(l,s)|0)){t[_>>2]=s;t[_+4>>2]=l;jf(a,1,13705,_)|0;a=0;c=N;return a|0}m=jl(i|0,0,h|0,0)|0;if(!((m|0)==(ie(i,h)|0)&(I|0)==0)){t[k>>2]=h;t[k+4>>2]=i;jf(a,1,13766,k)|0;a=0;c=N;return a|0}h=t[p>>2]|0;_=Bl(h|0,0,s|0,0)|0;k=I;d=t[A>>2]|0;m=Bl(d|0,0,l|0,0)|0;if(h>>>0<=u>>>0?d>>>0<=r>>>0&(_|0-k)>>>0>u>>>0&(m|0-I)>>>0>r>>>0:0){i=Fn(b,52)|0;b=B+24|0;t[b>>2]=i;if(!i){t[L>>2]=0;jf(a,1,13852,v)|0;a=0;c=N;return a|0}e:do{if(t[L>>2]|0){u=e+168|0;r=0;l=i;while(1){hf(o,y,1);t[l+24>>2]=(t[y>>2]&127)+1;t[l+32>>2]=(t[y>>2]|0)>>>7;hf(o+1|0,y,1);t[l>>2]=t[y>>2];hf(o+2|0,y,1);s=t[y>>2]|0;t[l+4>>2]=s;i=t[l>>2]|0;if((s+-1|0)>>>0>254|(i+-1|0)>>>0>254)break;t[l+36>>2]=0;t[l+40>>2]=t[u>>2];r=r+1|0;if(r>>>0>=(t[L>>2]|0)>>>0)break e;else{o=o+3|0;l=l+52|0}}t[S>>2]=r;t[S+4>>2]=i;t[S+8>>2]=s;jf(a,1,13900,S)|0;a=0;c=N;return a|0}}while(0);h=t[p>>2]|0;u=t[g>>2]|0;o=((t[M>>2]|0)+-1-h+u|0)/(u|0)|0;t[e+112>>2]=o;l=t[A>>2]|0;s=t[E>>2]|0;i=((t[T>>2]|0)+-1-l+s|0)/(s|0)|0;t[e+116>>2]=i;if(!((i|0)==0|(o|0)==0)?o>>>0<=(65535/(i>>>0)|0)>>>0:0){d=ie(o,i)|0;r=e+28|0;if(!(f[e+76>>0]&2)){t[r>>2]=0;t[e+32>>2]=0;t[e+36>>2]=o;t[e+40>>2]=i}else{t[r>>2]=(((t[r>>2]|0)-h|0)>>>0)/(u>>>0)|0;R=e+32|0;t[R>>2]=(((t[R>>2]|0)-l|0)>>>0)/(s>>>0)|0;R=e+36|0;t[R>>2]=((t[R>>2]|0)+-1-h+u|0)/(u|0)|0;R=e+40|0;t[R>>2]=((t[R>>2]|0)+-1-l+s|0)/(s|0)|0}R=Fn(d,5640)|0;o=e+164|0;t[o>>2]=R;if(!R){jf(a,1,13852,C)|0;a=0;c=N;return a|0}C=Fn(t[L>>2]|0,1080)|0;i=e+12|0;t[(t[i>>2]|0)+5584>>2]=C;if(!C){jf(a,1,13852,P)|0;a=0;c=N;return a|0}P=Fn(10,20)|0;r=t[i>>2]|0;t[r+5612>>2]=P;if(!P){jf(a,1,13852,O)|0;a=0;c=N;return a|0}t[r+5620>>2]=10;O=Fn(10,20)|0;r=t[i>>2]|0;t[r+5624>>2]=O;if(!O){jf(a,1,13852,x)|0;a=0;c=N;return a|0}t[r+5632>>2]=10;l=t[L>>2]|0;if(l){s=t[b>>2]|0;r=r+5584|0;i=0;do{if(!(t[s+(i*52|0)+32>>2]|0))t[(t[r>>2]|0)+(i*1080|0)+1076>>2]=1<<(t[s+(i*52|0)+24>>2]|0)+-1;i=i+1|0}while(i>>>0<l>>>0)}e:do{if(d){r=t[o>>2]|0;x=Fn(l,1080)|0;t[r+5584>>2]=x;if(x){i=0;while(1){i=i+1|0;if(i>>>0>=d>>>0)break e;x=Fn(t[L>>2]|0,1080)|0;t[r+11224>>2]=x;if(!x)break;else r=r+5640|0}}jf(a,1,13852,D)|0;a=0;c=N;return a|0}}while(0);t[e+8>>2]=4;Gf(B,z);a=1;c=N;return a|0}t[R>>2]=o;t[R+4>>2]=i;jf(a,1,14002,R)|0;a=0;c=N;return a|0}jf(a,1,13808,w)|0;a=0;c=N;return a|0}}else{i=t[T>>2]|0;r=t[d>>2]|0}t[m>>2]=h-u;t[m+4>>2]=i-r;jf(a,1,13643,m)|0;a=0;c=N;return a|0}function Ze(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0;n=c;c=c+32|0;e=n+12|0;if(r>>>0<2){jf(f,1,13414,n)|0;f=0;c=n;return f|0}hf(i,n+16|0,1);hf(i+1|0,e,1);i=t[e>>2]|0;if(!(((r+-2|0)>>>0)%(((i>>>5&2)+2+(i>>>4&3)|0)>>>0)|0)){f=1;c=n;return f|0}jf(f,1,13414,n+8|0)|0;f=0;c=n;return f|0}function Je(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;e=c;c=c+16|0;if(!r){jf(f,1,13388,e)|0;i=0}else i=1;c=e;return i|0}function Qe(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0;o=c;c=c+32|0;l=o+8|0;s=o+12|0;if(!r){jf(f,1,13362,o)|0;f=0;c=o;return f|0}hf(i,o+16|0,1);n=r+-1|0;if(!n){f=1;c=o;return f|0}else{a=0;e=0}do{i=i+1|0;hf(i,s,1);r=t[s>>2]|0;if(!(r&128))e=0;else e=(r&127|e)<<7;a=a+1|0}while((a|0)!=(n|0));if(!e){f=1;c=o;return f|0}jf(f,1,13362,l)|0;f=0;c=o;return f|0}function ei(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0;_=c;c=c+48|0;b=_+32|0;u=_+24|0;s=_+16|0;a=_+8|0;d=_+36|0;if(r>>>0<2){jf(n,1,13276,_)|0;b=0;c=_;return b|0}h=e+184|0;f[h>>0]=f[h>>0]|1;hf(i,d,1);h=i+1|0;o=r+-1|0;l=e+124|0;r=t[l>>2]|0;do{if(r){a=e+120|0;i=t[d>>2]|0;if((t[a>>2]|0)>>>0<=i>>>0){e=i+1|0;i=jn(r,e<<3)|0;if(i){t[l>>2]=i;r=t[a>>2]|0;xl(i+(r<<3)|0,0,e-r<<3|0)|0;t[a>>2]=e;r=t[l>>2]|0;break}jf(n,1,13302,s)|0;b=0;c=_;return b|0}}else{i=(t[d>>2]|0)+1|0;r=Fn(i,8)|0;t[l>>2]=r;if(r){t[e+120>>2]=i;break}jf(n,1,13302,a)|0;b=0;c=_;return b|0}}while(0);i=t[d>>2]|0;if(t[r+(i<<3)>>2]|0){t[u>>2]=i;jf(n,1,13340,u)|0;b=0;c=_;return b|0}u=Nn(o)|0;r=t[d>>2]|0;i=t[l>>2]|0;t[i+(r<<3)>>2]=u;if(!u){jf(n,1,13302,b)|0;b=0;c=_;return b|0}else{t[i+(r<<3)+4>>2]=o;Dl(t[i+(t[d>>2]<<3)>>2]|0,h|0,o|0)|0;b=1;c=_;return b|0}return 0}function ii(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0;w=c;c=c+48|0;k=w+40|0;b=w+32|0;o=w+24|0;l=w+16|0;_=w+44|0;if(r>>>0<2){jf(n,1,13127,w)|0;k=0;c=w;return k|0}if(f[e+184>>0]&1){jf(n,1,13153,w+8|0)|0;k=0;c=w;return k|0}s=t[e+200>>2]|0;a=t[e+164>>2]|0;d=a+(s*5640|0)+5636|0;f[d>>0]=f[d>>0]|2;hf(i,_,1);d=i+1|0;h=r+-1|0;u=a+(s*5640|0)+5164|0;i=t[u>>2]|0;do{if(i){a=a+(s*5640|0)+5160|0;e=t[_>>2]|0;if((t[a>>2]|0)>>>0<=e>>>0){r=e+1|0;e=jn(i,r<<3)|0;if(e){t[u>>2]=e;i=t[a>>2]|0;xl(e+(i<<3)|0,0,r-i<<3|0)|0;t[a>>2]=r;i=t[u>>2]|0;break}jf(n,1,8775,o)|0;k=0;c=w;return k|0}}else{e=(t[_>>2]|0)+1|0;i=Fn(e,8)|0;t[u>>2]=i;if(i){t[a+(s*5640|0)+5160>>2]=e;break}jf(n,1,8775,l)|0;k=0;c=w;return k|0}}while(0);e=t[_>>2]|0;if(t[i+(e<<3)>>2]|0){t[b>>2]=e;jf(n,1,13254,b)|0;k=0;c=w;return k|0}b=Nn(h)|0;i=t[_>>2]|0;e=t[u>>2]|0;t[e+(i<<3)>>2]=b;if(!b){jf(n,1,8775,k)|0;k=0;c=w;return k|0}else{t[e+(i<<3)+4>>2]=h;Dl(t[e+(t[_>>2]<<3)>>2]|0,d|0,h|0)|0;k=1;c=w;return k|0}return 0}function ri(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;i=c;c=c+16|0;if((t[(t[e+80>>2]|0)+16>>2]<<2|0)==(r|0)){f=1;c=i;return f|0}jf(f,1,13101,i)|0;f=0;c=i;return f|0}function fi(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;return 1}function ni(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;m=c;c=c+48|0;w=m+40|0;k=m+32|0;u=m+24|0;_=m+44|0;if((t[e+8>>2]|0)==16)l=(t[e+164>>2]|0)+((t[e+200>>2]|0)*5640|0)|0;else l=t[e+12>>2]|0;if(r>>>0<2){jf(f,1,12933,m)|0;w=0;c=m;return w|0}hf(i,_,2);if(t[_>>2]|0){jf(f,2,12959,m+8|0)|0;w=1;c=m;return w|0}if(r>>>0<7){jf(f,1,12933,m+16|0)|0;w=0;c=m;return w|0}hf(i+2|0,_,2);d=i+4|0;b=t[_>>2]&255;o=l+5612|0;n=t[o>>2]|0;h=l+5616|0;e=t[h>>2]|0;e:do{if(!e){a=0;s=n}else{a=0;s=n;do{if((t[s+8>>2]|0)==(b|0))break e;s=s+20|0;a=a+1|0}while(a>>>0<e>>>0)}}while(0);if((a|0)==(e|0)){a=l+5620|0;do{if((e|0)==(t[a>>2]|0)){e=e+10|0;t[a>>2]=e;e=jn(n,e*20|0)|0;if(e){t[o>>2]=e;n=t[h>>2]|0;xl(e+(n*20|0)|0,0,((t[a>>2]|0)-n|0)*20|0)|0;n=t[o>>2]|0;e=t[h>>2]|0;break}Yn(t[o>>2]|0);t[o>>2]=0;t[a>>2]=0;t[h>>2]=0;jf(f,1,13019,u)|0;w=0;c=m;return w|0}}while(0);t[h>>2]=e+1;s=n+(e*20|0)|0}a=s+12|0;e=t[a>>2]|0;if(e){Yn(e);t[a>>2]=0}t[s+8>>2]=b;b=t[_>>2]|0;t[s+4>>2]=b>>>8&3;t[s>>2]=b>>>10&3;hf(d,_,2);if(t[_>>2]|0){jf(f,2,13057,k)|0;w=1;c=m;return w|0}e=r+-6|0;n=Nn(e)|0;t[a>>2]=n;if(!n){jf(f,1,12933,w)|0;w=0;c=m;return w|0}else{Dl(n|0,i+6|0,e|0)|0;t[s+16>>2]=e;w=1;c=m;return w|0}return 0}function ti(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0;l=c;c=c+32|0;n=l+16|0;s=l+12|0;e=e+80|0;a=t[(t[e>>2]|0)+16>>2]|0;if((a+2|0)!=(r|0)){jf(f,1,12907,l)|0;s=0;c=l;return s|0}hf(i,n,2);if((t[n>>2]|0)!=(a|0)){jf(f,1,12907,l+8|0)|0;s=0;c=l;return s|0}if(!a){s=1;c=l;return s|0}n=i+2|0;i=0;e=t[(t[e>>2]|0)+24>>2]|0;while(1){hf(n,s,1);t[e+32>>2]=(t[s>>2]|0)>>>7&1;t[e+24>>2]=(t[s>>2]&127)+1;i=i+1|0;if((i|0)==(a|0)){e=1;break}else{n=n+1|0;e=e+52|0}}c=l;return e|0}function ai(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0;B=c;c=c+144|0;L=B+120|0;x=B+112|0;O=B+104|0;I=B+96|0;P=B+88|0;C=B+80|0;R=B+72|0;T=B+64|0;S=B+56|0;E=B+48|0;_=B+40|0;b=B+32|0;h=B+24|0;M=B+136|0;p=B+132|0;g=B+128|0;y=B+124|0;if((t[e+8>>2]|0)==16)k=(t[e+164>>2]|0)+((t[e+200>>2]|0)*5640|0)|0;else k=t[e+12>>2]|0;if(r>>>0<2){jf(n,1,12567,B)|0;L=0;c=B;return L|0}hf(i,M,2);if(t[M>>2]|0){jf(n,2,12593,B+8|0)|0;L=1;c=B;return L|0}if(r>>>0<7){jf(n,1,12567,B+16|0)|0;L=0;c=B;return L|0}hf(i+2|0,p,1);d=i+3|0;u=k+5624|0;a=t[u>>2]|0;A=k+5628|0;e=t[A>>2]|0;e:do{if(!e){l=0;s=a}else{o=t[p>>2]|0;l=0;s=a;do{if((t[s>>2]|0)==(o|0))break e;s=s+20|0;l=l+1|0}while(l>>>0<e>>>0)}}while(0);if((l|0)==(e|0)){s=k+5632|0;do{if((e|0)==(t[s>>2]|0)){e=e+10|0;t[s>>2]=e;e=jn(a,e*20|0)|0;if(e){t[u>>2]=e;a=t[A>>2]|0;xl(e+(a*20|0)|0,0,((t[s>>2]|0)-a|0)*20|0)|0;a=t[u>>2]|0;e=t[A>>2]|0;break}Yn(t[u>>2]|0);t[u>>2]=0;t[s>>2]=0;t[A>>2]=0;jf(n,1,12639,h)|0;L=0;c=B;return L|0}}while(0);s=a+(e*20|0)|0}t[s>>2]=t[p>>2];hf(d,M,2);if(t[M>>2]|0){jf(n,2,12593,b)|0;L=1;c=B;return L|0}hf(i+5|0,g,2);a=t[g>>2]|0;if(a>>>0>1){jf(n,2,12677,_)|0;L=1;c=B;return L|0}e=r+-7|0;e:do{if(a){w=s+4|0;m=s+16|0;v=s+8|0;r=s+12|0;_=k+5612|0;b=k+5616|0;h=i+7|0;d=0;i:while(1){if(e>>>0<3){a=27;break}hf(h,M,1);if((t[M>>2]|0)!=1){a=29;break}hf(h+1|0,y,2);a=e+-3|0;l=t[y>>2]|0;o=(l>>>15)+1|0;l=l&32767;t[w>>2]=l;s=(ie(o,l)|0)+2|0;if(a>>>0<s>>>0){a=31;break}e=h+3|0;u=a-s|0;if(l){a=0;do{hf(e,M,o);if((t[M>>2]|0)!=(a|0)){a=34;break i}e=e+o|0;a=a+1|0}while(a>>>0<(t[w>>2]|0)>>>0)}hf(e,y,2);a=e+2|0;s=t[y>>2]|0;l=(s>>>15)+1|0;s=s&32767;t[y>>2]=s;if((s|0)!=(t[w>>2]|0)){a=37;break}e=(ie(l,s)|0)+3|0;if(u>>>0<e>>>0){a=39;break}e=u-e|0;if(s){s=0;do{hf(a,M,l);if((t[M>>2]|0)!=(s|0)){a=42;break i}a=a+l|0;s=s+1|0}while(s>>>0<(t[w>>2]|0)>>>0)}hf(a,M,3);h=a+3|0;f[m>>0]=((t[M>>2]|0)>>>16^1)&1|f[m>>0]&-2;t[v>>2]=0;t[r>>2]=0;u=t[M>>2]|0;s=u&255;t[p>>2]=s;if(s){l=t[b>>2]|0;if(!l){a=50;break}o=0;a=t[_>>2]|0;while(1){if((t[a+8>>2]|0)==(s|0))break;o=o+1|0;if(o>>>0>=l>>>0){a=50;break i}else a=a+20|0}t[v>>2]=a}s=u>>>8&255;t[p>>2]=s;if(s){l=t[b>>2]|0;if(!l){a=57;break}o=0;a=t[_>>2]|0;while(1){if((t[a+8>>2]|0)==(s|0))break;o=o+1|0;if(o>>>0>=l>>>0){a=57;break i}else a=a+20|0}t[r>>2]=a}d=d+1|0;if(d>>>0>=(t[g>>2]|0)>>>0)break e}if((a|0)==27){jf(n,1,12567,E)|0;L=0;c=B;return L|0}else if((a|0)==29){jf(n,2,12721,S)|0;L=1;c=B;return L|0}else if((a|0)==31){jf(n,1,12567,T)|0;L=0;c=B;return L|0}else if((a|0)==34){jf(n,2,12787,R)|0;L=1;c=B;return L|0}else if((a|0)==37){jf(n,2,12841,C)|0;L=1;c=B;return L|0}else if((a|0)==39){jf(n,1,12567,P)|0;L=0;c=B;return L|0}else if((a|0)==42){jf(n,2,12787,I)|0;L=1;c=B;return L|0}else if((a|0)==50){jf(n,1,12567,O)|0;L=0;c=B;return L|0}else if((a|0)==57){jf(n,1,12567,x)|0;L=0;c=B;return L|0}}}while(0);if(!e){t[A>>2]=(t[A>>2]|0)+1;L=1;c=B;return L|0}else{jf(n,1,12567,L)|0;L=0;c=B;return L|0}return 0}function si(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;m=c;c=c+32|0;w=m+24|0;k=m+20|0;d=e+80|0;n=t[d>>2]|0;if((t[e+8>>2]|0)==16)a=(t[e+164>>2]|0)+((t[e+200>>2]|0)*5640|0)|0;else a=t[e+12>>2]|0;if(!r){jf(f,1,12486,m)|0;w=0;c=m;return w|0}hf(i,k,1);e=t[k>>2]|0;if(e>>>0>1){jf(f,2,12512,m+8|0)|0;w=1;c=m;return w|0}if((e+1|0)!=(r|0)){jf(f,2,12486,m+16|0)|0;w=0;c=m;return w|0}h=a+5584|0;e=t[n+16>>2]|0;if(e){r=0;f=t[h>>2]|0;while(1){t[f+1076>>2]=0;r=r+1|0;if(r>>>0>=e>>>0)break;else f=f+1080|0}}u=a+5604|0;e=t[u>>2]|0;if(e){Yn(e);t[u>>2]=0}if(!(t[k>>2]|0)){w=1;c=m;return w|0}o=a+5624|0;s=a+5628|0;l=0;while(1){i=i+1|0;hf(i,w,1);e=t[d>>2]|0;n=t[o>>2]|0;a=t[s>>2]|0;if(((a|0)!=0?!((a|0)==0?1:(t[n>>2]|0)!=(t[w>>2]|0)):0)?(b=t[n+4>>2]|0,_=e+16|0,(b|0)==(t[_>>2]|0)):0){e=t[n+8>>2]|0;if(e){r=ie(b,b)|0;a=ie(t[1036+(t[e>>2]<<2)>>2]|0,r)|0;if((t[e+16>>2]|0)!=(a|0)){e=0;r=32;break}f=Nn(r<<2)|0;t[u>>2]=f;if(!f){e=0;r=32;break}So[t[1052+(t[e>>2]<<2)>>2]&15](t[e+12>>2]|0,f,r)}e=t[n+12>>2]|0;if(e){r=t[_>>2]|0;a=ie(r,t[1036+(t[e>>2]<<2)>>2]|0)|0;if((t[e+16>>2]|0)!=(a|0)){e=0;r=32;break}a=Nn(r<<2)|0;if(!a){e=0;r=32;break}So[t[1068+(t[e>>2]<<2)>>2]&15](t[e+12>>2]|0,a,r);e=t[_>>2]|0;if(e){r=0;f=a;n=t[h>>2]|0;while(1){t[n+1076>>2]=t[f>>2];r=r+1|0;if((r|0)==(e|0))break;else{f=f+4|0;n=n+1080|0}}}Yn(a)}}l=l+1|0;if(l>>>0>=(t[k>>2]|0)>>>0){e=1;r=32;break}}if((r|0)==32){c=m;return e|0}return 0}function li(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0;a=c;c=c+16|0;n=a;if(!r){c=a;return}f=0;while(1){hf(e,n,2);t[i>>2]=t[n>>2];f=f+1|0;if((f|0)==(r|0))break;else{i=i+4|0;e=e+2|0}}c=a;return}function oi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0;a=c;c=c+16|0;n=a;if(!r){c=a;return}f=0;while(1){hf(e,n,4);t[i>>2]=t[n>>2];f=f+1|0;if((f|0)==(r|0))break;else{i=i+4|0;e=e+4|0}}c=a;return}function ui(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0;a=c;c=c+16|0;n=a;if(!r){c=a;return}f=0;while(1){kf(e,n);t[i>>2]=~~+o[n>>2];f=f+1|0;if((f|0)==(r|0))break;else{i=i+4|0;e=e+4|0}}c=a;return}function ci(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0;a=c;c=c+16|0;n=a;if(!r){c=a;return}f=0;while(1){bf(e,n);t[i>>2]=~~+u[n>>3];f=f+1|0;if((f|0)==(r|0))break;else{i=i+4|0;e=e+8|0}}c=a;return}function hi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0;a=c;c=c+16|0;n=a;if(!r){c=a;return}f=0;while(1){hf(e,n,2);o[i>>2]=+((t[n>>2]|0)>>>0);f=f+1|0;if((f|0)==(r|0))break;else{i=i+4|0;e=e+2|0}}c=a;return}function di(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0;a=c;c=c+16|0;n=a;if(!r){c=a;return}f=0;while(1){hf(e,n,4);o[i>>2]=+((t[n>>2]|0)>>>0);f=f+1|0;if((f|0)==(r|0))break;else{i=i+4|0;e=e+4|0}}c=a;return}function bi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0;a=c;c=c+16|0;n=a;if(!r){c=a;return}f=0;while(1){kf(e,n);t[i>>2]=t[n>>2];f=f+1|0;if((f|0)==(r|0))break;else{i=i+4|0;e=e+4|0}}c=a;return}function _i(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,t=0;t=c;c=c+16|0;n=t;if(!r){c=t;return}f=0;while(1){bf(e,n);o[i>>2]=+u[n>>3];f=f+1|0;if((f|0)==(r|0))break;else{i=i+4|0;e=e+8|0}}c=t;return}function ki(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+32|0;s=d+8|0;o=d+20|0;if((t[e+8>>2]|0)==16)e=(t[e+164>>2]|0)+((t[e+200>>2]|0)*5640|0)|0;else e=t[e+12>>2]|0;h=t[e+5584>>2]|0;e=t[f>>2]|0;if(!e){jf(n,1,14224,d)|0;i=0;c=d;return i|0}t[f>>2]=e+-1;hf(r,o,1);r=r+1|0;a=t[o>>2]&31;l=h+(i*1080|0)+24|0;t[l>>2]=a;t[h+(i*1080|0)+804>>2]=(t[o>>2]|0)>>>5;do{if((a|0)==1){e=1;u=8}else{e=(t[f>>2]|0)>>>((a|0)!=0&1);if(e>>>0>97){t[s>>2]=e;t[s+4>>2]=97;t[s+8>>2]=97;jf(n,2,14260,s)|0;a=t[l>>2]|0}n=(e|0)==0;if(a)if(n){e=0;u=20;break}else{u=8;break}if(!n){a=0;while(1){hf(r,o,1);if(a>>>0<97){t[h+(i*1080|0)+28+(a<<3)>>2]=(t[o>>2]|0)>>>3;t[h+(i*1080|0)+28+(a<<3)+4>>2]=0}a=a+1|0;if((a|0)==(e|0))break;else r=r+1|0}}e=(t[f>>2]|0)-e|0}}while(0);if((u|0)==8){a=0;while(1){hf(r,o,2);if(a>>>0<97){t[h+(i*1080|0)+28+(a<<3)>>2]=(t[o>>2]|0)>>>11;t[h+(i*1080|0)+28+(a<<3)+4>>2]=t[o>>2]&2047}a=a+1|0;if((a|0)==(e|0)){u=20;break}else r=r+2|0}}if((u|0)==20)e=(t[f>>2]|0)-(e<<1)|0;t[f>>2]=e;if((t[l>>2]|0)!=1){i=1;c=d;return i|0}e=h+(i*1080|0)+28|0;r=h+(i*1080|0)+32|0;a=1;do{f=(t[e>>2]|0)-(((a+-1|0)>>>0)/3|0)|0;t[h+(i*1080|0)+28+(a<<3)>>2]=(f|0)>0?f:0;t[h+(i*1080|0)+28+(a<<3)+4>>2]=t[r>>2];a=a+1|0}while((a|0)!=97);e=1;c=d;return e|0}function wi(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0;w=c;c=c+48|0;_=w+40|0;u=w+32|0;o=w+16|0;l=w+8|0;b=w+44|0;s=e+8|0;if((t[s>>2]|0)==16)a=(t[e+164>>2]|0)+((t[e+200>>2]|0)*5640|0)|0;else a=t[e+12>>2]|0;h=t[a+5584>>2]|0;if((t[f>>2]|0)>>>0<5){jf(n,1,14664,w)|0;f=0;c=w;return f|0}d=h+(i*1080|0)+4|0;hf(r,d,1);a=(t[d>>2]|0)+1|0;t[d>>2]=a;if(a>>>0>33){t[l>>2]=a;t[l+4>>2]=33;jf(n,1,14699,l)|0;f=0;c=w;return f|0}if((t[e+168>>2]|0)>>>0>=a>>>0){t[o>>2]=i;jf(n,1,14776,o)|0;t[s>>2]=t[s>>2]|32768;f=0;c=w;return f|0}l=h+(i*1080|0)+8|0;hf(r+1|0,l,1);t[l>>2]=(t[l>>2]|0)+2;e=h+(i*1080|0)+12|0;hf(r+2|0,e,1);o=(t[e>>2]|0)+2|0;t[e>>2]=o;l=t[l>>2]|0;if(l>>>0>10|o>>>0>10|(l+o|0)>>>0>12){jf(n,1,14934,w+24|0)|0;f=0;c=w;return f|0}hf(r+3|0,h+(i*1080|0)+16|0,1);hf(r+4|0,h+(i*1080|0)+20|0,1);s=(t[f>>2]|0)+-5|0;t[f>>2]=s;a=t[d>>2]|0;if(!(t[h+(i*1080|0)>>2]&1)){if(!a){f=1;c=w;return f|0}else a=0;do{t[h+(i*1080|0)+812+(a<<2)>>2]=15;t[h+(i*1080|0)+944+(a<<2)>>2]=15;a=a+1|0}while(a>>>0<(t[d>>2]|0)>>>0);a=1;c=w;return a|0}if(s>>>0<a>>>0){jf(n,1,14664,u)|0;f=0;c=w;return f|0}do{if(!a)a=0;else{e=0;s=r+5|0;while(1){hf(s,b,1);s=s+1|0;a=t[b>>2]|0;if((e|0)!=0?a>>>0<16|(a&15|0)==0:0)break;t[h+(i*1080|0)+812+(e<<2)>>2]=a&15;t[h+(i*1080|0)+944+(e<<2)>>2]=(t[b>>2]|0)>>>4;e=e+1|0;a=t[d>>2]|0;if(e>>>0>=a>>>0){k=22;break}}if((k|0)==22){s=t[f>>2]|0;break}jf(n,1,15002,_)|0;f=0;c=w;return f|0}}while(0);t[f>>2]=s-a;f=1;c=w;return f|0}function mi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if(!r)return;f=0;while(1){cf(i,~~+o[e>>2]>>>0,2);f=f+1|0;if((f|0)==(r|0))break;else{i=i+2|0;e=e+4|0}}return}function vi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if(!r)return;f=0;while(1){cf(i,~~+o[e>>2]>>>0,4);f=f+1|0;if((f|0)==(r|0))break;else{i=i+4|0;e=e+4|0}}return}function pi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if(!r)return;f=0;while(1){_f(i,+o[e>>2]);f=f+1|0;if((f|0)==(r|0))break;else{i=i+4|0;e=e+4|0}}return}function gi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if(!r)return;f=0;while(1){df(i,+o[e>>2]);f=f+1|0;if((f|0)==(r|0))break;else{i=i+8|0;e=e+4|0}}return}function yi(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0;l=c;c=c+16|0;if(!r){r=0;c=l;return r|0}if(!(lt(t[e>>2]|0,i,r,f)|0)){jf(f,1,16303,l)|0;r=0;c=l;return r|0}if(t[e+128>>2]|0){r=1;c=l;return r|0}s=e+108|0;if(!(Ui(r,s,f)|0)){r=0;c=l;return r|0}i=t[e+48>>2]|0;e:do{switch(i|0){case 16:{t[r+20>>2]=1;break}case 17:{t[r+20>>2]=2;break}case 18:{t[r+20>>2]=3;break}case 24:{t[r+20>>2]=4;break}default:{n=r+20|0;if((i|0)==12){t[n>>2]=5;break e}else{t[n>>2]=-1;break e}}}}while(0);a=e+120|0;i=t[a>>2]|0;do{if(i){if(t[i+12>>2]|0){ji(r,s);break}Yn(t[i+4>>2]|0);Yn(t[(t[a>>2]|0)+8>>2]|0);Yn(t[t[a>>2]>>2]|0);i=t[a>>2]|0;n=t[i+12>>2]|0;if(n){Yn(n);i=t[a>>2]|0}Yn(i);t[a>>2]=0}}while(0);if(t[e+116>>2]|0)Yi(r,s,f);i=t[s>>2]|0;if(!i){r=1;c=l;return r|0}t[r+28>>2]=i;t[r+32>>2]=t[e+112>>2];t[s>>2]=0;r=1;c=l;return r|0}function Mi(e,i){e=e|0;i=i|0;$n(t[e>>2]|0,i);f[e+124>>0]=0;t[e+128>>2]=t[i+8248>>2]&1;return}function Ai(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0;y=c;c=c+80|0;g=y+64|0;m=y+56|0;b=y+48|0;w=y+40|0;k=y+32|0;_=y+24|0;if(!((e|0)!=0&(i|0)!=0&(r|0)!=0)){i=0;c=y;return i|0}v=r+16|0;if(((t[v>>2]|0)+-1|0)>>>0>16383){jf(f,1,16352,y)|0;i=0;c=y;return i|0}if(!(Gn(t[e>>2]|0,i,r,f)|0)){i=0;c=y;return i|0}t[e+56>>2]=1785737760;t[e+60>>2]=0;t[e+64>>2]=1;a=Nn(4)|0;s=e+68|0;t[s>>2]=a;if(!a){t[s>>2]=0;jf(f,1,16421,y+8|0)|0;i=0;c=y;return i|0}t[a>>2]=1785737760;u=t[v>>2]|0;t[e+20>>2]=u;u=Nn(u*12|0)|0;a=e+72|0;t[a>>2]=u;if(!u){t[a>>2]=0;jf(f,1,16421,y+16|0)|0;i=0;c=y;return i|0}t[e+16>>2]=(t[r+12>>2]|0)-(t[r+4>>2]|0);t[e+12>>2]=(t[r+8>>2]|0)-(t[r>>2]|0);p=r+24|0;h=t[p>>2]|0;l=t[h+24>>2]|0;o=t[h+32>>2]|0;a=e+24|0;t[a>>2]=l+-1+(o<<7);d=t[v>>2]|0;if(d>>>0>1){s=1;do{if((l|0)!=(t[h+(s*52|0)+24>>2]|0))t[a>>2]=255;s=s+1|0}while(s>>>0<d>>>0)}t[e+28>>2]=7;t[e+32>>2]=0;t[e+36>>2]=0;s=(d|0)==0;if(!s?(t[u+8>>2]=l+-1+(o<<7),d>>>0>1):0){a=1;do{t[u+(a*12|0)+8>>2]=(t[h+(a*52|0)+24>>2]|0)+-1+(t[h+(a*52|0)+32>>2]<<7);a=a+1|0}while(a>>>0<d>>>0)}a=e+40|0;e:do{if(!(t[r+32>>2]|0)){t[a>>2]=1;switch(t[r+20>>2]|0){case 1:{t[e+48>>2]=16;break e}case 2:{t[e+48>>2]=17;break e}case 3:{t[e+48>>2]=18;break e}default:break e}}else{t[a>>2]=2;t[e+48>>2]=0}}while(0);e:do{if(!s){s=0;a=0;l=0;do{r=(n[h+(l*52|0)+48>>1]|0)==0;a=(r&1^1)+a|0;s=r?s:l;l=l+1|0}while(l>>>0<d>>>0);l=s;if((a|0)!=1){if(a>>>0<=1)break;jf(f,2,16717,b)|0;break}switch(t[e+48>>2]|0){case 18:case 16:{s=3;break}case 17:{s=1;break}default:{jf(f,2,16467,_)|0;break e}}if(d>>>0<(s+1|0)>>>0){jf(f,2,16541,k)|0;break}if(l>>>0<s>>>0){jf(f,2,16634,w)|0;break}w=Nn(8)|0;a=e+116|0;t[a>>2]=w;if(!w){jf(f,1,16782,m)|0;i=0;c=y;return i|0}m=Nn((t[v>>2]|0)*6|0)|0;r=t[a>>2]|0;t[r>>2]=m;if(!m){jf(f,1,16782,g)|0;i=0;c=y;return i|0}u=t[v>>2]|0;n[r+4>>1]=u;o=t[r>>2]|0;a=0;do{n[o+(a*6|0)>>1]=a;n[o+(a*6|0)+2>>1]=0;g=a;a=a+1|0;n[o+(g*6|0)+4>>1]=a}while((a|0)!=(s|0));if(s>>>0<u>>>0){l=t[p>>2]|0;do{g=(n[l+(s*52|0)+48>>1]|0)==0;n[o+(s*6|0)>>1]=s;a=o+(s*6|0)+2|0;if(g){n[a>>1]=-1;n[o+(s*6|0)+4>>1]=-1}else{n[a>>1]=1;n[(t[r>>2]|0)+(s*6|0)+4>>1]=0}s=s+1|0}while(s>>>0<u>>>0)}}}while(0);t[e+52>>2]=0;t[e+44>>2]=0;t[e+96>>2]=t[i+18692>>2];i=1;c=y;return i|0}function Ei(e,i,r){e=e|0;i=i|0;r=r|0;return ct(t[e>>2]|0,i,r)|0}function Si(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0;f=e+8|0;if(!(oa(t[f>>2]|0,52,r)|0)){r=0;return r|0}a=t[f>>2]|0;s=ua(a)|0;f=ca(a)|0;if(s){l=0;n=1;while(1){if(!n)n=0;else n=(po[t[f>>2]&63](e,i,r)|0)!=0;l=l+1|0;if((l|0)==(s|0))break;else{f=f+4|0;n=n&1}}ha(a);if(!n){r=0;return r|0}}else ha(a);r=Wn(t[e>>2]|0,i,r)|0;return r|0}function Ti(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0;f=e+8|0;if(!(oa(t[f>>2]|0,53,r)|0)){r=0;return r|0}if(!(ht(t[e>>2]|0,i,r)|0)){r=0;return r|0}l=t[f>>2]|0;a=ua(l)|0;f=ca(l)|0;if(!a)f=1;else{s=0;n=f;f=1;while(1){if(!f)f=0;else f=(po[t[n>>2]&63](e,i,r)|0)!=0;f=f&1;s=s+1|0;if((s|0)==(a|0))break;else n=n+4|0}}ha(l);r=f;return r|0}function Ri(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0;n=e+4|0;if(!(oa(t[n>>2]|0,54,f)|0)){i=0;return i|0}s=t[n>>2]|0;l=ua(s)|0;n=ca(s)|0;if(l){o=0;a=1;while(1){if(!a)a=0;else a=(po[t[n>>2]&63](e,i,f)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{n=n+4|0;a=a&1}}ha(s);if(!a){i=0;return i|0}}else ha(s);n=e+8|0;if(!(oa(t[n>>2]|0,55,f)|0)){i=0;return i|0}if(!(oa(t[n>>2]|0,56,f)|0)){i=0;return i|0}if(!(oa(t[n>>2]|0,57,f)|0)){i=0;return i|0}if((t[e+96>>2]|0)!=0?(oa(t[n>>2]|0,58,f)|0)==0:0){i=0;return i|0}if(!(oa(t[n>>2]|0,59,f)|0)){i=0;return i|0}s=t[n>>2]|0;l=ua(s)|0;n=ca(s)|0;if(l){o=0;a=1;while(1){if(!a)a=0;else a=(po[t[n>>2]&63](e,i,f)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{n=n+4|0;a=a&1}}ha(s);if(!a){i=0;return i|0}}else ha(s);i=dt(t[e>>2]|0,i,r,f)|0;return i|0}function Ci(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0;u=i+8|0;if(!(oa(t[u>>2]|0,52,f)|0)){e=0;return e|0}s=t[i+4>>2]|0;l=ua(s)|0;n=ca(s)|0;if(l){o=0;a=1;while(1){if(!a)a=0;else a=(po[t[n>>2]&63](i,e,f)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{n=n+4|0;a=a&1}}ha(s);if(!a){e=0;return e|0}}else ha(s);s=t[u>>2]|0;l=ua(s)|0;n=ca(s)|0;if(l){o=0;a=1;while(1){if(!a)a=0;else a=(po[t[n>>2]&63](i,e,f)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{n=n+4|0;a=a&1}}ha(s);if(!a){e=0;return e|0}}else ha(s);e=Zn(e,t[i>>2]|0,r,f)|0;return e|0}function Pi(e,i,r,f,n,a,s,l,o,u,c){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;return Qn(t[e>>2]|0,i,r,f,n,a,s,l,o,u,c)|0}function Ii(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;return bt(t[e>>2]|0,i,r,f,n,a)|0}function Oi(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;return et(t[e>>2]|0,i,r,f,n,a)|0}function xi(e){e=e|0;var i=0,r=0,f=0;if(!e)return;Xn(t[e>>2]|0);t[e>>2]=0;i=e+72|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0}i=e+68|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0}i=e+108|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0}f=e+116|0;i=t[f>>2]|0;if(i){r=t[i>>2]|0;if(r){Yn(r);i=t[f>>2]|0;t[i>>2]=0}Yn(i);t[f>>2]=0}f=e+120|0;i=t[f>>2]|0;if(i){r=t[i+12>>2]|0;if(r){Yn(r);i=t[f>>2]|0;t[i+12>>2]=0}r=t[i+4>>2]|0;if(r){Yn(r);i=t[f>>2]|0;t[i+4>>2]=0}r=t[i+8>>2]|0;if(r){Yn(r);i=t[f>>2]|0;t[i+8>>2]=0}r=t[i>>2]|0;if(r){Yn(r);i=t[f>>2]|0;t[i>>2]=0}Yn(i);t[f>>2]=0}i=e+4|0;r=t[i>>2]|0;if(r){la(r);t[i>>2]=0}i=e+8|0;r=t[i>>2]|0;if(r){la(r);t[i>>2]=0}Yn(e);return}function Li(e,i,r,f,n,a,s){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;return it(t[e>>2]|0,i,r,f,n,a,s)|0}function Bi(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0;l=c;c=c+16|0;if(!r){e=0;c=l;return e|0}jf(f,2,16826,l)|0;if(!(ot(t[e>>2]|0,i,r,f,n)|0)){jf(f,1,16303,l+8|0)|0;e=0;c=l;return e|0}s=e+108|0;if(!(Ui(r,s,f)|0)){e=0;c=l;return e|0}n=t[e+48>>2]|0;e:do{switch(n|0){case 16:{t[r+20>>2]=1;break}case 17:{t[r+20>>2]=2;break}case 18:{t[r+20>>2]=3;break}case 24:{t[r+20>>2]=4;break}default:{i=r+20|0;if((n|0)==12){t[i>>2]=5;break e}else{t[i>>2]=-1;break e}}}}while(0);a=e+120|0;i=t[a>>2]|0;do{if(i){if(t[i+12>>2]|0){ji(r,s);break}Yn(t[i+4>>2]|0);Yn(t[(t[a>>2]|0)+8>>2]|0);Yn(t[t[a>>2]>>2]|0);i=t[a>>2]|0;n=t[i+12>>2]|0;if(n){Yn(n);i=t[a>>2]|0}Yn(i);t[a>>2]=0}}while(0);if(t[e+116>>2]|0)Yi(r,s,f);i=t[s>>2]|0;if(!i){e=1;c=l;return e|0}t[r+28>>2]=i;t[r+32>>2]=t[e+112>>2];t[s>>2]=0;e=1;c=l;return e|0}function zi(e){e=e|0;var i=0;i=Fn(1,136)|0;if(!i)return i|0;if(!e){e=Vn()|0;t[i>>2]=e}else{e=rt()|0;t[i>>2]=e}if(!e){xi(i);i=0;return i|0}e=i+108|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;f[e+16>>0]=0;e=sa()|0;t[i+4>>2]=e;if(!e){xi(i);i=0;return i|0}e=sa()|0;t[i+8>>2]=e;if(e)return i|0;xi(i);i=0;return i|0}function Di(e,i,r){e=e|0;i=i|0;r=r|0;ft(t[e>>2]|0,i,r);return}function Ni(e){e=e|0;return st(t[e>>2]|0)|0}function Fi(e){e=e|0;return at(t[e>>2]|0)|0}function Hi(e,i,r){e=e|0;i=i|0;r=r|0;return ut(t[e>>2]|0,i,r)|0}function Ui(e,i,r){e=e|0;i=i|0;r=r|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0;T=c;c=c+80|0;S=T+72|0;E=T+64|0;A=T+56|0;M=T+48|0;y=T+40|0;g=T+32|0;p=T+24|0;m=T+16|0;b=T+8|0;d=T;l=t[i+8>>2]|0;e:do{if(l){w=t[l>>2]|0;k=n[l+4>>1]|0;l=t[e+16>>2]|0;_=t[i+12>>2]|0;if((_|0)!=0?(t[_+12>>2]|0)!=0:0)i=a[_+18>>0]|0;else i=l;h=k<<16>>16==0;i:do{if(!h){u=0;r:while(1){o=u&65535;l=s[w+(o*6|0)>>1]|0;if(l>>>0>=i>>>0){o=15;break}l=n[w+(o*6|0)+4>>1]|0;switch(l<<16>>16){case 0:case-1:break;default:{l=(l&65535)+-1|0;if(l>>>0>=i>>>0){o=18;break r}}}u=u+1<<16>>16;if((u&65535)>=(k&65535))break i}if((o|0)==15){t[d>>2]=l;t[d+4>>2]=i;jf(r,1,19343,d)|0;r=0;c=T;return r|0}else if((o|0)==18){t[b>>2]=l;t[b+4>>2]=i;jf(r,1,19343,b)|0;r=0;c=T;return r|0}}}while(0);if(!i)l=_;else{i:do{if(!h)while(1){i=i+-1|0;l=0;do{if((s[w+((l&65535)*6|0)>>1]|0)==(i|0))break;l=l+1<<16>>16}while((l&65535)<(k&65535));if(l<<16>>16==k<<16>>16)break i;if(!i){l=_;break e}}}while(0);jf(r,1,19380,m)|0;r=0;c=T;return r|0}}else l=t[i+12>>2]|0}while(0);if(!l){r=1;c=T;return r|0}v=t[l+12>>2]|0;if(!v){r=1;c=T;return r|0}_=f[l+18>>0]|0;m=_&255;w=_<<24>>24==0;if(w)l=1;else{u=e+16|0;i=0;h=0;l=1;do{i=s[v+(i<<2)>>1]|0;o=t[u>>2]|0;if(i>>>0>=o>>>0){t[p>>2]=i;t[p+4>>2]=o;jf(r,1,19343,p)|0;l=0}h=h+1<<16>>16;i=h&65535}while(i>>>0<m>>>0)}k=Fn(m,4)|0;if(!k){jf(r,1,19413,g)|0;r=0;c=T;return r|0}if(!w){d=0;b=0;do{o=f[v+(d<<2)+3>>0]|0;u=o&255;do{if((o&255)<(_&255)){h=k+(u<<2)|0;i=f[v+(d<<2)+2>>0]|0;if((t[h>>2]|0)!=0&i<<24>>24==1){t[M>>2]=u;jf(r,1,19486,M)|0;l=0;break}if(i<<24>>24!=0|o<<24>>24==0){t[h>>2]=1;break}else{t[A>>2]=d;t[A+4>>2]=u;jf(r,1,19517,A)|0;l=0;break}}else{t[y>>2]=u;jf(r,1,19430,y)|0;l=0}}while(0);b=b+1<<16>>16;d=b&65535}while(d>>>0<m>>>0);if(!w){i=0;o=0;do{if((t[k+(i<<2)>>2]|0)==0?(f[v+(i<<2)+2>>0]|0)!=0:0){t[E>>2]=i;jf(r,1,19553,E)|0;l=0}o=o+1<<16>>16;i=o&65535}while(i>>>0<m>>>0)}}if(!l){Yn(k);r=0;c=T;return r|0}e:do{if(!((t[e+16>>2]|0)!=1|w)){l=0;i=0;while(1){i=i+1<<16>>16;if(!(t[k+(l<<2)>>2]|0))break;l=i&65535;if(l>>>0>=m>>>0)break e}t[S>>2]=l;jf(r,2,19591,S)|0;if(!w){l=0;i=0;do{f[v+(l<<2)+2>>0]=1;f[v+(l<<2)+3>>0]=i;i=i+1<<16>>16;l=i&65535}while(l>>>0<m>>>0)}}}while(0);Yn(k);r=1;c=T;return r|0}function ji(e,i){e=e|0;i=i|0;var r=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0;y=i+12|0;i=t[y>>2]|0;h=t[i+8>>2]|0;b=t[i+4>>2]|0;k=t[i>>2]|0;w=t[i+12>>2]|0;i=f[i+18>>0]|0;m=e+24|0;v=t[m>>2]|0;p=i&255;g=Nn(p*52|0)|0;if(!g)return;d=i<<24>>24==0;if(!d){u=0;c=0;do{i=n[w+(u<<2)>>1]|0;if(!(f[w+(u<<2)+2>>0]|0)){i=i&65535;r=g+(u*52|0)|0;l=v+(i*52|0)|0;o=r+52|0;do{t[r>>2]=t[l>>2];r=r+4|0;l=l+4|0}while((r|0)<(o|0))}else{i=i&65535;r=g+((a[w+(u<<2)+3>>0]|0)*52|0)|0;l=v+(i*52|0)|0;o=r+52|0;do{t[r>>2]=t[l>>2];r=r+4|0;l=l+4|0}while((r|0)<(o|0))}o=Nn(ie(t[v+(i*52|0)+8>>2]<<2,t[v+(i*52|0)+12>>2]|0)|0)|0;t[g+(u*52|0)+44>>2]=o;if(!o){_=7;break}t[g+(u*52|0)+24>>2]=a[h+u>>0];t[g+(u*52|0)+32>>2]=a[b+u>>0];c=c+1<<16>>16;u=c&65535}while(u>>>0<p>>>0);if((_|0)==7){Yn(g);return}h=(s[(t[y>>2]|0)+16>>1]|0)+-1|0;if(!d){i=0;c=0;do{o=t[v+((s[w+(i<<2)>>1]|0)*52|0)+44>>2]|0;l=a[w+(i<<2)+3>>0]|0;u=ie(t[g+(l*52|0)+12>>2]|0,t[g+(l*52|0)+8>>2]|0)|0;if(!(f[w+(i<<2)+2>>0]|0)){i=t[g+(i*52|0)+44>>2]|0;if(u){r=0;do{t[i+(r<<2)>>2]=t[o+(r<<2)>>2];r=r+1|0}while((r|0)!=(u|0))}}else{i=t[g+(l*52|0)+44>>2]|0;if(u){r=0;do{_=t[o+(r<<2)>>2]|0;t[i+(r<<2)>>2]=t[k+((ie((_|0)<0?0:(_|0)>(h|0)?h:_,p)|0)+l<<2)>>2];r=r+1|0}while((r|0)!=(u|0))}}c=c+1<<16>>16;i=c&65535}while(i>>>0<p>>>0)}}r=e+16|0;l=t[r>>2]|0;if(l){i=0;o=0;do{i=t[v+(i*52|0)+44>>2]|0;if(i)Yn(i);o=o+1<<16>>16;i=o&65535}while(i>>>0<l>>>0)}Yn(v);t[m>>2]=g;t[r>>2]=p;Yn(t[(t[y>>2]|0)+4>>2]|0);Yn(t[(t[y>>2]|0)+8>>2]|0);Yn(t[t[y>>2]>>2]|0);i=t[y>>2]|0;r=t[i+12>>2]|0;if(r){Yn(r);i=t[y>>2]|0}Yn(i);t[y>>2]=0;return}function Yi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0;A=c;c=c+80|0;y=A+8|0;g=A;p=A+16|0;M=i+8|0;f=t[M>>2]|0;i=t[f>>2]|0;v=n[f+4>>1]|0;if(v<<16>>16){m=e+16|0;b=e+24|0;k=1;w=0;while(1){_=n[i+(w*6|0)>>1]|0;d=_&65535;e=t[m>>2]|0;e:do{if(d>>>0<e>>>0){f=n[i+(w*6|0)+4>>1]|0;switch(f<<16>>16){case-1:case 0:{n[(t[b>>2]|0)+(d*52|0)+48>>1]=n[i+(w*6|0)+2>>1]|0;break e}default:{}}o=(f&65535)+65535|0;h=o&65535;o=o&65535;if(o>>>0>=e>>>0){t[y>>2]=o;t[y+4>>2]=e;jf(r,2,19302,y)|0;break}u=i+(w*6|0)+2|0;if((d|0)!=(o|0)?(n[u>>1]|0)==0:0){f=t[b>>2]|0;e=f+(d*52|0)|0;a=p;s=e;l=a+52|0;do{t[a>>2]=t[s>>2];a=a+4|0;s=s+4|0}while((a|0)<(l|0));a=e;s=f+(o*52|0)|0;l=a+52|0;do{t[a>>2]=t[s>>2];a=a+4|0;s=s+4|0}while((a|0)<(l|0));a=(t[b>>2]|0)+(o*52|0)|0;s=p;l=a+52|0;do{t[a>>2]=t[s>>2];a=a+4|0;s=s+4|0}while((a|0)<(l|0));if((w+1&65535)<(v&65535)){a=k;do{f=i+(a*6|0)|0;e=n[f>>1]|0;if(e<<16>>16!=_<<16>>16){if(e<<16>>16==h<<16>>16)n[f>>1]=_}else n[f>>1]=h;a=a+1|0}while((a&65535)<<16>>16!=v<<16>>16)}}n[(t[b>>2]|0)+(d*52|0)+48>>1]=n[u>>1]|0}else{t[g>>2]=d;t[g+4>>2]=e;jf(r,2,19262,g)|0}}while(0);w=w+1|0;if((w&65535)<<16>>16==v<<16>>16)break;else k=k+1|0}i=t[M>>2]|0;f=i;i=t[i>>2]|0}if(!i){y=f;Yn(y);t[M>>2]=0;c=A;return}else{Yn(i);y=t[M>>2]|0;Yn(y);t[M>>2]=0;c=A;return}}function qi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,O=0,x=0,L=0;L=c;c=c+192|0;A=L+152|0;M=L+144|0;y=L+136|0;g=L+128|0;p=L+120|0;C=L+88|0;m=L+80|0;k=L+64|0;_=L+48|0;O=L+40|0;E=L+32|0;P=L+24|0;v=L+16|0;w=L+8|0;d=L+176|0;b=L+168|0;R=L+156|0;f=Fn(1,1024)|0;if(!f){jf(r,1,17098,L)|0;x=0;c=L;return x|0}h=d+4|0;S=R+4|0;T=e+100|0;u=1024;e:while(1){if((Lf(i,d,8,r)|0)!=8)break;while(1){hf(d,R,4);hf(h,S,4);switch(t[R>>2]|0){case 0:{n=Nf(i)|0;o=I;if((o|0)>0|(o|0)==0&n>>>0>4294967287){x=6;break e}t[R>>2]=n+8;l=8;break}case 1:{if((Lf(i,d,8,r)|0)!=8)break e;hf(d,b,4);if(t[b>>2]|0){x=10;break e}hf(h,R,4);l=16;break}default:l=8}a=t[S>>2]|0;if((a|0)==1785737827){x=13;break e}n=t[R>>2]|0;if(!n){x=17;break e}if(n>>>0<l>>>0){x=19;break e}if((a|0)==1783636e3){s=1084;a=l;x=22;break}if((a|0)==1718909296){s=1092;a=l;x=22;break}o=(a|0)==1785737832;i:do{if((a|0)!=1768449138)if((a|0)!=1668246642)if((a|0)!=1651532643)if((a|0)!=1885564018)if((a|0)!=1668112752){s=(a|0)==1667523942?1148:0;n=n-l|0;if((a|0)<1785737832)switch(a|0){case 1667523942:{x=30;break i}default:{}}else switch(a|0){case 1785737832:{x=30;break i}default:{}}a=t[T>>2]|0;if(!(a&1)){x=45;break e}if(!(a&2)){x=47;break e}t[T>>2]=a|2147483647;o=Ff(i,n,0,r)|0;if(!((o|0)==(n|0)&(I|0)==0)){x=50;break e}}else{s=1140;x=28}else{s=1132;x=28}else{s=1124;x=28}else{s=1116;x=28}else{s=1108;x=28}}while(0);if((x|0)==28){n=n-l|0;x=30}if((x|0)==30){x=0;if(o){s=1100;break}t[_>>2]=a>>>24;t[_+4>>2]=a>>>16&255;t[_+8>>2]=a>>>8&255;t[_+12>>2]=a&255;jf(r,2,17282,_)|0;if(t[T>>2]&4)break;o=t[S>>2]|0;t[k>>2]=o>>>24;t[k+4>>2]=o>>>16&255;t[k+8>>2]=o>>>8&255;t[k+12>>2]=o&255;jf(r,2,17333,k)|0;t[T>>2]=t[T>>2]|2147483647;o=Ff(i,n,0,r)|0;if(!((o|0)==(n|0)&(I|0)==0)){x=33;break e}}if((Lf(i,d,8,r)|0)!=8)break e}if((x|0)==22){x=0;n=n-a|0}o=Nf(i)|0;l=I;if(0>(l|0)|0==(l|0)&n>>>0>o>>>0){x=35;break}if(n>>>0>u>>>0){a=jn(f,n)|0;if(!a){x=38;break}else{f=a;a=n}}else a=u;if((Lf(i,f,n,r)|0)!=(n|0)){x=40;break}if(!(Ro[t[s+4>>2]&63](e,f,n,r)|0)){x=43;break}else u=a}switch(x|0){case 6:{jf(r,1,17148,w)|0;break}case 10:{jf(r,1,17148,v)|0;break}case 13:{n=t[T>>2]|0;if(!(n&4)){jf(r,1,17190,P)|0;Yn(f);x=0;c=L;return x|0}else{t[T>>2]=n|8;Yn(f);x=1;c=L;return x|0}}case 17:{jf(r,1,17218,E)|0;Yn(f);x=0;c=L;return x|0}case 19:{t[O>>2]=n;t[O+4>>2]=a;jf(r,1,17256,O)|0;Yn(f);x=0;c=L;return x|0}case 33:{jf(r,1,17399,m)|0;Yn(f);x=0;c=L;return x|0}case 35:{P=t[R>>2]|0;O=t[S>>2]|0;x=Nf(i)|0;t[C>>2]=P;t[C+4>>2]=O>>>24;t[C+8>>2]=O>>>16&255;t[C+12>>2]=O>>>8&255;t[C+16>>2]=O&255;t[C+20>>2]=n;t[C+24>>2]=x;jf(r,1,17449,C)|0;Yn(f);x=0;c=L;return x|0}case 38:{Yn(f);jf(r,1,17525,p)|0;x=0;c=L;return x|0}case 40:{jf(r,1,17567,g)|0;Yn(f);x=0;c=L;return x|0}case 43:{Yn(f);x=0;c=L;return x|0}case 45:{jf(r,1,17616,y)|0;Yn(f);x=0;c=L;return x|0}case 47:{jf(r,1,17686,M)|0;Yn(f);x=0;c=L;return x|0}case 50:{jf(r,1,17399,A)|0;Yn(f);x=0;c=L;return x|0}}Yn(f);x=1;c=L;return x|0}function $i(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0;s=c;c=c+32|0;a=s+24|0;f=Df(i)|0;n=I;e=e+80|0;l=e;l=Il(f|0,n|0,t[l>>2]|0,t[l+4>>2]|0)|0;cf(a,l,4);cf(a+4|0,1785737827,4);if(!(Hf(i,t[e>>2]|0,t[e+4>>2]|0,r)|0)){jf(r,1,17067,s)|0;l=0;c=s;return l|0}if((Bf(i,a,8,r)|0)!=8){jf(r,1,17067,s+8|0)|0;l=0;c=s;return l|0}if(Hf(i,f,n,r)|0){l=1;c=s;return l|0}jf(r,1,17067,s+16|0)|0;l=0;c=s;return l|0}function Vi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0;r=((t[e>>2]|0)!=0?(t[e+104>>2]|t[e+100>>2]|0)==0:0)&(t[e+8>>2]|0)!=0&(t[e+4>>2]|0)!=0&(t[e+64>>2]|0)!=0&(t[e+16>>2]|0)!=0&(t[e+12>>2]|0)!=0&1;f=t[e+20>>2]|0;if(!f){a=r;e=e+40|0;e=t[e>>2]|0;e=e+-1|0;e=e>>>0<2;e=e&1;i=Uf(i)|0;i=i&a;e=i&e;return e|0}n=t[e+72>>2]|0;a=0;do{r=(t[n+(a*12|0)+8>>2]&126)>>>0<38&r;a=a+1|0}while(a>>>0<f>>>0);e=e+40|0;e=t[e>>2]|0;e=e+-1|0;e=e>>>0<2;e=e&1;i=Uf(i)|0;i=i&r;e=i&e;return e|0}function Xi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;e=c;c=c+16|0;f=e;cf(f,12,4);cf(f+4|0,1783636e3,4);cf(f+8|0,218793738,4);r=(Bf(i,f,12,r)|0)==12&1;c=e;return r|0}function Gi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0;u=c;c=c+16|0;o=u+8|0;n=e+64|0;s=(t[n>>2]<<2)+16|0;l=Fn(1,s)|0;if(!l){jf(r,1,16987,u)|0;o=0;c=u;return o|0}cf(l,s,4);cf(l+4|0,1718909296,4);cf(l+8|0,t[e+56>>2]|0,4);cf(l+12|0,t[e+60>>2]|0,4);a=l+16|0;if(t[n>>2]|0){e=e+68|0;f=0;do{cf(a,t[(t[e>>2]|0)+(f<<2)>>2]|0,4);f=f+1|0}while(f>>>0<(t[n>>2]|0)>>>0)}e=(Bf(i,l,s,r)|0)==(s|0);if(!e)jf(r,1,17026,o)|0;Yn(l);o=e&1;c=u;return o|0}function Ki(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0;k=c;c=c+80|0;b=k+16|0;h=k+8|0;o=k;n=k+24|0;u=k+72|0;f=n;a=f+48|0;do{t[f>>2]=0;f=f+4|0}while((f|0)<(a|0));_=(t[e+24>>2]|0)==255;t[n>>2]=2;f=n+12|0;if(_){t[f>>2]=3;t[n+24>>2]=4;f=3}else{t[f>>2]=4;f=2}if(!(t[e+116>>2]|0))_=f;else{t[n+(f*12|0)>>2]=5;_=f+1|0}cf(u+4|0,1785737832,4);s=0;l=n;f=8;while(1){a=l+8|0;w=Co[t[l>>2]&7](e,a)|0;t[l+4>>2]=w;if(!w){d=8;break}f=(t[a>>2]|0)+f|0;s=s+1|0;if((s|0)>=(_|0))break;else l=l+12|0}if((d|0)==8){jf(r,1,16901,o)|0;a=0;while(1){f=t[n+4>>2]|0;if(f)Yn(f);a=a+1|0;if((a|0)>=(_|0)){f=0;break}else n=n+12|0}c=k;return f|0}cf(u,f,4);e:do{if((Bf(i,u,8,r)|0)==8){f=0;a=n;while(1){w=a+8|0;d=Bf(i,t[a+4>>2]|0,t[w>>2]|0,r)|0;if((d|0)!=(t[w>>2]|0))break;f=f+1|0;if((f|0)>=(_|0)){f=1;break e}else a=a+12|0}jf(r,1,16944,b)|0;f=0}else{jf(r,1,16944,h)|0;f=0}}while(0);s=0;while(1){a=t[n+4>>2]|0;if(a)Yn(a);s=s+1|0;if((s|0)>=(_|0))break;else n=n+12|0}c=k;return f|0}function Wi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Df(i)|0;e=e+88|0;t[e>>2]=f;t[e+4>>2]=I;i=Ff(i,24,0,r)|0;return(i|0)==24&(I|0)==0&1|0}function Zi(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=Df(i)|0;e=e+80|0;t[e>>2]=f;t[e+4>>2]=I;i=Ff(i,8,0,r)|0;return(i|0)==8&(I|0)==0&1|0}function Ji(e,i){e=e|0;i=i|0;var r=0;r=Fn(1,22)|0;if(!r){i=0;return i|0}cf(r,22,4);cf(r+4|0,1768449138,4);cf(r+8|0,t[e+16>>2]|0,4);cf(r+12|0,t[e+12>>2]|0,4);cf(r+16|0,t[e+20>>2]|0,2);cf(r+18|0,t[e+24>>2]|0,1);cf(r+19|0,t[e+28>>2]|0,1);cf(r+20|0,t[e+32>>2]|0,1);cf(r+21|0,t[e+36>>2]|0,1);t[i>>2]=22;i=r;return i|0}function Qi(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0;n=e+20|0;a=(t[n>>2]|0)+8|0;s=Fn(1,a)|0;if(!s){i=0;return i|0}cf(s,a,4);cf(s+4|0,1651532643,4);if(t[n>>2]|0){e=e+72|0;r=0;f=s+8|0;while(1){cf(f,t[(t[e>>2]|0)+(r*12|0)+8>>2]|0,1);r=r+1|0;if(r>>>0>=(t[n>>2]|0)>>>0)break;else f=f+1|0}}t[i>>2]=a;i=s;return i|0}function er(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,s=0,l=0,o=0;r=e+40|0;switch(t[r>>2]|0){case 1:{o=15;break}case 2:{o=(t[e+112>>2]|0)+11|0;break}default:{i=0;return i|0}}l=Fn(1,o)|0;if(!l){i=0;return i|0}cf(l,o,4);cf(l+4|0,1668246642,4);cf(l+8|0,t[r>>2]|0,1);cf(l+9|0,t[e+52>>2]|0,1);cf(l+10|0,t[e+44>>2]|0,1);n=l+11|0;switch(t[r>>2]|0){case 1:{cf(n,t[e+48>>2]|0,4);break}case 2:{s=e+112|0;if(t[s>>2]|0){e=e+108|0;f=0;r=n;while(1){cf(r,a[(t[e>>2]|0)+f>>0]|0,1);f=f+1|0;if(f>>>0>=(t[s>>2]|0)>>>0)break;else r=r+1|0}}break}default:{}}t[i>>2]=o;i=l;return i|0}function ir(e,i){e=e|0;i=i|0;var r=0,f=0,a=0,l=0,o=0,u=0;l=e+116|0;o=((s[(t[l>>2]|0)+4>>1]|0)*6|0)+10|0;u=Nn(o)|0;if(!u){i=0;return i|0}cf(u,o,4);cf(u+4|0,1667523942,4);cf(u+8|0,s[(t[l>>2]|0)+4>>1]|0,2);e=t[l>>2]|0;if(n[e+4>>1]|0){f=0;r=0;a=u+10|0;while(1){cf(a,s[(t[e>>2]|0)+(f*6|0)>>1]|0,2);cf(a+2|0,s[(t[t[l>>2]>>2]|0)+(f*6|0)+2>>1]|0,2);cf(a+4|0,s[(t[t[l>>2]>>2]|0)+(f*6|0)+4>>1]|0,2);r=r+1<<16>>16;e=t[l>>2]|0;if((r&65535)>=(s[e+4>>1]|0))break;else{f=r&65535;a=a+6|0}}}t[i>>2]=o;i=u;return i|0}function rr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0;a=c;c=c+32|0;n=a+16|0;if((r|0)!=14){jf(f,1,18507,a)|0;n=0;c=a;return n|0}hf(i,e+16|0,4);hf(i+4|0,e+12|0,4);r=e+20|0;hf(i+8|0,r,2);r=Fn(t[r>>2]|0,12)|0;t[e+72>>2]=r;if(!r){jf(f,1,18540,a+8|0)|0;n=0;c=a;return n|0}hf(i+10|0,e+24|0,1);r=e+28|0;hf(i+11|0,r,1);r=t[r>>2]|0;if((r|0)!=7){t[n>>2]=r;jf(f,4,18589,n)|0}hf(i+12|0,e+32|0,1);hf(i+13|0,e+36|0,1);n=1;c=a;return n|0}function fr(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0;M=c;c=c+80|0;l=M+40|0;v=M+32|0;u=M+24|0;o=M+16|0;p=M+72|0;m=M+68|0;_=M+64|0;k=M+60|0;d=M+56|0;w=M+52|0;b=M+48|0;h=M+44|0;if(r>>>0<3){jf(n,1,18180,M)|0;y=0;c=M;return y|0}g=e+108|0;y=e+124|0;if(f[y>>0]|0){jf(n,4,18212,M+8|0)|0;y=1;c=M;return y|0}s=e+40|0;hf(i,s,1);hf(i+1|0,e+52|0,1);hf(i+2|0,e+44|0,1);a=i+3|0;s=t[s>>2]|0;switch(s|0){case 1:{if(r>>>0<7){t[o>>2]=r;jf(n,1,18321,o)|0;y=0;c=M;return y|0}s=e+48|0;if(r>>>0>7?(t[s>>2]|0)!=14:0){t[u>>2]=r;jf(n,2,18321,u)|0}hf(a,s,4);if((t[s>>2]|0)==14){a=Nn(36)|0;t[a>>2]=14;t[b>>2]=0;t[d>>2]=0;t[_>>2]=0;t[w>>2]=0;t[k>>2]=0;t[m>>2]=0;t[h>>2]=4470064;s=a+4|0;t[s>>2]=1145390592;switch(r|0){case 35:{hf(i+7|0,m,4);hf(i+11|0,_,4);hf(i+15|0,k,4);hf(i+19|0,d,4);hf(i+23|0,w,4);hf(i+27|0,b,4);hf(i+31|0,h,4);t[s>>2]=0;break}case 7:break;default:{t[v>>2]=r;jf(n,2,18357,v)|0}}t[a+8>>2]=t[m>>2];t[a+16>>2]=t[k>>2];t[a+24>>2]=t[w>>2];t[a+12>>2]=t[_>>2];t[a+20>>2]=t[d>>2];t[a+28>>2]=t[b>>2];t[a+32>>2]=t[h>>2];t[g>>2]=a;t[e+112>>2]=0}f[y>>0]=1;y=1;c=M;return y|0}case 2:{l=r+-3|0;s=e+112|0;t[s>>2]=l;e=Fn(1,l)|0;t[g>>2]=e;if(!e){t[s>>2]=0;y=0;c=M;return y|0}if((r|0)>3){s=0;while(1){hf(a,p,1);f[(t[g>>2]|0)+s>>0]=t[p>>2];s=s+1|0;if((s|0)==(l|0))break;else a=a+1|0}}f[y>>0]=1;y=1;c=M;return y|0}default:{if(s>>>0<=2){y=1;c=M;return y|0}t[l>>2]=s;jf(n,4,18401,l)|0;y=1;c=M;return y|0}}return 0}function nr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0;l=c;c=c+16|0;a=l;n=t[e+24>>2]|0;if((n|0)!=255){t[a>>2]=n;jf(f,2,18034,a)|0}s=e+20|0;if((t[s>>2]|0)!=(r|0)){jf(f,1,18148,l+8|0)|0;s=0;c=l;return s|0}if(!r){s=1;c=l;return s|0}a=e+72|0;n=0;while(1){hf(i,(t[a>>2]|0)+(n*12|0)+8|0,1);n=n+1|0;if(n>>>0>=(t[s>>2]|0)>>>0){i=1;break}else i=i+1|0}c=l;return i|0}function tr(e,i,r,s){e=e|0;i=i|0;r=r|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0;w=c;c=c+16|0;l=w;k=w+12|0;o=e+120|0;if(r>>>0<3|(t[o>>2]|0)!=0){r=0;c=w;return r|0}hf(i,k,2);u=t[k>>2]|0;_=u&65535;if((_+-1|0)>>>0>1023){t[l>>2]=_;jf(s,1,17951,l)|0;r=0;c=w;return r|0}hf(i+2|0,k,1);b=t[k>>2]&65535;if(!b){jf(s,1,17989,w+8|0)|0;r=0;c=w;return r|0}if((b+3|0)>>>0>r>>>0){r=0;c=w;return r|0}l=Nn(ie(_<<2,b)|0)|0;if(!l){r=0;c=w;return r|0}d=Nn(b)|0;if(!d){Yn(l);r=0;c=w;return r|0}h=Nn(b)|0;if(!h){Yn(l);Yn(d);r=0;c=w;return r|0}e=Nn(20)|0;if(!e){Yn(l);Yn(d);Yn(h);r=0;c=w;return r|0}t[e+4>>2]=h;t[e+8>>2]=d;t[e>>2]=l;n[e+16>>1]=u;f[e+18>>0]=t[k>>2];t[e+12>>2]=0;t[o>>2]=e;e=i+3|0;s=0;o=0;do{hf(e,k,1);e=e+1|0;f[d+s>>0]=(t[k>>2]&127)+1;f[h+s>>0]=(t[k>>2]|0)>>>7&1;o=o+1<<16>>16;s=o&65535}while(s>>>0<b>>>0);if(!_){r=1;c=w;return r|0}s=0;e:while(1){u=0;o=l;h=0;while(1){l=((a[d+u>>0]|0)+7|0)>>>3;l=l>>>0>4?4:l;if((e-i+l|0)>(r|0)){e=0;l=22;break e}hf(e,k,l);e=e+l|0;t[o>>2]=t[k>>2];l=o+4|0;h=h+1<<16>>16;u=h&65535;if(u>>>0>=b>>>0)break;else o=l}s=s+1<<16>>16;if((s&65535)>>>0>=_>>>0){e=1;l=22;break}}if((l|0)==22){c=w;return e|0}return 0}function ar(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,o=0,u=0;u=c;c=c+32|0;o=u+20|0;l=e+120|0;e=t[l>>2]|0;if(!e){jf(a,1,17841,u)|0;o=0;c=u;return o|0}if(t[e+12>>2]|0){jf(a,1,17887,u+8|0)|0;o=0;c=u;return o|0}s=f[e+18>>0]|0;e=(s&255)<<2;if(e>>>0>r>>>0){jf(a,1,17918,u+16|0)|0;o=0;c=u;return o|0}a=Nn(e)|0;if(!a){o=0;c=u;return o|0}if(s<<24>>24){e=i;r=0;while(1){hf(e,o,2);n[a+(r<<2)>>1]=t[o>>2];hf(e+2|0,o,1);f[a+(r<<2)+2>>0]=t[o>>2];hf(e+3|0,o,1);f[a+(r<<2)+3>>0]=t[o>>2];r=r+1|0;if((r&255)<<24>>24==s<<24>>24)break;else e=e+4|0}}t[(t[l>>2]|0)+12>>2]=a;o=1;c=u;return o|0}function sr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var a=0,l=0,o=0,u=0;u=c;c=c+32|0;o=u+20|0;l=e+116|0;if(t[l>>2]|0){o=0;c=u;return o|0}if(r>>>0<2){jf(f,1,17747,u)|0;o=0;c=u;return o|0}hf(i,o,2);e=t[o>>2]|0;a=e&65535;if(!a){jf(f,1,17780,u+8|0)|0;o=0;c=u;return o|0}if(((a*6|0)+2|0)>>>0>r>>>0){jf(f,1,17747,u+16|0)|0;o=0;c=u;return o|0}r=Nn(e*6|0)|0;if(!r){o=0;c=u;return o|0}e=Nn(8)|0;t[l>>2]=e;if(!e){Yn(r);o=0;c=u;return o|0}t[e>>2]=r;f=t[o>>2]&65535;n[e+4>>1]=f;if(!(f<<16>>16)){o=1;c=u;return o|0}else{a=0;e=i}do{i=a&65535;hf(e+2|0,o,2);n[r+(i*6|0)>>1]=t[o>>2];hf(e+4|0,o,2);e=e+6|0;n[r+(i*6|0)+2>>1]=t[o>>2];hf(e,o,2);n[r+(i*6|0)+4>>1]=t[o>>2];a=a+1<<16>>16}while((a&65535)<(s[(t[l>>2]|0)+4>>1]|0));e=1;c=u;return e|0}function lr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0;a=c;c=c+32|0;n=a+20|0;e=e+100|0;if(t[e>>2]|0){jf(f,1,19130,a)|0;f=0;c=a;return f|0}if((r|0)!=4){jf(f,1,19184,a+8|0)|0;f=0;c=a;return f|0}hf(i,n,4);if((t[n>>2]|0)==218793738){t[e>>2]=t[e>>2]|1;f=1;c=a;return f|0}else{jf(f,1,19218,a+16|0)|0;f=0;c=a;return f|0}return 0}function or(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0;l=c;c=c+32|0;a=l+24|0;s=e+100|0;if((t[s>>2]|0)!=1){jf(f,1,19011,l)|0;s=0;c=l;return s|0}if(r>>>0<8){jf(f,1,19061,l+8|0)|0;s=0;c=l;return s|0}hf(i,e+56|0,4);hf(i+4|0,e+60|0,4);i=i+8|0;r=r+-8|0;if(r&3){jf(f,1,19061,l+16|0)|0;s=0;c=l;return s|0}r=r>>>2;n=e+64|0;t[n>>2]=r;if(r){r=Fn(r,4)|0;t[e+68>>2]=r;if(!r){jf(f,1,19097,a)|0;s=0;c=l;return s|0}if(t[n>>2]|0){e=e+68|0;r=0;while(1){hf(i,(t[e>>2]|0)+(r<<2)|0,4);r=r+1|0;if(r>>>0>=(t[n>>2]|0)>>>0)break;else i=i+4|0}}}t[s>>2]=t[s>>2]|2;s=1;c=l;return s|0}function ur(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0;S=c;c=c+96|0;A=S+72|0;m=S+64|0;w=S+56|0;k=S+48|0;y=S+40|0;g=S+32|0;p=S+24|0;v=S+16|0;_=S+8|0;d=S+80|0;b=S+76|0;M=e+100|0;if(!(t[M>>2]&2)){jf(f,1,18679,S)|0;E=0;c=S;return E|0}h=e+104|0;t[h>>2]=0;do{if(r){o=i;i=0;e:while(1){if(r>>>0<8){E=6;break}hf(o,d,4);n=t[d>>2]|0;hf(o+4|0,d,4);l=t[d>>2]|0;switch(n|0){case 0:{E=14;break e}case 1:{if(r>>>0<16){E=9;break e}hf(o+8|0,b,4);if(t[b>>2]|0){E=11;break e}hf(o+12|0,d,4);n=t[d>>2]|0;if(!n){E=13;break e}else a=16;break}default:a=8}if(n>>>0<a>>>0){E=16;break}if(r>>>0<n>>>0){E=19;break}s=(l|0)==1768449138;if(!s)if((l|0)!=1668246642)if((l|0)!=1651532643)if((l|0)!=1885564018)if((l|0)!=1668112752)if((l|0)==1667523942){u=1148;E=26}else t[h>>2]=t[h>>2]|2147483647;else{u=1140;E=26}else{u=1132;E=26}else{u=1124;E=26}else{u=1116;E=26}else{u=1108;E=26}if((E|0)==26?(E=0,(Ro[t[u+4>>2]&63](e,o+a|0,n-a|0,f)|0)==0):0){i=0;E=32;break}i=s?1:i;if((r|0)==(n|0)){E=29;break}else{o=o+n|0;r=r-n|0}}if((E|0)==6)jf(f,1,18724,_)|0;else if((E|0)==9)jf(f,1,18764,v)|0;else if((E|0)==11)jf(f,1,17148,p)|0;else if((E|0)==13)jf(f,1,17218,g)|0;else if((E|0)==14)jf(f,1,17218,y)|0;else if((E|0)==16)jf(f,1,18808,k)|0;else if((E|0)==19){jf(f,1,18880,m)|0;E=0;c=S;return E|0}else if((E|0)==29){if(!i)break;t[M>>2]=t[M>>2]|4;E=1;c=S;return E|0}else if((E|0)==32){c=S;return i|0}jf(f,1,18837,w)|0;E=0;c=S;return E|0}}while(0);jf(f,1,18952,A)|0;E=0;c=S;return E|0}function cr(){return 8}function hr(){return 32}function dr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0;if(!f)return;else n=0;do{c=e+(n<<2)|0;l=t[c>>2]|0;o=i+(n<<2)|0;s=t[o>>2]|0;a=r+(n<<2)|0;u=t[a>>2]|0;t[c>>2]=(s<<1)+l+u>>2;t[o>>2]=u-s;t[a>>2]=l-s;n=n+1|0}while((n|0)!=(f|0));return}function br(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0;if(!f)return;else n=0;do{u=e+(n<<2)|0;o=i+(n<<2)|0;s=t[o>>2]|0;a=r+(n<<2)|0;c=t[a>>2]|0;l=(t[u>>2]|0)-(c+s>>2)|0;t[u>>2]=l+c;t[o>>2]=l;t[a>>2]=l+s;n=n+1|0}while((n|0)!=(f|0));return}function _r(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0;if(!f)return;else n=0;do{b=e+(n<<2)|0;p=t[b>>2]|0;u=i+(n<<2)|0;v=t[u>>2]|0;a=r+(n<<2)|0;m=t[a>>2]|0;o=((p|0)<0)<<31>>31;k=jl(p|0,o|0,2449,0)|0;k=Bl(k|0,I|0,4096,0)|0;k=zl(k|0,I|0,13)|0;l=((v|0)<0)<<31>>31;w=jl(v|0,l|0,4809,0)|0;w=Bl(w|0,I|0,4096,0)|0;w=zl(w|0,I|0,13)|0;s=((m|0)<0)<<31>>31;_=jl(m|0,s|0,934,0)|0;_=Bl(_|0,I|0,4096,0)|0;_=zl(_|0,I|0,13)|0;c=jl(p|0,o|0,1382,0)|0;c=Bl(c|0,I|0,4096,0)|0;c=zl(c|0,I|0,13)|0;h=jl(v|0,l|0,2714,0)|0;h=Bl(h|0,I|0,4096,0)|0;h=zl(h|0,I|0,13)|0;d=Ll(m|0,s|0,12)|0;d=Bl(d|0,I|0,4096,0)|0;d=zl(d|0,I|0,13)|0;o=Ll(p|0,o|0,12)|0;o=Bl(o|0,I|0,4096,0)|0;o=zl(o|0,I|0,13)|0;l=jl(v|0,l|0,3430,0)|0;l=Bl(l|0,I|0,4096,0)|0;l=zl(l|0,I|0,13)|0;s=jl(m|0,s|0,666,0)|0;s=Bl(s|0,I|0,4096,0)|0;s=zl(s|0,I|0,13)|0;t[b>>2]=w+k+_;t[u>>2]=d-(h+c);t[a>>2]=o-l-s;n=n+1|0}while((n|0)!=(f|0));return}function kr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,t=0,a=0.0,s=0.0,l=0,u=0.0,c=0;if(!f)return;else n=0;do{c=e+(n<<2)|0;s=+o[c>>2];l=i+(n<<2)|0;a=+o[l>>2];t=r+(n<<2)|0;u=+o[t>>2];o[c>>2]=s+u*1.4019999504089355;o[l>>2]=s-a*.3441300094127655-u*.714139997959137;o[t>>2]=s+a*1.7719999551773071;n=n+1|0}while((n|0)!=(f|0));return}function wr(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0;a=ie(f,f)|0;b=Nn(a+f<<2)|0;if(!b){f=0;return f|0}if(a){s=0;n=e;while(1){t[b+(s+f<<2)>>2]=~~(+o[n>>2]*8192.0);s=s+1|0;if((s|0)==(a|0))break;else n=n+4|0}}if(i){h=(f|0)==0;d=0;do{if(!h){n=0;do{t[b+(n<<2)>>2]=t[t[r+(n<<2)>>2]>>2];n=n+1|0}while((n|0)!=(f|0));if(!h){e=0;u=b;do{u=u+(f<<2)|0;a=r+(e<<2)|0;n=t[a>>2]|0;t[n>>2]=0;s=0;l=0;c=u;while(1){_=t[c>>2]|0;k=t[b+(l<<2)>>2]|0;_=jl(k|0,((k|0)<0)<<31>>31|0,_|0,((_|0)<0)<<31>>31|0)|0;_=Bl(_|0,I|0,4096,0)|0;_=zl(_|0,I|0,13)|0;s=_+s|0;t[n>>2]=s;l=l+1|0;if((l|0)==(f|0))break;else c=c+4|0}t[a>>2]=n+4;e=e+1|0}while((e|0)!=(f|0))}}d=d+1|0}while((d|0)!=(i|0))}Yn(b);k=1;return k|0}function mr(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0.0,s=0,l=0,u=0,c=0,h=0,d=0,b=0;h=Nn(f<<3)|0;if(!h){f=0;return f|0}if(i){d=(f|0)==0;b=0;do{if(!d){n=0;do{t[h+(n<<2)>>2]=t[t[r+(n<<2)>>2]>>2];n=n+1|0}while((n|0)!=(f|0));if(!d){u=0;c=e;while(1){n=h+(u+f<<2)|0;o[n>>2]=0.0;a=0.0;s=0;l=c;while(1){a=a+ +o[l>>2]*+o[h+(s<<2)>>2];o[n>>2]=a;s=s+1|0;if((s|0)==(f|0))break;else l=l+4|0}s=r+(u<<2)|0;l=t[s>>2]|0;t[s>>2]=l+4;o[l>>2]=a;u=u+1|0;if((u|0)==(f|0))break;else c=c+(f<<2)|0}}}b=b+1|0}while((b|0)!=(i|0))}Yn(h);f=1;return f|0}function vr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0.0,n=0,t=0,a=0,s=0,l=0.0;if(!i)return;else s=0;do{a=e+(s<<3)|0;u[a>>3]=0.0;f=0.0;n=0;t=s;while(1){l=+o[r+(t<<2)>>2];f=f+l*l;n=n+1|0;if((n|0)==(i|0))break;else t=t+i|0}u[a>>3]=+Y(+f);s=s+1|0}while((s|0)!=(i|0));return}function pr(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0;I=c;c=c+32|0;T=I+28|0;y=I+24|0;M=I+20|0;A=I+16|0;E=I+12|0;S=I+8|0;o=I+4|0;u=I;n=i+76|0;C=t[n>>2]|0;R=C+(r*5640|0)+420|0;P=(t[R>>2]|0)+1|0;h=e+16|0;g=Nn((t[h>>2]|0)*528|0)|0;if(!g){P=0;c=I;return P|0}p=Nn(t[h>>2]<<2)|0;if(!p){Yn(g);P=0;c=I;return P|0}n=Sr(e,t[n>>2]|0,r)|0;if(!n){Yn(g);Yn(p);P=0;c=I;return P|0}a=t[h>>2]|0;if(a){s=0;l=g;while(1){t[p+(s<<2)>>2]=l;s=s+1|0;if(s>>>0>=a>>>0)break;else l=l+528|0}}Tr(e,i,r,M,A,E,S,o,u,y,T,p);m=t[y>>2]|0;k=ie(t[h>>2]|0,m)|0;w=ie(t[T>>2]|0,k)|0;v=C+(r*5640|0)+8|0;_=Fn(ie((t[v>>2]|0)+1|0,w)|0,2)|0;s=n+4|0;t[s>>2]=_;if(!_){Yn(g);Yn(p);a=t[s>>2]|0;if(a){Yn(a);t[s>>2]=0}if(P){e=n;d=0;while(1){h=e+196|0;a=t[h>>2]|0;if(a){i=e+192|0;s=t[i>>2]|0;if(s){u=0;while(1){l=a+12|0;o=t[l>>2]|0;if(o){Yn(o);t[l>>2]=0;s=t[i>>2]|0}u=u+1|0;if(u>>>0>=s>>>0)break;else a=a+16|0}a=t[h>>2]|0}Yn(a);t[h>>2]=0}d=d+1|0;if((d|0)==(P|0))break;else e=e+232|0}}Yn(n);P=0;c=I;return P|0}a=t[n+196>>2]|0;_=t[e+24>>2]|0;t[n+200>>2]=t[M>>2];t[n+204>>2]=t[E>>2];t[n+208>>2]=t[A>>2];t[n+212>>2]=t[S>>2];t[n+20>>2]=1;t[n+16>>2]=m;t[n+12>>2]=k;t[n+8>>2]=w;h=t[n+192>>2]|0;if(h){e=0;i=_;while(1){l=t[a+12>>2]|0;s=t[p+(e<<2)>>2]|0;t[a>>2]=t[i>>2];t[a+4>>2]=t[i+4>>2];u=t[a+8>>2]|0;if(u){o=0;while(1){t[l>>2]=t[s>>2];t[l+4>>2]=t[s+4>>2];t[l+8>>2]=t[s+8>>2];t[l+12>>2]=t[s+12>>2];o=o+1|0;if(o>>>0>=u>>>0)break;else{s=s+16|0;l=l+16|0}}}e=e+1|0;if(e>>>0>=h>>>0)break;else{a=a+16|0;i=i+52|0}}}if(P>>>0>1){h=n;b=1;do{a=t[h+428>>2]|0;t[h+432>>2]=t[M>>2];t[h+436>>2]=t[E>>2];t[h+440>>2]=t[A>>2];t[h+444>>2]=t[S>>2];t[h+252>>2]=1;t[h+248>>2]=m;t[h+244>>2]=k;t[h+240>>2]=w;e=t[h+424>>2]|0;if(e){d=0;i=_;while(1){l=t[a+12>>2]|0;s=t[p+(d<<2)>>2]|0;t[a>>2]=t[i>>2];t[a+4>>2]=t[i+4>>2];u=t[a+8>>2]|0;if(u){o=0;while(1){t[l>>2]=t[s>>2];t[l+4>>2]=t[s+4>>2];t[l+8>>2]=t[s+8>>2];t[l+12>>2]=t[s+12>>2];o=o+1|0;if(o>>>0>=u>>>0)break;else{s=s+16|0;l=l+16|0}}}d=d+1|0;if(d>>>0>=e>>>0)break;else{a=a+16|0;i=i+52|0}}}t[h+236>>2]=t[h+4>>2];h=h+232|0;b=b+1|0}while((b|0)!=(P|0))}Yn(g);Yn(p);h=t[y>>2]|0;if(!(f[C+(r*5640|0)+5636>>0]&4)){i=t[T>>2]|0;u=(t[R>>2]|0)+1|0;if(!u){P=n;c=I;return P|0}o=t[C+(r*5640|0)+4>>2]|0;a=t[v>>2]|0;s=n;l=0;while(1){t[s+80>>2]=o;t[s+40>>2]=1;t[s+44>>2]=0;t[s+48>>2]=0;t[s+64>>2]=0;t[s+68>>2]=0;t[s+56>>2]=i;t[s+60>>2]=t[s+192>>2];t[s+52>>2]=a;t[s+72>>2]=h;l=l+1|0;if((l|0)==(u|0))break;else s=s+232|0}c=I;return n|0}else{l=(t[R>>2]|0)+1|0;if(!l){P=n;c=I;return P|0}o=n;a=C+(r*5640|0)+424|0;s=0;while(1){t[o+80>>2]=t[a+36>>2];t[o+40>>2]=1;t[o+44>>2]=t[a>>2];t[o+48>>2]=t[a+4>>2];t[o+64>>2]=0;t[o+68>>2]=0;t[o+56>>2]=t[a+12>>2];t[o+60>>2]=t[a+16>>2];t[o+52>>2]=t[a+8>>2];t[o+72>>2]=h;s=s+1|0;if((s|0)==(l|0))break;else{o=o+232|0;a=a+148|0}}c=I;return n|0}return 0}function gr(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0;if(!e)return;r=e+4|0;f=t[r>>2]|0;if(f){Yn(f);t[r>>2]=0}if(i){u=e;c=0;while(1){o=u+196|0;r=t[o>>2]|0;if(r){l=u+192|0;f=t[l>>2]|0;if(f){s=0;while(1){n=r+12|0;a=t[n>>2]|0;if(a){Yn(a);t[n>>2]=0;f=t[l>>2]|0}s=s+1|0;if(s>>>0>=f>>>0)break;else r=r+16|0}r=t[o>>2]|0}Yn(r);t[o>>2]=0}c=c+1|0;if((c|0)==(i|0))break;else u=u+232|0}}Yn(e);return}function yr(e,i,r,s){e=e|0;i=i|0;r=r|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0;D=c;c=c+32|0;O=D+28|0;I=D+24|0;T=D+20|0;R=D+16|0;C=D+12|0;P=D+8|0;x=D+4|0;L=D;B=i+76|0;M=t[B>>2]|0;z=(t[M+(r*5640|0)+420>>2]|0)+1|0;S=e+16|0;E=Nn((t[S>>2]|0)*528|0)|0;if(!E){r=0;c=D;return r|0}A=Nn(t[S>>2]<<2)|0;if(!A){Yn(E);r=0;c=D;return r|0}l=Sr(e,t[B>>2]|0,r)|0;if(!l){Yn(E);Yn(A);r=0;c=D;return r|0}o=t[S>>2]|0;if(o){u=0;h=E;while(1){t[A+(u<<2)>>2]=h;u=u+1|0;if(u>>>0>=o>>>0)break;else h=h+528|0}}Tr(e,i,r,T,R,C,P,x,L,I,O,A);p=t[I>>2]|0;g=ie(t[S>>2]|0,p)|0;y=ie(t[O>>2]|0,g)|0;f[l>>0]=(a[i+93>>0]|0)>>>3&1;v=Fn(ie(t[M+(r*5640|0)+8>>2]|0,y)|0,2)|0;u=l+4|0;t[u>>2]=v;if(!v){Yn(E);Yn(A);o=t[u>>2]|0;if(o){Yn(o);t[u>>2]=0}if(z){k=l;w=0;while(1){_=k+196|0;o=t[_>>2]|0;if(o){b=k+192|0;u=t[b>>2]|0;if(u){d=0;while(1){h=o+12|0;e=t[h>>2]|0;if(e){Yn(e);t[h>>2]=0;u=t[b>>2]|0}d=d+1|0;if(d>>>0>=u>>>0)break;else o=o+16|0}o=t[_>>2]|0}Yn(o);t[_>>2]=0}w=w+1|0;if((w|0)==(z|0))break;else k=k+232|0}}Yn(l);r=0;c=D;return r|0}o=t[l+196>>2]|0;v=t[e+24>>2]|0;t[l+200>>2]=t[T>>2];t[l+204>>2]=t[C>>2];t[l+208>>2]=t[R>>2];t[l+212>>2]=t[P>>2];t[l+224>>2]=t[x>>2];t[l+228>>2]=t[L>>2];t[l+20>>2]=1;t[l+16>>2]=p;t[l+12>>2]=g;t[l+8>>2]=y;_=t[l+192>>2]|0;if(_){k=0;b=v;while(1){h=t[o+12>>2]|0;u=t[A+(k<<2)>>2]|0;t[o>>2]=t[b>>2];t[o+4>>2]=t[b+4>>2];d=t[o+8>>2]|0;if(d){e=0;while(1){t[h>>2]=t[u>>2];t[h+4>>2]=t[u+4>>2];t[h+8>>2]=t[u+8>>2];t[h+12>>2]=t[u+12>>2];e=e+1|0;if(e>>>0>=d>>>0)break;else{u=u+16|0;h=h+16|0}}}k=k+1|0;if(k>>>0>=_>>>0)break;else{o=o+16|0;b=b+52|0}}}if(z>>>0>1){_=l;m=1;do{o=t[_+428>>2]|0;t[_+432>>2]=t[T>>2];t[_+436>>2]=t[C>>2];t[_+440>>2]=t[R>>2];t[_+444>>2]=t[P>>2];t[_+456>>2]=t[x>>2];t[_+460>>2]=t[L>>2];t[_+252>>2]=1;t[_+248>>2]=p;t[_+244>>2]=g;t[_+240>>2]=y;k=t[_+424>>2]|0;if(k){w=0;b=v;while(1){h=t[o+12>>2]|0;u=t[A+(w<<2)>>2]|0;t[o>>2]=t[b>>2];t[o+4>>2]=t[b+4>>2];d=t[o+8>>2]|0;if(d){e=0;while(1){t[h>>2]=t[u>>2];t[h+4>>2]=t[u+4>>2];t[h+8>>2]=t[u+8>>2];t[h+12>>2]=t[u+12>>2];e=e+1|0;if(e>>>0>=d>>>0)break;else{u=u+16|0;h=h+16|0}}}w=w+1|0;if(w>>>0>=k>>>0)break;else{o=o+16|0;b=b+52|0}}}t[_+236>>2]=t[_+4>>2];_=_+232|0;m=m+1|0}while((m|0)!=(z|0))}Yn(E);Yn(A);do{if(f[M+(r*5640|0)+5636>>0]&4){o=n[i>>1]|0;if((o&65535)>2){if(!((s|0)==1|(o&65535)<7))break}else if((s|0)!=1)break;Rr(t[B>>2]|0,r,t[T>>2]|0,t[R>>2]|0,t[C>>2]|0,t[P>>2]|0,t[I>>2]|0,t[x>>2]|0,t[L>>2]|0);r=l;c=D;return r|0}}while(0);y=t[S>>2]|0;g=t[T>>2]|0;p=t[R>>2]|0;v=t[C>>2]|0;m=t[P>>2]|0;w=t[I>>2]|0;k=t[O>>2]|0;_=t[x>>2]|0;b=t[L>>2]|0;o=t[B>>2]|0;h=(t[o+(r*5640|0)+420>>2]|0)+1|0;if(!h){r=l;c=D;return r|0}e=t[o+(r*5640|0)+8>>2]|0;d=t[o+(r*5640|0)+4>>2]|0;o=o+(r*5640|0)+424|0;u=0;while(1){t[o+76>>2]=0;t[o+92>>2]=y;t[o+72>>2]=0;t[o+88>>2]=k;t[o+68>>2]=0;t[o+84>>2]=e;t[o+36>>2]=d;t[o+80>>2]=0;t[o+96>>2]=w;t[o+100>>2]=g;t[o+104>>2]=p;t[o+108>>2]=v;t[o+112>>2]=m;t[o+116>>2]=_;t[o+120>>2]=b;u=u+1|0;if((u|0)==(h|0))break;else o=o+148|0}c=D;return l|0}function Mr(e,i,r,a,s,l,o){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0;j=t[i+76>>2]|0;Y=j+(r*5640|0)+424+(a*148|0)+36|0;q=qn(t[Y>>2]|0)|0;t[e+(a*232|0)+40>>2]=1;$=e+(a*232|0)+44|0;t[e+(a*232|0)+80>>2]=t[Y>>2];do{if(f[i+93>>0]&8){u=n[i>>1]|0;if((u&65535)>2){if(!((o|0)==1&(u&65535)>6|(u+-3&65535)<4))break}else if(!((o|0)==1|(u+-3&65535)<4))break;u=l+1|0;e:do{if((u|0)<4){o=j+(r*5640|0)+424+(a*148|0)+72|0;c=j+(r*5640|0)+424+(a*148|0)+88|0;h=e+(a*232|0)+56|0;d=j+(r*5640|0)+424+(a*148|0)+76|0;b=e+(a*232|0)+48|0;_=j+(r*5640|0)+424+(a*148|0)+92|0;k=e+(a*232|0)+60|0;w=j+(r*5640|0)+424+(a*148|0)+68|0;m=e+(a*232|0)+64|0;v=j+(r*5640|0)+424+(a*148|0)+84|0;p=e+(a*232|0)+52|0;g=j+(r*5640|0)+424+(a*148|0)+80|0;y=e+(a*232|0)+68|0;M=j+(r*5640|0)+424+(a*148|0)+96|0;A=e+(a*232|0)+72|0;E=j+(r*5640|0)+424+(a*148|0)+100|0;S=e+(a*232|0)+96|0;T=j+(r*5640|0)+424+(a*148|0)+108|0;R=e+(a*232|0)+104|0;C=j+(r*5640|0)+424+(a*148|0)+104|0;P=e+(a*232|0)+100|0;I=j+(r*5640|0)+424+(a*148|0)+112|0;O=e+(a*232|0)+108|0;while(1){i:do{switch(f[q+u>>0]|0){case 82:{t[$>>2]=t[o>>2];t[h>>2]=t[c>>2];break}case 67:{t[b>>2]=t[d>>2];t[k>>2]=t[_>>2];break}case 76:{t[m>>2]=t[w>>2];t[p>>2]=t[v>>2];break}case 80:if((t[Y>>2]|0)>>>0<2){t[y>>2]=t[g>>2];t[A>>2]=t[M>>2];break i}else{t[S>>2]=t[E>>2];t[R>>2]=t[T>>2];t[P>>2]=t[C>>2];t[O>>2]=t[I>>2];break i}default:{}}}while(0);u=u+1|0;if((u|0)==4)break e}}}while(0);u=(l|0)>-1;if(!s){if(!u)return;h=j+(r*5640|0)+424+(a*148|0)+76|0;d=j+(r*5640|0)+424+(a*148|0)+132|0;b=e+(a*232|0)+48|0;_=e+(a*232|0)+60|0;k=j+(r*5640|0)+424+(a*148|0)+72|0;w=j+(r*5640|0)+424+(a*148|0)+128|0;m=e+(a*232|0)+56|0;v=j+(r*5640|0)+424+(a*148|0)+68|0;p=j+(r*5640|0)+424+(a*148|0)+124|0;g=e+(a*232|0)+64|0;y=e+(a*232|0)+52|0;M=j+(r*5640|0)+424+(a*148|0)+80|0;A=j+(r*5640|0)+424+(a*148|0)+136|0;E=e+(a*232|0)+68|0;S=e+(a*232|0)+72|0;T=j+(r*5640|0)+424+(a*148|0)+100|0;R=j+(r*5640|0)+424+(a*148|0)+140|0;C=j+(r*5640|0)+424+(a*148|0)+108|0;P=j+(r*5640|0)+424+(a*148|0)+144|0;I=e+(a*232|0)+96|0;O=j+(r*5640|0)+424+(a*148|0)+116|0;s=e+(a*232|0)+100|0;x=e+(a*232|0)+104|0;c=j+(r*5640|0)+424+(a*148|0)+120|0;o=e+(a*232|0)+108|0;u=l;while(1){e:do{switch(f[q+u>>0]|0){case 67:{a=t[h>>2]|0;t[b>>2]=a;a=a+1|0;t[_>>2]=a;t[d>>2]=a;break}case 82:{a=t[k>>2]|0;t[$>>2]=a;a=a+1|0;t[m>>2]=a;t[w>>2]=a;break}case 76:{a=t[v>>2]|0;t[g>>2]=a;a=a+1|0;t[y>>2]=a;t[p>>2]=a;break}case 80:if((t[Y>>2]|0)>>>0<2){a=t[M>>2]|0;t[E>>2]=a;a=a+1|0;t[S>>2]=a;t[A>>2]=a;break e}else{a=t[T>>2]|0;l=t[C>>2]|0;t[I>>2]=a;r=t[O>>2]|0;r=r+a-((a>>>0)%(r>>>0)|0)|0;t[s>>2]=r;t[x>>2]=l;a=t[c>>2]|0;a=a+l-((l>>>0)%(a>>>0)|0)|0;t[o>>2]=a;t[R>>2]=r;t[P>>2]=a;break e}default:{}}}while(0);if((u|0)>0)u=u+-1|0;else break}return}if(!u)return;D=j+(r*5640|0)+424+(a*148|0)+128|0;N=j+(r*5640|0)+424+(a*148|0)+88|0;F=j+(r*5640|0)+424+(a*148|0)+72|0;H=e+(a*232|0)+56|0;U=j+(r*5640|0)+424+(a*148|0)+132|0;_=j+(r*5640|0)+424+(a*148|0)+92|0;k=j+(r*5640|0)+424+(a*148|0)+76|0;w=e+(a*232|0)+48|0;m=e+(a*232|0)+60|0;v=j+(r*5640|0)+424+(a*148|0)+124|0;p=j+(r*5640|0)+424+(a*148|0)+84|0;g=j+(r*5640|0)+424+(a*148|0)+68|0;y=e+(a*232|0)+64|0;M=e+(a*232|0)+52|0;A=j+(r*5640|0)+424+(a*148|0)+136|0;E=j+(r*5640|0)+424+(a*148|0)+96|0;S=j+(r*5640|0)+424+(a*148|0)+80|0;T=e+(a*232|0)+68|0;R=e+(a*232|0)+72|0;C=j+(r*5640|0)+424+(a*148|0)+140|0;P=j+(r*5640|0)+424+(a*148|0)+104|0;I=e+(a*232|0)+96|0;O=j+(r*5640|0)+424+(a*148|0)+116|0;s=e+(a*232|0)+100|0;x=j+(r*5640|0)+424+(a*148|0)+144|0;L=j+(r*5640|0)+424+(a*148|0)+112|0;B=e+(a*232|0)+104|0;z=j+(r*5640|0)+424+(a*148|0)+120|0;d=e+(a*232|0)+108|0;b=j+(r*5640|0)+424+(a*148|0)+100|0;h=j+(r*5640|0)+424+(a*148|0)+108|0;c=l;u=1;while(1){o=q+c|0;e:do{switch(f[o>>0]|0){case 67:{l=t[U>>2]|0;t[w>>2]=l+-1;t[m>>2]=l;break}case 82:{l=t[D>>2]|0;t[$>>2]=l+-1;t[H>>2]=l;break}case 76:{l=t[v>>2]|0;t[y>>2]=l+-1;t[M>>2]=l;break}case 80:if((t[Y>>2]|0)>>>0<2){l=t[A>>2]|0;t[T>>2]=l+-1;t[R>>2]=l;break e}else{l=t[C>>2]|0;j=t[O>>2]|0;t[I>>2]=l-j-((l>>>0)%(j>>>0)|0);t[s>>2]=l;l=t[x>>2]|0;j=t[z>>2]|0;t[B>>2]=l-j-((l>>>0)%(j>>>0)|0);t[d>>2]=l;break e}default:{}}}while(0);e:do{if((u|0)==1)switch(f[o>>0]|0){case 82:{u=t[D>>2]|0;if((u|0)!=(t[N>>2]|0)){t[$>>2]=u;u=u+1|0;t[H>>2]=u;t[D>>2]=u;u=0;break e}if(!(Cr(c+-1|0,i,r,a,q)|0)){u=0;break e}u=t[F>>2]|0;t[$>>2]=u;u=u+1|0;t[H>>2]=u;t[D>>2]=u;u=1;break e}case 67:{u=t[U>>2]|0;if((u|0)!=(t[_>>2]|0)){t[w>>2]=u;u=u+1|0;t[m>>2]=u;t[U>>2]=u;u=0;break e}if(!(Cr(c+-1|0,i,r,a,q)|0)){u=0;break e}u=t[k>>2]|0;t[w>>2]=u;u=u+1|0;t[m>>2]=u;t[U>>2]=u;u=1;break e}case 76:{u=t[v>>2]|0;if((u|0)!=(t[p>>2]|0)){t[y>>2]=u;u=u+1|0;t[M>>2]=u;t[v>>2]=u;u=0;break e}if(!(Cr(c+-1|0,i,r,a,q)|0)){u=0;break e}u=t[g>>2]|0;t[y>>2]=u;u=u+1|0;t[M>>2]=u;t[v>>2]=u;u=1;break e}case 80:{if((t[Y>>2]|0)>>>0<2){u=t[A>>2]|0;if((u|0)!=(t[E>>2]|0)){t[T>>2]=u;u=u+1|0;t[R>>2]=u;t[A>>2]=u;u=0;break e}if(!(Cr(c+-1|0,i,r,a,q)|0)){u=0;break e}u=t[S>>2]|0;t[T>>2]=u;u=u+1|0;t[R>>2]=u;t[A>>2]=u;u=1;break e}u=t[C>>2]|0;if(u>>>0<(t[P>>2]|0)>>>0){t[I>>2]=u;l=t[O>>2]|0;u=l+u-((u>>>0)%(l>>>0)|0)|0;t[s>>2]=u;t[C>>2]=u;u=0;break e}o=t[x>>2]|0;if(o>>>0<(t[L>>2]|0)>>>0){t[B>>2]=o;l=t[z>>2]|0;u=0;o=l+o-((o>>>0)%(l>>>0)|0)|0}else{if(!(Cr(c+-1|0,i,r,a,q)|0)){u=0;break e}l=t[h>>2]|0;t[x>>2]=l;t[B>>2]=l;o=t[z>>2]|0;u=1;o=o+l-((l>>>0)%(o>>>0)|0)|0}t[d>>2]=o;t[x>>2]=o;j=t[b>>2]|0;t[I>>2]=j;l=t[O>>2]|0;l=l+j-((j>>>0)%(l>>>0)|0)|0;t[s>>2]=l;t[C>>2]=l;break e}default:{u=1;break e}}}while(0);if((c|0)>0)c=c+-1|0;else break}return}}while(0);t[$>>2]=t[j+(r*5640|0)+424+(a*148|0)+72>>2];t[e+(a*232|0)+56>>2]=t[j+(r*5640|0)+424+(a*148|0)+88>>2];t[e+(a*232|0)+48>>2]=t[j+(r*5640|0)+424+(a*148|0)+76>>2];t[e+(a*232|0)+60>>2]=t[j+(r*5640|0)+424+(a*148|0)+92>>2];t[e+(a*232|0)+64>>2]=t[j+(r*5640|0)+424+(a*148|0)+68>>2];t[e+(a*232|0)+52>>2]=t[j+(r*5640|0)+424+(a*148|0)+84>>2];t[e+(a*232|0)+68>>2]=t[j+(r*5640|0)+424+(a*148|0)+80>>2];t[e+(a*232|0)+72>>2]=t[j+(r*5640|0)+424+(a*148|0)+96>>2];t[e+(a*232|0)+96>>2]=t[j+(r*5640|0)+424+(a*148|0)+100>>2];t[e+(a*232|0)+104>>2]=t[j+(r*5640|0)+424+(a*148|0)+108>>2];t[e+(a*232|0)+100>>2]=t[j+(r*5640|0)+424+(a*148|0)+104>>2];t[e+(a*232|0)+108>>2]=t[j+(r*5640|0)+424+(a*148|0)+112>>2];return}function Ar(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0;L=t[i+76>>2]|0;z=t[i+24>>2]|0;F=(r>>>0)%(z>>>0)|0;z=(r>>>0)/(z>>>0)|0;D=t[i+4>>2]|0;x=t[i+12>>2]|0;O=(ie(x,F)|0)+D|0;N=t[e>>2]|0;N=(O|0)>(N|0)?O:N;D=(ie(x,F+1|0)|0)+D|0;F=t[e+8>>2]|0;F=(D|0)<(F|0)?D:F;D=t[i+8>>2]|0;x=t[i+16>>2]|0;O=(ie(x,z)|0)+D|0;B=t[e+4>>2]|0;B=(O|0)>(B|0)?O:B;D=(ie(x,z+1|0)|0)+D|0;z=t[e+12>>2]|0;z=(D|0)<(z|0)?D:z;D=t[e+16>>2]|0;if(!D){c=0;u=2147483647;o=2147483647;l=0}else{R=z+-1|0;C=F+-1|0;P=B+-1|0;O=N+-1|0;c=0;u=2147483647;o=2147483647;l=0;x=0;S=t[e+24>>2]|0;T=t[L+(r*5640|0)+5584>>2]|0;while(1){M=t[S>>2]|0;A=t[S+4>>2]|0;E=t[T+4>>2]|0;l=E>>>0>l>>>0?E:l;if(E){g=(R+A|0)/(A|0)|0;v=(C+M|0)/(M|0)|0;w=(P+A|0)/(A|0)|0;_=(O+M|0)/(M|0)|0;_=Bl(_|0,((_|0)<0)<<31>>31|0,-1,-1)|0;k=I;w=Bl(w|0,((w|0)<0)<<31>>31|0,-1,-1)|0;m=I;v=Bl(v|0,((v|0)<0)<<31>>31|0,-1,-1)|0;p=I;g=Bl(g|0,((g|0)<0)<<31>>31|0,-1,-1)|0;y=I;i=0;b=0;while(1){h=t[T+812+(b<<2)>>2]|0;d=t[T+944+(b<<2)>>2]|0;a=i+-1+E|0;s=M<<a+h;H=A<<d+a;u=u>>>0<s>>>0?u:s;o=o>>>0<H>>>0?o:H;H=Ll(1,0,a|0)|0;s=I;i=Bl(_|0,k|0,H|0,s|0)|0;i=Ol(i|0,I|0,a|0)|0;n=Bl(w|0,m|0,H|0,s|0)|0;n=Ol(n|0,I|0,a|0)|0;e=Bl(v|0,p|0,H|0,s|0)|0;e=Ol(e|0,I|0,a|0)|0;s=Bl(g|0,y|0,H|0,s|0)|0;a=Ol(s|0,I|0,a|0)|0;s=Ll(1,0,d|0)|0;s=Bl(s|0,I|0,-1,-1)|0;s=Bl(s|0,I|0,a|0,((a|0)<0)<<31>>31|0)|0;s=Ol(s|0,I|0,d|0)|0;if((i|0)==(e|0))i=0;else{H=Ll(1,0,h|0)|0;H=Bl(H|0,I|0,-1,-1)|0;H=Bl(H|0,I|0,e|0,((e|0)<0)<<31>>31|0)|0;H=Ol(H|0,I|0,h|0)|0;i=(H<<h)-(i>>h<<h)>>h}e=ie(i,(n|0)==(a|0)?0:(s<<d)-(n>>d<<d)>>d)|0;c=e>>>0>c>>>0?e:c;e=b+1|0;if(e>>>0<E>>>0){i=~b;b=e}else break}}x=x+1|0;if(x>>>0>=D>>>0)break;else{S=S+52|0;T=T+1080|0}}}if(f[L+(r*5640|0)+5636>>0]&4){Rr(L,r,N,F,B,z,c,u,o);return}n=(t[L+(r*5640|0)+420>>2]|0)+1|0;if(!n)return;a=t[L+(r*5640|0)+8>>2]|0;s=t[L+(r*5640|0)+4>>2]|0;i=L+(r*5640|0)+424|0;e=0;while(1){t[i+76>>2]=0;t[i+92>>2]=D;t[i+72>>2]=0;t[i+88>>2]=l;t[i+68>>2]=0;t[i+84>>2]=a;t[i+36>>2]=s;t[i+80>>2]=0;t[i+96>>2]=c;t[i+100>>2]=N;t[i+104>>2]=F;t[i+108>>2]=B;t[i+112>>2]=z;t[i+116>>2]=u;t[i+120>>2]=o;e=e+1|0;if((e|0)==(n|0))break;else i=i+148|0}return}function Er(e){e=e|0;var i=0,r=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0,V=0,X=0,G=0,K=0,W=0,Z=0,J=0,Q=0,ee=0,re=0,fe=0,ne=0,te=0,ae=0,se=0,le=0,oe=0,ue=0,ce=0,he=0,de=0,be=0,_e=0,ke=0,we=0,me=0,ve=0,pe=0,ge=0,ye=0,Me=0,Ae=0,Ee=0,Se=0,Te=0,Re=0,Ce=0,Pe=0,Ie=0,Oe=0,xe=0,Le=0,Be=0,ze=0,De=0,Ne=0,Fe=0,He=0,Ue=0,je=0,Ye=0,qe=0,$e=0,Ve=0,Xe=0,Ge=0,Ke=0,We=0,Ze=0,Je=0,Qe=0,ei=0,ii=0,ri=0,fi=0,ni=0,ti=0,ai=0,si=0,li=0,oi=0,ui=0,ci=0,hi=0,di=0;switch(t[e+80>>2]|0){case 0:{i=e+40|0;if(!(t[i>>2]|0)){P=e+32|0;c=P;P=t[P>>2]|0;r=18}else{t[i>>2]=0;v=t[e+64>>2]|0;t[e+36>>2]=v;r=5}while(1){if((r|0)==5){if(v>>>0>=(t[e+52>>2]|0)>>>0){di=0;r=153;break}E=t[e+44>>2]|0;t[e+28>>2]=E;r=7}else if((r|0)==18){o=P+1|0;t[c>>2]=o;s=c;r=14}while(1){if((r|0)==7){r=0;if(E>>>0>=(t[e+56>>2]|0)>>>0){r=21;break}S=t[e+48>>2]|0;_=e+24|0;t[_>>2]=S}else if((r|0)==14){if(o>>>0<(t[e+72>>2]|0)>>>0){r=16;break}I=e+24|0;d=I;I=t[I>>2]|0;r=19}while(1){if((r|0)==19){r=0;S=I+1|0;t[d>>2]=S;_=d}if(S>>>0>=(t[e+60>>2]|0)>>>0){r=20;break}T=t[e+196>>2]|0;R=t[e+28>>2]|0;if(R>>>0<(t[T+(S<<4)+8>>2]|0)>>>0)break;else{d=_;I=S;r=19}}if((r|0)==20){r=e+28|0;E=(t[r>>2]|0)+1|0;t[r>>2]=E;r=7;continue}i=t[T+(S<<4)+12>>2]|0;if(!(f[e>>0]|0))t[e+72>>2]=ie(t[i+(R<<4)+12>>2]|0,t[i+(R<<4)+8>>2]|0)|0;o=t[e+68>>2]|0;s=e+32|0;t[s>>2]=o;r=14}if((r|0)==16){r=0;C=ie(t[e+8>>2]|0,t[e+36>>2]|0)|0;C=(ie(t[e+12>>2]|0,t[e+28>>2]|0)|0)+C|0;C=C+(ie(t[e+16>>2]|0,t[e+24>>2]|0)|0)|0;C=C+(ie(t[e+20>>2]|0,o)|0)|0;C=(t[e+4>>2]|0)+(C<<1)|0;if(!(n[C>>1]|0))break;else{c=s;P=o;r=18;continue}}else if((r|0)==21){r=e+36|0;v=(t[r>>2]|0)+1|0;t[r>>2]=v;r=5;continue}}if((r|0)==153)return di|0;n[C>>1]=1;e=1;return e|0}case 1:{i=e+40|0;if(!(t[i>>2]|0)){M=e+32|0;u=M;M=t[M>>2]|0;r=38}else{t[i>>2]=0;O=t[e+44>>2]|0;t[e+28>>2]=O;r=25}while(1){if((r|0)==25){if(O>>>0>=(t[e+56>>2]|0)>>>0){di=0;r=153;break}w=t[e+64>>2]|0;t[e+36>>2]=w;r=27}else if((r|0)==38){l=M+1|0;t[u>>2]=l;a=u;r=34}while(1){if((r|0)==27){r=0;if(w>>>0>=(t[e+52>>2]|0)>>>0){r=41;break}m=t[e+48>>2]|0;b=e+24|0;t[b>>2]=m}else if((r|0)==34){if(l>>>0<(t[e+72>>2]|0)>>>0){r=36;break}A=e+24|0;h=A;A=t[A>>2]|0;r=39}while(1){if((r|0)==39){r=0;m=A+1|0;t[h>>2]=m;b=h}if(m>>>0>=(t[e+60>>2]|0)>>>0){r=40;break}p=t[e+196>>2]|0;g=t[e+28>>2]|0;if(g>>>0<(t[p+(m<<4)+8>>2]|0)>>>0)break;else{h=b;A=m;r=39}}if((r|0)==40){r=e+36|0;w=(t[r>>2]|0)+1|0;t[r>>2]=w;r=27;continue}i=t[p+(m<<4)+12>>2]|0;if(!(f[e>>0]|0))t[e+72>>2]=ie(t[i+(g<<4)+12>>2]|0,t[i+(g<<4)+8>>2]|0)|0;l=t[e+68>>2]|0;a=e+32|0;t[a>>2]=l;r=34}if((r|0)==36){r=0;y=ie(t[e+8>>2]|0,t[e+36>>2]|0)|0;y=(ie(t[e+12>>2]|0,t[e+28>>2]|0)|0)+y|0;y=y+(ie(t[e+16>>2]|0,t[e+24>>2]|0)|0)|0;y=y+(ie(t[e+20>>2]|0,l)|0)|0;y=(t[e+4>>2]|0)+(y<<1)|0;if(!(n[y>>1]|0))break;else{u=a;M=l;r=38;continue}}else if((r|0)==41){r=e+28|0;O=(t[r>>2]|0)+1|0;t[r>>2]=O;r=25;continue}}if((r|0)==153)return di|0;n[y>>1]=1;e=1;return e|0}case 2:{i=e+40|0;if(!(t[i>>2]|0)){ci=e+36|0;$e=ci;ci=t[ci>>2]|0;r=75}else{t[i>>2]=0;b=e+224|0;t[b>>2]=0;_=e+228|0;t[_>>2]=0;k=t[e+192>>2]|0;if(k){w=t[e+196>>2]|0;i=0;r=0;m=0;do{o=t[w+(m<<4)+8>>2]|0;if(o){u=t[w+(m<<4)+12>>2]|0;c=t[w+(m<<4)>>2]|0;h=t[w+(m<<4)+4>>2]|0;d=o+-1|0;a=0;l=0;while(1){s=d+a|0;qe=c<<s+(t[u+(l<<4)>>2]|0);s=h<<(t[u+(l<<4)+4>>2]|0)+s;i=(i|0)==0?qe:i>>>0<qe>>>0?i:qe;r=(r|0)==0?s:r>>>0<s>>>0?r:s;s=l+1|0;if((s|0)==(o|0))break;else{a=~l;l=s}}t[b>>2]=i;t[_>>2]=r}m=m+1|0}while((m|0)!=(k|0))}if(!(f[e>>0]|0)){t[e+104>>2]=t[e+204>>2];t[e+96>>2]=t[e+200>>2];t[e+108>>2]=t[e+212>>2];t[e+100>>2]=t[e+208>>2]}B=t[e+44>>2]|0;t[e+28>>2]=B;r=54}while(1){if((r|0)==54){if(B>>>0>=(t[e+56>>2]|0)>>>0){di=0;r=153;break}Ke=t[e+104>>2]|0;t[e+220>>2]=Ke;r=56}else if((r|0)==75){oi=ci+1|0;t[$e>>2]=oi;Ve=$e;r=71}while(1){if((r|0)==56){if((Ke|0)>=(t[e+108>>2]|0)){r=79;break}We=t[e+96>>2]|0;t[e+216>>2]=We;r=58}else if((r|0)==71){if(oi>>>0<(t[e+52>>2]|0)>>>0){r=73;break}hi=e+24|0;Xe=hi;hi=t[hi>>2]|0;r=76}while(1){if((r|0)==58){if((We|0)>=(t[e+100>>2]|0)){r=78;break}Ze=t[e+48>>2]|0;Ge=e+24|0;t[Ge>>2]=Ze}else if((r|0)==76){Ze=hi+1|0;t[Xe>>2]=Ze;Ge=Xe}if(Ze>>>0>=(t[e+60>>2]|0)>>>0){We=t[e+224>>2]|0;r=e+216|0;qe=t[r>>2]|0;We=qe+We-((qe|0)%(We|0)|0)|0;t[r>>2]=We;r=58;continue}r=t[e+196>>2]|0;h=t[e+28>>2]|0;i=t[r+(Ze<<4)+8>>2]|0;if(h>>>0>=i>>>0){Xe=Ge;hi=Ze;r=76;continue}d=t[r+(Ze<<4)+12>>2]|0;l=i+~h|0;o=t[e+200>>2]|0;u=t[r+(Ze<<4)>>2]|0;Je=u<<l;Qe=(o+-1+Je|0)/(Je|0)|0;c=t[e+204>>2]|0;qe=t[r+(Ze<<4)+4>>2]|0;ei=qe<<l;ii=(c+-1+ei|0)/(ei|0)|0;ri=Je+-1|0;i=(ri+(t[e+208>>2]|0)|0)/(Je|0)|0;fi=ei+-1|0;r=(fi+(t[e+212>>2]|0)|0)/(ei|0)|0;ni=t[d+(h<<4)>>2]|0;a=ni+l|0;ti=t[d+(h<<4)+4>>2]|0;s=ti+l|0;ai=t[e+220>>2]|0;if((ai|0)%(qe<<s|0)|0){if((ai|0)!=(c|0)){Xe=Ge;hi=Ze;r=76;continue}if(!((ii<<l|0)%(1<<s|0)|0)){Xe=Ge;hi=Ze;r=76;continue}}si=t[e+216>>2]|0;if((si|0)%(u<<a|0)|0){if((si|0)!=(o|0)){Xe=Ge;hi=Ze;r=76;continue}if(!((Qe<<l|0)%(1<<a|0)|0)){Xe=Ge;hi=Ze;r=76;continue}}li=t[d+(h<<4)+8>>2]|0;if(!li){Xe=Ge;hi=Ze;r=76;continue}if((ii|0)==(r|0)|((Qe|0)==(i|0)?1:(t[d+(h<<4)+12>>2]|0)==0)){Xe=Ge;hi=Ze;r=76}else{r=70;break}}if((r|0)==70){t[e+32>>2]=(((ri+si|0)/(Je|0)|0)>>ni)-(Qe>>ni)+(ie((((fi+ai|0)/(ei|0)|0)>>ti)-(ii>>ti)|0,li)|0);oi=t[e+64>>2]|0;Ve=e+36|0;t[Ve>>2]=oi;r=71;continue}else if((r|0)==78){Ke=t[e+228>>2]|0;r=e+220|0;qe=t[r>>2]|0;Ke=qe+Ke-((qe|0)%(Ke|0)|0)|0;t[r>>2]=Ke;r=56;continue}}if((r|0)==73){r=0;ui=ie(t[e+8>>2]|0,oi)|0;ui=(ie(t[e+12>>2]|0,t[e+28>>2]|0)|0)+ui|0;ui=ui+(ie(t[e+16>>2]|0,t[e+24>>2]|0)|0)|0;ui=ui+(ie(t[e+20>>2]|0,t[e+32>>2]|0)|0)|0;ui=(t[e+4>>2]|0)+(ui<<1)|0;if(!(n[ui>>1]|0))break;else{$e=Ve;ci=oi;r=75;continue}}else if((r|0)==79){r=e+28|0;B=(t[r>>2]|0)+1|0;t[r>>2]=B;r=54;continue}}if((r|0)==153)return di|0;n[ui>>1]=1;e=1;return e|0}case 3:{r=e+40|0;if(!(t[r>>2]|0)){Ye=t[e+24>>2]|0;ze=e+36|0;_e=ze;ze=t[ze>>2]|0;Fe=Ye;Ye=(t[e+196>>2]|0)+(Ye<<4)|0;r=113}else{t[r>>2]=0;b=e+224|0;t[b>>2]=0;_=e+228|0;t[_>>2]=0;k=t[e+192>>2]|0;if(k){w=t[e+196>>2]|0;i=0;r=0;m=0;do{o=t[w+(m<<4)+8>>2]|0;if(o){u=t[w+(m<<4)+12>>2]|0;c=t[w+(m<<4)>>2]|0;h=t[w+(m<<4)+4>>2]|0;d=o+-1|0;a=0;l=0;while(1){s=d+a|0;hi=c<<s+(t[u+(l<<4)>>2]|0);s=h<<(t[u+(l<<4)+4>>2]|0)+s;i=(i|0)==0?hi:i>>>0<hi>>>0?i:hi;r=(r|0)==0?s:r>>>0<s>>>0?r:s;s=l+1|0;if((s|0)==(o|0))break;else{a=~l;l=s}}t[b>>2]=i;t[_>>2]=r}m=m+1|0}while((m|0)!=(k|0))}if(!(f[e>>0]|0)){i=t[e+204>>2]|0;t[e+104>>2]=i;t[e+96>>2]=t[e+200>>2];t[e+108>>2]=t[e+212>>2];t[e+100>>2]=t[e+208>>2]}else i=t[e+104>>2]|0;t[e+220>>2]=i;r=93}while(1){if((r|0)==93){if((i|0)>=(t[e+108>>2]|0)){di=0;r=153;break}ve=t[e+96>>2]|0;t[e+216>>2]=ve;r=95}else if((r|0)==113){xe=ze+1|0;t[_e>>2]=xe;ke=_e;Le=Fe;je=Ye;r=109}while(1){if((r|0)==95){if((ve|0)>=(t[e+100>>2]|0)){r=117;break}pe=t[e+48>>2]|0;t[e+24>>2]=pe;r=97}else if((r|0)==109){if(xe>>>0<(t[e+52>>2]|0)>>>0){r=111;break}De=e+28|0;we=De;De=t[De>>2]|0;He=Le;qe=je;r=114}while(1){if((r|0)==97){if(pe>>>0>=(t[e+60>>2]|0)>>>0){r=116;break}Ue=(t[e+196>>2]|0)+(pe<<4)|0;ge=t[e+44>>2]|0;me=e+28|0;t[me>>2]=ge;Ne=pe}else if((r|0)==114){ge=De+1|0;t[we>>2]=ge;me=we;Ne=He;Ue=qe}hi=t[e+56>>2]|0;r=t[Ue+8>>2]|0;if(ge>>>0>=(hi>>>0<r>>>0?hi:r)>>>0){pe=Ne+1|0;t[e+24>>2]=pe;r=97;continue}d=t[Ue+12>>2]|0;r=r+~ge|0;a=t[e+200>>2]|0;s=t[Ue>>2]|0;ye=s<<r;Me=(a+-1+ye|0)/(ye|0)|0;l=t[e+204>>2]|0;hi=t[Ue+4>>2]|0;Ae=hi<<r;Ee=(l+-1+Ae|0)/(Ae|0)|0;Se=ye+-1|0;o=(Se+(t[e+208>>2]|0)|0)/(ye|0)|0;Te=Ae+-1|0;u=(Te+(t[e+212>>2]|0)|0)/(Ae|0)|0;Re=t[d+(ge<<4)>>2]|0;c=Re+r|0;Ce=t[d+(ge<<4)+4>>2]|0;h=Ce+r|0;Pe=t[e+220>>2]|0;if((Pe|0)%(hi<<h|0)|0){if((Pe|0)!=(l|0)){we=me;De=ge;He=Ne;qe=Ue;r=114;continue}if(!((Ee<<r|0)%(1<<h|0)|0)){we=me;De=ge;He=Ne;qe=Ue;r=114;continue}}Ie=t[e+216>>2]|0;if((Ie|0)%(s<<c|0)|0){if((Ie|0)!=(a|0)){we=me;De=ge;He=Ne;qe=Ue;r=114;continue}if(!((Me<<r|0)%(1<<c|0)|0)){we=me;De=ge;He=Ne;qe=Ue;r=114;continue}}Oe=t[d+(ge<<4)+8>>2]|0;if(!Oe){we=me;De=ge;He=Ne;qe=Ue;r=114;continue}if((Ee|0)==(u|0)|((Me|0)==(o|0)?1:(t[d+(ge<<4)+12>>2]|0)==0)){we=me;De=ge;He=Ne;qe=Ue;r=114}else{r=108;break}}if((r|0)==108){t[e+32>>2]=(((Se+Ie|0)/(ye|0)|0)>>Re)-(Me>>Re)+(ie((((Te+Pe|0)/(Ae|0)|0)>>Ce)-(Ee>>Ce)|0,Oe)|0);xe=t[e+64>>2]|0;ke=e+36|0;t[ke>>2]=xe;Le=Ne;je=Ue;r=109;continue}else if((r|0)==116){ve=t[e+224>>2]|0;r=e+216|0;hi=t[r>>2]|0;ve=hi+ve-((hi|0)%(ve|0)|0)|0;t[r>>2]=ve;r=95;continue}}if((r|0)==111){r=0;Be=ie(t[e+8>>2]|0,xe)|0;Be=(ie(t[e+12>>2]|0,t[e+28>>2]|0)|0)+Be|0;Be=Be+(ie(t[e+16>>2]|0,Le)|0)|0;Be=Be+(ie(t[e+20>>2]|0,t[e+32>>2]|0)|0)|0;Be=(t[e+4>>2]|0)+(Be<<1)|0;if(!(n[Be>>1]|0))break;else{_e=ke;ze=xe;Fe=Le;Ye=je;r=113;continue}}else if((r|0)==117){i=t[e+228>>2]|0;r=e+220|0;hi=t[r>>2]|0;i=hi+i-((hi|0)%(i|0)|0)|0;t[r>>2]=i;r=93;continue}}if((r|0)==153)return di|0;n[Be>>1]=1;e=1;return e|0}case 4:{i=e+40|0;if(!(t[i>>2]|0)){de=t[e+24>>2]|0;ne=e+36|0;z=ne;ne=t[ne>>2]|0;ae=de;de=(t[e+196>>2]|0)+(de<<4)|0;r=148}else{t[i>>2]=0;H=t[e+48>>2]|0;t[e+24>>2]=H;r=121}while(1){if((r|0)==121){if(H>>>0>=(t[e+60>>2]|0)>>>0){di=0;r=153;break}i=t[e+196>>2]|0;k=i+(H<<4)|0;b=e+224|0;t[b>>2]=0;_=e+228|0;t[_>>2]=0;c=t[i+(H<<4)+8>>2]|0;if(c){h=t[i+(H<<4)+12>>2]|0;d=t[k>>2]|0;s=t[i+(H<<4)+4>>2]|0;l=c+-1|0;r=0;i=0;a=0;u=0;while(1){o=l+a|0;hi=d<<o+(t[h+(u<<4)>>2]|0);o=s<<(t[h+(u<<4)+4>>2]|0)+o;r=(r|0)==0?hi:r>>>0<hi>>>0?r:hi;i=(i|0)==0?o:i>>>0<o>>>0?i:o;o=u+1|0;if((o|0)==(c|0))break;else{a=~u;u=o}}t[b>>2]=r;t[_>>2]=i}if(!(f[e>>0]|0)){i=t[e+204>>2]|0;t[e+104>>2]=i;t[e+96>>2]=t[e+200>>2];t[e+108>>2]=t[e+212>>2];t[e+100>>2]=t[e+208>>2]}else i=t[e+104>>2]|0;t[e+220>>2]=i;x=i;L=H;r=130}else if((r|0)==148){ee=ne+1|0;t[z>>2]=ee;D=z;re=ae;he=de;r=144}while(1){if((r|0)==130){if((x|0)>=(t[e+108>>2]|0)){r=152;break}U=t[e+96>>2]|0;t[e+216>>2]=U;se=L;ue=k;r=132}else if((r|0)==144){if(ee>>>0<(t[e+52>>2]|0)>>>0){r=146;break}te=e+28|0;N=te;te=t[te>>2]|0;oe=re;be=he;r=149}while(1){if((r|0)==132){if((U|0)>=(t[e+100>>2]|0)){r=151;break}j=t[e+44>>2]|0;F=e+28|0;t[F>>2]=j;le=se;ce=ue}else if((r|0)==149){j=te+1|0;t[N>>2]=j;F=N;le=oe;ce=be}hi=t[e+56>>2]|0;i=t[ce+8>>2]|0;if(j>>>0>=(hi>>>0<i>>>0?hi:i)>>>0){U=t[e+224>>2]|0;se=e+216|0;ue=t[se>>2]|0;U=ue+U-((ue|0)%(U|0)|0)|0;t[se>>2]=U;se=le;ue=ce;r=132;continue}h=t[ce+12>>2]|0;i=i+~j|0;r=t[e+200>>2]|0;a=t[ce>>2]|0;Y=a<<i;q=(r+-1+Y|0)/(Y|0)|0;s=t[e+204>>2]|0;hi=t[ce+4>>2]|0;$=hi<<i;V=(s+-1+$|0)/($|0)|0;X=Y+-1|0;l=(X+(t[e+208>>2]|0)|0)/(Y|0)|0;G=$+-1|0;o=(G+(t[e+212>>2]|0)|0)/($|0)|0;K=t[h+(j<<4)>>2]|0;u=K+i|0;W=t[h+(j<<4)+4>>2]|0;c=W+i|0;Z=t[e+220>>2]|0;if((Z|0)%(hi<<c|0)|0){if((Z|0)!=(s|0)){N=F;te=j;oe=le;be=ce;r=149;continue}if(!((V<<i|0)%(1<<c|0)|0)){N=F;te=j;oe=le;be=ce;r=149;continue}}J=t[e+216>>2]|0;if((J|0)%(a<<u|0)|0){if((J|0)!=(r|0)){N=F;te=j;oe=le;be=ce;r=149;continue}if(!((q<<i|0)%(1<<u|0)|0)){N=F;te=j;oe=le;be=ce;r=149;continue}}Q=t[h+(j<<4)+8>>2]|0;if(!Q){N=F;te=j;oe=le;be=ce;r=149;continue}if((V|0)==(o|0)|((q|0)==(l|0)?1:(t[h+(j<<4)+12>>2]|0)==0)){N=F;te=j;oe=le;be=ce;r=149}else{r=143;break}}if((r|0)==143){t[e+32>>2]=(((X+J|0)/(Y|0)|0)>>K)-(q>>K)+(ie((((G+Z|0)/($|0)|0)>>W)-(V>>W)|0,Q)|0);ee=t[e+64>>2]|0;D=e+36|0;t[D>>2]=ee;re=le;he=ce;r=144;continue}else if((r|0)==151){x=t[e+228>>2]|0;L=e+220|0;k=t[L>>2]|0;x=k+x-((k|0)%(x|0)|0)|0;t[L>>2]=x;L=se;k=ue;r=130;continue}}if((r|0)==146){r=0;fe=ie(t[e+8>>2]|0,ee)|0;fe=(ie(t[e+12>>2]|0,t[e+28>>2]|0)|0)+fe|0;fe=fe+(ie(t[e+16>>2]|0,re)|0)|0;fe=fe+(ie(t[e+20>>2]|0,t[e+32>>2]|0)|0)|0;fe=(t[e+4>>2]|0)+(fe<<1)|0;if(!(n[fe>>1]|0))break;else{z=D;ne=ee;ae=re;de=he;r=148;continue}}else if((r|0)==152){H=L+1|0;t[e+24>>2]=H;r=121;continue}}if((r|0)==153)return di|0;n[fe>>1]=1;e=1;return e|0}default:{e=0;return e|0}}return 0}function Sr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0;c=(t[i+(r*5640|0)+420>>2]|0)+1|0;f=Fn(c,232)|0;if(!f){c=0;return c|0}if(!c){c=f;return c|0}o=e+16|0;a=i+(r*5640|0)+5584|0;e=t[o>>2]|0;s=f;l=0;e:while(1){i=Fn(e,16)|0;n=s+196|0;t[n>>2]=i;if(!i){e=5;break}u=t[o>>2]|0;t[s+192>>2]=u;i:do{if(!u)e=0;else{e=(t[a>>2]|0)+4|0;u=Fn(t[e>>2]|0,16)|0;t[i+12>>2]=u;if(!u){e=18;break e}else r=0;while(1){t[i+(r<<4)+8>>2]=t[e>>2];r=r+1|0;e=t[o>>2]|0;if(r>>>0>=e>>>0)break i;i=t[n>>2]|0;e=(t[a>>2]|0)+(r*1080|0)+4|0;u=Fn(t[e>>2]|0,16)|0;t[i+(r<<4)+12>>2]=u;if(!u){e=18;break e}}}}while(0);l=l+1|0;if(l>>>0>=c>>>0){e=32;break}else s=s+232|0}if((e|0)==5){e=f+4|0;i=t[e>>2]|0;if(!i){o=f;u=0}else{Yn(i);t[e>>2]=0;o=f;u=0}while(1){l=o+196|0;e=t[l>>2]|0;if(e){s=o+192|0;i=t[s>>2]|0;if(i){a=0;while(1){r=e+12|0;n=t[r>>2]|0;if(n){Yn(n);t[r>>2]=0;i=t[s>>2]|0}a=a+1|0;if(a>>>0>=i>>>0)break;else e=e+16|0}e=t[l>>2]|0}Yn(e);t[l>>2]=0}u=u+1|0;if((u|0)==(c|0))break;else o=o+232|0}Yn(f);c=0;return c|0}else if((e|0)==18){e=f+4|0;i=t[e>>2]|0;if(!i){o=f;u=0}else{Yn(i);t[e>>2]=0;o=f;u=0}while(1){l=o+196|0;e=t[l>>2]|0;if(e){s=o+192|0;i=t[s>>2]|0;if(i){a=0;while(1){r=e+12|0;n=t[r>>2]|0;if(n){Yn(n);t[r>>2]=0;i=t[s>>2]|0}a=a+1|0;if(a>>>0>=i>>>0)break;else e=e+16|0}e=t[l>>2]|0}Yn(e);t[l>>2]=0}u=u+1|0;if((u|0)==(c|0))break;else o=o+232|0}Yn(f);c=0;return c|0}else if((e|0)==32)return f|0;return 0}function Tr(e,i,r,f,n,a,s,l,o,u,c,h){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;h=h|0;var d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,O=0,x=0,L=0,B=0,z=0;b=t[(t[i+76>>2]|0)+(r*5640|0)+5584>>2]|0;d=t[e+24>>2]|0;L=t[i+24>>2]|0;x=i+12|0;O=(ie(t[x>>2]|0,(r>>>0)%(L>>>0)|0)|0)+(t[i+4>>2]|0)|0;P=t[e>>2]|0;t[f>>2]=O>>>0>P>>>0?O:P;O=Bl(t[x>>2]|0,0,O|0,0)|0;O=O|0-I;x=t[e+8>>2]|0;t[n>>2]=O>>>0<x>>>0?O:x;x=i+16|0;L=(ie(t[x>>2]|0,(r>>>0)/(L>>>0)|0)|0)+(t[i+8>>2]|0)|0;O=t[e+4>>2]|0;t[a>>2]=L>>>0>O>>>0?L:O;L=Bl(t[x>>2]|0,0,L|0,0)|0;L=L|0-I;x=t[e+12>>2]|0;t[s>>2]=L>>>0<x>>>0?L:x;t[u>>2]=0;t[c>>2]=0;t[l>>2]=2147483647;t[o>>2]=2147483647;x=e+16|0;if(!(t[x>>2]|0))return;else L=0;while(1){w=t[h+(L<<2)>>2]|0;_=t[d>>2]|0;e=((t[f>>2]|0)+-1+_|0)/(_|0)|0;P=d+4|0;k=t[P>>2]|0;r=((t[a>>2]|0)+-1+k|0)/(k|0)|0;_=(_+-1+(t[n>>2]|0)|0)/(_|0)|0;k=(k+-1+(t[s>>2]|0)|0)/(k|0)|0;O=b+4|0;i=t[O>>2]|0;if(i>>>0>(t[c>>2]|0)>>>0){t[c>>2]=i;i=t[O>>2]|0}if(i){R=Bl(e|0,((e|0)<0)<<31>>31|0,-1,-1)|0;C=I;S=Bl(r|0,((r|0)<0)<<31>>31|0,-1,-1)|0;T=I;A=Bl(_|0,((_|0)<0)<<31>>31|0,-1,-1)|0;E=I;y=Bl(k|0,((k|0)<0)<<31>>31|0,-1,-1)|0;M=I;g=0;while(1){i=i+-1|0;_=t[b+812+(g<<2)>>2]|0;p=t[b+944+(g<<2)>>2]|0;t[w>>2]=_;t[w+4>>2]=p;m=t[d>>2]<<_+i;B=t[P>>2]<<p+i;e=t[l>>2]|0;t[l>>2]=(e|0)<(m|0)?e:m;m=t[o>>2]|0;t[o>>2]=(m|0)<(B|0)?m:B;B=Ll(1,0,i|0)|0;m=I;e=Bl(R|0,C|0,B|0,m|0)|0;e=Ol(e|0,I|0,i|0)|0;k=Bl(S|0,T|0,B|0,m|0)|0;k=Ol(k|0,I|0,i|0)|0;r=Bl(A|0,E|0,B|0,m|0)|0;r=Ol(r|0,I|0,i|0)|0;m=Bl(y|0,M|0,B|0,m|0)|0;m=Ol(m|0,I|0,i|0)|0;B=Ll(1,0,p|0)|0;v=I;z=Bl(m|0,((m|0)<0)<<31>>31|0,-1,-1)|0;v=Bl(z|0,I|0,B|0,v|0)|0;v=Ol(v|0,I|0,p|0)|0;if((e|0)==(r|0))e=0;else{r=Bl(r|0,((r|0)<0)<<31>>31|0,-1,-1)|0;B=I;z=Ll(1,0,_|0)|0;z=Bl(r|0,B|0,z|0,I|0)|0;z=Ol(z|0,I|0,_|0)|0;e=(z<<_)-(e>>_<<_)>>_}z=(k|0)==(m|0)?0:(v<<p)-(k>>p<<p)>>p;t[w+8>>2]=e;t[w+12>>2]=z;e=ie(e,z)|0;if(e>>>0>(t[u>>2]|0)>>>0)t[u>>2]=e;g=g+1|0;if(g>>>0>=(t[O>>2]|0)>>>0)break;else w=w+16|0}}L=L+1|0;if(L>>>0>=(t[x>>2]|0)>>>0)break;else{d=d+52|0;b=b+1080|0}}return}function Rr(e,i,r,f,n,a,s,l,o){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var u=0,c=0;u=(t[e+(i*5640|0)+420>>2]|0)+1|0;t[e+(i*5640|0)+500>>2]=t[e+(i*5640|0)+428>>2];t[e+(i*5640|0)+516>>2]=t[e+(i*5640|0)+440>>2];t[e+(i*5640|0)+496>>2]=t[e+(i*5640|0)+424>>2];t[e+(i*5640|0)+512>>2]=t[e+(i*5640|0)+436>>2];t[e+(i*5640|0)+508>>2]=t[e+(i*5640|0)+432>>2];t[e+(i*5640|0)+492>>2]=0;t[e+(i*5640|0)+460>>2]=t[e+(i*5640|0)+456>>2];t[e+(i*5640|0)+504>>2]=0;t[e+(i*5640|0)+520>>2]=s;t[e+(i*5640|0)+524>>2]=r;t[e+(i*5640|0)+528>>2]=f;t[e+(i*5640|0)+532>>2]=n;t[e+(i*5640|0)+536>>2]=a;t[e+(i*5640|0)+540>>2]=l;t[e+(i*5640|0)+544>>2]=o;if(u>>>0<=1)return;e=e+(i*5640|0)+572|0;i=1;while(1){t[e+76>>2]=t[e+4>>2];t[e+92>>2]=t[e+16>>2];t[e+72>>2]=t[e>>2];t[e+88>>2]=t[e+12>>2];c=t[e+8>>2]|0;t[e+84>>2]=c;t[e+36>>2]=t[e+32>>2];t[e+80>>2]=0;t[e+68>>2]=c>>>0>(t[e+-64>>2]|0)>>>0?c:0;t[e+96>>2]=s;t[e+100>>2]=r;t[e+104>>2]=f;t[e+108>>2]=n;t[e+112>>2]=a;t[e+116>>2]=l;t[e+120>>2]=o;i=i+1|0;if((i|0)==(u|0))break;else e=e+148|0}return}function Cr(e,i,r,n,a){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;var s=0,l=0,o=0;o=t[i+76>>2]|0;if((e|0)>-1)s=e;else{r=0;return r|0}e:while(1){switch(f[a+s>>0]|0){case 82:{l=3;break e}case 67:{l=5;break e}case 76:{l=7;break e}case 80:{l=9;break e}default:{}}s=s+-1|0}if((l|0)==3)if((t[o+(r*5640|0)+424+(n*148|0)+128>>2]|0)==(t[o+(r*5640|0)+424+(n*148|0)+88>>2]|0))return(Cr(e+-1|0,i,r,n,a)|0)!=0|0;else{r=1;return r|0}else if((l|0)==5)if((t[o+(r*5640|0)+424+(n*148|0)+132>>2]|0)==(t[o+(r*5640|0)+424+(n*148|0)+92>>2]|0))return(Cr(e+-1|0,i,r,n,a)|0)!=0|0;else{r=1;return r|0}else if((l|0)==7)if((t[o+(r*5640|0)+424+(n*148|0)+124>>2]|0)==(t[o+(r*5640|0)+424+(n*148|0)+84>>2]|0))return(Cr(e+-1|0,i,r,n,a)|0)!=0|0;else{r=1;return r|0}else if((l|0)==9){if((t[o+(r*5640|0)+424+(n*148|0)+36>>2]|0)>>>0<2)if((t[o+(r*5640|0)+424+(n*148|0)+136>>2]|0)==(t[o+(r*5640|0)+424+(n*148|0)+96>>2]|0))return(Cr(s+-1|0,i,r,n,a)|0)!=0|0;else{r=1;return r|0}if((t[o+(r*5640|0)+424+(n*148|0)+140>>2]|0)!=(t[o+(r*5640|0)+424+(n*148|0)+104>>2]|0)){r=1;return r|0}if((t[o+(r*5640|0)+424+(n*148|0)+144>>2]|0)==(t[o+(r*5640|0)+424+(n*148|0)+112>>2]|0))return(Cr(s+-1|0,i,r,n,a)|0)!=0|0;else{r=1;return r|0}}return 0}function Pr(e){e=e|0;var i=0,r=0;i=Fn(1,44)|0;if(!i){e=0;return e|0}r=i+40|0;f[r>>0]=f[r>>0]&-2|(e|0)!=0;e=Fn(1,4)|0;t[i+20>>2]=e;if(e){r=i;return r|0}Yn(i);r=0;return r|0}function Ir(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0.0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0;H=c;c=c+1200|0;F=H;f=t[t[e+20>>2]>>2]|0;N=f+16|0;n=t[N>>2]|0;if(!n){c=H;return}B=f+20|0;z=(t[e+32>>2]|0)+8|0;D=(t[e+28>>2]|0)+88|0;x=e+24|0;L=(i|0)==0;I=(r|0)==0;O=i+-1|0;f=n;P=0;do{l=t[B>>2]|0;o=t[z>>2]|0;R=t[l+(P*52|0)+16>>2]|0;if(o){if(R){e=t[D>>2]|0;a=+((t[(t[(t[x>>2]|0)+24>>2]|0)+(P*52|0)+24>>2]|0)>>>0)*.0625;n=0;do{r=ie(R,n)|0;s=0;do{C=(r+s|0)*3|0;t[F+(n*120|0)+(s*12|0)>>2]=~~(+(t[e+(C<<2)>>2]|0)*a);t[F+(n*120|0)+(s*12|0)+4>>2]=~~(+(t[e+(C+1<<2)>>2]|0)*a);t[F+(n*120|0)+(s*12|0)+8>>2]=~~(+(t[e+(C+2<<2)>>2]|0)*a);s=s+1|0}while(s>>>0<R>>>0);n=n+1|0}while(n>>>0<o>>>0);C=9}}else C=9;if((C|0)==9){C=0;if(R){y=l+(P*52|0)+24|0;T=0;do{M=t[y>>2]|0;A=M+(T*136|0)+24|0;f=t[A>>2]|0;if(f){E=M+(T*136|0)+16|0;S=M+(T*136|0)+20|0;e=t[S>>2]|0;r=t[E>>2]|0;g=0;do{if(ie(e,r)|0){m=M+(T*136|0)+28+(g*36|0)+20|0;v=F+(i*120|0)+(T*12|0)+(g<<2)|0;p=F+(O*120|0)+(T*12|0)+(g<<2)|0;w=0;do{f=t[m>>2]|0;k=ie(t[f+(w*40|0)+20>>2]|0,t[f+(w*40|0)+16>>2]|0)|0;if(k){h=f+(w*40|0)+24|0;d=t[v>>2]|0;_=0;do{o=t[h>>2]|0;u=o+(_*52|0)|0;b=t[o+(_*52|0)+4>>2]|0;f=(t[(t[(t[x>>2]|0)+24>>2]|0)+(P*52|0)+24>>2]|0)-(t[o+(_*52|0)+28>>2]|0)|0;if(!L){e=t[p>>2]|0;r=d-e|0;if((e|0)<=(f|0)){r=r+(e-f)|0;r=(r|0)<0?0:r}}else{t[o+(_*52|0)+44>>2]=0;r=(d|0)>(f|0)?d-f|0:0}l=o+(_*52|0)+44|0;n=t[l>>2]|0;s=(n|0)==0;if(s)if(!r)r=0;else r=(r*3|0)+-2|0;else r=(r*3|0)+n|0;t[b+(i*24|0)>>2]=r-n;do{if((r|0)!=(n|0)){e=t[o+(_*52|0)+8>>2]|0;f=t[e+((r+-1|0)*24|0)>>2]|0;if(s)t[b+(i*24|0)+16>>2]=t[u>>2];else{o=t[e+((n+-1|0)*24|0)>>2]|0;t[b+(i*24|0)+16>>2]=(t[u>>2]|0)+o;f=f-o|0}t[b+(i*24|0)+4>>2]=f;if(I)break;t[l>>2]=r}}while(0);_=_+1|0}while(_>>>0<k>>>0);e=t[S>>2]|0;r=t[E>>2]|0}w=w+1|0}while(w>>>0<(ie(e,r)|0)>>>0);f=t[A>>2]|0}g=g+1|0}while(g>>>0<f>>>0)}T=T+1|0}while(T>>>0<R>>>0);f=t[N>>2]|0}}P=P+1|0}while(P>>>0<f>>>0);c=H;return}function Or(e,i,r,f){e=e|0;i=i|0;r=+r;f=f|0;var n=0,a=0.0,s=0,l=0,o=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0;e=t[t[e+20>>2]>>2]|0;O=e+40+(i<<3)|0;u[O>>3]=0.0;x=e+16|0;n=t[x>>2]|0;if(!n)return;P=e+20|0;I=(i|0)==0;C=(f|0)==0;e=n;R=0;do{n=t[P>>2]|0;T=t[n+(R*52|0)+16>>2]|0;if(T){g=n+(R*52|0)+24|0;S=0;do{y=t[g>>2]|0;M=y+(S*136|0)+24|0;e=t[M>>2]|0;if(e){A=y+(S*136|0)+16|0;E=y+(S*136|0)+20|0;n=t[E>>2]|0;f=t[A>>2]|0;p=0;do{if(ie(n,f)|0){v=y+(S*136|0)+28+(p*36|0)+20|0;m=0;do{e=t[v>>2]|0;w=ie(t[e+(m*40|0)+20>>2]|0,t[e+(m*40|0)+16>>2]|0)|0;if(w){d=e+(m*40|0)+24|0;k=0;do{o=t[d>>2]|0;c=o+(k*52|0)|0;b=t[o+(k*52|0)+4>>2]|0;_=o+(k*52|0)+44|0;if(I){t[_>>2]=0;h=0}else h=t[_>>2]|0;f=t[o+(k*52|0)+48>>2]|0;if(h>>>0<f>>>0){s=t[o+(k*52|0)+8>>2]|0;e=h;l=h;do{n=t[s+(l*24|0)>>2]|0;a=+u[s+(l*24|0)+8>>3];if(e){B=e+-1|0;a=a-+u[s+(B*24|0)+8>>3];n=n-(t[s+(B*24|0)>>2]|0)|0}do{if(!n){if(!(a!=0.0))break;e=l+1|0}else{if(!(r-a/+(n>>>0)<2.220446049250313e-16))break;e=l+1|0}}while(0);l=l+1|0}while(l>>>0<f>>>0);s=e;t[b+(i*24|0)>>2]=s-h;if((s|0)!=(h|0)){f=s+-1|0;n=t[o+(k*52|0)+8>>2]|0;e=t[n+(f*24|0)>>2]|0;if(!h){t[b+(i*24|0)+16>>2]=t[c>>2];a=+u[n+(f*24|0)+8>>3]}else{h=h+-1|0;B=t[n+(h*24|0)>>2]|0;t[b+(i*24|0)+16>>2]=(t[c>>2]|0)+B;a=+u[n+(f*24|0)+8>>3]-+u[n+(h*24|0)+8>>3];e=e-B|0}t[b+(i*24|0)+4>>2]=e;u[b+(i*24|0)+8>>3]=a;u[O>>3]=a+ +u[O>>3];if(!C)t[_>>2]=s}else L=26}else{t[b+(i*24|0)>>2]=0;L=26}if((L|0)==26){L=0;u[b+(i*24|0)+8>>3]=0.0}k=k+1|0}while(k>>>0<w>>>0);n=t[E>>2]|0;f=t[A>>2]|0}m=m+1|0}while(m>>>0<(ie(n,f)|0)>>>0);e=t[M>>2]|0}p=p+1|0}while(p>>>0<e>>>0)}S=S+1|0}while(S>>>0<T>>>0);e=t[x>>2]|0}R=R+1|0}while(R>>>0<e>>>0);return}function xr(e,i,r,a,s){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;var l=0,h=0,d=0.0,b=0.0,_=0.0,k=0.0,w=0.0,m=0.0,v=0,p=0,g=0,y=0,M=0.0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0.0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,$=0,V=0,X=0,G=0,K=0;G=c;c=c+800|0;X=G;Y=t[e+28>>2]|0;$=t[t[e+20>>2]>>2]|0;V=t[e+32>>2]|0;H=$+24|0;t[H>>2]=0;U=t[$+16>>2]|0;if(!U){l=0;B=0.0;d=0.0;_=1797693134862315708145274.0e284}else{N=t[$+20>>2]|0;F=t[(t[e+24>>2]|0)+24>>2]|0;l=0;j=0;b=0.0;d=0.0;_=1797693134862315708145274.0e284;do{L=N+(j*52|0)+48|0;t[L>>2]=0;z=t[N+(j*52|0)+16>>2]|0;if(!z)h=0;else{D=t[N+(j*52|0)+24>>2]|0;h=0;x=0;do{P=t[D+(x*136|0)+24>>2]|0;if(P){I=ie(t[D+(x*136|0)+20>>2]|0,t[D+(x*136|0)+16>>2]|0)|0;O=(I|0)==0;C=0;do{if(!O){R=t[D+(x*136|0)+28+(C*36|0)+20>>2]|0;T=0;do{E=ie(t[R+(T*40|0)+20>>2]|0,t[R+(T*40|0)+16>>2]|0)|0;if(E){S=t[R+(T*40|0)+24>>2]|0;A=0;do{g=t[S+(A*52|0)+48>>2]|0;if(g){y=t[S+(A*52|0)+8>>2]|0;p=0;do{v=t[y+(p*24|0)>>2]|0;k=+u[y+(p*24|0)+8>>3];if(p){K=p+-1|0;k=k-+u[y+(K*24|0)+8>>3];v=v-(t[y+(K*24|0)>>2]|0)|0}do{if(v){k=k/+(v|0);_=k<_?k:_;if(!(k>b))break;b=k}}while(0);p=p+1|0}while(p>>>0<g>>>0)}K=ie((t[S+(A*52|0)+24>>2]|0)-(t[S+(A*52|0)+16>>2]|0)|0,(t[S+(A*52|0)+20>>2]|0)-(t[S+(A*52|0)+12>>2]|0)|0)|0;l=K+l|0;h=K+h|0;A=A+1|0}while(A>>>0<E>>>0);t[H>>2]=l;t[L>>2]=h}T=T+1|0}while(T>>>0<I>>>0)}C=C+1|0}while(C>>>0<P>>>0)}x=x+1|0}while(x>>>0<z>>>0)}B=+(1<<t[F+(j*52|0)+24>>2]|0)+-1.0;d=d+ +(h|0)*(B*B);j=j+1|0}while(j>>>0<U>>>0);B=b}L=(s|0)!=0;if(L){j=t[e+36>>2]|0;U=t[s+88>>2]|0;t[U+(j*592|0)+552>>2]=l;u[U+(j*592|0)+560>>3]=+u[$+32>>3];l=V+8|0;K=Nn(t[l>>2]<<3)|0;t[U+(j*592|0)>>2]=K;if(!K){K=0;c=G;return K|0}}else l=V+8|0;if(!(t[l>>2]|0)){K=1;c=G;return K|0}E=$+32|0;S=Y+93|0;T=e+36|0;R=s+88|0;C=$+40|0;P=e+24|0;I=e+8|0;O=e+16|0;x=0;while(1){b=+o[V+20+(x<<2)>>2];if(b!=0.0){y=~~+ee(+b)>>>0;y=y>>>0<a>>>0?y:a}else y=a;m=+o[V+5184+(x<<2)>>2];M=+u[E>>3]-d/+q(10.0,+(m/10.0));K=f[S>>0]|0;if(!((K&1)!=0&b>0.0)?!((K&4)!=0&m>0.0):0)b=_;else{A=Ga(t[P>>2]|0,Y)|0;if(!A){l=0;h=57;break}g=x+1|0;h=X+(x+-1<<3)|0;v=$+40+(x<<3)|0;if(!x){w=B;h=0;m=_;k=0.0;do{b=(m+w)*.5;Or(e,0,b,0);do{if(f[S>>0]&4){if(((n[Y>>1]|0)+-3&65535)>=4){K=+u[C>>3]<M;w=K?b:w;m=K?m:b;k=K?b:k;break}if(!(Va(A,t[T>>2]|0,$,g,i,r,y,s,t[I>>2]|0,t[e>>2]|0,t[O>>2]|0,0)|0))m=b;else{K=+u[C>>3]<M;w=K?b:w;m=K?m:b;k=K?b:k}}else{K=(Va(A,t[T>>2]|0,$,g,i,r,y,s,t[I>>2]|0,t[e>>2]|0,t[O>>2]|0,0)|0)==0;w=K?w:b;m=K?b:m;k=K?k:b}}while(0);h=h+1|0}while((h|0)!=128)}else{w=B;p=0;m=_;k=0.0;do{b=(m+w)*.5;Or(e,x,b,0);do{if(f[S>>0]&4){if(((n[Y>>1]|0)+-3&65535)>=4){K=+u[h>>3]+ +u[v>>3]<M;w=K?b:w;m=K?m:b;k=K?b:k;break}if(!(Va(A,t[T>>2]|0,$,g,i,r,y,s,t[I>>2]|0,t[e>>2]|0,t[O>>2]|0,0)|0))m=b;else{K=+u[h>>3]+ +u[v>>3]<M;w=K?b:w;m=K?m:b;k=K?b:k}}else{K=(Va(A,t[T>>2]|0,$,g,i,r,y,s,t[I>>2]|0,t[e>>2]|0,t[O>>2]|0,0)|0)==0;w=K?w:b;m=K?b:m;k=K?k:b}}while(0);p=p+1|0}while((p|0)!=128)}Ka(A);b=k==0.0?b:k}if(L)u[(t[(t[R>>2]|0)+((t[T>>2]|0)*592|0)>>2]|0)+(x<<3)>>3]=b;Or(e,x,b,1);if(!x)b=+u[C>>3];else b=+u[X+(x+-1<<3)>>3]+ +u[$+40+(x<<3)>>3];u[X+(x<<3)>>3]=b;x=x+1|0;if(x>>>0>=(t[l>>2]|0)>>>0){l=1;h=57;break}}if((h|0)==57){c=G;return l|0}return 0}function Lr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0;t[e+24>>2]=i;t[e+28>>2]=r;n=Fn(1,848)|0;f=e+20|0;t[t[f>>2]>>2]=n;if(!n){e=0;return e|0}n=i+16|0;a=Fn(t[n>>2]|0,52)|0;i=t[t[f>>2]>>2]|0;t[i+20>>2]=a;if(!a){a=0;return a|0}t[i+16>>2]=t[n>>2];t[e>>2]=t[r+84>>2];a=1;return a|0}function Br(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0;if(!e)return;m=e+20|0;i=t[m>>2]|0;do{if(i){w=(f[e+40>>0]&1)==0?3:4;r=t[i>>2]|0;if(r){b=r+20|0;u=r+16|0;if(t[u>>2]|0){h=0;d=t[b>>2]|0;while(1){c=d+24|0;i=t[c>>2]|0;if(i){l=t[d+28>>2]|0;o=(l>>>0)/136|0;if(l>>>0>135){l=0;while(1){s=i+48|0;r=t[s>>2]|0;if(r){n=t[i+52>>2]|0;a=(n>>>0)/40|0;if(n>>>0>39){n=0;while(1){v=r+32|0;fa(t[v>>2]|0);t[v>>2]=0;v=r+36|0;fa(t[v>>2]|0);t[v>>2]=0;yo[w&7](r);n=n+1|0;if(n>>>0>=a>>>0)break;else r=r+40|0}r=t[s>>2]|0}Yn(r);t[s>>2]=0}s=i+84|0;r=t[s>>2]|0;if(r){v=t[i+88>>2]|0;a=(v>>>0)/40|0;if(v>>>0>39){n=0;while(1){v=r+32|0;fa(t[v>>2]|0);t[v>>2]=0;v=r+36|0;fa(t[v>>2]|0);t[v>>2]=0;yo[w&7](r);n=n+1|0;if(n>>>0>=a>>>0)break;else r=r+40|0}r=t[s>>2]|0}Yn(r);t[s>>2]=0}s=i+120|0;r=t[s>>2]|0;if(r){v=t[i+124>>2]|0;a=(v>>>0)/40|0;if(v>>>0>39){n=0;while(1){v=r+32|0;fa(t[v>>2]|0);t[v>>2]=0;v=r+36|0;fa(t[v>>2]|0);t[v>>2]=0;yo[w&7](r);n=n+1|0;if(n>>>0>=a>>>0)break;else r=r+40|0}r=t[s>>2]|0}Yn(r);t[s>>2]=0}l=l+1|0;if(l>>>0>=o>>>0)break;else i=i+136|0}i=t[c>>2]|0}Yn(i);t[c>>2]=0}if((t[d+36>>2]|0)!=0?(_=d+32|0,k=t[_>>2]|0,(k|0)!=0):0){Un(k);t[_>>2]=0;t[_+4>>2]=0;t[_+8>>2]=0;t[_+12>>2]=0}h=h+1|0;if(h>>>0>=(t[u>>2]|0)>>>0)break;else d=d+52|0}}Yn(t[b>>2]|0);t[b>>2]=0;Yn(t[t[m>>2]>>2]|0);i=t[m>>2]|0;t[i>>2]=0;if(!i)break}Yn(i);t[m>>2]=0}}while(0);Yn(e);return}function zr(e){e=e|0;var i=0,r=0,f=0,n=0,a=0;f=e+32|0;n=t[f>>2]|0;i=e+40|0;r=t[i>>2]|0;if(n){a=e+44|0;if(r>>>0<=(t[a>>2]|0)>>>0){e=1;return e|0}if(t[e+36>>2]|0){Un(n);n=Hn(t[i>>2]|0)|0;t[f>>2]=n;if(!n){t[a>>2]=0;t[i>>2]=0;t[e+36>>2]=0;e=0;return e|0}else{t[a>>2]=t[i>>2];t[e+36>>2]=1;e=1;return e|0}}}a=Hn(r)|0;t[f>>2]=a;if(!a){e=0;return e|0}t[e+44>>2]=t[i>>2];t[e+36>>2]=1;e=1;return e|0}function Dr(e,i,r){e=e|0;i=i|0;r=r|0;return Xr(e,i,1,1.0,52,r)|0}function Nr(e,i,r){e=e|0;i=i|0;r=r|0;return Xr(e,i,0,.5,56,r)|0}function Fr(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0,l=0;r=t[e+24>>2]|0;n=t[r+16>>2]|0;if(!n){a=0;return a|0}a=0;i=0;f=t[r+24>>2]|0;r=t[(t[t[e+20>>2]>>2]|0)+20>>2]|0;while(1){l=t[f+24>>2]|0;l=((l&7|0)!=0&1)+(l>>>3)|0;s=t[r+24>>2]|0;e=(t[r+20>>2]|0)+-1|0;i=(ie(ie((l|0)==3?4:l,(t[s+(e*136|0)+8>>2]|0)-(t[s+(e*136|0)>>2]|0)|0)|0,(t[s+(e*136|0)+12>>2]|0)-(t[s+(e*136|0)+4>>2]|0)|0)|0)+i|0;a=a+1|0;if(a>>>0>=n>>>0)break;else{f=f+52|0;r=r+52|0}}return i|0}function Hr(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0;A=c;c=c+16|0;y=A;if(!(t[e+8>>2]|0)){t[e+36>>2]=i;p=e+28|0;l=t[(t[p>>2]|0)+76>>2]|0;M=e+32|0;t[M>>2]=l+(i*5640|0);g=(s|0)==0;v=e+20|0;if(!g){o=t[(t[t[v>>2]>>2]|0)+20>>2]|0;b=t[l+(i*5640|0)+5584>>2]|0;_=o+16|0;if(!(t[_>>2]|0)){o=s+88|0;l=0}else{u=t[o+24>>2]|0;o=s+88|0;h=t[o>>2]|0;d=0;l=0;do{m=u+(d*136|0)+16|0;t[h+(i*592|0)+20+(d<<2)>>2]=t[m>>2];w=u+(d*136|0)+20|0;t[h+(i*592|0)+152+(d<<2)>>2]=t[w>>2];l=(ie(t[w>>2]|0,t[m>>2]|0)|0)+l|0;t[h+(i*592|0)+284+(d<<2)>>2]=t[b+812+(d<<2)>>2];t[h+(i*592|0)+416+(d<<2)>>2]=t[b+944+(d<<2)>>2];d=d+1|0}while(d>>>0<(t[_>>2]|0)>>>0)}m=Fn(ie(ie(t[s+52>>2]|0,l)|0,t[s+56>>2]|0)|0,32)|0;t[(t[o>>2]|0)+(i*592|0)+548>>2]=m;if(!m){e=0;c=A;return e|0}}l=t[t[v>>2]>>2]|0;m=l+16|0;if(!(t[m>>2]|0)){d=t[M>>2]|0;u=0;o=t[l+20>>2]|0}else{d=t[M>>2]|0;o=t[l+20>>2]|0;i=0;k=t[d+5584>>2]|0;w=o;while(1){b=t[w+32>>2]|0;_=ie((t[w+12>>2]|0)-(t[w+4>>2]|0)|0,(t[w+8>>2]|0)-(t[w>>2]|0)|0)|0;l=(_|0)==0;if((t[k+20>>2]|0)==1){if(!l){u=k+1076|0;h=0;l=b;while(1){t[l>>2]=(t[l>>2]|0)-(t[u>>2]|0);h=h+1|0;if((h|0)==(_|0))break;else l=l+4|0}}}else if(!l){u=k+1076|0;h=0;l=b;while(1){t[l>>2]=(t[l>>2]|0)-(t[u>>2]|0)<<11;h=h+1|0;if((h|0)==(_|0))break;else l=l+4|0}}i=i+1|0;u=t[m>>2]|0;if(i>>>0>=u>>>0)break;else{k=k+1080|0;w=w+52|0}}}b=ie((t[o+12>>2]|0)-(t[o+4>>2]|0)|0,(t[o+8>>2]|0)-(t[o>>2]|0)|0)|0;e:do{switch(t[d+16>>2]|0){case 0:break;case 2:{if(t[d+5608>>2]|0){h=Nn(u<<2)|0;if(!h){e=0;c=A;return e|0}l=t[m>>2]|0;if(!l)l=0;else{u=0;while(1){t[h+(u<<2)>>2]=t[o+32>>2];u=u+1|0;if((u|0)==(l|0))break;else o=o+52|0}}m=(wr(t[(t[M>>2]|0)+5608>>2]|0,b,h,l,t[(t[(t[e+24>>2]|0)+24>>2]|0)+32>>2]|0)|0)==0;Yn(h);if(m){e=0;c=A;return e|0}}break}default:{u=t[o+32>>2]|0;h=t[o+84>>2]|0;l=t[o+136>>2]|0;if(!(t[(t[d+5584>>2]|0)+20>>2]|0)){_r(u,h,l,b);break e}else{dr(u,h,l,b);break e}}}}while(0);l=t[t[v>>2]>>2]|0;o=l+16|0;e:do{if(t[o>>2]|0){u=0;h=t[(t[M>>2]|0)+5584>>2]|0;l=t[l+20>>2]|0;i:while(1){switch(t[h+20>>2]|0){case 1:{if(!(ya(l)|0)){l=0;o=54;break i}break}case 0:{if(!(Sa(l)|0)){l=0;o=54;break i}break}default:{}}u=u+1|0;if(u>>>0>=(t[o>>2]|0)>>>0)break e;else{h=h+1080|0;l=l+52|0}}if((o|0)==54){c=A;return l|0}}}while(0);l=t[M>>2]|0;o=Fa(1)|0;if(!o){e=0;c=A;return e|0}do{if((t[l+16>>2]|0)==1)if(!(t[(t[l+5584>>2]|0)+20>>2]|0)){u=hr()|0;h=3;break}else{u=cr()|0;h=3;break}else{u=t[l+5600>>2]|0;h=t[(t[e+24>>2]|0)+16>>2]|0}}while(0);v=ja(o,t[t[v>>2]>>2]|0,l,u,h)|0;Ha(o);if(!v){e=0;c=A;return e|0}l=t[p>>2]|0;t[y>>2]=0;if(!g)t[s+12>>2]=0;if(!(f[l+93>>0]&5)){if(t[(t[M>>2]|0)+8>>2]|0){l=0;do{Ir(e,l,1);l=l+1|0}while(l>>>0<(t[(t[M>>2]|0)+8>>2]|0)>>>0)}}else if(!(xr(e,r,y,a,s)|0)){e=0;c=A;return e|0}}if(s)t[s+12>>2]=1;l=Ga(t[e+24>>2]|0,t[e+28>>2]|0)|0;if(!l)l=1;else{e=Va(l,t[e+36>>2]|0,t[t[e+20>>2]>>2]|0,t[(t[e+32>>2]|0)+8>>2]|0,r,n,a,s,t[e+4>>2]|0,t[e>>2]|0,t[e+16>>2]|0,1)|0;Ka(l);l=(e|0)==0}e=l&1^1;c=A;return e|0}function Ur(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0;p=c;c=c+16|0;h=p+8|0;u=p;l=p+12|0;s=e+36|0;t[s>>2]=f;v=t[e+28>>2]|0;_=e+32|0;t[_>>2]=(t[v+76>>2]|0)+(f*5640|0);t[l>>2]=0;b=e+24|0;f=Ga(t[b>>2]|0,v)|0;if(!f){v=0;c=p;return v|0}d=e+20|0;v=Xa(f,t[s>>2]|0,t[t[d>>2]>>2]|0,i,l,r,n,a)|0;Ka(f);if(!v){v=0;c=p;return v|0}f=t[t[d>>2]>>2]|0;e=t[(t[_>>2]|0)+5584>>2]|0;s=t[f+20>>2]|0;r=Fa(0)|0;if(!r){v=0;c=p;return v|0}l=f+16|0;e:do{if(t[l>>2]|0){n=0;f=s;while(1){if(!(Ua(r,f,e)|0))break;n=n+1|0;if(n>>>0>=(t[l>>2]|0)>>>0)break e;else{e=e+1080|0;f=f+52|0}}Ha(r);v=0;c=p;return v|0}}while(0);Ha(r);f=t[t[d>>2]>>2]|0;s=f+16|0;do{if(t[s>>2]|0){l=0;n=t[(t[b>>2]|0)+24>>2]|0;r=t[(t[_>>2]|0)+5584>>2]|0;e=t[f+20>>2]|0;while(1){f=(t[n+36>>2]|0)+1|0;if((t[r+20>>2]|0)==1){if(!(Ma(e,f)|0)){f=0;e=49;break}}else if(!(Pa(e,f)|0)){f=0;e=49;break}l=l+1|0;if(l>>>0>=(t[s>>2]|0)>>>0){e=14;break}else{n=n+52|0;r=r+1080|0;e=e+52|0}}if((e|0)==14){f=t[t[d>>2]>>2]|0;break}else if((e|0)==49){c=p;return f|0}}}while(0);l=t[_>>2]|0;e=t[f+20>>2]|0;s=t[l+16>>2]|0;do{if(s){i=ie((t[e+12>>2]|0)-(t[e+4>>2]|0)|0,(t[e+8>>2]|0)-(t[e>>2]|0)|0)|0;r=f+16|0;f=t[r>>2]|0;if(f>>>0<=2){t[h>>2]=f;jf(a,1,19703,h)|0;break}if((ie((t[e+64>>2]|0)-(t[e+56>>2]|0)|0,(t[e+60>>2]|0)-(t[e+52>>2]|0)|0)|0)>=(i|0)?(ie((t[e+116>>2]|0)-(t[e+108>>2]|0)|0,(t[e+112>>2]|0)-(t[e+104>>2]|0)|0)|0)>=(i|0):0){if((s|0)!=2){f=t[e+32>>2]|0;if((t[(t[l+5584>>2]|0)+20>>2]|0)==1){br(f,t[e+84>>2]|0,t[e+136>>2]|0,i);break}else{kr(f,t[e+84>>2]|0,t[e+136>>2]|0,i);break}}n=l+5604|0;if(!(t[n>>2]|0))break;l=Nn(f<<2)|0;if(!l){v=0;c=p;return v|0}f=t[r>>2]|0;if(!f)f=0;else{s=0;while(1){t[l+(s<<2)>>2]=t[e+32>>2];s=s+1|0;if((s|0)==(f|0))break;else e=e+52|0}}v=(mr(t[n>>2]|0,i,l,f,t[(t[(t[b>>2]|0)+24>>2]|0)+32>>2]|0)|0)==0;Yn(l);if(v)f=0;else break;c=p;return f|0}jf(a,1,19642,u)|0;v=0;c=p;return v|0}}while(0);f=t[t[d>>2]>>2]|0;m=f+16|0;if(!(t[m>>2]|0)){v=1;c=p;return v|0}v=0;w=t[(t[b>>2]|0)+24>>2]|0;k=t[(t[_>>2]|0)+5584>>2]|0;_=t[f+20>>2]|0;while(1){b=t[_+24>>2]|0;a=t[w+36>>2]|0;s=t[b+(a*136|0)+8>>2]|0;l=t[b+(a*136|0)>>2]|0;d=s-l|0;n=t[b+(a*136|0)+12>>2]|0;a=t[b+(a*136|0)+4>>2]|0;b=(t[_+8>>2]|0)-(t[_>>2]|0)-d|0;f=t[w+24>>2]|0;if(!(t[w+32>>2]|0)){f=1<<f;h=0}else{h=1<<f+-1;f=h;h=0-h|0}u=f+-1|0;f=t[_+32>>2]|0;e=(n|0)==(a|0);if((t[k+20>>2]|0)==1){if(!e){r=(s|0)==(l|0);i=k+1076|0;l=n-a|0;n=0;while(1){if(!r){e=0;s=f;while(1){a=(t[i>>2]|0)+(t[s>>2]|0)|0;t[s>>2]=(a|0)<(h|0)?h:(a|0)>(u|0)?u:a;e=e+1|0;if((e|0)==(d|0))break;else s=s+4|0}f=f+(d<<2)|0}n=n+1|0;if((n|0)==(l|0))break;else f=f+(b<<2)|0}}}else if(!e){r=(s|0)==(l|0);i=k+1076|0;l=n-a|0;n=0;while(1){if(!r){e=0;s=f;while(1){a=As(+o[s>>2])|0;a=(t[i>>2]|0)+a|0;t[s>>2]=(a|0)<(h|0)?h:(a|0)>(u|0)?u:a;e=e+1|0;if((e|0)==(d|0))break;else s=s+4|0}f=f+(d<<2)|0}n=n+1|0;if((n|0)==(l|0))break;else f=f+(b<<2)|0}}v=v+1|0;if(v>>>0>=(t[m>>2]|0)>>>0){f=1;break}else{w=w+52|0;k=k+1080|0;_=_+52|0}}c=p;return f|0}function jr(e,i,r){e=e|0;i=i|0;r=r|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0;k=e+24|0;h=t[k>>2]|0;s=t[h+16>>2]|0;c=(s|0)==0;if(c){k=1;return k|0}l=0;a=0;o=t[h+24>>2]|0;u=t[(t[t[e+20>>2]>>2]|0)+20>>2]|0;while(1){d=t[o+24>>2]|0;d=((d&7|0)!=0&1)+(d>>>3)|0;b=t[u+24>>2]|0;_=(t[u+20>>2]|0)+-1|0;a=(ie(ie((d|0)==3?4:d,(t[b+(_*136|0)+8>>2]|0)-(t[b+(_*136|0)>>2]|0)|0)|0,(t[b+(_*136|0)+12>>2]|0)-(t[b+(_*136|0)+4>>2]|0)|0)|0)+a|0;l=l+1|0;if((l|0)==(s|0))break;else{o=o+52|0;u=u+52|0}}a=a>>>0>r>>>0;if(a|c){k=a&1^1;return k|0}_=0;b=t[h+24>>2]|0;d=t[(t[t[e+20>>2]>>2]|0)+20>>2]|0;while(1){c=t[b+24>>2]|0;e=t[d+24>>2]|0;r=t[b+36>>2]|0;l=t[e+(r*136|0)+8>>2]|0;o=t[e+(r*136|0)>>2]|0;h=l-o|0;u=t[e+(r*136|0)+12>>2]|0;r=t[e+(r*136|0)+4>>2]|0;e=(t[d+8>>2]|0)-(t[d>>2]|0)-h|0;c=((c&7|0)!=0&1)+(c>>>3)|0;e:do{switch(((c|0)==3?4:c)|0){case 1:{a=t[d+32>>2]|0;s=(u|0)==(r|0);if(!(t[b+32>>2]|0)){if(s)break e;c=(l|0)==(o|0);u=u-r|0;r=0;while(1){if(!c){o=i+h|0;l=0;s=a;while(1){f[i>>0]=t[s>>2];l=l+1|0;if((l|0)==(h|0))break;else{i=i+1|0;s=s+4|0}}i=o;a=a+(h<<2)|0}r=r+1|0;if((r|0)==(u|0))break;else a=a+(e<<2)|0}}else{if(s)break e;c=(l|0)==(o|0);u=u-r|0;r=0;while(1){if(!c){o=i+h|0;l=0;s=a;while(1){f[i>>0]=t[s>>2];l=l+1|0;if((l|0)==(h|0))break;else{i=i+1|0;s=s+4|0}}i=o;a=a+(h<<2)|0}r=r+1|0;if((r|0)==(u|0))break;else a=a+(e<<2)|0}}break}case 2:{a=t[d+32>>2]|0;s=(u|0)==(r|0);if(!(t[b+32>>2]|0)){if(!s){c=(l|0)==(o|0);u=u-r|0;r=0;while(1){if(!c){o=i+(h<<1)|0;l=0;s=a;while(1){n[i>>1]=t[s>>2];l=l+1|0;if((l|0)==(h|0))break;else{i=i+2|0;s=s+4|0}}i=o;a=a+(h<<2)|0}r=r+1|0;if((r|0)==(u|0))break;else a=a+(e<<2)|0}}}else if(!s){c=(l|0)==(o|0);u=u-r|0;r=0;while(1){if(!c){o=i+(h<<1)|0;l=0;s=a;while(1){n[i>>1]=t[s>>2];l=l+1|0;if((l|0)==(h|0))break;else{i=i+2|0;s=s+4|0}}i=o;a=a+(h<<2)|0}r=r+1|0;if((r|0)==(u|0))break;else a=a+(e<<2)|0}}break}case 4:{if((u|0)!=(r|0)){c=(l|0)==(o|0);u=u-r|0;r=0;a=t[d+32>>2]|0;while(1){if(!c){o=i+(h<<2)|0;l=0;s=a;while(1){t[i>>2]=t[s>>2];l=l+1|0;if((l|0)==(h|0))break;else{i=i+4|0;s=s+4|0}}i=o;a=a+(h<<2)|0}r=r+1|0;if((r|0)==(u|0))break;else a=a+(e<<2)|0}}break}default:{}}}while(0);_=_+1|0;if(_>>>0>=(t[(t[k>>2]|0)+16>>2]|0)>>>0){i=1;break}else{b=b+52|0;d=d+52|0}}return i|0}function Yr(e){e=e|0;var i=0,r=0,f=0,n=0,a=0;r=t[e+24>>2]|0;n=t[r+16>>2]|0;if(!n){a=0;return a|0}a=0;i=0;f=t[r+24>>2]|0;r=t[(t[t[e+20>>2]>>2]|0)+20>>2]|0;while(1){e=t[f+24>>2]|0;e=((e&7|0)!=0&1)+(e>>>3)|0;i=(ie(ie((t[r+12>>2]|0)-(t[r+4>>2]|0)|0,(t[r+8>>2]|0)-(t[r>>2]|0)|0)|0,(e|0)==3?4:e)|0)+i|0;a=a+1|0;if(a>>>0>=n>>>0)break;else{f=f+52|0;r=r+52|0}}return i|0}function qr(e,i,r){e=e|0;i=i|0;r=r|0;var l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0;b=t[e+24>>2]|0;k=b+16|0;o=t[k>>2]|0;d=(o|0)==0;if(d)l=0;else{u=0;l=0;c=t[b+24>>2]|0;h=t[(t[t[e+20>>2]>>2]|0)+20>>2]|0;while(1){_=t[c+24>>2]|0;_=((_&7|0)!=0&1)+(_>>>3)|0;l=(ie(ie((t[h+12>>2]|0)-(t[h+4>>2]|0)|0,(t[h+8>>2]|0)-(t[h>>2]|0)|0)|0,(_|0)==3?4:_)|0)+l|0;u=u+1|0;if((u|0)==(o|0))break;else{c=c+52|0;h=h+52|0}}}l=(l|0)!=(r|0);if(l|d){k=l&1^1;return k|0}_=0;d=t[b+24>>2]|0;r=t[(t[t[e+20>>2]>>2]|0)+20>>2]|0;while(1){e=t[d+24>>2]|0;l=(t[r+8>>2]|0)-(t[r>>2]|0)|0;o=(t[r+12>>2]|0)-(t[r+4>>2]|0)|0;h=ie(o,l)|0;e=((e&7|0)!=0&1)+(e>>>3)|0;e:do{switch(((e|0)==3?4:e)|0){case 1:{o=t[r+32>>2]|0;l=(h|0)==0;if(!(t[d+32>>2]|0)){if(l)break e;else{u=0;l=o;o=i}while(1){t[l>>2]=a[o>>0];u=u+1|0;if((u|0)==(h|0))break;else{l=l+4|0;o=o+1|0}}i=i+h|0;break e}else{if(l)break e;else{u=0;l=o;o=i}while(1){t[l>>2]=f[o>>0];u=u+1|0;if((u|0)==(h|0))break;else{l=l+4|0;o=o+1|0}}i=i+h|0;break e}}case 2:{c=t[r+32>>2]|0;u=(h|0)==0;if(!(t[d+32>>2]|0)){if(!u){u=i+(ie(o<<1,l)|0)|0;o=0;l=c;while(1){t[l>>2]=s[i>>1];o=o+1|0;if((o|0)==(h|0))break;else{l=l+4|0;i=i+2|0}}i=u}}else if(!u){u=i+(ie(o<<1,l)|0)|0;o=0;l=c;while(1){t[l>>2]=n[i>>1];o=o+1|0;if((o|0)==(h|0))break;else{l=l+4|0;i=i+2|0}}i=u}break}case 4:{if(h){u=i+(ie(o<<2,l)|0)|0;l=0;o=t[r+32>>2]|0;while(1){t[o>>2]=t[i>>2];l=l+1|0;if((l|0)==(h|0))break;else{o=o+4|0;i=i+4|0}}i=u}break}default:{}}}while(0);_=_+1|0;if(_>>>0>=(t[k>>2]|0)>>>0){i=1;break}else{d=d+52|0;r=r+52|0}}return i|0}function $r(e){e=e|0;var i=0,r=0,f=0,n=0,a=0;a=e+24|0;i=t[a>>2]|0;if(!i)return;n=t[e+28>>2]|0;f=(n>>>0)/52|0;if(n>>>0>51){n=0;while(1){e=t[i>>2]|0;if(e){Yn(e+-1|0);t[i>>2]=0}e=i+4|0;r=t[e>>2]|0;if(r){Yn(r);t[e>>2]=0}e=i+8|0;r=t[e>>2]|0;if(r){Yn(r);t[e>>2]=0}n=n+1|0;if(n>>>0>=f>>>0)break;else i=i+52|0}i=t[a>>2]|0}Yn(i);t[a>>2]=0;return}function Vr(e){e=e|0;var i=0,r=0,f=0,n=0,a=0;a=e+24|0;i=t[a>>2]|0;if(!i)return;n=t[e+28>>2]|0;f=(n>>>0)/56|0;if(n>>>0>55){n=0;while(1){e=t[i>>2]|0;if(e){Yn(e);t[i>>2]=0}r=i+4|0;e=t[r>>2]|0;if(e){Yn(e);t[r>>2]=0}n=n+1|0;if(n>>>0>=f>>>0)break;else i=i+56|0}i=t[a>>2]|0}Yn(i);t[a>>2]=0;return}function Xr(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=+n;a=a|0;s=s|0;var l=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0,V=0,X=0,G=0,K=0,W=0,Z=0,J=0,Q=0,ee=0,re=0,fe=0,ne=0,te=0,ae=0,se=0,le=0,oe=0,ue=0,ce=0,he=0,de=0,be=0,_e=0,ke=0,we=0,me=0,ve=0,pe=0,ge=0,ye=0,Me=0,Ae=0,Ee=0,Se=0,Te=0,Re=0,Ce=0,Pe=0,Ie=0,Oe=0,xe=0,Le=0,Be=0,ze=0,De=0,Ne=0,Fe=0,He=0,Ue=0,je=0,Ye=0,qe=0,$e=0.0;qe=c;c=c+80|0;De=qe+64|0;ze=qe+56|0;Fe=qe+48|0;Ue=qe+40|0;He=qe+32|0;je=qe+24|0;Ne=qe+16|0;Be=qe+8|0;l=t[e+28>>2]|0;Le=t[t[e+20>>2]>>2]|0;_=t[(t[l+76>>2]|0)+(i*5640|0)+5584>>2]|0;k=t[Le+20>>2]|0;d=t[e+24>>2]|0;b=t[d+24>>2]|0;Ie=t[l+24>>2]|0;h=t[l+12>>2]|0;xe=(ie(h,(i>>>0)%(Ie>>>0)|0)|0)+(t[l+4>>2]|0)|0;u=t[d>>2]|0;u=xe>>>0>u>>>0?xe:u;t[Le>>2]=u;xe=Bl(h|0,0,xe|0,0)|0;xe=xe|0-I;h=t[d+8>>2]|0;h=xe>>>0<h>>>0?xe:h;xe=Le+8|0;t[xe>>2]=h;Oe=t[l+16>>2]|0;Ie=(ie(Oe,(i>>>0)/(Ie>>>0)|0)|0)+(t[l+8>>2]|0)|0;i=t[d+4>>2]|0;i=Ie>>>0>i>>>0?Ie:i;Pe=Le+4|0;t[Pe>>2]=i;Ie=Bl(Oe|0,0,Ie|0,0)|0;Ie=Ie|0-I;d=t[d+12>>2]|0;d=Ie>>>0<d>>>0?Ie:d;Ie=Le+12|0;t[Ie>>2]=d;if(!(t[_+4>>2]|0)){jf(s,1,19777,qe)|0;Ye=0;c=qe;return Ye|0}Oe=Le+16|0;if(!(t[Oe>>2]|0)){Ye=1;c=qe;return Ye|0}Ce=l+80|0;Re=e+40|0;Te=(r|0)==0;l=i;Se=0;e:while(1){t[b+36>>2]=0;ge=t[b>>2]|0;i=(u+-1+ge|0)/(ge|0)|0;t[k>>2]=i;ye=t[b+4>>2]|0;l=(l+-1+ye|0)/(ye|0)|0;Ee=k+4|0;t[Ee>>2]=l;ge=(h+-1+ge|0)/(ge|0)|0;Ae=k+8|0;t[Ae>>2]=ge;ye=(d+-1+ye|0)/(ye|0)|0;Me=k+12|0;t[Me>>2]=ye;i=ge-i|0;l=ye-l|0;if((4294967295/(i>>>0)|0)>>>0<l>>>0){Ye=6;break}i=ie(l,i)|0;if(i>>>0>1073741823){Ye=8;break}h=i<<2;ge=t[_+4>>2]|0;ye=k+16|0;t[ye>>2]=ge;e=t[Ce>>2]|0;t[k+20>>2]=ge>>>0<e>>>0?1:ge-e|0;e=k+40|0;t[e>>2]=h;do{if(f[Re>>0]&1){r=k+32|0;u=t[r>>2]|0;if(u){l=k+44|0;if(h>>>0<=(t[l>>2]|0)>>>0)break;i=k+36|0;if(t[i>>2]|0){Un(u);ge=Hn(t[e>>2]|0)|0;t[r>>2]=ge;if(!ge){Ye=16;break e}t[l>>2]=t[e>>2];t[i>>2]=1;break}}ge=Hn(h)|0;t[r>>2]=ge;if(!ge)break e;t[k+44>>2]=t[e>>2];t[k+36>>2]=1}}while(0);r=(t[ye>>2]|0)*136|0;l=k+24|0;e=t[l>>2]|0;if(e){i=k+28|0;if(r>>>0>(t[i>>2]|0)>>>0){e=jn(e,r)|0;if(!e){Ye=24;break}t[l>>2]=e;ge=t[i>>2]|0;xl(e+ge|0,0,r-ge|0)|0;t[i>>2]=r}}else{i=Nn(r)|0;t[l>>2]=i;if(!i){i=0;Ye=87;break}t[k+28>>2]=r;xl(i|0,0,r|0)|0}i=t[ye>>2]|0;ge=(t[_+20>>2]|0)==0?7:8;if(i){we=_+8|0;me=_+12|0;ve=b+24|0;pe=_+804|0;ke=t[l>>2]|0;l=_+28|0;e=0;while(1){be=i;_e=i+-1|0;ce=t[k>>2]|0;he=Ll(1,0,_e|0)|0;he=Bl(he|0,I|0,-1,-1)|0;de=I;ce=Bl(he|0,de|0,ce|0,((ce|0)<0)<<31>>31|0)|0;ce=Ol(ce|0,I|0,_e|0)|0;t[ke>>2]=ce;r=t[Ee>>2]|0;r=Bl(he|0,de|0,r|0,((r|0)<0)<<31>>31|0)|0;r=Ol(r|0,I|0,_e|0)|0;t[ke+4>>2]=r;i=t[Ae>>2]|0;i=Bl(he|0,de|0,i|0,((i|0)<0)<<31>>31|0)|0;i=Ol(i|0,I|0,_e|0)|0;t[ke+8>>2]=i;u=t[Me>>2]|0;u=Bl(he|0,de|0,u|0,((u|0)<0)<<31>>31|0)|0;u=Ol(u|0,I|0,_e|0)|0;t[ke+12>>2]=u;w=t[_+812+(e<<2)>>2]|0;d=t[_+944+(e<<2)>>2]|0;m=ce>>w<<w;v=r>>d<<d;h=Ll(1,0,d|0)|0;h=Bl(h|0,I|0,-1,-1)|0;h=Bl(h|0,I|0,u|0,((u|0)<0)<<31>>31|0)|0;h=Ol(h|0,I|0,d|0)|0;if((ce|0)==(i|0))i=0;else{ce=Ll(1,0,w|0)|0;ce=Bl(ce|0,I|0,-1,-1)|0;i=Bl(ce|0,I|0,i|0,((i|0)<0)<<31>>31|0)|0;i=Ol(i|0,I|0,w|0)|0;i=(i<<w)-m>>w}ce=ke+16|0;t[ce>>2]=i;le=(r|0)==(u|0)?0:(h<<d)-v>>d;t[ke+20>>2]=le;le=ie(le,i)|0;oe=le*40|0;ue=(e|0)==0;if(ue)i=1;else{m=Bl(m|0,((m|0)<0)<<31>>31|0,1,0)|0;m=zl(m|0,I|0,1)|0;v=Bl(v|0,((v|0)<0)<<31>>31|0,1,0)|0;v=zl(v|0,I|0,1)|0;i=3;d=d+-1|0;w=w+-1|0}se=ke+24|0;t[se>>2]=i;q=t[we>>2]|0;q=q>>>0<w>>>0?q:w;$=t[me>>2]|0;$=$>>>0<d>>>0?$:d;V=(le|0)!=0;X=(le|0)==0;G=1<<w;K=1<<d;W=Ll(1,0,q|0)|0;W=Bl(W|0,I|0,-1,-1)|0;Z=I;J=Ll(1,0,$|0)|0;J=Bl(J|0,I|0,-1,-1)|0;Q=I;ee=1<<q;re=1<<$;fe=Ll(1,0,be|0)|0;fe=Bl(fe|0,I|0,-1,-1)|0;ne=I;te=0;ae=ke+28|0;Y=l;while(1){if(ue){i=t[k>>2]|0;i=Bl(he|0,de|0,i|0,((i|0)<0)<<31>>31|0)|0;i=Ol(i|0,I|0,_e|0)|0;l=t[Ee>>2]|0;l=Bl(he|0,de|0,l|0,((l|0)<0)<<31>>31|0)|0;l=Ol(l|0,I|0,_e|0)|0;r=t[Ae>>2]|0;r=Bl(he|0,de|0,r|0,((r|0)<0)<<31>>31|0)|0;r=Ol(r|0,I|0,_e|0)|0;h=t[Me>>2]|0;h=Bl(he|0,de|0,h|0,((h|0)<0)<<31>>31|0)|0;h=Ol(h|0,I|0,_e|0)|0;u=0}else{u=te+1|0;i=t[k>>2]|0;H=Ll(u&1|0,0,_e|0)|0;H=Il(fe|0,ne|0,H|0,I|0)|0;h=I;i=Bl(H|0,h|0,i|0,((i|0)<0)<<31>>31|0)|0;i=Ol(i|0,I|0,be|0)|0;l=t[Ee>>2]|0;U=Ll(u>>>1|0,0,_e|0)|0;U=Il(fe|0,ne|0,U|0,I|0)|0;j=I;l=Bl(U|0,j|0,l|0,((l|0)<0)<<31>>31|0)|0;l=Ol(l|0,I|0,be|0)|0;r=t[Ae>>2]|0;r=Bl(H|0,h|0,r|0,((r|0)<0)<<31>>31|0)|0;r=Ol(r|0,I|0,be|0)|0;h=t[Me>>2]|0;h=Bl(U|0,j|0,h|0,((h|0)<0)<<31>>31|0)|0;h=Ol(h|0,I|0,be|0)|0}t[ae+16>>2]=u;t[ae>>2]=i;j=ae+4|0;t[j>>2]=l;U=ae+8|0;t[U>>2]=r;H=ae+12|0;t[H>>2]=h;l=Eo[ge&15](u)|0;$e=+(t[Y+4>>2]|0)*.00048828125+1.0;o[ae+32>>2]=+Ms(1.0,(t[ve>>2]|0)+l-(t[Y>>2]|0)|0)*$e*n;t[ae+28>>2]=(t[Y>>2]|0)+-1+(t[pe>>2]|0);l=ae+20|0;r=t[l>>2]|0;if(!(V&(r|0)==0)){i=ae+24|0;if((t[i>>2]|0)>>>0<oe>>>0){r=jn(r,oe)|0;if(!r){Ye=41;break e}t[l>>2]=r;F=t[i>>2]|0;xl(r+F|0,0,oe-F|0)|0;t[i>>2]=oe}}else{i=Nn(oe)|0;t[l>>2]=i;if(!i){i=0;Ye=87;break e}xl(i|0,0,oe|0)|0;t[ae+24>>2]=oe}if(!X){N=t[l>>2]|0;F=0;while(1){P=t[ce>>2]|0;B=(((F>>>0)%(P>>>0)|0)<<w)+m|0;P=(((F>>>0)/(P>>>0)|0)<<d)+v|0;O=B+G|0;x=P+K|0;L=t[ae>>2]|0;L=(B|0)>(L|0)?B:L;t[N>>2]=L;B=t[j>>2]|0;B=(P|0)>(B|0)?P:B;P=N+4|0;t[P>>2]=B;D=t[U>>2]|0;D=(O|0)<(D|0)?O:D;O=N+8|0;t[O>>2]=D;u=t[H>>2]|0;u=(x|0)<(u|0)?x:u;x=N+12|0;t[x>>2]=u;L=L>>q<<q;B=B>>$<<$;D=Bl(W|0,Z|0,D|0,((D|0)<0)<<31>>31|0)|0;D=Ol(D|0,I|0,q|0)|0;u=Bl(J|0,Q|0,u|0,((u|0)<0)<<31>>31|0)|0;u=Ol(u|0,I|0,$|0)|0;D=(D<<q)-L>>q;z=N+16|0;t[z>>2]=D;u=(u<<$)-B>>$;p=N+20|0;t[p>>2]=u;D=ie(u,D)|0;u=ie(D,a)|0;l=N+24|0;r=t[l>>2]|0;do{if((r|0)==0&(D|0)!=0){i=Nn(u)|0;t[l>>2]=i;if(!i){i=0;Ye=87;break e}xl(i|0,0,u|0)|0;t[N+28>>2]=u}else{i=N+28|0;if(u>>>0<=(t[i>>2]|0)>>>0)break;r=jn(r,u)|0;if(!r){Ye=50;break e}t[l>>2]=r;C=t[i>>2]|0;xl(r+C|0,0,u-C|0)|0;t[i>>2]=u}}while(0);h=N+32|0;i=t[h>>2]|0;r=t[z>>2]|0;u=t[p>>2]|0;if(!i)i=Gr(r,u,s)|0;else i=ra(i,r,u,s)|0;t[h>>2]=i;if(!i)jf(s,2,19990,ze)|0;h=N+36|0;r=t[h>>2]|0;u=t[z>>2]|0;i=t[p>>2]|0;if(!r)i=Gr(u,i,s)|0;else i=ra(r,u,i,s)|0;t[h>>2]=i;if(!i)jf(s,2,20012,De)|0;if(D){C=0;do{S=t[z>>2]|0;E=(((C>>>0)%(S>>>0)|0)<<q)+L|0;S=(((C>>>0)/(S>>>0)|0)<<$)+B|0;T=E+ee|0;R=S+re|0;do{if(Te){i=t[l>>2]|0;r=i+(C*56|0)|0;u=t[r>>2]|0;if(!u){A=Nn(8192)|0;t[r>>2]=A;if(!A){i=0;Ye=87;break e}t[i+(C*56|0)+32>>2]=8192;A=Fn(10,32)|0;t[i+(C*56|0)+4>>2]=A;if(!A){i=0;Ye=87;break e}t[i+(C*56|0)+52>>2]=10}else{h=i+(C*56|0)+32|0;p=t[h>>2]|0;g=i+(C*56|0)+4|0;y=t[g>>2]|0;M=r;A=M+52|0;do{t[M>>2]=0;M=M+4|0}while((M|0)<(A|0));t[r>>2]=u;t[h>>2]=p;t[g>>2]=y}A=t[N>>2]|0;t[i+(C*56|0)+8>>2]=(E|0)>(A|0)?E:A;E=t[P>>2]|0;t[i+(C*56|0)+12>>2]=(S|0)>(E|0)?S:E;S=t[O>>2]|0;t[i+(C*56|0)+16>>2]=(T|0)<(S|0)?T:S;T=t[x>>2]|0;t[i+(C*56|0)+20>>2]=(R|0)<(T|0)?R:T}else{r=t[l>>2]|0;i=r+(C*52|0)+4|0;if((t[i>>2]|0)==0?(A=Fn(100,24)|0,t[i>>2]=A,(A|0)==0):0){i=0;Ye=87;break e}i=r+(C*52|0)+8|0;if((t[i>>2]|0)==0?(A=Fn(100,24)|0,t[i>>2]=A,(A|0)==0):0){i=0;Ye=87;break e}h=t[N>>2]|0;h=(E|0)>(h|0)?E:h;t[r+(C*52|0)+12>>2]=h;i=t[P>>2]|0;S=(S|0)>(i|0)?S:i;t[r+(C*52|0)+16>>2]=S;i=t[O>>2]|0;i=(T|0)<(i|0)?T:i;t[r+(C*52|0)+20>>2]=i;T=t[x>>2]|0;R=(R|0)<(T|0)?R:T;t[r+(C*52|0)+24>>2]=R;h=ie(R-S|0,i-h<<2)|0;i=r+(C*52|0)+36|0;if(h>>>0<=(t[i>>2]|0)>>>0)break;u=r+(C*52|0)|0;r=t[u>>2]|0;if(r)Yn(r+-1|0);r=Nn(h|1)|0;t[u>>2]=r;if(!r){Ye=74;break e}t[i>>2]=h;f[r>>0]=0;t[u>>2]=(t[u>>2]|0)+1}}while(0);C=C+1|0}while(C>>>0<D>>>0)}F=F+1|0;if(F>>>0>=le>>>0)break;else N=N+40|0}}l=Y+8|0;te=te+1|0;if(te>>>0>=(t[se>>2]|0)>>>0)break;else{ae=ae+36|0;Y=l}}e=e+1|0;if(e>>>0<(t[ye>>2]|0)>>>0){i=_e;ke=ke+136|0}else break}}i=Se+1|0;if(i>>>0>=(t[Oe>>2]|0)>>>0){i=1;Ye=87;break}u=t[Le>>2]|0;l=t[Pe>>2]|0;h=t[xe>>2]|0;d=t[Ie>>2]|0;Se=i;b=b+52|0;_=_+1080|0;k=k+52|0}if((Ye|0)==6){jf(s,1,19816,Be)|0;Ye=0;c=qe;return Ye|0}else if((Ye|0)==8){jf(s,1,19816,Ne)|0;Ye=0;c=qe;return Ye|0}else if((Ye|0)==16){t[l>>2]=0;t[e>>2]=0;t[i>>2]=0}else if((Ye|0)==24){jf(s,1,19849,He)|0;Yn(t[l>>2]|0);t[l>>2]=0;t[i>>2]=0;Ye=0;c=qe;return Ye|0}else if((Ye|0)==41){jf(s,1,19889,Ue)|0;Yn(t[l>>2]|0);t[l>>2]=0;t[i>>2]=0;Ye=0;c=qe;return Ye|0}else if((Ye|0)==50){Yn(t[l>>2]|0);t[l>>2]=0;t[i>>2]=0;jf(s,1,19932,Fe)|0;Ye=0;c=qe;return Ye|0}else if((Ye|0)==74){t[i>>2]=0;Ye=0;c=qe;return Ye|0}else if((Ye|0)==87){c=qe;return i|0}jf(s,1,19816,je)|0;Ye=0;c=qe;return Ye|0}function Gr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0;g=c;c=c+288|0;u=g+16|0;l=g+8|0;v=g+152|0;p=g+24|0;f=Fn(1,20)|0;if(!f){jf(r,1,20034,g)|0;p=0;c=g;return p|0}t[f>>2]=e;h=f+4|0;t[h>>2]=i;t[v>>2]=e;t[p>>2]=i;o=f+8|0;t[o>>2]=0;n=0;s=0;while(1){m=ie(i,e)|0;e=(e+1|0)/2|0;a=s+1|0;t[v+(a<<2)>>2]=e;i=(i+1|0)/2|0;t[p+(a<<2)>>2]=i;n=n+m|0;if(m>>>0<=1)break;else s=a}t[o>>2]=n;if(!n){Yn(f);jf(r,2,20072,l)|0;p=0;c=g;return p|0}n=Fn(n,16)|0;t[f+12>>2]=n;if(!n){jf(r,1,20122,u)|0;Yn(f);p=0;c=g;return p|0}m=t[o>>2]|0;t[f+16>>2]=m<<4;i=n+((ie(t[h>>2]|0,t[f>>2]|0)|0)<<4)|0;if(!s)i=n;else{w=0;a=i;e=i;i=n;do{_=t[p+(w<<2)>>2]|0;e:do{if((_|0)>0){k=t[v+(w<<2)>>2]|0;if((k|0)<=0){o=_+-1|0;r=0;while(1){b=(r&1|0)!=0|(r|0)==(o|0);l=b?a:e;e=b?a:e+(k<<4)|0;r=r+1|0;if((r|0)>=(_|0)){a=l;break e}else a=l}}b=((k+2+((k|0)<2?~k:-3)|0)>>>1)+1|0;h=_+-1|0;d=0;do{r=k;u=a;while(1){t[i>>2]=u;l=i+16|0;o=r;r=r+-2|0;if((r|0)>-1){t[l>>2]=u;i=i+32|0}else i=l;if((o|0)<=2)break;else u=u+16|0}u=a+(b<<4)|0;r=(d&1|0)!=0|(d|0)==(h|0);a=r?u:e;e=r?u:e+(k<<4)|0;d=d+1|0}while((d|0)<(_|0))}}while(0);w=w+1|0}while((w|0)!=(s|0))}t[i>>2]=0;if(!m){p=f;c=g;return p|0}else i=0;while(1){t[n+4>>2]=999;t[n+8>>2]=0;t[n+12>>2]=0;i=i+1|0;if((i|0)==(m|0))break;else n=n+16|0}c=g;return f|0}function Kr(e){e=e|0;var i=0,r=0;if(!e)return;i=t[e+8>>2]|0;if(!i)return;r=0;e=t[e+12>>2]|0;while(1){t[e+4>>2]=999;t[e+8>>2]=0;t[e+12>>2]=0;r=r+1|0;if(r>>>0>=i>>>0)break;else e=e+16|0}return}function Wr(e){e=e|0;var i=0;i=c;c=c+e|0;c=c+15&-16;return i|0}function Zr(){return c|0}function Jr(e){e=e|0;c=e}function Qr(e,i){e=e|0;i=i|0;c=e;h=i}function ef(e,i){e=e|0;i=i|0;if(!k){k=e;w=i}}function rf(e){e=e|0;f[d>>0]=f[e>>0];f[d+1>>0]=f[e+1>>0];f[d+2>>0]=f[e+2>>0];f[d+3>>0]=f[e+3>>0]}function ff(e){e=e|0;f[d>>0]=f[e>>0];f[d+1>>0]=f[e+1>>0];f[d+2>>0]=f[e+2>>0];f[d+3>>0]=f[e+3>>0];f[d+4>>0]=f[e+4>>0];f[d+5>>0]=f[e+5>>0];f[d+6>>0]=f[e+6>>0];f[d+7>>0]=f[e+7>>0]}function nf(e){e=e|0;I=e}function tf(){return I|0}function af(e,i,r,f,n,a,s){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+8272|0;o=b+16|0;h=b+12|0;l=b;t[h>>2]=0;if((t[e>>2]|0)==1375686655)d=fn(0)|0;else d=fn(2)|0;Zf(d,1,0)|0;Jf(d,2,0)|0;Qf(d,3,0)|0;nn(o);t[l>>2]=e;t[l+4>>2]=e;t[l+8>>2]=i;u=en(l,1)|0;if(!(tn(d,o)|0)){fl(4476)|0;Tf(u);yn(d);a=1;c=b;return a|0}if(!(an(u,d,h)|0)){fl(4528)|0;Tf(u);yn(d);Xf(t[h>>2]|0);a=1;c=b;return a|0}if(!(cn(d,u,t[h>>2]|0,t[o+8228>>2]|0)|0)){fl(4578)|0;yn(d);Tf(u);Xf(t[h>>2]|0);a=1;c=b;return a|0}l=t[h>>2]|0;t[n>>2]=t[l+8>>2];t[a>>2]=t[l+12>>2];e=t[l+16>>2]|0;t[s>>2]=e;e=ie(ie(e<<2,t[n>>2]|0)|0,t[a>>2]|0)|0;t[f>>2]=e;f=yl(e)|0;t[r>>2]=f;switch(t[s>>2]|0){case 1:{Dl(f|0,t[(t[l+24>>2]|0)+44>>2]|0,e|0)|0;break}case 3:{if((ie(t[a>>2]|0,t[n>>2]|0)|0)>0){i=t[l+24>>2]|0;l=t[i+44>>2]|0;e=t[i+96>>2]|0;i=t[i+148>>2]|0;o=0;do{s=o*3|0;t[f+(s<<2)>>2]=t[l+(o<<2)>>2];t[f+(s+1<<2)>>2]=t[e+(o<<2)>>2];t[f+(s+2<<2)>>2]=t[i+(o<<2)>>2];o=o+1|0}while((o|0)<(ie(t[a>>2]|0,t[n>>2]|0)|0))}break}default:{}}Tf(u);yn(d);Xf(t[h>>2]|0);a=0;c=b;return a|0}function sf(){return rn()|0}function lf(e,i){e=e|0;i=i|0;return}function of(e,i){e=e|0;i=i|0;return}function uf(e,i){e=e|0;i=i|0;var r=0;i=c;c=c+16|0;r=i;t[r>>2]=e;rl(4625,r)|0;c=i;return}function cf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0;s=c;c=c+16|0;a=s;t[a>>2]=i;if(!r){c=s;return}i=e;n=0;e=a+(r+-1)|0;while(1){f[i>>0]=f[e>>0]|0;n=n+1|0;if((n|0)==(r|0))break;else{i=i+1|0;e=e+-1|0}}c=s;return}function hf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;t[i>>2]=0;if(!r)return;n=0;i=i+(r+-1)|0;while(1){f[i>>0]=f[e>>0]|0;n=n+1|0;if((n|0)==(r|0))break;else{e=e+1|0;i=i+-1|0}}return}function df(e,i){e=e|0;i=+i;var r=0,n=0,a=0,s=0,l=0;r=c;c=c+16|0;s=r;u[s>>3]=i;s=s+8|0;u[d>>3]=i;n=t[d>>2]|0;a=t[d+4>>2]|0;l=zl(n|0,a|0,56)|0;f[e>>0]=l;l=zl(n|0,a|0,48)|0;f[e+1>>0]=l;l=zl(n|0,a|0,40)|0;f[e+2>>0]=l;f[e+3>>0]=a;f[e+4>>0]=f[s+-5>>0]|0;f[e+5>>0]=f[s+-6>>0]|0;a=zl(n|0,a|0,8)|0;f[e+6>>0]=a;f[e+7>>0]=n;c=r;return}function bf(e,i){e=e|0;i=i|0;var r=0;r=i+8|0;f[r+-1>>0]=f[e>>0]|0;f[r+-2>>0]=f[e+1>>0]|0;f[r+-3>>0]=f[e+2>>0]|0;f[r+-4>>0]=f[e+3>>0]|0;f[r+-5>>0]=f[e+4>>0]|0;f[r+-6>>0]=f[e+5>>0]|0;f[r+-7>>0]=f[e+6>>0]|0;f[i>>0]=f[e+7>>0]|0;return}function _f(e,i){e=e|0;i=+i;var r=0;r=(o[d>>2]=i,t[d>>2]|0);f[e>>0]=r>>>24;f[e+1>>0]=r>>>16;f[e+2>>0]=r>>>8;f[e+3>>0]=r;return}function kf(e,i){e=e|0;i=i|0;var r=0;r=i+4|0;f[r+-1>>0]=f[e>>0]|0;f[r+-2>>0]=f[e+1>>0]|0;f[r+-3>>0]=f[e+2>>0]|0;f[i>>0]=f[e+3>>0]|0;return}function wf(e,i){e=e|0;i=i|0;var r=0,f=0;f=Fn(1,72)|0;if(!f){i=0;return i|0}t[f+64>>2]=e;e=Nn(e)|0;t[f+32>>2]=e;if(!e){Yn(f);i=0;return i|0}t[f+36>>2]=e;e=f+68|0;r=t[e>>2]|0;if(!i){t[e>>2]=r|1;t[f+40>>2]=31;t[f+44>>2]=32}else{t[e>>2]=r|2;t[f+40>>2]=29;t[f+44>>2]=30}t[f+16>>2]=4;t[f+20>>2]=5;t[f+24>>2]=6;t[f+28>>2]=7;i=f;return i|0}function mf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+16|0;h=d;n=e+48|0;a=t[n>>2]|0;if(a>>>0>=i>>>0){h=e+36|0;t[h>>2]=(t[h>>2]|0)+i;t[n>>2]=a-i;h=e+56|0;e=h;e=Bl(t[e>>2]|0,t[e+4>>2]|0,i|0,r|0)|0;t[h>>2]=e;t[h+4>>2]=I;h=r;e=i;I=h;c=d;return e|0}u=e+68|0;if(t[u>>2]&4){h=e+36|0;t[h>>2]=(t[h>>2]|0)+a;t[n>>2]=0;e=e+56|0;h=e;h=Bl(t[h>>2]|0,t[h+4>>2]|0,a|0,0)|0;t[e>>2]=h;t[e+4>>2]=I;e=(a|0)!=0;h=e?0:-1;e=e?a:-1;I=h;c=d;return e|0}if(!a){a=0;n=0}else{t[e+36>>2]=t[e+32>>2];i=Il(i|0,r|0,a|0,0)|0;t[n>>2]=0;n=0;r=I}e:do{if((r|0)>0|(r|0)==0&i>>>0>0){o=e+24|0;while(1){s=po[t[o>>2]&63](i,r,t[e>>2]|0)|0;l=I;if((s|0)==-1&(l|0)==-1)break;i=Il(i|0,r|0,s|0,l|0)|0;r=I;a=Bl(s|0,l|0,a|0,n|0)|0;n=I;if(!((r|0)>0|(r|0)==0&i>>>0>0))break e}jf(f,4,4636,h)|0;t[u>>2]=t[u>>2]|4;e=e+56|0;h=e;h=Bl(t[h>>2]|0,t[h+4>>2]|0,a|0,n|0)|0;t[e>>2]=h;t[e+4>>2]=I;e=(a|0)!=0|(n|0)!=0;h=e?n:-1;e=e?a:-1;I=h;c=d;return e|0}}while(0);h=e+56|0;e=h;e=Bl(t[e>>2]|0,t[e+4>>2]|0,a|0,n|0)|0;t[h>>2]=e;t[h+4>>2]=I;h=n;e=a;I=h;c=d;return e|0}function vf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0;t[e+36>>2]=t[e+32>>2];t[e+48>>2]=0;a=(po[t[e+28>>2]&63](i,r,t[e>>2]|0)|0)==0;f=e+68|0;n=t[f>>2]|0;if(a){t[f>>2]=n|4;a=0;return a|0}else{t[f>>2]=n&-5;a=e+56|0;t[a>>2]=i;t[a+4>>2]=r;a=1;return a|0}return 0}function pf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;w=c;c=c+16|0;k=w+8|0;h=w;_=e+68|0;if(t[_>>2]&8){k=-1;e=-1;I=k;c=w;return e|0}o=e+32|0;n=t[o>>2]|0;b=e+36|0;t[b>>2]=n;u=e+48|0;a=t[u>>2]|0;do{if(a){l=e+20|0;while(1){s=po[t[l>>2]&63](n,a,t[e>>2]|0)|0;if((s|0)==-1)break;n=(t[b>>2]|0)+s|0;t[b>>2]=n;m=t[u>>2]|0;a=m-s|0;t[u>>2]=a;if((m|0)==(s|0)){d=6;break}}if((d|0)==6){n=t[o>>2]|0;break}t[_>>2]=t[_>>2]|8;jf(f,4,4662,h)|0;t[_>>2]=t[_>>2]|8;t[u>>2]=0;e=-1;m=-1;I=e;c=w;return m|0}}while(0);t[b>>2]=n;e:do{if((r|0)>0|(r|0)==0&i>>>0>0){o=e+24|0;a=0;n=0;while(1){s=po[t[o>>2]&63](i,r,t[e>>2]|0)|0;l=I;if((s|0)==-1&(l|0)==-1)break;i=Il(i|0,r|0,s|0,l|0)|0;r=I;a=Bl(s|0,l|0,a|0,n|0)|0;n=I;if(!((r|0)>0|(r|0)==0&i>>>0>0))break e}jf(f,4,4688,k)|0;t[_>>2]=t[_>>2]|8;m=e+56|0;e=m;e=Bl(t[e>>2]|0,t[e+4>>2]|0,a|0,n|0)|0;t[m>>2]=e;t[m+4>>2]=I;m=(a|0)!=0|(n|0)!=0;e=m?n:-1;m=m?a:-1;I=e;c=w;return m|0}else{a=0;n=0}}while(0);e=e+56|0;m=e;m=Bl(t[m>>2]|0,t[m+4>>2]|0,a|0,n|0)|0;t[e>>2]=m;t[e+4>>2]=I;e=n;m=a;I=e;c=w;return m|0}function gf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;_=c;c=c+16|0;o=_;h=e+32|0;n=t[h>>2]|0;d=e+36|0;t[d>>2]=n;b=e+48|0;a=t[b>>2]|0;do{if(!a)a=e;else{l=e+20|0;while(1){s=po[t[l>>2]&63](n,a,t[e>>2]|0)|0;if((s|0)==-1)break;n=(t[d>>2]|0)+s|0;t[d>>2]=n;k=t[b>>2]|0;a=k-s|0;t[b>>2]=a;if((k|0)==(s|0)){u=6;break}}if((u|0)==6){a=e;n=t[h>>2]|0;break}k=e+68|0;t[k>>2]=t[k>>2]|8;jf(f,4,4662,o)|0;t[k>>2]=t[k>>2]|8;k=0;c=_;return k|0}}while(0);t[d>>2]=n;t[b>>2]=0;if(!(po[t[e+28>>2]&63](i,r,t[a>>2]|0)|0)){k=e+68|0;t[k>>2]=t[k>>2]|8;k=0;c=_;return k|0}else{k=e+56|0;t[k>>2]=i;t[k+4>>2]=r;k=1;c=_;return k|0}return 0}function yf(e,i,r){e=e|0;i=i|0;r=r|0;return-1}function Mf(e,i,r){e=e|0;i=i|0;r=r|0;return-1}function Af(e,i,r){e=e|0;i=i|0;r=r|0;I=-1;return-1}function Ef(e,i,r){e=e|0;i=i|0;r=r|0;return 0}function Sf(e){e=e|0;var i=0,r=0,f=0;f=Fn(1,72)|0;if(!f){e=0;return e|0}t[f+64>>2]=1048576;i=Nn(1048576)|0;t[f+32>>2]=i;if(!i){Yn(f);e=0;return e|0}t[f+36>>2]=i;i=f+68|0;r=t[i>>2]|0;if(!e){t[i>>2]=r|1;t[f+40>>2]=31;t[f+44>>2]=32}else{t[i>>2]=r|2;t[f+40>>2]=29;t[f+44>>2]=30}t[f+16>>2]=4;t[f+20>>2]=5;t[f+24>>2]=6;t[f+28>>2]=7;e=f;return e|0}function Tf(e){e=e|0;var i=0;if(!e)return;i=t[e+4>>2]|0;if(i)yo[i&7](t[e>>2]|0);i=e+32|0;Yn(t[i>>2]|0);t[i>>2]=0;Yn(e);return}function Rf(e,i){e=e|0;i=i|0;if(!e)return;if(!(t[e+68>>2]&2))return;t[e+16>>2]=i;return}function Cf(e,i){e=e|0;i=i|0;if(!e)return;t[e+28>>2]=i;return}function Pf(e,i){e=e|0;i=i|0;if(!e)return;if(!(t[e+68>>2]&1))return;t[e+20>>2]=i;return}function If(e,i){e=e|0;i=i|0;if(!e)return;t[e+24>>2]=i;return}function Of(e,i,r){e=e|0;i=i|0;r=r|0;if(!e)return;t[e>>2]=i;t[e+4>>2]=r;return}function xf(e,i,r){e=e|0;i=i|0;r=r|0;if(!e)return;e=e+8|0;t[e>>2]=i;t[e+4>>2]=r;return}function Lf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0;y=c;c=c+16|0;m=y+8|0;w=y;g=e+48|0;n=t[g>>2]|0;if(n>>>0>=r>>>0){p=e+36|0;Dl(i|0,t[p>>2]|0,r|0)|0;t[p>>2]=(t[p>>2]|0)+r;t[g>>2]=(t[g>>2]|0)-r;g=e+56|0;p=g;p=Bl(t[p>>2]|0,t[p+4>>2]|0,r|0,0)|0;t[g>>2]=p;t[g+4>>2]=I;g=r;c=y;return g|0}v=e+68|0;if(t[v>>2]&4){p=e+36|0;Dl(i|0,t[p>>2]|0,n|0)|0;f=t[g>>2]|0;t[p>>2]=(t[p>>2]|0)+f;p=e+56|0;v=p;f=Bl(t[v>>2]|0,t[v+4>>2]|0,f|0,0)|0;t[p>>2]=f;t[p+4>>2]=I;t[g>>2]=0;g=(n|0)!=0?n:-1;c=y;return g|0}if(!n){b=e+32|0;a=t[b>>2]|0;_=e+36|0;t[_>>2]=a;k=_;p=e+56|0;n=0}else{_=e+36|0;Dl(i|0,t[_>>2]|0,n|0)|0;b=e+32|0;a=t[b>>2]|0;t[_>>2]=a;k=t[g>>2]|0;p=e+56|0;h=p;h=Bl(t[h>>2]|0,t[h+4>>2]|0,k|0,0)|0;d=p;t[d>>2]=h;t[d+4>>2]=I;t[g>>2]=0;r=r-k|0;i=i+k|0;k=_}h=e+64|0;d=e+16|0;u=i;s=a;while(1){i=t[h>>2]|0;a=t[d>>2]|0;if(r>>>0<i>>>0){a=po[a&63](s,i,t[e>>2]|0)|0;t[g>>2]=a;if((a|0)==-1){a=11;break}if(a>>>0>=r>>>0){i=u;a=14;break}Dl(u|0,t[k>>2]|0,a|0)|0;s=t[b>>2]|0;t[_>>2]=s;i=t[g>>2]|0;l=p;l=Bl(t[l>>2]|0,t[l+4>>2]|0,i|0,0)|0;o=I;n=a+n|0}else{i=po[a&63](u,r,t[e>>2]|0)|0;t[g>>2]=i;if((i|0)==-1){a=16;break}n=i+n|0;if(i>>>0>=r>>>0){a=20;break}s=t[b>>2]|0;t[_>>2]=s;l=p;l=Bl(t[l>>2]|0,t[l+4>>2]|0,i|0,0)|0;o=I}a=p;t[a>>2]=l;t[a+4>>2]=o;t[g>>2]=0;r=r-i|0;u=u+i|0}if((a|0)==11){jf(f,4,4636,w)|0;t[g>>2]=0;t[v>>2]=t[v>>2]|4;g=(n|0)!=0?n:-1;c=y;return g|0}else if((a|0)==14){Dl(i|0,t[k>>2]|0,r|0)|0;t[k>>2]=(t[k>>2]|0)+r;t[g>>2]=(t[g>>2]|0)-r;f=p;f=Bl(t[f>>2]|0,t[f+4>>2]|0,r|0,0)|0;g=p;t[g>>2]=f;t[g+4>>2]=I;g=n+r|0;c=y;return g|0}else if((a|0)==16){jf(f,4,4636,m)|0;t[g>>2]=0;t[v>>2]=t[v>>2]|4;g=(n|0)!=0?n:-1;c=y;return g|0}else if((a|0)==20){f=p;f=Bl(t[f>>2]|0,t[f+4>>2]|0,i|0,0)|0;t[p>>2]=f;t[p+4>>2]=I;t[_>>2]=t[b>>2];t[g>>2]=0;g=n;c=y;return g|0}return 0}function Bf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0;p=c;c=c+16|0;w=p;d=e+68|0;if(t[d>>2]&8){v=-1;c=p;return v|0}k=e+64|0;n=t[k>>2]|0;v=e+48|0;o=t[v>>2]|0;a=n-o|0;do{if(a>>>0<r>>>0){b=e+32|0;s=e+36|0;_=e+20|0;l=e+56|0;u=n;h=a;n=0;e:while(1){if((u|0)==(o|0))a=t[b>>2]|0;else{Dl(t[s>>2]|0,i|0,h|0)|0;a=t[b>>2]|0;t[s>>2]=a;o=(t[v>>2]|0)+h|0;t[v>>2]=o;g=l;g=Bl(t[g>>2]|0,t[g+4>>2]|0,h|0,0)|0;u=l;t[u>>2]=g;t[u+4>>2]=I;r=r-h|0;i=i+h|0;n=h+n|0}t[s>>2]=a;if(!o)o=0;else{do{u=po[t[_>>2]&63](a,o,t[e>>2]|0)|0;if((u|0)==-1)break e;a=(t[s>>2]|0)+u|0;t[s>>2]=a;g=t[v>>2]|0;o=g-u|0;t[v>>2]=o}while((g|0)!=(u|0));a=t[b>>2]|0}t[s>>2]=a;u=t[k>>2]|0;h=u-o|0;if(r>>>0<=h>>>0){m=5;break}}if((m|0)==5)break;t[d>>2]=t[d>>2]|8;jf(f,4,4662,w)|0;g=-1;c=p;return g|0}else{a=e+36|0;l=e+56|0;s=a;a=t[a>>2]|0;n=0}}while(0);Dl(a|0,i|0,r|0)|0;t[s>>2]=(t[s>>2]|0)+r;t[v>>2]=(t[v>>2]|0)+r;v=l;v=Bl(t[v>>2]|0,t[v+4>>2]|0,r|0,0)|0;g=l;t[g>>2]=v;t[g+4>>2]=I;g=n+r|0;c=p;return g|0}function zf(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;d=c;c=c+16|0;o=d;a=e+32|0;r=t[a>>2]|0;h=e+36|0;t[h>>2]=r;s=e+48|0;f=t[s>>2]|0;do{if(f){l=e+20|0;while(1){n=po[t[l>>2]&63](r,f,t[e>>2]|0)|0;if((n|0)==-1)break;r=(t[h>>2]|0)+n|0;t[h>>2]=r;b=t[s>>2]|0;f=b-n|0;t[s>>2]=f;if((b|0)==(n|0)){u=6;break}}if((u|0)==6){r=t[a>>2]|0;break}b=e+68|0;t[b>>2]=t[b>>2]|8;jf(i,4,4662,o)|0;b=0;c=d;return b|0}}while(0);t[h>>2]=r;b=1;c=d;return b|0}function Df(e){e=e|0;e=e+56|0;I=t[e+4>>2]|0;return t[e>>2]|0}function Nf(e){e=e|0;var i=0,r=0;r=e+8|0;i=t[r>>2]|0;r=t[r+4>>2]|0;if((i|0)==0&(r|0)==0){r=0;e=0;I=r;return e|0}e=e+56|0;e=Il(i|0,r|0,t[e>>2]|0,t[e+4>>2]|0)|0;r=I;I=r;return e|0}function Ff(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;e=Ro[t[e+40>>2]&63](e,i,r,f)|0;return e|0}function Hf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;return Ro[t[e+44>>2]&63](e,i,r,f)|0}function Uf(e){e=e|0;return(t[e+28>>2]|0)!=7|0}function jf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0;l=c;c=c+528|0;a=l;s=l+16|0;e:do{if(e){switch(i|0){case 1:{i=e;n=e+12|0;break}case 2:{i=e+4|0;n=e+16|0;break}case 4:{i=e+8|0;n=e+20|0;break}default:{i=0;break e}}e=t[i>>2]|0;i=t[n>>2]|0;if(i)if(!r)i=1;else{xl(s|0,0,512)|0;t[a>>2]=f;al(s,512,r,a)|0;Mo[i&7](s,e);i=1}else i=0}else i=0}while(0);c=l;return i|0}function Yf(e){e=e|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=4;t[e+20>>2]=4;t[e+16>>2]=4;return}function qf(e,i){e=e|0;i=i|0;return}function $f(){return Fn(1,36)|0}function Vf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0;f=Fn(1,36)|0;if(!f){l=f;return l|0}t[f+20>>2]=r;s=f+16|0;t[s>>2]=e;r=Fn(1,e*52|0)|0;l=f+24|0;t[l>>2]=r;if(!r){r=t[f+28>>2]|0;if(r)Yn(r);Yn(f);l=0;return l|0}if(!e){l=f;return l|0}n=0;while(1){t[r+(n*52|0)>>2]=t[i+(n*36|0)>>2];t[r+(n*52|0)+4>>2]=t[i+(n*36|0)+4>>2];o=t[i+(n*36|0)+8>>2]|0;t[r+(n*52|0)+8>>2]=o;u=t[i+(n*36|0)+12>>2]|0;t[r+(n*52|0)+12>>2]=u;t[r+(n*52|0)+16>>2]=t[i+(n*36|0)+16>>2];t[r+(n*52|0)+20>>2]=t[i+(n*36|0)+20>>2];t[r+(n*52|0)+24>>2]=t[i+(n*36|0)+24>>2];t[r+(n*52|0)+28>>2]=t[i+(n*36|0)+28>>2];t[r+(n*52|0)+32>>2]=t[i+(n*36|0)+32>>2];o=Fn(ie(u,o)|0,4)|0;t[r+(n*52|0)+44>>2]=o;n=n+1|0;if(!o)break;if(n>>>0>=e>>>0){a=22;break}r=t[l>>2]|0}if((a|0)==22)return f|0;r=t[l>>2]|0;if(r){n=t[s>>2]|0;if(n){i=0;while(1){r=t[r+(i*52|0)+44>>2]|0;if(r){Yn(r);n=t[s>>2]|0}i=i+1|0;if(i>>>0>=n>>>0)break;r=t[l>>2]|0}r=t[l>>2]|0}Yn(r)}r=t[f+28>>2]|0;if(r)Yn(r);Yn(f);u=0;return u|0}function Xf(e){e=e|0;var i=0,r=0,f=0,n=0,a=0;if(!e)return;n=e+24|0;i=t[n>>2]|0;if(i){a=e+16|0;r=t[a>>2]|0;if(r){f=0;while(1){i=t[i+(f*52|0)+44>>2]|0;if(i){Yn(i);r=t[a>>2]|0}f=f+1|0;if(f>>>0>=r>>>0)break;i=t[n>>2]|0}i=t[n>>2]|0}Yn(i)}i=t[e+28>>2]|0;if(i)Yn(i);Yn(e);return}function Gf(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0;r=t[i+4>>2]|0;f=t[e>>2]|0;a=t[i+8>>2]|0;s=t[e+4>>2]|0;n=t[i+12>>2]|0;c=(ie((t[i+24>>2]|0)+-1|0,n)|0)+r|0;l=t[i+16>>2]|0;o=(ie((t[i+28>>2]|0)+-1|0,l)|0)+a|0;i=Bl(c|0,0,n|0,0)|0;i=i|0-I;n=t[e+8>>2]|0;l=Bl(o|0,0,l|0,0)|0;l=l|0-I;o=t[e+12>>2]|0;c=t[e+16>>2]|0;if(!c)return;u=(r>>>0>f>>>0?r:f)+-1|0;a=(a>>>0>s>>>0?a:s)+-1|0;n=(i>>>0<n>>>0?i:n)+-1|0;r=(l>>>0<o>>>0?l:o)+-1|0;f=0;i=t[e+24>>2]|0;while(1){s=t[i>>2]|0;o=((u+s|0)>>>0)/(s>>>0)|0;b=t[i+4>>2]|0;e=((a+b|0)>>>0)/(b>>>0)|0;l=t[i+40>>2]|0;d=Ll(1,0,l|0)|0;h=I;s=Bl((((n+s|0)>>>0)/(s>>>0)|0)-o|0,0,-1,-1)|0;s=Bl(s|0,I|0,d|0,h|0)|0;s=zl(s|0,I|0,l|0)|0;b=Bl((((r+b|0)>>>0)/(b>>>0)|0)-e|0,0,-1,-1)|0;h=Bl(b|0,I|0,d|0,h|0)|0;l=zl(h|0,I|0,l|0)|0;t[i+8>>2]=s;t[i+12>>2]=l;t[i+16>>2]=o;t[i+20>>2]=e;f=f+1|0;if(f>>>0>=c>>>0)break;else i=i+52|0}return}function Kf(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0,o=0;t[i>>2]=t[e>>2];t[i+4>>2]=t[e+4>>2];t[i+8>>2]=t[e+8>>2];t[i+12>>2]=t[e+12>>2];o=i+24|0;f=t[o>>2]|0;l=i+16|0;if(!f)r=o;else{r=t[l>>2]|0;if(!r)r=o;else{n=0;while(1){f=t[f+(n*52|0)+44>>2]|0;if(f){Yn(f);r=t[l>>2]|0}n=n+1|0;if(n>>>0>=r>>>0)break;f=t[o>>2]|0}r=o;f=t[o>>2]|0}Yn(f);t[o>>2]=0}f=t[e+16>>2]|0;t[l>>2]=f;f=Nn(f*52|0)|0;t[r>>2]=f;if(!f){t[o>>2]=0;t[l>>2]=0;return}if(t[l>>2]|0){s=e+24|0;a=0;do{r=f+(a*52|0)|0;f=(t[s>>2]|0)+(a*52|0)|0;n=r+52|0;do{t[r>>2]=t[f>>2];r=r+4|0;f=f+4|0}while((r|0)<(n|0));f=t[o>>2]|0;t[f+(a*52|0)+44>>2]=0;a=a+1|0}while(a>>>0<(t[l>>2]|0)>>>0)}t[i+20>>2]=t[e+20>>2];n=e+32|0;r=t[n>>2]|0;a=i+32|0;t[a>>2]=r;if(!r){t[i+28>>2]=0;return}f=Nn(r)|0;r=i+28|0;t[r>>2]=f;if(!f){t[r>>2]=0;t[a>>2]=0;return}else{Dl(f|0,t[e+28>>2]|0,t[n>>2]|0)|0;return}}function Wf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0;f=Fn(1,36)|0;if(!f){e=f;return e|0}t[f+20>>2]=r;t[f+16>>2]=e;r=Fn(e,52)|0;t[f+24>>2]=r;if(!r){r=t[f+28>>2]|0;if(r)Yn(r);Yn(f);e=0;return e|0}else{if(!e){e=f;return e|0}else n=0;do{t[r+(n*52|0)>>2]=t[i+(n*36|0)>>2];t[r+(n*52|0)+4>>2]=t[i+(n*36|0)+4>>2];t[r+(n*52|0)+8>>2]=t[i+(n*36|0)+8>>2];t[r+(n*52|0)+12>>2]=t[i+(n*36|0)+12>>2];t[r+(n*52|0)+16>>2]=t[i+(n*36|0)+16>>2];t[r+(n*52|0)+20>>2]=t[i+(n*36|0)+20>>2];t[r+(n*52|0)+24>>2]=t[i+(n*36|0)+24>>2];t[r+(n*52|0)+32>>2]=t[i+(n*36|0)+32>>2];t[r+(n*52|0)+44>>2]=0;n=n+1|0}while((n|0)!=(e|0));return f|0}return 0}function Zf(e,i,r){e=e|0;i=i|0;r=r|0;if(!e){r=0;return r|0}t[e+64>>2]=i;t[e+52>>2]=r;r=1;return r|0}function Jf(e,i,r){e=e|0;i=i|0;r=r|0;if(!e){r=0;return r|0}t[e+60>>2]=i;t[e+48>>2]=r;r=1;return r|0}function Qf(e,i,r){e=e|0;i=i|0;r=r|0;if(!e){r=0;return r|0}t[e+56>>2]=i;t[e+44>>2]=r;r=1;return r|0}function en(e,i){e=e|0;i=i|0;var r=0;if(!e){e=0;return e|0}r=Sf(i)|0;if(!r){e=0;return e|0}Of(r,e,0);xf(r,t[e+8>>2]|0,0);if(!i)Pf(r,9);else Rf(r,8);If(r,1);Cf(r,10);e=r;return e|0}function rn(){return 4703}function fn(e){e=e|0;var i=0;i=Fn(1,84)|0;if(!i){e=0;return e|0}t[i+68>>2]=1;switch(e|0){case 0:{t[i+72>>2]=13;t[i+76>>2]=2;t[i+80>>2]=3;t[i+4>>2]=33;t[i+16>>2]=11;t[i>>2]=34;t[i+20>>2]=1;t[i+24>>2]=5;t[i+8>>2]=1;t[i+12>>2]=1;t[i+28>>2]=1;t[i+32>>2]=1;t[i+36>>2]=12;e=rt()|0;t[i+40>>2]=e;if(!e){Yn(i);e=0;return e|0}break}case 2:{t[i+72>>2]=14;t[i+76>>2]=4;t[i+80>>2]=5;t[i+4>>2]=35;t[i+16>>2]=13;t[i>>2]=36;t[i+8>>2]=2;t[i+12>>2]=2;t[i+20>>2]=2;t[i+24>>2]=6;t[i+28>>2]=2;t[i+32>>2]=2;t[i+36>>2]=14;e=zi(1)|0;t[i+40>>2]=e;if(!e){Yn(i);e=0;return e|0}break}default:{Yn(i);e=0;return e|0}}Yf(i+44|0);e=i;return e|0}function nn(e){e=e|0;if(!e)return;xl(e|0,0,8248)|0;t[e+8200>>2]=-1;t[e+8204>>2]=-1;t[e+8248>>2]=0;return}function tn(e,i){e=e|0;i=i|0;var r=0;r=c;c=c+16|0;if(!((e|0)!=0&(i|0)!=0)){i=0;c=r;return i|0}if(!(t[e+68>>2]|0)){jf(e+44|0,1,4709,r)|0;i=0;c=r;return i|0}else{Mo[t[e+24>>2]&7](t[e+40>>2]|0,i);i=1;c=r;return i|0}return 0}function an(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=c;c=c+16|0;if(!((e|0)!=0&(i|0)!=0)){e=0;c=f;return e|0}if(!(t[i+68>>2]|0)){jf(i+44|0,1,4790,f)|0;e=0;c=f;return e|0}else{e=Ro[t[i>>2]&63](e,t[i+40>>2]|0,r,i+44|0)|0;c=f;return e|0}return 0}function sn(e,i,r){e=e|0;i=i|0;r=r|0;if(!((e|0)!=0&(i|0)!=0)){i=0;return i|0}if(!(t[e+68>>2]|0)){i=0;return i|0}i=Ro[t[e+4>>2]&63](t[e+40>>2]|0,i,r,e+44|0)|0;return i|0}function ln(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;if(!e){f=0;return f|0}if(!(t[e+68>>2]|0)){f=0;return f|0}f=vo[t[e+28>>2]&3](t[e+40>>2]|0,i,r,f,n,a,e+44|0)|0;return f|0}function on(e,i,r,f,n,a,s,l,o,u){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;if(!((r|0)!=0&((e|0)!=0&(i|0)!=0&(f|0)!=0))){l=0;return l|0}if(!(t[e+68>>2]|0)){l=0;return l|0}l=To[t[e+8>>2]&3](t[e+40>>2]|0,r,f,n,a,s,l,o,u,i,e+44|0)|0;return l|0}function un(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;if(!((e|0)!=0&(r|0)!=0&(n|0)!=0)){i=0;return i|0}if(!(t[e+68>>2]|0)){i=0;return i|0}i=Ao[t[e+12>>2]&7](t[e+40>>2]|0,i,r,f,n,e+44|0)|0;return i|0}function cn(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;if(!((e|0)!=0&(i|0)!=0)){f=0;return f|0}if(!(t[e+68>>2]|0)){f=0;return f|0}f=Po[t[e+32>>2]&3](t[e+40>>2]|0,i,r,e+44|0,f)|0;return f|0}function hn(e,i){e=e|0;i=i|0;if(!e){i=0;return i|0}i=po[t[e+36>>2]&63](t[e+40>>2]|0,i,e+44|0)|0;return i|0}function dn(e){e=e|0;var i=0;i=Fn(1,84)|0;if(!i){e=0;return e|0}t[i+68>>2]=0;switch(e|0){case 0:{t[i+4>>2]=15;t[i+12>>2]=16;t[i>>2]=37;t[i+8>>2]=3;t[i+16>>2]=1;t[i+20>>2]=38;e=Vn()|0;t[i+40>>2]=e;if(!e){Yn(i);e=0;return e|0}break}case 2:{t[i+4>>2]=17;t[i+12>>2]=18;t[i>>2]=39;t[i+8>>2]=4;t[i+16>>2]=2;t[i+20>>2]=40;e=zi(0)|0;t[i+40>>2]=e;if(!e){Yn(i);e=0;return e|0}break}default:{Yn(i);e=0;return e|0}}Yf(i+44|0);e=i;return e|0}function bn(e){e=e|0;if(!e)return;xl(e|0,0,18708)|0;t[e+5592>>2]=6;t[e+18684>>2]=0;t[e+5596>>2]=64;t[e+5600>>2]=64;t[e+44>>2]=0;t[e+5612>>2]=-1;t[e+18188>>2]=1;t[e+18192>>2]=1;f[e+18688>>0]=0;t[e+18196>>2]=-1;t[e+18200>>2]=-1;o[e+4792>>2]=0.0;t[e+4788>>2]=0;t[e+20>>2]=0;t[e+24>>2]=0;t[e+28>>2]=0;t[e+18692>>2]=0;return}function _n(e,i,r){e=e|0;i=i|0;r=r|0;if(!((e|0)!=0&(i|0)!=0&(r|0)!=0)){i=0;return i|0}if(t[e+68>>2]|0){i=0;return i|0}i=Ro[t[e+20>>2]&63](t[e+40>>2]|0,i,r,e+44|0)|0;return i|0}function kn(e,i,r){e=e|0;i=i|0;r=r|0;if(!((e|0)!=0&(r|0)!=0)){r=0;return r|0}if(t[e+68>>2]|0){r=0;return r|0}r=Ro[t[e>>2]&63](t[e+40>>2]|0,r,i,e+44|0)|0;return r|0}function wn(e,i){e=e|0;i=i|0;if(!((e|0)!=0&(i|0)!=0)){i=0;return i|0}if(t[e+68>>2]|0){i=0;return i|0}i=po[t[e+4>>2]&63](t[e+40>>2]|0,i,e+44|0)|0;return i|0}function mn(e,i){e=e|0;i=i|0;if(!((e|0)!=0&(i|0)!=0)){i=0;return i|0}if(t[e+68>>2]|0){i=0;return i|0}i=po[t[e+12>>2]&63](t[e+40>>2]|0,i,e+44|0)|0;return i|0}function vn(e,i){e=e|0;i=i|0;if(!((e|0)!=0&(i|0)!=0)){i=0;return i|0}if(!(t[e+68>>2]|0)){i=0;return i|0}i=po[t[e+16>>2]&63](t[e+40>>2]|0,i,e+44|0)|0;return i|0}function pn(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var l=0,o=0,u=0;u=a<<2;l=ie(u,a)|0;o=e+18704|0;a=s[o>>1]|0;n[o>>1]=(a&32768|0)==0?-32512:(a|256)&65535;t[e+5608>>2]=1;f[e+18690>>0]=2;o=Nn(l+u|0)|0;a=e+18696|0;t[a>>2]=o;if(!o){r=0;return r|0}Dl(o|0,i|0,l|0)|0;Dl((t[a>>2]|0)+l|0,r|0,u|0)|0;r=1;return r|0}function gn(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;if(!((r|0)!=0&((e|0)!=0&(n|0)!=0))){i=0;return i|0}if(t[e+68>>2]|0){i=0;return i|0}i=Ao[t[e+8>>2]&7](t[e+40>>2]|0,i,r,f,n,e+44|0)|0;return i|0}function yn(e){e=e|0;var i=0,r=0;if(!e)return;i=e+40|0;r=t[i>>2]|0;if(!(t[e+68>>2]|0))yo[t[e+16>>2]&7](r);else yo[t[e+20>>2]&7](r);t[i>>2]=0;Yn(e);return}function Mn(e,i,r){e=e|0;i=i|0;r=r|0;if(!e)return;So[t[e+72>>2]&15](t[e+40>>2]|0,i,r);return}function An(e){e=e|0;if(!e){e=0;return e|0}e=Eo[t[e+76>>2]&15](t[e+40>>2]|0)|0;return e|0}function En(e){e=e|0;var i=0,r=0;if(!e)return;i=t[e>>2]|0;r=t[i+48>>2]|0;if(r){Yn(r);i=t[e>>2]|0}Yn(i);t[e>>2]=0;return}function Sn(e){e=e|0;if(!e){e=0;return e|0}e=Eo[t[e+80>>2]&15](t[e+40>>2]|0)|0;return e|0}function Tn(e){e=e|0;var i=0;i=t[e>>2]|0;if(!i)return;Jn(i);t[e>>2]=0;return}function Rn(e,i){e=e|0;i=i|0;return Cn(e,1048576,i)|0}function Cn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if(!e){i=0;return i|0}f=Ys(e,(r|0)==0?4869:4872)|0;if(!f){i=0;return i|0}e=wf(i,r)|0;if(!e){Us(f)|0;i=0;return i|0}else{Of(e,f,6);Ws(f,0,2)|0;i=Qs(f)|0;Ws(f,0,0)|0;xf(e,i,((i|0)<0)<<31>>31);Rf(e,19);Pf(e,20);If(e,21);Cf(e,22);i=e;return i|0}return 0}function Pn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0;a=(t[r>>2]|0)+(t[r+8>>2]|0)|0;r=r+4|0;f=t[r>>2]|0;n=a-f|0;if((a|0)==(f|0)){a=-1;return a|0}a=n>>>0>i>>>0?i:n;Dl(e|0,f|0,a|0)|0;t[r>>2]=(t[r>>2]|0)+a;return a|0}function In(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0;u=r+4|0;f=t[u>>2]|0;l=r+8|0;a=t[l>>2]|0;o=f-(t[r>>2]|0)|0;n=(a|0)==0?1:a;while(1)if((n-o|0)>>>0<i>>>0)n=n<<1;else{s=n;break}if((s|0)!=(a|0)){f=Nn(s)|0;if(!f){i=-1;return i|0}n=t[r>>2]|0;if(n){Dl(f|0,n|0,o|0)|0;Yn(t[r>>2]|0)}t[r>>2]=f;f=f+o|0;t[u>>2]=f;t[l>>2]=s}Dl(f|0,e|0,i|0)|0;t[u>>2]=(t[u>>2]|0)+i;return i|0}function On(e,i){e=e|0;i=i|0;var r=0,f=0,n=0;n=(t[i>>2]|0)+(t[i+8>>2]|0)|0;i=i+4|0;r=t[i>>2]|0;f=n-r|0;if((n|0)==(r|0)){n=-1;return n|0}t[i>>2]=r+e;n=f>>>0>e>>>0?e:f;return n|0}function xn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=t[r+8>>2]|0;t[r+4>>2]=(t[r>>2]|0)+(0>(i|0)|0==(i|0)&f>>>0>e>>>0?e:f);return 1}function Ln(e,i,r){e=e|0;i=i|0;r=r|0;i=Xs(e,1,i,r)|0;return((i|0)!=0?i:-1)|0}function Bn(e,i,r){e=e|0;i=i|0;r=r|0;return il(e,1,i,r)|0}function zn(e,i,r){e=e|0;i=i|0;r=r|0;r=(Ws(r,e,1)|0)==0;I=r?i:-1;return(r?e:-1)|0}function Dn(e,i,r){e=e|0;i=i|0;r=r|0;return(Ws(r,e,0)|0)==0|0}function Nn(e){e=e|0;if(!e)e=0;else e=yl(e)|0;return e|0}function Fn(e,i){e=e|0;i=i|0;if(!i)e=0;else e=Al(e,i)|0;return e|0}function Hn(e){e=e|0;var i=0,r=0;r=c;c=c+16|0;i=r;do{if(e)if(!(Sl(i,16,e)|0)){i=t[i>>2]|0;break}else{t[i>>2]=0;i=0;break}else i=0}while(0);c=r;return i|0}function Un(e){e=e|0;Ml(e);return}function jn(e,i){e=e|0;i=i|0;if(!i)i=0;else i=El(e,i)|0;return i|0}function Yn(e){e=e|0;Ml(e);return}function qn(e){e=e|0;var i=0,r=0;i=696;while(1){r=t[i>>2]|0;if((r|0)==-1|(r|0)==(e|0))break;else i=i+12|0}return i+4|0}function $n(e,i){e=e|0;i=i|0;if(!((e|0)!=0&(i|0)!=0))return;t[e+172>>2]=t[i+4>>2];t[e+168>>2]=t[i>>2];return}function Vn(){var e=0,i=0;e=Fn(1,208)|0;if(!e){e=0;return e|0}t[e>>2]=0;i=e+184|0;f[i>>0]=f[i>>0]&-3;i=Nn(1e3)|0;t[e+44>>2]=i;if(!i){Xn(e);i=0;return i|0}t[e+48>>2]=1e3;i=sa()|0;t[e+192>>2]=i;if(!i){Xn(e);i=0;return i|0}i=sa()|0;t[e+188>>2]=i;if(i){i=e;return i|0}Xn(e);i=0;return i|0}function Xn(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0;if(!e)return;if(!(t[e>>2]|0)){i=e+36|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0}i=e+24|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0;t[e+28>>2]=0}i=e+44|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0;t[e+48>>2]=0}}else{i=e+12|0;r=t[i>>2]|0;if(r){_t(r);Yn(t[i>>2]|0);t[i>>2]=0}i=e+16|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0;t[e+20>>2]=0}}Br(t[e+204>>2]|0);i=e+88|0;s=e+164|0;r=t[s>>2]|0;if(r){n=ie(t[e+112>>2]|0,t[e+116>>2]|0)|0;if(n){a=0;while(1){_t(r);a=a+1|0;if((a|0)==(n|0))break;else r=r+5640|0}r=t[s>>2]|0}Yn(r);t[s>>2]=0}s=e+124|0;r=t[s>>2]|0;if(r){l=e+120|0;n=t[l>>2]|0;if(n){a=0;while(1){r=t[r+(a<<3)>>2]|0;if(r){Yn(r);n=t[l>>2]|0}a=a+1|0;if(a>>>0>=n>>>0)break;r=t[s>>2]|0}r=t[s>>2]|0}t[l>>2]=0;Yn(r);t[s>>2]=0}l=e+144|0;Yn(t[l>>2]|0);t[l>>2]=0;t[e+128>>2]=0;l=e+108|0;Yn(t[l>>2]|0);t[l>>2]=0;if(!(f[e+184>>0]&2)){l=e+176|0;Yn(t[l>>2]|0);t[l>>2]=0}r=i+100|0;do{t[i>>2]=0;i=i+4|0}while((i|0)<(r|0));l=e+188|0;la(t[l>>2]|0);t[l>>2]=0;la(t[e+192>>2]|0);t[l>>2]=0;l=e+196|0;Jn(t[l>>2]|0);t[l>>2]=0;l=e+80|0;Xf(t[l>>2]|0);t[l>>2]=0;l=e+84|0;Xf(t[l>>2]|0);t[l>>2]=0;Yn(e);return}function Gn(e,i,r,a){e=e|0;i=i|0;r=r|0;a=a|0;var s=0,l=0,h=0,d=0,b=0,_=0,k=0,w=0.0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,j=0,Y=0,q=0,$=0,V=0,X=0,G=0,K=0,W=0,Z=0,J=0,Q=0,ee=0,re=0,fe=0,ne=0,te=0,ae=0,se=0,le=0,oe=0,ue=0,ce=0.0;ue=c;c=c+320|0;te=ue+296|0;ne=ue+288|0;oe=ue+280|0;le=ue+272|0;se=ue+264|0;ae=ue+256|0;fe=ue+248|0;re=ue+240|0;G=ue+232|0;V=ue+224|0;$=ue+216|0;q=ue+208|0;Y=ue+200|0;j=ue+192|0;H=ue+184|0;g=ue+176|0;p=ue+168|0;v=ue+160|0;m=ue+152|0;k=ue+144|0;L=ue+136|0;x=ue+128|0;N=ue+112|0;O=ue+104|0;I=ue+96|0;P=ue+88|0;R=ue+80|0;T=ue+72|0;S=ue+64|0;E=ue+56|0;A=ue+48|0;M=ue+32|0;y=ue+24|0;_=ue+16|0;h=ue+8|0;l=ue;z=ue+309|0;D=ue+300|0;if(!((e|0)!=0&(i|0)!=0&(r|0)!=0)){a=0;c=ue;return a|0}ee=i+5592|0;s=t[ee>>2]|0;if((s+-1|0)>>>0>32){t[l>>2]=s;t[l+4>>2]=33;jf(a,1,4875,l)|0;a=0;c=ue;return a|0}J=e+112|0;t[J>>2]=1;Q=e+116|0;t[Q>>2]=1;B=i+18704|0;do{if(!(n[B>>1]|0)){switch(t[i+18676>>2]|0){case 1:{n[B>>1]=3;t[i+18700>>2]=1302083;t[i+18680>>2]=1041666;l=1;break}case 2:{n[B>>1]=3;t[i+18700>>2]=651041;t[i+18680>>2]=520833;l=1;break}case 3:{n[B>>1]=4;t[i+18700>>2]=1302083;t[i+18680>>2]=1041666;l=1;break}default:l=0}s=t[i+18684>>2]|0;e:do{if((s|0)>=4)if((s|0)<33024){switch(s|0){case 4:break;default:{Z=13;break e}}n[B>>1]=4;break}else{switch(s|0){case 33024:break;default:{Z=13;break e}}n[B>>1]=-32512;break}else{switch(s|0){case 3:break;default:{Z=13;break e}}n[B>>1]=3}}while(0);if((Z|0)==13?(l|0)==0:0)break;jf(a,2,4931,h)|0}}while(0);C=i+18700|0;s=t[C>>2]|0;do{if((s|0)<1){w=+o[i+4792+((t[i+4788>>2]|0)+-1<<2)>>2];if(w>0.0){K=t[r+24>>2]|0;_=ie(t[K+8>>2]|0,t[r+16>>2]|0)|0;_=ie(_,t[K+12>>2]|0)|0;ce=+((ie(_,t[K+24>>2]|0)|0)>>>0);t[C>>2]=~~+U(+(ce/(w*8.0*+((t[K>>2]|0)>>>0)*+((t[K+4>>2]|0)>>>0))));break}else{t[C>>2]=0;break}}else{b=t[r+24>>2]|0;K=ie(t[b+8>>2]|0,t[r+16>>2]|0)|0;K=ie(K,t[b+12>>2]|0)|0;w=+((ie(K,t[b+24>>2]|0)|0)>>>0);s=ie(s<<3,t[b>>2]|0)|0;w=w/+((ie(s,t[b+4>>2]|0)|0)>>>0);b=i+4788|0;s=t[b>>2]|0;if(s){h=s;s=0;d=0;while(1){l=i+4792+(d<<2)|0;if(+o[l>>2]<w){o[l>>2]=w;l=t[b>>2]|0;s=1}else l=h;d=d+1|0;if(d>>>0>=l>>>0)break;else h=l}if(s)jf(a,2,5068,_)|0}}}while(0);s=n[B>>1]|0;e:do{if((s+-3&65535)>=4){if(s<<16>>16==7){jf(a,2,7228,k)|0;n[B>>1]=0;s=0;break}if((s+-256&65535)<524){jf(a,2,7283,m)|0;n[B>>1]=0;s=0;break}if((s+-1024&65535)<1180){jf(a,2,7331,v)|0;n[B>>1]=0;s=0;break}if(s<<16>>16<=-1)switch(s<<16>>16){case-32512:{s=-32512;break e}case-32768:{jf(a,2,7373,p)|0;n[B>>1]=0;s=0;break e}default:{jf(a,2,7461,g)|0;n[B>>1]=0;s=0;break e}}}else{if((s+-5&65535)<2){jf(a,2,5160,y)|0;n[B>>1]=0;s=0;break}t[i>>2]=0;t[i+12>>2]=1;t[i+16>>2]=1;f[i+18689>>0]=67;f[i+18688>>0]=1;t[i+4>>2]=0;t[i+8>>2]=0;t[i+18180>>2]=0;t[i+18184>>2]=0;t[i+5596>>2]=32;t[i+5600>>2]=32;t[i+5604>>2]=0;t[i+5612>>2]=-1;t[i+18188>>2]=1;t[i+18192>>2]=1;t[i+5608>>2]=1;l=i+4788|0;h=t[l>>2]|0;if((h|0)>1){ce=+o[i+4792+(h+-1<<2)>>2];t[M>>2]=h;u[M+8>>3]=ce;jf(a,2,5222,M)|0;t[i+4792>>2]=t[i+4792+((t[l>>2]|0)+-1<<2)>>2];t[l>>2]=1;s=n[B>>1]|0}i:do{switch(s&65535|0){case 3:{s=t[ee>>2]|0;if((s|0)>6){t[A>>2]=s+1;jf(a,2,5395,A)|0;t[ee>>2]=6;s=6}break}case 4:{s=t[ee>>2]|0;if((s|0)<2){t[E>>2]=s+1;jf(a,2,5541,E)|0;t[ee>>2]=1;s=1;break i}if((s|0)>7){t[S>>2]=s+1;jf(a,2,5695,S)|0;t[ee>>2]=7;s=7}break}default:s=t[ee>>2]|0}}while(0);l=i+40|0;t[l>>2]=t[l>>2]|1;l=i+5620|0;t[l>>2]=s+-1;if((s|0)>1){s=0;do{t[i+5624+(s<<2)>>2]=256;t[i+5756+(s<<2)>>2]=256;s=s+1|0}while((s|0)<(t[l>>2]|0))}t[i+44>>2]=4;if((n[B>>1]|0)==4){s=t[ee>>2]|0;t[i+96>>2]=1;t[i+48>>2]=0;t[i+52>>2]=0;t[i+56>>2]=1;K=s+-1|0;t[i+60>>2]=K;t[i+64>>2]=3;t[i+80>>2]=4;t[i+244>>2]=1;t[i+196>>2]=K;t[i+200>>2]=0;t[i+204>>2]=1;t[i+208>>2]=s;t[i+212>>2]=3;t[i+228>>2]=4;s=2}else s=0;t[i+4784>>2]=s;t[i+20>>2]=1;s=t[C>>2]|0;if((s|0)>=1){if((s|0)>1302083){jf(a,2,5998,R)|0;t[C>>2]=1302083}}else{t[C>>2]=1302083;jf(a,2,5849,T)|0}s=i+18680|0;l=t[s>>2]|0;if((l|0)>=1){if((l|0)>1041666){jf(a,2,6320,I)|0;t[s>>2]=1041666}}else{t[s>>2]=1041666;jf(a,2,6171,P)|0}l=t[r+16>>2]|0;d=t[r+24>>2]|0;b=t[d+8>>2]|0;s=ie(b,l)|0;_=t[d+12>>2]|0;s=ie(s,_)|0;ce=+((ie(s,t[d+24>>2]|0)|0)>>>0);s=ie(t[C>>2]<<3,t[d>>2]|0)|0;o[i+4792>>2]=ce/+((ie(s,t[d+4>>2]|0)|0)>>>0);s=n[B>>1]|0;i:do{if((l|0)==3){l=d+28|0;h=d+32|0;if(!((t[l>>2]|0)!=12|t[h>>2])){l=d+80|0;h=d+84|0;if(!((t[l>>2]|0)!=12|t[h>>2])){l=d+132|0;h=d+136|0;if(!((t[l>>2]|0)!=12|t[h>>2])){switch(s&65535|0){case 3:{if(_>>>0>1080|b>>>0>2048){t[x>>2]=b;t[x+4>>2]=_;jf(a,2,6892,x)|0;break i}break}case 4:{if(_>>>0>2160|b>>>0>4096){t[L>>2]=b;t[L+4>>2]=_;jf(a,2,7063,L)|0;break i}break}default:{}}break e}else{_=l;s=h;l=2}}else{_=l;s=h;l=1}}else{_=l;s=h;l=0}f[z>>0]=f[6659]|0;f[z+1>>0]=f[6660]|0;f[z+2>>0]=f[6661]|0;f[z+3>>0]=f[6662]|0;f[z+4>>0]=f[6663]|0;f[z+5>>0]=f[6664]|0;f[z+6>>0]=f[6665]|0;h=D;d=6666;b=h+9|0;do{f[h>>0]=f[d>>0]|0;h=h+1|0;d=d+1|0}while((h|0)<(b|0));K=(t[s>>2]|0)!=0?z:D;D=t[_>>2]|0;t[N>>2]=l;t[N+4>>2]=D;t[N+8>>2]=K;jf(a,2,6675,N)|0}else{t[O>>2]=l;jf(a,2,6493,O)|0}}while(0);n[B>>1]=0;s=0}}while(0);t[e+168>>2]=t[i+18680>>2];K=e+88|0;n[K>>1]=s;N=e+181|0;z=f[N>>0]&-2|t[i+20>>2]&1;f[N>>0]=z;D=i+24|0;z=(t[D>>2]&255)<<1&2|z&-3;f[N>>0]=z;f[N>>0]=z&-5|(t[i+28>>2]&255)<<2&4;do{if((t[D>>2]|0)!=0?(F=i+32|0,(t[F>>2]|0)!=0):0){s=ie((t[i+4788>>2]|0)*12|0,t[ee>>2]|0)|0;l=Nn(s)|0;t[e+176>>2]=l;if(l){Dl(l|0,t[F>>2]|0,s|0)|0;break}jf(a,1,7520,H)|0;a=0;c=ue;return a|0}}while(0);d=e+100|0;t[d>>2]=t[i+12>>2];b=e+104|0;t[b>>2]=t[i+16>>2];h=e+92|0;t[h>>2]=t[i+4>>2];_=e+96|0;t[_>>2]=t[i+8>>2];l=i+36|0;s=t[l>>2]|0;do{if(!s){s=rn()|0;l=Nn((dl(s)|0)+29|0)|0;t[e+108>>2]=l;if(l){t[q>>2]=7697;t[q+4>>2]=s;nl(l,7692,q)|0;break}jf(a,1,7646,Y)|0;a=0;c=ue;return a|0}else{s=Nn((dl(s)|0)+1|0)|0;t[e+108>>2]=s;if(s){hl(s,t[l>>2]|0)|0;break}jf(a,1,7592,j)|0;a=0;c=ue;return a|0}}while(0);s=(t[r+8>>2]|0)-(t[h>>2]|0)|0;l=t[r+12>>2]|0;if(!(t[i>>2]|0)){t[d>>2]=s;t[b>>2]=l-(t[_>>2]|0)}else{q=t[d>>2]|0;t[J>>2]=(s+-1+q|0)/(q|0)|0;q=t[b>>2]|0;t[Q>>2]=(l+-1-(t[_>>2]|0)+q|0)/(q|0)|0}if(f[i+18688>>0]|0){f[e+180>>0]=f[i+18689>>0]|0;f[N>>0]=f[N>>0]|8}q=Fn(ie(t[Q>>2]|0,t[J>>2]|0)|0,5640)|0;D=e+164|0;t[D>>2]=q;if(!q){jf(a,1,7726,$)|0;a=0;c=ue;return a|0}z=i+4784|0;S=t[z>>2]|0;do{if(S){y=i+48|0;T=t[ee>>2]|0;R=t[r+16>>2]|0;C=t[i+4788>>2]|0;P=ie(R,T)|0;I=Fn(ie(P,C)|0,4)|0;if(!I){jf(a,1,7780,V)|0;break}h=t[y>>2]|0;m=i+60|0;s=t[m>>2]|0;if(h>>>0<s>>>0){k=ie(h,R)|0;v=i+52|0;p=i+64|0;g=i+56|0;l=t[p>>2]|0;while(1){d=t[v>>2]|0;if(d>>>0<l>>>0){s=t[g>>2]|0;_=d;b=d+k|0;while(1){if(!s)s=0;else{l=b;d=0;while(1){t[I+(l<<2)>>2]=1;d=d+1|0;s=t[g>>2]|0;if(d>>>0>=s>>>0)break;else l=l+P|0}l=t[p>>2]|0}_=_+1|0;if(_>>>0>=l>>>0)break;else b=b+1|0}s=t[m>>2]|0}h=h+1|0;if(h>>>0>=s>>>0)break;else k=k+R|0}}if(S>>>0>1){E=1;do{s=y;y=y+148|0;g=t[s+8>>2]|0;p=s+156|0;d=t[p>>2]|0;g=d>>>0>g>>>0?g:0;b=t[y>>2]|0;M=s+160|0;l=t[M>>2]|0;if(b>>>0<l>>>0){k=ie(b,R)|0;A=s+152|0;m=s+164|0;v=ie(g,P)|0;h=t[m>>2]|0;s=d;while(1){d=t[A>>2]|0;if(d>>>0<h>>>0){_=d;d=d+k|0;while(1){if(g>>>0<s>>>0){l=d+v|0;h=g;while(1){t[I+(l<<2)>>2]=1;h=h+1|0;s=t[p>>2]|0;if(h>>>0>=s>>>0)break;else l=l+P|0}h=t[m>>2]|0}_=_+1|0;if(_>>>0>=h>>>0)break;else d=d+1|0}l=t[M>>2]|0}b=b+1|0;if(b>>>0>=l>>>0)break;else k=k+R|0}}E=E+1|0}while((E|0)!=(S|0))}if((C|0)!=0?(X=(R|0)==0,(T|0)!=0):0){l=0;k=0;s=0;do{if(!X){_=l;b=0;while(1){h=0;d=_;while(1){s=(t[I+(d<<2)>>2]|0)!=1|s;h=h+1|0;if((h|0)==(R|0))break;else d=d+1|0}b=b+1|0;if((b|0)==(T|0))break;else _=_+R|0}l=P+l|0}k=k+1|0}while((k|0)!=(C|0));if(s)jf(a,1,7828,G)|0}Yn(I)}}while(0);e:do{if(ie(t[Q>>2]|0,t[J>>2]|0)|0){y=i+4788|0;M=i+40|0;A=i+44|0;E=i+18690|0;S=r+16|0;l=i+18696|0;T=r+24|0;R=i+5596|0;C=i+5600|0;P=i+5604|0;I=i+5608|0;O=i+5612|0;x=i+5616|0;L=i+5620|0;B=0;i:while(1){k=t[D>>2]|0;m=k+(B*5640|0)|0;G=t[y>>2]|0;s=k+(B*5640|0)+8|0;t[s>>2]=G;if(G){h=((n[K>>1]|0)+-3&65535)<4;b=0;do{d=(f[N>>0]&4)==0;do{if(!h)if(d){t[k+(B*5640|0)+20+(b<<2)>>2]=t[i+4792+(b<<2)>>2];break}else{t[k+(B*5640|0)+5184+(b<<2)>>2]=t[i+5192+(b<<2)>>2];break}else{if(!d)t[k+(B*5640|0)+5184+(b<<2)>>2]=t[i+5192+(b<<2)>>2];t[k+(B*5640|0)+20+(b<<2)>>2]=t[i+4792+(b<<2)>>2]}}while(0);b=b+1|0}while(b>>>0<(t[s>>2]|0)>>>0)}t[m>>2]=t[M>>2];t[k+(B*5640|0)+4>>2]=t[A>>2];_=k+(B*5640|0)+16|0;t[_>>2]=f[E>>0];s=k+(B*5640|0)+5636|0;h=f[s>>0]|0;f[s>>0]=h&-5;if(!(t[z>>2]|0))t[k+(B*5640|0)+420>>2]=0;else{f[s>>0]=h|4;h=t[z>>2]|0;if(!h)s=0;else{d=B+1|0;b=0;s=0;do{if((d|0)==(t[i+48+(b*148|0)+48>>2]|0)){t[k+(B*5640|0)+424+(s*148|0)>>2]=t[i+48+(s*148|0)>>2];t[k+(B*5640|0)+424+(s*148|0)+4>>2]=t[i+48+(s*148|0)+4>>2];t[k+(B*5640|0)+424+(s*148|0)+8>>2]=t[i+48+(s*148|0)+8>>2];t[k+(B*5640|0)+424+(s*148|0)+12>>2]=t[i+48+(s*148|0)+12>>2];t[k+(B*5640|0)+424+(s*148|0)+16>>2]=t[i+48+(s*148|0)+16>>2];t[k+(B*5640|0)+424+(s*148|0)+32>>2]=t[i+48+(s*148|0)+32>>2];t[k+(B*5640|0)+424+(s*148|0)+48>>2]=t[i+48+(s*148|0)+48>>2];s=s+1|0}b=b+1|0}while(b>>>0<h>>>0)}t[k+(B*5640|0)+420>>2]=s+-1}G=Fn(t[S>>2]|0,1080)|0;g=k+(B*5640|0)+5584|0;t[g>>2]=G;if(!G){Z=149;break}do{if(!(t[l>>2]|0)){r:do{if((t[_>>2]|0)==1){s=t[S>>2]|0;if(s>>>0<=2){d=s;break}h=t[T>>2]|0;s=t[h>>2]|0;do{if((s|0)==(t[h+52>>2]|0)){if((s|0)!=(t[h+104>>2]|0))break;s=t[h+4>>2]|0;if((s|0)!=(t[h+56>>2]|0))break;if((s|0)==(t[h+108>>2]|0)){Z=175;break r}}}while(0);jf(a,2,8224,te)|0;t[_>>2]=0;Z=175}else Z=175}while(0);if((Z|0)==175){Z=0;d=t[S>>2]|0}if(!d)break;s=t[T>>2]|0;h=0;do{if(!(t[s+(h*52|0)+32>>2]|0))t[(t[g>>2]|0)+(h*1080|0)+1076>>2]=1<<(t[s+(h*52|0)+24>>2]|0)+-1;h=h+1|0}while(h>>>0<d>>>0);W=d;Z=166}else{d=t[S>>2]|0;d=ie(d<<2,d)|0;s=Nn(d)|0;b=(t[l>>2]|0)+d|0;if(!s){Z=152;break i}t[_>>2]=2;h=Nn(d)|0;t[k+(B*5640|0)+5608>>2]=h;if(!h){Z=154;break i}Dl(h|0,t[l>>2]|0,d|0)|0;Dl(s|0,t[l>>2]|0,d|0)|0;h=Nn(d)|0;d=k+(B*5640|0)+5604|0;t[d>>2]=h;if(!h){Z=156;break i}if(!(Na(s,h,t[S>>2]|0)|0)){Z=158;break i}h=Nn(t[S>>2]<<3)|0;t[k+(B*5640|0)+5600>>2]=h;if(!h){Z=160;break i}vr(h,t[S>>2]|0,t[d>>2]|0);Yn(s);s=t[S>>2]|0;if(s){h=t[g>>2]|0;d=0;do{t[h+(d*1080|0)+1076>>2]=t[b+(d<<2)>>2];d=d+1|0}while(d>>>0<s>>>0)}if(!(Kn(m,r)|0)){Z=167;break i}W=t[S>>2]|0;Z=166}}while(0);if((Z|0)==166?(Z=0,(W|0)!=0):0){p=0;do{m=t[g>>2]|0;v=m+(p*1080|0)|0;t[v>>2]=t[M>>2]&1;d=t[ee>>2]|0;b=m+(p*1080|0)+4|0;t[b>>2]=d;s=t[R>>2]|0;if((s|0)>1){h=0;do{s=s>>1;h=h+1|0}while((s|0)>1);s=h}else s=0;t[m+(p*1080|0)+8>>2]=s;s=t[C>>2]|0;if((s|0)>1){h=0;do{s=s>>1;h=h+1|0}while((s|0)>1);s=h}else s=0;t[m+(p*1080|0)+12>>2]=s;t[m+(p*1080|0)+16>>2]=t[P>>2];G=t[I>>2]|0;t[m+(p*1080|0)+20>>2]=(G|0)==0&1;t[m+(p*1080|0)+24>>2]=(G|0)!=0?2:0;t[m+(p*1080|0)+804>>2]=2;if((p|0)==(t[O>>2]|0))s=t[x>>2]|0;else s=0;t[m+(p*1080|0)+808>>2]=s;do{if(!(t[M>>2]&1)){if(!d)break;else s=0;do{t[m+(p*1080|0)+812+(s<<2)>>2]=15;t[m+(p*1080|0)+944+(s<<2)>>2]=15;s=s+1|0}while(s>>>0<(t[b>>2]|0)>>>0)}else{if((d|0)>0){b=d;k=0}else break;while(1){_=b;b=b+-1|0;s=t[L>>2]|0;do{if((k|0)<(s|0)){s=t[i+5624+(k<<2)>>2]|0;if((s|0)<1)t[m+(p*1080|0)+812+(b<<2)>>2]=1;else{if((s|0)>1){h=0;do{s=s>>1;h=h+1|0}while((s|0)>1);s=h}else s=0;t[m+(p*1080|0)+812+(b<<2)>>2]=s}s=t[i+5756+(k<<2)>>2]|0;if((s|0)<1){t[m+(p*1080|0)+944+(b<<2)>>2]=1;break}if((s|0)>1){h=0;do{s=s>>1;h=h+1|0}while((s|0)>1);s=h}else s=0;t[m+(p*1080|0)+944+(b<<2)>>2]=s}else{G=s+-1|0;h=k-G|0;s=t[i+5624+(G<<2)>>2]>>h;h=t[i+5756+(G<<2)>>2]>>h;if((s|0)<1)t[m+(p*1080|0)+812+(b<<2)>>2]=1;else{if((s|0)>1){d=0;do{s=s>>1;d=d+1|0}while((s|0)>1);s=d}else s=0;t[m+(p*1080|0)+812+(b<<2)>>2]=s}if((h|0)<1){t[m+(p*1080|0)+944+(b<<2)>>2]=1;break}if((h|0)>1){s=0;do{h=h>>1;s=s+1|0}while((h|0)>1)}else s=0;t[m+(p*1080|0)+944+(b<<2)>>2]=s}}while(0);if((_|0)<=1)break;else k=k+1|0}}}while(0);Ca(v,t[(t[T>>2]|0)+(p*52|0)+24>>2]|0);p=p+1|0}while(p>>>0<(t[S>>2]|0)>>>0)}B=B+1|0;if(B>>>0>=(ie(t[Q>>2]|0,t[J>>2]|0)|0)>>>0)break e}if((Z|0)==149){jf(a,1,7867,re)|0;a=0;c=ue;return a|0}else if((Z|0)==152){jf(a,1,7931,fe)|0;a=0;c=ue;return a|0}else if((Z|0)==154){Yn(s);jf(a,1,7974,ae)|0;a=0;c=ue;return a|0}else if((Z|0)==156){Yn(s);jf(a,1,8032,se)|0;a=0;c=ue;return a|0}else if((Z|0)==158){Yn(s);jf(a,1,8092,le)|0;a=0;c=ue;return a|0}else if((Z|0)==160){Yn(s);jf(a,1,8140,oe)|0;a=0;c=ue;return a|0}else if((Z|0)==167){jf(a,1,8190,ne)|0;a=0;c=ue;return a|0}}else l=i+18696|0}while(0);s=t[l>>2]|0;if(!s){a=1;c=ue;return a|0}Yn(s);t[l>>2]=0;a=1;c=ue;return a|0}function Kn(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0;if((t[e+16>>2]|0)!=2){e=1;return e|0}h=e+5604|0;w=e+5616|0;r=t[w>>2]|0;d=e+5620|0;do{if(t[h>>2]|0){do{if((r|0)==(t[d>>2]|0)){r=r+10|0;t[d>>2]=r;n=e+5612|0;r=jn(t[n>>2]|0,r*20|0)|0;if(r){t[n>>2]=r;k=t[w>>2]|0;xl(r+(k*20|0)|0,0,((t[d>>2]|0)-k|0)*20|0)|0;r=t[w>>2]|0;break}Yn(t[n>>2]|0);t[n>>2]=0;t[d>>2]=0;t[w>>2]=0;e=0;return e|0}else n=e+5612|0}while(0);u=t[n>>2]|0;s=u+(r*20|0)|0;c=u+(r*20|0)+12|0;n=t[c>>2]|0;if(n){Yn(n);t[c>>2]=0}t[u+(r*20|0)+8>>2]=1;t[u+(r*20|0)+4>>2]=1;t[s>>2]=2;n=t[i+16>>2]|0;n=ie(n,n)|0;a=n<<2;l=Nn(a)|0;t[c>>2]=l;if(!l){e=0;return e|0}else{So[t[768+(t[s>>2]<<2)>>2]&15](t[h>>2]|0,l,n);t[u+(r*20|0)+16>>2]=a;r=(t[w>>2]|0)+1|0;t[w>>2]=r;l=2;break}}else{l=1;s=0}}while(0);do{if((r|0)==(t[d>>2]|0)){n=r+10|0;t[d>>2]=n;r=e+5612|0;n=jn(t[r>>2]|0,n*20|0)|0;if(!n){Yn(t[r>>2]|0);t[r>>2]=0;t[d>>2]=0;t[w>>2]=0;e=0;return e|0}else{t[r>>2]=n;a=t[w>>2]|0;xl(n+(a*20|0)|0,0,((t[d>>2]|0)-a|0)*20|0)|0;if(!s){s=0;break}s=n+((a+-1|0)*20|0)|0;break}}else r=e+5612|0}while(0);h=t[r>>2]|0;d=t[w>>2]|0;k=h+(d*20|0)|0;b=h+(d*20|0)+12|0;r=t[b>>2]|0;if(r){Yn(r);t[b>>2]=0}_=l+1|0;t[h+(d*20|0)+8>>2]=l;t[h+(d*20|0)+4>>2]=2;t[k>>2]=2;i=i+16|0;r=t[i>>2]|0;n=r<<2;c=Nn(n)|0;t[b>>2]=c;if(!c){e=0;return e|0}a=Nn(n)|0;if(!a){Yn(t[b>>2]|0);t[b>>2]=0;e=0;return e|0}if(r){l=0;u=a;c=t[e+5584>>2]|0;while(1){o[u>>2]=+(t[c+1076>>2]|0);l=l+1|0;if((l|0)==(r|0))break;else{u=u+4|0;c=c+1080|0}}}So[t[768+(t[k>>2]<<2)>>2]&15](a,t[b>>2]|0,r);Yn(a);t[h+(d*20|0)+16>>2]=n;t[w>>2]=(t[w>>2]|0)+1;l=e+5628|0;r=t[l>>2]|0;a=e+5632|0;do{if((r|0)==(t[a>>2]|0)){r=r+10|0;t[a>>2]=r;n=e+5624|0;r=jn(t[n>>2]|0,r*20|0)|0;if(r){t[n>>2]=r;e=t[l>>2]|0;xl(r+(e*20|0)|0,0,((t[a>>2]|0)-e|0)*20|0)|0;r=t[l>>2]|0;break}Yn(t[n>>2]|0);t[n>>2]=0;t[a>>2]=0;t[l>>2]=0;e=0;return e|0}else n=e+5624|0}while(0);e=t[n>>2]|0;t[e+(r*20|0)+8>>2]=s;w=e+(r*20|0)+16|0;f[w>>0]=f[w>>0]|1;t[e+(r*20|0)+4>>2]=t[i>>2];t[e+(r*20|0)>>2]=_;t[e+(r*20|0)+12>>2]=k;t[l>>2]=(t[l>>2]|0)+1;e=1;return e|0}function Wn(e,i,r){e=e|0;i=i|0;r=r|0;return 1}function Zn(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0;o=$f()|0;u=i+80|0;t[u>>2]=o;if(!o){u=0;return u|0}n=i+192|0;if((oa(t[n>>2]|0,23,f)|0)!=0?(oa(t[n>>2]|0,24,f)|0)!=0:0){s=t[n>>2]|0;l=ua(s)|0;n=ca(s)|0;if(l){o=0;a=1;while(1){if(!a)a=0;else a=(po[t[n>>2]&63](i,e,f)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{n=n+4|0;a=a&1}}ha(s);if(!a){Xf(t[u>>2]|0);t[u>>2]=0;u=0;return u|0}}else ha(s);n=i+188|0;if((oa(t[n>>2]|0,25,f)|0)!=0?(oa(t[n>>2]|0,26,f)|0)!=0:0){s=t[n>>2]|0;l=ua(s)|0;n=ca(s)|0;if(l){o=0;a=1;while(1){if(!a)a=0;else a=(po[t[n>>2]&63](i,e,f)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{n=n+4|0;a=a&1}}ha(s);if(!a){Xf(t[u>>2]|0);t[u>>2]=0;u=0;return u|0}}else ha(s);n=$f()|0;t[r>>2]=n;if(!n){u=0;return u|0}Kf(t[u>>2]|0,n);n=ie(t[i+116>>2]|0,t[i+112>>2]|0)|0;l=i+196|0;t[(t[l>>2]|0)+36>>2]=n;n=Fn(n,40)|0;a=t[l>>2]|0;t[a+40>>2]=n;if(!n){u=0;return u|0}if(!(t[a+36>>2]|0)){u=1;return u|0}s=0;while(1){t[n+(s*40|0)+28>>2]=100;t[n+(s*40|0)+20>>2]=0;u=Fn(100,24)|0;a=t[l>>2]|0;n=t[a+40>>2]|0;t[n+(s*40|0)+24>>2]=u;s=s+1|0;if(!u){n=0;a=30;break}if(s>>>0>=(t[a+36>>2]|0)>>>0){n=1;a=30;break}}if((a|0)==30)return n|0}Xf(t[u>>2]|0);t[u>>2]=0;u=0;return u|0}Xf(t[u>>2]|0);t[u>>2]=0;u=0;return u|0}function Jn(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0;if(!e)return;i=e+28|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0}s=e+40|0;i=t[s>>2]|0;if(i){a=e+36|0;if(t[a>>2]|0){r=i;n=0;do{f=t[r+(n*40|0)+36>>2]|0;if(f){Yn(f);i=t[s>>2]|0;t[i+(n*40|0)+36>>2]=0;r=i}f=t[r+(n*40|0)+16>>2]|0;if(f){Yn(f);i=t[s>>2]|0;t[i+(n*40|0)+16>>2]=0;r=i}f=t[r+(n*40|0)+24>>2]|0;if(f){Yn(f);r=t[s>>2]|0;t[r+(n*40|0)+24>>2]=0;i=r}n=n+1|0}while(n>>>0<(t[a>>2]|0)>>>0)}Yn(i);t[s>>2]=0}Yn(e);return}function Qn(e,i,r,a,s,l,o,u,h,d,b){e=e|0;i=i|0;r=r|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;d=d|0;b=b|0;var _=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0,V=0,X=0,G=0,K=0,W=0,Z=0,J=0,Q=0,ee=0,re=0,fe=0,ne=0,te=0,ae=0,se=0,le=0,oe=0,ue=0,ce=0,he=0,de=0,be=0,_e=0,ke=0,we=0,me=0,ve=0,pe=0,ge=0,ye=0,Me=0,Ae=0,Ee=0,Se=0,Te=0,Re=0,Ce=0;Ce=c;c=c+256|0;Re=Ce+200|0;Te=Ce+192|0;Ee=Ce+184|0;Ae=Ce+176|0;_e=Ce+168|0;be=Ce+160|0;de=Ce+152|0;he=Ce+144|0;ce=Ce+136|0;ue=Ce+128|0;le=Ce+120|0;se=Ce+112|0;ye=Ce+104|0;pe=Ce+96|0;ae=Ce+88|0;te=Ce+80|0;ne=Ce+72|0;ge=Ce+64|0;fe=Ce+56|0;re=Ce+48|0;me=Ce+40|0;we=Ce+32|0;ke=Ce+24|0;oe=Ce+16|0;ee=Ce+8|0;Q=Ce;X=Ce+240|0;$=Ce+236|0;K=Ce+232|0;Z=Ce+228|0;J=Ce+224|0;V=Ce+220|0;W=Ce+216|0;q=Ce+212|0;G=Ce+208|0;t[q>>2]=65424;Se=e+8|0;e:do{switch(t[Se>>2]|0){case 256:{t[q>>2]=65497;_=e+76|0;Me=117;break}case 8:{ve=e+76|0;if(!(f[ve>>0]&1)){H=e+200|0;U=e+164|0;j=e+72|0;Y=e+24|0;T=e+196|0;R=e+112|0;C=e+116|0;O=X+2|0;x=X+6|0;L=X+7|0;B=e+16|0;z=e+20|0;D=e+64|0;_=65424;i:while(1){r:do{if((_|0)!=65427){while(1){S=Nf(d)|0;if((S|0)==0&(I|0)==0){Me=7;break}if((Lf(d,t[B>>2]|0,2,b)|0)!=2){Me=9;break i}hf(t[B>>2]|0,G,2);if((t[G>>2]|0)>>>0<2){Me=11;break i}if((t[q>>2]|0)==32896?(S=Nf(d)|0,(S|0)==0&(I|0)==0):0){Me=14;break}m=t[Se>>2]|0;_=t[G>>2]|0;if(m&16)t[Y>>2]=-2-_+(t[Y>>2]|0);k=_+-2|0;t[G>>2]=k;_=t[q>>2]|0;w=784;while(1){S=t[w>>2]|0;if((S|0)==0|(S|0)==(_|0)){A=w;break}else w=w+12|0}if(!(t[w+4>>2]&m)){Me=20;break i}if(k>>>0>(t[z>>2]|0)>>>0){S=Nf(d)|0;E=I;if(0>(E|0)|0==(E|0)&k>>>0>S>>>0){Me=24;break i}_=jn(t[B>>2]|0,t[G>>2]|0)|0;if(!_){Me=26;break i}t[B>>2]=_;k=t[G>>2]|0;t[z>>2]=k}else _=t[B>>2]|0;k=Lf(d,_,k,b)|0;if((k|0)!=(t[G>>2]|0)){Me=29;break i}_=t[w+8>>2]|0;if(!_){Me=31;break i}if(!(Ro[_&63](e,t[B>>2]|0,k,b)|0)){Me=33;break i}w=t[H>>2]|0;k=t[T>>2]|0;g=t[A>>2]|0;y=Df(d)|0;M=t[G>>2]|0;y=y-M+-4|0;M=M+4|0;k=k+40|0;p=t[k>>2]|0;_=t[p+(w*40|0)+20>>2]|0;m=p+(w*40|0)+28|0;v=t[m>>2]|0;if((_+1|0)>>>0>v>>>0){v=~~(+(v>>>0)+100.0)>>>0;t[m>>2]=v;m=jn(t[p+(w*40|0)+24>>2]|0,v*24|0)|0;v=t[k>>2]|0;_=v+(w*40|0)+24|0;if(!m){Me=41;break i}t[_>>2]=m;k=v;_=t[v+(w*40|0)+20>>2]|0}else{k=p;m=t[p+(w*40|0)+24>>2]|0}n[m+(_*24|0)>>1]=g;S=m+(_*24|0)+8|0;t[S>>2]=y;t[S+4>>2]=((y|0)<0)<<31>>31;t[m+(_*24|0)+16>>2]=M;t[k+(w*40|0)+20>>2]=_+1;if((g|0)==65424?(P=t[k+(w*40|0)+16>>2]|0,(P|0)!=0):0){S=P+((t[k+(w*40|0)+12>>2]|0)*24|0)|0;t[S>>2]=y;t[S+4>>2]=0}do{if((t[A>>2]|0)==65424){_=Df(d)|0;_=-4-(t[G>>2]|0)+_|0;S=D;E=t[S+4>>2]|0;if(!(0>(E|0)|(0==(E|0)?_>>>0>(t[S>>2]|0)>>>0:0)))break;S=D;t[S>>2]=_;t[S+4>>2]=0}}while(0);if(f[ve>>0]&4){Me=46;break}if((Lf(d,t[B>>2]|0,2,b)|0)!=2){Me=50;break i}hf(t[B>>2]|0,q,2);if((t[q>>2]|0)==65427)break r}if((Me|0)==7){Me=0;t[Se>>2]=64;break}else if((Me|0)==14){Me=0;t[Se>>2]=64;break}else if((Me|0)==46){Me=0;S=Ff(d,t[Y>>2]|0,0,b)|0;if(!((I|0)==0?(S|0)==(t[Y>>2]|0):0)){Me=47;break i}t[q>>2]=65427;break}}}while(0);S=Nf(d)|0;if((S|0)==0&(I|0)==0?(t[Se>>2]|0)==64:0){Me=115;break}_=f[ve>>0]|0;if(!(_&4)){k=t[H>>2]|0;w=t[U>>2]|0;if(!(t[j>>2]|0)){_=t[Y>>2]|0;if(_>>>0>1){m=_+-2|0;t[Y>>2]=m}else m=_}else{m=Nf(d)|0;m=Bl(m|0,I|0,-2,0)|0;t[Y>>2]=m}_=w+(k*5640|0)+5592|0;S=w+(k*5640|0)+5596|0;do{if(!m)E=1;else{E=Nf(d)|0;A=I;if(0>(A|0)|0==(A|0)&m>>>0>E>>>0)jf(b,2,8573,ae)|0;k=t[_>>2]|0;if(!k){E=Nn(t[Y>>2]|0)|0;t[_>>2]=E;if(!E)break i;else{E=0;break}}k=jn(k,(t[Y>>2]|0)+(t[S>>2]|0)|0)|0;if(!k){Me=65;break i}t[_>>2]=k;E=0}}while(0);k=t[T>>2]|0;if(k){y=Df(d)|0;m=I;A=Bl(y|0,m|0,-2,-1)|0;w=t[H>>2]|0;k=k+40|0;p=t[k>>2]|0;g=t[p+(w*40|0)+12>>2]|0;v=t[p+(w*40|0)+16>>2]|0;M=v+(g*24|0)+8|0;t[M>>2]=A;t[M+4>>2]=I;M=t[Y>>2]|0;m=Bl(M|0,0,y|0,m|0)|0;g=v+(g*24|0)+16|0;t[g>>2]=m;t[g+4>>2]=I;M=M+2|0;g=t[p+(w*40|0)+20>>2]|0;m=p+(w*40|0)+28|0;v=t[m>>2]|0;if((g+1|0)>>>0>v>>>0){v=~~(+(v>>>0)+100.0)>>>0;t[m>>2]=v;m=jn(t[p+(w*40|0)+24>>2]|0,v*24|0)|0;v=t[k>>2]|0;p=v+(w*40|0)+24|0;if(!m){_=p;Me=74;break}t[p>>2]=m;y=v;k=t[v+(w*40|0)+20>>2]|0}else{y=p;m=t[p+(w*40|0)+24>>2]|0;k=g}n[m+(k*24|0)>>1]=-109;g=Ol(0,A|0,32)|0;A=m+(k*24|0)+8|0;t[A>>2]=g;t[A+4>>2]=I;t[m+(k*24|0)+16>>2]=M;t[y+(w*40|0)+20>>2]=k+1}if(!E)_=Lf(d,(t[_>>2]|0)+(t[S>>2]|0)|0,t[Y>>2]|0,b)|0;else _=0;t[Se>>2]=(_|0)==(t[Y>>2]|0)?8:64;t[S>>2]=(t[S>>2]|0)+_;_=f[ve>>0]|0;if((_&9)==1){f[ve>>0]=_|8;k=t[H>>2]|0;do{if((Uf(d)|0)!=0?(N=Df(d)|0,F=I,!((N|0)==-1&(F|0)==-1)):0){while(1){if((Lf(d,X,2,b)|0)!=2){Me=81;break}hf(X,$,2);if((t[$>>2]|0)!=65424){Me=83;break}if((Lf(d,X,2,b)|0)!=2){Me=85;break}hf(X,K,2);if((t[K>>2]|0)!=10){Me=87;break}t[K>>2]=8;_=Lf(d,X,8,b)|0;if((_|0)!=(t[K>>2]|0)){Me=89;break}if((_|0)!=8){Me=91;break}hf(X,Z,2);hf(O,J,4);hf(x,V,1);hf(L,W,1);if((t[Z>>2]|0)==(k|0)){Me=97;break}_=t[J>>2]|0;if(_>>>0<14){Me=94;break}Me=_+-12|0;t[J>>2]=Me;Me=Ff(d,Me,0,b)|0;if(!((I|0)==0?(Me|0)==(t[J>>2]|0):0)){Me=96;break}}if((Me|0)==81){Me=0;_=(Hf(d,N,F,b)|0)!=0&1;k=0;break}else if((Me|0)==83){Me=0;_=(Hf(d,N,F,b)|0)!=0&1;k=0;break}else if((Me|0)==85){Me=0;jf(b,1,8295,se)|0;_=0;k=0;break}else if((Me|0)==87){Me=0;jf(b,1,8313,le)|0;_=0;k=0;break}else if((Me|0)==89){Me=0;jf(b,1,8295,ue)|0;_=0;k=0;break}else if((Me|0)==91){Me=0;jf(b,1,8662,ce)|0;_=0;k=0;break}else if((Me|0)==94){Me=0;_=(Hf(d,N,F,b)|0)!=0&1;k=0;break}else if((Me|0)==96){Me=0;_=(Hf(d,N,F,b)|0)!=0&1;k=0;break}else if((Me|0)==97){Me=0;k=(t[V>>2]|0)==(t[W>>2]|0)&1;_=(Hf(d,N,F,b)|0)!=0&1;break}}else{_=1;k=0}}while(0);if(!_){Me=99;break}if(k){_=ie(t[C>>2]|0,t[R>>2]|0)|0;f[ve>>0]=f[ve>>0]&-18|16;if(_){k=t[U>>2]|0;v=0;do{w=k+(v*5640|0)+5588|0;m=t[w>>2]|0;if(m)t[w>>2]=m+1;v=v+1|0}while((v|0)!=(_|0))}jf(b,2,8734,de)|0}}if(!(f[ve>>0]&1)){if((Lf(d,t[B>>2]|0,2,b)|0)!=2){Me=109;break}hf(t[B>>2]|0,q,2)}}else{f[ve>>0]=_&-6;t[Se>>2]=8;if((Lf(d,t[B>>2]|0,2,b)|0)!=2){Me=113;break}hf(t[B>>2]|0,q,2)}_=t[q>>2]|0;if(!((_|0)!=65497&(f[ve>>0]&1)==0)){Me=116;break}}switch(Me|0){case 9:{jf(b,1,8295,Q)|0;b=0;c=Ce;return b|0}case 11:{jf(b,1,8313,ee)|0;b=0;c=Ce;return b|0}case 20:{jf(b,1,8339,oe)|0;b=0;c=Ce;return b|0}case 24:{jf(b,1,8382,ke)|0;b=0;c=Ce;return b|0}case 26:{Yn(t[B>>2]|0);t[B>>2]=0;t[z>>2]=0;jf(b,1,8427,we)|0;b=0;c=Ce;return b|0}case 29:{jf(b,1,8295,me)|0;b=0;c=Ce;return b|0}case 31:{jf(b,1,8461,re)|0;b=0;c=Ce;return b|0}case 33:{t[fe>>2]=t[q>>2];jf(b,1,8490,fe)|0;b=0;c=Ce;return b|0}case 41:{Yn(t[_>>2]|0);Re=t[k>>2]|0;t[Re+(w*40|0)+24>>2]=0;t[Re+(w*40|0)+28>>2]=0;t[Re+(w*40|0)+20>>2]=0;jf(b,1,8537,ge)|0;b=0;c=Ce;return b|0}case 47:{jf(b,1,8295,ne)|0;b=0;c=Ce;return b|0}case 50:{jf(b,1,8295,te)|0;b=0;c=Ce;return b|0}case 65:{Yn(t[_>>2]|0);t[_>>2]=0;break}case 74:{Yn(t[_>>2]|0);Re=t[k>>2]|0;t[Re+(w*40|0)+24>>2]=0;t[Re+(w*40|0)+28>>2]=0;t[Re+(w*40|0)+20>>2]=0;jf(b,1,8537,ye)|0;b=0;c=Ce;return b|0}case 99:{jf(b,1,8688,he)|0;b=0;c=Ce;return b|0}case 109:{jf(b,1,8295,be)|0;b=0;c=Ce;return b|0}case 113:{jf(b,1,8295,_e)|0;b=0;c=Ce;return b|0}case 115:{_=t[q>>2]|0;Me=116;break}}if((Me|0)==116)if((_|0)==65497){_=ve;Me=117;break e}else{_=ve;break e}jf(b,1,8628,pe)|0;b=0;c=Ce;return b|0}else _=ve;break}default:{b=0;c=Ce;return b|0}}}while(0);if((Me|0)==117)if((t[Se>>2]|0)!=256){t[e+200>>2]=0;t[Se>>2]=256}if(!(f[_>>0]&1)){m=ie(t[e+112>>2]|0,t[e+116>>2]|0)|0;v=e+200|0;k=t[v>>2]|0;e:do{if(k>>>0<m>>>0){_=k;w=(t[e+164>>2]|0)+(k*5640|0)|0;while(1){if(t[w+5592>>2]|0){k=_;break e}k=_+1|0;t[v>>2]=k;if(k>>>0<m>>>0){_=k;w=w+5640|0}else break}}}while(0);if((k|0)==(m|0)){t[h>>2]=0;b=1;c=Ce;return b|0}}else{k=e+200|0;v=k;k=t[k>>2]|0}S=t[e+164>>2]|0;if(f[S+(k*5640|0)+5636>>0]&2){T=S+(k*5640|0)+5160|0;w=t[T>>2]|0;if(!w)_=0;else{m=t[S+(k*5640|0)+5164>>2]|0;p=0;_=0;do{_=(t[m+(p<<3)+4>>2]|0)+_|0;p=p+1|0}while((p|0)!=(w|0))}Me=Nn(_)|0;E=S+(k*5640|0)+5172|0;t[E>>2]=Me;if(!Me){jf(b,1,8775,Ae)|0;jf(b,1,8813,Ee)|0;b=0;c=Ce;return b|0}A=S+(k*5640|0)+5180|0;t[A>>2]=_;w=t[T>>2]|0;M=S+(k*5640|0)+5164|0;if(!w)_=t[M>>2]|0;else{_=t[M>>2]|0;g=_;y=0;p=0;while(1){m=t[g+(y<<3)>>2]|0;if(!m)m=g;else{Dl((t[E>>2]|0)+p|0,m|0,t[g+(y<<3)+4>>2]|0)|0;m=t[M>>2]|0;p=(t[m+(y<<3)+4>>2]|0)+p|0;Yn(t[m+(y<<3)>>2]|0);m=t[M>>2]|0;t[m+(y<<3)>>2]=0;t[m+(y<<3)+4>>2]=0;w=t[T>>2]|0;_=m}y=y+1|0;if(y>>>0>=w>>>0)break;else g=m}}t[T>>2]=0;Yn(_);t[M>>2]=0;t[S+(k*5640|0)+5168>>2]=t[E>>2];t[S+(k*5640|0)+5176>>2]=t[A>>2];k=t[v>>2]|0}_=e+204|0;if(!(Nr(t[_>>2]|0,k,b)|0)){jf(b,1,8839,Te)|0;b=0;c=Ce;return b|0}else{Te=ie(t[e+112>>2]|0,t[e+116>>2]|0)|0;t[Re>>2]=(t[v>>2]|0)+1;t[Re+4>>2]=Te;jf(b,4,8873,Re)|0;t[i>>2]=t[v>>2];t[h>>2]=1;t[r>>2]=Fr(t[_>>2]|0)|0;b=t[t[(t[_>>2]|0)+20>>2]>>2]|0;t[a>>2]=t[b>>2];t[s>>2]=t[b+4>>2];t[l>>2]=t[b+8>>2];t[o>>2]=t[b+12>>2];t[u>>2]=t[b+16>>2];t[Se>>2]=t[Se>>2]|128;b=1;c=Ce;return b|0}return 0}function et(e,i,r,n,a,s){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;var l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0;v=c;c=c+48|0;w=v+28|0;m=v+32|0;b=e+8|0;if(!(t[b>>2]&128)){a=0;c=v;return a|0}k=e+200|0;if((t[k>>2]|0)!=(i|0)){a=0;c=v;return a|0}l=t[e+164>>2]|0;d=l+(i*5640|0)|0;_=l+(i*5640|0)+5592|0;o=t[_>>2]|0;if(!o){_t(d);a=0;c=v;return a|0}u=e+204|0;h=l+(i*5640|0)+5596|0;if(!(Ur(t[u>>2]|0,o,t[h>>2]|0,i,t[e+196>>2]|0,s)|0)){_t(d);t[b>>2]=t[b>>2]|32768;jf(s,1,8912,v)|0;a=0;c=v;return a|0}if(!(jr(t[u>>2]|0,r,n)|0)){a=0;c=v;return a|0}l=t[_>>2]|0;if(l){Yn(l);t[_>>2]=0;t[h>>2]=0}_=e+76|0;f[_>>0]=f[_>>0]&-2;t[b>>2]=t[b>>2]&-129;_=Nf(a)|0;e=t[b>>2]|0;if((e|0)==256|(_|0)==0&(I|0)==0&(e|0)==64){a=1;c=v;return a|0}if((Lf(a,m,2,s)|0)!=2){jf(s,2,8931,v+8|0)|0;a=1;c=v;return a|0}hf(m,w,2);switch(t[w>>2]|0){case 65497:{t[k>>2]=0;t[b>>2]=256;a=1;c=v;return a|0}case 65424:{a=1;c=v;return a|0}default:if((Nf(a)|0)==0&(I|0)==0){t[b>>2]=64;jf(s,2,8975,v+16|0)|0;a=1;c=v;return a|0}else{jf(s,1,9005,v+24|0)|0;a=0;c=v;return a|0}}return 0}function it(e,i,r,n,a,s,l){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;E=c;c=c+112|0;A=E+96|0;M=E+88|0;y=E+80|0;g=E+72|0;p=E+64|0;m=E+56|0;w=E+48|0;b=E+40|0;d=E+32|0;h=E+24|0;u=E+16|0;_=t[e+80>>2]|0;if((t[e+8>>2]|0)!=8){jf(l,1,9037,E)|0;l=0;c=E;return l|0}if(!(n|r|a|s)){jf(l,4,9116,E+8|0)|0;t[e+28>>2]=0;t[e+32>>2]=0;t[e+36>>2]=t[e+112>>2];t[e+40>>2]=t[e+116>>2];l=1;c=E;return l|0}v=_+8|0;o=t[v>>2]|0;if(o>>>0<r>>>0){t[u>>2]=r;t[u+4>>2]=o;jf(l,1,9185,u)|0;l=0;c=E;return l|0}o=t[_>>2]|0;if(o>>>0>r>>>0){t[h>>2]=r;t[h+4>>2]=o;jf(l,2,9272,h)|0;o=0;r=t[_>>2]|0}else o=((r-(t[e+92>>2]|0)|0)>>>0)/((t[e+100>>2]|0)>>>0)|0;t[e+28>>2]=o;t[i>>2]=r;k=_+12|0;r=t[k>>2]|0;if(r>>>0<n>>>0){t[d>>2]=n;t[d+4>>2]=r;jf(l,1,9360,d)|0;l=0;c=E;return l|0}u=_+4|0;r=t[u>>2]|0;if(r>>>0>n>>>0){t[b>>2]=n;t[b+4>>2]=r;jf(l,2,9445,b)|0;r=0;n=t[u>>2]|0}else r=((n-(t[e+96>>2]|0)|0)>>>0)/((t[e+104>>2]|0)>>>0)|0;t[e+32>>2]=r;h=i+4|0;t[h>>2]=n;r=t[_>>2]|0;if(r>>>0>a>>>0){t[w>>2]=a;t[w+4>>2]=r;jf(l,1,9531,w)|0;l=0;c=E;return l|0}r=t[v>>2]|0;if(r>>>0<a>>>0){t[m>>2]=a;t[m+4>>2]=r;jf(l,2,9620,m)|0;r=t[e+112>>2]|0;a=t[v>>2]|0}else{r=t[e+100>>2]|0;r=(a+-1-(t[e+92>>2]|0)+r|0)/(r|0)|0}t[e+36>>2]=r;o=i+8|0;t[o>>2]=a;a=t[u>>2]|0;if(a>>>0>s>>>0){t[p>>2]=s;t[p+4>>2]=a;jf(l,1,9708,p)|0;l=0;c=E;return l|0}a=t[k>>2]|0;if(a>>>0<s>>>0){t[g>>2]=s;t[g+4>>2]=a;jf(l,2,9798,g)|0;r=t[k>>2]|0;a=t[e+116>>2]|0}else{a=t[e+104>>2]|0;r=s;a=(s+-1-(t[e+96>>2]|0)+a|0)/(a|0)|0}t[e+40>>2]=a;s=i+12|0;t[s>>2]=r;g=e+76|0;f[g>>0]=f[g>>0]|2;g=t[i+16>>2]|0;e=t[i>>2]|0;e:do{if(g){n=t[h>>2]|0;v=n+-1|0;p=t[o>>2]|0;k=p+-1|0;w=e+-1|0;a=0;_=t[i+24>>2]|0;while(1){i=t[_>>2]|0;r=(w+i|0)/(i|0)|0;t[_+16>>2]=r;b=t[_+4>>2]|0;o=(v+b|0)/(b|0)|0;t[_+20>>2]=o;i=(k+i|0)/(i|0)|0;u=t[_+40>>2]|0;h=Ll(1,0,u|0)|0;d=I;i=Bl(i|0,((i|0)<0)<<31>>31|0,-1,-1)|0;i=Bl(i|0,I|0,h|0,d|0)|0;i=Ol(i|0,I|0,u|0)|0;r=Bl(r|0,((r|0)<0)<<31>>31|0,-1,-1)|0;r=Bl(r|0,I|0,h|0,d|0)|0;r=Ol(r|0,I|0,u|0)|0;r=i-r|0;if((r|0)<0){o=29;break}m=t[s>>2]|0;i=(b+-1+m|0)/(b|0)|0;t[_+8>>2]=r;i=Bl(i|0,((i|0)<0)<<31>>31|0,-1,-1)|0;i=Bl(i|0,I|0,h|0,d|0)|0;i=Ol(i|0,I|0,u|0)|0;r=Bl(o|0,((o|0)<0)<<31>>31|0,-1,-1)|0;r=Bl(r|0,I|0,h|0,d|0)|0;r=Ol(r|0,I|0,u|0)|0;r=i-r|0;if((r|0)<0){o=31;break}t[_+12>>2]=r;a=a+1|0;if(a>>>0>=g>>>0){r=p;a=m;break e}else _=_+52|0}if((o|0)==29){t[y>>2]=a;t[y+4>>2]=r;jf(l,1,9887,y)|0;l=0;c=E;return l|0}else if((o|0)==31){t[M>>2]=a;t[M+4>>2]=r;jf(l,1,9956,M)|0;l=0;c=E;return l|0}}else{n=t[h>>2]|0;r=t[o>>2]|0;a=t[s>>2]|0}}while(0);t[A>>2]=e;t[A+4>>2]=n;t[A+8>>2]=r;t[A+12>>2]=a;jf(l,4,10025,A)|0;l=1;c=E;return l|0}function rt(){var e=0,i=0,r=0;e=Fn(1,208)|0;if(!e){i=0;return i|0}t[e>>2]=1;i=e+184|0;f[i>>0]=f[i>>0]|2;i=Fn(1,5640)|0;t[e+12>>2]=i;if(!i){Xn(e);i=0;return i|0}i=Fn(1,1e3)|0;t[e+16>>2]=i;if(!i){Xn(e);i=0;return i|0}t[e+20>>2]=1e3;t[e+60>>2]=-1;i=e+64|0;t[i>>2]=0;t[i+4>>2]=0;i=Fn(1,48)|0;do{if(i){t[i+32>>2]=100;t[i+24>>2]=0;r=Fn(100,24)|0;t[i+28>>2]=r;if(!r){Yn(i);break}t[i+40>>2]=0;t[e+196>>2]=i;r=sa()|0;t[e+192>>2]=r;if(!r){Xn(e);r=0;return r|0}r=sa()|0;t[e+188>>2]=r;if(r){r=e;return r|0}Xn(e);r=0;return r|0}}while(0);t[e+196>>2]=0;Xn(e);r=0;return r|0}function ft(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0;v=c;c=c+128|0;m=v+104|0;w=v+72|0;k=v+64|0;d=v+40|0;u=v+24|0;l=v+16|0;a=v+8|0;n=v;if(i&384){il(10063,11,1,r)|0;c=v;return}if((i&1|0)!=0?(f=t[e+80>>2]|0,(f|0)!=0):0)nt(f,0,r);if(i&2){il(10075,36,1,r)|0;f=t[e+96>>2]|0;t[n>>2]=t[e+92>>2];t[n+4>>2]=f;qs(r,10112,n)|0;n=t[e+104>>2]|0;t[a>>2]=t[e+100>>2];t[a+4>>2]=n;qs(r,10130,a)|0;a=t[e+116>>2]|0;t[l>>2]=t[e+112>>2];t[l+4>>2]=a;qs(r,10148,l)|0;pt(t[e+12>>2]|0,t[(t[e+80>>2]|0)+16>>2]|0,r);il(10164,2,1,r)|0}if((i&8|0)!=0?(o=ie(t[e+112>>2]|0,t[e+116>>2]|0)|0,(o|0)!=0):0){f=e+80|0;n=0;a=t[e+164>>2]|0;while(1){pt(a,t[(t[f>>2]|0)+16>>2]|0,r);n=n+1|0;if((n|0)==(o|0))break;else a=a+5640|0}}if(!(i&16)){c=v;return}l=t[e+196>>2]|0;il(10167,37,1,r)|0;o=l;i=t[o+4>>2]|0;f=l+8|0;e=t[f>>2]|0;f=t[f+4>>2]|0;a=u;t[a>>2]=t[o>>2];t[a+4>>2]=i;a=u+8|0;t[a>>2]=e;t[a+4>>2]=f;qs(r,10205,u)|0;il(10272,17,1,r)|0;a=l+28|0;f=t[a>>2]|0;e:do{if((f|0)!=0?(h=l+24|0,(t[h>>2]|0)!=0):0){n=0;while(1){i=f+(n*24|0)+8|0;o=t[i>>2]|0;i=t[i+4>>2]|0;u=t[f+(n*24|0)+16>>2]|0;t[d>>2]=s[f+(n*24|0)>>1];e=d+8|0;t[e>>2]=o;t[e+4>>2]=i;t[d+16>>2]=u;qs(r,10290,d)|0;n=n+1|0;if(n>>>0>=(t[h>>2]|0)>>>0)break e;f=t[a>>2]|0}}}while(0);il(10321,4,1,r)|0;i=l+40|0;a=t[i>>2]|0;if((a|0)!=0?(_=l+36|0,b=t[_>>2]|0,(b|0)!=0):0){n=0;f=0;do{f=(t[a+(n*40|0)+4>>2]|0)+f|0;n=n+1|0}while((n|0)!=(b|0));if(f){il(10326,16,1,r)|0;if(t[_>>2]|0){f=t[i>>2]|0;o=0;do{l=t[f+(o*40|0)+4>>2]|0;t[k>>2]=o;t[k+4>>2]=l;qs(r,10343,k)|0;f=t[i>>2]|0;n=t[f+(o*40|0)+16>>2]|0;e:do{if(!((l|0)==0|(n|0)==0)){f=0;while(1){e=n+(f*24|0)|0;p=t[e>>2]|0;e=t[e+4>>2]|0;h=n+(f*24|0)+8|0;u=t[h>>2]|0;h=t[h+4>>2]|0;b=n+(f*24|0)+16|0;d=t[b>>2]|0;b=t[b+4>>2]|0;t[w>>2]=f;a=w+8|0;t[a>>2]=p;t[a+4>>2]=e;a=w+16|0;t[a>>2]=u;t[a+4>>2]=h;a=w+24|0;t[a>>2]=d;t[a+4>>2]=b;qs(r,10379,w)|0;a=f+1|0;f=t[i>>2]|0;if((a|0)==(l|0))break e;n=t[f+(o*40|0)+16>>2]|0;f=a}}}while(0);n=t[f+(o*40|0)+24>>2]|0;e:do{if((n|0)!=0?(t[f+(o*40|0)+20>>2]|0)!=0:0){f=0;while(1){b=n+(f*24|0)+8|0;d=t[b>>2]|0;b=t[b+4>>2]|0;a=t[n+(f*24|0)+16>>2]|0;t[m>>2]=s[n+(f*24|0)>>1];p=m+8|0;t[p>>2]=d;t[p+4>>2]=b;t[m+16>>2]=a;qs(r,10290,m)|0;a=f+1|0;f=t[i>>2]|0;if(a>>>0>=(t[f+(o*40|0)+20>>2]|0)>>>0)break e;n=t[f+(o*40|0)+24>>2]|0;f=a}}}while(0);o=o+1|0}while(o>>>0<(t[_>>2]|0)>>>0)}il(10321,4,1,r)|0}}il(10164,2,1,r)|0;c=v;return}function nt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;d=c;c=c+64|0;h=d+48|0;u=d+40|0;l=d+32|0;s=d+16|0;a=d;o=d+52|0;if(!i){il(10482,13,1,r)|0;f[o+1>>0]=0;n=9}else{il(10445,36,1,t[676]|0)|0;n=0}f[o>>0]=n;b=t[e>>2]|0;n=t[e+4>>2]|0;t[a>>2]=o;t[a+4>>2]=b;t[a+8>>2]=n;qs(r,10496,a)|0;a=t[e+8>>2]|0;n=t[e+12>>2]|0;t[s>>2]=o;t[s+4>>2]=a;t[s+8>>2]=n;qs(r,10513,s)|0;s=e+16|0;n=t[s>>2]|0;t[l>>2]=o;t[l+4>>2]=n;qs(r,10530,l)|0;n=e+24|0;if(!(t[n>>2]|0)){il(10164,2,1,r)|0;c=d;return}if(!(t[s>>2]|0)){il(10164,2,1,r)|0;c=d;return}else a=0;do{t[u>>2]=o;t[u+4>>2]=a;qs(r,10546,u)|0;tt((t[n>>2]|0)+(a*52|0)|0,i,r);t[h>>2]=o;qs(r,10566,h)|0;a=a+1|0}while(a>>>0<(t[s>>2]|0)>>>0);il(10164,2,1,r)|0;c=d;return}function tt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0;u=c;c=c+48|0;o=u+24|0;l=u+16|0;s=u;a=u+32|0;n=(i|0)!=0;if(n){il(10571,41,1,t[676]|0)|0;i=0}else{f[a+1>>0]=9;f[a+2>>0]=0;i=9}f[a>>0]=i;h=t[e>>2]|0;i=t[e+4>>2]|0;t[s>>2]=a;t[s+4>>2]=h;t[s+8>>2]=i;qs(r,10613,s)|0;s=t[e+24>>2]|0;t[l>>2]=a;t[l+4>>2]=s;qs(r,10630,l)|0;l=t[e+32>>2]|0;t[o>>2]=a;t[o+4>>2]=l;qs(r,10642,o)|0;if(!n){c=u;return}il(10164,2,1,r)|0;c=u;return}function at(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+16|0;f=h;i=e+80|0;o=t[(t[i>>2]|0)+16>>2]|0;r=Fn(1,56)|0;t[f>>2]=r;if(!r){u=0;c=h;return u|0}t[r+24>>2]=t[(t[i>>2]|0)+16>>2];t[r>>2]=t[e+92>>2];t[r+4>>2]=t[e+96>>2];t[r+8>>2]=t[e+100>>2];t[r+12>>2]=t[e+104>>2];t[r+16>>2]=t[e+112>>2];t[r+20>>2]=t[e+116>>2];t[r+52>>2]=0;r=t[e+12>>2]|0;i=t[f>>2]|0;t[i+32>>2]=t[r>>2];t[i+36>>2]=t[r+4>>2];t[i+40>>2]=t[r+8>>2];t[i+44>>2]=t[r+16>>2];t[i+48>>2]=Fn(t[i+24>>2]|0,1080)|0;i=t[f>>2]|0;l=i+48|0;e=t[l>>2]|0;if(!e){En(f);u=0;c=h;return u|0}if(!o){u=i;c=h;return u|0}s=r+5584|0;r=0;while(1){a=t[s>>2]|0;t[e+(r*1080|0)+4>>2]=t[a+(r*1080|0)>>2];f=a+(r*1080|0)+4|0;n=t[f>>2]|0;t[e+(r*1080|0)+8>>2]=n;t[e+(r*1080|0)+12>>2]=t[a+(r*1080|0)+8>>2];t[e+(r*1080|0)+16>>2]=t[a+(r*1080|0)+12>>2];t[e+(r*1080|0)+20>>2]=t[a+(r*1080|0)+16>>2];t[e+(r*1080|0)+24>>2]=t[a+(r*1080|0)+20>>2];if(n>>>0<33){Dl(e+(r*1080|0)+948|0,a+(r*1080|0)+944|0,n|0)|0;Dl(e+(r*1080|0)+816|0,a+(r*1080|0)+812|0,t[f>>2]|0)|0}n=t[a+(r*1080|0)+24>>2]|0;t[e+(r*1080|0)+28>>2]=n;t[e+(r*1080|0)+808>>2]=t[a+(r*1080|0)+804>>2];if((n|0)!=1){n=(t[f>>2]|0)*3|0;f=n+-2|0;if((f|0)<97&(n|0)>2)u=10}else{f=1;u=10}if((u|0)==10){u=0;n=0;do{t[e+(r*1080|0)+32+(n<<2)>>2]=t[a+(r*1080|0)+28+(n<<3)+4>>2];t[e+(r*1080|0)+420+(n<<2)>>2]=t[a+(r*1080|0)+28+(n<<3)>>2];n=n+1|0}while((n|0)!=(f|0))}t[e+(r*1080|0)+812>>2]=t[a+(r*1080|0)+808>>2];r=r+1|0;if((r|0)==(o|0))break;e=t[l>>2]|0}c=h;return i|0}function st(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0;i=Fn(1,48)|0;if(!i){u=0;return u|0}s=e+196|0;r=t[s>>2]|0;l=r;u=t[l+4>>2]|0;e=i;t[e>>2]=t[l>>2];t[e+4>>2]=u;e=r+8|0;u=t[e+4>>2]|0;l=i+8|0;t[l>>2]=t[e>>2];t[l+4>>2]=u;l=r+16|0;u=t[l+4>>2]|0;e=i+16|0;t[e>>2]=t[l>>2];t[e+4>>2]=u;r=t[r+24>>2]|0;e=i+24|0;t[e>>2]=r;r=Nn(r*24|0)|0;u=i+28|0;t[u>>2]=r;if(!r){Yn(i);u=0;return u|0}f=t[(t[s>>2]|0)+28>>2]|0;if(!f){Yn(r);t[u>>2]=0}else Dl(r|0,f|0,(t[e>>2]|0)*24|0)|0;e=t[(t[s>>2]|0)+36>>2]|0;a=i+36|0;t[a>>2]=e;e=Fn(e,40)|0;l=i+40|0;t[l>>2]=e;if(!e){Yn(t[u>>2]|0);Yn(i);u=0;return u|0}r=t[(t[s>>2]|0)+40>>2]|0;if(!r){Yn(e);t[l>>2]=0;u=i;return u|0}if(!(t[a>>2]|0)){u=i;return u|0}r=t[r+20>>2]|0;t[e+20>>2]=r;r=Nn(r*24|0)|0;e=t[l>>2]|0;t[e+24>>2]=r;e:do{if(!r)r=0;else{n=r;r=0;while(1){f=t[(t[(t[s>>2]|0)+40>>2]|0)+(r*40|0)+24>>2]|0;if(!f){Yn(n);e=t[l>>2]|0;t[e+(r*40|0)+24>>2]=0}else{Dl(n|0,f|0,(t[e+(r*40|0)+20>>2]|0)*24|0)|0;e=t[l>>2]|0}f=t[(t[(t[s>>2]|0)+40>>2]|0)+(r*40|0)+4>>2]|0;t[e+(r*40|0)+4>>2]=f;f=Nn(f*24|0)|0;e=t[l>>2]|0;t[e+(r*40|0)+16>>2]=f;if(!f)break;n=t[(t[(t[s>>2]|0)+40>>2]|0)+(r*40|0)+16>>2]|0;if(!n){Yn(f);e=t[l>>2]|0;t[e+(r*40|0)+16>>2]=0}else{Dl(f|0,n|0,(t[e+(r*40|0)+4>>2]|0)*24|0)|0;e=t[l>>2]|0}t[e+(r*40|0)+32>>2]=0;t[e+(r*40|0)+36>>2]=0;r=r+1|0;if(r>>>0>=(t[a>>2]|0)>>>0){o=32;break}n=t[(t[(t[s>>2]|0)+40>>2]|0)+(r*40|0)+20>>2]|0;t[e+(r*40|0)+20>>2]=n;n=Nn(n*24|0)|0;e=t[l>>2]|0;t[e+(r*40|0)+24>>2]=n;if(!n)break e}if((o|0)==32)return i|0;if(r){Yn(t[e+24>>2]|0);Yn(t[(t[l>>2]|0)+16>>2]|0);if((r|0)!=1){e=1;do{Yn(t[(t[l>>2]|0)+(e*40|0)+24>>2]|0);Yn(t[(t[l>>2]|0)+(e*40|0)+16>>2]|0);e=e+1|0}while((e|0)!=(r|0))}e=t[l>>2]|0}Yn(e);Yn(t[u>>2]|0);Yn(i);u=0;return u|0}}while(0);if(r){Yn(t[e+24>>2]|0);if((r|0)!=1){e=1;do{Yn(t[(t[l>>2]|0)+(e*40|0)+24>>2]|0);e=e+1|0}while((e|0)!=(r|0))}e=t[l>>2]|0}Yn(e);Yn(t[u>>2]|0);Yn(i);u=0;return u|0}function lt(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0;if(!r){r=0;return r|0}n=$f()|0;u=e+84|0;t[u>>2]=n;if(!n){r=0;return r|0}Kf(r,n);s=e+188|0;oa(t[s>>2]|0,27,f)|0;s=t[s>>2]|0;l=ua(s)|0;n=ca(s)|0;if(l){o=0;a=1;while(1){if(!a)a=0;else a=(po[t[n>>2]&63](e,i,f)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{n=n+4|0;a=a&1}}ha(s);if(!a){r=e+80|0;Xf(t[r>>2]|0);t[r>>2]=0;r=0;return r|0}}else ha(s);l=t[r+16>>2]|0;if(!l){r=1;return r|0}s=t[(t[u>>2]|0)+24>>2]|0;n=t[r+24>>2]|0;a=0;do{t[n+(a*52|0)+36>>2]=t[s+(a*52|0)+36>>2];r=s+(a*52|0)+44|0;t[n+(a*52|0)+44>>2]=t[r>>2];t[r>>2]=0;a=a+1|0}while(a>>>0<l>>>0);n=1;return n|0}function ot(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;v=c;c=c+16|0;l=v+8|0;if(!r){jf(f,1,10654,v)|0;m=0;c=v;return m|0}a=t[e+112>>2]|0;s=ie(t[e+116>>2]|0,a)|0;if(s>>>0<=n>>>0){t[l>>2]=n;t[l+4>>2]=s+-1;jf(f,1,10692,l)|0;m=0;c=v;return m|0}m=(n>>>0)%(a>>>0)|0;w=(n>>>0)/(a>>>0)|0;l=t[e+100>>2]|0;s=ie(l,m)|0;o=t[e+92>>2]|0;s=s+o|0;t[r>>2]=s;k=e+80|0;a=t[k>>2]|0;u=t[a>>2]|0;s=s>>>0<u>>>0?u:s;t[r>>2]=s;o=(ie(l,m+1|0)|0)+o|0;m=r+8|0;t[m>>2]=o;l=t[a+8>>2]|0;o=o>>>0>l>>>0?l:o;t[m>>2]=o;m=t[e+104>>2]|0;l=ie(m,w)|0;u=t[e+96>>2]|0;l=l+u|0;_=r+4|0;t[_>>2]=l;b=t[a+4>>2]|0;l=l>>>0<b>>>0?b:l;t[_>>2]=l;u=(ie(m,w+1|0)|0)+u|0;w=r+12|0;t[w>>2]=u;m=t[a+12>>2]|0;u=u>>>0>m>>>0?m:u;t[w>>2]=u;w=r+24|0;m=r+16|0;_=t[m>>2]|0;if(_){b=t[a+24>>2]|0;d=s+-1|0;h=l+-1|0;o=o+-1|0;a=u+-1|0;s=0;l=t[w>>2]|0;while(1){u=t[b+(s*52|0)+40>>2]|0;t[l+40>>2]=u;E=t[l>>2]|0;A=(d+E|0)/(E|0)|0;t[l+16>>2]=A;p=t[l+4>>2]|0;M=(h+p|0)/(p|0)|0;t[l+20>>2]=M;E=(o+E|0)/(E|0)|0;p=(a+p|0)/(p|0)|0;y=Ll(1,0,u|0)|0;g=I;E=Bl(E|0,((E|0)<0)<<31>>31|0,-1,-1)|0;E=Bl(E|0,I|0,y|0,g|0)|0;E=Ol(E|0,I|0,u|0)|0;A=Bl(A|0,((A|0)<0)<<31>>31|0,-1,-1)|0;A=Bl(A|0,I|0,y|0,g|0)|0;A=Ol(A|0,I|0,u|0)|0;t[l+8>>2]=E-A;p=Bl(p|0,((p|0)<0)<<31>>31|0,-1,-1)|0;p=Bl(p|0,I|0,y|0,g|0)|0;p=Ol(p|0,I|0,u|0)|0;M=Bl(M|0,((M|0)<0)<<31>>31|0,-1,-1)|0;g=Bl(M|0,I|0,y|0,g|0)|0;u=Ol(g|0,I|0,u|0)|0;t[l+12>>2]=p-u;s=s+1|0;if(s>>>0>=_>>>0)break;else l=l+52|0}}h=e+84|0;a=t[h>>2]|0;if(a)Xf(a);a=$f()|0;t[h>>2]=a;if(!a){E=0;c=v;return E|0}Kf(r,a);t[e+60>>2]=n;l=e+188|0;oa(t[l>>2]|0,28,f)|0;l=t[l>>2]|0;o=ua(l)|0;a=ca(l)|0;if(o){u=0;s=1;while(1){if(!s)s=0;else s=(po[t[a>>2]&63](e,i,f)|0)!=0;u=u+1|0;if((u|0)==(o|0))break;else{a=a+4|0;s=s&1}}ha(l);if(!s){Xf(t[k>>2]|0);t[k>>2]=0;E=0;c=v;return E|0}}else ha(l);a=t[m>>2]|0;if(!a){E=1;c=v;return E|0}o=t[(t[h>>2]|0)+24>>2]|0;l=t[w>>2]|0;u=0;while(1){t[l+(u*52|0)+36>>2]=t[o+(u*52|0)+36>>2];s=t[l+(u*52|0)+44>>2]|0;if(!s)s=o;else{Yn(s);s=t[(t[h>>2]|0)+24>>2]|0;l=t[w>>2]|0;a=t[m>>2]|0}E=s+(u*52|0)+44|0;t[l+(u*52|0)+44>>2]=t[E>>2];t[E>>2]=0;u=u+1|0;if(u>>>0>=a>>>0){a=1;break}else o=s}c=v;return a|0}function ut(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0;o=c;c=c+16|0;l=o;t[e+168>>2]=i;f=t[e+80>>2]|0;e:do{if((((f|0)!=0?(s=t[f+24>>2]|0,(s|0)!=0):0)?(n=t[e+12>>2]|0,(n|0)!=0):0)?(a=t[n+5584>>2]|0,(a|0)!=0):0){f=t[f+16>>2]|0;if(!f)f=1;else{n=0;while(1){if((t[a+(n*1080|0)+4>>2]|0)>>>0<=i>>>0)break;t[s+(n*52|0)+40>>2]=i;n=n+1|0;if(n>>>0>=f>>>0){f=1;break e}}jf(r,1,10753,l)|0;f=0}}else f=0}while(0);c=o;return f|0}function ct(e,i,r){e=e|0;i=i|0;r=r|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0;j=c;c=c+48|0;H=j+32|0;F=j+24|0;N=j+16|0;z=j+8|0;D=j;S=e+204|0;a=t[S>>2]|0;I=e+116|0;O=e+112|0;x=ie(t[O>>2]|0,t[I>>2]|0)|0;L=(x|0)==1;if(!x){U=1;c=j;return U|0}B=e+200|0;T=e+12|0;R=e+164|0;C=e+8|0;P=a+20|0;A=a+24|0;E=0;a=0;u=0;e:while(1){if((t[B>>2]|0)!=(E|0)){U=5;break}y=E;E=E+1|0;M=ie(t[I>>2]|0,t[O>>2]|0)|0;t[z>>2]=E;t[z+4>>2]=M;jf(r,4,10866,z)|0;t[T>>2]=0;M=t[S>>2]|0;t[M+12>>2]=t[(t[R>>2]|0)+(y*5640|0)+5588>>2];t[C>>2]=0;if(!(Dr(M,t[B>>2]|0,r)|0))break;s=t[S>>2]|0;if(t[(t[s+24>>2]|0)+16>>2]|0){o=0;do{l=t[(t[t[P>>2]>>2]|0)+20>>2]|0;if(L){t[l+(o*52|0)+32>>2]=t[(t[(t[A>>2]|0)+24>>2]|0)+(o*52|0)+44>>2];t[l+(o*52|0)+36>>2]=0}else{if(!(zr(l+(o*52|0)|0)|0)){U=14;break e}s=t[S>>2]|0}o=o+1|0}while(o>>>0<(t[(t[s+24>>2]|0)+16>>2]|0)>>>0)}M=Yr(s)|0;if(!L){if(M>>>0>u>>>0){s=jn(a,M)|0;if(!s){U=20;break}else{a=s;s=M}}else s=u;l=t[S>>2]|0;y=l+24|0;o=t[y>>2]|0;if(t[o+16>>2]|0){g=l+20|0;l=a;p=0;do{w=t[(t[t[g>>2]>>2]|0)+20>>2]|0;h=t[o+24>>2]|0;k=t[h+(p*52|0)+24>>2]|0;k=((k&7|0)!=0&1)+(k>>>3)|0;d=t[w+(p*52|0)+8>>2]|0;b=t[w+(p*52|0)>>2]|0;v=d-b|0;_=t[w+(p*52|0)+12>>2]|0;w=t[w+(p*52|0)+4>>2]|0;$=t[o>>2]|0;q=t[h+(p*52|0)>>2]|0;u=t[h+(p*52|0)+4>>2]|0;Y=(q+~$+(t[o+8>>2]|0)|0)/(q|0)|0;m=Y-v|0;o=b-(($+-1+q|0)/(q|0)|0)+(ie(Y,w-(((t[o+4>>2]|0)+-1+u|0)/(u|0)|0)|0)|0)|0;o=(t[h+(p*52|0)+44>>2]|0)+(o<<2)|0;i:do{switch(((k|0)==3?4:k)|0){case 1:{u=(_|0)==(w|0);if(!(t[h+(p*52|0)+32>>2]|0)){if(u)break i;k=(d|0)==(b|0);b=_-w|0;_=0;while(1){if(!k){u=0;h=l;d=o;while(1){f[h>>0]=t[d>>2];u=u+1|0;if((u|0)==(v|0))break;else{h=h+1|0;d=d+4|0}}l=l+v|0;o=o+(v<<2)|0}_=_+1|0;if((_|0)==(b|0))break;else o=o+(m<<2)|0}}else{if(u)break i;k=(d|0)==(b|0);b=_-w|0;_=0;while(1){if(!k){u=0;h=l;d=o;while(1){f[h>>0]=t[d>>2];u=u+1|0;if((u|0)==(v|0))break;else{h=h+1|0;d=d+4|0}}l=l+v|0;o=o+(v<<2)|0}_=_+1|0;if((_|0)==(b|0))break;else o=o+(m<<2)|0}}break}case 2:{u=(_|0)==(w|0);if(!(t[h+(p*52|0)+32>>2]|0)){if(!u){k=(d|0)==(b|0);b=_-w|0;_=0;while(1){if(!k){u=0;h=l;d=o;while(1){n[h>>1]=t[d>>2];u=u+1|0;if((u|0)==(v|0))break;else{h=h+2|0;d=d+4|0}}l=l+(v<<1)|0;o=o+(v<<2)|0}_=_+1|0;if((_|0)==(b|0))break;else o=o+(m<<2)|0}}}else if(!u){k=(d|0)==(b|0);b=_-w|0;_=0;while(1){if(!k){u=0;h=l;d=o;while(1){n[h>>1]=t[d>>2];u=u+1|0;if((u|0)==(v|0))break;else{h=h+2|0;d=d+4|0}}l=l+(v<<1)|0;o=o+(v<<2)|0}_=_+1|0;if((_|0)==(b|0))break;else o=o+(m<<2)|0}}break}case 4:{if((_|0)!=(w|0)){k=(d|0)==(b|0);b=_-w|0;_=0;while(1){if(!k){u=0;h=l;d=o;while(1){t[h>>2]=t[d>>2];u=u+1|0;if((u|0)==(v|0))break;else{h=h+4|0;d=d+4|0}}l=l+(v<<2)|0;o=o+(v<<2)|0}_=_+1|0;if((_|0)==(b|0))break;else o=o+(m<<2)|0}}break}default:{}}}while(0);p=p+1|0;o=t[y>>2]|0}while(p>>>0<(t[o+16>>2]|0)>>>0);l=t[S>>2]|0}if(!(qr(l,a,M)|0)){U=63;break}}else s=u;if(!(Mt(e,i,r)|0)){U=65;break}if(E>>>0>=x>>>0){U=67;break}else u=s}if((U|0)==5)jf(r,1,10829,D)|0;else if((U|0)==14){jf(r,1,10887,N)|0;if(!a){$=0;c=j;return $|0}Yn(a);$=0;c=j;return $|0}else if((U|0)==20){if(a)Yn(a);jf(r,1,10925,F)|0;$=0;c=j;return $|0}else if((U|0)==63){jf(r,1,10964,H)|0;Yn(a);$=0;c=j;return $|0}else if((U|0)==65){if(!a){$=0;c=j;return $|0}Yn(a);$=0;c=j;return $|0}else if((U|0)==67){if(!a){$=1;c=j;return $|0}Yn(a);$=1;c=j;return $|0}if(!a){$=0;c=j;return $|0}Yn(a);$=0;c=j;return $|0}function ht(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,s=0,l=0,o=0;f=e+188|0;if(!(oa(t[f>>2]|0,29,r)|0)){i=0;return i|0}if(((n[e+88>>1]|0)+-3&65535)<4?(oa(t[f>>2]|0,30,r)|0)==0:0){i=0;return i|0}if(!(oa(t[f>>2]|0,31,r)|0)){i=0;return i|0}if(!(oa(t[f>>2]|0,32,r)|0)){i=0;return i|0}if(!(oa(t[f>>2]|0,33,r)|0)){i=0;return i|0}o=t[f>>2]|0;s=ua(o)|0;f=ca(o)|0;if(!s)f=1;else{l=0;a=f;f=1;while(1){if(!f)f=0;else f=(po[t[a>>2]&63](e,i,r)|0)!=0;f=f&1;l=l+1|0;if((l|0)==(s|0))break;else a=a+4|0}}ha(o);i=f;return i|0}function dt(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var a=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+16|0;a=$f()|0;o=e+80|0;t[o>>2]=a;if(!a){jf(f,1,11011,h)|0;i=0;c=h;return i|0}Kf(r,a);l=t[r+24>>2]|0;if((l|0)!=0?(u=t[r+16>>2]|0,(u|0)!=0):0){s=0;do{r=l+(s*52|0)+44|0;a=t[r>>2]|0;if(a){t[(t[(t[o>>2]|0)+24>>2]|0)+(s*52|0)+44>>2]=a;t[r>>2]=0}s=s+1|0}while(s>>>0<u>>>0)}a=e+192|0;if(!(oa(t[a>>2]|0,34,f)|0)){i=0;c=h;return i|0}if(!(oa(t[a>>2]|0,35,f)|0)){i=0;c=h;return i|0}if(!(oa(t[a>>2]|0,36,f)|0)){i=0;c=h;return i|0}s=t[a>>2]|0;l=ua(s)|0;a=ca(s)|0;if(l){o=0;r=1;while(1){if(!r)r=0;else r=(po[t[a>>2]&63](e,i,f)|0)!=0;o=o+1|0;if((o|0)==(l|0))break;else{a=a+4|0;r=r&1}}ha(s);if(!r){i=0;c=h;return i|0}}else ha(s);a=e+188|0;if(!(oa(t[a>>2]|0,37,f)|0)){i=0;c=h;return i|0}if(!(oa(t[a>>2]|0,38,f)|0)){i=0;c=h;return i|0}if(!(oa(t[a>>2]|0,39,f)|0)){i=0;c=h;return i|0}if(!(oa(t[a>>2]|0,40,f)|0)){i=0;c=h;return i|0}if(!(oa(t[a>>2]|0,41,f)|0)){i=0;c=h;return i|0}if(!(oa(t[a>>2]|0,42,f)|0)){i=0;c=h;return i|0}if(!(oa(t[a>>2]|0,43,f)|0)){i=0;c=h;return i|0}r=e+88|0;if(((n[r>>1]|0)+-3&65535)<4){if(!(oa(t[a>>2]|0,44,f)|0)){i=0;c=h;return i|0}if((n[r>>1]|0)==4?(oa(t[a>>2]|0,45,f)|0)==0:0){i=0;c=h;return i|0}}if(!(oa(t[a>>2]|0,46,f)|0)){i=0;c=h;return i|0}if((t[e+108>>2]|0)!=0?(oa(t[a>>2]|0,47,f)|0)==0:0){i=0;c=h;return i|0}if((n[r>>1]&256)!=0?(oa(t[a>>2]|0,48,f)|0)==0:0){i=0;c=h;return i|0}if((t[e+196>>2]|0)!=0?(oa(t[a>>2]|0,49,f)|0)==0:0){i=0;c=h;return i|0}if(!(oa(t[a>>2]|0,50,f)|0)){i=0;c=h;return i|0}if(!(oa(t[a>>2]|0,51,f)|0)){i=0;c=h;return i|0}o=t[a>>2]|0;s=ua(o)|0;a=ca(o)|0;if(!s)a=1;else{l=0;r=a;a=1;while(1){if(!a)a=0;else a=(po[t[r>>2]&63](e,i,f)|0)!=0;a=a&1;l=l+1|0;if((l|0)==(s|0))break;else r=r+4|0}}ha(o);i=a;c=h;return i|0}function bt(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;k=c;c=c+48|0;b=k+40|0;_=k+32|0;d=k+24|0;u=k+16|0;l=k+8|0;s=k;o=e+200|0;if((t[o>>2]|0)==(i|0)){h=ie(t[e+116>>2]|0,t[e+112>>2]|0)|0;t[l>>2]=i+1;t[l+4>>2]=h;jf(a,4,10866,l)|0;t[e+12>>2]=0;h=e+204|0;l=t[h>>2]|0;t[l+12>>2]=t[(t[e+164>>2]|0)+(i*5640|0)+5588>>2];t[e+8>>2]=0;if(Dr(l,t[o>>2]|0,a)|0){s=t[h>>2]|0;e:do{if(t[(t[s+24>>2]|0)+16>>2]|0){l=0;while(1){if(!(zr((t[(t[t[s+20>>2]>>2]|0)+20>>2]|0)+(l*52|0)|0)|0))break;l=l+1|0;s=t[h>>2]|0;if(l>>>0>=(t[(t[s+24>>2]|0)+16>>2]|0)>>>0)break e}jf(a,1,10887,d)|0;_=0;c=k;return _|0}}while(0);if(!(qr(s,r,f)|0)){jf(a,1,10964,_)|0;_=0;c=k;return _|0}if(Mt(e,n,a)|0){_=1;c=k;return _|0}t[b>>2]=i;jf(a,1,11101,b)|0;_=0;c=k;return _|0}}else jf(a,1,10829,s)|0;t[u>>2]=i;jf(a,1,11044,u)|0;_=0;c=k;return _|0}function _t(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0,l=0;if(!e)return;n=e+5164|0;i=t[n>>2]|0;if(i){a=e+5160|0;r=t[a>>2]|0;if(r){f=0;while(1){i=t[i+(f<<3)>>2]|0;if(i){Yn(i);r=t[a>>2]|0}f=f+1|0;if(f>>>0>=r>>>0)break;i=t[n>>2]|0}i=t[n>>2]|0}t[a>>2]=0;Yn(i);t[n>>2]=0}i=e+5172|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0}i=e+5584|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0}i=e+5608|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0}i=e+5604|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0}i=e+5624|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0;t[e+5632>>2]=0;t[e+5628>>2]=0}l=e+5612|0;i=t[l>>2]|0;if(i){s=e+5616|0;r=t[s>>2]|0;if(r){a=0;while(1){f=i+12|0;n=t[f>>2]|0;if(n){Yn(n);t[f>>2]=0;r=t[s>>2]|0}a=a+1|0;if(a>>>0>=r>>>0)break;else i=i+20|0}i=t[l>>2]|0}Yn(i);t[l>>2]=0}i=e+5600|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0}i=e+5592|0;r=t[i>>2]|0;if(!r)return;Yn(r);t[i>>2]=0;t[e+5596>>2]=0;return}function kt(e,i,r){e=e|0;i=i|0;r=r|0;return 1}function wt(e,i,r){e=e|0;i=i|0;r=r|0;return(t[e+8>>2]|0)==0&(t[e+188>>2]|0)!=0&(t[e+192>>2]|0)!=0&1|0}function mt(e,i,r){e=e|0;i=i|0;r=r|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0,V=0,X=0,G=0,K=0,W=0;W=c;c=c+224|0;K=W+200|0;V=W+192|0;$=W+184|0;j=W+176|0;U=W+168|0;H=W+160|0;N=W+152|0;D=W+144|0;z=W+136|0;C=W+128|0;B=W+120|0;R=W+112|0;T=W+104|0;S=W+96|0;E=W+88|0;A=W+80|0;L=W+72|0;x=W+64|0;M=W+56|0;y=W+48|0;g=W+40|0;P=W+32|0;_=W+24|0;h=W+16|0;u=W+8|0;F=W;q=W+216|0;a=W+204|0;O=W+212|0;p=W+208|0;G=e+8|0;t[G>>2]=1;e:do{if((Lf(i,q,2,r)|0)==2?(hf(q,a,2),(t[a>>2]|0)==65359):0){t[G>>2]=2;b=Df(i)|0;b=Bl(b|0,I|0,-2,-1)|0;d=I;X=e+196|0;s=t[X>>2]|0;t[s>>2]=b;t[s+4>>2]=d;s=F;t[s>>2]=b;t[s+4>>2]=d;jf(r,4,15766,F)|0;s=t[X>>2]|0;d=t[s>>2]|0;b=s+24|0;a=t[b>>2]|0;o=s+32|0;l=t[o>>2]|0;do{if((a+1|0)>>>0>l>>>0){v=~~(+(l>>>0)+100.0)>>>0;t[o>>2]=v;a=s+28|0;s=jn(t[a>>2]|0,v*24|0)|0;if(!s){Yn(t[a>>2]|0);t[a>>2]=0;t[o>>2]=0;t[b>>2]=0;jf(r,1,15803,u)|0;break e}else{t[a>>2]=s;a=t[b>>2]|0;break}}else s=t[s+28>>2]|0}while(0);n[s+(a*24|0)>>1]=-177;m=Ol(0,d|0,32)|0;v=s+(a*24|0)+8|0;t[v>>2]=m;t[v+4>>2]=I;t[s+(a*24|0)+16>>2]=2;t[b>>2]=a+1;v=e+16|0;if((Lf(i,t[v>>2]|0,2,r)|0)!=2){jf(r,1,8295,_)|0;r=0;c=W;return r|0}hf(t[v>>2]|0,O,2);a=t[O>>2]|0;if((a|0)!=65424){m=e+20|0;k=0;l=0;w=0;i:while(1){if(a>>>0<65280){Y=14;break}else u=784;while(1){s=t[u>>2]|0;o=(s|0)==0;if(o|(s|0)==(a|0))break;else u=u+12|0}if(o){jf(r,2,15914,g)|0;h=2;r:while(1){do{if((Lf(i,t[v>>2]|0,2,r)|0)!=2){Y=20;break i}hf(t[v>>2]|0,F,2);a=t[F>>2]|0}while(a>>>0<65280);u=784;while(1){s=t[u>>2]|0;if((s|0)==0|(s|0)==(a|0)){o=u;a=u;break}else u=u+12|0}if(!(t[a+4>>2]&t[G>>2])){Y=25;break i}if((s|0)>=65424){Y=100;break}switch(s|0){case 0:break;default:{_=o;b=h;break r}}h=h+2|0}if((Y|0)==100){Y=0;switch(s|0){case 65424:{s=k;a=w;Y=27;break i}default:{_=o;b=h}}}u=t[X>>2]|0;d=Df(i)|0;d=d-b|0;o=u+24|0;a=t[o>>2]|0;s=u+32|0;h=t[s>>2]|0;if((a+1|0)>>>0>h>>>0){a=~~(+(h>>>0)+100.0)>>>0;t[s>>2]=a;u=u+28|0;a=jn(t[u>>2]|0,a*24|0)|0;if(!a){l=u;a=u;Y=32;break}t[u>>2]=a;s=a;a=t[o>>2]|0}else s=t[u+28>>2]|0;n[s+(a*24|0)>>1]=0;h=s+(a*24|0)+8|0;t[h>>2]=d;t[h+4>>2]=((d|0)<0)<<31>>31;t[s+(a*24|0)+16>>2]=b;t[o>>2]=a+1;a=t[_>>2]|0;t[O>>2]=a;if((a|0)==65424){s=k;a=w;break}else o=784;while(1){s=t[o>>2]|0;if((s|0)==0|(s|0)==(a|0))break;else o=o+12|0}}else o=u;w=(s|0)==65361?1:w;k=(s|0)==65362?1:k;l=(s|0)==65372?1:l;if(!(t[o+4>>2]&t[G>>2])){Y=38;break}if((Lf(i,t[v>>2]|0,2,r)|0)!=2){Y=40;break}hf(t[v>>2]|0,p,2);s=(t[p>>2]|0)+-2|0;t[p>>2]=s;a=t[v>>2]|0;if(s>>>0>(t[m>>2]|0)>>>0){a=jn(a,s)|0;if(!a){Y=43;break}t[v>>2]=a;s=t[p>>2]|0;t[m>>2]=s}a=Lf(i,a,s,r)|0;if((a|0)!=(t[p>>2]|0)){Y=46;break}if(!(Ro[t[o+8>>2]&63](e,t[v>>2]|0,a,r)|0)){Y=48;break}h=t[X>>2]|0;d=t[o>>2]|0;b=Df(i)|0;_=t[p>>2]|0;b=-4-_+b|0;_=_+4|0;o=h+24|0;a=t[o>>2]|0;s=h+32|0;u=t[s>>2]|0;if((a+1|0)>>>0>u>>>0){a=~~(+(u>>>0)+100.0)>>>0;t[s>>2]=a;u=h+28|0;a=jn(t[u>>2]|0,a*24|0)|0;if(!a){l=u;a=u;Y=53;break}t[u>>2]=a;s=a;a=t[o>>2]|0}else s=t[h+28>>2]|0;n[s+(a*24|0)>>1]=d;d=s+(a*24|0)+8|0;t[d>>2]=b;t[d+4>>2]=((b|0)<0)<<31>>31;t[s+(a*24|0)+16>>2]=_;t[o>>2]=a+1;if((Lf(i,t[v>>2]|0,2,r)|0)!=2){Y=55;break}hf(t[v>>2]|0,O,2);a=t[O>>2]|0;if((a|0)==65424){s=k;a=w;break}}switch(Y|0){case 14:{t[P>>2]=a;jf(r,1,15863,P)|0;r=0;c=W;return r|0}case 20:{jf(r,1,8295,y)|0;Y=34;break}case 25:{jf(r,1,8339,M)|0;Y=34;break}case 27:{t[O>>2]=65424;break}case 32:{Yn(t[a>>2]|0);t[l>>2]=0;t[s>>2]=0;t[o>>2]=0;jf(r,1,15803,x)|0;Y=34;break}case 38:{jf(r,1,8339,A)|0;r=0;c=W;return r|0}case 40:{jf(r,1,8295,E)|0;r=0;c=W;return r|0}case 43:{Yn(t[v>>2]|0);t[v>>2]=0;t[m>>2]=0;jf(r,1,8427,S)|0;r=0;c=W;return r|0}case 46:{jf(r,1,8295,T)|0;r=0;c=W;return r|0}case 48:{jf(r,1,15985,R)|0;r=0;c=W;return r|0}case 53:{Yn(t[a>>2]|0);t[l>>2]=0;t[s>>2]=0;t[o>>2]=0;jf(r,1,15803,B)|0;r=0;c=W;return r|0}case 55:{jf(r,1,8295,C)|0;r=0;c=W;return r|0}}if((Y|0)==34){jf(r,1,15930,L)|0;r=0;c=W;return r|0}if(a){if(!s){jf(r,1,16090,D)|0;r=0;c=W;return r|0}if(!l){jf(r,1,16136,N)|0;r=0;c=W;return r|0}i:do{if(f[e+184>>0]&1){m=e+120|0;do{if(t[m>>2]|0){d=e+124|0;b=0;a=0;s=0;r:do{l=t[d>>2]|0;o=t[l+(b<<3)>>2]|0;f:do{if(o){u=t[l+(b<<3)+4>>2]|0;l=a>>>0<u>>>0;h=l?0:a-u|0;if((u|0)==(a|0)|l^1)a=h;else{o=l?o+a|0:o;a=u-a|0;while(1){if(a>>>0<4){Y=70;break r}hf(o,F,4);l=a+-4|0;a=t[F>>2]|0;s=a+s|0;if(l>>>0<a>>>0)break;if((l|0)==(a|0)){a=h;break f}else{o=o+(a+4)|0;a=l-a|0}}a=a-l|0}}}while(0);b=b+1|0}while(b>>>0<(t[m>>2]|0)>>>0);if((Y|0)==70){jf(r,1,16182,H)|0;break}if(!a)Y=77;else jf(r,1,16213,U)|0}else{s=0;Y=77}}while(0);r:do{if((Y|0)==77){l=Nn(s)|0;_=e+144|0;t[_>>2]=l;if(!l){jf(r,1,13302,j)|0;break}k=e+132|0;t[k>>2]=s;o=t[m>>2]|0;w=e+124|0;do{if(o){a=t[w>>2]|0;l=a;b=0;d=0;s=0;f:while(1){u=t[l+(b<<3)>>2]|0;if(!u)u=d;else{l=t[l+(b<<3)+4>>2]|0;a=(t[_>>2]|0)+s|0;n:do{if(d>>>0<l>>>0){Dl(a|0,u|0,d|0)|0;s=s+d|0;if((l|0)==(d|0)){u=0;break}h=u+d|0;a=l-d|0;while(1){if(a>>>0<4){Y=88;break f}hf(h,q,4);u=h+4|0;o=a+-4|0;l=t[q>>2]|0;a=(t[_>>2]|0)+s|0;if(o>>>0<l>>>0){l=u;break}Dl(a|0,u|0,l|0)|0;a=t[q>>2]|0;s=a+s|0;if((o|0)==(a|0)){u=0;break n}else{h=h+(a+4)|0;a=o-a|0}}Dl(a|0,l|0,o|0)|0;u=(t[q>>2]|0)-o|0;s=o+s|0}else{Dl(a|0,u|0,l|0)|0;u=d-l|0;s=l+s|0}}while(0);Yn(t[(t[w>>2]|0)+(b<<3)>>2]|0);l=t[w>>2]|0;t[l+(b<<3)>>2]=0;t[l+(b<<3)+4>>2]=0;o=t[m>>2]|0;a=l}b=b+1|0;if(b>>>0>=o>>>0){Y=94;break}else d=u}if((Y|0)==88){jf(r,1,16182,$)|0;break r}else if((Y|0)==94){l=t[_>>2]|0;s=t[k>>2]|0;break}}else a=t[w>>2]|0}while(0);t[e+128>>2]=l;t[e+152>>2]=s;t[m>>2]=0;Yn(a);t[w>>2]=0;break i}}while(0);jf(r,1,16236,V)|0;r=0;c=W;return r|0}}while(0);jf(r,4,16262,K)|0;K=Df(i)|0;r=(t[X>>2]|0)+8|0;t[r>>2]=K+-2;t[r+4>>2]=0;t[G>>2]=8;r=1;c=W;return r|0}}jf(r,1,16044,z)|0;r=0;c=W;return r|0}}while(0);jf(r,1,15839,h)|0;r=0;c=W;return r|0}function vt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0;O=c;c=c+16|0;I=O;C=t[e+80>>2]|0;P=e+88|0;S=ie(t[e+112>>2]|0,t[e+116>>2]|0)|0;k=t[C+16>>2]|0;b=k*1080|0;_=t[e+12>>2]|0;k=ie(k<<2,k)|0;e:do{if(S){w=_+5604|0;m=_+5620|0;v=_+5612|0;p=_+5616|0;g=_+5632|0;y=_+5624|0;M=_+5584|0;T=0;R=t[e+164>>2]|0;i:while(1){o=R+5584|0;A=t[o>>2]|0;Dl(R|0,_|0,5640)|0;i=R+5636|0;f[i>>0]=f[i>>0]&-4;t[R+5168>>2]=0;i=R+5604|0;t[i>>2]=0;u=R+5620|0;t[u>>2]=0;E=R+5612|0;t[E>>2]=0;h=R+5632|0;t[h>>2]=0;d=R+5624|0;t[d>>2]=0;t[o>>2]=A;if(t[w>>2]|0){n=Nn(k)|0;t[i>>2]=n;if(!n){i=0;n=25;break}Dl(n|0,t[w>>2]|0,k|0)|0}i=(t[m>>2]|0)*20|0;n=Nn(i)|0;t[E>>2]=n;if(!n){i=0;n=25;break}Dl(n|0,t[v>>2]|0,i|0)|0;i=t[p>>2]|0;if(i){s=0;l=t[E>>2]|0;o=t[v>>2]|0;while(1){a=o+12|0;if(t[a>>2]|0){i=o+16|0;n=Nn(t[i>>2]|0)|0;t[l+12>>2]=n;if(!n){i=0;n=25;break i}Dl(n|0,t[a>>2]|0,t[i>>2]|0)|0;i=t[p>>2]|0}t[u>>2]=(t[u>>2]|0)+1;s=s+1|0;if(s>>>0>=i>>>0)break;else{l=l+20|0;o=o+20|0}}}i=(t[g>>2]|0)*20|0;n=Nn(i)|0;t[d>>2]=n;if(!n){i=0;n=25;break}Dl(n|0,t[y>>2]|0,i|0)|0;t[h>>2]=t[g>>2];s=t[g>>2]|0;if(s){l=0;n=t[d>>2]|0;a=t[y>>2]|0;while(1){i=t[a+8>>2]|0;if(i)t[n+8>>2]=(t[E>>2]|0)+(((i-(t[v>>2]|0)|0)/20|0)*20|0);i=t[a+12>>2]|0;if(i)t[n+12>>2]=(t[E>>2]|0)+(((i-(t[v>>2]|0)|0)/20|0)*20|0);l=l+1|0;if(l>>>0>=s>>>0)break;else{n=n+20|0;a=a+20|0}}}Dl(A|0,t[M>>2]|0,b|0)|0;T=T+1|0;if(T>>>0>=S>>>0)break e;else R=R+5640|0}if((n|0)==25){c=O;return i|0}}}while(0);n=Pr(1)|0;i=e+204|0;t[i>>2]=n;if(!n){r=0;c=O;return r|0}if(Lr(n,C,P)|0){r=1;c=O;return r|0}Br(t[i>>2]|0);t[i>>2]=0;jf(r,1,8839,I)|0;r=0;c=O;return r|0}function pt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0;y=c;c=c+128|0;p=y+120|0;v=y+112|0;m=y+104|0;w=y+96|0;k=y+88|0;_=y+80|0;b=y+72|0;d=y+64|0;h=y+56|0;u=y+48|0;o=y+40|0;l=y+32|0;s=y+24|0;a=y+16|0;n=y+8|0;f=y;if(!e){c=y;return}il(12191,17,1,r)|0;t[f>>2]=t[e>>2];qs(r,12209,f)|0;t[n>>2]=t[e+4>>2];qs(r,12222,n)|0;t[a>>2]=t[e+8>>2];qs(r,12234,a)|0;t[s>>2]=t[e+16>>2];qs(r,12251,s)|0;if((i|0)>0){a=e+5584|0;s=0;do{n=t[a>>2]|0;t[l>>2]=s;qs(r,12262,l)|0;t[o>>2]=t[n+(s*1080|0)>>2];qs(r,12276,o)|0;e=n+(s*1080|0)+4|0;t[u>>2]=t[e>>2];qs(r,12290,u)|0;t[h>>2]=t[n+(s*1080|0)+8>>2];qs(r,12313,h)|0;t[d>>2]=t[n+(s*1080|0)+12>>2];qs(r,12329,d)|0;t[b>>2]=t[n+(s*1080|0)+16>>2];qs(r,12345,b)|0;t[_>>2]=t[n+(s*1080|0)+20>>2];qs(r,12362,_)|0;il(12377,23,1,r)|0;if(t[e>>2]|0){f=0;do{M=t[n+(s*1080|0)+944+(f<<2)>>2]|0;t[k>>2]=t[n+(s*1080|0)+812+(f<<2)>>2];t[k+4>>2]=M;qs(r,12401,k)|0;f=f+1|0}while(f>>>0<(t[e>>2]|0)>>>0)}$s(10,r)|0;M=n+(s*1080|0)+24|0;t[w>>2]=t[M>>2];qs(r,12410,w)|0;t[m>>2]=t[n+(s*1080|0)+804>>2];qs(r,12425,m)|0;il(12442,20,1,r)|0;if((t[M>>2]|0)!=1){e=(t[e>>2]|0)*3|0;if((e|0)>2){e=e+-2|0;g=8}}else{e=1;g=8}if((g|0)==8){g=0;f=0;do{M=t[n+(s*1080|0)+28+(f<<3)>>2]|0;t[v>>2]=t[n+(s*1080|0)+28+(f<<3)+4>>2];t[v+4>>2]=M;qs(r,12401,v)|0;f=f+1|0}while((f|0)!=(e|0))}$s(10,r)|0;t[p>>2]=t[n+(s*1080|0)+808>>2];qs(r,12463,p)|0;il(12480,5,1,r)|0;s=s+1|0}while((s|0)!=(i|0))}il(10321,4,1,r)|0;c=y;return}function gt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0;T=c;c=c+80|0;p=T+32|0;g=T+24|0;A=T+16|0;M=T+8|0;b=T+64|0;y=T+60|0;d=T+56|0;k=T+52|0;m=T+48|0;w=T+44|0;v=T+40|0;_=T+36|0;t[b>>2]=1;f=Nn(1e3)|0;if(!f){jf(r,1,12127,T)|0;r=0;c=T;return r|0}E=e+116|0;S=e+112|0;o=e+204|0;u=e+84|0;h=e+8|0;n=1e3;l=0;while(1){if(!(Qn(e,y,d,k,m,w,v,_,b,i,r)|0)){a=5;break}if(!(t[b>>2]|0)){a=17;break}s=t[d>>2]|0;if(s>>>0>n>>>0){n=jn(f,s)|0;if(!n){a=9;break}else{f=n;a=s}}else a=n;n=t[y>>2]|0;if(!(et(e,n,f,s,i,r)|0)){a=11;break}n=n+1|0;s=ie(t[S>>2]|0,t[E>>2]|0)|0;t[g>>2]=n;t[g+4>>2]=s;jf(r,4,11986,g)|0;s=t[o>>2]|0;if(!(Qt(t[(t[t[s+20>>2]>>2]|0)+20>>2]|0,t[s+24>>2]|0,f,t[(t[u>>2]|0)+24>>2]|0)|0)){a=13;break}t[p>>2]=n;jf(r,4,12016,p)|0;s=Nf(i)|0;if((s|0)==0&(I|0)==0?(t[h>>2]|0)==64:0){a=17;break}l=l+1|0;if((l|0)==(ie(t[S>>2]|0,t[E>>2]|0)|0)){a=17;break}else n=a}if((a|0)==5){Yn(f);r=0;c=T;return r|0}else if((a|0)==9){Yn(f);S=ie(t[S>>2]|0,t[E>>2]|0)|0;t[M>>2]=(t[y>>2]|0)+1;t[M+4>>2]=S;jf(r,1,11946,M)|0;r=0;c=T;return r|0}else if((a|0)==11){Yn(f);S=ie(t[S>>2]|0,t[E>>2]|0)|0;t[A>>2]=n+1;t[A+4>>2]=S;jf(r,1,12162,A)|0;r=0;c=T;return r|0}else if((a|0)==13){Yn(f);r=0;c=T;return r|0}else if((a|0)==17){Yn(f);r=1;c=T;return r|0}return 0}function yt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,O=0;O=c;c=c+96|0;A=O+56|0;R=O+48|0;M=O+40|0;E=O+32|0;C=O+24|0;o=O+16|0;l=O+8|0;w=O+92|0;T=O+88|0;k=O+84|0;v=O+80|0;g=O+76|0;p=O+72|0;y=O+68|0;m=O+64|0;t[w>>2]=1;f=Nn(1e3)|0;if(!f){jf(r,1,11880,O)|0;P=0;c=O;return P|0}S=e+196|0;a=t[S>>2]|0;n=t[a+40>>2]|0;e:do{if(!n){n=ie(t[e+116>>2]|0,t[e+112>>2]|0)|0;t[a+36>>2]=n;n=Fn(n,40)|0;a=t[S>>2]|0;t[a+40>>2]=n;i:do{if(n){if(t[a+36>>2]|0){s=0;do{t[n+(s*40|0)+28>>2]=100;t[n+(s*40|0)+20>>2]=0;_=Fn(100,24)|0;a=t[S>>2]|0;n=t[a+40>>2]|0;t[n+(s*40|0)+24>>2]=_;s=s+1|0;if(!_)break i}while(s>>>0<(t[a+36>>2]|0)>>>0)}a=t[e+60>>2]|0;if(!n)break e;else{P=12;break e}}}while(0);Yn(f);P=0;c=O;return P|0}else{a=t[e+60>>2]|0;P=12}}while(0);if((P|0)==12)if(t[n+16>>2]|0){if(!(t[n+(a*40|0)+4>>2]|0)){_=e+64|0;_=Bl(t[_>>2]|0,t[_+4>>2]|0,2,0)|0;if(!(vf(i,_,I,r)|0)){jf(r,1,11918,l)|0;Yn(f);P=0;c=O;return P|0}}else{_=t[n+(a*40|0)+16>>2]|0;_=Bl(t[_>>2]|0,t[_+4>>2]|0,2,0)|0;if(!(vf(i,_,I,r)|0)){jf(r,1,11918,o)|0;Yn(f);P=0;c=O;return P|0}}n=e+8|0;if((t[n>>2]|0)==256)t[n>>2]=8}e:do{if(Qn(e,T,k,v,g,p,y,m,w,i,r)|0){b=e+116|0;_=e+112|0;u=e+204|0;h=e+84|0;d=a+1|0;n=1e3;while(1){if(!(t[w>>2]|0))break;o=t[k>>2]|0;if(o>>>0>n>>>0){n=jn(f,o)|0;if(!n){P=26;break}else{f=n;l=o}}else l=n;s=t[T>>2]|0;if(!(et(e,s,f,o,i,r)|0)){P=28;break}n=s+1|0;o=ie(t[_>>2]|0,t[b>>2]|0)|0;t[E>>2]=n;t[E+4>>2]=o;jf(r,4,11986,E)|0;o=t[u>>2]|0;if(!(Qt(t[(t[t[o+20>>2]>>2]|0)+20>>2]|0,t[o+24>>2]|0,f,t[(t[h>>2]|0)+24>>2]|0)|0)){P=30;break}t[M>>2]=n;jf(r,4,12016,M)|0;if((s|0)==(a|0)){P=32;break}t[A>>2]=n;t[A+4>>2]=d;jf(r,2,12060,A)|0;if(!(Qn(e,T,k,v,g,p,y,m,w,i,r)|0))break e;else n=l}if((P|0)==26){Yn(f);P=ie(t[_>>2]|0,t[b>>2]|0)|0;t[C>>2]=(t[T>>2]|0)+1;t[C+4>>2]=P;jf(r,1,11946,C)|0;P=0;c=O;return P|0}else if((P|0)==28){Yn(f);P=0;c=O;return P|0}else if((P|0)==30){Yn(f);P=0;c=O;return P|0}else if((P|0)==32){P=(t[S>>2]|0)+8|0;P=Bl(t[P>>2]|0,t[P+4>>2]|0,2,0)|0;if(!(vf(i,P,I,r)|0)){jf(r,1,11918,R)|0;Yn(f);P=0;c=O;return P|0}}Yn(f);P=1;c=O;return P|0}}while(0);Yn(f);P=0;c=O;return P|0}function Mt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0;x=c;c=c+32|0;C=x+16|0;v=x+8|0;u=x;R=x+20|0;P=t[e+40>>2]|0;O=e+36|0;d=t[O>>2]|0;b=e+204|0;o=t[b>>2]|0;t[o+16>>2]=0;T=e+8|0;t[T>>2]=0;t[R>>2]=0;cf(d,65424,2);cf(d+2|0,10,2);I=e+200|0;cf(d+4|0,t[I>>2]|0,2);E=e+12|0;cf(d+10|0,t[E>>2]|0,1);S=e+164|0;cf(d+11|0,t[(t[S>>2]|0)+((t[I>>2]|0)*5640|0)+5588>>2]|0,1);t[R>>2]=12;s=d+12|0;f=P+-12|0;h=e+88|0;if(((n[h>>1]|0)+-3&65535)>=4?(a=t[I>>2]|0,l=t[S>>2]|0,(t[l+(a*5640|0)+420>>2]|0)!=0):0){t[R>>2]=0;Kt(t[(t[e+80>>2]|0)+16>>2]|0,l,a,s,R);A=t[R>>2]|0;a=A+12|0;s=d+a|0;f=f-A|0}else a=12;t[R>>2]=0;cf(s,65427,2);t[o+4>>2]=t[T>>2];A=t[E>>2]|0;t[o+8>>2]=A;if(!A)t[(t[t[o+20>>2]>>2]|0)+840>>2]=0;t[R>>2]=0;if(!(Hr(o,t[I>>2]|0,s+2|0,R,f+-4|0,0)|0)){jf(r,1,11860,u)|0;i=0;c=x;return i|0}f=(t[R>>2]|0)+2|0;t[R>>2]=f;f=f+a|0;cf(d+6|0,f,4);if(((n[h>>1]|0)+-3&65535)<4){A=e+28|0;cf(t[A>>2]|0,t[I>>2]|0,1);M=(t[A>>2]|0)+1|0;t[A>>2]=M;cf(M,f,4);t[A>>2]=(t[A>>2]|0)+4}a=d+f|0;A=P-f|0;g=t[b>>2]|0;y=e+88|0;w=t[S>>2]|0;m=t[I>>2]|0;h=Jt(y,0,m)|0;M=e+8|0;t[E>>2]=(t[E>>2]|0)+1;e:do{if(h>>>0>1){d=g+4|0;b=g+8|0;_=g+20|0;k=e+28|0;l=a;a=A;f=0;u=1;while(1){t[M>>2]=u;t[R>>2]=0;cf(l,65424,2);cf(l+2|0,10,2);cf(l+4|0,t[I>>2]|0,2);cf(l+10|0,t[E>>2]|0,1);cf(l+11|0,t[(t[S>>2]|0)+((t[I>>2]|0)*5640|0)+5588>>2]|0,1);t[R>>2]=0;cf(l+12|0,65427,2);t[d>>2]=t[T>>2];o=t[E>>2]|0;t[b>>2]=o;if(!o)t[(t[t[_>>2]>>2]|0)+840>>2]=0;t[R>>2]=0;if(!(Hr(g,t[I>>2]|0,l+14|0,R,a+-16|0,0)|0))break;L=t[R>>2]|0;B=L+2|0;t[R>>2]=B;o=L+14|0;s=l+o|0;f=f+12+B|0;a=a+-12+(-2-L)|0;cf(l+6|0,o,4);if(((n[y>>1]|0)+-3&65535)<4){cf(t[k>>2]|0,t[I>>2]|0,1);B=(t[k>>2]|0)+1|0;t[k>>2]=B;cf(B,o,4);t[k>>2]=(t[k>>2]|0)+4}t[E>>2]=(t[E>>2]|0)+1;u=u+1|0;if(u>>>0>=h>>>0){p=12;break e}else l=s}jf(r,1,11860,v)|0}else{s=a;a=A;f=0;p=12}}while(0);e:do{if((p|0)==12){_=w+(m*5640|0)+420|0;i:do{if(t[_>>2]|0){k=g+16|0;w=g+4|0;m=g+8|0;v=g+20|0;b=e+28|0;d=1;r:while(1){t[k>>2]=d;h=Jt(y,d,t[I>>2]|0)|0;if(h){u=0;while(1){t[M>>2]=u;t[R>>2]=0;cf(s,65424,2);cf(s+2|0,10,2);cf(s+4|0,t[I>>2]|0,2);cf(s+10|0,t[E>>2]|0,1);cf(s+11|0,t[(t[S>>2]|0)+((t[I>>2]|0)*5640|0)+5588>>2]|0,1);t[R>>2]=0;cf(s+12|0,65427,2);t[w>>2]=t[T>>2];B=t[E>>2]|0;t[m>>2]=B;if(!B)t[(t[t[v>>2]>>2]|0)+840>>2]=0;t[R>>2]=0;if(!(Hr(g,t[I>>2]|0,s+14|0,R,a+-16|0,0)|0))break r;B=t[R>>2]|0;l=B+2|0;t[R>>2]=l;f=f+12+l|0;l=B+14|0;o=s+l|0;a=a+-12+(-2-B)|0;cf(s+6|0,l,4);if(((n[y>>1]|0)+-3&65535)<4){cf(t[b>>2]|0,t[I>>2]|0,1);B=(t[b>>2]|0)+1|0;t[b>>2]=B;cf(B,l,4);t[b>>2]=(t[b>>2]|0)+4}t[E>>2]=(t[E>>2]|0)+1;u=u+1|0;if(u>>>0>=h>>>0){s=o;break}else s=o}}d=d+1|0;if(d>>>0>(t[_>>2]|0)>>>0)break i}jf(r,1,11860,C)|0;break e}}while(0);B=f-A+P|0;if((Bf(i,t[O>>2]|0,B,r)|0)!=(B|0)){B=0;c=x;return B|0}t[I>>2]=(t[I>>2]|0)+1;B=1;c=x;return B|0}}while(0);B=0;c=x;return B|0}function At(e,i,r){e=e|0;i=i|0;r=r|0;e=e+44|0;cf(t[e>>2]|0,65497,2);if((Bf(i,t[e>>2]|0,2,r)|0)!=2){i=0;return i|0}i=(zf(i,r)|0)!=0&1;return i|0}function Et(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0;a=(t[e+32>>2]|0)*5|0;l=e+16|0;l=Bl(t[l>>2]|0,t[l+4>>2]|0,6,0)|0;s=I;f=Df(i)|0;n=I;if(!(Hf(i,l,s,r)|0)){l=0;return l|0}if((Bf(i,t[e+24>>2]|0,a,r)|0)!=(a|0)){l=0;return l|0}l=(Hf(i,f,n,r)|0)!=0&1;return l|0}function St(e,i,r){e=e|0;i=i|0;r=r|0;e=t[e+196>>2]|0;if(!e)return 1;i=Df(i)|0;r=e;r=Il(i|0,I|0,t[r>>2]|0,t[r+4>>2]|0)|0;i=e+16|0;t[i>>2]=r;t[i+4>>2]=I;return 1}function Tt(e,i,r){e=e|0;i=i|0;r=r|0;r=e+204|0;Br(t[r>>2]|0);t[r>>2]=0;r=e+24|0;i=t[r>>2]|0;if(i){Yn(i);t[r>>2]=0;t[e+28>>2]=0}r=e+36|0;i=t[r>>2]|0;if(!i){e=e+40|0;t[e>>2]=0;return 1}Yn(i);t[r>>2]=0;e=e+40|0;t[e>>2]=0;return 1}function Rt(e,i,r){e=e|0;i=i|0;r=r|0;r=e+44|0;i=t[r>>2]|0;if(i){Yn(i);t[r>>2]=0}t[e+48>>2]=0;return 1}function Ct(e,i,r){e=e|0;i=i|0;r=r|0;return 1}function Pt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0;n=c;c=c+32|0;f=(t[e+8>>2]|0)==0&(t[e+188>>2]|0)!=0&(t[e+192>>2]|0)!=0&1;i=(t[(t[(t[e+164>>2]|0)+5584>>2]|0)+4>>2]|0)+-1|0;if(i>>>0>31){jf(r,1,11790,n)|0;r=0;c=n;return r|0}i=1<<i;if((t[e+100>>2]|0)>>>0<i>>>0){jf(r,1,11790,n+8|0)|0;r=0;c=n;return r|0}if((t[e+104>>2]|0)>>>0>=i>>>0){r=f;c=n;return r|0}jf(r,1,11790,n+16|0)|0;r=0;c=n;return r|0}function It(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,s=0,l=0,o=0;if((n[e+88>>1]&-32256)<<16>>16!=-32256){o=1;return o|0}l=ie(t[e+112>>2]|0,t[e+116>>2]|0)|0;if(!l){o=1;return o|0}s=e+80|0;o=0;r=1;a=t[e+164>>2]|0;while(1){if((t[a+16>>2]|0)==2){r=(t[a+5608>>2]|0)!=0&r;e=t[(t[s>>2]|0)+16>>2]|0;if(e){f=0;i=t[a+5584>>2]|0;while(1){r=(t[i+20>>2]&1^1)&r;f=f+1|0;if(f>>>0>=e>>>0)break;else i=i+1080|0}}}o=o+1|0;if((o|0)==(l|0))break;else a=a+5640|0}return r|0}function Ot(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0;a=e+88|0;s=e+32|0;l=t[e+80>>2]|0;o=ie(t[e+116>>2]|0,t[e+112>>2]|0)|0;t[s>>2]=0;if(!o)return 1;f=t[e+164>>2]|0;n=0;while(1){Ar(l,a,n);i=f+420|0;r=0;e=0;do{u=Jt(a,e,n)|0;t[s>>2]=(t[s>>2]|0)+u;r=u+r|0;e=e+1|0}while(e>>>0<=(t[i>>2]|0)>>>0);t[f+5588>>2]=r;n=n+1|0;if((n|0)==(o|0))break;else f=f+5640|0}return 1}function xt(e,i,r){e=e|0;i=i|0;r=r|0;e=t[e+44>>2]|0;cf(e,65359,2);return(Bf(i,e,2,r)|0)==2|0}function Lt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0;_=c;c=c+16|0;l=_;o=t[e+80>>2]|0;d=o+16|0;u=(t[d>>2]|0)*3|0;b=u+40|0;f=t[o+24>>2]|0;a=e+48|0;h=e+44|0;n=t[h>>2]|0;do{if(b>>>0>(t[a>>2]|0)>>>0){n=jn(n,b)|0;if(n){t[h>>2]=n;t[a>>2]=b;break}Yn(t[h>>2]|0);t[h>>2]=0;t[a>>2]=0;jf(r,1,11752,l)|0;i=0;c=_;return i|0}}while(0);cf(n,65361,2);cf(n+2|0,u+38|0,2);cf(n+4|0,s[e+88>>1]|0,2);cf(n+6|0,t[o+8>>2]|0,4);cf(n+10|0,t[o+12>>2]|0,4);cf(n+14|0,t[o>>2]|0,4);cf(n+18|0,t[o+4>>2]|0,4);cf(n+22|0,t[e+100>>2]|0,4);cf(n+26|0,t[e+104>>2]|0,4);cf(n+30|0,t[e+92>>2]|0,4);cf(n+34|0,t[e+96>>2]|0,4);cf(n+38|0,t[d>>2]|0,2);if(t[d>>2]|0){a=0;n=n+40|0;while(1){cf(n,(t[f+24>>2]|0)+-1+(t[f+32>>2]<<7)|0,1);cf(n+1|0,t[f>>2]|0,1);cf(n+2|0,t[f+4>>2]|0,1);a=a+1|0;if(a>>>0>=(t[d>>2]|0)>>>0)break;else{n=n+3|0;f=f+52|0}}}i=(Bf(i,t[h>>2]|0,b,r)|0)==(b|0)&1;c=_;return i|0}function Bt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0;w=c;c=c+32|0;k=w+16|0;_=w+8|0;l=w;b=w+20|0;o=e+200|0;u=t[o>>2]|0;h=e+164|0;d=t[h>>2]|0;f=t[d+(u*5640|0)+5584>>2]|0;if(!(t[f>>2]&1))a=5;else a=(t[f+4>>2]|0)+5|0;s=a+9|0;t[b>>2]=s;n=e+48|0;e=e+44|0;f=t[e>>2]|0;do{if(s>>>0>(t[n>>2]|0)>>>0){f=jn(f,s)|0;if(f){t[e>>2]=f;t[n>>2]=s;break}Yn(t[e>>2]|0);t[e>>2]=0;t[n>>2]=0;jf(r,1,11687,l)|0;k=0;c=w;return k|0}}while(0);cf(f,65362,2);cf(f+2|0,a+7|0,2);cf(f+4|0,t[d+(u*5640|0)>>2]|0,1);cf(f+5|0,t[d+(u*5640|0)+4>>2]|0,1);cf(f+6|0,t[d+(u*5640|0)+8>>2]|0,2);cf(f+8|0,t[d+(u*5640|0)+16>>2]|0,1);t[b>>2]=a;if(!(Zt(t[h>>2]|0,t[o>>2]|0,f+9|0,b,r)|0)){jf(r,1,11726,_)|0;k=0;c=w;return k|0}if(!(t[b>>2]|0)){k=(Bf(i,t[e>>2]|0,s,r)|0)==(s|0)&1;c=w;return k|0}else{jf(r,1,11726,k)|0;k=0;c=w;return k|0}return 0}function zt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0;_=c;c=c+32|0;b=_+16|0;d=_+8|0;l=_;u=_+20|0;o=e+200|0;h=e+164|0;f=t[(t[h>>2]|0)+((t[o>>2]|0)*5640|0)+5584>>2]|0;n=t[f+24>>2]|0;if((n|0)==1)f=1;else f=((t[f+4>>2]|0)*3|0)+-2|0;a=(n|0)==0?f+1|0:f<<1|1;s=a+4|0;t[u>>2]=s;n=e+48|0;e=e+44|0;f=t[e>>2]|0;do{if(s>>>0>(t[n>>2]|0)>>>0){f=jn(f,s)|0;if(f){t[e>>2]=f;t[n>>2]=s;break}Yn(t[e>>2]|0);t[e>>2]=0;t[n>>2]=0;jf(r,1,11622,l)|0;b=0;c=_;return b|0}}while(0);cf(f,65372,2);cf(f+2|0,a+2|0,2);t[u>>2]=a;if(!(Wt(t[h>>2]|0,t[o>>2]|0,0,f+4|0,u,r)|0)){jf(r,1,11661,d)|0;b=0;c=_;return b|0}if(!(t[u>>2]|0)){b=(Bf(i,t[e>>2]|0,s,r)|0)==(s|0)&1;c=_;return b|0}else{jf(r,1,11661,b)|0;b=0;c=_;return b|0}return 0}function Dt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0;y=c;c=c+16|0;p=y;w=y+4|0;b=e+80|0;f=t[(t[b>>2]|0)+16>>2]|0;if(f>>>0<=1){g=1;c=y;return g|0}m=e+164|0;v=e+200|0;k=e+48|0;d=e+44|0;h=1;while(1){s=t[m>>2]|0;o=t[v>>2]|0;a=t[s+(o*5640|0)+5584>>2]|0;l=t[a+(h*1080|0)>>2]|0;e:do{if((((((t[a>>2]|0)==(l|0)?(_=t[a+4>>2]|0,(_|0)==(t[a+(h*1080|0)+4>>2]|0)):0)?(t[a+8>>2]|0)==(t[a+(h*1080|0)+8>>2]|0):0)?(t[a+12>>2]|0)==(t[a+(h*1080|0)+12>>2]|0):0)?(t[a+16>>2]|0)==(t[a+(h*1080|0)+16>>2]|0):0)?(t[a+20>>2]|0)==(t[a+(h*1080|0)+20>>2]|0):0){if(_){e=0;do{if((t[a+812+(e<<2)>>2]|0)!=(t[a+(h*1080|0)+812+(e<<2)>>2]|0)){g=13;break e}if((t[a+944+(e<<2)>>2]|0)!=(t[a+(h*1080|0)+944+(e<<2)>>2]|0)){g=13;break e}e=e+1|0}while(e>>>0<_>>>0)}}else g=13}while(0);if((g|0)==13){g=0;if(!(l&1))e=5;else e=(t[a+(h*1080|0)+4>>2]|0)+5|0;u=e+(f>>>0<257?6:7)|0;n=t[d>>2]|0;if(u>>>0>(t[k>>2]|0)>>>0){e=jn(n,u)|0;if(!e){g=17;break}t[d>>2]=e;t[k>>2]=u;o=t[v>>2]|0;s=t[m>>2]|0;a=t[s+(o*5640|0)+5584>>2]|0;f=t[(t[b>>2]|0)+16>>2]|0;l=t[a+(h*1080|0)>>2]|0;n=e}f=f>>>0<257?1:2;if(!(l&1))e=5;else e=(t[a+(h*1080|0)+4>>2]|0)+5|0;cf(n,65363,2);cf(n+2|0,f+3+e|0,2);cf(n+4|0,h,f);l=f|4;cf(n+l|0,t[(t[s+(o*5640|0)+5584>>2]|0)+(h*1080|0)>>2]|0,1);t[w>>2]=e;Zt(t[m>>2]|0,t[v>>2]|0,n+(l+1)|0,w,r)|0;if((Bf(i,t[d>>2]|0,u,r)|0)!=(u|0)){e=0;g=24;break}f=t[(t[b>>2]|0)+16>>2]|0}h=h+1|0;if(h>>>0>=f>>>0){e=1;g=24;break}}if((g|0)==17){Yn(t[d>>2]|0);t[d>>2]=0;t[k>>2]=0;jf(r,1,11548,p)|0;g=0;c=y;return g|0}else if((g|0)==24){c=y;return e|0}return 0}function Nt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0;v=c;c=c+16|0;w=v;b=v+4|0;h=e+80|0;f=t[(t[h>>2]|0)+16>>2]|0;if(f>>>0<=1){m=1;c=v;return m|0}_=e+164|0;k=e+200|0;d=e+48|0;u=e+44|0;o=1;while(1){l=t[(t[_>>2]|0)+((t[k>>2]|0)*5640|0)+5584>>2]|0;a=t[l+24>>2]|0;s=t[l+(o*1080|0)+24>>2]|0;e:do{if((a|0)==(s|0)?(t[l+804>>2]|0)==(t[l+(o*1080|0)+804>>2]|0):0){if((a|0)!=1){n=(t[l+4>>2]|0)*3|0;e=n+-2|0;if((n|0)!=((t[l+(o*1080|0)+4>>2]|0)*3|0)){m=14;break}if(!e)break}else e=1;n=0;do{if((t[l+28+(n<<3)>>2]|0)!=(t[l+(o*1080|0)+28+(n<<3)>>2]|0)){m=14;break e}n=n+1|0}while(n>>>0<e>>>0);if(a){n=0;do{if((t[l+28+(n<<3)+4>>2]|0)!=(t[l+(o*1080|0)+28+(n<<3)+4>>2]|0)){m=14;break e}n=n+1|0}while(n>>>0<e>>>0)}}else m=14}while(0);if((m|0)==14){m=0;if((s|0)==1)e=1;else e=((t[l+(o*1080|0)+4>>2]|0)*3|0)+-2|0;a=((s|0)==0?e+1|0:e<<1|1)+5+(f>>>0>256&1)|0;e=t[u>>2]|0;if(a>>>0>(t[d>>2]|0)>>>0){e=jn(e,a)|0;if(!e){m=18;break}t[u>>2]=e;t[d>>2]=a;f=t[(t[_>>2]|0)+((t[k>>2]|0)*5640|0)+5584>>2]|0;n=t[f+(o*1080|0)+24>>2]|0}else{n=s;f=l}if((n|0)==1)f=1;else f=((t[f+(o*1080|0)+4>>2]|0)*3|0)+-2|0;n=(n|0)==0?f+1|0:f<<1|1;t[b>>2]=n+6;cf(e,65373,2);f=e+2|0;if((t[(t[h>>2]|0)+16>>2]|0)>>>0<257){cf(f,n+3|0,2);cf(e+4|0,o,1);e=e+5|0}else{cf(f,n+4|0,2);cf(e+4|0,o,2);e=e+6|0}t[b>>2]=n;Wt(t[_>>2]|0,t[k>>2]|0,o,e,b,r)|0;if((Bf(i,t[u>>2]|0,a,r)|0)!=(a|0)){e=0;m=28;break}f=t[(t[h>>2]|0)+16>>2]|0}o=o+1|0;if(o>>>0>=f>>>0){e=1;m=28;break}}if((m|0)==18){Yn(t[u>>2]|0);t[u>>2]=0;t[d>>2]=0;jf(r,1,11476,w)|0;m=0;c=v;return m|0}else if((m|0)==28){c=v;return e|0}return 0}function Ft(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0;u=c;c=c+16|0;a=u;s=(t[e+32>>2]|0)*5|0;l=s+6|0;n=e+48|0;o=e+44|0;f=t[o>>2]|0;do{if(l>>>0>(t[n>>2]|0)>>>0){f=jn(f,l)|0;if(f){t[o>>2]=f;t[n>>2]=l;break}Yn(t[o>>2]|0);t[o>>2]=0;t[n>>2]=0;jf(r,1,11437,a)|0;i=0;c=u;return i|0}}while(0);a=Df(i)|0;e=e+16|0;t[e>>2]=a;t[e+4>>2]=I;cf(f,65365,2);cf(f+2|0,s+4|0,2);cf(f+4|0,0,1);cf(f+5|0,80,1);i=(Bf(i,t[o>>2]|0,l,r)|0)==(l|0)&1;c=u;return i|0}function Ht(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;k=c;c=c+16|0;l=k;_=k+4|0;t[_>>2]=0;h=e+200|0;f=t[h>>2]|0;u=e+164|0;n=t[u>>2]|0;o=e+80|0;s=t[(t[o>>2]|0)+16>>2]|0;b=(ie(s>>>0<257?7:9,(t[n+(f*5640|0)+420>>2]|0)+1|0)|0)+4|0;a=e+48|0;d=e+44|0;e=t[d>>2]|0;do{if(b>>>0>(t[a>>2]|0)>>>0){f=jn(e,b)|0;if(f){t[d>>2]=f;t[a>>2]=b;a=f;e=t[(t[o>>2]|0)+16>>2]|0;n=t[u>>2]|0;f=t[h>>2]|0;break}Yn(t[d>>2]|0);t[d>>2]=0;t[a>>2]=0;jf(r,1,11398,l)|0;i=0;c=k;return i|0}else{a=e;e=s}}while(0);Kt(e,n,f,a,_);i=(Bf(i,t[d>>2]|0,b,r)|0)==(b|0)&1;c=k;return i|0}function Ut(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0;l=e+164|0;o=e+80|0;n=t[o>>2]|0;f=t[n+16>>2]|0;if(!f){i=1;return i|0}s=e+44|0;e=0;a=t[(t[l>>2]|0)+5584>>2]|0;while(1){if(t[a+808>>2]|0){u=t[(t[l>>2]|0)+5584>>2]|0;h=f>>>0<257?1:2;n=h+6|0;c=t[s>>2]|0;cf(c,65374,2);f=h|4;cf(c+2|0,f,2);cf(c+4|0,e,h);cf(c+f|0,0,1);cf(c+(f+1)|0,t[u+(e*1080|0)+808>>2]|0,1);if((Bf(i,t[s>>2]|0,n,r)|0)!=(n|0)){e=0;f=7;break}n=t[o>>2]|0}e=e+1|0;f=t[n+16>>2]|0;if(e>>>0>=f>>>0){e=1;f=7;break}else a=a+1080|0}if((f|0)==7)return e|0;return 0}function jt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0;u=c;c=c+16|0;a=u;s=t[e+108>>2]|0;l=dl(s)|0;o=l+6|0;f=e+48|0;n=e+44|0;e=t[n>>2]|0;do{if(o>>>0>(t[f>>2]|0)>>>0){e=jn(e,o)|0;if(e){t[n>>2]=e;t[f>>2]=o;break}Yn(t[n>>2]|0);t[n>>2]=0;t[f>>2]=0;jf(r,1,11355,a)|0;i=0;c=u;return i|0}}while(0);cf(e,65380,2);cf(e+2|0,l+4|0,2);cf(e+4|0,1,2);Dl(e+6|0,s|0,l|0)|0;i=(Bf(i,t[n>>2]|0,o,r)|0)==(o|0)&1;c=u;return i|0}function Yt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0;S=c;c=c+32|0;y=S+24|0;v=S+16|0;b=S+8|0;a=S;l=t[e+80>>2]|0;o=l+16|0;s=t[o>>2]|0;u=s+6|0;g=e+48|0;E=e+44|0;n=t[E>>2]|0;do{if(u>>>0>(t[g>>2]|0)>>>0){n=jn(n,u)|0;if(n){t[E>>2]=n;t[g>>2]=u;break}Yn(t[E>>2]|0);t[E>>2]=0;t[g>>2]=0;jf(r,1,11199,a)|0;i=0;c=S;return i|0}}while(0);cf(n,65400,2);cf(n+2|0,s+4|0,2);cf(n+4|0,t[o>>2]|0,2);if(t[o>>2]|0){s=0;a=t[l+24>>2]|0;n=n+6|0;while(1){cf(n,(t[a+24>>2]|0)+-1|t[a+32>>2]<<7,1);s=s+1|0;if(s>>>0>=(t[o>>2]|0)>>>0)break;else{a=a+52|0;n=n+1|0}}}if((Bf(i,t[E>>2]|0,u,r)|0)!=(u|0)){i=0;c=S;return i|0}k=e+200|0;d=t[k>>2]|0;w=e+164|0;h=t[w>>2]|0;a=h+(d*5640|0)+5616|0;e:do{if(t[a>>2]|0){u=0;e=t[h+(d*5640|0)+5612>>2]|0;while(1){s=e+16|0;l=t[s>>2]|0;o=l+10|0;n=t[E>>2]|0;if(o>>>0>(t[g>>2]|0)>>>0){n=jn(n,o)|0;if(!n)break;t[E>>2]=n;t[g>>2]=o}cf(n,65396,2);cf(n+2|0,l+8|0,2);cf(n+4|0,0,2);cf(n+6|0,t[e+4>>2]<<8|t[e+8>>2]&255|t[e>>2]<<10,2);cf(n+8|0,0,2);Dl(n+10|0,t[e+12>>2]|0,t[s>>2]|0)|0;if((Bf(i,t[E>>2]|0,o,r)|0)!=(o|0)){m=0;M=42;break}u=u+1|0;if(u>>>0>=(t[a>>2]|0)>>>0)break e;else e=e+20|0}if((M|0)==42){c=S;return m|0}Yn(t[E>>2]|0);t[E>>2]=0;t[g>>2]=0;jf(r,1,11238,b)|0;i=0;c=S;return i|0}}while(0);b=h+(d*5640|0)+5628|0;e:do{if(t[b>>2]|0){_=0;h=t[h+(d*5640|0)+5624>>2]|0;while(1){u=h+4|0;a=t[u>>2]|0;l=a>>>0>255;o=l?2:1;l=l?32768:0;a=ie(o,a<<1)|0;e=a+19|0;n=t[E>>2]|0;if(e>>>0>(t[g>>2]|0)>>>0){n=jn(n,e)|0;if(!n)break;t[E>>2]=n;t[g>>2]=e}cf(n,65397,2);cf(n+2|0,a+17|0,2);cf(n+4|0,0,2);cf(n+6|0,t[h>>2]|0,1);cf(n+7|0,0,2);cf(n+9|0,1,2);cf(n+11|0,1,1);cf(n+12|0,t[u>>2]|l,2);n=n+14|0;if(!(t[u>>2]|0))a=0;else{s=0;do{cf(n,s,o);n=n+o|0;s=s+1|0;a=t[u>>2]|0}while(s>>>0<a>>>0)}cf(n,a|l,2);n=n+2|0;if(!(t[u>>2]|0))s=n;else{a=0;do{cf(n,a,o);n=n+o|0;a=a+1|0}while(a>>>0<(t[u>>2]|0)>>>0);s=n}n=((f[h+16>>0]^1)&255)<<16&65536;a=t[h+8>>2]|0;if(a)n=t[a+8>>2]|n;a=t[h+12>>2]|0;if(a)n=t[a+8>>2]<<8|n;cf(s,n,3);if((Bf(i,t[E>>2]|0,e,r)|0)!=(e|0)){m=0;M=42;break}_=_+1|0;if(_>>>0>=(t[b>>2]|0)>>>0)break e;else h=h+20|0}if((M|0)==42){c=S;return m|0}Yn(t[E>>2]|0);t[E>>2]=0;t[g>>2]=0;jf(r,1,11277,v)|0;i=0;c=S;return i|0}}while(0);o=t[k>>2]|0;l=t[w>>2]|0;u=l+(o*5640|0)+5628|0;a=t[u>>2]|0;e=a+5|0;n=t[E>>2]|0;do{if(e>>>0>(t[g>>2]|0)>>>0){n=jn(n,e)|0;if(!n){Yn(t[E>>2]|0);t[E>>2]=0;t[g>>2]=0;jf(r,1,11316,y)|0;p=1;break}else{t[E>>2]=n;t[g>>2]=e;A=n;M=37;break}}else{A=n;M=37}}while(0);if((M|0)==37){cf(A,65399,2);cf(A+2|0,a+3|0,2);cf(A+4|0,t[u>>2]|0,1);if(t[u>>2]|0){s=0;a=A+5|0;n=t[l+(o*5640|0)+5624>>2]|0;while(1){cf(a,t[n>>2]|0,1);s=s+1|0;if(s>>>0>=(t[u>>2]|0)>>>0)break;else{a=a+1|0;n=n+20|0}}}p=(Bf(i,t[E>>2]|0,e,r)|0)!=(e|0)}i=p&1^1;c=S;return i|0}function qt(e,i,r){e=e|0;i=i|0;r=r|0;r=Df(i)|0;i=(t[e+196>>2]|0)+8|0;t[i>>2]=r;t[i+4>>2]=I;return 1}function $t(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0;n=c;c=c+16|0;i=Pr(0)|0;f=e+204|0;t[f>>2]=i;if(!i){jf(r,1,11159,n)|0;r=0;c=n;return r|0}if(Lr(i,t[e+80>>2]|0,e+88|0)|0){r=1;c=n;return r|0}Br(t[f>>2]|0);t[f>>2]=0;r=0;c=n;return r|0}function Vt(e,i,r){e=e|0;i=i|0;r=r|0;var a=0,s=0,l=0,u=0,c=0,h=0,d=0.0,b=0,_=0,k=0,w=0,m=0,v=0.0,p=0,g=0,y=0.0,M=0.0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,O=0.0,x=0.0,L=0.0,B=0.0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0;H=e+80|0;C=t[H>>2]|0;U=e+164|0;s=t[U>>2]|0;F=C+24|0;P=t[F>>2]|0;r=t[P>>2]|0;a=t[P+4>>2]|0;N=C+16|0;P=ie(t[P+24>>2]|0,t[N>>2]|0)|0;R=Df(i)|0;k=e+116|0;c=t[k>>2]|0;w=e+112|0;i=t[w>>2]|0;O=(+(R>>>0)+4294967296.0*+(I|0))/+((ie(i,c)|0)>>>0);R=(f[e+181>>0]&8)==0?1:2;if(c){m=e+92|0;p=e+100|0;g=e+96|0;A=e+104|0;E=C+4|0;S=C+8|0;T=C+12|0;M=+((ie(r<<3,a)|0)>>>0);h=i;r=i;_=0;i=s;do{b=_;_=_+1|0;if(!r)r=0;else{h=0;do{y=+go[R&3](i);c=t[i+8>>2]|0;y=y/+(c>>>0);j=t[m>>2]|0;s=t[p>>2]|0;u=(ie(s,h)|0)+j|0;r=t[C>>2]|0;r=(u|0)>(r|0)?u:r;u=t[g>>2]|0;l=t[A>>2]|0;Y=(ie(l,b)|0)+u|0;a=t[E>>2]|0;a=(Y|0)>(a|0)?Y:a;h=h+1|0;j=(ie(s,h)|0)+j|0;s=t[S>>2]|0;s=(j|0)<(s|0)?j:s;u=(ie(l,_)|0)+u|0;l=t[T>>2]|0;l=(u|0)<(l|0)?u:l;u=i+20|0;d=+o[u>>2];if(d!=0.0)o[u>>2]=+((ie(ie(s-r|0,P)|0,l-a|0)|0)>>>0)/(M*d)-y;if(c>>>0>1){d=+((ie(ie(s-r|0,P)|0,l-a|0)|0)>>>0);r=1;a=i+24|0;while(1){v=+o[a>>2];if(v!=0.0)o[a>>2]=d/(M*v)-y;r=r+1|0;if(r>>>0>=c>>>0)break;else a=a+4|0}}i=i+5640|0;r=t[w>>2]|0}while(h>>>0<r>>>0);c=t[k>>2]|0;h=r}}while(_>>>0<c>>>0);if(!c)c=0;else{m=(h|0)==0;v=O+2.0;g=h>>>0>1?h:1;p=0;r=t[U>>2]|0;do{if(!m){_=r+16|0;k=0;w=r;while(1){i=w+20|0;d=+o[i>>2];if(d!=0.0?(M=d-O,o[i>>2]=M,M<30.0):0)o[i>>2]=30.0;l=w+24|0;i=t[w+8>>2]|0;b=i+-1|0;d=+o[l>>2];a=d!=0.0;if(b>>>0>1){u=_+(i<<2)|0;s=1;i=l;do{if(a?(M=d-O,o[i>>2]=M,L=+o[i+-4>>2],M<L+10.0):0)o[i>>2]=L+20.0;i=i+4|0;s=s+1|0;d=+o[i>>2];a=d!=0.0}while((s|0)!=(b|0));if(a){x=d;z=u;D=29}}else if(a){x=d;z=l;D=29}if((D|0)==29?(D=0,M=x-v,o[z>>2]=M,B=+o[z+-4>>2],M<B+10.0):0)o[z>>2]=B+20.0;k=k+1|0;if(k>>>0>=h>>>0)break;else{_=_+5640|0;w=w+5640|0}}r=r+(g*5640|0)|0}p=p+1|0}while(p>>>0<c>>>0)}}else{h=i;c=0}a=t[N>>2]|0;if(!a)p=0;else{s=(t[e+100>>2]|0)+-1|0;l=(t[e+104>>2]|0)+-1|0;u=0;i=t[F>>2]|0;r=0;while(1){Y=t[i>>2]|0;j=t[i+4>>2]|0;Y=ie(((l+j|0)>>>0)/(j>>>0)|0,((s+Y|0)>>>0)/(Y>>>0)|0)|0;r=(ie(Y,t[i+24>>2]|0)|0)+r|0;u=u+1|0;if(u>>>0>=a>>>0)break;else i=i+52|0}p=~~(+(r>>>0)*.1625)>>>0}b=t[(t[H>>2]|0)+16>>2]|0;k=b+-1|0;m=ie(c,h)|0;_=(m|0)==0;if(_)s=0;else{i=0;r=0;a=t[U>>2]|0;while(1){Y=t[a+5588>>2]|0;r=r>>>0>Y>>>0?r:Y;i=i+1|0;if((i|0)==(m|0))break;else a=a+5640|0}s=r*12|0}w=e+88|0;if(((n[w>>1]|0)+-3&65535)>=4){if(_){i=0;r=0}else{h=(b|0)==0;u=0;r=0;do{if(!h){a=t[(t[U>>2]|0)+(u*5640|0)+5584>>2]|0;l=0;do{if(!(t[a+(l*1080|0)>>2]&1))i=5;else i=(t[a+(l*1080|0)+4>>2]|0)+5|0;r=r>>>0>i>>>0?r:i;l=l+1|0}while((l|0)!=(b|0))}u=u+1|0}while((u|0)!=(m|0));c=0;i=0;do{if(!h){l=t[(t[U>>2]|0)+(c*5640|0)+5584>>2]|0;u=0;do{if(!(t[l+(u*1080|0)>>2]&1))a=5;else a=(t[l+(u*1080|0)+4>>2]|0)+5|0;i=i>>>0>a>>>0?i:a;u=u+1|0}while((u|0)!=(b|0))}c=c+1|0}while((c|0)!=(m|0))}s=(ie(r+12+i|0,k)|0)+s|0}if(_)r=13;else{a=0;r=0;i=t[U>>2]|0;while(1){Y=t[i+420>>2]|0;r=r>>>0>Y>>>0?r:Y;a=a+1|0;if((a|0)==(m|0))break;else i=i+5640|0}r=(r*9|0)+13|0}Y=s+p+r|0;t[e+40>>2]=Y;Y=Nn(Y)|0;t[e+36>>2]=Y;if(!Y){Y=0;return Y|0}if(((n[w>>1]|0)+-3&65535)>=4){Y=1;return Y|0}r=Nn((t[e+32>>2]|0)*5|0)|0;t[e+24>>2]=r;if(!r){Y=0;return Y|0}t[e+28>>2]=r;Y=1;return Y|0}function Xt(e){e=e|0;return 0.0}function Gt(e){e=e|0;return+ +((((t[e+5588>>2]|0)*14|0)+-14|0)>>>0)}function Kt(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0;a=t[i+(r*5640|0)+5584>>2]|0;k=(t[i+(r*5640|0)+420>>2]|0)+1|0;o=e>>>0<257?1:2;_=ie(k,(o<<1)+5|0)|0;w=_+4|0;cf(f,65375,2);cf(f+2|0,_+2|0,2);if(!k){t[n>>2]=w;return}u=o+1|0;c=o+3|0;h=o|4;d=h+o|0;b=d+1|0;_=i+(r*5640|0)+8|0;s=a+4|0;l=0;f=f+4|0;a=i+(r*5640|0)+424|0;while(1){cf(f,t[a>>2]|0,1);cf(f+1|0,t[a+4>>2]|0,o);v=a+8|0;cf(f+u|0,t[v>>2]|0,2);i=a+12|0;cf(f+c|0,t[i>>2]|0,1);r=a+16|0;cf(f+h|0,t[r>>2]|0,o);cf(f+d|0,t[a+36>>2]|0,1);p=t[v>>2]|0;m=t[_>>2]|0;t[v>>2]=(p|0)<(m|0)?p:m;v=t[i>>2]|0;m=t[s>>2]|0;t[i>>2]=(v|0)<(m|0)?v:m;i=t[r>>2]|0;t[r>>2]=(i|0)<(e|0)?i:e;l=l+1|0;if((l|0)==(k|0))break;else{f=f+b|0;a=a+148|0}}t[n>>2]=w;return}function Wt(e,i,r,f,n,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;var s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+16|0;o=d+8|0;l=d;u=t[e+(i*5640|0)+5584>>2]|0;i=t[u+(r*1080|0)+24>>2]|0;do{if((i|0)!=1){e=(t[u+(r*1080|0)+4>>2]|0)*3|0;s=e+-2|0;if(!i){e=e+-1|0;if((t[n>>2]|0)>>>0<e>>>0){jf(a,1,11515,l)|0;n=0;c=d;return n|0}else{cf(f,t[u+(r*1080|0)+804>>2]<<5,1);if(!s)break;else i=0;do{f=f+1|0;cf(f,t[u+(r*1080|0)+28+(i<<3)>>2]<<3,1);i=i+1|0}while((i|0)!=(s|0))}}else h=7}else{s=1;i=1;h=7}}while(0);if((h|0)==7){e=s<<1|1;if((t[n>>2]|0)>>>0<e>>>0){jf(a,1,11515,o)|0;n=0;c=d;return n|0}cf(f,(t[u+(r*1080|0)+804>>2]<<5)+i|0,1);if(s){f=f+1|0;i=0;while(1){cf(f,(t[u+(r*1080|0)+28+(i<<3)>>2]<<11)+(t[u+(r*1080|0)+28+(i<<3)+4>>2]|0)|0,2);i=i+1|0;if((i|0)==(s|0))break;else f=f+2|0}}}t[n>>2]=(t[n>>2]|0)-e;n=1;c=d;return n|0}function Zt(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0;l=c;c=c+16|0;a=t[e+(i*5640|0)+5584>>2]|0;if((t[f>>2]|0)>>>0<5){jf(n,1,11587,l)|0;f=0;c=l;return f|0}s=a+4|0;cf(r,(t[s>>2]|0)+-1|0,1);cf(r+1|0,(t[a+8>>2]|0)+-2|0,1);cf(r+2|0,(t[a+12>>2]|0)+-2|0,1);cf(r+3|0,t[a+16>>2]|0,1);cf(r+4|0,t[a+20>>2]|0,1);i=(t[f>>2]|0)+-5|0;t[f>>2]=i;if(!(t[a>>2]&1)){f=1;c=l;return f|0}e=t[s>>2]|0;if(i>>>0<e>>>0){jf(n,1,11587,l+8|0)|0;f=0;c=l;return f|0}if(!e)e=0;else{i=r+5|0;r=0;while(1){cf(i,(t[a+944+(r<<2)>>2]<<4)+(t[a+812+(r<<2)>>2]|0)|0,1);r=r+1|0;e=t[s>>2]|0;if(r>>>0>=e>>>0)break;else i=i+1|0}i=t[f>>2]|0}t[f>>2]=i-e;f=1;c=l;return f|0}function Jt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0,o=0,u=0,c=0,h=0;l=t[e+76>>2]|0;n=t[l+(r*5640|0)+4>>2]|0;s=696;while(1){h=t[s>>2]|0;if((h|0)==-1|(h|0)==(n|0))break;else s=s+12|0}if(!(f[e+93>>0]&8)){e=1;return e|0}h=a[e+92>>0]|0;o=l+(r*5640|0)+424+(i*148|0)+92|0;u=l+(r*5640|0)+424+(i*148|0)+88|0;c=l+(r*5640|0)+424+(i*148|0)+96|0;i=l+(r*5640|0)+424+(i*148|0)+84|0;l=f[s+4>>0]|0;switch(l|0){case 67:{n=t[o>>2]|0;break}case 82:{n=t[u>>2]|0;break}case 80:{n=t[c>>2]|0;break}case 76:{n=t[i>>2]|0;break}default:n=1}if((h|0)!=(l|0)){l=f[s+5>>0]|0;switch(l|0){case 67:{n=ie(t[o>>2]|0,n)|0;break}case 82:{n=ie(t[u>>2]|0,n)|0;break}case 80:{n=ie(t[c>>2]|0,n)|0;break}case 76:{n=ie(t[i>>2]|0,n)|0;break}default:{}}if((h|0)!=(l|0)){l=f[s+6>>0]|0;switch(l|0){case 67:{n=ie(t[o>>2]|0,n)|0;break}case 82:{n=ie(t[u>>2]|0,n)|0;break}case 80:{n=ie(t[c>>2]|0,n)|0;break}case 76:{n=ie(t[i>>2]|0,n)|0;break}default:{}}if((h|0)!=(l|0)){s=f[s+7>>0]|0;switch(s|0){case 67:{n=ie(t[o>>2]|0,n)|0;break}case 82:{n=ie(t[u>>2]|0,n)|0;break}case 80:{n=ie(t[c>>2]|0,n)|0;break}case 76:{n=ie(t[i>>2]|0,n)|0;break}default:{}}if((h|0)==(s|0))s=3;else{e=n;return e|0}}else s=2}else s=1}else s=0;t[e+84>>2]=s;e=n;return e|0}function Qt(e,i,r,l){e=e|0;i=i|0;r=r|0;l=l|0;var o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0;T=i+16|0;if(!(t[T>>2]|0)){T=1;return T|0}S=0;E=t[i+24>>2]|0;while(1){u=l+44|0;o=t[u>>2]|0;c=l+8|0;if(!o){i=l+12|0;o=Fn(ie(t[i>>2]|0,t[c>>2]|0)|0,4)|0;t[u>>2]=o;if(!o){r=0;l=61;break}}else i=l+12|0;k=E+36|0;t[l+36>>2]=t[k>>2];M=t[E+24>>2]|0;v=t[e+24>>2]|0;k=t[k>>2]|0;M=((M&7|0)!=0&1)+(M>>>3)|0;M=(M|0)==3?4:M;d=t[v+(k*136|0)+8>>2]|0;h=t[v+(k*136|0)>>2]|0;g=d-h|0;m=t[v+(k*136|0)+12>>2]|0;k=t[v+(k*136|0)+4>>2]|0;v=m-k|0;u=t[l+16>>2]|0;_=t[l+40>>2]|0;b=Ll(1,0,_|0)|0;y=I;u=Bl(u|0,0,-1,-1)|0;u=Bl(u|0,I|0,b|0,y|0)|0;u=zl(u|0,I|0,_|0)|0;w=Bl(t[l+20>>2]|0,0,-1,-1)|0;y=Bl(w|0,I|0,b|0,y|0)|0;_=zl(y|0,I|0,_|0)|0;y=t[c>>2]|0;c=u+y|0;b=t[i>>2]|0;w=_+b|0;do{if(u>>>0<h>>>0){i=h-u|0;if(d>>>0>c>>>0){A=c-h|0;p=0;h=g-A|0;d=i}else{p=0;h=0;d=i;A=g}}else{i=u-h|0;if(d>>>0>c>>>0){p=i;h=d-c|0;d=0;A=y;break}else{p=i;h=0;d=0;A=g-i|0;break}}}while(0);do{if(_>>>0<k>>>0){c=k-_|0;if(m>>>0>w>>>0){u=w-k|0;b=u;i=0;u=v-u|0}else{b=v;i=0;u=0}}else{i=_-k|0;if(m>>>0>w>>>0){u=m-w|0;c=0;break}else{b=v-i|0;u=0;c=0;break}}}while(0);if((p|h|A|u|i|b|0)<0){r=0;l=61;break}i=(ie(i,g)|0)+p|0;k=p+h|0;w=(ie(u,g)|0)-p|0;_=y-A|0;o=o+((ie(y,c)|0)+d<<2)|0;switch(M|0){case 1:{r=r+i|0;i=(b|0)==0;if(!(t[E+32>>2]|0)){if(!i){h=(A|0)==0;d=0;i=o;while(1){if(!h){c=i+(A<<2)|0;u=0;o=r;while(1){t[i>>2]=a[o>>0];u=u+1|0;if((u|0)==(A|0))break;else{i=i+4|0;o=o+1|0}}i=c;r=r+A|0}r=r+k|0;d=d+1|0;if((d|0)==(b|0))break;else i=i+(_<<2)|0}}}else if(!i){h=(A|0)==0;d=0;i=o;while(1){if(!h){c=i+(A<<2)|0;u=0;o=r;while(1){t[i>>2]=f[o>>0];u=u+1|0;if((u|0)==(A|0))break;else{i=i+4|0;o=o+1|0}}i=c;r=r+A|0}r=r+k|0;d=d+1|0;if((d|0)==(b|0))break;else i=i+(_<<2)|0}}r=r+w|0;break}case 2:{r=r+(i<<1)|0;i=(b|0)==0;if(!(t[E+32>>2]|0)){if(!i){h=(A|0)==0;d=0;i=o;while(1){if(!h){c=i+(A<<2)|0;u=0;o=r;while(1){t[i>>2]=s[o>>1];u=u+1|0;if((u|0)==(A|0))break;else{i=i+4|0;o=o+2|0}}i=c;r=r+(A<<1)|0}r=r+(k<<1)|0;d=d+1|0;if((d|0)==(b|0))break;else i=i+(_<<2)|0}}}else if(!i){h=(A|0)==0;d=0;i=o;while(1){if(!h){c=i+(A<<2)|0;u=0;o=r;while(1){t[i>>2]=n[o>>1];u=u+1|0;if((u|0)==(A|0))break;else{i=i+4|0;o=o+2|0}}i=c;r=r+(A<<1)|0}r=r+(k<<1)|0;d=d+1|0;if((d|0)==(b|0))break;else i=i+(_<<2)|0}}r=r+(w<<1)|0;break}case 4:{r=r+(i<<2)|0;if(b){h=(A|0)==0;d=0;i=o;while(1){if(!h){c=i+(A<<2)|0;u=0;o=r;while(1){t[i>>2]=t[o>>2];u=u+1|0;if((u|0)==(A|0))break;else{i=i+4|0;o=o+4|0}}i=c;r=r+(A<<2)|0}r=r+(k<<2)|0;d=d+1|0;if((d|0)==(b|0))break;else i=i+(_<<2)|0}}r=r+(w<<2)|0;break}default:{}}S=S+1|0;if(S>>>0>=(t[T>>2]|0)>>>0){r=1;l=61;break}else{l=l+52|0;E=E+52|0;e=e+52|0}}if((l|0)==61)return r|0;return 0}function ea(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;E=c;c=c+112|0;M=E+88|0;p=E+80|0;g=E+72|0;v=E+64|0;k=E+56|0;_=E+48|0;h=E+40|0;o=E+32|0;l=E+24|0;s=E+16|0;w=E+100|0;m=E+96|0;y=E+92|0;t[m>>2]=0;A=e+200|0;if((r|0)!=8){jf(n,1,8662,E)|0;jf(n,1,8662,E+8|0)|0;n=0;c=E;return n|0}hf(i,A,2);hf(i+2|0,w,4);hf(i+6|0,y,1);hf(i+7|0,m,1);u=t[A>>2]|0;i=t[e+112>>2]|0;if(u>>>0>=(ie(t[e+116>>2]|0,i)|0)>>>0){t[s>>2]=u;jf(n,1,15258,s)|0;n=0;c=E;return n|0}r=t[e+164>>2]|0;b=(u>>>0)%(i>>>0)|0;d=(u>>>0)/(i>>>0)|0;i=t[w>>2]|0;do{if((i+-1|0)>>>0<13){if((i|0)==12){t[l>>2]=12;jf(n,2,15282,l)|0;i=t[w>>2]|0;break}t[o>>2]=i;jf(n,1,15319,o)|0;n=0;c=E;return n|0}}while(0);if(!i){jf(n,4,15380,h)|0;t[e+72>>2]=1}i=t[m>>2]|0;do{if(!i)i=t[r+(u*5640|0)+5588>>2]|0;else{i=((a[e+76>>0]|0)>>>4&1)+i|0;t[m>>2]=i;s=r+(u*5640|0)+5588|0;l=t[s>>2]|0;r=t[y>>2]|0;if((l+-1|0)>>>0<r>>>0){t[_>>2]=r;t[_+4>>2]=l;jf(n,1,15491,_)|0;t[e+72>>2]=1;n=0;c=E;return n|0}if(r>>>0<i>>>0){t[s>>2]=i;break}t[k>>2]=r;t[k+4>>2]=i;jf(n,1,15590,k)|0;t[e+72>>2]=1;n=0;c=E;return n|0}}while(0);if((i|0)!=0?(i|0)==((t[y>>2]|0)+1|0):0){k=e+76|0;f[k>>0]=f[k>>0]|1}t[e+24>>2]=(t[e+72>>2]|0)==0?(t[w>>2]|0)+-12|0:0;t[e+8>>2]=16;i=t[e+60>>2]|0;if((i|0)==-1){if((b>>>0>=(t[e+28>>2]|0)>>>0?b>>>0<(t[e+36>>2]|0)>>>0:0)?d>>>0>=(t[e+32>>2]|0)>>>0:0)i=(d>>>0>=(t[e+40>>2]|0)>>>0&1)<<2&255;else i=4;w=e+76|0;f[w>>0]=f[w>>0]&-5|i}else{w=e+76|0;f[w>>0]=((t[A>>2]|0)!=(i|0)&1)<<2&255|f[w>>0]&-5}o=e+196|0;i=t[o>>2]|0;if(!i){n=1;c=E;return n|0}l=t[A>>2]|0;i=t[i+40>>2]|0;t[i+(l*40|0)>>2]=l;t[i+(l*40|0)+12>>2]=t[y>>2];r=t[m>>2]|0;if(r){t[i+(l*40|0)+4>>2]=r;t[i+(l*40|0)+8>>2]=t[m>>2];i=t[i+(l*40|0)+16>>2]|0;if(!i){M=Fn(t[m>>2]|0,24)|0;t[(t[(t[o>>2]|0)+40>>2]|0)+((t[A>>2]|0)*40|0)+16>>2]=M;if(M){n=1;c=E;return n|0}jf(n,1,15698,v)|0;n=0;c=E;return n|0}i=jn(i,(t[m>>2]|0)*24|0)|0;r=(t[(t[o>>2]|0)+40>>2]|0)+((t[A>>2]|0)*40|0)+16|0;if(!i){Yn(t[r>>2]|0);t[(t[(t[o>>2]|0)+40>>2]|0)+((t[A>>2]|0)*40|0)+16>>2]=0;jf(n,1,15698,g)|0;n=0;c=E;return n|0}else{t[r>>2]=i;n=1;c=E;return n|0}}if(!(t[i+(l*40|0)+16>>2]|0)){t[i+(l*40|0)+8>>2]=10;g=Fn(10,24)|0;r=t[A>>2]|0;i=t[(t[o>>2]|0)+40>>2]|0;t[i+(r*40|0)+16>>2]=g;if(!g){t[i+(r*40|0)+8>>2]=0;jf(n,1,15698,p)|0;n=0;c=E;return n|0}else l=r}r=t[y>>2]|0;s=i+(l*40|0)+8|0;if(r>>>0<(t[s>>2]|0)>>>0){n=1;c=E;return n|0}r=r+1|0;t[s>>2]=r;i=jn(t[i+(l*40|0)+16>>2]|0,r*24|0)|0;r=(t[(t[o>>2]|0)+40>>2]|0)+((t[A>>2]|0)*40|0)+16|0;if(!i){Yn(t[r>>2]|0);A=t[A>>2]|0;y=t[(t[o>>2]|0)+40>>2]|0;t[y+(A*40|0)+16>>2]=0;t[y+(A*40|0)+8>>2]=0;jf(n,1,15698,M)|0;n=0;c=E;return n|0}else{t[r>>2]=i;n=1;c=E;return n|0}return 0}function ia(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;m=c;c=c+64|0;_=m+48|0;k=m+40|0;o=m+32|0;d=m+56|0;l=m+52|0;t[d>>2]=r;w=e+80|0;u=t[w>>2]|0;b=e+8|0;if((t[b>>2]|0)==16)h=(t[e+164>>2]|0)+((t[e+200>>2]|0)*5640|0)|0;else h=t[e+12>>2]|0;a=h+5636|0;s=f[a>>0]|0;if(s&1){jf(n,1,15025,m)|0;w=0;c=m;return w|0}f[a>>0]=s|1;if(r>>>0<5){jf(n,1,15089,m+8|0)|0;w=0;c=m;return w|0}hf(i,h,1);if((t[h>>2]|0)>>>0>7){jf(n,1,15115,m+16|0)|0;w=0;c=m;return w|0}hf(i+1|0,l,1);l=t[l>>2]|0;a=h+4|0;t[a>>2]=l;if((l|0)>4){jf(n,1,15149,m+24|0)|0;t[a>>2]=-1}a=h+8|0;hf(i+2|0,a,2);a=t[a>>2]|0;if((a+-1|0)>>>0>65534){t[o>>2]=a;jf(n,1,15190,o)|0;w=0;c=m;return w|0}o=t[e+172>>2]|0;t[h+12>>2]=(o|0)==0?a:o;hf(i+4|0,h+16|0,1);o=i+5|0;t[d>>2]=r+-5;l=t[u+16>>2]|0;if(l){i=t[h>>2]&1;a=t[h+5584>>2]|0;s=0;do{t[a+(s*1080|0)>>2]=i;s=s+1|0}while(s>>>0<l>>>0)}if(!(wi(e,0,o,d,n)|0)){jf(n,1,15089,k)|0;w=0;c=m;return w|0}if(t[d>>2]|0){jf(n,1,15089,_)|0;w=0;c=m;return w|0}if((t[b>>2]|0)==16)a=(t[e+164>>2]|0)+((t[e+200>>2]|0)*5640|0)|0;else a=t[e+12>>2]|0;a=t[a+5584>>2]|0;r=a+4|0;s=t[r>>2]|0;h=s<<2;if((t[(t[w>>2]|0)+16>>2]|0)>>>0<=1){w=1;c=m;return w|0}d=a+8|0;b=a+12|0;e=a+16|0;n=a+20|0;_=a+812|0;k=a+944|0;t[a+1084>>2]=s;l=t[d>>2]|0;t[a+1088>>2]=l;i=t[b>>2]|0;t[a+1092>>2]=i;o=t[e>>2]|0;t[a+1096>>2]=o;u=t[n>>2]|0;t[a+1100>>2]=u;Dl(a+1892|0,_|0,h|0)|0;Dl(a+2024|0,k|0,h|0)|0;if((t[(t[w>>2]|0)+16>>2]|0)>>>0<=2){w=1;c=m;return w|0}t[a+2164>>2]=s;t[a+2168>>2]=l;t[a+2172>>2]=i;t[a+2176>>2]=o;t[a+2180>>2]=u;Dl(a+2972|0,_|0,h|0)|0;Dl(a+3104|0,k|0,h|0)|0;if((t[(t[w>>2]|0)+16>>2]|0)>>>0>3)s=3;else{w=1;c=m;return w|0}while(1){l=t[d>>2]|0;i=t[b>>2]|0;o=t[e>>2]|0;u=t[n>>2]|0;t[a+3244>>2]=t[r>>2];t[a+3248>>2]=l;t[a+3252>>2]=i;t[a+3256>>2]=o;t[a+3260>>2]=u;Dl(a+4052|0,_|0,h|0)|0;Dl(a+4184|0,k|0,h|0)|0;s=s+1|0;if(s>>>0>=(t[(t[w>>2]|0)+16>>2]|0)>>>0){a=1;break}else a=a+1080|0}c=m;return a|0}function ra(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0;p=c;c=c+272|0;d=p;m=p+136|0;v=p+8|0;if(!e){v=0;c=p;return v|0}h=e+4|0;if((t[e>>2]|0)==(i|0)?(t[h>>2]|0)==(r|0):0)n=e+8|0;else{t[e>>2]=i;t[h>>2]=r;t[m>>2]=i;t[v>>2]=r;n=e+8|0;t[n>>2]=0;a=0;l=r;o=i;u=0;while(1){w=ie(l,o)|0;o=(o+1|0)/2|0;s=u+1|0;t[m+(s<<2)>>2]=o;l=(l+1|0)/2|0;t[v+(s<<2)>>2]=l;a=a+w|0;if(w>>>0<=1)break;else u=s}t[n>>2]=a;if(!a){n=e+12|0;a=t[n>>2]|0;if(a){Yn(a);t[n>>2]=0}Yn(e);v=0;c=p;return v|0}s=a<<4;l=e+16|0;o=e+12|0;do{if(s>>>0>(t[l>>2]|0)>>>0){a=jn(t[o>>2]|0,s)|0;if(a){t[o>>2]=a;r=t[l>>2]|0;xl(a+r|0,0,s-r|0)|0;t[l>>2]=s;r=t[h>>2]|0;i=t[e>>2]|0;break}jf(f,1,20166,d)|0;n=t[o>>2]|0;if(n){Yn(n);t[o>>2]=0}Yn(e);v=0;c=p;return v|0}}while(0);a=t[o>>2]|0;i=a+((ie(r,i)|0)<<4)|0;if(u){w=0;r=i;do{_=t[v+(w<<2)>>2]|0;e:do{if((_|0)>0){k=t[m+(w<<2)>>2]|0;if((k|0)<=0){s=_+-1|0;l=0;while(1){b=(l&1|0)!=0|(l|0)==(s|0);o=b?r:i+(k<<4)|0;r=b?r:i;l=l+1|0;if((l|0)>=(_|0)){i=o;break e}else i=o}}b=((k+2+((k|0)<2?~k:-3)|0)>>>1)+1|0;f=_+-1|0;d=0;while(1){h=k;o=r;while(1){t[a>>2]=o;s=a+16|0;l=h;h=h+-2|0;if((h|0)>-1){t[s>>2]=o;a=a+32|0}else a=s;if((l|0)<=2)break;else o=o+16|0}r=r+(b<<4)|0;h=(d&1|0)!=0|(d|0)==(f|0);s=h?r:i+(k<<4)|0;r=h?r:i;d=d+1|0;if((d|0)>=(_|0)){i=s;break}else i=s}}}while(0);w=w+1|0}while((w|0)!=(u|0))}t[a>>2]=0}n=t[n>>2]|0;if(!n){v=e;c=p;return v|0}a=0;i=t[e+12>>2]|0;while(1){t[i+4>>2]=999;t[i+8>>2]=0;t[i+12>>2]=0;a=a+1|0;if((a|0)==(n|0))break;else i=i+16|0}c=p;return e|0}function fa(e){e=e|0;var i=0,r=0;if(!e)return;i=e+12|0;r=t[i>>2]|0;if(r){Yn(r);t[i>>2]=0}Yn(e);return}function na(e,i,r){e=e|0;i=i|0;r=r|0;i=(t[e+12>>2]|0)+(i<<4)|0;if(!i)return;while(1){e=i+4|0;if((t[e>>2]|0)<=(r|0)){i=4;break}t[e>>2]=r;i=t[i>>2]|0;if(!i){i=4;break}}if((i|0)==4)return}function ta(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0;o=c;c=c+128|0;l=o;r=(t[i+12>>2]|0)+(r<<4)|0;if(!(t[r>>2]|0)){n=0;a=l}else{n=r;i=l;while(1){a=i+4|0;t[i>>2]=r;r=t[n>>2]|0;if(!(t[r>>2]|0)){n=0;break}else{n=r;i=a}}}while(1){s=r+8|0;i=t[s>>2]|0;if((n|0)>(i|0)){t[s>>2]=n;i=n}e:do{if((i|0)<(f|0)){n=r+4|0;while(1){if((i|0)>=(t[n>>2]|0))break;ma(e,0,1);i=i+1|0;if((i|0)>=(f|0)){r=i;break e}}r=r+12|0;if(!(t[r>>2]|0)){ma(e,1,1);t[r>>2]=1;r=i}else r=i}else r=i}while(0);t[s>>2]=r;if((a|0)==(l|0))break;s=a+-4|0;n=r;r=t[s>>2]|0;a=s}c=o;return}function aa(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0;o=c;c=c+128|0;l=o;r=(t[i+12>>2]|0)+(r<<4)|0;if(!(t[r>>2]|0)){i=0;a=l}else{n=r;i=l;while(1){a=i+4|0;t[i>>2]=r;r=t[n>>2]|0;if(!(t[r>>2]|0)){i=0;break}else{n=r;i=a}}}while(1){s=r+8|0;n=t[s>>2]|0;if((i|0)>(n|0))t[s>>2]=i;else i=n;r=r+4|0;e:do{if((i|0)<(f|0)){while(1){if((i|0)>=(t[r>>2]|0))break e;if(va(e,1)|0)break;i=i+1|0;if((i|0)>=(f|0))break e}t[r>>2]=i}}while(0);t[s>>2]=i;if((a|0)==(l|0))break;s=a+-4|0;r=t[s>>2]|0;a=s}c=o;return(t[r>>2]|0)<(f|0)|0}function sa(){var e=0,i=0;e=Fn(1,12)|0;if(!e){e=0;return e|0}t[e+4>>2]=10;i=Fn(10,4)|0;t[e+8>>2]=i;if(i){i=e;return i|0}Yn(e);i=0;return i|0}function la(e){e=e|0;var i=0;if(!e)return;i=t[e+8>>2]|0;if(i)Yn(i);Yn(e);return}function oa(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0;l=c;c=c+16|0;s=l;a=e+4|0;n=t[a>>2]|0;f=t[e>>2]|0;do{if((n|0)==(f|0)){n=n+10|0;t[a>>2]=n;f=e+8|0;n=jn(t[f>>2]|0,n<<2)|0;if(n){t[f>>2]=n;f=t[e>>2]|0;break}Yn(t[f>>2]|0);t[a>>2]=0;t[e>>2]=0;jf(r,1,20214,s)|0;e=0;c=l;return e|0}else n=t[e+8>>2]|0}while(0);t[n+(f<<2)>>2]=i;t[e>>2]=f+1;e=1;c=l;return e|0}function ua(e){e=e|0;return t[e>>2]|0}function ca(e){e=e|0;return t[e+8>>2]|0}function ha(e){e=e|0;t[e>>2]=0;return}function da(){return Nn(20)|0}function ba(e){e=e|0;if(!e)return;Yn(e);return}function _a(e){e=e|0;return(t[e+8>>2]|0)-(t[e>>2]|0)|0}function ka(e,i,r){e=e|0;i=i|0;r=r|0;t[e>>2]=i;t[e+4>>2]=i+r;t[e+8>>2]=i;t[e+12>>2]=0;t[e+16>>2]=8;return}function wa(e,i,r){e=e|0;i=i|0;r=r|0;t[e>>2]=i;t[e+4>>2]=i+r;t[e+8>>2]=i;t[e+12>>2]=0;t[e+16>>2]=0;return}function ma(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0;if(!r)return;u=e+16|0;c=e+12|0;h=e+8|0;s=e+4|0;e=t[u>>2]|0;o=r+-1|0;do{l=i>>>o&1;if(!e){a=t[c>>2]|0;e=a<<8&65280;t[c>>2]=e;e=(e|0)==65280?7:8;t[u>>2]=e;n=t[h>>2]|0;if(n>>>0<(t[s>>2]|0)>>>0){t[h>>2]=n+1;f[n>>0]=a;e=t[u>>2]|0}}e=e+-1|0;t[u>>2]=e;t[c>>2]=l<<e|t[c>>2];o=o+-1|0}while(o>>>0<r>>>0);return}function va(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,s=0,l=0,o=0,u=0,c=0;if(!i){i=0;return i|0}o=e+16|0;u=e+12|0;c=e+8|0;s=e+4|0;r=t[o>>2]|0;f=t[u>>2]|0;l=i+-1|0;e=0;do{if(!r){n=f<<8&65280;t[u>>2]=n;r=(n|0)==65280?7:8;t[o>>2]=r;f=t[c>>2]|0;if(f>>>0<(t[s>>2]|0)>>>0){t[c>>2]=f+1;f=a[f>>0]|0|n;t[u>>2]=f}else f=n}r=r+-1|0;t[o>>2]=r;e=((f>>>r&1)<<l)+e|0;l=l+-1|0}while(l>>>0<i>>>0);return e|0}function pa(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0;n=e+12|0;i=t[n>>2]|0;l=i<<8&65280;t[n>>2]=l;a=e+16|0;t[a>>2]=(l|0)==65280?7:8;l=e+8|0;r=t[l>>2]|0;s=e+4|0;if(r>>>0>=(t[s>>2]|0)>>>0){l=0;return l|0}t[l>>2]=r+1;f[r>>0]=i;if((t[a>>2]|0)!=7){l=1;return l|0}i=t[n>>2]|0;e=i<<8&65280;t[n>>2]=e;t[a>>2]=(e|0)==65280?7:8;e=t[l>>2]|0;if(e>>>0>=(t[s>>2]|0)>>>0){l=0;return l|0}t[l>>2]=e+1;f[e>>0]=i;l=1;return l|0}function ga(e){e=e|0;var i=0,r=0,f=0,n=0,s=0;s=e+12|0;i=t[s>>2]|0;do{if((i&255|0)==255){f=i<<8&65280;t[s>>2]=f;i=e+16|0;t[i>>2]=(f|0)==65280?7:8;n=e+8|0;r=t[n>>2]|0;if(r>>>0<(t[e+4>>2]|0)>>>0){t[n>>2]=r+1;t[s>>2]=a[r>>0]|0|f;break}else{e=0;return e|0}}else i=e+16|0}while(0);t[i>>2]=0;e=1;return e|0}function ya(e){e=e|0;return Oa(e,1)|0}function Ma(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0;C=c;c=c+32|0;T=C+16|0;R=C;o=t[e+24>>2]|0;l=(t[o+8>>2]|0)-(t[o>>2]|0)|0;s=(t[o+12>>2]|0)-(t[o+4>>2]|0)|0;S=(t[e+8>>2]|0)-(t[e>>2]|0)|0;if((i|0)==1){R=1;c=C;return R|0}a=i+-1|0;n=(a|0)==0;if(n)i=0;else{r=o;f=a;i=0;do{E=r;r=r+136|0;A=(t[E+144>>2]|0)-(t[r>>2]|0)|0;i=i>>>0<A>>>0?A:i;E=(t[E+148>>2]|0)-(t[E+140>>2]|0)|0;i=i>>>0<E>>>0?E:i;f=f+-1|0}while((f|0)!=0);i=i<<2}E=Hn(i)|0;t[T>>2]=E;if(!E){R=0;c=C;return R|0}t[R>>2]=E;if(!n){m=e+32|0;v=T+8|0;p=R+8|0;g=T+4|0;y=T+12|0;M=R+4|0;A=R+12|0;do{k=t[m>>2]|0;d=o;o=o+136|0;t[v>>2]=l;t[p>>2]=s;b=t[d+144>>2]|0;_=t[o>>2]|0;f=l;l=b-_|0;i=t[d+148>>2]|0;d=d+140|0;w=t[d>>2]|0;r=s;s=i-w|0;t[g>>2]=l-f;t[y>>2]=(_|0)%2|0;w=(i|0)==(w|0);if(!w){h=l<<2;i=0;while(1){e=ie(i,S)|0;u=k+(e<<2)|0;if(f){r=u;n=E+(t[y>>2]<<2)|0;while(1){f=f+-1|0;t[n>>2]=t[r>>2];if(!f)break;else{r=r+4|0;n=n+8|0}}}r=t[g>>2]|0;if(r){f=k+((t[v>>2]|0)+e<<2)|0;n=E+(1-(t[y>>2]|0)<<2)|0;while(1){r=r+-1|0;t[n>>2]=t[f>>2];if(!r)break;else{f=f+4|0;n=n+8|0}}}xa(T);Dl(u|0,E|0,h|0)|0;i=i+1|0;if((i|0)==(s|0))break;f=t[v>>2]|0}r=t[p>>2]|0;i=t[d>>2]|0}t[M>>2]=s-r;t[A>>2]=(i|0)%2|0;e:do{if((b|0)!=(_|0)){i=0;while(1){if(r){f=k+(i<<2)|0;n=E+(t[A>>2]<<2)|0;while(1){r=r+-1|0;t[n>>2]=t[f>>2];if(!r)break;else{f=f+(S<<2)|0;n=n+8|0}}}r=t[M>>2]|0;if(r){f=k+((ie(t[p>>2]|0,S)|0)+i<<2)|0;n=E+(1-(t[A>>2]|0)<<2)|0;while(1){r=r+-1|0;t[n>>2]=t[f>>2];if(!r)break;else{f=f+(S<<2)|0;n=n+8|0}}}xa(R);if(!w){r=0;do{t[k+((ie(r,S)|0)+i<<2)>>2]=t[E+(r<<2)>>2];r=r+1|0}while((r|0)!=(s|0))}i=i+1|0;if((i|0)==(l|0))break e;r=t[p>>2]|0}}}while(0);a=a+-1|0}while((a|0)!=0)}Un(E);R=1;c=C;return R|0}function Aa(e){e=e|0;if(!e){e=0;return e|0}e=(e+-1|0)>>>0<2?1:2;return e|0}function Ea(e,i){e=e|0;i=i|0;return+ +u[56+(i*80|0)+(e<<3)>>3]}function Sa(e){e=e|0;return Oa(e,2)|0}function Ta(e){e=e|0;return 0}function Ra(e,i){e=e|0;i=i|0;return+ +u[376+(i*80|0)+(e<<3)>>3]}function Ca(e,i){e=e|0;i=i|0;var r=0.0,f=0,n=0,a=0,s=0,l=0,o=0,c=0,h=0,d=0,b=0;o=e+4|0;c=((t[o>>2]|0)*3|0)+-2|0;if(!c)return;h=e+20|0;d=e+24|0;b=0;do{if(!b){f=0;n=0}else{n=b+-1|0;f=((n>>>0)/3|0)+1|0;n=((n>>>0)%3|0)+1|0}if((n|0)==0|(t[h>>2]|0)==0)a=0;else a=(n+-1|0)>>>0<2?1:2;if(!(t[d>>2]|0))r=1.0;else r=+(1<<a|0)/+u[376+(n*80|0)+((t[o>>2]|0)+~f<<3)>>3];l=~~+U(+(r*8192.0));s=a+i|0;if((l|0)>1){f=l;n=0;while(1){f=f>>1;if((f|0)<=1)break;else n=n+1|0}a=l;f=0;do{a=a>>1;f=f+1|0}while((a|0)>1);n=n+-12|0}else{n=-13;f=0}a=11-f|0;t[e+28+(b<<3)+4>>2]=((a|0)<0?l>>0-a:l<<a)&2047;t[e+28+(b<<3)>>2]=s-n;b=b+1|0}while((b|0)!=(c|0));return}function Pa(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0;$=c;c=c+32|0;j=$+16|0;Y=$;h=t[e+24>>2]|0;d=t[h+8>>2]|0;b=t[h>>2]|0;o=t[h+12>>2]|0;u=t[h+4>>2]|0;U=e+8|0;s=t[U>>2]|0;l=t[e>>2]|0;H=s-l|0;a=i+-1|0;n=(a|0)==0;if(n)i=80;else{r=h;f=a;i=0;do{F=r;r=r+136|0;N=(t[F+144>>2]|0)-(t[r>>2]|0)|0;i=i>>>0<N>>>0?N:i;F=(t[F+148>>2]|0)-(t[F+140>>2]|0)|0;i=i>>>0<F>>>0?F:i;f=f+-1|0}while((f|0)!=0);i=(i<<4)+80|0}F=Hn(i)|0;t[j>>2]=F;if(!F){q=0;c=$;return q|0}t[Y>>2]=F;e:do{if(!n){A=e+32|0;E=e+12|0;S=e+4|0;T=j+8|0;R=Y+8|0;C=j+4|0;P=j+12|0;I=Y+4|0;O=Y+12|0;x=H<<1;L=H<<2;B=H*3|0;D=l<<2;N=s<<2;z=D-N|0;D=N-D|0;N=s-l<<2;i=a;r=F;a=s;f=l;w=o-u|0;n=h;s=d-b|0;while(1){m=t[A>>2]|0;f=ie((t[E>>2]|0)-(t[S>>2]|0)|0,a-f|0)|0;t[T>>2]=s;t[R>>2]=w;y=n+136|0;_=t[n+144>>2]|0;k=t[y>>2]|0;M=_-k|0;p=t[n+148>>2]|0;d=n+140|0;v=t[d>>2]|0;g=p-v|0;t[C>>2]=M-s;t[P>>2]=(k|0)%2|0;if((g|0)>3){a=(M|0)>0;s=(p+-4-v|0)>>>2;h=ie(z,s)|0;s=m+(D+(ie(N,s)|0)<<2)|0;l=m;o=f;u=g;while(1){Ba(j,l,H,o);za(j);if(a){n=M;do{b=n;n=n+-1|0;t[l+(n<<2)>>2]=t[F+(n<<4)>>2];t[l+(n+H<<2)>>2]=t[F+(n<<4)+4>>2];t[l+(n+x<<2)>>2]=t[F+(n<<4)+8>>2];t[l+(n+B<<2)>>2]=t[F+(n<<4)+12>>2]}while((b|0)>1)}u=u+-4|0;if((u|0)<=3)break;else{l=l+(L<<2)|0;o=o-L|0}}f=z+f+h|0}else s=m;a=g&3;i:do{if(!a)q=21;else{Ba(j,s,H,f);za(j);if((M|0)>0)f=M;else{o=g-w|0;t[I>>2]=o;a=(t[d>>2]|0)%2|0;t[O>>2]=a;u=w;l=m;break}while(1){n=f;f=f+-1|0;switch(a|0){case 3:{t[s+(f+x<<2)>>2]=t[F+(f<<4)+8>>2];q=18;break}case 2:{q=18;break}case 1:{q=19;break}default:{}}if((q|0)==18){t[s+(f+H<<2)>>2]=t[F+(f<<4)+4>>2];q=19}if((q|0)==19){q=0;t[s+(f<<2)>>2]=t[F+(f<<4)>>2]}if((n|0)<=1){q=21;break i}}}}while(0);if((q|0)==21){q=0;o=g-w|0;t[I>>2]=o;a=(t[d>>2]|0)%2|0;t[O>>2]=a;if((M|0)>3){b=(p|0)==(v|0);_=_+-4-k|0;d=t[R>>2]|0;u=(d|0)>0;l=1-a|0;h=(o|0)>0;n=m;s=M;while(1){if(u){f=0;do{w=r+((f<<1)+a<<4)|0;k=n+((ie(f,H)|0)<<2)|0;t[w>>2]=t[k>>2];t[w+4>>2]=t[k+4>>2];t[w+8>>2]=t[k+8>>2];t[w+12>>2]=t[k+12>>2];f=f+1|0}while((f|0)!=(d|0))}if(h){f=0;do{w=r+(l+(f<<1)<<4)|0;k=n+((ie(f+d|0,H)|0)<<2)|0;t[w>>2]=t[k>>2];t[w+4>>2]=t[k+4>>2];t[w+8>>2]=t[k+8>>2];t[w+12>>2]=t[k+12>>2];f=f+1|0}while((f|0)!=(o|0))}za(Y);if(!b){r=t[Y>>2]|0;f=0;do{w=n+((ie(f,H)|0)<<2)|0;k=r+(f<<4)|0;t[w>>2]=t[k>>2];t[w+4>>2]=t[k+4>>2];t[w+8>>2]=t[k+8>>2];t[w+12>>2]=t[k+12>>2];f=f+1|0}while((f|0)!=(g|0))}s=s+-4|0;if((s|0)<=3)break;else n=n+16|0}u=d;l=m+((_+4&-4)<<2)|0}else{u=w;l=m}}s=M&3;if(s){r=t[Y>>2]|0;if((u|0)>0){f=s<<2;n=0;do{Dl(r+((n<<1)+a<<4)|0,l+((ie(n,H)|0)<<2)|0,f|0)|0;n=n+1|0}while((n|0)!=(u|0))}f=1-a|0;if((o|0)>0){n=s<<2;a=0;do{Dl(r+(f+(a<<1)<<4)|0,l+((ie(a+u|0,H)|0)<<2)|0,n|0)|0;a=a+1|0}while((a|0)!=(o|0))}za(Y);if((p|0)!=(v|0)){f=s<<2;n=0;do{Dl(l+((ie(n,H)|0)<<2)|0,r+(n<<4)|0,f|0)|0;n=n+1|0}while((n|0)!=(g|0))}}i=i+-1|0;if(!i)break e;a=t[U>>2]|0;f=t[e>>2]|0;w=g;n=y;s=M}}}while(0);Un(F);q=1;c=$;return q|0}function Ia(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0;if(!f){f=(i|0)>0;if(!(f|(r|0)>1))return;if(f){f=e+((r<<1)+-2<<2)|0;n=0;do{o=n;n=n+1|0;u=e+((o<<1|1)<<2)|0;t[u>>2]=(t[u>>2]|0)-((t[((n|0)<(r|0)?e+(n<<1<<2)|0:f)>>2]|0)+(t[((o|0)<(r|0)?e+(o<<1<<2)|0:f)>>2]|0)>>1)}while((n|0)!=(i|0))}if((r|0)<=0)return;n=e+4|0;a=(i<<1)+-1|0;s=0;do{if((s|0)<1)f=n;else f=e+((((s|0)>(i|0)?i:s)<<1)+-1<<2)|0;u=e+(s<<1<<2)|0;t[u>>2]=((t[f>>2]|0)+2+(t[e+(((s|0)<(i|0)?s<<1|1:a)<<2)>>2]|0)>>2)+(t[u>>2]|0);s=s+1|0}while((s|0)!=(r|0));return}if((i|0)==1&(r|0)==0){t[e>>2]=t[e>>2]<<1;return}if((i|0)>0){n=e+4|0;a=(r<<1)+-1|0;s=e+(a<<2)|0;u=0;do{l=u<<1;o=t[e+(((u|0)<(r|0)?l|1:a)<<2)>>2]|0;if((u|0)>=1)if((u|0)>(r|0))f=s;else f=e+(l+-1<<2)|0;else f=n;l=e+(l<<2)|0;t[l>>2]=(t[l>>2]|0)-((t[f>>2]|0)+o>>1);u=u+1|0}while((u|0)!=(i|0))}if((r|0)<=0)return;f=e+((i<<1)+-2<<2)|0;n=0;do{o=n;n=n+1|0;u=e+((o<<1|1)<<2)|0;t[u>>2]=((t[((o|0)<(i|0)?e+(o<<1<<2)|0:f)>>2]|0)+2+(t[((n|0)<(i|0)?e+(n<<1<<2)|0:f)>>2]|0)>>2)+(t[u>>2]|0)}while((n|0)!=(r|0));return}function Oa(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0;y=(t[e+8>>2]|0)-(t[e>>2]|0)|0;a=t[e+16>>2]|0;l=a+-1|0;M=t[e+32>>2]|0;s=t[e+24>>2]|0;n=(l|0)==0;if(n)e=0;else{r=s;f=l;e=0;do{g=r;r=r+136|0;p=(t[g+144>>2]|0)-(t[r>>2]|0)|0;e=e>>>0<p>>>0?p:e;g=(t[g+148>>2]|0)-(t[g+140>>2]|0)|0;e=e>>>0<g>>>0?g:e;f=f+-1|0}while((f|0)!=0);e=e<<2}g=Nn(e)|0;if(!((e|0)==0|(g|0)!=0)){i=0;return i|0}if(!n){v=a+-2|0;p=v;e=s+(l*136|0)|0;v=s+(v*136|0)|0;while(1){k=t[e>>2]|0;m=(t[e+8>>2]|0)-k|0;h=t[e+4>>2]|0;b=(t[e+12>>2]|0)-h|0;_=(t[v+8>>2]|0)-(t[v>>2]|0)|0;e=t[v+12>>2]|0;r=t[v+4>>2]|0;c=e-r|0;k=k&1;h=h&1;d=b-c|0;w=(m|0)>0;e:do{if(w){n=(e|0)==(r|0);l=(b|0)==(c|0);o=g+((h^1)<<2)|0;u=ie(c,y)|0;s=g+(h<<2)|0;if((b|0)>0){a=0;while(1){r=M+(a<<2)|0;e=0;do{t[g+(e<<2)>>2]=t[M+((ie(e,y)|0)+a<<2)>>2];e=e+1|0}while((e|0)!=(b|0));Io[i&3](g,d,c,h);if(!n){f=c;e=s;while(1){f=f+-1|0;t[r>>2]=t[e>>2];if(!f)break;else{r=r+(y<<2)|0;e=e+8|0}}}if(!l){e=d;r=M+(a+u<<2)|0;f=o;while(1){e=e+-1|0;t[r>>2]=t[f>>2];if(!e)break;else{r=r+(y<<2)|0;f=f+8|0}}}a=a+1|0;if((a|0)==(m|0))break e}}if(n){r=0;while(1){Io[i&3](g,d,c,h);if(!l){e=d;f=M+(r+u<<2)|0;n=o;while(1){e=e+-1|0;t[f>>2]=t[n>>2];if(!e)break;else{f=f+(y<<2)|0;n=n+8|0}}}r=r+1|0;if((r|0)==(m|0))break e}}else n=0;do{Io[i&3](g,d,c,h);e=c;r=M+(n<<2)|0;f=s;while(1){e=e+-1|0;t[r>>2]=t[f>>2];if(!e)break;else{r=r+(y<<2)|0;f=f+8|0}}if(!l){e=d;r=M+(n+u<<2)|0;f=o;while(1){e=e+-1|0;t[r>>2]=t[f>>2];if(!e)break;else{r=r+(y<<2)|0;f=f+8|0}}}n=n+1|0}while((n|0)!=(m|0))}}while(0);a=m-_|0;if((b|0)>0){s=(_|0)>0;l=g+(k<<2)|0;o=(a|0)>0;u=g+((k^1)<<2)|0;c=0;do{n=ie(c,y)|0;r=M+(n<<2)|0;if(w){e=0;do{t[g+(e<<2)>>2]=t[M+(e+n<<2)>>2];e=e+1|0}while((e|0)!=(m|0))}Io[i&3](g,a,_,k);if(s){f=0;e=l;while(1){t[r>>2]=t[e>>2];f=f+1|0;if((f|0)==(_|0))break;else{r=r+4|0;e=e+8|0}}}if(o){f=0;e=M+(n+_<<2)|0;r=u;while(1){t[e>>2]=t[r>>2];f=f+1|0;if((f|0)==(a|0))break;else{e=e+4|0;r=r+8|0}}}c=c+1|0}while((c|0)!=(b|0))}if(!p)break;else{e=v;p=p+-1|0;v=v+-136|0}}}Yn(g);i=1;return i|0}function xa(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0;l=t[e>>2]|0;o=t[e+4>>2]|0;u=t[e+8>>2]|0;if(!(t[e+12>>2]|0)){f=(o|0)>0;if(!(f|(u|0)>1))return;if((u|0)>0){i=l+4|0;r=(o<<1)+-1|0;n=0;do{if((n|0)<1)e=i;else e=l+((((n|0)>(o|0)?o:n)<<1)+-1<<2)|0;a=n<<1;s=l+(a<<2)|0;t[s>>2]=(t[s>>2]|0)-((t[e>>2]|0)+2+(t[l+(((n|0)<(o|0)?a|1:r)<<2)>>2]|0)>>2);n=n+1|0}while((n|0)!=(u|0))}if(!f)return;e=l+((u<<1)+-2<<2)|0;i=0;do{a=i<<1;n=i;i=i+1|0;s=l+((a|1)<<2)|0;t[s>>2]=((t[((i|0)<(u|0)?l+(i<<1<<2)|0:e)>>2]|0)+(t[((n|0)<(u|0)?l+(a<<2)|0:e)>>2]|0)>>1)+(t[s>>2]|0)}while((i|0)!=(o|0));return}if((o|0)==1&(u|0)==0){t[l>>2]=(t[l>>2]|0)/2|0;return}if((u|0)>0){e=l+((o<<1)+-2<<2)|0;i=0;do{a=i<<1;n=i;i=i+1|0;s=l+((a|1)<<2)|0;t[s>>2]=(t[s>>2]|0)-((t[((n|0)<(o|0)?l+(a<<2)|0:e)>>2]|0)+2+(t[((i|0)<(o|0)?l+(i<<1<<2)|0:e)>>2]|0)>>2)}while((i|0)!=(u|0))}if((o|0)<=0)return;i=l+4|0;r=(u<<1)+-1|0;f=l+(r<<2)|0;s=0;do{n=s<<1;a=t[l+(((s|0)<(u|0)?n|1:r)<<2)>>2]|0;if((s|0)>=1)if((s|0)>(u|0))e=f;else e=l+(n+-1<<2)|0;else e=i;n=l+(n<<2)|0;t[n>>2]=((t[e>>2]|0)+a>>1)+(t[n>>2]|0);s=s+1|0}while((s|0)!=(o|0));return}function La(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0;if(!f){o=(i|0)>0;if(!(o|(r|0)>1))return;if(o){f=e+((r<<1)+-2<<2)|0;n=0;do{h=n;n=n+1|0;c=(t[((n|0)<(r|0)?e+(n<<1<<2)|0:f)>>2]|0)+(t[((h|0)<(r|0)?e+(h<<1<<2)|0:f)>>2]|0)|0;c=jl(c|0,((c|0)<0)<<31>>31|0,12993,0)|0;c=Bl(c|0,I|0,4096,0)|0;c=zl(c|0,I|0,13)|0;h=e+((h<<1|1)<<2)|0;t[h>>2]=(t[h>>2]|0)-c}while((n|0)!=(i|0))}l=(r|0)>0;if(l){n=e+4|0;a=(i<<1)+-1|0;s=0;do{if((s|0)<1)f=n;else f=e+((((s|0)>(i|0)?i:s)<<1)+-1<<2)|0;c=(t[e+(((s|0)<(i|0)?s<<1|1:a)<<2)>>2]|0)+(t[f>>2]|0)|0;c=jl(c|0,((c|0)<0)<<31>>31|0,434,0)|0;c=Bl(c|0,I|0,4096,0)|0;c=zl(c|0,I|0,13)|0;h=e+(s<<1<<2)|0;t[h>>2]=(t[h>>2]|0)-c;s=s+1|0}while((s|0)!=(r|0))}if(o){f=e+((r<<1)+-2<<2)|0;n=0;do{h=n;n=n+1|0;c=(t[((n|0)<(r|0)?e+(n<<1<<2)|0:f)>>2]|0)+(t[((h|0)<(r|0)?e+(h<<1<<2)|0:f)>>2]|0)|0;c=jl(c|0,((c|0)<0)<<31>>31|0,7233,0)|0;c=Bl(c|0,I|0,4096,0)|0;c=zl(c|0,I|0,13)|0;h=e+((h<<1|1)<<2)|0;t[h>>2]=c+(t[h>>2]|0)}while((n|0)!=(i|0))}if(l){n=e+4|0;a=(i<<1)+-1|0;s=0;do{if((s|0)<1)f=n;else f=e+((((s|0)>(i|0)?i:s)<<1)+-1<<2)|0;c=(t[e+(((s|0)<(i|0)?s<<1|1:a)<<2)>>2]|0)+(t[f>>2]|0)|0;c=jl(c|0,((c|0)<0)<<31>>31|0,3633,0)|0;c=Bl(c|0,I|0,4096,0)|0;c=zl(c|0,I|0,13)|0;h=e+(s<<1<<2)|0;t[h>>2]=c+(t[h>>2]|0);s=s+1|0}while((s|0)!=(r|0))}if(o){f=0;do{h=e+((f<<1|1)<<2)|0;c=t[h>>2]|0;c=jl(c|0,((c|0)<0)<<31>>31|0,5038,0)|0;c=Bl(c|0,I|0,4096,0)|0;c=zl(c|0,I|0,13)|0;t[h>>2]=c;f=f+1|0}while((f|0)!=(i|0))}if(l)f=0;else return;do{i=e+(f<<1<<2)|0;h=t[i>>2]|0;h=jl(h|0,((h|0)<0)<<31>>31|0,6659,0)|0;h=Bl(h|0,I|0,4096,0)|0;h=zl(h|0,I|0,13)|0;t[i>>2]=h;f=f+1|0}while((f|0)!=(r|0));return}h=(r|0)>0;if(!((i|0)>1|h))return;c=(i|0)>0;if(c){n=e+4|0;a=(r<<1)+-1|0;s=e+(a<<2)|0;u=0;do{l=u<<1;o=t[e+(((u|0)<(r|0)?l|1:a)<<2)>>2]|0;if((u|0)>=1)if((u|0)>(r|0))f=s;else f=e+(l+-1<<2)|0;else f=n;f=(t[f>>2]|0)+o|0;f=jl(f|0,((f|0)<0)<<31>>31|0,12993,0)|0;f=Bl(f|0,I|0,4096,0)|0;f=zl(f|0,I|0,13)|0;o=e+(l<<2)|0;t[o>>2]=(t[o>>2]|0)-f;u=u+1|0}while((u|0)!=(i|0))}if(h){f=e+((i<<1)+-2<<2)|0;n=0;do{u=n;n=n+1|0;o=(t[((n|0)<(i|0)?e+(n<<1<<2)|0:f)>>2]|0)+(t[((u|0)<(i|0)?e+(u<<1<<2)|0:f)>>2]|0)|0;o=jl(o|0,((o|0)<0)<<31>>31|0,434,0)|0;o=Bl(o|0,I|0,4096,0)|0;o=zl(o|0,I|0,13)|0;u=e+((u<<1|1)<<2)|0;t[u>>2]=(t[u>>2]|0)-o}while((n|0)!=(r|0))}if(c){n=e+4|0;a=(r<<1)+-1|0;s=e+(a<<2)|0;u=0;do{l=u<<1;o=t[e+(((u|0)<(r|0)?l|1:a)<<2)>>2]|0;if((u|0)>=1)if((u|0)>(r|0))f=s;else f=e+(l+-1<<2)|0;else f=n;f=(t[f>>2]|0)+o|0;f=jl(f|0,((f|0)<0)<<31>>31|0,7233,0)|0;f=Bl(f|0,I|0,4096,0)|0;f=zl(f|0,I|0,13)|0;o=e+(l<<2)|0;t[o>>2]=f+(t[o>>2]|0);u=u+1|0}while((u|0)!=(i|0))}if(h){f=e+((i<<1)+-2<<2)|0;n=0;do{u=n;n=n+1|0;o=(t[((n|0)<(i|0)?e+(n<<1<<2)|0:f)>>2]|0)+(t[((u|0)<(i|0)?e+(u<<1<<2)|0:f)>>2]|0)|0;o=jl(o|0,((o|0)<0)<<31>>31|0,3633,0)|0;o=Bl(o|0,I|0,4096,0)|0;o=zl(o|0,I|0,13)|0;u=e+((u<<1|1)<<2)|0;t[u>>2]=o+(t[u>>2]|0)}while((n|0)!=(r|0))}if(c){f=0;do{c=e+(f<<1<<2)|0;u=t[c>>2]|0;u=jl(u|0,((u|0)<0)<<31>>31|0,5038,0)|0;u=Bl(u|0,I|0,4096,0)|0;u=zl(u|0,I|0,13)|0;t[c>>2]=u;f=f+1|0}while((f|0)!=(i|0))}if(h)f=0;else return;do{i=e+((f<<1|1)<<2)|0;h=t[i>>2]|0;h=jl(h|0,((h|0)<0)<<31>>31|0,6659,0)|0;h=Bl(h|0,I|0,4096,0)|0;h=zl(h|0,I|0,13)|0;t[i>>2]=h;f=f+1|0}while((f|0)!=(r|0));return}function Ba(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0;h=t[e>>2]|0;l=t[e+12>>2]|0;k=t[e+8>>2]|0;d=r*3|0;c=1-l|0;u=e+4|0;o=k;e=0;while(1){s=h+(l<<4)|0;if(((o+d|0)<(f|0)?(i&15|0)==0:0)?((s|r)&15|0)==0:0){if((o|0)>0){n=0;do{s=n<<3;t[h+(l<<4)+(s<<2)>>2]=t[i+(n<<2)>>2];a=n+r|0;t[h+(l<<4)+((s|1)<<2)>>2]=t[i+(a<<2)>>2];a=a+r|0;t[h+(l<<4)+((s|2)<<2)>>2]=t[i+(a<<2)>>2];t[h+(l<<4)+((s|3)<<2)>>2]=t[i+(a+r<<2)>>2];n=n+1|0}while((n|0)!=(o|0))}}else w=3;if((w|0)==3?(w=0,(o|0)>0):0){s=0;do{n=s<<3;t[h+(l<<4)+(n<<2)>>2]=t[i+(s<<2)>>2];a=s+r|0;if(((a|0)<(f|0)?(t[h+(l<<4)+((n|1)<<2)>>2]=t[i+(a<<2)>>2],b=a+r|0,(b|0)<(f|0)):0)?(t[h+(l<<4)+((n|2)<<2)>>2]=t[i+(b<<2)>>2],_=b+r|0,(_|0)<(f|0)):0)t[h+(l<<4)+((n|3)<<2)>>2]=t[i+(_<<2)>>2];s=s+1|0}while((s|0)!=(o|0))}e=e+1|0;if((e|0)==2)break;else{i=i+(k<<2)|0;f=f-k|0;l=c;o=t[u>>2]|0}}return}function za(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0,l=0,u=0.0,c=0.0,h=0,d=0.0,b=0,_=0;do{if(!(t[e+12>>2]|0)){r=t[e+8>>2]|0;if((t[e+4>>2]|0)>0){i=t[e>>2]|0;if((r|0)>0){s=0;n=1;l=9;break}else{s=0;a=1;break}}if((r|0)>1){f=0;n=1;l=7}else return}else{r=t[e+8>>2]|0;if((r|0)<=0)if((t[e+4>>2]|0)>1){i=t[e>>2]|0;s=1;a=0;break}else return;else{f=1;n=0;l=7}}}while(0);if((l|0)==7){i=t[e>>2]|0;s=f;l=9}if((l|0)==9){f=0;do{l=f<<3;b=i+(s<<4)+(l<<2)|0;h=i+(s<<4)+((l|1)<<2)|0;d=+o[h>>2];a=i+(s<<4)+((l|2)<<2)|0;c=+o[a>>2];l=i+(s<<4)+((l|3)<<2)|0;u=+o[l>>2];o[b>>2]=+o[b>>2]*1.2301740646362305;o[h>>2]=d*1.2301740646362305;o[a>>2]=c*1.2301740646362305;o[l>>2]=u*1.2301740646362305;f=f+1|0}while((f|0)!=(r|0));a=n}f=t[e+4>>2]|0;if((f|0)>0){n=0;do{b=n<<3;l=i+(a<<4)+(b<<2)|0;e=i+(a<<4)+((b|1)<<2)|0;u=+o[e>>2];h=i+(a<<4)+((b|2)<<2)|0;c=+o[h>>2];b=i+(a<<4)+((b|3)<<2)|0;d=+o[b>>2];o[l>>2]=+o[l>>2]*1.625732421875;o[e>>2]=u*1.625732421875;o[h>>2]=c*1.625732421875;o[b>>2]=d*1.625732421875;n=n+1|0}while((n|0)!=(f|0))}_=i+(a<<4)|0;n=i+(s+1<<4)|0;l=f-s|0;l=(r|0)<(l|0)?r:l;Da(_,n,r,l,-.4435068666934967);e=i+(s<<4)|0;h=i+(a+1<<4)|0;b=r-a|0;b=(f|0)<(b|0)?f:b;Da(e,h,f,b,-.8829110860824585);Da(_,n,r,l,.05298011749982834);Da(e,h,f,b,1.5861343145370483);return}function Da(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=+n;var t=0.0,a=0.0,s=0.0,l=0.0,u=0,c=0,h=0,d=0,b=0.0,_=0.0,k=0,w=0.0,m=0.0,v=0,p=0.0,g=0.0,y=0,M=0.0;if((f|0)>0){h=f<<1;c=h+-2|0;a=+o[e>>2];s=+o[e+4>>2];l=+o[e+8>>2];t=+o[e+12>>2];e=i;u=0;while(1){y=e+-16|0;v=e+-12|0;g=+o[v>>2];k=e+-8|0;m=+o[k>>2];d=e+-4|0;_=+o[d>>2];M=a;a=+o[e>>2];p=s;s=+o[e+4>>2];w=l;l=+o[e+8>>2];b=t;t=+o[e+12>>2];o[y>>2]=+o[y>>2]+(M+a)*n;o[v>>2]=g+(p+s)*n;o[k>>2]=m+(w+l)*n;o[d>>2]=_+(b+t)*n;u=u+1|0;if((u|0)==(f|0))break;else e=e+32|0}e=i+(c<<4)|0;i=i+(h<<4)|0}if((f|0)>=(r|0))return;t=n+n;a=t*+o[e>>2];s=t*+o[e+4>>2];l=t*+o[e+8>>2];t=t*+o[e+12>>2];while(1){d=i+-16|0;k=i+-12|0;p=+o[k>>2];v=i+-8|0;g=+o[v>>2];y=i+-4|0;M=+o[y>>2];o[d>>2]=a+ +o[d>>2];o[k>>2]=s+p;o[v>>2]=l+g;o[y>>2]=t+M;f=f+1|0;if((f|0)==(r|0))break;else i=i+32|0}return}function Na(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0.0,s=0,l=0,u=0,c=0,h=0,d=0,b=0.0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0;M=r<<2;A=Nn(r<<4)|0;if(!A){e=0;return e|0}E=A+M|0;xl(A|0,0,M|0)|0;g=r+-1|0;p=(r|0)==0;if(!p){f=0;n=A;while(1){t[n>>2]=f;f=f+1|0;if((f|0)==(r|0))break;else n=n+4|0}}e:do{if(g){k=g;l=0;f=0;w=e;m=1;v=A;while(1){u=w+(l<<2)|0;if(l>>>0<r>>>0){s=l;n=u;a=0.0}else break;while(1){b=+o[n>>2];b=b>0.0?b:-b;y=b>a;f=y?s:f;a=y?b:a;s=s+1|0;if((s|0)==(r|0))break;else n=n+(r<<2)|0}if(a==0.0)break;if((f|0)!=(l|0)){y=f-l|0;_=v+(y<<2)|0;d=t[v>>2]|0;t[v>>2]=t[_>>2];t[_>>2]=d;y=w+((ie(y,r)|0)<<2)|0;Dl(E|0,y|0,M|0)|0;Dl(y|0,w|0,M|0)|0;Dl(w|0,E|0,M|0)|0}n=l;_=l+1|0;b=+o[u>>2];if(m>>>0<r>>>0){c=w+(_<<2)|0;d=_+k|0;h=m;s=w+(n+r<<2)|0;while(1){a=+o[s>>2]/b;o[s>>2]=a;n=m;l=s;u=c;while(1){l=l+4|0;o[l>>2]=+o[l>>2]-a*+o[u>>2];n=n+1|0;if((n|0)==(r|0))break;else u=u+4|0}h=h+1|0;if((h|0)==(r|0))break;else s=s+(d<<2)|0}}if(_>>>0<g>>>0){k=k+-1|0;l=_;w=w+(r<<2)|0;m=m+1|0;v=v+4|0}else break e}Yn(A);e=0;return e|0}}while(0);f=r<<1;y=E+(f<<2)|0;if(!p){p=E+(g+r<<2)|0;k=E+(f+g<<2)|0;w=e+((ie(r,r)|0)+-1<<2)|0;m=~r;v=0;_=i;while(1){xl(E|0,0,M|0)|0;o[E+(v<<2)>>2]=1.0;l=0;u=1;c=A;h=y;d=e;while(1){if(!l)a=0.0;else{f=1;n=y;s=d;a=0.0;while(1){a=a+ +o[s>>2]*+o[n>>2];f=f+1|0;if((f|0)==(u|0))break;else{n=n+4|0;s=s+4|0}}}o[h>>2]=+o[E+(t[c>>2]<<2)>>2]-a;l=l+1|0;if((l|0)==(r|0)){l=r;u=p;c=y;h=k;d=w;break}else{u=u+1|0;c=c+4|0;h=h+4|0;d=d+(r<<2)|0}}while(1){f=l;l=l+-1|0;b=+o[d>>2];if(f>>>0<r>>>0){n=c;s=d;a=0.0;while(1){s=s+4|0;a=a+ +o[s>>2]*+o[n>>2];f=f+1|0;if((f|0)==(r|0))break;else n=n+4|0}}else a=0.0;c=c+-4|0;o[u>>2]=(+o[h>>2]-a)/b;if(!l){f=0;n=_;break}else{u=u+-4|0;h=h+-4|0;d=d+(m<<2)|0}}while(1){t[n>>2]=t[E+(f+r<<2)>>2];f=f+1|0;if((f|0)==(r|0))break;else n=n+(r<<2)|0}v=v+1|0;if((v|0)==(r|0))break;else _=_+4|0}}Yn(A);e=1;return e|0}function Fa(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0;a=Fn(1,44)|0;if(!a){a=0;return a|0}s=Ja()|0;t[a>>2]=s;if(!s){Qa(0);t[a>>2]=0;s=a+4|0;_s(t[s>>2]|0);t[s>>2]=0;if((t[a+40>>2]|0)==0?(r=a+8|0,i=t[r>>2]|0,(i|0)!=0):0){Un(i);t[r>>2]=0}i=a+12|0;r=t[i>>2]|0;if(r){Un(r);t[i>>2]=0}Yn(a);s=0;return s|0}s=bs()|0;i=a+4|0;t[i>>2]=s;if(s){t[a+40>>2]=e;s=a;return s|0}Qa(t[a>>2]|0);t[a>>2]=0;_s(t[i>>2]|0);t[i>>2]=0;if((t[a+40>>2]|0)==0?(f=a+8|0,n=t[f>>2]|0,(n|0)!=0):0){Un(n);t[f>>2]=0}i=a+12|0;r=t[i>>2]|0;if(r){Un(r);t[i>>2]=0}Yn(a);s=0;return s|0}function Ha(e){e=e|0;var i=0,r=0,f=0;if(!e)return;Qa(t[e>>2]|0);t[e>>2]=0;f=e+4|0;_s(t[f>>2]|0);t[f>>2]=0;if((t[e+40>>2]|0)==0?(i=e+8|0,r=t[i>>2]|0,(r|0)!=0):0){Un(r);t[i>>2]=0}i=e+12|0;r=t[i>>2]|0;if(r){Un(r);t[i>>2]=0}Yn(e);return}function Ua(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,l=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0,V=0,X=0,G=0,K=0,W=0,Z=0,J=0,Q=0,ee=0,re=0,fe=0,ne=0,te=0,ae=0,se=0,le=0,oe=0,ue=0,ce=0,he=0,de=0,be=0,_e=0,ke=0,we=0,me=0,ve=0,pe=0,ge=0,ye=0,Me=0,Ae=0,Ee=0,Se=0,Te=0,Re=0,Ce=0;Ae=(t[i+8>>2]|0)-(t[i>>2]|0)|0;Ee=i+20|0;f=t[Ee>>2]|0;if(!f){e=1;return e|0}Se=i+24|0;Te=r+808|0;Re=r+16|0;ve=e+4|0;ge=e+8|0;ye=e+16|0;Me=e+20|0;me=r+20|0;_e=i+32|0;ke=e+32|0;we=e+12|0;r=f;be=0;e:while(1){he=t[Se>>2]|0;de=he+(be*136|0)+24|0;i=t[de>>2]|0;if(i){oe=he+(be*136|0)+16|0;ue=he+(be*136|0)+20|0;ce=be+-1|0;r=t[ue>>2]|0;f=t[oe>>2]|0;le=0;do{if(ie(r,f)|0){fe=he+(be*136|0)+28+(le*36|0)+20|0;ne=he+(be*136|0)+28+(le*36|0)+16|0;te=he+(be*136|0)+28+(le*36|0)|0;ae=he+(be*136|0)+28+(le*36|0)+4|0;se=he+(be*136|0)+28+(le*36|0)+32|0;re=0;do{i=t[fe>>2]|0;Q=i+(re*40|0)+16|0;ee=i+(re*40|0)+20|0;if(ie(t[ee>>2]|0,t[Q>>2]|0)|0){Z=i+(re*40|0)+24|0;J=0;do{r=t[Z>>2]|0;q=t[ne>>2]|0;l=t[Te>>2]|0;i=t[Re>>2]|0;$=t[ve>>2]|0;V=t[e>>2]|0;X=r+(J*56|0)+8|0;W=r+(J*56|0)+12|0;if(!(Ya(e,(t[r+(J*56|0)+16>>2]|0)-(t[X>>2]|0)|0,(t[r+(J*56|0)+20>>2]|0)-(t[W>>2]|0)|0)|0)){r=0;O=201;break e}G=r+(J*56|0)+24|0;u=t[G>>2]|0;ss(V);ls(V,18,0,46);ls(V,17,0,3);ls(V,0,0,4);K=r+(J*56|0)+48|0;f=t[K>>2]|0;if(f){F=r+(J*56|0)+4|0;H=(i&1|0)!=0;U=(i&2|0)==0;j=(i&8|0)==0;Y=q<<8;N=(i&32|0)==0;i=u+l|0;r=2;D=0;do{u=t[F>>2]|0;z=H&(r>>>0<2?(i|0)<=((t[G>>2]|0)+-4|0):0);l=t[u+(D<<5)>>2]|0;if(l){f=(t[l>>2]|0)+(t[u+(D<<5)+4>>2]|0)|0;l=t[u+(D<<5)+16>>2]|0;if(!z){if(!(hs(V,f,l)|0)){r=0;O=201;break e}}else ks($,f,l);L=u+(D<<5)+12|0;i:do{if(t[L>>2]|0){B=U|z;x=0;while(1){r:do{switch(r|0){case 0:{if(z){y=1<<i;y=y>>1|y;l=t[Me>>2]|0;if(!l)break r;g=0-y|0;f=t[ye>>2]|0;p=0;while(1){v=p;p=p+4|0;if(!f)f=0;else{k=(v|0)==-4;w=v|3;m=0;do{f:do{if(!k)if(j){b=v;do{if(b>>>0>=(t[Me>>2]|0)>>>0)break f;h=b;b=b+1|0;f=(ie(t[ke>>2]|0,b)|0)+m|0;l=f+1|0;u=t[we>>2]|0;c=u+(l<<1)|0;h=(ie(t[ye>>2]|0,h)|0)+m|0;h=(t[ge>>2]|0)+(h<<2)|0;d=t[ve>>2]|0;O=n[c>>1]|0;if((O&255|0)!=0&(O&20480|0)==0){if(ws(d)|0){C=ws(d)|0;t[h>>2]=(C|0)!=0?g:y;I=t[ke>>2]|0;O=u+(l-I<<1)|0;P=u+(I+l<<1)|0;R=u+(l+~I<<1)|0;n[R>>1]=s[R>>1]|2;n[O>>1]=n[O>>1]|n[3436+(C<<1)>>1];O=f+2|0;R=u+(O-I<<1)|0;n[R>>1]=s[R>>1]|4;R=u+(f<<1)|0;n[R>>1]=n[R>>1]|n[3436+(C+2<<1)>>1];n[c>>1]=s[c>>1]|4096;R=u+(O<<1)|0;n[R>>1]=n[R>>1]|n[3436+(C+4<<1)>>1];R=u+(I+f<<1)|0;n[R>>1]=s[R>>1]|1;n[P>>1]=n[P>>1]|n[3436+(C+6<<1)>>1];O=u+(I+O<<1)|0;n[O>>1]=s[O>>1]|8}n[c>>1]=s[c>>1]|16384}}while(b>>>0<p>>>0)}else{_=v;do{f=t[Me>>2]|0;if(_>>>0>=f>>>0)break f;I=_;_=_+1|0;l=(ie(t[ke>>2]|0,_)|0)+m|0;u=l+1|0;c=t[we>>2]|0;h=c+(u<<1)|0;d=(ie(t[ye>>2]|0,I)|0)+m|0;d=(t[ge>>2]|0)+(d<<2)|0;b=t[ve>>2]|0;O=n[h>>1]|0;O=(I|0)==(w|0)|(I|0)==(f+-1|0)?O&-1095:O;if((O&255|0)!=0&(O&20480|0)==0){if(ws(b)|0){C=ws(b)|0;t[d>>2]=(C|0)!=0?g:y;I=t[ke>>2]|0;O=c+(u-I<<1)|0;P=c+(I+u<<1)|0;R=c+(u+~I<<1)|0;n[R>>1]=s[R>>1]|2;n[O>>1]=n[O>>1]|n[3436+(C<<1)>>1];O=l+2|0;R=c+(O-I<<1)|0;n[R>>1]=s[R>>1]|4;R=c+(l<<1)|0;n[R>>1]=n[R>>1]|n[3436+(C+2<<1)>>1];n[h>>1]=s[h>>1]|4096;R=c+(O<<1)|0;n[R>>1]=n[R>>1]|n[3436+(C+4<<1)>>1];R=c+(I+l<<1)|0;n[R>>1]=s[R>>1]|1;n[P>>1]=n[P>>1]|n[3436+(C+6<<1)>>1];O=c+(I+O<<1)|0;n[O>>1]=s[O>>1]|8}n[h>>1]=s[h>>1]|16384}}while(_>>>0<p>>>0)}}while(0);m=m+1|0;f=t[ye>>2]|0}while(m>>>0<f>>>0);l=t[Me>>2]|0}if(p>>>0>=l>>>0){O=163;break r}}}if(j){u=t[ge>>2]|0;c=(t[we>>2]|0)+2|0;w=1<<i;w=w>>1|w;f=t[Me>>2]|0;l=t[ye>>2]|0;if(f>>>0>3){b=l;d=0;while(1){if(!l){l=b;h=0}else{l=0;do{O=(t[ke>>2]|0)+l|0;qa(e,c+(O<<1)|0,u+(l<<2)|0,q,w);f=(t[ye>>2]|0)+l|0;O=(t[ke>>2]|0)+O|0;qa(e,c+(O<<1)|0,u+(f<<2)|0,q,w);f=(t[ye>>2]|0)+f|0;O=(t[ke>>2]|0)+O|0;qa(e,c+(O<<1)|0,u+(f<<2)|0,q,w);qa(e,c+((t[ke>>2]|0)+O<<1)|0,u+((t[ye>>2]|0)+f<<2)|0,q,w);l=l+1|0;f=t[ye>>2]|0}while(l>>>0<f>>>0);l=f;h=f;f=t[Me>>2]|0}u=u+(h<<2<<2)|0;c=c+(t[ke>>2]<<2<<1)|0;d=d+4|0;if(d>>>0<(f&-4)>>>0){b=l;l=h}else{k=c;_=d;break}}}else{k=c;_=0}if(!l){O=163;break r}else b=0;while(1){if(_>>>0<f>>>0){c=u+(b<<2)|0;h=k+(b<<1)|0;d=_;while(1){h=h+(t[ke>>2]<<1)|0;qa(e,h,c,q,w);l=t[ye>>2]|0;d=d+1|0;f=t[Me>>2]|0;if(d>>>0>=f>>>0)break;else c=c+(l<<2)|0}}b=b+1|0;if(b>>>0>=l>>>0){O=163;break r}}}y=1<<i;y=y>>1|y;f=t[Me>>2]|0;if(!f){O=163;break r}M=0-y|0;l=t[ye>>2]|0;c=l;g=0;while(1){p=g;g=g+4|0;do{if(!l){u=c;l=0}else{v=p|3;if((p|0)==-4){u=c;l=c;break}else m=0;do{w=p;do{f=t[Me>>2]|0;if(w>>>0>=f>>>0)break;O=w;w=w+1|0;c=(ie(t[ke>>2]|0,w)|0)+m|0;h=c+1|0;d=t[we>>2]|0;b=d+(h<<1)|0;_=(ie(t[ye>>2]|0,O)|0)+m|0;_=(t[ge>>2]|0)+(_<<2)|0;k=t[e>>2]|0;l=n[b>>1]|0;f=(O|0)==(v|0)|(O|0)==(f+-1|0)?l&-1095:l;l=f&255;if((l|0)!=0&(f&20480|0)==0){u=k+100|0;t[u>>2]=k+24+(a[20267+(l|Y)>>0]<<2);if(ds(k)|0){I=f>>>4&255;t[u>>2]=k+24+(a[21291+I>>0]<<2);O=ds(k)|0;I=a[21547+I>>0]|0;C=I^O;t[_>>2]=(O|0)!=(I|0)?M:y;I=t[ke>>2]|0;O=d+(h-I<<1)|0;P=d+(I+h<<1)|0;R=d+(h+~I<<1)|0;n[R>>1]=s[R>>1]|2;n[O>>1]=n[O>>1]|n[3436+(C<<1)>>1];O=c+2|0;R=d+(O-I<<1)|0;n[R>>1]=s[R>>1]|4;R=d+(c<<1)|0;n[R>>1]=n[R>>1]|n[3436+(C+2<<1)>>1];n[b>>1]=s[b>>1]|4096;R=d+(O<<1)|0;n[R>>1]=n[R>>1]|n[3436+(C+4<<1)>>1];R=d+(I+c<<1)|0;n[R>>1]=s[R>>1]|1;n[P>>1]=n[P>>1]|n[3436+(C+6<<1)>>1];O=d+(I+O<<1)|0;n[O>>1]=s[O>>1]|8}n[b>>1]=s[b>>1]|16384}}while(w>>>0<g>>>0);m=m+1|0;f=t[ye>>2]|0}while(m>>>0<f>>>0);u=f;l=f;f=t[Me>>2]|0}}while(0);if(g>>>0>=f>>>0){O=163;break}else c=u}break}case 1:{if(z){k=1<<i>>1;w=(i|0)>0?0-k|0:-1;l=t[Me>>2]|0;if(!l)break r;u=t[ye>>2]|0;f=u;_=0;while(1){b=_;_=_+4|0;if(!u){c=f;u=0}else{d=(b|0)==-4;h=0;do{c=h;h=h+1|0;if(!d){u=b;do{if(u>>>0>=(t[Me>>2]|0)>>>0)break;l=u;u=u+1|0;f=(ie(t[ke>>2]|0,u)|0)+h|0;f=(t[we>>2]|0)+(f<<1)|0;l=(ie(t[ye>>2]|0,l)|0)+c|0;l=(t[ge>>2]|0)+(l<<2)|0;if((n[f>>1]&20480)==4096){I=(ws(t[ve>>2]|0)|0)!=0;I=I?k:w;O=t[l>>2]|0;t[l>>2]=((O|0)<0?0-I|0:I)+O;n[f>>1]=s[f>>1]|8192}}while(u>>>0<_>>>0);f=t[ye>>2]|0}}while(h>>>0<f>>>0);c=f;u=f;l=t[Me>>2]|0}if(_>>>0>=l>>>0){O=163;break r}else f=c}}if(!j){v=1<<i>>1;p=(i|0)>0?0-v|0:-1;f=t[Me>>2]|0;if(!f){O=163;break r}l=t[ye>>2]|0;u=l;m=0;while(1){w=m;m=m+4|0;if(!l)l=0;else{_=(w|0)==-4;k=w|3;f=u;b=0;do{d=b;b=b+1|0;if(!_){c=w;do{f=t[Me>>2]|0;if(c>>>0>=f>>>0)break;I=c;c=c+1|0;l=(ie(t[ke>>2]|0,c)|0)+b|0;l=(t[we>>2]|0)+(l<<1)|0;u=(ie(t[ye>>2]|0,I)|0)+d|0;u=(t[ge>>2]|0)+(u<<2)|0;h=t[e>>2]|0;O=n[l>>1]|0;f=(I|0)==(k|0)|(I|0)==(f+-1|0)?O&-1095:O;if((f&20480|0)==4096){t[h+100>>2]=h+24+(((f&8192|0)!=0?16:(f&255|0)!=0?15:14)<<2);I=(ds(h)|0)!=0;I=I?v:p;O=t[u>>2]|0;t[u>>2]=((O|0)<0?0-I|0:I)+O;n[l>>1]=s[l>>1]|8192}}while(c>>>0<m>>>0);f=t[ye>>2]|0}}while(b>>>0<f>>>0);u=f;l=f;f=t[Me>>2]|0}if(m>>>0>=f>>>0){O=163;break r}}}u=t[ge>>2]|0;c=(t[we>>2]|0)+2|0;g=1<<i>>1;y=(i|0)>0?0-g|0:-1;f=t[Me>>2]|0;l=t[ye>>2]|0;if(f>>>0>3){d=l;v=c;p=0;while(1){if(!l){l=d;h=0}else{f=d;m=0;do{l=u+(m<<2)|0;d=t[ke>>2]|0;_=d+m|0;c=v+(_<<1)|0;b=t[e>>2]|0;h=n[c>>1]|0;if((h&20480|0)==4096){t[b+100>>2]=b+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);d=(ds(b)|0)!=0;d=d?g:y;f=t[l>>2]|0;t[l>>2]=((f|0)<0?0-d|0:d)+f;n[c>>1]=s[c>>1]|8192;f=t[ye>>2]|0;l=t[ke>>2]|0;d=t[e>>2]|0}else{l=d;d=b}k=f+m|0;b=u+(k<<2)|0;w=l+_|0;c=v+(w<<1)|0;h=n[c>>1]|0;if((h&20480|0)==4096){t[d+100>>2]=d+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);l=(ds(d)|0)!=0;l=l?g:y;f=t[b>>2]|0;t[b>>2]=((f|0)<0?0-l|0:l)+f;n[c>>1]=s[c>>1]|8192;f=t[ye>>2]|0;l=t[ke>>2]|0;d=t[e>>2]|0}_=f+k|0;b=u+(_<<2)|0;k=l+w|0;c=v+(k<<1)|0;h=n[c>>1]|0;if((h&20480|0)==4096){t[d+100>>2]=d+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);l=(ds(d)|0)!=0;l=l?g:y;f=t[b>>2]|0;t[b>>2]=((f|0)<0?0-l|0:l)+f;n[c>>1]=s[c>>1]|8192;f=t[ye>>2]|0;l=t[ke>>2]|0;d=t[e>>2]|0}h=u+(f+_<<2)|0;l=v+(l+k<<1)|0;c=n[l>>1]|0;if((c&20480|0)==4096){t[d+100>>2]=d+24+(((c&8192|0)!=0?16:(c&255|0)!=0?15:14)<<2);O=(ds(d)|0)!=0;O=O?g:y;f=t[h>>2]|0;t[h>>2]=((f|0)<0?0-O|0:O)+f;n[l>>1]=s[l>>1]|8192;f=t[ye>>2]|0}m=m+1|0}while(m>>>0<f>>>0);l=f;h=f;f=t[Me>>2]|0}u=u+(h<<2<<2)|0;c=v+(t[ke>>2]<<2<<1)|0;b=p+4|0;if(b>>>0<(f&-4)>>>0){d=l;l=h;v=c;p=b}else{m=b;break}}}else m=0;if(!l){O=163;break r}else w=0;do{if(m>>>0<f>>>0){b=u+(w<<2)|0;_=c+(w<<1)|0;k=m;while(1){_=_+(t[ke>>2]<<1)|0;d=t[e>>2]|0;h=n[_>>1]|0;if((h&20480|0)==4096){t[d+100>>2]=d+24+(((h&8192|0)!=0?16:(h&255|0)!=0?15:14)<<2);f=(ds(d)|0)!=0;f=f?g:y;h=t[b>>2]|0;t[b>>2]=((h|0)<0?0-f|0:f)+h;n[_>>1]=s[_>>1]|8192;h=t[ye>>2]|0;f=t[Me>>2]|0}else h=l;k=k+1|0;if(k>>>0>=f>>>0){l=h;break}else{l=h;b=b+(h<<2)|0}}}w=w+1|0}while(w>>>0<l>>>0);O=163;break}case 2:{P=t[e>>2]|0;I=1<<i;I=I>>1|I;do{if(j){u=t[ge>>2]|0;c=(t[we>>2]|0)+2|0;l=t[Me>>2]|0;if(l>>>0>3){y=P+92|0;M=P+100|0;A=P+96|0;E=0-I|0;h=t[ye>>2]|0;f=h;b=0;while(1){if(!h)h=0;else{w=b|1;m=w+1|0;v=b|3;p=w+3|0;g=0;do{f=t[ke>>2]|0;l=g;g=g+1|0;C=(ie(f,w)|0)+g|0;O=t[we>>2]|0;C=n[O+((ie(f,m)|0)+g<<1)>>1]|n[O+(C<<1)>>1];C=C|n[O+((ie(f,v)|0)+g<<1)>>1];f:do{if(!((C|n[O+((ie(f,p)|0)+g<<1)>>1])&20735)){t[M>>2]=y;if(!(ds(P)|0))break;t[M>>2]=A;_=(ds(P)|0)<<1;_=_|(ds(P)|0);if(_>>>0>=4)break;k=u+((ie(t[ye>>2]|0,_)|0)+l<<2)|0;l=c+((ie(t[ke>>2]|0,_)|0)+l<<1)|0;d=_;while(1){if(d>>>0>=(t[Me>>2]|0)>>>0)break f;f=t[ke>>2]|0;h=l;l=l+(f<<1)|0;if((d|0)==(_|0)){O=t[e>>2]|0;C=(s[l>>1]|0)>>>4&255;t[O+100>>2]=O+24+(a[21291+C>>0]<<2);O=ds(O)|0;C=a[21547+C>>0]|0;T=C^O;t[k>>2]=(O|0)!=(C|0)?E:I;C=t[ke>>2]|0;O=h+(f-C<<1)|0;R=h+(C+f<<1)|0;S=h+(f+~C<<1)|0;n[S>>1]=s[S>>1]|2;n[O>>1]=n[O>>1]|n[3436+(T<<1)>>1];O=f+1|0;S=h+(O-C<<1)|0;n[S>>1]=s[S>>1]|4;S=f+-1|0;f=h+(S<<1)|0;n[f>>1]=n[f>>1]|n[3436+(T+2<<1)>>1];n[l>>1]=s[l>>1]|4096;f=h+(O<<1)|0;n[f>>1]=n[f>>1]|n[3436+(T+4<<1)>>1];S=h+(C+S<<1)|0;n[S>>1]=s[S>>1]|1;n[R>>1]=n[R>>1]|n[3436+(T+6<<1)>>1];O=h+(C+O<<1)|0;n[O>>1]=s[O>>1]|8;n[l>>1]=s[l>>1]&49151}else $a(e,l,k,q,I);d=d+1|0;if(d>>>0>=4)break;else k=k+(t[ye>>2]<<2)|0}}else{C=f+l|0;$a(e,c+(C<<1)|0,u+(l<<2)|0,q,I);O=(t[ye>>2]|0)+l|0;C=(t[ke>>2]|0)+C|0;$a(e,c+(C<<1)|0,u+(O<<2)|0,q,I);O=(t[ye>>2]|0)+O|0;C=(t[ke>>2]|0)+C|0;$a(e,c+(C<<1)|0,u+(O<<2)|0,q,I);$a(e,c+((t[ke>>2]|0)+C<<1)|0,u+((t[ye>>2]|0)+O<<2)|0,q,I)}}while(0);f=t[ye>>2]|0}while(g>>>0<f>>>0);h=f;l=t[Me>>2]|0}u=u+(h<<2<<2)|0;c=c+(t[ke>>2]<<2<<1)|0;b=b+4|0;if(b>>>0>=(l&-4)>>>0){k=u;_=c;break}}}else{f=t[ye>>2]|0;k=u;_=c;b=0}if(!f)break;else d=0;do{if(b>>>0<l>>>0){u=k+(d<<2)|0;c=_+(d<<1)|0;h=b;while(1){c=c+(t[ke>>2]<<1)|0;$a(e,c,u,q,I);f=t[ye>>2]|0;h=h+1|0;l=t[Me>>2]|0;if(h>>>0>=l>>>0)break;else u=u+(f<<2)|0}}d=d+1|0}while(d>>>0<f>>>0)}else{f=t[Me>>2]|0;if(!f)break;S=P+92|0;T=P+100|0;R=P+96|0;C=0-I|0;l=t[ye>>2]|0;E=0;while(1){if(!l){u=E+4|0;l=0}else{g=E|3;y=E|1;M=y+1|0;A=y+3|0;u=E+4|0;p=0;while(1){do{if(g>>>0<f>>>0){f=t[ke>>2]|0;c=p+1|0;v=(ie(f,y)|0)+c|0;l=t[we>>2]|0;if(n[l+(v<<1)>>1]&20735){v=0;f=0;O=127;break}if(n[l+((ie(f,M)|0)+c<<1)>>1]&20735){v=0;f=0;O=127;break}if(n[l+((ie(f,g)|0)+c<<1)>>1]&20735){v=0;f=0;O=127;break}if(n[l+((ie(f,A)|0)+c<<1)>>1]&20665){v=0;f=0;O=127;break}t[T>>2]=S;if(!(ds(P)|0))break;t[T>>2]=R;f=(ds(P)|0)<<1;v=1;f=f|(ds(P)|0);O=127}else{v=0;f=0;O=127}}while(0);if((O|0)==127){O=0;c=f+E|0;f:do{if(c>>>0<u>>>0){m=c;do{f=t[Me>>2]|0;if(m>>>0>=f>>>0)break f;Ce=m;m=m+1|0;h=(ie(t[ke>>2]|0,m)|0)+p|0;d=h+1|0;b=t[we>>2]|0;_=b+(d<<1)|0;k=(ie(t[ye>>2]|0,Ce)|0)+p|0;k=(t[ge>>2]|0)+(k<<2)|0;w=t[e>>2]|0;l=n[_>>1]|0;l=(Ce|0)==(g|0)|(Ce|0)==(f+-1|0)?l&-1095:l;do{if(!(v&(Ce|0)==(c|0))){if(l&20480)break;f=w+100|0;t[f>>2]=w+24+(a[20267+(l&255|Y)>>0]<<2);if(ds(w)|0)O=133}else{f=w+100|0;O=133}}while(0);if((O|0)==133){O=0;l=l>>>4&255;t[f>>2]=w+24+(a[21291+l>>0]<<2);Ce=ds(w)|0;w=a[21547+l>>0]|0;l=w^Ce;t[k>>2]=(Ce|0)!=(w|0)?C:I;w=t[ke>>2]|0;Ce=b+(d-w<<1)|0;k=b+(w+d<<1)|0;d=b+(d+~w<<1)|0;n[d>>1]=s[d>>1]|2;n[Ce>>1]=n[Ce>>1]|n[3436+(l<<1)>>1];Ce=h+2|0;d=b+(Ce-w<<1)|0;n[d>>1]=s[d>>1]|4;d=b+(h<<1)|0;n[d>>1]=n[d>>1]|n[3436+(l+2<<1)>>1];n[_>>1]=s[_>>1]|4096;d=b+(Ce<<1)|0;n[d>>1]=n[d>>1]|n[3436+(l+4<<1)>>1];d=b+(w+h<<1)|0;n[d>>1]=s[d>>1]|1;n[k>>1]=n[k>>1]|n[3436+(l+6<<1)>>1];Ce=b+(w+Ce<<1)|0;n[Ce>>1]=s[Ce>>1]|8}n[_>>1]=s[_>>1]&49151}while(m>>>0<u>>>0)}}while(0);c=p+1|0}l=t[ye>>2]|0;f=t[Me>>2]|0;if(c>>>0<l>>>0)p=c;else break}}if(u>>>0<f>>>0)E=u;else break}}}while(0);if(N){O=163;break r}t[P+100>>2]=P+96;ds(P)|0;ds(P)|0;ds(P)|0;ds(P)|0;O=163;break}default:O=163}}while(0);do{if((O|0)==163){O=0;if(B)break;ss(V);ls(V,18,0,46);ls(V,17,0,3);ls(V,0,0,4)}}while(0);r=r+1|0;Ce=(r|0)==3;i=(Ce<<31>>31)+i|0;r=Ce?0:r;x=x+1|0;if(x>>>0>=(t[L>>2]|0)>>>0)break i}}}while(0);f=t[K>>2]|0}D=D+1|0}while(D>>>0<f>>>0)}r=(t[X>>2]|0)-(t[te>>2]|0)|0;i=(t[W>>2]|0)-(t[ae>>2]|0)|0;f=t[ne>>2]|0;if(f&1){Ce=t[Se>>2]|0;r=(t[Ce+(ce*136|0)+8>>2]|0)+r-(t[Ce+(ce*136|0)>>2]|0)|0}if(f&2){Ce=t[Se>>2]|0;i=(t[Ce+(ce*136|0)+12>>2]|0)+i-(t[Ce+(ce*136|0)+4>>2]|0)|0}_=t[ge>>2]|0;k=t[ye>>2]|0;w=t[Me>>2]|0;f=t[Te>>2]|0;if((f|0)!=0?(pe=1<<f,(w|0)!=0):0){f=(k|0)==0;b=0;do{if(!f){l=ie(b,k)|0;d=0;do{u=_+(d+l<<2)|0;c=t[u>>2]|0;h=(c|0)>-1?c:0-c|0;if((h|0)>=(pe|0)){Ce=h>>t[Te>>2];t[u>>2]=(c|0)<0?0-Ce|0:Ce}d=d+1|0}while((d|0)!=(k|0))}b=b+1|0}while((b|0)!=(w|0))}d=(ie(i,Ae)|0)+r|0;b=t[_e>>2]|0;r=(w|0)==0;if((t[me>>2]|0)==1){if(!r){r=(k|0)==0;u=0;do{if(!r){i=ie(u,k)|0;f=(ie(u,Ae)|0)+d|0;l=0;do{t[b+(f+l<<2)>>2]=(t[_+(l+i<<2)>>2]|0)/2|0;l=l+1|0}while((l|0)!=(k|0))}u=u+1|0}while((u|0)!=(w|0))}}else if(!r){h=(k|0)==0;r=_;c=0;u=b+(d<<2)|0;while(1){if(!h){i=r;f=0;l=u;while(1){o[l>>2]=+(t[i>>2]|0)*+o[se>>2];f=f+1|0;if((f|0)==(k|0))break;else{i=i+4|0;l=l+4|0}}r=r+(k<<2)|0}c=c+1|0;if((c|0)==(w|0))break;else u=u+(Ae<<2)|0}}J=J+1|0}while(J>>>0<(ie(t[ee>>2]|0,t[Q>>2]|0)|0)>>>0);r=t[ue>>2]|0;f=t[oe>>2]|0}re=re+1|0}while(re>>>0<(ie(r,f)|0)>>>0);i=t[de>>2]|0}le=le+1|0}while(le>>>0<i>>>0);r=t[Ee>>2]|0}be=be+1|0;if(be>>>0>=r>>>0){r=1;O=201;break}}if((O|0)==201)return r|0;return 0}function ja(e,i,r,l,c){e=e|0;i=i|0;r=r|0;l=l|0;c=c|0;var h=0,d=0,b=0,_=0,k=0,w=0,m=0.0,v=0.0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,j=0,Y=0,q=0,$=0,V=0.0,X=0,G=0,K=0,W=0,Z=0,J=0,Q=0,ee=0,re=0,fe=0,ne=0,te=0,ae=0,se=0,le=0.0,oe=0,ue=0,ce=0,he=0,de=0,be=0,_e=0,ke=0,we=0,me=0,ve=0,pe=0,ge=0,ye=0,Me=0,Ae=0,Ee=0,Se=0,Te=0,Re=0,Ce=0,Pe=0,Ie=0,Oe=0,xe=0,Le=0,Be=0,ze=0,De=0,Ne=0,Fe=0,He=0,Ue=0,je=0,Ye=0,qe=0,$e=0,Ve=0,Xe=0,Ge=0,Ke=0,We=0,Ze=0,Je=0,Qe=0;We=i+32|0;u[We>>3]=0.0;Ze=i+16|0;h=t[Ze>>2]|0;if(!h){Je=1;return Je|0}Ke=i+20|0;qe=r+5584|0;$e=e+16|0;Ve=e+20|0;Xe=e+8|0;Ge=e+36|0;Ue=(l|0)!=0;je=e+32|0;Ye=e+12|0;i=h;He=0;e:while(1){r=t[Ke>>2]|0;h=t[qe>>2]|0;Ne=(t[r+(He*52|0)+8>>2]|0)-(t[r+(He*52|0)>>2]|0)|0;Fe=r+(He*52|0)+16|0;d=t[Fe>>2]|0;if(d){De=r+(He*52|0)+24|0;Be=r+(He*52|0)+32|0;ze=h+(He*1080|0)+20|0;Oe=h+(He*1080|0)+16|0;Le=Ue&He>>>0<c>>>0;xe=l+(He<<3)|0;i=d;Ie=0;do{Ce=t[De>>2]|0;Pe=Ce+(Ie*136|0)+24|0;r=t[Pe>>2]|0;if(r){Ee=Ce+(Ie*136|0)+16|0;Se=Ce+(Ie*136|0)+20|0;Te=~Ie;Re=Ie+-1|0;i=t[Se>>2]|0;h=t[Ee>>2]|0;Ae=0;do{Me=Ce+(Ie*136|0)+28+(Ae*36|0)+32|0;if(ie(i,h)|0){we=67108864/(~~+U(+(+o[Me>>2]*8192.0))|0)|0;me=Ce+(Ie*136|0)+28+(Ae*36|0)+20|0;ve=Ce+(Ie*136|0)+28+(Ae*36|0)|0;pe=Ce+(Ie*136|0)+28+(Ae*36|0)+4|0;ge=Ce+(Ie*136|0)+28+(Ae*36|0)+16|0;ye=((we|0)<0)<<31>>31;ke=0;do{r=t[me>>2]|0;be=r+(ke*40|0)+16|0;_e=r+(ke*40|0)+20|0;if(ie(t[_e>>2]|0,t[be>>2]|0)|0){he=r+(ke*40|0)+24|0;de=0;do{ce=t[he>>2]|0;d=t[ce+(de*52|0)+12>>2]|0;i=d-(t[ve>>2]|0)|0;b=t[ce+(de*52|0)+16>>2]|0;r=b-(t[pe>>2]|0)|0;h=t[ge>>2]|0;if(h&1){ue=t[De>>2]|0;i=(t[ue+(Re*136|0)+8>>2]|0)+i-(t[ue+(Re*136|0)>>2]|0)|0}if(h&2){ue=t[De>>2]|0;r=(t[ue+(Re*136|0)+12>>2]|0)+r-(t[ue+(Re*136|0)+4>>2]|0)|0}if(!(Ya(e,(t[ce+(de*52|0)+20>>2]|0)-d|0,(t[ce+(de*52|0)+24>>2]|0)-b|0)|0)){i=0;Je=173;break e}_=t[$e>>2]|0;k=t[Ve>>2]|0;w=Ne-_|0;p=(ie(r,Ne)|0)+i|0;g=t[Be>>2]|0;t[Xe>>2]=g+(p<<2);t[Ge>>2]=Ne;i=(k|0)==0;if((t[ze>>2]|0)==1){if(!i){d=(_|0)==0;b=0;i=0;while(1){if(!d){r=0;h=i;while(1){ue=g+(h+p<<2)|0;t[ue>>2]=t[ue>>2]<<6;r=r+1|0;if((r|0)==(_|0))break;else h=h+1|0}i=_+i|0}b=b+1|0;if((b|0)==(k|0))break;else i=i+w|0}}}else if(!i){d=(_|0)==0;b=0;i=0;while(1){if(!d){r=0;h=i;while(1){ue=g+(h+p<<2)|0;oe=t[ue>>2]|0;oe=jl(oe|0,((oe|0)<0)<<31>>31|0,we|0,ye|0)|0;oe=Bl(oe|0,I|0,4096,0)|0;oe=zl(oe|0,I|0,18)|0;t[ue>>2]=oe;r=r+1|0;if((r|0)==(_|0))break;else h=h+1|0}i=_+i|0}b=b+1|0;if((b|0)==(k|0))break;else i=i+w|0}}ae=t[ge>>2]|0;se=(t[Fe>>2]|0)+Te|0;w=t[ze>>2]|0;le=+o[Me>>2];oe=t[Oe>>2]|0;ue=t[e>>2]|0;d=t[$e>>2]|0;do{if(!d)i=0;else{b=t[Ve>>2]|0;_=(b|0)==0;k=0;i=0;do{if(!_){r=t[Ge>>2]|0;h=0;do{te=t[g+(p+((ie(h,r)|0)+k)<<2)>>2]|0;te=(te|0)>-1?te:0-te|0;i=(i|0)>(te|0)?i:te;h=h+1|0}while((h|0)!=(b|0))}k=k+1|0}while((k|0)!=(d|0));if(!i){i=0;break}if((i|0)>1){r=i;i=0}else{i=-5;break}while(1){r=r>>1;if((r|0)<=1)break;else i=i+1|0}i=i+-4|0}}while(0);ne=ce+(de*52|0)+28|0;t[ne>>2]=i;i=i+-1|0;ss(ue);ls(ue,18,0,46);ls(ue,17,0,3);ls(ue,0,0,4);te=ce+(de*52|0)|0;is(ue,t[te>>2]|0);i:do{if((i|0)>-1){re=ce+(de*52|0)+8|0;G=oe&1;fe=(G|0)!=0;K=(w|0)==1;W=(oe&4|0)==0;G=(G|0)==0;Z=(oe&2|0)==0;J=(oe&8|0)==0;Q=ae<<8;ee=(oe&32|0)==0;r=0;$=i;V=0.0;i=0;X=2;while(1){q=t[re>>2]|0;L=fe&(X>>>0<2?($|0)<((t[ne>>2]|0)+-4|0):0);r:do{switch(X|0){case 0:{O=1<<$+6;r=t[Ve>>2]|0;if(!r){d=0;break r}x=($|0)==0;b=t[$e>>2]|0;h=b;d=0;P=0;do{C=P;P=P+4|0;if(!h)h=0;else{T=(C|0)==-4;R=C|3;h=b;S=0;do{if(!T){E=C;do{r=t[Ve>>2]|0;if(E>>>0>=r>>>0)break;do{if(J)r=0;else{if((E|0)==(R|0)){r=1;break}r=(E|0)==(r+-1|0)}}while(0);_=E;E=E+1|0;p=(ie(t[je>>2]|0,E)|0)+S|0;g=p+1|0;y=t[Ye>>2]|0;A=y+(g<<1)|0;_=(ie(t[Ge>>2]|0,_)|0)+S|0;_=(t[Xe>>2]|0)+(_<<2)|0;M=t[e>>2]|0;k=n[A>>1]|0;k=r?k&-1095:k;r=k&255;if((r|0)!=0&(k&20480|0)==0){h=t[_>>2]|0;h=(((h|0)<0?0-h|0:h)&O|0)!=0;b=h&1;w=M+100|0;t[w>>2]=M+24+(a[20267+(r|Q)>>0]<<2);if(L)ts(M,b);else rs(M,b);if(h){r=t[_>>2]|0;h=r>>>31;r=(r|0)<0?0-r|0:r;if(x)r=3708+((r&127)<<1)|0;else r=3452+((r>>>$&127)<<1)|0;d=(n[r>>1]|0)+d|0;r=k>>>4&255;t[w>>2]=M+24+(a[21291+r>>0]<<2);if(L)ts(M,h);else rs(M,a[21547+r>>0]^h);j=t[je>>2]|0;Y=y+(g-j<<1)|0;H=y+(j+g<<1)|0;F=y+(g+~j<<1)|0;n[F>>1]=s[F>>1]|2;n[Y>>1]=n[Y>>1]|n[3436+(h<<1)>>1];Y=p+2|0;F=y+(Y-j<<1)|0;n[F>>1]=s[F>>1]|4;F=y+(p<<1)|0;n[F>>1]=n[F>>1]|n[3436+((h|2)<<1)>>1];n[A>>1]=s[A>>1]|4096;F=y+(Y<<1)|0;n[F>>1]=n[F>>1]|n[3436+((h|4)<<1)>>1];F=y+(j+p<<1)|0;n[F>>1]=s[F>>1]|1;n[H>>1]=n[H>>1]|n[3436+((h|6)<<1)>>1];Y=y+(j+Y<<1)|0;n[Y>>1]=s[Y>>1]|8}n[A>>1]=s[A>>1]|16384}}while(E>>>0<P>>>0);h=t[$e>>2]|0}S=S+1|0}while(S>>>0<h>>>0);r=t[Ve>>2]|0;b=h}}while(P>>>0<r>>>0);break}case 1:{S=1<<$+6;r=t[Ve>>2]|0;if(!r){d=0;break r}T=($|0)==0;b=t[$e>>2]|0;h=b;d=0;E=0;do{A=E;E=E+4|0;if(!h)h=0;else{y=(A|0)==-4;M=A|3;h=b;g=0;do{p=g;g=g+1|0;if(!y){w=A;do{r=t[Ve>>2]|0;if(w>>>0>=r>>>0)break;do{if(J)r=0;else{if((w|0)==(M|0)){r=1;break}r=(w|0)==(r+-1|0)}}while(0);h=w;w=w+1|0;_=(ie(t[je>>2]|0,w)|0)+g|0;_=(t[Ye>>2]|0)+(_<<1)|0;k=t[e>>2]|0;b=n[_>>1]|0;b=r?b&-1095:b;if((b&20480|0)==4096){h=t[(t[Xe>>2]|0)+((ie(t[Ge>>2]|0,h)|0)+p<<2)>>2]|0;h=(h|0)<0?0-h|0:h;if(T)r=4220+((h&127)<<1)|0;else r=3964+((h>>>$&127)<<1)|0;d=(n[r>>1]|0)+d|0;r=(h&S|0)!=0&1;t[k+100>>2]=k+24+(((b&8192|0)!=0?16:(b&255|0)!=0?15:14)<<2);if(L)ts(k,r);else rs(k,r);n[_>>1]=s[_>>1]|8192}}while(w>>>0<E>>>0);h=t[$e>>2]|0}}while(g>>>0<h>>>0);r=t[Ve>>2]|0;b=h}}while(E>>>0<r>>>0);break}case 2:{D=t[e>>2]|0;N=1<<$+6;h=t[Ve>>2]|0;if(!h)r=0;else{F=D+92|0;H=D+100|0;j=D+96|0;Y=($|0)==0;d=t[$e>>2]|0;r=0;z=0;while(1){if(!d){b=z+4|0;d=0}else{R=z|3;C=z|1;P=C+1|0;O=C+3|0;b=z+4|0;x=z+1|0;L=z+2|0;B=z+3|0;T=0;while(1){do{if(R>>>0<h>>>0){h=t[je>>2]|0;k=T+1|0;_=(ie(h,C)|0)+k|0;d=t[Ye>>2]|0;_=n[d+(_<<1)>>1]|0;if(J){S=n[d+((ie(h,P)|0)+k<<1)>>1]|_;S=S|n[d+((ie(h,R)|0)+k<<1)>>1];h=((S|n[d+((ie(h,O)|0)+k<<1)>>1])&20735)==0&1}else{do{if(!(_&20735)){if(n[d+((ie(h,P)|0)+k<<1)>>1]&20735){h=1;break}if(n[d+((ie(h,R)|0)+k<<1)>>1]&20735){h=1;break}h=(n[d+((ie(h,O)|0)+k<<1)>>1]&20665)!=0}else h=1}while(0);h=h&1^1}if(!h){S=0;h=0;Je=109;break}h=t[Ge>>2]|0;d=t[Xe>>2]|0;S=t[d+((ie(h,z)|0)+T<<2)>>2]|0;do{if(!(((S|0)<0?0-S|0:S)&N)){S=t[d+((ie(h,x)|0)+T<<2)>>2]|0;if(((S|0)<0?0-S|0:S)&N){h=1;break}S=t[d+((ie(h,L)|0)+T<<2)>>2]|0;if(((S|0)<0?0-S|0:S)&N){h=2;break}h=t[d+((ie(h,B)|0)+T<<2)>>2]|0;h=(((h|0)<0?0-h|0:h)&N|0)==0?4:3}else h=0}while(0);t[H>>2]=F;rs(D,(h|0)!=4&1);if((h|0)==4){_=k;break}t[H>>2]=j;rs(D,h>>>1);rs(D,h&1);S=1;Je=109}else{S=0;h=0;Je=109}}while(0);if((Je|0)==109){Je=0;E=h+z|0;f:do{if(E>>>0<b>>>0){A=E;do{h=t[Ve>>2]|0;if(A>>>0>=h>>>0)break f;do{if(J)h=0;else{if((A|0)==(R|0)){h=1;break}h=(A|0)==(h+-1|0)}}while(0);Qe=A;A=A+1|0;w=(ie(t[je>>2]|0,A)|0)+T|0;p=w+1|0;g=t[Ye>>2]|0;M=g+(p<<1)|0;d=(ie(t[Ge>>2]|0,Qe)|0)+T|0;d=(t[Xe>>2]|0)+(d<<2)|0;y=t[e>>2]|0;_=n[M>>1]|0;k=h?_&-1095:_;do{if(!(S&(Qe|0)==(E|0))){if(_&20480)break;t[y+100>>2]=y+24+(a[20267+(k&255|Q)>>0]<<2);Qe=t[d>>2]|0;Qe=(((Qe|0)<0?0-Qe|0:Qe)&N|0)!=0;rs(y,Qe&1);if(Qe)Je=117}else Je=117}while(0);if((Je|0)==117){Je=0;d=t[d>>2]|0;h=(d|0)<0?0-d|0:d;if(Y)h=3708+((h&127)<<1)|0;else h=3452+((h>>>$&127)<<1)|0;r=(n[h>>1]|0)+r|0;Qe=k>>>4&255;t[y+100>>2]=y+24+(a[21291+Qe>>0]<<2);_=d>>>31;rs(y,a[21547+Qe>>0]^_);y=t[je>>2]|0;Qe=g+(p-y<<1)|0;k=g+(y+p<<1)|0;p=g+(p+~y<<1)|0;n[p>>1]=s[p>>1]|2;n[Qe>>1]=n[Qe>>1]|n[3436+(_<<1)>>1];Qe=w+2|0;p=g+(Qe-y<<1)|0;n[p>>1]=s[p>>1]|4;p=g+(w<<1)|0;n[p>>1]=n[p>>1]|n[3436+((_|2)<<1)>>1];n[M>>1]=s[M>>1]|4096;p=g+(Qe<<1)|0;n[p>>1]=n[p>>1]|n[3436+((_|4)<<1)>>1];p=g+(y+w<<1)|0;n[p>>1]=s[p>>1]|1;n[k>>1]=n[k>>1]|n[3436+((_|6)<<1)>>1];Qe=g+(y+Qe<<1)|0;n[Qe>>1]=s[Qe>>1]|8}n[M>>1]=s[M>>1]&49151}while(A>>>0<b>>>0)}}while(0);_=T+1|0}d=t[$e>>2]|0;h=t[Ve>>2]|0;if(_>>>0<d>>>0)T=_;else break}}if(b>>>0<h>>>0)z=b;else break}}if(ee){d=r;break r}cs(ue);d=r;break}default:d=r}}while(0);if(Le)m=+u[xe>>3];else m=1.0;if(K)v=+Ea(se,ae);else v=+Ra(se,ae);v=+(1<<$|0)*(le*(m*v));v=v*(+(d|0)*v*.0001220703125);V=V+v;u[We>>3]=+u[We>>3]+v;do{if(W)Je=137;else{if(($|0)<1&(X|0)==2){Je=137;break}fs(ue);h=q+(i*24|0)+20|0;r=f[h>>0]|1;f[h>>0]=r;h=1}}while(0);do{if((Je|0)==137){r=(t[ne>>2]|0)+-4|0;if((X|0)!=0&($|0)<(r|0))if(G)Je=141;else Je=140;else if(G|((X|0)!=2|($|0)!=(r|0)))Je=141;else Je=140;if((Je|0)==140){Je=0;fs(ue);h=q+(i*24|0)+20|0;r=f[h>>0]|1;f[h>>0]=r;h=1;break}else if((Je|0)==141){Je=0;h=q+(i*24|0)+20|0;r=f[h>>0]&-2;f[h>>0]=r;h=3;break}}}while(0);Y=X+1|0;Qe=(Y|0)==3;X=Qe?0:Y;$=(Qe<<31>>31)+$|0;do{if(($|0)>0&(r&1)!=0)if(fe&(X>>>0<2?($|0)<((t[ne>>2]|0)+-4|0):0)){ns(ue);break}else{os(ue);break}}while(0);u[q+(i*24|0)+8>>3]=V;t[q+(i*24|0)>>2]=(es(ue)|0)+h;if(!Z)as(ue);i=i+1|0;if(($|0)<=-1)break i;else r=d}}else i=0}while(0);do{if(!(oe&16)){if(oe&1)break;fs(ue)}else us(ue)}while(0);k=ce+(de*52|0)+48|0;t[k>>2]=i;if(i){d=ce+(de*52|0)+8|0;_=0;do{b=t[d>>2]|0;r=b+(_*24|0)|0;Qe=t[r>>2]|0;if(Qe>>>0>(es(ue)|0)>>>0){i=es(ue)|0;t[r>>2]=i}else i=t[r>>2]|0;do{if(i>>>0>1){h=i+-1|0;if((f[(t[te>>2]|0)+h>>0]|0)!=-1)break;t[r>>2]=h;i=h}}while(0);if(!_)r=0;else r=t[(t[d>>2]|0)+((_+-1|0)*24|0)>>2]|0;t[b+(_*24|0)+16>>2]=i-r;_=_+1|0}while(_>>>0<(t[k>>2]|0)>>>0)}de=de+1|0}while(de>>>0<(ie(t[_e>>2]|0,t[be>>2]|0)|0)>>>0);i=t[Se>>2]|0;h=t[Ee>>2]|0}ke=ke+1|0}while(ke>>>0<(ie(i,h)|0)>>>0);r=t[Pe>>2]|0}Ae=Ae+1|0}while(Ae>>>0<r>>>0);i=t[Fe>>2]|0}Ie=Ie+1|0}while(Ie>>>0<i>>>0);i=t[Ze>>2]|0}He=He+1|0;if(He>>>0>=i>>>0){i=1;Je=173;break}}if((Je|0)==173)return i|0;return 0}function Ya(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0;a=ie(r,i)|0;if(!(t[e+40>>2]|0)){s=e+24|0;l=e+8|0;f=t[l>>2]|0;do{if(a>>>0>(t[s>>2]|0)>>>0){Un(f);n=a<<2;f=Hn(n)|0;t[l>>2]=f;if(!f){i=0;return i|0}else{t[s>>2]=a;break}}else n=a<<2}while(0);xl(f|0,0,n|0)|0}a=i+2|0;t[e+32>>2]=a;a=ie(r+2|0,a)|0;s=e+28|0;l=e+12|0;f=t[l>>2]|0;do{if(a>>>0>(t[s>>2]|0)>>>0){Un(f);n=a<<1;f=Hn(n)|0;t[l>>2]=f;if(!f){i=0;return i|0}else{t[s>>2]=a;break}}else n=a<<1}while(0);xl(f|0,0,n|0)|0;t[e+16>>2]=i;t[e+20>>2]=r;i=1;return i|0}function qa(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var o=0,u=0,c=0,h=0;o=t[e>>2]|0;c=n[i>>1]|0;h=c&255;if(!((h|0)!=0&(c&20480|0)==0))return;u=o+100|0;t[u>>2]=o+24+(a[20267+(h|f<<8)>>0]<<2);if(ds(o)|0){f=c>>>4&255;t[u>>2]=o+24+(a[21291+f>>0]<<2);c=ds(o)|0;f=a[21547+f>>0]|0;h=f^c;t[r>>2]=(c|0)!=(f|0)?0-l|0:l;e=t[e+32>>2]|0;l=i+(0-e<<1)|0;f=i+(e<<1)|0;r=i+(~e<<1)|0;n[r>>1]=s[r>>1]|2;n[l>>1]=n[l>>1]|n[3436+(h<<1)>>1];l=i+(1-e<<1)|0;n[l>>1]=s[l>>1]|4;l=i+-2|0;n[l>>1]=n[l>>1]|n[3436+(h+2<<1)>>1];n[i>>1]=s[i>>1]|4096;l=i+2|0;n[l>>1]=n[l>>1]|n[3436+(h+4<<1)>>1];l=i+(e+-1<<1)|0;n[l>>1]=s[l>>1]|1;n[f>>1]=n[f>>1]|n[3436+(h+6<<1)>>1];e=i+(e+1<<1)|0;n[e>>1]=s[e>>1]|8}n[i>>1]=s[i>>1]|16384;return}function $a(e,i,r,f,l){e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;var o=0,u=0,c=0;o=t[e>>2]|0;c=n[i>>1]|0;if(c&20480){e=n[i>>1]|0;e=e&65535;e=e&49151;e=e&65535;n[i>>1]=e;return}u=o+100|0;t[u>>2]=o+24+(a[20267+(c&255|f<<8)>>0]<<2);if(!(ds(o)|0)){e=n[i>>1]|0;e=e&65535;e=e&49151;e=e&65535;n[i>>1]=e;return}f=c>>>4&255;t[u>>2]=o+24+(a[21291+f>>0]<<2);u=ds(o)|0;f=a[21547+f>>0]|0;c=f^u;t[r>>2]=(u|0)!=(f|0)?0-l|0:l;e=t[e+32>>2]|0;l=i+(0-e<<1)|0;f=i+(e<<1)|0;r=i+(~e<<1)|0;n[r>>1]=s[r>>1]|2;n[l>>1]=n[l>>1]|n[3436+(c<<1)>>1];l=i+(1-e<<1)|0;n[l>>1]=s[l>>1]|4;l=i+-2|0;n[l>>1]=n[l>>1]|n[3436+(c+2<<1)>>1];n[i>>1]=s[i>>1]|4096;l=i+2|0;n[l>>1]=n[l>>1]|n[3436+(c+4<<1)>>1];l=i+(e+-1<<1)|0;n[l>>1]=s[l>>1]|1;n[f>>1]=n[f>>1]|n[3436+(c+6<<1)>>1];e=i+(e+1<<1)|0;n[e>>1]=s[e>>1]|8;e=n[i>>1]|0;e=e&65535;e=e&49151;e=e&65535;n[i>>1]=e;return}function Va(e,i,r,f,s,l,o,u,h,d,b,_){e=e|0;i=i|0;r=r|0;f=f|0;s=s|0;l=l|0;o=o|0;u=u|0;h=h|0;d=d|0;b=b|0;_=_|0;var k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,O=0,x=0,L=0;L=c;c=c+16|0;x=L;t[x>>2]=0;k=t[e>>2]|0;R=t[e+4>>2]|0;e=t[R+76>>2]|0;P=e+(i*5640|0)|0;m=(n[R>>1]|0)==4?2:1;v=R+80|0;if(!(t[v>>2]|0))w=1;else w=t[k+16>>2]|0;O=(t[e+(i*5640|0)+420>>2]|0)+1|0;C=yr(k,R,i,_)|0;if(!C){i=0;c=L;return i|0}t[l>>2]=0;e:do{if(!_){if(w){e=0;i:while(1){_=0;b=C;k=0;while(1){Mr(C,R,i,k,e,d,0);if((t[b+80>>2]|0)==-1){e=9;break i}h=b+36|0;r:while(1){do{if(!(Er(b)|0))break r}while((t[h>>2]|0)>>>0>=f>>>0);t[x>>2]=0;if(!(Wa(i,r,P,b,s,x,o,u)|0)){e=13;break i}T=t[x>>2]|0;t[l>>2]=(t[l>>2]|0)+T;o=o-T|0;_=T+_|0;s=s+T|0}T=t[v>>2]|0;if((T|0)!=0&_>>>0>T>>>0){e=17;break i}k=k+1|0;if(k>>>0<m>>>0)b=b+232|0;else break}e=e+1|0;if(e>>>0>=w>>>0)break e}if((e|0)==9){gr(C,O);i=0;c=L;return i|0}else if((e|0)==13){gr(C,O);i=0;c=L;return i|0}else if((e|0)==17){gr(C,O);i=0;c=L;return i|0}}}else{Mr(C,R,i,b,h,d,_);E=C+(b*232|0)|0;if((t[C+(b*232|0)+80>>2]|0)==-1){gr(C,O);i=0;c=L;return i|0}d=C+(b*232|0)+36|0;p=(u|0)==0;g=r+840|0;y=u+12|0;M=u+8|0;A=u+88|0;v=R+93|0;m=e+(i*5640|0)+5636|0;while(1){do{if(!(Er(E)|0))break e}while((t[d>>2]|0)>>>0>=f>>>0);t[x>>2]=0;if(!(Wa(i,r,P,E,s,x,o,u)|0))break;w=t[x>>2]|0;s=s+w|0;o=o-w|0;t[l>>2]=(t[l>>2]|0)+w;if(!p){if(!(t[y>>2]|0))e=t[M>>2]|0;else{k=t[A>>2]|0;e=t[M>>2]|0;b=t[k+(i*592|0)+548>>2]|0;_=b+(e<<5)|0;if(!e){h=(t[k+(i*592|0)+12>>2]|0)+1|0;k=((h|0)<0)<<31>>31;R=_;t[R>>2]=h;t[R+4>>2]=k}else{if((((a[m>>0]|0)>>>2|(a[v>>0]|0)>>>3)&1)!=0?(T=_,S=t[T>>2]|0,T=t[T+4>>2]|0,!((S|0)==0&(T|0)==0)):0){h=S;k=T}else{h=b+(e+-1<<5)+16|0;h=Bl(t[h>>2]|0,t[h+4>>2]|0,1,0)|0;k=I}R=_;t[R>>2]=h;t[R+4>>2]=k}_=Bl(h|0,k|0,-1,-1)|0;h=I;w=Bl(_|0,h|0,w|0,0)|0;R=b+(e<<5)+16|0;t[R>>2]=w;t[R+4>>2]=I;R=b+(e<<5)+8|0;w=R;w=Bl(_|0,h|0,t[w>>2]|0,t[w+4>>2]|0)|0;t[R>>2]=w;t[R+4>>2]=I}t[M>>2]=e+1}t[g>>2]=(t[g>>2]|0)+1}gr(C,O);i=0;c=L;return i|0}}while(0);gr(C,O);i=1;c=L;return i|0}function Xa(e,i,r,f,n,a,s,l){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;a=a|0;s=s|0;l=l|0;var o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0,V=0,X=0,G=0,K=0,W=0,Z=0,J=0,Q=0;J=c;c=c+112|0;G=J+64|0;K=J+32|0;q=J;Y=J+96|0;j=J+92|0;o=t[e>>2]|0;N=e+4|0;Z=t[N>>2]|0;s=t[Z+76>>2]|0;H=s+(i*5640|0)|0;U=s+(i*5640|0)+420|0;W=(t[U>>2]|0)+1|0;Z=pr(o,Z,i)|0;if(!Z){Q=0;c=J;return Q|0}F=o+16|0;D=s+(i*5640|0)+12|0;z=r+20|0;B=o+24|0;i=a;e=f;x=Z;L=0;e:while(1){if((t[x+80>>2]|0)==-1){Q=4;break}s=Nn(t[F>>2]<<2)|0;if(!s){Q=6;break}xl(s|0,1,t[F>>2]<<2|0)|0;if(Er(x)|0){a=x+24|0;r=x+28|0;O=x+36|0;o=x+32|0;I=i;P=e;while(1){if((t[D>>2]|0)>>>0>(t[O>>2]|0)>>>0){i=t[a>>2]|0;e=t[z>>2]|0;if((t[r>>2]|0)>>>0<(t[e+(i*52|0)+20>>2]|0)>>>0){t[s+(i<<2)>>2]=0;C=t[N>>2]|0;t[j>>2]=0;if(!(Za(C,e,H,x,Y,P,j,I,l)|0)){Q=45;break e}R=t[j>>2]|0;if(!(t[Y>>2]|0))e=R;else{T=I-R|0;E=P+R|0;t[j>>2]=0;i=t[r>>2]|0;u=t[(t[z>>2]|0)+((t[a>>2]|0)*52|0)+24>>2]|0;M=u+(i*136|0)+24|0;e=t[M>>2]|0;i:do{if(!e){e=E;Q=43}else{A=P+I|0;h=e;C=0;y=u+(i*136|0)+28|0;u=E;r:while(1){e=t[o>>2]|0;i=t[y+20>>2]|0;if(((t[y+8>>2]|0)!=(t[y>>2]|0)?(t[y+12>>2]|0)!=(t[y+4>>2]|0):0)?(X=ie(t[i+(e*40|0)+20>>2]|0,t[i+(e*40|0)+16>>2]|0)|0,(X|0)!=0):0){S=0;e=t[i+(e*40|0)+24>>2]|0;_=u;while(1){p=e+40|0;if(!(t[p>>2]|0))i=_;else{g=e+44|0;i=t[g>>2]|0;do{if(!i){b=t[e+4>>2]|0;t[g>>2]=1;t[e+36>>2]=0}else{u=i+-1|0;h=t[e+4>>2]|0;if((t[h+(u<<5)+8>>2]|0)!=(t[h+(u<<5)+20>>2]|0)){b=h+(u<<5)|0;break}t[g>>2]=i+1;b=h+(i<<5)|0}}while(0);v=e+36|0;i=e+32|0;m=_;d=b+28|0;u=t[d>>2]|0;if((u+m|0)>>>0<m>>>0|(_+u|0)>>>0>A>>>0){i=C;e=S;break r}h=t[v>>2]|0;m=_;w=b;while(1){b=u+h|0;if(b>>>0<h>>>0){i=C;e=S;Q=29;break e}_=t[e>>2]|0;if(b>>>0>(t[i>>2]|0)>>>0){u=jn(_,b)|0;if(!u){Q=32;break e}h=t[v>>2]|0;k=t[d>>2]|0;t[i>>2]=k+h;t[e>>2]=u;_=u;u=k}Dl(_+h|0,m|0,u|0)|0;u=w+8|0;h=t[u>>2]|0;if(!h){t[w>>2]=e;b=t[v>>2]|0;t[w+4>>2]=b}else b=t[v>>2]|0;_=t[d>>2]|0;k=m;m=m+_|0;d=t[w+24>>2]|0;h=d+h|0;t[u>>2]=h;u=t[p>>2]|0;t[p>>2]=u-d;t[w+12>>2]=h;h=_+b|0;t[v>>2]=h;b=w+16|0;t[b>>2]=(t[b>>2]|0)+_;if((u|0)==(d|0)){i=m;break}t[g>>2]=(t[g>>2]|0)+1;b=m;d=w+60|0;u=t[d>>2]|0;if((u+b|0)>>>0<b>>>0?1:(k+(u+_)|0)>>>0>A>>>0){i=C;e=S;break r}else w=w+32|0}t[e+48>>2]=t[g>>2]}S=S+1|0;if(S>>>0>=X>>>0){e=i;break}else{e=e+56|0;_=i}}i=t[M>>2]|0}else{i=h;e=u}C=C+1|0;if(C>>>0>=i>>>0){Q=43;break i}else{h=i;y=y+36|0;u=e}}E=t[o>>2]|0;S=t[r>>2]|0;C=t[a>>2]|0;t[q>>2]=u;t[q+4>>2]=T;t[q+8>>2]=e;t[q+12>>2]=E;t[q+16>>2]=i;t[q+20>>2]=S;t[q+24>>2]=C;jf(l,2,21803,q)|0;e=t[j>>2]|0}}while(0);if((Q|0)==43){Q=0;e=e-E|0;t[j>>2]=e}e=e+R|0}u=t[a>>2]|0;R=t[r>>2]|0;i=(t[B>>2]|0)+(u*52|0)+36|0;C=t[i>>2]|0;t[i>>2]=R>>>0>C>>>0?R:C;i=e}else Q=47}else{e=t[z>>2]|0;Q=47}if((Q|0)==47){Q=0;C=t[N>>2]|0;t[j>>2]=0;if(!(Za(C,e,H,x,Y,P,j,I,l)|0)){Q=69;break e}p=t[j>>2]|0;if(!(t[Y>>2]|0))e=p;else{u=I-p|0;y=t[r>>2]|0;M=t[a>>2]|0;e=t[(t[z>>2]|0)+(M*52|0)+24>>2]|0;t[j>>2]=0;v=t[e+(y*136|0)+24>>2]|0;if(!v)e=0;else{g=t[o>>2]|0;i=0;m=e+(y*136|0)+28|0;while(1){h=t[m+20>>2]|0;if(((t[m+8>>2]|0)!=(t[m>>2]|0)?(t[m+12>>2]|0)!=(t[m+4>>2]|0):0)?($=ie(t[h+(g*40|0)+20>>2]|0,t[h+(g*40|0)+16>>2]|0)|0,($|0)!=0):0){e=0;w=t[h+(g*40|0)+24>>2]|0;while(1){_=w+40|0;i:do{if(t[_>>2]|0){k=w+44|0;h=t[k>>2]|0;do{if(!h){b=t[w+4>>2]|0;t[k>>2]=1;t[w+36>>2]=0}else{d=h+-1|0;b=t[w+4>>2]|0;if((t[b+(d<<5)+8>>2]|0)!=(t[b+(d<<5)+20>>2]|0)){b=b+(d<<5)|0;break}t[k>>2]=h+1;b=b+(h<<5)|0}}while(0);C=t[j>>2]|0;h=t[b+28>>2]|0;d=h+C|0;if(d>>>0<C>>>0|d>>>0>u>>>0){a=g;r=y;o=M;Q=65;break e}while(1){t[j>>2]=d;C=t[b+24>>2]|0;R=b+8|0;t[R>>2]=(t[R>>2]|0)+C;R=t[_>>2]|0;t[_>>2]=R-C;if((R|0)==(C|0))break i;t[k>>2]=(t[k>>2]|0)+1;C=t[j>>2]|0;h=t[b+60>>2]|0;d=h+C|0;if(d>>>0<C>>>0|d>>>0>u>>>0){a=g;r=y;o=M;Q=65;break e}else b=b+32|0}}}while(0);e=e+1|0;if(e>>>0>=$>>>0)break;else w=w+56|0}}i=i+1|0;if(i>>>0>=v>>>0)break;else m=m+36|0}e=t[j>>2]|0}e=e+p|0}u=t[a>>2]|0;i=e}if((t[s+(u<<2)>>2]|0)!=0?(V=(t[B>>2]|0)+(u*52|0)+36|0,(t[V>>2]|0)==0):0)t[V>>2]=(t[(t[z>>2]|0)+(u*52|0)+20>>2]|0)+-1;e=P+i|0;i=I-i|0;if(!(Er(x)|0))break;else{I=i;P=e}}}Yn(s);L=L+1|0;if(L>>>0>(t[U>>2]|0)>>>0){s=e;Q=75;break}else x=x+232|0}if((Q|0)==4){gr(Z,W);Q=0;c=J;return Q|0}else if((Q|0)==6){gr(Z,W);Q=0;c=J;return Q|0}else if((Q|0)==29){n=t[o>>2]|0;f=t[r>>2]|0;G=t[a>>2]|0;t[K>>2]=u;t[K+4>>2]=h;t[K+8>>2]=~u;t[K+12>>2]=e;t[K+16>>2]=n;t[K+20>>2]=i;t[K+24>>2]=f;t[K+28>>2]=G;jf(l,1,21888,K)|0;Q=45}else if((Q|0)==32){Yn(t[e>>2]|0);t[e>>2]=0;t[i>>2]=0;Q=45}else if((Q|0)==65){t[G>>2]=h;t[G+4>>2]=u;t[G+8>>2]=e;t[G+12>>2]=a;t[G+16>>2]=i;t[G+20>>2]=r;t[G+24>>2]=o;jf(l,1,21987,G)|0;Q=69}else if((Q|0)==75){gr(Z,W);t[n>>2]=s-f;Q=1;c=J;return Q|0}if((Q|0)==45){gr(Z,W);Yn(s);Q=0;c=J;return Q|0}else if((Q|0)==69){gr(Z,W);Yn(s);Q=0;c=J;return Q|0}return 0}function Ga(e,i){e=e|0;i=i|0;var r=0;r=Fn(1,8)|0;if(!r){e=0;return e|0}t[r>>2]=e;t[r+4>>2]=i;e=r;return e|0}function Ka(e){e=e|0;if(!e)return;Yn(e);return}function Wa(e,i,r,n,a,s,l,o){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;var c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0.0,B=0,z=0;m=t[n+28>>2]|0;B=t[n+32>>2]|0;z=t[n+36>>2]|0;w=t[(t[i+20>>2]|0)+((t[n+24>>2]|0)*52|0)+24>>2]|0;if(!(t[r>>2]&2))O=a;else{f[a>>0]=-1;f[a+1>>0]=-111;f[a+2>>0]=0;f[a+3>>0]=4;O=i+840|0;f[a+4>>0]=(t[O>>2]|0)>>>8;f[a+5>>0]=t[O>>2];l=l+-6|0;O=a+6|0}if((z|0)==0?(k=w+(m*136|0)+24|0,(t[k>>2]|0)!=0):0){b=w+(m*136|0)+28|0;_=0;while(1){n=t[b+20>>2]|0;Kr(t[n+(B*40|0)+32>>2]|0);h=n+(B*40|0)+36|0;Kr(t[h>>2]|0);d=ie(t[n+(B*40|0)+20>>2]|0,t[n+(B*40|0)+16>>2]|0)|0;if(d){n=n+(B*40|0)+24|0;i=b+28|0;c=0;do{x=t[n>>2]|0;t[x+(c*52|0)+40>>2]=0;na(t[h>>2]|0,c,(t[i>>2]|0)-(t[x+(c*52|0)+28>>2]|0)|0);c=c+1|0}while((c|0)!=(d|0))}_=_+1|0;if(_>>>0>=(t[k>>2]|0)>>>0)break;else b=b+36|0}}P=da()|0;if(!P){s=0;return s|0}ka(P,O,l);ma(P,1,1);I=w+(m*136|0)+28|0;x=w+(m*136|0)+24|0;if(t[x>>2]|0){S=z+1|0;R=I;C=0;while(1){d=t[R+20>>2]|0;T=ie(t[d+(B*40|0)+20>>2]|0,t[d+(B*40|0)+16>>2]|0)|0;b=d+(B*40|0)+24|0;n=(T|0)==0;if(!n){i=d+(B*40|0)+32|0;c=t[b>>2]|0;h=0;while(1){if((t[c+40>>2]|0)==0?(t[(t[c+4>>2]|0)+(z*24|0)>>2]|0)!=0:0)na(t[i>>2]|0,h,z);h=h+1|0;if((h|0)==(T|0))break;else c=c+52|0}if(!n){E=d+(B*40|0)+32|0;A=d+(B*40|0)+36|0;y=t[b>>2]|0;M=0;while(1){n=(t[y+4>>2]|0)+(z*24|0)|0;g=y+40|0;if(!(t[g>>2]|0))ta(P,t[E>>2]|0,M,S);else ma(P,(t[n>>2]|0)!=0&1,1);i=t[n>>2]|0;if(i){if(!(t[g>>2]|0)){t[y+32>>2]=3;ta(P,t[A>>2]|0,M,999);i=t[n>>2]|0}e:do{switch(i|0){case 1:{ma(P,0,1);break}case 2:{ma(P,2,2);break}default:{if(i>>>0<6){ma(P,i+-3|12,4);break e}if(i>>>0<37){ma(P,i+-6|480,9);break e}if(i>>>0<165)ma(P,i+-37|65408,16)}}}while(0);b=t[g>>2]|0;i=t[n>>2]|0;p=i+b|0;v=y+8|0;if(b>>>0<p>>>0){m=y+32|0;k=b+-1+i|0;h=0;d=0;c=0;w=(t[v>>2]|0)+(b*24|0)|0;while(1){c=c+1|0;d=(t[w+16>>2]|0)+d|0;if((f[w+20>>0]&1)!=0|(b|0)==(k|0)){if((d|0)>1){i=0;do{d=d>>1;i=i+1|0}while((d|0)>1)}else i=0;_=t[m>>2]|0;if((c|0)>1){d=0;do{c=c>>1;d=d+1|0}while((c|0)>1);c=d}else c=0;d=i+1-_-c|0;h=(h|0)>(d|0)?h:d;d=0;c=0}b=b+1|0;if((b|0)==(p|0))break;else w=w+24|0}if((h|0)>0){i=h;while(1){ma(P,1,1);if((i|0)>1)i=i+-1|0;else{i=d;break}}}else i=d}else{h=0;i=0;c=0}ma(P,0,1);k=y+32|0;t[k>>2]=(t[k>>2]|0)+h;h=t[g>>2]|0;if(h>>>0<p>>>0){_=(t[v>>2]|0)+(h*24|0)|0;while(1){c=c+1|0;d=(t[_+16>>2]|0)+i|0;if((f[_+20>>0]&1)==0?(h|0)!=((t[g>>2]|0)+-1+(t[n>>2]|0)|0):0)i=d;else{b=t[k>>2]|0;if((c|0)>1){i=0;do{c=c>>1;i=i+1|0}while((c|0)>1)}else i=0;ma(P,d,i+b|0);i=0;c=0}h=h+1|0;if((h|0)==(p|0))break;else _=_+24|0}}}M=M+1|0;if((M|0)==(T|0))break;else y=y+52|0}}}C=C+1|0;if(C>>>0>=(t[x>>2]|0)>>>0)break;else R=R+36|0}}if(!(pa(P)|0)){ba(P);s=0;return s|0}i=_a(P)|0;n=O+i|0;l=l-i|0;ba(P);if(t[r>>2]&4){f[n>>0]=-1;f[O+(i+1)>>0]=-110;l=l+-2|0;n=O+(i+2)|0}v=(o|0)!=0;if(v?(t[o+12>>2]|0)!=0:0){O=n-a|0;r=(t[(t[o+88>>2]|0)+(e*592|0)+548>>2]|0)+(t[o+8>>2]<<5)+8|0;t[r>>2]=O;t[r+4>>2]=((O|0)<0)<<31>>31}i=t[x>>2]|0;e:do{if(i){p=o+12|0;g=o+8|0;y=o+88|0;w=I;m=0;i:while(1){c=t[w+20>>2]|0;k=ie(t[c+(B*40|0)+20>>2]|0,t[c+(B*40|0)+16>>2]|0)|0;c=t[c+(B*40|0)+24>>2]|0;if(k){if(v){_=0;while(1){b=t[c+4>>2]|0;i=b+(z*24|0)|0;if(t[i>>2]|0){h=b+(z*24|0)+4|0;d=t[h>>2]|0;if(d>>>0>l>>>0){n=0;l=81;break i}Dl(n|0,t[b+(z*24|0)+16>>2]|0,d|0)|0;r=c+40|0;t[r>>2]=(t[r>>2]|0)+(t[i>>2]|0);r=t[h>>2]|0;n=n+r|0;l=l-r|0;if((t[p>>2]|0)!=0?(r=(t[(t[y>>2]|0)+(e*592|0)+548>>2]|0)+(t[g>>2]<<5)+24|0,L=+u[b+(z*24|0)+8>>3]+ +u[r>>3],u[r>>3]=L,+u[o>>3]<L):0)u[o>>3]=L}_=_+1|0;if(_>>>0>=k>>>0)break;else c=c+52|0}}else{_=0;while(1){i=t[c+4>>2]|0;h=i+(z*24|0)|0;if(t[h>>2]|0){d=i+(z*24|0)+4|0;b=t[d>>2]|0;if(b>>>0>l>>>0){n=0;l=81;break i}Dl(n|0,t[i+(z*24|0)+16>>2]|0,b|0)|0;r=c+40|0;t[r>>2]=(t[r>>2]|0)+(t[h>>2]|0);r=t[d>>2]|0;l=l-r|0;n=n+r|0}_=_+1|0;if(_>>>0>=k>>>0)break;else c=c+52|0}}i=t[x>>2]|0}m=m+1|0;if(m>>>0>=i>>>0)break e;else w=w+36|0}if((l|0)==81)return n|0}}while(0);t[s>>2]=n-a+(t[s>>2]|0);s=1;return s|0}function Za(e,i,r,n,a,s,l,o,u){e=e|0;i=i|0;r=r|0;n=n|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;var h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0;F=c;c=c+64|0;D=F+40|0;z=F+32|0;M=F+24|0;y=F+16|0;p=F+8|0;v=F;g=F+48|0;N=F+44|0;t[N>>2]=s;E=t[n+28>>2]|0;B=n+24|0;A=t[i+((t[B>>2]|0)*52|0)+24>>2]|0;x=n+36|0;if((t[x>>2]|0)==0?(m=A+(E*136|0)+24|0,h=t[m>>2]|0,(h|0)!=0):0){w=n+32|0;_=0;k=A+(E*136|0)+28|0;while(1){i=t[w>>2]|0;d=t[k+20>>2]|0;if((t[k+8>>2]|0)!=(t[k>>2]|0)?(t[k+12>>2]|0)!=(t[k+4>>2]|0):0){Kr(t[d+(i*40|0)+32>>2]|0);Kr(t[d+(i*40|0)+36>>2]|0);h=ie(t[d+(i*40|0)+20>>2]|0,t[d+(i*40|0)+16>>2]|0)|0;if(h){b=0;i=t[d+(i*40|0)+24>>2]|0;while(1){t[i+44>>2]=0;t[i+48>>2]=0;b=b+1|0;if((b|0)==(h|0))break;else i=i+56|0}}h=t[m>>2]|0}_=_+1|0;if(_>>>0>=h>>>0)break;else k=k+36|0}}do{if(t[r>>2]&2){if(o>>>0<6){jf(u,2,22072,v)|0;break}i=t[N>>2]|0;if((f[i>>0]|0)==-1?(f[i+1>>0]|0)==-111:0){t[N>>2]=i+6;break}jf(u,2,22114,p)|0}}while(0);O=da()|0;if(!O){s=0;c=F;return s|0}do{if(!(f[e+96>>0]&1))if(!(f[r+5636>>0]&2)){P=t[N>>2]|0;t[g>>2]=s+o-P;I=N;break}else{I=r+5168|0;P=t[I>>2]|0;g=r+5180|0;break}else{I=e+40|0;P=t[I>>2]|0;g=e+44|0}}while(0);wa(O,P,t[g>>2]|0);if(!(va(O,1)|0)){ga(O)|0;h=_a(O)|0;i=P+h|0;ba(O);do{if(t[r>>2]&4){if(((t[g>>2]|0)-i+(t[I>>2]|0)|0)>>>0<2){jf(u,2,22135,y)|0;break}if((f[i>>0]|0)==-1?(f[P+(h+1)>>0]|0)==-110:0){i=P+(h+2)|0;break}jf(u,2,22177,M)|0}}while(0);t[g>>2]=(t[g>>2]|0)+((t[I>>2]|0)-i);t[I>>2]=i;t[a>>2]=0;t[l>>2]=(t[N>>2]|0)-s;s=1;c=F;return s|0}C=A+(E*136|0)+24|0;i=t[C>>2]|0;e:do{if(i){T=n+32|0;R=r+5584|0;S=0;A=A+(E*136|0)+28|0;i:while(1){h=t[T>>2]|0;d=t[A+20>>2]|0;if(((t[A+8>>2]|0)!=(t[A>>2]|0)?(t[A+12>>2]|0)!=(t[A+4>>2]|0):0)?(L=ie(t[d+(h*40|0)+20>>2]|0,t[d+(h*40|0)+16>>2]|0)|0,(L|0)!=0):0){e=d+(h*40|0)+32|0;n=d+(h*40|0)+36|0;y=A+28|0;M=0;o=t[d+(h*40|0)+24>>2]|0;while(1){h=o+44|0;if(!(t[h>>2]|0))i=aa(O,t[e>>2]|0,M,(t[x>>2]|0)+1|0)|0;else i=va(O,1)|0;r:do{if(!i)t[o+40>>2]=0;else{if(!(t[h>>2]|0)){i=0;while(1)if(!(aa(O,t[n>>2]|0,M,i)|0))i=i+1|0;else break;t[o+24>>2]=1-i+(t[y>>2]|0);t[o+28>>2]=3}do{if(va(O,1)|0)if(va(O,1)|0){i=va(O,2)|0;if((i|0)!=3){i=i+3|0;break}i=va(O,5)|0;if((i|0)==31){i=(va(O,7)|0)+37|0;break}else{i=i+6|0;break}}else i=2;else i=1}while(0);v=o+40|0;t[v>>2]=i;i=0;while(1)if(!(va(O,1)|0))break;else i=i+1|0;p=o+28|0;t[p>>2]=(t[p>>2]|0)+i;h=t[h>>2]|0;do{if(!h){d=t[(t[R>>2]|0)+((t[B>>2]|0)*1080|0)+16>>2]|0;i=o+52|0;if(!(t[i>>2]|0)){t[i>>2]=10;b=o+4|0;h=jn(t[b>>2]|0,320)|0;if(!h){h=i;d=b;i=b;b=66;break i}t[b>>2]=h}else h=t[o+4>>2]|0;t[h>>2]=0;t[h+4>>2]=0;t[h+8>>2]=0;t[h+12>>2]=0;t[h+16>>2]=0;t[h+20>>2]=0;t[h+24>>2]=0;t[h+28>>2]=0;if(d&4){t[h+20>>2]=1;h=0;break}h=h+20|0;if(!(d&1)){t[h>>2]=109;h=0;break}else{t[h>>2]=10;h=0;break}}else{k=h+-1|0;w=o+4|0;d=t[w>>2]|0;if((t[d+(k<<5)+8>>2]|0)!=(t[d+(k<<5)+20>>2]|0)){i=o+52|0;h=k;break}_=t[(t[R>>2]|0)+((t[B>>2]|0)*1080|0)+16>>2]|0;i=o+52|0;b=t[i>>2]|0;if((h+1|0)>>>0>b>>>0){E=b+10|0;t[i>>2]=E;d=jn(d,E<<5)|0;if(!d){d=w;h=i;i=w;b=77;break i}t[w>>2]=d}E=d+(h<<5)|0;t[E>>2]=0;t[E+4>>2]=0;t[E+8>>2]=0;t[E+12>>2]=0;t[E+16>>2]=0;t[E+20>>2]=0;t[E+24>>2]=0;t[E+28>>2]=0;if(_&4){t[d+(h<<5)+20>>2]=1;break}if(!(_&1)){t[d+(h<<5)+20>>2]=109;break}else{E=t[d+(k<<5)+20>>2]|0;t[d+(h<<5)+20>>2]=(E|0)==1|(E|0)==10?2:1;break}}}while(0);m=o+4|0;k=t[v>>2]|0;while(1){_=t[m>>2]|0;d=(t[_+(h<<5)+20>>2]|0)-(t[_+(h<<5)+8>>2]|0)|0;d=(d|0)<(k|0)?d:k;t[_+(h<<5)+24>>2]=d;_=t[p>>2]|0;if(d>>>0>1){b=0;while(1){b=b+1|0;if(d>>>0>3)d=d>>>1;else{d=b;break}}}else d=0;_=va(O,d+_|0)|0;d=t[m>>2]|0;t[d+(h<<5)+28>>2]=_;_=k-(t[d+(h<<5)+24>>2]|0)|0;if((_|0)<=0)break r;k=h+1|0;w=t[(t[R>>2]|0)+((t[B>>2]|0)*1080|0)+16>>2]|0;b=t[i>>2]|0;if((h+2|0)>>>0>b>>>0){E=b+10|0;t[i>>2]=E;d=jn(d,E<<5)|0;if(!d){d=m;h=m;b=90;break i}t[m>>2]=d}E=d+(k<<5)|0;t[E>>2]=0;t[E+4>>2]=0;t[E+8>>2]=0;t[E+12>>2]=0;t[E+16>>2]=0;t[E+20>>2]=0;t[E+24>>2]=0;t[E+28>>2]=0;if(w&4){t[d+(k<<5)+20>>2]=1;h=k;k=_;continue}if(!(w&1)){t[d+(k<<5)+20>>2]=109;h=k;k=_;continue}else{E=t[d+(h<<5)+20>>2]|0;t[d+(k<<5)+20>>2]=(E|0)==1|(E|0)==10?2:1;h=k;k=_;continue}}}}while(0);M=M+1|0;if(M>>>0>=L>>>0)break;else o=o+56|0}i=t[C>>2]|0}S=S+1|0;if(S>>>0>=i>>>0)break e;else A=A+36|0}if((b|0)==66){Yn(t[i>>2]|0);t[d>>2]=0;t[h>>2]=0;ba(O);s=0;c=F;return s|0}else if((b|0)==77){Yn(t[i>>2]|0);t[d>>2]=0;t[h>>2]=0;ba(O);s=0;c=F;return s|0}else if((b|0)==90){Yn(t[h>>2]|0);t[d>>2]=0;t[i>>2]=0;ba(O);s=0;c=F;return s|0}}}while(0);if(!(ga(O)|0)){ba(O);s=0;c=F;return s|0}h=_a(O)|0;i=P+h|0;ba(O);do{if(t[r>>2]&4){if(((t[g>>2]|0)-i+(t[I>>2]|0)|0)>>>0<2){jf(u,2,22135,z)|0;break}if((f[i>>0]|0)==-1?(f[P+(h+1)>>0]|0)==-110:0){i=P+(h+2)|0;break}jf(u,2,22177,D)|0}}while(0);t[g>>2]=(t[g>>2]|0)+((t[I>>2]|0)-i);t[I>>2]=i;t[a>>2]=1;t[l>>2]=(t[N>>2]|0)-s;s=1;c=F;return s|0}function Ja(){return Nn(104)|0}function Qa(e){e=e|0;if(!e)return;Yn(e);return}function es(e){e=e|0;return(t[e+12>>2]|0)-(t[e+16>>2]|0)|0}function is(e,i){e=e|0;i=i|0;var r=0,n=0;t[e+100>>2]=e+24;t[e+4>>2]=32768;t[e>>2]=0;n=i+-1|0;t[e+12>>2]=n;r=e+8|0;t[r>>2]=12;t[r>>2]=(f[n>>0]|0)==-1?13:12;t[e+16>>2]=i;return}function rs(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0;a=t[e+100>>2]|0;s=t[a>>2]|0;o=(t[s+4>>2]|0)==(i|0);n=t[s>>2]|0;u=e+4|0;i=(t[u>>2]|0)-n|0;t[u>>2]=i;if(!o){if(i>>>0<n>>>0){o=(t[e>>2]|0)+n|0;t[e>>2]=o;n=i;i=o;o=e}else{t[u>>2]=n;i=t[e>>2]|0;o=e}t[a>>2]=t[s+12>>2];l=e+8|0;s=e+12|0;a=i;i=t[l>>2]|0;while(1){n=n<<1;t[u>>2]=n;r=a<<1;t[o>>2]=r;i=i+-1|0;t[l>>2]=i;if(!i){i=t[s>>2]|0;n=f[i>>0]|0;do{if(n<<24>>24!=-1){if(!(r&134217728)){r=i+1|0;t[s>>2]=r;f[r>>0]=a>>>18;r=t[o>>2]&524287;t[o>>2]=r;t[l>>2]=8;i=8;break}f[i>>0]=n+1<<24>>24;i=t[s>>2]|0;if((f[i>>0]|0)==-1){e=t[o>>2]&134217727;t[o>>2]=e;r=i+1|0;t[s>>2]=r;f[r>>0]=e>>>20;r=t[o>>2]&1048575;t[o>>2]=r;t[l>>2]=7;i=7;break}else{r=i+1|0;t[s>>2]=r;f[r>>0]=(t[o>>2]|0)>>>19;r=t[o>>2]&524287;t[o>>2]=r;t[l>>2]=8;i=8;break}}else{r=i+1|0;t[s>>2]=r;f[r>>0]=a>>>19;r=t[o>>2]&1048575;t[o>>2]=r;t[l>>2]=7;i=7}}while(0);n=t[u>>2]|0}if(!(n&32768))a=r;else break}return}if(i&32768){t[e>>2]=(t[e>>2]|0)+n;return}if(i>>>0<n>>>0){t[u>>2]=n;r=t[e>>2]|0;o=e}else{r=(t[e>>2]|0)+n|0;t[e>>2]=r;n=i;o=e}t[a>>2]=t[s+8>>2];l=e+8|0;s=e+12|0;a=r;i=t[l>>2]|0;while(1){n=n<<1;t[u>>2]=n;r=a<<1;t[o>>2]=r;i=i+-1|0;t[l>>2]=i;if(!i){i=t[s>>2]|0;n=f[i>>0]|0;do{if(n<<24>>24!=-1){if(!(r&134217728)){r=i+1|0;t[s>>2]=r;f[r>>0]=a>>>18;r=t[o>>2]&524287;t[o>>2]=r;t[l>>2]=8;i=8;break}f[i>>0]=n+1<<24>>24;i=t[s>>2]|0;if((f[i>>0]|0)==-1){e=t[o>>2]&134217727;t[o>>2]=e;r=i+1|0;t[s>>2]=r;f[r>>0]=e>>>20;r=t[o>>2]&1048575;t[o>>2]=r;t[l>>2]=7;i=7;break}else{r=i+1|0;t[s>>2]=r;f[r>>0]=(t[o>>2]|0)>>>19;r=t[o>>2]&524287;t[o>>2]=r;t[l>>2]=8;i=8;break}}else{r=i+1|0;t[s>>2]=r;f[r>>0]=a>>>19;r=t[o>>2]&1048575;t[o>>2]=r;t[l>>2]=7;i=7}}while(0);n=t[u>>2]|0}if(!(n&32768))a=r;else break}return}function fs(e){e=e|0;var i=0,r=0,n=0,a=0,s=0;s=t[e>>2]|0;n=s|65535;a=e+8|0;n=(n>>>0<((t[e+4>>2]|0)+s|0)>>>0?n:n+-32768|0)<<t[a>>2];t[e>>2]=n;s=e+12|0;i=t[s>>2]|0;r=f[i>>0]|0;do{if(r<<24>>24!=-1){if(!(n&134217728)){i=i+1|0;t[s>>2]=i;f[i>>0]=n>>>19;i=t[e>>2]&524287;t[e>>2]=i;t[a>>2]=8;r=8;break}f[i>>0]=r+1<<24>>24;i=t[s>>2]|0;if((f[i>>0]|0)==-1){r=t[e>>2]&134217727;t[e>>2]=r;i=i+1|0;t[s>>2]=i;f[i>>0]=r>>>20;i=t[e>>2]&1048575;t[e>>2]=i;t[a>>2]=7;r=7;break}else{i=i+1|0;t[s>>2]=i;f[i>>0]=(t[e>>2]|0)>>>19;i=t[e>>2]&524287;t[e>>2]=i;t[a>>2]=8;r=8;break}}else{i=i+1|0;t[s>>2]=i;f[i>>0]=n>>>20;i=t[e>>2]&1048575;t[e>>2]=i;t[a>>2]=7;r=7}}while(0);i=i<<r;t[e>>2]=i;r=t[s>>2]|0;n=f[r>>0]|0;do{if(n<<24>>24!=-1){if(!(i&134217728)){n=r+1|0;t[s>>2]=n;f[n>>0]=i>>>19;t[e>>2]=t[e>>2]&524287;t[a>>2]=8;break}f[r>>0]=n+1<<24>>24;i=t[s>>2]|0;if((f[i>>0]|0)==-1){r=t[e>>2]&134217727;t[e>>2]=r;n=i+1|0;t[s>>2]=n;f[n>>0]=r>>>20;t[e>>2]=t[e>>2]&1048575;t[a>>2]=7;break}else{n=i+1|0;t[s>>2]=n;f[n>>0]=(t[e>>2]|0)>>>19;t[e>>2]=t[e>>2]&524287;t[a>>2]=8;break}}else{n=r+1|0;t[s>>2]=n;f[n>>0]=i>>>20;t[e>>2]=t[e>>2]&1048575;t[a>>2]=7}}while(0);i=t[s>>2]|0;if((f[i>>0]|0)==-1)return;t[s>>2]=i+1;return}function ns(e){e=e|0;t[e>>2]=0;t[e+8>>2]=8;return}function ts(e,i){e=e|0;i=i|0;var r=0,n=0,a=0;r=e+8|0;n=(t[r>>2]|0)+-1|0;t[r>>2]=n;i=(i<<n)+(t[e>>2]|0)|0;t[e>>2]=i;if(n)return;n=e+12|0;a=(t[n>>2]|0)+1|0;t[n>>2]=a;f[a>>0]=i;t[r>>2]=8;t[r>>2]=(f[t[n>>2]>>0]|0)==-1?7:8;t[e>>2]=0;return}function as(e){e=e|0;t[e+28>>2]=1156;t[e+32>>2]=1156;t[e+36>>2]=1156;t[e+40>>2]=1156;t[e+44>>2]=1156;t[e+48>>2]=1156;t[e+52>>2]=1156;t[e+56>>2]=1156;t[e+60>>2]=1156;t[e+64>>2]=1156;t[e+68>>2]=1156;t[e+72>>2]=1156;t[e+76>>2]=1156;t[e+80>>2]=1156;t[e+84>>2]=1156;t[e+88>>2]=1156;t[e+96>>2]=2628;t[e+92>>2]=1252;t[e+24>>2]=1284;return}function ss(e){e=e|0;t[e+24>>2]=1156;t[e+28>>2]=1156;t[e+32>>2]=1156;t[e+36>>2]=1156;t[e+40>>2]=1156;t[e+44>>2]=1156;t[e+48>>2]=1156;t[e+52>>2]=1156;t[e+56>>2]=1156;t[e+60>>2]=1156;t[e+64>>2]=1156;t[e+68>>2]=1156;t[e+72>>2]=1156;t[e+76>>2]=1156;t[e+80>>2]=1156;t[e+84>>2]=1156;t[e+88>>2]=1156;t[e+92>>2]=1156;t[e+96>>2]=1156;return}function ls(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;t[e+24+(i<<2)>>2]=1156+((f<<1)+r<<4);return}function os(e){e=e|0;var i=0,r=0;t[e+100>>2]=e+24;t[e+4>>2]=32768;t[e>>2]=0;i=e+8|0;t[i>>2]=12;r=e+12|0;e=(t[r>>2]|0)+-1|0;t[r>>2]=e;if((f[e>>0]|0)!=-1)return;t[i>>2]=13;return}function us(e){e=e|0;var i=0,r=0,n=0,a=0,s=0,l=0;l=e+8|0;i=t[l>>2]|0;n=12-i|0;if((n|0)>0){a=e+12|0;r=t[e>>2]|0;do{i=r<<i;t[e>>2]=i;t[l>>2]=0;r=t[a>>2]|0;s=f[r>>0]|0;do{if(s<<24>>24!=-1){if(!(i&134217728)){r=r+1|0;t[a>>2]=r;f[r>>0]=i>>>19;r=t[e>>2]&524287;t[e>>2]=r;t[l>>2]=8;i=8;break}f[r>>0]=s+1<<24>>24;i=t[a>>2]|0;if((f[i>>0]|0)==-1){s=t[e>>2]&134217727;t[e>>2]=s;r=i+1|0;t[a>>2]=r;f[r>>0]=s>>>20;r=t[e>>2]&1048575;t[e>>2]=r;t[l>>2]=7;i=7;break}else{r=i+1|0;t[a>>2]=r;f[r>>0]=(t[e>>2]|0)>>>19;r=t[e>>2]&524287;t[e>>2]=r;t[l>>2]=8;i=8;break}}else{r=r+1|0;t[a>>2]=r;f[r>>0]=i>>>20;r=t[e>>2]&1048575;t[e>>2]=r;t[l>>2]=7;i=7}}while(0);n=n-i|0}while((n|0)>0)}else a=e+12|0;i=t[a>>2]|0;r=f[i>>0]|0;if(r<<24>>24==-1)return;n=t[e>>2]|0;if(!(n&134217728)){s=i+1|0;t[a>>2]=s;f[s>>0]=n>>>19;t[e>>2]=t[e>>2]&524287;t[l>>2]=8;return}f[i>>0]=r+1<<24>>24;i=t[a>>2]|0;if((f[i>>0]|0)==-1){n=t[e>>2]&134217727;t[e>>2]=n;s=i+1|0;t[a>>2]=s;f[s>>0]=n>>>20;t[e>>2]=t[e>>2]&1048575;t[l>>2]=7;return}else{s=i+1|0;t[a>>2]=s;f[s>>0]=(t[e>>2]|0)>>>19;t[e>>2]=t[e>>2]&524287;t[l>>2]=8;return}}function cs(e){e=e|0;t[e+100>>2]=e+96;rs(e,1);rs(e,0);rs(e,1);rs(e,0);return}function hs(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,s=0,l=0;t[e+100>>2]=e+24;t[e+16>>2]=i;t[e+20>>2]=i+r;s=e+12|0;t[s>>2]=i;do{if(r){l=a[i>>0]<<16;t[e>>2]=l;n=i+1|0;if((r|0)==1)r=255;else r=a[n>>0]|0;if((f[i>>0]|0)!=-1){t[s>>2]=n;n=l|r<<8;t[e>>2]=n;r=e+8|0;t[r>>2]=8;s=e;l=1;break}if(r>>>0>143){n=l|65280;t[e>>2]=n;r=e+8|0;t[r>>2]=8;s=e;l=1;break}else{t[s>>2]=n;n=l+(r<<9)|0;t[e>>2]=n;r=e+8|0;t[r>>2]=7;s=e;l=0;break}}else{t[e>>2]=16776960;r=e+8|0;t[r>>2]=8;n=16776960;s=e;l=1}}while(0);t[s>>2]=n<<7;t[r>>2]=l;t[e+4>>2]=32768;return 1}function ds(e){e=e|0;var i=0,r=0,n=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0;r=t[e+100>>2]|0;n=t[r>>2]|0;o=t[n>>2]|0;d=e+4|0;l=(t[d>>2]|0)-o|0;t[d>>2]=l;s=t[e>>2]|0;if(s>>>16>>>0<o>>>0){t[d>>2]=o;i=t[n+4>>2]|0;if(l>>>0<o>>>0)t[r>>2]=t[n+8>>2];else{t[r>>2]=t[n+12>>2];i=1-i|0}u=e+8|0;c=e+12|0;h=e+20|0;n=t[u>>2]|0;r=s;do{do{if(!n){s=t[c>>2]|0;n=t[h>>2]|0;if((s|0)==(n|0)){r=r+65280|0;t[e>>2]=r;t[u>>2]=8;n=8;break}l=s+1|0;if((l|0)==(n|0))n=255;else n=a[l>>0]|0;if((f[s>>0]|0)!=-1){t[c>>2]=l;r=r+(n<<8)|0;t[e>>2]=r;t[u>>2]=8;n=8;break}if(n>>>0>143){r=r+65280|0;t[e>>2]=r;t[u>>2]=8;n=8;break}else{t[c>>2]=l;r=r+(n<<9)|0;t[e>>2]=r;t[u>>2]=7;n=7;break}}}while(0);o=o<<1;t[d>>2]=o;r=r<<1;t[e>>2]=r;n=n+-1|0;t[u>>2]=n}while(o>>>0<32768);return i|0}s=s-(o<<16)|0;t[e>>2]=s;if(l&32768){e=t[n+4>>2]|0;return e|0}i=t[n+4>>2]|0;if(o>>>0>l>>>0){t[r>>2]=t[n+12>>2];i=1-i|0}else t[r>>2]=t[n+8>>2];u=e+8|0;c=e+12|0;h=e+20|0;n=t[u>>2]|0;r=s;o=l;do{do{if(!n){s=t[c>>2]|0;n=t[h>>2]|0;if((s|0)==(n|0)){r=r+65280|0;t[e>>2]=r;t[u>>2]=8;n=8;break}l=s+1|0;if((l|0)==(n|0))n=255;else n=a[l>>0]|0;if((f[s>>0]|0)!=-1){t[c>>2]=l;r=r+(n<<8)|0;t[e>>2]=r;t[u>>2]=8;n=8;break}if(n>>>0>143){r=r+65280|0;t[e>>2]=r;t[u>>2]=8;n=8;break}else{t[c>>2]=l;r=r+(n<<9)|0;t[e>>2]=r;t[u>>2]=7;n=7;break}}}while(0);o=o<<1;t[d>>2]=o;r=r<<1;t[e>>2]=r;n=n+-1|0;t[u>>2]=n}while(o>>>0<32768);return i|0}function bs(){return Nn(28)|0}function _s(e){e=e|0;if(!e)return;Yn(e);return}function ks(e,i,r){e=e|0;i=i|0;r=r|0;t[e+20>>2]=i;t[e+8>>2]=r;t[e+12>>2]=0;f[e>>0]=0;t[e+4>>2]=0;return}function ws(e){e=e|0;var i=0,r=0,n=0,a=0,s=0;a=e+4|0;i=t[a>>2]|0;do{if(!i){t[a>>2]=8;r=e+12|0;n=t[r>>2]|0;if((n|0)==(t[e+8>>2]|0)){f[e>>0]=-1;i=8;r=-1;break}if((f[e>>0]|0)==-1){t[a>>2]=7;i=7}else i=8;s=f[(t[e+20>>2]|0)+n>>0]|0;f[e>>0]=s;t[r>>2]=n+1;r=s}else r=f[e>>0]|0}while(0);s=i+-1|0;t[a>>2]=s;return(r&255)>>>s&1|0}function ms(){var e=0;if(!(t[665]|0))e=2712;else e=t[(Ie()|0)+60>>2]|0;return e|0}function vs(e){e=e|0;var i=0,r=0;i=0;while(1){if((a[22198+i>>0]|0)==(e|0)){r=2;break}i=i+1|0;if((i|0)==87){i=87;e=22286;r=5;break}}if((r|0)==2)if(!i)e=22286;else{e=22286;r=5}if((r|0)==5)while(1){r=e;while(1){e=r+1|0;if(!(f[r>>0]|0))break;else r=e}i=i+-1|0;if(!i)break;else r=5}return e|0}function ps(e){e=e|0;if(e>>>0>4294963200){t[(ms()|0)>>2]=0-e;e=-1}return e|0}function gs(e,i){e=+e;i=i|0;var r=0,f=0,n=0;u[d>>3]=e;r=t[d>>2]|0;f=t[d+4>>2]|0;n=zl(r|0,f|0,52)|0;n=n&2047;switch(n|0){case 0:{if(e!=0.0){e=+gs(e*18446744073709551616.0,i);r=(t[i>>2]|0)+-64|0}else r=0;t[i>>2]=r;break}case 2047:break;default:{t[i>>2]=n+-1022;t[d>>2]=r;t[d+4>>2]=f&-2146435073|1071644672;e=+u[d>>3]}}return+e}function ys(e,i){e=+e;i=i|0;return+ +gs(e,i)}function Ms(e,i){e=+e;i=i|0;return+ +Ss(e,i)}function As(e){e=+e;return~~+Es(e)|0}function Es(e){e=+e;var i=0;i=(o[d>>2]=e,t[d>>2]|0);if((i&2130706432)>>>0<=1249902592){i=(i|0)<0;e=i?e+-8388608.0+8388608.0:e+8388608.0+-8388608.0;if(e==0.0)e=i?-0.0:0.0}return+e}function Ss(e,i){e=+e;i=i|0;var r=0;if((i|0)>1023){e=e*8988465674311579538646525.0e283;r=i+-1023|0;if((r|0)>1023){r=i+-2046|0;r=(r|0)>1023?1023:r;e=e*8988465674311579538646525.0e283}}else if((i|0)<-1022){e=e*2.2250738585072014e-308;r=i+1022|0;if((r|0)<-1022){r=i+2044|0;r=(r|0)<-1022?-1022:r;e=e*2.2250738585072014e-308}}else r=i;r=Ll(r+1023|0,0,52)|0;i=I;t[d>>2]=r;t[d+4>>2]=i;return+(e*+u[d>>3])}function Ts(e,i,r){e=e|0;i=i|0;r=r|0;do{if(e){if(i>>>0<128){f[e>>0]=i;e=1;break}if(i>>>0<2048){f[e>>0]=i>>>6|192;f[e+1>>0]=i&63|128;e=2;break}if(i>>>0<55296|(i&-8192|0)==57344){f[e>>0]=i>>>12|224;f[e+1>>0]=i>>>6&63|128;f[e+2>>0]=i&63|128;e=3;break}if((i+-65536|0)>>>0<1048576){f[e>>0]=i>>>18|240;f[e+1>>0]=i>>>12&63|128;f[e+2>>0]=i>>>6&63|128;f[e+3>>0]=i&63|128;e=4;break}else{t[(ms()|0)>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function Rs(e,i){e=e|0;i=i|0;if(!e)e=0;else e=Ts(e,i,0)|0;return e|0}function Cs(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0;b=c;c=c+112|0;d=b+40|0;u=b+24|0;o=b+16|0;a=b;h=b+52|0;n=f[i>>0]|0;if(ll(24090,n<<24>>24,4)|0){r=yl(1144)|0;if(!r)r=0;else{s=r;l=s+112|0;do{t[s>>2]=0;s=s+4|0}while((s|0)<(l|0));if(!(ul(i,43)|0))t[r>>2]=n<<24>>24==114?8:4;if(ul(i,101)|0){t[a>>2]=e;t[a+4>>2]=2;t[a+8>>2]=1;pe(221,a|0)|0;n=f[i>>0]|0}if(n<<24>>24==97){t[o>>2]=e;t[o+4>>2]=3;n=pe(221,o|0)|0;if(!(n&1024)){t[u>>2]=e;t[u+4>>2]=4;t[u+8>>2]=n|1024;pe(221,u|0)|0}i=t[r>>2]|128;t[r>>2]=i}else i=t[r>>2]|0;t[r+60>>2]=e;t[r+44>>2]=r+120;t[r+48>>2]=1024;n=r+75|0;f[n>>0]=-1;if((i&8|0)==0?(t[d>>2]=e,t[d+4>>2]=21505,t[d+8>>2]=h,(Le(54,d|0)|0)==0):0)f[n>>0]=10;t[r+32>>2]=60;t[r+36>>2]=61;t[r+40>>2]=3;t[r+12>>2]=1;if(!(t[666]|0))t[r+76>>2]=-1;De(2688);n=t[671]|0;t[r+56>>2]=n;if(n)t[n+52>>2]=r;t[671]=r;Be(2688)}}else{t[(ms()|0)>>2]=22;r=0}c=b;return r|0}function Ps(e){e=e|0;var i=0,r=0,n=0;r=(ul(e,43)|0)==0;i=f[e>>0]|0;r=r?i<<24>>24!=114&1:2;n=(ul(e,120)|0)==0;r=n?r:r|128;e=(ul(e,101)|0)==0;e=e?r:r|524288;e=i<<24>>24==114?e:e|64;e=i<<24>>24==119?e|512:e;return(i<<24>>24==97?e|1024:e)|0}function Is(e){e=e|0;return 0}function Os(e){e=e|0;return}function xs(e,i){e=e|0;i=i|0;var r=0,n=0,s=0,l=0,o=0,u=0,h=0;h=c;c=c+16|0;u=h;o=i&255;f[u>>0]=o;n=e+16|0;s=t[n>>2]|0;if(!s)if(!(Hs(e)|0)){s=t[n>>2]|0;l=4}else r=-1;else l=4;do{if((l|0)==4){n=e+20|0;l=t[n>>2]|0;if(l>>>0<s>>>0?(r=i&255,(r|0)!=(f[e+75>>0]|0)):0){t[n>>2]=l+1;f[l>>0]=o;break}if((po[t[e+36>>2]&63](e,u,1)|0)==1)r=a[u>>0]|0;else r=-1}}while(0);c=h;return r|0}function Ls(e){e=e|0;var i=0,r=0;i=c;c=c+16|0;r=i;t[r>>2]=t[e+60>>2];e=ps(Ne(6,r|0)|0)|0;c=i;return e|0}function Bs(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0;h=c;c=c+48|0;s=h+16|0;a=h;n=h+32|0;t[n>>2]=i;l=n+4|0;u=e+48|0;d=t[u>>2]|0;t[l>>2]=r-((d|0)!=0&1);o=e+44|0;t[n+8>>2]=t[o>>2];t[n+12>>2]=d;if(!(t[665]|0)){t[s>>2]=t[e+60>>2];t[s+4>>2]=n;t[s+8>>2]=2;n=ps(je(145,s|0)|0)|0}else{Me(5,e|0);t[a>>2]=t[e+60>>2];t[a+4>>2]=n;t[a+8>>2]=2;n=ps(je(145,a|0)|0)|0;ve(0)}if((n|0)>=1){l=t[l>>2]|0;if(n>>>0>l>>>0){s=t[o>>2]|0;a=e+4|0;t[a>>2]=s;t[e+8>>2]=s+(n-l);if(!(t[u>>2]|0))n=r;else{t[a>>2]=s+1;f[i+(r+-1)>>0]=f[s>>0]|0;n=r}}}else{t[e>>2]=t[e>>2]|n&48^16;t[e+8>>2]=0;t[e+4>>2]=0}c=h;return n|0}function zs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0;n=c;c=c+32|0;a=n;f=n+20|0;t[a>>2]=t[e+60>>2];t[a+4>>2]=0;t[a+8>>2]=i;t[a+12>>2]=f;t[a+16>>2]=r;if((ps(Ue(140,a|0)|0)|0)<0){t[f>>2]=-1;e=-1}else e=t[f>>2]|0;c=n;return e|0}function Ds(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0;k=c;c=c+48|0;d=k+16|0;h=k;f=k+32|0;b=e+28|0;n=t[b>>2]|0;t[f>>2]=n;_=e+20|0;n=(t[_>>2]|0)-n|0;t[f+4>>2]=n;t[f+8>>2]=i;t[f+12>>2]=r;o=e+60|0;u=e+44|0;i=2;n=n+r|0;while(1){if(!(t[665]|0)){t[d>>2]=t[o>>2];t[d+4>>2]=f;t[d+8>>2]=i;s=ps(Ye(146,d|0)|0)|0}else{Me(6,e|0);t[h>>2]=t[o>>2];t[h+4>>2]=f;t[h+8>>2]=i;s=ps(Ye(146,h|0)|0)|0;ve(0)}if((n|0)==(s|0)){n=6;break}if((s|0)<0){n=8;break}n=n-s|0;a=t[f+4>>2]|0;if(s>>>0<=a>>>0)if((i|0)==2){t[b>>2]=(t[b>>2]|0)+s;l=a;i=2}else l=a;else{l=t[u>>2]|0;t[b>>2]=l;t[_>>2]=l;l=t[f+12>>2]|0;s=s-a|0;f=f+8|0;i=i+-1|0}t[f>>2]=(t[f>>2]|0)+s;t[f+4>>2]=l-s}if((n|0)==6){d=t[u>>2]|0;t[e+16>>2]=d+(t[e+48>>2]|0);e=d;t[b>>2]=e;t[_>>2]=e}else if((n|0)==8){t[e+16>>2]=0;t[b>>2]=0;t[_>>2]=0;t[e>>2]=t[e>>2]|32;if((i|0)==2)r=0;else r=r-(t[f+4>>2]|0)|0}c=k;return r|0}function Ns(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0;a=c;c=c+80|0;n=a;t[e+36>>2]=61;if((t[e>>2]&64|0)==0?(t[n>>2]=t[e+60>>2],t[n+4>>2]=21505,t[n+8>>2]=a+12,(Le(54,n|0)|0)!=0):0)f[e+75>>0]=-1;n=Ds(e,i,r)|0;c=a;return n|0}function Fs(e){e=e|0;var i=0,r=0;i=e+74|0;r=f[i>>0]|0;f[i>>0]=r+255|r;i=e+20|0;r=e+44|0;if((t[i>>2]|0)>>>0>(t[r>>2]|0)>>>0)po[t[e+36>>2]&63](e,0,0)|0;t[e+16>>2]=0;t[e+28>>2]=0;t[i>>2]=0;i=t[e>>2]|0;if(i&20)if(!(i&4))i=-1;else{t[e>>2]=i|32;i=-1}else{i=t[r>>2]|0;t[e+8>>2]=i;t[e+4>>2]=i;i=0}return i|0}function Hs(e){e=e|0;var i=0,r=0;i=e+74|0;r=f[i>>0]|0;f[i>>0]=r+255|r;i=t[e>>2]|0;if(!(i&8)){t[e+8>>2]=0;t[e+4>>2]=0;i=t[e+44>>2]|0;t[e+28>>2]=i;t[e+20>>2]=i;t[e+16>>2]=i+(t[e+48>>2]|0);i=0}else{t[e>>2]=i|32;i=-1}return i|0}function Us(e){e=e|0;var i=0,r=0,f=0;f=(t[e>>2]&1|0)!=0;if(!f){De(2688);r=t[e+52>>2]|0;i=e+56|0;if(r)t[r+56>>2]=t[i>>2];i=t[i>>2]|0;if(i)t[i+52>>2]=r;if((t[671]|0)==(e|0))t[671]=i;Be(2688)}i=js(e)|0;i=Eo[t[e+12>>2]&15](e)|0|i;r=t[e+92>>2]|0;if(r)Ml(r);if(!f)Ml(e);return i|0}function js(e){e=e|0;var i=0,r=0;do{if(e){if((t[e+76>>2]|0)<=-1){i=kl(e)|0;break}r=(Is(e)|0)==0;i=kl(e)|0;if(!r)Os(e)}else{if(!(t[677]|0))i=0;else i=js(t[677]|0)|0;De(2688);e=t[671]|0;if(e)do{if((t[e+76>>2]|0)>-1)r=Is(e)|0;else r=0;if((t[e+20>>2]|0)>>>0>(t[e+28>>2]|0)>>>0)i=kl(e)|0|i;if(r)Os(e);e=t[e+56>>2]|0}while((e|0)!=0);Be(2688)}}while(0);return i|0}function Ys(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0;a=c;c=c+32|0;n=a+16|0;r=a;if(ll(24090,f[i>>0]|0,4)|0){s=Ps(i)|0|32768;t[r>>2]=e;t[r+4>>2]=s;t[r+8>>2]=438;r=ps(Fe(5,r|0)|0)|0;if((r|0)>=0){e=Cs(r,i)|0;if(!e){t[n>>2]=r;Ne(6,n|0)|0;e=0}}else e=0}else{t[(ms()|0)>>2]=22;e=0}c=a;return e|0}function qs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0;f=c;c=c+16|0;n=f;t[n>>2]=r;r=tl(e,i,n)|0;c=f;return r|0}function $s(e,i){e=e|0;i=i|0;var r=0,n=0,a=0,s=0,l=0;if((t[i+76>>2]|0)>=0?(Is(i)|0)!=0:0){if((f[i+75>>0]|0)!=(e|0)?(n=i+20|0,a=t[n>>2]|0,a>>>0<(t[i+16>>2]|0)>>>0):0){t[n>>2]=a+1;f[a>>0]=e;r=e&255}else r=xs(i,e)|0;Os(i)}else l=3;do{if((l|0)==3){if((f[i+75>>0]|0)!=(e|0)?(s=i+20|0,r=t[s>>2]|0,r>>>0<(t[i+16>>2]|0)>>>0):0){t[s>>2]=r+1;f[r>>0]=e;r=e&255;break}r=xs(i,e)|0}}while(0);return r|0}function Vs(e,i){e=e|0;i=i|0;return(il(e,dl(e)|0,1,i)|0)+-1|0}function Xs(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0;o=ie(r,i)|0;if((t[n+76>>2]|0)>-1)u=Is(n)|0;else u=0;a=n+74|0;s=f[a>>0]|0;f[a>>0]=s+255|s;a=n+4|0;s=t[a>>2]|0;l=(t[n+8>>2]|0)-s|0;if((l|0)>0){l=l>>>0<o>>>0?l:o;Dl(e|0,s|0,l|0)|0;t[a>>2]=s+l;e=e+l|0;a=o-l|0}else a=o;e:do{if(!a)c=13;else{l=n+32|0;s=a;while(1){if(Fs(n)|0){r=s;break}a=po[t[l>>2]&63](n,e,s)|0;if((a+1|0)>>>0<2){r=s;break}if((s|0)==(a|0)){c=13;break e}else{e=e+a|0;s=s-a|0}}if(u)Os(n);r=((o-r|0)>>>0)/(i>>>0)|0}}while(0);if((c|0)==13)if(u)Os(n);return r|0}function Gs(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0;if((r|0)==1)i=i-(t[e+8>>2]|0)+(t[e+4>>2]|0)|0;n=e+20|0;f=e+28|0;if((t[n>>2]|0)>>>0>(t[f>>2]|0)>>>0?(po[t[e+36>>2]&63](e,0,0)|0,(t[n>>2]|0)==0):0)i=-1;else{t[e+16>>2]=0;t[f>>2]=0;t[n>>2]=0;if((po[t[e+40>>2]&63](e,i,r)|0)<0)i=-1;else{t[e+8>>2]=0;t[e+4>>2]=0;t[e>>2]=t[e>>2]&-17;i=0}}return i|0}function Ks(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if((t[e+76>>2]|0)>-1){f=(Is(e)|0)==0;i=Gs(e,i,r)|0;if(!f)Os(e)}else i=Gs(e,i,r)|0;return i|0}function Ws(e,i,r){e=e|0;i=i|0;r=r|0;return Ks(e,i,r)|0}function Zs(e){e=e|0;var i=0;if(!(t[e>>2]&128))i=1;else i=(t[e+20>>2]|0)>>>0>(t[e+28>>2]|0)>>>0?2:1;i=po[t[e+40>>2]&63](e,0,i)|0;if((i|0)>=0)i=i-(t[e+8>>2]|0)+(t[e+4>>2]|0)+(t[e+20>>2]|0)-(t[e+28>>2]|0)|0;return i|0}function Js(e){e=e|0;var i=0;if((t[e+76>>2]|0)>-1){i=(Is(e)|0)==0;e=Zs(e)|0}else e=Zs(e)|0;return e|0}function Qs(e){e=e|0;return Js(e)|0}function el(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;n=r+16|0;a=t[n>>2]|0;if(!a)if(!(Hs(r)|0)){a=t[n>>2]|0;s=4}else n=0;else s=4;e:do{if((s|0)==4){l=r+20|0;s=t[l>>2]|0;if((a-s|0)>>>0<i>>>0){n=po[t[r+36>>2]&63](r,e,i)|0;break}i:do{if((f[r+75>>0]|0)>-1){n=i;while(1){if(!n){a=s;n=0;break i}a=n+-1|0;if((f[e+a>>0]|0)==10)break;else n=a}if((po[t[r+36>>2]&63](r,e,n)|0)>>>0<n>>>0)break e;i=i-n|0;e=e+n|0;a=t[l>>2]|0}else{a=s;n=0}}while(0);Dl(a|0,e|0,i|0)|0;t[l>>2]=(t[l>>2]|0)+i;n=n+i|0}}while(0);return n|0}function il(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0;n=ie(r,i)|0;if((t[f+76>>2]|0)>-1){a=(Is(f)|0)==0;e=el(e,n,f)|0;if(!a)Os(f)}else e=el(e,n,f)|0;if((e|0)!=(n|0))r=(e>>>0)/(i>>>0)|0;return r|0}function rl(e,i){e=e|0;i=i|0;var r=0,f=0;r=c;c=c+16|0;f=r;t[f>>2]=i;i=tl(t[676]|0,e,f)|0;c=r;return i|0}function fl(e){e=e|0;var i=0,r=0,n=0,a=0;n=t[676]|0;if((t[n+76>>2]|0)>-1)a=Is(n)|0;else a=0;do{if((Vs(e,n)|0)<0)i=1;else{if((f[n+75>>0]|0)!=10?(i=n+20|0,r=t[i>>2]|0,r>>>0<(t[n+16>>2]|0)>>>0):0){t[i>>2]=r+1;f[r>>0]=10;i=0;break}i=(xs(n,10)|0)<0}}while(0);if(a)Os(n);return i<<31>>31|0}function nl(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0;f=c;c=c+16|0;n=f;t[n>>2]=r;r=sl(e,i,n)|0;c=f;return r|0}function tl(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0,o=0,u=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0;m=c;c=c+224|0;b=m+80|0;w=m+96|0;k=m;_=m+136|0;n=w;a=n+40|0;do{t[n>>2]=0;n=n+4|0}while((n|0)<(a|0));t[b>>2]=t[r>>2];if((wl(0,i,b,k,w)|0)<0)r=-1;else{if((t[e+76>>2]|0)>-1)h=Is(e)|0;else h=0;r=t[e>>2]|0;d=r&32;if((f[e+74>>0]|0)<1)t[e>>2]=r&-33;r=e+48|0;if(!(t[r>>2]|0)){a=e+44|0;s=t[a>>2]|0;t[a>>2]=_;l=e+28|0;t[l>>2]=_;o=e+20|0;t[o>>2]=_;t[r>>2]=80;u=e+16|0;t[u>>2]=_+80;n=wl(e,i,b,k,w)|0;if(s){po[t[e+36>>2]&63](e,0,0)|0;n=(t[o>>2]|0)==0?-1:n;t[a>>2]=s;t[r>>2]=0;t[u>>2]=0;t[l>>2]=0;t[o>>2]=0}}else n=wl(e,i,b,k,w)|0;r=t[e>>2]|0;t[e>>2]=r|d;if(h)Os(e);r=(r&32|0)==0?n:-1}c=m;return r|0}function al(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,h=0,d=0;d=c;c=c+128|0;a=d+112|0;h=d;s=h;l=2716;o=s+112|0;do{t[s>>2]=t[l>>2];s=s+4|0;l=l+4|0}while((s|0)<(o|0));if((i+-1|0)>>>0>2147483646)if(!i){i=1;u=4}else{t[(ms()|0)>>2]=75;i=-1}else{a=e;u=4}if((u|0)==4){u=-2-a|0;u=i>>>0>u>>>0?u:i;t[h+48>>2]=u;e=h+20|0;t[e>>2]=a;t[h+44>>2]=a;i=a+u|0;a=h+16|0;t[a>>2]=i;t[h+28>>2]=i;i=tl(h,r,n)|0;if(u){r=t[e>>2]|0;f[r+(((r|0)==(t[a>>2]|0))<<31>>31)>>0]=0}}c=d;return i|0}function sl(e,i,r){e=e|0;i=i|0;r=r|0;return al(e,2147483647,i,r)|0}function ll(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;s=i&255;n=(r|0)!=0;e:do{if(n&(e&3|0)!=0){a=i&255;while(1){if((f[e>>0]|0)==a<<24>>24){l=6;break e}e=e+1|0;r=r+-1|0;n=(r|0)!=0;if(!(n&(e&3|0)!=0)){l=5;break}}}else l=5}while(0);if((l|0)==5)if(n)l=6;else r=0;e:do{if((l|0)==6){a=i&255;if((f[e>>0]|0)!=a<<24>>24){n=ie(s,16843009)|0;i:do{if(r>>>0>3)while(1){s=t[e>>2]^n;if((s&-2139062144^-2139062144)&s+-16843009)break;e=e+4|0;r=r+-4|0;if(r>>>0<=3){l=11;break i}}else l=11}while(0);if((l|0)==11)if(!r){r=0;break}while(1){if((f[e>>0]|0)==a<<24>>24)break e;e=e+1|0;r=r+-1|0;if(!r){r=0;break}}}}}while(0);return((r|0)!=0?e:0)|0}function ol(e,i){e=e|0;i=i|0;var r=0,n=0;r=i;e:do{if(!((r^e)&3)){if(r&3)do{r=f[i>>0]|0;f[e>>0]=r;if(!(r<<24>>24))break e;i=i+1|0;e=e+1|0}while((i&3|0)!=0);r=t[i>>2]|0;if(!((r&-2139062144^-2139062144)&r+-16843009)){n=e;while(1){i=i+4|0;e=n+4|0;t[n>>2]=r;r=t[i>>2]|0;if((r&-2139062144^-2139062144)&r+-16843009)break;else n=e}}n=8}else n=8}while(0);if((n|0)==8){n=f[i>>0]|0;f[e>>0]=n;if(n<<24>>24)do{i=i+1|0;e=e+1|0;n=f[i>>0]|0;f[e>>0]=n}while(n<<24>>24!=0)}return e|0}function ul(e,i){e=e|0;i=i|0;e=cl(e,i)|0;return((f[e>>0]|0)==(i&255)<<24>>24?e:0)|0}function cl(e,i){e=e|0;i=i|0;var r=0,n=0,a=0;n=i&255;e:do{if(!n)e=e+(dl(e)|0)|0;else{if(e&3){r=i&255;do{a=f[e>>0]|0;if(a<<24>>24==0?1:a<<24>>24==r<<24>>24)break e;e=e+1|0}while((e&3|0)!=0)}n=ie(n,16843009)|0;r=t[e>>2]|0;i:do{if(!((r&-2139062144^-2139062144)&r+-16843009))do{a=r^n;if((a&-2139062144^-2139062144)&a+-16843009)break i;e=e+4|0;r=t[e>>2]|0}while(((r&-2139062144^-2139062144)&r+-16843009|0)==0)}while(0);r=i&255;while(1){a=f[e>>0]|0;if(a<<24>>24==0?1:a<<24>>24==r<<24>>24)break;else e=e+1|0}}}while(0);return e|0}function hl(e,i){e=e|0;i=i|0;ol(e,i)|0;return e|0}function dl(e){e=e|0;var i=0,r=0,n=0;n=e;e:do{if(!(n&3))r=4;else{i=e;e=n;while(1){if(!(f[i>>0]|0))break e;i=i+1|0;e=i;if(!(e&3)){e=i;r=4;break}}}}while(0);if((r|0)==4){while(1){i=t[e>>2]|0;if(!((i&-2139062144^-2139062144)&i+-16843009))e=e+4|0;else break}if((i&255)<<24>>24)do{e=e+1|0}while((f[e>>0]|0)!=0)}return e-n|0}function bl(e){e=e|0;if(!(t[e+68>>2]|0))Os(e);return}function _l(e){e=e|0;if(!(t[e+68>>2]|0))Os(e);return}function kl(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0;i=e+20|0;a=e+28|0;if((t[i>>2]|0)>>>0>(t[a>>2]|0)>>>0?(po[t[e+36>>2]&63](e,0,0)|0,(t[i>>2]|0)==0):0)i=-1;else{s=e+4|0;r=t[s>>2]|0;f=e+8|0;n=t[f>>2]|0;if(r>>>0<n>>>0)po[t[e+40>>2]&63](e,r-n|0,1)|0;t[e+16>>2]=0;t[a>>2]=0;t[i>>2]=0;t[f>>2]=0;t[s>>2]=0;i=0}return i|0}function wl(e,i,r,s,l){e=e|0;i=i|0;r=r|0;s=s|0;l=l|0;var o=0,h=0,b=0,_=0,k=0.0,w=0,m=0,v=0,p=0,g=0.0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0,F=0,H=0,U=0,j=0,Y=0,q=0,$=0,V=0,X=0,G=0,K=0,W=0,Z=0,J=0,Q=0,ee=0,re=0,fe=0,ne=0,te=0,ae=0,se=0;se=c;c=c+624|0;re=se+24|0;ne=se+16|0;fe=se+588|0;W=se+576|0;ee=se;X=se+536|0;ae=se+8|0;te=se+528|0;N=(e|0)!=0;F=X+40|0;V=F;X=X+39|0;G=ae+4|0;K=W+12|0;W=W+11|0;Z=fe;J=K;Q=J-Z|0;H=-2-Z|0;U=J+2|0;j=re+288|0;Y=fe+9|0;q=Y;$=fe+8|0;o=0;y=i;h=0;i=0;e:while(1){do{if((o|0)>-1)if((h|0)>(2147483647-o|0)){t[(ms()|0)>>2]=75;o=-1;break}else{o=h+o|0;break}}while(0);h=f[y>>0]|0;if(!(h<<24>>24)){D=245;break}else b=y;i:while(1){switch(h<<24>>24){case 37:{h=b;D=9;break i}case 0:{h=b;break i}default:{}}z=b+1|0;h=f[z>>0]|0;b=z}i:do{if((D|0)==9)while(1){D=0;if((f[h+1>>0]|0)!=37)break i;b=b+1|0;h=h+2|0;if((f[h>>0]|0)==37)D=9;else break}}while(0);A=b-y|0;if(N?(t[e>>2]&32|0)==0:0)el(y,A,e)|0;if((b|0)!=(y|0)){y=h;h=A;continue}w=h+1|0;b=f[w>>0]|0;_=(b<<24>>24)+-48|0;if(_>>>0<10){z=(f[h+2>>0]|0)==36;w=z?h+3|0:w;b=f[w>>0]|0;p=z?_:-1;i=z?1:i}else p=-1;h=b<<24>>24;i:do{if((h&-32|0)==32){_=0;while(1){if(!(1<<h+-32&75913)){m=_;h=w;break i}_=1<<(b<<24>>24)+-32|_;w=w+1|0;b=f[w>>0]|0;h=b<<24>>24;if((h&-32|0)!=32){m=_;h=w;break}}}else{m=0;h=w}}while(0);do{if(b<<24>>24==42){_=h+1|0;b=(f[_>>0]|0)+-48|0;if(b>>>0<10?(f[h+2>>0]|0)==36:0){t[l+(b<<2)>>2]=10;i=1;h=h+3|0;b=t[s+((f[_>>0]|0)+-48<<3)>>2]|0}else{if(i){o=-1;break e}if(!N){M=m;h=_;i=0;z=0;break}i=(t[r>>2]|0)+(4-1)&~(4-1);b=t[i>>2]|0;t[r>>2]=i+4;i=0;h=_}if((b|0)<0){M=m|8192;z=0-b|0}else{M=m;z=b}}else{_=(b<<24>>24)+-48|0;if(_>>>0<10){b=0;do{b=(b*10|0)+_|0;h=h+1|0;_=(f[h>>0]|0)+-48|0}while(_>>>0<10);if((b|0)<0){o=-1;break e}else{M=m;z=b}}else{M=m;z=0}}}while(0);i:do{if((f[h>>0]|0)==46){_=h+1|0;b=f[_>>0]|0;if(b<<24>>24!=42){w=(b<<24>>24)+-48|0;if(w>>>0<10){h=_;b=0}else{h=_;w=0;break}while(1){b=(b*10|0)+w|0;h=h+1|0;w=(f[h>>0]|0)+-48|0;if(w>>>0>=10){w=b;break i}}}_=h+2|0;b=(f[_>>0]|0)+-48|0;if(b>>>0<10?(f[h+3>>0]|0)==36:0){t[l+(b<<2)>>2]=10;h=h+4|0;w=t[s+((f[_>>0]|0)+-48<<3)>>2]|0;break}if(i){o=-1;break e}if(N){h=(t[r>>2]|0)+(4-1)&~(4-1);w=t[h>>2]|0;t[r>>2]=h+4;h=_}else{h=_;w=0}}else w=-1}while(0);v=0;while(1){b=(f[h>>0]|0)+-65|0;if(b>>>0>57){o=-1;break e}_=h+1|0;b=f[25126+(v*58|0)+b>>0]|0;m=b&255;if((m+-1|0)>>>0<8){h=_;v=m}else{B=_;break}}if(!(b<<24>>24)){o=-1;break}_=(p|0)>-1;do{if(b<<24>>24==19)if(_){o=-1;break e}else D=52;else{if(_){t[l+(p<<2)>>2]=m;x=s+(p<<3)|0;L=t[x+4>>2]|0;D=ee;t[D>>2]=t[x>>2];t[D+4>>2]=L;D=52;break}if(!N){o=0;break e}vl(ee,m,r)}}while(0);if((D|0)==52?(D=0,!N):0){y=B;h=A;continue}p=f[h>>0]|0;p=(v|0)!=0&(p&15|0)==3?p&-33:p;_=M&-65537;L=(M&8192|0)==0?M:_;i:do{switch(p|0){case 110:switch(v|0){case 0:{t[t[ee>>2]>>2]=o;y=B;h=A;continue e}case 1:{t[t[ee>>2]>>2]=o;y=B;h=A;continue e}case 2:{y=t[ee>>2]|0;t[y>>2]=o;t[y+4>>2]=((o|0)<0)<<31>>31;y=B;h=A;continue e}case 3:{n[t[ee>>2]>>1]=o;y=B;h=A;continue e}case 4:{f[t[ee>>2]>>0]=o;y=B;h=A;continue e}case 6:{t[t[ee>>2]>>2]=o;y=B;h=A;continue e}case 7:{y=t[ee>>2]|0;t[y>>2]=o;t[y+4>>2]=((o|0)<0)<<31>>31;y=B;h=A;continue e}default:{y=B;h=A;continue e}}case 112:{v=L|8;w=w>>>0>8?w:8;p=120;D=64;break}case 88:case 120:{v=L;D=64;break}case 111:{_=ee;b=t[_>>2]|0;_=t[_+4>>2]|0;if((b|0)==0&(_|0)==0)h=F;else{h=F;do{h=h+-1|0;f[h>>0]=b&7|48;b=zl(b|0,_|0,3)|0;_=I}while(!((b|0)==0&(_|0)==0))}if(!(L&8)){b=L;v=0;m=25606;D=77}else{v=V-h+1|0;b=L;w=(w|0)<(v|0)?v:w;v=0;m=25606;D=77}break}case 105:case 100:{b=ee;h=t[b>>2]|0;b=t[b+4>>2]|0;if((b|0)<0){h=Il(0,0,h|0,b|0)|0;b=I;_=ee;t[_>>2]=h;t[_+4>>2]=b;_=1;m=25606;D=76;break i}if(!(L&2048)){m=L&1;_=m;m=(m|0)==0?25606:25608;D=76}else{_=1;m=25607;D=76}break}case 117:{b=ee;h=t[b>>2]|0;b=t[b+4>>2]|0;_=0;m=25606;D=76;break}case 99:{f[X>>0]=t[ee>>2];y=X;b=1;v=0;p=25606;h=F;break}case 109:{h=vs(t[(ms()|0)>>2]|0)|0;D=82;break}case 115:{h=t[ee>>2]|0;h=(h|0)!=0?h:25616;D=82;break}case 67:{t[ae>>2]=t[ee>>2];t[G>>2]=0;t[ee>>2]=ae;w=-1;D=86;break}case 83:{if(!w){gl(e,32,z,0,L);h=0;D=98}else D=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=+u[ee>>3];t[ne>>2]=0;u[d>>3]=k;if((t[d+4>>2]|0)>=0)if(!(L&2048)){x=L&1;O=x;x=(x|0)==0?25624:25629}else{O=1;x=25626}else{k=-k;O=1;x=25623}u[d>>3]=k;P=t[d+4>>2]&2146435072;do{if(P>>>0<2146435072|(P|0)==2146435072&0<0){g=+ys(k,ne)*2.0;b=g!=0.0;if(b)t[ne>>2]=(t[ne>>2]|0)+-1;R=p|32;if((R|0)==97){y=p&32;A=(y|0)==0?x:x+9|0;M=O|2;h=12-w|0;do{if(!(w>>>0>11|(h|0)==0)){k=8.0;do{h=h+-1|0;k=k*16.0}while((h|0)!=0);if((f[A>>0]|0)==45){k=-(k+(-g-k));break}else{k=g+k-k;break}}else k=g}while(0);b=t[ne>>2]|0;h=(b|0)<0?0-b|0:b;h=pl(h,((h|0)<0)<<31>>31,K)|0;if((h|0)==(K|0)){f[W>>0]=48;h=W}f[h+-1>>0]=(b>>31&2)+43;v=h+-2|0;f[v>>0]=p+15;m=(w|0)<1;_=(L&8|0)==0;b=fe;while(1){x=~~k;h=b+1|0;f[b>>0]=a[25590+x>>0]|y;k=(k-+(x|0))*16.0;do{if((h-Z|0)==1){if(_&(m&k==0.0))break;f[h>>0]=46;h=b+2|0}}while(0);if(!(k!=0.0))break;else b=h}w=(w|0)!=0&(H+h|0)<(w|0)?U+w-v|0:Q-v+h|0;_=w+M|0;gl(e,32,z,_,L);if(!(t[e>>2]&32))el(A,M,e)|0;gl(e,48,z,_,L^65536);h=h-Z|0;if(!(t[e>>2]&32))el(fe,h,e)|0;b=J-v|0;gl(e,48,w-(h+b)|0,0,0);if(!(t[e>>2]&32))el(v,b,e)|0;gl(e,32,z,_,L^8192);h=(_|0)<(z|0)?z:_;break}h=(w|0)<0?6:w;if(b){b=(t[ne>>2]|0)+-28|0;t[ne>>2]=b;k=g*268435456.0}else{k=g;b=t[ne>>2]|0}P=(b|0)<0?re:j;C=P;b=P;do{T=~~k>>>0;t[b>>2]=T;b=b+4|0;k=(k-+(T>>>0))*1.0e9}while(k!=0.0);_=b;b=t[ne>>2]|0;if((b|0)>0){m=P;while(1){v=(b|0)>29?29:b;w=_+-4|0;do{if(w>>>0<m>>>0)w=m;else{b=0;do{T=Ll(t[w>>2]|0,0,v|0)|0;T=Bl(T|0,I|0,b|0,0)|0;b=I;S=ql(T|0,b|0,1e9,0)|0;t[w>>2]=S;b=Yl(T|0,b|0,1e9,0)|0;w=w+-4|0}while(w>>>0>=m>>>0);if(!b){w=m;break}w=m+-4|0;t[w>>2]=b}}while(0);while(1){if(_>>>0<=w>>>0)break;b=_+-4|0;if(!(t[b>>2]|0))_=b;else break}b=(t[ne>>2]|0)-v|0;t[ne>>2]=b;if((b|0)>0)m=w;else break}}else w=P;if((b|0)<0){A=((h+25|0)/9|0)+1|0;E=(R|0)==102;y=w;while(1){M=0-b|0;M=(M|0)>9?9:M;do{if(y>>>0<_>>>0){b=(1<<M)+-1|0;m=1e9>>>M;w=0;v=y;do{T=t[v>>2]|0;t[v>>2]=(T>>>M)+w;w=ie(T&b,m)|0;v=v+4|0}while(v>>>0<_>>>0);b=(t[y>>2]|0)==0?y+4|0:y;if(!w){w=b;break}t[_>>2]=w;w=b;_=_+4|0}else w=(t[y>>2]|0)==0?y+4|0:y}while(0);b=E?P:w;_=(_-b>>2|0)>(A|0)?b+(A<<2)|0:_;b=(t[ne>>2]|0)+M|0;t[ne>>2]=b;if((b|0)>=0){y=w;break}else y=w}}else y=w;do{if(y>>>0<_>>>0){b=(C-y>>2)*9|0;m=t[y>>2]|0;if(m>>>0<10)break;else w=10;do{w=w*10|0;b=b+1|0}while(m>>>0>=w>>>0)}else b=0}while(0);S=(R|0)==103;T=(h|0)!=0;w=h-((R|0)!=102?b:0)+((T&S)<<31>>31)|0;if((w|0)<(((_-C>>2)*9|0)+-9|0)){v=w+9216|0;E=(v|0)/9|0;w=P+(E+-1023<<2)|0;v=((v|0)%9|0)+1|0;if((v|0)<9){m=10;do{m=m*10|0;v=v+1|0}while((v|0)!=9)}else m=10;M=t[w>>2]|0;A=(M>>>0)%(m>>>0)|0;if((A|0)==0?(P+(E+-1022<<2)|0)==(_|0):0)m=y;else D=163;do{if((D|0)==163){D=0;g=(((M>>>0)/(m>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;v=(m|0)/2|0;do{if(A>>>0<v>>>0)k=.5;else{if((A|0)==(v|0)?(P+(E+-1022<<2)|0)==(_|0):0){k=1.0;break}k=1.5}}while(0);do{if(O){if((f[x>>0]|0)!=45)break;g=-g;k=-k}}while(0);v=M-A|0;t[w>>2]=v;if(!(g+k!=g)){m=y;break}R=v+m|0;t[w>>2]=R;if(R>>>0>999999999){b=y;while(1){m=w+-4|0;t[w>>2]=0;if(m>>>0<b>>>0){b=b+-4|0;t[b>>2]=0}R=(t[m>>2]|0)+1|0;t[m>>2]=R;if(R>>>0>999999999)w=m;else{y=b;w=m;break}}}b=(C-y>>2)*9|0;v=t[y>>2]|0;if(v>>>0<10){m=y;break}else m=10;do{m=m*10|0;b=b+1|0}while(v>>>0>=m>>>0);m=y}}while(0);R=w+4|0;y=m;_=_>>>0>R>>>0?R:_}A=0-b|0;while(1){if(_>>>0<=y>>>0){E=0;R=_;break}w=_+-4|0;if(!(t[w>>2]|0))_=w;else{E=1;R=_;break}}do{if(S){h=(T&1^1)+h|0;if((h|0)>(b|0)&(b|0)>-5){p=p+-1|0;h=h+-1-b|0}else{p=p+-2|0;h=h+-1|0}_=L&8;if(_)break;do{if(E){_=t[R+-4>>2]|0;if(!_){w=9;break}if(!((_>>>0)%10|0)){m=10;w=0}else{w=0;break}do{m=m*10|0;w=w+1|0}while(((_>>>0)%(m>>>0)|0|0)==0)}else w=9}while(0);_=((R-C>>2)*9|0)+-9|0;if((p|32|0)==102){_=_-w|0;_=(_|0)<0?0:_;h=(h|0)<(_|0)?h:_;_=0;break}else{_=_+b-w|0;_=(_|0)<0?0:_;h=(h|0)<(_|0)?h:_;_=0;break}}else _=L&8}while(0);M=h|_;m=(M|0)!=0&1;v=(p|32|0)==102;if(v){b=(b|0)>0?b:0;p=0}else{w=(b|0)<0?A:b;w=pl(w,((w|0)<0)<<31>>31,K)|0;if((J-w|0)<2)do{w=w+-1|0;f[w>>0]=48}while((J-w|0)<2);f[w+-1>>0]=(b>>31&2)+43;C=w+-2|0;f[C>>0]=p;b=J-C|0;p=C}A=O+1+h+m+b|0;gl(e,32,z,A,L);if(!(t[e>>2]&32))el(x,O,e)|0;gl(e,48,z,A,L^65536);do{if(v){w=y>>>0>P>>>0?P:y;b=w;do{_=pl(t[b>>2]|0,0,Y)|0;do{if((b|0)==(w|0)){if((_|0)!=(Y|0))break;f[$>>0]=48;_=$}else{if(_>>>0<=fe>>>0)break;do{_=_+-1|0;f[_>>0]=48}while(_>>>0>fe>>>0)}}while(0);if(!(t[e>>2]&32))el(_,q-_|0,e)|0;b=b+4|0}while(b>>>0<=P>>>0);do{if(M){if(t[e>>2]&32)break;el(25658,1,e)|0}}while(0);if((h|0)>0&b>>>0<R>>>0){_=b;while(1){b=pl(t[_>>2]|0,0,Y)|0;if(b>>>0>fe>>>0)do{b=b+-1|0;f[b>>0]=48}while(b>>>0>fe>>>0);if(!(t[e>>2]&32))el(b,(h|0)>9?9:h,e)|0;_=_+4|0;b=h+-9|0;if(!((h|0)>9&_>>>0<R>>>0)){h=b;break}else h=b}}gl(e,48,h+9|0,9,0)}else{v=E?R:y+4|0;if((h|0)>-1){m=(_|0)==0;w=y;do{b=pl(t[w>>2]|0,0,Y)|0;if((b|0)==(Y|0)){f[$>>0]=48;b=$}do{if((w|0)==(y|0)){_=b+1|0;if(!(t[e>>2]&32))el(b,1,e)|0;if(m&(h|0)<1){b=_;break}if(t[e>>2]&32){b=_;break}el(25658,1,e)|0;b=_}else{if(b>>>0<=fe>>>0)break;do{b=b+-1|0;f[b>>0]=48}while(b>>>0>fe>>>0)}}while(0);_=q-b|0;if(!(t[e>>2]&32))el(b,(h|0)>(_|0)?_:h,e)|0;h=h-_|0;w=w+4|0}while(w>>>0<v>>>0&(h|0)>-1)}gl(e,48,h+18|0,18,0);if(t[e>>2]&32)break;el(p,J-p|0,e)|0}}while(0);gl(e,32,z,A,L^8192);h=(A|0)<(z|0)?z:A}else{v=(p&32|0)!=0;m=k!=k|0.0!=0.0;b=m?0:O;w=b+3|0;gl(e,32,z,w,_);h=t[e>>2]|0;if(!(h&32)){el(x,b,e)|0;h=t[e>>2]|0}if(!(h&32))el(m?v?25650:25654:v?25642:25646,3,e)|0;gl(e,32,z,w,L^8192);h=(w|0)<(z|0)?z:w}}while(0);y=B;continue e}default:{_=L;b=w;v=0;p=25606;h=F}}}while(0);i:do{if((D|0)==64){_=ee;b=t[_>>2]|0;_=t[_+4>>2]|0;m=p&32;if(!((b|0)==0&(_|0)==0)){h=F;do{h=h+-1|0;f[h>>0]=a[25590+(b&15)>>0]|m;b=zl(b|0,_|0,4)|0;_=I}while(!((b|0)==0&(_|0)==0));D=ee;if((v&8|0)==0|(t[D>>2]|0)==0&(t[D+4>>2]|0)==0){b=v;v=0;m=25606;D=77}else{b=v;v=2;m=25606+(p>>4)|0;D=77}}else{h=F;b=v;v=0;m=25606;D=77}}else if((D|0)==76){h=pl(h,b,F)|0;b=L;v=_;D=77}else if((D|0)==82){D=0;L=ll(h,0,w)|0;x=(L|0)==0;y=h;b=x?w:L-h|0;v=0;p=25606;h=x?h+w|0:L}else if((D|0)==86){D=0;b=0;h=0;m=t[ee>>2]|0;while(1){_=t[m>>2]|0;if(!_)break;h=Rs(te,_)|0;if((h|0)<0|h>>>0>(w-b|0)>>>0)break;b=h+b|0;if(w>>>0>b>>>0)m=m+4|0;else break}if((h|0)<0){o=-1;break e}gl(e,32,z,b,L);if(!b){h=0;D=98}else{_=0;w=t[ee>>2]|0;while(1){h=t[w>>2]|0;if(!h){h=b;D=98;break i}h=Rs(te,h)|0;_=h+_|0;if((_|0)>(b|0)){h=b;D=98;break i}if(!(t[e>>2]&32))el(te,h,e)|0;if(_>>>0>=b>>>0){h=b;D=98;break}else w=w+4|0}}}}while(0);if((D|0)==98){D=0;gl(e,32,z,h,L^8192);y=B;h=(z|0)>(h|0)?z:h;continue}if((D|0)==77){D=0;_=(w|0)>-1?b&-65537:b;b=ee;b=(t[b>>2]|0)!=0|(t[b+4>>2]|0)!=0;if((w|0)!=0|b){b=(b&1^1)+(V-h)|0;y=h;b=(w|0)>(b|0)?w:b;p=m;h=F}else{y=F;b=0;p=m;h=F}}m=h-y|0;b=(b|0)<(m|0)?m:b;w=v+b|0;h=(z|0)<(w|0)?w:z;gl(e,32,h,w,_);if(!(t[e>>2]&32))el(p,v,e)|0;gl(e,48,h,w,_^65536);gl(e,48,b,m,0);if(!(t[e>>2]&32))el(y,m,e)|0;gl(e,32,h,w,_^8192);y=B}e:do{if((D|0)==245)if(!e)if(i){o=1;while(1){i=t[l+(o<<2)>>2]|0;if(!i)break;vl(s+(o<<3)|0,i,r);o=o+1|0;if((o|0)>=10){o=1;break e}}if((o|0)<10)while(1){if(t[l+(o<<2)>>2]|0){o=-1;break e}o=o+1|0;if((o|0)>=10){o=1;break}}else o=1}else o=0}while(0);c=se;return o|0}function ml(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0;f=e+20|0;n=t[f>>2]|0;e=(t[e+16>>2]|0)-n|0;e=e>>>0>r>>>0?r:e;Dl(n|0,i|0,e|0)|0;t[f>>2]=(t[f>>2]|0)+e;return r|0}function vl(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,n=0,a=0.0;e:do{if(i>>>0<=20)do{switch(i|0){case 9:{f=(t[r>>2]|0)+(4-1)&~(4-1);i=t[f>>2]|0;t[r>>2]=f+4;t[e>>2]=i;break e}case 10:{f=(t[r>>2]|0)+(4-1)&~(4-1);i=t[f>>2]|0;t[r>>2]=f+4;f=e;t[f>>2]=i;t[f+4>>2]=((i|0)<0)<<31>>31;break e}case 11:{f=(t[r>>2]|0)+(4-1)&~(4-1);i=t[f>>2]|0;t[r>>2]=f+4;f=e;t[f>>2]=i;t[f+4>>2]=0;break e}case 12:{f=(t[r>>2]|0)+(8-1)&~(8-1);i=f;n=t[i>>2]|0;i=t[i+4>>2]|0;t[r>>2]=f+8;f=e;t[f>>2]=n;t[f+4>>2]=i;break e}case 13:{n=(t[r>>2]|0)+(4-1)&~(4-1);f=t[n>>2]|0;t[r>>2]=n+4;f=(f&65535)<<16>>16;n=e;t[n>>2]=f;t[n+4>>2]=((f|0)<0)<<31>>31;break e}case 14:{n=(t[r>>2]|0)+(4-1)&~(4-1);f=t[n>>2]|0;t[r>>2]=n+4;n=e;t[n>>2]=f&65535;t[n+4>>2]=0;break e}case 15:{n=(t[r>>2]|0)+(4-1)&~(4-1);f=t[n>>2]|0;t[r>>2]=n+4;f=(f&255)<<24>>24;n=e;t[n>>2]=f;t[n+4>>2]=((f|0)<0)<<31>>31;break e}case 16:{n=(t[r>>2]|0)+(4-1)&~(4-1);f=t[n>>2]|0;t[r>>2]=n+4;n=e;t[n>>2]=f&255;t[n+4>>2]=0;break e}case 17:{n=(t[r>>2]|0)+(8-1)&~(8-1);a=+u[n>>3];t[r>>2]=n+8;u[e>>3]=a;break e}case 18:{n=(t[r>>2]|0)+(8-1)&~(8-1);a=+u[n>>3];t[r>>2]=n+8;u[e>>3]=a;break e}default:break e}}while(0)}while(0);return}function pl(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if(i>>>0>0|(i|0)==0&e>>>0>4294967295)while(1){n=ql(e|0,i|0,10,0)|0;r=r+-1|0;f[r>>0]=n|48;n=Yl(e|0,i|0,10,0)|0;if(i>>>0>9|(i|0)==9&e>>>0>4294967295){e=n;i=I}else{e=n;break}}if(e)while(1){r=r+-1|0;f[r>>0]=(e>>>0)%10|0|48;if(e>>>0<10)break;else e=(e>>>0)/10|0}return r|0}function gl(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0;l=c;c=c+256|0;s=l;do{if((r|0)>(f|0)&(n&73728|0)==0){n=r-f|0;xl(s|0,i|0,(n>>>0>256?256:n)|0)|0;i=t[e>>2]|0;a=(i&32|0)==0;if(n>>>0>255){f=r-f|0;do{if(a){el(s,256,e)|0;i=t[e>>2]|0}n=n+-256|0;a=(i&32|0)==0}while(n>>>0>255);if(a)n=f&255;else break}else if(!a)break;el(s,n,e)|0}}while(0);c=l;return}function yl(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0,g=0,y=0,M=0,A=0,E=0,S=0,T=0,R=0,C=0,P=0,I=0,O=0,x=0,L=0,B=0,z=0,D=0,N=0;do{if(e>>>0<245){b=e>>>0<11?16:e+11&-8;e=b>>>3;l=t[735]|0;r=l>>>e;if(r&3){e=(r&1^1)+e|0;f=e<<1;r=2980+(f<<2)|0;f=2980+(f+2<<2)|0;n=t[f>>2]|0;a=n+8|0;s=t[a>>2]|0;do{if((r|0)!=(s|0)){if(s>>>0<(t[739]|0)>>>0)ye();i=s+12|0;if((t[i>>2]|0)==(n|0)){t[i>>2]=r;t[f>>2]=s;break}else ye()}else t[735]=l&~(1<<e)}while(0);N=e<<3;t[n+4>>2]=N|3;N=n+(N|4)|0;t[N>>2]=t[N>>2]|1;N=a;return N|0}s=t[737]|0;if(b>>>0>s>>>0){if(r){f=2<<e;f=r<<e&(f|0-f);f=(f&0-f)+-1|0;o=f>>>12&16;f=f>>>o;n=f>>>5&8;f=f>>>n;a=f>>>2&4;f=f>>>a;r=f>>>1&2;f=f>>>r;e=f>>>1&1;e=(n|o|a|r|e)+(f>>>e)|0;f=e<<1;r=2980+(f<<2)|0;f=2980+(f+2<<2)|0;a=t[f>>2]|0;o=a+8|0;n=t[o>>2]|0;do{if((r|0)!=(n|0)){if(n>>>0<(t[739]|0)>>>0)ye();i=n+12|0;if((t[i>>2]|0)==(a|0)){t[i>>2]=r;t[f>>2]=n;u=t[737]|0;break}else ye()}else{t[735]=l&~(1<<e);u=s}}while(0);N=e<<3;s=N-b|0;t[a+4>>2]=b|3;l=a+b|0;t[a+(b|4)>>2]=s|1;t[a+N>>2]=s;if(u){n=t[740]|0;r=u>>>3;i=r<<1;f=2980+(i<<2)|0;e=t[735]|0;r=1<<r;if(e&r){e=2980+(i+2<<2)|0;i=t[e>>2]|0;if(i>>>0<(t[739]|0)>>>0)ye();else{c=e;h=i}}else{t[735]=e|r;c=2980+(i+2<<2)|0;h=f}t[c>>2]=n;t[h+12>>2]=n;t[n+8>>2]=h;t[n+12>>2]=f}t[737]=s;t[740]=l;N=o;return N|0}e=t[736]|0;if(e){r=(e&0-e)+-1|0;D=r>>>12&16;r=r>>>D;z=r>>>5&8;r=r>>>z;N=r>>>2&4;r=r>>>N;e=r>>>1&2;r=r>>>e;f=r>>>1&1;f=t[3244+((z|D|N|e|f)+(r>>>f)<<2)>>2]|0;r=(t[f+4>>2]&-8)-b|0;e=f;while(1){i=t[e+16>>2]|0;if(!i){i=t[e+20>>2]|0;if(!i){o=r;break}}e=(t[i+4>>2]&-8)-b|0;N=e>>>0<r>>>0;r=N?e:r;e=i;f=N?i:f}a=t[739]|0;if(f>>>0<a>>>0)ye();l=f+b|0;if(f>>>0>=l>>>0)ye();s=t[f+24>>2]|0;r=t[f+12>>2]|0;do{if((r|0)==(f|0)){e=f+20|0;i=t[e>>2]|0;if(!i){e=f+16|0;i=t[e>>2]|0;if(!i){d=0;break}}while(1){r=i+20|0;n=t[r>>2]|0;if(n){i=n;e=r;continue}r=i+16|0;n=t[r>>2]|0;if(!n)break;else{i=n;e=r}}if(e>>>0<a>>>0)ye();else{t[e>>2]=0;d=i;break}}else{n=t[f+8>>2]|0;if(n>>>0<a>>>0)ye();i=n+12|0;if((t[i>>2]|0)!=(f|0))ye();e=r+8|0;if((t[e>>2]|0)==(f|0)){t[i>>2]=r;t[e>>2]=n;d=r;break}else ye()}}while(0);do{if(s){i=t[f+28>>2]|0;e=3244+(i<<2)|0;if((f|0)==(t[e>>2]|0)){t[e>>2]=d;if(!d){t[736]=t[736]&~(1<<i);break}}else{if(s>>>0<(t[739]|0)>>>0)ye();i=s+16|0;if((t[i>>2]|0)==(f|0))t[i>>2]=d;else t[s+20>>2]=d;if(!d)break}e=t[739]|0;if(d>>>0<e>>>0)ye();t[d+24>>2]=s;i=t[f+16>>2]|0;do{if(i)if(i>>>0<e>>>0)ye();else{t[d+16>>2]=i;t[i+24>>2]=d;break}}while(0);i=t[f+20>>2]|0;if(i)if(i>>>0<(t[739]|0)>>>0)ye();else{t[d+20>>2]=i;t[i+24>>2]=d;break}}}while(0);if(o>>>0<16){N=o+b|0;t[f+4>>2]=N|3;N=f+(N+4)|0;t[N>>2]=t[N>>2]|1}else{t[f+4>>2]=b|3;t[f+(b|4)>>2]=o|1;t[f+(o+b)>>2]=o;i=t[737]|0;if(i){a=t[740]|0;r=i>>>3;i=r<<1;n=2980+(i<<2)|0;e=t[735]|0;r=1<<r;if(e&r){i=2980+(i+2<<2)|0;e=t[i>>2]|0;if(e>>>0<(t[739]|0)>>>0)ye();else{_=i;k=e}}else{t[735]=e|r;_=2980+(i+2<<2)|0;k=n}t[_>>2]=a;t[k+12>>2]=a;t[a+8>>2]=k;t[a+12>>2]=n}t[737]=o;t[740]=l}N=f+8|0;return N|0}else k=b}else k=b}else if(e>>>0<=4294967231){e=e+11|0;h=e&-8;c=t[736]|0;if(c){r=0-h|0;e=e>>>8;if(e)if(h>>>0>16777215)u=31;else{k=(e+1048320|0)>>>16&8;g=e<<k;_=(g+520192|0)>>>16&4;g=g<<_;u=(g+245760|0)>>>16&2;u=14-(_|k|u)+(g<<u>>>15)|0;u=h>>>(u+7|0)&1|u<<1}else u=0;e=t[3244+(u<<2)>>2]|0;e:do{if(!e){n=0;e=0;g=86}else{s=r;n=0;l=h<<((u|0)==31?0:25-(u>>>1)|0);o=e;e=0;while(1){a=t[o+4>>2]&-8;r=a-h|0;if(r>>>0<s>>>0)if((a|0)==(h|0)){a=o;e=o;g=90;break e}else e=o;else r=s;g=t[o+20>>2]|0;o=t[o+16+(l>>>31<<2)>>2]|0;n=(g|0)==0|(g|0)==(o|0)?n:g;if(!o){g=86;break}else{s=r;l=l<<1}}}}while(0);if((g|0)==86){if((n|0)==0&(e|0)==0){e=2<<u;e=c&(e|0-e);if(!e){k=h;break}e=(e&0-e)+-1|0;d=e>>>12&16;e=e>>>d;c=e>>>5&8;e=e>>>c;_=e>>>2&4;e=e>>>_;k=e>>>1&2;e=e>>>k;n=e>>>1&1;n=t[3244+((c|d|_|k|n)+(e>>>n)<<2)>>2]|0;e=0}if(!n){l=r;o=e}else{a=n;g=90}}if((g|0)==90)while(1){g=0;k=(t[a+4>>2]&-8)-h|0;n=k>>>0<r>>>0;r=n?k:r;e=n?a:e;n=t[a+16>>2]|0;if(n){a=n;g=90;continue}a=t[a+20>>2]|0;if(!a){l=r;o=e;break}else g=90}if((o|0)!=0?l>>>0<((t[737]|0)-h|0)>>>0:0){n=t[739]|0;if(o>>>0<n>>>0)ye();s=o+h|0;if(o>>>0>=s>>>0)ye();a=t[o+24>>2]|0;r=t[o+12>>2]|0;do{if((r|0)==(o|0)){e=o+20|0;i=t[e>>2]|0;if(!i){e=o+16|0;i=t[e>>2]|0;if(!i){b=0;break}}while(1){r=i+20|0;f=t[r>>2]|0;if(f){i=f;e=r;continue}r=i+16|0;f=t[r>>2]|0;if(!f)break;else{i=f;e=r}}if(e>>>0<n>>>0)ye();else{t[e>>2]=0;b=i;break}}else{f=t[o+8>>2]|0;if(f>>>0<n>>>0)ye();i=f+12|0;if((t[i>>2]|0)!=(o|0))ye();e=r+8|0;if((t[e>>2]|0)==(o|0)){t[i>>2]=r;t[e>>2]=f;b=r;break}else ye()}}while(0);do{if(a){i=t[o+28>>2]|0;e=3244+(i<<2)|0;if((o|0)==(t[e>>2]|0)){t[e>>2]=b;if(!b){t[736]=t[736]&~(1<<i);break}}else{if(a>>>0<(t[739]|0)>>>0)ye();i=a+16|0;if((t[i>>2]|0)==(o|0))t[i>>2]=b;else t[a+20>>2]=b;if(!b)break}e=t[739]|0;if(b>>>0<e>>>0)ye();t[b+24>>2]=a;i=t[o+16>>2]|0;do{if(i)if(i>>>0<e>>>0)ye();else{t[b+16>>2]=i;t[i+24>>2]=b;break}}while(0);i=t[o+20>>2]|0;if(i)if(i>>>0<(t[739]|0)>>>0)ye();else{t[b+20>>2]=i;t[i+24>>2]=b;break}}}while(0);e:do{if(l>>>0>=16){t[o+4>>2]=h|3;t[o+(h|4)>>2]=l|1;t[o+(l+h)>>2]=l;i=l>>>3;if(l>>>0<256){e=i<<1;f=2980+(e<<2)|0;r=t[735]|0;i=1<<i;if(r&i){i=2980+(e+2<<2)|0;e=t[i>>2]|0;if(e>>>0<(t[739]|0)>>>0)ye();else{m=i;v=e}}else{t[735]=r|i;m=2980+(e+2<<2)|0;v=f}t[m>>2]=s;t[v+12>>2]=s;t[o+(h+8)>>2]=v;t[o+(h+12)>>2]=f;break}i=l>>>8;if(i)if(l>>>0>16777215)f=31;else{D=(i+1048320|0)>>>16&8;N=i<<D;z=(N+520192|0)>>>16&4;N=N<<z;f=(N+245760|0)>>>16&2;f=14-(z|D|f)+(N<<f>>>15)|0;f=l>>>(f+7|0)&1|f<<1}else f=0;i=3244+(f<<2)|0;t[o+(h+28)>>2]=f;t[o+(h+20)>>2]=0;t[o+(h+16)>>2]=0;e=t[736]|0;r=1<<f;if(!(e&r)){t[736]=e|r;t[i>>2]=s;t[o+(h+24)>>2]=i;t[o+(h+12)>>2]=s;t[o+(h+8)>>2]=s;break}i=t[i>>2]|0;i:do{if((t[i+4>>2]&-8|0)!=(l|0)){f=l<<((f|0)==31?0:25-(f>>>1)|0);while(1){e=i+16+(f>>>31<<2)|0;r=t[e>>2]|0;if(!r)break;if((t[r+4>>2]&-8|0)==(l|0)){A=r;break i}else{f=f<<1;i=r}}if(e>>>0<(t[739]|0)>>>0)ye();else{t[e>>2]=s;t[o+(h+24)>>2]=i;t[o+(h+12)>>2]=s;t[o+(h+8)>>2]=s;break e}}else A=i}while(0);i=A+8|0;e=t[i>>2]|0;N=t[739]|0;if(e>>>0>=N>>>0&A>>>0>=N>>>0){t[e+12>>2]=s;t[i>>2]=s;t[o+(h+8)>>2]=e;t[o+(h+12)>>2]=A;t[o+(h+24)>>2]=0;break}else ye()}else{N=l+h|0;t[o+4>>2]=N|3;N=o+(N+4)|0;t[N>>2]=t[N>>2]|1}}while(0);N=o+8|0;return N|0}else k=h}else k=h}else k=-1}while(0);r=t[737]|0;if(r>>>0>=k>>>0){i=r-k|0;e=t[740]|0;if(i>>>0>15){t[740]=e+k;t[737]=i;t[e+(k+4)>>2]=i|1;t[e+r>>2]=i;t[e+4>>2]=k|3}else{t[737]=0;t[740]=0;t[e+4>>2]=r|3;N=e+(r+4)|0;t[N>>2]=t[N>>2]|1}N=e+8|0;return N|0}e=t[738]|0;if(e>>>0>k>>>0){D=e-k|0;t[738]=D;N=t[741]|0;t[741]=N+k;t[N+(k+4)>>2]=D|1;t[N+4>>2]=k|3;N=N+8|0;return N|0}do{if(!(t[853]|0)){e=Re(30)|0;if(!(e+-1&e)){t[855]=e;t[854]=e;t[856]=-1;t[857]=-1;t[858]=0;t[846]=0;t[853]=(He(0)|0)&-16^1431655768;break}else ye()}}while(0);o=k+48|0;l=t[855]|0;u=k+47|0;s=l+u|0;l=0-l|0;c=s&l;if(c>>>0<=k>>>0){N=0;return N|0}e=t[845]|0;if((e|0)!=0?(v=t[843]|0,A=v+c|0,A>>>0<=v>>>0|A>>>0>e>>>0):0){N=0;return N|0}e:do{if(!(t[846]&4)){e=t[741]|0;i:do{if(e){n=3388;while(1){r=t[n>>2]|0;if(r>>>0<=e>>>0?(w=n+4|0,(r+(t[w>>2]|0)|0)>>>0>e>>>0):0){a=n;e=w;break}n=t[n+8>>2]|0;if(!n){g=174;break i}}r=s-(t[738]|0)&l;if(r>>>0<2147483647){n=Se(r|0)|0;A=(n|0)==((t[a>>2]|0)+(t[e>>2]|0)|0);e=A?r:0;if(A){if((n|0)!=(-1|0)){y=n;_=e;g=194;break e}}else g=184}else e=0}else g=174}while(0);do{if((g|0)==174){a=Se(0)|0;if((a|0)!=(-1|0)){e=a;r=t[854]|0;n=r+-1|0;if(!(n&e))r=c;else r=c-e+(n+e&0-r)|0;e=t[843]|0;n=e+r|0;if(r>>>0>k>>>0&r>>>0<2147483647){A=t[845]|0;if((A|0)!=0?n>>>0<=e>>>0|n>>>0>A>>>0:0){e=0;break}n=Se(r|0)|0;A=(n|0)==(a|0);e=A?r:0;if(A){y=a;_=e;g=194;break e}else g=184}else e=0}else e=0}}while(0);i:do{if((g|0)==184){a=0-r|0;do{if(o>>>0>r>>>0&(r>>>0<2147483647&(n|0)!=(-1|0))?(p=t[855]|0,p=u-r+p&0-p,p>>>0<2147483647):0)if((Se(p|0)|0)==(-1|0)){Se(a|0)|0;break i}else{r=p+r|0;break}}while(0);if((n|0)!=(-1|0)){y=n;_=r;g=194;break e}}}while(0);t[846]=t[846]|4;g=191}else{e=0;g=191}}while(0);if((((g|0)==191?c>>>0<2147483647:0)?(y=Se(c|0)|0,M=Se(0)|0,y>>>0<M>>>0&((y|0)!=(-1|0)&(M|0)!=(-1|0))):0)?(E=M-y|0,S=E>>>0>(k+40|0)>>>0,S):0){_=S?E:e;g=194}if((g|0)==194){e=(t[843]|0)+_|0;t[843]=e;if(e>>>0>(t[844]|0)>>>0)t[844]=e;s=t[741]|0;e:do{if(s){a=3388;do{e=t[a>>2]|0;r=a+4|0;n=t[r>>2]|0;if((y|0)==(e+n|0)){T=e;R=r;C=n;P=a;g=204;break}a=t[a+8>>2]|0}while((a|0)!=0);if(((g|0)==204?(t[P+12>>2]&8|0)==0:0)?s>>>0<y>>>0&s>>>0>=T>>>0:0){t[R>>2]=C+_;N=(t[738]|0)+_|0;D=s+8|0;D=(D&7|0)==0?0:0-D&7;z=N-D|0;t[741]=s+D;t[738]=z;t[s+(D+4)>>2]=z|1;t[s+(N+4)>>2]=40;t[742]=t[857];break}e=t[739]|0;if(y>>>0<e>>>0){t[739]=y;e=y}r=y+_|0;a=3388;while(1){if((t[a>>2]|0)==(r|0)){n=a;r=a;g=212;break}a=t[a+8>>2]|0;if(!a){r=3388;break}}if((g|0)==212)if(!(t[r+12>>2]&8)){t[n>>2]=y;d=r+4|0;t[d>>2]=(t[d>>2]|0)+_;d=y+8|0;d=(d&7|0)==0?0:0-d&7;u=y+(_+8)|0;u=(u&7|0)==0?0:0-u&7;i=y+(u+_)|0;h=d+k|0;b=y+h|0;c=i-(y+d)-k|0;t[y+(d+4)>>2]=k|3;i:do{if((i|0)!=(s|0)){if((i|0)==(t[740]|0)){N=(t[737]|0)+c|0;t[737]=N;t[740]=b;t[y+(h+4)>>2]=N|1;t[y+(N+h)>>2]=N;break}l=_+4|0;r=t[y+(l+u)>>2]|0;if((r&3|0)==1){o=r&-8;a=r>>>3;r:do{if(r>>>0>=256){s=t[y+((u|24)+_)>>2]|0;f=t[y+(_+12+u)>>2]|0;do{if((f|0)==(i|0)){n=u|16;f=y+(l+n)|0;r=t[f>>2]|0;if(!r){f=y+(n+_)|0;r=t[f>>2]|0;if(!r){B=0;break}}while(1){n=r+20|0;a=t[n>>2]|0;if(a){r=a;f=n;continue}n=r+16|0;a=t[n>>2]|0;if(!a)break;else{r=a;f=n}}if(f>>>0<e>>>0)ye();else{t[f>>2]=0;B=r;break}}else{n=t[y+((u|8)+_)>>2]|0;if(n>>>0<e>>>0)ye();e=n+12|0;if((t[e>>2]|0)!=(i|0))ye();r=f+8|0;if((t[r>>2]|0)==(i|0)){t[e>>2]=f;t[r>>2]=n;B=f;break}else ye()}}while(0);if(!s)break;e=t[y+(_+28+u)>>2]|0;r=3244+(e<<2)|0;do{if((i|0)!=(t[r>>2]|0)){if(s>>>0<(t[739]|0)>>>0)ye();e=s+16|0;if((t[e>>2]|0)==(i|0))t[e>>2]=B;else t[s+20>>2]=B;if(!B)break r}else{t[r>>2]=B;if(B)break;t[736]=t[736]&~(1<<e);break r}}while(0);r=t[739]|0;if(B>>>0<r>>>0)ye();t[B+24>>2]=s;i=u|16;e=t[y+(i+_)>>2]|0;do{if(e)if(e>>>0<r>>>0)ye();else{t[B+16>>2]=e;t[e+24>>2]=B;break}}while(0);i=t[y+(l+i)>>2]|0;if(!i)break;if(i>>>0<(t[739]|0)>>>0)ye();else{t[B+20>>2]=i;t[i+24>>2]=B;break}}else{f=t[y+((u|8)+_)>>2]|0;n=t[y+(_+12+u)>>2]|0;r=2980+(a<<1<<2)|0;do{if((f|0)!=(r|0)){if(f>>>0<e>>>0)ye();if((t[f+12>>2]|0)==(i|0))break;ye()}}while(0);if((n|0)==(f|0)){t[735]=t[735]&~(1<<a);break}do{if((n|0)==(r|0))I=n+8|0;else{if(n>>>0<e>>>0)ye();e=n+8|0;if((t[e>>2]|0)==(i|0)){I=e;break}ye()}}while(0);t[f+12>>2]=n;t[I>>2]=f}}while(0);i=y+((o|u)+_)|0;n=o+c|0}else n=c;i=i+4|0;t[i>>2]=t[i>>2]&-2;t[y+(h+4)>>2]=n|1;t[y+(n+h)>>2]=n;i=n>>>3;if(n>>>0<256){e=i<<1;f=2980+(e<<2)|0;r=t[735]|0;i=1<<i;do{if(!(r&i)){t[735]=r|i;z=2980+(e+2<<2)|0;D=f}else{i=2980+(e+2<<2)|0;e=t[i>>2]|0;if(e>>>0>=(t[739]|0)>>>0){z=i;D=e;break}ye()}}while(0);t[z>>2]=b;t[D+12>>2]=b;t[y+(h+8)>>2]=D;t[y+(h+12)>>2]=f;break}i=n>>>8;do{if(!i)f=0;else{if(n>>>0>16777215){f=31;break}z=(i+1048320|0)>>>16&8;D=i<<z;B=(D+520192|0)>>>16&4;D=D<<B;f=(D+245760|0)>>>16&2;f=14-(B|z|f)+(D<<f>>>15)|0;f=n>>>(f+7|0)&1|f<<1}}while(0);i=3244+(f<<2)|0;t[y+(h+28)>>2]=f;t[y+(h+20)>>2]=0;t[y+(h+16)>>2]=0;e=t[736]|0;r=1<<f;if(!(e&r)){t[736]=e|r;t[i>>2]=b;t[y+(h+24)>>2]=i;t[y+(h+12)>>2]=b;t[y+(h+8)>>2]=b;break}i=t[i>>2]|0;r:do{if((t[i+4>>2]&-8|0)!=(n|0)){f=n<<((f|0)==31?0:25-(f>>>1)|0);while(1){e=i+16+(f>>>31<<2)|0;r=t[e>>2]|0;if(!r)break;if((t[r+4>>2]&-8|0)==(n|0)){N=r;break r}else{f=f<<1;i=r}}if(e>>>0<(t[739]|0)>>>0)ye();else{t[e>>2]=b;t[y+(h+24)>>2]=i;t[y+(h+12)>>2]=b;t[y+(h+8)>>2]=b;break i}}else N=i}while(0);i=N+8|0;e=t[i>>2]|0;D=t[739]|0;if(e>>>0>=D>>>0&N>>>0>=D>>>0){t[e+12>>2]=b;t[i>>2]=b;t[y+(h+8)>>2]=e;t[y+(h+12)>>2]=N;t[y+(h+24)>>2]=0;break}else ye()}else{N=(t[738]|0)+c|0;t[738]=N;t[741]=b;t[y+(h+4)>>2]=N|1}}while(0);N=y+(d|8)|0;return N|0}else r=3388;while(1){e=t[r>>2]|0;if(e>>>0<=s>>>0?(i=t[r+4>>2]|0,f=e+i|0,f>>>0>s>>>0):0)break;r=t[r+8>>2]|0}n=e+(i+-39)|0;e=e+(i+-47+((n&7|0)==0?0:0-n&7))|0;n=s+16|0;e=e>>>0<n>>>0?s:e;i=e+8|0;r=y+8|0;r=(r&7|0)==0?0:0-r&7;N=_+-40-r|0;t[741]=y+r;t[738]=N;t[y+(r+4)>>2]=N|1;t[y+(_+-36)>>2]=40;t[742]=t[857];r=e+4|0;t[r>>2]=27;t[i>>2]=t[847];t[i+4>>2]=t[848];t[i+8>>2]=t[849];t[i+12>>2]=t[850];t[847]=y;t[848]=_;t[850]=0;t[849]=i;i=e+28|0;t[i>>2]=7;if((e+32|0)>>>0<f>>>0)do{N=i;i=i+4|0;t[i>>2]=7}while((N+8|0)>>>0<f>>>0);if((e|0)!=(s|0)){a=e-s|0;t[r>>2]=t[r>>2]&-2;t[s+4>>2]=a|1;t[e>>2]=a;i=a>>>3;if(a>>>0<256){e=i<<1;f=2980+(e<<2)|0;r=t[735]|0;i=1<<i;if(r&i){i=2980+(e+2<<2)|0;e=t[i>>2]|0;if(e>>>0<(t[739]|0)>>>0)ye();else{O=i;x=e}}else{t[735]=r|i;O=2980+(e+2<<2)|0;x=f}t[O>>2]=s;t[x+12>>2]=s;t[s+8>>2]=x;t[s+12>>2]=f;break}i=a>>>8;if(i)if(a>>>0>16777215)f=31;else{D=(i+1048320|0)>>>16&8;N=i<<D;z=(N+520192|0)>>>16&4;N=N<<z;f=(N+245760|0)>>>16&2;f=14-(z|D|f)+(N<<f>>>15)|0;f=a>>>(f+7|0)&1|f<<1}else f=0;r=3244+(f<<2)|0;t[s+28>>2]=f;t[s+20>>2]=0;t[n>>2]=0;i=t[736]|0;e=1<<f;if(!(i&e)){t[736]=i|e;t[r>>2]=s;t[s+24>>2]=r;t[s+12>>2]=s;t[s+8>>2]=s;break}i=t[r>>2]|0;i:do{if((t[i+4>>2]&-8|0)!=(a|0)){f=a<<((f|0)==31?0:25-(f>>>1)|0);while(1){e=i+16+(f>>>31<<2)|0;r=t[e>>2]|0;if(!r)break;if((t[r+4>>2]&-8|0)==(a|0)){L=r;break i}else{f=f<<1;i=r}}if(e>>>0<(t[739]|0)>>>0)ye();else{t[e>>2]=s;t[s+24>>2]=i;t[s+12>>2]=s;t[s+8>>2]=s;break e}}else L=i}while(0);i=L+8|0;e=t[i>>2]|0;N=t[739]|0;if(e>>>0>=N>>>0&L>>>0>=N>>>0){t[e+12>>2]=s;t[i>>2]=s;t[s+8>>2]=e;t[s+12>>2]=L;t[s+24>>2]=0;break}else ye()}}else{N=t[739]|0;if((N|0)==0|y>>>0<N>>>0)t[739]=y;t[847]=y;t[848]=_;t[850]=0;t[744]=t[853];t[743]=-1;i=0;do{N=i<<1;D=2980+(N<<2)|0;t[2980+(N+3<<2)>>2]=D;t[2980+(N+2<<2)>>2]=D;i=i+1|0}while((i|0)!=32);N=y+8|0;N=(N&7|0)==0?0:0-N&7;D=_+-40-N|0;t[741]=y+N;t[738]=D;t[y+(N+4)>>2]=D|1;t[y+(_+-36)>>2]=40;t[742]=t[857]}}while(0);i=t[738]|0;if(i>>>0>k>>>0){D=i-k|0;t[738]=D;N=t[741]|0;t[741]=N+k;t[N+(k+4)>>2]=D|1;t[N+4>>2]=k|3;N=N+8|0;return N|0}}t[(ms()|0)>>2]=12;N=0;return N|0}function Ml(e){e=e|0;var i=0,r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0,p=0;if(!e)return;i=e+-8|0;l=t[739]|0;if(i>>>0<l>>>0)ye();r=t[e+-4>>2]|0;f=r&3;if((f|0)==1)ye();b=r&-8;k=e+(b+-8)|0;do{if(!(r&1)){i=t[i>>2]|0;if(!f)return;o=-8-i|0;c=e+o|0;h=i+b|0;if(c>>>0<l>>>0)ye();if((c|0)==(t[740]|0)){i=e+(b+-4)|0;r=t[i>>2]|0;if((r&3|0)!=3){p=c;a=h;break}t[737]=h;t[i>>2]=r&-2;t[e+(o+4)>>2]=h|1;t[k>>2]=h;return}n=i>>>3;if(i>>>0<256){f=t[e+(o+8)>>2]|0;r=t[e+(o+12)>>2]|0;i=2980+(n<<1<<2)|0;if((f|0)!=(i|0)){if(f>>>0<l>>>0)ye();if((t[f+12>>2]|0)!=(c|0))ye()}if((r|0)==(f|0)){t[735]=t[735]&~(1<<n);p=c;a=h;break}if((r|0)!=(i|0)){if(r>>>0<l>>>0)ye();i=r+8|0;if((t[i>>2]|0)==(c|0))s=i;else ye()}else s=r+8|0;t[f+12>>2]=r;t[s>>2]=f;p=c;a=h;break}s=t[e+(o+24)>>2]|0;f=t[e+(o+12)>>2]|0;do{if((f|0)==(c|0)){r=e+(o+20)|0;i=t[r>>2]|0;if(!i){r=e+(o+16)|0;i=t[r>>2]|0;if(!i){u=0;break}}while(1){f=i+20|0;n=t[f>>2]|0;if(n){i=n;r=f;continue}f=i+16|0;n=t[f>>2]|0;if(!n)break;else{i=n;r=f}}if(r>>>0<l>>>0)ye();else{t[r>>2]=0;u=i;break}}else{n=t[e+(o+8)>>2]|0;if(n>>>0<l>>>0)ye();i=n+12|0;if((t[i>>2]|0)!=(c|0))ye();r=f+8|0;if((t[r>>2]|0)==(c|0)){t[i>>2]=f;t[r>>2]=n;u=f;break}else ye()}}while(0);if(s){i=t[e+(o+28)>>2]|0;r=3244+(i<<2)|0;if((c|0)==(t[r>>2]|0)){t[r>>2]=u;if(!u){t[736]=t[736]&~(1<<i);p=c;a=h;break}}else{if(s>>>0<(t[739]|0)>>>0)ye();i=s+16|0;if((t[i>>2]|0)==(c|0))t[i>>2]=u;else t[s+20>>2]=u;if(!u){p=c;a=h;break}}r=t[739]|0;if(u>>>0<r>>>0)ye();t[u+24>>2]=s;i=t[e+(o+16)>>2]|0;do{if(i)if(i>>>0<r>>>0)ye();else{t[u+16>>2]=i;t[i+24>>2]=u;break}}while(0);i=t[e+(o+20)>>2]|0;if(i)if(i>>>0<(t[739]|0)>>>0)ye();else{t[u+20>>2]=i;t[i+24>>2]=u;p=c;a=h;break}else{p=c;a=h}}else{p=c;a=h}}else{p=i;a=b}}while(0);if(p>>>0>=k>>>0)ye();i=e+(b+-4)|0;r=t[i>>2]|0;if(!(r&1))ye();if(!(r&2)){if((k|0)==(t[741]|0)){v=(t[738]|0)+a|0;t[738]=v;t[741]=p;t[p+4>>2]=v|1;if((p|0)!=(t[740]|0))return;t[740]=0;t[737]=0;return}if((k|0)==(t[740]|0)){v=(t[737]|0)+a|0;t[737]=v;t[740]=p;t[p+4>>2]=v|1;t[p+v>>2]=v;return}a=(r&-8)+a|0;n=r>>>3;do{if(r>>>0>=256){s=t[e+(b+16)>>2]|0;i=t[e+(b|4)>>2]|0;do{if((i|0)==(k|0)){r=e+(b+12)|0;i=t[r>>2]|0;if(!i){r=e+(b+8)|0;i=t[r>>2]|0;if(!i){_=0;break}}while(1){f=i+20|0;n=t[f>>2]|0;if(n){i=n;r=f;continue}f=i+16|0;n=t[f>>2]|0;if(!n)break;else{i=n;r=f}}if(r>>>0<(t[739]|0)>>>0)ye();else{t[r>>2]=0;_=i;break}}else{r=t[e+b>>2]|0;if(r>>>0<(t[739]|0)>>>0)ye();f=r+12|0;if((t[f>>2]|0)!=(k|0))ye();n=i+8|0;if((t[n>>2]|0)==(k|0)){t[f>>2]=i;t[n>>2]=r;_=i;break}else ye()}}while(0);if(s){i=t[e+(b+20)>>2]|0;r=3244+(i<<2)|0;if((k|0)==(t[r>>2]|0)){t[r>>2]=_;if(!_){t[736]=t[736]&~(1<<i);break}}else{if(s>>>0<(t[739]|0)>>>0)ye();i=s+16|0;if((t[i>>2]|0)==(k|0))t[i>>2]=_;else t[s+20>>2]=_;if(!_)break}r=t[739]|0;if(_>>>0<r>>>0)ye();t[_+24>>2]=s;i=t[e+(b+8)>>2]|0;do{if(i)if(i>>>0<r>>>0)ye();else{t[_+16>>2]=i;t[i+24>>2]=_;break}}while(0);i=t[e+(b+12)>>2]|0;if(i)if(i>>>0<(t[739]|0)>>>0)ye();else{t[_+20>>2]=i;t[i+24>>2]=_;break}}}else{f=t[e+b>>2]|0;r=t[e+(b|4)>>2]|0;i=2980+(n<<1<<2)|0;if((f|0)!=(i|0)){if(f>>>0<(t[739]|0)>>>0)ye();if((t[f+12>>2]|0)!=(k|0))ye()}if((r|0)==(f|0)){t[735]=t[735]&~(1<<n);break}if((r|0)!=(i|0)){if(r>>>0<(t[739]|0)>>>0)ye();i=r+8|0;if((t[i>>2]|0)==(k|0))d=i;else ye()}else d=r+8|0;t[f+12>>2]=r;t[d>>2]=f}}while(0);t[p+4>>2]=a|1;t[p+a>>2]=a;if((p|0)==(t[740]|0)){t[737]=a;return}}else{t[i>>2]=r&-2;t[p+4>>2]=a|1;t[p+a>>2]=a}i=a>>>3;if(a>>>0<256){r=i<<1;n=2980+(r<<2)|0;f=t[735]|0;i=1<<i;if(f&i){i=2980+(r+2<<2)|0;r=t[i>>2]|0;if(r>>>0<(t[739]|0)>>>0)ye();else{w=i;m=r}}else{t[735]=f|i;w=2980+(r+2<<2)|0;m=n}t[w>>2]=p;t[m+12>>2]=p;t[p+8>>2]=m;t[p+12>>2]=n;return}i=a>>>8;if(i)if(a>>>0>16777215)n=31;else{w=(i+1048320|0)>>>16&8;m=i<<w;k=(m+520192|0)>>>16&4;m=m<<k;n=(m+245760|0)>>>16&2;n=14-(k|w|n)+(m<<n>>>15)|0;n=a>>>(n+7|0)&1|n<<1}else n=0;i=3244+(n<<2)|0;t[p+28>>2]=n;t[p+20>>2]=0;t[p+16>>2]=0;r=t[736]|0;f=1<<n;e:do{if(r&f){i=t[i>>2]|0;i:do{if((t[i+4>>2]&-8|0)!=(a|0)){n=a<<((n|0)==31?0:25-(n>>>1)|0);while(1){r=i+16+(n>>>31<<2)|0;f=t[r>>2]|0;if(!f)break;if((t[f+4>>2]&-8|0)==(a|0)){v=f;break i}else{n=n<<1;i=f}}if(r>>>0<(t[739]|0)>>>0)ye();else{t[r>>2]=p;t[p+24>>2]=i;t[p+12>>2]=p;t[p+8>>2]=p;break e}}else v=i}while(0);i=v+8|0;r=t[i>>2]|0;m=t[739]|0;if(r>>>0>=m>>>0&v>>>0>=m>>>0){t[r+12>>2]=p;t[i>>2]=p;t[p+8>>2]=r;t[p+12>>2]=v;t[p+24>>2]=0;break}else ye()}else{t[736]=r|f;t[i>>2]=p;t[p+24>>2]=i;t[p+12>>2]=p;t[p+8>>2]=p}}while(0);p=(t[743]|0)+-1|0;t[743]=p;if(!p)i=3396;else return;while(1){i=t[i>>2]|0;if(!i)break;else i=i+8|0}t[743]=-1;return}function Al(e,i){e=e|0;i=i|0;var r=0;if(e){r=ie(i,e)|0;if((i|e)>>>0>65535)r=((r>>>0)/(e>>>0)|0|0)==(i|0)?r:-1}else r=0;i=yl(r)|0;if(!i)return i|0;if(!(t[i+-4>>2]&3))return i|0;xl(i|0,0,r|0)|0;return i|0}function El(e,i){e=e|0;i=i|0;var r=0,f=0;if(!e){e=yl(i)|0;return e|0}if(i>>>0>4294967231){t[(ms()|0)>>2]=12;e=0;return e|0}r=Tl(e+-8|0,i>>>0<11?16:i+11&-8)|0;if(r){e=r+8|0;return e|0}r=yl(i)|0;if(!r){e=0;return e|0}f=t[e+-4>>2]|0;f=(f&-8)-((f&3|0)==0?8:4)|0;Dl(r|0,e|0,(f>>>0<i>>>0?f:i)|0)|0;Ml(e);e=r;return e|0}function Sl(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;do{if((i|0)!=8){f=i>>>2;if((i&3|0)!=0|(f|0)==0){e=22;return e|0}if(f+1073741823&f){e=22;return e|0}if((-64-i|0)>>>0<r>>>0){e=12;return e|0}else{f=Rl(i>>>0<16?16:i,r)|0;break}}else f=yl(r)|0}while(0);if(!f){e=12;return e|0}t[e>>2]=f;e=0;return e|0}function Tl(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0;b=e+4|0;_=t[b>>2]|0;o=_&-8;c=e+o|0;l=t[739]|0;r=_&3;if(!((r|0)!=1&e>>>0>=l>>>0&e>>>0<c>>>0))ye();f=e+(o|4)|0;n=t[f>>2]|0;if(!(n&1))ye();if(!r){if(i>>>0<256){e=0;return e|0}if(o>>>0>=(i+4|0)>>>0?(o-i|0)>>>0<=t[855]<<1>>>0:0)return e|0;e=0;return e|0}if(o>>>0>=i>>>0){r=o-i|0;if(r>>>0<=15)return e|0;t[b>>2]=_&1|i|2;t[e+(i+4)>>2]=r|3;t[f>>2]=t[f>>2]|1;Cl(e+i|0,r);return e|0}if((c|0)==(t[741]|0)){r=(t[738]|0)+o|0;if(r>>>0<=i>>>0){e=0;return e|0}d=r-i|0;t[b>>2]=_&1|i|2;t[e+(i+4)>>2]=d|1;t[741]=e+i;t[738]=d;return e|0}if((c|0)==(t[740]|0)){f=(t[737]|0)+o|0;if(f>>>0<i>>>0){e=0;return e|0}r=f-i|0;if(r>>>0>15){t[b>>2]=_&1|i|2;t[e+(i+4)>>2]=r|1;t[e+f>>2]=r;f=e+(f+4)|0;t[f>>2]=t[f>>2]&-2;f=e+i|0}else{t[b>>2]=_&1|f|2;f=e+(f+4)|0;t[f>>2]=t[f>>2]|1;f=0;r=0}t[737]=r;t[740]=f;return e|0}if(n&2){e=0;return e|0}h=(n&-8)+o|0;if(h>>>0<i>>>0){e=0;return e|0}d=h-i|0;a=n>>>3;do{if(n>>>0>=256){s=t[e+(o+24)>>2]|0;a=t[e+(o+12)>>2]|0;do{if((a|0)==(c|0)){f=e+(o+20)|0;r=t[f>>2]|0;if(!r){f=e+(o+16)|0;r=t[f>>2]|0;if(!r){u=0;break}}while(1){n=r+20|0;a=t[n>>2]|0;if(a){r=a;f=n;continue}n=r+16|0;a=t[n>>2]|0;if(!a)break;else{r=a;f=n}}if(f>>>0<l>>>0)ye();else{t[f>>2]=0;u=r;break}}else{n=t[e+(o+8)>>2]|0;if(n>>>0<l>>>0)ye();r=n+12|0;if((t[r>>2]|0)!=(c|0))ye();f=a+8|0;if((t[f>>2]|0)==(c|0)){t[r>>2]=a;t[f>>2]=n;u=a;break}else ye()}}while(0);if(s){r=t[e+(o+28)>>2]|0;f=3244+(r<<2)|0;if((c|0)==(t[f>>2]|0)){t[f>>2]=u;if(!u){t[736]=t[736]&~(1<<r);break}}else{if(s>>>0<(t[739]|0)>>>0)ye();r=s+16|0;if((t[r>>2]|0)==(c|0))t[r>>2]=u;else t[s+20>>2]=u;if(!u)break}f=t[739]|0;if(u>>>0<f>>>0)ye();t[u+24>>2]=s;r=t[e+(o+16)>>2]|0;do{if(r)if(r>>>0<f>>>0)ye();else{t[u+16>>2]=r;t[r+24>>2]=u;break}}while(0);r=t[e+(o+20)>>2]|0;if(r)if(r>>>0<(t[739]|0)>>>0)ye();else{t[u+20>>2]=r;t[r+24>>2]=u;break}}}else{n=t[e+(o+8)>>2]|0;f=t[e+(o+12)>>2]|0;r=2980+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0<l>>>0)ye();if((t[n+12>>2]|0)!=(c|0))ye()}if((f|0)==(n|0)){t[735]=t[735]&~(1<<a);break}if((f|0)!=(r|0)){if(f>>>0<l>>>0)ye();r=f+8|0;if((t[r>>2]|0)==(c|0))s=r;else ye()}else s=f+8|0;t[n+12>>2]=f;t[s>>2]=n}}while(0);if(d>>>0<16){t[b>>2]=h|_&1|2;i=e+(h|4)|0;t[i>>2]=t[i>>2]|1;return e|0}else{t[b>>2]=_&1|i|2;t[e+(i+4)>>2]=d|3;_=e+(h|4)|0;t[_>>2]=t[_>>2]|1;Cl(e+i|0,d);return e|0}return 0}function Rl(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0;e=e>>>0<16?16:e;if(e+-1&e){r=16;while(1)if(r>>>0<e>>>0)r=r<<1;else{e=r;break}}if((-64-e|0)>>>0<=i>>>0){t[(ms()|0)>>2]=12;l=0;return l|0}s=i>>>0<11?16:i+11&-8;f=yl(s+12+e|0)|0;if(!f){l=0;return l|0}i=f+-8|0;r=e+-1|0;do{if(f&r){n=f+r&0-e;r=n+-8|0;a=i;n=(r-a|0)>>>0>15?r:n+(e+-8)|0;a=n-a|0;e=f+-4|0;f=t[e>>2]|0;r=(f&-8)-a|0;if(!(f&3)){t[n>>2]=(t[i>>2]|0)+a;t[n+4>>2]=r;i=n;break}else{f=n+4|0;t[f>>2]=r|t[f>>2]&1|2;r=n+(r+4)|0;t[r>>2]=t[r>>2]|1;t[e>>2]=a|t[e>>2]&1|2;t[f>>2]=t[f>>2]|1;Cl(i,a);i=n;break}}}while(0);e=i+4|0;r=t[e>>2]|0;if((r&3|0)!=0?(l=r&-8,l>>>0>(s+16|0)>>>0):0){a=l-s|0;t[e>>2]=s|r&1|2;t[i+(s|4)>>2]=a|3;l=i+(l|4)|0;t[l>>2]=t[l>>2]|1;Cl(i+s|0,a)}l=i+8|0;return l|0}function Cl(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0,k=0,w=0,m=0,v=0;k=e+i|0;r=t[e+4>>2]|0;do{if(!(r&1)){u=t[e>>2]|0;if(!(r&3))return;d=e+(0-u)|0;h=u+i|0;o=t[739]|0;if(d>>>0<o>>>0)ye();if((d|0)==(t[740]|0)){f=e+(i+4)|0;r=t[f>>2]|0;if((r&3|0)!=3){v=d;s=h;break}t[737]=h;t[f>>2]=r&-2;t[e+(4-u)>>2]=h|1;t[k>>2]=h;return}a=u>>>3;if(u>>>0<256){n=t[e+(8-u)>>2]|0;f=t[e+(12-u)>>2]|0;r=2980+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0<o>>>0)ye();if((t[n+12>>2]|0)!=(d|0))ye()}if((f|0)==(n|0)){t[735]=t[735]&~(1<<a);v=d;s=h;break}if((f|0)!=(r|0)){if(f>>>0<o>>>0)ye();r=f+8|0;if((t[r>>2]|0)==(d|0))l=r;else ye()}else l=f+8|0;t[n+12>>2]=f;t[l>>2]=n;v=d;s=h;break}l=t[e+(24-u)>>2]|0;n=t[e+(12-u)>>2]|0;do{if((n|0)==(d|0)){n=16-u|0;f=e+(n+4)|0;r=t[f>>2]|0;if(!r){f=e+n|0;r=t[f>>2]|0;if(!r){c=0;break}}while(1){n=r+20|0;a=t[n>>2]|0;if(a){r=a;f=n;continue}n=r+16|0;a=t[n>>2]|0;if(!a)break;else{r=a;f=n}}if(f>>>0<o>>>0)ye();else{t[f>>2]=0;c=r;break}}else{a=t[e+(8-u)>>2]|0;if(a>>>0<o>>>0)ye();r=a+12|0;if((t[r>>2]|0)!=(d|0))ye();f=n+8|0;if((t[f>>2]|0)==(d|0)){t[r>>2]=n;t[f>>2]=a;c=n;break}else ye()}}while(0);if(l){r=t[e+(28-u)>>2]|0;f=3244+(r<<2)|0;if((d|0)==(t[f>>2]|0)){t[f>>2]=c;if(!c){t[736]=t[736]&~(1<<r);v=d;s=h;break}}else{if(l>>>0<(t[739]|0)>>>0)ye();r=l+16|0;if((t[r>>2]|0)==(d|0))t[r>>2]=c;else t[l+20>>2]=c;if(!c){v=d;s=h;break}}n=t[739]|0;if(c>>>0<n>>>0)ye();t[c+24>>2]=l;r=16-u|0;f=t[e+r>>2]|0;do{if(f)if(f>>>0<n>>>0)ye();else{t[c+16>>2]=f;t[f+24>>2]=c;break}}while(0);r=t[e+(r+4)>>2]|0;if(r)if(r>>>0<(t[739]|0)>>>0)ye();else{t[c+20>>2]=r;t[r+24>>2]=c;v=d;s=h;break}else{v=d;s=h}}else{v=d;s=h}}else{v=e;s=i}}while(0);o=t[739]|0;if(k>>>0<o>>>0)ye();r=e+(i+4)|0;f=t[r>>2]|0;if(!(f&2)){if((k|0)==(t[741]|0)){m=(t[738]|0)+s|0;t[738]=m;t[741]=v;t[v+4>>2]=m|1;if((v|0)!=(t[740]|0))return;t[740]=0;t[737]=0;return}if((k|0)==(t[740]|0)){m=(t[737]|0)+s|0;t[737]=m;t[740]=v;t[v+4>>2]=m|1;t[v+m>>2]=m;return}s=(f&-8)+s|0;a=f>>>3;do{if(f>>>0>=256){l=t[e+(i+24)>>2]|0;n=t[e+(i+12)>>2]|0;do{if((n|0)==(k|0)){f=e+(i+20)|0;r=t[f>>2]|0;if(!r){f=e+(i+16)|0;r=t[f>>2]|0;if(!r){_=0;break}}while(1){n=r+20|0;a=t[n>>2]|0;if(a){r=a;f=n;continue}n=r+16|0;a=t[n>>2]|0;if(!a)break;else{r=a;f=n}}if(f>>>0<o>>>0)ye();else{t[f>>2]=0;_=r;break}}else{a=t[e+(i+8)>>2]|0;if(a>>>0<o>>>0)ye();r=a+12|0;if((t[r>>2]|0)!=(k|0))ye();f=n+8|0;if((t[f>>2]|0)==(k|0)){t[r>>2]=n;t[f>>2]=a;_=n;break}else ye()}}while(0);if(l){r=t[e+(i+28)>>2]|0;f=3244+(r<<2)|0;if((k|0)==(t[f>>2]|0)){t[f>>2]=_;if(!_){t[736]=t[736]&~(1<<r);break}}else{if(l>>>0<(t[739]|0)>>>0)ye();r=l+16|0;if((t[r>>2]|0)==(k|0))t[r>>2]=_;else t[l+20>>2]=_;if(!_)break}f=t[739]|0;if(_>>>0<f>>>0)ye();t[_+24>>2]=l;r=t[e+(i+16)>>2]|0;do{if(r)if(r>>>0<f>>>0)ye();else{t[_+16>>2]=r;t[r+24>>2]=_;break}}while(0);r=t[e+(i+20)>>2]|0;if(r)if(r>>>0<(t[739]|0)>>>0)ye();else{t[_+20>>2]=r;t[r+24>>2]=_;break}}}else{n=t[e+(i+8)>>2]|0;f=t[e+(i+12)>>2]|0;r=2980+(a<<1<<2)|0;if((n|0)!=(r|0)){if(n>>>0<o>>>0)ye();if((t[n+12>>2]|0)!=(k|0))ye()}if((f|0)==(n|0)){t[735]=t[735]&~(1<<a);break}if((f|0)!=(r|0)){if(f>>>0<o>>>0)ye();r=f+8|0;if((t[r>>2]|0)==(k|0))b=r;else ye()}else b=f+8|0;t[n+12>>2]=f;t[b>>2]=n}}while(0);t[v+4>>2]=s|1;t[v+s>>2]=s;if((v|0)==(t[740]|0)){t[737]=s;return}}else{t[r>>2]=f&-2;t[v+4>>2]=s|1;t[v+s>>2]=s}r=s>>>3;if(s>>>0<256){f=r<<1;a=2980+(f<<2)|0;n=t[735]|0;r=1<<r;if(n&r){r=2980+(f+2<<2)|0;f=t[r>>2]|0;if(f>>>0<(t[739]|0)>>>0)ye();else{w=r;m=f}}else{t[735]=n|r;w=2980+(f+2<<2)|0;m=a}t[w>>2]=v;t[m+12>>2]=v;t[v+8>>2]=m;t[v+12>>2]=a;return}r=s>>>8;if(r)if(s>>>0>16777215)a=31;else{w=(r+1048320|0)>>>16&8;m=r<<w;k=(m+520192|0)>>>16&4;m=m<<k;a=(m+245760|0)>>>16&2;a=14-(k|w|a)+(m<<a>>>15)|0;a=s>>>(a+7|0)&1|a<<1}else a=0;r=3244+(a<<2)|0;t[v+28>>2]=a;t[v+20>>2]=0;t[v+16>>2]=0;f=t[736]|0;n=1<<a;if(!(f&n)){t[736]=f|n;t[r>>2]=v;t[v+24>>2]=r;t[v+12>>2]=v;t[v+8>>2]=v;return}r=t[r>>2]|0;e:do{if((t[r+4>>2]&-8|0)!=(s|0)){a=s<<((a|0)==31?0:25-(a>>>1)|0);while(1){f=r+16+(a>>>31<<2)|0;n=t[f>>2]|0;if(!n)break;if((t[n+4>>2]&-8|0)==(s|0)){r=n;break e}else{a=a<<1;r=n}}if(f>>>0<(t[739]|0)>>>0)ye();t[f>>2]=v;t[v+24>>2]=r;t[v+12>>2]=v;t[v+8>>2]=v;return}}while(0);f=r+8|0;n=t[f>>2]|0;m=t[739]|0;if(!(n>>>0>=m>>>0&r>>>0>=m>>>0))ye();t[n+12>>2]=v;t[f>>2]=v;t[v+8>>2]=n;t[v+12>>2]=r;t[v+24>>2]=0;return}function Pl(){}function Il(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;f=i-f-(r>>>0>e>>>0|0)>>>0;return(I=f,e-r>>>0|0)|0}function Ol(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){I=i>>r;return e>>>r|(i&(1<<r)-1)<<32-r}I=(i|0)<0?-1:0;return i>>r-32|0}function xl(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,a=0,s=0,l=0;n=e+r|0;if((r|0)>=20){i=i&255;s=e&3;l=i|i<<8|i<<16|i<<24;a=n&~3;if(s){s=e+4-s|0;while((e|0)<(s|0)){f[e>>0]=i;e=e+1|0}}while((e|0)<(a|0)){t[e>>2]=l;e=e+4|0}}while((e|0)<(n|0)){f[e>>0]=i;e=e+1|0}return e-r|0}function Ll(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){I=i<<r|(e&(1<<r)-1<<32-r)>>>32-r;return e<<r}I=e<<r-32;return 0}function Bl(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;r=e+r>>>0;return(I=i+f+(r>>>0<e>>>0|0)>>>0,r|0)|0}function zl(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){I=i>>>r;return e>>>r|(i&(1<<r)-1)<<32-r}I=0;return i>>>r-32|0}function Dl(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if((r|0)>=4096)return Te(e|0,i|0,r|0)|0;n=e|0;if((e&3)==(i&3)){while(e&3){if(!r)return n|0;f[e>>0]=f[i>>0]|0;e=e+1|0;i=i+1|0;r=r-1|0}while((r|0)>=4){t[e>>2]=t[i>>2];e=e+4|0;i=i+4|0;r=r-4|0}}while((r|0)>0){f[e>>0]=f[i>>0]|0;e=e+1|0;i=i+1|0;r=r-1|0}return n|0}function Nl(e){e=e|0;var i=0;i=f[_+(e&255)>>0]|0;if((i|0)<8)return i|0;i=f[_+(e>>8&255)>>0]|0;if((i|0)<8)return i+8|0;i=f[_+(e>>16&255)>>0]|0;if((i|0)<8)return i+16|0;return(f[_+(e>>>24)>>0]|0)+24|0}function Fl(e,i){e=e|0;i=i|0;var r=0,f=0,n=0,t=0;t=e&65535;n=i&65535;r=ie(n,t)|0;f=e>>>16;e=(r>>>16)+(ie(n,f)|0)|0;n=i>>>16;i=ie(n,t)|0;return(I=(e>>>16)+(ie(n,f)|0)+(((e&65535)+i|0)>>>16)|0,e+i<<16|r&65535|0)|0}function Hl(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,t=0,a=0,s=0,l=0,o=0;o=i>>31|((i|0)<0?-1:0)<<1;l=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;t=f>>31|((f|0)<0?-1:0)<<1;n=((f|0)<0?-1:0)>>31|((f|0)<0?-1:0)<<1;s=Il(o^e,l^i,o,l)|0;a=I;e=t^o;i=n^l;return Il(($l(s,a,Il(t^r,n^f,t,n)|0,I,0)|0)^e,I^i,e,i)|0}function Ul(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0,s=0,l=0,o=0,u=0;n=c;c=c+16|0;l=n|0;s=i>>31|((i|0)<0?-1:0)<<1;a=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;u=f>>31|((f|0)<0?-1:0)<<1;o=((f|0)<0?-1:0)>>31|((f|0)<0?-1:0)<<1;e=Il(s^e,a^i,s,a)|0;i=I;$l(e,i,Il(u^r,o^f,u,o)|0,I,l)|0;f=Il(t[l>>2]^s,t[l+4>>2]^a,s,a)|0;r=I;c=n;return(I=r,f)|0}function jl(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,t=0;n=e;t=r;r=Fl(n,t)|0;e=I;return(I=(ie(i,t)|0)+(ie(f,n)|0)+e|e&0,r|0|0)|0}function Yl(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;return $l(e,i,r,f,0)|0}function ql(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var n=0,a=0;a=c;c=c+16|0;n=a|0;$l(e,i,r,f,n)|0;c=a;return(I=t[n+4>>2]|0,t[n>>2]|0)|0}function $l(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var a=0,s=0,l=0,o=0,u=0,c=0,h=0,d=0,b=0,_=0;c=e;o=i;u=o;s=r;d=f;l=d;if(!u){a=(n|0)!=0;if(!l){if(a){t[n>>2]=(c>>>0)%(s>>>0);t[n+4>>2]=0}d=0;n=(c>>>0)/(s>>>0)>>>0;return(I=d,n)|0}else{if(!a){d=0;n=0;return(I=d,n)|0}t[n>>2]=e|0;t[n+4>>2]=i&0;d=0;n=0;return(I=d,n)|0}}a=(l|0)==0;do{if(s){if(!a){a=(fe(l|0)|0)-(fe(u|0)|0)|0;if(a>>>0<=31){h=a+1|0;l=31-a|0;i=a-31>>31;s=h;e=c>>>(h>>>0)&i|u<<l;i=u>>>(h>>>0)&i;a=0;l=c<<l;break}if(!n){d=0;n=0;return(I=d,n)|0}t[n>>2]=e|0;t[n+4>>2]=o|i&0;d=0;n=0;return(I=d,n)|0}a=s-1|0;if(a&s){l=(fe(s|0)|0)+33-(fe(u|0)|0)|0;_=64-l|0;h=32-l|0;o=h>>31;b=l-32|0;i=b>>31;s=l;e=h-1>>31&u>>>(b>>>0)|(u<<h|c>>>(l>>>0))&i;i=i&u>>>(l>>>0);a=c<<_&o;l=(u<<_|c>>>(b>>>0))&o|c<<h&l-33>>31;break}if(n){t[n>>2]=a&c;t[n+4>>2]=0}if((s|0)==1){b=o|i&0;_=e|0|0;return(I=b,_)|0}else{_=Nl(s|0)|0;b=u>>>(_>>>0)|0;_=u<<32-_|c>>>(_>>>0)|0;return(I=b,_)|0}}else{if(a){if(n){t[n>>2]=(u>>>0)%(s>>>0);t[n+4>>2]=0}b=0;_=(u>>>0)/(s>>>0)>>>0;return(I=b,_)|0}if(!c){if(n){t[n>>2]=0;t[n+4>>2]=(u>>>0)%(l>>>0)}b=0;_=(u>>>0)/(l>>>0)>>>0;return(I=b,_)|0}a=l-1|0;if(!(a&l)){if(n){t[n>>2]=e|0;t[n+4>>2]=a&u|i&0}b=0;_=u>>>((Nl(l|0)|0)>>>0);return(I=b,_)|0}a=(fe(l|0)|0)-(fe(u|0)|0)|0;if(a>>>0<=30){i=a+1|0;l=31-a|0;s=i;e=u<<l|c>>>(i>>>0);i=u>>>(i>>>0);a=0;l=c<<l;break}if(!n){b=0;_=0;return(I=b,_)|0}t[n>>2]=e|0;t[n+4>>2]=o|i&0;b=0;_=0;return(I=b,_)|0}}while(0);if(!s){u=l;o=0;l=0}else{h=r|0|0;c=d|f&0;u=Bl(h|0,c|0,-1,-1)|0;r=I;o=l;l=0;do{f=o;o=a>>>31|o<<1;a=l|a<<1;f=e<<1|f>>>31|0;d=e>>>31|i<<1|0;Il(u,r,f,d)|0;_=I;b=_>>31|((_|0)<0?-1:0)<<1;l=b&1;e=Il(f,d,b&h,(((_|0)<0?-1:0)>>31|((_|0)<0?-1:0)<<1)&c)|0;i=I;s=s-1|0}while((s|0)!=0);u=o;o=0}s=0;if(n){t[n>>2]=e;t[n+4>>2]=i}b=(a|0)>>>31|(u|s)<<1|(s<<1|a>>>31)&0|o;_=(a<<1|0>>>31)&-2|l;return(I=b,_)|0}function Vl(e,i,r,f,n,t,a,s){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;s=s|0;return vo[e&3](i|0,r|0,f|0,n|0,t|0,a|0,s|0)|0}function Xl(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;return po[e&63](i|0,r|0,f|0)|0}function Gl(e,i){e=e|0;i=i|0;return+go[e&3](i|0)}function Kl(e,i){e=e|0;i=i|0;yo[e&7](i|0)}function Wl(e,i,r){e=e|0;i=i|0;r=r|0;Mo[e&7](i|0,r|0)}function Zl(e,i,r,f,n,t,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;return Ao[e&7](i|0,r|0,f|0,n|0,t|0,a|0)|0}function Jl(e,i){e=e|0;i=i|0;return Eo[e&15](i|0)|0}function Ql(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;So[e&15](i|0,r|0,f|0)}function eo(e,i,r,f,n,t,a,s,l,o,u,c){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;c=c|0;return To[e&3](i|0,r|0,f|0,n|0,t|0,a|0,s|0,l|0,o|0,u|0,c|0)|0}function io(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;return Ro[e&63](i|0,r|0,f|0,n|0)|0}function ro(e,i,r){e=e|0;i=i|0;r=r|0;return Co[e&7](i|0,r|0)|0}function fo(e,i,r,f,n,t){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;return Po[e&3](i|0,r|0,f|0,n|0,t|0)|0}function no(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;Io[e&3](i|0,r|0,f|0,n|0)}function to(e,i,r,f,n,t,a){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;ne(0);return 0}function ao(e,i,r){e=e|0;i=i|0;r=r|0;ne(1);return 0}function so(e){e=e|0;ne(2);return 0.0}function lo(e){e=e|0;ne(3)}function oo(e,i){e=e|0;i=i|0;ne(4)}function uo(e,i,r,f,n,t){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;ne(5);return 0}function co(e){e=e|0;ne(6);return 0}function ho(e,i,r){e=e|0;i=i|0;r=r|0;ne(7)}function bo(e,i,r,f,n,t,a,s,l,o,u){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;t=t|0;a=a|0;s=s|0;l=l|0;o=o|0;u=u|0;ne(8);return 0}function _o(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;ne(9);return 0}function ko(e,i){e=e|0;i=i|0;ne(10);return 0}function wo(e,i,r,f,n){e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;ne(11);return 0}function mo(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;ne(12)}var vo=[to,it,Li,to];var po=[ao,ml,Ns,zs,yf,Mf,Af,Ef,Pn,In,xn,Wn,ut,Si,Hi,ct,ht,Ei,Ti,Ln,Bn,zn,Dn,kt,wt,mt,vt,gt,yt,At,Et,St,Tt,Rt,Ct,Pt,It,Ot,xt,Lt,Bt,zt,Dt,Nt,Ft,Ht,Ut,jt,Yt,qt,$t,Vt,qi,$i,Vi,Xi,Gi,Ki,Wi,Zi,Bs,Ds,ao,ao];var go=[so,Xt,Gt,so];var yo=[lo,Xn,xi,$r,Vr,bl,_l,lo];var Mo=[oo,lf,of,uf,qf,$n,Mi,oo];var Ao=[uo,et,Oi,bt,Ii,uo,uo,uo];var Eo=[co,Ls,at,st,Fi,Ni,Us,Ta,Aa,co,co,co,co,co,co,co];var So=[ho,mi,vi,pi,gi,hi,di,bi,_i,li,oi,ui,ci,ft,Di,ho];var To=[bo,Qn,Pi,bo];var Ro=[_o,ea,ia,$e,Ve,Xe,Ge,Ke,We,Ze,Je,Qe,ei,ii,ri,fi,ni,ti,ai,si,lr,or,ur,rr,fr,nr,tr,ar,sr,mf,vf,pf,gf,lt,Zn,yi,Ci,dt,Gn,Ri,Ai,_o,_o,_o,_o,_o,_o,_o,_o,_o,_o,_o,_o,_o,_o,_o,_o,_o,_o,_o,_o,_o,_o,_o];var Co=[ko,On,Ji,Qi,er,ir,ko,ko];var Po=[wo,ot,Bi,wo];var Io=[mo,Ia,La,mo];return{_opj_stream_destroy:Tf,_opj_stream_set_read_function:Rf,_opj_read_tile_header:on,_opj_set_warning_handler:Jf,_opj_destroy_cstr_info:En,_opj_image_create:Vf,_opj_set_error_handler:Qf,_opj_stream_set_user_data:Of,_opj_end_decompress:vn,_bitshift64Lshr:zl,_opj_stream_set_seek_function:Cf,_opj_decode:sn,_opj_set_decoded_resolution_factor:hn,_i64Add:Bl,_opj_stream_create_default_file_stream:Rn,_opj_set_default_decoder_parameters:nn,_bitshift64Ashr:Ol,_opj_get_decoded_tile:cn,_memset:xl,_opj_version:rn,_memcpy:Dl,_opj_destroy_cstr_index:Tn,_opj_stream_set_user_data_length:xf,_opj_stream_set_skip_function:If,_opj_image_destroy:Xf,_opj_stream_create_file_stream:Cn,_opj_setup_encoder:_n,_opj_stream_default_create:Sf,_bitshift64Shl:Ll,_opj_stream_create:wf,_jp2_version:sf,_i64Subtract:Il,_opj_get_cstr_index:Sn,_opj_encode:wn,_opj_read_header:an,_opj_get_cstr_info:An,_opj_set_default_encoder_parameters:bn,_opj_set_decode_area:ln,_opj_stream_set_write_function:Pf,_opj_dump_codec:Mn,_opj_create_decompress:fn,_opj_decode_tile_data:un,_free:Ml,_opj_image_tile_create:Wf,_opj_set_MCT:pn,_opj_set_info_handler:Zf,_opj_start_compress:kn,_opj_write_tile:gn,_opj_setup_decoder:tn,_malloc:yl,_opj_end_compress:mn,_opj_destroy_codec:yn,_jp2_decode:af,_opj_stream_create_buffer_stream:en,_opj_create_compress:dn,runPostSets:Pl,stackAlloc:Wr,stackSave:Zr,stackRestore:Jr,establishStackSpace:Qr,setThrew:ef,setTempRet0:nf,getTempRet0:tf,dynCall_iiiiiiii:Vl,dynCall_iiii:Xl,dynCall_di:Gl,dynCall_vi:Kl,dynCall_vii:Wl,dynCall_iiiiiii:Zl,dynCall_ii:Jl,dynCall_viii:Ql,dynCall_iiiiiiiiiiii:eo,dynCall_iiiii:io,dynCall_iii:ro,dynCall_iiiiii:fo,dynCall_viiii:no}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_opj_stream_destroy=Module._opj_stream_destroy=asm._opj_stream_destroy,_opj_stream_set_read_function=Module._opj_stream_set_read_function=asm._opj_stream_set_read_function,_opj_read_tile_header=Module._opj_read_tile_header=asm._opj_read_tile_header,_opj_set_warning_handler=Module._opj_set_warning_handler=asm._opj_set_warning_handler,_opj_destroy_cstr_info=Module._opj_destroy_cstr_info=asm._opj_destroy_cstr_info,_opj_image_create=Module._opj_image_create=asm._opj_image_create,_opj_set_error_handler=Module._opj_set_error_handler=asm._opj_set_error_handler,_opj_image_tile_create=Module._opj_image_tile_create=asm._opj_image_tile_create,_opj_end_decompress=Module._opj_end_decompress=asm._opj_end_decompress,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_opj_stream_set_seek_function=Module._opj_stream_set_seek_function=asm._opj_stream_set_seek_function,_opj_decode=Module._opj_decode=asm._opj_decode,_opj_set_decoded_resolution_factor=Module._opj_set_decoded_resolution_factor=asm._opj_set_decoded_resolution_factor,_opj_stream_create_default_file_stream=Module._opj_stream_create_default_file_stream=asm._opj_stream_create_default_file_stream,_opj_encode=Module._opj_encode=asm._opj_encode,_bitshift64Ashr=Module._bitshift64Ashr=asm._bitshift64Ashr,_opj_get_decoded_tile=Module._opj_get_decoded_tile=asm._opj_get_decoded_tile,_memset=Module._memset=asm._memset,_opj_version=Module._opj_version=asm._opj_version,_memcpy=Module._memcpy=asm._memcpy,_opj_destroy_cstr_index=Module._opj_destroy_cstr_index=asm._opj_destroy_cstr_index,_opj_stream_set_user_data_length=Module._opj_stream_set_user_data_length=asm._opj_stream_set_user_data_length,_opj_stream_set_skip_function=Module._opj_stream_set_skip_function=asm._opj_stream_set_skip_function,_opj_image_destroy=Module._opj_image_destroy=asm._opj_image_destroy,_opj_stream_create_file_stream=Module._opj_stream_create_file_stream=asm._opj_stream_create_file_stream,_opj_setup_encoder=Module._opj_setup_encoder=asm._opj_setup_encoder,_opj_stream_default_create=Module._opj_stream_default_create=asm._opj_stream_default_create,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,_opj_stream_create=Module._opj_stream_create=asm._opj_stream_create,_jp2_version=Module._jp2_version=asm._jp2_version,_i64Subtract=Module._i64Subtract=asm._i64Subtract,_opj_get_cstr_index=Module._opj_get_cstr_index=asm._opj_get_cstr_index,_opj_set_default_decoder_parameters=Module._opj_set_default_decoder_parameters=asm._opj_set_default_decoder_parameters,_i64Add=Module._i64Add=asm._i64Add,_opj_get_cstr_info=Module._opj_get_cstr_info=asm._opj_get_cstr_info,_opj_set_default_encoder_parameters=Module._opj_set_default_encoder_parameters=asm._opj_set_default_encoder_parameters,_opj_set_decode_area=Module._opj_set_decode_area=asm._opj_set_decode_area,_opj_stream_set_write_function=Module._opj_stream_set_write_function=asm._opj_stream_set_write_function,_opj_dump_codec=Module._opj_dump_codec=asm._opj_dump_codec,_opj_read_header=Module._opj_read_header=asm._opj_read_header,_opj_create_decompress=Module._opj_create_decompress=asm._opj_create_decompress,_opj_decode_tile_data=Module._opj_decode_tile_data=asm._opj_decode_tile_data,_opj_set_info_handler=Module._opj_set_info_handler=asm._opj_set_info_handler,_opj_stream_set_user_data=Module._opj_stream_set_user_data=asm._opj_stream_set_user_data,_opj_set_MCT=Module._opj_set_MCT=asm._opj_set_MCT,_free=Module._free=asm._free,runPostSets=Module.runPostSets=asm.runPostSets,_opj_start_compress=Module._opj_start_compress=asm._opj_start_compress,_opj_write_tile=Module._opj_write_tile=asm._opj_write_tile,_opj_setup_decoder=Module._opj_setup_decoder=asm._opj_setup_decoder,_malloc=Module._malloc=asm._malloc,_opj_end_compress=Module._opj_end_compress=asm._opj_end_compress,_opj_destroy_codec=Module._opj_destroy_codec=asm._opj_destroy_codec,_jp2_decode=Module._jp2_decode=asm._jp2_decode,_opj_stream_create_buffer_stream=Module._opj_stream_create_buffer_stream=asm._opj_stream_create_buffer_stream,_opj_create_compress=Module._opj_create_compress=asm._opj_create_compress,dynCall_iiiiiiii=Module.dynCall_iiiiiiii=asm.dynCall_iiiiiiii,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_di=Module.dynCall_di=asm.dynCall_di,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_iiiiiii=Module.dynCall_iiiiiii=asm.dynCall_iiiiiii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_iiiiiiiiiiii=Module.dynCall_iiiiiiiiiiii=asm.dynCall_iiiiiiiiiiii,dynCall_iiiii=Module.dynCall_iiiii=asm.dynCall_iiiii,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii,initialStackTop;function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}Runtime.stackAlloc=asm.stackAlloc,Runtime.stackSave=asm.stackSave,Runtime.stackRestore=asm.stackRestore,Runtime.establishStackSpace=asm.establishStackSpace,Runtime.setTempRet0=asm.setTempRet0,Runtime.getTempRet0=asm.getTempRet0,ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var preloadStartTime=null,calledMain=!1;function run(e){function i(){Module.calledRun||(Module.calledRun=!0,ABORT||(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}e=e||Module.arguments,null===preloadStartTime&&(preloadStartTime=Date.now()),runDependencies>0||(preRun(),runDependencies>0||Module.calledRun||(Module.setStatus?(Module.setStatus("Running..."),setTimeout((function(){setTimeout((function(){Module.setStatus("")}),1),i()}),1)):i()))}function exit(e,i){if(!i||!Module.noExitRuntime)throw Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE?(process.stdout.once("drain",(function(){process.exit(e)})),console.log(" "),setTimeout((function(){process.exit(e)}),500)):ENVIRONMENT_IS_SHELL&&"function"==typeof quit&&quit(e),new ExitStatus(e)}dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function(e){assert(0==runDependencies,"cannot call main when async dependencies remain! (listen on __ATMAIN__)"),assert(0==__ATPRERUN__.length,"cannot call main when preRun functions remain to be called"),e=e||[],ensureInitRuntime();var i=e.length+1;function r(){for(var e=0;e<3;e++)f.push(0)}var f=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];r();for(var n=0;n<i-1;n+=1)f.push(allocate(intArrayFromString(e[n]),"i8",ALLOC_NORMAL)),r();f.push(0),f=allocate(f,"i32",ALLOC_NORMAL);try{exit(Module._main(i,f,0),!0)}catch(e){if(e instanceof ExitStatus)return;if("SimulateInfiniteLoop"==e)return void(Module.noExitRuntime=!0);throw e&&"object"==typeof e&&e.stack&&Module.printErr("exception thrown: "+[e,e.stack]),e}finally{calledMain=!0}},Module.run=Module.run=run,Module.exit=Module.exit=exit;var abortDecorators=[];function abort(e){void 0!==e?(Module.print(e),Module.printErr(e),e=JSON.stringify(e)):e="",ABORT=!0,EXITSTATUS=1;var i="abort("+e+") at "+stackTrace()+"\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";throw abortDecorators&&abortDecorators.forEach((function(r){i=r(i,e)})),i}if(Module.abort=Module.abort=abort,Module.preInit)for("function"==typeof Module.preInit&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;return Module.noInitialRun&&(shouldRunNow=!1),run(),Module};module.exports=OpenJPEG},function(e,i){"use strict";var r={};function f(e){r.verbosity>=r.VERBOSITY_LEVELS.infos&&console.log("Info: "+e)}function n(e){r.verbosity>=r.VERBOSITY_LEVELS.warnings&&console.log("Warning: "+e)}function t(e,i,r){return Object.defineProperty(e,i,{value:r,enumerable:!0,configurable:!0,writable:!1}),r}function a(e){for(var i=1,r=0;e>i;)i<<=1,r++;return r}function s(e,i){return e[i]<<8|e[i+1]}function l(e,i){return(e[i]<<24|e[i+1]<<16|e[i+2]<<8|e[i+3])>>>0}function o(){var e={};return e.promise=new Promise((function(i,r){e.resolve=i,e.reject=r})),e}var u=function(){function e(){this.failOnCorruptedImage=!1}function i(e,i){e.x0=Math.ceil(i.XOsiz/e.XRsiz),e.x1=Math.ceil(i.Xsiz/e.XRsiz),e.y0=Math.ceil(i.YOsiz/e.YRsiz),e.y1=Math.ceil(i.Ysiz/e.YRsiz),e.width=e.x1-e.x0,e.height=e.y1-e.y0}function r(e,i){for(var r,f=e.SIZ,n=[],t=Math.ceil((f.Xsiz-f.XTOsiz)/f.XTsiz),a=Math.ceil((f.Ysiz-f.YTOsiz)/f.YTsiz),s=0;a>s;s++)for(var l=0;t>l;l++)(r={}).tx0=Math.max(f.XTOsiz+l*f.XTsiz,f.XOsiz),r.ty0=Math.max(f.YTOsiz+s*f.YTsiz,f.YOsiz),r.tx1=Math.min(f.XTOsiz+(l+1)*f.XTsiz,f.Xsiz),r.ty1=Math.min(f.YTOsiz+(s+1)*f.YTsiz,f.Ysiz),r.width=r.tx1-r.tx0,r.height=r.ty1-r.ty0,r.components=[],n.push(r);e.tiles=n;for(var o=0,u=f.Csiz;u>o;o++)for(var c=i[o],h=0,d=n.length;d>h;h++){var b={};r=n[h],b.tcx0=Math.ceil(r.tx0/c.XRsiz),b.tcy0=Math.ceil(r.ty0/c.YRsiz),b.tcx1=Math.ceil(r.tx1/c.XRsiz),b.tcy1=Math.ceil(r.ty1/c.YRsiz),b.width=b.tcx1-b.tcx0,b.height=b.tcy1-b.tcy0,r.components[o]=b}}function t(e,i,r){var f=i.codingStyleParameters,n={};return f.entropyCoderWithCustomPrecincts?(n.PPx=f.precinctsSizes[r].PPx,n.PPy=f.precinctsSizes[r].PPy):(n.PPx=15,n.PPy=15),n.xcb_=r>0?Math.min(f.xcb,n.PPx-1):Math.min(f.xcb,n.PPx),n.ycb_=r>0?Math.min(f.ycb,n.PPy-1):Math.min(f.ycb,n.PPy),n}function o(e,i,r){var f=1<<r.PPx,n=1<<r.PPy,t=0===i.resLevel,a=1<<r.PPx+(t?0:-1),s=1<<r.PPy+(t?0:-1),l=i.trx1>i.trx0?Math.ceil(i.trx1/f)-Math.floor(i.trx0/f):0,o=i.try1>i.try0?Math.ceil(i.try1/n)-Math.floor(i.try0/n):0,u=l*o;i.precinctParameters={precinctWidth:f,precinctHeight:n,numprecinctswide:l,numprecinctshigh:o,numprecincts:u,precinctWidthInSubband:a,precinctHeightInSubband:s}}function u(e,i,r){var f,n,t,a,s=r.xcb_,l=r.ycb_,o=1<<s,u=1<<l,c=i.tbx0>>s,h=i.tby0>>l,d=i.tbx1+o-1>>s,b=i.tby1+u-1>>l,_=i.resolution.precinctParameters,k=[],w=[];for(n=h;b>n;n++)for(f=c;d>f;f++){if((t={cbx:f,cby:n,tbx0:o*f,tby0:u*n,tbx1:o*(f+1),tby1:u*(n+1)}).tbx0_=Math.max(i.tbx0,t.tbx0),t.tby0_=Math.max(i.tby0,t.tby0),t.tbx1_=Math.min(i.tbx1,t.tbx1),t.tby1_=Math.min(i.tby1,t.tby1),a=Math.floor((t.tbx0_-i.tbx0)/_.precinctWidthInSubband)+Math.floor((t.tby0_-i.tby0)/_.precinctHeightInSubband)*_.numprecinctswide,t.precinctNumber=a,t.subbandType=i.type,t.Lblock=3,!(t.tbx1_<=t.tbx0_||t.tby1_<=t.tby0_)){k.push(t);var m=w[a];void 0!==m?(f<m.cbxMin?m.cbxMin=f:f>m.cbxMax&&(m.cbxMax=f),n<m.cbyMin?m.cbxMin=n:n>m.cbyMax&&(m.cbyMax=n)):w[a]=m={cbxMin:f,cbyMin:n,cbxMax:f,cbyMax:n},t.precinct=m}}i.codeblockParameters={codeblockWidth:s,codeblockHeight:l,numcodeblockwide:d-c+1,numcodeblockhigh:b-h+1},i.codeblocks=k,i.precincts=w}function h(e,i,r){for(var f=[],n=e.subbands,t=0,a=n.length;a>t;t++)for(var s=n[t].codeblocks,l=0,o=s.length;o>l;l++){var u=s[l];u.precinctNumber===i&&f.push(u)}return{layerNumber:r,codeblocks:f}}function d(e){for(var i=e.SIZ,r=e.currentTile.index,f=e.tiles[r],n=f.codingStyleDefaultParameters.layersCount,t=i.Csiz,a=0,s=0;t>s;s++)a=Math.max(a,f.components[s].codingStyleParameters.decompositionLevelsCount);var l=0,o=0,u=0,c=0;this.nextPacket=function(){for(;n>l;l++){for(;a>=o;o++){for(;t>u;u++){var e=f.components[u];if(!(o>e.codingStyleParameters.decompositionLevelsCount)){for(var i=e.resolutions[o],r=i.precinctParameters.numprecincts;r>c;){var s=h(i,c,l);return c++,s}c=0}}u=0}o=0}}}function b(e){for(var i=e.SIZ,r=e.currentTile.index,f=e.tiles[r],n=f.codingStyleDefaultParameters.layersCount,t=i.Csiz,a=0,s=0;t>s;s++)a=Math.max(a,f.components[s].codingStyleParameters.decompositionLevelsCount);var l=0,o=0,u=0,c=0;this.nextPacket=function(){for(;a>=l;l++){for(;n>o;o++){for(;t>u;u++){var e=f.components[u];if(!(l>e.codingStyleParameters.decompositionLevelsCount)){for(var i=e.resolutions[l],r=i.precinctParameters.numprecincts;r>c;){var s=h(i,c,o);return c++,s}c=0}}u=0}o=0}}}function _(e){var i,r,f,n,t=e.SIZ,a=e.currentTile.index,s=e.tiles[a],l=s.codingStyleDefaultParameters.layersCount,o=t.Csiz,u=0;for(f=0;o>f;f++){var c=s.components[f];u=Math.max(u,c.codingStyleParameters.decompositionLevelsCount)}var d=new Int32Array(u+1);for(r=0;u>=r;++r){var b=0;for(f=0;o>f;++f){var _=s.components[f].resolutions;r<_.length&&(b=Math.max(b,_[r].precinctParameters.numprecincts))}d[r]=b}i=0,r=0,f=0,n=0,this.nextPacket=function(){for(;u>=r;r++){for(;n<d[r];n++){for(;o>f;f++){var e=s.components[f];if(!(r>e.codingStyleParameters.decompositionLevelsCount)){var t=e.resolutions[r],a=t.precinctParameters.numprecincts;if(!(n>=a)){for(;l>i;){var c=h(t,n,i);return i++,c}i=0}}}f=0}n=0}}}function k(e){var i=e.SIZ,r=e.currentTile.index,f=e.tiles[r],n=f.codingStyleDefaultParameters.layersCount,t=i.Csiz,a=v(f),s=a,l=0,o=0,u=0,c=0,d=0;this.nextPacket=function(){for(;d<s.maxNumHigh;d++){for(;c<s.maxNumWide;c++){for(;t>u;u++){for(var e=f.components[u],i=e.codingStyleParameters.decompositionLevelsCount;i>=o;o++){var r=e.resolutions[o],b=a.components[u].resolutions[o],_=m(c,d,b,s,r);if(null!==_){for(;n>l;){var k=h(r,_,l);return l++,k}l=0}}o=0}u=0}c=0}}}function w(e){var i=e.SIZ,r=e.currentTile.index,f=e.tiles[r],n=f.codingStyleDefaultParameters.layersCount,t=i.Csiz,a=v(f),s=0,l=0,o=0,u=0,c=0;this.nextPacket=function(){for(;t>o;++o){for(var e=f.components[o],i=a.components[o],r=e.codingStyleParameters.decompositionLevelsCount;c<i.maxNumHigh;c++){for(;u<i.maxNumWide;u++){for(;r>=l;l++){var d=e.resolutions[l],b=i.resolutions[l],_=m(u,c,b,i,d);if(null!==_){for(;n>s;){var k=h(d,_,s);return s++,k}s=0}}l=0}u=0}c=0}}}function m(e,i,r,f,n){var t=e*f.minWidth,a=i*f.minHeight;if(t%r.width!=0||a%r.height!=0)return null;var s=a/r.width*n.precinctParameters.numprecinctswide;return t/r.height+s}function v(e){for(var i=e.components.length,r=Number.MAX_VALUE,f=Number.MAX_VALUE,n=0,t=0,a=new Array(i),s=0;i>s;s++){for(var l=e.components[s],o=l.codingStyleParameters.decompositionLevelsCount,u=new Array(o+1),c=Number.MAX_VALUE,h=Number.MAX_VALUE,d=0,b=0,_=1,k=o;k>=0;--k){var w=l.resolutions[k],m=_*w.precinctParameters.precinctWidth,v=_*w.precinctParameters.precinctHeight;c=Math.min(c,m),h=Math.min(h,v),d=Math.max(d,w.precinctParameters.numprecinctswide),b=Math.max(b,w.precinctParameters.numprecinctshigh),u[k]={width:m,height:v},_<<=1}r=Math.min(r,c),f=Math.min(f,h),n=Math.max(n,d),t=Math.max(t,b),a[s]={resolutions:u,minWidth:c,minHeight:h,maxNumWide:d,maxNumHigh:b}}return{components:a,minWidth:r,minHeight:f,maxNumWide:n,maxNumHigh:t}}function p(e){for(var i=e.SIZ,r=e.currentTile.index,f=e.tiles[r],n=i.Csiz,a=0;n>a;a++){for(var s=f.components[a],l=s.codingStyleParameters.decompositionLevelsCount,c=[],h=[],m=0;l>=m;m++){var v,p=t(0,s,m),g={},y=1<<l-m;if(g.trx0=Math.ceil(s.tcx0/y),g.try0=Math.ceil(s.tcy0/y),g.trx1=Math.ceil(s.tcx1/y),g.try1=Math.ceil(s.tcy1/y),g.resLevel=m,o(0,g,p),c.push(g),0===m)(v={}).type="LL",v.tbx0=Math.ceil(s.tcx0/y),v.tby0=Math.ceil(s.tcy0/y),v.tbx1=Math.ceil(s.tcx1/y),v.tby1=Math.ceil(s.tcy1/y),v.resolution=g,u(0,v,p),h.push(v),g.subbands=[v];else{var M=1<<l-m+1,A=[];(v={}).type="HL",v.tbx0=Math.ceil(s.tcx0/M-.5),v.tby0=Math.ceil(s.tcy0/M),v.tbx1=Math.ceil(s.tcx1/M-.5),v.tby1=Math.ceil(s.tcy1/M),v.resolution=g,u(0,v,p),h.push(v),A.push(v),(v={}).type="LH",v.tbx0=Math.ceil(s.tcx0/M),v.tby0=Math.ceil(s.tcy0/M-.5),v.tbx1=Math.ceil(s.tcx1/M),v.tby1=Math.ceil(s.tcy1/M-.5),v.resolution=g,u(0,v,p),h.push(v),A.push(v),(v={}).type="HH",v.tbx0=Math.ceil(s.tcx0/M-.5),v.tby0=Math.ceil(s.tcy0/M-.5),v.tbx1=Math.ceil(s.tcx1/M-.5),v.tby1=Math.ceil(s.tcy1/M-.5),v.resolution=g,u(0,v,p),h.push(v),A.push(v),g.subbands=A}}s.resolutions=c,s.subbands=h}var E=f.codingStyleDefaultParameters.progressionOrder;switch(E){case 0:f.packetsIterator=new d(e);break;case 1:f.packetsIterator=new b(e);break;case 2:f.packetsIterator=new _(e);break;case 3:f.packetsIterator=new k(e);break;case 4:f.packetsIterator=new w(e);break;default:throw new Error("JPX Error: Unsupported progression order "+E)}}function g(e,i,r,f){function n(e){for(;e>h;){if(r+c>=i.length)throw new Error("Unexpected EOF");var f=i[r+c];c++,d?(u=u<<7|f,h+=7,d=!1):(u=u<<8|f,h+=8),255===f&&(d=!0)}return u>>>(h-=e)&(1<<e)-1}function t(e){return 255===i[r+c-1]&&i[r+c]===e?(s(1),!0):255===i[r+c]&&i[r+c+1]===e&&(s(2),!0)}function s(e){c+=e}function l(){h=0,d&&(c++,d=!1)}function o(){if(0===n(1))return 1;if(0===n(1))return 2;var e=n(2);return 3>e?e+3:31>(e=n(5))?e+6:(e=n(7))+37}for(var u,c=0,h=0,d=!1,b=e.currentTile.index,_=e.tiles[b],k=e.COD.sopMarkerUsed,w=e.COD.ephMarkerUsed,m=_.packetsIterator;f>c;)try{l(),k&&t(145)&&s(4);var v=m.nextPacket();if(void 0===v)return;if(!n(1))continue;for(var p,g=v.layerNumber,y=[],M=0,A=v.codeblocks.length;A>M;M++){var E=(p=v.codeblocks[M]).precinct,S=p.cbx-E.cbxMin,C=p.cby-E.cbyMin,P=!1,I=!1;if(void 0!==p.included)P=!!n(1);else{var O,x;if(void 0!==(E=p.precinct).inclusionTree)O=E.inclusionTree;else{var L=E.cbxMax-E.cbxMin+1,B=E.cbyMax-E.cbyMin+1;O=new R(L,B),x=new T(L,B),E.inclusionTree=O,E.zeroBitPlanesTree=x}for(O.reset(S,C,g);;){if(c>=i.length)return;if(O.isAboveThreshold())break;if(O.isKnown())O.nextLevel();else if(n(1)){if(O.setKnown(),O.isLeaf()){p.included=!0,P=I=!0;break}O.nextLevel()}else O.incrementValue()}}if(P){if(I){for((x=E.zeroBitPlanesTree).reset(S,C);;){if(c>=i.length)return;if(n(1)){if(!x.nextLevel())break}else x.incrementValue()}p.zeroBitPlanes=x.value}for(var z=o();n(1);)p.Lblock++;var D=a(z),N=n((1<<D>z?D-1:D)+p.Lblock);y.push({codeblock:p,codingpasses:z,dataLength:N})}}for(l(),w&&t(146);y.length>0;){var F=y.shift();void 0===(p=F.codeblock).data&&(p.data=[]),p.data.push({data:i,start:r+c,end:r+c+F.dataLength,codingpasses:F.codingpasses}),c+=F.dataLength}}catch(e){return}return c}function y(e,i,r,f,n,t,a,s){for(var l=f.tbx0,o=f.tby0,u=f.tbx1-f.tbx0,h=f.codeblocks,d="H"===f.type.charAt(0)?1:0,b="H"===f.type.charAt(1)?i:0,_=0,k=h.length;k>_;++_){var w=h[_],m=w.tbx1_-w.tbx0_,v=w.tby1_-w.tby0_;if(0!==m&&0!==v&&void 0!==w.data){var p,g;p=new C(m,v,w.subbandType,w.zeroBitPlanes,t),g=2;var y,M,A,E=w.data,S=0,T=0;for(y=0,M=E.length;M>y;y++)S+=(A=E[y]).end-A.start,T+=A.codingpasses;var R=new Int16Array(S),P=0;for(y=0,M=E.length;M>y;y++){var I=(A=E[y]).data.subarray(A.start,A.end);R.set(I,P),P+=I.length}var O=new c(R,0,S);for(p.setDecoder(O),y=0;T>y;y++){switch(g){case 0:p.runSignificancePropogationPass();break;case 1:p.runMagnitudeRefinementPass();break;case 2:p.runCleanupPass(),s&&p.checkSegmentationSymbol()}g=(g+1)%3}var x,L,B,z=w.tbx0_-l+(w.tby0_-o)*u,D=p.coefficentsSign,N=p.coefficentsMagnitude,F=p.bitsDecoded,H=a?0:.5;P=0;var U="LL"!==f.type;for(y=0;v>y;y++){var j=2*(z/u|0)*(i-u)+d+b;for(x=0;m>x;x++){if(0!==(L=N[P])){L=(L+H)*n,0!==D[P]&&(L=-L),B=F[P];var Y=U?j+(z<<1):z;e[Y]=a&&B>=t?L:L*(1<<t-B)}z++,P++}z+=u-m}}}}function M(e,i,r){for(var f=i.components[r],n=f.codingStyleParameters,t=f.quantizationParameters,a=n.decompositionLevelsCount,s=t.SPqcds,l=t.scalarExpounded,o=t.guardBits,u=n.segmentationSymbolUsed,c=e.components[r].precision,h=n.reversibleTransformation,d=h?new O:new I,b=[],_=0,k=0;a>=k;k++){for(var w=f.resolutions[k],m=w.trx1-w.trx0,v=w.try1-w.try0,p=new Float32Array(m*v),g=0,M=w.subbands.length;M>g;g++){var A,E;l?(A=s[_].mu,E=s[_].epsilon,_++):(A=s[0].mu,E=s[0].epsilon+(k>0?1-k:0));var T=w.subbands[g],R=S[T.type];y(p,m,0,T,h?1:Math.pow(2,c+R-E)*(1+A/2048),o+E-1,h,u)}b.push({width:m,height:v,items:p})}var C=d.calculate(b,f.tcx0,f.tcy0);return{left:f.tcx0,top:f.tcy0,width:C.width,height:C.height,items:C.items}}function A(e){for(var i=e.SIZ,r=e.components,f=i.Csiz,n=[],t=0,a=e.tiles.length;a>t;t++){var s,l=e.tiles[t],o=[];for(s=0;f>s;s++)o[s]=M(e,l,s);var u=o[0];if(N=r[0].isSigned)var c=new Int16Array(u.items.length*f);else c=new Uint16Array(u.items.length*f);var h,d,b,_,k,w,m,v,p,g,y,A,E,S,T,R={left:u.left,top:u.top,width:u.width,height:u.height,items:c},C=0;if(l.codingStyleDefaultParameters.multipleComponentTransform){var P=4===f,I=o[0].items,O=o[1].items,x=o[2].items,L=P?o[3].items:null;d=.5+(128<<(h=r[0].precision-8)),_=-(k=.5*(b=255*(1<<h)));var B=l.components[0],z=f-3;if(m=I.length,B.codingStyleParameters.reversibleTransformation)for(w=0;m>w;w++,C+=z)v=I[w]+d,p=O[w],y=(A=v-((g=x[w])+p>>2))+g,E=A+p,c[C++]=0>=y?0:y>=b?255:y>>h,c[C++]=0>=A?0:A>=b?255:A>>h,c[C++]=0>=E?0:E>=b?255:E>>h;else for(w=0;m>w;w++,C+=z)v=I[w]+d,p=O[w],y=v+1.402*(g=x[w]),A=v-.34413*p-.71414*g,E=v+1.772*p,c[C++]=0>=y?0:y>=b?255:y>>h,c[C++]=0>=A?0:A>=b?255:A>>h,c[C++]=0>=E?0:E>=b?255:E>>h;if(P)for(w=0,C=3;m>w;w++,C+=4)S=L[w],c[C]=_>=S?0:S>=k?255:S+d>>h}else for(s=0;f>s;s++)if(8===r[s].precision){var D=o[s].items;for(d=.5+(128<<(h=r[s].precision-8)),_=-(b=127.5*(1<<h)),C=s,w=0,m=D.length;m>w;w++)T=D[w],c[C]=_>=T?0:T>=b?255:T+d>>h,C+=f}else{var N=r[s].isSigned;D=o[s].items;if(N)for(C=s,w=0,m=D.length;m>w;w++)c[C]=D[w],C+=f;else{d=.5+(128<<(h=r[s].precision-8));var F=Math.pow(2,r[s].precision)-1;for(C=s,w=0,m=D.length;m>w;w++)T=D[w],c[C]=Math.max(Math.min(T+d,F),0),C+=f}}n.push(R)}return n}function E(e,i){for(var r=e.SIZ.Csiz,f=e.tiles[i],n=0;r>n;n++){var t=f.components[n],a=void 0!==e.currentTile.QCC[n]?e.currentTile.QCC[n]:e.currentTile.QCD;t.quantizationParameters=a;var s=void 0!==e.currentTile.COC[n]?e.currentTile.COC[n]:e.currentTile.COD;t.codingStyleParameters=s}f.codingStyleDefaultParameters=e.currentTile.COD}var S={LL:0,LH:1,HL:1,HH:2};e.prototype={parse:function(e){if(65359!==s(e,0))for(var i=0,r=e.length;r>i;){var t=8,a=l(e,i),o=l(e,i+4);if(i+=t,1===a&&(a=4294967296*l(e,i)+l(e,i+4),i+=8,t+=8),0===a&&(a=r-i+t),t>a)throw new Error("JPX Error: Invalid box field size");var u=a-t,c=!0;switch(o){case 1785737832:c=!1;break;case 1668246642:var h=e[i];if(e[i+1],e[i+2],1===h){var d=l(e,i+3);switch(d){case 16:case 17:case 18:break;default:n("Unknown colorspace "+d)}}else 2===h&&f("ICC profile not supported");break;case 1785737827:this.parseCodestream(e,i,i+u);break;case 1783636e3:218793738!==l(e,i)&&n("Invalid JP2 signature");break;case 1783634458:case 1718909296:case 1920099697:case 1919251232:case 1768449138:break;default:n("Unsupported header type "+o+" ("+String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,255&o)+")")}c&&(i+=u)}else this.parseCodestream(e,0,e.length)},parseImageProperties:function(e){for(var i=e.getByte();i>=0;){if(65361===(i<<8|(i=e.getByte()))){e.skip(4);var r=e.getInt32()>>>0,f=e.getInt32()>>>0,n=e.getInt32()>>>0,t=e.getInt32()>>>0;e.skip(16);var a=e.getUint16();return this.width=r-n,this.height=f-t,this.componentsCount=a,void(this.bitsPerComponent=8)}}throw new Error("JPX Error: No size marker found in JPX stream")},parseCodestream:function(e,f,t){var a={};try{for(var o=!1,u=f;t>u+1;){var c=s(e,u);u+=2;var h,d,b,_,k,w,m=0;switch(c){case 65359:a.mainHeader=!0;break;case 65497:break;case 65361:m=s(e,u);var v={};v.Xsiz=l(e,u+4),v.Ysiz=l(e,u+8),v.XOsiz=l(e,u+12),v.YOsiz=l(e,u+16),v.XTsiz=l(e,u+20),v.YTsiz=l(e,u+24),v.XTOsiz=l(e,u+28),v.YTOsiz=l(e,u+32);var y=s(e,u+36);v.Csiz=y;var M=[];h=u+38;for(var S=0;y>S;S++){var T={precision:1+(127&e[h]),isSigned:!!(128&e[h]),XRsiz:e[h+1],YRsiz:e[h+1]};i(T,v),M.push(T)}a.SIZ=v,a.components=M,r(a,M),a.QCC=[],a.COC=[];break;case 65372:m=s(e,u);var R={};switch(h=u+2,31&(d=e[h++])){case 0:_=8,k=!0;break;case 1:_=16,k=!1;break;case 2:_=16,k=!0;break;default:throw new Error("JPX Error: Invalid SQcd value "+d)}for(R.noQuantization=8===_,R.scalarExpounded=k,R.guardBits=d>>5,b=[];m+u>h;){var C={};8===_?(C.epsilon=e[h++]>>3,C.mu=0):(C.epsilon=e[h]>>3,C.mu=(7&e[h])<<8|e[h+1],h+=2),b.push(C)}R.SPqcds=b,a.mainHeader?a.QCD=R:(a.currentTile.QCD=R,a.currentTile.QCC=[]);break;case 65373:m=s(e,u);var P,I={};switch(h=u+2,a.SIZ.Csiz<257?P=e[h++]:(P=s(e,h),h+=2),31&(d=e[h++])){case 0:_=8,k=!0;break;case 1:_=16,k=!1;break;case 2:_=16,k=!0;break;default:throw new Error("JPX Error: Invalid SQcd value "+d)}for(I.noQuantization=8===_,I.scalarExpounded=k,I.guardBits=d>>5,b=[];m+u>h;)C={},8===_?(C.epsilon=e[h++]>>3,C.mu=0):(C.epsilon=e[h]>>3,C.mu=(7&e[h])<<8|e[h+1],h+=2),b.push(C);I.SPqcds=b,a.mainHeader?a.QCC[P]=I:a.currentTile.QCC[P]=I;break;case 65362:m=s(e,u);var O={};h=u+2;var x=e[h++];O.entropyCoderWithCustomPrecincts=!!(1&x),O.sopMarkerUsed=!!(2&x),O.ephMarkerUsed=!!(4&x),O.progressionOrder=e[h++],O.layersCount=s(e,h),h+=2,O.multipleComponentTransform=e[h++],O.decompositionLevelsCount=e[h++],O.xcb=2+(15&e[h++]),O.ycb=2+(15&e[h++]);var L=e[h++];if(O.selectiveArithmeticCodingBypass=!!(1&L),O.resetContextProbabilities=!!(2&L),O.terminationOnEachCodingPass=!!(4&L),O.verticalyStripe=!!(8&L),O.predictableTermination=!!(16&L),O.segmentationSymbolUsed=!!(32&L),O.reversibleTransformation=e[h++],O.entropyCoderWithCustomPrecincts){for(var B=[];m+u>h;){var z=e[h++];B.push({PPx:15&z,PPy:z>>4})}O.precinctsSizes=B}var D=[];if(O.selectiveArithmeticCodingBypass&&D.push("selectiveArithmeticCodingBypass"),O.resetContextProbabilities&&D.push("resetContextProbabilities"),O.terminationOnEachCodingPass&&D.push("terminationOnEachCodingPass"),O.verticalyStripe&&D.push("verticalyStripe"),O.predictableTermination&&D.push("predictableTermination"),D.length>0)throw o=!0,new Error("JPX Error: Unsupported COD options ("+D.join(", ")+")");a.mainHeader?a.COD=O:(a.currentTile.COD=O,a.currentTile.COC=[]);break;case 65424:m=s(e,u),(w={}).index=s(e,u+2),w.length=l(e,u+4),w.dataEnd=w.length+u-2,w.partIndex=e[u+8],w.partsCount=e[u+9],a.mainHeader=!1,0===w.partIndex&&(w.COD=a.COD,w.COC=a.COC.slice(0),w.QCD=a.QCD,w.QCC=a.QCC.slice(0)),a.currentTile=w;break;case 65427:0===(w=a.currentTile).partIndex&&(E(a,w.index),p(a)),g(a,e,u,m=w.dataEnd-u);break;case 65365:case 65367:case 65368:case 65380:m=s(e,u);break;case 65363:throw new Error("JPX Error: Codestream code 0xFF53 (COC) is not implemented");default:throw new Error("JPX Error: Unknown codestream code: "+c.toString(16))}u+=m}}catch(e){if(o||this.failOnCorruptedImage)throw e;n("Trying to recover from "+e.message)}this.tiles=A(a),this.width=a.SIZ.Xsiz-a.SIZ.XOsiz,this.height=a.SIZ.Ysiz-a.SIZ.YOsiz,this.componentsCount=a.SIZ.Csiz}};var T=function(){function e(e,i){var r=a(Math.max(e,i))+1;this.levels=[];for(var f=0;r>f;f++){var n={width:e,height:i,items:[]};this.levels.push(n),e=Math.ceil(e/2),i=Math.ceil(i/2)}}return e.prototype={reset:function(e,i){for(var r,f=0,n=0;f<this.levels.length;){var t=e+i*(r=this.levels[f]).width;if(void 0!==r.items[t]){n=r.items[t];break}r.index=t,e>>=1,i>>=1,f++}f--,(r=this.levels[f]).items[r.index]=n,this.currentLevel=f,delete this.value},incrementValue:function(){var e=this.levels[this.currentLevel];e.items[e.index]++},nextLevel:function(){var e=this.currentLevel,i=this.levels[e],r=i.items[i.index];return 0>--e?(this.value=r,!1):(this.currentLevel=e,(i=this.levels[e]).items[i.index]=r,!0)}},e}(),R=function(){function e(e,i){var r=a(Math.max(e,i))+1;this.levels=[];for(var f=0;r>f;f++){for(var n=new Uint8Array(e*i),t=new Uint8Array(e*i),s=0,l=n.length;l>s;s++)n[s]=0,t[s]=0;var o={width:e,height:i,items:n,status:t};this.levels.push(o),e=Math.ceil(e/2),i=Math.ceil(i/2)}}return e.prototype={reset:function(e,i,r){this.currentStopValue=r;for(var f=0;f<this.levels.length;){var n=this.levels[f],t=e+i*n.width;n.index=t,e>>=1,i>>=1,f++}this.currentLevel=this.levels.length-1,this.minValue=this.levels[this.currentLevel].items[0]},incrementValue:function(){var e=this.levels[this.currentLevel];e.items[e.index]=e.items[e.index]+1,e.items[e.index]>this.minValue&&(this.minValue=e.items[e.index])},nextLevel:function(){var e=this.currentLevel;if(0>--e)return!1;this.currentLevel=e;var i=this.levels[e];return i.items[i.index]<this.minValue?i.items[i.index]=this.minValue:i.items[i.index]>this.minValue&&(this.minValue=i.items[i.index]),!0},isLeaf:function(){return 0===this.currentLevel},isAboveThreshold:function(){var e=this.currentLevel,i=this.levels[e];return i.items[i.index]>this.currentStopValue},isKnown:function(){var e=this.currentLevel,i=this.levels[e];return i.status[i.index]>0},setKnown:function(){var e=this.currentLevel,i=this.levels[e];i.status[i.index]=1}},e}(),C=function(){function e(e,i,t,a,s){this.width=e,this.height=i,this.contextLabelTable="HH"===t?n:"HL"===t?f:r;var l=e*i;this.neighborsSignificance=new Uint8Array(l),this.coefficentsSign=new Uint8Array(l),this.coefficentsMagnitude=s>14?new Uint32Array(l):s>6?new Uint16Array(l):new Uint8Array(l),this.processingFlags=new Uint8Array(l);var o=new Uint8Array(l);if(0!==a)for(var u=0;l>u;u++)o[u]=a;this.bitsDecoded=o,this.reset()}var i=17,r=new Uint8Array([0,5,8,0,3,7,8,0,4,7,8,0,0,0,0,0,1,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8]),f=new Uint8Array([0,3,4,0,5,7,7,0,8,8,8,0,0,0,0,0,1,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8]),n=new Uint8Array([0,1,2,0,1,2,2,0,2,2,2,0,0,0,0,0,3,4,5,0,4,5,5,0,5,5,5,0,0,0,0,0,6,7,7,0,7,7,7,0,7,7,7,0,0,0,0,0,8,8,8,0,8,8,8,0,8,8,8,0,0,0,0,0,8,8,8,0,8,8,8,0,8,8,8]);return e.prototype={setDecoder:function(e){this.decoder=e},reset:function(){this.contexts=new Int8Array(19),this.contexts[0]=8,this.contexts[i]=92,this.contexts[18]=6},setNeighborsSignificance:function(e,i,r){var f,n=this.neighborsSignificance,t=this.width,a=this.height,s=i>0,l=t>i+1;e>0&&(f=r-t,s&&(n[f-1]+=16),l&&(n[f+1]+=16),n[f]+=4),a>e+1&&(f=r+t,s&&(n[f-1]+=16),l&&(n[f+1]+=16),n[f]+=4),s&&(n[r-1]+=1),l&&(n[r+1]+=1),n[r]|=128},runSignificancePropogationPass:function(){for(var e=this.decoder,i=this.width,r=this.height,f=this.coefficentsMagnitude,n=this.coefficentsSign,t=this.neighborsSignificance,a=this.processingFlags,s=this.contexts,l=this.contextLabelTable,o=this.bitsDecoded,u=0;r>u;u+=4)for(var c=0;i>c;c++)for(var h=u*i+c,d=0;4>d;d++,h+=i){var b=u+d;if(b>=r)break;if(a[h]&=-2,!f[h]&&t[h]){var _=l[t[h]];if(e.readBit(s,_)){var k=this.decodeSignBit(b,c,h);n[h]=k,f[h]=1,this.setNeighborsSignificance(b,c,h),a[h]|=2}o[h]++,a[h]|=1}}},decodeSignBit:function(e,i,r){var f,n,t,a,s,l,o=this.width,u=this.height,c=this.coefficentsMagnitude,h=this.coefficentsSign;a=i>0&&0!==c[r-1],o>i+1&&0!==c[r+1]?(t=h[r+1],a?f=1-t-(n=h[r-1]):f=1-t-t):a?f=1-(n=h[r-1])-n:f=0;var d=3*f;return a=e>0&&0!==c[r-o],u>e+1&&0!==c[r+o]?(t=h[r+o],a?f=1-t-(n=h[r-o])+d:f=1-t-t+d):a?f=1-(n=h[r-o])-n+d:f=d,f>=0?(s=9+f,l=this.decoder.readBit(this.contexts,s)):(s=9-f,l=1^this.decoder.readBit(this.contexts,s)),l},runMagnitudeRefinementPass:function(){for(var e,i=this.decoder,r=this.width,f=this.height,n=this.coefficentsMagnitude,t=this.neighborsSignificance,a=this.contexts,s=this.bitsDecoded,l=this.processingFlags,o=r*f,u=4*r,c=0;o>c;c=e){e=Math.min(o,c+u);for(var h=0;r>h;h++)for(var d=c+h;e>d;d+=r)if(n[d]&&0==(1&l[d])){var b=16;if(0!=(2&l[d]))l[d]^=2,b=0===(127&t[d])?15:14;var _=i.readBit(a,b);n[d]=n[d]<<1|_,s[d]++,l[d]|=1}}},runCleanupPass:function(){for(var e,r=this.decoder,f=this.width,n=this.height,t=this.neighborsSignificance,a=this.coefficentsMagnitude,s=this.coefficentsSign,l=this.contexts,o=this.contextLabelTable,u=this.bitsDecoded,c=this.processingFlags,h=f,d=2*f,b=3*f,_=0;n>_;_=e){e=Math.min(_+4,n);for(var k=_*f,w=n>_+3,m=0;f>m;m++){var v,p=k+m,g=0,y=p,M=_;if(w&&0===c[p]&&0===c[p+h]&&0===c[p+d]&&0===c[p+b]&&0===t[p]&&0===t[p+h]&&0===t[p+d]&&0===t[p+b]){if(!r.readBit(l,18)){u[p]++,u[p+h]++,u[p+d]++,u[p+b]++;continue}0!==(g=r.readBit(l,i)<<1|r.readBit(l,i))&&(M=_+g,y+=g*f),v=this.decodeSignBit(M,m,y),s[y]=v,a[y]=1,this.setNeighborsSignificance(M,m,y),c[y]|=2,y=p;for(var A=_;M>=A;A++,y+=f)u[y]++;g++}for(M=_+g;e>M;M++,y+=f)if(!a[y]&&0==(1&c[y])){var E=o[t[y]];1===r.readBit(l,E)&&(v=this.decodeSignBit(M,m,y),s[y]=v,a[y]=1,this.setNeighborsSignificance(M,m,y),c[y]|=2),u[y]++}}}},checkSegmentationSymbol:function(){var e=this.decoder,r=this.contexts;if(10!==(e.readBit(r,i)<<3|e.readBit(r,i)<<2|e.readBit(r,i)<<1|e.readBit(r,i)))throw new Error("JPX Error: Invalid segmentation symbol")}},e}(),P=function(){function e(){}return e.prototype.calculate=function(e,i,r){for(var f=e[0],n=1,t=e.length;t>n;n++)f=this.iterate(f,e[n],i,r);return f},e.prototype.extend=function(e,i,r){var f=i-1,n=i+1,t=i+r-2,a=i+r;e[f--]=e[n++],e[a++]=e[t--],e[f--]=e[n++],e[a++]=e[t--],e[f--]=e[n++],e[a++]=e[t--],e[f]=e[n],e[a]=e[t]},e.prototype.iterate=function(e,i,r,f){var n,t,a,s,l,o,u=e.width,c=e.height,h=e.items,d=i.width,b=i.height,_=i.items;for(a=0,n=0;c>n;n++)for(s=2*n*d,t=0;u>t;t++,a++,s+=2)_[s]=h[a];h=e.items=null;var k=new Float32Array(d+8);if(1===d){if(0!=(1&r))for(o=0,a=0;b>o;o++,a+=d)_[a]*=.5}else for(o=0,a=0;b>o;o++,a+=d)k.set(_.subarray(a,a+d),4),this.extend(k,4,d),this.filter(k,4,d),_.set(k.subarray(4,4+d),a);var w=16,m=[];for(n=0;w>n;n++)m.push(new Float32Array(b+8));var v,p=0;if(e=4+b,1===b){if(0!=(1&f))for(l=0;d>l;l++)_[l]*=.5}else for(l=0;d>l;l++){if(0===p){for(w=Math.min(d-l,w),a=l,s=4;e>s;a+=d,s++)for(v=0;w>v;v++)m[v][s]=_[a+v];p=w}var g=m[--p];if(this.extend(g,4,b),this.filter(g,4,b),0===p)for(a=l-w+1,s=4;e>s;a+=d,s++)for(v=0;w>v;v++)_[a+v]=m[v][s]}return{width:d,height:b,items:_}},e}(),I=function(){function e(){P.call(this)}return e.prototype=Object.create(P.prototype),e.prototype.filter=function(e,i,r){var f,n,t,a,s=r>>1,l=-1.586134342059924,o=-.052980118572961,u=.882911075530934,c=.443506852043971,h=1.230174104914001;for(f=(i|=0)-3,n=s+4;n--;f+=2)e[f]*=.8128930661159609;for(t=c*e[(f=i-2)-1],n=s+3;n--&&(a=c*e[f+1],e[f]=h*e[f]-t-a,n--);f+=2)t=c*e[(f+=2)+1],e[f]=h*e[f]-t-a;for(t=u*e[(f=i-1)-1],n=s+2;n--&&(a=u*e[f+1],e[f]-=t+a,n--);f+=2)t=u*e[(f+=2)+1],e[f]-=t+a;for(t=o*e[(f=i)-1],n=s+1;n--&&(a=o*e[f+1],e[f]-=t+a,n--);f+=2)t=o*e[(f+=2)+1],e[f]-=t+a;if(0!==s)for(t=l*e[(f=i+1)-1],n=s;n--&&(a=l*e[f+1],e[f]-=t+a,n--);f+=2)t=l*e[(f+=2)+1],e[f]-=t+a},e}(),O=function(){function e(){P.call(this)}return e.prototype=Object.create(P.prototype),e.prototype.filter=function(e,i,r){var f,n,t=r>>1;for(f=i|=0,n=t+1;n--;f+=2)e[f]-=e[f-1]+e[f+1]+2>>2;for(f=i+1,n=t;n--;f+=2)e[f]+=e[f-1]+e[f+1]>>1},e}();return e}(),c=function(){function e(e,i,r){this.data=e,this.bp=i,this.dataEnd=r,this.chigh=e[i],this.clow=0,this.byteIn(),this.chigh=this.chigh<<7&65535|this.clow>>9&127,this.clow=this.clow<<7&65535,this.ct-=7,this.a=32768}var i=[{qe:22017,nmps:1,nlps:1,switchFlag:1},{qe:13313,nmps:2,nlps:6,switchFlag:0},{qe:6145,nmps:3,nlps:9,switchFlag:0},{qe:2753,nmps:4,nlps:12,switchFlag:0},{qe:1313,nmps:5,nlps:29,switchFlag:0},{qe:545,nmps:38,nlps:33,switchFlag:0},{qe:22017,nmps:7,nlps:6,switchFlag:1},{qe:21505,nmps:8,nlps:14,switchFlag:0},{qe:18433,nmps:9,nlps:14,switchFlag:0},{qe:14337,nmps:10,nlps:14,switchFlag:0},{qe:12289,nmps:11,nlps:17,switchFlag:0},{qe:9217,nmps:12,nlps:18,switchFlag:0},{qe:7169,nmps:13,nlps:20,switchFlag:0},{qe:5633,nmps:29,nlps:21,switchFlag:0},{qe:22017,nmps:15,nlps:14,switchFlag:1},{qe:21505,nmps:16,nlps:14,switchFlag:0},{qe:20737,nmps:17,nlps:15,switchFlag:0},{qe:18433,nmps:18,nlps:16,switchFlag:0},{qe:14337,nmps:19,nlps:17,switchFlag:0},{qe:13313,nmps:20,nlps:18,switchFlag:0},{qe:12289,nmps:21,nlps:19,switchFlag:0},{qe:10241,nmps:22,nlps:19,switchFlag:0},{qe:9217,nmps:23,nlps:20,switchFlag:0},{qe:8705,nmps:24,nlps:21,switchFlag:0},{qe:7169,nmps:25,nlps:22,switchFlag:0},{qe:6145,nmps:26,nlps:23,switchFlag:0},{qe:5633,nmps:27,nlps:24,switchFlag:0},{qe:5121,nmps:28,nlps:25,switchFlag:0},{qe:4609,nmps:29,nlps:26,switchFlag:0},{qe:4353,nmps:30,nlps:27,switchFlag:0},{qe:2753,nmps:31,nlps:28,switchFlag:0},{qe:2497,nmps:32,nlps:29,switchFlag:0},{qe:2209,nmps:33,nlps:30,switchFlag:0},{qe:1313,nmps:34,nlps:31,switchFlag:0},{qe:1089,nmps:35,nlps:32,switchFlag:0},{qe:673,nmps:36,nlps:33,switchFlag:0},{qe:545,nmps:37,nlps:34,switchFlag:0},{qe:321,nmps:38,nlps:35,switchFlag:0},{qe:273,nmps:39,nlps:36,switchFlag:0},{qe:133,nmps:40,nlps:37,switchFlag:0},{qe:73,nmps:41,nlps:38,switchFlag:0},{qe:37,nmps:42,nlps:39,switchFlag:0},{qe:21,nmps:43,nlps:40,switchFlag:0},{qe:9,nmps:44,nlps:41,switchFlag:0},{qe:5,nmps:45,nlps:42,switchFlag:0},{qe:1,nmps:45,nlps:43,switchFlag:0},{qe:22017,nmps:46,nlps:46,switchFlag:0}];return e.prototype={byteIn:function(){var e=this.data,i=this.bp;255===e[i]?e[i+1]>143?(this.clow+=65280,this.ct=8):(i++,this.clow+=e[i]<<9,this.ct=7,this.bp=i):(i++,this.clow+=i<this.dataEnd?e[i]<<8:65280,this.ct=8,this.bp=i);this.clow>65535&&(this.chigh+=this.clow>>16,this.clow&=65535)},readBit:function(e,r){var f,n=e[r]>>1,t=1&e[r],a=i[n],s=a.qe,l=this.a-s;if(this.chigh<s)s>l?(l=s,f=t,n=a.nmps):(l=s,f=1^t,1===a.switchFlag&&(t=f),n=a.nlps);else{if(this.chigh-=s,0!=(32768&l))return this.a=l,t;s>l?(f=1^t,1===a.switchFlag&&(t=f),n=a.nlps):(f=t,n=a.nmps)}do{0===this.ct&&this.byteIn(),l<<=1,this.chigh=this.chigh<<1&65535|this.clow>>15&1,this.clow=this.clow<<1&65535,this.ct--}while(0==(32768&l));return this.a=l,e[r]=n<<1|t,f}},e}(),h="undefined"==typeof window?this:window;h.PDFJS||(h.PDFJS={}),h.PDFJS.pdfBug=!1,r.VERBOSITY_LEVELS={errors:0,warnings:1,infos:5};var d;r.OPS={dependency:1,setLineWidth:2,setLineCap:3,setLineJoin:4,setMiterLimit:5,setDash:6,setRenderingIntent:7,setFlatness:8,setGState:9,save:10,restore:11,transform:12,moveTo:13,lineTo:14,curveTo:15,curveTo2:16,curveTo3:17,closePath:18,rectangle:19,stroke:20,closeStroke:21,fill:22,eoFill:23,fillStroke:24,eoFillStroke:25,closeFillStroke:26,closeEOFillStroke:27,endPath:28,clip:29,eoClip:30,beginText:31,endText:32,setCharSpacing:33,setWordSpacing:34,setHScale:35,setLeading:36,setFont:37,setTextRenderingMode:38,setTextRise:39,moveText:40,setLeadingMoveText:41,setTextMatrix:42,nextLine:43,showText:44,showSpacedText:45,nextLineShowText:46,nextLineSetSpacingShowText:47,setCharWidth:48,setCharWidthAndBounds:49,setStrokeColorSpace:50,setFillColorSpace:51,setStrokeColor:52,setStrokeColorN:53,setFillColor:54,setFillColorN:55,setStrokeGray:56,setFillGray:57,setStrokeRGBColor:58,setFillRGBColor:59,setStrokeCMYKColor:60,setFillCMYKColor:61,shadingFill:62,beginInlineImage:63,beginImageData:64,endInlineImage:65,paintXObject:66,markPoint:67,markPointProps:68,beginMarkedContent:69,beginMarkedContentProps:70,endMarkedContent:71,beginCompat:72,endCompat:73,paintFormXObjectBegin:74,paintFormXObjectEnd:75,beginGroup:76,endGroup:77,beginAnnotations:78,endAnnotations:79,beginAnnotation:80,endAnnotation:81,paintJpegXObject:82,paintImageMaskXObject:83,paintImageMaskXObjectGroup:84,paintImageXObject:85,paintInlineImageXObject:86,paintInlineImageXObjectGroup:87,paintImageXObjectRepeat:88,paintImageMaskXObjectRepeat:89,paintSolidColorImageMask:90,constructPath:91},r.UNSUPPORTED_FEATURES={unknown:"unknown",forms:"forms",javaScript:"javaScript",smask:"smask",shadingPattern:"shadingPattern",font:"font"},r.UnsupportedManager=(d=[],{listen:function(e){d.push(e)},notify:function(e){n('Unsupported feature "'+e+'"');for(var i=0,r=d.length;r>i;i++)d[i](e)}});r.isValidUrl=function(e,i){if(!e)return!1;var r=/^[a-z][a-z0-9+\-.]*(?=:)/i.exec(e);if(!r)return i;switch(r=r[0].toLowerCase()){case"http":case"https":case"ftp":case"mailto":case"tel":return!0;default:return!1}},r.shadow=t;r.PasswordResponses={NEED_PASSWORD:1,INCORRECT_PASSWORD:2};var b=function(){function e(e,i){this.name="PasswordException",this.message=e,this.code=i}return e.prototype=new Error,e.constructor=e,e}();r.PasswordException=b;var _=function(){function e(e,i){this.name="UnknownErrorException",this.message=e,this.details=i}return e.prototype=new Error,e.constructor=e,e}();r.UnknownErrorException=_;var k=function(){function e(e){this.name="InvalidPDFException",this.message=e}return e.prototype=new Error,e.constructor=e,e}();r.InvalidPDFException=k;var w=function(){function e(e){this.name="MissingPDFException",this.message=e}return e.prototype=new Error,e.constructor=e,e}();r.MissingPDFException=w;var m=function(){function e(e,i){this.name="UnexpectedResponseException",this.message=e,this.status=i}return e.prototype=new Error,e.constructor=e,e}();r.UnexpectedResponseException=m;(function(){function e(e){this.message=e}e.prototype=new Error,e.prototype.name="NotImplementedException",e.constructor=e})(),function(){function e(e,i){this.begin=e,this.end=i,this.message="Missing data ["+e+", "+i+")"}e.prototype=new Error,e.prototype.name="MissingDataException",e.constructor=e}(),function(){function e(e){this.message=e}e.prototype=new Error,e.prototype.name="XRefParseException",e.constructor=e}();Object.defineProperty(r,"isLittleEndian",{configurable:!0,get:function(){return t(r,"isLittleEndian",function(){var e=new Uint8Array(2);return e[0]=1,1===new Uint16Array(e.buffer)[0]}())}}),Object.defineProperty(r,"hasCanvasTypedArrays",{configurable:!0,get:function(){return t(r,"hasCanvasTypedArrays",function(){var e=document.createElement("canvas");return e.width=e.height=1,void 0!==e.getContext("2d").createImageData(1,1).data.buffer}())}});!function(){function e(e,i){this.buffer=e,this.byteLength=e.length,this.length=void 0===i?this.byteLength>>2:i,r(this.length)}function i(e){return{get:function(){var i=this.buffer,r=e<<2;return(i[r]|i[r+1]<<8|i[r+2]<<16|i[r+3]<<24)>>>0},set:function(i){var r=this.buffer,f=e<<2;r[f]=255&i,r[f+1]=i>>8&255,r[f+2]=i>>16&255,r[f+3]=i>>>24&255}}}function r(r){for(;r>f;)Object.defineProperty(e.prototype,f,i(f)),f++}e.prototype=Object.create(null);var f=0}();var v=r.Util=function(){function e(){}var i=["rgb(",0,",",0,",",0,")"];return e.makeCssRgb=function(e,r,f){return i[1]=e,i[3]=r,i[5]=f,i.join("")},e.transform=function(e,i){return[e[0]*i[0]+e[2]*i[1],e[1]*i[0]+e[3]*i[1],e[0]*i[2]+e[2]*i[3],e[1]*i[2]+e[3]*i[3],e[0]*i[4]+e[2]*i[5]+e[4],e[1]*i[4]+e[3]*i[5]+e[5]]},e.applyTransform=function(e,i){return[e[0]*i[0]+e[1]*i[2]+i[4],e[0]*i[1]+e[1]*i[3]+i[5]]},e.applyInverseTransform=function(e,i){var r=i[0]*i[3]-i[1]*i[2];return[(e[0]*i[3]-e[1]*i[2]+i[2]*i[5]-i[4]*i[3])/r,(-e[0]*i[1]+e[1]*i[0]+i[4]*i[1]-i[5]*i[0])/r]},e.getAxialAlignedBoundingBox=function(i,r){var f=e.applyTransform(i,r),n=e.applyTransform(i.slice(2,4),r),t=e.applyTransform([i[0],i[3]],r),a=e.applyTransform([i[2],i[1]],r);return[Math.min(f[0],n[0],t[0],a[0]),Math.min(f[1],n[1],t[1],a[1]),Math.max(f[0],n[0],t[0],a[0]),Math.max(f[1],n[1],t[1],a[1])]},e.inverseTransform=function(e){var i=e[0]*e[3]-e[1]*e[2];return[e[3]/i,-e[1]/i,-e[2]/i,e[0]/i,(e[2]*e[5]-e[4]*e[3])/i,(e[4]*e[1]-e[5]*e[0])/i]},e.apply3dTransform=function(e,i){return[e[0]*i[0]+e[1]*i[1]+e[2]*i[2],e[3]*i[0]+e[4]*i[1]+e[5]*i[2],e[6]*i[0]+e[7]*i[1]+e[8]*i[2]]},e.singularValueDecompose2dScale=function(e){var i=[e[0],e[2],e[1],e[3]],r=e[0]*i[0]+e[1]*i[2],f=e[0]*i[1]+e[1]*i[3],n=e[2]*i[0]+e[3]*i[2],t=e[2]*i[1]+e[3]*i[3],a=(r+t)/2,s=Math.sqrt((r+t)*(r+t)-4*(r*t-n*f))/2,l=a+s||1,o=a-s||1;return[Math.sqrt(l),Math.sqrt(o)]},e.normalizeRect=function(e){var i=e.slice(0);return e[0]>e[2]&&(i[0]=e[2],i[2]=e[0]),e[1]>e[3]&&(i[1]=e[3],i[3]=e[1]),i},e.intersect=function(i,r){function f(e,i){return e-i}var n=[i[0],i[2],r[0],r[2]].sort(f),t=[i[1],i[3],r[1],r[3]].sort(f),a=[];return i=e.normalizeRect(i),r=e.normalizeRect(r),(n[0]===i[0]&&n[1]===r[0]||n[0]===r[0]&&n[1]===i[0])&&(a[0]=n[1],a[2]=n[2],(t[0]===i[1]&&t[1]===r[1]||t[0]===r[1]&&t[1]===i[1])&&(a[1]=t[1],a[3]=t[2],a))},e.sign=function(e){return 0>e?-1:1},e.appendToArray=function(e,i){Array.prototype.push.apply(e,i)},e.prependToArray=function(e,i){Array.prototype.unshift.apply(e,i)},e.extendObj=function(e,i){for(var r in i)e[r]=i[r]},e.getInheritableProperty=function(e,i){for(;e&&!e.has(i);)e=e.get("Parent");return e?e.get(i):null},e.inherit=function(e,i,r){for(var f in e.prototype=Object.create(i.prototype),e.prototype.constructor=e,r)e.prototype[f]=r[f]},e.loadScript=function(e,i){var r=document.createElement("script"),f=!1;r.setAttribute("src",e),i&&(r.onload=function(){f||i(),f=!0}),document.getElementsByTagName("head")[0].appendChild(r)},e}();r.PageViewport=function(){function e(e,i,r,f,n,t){this.viewBox=e,this.scale=i,this.rotation=r,this.offsetX=f,this.offsetY=n;var a,s,l,o,u,c,h,d,b=(e[2]+e[0])/2,_=(e[3]+e[1])/2;switch(r=0>(r%=360)?r+360:r){case 180:a=-1,s=0,l=0,o=1;break;case 90:a=0,s=1,l=1,o=0;break;case 270:a=0,s=-1,l=-1,o=0;break;default:a=1,s=0,l=0,o=-1}t&&(l=-l,o=-o),0===a?(u=Math.abs(_-e[1])*i+f,c=Math.abs(b-e[0])*i+n,h=Math.abs(e[3]-e[1])*i,d=Math.abs(e[2]-e[0])*i):(u=Math.abs(b-e[0])*i+f,c=Math.abs(_-e[1])*i+n,h=Math.abs(e[2]-e[0])*i,d=Math.abs(e[3]-e[1])*i),this.transform=[a*i,s*i,l*i,o*i,u-a*i*b-l*i*_,c-s*i*b-o*i*_],this.width=h,this.height=d,this.fontScale=i}return e.prototype={clone:function(i){var r="scale"in(i=i||{})?i.scale:this.scale,f="rotation"in i?i.rotation:this.rotation;return new e(this.viewBox.slice(),r,f,this.offsetX,this.offsetY,i.dontFlip)},convertToViewportPoint:function(e,i){return v.applyTransform([e,i],this.transform)},convertToViewportRectangle:function(e){var i=v.applyTransform([e[0],e[1]],this.transform),r=v.applyTransform([e[2],e[3]],this.transform);return[i[0],i[1],r[0],r[1]]},convertToPdfPoint:function(e,i){return v.applyInverseTransform([e,i],this.transform)}},e}();r.createPromiseCapability=o,function(){function e(e){this._status=i,this._handlers=[];try{e.call(this,this._resolve.bind(this),this._reject.bind(this))}catch(e){this._reject(e)}}if(h.Promise)return"function"!=typeof h.Promise.all&&(h.Promise.all=function(e){var i,r,f=0,n=[],t=new h.Promise((function(e,f){i=e,r=f}));return e.forEach((function(e,t){f++,e.then((function(e){n[t]=e,0===--f&&i(n)}),r)})),0===f&&i(n),t}),"function"!=typeof h.Promise.resolve&&(h.Promise.resolve=function(e){return new h.Promise((function(i){i(e)}))}),"function"!=typeof h.Promise.reject&&(h.Promise.reject=function(e){return new h.Promise((function(i,r){r(e)}))}),void("function"!=typeof h.Promise.prototype.catch&&(h.Promise.prototype.catch=function(e){return h.Promise.prototype.then(void 0,e)}));var i=0,r=2,f={handlers:[],running:!1,unhandledRejections:[],pendingRejectionCheck:!1,scheduleHandlers:function(e){e._status!==i&&(this.handlers=this.handlers.concat(e._handlers),e._handlers=[],this.running||(this.running=!0,setTimeout(this.runHandlers.bind(this),0)))},runHandlers:function(){for(var e=Date.now()+1;this.handlers.length>0;){var i=this.handlers.shift(),f=i.thisPromise._status,n=i.thisPromise._value;try{1===f?"function"==typeof i.onResolve&&(n=i.onResolve(n)):"function"==typeof i.onReject&&(n=i.onReject(n),f=1,i.thisPromise._unhandledRejection&&this.removeUnhandeledRejection(i.thisPromise))}catch(e){f=r,n=e}if(i.nextPromise._updateStatus(f,n),Date.now()>=e)break}return this.handlers.length>0?void setTimeout(this.runHandlers.bind(this),0):void(this.running=!1)},addUnhandledRejection:function(e){this.unhandledRejections.push({promise:e,time:Date.now()}),this.scheduleRejectionCheck()},removeUnhandeledRejection:function(e){e._unhandledRejection=!1;for(var i=0;i<this.unhandledRejections.length;i++)this.unhandledRejections[i].promise===e&&(this.unhandledRejections.splice(i),i--)},scheduleRejectionCheck:function(){this.pendingRejectionCheck||(this.pendingRejectionCheck=!0,setTimeout(function(){this.pendingRejectionCheck=!1;for(var e=Date.now(),i=0;i<this.unhandledRejections.length;i++)if(e-this.unhandledRejections[i].time>500){var r=this.unhandledRejections[i].promise._value,f="Unhandled rejection: "+r;r.stack&&(f+="\n"+r.stack),n(f),this.unhandledRejections.splice(i),i--}this.unhandledRejections.length&&this.scheduleRejectionCheck()}.bind(this),500))}};e.all=function(i){function f(e){a._status!==r&&(l=[],t(e))}var n,t,a=new e((function(e,i){n=e,t=i})),s=i.length,l=[];if(0===s)return n(l),a;for(var o=0,u=i.length;u>o;++o){var c=i[o],h=function(e){return function(i){a._status!==r&&(l[e]=i,0===--s&&n(l))}}(o);e.isPromise(c)?c.then(h,f):h(c)}return a},e.isPromise=function(e){return e&&"function"==typeof e.then},e.resolve=function(i){return new e((function(e){e(i)}))},e.reject=function(i){return new e((function(e,r){r(i)}))},e.prototype={_status:null,_value:null,_handlers:null,_unhandledRejection:null,_updateStatus:function(i,n){if(1!==this._status&&this._status!==r){if(1===i&&e.isPromise(n))return void n.then(this._updateStatus.bind(this,1),this._updateStatus.bind(this,r));this._status=i,this._value=n,i===r&&0===this._handlers.length&&(this._unhandledRejection=!0,f.addUnhandledRejection(this)),f.scheduleHandlers(this)}},_resolve:function(e){this._updateStatus(1,e)},_reject:function(e){this._updateStatus(r,e)},then:function(i,r){var n=new e((function(e,i){this.resolve=e,this.reject=i}));return this._handlers.push({thisPromise:this,onResolve:i,onReject:r,nextPromise:n}),f.scheduleHandlers(this),n},catch:function(e){return this.then(void 0,e)}},h.Promise=e}();!function(){function e(e,i,r){for(;e.length<r;)e+=i;return e}function i(){this.started={},this.times=[],this.enabled=!0}i.prototype={time:function(e){this.enabled&&(e in this.started&&n("Timer is already running for "+e),this.started[e]=Date.now())},timeEnd:function(e){this.enabled&&(e in this.started||n("Timer has not been started for "+e),this.times.push({name:e,start:this.started[e],end:Date.now()}),delete this.started[e])},toString:function(){var i,r,f=this.times,n="",t=0;for(i=0,r=f.length;r>i;++i){var a=f[i].name;a.length>t&&(t=a.length)}for(i=0,r=f.length;r>i;++i){var s=f[i],l=s.end-s.start;n+=e(s.name," ",t)+" "+l+"ms\n"}return n}}}();r.createBlob=function(e,i){if("undefined"!=typeof Blob)return new Blob([e],{type:i});var r=new MozBlobBuilder;return r.append(e),r.getBlob(i)},r.createObjectURL=function(){var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";return function(i,f){if(!r.disableCreateObjectURL&&"undefined"!=typeof URL&&URL.createObjectURL){var n=r.createBlob(i,f);return URL.createObjectURL(n)}for(var t="data:"+f+";base64,",a=0,s=i.length;s>a;a+=3){var l=255&i[a],o=255&i[a+1],u=255&i[a+2];t+=e[l>>2]+e[(3&l)<<4|o>>4]+e[s>a+1?(15&o)<<2|u>>6:64]+e[s>a+2?63&u:64]}return t}}(),e.exports=u},function(e,i,r){"use strict";r.r(i);var f=function(e,i){if(void 0===e)throw new Error("decodeRGB: rgbBuffer must not be undefined");if(e.length%3!=0)throw new Error("decodeRGB: rgbBuffer length must be divisible by 3");for(var r=e.length/3,f=0,n=0,t=0;t<r;t++)i[n++]=e[f++],i[n++]=e[f++],i[n++]=e[f++],i[n++]=255},n=function(e,i){if(void 0===e)throw new Error("decodeRGB: rgbBuffer must not be undefined");if(e.length%3!=0)throw new Error("decodeRGB: rgbBuffer length must be divisible by 3");for(var r=e.length/3,f=0,n=0,t=r,a=2*r,s=0;s<r;s++)i[f++]=e[n++],i[f++]=e[t++],i[f++]=e[a++],i[f++]=255},t=function(e,i){if(void 0===e)throw new Error("decodeRGB: ybrBuffer must not be undefined");if(e.length%3!=0)throw new Error("decodeRGB: ybrBuffer length must be divisble by 3");for(var r=e.length/3,f=0,n=0,t=0;t<r;t++){var a=e[f++],s=e[f++],l=e[f++];i[n++]=a+1.402*(l-128),i[n++]=a-.34414*(s-128)-.71414*(l-128),i[n++]=a+1.772*(s-128),i[n++]=255}},a=function(e,i){if(void 0===e)throw new Error("decodeRGB: ybrBuffer must not be undefined");if(e.length%3!=0)throw new Error("decodeRGB: ybrBuffer length must be divisble by 3");for(var r=e.length/3,f=0,n=0,t=r,a=2*r,s=0;s<r;s++){var l=e[n++],o=e[t++],u=e[a++];i[f++]=l+1.402*(u-128),i[f++]=l-.34414*(o-128)-.71414*(u-128),i[f++]=l+1.772*(o-128),i[f++]=255}},s=function(e,i){if(void 0===e)throw new Error("decodeRGB: ybrBuffer must not be undefined");if(e.length%2!=0)throw new Error("decodeRGB: ybrBuffer length must be divisble by 3");for(var r=e.length/2,f=0,n=0,t=0;t<r;t+=2){var a=e[f++],s=e[f++],l=e[f++],o=e[f++];i[n++]=a+1.402*(o-128),i[n++]=a-.34414*(l-128)-.71414*(o-128),i[n++]=a+1.772*(l-128),i[n++]=255,i[n++]=s+1.402*(o-128),i[n++]=s-.34414*(l-128)-.71414*(o-128),i[n++]=s+1.772*(l-128),i[n++]=255}};function l(e,i){for(var r=e.length,f=new Uint8ClampedArray(r),n=0;n<r;++n)f[n]=e[n]>>i;return f}var o=function(e,i){for(var r=e.columns*e.rows,f=e.pixelData,n=e.redPaletteColorLookupTableData,t=e.greenPaletteColorLookupTableData,a=e.bluePaletteColorLookupTableData,s=e.redPaletteColorLookupTableData.length,o=0,u=0,c=e.redPaletteColorLookupTableDescriptor[1],h=8===e.redPaletteColorLookupTableDescriptor[2]?0:8,d=l(n,h),b=l(t,h),_=l(a,h),k=0;k<r;++k){var w=f[o++];w<c?w=0:w>c+s-1?w=s-1:w-=c,i[u++]=d[w],i[u++]=b[w],i[u++]=_[w],i[u++]=255}};function u(e,i){if(e.elements[i]&&6===e.elements[i].length)return[e.uint16(i,0),e.uint16(i,1),e.uint16(i,2)]}function c(e,i,r){for(var f=[],n=e.elements[i],t=0;t<r[0];t++)16===r[2]?f[t]=e.uint16(i,t):f[t]=e.byteArray[t+n.dataOffset];return f}var h=function(e){var i={samplesPerPixel:e.uint16("x00280002"),photometricInterpretation:e.string("x00280004"),rows:e.uint16("x00280010"),columns:e.uint16("x00280011"),bitsAllocated:e.uint16("x00280100"),bitsStored:e.uint16("x00280101"),highBit:e.uint16("x00280102"),pixelRepresentation:e.uint16("x00280103"),planarConfiguration:e.uint16("x00280006"),pixelAspectRatio:e.string("x00280034")};return function(e,i){0===e.uint16("x00280103")?(i.smallestPixelValue=e.uint16("x00280106"),i.largestPixelValue=e.uint16("x00280107")):(i.smallestPixelValue=e.int16("x00280106"),i.largestPixelValue=e.int16("x00280107"))}(e,i),"PALETTE COLOR"===i.photometricInterpretation&&e.elements.x00281101&&function(e,i){i.redPaletteColorLookupTableDescriptor=u(e,"x00281101"),i.greenPaletteColorLookupTableDescriptor=u(e,"x00281102"),i.bluePaletteColorLookupTableDescriptor=u(e,"x00281103"),0===i.redPaletteColorLookupTableDescriptor[0]&&(i.redPaletteColorLookupTableDescriptor[0]=65536,i.greenPaletteColorLookupTableDescriptor[0]=65536,i.bluePaletteColorLookupTableDescriptor[0]=65536);var r=i.redPaletteColorLookupTableDescriptor[0],f=e.elements.x00281201.length===r?8:16;i.redPaletteColorLookupTableDescriptor[2]!==f&&(i.redPaletteColorLookupTableDescriptor[2]=f,i.greenPaletteColorLookupTableDescriptor[2]=f,i.bluePaletteColorLookupTableDescriptor[2]=f),i.redPaletteColorLookupTableData=c(e,"x00281201",i.redPaletteColorLookupTableDescriptor),i.greenPaletteColorLookupTableData=c(e,"x00281202",i.greenPaletteColorLookupTableDescriptor),i.bluePaletteColorLookupTableData=c(e,"x00281203",i.bluePaletteColorLookupTableDescriptor)}(e,i),i};function d(e,i){var r=i.uint16("x00283002",0);0===r&&(r=65535);for(var f={id:"1",firstValueMapped:0===e?i.uint16("x00283002",1):i.int16("x00283002",1),numBitsPerEntry:i.uint16("x00283002",2),lut:[]},n=0;n<r;n++)f.lut[n]=0===e?i.uint16("x00283006",n):i.int16("x00283006",n);return f}var b=function(e,i){if(i&&i.items&&i.items.length){for(var r=[],f=0;f<i.items.length;f++){var n=d(e,i.items[f].dataSet);n&&r.push(n)}return r}};var _=function(e){var i=e.string("x00080016");if("1.2.840.10008.5.1.4.1.1.2"===i||"1.2.840.10008.5.1.4.1.1.2.1"===i)return 1;var r=e.floatString("x00281052"),f=e.floatString("x00281053");return void 0!==r&&void 0!==f?function(e){var i=e.uint16("x00280103"),r=e.uint16("x00280101");return 0===i?0:-1<<r-1}(e)*f+r<0?1:0:e.elements.x00283000&&e.elements.x00283000.length>0?0:e.uint16("x00280103")};var k=function(e,i,r){var f=[],n=e.string(i);if(n){var t=n.split("\\");if(!(r&&t.length<r)){for(var a=0;a<t.length;a++)f.push(parseFloat(t[a]));return f}}};var w=function(e,i,r){return i=i||0,e&&e.Value?e.Value.length<=i?r:e.Value[i]:r};var m=function(e,i,r){var f=w(e,i,r);if(void 0!==f)return parseFloat(f)};var v=function(e,i){var r=w(e,i);if(void 0!==r)return parseFloat(r)};var p=function(e,i){if(e&&e.Value&&!(i&&e.Value.length<i)){for(var r=[],f=0;f<e.Value.length;f++)r.push(parseFloat(e.Value[f]));return r}};function g(e){var i=e.indexOf(":");return e.substring(i+1)}var y=[];var M={add:function(e,i){var r=g(e);y[r]=i},get:function(e){var i=g(e);return y[i]},remove:function(e){var i=g(e);y[i]=void 0},purge:function(){y=[]}};var A=function(e,i){var r=ze.dicomParser,f=M.get(i);if(f){if("generalSeriesModule"===e)return{modality:w(f["00080060"]),seriesInstanceUID:w(f["0020000e"]),seriesNumber:v(f["00200011"]),studyInstanceUID:w(f["0020000d"]),seriesDate:r.parseDA(w(f["00080021"])),seriesTime:r.parseTM(w(f["00080031"],0,""))};if("patientStudyModule"===e)return{patientAge:v(f["00101010"]),patientSize:v(f["00101020"]),patientWeight:v(f["00101030"])};if("imagePlaneModule"===e){var n=p(f["00200037"],6),t=p(f["00200032"],3),a=p(f["00280030"],2),s=null,l=null;a&&(l=a[0],s=a[1]);var o=null,u=null;return n&&(o=[parseFloat(n[0]),parseFloat(n[1]),parseFloat(n[2])],u=[parseFloat(n[3]),parseFloat(n[4]),parseFloat(n[5])]),{frameOfReferenceUID:w(f["00200052"]),rows:v(f["00280010"]),columns:v(f["00280011"]),imageOrientationPatient:n,rowCosines:o,columnCosines:u,imagePositionPatient:t,sliceThickness:v(f["00180050"]),sliceLocation:v(f["00201041"]),pixelSpacing:a,rowPixelSpacing:l,columnPixelSpacing:s}}if("imagePixelModule"===e)return{samplesPerPixel:v(f["00280002"]),photometricInterpretation:w(f["00280004"]),rows:v(f["00280010"]),columns:v(f["00280011"]),bitsAllocated:v(f["00280100"]),bitsStored:v(f["00280101"]),highBit:w(f["00280102"]),pixelRepresentation:v(f["00280103"]),planarConfiguration:v(f["00280006"]),pixelAspectRatio:w(f["00280034"]),smallestPixelValue:v(f["00280106"]),largestPixelValue:v(f["00280107"]),redPaletteColorLookupTableDescriptor:p(f["00281101"]),greenPaletteColorLookupTableDescriptor:p(f["00281102"]),bluePaletteColorLookupTableDescriptor:p(f["00281103"]),redPaletteColorLookupTableData:p(f["00281201"]),greenPaletteColorLookupTableData:p(f["00281202"]),bluePaletteColorLookupTableData:p(f["00281203"])};if("voiLutModule"===e)return{windowCenter:p(f["00281050"],1),windowWidth:p(f["00281051"],1)};if("modalityLutModule"===e)return{rescaleIntercept:v(f["00281052"]),rescaleSlope:v(f["00281053"]),rescaleType:w(f["00281054"])};if("sopCommonModule"===e)return{sopClassUID:w(f["00080016"]),sopInstanceUID:w(f["00080018"])};if("petIsotopeModule"===e){var c=w(f["00540016"]);if(void 0===c)return;return{radiopharmaceuticalInfo:{radiopharmaceuticalStartTime:r.parseTM(w(c["00181072"],0,"")),radionuclideTotalDose:v(c["00181074"]),radionuclideHalfLife:v(c["00181075"])}}}return"overlayPlaneModule"===e?function(e){for(var i=[],r=0;r<=30;r+=2){var f="x60".concat(r.toString(16));4===f.length&&(f="x600".concat(r.toString(16)));var n=w(e["".concat(f,"3000")]);if(n){for(var t=[],a=0;a<n.length;a++)for(var s=0;s<8;s++){var l=e.Value[n.dataOffset+a];t[8*a+s]=l>>s&1}i.push({rows:v(e["".concat(f,"0010")]),columns:v(e["".concat(f,"0011")]),type:w(e["".concat(f,"0040")]),x:v(e["".concat(f,"0050")],1)-1,y:v(e["".concat(f,"0050")],0)-1,pixelData:t,description:w(e["".concat(f,"0022")]),label:w(e["".concat(f,"1500")]),roiArea:w(e["".concat(f,"1301")]),roiMean:w(e["".concat(f,"1302")]),roiStandardDeviation:w(e["".concat(f,"1303")])})}}return{overlays:i}}(f):void 0}};function E(e,i,r){if(r+e.length>i.length)return!1;for(var f=r,n=0;n<e.length;n++)if(e[n]!==i[f++])return!1;return!0}var S=function(e,i,r){r=r||0;for(var f=function(e){for(var i=new Uint8Array(e.length),r=0,f=e.length;r<f;r++)i[r]=e.charCodeAt(r);return i}(i),n=r;n<e.length;n++)if(f[0]===e[n]&&E(f,e,n))return n;return-1},T={beforeSend:function(){},beforeProcessing:function(e){return Promise.resolve(e.response)},imageCreated:function(){},strict:!1,useWebWorkers:!0,decodeConfig:{convertFloatPixelDataToInt:!0,usePDFJS:!1}};function R(e){T=Object.assign(T,e)}function C(){return T}var P=function(e,i){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},f=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},n=ze.cornerstone,t=C(),a=function(e){if("function"==typeof t.errorInterceptor){var i=new Error("request failed");i.request=e,i.response=e.response,i.status=e.status,t.errorInterceptor(i)}};return new Promise((function(s,l){var o=new XMLHttpRequest;o.open("get",e,!0),o.responseType="arraybuffer",t.beforeSend(o,i,r,f),Object.keys(r).forEach((function(e){o.setRequestHeader(e,r[e])})),f.deferred={resolve:s,reject:l},f.url=e,f.imageId=i,o.onloadstart=function(r){t.onloadstart&&t.onloadstart(r,f);var a={url:e,imageId:i};n.triggerEvent(n.events,"cornerstoneimageloadstart",a)},o.onloadend=function(r){t.onloadend&&t.onloadend(r,f);var a={url:e,imageId:i};n.triggerEvent(n.events,"cornerstoneimageloadend",a)},o.onreadystatechange=function(e){t.onreadystatechange?t.onreadystatechange(e,f):4===o.readyState&&(200===o.status?t.beforeProcessing(o).then(s).catch((function(){a(o),l(o)})):(a(o),l(o)))},o.onprogress=function(r){var a,s,l=r.loaded;r.lengthComputable&&(a=r.total,s=Math.round(l/a*100)),t.onprogress&&t.onprogress(r,f);var o={url:e,imageId:i,loaded:l,total:a,percentComplete:s};n.triggerEvent(n.events,"cornerstoneimageloadprogress",o)},o.onerror=function(){a(o),l(o)},o.onabort=function(){a(o),l(o)},o.send()}))},I={xhrRequest:P,setOptions:R,getOptions:C};function O(e){for(var i=0;i<e.length;i++)if("Content-Type:"===e[i].substr(0,13))return e[i].substr(13).trim()}var x=function(e,i){var r={accept:arguments.length>2&&void 0!==arguments[2]?arguments[2]:"application/octet-stream"};return new Promise((function(f,n){P(e,i,r).then((function(e){var i=new Uint8Array(e),r=S(i,"\r\n\r\n");-1===r&&n(new Error("invalid response - no multipart mime header"));var t=function(e,i,r){i=i||0,r=r||e.length-i;for(var f="",n=i;n<i+r;n++)f+=String.fromCharCode(e[n]);return f}(i,0,r).split("\r\n"),a=function(e){for(var i=0;i<e.length;i++)if("--"===e[i].substr(0,2))return e[i]}(t);a||n(new Error("invalid response - no boundary marker"));var s=r+4,l=S(i,a,s);-1===l&&n(new Error("invalid response - terminating boundary not found"));var o=l-s-2;f({contentType:O(t),imageFrame:{pixelData:new Uint8Array(e,s,o)}})}),n)}))};var L,B=function(e){var i=ze.cornerstone.metaData.get("imagePixelModule",e);return{samplesPerPixel:i.samplesPerPixel,photometricInterpretation:i.photometricInterpretation,planarConfiguration:i.planarConfiguration,rows:i.rows,columns:i.columns,bitsAllocated:i.bitsAllocated,bitsStored:i.bitsStored,pixelRepresentation:i.pixelRepresentation,smallestPixelValue:i.smallestPixelValue,largestPixelValue:i.largestPixelValue,redPaletteColorLookupTableDescriptor:i.redPaletteColorLookupTableDescriptor,greenPaletteColorLookupTableDescriptor:i.greenPaletteColorLookupTableDescriptor,bluePaletteColorLookupTableDescriptor:i.bluePaletteColorLookupTableDescriptor,redPaletteColorLookupTableData:i.redPaletteColorLookupTableData,greenPaletteColorLookupTableData:i.greenPaletteColorLookupTableData,bluePaletteColorLookupTableData:i.bluePaletteColorLookupTableData,pixelData:void 0}},z=r(1),D=r.n(z),N=0,F=[],H=[],U=C(),j={maxWebWorkers:navigator.hardwareConcurrency||1,startWebWorkersOnDemand:!0,webWorkerTaskPaths:[],taskConfiguration:{decodeTask:{initializeCodecsOnStartup:!1,usePDFJS:!1,strict:U.strict}}},Y={maxWebWorkers:0,numWebWorkers:0,numTasksQueued:0,numTasksExecuting:0,numTasksCompleted:0,totalTaskTimeInMS:0,totalTimeDelayedInMS:0};function q(){if(F.length){for(var e=0;e<H.length;e++)if("ready"===H[e].status){H[e].status="busy";var i=F.shift();i.start=(new Date).getTime();var r=(new Date).getTime();return Y.totalTimeDelayedInMS+=r-i.added,H[e].task=i,H[e].worker.postMessage({taskType:i.taskType,workerIndex:e,data:i.data},i.transferList),void Y.numTasksExecuting++}H.length<L.maxWebWorkers&&V()}}function $(e){if("initialize"===e.data.taskType)H[e.data.workerIndex].status="ready",q();else{var i=H[e.data.workerIndex].task.start,r="success"===e.data.status?"resolve":"reject";H[e.data.workerIndex].task.deferred[r](e.data.result),H[e.data.workerIndex].task=void 0,Y.numTasksExecuting--,H[e.data.workerIndex].status="ready",Y.numTasksCompleted++;var f=(new Date).getTime();Y.totalTaskTimeInMS+=f-i,q()}}function V(){if(!(H.length>=L.maxWebWorkers)){var e=new D.a;H.push({worker:e,status:"initializing"}),e.addEventListener("message",$),e.postMessage({taskType:"initialize",workerIndex:H.length-1,config:L})}}function X(e){if(e=e||j,L)throw new Error("WebWorkerManager already initialized");if((L=e).maxWebWorkers=L.maxWebWorkers||navigator.hardwareConcurrency||1,!L.startWebWorkersOnDemand)for(var i=0;i<L.maxWebWorkers;i++)V()}var G={initialize:X,loadWebWorkerTask:function(e,i){L.webWorkerTaskPaths.push(e),i&&(L.taskConfiguration=Object.assign(L.taskConfiguration,i));for(var r=0;r<H.length;r++)H[r].worker.postMessage({taskType:"loadWebWorkerTask",workerIndex:H.length-1,sourcePath:e,config:L})},addTask:function(e,i){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,f=arguments.length>3?arguments[3]:void 0;L||X();var n,t={},a=new Promise((function(e,i){t={resolve:e,reject:i}}));for(n=0;n<F.length&&!(F[n].priority<r);n++);var s=N++;return F.splice(n,0,{taskId:s,taskType:e,status:"ready",added:(new Date).getTime(),data:i,deferred:t,priority:r,transferList:f}),q(),{taskId:s,promise:a}},getStatistics:function(){return Y.maxWebWorkers=L.maxWebWorkers,Y.numWebWorkers=H.length,Y.numTasksQueued=F.length,Y},setTaskPriority:function(e){for(var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=0;r<F.length;r++)if(F[r].taskId===e){var f=F.splice(r,1)[0];for(f.priority=i,r=0;r<F.length&&!(F[r].priority<i);r++);return F.splice(r,0,f),!0}return!1},cancelTask:function(e,i){for(var r=0;r<F.length;r++){if(F[r].taskId===e)return F.splice(r,1).deferred.reject(i),!0}return!1},webWorkers:H,terminate:function(){for(var e=0;e<H.length;e++)H[e].worker.terminate();H.length=0,L=void 0}};var K=function(e){for(var i,r=e[0],f=e[0],n=e.length,t=1;t<n;t++)i=e[t],r=Math.min(r,i),f=Math.max(f,i);return{min:r,max:f}};function W(e){return function(e){var i;try{return decodeURIComponent(escape(e))}catch(r){if((i=r)instanceof URIError)return e;throw i}}(String.fromCharCode.apply(null,Array.prototype.slice.apply(new Uint8Array(e))))}var Z=function(e,i,r){var f=(new Date).getTime(),n=new Blob([i],{type:"image/jpeg"});return new Promise((function(i,t){var a=new FileReader;void 0===a.readAsBinaryString?a.readAsArrayBuffer(n):a.readAsBinaryString(n),a.onload=function(){var n=new Image;n.onload=function(){r.height=n.height,r.width=n.width,e.rows=n.height,e.columns=n.width;var t=r.getContext("2d");t.drawImage(this,0,0);var a=t.getImageData(0,0,n.width,n.height),s=(new Date).getTime();e.pixelData=a.data,e.imageData=a,e.decodeTimeInMS=s-f;var l=K(e.pixelData);e.smallestPixelValue=l.min,e.largestPixelValue=l.max,i(e)},n.onerror=function(e){t(e)},void 0===a.readAsBinaryString?n.src="data:image/jpeg;base64,".concat(window.btoa(W(a.result))):n.src="data:image/jpeg;base64,".concat(window.btoa(a.result))},a.onerror=function(e){t(e)}}))};var J=function(e,i){var r=i.buffer,f=i.byteOffset,n=i.length;return 16===e.bitsAllocated?(f%2&&(r=r.slice(f),f=0),0===e.pixelRepresentation?e.pixelData=new Uint16Array(r,f,n/2):e.pixelData=new Int16Array(r,f,n/2)):8===e.bitsAllocated||1===e.bitsAllocated?e.pixelData=i:32===e.bitsAllocated&&(f%2&&(r=r.slice(f),f=0),e.pixelData=new Float32Array(r,f,n/4)),e};var Q=function(e,i){if(16===e.bitsAllocated){var r=i.buffer,f=i.byteOffset,n=i.length;f%2&&(r=r.slice(f),f=0),0===e.pixelRepresentation?e.pixelData=new Uint16Array(r,f,n/2):e.pixelData=new Int16Array(r,f,n/2);for(var t=0;t<e.pixelData.length;t++)e.pixelData[t]=(255&(a=e.pixelData[t]))<<8|a>>8&255}else 8===e.bitsAllocated&&(e.pixelData=i);var a;return e};var ee=function(e,i){if(8===e.bitsAllocated)return e.planarConfiguration?function(e,i){for(var r=i,f=e.rows*e.columns,n=new ArrayBuffer(f*e.samplesPerPixel),t=new DataView(r.buffer,r.byteOffset),a=new Int8Array(r.buffer,r.byteOffset),s=new Int8Array(n),l=0,o=t.getInt32(0,!0),u=0;u<o;++u){l=u*f;var c=t.getInt32(4*(u+1),!0),h=t.getInt32(4*(u+2),!0);0===h&&(h=r.length);for(var d=f*o;c<h;){var b=a[c++];if(b>=0&&b<=127)for(var _=0;_<b+1&&l<d;++_)s[l]=a[c++],l++;else if(b<=-1&&b>=-127)for(var k=a[c++],w=0;w<1-b&&l<d;++w)s[l]=k,l++}}return e.pixelData=new Uint8Array(n),e}(e,i):function(e,i){for(var r=i,f=e.rows*e.columns,n=new ArrayBuffer(f*e.samplesPerPixel),t=new DataView(r.buffer,r.byteOffset),a=new Int8Array(r.buffer,r.byteOffset),s=new Int8Array(n),l=0,o=t.getInt32(0,!0),u=0;u<o;++u){l=u;var c=t.getInt32(4*(u+1),!0),h=t.getInt32(4*(u+2),!0);0===h&&(h=r.length);for(var d=f*o;c<h;){var b=a[c++];if(b>=0&&b<=127)for(var _=0;_<b+1&&l<d;++_)s[l]=a[c++],l+=e.samplesPerPixel;else if(b<=-1&&b>=-127)for(var k=a[c++],w=0;w<1-b&&l<d;++w)s[l]=k,l+=e.samplesPerPixel}}return e.pixelData=new Uint8Array(n),e}(e,i);if(16===e.bitsAllocated)return function(e,i){for(var r=i,f=e.rows*e.columns,n=new ArrayBuffer(f*e.samplesPerPixel*2),t=new DataView(r.buffer,r.byteOffset),a=new Int8Array(r.buffer,r.byteOffset),s=new Int8Array(n),l=t.getInt32(0,!0),o=0;o<l;++o){var u=0,c=0===o?1:0,h=t.getInt32(4*(o+1),!0),d=t.getInt32(4*(o+2),!0);for(0===d&&(d=r.length);h<d;){var b=a[h++];if(b>=0&&b<=127)for(var _=0;_<b+1&&u<f;++_)s[2*u+c]=a[h++],u++;else if(b<=-1&&b>=-127)for(var k=a[h++],w=0;w<1-b&&u<f;++w)s[2*u+c]=k,u++}}0===e.pixelRepresentation?e.pixelData=new Uint16Array(n):e.pixelData=new Int16Array(n);return e}(e,i);throw new Error("unsupported pixel format for RLE")},ie=r(3),re=r.n(ie);var fe=function(e,i){if(void 0===re.a)throw new Error("No JPEG Baseline decoder loaded");var r=new re.a;return r.parse(i),r.colorTransform=!1,8===e.bitsAllocated?(e.pixelData=r.getData(e.columns,e.rows),e):16===e.bitsAllocated?(e.pixelData=r.getData16(e.columns,e.rows),e):void 0},ne=r(0),te=r.n(ne);var ae,se=function(e,i){if(void 0===te.a||void 0===te.a.lossless||void 0===te.a.lossless.Decoder)throw new Error("No JPEG Lossless decoder loaded");var r=e.bitsAllocated<=8?1:2,f=i.buffer,n=(new te.a.lossless.Decoder).decode(f,i.byteOffset,i.length,r);return 0===e.pixelRepresentation?16===e.bitsAllocated?(e.pixelData=new Uint16Array(n.buffer),e):(e.pixelData=new Uint8Array(n.buffer),e):(e.pixelData=new Int16Array(n.buffer),e)},le=r(4),oe=r.n(le);function ue(){if(void 0===oe.a)throw new Error("No JPEG-LS decoder loaded");if(!(ae||(ae=oe()())&&ae._jpegls_decode))throw new Error("JPEG-LS failed to initialize")}var ce,he=function(e,i){ue();var r=function(e,i){var r=ae._malloc(e.length);ae.writeArrayToMemory(e,r);var f=ae._malloc(4),n=ae._malloc(4),t=ae._malloc(4),a=ae._malloc(4),s=ae._malloc(4),l=ae._malloc(4),o=ae._malloc(4),u=ae._malloc(4),c=ae._malloc(4),h={result:ae.ccall("jpegls_decode","number",["number","number","number","number","number","number","number","number","number","number","number"],[r,e.length,f,n,t,a,s,l,u,o,c]),width:ae.getValue(t,"i32"),height:ae.getValue(a,"i32"),bitsPerSample:ae.getValue(s,"i32"),stride:ae.getValue(l,"i32"),components:ae.getValue(u,"i32"),allowedLossyError:ae.getValue(o,"i32"),interleaveMode:ae.getValue(c,"i32"),pixelData:void 0},d=ae.getValue(f,"*");return h.bitsPerSample<=8?(h.pixelData=new Uint8Array(h.width*h.height*h.components),h.pixelData.set(new Uint8Array(ae.HEAP8.buffer,d,h.pixelData.length))):i?(h.pixelData=new Int16Array(h.width*h.height*h.components),h.pixelData.set(new Int16Array(ae.HEAP16.buffer,d,h.pixelData.length))):(h.pixelData=new Uint16Array(h.width*h.height*h.components),h.pixelData.set(new Uint16Array(ae.HEAP16.buffer,d,h.pixelData.length))),ae._free(r),ae._free(d),ae._free(f),ae._free(n),ae._free(t),ae._free(a),ae._free(s),ae._free(l),ae._free(u),ae._free(c),h}(i,1===e.pixelRepresentation);if(0!==r.result&&6!==r.result)throw new Error("JPEG-LS decoder failed to decode frame (error code ".concat(r.result,")"));return e.columns=r.width,e.rows=r.height,e.pixelData=r.pixelData,e},de=r(5),be=r.n(de),_e=r(6),ke=r.n(_e);function we(e,i){var r=function(e,i,r){var f=ce._malloc(e.length);ce.writeArrayToMemory(e,f);var n=ce._malloc(4),t=ce._malloc(4),a=ce._malloc(4),s=ce._malloc(4),l=ce._malloc(4),o=(new Date).getTime();if(0!==ce.ccall("jp2_decode","number",["number","number","number","number","number","number","number"],[f,e.length,n,t,a,s,l]))return console.log("[opj_decode] decoding failed!"),ce._free(f),ce._free(ce.getValue(n,"*")),ce._free(a),ce._free(s),ce._free(t),void ce._free(l);var u=ce.getValue(n,"*"),c={length:ce.getValue(t,"i32"),sx:ce.getValue(a,"i32"),sy:ce.getValue(s,"i32"),nbChannels:ce.getValue(l,"i32"),perf_timetodecode:void 0,pixelData:void 0},h=c.sx*c.sy*c.nbChannels,d=new Int32Array(ce.HEAP32.buffer,u,h);if(1===i)if(Uint8Array.from)c.pixelData=Uint8Array.from(d);else{c.pixelData=new Uint8Array(h);for(var b=0;b<h;b++)c.pixelData[b]=d[b]}else if(r)if(Int16Array.from)c.pixelData=Int16Array.from(d);else{c.pixelData=new Int16Array(h);for(var _=0;_<h;_++)c.pixelData[_]=d[_]}else if(Uint16Array.from)c.pixelData=Uint16Array.from(d);else{c.pixelData=new Uint16Array(h);for(var k=0;k<h;k++)c.pixelData[k]=d[k]}var w=(new Date).getTime();return c.perf_timetodecode=w-o,ce._free(f),ce._free(n),ce._free(u),ce._free(t),ce._free(a),ce._free(s),ce._free(l),c}(i,e.bitsAllocated<=8?1:2,1===e.pixelRepresentation);return e.columns=r.sx,e.rows=r.sy,e.pixelData=r.pixelData,r.nbChannels>1&&(e.photometricInterpretation="RGB"),e}function me(e){if(!e.usePDFJS&&void 0===be.a)throw new Error("OpenJPEG decoder not loaded");if(!(ce||(ce=be()())&&ce._jp2_decode))throw new Error("OpenJPEG failed to initialize")}var ve=function(e,i,r){var f=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return me(r),f.usePDFJS||r.usePDFJS?function(e,i){var r=new ke.a;r.parse(i);var f=r.tiles.length;if(1!==f)throw new Error("JPEG2000 decoder returned a tileCount of ".concat(f,", when 1 is expected"));return e.columns=r.width,e.rows=r.height,e.pixelData=r.tiles[0].items,e}(e,i):we(e,i)};var pe=function(e,i,r,f,n){var t=(new Date).getTime();switch(i){case"1.2.840.10008.1.2":case"1.2.840.10008.1.2.1":e=J(e,r);break;case"1.2.840.10008.1.2.2":e=Q(e,r);break;case"1.2.840.10008.1.2.1.99":e=J(e,r);break;case"1.2.840.10008.1.2.5":e=ee(e,r);break;case"1.2.840.10008.1.2.4.50":case"1.2.840.10008.1.2.4.51":e=fe(e,r);break;case"1.2.840.10008.1.2.4.57":case"1.2.840.10008.1.2.4.70":e=se(e,r);break;case"1.2.840.10008.1.2.4.80":case"1.2.840.10008.1.2.4.81":e=he(e,r);break;case"1.2.840.10008.1.2.4.90":case"1.2.840.10008.1.2.4.91":e=ve(e,r,f,n);break;default:throw new Error("no decoder for transfer syntax ".concat(i))}var a=void 0!==e.pixelRepresentation&&1===e.pixelRepresentation,s=a&&void 0!==e.bitsStored?32-e.bitsStored:void 0;if(a&&void 0!==s)for(var l=0;l<e.pixelData.length;l++)e.pixelData[l]=e.pixelData[l]<<s>>s;var o=e.pixelData;if(e.pixelDataLength=e.pixelData.length,n.targetBuffer){var u,c,h=n.targetBuffer;u=h.offset,c=h.length;var d,b=n.targetBuffer,_=b.arrayBuffer,k=b.type;switch(null==u&&(u=0),null==c&&0!==u?c=e.pixelDataLength-u:null==c&&(c=e.pixelDataLength),k){case"Uint8Array":d=Uint8Array;break;case"Uint16Array":d=Uint16Array;break;case"Float32Array":d=Float32Array;break;default:throw new Error("target array for image does not have a valid type.")}var w,m=e.pixelData;if(c!==m.length)throw new Error("target array for image does not have the same length as the decoded image length.");(w=_?new d(_,u,c):new d(c)).set(m,0),o=w}if(n.preScale&&n.preScale.scalingParameters){var v=n.preScale.scalingParameters,p=v.rescaleSlope,g=v.rescaleIntercept;"number"==typeof p&&"number"==typeof g&&function(e,i){var r=e.length,f=i.rescaleSlope,n=i.rescaleIntercept,t=i.suvbw;if("PT"===i.modality){if("number"!=typeof t)return;for(var a=0;a<r;a++)e[a]=t*(e[a]*f+n)}else for(var s=0;s<r;s++)e[s]=e[s]*f+n}(o,v)}n.targetBuffer&&(!n.targetBuffer.arrayBuffer||n.targetBuffer.arrayBuffer instanceof ArrayBuffer)&&(e.pixelData=o);var y=(new Date).getTime();return e.decodeTimeInMS=y-t,e};function ge(e){return"number"==typeof e}var ye=!1;function Me(e,i,r,f){var n=f.priority||void 0,t=f.transferPixelData?[r.buffer]:void 0,a=C(),s=a.strict,l=a.decodeConfig;return!1===a.useWebWorkers?(!1===ye&&(me(l),ue(),ye=!0),new Promise((function(n,t){try{var a=[e,i,r,l,f],o=pe.apply(void 0,a);!function(e){var i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=K(e.pixelData),f=!(ge(e.smallestPixelValue)&&ge(e.largestPixelValue));!0!==i||f?(e.smallestPixelValue=r.min,e.largestPixelValue=r.max):(e.smallestPixelValue!==r.min&&console.warn("Image smallestPixelValue tag is incorrect. Rendering performance will suffer considerably."),e.largestPixelValue!==r.max&&console.warn("Image largestPixelValue tag is incorrect. Rendering performance will suffer considerably."))}(o,s),n(o)}catch(e){t(e)}}))):G.addTask("decodeTask",{imageFrame:e,transferSyntax:i,pixelData:r,options:f},n,t).promise}var Ae=function(e,i,r,f){var n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};switch(i){case"1.2.840.10008.1.2":case"1.2.840.10008.1.2.1":case"1.2.840.10008.1.2.2":case"1.2.840.10008.1.2.1.99":case"1.2.840.10008.1.2.5":return Me(e,i,r,n);case"1.2.840.10008.1.2.4.50":return 8!==e.bitsAllocated||3!==e.samplesPerPixel&&4!==e.samplesPerPixel?Me(e,i,r,n):Z(e,r,f);case"1.2.840.10008.1.2.4.51":case"1.2.840.10008.1.2.4.57":case"1.2.840.10008.1.2.4.70":case"1.2.840.10008.1.2.4.80":case"1.2.840.10008.1.2.4.81":case"1.2.840.10008.1.2.4.90":case"1.2.840.10008.1.2.4.91":return Me(e,i,r,n)}return new Promise((function(e,r){r(new Error("No decoder for transfer syntax ".concat(i)))}))},Ee=function(e){return"RGB"===e||"PALETTE COLOR"===e||"YBR_FULL"===e||"YBR_FULL_422"===e||"YBR_PARTIAL_422"===e||"YBR_PARTIAL_420"===e||"YBR_RCT"===e||"YBR_ICT"===e};function Se(e,i){0===e.planarConfiguration?f(e.pixelData,i):n(e.pixelData,i)}function Te(e,i){var r=i.data;if("RGB"===e.photometricInterpretation)Se(e,r);else if("YBR_RCT"===e.photometricInterpretation)Se(e,r);else if("YBR_ICT"===e.photometricInterpretation)Se(e,r);else if("PALETTE COLOR"===e.photometricInterpretation)o(e,r);else if("YBR_FULL_422"===e.photometricInterpretation)s(e.pixelData,r);else{if("YBR_FULL"!==e.photometricInterpretation)throw new Error("No color space conversion for photometric interpretation ".concat(e.photometricInterpretation));!function(e,i){0===e.planarConfiguration?t(e.pixelData,i):a(e.pixelData,i)}(e,r)}}var Re=function(e,i){if(i=i||e.transferSyntax,8===e.bitsAllocated&&"1.2.840.10008.1.2.4.50"===i&&(3===e.samplesPerPixel||4===e.samplesPerPixel))return!0},Ce="";var Pe=function(e,i,r){var f=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};if(!i||!i.length)return Promise.reject(new Error("The file does not contain image data."));var n=ze.cornerstone,t=document.createElement("canvas"),a=B(e),s=Ae(a,r,i,t,f),l=C().decodeConfig.convertFloatPixelDataToInt;return new Promise((function(i,a){s.then((function(a){var s=!1;if(f.targetBuffer){var o,u,c=f.targetBuffer;o=c.offset,u=c.length;var h,d,b=f.targetBuffer,_=b.arrayBuffer,k=b.type;switch(null==u&&(u=a.pixelDataLength),null==o&&(o=0),k){case"Uint8Array":h=Uint8Array;break;case"Uint16Array":h=Uint16Array;break;case"Float32Array":h=Float32Array;break;default:throw new Error("target array for image does not have a valid type.")}if(u!==a.pixelDataLength)throw new Error("target array for image does not have the same length as the decoded image length.");d=_?new h(_,o,u):new h(a.pixelData),a.pixelData=d,s=!0}var w=n.metaData.get("imagePlaneModule",e)||{},m=n.metaData.get("voiLutModule",e)||{},v=n.metaData.get("modalityLutModule",e)||{},p=n.metaData.get("sopCommonModule",e)||{},g=Ee(a.photometricInterpretation);if(!Re(a,r)&&(s||function(e){32===e.bitsAllocated?e.pixelData=new Float32Array(e.pixelData):16===e.bitsAllocated?0===e.pixelRepresentation?e.pixelData=new Uint16Array(e.pixelData):e.pixelData=new Int16Array(e.pixelData):e.pixelData=new Uint8Array(e.pixelData)}(a),g)){t.height=a.rows,t.width=a.columns;var y=t.getContext("2d").createImageData(a.columns,a.rows);Te(a,y),a.imageData=y,a.pixelData=y.data;var M=K(a.pixelData);a.smallestPixelValue=M.min,a.largestPixelValue=M.max}var A,E={imageId:e,color:g,columnPixelSpacing:w.columnPixelSpacing,columns:a.columns,height:a.rows,intercept:v.rescaleIntercept?v.rescaleIntercept:0,invert:"MONOCHROME1"===a.photometricInterpretation,minPixelValue:a.smallestPixelValue,maxPixelValue:a.largestPixelValue,rowPixelSpacing:w.rowPixelSpacing,rows:a.rows,sizeInBytes:a.pixelData.byteLength,slope:v.rescaleSlope?v.rescaleSlope:1,width:a.columns,windowCenter:m.windowCenter?m.windowCenter[0]:void 0,windowWidth:m.windowWidth?m.windowWidth[0]:void 0,decodeTimeInMS:a.decodeTimeInMS,floatPixelData:void 0,imageFrame:a};if(a.pixelData instanceof Float32Array&&l){var S=a.pixelData,T=function(e){for(var i=K(e),r=Math.abs(i.max-i.min)/65535,f=i.min,n=e.length,t=new Uint16Array(n),a=65535,s=0,l=0;l<n;l++){var o=Math.floor((e[l]-f)/r);t[l]=o,a=Math.min(a,o),s=Math.max(s,o)}return{min:a,max:s,intPixelData:t,slope:r,intercept:f}}(S);E.minPixelValue=T.min,E.maxPixelValue=T.max,E.slope=T.slope,E.intercept=T.intercept,E.floatPixelData=S,E.getPixelData=function(){return T.intPixelData}}else E.getPixelData=function(){return a.pixelData};if(E.color&&(E.getCanvas=function(){return Ce===e?t:(t.height=E.rows,t.width=E.columns,t.getContext("2d").putImageData(a.imageData,0,0),Ce=e,t)}),v.modalityLUTSequence&&v.modalityLUTSequence.length>0&&("1.2.840.10008.5.1.4.1.1.12.1"!==(A=p.sopClassUID)&&"1.2.840.10008.5.1.4.1.1.12.2.1"!==A)&&(E.modalityLUT=v.modalityLUTSequence[0]),m.voiLUTSequence&&m.voiLUTSequence.length>0&&(E.voiLUT=m.voiLUTSequence[0]),E.color&&(E.windowWidth=255,E.windowCenter=127),void 0===E.windowCenter||void 0===E.windowWidth){var R=E.maxPixelValue*E.slope+E.intercept,C=E.minPixelValue*E.slope+E.intercept;E.windowWidth=R-C,E.windowCenter=(R+C)/2}i(E)}),a)}))};var Ie=function(e,i){var r=(new Date).getTime(),f=e.substring(7);return{promise:new Promise((function(n,t){x(f,e,'multipart/related; type="application/octet-stream"; transfer-syntax=*').then((function(f){var a=function(e){if(!e)return"1.2.840.10008.1.2";var i=e.split(";"),r={};i.forEach((function(e){var i=e.split("=");if(2===i.length){var f=i[1].trim().replace(/"/g,"");r[i[0].trim()]=f}}));var f={"image/jpeg":"1.2.840.10008.1.2.4.70","image/x-dicom-rle":"1.2.840.10008.1.2.5","image/x-jls":"1.2.840.10008.1.2.4.80","image/jp2":"1.2.840.10008.1.2.4.90","image/jpx":"1.2.840.10008.1.2.4.92"};return r["transfer-syntax"]?r["transfer-syntax"]:e&&!Object.keys(r).length&&f[e]?f[e]:r.type&&f[r.type]?f[r.type]:"1.2.840.10008.1.2"}(f.contentType),s=f.imageFrame.pixelData;Pe(e,s,a,i).then((function(e){var i=(new Date).getTime();e.loadTimeInMS=i-r,n(e)}),t)}),t).catch((function(e){t(e)}))})),cancelFn:void 0}},Oe={metaData:{getNumberString:m,getNumberValue:v,getNumberValues:p,getValue:w,metaDataProvider:A},findIndexOfString:S,getPixelData:x,loadImage:Ie,metaDataManager:M,register:function(e){e.registerImageLoader("wadors",Ie),e.metaData.addProvider(A)}};var xe,Le,Be=function(e){Oe.register(e),ii.register(e)},ze={set cornerstone(e){Be(xe=e)},get cornerstone(){if(!xe){if(!window||!window.cornerstone)throw new Error("cornerstoneWADOImageLoader requires a copy of Cornerstone to work properly. Please add cornerstoneWADOImageLoader.external.cornerstone = cornerstone; to your application.");xe=window.cornerstone,Be(xe)}return xe},set dicomParser(e){Le=e},get dicomParser(){if(!Le){if(!window||!window.dicomParser)throw new Error("cornerstoneWADOImageLoader requires a copy of dicomParser to work properly. Please add cornerstoneWADOImageLoader.external.dicomParser = dicomParser; to your application.");Le=window.dicomParser}return Le}};var De=function(e){var i,r=e.indexOf(":"),f=e.substring(r+1),n=f.indexOf("frame=");if(-1!==n){var t=f.substr(n+6);i=parseInt(t,10),f=f.substr(0,n-1)}return{scheme:e.substr(0,r),url:f,frame:i}},Ne=0,Fe={},He={};function Ue(){return{cacheSizeInBytes:Ne,numberOfDataSetsCached:Object.keys(Fe).length}}var je={isLoaded:function(e){return void 0!==Fe[e]},load:function(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:P,r=arguments.length>2?arguments[2]:void 0,f=ze.cornerstone,n=ze.dicomParser;if(Fe[e])return new Promise((function(i){Fe[e].cacheCount++,i(Fe[e].dataSet)}));if(He[e])return He[e].cacheCount++,He[e];var t=i(e,r),a=new Promise((function(i,r){t.then((function(t){var s,l=new Uint8Array(t);try{s=n.parseDicom(l)}catch(e){return r(e)}Fe[e]={dataSet:s,cacheCount:a.cacheCount},Ne+=s.byteArray.length,i(s),f.triggerEvent(f.events,"datasetscachechanged",{uri:e,action:"loaded",cacheInfo:Ue()})}),r).then((function(){delete He[e]}),(function(){delete He[e]}))}));return a.cacheCount=1,He[e]=a,a},unload:function(e){var i=ze.cornerstone;Fe[e]&&(Fe[e].cacheCount--,0===Fe[e].cacheCount&&(Ne-=Fe[e].dataSet.byteArray.length,delete Fe[e],i.triggerEvent(i.events,"datasetscachechanged",{uri:e,action:"unloaded",cacheInfo:Ue()})))},getInfo:Ue,purge:function(){Fe={},He={}},get:function(e){if(Fe[e])return Fe[e].dataSet}};var Ye=function(e,i){var r=ze.dicomParser,f=De(i),n=je.get(f.url);if(n){if("generalSeriesModule"===e)return{modality:n.string("x00080060"),seriesInstanceUID:n.string("x0020000e"),seriesNumber:n.intString("x00200011"),studyInstanceUID:n.string("x0020000d"),seriesDate:r.parseDA(n.string("x00080021")),seriesTime:r.parseTM(n.string("x00080031")||"")};if("patientStudyModule"===e)return{patientAge:n.intString("x00101010"),patientSize:n.floatString("x00101020"),patientWeight:n.floatString("x00101030")};if("imagePlaneModule"===e){var t=k(n,"x00200037",6),a=k(n,"x00200032",3),s=k(n,"x00280030",2),l=null,o=null;s&&(o=s[0],l=s[1]);var u=null,c=null;return t&&(u=[parseFloat(t[0]),parseFloat(t[1]),parseFloat(t[2])],c=[parseFloat(t[3]),parseFloat(t[4]),parseFloat(t[5])]),{frameOfReferenceUID:n.string("x00200052"),rows:n.uint16("x00280010"),columns:n.uint16("x00280011"),imageOrientationPatient:t,rowCosines:u,columnCosines:c,imagePositionPatient:a,sliceThickness:n.floatString("x00180050"),sliceLocation:n.floatString("x00201041"),pixelSpacing:s,rowPixelSpacing:o,columnPixelSpacing:l}}if("imagePixelModule"===e)return h(n);if("modalityLutModule"===e)return{rescaleIntercept:n.floatString("x00281052"),rescaleSlope:n.floatString("x00281053"),rescaleType:n.string("x00281054"),modalityLUTSequence:b(n.uint16("x00280103"),n.elements.x00283000)};if("voiLutModule"===e){var d=_(n);return{windowCenter:k(n,"x00281050",1),windowWidth:k(n,"x00281051",1),voiLUTSequence:b(d,n.elements.x00283010)}}if("sopCommonModule"===e)return{sopClassUID:n.string("x00080016"),sopInstanceUID:n.string("x00080018")};if("petIsotopeModule"===e){var w=n.elements.x00540016;if(void 0===w)return;var m=w.items[0].dataSet;return{radiopharmaceuticalInfo:{radiopharmaceuticalStartTime:r.parseTM(m.string("x00181072")||""),radionuclideTotalDose:m.floatString("x00181074"),radionuclideHalfLife:m.floatString("x00181075")}}}return"overlayPlaneModule"===e?function(e){for(var i=[],r=0;r<=30;r+=2){var f="x60".concat(r.toString(16));4===f.length&&(f="x600".concat(r.toString(16)));var n=e.elements["".concat(f,"3000")];if(n){for(var t=[],a=0;a<n.length;a++)for(var s=0;s<8;s++){var l=e.byteArray[n.dataOffset+a];t[8*a+s]=l>>s&1}i.push({rows:e.uint16("".concat(f,"0010")),columns:e.uint16("".concat(f,"0011")),type:e.string("".concat(f,"0040")),x:e.int16("".concat(f,"0050"),1)-1,y:e.int16("".concat(f,"0050"),0)-1,pixelData:t,description:e.string("".concat(f,"0022")),label:e.string("".concat(f,"1500")),roiArea:e.string("".concat(f,"1301")),roiMean:e.string("".concat(f,"1302")),roiStandardDeviation:e.string("".concat(f,"1303"))})}}return{overlays:i}}(n):void 0}},qe=[];var $e={add:function(e){var i=qe.push(e);return"dicomfile:".concat(i-1)},get:function(e){return qe[e]},remove:function(e){qe[e]=void 0},purge:function(){qe=[]}};function Ve(e,i){var r=ze.dicomParser;if(e.elements.x7fe00010&&e.elements.x7fe00010.basicOffsetTable.length)return r.readEncapsulatedImageFrame(e,e.elements.x7fe00010,i);if(function(e){return e.intString("x00280008")!==e.elements.x7fe00010.fragments.length}(e)){var f=r.createJPEGBasicOffsetTable(e,e.elements.x7fe00010);return r.readEncapsulatedImageFrame(e,e.elements.x7fe00010,i,f)}return r.readEncapsulatedPixelDataFromFragments(e,e.elements.x7fe00010,i)}function Xe(e,i){return e&1<<i}var Ge=function(e,i,r){for(var f=new Uint8Array(r),n=0;n<r;n++){var t=e[Math.floor(n/8)+i],a=n%8;f[n]=Xe(t,a)?1:0}return f};var Ke=function(e,i){var r=e.elements.x7fe00010||e.elements.x7fe00008,f=e.uint16("x00280100"),n=e.uint16("x00280010"),t=e.uint16("x00280011"),a=e.uint16("x00280002");"YBR_FULL_422"===e.string("x00280004")&&(a=2,console.warn("Using SamplesPerPixel of 2 for YBR_FULL_422 photometric interpretation.\n See http://dicom.nema.org/medical/dicom/current/output/chtml/part03/sect_C.7.6.3.html for more information."));var s,l=r.dataOffset,o=n*t*a;if(8===f){if((s=l+i*o)>=e.byteArray.length)throw new Error("frame exceeds size of pixelData");return new Uint8Array(e.byteArray.buffer,s,o)}if(16===f){if((s=l+i*o*2)>=e.byteArray.length)throw new Error("frame exceeds size of pixelData");return new Uint8Array(e.byteArray.buffer,s,2*o)}if(1===f){if((s=l+i*o*.125)>=e.byteArray.length)throw new Error("frame exceeds size of pixelData");return Ge(e.byteArray,s,o)}if(32===f){if((s=l+i*o*4)>=e.byteArray.length)throw new Error("frame exceeds size of pixelData");return new Uint8Array(e.byteArray.buffer,s,4*o)}throw new Error("unsupported pixel format")};var We=function(e){var i=De(e),r=parseInt(i.url,10),f=$e.get(r);return new Promise((function(e,i){var r=new FileReader;r.onload=function(i){var r=i.target.result;e(r)},r.onerror=i,r.readAsArrayBuffer(f)}))};var Ze=function(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=e.elements.x7fe00010||e.elements.x7fe00008;return r?r.encapsulatedPixelData?Ve(e,i):Ke(e,i):null};function Je(e,i){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,f=arguments.length>3?arguments[3]:void 0,n=arguments.length>4?arguments[4]:void 0,t=arguments.length>5?arguments[5]:void 0,a=(new Date).getTime(),s={cancelFn:void 0};return s.promise=new Promise((function(l,o){e.then((function(e){var u=Ze(e,r),c=e.string("x00020010"),h=(new Date).getTime(),d=Pe(i,u,c,n);!function(e,i){e.decache=function(){var e=De(i);je.unload(e.url)}}(s,i),d.then((function(i){i.data=e,i.sharedCacheKey=f;var r=(new Date).getTime();i.loadTimeInMS=h-a,i.totalTimeInMS=r-a,void 0!==t&&void 0!==t.imageDoneCallback&&t.imageDoneCallback(i),l(i)}),(function(i){o({error:i,dataSet:e})}))}),(function(e){o({error:e})}))})),s}function Qe(e){return"dicomweb"===e||"wadouri"===e?P:"dicomfile"===e?We:void 0}function ei(e){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=De(e),f=(i=Object.assign({},i)).loader;return void 0===f?f=Qe(r.scheme):delete i.loader,je.isLoaded(r.url)?function(e,i){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,f=arguments.length>3?arguments[3]:void 0,n=arguments.length>4?arguments[4]:void 0,t=(new Date).getTime();return{promise:new Promise((function(a,s){var l,o=(new Date).getTime();try{var u=Ze(e,r),c=e.string("x00020010");l=Pe(i,u,c,n)}catch(i){return void s({error:i,dataSet:e})}l.then((function(i){i.data=e,i.sharedCacheKey=f;var r=(new Date).getTime();i.loadTimeInMS=o-t,i.totalTimeInMS=r-t,a(i)}),s)})),cancelFn:void 0}}(je.get(r.url,f,e),e,r.frame,r.url,i):Je(je.load(r.url,f,e),e,r.frame,r.url,i)}var ii={metaData:{getImagePixelModule:h,getLUTs:b,getModalityLUTOutputPixelRepresentation:_,getNumberValues:k,metaDataProvider:Ye},dataSetCacheManager:je,fileManager:$e,getEncapsulatedImageFrame:Ve,getUncompressedImageFrame:Ke,loadFileRequest:We,loadImageFromPromise:Je,getLoaderForScheme:Qe,loadImage:ei,parseImageId:De,unpackBinaryFrame:Ge,register:function(e){e.registerImageLoader("dicomweb",ei),e.registerImageLoader("wadouri",ei),e.registerImageLoader("dicomfile",ei),e.metaData.addProvider(Ye)}};var ri=function(e){R(e)};r.d(i,"convertRGBColorByPixel",(function(){return f})),r.d(i,"convertRGBColorByPlane",(function(){return n})),r.d(i,"convertYBRFullByPixel",(function(){return t})),r.d(i,"convertYBRFullByPlane",(function(){return a})),r.d(i,"convertPALETTECOLOR",(function(){return o})),r.d(i,"wadouri",(function(){return ii})),r.d(i,"wadors",(function(){return Oe})),r.d(i,"configure",(function(){return ri})),r.d(i,"convertColorSpace",(function(){return Te})),r.d(i,"createImage",(function(){return Pe})),r.d(i,"decodeImageFrame",(function(){return Ae})),r.d(i,"decodeJPEGBaseline8BitColor",(function(){return Z})),r.d(i,"getImageFrame",(function(){return B})),r.d(i,"getPixelData",(function(){return x})),r.d(i,"getMinMax",(function(){return K})),r.d(i,"isColorImage",(function(){return Ee})),r.d(i,"isJPEGBaseline8BitColor",(function(){return Re})),r.d(i,"webWorkerManager",(function(){return G})),r.d(i,"version",(function(){return"3.3.2"})),r.d(i,"internal",(function(){return I})),r.d(i,"external",(function(){return ze}));var fi={convertRGBColorByPixel:f,convertRGBColorByPlane:n,convertYBRFullByPixel:t,convertYBRFullByPlane:a,convertPALETTECOLOR:o,wadouri:ii,wadors:Oe,configure:ri,convertColorSpace:Te,createImage:Pe,decodeImageFrame:Ae,decodeJPEGBaseline8BitColor:Z,getImageFrame:B,getPixelData:x,getMinMax:K,isColorImage:Ee,isJPEGBaseline8BitColor:Re,webWorkerManager:G,version:"3.3.2",internal:I,external:ze};i.default=fi}])}));
//# sourceMappingURL=cornerstoneWADOImageLoader.min.js.map