var OGVDemuxerOgg = (function() { var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; return ( function(OGVDemuxerOgg) { OGVDemuxerOgg = OGVDemuxerOgg || {}; var a;a||(a=typeof OGVDemuxerOgg !== 'undefined' ? OGVDemuxerOgg : {});var aa=a;a.memoryLimit&&(a.TOTAL_MEMORY=aa.memoryLimit);var f={},k;for(k in a)a.hasOwnProperty(k)&&(f[k]=a[k]);a.arguments=[];a.thisProgram="./this.program";a.quit=function(b,c){throw c;};a.preRun=[];a.postRun=[];var l=!1,m=!1,p=!1,q=!1;l="object"===typeof window;m="function"===typeof importScripts;p="object"===typeof process&&"function"===typeof require&&!l&&!m;q=!l&&!p&&!m;var r=""; if(p){r=__dirname+"/";var u,v;a.read=function(b,c){var d=w(b);d||(u||(u=require("fs")),v||(v=require("path")),b=v.normalize(b),d=u.readFileSync(b));return c?d:d.toString()};a.readBinary=function(b){b=a.read(b,!0);b.buffer||(b=new Uint8Array(b));assert(b.buffer);return b};1G&&A("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+G+"! (TOTAL_STACK=5242880)");a.buffer?buffer=a.buffer:buffer=new ArrayBuffer(G);a.HEAP8=D=new Int8Array(buffer);a.HEAP16=new Int16Array(buffer);a.HEAP32=F=new Int32Array(buffer);a.HEAPU8=E=new Uint8Array(buffer); a.HEAPU16=new Uint16Array(buffer);a.HEAPU32=new Uint32Array(buffer);a.HEAPF32=new Float32Array(buffer);a.HEAPF64=new Float64Array(buffer);F[1196]=5247696;function H(b){for(;0>>16)*e+d*(c>>>16)<<16)|0});Math.clz32||(Math.clz32=function(b){var c=32,d=b>>16;d&&(c-=16,b=d);if(d=b>>8)c-=8,b=d;if(d=b>>4)c-=4,b=d;if(d=b>>2)c-=2,b=d;return b>>1?c-2:c-b});Math.trunc||(Math.trunc=function(b){return 0>b?Math.ceil(b):Math.floor(b)});var I=0,J=null,K=null;a.preloadedImages={};a.preloadedAudios={};var L=null,M="data:application/octet-stream;base64,";L="data:application/octet-stream;base64,AAAAAAAAAABkCgAABwAAAGwKAAABAAAAAQAAAAIAAABzCgAABwAAAHsKAAADAAAAAgAAAAQAAACCCgAABQAAAIIKAAAFAAAAAwAAAAAAAACICgAACAAAAJEKAAAGAAAAAAAAAAAAAACVCgAACAAAAJ4KAAAHAAAAAAAAAAAAAACjCgAABwAAAKMKAAAIAAAAAAAAAAAAAACrCgAABwAAALMKAAAJAAAAAAAAAAAAAAC8CgAABAAAAMEKAAAKAAAABAAAAAAAAADHCgAABQAAAM0KAAALAAAABAAAAAAAAADSCgAABwAAANIKAAAMAAAAAAAAAAAAAADaCgAACAAAAOMKAAANAAAABQAAAAAAAADoCgAACAAAAPEKAAAOAAAAAAAAAAAAAAD2CgAABQAAAPwKAAAPAAAAAAAAAAAAAAACCwAACAAAAAsLAAAQAAAABgAAABEAAAAQCwAABQAAABYLAAASAAAABwAAAAAAAADkEQAAAAAAABoLAAAAAAAAAAAAAAAAAADgAQAAwAMAAIAHAABACwAA4AEAAMADAACABwAAQAsAAOABAADAAwAAgAcAAEALAADgAQAAwAMAAOABAADAAwAAeAAAAPAAAADgAQAAwAMAAHgAAADwAAAA4AEAAMADAAB4AAAA8AAAAOABAADAAwAAeAAAAPAAAADgAQAAwAMAAIACAADMAQAAGAAAAAEAAACwAAAAeAAAAGABAADwAAAAYAEAACABAADAAgAA4AEAAMACAABAAgAA0AIAAOABAADQAgAAQAIAAAAFAADQAgAAAAUAANACAACABwAAOAQAAIAHAAA4BAAAgAcAADgEAACABwAAOAQAAAAIAAA4BAAAABAAAHAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAJAAAACgAAAAkAAAAKAAAACQAAAAoAAAAEAAAAAwAAAAcAAAAGAAAABAAAAAMAAAAHAAAABgAAAAIAAAACAAAABwAAAAYAAAAHAAAABgAAAAAAAAAAAAAAAAAAAAEAAAABAAAAwF0AAOkDAAAYAAAAAQAAABkAAAABAAAAMHUAAOkDAAAeAAAAAQAAADIAAAABAAAAYOoAAOkDAAA8AAAAAQAAAJg6AADpAwAAGQAAAAIAAAAAAAAAAAAAAAAAAAABAAAAAwAAAAcAAAAPAAAAHwAAAD8AAAB/AAAA/wAAAP8BAAD/AwAA/wcAAP8PAAD/HwAA/z8AAP9/AAD//wAA//8BAP//AwD//wcA//8PAP//HwD//z8A//9/AP///wD///8B////A////wf///8P////H////z////9//////wAAAAAAAAAAAAAAAAAAAAC3HcEEbjuCCdkmQw3cdgQTa2vFF7JNhhoFUEceuO0IJg/wySLW1oovYctLK2SbDDXThs0xCqCOPL29Tzhw2xFMx8bQSB7gk0Wp/VJBrK0VXxuw1FvClpdWdYtWUsg2GWp/K9hupg2bYxEQWmcUQB15o13cfXp7n3DNZl504LYjmFer4pyOjaGROZBglTzAJ4uL3eaPUvulguXmZIZYWyu+70bqujZgqbeBfWizhC0vrTMw7qnqFq2kXQtsoJBtMtQncPPQ/law3UlLcdlMGzbH+wb3wyIgtM6VPXXKKIA68p+d+/ZGu7j78aZ5//T2PuFD6//lms286C3Qfex3cIY0wG1HMBlLBD2uVsU5qwaCJxwbQyPFPQAuciDBKs+djhJ4gE8WoaYMGxa7zR8T64oBpPZLBX3QCAjKzckMB6uXeLC2VnxpkBVx3o3Uddvdk2tswFJvteYRYgL70Ga/Rp9eCFteWtF9HVdmYNxTYzCbTdQtWkkNCxlEuhbYQJfGpawg22So+f0npU7g5qFLsKG//K1guyWLI7aSluKyLyutipg2bI5BEC+D9g3uh/NdqZlEQGidnWYrkCp76pTnHbTgUAB15IkmNuk+O/ftO2uw84x2cfdVUDL64k3z/l/wvMbo7X3CMcs+z4bW/8uDhrjVNJt50e29OtxaoPvY7uAMaVn9zW2A245gN8ZPZDKWCHqFi8l+XK2Kc+uwS3dWDQRP4RDFSzg2hkaPK0dCinsAXD1mwVjkQIJVU11DUZ47HSUpJtwh8ACfLEcdXihCTRk29VDYMix2mz+ba1o7JtYVA5HL1AdI7ZcK//BWDvqgERBNvdAUlJuTGSOGUh0OVi/xuUvu9WBtrfjXcGz80iAr4mU96ua8G6nrCwZo77a7J9cBpubT2ICl3m+dZNpqzSPE3dDiwAT2oc2z62DJfo0+vcmQ/7kQtry0p6t9sKL7Oq4V5vuqzMC4p3vdeaPGYDabcX33n6hbtJIfRnWWGhYyiK0L84x0LbCBwzBxhZmQil0ujUtZ96sIVEC2yVBF5o5O8vtPSivdDEecwM1DIX2Ce5ZgQ39PRgBy+FvBdv0LhmhKFkdskzAEYSQtxWXpS5sRXlZaFYdwGRgwbdgcNT2fAoIgXgZbBh0L7BvcD1Gmkzfmu1IzP50RPoiA0DqN0JckOs1WIOPrFS1U9tQpeSapxc47aMEXHSvMoADqyKVQrdYSTWzSy2sv33x27tvBy6HjdtZg56/wI+oY7eLuHb2l8KqgZPRzhif5xJvm/Qn9uIm+4HmNZ8Y6gNDb+4TVi7yaYpZ9nruwPpMMrf+XsRCwrwYNcavfKzKmaDbzom1mtLzae3W4A102tbRA97EFAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAACAAAAGgLAAAABAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAK/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHRoZW9yYQB2b3JiaXMAb3B1cwBmaXNib25lAABmaXNoZWFkAABpbmRleAAAgHRoZW9yYQBUaGVvcmEAAXZvcmJpcwBWb3JiaXMAU3BlZXgAUENNICAgICAAUENNAENNTUwAAAAAAENNTUwAQW5ub2RleABmaXNoZWFkAFNrZWxldG9uAGZMYUMARmxhYzAAf0ZMQUMARmxhYwBBbnhEYXRhAENFTFQgICAgAENFTFQAgGthdGUAAAAAS2F0ZQBCQkNEAABEaXJhYwBPcHVzSGVhZABPcHVzAE9WUDgwAFZQOABVbmtub3duAFZQODAAA3ZvcmJpcwCBdGhlb3JhAIFrYXRlAAAAAE9wdXNUYWdzAE9WUDgwAiAAT2dnUw=="; var N=[null,[],[]]; function O(b,c){var d=N[b];if(0===c||10===c){b=1===b?z:A;c=0;for(var e=c+NaN,h=c;d[h]&&!(h>=e);)++h;if(16g?e+=String.fromCharCode(g):(g-=65536,e+=String.fromCharCode(55296|g>>10,56320|g&1023))}}else e+=String.fromCharCode(g)}c=e}b(c);d.length=0}else d.push(c)} var P=0;function Q(){P+=4;return F[P-4>>2]}var R={};function ka(){x("OOM")}var la=!1;function y(b){for(var c=[],d=0;d>4; h=(h&15)<<4|g>>2;var t=(g&3)<<6|n;c+=String.fromCharCode(e);64!==g&&(c+=String.fromCharCode(h));64!==n&&(c+=String.fromCharCode(t))}while(d>2]=b);return b},f:function(b,c){P=c;try{return R.A(),Q(),Q(),Q(),Q(),0}catch(d){return x(d),-d.w}},g:function(b,c){P=c;try{var d=Q(),e=Q(),h=Q();for(c=b=0;c>2],n=F[e+(8*c+4)>>2],t=0;t>2]|0))if(!(c[992]|0)){c[993]=2;G(c[989]|0,c[991]|0);d=ka(b,d)|0;return d|0}else{c[993]=1;d=ja(b,d)|0;return d|0}a=Hc(c[995]|0,d)|0;if(!(c[988]|a)){c[988]=1;c[989]=2616;c[998]=d;H(c[b>>2]|0,c[b+4>>2]|0,-1.0,-1.0,0);d=0;return d|0}e=(c[990]|0)==0;if((a|0)==1&e){c[990]=1;c[991]=2623;c[999]=d;F(c[b>>2]|0,c[b+4>>2]|0,-1.0,0.0);d=0;return d|0}if((a|0)==13&e){c[990]=1;c[991]=2630;c[999]=d;F(c[b>>2]|0,c[b+4>>2]|0,-1.0,0.0);d=0;return d|0}if(!((a|0)==6&(c[992]|0)==0)){d=0;return d|0}c[992]=1;c[1e3]=d;a=va(c[996]|0,b)|0;if(a){if((a|0)<=0){d=-1;return d|0}}else c[997]=1;d=0;return d|0}case 1:{d=ja(b,d)|0;return d|0}case 2:{d=ka(b,d)|0;return d|0}default:{d=-1;return d|0}}return 0}function Z(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=na(a)|0;t()|0;c=d>>>0>c>>>0?c:d;a=(ra(a,b,c)|0)<0;return (a?-1:c)|0}function _(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;switch(c|0){case 0:{d=b;c=((b|0)<0)<<31>>31;break}case 1:{d=we(ma(a)|0,t()|0,b|0,((b|0)<0)<<31>>31|0)|0;c=t()|0;break}default:return -1}a=(oa(a,d,c)|0)==0;return (a?d:-1)|0}function $(a){a=a|0;a=ma(a)|0;t()|0;return a|0}function aa(a,b){a=a|0;b=b|0;qa(c[994]|0,a,b);return}function ba(){var a=0,b=0,d=0;a=na(c[994]|0)|0;b=t()|0;d=(b|0)<0|(b|0)==0&a>>>0<65536;a=d?a:65536;a=Jb(c[995]|0,a)|0;if((a|0)==-14){d=1;return d|0}while(1){if((a|0)<=0){a=0;b=5;break}a=na(c[994]|0)|0;d=t()|0;b=(d|0)<0|(d|0)==0&a>>>0<65536;a=b?a:65536;a=Jb(c[995]|0,a)|0;if((a|0)==-14){a=1;b=5;break}}if((b|0)==5)return a|0;return 0}function ca(){ua(c[996]|0)|0;Xa(c[995]|0)|0;sa(c[994]|0);c[994]=0;return}function da(){var a=0,b=0,d=0;b=K;K=K+16|0;a=b;d=a;c[d>>2]=-1;c[d+4>>2]=-1;if(!(c[997]|0)){d=-1;K=b;return d|0}Ha(c[996]|0,a)|0;d=c[a>>2]|0;K=b;return d|0}function ea(){var a=0.0,d=0.0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0;m=K;K=K+48|0;e=m+42|0;f=m+40|0;l=m+32|0;i=m+24|0;h=m+16|0;k=m+8|0;j=m;if(!(c[997]|0)){d=-1.0;K=m;return +d}b[e>>1]=-1;b[f>>1]=-1;Ea(c[996]|0,e)|0;Ga(c[996]|0,f)|0;e=c[998]|0;if(!e)f=0;else{c[l>>2]=e;f=1}e=c[999]|0;if(!e)if(!f){d=-1.0;a=-1.0}else{f=1;g=7}else{c[l+(f<<2)>>2]=e;f=f+1|0;g=7}if((g|0)==7){d=-1.0;e=0;a=-1.0;do{g=i;c[g>>2]=-1;c[g+4>>2]=-1;g=h;c[g>>2]=-1;c[g+4>>2]=-1;g=k;c[g>>2]=-1;c[g+4>>2]=-1;g=j;c[g>>2]=-1;c[g+4>>2]=-1;g=c[l+(e<<2)>>2]|0;Ka(c[996]|0,g,i)|0;La(c[996]|0,g,h)|0;Ma(c[996]|0,g,k)|0;Na(c[996]|0,g,j)|0;g=i;o=h;n=(+((c[g>>2]|0)>>>0)+4294967296.0*+(c[g+4>>2]|0))/(+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0));d=d==-1.0|n>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0))/(+((c[g>>2]|0)>>>0)+4294967296.0*+(c[g+4>>2]|0));a=a==-1.0|n>a?n:a;e=e+1|0}while((e|0)!=(f|0))}n=a-d;K=m;return +n}function fa(){return 1}function ga(a){a=a|0;var b=0,d=0,e=0,f=0;f=K;K=K+16|0;e=f;b=f+8|0;d=e;c[d>>2]=-1;c[d+4>>2]=-1;if(!(c[997]|0)){a=-1;K=f;return a|0}do if(!(c[988]|0))if(!(c[990]|0)){d=0;break}else{c[b>>2]=c[999];d=1;break}else{c[b>>2]=c[998];d=1}while(0);Ia(c[996]|0,b,d,a,((a|0)<0)<<31>>31,e)|0;a=c[e>>2]|0;K=f;return a|0}function ha(a){a=a|0;return 0}function ia(){Nb(c[995]|0)|0;Tb(c[995]|0,0,0,1)|0;t()|0;pa(c[994]|0);return}function ja(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=K;K=K+16|0;g=f+8|0;h=f;k=Za(c[995]|0)|0;d=(+(k>>>0)+4294967296.0*+(t()|0))/1.0e3;k=_a(c[995]|0)|0;j=t()|0;i=hd(c[995]|0,b)|0;l=g;c[l>>2]=0;c[l+4>>2]=0;l=h;c[l>>2]=0;c[l+4>>2]=0;jd(c[995]|0,b,g,h)|0;i=Ee(k|0,j|0,i|0)|0;e=+(i>>>0)+4294967296.0*+(t()|0);e=e*(+((c[h>>2]|0)>>>0)+4294967296.0*+(c[h+4>>2]|0))/(+((c[g>>2]|0)>>>0)+4294967296.0*+(c[g+4>>2]|0));if((c[992]|0)!=0&(c[1e3]|0)==(b|0)){if((va(c[996]|0,a)|0)<0){l=-1;K=f;return l|0}if(c[a+12>>2]|0){c[997]=1;c[993]=2;G(c[989]|0,c[991]|0)}}if((c[988]|0)!=0&(c[998]|0)==(b|0)){h=c[a>>2]|0;i=c[a+4>>2]|0;j=_a(c[995]|0)|0;l=t()|0;k=hd(c[995]|0,c[998]|0)|0;g=Ee(j|0,l|0,k|0)|0;k=Fe(g|0,t()|0,k|0)|0;H(h|0,i|0,+d,+e,(j|0)==(k|0)&(l|0)==(t()|0)&1|0)}if(!((c[990]|0)!=0&(c[999]|0)==(b|0))){l=0;K=f;return l|0}F(c[a>>2]|0,c[a+4>>2]|0,+d,0.0);l=0;K=f;return l|0}function ka(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=K;K=K+16|0;h=g+8|0;i=g;l=Za(c[995]|0)|0;e=(+(l>>>0)+4294967296.0*+(t()|0))/1.0e3;l=_a(c[995]|0)|0;k=t()|0;j=hd(c[995]|0,b)|0;m=h;c[m>>2]=0;c[m+4>>2]=0;m=i;c[m>>2]=0;c[m+4>>2]=0;jd(c[995]|0,b,h,i)|0;j=Ee(l|0,k|0,j|0)|0;f=+(j>>>0)+4294967296.0*+(t()|0);f=f*(+((c[i>>2]|0)>>>0)+4294967296.0*+(c[i+4>>2]|0))/(+((c[h>>2]|0)>>>0)+4294967296.0*+(c[h+4>>2]|0));if((c[988]|0)!=0&(c[998]|0)==(b|0)?(d=c[a+4>>2]|0,(d|0)>0):0){j=c[a>>2]|0;k=_a(c[995]|0)|0;m=t()|0;l=hd(c[995]|0,c[998]|0)|0;i=Ee(k|0,m|0,l|0)|0;l=Fe(i|0,t()|0,l|0)|0;H(j|0,d|0,+e,+f,(k|0)==(l|0)&(m|0)==(t()|0)&1|0);m=1;K=g;return m|0}if(!((c[990]|0)!=0&(c[999]|0)==(b|0))){m=0;K=g;return m|0}F(c[a>>2]|0,c[a+4>>2]|0,+e,0.0);m=1;K=g;return m|0}function la(){var a=0,b=0;a=Hd(32)|0;b=a+16|0;c[b>>2]=0;c[b+4>>2]=0;c[a+4>>2]=0;c[a+8>>2]=8;c[a>>2]=Hd(192)|0;return a|0}function ma(a){a=a|0;var b=0;b=a+16|0;a=c[b>>2]|0;s(c[b+4>>2]|0);return a|0}function na(a){a=a|0;var b=0,d=0,e=0;b=c[a+4>>2]|0;if(!b){a=a+16|0;b=c[a>>2]|0;a=c[a+4>>2]|0;e=b;d=a;a=xe(e|0,d|0,b|0,a|0)|0;b=t()|0;s(b|0);return a|0}else{d=c[a>>2]|0;b=b+-1|0;e=d+(b*24|0)+8|0;b=we(c[e>>2]|0,c[e+4>>2]|0,c[d+(b*24|0)+16>>2]|0,0)|0;d=t()|0;e=a+16|0;a=d;d=c[e>>2]|0;e=c[e+4>>2]|0;e=xe(b|0,a|0,d|0,e|0)|0;d=t()|0;s(d|0);return e|0}return 0}function oa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=c[a+4>>2]|0;f=(e|0)==0;if(f)g=a+16|0;else g=(c[a>>2]|0)+8|0;h=c[g+4>>2]|0;do if(!((h|0)>(d|0)|((h|0)==(d|0)?(c[g>>2]|0)>>>0>b>>>0:0))){if(f){f=a+16|0;e=c[f+4>>2]|0;f=c[f>>2]|0}else{h=c[a>>2]|0;f=e+-1|0;e=h+(f*24|0)+8|0;f=we(c[e>>2]|0,c[e+4>>2]|0,c[h+(f*24|0)+16>>2]|0,0)|0;e=t()|0}if((e|0)<(d|0)|(e|0)==(d|0)&f>>>0>>0){e=a+24|0;f=-1;break}else{e=a+16|0;f=0;break}}else{e=a+24|0;f=-1}while(0);h=e;c[h>>2]=b;c[h+4>>2]=d;return f|0}function pa(a){a=a|0;var b=0,d=0,e=0;e=a+4|0;if(c[e>>2]|0){b=c[a>>2]|0;d=0;do{Id(c[b+(d*24|0)>>2]|0);b=c[a>>2]|0;c[b+(d*24|0)>>2]=0;d=d+1|0}while(d>>>0<(c[e>>2]|0)>>>0)}c[e>>2]=0;a=a+16|0;c[a>>2]=0;c[a+4>>2]=0;return}function qa(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=a+4|0;e=c[k>>2]|0;j=a+8|0;do if((e|0)==(c[j>>2]|0))if(!e)e=0;else{h=a+16|0;g=c[a>>2]|0;f=0;do{m=g+(f*24|0)+8|0;m=we(c[m>>2]|0,c[m+4>>2]|0,c[g+(f*24|0)+16>>2]|0,0)|0;o=t()|0;l=h;n=c[l+4>>2]|0;if(!((o|0)<(n|0)|((o|0)==(n|0)?m>>>0<(c[l>>2]|0)>>>0:0))){i=6;break}Id(c[g+(f*24|0)>>2]|0);g=c[a>>2]|0;c[g+(f*24|0)>>2]=0;f=f+1|0;e=c[k>>2]|0}while(f>>>0>>0);if((i|0)==6)if(!f)break;e=e-f|0;c[k>>2]=e;He(g|0,g+(f*24|0)|0,e*24|0)|0;e=c[k>>2]|0}while(0);o=c[j>>2]|0;f=o+8|0;if((e|0)==(o|0)){c[j>>2]=f;c[a>>2]=Kd(c[a>>2]|0,f*24|0)|0;e=c[k>>2]|0}if(!e){m=a+16|0;n=c[a>>2]|0;a=c[m>>2]|0;m=c[m+4>>2]|0;o=n+(e*24|0)+8|0;l=o;c[l>>2]=a;o=o+4|0;c[o>>2]=m;o=n+(e*24|0)+16|0;c[o>>2]=d;o=Hd(d)|0;n=n+(e*24|0)|0;c[n>>2]=o;Ge(o|0,b|0,d|0)|0;o=e+1|0;c[k>>2]=o;return}else{n=c[a>>2]|0;a=e+-1|0;m=n+(a*24|0)+8|0;a=we(c[m>>2]|0,c[m+4>>2]|0,c[n+(a*24|0)+16>>2]|0,0)|0;m=t()|0;o=n+(e*24|0)+8|0;l=o;c[l>>2]=a;o=o+4|0;c[o>>2]=m;o=n+(e*24|0)+16|0;c[o>>2]=d;o=Hd(d)|0;n=n+(e*24|0)|0;c[n>>2]=o;Ge(o|0,b|0,d|0)|0;o=e+1|0;c[k>>2]=o;return}}function ra(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=a+4|0;j=c[o>>2]|0;g=(j|0)==0;if(g){h=a+16|0;i=c[h>>2]|0;h=c[h+4>>2]|0;e=i;f=h}else{f=c[a>>2]|0;e=j+-1|0;h=f+(e*24|0)+8|0;e=we(c[h>>2]|0,c[h+4>>2]|0,c[f+(e*24|0)+16>>2]|0,0)|0;f=t()|0;h=a+16|0;i=c[h>>2]|0;h=c[h+4>>2]|0}n=xe(e|0,f|0,i|0,h|0)|0;m=t()|0;if((m|0)<0|(m|0)==0&n>>>0>>0|g){a=-1;return a|0}n=a+16|0;m=0;l=0;k=d;while(1){d=c[a>>2]|0;f=d+(m*24|0)+8|0;e=c[f>>2]|0;f=c[f+4>>2]|0;g=c[d+(m*24|0)+16>>2]|0;p=we(e|0,f|0,g|0,0)|0;q=t()|0;if((q|0)<(h|0)|(q|0)==(h|0)&p>>>0>>0){f=l;e=k}else{i=xe(i|0,h|0,e|0,f|0)|0;t()|0;f=g-i|0;f=f>>>0>k>>>0?k:f;Ge(b+l|0,(c[d+(m*24|0)>>2]|0)+i|0,f|0)|0;i=n;i=we(c[i>>2]|0,c[i+4>>2]|0,f|0,0)|0;h=t()|0;e=n;c[e>>2]=i;c[e+4>>2]=h;e=k-f|0;if(!e){e=0;f=10;break}j=c[o>>2]|0;f=f+l|0}m=m+1|0;if(m>>>0>=j>>>0){e=-1;f=10;break}else{l=f;k=e}}if((f|0)==10)return e|0;return 0}function sa(a){a=a|0;var b=0,d=0,e=0;e=a+4|0;if(!(c[e>>2]|0))b=c[a>>2]|0;else{b=c[a>>2]|0;d=0;do{Id(c[b+(d*24|0)>>2]|0);b=c[a>>2]|0;c[b+(d*24|0)>>2]=0;d=d+1|0}while(d>>>0<(c[e>>2]|0)>>>0)}c[e>>2]=0;e=a+16|0;c[e>>2]=0;c[e+4>>2]=0;Id(b);Id(a);return}function ta(){var a=0,d=0,e=0,f=0;f=K;K=K+16|0;d=f+4|0;e=f;c[e>>2]=0;c[e>>2]=Jd(1,136)|0;if(!(c[e>>2]|0)){c[d>>2]=0;e=c[d>>2]|0;K=f;return e|0}a=Oa()|0;c[(c[e>>2]|0)+112>>2]=a;a=c[e>>2]|0;if(!(c[(c[e>>2]|0)+112>>2]|0)){Id(a);c[d>>2]=0;e=c[d>>2]|0;K=f;return e|0}else{b[a+116>>1]=0;b[(c[e>>2]|0)+118>>1]=0;c[(c[e>>2]|0)+120>>2]=0;a=(c[e>>2]|0)+128|0;c[a>>2]=0;c[a+4>>2]=0;c[d>>2]=c[e>>2];e=c[d>>2]|0;K=f;return e|0}return 0}function ua(a){a=a|0;var b=0,d=0,e=0;e=K;K=K+16|0;b=e+4|0;d=e;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=-2;d=c[b>>2]|0;K=e;return d|0}else{Pa(c[(c[d>>2]|0)+112>>2]|0);Id(c[d>>2]|0);c[b>>2]=0;d=c[b>>2]|0;K=e;return d|0}return 0}function va(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=K;K=K+16|0;g=i+12|0;h=i+8|0;e=i+4|0;f=i;c[h>>2]=a;c[e>>2]=d;c[f>>2]=-1;if(!(c[h>>2]|0)){c[g>>2]=-2;h=c[g>>2]|0;K=i;return h|0}if(!(c[e>>2]|0)){c[g>>2]=-13;h=c[g>>2]|0;K=i;return h|0}if(c[(c[e>>2]|0)+12>>2]|0){if((c[(c[h>>2]|0)+120>>2]|0)!=1){c[g>>2]=-1;h=c[g>>2]|0;K=i;return h|0}b[(c[h>>2]|0)+118>>1]=1;c[(c[h>>2]|0)+120>>2]=2;if(c[(c[e>>2]|0)+4>>2]|0){c[g>>2]=-6;h=c[g>>2]|0;K=i;return h|0}else{c[g>>2]=0;h=c[g>>2]|0;K=i;return h|0}}do if(!(le(c[c[e>>2]>>2]|0,2644,8)|0)){c[f>>2]=wa(c[h>>2]|0,c[e>>2]|0)|0;if(c[f>>2]|0){if(c[(c[e>>2]|0)+8>>2]|0){if(c[(c[h>>2]|0)+120>>2]|0)c[f>>2]=-14}else c[f>>2]=-12;c[(c[h>>2]|0)+120>>2]=1}}else{if(!(le(c[c[e>>2]>>2]|0,2635,8)|0)){c[f>>2]=xa(c[h>>2]|0,c[e>>2]|0)|0;if(!(c[f>>2]|0))break;if((c[(c[h>>2]|0)+120>>2]|0)==1)break;c[f>>2]=-14;break}if(le(c[c[e>>2]>>2]|0,2653,6)|0){c[f>>2]=-1;break}b[(c[h>>2]|0)+116>>1]=1;c[f>>2]=ya(c[h>>2]|0,c[e>>2]|0)|0;if(c[f>>2]|0?(c[(c[h>>2]|0)+120>>2]|0)!=1:0)c[f>>2]=-14}while(0);c[g>>2]=c[f>>2];h=c[g>>2]|0;K=i;return h|0}function wa(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=K;K=K+32|0;h=k+16|0;i=k+12|0;f=k+8|0;j=k+4|0;g=k;c[i>>2]=b;c[f>>2]=d;c[g>>2]=0;if(!(c[i>>2]|0)){c[h>>2]=-2;j=c[h>>2]|0;K=k;return j|0}if(c[f>>2]|0?c[c[f>>2]>>2]|0:0){c[g>>2]=(c[c[f>>2]>>2]|0)+8;c[g>>2]=Da(c[g>>2]|0,c[i>>2]|0)|0;c[g>>2]=Da(c[g>>2]|0,(c[i>>2]|0)+2|0)|0;c[j>>2]=(e[c[i>>2]>>1]|0)<<16|(e[(c[i>>2]|0)+2>>1]|0);if((c[j>>2]|0)>>>0>262144){c[h>>2]=-11;j=c[h>>2]|0;K=k;return j|0}if((c[j>>2]|0)==262144?(c[(c[f>>2]|0)+4>>2]|0)!=80:0){c[h>>2]=-18;j=c[h>>2]|0;K=k;return j|0}if((e[c[i>>2]>>1]|0|0)==3){if((e[(c[i>>2]|0)+2>>1]|0|0)>=2?(c[(c[f>>2]|0)+4>>2]|0)!=112:0){c[h>>2]=-18;j=c[h>>2]|0;K=k;return j|0}if((e[(c[i>>2]|0)+2>>1]|0|0)==0?(c[(c[f>>2]|0)+4>>2]|0)!=64:0){c[h>>2]=-18;j=c[h>>2]|0;K=k;return j|0}}c[g>>2]=Aa(c[g>>2]|0,(c[i>>2]|0)+8|0)|0;c[g>>2]=Aa(c[g>>2]|0,(c[i>>2]|0)+16|0)|0;c[g>>2]=Aa(c[g>>2]|0,(c[i>>2]|0)+24|0)|0;c[g>>2]=Aa(c[g>>2]|0,(c[i>>2]|0)+32|0)|0;d=(c[i>>2]|0)+40|0;f=c[g>>2]|0;b=d+20|0;do{a[d>>0]=a[f>>0]|0;d=d+1|0;f=f+1|0}while((d|0)<(b|0));if((c[j>>2]|0)>>>0>=196610){c[g>>2]=(c[g>>2]|0)+20;if((e[c[i>>2]>>1]|0|0)==3){c[g>>2]=Aa(c[g>>2]|0,(c[i>>2]|0)+64|0)|0;c[g>>2]=Aa(c[g>>2]|0,(c[i>>2]|0)+72|0)|0;c[g>>2]=Aa(c[g>>2]|0,(c[i>>2]|0)+80|0)|0;c[g>>2]=Aa(c[g>>2]|0,(c[i>>2]|0)+88|0)|0}c[g>>2]=Aa(c[g>>2]|0,(c[i>>2]|0)+96|0)|0;Aa(c[g>>2]|0,(c[i>>2]|0)+104|0)|0}c[h>>2]=1;j=c[h>>2]|0;K=k;return j|0}c[h>>2]=-13;j=c[h>>2]|0;K=k;return j|0}function xa(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=K;K=K+32|0;i=k+20|0;j=k+16|0;g=k+12|0;f=k+8|0;h=k+4|0;e=k;c[j>>2]=b;c[g>>2]=d;c[f>>2]=0;c[h>>2]=-1;c[e>>2]=0;if(!(c[j>>2]|0)){c[i>>2]=-2;j=c[i>>2]|0;K=k;return j|0}if(c[g>>2]|0?c[c[g>>2]>>2]|0:0){if((c[(c[g>>2]|0)+4>>2]|0)<52){c[i>>2]=-7;j=c[i>>2]|0;K=k;return j|0}c[f>>2]=Jd(1,56)|0;if(!(c[f>>2]|0)){c[i>>2]=-4;j=c[i>>2]|0;K=k;return j|0}c[e>>2]=(c[c[g>>2]>>2]|0)+8;c[e>>2]=Ca(c[e>>2]|0,c[f>>2]|0)|0;c[e>>2]=za(c[e>>2]|0,(c[f>>2]|0)+4|0)|0;c[e>>2]=Ca(c[e>>2]|0,(c[f>>2]|0)+8|0)|0;c[e>>2]=Aa(c[e>>2]|0,(c[f>>2]|0)+16|0)|0;c[e>>2]=Aa(c[e>>2]|0,(c[f>>2]|0)+24|0)|0;c[e>>2]=Aa(c[e>>2]|0,(c[f>>2]|0)+32|0)|0;c[e>>2]=Ca(c[e>>2]|0,(c[f>>2]|0)+40|0)|0;a[(c[f>>2]|0)+44>>0]=a[c[e>>2]>>0]|0;d=Jd((c[(c[g>>2]|0)+4>>2]|0)-52|0,1)|0;c[(c[f>>2]|0)+48>>2]=d;d=c[f>>2]|0;if(!(c[(c[f>>2]|0)+48>>2]|0)){Id(d);c[i>>2]=-4;j=c[i>>2]|0;K=k;return j|0}Ge(c[d+48>>2]|0,(c[c[g>>2]>>2]|0)+52|0,(c[(c[g>>2]|0)+4>>2]|0)-52|0)|0;c[h>>2]=Ra(c[(c[j>>2]|0)+112>>2]|0,c[f>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0;if((c[h>>2]|0)<0)Id(c[f>>2]|0);c[i>>2]=c[h>>2];j=c[i>>2]|0;K=k;return j|0}c[i>>2]=-13;j=c[i>>2]|0;K=k;return j|0}function ya(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=K;K=K+80|0;m=r+76|0;n=r+72|0;j=r+68|0;f=r+48|0;h=r+40|0;o=r+32|0;q=r+24|0;d=r+64|0;g=r+16|0;k=r+60|0;l=r+56|0;i=r+8|0;p=r;c[n>>2]=a;c[j>>2]=b;a=f;c[a>>2]=0;c[a+4>>2]=0;a=h;c[a>>2]=0;c[a+4>>2]=0;a=o;c[a>>2]=0;c[a+4>>2]=0;a=q;c[a>>2]=1e3;c[a+4>>2]=0;c[d>>2]=0;a=g;c[a>>2]=-1;c[a+4>>2]=-1;c[k>>2]=0;c[l>>2]=-1;if(!(c[n>>2]|0)){c[m>>2]=-2;q=c[m>>2]|0;K=r;return q|0}if(c[j>>2]|0?c[c[j>>2]>>2]|0:0){c[d>>2]=Jd(1,48)|0;if(!(c[d>>2]|0)){c[m>>2]=-4;q=c[m>>2]|0;K=r;return q|0}c[k>>2]=(c[c[j>>2]>>2]|0)+6;c[k>>2]=za(c[k>>2]|0,c[d>>2]|0)|0;c[k>>2]=Aa(c[k>>2]|0,(c[d>>2]|0)+8|0)|0;c[k>>2]=Aa(c[k>>2]|0,(c[d>>2]|0)+16|0)|0;if(((e[c[n>>2]>>1]|0)<<16|(e[(c[n>>2]|0)+2>>1]|0)|0)==262144){c[k>>2]=Aa(c[k>>2]|0,(c[d>>2]|0)+24|0)|0;c[k>>2]=Aa(c[k>>2]|0,(c[d>>2]|0)+32|0)|0}a=(c[d>>2]|0)+16|0;do if((c[a>>2]|0)==0&(c[a+4>>2]|0)==0)c[l>>2]=-9;else{s=(c[d>>2]|0)+8|0;s=Ce(c[s>>2]|0,c[s+4>>2]|0,2,0)|0;s=we(26,0,s|0,t()|0)|0;a=t()|0;b=g;c[b>>2]=s;c[b+4>>2]=a;b=g;g=c[b+4>>2]|0;a=c[(c[j>>2]|0)+4>>2]|0;j=((a|0)<0)<<31>>31;if((g|0)>(j|0)|((g|0)==(j|0)?(c[b>>2]|0)>>>0>a>>>0:0)){c[l>>2]=-10;break}s=Jd(c[(c[d>>2]|0)+8>>2]|0,16)|0;c[(c[d>>2]|0)+40>>2]=s;if(!(c[(c[d>>2]|0)+40>>2]|0)){c[l>>2]=-4;break}s=f;c[s>>2]=0;c[s+4>>2]=0;while(1){a=f;b=c[a+4>>2]|0;s=(c[d>>2]|0)+8|0;j=c[s+4>>2]|0;if(!((b|0)<(j|0)|((b|0)==(j|0)?(c[a>>2]|0)>>>0<(c[s>>2]|0)>>>0:0)))break;s=i;c[s>>2]=0;c[s+4>>2]=0;s=p;c[s>>2]=0;c[s+4>>2]=0;c[k>>2]=Ba(c[k>>2]|0,i)|0;s=i;j=h;s=we(c[j>>2]|0,c[j+4>>2]|0,c[s>>2]|0,c[s+4>>2]|0)|0;j=t()|0;a=h;c[a>>2]=s;c[a+4>>2]=j;c[k>>2]=Ba(c[k>>2]|0,p)|0;a=p;j=o;a=we(c[j>>2]|0,c[j+4>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;j=t()|0;s=o;c[s>>2]=a;c[s+4>>2]=j;s=h;j=c[s+4>>2]|0;a=(c[(c[d>>2]|0)+40>>2]|0)+(c[f>>2]<<4)|0;c[a>>2]=c[s>>2];c[a+4>>2]=j;a=o;j=q;j=Ce(c[a>>2]|0,c[a+4>>2]|0,c[j>>2]|0,c[j+4>>2]|0)|0;a=t()|0;s=(c[d>>2]|0)+16|0;s=Ae(j|0,a|0,c[s>>2]|0,c[s+4>>2]|0)|0;a=t()|0;j=(c[(c[d>>2]|0)+40>>2]|0)+(c[f>>2]<<4)+8|0;c[j>>2]=s;c[j+4>>2]=a;j=f;j=we(c[j>>2]|0,c[j+4>>2]|0,1,0)|0;a=t()|0;s=f;c[s>>2]=j;c[s+4>>2]=a}c[l>>2]=Ta(c[(c[n>>2]|0)+112>>2]|0,c[d>>2]|0,c[c[d>>2]>>2]|0)|0}while(0);if((c[l>>2]|0)<0)Id(c[d>>2]|0);c[m>>2]=c[l>>2];s=c[m>>2]|0;K=r;return s|0}c[m>>2]=-13;s=c[m>>2]|0;K=r;return s|0}function za(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=K;K=K+16|0;g=h+8|0;e=h+4|0;f=h;c[e>>2]=a;c[f>>2]=b;if((c[e>>2]|0)==0|(c[f>>2]|0)==0){c[g>>2]=0;g=c[g>>2]|0;K=h;return g|0}else{c[c[f>>2]>>2]=d[c[e>>2]>>0]|0|(d[(c[e>>2]|0)+1>>0]|0)<<8|(d[(c[e>>2]|0)+2>>0]|0)<<16|(d[(c[e>>2]|0)+3>>0]|0)<<24;c[g>>2]=(c[e>>2]|0)+4;g=c[g>>2]|0;K=h;return g|0}return 0}function Aa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=K;K=K+32|0;h=i+16|0;d=i+12|0;f=i+8|0;g=i+4|0;e=i;c[d>>2]=a;c[f>>2]=b;c[g>>2]=-1;c[e>>2]=-1;if((c[d>>2]|0)==0|(c[f>>2]|0)==0){c[h>>2]=0;h=c[h>>2]|0;K=i;return h|0}else{c[d>>2]=Ca(c[d>>2]|0,g)|0;c[d>>2]=za(c[d>>2]|0,e)|0;e=c[e>>2]|0;e=we(c[g>>2]|0,0,0,e|0)|0;b=t()|0;g=c[f>>2]|0;c[g>>2]=e;c[g+4>>2]=b;c[h>>2]=c[d>>2];h=c[h>>2]|0;K=i;return h|0}return 0}function Ba(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=K;K=K+32|0;g=i+16|0;f=i+12|0;h=i+8|0;e=i;c[g>>2]=a;c[f>>2]=b;c[h>>2]=0;a=e;c[a>>2]=0;c[a+4>>2]=0;a=c[f>>2]|0;c[a>>2]=0;c[a+4>>2]=0;do{j=e;c[j>>2]=d[c[g>>2]>>0];c[j+4>>2]=0;j=Fe(c[e>>2]&127|0,0,c[h>>2]|0)|0;b=t()|0;a=c[f>>2]|0;k=a;b=c[k+4>>2]|b;c[a>>2]=c[k>>2]|j;c[a+4>>2]=b;c[h>>2]=(c[h>>2]|0)+7;c[g>>2]=(c[g>>2]|0)+1}while(0?1:(c[e>>2]&128|0)!=128);K=i;return c[g>>2]|0}function Ca(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=K;K=K+16|0;g=h+8|0;e=h+4|0;f=h;c[e>>2]=a;c[f>>2]=b;if((c[e>>2]|0)==0|(c[f>>2]|0)==0){c[g>>2]=0;g=c[g>>2]|0;K=h;return g|0}else{c[c[f>>2]>>2]=d[c[e>>2]>>0]|0|(d[(c[e>>2]|0)+1>>0]|0)<<8|(d[(c[e>>2]|0)+2>>0]|0)<<16|(d[(c[e>>2]|0)+3>>0]|0)<<24;c[g>>2]=(c[e>>2]|0)+4;g=c[g>>2]|0;K=h;return g|0}return 0}function Da(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,i=0;i=K;K=K+16|0;h=i+8|0;f=i+4|0;g=i;c[f>>2]=a;c[g>>2]=e;if((c[f>>2]|0)==0|(c[g>>2]|0)==0){c[h>>2]=0;h=c[h>>2]|0;K=i;return h|0}else{b[c[g>>2]>>1]=d[c[f>>2]>>0]|0|(d[(c[f>>2]|0)+1>>0]|0)<<8;c[h>>2]=(c[f>>2]|0)+2;h=c[h>>2]|0;K=i;return h|0}return 0}function Ea(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=K;K=K+16|0;f=i+12|0;g=i+8|0;h=i+4|0;e=i;c[g>>2]=a;c[h>>2]=d;c[e>>2]=-1;d=Fa(c[g>>2]|0,c[h>>2]|0)|0;c[e>>2]=d;if((d|0)<0){c[f>>2]=c[e>>2];h=c[f>>2]|0;K=i;return h|0}else{b[c[h>>2]>>1]=b[c[g>>2]>>1]|0;c[f>>2]=0;h=c[f>>2]|0;K=i;return h|0}return 0}function Fa(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;h=K;K=K+16|0;f=h+8|0;g=h+4|0;e=h;c[g>>2]=a;c[e>>2]=d;do if(c[g>>2]|0){if(!(b[(c[g>>2]|0)+118>>1]|0)){c[f>>2]=-5;break}if(!(c[e>>2]|0)){c[f>>2]=-16;break}else{c[f>>2]=0;break}}else c[f>>2]=-2;while(0);K=h;return c[f>>2]|0}function Ga(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=K;K=K+16|0;f=i+12|0;g=i+8|0;h=i+4|0;e=i;c[g>>2]=a;c[h>>2]=d;c[e>>2]=-1;d=Fa(c[g>>2]|0,c[h>>2]|0)|0;c[e>>2]=d;if((d|0)<0){c[f>>2]=c[e>>2];h=c[f>>2]|0;K=i;return h|0}else{b[c[h>>2]>>1]=b[(c[g>>2]|0)+2>>1]|0;c[f>>2]=0;h=c[f>>2]|0;K=i;return h|0}return 0}function Ha(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0;j=K;K=K+32|0;g=j+16|0;h=j+12|0;d=j+8|0;f=j+4|0;i=j;c[h>>2]=a;c[d>>2]=b;c[f>>2]=-1;c[i>>2]=0;a=Fa(c[h>>2]|0,c[d>>2]|0)|0;c[f>>2]=a;if((a|0)<0){c[g>>2]=c[f>>2];i=c[g>>2]|0;K=j;return i|0}c[i>>2]=(e[c[h>>2]>>1]|0)<<16|(e[(c[h>>2]|0)+2>>1]|0);if((c[i>>2]|0)>>>0<196610){c[g>>2]=-1;i=c[g>>2]|0;K=j;return i|0}else{a=(c[h>>2]|0)+96|0;h=c[a+4>>2]|0;i=c[d>>2]|0;c[i>>2]=c[a>>2];c[i+4>>2]=h;c[g>>2]=0;i=c[g>>2]|0;K=j;return i|0}return 0}function Ia(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=K;K=K+64|0;t=u+48|0;p=u+44|0;o=u+40|0;m=u+36|0;q=u+8|0;s=u+32|0;k=u+28|0;n=u+24|0;j=u+20|0;r=u;l=u+16|0;c[p>>2]=a;c[o>>2]=d;c[m>>2]=f;a=q;c[a>>2]=g;c[a+4>>2]=h;c[s>>2]=i;c[k>>2]=0;c[n>>2]=-1;c[j>>2]=0;a=r;c[a>>2]=-1;c[a+4>>2]=2147483647;a=Fa(c[p>>2]|0,c[s>>2]|0)|0;c[n>>2]=a;if((a|0)<0){c[t>>2]=c[n>>2];t=c[t>>2]|0;K=u;return t|0}if(!(b[(c[p>>2]|0)+116>>1]|0)){c[t>>2]=-19;t=c[t>>2]|0;K=u;return t|0}if((c[o>>2]|0)==0|(c[m>>2]|0)==0){c[t>>2]=-1;t=c[t>>2]|0;K=u;return t|0}do if((e[c[p>>2]>>1]|0)==3){d=(c[p>>2]|0)+80|0;i=c[d+4>>2]|0;a=q;n=c[a+4>>2]|0;if(!((i|0)<(n|0)|((i|0)==(n|0)?(c[d>>2]|0)>>>0<(c[a>>2]|0)>>>0:0))?(d=q,i=c[d+4>>2]|0,a=(c[p>>2]|0)+64|0,n=c[a+4>>2]|0,!((i|0)<(n|0)|((i|0)==(n|0)?(c[d>>2]|0)>>>0<(c[a>>2]|0)>>>0:0))):0)break;c[t>>2]=-17;t=c[t>>2]|0;K=u;return t|0}while(0);c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[m>>2]|0)>>>0){g=23;break}c[l>>2]=0;a=Ua(c[(c[p>>2]|0)+112>>2]|0,c[(c[o>>2]|0)+(c[j>>2]<<2)>>2]|0)|0;c[k>>2]=a;if(!a){g=14;break}if((e[c[p>>2]>>1]|0)==4){d=(c[k>>2]|0)+32|0;i=c[d+4>>2]|0;a=q;n=c[a+4>>2]|0;if((i|0)<(n|0)|((i|0)==(n|0)?(c[d>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){g=18;break}d=q;i=c[d+4>>2]|0;a=(c[k>>2]|0)+24|0;n=c[a+4>>2]|0;if((i|0)<(n|0)|((i|0)==(n|0)?(c[d>>2]|0)>>>0<(c[a>>2]|0)>>>0:0)){g=18;break}}a=q;c[l>>2]=Ja(c[k>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;if(c[l>>2]|0?(d=c[l>>2]|0,i=c[d+4>>2]|0,a=r,n=c[a+4>>2]|0,!((i|0)>(n|0)|((i|0)==(n|0)?(c[d>>2]|0)>>>0>(c[a>>2]|0)>>>0:0))):0){n=c[l>>2]|0;d=c[n+4>>2]|0;a=r;c[a>>2]=c[n>>2];c[a+4>>2]=d}c[j>>2]=(c[j>>2]|0)+1}if((g|0)==14){c[t>>2]=-8;t=c[t>>2]|0;K=u;return t|0}else if((g|0)==18){c[t>>2]=-17;t=c[t>>2]|0;K=u;return t|0}else if((g|0)==23){q=r;if((c[q>>2]|0)==-1?(c[q+4>>2]|0)==2147483647:0){c[t>>2]=-1;t=c[t>>2]|0;K=u;return t|0}else{q=r;r=c[q+4>>2]|0;s=c[s>>2]|0;c[s>>2]=c[q>>2];c[s+4>>2]=r;c[t>>2]=0;t=c[t>>2]|0;K=u;return t|0}}return 0}function Ja(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=K;K=K+48|0;h=l+36|0;f=l+32|0;j=l+24|0;i=l+16|0;e=l+8|0;g=l;c[f>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;a=i;c[a>>2]=0;c[a+4>>2]=0;a=e;c[a>>2]=0;c[a+4>>2]=0;if(!(c[f>>2]|0)){c[h>>2]=0;k=c[h>>2]|0;K=l;return k|0}b=(c[f>>2]|0)+8|0;b=xe(c[b>>2]|0,c[b+4>>2]|0,1,0)|0;d=t()|0;a=e;c[a>>2]=b;c[a+4>>2]=d;while(1){d=e;m=c[d+4>>2]|0;a=i;b=c[a+4>>2]|0;if(!((m|0)>(b|0)|((m|0)==(b|0)?(c[d>>2]|0)>>>0>(c[a>>2]|0)>>>0:0)))break;m=i;d=e;d=we(c[m>>2]|0,c[m+4>>2]|0,c[d>>2]|0,c[d+4>>2]|0)|0;d=we(d|0,t()|0,1,0)|0;d=Ee(d|0,t()|0,1)|0;m=t()|0;a=g;c[a>>2]=d;c[a+4>>2]=m;a=(c[(c[f>>2]|0)+40>>2]|0)+(c[g>>2]<<4)+8|0;m=j;if((c[a>>2]|0)==(c[m>>2]|0)?(c[a+4>>2]|0)==(c[m+4>>2]|0):0){k=6;break}a=(c[(c[f>>2]|0)+40>>2]|0)+(c[g>>2]<<4)+8|0;o=c[a+4>>2]|0;m=j;n=c[m+4>>2]|0;d=g;b=c[d>>2]|0;d=c[d+4>>2]|0;if((o|0)<(n|0)|((o|0)==(n|0)?(c[a>>2]|0)>>>0<(c[m>>2]|0)>>>0:0)){o=i;c[o>>2]=b;c[o+4>>2]=d}else{m=xe(b|0,d|0,1,0)|0;n=t()|0;o=e;c[o>>2]=m;c[o+4>>2]=n}}if((k|0)==6){m=g;n=c[m+4>>2]|0;o=i;c[o>>2]=c[m>>2];c[o+4>>2]=n}c[h>>2]=(c[(c[f>>2]|0)+40>>2]|0)+(c[i>>2]<<4);o=c[h>>2]|0;K=l;return o|0}function Ka(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=K;K=K+32|0;i=l+20|0;k=l+16|0;j=l+12|0;f=l+8|0;h=l+4|0;g=l;c[k>>2]=a;c[j>>2]=b;c[f>>2]=d;c[h>>2]=-1;a=Fa(c[k>>2]|0,c[f>>2]|0)|0;c[h>>2]=a;if((a|0)<0){c[i>>2]=c[h>>2];k=c[i>>2]|0;K=l;return k|0}do if((e[c[k>>2]>>1]|0|0)<4){j=(c[k>>2]|0)+64|0;a=c[j+4>>2]|0;k=c[f>>2]|0;c[k>>2]=c[j>>2];c[k+4>>2]=a}else{c[g>>2]=0;k=Ua(c[(c[k>>2]|0)+112>>2]|0,c[j>>2]|0)|0;c[g>>2]=k;if(k|0){j=(c[g>>2]|0)+24|0;a=c[j+4>>2]|0;k=c[f>>2]|0;c[k>>2]=c[j>>2];c[k+4>>2]=a;break}c[i>>2]=-8;k=c[i>>2]|0;K=l;return k|0}while(0);c[i>>2]=0;k=c[i>>2]|0;K=l;return k|0}function La(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=K;K=K+32|0;i=l+20|0;k=l+16|0;j=l+12|0;f=l+8|0;h=l+4|0;g=l;c[k>>2]=a;c[j>>2]=b;c[f>>2]=d;c[h>>2]=-1;a=Fa(c[k>>2]|0,c[f>>2]|0)|0;c[h>>2]=a;if((a|0)<0){c[i>>2]=c[h>>2];k=c[i>>2]|0;K=l;return k|0}do if((e[c[k>>2]>>1]|0|0)<4){j=(c[k>>2]|0)+72|0;a=c[j+4>>2]|0;k=c[f>>2]|0;c[k>>2]=c[j>>2];c[k+4>>2]=a}else{c[g>>2]=0;k=Ua(c[(c[k>>2]|0)+112>>2]|0,c[j>>2]|0)|0;c[g>>2]=k;if(k|0){j=(c[g>>2]|0)+16|0;a=c[j+4>>2]|0;k=c[f>>2]|0;c[k>>2]=c[j>>2];c[k+4>>2]=a;break}c[i>>2]=-8;k=c[i>>2]|0;K=l;return k|0}while(0);c[i>>2]=0;k=c[i>>2]|0;K=l;return k|0}function Ma(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=K;K=K+32|0;i=l+20|0;k=l+16|0;j=l+12|0;g=l+8|0;h=l+4|0;f=l;c[k>>2]=a;c[j>>2]=b;c[g>>2]=d;c[h>>2]=-1;a=Fa(c[k>>2]|0,c[g>>2]|0)|0;c[h>>2]=a;if((a|0)<0){c[i>>2]=c[h>>2];k=c[i>>2]|0;K=l;return k|0}do if((e[c[k>>2]>>1]|0|0)<4){j=(c[k>>2]|0)+80|0;a=c[j+4>>2]|0;k=c[g>>2]|0;c[k>>2]=c[j>>2];c[k+4>>2]=a}else{c[f>>2]=0;k=Ua(c[(c[k>>2]|0)+112>>2]|0,c[j>>2]|0)|0;c[f>>2]=k;if(k|0){j=(c[f>>2]|0)+32|0;a=c[j+4>>2]|0;k=c[g>>2]|0;c[k>>2]=c[j>>2];c[k+4>>2]=a;break}c[i>>2]=-8;k=c[i>>2]|0;K=l;return k|0}while(0);c[i>>2]=0;k=c[i>>2]|0;K=l;return k|0}function Na(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=K;K=K+32|0;i=l+20|0;k=l+16|0;j=l+12|0;g=l+8|0;h=l+4|0;f=l;c[k>>2]=a;c[j>>2]=b;c[g>>2]=d;c[h>>2]=-1;a=Fa(c[k>>2]|0,c[g>>2]|0)|0;c[h>>2]=a;if((a|0)<0){c[i>>2]=c[h>>2];k=c[i>>2]|0;K=l;return k|0}do if((e[c[k>>2]>>1]|0|0)<4){j=(c[k>>2]|0)+88|0;a=c[j+4>>2]|0;k=c[g>>2]|0;c[k>>2]=c[j>>2];c[k+4>>2]=a}else{c[f>>2]=0;k=Ua(c[(c[k>>2]|0)+112>>2]|0,c[j>>2]|0)|0;c[f>>2]=k;if(k|0){j=(c[f>>2]|0)+16|0;a=c[j+4>>2]|0;k=c[g>>2]|0;c[k>>2]=c[j>>2];c[k+4>>2]=a;break}c[i>>2]=-8;k=c[i>>2]|0;K=l;return k|0}while(0);c[i>>2]=0;k=c[i>>2]|0;K=l;return k|0}function Oa(){var a=0,b=0,d=0;d=K;K=K+16|0;a=d+4|0;b=d;c[b>>2]=Jd(1,8)|0;if(!(c[b>>2]|0))c[a>>2]=0;else c[a>>2]=c[b>>2];K=d;return c[a>>2]|0}function Pa(a){a=a|0;var b=0,d=0,e=0;e=K;K=K+16|0;d=e+4|0;b=e;c[d>>2]=a;c[b>>2]=0;if(!(c[d>>2]|0)){K=e;return}if(c[(c[d>>2]|0)+4>>2]|0){c[b>>2]=0;while(1){a=c[(c[d>>2]|0)+4>>2]|0;if((c[b>>2]|0)>>>0>=(c[c[d>>2]>>2]|0)>>>0)break;if(c[a+((c[b>>2]|0)*12|0)+4>>2]|0){if(c[(c[(c[(c[d>>2]|0)+4>>2]|0)+((c[b>>2]|0)*12|0)+4>>2]|0)+48>>2]|0)Id(c[(c[(c[(c[d>>2]|0)+4>>2]|0)+((c[b>>2]|0)*12|0)+4>>2]|0)+48>>2]|0);Id(c[(c[(c[d>>2]|0)+4>>2]|0)+((c[b>>2]|0)*12|0)+4>>2]|0)}if(c[(c[(c[d>>2]|0)+4>>2]|0)+((c[b>>2]|0)*12|0)+8>>2]|0){if(c[(c[(c[(c[d>>2]|0)+4>>2]|0)+((c[b>>2]|0)*12|0)+8>>2]|0)+40>>2]|0)Id(c[(c[(c[(c[d>>2]|0)+4>>2]|0)+((c[b>>2]|0)*12|0)+8>>2]|0)+40>>2]|0);Id(c[(c[(c[d>>2]|0)+4>>2]|0)+((c[b>>2]|0)*12|0)+8>>2]|0)}c[b>>2]=(c[b>>2]|0)+1}Id(a)}Id(c[d>>2]|0);K=e;return}function Qa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=K;K=K+16|0;f=h+12|0;g=h+8|0;d=h+4|0;e=h;c[g>>2]=a;c[d>>2]=b;c[e>>2]=0;c[e>>2]=0;while(1){if((c[e>>2]|0)>>>0>=(c[c[g>>2]>>2]|0)>>>0){b=6;break}if((c[(c[(c[g>>2]|0)+4>>2]|0)+((c[e>>2]|0)*12|0)>>2]|0)==(c[d>>2]|0)){b=4;break}c[e>>2]=(c[e>>2]|0)+1}if((b|0)==4){c[f>>2]=(c[(c[g>>2]|0)+4>>2]|0)+((c[e>>2]|0)*12|0);g=c[f>>2]|0;K=h;return g|0}else if((b|0)==6){c[f>>2]=0;g=c[f>>2]|0;K=h;return g|0}return 0}function Ra(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=K;K=K+32|0;f=j+16|0;i=j+12|0;e=j+8|0;g=j+4|0;h=j;c[i>>2]=a;c[e>>2]=b;c[g>>2]=d;c[h>>2]=0;do if(c[i>>2]|0){if(!(c[e>>2]|0)){c[f>>2]=-1;break}c[h>>2]=Sa(c[i>>2]|0,c[g>>2]|0)|0;if(!(c[h>>2]|0)){c[f>>2]=-4;break}if(c[(c[h>>2]|0)+4>>2]|0){c[f>>2]=-1;break}else{c[(c[h>>2]|0)+4>>2]=c[e>>2];c[f>>2]=1;break}}else c[f>>2]=-1;while(0);K=j;return c[f>>2]|0}function Sa(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=K;K=K+16|0;d=h+12|0;g=h+8|0;e=h+4|0;f=h;c[g>>2]=a;c[e>>2]=b;c[f>>2]=0;a=Qa(c[g>>2]|0,c[e>>2]|0)|0;c[f>>2]=a;do if(!a){c[f>>2]=Kd(c[(c[g>>2]|0)+4>>2]|0,((c[c[g>>2]>>2]|0)+1|0)*12|0)|0;if(c[f>>2]|0){c[(c[g>>2]|0)+4>>2]=c[f>>2];a=c[g>>2]|0;c[a>>2]=(c[a>>2]|0)+1;c[f>>2]=(c[(c[g>>2]|0)+4>>2]|0)+(((c[c[g>>2]>>2]|0)-1|0)*12|0);c[c[f>>2]>>2]=c[e>>2];c[(c[f>>2]|0)+4>>2]=0;c[(c[f>>2]|0)+8>>2]=0;break}c[d>>2]=0;g=c[d>>2]|0;K=h;return g|0}while(0);c[d>>2]=c[f>>2];g=c[d>>2]|0;K=h;return g|0}function Ta(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=K;K=K+32|0;f=j+16|0;i=j+12|0;e=j+8|0;g=j+4|0;h=j;c[i>>2]=a;c[e>>2]=b;c[g>>2]=d;c[h>>2]=0;do if(c[i>>2]|0){if(!(c[e>>2]|0)){c[f>>2]=-1;break}c[h>>2]=Sa(c[i>>2]|0,c[g>>2]|0)|0;if(!(c[h>>2]|0)){c[f>>2]=-4;break}if(c[(c[h>>2]|0)+8>>2]|0){c[f>>2]=-1;break}else{c[(c[h>>2]|0)+8>>2]=c[e>>2];c[f>>2]=1;break}}else c[f>>2]=-1;while(0);K=j;return c[f>>2]|0}function Ua(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=K;K=K+16|0;g=h+12|0;f=h+8|0;d=h+4|0;e=h;c[f>>2]=a;c[d>>2]=b;c[e>>2]=0;if(!(c[f>>2]|0)){c[g>>2]=0;g=c[g>>2]|0;K=h;return g|0}c[e>>2]=Qa(c[f>>2]|0,c[d>>2]|0)|0;if(!(c[e>>2]|0))b=0;else b=c[(c[e>>2]|0)+8>>2]|0;c[g>>2]=b;g=c[g>>2]|0;K=h;return g|0}function Va(a){a=a|0;var b=0,d=0,e=0,f=0;f=K;K=K+16|0;e=f+8|0;b=f+4|0;d=f;c[b>>2]=a;if(Wa(c[b>>2]|0)|0){c[e>>2]=0;e=c[e>>2]|0;K=f;return e|0}c[d>>2]=Hd(584)|0;if(!(c[d>>2]|0)){c[e>>2]=0;e=c[e>>2]|0;K=f;return e|0}c[c[d>>2]>>2]=c[b>>2];c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8>>2]=0;b=(c[d>>2]|0)+64|0;c[b>>2]=0;c[b+4>>2]=0;b=(c[d>>2]|0)+72|0;c[b>>2]=0;c[b+4>>2]=0;c[(c[d>>2]|0)+80>>2]=1024;c[(c[d>>2]|0)+84>>2]=0;b=Kc()|0;c[(c[d>>2]|0)+88>>2]=b;do if(c[(c[d>>2]|0)+88>>2]|0){c[(c[d>>2]|0)+92>>2]=0;c[(c[d>>2]|0)+96>>2]=0;c[(c[d>>2]|0)+100>>2]=0;c[(c[d>>2]|0)+104>>2]=0;c[(c[d>>2]|0)+108>>2]=0;c[(c[d>>2]|0)+112>>2]=0;a=Xc()|0;c[(c[d>>2]|0)+576>>2]=a;a=c[d>>2]|0;if(!(c[(c[d>>2]|0)+576>>2]|0)){Id(c[a+88>>2]|0);break}Bb(a)|0;c[e>>2]=c[d>>2];e=c[e>>2]|0;K=f;return e|0}while(0);Id(c[d>>2]|0);c[e>>2]=0;e=c[e>>2]|0;K=f;return e|0}function Wa(a){a=a|0;var b=0,d=0,e=0;d=K;K=K+16|0;b=d+4|0;e=d;c[e>>2]=a;if(c[e>>2]&1|0)c[b>>2]=-11;else c[b>>2]=0;K=d;return c[b>>2]|0}function Xa(a){a=a|0;var b=0,d=0,e=0;e=K;K=K+16|0;d=e+4|0;b=e;c[b>>2]=a;if(!(c[b>>2]|0)){c[d>>2]=-2;d=c[d>>2]|0;K=e;return d|0}Cb(c[b>>2]|0)|0;Qc(c[(c[b>>2]|0)+88>>2]|0,3)|0;Lc(c[(c[b>>2]|0)+88>>2]|0);ad(c[(c[b>>2]|0)+576>>2]|0,4)|0;Yc(c[(c[b>>2]|0)+576>>2]|0);if(c[(c[b>>2]|0)+104>>2]|0)Id(c[(c[b>>2]|0)+100>>2]|0);if(c[(c[b>>2]|0)+4>>2]|0?(de(c[(c[b>>2]|0)+4>>2]|0)|0)==-1:0){c[d>>2]=-10;d=c[d>>2]|0;K=e;return d|0}if(c[(c[b>>2]|0)+8>>2]|0){wb(c[b>>2]|0)|0;Id(c[(c[b>>2]|0)+8>>2]|0)}Id(c[b>>2]|0);c[d>>2]=0;d=c[d>>2]|0;K=e;return d|0}function Ya(a){a=a|0;var b=0,d=0,e=0;d=K;K=K+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=c[e>>2];jb(c[b>>2]|0)|0;if((c[(c[b>>2]|0)+336>>2]|0)!=-1)wd(c[b>>2]|0)|0;if(c[(c[b>>2]|0)+456>>2]|0)Id(c[(c[b>>2]|0)+452>>2]|0);if(!(c[(c[b>>2]|0)+504>>2]|0)){e=c[b>>2]|0;Id(e);K=d;return 0}Id(c[(c[b>>2]|0)+504>>2]|0);e=c[b>>2]|0;Id(e);K=d;return 0}function Za(a){a=a|0;var b=0,d=0,e=0,f=0;f=K;K=K+16|0;e=f;b=f+12|0;d=f+8|0;c[b>>2]=a;do if(c[b>>2]|0)if(c[c[b>>2]>>2]&1|0){d=e;c[d>>2]=-3;c[d+4>>2]=-1;break}else{c[d>>2]=(c[b>>2]|0)+120;a=(c[d>>2]|0)+416|0;b=c[a+4>>2]|0;d=e;c[d>>2]=c[a>>2];c[d+4>>2]=b;break}else{d=e;c[d>>2]=-2;c[d+4>>2]=-1}while(0);d=e;e=c[d>>2]|0;s(c[d+4>>2]|0);K=f;return e|0}function _a(a){a=a|0;var b=0,d=0,e=0,f=0;e=K;K=K+16|0;d=e;b=e+8|0;c[b>>2]=a;do if(c[b>>2]|0)if(c[c[b>>2]>>2]&1|0){b=d;c[b>>2]=-3;c[b+4>>2]=-1;break}else{f=(c[b>>2]|0)+120+424|0;a=c[f+4>>2]|0;b=d;c[b>>2]=c[f>>2];c[b+4>>2]=a;break}else{f=d;c[f>>2]=-2;c[f+4>>2]=-1}while(0);f=c[d>>2]|0;s(c[d+4>>2]|0);K=e;return f|0}function $a(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=K;K=K+16|0;e=g+8|0;d=g+4|0;f=g;c[d>>2]=a;c[f>>2]=b;if((c[f>>2]|0)==-1){c[e>>2]=0;f=c[e>>2]|0;K=g;return f|0}else{c[e>>2]=Pc(c[(c[d>>2]|0)+88>>2]|0,1,c[f>>2]|0)|0;f=c[e>>2]|0;K=g;return f|0}return 0}function ab(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=K;K=K+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>2]=b;c[e>>2]=c[g>>2];K=f;return (c[(c[e>>2]|0)+336>>2]|0)==(c[d>>2]|0)|0}function bb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=K;K=K+16|0;f=h+12|0;e=h+8|0;d=h+4|0;g=h;c[e>>2]=a;c[d>>2]=b;c[g>>2]=Hd(512)|0;if(!(c[g>>2]|0)){c[f>>2]=0;g=c[f>>2]|0;K=h;return g|0}vd(c[g>>2]|0,c[d>>2]|0)|0;d=(hb(c[g>>2]|0)|0)==-1;a=c[g>>2]|0;if(d){Id(a);c[f>>2]=0;g=c[f>>2]|0;K=h;return g|0}else{c[a+360>>2]=15;c[(c[g>>2]|0)+364>>2]=3;c[(c[g>>2]|0)+368>>2]=0;d=(c[g>>2]|0)+376|0;c[d>>2]=1;c[d+4>>2]=0;d=(c[g>>2]|0)+384|0;c[d>>2]=1;c[d+4>>2]=0;d=(c[g>>2]|0)+392|0;c[d>>2]=0;c[d+4>>2]=0;d=(c[g>>2]|0)+400|0;c[d>>2]=0;c[d+4>>2]=0;c[(c[g>>2]|0)+408>>2]=0;c[(c[g>>2]|0)+420>>2]=0;c[(c[g>>2]|0)+424>>2]=1;c[(c[g>>2]|0)+428>>2]=0;d=(c[g>>2]|0)+432|0;c[d>>2]=0;c[d+4>>2]=0;d=(c[g>>2]|0)+440|0;c[d>>2]=-1;c[d+4>>2]=-1;c[(c[g>>2]|0)+448>>2]=0;c[(c[g>>2]|0)+452>>2]=0;c[(c[g>>2]|0)+456>>2]=0;c[(c[g>>2]|0)+460>>2]=0;c[(c[g>>2]|0)+464>>2]=0;c[(c[g>>2]|0)+468>>2]=0;c[(c[g>>2]|0)+472>>2]=0;c[(c[g>>2]|0)+476>>2]=0;c[(c[g>>2]|0)+480>>2]=0;c[(c[g>>2]|0)+504>>2]=0;Rc(c[(c[e>>2]|0)+88>>2]|0,c[g>>2]|0)|0;c[f>>2]=c[g>>2];g=c[f>>2]|0;K=h;return g|0}return 0}function cb(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=K;K=K+32|0;j=n+24|0;i=n+20|0;k=n+16|0;h=n+12|0;m=n+8|0;g=n+4|0;l=n;c[i>>2]=a;c[k>>2]=b;c[h>>2]=d;c[m>>2]=e;c[g>>2]=f;if(!(c[i>>2]|0)){c[j>>2]=-2;m=c[j>>2]|0;K=n;return m|0}f=c[i>>2]|0;if((c[k>>2]|0)==-1){if(c[f+104>>2]|0?c[(c[i>>2]|0)+100>>2]|0:0)Id(c[(c[i>>2]|0)+100>>2]|0);c[(c[i>>2]|0)+96>>2]=c[h>>2];c[(c[i>>2]|0)+100>>2]=c[m>>2];c[(c[i>>2]|0)+104>>2]=c[g>>2]}else{c[l>>2]=$a(f,c[k>>2]|0)|0;if(!(c[l>>2]|0)){c[j>>2]=-20;m=c[j>>2]|0;K=n;return m|0}if(c[(c[l>>2]|0)+456>>2]|0?c[(c[l>>2]|0)+452>>2]|0:0)Id(c[(c[l>>2]|0)+452>>2]|0);c[(c[l>>2]|0)+448>>2]=c[h>>2];c[(c[l>>2]|0)+452>>2]=c[m>>2];c[(c[l>>2]|0)+456>>2]=c[g>>2]}c[j>>2]=0;m=c[j>>2]|0;K=n;return m|0}function db(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=K;K=K+16|0;e=h+12|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;do if(!(c[(c[d>>2]|0)+96>>2]|0)){c[g>>2]=$a(c[d>>2]|0,c[f>>2]|0)|0;if(!(c[g>>2]|0)){c[e>>2]=-20;break}if(c[(c[g>>2]|0)+448>>2]|0){c[e>>2]=1;break}else{c[e>>2]=0;break}}else c[e>>2]=1;while(0);K=h;return c[e>>2]|0}function eb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=K;K=K+32|0;h=k+8|0;g=k+24|0;i=k+20|0;f=k;j=k+16|0;c[g>>2]=a;c[i>>2]=b;b=f;c[b>>2]=d;c[b+4>>2]=e;do if(!(c[g>>2]|0)){j=h;c[j>>2]=-2;c[j+4>>2]=-1}else{b=f;if((c[b>>2]|0)==-1?(c[b+4>>2]|0)==-1:0){j=h;c[j>>2]=-1;c[j+4>>2]=-1;break}d=c[g>>2]|0;if((c[i>>2]|0)==-1){if(c[d+96>>2]|0){j=f;g=R[c[(c[g>>2]|0)+96>>2]&31](c[g>>2]|0,c[i>>2]|0,c[j>>2]|0,c[j+4>>2]|0,c[(c[g>>2]|0)+100>>2]|0)|0;i=t()|0;j=h;c[j>>2]=g;c[j+4>>2]=i;break}}else{c[j>>2]=$a(d,c[i>>2]|0)|0;if(!(c[j>>2]|0)){j=h;c[j>>2]=-1;c[j+4>>2]=-1;break}if(c[(c[j>>2]|0)+448>>2]|0){g=R[c[(c[j>>2]|0)+448>>2]&31](c[g>>2]|0,c[i>>2]|0,c[f>>2]|0,c[f+4>>2]|0,c[(c[j>>2]|0)+452>>2]|0)|0;i=t()|0;j=h;c[j>>2]=g;c[j+4>>2]=i;break}if(c[(c[g>>2]|0)+96>>2]|0){j=f;g=R[c[(c[g>>2]|0)+96>>2]&31](c[g>>2]|0,c[i>>2]|0,c[j>>2]|0,c[j+4>>2]|0,c[(c[g>>2]|0)+100>>2]|0)|0;i=t()|0;j=h;c[j>>2]=g;c[j+4>>2]=i;break}}j=h;c[j>>2]=-1;c[j+4>>2]=-1}while(0);i=h;j=c[i>>2]|0;s(c[i+4>>2]|0);K=k;return j|0}function fb(a){a=a|0;var b=0,d=0,e=0;e=K;K=K+16|0;d=e+4|0;b=e;c[b>>2]=a;switch(c[b>>2]|0){case 0:{c[d>>2]=0;break}case 1:{c[d>>2]=-14;break}case -1:{c[d>>2]=-15;break}default:c[d>>2]=c[b>>2]}K=e;return c[d>>2]|0}function gb(b){b=b|0;var d=0,e=0,f=0,g=0;g=K;K=K+16|0;f=g+8|0;e=g+4|0;d=g;c[e>>2]=b;if(!(c[e>>2]|0)){c[f>>2]=0;f=c[f>>2]|0;K=g;return f|0}c[d>>2]=c[e>>2];while(1){if(!(a[c[d>>2]>>0]|0)){d=10;break}if((a[c[d>>2]>>0]|0)<32){d=8;break}if((a[c[d>>2]>>0]|0)>125){d=8;break}if((a[c[d>>2]>>0]|0)==61){d=8;break}c[d>>2]=(c[d>>2]|0)+1}if((d|0)==8){c[f>>2]=0;f=c[f>>2]|0;K=g;return f|0}else if((d|0)==10){c[f>>2]=1;f=c[f>>2]|0;K=g;return f|0}return 0}function hb(a){a=a|0;var b=0,d=0,e=0;e=K;K=K+16|0;b=e+4|0;d=e;c[d>>2]=a;c[(c[d>>2]|0)+412>>2]=0;a=Kc()|0;c[(c[d>>2]|0)+416>>2]=a;if(!(c[(c[d>>2]|0)+416>>2]|0)){c[b>>2]=-1;d=c[b>>2]|0;K=e;return d|0}else{Vc(c[(c[d>>2]|0)+416>>2]|0,4,0)|0;c[b>>2]=0;d=c[b>>2]|0;K=e;return d|0}return 0}function ib(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=K;K=K+16|0;g=h+12|0;e=h+8|0;f=h+4|0;c[e>>2]=a;c[f>>2]=b;c[h>>2]=d;do if((c[e>>2]|0)!=(c[f>>2]|0)){if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){c[g>>2]=0;break}if(pe(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0)|0){c[g>>2]=0;break}if(Vd(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0){c[g>>2]=0;break}else{c[g>>2]=1;break}}else c[g>>2]=1;while(0);K=h;return c[g>>2]|0}function jb(a){a=a|0;var b=0,d=0;d=K;K=K+16|0;b=d;c[b>>2]=a;Qc(c[(c[b>>2]|0)+416>>2]|0,1)|0;Lc(c[(c[b>>2]|0)+416>>2]|0);c[(c[b>>2]|0)+416>>2]=0;if(!(c[(c[b>>2]|0)+412>>2]|0)){b=c[b>>2]|0;b=b+412|0;c[b>>2]=0;K=d;return 0}Id(c[(c[b>>2]|0)+412>>2]|0);b=c[b>>2]|0;b=b+412|0;c[b>>2]=0;K=d;return 0}function kb(a){a=a|0;var b=0,d=0;d=K;K=K+16|0;b=d;c[b>>2]=a;if(!(c[b>>2]|0)){K=d;return}if(c[c[b>>2]>>2]|0)Id(c[c[b>>2]>>2]|0);if(c[(c[b>>2]|0)+4>>2]|0)Id(c[(c[b>>2]|0)+4>>2]|0);Id(c[b>>2]|0);K=d;return}function lb(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=K;K=K+64|0;t=u+56|0;p=u+52|0;q=u+48|0;v=u+44|0;k=u+40|0;r=u+36|0;g=u+32|0;i=u+28|0;n=u+24|0;l=u+20|0;j=u+16|0;h=u+12|0;m=u+8|0;s=u+4|0;o=u;c[p>>2]=b;c[q>>2]=d;c[v>>2]=e;c[k>>2]=f;c[g>>2]=c[v>>2];c[o>>2]=0;if((c[k>>2]|0)<8){c[t>>2]=-1;v=c[t>>2]|0;K=u;return v|0}c[h>>2]=(c[g>>2]|0)+(c[k>>2]|0);c[j>>2]=a[(c[g>>2]|0)+3>>0]<<24&-16777216|a[(c[g>>2]|0)+2>>0]<<16&16711680|a[(c[g>>2]|0)+1>>0]<<8&65280|a[c[g>>2]>>0]&255;c[g>>2]=(c[g>>2]|0)+4;if((c[j>>2]|0)>>>0>((c[h>>2]|0)-(c[g>>2]|0)|0)>>>0){c[t>>2]=-1;v=c[t>>2]|0;K=u;return v|0}c[r>>2]=$a(c[p>>2]|0,c[q>>2]|0)|0;if(!(c[r>>2]|0)){c[t>>2]=-20;v=c[t>>2]|0;K=u;return v|0}if((c[j>>2]|0)>>>0>0){v=mb(c[g>>2]|0,c[j>>2]|0)|0;c[o>>2]=v;if(!v){c[t>>2]=-18;v=c[t>>2]|0;K=u;return v|0}v=(nb(c[p>>2]|0,c[q>>2]|0,c[o>>2]|0)|0)==-18;Id(c[o>>2]|0);if(v){c[t>>2]=-18;v=c[t>>2]|0;K=u;return v|0}}c[g>>2]=(c[g>>2]|0)+(c[j>>2]|0);if(((c[g>>2]|0)+4|0)>>>0>(c[h>>2]|0)>>>0){c[t>>2]=-1;v=c[t>>2]|0;K=u;return v|0}c[n>>2]=a[(c[g>>2]|0)+3>>0]<<24&-16777216|a[(c[g>>2]|0)+2>>0]<<16&16711680|a[(c[g>>2]|0)+1>>0]<<8&65280|a[c[g>>2]>>0]&255;c[g>>2]=(c[g>>2]|0)+4;c[i>>2]=0;while(1){if((c[i>>2]|0)>=(c[n>>2]|0)){g=34;break}if(((c[g>>2]|0)+4|0)>>>0>(c[h>>2]|0)>>>0){g=17;break}c[j>>2]=a[(c[g>>2]|0)+3>>0]<<24&-16777216|a[(c[g>>2]|0)+2>>0]<<16&16711680|a[(c[g>>2]|0)+1>>0]<<8&65280|a[c[g>>2]>>0]&255;c[g>>2]=(c[g>>2]|0)+4;if((c[j>>2]|0)>>>0>((c[h>>2]|0)-(c[g>>2]|0)|0)>>>0){g=19;break}c[l>>2]=0;c[m>>2]=c[g>>2];c[s>>2]=ob(c[g>>2]|0,61,c[j>>2]|0)|0;if(c[s>>2]|0){a[c[s>>2]>>0]=0;c[s>>2]=(c[s>>2]|0)+1;c[l>>2]=(c[g>>2]|0)+(c[j>>2]|0)-(c[s>>2]|0)}if(c[l>>2]|0){v=mb(c[s>>2]|0,c[l>>2]|0)|0;c[o>>2]=v;if(!v){g=24;break}v=(pb(c[r>>2]|0,c[m>>2]|0,c[o>>2]|0)|0)==0;Id(c[o>>2]|0);if(v){g=26;break}}else{v=mb(c[m>>2]|0,c[j>>2]|0)|0;c[o>>2]=v;if(!v){g=28;break}v=(pb(c[r>>2]|0,c[o>>2]|0,0)|0)==0;Id(c[o>>2]|0);if(v){g=30;break}}if(c[s>>2]|0)a[(c[s>>2]|0)+-1>>0]=61;c[g>>2]=(c[g>>2]|0)+(c[j>>2]|0);c[i>>2]=(c[i>>2]|0)+1}if((g|0)==17){c[t>>2]=-1;v=c[t>>2]|0;K=u;return v|0}else if((g|0)==19){c[t>>2]=-1;v=c[t>>2]|0;K=u;return v|0}else if((g|0)==24){c[t>>2]=-18;v=c[t>>2]|0;K=u;return v|0}else if((g|0)==26){c[t>>2]=-18;v=c[t>>2]|0;K=u;return v|0}else if((g|0)==28){c[t>>2]=-18;v=c[t>>2]|0;K=u;return v|0}else if((g|0)==30){c[t>>2]=-18;v=c[t>>2]|0;K=u;return v|0}else if((g|0)==34){c[t>>2]=0;v=c[t>>2]|0;K=u;return v|0}return 0}function mb(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=K;K=K+16|0;h=i+12|0;e=i+8|0;f=i+4|0;g=i;c[e>>2]=b;c[f>>2]=d;do if(c[e>>2]|0){if(!(c[f>>2]|0)){c[h>>2]=0;break}c[f>>2]=(c[f>>2]|0)>>>0<4294967294?c[f>>2]|0:-2;c[g>>2]=Hd((c[f>>2]|0)+1|0)|0;if(!(c[g>>2]|0)){c[h>>2]=0;break}e=(qe(c[g>>2]|0,c[e>>2]|0,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(e){Id(d);c[h>>2]=0;break}else{a[d+(c[f>>2]|0)>>0]=0;c[h>>2]=c[g>>2];break}}else c[h>>2]=0;while(0);K=i;return c[h>>2]|0}function nb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=K;K=K+32|0;f=j+16|0;e=j+12|0;g=j+8|0;i=j+4|0;h=j;c[e>>2]=a;c[g>>2]=b;c[i>>2]=d;if(!(c[e>>2]|0)){c[f>>2]=-2;i=c[f>>2]|0;K=j;return i|0}c[h>>2]=$a(c[e>>2]|0,c[g>>2]|0)|0;if(!(c[h>>2]|0)){c[f>>2]=-20;i=c[f>>2]|0;K=j;return i|0}if(c[(c[h>>2]|0)+412>>2]|0)Id(c[(c[h>>2]|0)+412>>2]|0);i=rb(c[i>>2]|0)|0;c[(c[h>>2]|0)+412>>2]=i;if(!i){c[f>>2]=-18;i=c[f>>2]|0;K=j;return i|0}else{c[f>>2]=0;i=c[f>>2]|0;K=j;return i|0}return 0}function ob(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=K;K=K+32|0;i=k+12|0;j=k+8|0;f=k+16|0;h=k+4|0;g=k;c[j>>2]=b;a[f>>0]=d;c[h>>2]=e;c[g>>2]=0;while(1){if(!(a[c[j>>2]>>0]|0)){d=7;break}if((c[g>>2]|0)>=(c[h>>2]|0)){d=7;break}if((a[c[j>>2]>>0]|0)==(a[f>>0]|0)){d=5;break}c[g>>2]=(c[g>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1}if((d|0)==5){c[i>>2]=c[j>>2];j=c[i>>2]|0;K=k;return j|0}else if((d|0)==7){c[i>>2]=0;j=c[i>>2]|0;K=k;return j|0}return 0}function pb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=K;K=K+32|0;i=l+24|0;j=l+20|0;g=l+16|0;k=l+12|0;f=l+8|0;h=l+4|0;e=l;c[j>>2]=a;c[g>>2]=b;c[k>>2]=d;c[e>>2]=0;a:while(1){d=c[e>>2]|0;if((d|0)>=(Nc(c[(c[j>>2]|0)+416>>2]|0)|0)){b=14;break}c[f>>2]=Oc(c[(c[j>>2]|0)+416>>2]|0,c[e>>2]|0)|0;do if(c[c[f>>2]>>2]|0?(pe(c[g>>2]|0,c[c[f>>2]>>2]|0)|0)==0:0){b=c[k>>2]|0;if(!(c[(c[f>>2]|0)+4>>2]|0))if(!b){b=7;break a}else break;if(b|0?(Vd(c[k>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0)==0:0){b=12;break a}if((c[k>>2]|0)==0?(c[(c[f>>2]|0)+4>>2]|0)==0:0){b=12;break a}}while(0);c[e>>2]=(c[e>>2]|0)+1}if((b|0)==7){c[i>>2]=c[f>>2];k=c[i>>2]|0;K=l;return k|0}else if((b|0)==12){c[i>>2]=c[f>>2];k=c[i>>2]|0;K=l;return k|0}else if((b|0)==14){k=qb(c[g>>2]|0,c[k>>2]|0)|0;c[h>>2]=k;if(!k){c[i>>2]=0;k=c[i>>2]|0;K=l;return k|0}else{c[i>>2]=Rc(c[(c[j>>2]|0)+416>>2]|0,c[h>>2]|0)|0;k=c[i>>2]|0;K=l;return k|0}}return 0}function qb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=K;K=K+16|0;f=h+12|0;e=h+8|0;g=h+4|0;d=h;c[e>>2]=a;c[g>>2]=b;if(!(gb(c[e>>2]|0)|0)){c[f>>2]=0;g=c[f>>2]|0;K=h;return g|0}c[d>>2]=Hd(8)|0;if(!(c[d>>2]|0)){c[f>>2]=0;g=c[f>>2]|0;K=h;return g|0}b=rb(c[e>>2]|0)|0;c[c[d>>2]>>2]=b;if(!(c[c[d>>2]>>2]|0)){Id(c[d>>2]|0);c[f>>2]=0;g=c[f>>2]|0;K=h;return g|0}if(c[g>>2]|0){g=rb(c[g>>2]|0)|0;c[(c[d>>2]|0)+4>>2]=g;if(!(c[(c[d>>2]|0)+4>>2]|0)){Id(c[c[d>>2]>>2]|0);Id(c[d>>2]|0);c[f>>2]=0;g=c[f>>2]|0;K=h;return g|0}}else c[(c[d>>2]|0)+4>>2]=0;c[f>>2]=c[d>>2];g=c[f>>2]|0;K=h;return g|0}function rb(a){a=a|0;var b=0,d=0,e=0,f=0;f=K;K=K+16|0;d=f+8|0;e=f+4|0;b=f;c[e>>2]=a;do if(c[e>>2]|0){c[b>>2]=Hd((sb(c[e>>2]|0)|0)+1|0)|0;if(!(c[b>>2]|0)){c[d>>2]=0;break}else{c[d>>2]=me(c[b>>2]|0,c[e>>2]|0)|0;break}}else c[d>>2]=0;while(0);K=f;return c[d>>2]|0}function sb(a){a=a|0;var b=0,d=0,e=0,f=0;f=K;K=K+16|0;d=f+8|0;e=f+4|0;b=f;c[e>>2]=a;if(!(c[e>>2]|0)){c[d>>2]=0;e=c[d>>2]|0;K=f;return e|0}else{c[b>>2]=Yd(c[e>>2]|0)|0;c[d>>2]=(c[b>>2]|0)>>>0<4294967294?c[b>>2]|0:-2;e=c[d>>2]|0;K=f;return e|0}return 0}function tb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=K;K=K+32|0;j=k+20|0;i=k+16|0;e=k+12|0;h=k+8|0;g=k+4|0;f=k;c[i>>2]=a;c[e>>2]=b;c[h>>2]=d;b=c[i>>2]|0;do if(c[(c[i>>2]|0)+4>>2]|0){g=ve(c[b+4>>2]|0)|0;h=oe(g,c[e>>2]|0,c[h>>2]|0)|0;c[f>>2]=h;if((h|0)==0?ge(c[(c[i>>2]|0)+4>>2]|0)|0:0){c[j>>2]=-10;j=c[j>>2]|0;K=k;return j|0}}else{i=c[b+8>>2]|0;c[g>>2]=i;if(!i){c[j>>2]=-3;j=c[j>>2]|0;K=k;return j|0}if(c[c[g>>2]>>2]|0){c[f>>2]=P[c[c[g>>2]>>2]&7](c[(c[g>>2]|0)+4>>2]|0,c[e>>2]|0,c[h>>2]|0)|0;break}c[j>>2]=-1;j=c[j>>2]|0;K=k;return j|0}while(0);c[j>>2]=c[f>>2];j=c[j>>2]|0;K=k;return j|0}function ub(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=K;K=K+32|0;g=i+16|0;j=i+12|0;f=i+8|0;h=i+4|0;e=i;c[j>>2]=a;c[f>>2]=b;c[h>>2]=d;b=c[j>>2]|0;if(c[(c[j>>2]|0)+4>>2]|0){if((ie(c[b+4>>2]|0,c[f>>2]|0,c[h>>2]|0)|0)==-1){c[g>>2]=-10;j=c[g>>2]|0;K=i;return j|0}}else{j=c[b+8>>2]|0;c[e>>2]=j;if(!j){c[g>>2]=-3;j=c[g>>2]|0;K=i;return j|0}if(!(c[(c[e>>2]|0)+16>>2]|0)){c[g>>2]=-1;j=c[g>>2]|0;K=i;return j|0}if((P[c[(c[e>>2]|0)+16>>2]&7](c[(c[e>>2]|0)+20>>2]|0,c[f>>2]|0,c[h>>2]|0)|0)==-1){c[g>>2]=-1;j=c[g>>2]|0;K=i;return j|0}}c[g>>2]=0;j=c[g>>2]|0;K=i;return j|0}function vb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=K;K=K+16|0;e=g+12|0;h=g+8|0;b=g+4|0;d=g;c[h>>2]=a;a=c[h>>2]|0;do if(c[(c[h>>2]|0)+4>>2]|0){h=ue(c[a+4>>2]|0)|0;c[d>>2]=h;if((h|0)==-1)c[e>>2]=-1;else f=10}else{h=c[a+8>>2]|0;c[b>>2]=h;if(!h){c[e>>2]=-3;break}if(!(c[(c[b>>2]|0)+24>>2]|0)){c[e>>2]=-1;break}h=N[c[(c[b>>2]|0)+24>>2]&15](c[(c[b>>2]|0)+28>>2]|0)|0;c[d>>2]=h;if((h|0)==-1)c[e>>2]=-1;else f=10}while(0);if((f|0)==10)c[e>>2]=c[d>>2];K=g;return c[e>>2]|0}function wb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=K;K=K+16|0;d=f+8|0;g=f+4|0;b=f;c[g>>2]=a;a=c[g>>2]|0;do if(c[(c[g>>2]|0)+4>>2]|0)if((ee(c[a+4>>2]|0)|0)==-1)c[d>>2]=-10;else e=10;else{g=c[a+8>>2]|0;c[b>>2]=g;if(!g){c[d>>2]=-3;break}if(!(c[(c[b>>2]|0)+32>>2]|0)){c[d>>2]=-3;break}if((N[c[(c[b>>2]|0)+32>>2]&15](c[(c[b>>2]|0)+36>>2]|0)|0)==-1)c[d>>2]=-1;else e=10}while(0);if((e|0)==10)c[d>>2]=0;K=f;return c[d>>2]|0}function xb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=K;K=K+16|0;g=i+12|0;e=i+8|0;f=i+4|0;h=i;c[e>>2]=a;c[f>>2]=b;c[h>>2]=d;if(!(c[e>>2]|0)){c[g>>2]=-2;h=c[g>>2]|0;K=i;return h|0}if(c[(c[e>>2]|0)+4>>2]|0){c[g>>2]=-3;h=c[g>>2]|0;K=i;return h|0}if((c[(c[e>>2]|0)+8>>2]|0)==0?(yb(c[e>>2]|0)|0)==-1:0){c[g>>2]=-18;h=c[g>>2]|0;K=i;return h|0}c[c[(c[e>>2]|0)+8>>2]>>2]=c[f>>2];c[(c[(c[e>>2]|0)+8>>2]|0)+4>>2]=c[h>>2];c[g>>2]=0;h=c[g>>2]|0;K=i;return h|0}function yb(a){a=a|0;var b=0,d=0,e=0;e=K;K=K+16|0;d=e+4|0;b=e;c[b>>2]=a;a=Hd(40)|0;c[(c[b>>2]|0)+8>>2]=a;if(!(c[(c[b>>2]|0)+8>>2]|0)){c[d>>2]=-1;d=c[d>>2]|0;K=e;return d|0}else{a=c[(c[b>>2]|0)+8>>2]|0;b=a+40|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[d>>2]=0;d=c[d>>2]|0;K=e;return d|0}return 0}function zb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=K;K=K+16|0;f=i+12|0;e=i+8|0;g=i+4|0;h=i;c[e>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[e>>2]|0)){c[f>>2]=-2;h=c[f>>2]|0;K=i;return h|0}if(c[(c[e>>2]|0)+4>>2]|0){c[f>>2]=-3;h=c[f>>2]|0;K=i;return h|0}if((c[(c[e>>2]|0)+8>>2]|0)==0?(yb(c[e>>2]|0)|0)==-1:0){c[f>>2]=-18;h=c[f>>2]|0;K=i;return h|0}c[(c[(c[e>>2]|0)+8>>2]|0)+16>>2]=c[g>>2];c[(c[(c[e>>2]|0)+8>>2]|0)+20>>2]=c[h>>2];c[f>>2]=0;h=c[f>>2]|0;K=i;return h|0}function Ab(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=K;K=K+16|0;f=i+12|0;e=i+8|0;g=i+4|0;h=i;c[e>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[e>>2]|0)){c[f>>2]=-2;h=c[f>>2]|0;K=i;return h|0}if(c[(c[e>>2]|0)+4>>2]|0){c[f>>2]=-3;h=c[f>>2]|0;K=i;return h|0}if((c[(c[e>>2]|0)+8>>2]|0)==0?(yb(c[e>>2]|0)|0)==-1:0){c[f>>2]=-18;h=c[f>>2]|0;K=i;return h|0}c[(c[(c[e>>2]|0)+8>>2]|0)+24>>2]=c[g>>2];c[(c[(c[e>>2]|0)+8>>2]|0)+28>>2]=c[h>>2];c[f>>2]=0;h=c[f>>2]|0;K=i;return h|0}function Bb(a){a=a|0;var b=0,d=0,e=0;d=K;K=K+16|0;b=d+4|0;e=d;c[b>>2]=a;c[e>>2]=(c[b>>2]|0)+120;yd(c[e>>2]|0)|0;vd((c[e>>2]|0)+32|0,-1)|0;c[(c[e>>2]|0)+392>>2]=-1;c[(c[e>>2]|0)+396>>2]=0;c[(c[e>>2]|0)+400>>2]=0;c[(c[e>>2]|0)+404>>2]=0;c[(c[e>>2]|0)+408>>2]=0;a=(c[e>>2]|0)+416|0;c[a>>2]=0;c[a+4>>2]=0;c[(c[e>>2]|0)+432>>2]=0;a=(c[e>>2]|0)+440|0;c[a>>2]=0;c[a+4>>2]=0;c[(c[e>>2]|0)+448>>2]=0;K=d;return c[b>>2]|0}function Cb(a){a=a|0;var b=0,d=0,e=0;d=K;K=K+16|0;b=d+4|0;e=d;c[b>>2]=a;c[e>>2]=(c[b>>2]|0)+120;wd((c[e>>2]|0)+32|0)|0;zd(c[e>>2]|0)|0;K=d;return c[b>>2]|0}function Db(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=K;K=K+32|0;i=m+24|0;f=m+20|0;j=m+16|0;g=m+12|0;l=m+8|0;h=m+4|0;k=m;c[f>>2]=a;c[j>>2]=b;c[g>>2]=d;c[l>>2]=e;if(!(c[f>>2]|0)){c[i>>2]=-2;l=c[i>>2]|0;K=m;return l|0}c[h>>2]=(c[f>>2]|0)+120;if(c[c[f>>2]>>2]&1|0){c[i>>2]=-3;l=c[i>>2]|0;K=m;return l|0}do if((c[j>>2]|0)==-1){c[(c[h>>2]|0)+396>>2]=c[g>>2];c[(c[h>>2]|0)+400>>2]=c[l>>2]}else{c[k>>2]=$a(c[f>>2]|0,c[j>>2]|0)|0;if(!(c[k>>2]|0))c[k>>2]=bb(c[f>>2]|0,c[j>>2]|0)|0;if(c[k>>2]|0){c[(c[k>>2]|0)+468>>2]=c[g>>2];c[(c[k>>2]|0)+472>>2]=c[l>>2];break}c[i>>2]=-18;l=c[i>>2]|0;K=m;return l|0}while(0);c[i>>2]=0;l=c[i>>2]|0;K=m;return l|0}function Eb(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=K;K=K+32|0;l=o+28|0;h=o+24|0;g=o+20|0;m=o+16|0;n=o+12|0;k=o+8|0;j=o+4|0;i=o;c[h>>2]=a;c[g>>2]=b;c[m>>2]=d;c[n>>2]=e;c[k>>2]=f;c[i>>2]=c[g>>2];b=Hd(80)|0;c[j>>2]=b;if(!b){c[l>>2]=0;n=c[l>>2]|0;K=o;return n|0}d=c[j>>2]|0;a=c[g>>2]|0;f=d+64|0;do{c[d>>2]=c[a>>2];d=d+4|0;a=a+4|0}while((d|0)<(f|0));g=Hd(c[(c[i>>2]|0)+4>>2]|0)|0;c[c[j>>2]>>2]=g;a=c[j>>2]|0;if(!g){Id(a);c[l>>2]=0;n=c[l>>2]|0;K=o;return n|0}else{Ge(c[a>>2]|0,c[c[i>>2]>>2]|0,c[(c[i>>2]|0)+4>>2]|0)|0;c[(c[j>>2]|0)+64>>2]=c[n>>2];c[(c[j>>2]|0)+76>>2]=c[m>>2];c[(c[j>>2]|0)+68>>2]=c[k>>2];c[(c[j>>2]|0)+72>>2]=c[h>>2];c[l>>2]=c[j>>2];n=c[l>>2]|0;K=o;return n|0}return 0}function Fb(a){a=a|0;var b=0,d=0;b=K;K=K+16|0;d=b;c[d>>2]=a;Id(c[c[d>>2]>>2]|0);Id(c[d>>2]|0);K=b;return}function Gb(a){a=a|0;var b=0,d=0,e=0;b=K;K=K+16|0;e=b+4|0;d=b;c[e>>2]=a;c[d>>2]=c[e>>2];Fb(c[d>>2]|0);K=b;return 1}function Hb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=K;K=K+16|0;e=f+12|0;g=f+8|0;d=f+4|0;b=f;c[g>>2]=a;c[d>>2]=c[g>>2];a=(c[d>>2]|0)+32|0;do if(((c[a>>2]|0)==-1?(c[a+4>>2]|0)==-1:0)?(g=(c[(c[d>>2]|0)+64>>2]|0)+488|0,(c[g>>2]|0)!=-1?1:(c[g+4>>2]|0)!=-1):0){c[b>>2]=Hc(c[(c[d>>2]|0)+72>>2]|0,c[(c[d>>2]|0)+76>>2]|0)|0;if(!((c[b>>2]|0)<0|(c[b>>2]|0)>=15)){g=(c[(c[d>>2]|0)+64>>2]|0)+488|0;g=Ec(c[b>>2]|0,c[g>>2]|0,c[g+4>>2]|0,c[(c[d>>2]|0)+64>>2]|0,c[d>>2]|0,c[(c[(c[d>>2]|0)+64>>2]|0)+508>>2]|0)|0;a=t()|0;b=(c[d>>2]|0)+32|0;c[b>>2]=g;c[b+4>>2]=a;b=(c[d>>2]|0)+32|0;a=c[b+4>>2]|0;g=(c[(c[d>>2]|0)+64>>2]|0)+488|0;c[g>>2]=c[b>>2];c[g+4>>2]=a;c[(c[(c[d>>2]|0)+64>>2]|0)+508>>2]=c[d>>2];break}c[e>>2]=0;g=c[e>>2]|0;K=f;return g|0}while(0);c[e>>2]=1;g=c[e>>2]|0;K=f;return g|0}function Ib(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=K;K=K+32|0;f=h+28|0;i=h+24|0;e=h+20|0;d=h+8|0;g=h;b=h+16|0;c[i>>2]=a;c[e>>2]=c[i>>2];a=(c[e>>2]|0)+32|0;if((c[a>>2]|0)==-1?(c[a+4>>2]|0)==-1:0){c[f>>2]=0;i=c[f>>2]|0;K=h;return i|0}a=(c[(c[e>>2]|0)+68>>2]|0)+424|0;i=c[a+4>>2]|0;j=d;c[j>>2]=c[a>>2];c[j+4>>2]=i;j=(c[(c[e>>2]|0)+68>>2]|0)+416|0;i=c[j+4>>2]|0;a=g;c[a>>2]=c[j>>2];c[a+4>>2]=i;a=(c[e>>2]|0)+32|0;i=c[a+4>>2]|0;j=(c[(c[e>>2]|0)+68>>2]|0)+424|0;c[j>>2]=c[a>>2];c[j+4>>2]=i;j=(c[e>>2]|0)+32|0;j=eb(c[(c[e>>2]|0)+72>>2]|0,c[(c[e>>2]|0)+76>>2]|0,c[j>>2]|0,c[j+4>>2]|0)|0;i=t()|0;a=(c[(c[e>>2]|0)+68>>2]|0)+416|0;c[a>>2]=j;c[a+4>>2]=i;a=c[e>>2]|0;if(c[(c[(c[e>>2]|0)+64>>2]|0)+468>>2]|0){j=Q[c[(c[a+64>>2]|0)+468>>2]&15](c[(c[e>>2]|0)+72>>2]|0,c[e>>2]|0,c[(c[e>>2]|0)+76>>2]|0,c[(c[(c[e>>2]|0)+64>>2]|0)+472>>2]|0)|0;c[b>>2]=j;if((j|0)<0?(c[(c[(c[e>>2]|0)+72>>2]|0)+84>>2]=c[b>>2],(c[b>>2]|0)==-1):0){c[f>>2]=-1;j=c[f>>2]|0;K=h;return j|0}}else if((c[(c[a+68>>2]|0)+396>>2]|0?(j=Q[c[(c[(c[e>>2]|0)+68>>2]|0)+396>>2]&15](c[(c[e>>2]|0)+72>>2]|0,c[e>>2]|0,c[(c[e>>2]|0)+76>>2]|0,c[(c[(c[e>>2]|0)+68>>2]|0)+400>>2]|0)|0,c[b>>2]=j,(j|0)<0):0)?(c[(c[(c[e>>2]|0)+72>>2]|0)+84>>2]=c[b>>2],(c[b>>2]|0)==-1):0){c[f>>2]=-1;j=c[f>>2]|0;K=h;return j|0}j=c[d+4>>2]|0;i=(c[(c[e>>2]|0)+68>>2]|0)+424|0;c[i>>2]=c[d>>2];c[i+4>>2]=j;i=c[g+4>>2]|0;j=(c[(c[e>>2]|0)+68>>2]|0)+416|0;c[j>>2]=c[g>>2];c[j+4>>2]=i;Fb(c[e>>2]|0);c[f>>2]=1;j=c[f>>2]|0;K=h;return j|0}function Jb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=K;K=K+48|0;l=m+36|0;k=m+32|0;n=m+28|0;f=m+24|0;d=m+20|0;e=m+16|0;h=m+12|0;g=m+8|0;j=m+4|0;i=m;c[k>>2]=a;c[n>>2]=b;c[h>>2]=1;c[g>>2]=c[n>>2];c[j>>2]=0;c[i>>2]=0;if(!(c[k>>2]|0)){c[l>>2]=-2;n=c[l>>2]|0;K=m;return n|0}if(c[c[k>>2]>>2]&1|0){c[l>>2]=-3;n=c[l>>2]|0;K=m;return n|0}n=c[(c[k>>2]|0)+84>>2]|0;c[i>>2]=n;b=c[k>>2]|0;if(n|0){c[b+84>>2]=0;c[l>>2]=fb(c[i>>2]|0)|0;n=c[l>>2]|0;K=m;return n|0}c[f>>2]=b+120;c[i>>2]=Kb(c[k>>2]|0)|0;if((c[i>>2]|0)==-18){c[l>>2]=c[i>>2];n=c[l>>2]|0;K=m;return n|0}while(1){if(!((c[i>>2]|0)!=-1&(c[i>>2]|0)!=1&(c[h>>2]|0)>0&(c[g>>2]|0)>0)){b=17;break}c[e>>2]=(c[g>>2]|0)<65536?c[g>>2]|0:65536;c[d>>2]=Ad(c[f>>2]|0,c[e>>2]|0)|0;c[h>>2]=tb(c[k>>2]|0,c[d>>2]|0,c[e>>2]|0)|0;if((c[h>>2]|0)==-10){b=12;break}if((c[h>>2]|0)>0?(Bd(c[f>>2]|0,c[h>>2]|0)|0,c[g>>2]=(c[g>>2]|0)-(c[h>>2]|0),c[j>>2]=(c[j>>2]|0)+(c[h>>2]|0),c[i>>2]=Kb(c[k>>2]|0)|0,(c[i>>2]|0)==-18|(c[i>>2]|0)==-17):0){b=15;break}}if((b|0)==12){c[l>>2]=-10;n=c[l>>2]|0;K=m;return n|0}else if((b|0)==15){c[l>>2]=c[i>>2];n=c[l>>2]|0;K=m;return n|0}else if((b|0)==17){if((c[i>>2]|0)==-1)Nb(c[k>>2]|0)|0;if(c[j>>2]|0){if((c[i>>2]|0)==-404)c[i>>2]=0;c[(c[k>>2]|0)+84>>2]=c[i>>2];c[l>>2]=c[j>>2];n=c[l>>2]|0;K=m;return n|0}switch(c[h>>2]|0){case -10:case -16:{c[l>>2]=c[h>>2];n=c[l>>2]|0;K=m;return n|0}default:{}}if((c[i>>2]|0)==-404){c[l>>2]=0;n=c[l>>2]|0;K=m;return n|0}else{c[l>>2]=fb(c[i>>2]|0)|0;n=c[l>>2]|0;K=m;return n|0}}return 0}function Kb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,v=0,w=0,x=0,y=0,z=0;w=K;K=K+160|0;s=w+156|0;j=w+152|0;q=w+148|0;v=w+144|0;l=w+140|0;k=w+136|0;p=w+132|0;u=w+128|0;o=w+24|0;i=w+112|0;d=w+104|0;g=w+16|0;r=w+100|0;e=w+96|0;m=w+92|0;f=w+8|0;n=w+88|0;h=w;c[j>>2]=a;c[q>>2]=(c[j>>2]|0)+120;c[d>>2]=0;c[k>>2]=o;c[p>>2]=o+32;a:while(1){if(c[d>>2]|0){b=78;break}b:do if((c[(c[q>>2]|0)+392>>2]|0)!=-1)c:while(1){if(c[d>>2]|0)break b;c[u>>2]=c[(c[q>>2]|0)+392>>2];c[v>>2]=$a(c[j>>2]|0,c[u>>2]|0)|0;if((c[v>>2]|0)==0?(a=bb(c[j>>2]|0,c[u>>2]|0)|0,c[v>>2]=a,(a|0)==0):0){b=8;break a}c[l>>2]=c[v>>2];c[r>>2]=Gd(c[l>>2]|0,c[k>>2]|0)|0;if((c[r>>2]|0)==-1){x=(c[v>>2]|0)+440|0;z=c[x+4>>2]|0;a=(c[(c[v>>2]|0)+364>>2]|0)-1|0;y=((a|0)<0)<<31>>31;if((z|0)<(y|0)|((z|0)==(y|0)?(c[x>>2]|0)>>>0>>0:0)){b=11;break a}c[r>>2]=Gd(c[l>>2]|0,c[k>>2]|0)|0;if((c[r>>2]|0)==-1){b=13;break a}c[(c[q>>2]|0)+448>>2]=1;x=(c[j>>2]|0)+64|0;y=c[x+4>>2]|0;z=(c[q>>2]|0)+440|0;c[z>>2]=c[x>>2];c[z+4>>2]=y;c[(c[q>>2]|0)+452>>2]=1}if((c[r>>2]|0)<=0)break b;x=(c[v>>2]|0)+440|0;z=x;z=we(c[z>>2]|0,c[z+4>>2]|0,1,0)|0;y=t()|0;c[x>>2]=z;c[x+4>>2]=y;x=(c[k>>2]|0)+16|0;y=c[x+4>>2]|0;z=g;c[z>>2]=c[x>>2];c[z+4>>2]=y;c[e>>2]=Hc(c[j>>2]|0,c[u>>2]|0)|0;do if(!((c[e>>2]|0)<0|(c[e>>2]|0)>=15)){if(((c[e>>2]|0)==6?1:(c[(c[v>>2]|0)+448>>2]|0)==0)?c[c[j>>2]>>2]&32|0:0)Cc(c[j>>2]|0,c[k>>2]|0,c[u>>2]|0,0)|0;if(!(c[c[j>>2]>>2]&32)){x=g;y=c[x+4>>2]|0;z=(c[q>>2]|0)+424|0;c[z>>2]=c[x>>2];c[z+4>>2]=y;break}x=g;x=Dc(c[e>>2]|0,c[x>>2]|0,c[x+4>>2]|0,c[v>>2]|0,c[k>>2]|0)|0;y=t()|0;z=(c[q>>2]|0)+424|0;c[z>>2]=x;c[z+4>>2]=y;z=g;if(((c[z>>2]|0)!=-1?1:(c[z+4>>2]|0)!=-1)?(y=(c[q>>2]|0)+424|0,a=c[y+4>>2]|0,z=g,x=c[z+4>>2]|0,(a|0)<(x|0)|((a|0)==(x|0)?(c[y>>2]|0)>>>0<(c[z>>2]|0)>>>0:0)):0){x=g;y=c[x+4>>2]|0;z=(c[q>>2]|0)+424|0;c[z>>2]=c[x>>2];c[z+4>>2]=y}}else{x=g;y=c[x+4>>2]|0;z=(c[q>>2]|0)+424|0;c[z>>2]=c[x>>2];c[z+4>>2]=y}while(0);x=(c[q>>2]|0)+424|0;y=c[x+4>>2]|0;z=(c[v>>2]|0)+488|0;c[z>>2]=c[x>>2];c[z+4>>2]=y;if(!(!(c[(c[j>>2]|0)+96>>2]|0)?!(c[(c[v>>2]|0)+448>>2]|0):0))b=28;if((b|0)==28?(b=0,z=(c[q>>2]|0)+424|0,(c[z>>2]|0)!=-1?1:(c[z+4>>2]|0)!=-1):0){x=(c[q>>2]|0)+424|0;x=eb(c[j>>2]|0,c[u>>2]|0,c[x>>2]|0,c[x+4>>2]|0)|0;y=t()|0;z=(c[q>>2]|0)+416|0;c[z>>2]=x;c[z+4>>2]=y}z=(c[v>>2]|0)+440|0;if((c[z>>2]|0)==1&(c[z+4>>2]|0)==0)Fc(c[j>>2]|0,c[v>>2]|0,c[u>>2]|0,c[k>>2]|0)|0;x=(c[q>>2]|0)+424|0;y=c[x+4>>2]|0;z=c[p>>2]|0;c[z>>2]=c[x>>2];c[z+4>>2]=y;z=(c[q>>2]|0)+440|0;y=c[z+4>>2]|0;x=(c[p>>2]|0)+8|0;c[x>>2]=c[z>>2];c[x+4>>2]=y;x=(c[j>>2]|0)+64|0;y=c[x+4>>2]|0;z=(c[p>>2]|0)+16|0;c[z>>2]=c[x>>2];c[z+4>>2]=y;c[(c[p>>2]|0)+24>>2]=c[(c[q>>2]|0)+448>>2];c[(c[p>>2]|0)+28>>2]=c[(c[q>>2]|0)+452>>2];do if(c[c[j>>2]>>2]&32|0){z=(c[q>>2]|0)+424|0;a=c[j>>2]|0;if((c[z>>2]|0)==-1?(c[z+4>>2]|0)==-1:0){c[m>>2]=Eb(a,o,c[u>>2]|0,c[v>>2]|0,c[q>>2]|0)|0;_c(c[(c[j>>2]|0)+576>>2]|0,c[m>>2]|0)|0;break}if(!(Zc(c[a+576>>2]|0)|0)){x=(c[v>>2]|0)+488|0;y=c[x+4>>2]|0;z=f;c[z>>2]=c[x>>2];c[z+4>>2]=y;c[(c[v>>2]|0)+508>>2]=c[k>>2];$c(c[(c[j>>2]|0)+576>>2]|0,5);c[(c[j>>2]|0)+84>>2]=0;if((ad(c[(c[j>>2]|0)+576>>2]|0,6)|0)==-1){b=37;break a}a=(c[j>>2]|0)+84|0;if((c[(c[j>>2]|0)+84>>2]|0)>0){c[d>>2]=c[a>>2];c[(c[j>>2]|0)+84>>2]=0;continue c}c[a>>2]=0;x=f;y=c[x+4>>2]|0;z=(c[v>>2]|0)+488|0;c[z>>2]=c[x>>2];c[z+4>>2]=y;if(!(Zc(c[(c[j>>2]|0)+576>>2]|0)|0)){c[n>>2]=Eb(c[j>>2]|0,o,c[u>>2]|0,c[v>>2]|0,c[q>>2]|0)|0;_c(c[(c[j>>2]|0)+576>>2]|0,c[n>>2]|0)|0}else b=42}else b=42}else b=42;while(0);do if((b|0)==42){b=0;if(c[(c[v>>2]|0)+468>>2]|0){c[d>>2]=Q[c[(c[v>>2]|0)+468>>2]&15](c[j>>2]|0,o,c[u>>2]|0,c[(c[v>>2]|0)+472>>2]|0)|0;break}if(c[(c[q>>2]|0)+396>>2]|0)c[d>>2]=Q[c[(c[q>>2]|0)+396>>2]&15](c[j>>2]|0,o,c[u>>2]|0,c[(c[q>>2]|0)+400>>2]|0)|0}while(0);y=(c[q>>2]|0)+440|0;z=(c[j>>2]|0)+64|0;if((c[y>>2]|0)==(c[z>>2]|0)?(c[y+4>>2]|0)==(c[z+4>>2]|0):0){z=(c[q>>2]|0)+452|0;c[z>>2]=(c[z>>2]|0)+1}else{x=(c[j>>2]|0)+64|0;y=c[x+4>>2]|0;z=(c[q>>2]|0)+440|0;c[z>>2]=c[x>>2];c[z+4>>2]=y;c[(c[q>>2]|0)+452>>2]=1}c[(c[q>>2]|0)+448>>2]=1;if(!(c[(c[k>>2]|0)+8>>2]|0))c[(c[v>>2]|0)+420>>2]=1}while(0);if((c[d>>2]|0)==1|(c[d>>2]|0)==-1|(c[d>>2]|0)==-17){b=53;break}Lb(c[j>>2]|0,i)|0;if((t()|0)<0){b=55;break}c[u>>2]=ud(i)|0;c[(c[q>>2]|0)+392>>2]=c[u>>2];c[v>>2]=$a(c[j>>2]|0,c[u>>2]|0)|0;a=c[j>>2]|0;b=c[u>>2]|0;if(!(c[v>>2]|0)){z=bb(a,b)|0;c[v>>2]=z;if(!z){b=58;break}yc(c[j>>2]|0,i,c[u>>2]|0)|0;if(c[c[j>>2]>>2]&32|0)Ac(c[j>>2]|0,i,c[u>>2]|0,0)|0}else if((Hc(a,b)|0)==9)yc(c[j>>2]|0,i,c[u>>2]|0)|0;c[l>>2]=c[v>>2];z=td(i)|0;y=t()|0;x=h;c[x>>2]=z;c[x+4>>2]=y;x=h;y=c[x+4>>2]|0;z=(c[v>>2]|0)+496|0;c[z>>2]=c[x>>2];c[z+4>>2]=y;if(c[(c[j>>2]|0)+96>>2]|0){z=h;if((c[z>>2]|0)!=-1?1:(c[z+4>>2]|0)!=-1)b=66;else b=67}else{z=h;if((c[(c[v>>2]|0)+448>>2]|0)!=0&((c[z>>2]|0)!=-1?1:(c[z+4>>2]|0)!=-1))b=66;else b=67}if((b|0)==66){b=0;x=h;x=eb(c[j>>2]|0,c[u>>2]|0,c[x>>2]|0,c[x+4>>2]|0)|0;y=t()|0;z=(c[q>>2]|0)+416|0;c[z>>2]=x;c[z+4>>2]=y}else if((b|0)==67?(b=0,z=h,(c[z>>2]|0)==0&(c[z+4>>2]|0)==0):0){z=(c[q>>2]|0)+416|0;c[z>>2]=0;c[z+4>>2]=0}if(!(c[(c[v>>2]|0)+476>>2]|0)){if(c[(c[q>>2]|0)+404>>2]|0)c[d>>2]=Q[c[(c[q>>2]|0)+404>>2]&15](c[j>>2]|0,i,c[u>>2]|0,c[(c[q>>2]|0)+408>>2]|0)|0}else c[d>>2]=Q[c[(c[v>>2]|0)+476>>2]&15](c[j>>2]|0,i,c[u>>2]|0,c[(c[v>>2]|0)+480>>2]|0)|0;Dd(c[l>>2]|0,i)|0;z=(rd(i)|0)!=0;a=(c[q>>2]|0)+448|0;if(z){if((c[a>>2]|0)!=-1){z=(c[q>>2]|0)+448|0;c[z>>2]=(c[z>>2]|0)+1}}else{c[a>>2]=1;x=(c[j>>2]|0)+64|0;y=c[x+4>>2]|0;z=(c[q>>2]|0)+440|0;c[z>>2]=c[x>>2];c[z+4>>2]=y;c[(c[q>>2]|0)+452>>2]=0}}if((b|0)==8){c[s>>2]=-18;z=c[s>>2]|0;K=w;return z|0}else if((b|0)==11){c[s>>2]=-17;z=c[s>>2]|0;K=w;return z|0}else if((b|0)==13){c[s>>2]=-17;z=c[s>>2]|0;K=w;return z|0}else if((b|0)==37){c[s>>2]=-17;z=c[s>>2]|0;K=w;return z|0}else if((b|0)==53){c[s>>2]=c[d>>2];z=c[s>>2]|0;K=w;return z|0}else if((b|0)==55){c[s>>2]=-404;z=c[s>>2]|0;K=w;return z|0}else if((b|0)==58){c[s>>2]=-18;z=c[s>>2]|0;K=w;return z|0}else if((b|0)==78){c[s>>2]=c[d>>2];z=c[s>>2]|0;K=w;return z|0}return 0}function Lb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=K;K=K+32|0;i=j;h=j+24|0;f=j+20|0;g=j+16|0;e=j+12|0;d=j+8|0;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[h>>2]|0)+120;c[d>>2]=0;k=c[(c[g>>2]|0)+432>>2]|0;a=(c[h>>2]|0)+64|0;b=a;k=we(c[b>>2]|0,c[b+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0;b=t()|0;c[a>>2]=k;c[a+4>>2]=b;while(1){c[e>>2]=Cd(c[g>>2]|0,c[f>>2]|0)|0;if(!(c[e>>2]|0)){b=3;break}b=c[e>>2]|0;if((c[e>>2]|0)<0){b=0-b|0;k=(c[h>>2]|0)+64|0;a=k;b=we(c[a>>2]|0,c[a+4>>2]|0,b|0,((b|0)<0)<<31>>31|0)|0;a=t()|0;c[k>>2]=b;c[k+4>>2]=a}else{c[(c[g>>2]|0)+432>>2]=b;c[d>>2]=1}if(!((c[d>>2]|0)!=0^1)){b=8;break}}if((b|0)==3){k=i;c[k>>2]=-2;c[k+4>>2]=-1;k=i;k=c[k>>2]|0;i=i+4|0;i=c[i>>2]|0;s(i|0);K=j;return k|0}else if((b|0)==8){g=(c[h>>2]|0)+64|0;h=c[g+4>>2]|0;k=i;c[k>>2]=c[g>>2];c[k+4>>2]=h;k=i;k=c[k>>2]|0;i=i+4|0;i=c[i>>2]|0;s(i|0);K=j;return k|0}return 0}function Mb(a){a=a|0;var b=0,d=0;b=K;K=K+16|0;d=b;c[d>>2]=a;a=(c[d>>2]|0)+488|0;c[a>>2]=-1;c[a+4>>2]=-1;K=b;return 0}function Nb(a){a=a|0;var b=0,d=0,e=0;e=K;K=K+16|0;d=e+4|0;b=e;c[b>>2]=a;do if(!(c[b>>2]|0))c[d>>2]=-2;else{if(c[c[b>>2]>>2]&1|0){c[d>>2]=-3;break}Ob(c[b>>2]|0);if(c[(c[b>>2]|0)+4>>2]|0?(a=(c[b>>2]|0)+64|0,(Pb(c[b>>2]|0,c[a>>2]|0,c[a+4>>2]|0,-1,-1,0)|0)<0):0){c[d>>2]=-10;break}c[d>>2]=0}while(0);K=e;return c[d>>2]|0}function Ob(a){a=a|0;var b=0,d=0;b=K;K=K+16|0;d=b;c[d>>2]=a;Qc(c[(c[d>>2]|0)+88>>2]|0,7)|0;K=b;return}function Pb(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=K;K=K+32|0;j=h+20|0;l=h+8|0;k=h;i=h+16|0;c[j>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;a=k;c[a>>2]=e;c[a+4>>2]=f;c[i>>2]=g;Ob(c[j>>2]|0);a=l;g=k;g=Qb(c[j>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[g>>2]|0,c[g+4>>2]|0,c[i>>2]|0)|0;K=h;return g|0}function Qb(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=K;K=K+48|0;k=m+36|0;i=m+32|0;o=m+16|0;l=m+8|0;n=m+28|0;j=m+24|0;h=m;c[i>>2]=a;a=o;c[a>>2]=b;c[a+4>>2]=d;a=l;c[a>>2]=e;c[a+4>>2]=f;c[n>>2]=g;c[j>>2]=(c[i>>2]|0)+120;f=o;f=Rb(c[i>>2]|0,c[f>>2]|0,c[f+4>>2]|0,c[n>>2]|0)|0;a=t()|0;g=h;c[g>>2]=f;c[g+4>>2]=a;g=h;if((c[g>>2]|0)==-1?(c[g+4>>2]|0)==-1:0){c[k>>2]=-1;o=c[k>>2]|0;K=m;return o|0}g=h;n=c[g+4>>2]|0;o=(c[i>>2]|0)+64|0;c[o>>2]=c[g>>2];c[o+4>>2]=n;o=l;if((c[o>>2]|0)!=-1?1:(c[o+4>>2]|0)!=-1){g=l;n=c[g+4>>2]|0;o=(c[j>>2]|0)+416|0;c[o>>2]=c[g>>2];c[o+4>>2]=n}c[k>>2]=c[h>>2];o=c[k>>2]|0;K=m;return o|0}function Rb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=K;K=K+48|0;i=j+16|0;g=j+32|0;l=j+8|0;k=j+28|0;h=j+24|0;f=j;c[g>>2]=a;a=l;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;c[h>>2]=(c[g>>2]|0)+120;if((ub(c[g>>2]|0,c[l>>2]|0,c[k>>2]|0)|0)==-1){k=i;c[k>>2]=-1;c[k+4>>2]=-1;k=i;l=k;l=c[l>>2]|0;k=k+4|0;k=c[k>>2]|0;s(k|0);K=j;return l|0}else{l=vb(c[g>>2]|0)|0;k=f;c[k>>2]=l;c[k+4>>2]=((l|0)<0)<<31>>31;k=f;l=c[k+4>>2]|0;e=(c[g>>2]|0)+64|0;c[e>>2]=c[k>>2];c[e+4>>2]=l;Ed(c[h>>2]|0)|0;Qc(c[(c[g>>2]|0)+88>>2]|0,8)|0;e=f;l=c[e+4>>2]|0;k=i;c[k>>2]=c[e>>2];c[k+4>>2]=l;k=i;l=k;l=c[l>>2]|0;k=k+4|0;k=c[k>>2]|0;s(k|0);K=j;return l|0}return 0}function Sb(a){a=a|0;var b=0,d=0,e=0;d=K;K=K+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=c[e>>2];if((c[(c[b>>2]|0)+336>>2]|0)==-1){K=d;return 0}Fd(c[b>>2]|0)|0;K=d;return 0}function Tb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=K;K=K+48|0;i=l+16|0;g=l+32|0;f=l+8|0;k=l+28|0;h=l+24|0;j=l;c[g>>2]=a;a=f;c[a>>2]=b;c[a+4>>2]=d;c[k>>2]=e;e=j;c[e>>2]=-1;c[e+4>>2]=-1;if(!(c[g>>2]|0)){e=i;c[e>>2]=-1;c[e+4>>2]=-1;e=i;k=e;k=c[k>>2]|0;e=e+4|0;e=c[e>>2]|0;s(e|0);K=l;return k|0}if(c[c[g>>2]>>2]&1|0){e=i;c[e>>2]=-1;c[e+4>>2]=-1;e=i;k=e;k=c[k>>2]|0;e=e+4|0;e=c[e>>2]|0;s(e|0);K=l;return k|0}e=f;if((c[e>>2]|0)==0&(c[e+4>>2]|0)==0&(c[k>>2]|0)==0){e=j;c[e>>2]=0;c[e+4>>2]=0}c[h>>2]=(c[g>>2]|0)+120;e=f;if(!((c[e>>2]|0)==0&(c[e+4>>2]|0)==0&(c[k>>2]|0)==1)){e=(c[h>>2]|0)+416|0;c[e>>2]=-1;c[e+4>>2]=-1}h=f;e=j;k=Pb(c[g>>2]|0,c[h>>2]|0,c[h+4>>2]|0,c[e>>2]|0,c[e+4>>2]|0,c[k>>2]|0)|0;e=i;c[e>>2]=k;c[e+4>>2]=((k|0)<0)<<31>>31;e=i;k=e;k=c[k>>2]|0;e=e+4|0;e=c[e>>2]|0;s(e|0);K=l;return k|0}function Ub(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0;r=K;K=K+48|0;o=r+40|0;n=r+36|0;p=r+32|0;u=r+28|0;s=r+24|0;k=r+16|0;q=r+12|0;j=r+8|0;i=r+4|0;l=r+44|0;m=r;c[n>>2]=b;c[p>>2]=e;c[u>>2]=f;c[s>>2]=g;c[r+20>>2]=h;c[k>>2]=c[u>>2];a[l>>0]=0;if((c[s>>2]|0)<41){c[o>>2]=0;u=c[o>>2]|0;K=r;return u|0}c[q>>2]=(d[(c[k>>2]|0)+7>>0]<<16)+(d[(c[k>>2]|0)+8>>0]<<8)+(d[(c[k>>2]|0)+9>>0]|0);c[j>>2]=rc((c[k>>2]|0)+22|0)|0;c[i>>2]=rc((c[k>>2]|0)+26|0)|0;if(!(c[j>>2]|0))c[j>>2]=1;a[l>>0]=(d[(c[k>>2]|0)+40>>0]&3)<<3;a[l>>0]=a[l>>0]|(d[(c[k>>2]|0)+41>>0]&224)>>5;c[m>>2]=a[l>>0];e=c[n>>2]|0;h=c[p>>2]|0;s=c[j>>2]|0;u=c[i>>2]|0;u=Ce(1e3,0,u|0,((u|0)<0)<<31>>31|0)|0;id(e,h,s,((s|0)<0)<<31>>31,u,t()|0)|0;bd(c[n>>2]|0,c[p>>2]|0,c[m>>2]|0)|0;if((c[q>>2]|0)<197120)kd(c[n>>2]|0,c[p>>2]|0,-1,-1)|0;sc(c[n>>2]|0,c[p>>2]|0,3)|0;c[o>>2]=1;u=c[o>>2]|0;K=r;return u|0}function Vb(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=K;K=K+48|0;n=p+8|0;i=p;o=p+32|0;h=p+28|0;l=p+24|0;m=p+20|0;k=p+36|0;j=p+16|0;q=i;c[q>>2]=b;c[q+4>>2]=e;c[o>>2]=f;c[h>>2]=g;if(!(c[(c[h>>2]|0)+4>>2]|0))b=64;else b=d[c[c[h>>2]>>2]>>0]|0;a[k>>0]=b;c[j>>2]=c[(c[o>>2]|0)+504>>2];a:do if(!((d[k>>0]|0)&128|0)){q=i;f=c[q+4>>2]|0;if((f|0)>-1|(f|0)==-1&(c[q>>2]|0)>>>0>4294967295){c[c[j>>2]>>2]=1;m=i;o=c[m+4>>2]|0;q=n;c[q>>2]=c[m>>2];c[q+4>>2]=o;break}q=(c[o>>2]|0)+488|0;b=c[j>>2]|0;if((c[q>>2]|0)==-1?(c[q+4>>2]|0)==-1:0){c[b>>2]=1;q=n;c[q>>2]=-1;c[q+4>>2]=-1;break}if(!(c[b>>2]|0)){c[c[j>>2]>>2]=1;q=n;c[q>>2]=-1;c[q+4>>2]=-1;break}b=c[o>>2]|0;if((d[k>>0]|0)&64|0){m=b+488|0;m=we(c[m>>2]|0,c[m+4>>2]|0,1,0)|0;o=t()|0;q=n;c[q>>2]=m;c[q+4>>2]=o;break}else{c[m>>2]=c[b+408>>2];q=(c[o>>2]|0)+488|0;q=Ee(c[q>>2]|0,c[q+4>>2]|0,c[m>>2]|0)|0;t()|0;c[l>>2]=q;o=(c[o>>2]|0)+488|0;q=(1<>2])-1|0;q=we(c[o>>2]&q|0,c[o+4>>2]&((q|0)<0)<<31>>31|0,1,0)|0;o=t()|0;k=c[l>>2]|0;o=we(k|0,((k|0)<0)<<31>>31|0,q|0,o|0)|0;t()|0;c[l>>2]=o;o=c[l>>2]|0;m=Fe(o|0,((o|0)<0)<<31>>31|0,c[m>>2]|0)|0;o=t()|0;q=n;c[q>>2]=m;c[q+4>>2]=o;break}}else{do if(!(c[j>>2]|0)){q=Hd(4)|0;c[(c[o>>2]|0)+504>>2]=q;if(!(c[(c[o>>2]|0)+504>>2]|0)){q=n;c[q>>2]=-1;c[q+4>>2]=-1;break a}else{c[j>>2]=c[(c[o>>2]|0)+504>>2];break}}while(0);c[c[j>>2]>>2]=0;q=n;c[q>>2]=0;c[q+4>>2]=0}while(0);o=n;q=c[o>>2]|0;s(c[o+4>>2]|0);K=p;return q|0}function Wb(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=K;K=K+48|0;h=j+8|0;l=j;i=j+32|0;k=j+20|0;g=j+16|0;m=l;c[m>>2]=a;c[m+4>>2]=b;c[i>>2]=d;c[j+28>>2]=e;c[j+24>>2]=f;e=l;e=Ee(c[e>>2]|0,c[e+4>>2]|0,c[(c[i>>2]|0)+408>>2]|0)|0;t()|0;c[k>>2]=e;e=l;a=c[k>>2]<>2]|0)+408>>2];a=xe(c[e>>2]|0,c[e+4>>2]|0,a|0,((a|0)<0)<<31>>31|0)|0;t()|0;c[g>>2]=a;a=c[k>>2]|0;if(!(c[g>>2]|0)){m=(a-60<>2]|0)+408>>2])+59|0;l=h;c[l>>2]=m;c[l+4>>2]=((m|0)<0)<<31>>31;l=h;m=l;m=c[m>>2]|0;l=l+4|0;l=c[l>>2]|0;s(l|0);K=j;return m|0}else{l=Fe(a|0,((a|0)<0)<<31>>31|0,c[(c[i>>2]|0)+408>>2]|0)|0;m=t()|0;k=(c[g>>2]|0)-1|0;k=we(l|0,m|0,k|0,((k|0)<0)<<31>>31|0)|0;m=t()|0;l=h;c[l>>2]=k;c[l+4>>2]=m;l=h;m=l;m=c[m>>2]|0;l=l+4|0;l=c[l>>2]|0;s(l|0);K=j;return m|0}return 0}function Xb(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=K;K=K+48|0;j=l+32|0;i=l+28|0;k=l+24|0;n=l+20|0;m=l+16|0;h=l+8|0;g=l;c[i>>2]=a;c[k>>2]=b;c[n>>2]=d;c[m>>2]=e;c[l+12>>2]=f;c[h>>2]=c[n>>2];f=g;c[f>>2]=0;c[f+4>>2]=0;if((c[m>>2]|0)<30){c[j>>2]=0;n=c[j>>2]|0;K=l;return n|0}else{m=vc((c[h>>2]|0)+12|0)|0;n=g;c[n>>2]=m;c[n+4>>2]=((m|0)<0)<<31>>31;n=g;id(c[i>>2]|0,c[k>>2]|0,c[n>>2]|0,c[n+4>>2]|0,1e3,0)|0;Jc(c[i>>2]|0,c[k>>2]|0,2)|0;sc(c[i>>2]|0,c[k>>2]|0,3)|0;c[j>>2]=1;n=c[j>>2]|0;K=l;return n|0}return 0}function Yb(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;A=K;K=K+96|0;z=A+16|0;i=A+8|0;v=A+80|0;j=A+76|0;y=A+72|0;n=A+68|0;k=A+64|0;g=A+60|0;l=A+56|0;p=A+52|0;q=A+48|0;r=A+44|0;o=A+40|0;m=A+36|0;u=A+32|0;h=A+28|0;x=A+24|0;w=A;B=i;c[B>>2]=a;c[B+4>>2]=b;c[v>>2]=e;c[j>>2]=f;a=c[c[j>>2]>>2]|0;if(!(c[(c[v>>2]|0)+504>>2]|0)){c[g>>2]=1<<((d[a+28>>0]|0)>>4);c[k>>2]=1<<((d[(c[c[j>>2]>>2]|0)+28>>0]|0)&15);B=Hd(44)|0;c[(c[v>>2]|0)+504>>2]=B;if(!(c[(c[v>>2]|0)+504>>2]|0)){B=z;c[B>>2]=-1;c[B+4>>2]=-1;B=z;B=c[B>>2]|0;z=z+4|0;z=c[z>>2]|0;s(z|0);K=A;return B|0}else{c[y>>2]=c[(c[v>>2]|0)+504>>2];c[(c[y>>2]|0)+12>>2]=c[g>>2]>>1;c[(c[y>>2]|0)+8>>2]=((c[g>>2]>>2)*3|0)-(c[k>>2]>>2);c[(c[y>>2]|0)+4>>2]=(c[g>>2]>>2)+(c[k>>2]>>2);c[c[y>>2]>>2]=c[(c[y>>2]|0)+12>>2];c[(c[y>>2]|0)+20>>2]=c[k>>2];c[(c[y>>2]|0)+24>>2]=c[g>>2];c[(c[y>>2]|0)+16>>2]=c[k>>2]>>1;c[(c[y>>2]|0)+28>>2]=0;B=z;c[B>>2]=0;c[B+4>>2]=0;B=z;B=c[B>>2]|0;z=z+4|0;z=c[z>>2]|0;s(z|0);K=A;return B|0}}if(!((d[a>>0]|0)&1)){c[y>>2]=c[(c[v>>2]|0)+504>>2];c[h>>2]=(d[c[c[j>>2]>>2]>>0]|0)>>1&(1<>2]|0)+36>>2])-1;c[x>>2]=c[(c[y>>2]|0)+40+(c[h>>2]<<2)>>2];B=i;u=c[B+4>>2]|0;if((u|0)>-1|(u|0)==-1&(c[B>>2]|0)>>>0>4294967295?(B=(c[v>>2]|0)+488|0,(c[B>>2]|0)==-1?(c[B+4>>2]|0)==-1:0):0){c[(c[y>>2]|0)+28>>2]=1;c[(c[y>>2]|0)+32>>2]=c[x>>2];x=i;y=c[x+4>>2]|0;B=z;c[B>>2]=c[x>>2];c[B+4>>2]=y;B=z;B=c[B>>2]|0;z=z+4|0;z=c[z>>2]|0;s(z|0);K=A;return B|0}if(!(c[(c[y>>2]|0)+28>>2]|0)){c[(c[y>>2]|0)+28>>2]=1;c[(c[y>>2]|0)+32>>2]=c[x>>2];B=z;c[B>>2]=-1;c[B+4>>2]=-1;B=z;B=c[B>>2]|0;z=z+4|0;z=c[z>>2]|0;s(z|0);K=A;return B|0}B=(c[v>>2]|0)+488|0;if((c[B>>2]|0)==-1?(c[B+4>>2]|0)==-1:0){c[(c[y>>2]|0)+32>>2]=c[x>>2];B=z;c[B>>2]=-1;c[B+4>>2]=-1;B=z;B=c[B>>2]|0;z=z+4|0;z=c[z>>2]|0;s(z|0);K=A;return B|0}f=(c[v>>2]|0)+488|0;a=c[y>>2]|0;if(c[(c[y>>2]|0)+32>>2]|0)b=c[a+24>>2]|0;else b=c[a+20>>2]|0;a=c[y>>2]|0;if(c[x>>2]|0)a=c[a+24>>2]|0;else a=c[a+20>>2]|0;u=(b+a|0)/4|0;u=we(c[f>>2]|0,c[f+4>>2]|0,u|0,((u|0)<0)<<31>>31|0)|0;v=t()|0;B=w;c[B>>2]=u;c[B+4>>2]=v;c[(c[y>>2]|0)+32>>2]=c[x>>2];x=w;y=c[x+4>>2]|0;B=z;c[B>>2]=c[x>>2];c[B+4>>2]=y;B=z;B=c[B>>2]|0;z=z+4|0;z=c[z>>2]|0;s(z|0);K=A;return B|0}a:do if((d[c[c[j>>2]>>2]>>0]|0|0)==5){c[l>>2]=(c[c[j>>2]>>2]|0)+((c[(c[j>>2]|0)+4>>2]|0)-1);c[q>>2]=0;c[p>>2]=8;while(1){B=(c[p>>2]|0)+-1|0;c[p>>2]=B;if(!((1<>2]>>0]|0)|0)!=0^1))break;if(!(c[p>>2]|0)){c[p>>2]=8;c[l>>2]=(c[l>>2]|0)+-1}}while(1){c[p>>2]=((c[p>>2]|0)+7|0)%8|0;if((c[p>>2]|0)==7)c[l>>2]=(c[l>>2]|0)+-1;if((d[(c[l>>2]|0)+-5>>0]|0)&~((1<<(c[p>>2]|0)+1)-1)|0)break;if(d[(c[l>>2]|0)+-4>>0]|0|0)break;if(d[(c[l>>2]|0)+-3>>0]|0|0)break;if(d[(c[l>>2]|0)+-2>>0]|0|0)break;if((d[(c[l>>2]|0)+-1>>0]|0)&(1<<(c[p>>2]|0)+1)-1|0)break;c[q>>2]=(c[q>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+-5}c[n>>2]=0;while(1){if((c[n>>2]|0)>=2)break;b=d[c[l>>2]>>0]|0;a=c[p>>2]|0;if((c[p>>2]|0)>4)c[r>>2]=b>>a-5&63;else{c[r>>2]=b&(1<>2]=c[r>>2]<<5-(c[p>>2]|0);c[r>>2]=c[r>>2]|((d[(c[l>>2]|0)+-1>>0]|0)&~((1<<(c[p>>2]|0)+3)-1))>>(c[p>>2]|0)+3}c[r>>2]=(c[r>>2]|0)+1;if((c[r>>2]|0)==(c[q>>2]|0))break;c[p>>2]=((c[p>>2]|0)+1|0)%8|0;if(!(c[p>>2]|0))c[l>>2]=(c[l>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+5;c[q>>2]=(c[q>>2]|0)-1;c[n>>2]=(c[n>>2]|0)+1}c[u>>2]=44+((c[q>>2]|0)-1<<2);if((c[u>>2]|0)>>>0<44){B=z;c[B>>2]=-1;c[B+4>>2]=-1;B=z;B=c[B>>2]|0;z=z+4|0;z=c[z>>2]|0;s(z|0);K=A;return B|0}c[y>>2]=Kd(c[(c[v>>2]|0)+504>>2]|0,c[u>>2]|0)|0;if(!(c[y>>2]|0)){B=z;c[B>>2]=-1;c[B+4>>2]=-1;B=z;B=c[B>>2]|0;z=z+4|0;z=c[z>>2]|0;s(z|0);K=A;return B|0}c[(c[v>>2]|0)+504>>2]=c[y>>2];c[m>>2]=-1;do{B=(c[m>>2]|0)+1|0;c[m>>2]=B}while((1<>2]|0));c[(c[y>>2]|0)+36>>2]=c[m>>2];c[o>>2]=(c[y>>2]|0)+40;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[q>>2]|0))break a;c[p>>2]=((c[p>>2]|0)+1|0)%8|0;if(!(c[p>>2]|0))c[l>>2]=(c[l>>2]|0)+1;y=(d[c[l>>2]>>0]|0)>>c[p>>2]&1;B=c[o>>2]|0;c[o>>2]=B+4;c[B>>2]=y;c[l>>2]=(c[l>>2]|0)+5;c[m>>2]=(c[m>>2]|0)+1}}while(0);B=z;c[B>>2]=0;c[B+4>>2]=0;B=z;B=c[B>>2]|0;z=z+4|0;z=c[z>>2]|0;s(z|0);K=A;return B|0}function Zb(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,u=0;p=K;K=K+64|0;n=p+16|0;k=p+8|0;r=p+48|0;q=p+44|0;h=p+40|0;i=p+36|0;j=p+32|0;o=p+28|0;l=p+24|0;m=p;u=k;c[u>>2]=a;c[u+4>>2]=b;c[r>>2]=e;c[q>>2]=f;c[h>>2]=g;c[i>>2]=c[(c[r>>2]|0)+504>>2];c[j>>2]=(d[c[c[q>>2]>>2]>>0]|0)>>1&(1<>2]|0)+36>>2])-1;a=c[i>>2]|0;if(c[(c[i>>2]|0)+40+(c[j>>2]<<2)>>2]|0)a=c[a+24>>2]|0;else a=c[a+20>>2]|0;c[o>>2]=a;c[j>>2]=(d[c[c[h>>2]>>2]>>0]|0)>>1&(1<>2]|0)+36>>2])-1;a=c[i>>2]|0;if(c[(c[i>>2]|0)+40+(c[j>>2]<<2)>>2]|0)a=c[a+24>>2]|0;else a=c[a+20>>2]|0;c[l>>2]=a;r=k;q=((c[o>>2]|0)+(c[l>>2]|0)|0)/4|0;q=xe(c[r>>2]|0,c[r+4>>2]|0,q|0,((q|0)<0)<<31>>31|0)|0;r=t()|0;u=m;c[u>>2]=q;c[u+4>>2]=r;if((c[m+4>>2]|0)<0){r=n;c[r>>2]=0;c[r+4>>2]=0;r=n;u=r;u=c[u>>2]|0;r=r+4|0;r=c[r>>2]|0;s(r|0);K=p;return u|0}else{q=m;u=c[q+4>>2]|0;r=n;c[r>>2]=c[q>>2];c[r+4>>2]=u;r=n;u=r;u=c[u>>2]|0;r=r+4|0;r=c[r>>2]|0;s(r|0);K=p;return u|0}return 0}function _b(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=K;K=K+48|0;k=m+36|0;j=m+32|0;l=m+28|0;o=m+24|0;n=m+20|0;h=m+12|0;g=m;i=m+8|0;c[j>>2]=a;c[l>>2]=b;c[o>>2]=d;c[n>>2]=e;c[m+16>>2]=f;c[h>>2]=c[o>>2];f=g;c[f>>2]=0;c[f+4>>2]=0;if((c[n>>2]|0)<68){c[k>>2]=0;o=c[k>>2]|0;K=m;return o|0}else{n=vc((c[h>>2]|0)+36|0)|0;o=g;c[o>>2]=n;c[o+4>>2]=((n|0)<0)<<31>>31;o=g;id(c[j>>2]|0,c[l>>2]|0,c[o>>2]|0,c[o+4>>2]|0,1e3,0)|0;Jc(c[j>>2]|0,c[l>>2]|0,3)|0;o=vc((c[h>>2]|0)+68|0)|0;o=we(o|0,((o|0)<0)<<31>>31|0,2,0)|0;t()|0;c[i>>2]=o;sc(c[j>>2]|0,c[l>>2]|0,c[i>>2]|0)|0;c[k>>2]=1;o=c[k>>2]|0;K=m;return o|0}return 0}function $b(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=K;K=K+32|0;i=k+8|0;h=k;j=k+24|0;f=k+20|0;g=k+16|0;l=h;c[l>>2]=a;c[l+4>>2]=b;c[j>>2]=d;c[f>>2]=e;c[g>>2]=c[(c[j>>2]|0)+504>>2];do if(!(c[(c[j>>2]|0)+504>>2]|0)){l=Hd(12)|0;c[(c[j>>2]|0)+504>>2]=l;if(!(c[(c[j>>2]|0)+504>>2]|0)){l=i;c[l>>2]=-1;c[l+4>>2]=-1;break}else{c[g>>2]=c[(c[j>>2]|0)+504>>2];c[(c[g>>2]|0)+8>>2]=0;l=p(c[(c[c[f>>2]>>2]|0)+64>>2]|0,c[(c[c[f>>2]>>2]|0)+56>>2]|0)|0;c[(c[g>>2]|0)+4>>2]=l;c[c[g>>2]>>2]=1;l=i;c[l>>2]=0;c[l+4>>2]=0;break}}else{a=c[g>>2]|0;if((c[c[g>>2]>>2]|0)<2)c[a>>2]=(c[a>>2]|0)+1;else c[a+8>>2]=1;l=h;d=c[l+4>>2]|0;if((d|0)>-1|(d|0)==-1&(c[l>>2]|0)>>>0>4294967295){j=c[h+4>>2]|0;l=i;c[l>>2]=c[h>>2];c[l+4>>2]=j;break}if(!(c[(c[g>>2]|0)+8>>2]|0)){l=i;c[l>>2]=0;c[l+4>>2]=0;break}l=(c[j>>2]|0)+488|0;h=c[l+4>>2]|0;if((h|0)>0|(h|0)==0&(c[l>>2]|0)>>>0>0){j=(c[j>>2]|0)+488|0;h=c[(c[g>>2]|0)+4>>2]|0;h=we(c[j>>2]|0,c[j+4>>2]|0,h|0,((h|0)<0)<<31>>31|0)|0;j=t()|0;l=i;c[l>>2]=h;c[l+4>>2]=j;break}else{l=i;c[l>>2]=-1;c[l+4>>2]=-1;break}}while(0);j=i;l=c[j>>2]|0;s(c[j+4>>2]|0);K=k;return l|0}function ac(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=K;K=K+48|0;j=l+32|0;i=l+28|0;k=l+24|0;n=l+20|0;m=l+16|0;h=l+8|0;g=l;c[i>>2]=a;c[k>>2]=b;c[n>>2]=d;c[m>>2]=e;c[l+12>>2]=f;c[h>>2]=c[n>>2];if((c[m>>2]|0)<28){c[j>>2]=0;n=c[j>>2]|0;K=l;return n|0}else{m=rc((c[h>>2]|0)+16|0)|0;n=g;c[n>>2]=m;c[n+4>>2]=((m|0)<0)<<31>>31;n=g;id(c[i>>2]|0,c[k>>2]|0,c[n>>2]|0,c[n+4>>2]|0,1e3,0)|0;sc(c[i>>2]|0,c[k>>2]|0,3)|0;c[j>>2]=1;n=c[j>>2]|0;K=l;return n|0}return 0}function bc(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=K;K=K+48|0;n=p+44|0;m=p+40|0;o=p+36|0;q=p+32|0;l=p+28|0;k=p+20|0;i=p+8|0;h=p;j=p+16|0;c[m>>2]=a;c[o>>2]=b;c[q>>2]=e;c[l>>2]=f;c[p+24>>2]=g;c[k>>2]=c[q>>2];g=i;c[g>>2]=0;c[g+4>>2]=0;g=h;c[g>>2]=0;c[g+4>>2]=0;if((c[l>>2]|0)<28){c[n>>2]=0;q=c[n>>2]|0;K=p;return q|0}q=wc((c[k>>2]|0)+12|0)|0;g=t()|0;b=i;c[b>>2]=q;c[b+4>>2]=g;b=wc((c[k>>2]|0)+20|0)|0;g=t()|0;q=h;c[q>>2]=b;c[q+4>>2]=g;if((c[l>>2]|0)>28)c[j>>2]=d[(c[k>>2]|0)+28>>0];else c[j>>2]=0;l=c[m>>2]|0;a=c[o>>2]|0;g=i;b=c[g>>2]|0;g=c[g+4>>2]|0;q=h;q=Ce(1e3,0,c[q>>2]|0,c[q+4>>2]|0)|0;id(l,a,b,g,q,t()|0)|0;bd(c[m>>2]|0,c[o>>2]|0,c[j>>2]|0)|0;sc(c[m>>2]|0,c[o>>2]|0,3)|0;c[n>>2]=1;q=c[n>>2]|0;K=p;return q|0}function cc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=K;K=K+32|0;i=g+16|0;h=g+12|0;c[i>>2]=a;c[h>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;id(c[i>>2]|0,c[h>>2]|0,0,0,1,0)|0;K=g;return 1}function dc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=K;K=K+32|0;i=g+16|0;h=g+12|0;c[i>>2]=a;c[h>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;id(c[i>>2]|0,c[h>>2]|0,0,0,1,0)|0;sc(c[i>>2]|0,c[h>>2]|0,1)|0;K=g;return 1}function ec(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=K;K=K+32|0;j=h+28|0;i=h+24|0;m=h+20|0;l=h+8|0;k=h;c[j>>2]=a;c[i>>2]=b;c[m>>2]=e;c[h+16>>2]=f;c[h+12>>2]=g;c[l>>2]=c[m>>2];f=k;c[f>>2]=0;c[f+4>>2]=0;f=(d[(c[l>>2]|0)+14>>0]|0)<<12;a=(d[(c[l>>2]|0)+15>>0]|0)<<4;b=(d[(c[l>>2]|0)+16>>0]|0)>>4&15;g=k;c[g>>2]=f|a|b;c[g+4>>2]=((f|0)<0)<<31>>31|((a|0)<0)<<31>>31|((b|0)<0)<<31>>31;g=k;id(c[j>>2]|0,c[i>>2]|0,c[g>>2]|0,c[g+4>>2]|0,1e3,0)|0;sc(c[j>>2]|0,c[i>>2]|0,3)|0;K=h;return 1}function fc(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=K;K=K+48|0;m=o+8|0;k=o;n=o+28|0;l=o+24|0;j=o+20|0;i=o+32|0;h=o+16|0;p=k;c[p>>2]=b;c[p+4>>2]=e;c[n>>2]=f;c[l>>2]=g;do if(c[(c[n>>2]|0)+504>>2]|0){c[j>>2]=c[(c[n>>2]|0)+504>>2];if((d[c[c[l>>2]>>2]>>0]|0|0)==255)c[(c[j>>2]|0)+8>>2]=1;p=k;if((((c[p>>2]|0)==-1?(c[p+4>>2]|0)==-1:0)?(d[c[c[l>>2]>>2]>>0]|0|0)==255:0)?(c[(c[l>>2]|0)+4>>2]|0)>2:0){a[i>>0]=((d[(c[c[l>>2]>>2]|0)+2>>0]|0)&240)>>4;do switch(d[i>>0]|0|0){case 0:{c[h>>2]=-1;break}case 1:{c[h>>2]=192;break}case 2:{c[h>>2]=576;break}case 3:{c[h>>2]=1152;break}case 4:{c[h>>2]=2304;break}case 5:{c[h>>2]=4608;break}case 6:{c[h>>2]=-1;break}case 7:{c[h>>2]=-1;break}case 8:{c[h>>2]=256;break}case 9:{c[h>>2]=512;break}case 10:{c[h>>2]=1024;break}case 11:{c[h>>2]=2048;break}case 12:{c[h>>2]=4096;break}case 13:{c[h>>2]=8192;break}case 14:{c[h>>2]=16384;break}case 15:{c[h>>2]=32768;break}default:c[h>>2]=-1}while(0);if((c[h>>2]|0)==-1)break;n=c[j>>2]|0;f=c[h>>2]|0;f=we(c[n>>2]|0,c[n+4>>2]|0,f|0,((f|0)<0)<<31>>31|0)|0;n=t()|0;p=k;c[p>>2]=f;c[p+4>>2]=n;break}p=k;if(((c[p>>2]|0)==-1?(c[p+4>>2]|0)==-1:0)?(c[(c[j>>2]|0)+8>>2]|0)==0:0){p=k;c[p>>2]=0;c[p+4>>2]=0}}else{p=Hd(16)|0;c[(c[n>>2]|0)+504>>2]=p;if(c[(c[n>>2]|0)+504>>2]|0){c[j>>2]=c[(c[n>>2]|0)+504>>2];p=c[j>>2]|0;c[p>>2]=0;c[p+4>>2]=0;c[(c[j>>2]|0)+8>>2]=0;break}n=m;c[n>>2]=-1;c[n+4>>2]=-1;n=m;p=n;p=c[p>>2]|0;n=n+4|0;n=c[n>>2]|0;s(n|0);K=o;return p|0}while(0);n=k;p=c[n+4>>2]|0;f=c[j>>2]|0;c[f>>2]=c[n>>2];c[f+4>>2]=p;f=k;p=c[f+4>>2]|0;n=m;c[n>>2]=c[f>>2];c[n+4>>2]=p;n=m;p=n;p=c[p>>2]|0;n=n+4|0;n=c[n>>2]|0;s(n|0);K=o;return p|0}function gc(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=K;K=K+48|0;l=n+36|0;k=n+32|0;m=n+28|0;p=n+24|0;o=n+20|0;i=n+12|0;h=n;j=n+8|0;c[k>>2]=a;c[m>>2]=b;c[p>>2]=e;c[o>>2]=f;c[n+16>>2]=g;c[i>>2]=c[p>>2];g=h;c[g>>2]=0;c[g+4>>2]=0;if((c[o>>2]|0)<51){c[l>>2]=0;p=c[l>>2]|0;K=n;return p|0}else{b=(d[(c[i>>2]|0)+27>>0]|0)<<12;g=(d[(c[i>>2]|0)+28>>0]|0)<<4;o=(d[(c[i>>2]|0)+29>>0]|0)>>4&15;p=h;c[p>>2]=b|g|o;c[p+4>>2]=((b|0)<0)<<31>>31|((g|0)<0)<<31>>31|((o|0)<0)<<31>>31;p=h;id(c[k>>2]|0,c[m>>2]|0,c[p>>2]|0,c[p+4>>2]|0,1e3,0)|0;c[j>>2]=(xc((c[i>>2]|0)+7|0)|0)&65535;sc(c[k>>2]|0,c[m>>2]|0,c[j>>2]|0)|0;c[l>>2]=1;p=c[l>>2]|0;K=n;return p|0}return 0}function hc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=K;K=K+48|0;k=m+40|0;j=m+36|0;l=m+32|0;o=m+28|0;n=m+24|0;i=m+16|0;h=m+8|0;g=m;c[j>>2]=a;c[l>>2]=b;c[o>>2]=d;c[n>>2]=e;c[m+20>>2]=f;c[i>>2]=c[o>>2];f=h;c[f>>2]=0;c[f+4>>2]=0;f=g;c[f>>2]=0;c[f+4>>2]=0;if((c[n>>2]|0)<28){c[k>>2]=0;o=c[k>>2]|0;K=m;return o|0}else{b=wc((c[i>>2]|0)+8|0)|0;n=t()|0;f=h;c[f>>2]=b;c[f+4>>2]=n;f=wc((c[i>>2]|0)+16|0)|0;n=t()|0;b=g;c[b>>2]=f;c[b+4>>2]=n;b=c[j>>2]|0;l=c[l>>2]|0;n=h;f=c[n>>2]|0;n=c[n+4>>2]|0;o=g;o=Ce(1e3,0,c[o>>2]|0,c[o+4>>2]|0)|0;id(b,l,f,n,o,t()|0)|0;c[k>>2]=1;o=c[k>>2]|0;K=m;return o|0}return 0}function ic(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=K;K=K+48|0;k=m+36|0;j=m+32|0;l=m+28|0;o=m+24|0;n=m+20|0;h=m+12|0;g=m;i=m+8|0;c[j>>2]=a;c[l>>2]=b;c[o>>2]=d;c[n>>2]=e;c[m+16>>2]=f;c[h>>2]=c[o>>2];f=g;c[f>>2]=0;c[f+4>>2]=0;if((c[n>>2]|0)<56){c[k>>2]=0;o=c[k>>2]|0;K=m;return o|0}else{n=vc((c[h>>2]|0)+40|0)|0;o=g;c[o>>2]=n;c[o+4>>2]=((n|0)<0)<<31>>31;o=g;id(c[j>>2]|0,c[l>>2]|0,c[o>>2]|0,c[o+4>>2]|0,1e3,0)|0;o=vc((c[h>>2]|0)+52|0)|0;o=we(o|0,((o|0)<0)<<31>>31|0,2,0)|0;t()|0;c[i>>2]=o;sc(c[j>>2]|0,c[l>>2]|0,c[i>>2]|0)|0;c[k>>2]=1;o=c[k>>2]|0;K=m;return o|0}return 0}function jc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=K;K=K+32|0;h=j+8|0;g=j;i=j+24|0;f=j+16|0;k=g;c[k>>2]=a;c[k+4>>2]=b;c[i>>2]=d;c[j+20>>2]=e;c[f>>2]=c[(c[i>>2]|0)+504>>2];do if(!(c[(c[i>>2]|0)+504>>2]|0)){k=Hd(12)|0;c[(c[i>>2]|0)+504>>2]=k;if(!(c[(c[i>>2]|0)+504>>2]|0)){k=h;c[k>>2]=-1;c[k+4>>2]=-1;break}else{c[f>>2]=c[(c[i>>2]|0)+504>>2];c[(c[f>>2]|0)+8>>2]=0;c[(c[f>>2]|0)+4>>2]=256;c[c[f>>2]>>2]=1;k=h;c[k>>2]=0;c[k+4>>2]=0;break}}else{a=c[f>>2]|0;if((c[c[f>>2]>>2]|0)<2)c[a>>2]=(c[a>>2]|0)+1;else c[a+8>>2]=1;k=g;d=c[k+4>>2]|0;if((d|0)>-1|(d|0)==-1&(c[k>>2]|0)>>>0>4294967295){i=c[g+4>>2]|0;k=h;c[k>>2]=c[g>>2];c[k+4>>2]=i;break}if(!(c[(c[f>>2]|0)+8>>2]|0)){k=h;c[k>>2]=0;c[k+4>>2]=0;break}k=(c[i>>2]|0)+488|0;g=c[k+4>>2]|0;if((g|0)>0|(g|0)==0&(c[k>>2]|0)>>>0>0){i=(c[i>>2]|0)+488|0;g=c[(c[f>>2]|0)+4>>2]|0;g=we(c[i>>2]|0,c[i+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0;i=t()|0;k=h;c[k>>2]=g;c[k+4>>2]=i;break}else{k=h;c[k>>2]=-1;c[k+4>>2]=-1;break}}while(0);i=h;k=c[i>>2]|0;s(c[i+4>>2]|0);K=j;return k|0}function kc(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=K;K=K+48|0;o=q+36|0;n=q+32|0;p=q+28|0;s=q+24|0;r=q+20|0;l=q+12|0;j=q+8|0;i=q+4|0;k=q+40|0;m=q;c[n>>2]=b;c[p>>2]=e;c[s>>2]=f;c[r>>2]=g;c[q+16>>2]=h;c[l>>2]=c[s>>2];a[k>>0]=0;if((c[r>>2]|0)<64){c[o>>2]=0;s=c[o>>2]|0;K=q;return s|0}else{c[j>>2]=vc((c[l>>2]|0)+24|0)|0;c[i>>2]=vc((c[l>>2]|0)+28|0)|0;a[k>>0]=a[(c[l>>2]|0)+15>>0]|0;c[m>>2]=d[(c[l>>2]|0)+11>>0];e=c[n>>2]|0;h=c[p>>2]|0;r=c[j>>2]|0;s=c[i>>2]|0;s=Ce(1e3,0,s|0,((s|0)<0)<<31>>31|0)|0;id(e,h,r,((r|0)<0)<<31>>31,s,t()|0)|0;bd(c[n>>2]|0,c[p>>2]|0,d[k>>0]|0)|0;sc(c[n>>2]|0,c[p>>2]|0,c[m>>2]|0)|0;c[o>>2]=1;s=c[o>>2]|0;K=q;return s|0}return 0}function lc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=K;K=K+32|0;l=n+28|0;k=n+24|0;m=n+20|0;g=n+16|0;j=n+12|0;h=n+4|0;i=n;c[k>>2]=a;c[m>>2]=b;c[g>>2]=d;c[j>>2]=e;c[n+8>>2]=f;c[h>>2]=22;c[i>>2]=Hd(48)|0;if(!(c[i>>2]|0)){c[l>>2]=-1;f=c[l>>2]|0;K=n;return f|0}if((ld(c[i>>2]|0,c[g>>2]|0,c[j>>2]|0)|0)==-1){Id(c[i>>2]|0);c[l>>2]=-1;f=c[l>>2]|0;K=n;return f|0}else{e=c[k>>2]|0;j=c[m>>2]|0;a=Ce(2,0,c[(c[i>>2]|0)+32>>2]|0,0)|0;b=t()|0;f=Ce(1e3,0,c[(c[i>>2]|0)+36>>2]|0,0)|0;id(e,j,a,b,f,t()|0)|0;bd(c[k>>2]|0,c[m>>2]|0,c[h>>2]|0)|0;sc(c[k>>2]|0,c[m>>2]|0,0)|0;Id(c[i>>2]|0);c[l>>2]=1;f=c[l>>2]|0;K=n;return f|0}return 0}function mc(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=K;K=K+32|0;l=n+24|0;k=n+20|0;m=n+16|0;i=n+12|0;o=n+8|0;j=n+28|0;c[k>>2]=b;c[m>>2]=e;c[i>>2]=f;c[o>>2]=g;c[n+4>>2]=h;c[n>>2]=c[i>>2];if((c[o>>2]|0)<19){c[l>>2]=0;o=c[l>>2]|0;K=n;return o|0}a[j>>0]=a[(c[i>>2]|0)+9>>0]|0;if((d[j>>0]|0|0)<1){c[l>>2]=0;o=c[l>>2]|0;K=n;return o|0}else{id(c[k>>2]|0,c[m>>2]|0,48e3,0,1e3,0)|0;bd(c[k>>2]|0,c[m>>2]|0,0)|0;h=c[k>>2]|0;o=c[m>>2]|0;kd(h,o,(uc((c[i>>2]|0)+10|0)|0)&65535,0)|0;sc(c[k>>2]|0,c[m>>2]|0,2)|0;c[l>>2]=1;o=c[l>>2]|0;K=n;return o|0}return 0}function nc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=K;K=K+48|0;l=m+24|0;g=m+16|0;j=m+40|0;h=m+36|0;f=m+32|0;i=m+8|0;k=m;n=g;c[n>>2]=a;c[n+4>>2]=b;c[j>>2]=d;c[h>>2]=e;c[f>>2]=c[(c[j>>2]|0)+504>>2];if(!(c[(c[j>>2]|0)+504>>2]|0)){n=Hd(16)|0;c[(c[j>>2]|0)+504>>2]=n;if(!(c[(c[j>>2]|0)+504>>2]|0)){n=l;c[n>>2]=-1;c[n+4>>2]=-1;n=l;n=c[n>>2]|0;l=l+4|0;l=c[l>>2]|0;s(l|0);K=m;return n|0}else{c[f>>2]=c[(c[j>>2]|0)+504>>2];c[(c[f>>2]|0)+4>>2]=0;c[c[f>>2]>>2]=1;n=(c[f>>2]|0)+8|0;c[n>>2]=0;c[n+4>>2]=0;n=l;c[n>>2]=0;c[n+4>>2]=0;n=l;n=c[n>>2]|0;l=l+4|0;l=c[l>>2]|0;s(l|0);K=m;return n|0}}a=c[f>>2]|0;if((c[c[f>>2]>>2]|0)<2)c[a>>2]=(c[a>>2]|0)+1;else c[a+4>>2]=1;n=g;d=c[n+4>>2]|0;if((d|0)>-1|(d|0)==-1&(c[n>>2]|0)>>>0>4294967295){j=g;k=c[j+4>>2]|0;n=l;c[n>>2]=c[j>>2];c[n+4>>2]=k;n=l;n=c[n>>2]|0;l=l+4|0;l=c[l>>2]|0;s(l|0);K=m;return n|0}if(!(c[(c[f>>2]|0)+4>>2]|0)){n=l;c[n>>2]=0;c[n+4>>2]=0;n=l;n=c[n>>2]|0;l=l+4|0;l=c[l>>2]|0;s(l|0);K=m;return n|0}g=tc(c[h>>2]|0)|0;h=t()|0;n=i;c[n>>2]=g;c[n+4>>2]=h;n=(c[j>>2]|0)+488|0;h=c[n+4>>2]|0;if(!((h|0)>0|(h|0)==0&(c[n>>2]|0)>>>0>0)){j=i;n=(c[f>>2]|0)+8|0;k=n;j=we(c[k>>2]|0,c[k+4>>2]|0,c[j>>2]|0,c[j+4>>2]|0)|0;k=t()|0;c[n>>2]=j;c[n+4>>2]=k;n=l;c[n>>2]=-1;c[n+4>>2]=-1;n=l;n=c[n>>2]|0;l=l+4|0;l=c[l>>2]|0;s(l|0);K=m;return n|0}g=(c[j>>2]|0)+488|0;n=i;n=we(c[g>>2]|0,c[g+4>>2]|0,c[n>>2]|0,c[n+4>>2]|0)|0;g=t()|0;i=k;c[i>>2]=n;c[i+4>>2]=g;i=k;g=c[i+4>>2]|0;n=(c[j>>2]|0)+496|0;h=c[n+4>>2]|0;if((g|0)>(h|0)|((g|0)==(h|0)?(c[i>>2]|0)>>>0>(c[n>>2]|0)>>>0:0)?(i=(c[j>>2]|0)+496|0,g=c[i+4>>2]|0,n=(c[j>>2]|0)+488|0,h=c[n+4>>2]|0,(g|0)>(h|0)|((g|0)==(h|0)?(c[i>>2]|0)>>>0>=(c[n>>2]|0)>>>0:0)):0){b=(c[j>>2]|0)+496|0;a=c[b>>2]|0;b=c[b+4>>2]|0}else{b=k;a=c[b>>2]|0;b=c[b+4>>2]|0}n=l;c[n>>2]=a;c[n+4>>2]=b;n=l;n=c[n>>2]|0;l=l+4|0;l=c[l>>2]|0;s(l|0);K=m;return n|0}function oc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=K;K=K+32|0;m=k+8|0;l=k+28|0;i=k+24|0;h=k+20|0;g=k+16|0;j=k;n=m;c[n>>2]=a;c[n+4>>2]=b;c[l>>2]=d;c[i>>2]=e;c[h>>2]=f;c[g>>2]=c[(c[l>>2]|0)+504>>2];d=m;l=c[d+4>>2]|0;e=(c[g>>2]|0)+8|0;f=c[e+4>>2]|0;b=m;a=c[b>>2]|0;b=c[b+4>>2]|0;if(!((l|0)>(f|0)|((l|0)==(f|0)?(c[d>>2]|0)>>>0>=(c[e>>2]|0)>>>0:0))){n=j;c[n>>2]=a;c[n+4>>2]=b;n=tc(c[i>>2]|0)|0;l=t()|0;m=(c[g>>2]|0)+8|0;i=m;l=xe(c[i>>2]|0,c[i+4>>2]|0,n|0,l|0)|0;n=t()|0;c[m>>2]=l;c[m+4>>2]=n;m=j;n=m;n=c[n>>2]|0;m=m+4|0;m=c[m>>2]|0;s(m|0);K=k;return n|0}n=tc(c[h>>2]|0)|0;n=xe(a|0,b|0,n|0,t()|0)|0;i=t()|0;m=j;c[m>>2]=n;c[m+4>>2]=i;m=j;i=c[m+4>>2]|0;n=(c[g>>2]|0)+8|0;l=c[n+4>>2]|0;if((i|0)<(l|0)|((i|0)==(l|0)?(c[m>>2]|0)>>>0<(c[n>>2]|0)>>>0:0)){l=(c[g>>2]|0)+8|0;m=c[l+4>>2]|0;n=j;c[n>>2]=c[l>>2];c[n+4>>2]=m}m=(c[g>>2]|0)+8|0;c[m>>2]=0;c[m+4>>2]=0;m=j;n=m;n=c[n>>2]|0;m=m+4|0;m=c[m>>2]|0;s(m|0);K=k;return n|0}function pc(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=K;K=K+48|0;m=o+32|0;l=o+28|0;n=o+24|0;h=o+20|0;p=o+16|0;k=o+8|0;j=o+4|0;i=o;c[l>>2]=a;c[n>>2]=b;c[h>>2]=e;c[p>>2]=f;c[o+12>>2]=g;c[k>>2]=c[h>>2];if((c[p>>2]|0)<26){c[m>>2]=0;p=c[m>>2]|0;K=o;return p|0}if((d[c[h>>2]>>0]|0|0)!=79){c[m>>2]=0;p=c[m>>2]|0;K=o;return p|0}if(le((c[h>>2]|0)+1|0,2850,4)|0){c[m>>2]=0;p=c[m>>2]|0;K=o;return p|0}if((d[(c[h>>2]|0)+5>>0]|0|0)!=1){c[m>>2]=0;p=c[m>>2]|0;K=o;return p|0}if((d[(c[h>>2]|0)+6>>0]|0|0)!=1){c[m>>2]=0;p=c[m>>2]|0;K=o;return p|0}else{c[j>>2]=rc((c[k>>2]|0)+18|0)|0;c[i>>2]=rc((c[k>>2]|0)+22|0)|0;a=c[l>>2]|0;b=c[n>>2]|0;g=c[j>>2]|0;p=c[i>>2]|0;p=Ce(1e3,0,p|0,((p|0)<0)<<31>>31|0)|0;id(a,b,g,((g|0)<0)<<31>>31,p,t()|0)|0;bd(c[l>>2]|0,c[n>>2]|0,32)|0;sc(c[l>>2]|0,c[n>>2]|0,1)|0;c[m>>2]=1;p=c[m>>2]|0;K=o;return p|0}return 0}function qc(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,u=0,v=0;u=K;K=K+80|0;p=u+40|0;i=u+32|0;q=u+68|0;g=u+64|0;l=u+60|0;n=u+56|0;r=u+52|0;h=u+48|0;o=u+24|0;m=u+16|0;j=u+8|0;k=u;v=i;c[v>>2]=a;c[v+4>>2]=b;c[q>>2]=e;c[g>>2]=f;c[h>>2]=c[(c[q>>2]|0)+504>>2];if(!(c[(c[q>>2]|0)+504>>2]|0)){v=Hd(8)|0;c[(c[q>>2]|0)+504>>2]=v;if(!(c[(c[q>>2]|0)+504>>2]|0)){r=p;c[r>>2]=-1;c[r+4>>2]=-1;r=p;v=r;v=c[v>>2]|0;r=r+4|0;r=c[r>>2]|0;s(r|0);K=u;return v|0}else{c[h>>2]=c[(c[q>>2]|0)+504>>2];c[(c[h>>2]|0)+4>>2]=0;c[c[h>>2]>>2]=1;r=p;c[r>>2]=0;c[r+4>>2]=0;r=p;v=r;v=c[v>>2]|0;r=r+4|0;r=c[r>>2]|0;s(r|0);K=u;return v|0}}if(!(c[(c[g>>2]|0)+4>>2]|0))a=1;else a=(d[c[c[g>>2]>>2]>>0]|0|0)==79;c[l>>2]=a&1;if(!(c[l>>2]|0)?(c[(c[g>>2]|0)+4>>2]|0)>0:0)a=((d[c[c[g>>2]>>2]>>0]|0)&1|0)==0;else a=0;c[n>>2]=a&1;if(!(c[l>>2]|0)?(c[(c[g>>2]|0)+4>>2]|0)>0:0)a=((d[c[c[g>>2]>>2]>>0]|0)>>4&1|0)!=0;else a=0;c[r>>2]=a&1;a=c[h>>2]|0;if(c[l>>2]|0)c[a>>2]=(c[a>>2]|0)+1;else c[a+4>>2]=1;v=i;g=c[v+4>>2]|0;if((g|0)>-1|(g|0)==-1&(c[v>>2]|0)>>>0>4294967295){q=i;v=c[q+4>>2]|0;r=p;c[r>>2]=c[q>>2];c[r+4>>2]=v;r=p;v=r;v=c[v>>2]|0;r=r+4|0;r=c[r>>2]|0;s(r|0);K=u;return v|0}if(!(c[(c[h>>2]|0)+4>>2]|0)){r=p;c[r>>2]=0;c[r+4>>2]=0;r=p;v=r;v=c[v>>2]|0;r=r+4|0;r=c[r>>2]|0;s(r|0);K=u;return v|0}v=(c[q>>2]|0)+488|0;i=c[v+4>>2]|0;if(!((i|0)>0|(i|0)==0&(c[v>>2]|0)>>>0>0)){r=p;c[r>>2]=-1;c[r+4>>2]=-1;r=p;v=r;v=c[v>>2]|0;r=r+4|0;r=c[r>>2]|0;s(r|0);K=u;return v|0}b=(c[q>>2]|0)+488|0;a=c[b>>2]|0;b=c[b+4>>2]|0;if(c[l>>2]|0){r=p;c[r>>2]=a;c[r+4>>2]=b;r=p;v=r;v=c[v>>2]|0;r=r+4|0;r=c[r>>2]|0;s(r|0);K=u;return v|0}i=Ee(a|0,b|0,32)|0;v=t()|0;l=o;c[l>>2]=i;c[l+4>>2]=v;l=(c[q>>2]|0)+488|0;l=Ee(c[l>>2]|0,c[l+4>>2]|0,30)|0;t()|0;v=m;c[v>>2]=l&3;c[v+4>>2]=0;q=(c[q>>2]|0)+488|0;q=Ee(c[q>>2]|0,c[q+4>>2]|0,3)|0;t()|0;v=j;c[v>>2]=q&134217727;c[v+4>>2]=0;if(c[n>>2]|0){v=j;c[v>>2]=0;c[v+4>>2]=0}else{n=j;n=we(c[n>>2]|0,c[n+4>>2]|0,1,0)|0;q=t()|0;v=j;c[v>>2]=n;c[v+4>>2]=q}do if(!(c[r>>2]|0)){v=m;if((c[v>>2]|0)==3&(c[v+4>>2]|0)==0){v=m;c[v>>2]=0;c[v+4>>2]=0;break}else{q=m;q=we(c[q>>2]|0,c[q+4>>2]|0,1,0)|0;r=t()|0;v=m;c[v>>2]=q;c[v+4>>2]=r;break}}else{q=o;q=we(c[q>>2]|0,c[q+4>>2]|0,1,0)|0;r=t()|0;v=o;c[v>>2]=q;c[v+4>>2]=r;v=m;c[v>>2]=3;c[v+4>>2]=0}while(0);v=c[o>>2]|0;o=m;o=Fe(c[o>>2]|0,c[o+4>>2]|0,30)|0;v=v|(t()|0);r=j;r=Fe(c[r>>2]|0,c[r+4>>2]|0,3)|0;v=v|(t()|0);q=k;c[q>>2]=o|r;c[q+4>>2]=v;q=k;v=c[q+4>>2]|0;r=p;c[r>>2]=c[q>>2];c[r+4>>2]=v;r=p;v=r;v=c[v>>2]|0;r=r+4|0;r=c[r>>2]|0;s(r|0);K=u;return v|0}function rc(a){a=a|0;var b=0,e=0;e=K;K=K+16|0;b=e;c[b>>2]=a;K=e;return (d[c[b>>2]>>0]|0)<<24|(d[(c[b>>2]|0)+1>>0]|0)<<16|(d[(c[b>>2]|0)+2>>0]|0)<<8|(d[(c[b>>2]|0)+3>>0]|0)|0}function sc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=K;K=K+32|0;g=j+16|0;f=j+12|0;h=j+8|0;e=j+4|0;i=j;c[f>>2]=a;c[h>>2]=b;c[e>>2]=d;if(!(c[f>>2]|0)){c[g>>2]=-2;i=c[g>>2]|0;K=j;return i|0}c[i>>2]=$a(c[f>>2]|0,c[h>>2]|0)|0;if(!(c[i>>2]|0)){c[g>>2]=-20;i=c[g>>2]|0;K=j;return i|0}else{c[(c[i>>2]|0)+364>>2]=c[e>>2];c[g>>2]=0;i=c[g>>2]|0;K=j;return i|0}return 0}function tc(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=K;K=K+32|0;j=l;i=l+16|0;k=l+22|0;e=l+21|0;h=l+20|0;g=l+12|0;f=l+8|0;c[i>>2]=b;do if((c[(c[i>>2]|0)+4>>2]|0)>=1){a[k>>0]=a[c[c[i>>2]>>2]>>0]|0;a[e>>0]=(d[k>>0]|0)&3;c[g>>2]=c[400+((d[k>>0]|0)>>3<<2)>>2];if((d[e>>0]|0|0)==3?(c[(c[i>>2]|0)+4>>2]|0)<2:0){k=j;c[k>>2]=0;c[k+4>>2]=0;break}switch(d[e>>0]|0|0){case 0:{a[h>>0]=1;break}case 2:case 1:{a[h>>0]=2;break}case 3:{a[h>>0]=(d[(c[c[i>>2]>>2]|0)+1>>0]|0)&63;break}default:{}}c[f>>2]=p(c[g>>2]|0,d[h>>0]|0)|0;if((c[f>>2]|0)>5760){k=j;c[k>>2]=0;c[k+4>>2]=0;break}else{i=c[f>>2]|0;k=j;c[k>>2]=i;c[k+4>>2]=((i|0)<0)<<31>>31;break}}else{k=j;c[k>>2]=0;c[k+4>>2]=0}while(0);k=c[j>>2]|0;s(c[j+4>>2]|0);K=l;return k|0}function uc(a){a=a|0;var b=0,e=0;e=K;K=K+16|0;b=e;c[b>>2]=a;K=e;return (d[c[b>>2]>>0]|0|(d[(c[b>>2]|0)+1>>0]|0)<<8)&65535|0}function vc(a){a=a|0;var b=0,e=0;e=K;K=K+16|0;b=e;c[b>>2]=a;K=e;return d[c[b>>2]>>0]|0|(d[(c[b>>2]|0)+1>>0]|0)<<8|(d[(c[b>>2]|0)+2>>0]|0)<<16|(d[(c[b>>2]|0)+3>>0]|0)<<24|0}function wc(a){a=a|0;var b=0,e=0,f=0,g=0;b=K;K=K+16|0;g=b+8|0;f=b+4|0;e=b;c[g>>2]=a;c[f>>2]=d[c[g>>2]>>0]|0|(d[(c[g>>2]|0)+1>>0]|0)<<8|(d[(c[g>>2]|0)+2>>0]|0)<<16|(d[(c[g>>2]|0)+3>>0]|0)<<24;c[e>>2]=d[(c[g>>2]|0)+4>>0]|0|(d[(c[g>>2]|0)+5>>0]|0)<<8|(d[(c[g>>2]|0)+6>>0]|0)<<16|(d[(c[g>>2]|0)+7>>0]|0)<<24;a=c[f>>2]|0;s(c[e>>2]|0);K=b;return a|0}function xc(a){a=a|0;var b=0,e=0;e=K;K=K+16|0;b=e;c[b>>2]=a;K=e;return ((d[c[b>>2]>>0]|0)<<8|(d[(c[b>>2]|0)+1>>0]|0))&65535|0}function yc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=K;K=K+16|0;h=e+8|0;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=d;d=zc(c[h>>2]|0,c[g>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+12>>2]|0)|0;K=e;return d|0}function zc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=K;K=K+32|0;k=m+24|0;j=m+20|0;l=m+16|0;g=m+12|0;h=m+8|0;i=m+4|0;f=m;c[j>>2]=a;c[l>>2]=b;c[g>>2]=d;c[h>>2]=e;c[i>>2]=0;while(1){if((c[i>>2]|0)>=15){f=7;break}c[f>>2]=16+((c[i>>2]|0)*24|0);if((c[h>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0)?(le(c[g>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0)==0:0){f=5;break}c[i>>2]=(c[i>>2]|0)+1}if((f|0)==5){Gc(c[j>>2]|0,c[l>>2]|0,c[i>>2]|0)|0;c[k>>2]=1;l=c[k>>2]|0;K=m;return l|0}else if((f|0)==7){Gc(c[j>>2]|0,c[l>>2]|0,15)|0;c[k>>2]=0;l=c[k>>2]|0;K=m;return l|0}return 0}function Ac(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=K;K=K+32|0;i=l+20|0;h=l+16|0;g=l+12|0;j=l+8|0;k=l+4|0;f=l;c[h>>2]=a;c[g>>2]=b;c[j>>2]=d;c[k>>2]=e;c[f>>2]=0;c[f>>2]=Hc(c[h>>2]|0,c[j>>2]|0)|0;if((c[f>>2]|0)<0|(c[f>>2]|0)>=15){c[i>>2]=0;k=c[i>>2]|0;K=l;return k|0}if((c[f>>2]|0)==6?(sd(c[g>>2]|0)|0)==0:0){c[i>>2]=Bc(c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+8>>2]|0,c[(c[g>>2]|0)+12>>2]|0,c[k>>2]|0)|0;k=c[i>>2]|0;K=l;return k|0}c[i>>2]=R[c[16+((c[f>>2]|0)*24|0)+12>>2]&31](c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+8>>2]|0,c[(c[g>>2]|0)+12>>2]|0,c[k>>2]|0)|0;k=c[i>>2]|0;K=l;return k|0}function Bc(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=K;K=K+64|0;o=q+52|0;n=q+48|0;p=q+44|0;s=q+40|0;r=q+36|0;l=q+28|0;h=q+24|0;j=q+8|0;i=q;k=q+20|0;m=q+16|0;c[n>>2]=a;c[p>>2]=b;c[s>>2]=e;c[r>>2]=f;c[q+32>>2]=g;c[l>>2]=c[s>>2];g=j;c[g>>2]=0;c[g+4>>2]=0;g=i;c[g>>2]=0;c[g+4>>2]=0;if((c[r>>2]|0)<48){c[o>>2]=0;s=c[o>>2]|0;K=q;return s|0}c[h>>2]=vc((c[l>>2]|0)+12|0)|0;if(db(c[n>>2]|0,c[h>>2]|0)|0){c[o>>2]=1;s=c[o>>2]|0;K=q;return s|0}else{a=wc((c[l>>2]|0)+20|0)|0;b=t()|0;r=j;c[r>>2]=a;c[r+4>>2]=b;r=wc((c[l>>2]|0)+28|0)|0;b=t()|0;a=i;c[a>>2]=r;c[a+4>>2]=b;c[k>>2]=d[(c[l>>2]|0)+48>>0];a=c[n>>2]|0;b=c[h>>2]|0;r=j;g=c[r>>2]|0;r=c[r+4>>2]|0;s=i;s=Ce(1e3,0,c[s>>2]|0,c[s+4>>2]|0)|0;id(a,b,g,r,s,t()|0)|0;bd(c[n>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;c[m>>2]=Ic(c[n>>2]|0,c[p>>2]|0)|0;sc(c[n>>2]|0,c[p>>2]|0,(c[m>>2]|0)+1|0)|0;c[o>>2]=1;s=c[o>>2]|0;K=q;return s|0}return 0}function Cc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=K;K=K+32|0;i=l+20|0;g=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;f=l;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[f>>2]=0;c[f>>2]=Hc(c[g>>2]|0,c[j>>2]|0)|0;if((c[f>>2]|0)<0|(c[f>>2]|0)>=15){c[i>>2]=0;k=c[i>>2]|0;K=l;return k|0}if((c[f>>2]|0)==6?(c[(c[h>>2]|0)+8>>2]|0)==0:0){c[i>>2]=Bc(c[g>>2]|0,c[j>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0,c[k>>2]|0)|0;k=c[i>>2]|0;K=l;return k|0}c[i>>2]=R[c[16+((c[f>>2]|0)*24|0)+12>>2]&31](c[g>>2]|0,c[j>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0,c[k>>2]|0)|0;k=c[i>>2]|0;K=l;return k|0}function Dc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=K;K=K+48|0;k=m+16|0;g=m+32|0;h=m+8|0;l=m+28|0;i=m+24|0;j=m;c[g>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;c[l>>2]=e;c[i>>2]=f;if(c[16+((c[g>>2]|0)*24|0)+16>>2]|0){e=h;i=Q[c[16+((c[g>>2]|0)*24|0)+16>>2]&15](c[e>>2]|0,c[e+4>>2]|0,c[l>>2]|0,c[i>>2]|0)|0;e=t()|0;l=j;c[l>>2]=i;c[l+4>>2]=e;l=c[j+4>>2]|0;e=k;c[e>>2]=c[j>>2];c[e+4>>2]=l;e=k;l=e;l=c[l>>2]|0;e=e+4|0;e=c[e>>2]|0;s(e|0);K=m;return l|0}else{j=h;l=c[j+4>>2]|0;e=k;c[e>>2]=c[j>>2];c[e+4>>2]=l;e=k;l=e;l=c[l>>2]|0;e=e+4|0;e=c[e>>2]|0;s(e|0);K=m;return l|0}return 0}function Ec(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=K;K=K+32|0;k=n+8|0;h=n+28|0;j=n;l=n+24|0;m=n+20|0;i=n+16|0;c[h>>2]=a;a=j;c[a>>2]=b;c[a+4>>2]=d;c[l>>2]=e;c[m>>2]=f;c[i>>2]=g;if(c[16+((c[h>>2]|0)*24|0)+20>>2]|0){f=j;l=R[c[16+((c[h>>2]|0)*24|0)+20>>2]&31](c[f>>2]|0,c[f+4>>2]|0,c[l>>2]|0,c[m>>2]|0,c[i>>2]|0)|0;m=t()|0;f=k;c[f>>2]=l;c[f+4>>2]=m;f=k;m=f;m=c[m>>2]|0;f=f+4|0;f=c[f>>2]|0;s(f|0);K=n;return m|0}else{f=k;c[f>>2]=0;c[f+4>>2]=0;f=k;m=f;m=c[m>>2]|0;f=f+4|0;f=c[f>>2]|0;s(f|0);K=n;return m|0}return 0}function Fc(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=K;K=K+32|0;i=l+20|0;m=l+16|0;k=l+12|0;j=l+8|0;h=l+4|0;g=l;c[i>>2]=a;c[m>>2]=b;c[k>>2]=e;c[j>>2]=f;c[h>>2]=-1;c[g>>2]=-1;switch(c[(c[m>>2]|0)+360>>2]|0){case 1:{if((c[(c[j>>2]|0)+4>>2]|0)>7?(le(c[c[j>>2]>>2]|0,2855,7)|0)==0:0)c[h>>2]=7;break}case 3:case 2:{c[h>>2]=0;break}case 0:{if((c[(c[j>>2]|0)+4>>2]|0)>7?(le(c[c[j>>2]>>2]|0,2863,7)|0)==0:0)c[h>>2]=7;break}case 11:{if((c[(c[j>>2]|0)+4>>2]|0)>9?(le(c[c[j>>2]>>2]|0,2871,8)|0)==0:0)c[h>>2]=9;break}case 8:{if((c[(c[j>>2]|0)+4>>2]|0)>4?((d[c[c[j>>2]>>2]>>0]|0)&7|0)==4:0){c[g>>2]=((d[(c[c[j>>2]>>2]|0)+1>>0]|0)<<16)+((d[(c[c[j>>2]>>2]|0)+2>>0]|0)<<8)+(d[(c[c[j>>2]>>2]|0)+3>>0]|0);c[h>>2]=4}break}case 13:{if((c[(c[j>>2]|0)+4>>2]|0)>8?(le(c[c[j>>2]>>2]|0,2880,8)|0)==0:0)c[h>>2]=8;break}case 14:{if((c[(c[j>>2]|0)+4>>2]|0)>7?(le(c[c[j>>2]>>2]|0,2889,7)|0)==0:0)c[h>>2]=7;break}default:{}}if((c[g>>2]|0)==-1)c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)-(c[h>>2]|0);if((c[h>>2]|0)<0){K=l;return 0}lb(c[i>>2]|0,c[k>>2]|0,(c[c[j>>2]>>2]|0)+(c[h>>2]|0)|0,c[g>>2]|0)|0;K=l;return 0}function Gc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=K;K=K+32|0;f=h+16|0;j=h+12|0;i=h+8|0;e=h+4|0;g=h;c[j>>2]=a;c[i>>2]=b;c[e>>2]=d;c[g>>2]=$a(c[j>>2]|0,c[i>>2]|0)|0;if(!(c[g>>2]|0)){c[f>>2]=-20;j=c[f>>2]|0;K=h;return j|0}else{c[(c[g>>2]|0)+360>>2]=c[e>>2];c[f>>2]=0;j=c[f>>2]|0;K=h;return j|0}return 0}function Hc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=K;K=K+16|0;e=h+12|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;if(!(c[d>>2]|0)){c[e>>2]=-2;g=c[e>>2]|0;K=h;return g|0}c[g>>2]=$a(c[d>>2]|0,c[f>>2]|0)|0;if(!(c[g>>2]|0)){c[e>>2]=-20;g=c[e>>2]|0;K=h;return g|0}else{c[e>>2]=c[(c[g>>2]|0)+360>>2];g=c[e>>2]|0;K=h;return g|0}return 0}function Ic(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=K;K=K+16|0;e=h+12|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;if(!(c[d>>2]|0)){c[e>>2]=-2;g=c[e>>2]|0;K=h;return g|0}c[g>>2]=$a(c[d>>2]|0,c[f>>2]|0)|0;if(!(c[g>>2]|0)){c[e>>2]=-20;g=c[e>>2]|0;K=h;return g|0}else{c[e>>2]=c[(c[g>>2]|0)+364>>2];g=c[e>>2]|0;K=h;return g|0}return 0}function Jc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=K;K=K+32|0;g=j+16|0;e=j+12|0;h=j+8|0;f=j+4|0;i=j;c[e>>2]=a;c[h>>2]=b;c[f>>2]=d;if(!(c[e>>2]|0)){c[g>>2]=-2;i=c[g>>2]|0;K=j;return i|0}c[i>>2]=$a(c[e>>2]|0,c[h>>2]|0)|0;if(!(c[i>>2]|0)){c[g>>2]=-20;i=c[g>>2]|0;K=j;return i|0}else{c[(c[i>>2]|0)+368>>2]=c[f>>2];c[g>>2]=0;i=c[g>>2]|0;K=j;return i|0}return 0}function Kc(){var a=0,b=0,d=0;d=K;K=K+16|0;a=d+4|0;b=d;c[b>>2]=Hd(20)|0;if(!(c[b>>2]|0)){c[a>>2]=0;b=c[a>>2]|0;K=d;return b|0}else{c[c[b>>2]>>2]=0;c[(c[b>>2]|0)+4>>2]=0;c[(c[b>>2]|0)+8>>2]=0;c[(c[b>>2]|0)+12>>2]=0;c[(c[b>>2]|0)+16>>2]=0;c[a>>2]=c[b>>2];b=c[a>>2]|0;K=d;return b|0}return 0}function Lc(a){a=a|0;var b=0,d=0;b=K;K=K+16|0;d=b;c[d>>2]=a;Mc(c[d>>2]|0);Id(c[d>>2]|0);K=b;return}function Mc(a){a=a|0;var b=0,d=0;d=K;K=K+16|0;b=d;c[b>>2]=a;if(c[(c[b>>2]|0)+8>>2]|0){Id(c[(c[b>>2]|0)+8>>2]|0);c[(c[b>>2]|0)+8>>2]=0}c[(c[b>>2]|0)+4>>2]=0;c[c[b>>2]>>2]=0;K=d;return}function Nc(a){a=a|0;var b=0,d=0,e=0;e=K;K=K+16|0;b=e+4|0;d=e;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=0;d=c[b>>2]|0;K=e;return d|0}else{c[b>>2]=c[(c[d>>2]|0)+4>>2];d=c[b>>2]|0;K=e;return d|0}return 0}function Oc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=K;K=K+16|0;e=g+8|0;f=g+4|0;d=g;c[f>>2]=a;c[d>>2]=b;if(!(c[f>>2]|0)){c[e>>2]=0;f=c[e>>2]|0;K=g;return f|0}if((c[d>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0)){c[e>>2]=0;f=c[e>>2]|0;K=g;return f|0}else{c[e>>2]=c[(c[(c[f>>2]|0)+8>>2]|0)+(c[d>>2]<<2)>>2];f=c[e>>2]|0;K=g;return f|0}return 0}function Pc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=K;K=K+32|0;j=k+20|0;h=k+16|0;e=k+12|0;g=k+8|0;i=k+4|0;f=k;c[h>>2]=a;c[e>>2]=b;c[g>>2]=d;c[f>>2]=0;while(1){if((c[f>>2]|0)>=(c[(c[h>>2]|0)+4>>2]|0)){b=6;break}c[i>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[f>>2]<<2)>>2];if(O[c[e>>2]&1](c[i>>2]|0,c[g>>2]|0)|0){b=4;break}c[f>>2]=(c[f>>2]|0)+1}if((b|0)==4){c[j>>2]=c[i>>2];j=c[j>>2]|0;K=k;return j|0}else if((b|0)==6){c[j>>2]=0;j=c[j>>2]|0;K=k;return j|0}return 0}function Qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=K;K=K+16|0;f=g+8|0;d=g+4|0;e=g;c[f>>2]=a;c[d>>2]=b;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[(c[f>>2]|0)+4>>2]|0))break;N[c[d>>2]&15](c[(c[(c[f>>2]|0)+8>>2]|0)+(c[e>>2]<<2)>>2]|0)|0;c[e>>2]=(c[e>>2]|0)+1}K=g;return 0}function Rc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=K;K=K+16|0;e=g+8|0;f=g+4|0;d=g;c[f>>2]=a;c[d>>2]=b;if(!(Sc(c[f>>2]|0)|0)){c[e>>2]=0;f=c[e>>2]|0;K=g;return f|0}else{c[(c[(c[f>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>>2]|0)-1<<2)>>2]=c[d>>2];Tc(c[f>>2]|0);c[e>>2]=c[d>>2];f=c[e>>2]|0;K=g;return f|0}return 0}function Sc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=K;K=K+16|0;e=g+12|0;f=g+8|0;b=g+4|0;d=g;c[f>>2]=a;a=(c[f>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1;do if((c[(c[f>>2]|0)+4>>2]|0)>(c[c[f>>2]>>2]|0)){if(!(c[c[f>>2]>>2]|0))c[d>>2]=1;else c[d>>2]=c[c[f>>2]>>2]<<1;c[b>>2]=Kd(c[(c[f>>2]|0)+8>>2]|0,c[d>>2]<<2)|0;if(c[b>>2]|0){c[c[f>>2]>>2]=c[d>>2];c[(c[f>>2]|0)+8>>2]=c[b>>2];break}f=(c[f>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+-1;c[e>>2]=0;f=c[e>>2]|0;K=g;return f|0}while(0);c[e>>2]=c[f>>2];f=c[e>>2]|0;K=g;return f|0}function Tc(a){a=a|0;var b=0,d=0,e=0;e=K;K=K+16|0;d=e+4|0;b=e;c[d>>2]=a;if(!(c[(c[d>>2]|0)+12>>2]|0)){K=e;return}c[b>>2]=(c[(c[d>>2]|0)+4>>2]|0)-1;while(1){if((c[b>>2]|0)<=0){b=6;break}if((P[c[(c[d>>2]|0)+12>>2]&7](c[(c[(c[d>>2]|0)+8>>2]|0)+((c[b>>2]|0)-1<<2)>>2]|0,c[(c[(c[d>>2]|0)+8>>2]|0)+(c[b>>2]<<2)>>2]|0,c[(c[d>>2]|0)+16>>2]|0)|0)<=0){b=6;break}Uc(c[(c[d>>2]|0)+8>>2]|0,c[b>>2]|0,(c[b>>2]|0)-1|0);c[b>>2]=(c[b>>2]|0)+-1}if((b|0)==6){K=e;return}}function Uc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=K;K=K+16|0;g=e+12|0;i=e+8|0;f=e+4|0;h=e;c[g>>2]=a;c[i>>2]=b;c[f>>2]=d;c[h>>2]=c[(c[g>>2]|0)+(c[i>>2]<<2)>>2];c[(c[g>>2]|0)+(c[i>>2]<<2)>>2]=c[(c[g>>2]|0)+(c[f>>2]<<2)>>2];c[(c[g>>2]|0)+(c[f>>2]<<2)>>2]=c[h>>2];K=e;return}function Vc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=K;K=K+16|0;e=f+8|0;g=f+4|0;h=f;c[e>>2]=a;c[g>>2]=b;c[h>>2]=d;c[(c[e>>2]|0)+12>>2]=c[g>>2];c[(c[e>>2]|0)+16>>2]=c[h>>2];if(!(c[g>>2]|0)){K=f;return 0}Wc(c[e>>2]|0,0,(c[(c[e>>2]|0)+4>>2]|0)-1|0);K=f;return 0}function Wc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=K;K=K+32|0;j=k+20|0;g=k+16|0;h=k+12|0;e=k+8|0;f=k+4|0;i=k;c[j>>2]=a;c[g>>2]=b;c[h>>2]=d;c[i>>2]=c[(c[j>>2]|0)+8>>2];if((c[g>>2]|0)>=(c[h>>2]|0)){K=k;return}Uc(c[i>>2]|0,c[g>>2]|0,((c[g>>2]|0)+(c[h>>2]|0)|0)/2|0);c[f>>2]=c[g>>2];c[e>>2]=(c[g>>2]|0)+1;while(1){if((c[e>>2]|0)>(c[h>>2]|0))break;if((P[c[(c[j>>2]|0)+12>>2]&7](c[(c[i>>2]|0)+(c[e>>2]<<2)>>2]|0,c[(c[i>>2]|0)+(c[g>>2]<<2)>>2]|0,c[(c[j>>2]|0)+16>>2]|0)|0)<0){d=c[i>>2]|0;a=(c[f>>2]|0)+1|0;c[f>>2]=a;Uc(d,a,c[e>>2]|0)}c[e>>2]=(c[e>>2]|0)+1}Uc(c[i>>2]|0,c[g>>2]|0,c[f>>2]|0);Wc(c[j>>2]|0,c[g>>2]|0,(c[f>>2]|0)-1|0);Wc(c[j>>2]|0,(c[f>>2]|0)+1|0,c[h>>2]|0);K=k;return}function Xc(){var a=0,b=0,d=0,e=0,f=0;f=K;K=K+16|0;e=f+12|0;a=f+8|0;d=f+4|0;b=f;c[a>>2]=Hd(8)|0;if(!(c[a>>2]|0)){c[e>>2]=0;e=c[e>>2]|0;K=f;return e|0}c[d>>2]=Hd(12)|0;if(!(c[d>>2]|0)){Id(c[a>>2]|0);c[e>>2]=0;e=c[e>>2]|0;K=f;return e|0}c[b>>2]=Hd(12)|0;if(!(c[b>>2]|0)){Id(c[d>>2]|0);Id(c[a>>2]|0);c[e>>2]=0;e=c[e>>2]|0;K=f;return e|0}else{c[c[d>>2]>>2]=c[b>>2];c[(c[d>>2]|0)+4>>2]=0;c[(c[b>>2]|0)+4>>2]=c[d>>2];c[c[b>>2]>>2]=0;c[c[a>>2]>>2]=c[d>>2];c[(c[a>>2]|0)+4>>2]=c[b>>2];c[e>>2]=c[a>>2];e=c[e>>2]|0;K=f;return e|0}return 0}function Yc(a){a=a|0;var b=0,d=0,e=0;e=K;K=K+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>2]=c[c[c[b>>2]>>2]>>2];while(1){if(!(c[d>>2]|0))break;Id(c[(c[d>>2]|0)+4>>2]|0);c[d>>2]=c[c[d>>2]>>2]}Id(c[(c[b>>2]|0)+4>>2]|0);Id(c[b>>2]|0);K=e;return}function Zc(a){a=a|0;var b=0,d=0;d=K;K=K+16|0;b=d;c[b>>2]=a;K=d;return (c[c[c[b>>2]>>2]>>2]|0)==(c[(c[b>>2]|0)+4>>2]|0)|0}function _c(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=K;K=K+16|0;g=h+12|0;d=h+8|0;e=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){c[g>>2]=-1;g=c[g>>2]|0;K=h;return g|0}c[f>>2]=Hd(12)|0;if(!(c[f>>2]|0)){c[g>>2]=-1;g=c[g>>2]|0;K=h;return g|0}else{c[(c[f>>2]|0)+8>>2]=c[e>>2];c[c[f>>2]>>2]=c[(c[d>>2]|0)+4>>2];c[(c[f>>2]|0)+4>>2]=c[(c[(c[d>>2]|0)+4>>2]|0)+4>>2];c[c[(c[f>>2]|0)+4>>2]>>2]=c[f>>2];c[(c[c[f>>2]>>2]|0)+4>>2]=c[f>>2];c[g>>2]=0;g=c[g>>2]|0;K=h;return g|0}return 0}function $c(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=K;K=K+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[(c[d>>2]|0)+4>>2]|0)+4>>2];while(1){if((c[f>>2]|0)==(c[c[d>>2]>>2]|0)){a=5;break}if(!(N[c[e>>2]&15](c[(c[f>>2]|0)+8>>2]|0)|0)){a=5;break}c[f>>2]=c[(c[f>>2]|0)+4>>2]}if((a|0)==5){K=g;return}}function ad(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=K;K=K+32|0;d=j+20|0;e=j+16|0;f=j+12|0;g=j+8|0;i=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[i>>2]=0;c[f>>2]=c[c[c[d>>2]>>2]>>2];while(1){if((c[f>>2]|0)==(c[(c[d>>2]|0)+4>>2]|0)){a=7;break}c[h>>2]=N[c[e>>2]&15](c[(c[f>>2]|0)+8>>2]|0)|0;if((c[h>>2]|0)==-1)c[i>>2]=-1;if(!(c[h>>2]|0)){a=7;break}c[g>>2]=c[c[f>>2]>>2];c[c[(c[f>>2]|0)+4>>2]>>2]=c[c[f>>2]>>2];c[(c[c[f>>2]>>2]|0)+4>>2]=c[(c[f>>2]|0)+4>>2];Id(c[f>>2]|0);c[f>>2]=c[g>>2]}if((a|0)==7){K=j;return c[i>>2]|0}return 0}function bd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=K;K=K+32|0;g=j+16|0;f=j+12|0;h=j+8|0;e=j+4|0;i=j;c[f>>2]=a;c[h>>2]=b;c[e>>2]=d;if(!(c[f>>2]|0)){c[g>>2]=-2;i=c[g>>2]|0;K=j;return i|0}c[i>>2]=$a(c[f>>2]|0,c[h>>2]|0)|0;if(!(c[i>>2]|0)){c[g>>2]=-20;i=c[g>>2]|0;K=j;return i|0}else{c[(c[i>>2]|0)+408>>2]=c[e>>2];c[g>>2]=cd(c[f>>2]|0,c[h>>2]|0)|0;i=c[g>>2]|0;K=j;return i|0}return 0}function cd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=K;K=K+16|0;g=h+12|0;e=h+8|0;f=h+4|0;d=h;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[g>>2]=-2;g=c[g>>2]|0;K=h;return g|0}c[d>>2]=$a(c[e>>2]|0,c[f>>2]|0)|0;if(!(c[d>>2]|0)){c[g>>2]=-20;g=c[g>>2]|0;K=h;return g|0}b=(c[d>>2]|0)+376|0;if((c[b>>2]|0)==0&(c[b+4>>2]|0)==0){b=(c[d>>2]|0)+376|0;c[b>>2]=1;c[b+4>>2]=0;b=(c[d>>2]|0)+384|0;c[b>>2]=0;c[b+4>>2]=0}a=c[e>>2]|0;b=c[f>>2]|0;if(!(c[(c[d>>2]|0)+408>>2]|0)){c[g>>2]=cb(a,b,19,0,1)|0;g=c[g>>2]|0;K=h;return g|0}d=(Hc(a,b)|0)==12;a=c[e>>2]|0;b=c[f>>2]|0;if(d){c[g>>2]=cb(a,b,20,0,1)|0;g=c[g>>2]|0;K=h;return g|0}d=(Hc(a,b)|0)==14;b=c[e>>2]|0;a=c[f>>2]|0;if(d){c[g>>2]=cb(b,a,21,0,1)|0;g=c[g>>2]|0;K=h;return g|0}else{c[g>>2]=cb(b,a,22,0,1)|0;g=c[g>>2]|0;K=h;return g|0}return 0}function dd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=K;K=K+32|0;h=j+8|0;l=j+28|0;k=j+24|0;g=j;i=j+16|0;c[l>>2]=a;c[k>>2]=b;b=g;c[b>>2]=d;c[b+4>>2]=e;c[j+20>>2]=f;c[i>>2]=$a(c[l>>2]|0,c[k>>2]|0)|0;if(!(c[i>>2]|0)){k=h;c[k>>2]=-1;c[k+4>>2]=-1;k=h;l=k;l=c[l>>2]|0;k=k+4|0;k=c[k>>2]|0;s(k|0);K=j;return l|0}k=g;b=c[k+4>>2]|0;l=(c[i>>2]|0)+392|0;f=c[l+4>>2]|0;if((b|0)<(f|0)|((b|0)==(f|0)?(c[k>>2]|0)>>>0<=(c[l>>2]|0)>>>0:0)){d=0;e=0}else{e=g;d=(c[i>>2]|0)+392|0;d=xe(c[e>>2]|0,c[e+4>>2]|0,c[d>>2]|0,c[d+4>>2]|0)|0;e=t()|0}l=g;c[l>>2]=d;c[l+4>>2]=e;l=(c[i>>2]|0)+384|0;k=g;k=Ce(c[l>>2]|0,c[l+4>>2]|0,c[k>>2]|0,c[k+4>>2]|0)|0;l=t()|0;i=(c[i>>2]|0)+376|0;i=Ae(k|0,l|0,c[i>>2]|0,c[i+4>>2]|0)|0;l=t()|0;k=h;c[k>>2]=i;c[k+4>>2]=l;k=h;l=k;l=c[l>>2]|0;k=k+4|0;k=c[k>>2]|0;s(k|0);K=j;return l|0}function ed(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,u=0,v=0;r=K;K=K+80|0;o=r+40|0;v=r+64|0;u=r+60|0;k=r+32|0;p=r+52|0;l=r+24|0;m=r+16|0;n=r+48|0;i=r+68|0;j=r+8|0;q=r;c[v>>2]=a;c[u>>2]=d;d=k;c[d>>2]=f;c[d+4>>2]=g;c[r+56>>2]=h;c[p>>2]=$a(c[v>>2]|0,c[u>>2]|0)|0;if(!(c[p>>2]|0)){u=o;c[u>>2]=-1;c[u+4>>2]=-1;u=o;v=u;v=c[v>>2]|0;u=u+4|0;u=c[u>>2]|0;s(u|0);K=r;return v|0}else{v=k;v=Ee(c[v>>2]|0,c[v+4>>2]|0,c[(c[p>>2]|0)+408>>2]|0)|0;h=t()|0;u=l;c[u>>2]=v;c[u+4>>2]=h;u=k;h=c[u>>2]|0;u=c[u+4>>2]|0;v=l;v=Fe(c[v>>2]|0,c[v+4>>2]|0,c[(c[p>>2]|0)+408>>2]|0)|0;v=xe(h|0,u|0,v|0,t()|0)|0;u=t()|0;h=m;c[h>>2]=v;c[h+4>>2]=u;h=l;u=m;u=we(c[h>>2]|0,c[h+4>>2]|0,c[u>>2]|0,c[u+4>>2]|0)|0;u=Ee(u|0,t()|0,9)|0;t()|0;c[n>>2]=u;u=m;u=Ee(c[u>>2]|0,c[u+4>>2]|0,9)|0;t()|0;b[i>>1]=u;u=xe(c[n>>2]|0,0,e[i>>1]|0|0,0)|0;h=t()|0;v=j;c[v>>2]=u;c[v+4>>2]=h;v=j;h=(c[p>>2]|0)+384|0;h=Ce(c[v>>2]|0,c[v+4>>2]|0,c[h>>2]|0,c[h+4>>2]|0)|0;v=t()|0;u=(c[p>>2]|0)+376|0;u=Ae(h|0,v|0,c[u>>2]|0,c[u+4>>2]|0)|0;v=t()|0;h=q;c[h>>2]=u;c[h+4>>2]=v;h=q;v=c[h+4>>2]|0;u=o;c[u>>2]=c[h>>2];c[u+4>>2]=v;u=o;v=u;v=c[v>>2]|0;u=u+4|0;u=c[u>>2]|0;s(u|0);K=r;return v|0}return 0}function fd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=K;K=K+48|0;i=l+24|0;n=l+44|0;m=l+40|0;h=l+16|0;j=l+32|0;g=l+8|0;k=l;c[n>>2]=a;c[m>>2]=b;b=h;c[b>>2]=d;c[b+4>>2]=e;c[l+36>>2]=f;c[j>>2]=$a(c[n>>2]|0,c[m>>2]|0)|0;if(!(c[j>>2]|0)){m=i;c[m>>2]=-1;c[m+4>>2]=-1;m=i;n=m;n=c[n>>2]|0;m=m+4|0;m=c[m>>2]|0;s(m|0);K=l;return n|0}else{m=h;m=Ee(c[m>>2]|0,c[m+4>>2]|0,c[(c[j>>2]|0)+408>>2]|0)|0;f=t()|0;n=g;c[n>>2]=m;c[n+4>>2]=f;n=g;f=(c[j>>2]|0)+384|0;f=Ce(c[n>>2]|0,c[n+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0)|0;n=t()|0;m=(c[j>>2]|0)+376|0;m=Ae(f|0,n|0,c[m>>2]|0,c[m+4>>2]|0)|0;n=t()|0;f=k;c[f>>2]=m;c[f+4>>2]=n;f=k;n=c[f+4>>2]|0;m=i;c[m>>2]=c[f>>2];c[m+4>>2]=n;m=i;n=m;n=c[n>>2]|0;m=m+4|0;m=c[m>>2]|0;s(m|0);K=l;return n|0}return 0}function gd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=K;K=K+64|0;j=m+32|0;o=m+52|0;n=m+48|0;g=m+24|0;k=m+40|0;h=m+16|0;i=m+8|0;l=m;c[o>>2]=a;c[n>>2]=b;b=g;c[b>>2]=d;c[b+4>>2]=e;c[m+44>>2]=f;c[k>>2]=$a(c[o>>2]|0,c[n>>2]|0)|0;if(!(c[k>>2]|0)){n=j;c[n>>2]=-1;c[n+4>>2]=-1;n=j;o=n;o=c[o>>2]|0;n=n+4|0;n=c[n>>2]|0;s(n|0);K=m;return o|0}o=g;o=Ee(c[o>>2]|0,c[o+4>>2]|0,c[(c[k>>2]|0)+408>>2]|0)|0;n=t()|0;f=h;c[f>>2]=o;c[f+4>>2]=n;f=g;n=c[f>>2]|0;f=c[f+4>>2]|0;o=h;o=Fe(c[o>>2]|0,c[o+4>>2]|0,c[(c[k>>2]|0)+408>>2]|0)|0;o=xe(n|0,f|0,o|0,t()|0)|0;f=t()|0;n=i;c[n>>2]=o;c[n+4>>2]=f;n=h;f=i;f=we(c[n>>2]|0,c[n+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0)|0;n=t()|0;o=g;c[o>>2]=f;c[o+4>>2]=n;o=g;n=c[o+4>>2]|0;if((n|0)>0|(n|0)==0&(c[o>>2]|0)>>>0>0){f=(c[k>>2]|0)+392|0;n=g;f=xe(c[n>>2]|0,c[n+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0)|0;n=t()|0;o=g;c[o>>2]=f;c[o+4>>2]=n}o=g;f=(c[k>>2]|0)+384|0;f=Ce(c[o>>2]|0,c[o+4>>2]|0,c[f>>2]|0,c[f+4>>2]|0)|0;o=t()|0;n=(c[k>>2]|0)+376|0;n=Ae(f|0,o|0,c[n>>2]|0,c[n+4>>2]|0)|0;o=t()|0;f=l;c[f>>2]=n;c[f+4>>2]=o;f=l;o=c[f+4>>2]|0;n=j;c[n>>2]=c[f>>2];c[n+4>>2]=o;n=j;o=n;o=c[o>>2]|0;n=n+4|0;n=c[n>>2]|0;s(n|0);K=m;return o|0}function hd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=K;K=K+16|0;e=h+12|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;if(!(c[d>>2]|0)){c[e>>2]=-2;g=c[e>>2]|0;K=h;return g|0}c[g>>2]=$a(c[d>>2]|0,c[f>>2]|0)|0;if(!(c[g>>2]|0)){c[e>>2]=-20;g=c[e>>2]|0;K=h;return g|0}else{c[e>>2]=c[(c[g>>2]|0)+408>>2];g=c[e>>2]|0;K=h;return g|0}return 0}function id(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=K;K=K+32|0;k=n+28|0;j=n+24|0;l=n+20|0;i=n+8|0;h=n;m=n+16|0;c[j>>2]=a;c[l>>2]=b;b=i;c[b>>2]=d;c[b+4>>2]=e;b=h;c[b>>2]=f;c[b+4>>2]=g;if(!(c[j>>2]|0)){c[k>>2]=-2;m=c[k>>2]|0;K=n;return m|0}c[m>>2]=$a(c[j>>2]|0,c[l>>2]|0)|0;if(!(c[m>>2]|0)){c[k>>2]=-20;m=c[k>>2]|0;K=n;return m|0}else{b=c[i+4>>2]|0;a=(c[m>>2]|0)+376|0;c[a>>2]=c[i>>2];c[a+4>>2]=b;a=h;b=c[a+4>>2]|0;m=(c[m>>2]|0)+384|0;c[m>>2]=c[a>>2];c[m+4>>2]=b;c[k>>2]=cd(c[j>>2]|0,c[l>>2]|0)|0;m=c[k>>2]|0;K=n;return m|0}return 0}function jd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=K;K=K+32|0;i=l+20|0;h=l+16|0;j=l+12|0;g=l+8|0;f=l+4|0;k=l;c[h>>2]=a;c[j>>2]=b;c[g>>2]=d;c[f>>2]=e;if(!(c[h>>2]|0)){c[i>>2]=-2;k=c[i>>2]|0;K=l;return k|0}c[k>>2]=$a(c[h>>2]|0,c[j>>2]|0)|0;if(!(c[k>>2]|0)){c[i>>2]=-20;k=c[i>>2]|0;K=l;return k|0}else{h=(c[k>>2]|0)+376|0;j=c[h+4>>2]|0;b=c[g>>2]|0;c[b>>2]=c[h>>2];c[b+4>>2]=j;b=(c[k>>2]|0)+384|0;b=De(c[b>>2]|0,c[b+4>>2]|0,1e3,0)|0;j=t()|0;k=c[f>>2]|0;c[k>>2]=b;c[k+4>>2]=j;c[i>>2]=0;k=c[i>>2]|0;K=l;return k|0}return 0}function kd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=K;K=K+32|0;h=k+20|0;g=k+16|0;i=k+12|0;f=k;j=k+8|0;c[g>>2]=a;c[i>>2]=b;b=f;c[b>>2]=d;c[b+4>>2]=e;if(!(c[g>>2]|0)){c[h>>2]=-2;j=c[h>>2]|0;K=k;return j|0}c[j>>2]=$a(c[g>>2]|0,c[i>>2]|0)|0;if(!(c[j>>2]|0)){c[h>>2]=-20;j=c[h>>2]|0;K=k;return j|0}else{a=f;b=c[a+4>>2]|0;j=(c[j>>2]|0)+392|0;c[j>>2]=c[a>>2];c[j+4>>2]=b;c[h>>2]=cd(c[g>>2]|0,c[i>>2]|0)|0;j=c[h>>2]|0;K=k;return j|0}return 0}function ld(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=K;K=K+48|0;h=k+44|0;g=k+40|0;m=k+36|0;l=k+32|0;e=k+16|0;j=k+8|0;i=k+4|0;f=k;c[g>>2]=a;c[m>>2]=b;c[l>>2]=d;md(e,c[m>>2]|0,c[l>>2]|0);nd(e,104);d=od(e)|0;c[c[g>>2]>>2]=d;d=od(e)|0;c[(c[g>>2]|0)+4>>2]=d;d=od(e)|0;c[(c[g>>2]|0)+8>>2]=d;d=od(e)|0;c[(c[g>>2]|0)+12>>2]=d;d=od(e)|0;c[j>>2]=d;c[(c[g>>2]|0)+20>>2]=d;if((c[j>>2]|0)>>>0>=17){c[h>>2]=-1;m=c[h>>2]|0;K=k;return m|0}c[(c[g>>2]|0)+24>>2]=c[528+(c[j>>2]<<3)>>2];c[(c[g>>2]|0)+28>>2]=c[528+(c[j>>2]<<3)+4>>2];if(pd(e)|0){m=od(e)|0;c[(c[g>>2]|0)+24>>2]=m;m=od(e)|0;c[(c[g>>2]|0)+28>>2]=m}if(pd(e)|0){m=od(e)|0;c[(c[g>>2]|0)+16>>2]=m}do if(pd(e)|0){c[i>>2]=od(e)|0;if((c[i>>2]|0)<2){c[(c[g>>2]|0)+40>>2]=c[i>>2];break}else{c[(c[g>>2]|0)+40>>2]=0;break}}else c[(c[g>>2]|0)+40>>2]=c[672+(c[j>>2]<<2)>>2];while(0);c[(c[g>>2]|0)+44>>2]=c[768+(c[j>>2]<<2)>>2];c[(c[g>>2]|0)+32>>2]=c[960+(c[864+(c[j>>2]<<2)>>2]<<3)>>2];c[(c[g>>2]|0)+36>>2]=c[960+(c[864+(c[j>>2]<<2)>>2]<<3)+4>>2];if(pd(e)|0?(c[f>>2]=od(e)|0,c[(c[g>>2]|0)+32>>2]=c[960+(c[f>>2]<<3)>>2],c[(c[g>>2]|0)+36>>2]=c[960+(c[f>>2]<<3)+4>>2],(c[f>>2]|0)==0):0){m=od(e)|0;c[(c[g>>2]|0)+32>>2]=m;m=od(e)|0;c[(c[g>>2]|0)+36>>2]=m}c[h>>2]=0;m=c[h>>2]|0;K=k;return m|0}function md(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=K;K=K+16|0;f=e+8|0;h=e+4|0;g=e;c[f>>2]=a;c[h>>2]=b;c[g>>2]=d;c[c[f>>2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[h>>2];c[(c[f>>2]|0)+8>>2]=(c[(c[f>>2]|0)+4>>2]|0)+(c[g>>2]|0);c[(c[f>>2]|0)+12>>2]=8;K=e;return}function nd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=K;K=K+16|0;d=e+4|0;f=e;c[d>>2]=a;c[f>>2]=b;a=(c[d>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)-(c[f>>2]|0);while(1){if((c[(c[d>>2]|0)+12>>2]|0)>0)break;f=(c[d>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1;f=(c[d>>2]|0)+12|0;c[f>>2]=(c[f>>2]|0)+8}K=e;return}function od(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=K;K=K+16|0;d=f+8|0;b=f+4|0;e=f;c[d>>2]=a;c[b>>2]=0;c[e>>2]=0;while(1){g=(qd(c[d>>2]|0,1)|0)!=0^1;a=c[b>>2]|0;if(!g)break;c[b>>2]=a+1;c[e>>2]=c[e>>2]<<1;g=qd(c[d>>2]|0,1)|0;c[e>>2]=c[e>>2]|g}K=f;return (1<>2]|0)|0}function pd(a){a=a|0;var b=0,d=0;b=K;K=K+16|0;d=b;c[d>>2]=a;a=qd(c[d>>2]|0,1)|0;K=b;return a|0}function qd(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=K;K=K+32|0;h=k+16|0;i=k+12|0;e=k+8|0;g=k+4|0;f=k;c[i>>2]=a;c[e>>2]=b;c[f>>2]=0;while(1){if((c[e>>2]|0)<=0){j=9;break}if((c[(c[i>>2]|0)+4>>2]|0)>>>0>=(c[(c[i>>2]|0)+8>>2]|0)>>>0){j=9;break}a=(c[(c[i>>2]|0)+12>>2]|0)-(c[e>>2]|0)|0;c[g>>2]=a;b=d[c[(c[i>>2]|0)+4>>2]>>0]|0;if((a|0)>=0)break;c[f>>2]=c[f>>2]|(b&c[1056+(c[(c[i>>2]|0)+12>>2]<<2)>>2])<<0-(c[g>>2]|0);c[e>>2]=(c[e>>2]|0)-(c[(c[i>>2]|0)+12>>2]|0);a=(c[i>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1;c[(c[i>>2]|0)+12>>2]=8}if((j|0)==9){c[h>>2]=c[f>>2];j=c[h>>2]|0;K=k;return j|0}c[f>>2]=c[f>>2]|b>>c[g>>2]&c[1056+(c[e>>2]<<2)>>2];j=(c[i>>2]|0)+12|0;c[j>>2]=(c[j>>2]|0)-(c[e>>2]|0);if(!(c[(c[i>>2]|0)+12>>2]|0)){j=(c[i>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1;c[(c[i>>2]|0)+12>>2]=8}c[h>>2]=c[f>>2];j=c[h>>2]|0;K=k;return j|0}function rd(b){b=b|0;return a[(c[b>>2]|0)+5>>0]&1|0}function sd(b){b=b|0;return a[(c[b>>2]|0)+5>>0]&2|0}function td(a){a=a|0;var b=0,e=0;a=c[a>>2]|0;e=Fe(d[a+13>>0]|0|0,0,8)|0;b=t()|0;b=Fe(e|(d[a+12>>0]|0)|0,b|0,8)|0;e=t()|0;e=Fe(b|(d[a+11>>0]|0)|0,e|0,8)|0;b=t()|0;b=Fe(e|(d[a+10>>0]|0)|0,b|0,8)|0;e=t()|0;e=Fe(b|(d[a+9>>0]|0)|0,e|0,8)|0;b=t()|0;b=Fe(e|(d[a+8>>0]|0)|0,b|0,8)|0;e=t()|0;e=Fe(b|(d[a+7>>0]|0)|0,e|0,8)|0;b=t()|0;a=e|(d[a+6>>0]|0);s(b|0);return a|0}function ud(a){a=a|0;a=c[a>>2]|0;return (d[a+15>>0]|0)<<8|(d[a+14>>0]|0)|(d[a+16>>0]|0)<<16|(d[a+17>>0]|0)<<24|0}function vd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;if(!a){a=-1;return a|0}Ie(a+8|0,0,352)|0;c[a+4>>2]=16384;c[a+24>>2]=1024;d=Hd(16384)|0;c[a>>2]=d;g=Hd(4096)|0;f=a+16|0;c[f>>2]=g;e=Hd(8192)|0;h=a+20|0;c[h>>2]=e;do if(!d){e=g;d=g}else{if((e|0)==0|(g|0)==0){Id(d);d=c[f>>2]|0;e=d;break}c[a+336>>2]=b;a=0;return a|0}while(0);if(e|0)Id(d);d=c[h>>2]|0;if(d|0)Id(d);Ie(a|0,0,360)|0;a=-1;return a|0}function wd(a){a=a|0;var b=0;if(!a)return 0;b=c[a>>2]|0;if(b|0)Id(b);b=c[a+16>>2]|0;if(b|0)Id(b);b=c[a+20>>2]|0;if(b|0)Id(b);Ie(a|0,0,360)|0;return 0}function xd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=a+24|0;d=c[f>>2]|0;if((d-b|0)>(c[a+28>>2]|0)){a=0;return a|0}if((d|0)>(2147483647-b|0)){d=c[a>>2]|0;if(d|0)Id(d);d=c[a+16>>2]|0;if(d|0)Id(d);d=c[a+20>>2]|0;if(d|0)Id(d);Ie(a|0,0,360)|0;a=-1;return a|0}b=d+b|0;b=(b|0)<2147483615?b+32|0:b;g=a+16|0;d=Kd(c[g>>2]|0,b<<2)|0;if(!d){d=c[a>>2]|0;if(d|0)Id(d);d=c[g>>2]|0;if(d|0)Id(d);d=c[a+20>>2]|0;if(d|0)Id(d);Ie(a|0,0,360)|0;a=-1;return a|0}c[g>>2]=d;e=a+20|0;d=Kd(c[e>>2]|0,b<<3)|0;if(d|0){c[e>>2]=d;c[f>>2]=b;a=0;return a|0}d=c[a>>2]|0;if(d|0)Id(d);d=c[g>>2]|0;if(d|0)Id(d);d=c[e>>2]|0;if(d|0)Id(d);Ie(a|0,0,360)|0;a=-1;return a|0}function yd(a){a=a|0;if(!a)return 0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return 0}function zd(a){a=a|0;var b=0;if(!a)return 0;b=c[a>>2]|0;if(b|0)Id(b);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;return 0}function Ad(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=a+4|0;d=c[h>>2]|0;if((d|0)<=-1){a=0;return a|0}g=a+12|0;e=c[g>>2]|0;i=a+8|0;if(!e)e=d;else{f=(c[i>>2]|0)-e|0;c[i>>2]=f;if((f|0)>0){d=c[a>>2]|0;He(d|0,d+e|0,f|0)|0;d=c[h>>2]|0}c[g>>2]=0;e=d}d=c[i>>2]|0;do if((e-d|0)<(b|0)){f=b+4096+d|0;d=c[a>>2]|0;if(!d)e=Hd(f)|0;else e=Kd(d,f)|0;if(e|0){c[a>>2]=e;c[h>>2]=f;d=c[i>>2]|0;break}d=c[a>>2]|0;if(d|0)Id(d);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;a=0;return a|0}else e=c[a>>2]|0;while(0);a=e+d|0;return a|0}function Bd(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[a+4>>2]|0;if((e|0)<=-1){e=-1;return e|0}d=a+8|0;a=(c[d>>2]|0)+b|0;if((a|0)>(e|0)){e=-1;return e|0}c[d>>2]=a;e=0;return e|0} function Cd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=K;K=K+16|0;q=w;v=b+12|0;r=c[v>>2]|0;t=(c[b>>2]|0)+r|0;s=b+8|0;r=(c[s>>2]|0)-r|0;if((c[b+4>>2]|0)<=-1){v=0;K=w;return v|0}u=b+20|0;f=c[u>>2]|0;do if(!f){if((r|0)<27){v=0;K=w;return v|0}if(le(t,2897,4)|0){f=b+24|0;break}j=t+26|0;g=a[j>>0]|0;f=(g&255)+27|0;if((r|0)<(f|0)){v=0;K=w;return v|0}if(g<<24>>24){h=b+24|0;g=c[h>>2]|0;i=0;do{g=g+(d[t+(i+27)>>0]|0)|0;c[h>>2]=g;i=i+1|0}while(i>>>0<(d[j>>0]|0)>>>0)}c[u>>2]=f;g=11}else g=11;while(0);do if((g|0)==11){p=b+24|0;if((f+(c[p>>2]|0)|0)>(r|0)){v=0;K=w;return v|0}l=t+22|0;k=d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24;c[q>>2]=k;a[l>>0]=0;a[l+1>>0]=0;a[l+2>>0]=0;a[l+3>>0]=0;g=c[u>>2]|0;j=t+g|0;i=c[p>>2]|0;m=t+23|0;n=t+24|0;o=t+25|0;a[l>>0]=0;a[l+1>>0]=0;a[l+2>>0]=0;a[l+3>>0]=0;if((g|0)>0){f=0;h=0;do{f=c[1200+((f>>>24^(d[t+h>>0]|0))<<2)>>2]^f<<8;h=h+1|0}while((h|0)!=(g|0))}else f=0;if((i|0)>0){g=0;do{f=c[1200+((f>>>24^(d[j+g>>0]|0))<<2)>>2]^f<<8;g=g+1|0}while((g|0)!=(i|0))}a[l>>0]=f;a[m>>0]=f>>>8;a[n>>0]=f>>>16;a[o>>0]=f>>>24;if(le(q,l,4)|0){a[l>>0]=k;a[l+1>>0]=k>>8;a[l+2>>0]=k>>16;a[l+3>>0]=k>>24;f=p;break}h=c[v>>2]|0;f=(c[b>>2]|0)+h|0;if(!e){f=c[p>>2]|0;g=c[u>>2]|0}else{c[e>>2]=f;g=c[u>>2]|0;c[e+4>>2]=g;c[e+8>>2]=f+g;f=c[p>>2]|0;c[e+12>>2]=f}c[b+16>>2]=0;b=f+g|0;c[v>>2]=b+h;c[u>>2]=0;c[p>>2]=0;v=b;K=w;return v|0}while(0);c[u>>2]=0;c[f>>2]=0;f=he(t+1|0,79,r+-1|0)|0;if(!f){f=c[b>>2]|0;g=f;f=f+(c[s>>2]|0)|0}else g=c[b>>2]|0;b=f;c[v>>2]=b-g;v=t-b|0;K=w;return v|0}function Dd(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;v=c[e>>2]|0;g=c[e+8>>2]|0;q=c[e+12>>2]|0;j=a[v+4>>0]|0;y=a[v+5>>0]|0;o=y&1;r=y&2;y=y&4;x=Fe(d[v+13>>0]|0|0,0,8)|0;w=t()|0;w=Fe(x|(d[v+12>>0]|0)|0,w|0,8)|0;x=t()|0;x=Fe(w|(d[v+11>>0]|0)|0,x|0,8)|0;w=t()|0;w=Fe(x|(d[v+10>>0]|0)|0,w|0,8)|0;x=t()|0;x=Fe(w|(d[v+9>>0]|0)|0,x|0,8)|0;w=t()|0;w=Fe(x|(d[v+8>>0]|0)|0,w|0,8)|0;x=t()|0;x=Fe(w|(d[v+7>>0]|0)|0,x|0,8)|0;w=t()|0;x=x|(d[v+6>>0]|0);m=(d[v+15>>0]|0)<<8|(d[v+14>>0]|0)|(d[v+16>>0]|0)<<16|(d[v+17>>0]|0)<<24;z=(d[v+19>>0]|0)<<8|(d[v+18>>0]|0)|(d[v+20>>0]|0)<<16|(d[v+21>>0]|0)<<24;p=a[v+26>>0]|0;u=p&255;if(!b){b=-1;return b|0}e=c[b>>2]|0;if(!e){b=-1;return b|0}l=b+36|0;k=c[l>>2]|0;h=b+12|0;f=c[h>>2]|0;if(f|0){s=b+8|0;i=(c[s>>2]|0)-f|0;c[s>>2]=i;if(i|0)He(e|0,e+f|0,i|0)|0;c[h>>2]=0}if(k|0){f=b+28|0;e=(c[f>>2]|0)-k|0;if(!e)e=0;else{s=c[b+16>>2]|0;He(s|0,s+(k<<2)|0,e<<2|0)|0;e=c[b+20>>2]|0;He(e|0,e+(k<<3)|0,(c[f>>2]|0)-k<<3|0)|0;e=(c[f>>2]|0)-k|0}c[f>>2]=e;s=b+32|0;c[s>>2]=(c[s>>2]|0)-k;c[l>>2]=0}if(j<<24>>24?1:(m|0)!=(c[b+336>>2]|0)){b=-1;return b|0}if(xd(b,u+1|0)|0){b=-1;return b|0}s=b+340|0;e=c[s>>2]|0;if((z|0)!=(e|0)){m=b+32|0;f=c[m>>2]|0;l=b+28|0;h=c[l>>2]|0;if((f|0)<(h|0)){i=c[b+16>>2]|0;j=b+8|0;k=f;n=c[j>>2]|0;do{n=n-(c[i+(k<<2)>>2]&255)|0;k=k+1|0}while((k|0)<(h|0));c[j>>2]=n}c[l>>2]=f;if((e|0)!=-1){k=c[b+16>>2]|0;n=f+1|0;c[l>>2]=n;c[k+(f<<2)>>2]=1024;c[m>>2]=n}}a:do if(o<<24>>24){e=c[b+28>>2]|0;if((e|0)>=1?(o=c[(c[b+16>>2]|0)+(e+-1<<2)>>2]|0,!((o|0)==1024|(o&255|0)!=255)):0){e=q;n=r;f=0;break}if(!(p<<24>>24)){e=q;n=0;f=0}else{e=q;f=0;while(1){r=a[v+(f+27)>>0]|0;q=r&255;g=g+q|0;e=e-q|0;r=r<<24>>24==-1;f=f+((r^1)&1)|0;if(!r){n=0;break a}f=f+1|0;if((f|0)>=(u|0)){n=0;break}}}}else{e=q;n=r;f=0}while(0);if(e|0){j=b+4|0;i=c[j>>2]|0;k=b+8|0;h=c[k>>2]|0;do if((i-e|0)>(h|0))i=c[b>>2]|0;else{if((i|0)>(2147483647-e|0)){e=c[b>>2]|0;if(e|0)Id(e);e=c[b+16>>2]|0;if(e|0)Id(e);e=c[b+20>>2]|0;if(e|0)Id(e);Ie(b|0,0,360)|0;b=-1;return b|0}h=i+e|0;h=(h|0)<2147482623?h+1024|0:h;i=Kd(c[b>>2]|0,h)|0;if(i|0){c[j>>2]=h;c[b>>2]=i;h=c[k>>2]|0;break}e=c[b>>2]|0;if(e|0)Id(e);e=c[b+16>>2]|0;if(e|0)Id(e);e=c[b+20>>2]|0;if(e|0)Id(e);Ie(b|0,0,360)|0;b=-1;return b|0}while(0);Ge(i+h|0,g|0,e|0)|0;c[k>>2]=(c[k>>2]|0)+e}if((f|0)<(u|0)){l=b+28|0;m=b+32|0;i=a[v+(f+27)>>0]|0;h=i&255;j=c[b+16>>2]|0;e=c[l>>2]|0;g=j+(e<<2)|0;c[g>>2]=h;k=c[b+20>>2]|0;r=k+(e<<3)|0;c[r>>2]=-1;c[r+4>>2]=-1;if(n|0)c[g>>2]=h|256;h=e+1|0;c[l>>2]=h;g=f+1|0;if(i<<24>>24==-1)e=-1;else c[m>>2]=h;if((g|0)!=(u|0)){f=e;while(1){r=a[v+(g+27)>>0]|0;c[j+(h<<2)>>2]=r&255;e=k+(h<<3)|0;c[e>>2]=-1;c[e+4>>2]=-1;e=h;h=h+1|0;c[l>>2]=h;g=g+1|0;if(r<<24>>24==-1)e=f;else c[m>>2]=h;if((g|0)==(u|0))break;else f=e}}if((e|0)!=-1){v=(c[b+20>>2]|0)+(e<<3)|0;c[v>>2]=x;c[v+4>>2]=w}}if(y<<24>>24?(c[b+328>>2]=1,A=c[b+28>>2]|0,(A|0)>0):0){b=(c[b+16>>2]|0)+(A+-1<<2)|0;c[b>>2]=c[b>>2]|512}c[s>>2]=z+1;b=0;return b|0}function Ed(a){a=a|0;if((c[a+4>>2]|0)<=-1){a=-1;return a|0}a=a+8|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;a=0;return a|0}function Fd(a){a=a|0;if(!a){a=-1;return a|0}if(!(c[a>>2]|0)){a=-1;return a|0}c[a+8>>2]=0;c[a+12>>2]=0;c[a+28>>2]=0;c[a+32>>2]=0;c[a+36>>2]=0;c[a+324>>2]=0;c[a+328>>2]=0;c[a+332>>2]=0;c[a+340>>2]=-1;a=a+344|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;a=0;return a|0}function Gd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!a){l=0;return l|0}j=c[a>>2]|0;if(!j){l=0;return l|0}l=a+36|0;e=c[l>>2]|0;if((c[a+32>>2]|0)<=(e|0)){l=0;return l|0}h=c[a+16>>2]|0;d=c[h+(e<<2)>>2]|0;if(d&1024|0){c[l>>2]=e+1;l=a+344|0;k=l;k=we(c[k>>2]|0,c[k+4>>2]|0,1,0)|0;a=t()|0;c[l>>2]=k;c[l+4>>2]=a;l=-1;return l|0}k=(b|0)==0;f=d&255;g=d&512;i=d&256;if((f|0)==255){d=255;f=g;while(1){e=e+1|0;g=c[h+(e<<2)>>2]|0;m=g&255;g=(g&512|0)==0?f:512;d=m+d|0;if((m|0)==255)f=g;else{f=d;d=g;g=e;break}}}else{d=g;g=e}if(k){e=a+12|0;d=a+344|0}else{c[b+12>>2]=d;c[b+8>>2]=i;e=a+12|0;c[b>>2]=j+(c[e>>2]|0);d=a+344|0;j=d;m=c[j+4>>2]|0;k=b+24|0;c[k>>2]=c[j>>2];c[k+4>>2]=m;k=(c[a+20>>2]|0)+(g<<3)|0;a=c[k+4>>2]|0;m=b+16|0;c[m>>2]=c[k>>2];c[m+4>>2]=a;c[b+4>>2]=f}c[e>>2]=(c[e>>2]|0)+f;c[l>>2]=g+1;a=d;a=we(c[a>>2]|0,c[a+4>>2]|0,1,0)|0;l=t()|0;m=d;c[m>>2]=a;c[m+4>>2]=l;m=1;return m|0}function Hd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=K;K=K+16|0;n=w;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;m=c[1001]|0;d=m>>>a;if(d&3|0){e=(d&1^1)+a|0;f=4044+(e<<1<<2)|0;b=f+8|0;a=c[b>>2]|0;g=a+8|0;d=c[g>>2]|0;if((d|0)==(f|0))c[1001]=m&~(1<>2]=f;c[b>>2]=d}v=e<<3;c[a+4>>2]=v|3;v=a+v+4|0;c[v>>2]=c[v>>2]|1;v=g;K=w;return v|0}l=c[1003]|0;if(k>>>0>l>>>0){if(d|0){i=2<>>12&16;d=d>>>i;a=d>>>5&8;d=d>>>a;g=d>>>2&4;d=d>>>g;b=d>>>1&2;d=d>>>b;e=d>>>1&1;e=(a|i|g|b|e)+(d>>>e)|0;d=4044+(e<<1<<2)|0;b=d+8|0;g=c[b>>2]|0;i=g+8|0;a=c[i>>2]|0;if((a|0)==(d|0)){a=m&~(1<>2]=d;c[b>>2]=a;a=m}v=e<<3;h=v-k|0;c[g+4>>2]=k|3;f=g+k|0;c[f+4>>2]=h|1;c[g+v>>2]=h;if(l|0){e=c[1006]|0;b=l>>>3;d=4044+(b<<1<<2)|0;b=1<>2]|0}c[b>>2]=e;c[a+12>>2]=e;c[e+8>>2]=a;c[e+12>>2]=d}c[1003]=h;c[1006]=f;v=i;K=w;return v|0}g=c[1002]|0;if(g){i=(g&0-g)+-1|0;f=i>>>12&16;i=i>>>f;e=i>>>5&8;i=i>>>e;h=i>>>2&4;i=i>>>h;d=i>>>1&2;i=i>>>d;j=i>>>1&1;j=c[4308+((e|f|h|d|j)+(i>>>j)<<2)>>2]|0;i=(c[j+4>>2]&-8)-k|0;d=j;while(1){a=c[d+16>>2]|0;if(!a){a=c[d+20>>2]|0;if(!a)break}d=(c[a+4>>2]&-8)-k|0;h=d>>>0>>0;i=h?d:i;d=a;j=h?a:j}h=j+k|0;if(h>>>0>j>>>0){f=c[j+24>>2]|0;b=c[j+12>>2]|0;do if((b|0)==(j|0)){a=j+20|0;b=c[a>>2]|0;if(!b){a=j+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){e=b+20|0;d=c[e>>2]|0;if(!d){e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;a=e}}else{b=d;a=e}}c[a>>2]=0;d=b}else{d=c[j+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[j+28>>2]|0;a=4308+(b<<2)|0;if((j|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[1002]=g&~(1<>2]|0)==(j|0)?v:f+20|0)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[j+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[j+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(i>>>0<16){v=i+k|0;c[j+4>>2]=v|3;v=j+v+4|0;c[v>>2]=c[v>>2]|1}else{c[j+4>>2]=k|3;c[h+4>>2]=i|1;c[h+i>>2]=i;if(l|0){e=c[1006]|0;b=l>>>3;d=4044+(b<<1<<2)|0;b=1<>2]|0}c[b>>2]=e;c[a+12>>2]=e;c[e+8>>2]=a;c[e+12>>2]=d}c[1003]=i;c[1006]=h}v=j+8|0;K=w;return v|0}else m=k}else m=k}else m=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;e=c[1002]|0;if(e){d=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)j=31;else{m=(a+1048320|0)>>>16&8;q=a<>>16&4;q=q<>>16&2;j=14-(i|m|j)+(q<>>15)|0;j=k>>>(j+7|0)&1|j<<1}else j=0;a=c[4308+(j<<2)>>2]|0;a:do if(!a){f=0;a=0;q=61}else{f=0;h=k<<((j|0)==31?0:25-(j>>>1)|0);i=a;a=0;while(1){g=(c[i+4>>2]&-8)-k|0;if(g>>>0>>0)if(!g){d=0;f=i;a=i;q=65;break a}else{d=g;a=i}q=c[i+20>>2]|0;i=c[i+16+(h>>>31<<2)>>2]|0;f=(q|0)==0|(q|0)==(i|0)?f:q;if(!i){q=61;break}else h=h<<1}}while(0);if((q|0)==61){if((f|0)==0&(a|0)==0){a=2<>>12&16;a=a>>>i;h=a>>>5&8;a=a>>>h;j=a>>>2&4;a=a>>>j;m=a>>>1&2;a=a>>>m;f=a>>>1&1;f=c[4308+((h|i|j|m|f)+(a>>>f)<<2)>>2]|0;a=0}if(!f){i=d;g=a}else q=65}if((q|0)==65)while(1){m=(c[f+4>>2]&-8)-k|0;g=m>>>0>>0;d=g?m:d;g=g?f:a;a=c[f+16>>2]|0;if(!a)a=c[f+20>>2]|0;if(!a){i=d;break}else{f=a;a=g}}if(((g|0)!=0?i>>>0<((c[1003]|0)-k|0)>>>0:0)?(l=g+k|0,l>>>0>g>>>0):0){h=c[g+24>>2]|0;b=c[g+12>>2]|0;do if((b|0)==(g|0)){a=g+20|0;b=c[a>>2]|0;if(!b){a=g+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){f=b+20|0;d=c[f>>2]|0;if(!d){f=b+16|0;d=c[f>>2]|0;if(!d)break;else{b=d;a=f}}else{b=d;a=f}}c[a>>2]=0}else{v=c[g+8>>2]|0;c[v+12>>2]=b;c[b+8>>2]=v}while(0);do if(h){a=c[g+28>>2]|0;d=4308+(a<<2)|0;if((g|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=e&~(1<>2]|0)==(g|0)?v:h+20|0)>>2]=b;if(!b)break}c[b+24>>2]=h;a=c[g+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[g+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b}}while(0);b:do if(i>>>0<16){v=i+k|0;c[g+4>>2]=v|3;v=g+v+4|0;c[v>>2]=c[v>>2]|1}else{c[g+4>>2]=k|3;c[l+4>>2]=i|1;c[l+i>>2]=i;b=i>>>3;if(i>>>0<256){d=4044+(b<<1<<2)|0;a=c[1001]|0;b=1<>2]|0}c[b>>2]=l;c[a+12>>2]=l;c[l+8>>2]=a;c[l+12>>2]=d;break}b=i>>>8;if(b)if(i>>>0>16777215)d=31;else{u=(b+1048320|0)>>>16&8;v=b<>>16&4;v=v<>>16&2;d=14-(t|u|d)+(v<>>15)|0;d=i>>>(d+7|0)&1|d<<1}else d=0;b=4308+(d<<2)|0;c[l+28>>2]=d;a=l+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<>2]=l;c[l+24>>2]=b;c[l+12>>2]=l;c[l+8>>2]=l;break}b=c[b>>2]|0;c:do if((c[b+4>>2]&-8|0)!=(i|0)){e=i<<((d|0)==31?0:25-(d>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(i|0)){b=a;break c}else{e=e<<1;b=a}}c[d>>2]=l;c[l+24>>2]=b;c[l+12>>2]=l;c[l+8>>2]=l;break b}while(0);u=b+8|0;v=c[u>>2]|0;c[v+12>>2]=l;c[u>>2]=l;c[l+8>>2]=v;c[l+12>>2]=b;c[l+24>>2]=0}while(0);v=g+8|0;K=w;return v|0}else m=k}else m=k}else m=-1;while(0);d=c[1003]|0;if(d>>>0>=m>>>0){a=d-m|0;b=c[1006]|0;if(a>>>0>15){v=b+m|0;c[1006]=v;c[1003]=a;c[v+4>>2]=a|1;c[b+d>>2]=a;c[b+4>>2]=m|3}else{c[1003]=0;c[1006]=0;c[b+4>>2]=d|3;v=b+d+4|0;c[v>>2]=c[v>>2]|1}v=b+8|0;K=w;return v|0}h=c[1004]|0;if(h>>>0>m>>>0){t=h-m|0;c[1004]=t;v=c[1007]|0;u=v+m|0;c[1007]=u;c[u+4>>2]=t|1;c[v+4>>2]=m|3;v=v+8|0;K=w;return v|0}if(!(c[1119]|0)){c[1121]=4096;c[1120]=4096;c[1122]=-1;c[1123]=-1;c[1124]=0;c[1112]=0;c[1119]=n&-16^1431655768;a=4096}else a=c[1121]|0;i=m+48|0;j=m+47|0;g=a+j|0;e=0-a|0;k=g&e;if(k>>>0<=m>>>0){v=0;K=w;return v|0}a=c[1111]|0;if(a|0?(l=c[1109]|0,n=l+k|0,n>>>0<=l>>>0|n>>>0>a>>>0):0){v=0;K=w;return v|0}d:do if(!(c[1112]&4)){d=c[1007]|0;e:do if(d){f=4452;while(1){n=c[f>>2]|0;if(n>>>0<=d>>>0?(n+(c[f+4>>2]|0)|0)>>>0>d>>>0:0)break;a=c[f+8>>2]|0;if(!a){q=128;break e}else f=a}b=g-h&e;if(b>>>0<2147483647){a=Je(b|0)|0;if((a|0)==((c[f>>2]|0)+(c[f+4>>2]|0)|0)){if((a|0)!=(-1|0)){h=a;g=b;q=145;break d}}else{e=a;q=136}}else b=0}else q=128;while(0);do if((q|0)==128){d=Je(0)|0;if((d|0)!=(-1|0)?(b=d,o=c[1120]|0,p=o+-1|0,b=((p&b|0)==0?0:(p+b&0-o)-b|0)+k|0,o=c[1109]|0,p=b+o|0,b>>>0>m>>>0&b>>>0<2147483647):0){n=c[1111]|0;if(n|0?p>>>0<=o>>>0|p>>>0>n>>>0:0){b=0;break}a=Je(b|0)|0;if((a|0)==(d|0)){h=d;g=b;q=145;break d}else{e=a;q=136}}else b=0}while(0);do if((q|0)==136){d=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=e;g=b;q=145;break d}a=c[1121]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=e;g=b;q=145;break d}if((Je(a|0)|0)==(-1|0)){Je(d|0)|0;b=0;break}else{h=e;g=a+b|0;q=145;break d}}while(0);c[1112]=c[1112]|4;q=143}else{b=0;q=143}while(0);if(((q|0)==143?k>>>0<2147483647:0)?(r=Je(k|0)|0,p=Je(0)|0,t=p-r|0,s=t>>>0>(m+40|0)>>>0,!((r|0)==(-1|0)|s^1|r>>>0

>>0&((r|0)!=(-1|0)&(p|0)!=(-1|0))^1)):0){h=r;g=s?t:b;q=145}if((q|0)==145){b=(c[1109]|0)+g|0;c[1109]=b;if(b>>>0>(c[1110]|0)>>>0)c[1110]=b;j=c[1007]|0;f:do if(j){e=4452;while(1){b=c[e>>2]|0;a=c[e+4>>2]|0;if((h|0)==(b+a|0)){q=154;break}d=c[e+8>>2]|0;if(!d)break;else e=d}if(((q|0)==154?(u=e+4|0,(c[e+12>>2]&8|0)==0):0)?h>>>0>j>>>0&b>>>0<=j>>>0:0){c[u>>2]=a+g;v=(c[1004]|0)+g|0;t=j+8|0;t=(t&7|0)==0?0:0-t&7;u=j+t|0;t=v-t|0;c[1007]=u;c[1004]=t;c[u+4>>2]=t|1;c[j+v+4>>2]=40;c[1008]=c[1123];break}if(h>>>0<(c[1005]|0)>>>0)c[1005]=h;d=h+g|0;a=4452;while(1){if((c[a>>2]|0)==(d|0)){q=162;break}b=c[a+8>>2]|0;if(!b)break;else a=b}if((q|0)==162?(c[a+12>>2]&8|0)==0:0){c[a>>2]=h;l=a+4|0;c[l>>2]=(c[l>>2]|0)+g;l=h+8|0;l=h+((l&7|0)==0?0:0-l&7)|0;b=d+8|0;b=d+((b&7|0)==0?0:0-b&7)|0;k=l+m|0;i=b-l-m|0;c[l+4>>2]=m|3;g:do if((j|0)==(b|0)){v=(c[1004]|0)+i|0;c[1004]=v;c[1007]=k;c[k+4>>2]=v|1}else{if((c[1006]|0)==(b|0)){v=(c[1003]|0)+i|0;c[1003]=v;c[1006]=k;c[k+4>>2]=v|1;c[k+v>>2]=v;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;h:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[1001]=c[1001]&~(1<>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){f=a+20|0;e=c[f>>2]|0;if(!e){f=a+16|0;e=c[f>>2]|0;if(!e)break;else{a=e;d=f}}else{a=e;d=f}}c[d>>2]=0}else{v=c[b+8>>2]|0;c[v+12>>2]=a;c[a+8>>2]=v}while(0);if(!g)break;d=c[b+28>>2]|0;e=4308+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){v=g+16|0;c[((c[v>>2]|0)==(b|0)?v:g+20|0)>>2]=a;if(!a)break h}else{c[e>>2]=a;if(a|0)break;c[1002]=c[1002]&~(1<>2]=g;e=b+16|0;d=c[e>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}d=c[e+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=4044+(b<<1<<2)|0;a=c[1001]|0;b=1<>2]|0}c[b>>2]=k;c[a+12>>2]=k;c[k+8>>2]=a;c[k+12>>2]=d;break}b=f>>>8;do if(!b)e=0;else{if(f>>>0>16777215){e=31;break}u=(b+1048320|0)>>>16&8;v=b<>>16&4;v=v<>>16&2;e=14-(t|u|e)+(v<>>15)|0;e=f>>>(e+7|0)&1|e<<1}while(0);a=4308+(e<<2)|0;c[k+28>>2]=e;b=k+16|0;c[b+4>>2]=0;c[b>>2]=0;b=c[1002]|0;d=1<>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break}b=c[a>>2]|0;i:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(f|0)){b=a;break i}else{e=e<<1;b=a}}c[d>>2]=k;c[k+24>>2]=b;c[k+12>>2]=k;c[k+8>>2]=k;break g}while(0);u=b+8|0;v=c[u>>2]|0;c[v+12>>2]=k;c[u>>2]=k;c[k+8>>2]=v;c[k+12>>2]=b;c[k+24>>2]=0}while(0);v=l+8|0;K=w;return v|0}a=4452;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(v=b+(c[a+4>>2]|0)|0,v>>>0>j>>>0):0)break;a=c[a+8>>2]|0}f=v+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;d=g+-40|0;t=h+8|0;t=(t&7|0)==0?0:0-t&7;u=h+t|0;t=d-t|0;c[1007]=u;c[1004]=t;c[u+4>>2]=t|1;c[h+d+4>>2]=40;c[1008]=c[1123];d=a+4|0;c[d>>2]=27;c[b>>2]=c[1113];c[b+4>>2]=c[1114];c[b+8>>2]=c[1115];c[b+12>>2]=c[1116];c[1113]=h;c[1114]=g;c[1116]=0;c[1115]=b;b=a+24|0;do{u=b;b=b+4|0;c[b>>2]=7}while((u+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=4044+(b<<1<<2)|0;a=c[1001]|0;b=1<>2]|0}c[b>>2]=j;c[a+12>>2]=j;c[j+8>>2]=a;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)e=31;else{u=(b+1048320|0)>>>16&8;v=b<>>16&4;v=v<>>16&2;e=14-(t|u|e)+(v<>>15)|0;e=g>>>(e+7|0)&1|e<<1}else e=0;d=4308+(e<<2)|0;c[j+28>>2]=e;c[j+20>>2]=0;c[f>>2]=0;b=c[1002]|0;a=1<>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}b=c[d>>2]|0;j:do if((c[b+4>>2]&-8|0)!=(g|0)){e=g<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(g|0)){b=a;break j}else{e=e<<1;b=a}}c[d>>2]=j;c[j+24>>2]=b;c[j+12>>2]=j;c[j+8>>2]=j;break f}while(0);u=b+8|0;v=c[u>>2]|0;c[v+12>>2]=j;c[u>>2]=j;c[j+8>>2]=v;c[j+12>>2]=b;c[j+24>>2]=0}}else{v=c[1005]|0;if((v|0)==0|h>>>0>>0)c[1005]=h;c[1113]=h;c[1114]=g;c[1116]=0;c[1010]=c[1119];c[1009]=-1;c[1014]=4044;c[1013]=4044;c[1016]=4052;c[1015]=4052;c[1018]=4060;c[1017]=4060;c[1020]=4068;c[1019]=4068;c[1022]=4076;c[1021]=4076;c[1024]=4084;c[1023]=4084;c[1026]=4092;c[1025]=4092;c[1028]=4100;c[1027]=4100;c[1030]=4108;c[1029]=4108;c[1032]=4116;c[1031]=4116;c[1034]=4124;c[1033]=4124;c[1036]=4132;c[1035]=4132;c[1038]=4140;c[1037]=4140;c[1040]=4148;c[1039]=4148;c[1042]=4156;c[1041]=4156;c[1044]=4164;c[1043]=4164;c[1046]=4172;c[1045]=4172;c[1048]=4180;c[1047]=4180;c[1050]=4188;c[1049]=4188;c[1052]=4196;c[1051]=4196;c[1054]=4204;c[1053]=4204;c[1056]=4212;c[1055]=4212;c[1058]=4220;c[1057]=4220;c[1060]=4228;c[1059]=4228;c[1062]=4236;c[1061]=4236;c[1064]=4244;c[1063]=4244;c[1066]=4252;c[1065]=4252;c[1068]=4260;c[1067]=4260;c[1070]=4268;c[1069]=4268;c[1072]=4276;c[1071]=4276;c[1074]=4284;c[1073]=4284;c[1076]=4292;c[1075]=4292;v=g+-40|0;t=h+8|0;t=(t&7|0)==0?0:0-t&7;u=h+t|0;t=v-t|0;c[1007]=u;c[1004]=t;c[u+4>>2]=t|1;c[h+v+4>>2]=40;c[1008]=c[1123]}while(0);b=c[1004]|0;if(b>>>0>m>>>0){t=b-m|0;c[1004]=t;v=c[1007]|0;u=v+m|0;c[1007]=u;c[u+4>>2]=t|1;c[v+4>>2]=m|3;v=v+8|0;K=w;return v|0}}c[(Rd()|0)>>2]=12;v=0;K=w;return v|0}function Id(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(!a)return;d=a+-8|0;e=c[1005]|0;a=c[a+-4>>2]|0;b=a&-8;k=d+b|0;do if(!(a&1)){f=c[d>>2]|0;if(!(a&3))return;g=d+(0-f)|0;h=f+b|0;if(g>>>0>>0)return;if((c[1006]|0)==(g|0)){b=k+4|0;a=c[b>>2]|0;if((a&3|0)!=3){i=g;j=g;b=h;break}c[1003]=h;c[b>>2]=a&-2;c[g+4>>2]=h|1;c[g+h>>2]=h;return}d=f>>>3;if(f>>>0<256){a=c[g+8>>2]|0;b=c[g+12>>2]|0;if((b|0)==(a|0)){c[1001]=c[1001]&~(1<>2]=b;c[b+8>>2]=a;i=g;j=g;b=h;break}}f=c[g+24>>2]|0;a=c[g+12>>2]|0;do if((a|0)==(g|0)){d=g+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0;d=a}else{d=c[g+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(f){a=c[g+28>>2]|0;b=4308+(a<<2)|0;if((c[b>>2]|0)==(g|0)){c[b>>2]=d;if(!d){c[1002]=c[1002]&~(1<>2]|0)==(g|0)?j:f+20|0)>>2]=d;if(!d){i=g;j=g;b=h;break}}c[d+24>>2]=f;b=g+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}a=c[b+4>>2]|0;if(a){c[d+20>>2]=a;c[a+24>>2]=d;i=g;j=g;b=h}else{i=g;j=g;b=h}}else{i=g;j=g;b=h}}else{i=d;j=d}while(0);if(i>>>0>=k>>>0)return;a=k+4|0;d=c[a>>2]|0;if(!(d&1))return;if(!(d&2)){if((c[1007]|0)==(k|0)){k=(c[1004]|0)+b|0;c[1004]=k;c[1007]=j;c[j+4>>2]=k|1;if((j|0)!=(c[1006]|0))return;c[1006]=0;c[1003]=0;return}if((c[1006]|0)==(k|0)){k=(c[1003]|0)+b|0;c[1003]=k;c[1006]=i;c[j+4>>2]=k|1;c[i+k>>2]=k;return}f=(d&-8)+b|0;e=d>>>3;do if(d>>>0<256){b=c[k+8>>2]|0;a=c[k+12>>2]|0;if((a|0)==(b|0)){c[1001]=c[1001]&~(1<>2]=a;c[a+8>>2]=b;break}}else{g=c[k+24>>2]|0;a=c[k+12>>2]|0;do if((a|0)==(k|0)){d=k+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0;d=a}else{d=c[k+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[k+28>>2]|0;b=4308+(a<<2)|0;if((c[b>>2]|0)==(k|0)){c[b>>2]=d;if(!d){c[1002]=c[1002]&~(1<>2]|0)==(k|0)?h:g+20|0)>>2]=d;if(!d)break}c[d+24>>2]=g;b=k+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}a=c[b+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[j+4>>2]=f|1;c[i+f>>2]=f;if((j|0)==(c[1006]|0)){c[1003]=f;return}}else{c[a>>2]=d&-2;c[j+4>>2]=b|1;c[i+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=4044+(a<<1<<2)|0;b=c[1001]|0;a=1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)e=31;else{i=(a+1048320|0)>>>16&8;k=a<>>16&4;k=k<>>16&2;e=14-(h|i|e)+(k<>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;b=4308+(e<<2)|0;c[j+28>>2]=e;c[j+20>>2]=0;c[j+16>>2]=0;a=c[1002]|0;d=1<>2]=j;c[j+24>>2]=b;c[j+12>>2]=j;c[j+8>>2]=j}else{a=c[b>>2]|0;b:do if((c[a+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=a+16+(e>>>31<<2)|0;b=c[d>>2]|0;if(!b)break;if((c[b+4>>2]&-8|0)==(f|0)){a=b;break b}else{e=e<<1;a=b}}c[d>>2]=j;c[j+24>>2]=a;c[j+12>>2]=j;c[j+8>>2]=j;break a}while(0);i=a+8|0;k=c[i>>2]|0;c[k+12>>2]=j;c[i>>2]=j;c[j+8>>2]=k;c[j+12>>2]=a;c[j+24>>2]=0}while(0);k=(c[1009]|0)+-1|0;c[1009]=k;if(k|0)return;a=4460;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[1009]=-1;return}function Jd(a,b){a=a|0;b=b|0;var d=0;if(a){d=p(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;b=Hd(d)|0;if(!b)return b|0;if(!(c[b+-4>>2]&3))return b|0;Ie(b|0,0,d|0)|0;return b|0}function Kd(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){a=Hd(b)|0;return a|0}if(b>>>0>4294967231){c[(Rd()|0)>>2]=12;a=0;return a|0}d=Ld(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){a=d+8|0;return a|0}d=Hd(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Ge(d|0,a|0,(e>>>0>>0?e:b)|0)|0;Id(a);a=d;return a|0}function Ld(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=a+4|0;l=c[m>>2]|0;d=l&-8;i=a+d|0;if(!(l&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[1121]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[m>>2]=l&1|b|2;c[k+4>>2]=d|3;b=i+4|0;c[b>>2]=c[b>>2]|1;Md(k,d);return a|0}if((c[1007]|0)==(i|0)){k=(c[1004]|0)+d|0;e=k-b|0;d=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[m>>2]=l&1|b|2;c[d+4>>2]=e|1;c[1007]=d;c[1004]=e;return a|0}if((c[1006]|0)==(i|0)){e=(c[1003]|0)+d|0;if(e>>>0>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[m>>2]=l&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[m>>2]=l&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[1003]=d;c[1006]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[1001]=c[1001]&~(1<>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){f=i+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else e=f}while(1){g=d+20|0;f=c[g>>2]|0;if(!f){g=d+16|0;f=c[g>>2]|0;if(!f)break;else{d=f;e=g}}else{d=f;e=g}}c[e>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=4308+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[1002]=c[1002]&~(1<>2]|0)==(i|0)?g:h+20|0)>>2]=f;if(!f)break}c[f+24>>2]=h;e=i+16|0;d=c[e>>2]|0;if(d|0){c[f+16>>2]=d;c[d+24>>2]=f}d=c[e+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[m>>2]=l&1|j|2;b=a+j+4|0;c[b>>2]=c[b>>2]|1;return a|0}else{i=a+b|0;c[m>>2]=l&1|b|2;c[i+4>>2]=k|3;b=a+j+4|0;c[b>>2]=c[b>>2]|1;Md(i,k);return a|0}return 0}function Md(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){e=c[a>>2]|0;if(!(d&3))return;g=a+(0-e)|0;h=e+b|0;if((c[1006]|0)==(g|0)){a=j+4|0;d=c[a>>2]|0;if((d&3|0)!=3){i=g;a=h;break}c[1003]=h;c[a>>2]=d&-2;c[g+4>>2]=h|1;c[j>>2]=h;return}b=e>>>3;if(e>>>0<256){d=c[g+8>>2]|0;a=c[g+12>>2]|0;if((a|0)==(d|0)){c[1001]=c[1001]&~(1<>2]=a;c[a+8>>2]=d;i=g;a=h;break}}f=c[g+24>>2]|0;d=c[g+12>>2]|0;do if((d|0)==(g|0)){b=g+16|0;a=b+4|0;d=c[a>>2]|0;if(!d){d=c[b>>2]|0;if(!d){b=0;break}else a=b}while(1){e=d+20|0;b=c[e>>2]|0;if(!b){e=d+16|0;b=c[e>>2]|0;if(!b)break;else{d=b;a=e}}else{d=b;a=e}}c[a>>2]=0;b=d}else{b=c[g+8>>2]|0;c[b+12>>2]=d;c[d+8>>2]=b;b=d}while(0);if(f){d=c[g+28>>2]|0;a=4308+(d<<2)|0;if((c[a>>2]|0)==(g|0)){c[a>>2]=b;if(!b){c[1002]=c[1002]&~(1<>2]|0)==(g|0)?i:f+20|0)>>2]=b;if(!b){i=g;a=h;break}}c[b+24>>2]=f;a=g+16|0;d=c[a>>2]|0;if(d|0){c[b+16>>2]=d;c[d+24>>2]=b}d=c[a+4>>2]|0;if(d){c[b+20>>2]=d;c[d+24>>2]=b;i=g;a=h}else{i=g;a=h}}else{i=g;a=h}}else{i=a;a=b}while(0);d=j+4|0;b=c[d>>2]|0;if(!(b&2)){if((c[1007]|0)==(j|0)){j=(c[1004]|0)+a|0;c[1004]=j;c[1007]=i;c[i+4>>2]=j|1;if((i|0)!=(c[1006]|0))return;c[1006]=0;c[1003]=0;return}if((c[1006]|0)==(j|0)){j=(c[1003]|0)+a|0;c[1003]=j;c[1006]=i;c[i+4>>2]=j|1;c[i+j>>2]=j;return}g=(b&-8)+a|0;e=b>>>3;do if(b>>>0<256){a=c[j+8>>2]|0;d=c[j+12>>2]|0;if((d|0)==(a|0)){c[1001]=c[1001]&~(1<>2]=d;c[d+8>>2]=a;break}}else{f=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){b=j+16|0;a=b+4|0;d=c[a>>2]|0;if(!d){d=c[b>>2]|0;if(!d){b=0;break}else a=b}while(1){e=d+20|0;b=c[e>>2]|0;if(!b){e=d+16|0;b=c[e>>2]|0;if(!b)break;else{d=b;a=e}}else{d=b;a=e}}c[a>>2]=0;b=d}else{b=c[j+8>>2]|0;c[b+12>>2]=d;c[d+8>>2]=b;b=d}while(0);if(f|0){d=c[j+28>>2]|0;a=4308+(d<<2)|0;if((c[a>>2]|0)==(j|0)){c[a>>2]=b;if(!b){c[1002]=c[1002]&~(1<>2]|0)==(j|0)?h:f+20|0)>>2]=b;if(!b)break}c[b+24>>2]=f;a=j+16|0;d=c[a>>2]|0;if(d|0){c[b+16>>2]=d;c[d+24>>2]=b}d=c[a+4>>2]|0;if(d|0){c[b+20>>2]=d;c[d+24>>2]=b}}}while(0);c[i+4>>2]=g|1;c[i+g>>2]=g;if((i|0)==(c[1006]|0)){c[1003]=g;return}else a=g}else{c[d>>2]=b&-2;c[i+4>>2]=a|1;c[i+a>>2]=a}d=a>>>3;if(a>>>0<256){b=4044+(d<<1<<2)|0;a=c[1001]|0;d=1<>2]|0}c[d>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=b;return}d=a>>>8;if(d)if(a>>>0>16777215)f=31;else{h=(d+1048320|0)>>>16&8;j=d<>>16&4;j=j<>>16&2;f=14-(g|h|f)+(j<>>15)|0;f=a>>>(f+7|0)&1|f<<1}else f=0;b=4308+(f<<2)|0;c[i+28>>2]=f;c[i+20>>2]=0;c[i+16>>2]=0;d=c[1002]|0;e=1<>2]=i;c[i+24>>2]=b;c[i+12>>2]=i;c[i+8>>2]=i;return}d=c[b>>2]|0;a:do if((c[d+4>>2]&-8|0)!=(a|0)){f=a<<((f|0)==31?0:25-(f>>>1)|0);while(1){e=d+16+(f>>>31<<2)|0;b=c[e>>2]|0;if(!b)break;if((c[b+4>>2]&-8|0)==(a|0)){d=b;break a}else{f=f<<1;d=b}}c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;return}while(0);h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;return}function Nd(a){a=a|0;var b=0,d=0;b=K;K=K+16|0;d=b;c[d>>2]=Sd(c[a+60>>2]|0)|0;a=Qd(A(6,d|0)|0)|0;K=b;return a|0}function Od(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=K;K=K+48|0;i=m+32|0;f=m+16|0;e=m;j=a+28|0;g=c[j>>2]|0;c[e>>2]=g;k=a+20|0;g=(c[k>>2]|0)-g|0;c[e+4>>2]=g;c[e+8>>2]=b;c[e+12>>2]=d;g=g+d|0;h=a+60|0;c[f>>2]=c[h>>2];c[f+4>>2]=e;c[f+8>>2]=2;b=Qd(x(146,f|0)|0)|0;a:do if((g|0)!=(b|0)){f=2;while(1){if((b|0)<0)break;g=g-b|0;o=c[e+4>>2]|0;n=b>>>0>o>>>0;e=n?e+8|0:e;f=f+(n<<31>>31)|0;o=b-(n?o:0)|0;c[e>>2]=(c[e>>2]|0)+o;n=e+4|0;c[n>>2]=(c[n>>2]|0)-o;c[i>>2]=c[h>>2];c[i+4>>2]=e;c[i+8>>2]=f;b=Qd(x(146,i|0)|0)|0;if((g|0)==(b|0)){l=3;break a}}c[a+16>>2]=0;c[j>>2]=0;c[k>>2]=0;c[a>>2]=c[a>>2]|32;if((f|0)==2)d=0;else d=d-(c[e+4>>2]|0)|0}else l=3;while(0);if((l|0)==3){o=c[a+44>>2]|0;c[a+16>>2]=o+(c[a+48>>2]|0);c[j>>2]=o;c[k>>2]=o}K=m;return d|0}function Pd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=K;K=K+32|0;h=g+8|0;f=g;c[h>>2]=c[a+60>>2];c[h+4>>2]=d;c[h+8>>2]=b;c[h+12>>2]=f;c[h+16>>2]=e;if((Qd(w(140,h|0)|0)|0)<0){b=f;c[b>>2]=-1;c[b+4>>2]=-1;b=-1;d=-1}else{d=f;b=c[d+4>>2]|0;d=c[d>>2]|0}s(b|0);K=g;return d|0}function Qd(a){a=a|0;if(a>>>0>4294963200){c[(Rd()|0)>>2]=0-a;a=-1}return a|0}function Rd(){return 4564}function Sd(a){a=a|0;return a|0}function Td(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=K;K=K+32|0;f=g;c[b+36>>2]=5;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,z(54,f|0)|0):0)a[b+75>>0]=-1;f=Od(b,d,e)|0;K=g;return f|0}function Ud(){return 2372}function Vd(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24))do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));return (d&255)-(e&255)|0}function Wd(a){a=a|0;return (a+-65|0)>>>0<26|0}function Xd(a){a=a|0;var b=0;b=(Wd(a)|0)==0;return (b?a:a|32)|0}function Yd(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3)){d=b;e=5}else{d=f;while(1){if(!(a[b>>0]|0))break a;b=b+1|0;d=b;if(!(d&3)){d=b;e=5;break}}}while(0);if((e|0)==5){while(1){b=c[d>>2]|0;if(!((b&-2139062144^-2139062144)&b+-16843009))d=d+4|0;else break}if((b&255)<<24>>24)do d=d+1|0;while((a[d>>0]|0)!=0)}return d-f|0}function Zd(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+132>>2]|0;a=a+128|0;if(b|0)c[b+128>>2]=c[a>>2];a=c[a>>2]|0;if(!a)a=($d()|0)+232|0;else a=a+132|0;c[a>>2]=b}return}function _d(a){a=a|0;return}function $d(){return Ud()|0}function ae(a){a=a|0;return 1}function be(){u(4568);return 4576}function ce(){B(4568);return}function de(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if((c[a+76>>2]|0)>-1)f=ae(a)|0;else f=0;Zd(a);g=(c[a>>2]&1|0)!=0;if(!g){e=be()|0;d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[e>>2]|0)==(a|0))c[e>>2]=b;ce()}d=ee(a)|0;d=N[c[a+12>>2]&15](a)|0|d;b=c[a+96>>2]|0;if(b|0)Id(b);if(g){if(f|0)_d(a)}else Id(a);return d|0}function ee(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=fe(a)|0;break}d=(ae(a)|0)==0;b=fe(a)|0;if(!d)_d(a)}else{if(!(c[592]|0))b=0;else b=ee(c[592]|0)|0;a=c[(be()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=ae(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=fe(a)|0|b;if(d|0)_d(a);a=c[a+56>>2]|0}while((a|0)!=0);ce()}while(0);return b|0}function fe(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=a+20|0;g=a+28|0;if((c[h>>2]|0)>>>0>(c[g>>2]|0)>>>0?(P[c[a+36>>2]&7](a,0,0)|0,(c[h>>2]|0)==0):0)b=-1;else{f=a+4|0;b=c[f>>2]|0;e=a+8|0;d=c[e>>2]|0;if(b>>>0>>0){d=b-d|0;Q[c[a+40>>2]&15](a,d,((d|0)<0)<<31>>31,1)|0;t()|0}c[a+16>>2]=0;c[g>>2]=0;c[h>>2]=0;c[e>>2]=0;c[f>>2]=0;b=0}return b|0}function ge(a){a=a|0;var b=0,d=0;if((c[a+76>>2]|0)>-1){d=(ae(a)|0)==0;b=(c[a>>2]|0)>>>5&1;if(!d)_d(a)}else b=(c[a>>2]|0)>>>5&1;return b|0}function he(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else i=16;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)==g<<24>>24)if(!e){i=16;break}else break;f=p(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break c;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break}}else i=11;while(0);if((i|0)==11)if(!e){i=16;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;e=e+-1|0;if(!e){i=16;break}else b=b+1|0}}while(0);if((i|0)==16)b=0;return b|0}function ie(a,b,c){a=a|0;b=b|0;c=c|0;return je(a,b,((b|0)<0)<<31>>31,c)|0}function je(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[a+76>>2]|0)>-1){f=(ae(a)|0)==0;b=ke(a,b,d,e)|0;if(!f)_d(a)}else b=ke(a,b,d,e)|0;return b|0}function ke(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if((e|0)==1){g=(c[a+8>>2]|0)-(c[a+4>>2]|0)|0;b=xe(b|0,d|0,g|0,((g|0)<0)<<31>>31|0)|0;d=t()|0}g=a+20|0;f=a+28|0;if((c[g>>2]|0)>>>0>(c[f>>2]|0)>>>0?(P[c[a+36>>2]&7](a,0,0)|0,(c[g>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[g>>2]=0;Q[c[a+40>>2]&15](a,b,d,e)|0;if((t()|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function le(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function me(a,b){a=a|0;b=b|0;ne(a,b)|0;return a|0}function ne(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(!(e&3))e=d;else while(1){e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0;if(!(d&3)){e=d;break}}d=c[e>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009)){f=b;b=e;while(1){e=b+4|0;b=f+4|0;c[f>>2]=d;d=c[e>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=e;break}else{f=b;b=e}}}else d=e;f=10}else f=10;while(0);if((f|0)==10){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function oe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=K;K=K+16|0;f=e;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;a=Qd(y(3,f|0)|0)|0;K=e;return a|0}function pe(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;e=a[b>>0]|0;a:do if(!(e<<24>>24))e=0;else{g=e;f=e&255;while(1){e=a[c>>0]|0;if(!(e<<24>>24)){e=g;break a}if(g<<24>>24!=e<<24>>24?(g=Xd(f)|0,(g|0)!=(Xd(d[c>>0]|0)|0)):0)break;b=b+1|0;c=c+1|0;e=a[b>>0]|0;if(!(e<<24>>24)){e=0;break a}else{g=e;f=e&255}}e=a[b>>0]|0}while(0);g=Xd(e&255)|0;return g-(Xd(d[c>>0]|0)|0)|0}function qe(a,b,c){a=a|0;b=b|0;c=c|0;re(a,b,c)|0;return a|0}function re(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=13}}else e=0}else h=13;while(0);c:do if((h|0)==13)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);Ie(b|0,0,e|0)|0;return b|0}function se(a){a=a|0;var b=0,d=0,e=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=Q[c[a+40>>2]&15](a,0,0,b)|0;d=t()|0;if((d|0)>=0){e=(c[a+8>>2]|0)-(c[a+4>>2]|0)|0;e=xe(b|0,d|0,e|0,((e|0)<0)<<31>>31|0)|0;d=t()|0;b=(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;b=we(e|0,d|0,b|0,((b|0)<0)<<31>>31|0)|0;d=t()|0}s(d|0);return b|0}function te(a){a=a|0;var b=0,d=0,e=0;if((c[a+76>>2]|0)>-1){e=(ae(a)|0)==0;b=se(a)|0;d=t()|0;if(!e)_d(a)}else{b=se(a)|0;d=t()|0}s(d|0);return b|0}function ue(a){a=a|0;var b=0;a=te(a)|0;b=t()|0;if((b|0)>0|(b|0)==0&a>>>0>2147483647){c[(Rd()|0)>>2]=75;a=-1}return a|0}function ve(a){a=a|0;if((c[a+76>>2]|0)>-1?ae(a)|0:0)_d(a);return c[a+60>>2]|0}function we(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (s(b+d+(c>>>0>>0|0)>>>0|0),c|0)|0}function xe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (s(d|0),a-c>>>0|0)|0}function ye(a){a=a|0;return (a?31-(q(a^a-1)|0)|0:32)|0}function ze(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (s(n|0),f)|0}else{if(!g){n=0;f=0;return (s(n|0),f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (s(n|0),f)|0}}g=(i|0)==0;do if(h){if(!g){g=(q(i|0)|0)-(q(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (s(n|0),f)|0}g=h-1|0;if(g&h|0){i=(q(h|0)|0)+33-(q(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (s(o|0),p)|0}else{p=ye(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (s(o|0),p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (s(o|0),p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (s(o|0),p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((ye(i|0)|0)>>>0);return (s(o|0),p)|0}g=(q(i|0)|0)-(q(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (s(o|0),p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=we(m|0,l|0,-1,-1)|0;d=t()|0;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;xe(k|0,d|0,e|0,n|0)|0;p=t()|0;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=xe(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=t()|0;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (s(o|0),p)|0}function Ae(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=xe(j^a|0,i^b|0,j|0,i|0)|0;g=t()|0;a=f^j;b=e^i;return xe((ze(h,g,xe(f^c|0,e^d|0,f|0,e|0)|0,t()|0,0)|0)^a|0,(t()|0)^b|0,a|0,b|0)|0}function Be(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=p(e,f)|0;d=a>>>16;a=(c>>>16)+(p(e,d)|0)|0;e=b>>>16;b=p(e,f)|0;return (s((a>>>16)+(p(e,d)|0)+(((a&65535)+b|0)>>>16)|0),a+b<<16|c&65535|0)|0}function Ce(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Be(e,f)|0;a=t()|0;return (s((p(b,f)|0)+(p(d,e)|0)+a|a&0|0),c|0|0)|0}function De(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ze(a,b,c,d,0)|0}function Ee(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){s(b>>c|0);return a>>>c|(b&(1<>c-32|0}function Fe(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){s(b<>>32-c|0);return a<=8192){D(b|0,d|0,e|0)|0;return b|0}h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function He(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Ge(b,c,d)|0;return b|0}function Ie(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;i=d|d<<8|d<<16|d<<24;g=f-64|0;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function Je(a){a=a|0;var b=0,d=0,e=0;e=C()|0;d=c[g>>2]|0;b=d+a|0;if((a|0)>0&(b|0)<(d|0)|(b|0)<0){I(b|0)|0;v(12);return -1}if((b|0)>(e|0))if(!(E(b|0)|0)){v(12);return -1}c[g>>2]=b;return d|0}function Ke(a,b){a=a|0;b=b|0;return N[a&15](b|0)|0}function Le(a,b,c){a=a|0;b=b|0;c=c|0;return O[a&1](b|0,c|0)|0}function Me(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return P[a&7](b|0,c|0,d|0)|0}function Ne(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Q[a&15](b|0,c|0,d|0,e|0)|0}function Oe(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return R[a&31](b|0,c|0,d|0,e|0,f|0)|0}function Pe(a,b){a=a|0;b=b|0;S[a&1](b|0)}function Qe(a){a=a|0;r(0);return 0}function Re(a,b){a=a|0;b=b|0;r(1);return 0}function Se(a,b,c){a=a|0;b=b|0;c=c|0;r(2);return 0}function Te(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;r(3);return 0}function Ue(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;r(4);return 0}function Ve(a){a=a|0;r(5)} // EMSCRIPTEN_END_FUNCS var N=[Qe,Nd,$,Ya,Gb,Hb,Ib,Sb,Mb,Qe,Qe,Qe,Qe,Qe,Qe,Qe];var O=[Re,ab];var P=[Se,Td,Z,_,ib,Od,Se,Se];var Q=[Te,Vb,Yb,$b,fc,jc,nc,qc,Pd,Y,Te,Te,Te,Te,Te,Te];var R=[Ue,Ub,Wb,Xb,Zb,_b,ac,bc,cc,dc,ec,gc,hc,ic,kc,lc,mc,oc,pc,dd,ed,fd,gd,Ue,Ue,Ue,Ue,Ue,Ue,Ue,Ue,Ue];var S=[Ve,kb];return{___divdi3:Ae,___muldi3:Ce,___udivdi3:De,_bitshift64Ashr:Ee,_bitshift64Shl:Fe,_free:Id,_i64Add:we,_i64Subtract:xe,_malloc:Hd,_memcpy:Ge,_memmove:He,_memset:Ie,_ogv_demuxer_destroy:ca,_ogv_demuxer_flush:ia,_ogv_demuxer_init:X,_ogv_demuxer_keypoint_offset:ga,_ogv_demuxer_media_duration:ea,_ogv_demuxer_media_length:da,_ogv_demuxer_process:ba,_ogv_demuxer_receive_input:aa,_ogv_demuxer_seek_to_keypoint:ha,_ogv_demuxer_seekable:fa,_sbrk:Je,dynCall_ii:Ke,dynCall_iii:Le,dynCall_iiii:Me,dynCall_iiiii:Ne,dynCall_iiiiii:Oe,dynCall_vi:Pe,establishStackSpace:W,stackAlloc:T,stackRestore:V,stackSave:U}}) // EMSCRIPTEN_END_ASM (na,oa,buffer);a.___divdi3=S.___divdi3;a.___muldi3=S.___muldi3;a.___udivdi3=S.___udivdi3;a._bitshift64Ashr=S._bitshift64Ashr;a._bitshift64Shl=S._bitshift64Shl;a._free=S._free;a._i64Add=S._i64Add;a._i64Subtract=S._i64Subtract;a._malloc=S._malloc;a._memcpy=S._memcpy;a._memmove=S._memmove;a._memset=S._memset;a._ogv_demuxer_destroy=S._ogv_demuxer_destroy;a._ogv_demuxer_flush=S._ogv_demuxer_flush; a._ogv_demuxer_init=S._ogv_demuxer_init;a._ogv_demuxer_keypoint_offset=S._ogv_demuxer_keypoint_offset;a._ogv_demuxer_media_duration=S._ogv_demuxer_media_duration;a._ogv_demuxer_media_length=S._ogv_demuxer_media_length;a._ogv_demuxer_process=S._ogv_demuxer_process;a._ogv_demuxer_receive_input=S._ogv_demuxer_receive_input;a._ogv_demuxer_seek_to_keypoint=S._ogv_demuxer_seek_to_keypoint;a._ogv_demuxer_seekable=S._ogv_demuxer_seekable;a._sbrk=S._sbrk;a.establishStackSpace=S.establishStackSpace; a.stackAlloc=S.stackAlloc;a.stackRestore=S.stackRestore;a.stackSave=S.stackSave;a.dynCall_ii=S.dynCall_ii;a.dynCall_iii=S.dynCall_iii;a.dynCall_iiii=S.dynCall_iiii;a.dynCall_iiiii=S.dynCall_iiiii;a.dynCall_iiiiii=S.dynCall_iiiiii;a.dynCall_vi=S.dynCall_vi;a.asm=S; if(L){if(String.prototype.startsWith?!L.startsWith(M):0!==L.indexOf(M)){var pa=L;L=a.locateFile?a.locateFile(pa,r):r+pa}if(p||q){var qa=a.readBinary(L);E.set(qa,8)}else{I++;a.monitorRunDependencies&&a.monitorRunDependencies(I);var T=function(b){b.byteLength&&(b=new Uint8Array(b));E.set(b,8);a.memoryInitializerRequest&&delete a.memoryInitializerRequest.response;I--;a.monitorRunDependencies&&a.monitorRunDependencies(I);0==I&&(null!==J&&(clearInterval(J),J=null),K&&(b=K,K=null,b()))},ra=function(){a.readAsync(L, T,function(){throw"could not load memory initializer "+L;})},sa=w(L);if(sa)T(sa.buffer);else if(a.memoryInitializerRequest){var ta=function(){var b=a.memoryInitializerRequest,c=b.response;if(200!==b.status&&0!==b.status)if(c=w(a.memoryInitializerRequestURL))c=c.buffer;else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+b.status+", retrying "+L);ra();return}T(c)};a.memoryInitializerRequest.response?setTimeout(ta,0):a.memoryInitializerRequest.addEventListener("load", ta)}else ra()}}a.then=function(b){if(a.calledRun)b(a);else{var c=a.onRuntimeInitialized;a.onRuntimeInitialized=function(){c&&c();b(a)}}return a};function U(b){this.name="ExitStatus";this.message="Program terminated with exit("+b+")";this.status=b}U.prototype=Error();U.prototype.constructor=U;K=function ua(){a.calledRun||V();a.calledRun||(K=ua)}; function V(){function b(){if(!a.calledRun&&(a.calledRun=!0,!C)){ia||(ia=!0,H(da));H(ea);if(a.onRuntimeInitialized)a.onRuntimeInitialized();if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;){var b=a.postRun.shift();ha.unshift(b)}H(ha)}}if(!(0=c||(W&&a._free(W),X=c,W=a._malloc(X));var e=W;a.HEAPU8.set(new Uint8Array(b),e);a._ogv_demuxer_receive_input(e,c)});c()};a.process=function(b){var c=Z(function(){return a._ogv_demuxer_process()});b(!!c)};a.dequeueVideoPacket=function(b){if(a.videoPackets.length){var c=a.videoPackets.shift().data;b(c)}else b(null)};a.dequeueAudioPacket=function(b){if(a.audioPackets.length){var c=a.audioPackets.shift();b(c.data,c.discardPadding)}else b(null)}; a.getKeypointOffset=function(b,c){var d=Z(function(){return a._ogv_demuxer_keypoint_offset(1E3*b)});c(d)};a.seekToKeypoint=function(b,c){var d=Z(function(){return a._ogv_demuxer_seek_to_keypoint(1E3*b)});d&&(a.audioPackets.splice(0,a.audioPackets.length),a.videoPackets.splice(0,a.videoPackets.length));c(!!d)};a.flush=function(b){Z(function(){a.audioPackets.splice(0,a.audioPackets.length);a.videoPackets.splice(0,a.videoPackets.length);a._ogv_demuxer_flush()});b()};a.close=function(){}; return OGVDemuxerOgg } ); })(); if (typeof exports === 'object' && typeof module === 'object') module.exports = OGVDemuxerOgg; else if (typeof define === 'function' && define['amd']) define([], function() { return OGVDemuxerOgg; }); else if (typeof exports === 'object') exports["OGVDemuxerOgg"] = OGVDemuxerOgg;