@pixiebrix/jq-web
Version:
a hack that makes jq run in the browser with emscripten.
1 lines • 1.31 MB
JavaScript
var jq=function(e){var r=void 0!==(e=e||{})?e:{},a=!1,i=[],f="",k=[],b=[],n=[];function s(e){for(var r=new Uint8Array(e),a="",i=0;i<r.length;++i)a+=String.fromCharCode(r[i]);return decodeURIComponent(escape(a))}r=Object.assign({noInitialRun:!0,noExitRuntime:!0,onRuntimeInitialized:function(){a=!0,i.forEach(function(e){e()})},preRun:function(){Se.init(function(){return k.length?k.pop():f?(k=function(e){for(var r=[],a=unescape(encodeURIComponent(e)),i=0;i<a.length;i++)r.push(a.charCodeAt(i));return r}(f),f="",k.push(null),k.reverse(),k.pop()):null},function(e){e&&b.push(e)},function(e){e&&n.push(e)})}},r);var t,c={};for(t in r)r.hasOwnProperty(t)&&(c[t]=r[t]);var o,u,l=[],v="./this.program",d=function(e,r){throw r},h=!1,m=!1;h="object"==typeof window,m="function"==typeof importScripts,o="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,u=!h&&!o&&!m;var w,p,g,y,_,E="";function D(e){return r.locateFile?r.locateFile(e,E):E+e}o?(E=m?require("path").dirname(E)+"/":__dirname+"/",w=function(e,r){return y||(y=require("fs")),_||(_=require("path")),e=_.normalize(e),y.readFileSync(e,r?null:"utf8")},g=function(e){var r=w(e,!0);return r.buffer||(r=new Uint8Array(r)),R(r.buffer),r},process.argv.length>1&&(v=process.argv[1].replace(/\\/g,"/")),l=process.argv.slice(2),process.on("uncaughtException",function(e){if(!(e instanceof er))throw e}),process.on("unhandledRejection",se),d=function(e){process.exit(e)},r.inspect=function(){return"[Emscripten Module object]"}):u?("undefined"!=typeof read&&(w=function(e){return read(e)}),g=function(e){var r;return"function"==typeof readbuffer?new Uint8Array(readbuffer(e)):(R("object"==typeof(r=read(e,"binary"))),r)},"undefined"!=typeof scriptArgs?l=scriptArgs:void 0!==arguments&&(l=arguments),"function"==typeof quit&&(d=function(e){quit(e)}),"undefined"!=typeof print&&("undefined"==typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!=typeof printErr?printErr:print)):(h||m)&&(m?E=self.location.href:document.currentScript&&(E=document.currentScript.src),E=0!==E.indexOf("blob:")?E.substr(0,E.lastIndexOf("/")+1):"",w=function(e){var r=new XMLHttpRequest;return r.open("GET",e,!1),r.send(null),r.responseText},m&&(g=function(e){var r=new XMLHttpRequest;return r.open("GET",e,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),p=function(e,r,a){var i=new XMLHttpRequest;i.open("GET",e,!0),i.responseType="arraybuffer",i.onload=function(){200==i.status||0==i.status&&i.response?r(i.response):a()},i.onerror=a,i.send(null)});var S=r.print||console.log.bind(console),F=r.printErr||console.warn.bind(console);for(t in c)c.hasOwnProperty(t)&&(r[t]=c[t]);c=null,r.arguments&&(l=r.arguments),r.thisProgram&&(v=r.thisProgram),r.quit&&(d=r.quit);var M;r.wasmBinary&&(M=r.wasmBinary),r.noExitRuntime&&r.noExitRuntime;var A,x={Memory:function(e){return{buffer:new ArrayBuffer(65536*e.initial),grow:function(e){return Ve(e)}}},Table:function(e){var r=new Array(e.initial);return r.grow=function(e){r.length>=177&&se("Unable to grow wasm table. Use a higher value for RESERVED_FUNCTION_POINTERS or set ALLOW_TABLE_GROWTH."),r.push(null)},r.set=function(e,a){r[e]=a},r.get=function(e){return r[e]},r},Module:function(e){return{}},Instance:function(e,r){return{exports:function(e,r,a){var i=new ArrayBuffer(8),f=new Int32Array(i),k=(new Float32Array(i),new Float64Array(i));function b(e){return f[e]}function n(e,r){f[e]=r}function s(){return k[0]}function t(e){k[0]=e}function c(){return"function"==typeof setTempRet0&&setTempRet0(f[1]),f[0]}function o(e,r){f[0]=e,f[1]=r}return function(e,r,i){r.memory;var f=a,k=new e.Int8Array(i),u=new e.Int16Array(i),l=new e.Int32Array(i),v=new e.Uint8Array(i),d=new e.Uint16Array(i),h=new e.Uint32Array(i),m=(new e.Float32Array(i),new e.Float64Array(i)),w=e.Math.imul,p=e.Math.fround,g=e.Math.abs,y=e.Math.clz32,_=e.Math.min,E=e.Math.max,D=e.Math.floor,S=e.Math.ceil,F=e.Math.sqrt,M=r.abort,A=e.NaN,x=e.Infinity,P=r.__assert_fail,T=r.exit,R=r.fd_close,O=r.__sys_open,z=r.strftime,I=r.fd_write,N=r.__sys_fcntl64,j=r.__sys_stat64,C=r.fd_fdstat_get,U=r.abort,B=r.time,L=r.localtime_r,H=r.gmtime_r,q=r.mktime,Y=r.strptime,W=r.fd_seek,X=r.emscripten_memcpy_big,G=r.emscripten_resize_heap,J=r.environ_get,V=r.environ_sizes_get,K=r.__sys_readlink,Z=r.fd_read,$=r.round,Q=r.__sys_ioctl,ee=r.__sys_fstat64,re=r.__sys_getuid32,ae=r.pathconf,ie=r.getpwuid,fe=r.getTempRet0,ke=5575280,be=0;function ne(e,r){var a,i=0,k=0,b=0,n=0,s=0,t=0,c=0,o=0,u=0,h=0,p=0,y=0,_=0,E=0,D=0,S=0,F=0,A=0;ke=a=ke-5952|0,l[82338]=l[r>>2];e:{r:{a:{i:{f:{k:{b=sa(r);b:{n:{s:{if(b){if(i=l[r+104>>2],l[r+104>>2]=0,n=l[r+36>>2],l[(y=a+4704|0)>>2]=l[r+32>>2],l[y+4>>2]=n,y=l[r+28>>2],l[a+4696>>2]=l[r+24>>2],l[a+4700>>2]=y,1==(15&v[a+4696|0])){if(l[r+112>>2])break s;for(h=r- -64|0,A=a+5840|0,y=a+5824|0,D=a+5808|0,_=a+5792|0,o=!i;;){t:{if(i=o,n=b,t=d[b>>1],l[r+100>>2]){b=(o=l[r+40>>2])+l[r+52>>2]|0,k=l[b+-4>>2];c:{if(k){if(s=l[b+12>>2],o=l[k+o>>2],s>>>0<(k=l[o>>2])+(l[o+4>>2]<<1)>>>0&&s>>>0>=k>>>0)break c;break k}if(l[b+12>>2])break f}Je(l[b>>2],n),Wn(9),b=t>>>0<41?w(t,24)+34336|0:35320;c:if(i)gn(18500,0);else{-1==(0|(k=l[b+16>>2]))&&(k=d[n+2>>1]),b=l[r+56>>2],o=0;o:if(!((0|k)<1))for(;;){if(o&&(gn(17783,0),b=l[(l[r+40>>2]+b|0)-4>>2]),!b){b=0;break o}if(s=l[r+40>>2]+b|0,u=l[s+12>>2],l[(c=a+4688|0)>>2]=l[s+8>>2],l[c+4>>2]=u,c=l[s+4>>2],l[a+4680>>2]=l[s>>2],l[a+4684>>2]=c,Fk(a+5760|0,a+4680|0),u=l[4+(c=a+5768|0)>>2],l[(s=a+4672|0)>>2]=l[c>>2],l[s+4>>2]=u,s=l[a+5764>>2],l[a+4664>>2]=l[a+5760>>2],l[a+4668>>2]=s,_k(a+4664|0,32),(0|k)==(0|(o=o+1|0)))break}if(!(2&v[r+100|0]))break c;if(!(b=l[(l[r+40>>2]+b|0)-4>>2]))break c;for(;gn(18131,0),o=l[r+40>>2]+b|0,s=l[o+12>>2],l[(k=a+4656|0)>>2]=l[o+8>>2],l[k+4>>2]=s,k=l[o+4>>2],l[a+4648>>2]=l[o>>2],l[a+4652>>2]=k,Fk(a+5744|0,a+4648|0),s=l[4+(k=a+5752|0)>>2],l[(o=a+4640|0)>>2]=l[k>>2],l[o+4>>2]=s,o=l[a+5748>>2],l[a+4632>>2]=l[a+5744>>2],l[a+4636>>2]=o,_k(a+4632|0,32),b=l[(l[r+40>>2]+b|0)-4>>2];);}Wn(10)}o=0,i?(b=v[r+36|0]|v[r+37|0]<<8|v[r+38|0]<<16|v[r+39|0]<<24,i=a+5128|0,s=v[r+32|0]|v[r+33|0]<<8|v[r+34|0]<<16|v[r+35|0]<<24,l[i>>2]=s,l[i+4>>2]=b,i=v[r+24|0]|v[r+25|0]<<8|v[r+26|0]<<16|v[r+27|0]<<24,k=v[r+28|0]|v[r+29|0]<<8|v[r+30|0]<<16|v[r+31|0]<<24,l[(c=a+4624|0)>>2]=s,l[c+4>>2]=b,l[a+5120>>2]=i,l[a+5124>>2]=k,l[a+4616>>2]=i,l[a+4620>>2]=k,t=t+41|0,k=!(15&v[a+4616|0])):k=0;c:{o:{u:{l:{v:{d:{h:{m:{w:{p:{g:{y:{_:{E:{D:{S:{F:{M:{A:{x:{P:{T:{R:{O:{z:{I:{N:{j:{C:{U:{B:{L:{H:{q:{Y:{W:{X:{G:{J:{V:{K:{Z:{$:{Q:{ee:{re:{ae:if(!((i=65535&t)>>>0>81))switch(b=n+2|0,i-1|0){case 33:break c;case 17:case 68:break o;case 15:break D;case 27:break S;case 26:case 28:break F;case 25:break M;case 54:break A;case 55:case 79:break x;case 13:case 14:case 38:break P;case 52:case 53:break T;case 11:case 12:break R;case 16:break O;case 9:case 10:break z;case 64:case 65:break I;case 24:break N;case 23:break j;case 8:break C;case 80:break U;case 7:break B;case 39:break L;case 6:break H;case 5:break q;case 20:case 61:break Y;case 19:break W;case 18:break X;case 4:break G;case 3:break J;case 22:break V;case 21:break K;case 2:break Z;case 1:break $;case 0:break Q;case 37:break ee;case 29:case 30:case 31:case 32:case 34:case 35:case 36:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 48:case 49:case 50:case 51:case 56:case 57:case 58:case 59:case 60:case 62:case 63:case 66:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 75:case 76:case 77:case 78:break ae;default:break re}P(19249,14305,401,43093),M()}i=(k=l[r+40>>2])+l[r+52>>2]|0,s=l[i+-4>>2];re:{if(s){if(t=l[i+12>>2],k=l[k+s>>2],t>>>0<(s=l[k>>2])+(l[k+4>>2]<<1)>>>0&&t>>>0>=s>>>0)break re;break k}if(l[i+12>>2])break f}if(i=l[i>>2],k=l[i+28>>2],l[a+104>>2]=l[i+24>>2],l[a+108>>2]=k,k=l[i+20>>2],l[a+96>>2]=l[i+16>>2],l[a+100>>2]=k,Fk(a+5728|0,a+96|0),b=d[b>>1],k=l[4+(i=a+5736|0)>>2],l[a+88>>2]=l[i>>2],l[a+92>>2]=k,i=l[a+5732>>2],l[a+80>>2]=l[a+5728>>2],l[a+84>>2]=i,Ma(a+5936|0,a+80|0,b),i=l[4+(b=a+5944|0)>>2],l[a+72>>2]=l[b>>2],l[a+76>>2]=i,b=l[a+5940>>2],l[a+64>>2]=l[a+5936>>2],l[a+68>>2]=b,!(15&v[a- -64|0]))break E;s=(b=l[r+56>>2])+l[r+40>>2]|0,t=l[(i=s)+12>>2],l[(k=a+5720|0)>>2]=l[i+8>>2],l[k+4>>2]=t,k=l[i+4>>2],l[a+5712>>2]=l[i>>2],l[a+5716>>2]=k;re:{if(l[r+48>>2]!=(0|b)){if(k=l[4+(i=b=a+5720|0)>>2],l[a+56>>2]=l[i>>2],l[a+60>>2]=k,i=l[a+5716>>2],l[a+48>>2]=l[a+5712>>2],l[a+52>>2]=i,Fk(a+5120|0,a+48|0),k=l[4+(i=a+5128|0)>>2],l[b>>2]=l[i>>2],l[b+4>>2]=k,b=l[a+5124>>2],l[a+5712>>2]=l[a+5120>>2],l[a+5716>>2]=b,b=l[r+56>>2],i=l[(b+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|b))break re}else i=l[s+-4>>2];l[r+48>>2]=b+24}if(l[r+56>>2]=i,k=l[4+(i=b=a+5720|0)>>2],l[a+40>>2]=l[i>>2],l[a+44>>2]=k,i=l[a+5716>>2],l[a+32>>2]=l[a+5712>>2],l[a+36>>2]=i,!(15&v[a+32|0]))break i;if(i=l[b+4>>2],l[a+24>>2]=l[b>>2],l[a+28>>2]=i,b=l[a+5716>>2],l[a+16>>2]=l[a+5712>>2],l[a+20>>2]=b,Mi(a+16|0),b=l[4+(k=a+5944|0)>>2],i=a+5128|0,k=l[k>>2],l[i>>2]=k,l[i+4>>2]=b,l[a+8>>2]=k,l[a+12>>2]=b,b=l[a+5940>>2],i=l[a+5936>>2],l[a+5120>>2]=i,l[a+5124>>2]=b,l[a>>2]=i,l[a+4>>2]=b,!(15&v[0|a]))break a;c=l[r+56>>2],(0|(k=l[r+48>>2]+-24|0))>=(0|(b=l[r+44>>2]))?t=l[r+40>>2]:(s=8-b|0,b=583-(b<<1)&-8,gi((i=Rn(l[r+40>>2]-s|0,b))+(b-s|0)|0,i,s),t=i+b|0,l[r+40>>2]=t,l[r+44>>2]=8-b),b=n+4|0,l[r+48>>2]=k,l[(i=k+t|0)-4>>2]=c,l[r+56>>2]=k,k=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=k,n=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=n;break c}if(ta(a+5680|0),hb(a+5664|0,19830),n=l[r+108>>2],l[r+108>>2]=n+1,m[8+(i=a+5648|0)>>3]=n>>>0,l[i>>2]=4,l[i+4>>2]=0,n=l[4+(i=a+5688|0)>>2],l[a+168>>2]=l[i>>2],l[a+172>>2]=n,n=l[4+(i=a+5672|0)>>2],l[a+152>>2]=l[i>>2],l[a+156>>2]=n,n=l[4+(i=a+5656|0)>>2],l[a+136>>2]=l[i>>2],l[a+140>>2]=n,i=l[a+5684>>2],l[a+160>>2]=l[a+5680>>2],l[a+164>>2]=i,i=l[a+5668>>2],l[a+144>>2]=l[a+5664>>2],l[a+148>>2]=i,i=l[a+5652>>2],l[a+128>>2]=l[a+5648>>2],l[a+132>>2]=i,xe(a+5696|0,a+160|0,a+144|0,a+128|0),i=l[4+(k=a+5704|0)>>2],n=a+5128|0,k=l[k>>2],l[n>>2]=k,l[n+4>>2]=i,l[a+120>>2]=k,l[a+124>>2]=i,i=l[a+5700>>2],n=l[a+5696>>2],l[a+5120>>2]=n,l[a+5124>>2]=i,l[a+112>>2]=n,l[a+116>>2]=i,!(15&v[a+112|0]))break a;c=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?t=l[r+40>>2]:(s=8-i|0,i=583-(i<<1)&-8,gi((k=Rn(l[r+40>>2]-s|0,i))+(i-s|0)|0,k,s),t=i+k|0,l[r+40>>2]=t,l[r+44>>2]=8-i),l[r+48>>2]=n,l[(i=n+t|0)-4>>2]=c,l[r+56>>2]=n,k=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=k,n=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=n;break c}t=(i=l[r+56>>2])+l[r+40>>2]|0,c=l[(k=t)+12>>2],l[(n=a+5944|0)>>2]=l[k+8>>2],l[n+4>>2]=c,s=l[k+4>>2],l[a+5936>>2]=l[k>>2],l[a+5940>>2]=s;Q:{if(l[r+48>>2]!=(0|i)){if(i=l[n+4>>2],l[a+248>>2]=l[n>>2],l[a+252>>2]=i,i=l[a+5940>>2],l[a+240>>2]=l[a+5936>>2],l[a+244>>2]=i,Fk(a+5120|0,a+240|0),k=l[4+(i=a+5128|0)>>2],l[n>>2]=l[i>>2],l[n+4>>2]=k,i=l[a+5124>>2],l[a+5936>>2]=l[a+5120>>2],l[a+5940>>2]=i,i=l[r+56>>2],t=l[(i+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|i))break Q}else t=l[t+-4>>2];l[r+48>>2]=i+24}if(l[r+56>>2]=t,k=l[4+(i=a+5944|0)>>2],l[a+232>>2]=l[i>>2],l[a+236>>2]=k,n=l[a+5940>>2],l[a+224>>2]=l[a+5936>>2],l[a+228>>2]=n,!(15&v[a+224|0]))break i;if(n=l[i+4>>2],l[a+216>>2]=l[i>>2],l[a+220>>2]=n,i=l[a+5940>>2],l[a+208>>2]=l[a+5936>>2],l[a+212>>2]=i,Fk(a+5632|0,a+208|0),i=l[4+(k=a+5640|0)>>2],n=a+5128|0,k=l[k>>2],l[n>>2]=k,l[n+4>>2]=i,l[a+200>>2]=k,l[a+204>>2]=i,i=l[a+5636>>2],n=l[a+5632>>2],l[a+5120>>2]=n,l[a+5124>>2]=i,l[a+192>>2]=n,l[a+196>>2]=i,!(15&v[a+192|0]))break a;if(c=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?t=l[r+40>>2]:(s=8-i|0,i=583-(i<<1)&-8,gi((k=Rn(l[r+40>>2]-s|0,i))+(i-s|0)|0,k,s),t=i+k|0,l[r+40>>2]=t,l[r+44>>2]=8-i),l[r+48>>2]=n,l[(i=n+t|0)-4>>2]=c,l[r+56>>2]=n,s=l[4+(k=n=a+5128|0)>>2],l[i+8>>2]=l[k>>2],l[i+12>>2]=s,k=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=k,i=l[4+(k=a+5944|0)>>2],k=l[k>>2],l[a+184>>2]=k,l[a+188>>2]=i,l[n>>2]=k,l[n+4>>2]=i,i=l[a+5940>>2],n=l[a+5936>>2],l[a+176>>2]=n,l[a+180>>2]=i,l[a+5120>>2]=n,l[a+5124>>2]=i,!(15&v[a+176|0]))break a;c=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?t=l[r+40>>2]:(s=8-i|0,i=583-(i<<1)&-8,gi((k=Rn(l[r+40>>2]-s|0,i))+(i-s|0)|0,k,s),t=i+k|0,l[r+40>>2]=t,l[r+44>>2]=8-i),l[r+48>>2]=n,l[(i=n+t|0)-4>>2]=c,l[r+56>>2]=n,k=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=k,n=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=n;break c}s=n=(i=l[r+56>>2])+l[r+40>>2]|0,c=l[(k=n)+12>>2],l[(t=a+5944|0)>>2]=l[k+8>>2],l[t+4>>2]=c,t=l[k+4>>2],l[a+5936>>2]=l[k>>2],l[a+5940>>2]=t;$:{if(l[r+48>>2]!=(0|i)){if(t=l[10947],l[8+(i=a+5120|0)>>2]=l[10946],l[i+12>>2]=t,k=l[10945],l[i>>2]=l[10944],l[i+4>>2]=k,k=l[4+(i=a+5128|0)>>2],l[s+8>>2]=l[i>>2],l[s+12>>2]=k,i=l[a+5124>>2],l[n>>2]=l[a+5120>>2],l[n+4>>2]=i,i=l[r+56>>2],t=l[(i+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|i))break $}else t=l[n+-4>>2];l[r+48>>2]=i+24}if(l[r+56>>2]=t,k=l[4+(i=a+5944|0)>>2],l[a+312>>2]=l[i>>2],l[a+316>>2]=k,n=l[a+5940>>2],l[a+304>>2]=l[a+5936>>2],l[a+308>>2]=n,!(15&v[a+304|0]))break r;if(n=l[i+4>>2],l[a+296>>2]=l[i>>2],l[a+300>>2]=n,i=l[a+5940>>2],l[a+288>>2]=l[a+5936>>2],l[a+292>>2]=i,Fk(a+5616|0,a+288|0),i=l[4+(k=a+5624|0)>>2],n=a+5128|0,k=l[k>>2],l[n>>2]=k,l[n+4>>2]=i,l[a+280>>2]=k,l[a+284>>2]=i,i=l[a+5620>>2],n=l[a+5616>>2],l[a+5120>>2]=n,l[a+5124>>2]=i,l[a+272>>2]=n,l[a+276>>2]=i,!(15&v[a+272|0]))break a;if(c=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?t=l[r+40>>2]:(s=8-i|0,i=583-(i<<1)&-8,gi((k=Rn(l[r+40>>2]-s|0,i))+(i-s|0)|0,k,s),t=i+k|0,l[r+40>>2]=t,l[r+44>>2]=8-i),l[r+48>>2]=n,l[(i=n+t|0)-4>>2]=c,l[r+56>>2]=n,s=l[4+(k=n=a+5128|0)>>2],l[i+8>>2]=l[k>>2],l[i+12>>2]=s,k=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=k,i=l[4+(k=a+5944|0)>>2],k=l[k>>2],l[a+264>>2]=k,l[a+268>>2]=i,l[n>>2]=k,l[n+4>>2]=i,i=l[a+5940>>2],n=l[a+5936>>2],l[a+256>>2]=n,l[a+260>>2]=i,l[a+5120>>2]=n,l[a+5124>>2]=i,!(15&v[a+256|0]))break a;c=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?t=l[r+40>>2]:(s=8-i|0,i=583-(i<<1)&-8,gi((k=Rn(l[r+40>>2]-s|0,i))+(i-s|0)|0,k,s),t=i+k|0,l[r+40>>2]=t,l[r+44>>2]=8-i),l[r+48>>2]=n,l[(i=n+t|0)-4>>2]=c,l[r+56>>2]=n,k=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=k,n=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=n;break c}t=(i=l[r+56>>2])+l[r+40>>2]|0,c=l[(k=t)+12>>2],l[(n=a+5944|0)>>2]=l[k+8>>2],l[n+4>>2]=c,s=l[k+4>>2],l[a+5936>>2]=l[k>>2],l[a+5940>>2]=s;Z:{if(l[r+48>>2]!=(0|i)){if(i=l[n+4>>2],l[a+440>>2]=l[n>>2],l[a+444>>2]=i,i=l[a+5940>>2],l[a+432>>2]=l[a+5936>>2],l[a+436>>2]=i,Fk(a+5120|0,a+432|0),k=l[4+(i=a+5128|0)>>2],l[n>>2]=l[i>>2],l[n+4>>2]=k,i=l[a+5124>>2],l[a+5936>>2]=l[a+5120>>2],l[a+5940>>2]=i,i=l[r+56>>2],t=l[(i+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|i))break Z}else t=l[t+-4>>2];l[r+48>>2]=i+24}if(l[r+56>>2]=t,n=l[4+(i=a+5944|0)>>2],l[a+424>>2]=l[i>>2],l[a+428>>2]=n,i=l[a+5940>>2],l[a+416>>2]=l[a+5936>>2],l[a+420>>2]=i,!(15&v[a+416|0]))break i;s=(i=l[r+56>>2])+l[r+40>>2]|0,t=l[(n=s)+12>>2],l[(k=a+5608|0)>>2]=l[n+8>>2],l[k+4>>2]=t,k=l[n+4>>2],l[a+5600>>2]=l[n>>2],l[a+5604>>2]=k;Z:{if(l[r+48>>2]!=(0|i)){if(k=l[4+(i=a+5608|0)>>2],l[a+408>>2]=l[i>>2],l[a+412>>2]=k,n=l[a+5604>>2],l[a+400>>2]=l[a+5600>>2],l[a+404>>2]=n,Fk(a+5120|0,a+400|0),k=l[4+(n=a+5128|0)>>2],l[i>>2]=l[n>>2],l[i+4>>2]=k,i=l[a+5124>>2],l[a+5600>>2]=l[a+5120>>2],l[a+5604>>2]=i,i=l[r+56>>2],t=l[(i+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|i))break Z}else t=l[s+-4>>2];l[r+48>>2]=i+24}if(l[r+56>>2]=t,k=l[4+(i=a+5608|0)>>2],l[a+392>>2]=l[i>>2],l[a+396>>2]=k,n=l[a+5604>>2],l[a+384>>2]=l[a+5600>>2],l[a+388>>2]=n,!(15&v[a+384|0]))break i;if(n=l[i+4>>2],l[a+376>>2]=l[i>>2],l[a+380>>2]=n,i=l[a+5604>>2],l[a+368>>2]=l[a+5600>>2],l[a+372>>2]=i,Fk(a+5584|0,a+368|0),i=l[4+(k=a+5592|0)>>2],n=a+5128|0,k=l[k>>2],l[n>>2]=k,l[n+4>>2]=i,l[a+360>>2]=k,l[a+364>>2]=i,i=l[a+5588>>2],n=l[a+5584>>2],l[a+5120>>2]=n,l[a+5124>>2]=i,l[a+352>>2]=n,l[a+356>>2]=i,!(15&v[a+352|0]))break a;if(c=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?t=l[r+40>>2]:(s=8-i|0,i=583-(i<<1)&-8,gi((k=Rn(l[r+40>>2]-s|0,i))+(i-s|0)|0,k,s),t=i+k|0,l[r+40>>2]=t,l[r+44>>2]=8-i),l[r+48>>2]=n,l[(i=n+t|0)-4>>2]=c,l[r+56>>2]=n,s=l[4+(k=n=a+5128|0)>>2],l[i+8>>2]=l[k>>2],l[i+12>>2]=s,k=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=k,i=l[4+(k=a+5944|0)>>2],k=l[k>>2],l[a+344>>2]=k,l[a+348>>2]=i,l[n>>2]=k,l[n+4>>2]=i,i=l[a+5940>>2],n=l[a+5936>>2],l[a+336>>2]=n,l[a+340>>2]=i,l[a+5120>>2]=n,l[a+5124>>2]=i,!(15&v[a+336|0]))break a;if(c=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?t=l[r+40>>2]:(s=8-i|0,i=583-(i<<1)&-8,gi((k=Rn(l[r+40>>2]-s|0,i))+(i-s|0)|0,k,s),t=i+k|0,l[r+40>>2]=t,l[r+44>>2]=8-i),l[r+48>>2]=n,l[(i=n+t|0)-4>>2]=c,l[r+56>>2]=n,s=l[4+(k=n=a+5128|0)>>2],l[i+8>>2]=l[k>>2],l[i+12>>2]=s,k=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=k,i=l[4+(k=a+5608|0)>>2],k=l[k>>2],l[a+328>>2]=k,l[a+332>>2]=i,l[n>>2]=k,l[n+4>>2]=i,i=l[a+5604>>2],n=l[a+5600>>2],l[a+320>>2]=n,l[a+324>>2]=i,l[a+5120>>2]=n,l[a+5124>>2]=i,!(15&v[a+320|0]))break a;c=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?t=l[r+40>>2]:(s=8-i|0,i=583-(i<<1)&-8,gi((k=Rn(l[r+40>>2]-s|0,i))+(i-s|0)|0,k,s),t=i+k|0,l[r+40>>2]=t,l[r+44>>2]=8-i),l[r+48>>2]=n,l[(i=n+t|0)-4>>2]=c,l[r+56>>2]=n,k=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=k,n=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=n;break c}t=(i=l[r+56>>2])+l[r+40>>2]|0,c=l[(k=t)+12>>2],l[(n=a+5944|0)>>2]=l[k+8>>2],l[n+4>>2]=c,s=l[k+4>>2],l[a+5936>>2]=l[k>>2],l[a+5940>>2]=s;K:{if(l[r+48>>2]!=(0|i)){if(i=l[n+4>>2],l[a+520>>2]=l[n>>2],l[a+524>>2]=i,i=l[a+5940>>2],l[a+512>>2]=l[a+5936>>2],l[a+516>>2]=i,Fk(a+5120|0,a+512|0),k=l[4+(i=a+5128|0)>>2],l[n>>2]=l[i>>2],l[n+4>>2]=k,i=l[a+5124>>2],l[a+5936>>2]=l[a+5120>>2],l[a+5940>>2]=i,i=l[r+56>>2],t=l[(i+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|i))break K}else t=l[t+-4>>2];l[r+48>>2]=i+24}if(l[r+56>>2]=t,k=l[4+(i=a+5944|0)>>2],l[a+504>>2]=l[i>>2],l[a+508>>2]=k,n=l[a+5940>>2],l[a+496>>2]=l[a+5936>>2],l[a+500>>2]=n,!(15&v[a+496|0]))break i;if(n=l[i+4>>2],l[a+488>>2]=l[i>>2],l[a+492>>2]=n,i=l[a+5940>>2],l[a+480>>2]=l[a+5936>>2],l[a+484>>2]=i,Fk(a+5568|0,a+480|0),i=l[4+(k=a+5576|0)>>2],n=a+5128|0,k=l[k>>2],l[n>>2]=k,l[n+4>>2]=i,l[a+472>>2]=k,l[a+476>>2]=i,i=l[a+5572>>2],n=l[a+5568>>2],l[a+5120>>2]=n,l[a+5124>>2]=i,l[a+464>>2]=n,l[a+468>>2]=i,!(15&v[a+464|0]))break a;if(c=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?t=l[r+40>>2]:(s=8-i|0,i=583-(i<<1)&-8,gi((k=Rn(l[r+40>>2]-s|0,i))+(i-s|0)|0,k,s),t=i+k|0,l[r+40>>2]=t,l[r+44>>2]=8-i),l[r+48>>2]=n,l[(i=n+t|0)-4>>2]=c,l[r+56>>2]=n,s=l[4+(k=n=a+5128|0)>>2],l[i+8>>2]=l[k>>2],l[i+12>>2]=s,k=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=k,i=l[4+(k=a+5944|0)>>2],k=l[k>>2],l[a+456>>2]=k,l[a+460>>2]=i,l[n>>2]=k,l[n+4>>2]=i,i=l[a+5940>>2],n=l[a+5936>>2],l[a+448>>2]=n,l[a+452>>2]=i,l[a+5120>>2]=n,l[a+5124>>2]=i,!(15&v[a+448|0]))break a;c=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?t=l[r+40>>2]:(s=8-i|0,i=583-(i<<1)&-8,gi((k=Rn(l[r+40>>2]-s|0,i))+(i-s|0)|0,k,s),t=i+k|0,l[r+40>>2]=t,l[r+44>>2]=8-i),l[r+48>>2]=n,l[(i=n+t|0)-4>>2]=c,l[r+56>>2]=n,k=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=k,n=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=n,l[r+96>>2]=l[r+96>>2]+1;break c}if((0|(i=l[r+96>>2]))<=0)break _;l[r+96>>2]=i+-1,s=(o=l[r+56>>2])+l[r+40>>2]|0,t=l[(n=s)+12>>2],l[(i=a+5944|0)>>2]=l[n+8>>2],l[i+4>>2]=t,k=l[n+4>>2],l[a+5936>>2]=l[n>>2],l[a+5940>>2]=k;V:{if(l[r+48>>2]!=(0|o)){if(n=l[i+4>>2],l[a+616>>2]=l[i>>2],l[a+620>>2]=n,n=l[a+5940>>2],l[a+608>>2]=l[a+5936>>2],l[a+612>>2]=n,Fk(a+5120|0,a+608|0),o=l[4+(n=a+5128|0)>>2],l[i>>2]=l[n>>2],l[i+4>>2]=o,i=l[a+5124>>2],l[a+5936>>2]=l[a+5120>>2],l[a+5940>>2]=i,o=l[r+56>>2],i=l[(o+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|o))break V}else i=l[s+-4>>2];l[r+48>>2]=o+24}if(l[r+56>>2]=i,n=l[4+(i=a+5944|0)>>2],l[a+600>>2]=l[i>>2],l[a+604>>2]=n,i=l[a+5940>>2],l[a+592>>2]=l[a+5936>>2],l[a+596>>2]=i,!(15&v[a+592|0]))break i;k=(o=l[r+56>>2])+l[r+40>>2]|0,s=l[(i=k)+12>>2],l[(n=a+5608|0)>>2]=l[i+8>>2],l[n+4>>2]=s,n=l[i+4>>2],l[a+5600>>2]=l[i>>2],l[a+5604>>2]=n;V:{if(l[r+48>>2]!=(0|o)){if(o=l[4+(i=a+5608|0)>>2],l[a+584>>2]=l[i>>2],l[a+588>>2]=o,n=l[a+5604>>2],l[a+576>>2]=l[a+5600>>2],l[a+580>>2]=n,Fk(a+5120|0,a+576|0),o=l[4+(n=a+5128|0)>>2],l[i>>2]=l[n>>2],l[i+4>>2]=o,i=l[a+5124>>2],l[a+5600>>2]=l[a+5120>>2],l[a+5604>>2]=i,o=l[r+56>>2],i=l[(o+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|o))break V}else i=l[k+-4>>2];l[r+48>>2]=o+24}if(l[r+56>>2]=i,n=l[4+(i=a+5608|0)>>2],l[a+568>>2]=l[i>>2],l[a+572>>2]=n,i=l[a+5604>>2],l[a+560>>2]=l[a+5600>>2],l[a+564>>2]=i,!(15&v[a+560|0]))break i;if(i=l[4+(o=a+5944|0)>>2],n=a+5128|0,o=l[o>>2],l[n>>2]=o,l[n+4>>2]=i,l[a+552>>2]=o,l[a+556>>2]=i,i=l[a+5940>>2],n=l[a+5936>>2],l[a+5120>>2]=n,l[a+5124>>2]=i,l[a+544>>2]=n,l[a+548>>2]=i,!(15&v[a+544|0]))break a;if(s=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?i=l[r+40>>2]:(k=8-i|0,o=583-(i<<1)&-8,gi((i=Rn(l[r+40>>2]-k|0,o))+(o-k|0)|0,i,k),i=i+o|0,l[r+40>>2]=i,l[r+44>>2]=8-o),l[r+48>>2]=n,l[(i=i+n|0)-4>>2]=s,l[r+56>>2]=n,k=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=k,o=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=o,i=l[4+(o=a+5608|0)>>2],o=l[o>>2],l[a+536>>2]=o,l[a+540>>2]=i,l[n>>2]=o,l[n+4>>2]=i,i=l[a+5604>>2],n=l[a+5600>>2],l[a+528>>2]=n,l[a+532>>2]=i,l[a+5120>>2]=n,l[a+5124>>2]=i,!(15&v[a+528|0]))break a;s=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?i=l[r+40>>2]:(k=8-i|0,o=583-(i<<1)&-8,gi((i=Rn(l[r+40>>2]-k|0,o))+(o-k|0)|0,i,k),i=i+o|0,l[r+40>>2]=i,l[r+44>>2]=8-o),l[r+48>>2]=n,l[(i=i+n|0)-4>>2]=s,l[r+56>>2]=n,o=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=o,n=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=n,o=0;break c}i=(k=l[r+40>>2])+l[r+52>>2]|0,s=l[i+-4>>2];J:{if(s){if(t=l[i+12>>2],k=l[k+s>>2],t>>>0<(s=l[k>>2])+(l[k+4>>2]<<1)>>>0&&t>>>0>=s>>>0)break J;break k}if(l[i+12>>2])break f}if(i=l[i>>2],k=l[i+28>>2],l[a+728>>2]=l[i+24>>2],l[a+732>>2]=k,k=l[i+20>>2],l[a+720>>2]=l[i+16>>2],l[a+724>>2]=k,Fk(a+5552|0,a+720|0),b=d[b>>1],k=l[4+(i=a+5560|0)>>2],l[a+712>>2]=l[i>>2],l[a+716>>2]=k,i=l[a+5556>>2],l[a+704>>2]=l[a+5552>>2],l[a+708>>2]=i,Ma(a+5936|0,a+704|0,b),i=l[4+(b=a+5944|0)>>2],l[a+696>>2]=l[b>>2],l[a+700>>2]=i,b=l[a+5940>>2],l[a+688>>2]=l[a+5936>>2],l[a+692>>2]=b,!(15&v[a+688|0]))break y;s=(b=l[r+56>>2])+l[r+40>>2]|0,t=l[(i=s)+12>>2],l[(k=a+5608|0)>>2]=l[i+8>>2],l[k+4>>2]=t,k=l[i+4>>2],l[a+5600>>2]=l[i>>2],l[a+5604>>2]=k;J:{if(l[r+48>>2]!=(0|b)){if(k=l[4+(i=b=a+5608|0)>>2],l[a+680>>2]=l[i>>2],l[a+684>>2]=k,i=l[a+5604>>2],l[a+672>>2]=l[a+5600>>2],l[a+676>>2]=i,Fk(a+5120|0,a+672|0),k=l[4+(i=a+5128|0)>>2],l[b>>2]=l[i>>2],l[b+4>>2]=k,b=l[a+5124>>2],l[a+5600>>2]=l[a+5120>>2],l[a+5604>>2]=b,b=l[r+56>>2],i=l[(b+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|b))break J}else i=l[s+-4>>2];l[r+48>>2]=b+24}if(l[r+56>>2]=i,i=l[4+(b=a+5608|0)>>2],l[a+664>>2]=l[b>>2],l[a+668>>2]=i,b=l[a+5604>>2],l[a+656>>2]=l[a+5600>>2],l[a+660>>2]=b,!(15&v[a+656|0]))break i;if(b=l[4+(k=a+5944|0)>>2],i=a+5128|0,k=l[k>>2],l[i>>2]=k,l[i+4>>2]=b,l[a+648>>2]=k,l[a+652>>2]=b,b=l[a+5940>>2],i=l[a+5936>>2],l[a+5120>>2]=i,l[a+5124>>2]=b,l[a+640>>2]=i,l[a+644>>2]=b,!(15&v[a+640|0]))break a;if(t=l[r+56>>2],(0|(k=l[r+48>>2]+-24|0))>=(0|(b=l[r+44>>2]))?i=l[r+40>>2]:(s=8-b|0,b=583-(b<<1)&-8,gi((i=Rn(l[r+40>>2]-s|0,b))+(b-s|0)|0,i,s),i=i+b|0,l[r+40>>2]=i,l[r+44>>2]=8-b),l[r+48>>2]=k,l[(b=i+k|0)-4>>2]=t,l[r+56>>2]=k,s=l[4+(i=a+5128|0)>>2],l[b+8>>2]=l[i>>2],l[b+12>>2]=s,k=l[a+5124>>2],l[b>>2]=l[a+5120>>2],l[b+4>>2]=k,b=l[4+(k=a+5608|0)>>2],k=l[k>>2],l[a+632>>2]=k,l[a+636>>2]=b,l[i>>2]=k,l[i+4>>2]=b,b=l[a+5604>>2],i=l[a+5600>>2],l[a+624>>2]=i,l[a+628>>2]=b,l[a+5120>>2]=i,l[a+5124>>2]=b,!(15&v[a+624|0]))break a;c=l[r+56>>2],(0|(k=l[r+48>>2]+-24|0))>=(0|(b=l[r+44>>2]))?t=l[r+40>>2]:(s=8-b|0,b=583-(b<<1)&-8,gi((i=Rn(l[r+40>>2]-s|0,b))+(b-s|0)|0,i,s),t=i+b|0,l[r+40>>2]=t,l[r+44>>2]=8-b),b=n+4|0,l[r+48>>2]=k,l[(i=k+t|0)-4>>2]=c,l[r+56>>2]=k,k=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=k,n=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=n;break c}t=(i=l[r+56>>2])+l[r+40>>2]|0,c=l[(k=t)+12>>2],l[(n=a+5544|0)>>2]=l[k+8>>2],l[n+4>>2]=c,s=l[k+4>>2],l[a+5536>>2]=l[k>>2],l[a+5540>>2]=s;G:{if(l[r+48>>2]!=(0|i)){if(i=l[n+4>>2],l[a+776>>2]=l[n>>2],l[a+780>>2]=i,i=l[a+5540>>2],l[a+768>>2]=l[a+5536>>2],l[a+772>>2]=i,Fk(a+5120|0,a+768|0),k=l[4+(i=a+5128|0)>>2],l[n>>2]=l[i>>2],l[n+4>>2]=k,i=l[a+5124>>2],l[a+5536>>2]=l[a+5120>>2],l[a+5540>>2]=i,i=l[r+56>>2],t=l[(i+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|i))break G}else t=l[t+-4>>2];l[r+48>>2]=i+24}if(l[r+56>>2]=t,k=l[4+(i=a+5544|0)>>2],l[a+760>>2]=l[i>>2],l[a+764>>2]=k,n=l[a+5540>>2],l[a+752>>2]=l[a+5536>>2],l[a+756>>2]=n,!(15&v[a+752|0]))break i;n=l[i+4>>2],l[a+744>>2]=l[i>>2],l[a+748>>2]=n,i=l[a+5540>>2],l[a+736>>2]=l[a+5536>>2],l[a+740>>2]=i,Mi(a+736|0);break c}t=(b=l[r+56>>2])+l[r+40>>2]|0,c=l[(k=t)+12>>2],l[(i=a+5944|0)>>2]=l[k+8>>2],l[i+4>>2]=c,s=l[k+4>>2],l[a+5936>>2]=l[k>>2],l[a+5940>>2]=s;X:{if(l[r+48>>2]!=(0|b)){if(b=l[i+4>>2],l[a+856>>2]=l[i>>2],l[a+860>>2]=b,b=l[a+5940>>2],l[a+848>>2]=l[a+5936>>2],l[a+852>>2]=b,Fk(a+5120|0,a+848|0),k=l[4+(b=a+5128|0)>>2],l[i>>2]=l[b>>2],l[i+4>>2]=k,b=l[a+5124>>2],l[a+5936>>2]=l[a+5120>>2],l[a+5940>>2]=b,b=l[r+56>>2],i=l[(b+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|b))break X}else i=l[t+-4>>2];l[r+48>>2]=b+24}if(l[r+56>>2]=i,i=l[4+(b=a+5944|0)>>2],l[a+840>>2]=l[b>>2],l[a+844>>2]=i,b=l[a+5940>>2],l[a+832>>2]=l[a+5936>>2],l[a+836>>2]=b,!(15&v[a+832|0]))break i;if(k=l[r+40>>2],b=l[r+52>>2],s=d[n+4>>1],t=d[n+2>>1])for(c=k+4|0,i=0;b=l[b+c>>2],(0|t)!=(0|(i=i+1|0)););if(i=l[(b=k+b|0)>>2],l[i+8>>2]<=(0|s))break e;if(b=b+(s+l[i+12>>2]<<4)|0,k=l[(i=b)+28>>2],l[a+824>>2]=l[i+24>>2],l[a+828>>2]=k,k=l[i+20>>2],l[a+816>>2]=l[i+16>>2],l[a+820>>2]=k,6!=(15&v[a+816|0]))break g;i=l[b+28>>2],l[a+808>>2]=l[b+24>>2],l[a+812>>2]=i,i=l[b+16>>2],k=l[b+20>>2],t=l[4+(s=a+5944|0)>>2],l[a+792>>2]=l[s>>2],l[a+796>>2]=t,l[a+800>>2]=i,l[a+804>>2]=k,i=l[a+5940>>2],l[a+784>>2]=l[a+5936>>2],l[a+788>>2]=i,Ta(a+5120|0,a+800|0,a+784|0),k=l[4+(i=a+5128|0)>>2],l[b+24>>2]=l[i>>2],l[b+28>>2]=k,i=l[a+5124>>2],l[b+16>>2]=l[a+5120>>2],l[b+20>>2]=i,b=n+6|0;break c}t=(i=l[r+56>>2])+l[r+40>>2]|0,c=l[(k=t)+12>>2],l[(n=a+5944|0)>>2]=l[k+8>>2],l[n+4>>2]=c,s=l[k+4>>2],l[a+5936>>2]=l[k>>2],l[a+5940>>2]=s;W:{if(l[r+48>>2]!=(0|i)){if(k=l[n+4>>2],l[(i=a+1264|0)>>2]=l[n>>2],l[i+4>>2]=k,i=l[a+5940>>2],l[a+1256>>2]=l[a+5936>>2],l[a+1260>>2]=i,Fk(a+5120|0,a+1256|0),k=l[4+(i=a+5128|0)>>2],l[n>>2]=l[i>>2],l[n+4>>2]=k,i=l[a+5124>>2],l[a+5936>>2]=l[a+5120>>2],l[a+5940>>2]=i,i=l[r+56>>2],t=l[(i+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|i))break W}else t=l[t+-4>>2];l[r+48>>2]=i+24}if(l[r+56>>2]=t,k=l[4+(n=a+5944|0)>>2],l[(i=a+1248|0)>>2]=l[n>>2],l[i+4>>2]=k,i=l[a+5940>>2],l[a+1240>>2]=l[a+5936>>2],l[a+1244>>2]=i,!(15&v[a+1240|0]))break i;s=(i=l[r+56>>2])+l[r+40>>2]|0,t=l[(n=s)+12>>2],l[(k=a+5608|0)>>2]=l[n+8>>2],l[k+4>>2]=t,k=l[n+4>>2],l[a+5600>>2]=l[n>>2],l[a+5604>>2]=k;W:{if(l[r+48>>2]!=(0|i)){if(s=l[4+(i=a+5608|0)>>2],l[(n=a+1232|0)>>2]=l[i>>2],l[n+4>>2]=s,n=l[a+5604>>2],l[a+1224>>2]=l[a+5600>>2],l[a+1228>>2]=n,Fk(a+5120|0,a+1224|0),k=l[4+(n=a+5128|0)>>2],l[i>>2]=l[n>>2],l[i+4>>2]=k,i=l[a+5124>>2],l[a+5600>>2]=l[a+5120>>2],l[a+5604>>2]=i,i=l[r+56>>2],t=l[(i+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|i))break W}else t=l[s+-4>>2];l[r+48>>2]=i+24}if(l[r+56>>2]=t,k=l[4+(n=a+5608|0)>>2],l[(i=a+1216|0)>>2]=l[n>>2],l[i+4>>2]=k,i=l[a+5604>>2],l[a+1208>>2]=l[a+5600>>2],l[a+1212>>2]=i,!(15&v[a+1208|0]))break i;s=(i=l[r+56>>2])+l[r+40>>2]|0,t=l[(n=s)+12>>2],l[(k=a+5528|0)>>2]=l[n+8>>2],l[k+4>>2]=t,k=l[n+4>>2],l[a+5520>>2]=l[n>>2],l[a+5524>>2]=k;W:{if(l[r+48>>2]!=(0|i)){if(s=l[4+(i=a+5528|0)>>2],l[(n=a+1200|0)>>2]=l[i>>2],l[n+4>>2]=s,n=l[a+5524>>2],l[a+1192>>2]=l[a+5520>>2],l[a+1196>>2]=n,Fk(a+5120|0,a+1192|0),k=l[4+(n=a+5128|0)>>2],l[i>>2]=l[n>>2],l[i+4>>2]=k,i=l[a+5124>>2],l[a+5520>>2]=l[a+5120>>2],l[a+5524>>2]=i,i=l[r+56>>2],t=l[(i+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|i))break W}else t=l[s+-4>>2];l[r+48>>2]=i+24}if(l[r+56>>2]=t,k=l[4+(n=a+5528|0)>>2],l[(i=a+1184|0)>>2]=l[n>>2],l[i+4>>2]=k,i=l[a+5524>>2],l[a+1176>>2]=l[a+5520>>2],l[a+1180>>2]=i,!(15&v[a+1176|0]))break i;s=(i=l[r+56>>2])+l[r+40>>2]|0,t=l[(n=s)+12>>2],l[(k=a+5512|0)>>2]=l[n+8>>2],l[k+4>>2]=t,k=l[n+4>>2],l[a+5504>>2]=l[n>>2],l[a+5508>>2]=k;W:{if(l[r+48>>2]!=(0|i)){if(s=l[4+(i=a+5512|0)>>2],l[(n=a+1168|0)>>2]=l[i>>2],l[n+4>>2]=s,n=l[a+5508>>2],l[a+1160>>2]=l[a+5504>>2],l[a+1164>>2]=n,Fk(a+5120|0,a+1160|0),k=l[4+(n=a+5128|0)>>2],l[i>>2]=l[n>>2],l[i+4>>2]=k,i=l[a+5124>>2],l[a+5504>>2]=l[a+5120>>2],l[a+5508>>2]=i,i=l[r+56>>2],t=l[(i+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|i))break W}else t=l[s+-4>>2];l[r+48>>2]=i+24}if(l[r+56>>2]=t,s=l[4+(i=a+5512|0)>>2],l[(n=a+1152|0)>>2]=l[i>>2],l[n+4>>2]=s,n=l[a+5508>>2],l[a+1144>>2]=l[a+5504>>2],l[a+1148>>2]=n,!(15&v[a+1144|0]))break i;if(k=l[i+4>>2],l[(n=a+1136|0)>>2]=l[i>>2],l[n+4>>2]=k,i=l[a+5508>>2],l[a+1128>>2]=l[a+5504>>2],l[a+1132>>2]=i,7!=(15&v[a+1128|0]))break p;if(s=l[4+(i=a+5528|0)>>2],l[(n=a+1120|0)>>2]=l[i>>2],l[n+4>>2]=s,n=l[a+5524>>2],l[a+1112>>2]=l[a+5520>>2],l[a+1116>>2]=n,5==(15&v[a+1112|0])){if(k=l[4+(n=a+5512|0)>>2],l[a+936>>2]=l[n>>2],l[a+940>>2]=k,n=l[i+4>>2],l[a+920>>2]=l[i>>2],l[a+924>>2]=n,n=l[4+(i=a+5608|0)>>2],l[a+904>>2]=l[i>>2],l[a+908>>2]=n,i=l[a+5508>>2],l[a+928>>2]=l[a+5504>>2],l[a+932>>2]=i,i=l[a+5524>>2],l[a+912>>2]=l[a+5520>>2],l[a+916>>2]=i,i=l[a+5604>>2],l[a+896>>2]=l[a+5600>>2],l[a+900>>2]=i,xe(a+5488|0,a+928|0,a+912|0,a+896|0),i=l[4+(k=a+5496|0)>>2],n=a+5128|0,k=l[k>>2],l[n>>2]=k,l[n+4>>2]=i,l[a+888>>2]=k,l[a+892>>2]=i,i=l[a+5492>>2],n=l[a+5488>>2],l[a+5120>>2]=n,l[a+5124>>2]=i,l[a+880>>2]=n,l[a+884>>2]=i,!(15&v[a+880|0]))break a;if(c=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?t=l[r+40>>2]:(s=8-i|0,i=583-(i<<1)&-8,gi((k=Rn(l[r+40>>2]-s|0,i))+(i-s|0)|0,k,s),t=i+k|0,l[r+40>>2]=t,l[r+44>>2]=8-i),l[r+48>>2]=n,l[(i=n+t|0)-4>>2]=c,l[r+56>>2]=n,s=l[4+(k=n=a+5128|0)>>2],l[i+8>>2]=l[k>>2],l[i+12>>2]=s,k=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=k,i=l[4+(k=a+5944|0)>>2],k=l[k>>2],l[a+872>>2]=k,l[a+876>>2]=i,l[n>>2]=k,l[n+4>>2]=i,i=l[a+5940>>2],n=l[a+5936>>2],l[a+864>>2]=n,l[a+868>>2]=i,l[a+5120>>2]=n,l[a+5124>>2]=i,!(15&v[a+864|0]))break a;c=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?t=l[r+40>>2]:(s=8-i|0,i=583-(i<<1)&-8,gi((k=Rn(l[r+40>>2]-s|0,i))+(i-s|0)|0,k,s),t=i+k|0,l[r+40>>2]=t,l[r+44>>2]=8-i),l[r+48>>2]=n,l[(i=n+t|0)-4>>2]=c,l[r+56>>2]=n,k=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=k,n=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=n;break c}n=l[i+4>>2],l[(b=a+1104|0)>>2]=l[i>>2],l[b+4>>2]=n,b=l[a+5524>>2],l[a+1096>>2]=l[a+5520>>2],l[a+1100>>2]=b,b=vn(15&v[a+1096|0]),o=l[i+4>>2],l[(n=a+1088|0)>>2]=l[i>>2],l[n+4>>2]=o,n=l[a+5524>>2],l[a+1080>>2]=l[a+5520>>2],l[a+1084>>2]=n,Fk(a+5424|0,a+1080|0),k=l[4+(o=a+5432|0)>>2],l[(n=a+1072|0)>>2]=l[o>>2],l[n+4>>2]=k,n=l[a+5428>>2],l[a+1064>>2]=l[a+5424>>2],l[a+1068>>2]=n,l[a+1060>>2]=wi(a+1064|0,a+5473|0,15),l[a+1056>>2]=b,Sn(a+5440|0,20929,a+1056|0),o=l[4+(n=a+5448|0)>>2],l[(b=a+1048|0)>>2]=l[n>>2],l[b+4>>2]=o,b=l[a+5444>>2],l[a+1040>>2]=l[a+5440>>2],l[a+1044>>2]=b,Jk(a+5456|0,a+1040|0),k=l[4+(o=a+5464|0)>>2],l[(b=a+5128|0)>>2]=l[o>>2],l[b+4>>2]=k,n=l[a+5460>>2],l[a+5120>>2]=l[a+5456>>2],l[a+5124>>2]=n,o=l[r+36>>2],l[(n=a+1032|0)>>2]=l[r+32>>2],l[n+4>>2]=o,n=l[r+28>>2],l[a+1024>>2]=l[r+24>>2],l[a+1028>>2]=n,Mi(a+1024|0),n=l[b+4>>2],l[r+32>>2]=l[b>>2],l[r+36>>2]=n,b=l[a+5124>>2],l[r+24>>2]=l[a+5120>>2],l[r+28>>2]=b,n=l[4+(b=a+5944|0)>>2],l[a+1016>>2]=l[b>>2],l[a+1020>>2]=n,b=l[a+5940>>2],l[a+1008>>2]=l[a+5936>>2],l[a+1012>>2]=b,Mi(a+1008|0),n=l[4+(b=a+5608|0)>>2],l[a+1e3>>2]=l[b>>2],l[a+1004>>2]=n,b=l[a+5604>>2],l[a+992>>2]=l[a+5600>>2],l[a+996>>2]=b,Mi(a+992|0),b=l[i+4>>2],l[a+984>>2]=l[i>>2],l[a+988>>2]=b,b=l[a+5524>>2],l[a+976>>2]=l[a+5520>>2],l[a+980>>2]=b,Mi(a+976|0),i=l[4+(b=a+5512|0)>>2],l[a+968>>2]=l[b>>2],l[a+972>>2]=i,b=l[a+5508>>2],l[a+960>>2]=l[a+5504>>2],l[a+964>>2]=b,Mi(a+960|0);break o}if(s=l[r+40>>2],b=l[r+52>>2],t=d[n+4>>1],c=d[n+2>>1])for(u=s+4|0,i=0;b=l[b+u>>2],(0|c)!=(0|(i=i+1|0)););if(b=l[(c=b+s|0)>>2],l[b+8>>2]<=(0|t))break e;u=l[b+12>>2],b=l[r+56>>2],F=l[12+(s=E=s+b|0)>>2],l[(i=a+5944|0)>>2]=l[s+8>>2],l[i+4>>2]=F,p=l[s+4>>2],l[a+5936>>2]=l[s>>2],l[a+5940>>2]=p;Y:{if(l[r+48>>2]!=(0|b)){if(s=l[i+4>>2],l[(b=a+1528|0)>>2]=l[i>>2],l[b+4>>2]=s,b=l[a+5940>>2],l[a+1520>>2]=l[a+5936>>2],l[a+1524>>2]=b,Fk(a+5120|0,a+1520|0),s=l[4+(b=a+5128|0)>>2],l[i>>2]=l[b>>2],l[i+4>>2]=s,b=l[a+5124>>2],l[a+5936>>2]=l[a+5120>>2],l[a+5940>>2]=b,b=l[r+56>>2],i=l[(b+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|b))break Y}else i=l[E+-4>>2];l[r+48>>2]=b+24}if(l[r+56>>2]=i,s=l[4+(i=a+5944|0)>>2],l[(b=a+1512|0)>>2]=l[i>>2],l[b+4>>2]=s,b=l[a+5940>>2],l[a+1504>>2]=l[a+5936>>2],l[a+1508>>2]=b,!(15&v[a+1504|0]))break i;if(k)break o;if(s=l[12+(k=16+(b=c+(t+u<<4)|0)|0)>>2],l[(i=a+1496|0)>>2]=l[k+8>>2],l[i+4>>2]=s,i=l[b+20>>2],l[a+1488>>2]=l[b+16>>2],l[a+1492>>2]=i,4!=(15&v[a+1488|0])||(s=l[4+(k=a+5944|0)>>2],l[(i=a+1480|0)>>2]=l[k>>2],l[i+4>>2]=s,i=l[a+5940>>2],l[a+1472>>2]=l[a+5936>>2],l[a+1476>>2]=i,4!=(15&v[a+1472|0]))){Sn(a+5392|0,21330,0),n=l[4+(i=a+5400|0)>>2],l[(b=a+1464|0)>>2]=l[i>>2],l[b+4>>2]=n,b=l[a+5396>>2],l[a+1456>>2]=l[a+5392>>2],l[a+1460>>2]=b,Jk(a+5408|0,a+1456|0),o=l[4+(n=a+5416|0)>>2],l[(i=b=a+5128|0)>>2]=l[n>>2],l[i+4>>2]=o,i=l[a+5412>>2],l[a+5120>>2]=l[a+5408>>2],l[a+5124>>2]=i,n=l[r+36>>2],l[(i=a+1448|0)>>2]=l[r+32>>2],l[i+4>>2]=n,i=l[r+28>>2],l[a+1440>>2]=l[r+24>>2],l[a+1444>>2]=i,Mi(a+1440|0),i=l[b+4>>2],l[r+32>>2]=l[b>>2],l[r+36>>2]=i,b=l[a+5124>>2],l[r+24>>2]=l[a+5120>>2],l[r+28>>2]=b,n=l[4+(i=a+5944|0)>>2],l[(b=a+1432|0)>>2]=l[i>>2],l[b+4>>2]=n,b=l[a+5940>>2],l[a+1424>>2]=l[a+5936>>2],l[a+1428>>2]=b,Mi(a+1424|0);break o}if(k=l[b+28>>2],l[(i=a+1416|0)>>2]=l[b+24>>2],l[i+4>>2]=k,i=l[b+20>>2],l[a+1408>>2]=l[b+16>>2],l[a+1412>>2]=i,Fk(a+5376|0,a+1408|0),s=l[4+(k=a+5384|0)>>2],l[(i=a+1400|0)>>2]=l[k>>2],l[i+4>>2]=s,i=l[a+5380>>2],l[a+1392>>2]=l[a+5376>>2],l[a+1396>>2]=i,S=mn(a+1392|0),t=l[4+(i=a+5944|0)>>2],l[(k=a+1384|0)>>2]=l[i>>2],l[k+4>>2]=t,k=l[a+5940>>2],l[a+1376>>2]=l[a+5936>>2],l[a+1380>>2]=k,Fk(a+5360|0,a+1376|0),t=l[4+(s=a+5368|0)>>2],l[(k=a+1368|0)>>2]=l[s>>2],l[k+4>>2]=t,k=l[a+5364>>2],l[a+1360>>2]=l[a+5360>>2],l[a+1364>>2]=k,S>=mn(a+1360|0))break o;if(s=l[b+28>>2],l[(k=a+1352|0)>>2]=l[b+24>>2],l[k+4>>2]=s,k=l[b+20>>2],l[a+1344>>2]=l[b+16>>2],l[a+1348>>2]=k,Fk(a+5600|0,a+1344|0),s=l[b+28>>2],l[(k=a+1336|0)>>2]=l[b+24>>2],l[k+4>>2]=s,k=l[b+20>>2],l[a+1328>>2]=l[b+16>>2],l[a+1332>>2]=k,m[8+(k=a+5120|0)>>3]=mn(a+1328|0)+1,l[k>>2]=4,l[k+4>>2]=0,t=l[4+(k=a+5128|0)>>2],l[b+24>>2]=l[k>>2],l[b+28>>2]=t,s=l[a+5124>>2],l[b+16>>2]=l[a+5120>>2],l[b+20>>2]=s,l[a+5520>>2]=l[r+56>>2],b=l[r+52>>2],t=l[i+4>>2],l[(s=a+1320|0)>>2]=l[i>>2],l[s+4>>2]=t,l[a+5524>>2]=b,b=l[a+5940>>2],l[a+1312>>2]=l[a+5936>>2],l[a+1316>>2]=b,Fk(a+5344|0,a+1312|0),b=l[4+(i=a+5352|0)>>2],i=l[i>>2],l[k>>2]=i,l[k+4>>2]=b,l[(k=a+1304|0)>>2]=i,l[k+4>>2]=b,b=l[a+5348>>2],i=l[a+5344>>2],l[a+5120>>2]=i,l[a+5124>>2]=b,l[a+1296>>2]=i,l[a+1300>>2]=b,!(15&v[a+1296|0]))break a;if(t=l[r+56>>2],(0|(k=l[r+48>>2]+-24|0))>=(0|(b=l[r+44>>2]))?i=l[r+40>>2]:(s=8-b|0,b=583-(b<<1)&-8,gi((i=Rn(l[r+40>>2]-s|0,b))+(b-s|0)|0,i,s),i=i+b|0,l[r+40>>2]=i,l[r+44>>2]=8-b),l[r+48>>2]=k,l[(b=i+k|0)-4>>2]=t,l[r+56>>2]=k,s=l[4+(i=a+5128|0)>>2],l[b+8>>2]=l[i>>2],l[b+12>>2]=s,k=l[a+5124>>2],l[b>>2]=l[a+5120>>2],l[b+4>>2]=k,b=l[a+5524>>2],l[a+1288>>2]=l[a+5520>>2],l[a+1292>>2]=b,Ja(r,n,a+1288|0),b=l[4+(k=a+5608|0)>>2],k=l[k>>2],l[i>>2]=k,l[i+4>>2]=b,l[(i=a+1280|0)>>2]=k,l[i+4>>2]=b,b=l[a+5604>>2],i=l[a+5600>>2],l[a+5120>>2]=i,l[a+5124>>2]=b,l[a+1272>>2]=i,l[a+1276>>2]=b,!(15&v[a+1272|0]))break a;c=l[r+56>>2],(0|(k=l[r+48>>2]+-24|0))>=(0|(b=l[r+44>>2]))?t=l[r+40>>2]:(s=8-b|0,b=583-(b<<1)&-8,gi((i=Rn(l[r+40>>2]-s|0,b))+(b-s|0)|0,i,s),t=i+b|0,l[r+40>>2]=t,l[r+44>>2]=8-b),b=n+6|0,l[r+48>>2]=k,l[(i=k+t|0)-4>>2]=c,l[r+56>>2]=k,k=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=k,n=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=n;break c}if(c=l[r+40>>2],b=l[r+52>>2],s=d[n+4>>1],k=d[n+2>>1])for(t=c+4|0,i=0;b=l[b+t>>2],(0|k)!=(0|(i=i+1|0)););if(i=l[(b=b+c|0)>>2],l[i+8>>2]<=(0|s))break e;k=b+(s+l[i+12>>2]<<4)|0,l[r+100>>2]&&(l[a+1680>>2]=s,gn(21599,a+1680|0),i=l[k+28>>2],l[(b=a+1672|0)>>2]=l[k+24>>2],l[b+4>>2]=i,b=l[k+20>>2],l[a+1664>>2]=l[k+16>>2],l[a+1668>>2]=b,Fk(a+5328|0,a+1664|0),s=l[4+(i=a+5336|0)>>2],l[(b=a+1656|0)>>2]=l[i>>2],l[b+4>>2]=s,b=l[a+5332>>2],l[a+1648>>2]=l[a+5328>>2],l[a+1652>>2]=b,_k(a+1648|0,0),i=l[k+28>>2],l[(b=a+1640|0)>>2]=l[k+24>>2],l[b+4>>2]=i,b=l[k+20>>2],l[a+1632>>2]=l[k+16>>2],l[a+1636>>2]=b,s=a,i=(15&v[0|(i=a+1632|0)])-5>>>0<=2?l[l[i+8>>2]>>2]:1,l[s+1616>>2]=i,gn(21841,a+1616|0),c=l[r+40>>2]),i=l[r+56>>2],u=l[12+(s=c=i+c|0)>>2],l[(b=a+5320|0)>>2]=l[s+8>>2],l[b+4>>2]=u,t=l[s+4>>2],l[a+5312>>2]=l[s>>2],l[a+5316>>2]=t;q:{if(l[r+48>>2]!=(0|i)){if(s=l[b+4>>2],l[(i=a+1608|0)>>2]=l[b>>2],l[i+4>>2]=s,i=l[a+5316>>2],l[a+1600>>2]=l[a+5312>>2],l[a+1604>>2]=i,Fk(a+5120|0,a+1600|0),s=l[4+(i=a+5128|0)>>2],l[b>>2]=l[i>>2],l[b+4>>2]=s,b=l[a+5124>>2],l[a+5312>>2]=l[a+5120>>2],l[a+5316>>2]=b,i=l[r+56>>2],t=l[(i+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|i))break q}else t=l[c+-4>>2];l[r+48>>2]=i+24}if(l[r+56>>2]=t,t=l[4+(b=a+5320|0)>>2],l[(i=a+1592|0)>>2]=l[b>>2],l[i+4>>2]=t,i=l[a+5316>>2],l[a+1584>>2]=l[a+5312>>2],l[a+1588>>2]=i,!(15&v[a+1584|0]))break i;if(s=l[b+4>>2],l[(i=a+1576|0)>>2]=l[b>>2],l[i+4>>2]=s,b=l[a+5316>>2],l[a+1568>>2]=l[a+5312>>2],l[a+1572>>2]=b,Mi(a+1568|0),i=l[k+28>>2],l[(b=a+1560|0)>>2]=l[k+24>>2],l[b+4>>2]=i,b=l[k+20>>2],l[a+1552>>2]=l[k+16>>2],l[a+1556>>2]=b,Fk(a+5296|0,a+1552|0),b=l[4+(k=a+5304|0)>>2],i=a+5128|0,k=l[k>>2],l[i>>2]=k,l[i+4>>2]=b,l[(i=a+1544|0)>>2]=k,l[i+4>>2]=b,b=l[a+5300>>2],i=l[a+5296>>2],l[a+5120>>2]=i,l[a+5124>>2]=b,l[a+1536>>2]=i,l[a+1540>>2]=b,!(15&v[a+1536|0]))break a;c=l[r+56>>2],(0|(k=l[r+48>>2]+-24|0))>=(0|(b=l[r+44>>2]))?t=l[r+40>>2]:(s=8-b|0,b=583-(b<<1)&-8,gi((i=Rn(l[r+40>>2]-s|0,b))+(b-s|0)|0,i,s),t=i+b|0,l[r+40>>2]=t,l[r+44>>2]=8-b),b=n+6|0,l[r+48>>2]=k,l[(i=k+t|0)-4>>2]=c,l[r+56>>2]=k,k=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=k,n=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=n;break c}if(c=l[r+40>>2],b=l[r+52>>2],k=d[n+4>>1],s=d[n+2>>1])for(t=c+4|0,i=0;b=l[b+t>>2],(0|s)!=(0|(i=i+1|0)););if(i=l[(b=b+c|0)>>2],l[i+8>>2]<=(0|k))break e;i=b+(k+l[i+12>>2]<<4)|0,l[r+100>>2]&&(l[a+1808>>2]=k,gn(21599,a+1808|0),k=l[i+28>>2],l[(b=a+1800|0)>>2]=l[i+24>>2],l[b+4>>2]=k,b=l[i+20>>2],l[a+1792>>2]=l[i+16>>2],l[a+1796>>2]=b,Fk(a+5280|0,a+1792|0),s=l[4+(k=a+5288|0)>>2],l[(b=a+1784|0)>>2]=l[k>>2],l[b+4>>2]=s,b=l[a+5284>>2],l[a+1776>>2]=l[a+5280>>2],l[a+1780>>2]=b,_k(a+1776|0,0),k=l[i+28>>2],l[(b=a+1768|0)>>2]=l[i+24>>2],l[b+4>>2]=k,b=l[i+20>>2],l[a+1760>>2]=l[i+16>>2],l[a+1764>>2]=b,s=a,k=(15&v[0|(k=a+1760|0)])-5>>>0<=2?l[l[k+8>>2]>>2]:1,l[s+1744>>2]=k,gn(21841,a+1744|0),c=l[r+40>>2]),s=k=c+(b=l[r+56>>2])|0,c=l[k+12>>2],l[(t=a+5272|0)>>2]=l[k+8>>2],l[t+4>>2]=c,t=l[k+4>>2],l[a+5264>>2]=l[k>>2],l[a+5268>>2]=t;H:{if(l[r+48>>2]!=(0|b)){if(c=l[10947],l[8+(b=a+5120|0)>>2]=l[10946],l[b+12>>2]=c,t=l[10945],l[b>>2]=l[10944],l[b+4>>2]=t,t=l[4+(b=a+5128|0)>>2],l[s+8>>2]=l[b>>2],l[s+12>>2]=t,b=l[a+5124>>2],l[k>>2]=l[a+5120>>2],l[k+4>>2]=b,b=l[r+56>>2],t=l[(b+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|b))break H}else t=l[k+-4>>2];l[r+48>>2]=b+24}if(l[r+56>>2]=t,t=l[4+(b=a+5272|0)>>2],l[(k=a+1736|0)>>2]=l[b>>2],l[k+4>>2]=t,k=l[a+5268>>2],l[a+1728>>2]=l[a+5264>>2],l[a+1732>>2]=k,!(15&v[a+1728|0]))break r;if(s=l[b+4>>2],l[(k=a+1720|0)>>2]=l[b>>2],l[k+4>>2]=s,b=l[a+5268>>2],l[a+1712>>2]=l[a+5264>>2],l[a+1716>>2]=b,Mi(a+1712|0),k=v[i+28|0]|v[i+29|0]<<8|v[i+30|0]<<16|v[i+31|0]<<24,s=a+5128|0,t=v[i+24|0]|v[i+25|0]<<8|v[i+26|0]<<16|v[i+27|0]<<24,l[s>>2]=t,l[s+4>>2]=k,s=v[i+16|0]|v[i+17|0]<<8|v[i+18|0]<<16|v[i+19|0]<<24,b=v[i+20|0]|v[i+21|0]<<8|v[i+22|0]<<16|v[i+23|0]<<24,l[(c=a+1704|0)>>2]=t,l[c+4>>2]=k,l[a+5120>>2]=s,l[a+5124>>2]=b,l[a+1696>>2]=s,l[a+1700>>2]=b,!(15&v[a+1696|0]))break a;u=l[r+56>>2],(0|(k=l[r+48>>2]+-24|0))>=(0|(b=l[r+44>>2]))?c=l[r+40>>2]:(t=8-b|0,b=583-(b<<1)&-8,gi((s=Rn(l[r+40>>2]-t|0,b))+(b-t|0)|0,s,t),c=b+s|0,l[r+40>>2]=c,l[r+44>>2]=8-b),b=n+6|0,l[r+48>>2]=k,l[(n=k+c|0)-4>>2]=u,l[r+56>>2]=k,t=l[4+(k=a+5128|0)>>2],l[n+8>>2]=l[k>>2],l[n+12>>2]=t,s=l[a+5124>>2],l[n>>2]=l[a+5120>>2],l[n+4>>2]=s,t=l[10947],l[8+(n=a+5120|0)>>2]=l[10946],l[n+12>>2]=t,s=l[10945],l[n>>2]=l[10944],l[n+4>>2]=s,n=l[k+4>>2],l[i+24>>2]=l[k>>2],l[i+28>>2]=n,n=l[a+5124>>2],l[i+16>>2]=l[a+5120>>2],l[i+20>>2]=n;break c}l[a+5256>>2]=l[r+56>>2],l[a+5260>>2]=l[r+52>>2],b=l[a+5260>>2],l[a+1944>>2]=l[a+5256>>2],l[a+1948>>2]=b,Ja(r,n,a+1944|0)}if(k=l[r+40>>2],b=l[r+52>>2],s=d[n+4>>1],t=d[n+2>>1])for(c=k+4|0,i=0;b=l[b+c>>2],(0|t)!=(0|(i=i+1|0)););if(b=l[(t=k+b|0)>>2],l[b+8>>2]<=(0|s))break e;c=l[b+12>>2],b=l[r+56>>2],E=l[12+(k=p=k+b|0)>>2],l[(i=a+5944|0)>>2]=l[k+8>>2],l[i+4>>2]=E,u=l[k+4>>2],l[a+5936>>2]=l[k>>2],l[a+5940>>2]=u;B:{if(l[r+48>>2]!=(0|b)){if(k=l[i+4>>2],l[(b=a+1936|0)>>2]=l[i>>2],l[b+4>>2]=k,b=l[a+5940>>2],l[a+1928>>2]=l[a+5936>>2],l[a+1932>>2]=b,Fk(a+5120|0,a+1928|0),k=l[4+(b=a+5128|0)>>2],l[i>>2]=l[b>>2],l[i+4>>2]=k,b=l[a+5124>>2],l[a+5936>>2]=l[a+5120>>2],l[a+5940>>2]=b,b=l[r+56>>2],i=l[(b+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|b))break B}else i=l[p+-4>>2];l[r+48>>2]=b+24}if(l[r+56>>2]=i,k=l[4+(i=a+5944|0)>>2],l[(b=a+1920|0)>>2]=l[i>>2],l[b+4>>2]=k,b=l[a+5940>>2],l[a+1912>>2]=l[a+5936>>2],l[a+1916>>2]=b,!(15&v[a+1912|0]))break i;l[r+100>>2]&&(l[a+1904>>2]=s,gn(21599,a+1904|0),u=l[4+(k=b=a+5944|0)>>2],l[(i=a+1896|0)>>2]=l[k>>2],l[i+4>>2]=u,i=l[a+5940>>2],l[a+1888>>2]=l[a+5936>>2],l[a+1892>>2]=i,Fk(a+5240|0,a+1888|0),u=l[4+(k=a+5248|0)>>2],l[(i=a+1880|0)>>2]=l[k>>2],l[i+4>>2]=u,i=l[a+5244>>2],l[a+1872>>2]=l[a+5240>>2],l[a+1876>>2]=i,_k(a+1872|0,0),k=l[b+4>>2],l[(i=a+1864|0)>>2]=l[b>>2],l[i+4>>2]=k,b=l[a+5940>>2],l[a+1856>>2]=l[a+5936>>2],l[a+1860>>2]=b,k=a,i=(15&v[0|(i=a+1856|0)])-5>>>0<=2?l[l[i+8>>2]>>2]:1,l[k+1840>>2]=i,gn(21841,a+1840|0)),b=n+6|0,s=l[12+(k=16+(i=t+(s+c<<4)|0)|0)>>2],l[(n=a+1832|0)>>2]=l[k+8>>2],l[n+4>>2]=s,n=l[i+20>>2],l[a+1824>>2]=l[i+16>>2],l[a+1828>>2]=n,Mi(a+1824|0),k=l[4+(n=a+5944|0)>>2],l[i+24>>2]=l[n>>2],l[i+28>>2]=k,n=l[a+5940>>2],l[i+16>>2]=l[a+5936>>2],l[i+20>>2]=n;break c}if(i=l[r+40>>2],b=l[r+52>>2],k=d[n+4>>1],n=d[n+2>>1])for(s=i+4|0;b=l[b+s>>2],(0|n)!=(0|(o=o+1|0)););if(i=l[(b=i+b|0)>>2],l[i+8>>2]<=(0|k))break e;b=b+(k+l[i+12>>2]<<4)|0,i=l[b+28>>2],l[(n=a+1960|0)>>2]=l[b+24>>2],l[n+4>>2]=i,i=l[b+20>>2],l[a+1952>>2]=l[b+16>>2],l[a+1956>>2]=i,Mi(a+1952|0),o=l[10947],l[8+(i=a+5120|0)>>2]=l[10946],l[i+12>>2]=o,n=l[10945],l[i>>2]=l[10944],l[i+4>>2]=n,n=l[4+(i=a+5128|0)>>2],l[b+24>>2]=l[i>>2],l[b+28>>2]=n,i=l[a+5124>>2],l[b+16>>2]=l[a+5120>>2],l[b+20>>2]=i;break o}i=(k=l[r+40>>2])+l[r+52>>2]|0,s=l[i+-4>>2];C:{if(s){if(t=l[i+12>>2],k=l[k+s>>2],t>>>0<(s=l[k>>2])+(l[k+4>>2]<<1)>>>0&&t>>>0>=s>>>0)break C;break k}if(l[i+12>>2])break f}if(i=l[i>>2],s=l[i+28>>2],l[(k=a+2096|0)>>2]=l[i+24>>2],l[k+4>>2]=s,k=l[i+20>>2],l[a+2088>>2]=l[i+16>>2],l[a+2092>>2]=k,Fk(a+5224|0,a+2088|0),b=d[b>>1],s=l[4+(k=a+5232|0)>>2],l[(i=a+2080|0)>>2]=l[k>>2],l[i+4>>2]=s,i=l[a+5228>>2],l[a+2072>>2]=l[a+5224>>2],l[a+2076>>2]=i,Ma(a+5120|0,a+2072|0,b),k=l[4+(i=a+5128|0)>>2],l[(b=a+2064|0)>>2]=l[i>>2],l[b+4>>2]=k,b=l[a+5124>>2],l[a+2056>>2]=l[a+5120>>2],l[a+2060>>2]=b,!(15&v[a+2056|0]))break w;if(s=l[r+40>>2],b=l[r+52>>2],k=d[n+6>>1],t=d[n+4>>1])for(c=s+4|0,i=0;b=l[b+c>>2],(0|t)!=(0|(i=i+1|0)););if(i=l[(b=b+s|0)>>2],l[i+8>>2]<=(0|k))break e;i=b+(k+l[i+12>>2]<<4)|0,l[r+100>>2]&&(l[a+2048>>2]=k,gn(21599,a+2048|0),t=l[4+(b=a+5128|0)>>2],l[(k=a+2040|0)>>2]=l[b>>2],l[k+4>>2]=t,k=l[a+5124>>2],l[a+2032>>2]=l[a+5120>>2],l[a+2036>>2]=k,Fk(a+5208|0,a+2032|0),t=l[4+(s=a+5216|0)>>2],l[(k=a+2024|0)>>2]=l[s>>2],l[k+4>>2]=t,k=l[a+5212>>2],l[a+2016>>2]=l[a+5208>>2],l[a+2020>>2]=k,_k(a+2016|0,0),s=l[b+4>>2],l[(k=a+2008|0)>>2]=l[b>>2],l[k+4>>2]=s,b=l[a+5124>>2],l[a+2e3>>2]=l[a+5120>>2],l[a+2004>>2]=b,s=a,k=(15&v[0|(k=a+2e3|0)])-5>>>0<=2?l[l[k+8>>2]>>2]:1,l[s+1984>>2]=k,gn(21841,a+1984|0)),b=n+8|0,k=l[i+28>>2],l[(n=a+1976|0)>>2]=l[i+24>>2],l[n+4>>2]=k,n=l[i+20>>2],l[a+1968>>2]=l[i+16>>2],l[a+1972>>2]=n,Mi(a+1968|0),k=l[4+(n=a+5128|0)>>2],l[i+24>>2]=l[n>>2],l[i+28>>2]=k,n=l[a+5124>>2],l[i+16>>2]=l[a+5120>>2],l[i+20>>2]=n;break c}t=(o=l[r+56>>2])+l[r+40>>2]|0,c=l[(k=t)+12>>2],l[(i=a+5944|0)>>2]=l[k+8>>2],l[i+4>>2]=c,s=l[k+4>>2],l[a+5936>>2]=l[k>>2],l[a+5940>>2]=s;j:{if(l[r+48>>2]!=(0|o)){if(k=l[i+4>>2],l[(o=a+2216|0)>>2]=l[i>>2],l[o+4>>2]=k,o=l[a+5940>>2],l[a+2208>>2]=l[a+5936>>2],l[a+2212>>2]=o,Fk(a+5120|0,a+2208|0),k=l[4+(o=a+5128|0)>>2],l[i>>2]=l[o>>2],l[i+4>>2]=k,i=l[a+5124>>2],l[a+5936>>2]=l[a+5120>>2],l[a+5940>>2]=i,o=l[r+56>>2],i=l[(o+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|o))break j}else i=l[t+-4>>2];l[r+48>>2]=o+24}if(l[r+56>>2]=i,k=l[4+(o=a+5944|0)>>2],l[(i=a+2200|0)>>2]=l[o>>2],l[i+4>>2]=k,i=l[a+5940>>2],l[a+2192>>2]=l[a+5936>>2],l[a+2196>>2]=i,!(15&v[a+2192|0]))break i;if(i=v[h+12|0]|v[h+13|0]<<8|v[h+14|0]<<16|v[h+15|0]<<24,o=a+5128|0,s=v[h+8|0]|v[h+9|0]<<8|v[h+10|0]<<16|v[h+11|0]<<24,l[o>>2]=s,l[o+4>>2]=i,o=v[0|h]|v[h+1|0]<<8|v[h+2|0]<<16|v[h+3|0]<<24,k=v[h+4|0]|v[h+5|0]<<8|v[h+6|0]<<16|v[h+7|0]<<24,l[(t=a+2184|0)>>2]=s,l[t+4>>2]=i,l[a+5120>>2]=o,l[a+5124>>2]=k,l[a+2176>>2]=o,l[a+2180>>2]=k,!(15&v[a+2176|0]))break a;if(t=l[r+56>>2],(0|(o=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?i=l[r+40>>2]:(s=8-i|0,k=583-(i<<1)&-8,gi((i=Rn(l[r+40>>2]-s|0,k))+(k-s|0)|0,i,s),i=i+k|0,l[r+40>>2]=i,l[r+44>>2]=8-k),l[r+48>>2]=o,l[(i=i+o|0)-4>>2]=t,l[r+56>>2]=o,s=l[4+(k=o=a+5128|0)>>2],l[i+8>>2]=l[k>>2],l[i+12>>2]=s,k=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=k,l[a+5200>>2]=l[r+56>>2],l[a+5204>>2]=l[r+52>>2],i=l[a+5204>>2],l[a+2168>>2]=l[a+5200>>2],l[a+2172>>2]=i,Ja(r,n,a+2168|0),m[8+(i=a+5184|0)>>3]=l[r+96>>2],l[i>>2]=4,l[i+4>>2]=0,i=l[4+(n=a+5192|0)>>2],n=l[n>>2],l[o>>2]=n,l[o+4>>2]=i,l[(o=a+2160|0)>>2]=n,l[o+4>>2]=i,i=l[a+5188>>2],n=l[a+5184>>2],l[a+5120>>2]=n,l[a+5124>>2]=i,l[a+2152>>2]=n,l[a+2156>>2]=i,!(15&v[a+2152|0]))break a;if(s=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?i=l[r+40>>2]:(k=8-i|0,o=583-(i<<1)&-8,gi((i=Rn(l[r+40>>2]-k|0,o))+(o-k|0)|0,i,k),i=i+o|0,l[r+40>>2]=i,l[r+44>>2]=8-o),l[r+48>>2]=n,l[(i=i+n|0)-4>>2]=s,l[r+56>>2]=n,k=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=k,o=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=o,i=v[r+92|0]|v[r+93|0]<<8|v[r+94|0]<<16|v[r+95|0]<<24,k=v[r+88|0]|v[r+89|0]<<8|v[r+90|0]<<16|v[r+91|0]<<24,l[n>>2]=k,l[n+4>>2]=i,n=v[r+80|0]|v[r+81|0]<<8|v[r+82|0]<<16|v[r+83|0]<<24,o=v[r+84|0]|v[r+85|0]<<8|v[r+86|0]<<16|v[r+87|0]<<24,l[(s=a+2144|0)>>2]=k,l[s+4>>2]=i,l[a+5120>>2]=n,l[a+5124>>2]=o,l[a+2136>>2]=n,l[a+2140>>2]=o,!(15&v[a+2136|0]))break a;if(s=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?i=l[r+40>>2]:(k=8-i|0,o=583-(i<<1)&-8,gi((i=Rn(l[r+40>>2]-k|0,o))+(o-k|0)|0,i,k),i=i+o|0,l[r+40>>2]=i,l[r+44>>2]=8-o),l[r+48>>2]=n,l[(i=i+n|0)-4>>2]=s,l[r+56>>2]=n,k=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=k,o=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=o,k=l[4+(o=a+5944|0)>>2],l[(i=a+2128|0)>>2]=l[o>>2],l[i+4>>2]=k,i=l[a+5940>>2],l[a+2120>>2]=l[a+5936>>2],l[a+2124>>2]=i,Fk(a+5168|0,a+2120|0),i=l[4+(o=a+5176|0)>>2],o=l[o>>2],l[n>>2]=o,l[n+4>>2]=i,l[(n=a+2112|0)>>2]=o,l[n+4>>2]=i,i=l[a+5172>>2],n=l[a+5168>>2],l[a+5120>>2]=n,l[a+5124>>2]=i,l[a+2104>>2]=n,l[a+2108>>2]=i,!(15&v[a+2104|0]))break a;s=l[r+56>>2],(0|(n=l[r+48>>2]+-24|0))>=(0|(i=l[r+44>>2]))?i=l[r+40>>2]:(k=8-i|0,o=583-(i<<1)&-8,gi((i=Rn(l[r+40>>2]-k|0,o))+(o-k|0)|0,i,k),i=i+o|0,l[r+40>>2]=i,l[r+44>>2]=8-o),l[r+48>>2]=n,l[(i=i+n|0)-4>>2]=s,l[r+56>>2]=n,k=l[4+(n=a+5128|0)>>2],l[i+8>>2]=l[n>>2],l[i+12>>2]=k,o=l[a+5124>>2],l[i>>2]=l[a+5120>>2],l[i+4>>2]=o,fn(a+5120|0),i=l[n+4>>2],l[h+8>>2]=l[n>>2],l[h+12>>2]=i,i=l[a+5124>>2],l[h>>2]=l[a+5120>>2],l[h+4>>2]=i,n=l[4+(i=a+5944|0)>>2],l[r+88>>2]=l[i>>2],l[r+92>>2]=n,i=l[a+5940>>2],l[r+80>>2]=l[a+5936>>2],l[r+84>>2]=i,o=0,l[r+96>>2]=0;break c}c=(i=l[r+56>>2])+l[r+40>>2]|0,u=l[(s=c)+12>>2],l[(k=a+5608|0)>>2]=l[s+8>>2],l[k+4>>2]=u,t=l[s+4>>2],l[a+5600>>2]=l[s>>2],l[a+5604>>2]=t;N:{if(l[r+48>>2]!=(0|i)){if(s=l[k+4>>2],l[(i=a+2600|0)>>2]=l[k>>2],l[i+4>>2]=s,i=l[a+5604>>2],l[a+2592>>2]=l[a+5600>>2],l[a+2596>>2]=i,Fk(a+5120|0,a+2592|0),s=l[4+(i=a+5128|0)>>2],l[k>>2]=l[i>>2],l[k+4>>2]=s,i=l[a+5124>>2],l[a+5600>>2]=l[a+5120>>2],l[a+5604>>2]=i,i=l[r+56>>2],t=l[(i+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|i))break N}else t=l[c+-4>>2];l[r+48>>2]=i+24}if(l[r+56>>2]=t,t=l[4+(i=a+5608|0)>>2],l[(k=a+2584|0)>>2]=l[i>>2],l[k+4>>2]=t,k=l[a+5604>>2],l[a+2576>>2]=l[a+5600>>2],l[a+2580>>2]=k,!(15&v[a+2576|0]))break i;s=l[i+4>>2],l[(k=a+2568|0)>>2]=l[i>>2],l[k+4>>2]=s,i=l[a+5604>>2],l[a+2560>>2]=l[a+5600>>2],l[a+2564>>2]=i,Fk(a+5152|0,a+2560|0),s=l[4+(k=a+5160|0)>>2],l[(i=a+5944|0)>>2]=l[k>>2],l[i+4>>2]=s,i=l[a+5156>>2],l[a+5936>>2]=l[a+5152>>2],l[a+5940>>2]=i;N:{if(l[r+96>>2]||(k=l[h+12>>2],l[(i=a+2552|0)>>2]=l[h+8>>2],l[i+4>>2]=k,i=l[h+4>>2],l[a+2544>>2]=l[h>>2],l[a+2548>>2]=i,6!=(15&v[a+2544|0])))s=l[4+(k=a+5944|0)>>2],l[(i=a+2536|0)>>2]=l[k>>2],l[i+4>>2]=s,i=l[a+5940>>2],l[a+2528>>2]=l[a+5936>>2],l[a+2532>>2]=i,Mi(a+2528|0);else if(k=l[r+92>>2],l[(i=a+2520|0)>>2]=l[r+88>>2],l[i+4>>2]=k,i=l[r+84>>2],l[a+2512>>2]=l[r+80>>2],l[a+2516>>2]=i,Fk(a+5120|0,a+2512|0),s=l[4+(k=a+5944|0)>>2],l[(i=a+2504|0)>>2]=l[k>>2],l[i+4>>2]=s,s=l[4+(k=a+5128|0)>>2],l[(i=a+2488|0)>>2]=l[k>>2],l[i+4>>2]=s,i=l[a+5940>>2],l[a+2496>>2]=l[a+5936>>2],l[a+2500>>2]=i,i=l[a+5124>>2],l[a+2480>>2]=l[a+5120>>2],l[a+2484>>2]=i,!cf(a+2496|0,a+2480|0))break N;s=l[4+(k=a+5608|0)>>2],l[(i=a+2472|0)>>2]=l[k>>2],l[i+4>>2]=s,i=l[a+5604>>2],l[a+2464>>2]=l[a+5600>>2],l[a+2468>>2]=i,Mi(a+2464|0),c=(i=l[r+56>>2])+l[r+40>>2]|0,u=l[(s=c)+12>>2],l[(k=a+5944|0)>>2]=l[s+8>>2],l[k+4>>2]=u,t=l[s+4>>2],l[a+5936>>2]=l[s>>2],l[a+5940>>2]=t;j:{if(l[r+48>>2]!=(0|i)){if(s=l[k+4>>2],l[(i=a+2456|0)>>2]=l[k>>2],l[i+4>>2]=s,i=l[a+5940>>2],l[a+2448>>2]=l[a+5936>>2],l[a+2452>>2]=i,Fk(a+5120|0,a+2448|0),s=l[4+(i=a+5128|0)>>2],l[k>>2]=l[i>>2],l[k+4>>2]=s,i=l[a+5124>>2],l[a+5936>>2]=l[a+5120>>2],l[a+5940>>2]=i,i=l[r+56>>2],t=l[(i+l[r+40>>2]|0)-4>>2],l[r+48>>2]!=(0|i))break j}else t=l[c+-4>>2];l[r+48>>2]=i+24}if(l[r+56>>2]=t,s=l[4+(k=a+5944|0)>>2],l[(i=a+2440|0)>>2]=l[k>>2],l[i+4>>2]=s,i=l[a+5940>>2],l[a+2432>>2]=l[a+5936>>2],l[a+2436>>2]=i,!(15&v[a+2432|0]))break i;t=(i=l[r+56>>2])+l[r+40>>2]|0,c=l[(k=t)+12>>2],l[(s=a+5096|0)>>2]=l[k+8>>2],l[s+4>>2]=c,s=l[k+4>>2],l[a+5088>>2]=l[k>>2],l[a+5092>>2]=s;j:{if(l[r+48>>2]!=(0|i)){if(t=l[4+(i=a+5096|