>0]|0;t=m+(q*24|0)|0;u=c[j+(r<<2)>>2]|0;v=+g[u>>2];w=c[j+(s<<2)>>2]|0;x=+g[w>>2];y=1184+(r*12|0)|0;z=1184+(s*12|0)|0;do if(+P(+(k-x))<9.999999747378752e-06){c[t>>2]=c[z>>2];c[m+(q*24|0)+4>>2]=c[1184+(s*12|0)+4>>2];c[m+(q*24|0)+8>>2]=c[1184+(s*12|0)+8>>2];A=1.0}else{B=k-v;if(!(+P(+B)<9.999999747378752e-06)?!(+P(+(v-x))<9.999999747378752e-06):0){C=B/(x-v);B=+g[y>>2];g[t>>2]=B+C*(+g[z>>2]-B);B=+g[1184+(r*12|0)+4>>2];g[m+(q*24|0)+4>>2]=B+C*(+g[1184+(s*12|0)+4>>2]-B);B=+g[1184+(r*12|0)+8>>2];g[m+(q*24|0)+8>>2]=B+C*(+g[1184+(s*12|0)+8>>2]-B);A=C;break}c[t>>2]=c[y>>2];c[m+(q*24|0)+4>>2]=c[1184+(r*12|0)+4>>2];c[m+(q*24|0)+8>>2]=c[1184+(r*12|0)+8>>2];A=0.0}while(0);v=+g[u+4>>2];g[m+(q*24|0)+12>>2]=v+A*(+g[w+4>>2]-v);v=+g[u+8>>2];g[m+(q*24|0)+16>>2]=v+A*(+g[w+8>>2]-v);v=+g[u+12>>2];g[m+(q*24|0)+20>>2]=v+A*(+g[w+12>>2]-v)}q=q+1|0}while((q|0)!=12);A=+g[f+12>>2]-+g[f>>2];q=f+4|0;k=+g[f+16>>2]-+g[q>>2];j=f+8|0;v=+g[f+20>>2]-+g[j>>2];if((n|0)==0|(n|0)==255)D=0;else{p=h+4|0;r=h+8|0;y=b;b=a[1808+(n<<4)>>0]|0;t=0;while(1){s=b&255;z=m+(s*24|0)|0;g[y>>2]=+g[h>>2]+ +g[z>>2];E=m+(s*24|0)+4|0;g[y+4>>2]=+g[p>>2]+ +g[E>>2];F=m+(s*24|0)+8|0;g[y+8>>2]=+g[r>>2]+ +g[F>>2];c[y+12>>2]=c[m+(s*24|0)+12>>2];c[y+16>>2]=c[m+(s*24|0)+16>>2];c[y+20>>2]=c[m+(s*24|0)+20>>2];c[y+24>>2]=~~((+g[f>>2]+A*+g[z>>2])*255.0)&255|(~~((+g[q>>2]+k*+g[E>>2])*255.0)&255)<<8|(~~((+g[j>>2]+v*+g[F>>2])*255.0)&255)<<16|-16777216;F=t+1|0;b=a[1808+(n<<4)+F>>0]|0;if(b<<24>>24==-1){D=F;break}else{y=y+d|0;t=F}}}o=D;i=l;return o|0}function uh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+48|0;e=d;c[e>>2]=5912;f=Yj(e,a,b)|0;i=d;return f|0}function vh(a){a=a|0;var b=0;b=5936+(a<<2)|0;c[1484]=c[b>>2];c[1492]=c[b>>2];return}function wh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+8192|0;f=e;g=Io(f,8192,b,d)|0;if((g|0)>8192){h=i;i=i+((1*(g+1|0)|0)+15&-16)|0;j=Io(h,g,b,d)|0;k=h}else{j=g;k=f}a[k+j>>0]=0;j=c[o>>2]|0;zd(k|0,j|0)|0;wf(j|0)|0;i=e;return}function xh(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;wh(a,e);i=d;return}function yh(a){a=a|0;return}function zh(a,d){a=a|0;d=d|0;var e=0;c[a>>2]=d;b[a+4>>1]=0;d=a+38|0;e=d+32|0;do{b[d>>1]=65535;d=d+2|0}while((d|0)<(e|0));d=a+6|0;e=d+32|0;do{b[d>>1]=0;d=d+2|0}while((d|0)<(e|0));return a|0}function Ah(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=i;i=i+16|0;d=b;e=d+4|0;f=a+38|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;if(!(f&3))wk(d,f,32);else vk(d,f,32);f=a+6|0;if(!(f&3))wk(d,f,32);else vk(d,f,32);f=aa(c[e>>2]|0,1540483477)|0;g=aa(f>>>24^f,1540483477)|0;c[e>>2]=g;e=g^(aa(c[d>>2]|0,1540483477)|0);g=aa(c[d+12>>2]|0,1540483477)|0;d=(aa(e,1540483477)|0)^(aa(g>>>24^g,1540483477)|0);g=aa(d>>>13^d,1540483477)|0;c[a>>2]=g>>>15^g;i=b;return}function Bh(a,f,g,h,i,j){a=a|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;j=(g&255)+-1|0;b[a+38+(f<<1)>>1]=j&3|h<<3&56|(i&1)<<7;i=a+4|0;b[a+6+(f<<1)>>1]=b[i>>1]|0;b[i>>1]=(e[i>>1]|0)+(d[(c[5936+(c[a>>2]<<2)>>2]|0)+(h<<2)+j>>0]|0);return a|0}function Ch(b,d,f,g,h,i){b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0;j=e[b+38+(d<<1)>>1]|0;a[f>>0]=(j&3)+1;c[g>>2]=j>>>3&7;a[h>>0]=j>>>7&1;a[i>>0]=j>>>8&1;return}function Dh(a){a=a|0;return}function Eh(a){a=a|0;var b=0;b=c[20]|0;return Sg[c[(c[b>>2]|0)+8>>2]&3](b,a,0,0,0)|0}function Fh(a,b){a=a|0;b=b|0;if(!a)return;b=c[20]|0;Jg[c[(c[b>>2]|0)+12>>2]&31](b,a,0,0,0);return}function Gh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+8208|0;g=f+16|0;h=f;c[h>>2]=e;e=Io(g,8192,d,h)|0;if((e|0)>8192){j=i;i=i+((1*(e+1|0)|0)+15&-16)|0;k=Io(j,e,d,h)|0;l=j}else{k=e;l=g}a[l+k>>0]=0;k=c[22]|0;Xg[c[(c[k>>2]|0)+8>>2]&63](k,b,l);i=f;return}function Hh(b){b=b|0;a[5984]=b&1;return}function Ih(d){d=d|0;var f=0,g=0,h=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,x=0,y=0,z=0;f=i;i=i+80|0;g=f;h=f+56|0;j=f+78|0;k=f+76|0;l=d+12|0;Ah(Bh(Bh(Bh(Bh(zh(l,0)|0,0,3,4,0,0)|0,4,4,0,1,0)|0,5,4,0,1,0)|0,8,2,4,0,0)|0);m=c[20]|0;n=Sg[c[(c[m>>2]|0)+8>>2]&3](m,49160,0,0,0)|0;c[n+4>>2]=49152;c[n>>2]=n+8;m=0;do{o=m<<3;p=n+(o+8)|0;q=0;while(1){r=a[5992+(q+o)>>0]|0;Xo(p|0,r<<24>>24>>7|0,1)|0;Xo(p+1|0,(r<<1&255)<<24>>24>>7|0,1)|0;Xo(p+2|0,(r<<2&255)<<24>>24>>7|0,1)|0;Xo(p+3|0,(r<<3&255)<<24>>24>>7|0,1)|0;Xo(p+4|0,(r<<4&255)<<24>>24>>7|0,1)|0;Xo(p+5|0,(r<<5&255)<<24>>24>>7|0,1)|0;Xo(p+6|0,(r<<6&255)<<24>>24>>7|0,1)|0;Xo(p+7|0,(r<<7&255)<<24>>24>>7|0,1)|0;q=q+1|0;if((q|0)==8)break;else p=p+2048|0}m=m+1|0}while((m|0)!=256);s=0;do{m=s<<4;p=n+((s<<3)+16392)|0;q=0;while(1){o=a[8040+(q+m)>>0]|0;Xo(p|0,o<<24>>24>>7|0,1)|0;Xo(p+1|0,(o<<1&255)<<24>>24>>7|0,1)|0;Xo(p+2|0,(o<<2&255)<<24>>24>>7|0,1)|0;Xo(p+3|0,(o<<3&255)<<24>>24>>7|0,1)|0;Xo(p+4|0,(o<<4&255)<<24>>24>>7|0,1)|0;Xo(p+5|0,(o<<5&255)<<24>>24>>7|0,1)|0;Xo(p+6|0,(o<<6&255)<<24>>24>>7|0,1)|0;Xo(p+7|0,(o<<7&255)<<24>>24>>7|0,1)|0;q=q+1|0;if((q|0)==16)break;else p=p+2048|0}s=s+1|0}while((s|0)!=256);s=c[20]|0;p=Sg[c[(c[s>>2]|0)+8>>2]&3](s,32,0,0,0)|0;c[p+4>>2]=24;s=p+8|0;c[p>>2]=s;q=s;m=g+40|0;c[g+8>>2]=m;o=g+12|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[g>>2]=12144;c[g+4>>2]=12168;c[m>>2]=12192;c[g+44>>2]=q;c[g+48>>2]=24;m=g+16|0;c[o>>2]=q;q=g+32|0;c[q>>2]=24;c[q+4>>2]=0;a[s>>0]=84;a[s+1>>0]=69;a[s+2>>0]=88;a[s+3>>0]=0;s=m;q=Zo(c[s>>2]|0,c[s+4>>2]|0,4,0)|0;s=E;o=m;c[o>>2]=q;c[o+4>>2]=s;o=g+24|0;m=o;r=c[m>>2]|0;t=c[m+4>>2]|0;m=(t|0)>(s|0)|(t|0)==(s|0)&r>>>0>q>>>0;u=o;c[u>>2]=m?r:q;c[u+4>>2]=m?t:s;c[h>>2]=1354;b[h+4>>1]=2048;b[h+6>>1]=24;b[h+8>>1]=0;b[h+10>>1]=0;a[h+12>>0]=1;a[h+13>>0]=19;a[h+14>>0]=0;c[h+16>>2]=n;Ug[c[(c[g>>2]|0)+8>>2]&15](g,h,20)|0;b[d>>1]=Ak(c[1494]|0,p,1354,0,0,6)|0;p=c[24]|0;if((p|0)==1){n=c[20]|0;s=Sg[c[(c[n>>2]|0)+8>>2]&3](n,16,0,0,0)|0;c[s+4>>2]=391;c[s>>2]=12208;c[s+8>>2]=0;c[s+12>>2]=0;v=s}else if((p|0)==3|(p|0)==2){s=c[20]|0;n=Sg[c[(c[s>>2]|0)+8>>2]&3](s,16,0,0,0)|0;c[n+4>>2]=714;c[n>>2]=12600;c[n+8>>2]=0;c[n+12>>2]=0;v=n}else if((p|0)==4){p=c[20]|0;n=Sg[c[(c[p>>2]|0)+8>>2]&3](p,16,0,0,0)|0;c[n+4>>2]=843;c[n>>2]=13320;c[n+8>>2]=0;c[n+12>>2]=0;v=n}else{n=c[20]|0;p=Sg[c[(c[n>>2]|0)+8>>2]&3](n,16,0,0,0)|0;c[p+4>>2]=503;c[p>>2]=14168;c[p+8>>2]=0;c[p+12>>2]=0;v=p}p=Bk(c[1494]|0,v)|0;v=c[24]|0;if((v|0)==1){n=c[20]|0;s=Sg[c[(c[n>>2]|0)+8>>2]&3](n,16,0,0,0)|0;c[s+4>>2]=353;c[s>>2]=14672;c[s+8>>2]=0;c[s+12>>2]=0;w=s}else if((v|0)==3|(v|0)==2){s=c[20]|0;n=Sg[c[(c[s>>2]|0)+8>>2]&3](s,16,0,0,0)|0;c[n+4>>2]=520;c[n>>2]=15032;c[n+8>>2]=0;c[n+12>>2]=0;w=n}else if((v|0)==4){v=c[20]|0;n=Sg[c[(c[v>>2]|0)+8>>2]&3](v,16,0,0,0)|0;c[n+4>>2]=762;c[n>>2]=15552;c[n+8>>2]=0;c[n+12>>2]=0;w=n}else{n=c[20]|0;v=Sg[c[(c[n>>2]|0)+8>>2]&3](n,16,0,0,0)|0;c[v+4>>2]=354;c[v>>2]=16320;c[v+8>>2]=0;c[v+12>>2]=0;w=v}v=Bk(c[1494]|0,w)|0;if(v<<16>>16==-1){w=c[1494]|0;b[h>>1]=p;b[g>>1]=b[h>>1]|0;x=Ck(w,g,1)|0}else{w=c[1494]|0;b[j>>1]=p;b[k>>1]=v;b[h>>1]=b[j>>1]|0;b[g>>1]=b[k>>1]|0;x=Dk(w,h,g,1)|0}b[d+84>>1]=x;c[d+4>>2]=Ek(c[1494]|0,(e[d+16>>1]|0)<<12,l)|0;l=c[1494]|0;x=l+19641604|0;g=b[x>>1]|0;h=b[l+19641606>>1]|0;if((g&65535)>=(h&65535)){y=0;z=d+8|0;c[z>>2]=y;i=f;return}b[x>>1]=g+1<<16>>16;w=x+4|0;x=b[w+((g&65535)<<1)>>1]|0;b[w+((x&65535)+(h&65535)<<1)>>1]=g;if(x<<16>>16==-1){y=0;z=d+8|0;c[z>>2]=y;i=f;return}g=c[l+18732228>>2]|0;l=g+18572948|0;a[(c[l>>2]|0)+(g+18572956)>>0]=5;h=(c[l>>2]|0)+2&-2;c[l>>2]=h;w=g+18572956+h|0;a[w>>0]=x;a[w+1>>0]=x>>8;w=(c[l>>2]|0)+5&-4;c[l>>2]=w;h=g+18572956+w|0;a[h>>0]=0;a[h+1>>0]=48;a[h+2>>0]=0;a[h+3>>0]=0;h=(c[l>>2]|0)+5&-2;c[l>>2]=h;w=g+18572956+h|0;a[w>>0]=0;a[w+1>>0]=0;c[l>>2]=(c[l>>2]|0)+2;l=c[20]|0;w=Sg[c[(c[l>>2]|0)+8>>2]&3](l,12304,0,0,0)|0;c[w>>2]=w+16;c[w+4>>2]=12288;b[w+12>>1]=x;y=w;z=d+8|0;c[z>>2]=y;i=f;return}function Jh(a){a=a|0;var b=0,d=0;b=c[20]|0;d=Sg[c[(c[b>>2]|0)+8>>2]&3](b,a+8|0,0,0,0)|0;c[d+4>>2]=a;c[d>>2]=d+8;return d|0}function Kh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[20]|0;g=Sg[c[(c[f>>2]|0)+8>>2]&3](f,16,0,0,0)|0;c[g+4>>2]=b;c[g>>2]=a;c[g+8>>2]=d;c[g+12>>2]=e;return g|0}function Lh(a){a=a|0;return Bk(c[1494]|0,a)|0}function Mh(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+16|0;g=f+6|0;h=f+4|0;j=f+2|0;k=f;l=b[d>>1]|0;d=b[a>>1]|0;if(l<<16>>16==-1){a=c[1494]|0;b[h>>1]=d;b[g>>1]=b[h>>1]|0;m=Ck(a,g,e)|0;i=f;return m|0}else{a=c[1494]|0;b[j>>1]=d;b[k>>1]=l;b[h>>1]=b[j>>1]|0;b[g>>1]=b[k>>1]|0;m=Dk(a,h,g,e)|0;i=f;return m|0}return 0}function Nh(e){e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;f=i;i=i+16|0;g=f+4|0;h=f+2|0;j=f;k=b[e+84>>1]|0;l=c[1494]|0;m=l+18732228|0;n=c[m>>2]|0;o=n+18638492|0;a[(c[o>>2]|0)+(n+18638500)>>0]=25;p=(c[o>>2]|0)+2&-2;c[o>>2]=p;q=n+18638500+p|0;a[q>>0]=k;a[q+1>>0]=k>>8;c[o>>2]=(c[o>>2]|0)+2;o=c[m>>2]|0;m=o+18704044|0;q=b[m>>1]|0;b[o+18721590+((q&65535)<<1)>>1]=k;b[m>>1]=q+1<<16>>16;q=k&65535;b[h>>1]=b[l+19709748+(q<<2)>>1]|0;b[g>>1]=b[h>>1]|0;Fk(l,g);h=b[l+19709748+(q<<2)+2>>1]|0;if(h<<16>>16!=-1){b[j>>1]=h;b[g>>1]=b[j>>1]|0;Fk(l,g)}g=b[e>>1]|0;l=c[1494]|0;if(g<<16>>16!=-1?(j=l+19711796+((g&65535)*6|0)|0,h=(b[j>>1]|0)+-1<<16>>16,b[j>>1]=h,h<<16>>16==0):0){h=l+18732228|0;j=c[h>>2]|0;q=j+18638492|0;a[(c[q>>2]|0)+(j+18638500)>>0]=26;k=(c[q>>2]|0)+2&-2;c[q>>2]=k;m=j+18638500+k|0;a[m>>0]=g;a[m+1>>0]=g>>8;c[q>>2]=(c[q>>2]|0)+2;q=c[h>>2]|0;h=q+18704046|0;m=b[h>>1]|0;b[q+18722614+((m&65535)<<1)>>1]=g;b[h>>1]=m+1<<16>>16;r=c[1494]|0}else r=l;l=c[e+4>>2]|0;m=r+18732228|0;r=c[m>>2]|0;h=r+18638492|0;a[(c[h>>2]|0)+(r+18638500)>>0]=23;g=(c[h>>2]|0)+2&-2;c[h>>2]=g;q=r+18638500+g|0;g=l+14|0;r=d[g>>0]|d[g+1>>0]<<8;a[q>>0]=r;a[q+1>>0]=r>>8;c[h>>2]=(c[h>>2]|0)+2;h=c[m>>2]|0;m=h+18704040|0;r=b[m>>1]|0;b[h+18712374+((r&65535)<<1)>>1]=b[g>>1]|0;b[m>>1]=r+1<<16>>16;r=c[20]|0;Jg[c[(c[r>>2]|0)+12>>2]&31](r,l,0,0,0);l=c[e+8>>2]|0;e=(c[1494]|0)+18732228|0;r=c[e>>2]|0;m=r+18638492|0;a[(c[m>>2]|0)+(r+18638500)>>0]=22;g=(c[m>>2]|0)+2&-2;c[m>>2]=g;h=r+18638500+g|0;g=l+12|0;r=d[g>>0]|d[g+1>>0]<<8;a[h>>0]=r;a[h+1>>0]=r>>8;c[m>>2]=(c[m>>2]|0)+2;m=c[e>>2]|0;e=m+18704036|0;r=b[e>>1]|0;b[m+18704054+((r&65535)<<1)>>1]=b[g>>1]|0;b[e>>1]=r+1<<16>>16;r=c[20]|0;Jg[c[(c[r>>2]|0)+12>>2]&31](r,l,0,0,0);i=f;return}function Oh(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+16|0;f=e+4|0;g=e+2|0;h=e;j=c[1494]|0;k=b[d>>1]|0;d=j+18732228|0;l=c[d>>2]|0;m=l+18638492|0;a[(c[m>>2]|0)+(l+18638500)>>0]=25;n=(c[m>>2]|0)+2&-2;c[m>>2]=n;o=l+18638500+n|0;a[o>>0]=k;a[o+1>>0]=k>>8;c[m>>2]=(c[m>>2]|0)+2;m=c[d>>2]|0;d=m+18704044|0;o=b[d>>1]|0;b[m+18721590+((o&65535)<<1)>>1]=k;b[d>>1]=o+1<<16>>16;o=k&65535;b[g>>1]=b[j+19709748+(o<<2)>>1]|0;b[f>>1]=b[g>>1]|0;Fk(j,f);g=b[j+19709748+(o<<2)+2>>1]|0;if(g<<16>>16==-1){i=e;return}b[h>>1]=g;b[f>>1]=b[h>>1]|0;Fk(j,f);i=e;return}function Ph(d,f,h){d=d|0;f=f|0;h=h|0;var i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=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,O=0.0,P=0.0,Q=0.0,R=0.0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;i=(c[24]|0)==1;j=i?0.0:.000244140625;k=i?.02083333395421505:0.0;i=(a[h+12>>0]|0)!=0;l=k+(i?0.0:.3333333432674408);m=k+(i?.3333333432674408:1.0);k=i?8.0:16.0;Ng[c[(c[d>>2]|0)+148>>2]&63](d,f);i=h+10|0;n=b[i>>1]|0;if(!(n<<16>>16))return;o=f+4|0;p=f+8|0;q=h+8|0;r=n;n=0;s=0;while(1){a:do if(s>>>0<(r&65535)>>>0){t=b[q>>1]|0;u=c[c[p>>2]>>2]|0;v=0;w=0;x=c[c[o>>2]>>2]|0;y=n;z=s;while(1){A=t&65535;B=y>>>0>>0?y:0;if(v>>>0<6144&B>>>0>>0){C=k*+(z>>>0);D=k*+((z+1|0)>>>0);E=t;F=u;G=(c[h>>2]|0)+(B+(aa(A,z)|0)<<1)|0;A=v;H=w;I=x;J=B;while(1){K=a[G>>0]|0;L=a[G+1>>0]|0;M=K&255;N=L&255;if((L|K)<<24>>24!=0?!(K<<24>>24==32&(N&240|0)==0):0){K=c[16680+((N&15)<<2)>>2]|0;L=c[16680+(N>>>4<<2)>>2]|0;O=+(J>>>0)*8.0;P=+(M|0)*8.0*.00048828125-j;Q=+((J+1|0)>>>0)*8.0;R=+(M+1|0)*8.0*.00048828125-j;g[I>>2]=O;g[I+4>>2]=C;g[I+8>>2]=0.0;c[I+12>>2]=K;c[I+16>>2]=L;g[I+20>>2]=P;g[I+24>>2]=l;g[I+28>>2]=Q;g[I+32>>2]=C;g[I+36>>2]=0.0;c[I+40>>2]=K;c[I+44>>2]=L;g[I+48>>2]=R;g[I+52>>2]=l;g[I+56>>2]=Q;g[I+60>>2]=D;g[I+64>>2]=0.0;c[I+68>>2]=K;c[I+72>>2]=L;g[I+76>>2]=R;g[I+80>>2]=m;g[I+84>>2]=O;g[I+88>>2]=D;g[I+92>>2]=0.0;c[I+96>>2]=K;c[I+100>>2]=L;g[I+104>>2]=P;g[I+108>>2]=m;L=H&65535;b[F>>1]=L;b[F+2>>1]=H+1;K=H+2&65535;b[F+4>>1]=K;b[F+6>>1]=K;b[F+8>>1]=H+3;b[F+10>>1]=L;S=b[q>>1]|0;T=F+12|0;U=A+6|0;V=H+4|0;W=I+112|0}else{S=E;T=F;U=A;V=H;W=I}L=J+1|0;if(U>>>0<6144&L>>>0<(S&65535)>>>0){E=S;F=T;G=G+2|0;A=U;H=V;I=W;J=L}else{X=S;Y=L;Z=T;_=U;$=V;ba=W;break}}if(_>>>0>6143){ca=_;da=Y;ea=z;break a}else{fa=X;ga=Z;ha=_;ia=$;ja=ba;ka=Y}}else{fa=t;ga=u;ha=v;ia=w;ja=x;ka=B}J=z+1|0;if(ha>>>0<6144?J>>>0<(e[i>>1]|0)>>>0:0){t=fa;u=ga;v=ha;w=ia;x=ja;y=ka;z=J}else{ca=ha;da=ka;ea=J;break}}}else{ca=0;da=n;ea=s}while(0);Xg[c[(c[d>>2]|0)+152>>2]&63](d,f,ca);r=b[i>>1]|0;if(ea>>>0>=(r&65535)>>>0)break;else{n=da;s=ea}}return}function Qh(d){d=d|0;var f=0,g=0,h=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,x=0,y=0,z=0,A=0,B=0,C=0;f=i;i=i+112|0;g=f+40|0;h=f+108|0;j=f;k=f+106|0;l=f+104|0;m=f+8|0;if(!(c[24]|0)){i=f;return}n=d+4|0;Ah(Bh(zh(n,0)|0,0,3,4,0,0)|0);o=c[24]|0;do if((o|0)==1){p=c[20]|0;q=Sg[c[(c[p>>2]|0)+8>>2]&3](p,16,0,0,0)|0;c[q+4>>2]=181;c[q>>2]=16744;c[q+8>>2]=0;c[q+12>>2]=0;p=Bk(c[1494]|0,q)|0;c[g>>2]=16928;c[g+4>>2]=204;c[g+8>>2]=17136;c[g+12>>2]=216;c[g+16>>2]=17352;c[g+20>>2]=228;c[g+24>>2]=17584;c[g+28>>2]=240;c[g+32>>2]=17824;c[g+36>>2]=240;c[g+40>>2]=18064;c[g+44>>2]=240;c[g+48>>2]=18304;c[g+52>>2]=240;c[g+56>>2]=18544;c[g+60>>2]=240;q=a[120]|0;a:do if(q<<24>>24){r=q&255;s=204;t=0;while(1){u=c[g+(t<<3)>>2]|0;v=c[20]|0;w=Sg[c[(c[v>>2]|0)+8>>2]&3](v,16,0,0,0)|0;c[w+4>>2]=s;c[w>>2]=u;c[w+8>>2]=0;c[w+12>>2]=0;c[m+(t<<2)>>2]=w;w=t+1|0;if((w|0)==(r|0))break a;s=c[g+(w<<3)+4>>2]|0;t=w}}while(0);x=p}else{if((o&-2|0)==2){q=c[20]|0;t=Sg[c[(c[q>>2]|0)+8>>2]&3](q,16,0,0,0)|0;c[t+4>>2]=254;c[t>>2]=18784;c[t+8>>2]=0;c[t+12>>2]=0;q=Bk(c[1494]|0,t)|0;c[g>>2]=19040;c[g+4>>2]=259;c[g+8>>2]=19304;c[g+12>>2]=319;c[g+16>>2]=19624;c[g+20>>2]=379;c[g+24>>2]=20008;c[g+28>>2]=439;c[g+32>>2]=20448;c[g+36>>2]=499;c[g+40>>2]=20952;c[g+44>>2]=559;c[g+48>>2]=21512;c[g+52>>2]=619;c[g+56>>2]=22136;c[g+60>>2]=679;t=a[120]|0;b:do if(t<<24>>24){s=t&255;r=259;w=0;while(1){u=c[g+(w<<3)>>2]|0;v=c[20]|0;y=Sg[c[(c[v>>2]|0)+8>>2]&3](v,16,0,0,0)|0;c[y+4>>2]=r;c[y>>2]=u;c[y+8>>2]=0;c[y+12>>2]=0;c[m+(w<<2)>>2]=y;y=w+1|0;if((y|0)==(s|0))break b;r=c[g+(y<<3)+4>>2]|0;w=y}}while(0);x=q;break}if((o+-5|0)>>>0<2){t=c[20]|0;p=Sg[c[(c[t>>2]|0)+8>>2]&3](t,16,0,0,0)|0;c[p+4>>2]=164;c[p>>2]=22816;c[p+8>>2]=0;c[p+12>>2]=0;t=Bk(c[1494]|0,p)|0;c[g>>2]=22984;c[g+4>>2]=128;c[g+8>>2]=23112;c[g+12>>2]=170;c[g+16>>2]=23288;c[g+20>>2]=210;c[g+24>>2]=23504;c[g+28>>2]=250;c[g+32>>2]=23760;c[g+36>>2]=290;c[g+40>>2]=24056;c[g+44>>2]=330;c[g+48>>2]=24392;c[g+52>>2]=370;c[g+56>>2]=24768;c[g+60>>2]=410;p=a[120]|0;c:do if(p<<24>>24){w=p&255;r=128;s=0;while(1){y=c[g+(s<<3)>>2]|0;u=c[20]|0;v=Sg[c[(c[u>>2]|0)+8>>2]&3](u,16,0,0,0)|0;c[v+4>>2]=r;c[v>>2]=y;c[v+8>>2]=0;c[v+12>>2]=0;c[m+(s<<2)>>2]=v;v=s+1|0;if((v|0)==(w|0))break c;r=c[g+(v<<3)+4>>2]|0;s=v}}while(0);x=t;break}if((o|0)!=4){c[j>>2]=o;Gh(3,31944,j);x=-1;break}p=c[20]|0;q=Sg[c[(c[p>>2]|0)+8>>2]&3](p,16,0,0,0)|0;c[q+4>>2]=500;c[q>>2]=25184;c[q+8>>2]=0;c[q+12>>2]=0;p=Bk(c[1494]|0,q)|0;c[g>>2]=25688;c[g+4>>2]=432;c[g+8>>2]=26120;c[g+12>>2]=543;c[g+16>>2]=26664;c[g+20>>2]=639;c[g+24>>2]=27304;c[g+28>>2]=735;c[g+32>>2]=28040;c[g+36>>2]=831;c[g+40>>2]=28872;c[g+44>>2]=927;c[g+48>>2]=29800;c[g+52>>2]=1023;c[g+56>>2]=30824;c[g+60>>2]=1119;q=a[120]|0;d:do if(q<<24>>24){s=q&255;r=432;w=0;while(1){v=c[g+(w<<3)>>2]|0;y=c[20]|0;u=Sg[c[(c[y>>2]|0)+8>>2]&3](y,16,0,0,0)|0;c[u+4>>2]=r;c[u>>2]=v;c[u+8>>2]=0;c[u+12>>2]=0;c[m+(w<<2)>>2]=u;u=w+1|0;if((u|0)==(s|0))break d;r=c[g+(u<<3)+4>>2]|0;w=u}}while(0);x=p}while(0);j=a[120]|0;e:do if(j<<24>>24){o=x&65535;q=j&255;if(x<<16>>16==-1){t=0;while(1){w=Bk(c[1494]|0,c[m+(t<<2)>>2]|0)|0;r=w<<16>>16==-1;if(r)z=-1;else{s=c[1494]|0;b[k>>1]=-1;b[l>>1]=w;b[h>>1]=b[k>>1]|0;b[g>>1]=b[l>>1]|0;z=Dk(s,h,g,0)|0}b[d+76+(t<<1)>>1]=z;s=c[1494]|0;if(!r){b[h>>1]=w;b[g>>1]=b[h>>1]|0;Fk(s,g)}t=t+1|0;if((t|0)==(q|0))break e}}else A=0;do{t=Bk(c[1494]|0,c[m+(A<<2)>>2]|0)|0;p=t<<16>>16==-1;s=c[1494]|0;if(p){w=s+19676692|0;r=b[w>>1]|0;u=b[s+19676694>>1]|0;if((r&65535)<(u&65535)?(b[w>>1]=r+1<<16>>16,v=w+4|0,w=b[v+((r&65535)<<1)>>1]|0,y=w&65535,b[v+(y+(u&65535)<<1)>>1]=r,w<<16>>16!=-1):0){r=s+19701556+(o<<4)+8|0;b[r>>1]=(b[r>>1]|0)+1<<16>>16;b[s+19709748+(y<<2)>>1]=x;b[s+19709748+(y<<2)+2>>1]=-1;y=c[s+18732228>>2]|0;r=y+18572948|0;a[(c[r>>2]|0)+(y+18572956)>>0]=10;u=(c[r>>2]|0)+2&-2;c[r>>2]=u;v=y+18572956+u|0;a[v>>0]=w;a[v+1>>0]=w>>8;v=(c[r>>2]|0)+3&-2;c[r>>2]=v;u=y+18572956+v|0;a[u>>0]=x;a[u+1>>0]=x>>8;u=(c[r>>2]|0)+3&-2;c[r>>2]=u;v=y+18572956+u|0;a[v>>0]=-1;a[v+1>>0]=-1>>8;c[r>>2]=(c[r>>2]|0)+2;B=w}else B=-1}else{b[k>>1]=x;b[l>>1]=t;b[h>>1]=b[k>>1]|0;b[g>>1]=b[l>>1]|0;B=Dk(s,h,g,0)|0}b[d+76+(A<<1)>>1]=B;s=c[1494]|0;if(!p){b[h>>1]=t;b[g>>1]=b[h>>1]|0;Fk(s,g)}A=A+1|0}while((A|0)!=(q|0))}while(0);A=c[1494]|0;if(x<<16>>16==-1)C=A;else{b[h>>1]=x;b[g>>1]=b[h>>1]|0;Fk(A,g);C=c[1494]|0}c[d>>2]=Ek(C,(e[d+8>>1]|0)<<2,n)|0;i=f;return}function Rh(e){e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=i;i=i+16|0;g=f+4|0;h=f+2|0;j=f;if(!(c[24]|0)){i=f;return}k=a[120]|0;if(k<<24>>24){l=k&255;k=0;do{m=e+76+(k<<1)|0;n=b[m>>1]|0;if(n<<16>>16!=-1){o=c[1494]|0;p=o+18732228|0;q=c[p>>2]|0;r=q+18638492|0;a[(c[r>>2]|0)+(q+18638500)>>0]=25;s=(c[r>>2]|0)+2&-2;c[r>>2]=s;t=q+18638500+s|0;a[t>>0]=n;a[t+1>>0]=n>>8;c[r>>2]=(c[r>>2]|0)+2;r=c[p>>2]|0;p=r+18704044|0;t=b[p>>1]|0;b[r+18721590+((t&65535)<<1)>>1]=n;b[p>>1]=t+1<<16>>16;t=n&65535;b[h>>1]=b[o+19709748+(t<<2)>>1]|0;b[g>>1]=b[h>>1]|0;Fk(o,g);n=b[o+19709748+(t<<2)+2>>1]|0;if(n<<16>>16!=-1){b[j>>1]=n;b[g>>1]=b[j>>1]|0;Fk(o,g)}b[m>>1]=-1}k=k+1|0}while((k|0)!=(l|0))}l=c[e>>2]|0;e=(c[1494]|0)+18732228|0;k=c[e>>2]|0;g=k+18638492|0;a[(c[g>>2]|0)+(k+18638500)>>0]=23;j=(c[g>>2]|0)+2&-2;c[g>>2]=j;h=k+18638500+j|0;j=l+14|0;k=d[j>>0]|d[j+1>>0]<<8;a[h>>0]=k;a[h+1>>0]=k>>8;c[g>>2]=(c[g>>2]|0)+2;g=c[e>>2]|0;e=g+18704040|0;k=b[e>>1]|0;b[g+18712374+((k&65535)<<1)>>1]=b[j>>1]|0;b[e>>1]=k+1<<16>>16;k=c[20]|0;Jg[c[(c[k>>2]|0)+12>>2]&31](k,l,0,0,0);i=f;return}function Sh(a){a=a|0;var b=0,c=0;if(Lo(a,31976)|0)if(Lo(a,31992)|0)if(Lo(a,32008)|0)if(Lo(a,32016)|0)if(Lo(a,32032)|0)if(Lo(a,32040)|0)if(Lo(a,32056)|0)if(Lo(a,32072)|0)if(Lo(a,32088)|0)if(Lo(a,32096)|0)if(!(Lo(a,32112)|0))b=10;else{c=(Lo(a,32128)|0)==0;return (c?11:12)|0}else b=9;else b=8;else b=7;else b=6;else b=5;else b=4;else b=3;else b=2;else b=1;else b=0;return b|0}function Th(f,g,h,i){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,v=0,w=0,x=0;j=f+18732168|0;if(a[j>>0]|0){a[j>>0]=0;j=f+14345624|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;c[j+20>>2]=0;c[j+24>>2]=0;c[f+14345652>>2]=-1;c[f+14345656>>2]=0;c[f+14345660>>2]=-1;c[f+14345664>>2]=0;b[f+14345668>>1]=0;b[f+14345670>>1]=1;b[f+14345672>>1]=0;b[f+14345674>>1]=-1;b[f+14345676>>1]=1;j=f+14345616|0;c[j>>2]=1;c[j+4>>2]=0;b[f+14345678>>1]=-1;j=f+14345682|0;b[f+14345488>>1]=-1;b[f+14345496>>1]=-1;b[f+14345504>>1]=-1;b[f+14345512>>1]=-1;b[f+14345520>>1]=-1;b[f+14345528>>1]=-1;b[f+14345536>>1]=-1;b[f+14345544>>1]=-1;b[f+14345552>>1]=-1;b[f+14345560>>1]=-1;b[f+14345568>>1]=-1;b[f+14345576>>1]=-1;b[f+14345584>>1]=-1;b[f+14345592>>1]=-1;b[f+14345600>>1]=-1;b[f+14345608>>1]=-1;b[j>>1]=65535;b[j+2>>1]=65535;b[j+4>>1]=65535;b[j+6>>1]=65535;b[j+8>>1]=65535;c[f+14345760>>2]=0;c[f+14345764>>2]=0;c[f+14345768>>2]=0;b[f+14345774>>1]=0;b[f+14345776>>1]=0;b[f+14345778>>1]=0;b[f+14345784>>1]=0;a[f+14345786>>0]=1;b[f+14345772>>1]=-1;b[f+14345780>>1]=0;b[f+14345782>>1]=-1;b[f+14345696>>1]=-1;b[f+14345704>>1]=-1;b[f+14345712>>1]=-1;b[f+14345720>>1]=-1;b[f+14345728>>1]=-1;b[f+14345736>>1]=-1;b[f+14345744>>1]=-1;b[f+14345752>>1]=-1;j=f+14345792|0;c[j>>2]=0;c[j+4>>2]=0;k=e[f+14345812>>1]|0;return k|0}j=f+14345812|0;l=b[j>>1]|0;do if((l&65535)<=65533){m=f+14345488|0;n=f+14345660|0;o=f+14345652|0;if((c[n>>2]|0)==0?(c[o>>2]|0)==0:0)break;p=f+14345804|0;c[p>>2]=c[(c[f+14345808>>2]|0)+4>>2];q=b[h>>1]|0;r=f+4|0;b[r>>1]=q<<16>>16==-1?0:q;c[f>>2]=i;a[f+8>>0]=g;q=g&255;s=c[1494]|0;t=s+19804624+(q<<1)|0;u=f+6|0;b[u>>1]=b[s+19805136+(q<<1)>>1]&b[t>>1];b[t>>1]=(b[t>>1]|0)+1<<16>>16;t=e[r>>1]|0;r=cp(d[f+9>>0]|0,0,41)|0;q=E;s=cp(e[u>>1]|0,0,43)|0;u=E;v=cp(g&255|0,0,55)|0;w=f+58640+(e[j>>1]<<3)|0;c[w>>2]=i|r|s|v;c[w+4>>2]=t|q|u|E|4194304;u=f+14345814|0;b[f+582928+(e[j>>1]<<1)>>1]=b[u>>1]|0;b[j>>1]=(b[j>>1]|0)+1<<16>>16;q=f+14345800|0;c[f+14345636>>2]=c[q>>2];c[f+14345640>>2]=c[p>>2];t=f+14345792|0;w=t;v=f+14345616|0;s=v;r=c[s+4>>2]|c[w+4>>2];x=v;c[x>>2]=c[s>>2]|c[w>>2];c[x+4>>2]=r;Wo(f+714e3+((e[u>>1]|0)*208|0)|0,m|0,208)|0;b[u>>1]=(b[u>>1]|0)+1<<16>>16;u=f+14345624|0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[u+16>>2]=0;c[u+20>>2]=0;c[u+24>>2]=0;c[o>>2]=-1;c[f+14345656>>2]=0;c[n>>2]=-1;c[f+14345664>>2]=0;b[f+14345668>>1]=0;b[f+14345670>>1]=1;b[f+14345672>>1]=0;b[f+14345674>>1]=-1;b[f+14345676>>1]=1;n=v;c[n>>2]=1;c[n+4>>2]=0;b[f+14345678>>1]=-1;n=f+14345682|0;b[m>>1]=-1;b[f+14345496>>1]=-1;b[f+14345504>>1]=-1;b[f+14345512>>1]=-1;b[f+14345520>>1]=-1;b[f+14345528>>1]=-1;b[f+14345536>>1]=-1;b[f+14345544>>1]=-1;b[f+14345552>>1]=-1;b[f+14345560>>1]=-1;b[f+14345568>>1]=-1;b[f+14345576>>1]=-1;b[f+14345584>>1]=-1;b[f+14345592>>1]=-1;b[f+14345600>>1]=-1;b[f+14345608>>1]=-1;b[n>>1]=65535;b[n+2>>1]=65535;b[n+4>>1]=65535;b[n+6>>1]=65535;b[n+8>>1]=65535;c[q>>2]=c[p>>2];p=t;c[p>>2]=0;c[p+4>>2]=0;k=e[j>>1]|0;return k|0}while(0);j=f+14345816|0;b[j>>1]=(b[j>>1]|0)+1<<16>>16;k=l&65535;return k|0}function Uh(a){a=a|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=a+14345812|0;f=b[e>>1]|0;if(!(f<<16>>16))g=0;else{h=f&65535;f=0;do{i=a+58640+(f<<3)|0;j=i;k=c[j>>2]|0;l=c[j+4>>2]|0;j=bp(k|0,l|0,55)|0;m=cp(d[(j&255)+(a+12)>>0]|0|0,0,55)|0;j=i;c[j>>2]=m|k;c[j+4>>2]=E|l&-2139095041;f=f+1|0}while((f|0)!=(h|0));g=b[e>>1]|0}e=c[1494]|0;Gk(a+58640|0,e+18732232|0,a+582928|0,e+19256512|0,g&65535);return}function Vh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=b+19805860|0;if((a[d>>0]|0)!=0?(a[b+19805862>>0]|0)==0:0){e=c[b+19805856>>2]|0;Ng[c[(c[e>>2]|0)+16>>2]&63](e,(c[b+18732224>>2]|0)+18731964|0)}e=b+18732224|0;$h(b,(c[e>>2]|0)+18572948|0);if(a[d>>0]|0){f=c[b+19805856>>2]|0;jh[c[(c[f>>2]|0)+144>>2]&63](f,c[e>>2]|0,b+19805764|0,b+19805676|0)}$h(b,(c[e>>2]|0)+18638492|0);if(!(a[d>>0]|0)){g=b+19805861|0;h=a[g>>0]|0;i=h<<24>>24!=0;return i|0}if(!(a[b+19805862>>0]|0)){g=b+19805861|0;h=a[g>>0]|0;i=h<<24>>24!=0;return i|0}d=c[b+19805856>>2]|0;Ng[c[(c[d>>2]|0)+16>>2]&63](d,(c[e>>2]|0)+18731964|0);g=b+19805861|0;h=a[g>>0]|0;i=h<<24>>24!=0;return i|0}function Wh(d,e,f,g,h){d=d|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;i=d+4|0;j=c[i>>2]|0;k=c[d>>2]|0;if((j+4|0)>>>0>>0){l=(f&65535)<<11|e<<27|(h&65535)<<1;h=d+8+j|0;a[h>>0]=l;a[h+1>>0]=l>>8;a[h+2>>0]=l>>16;a[h+3>>0]=l>>24;l=(c[i>>2]|0)+4|0;c[i>>2]=l;m=l;n=c[d>>2]|0}else{m=j;n=k}if((m+2|0)>>>0>=n>>>0)return;n=d+8+m|0;m=b[g>>1]|0;a[n>>0]=m;a[n+1>>0]=m>>8;c[i>>2]=(c[i>>2]|0)+2;return}function Xh(f,h){f=f|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,t=0,u=0,v=0,w=0,x=0;a[f+19805861>>0]=0;c[f+19805668>>2]=0;c[f+19805672>>2]=0;i=f+18732228|0;Hk(c[i>>2]|0);a[f+19805863>>0]=1;j=0;do{a[f+19745988+j>>0]=j;j=j+1|0}while((j|0)!=256);Xo(f+19746244|0,-1,512)|0;Xo(f+19746756|0,0,4096)|0;Xo(f+19751108|0,0,4096)|0;Xo(f+19804624|0,0,1024)|0;j=0;do{b[f+19751108+(j<<3)+4>>1]=1;b[f+19751108+(j<<3)+6>>1]=1;j=j+1|0}while((j|0)!=256);g[f+19750852>>2]=0.0;g[f+19750856>>2]=0.0;g[f+19750860>>2]=0.0;g[f+19750864>>2]=1.0;g[f+19750868>>2]=0.0;g[f+19750872>>2]=0.0;g[f+19750876>>2]=0.0;g[f+19750880>>2]=1.0;g[f+19750884>>2]=0.0;g[f+19750888>>2]=0.0;g[f+19750892>>2]=0.0;g[f+19750896>>2]=1.0;g[f+19750900>>2]=0.0;g[f+19750904>>2]=0.0;g[f+19750908>>2]=0.0;g[f+19750912>>2]=1.0;g[f+19750916>>2]=0.0;g[f+19750920>>2]=0.0;g[f+19750924>>2]=0.0;g[f+19750928>>2]=1.0;g[f+19750932>>2]=0.0;g[f+19750936>>2]=0.0;g[f+19750940>>2]=0.0;g[f+19750944>>2]=1.0;g[f+19750948>>2]=0.0;g[f+19750952>>2]=0.0;g[f+19750956>>2]=0.0;g[f+19750960>>2]=1.0;g[f+19750964>>2]=0.0;g[f+19750968>>2]=0.0;g[f+19750972>>2]=0.0;g[f+19750976>>2]=1.0;g[f+19750980>>2]=0.0;g[f+19750984>>2]=0.0;g[f+19750988>>2]=0.0;g[f+19750992>>2]=1.0;g[f+19750996>>2]=0.0;g[f+19751e3>>2]=0.0;g[f+19751004>>2]=0.0;g[f+19751008>>2]=1.0;g[f+19751012>>2]=0.0;g[f+19751016>>2]=0.0;g[f+19751020>>2]=0.0;g[f+19751024>>2]=1.0;g[f+19751028>>2]=0.0;g[f+19751032>>2]=0.0;g[f+19751036>>2]=0.0;g[f+19751040>>2]=1.0;g[f+19751044>>2]=0.0;g[f+19751048>>2]=0.0;g[f+19751052>>2]=0.0;g[f+19751056>>2]=1.0;g[f+19751060>>2]=0.0;g[f+19751064>>2]=0.0;g[f+19751068>>2]=0.0;g[f+19751072>>2]=1.0;g[f+19751076>>2]=0.0;g[f+19751080>>2]=0.0;g[f+19751084>>2]=0.0;g[f+19751088>>2]=1.0;g[f+19751092>>2]=0.0;g[f+19751096>>2]=0.0;g[f+19751100>>2]=0.0;g[f+19751104>>2]=1.0;j=f+19737668|0;k=j+128|0;do{b[j>>1]=0;j=j+2|0}while((j|0)<(k|0));Xo(f+19737796|0,-1,8192)|0;j=c[i>>2]|0;k=j+18572948|0;a[(c[k>>2]|0)+(j+18572956)>>0]=0;l=(c[k>>2]|0)+4&-4;c[k>>2]=l;m=j+18572956+l|0;a[m>>0]=h;a[m+1>>0]=h>>8;a[m+2>>0]=h>>16;a[m+3>>0]=h>>24;c[k>>2]=(c[k>>2]|0)+4;_h(f);_h(f);if(!(a[f+19805860>>0]|0)){k=c[i>>2]|0;h=k+18638492|0;a[(c[h>>2]|0)+(k+18638500)>>0]=18;c[h>>2]=(c[h>>2]|0)+1;_h(f);_h(f);h=f+19657992|0;k=f+19737652|0;m=c[c[f+19737656>>2]>>2]|0;if(m){l=h+4|0;j=f+19657994|0;n=m;m=b[h>>1]|0;while(1){o=b[n+4>>1]|0;p=e[j>>1]|0;q=b[l+(p+(o&65535)<<1)>>1]|0;r=m+-1<<16>>16;s=l+((r&65535)<<1)|0;t=b[s>>1]|0;b[s>>1]=o;b[l+((t&65535)+p<<1)>>1]=q;b[l+((q&65535)<<1)>>1]=t;n=c[n+8>>2]|0;if(!n){u=r;break}else m=r}b[h>>1]=u}Ik(k);k=c[i>>2]|0;u=c[20]|0;Jg[c[(c[u>>2]|0)+12>>2]&31](u,c[k+14345808>>2]|0,0,0,0);u=c[20]|0;h=c[k+18731960>>2]|0;if(!h){v=0;return v|0}Jg[c[(c[u>>2]|0)+12>>2]&31](u,c[h>>2]|0,0,0,0);Jg[c[(c[u>>2]|0)+12>>2]&31](u,h,0,0,0);v=0;return v|0}else{h=0;do{u=142+(c[32144+(h<<2)>>2]|0)|0;k=d[u>>0]|0;if(!(k&1))a[u>>0]=k|4;h=h+1|0}while((h|0)!=13);h=c[f+19805856>>2]|0;k=Pg[c[(c[h>>2]|0)+8>>2]&31](h)|0;c[24]=k;vh(k);Ih(f+19805676|0);Qh(f+19805764|0);k=Ek(f,6291456,0)|0;h=c[i>>2]|0;c[h+18572928>>2]=k;k=f+19641604|0;u=b[k>>1]|0;m=b[f+19641606>>1]|0;if((u&65535)<(m&65535)?(b[k>>1]=u+1<<16>>16,n=k+4|0,k=b[n+((u&65535)<<1)>>1]|0,b[n+((k&65535)+(m&65535)<<1)>>1]=u,k<<16>>16!=-1):0){u=h+18572948|0;a[(c[u>>2]|0)+(h+18572956)>>0]=5;m=(c[u>>2]|0)+2&-2;c[u>>2]=m;n=h+18572956+m|0;a[n>>0]=k;a[n+1>>0]=k>>8;n=(c[u>>2]|0)+5&-4;c[u>>2]=n;m=h+18572956+n|0;a[m>>0]=0;a[m+1>>0]=0;a[m+2>>0]=32;a[m+3>>0]=0;m=(c[u>>2]|0)+5&-2;c[u>>2]=m;n=h+18572956+m|0;a[n>>0]=0;a[n+1>>0]=0;c[u>>2]=(c[u>>2]|0)+2;u=c[20]|0;n=Sg[c[(c[u>>2]|0)+8>>2]&3](u,2097168,0,0,0)|0;c[n>>2]=n+16;c[n+4>>2]=2097152;b[n+12>>1]=k;w=c[i>>2]|0;x=n}else{w=h;x=0}c[w+18572924>>2]=x;_h(f);v=1;return v|0}return 0}function Yh(f){f=f|0;var g=0,h=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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,F=0;g=i;i=i+32|0;h=g+16|0;j=g+12|0;k=g+8|0;l=g+4|0;m=g;n=f+18732228|0;o=c[n>>2]|0;p=o+18572948|0;a[(c[p>>2]|0)+(o+18572956)>>0]=1;c[p>>2]=(c[p>>2]|0)+1;_h(f);p=c[n>>2]|0;o=c[p+18572928>>2]|0;q=p+18638492|0;a[(c[q>>2]|0)+(p+18638500)>>0]=23;r=(c[q>>2]|0)+2&-2;c[q>>2]=r;s=p+18638500+r|0;r=o+14|0;p=d[r>>0]|d[r+1>>0]<<8;a[s>>0]=p;a[s+1>>0]=p>>8;c[q>>2]=(c[q>>2]|0)+2;q=c[n>>2]|0;p=q+18704040|0;s=b[p>>1]|0;b[q+18712374+((s&65535)<<1)>>1]=b[r>>1]|0;b[p>>1]=s+1<<16>>16;s=c[20]|0;Jg[c[(c[s>>2]|0)+12>>2]&31](s,o,0,0,0);o=c[n>>2]|0;s=c[o+18572924>>2]|0;p=o+18638492|0;a[(c[p>>2]|0)+(o+18638500)>>0]=22;r=(c[p>>2]|0)+2&-2;c[p>>2]=r;q=o+18638500+r|0;r=s+12|0;o=d[r>>0]|d[r+1>>0]<<8;a[q>>0]=o;a[q+1>>0]=o>>8;c[p>>2]=(c[p>>2]|0)+2;p=c[n>>2]|0;o=p+18704036|0;q=b[o>>1]|0;b[p+18704054+((q&65535)<<1)>>1]=b[r>>1]|0;b[o>>1]=q+1<<16>>16;q=c[20]|0;Jg[c[(c[q>>2]|0)+12>>2]&31](q,s,0,0,0);Nh(f+19805676|0);Rh(f+19805764|0);_h(f);_h(f);s=c[n>>2]|0;q=s+18638492|0;a[(c[q>>2]|0)+(s+18638500)>>0]=18;c[q>>2]=(c[q>>2]|0)+1;_h(f);q=f+19625188|0;s=f+19625192|0;c[k>>2]=c[s>>2];c[l>>2]=q;o=f+19625196|0;r=c[o>>2]|0;c[j>>2]=c[k>>2];c[h>>2]=c[l>>2];Jk(j,h,r,m)|0;r=c[s>>2]|0;s=r;a:do if((r|0)!=(q|0)){p=s;t=s;u=r;while(1){v=t;w=v+8|0;x=v+16|0;v=p;y=u;while(1){z=w;A=c[x>>2]|0;B=Zo(A|0,0,c[z>>2]|0,c[z+4>>2]|0)|0;z=y+8|0;if(!((B|0)==(c[z>>2]|0)?(E|0)==(c[z+4>>2]|0):0)){C=v;break}c[x>>2]=(c[y+16>>2]|0)+A;A=y+4|0;y=c[A>>2]|0;z=v;v=y;B=c[z>>2]|0;c[B+4>>2]=v;c[c[A>>2]>>2]=B;c[o>>2]=(c[o>>2]|0)+-1;$n(z);if((y|0)==(q|0))break a}y=c[C+4>>2]|0;v=y;if((v|0)==(q|0))break;else{p=y;t=C;u=v}}}while(0);C=f+19608772|0;q=f+19608776|0;c[k>>2]=c[q>>2];c[l>>2]=C;o=f+19608780|0;r=c[o>>2]|0;c[j>>2]=c[k>>2];c[h>>2]=c[l>>2];Jk(j,h,r,m)|0;m=c[q>>2]|0;q=m;b:do if((m|0)!=(C|0)){r=q;h=q;j=m;while(1){l=h;k=l+8|0;s=l+16|0;l=j;u=r;while(1){t=k;p=c[s>>2]|0;v=Zo(p|0,0,c[t>>2]|0,c[t+4>>2]|0)|0;t=l+8|0;if(!((v|0)==(c[t>>2]|0)?(E|0)==(c[t+4>>2]|0):0)){D=u;break}c[s>>2]=(c[l+16>>2]|0)+p;p=l+4|0;l=c[p>>2]|0;t=u;u=l;v=c[t>>2]|0;c[v+4>>2]=u;c[c[p>>2]>>2]=v;c[o>>2]=(c[o>>2]|0)+-1;$n(t);if((l|0)==(C|0))break b}l=c[D+4>>2]|0;u=l;if((u|0)==(C|0))break;else{r=l;h=D;j=u}}}while(0);D=f+19657992|0;C=f+19737652|0;o=c[c[f+19737656>>2]>>2]|0;if(o){m=D+4|0;q=f+19657994|0;f=o;o=b[D>>1]|0;while(1){j=b[f+4>>1]|0;h=e[q>>1]|0;r=b[m+(h+(j&65535)<<1)>>1]|0;u=o+-1<<16>>16;l=m+((u&65535)<<1)|0;s=b[l>>1]|0;b[l>>1]=j;b[m+((s&65535)+h<<1)>>1]=r;b[m+((r&65535)<<1)>>1]=s;f=c[f+8>>2]|0;if(!f){F=u;break}else o=u}b[D>>1]=F}Ik(C);c[1494]=0;C=c[n>>2]|0;n=c[20]|0;Jg[c[(c[n>>2]|0)+12>>2]&31](n,c[C+14345808>>2]|0,0,0,0);n=c[20]|0;F=c[C+18731960>>2]|0;if(!F){i=g;return}Jg[c[(c[n>>2]|0)+12>>2]&31](n,c[F>>2]|0,0,0,0);Jg[c[(c[n>>2]|0)+12>>2]&31](n,F,0,0,0);i=g;return}function Zh(d,f){d=d|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;g=b[f+18704036>>1]|0;if(g<<16>>16){h=d+19641604|0;i=h+4|0;j=d+19641606|0;k=b[h>>1]|0;l=0;do{m=b[f+18704054+(l<<1)>>1]|0;n=e[j>>1]|0;o=b[i+(n+(m&65535)<<1)>>1]|0;k=k+-1<<16>>16;b[h>>1]=k;p=i+((k&65535)<<1)|0;q=b[p>>1]|0;b[p>>1]=m;b[i+((q&65535)+n<<1)>>1]=o;b[i+((o&65535)<<1)>>1]=q;l=l+1|0}while((l&65535)<<16>>16!=g<<16>>16)}g=b[f+18704038>>1]|0;if(g<<16>>16){l=d+19657992|0;i=l+4|0;k=d+19657994|0;h=b[l>>1]|0;j=0;do{q=b[f+18712246+(j<<1)>>1]|0;o=e[k>>1]|0;n=b[i+(o+(q&65535)<<1)>>1]|0;h=h+-1<<16>>16;b[l>>1]=h;m=i+((h&65535)<<1)|0;p=b[m>>1]|0;b[m>>1]=q;b[i+((p&65535)+o<<1)>>1]=n;b[i+((n&65535)<<1)>>1]=p;j=j+1|0}while((j&65535)<<16>>16!=g<<16>>16)}g=b[f+18704040>>1]|0;if(g<<16>>16){j=d+19658252|0;i=j+4|0;h=d+19658254|0;l=d+18732228|0;k=0;do{p=b[f+18712374+(k<<1)>>1]|0;n=p&65535;o=b[d+19737796+(n<<1)>>1]|0;if(o<<16>>16!=-1?(q=d+19737668+((o&65535)<<1)|0,m=(b[q>>1]|0)+-1<<16>>16,b[q>>1]=m,m<<16>>16==0):0){m=c[l>>2]|0;q=m+18638492|0;a[(c[q>>2]|0)+(m+18638500)>>0]=19;r=(c[q>>2]|0)+2&-2;c[q>>2]=r;s=m+18638500+r|0;a[s>>0]=o;a[s+1>>0]=o>>8;c[q>>2]=(c[q>>2]|0)+2}q=e[h>>1]|0;o=b[i+(q+n<<1)>>1]|0;n=(b[j>>1]|0)+-1<<16>>16;b[j>>1]=n;s=i+((n&65535)<<1)|0;n=b[s>>1]|0;b[s>>1]=p;b[i+((n&65535)+q<<1)>>1]=o;b[i+((o&65535)<<1)>>1]=n;k=k+1|0}while((k&65535)<<16>>16!=g<<16>>16)}g=b[f+18704042>>1]|0;if(g<<16>>16){k=d+19674640|0;i=k+4|0;j=d+19674642|0;h=b[k>>1]|0;l=0;do{n=b[f+18720566+(l<<1)>>1]|0;o=e[j>>1]|0;q=b[i+(o+(n&65535)<<1)>>1]|0;h=h+-1<<16>>16;b[k>>1]=h;p=i+((h&65535)<<1)|0;s=b[p>>1]|0;b[p>>1]=n;b[i+((s&65535)+o<<1)>>1]=q;b[i+((q&65535)<<1)>>1]=s;l=l+1|0}while((l&65535)<<16>>16!=g<<16>>16)}g=b[f+18704044>>1]|0;if(g<<16>>16){l=d+19676692|0;i=l+4|0;h=d+19676694|0;k=b[l>>1]|0;j=0;do{s=b[f+18721590+(j<<1)>>1]|0;q=e[h>>1]|0;o=b[i+(q+(s&65535)<<1)>>1]|0;k=k+-1<<16>>16;b[l>>1]=k;n=i+((k&65535)<<1)|0;p=b[n>>1]|0;b[n>>1]=s;b[i+((p&65535)+q<<1)>>1]=o;b[i+((o&65535)<<1)>>1]=p;j=j+1|0}while((j&65535)<<16>>16!=g<<16>>16)}g=b[f+18704046>>1]|0;if(g<<16>>16){j=d+19678744|0;i=j+4|0;k=d+19678746|0;l=b[j>>1]|0;h=0;do{p=b[f+18722614+(h<<1)>>1]|0;o=e[k>>1]|0;q=b[i+(o+(p&65535)<<1)>>1]|0;l=l+-1<<16>>16;b[j>>1]=l;s=i+((l&65535)<<1)|0;n=b[s>>1]|0;b[s>>1]=p;b[i+((n&65535)+o<<1)>>1]=q;b[i+((q&65535)<<1)>>1]=n;h=h+1|0}while((h&65535)<<16>>16!=g<<16>>16)}g=b[f+18704048>>1]|0;if(g<<16>>16){h=d+19695132|0;i=h+4|0;l=d+19695134|0;j=b[h>>1]|0;k=0;do{n=b[f+18730806+(k<<1)>>1]|0;q=e[l>>1]|0;o=b[i+(q+(n&65535)<<1)>>1]|0;j=j+-1<<16>>16;b[h>>1]=j;p=i+((j&65535)<<1)|0;s=b[p>>1]|0;b[p>>1]=n;b[i+((s&65535)+q<<1)>>1]=o;b[i+((o&65535)<<1)>>1]=s;k=k+1|0}while((k&65535)<<16>>16!=g<<16>>16)}g=b[f+18704050>>1]|0;if(!(g<<16>>16))return;k=d+19695392|0;i=k+4|0;j=d+19695394|0;d=b[k>>1]|0;h=0;do{l=b[f+18730934+(h<<1)>>1]|0;s=e[j>>1]|0;o=b[i+(s+(l&65535)<<1)>>1]|0;d=d+-1<<16>>16;b[k>>1]=d;q=i+((d&65535)<<1)|0;n=b[q>>1]|0;b[q>>1]=l;b[i+((n&65535)+s<<1)>>1]=o;b[i+((o&65535)<<1)>>1]=n;h=h+1|0}while((h&65535)<<16>>16!=g<<16>>16);return}function _h(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=i;i=i+16|0;g=f+4|0;h=f+2|0;j=f;k=d+19592384|0;l=b[k>>1]|0;if(l<<16>>16){m=0;do{b[h>>1]=b[d+19592388+(m<<1)>>1]|0;b[g>>1]=b[h>>1]|0;Kk(d,g);m=m+1|0}while((m&65535)<<16>>16!=l<<16>>16)}b[k>>1]=0;k=d+19592386|0;l=b[k>>1]|0;if(l<<16>>16){m=0;do{b[j>>1]=b[d+19600580+(m<<1)>>1]|0;b[g>>1]=b[j>>1]|0;Lk(d,g);m=m+1|0}while((m&65535)<<16>>16!=l<<16>>16)}b[k>>1]=0;k=d+18732228|0;l=(c[k>>2]|0)+18572932|0;m=d+19805652|0;c[l>>2]=c[m>>2];c[l+4>>2]=c[m+4>>2];c[l+8>>2]=c[m+8>>2];l=c[k>>2]|0;c[l+18572944>>2]=c[d+19805672>>2];Wo(l+12|0,d+19745988|0,256)|0;Wo((c[k>>2]|0)+268|0,d+19746244|0,512)|0;Wo((c[k>>2]|0)+780|0,d+19746756|0,4096)|0;Wo((c[k>>2]|0)+5132|0,d+19751108|0,2048)|0;Wo((c[k>>2]|0)+7180|0,d+19753156|0,2048)|0;Wo((c[k>>2]|0)+9232|0,d+19755216|0,16384)|0;Wo((c[k>>2]|0)+25616|0,d+19771600|0,32768)|0;Wo((c[k>>2]|0)+58384|0,d+19804368|0,256)|0;l=d+19805648|0;g=a[l>>0]|0;if(g<<24>>24){a[l>>0]=g+-1<<24>>24;Wo((c[k>>2]|0)+4876|0,d+19750852|0,256)|0}g=c[k>>2]|0;l=g+18572948|0;a[(c[l>>2]|0)+(g+18572956)>>0]=17;c[g+18572952>>2]=(c[l>>2]|0)+1;c[l>>2]=0;l=g+18638492|0;a[(c[l>>2]|0)+(g+18638500)>>0]=17;c[g+18638496>>2]=(c[l>>2]|0)+1;c[l>>2]=0;l=c[g+14345808>>2]|0;g=l+4|0;j=c[g>>2]|0;if((j+4|0)>>>0<(c[l>>2]|0)>>>0){h=l+8+j|0;a[h>>0]=1;a[h+1>>0]=0;a[h+2>>0]=0;a[h+3>>0]=0;c[g>>2]=(c[g>>2]|0)+4}c[g>>2]=0;g=d+18732224|0;h=c[g>>2]|0;c[g>>2]=c[k>>2];c[k>>2]=h;Vh(d)|0;h=d+19805668|0;c[h>>2]=(c[h>>2]|0)+1;h=c[k>>2]|0;j=h+14345792|0;l=h+14345624|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[l+20>>2]=0;c[l+24>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[h+14345652>>2]=-1;c[h+14345656>>2]=0;c[h+14345660>>2]=-1;c[h+14345664>>2]=0;b[h+14345668>>1]=0;b[h+14345670>>1]=1;b[h+14345672>>1]=0;b[h+14345674>>1]=-1;b[h+14345676>>1]=1;j=h+14345616|0;c[j>>2]=1;c[j+4>>2]=0;b[h+14345678>>1]=-1;j=h+14345682|0;b[h+14345488>>1]=-1;b[h+14345496>>1]=-1;b[h+14345504>>1]=-1;b[h+14345512>>1]=-1;b[h+14345520>>1]=-1;b[h+14345528>>1]=-1;b[h+14345536>>1]=-1;b[h+14345544>>1]=-1;b[h+14345552>>1]=-1;b[h+14345560>>1]=-1;b[h+14345568>>1]=-1;b[h+14345576>>1]=-1;b[h+14345584>>1]=-1;b[h+14345592>>1]=-1;b[h+14345600>>1]=-1;b[h+14345608>>1]=-1;b[j>>1]=65535;b[j+2>>1]=65535;b[j+4>>1]=65535;b[j+6>>1]=65535;b[j+8>>1]=65535;c[h+14345760>>2]=0;c[h+14345764>>2]=0;c[h+14345768>>2]=0;b[h+14345774>>1]=0;b[h+14345776>>1]=0;b[h+14345778>>1]=0;b[h+14345784>>1]=0;a[h+14345786>>0]=1;b[h+14345772>>1]=-1;b[h+14345780>>1]=0;b[h+14345782>>1]=-1;b[h+14345696>>1]=-1;b[h+14345704>>1]=-1;b[h+14345712>>1]=-1;b[h+14345720>>1]=-1;b[h+14345728>>1]=-1;b[h+14345736>>1]=-1;b[h+14345744>>1]=-1;b[h+14345752>>1]=-1;c[h+18540128>>2]=1;c[h+18572912>>2]=0;c[h>>2]=0;c[h+4>>2]=0;b[h+8>>1]=0;b[h+14345812>>1]=0;b[h+14345814>>1]=0;b[h+14345816>>1]=0;c[h+18572916>>2]=0;c[h+18572920>>2]=0;c[h+18572948>>2]=0;c[h+18572952>>2]=65536;c[h+18638492>>2]=0;c[h+18638496>>2]=65536;c[(c[h+14345808>>2]|0)+4>>2]=0;a[h+18732168>>0]=0;Xo(d+19804624|0,0,512)|0;Zh(d,c[k>>2]|0);h=(c[k>>2]|0)+18704036|0;b[h>>1]=0;b[h+2>>1]=0;b[h+4>>1]=0;b[h+6>>1]=0;b[h+8>>1]=0;b[h+10>>1]=0;b[h+12>>1]=0;b[h+14>>1]=0;h=c[(c[k>>2]|0)+18731960>>2]|0;k=a[(c[(c[g>>2]|0)+18731960>>2]|0)+12>>0]|0;g=(c[m>>2]|0)>>>3;m=(g|0)==0?1:g;g=(c[d+19805656>>2]|0)>>>(k<<24>>24!=0?3:4);d=(g|0)==0?1:g;g=c[h>>2]|0;j=h+8|0;if((((g|0)!=0?(e[j>>1]|0)==(m|0):0)?(e[h+10>>1]|0)==(d|0):0)?(a[h+12>>0]|0)==k<<24>>24:0){i=f;return}a[h+12>>0]=k;b[j>>1]=m;b[h+10>>1]=d;j=h+4|0;k=c[j>>2]|0;l=aa(d<<1&131070,m&65535)|0;c[j>>2]=l;m=c[20]|0;d=Og[c[(c[m>>2]|0)+16>>2]&3](m,g,l,0,0,0)|0;c[h>>2]=d;h=c[j>>2]|0;if(h>>>0<=k>>>0){i=f;return}Xo(d+k|0,0,h-k|0)|0;i=f;return}function $h(e,f){e=e|0;f=f|0;var g=0,h=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,x=0,y=0,z=0,A=0,B=0,C=0,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,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;g=i;i=i+176|0;h=g+168|0;j=g+24|0;k=g+166|0;l=g+164|0;m=g+162|0;n=g+160|0;o=g+158|0;p=g+156|0;q=g+154|0;r=g+152|0;s=g+150|0;t=g+148|0;u=g+146|0;v=g+144|0;w=g+142|0;x=g+140|0;y=g+138|0;z=g+136|0;A=g+134|0;B=g+132|0;C=g+130|0;D=g+128|0;F=g+126|0;G=g+20|0;H=g;I=g+124|0;J=g+122|0;K=g+120|0;L=g+104|0;M=g+102|0;N=g+100|0;O=g+98|0;P=g+96|0;c[f>>2]=0;Q=e+19805856|0;do if(!(c[Q>>2]|0)){R=a[f+8>>0]|0;c[f>>2]=1;S=R&255;if((S|0)==18){a[e+19805861>>0]=1;i=g;return}else if((S|0)==17){i=g;return}else{S=f+12|0;R=d[S>>0]|d[S+1>>0]<<8|d[S+2>>0]<<16|d[S+3>>0]<<24;c[f>>2]=8;if((R|0)==8)T=6;else U=R;while(1){if((T|0)==6){T=0;U=(a[32292]|0)==0?0:5}V=ch[c[32200+(U<<4)>>2]&15]()|0;if(V)break;a[32200+(U<<4)+12>>0]=0;T=6}c[8082]=c[32200+(U<<4)+4>>2];c[Q>>2]=V;R=e+19805860|0;a[R>>0]=1;W=R;break}}else W=e+19805860|0;while(0);V=e+19805888|0;U=H+16|0;a:while(1){R=c[f>>2]|0;S=a[f+8+R>>0]|0;X=R+1|0;c[f>>2]=X;do switch(S&255|0){case 22:{Y=R+2&-2;c[f>>2]=Y;Z=f+8+Y|0;_=d[Z>>0]|d[Z+1>>0]<<8;c[f>>2]=Y+2;Y=c[Q>>2]|0;Z=c[(c[Y>>2]|0)+52>>2]|0;b[u>>1]=_;b[h>>1]=b[u>>1]|0;Ng[Z&63](Y,h);continue a;break}case 1:{a[W>>0]=0;continue a;break}case 5:{Y=R+2&-2;c[f>>2]=Y;Z=f+8+Y|0;_=d[Z>>0]|d[Z+1>>0]<<8;Z=Y+5&-4;c[f>>2]=Z;Y=f+8+Z|0;$=d[Y>>0]|d[Y+1>>0]<<8|d[Y+2>>0]<<16|d[Y+3>>0]<<24;Y=Z+5&-4;c[f>>2]=Y;Z=f+8+Y|0;aa=d[Z>>0]|d[Z+1>>0]<<8;c[f>>2]=Y|2;Y=c[Q>>2]|0;Z=c[(c[Y>>2]|0)+44>>2]|0;b[s>>1]=_;b[h>>1]=b[s>>1]|0;jh[Z&63](Y,h,$,aa);continue a;break}case 6:{aa=R+2&-2;c[f>>2]=aa;$=f+8+aa|0;Y=d[$>>0]|d[$+1>>0]<<8;$=aa+5&-4;c[f>>2]=$;aa=f+8+$|0;Z=d[aa>>0]|d[aa+1>>0]<<8|d[aa+2>>0]<<16|d[aa+3>>0]<<24;aa=$+7&-4;c[f>>2]=aa;$=f+8+aa|0;_=d[$>>0]|d[$+1>>0]<<8|d[$+2>>0]<<16|d[$+3>>0]<<24;$=aa+7&-4;c[f>>2]=$;aa=f+8+$|0;ba=d[aa>>0]|d[aa+1>>0]<<8|d[aa+2>>0]<<16|d[aa+3>>0]<<24;c[f>>2]=$+4;$=c[Q>>2]|0;aa=c[(c[$>>2]|0)+48>>2]|0;b[t>>1]=Y;Y=ba;b[h>>1]=b[t>>1]|0;Jg[aa&31]($,h,Z,_,Y);_=c[Y>>2]|0;Z=Y+8|0;if((_|0)!=(Z|0)?($=c[Z>>2]|0,($|0)!=0):0)Ng[$&63](_,c[Y+12>>2]|0);Y=c[20]|0;Jg[c[(c[Y>>2]|0)+12>>2]&31](Y,ba,0,0,0);continue a;break}case 2:{ba=R+2&-2;c[f>>2]=ba;Y=f+8+ba|0;_=d[Y>>0]|d[Y+1>>0]<<8;c[f>>2]=ba+2;yh(j);ba=(c[f>>2]|0)+3&-4;c[f>>2]=ba;Y=j;$=f+8+ba|0;Z=Y+72|0;do{a[Y>>0]=a[$>>0]|0;Y=Y+1|0;$=$+1|0}while((Y|0)<(Z|0));c[f>>2]=ba+72;$=c[Q>>2]|0;Y=c[(c[$>>2]|0)+28>>2]|0;b[n>>1]=_;b[h>>1]=b[n>>1]|0;Xg[Y&63]($,h,j);continue a;break}case 20:{$=R+2&-2;c[f>>2]=$;Y=f+8+$|0;Z=d[Y>>0]|d[Y+1>>0]<<8;c[f>>2]=$+2;$=c[Q>>2]|0;Y=c[(c[$>>2]|0)+24>>2]|0;b[m>>1]=Z;b[h>>1]=b[m>>1]|0;Ng[Y&63]($,h);continue a;break}case 23:{$=R+2&-2;c[f>>2]=$;Y=f+8+$|0;Z=d[Y>>0]|d[Y+1>>0]<<8;c[f>>2]=$+2;$=c[Q>>2]|0;Y=c[(c[$>>2]|0)+64>>2]|0;b[x>>1]=Z;b[h>>1]=b[x>>1]|0;Ng[Y&63]($,h);continue a;break}case 7:{$=R+2&-2;c[f>>2]=$;Y=f+8+$|0;Z=d[Y>>0]|d[Y+1>>0]<<8;Y=$+5&-4;c[f>>2]=Y;$=f+8+Y|0;aa=d[$>>0]|d[$+1>>0]<<8|d[$+2>>0]<<16|d[$+3>>0]<<24;$=Y+5&-4;c[f>>2]=$;Y=f+8+$|0;ca=d[Y>>0]|d[Y+1>>0]<<8;c[f>>2]=$|2;$=c[Q>>2]|0;Y=c[(c[$>>2]|0)+56>>2]|0;b[v>>1]=Z;b[h>>1]=b[v>>1]|0;jh[Y&63]($,h,aa,ca);continue a;break}case 21:{ca=R+2&-2;c[f>>2]=ca;aa=f+8+ca|0;$=d[aa>>0]|d[aa+1>>0]<<8;c[f>>2]=ca+2;ca=c[Q>>2]|0;aa=c[(c[ca>>2]|0)+40>>2]|0;b[r>>1]=$;b[h>>1]=b[r>>1]|0;Ng[aa&63](ca,h);continue a;break}case 18:{T=13;break a;break}case 4:{ca=R+2&-2;c[f>>2]=ca;aa=f+8+ca|0;$=d[aa>>0]|d[aa+1>>0]<<8;aa=ca+5&-4;c[f>>2]=aa;ca=f+8+aa|0;Y=d[ca>>0]|d[ca+1>>0]<<8|d[ca+2>>0]<<16|d[ca+3>>0]<<24;ca=aa+5&-4;c[f>>2]=ca;aa=f+8+ca|0;Z=d[aa>>0]|d[aa+1>>0]<<8;aa=ca|2;c[f>>2]=aa;ca=f+8+aa|0;da=d[ca>>0]|d[ca+1>>0]<<8;c[f>>2]=aa+2;aa=c[Q>>2]|0;ca=c[(c[aa>>2]|0)+36>>2]|0;b[p>>1]=$;$=Y;b[q>>1]=Z;b[j>>1]=b[p>>1]|0;b[h>>1]=b[q>>1]|0;Jg[ca&31](aa,j,$,h,da);da=c[$>>2]|0;aa=$+8|0;if((da|0)!=(aa|0)?(ca=c[aa>>2]|0,(ca|0)!=0):0)Ng[ca&63](da,c[$+12>>2]|0);$=c[20]|0;Jg[c[(c[$>>2]|0)+12>>2]&31]($,Y,0,0,0);continue a;break}case 3:{Y=R+2&-2;c[f>>2]=Y;$=f+8+Y|0;da=d[$>>0]|d[$+1>>0]<<8;$=Y+5&-4;c[f>>2]=$;Y=f+8+$|0;ca=d[Y>>0]|d[Y+1>>0]<<8|d[Y+2>>0]<<16|d[Y+3>>0]<<24;Y=$+5&-4;c[f>>2]=Y;$=f+8+Y|0;aa=d[$>>0]|d[$+1>>0]<<8;c[f>>2]=Y|2;Y=c[Q>>2]|0;$=c[(c[Y>>2]|0)+20>>2]|0;b[l>>1]=da;da=ca;b[h>>1]=b[l>>1]|0;jh[$&63](Y,h,da,aa);aa=c[da>>2]|0;Y=da+8|0;if((aa|0)!=(Y|0)?($=c[Y>>2]|0,($|0)!=0):0)Ng[$&63](aa,c[da+12>>2]|0);da=c[20]|0;Jg[c[(c[da>>2]|0)+12>>2]&31](da,ca,0,0,0);continue a;break}case 19:{ca=R+2&-2;c[f>>2]=ca;da=f+8+ca|0;aa=d[da>>0]|d[da+1>>0]<<8;c[f>>2]=ca+2;ca=c[Q>>2]|0;da=c[(c[ca>>2]|0)+32>>2]|0;b[o>>1]=aa;b[h>>1]=b[o>>1]|0;Ng[da&63](ca,h);continue a;break}case 8:{ca=R+2&-2;c[f>>2]=ca;da=f+8+ca|0;aa=d[da>>0]|d[da+1>>0]<<8;da=ca+5&-4;c[f>>2]=da;ca=f+8+da|0;$=d[ca>>0]|d[ca+1>>0]<<8|d[ca+2>>0]<<16|d[ca+3>>0]<<24;ca=da+7&-4;c[f>>2]=ca;da=f+8+ca|0;Y=d[da>>0]|d[da+1>>0]<<8|d[da+2>>0]<<16|d[da+3>>0]<<24;da=ca+7&-4;c[f>>2]=da;ca=f+8+da|0;Z=d[ca>>0]|d[ca+1>>0]<<8|d[ca+2>>0]<<16|d[ca+3>>0]<<24;c[f>>2]=da+4;da=c[Q>>2]|0;ca=c[(c[da>>2]|0)+60>>2]|0;b[w>>1]=aa;aa=Z;b[h>>1]=b[w>>1]|0;Jg[ca&31](da,h,$,Y,aa);Y=c[aa>>2]|0;$=aa+8|0;if((Y|0)!=($|0)?(da=c[$>>2]|0,(da|0)!=0):0)Ng[da&63](Y,c[aa+12>>2]|0);aa=c[20]|0;Jg[c[(c[aa>>2]|0)+12>>2]&31](aa,Z,0,0,0);continue a;break}case 24:{Z=R+2&-2;c[f>>2]=Z;aa=f+8+Z|0;Y=d[aa>>0]|d[aa+1>>0]<<8;c[f>>2]=Z+2;Z=c[Q>>2]|0;aa=c[(c[Z>>2]|0)+72>>2]|0;b[z>>1]=Y;b[h>>1]=b[z>>1]|0;Ng[aa&63](Z,h);continue a;break}case 9:{Z=R+2&-2;c[f>>2]=Z;aa=f+8+Z|0;Y=d[aa>>0]|d[aa+1>>0]<<8;aa=Z+5&-4;c[f>>2]=aa;Z=f+8+aa|0;da=d[Z>>0]|d[Z+1>>0]<<8|d[Z+2>>0]<<16|d[Z+3>>0]<<24;c[f>>2]=aa+4;aa=c[Q>>2]|0;Z=c[(c[aa>>2]|0)+68>>2]|0;b[y>>1]=Y;Y=da;b[h>>1]=b[y>>1]|0;Xg[Z&63](aa,h,Y);aa=c[Y>>2]|0;Z=Y+8|0;if((aa|0)!=(Z|0)?($=c[Z>>2]|0,($|0)!=0):0)Ng[$&63](aa,c[Y+12>>2]|0);Y=c[20]|0;Jg[c[(c[Y>>2]|0)+12>>2]&31](Y,da,0,0,0);continue a;break}case 10:{da=R+2&-2;c[f>>2]=da;Y=f+8+da|0;aa=d[Y>>0]|d[Y+1>>0]<<8;Y=da+3&-2;c[f>>2]=Y;da=f+8+Y|0;$=d[da>>0]|d[da+1>>0]<<8;da=Y+3&-2;c[f>>2]=da;Y=f+8+da|0;Z=d[Y>>0]|d[Y+1>>0]<<8;c[f>>2]=da+2;da=c[Q>>2]|0;Y=c[(c[da>>2]|0)+76>>2]|0;b[A>>1]=aa;b[B>>1]=$;b[C>>1]=Z;b[k>>1]=b[A>>1]|0;b[j>>1]=b[B>>1]|0;b[h>>1]=b[C>>1]|0;jh[Y&63](da,k,j,h);continue a;break}case 25:{da=R+2&-2;c[f>>2]=da;Y=f+8+da|0;Z=d[Y>>0]|d[Y+1>>0]<<8;c[f>>2]=da+2;da=c[Q>>2]|0;Y=c[(c[da>>2]|0)+80>>2]|0;b[D>>1]=Z;b[h>>1]=b[D>>1]|0;Ng[Y&63](da,h);continue a;break}case 11:{da=R+2&-2;c[f>>2]=da;Y=f+8+da|0;Z=d[Y>>0]|d[Y+1>>0]<<8;Y=da+5&-4;c[f>>2]=Y;da=f+8+Y|0;$=d[da>>0]|d[da+1>>0]<<8|d[da+2>>0]<<16|d[da+3>>0]<<24;da=Y+7&-4;c[f>>2]=da;Y=f+8+da|0;aa=d[Y>>0]|d[Y+1>>0]<<8|d[Y+2>>0]<<16|d[Y+3>>0]<<24;Y=da+4|0;c[f>>2]=Y;ca=a[f+8+Y>>0]|0;c[f>>2]=da+5;da=c[Q>>2]|0;Y=c[(c[da>>2]|0)+84>>2]|0;b[F>>1]=Z;Z=$;b[h>>1]=b[F>>1]|0;Jg[Y&31](da,h,Z,aa,ca);ca=c[Z+4>>2]|0;aa=(ca|0)<0?2147483647:ca;da=aa>>>0<4?aa:4;aa=c[$>>2]|0;Wo(G|0,aa|0,da|0)|0;if((c[G>>2]|0)==5784916?(Y=Yo(ca|0,0,da|0,((da|0)<0)<<31>>31|0)|0,ca=E,ea=(ca|0)>0|(ca|0)==0&Y>>>0>2147483647?2147483647:Y,Wo(H|0,aa+da|0,(ea>>>0<20?ea:20)|0)|0,ea=c[U>>2]|0,(ea|0)!=0):0){da=c[ea>>2]|0;aa=ea+8|0;if((da|0)!=(aa|0)?(Y=c[aa>>2]|0,(Y|0)!=0):0)Ng[Y&63](da,c[ea+12>>2]|0);da=c[20]|0;Jg[c[(c[da>>2]|0)+12>>2]&31](da,ea,0,0,0)}ea=c[Z>>2]|0;da=Z+8|0;if((ea|0)!=(da|0)?(Y=c[da>>2]|0,(Y|0)!=0):0)Ng[Y&63](ea,c[Z+12>>2]|0);Z=c[20]|0;Jg[c[(c[Z>>2]|0)+12>>2]&31](Z,$,0,0,0);continue a;break}case 12:{$=c[V>>2]|0;if($>>>0>255){bi(e,f);fa=c[f>>2]|0;ga=c[V>>2]|0}else{fa=X;ga=$}$=fa+1&-2;c[f>>2]=$;Z=f+8+$|0;ea=d[Z>>0]|d[Z+1>>0]<<8;Z=$+2|0;c[f>>2]=Z;Y=a[f+8+Z>>0]|0;Z=$+3|0;c[f>>2]=Z;da=a[f+8+Z>>0]|0;c[f>>2]=(((($+13&-2)+3&-2)+3&-2)+3&-2)+7&-4;c[V>>2]=ga+1;c[e+19805892+(ga<<2)>>2]=(Y&255)<<8|(ea&65535)<<16|da&255;c[e+19806916+(ga<<2)>>2]=fa;continue a;break}case 27:{da=R+2&-2;c[f>>2]=da;ea=f+8+da|0;Y=d[ea>>0]|d[ea+1>>0]<<8;c[f>>2]=da+2;da=c[Q>>2]|0;ea=c[(c[da>>2]|0)+116>>2]|0;b[N>>1]=Y;b[h>>1]=b[N>>1]|0;Ng[ea&63](da,h);continue a;break}case 13:{da=R+2&-2;c[f>>2]=da;ea=f+8+da|0;Y=d[ea>>0]|d[ea+1>>0]<<8;ea=da+3&-2;c[f>>2]=ea;da=f+8+ea|0;$=d[da>>0]|d[da+1>>0]<<8;da=ea+3&-2;c[f>>2]=da;ea=f+8+da|0;Z=d[ea>>0]|d[ea+1>>0]<<8;c[f>>2]=da+2;da=c[Q>>2]|0;ea=c[(c[da>>2]|0)+100>>2]|0;b[I>>1]=Y;b[h>>1]=b[I>>1]|0;jh[ea&63](da,h,$,Z);continue a;break}case 26:{Z=R+2&-2;c[f>>2]=Z;$=f+8+Z|0;da=d[$>>0]|d[$+1>>0]<<8;c[f>>2]=Z+2;Z=c[Q>>2]|0;$=c[(c[Z>>2]|0)+104>>2]|0;b[J>>1]=da;b[h>>1]=b[J>>1]|0;Ng[$&63](Z,h);continue a;break}case 14:{Z=R+2&-2;c[f>>2]=Z;$=f+8+Z|0;da=d[$>>0]|d[$+1>>0]<<8;$=Z+2|0;c[f>>2]=$;ea=a[f+8+$>>0]|0;$=Z+3|0;c[f>>2]=$;if(ea<<24>>24){ea=Z+6&-4;c[f>>2]=ea;Y=f+8+ea|0;aa=d[Y>>0]|d[Y+1>>0]<<8|d[Y+2>>0]<<16|d[Y+3>>0]<<24;Y=ea+5&-4;c[f>>2]=Y;ea=f+8+Y|0;ca=d[ea>>0]|d[ea+1>>0]<<8;ea=Y|2;c[f>>2]=ea;Y=f+8+ea|0;ha=d[Y>>0]|d[Y+1>>0]<<8;Y=ea+5&-4;c[f>>2]=Y;ea=f+8+Y|0;ia=d[ea>>0]|d[ea+1>>0]<<8|d[ea+2>>0]<<16|d[ea+3>>0]<<24;c[f>>2]=Y+4;Y=c[Q>>2]|0;ea=c[(c[Y>>2]|0)+112>>2]|0;b[K>>1]=da;b[h>>1]=b[K>>1]|0;Wg[ea&7](Y,h,aa,ca&65535,ha&65535,ia);continue a}ia=a[f+8+$>>0]|0;$=Z+4|0;c[f>>2]=$;if(ia<<24>>24){Z=ia&255;ha=$;$=0;do{ca=ha+1&-2;c[f>>2]=ca;aa=f+8+ca|0;b[L+($<<1)>>1]=d[aa>>0]|d[aa+1>>0]<<8;ha=ca+2|0;c[f>>2]=ha;$=$+1|0}while(($|0)!=(Z|0))}Z=c[Q>>2]|0;$=c[(c[Z>>2]|0)+108>>2]|0;b[M>>1]=da;b[h>>1]=b[M>>1]|0;jh[$&63](Z,h,ia,L);continue a;break}case 15:{Z=R+2&-2;c[f>>2]=Z;$=f+8+Z|0;ha=d[$>>0]|d[$+1>>0]<<8;$=Z+5&-4;c[f>>2]=$;Z=f+8+$|0;_=d[Z>>0]|d[Z+1>>0]<<8|d[Z+2>>0]<<16|d[Z+3>>0]<<24;Z=$+5|0;$=Z&-4;c[f>>2]=$;ba=f+8+$|0;ca=d[ba>>0]|d[ba+1>>0]<<8;ba=$|2;c[f>>2]=ba;$=Z|3;c[f>>2]=(d[f+8+ba>>0]|0)+$;ba=c[Q>>2]|0;Z=c[(c[ba>>2]|0)+120>>2]|0;b[O>>1]=ha;b[h>>1]=b[O>>1]|0;Jg[Z&31](ba,h,_,ca,f+8+$|0);continue a;break}case 28:{$=R+2&-2;c[f>>2]=$;ca=f+8+$|0;_=d[ca>>0]|d[ca+1>>0]<<8;c[f>>2]=$+2;$=c[Q>>2]|0;ca=c[(c[$>>2]|0)+124>>2]|0;b[P>>1]=_;b[h>>1]=b[P>>1]|0;Ng[ca&63]($,h);continue a;break}case 29:{$=R+2&-2;c[f>>2]=$;ca=f+8+$|0;_=$+2|0;c[f>>2]=((d[ca>>0]|d[ca+1>>0]<<8)&65535)+_;ca=c[Q>>2]|0;Ng[c[(c[ca>>2]|0)+128>>2]&63](ca,f+8+_|0);continue a;break}case 16:{_=a[f+8+X>>0]|0;ca=R+3&-2;c[f>>2]=ca;$=f+8+ca|0;ba=ca+2|0;c[f>>2]=((d[$>>0]|d[$+1>>0]<<8)&65535)+ba;$=c[Q>>2]|0;Xg[c[(c[$>>2]|0)+132>>2]&63]($,_,f+8+ba|0);continue a;break}case 17:{break a;break}default:continue a}while(0)}if((T|0)==13){hh[c[32328>>2]&15]();c[Q>>2]=0;a[e+19805861>>0]=1}bi(e,f);i=g;return}function ai(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;g=b+4|0;c[g>>2]=e;if(e>>>0>=f>>>0)return;h=e;while(1){e=b+8+h|0;i=h+4|0;c[g>>2]=i;j=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if((j|0)==1){k=10;break}e=j>>>11&65535;l=aa(c[216+(j>>>27<<2)>>2]|0,j>>>1&1023)|0;m=b+8+i|0;c[g>>2]=l+i;do if(j>>>0<671088640){i=c[(c[a>>2]|0)+136>>2]|0;if(!(j&1)){jh[i&63](a,e,c[m>>2]|0,l);break}else{jh[i&63](a,e,m,l);break}}else Xg[c[(c[a>>2]|0)+140>>2]&63](a,m,l);while(0);h=c[g>>2]|0;if(h>>>0>=f>>>0){k=10;break}}if((k|0)==10)return}function bi(e,f){e=e|0;f=f|0;var g=0,h=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,x=0,y=0,z=0,A=0,B=0,C=0,D=0;g=i;i=i+16|0;h=g+12|0;j=g;k=g+10|0;l=g+8|0;m=e+19805888|0;if(!(Nk(m)|0)){i=g;return}n=c[f>>2]|0;o=c[m>>2]|0;if(o){p=e+19805856|0;q=-1;r=0;while(1){s=(c[e+19806916+(r<<2)>>2]|0)+1&-2;c[f>>2]=s;t=f+8+s|0;u=d[t>>0]|d[t+1>>0]<<8;t=s+2|0;c[f>>2]=t;v=a[f+8+t>>0]|0;t=s+3|0;c[f>>2]=t;w=a[f+8+t>>0]|0;t=s+5&-2;c[f>>2]=t;s=f+8+t|0;x=s;y=s+4|0;s=d[y>>0]|d[y+1>>0]<<8|d[y+2>>0]<<16|d[y+3>>0]<<24;y=j;c[y>>2]=d[x>>0]|d[x+1>>0]<<8|d[x+2>>0]<<16|d[x+3>>0]<<24;c[y+4>>2]=s;s=t+9&-2;c[f>>2]=s;t=f+8+s|0;y=d[t>>0]|d[t+1>>0]<<8;t=s+3&-2;c[f>>2]=t;s=f+8+t|0;x=d[s>>0]|d[s+1>>0]<<8;s=t+3&-2;c[f>>2]=s;t=f+8+s|0;z=d[t>>0]|d[t+1>>0]<<8;t=s+5&-4;c[f>>2]=t;s=f+8+t|0;A=d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24;c[f>>2]=t+4;t=c[e+19805892+(r<<2)>>2]|0;if((t|0)==(q|0))B=q;else{if((q|0)!=-1){s=c[p>>2]|0;Mg[c[(c[s>>2]|0)+96>>2]&63](s)}s=c[p>>2]|0;C=c[(c[s>>2]|0)+88>>2]|0;b[k>>1]=u;b[h>>1]=b[k>>1]|0;jh[C&63](s,h,v,w);B=t}t=c[p>>2]|0;s=c[(c[t>>2]|0)+92>>2]|0;b[l>>1]=u;u=A;b[h>>1]=b[l>>1]|0;$g[s&7](t,h,v,w,j,y,x,z,u);z=c[u>>2]|0;x=u+8|0;if((z|0)!=(x|0)?(y=c[x>>2]|0,(y|0)!=0):0)Ng[y&63](z,c[u+12>>2]|0);u=c[20]|0;Jg[c[(c[u>>2]|0)+12>>2]&31](u,A,0,0,0);r=r+1|0;if((r|0)==(o|0)){D=B;break}else q=B}if((D|0)!=-1){D=c[e+19805856>>2]|0;Mg[c[(c[D>>2]|0)+96>>2]&63](D)}}c[m>>2]=0;c[f>>2]=n;i=g;return}function ci(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;d=a+8|0;if((b|0)!=(d|0)?(e=c[d>>2]|0,(e|0)!=0):0)Ng[e&63](b,c[a+12>>2]|0);b=c[20]|0;Jg[c[(c[b>>2]|0)+12>>2]&31](b,a,0,0,0);return}function di(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=96;j=i+96|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));b[59]=256;c[28]=65535;a[120]=1;b[61]=e;b[62]=f;if(!h){f=Po(4)|0;c[f>>2]=32344;c[8092]=f;c[20]=f;k=f}else{c[20]=h;k=h}if(!g){h=Sg[c[(c[k>>2]|0)+8>>2]&3](k,4,0,0,0)|0;c[h>>2]=32384;c[8108]=h;c[22]=h;l=c[20]|0}else{c[22]=g;l=k}k=Sg[c[(c[l>>2]|0)+8>>2]&3](l,19808e3,16,0,0)|0;Ok(k);c[1494]=k;if(Xh(k,d)|0){m=1;return m|0}d=c[20]|0;k=c[1494]|0;if(k){Ik(k+19737652|0);l=c[k+19737656>>2]|0;if(l){g=c[20]|0;Jg[c[(c[g>>2]|0)+12>>2]&31](g,l,0,0,0)}Pk(k+19697444|0);l=c[k+19697448>>2]|0;if(l){g=c[20]|0;Jg[c[(c[g>>2]|0)+12>>2]&31](g,l,0,0,0)}Qk(k+19625188|0);Qk(k+19608772|0);Jg[c[(c[d>>2]|0)+12>>2]&31](d,k,16,0,0)}c[1494]=0;k=c[8108]|0;if(k){d=c[20]|0;Mg[c[c[k>>2]>>2]&63](k);Jg[c[(c[d>>2]|0)+12>>2]&31](d,k,0,0,0);c[8108]=0}k=c[8092]|0;if(k){Mg[c[c[k>>2]>>2]&63](k);Qo(k);c[8092]=0}c[22]=0;c[20]=0;m=0;return m|0}function ei(){var a=0,b=0,d=0,e=0;a=c[1494]|0;Yh(a);b=c[20]|0;if(a){Ik(a+19737652|0);d=c[a+19737656>>2]|0;if(d){e=c[20]|0;Jg[c[(c[e>>2]|0)+12>>2]&31](e,d,0,0,0)}Pk(a+19697444|0);d=c[a+19697448>>2]|0;if(d){e=c[20]|0;Jg[c[(c[e>>2]|0)+12>>2]&31](e,d,0,0,0)}Qk(a+19625188|0);Qk(a+19608772|0);Jg[c[(c[b>>2]|0)+12>>2]&31](b,a,16,0,0)}a=c[8108]|0;if(a){b=c[20]|0;Mg[c[c[a>>2]>>2]&63](a);Jg[c[(c[b>>2]|0)+12>>2]&31](b,a,0,0,0);c[8108]=0}a=c[8092]|0;if(!a){c[22]=0;c[20]=0;return}Mg[c[c[a>>2]>>2]&63](a);Qo(a);c[8092]=0;c[22]=0;c[20]=0;return}function fi(a,b,d){a=a|0;b=b|0;d=d|0;Rk(c[1494]|0,a,b,d);return}function gi(){var a=0;a=c[1494]|0;_h(a);return c[a+19805668>>2]|0}function hi(){var b=0;b=c[(c[1494]|0)+18732228>>2]|0;return ((a[b+18732144>>0]|0)==0?0:b+18731964|0)|0}function ii(){return c[24]|0}function ji(a){a=a|0;c[(c[1494]|0)+19805672>>2]=a;return}function ki(a,b){a=a|0;b=b|0;Sk(c[1494]|0,a,b);return}function li(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;g=i;i=i+16|0;h=g;c[h>>2]=f;Tk(c[(c[(c[1494]|0)+18732228>>2]|0)+18731960>>2]|0,a,b,d,e,h);i=g;return}function mi(a,b,d){a=a|0;b=b|0;d=d|0;Uk(c[1494]|0,a,b,d);return}function ni(e,f,g,h,i,j,k){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;l=Ai(k)|0;m=a[l>>0]|0;n=d[l+1>>0]|0;o=aa(d[l+4>>0]|0,n)|0;p=o&65535;q=(f&65535)+-1+n|0;f=q-((q|0)%(n|0)|0)&65535;q=(p&65535)<(f&65535)?f:p;p=d[l+2>>0]|0;f=aa(d[l+5>>0]|0,p)|0;l=f&65535;r=(g&65535)+-1+p|0;g=r-((r|0)%(p|0)|0)&65535;r=(l&65535)<(g&65535)?g:l;l=(h&65535)>1?h:1;h=j&255;j=(h&65535)>1?h:1;h=j&255;g=i?6:1;if(!(j<<16>>16)){s=0;c[e>>2]=k;t=e+8|0;b[t>>1]=q;u=e+10|0;b[u>>1]=r;v=e+12|0;b[v>>1]=l;w=e+14|0;a[w>>0]=h;x=e+16|0;y=i&1;a[x>>0]=y;z=e+4|0;c[z>>2]=s;A=e+15|0;a[A>>0]=m;return}B=n+-1|0;C=p+-1|0;D=m&255;E=j&65535;j=l&65535;F=r&65535;G=0;H=0;I=q&65535;while(1){J=B+I|0;K=J-((J>>>0)%(n>>>0)|0)|0;J=o>>>0>K>>>0?o:K;K=C+F|0;L=K-((K>>>0)%(p>>>0)|0)|0;K=f>>>0>L>>>0?f:L;L=(j|0)==0?1:j;M=(aa((aa(aa(aa(L,D)|0,J)|0,K)|0)>>>3,g)|0)+H|0;G=G+1|0;if((G|0)==(E|0)){s=M;break}else{j=L>>>1;F=K>>>1;H=M;I=J>>>1}}c[e>>2]=k;t=e+8|0;b[t>>1]=q;u=e+10|0;b[u>>1]=r;v=e+12|0;b[v>>1]=l;w=e+14|0;a[w>>0]=h;x=e+16|0;y=i&1;a[x>>0]=y;z=e+4|0;c[z>>2]=s;A=e+15|0;a[A>>0]=m;return}function oi(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=c[1494]|0;i=a&255;b[h+19751108+(i<<3)>>1]=d;b[h+19751108+(i<<3)+2>>1]=e;b[h+19751108+(i<<3)+4>>1]=f<<16>>16==0?1:f;b[h+19751108+(i<<3)+6>>1]=g<<16>>16==0?1:g;return}function pi(d,e,f,h,i){d=d|0;e=e|0;f=f|0;h=+h;i=i|0;var j=0,k=0;j=c[1494]|0;k=d&255;b[j+19746756+(k<<4)+14>>1]=e;a[j+19746756+(k<<4)>>0]=f>>>24;a[j+19746756+(k<<4)+1>>0]=f>>>16;a[j+19746756+(k<<4)+2>>0]=f>>>8;a[j+19746756+(k<<4)+3>>0]=f;g[j+19746756+(k<<4)+8>>2]=h;a[j+19746756+(k<<4)+12>>0]=i;return}function qi(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=c[1494]|0;j=b&255;a[i+19804368+j>>0]=f;f=i+19755216+(j<<6)|0;if(!d){k=f;l=k+60|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));g[i+19755216+(j<<6)+60>>2]=1.0;g[i+19755216+(j<<6)+40>>2]=1.0;g[i+19755216+(j<<6)+20>>2]=1.0;g[f>>2]=1.0}else{k=f;m=d;l=k+64|0;do{a[k>>0]=a[m>>0]|0;k=k+1|0;m=m+1|0}while((k|0)<(l|0))}d=i+19771600+(j<<6)|0;if(!e){k=d;l=k+60|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));g[i+19771600+(j<<6)+60>>2]=1.0;g[i+19771600+(j<<6)+40>>2]=1.0;g[i+19771600+(j<<6)+20>>2]=1.0;g[d>>2]=1.0}else{k=d;m=e;l=k+64|0;do{a[k>>0]=a[m>>0]|0;k=k+1|0;m=m+1|0}while((k|0)<(l|0))}e=i+19787984+(j<<6)|0;if(!h){k=e;m=d;l=k+64|0;do{c[k>>2]=c[m>>2];k=k+4|0;m=m+4|0}while((k|0)<(l|0));return}else{k=e;m=h;l=k+64|0;do{a[k>>0]=a[m>>0]|0;k=k+1|0;m=m+1|0}while((k|0)<(l|0));return}}function ri(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[(c[1494]|0)+18732228>>2]|0;g=bp(b|0,d|0,12)|0;a[f+9>>0]=a[32440+(((g&255)<<24>>24!=0&1)+(g&15))>>0]|0;g=f+14345616|0;c[g>>2]=b;c[g+4>>2]=d;c[f+14345632>>2]=e;return}function si(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=c[(c[1494]|0)+18732228>>2]|0;if(!a)f=0;else{g=d&65535;h=e+18540128|0;i=c[h>>2]|0;j=65536-i|0;k=g>>>0>j>>>0?j:g;c[h>>2]=k+i;Wo(e+14345824+(i<<6)|0,a|0,k<<6&4194240|0)|0;f=i}c[e+14345644>>2]=f;b[e+14345676>>1]=d;return f|0}function ti(a,d,f){a=a|0;d=d|0;f=f|0;var g=0;g=c[(c[1494]|0)+18732228>>2]|0;c[g+14345656>>2]=(c[a+8>>2]|0)+d;d=((c[a+4>>2]|0)>>>0)/((e[a+12>>1]|0)>>>0)|0;c[g+14345660>>2]=d>>>0>f>>>0?f:d;b[g+14345682>>1]=b[a+14>>1]|0;b[g+14345684>>1]=b[a+16>>1]|0;return}function ui(a){a=a|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+2|0;f=d;g=c[(c[1494]|0)+18732228>>2]|0;b[f>>1]=-1;b[e>>1]=b[f>>1]|0;f=Th(g,a,e,0)|0;i=d;return f|0}function vi(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+2|0;h=f;j=c[(c[1494]|0)+18732228>>2]|0;b[h>>1]=b[d>>1]|0;b[g>>1]=b[h>>1]|0;h=Th(j,a,g,e)|0;i=f;return h|0}function wi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=c[(c[1494]|0)+18732228>>2]|0;e=d+18638492|0;a[(c[e>>2]|0)+(d+18638500)>>0]=29;f=c[e>>2]|0;c[e>>2]=f+1;g=(Vo(b|0)|0)+1|0;h=g&65535;i=f+2&-2;c[e>>2]=i;f=d+18638500+i|0;a[f>>0]=h;a[f+1>>0]=h>>8;h=(c[e>>2]|0)+2|0;c[e>>2]=h;f=g&65535;Wo(d+18638500+h|0,b|0,f|0)|0;c[e>>2]=(c[e>>2]|0)+f;return}function xi(a){a=a|0;return (a|0)<17|0}function yi(a){a=a|0;return (a+-41|0)>>>0<8|0}function zi(b){b=b|0;return a[32464+(b<<3)>>0]|0}function Ai(a){a=a|0;return 32464+(a<<3)|0}function Bi(b,d,e,f,g){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,p=0,q=0,r=0,s=0,t=0,u=0;if((!(b>>>0<4|(b&3|0)!=0)?(f&15|0)==0:0)?(g&15|0)==0:0){h=b>>>2;if(!d)return;i=(h|0)==0;j=h<<4;k=f;l=g;m=0;while(1){if(i)n=l;else{o=l;p=k;q=0;while(1){r=c[p>>2]|0;s=c[p+4>>2]|0;t=c[p+8>>2]|0;u=c[p+12>>2]|0;c[o>>2]=(r<<16|r>>>16)&16711935|r&-16711936;c[o+4>>2]=(s<<16|s>>>16)&16711935|s&-16711936;c[o+8>>2]=(t<<16|t>>>16)&16711935|t&-16711936;c[o+12>>2]=(u<<16|u>>>16)&16711935|u&-16711936;q=q+1|0;if((q|0)==(h|0))break;else{o=o+16|0;p=p+16|0}}n=l+j|0}k=k+e|0;m=m+1|0;if((m|0)==(d|0))break;else l=n}return}if((b|0)==0|(d|0)==0)return;n=b<<2;l=f;f=g;g=0;while(1){m=f;k=l;j=0;while(1){h=a[k>>0]|0;i=a[k+1>>0]|0;p=a[k+3>>0]|0;a[m>>0]=a[k+2>>0]|0;a[m+1>>0]=i;a[m+2>>0]=h;a[m+3>>0]=p;j=j+1|0;if((j|0)==(b|0))break;else{m=m+4|0;k=k+4|0}}g=g+1|0;if((g|0)==(d|0))break;else{l=l+e|0;f=f+n|0}}return}function Ci(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=(aa(c,a)|0)>>>3;a=g>>>0 >>0?g:d;if(!b)return;else{h=f;i=e;j=0}while(1){Wo(h|0,i|0,a|0)|0;j=j+1|0;if((j|0)==(b|0))break;else{h=h+g|0;i=i+d|0}}return}function Di(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+32|0;l=k;m=h?3:2;n=h?8:32;h=l;o=h+17|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(o|0));a[l+2>>0]=m;a[l+12>>0]=d;a[l+13>>0]=d>>>8;a[l+14>>0]=e;a[l+15>>0]=e>>>8;a[l+16>>0]=n;a[l+17>>0]=32;Ug[c[(c[b>>2]|0)+8>>2]&15](b,l,18)|0;l=(aa(n&255,d)|0)>>>3;if(j){j=0-f|0;if(!e){i=k;return}d=g+((aa(f,e)|0)-f)|0;n=0;while(1){Ug[c[(c[b>>2]|0)+8>>2]&15](b,d,l)|0;n=n+1|0;if((n|0)==(e|0))break;else d=d+j|0}i=k;return}if((l|0)==(f|0)){j=aa(f,e)|0;Ug[c[(c[b>>2]|0)+8>>2]&15](b,g,j)|0;i=k;return}if(!e){i=k;return}else{p=g;q=0}while(1){Ug[c[(c[b>>2]|0)+8>>2]&15](b,p,l)|0;q=q+1|0;if((q|0)==(e|0))break;else p=p+f|0}i=k;return}function Ei(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+16|0;f=e;g=d[c>>0]|0;h=d[c+1>>0]|0;j=((g&31)*255|0)+31|0;k=((j>>>5)+j|0)>>>5;a[f>>0]=k;j=(((h<<8|g)>>>5&63)*255|0)+63|0;g=((j>>>6)+j|0)>>>6;a[f+1>>0]=g;j=((h>>>3)*255|0)+31|0;h=((j>>>5)+j|0)>>>5;a[f+2>>0]=h;j=d[c+2>>0]|0;l=d[c+3>>0]|0;m=((j&31)*255|0)+31|0;n=((m>>>5)+m|0)>>>5;a[f+3>>0]=n;m=(((l<<8|j)>>>5&63)*255|0)+63|0;j=((m>>>6)+m|0)>>>6;a[f+4>>0]=j;m=((l>>>3)*255|0)+31|0;l=((m>>>5)+m|0)>>>5;a[f+5>>0]=l;m=k&255;k=n&255;a[f+6>>0]=(((m<<1)+k|0)>>>0)/3|0;n=g&255;g=j&255;a[f+7>>0]=(((n<<1)+g|0)>>>0)/3|0;j=h&255;h=l&255;a[f+8>>0]=(((j<<1)+h|0)>>>0)/3|0;a[f+9>>0]=(((k<<1)+m|0)>>>0)/3|0;a[f+10>>0]=(((g<<1)+n|0)>>>0)/3|0;a[f+11>>0]=(((h<<1)+j|0)>>>0)/3|0;j=0;h=32;while(1){n=((d[c+(h>>>3)>>0]|0)>>>(h&6)&3)*3|0;a[b+j>>0]=a[f+n>>0]|0;a[b+(j|1)>>0]=a[f+(n+1)>>0]|0;a[b+(j|2)>>0]=a[f+(n+2)>>0]|0;j=j+4|0;if(j>>>0>=64)break;else h=h+2|0}i=e;return}function Fi(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=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;e=i;i=i+16|0;f=e;g=d[c>>0]|0;h=d[c+1>>0]|0;j=h<<8|g;k=((g&31)*255|0)+31|0;g=((k>>>5)+k|0)>>>5;a[f>>0]=g;k=((j>>>5&63)*255|0)+63|0;l=((k>>>6)+k|0)>>>6;a[f+1>>0]=l;k=((h>>>3)*255|0)+31|0;h=((k>>>5)+k|0)>>>5;a[f+2>>0]=h;a[f+3>>0]=-1;k=d[c+2>>0]|0;m=d[c+3>>0]|0;n=m<<8|k;o=((k&31)*255|0)+31|0;k=((o>>>5)+o|0)>>>5;a[f+4>>0]=k;o=((n>>>5&63)*255|0)+63|0;p=((o>>>6)+o|0)>>>6;a[f+5>>0]=p;o=((m>>>3)*255|0)+31|0;m=((o>>>5)+o|0)>>>5;a[f+6>>0]=m;a[f+7>>0]=-1;o=g&255;if(j>>>0>n>>>0){n=k&255;a[f+8>>0]=((n+(o<<1)|0)>>>0)/3|0;j=l&255;g=p&255;a[f+9>>0]=(((j<<1)+g|0)>>>0)/3|0;q=h&255;r=m&255;a[f+10>>0]=(((q<<1)+r|0)>>>0)/3|0;a[f+11>>0]=-1;a[f+12>>0]=(((n<<1)+o|0)>>>0)/3|0;s=-1;t=((((r<<1)+q|0)>>>0)/3|0)&255;u=((((g<<1)+j|0)>>>0)/3|0)&255}else{a[f+8>>0]=((k&255)+o|0)>>>1;a[f+9>>0]=((p&255)+(l&255)|0)>>>1;a[f+10>>0]=((m&255)+(h&255)|0)>>>1;a[f+11>>0]=-1;a[f+12>>0]=0;s=0;t=0;u=0}a[f+13>>0]=u;a[f+14>>0]=t;a[f+15>>0]=s;s=0;t=32;while(1){u=(d[c+(t>>>3)>>0]|0)>>>(t&6)<<2&12;a[b+s>>0]=a[f+u>>0]|0;a[b+(s|1)>>0]=a[f+(u|1)>>0]|0;a[b+(s|2)>>0]=a[f+(u|2)>>0]|0;a[b+(s|3)>>0]=a[f+(u|3)>>0]|0;s=s+4|0;if(s>>>0>=64)break;else t=t+2|0}i=e;return}function Gi(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;e=i;i=i+16|0;f=e;g=a[c>>0]|0;a[f>>0]=g;h=a[c+1>>0]|0;a[f+1>>0]=h;j=g&255;k=h&255;if((g&255)>(h&255)){a[f+2>>0]=(((j*6|0)+k|0)>>>0)/7|0;a[f+3>>0]=(((k<<1)+(j*5|0)|0)>>>0)/7|0;l=((((k*6|0)+j|0)>>>0)/7|0)&255;m=((((k*5|0)+(j<<1)|0)>>>0)/7|0)&255;n=(((k<<2)+(j*3|0)|0)>>>0)/7|0;o=(((k*3|0)+(j<<2)|0)>>>0)/7|0}else{a[f+2>>0]=(((j<<2)+k|0)>>>0)/5|0;a[f+3>>0]=(((k<<1)+(j*3|0)|0)>>>0)/5|0;l=-1;m=0;n=(((k<<2)+j|0)>>>0)/5|0;o=(((k*3|0)+(j<<1)|0)>>>0)/5|0}a[f+4>>0]=o;a[f+5>>0]=n;a[f+6>>0]=m;a[f+7>>0]=l;l=d[c+2>>0]|0;m=d[c+5>>0]|0;n=d[c+3>>0]|0;o=n<<8;j=d[c+6>>0]|0;k=j<<8;h=d[c+4>>0]|0;g=d[c+7>>0]|0;a[b>>0]=a[f+(l&7)>>0]|0;a[b+32>>0]=a[f+(m&7)>>0]|0;a[b+4>>0]=a[f+(l>>>3&7)>>0]|0;a[b+36>>0]=a[f+(m>>>3&7)>>0]|0;a[b+8>>0]=a[f+((o|l)>>>6&7)>>0]|0;a[b+40>>0]=a[f+((k|m)>>>6&7)>>0]|0;a[b+12>>0]=a[f+(n>>>1&7)>>0]|0;a[b+44>>0]=a[f+(j>>>1&7)>>0]|0;a[b+16>>0]=a[f+(n>>>4&7)>>0]|0;a[b+48>>0]=a[f+(j>>>4&7)>>0]|0;a[b+20>>0]=a[f+((o|h<<16)>>>15&7)>>0]|0;a[b+52>>0]=a[f+((k|g<<16)>>>15&7)>>0]|0;a[b+24>>0]=a[f+(h>>>2&7)>>0]|0;a[b+56>>0]=a[f+(g>>>2&7)>>0]|0;a[b+28>>0]=a[f+(h>>>5)>>0]|0;a[b+60>>0]=a[f+(g>>>5)>>0]|0;i=e;return}function Hi(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;e=i;i=i+16|0;f=e;g=d[c>>0]|0;h=a[c+1>>0]|0;j=a[c+2>>0]|0;k=a[c+3>>0]|0;l=((g>>>1&12|g&3)*255|0)+15|0;a[f>>0]=((l>>>4)+l|0)>>>4;l=(((h&255)>>>4&255)*255|0)+15|0;a[f+1>>0]=((l>>>4)+l|0)>>>4;l=((h&15)*255|0)+15|0;a[f+2>>0]=((l>>>4)+l|0)>>>4;l=(((j&255)>>>4&255)*255|0)+15|0;h=((l>>>4)+l|0)>>>4;a[f+8>>0]=h;l=((j&15)*255|0)+15|0;j=((l>>>4)+l|0)>>>4;a[f+9>>0]=j;l=(((k&255)>>>4&255)*255|0)+15|0;g=((l>>>4)+l|0)>>>4;a[f+10>>0]=g;l=d[32856+((k&255)>>>1&7)>>0]|0;k=h&255;h=k+l|0;m=h+-255>>31;n=m&255^255|m&h;a[f+4>>0]=0-n>>31&n;n=j&255;j=n+l|0;h=j+-255>>31;m=h&255^255|h&j;a[f+5>>0]=0-m>>31&m;m=g&255;g=m+l|0;j=g+-255>>31;h=j&255^255|j&g;a[f+6>>0]=0-h>>31&h;h=k-l|0;k=h+-255>>31;g=k&255^255|k&h;a[f+12>>0]=0-g>>31&g;g=n-l|0;n=g+-255>>31;h=n&255^255|n&g;a[f+13>>0]=0-h>>31&h;h=m-l|0;l=h+-255>>31;m=l&255^255|l&h;a[f+14>>0]=0-m>>31&m;m=0;h=(d[c+6>>0]|0)<<8|(d[c+7>>0]|0);l=(d[c+4>>0]|0)<<8|(d[c+5>>0]|0);while(1){c=m<<4&48|m&12;g=(l<<1&2|h&1)<<2;a[b+c>>0]=a[f+(g|2)>>0]|0;a[b+(c|1)>>0]=a[f+(g|1)>>0]|0;a[b+(c|2)>>0]=a[f+g>>0]|0;a[b+(c|3)>>0]=-1;m=m+1|0;if((m|0)==16)break;else{h=h>>>1;l=l>>>1}}i=e;return}function Ii(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+16|0;f=e;g=d[c>>0]|0;h=d[c+1>>0]|0;j=f+1|0;k=d[c+2>>0]|0;l=f+2|0;m=f+8|0;n=d[c+3>>0]|0;o=f+9|0;p=f+10|0;q=((g>>>3&15)*255|0)+15|0;r=((q>>>4)+q|0)>>>4;a[f>>0]=r;q=((h>>>4&1|g<<1&14)*255|0)+15|0;g=((q>>>4)+q|0)>>>4;a[j>>0]=g;q=((h<<1&6|h&8|k>>>7)*255|0)+15|0;h=((q>>>4)+q|0)>>>4;a[l>>0]=h;q=((k>>>3&15)*255|0)+15|0;s=((q>>>4)+q|0)>>>4;q=s&255;a[m>>0]=q;t=((k<<1&14|n>>>7)*255|0)+15|0;k=((t>>>4)+t|0)>>>4;a[o>>0]=k;a[p>>0]=q;q=r&255;r=g&255;g=h&255;h=d[32856+((r<<8|q<<16|g)>>>0>=(k<<8&65280|s<<16&16711680|s&255)>>>0|n&6)>>0]|0;n=q-h|0;s=n+-255>>31;k=s&255^255|s&n;a[f+4>>0]=0-k>>31&k;k=r-h|0;n=k+-255>>31;s=n&255^255|n&k;a[f+5>>0]=0-s>>31&s;s=g-h|0;g=s+-255>>31;k=g&255^255|g&s;a[f+6>>0]=0-k>>31&k;k=q+h|0;q=k+-255>>31;s=q&255^255|q&k;a[f>>0]=0-s>>31&s;s=r+h|0;r=s+-255>>31;k=r&255^255|r&s;a[j>>0]=0-k>>31&k;k=(d[l>>0]|0)+h|0;j=k+-255>>31;s=j&255^255|j&k;a[l>>0]=0-s>>31&s;s=d[m>>0]|0;l=s-h|0;k=l+-255>>31;j=k&255^255|k&l;a[f+12>>0]=0-j>>31&j;j=d[o>>0]|0;l=j-h|0;k=l+-255>>31;r=k&255^255|k&l;a[f+13>>0]=0-r>>31&r;r=d[p>>0]|0;l=r-h|0;k=l+-255>>31;q=k&255^255|k&l;a[f+14>>0]=0-q>>31&q;q=s+h|0;s=q+-255>>31;l=s&255^255|s&q;a[m>>0]=0-l>>31&l;l=j+h|0;j=l+-255>>31;m=j&255^255|j&l;a[o>>0]=0-m>>31&m;m=r+h|0;h=m+-255>>31;r=h&255^255|h&m;a[p>>0]=0-r>>31&r;r=0;p=(d[c+6>>0]|0)<<8|(d[c+7>>0]|0);m=(d[c+4>>0]|0)<<8|(d[c+5>>0]|0);while(1){c=r<<4&48|r&12;h=(m<<1&2|p&1)<<2;a[b+c>>0]=a[f+(h|2)>>0]|0;a[b+(c|1)>>0]=a[f+(h|1)>>0]|0;a[b+(c|2)>>0]=a[f+h>>0]|0;a[b+(c|3)>>0]=-1;r=r+1|0;if((r|0)==16)break;else{p=p>>>1;m=m>>>1}}i=e;return}function Ji(b,c){b=b|0;c=c|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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;e=d[c>>0]|0;f=d[c+1>>0]|0;g=d[c+2>>0]|0;h=d[c+3>>0]|0;i=a[c+4>>0]|0;j=d[c+5>>0]|0;k=d[c+6>>0]|0;l=d[c+7>>0]|0;c=((e>>>1&63)*255|0)+63|0;m=((f>>>1&63|e<<6&64)*255|0)+127|0;e=((f<<5&32|g&24|g<<1&6|h>>>7)*255|0)+63|0;g=((h>>>1&62|h&1)*255|0)+63|0;h=(((i&255)>>>1&255)*255|0)+127|0;f=(((i&255)<<5&32|j>>>3)*255|0)+63|0;i=((j<<3&56|k>>>5)*255|0)+63|0;j=((k<<2&124|l>>>5)*255|0)+127|0;k=((l&63)*255|0)+63|0;l=((c>>>6)+c|0)>>>6&255;c=(((i>>>6)+i|0)>>>6&255)-l|0;i=((m>>>7)+m|0)>>>7&255;m=(((j>>>7)+j|0)>>>7&255)-i|0;j=((e>>>6)+e|0)>>>6&255;e=(((k>>>6)+k|0)>>>6&255)-j|0;k=((g>>>6)+g|0)>>>4&1020;g=((h>>>7)+h|0)>>>5&1020;h=((f>>>6)+f|0)>>>4&1020;f=l<<2;l=j<<2;j=i<<2;i=0;while(1){n=k<<16>>16;o=f<<16>>16;p=g<<16>>16;q=j<<16>>16;r=h<<16>>16;s=l<<16>>16;t=i<<4;u=r-s>>2;v=p-q>>2;w=n-o>>2;x=0;do{y=(x<<2)+t|0;z=(aa(x,u)|0)+s>>2;A=z+-255>>31;B=A&255^255|A&z;a[b+y>>0]=0-B>>31&B;B=(aa(x,v)|0)+q>>2;z=B+-255>>31;A=z&255^255|z&B;a[b+(y|1)>>0]=0-A>>31&A;A=(aa(x,w)|0)+o>>2;B=A+-255>>31;z=B&255^255|B&A;a[b+(y|2)>>0]=0-z>>31&z;a[b+(y|3)>>0]=-1;x=x+1|0}while((x|0)!=4);i=i+1|0;if((i|0)==4)break;else{k=n+c|0;g=p+m|0;h=r+e|0;f=o+c|0;l=s+e|0;j=q+m|0}}return}function Ki(b,e){b=b|0;e=e|0;var f=0,g=0,h=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;f=i;i=i+16|0;g=f+8|0;h=f;j=d[e+3>>0]|0;k=(j&1|0)==0;l=a[e>>0]|0;do if(!(j&2)){m=a[e+1>>0]|0;n=a[e+2>>0]|0;o=(((l&255)>>>4&255)*255|0)+15|0;a[g>>0]=((o>>>4)+o|0)>>>4;o=(((m&255)>>>4&255)*255|0)+15|0;a[g+1>>0]=((o>>>4)+o|0)>>>4;o=(((n&255)>>>4&255)*255|0)+15|0;a[g+2>>0]=((o>>>4)+o|0)>>>4;o=((l&15)*255|0)+15|0;a[g+4>>0]=((o>>>4)+o|0)>>>4;o=((m&15)*255|0)+15|0;a[g+5>>0]=((o>>>4)+o|0)>>>4;o=((n&15)*255|0)+15|0;a[g+6>>0]=((o>>>4)+o|0)>>>4}else{o=(l&255)>>>3;a[g>>0]=o;n=a[e+1>>0]|0;m=(n&255)>>>3;p=g+1|0;a[p>>0]=m;q=a[e+2>>0]|0;r=(q&255)>>>3;s=g+2|0;a[s>>0]=r;t=o&255;o=t+((l&255)<<29>>29)|0;u=r&255;r=((q&255)<<29>>29)+u|0;if((o&255)>31){Hi(b,e);i=f;return}q=m&255;m=((n&255)<<29>>29)+q|0;if((m&255)>31){Ii(b,e);i=f;return}if(r>>>0<=31){n=(t*255|0)+31|0;a[g>>0]=((n>>>5)+n|0)>>>5;n=(q*255|0)+31|0;a[p>>0]=((n>>>5)+n|0)>>>5;n=(u*255|0)+31|0;a[s>>0]=((n>>>5)+n|0)>>>5;n=(o*255|0)+31|0;a[g+4>>0]=((n>>>5)+n|0)>>>5;n=(m*255|0)+31|0;a[g+5>>0]=((n>>>5)+n|0)>>>5;n=(r*255|0)+31|0;a[g+6>>0]=((n>>>5)+n|0)>>>5;break}Ji(b,e);i=f;return}while(0);c[h>>2]=j>>>5;c[h+4>>2]=j>>>2&7;j=(d[e+4>>0]|0)<<8|(d[e+5>>0]|0);l=(d[e+6>>0]|0)<<8|(d[e+7>>0]|0);if(k){k=0;e=l;n=j;while(1){r=k>>>3;m=r<<2;o=k<<4&48|k&12;s=c[32864+(c[h+(r<<2)>>2]<<4)+((n<<1&2|e&1)<<2)>>2]|0;r=(d[g+(m|2)>>0]|0)+s|0;u=r+-255>>31;p=u&255^255|u&r;a[b+o>>0]=0-p>>31&p;p=(d[g+(m|1)>>0]|0)+s|0;r=p+-255>>31;u=r&255^255|r&p;a[b+(o|1)>>0]=0-u>>31&u;u=(d[g+m>>0]|0)+s|0;s=u+-255>>31;m=s&255^255|s&u;a[b+(o|2)>>0]=0-m>>31&m;a[b+(o|3)>>0]=-1;k=k+1|0;if((k|0)==16)break;else{e=e>>>1;n=n>>>1}}i=f;return}else{n=0;e=l;l=j;while(1){j=n>>>1&1;k=j<<2;o=n<<4&48|n&12;m=c[32864+(c[h+(j<<2)>>2]<<4)+((l<<1&2|e&1)<<2)>>2]|0;j=(d[g+(k|2)>>0]|0)+m|0;u=j+-255>>31;s=u&255^255|u&j;a[b+o>>0]=0-s>>31&s;s=(d[g+(k|1)>>0]|0)+m|0;j=s+-255>>31;u=j&255^255|j&s;a[b+(o|1)>>0]=0-u>>31&u;u=(d[g+k>>0]|0)+m|0;m=u+-255>>31;k=m&255^255|m&u;a[b+(o|2)>>0]=0-k>>31&k;a[b+(o|3)>>0]=-1;n=n+1|0;if((n|0)==16)break;else{e=e>>>1;l=l>>>1}}i=f;return}}function Li(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;if(!(a&32768)){g=((a>>>8&15)*255|0)+15|0;h=f&255;i=aa(((g>>>4)+g|0)>>>4&255,h)|0;c[b>>2]=(c[b>>2]|0)+i;i=((a>>>4&15)*255|0)+15|0;g=aa(((i>>>4)+i|0)>>>4&255,h)|0;c[d>>2]=(c[d>>2]|0)+g;g=((a>>>1&7)*255|0)+7|0;i=aa(((g>>>3)+g|0)>>>3&255,h)|0;j=(c[e>>2]|0)+i|0;c[e>>2]=j;return}else{i=((a>>>10&31)*255|0)+31|0;h=f&255;f=aa(((i>>>5)+i|0)>>>5&255,h)|0;c[b>>2]=(c[b>>2]|0)+f;f=((a>>>5&31)*255|0)+31|0;b=aa(((f>>>5)+f|0)>>>5&255,h)|0;c[d>>2]=(c[d>>2]|0)+b;b=((a>>>1&15)*255|0)+15|0;a=aa(((b>>>4)+b|0)>>>4&255,h)|0;j=(c[e>>2]|0)+a|0;c[e>>2]=j;return}}function Mi(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;if((a|0)<0){g=((a>>>26&31)*255|0)+31|0;h=f&255;i=aa(((g>>>5)+g|0)>>>5&255,h)|0;c[b>>2]=(c[b>>2]|0)+i;i=((a>>>21&31)*255|0)+31|0;g=aa(((i>>>5)+i|0)>>>5&255,h)|0;c[d>>2]=(c[d>>2]|0)+g;g=((a>>>16&31)*255|0)+31|0;i=aa(((g>>>5)+g|0)>>>5&255,h)|0;j=(c[e>>2]|0)+i|0;c[e>>2]=j;return}else{i=((a>>>24&15)*255|0)+15|0;h=f&255;f=aa(((i>>>4)+i|0)>>>4&255,h)|0;c[b>>2]=(c[b>>2]|0)+f;f=((a>>>20&15)*255|0)+15|0;b=aa(((f>>>4)+f|0)>>>4&255,h)|0;c[d>>2]=(c[d>>2]|0)+b;b=((a>>>16&15)*255|0)+15|0;a=aa(((b>>>4)+b|0)>>>4&255,h)|0;j=(c[e>>2]|0)+a|0;c[e>>2]=j;return}}function Ni(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;k=i;i=i+32|0;l=k+20|0;m=k+16|0;n=k+12|0;o=k+8|0;p=k+4|0;q=k;r=f&65535;s=(r<<8|r)&16711935;r=(s<<4|s)&252645135;s=(r<<2|r)&858993459;r=g&65535;t=(r<<8|r)&16711935;r=(t<<4|t)&252645135;t=(r<<2|r)&858993459;r=((t<<1|t)&357913941|(s<<1|s)<<1&178956970)<<3;s=(a[e+(r|7)>>0]&1)<<2;t=32992;u=(d[e+(r|2)>>0]|0)<<16|(d[e+(r|3)>>0]|0)<<24|(d[e+(r|1)>>0]|0)<<8|(d[e+r>>0]|0);r=0;while(1){v=(((((r|0)<2)<<31>>31)+g|0)>>>0)%(j>>>0)|0;w=v&65535;x=(w<<8|w)&16711935;w=(x<<4|x)&252645135;x=(w<<2|w)&858993459;w=(x<<1|x)&1431655765;x=(((v+1|0)>>>0)%(j>>>0)|0)&65535;v=(x<<8|x)&16711935;x=(v<<4|v)&252645135;v=(x<<2|x)&858993459;x=(v<<1|v)&1431655765;v=r<<2;y=t;z=u;A=0;while(1){B=(((((A|0)<2)<<31>>31)+f|0)>>>0)%(h>>>0)|0;C=B&65535;D=(C<<8|C)&16711935;C=(D<<4|D)&252645135;D=(C<<2|C)&858993459;C=(D<<1|D)<<1&-1431655766;D=(C|w)<<3;E=(d[e+(D|6)>>0]|0)<<16|(d[e+(D|7)>>0]|0)<<24|(d[e+(D|5)>>0]|0)<<8|(d[e+(D|4)>>0]|0);D=(((B+1|0)>>>0)%(h>>>0)|0)&65535;B=(D<<8|D)&16711935;D=(B<<4|B)&252645135;B=(D<<2|D)&858993459;D=(B<<1|B)<<1&-1431655766;B=(D|w)<<3;F=(d[e+(B|6)>>0]|0)<<16|(d[e+(B|7)>>0]|0)<<24|(d[e+(B|5)>>0]|0)<<8|(d[e+(B|4)>>0]|0);B=(C|x)<<3;C=(d[e+(B|6)>>0]|0)<<16|(d[e+(B|7)>>0]|0)<<24|(d[e+(B|5)>>0]|0)<<8|(d[e+(B|4)>>0]|0);B=(D|x)<<3;D=(d[e+(B|6)>>0]|0)<<16|(d[e+(B|7)>>0]|0)<<24|(d[e+(B|5)>>0]|0)<<8|(d[e+(B|4)>>0]|0);B=a[y>>0]|0;G=a[y+1>>0]|0;H=a[y+2>>0]|0;I=a[y+3>>0]|0;c[l>>2]=0;c[m>>2]=0;c[n>>2]=0;Li(E,l,m,n,B);Li(F,l,m,n,G);Li(C,l,m,n,H);Li(D,l,m,n,I);c[o>>2]=0;c[p>>2]=0;c[q>>2]=0;Mi(E,o,p,q,B);Mi(F,o,p,q,G);Mi(C,o,p,q,H);Mi(D,o,p,q,I);I=z<<2&12;D=d[33056+(s<<2)+I>>0]|0;H=aa(c[n>>2]|0,D)|0;C=d[(I|1)+(33056+(s<<2))>>0]|0;I=A+v<<2;a[b+I>>0]=((aa(c[q>>2]|0,C)|0)+H|0)>>>7;H=aa(c[m>>2]|0,D)|0;a[b+(I|1)>>0]=((aa(c[p>>2]|0,C)|0)+H|0)>>>7;H=aa(c[l>>2]|0,D)|0;a[b+(I|2)>>0]=((aa(c[o>>2]|0,C)|0)+H|0)>>>7;a[b+(I|3)>>0]=-1;I=z>>>2;A=A+1|0;if((A|0)==4){J=I;break}else{y=y+4|0;z=I}}z=r+1|0;if((z|0)==4)break;else{t=t+16|0;u=J;r=z}}i=k;return}function Oi(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;if(!(a&32768)){h=((a>>>8&15)*255|0)+15|0;i=g&255;j=aa(((h>>>4)+h|0)>>>4&255,i)|0;c[b>>2]=(c[b>>2]|0)+j;j=((a>>>4&15)*255|0)+15|0;h=aa(((j>>>4)+j|0)>>>4&255,i)|0;c[d>>2]=(c[d>>2]|0)+h;h=((a>>>1&7)*255|0)+7|0;j=aa(((h>>>3)+h|0)>>>3&255,i)|0;c[e>>2]=(c[e>>2]|0)+j;j=((a>>>12&7)*255|0)+7|0;h=aa(((j>>>3)+j|0)>>>3&255,i)|0;k=(c[f>>2]|0)+h|0;c[f>>2]=k;return}else{h=((a>>>10&31)*255|0)+31|0;i=g&255;g=aa(((h>>>5)+h|0)>>>5&255,i)|0;c[b>>2]=(c[b>>2]|0)+g;g=((a>>>5&31)*255|0)+31|0;b=aa(((g>>>5)+g|0)>>>5&255,i)|0;c[d>>2]=(c[d>>2]|0)+b;b=((a>>>1&15)*255|0)+15|0;a=aa(((b>>>4)+b|0)>>>4&255,i)|0;c[e>>2]=(c[e>>2]|0)+a;k=(c[f>>2]|0)+255|0;c[f>>2]=k;return}}function Pi(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;if((a|0)<0){h=((a>>>26&31)*255|0)+31|0;i=g&255;j=aa(((h>>>5)+h|0)>>>5&255,i)|0;c[b>>2]=(c[b>>2]|0)+j;j=((a>>>21&31)*255|0)+31|0;h=aa(((j>>>5)+j|0)>>>5&255,i)|0;c[d>>2]=(c[d>>2]|0)+h;h=((a>>>16&31)*255|0)+31|0;j=aa(((h>>>5)+h|0)>>>5&255,i)|0;c[e>>2]=(c[e>>2]|0)+j;k=(c[f>>2]|0)+255|0;c[f>>2]=k;return}else{j=((a>>>24&15)*255|0)+15|0;i=g&255;g=aa(((j>>>4)+j|0)>>>4&255,i)|0;c[b>>2]=(c[b>>2]|0)+g;g=((a>>>20&15)*255|0)+15|0;b=aa(((g>>>4)+g|0)>>>4&255,i)|0;c[d>>2]=(c[d>>2]|0)+b;b=((a>>>16&15)*255|0)+15|0;d=aa(((b>>>4)+b|0)>>>4&255,i)|0;c[e>>2]=(c[e>>2]|0)+d;d=((a>>>28&7)*255|0)+7|0;a=aa(((d>>>3)+d|0)>>>3&255,i)|0;k=(c[f>>2]|0)+a|0;c[f>>2]=k;return}}function Qi(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;k=i;i=i+32|0;l=k+28|0;m=k+24|0;n=k+20|0;o=k+16|0;p=k+12|0;q=k+8|0;r=k+4|0;s=k;t=f&65535;u=(t<<8|t)&16711935;t=(u<<4|u)&252645135;u=(t<<2|t)&858993459;t=g&65535;v=(t<<8|t)&16711935;t=(v<<4|v)&252645135;v=(t<<2|t)&858993459;t=((v<<1|v)&357913941|(u<<1|u)<<1&178956970)<<3;u=(a[e+(t|7)>>0]&1)<<2;v=32992;w=(d[e+(t|2)>>0]|0)<<16|(d[e+(t|3)>>0]|0)<<24|(d[e+(t|1)>>0]|0)<<8|(d[e+t>>0]|0);t=0;while(1){x=(((((t|0)<2)<<31>>31)+g|0)>>>0)%(j>>>0)|0;y=x&65535;z=(y<<8|y)&16711935;y=(z<<4|z)&252645135;z=(y<<2|y)&858993459;y=(z<<1|z)&1431655765;z=(((x+1|0)>>>0)%(j>>>0)|0)&65535;x=(z<<8|z)&16711935;z=(x<<4|x)&252645135;x=(z<<2|z)&858993459;z=(x<<1|x)&1431655765;x=t<<2;A=v;B=w;C=0;while(1){D=(((((C|0)<2)<<31>>31)+f|0)>>>0)%(h>>>0)|0;E=D&65535;F=(E<<8|E)&16711935;E=(F<<4|F)&252645135;F=(E<<2|E)&858993459;E=(F<<1|F)<<1&-1431655766;F=(E|y)<<3;G=(d[e+(F|6)>>0]|0)<<16|(d[e+(F|7)>>0]|0)<<24|(d[e+(F|5)>>0]|0)<<8|(d[e+(F|4)>>0]|0);F=(((D+1|0)>>>0)%(h>>>0)|0)&65535;D=(F<<8|F)&16711935;F=(D<<4|D)&252645135;D=(F<<2|F)&858993459;F=(D<<1|D)<<1&-1431655766;D=(F|y)<<3;H=(d[e+(D|6)>>0]|0)<<16|(d[e+(D|7)>>0]|0)<<24|(d[e+(D|5)>>0]|0)<<8|(d[e+(D|4)>>0]|0);D=(E|z)<<3;E=(d[e+(D|6)>>0]|0)<<16|(d[e+(D|7)>>0]|0)<<24|(d[e+(D|5)>>0]|0)<<8|(d[e+(D|4)>>0]|0);D=(F|z)<<3;F=(d[e+(D|6)>>0]|0)<<16|(d[e+(D|7)>>0]|0)<<24|(d[e+(D|5)>>0]|0)<<8|(d[e+(D|4)>>0]|0);D=a[A>>0]|0;I=a[A+1>>0]|0;J=a[A+2>>0]|0;K=a[A+3>>0]|0;c[l>>2]=0;c[m>>2]=0;c[n>>2]=0;c[o>>2]=0;Oi(G,l,m,n,o,D);Oi(H,l,m,n,o,I);Oi(E,l,m,n,o,J);Oi(F,l,m,n,o,K);c[p>>2]=0;c[q>>2]=0;c[r>>2]=0;c[s>>2]=0;Pi(G,p,q,r,s,D);Pi(H,p,q,r,s,I);Pi(E,p,q,r,s,J);Pi(F,p,q,r,s,K);K=B<<2&12;F=a[(K|2)+(33056+(u<<2))>>0]|0;J=a[(K|3)+(33056+(u<<2))>>0]|0;E=d[33056+(u<<2)+K>>0]|0;I=aa(c[n>>2]|0,E)|0;H=d[(K|1)+(33056+(u<<2))>>0]|0;K=C+x<<2;a[b+K>>0]=((aa(c[r>>2]|0,H)|0)+I|0)>>>7;I=aa(c[m>>2]|0,E)|0;a[b+(K|1)>>0]=((aa(c[q>>2]|0,H)|0)+I|0)>>>7;I=aa(c[l>>2]|0,E)|0;a[b+(K|2)>>0]=((aa(c[p>>2]|0,H)|0)+I|0)>>>7;I=aa(c[o>>2]|0,F&255)|0;a[b+(K|3)>>0]=((aa(c[s>>2]|0,J&255)|0)+I|0)>>>7;I=B>>>2;C=C+1|0;if((C|0)==4){L=I;break}else{A=A+4|0;B=I}}B=t+1|0;if((B|0)==4)break;else{v=v+16|0;w=L;t=B}}i=k;return}function Ri(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=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,x=0,y=0,z=0,A=0,B=0,C=0,D=0;e=i;i=i+112|0;f=e+96|0;g=e+92|0;h=e+88|0;j=e+84|0;k=e+76|0;l=e+72|0;m=e+64|0;n=e+60|0;o=e+56|0;p=e+40|0;q=e+24|0;r=e+16|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,f,4)|0;if((c[f>>2]|0)>>>0<124){s=0;i=e;return s|0}Ug[c[(c[d>>2]|0)+8>>2]&15](d,g,4)|0;if((c[g>>2]&4103|0)!=4103){s=0;i=e;return s|0}Ug[c[(c[d>>2]|0)+8>>2]&15](d,h,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,j,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,e+80|0,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,k,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,l,4)|0;g=d+4|0;dh[c[(c[g>>2]|0)+8>>2]&15](g,44,0,1)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,e+68|0,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,m,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,n,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,o,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,p,16)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,q,16)|0;dh[c[(c[g>>2]|0)+8>>2]&15](g,4,0,1)|0;c[r>>2]=0;if((c[m>>2]|0)==4&(c[n>>2]|0)==808540228){Ug[c[(c[d>>2]|0)+8>>2]&15](d,r,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,e+12|0,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,e+8|0,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,e+4|0,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,e,4)|0}if(!(c[q>>2]&4096)){s=0;i=e;return s|0}d=c[q+4>>2]|0;f=d&512;if(!((f|0)==0|(d&64512|0)==64512)){s=0;i=e;return s|0}d=c[m>>2]|0;m=d&1;t=c[r>>2]|0;a:do if(!t){if(!(d&4)){r=c[o>>2]|0;u=c[p>>2]|0;v=c[p+4>>2]|0;w=c[p+8>>2]|0;x=c[p+12>>2]|0;y=0;while(1){if(((((c[33440+(y*24|0)>>2]|0)==(r|0)?(c[33440+(y*24|0)+4>>2]|0)==(u|0):0)?(c[33440+(y*24|0)+8>>2]|0)==(v|0):0)?(c[33440+(y*24|0)+12>>2]|0)==(w|0):0)?(c[33440+(y*24|0)+16>>2]|0)==(x|0):0){z=y;break}y=y+1|0;if(y>>>0>=10){A=17;B=0;break a}}A=c[33440+(z*24|0)+20>>2]|0;B=0;break}y=c[n>>2]|0;do if((y|0)!=827611204)if((y|0)!=844388420)if((y|0)!=861165636)if((y|0)!=877942852)if((y|0)!=894720068)if((y|0)!=826889281)if((y|0)!=1429488450)if((y|0)!=843666497)if((y|0)!=1429553986)if((y|0)!=36)if((y|0)!=113){if((y|0)==65){C=11;break}if((y|0)==32){C=12;break}if((y|0)==131072){C=13;break}if((y|0)==2){C=14;break}if((y|0)==111){C=15;break}if((y|0)==114){C=16;break}if((y|0)==51){C=17;break}if((y|0)==34){C=18;break}if((y|0)==112){C=19;break}if((y|0)==115){C=20;break}if((y|0)==21){C=21;break}if((y|0)==116){C=24;break}if((y|0)==23){C=25;break}if((y|0)==26){C=26;break}if((y|0)==25){C=27;break}if((y|0)==31)C=28;else{A=17;B=0;break a}}else C=10;else C=9;else C=8;else C=7;else C=6;else C=5;else C=4;else C=3;else C=2;else C=1;else C=0;while(0);A=c[33088+(C*12|0)+4>>2]|0;B=0}else{y=0;while(1){if((c[33680+(y*12|0)>>2]|0)==(t|0)){D=y;break}y=y+1|0;if(y>>>0>=35){A=17;B=0;break a}}A=c[33680+(D*12|0)+4>>2]|0;B=a[33680+(D*12|0)+8>>0]|0}while(0);c[b>>2]=0;c[b+4>>2]=0;D=dh[c[(c[g>>2]|0)+8>>2]&15](g,0,0,1)|0;c[b+8>>2]=D;c[b+12>>2]=c[j>>2];c[b+16>>2]=c[h>>2];c[b+20>>2]=c[k>>2];a[b+24>>0]=A;a[b+25>>0]=(c[q>>2]&4194304|0)!=0?c[l>>2]&255:1;a[b+26>>0]=m;a[b+27>>0]=f>>>9;a[b+28>>0]=0;a[b+29>>0]=B;s=(A|0)!=17;i=e;return s|0}function Si(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+16|0;f=e+4|0;g=e+8|0;h=e;Ug[c[(c[d>>2]|0)+8>>2]&15](d,g,8)|0;if((a[g+1>>0]|0)!=49?(a[g+2>>0]|0)!=49:0){j=0;i=e;return j|0}Ug[c[(c[d>>2]|0)+8>>2]&15](d,h,4)|0;g=(c[h>>2]|0)==67305985;Ug[c[(c[d>>2]|0)+8>>2]&15](d,f,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,f,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,f,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,f,4)|0;h=c[f>>2]|0;k=dp(h|0)|0;l=g?h:k;Ug[c[(c[d>>2]|0)+8>>2]&15](d,f,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,f,4)|0;k=c[f>>2]|0;h=dp(k|0)|0;m=g?k:h;Ug[c[(c[d>>2]|0)+8>>2]&15](d,f,4)|0;h=c[f>>2]|0;k=dp(h|0)|0;n=g?h:k;Ug[c[(c[d>>2]|0)+8>>2]&15](d,f,4)|0;k=c[f>>2]|0;h=dp(k|0)|0;o=g?k:h;Ug[c[(c[d>>2]|0)+8>>2]&15](d,f,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,f,4)|0;h=c[f>>2]|0;k=dp(h|0)|0;p=g?h:k;Ug[c[(c[d>>2]|0)+8>>2]&15](d,f,4)|0;k=c[f>>2]|0;h=g?k:k>>>24;Ug[c[(c[d>>2]|0)+8>>2]&15](d,f,4)|0;k=c[f>>2]|0;f=dp(k|0)|0;q=d+4|0;d=dh[c[(c[q>>2]|0)+8>>2]&15](q,g?k:f,0,1)|0;f=0;while(1){if((c[34104+(f<<3)>>2]|0)==(l|0)){r=f;s=5;break}f=f+1|0;if(f>>>0>=36){t=17;break}}if((s|0)==5)t=c[34104+(r<<3)+4>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=d;c[b+12>>2]=m;c[b+16>>2]=n;c[b+20>>2]=o;a[b+24>>0]=t;a[b+25>>0]=h;a[b+26>>0]=0;a[b+27>>0]=p>>>0>1&1;a[b+28>>0]=1;j=(t|0)!=17;i=e;return j|0}function Ti(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=i;i=i+48|0;f=e;g=e+40|0;h=e+36|0;j=e+32|0;k=e+28|0;l=e+24|0;m=e+16|0;n=e+12|0;o=e+8|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,e+44|0,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,f,8)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,g,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,h,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,j,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,k,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,l,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,e+20|0,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,m,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,n,4)|0;Ug[c[(c[d>>2]|0)+8>>2]&15](d,o,4)|0;p=(d|0)==0?0:d+4|0;d=dh[c[(c[p>>2]|0)+8>>2]&15](p,c[o>>2]|0,0,1)|0;o=f;f=c[o>>2]|0;p=c[o+4>>2]|0;o=c[h>>2]|0;h=0;while(1){q=34392+(h<<4)|0;if(((c[q>>2]|0)==(f|0)?(c[q+4>>2]|0)==(p|0):0)?(o|0)==(c[34392+(h<<4)+8>>2]&o|0):0){r=h;s=4;break}h=h+1|0;if(h>>>0>=33){t=17;break}}if((s|0)==4)t=c[34392+(r<<4)+12>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=d;c[b+12>>2]=c[k>>2];c[b+16>>2]=c[j>>2];c[b+20>>2]=c[l>>2];a[b+24>>0]=t;a[b+25>>0]=c[n>>2];a[b+26>>0]=0;a[b+27>>0]=(c[m>>2]|0)>>>0>1&1;a[b+28>>0]=0;a[b+29>>0]=(c[g>>2]|0)!=0&1;i=e;return (t|0)!=17|0}function Ui(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+32|0;g=f+20|0;h=f;Ug[c[(c[d>>2]|0)+8>>2]&15](d,g,4)|0;j=c[g>>2]|0;if((j|0)==1481919403){k=Si(b,d)|0;i=f;return k|0}else if((j|0)==5784916){Ug[c[(c[d>>2]|0)+8>>2]&15](d,h,20)|0;a[b+24>>0]=a[h+13>>0]|0;c[b+8>>2]=-1;g=c[h+16>>2]|0;if(!g){c[b>>2]=0;l=0}else{c[b>>2]=c[g>>2];l=c[g+4>>2]|0}c[b+4>>2]=l;l=c[h+4>>2]|0;c[b+12>>2]=l&65535;c[b+16>>2]=l>>>16;c[b+20>>2]=e[h+10>>1];l=c[h+12>>2]|0;a[b+25>>0]=l;a[b+26>>0]=0;a[b+27>>0]=l>>>16;a[b+28>>0]=0;a[b+29>>0]=0;k=1;i=f;return k|0}else if((j|0)==542327876){k=Ri(b,d)|0;i=f;return k|0}else if((j|0)==55727696){k=Ti(b,d)|0;i=f;return k|0}else{k=0;i=f;return k|0}return 0}function Vi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+32|0;f=e;c[f>>2]=34928;c[f+4>>2]=34952;c[f+8>>2]=b;b=f+16|0;c[b>>2]=0;c[b+4>>2]=0;b=f+24|0;c[b>>2]=d;c[b+4>>2]=0;b=Ui(a,f)|0;i=e;return b|0}function Wi(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var 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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0.0,O=0;k=i;i=i+64|0;l=k;m=f>>>2;n=g>>>2;do switch(j&255|0){case 1:{if(!n){i=k;return}o=(m|0)==0;p=l+16|0;q=h<<1;r=l+32|0;s=h*3|0;t=l+48|0;u=m<<4;v=e;w=0;while(1){if(o)x=v;else{y=aa(w,h)|0;z=v;A=0;do{B=0;do{C=(((d[z+(B>>>3)>>0]|0)>>>(B&4)&15)*255|0)+15|0;a[l+(B|3)>>0]=((C>>>4)+C|0)>>>4;B=B+4|0}while(B>>>0<64);Ei(l,z+8|0);z=z+16|0;B=(A<<2)+y<<2;D=b+B|0;E=l;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+h)|0;E=p;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+q)|0;E=r;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+s)|0;E=t;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));A=A+1|0}while((A|0)!=(m|0));x=v+u|0}w=w+1|0;if((w|0)==(n|0))break;else v=x}i=k;return}case 3:{if(!n){i=k;return}v=(m|0)==0;w=l+16|0;u=h<<1;t=l+32|0;s=h*3|0;r=l+48|0;q=m<<3;p=e;o=0;while(1){if(v)G=p;else{A=aa(o,h)|0;y=p;z=0;do{Gi(l,y);y=y+8|0;B=(z<<2)+A<<2;D=b+B|0;E=l;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+h)|0;E=w;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+u)|0;E=t;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+s)|0;E=r;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));z=z+1|0}while((z|0)!=(m|0));G=p+q|0}o=o+1|0;if((o|0)==(n|0))break;else p=G}i=k;return}case 13:{if((f|0)==0|(g|0)==0){i=k;return}p=b;o=0;while(1){q=p;r=0;while(1){c[q>>2]=((r^o)&16|0)!=0?-256:-16777216;r=r+1|0;if((r|0)==(f|0))break;else q=q+4|0}o=o+1|0;if((o|0)==(g|0))break;else p=p+(f<<2)|0}i=k;return}case 0:{if(!n){i=k;return}p=(m|0)==0;o=l+16|0;q=h<<1;r=l+32|0;s=h*3|0;t=l+48|0;u=m<<3;w=e;v=0;while(1){if(p)H=w;else{z=aa(v,h)|0;A=w;y=0;do{Fi(l,A);A=A+8|0;B=(y<<2)+z<<2;D=b+B|0;E=l;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+h)|0;E=o;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+q)|0;E=r;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+s)|0;E=t;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));y=y+1|0}while((y|0)!=(m|0));H=w+u|0}v=v+1|0;if((v|0)==(n|0))break;else w=H}i=k;return}case 8:case 7:{if(!n){i=k;return}w=(m|0)==0;v=l+16|0;u=h<<1;t=l+32|0;s=h*3|0;r=l+48|0;q=m<<3;o=e;p=0;while(1){if(w)I=o;else{y=aa(p,h)|0;z=o;A=0;do{Ki(l,z);z=z+8|0;B=(A<<2)+y<<2;D=b+B|0;E=l;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+h)|0;E=v;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+u)|0;E=t;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+s)|0;E=r;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));A=A+1|0}while((A|0)!=(m|0));I=o+q|0}p=p+1|0;if((p|0)==(n|0))break;else o=I}i=k;return}case 14:{if(!n){i=k;return}o=(m|0)==0;p=l+16|0;q=h<<1;r=l+32|0;s=h*3|0;t=l+48|0;u=0;do{if(!o){v=aa(u,h)|0;w=0;do{Qi(l,e,w,u,m,n);A=(w<<2)+v<<2;D=b+A|0;E=l;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(A+h)|0;E=p;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(A+q)|0;E=r;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(A+s)|0;E=t;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));w=w+1|0}while((w|0)!=(m|0))}u=u+1|0}while((u|0)!=(n|0));i=k;return}case 4:{if(!n){i=k;return}u=(m|0)==0;t=l+1|0;s=l+2|0;r=l+16|0;q=h<<1;p=l+32|0;o=h*3|0;w=l+48|0;v=m<<4;A=e;y=0;while(1){if(u)J=A;else{z=aa(y,h)|0;B=A;C=0;do{Gi(t,B);Gi(s,B+8|0);K=0;do{L=K<<2;M=+(d[l+(L|2)>>0]|0|0)*2.0/255.0+-1.0;N=+(d[l+(L|1)>>0]|0|0)*2.0/255.0+-1.0;a[l+L>>0]=~~((+Q(+(1.0-M*M-N*N))+1.0)*255.0*.5);a[l+(L|3)>>0]=0;K=K+1|0}while((K|0)!=16);B=B+16|0;K=(C<<2)+z<<2;D=b+K|0;E=l;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(K+h)|0;E=r;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(K+q)|0;E=p;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(K+o)|0;E=w;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));C=C+1|0}while((C|0)!=(m|0));J=A+v|0}y=y+1|0;if((y|0)==(n|0))break;else A=J}i=k;return}case 2:{if(!n){i=k;return}A=(m|0)==0;y=l+3|0;v=l+16|0;w=h<<1;o=l+32|0;p=h*3|0;q=l+48|0;r=m<<4;s=e;t=0;while(1){if(A)O=s;else{u=aa(t,h)|0;C=s;z=0;do{Gi(y,C);Ei(l,C+8|0);C=C+16|0;B=(z<<2)+u<<2;D=b+B|0;E=l;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+h)|0;E=v;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+w)|0;E=o;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(B+p)|0;E=q;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));z=z+1|0}while((z|0)!=(m|0));O=s+r|0}t=t+1|0;if((t|0)==(n|0))break;else s=O}i=k;return}case 9:{if((f|0)==0|(g|0)==0){i=k;return}s=b;t=0;while(1){r=s;q=0;while(1){c[r>>2]=((q^t)&16|0)!=0?-16711936:-16777216;q=q+1|0;if((q|0)==(f|0))break;else r=r+4|0}t=t+1|0;if((t|0)==(g|0))break;else s=s+(f<<2)|0}i=k;return}case 10:{if((f|0)==0|(g|0)==0){i=k;return}s=b;t=0;while(1){r=s;q=0;while(1){c[r>>2]=((q^t)&16|0)!=0?-65536:-16777216;q=q+1|0;if((q|0)==(f|0))break;else r=r+4|0}t=t+1|0;if((t|0)==(g|0))break;else s=s+(f<<2)|0}i=k;return}case 12:{if(!n){i=k;return}s=(m|0)==0;t=l+16|0;r=h<<1;q=l+32|0;p=h*3|0;o=l+48|0;w=0;do{if(!s){v=aa(w,h)|0;y=0;do{Ni(l,e,y,w,m,n);A=(y<<2)+v<<2;D=b+A|0;E=l;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(A+h)|0;E=t;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(A+r)|0;E=q;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));D=b+(A+p)|0;E=o;F=D+16|0;do{a[D>>0]=a[E>>0]|0;D=D+1|0;E=E+1|0}while((D|0)<(F|0));y=y+1|0}while((y|0)!=(m|0))}w=w+1|0}while((w|0)!=(n|0));i=k;return}case 15:{if((f|0)==0|(g|0)==0){i=k;return}w=b;o=0;while(1){p=w;q=0;while(1){c[p>>2]=((q^o)&16|0)!=0?-16776961:-16711936;q=q+1|0;if((q|0)==(f|0))break;else p=p+4|0}o=o+1|0;if((o|0)==(g|0))break;else w=w+(f<<2)|0}i=k;return}case 16:{if((f|0)==0|(g|0)==0){i=k;return}w=b;o=0;while(1){p=w;q=0;while(1){c[p>>2]=((q^o)&16|0)!=0?-1:-16777216;q=q+1|0;if((q|0)==(f|0))break;else p=p+4|0}o=o+1|0;if((o|0)==(g|0))break;else w=w+(f<<2)|0}i=k;return}case 30:{Bi(f,g,h,e,b);i=k;return}case 29:{Wo(b|0,e|0,aa(h,g)|0)|0;i=k;return}case 11:{if((f|0)==0|(g|0)==0){i=k;return}w=b;o=0;while(1){p=w;q=0;while(1){c[p>>2]=((q^o)&16|0)!=0?-65281:-16777216;q=q+1|0;if((q|0)==(f|0))break;else p=p+4|0}o=o+1|0;if((o|0)==(g|0))break;else w=w+(f<<2)|0}i=k;return}default:{if((f|0)==0|(g|0)==0){i=k;return}w=b;o=0;while(1){p=w;q=0;while(1){c[p>>2]=((q^o)&16|0)!=0?-256:-65536;q=q+1|0;if((q|0)==(f|0))break;else p=p+4|0}o=o+1|0;if((o|0)==(g|0))break;else w=w+(f<<2)|0}i=k;return}}while(0)}function Xi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0;g=f&255;if((g|0)==30){Wo(a|0,b|0,aa(e,d)|0)|0;return}else if((g|0)==29){Bi(c,d,e,b,a);return}else{Wi(a,b,c,d,e,f);Bi(c,d,e,a,a);return}}function Yi(b,e,f,g,h,i){b=b|0;e=e|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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=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;h=c[b+8>>2]|0;j=a[b+24>>0]|0;k=j&255;l=a[b+26>>0]|0;m=a[32464+(k<<3)>>0]|0;n=d[32464+(k<<3)+3>>0]|0;o=d[32464+(k<<3)+1>>0]|0;p=d[32464+(k<<3)+2>>0]|0;q=d[32464+(k<<3)+4>>0]|0;r=d[32464+(k<<3)+5>>0]|0;if((h|0)==-1){k=c[b>>2]|0;if(!k){s=0;return s|0}else{t=k;u=0}}else{t=g;u=h}h=(a[b+27>>0]|0)!=0?6:1;g=c[b+12>>2]|0;k=c[b+16>>2]|0;v=c[b+20>>2]|0;w=a[b+25>>0]|0;x=w<<24>>24==0;y=(a[b+28>>0]|0)!=0?4:0;b=aa(q,o)|0;q=o+-1|0;z=aa(r,p)|0;r=p+-1|0;A=m&255;B=u;u=0;a:while(1){b:do if(x)C=B;else{if(u<<24>>24==e<<24>>24){D=v;E=k;F=0;G=B;H=g}else{I=v;J=k;K=0;L=B;M=g;while(1){N=q+M|0;O=N-((N>>>0)%(o>>>0)|0)|0;N=b>>>0>O>>>0?b:O;O=r+J|0;P=O-((O>>>0)%(p>>>0)|0)|0;O=z>>>0>P>>>0?z:P;P=(I|0)==0?1:I;Q=((aa(aa(aa(P,A)|0,N)|0,O)|0)>>>3)+(y+L)|0;K=K+1<<24>>24;if((K&255)>=(w&255)){C=Q;break b}else{I=P>>>1;J=O>>>1;L=Q;M=N>>>1}}}while(1){M=y+G|0;L=q+H|0;J=L-((L>>>0)%(o>>>0)|0)|0;L=b>>>0>J>>>0?b:J;J=r+E|0;I=J-((J>>>0)%(p>>>0)|0)|0;J=z>>>0>I>>>0?z:I;I=(D|0)==0?1:D;K=(aa(aa(aa(I,A)|0,L)|0,J)|0)>>>3;if(F<<24>>24==f<<24>>24){R=M;S=L;T=J;U=K;break a}N=K+M|0;F=F+1<<24>>24;if((F&255)>=(w&255)){C=N;break}else{D=I>>>1;E=J>>>1;G=N;H=L>>>1}}}while(0);u=u+1<<24>>24;if((u&255)>>>0>=h>>>0){s=0;V=11;break}else B=C}if((V|0)==11)return s|0;c[i>>2]=S;c[i+4>>2]=T;c[i+8>>2]=n;c[i+12>>2]=U;c[i+20>>2]=t+R;a[i+16>>0]=m;a[i+17>>0]=j;a[i+18>>0]=l;s=1;return s|0}function Zi(){return 0}function _i(){return}function $i(){return 0}function aj(){return}function bj(){return 0}function cj(){return}function dj(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=i;i=i+1024|0;d=c;if(!b){i=c;return}e=Vo(b|0)|0;f=b+e|0;if((e|0)>0){e=b;do{b=Vn(e,32)|0;if(!b){g=Vo(e|0)|0;h=g>>>0<1024?g:1024}else{g=b-e|0;h=g>>>0<1024?g:1024}ap(d|0,e|0,h|0)|0;a[d+h>>0]=0;e=e+(h+1)|0}while(e>>>0 >>0)}i=c;return}function ej(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return}function fj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;e=c[(b?34984+(a*20|0)+4|0:34984+(a*20|0)|0)>>2]|0;b=((zi(a)|0)&255)<<5;f=i;i=i+((1*b|0)+15&-16)|0;if(xi(a)|0){Jd(3553,0,e|0,16,16,0,b|0,f|0);i=d;return}else{Se(3553,0,e|0,16,16,0,c[34984+(a*20|0)+8>>2]|0,c[34984+(a*20|0)+12>>2]|0,f|0);i=d;return}}function gj(){var a=0,b=0;a=c[20]|0;b=Sg[c[(c[a>>2]|0)+8>>2]&3](a,595368,0,0,0)|0;Xk(b);c[60]=b;Yk(b);return c[60]|0}function hj(){var a=0,b=0;Zk(c[60]|0);a=c[20]|0;b=c[60]|0;if(!b){c[60]=0;return}Mg[c[c[b>>2]>>2]&63](b);Jg[c[(c[a>>2]|0)+12>>2]&31](a,b,0,0,0);c[60]=0;return}function ij(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=i;i=i+1040|0;g=f+8|0;h=f+4|0;j=f;k=jd()|0;c[b>>2]=k;l=c[d+8>>2]|0;m=c[e+8>>2]|0;n=c[60]|0;o=n+595248|0;p=c[o>>2]^m;q=c[o+4>>2]^l;if((a[n+595239>>0]|0)!=0?(n=c[22]|0,o=Ug[c[(c[n>>2]|0)+16>>2]&15](n,p,q)|0,(o|0)!=0):0){n=c[20]|0;r=Sg[c[(c[n>>2]|0)+8>>2]&3](n,o,0,0,0)|0;n=c[22]|0;if(Sg[c[(c[n>>2]|0)+20>>2]&3](n,p,q,r,o)|0){q=(o|0)<0?2147483647:o;p=q>>>0<4?q:4;Wo(g|0,r|0,p|0)|0;jh[c[608>>2]&63](k,c[g>>2]|0,r+p|0,o-p|0)}p=c[20]|0;Jg[c[(c[p>>2]|0)+12>>2]&31](p,r,0,0,0);jj(b);i=f;return}c[j>>2]=0;r=c[d>>2]|0;do if(r){gd(c[b>>2]|0,r|0);p=c[e>>2]|0;if(p)gd(c[b>>2]|0,p|0);md(c[b>>2]|0);bf(c[b>>2]|0,35714,j|0);if((c[j>>2]|0)==0?(lc(c[b>>2]|0,1024,0,g|0),(c[j>>2]|0)==0):0)break;p=c[60]|0;o=c[b>>2]|0;k=p+595248|0;q=c[k>>2]^m;n=c[k+4>>2]^l;if((a[p+595239>>0]|0)!=0?(bf(o|0,34625,g|0),p=c[g>>2]|0,(p|0)>0):0){k=p+4|0;p=c[20]|0;s=Sg[c[(c[p>>2]|0)+8>>2]&3](p,k,0,0,0)|0;Jg[c[600>>2]&31](o,c[g>>2]|0,0,h,s+4|0);c[s>>2]=c[h>>2];o=c[22]|0;Jg[c[(c[o>>2]|0)+24>>2]&31](o,q,n,s,k);k=c[20]|0;Jg[c[(c[k>>2]|0)+12>>2]&31](k,s,0,0,0)}jj(b);ud(c[b>>2]|0,c[d>>2]|0);s=c[e>>2]|0;if(!s){i=f;return}ud(c[b>>2]|0,s|0);i=f;return}while(0);Kd(c[b>>2]|0);a[b+4>>0]=16;c[b>>2]=0;i=f;return}function jj(e){e=e|0;var f=0,g=0,h=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,x=0,y=0,z=0,A=0,B=0,C=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;f=i;i=i+80|0;g=f+70|0;h=f+64|0;j=f+60|0;k=f+56|0;l=f+52|0;m=f+48|0;n=f+44|0;o=f+40|0;p=f+28|0;q=f+16|0;r=f+12|0;s=f+8|0;t=f+68|0;u=f+4|0;v=f;c[h>>2]=0;c[j>>2]=0;c[k>>2]=0;w=(a[36252]|0)!=0&(a[36292]|0)!=0;if(w){jh[c[792>>2]&63](c[e>>2]|0,37603,37621,h);jh[c[792>>2]&63](c[e>>2]|0,37601,37621,j);jh[c[792>>2]&63](c[e>>2]|0,37605,37621,k);x=e}else{bf(c[e>>2]|0,35721,h|0);bf(c[e>>2]|0,35718,j|0);x=e}bf(c[x>>2]|0,35722,l|0);bf(c[x>>2]|0,35719,m|0);y=c[l>>2]|0;l=c[m>>2]|0;m=(y>>>0>l>>>0?y:l)+1|0;l=i;i=i+((1*m|0)+15&-16)|0;if((c[h>>2]|0)>0){y=0;do{we(c[x>>2]|0,y|0,m|0,0,n|0,o|0,l|0);y=y+1|0}while((y|0)<(c[h>>2]|0))}h=e+280|0;a[h>>0]=0;y=e+176|0;a[y>>0]=0;a:do if((c[j>>2]|0)>0){o=p+4|0;n=p+8|0;z=e+180|0;A=0;while(1){c[q>>2]=c[9286];c[q+4>>2]=c[9287];c[q+8>>2]=c[9288];if(w){Vg[c[808>>2]&7](c[x>>2]|0,37601,A,3,q,3,0,p);Wg[c[816>>2]&7](c[x>>2]|0,37601,A,m,0,l);c[r>>2]=c[p>>2];B=c[o>>2]|0;C=c[n>>2]|0;c[s>>2]=C;D=C;E=B}else{kf(c[x>>2]|0,A|0,m|0,0,s|0,r|0,l|0);B=Ff(c[x>>2]|0,l|0)|0;D=c[s>>2]|0;E=B}c[s>>2]=D>>>0>1?D:1;B=Vn(l,91)|0;if((B|0)!=0?(a[B>>0]=0,C=Vn(B+1|0,93)|0,(C|0)!=0):0)a[C>>0]=0;switch(c[r>>2]|0){case 36966:case 36955:case 36944:case 36964:case 36953:case 36942:case 36963:case 36952:case 36941:case 36962:case 36951:case 36940:case 35682:case 36308:case 36300:case 35680:case 36307:case 36299:case 35679:case 36306:case 36298:case 35678:{c[e+112+(d[y>>0]<<2)>>2]=E;a[y>>0]=(a[y>>0]|0)+1<<24>>24;break}default:{}}C=Sh(l)|0;if((C|0)==12){B=_k((c[60]|0)+593036|0,l)|0;if(B){F=c[z>>2]|0;if(!F){G=c[20]|0;H=Sg[c[(c[G>>2]|0)+8>>2]&3](G,1024,0,0,0)|0;c[H>>2]=1016;G=H+8|0;a[G>>0]=1;a[G+1>>0]=0;a[G+2>>0]=0;a[G+3>>0]=0;c[H+4>>2]=0;c[z>>2]=H;I=H}else I=F;F=c[r>>2]|0;if((F|0)==35666|(F|0)==35665|(F|0)==35664|(F|0)==5126)J=2;else if((F|0)==35675)J=3;else if((F|0)==35676)J=4;else if((F|0)==36955|(F|0)==36944|(F|0)==36964|(F|0)==36953|(F|0)==36942|(F|0)==36963|(F|0)==36952|(F|0)==36941|(F|0)==36962|(F|0)==36951|(F|0)==36940|(F|0)==35682|(F|0)==36308|(F|0)==36300|(F|0)==35680|(F|0)==36307|(F|0)==36299|(F|0)==35679|(F|0)==36306|(F|0)==36298|(F|0)==35678|(F|0)==36966|(F|0)==5125|(F|0)==5124)J=0;else J=1;b[t>>1]=b[B+8>>1]|0;B=c[s>>2]&65535;b[g>>1]=b[t>>1]|0;Wh(I,J,0,g,B);B=c[z>>2]|0;F=B+4|0;H=c[F>>2]|0;if((H+4|0)>>>0<(c[B>>2]|0)>>>0){G=B+8+H|0;a[G>>0]=E;a[G+1>>0]=E>>8;a[G+2>>0]=E>>16;a[G+3>>0]=E>>24;c[F>>2]=(c[F>>2]|0)+4}}}else{c[e+184+(d[h>>0]<<3)>>2]=E;F=a[h>>0]|0;G=F&255;b[e+184+(G<<3)+4>>1]=c[s>>2];a[e+184+(G<<3)+6>>0]=C;a[h>>0]=F+1<<24>>24}A=A+1|0;if((A|0)>=(c[j>>2]|0)){K=z;break a}}}else K=e+180|0;while(0);j=c[K>>2]|0;if(j){K=j+4|0;h=c[K>>2]|0;if((h+4|0)>>>0<(c[j>>2]|0)>>>0){s=j+8+h|0;a[s>>0]=1;a[s+1>>0]=0;a[s+2>>0]=0;a[s+3>>0]=0;c[K>>2]=(c[K>>2]|0)+4}c[K>>2]=0}if(w?(c[v>>2]=37626,(c[k>>2]|0)>0):0){w=0;do{Vg[c[808>>2]&7](c[x>>2]|0,37605,w,1,v,1,0,u);Wg[c[816>>2]&7](c[x>>2]|0,37605,w,m,0,l);w=w+1|0}while((w|0)<(c[k>>2]|0))}k=e+24|0;w=k+64|0;do{c[k>>2]=-1;k=k+4|0}while((k|0)<(w|0));k=0;w=0;while(1){l=nb(c[x>>2]|0,c[37160+(k<<2)>>2]|0)|0;if((l|0)==-1)L=w;else{c[e+24+(k<<2)>>2]=l;a[e+4+w>>0]=k;L=w+1|0}k=k+1|0;if((k|0)==16){M=L;break}else w=L}a[e+4+M>>0]=16;M=nb(c[x>>2]|0,37224)|0;if((M|0)==-1)N=0;else{c[e+88>>2]=M;N=1}M=nb(c[x>>2]|0,37232)|0;if((M|0)==-1)O=N;else{c[e+88+(N<<2)>>2]=M;O=N+1|0}N=nb(c[x>>2]|0,37240)|0;if((N|0)==-1)P=O;else{c[e+88+(O<<2)>>2]=N;P=O+1|0}O=nb(c[x>>2]|0,37248)|0;if((O|0)==-1)Q=P;else{c[e+88+(P<<2)>>2]=O;Q=P+1|0}P=nb(c[x>>2]|0,37256)|0;if((P|0)==-1){R=Q;S=e+88+(R<<2)|0;c[S>>2]=65535;i=f;return}c[e+88+(Q<<2)>>2]=P;R=Q+1|0;S=e+88+(R<<2)|0;c[S>>2]=65535;i=f;return}function kj(b){b=b|0;var d=0,e=0,f=0,g=0;d=b+180|0;e=c[d>>2]|0;if(e){f=c[20]|0;Jg[c[(c[f>>2]|0)+12>>2]&31](f,e,0,0,0);c[d>>2]=0}a[b+280>>0]=0;if(c[b>>2]|0){Ja(0);Kd(c[b>>2]|0);c[b>>2]=0}d=(c[60]|0)+595144|0;e=b+284|0;f=c[c[b+288>>2]>>2]|0;if(!f){al(e);return}else g=f;do{$k(d,c[g>>2]|0);g=c[g+4>>2]|0}while((g|0)!=0);al(e);return}function lj(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;j=i;i=i+16|0;k=j+6|0;l=j;m=j+5|0;n=j+4|0;o=a[f+4>>0]|0;if(o<<24>>24==16){i=j;return}p=g+4|0;q=o&255;o=0;while(1){r=c[f+24+(q<<2)>>2]|0;Ch(g,q,k,l,m,n);do if((r|0)!=-1)if((b[g+38+(q<<1)>>1]|0)==-1){ob(r|0);break}else{me(r|0);Ng[c[616>>2]&63](r,0);s=e[p>>1]|0;t=aa(s,h)|0;ec(r|0,d[k>>0]|0,c[37264+(c[l>>2]<<2)>>2]|0,a[m>>0]|0,s|0,t+(e[g+6+(q<<1)>>1]|0)|0);break}while(0);o=o+1|0;r=a[f+4+o>>0]|0;if(r<<24>>24==16)break;else q=r&255}i=j;return}function mj(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;c[b+8>>2]=e;a[b+40>>0]=j;l=b+20|0;c[l>>2]=k;m=b+28|0;c[m>>2]=f;n=b+32|0;c[n>>2]=g;c[b+36>>2]=h;c[b+24>>2]=-1;o=b+41|0;a[o>>0]=i;p=b+42|0;a[p>>0]=i;q=(k&32768|0)!=0;r=(k&1048576|0)==0;if(q)s=k;else{Kf(1,b|0);de(e|0,c[b>>2]|0);t=i&255;i=b+12|0;c[i>>2]=c[34984+(t*20|0)+8>>2];u=b+16|0;c[u>>2]=c[34984+(t*20|0)+12>>2];t=a[o>>0]|0;if(t<<24>>24==29&(a[35580]|0)==0)v=(a[(c[60]|0)+595240>>0]|0)==0;else v=0;if(xi(t&255)|0){t=a[p>>0]|0;if(v|t<<24>>24!=(a[o>>0]|0))w=9;else{x=t;w=8}}else if(v)w=9;else{x=a[o>>0]|0;w=8}if((w|0)==8?(a[34984+((x&255)*20|0)+16>>0]|0)==0:0)w=9;if((w|0)==9){a[p>>0]=30;c[i>>2]=c[8898];c[u>>2]=c[8899]}do if(!r)if((e|0)==32879){Wg[c[528>>2]&7](32879,j&255,c[34984+((d[p>>0]|0)*20|0)>>2]|0,c[m>>2]|0,c[n>>2]|0,h);break}else{Jg[c[520>>2]&31](e,j&255,c[34984+((d[p>>0]|0)*20|0)>>2]|0,c[m>>2]|0,c[n>>2]|0);break}while(0);nj(b,k);s=c[l>>2]|0}if((s&61440|0)!=0?(l=s>>>12&7,s=(l|0)!=0?l+-1|0:0,l=c[(c[60]|0)+595228>>2]|0,k=(s|0)==0?0:1< >>0>k>>>0?k:l)|0)==0,q|s^1):0){l=b+4|0;Df(1,l|0);sc(36161,c[l>>2]|0);if(s)Lf(36161,c[37288+(d[p>>0]<<2)>>2]|0,f|0,g|0);sc(36161,0);if(q){y=0;return y|0}}y=1;return y|0}function nj(b,e){b=b|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,l=0.0;f=(a[37488+(d[b+42>>0]|0)>>0]|0)==0?e&640|1344:e;if(!(f&268435456))h=f;else h=c[b+20>>2]|0;f=h&985087;e=b+24|0;if((f|0)==(c[e>>2]|0))return;i=b+8|0;j=c[i>>2]|0;k=a[b+40>>0]|0;wg(j|0,10242,c[37544+((h&3)<<2)>>2]|0);wg(j|0,10243,c[37544+((h>>>2&3)<<2)>>2]|0);if(a[36068]|0)wg(j|0,33085,(k&255)+-1|0);if((j|0)==32879)wg(32879,32882,c[37544+((h>>>4&3)<<2)>>2]|0);b=c[37576+((h>>>6&3)*12|0)+(((k&255)>1?(h>>>10&1)+1|0:0)<<2)>>2]|0;wg(j|0,10240,c[37560+((h>>>8&3)<<2)>>2]|0);wg(j|0,10241,b|0);if((h&640|0)!=0?(l=+g[(c[60]|0)+595220>>2],l>0.0):0)Fg(j|0,34046,+l);do if(a[(c[60]|0)+595238>>0]|0){j=h>>>16&15;b=c[i>>2]|0;if(!j){wg(b|0,34892,0);break}else{wg(b|0,34892,34894);wg(c[i>>2]|0,34893,c[37616+(j<<2)>>2]|0);break}}while(0);c[e>>2]=f;return}function oj(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=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,x=0,y=0,z=0,A=0,B=0,C=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,X=0;h=i;i=i+64|0;j=h+24|0;k=h;l=e+4|0;if(Vi(j,c[e>>2]|0,c[l>>2]|0)|0){m=g&255;g=d[j+25>>0]|0;n=g+-1|0;o=m>>>0>n>>>0?n:m;m=o&255;n=g-o|0;g=j+24|0;p=Ai(d[g>>0]|0)|0;q=d[p+1>>0]|0;r=(c[j+12>>2]|0)>>>m;s=q>>>0>r>>>0?q:r;r=d[p+2>>0]|0;p=(c[j+16>>2]|0)>>>m;m=r>>>0>p>>>0?r:p;p=j+20|0;r=c[p>>2]|0;q=j+27|0;if(!(mj(b,(a[q>>0]|0)==0?(r>>>0>1?32879:3553):34067,s,m,r,a[g>>0]|0,n&255,f)|0)){i=h;return}f=c[b+20>>2]|0;g=(f&1048576|0)==0;r=b+8|0;t=c[r>>2]|0;u=(t|0)==34067?34069:t;t=b+42|0;v=d[t>>0]|0;w=c[((f&2097152|0)==0?34984+(v*20|0)|0:34984+(v*20|0)+4|0)>>2]|0;v=b+41|0;f=a[v>>0]|0;if(f<<24>>24==29&(a[35580]|0)==0)x=(a[(c[60]|0)+595240>>0]|0)==0;else x=0;y=xi(f&255)|0;f=x|(a[t>>0]|0)!=(a[v>>0]|0);if(f){v=c[20]|0;x=aa(s<<2,m)|0;z=Sg[c[(c[v>>2]|0)+8>>2]&3](v,x,0,0,0)|0}else z=0;x=(a[q>>0]|0)!=0?6:1;q=n&255;n=(q|0)==0;v=f|y^1;A=k+20|0;B=k+4|0;C=k+17|0;D=b+12|0;E=b+16|0;F=k+12|0;G=0;H=0;do{if(!n){I=G+u|0;J=(I|0)==32879;K=0;L=c[p>>2]|0;M=m;N=0;O=s;while(1){P=(O|0)==0?1:O;Q=(M|0)==0?1:M;R=(L|0)==0?1:L;do if(Yi(j,H,K+o&255,c[e>>2]|0,c[l>>2]|0,k)|0){if(!v){S=c[F>>2]|0;T=c[A>>2]|0;if(J){$g[c[504>>2]&7](32879,K,w,P,Q,R,0,S,T);break}else{Jd(I|0,K|0,w|0,P|0,Q|0,0,S|0,T|0);break}}T=c[A>>2]|0;if(f){S=c[k>>2]|0;Xi(z,T,S,c[B>>2]|0,S<<2,a[C>>0]|0);U=z}else U=T;T=c[D>>2]|0;S=c[E>>2]|0;if(J){ah[c[488>>2]&0](32879,K,w,P,Q,R,0,T,S,U);break}else{Se(I|0,K|0,w|0,P|0,Q|0,0,T|0,S|0,U|0);break}}else if(g)if(y){S=(P+3|0)>>>2;T=(Q+3|0)>>>2;V=(zi(d[t>>0]|0)|0)&255;W=(aa(aa((S|0)==0?16:S<<4,(T|0)==0?1:T)|0,V)|0)>>>3;if(J){$g[c[504>>2]&7](32879,K,w,P,Q,R,0,W,0);break}else{Jd(I|0,K|0,w|0,P|0,Q|0,0,W|0,0);break}}else{W=c[D>>2]|0;V=c[E>>2]|0;if(J){ah[c[488>>2]&0](32879,K,w,P,Q,R,0,W,V,0);break}else{Se(I|0,K|0,w|0,P|0,Q|0,0,W|0,V|0,0);break}}while(0);N=N+1<<24>>24;K=N&255;if(K>>>0>=q>>>0)break;else{L=R>>>1;M=Q>>>1;O=P>>>1}}}H=H+1<<24>>24;G=H&255}while(G>>>0>>0);if(!z)X=r;else{x=c[20]|0;Jg[c[(c[x>>2]|0)+12>>2]&31](x,z,0,0,0);X=r}}else X=b+8|0;de(c[X>>2]|0,0);i=h;return}function pj(b,f,g,h,i,j,k,l){b=b|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;m=b+42|0;n=(zi(d[m>>0]|0)|0)&255;o=h+4|0;p=(aa(e[o>>1]|0,n)|0)>>>3;q=k<<16>>16==-1?p:k&65535;k=b+8|0;de(c[k>>2]|0,c[b>>2]|0);Qf(3317,1);r=c[k>>2]|0;k=(r|0)==34067?34069:r;r=b+41|0;s=a[r>>0]|0;if(s<<24>>24==29&(a[35580]|0)==0)t=(a[(c[60]|0)+595240>>0]|0)==0;else t=0;u=(a[36764]|0)!=0;v=xi(s&255)|0;if(v?(a[m>>0]|0)!=(a[r>>0]|0):0)w=1;else w=t;t=e[o>>1]|0;m=h+6|0;s=e[m>>1]|0;x=w|u^1;if(!x)if(u){Qf(3314,(q<<3>>>0)/(n>>>0)|0|0);y=0}else y=0;else{z=c[20]|0;A=aa(s,p)|0;y=Sg[c[(c[z>>2]|0)+8>>2]&3](z,A,0,0,0)|0}A=c[l>>2]|0;do if(v){if(u)B=A;else{Ci(t,s,n,q,A,y);B=y}z=k+(f&255)|0;p=g&255;C=e[h>>1]|0;D=e[h+2>>1]|0;E=e[o>>1]|0;F=e[m>>1]|0;G=c[b+12>>2]|0;H=c[l+4>>2]|0;if((z|0)==32879){Qg[c[512>>2]&0](32879,p,C,D,i&65535,E,F,j&65535,G,H,B);break}else{ff(z|0,p|0,C|0,D|0,E|0,F|0,G|0,H|0,B|0);break}}else{if(!w)if(u)I=A;else{Ci(t,s,n,q,A,y);I=y}else{Xi(y,A,t,s,q,a[r>>0]|0);I=y}H=k+(f&255)|0;G=g&255;F=e[h>>1]|0;E=e[h+2>>1]|0;D=e[o>>1]|0;C=e[m>>1]|0;p=c[b+12>>2]|0;z=c[b+16>>2]|0;if((H|0)==32879){Qg[c[496>>2]&0](32879,G,F,E,i&65535,D,C,j&65535,p,z,I);break}else{Hg(H|0,G|0,F|0,E|0,D|0,C|0,p|0,z|0,I|0);break}}while(0);if(!x)Qf(3314,0);if(!y)return;x=c[20]|0;Jg[c[(c[x>>2]|0)+12>>2]&31](x,y,0,0,0);return}function qj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+528|0;f=e+16|0;g=e;c[g>>2]=d;d=Io(f,512,b,g)|0;Ug[c[(c[a>>2]|0)+8>>2]&15](a,f,d)|0;i=e;return}function rj(f,g){f=f|0;g=g|0;var h=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,x=0,y=0,z=0,A=0,B=0,C=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,X=0,Y=0,Z=0,_=0,$=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0;h=i;i=i+1264|0;j=h+1080|0;k=h+1072|0;l=h+1064|0;m=h+1056|0;n=h+32|0;o=h;p=h+1104|0;q=h+1100|0;r=h+1112|0;s=h+1250|0;t=h+1249|0;u=h+1248|0;v=h+1110|0;w=h+1108|0;x=h+1096|0;y=h+1092|0;z=h+1120|0;A=h+1114|0;B=h+1088|0;C=h+1084|0;D=c[g>>2]|0;E=c[g+4>>2]|0;c[o>>2]=34928;c[o+4>>2]=34952;g=o+8|0;c[g>>2]=D;F=o+16|0;G=F;c[G>>2]=0;c[G+4>>2]=0;G=o+24|0;c[G>>2]=E;c[G+4>>2]=0;G=D;H=n+4|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;if(!(D&3))wk(n,G,E);else vk(n,G,E);E=aa(c[H>>2]|0,1540483477)|0;G=aa(E>>>24^E,1540483477)|0;c[H>>2]=G;H=G^(aa(c[n>>2]|0,1540483477)|0);G=aa(c[n+12>>2]|0,1540483477)|0;E=(aa(H,1540483477)|0)^(aa(G>>>24^G,1540483477)|0);G=aa(E>>>13^E,1540483477)|0;c[f+8>>2]=G>>>15^G;Ug[c[(c[o>>2]|0)+8>>2]&15](o,p,4)|0;G=c[p>>2]|0;if((G|0)==38294339)c[f+4>>2]=37305;else if((G|0)==71848790)c[f+4>>2]=35633;else if((G|0)==71848774)c[f+4>>2]=35632;else{c[m>>2]=G;Gh(2,37656,m)}Ug[c[(c[o>>2]|0)+8>>2]&15](o,q,4)|0;Ug[c[(c[o>>2]|0)+8>>2]&15](o,r,2)|0;q=c[(c[o>>2]|0)+8>>2]|0;if(!(b[r>>1]|0))I=q;else{m=q;q=0;while(1){Ug[m&15](o,s,1)|0;Ug[c[(c[o>>2]|0)+8>>2]&15](o,n,d[s>>0]|0)|0;a[n+(d[s>>0]|0)>>0]=0;Ug[c[(c[o>>2]|0)+8>>2]&15](o,t,1)|0;Ug[c[(c[o>>2]|0)+8>>2]&15](o,u,1)|0;Ug[c[(c[o>>2]|0)+8>>2]&15](o,v,2)|0;Ug[c[(c[o>>2]|0)+8>>2]&15](o,w,2)|0;q=q+1|0;G=c[(c[o>>2]|0)+8>>2]|0;if(q>>>0>=(e[r>>1]|0)>>>0){I=G;break}else m=G}}Ug[I&15](o,x,4)|0;x=f+4|0;o=Eg(c[x>>2]|0)|0;c[f>>2]=o;I=(c[g>>2]|0)+(c[F>>2]|0)|0;c[y>>2]=I;if(!o){i=h;return}if((c[x>>2]|0)==37305)J=o;else{o=Vo(I|0)|0;I=o+4096|0;F=i;i=i+((1*I|0)+15&-16)|0;g=n+40|0;c[n+8>>2]=g;m=n+12|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[m+20>>2]=0;c[m+24>>2]=0;c[n>>2]=12144;c[n+4>>2]=12168;c[g>>2]=12192;c[n+44>>2]=F;c[n+48>>2]=I;xk(n,37688,50)|0;if(!(a[36988]|0))K=0;else{I=c[y>>2]|0;g=c[9436]|0;a:do if(!g)L=0;else{m=37744;r=g;while(1){q=Vo(r|0)|0;w=Yn(I,r)|0;if(w){v=w;do{if((v|0)!=(I|0)?(w=a[v+-1>>0]|0,w<<24>>24==95|(Qn(w<<24>>24)|0)!=0):0)M=v+q|0;else{w=v+q|0;u=a[w>>0]|0;if(u<<24>>24==95|(Qn(u<<24>>24)|0)!=0)M=w;else{L=v;break a}}v=Yn(M,r)|0}while((v|0)!=0)}m=m+4|0;r=c[m>>2]|0;if(!r){L=0;break}}}while(0);K=(L|0)!=0}L=c[y>>2]|0;M=Yn(L,37760)|0;if(!M){N=L;O=0}else{I=M;while(1){if((I|0)!=(L|0)?(M=a[I+-1>>0]|0,M<<24>>24==95|(Qn(M<<24>>24)|0)!=0):0)P=I+11|0;else{M=I+11|0;g=a[M>>0]|0;if(g<<24>>24==95|(Qn(g<<24>>24)|0)!=0)P=M;else{Q=I;break}}I=Yn(P,37760)|0;if(!I){Q=0;break}}N=c[y>>2]|0;O=Q}Q=(O|0)==0;O=Yn(N,37776)|0;if(!O){R=N;S=0}else{I=O;while(1){if((I|0)!=(N|0)?(O=a[I+-1>>0]|0,O<<24>>24==95|(Qn(O<<24>>24)|0)!=0):0)T=I+12|0;else{O=I+12|0;P=a[O>>0]|0;if(P<<24>>24==95|(Qn(P<<24>>24)|0)!=0)T=O;else{U=I;break}}I=Yn(T,37776)|0;if(!I){U=0;break}}R=c[y>>2]|0;S=U}U=(S|0)==0;S=c[9448]|0;b:do if(!S)V=0;else{I=37792;T=S;while(1){N=Vo(T|0)|0;O=Yn(R,T)|0;if(O){P=O;do{if((P|0)!=(R|0)?(O=a[P+-1>>0]|0,O<<24>>24==95|(Qn(O<<24>>24)|0)!=0):0)W=P+N|0;else{O=P+N|0;L=a[O>>0]|0;if(L<<24>>24==95|(Qn(L<<24>>24)|0)!=0)W=O;else{V=P;break b}}P=Yn(W,T)|0}while((P|0)!=0)}I=I+4|0;T=c[I>>2]|0;if(!T){V=0;break}}}while(0);W=(V|0)==0;if(!(a[36996]|0))X=0;else{V=c[y>>2]|0;R=c[9452]|0;c:do if(!R)Y=0;else{S=37808;T=R;while(1){I=Vo(T|0)|0;P=Yn(V,T)|0;if(P){N=P;do{if((N|0)!=(V|0)?(P=a[N+-1>>0]|0,P<<24>>24==95|(Qn(P<<24>>24)|0)!=0):0)Z=N+I|0;else{P=N+I|0;O=a[P>>0]|0;if(O<<24>>24==95|(Qn(O<<24>>24)|0)!=0)Z=P;else{Y=N;break c}}N=Yn(Z,T)|0}while((N|0)!=0)}S=S+4|0;T=c[S>>2]|0;if(!T){Y=0;break}}}while(0);X=(Y|0)!=0}Y=c[y>>2]|0;Z=c[9458]|0;d:do if(!Z)_=0;else{V=37832;R=Z;while(1){T=Vo(R|0)|0;S=Yn(Y,R)|0;if(S){N=S;do{if((N|0)!=(Y|0)?(S=a[N+-1>>0]|0,S<<24>>24==95|(Qn(S<<24>>24)|0)!=0):0)$=N+T|0;else{S=N+T|0;I=a[S>>0]|0;if(I<<24>>24==95|(Qn(I<<24>>24)|0)!=0)$=S;else{_=N;break d}}N=Yn($,R)|0}while((N|0)!=0)}V=V+4|0;R=c[V>>2]|0;if(!R){_=0;break}}}while(0);$=(_|0)==0;_=c[y>>2]|0;Y=Yn(_,37848)|0;e:do if(!Y)ba=0;else{Z=Y;while(1){if((Z|0)!=(_|0)?(R=a[Z+-1>>0]|0,R<<24>>24==95|(Qn(R<<24>>24)|0)!=0):0)ca=Z+27|0;else{R=Z+27|0;V=a[R>>0]|0;if(V<<24>>24==95|(Qn(V<<24>>24)|0)!=0)ca=R;else{ba=Z;break e}}Z=Yn(ca,37848)|0;if(!Z){ba=0;break}}}while(0);ca=(ba|0)==0;if(K)Ug[c[(c[n>>2]|0)+8>>2]&15](n,37880,48)|0;if(!Q)Ug[c[(c[n>>2]|0)+8>>2]&15](n,37936,40)|0;if(!U)if(!(a[36572]|0))da=1;else{Ug[c[(c[n>>2]|0)+8>>2]&15](n,37984,77)|0;c[l>>2]=(a[36940]|0)!=0?38064:38072;bl(z,128,38080,l)|0;l=Vo(z|0)|0;Ug[c[(c[n>>2]|0)+8>>2]&15](n,z,l)|0;da=0}else da=0;do if(!W){l=c[(c[n>>2]|0)+8>>2]|0;if(!(a[(c[60]|0)+595238>>0]|0)){Ug[l&15](n,38224,216)|0;break}else{Ug[l&15](n,38112,109)|0;break}}while(0);if(X)Ug[c[(c[n>>2]|0)+8>>2]&15](n,38448,38)|0;do if(!$){X=c[(c[n>>2]|0)+8>>2]|0;if(!(a[36644]|0)){Ug[X&15](n,38664,237)|0;break}else{Ug[X&15](n,38488,169)|0;break}}while(0);do if(!ca){$=c[(c[n>>2]|0)+8>>2]|0;if(!(a[36844]|0)){Ug[$&15](n,38960,38)|0;break}else{Ug[$&15](n,38904,54)|0;break}}while(0);c[k>>2]=(c[x>>2]|0)==35632?38072:38064;qj(n,39e3,k);Ug[c[(c[n>>2]|0)+8>>2]&15](n,c[y>>2]|0,o)|0;a[A>>0]=0;Ug[c[(c[n>>2]|0)+8>>2]&15](n,A,1)|0;f:do if(da){A=Yn(F,39024)|0;if(!A)break;o=Vn(A,123)|0;if(!o)break;else{ea=o;fa=0}while(1){A=ea;while(1){k=a[A>>0]|0;x=A+1|0;if(k<<24>>24==123){ga=x;ha=96;break}else if(k<<24>>24==125){ia=x;ja=A;ha=98;break}else if(!(k<<24>>24))break f;else A=x}if((ha|0)==96){ha=0;ka=ga;la=fa+1|0}else if((ha|0)==98){ha=0;A=fa+-1|0;if(!A){ma=ja;break}else{ka=ia;la=A}}if((la|0)>-1){ea=ka;fa=la}else break f}if(!ma)break;A=o+1|0;_o(o+32|0,A|0,(Vo(A|0)|0)+1|0)|0;x=A;A=39040;k=x+31|0;do{a[x>>0]=a[A>>0]|0;x=x+1|0;A=A+1|0}while((x|0)<(k|0))}while(0);ma=Yn(F,37776)|0;g:do if(ma){la=ma;while(1){do if((la|0)==(F|0))ha=105;else{fa=a[la+-1>>0]|0;if(!(fa<<24>>24==95|(Qn(fa<<24>>24)|0)!=0)){ha=105;break}na=la+12|0}while(0);if((ha|0)==105){ha=0;fa=la+12|0;ka=a[fa>>0]|0;if(ka<<24>>24==95|(Qn(ka<<24>>24)|0)!=0)na=fa;else{oa=la;break}}la=Yn(na,37776)|0;if(!la)break g}la=oa+2|0;_o(la|0,oa|0,(Vo(oa|0)|0)+1|0)|0;a[oa>>0]=98;a[oa+1>>0]=103;a[la>>0]=102;a[la+1>>0]=120;la=Yn(oa,37776)|0;if(!la)break;else{pa=la;qa=oa}while(1){la=pa;while(1){do if((la|0)==(qa|0))ha=113;else{fa=a[la+-1>>0]|0;if(!(fa<<24>>24==95|(Qn(fa<<24>>24)|0)!=0)){ha=113;break}ra=la+12|0}while(0);if((ha|0)==113){ha=0;fa=la+12|0;ka=a[fa>>0]|0;if(ka<<24>>24==95|(Qn(ka<<24>>24)|0)!=0)ra=fa;else{sa=la;break}}la=Yn(ra,37776)|0;if(!la)break g}la=sa+2|0;_o(la|0,sa|0,(Vo(sa|0)|0)+1|0)|0;a[sa>>0]=98;a[sa+1>>0]=103;a[la>>0]=102;a[la+1>>0]=120;la=Yn(sa,37776)|0;if(!la)break;else{pa=la;qa=sa}}}while(0);c[y>>2]=F;J=c[f>>2]|0}Mb(J|0,1,y|0,0);Xf(c[f>>2]|0);c[B>>2]=0;Tf(c[f>>2]|0,35713,B|0);if(c[B>>2]|0){i=h;return}gb(c[f>>2]|0,1024,C|0,n|0);_e(c[f>>2]|0);c[f>>2]=0;Gh(2,39072,j);i=h;return}function sj(e){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,x=0;f=c[e+4>>2]|0;if(!f)return;td(36160,f|0);f=e+23|0;g=a[f>>0]|0;if(g<<24>>24){h=e+12|0;i=e+16|0;j=g;g=0;k=0;l=0;while(1){m=b[e+24+(k<<1)>>1]|0;if(m<<16>>16==-1){n=j;o=g;p=l}else{q=m&65535;m=c[60]|0;r=m+405644+(q*44|0)|0;if(!g){c[h>>2]=c[m+405644+(q*44|0)+28>>2];c[i>>2]=c[m+405644+(q*44|0)+32>>2]}s=d[m+405644+(q*44|0)+42>>0]|0;if(yi(s)|0){t=Ai(s)|0;if(!(a[t+7>>0]|0)){u=(a[t+6>>0]|0)==0?36128:36096;v=g}else{u=33306;v=g}}else{u=g+36064|0;v=g+1|0}t=m+405644+(q*44|0)+4|0;s=c[t>>2]|0;if(!s)gg(36160,u|0,c[m+405644+(q*44|0)+8>>2]|0,c[r>>2]|0,0);else Nb(36160,u|0,36161,s|0);if(!(c[t>>2]|0))w=0;else w=(c[r>>2]|0)!=0;n=a[f>>0]|0;o=v;p=l|w}k=k+1|0;if(k>>>0>=(n&255)>>>0)break;else{j=n;g=o;l=p}}a[e+22>>0]=o;Qd(36160)|0;if(p){p=e+8|0;vd(1,p|0);td(36160,c[p>>2]|0);if(a[f>>0]|0){p=0;o=0;while(1){l=b[e+24+(o<<1)>>1]|0;if((l<<16>>16!=-1?(g=l&65535,l=c[60]|0,n=l+405644+(g*44|0)|0,(c[n>>2]|0)!=0):0)?!(yi(d[l+405644+(g*44|0)+42>>0]|0)|0):0){gg(36160,p+36064|0,c[l+405644+(g*44|0)+8>>2]|0,c[n>>2]|0,0);x=p+1|0}else x=p;o=o+1|0;if(o>>>0>=(d[f>>0]|0)>>>0)break;else p=x}}Qd(36160)|0}}else{a[e+22>>0]=0;Qd(36160)|0}td(36160,c[(c[60]|0)+595264>>2]|0);return}function tj(a){a=a|0;var b=0,d=0,e=0;b=a+8|0;if(!(c[b>>2]|0))return;d=a+4|0;td(36008,c[d>>2]|0);Mg[c[720>>2]&63](36064);td(36009,c[b>>2]|0);b=c[a+12>>2]|0;e=c[a+16>>2]|0;ah[c[440>>2]&0](0,0,b,e,0,0,b,e,16384,9729);td(36008,c[d>>2]|0);Mg[c[720>>2]&63](0);td(36160,c[(c[60]|0)+595264>>2]|0);return} +function sl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=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,x=0,y=0,z=0,A=0,B=0,C=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,X=0,Y=0,Z=0,_=0,$=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0;e=i;i=i+1360|0;f=e+8|0;g=e;h=e+320|0;j=e+336|0;k=e+64|0;l=e+40|0;m=e+16|0;if(!(a[d>>0]|0)){i=e;return}n=h+4|0;o=h+12|0;p=b+4|0;q=b+8|0;r=l+12|0;s=l+8|0;t=m+12|0;u=m+8|0;v=d;a:while(1){d=0;w=v;x=j;y=0;z=0;A=32;b:while(1){B=d;C=w;D=x;E=y;F=A;c:while(1){G=B;H=C;I=E;J=F;d:while(1){K=(G|0)<64;L=H;M=I;e:while(1){if(K){N=L;O=M}else{P=G;Q=L;R=D;S=13;break b}f:while(1){T=O;while(1){U=a[N>>0]|0;if(U<<24>>24==10|U<<24>>24==0){V=G;W=N;X=D;S=36;break b}if((T|0)==1){Y=U;Z=N;break e}else if(T){_=U;$=N;ba=T;break f}if(!(yo(U<<24>>24)|0))T=1;else{ca=N;break}}while(1){T=ca+1|0;if(!(yo(a[T>>0]|0)|0)){N=T;O=1;continue f}else ca=T}}if(!(_<<24>>24)){V=G;W=$;X=D;S=36;break b}if((ba|0)==4){da=G;ea=$;fa=J;S=34;break d}else if((ba|0)==2){ga=_;ha=G;ia=$;ja=D;ka=J;break c}else if((ba|0)!=3){S=17;break a}T=$+-1|0;U=T;while(1){la=a[U>>0]|0;if(la<<24>>24==34){ma=_;na=G;oa=$;pa=J;S=33;break d}else if(la<<24>>24!=92){qa=U;break}U=U+1|0}U=qa-T|0;if((U|0)>0){ra=T;sa=U;ta=G;ua=qa;va=J;S=31;break d}else{L=T;M=2}}M=Y<<24>>24==34;c[k+(G<<2)>>2]=D;G=G+1|0;H=M?Z+1|0:Z;I=2;J=M?34:32}if((S|0)==31){S=0;J=ra;I=D;H=0;while(1){a[I>>0]=a[J>>0]|0;H=H+1|0;if((H|0)==(sa|0))break;else{J=J+1|0;I=I+1|0}}B=ta;C=ua;D=D+sa|0;E=2;F=va;continue}else if((S|0)==33){S=0;a[D>>0]=ma;B=na;C=oa+1|0;D=D+1|0;E=2;F=pa;continue}else if((S|0)==34){S=0;a[D>>0]=0;B=da;C=ea;D=D+1|0;E=0;F=fa;continue}}if(ga<<24>>24==92){wa=ia;xa=ja;ya=3;za=z}else if(ga<<24>>24==34?ka<<24>>24!=34:0){wa=ia;xa=ja;ya=2;za=z^1}else S=22;if((S|0)==22){S=0;if(z|(yo(ga<<24>>24)|0)==0?(F=a[ia>>0]|0,z|ka<<24>>24!=F<<24>>24):0){a[ja>>0]=F;wa=ia;xa=ja+1|0;ya=2;za=z}else{wa=ia;xa=ja;ya=4;za=0}}d=ha;w=wa+1|0;x=xa;y=ya;z=za;A=ka}do if((S|0)==13){S=0;A=a[Q>>0]|0;if(A<<24>>24==10|A<<24>>24==0){a[R>>0]=0;Aa=P;Ba=Q;S=38;break}else{a[R>>0]=0;Aa=P;Ba=Q;S=38;break}}else if((S|0)==36){S=0;a[X>>0]=0;if((V|0)>0){Aa=V;Ba=W;S=38}else Ca=(a[W>>0]|0)==0?W:W+1|0}while(0);g:do if((S|0)==38){S=0;A=Aa+-1|0;z=(a[Ba>>0]|0)==0?Ba:Ba+1|0;if(!(a[c[k+(A<<2)>>2]>>0]|0))if((Aa|0)>1)Da=A;else{Ca=z;break}else Da=Aa;A=c[k>>2]|0;y=Vo(A|0)|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;if(!(A&3))wk(h,A,y);else vk(h,A,y);y=aa(c[n>>2]|0,1540483477)|0;A=aa(y>>>24^y,1540483477)|0;c[n>>2]=A;y=A^(aa(c[h>>2]|0,1540483477)|0);A=aa(c[o>>2]|0,1540483477)|0;x=(aa(y,1540483477)|0)^(aa(A>>>24^A,1540483477)|0);A=aa(x>>>13^x,1540483477)|0;x=A>>>15^A;y=c[p>>2]|0;w=x<<24>>24;d=(x<<16>>24)-w+(w*65600|0)|0;w=(x<<8>>24)-d+(d*65600|0)|0;d=(A>>24)-w+(w*65600|0)&((c[q>>2]|0)-y>>2)+-2;w=c[y+(d+1<<2)>>2]|0;A=c[y+(d<<2)>>2]|0;h:do if((A|0)!=(w|0)){d=A;while(1){if((c[d>>2]|0)==(x|0)){Ea=d;break}d=c[d+12>>2]|0;if((d|0)==(w|0))break h}if(Ea){d=dh[c[Ea+4>>2]&15](b,c[Ea+8>>2]|0,Da,k)|0;if((d|0)==-1)break;else if(!d){Ca=z;break g}Pn(m,v,z-v+(((a[z>>0]|0)!=0)<<31>>31)|0);c[f>>2]=c[m>>2];c[f+4>>2]=d;uk(112880,f);d=c[m>>2]|0;if((d|0)==(t|0)){Ca=z;break g}bk(d,(c[u>>2]|0)-d|0);Ca=z;break g}}while(0);Pn(l,v,z-v+(((a[z>>0]|0)!=0)<<31>>31)|0);c[g>>2]=c[l>>2];uk(112800,g);w=c[l>>2]|0;if((w|0)==(r|0))Ca=z;else{bk(w,(c[s>>2]|0)-w|0);Ca=z}}while(0);if(!(a[Ca>>0]|0)){S=53;break}else v=Ca}if((S|0)==17)while(1){S=0;S=17}else if((S|0)==53){i=e;return}}function tl(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,x=0,y=0,z=0;b=a+4|0;d=c[b>>2]|0;e=c[d>>2]|0;if(!e){f=d;g=d}else{d=e;do{e=d;d=c[d+8>>2]|0;bk(e,16)}while((d|0)!=0);d=c[b>>2]|0;f=d;g=d}d=a+8|0;c[d>>2]=f;e=a+12|0;h=c[e>>2]|0;i=f;if((g+36|0)>>>0>h>>>0){j=f-g>>2;f=ak(36)|0;k=c[b>>2]|0;l=c[d>>2]|0;if((k|0)==(l|0)){m=b;n=k}else{o=f;p=k;while(1){c[o>>2]=c[p>>2];p=p+4|0;if((p|0)==(l|0))break;else o=o+4|0}m=b;n=c[b>>2]|0}bk(n,36);c[m>>2]=f;m=f+(j<<2)|0;c[d>>2]=m;j=f+36|0;c[e>>2]=j;q=f;r=m;s=j}else{q=g;r=i;s=h}if(r>>>0<(q+36|0)>>>0){Xo(r|0,0,q+32+(3-r)+4&-4|0)|0;r=c[b>>2]|0;t=r;u=c[e>>2]|0;v=r;w=t+36|0;c[d>>2]=w;c[a>>2]=0;x=u;y=v;z=x-y|0;bk(v,z);return}else{t=q;u=s;v=c[b>>2]|0;w=t+36|0;c[d>>2]=w;c[a>>2]=0;x=u;y=v;z=x-y|0;bk(v,z);return}}function ul(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,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;f=b+4|0;a[f>>0]=0;g=c[d+4>>2]|0;h=d+8|0;i=c[e>>2]|0;j=i;k=j<<24>>24;l=(j<<16>>24)-k+(k*65600|0)|0;k=(j<<8>>24)-l+(l*65600|0)|0;l=(j>>24)-k+(k*65600|0)&((c[h>>2]|0)-g>>2)+-2;k=c[g+(l+1<<2)>>2]|0;j=c[g+(l<<2)>>2]|0;a:do if((j|0)!=(k|0)){l=j;while(1){if((c[l>>2]|0)==(i|0)){m=l;break}l=c[l+8>>2]|0;if((l|0)==(k|0)){n=4;break a}}c[b>>2]=m;if(m)return}else n=4;while(0);if((n|0)==4)c[b>>2]=0;m=ak(16)|0;c[m>>2]=c[e>>2];c[m+4>>2]=c[e+4>>2];k=m+12|0;c[k>>2]=0;i=m+8|0;c[i>>2]=0;j=d+4|0;l=c[j>>2]|0;g=(c[h>>2]|0)-l|0;o=c[e>>2]|0;e=o<<24>>24;p=(o<<16>>24)-e+(e*65600|0)|0;e=(o<<8>>24)-p+(p*65600|0)|0;p=(o>>24)-e+(e*65600|0)&(g>>2)+-2;e=c[l+(p+1<<2)>>2]|0;c[i>>2]=e;do if(!e){b:do if(!p)q=0;else{i=p;while(1){if(c[l+(i<<2)>>2]|0){q=i;break b}i=i+-1|0;if(!i){q=0;break}}}while(0);i=c[l+(q<<2)>>2]|0;while(1){if(!i){n=16;break}o=i+8|0;r=c[o>>2]|0;if(!r){s=o;t=i;n=15;break}else i=r}if((n|0)==15){c[k>>2]=t;c[s>>2]=m;break}else if((n|0)==16){c[k>>2]=0;break}}else{i=e+12|0;c[k>>2]=c[i>>2];c[i>>2]=m;i=c[k>>2]|0;if(i)c[i+8>>2]=m}while(0);k=l+(p<<2)|0;c:do if((e|0)==(c[k>>2]|0)){s=k;t=p;do{c[s>>2]=m;if(!t)break c;t=t+-1|0;s=l+(t<<2)|0}while((e|0)==(c[s>>2]|0))}while(0);e=c[d>>2]|0;c[d>>2]=e+1;if((e+2|0)>>>0>g>>>0){g=c[j>>2]|0;e=c[g>>2]|0;l=c[h>>2]|0;p=g;k=l-p<<1;c[h>>2]=g;s=k+-7|0;t=d+12|0;if((g+(s<<2)|0)>>>0>(c[t>>2]|0)>>>0){d=s<<2;q=ak(d)|0;i=c[j>>2]|0;r=c[h>>2]|0;if((i|0)==(r|0)){u=j;v=i}else{o=q;w=i;while(1){c[o>>2]=c[w>>2];w=w+4|0;if((w|0)==(r|0))break;else o=o+4|0}u=j;v=c[j>>2]|0}bk(v,d);c[u>>2]=q;c[h>>2]=q;c[t>>2]=q+(s<<2);x=q}else x=g;if((s|0)>0){Xo(x|0,0,x+((l<<1)+-7-(p<<1)<<2)+~x+4&-4|0)|0;p=c[j>>2]|0;y=p;z=p}else{y=x;z=c[j>>2]|0}c[h>>2]=y+(s<<2);if(e){s=k+-9|0;k=e;do{e=k+8|0;y=k;k=c[e>>2]|0;h=y+12|0;c[h>>2]=0;c[e>>2]=0;j=c[y>>2]|0;x=j<<24>>24;p=(j<<16>>24)-x+(x*65600|0)|0;x=(j<<8>>24)-p+(p*65600|0)|0;p=(j>>24)-x+(x*65600|0)&s;x=c[z+(p+1<<2)>>2]|0;c[e>>2]=x;do if(!x){d:do if(!p)A=0;else{e=p;while(1){if(c[z+(e<<2)>>2]|0){A=e;break d}e=e+-1|0;if(!e){A=0;break}}}while(0);e=c[z+(A<<2)>>2]|0;while(1){if(!e){n=42;break}j=e+8|0;l=c[j>>2]|0;if(!l){B=j;C=e;n=41;break}else e=l}if((n|0)==41){n=0;c[h>>2]=C;c[B>>2]=y;break}else if((n|0)==42){n=0;c[h>>2]=0;break}}else{e=x+12|0;c[h>>2]=c[e>>2];c[e>>2]=y;e=c[h>>2]|0;if(e)c[e+8>>2]=y}while(0);h=z+(p<<2)|0;e:do if((x|0)==(c[h>>2]|0)){e=h;l=p;do{c[e>>2]=y;if(!l)break e;l=l+-1|0;e=z+(l<<2)|0}while((x|0)==(c[e>>2]|0))}while(0)}while((k|0)!=0)}}c[b>>2]=m;a[f>>0]=1;return}function vl(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;d=c[a+4>>2]|0;e=b;f=e<<24>>24;g=(e<<16>>24)-f+(f*65600|0)|0;f=(e<<8>>24)-g+(g*65600|0)|0;g=((c[a+8>>2]|0)-d>>2)+-2|0;h=g&(e>>24)-f+(f*65600|0);f=c[d+(h+1<<2)>>2]|0;e=c[d+(h<<2)>>2]|0;if((e|0)==(f|0))return;else i=e;while(1){if((c[i>>2]|0)==(b|0)){j=i;break}i=c[i+8>>2]|0;if((i|0)==(f|0)){k=13;break}}if((k|0)==13)return;if(!j)return;k=c[j>>2]|0;f=k<<24>>24;i=(k<<16>>24)-f+(f*65600|0)|0;f=(k<<8>>24)-i+(i*65600|0)|0;i=(k>>24)-f+(f*65600|0)&g;g=j+8|0;f=c[g>>2]|0;k=d+(i<<2)|0;a:do if((c[k>>2]|0)==(j|0)){b=k;e=i;do{c[b>>2]=f;if(!e)break a;e=e+-1|0;b=d+(e<<2)|0}while((c[b>>2]|0)==(j|0))}while(0);d=c[j+12>>2]|0;if(d)c[d+8>>2]=c[g>>2];if(f)c[f+12>>2]=d;bk(j,16);c[a>>2]=(c[a>>2]|0)+-1;return}function wl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=c[d>>2]|0;if(!e)return;else{f=d;g=d;h=e}while(1){e=c[b+56+(h<<2)>>2]|0;d=e>>>16&255;i=(e&65280|0)!=0;do if((a[f+5>>0]|0)==1){if(!i){a[b+1080+h>>0]=0;break}if(d<<24>>24==(a[g+4>>0]|0)?(a[b+1080+h>>0]|0)==0:0){e=c[g+8>>2]|0;j=c[g+12>>2]|0;if(!e)fk(j);else Mg[e&63](j);a[(c[f>>2]|0)+(b+1080)>>0]=1}}else if(i?d<<24>>24==(a[g+4>>0]|0):0){j=c[g+8>>2]|0;e=c[g+12>>2]|0;if(!j){fk(e);break}else{Mg[j&63](e);break}}while(0);d=g+16|0;i=c[d>>2]|0;if(!i)break;else{f=d;g=d;h=i}}return}function xl(b,e,f){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,s=0,t=0;g=b+1288|0;h=c[g>>2]|0;i=b+1292|0;j=c[i>>2]|0;k=j-h|0;l=b+1280|0;m=c[l>>2]|0;n=k>>31;o=(m+k&n|k&~n)+-1|0;n=m+-1|0;k=o>>31;p=o&~k|k&n;k=4-p>>31;o=p&~k|k&4;k=((o+h|0)>>>0)%(m>>>0)|0;c[g>>2]=k;h=e&255;e=b+1284|0;p=c[e>>2]|0;if(o>>>0 >>0){o=j;j=k;while(1){k=p-o|0;q=k>>31;r=m+k&q|k&~q;if(!r)s=o;else{q=4-r>>31;k=(((r&~q|q&4)+o|0)>>>0)%(m>>>0)|0;c[i>>2]=k;s=k}k=s-j|0;q=k>>31;r=(m+k&q|k&~q)+-1|0;q=r>>31;k=r&~q|q&n;q=4-k>>31;r=k&~q|q&4;q=((r+j|0)>>>0)%(m>>>0)|0;if(r>>>0 >>0){o=s;j=q}else{t=q;break}}c[g>>2]=t}t=b+1296+p|0;p=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;a[t>>0]=p;a[t+1>>0]=p>>8;a[t+2>>0]=p>>16;a[t+3>>0]=p>>24;p=c[e>>2]|0;t=(c[g>>2]|0)-p|0;g=c[l>>2]|0;l=t>>31;f=g+t&l|t&~l;l=4-f>>31;c[e>>2]=(((f&~l|l&4)+p|0)>>>0)%(g>>>0)|0;return}function yl(a){a=a|0;$n(a);return}function zl(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0;e=i;i=i+16|0;d=e+6|0;f=e+4|0;g=e+2|0;h=e;j=a+4|0;c[j>>2]=640;k=a+8|0;c[k>>2]=360;l=a+12|0;c[l>>2]=8;m=a+16|0;c[m>>2]=128;di(8,0,0,0,0)|0;fi(c[j>>2]|0,c[k>>2]|0,c[m>>2]|0);ji(c[l>>2]|0);pi(0,3,808464639,1.0,0);Ah(Bh(Bh(Bh(zh(8,0)|0,0,3,4,0,0)|0,1,3,4,0,0)|0,4,4,0,1,0)|0);l=ii()|0;if((l|0)==3|(l|0)==2){m=Kh(44328,726,0,0)|0;n=Kh(45056,660,0,0)|0;o=m}else if((l|0)==1){l=Kh(43432,457,0,0)|0;n=Kh(43896,429,0,0)|0;o=l}else{l=Kh(45720,537,0,0)|0;n=Kh(46264,398,0,0)|0;o=l}l=Lh(o)|0;o=Lh(n)|0;b[g>>1]=l;b[h>>1]=o;b[f>>1]=b[g>>1]|0;b[d>>1]=b[h>>1]|0;b[a+20>>1]=Mh(f,d,1)|0;d=_n(524288)|0;f=d+524288|0;h=d;do{c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;h=h+16|0}while((h|0)!=(f|0));c[a+24>>2]=d;p=+dd()*1.0e3;d=+P(p)>=1.0?(p>0.0?~~+ba(+O(p/4294967296.0),4294967295.0)>>>0:~~+$((p-+(~~p>>>0))/4294967296.0)>>>0):0;f=a+32|0;c[f>>2]=~~p>>>0;c[f+4>>2]=d;i=e;return}function Al(a){a=a|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;e=d+2|0;f=d;g=c[a+24>>2]|0;if(g)ao(g);b[f>>1]=b[a+20>>1]|0;b[e>>1]=b[f>>1]|0;Oh(e);ei();i=d;return 0}function Bl(d){d=d|0;var f=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,x=0,y=0,z=0.0,A=0,B=0,C=0,D=0,F=0,G=0,H=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0,N=0.0,R=0.0,V=0.0,W=0.0,X=0.0,Y=0.0,Z=0.0,_=0,aa=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0;f=i;i=i+528|0;j=f+304|0;k=f+296|0;l=f+288|0;m=f+280|0;n=f+272|0;o=f+256|0;p=f;q=f+504|0;r=f+480|0;s=f+464|0;t=f+432|0;u=f+368|0;v=f+524|0;w=d+4|0;x=d+8|0;if(_j(w,x,d+12|0,d+16|0,0)|0){y=0;i=f;return y|0}oi(0,0,0,c[w>>2]&65535,c[x>>2]&65535);ui(0)|0;z=+dd()*1.0e3;A=~~z>>>0;B=+P(z)>=1.0?(z>0.0?~~+ba(+O(z/4294967296.0),4294967295.0)>>>0:~~+$((z-+(~~z>>>0))/4294967296.0)>>>0):0;if((a[112528]|0)==0?(Ua(112528)|0)!=0:0){C=46664;c[C>>2]=A;c[C+4>>2]=B;vc(112528)}C=46664;D=Yo(A|0,B|0,c[C>>2]|0,c[C+4>>2]|0)|0;C=E;F=46664;c[F>>2]=A;c[F+4>>2]=B;F=d+32|0;G=Yo(A|0,B|0,c[F>>2]|0,c[F+4>>2]|0)|0;z=(+(G>>>0)+4294967296.0*+(E|0))/1.0e6;ki(0,0);li(0,1,79,112536,p);li(0,2,111,112568,j);G=hi()|0;if((G|0)!=0?(a[G+140>>0]&2)!=0:0){H=+g[G>>2];I=-H;J=+g[G+4>>2];K=-J;L=+g[G+8>>2];M=+g[G+12>>2];N=I-H;H=K-J;J=L+L;R=N*I;I=N*K;V=N*L;W=N*M;N=H*K;K=H*L;X=H*M;H=L*J;L=J*M;M=1.0-(N+H);g[j>>2]=M;J=I-L;g[j+4>>2]=J;Y=V+X;g[j+8>>2]=Y;g[j+12>>2]=0.0;Z=I+L;g[j+16>>2]=Z;L=1.0-(R+H);g[j+20>>2]=L;H=K-W;g[j+24>>2]=H;g[j+28>>2]=0.0;I=V-X;g[j+32>>2]=I;X=K+W;g[j+36>>2]=X;W=1.0-(R+N);g[j+40>>2]=W;F=j+44|0;c[F>>2]=0;c[F+4>>2]=0;g[j+60>>2]=1.0;g[j+48>>2]=-(Z*0.0+M*0.0-I*50.0);g[j+52>>2]=-(J*0.0+L*0.0-X*50.0);g[j+56>>2]=-(Y*0.0+H*0.0-W*50.0);W=+g[G+28>>2];H=+g[G+32>>2];Y=+g[G+36>>2];X=+g[G+40>>2];L=2.0/(Y+X);J=2.0/(W+H);I=(Y-X)*L*.5;X=(W-H)*J*.5;_=p;aa=_+64|0;do{c[_>>2]=0;_=_+4|0}while((_|0)<(aa|0));g[p>>2]=L;g[p+20>>2]=J;g[p+32>>2]=I;g[p+36>>2]=-X;g[p+40>>2]=1.001001000404358;g[p+44>>2]=1.0;g[p+56>>2]=-.10010010004043579;qi(0,j,p,1,0);oi(0,0,0,b[G+128>>1]|0,b[G+130>>1]|0)}else{_=j;aa=_+56|0;do{c[_>>2]=0;_=_+4|0}while((_|0)<(aa|0));g[j>>2]=1.0;g[j+4>>2]=0.0;g[j+8>>2]=0.0;g[j+16>>2]=0.0;g[j+20>>2]=1.0;g[j+24>>2]=0.0;g[j+32>>2]=0.0;g[j+36>>2]=0.0;g[j+40>>2]=1.0;g[j+48>>2]=-0.0;g[j+52>>2]=-0.0;g[j+56>>2]=50.0;g[j+60>>2]=1.0;X=1.0/+U(.5235987901687622);I=X/(+((c[w>>2]|0)>>>0)/+((c[x>>2]|0)>>>0));_=p;aa=_+64|0;do{c[_>>2]=0;_=_+4|0}while((_|0)<(aa|0));g[p>>2]=I;g[p+20>>2]=X;g[p+32>>2]=0.0;g[p+36>>2]=-0.0;g[p+40>>2]=1.001001000404358;g[p+44>>2]=1.0;g[p+56>>2]=-.10010010004043579;qi(0,j,p,1,0);oi(0,0,0,c[w>>2]&65535,c[x>>2]&65535)}mi(q,32768,8);x=0;do{X=+(x>>>0);I=X*.3700000047683716;g[p+(x<<4)>>2]=+T(+(I+z*(X*.20999999344348907)))*8.0;g[p+(x<<4)+4>>2]=+T(+(X*.6700000166893005+z*I))*8.0;I=X*.12999999523162842;g[p+(x<<4)+8>>2]=+S(+(I+z*(X*.10999999940395355)))*8.0;g[p+(x<<4)+12>>2]=1.0/((+T(+(z*I))*.5+.5)*2.0+2.0);x=x+1|0}while((x|0)!=16);I=+dd()*1.0e3;x=d+24|0;w=c[x>>2]|0;G=0;do{F=G<<5;X=+(G>>>0)+-16.0;B=0;do{A=B+F<<5;J=+(B>>>0)+-16.0;ca=0;do{L=+(ca>>>0)+-16.0;H=0.0;da=0;W=1.0;while(1){Y=+g[p+(da<<4)>>2]-L;M=+g[p+(da<<4)+4>>2]-J;Z=+g[p+(da<<4)+8>>2]-X;N=+g[p+(da<<4)+12>>2];R=N*N*(Y*Y+M*M+Z*Z);Z=W+H*R;M=W*R;da=da+1|0;if((da|0)==16){ea=Z;fa=M;break}else{H=Z;W=M}}g[w+(ca+A<<4)>>2]=ea/fa+-1.0;ca=ca+1|0}while((ca|0)!=32);B=B+1|0}while((B|0)!=32);G=G+1|0}while((G|0)!=32);G=~~I>>>0;w=+P(I)>=1.0?(I>0.0?~~+ba(+O(I/4294967296.0),4294967295.0)>>>0:~~+$((I-+(~~I>>>0))/4294967296.0)>>>0):0;I=+dd()*1.0e3;p=~~I>>>0;B=+P(I)>=1.0?(I>0.0?~~+ba(+O(I/4294967296.0),4294967295.0)>>>0:~~+$((I-+(~~I>>>0))/4294967296.0)>>>0):0;I=+dd()*1.0e3;F=c[x>>2]|0;ca=1;do{A=ca<<5;da=1;do{ga=da+A<<5;ha=1;do{ia=ha+ga|0;fa=+g[F+(ia+-1<<4)>>2]-+g[F+(ia+1<<4)>>2];ea=+g[F+(ia+-32<<4)>>2]-+g[F+(ia+32<<4)>>2];X=+g[F+(ia+-1024<<4)>>2]-+g[F+(ia+1024<<4)>>2];J=1.0/+Q(+(fa*fa+ea*ea+X*X));g[F+(ia<<4)+4>>2]=fa*J;g[F+(ia<<4)+8>>2]=ea*J;g[F+(ia<<4)+12>>2]=X*J;ha=ha+1|0}while((ha|0)!=31);da=da+1|0}while((da|0)!=31);ca=ca+1|0}while((ca|0)!=31);ca=Yo(p|0,B|0,G|0,w|0)|0;w=E;G=~~I>>>0;B=+P(I)>=1.0?(I>0.0?~~+ba(+O(I/4294967296.0),4294967295.0)>>>0:~~+$((I-+(~~I>>>0))/4294967296.0)>>>0):0;I=+dd()*1.0e3;p=~~I>>>0;F=+P(I)>=1.0?(I>0.0?~~+ba(+O(I/4294967296.0),4294967295.0)>>>0:~~+$((I-+(~~I>>>0))/4294967296.0)>>>0):0;I=+dd()*1.0e3;da=r+8|0;A=r+20|0;ha=r+4|0;ga=r+16|0;ia=r+12|0;ja=s+4|0;ka=s+8|0;la=t+4|0;ma=t+8|0;na=t+12|0;oa=t+16|0;pa=t+20|0;qa=t+24|0;ra=t+28|0;sa=0;ta=c[q>>2]|0;ua=0;while(1){J=+(ua>>>0);g[da>>2]=J*.032258063554763794;va=ua;ua=ua+1|0;g[A>>2]=+(ua>>>0)*.032258063554763794;if((sa+12|0)>>>0<32768){wa=va<<5;X=J+-16.0;va=sa;xa=ta;ya=0;while(1){za=ya+wa<<5;J=+(ya>>>0);g[ha>>2]=J*.032258063554763794;ya=ya+1|0;g[ga>>2]=+(ya>>>0)*.032258063554763794;if((va+12|0)>>>0<32768){ea=J+-16.0;Aa=va;Ba=xa;Ca=0;while(1){Da=Ca+za|0;J=+(Ca>>>0);g[r>>2]=J*.032258063554763794;Ca=Ca+1|0;g[ia>>2]=+(Ca>>>0)*.032258063554763794;g[s>>2]=J+-16.0;g[ja>>2]=ea;g[ka>>2]=X;Ea=c[x>>2]|0;c[t>>2]=Ea+(Da+1056<<4);c[la>>2]=Ea+(Da+1057<<4);c[ma>>2]=Ea+(Da+33<<4);c[na>>2]=Ea+(Da+32<<4);c[oa>>2]=Ea+(Da+1024<<4);c[pa>>2]=Ea+(Da+1025<<4);c[qa>>2]=Ea+(Da+1<<4);c[ra>>2]=Ea+(Da<<4);Da=th(Ba,e[6]|0,r,s,t,.5)|0;Ea=Ba+(Da*28|0)|0;Fa=Da+Aa|0;if(!(Ca>>>0<31&(Fa+12|0)>>>0<32768)){Ga=Fa;Ha=Ea;break}else{Aa=Fa;Ba=Ea}}}else{Ga=va;Ha=xa}if(!(ya>>>0<31&(Ga+12|0)>>>0<32768)){Ia=Ga;Ja=Ha;break}else{va=Ga;xa=Ha}}}else{Ia=sa;Ja=ta}if(!(ua>>>0<31&(Ia+12|0)>>>0<32768)){Ka=Ia;break}else{sa=Ia;ta=Ja}}Ja=Yo(p|0,F|0,G|0,B|0)|0;B=E;G=+P(I)>=1.0?(I>0.0?~~+ba(+O(I/4294967296.0),4294967295.0)>>>0:~~+$((I-+(~~I>>>0))/4294967296.0)>>>0):0;X=+dd()*1.0e3;F=Yo(~~X>>>0|0,(+P(X)>=1.0?(X>0.0?~~+ba(+O(X/4294967296.0),4294967295.0)>>>0:~~+$((X-+(~~X>>>0))/4294967296.0)>>>0):0)|0,~~I>>>0|0,G|0)|0;G=E;I=z*.6700000166893005;X=+T(+I);ea=+S(+I);I=+T(+z);J=+S(+z);_=u;aa=_+60|0;do{c[_>>2]=0;_=_+4|0}while((_|0)<(aa|0));g[u>>2]=J;g[u+8>>2]=I;g[u+16>>2]=X*I;g[u+20>>2]=ea;g[u+24>>2]=-(X*J);g[u+32>>2]=-(ea*I);g[u+36>>2]=X;g[u+40>>2]=ea*J;g[u+60>>2]=1.0;si(u,1)|0;ti(q,0,Ka);ri(23,268435472,0);b[v>>1]=b[d+20>>1]|0;b[j>>1]=b[v>>1]|0;vi(0,j,0)|0;c[o>>2]=Ka;h[o+8>>3]=+(Ka>>>0)*.000030517578125*100.0;li(1,4,15,112640,o);h[n>>3]=(+(ca>>>0)+4294967296.0*+(w|0))*.001;li(1,5,15,112672,n);h[m>>3]=(+(Ja>>>0)+4294967296.0*+(B|0))*.001;li(1,6,15,112704,m);h[l>>3]=(+(F>>>0)+4294967296.0*+(G|0))*.001;li(1,7,15,112736,l);h[k>>3]=(+(D>>>0)+4294967296.0*+(C|0))*.001;li(1,8,15,112768,k);gi()|0;y=1;i=f;return y|0}function Cl(a){a=a|0;return}function Dl(){yh(8);return}function El(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=c[e>>2]|0;g=c[d+19737656>>2]|0;h=f<<24>>24;i=(f<<16>>24)-h+(h*65600|0)|0;h=(f<<8>>24)-i+(i*65600|0)|0;i=(f>>24)-h+(h*65600|0)&((c[d+19737660>>2]|0)-g>>2)+-2;h=c[g+(i+1<<2)>>2]|0;j=c[g+(i<<2)>>2]|0;a:do if((j|0)!=(h|0)){i=j;while(1){if((c[i>>2]|0)==(f|0)){k=i;break}i=c[i+8>>2]|0;if((i|0)==(h|0))break a}if((k|0)!=0?(i=b[k+4>>1]|0,i<<16>>16!=-1):0){l=i;return l|0}}while(0);k=d+19657992|0;h=b[k>>1]|0;f=b[d+19657994>>1]|0;if((h&65535)<(f&65535)){b[k>>1]=h+1<<16>>16;j=k+4|0;k=b[j+((h&65535)<<1)>>1]|0;b[j+((k&65535)+(f&65535)<<1)>>1]=h;m=k}else m=-1;k=c[d+18732228>>2]|0;d=k+18572948|0;a[(c[d>>2]|0)+(k+18572956)>>0]=2;h=(c[d>>2]|0)+2&-2;c[d>>2]=h;f=k+18572956+h|0;a[f>>0]=m;a[f+1>>0]=m>>8;f=(c[d>>2]|0)+5&-4;c[d>>2]=f;h=k+18572956+f|0;f=e;e=h+72|0;do{a[h>>0]=a[f>>0]|0;h=h+1|0;f=f+1|0}while((h|0)<(e|0));c[d>>2]=(c[d>>2]|0)+72;l=m;return l|0}function Fl(d,e,f){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,w=0,x=0,y=0,z=0,A=0,B=0,C=0;g=d+4|0;a[g>>0]=0;h=c[e+4>>2]|0;i=e+8|0;j=c[f>>2]|0;k=j<<24>>24;l=(j<<16>>24)-k+(k*65600|0)|0;k=(j<<8>>24)-l+(l*65600|0)|0;l=(j>>24)-k+(k*65600|0)&((c[i>>2]|0)-h>>2)+-2;k=c[h+(l+1<<2)>>2]|0;m=c[h+(l<<2)>>2]|0;a:do if((m|0)!=(k|0)){l=m;while(1){if((c[l>>2]|0)==(j|0)){n=l;break}l=c[l+8>>2]|0;if((l|0)==(k|0)){o=4;break a}}c[d>>2]=n;if(n)return}else o=4;while(0);if((o|0)==4)c[d>>2]=0;n=c[20]|0;k=Sg[c[(c[n>>2]|0)+8>>2]&3](n,16,0,0,0)|0;c[k>>2]=c[f>>2];b[k+4>>1]=b[f+4>>1]|0;n=k+12|0;c[n>>2]=0;j=k+8|0;c[j>>2]=0;m=e+4|0;l=c[m>>2]|0;h=(c[i>>2]|0)-l|0;p=c[f>>2]|0;f=p<<24>>24;q=(p<<16>>24)-f+(f*65600|0)|0;f=(p<<8>>24)-q+(q*65600|0)|0;q=(p>>24)-f+(f*65600|0)&(h>>2)+-2;f=c[l+(q+1<<2)>>2]|0;c[j>>2]=f;do if(!f){b:do if(!q)r=0;else{j=q;while(1){if(c[l+(j<<2)>>2]|0){r=j;break b}j=j+-1|0;if(!j){r=0;break}}}while(0);j=c[l+(r<<2)>>2]|0;while(1){if(!j){o=16;break}p=j+8|0;s=c[p>>2]|0;if(!s){t=p;u=j;o=15;break}else j=s}if((o|0)==15){c[n>>2]=u;c[t>>2]=k;break}else if((o|0)==16){c[n>>2]=0;break}}else{j=f+12|0;c[n>>2]=c[j>>2];c[j>>2]=k;j=c[n>>2]|0;if(j)c[j+8>>2]=k}while(0);n=l+(q<<2)|0;c:do if((f|0)==(c[n>>2]|0)){t=n;u=q;do{c[t>>2]=k;if(!u)break c;u=u+-1|0;t=l+(u<<2)|0}while((f|0)==(c[t>>2]|0))}while(0);f=c[e>>2]|0;c[e>>2]=f+1;if((f+2|0)>>>0>h>>>0){h=c[m>>2]|0;f=c[h>>2]|0;l=c[i>>2]|0;q=h;n=l-q<<1;c[i>>2]=h;t=n+-7|0;u=e+12|0;if((h+(t<<2)|0)>>>0>(c[u>>2]|0)>>>0){e=c[20]|0;r=Sg[c[(c[e>>2]|0)+8>>2]&3](e,t<<2,0,0,0)|0;e=c[m>>2]|0;j=c[i>>2]|0;if((e|0)==(j|0)){v=m;w=e}else{s=r;p=e;while(1){c[s>>2]=c[p>>2];p=p+4|0;if((p|0)==(j|0))break;else s=s+4|0}v=m;w=c[m>>2]|0}if(w){s=c[20]|0;Jg[c[(c[s>>2]|0)+12>>2]&31](s,w,0,0,0)}c[v>>2]=r;c[i>>2]=r;c[u>>2]=r+(t<<2);x=r}else x=h;if((t|0)>0){Xo(x|0,0,x+((l<<1)+-7-(q<<1)<<2)+~x+4&-4|0)|0;q=c[m>>2]|0;y=q;z=q}else{y=x;z=c[m>>2]|0}c[i>>2]=y+(t<<2);if(f){t=n+-9|0;n=f;do{f=n+8|0;y=n;n=c[f>>2]|0;i=y+12|0;c[i>>2]=0;c[f>>2]=0;m=c[y>>2]|0;x=m<<24>>24;q=(m<<16>>24)-x+(x*65600|0)|0;x=(m<<8>>24)-q+(q*65600|0)|0;q=(m>>24)-x+(x*65600|0)&t;x=c[z+(q+1<<2)>>2]|0;c[f>>2]=x;do if(!x){d:do if(!q)A=0;else{f=q;while(1){if(c[z+(f<<2)>>2]|0){A=f;break d}f=f+-1|0;if(!f){A=0;break}}}while(0);f=c[z+(A<<2)>>2]|0;while(1){if(!f){o=44;break}m=f+8|0;l=c[m>>2]|0;if(!l){B=m;C=f;o=43;break}else f=l}if((o|0)==43){o=0;c[i>>2]=C;c[B>>2]=y;break}else if((o|0)==44){o=0;c[i>>2]=0;break}}else{f=x+12|0;c[i>>2]=c[f>>2];c[f>>2]=y;f=c[i>>2]|0;if(f)c[f+8>>2]=y}while(0);i=z+(q<<2)|0;e:do if((x|0)==(c[i>>2]|0)){f=i;l=q;do{c[f>>2]=y;if(!l)break e;l=l+-1|0;f=z+(l<<2)|0}while((x|0)==(c[f>>2]|0))}while(0)}while((n|0)!=0)}}c[d>>2]=k;a[g>>0]=1;return}function Gl(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;e=d+14345792|0;f=d+14345624|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[d+14345652>>2]=-1;c[d+14345656>>2]=0;c[d+14345660>>2]=-1;c[d+14345664>>2]=0;b[d+14345668>>1]=0;b[d+14345670>>1]=1;b[d+14345672>>1]=0;b[d+14345674>>1]=-1;b[d+14345676>>1]=1;e=d+14345616|0;c[e>>2]=1;c[e+4>>2]=0;b[d+14345678>>1]=-1;e=d+14345682|0;b[d+14345488>>1]=-1;b[d+14345496>>1]=-1;b[d+14345504>>1]=-1;b[d+14345512>>1]=-1;b[d+14345520>>1]=-1;b[d+14345528>>1]=-1;b[d+14345536>>1]=-1;b[d+14345544>>1]=-1;b[d+14345552>>1]=-1;b[d+14345560>>1]=-1;b[d+14345568>>1]=-1;b[d+14345576>>1]=-1;b[d+14345584>>1]=-1;b[d+14345592>>1]=-1;b[d+14345600>>1]=-1;b[d+14345608>>1]=-1;b[e>>1]=65535;b[e+2>>1]=65535;b[e+4>>1]=65535;b[e+6>>1]=65535;b[e+8>>1]=65535;c[d+14345760>>2]=0;c[d+14345764>>2]=0;c[d+14345768>>2]=0;b[d+14345774>>1]=0;b[d+14345776>>1]=0;b[d+14345778>>1]=0;b[d+14345784>>1]=0;a[d+14345786>>0]=1;b[d+14345772>>1]=-1;b[d+14345780>>1]=0;b[d+14345782>>1]=-1;b[d+14345696>>1]=-1;b[d+14345704>>1]=-1;b[d+14345712>>1]=-1;b[d+14345720>>1]=-1;b[d+14345728>>1]=-1;b[d+14345736>>1]=-1;b[d+14345744>>1]=-1;b[d+14345752>>1]=-1;c[d+18540128>>2]=1;c[d+18572912>>2]=0;c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;b[d+14345812>>1]=0;b[d+14345814>>1]=0;b[d+14345816>>1]=0;c[d+18572916>>2]=0;c[d+18572920>>2]=0;e=c[d+14345808>>2]|0;f=e+4|0;c[f>>2]=0;a[d+18732168>>0]=0;a[d+18572956>>0]=17;c[d+18572952>>2]=1;c[d+18572948>>2]=0;a[d+18638500>>0]=17;c[d+18638496>>2]=1;c[d+18638492>>2]=0;g=c[f>>2]|0;if((g+4|0)>>>0>=(c[e>>2]|0)>>>0){c[f>>2]=0;h=d+18704036|0;b[h>>1]=0;b[h+2>>1]=0;b[h+4>>1]=0;b[h+6>>1]=0;b[h+8>>1]=0;b[h+10>>1]=0;b[h+12>>1]=0;b[h+14>>1]=0;return}i=e+8+g|0;a[i>>0]=1;a[i+1>>0]=0;a[i+2>>0]=0;a[i+3>>0]=0;c[f>>2]=(c[f>>2]|0)+4;c[f>>2]=0;h=d+18704036|0;b[h>>1]=0;b[h+2>>1]=0;b[h+4>>1]=0;b[h+6>>1]=0;b[h+8>>1]=0;b[h+10>>1]=0;b[h+12>>1]=0;b[h+14>>1]=0;return}function Hl(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;e=c[a+16>>2]|0;f=b<<24>>24;g=(b<<16>>24)-f+(f*65600|0)|0;f=(b<<8>>24)-g+(g*65600|0)|0;g=((c[a+20>>2]|0)-e>>2)+-2|0;h=g&(b>>24)-f+(f*65600|0);f=c[e+(h+1<<2)>>2]|0;i=c[e+(h<<2)>>2]|0;if((i|0)==(f|0))return;else j=i;while(1){i=j;if((c[i>>2]|0)==(b|0)?(c[i+4>>2]|0)==(d|0):0){k=j;break}j=c[j+12>>2]|0;if((j|0)==(f|0)){l=13;break}}if((l|0)==13)return;if(!k)return;l=k;f=c[l>>2]|0;j=c[l+4>>2]|0;l=c[k+8>>2]|0;d=Zn(24)|0;b=d+8|0;c[b>>2]=f;c[b+4>>2]=j;c[d+16>>2]=l;c[d>>2]=a;l=a+4|0;j=c[l>>2]|0;c[d+4>>2]=j;c[j>>2]=d;c[l>>2]=d;d=a+8|0;c[d>>2]=(c[d>>2]|0)+1;d=c[k>>2]|0;l=d<<24>>24;j=(d<<16>>24)-l+(l*65600|0)|0;l=(d<<8>>24)-j+(j*65600|0)|0;j=(d>>24)-l+(l*65600|0)&g;g=k+12|0;l=c[g>>2]|0;d=e+(j<<2)|0;a:do if((c[d>>2]|0)==(k|0)){b=d;f=j;do{c[b>>2]=l;if(!f)break a;f=f+-1|0;b=e+(f<<2)|0}while((c[b>>2]|0)==(k|0))}while(0);e=c[k+16>>2]|0;if(e)c[e+12>>2]=c[g>>2];if(l)c[l+16>>2]=e;e=c[20]|0;Jg[c[(c[e>>2]|0)+12>>2]&31](e,k,0,0,0);k=a+12|0;c[k>>2]=(c[k>>2]|0)+-1;return}function Il(a){a=a|0;return}function Jl(a){a=a|0;$n(a+-4|0);return}function Kl(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;if(!e){f=a+12|0;c[f>>2]=b;c[f+4>>2]=d;g=d;h=b;E=g;return h|0}else if((e|0)==2){f=a+20|0;i=c[f>>2]|0;j=c[f+4>>2]|0;f=Yo(i|0,j|0,b|0,d|0)|0;k=E;l=(k|0)<(j|0)|(k|0)==(j|0)&f>>>0>>0;m=l?k:j;j=(m|0)<0;k=j?0:l?f:i;i=j?0:m;m=a+12|0;c[m>>2]=k;c[m+4>>2]=i;g=i;h=k;E=g;return h|0}else if((e|0)==1){e=a+12|0;k=e;i=Zo(c[k>>2]|0,c[k+4>>2]|0,b|0,d|0)|0;d=E;b=a+20|0;k=c[b>>2]|0;m=c[b+4>>2]|0;b=(d|0)<(m|0)|(d|0)==(m|0)&i>>>0 >>0;j=b?d:m;m=(j|0)<0;d=m?0:b?i:k;k=m?0:j;j=e;c[j>>2]=d;c[j+4>>2]=k;g=k;h=d;E=g;return h|0}else{d=a+12|0;g=c[d+4>>2]|0;h=c[d>>2]|0;E=g;return h|0}return 0}function Ll(a){a=a|0;return}function Ml(a){a=a|0;$n(a);return}function Nl(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;if(!e){f=a+16|0;c[f>>2]=b;c[f+4>>2]=d;g=d;h=b;E=g;return h|0}else if((e|0)==2){f=a+24|0;i=c[f>>2]|0;j=c[f+4>>2]|0;f=Yo(i|0,j|0,b|0,d|0)|0;k=E;l=(k|0)<(j|0)|(k|0)==(j|0)&f>>>0>>0;m=l?k:j;j=(m|0)<0;k=j?0:l?f:i;i=j?0:m;m=a+16|0;c[m>>2]=k;c[m+4>>2]=i;g=i;h=k;E=g;return h|0}else if((e|0)==1){e=a+16|0;k=e;i=Zo(c[k>>2]|0,c[k+4>>2]|0,b|0,d|0)|0;d=E;b=a+24|0;k=c[b>>2]|0;m=c[b+4>>2]|0;b=(d|0)<(m|0)|(d|0)==(m|0)&i>>>0 >>0;j=b?d:m;m=(j|0)<0;d=m?0:b?i:k;k=m?0:j;j=e;c[j>>2]=d;c[j+4>>2]=k;g=k;h=d;E=g;return h|0}else{d=a+16|0;g=c[d+4>>2]|0;h=c[d>>2]|0;E=g;return h|0}return 0}function Ol(a){a=a|0;return}function Pl(a){a=a|0;$n(a);return}function Ql(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;if(d>>>0<9){g=Po(b)|0;return g|0}else{h=Sg[c[(c[a>>2]|0)+8>>2]&3](a,d+b|0,0,e,f)|0;f=d+3+h&0-d;d=f;c[d+-4>>2]=f-h;g=d;return g|0}return 0}function Rl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;if(!b)return;if(d>>>0<9){Qo(b);return}else{Jg[c[(c[a>>2]|0)+12>>2]&31](a,b+(0-(c[b+-4>>2]|0))|0,0,e,f);return}}function Sl(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;if(e>>>0<9){h=Ro(b,d)|0;return h|0}if(!b){i=Sg[c[(c[a>>2]|0)+8>>2]&3](a,e+d|0,0,f,g)|0;j=e+3+i&0-e;k=j;c[k+-4>>2]=j-i;h=k;return h|0}k=c[b+-4>>2]|0;i=Og[c[(c[a>>2]|0)+16>>2]&3](a,b+(0-k)|0,e+d|0,0,f,g)|0;g=i;f=e+3+g&0-e;e=f;if((e|0)==(b|0)){h=b;return h|0}_o(e|0,i+k|0,d|0)|0;c[e+-4>>2]=f-g;h=e;return h|0}function Tl(a){a=a|0;return}function Ul(a){a=a|0;$n(a);return}function Vl(a,b,d){a=a|0;b=b|0;d=d|0;if(!b){c[0]=3;return}else Oe()}function Wl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;a=i;i=i+16|0;g=a;c[g>>2]=b;c[g+4>>2]=d&65535;xh(112512,g);wh(e,f);i=a;return}function Xl(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function Yl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return 0}function Zl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return}function _l(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0;j=i;i=i+16|0;b=j;l=(Vo(d|0)|0)+5|0;m=i;i=i+((1*l|0)+15&-16)|0;$o(m|0,d|0)|0;d=m+(Vo(m|0)|0)|0;a[d>>0]=a[112504]|0;a[d+1>>0]=a[112505]|0;a[d+2>>0]=a[112506]|0;a[d+3>>0]=a[112507]|0;a[d+4>>0]=a[112508]|0;c[b>>2]=42944;c[b+4>>2]=42976;d=b+8|0;l=Ue(m|0,112496)|0;c[d>>2]=l;if(!l){i=j;return}Di(b,e,f,g,h,0,k);ze(c[d>>2]|0)|0;i=j;return}function $l(a){a=a|0;return}function am(a){a=a|0;$n(a+-4|0);return}function bm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=a+-4+8|0;Rf(c[d>>2]|0,b|0,e|0)|0;e=xg(c[d>>2]|0)|0;E=((e|0)<0)<<31>>31;return e|0}function cm(a){a=a|0;return}function dm(a){a=a|0;$n(a);return}function em(a,b,d){a=a|0;b=b|0;d=d|0;return Nf(b|0,1,d|0,c[a+8>>2]|0)|0}function fm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=a+8|0;Rf(c[d>>2]|0,b|0,e|0)|0;e=xg(c[d>>2]|0)|0;E=((e|0)<0)<<31>>31;return e|0}function gm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d)e=Ue(b|0,112488)|0;else e=Ue(b|0,112496)|0;c[a+8>>2]=e;return (e|0)==0|0}function hm(a){a=a|0;ze(c[a+8>>2]|0)|0;return 0}function im(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}function jm(a){a=a|0;return}function km(a,b,c){a=a|0;b=b|0;c=c|0;return}function lm(a){a=a|0;return}function mm(a){a=a|0;$n(a+-4|0);return}function nm(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;if(!e){f=a+12|0;c[f>>2]=b;c[f+4>>2]=d;g=d;h=b;E=g;return h|0}else if((e|0)==1){f=a+12|0;i=f;j=Zo(c[i>>2]|0,c[i+4>>2]|0,b|0,d|0)|0;i=E;k=a+20|0;l=c[k>>2]|0;m=c[k+4>>2]|0;k=(i|0)<(m|0)|(i|0)==(m|0)&j>>>0 >>0;n=k?i:m;m=(n|0)<0;i=m?0:k?j:l;l=m?0:n;n=f;c[n>>2]=i;c[n+4>>2]=l;g=l;h=i;E=g;return h|0}else if((e|0)==2){e=a+20|0;i=c[e>>2]|0;l=c[e+4>>2]|0;e=Yo(i|0,l|0,b|0,d|0)|0;d=E;b=(d|0)<(l|0)|(d|0)==(l|0)&e>>>0>>0;n=b?d:l;l=(n|0)<0;d=l?0:b?e:i;i=l?0:n;n=a+12|0;c[n>>2]=d;c[n+4>>2]=i;g=i;h=d;E=g;return h|0}else{d=a+12|0;g=c[d+4>>2]|0;h=c[d>>2]|0;E=g;return h|0}return 0}function om(a){a=a|0;return}function pm(a){a=a|0;$n(a);return}function qm(a){a=a|0;$n(a);return}function rm(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;if((e|0)==2){f=a+24|0;g=c[f>>2]|0;h=c[f+4>>2]|0;f=Yo(g|0,h|0,b|0,d|0)|0;i=E;j=(i|0)<(h|0)|(i|0)==(h|0)&f>>>0 >>0;k=j?i:h;h=(k|0)<0;i=h?0:j?f:g;g=h?0:k;k=a+16|0;c[k>>2]=i;c[k+4>>2]=g;l=g;m=i;E=l;return m|0}else if((e|0)==1){i=a+16|0;g=i;k=Zo(c[g>>2]|0,c[g+4>>2]|0,b|0,d|0)|0;g=E;h=a+24|0;f=c[h>>2]|0;j=c[h+4>>2]|0;h=(g|0)<(j|0)|(g|0)==(j|0)&k>>>0 >>0;n=h?g:j;j=(n|0)<0;g=j?0:h?k:f;f=j?0:n;n=i;c[n>>2]=g;c[n+4>>2]=f;l=f;m=g;E=l;return m|0}else if(!e){e=a+16|0;c[e>>2]=b;c[e+4>>2]=d;l=d;m=b;E=l;return m|0}else{b=a+16|0;l=c[b+4>>2]|0;m=c[b>>2]|0;E=l;return m|0}return 0}function sm(a){a=a|0;return}function tm(b,d){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;e=b+12|0;c[b>>2]=e;f=b+4|0;c[f>>2]=e;g=b+8|0;c[g>>2]=b+24;if(a[d>>0]|0){h=d;i=0;while(1){j=i+1|0;h=h+1|0;if(!(a[h>>0]|0)){k=j;l=i;break}else i=j}i=l+2|0;if((i|0)>12){l=c[20]|0;h=Sg[c[(c[l>>2]|0)+8>>2]&3](l,i,0,0,0)|0;i=c[b>>2]|0;l=c[f>>2]|0;if((i|0)==(l|0))m=i;else{j=i;i=h;while(1){a[i>>0]=a[j>>0]|0;j=j+1|0;if((j|0)==(l|0))break;else i=i+1|0}m=c[b>>2]|0}if(!((m|0)==(e|0)|(m|0)==0)){e=c[20]|0;Jg[c[(c[e>>2]|0)+12>>2]&31](e,m,0,0,0)}c[b>>2]=h;c[f>>2]=h;c[g>>2]=h+k;n=k}else n=k}else n=0;um(b,d,d+n|0);return}function um(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,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=b+4|0;g=c[f>>2]|0;h=c[b>>2]|0;i=g-h|0;j=1-d+e+i|0;k=b+8|0;l=c[k>>2]|0;if((h+j|0)>>>0>l>>>0?(m=(j*3|0)>>>1,j=m+1|0,(h+j|0)>>>0>l>>>0):0){l=c[20]|0;h=Sg[c[(c[l>>2]|0)+8>>2]&3](l,j,0,0,0)|0;j=c[b>>2]|0;l=c[f>>2]|0;if((j|0)==(l|0))n=j;else{o=j;j=h;while(1){a[j>>0]=a[o>>0]|0;o=o+1|0;if((o|0)==(l|0))break;else j=j+1|0}n=c[b>>2]|0}if(!((n|0)==(b+12|0)|(n|0)==0)){j=c[20]|0;Jg[c[(c[j>>2]|0)+12>>2]&31](j,n,0,0,0)}c[b>>2]=h;b=h+i|0;c[f>>2]=b;c[k>>2]=h+m;p=b}else p=g;if((d|0)==(e|0)){q=p;a[q>>0]=0;return}else{r=d;s=p}while(1){a[s>>0]=a[r>>0]|0;p=(c[f>>2]|0)+1|0;c[f>>2]=p;r=r+1|0;if((r|0)==(e|0)){q=p;break}else s=p}a[q>>0]=0;return}function vm(d,e,f){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,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;g=d+4|0;a[g>>0]=0;h=c[e+4>>2]|0;i=e+8|0;j=(c[i>>2]|0)-h>>2;k=c[f>>2]|0;l=f+4|0;m=c[l>>2]|0;if((m|0)==(k|0))n=0;else{o=0;p=k;while(1){q=(a[p>>0]|0)-o+(o*65600|0)|0;p=p+1|0;if((p|0)==(m|0)){n=q;break}else o=q}}o=n&j+-2;j=c[h+(o+1<<2)>>2]|0;n=c[h+(o<<2)>>2]|0;a:do if((n|0)!=(j|0)){o=m-k|0;h=n;b:while(1){p=c[h+4>>2]|0;q=c[h>>2]|0;if((p-q|0)==(o|0)){r=q;q=k;while(1){if((r|0)==(p|0)){s=h;break b}if((a[r>>0]|0)==(a[q>>0]|0)){r=r+1|0;q=q+1|0}else break}}h=c[h+28>>2]|0;if((h|0)==(j|0)){t=9;break a}}c[d>>2]=s;if(s)return}else t=9;while(0);if((t|0)==9)c[d>>2]=0;s=c[20]|0;j=Sg[c[(c[s>>2]|0)+8>>2]&3](s,36,0,0,0)|0;s=j+12|0;c[j>>2]=s;k=j+4|0;c[k>>2]=s;n=j+8|0;m=j+24|0;c[n>>2]=m;h=c[l>>2]|0;o=c[f>>2]|0;q=h-o|0;r=q+1|0;if((r|0)>12){p=c[20]|0;u=Sg[c[(c[p>>2]|0)+8>>2]&3](p,r,0,0,0)|0;r=c[j>>2]|0;p=c[k>>2]|0;if((r|0)==(p|0))v=r;else{w=r;r=u;while(1){a[r>>0]=a[w>>0]|0;w=w+1|0;if((w|0)==(p|0))break;else r=r+1|0}v=c[j>>2]|0}if(!((v|0)==(s|0)|(v|0)==0)){s=c[20]|0;Jg[c[(c[s>>2]|0)+12>>2]&31](s,v,0,0,0)}c[j>>2]=u;c[k>>2]=u;c[n>>2]=u+q;x=c[f>>2]|0;y=c[l>>2]|0}else{x=o;y=h}um(j,x,y);b[m>>1]=b[f+24>>1]|0;m=j+32|0;c[m>>2]=0;y=j+28|0;c[y>>2]=0;x=e+4|0;h=c[x>>2]|0;o=(c[i>>2]|0)-h|0;q=o>>2;u=c[f>>2]|0;f=c[l>>2]|0;if((f|0)==(u|0))z=0;else{l=0;n=u;while(1){u=(a[n>>0]|0)-l+(l*65600|0)|0;n=n+1|0;if((n|0)==(f|0)){z=u;break}else l=u}}l=z&q+-2;q=c[h+(l+1<<2)>>2]|0;c[y>>2]=q;do if(!q){c:do if(!l)A=0;else{y=l;while(1){if(c[h+(y<<2)>>2]|0){A=y;break c}y=y+-1|0;if(!y){A=0;break}}}while(0);y=c[h+(A<<2)>>2]|0;while(1){if(!y){t=30;break}z=y+28|0;f=c[z>>2]|0;if(!f){B=z;C=y;t=29;break}else y=f}if((t|0)==29){c[m>>2]=C;c[B>>2]=j;break}else if((t|0)==30){c[m>>2]=0;break}}else{y=q+32|0;c[m>>2]=c[y>>2];c[y>>2]=j;y=c[m>>2]|0;if(y)c[y+28>>2]=j}while(0);m=h+(l<<2)|0;d:do if((q|0)==(c[m>>2]|0)){B=m;C=l;do{c[B>>2]=j;if(!C)break d;C=C+-1|0;B=h+(C<<2)|0}while((q|0)==(c[B>>2]|0))}while(0);q=c[e>>2]|0;c[e>>2]=q+1;if((q+2|0)>>>0>o>>>0){o=c[x>>2]|0;q=c[o>>2]|0;h=c[i>>2]|0;l=o;m=h-l<<1;c[i>>2]=o;B=m+-7|0;C=e+12|0;if((o+(B<<2)|0)>>>0>(c[C>>2]|0)>>>0){e=c[20]|0;A=Sg[c[(c[e>>2]|0)+8>>2]&3](e,B<<2,0,0,0)|0;e=c[x>>2]|0;y=c[i>>2]|0;if((e|0)==(y|0)){D=x;E=e}else{f=A;z=e;while(1){c[f>>2]=c[z>>2];z=z+4|0;if((z|0)==(y|0))break;else f=f+4|0}D=x;E=c[x>>2]|0}if(E){f=c[20]|0;Jg[c[(c[f>>2]|0)+12>>2]&31](f,E,0,0,0)}c[D>>2]=A;c[i>>2]=A;c[C>>2]=A+(B<<2);F=A}else F=o;if((B|0)>0){Xo(F|0,0,F+((h<<1)+-7-(l<<1)<<2)+~F+4&-4|0)|0;l=c[x>>2]|0;G=l;H=l}else{G=F;H=c[x>>2]|0}c[i>>2]=G+(B<<2);if(q){B=m+-9|0;m=q;do{q=m+28|0;G=m;m=c[q>>2]|0;i=G+32|0;c[i>>2]=0;c[q>>2]=0;x=c[G>>2]|0;F=c[G+4>>2]|0;if((F|0)==(x|0))I=0;else{l=0;h=x;while(1){x=(a[h>>0]|0)-l+(l*65600|0)|0;h=h+1|0;if((h|0)==(F|0)){I=x;break}else l=x}}l=I&B;F=c[H+(l+1<<2)>>2]|0;c[q>>2]=F;do if(!F){e:do if(!l)J=0;else{h=l;while(1){if(c[H+(h<<2)>>2]|0){J=h;break e}h=h+-1|0;if(!h){J=0;break}}}while(0);h=c[H+(J<<2)>>2]|0;while(1){if(!h){t=60;break}x=h+28|0;o=c[x>>2]|0;if(!o){K=x;L=h;t=59;break}else h=o}if((t|0)==59){t=0;c[i>>2]=L;c[K>>2]=G;break}else if((t|0)==60){t=0;c[i>>2]=0;break}}else{h=F+32|0;c[i>>2]=c[h>>2];c[h>>2]=G;h=c[i>>2]|0;if(h)c[h+28>>2]=G}while(0);i=H+(l<<2)|0;f:do if((F|0)==(c[i>>2]|0)){q=i;h=l;do{c[q>>2]=G;if(!h)break f;h=h+-1|0;q=H+(h<<2)|0}while((F|0)==(c[q>>2]|0))}while(0)}while((m|0)!=0)}}c[d>>2]=j;a[g>>0]=1;return}function wm(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,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,x=0;g=i;i=i+8192|0;h=g;j=(f|0)==0;Xo(h|0,0,8192)|0;if(j){i=g;return}k=c[a>>2]|0;l=h+((k&2047)<<2)|0;c[l>>2]=(c[l>>2]|0)+1;if((f|0)==1){i=g;return}else{m=k;n=1;o=1}do{k=m;m=c[a+(o<<2)>>2]|0;l=h+((m&2047)<<2)|0;c[l>>2]=(c[l>>2]|0)+1;n=n&k>>>0<=m>>>0;o=o+1|0}while((o|0)!=(f|0));if(n){i=g;return}else{p=0;q=0}while(1){n=h+(p<<2)|0;o=c[n>>2]|0;c[n>>2]=q;p=p+1|0;if((p|0)==2048)break;else q=o+q|0}do if(!j){q=0;do{p=c[a+(q<<2)>>2]|0;o=h+((p&2047)<<2)|0;n=c[o>>2]|0;c[o>>2]=n+1;c[b+(n<<2)>>2]=p;c[e+(n<<2)>>2]=c[d+(q<<2)>>2];q=q+1|0}while((q|0)!=(f|0));Xo(h|0,0,8192)|0;if(!j){q=c[b>>2]|0;n=h+((q>>>11&2047)<<2)|0;c[n>>2]=(c[n>>2]|0)+1;if((f|0)!=1){n=1;p=q;q=1;do{o=p;p=c[b+(n<<2)>>2]|0;m=h+((p>>>11&2047)<<2)|0;c[m>>2]=(c[m>>2]|0)+1;q=q&o>>>0<=p>>>0;n=n+1|0}while((n|0)!=(f|0));if(!q){n=0;p=0;while(1){o=h+(n<<2)|0;m=c[o>>2]|0;c[o>>2]=p;n=n+1|0;if((n|0)==2048)break;else p=m+p|0}if(j){Xo(h|0,0,8192)|0;i=g;return}else r=0;do{p=c[b+(r<<2)>>2]|0;n=h+((p>>>11&2047)<<2)|0;q=c[n>>2]|0;c[n>>2]=q+1;c[a+(q<<2)>>2]=p;c[d+(q<<2)>>2]=c[e+(r<<2)>>2];r=r+1|0}while((r|0)!=(f|0));Xo(h|0,0,8192)|0;if(j){i=g;return}q=c[a>>2]|0;p=h+(q>>>22<<2)|0;c[p>>2]=(c[p>>2]|0)+1;if((f|0)==1){i=g;return}else{s=1;t=q;u=1}do{q=t;t=c[a+(s<<2)>>2]|0;p=h+(t>>>22<<2)|0;c[p>>2]=(c[p>>2]|0)+1;u=u&q>>>0<=t>>>0;s=s+1|0}while((s|0)!=(f|0));if(u){i=g;return}else{v=0;w=0}while(1){q=h+(v<<2)|0;p=c[q>>2]|0;c[q>>2]=w;v=v+1|0;if((v|0)==2048)break;else w=p+w|0}if(j)break;else x=0;do{p=c[a+(x<<2)>>2]|0;q=h+(p>>>22<<2)|0;n=c[q>>2]|0;c[q>>2]=n+1;c[b+(n<<2)>>2]=p;c[e+(n<<2)>>2]=c[d+(x<<2)>>2];x=x+1|0}while((x|0)!=(f|0))}}n=f<<2;Wo(a|0,b|0,n|0)|0;if(j){i=g;return}Wo(d|0,e|0,n|0)|0;i=g;return}}else Xo(h|0,0,8192)|0;while(0);Wo(a|0,b|0,f<<2|0)|0;i=g;return}function xm(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;if(!(e|d)){g=b+595243|0;a[g>>0]=1;return}h=b+595276|0;if(!(c[b+595288>>2]|0)){Bj(h,d,e);g=b+595243|0;a[g>>0]=1;return}i=b+595264|0;j=c[i>>2]|0;if(!((j|0)==0?1:(c[b+595260>>2]|0)==(j|0))?(Id(1,i|0),c[i>>2]=0,i=b+595268|0,(c[i>>2]|0)!=0):0){qf(2,i|0);c[i>>2]=0;c[b+595272>>2]=0}Ej(h,d,e,f);h=f>>>4&7;f=c[b+595228>>2]|0;i=(h|0)==0?0:1< >>0>i>>>0?i:f);g=b+595243|0;a[g>>0]=1;return}function ym(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a+595264|0;if(!(e>>>0>1&(c[f>>2]|0)==0))return;vd(1,f|0);td(36160,c[f>>2]|0);g=a+595268|0;Df(2,g|0);sc(36161,c[g>>2]|0);Jg[c[448>>2]&31](36161,e,32856,b,d);h=a+595272|0;sc(36161,c[h>>2]|0);Jg[c[448>>2]&31](36161,e,35056,b,d);Nb(36160,36064,36161,c[g>>2]|0);Nb(36160,36096,36161,c[h>>2]|0);td(36160,c[f>>2]|0);return}function zm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if((d|0)>0){f=b;g=0}else return;while(1){Ng[c[568>>2]&63](a,f);g=g+1|0;if((g|0)==(d|0))break;else f=f+e|0}return}function Am(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;if((e|0)>0){g=d;h=0}else return;while(1){Xg[c[576>>2]&63](a,b,g);h=h+1|0;if((h|0)==(e|0))break;else g=g+f|0}return}function Bm(a,b){a=a|0;b=b|0;return}function Cm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;lf(a|0,b|0,c|0);return}function Dm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;uc(a|0,b|0,c|0,d|0);return}function Em(){return}function Fm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;if(!a)e=Vo(b|0)|0;else e=a;f=e<<2;e=i;i=i+((1*(f+4|0)|0)+15&-16)|0;Tn(e,b,f|2)|0;Ng[c[416>>2]&63](a,b);i=d;return}function Gm(a,b){a=a|0;b=b|0;return}function Hm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function Im(a,b,c){a=a|0;b=b|0;c=c|0;return}function Jm(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=256;b=c[20]|0;Jg[c[(c[b>>2]|0)+12>>2]&31](b,c[a+595176>>2]|0,0,0,0);cl(a+595160|0);b=c[a+595164>>2]|0;Fh(b,(c[a+595172>>2]|0)-b|0);cl(a+595144|0);b=c[a+595148>>2]|0;Fh(b,(c[a+595156>>2]|0)-b|0);Km(a+593036|0);b=c[a+593040>>2]|0;Fh(b,(c[a+593048>>2]|0)-b|0);b=a+252044|0;d=a+405644|0;do{al(d+-16|0);e=c[d+-12>>2]|0;Fh(e,(c[d+-4>>2]|0)-e|0);d=d+-300|0}while((d|0)!=(b|0));b=a+114828|0;d=a+245900|0;do{al(d+-16|0);e=c[d+-12>>2]|0;Fh(e,(c[d+-4>>2]|0)-e|0);d=d+-32|0}while((d|0)!=(b|0));b=a+140|0;d=a+114828|0;do{al(d+-20|0);a=c[d+-16>>2]|0;Fh(a,(c[d+-8>>2]|0)-a|0);d=d+-28|0}while((d|0)!=(b|0));return}function Km(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;b=a+4|0;d=c[b>>2]|0;e=c[d>>2]|0;if(!e){f=d;g=d}else{d=e;do{e=d;d=c[d+36>>2]|0;h=c[e>>2]|0;if((h|0)!=(e+12|0))Fh(h,(c[e+8>>2]|0)-h|0);Fh(e,44)}while((d|0)!=0);d=c[b>>2]|0;f=d;g=d}d=a+8|0;c[d>>2]=f;e=a+12|0;h=f;if((g+36|0)>>>0>(c[e>>2]|0)>>>0){i=f-g>>2;f=Eh(36)|0;j=c[b>>2]|0;k=c[d>>2]|0;if((j|0)==(k|0)){l=b;m=j}else{n=f;o=j;while(1){c[n>>2]=c[o>>2];o=o+4|0;if((o|0)==(k|0))break;else n=n+4|0}l=b;m=c[b>>2]|0}Fh(m,36);c[l>>2]=f;l=f+(i<<2)|0;c[d>>2]=l;c[e>>2]=f+36;p=f;q=l}else{p=g;q=h}if(q>>>0>=(p+36|0)>>>0){r=p;s=r+36|0;c[d>>2]=s;c[a>>2]=0;return}Xo(q|0,0,p+32+(3-q)+4&-4|0)|0;r=c[b>>2]|0;s=r+36|0;c[d>>2]=s;c[a>>2]=0;return}function Lm(a){a=a|0;Jm(a);$n(a);return}function Mm(a){a=a|0;return 5}function Nm(a){a=a|0;return 117576}function Om(d,f){d=d|0;f=f|0;var g=0,h=0,i=0;if(!(a[d+595243>>0]|0))return;g=b[d+8>>1]|0;h=d+595276|0;if((g&65535)>1){i=g&65535;g=1;do{Ij(h,c[d+590476+((e[d+10+(g<<1)>>1]|0)*40|0)>>2]|0);g=g+1|0}while((g|0)!=(i|0))}a[f+140>>0]=0;b[f+128>>1]=0;b[f+130>>1]=0;Ij(h,0);return}function Pm(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0;h=e[d>>1]|0;d=c[f+4>>2]|0;i=c[f>>2]|0;c[a+140+(h*28|0)+4>>2]=d;b[a+140+(h*28|0)+24>>1]=g;g=a+140+(h*28|0)|0;Lb(1,g|0);eb(34963,c[g>>2]|0);Re(34963,d|0,i|0,((i|0)==0?35048:35044)|0);eb(34963,0);return}function Qm(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;d=e[b>>1]|0;eb(34963,0);Qe(1,a+140+(d*28|0)|0);b=(c[60]|0)+595144|0;f=a+140+(d*28|0)+8|0;g=c[c[a+140+(d*28|0)+12>>2]>>2]|0;if(!g){al(f);return}else h=g;do{$k(b,c[h>>2]|0);h=c[h+4>>2]|0}while((h|0)!=0);al(f);return}function Rm(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;f=a+585868+((e[b>>1]|0)*72|0)|0;b=d;d=f+72|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(d|0));return}function Sm(a,b){a=a|0;b=b|0;return}function Tm(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;i=e[d>>1]|0;d=c[f+4>>2]|0;j=c[f>>2]|0;f=b[g>>1]|0;c[a+114828+(i<<5)+8>>2]=d;b[a+114828+(i<<5)+12>>1]=f;f=a+114828+(i<<5)+4|0;c[f>>2]=(h&1024)!=0?36671:34962;h=a+114828+(i<<5)|0;Lb(1,h|0);eb(c[f>>2]|0,c[h>>2]|0);Re(c[f>>2]|0,d|0,j|0,((j|0)==0?35048:35044)|0);eb(c[f>>2]|0,0);return}function Um(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;d=e[b>>1]|0;eb(34962,0);Qe(1,a+114828+(d<<5)|0);b=(c[60]|0)+595144|0;f=a+114828+(d<<5)+16|0;g=c[c[a+114828+(d<<5)+20>>2]>>2]|0;if(!g){al(f);return}else h=g;do{$k(b,c[h>>2]|0);h=c[h+4>>2]|0}while((h|0)!=0);al(f);return}function Vm(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0;h=e[d>>1]|0;c[a+140+(h*28|0)+4>>2]=f;b[a+140+(h*28|0)+24>>1]=g;g=a+140+(h*28|0)|0;Lb(1,g|0);eb(34963,c[g>>2]|0);Re(34963,f|0,0,35048);eb(34963,0);return}function Wm(a,b,d,f,g){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;var h=0,i=0;h=c[g+4>>2]|0;i=c[g>>2]|0;eb(34963,c[a+140+((e[b>>1]|0)*28|0)>>2]|0);wc(34963,d|0,(h>>>0 >>0?h:f)|0,i|0);eb(34963,0);return}function Xm(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;d=e[b>>1]|0;eb(34963,0);Qe(1,a+140+(d*28|0)|0);b=(c[60]|0)+595144|0;f=a+140+(d*28|0)+8|0;g=c[c[a+140+(d*28|0)+12>>2]>>2]|0;if(!g){al(f);return}else h=g;do{$k(b,c[h>>2]|0);h=c[h+4>>2]|0}while((h|0)!=0);al(f);return}function Ym(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0;h=e[d>>1]|0;c[a+114828+(h<<5)+8>>2]=f;b[a+114828+(h<<5)+12>>1]=-1;d=a+114828+(h<<5)+4|0;c[d>>2]=(g&1024)!=0?36671:34962;g=a+114828+(h<<5)|0;Lb(1,g|0);eb(c[d>>2]|0,c[g>>2]|0);Re(c[d>>2]|0,f|0,0,35048);eb(c[d>>2]|0,0);return}function Zm(a,b,d,f,g){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;var h=0,i=0;h=e[b>>1]|0;b=c[g+4>>2]|0;i=c[g>>2]|0;g=a+114828+(h<<5)+4|0;eb(c[g>>2]|0,c[a+114828+(h<<5)>>2]|0);wc(c[g>>2]|0,d|0,(b>>>0 >>0?b:f)|0,i|0);eb(c[g>>2]|0,0);return}function _m(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;d=e[b>>1]|0;eb(34962,0);Qe(1,a+114828+(d<<5)|0);b=(c[60]|0)+595144|0;f=a+114828+(d<<5)+16|0;g=c[c[a+114828+(d<<5)+20>>2]>>2]|0;if(!g){al(f);return}else h=g;do{$k(b,c[h>>2]|0);h=c[h+4>>2]|0}while((h|0)!=0);al(f);return}function $m(a,b,c){a=a|0;b=b|0;c=c|0;rj(a+245900+((e[b>>1]|0)*12|0)|0,c);return}function an(a,b){a=a|0;b=b|0;var d=0;d=a+245900+((e[b>>1]|0)*12|0)|0;b=c[d>>2]|0;if(!b)return;_e(b|0);c[d>>2]=0;return}function bn(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0;h=i;i=i+16|0;j=h;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;k=b[g>>1]|0;ij(a+252044+((e[d>>1]|0)*300|0)|0,a+245900+((e[f>>1]|0)*12|0)|0,k<<16>>16!=-1?a+245900+((k&65535)*12|0)|0:j);i=h;return}function cn(a,b){a=a|0;b=b|0;kj(a+252044+((e[b>>1]|0)*300|0)|0);return}function dn(a,b,c,d,f){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;oj(a+405644+((e[b>>1]|0)*44|0)|0,c,d,f);return}function en(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function fn(a,b,c,d,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;pj(a+405644+((e[b>>1]|0)*44|0)|0,c,d,f,g,h,i,j);return}function gn(a){a=a|0;return}function hn(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|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,v=0;j=i;i=i+80|0;k=j;l=j+76|0;m=j+56|0;n=e[f>>1]|0;f=d+405644+(n*44|0)|0;o=Jh(24)|0;p=c[o>>2]|0;q=c[o+4>>2]|0;r=k+40|0;c[k+8>>2]=r;s=k+12|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[k>>2]=12144;c[k+4>>2]=12168;c[r>>2]=12192;c[k+44>>2]=p;c[k+48>>2]=q;c[l>>2]=5784916;r=k+16|0;c[s>>2]=p;s=k+32|0;c[s>>2]=q;c[s+4>>2]=0;s=(q|0)<0?2147483647:q;q=s>>>0<4?s:4;Wo(p|0,l|0,q|0)|0;l=r;p=Zo(q|0,((q|0)<0)<<31>>31|0,c[l>>2]|0,c[l+4>>2]|0)|0;l=E;q=r;c[q>>2]=p;c[q+4>>2]=l;q=k+24|0;r=q;s=c[r>>2]|0;t=c[r+4>>2]|0;r=(t|0)>(l|0)|(t|0)==(l|0)&s>>>0>p>>>0;u=q;c[u>>2]=r?s:p;c[u+4>>2]=r?t:l;c[m>>2]=c[d+405644+(n*44|0)+20>>2];b[m+4>>1]=g;b[m+6>>1]=h;b[m+8>>1]=0;b[m+10>>1]=0;a[m+12>>0]=1;a[m+13>>0]=a[d+405644+(n*44|0)+41>>0]|0;a[m+14>>0]=0;c[m+16>>2]=0;Ug[c[(c[k>>2]|0)+8>>2]&15](k,m,20)|0;if(c[f>>2]|0){de(c[d+405644+(n*44|0)+8>>2]|0,0);Fc(1,f|0);c[f>>2]=0}k=d+405644+(n*44|0)+4|0;if(!(c[k>>2]|0)){v=c[m>>2]|0;oj(f,o,v,0);ci(o);i=j;return}qf(1,k|0);c[k>>2]=0;v=c[m>>2]|0;oj(f,o,v,0);ci(o);i=j;return}function jn(a,b){a=a|0;b=b|0;var d=0;d=e[b>>1]|0;b=a+405644+(d*44|0)|0;if(c[b>>2]|0){de(c[a+405644+(d*44|0)+8>>2]|0,0);Fc(1,b|0);c[b>>2]=0}b=a+405644+(d*44|0)+4|0;if(!(c[b>>2]|0))return;qf(1,b|0);c[b>>2]=0;return}function kn(b,c,d,f){b=b|0;c=c|0;d=d|0;f=f|0;var g=0;g=e[c>>1]|0;vd(1,b+590476+(g*40|0)+4|0);a[b+590476+(g*40|0)+23>>0]=d;Wo(b+590476+(g*40|0)+24|0,f|0,(d&255)<<1|0)|0;sj(b+590476+(g*40|0)|0);return}function ln(a,d,e,f,g,h){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;h=a+8|0;i=b[h>>1]|0;b[h>>1]=i+1<<16>>16;h=b[d>>1]|0;b[a+10+((i&65535)<<1)>>1]=h;d=h&65535;c[a+590476+(d*40|0)>>2]=Gj((c[60]|0)+595276|0,e)|0;c[a+590476+(d*40|0)+12>>2]=f;c[a+590476+(d*40|0)+16>>2]=g;b[a+590476+(d*40|0)+20>>1]=i;return}function mn(d,f){d=d|0;f=f|0;var g=0,h=0;g=e[f>>1]|0;f=d+590476+(g*40|0)+22|0;if(a[f>>0]|0){Id(((c[d+590476+(g*40|0)+8>>2]|0)==0?1:2)|0,d+590476+(g*40|0)+4|0);a[f>>0]=0}f=d+590476+(g*40|0)|0;h=c[f>>2]|0;if(h){Hj((c[60]|0)+595276|0,h);c[f>>2]=0}f=d+590476+(g*40|0)+4|0;c[f>>2]=0;c[f+4>>2]=0;f=d+590476+(g*40|0)+20|0;g=b[f>>1]|0;b[f>>1]=-1;if(g<<16>>16==-1)return;f=d+8|0;h=(b[f>>1]|0)+-1<<16>>16;b[f>>1]=h;if((h&65535)<=1)return;f=b[d+10+((h&65535)<<1)>>1]|0;b[d+10+((g&65535)<<1)>>1]=f;b[d+590476+((f&65535)*40|0)+20>>1]=g;return}function nn(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;h=i;i=i+16|0;j=h+2|0;k=h;l=b[d>>1]|0;d=a+593052+((l&65535)<<2)|0;m=c[d>>2]|0;if(m){n=c[20]|0;Jg[c[(c[n>>2]|0)+12>>2]&31](n,m,0,0,0)}m=aa(c[216+(e<<2)>>2]|0,f&65535)|0;f=c[20]|0;e=Sg[c[(c[f>>2]|0)+8>>2]&3](f,m,0,0,0)|0;Xo(e|0,0,m|0)|0;c[d>>2]=e;b[k>>1]=l;b[j>>1]=b[k>>1]|0;on(a+593036|0,j,g,e,0)|0;i=h;return}function on(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=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,X=0,Y=0;j=i;i=i+112|0;k=j+72|0;l=j+96|0;m=j+64|0;n=j+24|0;o=j;p=k+12|0;c[k>>2]=p;q=k+4|0;c[q>>2]=p;r=k+8|0;s=k+24|0;c[r>>2]=s;if(a[f>>0]|0){t=f;u=0;while(1){v=u+1|0;t=t+1|0;if(!(a[t>>0]|0)){w=v;x=u;break}else u=v}u=x+2|0;if((u|0)>12){x=Eh(u)|0;u=c[k>>2]|0;t=c[q>>2]|0;if((u|0)==(t|0))y=u;else{v=u;u=x;while(1){a[u>>0]=a[v>>0]|0;v=v+1|0;if((v|0)==(t|0))break;else u=u+1|0}y=c[k>>2]|0}if((y|0)!=(p|0))Fh(y,(c[r>>2]|0)-y|0);c[k>>2]=x;c[q>>2]=x;y=x+w|0;c[r>>2]=y;z=x;A=y;B=w}else{z=p;A=s;B=w}}else{z=p;A=s;B=0}s=f+B|0;w=1-f|0;y=s+w|0;if((z+y|0)>>>0>A>>>0?(x=(y*3|0)>>>1,y=x+1|0,(z+y|0)>>>0>A>>>0):0){A=Eh(y)|0;y=c[k>>2]|0;u=c[q>>2]|0;if((y|0)==(u|0))C=y;else{t=y;y=A;while(1){a[y>>0]=a[t>>0]|0;t=t+1|0;if((t|0)==(u|0))break;else y=y+1|0}C=c[k>>2]|0}if((C|0)!=(p|0))Fh(C,(c[r>>2]|0)-C|0);c[k>>2]=A;c[q>>2]=A;c[r>>2]=A+x;D=A}else D=z;if(!B)E=D;else{B=f;z=D;while(1){a[z>>0]=a[B>>0]|0;D=(c[q>>2]|0)+1|0;c[q>>2]=D;B=B+1|0;if((B|0)==(s|0)){E=D;break}else z=D}}a[E>>0]=0;E=c[d+4>>2]|0;z=(c[d+8>>2]|0)-E>>2;s=c[k>>2]|0;k=c[q>>2]|0;if((k|0)==(s|0))F=0;else{q=0;B=s;while(1){D=(a[B>>0]|0)-q+(q*65600|0)|0;B=B+1|0;if((B|0)==(k|0)){F=D;break}else q=D}}q=F&z+-2;z=c[E+(q+1<<2)>>2]|0;F=c[E+(q<<2)>>2]|0;a:do if((F|0)==(z|0))G=0;else{q=k-s|0;E=F;while(1){B=c[E+4>>2]|0;D=c[E>>2]|0;if((B-D|0)==(q|0)){A=D;D=s;while(1){if((A|0)==(B|0)){G=E;break a}if((a[A>>0]|0)==(a[D>>0]|0)){A=A+1|0;D=D+1|0}else break}}E=c[E+36>>2]|0;if((E|0)==(z|0)){G=0;break}}}while(0);if((s|0)!=(p|0))Fh(s,(c[r>>2]|0)-s|0);if(G){s=G+24|0;c[s>>2]=g;c[G+28>>2]=h;b[G+32>>1]=b[e>>1]|0;H=s;i=j;return H|0}s=b[e>>1]|0;e=o+12|0;c[o>>2]=e;G=o+4|0;c[G>>2]=e;r=o+8|0;p=o+24|0;c[r>>2]=p;if(a[f>>0]|0){z=f;F=0;while(1){k=F+1|0;z=z+1|0;if(!(a[z>>0]|0)){I=k;J=F;break}else F=k}F=J+2|0;if((F|0)>12){J=Eh(F)|0;F=c[o>>2]|0;z=c[G>>2]|0;if((F|0)==(z|0))K=F;else{k=F;F=J;while(1){a[F>>0]=a[k>>0]|0;k=k+1|0;if((k|0)==(z|0))break;else F=F+1|0}K=c[o>>2]|0}if((K|0)!=(e|0))Fh(K,(c[r>>2]|0)-K|0);c[o>>2]=J;c[G>>2]=J;K=J+I|0;c[r>>2]=K;L=J;M=K;N=I}else{L=e;M=p;N=I}}else{L=e;M=p;N=0}p=f+N|0;I=p+w|0;if((L+I|0)>>>0>M>>>0?(w=(I*3|0)>>>1,I=w+1|0,(L+I|0)>>>0>M>>>0):0){M=Eh(I)|0;I=c[o>>2]|0;K=c[G>>2]|0;if((I|0)==(K|0))O=I;else{J=I;I=M;while(1){a[I>>0]=a[J>>0]|0;J=J+1|0;if((J|0)==(K|0))break;else I=I+1|0}O=c[o>>2]|0}if((O|0)!=(e|0))Fh(O,(c[r>>2]|0)-O|0);c[o>>2]=M;c[G>>2]=M;c[r>>2]=M+w;P=M}else P=L;if(!N)Q=P;else{N=f;f=P;while(1){a[f>>0]=a[N>>0]|0;P=(c[G>>2]|0)+1|0;c[G>>2]=P;N=N+1|0;if((N|0)==(p|0)){Q=P;break}else f=P}}a[Q>>0]=0;Q=n+12|0;c[n>>2]=Q;f=n+4|0;c[f>>2]=Q;p=n+8|0;N=n+24|0;c[p>>2]=N;P=c[G>>2]|0;L=c[o>>2]|0;M=P-L|0;w=M+1|0;if((w|0)>12){O=Eh(w)|0;w=c[n>>2]|0;I=c[f>>2]|0;if((w|0)==(I|0))R=w;else{K=w;w=O;while(1){a[w>>0]=a[K>>0]|0;K=K+1|0;if((K|0)==(I|0))break;else w=w+1|0}R=c[n>>2]|0}if((R|0)!=(Q|0))Fh(R,(c[p>>2]|0)-R|0);c[n>>2]=O;c[f>>2]=O;R=O+M|0;c[p>>2]=R;S=c[G>>2]|0;T=c[o>>2]|0;U=O;V=R}else{S=P;T=L;U=Q;V=N}N=S+1-T|0;if((U+N|0)>>>0>V>>>0?(L=(N*3|0)>>>1,N=L+1|0,(U+N|0)>>>0>V>>>0):0){V=Eh(N)|0;N=c[n>>2]|0;P=c[f>>2]|0;if((N|0)==(P|0))W=N;else{R=N;N=V;while(1){a[N>>0]=a[R>>0]|0;R=R+1|0;if((R|0)==(P|0))break;else N=N+1|0}W=c[n>>2]|0}if((W|0)!=(Q|0))Fh(W,(c[p>>2]|0)-W|0);c[n>>2]=V;c[f>>2]=V;c[p>>2]=V+L;X=V}else X=U;if((T|0)==(S|0))Y=X;else{U=T;T=X;while(1){a[T>>0]=a[U>>0]|0;X=(c[f>>2]|0)+1|0;c[f>>2]=X;U=U+1|0;if((U|0)==(S|0)){Y=X;break}else T=X}}a[Y>>0]=0;c[n+24>>2]=g;c[n+28>>2]=h;b[n+32>>1]=s;b[n+34>>1]=b[l>>1]|0;pn(m,d,n);d=c[n>>2]|0;if((d|0)!=(Q|0))Fh(d,(c[p>>2]|0)-d|0);d=c[o>>2]|0;if((d|0)!=(e|0))Fh(d,(c[r>>2]|0)-d|0);H=(c[m>>2]|0)+24|0;i=j;return H|0}function pn(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,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;f=b+4|0;a[f>>0]=0;g=c[d+4>>2]|0;h=d+8|0;i=(c[h>>2]|0)-g>>2;j=c[e>>2]|0;k=e+4|0;l=c[k>>2]|0;if((l|0)==(j|0))m=0;else{n=0;o=j;while(1){p=(a[o>>0]|0)-n+(n*65600|0)|0;o=o+1|0;if((o|0)==(l|0)){m=p;break}else n=p}}n=m&i+-2;i=c[g+(n+1<<2)>>2]|0;m=c[g+(n<<2)>>2]|0;a:do if((m|0)!=(i|0)){n=l-j|0;g=m;b:while(1){o=c[g+4>>2]|0;p=c[g>>2]|0;if((o-p|0)==(n|0)){q=p;p=j;while(1){if((q|0)==(o|0)){r=g;break b}if((a[q>>0]|0)==(a[p>>0]|0)){q=q+1|0;p=p+1|0}else break}}g=c[g+36>>2]|0;if((g|0)==(i|0)){s=9;break a}}c[b>>2]=r;if(r)return}else s=9;while(0);if((s|0)==9)c[b>>2]=0;r=Eh(44)|0;i=e+24|0;j=r+12|0;c[r>>2]=j;m=r+4|0;c[m>>2]=j;l=r+8|0;g=r+24|0;c[l>>2]=g;n=c[k>>2]|0;p=c[e>>2]|0;q=n-p|0;o=q+1|0;if((o|0)>12){t=Eh(o)|0;o=c[r>>2]|0;u=c[m>>2]|0;if((o|0)==(u|0))v=o;else{w=o;o=t;while(1){a[o>>0]=a[w>>0]|0;w=w+1|0;if((w|0)==(u|0))break;else o=o+1|0}v=c[r>>2]|0}if((v|0)!=(j|0))Fh(v,(c[l>>2]|0)-v|0);c[r>>2]=t;c[m>>2]=t;c[l>>2]=t+q;x=c[e>>2]|0;y=c[k>>2]|0}else{x=p;y=n}um(r,x,y);c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];i=r+40|0;c[i>>2]=0;g=r+36|0;c[g>>2]=0;y=d+4|0;x=c[y>>2]|0;n=(c[h>>2]|0)-x|0;p=n>>2;q=c[e>>2]|0;e=c[k>>2]|0;if((e|0)==(q|0))z=0;else{k=0;t=q;while(1){q=(a[t>>0]|0)-k+(k*65600|0)|0;t=t+1|0;if((t|0)==(e|0)){z=q;break}else k=q}}k=z&p+-2;p=c[x+(k+1<<2)>>2]|0;c[g>>2]=p;do if(!p){c:do if(!k)A=0;else{g=k;while(1){if(c[x+(g<<2)>>2]|0){A=g;break c}g=g+-1|0;if(!g){A=0;break}}}while(0);g=c[x+(A<<2)>>2]|0;while(1){if(!g){s=30;break}z=g+36|0;e=c[z>>2]|0;if(!e){B=z;C=g;s=29;break}else g=e}if((s|0)==29){c[i>>2]=C;c[B>>2]=r;break}else if((s|0)==30){c[i>>2]=0;break}}else{g=p+40|0;c[i>>2]=c[g>>2];c[g>>2]=r;g=c[i>>2]|0;if(g)c[g+36>>2]=r}while(0);i=x+(k<<2)|0;d:do if((p|0)==(c[i>>2]|0)){B=i;C=k;do{c[B>>2]=r;if(!C)break d;C=C+-1|0;B=x+(C<<2)|0}while((p|0)==(c[B>>2]|0))}while(0);p=c[d>>2]|0;c[d>>2]=p+1;if((p+2|0)>>>0>n>>>0){n=c[y>>2]|0;p=c[n>>2]|0;x=c[h>>2]|0;k=n;i=x-k<<1;c[h>>2]=n;B=i+-7|0;C=d+12|0;if((n+(B<<2)|0)>>>0>(c[C>>2]|0)>>>0){d=B<<2;A=Eh(d)|0;g=c[y>>2]|0;e=c[h>>2]|0;if((g|0)==(e|0)){D=y;E=g}else{z=A;t=g;while(1){c[z>>2]=c[t>>2];t=t+4|0;if((t|0)==(e|0))break;else z=z+4|0}D=y;E=c[y>>2]|0}Fh(E,d);c[D>>2]=A;c[h>>2]=A;c[C>>2]=A+(B<<2);F=A}else F=n;if((B|0)>0){Xo(F|0,0,F+((x<<1)+-7-(k<<1)<<2)+~F+4&-4|0)|0;k=c[y>>2]|0;G=k;H=k}else{G=F;H=c[y>>2]|0}c[h>>2]=G+(B<<2);if(p){B=i+-9|0;i=p;do{p=i+36|0;G=i;i=c[p>>2]|0;h=G+40|0;c[h>>2]=0;c[p>>2]=0;y=c[G>>2]|0;F=c[G+4>>2]|0;if((F|0)==(y|0))I=0;else{k=0;x=y;while(1){y=(a[x>>0]|0)-k+(k*65600|0)|0;x=x+1|0;if((x|0)==(F|0)){I=y;break}else k=y}}k=I&B;F=c[H+(k+1<<2)>>2]|0;c[p>>2]=F;do if(!F){e:do if(!k)J=0;else{x=k;while(1){if(c[H+(x<<2)>>2]|0){J=x;break e}x=x+-1|0;if(!x){J=0;break}}}while(0);x=c[H+(J<<2)>>2]|0;while(1){if(!x){s=58;break}y=x+36|0;n=c[y>>2]|0;if(!n){K=y;L=x;s=57;break}else x=n}if((s|0)==57){s=0;c[h>>2]=L;c[K>>2]=G;break}else if((s|0)==58){s=0;c[h>>2]=0;break}}else{x=F+40|0;c[h>>2]=c[x>>2];c[x>>2]=G;x=c[h>>2]|0;if(x)c[x+36>>2]=G}while(0);h=H+(k<<2)|0;f:do if((F|0)==(c[h>>2]|0)){p=h;x=k;do{c[p>>2]=G;if(!x)break f;x=x+-1|0;p=H+(x<<2)|0}while((F|0)==(c[p>>2]|0))}while(0)}while((i|0)!=0)}}c[b>>2]=r;a[f>>0]=1;return}function qn(a,b){a=a|0;b=b|0;var d=0,f=0;d=c[20]|0;f=a+593052+((e[b>>1]|0)<<2)|0;Jg[c[(c[d>>2]|0)+12>>2]&31](d,c[f>>2]|0,0,0,0);c[f>>2]=0;return}function rn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a+595200|0;e=a+595204|0;f=aa(c[d>>2]<<2,c[e>>2]|0)|0;g=c[20]|0;h=Sg[c[(c[g>>2]|0)+8>>2]&3](g,f,0,0,0)|0;g=c[d>>2]|0;d=c[e>>2]|0;e=a+595256|0;Ya(0,0,g|0,d|0,c[e>>2]|0,5121,h|0);a=g<<2;if((c[e>>2]|0)==6408)Bi(g,d,a,h,h);e=c[22]|0;Vg[c[(c[e>>2]|0)+28>>2]&7](e,b,g,d,a,h,f,1);f=c[20]|0;Jg[c[(c[f>>2]|0)+12>>2]&31](f,h,0,0,0);return}function sn(a,b,c){a=a|0;b=b|0;c=c|0;return}function tn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;Wo(c[a+593052+((b&65535)<<2)>>2]|0,d|0,e|0)|0;return}function un(a,b,d){a=a|0;b=b|0;d=d|0;Ng[c[536>>2]&63](d,b);return}function vn(a,b){a=a|0;b=b|0;var d=0,f=0,h=0,j=0,k=0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0;d=i;i=i+64|0;f=d;h=c[a+595232>>2]|0;if(h)Mg[c[640>>2]&63](h);h=c[a+595200>>2]|0;j=c[a+595204>>2]|0;td(36160,c[a+595260>>2]|0);mf(0,0,h|0,j|0);Ld(3089);Ld(2960);Ld(2929);Gc(519);Ld(2884);Ld(3042);pg(1,1,1,1);k=e[b+84>>1]|0;Ja(c[a+252044+(k*300|0)>>2]|0);le(c[a+252044+(k*300|0)+112>>2]|0,0);l=+(h>>>0);m=+(j>>>0);n=2.0/l;o=2.0/(0.0-m);p=l/(0.0-l);l=m/m;j=f;h=j+56|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(h|0));g[f>>2]=n;g[f+20>>2]=o;g[f+40>>2]=1.0000000474974513e-03;g[f+48>>2]=p+0.0;g[f+52>>2]=l;g[f+56>>2]=-0.0;g[f+60>>2]=1.0;df(c[a+252044+(k*300|0)+184>>2]|0,1,0,f|0);Be(33984);de(3553,c[a+405644+((e[b>>1]|0)*44|0)>>2]|0);i=d;return}function wn(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;f=d<<2;if(f>>>0<=5)return;g=b+8|0;h=c[g>>2]|0;i=c[h>>2]|0;eb(34963,c[a+140+((e[h+12>>1]|0)*28|0)>>2]|0);wc(34963,0,d<<1|0,i|0);eb(34963,0);i=b+4|0;h=c[i>>2]|0;j=e[h+14>>1]|0;k=aa(e[b+16>>1]|0,(f>>>0)/6|0)|0;f=c[h>>2]|0;h=a+114828+(j<<5)+4|0;eb(c[h>>2]|0,c[a+114828+(j<<5)>>2]|0);wc(c[h>>2]|0,0,k|0,f|0);eb(c[h>>2]|0,0);eb(34962,c[a+114828+((e[(c[i>>2]|0)+14>>1]|0)<<5)>>2]|0);eb(34963,c[a+140+((e[(c[g>>2]|0)+12>>1]|0)*28|0)>>2]|0);lj(a+252044+((e[b+84>>1]|0)*300|0)|0,b+12|0,0);uc(4,d|0,5123,0);return}function xn(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0,Z=0.0,_=0.0;c=+g[b>>2];d=+g[b+8>>2];e=+g[b+16>>2];f=+g[b+24>>2];h=+g[b+32>>2];i=+g[b+40>>2];j=+g[b+48>>2];k=+g[b+56>>2];l=+g[b+4>>2];m=+g[b+12>>2];n=+g[b+20>>2];o=+g[b+28>>2];p=+g[b+36>>2];q=+g[b+44>>2];r=+g[b+52>>2];s=+g[b+60>>2];t=d*q;u=f*s;v=i*m;w=k*o;x=d*p;y=f*r;z=i*l;A=k*n;B=l*q;C=n*s;D=m*p;E=o*r;F=i*C+(q*y+(p*w+(0.0-p*u))-A*q)-i*E;G=k*B+(x*s+(v*r+(0.0-r*t))-z*s)-k*D;H=d*E+(m*A+(0.0-l*w+l*u)-m*y)-d*C;I=f*D+(z*o+(0.0-n*v+n*t)-o*x)-f*B;J=c*p;K=e*r;L=h*l;M=j*n;N=c*q;O=e*s;P=h*m;Q=j*o;R=c*i;S=e*k;T=d*h;U=f*j;V=c*F;W=e*G;X=h*H;Y=j*I;Z=1.0/(Y+X+(W+V));_=1.0/(W+X+(Y+V));g[a>>2]=Z*F;g[a+4>>2]=_*G;g[a+8>>2]=Z*H;g[a+12>>2]=_*I;g[a+16>>2]=Z*(S*q+(i*Q+(0.0-h*w+h*u-i*O))-U*q);g[a+20>>2]=_*(R*s+(k*P+(0.0-j*v+j*t-k*N))-T*s);g[a+24>>2]=Z*(U*m+(d*O+(c*w+(0.0-c*u)-d*Q))-S*m);g[a+28>>2]=_*(T*o+(f*N+(e*v+(0.0-e*t)-f*P))-R*o);g[a+32>>2]=Z*(p*O+(M*q+(h*E-h*C-q*K))-p*Q);g[a+36>>2]=_*(r*N+(L*s+(j*D-j*B-J*s))-P*r);g[a+40>>2]=Z*(l*Q+(m*K+(c*C-c*E-m*M))-l*O);g[a+44>>2]=_*(n*P+(o*J+(e*B-e*D-L*o))-n*N);g[a+48>>2]=Z*(U*p+(i*K+(h*A-h*y)-i*M-S*p));g[a+52>>2]=_*(T*r+(k*J+(j*z-j*x)-k*L-R*r));g[a+56>>2]=Z*(l*S+(d*M+(c*y-c*A)-d*K-U*l));g[a+60>>2]=_*(R*n+(f*L+(e*x-e*z)-f*J-T*n));return}function yn(b){b=b|0;var d=0;d=Zn(8)|0;c[d>>2]=0;c[d+4>>2]=0;c[b>>2]=d;c[b+4>>2]=d;c[b+8>>2]=d;d=b+12|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;Xo(42352,0,256)|0;a[42379]=1;a[42365]=2;a[42362]=2;a[42361]=3;a[42479]=5;a[42384]=4;a[42390]=6;a[42392]=7;a[42389]=8;a[42413]=17;a[42395]=17;a[42397]=18;a[42447]=18;a[42411]=21;a[42410]=21;a[42391]=22;a[42386]=22;a[42443]=19;a[42475]=19;a[42445]=20;a[42477]=20;a[42396]=23;a[42412]=23;a[42398]=24;a[42414]=24;a[42399]=25;a[42415]=25;a[42444]=26;a[42476]=26;a[42448]=27;a[42478]=27;a[42400]=50;a[42401]=51;a[42402]=52;a[42403]=53;a[42404]=54;a[42405]=55;a[42406]=56;a[42407]=57;a[42408]=58;a[42409]=59;d=97;do{b=d+219&255;a[42352+(d+224&255)>>0]=b;a[42352+(d&255)>>0]=b;d=d+1|0}while((d|0)!=123);return}function zn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+4|0;d=c[b>>2]|0;e=a+8|0;a:do if((d|0)!=(c[e>>2]|0)?(f=c[d+4>>2]|0,g=c[f>>2]|0,c[b>>2]=f,(g|0)!=0):0){f=g;do{$n(f);g=c[b>>2]|0;if((g|0)==(c[e>>2]|0))break a;h=c[g+4>>2]|0;f=c[h>>2]|0;c[b>>2]=h}while((f|0)!=0)}while(0);b=c[a>>2]|0;if(!b)return;e=b;do{c[a>>2]=c[e+4>>2];$n(e);e=c[a>>2]|0}while((e|0)!=0);return}function An(){yn(42320);Pb(36,42320,n|0)|0;return}function Bn(a){a=a|0;$n(a);return}function Cn(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;if(d>>>0<9){g=Po(b)|0;return g|0}else{h=Sg[c[(c[a>>2]|0)+8>>2]&3](a,d+b|0,0,e,f)|0;f=d+3+h&0-d;d=f;c[d+-4>>2]=f-h;g=d;return g|0}return 0}function Dn(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;if(d>>>0<9){Qo(b);return}else{Jg[c[(c[a>>2]|0)+12>>2]&31](a,b+(0-(c[b+-4>>2]|0))|0,0,e,f);return}}function En(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;if(e>>>0<9){h=Ro(b,d)|0;return h|0}if(!b){i=Sg[c[(c[a>>2]|0)+8>>2]&3](a,e+d|0,0,f,g)|0;j=e+3+i&0-e;k=j;c[k+-4>>2]=j-i;h=k;return h|0}k=c[b+-4>>2]|0;i=Og[c[(c[a>>2]|0)+16>>2]&3](a,b+(0-k)|0,e+d|0,0,f,g)|0;g=i;f=e+3+g&0-e;e=f;if((e|0)==(b|0)){h=b;return h|0}_o(e|0,i+k|0,d|0)|0;c[e+-4>>2]=f-g;h=e;return h|0}function Fn(a){a=a|0;return}function Gn(a){a=a|0;$n(a+-4|0);return}function Hn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=a+-4+8|0;Rf(c[d>>2]|0,b|0,e|0)|0;e=xg(c[d>>2]|0)|0;E=((e|0)<0)<<31>>31;return e|0}function In(a){a=a|0;$n(a);return}function Jn(a,b,d){a=a|0;b=b|0;d=d|0;return Ra(b|0,1,d|0,c[a+8>>2]|0)|0}function Kn(a,b){a=a|0;b=b|0;var d=0;d=Ue(b|0,112480)|0;c[a+8>>2]=d;return (d|0)==0|0}function Ln(a){a=a|0;ze(c[a+8>>2]|0)|0;return 0}function Mn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=a+8|0;Rf(c[d>>2]|0,b|0,e|0)|0;e=xg(c[d>>2]|0)|0;E=((e|0)<0)<<31>>31;return e|0}function Nn(){if((a[42608]|0)==0?(Ua(42608)|0)!=0:0){c[10654]=42632;vc(42608)}c[10852]=42616;c[235]=0;c[236]=0;c[237]=0;c[238]=0;c[239]=0;b[464]=-1;c[243]=0;c[244]=0;c[245]=0;c[246]=0;c[247]=0;b[480]=-1;c[251]=0;c[252]=0;c[253]=0;c[254]=0;c[255]=0;b[496]=-1;c[259]=0;c[260]=0;c[261]=0;c[262]=0;c[263]=0;b[512]=-1;c[267]=0;c[268]=0;c[269]=0;c[270]=0;c[271]=0;b[528]=-1;c[275]=0;c[276]=0;c[277]=0;c[278]=0;c[279]=0;b[544]=-1;c[283]=0;c[284]=0;c[285]=0;c[286]=0;c[287]=0;b[560]=-1;c[291]=0;c[292]=0;c[293]=0;c[294]=0;c[295]=0;b[576]=-1;return}function On(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,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;f=b+4|0;a[f>>0]=0;g=c[d+4>>2]|0;h=d+8|0;i=c[e>>2]|0;j=i<<24>>24;k=(i<<16>>24)-j+(j*65600|0)|0;j=(i<<8>>24)-k+(k*65600|0)|0;k=(i>>24)-j+(j*65600|0)&((c[h>>2]|0)-g>>2)+-2;j=c[g+(k+1<<2)>>2]|0;l=c[g+(k<<2)>>2]|0;a:do if((l|0)!=(j|0)){k=l;while(1){if((c[k>>2]|0)==(i|0)){m=k;break}k=c[k+12>>2]|0;if((k|0)==(j|0)){n=4;break a}}c[b>>2]=m;if(m)return}else n=4;while(0);if((n|0)==4)c[b>>2]=0;m=ak(20)|0;c[m>>2]=c[e>>2];j=e+4|0;i=c[j+4>>2]|0;l=m+4|0;c[l>>2]=c[j>>2];c[l+4>>2]=i;i=m+16|0;c[i>>2]=0;l=m+12|0;c[l>>2]=0;j=d+4|0;k=c[j>>2]|0;g=(c[h>>2]|0)-k|0;o=c[e>>2]|0;e=o<<24>>24;p=(o<<16>>24)-e+(e*65600|0)|0;e=(o<<8>>24)-p+(p*65600|0)|0;p=(o>>24)-e+(e*65600|0)&(g>>2)+-2;e=c[k+(p+1<<2)>>2]|0;c[l>>2]=e;do if(!e){b:do if(!p)q=0;else{l=p;while(1){if(c[k+(l<<2)>>2]|0){q=l;break b}l=l+-1|0;if(!l){q=0;break}}}while(0);l=c[k+(q<<2)>>2]|0;while(1){if(!l){n=16;break}o=l+12|0;r=c[o>>2]|0;if(!r){s=o;t=l;n=15;break}else l=r}if((n|0)==15){c[i>>2]=t;c[s>>2]=m;break}else if((n|0)==16){c[i>>2]=0;break}}else{l=e+16|0;c[i>>2]=c[l>>2];c[l>>2]=m;l=c[i>>2]|0;if(l)c[l+12>>2]=m}while(0);i=k+(p<<2)|0;c:do if((e|0)==(c[i>>2]|0)){s=i;t=p;do{c[s>>2]=m;if(!t)break c;t=t+-1|0;s=k+(t<<2)|0}while((e|0)==(c[s>>2]|0))}while(0);e=c[d>>2]|0;c[d>>2]=e+1;if((e+2|0)>>>0>g>>>0){g=c[j>>2]|0;e=c[g>>2]|0;k=c[h>>2]|0;p=g;i=k-p<<1;c[h>>2]=g;s=i+-7|0;t=d+12|0;if((g+(s<<2)|0)>>>0>(c[t>>2]|0)>>>0){d=s<<2;q=ak(d)|0;l=c[j>>2]|0;r=c[h>>2]|0;if((l|0)==(r|0)){u=j;v=l}else{o=q;w=l;while(1){c[o>>2]=c[w>>2];w=w+4|0;if((w|0)==(r|0))break;else o=o+4|0}u=j;v=c[j>>2]|0}bk(v,d);c[u>>2]=q;c[h>>2]=q;c[t>>2]=q+(s<<2);x=q}else x=g;if((s|0)>0){Xo(x|0,0,x+((k<<1)+-7-(p<<1)<<2)+~x+4&-4|0)|0;p=c[j>>2]|0;y=p;z=p}else{y=x;z=c[j>>2]|0}c[h>>2]=y+(s<<2);if(e){s=i+-9|0;i=e;do{e=i+12|0;y=i;i=c[e>>2]|0;h=y+16|0;c[h>>2]=0;c[e>>2]=0;j=c[y>>2]|0;x=j<<24>>24;p=(j<<16>>24)-x+(x*65600|0)|0;x=(j<<8>>24)-p+(p*65600|0)|0;p=(j>>24)-x+(x*65600|0)&s;x=c[z+(p+1<<2)>>2]|0;c[e>>2]=x;do if(!x){d:do if(!p)A=0;else{e=p;while(1){if(c[z+(e<<2)>>2]|0){A=e;break d}e=e+-1|0;if(!e){A=0;break}}}while(0);e=c[z+(A<<2)>>2]|0;while(1){if(!e){n=42;break}j=e+12|0;k=c[j>>2]|0;if(!k){B=j;C=e;n=41;break}else e=k}if((n|0)==41){n=0;c[h>>2]=C;c[B>>2]=y;break}else if((n|0)==42){n=0;c[h>>2]=0;break}}else{e=x+16|0;c[h>>2]=c[e>>2];c[e>>2]=y;e=c[h>>2]|0;if(e)c[e+12>>2]=y}while(0);h=z+(p<<2)|0;e:do if((x|0)==(c[h>>2]|0)){e=h;k=p;do{c[e>>2]=y;if(!k)break e;k=k+-1|0;e=z+(k<<2)|0}while((x|0)==(c[e>>2]|0))}while(0)}while((i|0)!=0)}}c[b>>2]=m;a[f>>0]=1;return}function Pn(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,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=b+12|0;c[b>>2]=f;g=b+4|0;c[g>>2]=f;h=b+8|0;i=b+24|0;c[h>>2]=i;j=e+1|0;if((j|0)>12){k=ak(j)|0;j=c[b>>2]|0;l=c[g>>2]|0;if((j|0)==(l|0))m=j;else{n=j;j=k;while(1){a[j>>0]=a[n>>0]|0;n=n+1|0;if((n|0)==(l|0))break;else j=j+1|0}m=c[b>>2]|0}if((m|0)!=(f|0))bk(m,(c[h>>2]|0)-m|0);c[b>>2]=k;c[g>>2]=k;m=k+e|0;c[h>>2]=m;o=k;p=m}else{o=f;p=i}i=d+e|0;m=1-d+i|0;if((o+m|0)>>>0>p>>>0?(k=(m*3|0)>>>1,m=k+1|0,(o+m|0)>>>0>p>>>0):0){p=ak(m)|0;m=c[b>>2]|0;j=c[g>>2]|0;if((m|0)==(j|0))q=m;else{l=m;m=p;while(1){a[m>>0]=a[l>>0]|0;l=l+1|0;if((l|0)==(j|0))break;else m=m+1|0}q=c[b>>2]|0}if((q|0)!=(f|0))bk(q,(c[h>>2]|0)-q|0);c[b>>2]=p;c[g>>2]=p;c[h>>2]=p+k;r=p}else r=o;if(!e){s=r;a[s>>0]=0;return}else{t=d;u=r}while(1){a[u>>0]=a[t>>0]|0;r=(c[g>>2]|0)+1|0;c[g>>2]=r;t=t+1|0;if((t|0)==(i|0)){s=r;break}else u=r}a[s>>0]=0;return}function Qn(a){a=a|0;return ((a+-48|0)>>>0<10|(Rn(a)|0)!=0)&1|0}function Rn(a){a=a|0;return ((a|32)+-97|0)>>>0<26|0}function Sn(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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=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,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0;h=c[e>>2]|0;if((g|0)!=0?(i=c[g>>2]|0,(i|0)!=0):0)if(!b){j=f;k=i;l=h;m=16}else{c[g>>2]=0;n=b;o=f;p=i;q=h;m=37}else if(!b){r=f;s=h;m=7}else{t=b;u=f;v=h;m=6}a:while(1)if((m|0)==6){m=0;if(!u){w=v;m=26;break}else{x=t;y=u;z=v}while(1){h=a[z>>0]|0;do if(((h&255)+-1|0)>>>0<127?y>>>0>4&(z&3|0)==0:0){i=x;g=y;A=z;while(1){B=c[A>>2]|0;if((B+-16843009|B)&-2139062144){C=i;D=g;E=B;F=A;m=32;break}c[i>>2]=B&255;c[i+4>>2]=d[A+1>>0];c[i+8>>2]=d[A+2>>0];B=A+4|0;G=i+16|0;c[i+12>>2]=d[A+3>>0];H=g+-4|0;if(H>>>0>4){i=G;g=H;A=B}else{I=B;J=G;K=H;m=31;break}}if((m|0)==31){m=0;L=J;M=K;N=a[I>>0]|0;O=I;break}else if((m|0)==32){m=0;L=C;M=D;N=E&255;O=F;break}}else{L=x;M=y;N=h;O=z}while(0);h=N&255;if((h+-1|0)>>>0>=127){P=L;Q=M;R=h;S=O;break}A=O+1|0;c[L>>2]=h;y=M+-1|0;if(!y){w=A;m=26;break a}else{x=L+4|0;z=A}}A=R+-194|0;if(A>>>0>50){T=P;U=Q;V=S;m=48;break}n=P;o=Q;p=c[117600+(A<<2)>>2]|0;q=S+1|0;m=37;continue}else if((m|0)==7){m=0;A=a[s>>0]|0;if(((A&255)+-1|0)>>>0<127?(s&3|0)==0:0){h=c[s>>2]|0;if(!((h+-16843009|h)&-2139062144)){g=r;i=s;while(1){H=i+4|0;G=g+-4|0;B=c[H>>2]|0;if(!((B+-16843009|B)&-2139062144)){g=G;i=H}else{W=G;X=B;Y=H;break}}}else{W=r;X=h;Y=s}Z=W;_=X&255;$=Y}else{Z=r;_=A;$=s}i=_&255;if((i+-1|0)>>>0<127){r=Z+-1|0;s=$+1|0;m=7;continue}else{aa=Z;ba=i;ca=$}i=ba+-194|0;if(i>>>0>50){T=b;U=aa;V=ca;m=48;break}j=aa;k=c[117600+(i<<2)>>2]|0;l=ca+1|0;m=16;continue}else if((m|0)==16){m=0;i=(d[l>>0]|0)>>>3;if((i+-16|i+(k>>26))>>>0>7){m=17;break}i=l+1|0;if(k&33554432){if((a[i>>0]&-64)<<24>>24!=-128){m=20;break}g=l+2|0;if(!(k&524288))da=g;else{if((a[g>>0]&-64)<<24>>24!=-128){m=23;break}da=l+3|0}}else da=i;r=j+-1|0;s=da;m=7;continue}else if((m|0)==37){m=0;i=d[q>>0]|0;g=i>>>3;if((g+-16|g+(p>>26))>>>0>7){m=38;break}g=q+1|0;H=i+-128|p<<6;if((H|0)<0){i=d[g>>0]|0;if((i&192|0)!=128){m=41;break}B=q+2|0;G=i+-128|H<<6;if((G|0)<0){i=d[B>>0]|0;if((i&192|0)!=128){m=44;break}ea=i+-128|G<<6;fa=q+3|0}else{ea=G;fa=B}}else{ea=H;fa=g}c[n>>2]=ea;t=n+4|0;u=o+-1|0;v=fa;m=6;continue}if((m|0)==17){ga=b;ha=j;ia=k;ja=l+-1|0;m=47}else if((m|0)==20){ga=b;ha=j;ia=k;ja=l+-1|0;m=47}else if((m|0)==23){ga=b;ha=j;ia=k;ja=l+-1|0;m=47}else if((m|0)==26){c[e>>2]=w;ka=f;return ka|0}else if((m|0)==38){ga=n;ha=o;ia=p;ja=q+-1|0;m=47}else if((m|0)==41){la=n;ma=q+-1|0}else if((m|0)==44){la=n;ma=q+-1|0}if((m|0)==47)if(!ia){T=ga;U=ha;V=ja;m=48}else{la=ga;ma=ja}if((m|0)==48)if(!(a[V>>0]|0)){if(T){c[T>>2]=0;c[e>>2]=0}ka=f-U|0;return ka|0}else{la=T;ma=V}c[(fe()|0)>>2]=84;if(!la){ka=-1;return ka|0}c[e>>2]=ma;ka=-1;return ka|0}function Tn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=b;b=Sn(a,f,d,0)|0;i=e;return b|0}function Un(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=c&255;c=d;while(1){if(!c){f=0;g=4;break}c=c+-1|0;d=b+c|0;if((a[d>>0]|0)==e<<24>>24){f=d;g=4;break}}if((g|0)==4)return f|0;return 0}function Vn(b,c){b=b|0;c=c|0;var d=0;d=Wn(b,c)|0;return ((a[d>>0]|0)==(c&255)<<24>>24?d:0)|0}function Wn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=d&255;if(!e){f=b+(Vo(b|0)|0)|0;return f|0}a:do if(!(b&3))g=b;else{h=d&255;i=b;while(1){j=a[i>>0]|0;if(j<<24>>24==0?1:j<<24>>24==h<<24>>24){f=i;break}j=i+1|0;if(!(j&3)){g=j;break a}else i=j}return f|0}while(0);b=aa(e,16843009)|0;e=c[g>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009)){i=e;h=g;while(1){j=i^b;if((j&-2139062144^-2139062144)&j+-16843009){k=h;break b}j=h+4|0;i=c[j>>2]|0;if((i&-2139062144^-2139062144)&i+-16843009){k=j;break}else h=j}}else k=g;while(0);g=d&255;d=k;while(1){k=a[d>>0]|0;if(k<<24>>24==0?1:k<<24>>24==g<<24>>24){f=d;break}else d=d+1|0}return f|0}function Xn(a,b){a=a|0;b=b|0;return Un(a,b,(Vo(a|0)|0)+1|0)|0}function Yn(b,e){b=b|0;e=e|0;var f=0,g=0,h=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,x=0,y=0,z=0,A=0,B=0,C=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,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;f=i;i=i+1056|0;g=f+1024|0;h=f;j=a[e>>0]|0;if(!(j<<24>>24)){k=b;i=f;return k|0}l=Vn(b,j<<24>>24)|0;if(!l){k=0;i=f;return k|0}b=a[e+1>>0]|0;if(!(b<<24>>24)){k=l;i=f;return k|0}m=l+1|0;n=a[m>>0]|0;if(!(n<<24>>24)){k=0;i=f;return k|0}o=a[e+2>>0]|0;if(!(o<<24>>24)){p=b&255|(j&255)<<8;q=m;m=n;r=l;s=d[l>>0]<<8|n&255;while(1){t=s&65535;if((t|0)==(p|0)){u=r;v=m;break}w=q+1|0;x=a[w>>0]|0;if(!(x<<24>>24)){u=q;v=0;break}else{y=q;q=w;m=x;s=x&255|t<<8;r=y}}k=v<<24>>24!=0?u:0;i=f;return k|0}u=l+2|0;v=a[u>>0]|0;if(!(v<<24>>24)){k=0;i=f;return k|0}r=a[e+3>>0]|0;if(!(r<<24>>24)){s=(b&255)<<16|(j&255)<<24|(o&255)<<8;m=(v&255)<<8|(n&255)<<16|d[l>>0]<<24;if((m|0)==(s|0)){z=u;A=v}else{q=u;u=m;while(1){m=q+1|0;p=a[m>>0]|0;u=(p&255|u)<<8;if(p<<24>>24==0|(u|0)==(s|0)){z=m;A=p;break}else q=m}}k=A<<24>>24!=0?z+-2|0:0;i=f;return k|0}z=l+3|0;A=a[z>>0]|0;if(!(A<<24>>24)){k=0;i=f;return k|0}if(!(a[e+4>>0]|0)){q=(b&255)<<16|(j&255)<<24|(o&255)<<8|r&255;r=(v&255)<<8|(n&255)<<16|A&255|d[l>>0]<<24;if((r|0)==(q|0)){B=z;C=A}else{A=z;z=r;while(1){r=A+1|0;n=a[r>>0]|0;z=n&255|z<<8;if(n<<24>>24==0|(z|0)==(q|0)){B=r;C=n;break}else A=r}}k=C<<24>>24!=0?B+-3|0:0;i=f;return k|0};c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[g+24>>2]=0;c[g+28>>2]=0;B=j;j=0;while(1){if(!(a[l+j>>0]|0)){D=0;break}C=g+(((B&255)>>>5&255)<<2)|0;c[C>>2]=c[C>>2]|1<<(B&31);C=j+1|0;c[h+((B&255)<<2)>>2]=C;B=a[e+C>>0]|0;if(!(B<<24>>24)){E=C;F=j;G=23;break}else j=C}a:do if((G|0)==23){b:do if(E>>>0>1){j=1;B=-1;C=0;c:while(1){A=j;q=C;z=1;while(1){r=A;n=q;d:while(1){v=r;o=1;while(1){b=a[e+(o+B)>>0]|0;s=a[e+v>>0]|0;if(b<<24>>24!=s<<24>>24){H=v;I=b;J=s;K=n;break d}if((o|0)==(z|0))break;o=o+1|0;v=o+n|0;if(v>>>0>=E>>>0){L=B;M=z;break c}}n=n+z|0;r=n+1|0;if(r>>>0>=E>>>0){L=B;M=z;break c}}r=H-B|0;if((I&255)<=(J&255)){N=K;break}n=H+1|0;if(n>>>0 >>0){A=n;q=H;z=r}else{L=B;M=r;break c}}j=N+2|0;if(j>>>0>=E>>>0){L=N;M=1;break}else{B=N;C=N+1|0}}C=1;B=-1;j=0;while(1){z=C;q=j;A=1;while(1){r=z;n=q;e:while(1){v=r;o=1;while(1){s=a[e+(o+B)>>0]|0;b=a[e+v>>0]|0;if(s<<24>>24!=b<<24>>24){O=v;P=s;Q=b;R=n;break e}if((o|0)==(A|0))break;o=o+1|0;v=o+n|0;if(v>>>0>=E>>>0){S=L;T=B;U=M;V=A;break b}}n=n+A|0;r=n+1|0;if(r>>>0>=E>>>0){S=L;T=B;U=M;V=A;break b}}r=O-B|0;if((P&255)>=(Q&255)){W=R;break}n=O+1|0;if(n>>>0 >>0){z=n;q=O;A=r}else{S=L;T=B;U=M;V=r;break b}}C=W+2|0;if(C>>>0>=E>>>0){S=L;T=W;U=M;V=1;break}else{B=W;j=W+1|0}}}else{S=-1;T=-1;U=1;V=1}while(0);j=(T+1|0)>>>0>(S+1|0)>>>0;B=j?V:U;C=j?T:S;j=C+1|0;if(!(Ko(e,e+B|0,j)|0)){A=E-B|0;q=E|63;if((E|0)==(B|0)){X=q;Y=E}else{z=l;r=0;n=l;f:while(1){v=z;do if((n-v|0)>>>0 >>0){o=Jo(n,0,q)|0;if(o)if((o-v|0)>>>0 >>0){D=0;break a}else{Z=o;break}else{Z=n+q|0;break}}else Z=n;while(0);v=a[z+F>>0]|0;if(!(1<<(v&31)&c[g+(((v&255)>>>5&255)<<2)>>2])){z=z+E|0;r=0;n=Z;continue}o=c[h+((v&255)<<2)>>2]|0;v=E-o|0;if((E|0)!=(o|0)){z=z+((r|0)!=0&v>>>0>>0?A:v)|0;r=0;n=Z;continue}v=j>>>0>r>>>0?j:r;o=a[e+v>>0]|0;g:do if(!(o<<24>>24))_=j;else{b=o;s=v;while(1){if(b<<24>>24!=(a[z+s>>0]|0)){$=s;break}s=s+1|0;b=a[e+s>>0]|0;if(!(b<<24>>24)){_=j;break g}}z=z+($-C)|0;r=0;n=Z;continue f}while(0);do{if(_>>>0<=r>>>0){D=z;break a}_=_+-1|0}while((a[e+_>>0]|0)==(a[z+_>>0]|0));z=z+B|0;r=A;n=Z}}}else{n=E-C+-1|0;X=E|63;Y=(C>>>0>n>>>0?C:n)+1|0}n=e+j|0;A=l;r=l;h:while(1){B=A;do if((r-B|0)>>>0 >>0){z=Jo(r,0,X)|0;if(z)if((z-B|0)>>>0 >>0){D=0;break a}else{aa=z;break}else{aa=r+X|0;break}}else aa=r;while(0);B=a[A+F>>0]|0;if(!(1<<(B&31)&c[g+(((B&255)>>>5&255)<<2)>>2])){A=A+E|0;r=aa;continue}z=c[h+((B&255)<<2)>>2]|0;if((E|0)!=(z|0)){A=A+(E-z)|0;r=aa;continue}z=a[n>>0]|0;i:do if(!(z<<24>>24))ba=j;else{B=z;q=j;while(1){if(B<<24>>24!=(a[A+q>>0]|0)){ca=q;break}q=q+1|0;B=a[e+q>>0]|0;if(!(B<<24>>24)){ba=j;break i}}A=A+(ca-C)|0;r=aa;continue h}while(0);do{if(!ba){D=A;break a}ba=ba+-1|0}while((a[e+ba>>0]|0)==(a[A+ba>>0]|0));A=A+Y|0;r=aa}}while(0);k=D;i=f;return k|0}function Zn(a){a=a|0;var b=0,d=0,e=0;b=(a|0)==0?1:a;a=Po(b)|0;a:do if(!a){while(1){d=fo()|0;if(!d)break;hh[d&15]();d=Po(b)|0;if(d){e=d;break a}}d=Td(4)|0;c[d>>2]=117816;og(d|0,117848,29)}else e=a;while(0);return e|0}function _n(a){a=a|0;return Zn(a)|0}function $n(a){a=a|0;Qo(a);return}function ao(a){a=a|0;$n(a);return}function bo(a){a=a|0;return}function co(a){a=a|0;$n(a);return}function eo(a){a=a|0;return 118168}function fo(){var a=0;a=c[29466]|0;c[29466]=a+0;return a|0}function go(a){a=a|0;return}function ho(a){a=a|0;return}function io(a){a=a|0;return}function jo(a){a=a|0;return}function ko(a){a=a|0;return}function lo(a){a=a|0;$n(a);return}function mo(a){a=a|0;$n(a);return}function no(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;e=i;i=i+64|0;f=e;if((a|0)!=(b|0))if((b|0)!=0?(g=ro(b,117960,118016,0)|0,(g|0)!=0):0){b=f;h=b+56|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(h|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;jh[c[(c[g>>2]|0)+28>>2]&63](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];j=1}else j=0;k=j}else k=0;else k=1;i=e;return k|0}function oo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){h=d+36|0;c[h>>2]=(c[h>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}h=d+24|0;if((c[h>>2]|0)==2)c[h>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function po(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((a|0)==(c[b+8>>2]|0))oo(0,b,d,e);return}function qo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((a|0)==(c[b+8>>2]|0))oo(0,b,d,e);else{f=c[a+8>>2]|0;jh[c[(c[f>>2]|0)+28>>2]&63](f,b,d,e)}return}function ro(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=i;i=i+64|0;j=h;k=c[d>>2]|0;l=d+(c[k+-8>>2]|0)|0;m=c[k+-4>>2]|0;c[j>>2]=f;c[j+4>>2]=d;c[j+8>>2]=e;c[j+12>>2]=g;g=j+16|0;e=j+20|0;d=j+24|0;k=j+28|0;n=j+32|0;o=j+40|0;p=(m|0)==(f|0);q=g;r=q+36|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));b[g+36>>1]=0;a[g+38>>0]=0;do if(p){c[j+48>>2]=1;Wg[c[(c[f>>2]|0)+20>>2]&7](f,j,l,l,1,0);s=(c[d>>2]|0)==1?l:0}else{Jg[c[(c[m>>2]|0)+24>>2]&31](m,j,l,1,0);q=c[j+36>>2]|0;if(!q){s=(c[o>>2]|0)==1&(c[k>>2]|0)==1&(c[n>>2]|0)==1?c[e>>2]|0:0;break}else if((q|0)!=1){s=0;break}if((c[d>>2]|0)!=1?!((c[o>>2]|0)==0&(c[k>>2]|0)==1&(c[n>>2]|0)==1):0){s=0;break}s=c[g>>2]|0}while(0);i=h;return s|0}function so(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;h=c[b>>2]|0;if(!h){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((h|0)!=(e|0)){h=d+36|0;c[h>>2]=(c[h>>2]|0)+1;a[d+54>>0]=1;break}h=d+24|0;b=c[h>>2]|0;if((b|0)==2){c[h>>2]=g;i=g}else i=b;if((i|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function to(b,d,e,f,g){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;a:do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(h=d+28|0,(c[h>>2]|0)!=1):0)c[h>>2]=f}else{if((b|0)!=(c[d>>2]|0)){h=c[b+8>>2]|0;Jg[c[(c[h>>2]|0)+24>>2]&31](h,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;j=d+52|0;a[j>>0]=0;k=d+53|0;a[k>>0]=0;l=c[b+8>>2]|0;Wg[c[(c[l>>2]|0)+20>>2]&7](l,d,e,e,1,g);if(a[k>>0]|0){if(!(a[j>>0]|0)){m=1;n=13}}else{m=0;n=13}do if((n|0)==13){c[h>>2]=e;j=d+40|0;c[j>>2]=(c[j>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1;if(m)break}else n=16;if((n|0)==16?m:0)break;c[i>>2]=4;break a}while(0);c[i>>2]=3;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function uo(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(g=d+28|0,(c[g>>2]|0)!=1):0)c[g>>2]=f}else if((b|0)==(c[d>>2]|0)){if((c[d+16>>2]|0)!=(e|0)?(g=d+20|0,(c[g>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[g>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function vo(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;if((a|0)==(c[b+8>>2]|0))so(0,b,d,e,f);else{h=c[a+8>>2]|0;Wg[c[(c[h>>2]|0)+20>>2]&7](h,b,d,e,f,g)}return}function wo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if((a|0)==(c[b+8>>2]|0))so(0,b,d,e,f);return}function xo(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;c[f>>2]=b;c[g>>2]=Po((Vo(c[f>>2]|0)|0)+1|0)|0;$o(c[g>>2]|0,c[f>>2]|0)|0;c[h>>2]=Yn(c[g>>2]|0,118184)|0;if(c[h>>2]|0)a[c[h>>2]>>0]=0;c[h>>2]=Yn(c[g>>2]|0,118192)|0;if(c[h>>2]|0)a[c[h>>2]>>0]=0;c[h>>2]=Yn(c[g>>2]|0,118200)|0;if(c[h>>2]|0)a[c[h>>2]>>0]=0;c[h>>2]=Yn(c[g>>2]|0,118208)|0;if(c[h>>2]|0)a[c[h>>2]>>0]=0;do if(Lo(c[g>>2]|0,118216)|0){if(!(Lo(c[g>>2]|0,118256)|0)){c[g>>2]=118280;break}if(!(Lo(c[g>>2]|0,118296)|0)){c[g>>2]=118320;break}if(!(Lo(c[g>>2]|0,118336)|0)){c[g>>2]=118352;break}if(!(Lo(c[g>>2]|0,118368)|0))c[g>>2]=118384}else c[g>>2]=118240;while(0);do if(Lo(c[g>>2]|0,118400)|0){if(!(Lo(c[g>>2]|0,118416)|0)){c[e>>2]=9;break}if(!(Lo(c[g>>2]|0,118432)|0)){c[e>>2]=18;break}if(!(Lo(c[g>>2]|0,118448)|0)){c[e>>2]=19;break}if(!(Lo(c[g>>2]|0,118464)|0)){c[e>>2]=20;break}if(!(Lo(c[g>>2]|0,118480)|0)){c[e>>2]=21;break}if(!(Lo(c[g>>2]|0,118496)|0)){c[e>>2]=22;break}if(!(Lo(c[g>>2]|0,118520)|0)){c[e>>2]=2;break}if(!(Lo(c[g>>2]|0,118544)|0)){c[e>>2]=2;break}if(!(Lo(c[g>>2]|0,118576)|0)){c[e>>2]=3;break}if(!(Lo(c[g>>2]|0,118592)|0)){c[e>>2]=4;break}if(!(Lo(c[g>>2]|0,118608)|0)){c[e>>2]=2;break}if(!(Lo(c[g>>2]|0,118624)|0)){c[e>>2]=23;break}if(!(Lo(c[g>>2]|0,118640)|0)){c[e>>2]=10;break}if(!(Lo(c[g>>2]|0,118664)|0)){c[e>>2]=11;break}if(!(Lo(c[g>>2]|0,118688)|0)){c[e>>2]=12;break}if(!(Lo(c[g>>2]|0,118712)|0)){c[e>>2]=13;break}if(!(Lo(c[g>>2]|0,118736)|0)){c[e>>2]=10;break}if(!(Lo(c[g>>2]|0,118752)|0)){c[e>>2]=24;break}if(!(Lo(c[g>>2]|0,118768)|0)){c[e>>2]=25;break}if(!(Lo(c[g>>2]|0,118784)|0)){c[e>>2]=14;break}if(!(Lo(c[g>>2]|0,118808)|0)){c[e>>2]=15;break}if(!(Lo(c[g>>2]|0,118824)|0)){c[e>>2]=16;break}if(!(Lo(c[g>>2]|0,118840)|0)){c[e>>2]=11;break}if(!(Lo(c[g>>2]|0,118856)|0)){c[e>>2]=26;break}if(!(Lo(c[g>>2]|0,118880)|0)){c[e>>2]=27;break}if(!(Lo(c[g>>2]|0,118904)|0)){c[e>>2]=28;break}if(!(Lo(c[g>>2]|0,118928)|0)){c[e>>2]=15;break}if(!(Lo(c[g>>2]|0,118960)|0)){c[e>>2]=12;break}if(!(Lo(c[g>>2]|0,118984)|0)){c[e>>2]=16;break}if(!(Lo(c[g>>2]|0,119e3)|0)){c[e>>2]=17;break}if(!(Lo(c[g>>2]|0,119016)|0)){c[e>>2]=3;break}if(!(Lo(c[g>>2]|0,119040)|0)){c[e>>2]=18;break}if(!(Lo(c[g>>2]|0,119064)|0)){c[e>>2]=19;break}if(!(Lo(c[g>>2]|0,119088)|0)){c[e>>2]=20;break}if(!(Lo(c[g>>2]|0,119120)|0)){c[e>>2]=3;break}if(!(Lo(c[g>>2]|0,119144)|0)){c[e>>2]=1;break}if(!(Lo(c[g>>2]|0,119160)|0)){c[e>>2]=1;break}if(!(Lo(c[g>>2]|0,119176)|0)){c[e>>2]=1;break}if(!(Lo(c[g>>2]|0,119192)|0)){c[e>>2]=1;break}if(!(Lo(c[g>>2]|0,119208)|0)){c[e>>2]=29;break}if(!(Lo(c[g>>2]|0,119224)|0)){c[e>>2]=21;break}if(!(Lo(c[g>>2]|0,119240)|0)){c[e>>2]=17;break}if(!(Lo(c[g>>2]|0,119256)|0)){c[e>>2]=14;break}if(!(Lo(c[g>>2]|0,119272)|0)){c[e>>2]=22;break}if(!(Lo(c[g>>2]|0,119288)|0)){c[e>>2]=23;break}if(!(Lo(c[g>>2]|0,119304)|0)){c[e>>2]=24;break}if(!(Lo(c[g>>2]|0,119320)|0)){c[e>>2]=25;break}if(!(Lo(c[g>>2]|0,119336)|0)){c[e>>2]=26;break}if(!(Lo(c[g>>2]|0,119352)|0)){c[e>>2]=27;break}if(!(Lo(c[g>>2]|0,119368)|0)){c[e>>2]=28;break}if(!(Lo(c[g>>2]|0,119384)|0)){c[e>>2]=29;break}if(!(Lo(c[g>>2]|0,119400)|0)){c[e>>2]=18;break}if(!(Lo(c[g>>2]|0,119424)|0)){c[e>>2]=19;break}if(!(Lo(c[g>>2]|0,119448)|0)){c[e>>2]=20;break}if(!(Lo(c[g>>2]|0,119472)|0)){c[e>>2]=30;break}if(!(Lo(c[g>>2]|0,119488)|0)){c[e>>2]=31;break}if(!(Lo(c[g>>2]|0,119512)|0)){c[e>>2]=32;break}if(!(Lo(c[g>>2]|0,119536)|0)){c[e>>2]=33;break}if(!(Lo(c[g>>2]|0,119560)|0)){c[e>>2]=34;break}if(!(Lo(c[g>>2]|0,119584)|0)){c[e>>2]=4;break}if(!(Lo(c[g>>2]|0,119608)|0)){c[e>>2]=4;break}if(!(Lo(c[g>>2]|0,118320)|0)){c[e>>2]=13;break}if(!(Lo(c[g>>2]|0,119632)|0)){c[e>>2]=37;break}if(!(Lo(c[g>>2]|0,119648)|0)){c[e>>2]=21;break}if(!(Lo(c[g>>2]|0,119672)|0)){c[e>>2]=22;break}if(!(Lo(c[g>>2]|0,119688)|0)){c[e>>2]=23;break}if(!(Lo(c[g>>2]|0,119712)|0)){c[e>>2]=38;break}if(!(Lo(c[g>>2]|0,119728)|0)){c[e>>2]=24;break}if(!(Lo(c[g>>2]|0,119752)|0)){c[e>>2]=30;break}if(!(Lo(c[g>>2]|0,119768)|0)){c[e>>2]=31;break}if(!(Lo(c[g>>2]|0,119784)|0)){c[e>>2]=14;break}if(!(Lo(c[g>>2]|0,118240)|0)){c[e>>2]=7;break}if(!(Lo(c[g>>2]|0,119800)|0)){c[e>>2]=39;break}if(!(Lo(c[g>>2]|0,118352)|0)){c[e>>2]=35;break}if(!(Lo(c[g>>2]|0,118384)|0)){c[e>>2]=36;break}if(!(Lo(c[g>>2]|0,119816)|0)){c[e>>2]=25;break}if(!(Lo(c[g>>2]|0,119848)|0)){c[e>>2]=40;break}if(!(Lo(c[g>>2]|0,119864)|0)){c[e>>2]=26;break}if(!(Lo(c[g>>2]|0,118280)|0)){c[e>>2]=41;break}if(!(Lo(c[g>>2]|0,119888)|0)){c[e>>2]=42;break}if(!(Lo(c[g>>2]|0,119912)|0)){c[e>>2]=15;break}if(!(Lo(c[g>>2]|0,119928)|0)){c[e>>2]=32;break}if(!(Lo(c[g>>2]|0,119952)|0)){c[e>>2]=37;break}if(!(Lo(c[g>>2]|0,119976)|0)){c[e>>2]=38;break}if(!(Lo(c[g>>2]|0,12e4)|0)){c[e>>2]=39;break}if(!(Lo(c[g>>2]|0,120024)|0)){c[e>>2]=27;break}if(!(Lo(c[g>>2]|0,120056)|0)){c[e>>2]=15;break}if(!(Lo(c[g>>2]|0,120080)|0)){c[e>>2]=28;break}if(!(Lo(c[g>>2]|0,120120)|0)){c[e>>2]=16;break}if(!(Lo(c[g>>2]|0,120136)|0)){c[e>>2]=43;break}if(!(Lo(c[g>>2]|0,120152)|0)){c[e>>2]=33;break}if(!(Lo(c[g>>2]|0,120176)|0)){c[e>>2]=29;break}if(!(Lo(c[g>>2]|0,120192)|0)){c[e>>2]=40;break}if(!(Lo(c[g>>2]|0,120208)|0)){c[e>>2]=41;break}if(!(Lo(c[g>>2]|0,120224)|0)){c[e>>2]=5;break}if(!(Lo(c[g>>2]|0,120248)|0)){c[e>>2]=44;break}if(!(Lo(c[g>>2]|0,120272)|0)){c[e>>2]=30;break}if(!(Lo(c[g>>2]|0,120288)|0)){c[e>>2]=31;break}if(!(Lo(c[g>>2]|0,120312)|0)){c[e>>2]=34;break}if(!(Lo(c[g>>2]|0,120328)|0)){c[e>>2]=32;break}if(!(Lo(c[g>>2]|0,120344)|0)){c[e>>2]=45;break}if(!(Lo(c[g>>2]|0,120368)|0)){c[e>>2]=42;break}if(!(Lo(c[g>>2]|0,120392)|0)){c[e>>2]=43;break}if(!(Lo(c[g>>2]|0,120416)|0)){c[e>>2]=46;break}if(!(Lo(c[g>>2]|0,120440)|0)){c[e>>2]=47;break}if(!(Lo(c[g>>2]|0,120456)|0)){c[e>>2]=9;break}if(!(Lo(c[g>>2]|0,120472)|0)){c[e>>2]=48;break}if(!(Lo(c[g>>2]|0,120488)|0)){c[e>>2]=1;break}if(!(Lo(c[g>>2]|0,120504)|0)){c[e>>2]=1;break}if(!(Lo(c[g>>2]|0,120520)|0)){c[e>>2]=6;break}if(!(Lo(c[g>>2]|0,120544)|0)){c[e>>2]=49;break}if(!(Lo(c[g>>2]|0,120576)|0)){c[e>>2]=50;break}if(!(Lo(c[g>>2]|0,120608)|0)){c[e>>2]=35;break}if(!(Lo(c[g>>2]|0,120624)|0)){c[e>>2]=33;break}if(!(Lo(c[g>>2]|0,120640)|0)){c[e>>2]=16;break}if(!(Lo(c[g>>2]|0,120656)|0)){c[e>>2]=10;break}if(!(Lo(c[g>>2]|0,120680)|0)){c[e>>2]=8;break}if(!(Lo(c[g>>2]|0,120696)|0)){c[e>>2]=44;break}if(!(Lo(c[g>>2]|0,120720)|0)){c[e>>2]=34;break}if(!(Lo(c[g>>2]|0,120744)|0)){c[e>>2]=17;break}if(!(Lo(c[g>>2]|0,120768)|0)){c[e>>2]=11;break}if(!(Lo(c[g>>2]|0,120784)|0)){c[e>>2]=12;break}if(!(Lo(c[g>>2]|0,120792)|0)){c[e>>2]=1;break}if(!(Lo(c[g>>2]|0,120808)|0)){c[e>>2]=2;break}if(!(Lo(c[g>>2]|0,120824)|0)){c[e>>2]=51;break}if(!(Lo(c[g>>2]|0,120840)|0)){c[e>>2]=52;break}if(!(Lo(c[g>>2]|0,120856)|0)){c[e>>2]=53;break}if(!(Lo(c[g>>2]|0,120872)|0)){c[e>>2]=54;break}if(!(Lo(c[g>>2]|0,120888)|0)){c[e>>2]=55;break}if(!(Lo(c[g>>2]|0,120904)|0)){c[e>>2]=56;break}if(!(Lo(c[g>>2]|0,120912)|0)){c[e>>2]=3;break}if(!(Lo(c[g>>2]|0,120928)|0)){c[e>>2]=57;break}if(!(Lo(c[g>>2]|0,120944)|0)){c[e>>2]=58;break}if(!(Lo(c[g>>2]|0,120960)|0)){c[e>>2]=59;break}if(!(Lo(c[g>>2]|0,120976)|0)){c[e>>2]=17;break}if(!(Lo(c[g>>2]|0,121008)|0)){c[e>>2]=60;break}if(!(Lo(c[g>>2]|0,121032)|0)){c[e>>2]=61;break}if(!(Lo(c[g>>2]|0,121048)|0)){c[e>>2]=62;break}if(!(Lo(c[g>>2]|0,121064)|0)){c[e>>2]=18;break}if(!(Lo(c[g>>2]|0,121080)|0)){c[e>>2]=45;break}if(!(Lo(c[g>>2]|0,121096)|0)){c[e>>2]=46;break}if(!(Lo(c[g>>2]|0,121120)|0)){c[e>>2]=1;break}if(!(Lo(c[g>>2]|0,121136)|0)){c[e>>2]=2;break}if(!(Lo(c[g>>2]|0,121152)|0)){c[e>>2]=47;break}if(!(Lo(c[g>>2]|0,121176)|0)){c[e>>2]=48;break}if(!(Lo(c[g>>2]|0,121184)|0)){c[e>>2]=3;break}if(!(Lo(c[g>>2]|0,121200)|0)){c[e>>2]=2;break}if(!(Lo(c[g>>2]|0,121224)|0)){c[e>>2]=1;break}if(!(Lo(c[g>>2]|0,121248)|0)){c[e>>2]=36;break}if(!(Lo(c[g>>2]|0,121264)|0)){c[e>>2]=1;break}if(!(Lo(c[g>>2]|0,121280)|0)){c[e>>2]=2;break}if(!(Lo(c[g>>2]|0,121304)|0)){c[e>>2]=37;break}if(!(Lo(c[g>>2]|0,121320)|0)){c[e>>2]=38;break}if(!(Lo(c[g>>2]|0,121336)|0)){c[e>>2]=35;break}if(!(Lo(c[g>>2]|0,121352)|0)){c[e>>2]=2;break}if(!(Lo(c[g>>2]|0,121368)|0)){c[e>>2]=36;break}if(!(Lo(c[g>>2]|0,121384)|0)){c[e>>2]=2;break}if(!(Lo(c[g>>2]|0,121408)|0)){c[e>>2]=37;break}if(!(Lo(c[g>>2]|0,121424)|0)){c[e>>2]=38;break}if(!(Lo(c[g>>2]|0,121448)|0)){c[e>>2]=39;break}if(!(Lo(c[g>>2]|0,121472)|0)){c[e>>2]=3;break}if(!(Lo(c[g>>2]|0,121488)|0)){c[e>>2]=40;break}if(!(Lo(c[g>>2]|0,121512)|0)){c[e>>2]=41;break}if(!(Lo(c[g>>2]|0,121536)|0)){c[e>>2]=2;break}if(!(Lo(c[g>>2]|0,121560)|0)){c[e>>2]=3;break}if(!(Lo(c[g>>2]|0,121584)|0)){c[e>>2]=4;break}if(Lo(c[g>>2]|0,121608)|0){yd(0,c[f>>2]|0,c[g>>2]|0)|0;c[e>>2]=0;break}else{c[e>>2]=49;break}}else c[e>>2]=17;while(0);i=d;return c[e>>2]|0}function yo(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function zo(a){a=a|0;return (a+-65|0)>>>0<26|0}function Ao(a){a=a|0;var b=0;b=(zo(a)|0)==0;return (b?a:a|32)|0}function Bo(a,b){a=+a;b=b|0;var d=0,e=0,f=0,g=0,i=0.0,j=0.0,l=0,m=0.0;h[k>>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=bp(d|0,e|0,52)|0;g=f&2047;if(!g){if(a!=0.0){i=+Bo(a*18446744073709551616.0,b);j=i;l=(c[b>>2]|0)+-64|0}else{j=a;l=0}c[b>>2]=l;m=j;return +m}else if((g|0)==2047){m=a;return +m}else{c[b>>2]=g+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;m=+h[k>>3];return +m}return +(0.0)}function Co(a,b){a=+a;b=b|0;return +(+Bo(a,b))}function Do(a,b){a=a|0;b=b|0;var c=0;if(!a)c=0;else c=Eo(a,b,0)|0;return c|0}function Eo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if(!b){f=1;return f|0}if(d>>>0<128){a[b>>0]=d;f=1;return f|0}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;f=2;return f|0}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;f=3;return f|0}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;f=4;return f|0}else{c[(fe()|0)>>2]=84;f=-1;return f|0}return 0}function Fo(b){b=b|0;var d=0,e=0,f=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;e=c[b>>2]|0;if(!(e&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d;c[b+16>>2]=d+(c[b+48>>2]|0);f=0;return f|0}else{c[b>>2]=e|32;f=-1;return f|0}return 0}function Go(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,l=0,m=0,n=0,o=0;f=e+16|0;g=c[f>>2]|0;do if(!g)if(!(Fo(e)|0)){h=c[f>>2]|0;break}else{i=0;return i|0}else h=g;while(0);g=e+20|0;f=c[g>>2]|0;if((h-f|0)>>>0 >>0){i=Ug[c[e+36>>2]&15](e,b,d)|0;return i|0}a:do if((a[e+75>>0]|0)>-1){h=d;while(1){if(!h){j=d;k=b;l=f;m=0;break a}n=h+-1|0;if((a[b+n>>0]|0)==10){o=h;break}else h=n}if((Ug[c[e+36>>2]&15](e,b,o)|0)>>>0 >>0){i=o;return i|0}else{j=d-o|0;k=b+o|0;l=c[g>>2]|0;m=o;break}}else{j=d;k=b;l=f;m=0}while(0);Wo(l|0,k|0,j|0)|0;c[g>>2]=(c[g>>2]|0)+j;i=m+j|0;return i|0}function Ho(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=i;i=i+224|0;f=e+120|0;g=e+80|0;h=e;j=e+136|0;k=g;l=k+40|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));c[f>>2]=c[d>>2];if((No(0,b,f,h,g)|0)<0){m=-1;i=e;return m|0}d=a+48|0;if(!(c[d>>2]|0)){k=a+44|0;l=c[k>>2]|0;c[k>>2]=j;n=a+28|0;c[n>>2]=j;o=a+20|0;c[o>>2]=j;c[d>>2]=80;p=a+16|0;c[p>>2]=j+80;j=No(a,b,f,h,g)|0;if(!l)q=j;else{Ug[c[a+36>>2]&15](a,0,0)|0;r=(c[o>>2]|0)==0?-1:j;c[k>>2]=l;c[d>>2]=0;c[p>>2]=0;c[n>>2]=0;c[o>>2]=0;q=r}}else q=No(a,b,f,h,g)|0;m=q;i=e;return m|0}function Io(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=i;i=i+128|0;h=g+112|0;j=g;k=j;l=121728;m=k+112|0;do{c[k>>2]=c[l>>2];k=k+4|0;l=l+4|0}while((k|0)<(m|0));if((d+-1|0)>>>0>2147483646)if(!d){n=h;o=1}else{c[(fe()|0)>>2]=75;p=-1;i=g;return p|0}else{n=b;o=d}d=-2-n|0;b=o>>>0>d>>>0?d:o;c[j+48>>2]=b;o=j+20|0;c[o>>2]=n;c[j+44>>2]=n;d=n+b|0;n=j+16|0;c[n>>2]=d;c[j+28>>2]=d;d=Ho(j,e,f)|0;if(!b){p=d;i=g;return p|0}b=c[o>>2]|0;a[b+(((b|0)==(c[n>>2]|0))<<31>>31)>>0]=0;p=d;i=g;return p|0}function Jo(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,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;f=d&255;g=(e|0)!=0;a:do if(g&(b&3|0)!=0){h=d&255;i=e;j=b;while(1){if((a[j>>0]|0)==h<<24>>24){k=i;l=j;m=6;break a}n=j+1|0;o=i+-1|0;p=(o|0)!=0;if(p&(n&3|0)!=0){i=o;j=n}else{q=o;r=p;s=n;m=5;break}}}else{q=e;r=g;s=b;m=5}while(0);if((m|0)==5)if(r){k=q;l=s;m=6}else{t=0;u=s}b:do if((m|0)==6){s=d&255;if((a[l>>0]|0)==s<<24>>24){t=k;u=l}else{q=aa(f,16843009)|0;c:do if(k>>>0>3){r=k;b=l;while(1){g=c[b>>2]^q;if((g&-2139062144^-2139062144)&g+-16843009){v=r;w=b;break}g=b+4|0;e=r+-4|0;if(e>>>0>3){r=e;b=g}else{x=e;y=g;m=11;break c}}z=v;A=w}else{x=k;y=l;m=11}while(0);if((m|0)==11)if(!x){t=0;u=y;break}else{z=x;A=y}while(1){if((a[A>>0]|0)==s<<24>>24){t=z;u=A;break b}q=A+1|0;z=z+-1|0;if(!z){t=0;u=q;break}else A=q}}}while(0);return ((t|0)!=0?u:0)|0}function Ko(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(!d){e=0;return e|0}else{f=d;g=b;h=c}while(1){c=a[g>>0]|0;b=a[h>>0]|0;if(c<<24>>24!=b<<24>>24){i=c;j=b;break}f=f+-1|0;if(!f){e=0;k=5;break}else{g=g+1|0;h=h+1|0}}if((k|0)==5)return e|0;e=(i&255)-(j&255)|0;return e|0}function Lo(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24){f=d;g=e}else{e=b;b=c;do{e=e+1|0;b=b+1|0;c=a[e>>0]|0;d=a[b>>0]|0}while(!(c<<24>>24==0?1:c<<24>>24!=d<<24>>24));f=c;g=d}return (f&255)-(g&255)|0}function Mo(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!e){f=0;return f|0}g=a[b>>0]|0;a:do if(!(g<<24>>24)){h=0;i=c}else{j=e;k=g;l=b;m=c;while(1){j=j+-1|0;n=a[m>>0]|0;if(!(k<<24>>24==n<<24>>24&((j|0)!=0&n<<24>>24!=0))){h=k;i=m;break a}l=l+1|0;n=m+1|0;k=a[l>>0]|0;if(!(k<<24>>24)){h=0;i=n;break}else m=n}}while(0);f=(h&255)-(d[i>>0]|0)|0;return f|0}function No(e,f,g,j,l){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,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,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0.0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0.0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0.0,yb=0.0,zb=0.0,Ab=0.0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0.0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0.0,zc=0.0,Ac=0.0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=0,bd=0,cd=0,dd=0,ed=0,fd=0,gd=0,hd=0,id=0,jd=0,kd=0,ld=0,md=0,nd=0,od=0,pd=0,qd=0,rd=0,sd=0,td=0,ud=0,vd=0,wd=0,xd=0,yd=0,zd=0,Ad=0,Bd=0,Cd=0,Dd=0,Ed=0,Fd=0,Gd=0,Hd=0,Id=0,Jd=0,Kd=0;m=i;i=i+864|0;n=m+16|0;o=m+8|0;p=m+836|0;q=p;r=m+824|0;s=m+568|0;t=m+528|0;u=m;v=m+520|0;w=(e|0)!=0;x=t+40|0;y=x;z=t+39|0;t=u+4|0;A=u;B=r+12|0;C=r+11|0;r=B;D=r-q|0;F=-2-q|0;G=r+2|0;H=n+288|0;I=p+9|0;J=I;K=p+8|0;L=0;M=0;N=f;f=0;O=0;P=0;a:while(1){do if((f|0)>-1)if((O|0)>(2147483647-f|0)){c[(fe()|0)>>2]=75;Q=-1;break}else{Q=O+f|0;break}else Q=f;while(0);R=a[N>>0]|0;if(!(R<<24>>24)){S=Q;T=P;U=344;break}else{V=R;W=N}while(1){if(!(V<<24>>24)){X=W;Y=W;break}else if(V<<24>>24==37){Z=W;_=W;U=9;break}R=W+1|0;V=a[R>>0]|0;W=R}b:do if((U|0)==9)while(1){U=0;if((a[Z+1>>0]|0)!=37){X=Z;Y=_;break b}R=_+1|0;$=Z+2|0;if((a[$>>0]|0)==37){Z=$;_=R;U=9}else{X=$;Y=R;break}}while(0);R=Y-N|0;if(w)Go(N,R,e)|0;if((Y|0)!=(N|0)){N=X;f=Q;O=R;continue}$=X+1|0;ba=a[$>>0]|0;ca=(ba<<24>>24)+-48|0;if(ca>>>0<10){da=(a[X+2>>0]|0)==36;ea=da?X+3|0:$;fa=a[ea>>0]|0;ga=da?ca:-1;ha=da?1:P;ia=ea}else{fa=ba;ga=-1;ha=P;ia=$}$=fa<<24>>24;c:do if(($&-32|0)==32){ba=$;ea=fa;da=0;ca=ia;while(1){if(!(1< >24)+-32|da;na=ca+1|0;oa=a[na>>0]|0;ba=oa<<24>>24;if((ba&-32|0)!=32){ja=oa;ka=ma;la=na;break}else{ea=oa;da=ma;ca=na}}}else{ja=fa;ka=0;la=ia}while(0);do if(ja<<24>>24==42){$=la+1|0;ca=(a[$>>0]|0)+-48|0;if(ca>>>0<10?(a[la+2>>0]|0)==36:0){c[l+(ca<<2)>>2]=10;pa=1;qa=la+3|0;ra=c[j+((a[$>>0]|0)+-48<<3)>>2]|0}else{if(ha){sa=-1;U=363;break a}if(!w){ta=$;ua=ka;va=0;wa=0;break}ca=(c[g>>2]|0)+(4-1)&~(4-1);da=c[ca>>2]|0;c[g>>2]=ca+4;pa=0;qa=$;ra=da}if((ra|0)<0){ta=qa;ua=ka|8192;va=pa;wa=0-ra|0}else{ta=qa;ua=ka;va=pa;wa=ra}}else{da=(ja<<24>>24)+-48|0;if(da>>>0<10){$=la;ca=0;ea=da;while(1){da=(ca*10|0)+ea|0;ba=$+1|0;ea=(a[ba>>0]|0)+-48|0;if(ea>>>0>=10){xa=da;ya=ba;break}else{$=ba;ca=da}}if((xa|0)<0){sa=-1;U=363;break a}else{ta=ya;ua=ka;va=ha;wa=xa}}else{ta=la;ua=ka;va=ha;wa=0}}while(0);d:do if((a[ta>>0]|0)==46){ca=ta+1|0;$=a[ca>>0]|0;if($<<24>>24!=42){ea=($<<24>>24)+-48|0;if(ea>>>0<10){za=ca;Aa=0;Ba=ea}else{Ca=ca;Da=0;break}while(1){ca=(Aa*10|0)+Ba|0;ea=za+1|0;Ba=(a[ea>>0]|0)+-48|0;if(Ba>>>0>=10){Ca=ea;Da=ca;break d}else{za=ea;Aa=ca}}}ca=ta+2|0;ea=(a[ca>>0]|0)+-48|0;if(ea>>>0<10?(a[ta+3>>0]|0)==36:0){c[l+(ea<<2)>>2]=10;Ca=ta+4|0;Da=c[j+((a[ca>>0]|0)+-48<<3)>>2]|0;break}if(va){sa=-1;U=363;break a}if(w){ea=(c[g>>2]|0)+(4-1)&~(4-1);$=c[ea>>2]|0;c[g>>2]=ea+4;Ca=ca;Da=$}else{Ca=ca;Da=0}}else{Ca=ta;Da=-1}while(0);ca=Ca;$=0;while(1){ea=(a[ca>>0]|0)+-65|0;if(ea>>>0>57){sa=-1;U=363;break a}da=ca+1|0;ba=a[121840+($*58|0)+ea>>0]|0;ea=ba&255;if((ea+-1|0)>>>0<8){ca=da;$=ea}else{Ea=ca;Fa=da;Ga=ba;Ha=ea;Ia=$;break}}if(!(Ga<<24>>24)){sa=-1;U=363;break}$=(ga|0)>-1;e:do if(Ga<<24>>24==19)if($){sa=-1;U=363;break a}else{Ja=L;Ka=M;U=62}else{if($){c[l+(ga<<2)>>2]=Ha;ca=j+(ga<<3)|0;Ja=c[ca+4>>2]|0;Ka=c[ca>>2]|0;U=62;break}if(!w){sa=0;U=363;break a}if((Ga&255)>20){La=M;Ma=L}else do switch(Ha|0){case 13:{ca=(c[g>>2]|0)+(4-1)&~(4-1);ea=c[ca>>2]|0;c[g>>2]=ca+4;La=ea<<16>>16;Ma=(((ea&65535)<<16>>16|0)<0)<<31>>31;break e;break}case 14:{ea=(c[g>>2]|0)+(4-1)&~(4-1);ca=c[ea>>2]|0;c[g>>2]=ea+4;La=ca&65535;Ma=0;break e;break}case 12:{ca=(c[g>>2]|0)+(8-1)&~(8-1);ea=ca;ba=c[ea>>2]|0;da=c[ea+4>>2]|0;c[g>>2]=ca+8;La=ba;Ma=da;break e;break}case 16:{da=(c[g>>2]|0)+(4-1)&~(4-1);ba=c[da>>2]|0;c[g>>2]=da+4;La=ba&255;Ma=0;break e;break}case 15:{ba=(c[g>>2]|0)+(4-1)&~(4-1);da=c[ba>>2]|0;c[g>>2]=ba+4;La=da<<24>>24;Ma=(((da&255)<<24>>24|0)<0)<<31>>31;break e;break}case 17:{da=(c[g>>2]|0)+(8-1)&~(8-1);Na=+h[da>>3];c[g>>2]=da+8;h[k>>3]=Na;La=c[k>>2]|0;Ma=c[k+4>>2]|0;break e;break}case 10:{da=(c[g>>2]|0)+(4-1)&~(4-1);ba=c[da>>2]|0;c[g>>2]=da+4;La=ba;Ma=((ba|0)<0)<<31>>31;break e;break}case 18:{ba=(c[g>>2]|0)+(8-1)&~(8-1);Na=+h[ba>>3];c[g>>2]=ba+8;h[k>>3]=Na;La=c[k>>2]|0;Ma=c[k+4>>2]|0;break e;break}case 9:{ba=(c[g>>2]|0)+(4-1)&~(4-1);da=c[ba>>2]|0;c[g>>2]=ba+4;La=da;Ma=L;break e;break}case 11:{da=(c[g>>2]|0)+(4-1)&~(4-1);ba=c[da>>2]|0;c[g>>2]=da+4;La=ba;Ma=0;break e;break}default:{La=M;Ma=L;break e}}while(0)}while(0);if((U|0)==62){U=0;if(w){La=Ka;Ma=Ja}else{L=Ja;M=Ka;N=Fa;f=Q;O=R;P=va;continue}}$=a[Ea>>0]|0;ba=(Ia|0)!=0&($&15|0)==3?$&-33:$;$=ua&-65537;da=(ua&8192|0)==0?ua:$;f:do switch(ba|0){case 109:{Oa=Kb(c[(fe()|0)>>2]|0)|0;U=94;break}case 105:case 100:{if((Ma|0)<0){ca=Yo(0,0,La|0,Ma|0)|0;Pa=E;Qa=ca;Ra=1;Sa=122320;U=84;break f}if(!(da&2048)){ca=da&1;Pa=Ma;Qa=La;Ra=ca;Sa=(ca|0)==0?122320:122322;U=84}else{Pa=Ma;Qa=La;Ra=1;Sa=122321;U=84}break}case 88:case 120:{Ta=da;Ua=Da;Va=ba;U=73;break}case 115:{Oa=(La|0)!=0?La:122336;U=94;break}case 111:{ca=(La|0)==0&(Ma|0)==0;if(ca)Wa=x;else{ea=x;na=La;ma=Ma;while(1){oa=ea+-1|0;a[oa>>0]=na&7|48;na=bp(na|0,ma|0,3)|0;ma=E;if((na|0)==0&(ma|0)==0){Wa=oa;break}else ea=oa}}ea=(da&8|0)==0|ca;Xa=La;Ya=Ma;Za=Wa;_a=da;$a=Da;ab=ea&1^1;bb=ea?122320:122325;U=89;break}case 110:{switch(Ia|0){case 0:{c[La>>2]=Q;L=Ma;M=La;N=Fa;f=Q;O=R;P=va;continue a;break}case 1:{c[La>>2]=Q;L=Ma;M=La;N=Fa;f=Q;O=R;P=va;continue a;break}case 2:{ea=La;c[ea>>2]=Q;c[ea+4>>2]=((Q|0)<0)<<31>>31;L=Ma;M=La;N=Fa;f=Q;O=R;P=va;continue a;break}case 3:{b[La>>1]=Q;L=Ma;M=La;N=Fa;f=Q;O=R;P=va;continue a;break}case 6:{c[La>>2]=Q;L=Ma;M=La;N=Fa;f=Q;O=R;P=va;continue a;break}case 4:{a[La>>0]=Q;L=Ma;M=La;N=Fa;f=Q;O=R;P=va;continue a;break}case 7:{ea=La;c[ea>>2]=Q;c[ea+4>>2]=((Q|0)<0)<<31>>31;L=Ma;M=La;N=Fa;f=Q;O=R;P=va;continue a;break}default:{L=Ma;M=La;N=Fa;f=Q;O=R;P=va;continue a}}break}case 112:{Ta=da|8;Ua=Da>>>0>8?Da:8;Va=120;U=73;break}case 99:{a[z>>0]=La;cb=Ma;db=La;eb=z;fb=$;gb=1;hb=0;ib=122320;jb=x;break}case 83:{ea=La;if(!Da){kb=La;lb=ea;mb=0;U=102}else{nb=ea;ob=La;pb=Da;U=97}break}case 67:{c[u>>2]=La;c[t>>2]=0;nb=u;ob=A;pb=-1;U=97;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{c[k>>2]=La;c[k+4>>2]=Ma;Na=+h[k>>3];c[o>>2]=0;if((Ma|0)>=0)if(!(da&2048)){ea=da&1;qb=Na;rb=ea;sb=(ea|0)==0?122345:122350}else{qb=Na;rb=1;sb=122347}else{qb=-Na;rb=1;sb=122344}h[k>>3]=qb;ea=c[k+4>>2]&2146435072;do if(ea>>>0<2146435072|(ea|0)==2146435072&0<0){Na=+Co(qb,o)*2.0;ma=Na!=0.0;if(ma)c[o>>2]=(c[o>>2]|0)+-1;na=ba|32;if((na|0)==97){oa=ba&32;tb=(oa|0)==0?sb:sb+9|0;ub=rb|2;vb=12-Da|0;do if(!(Da>>>0>11|(vb|0)==0)){wb=vb;xb=8.0;while(1){wb=wb+-1|0;yb=xb*16.0;if(!wb){zb=yb;break}else xb=yb}if((a[tb>>0]|0)==45){Ab=-(zb+(-Na-zb));break}else{Ab=Na+zb-zb;break}}else Ab=Na;while(0);vb=c[o>>2]|0;wb=(vb|0)<0?0-vb|0:vb;if((wb|0)<0){vb=B;Bb=wb;Cb=((wb|0)<0)<<31>>31;while(1){Db=lp(Bb|0,Cb|0,10,0)|0;Eb=vb+-1|0;a[Eb>>0]=Db|48;Db=kp(Bb|0,Cb|0,10,0)|0;if(Cb>>>0>9|(Cb|0)==9&Bb>>>0>4294967295){vb=Eb;Bb=Db;Cb=E}else{Fb=Eb;Gb=Db;break}}Hb=Fb;Ib=Gb}else{Hb=B;Ib=wb}if(!Ib)Jb=Hb;else{Cb=Hb;Bb=Ib;while(1){vb=Cb+-1|0;a[vb>>0]=(Bb>>>0)%10|0|48;if(Bb>>>0<10){Jb=vb;break}else{Cb=vb;Bb=(Bb>>>0)/10|0}}}if((Jb|0)==(B|0)){a[C>>0]=48;Lb=C}else Lb=Jb;a[Lb+-1>>0]=(c[o>>2]>>31&2)+43;Bb=Lb+-2|0;a[Bb>>0]=ba+15;if(!(da&8))if((Da|0)<1){xb=Ab;Cb=p;while(1){wb=~~xb;vb=Cb+1|0;a[Cb>>0]=d[122304+wb>>0]|oa;xb=(xb-+(wb|0))*16.0;if((vb-q|0)!=1|xb==0.0)Mb=vb;else{a[vb>>0]=46;Mb=Cb+2|0}if(!(xb!=0.0)){Nb=Mb;break}else Cb=Mb}}else{xb=Ab;Cb=p;while(1){vb=~~xb;wb=Cb+1|0;a[Cb>>0]=d[122304+vb>>0]|oa;xb=(xb-+(vb|0))*16.0;if((wb-q|0)==1){a[wb>>0]=46;Ob=Cb+2|0}else Ob=wb;if(!(xb!=0.0)){Nb=Ob;break}else Cb=Ob}}else{xb=Ab;Cb=p;while(1){wb=~~xb;vb=Cb+1|0;a[Cb>>0]=d[122304+wb>>0]|oa;xb=(xb-+(wb|0))*16.0;if((vb-q|0)==1){a[vb>>0]=46;Pb=Cb+2|0}else Pb=vb;if(!(xb!=0.0)){Nb=Pb;break}else Cb=Pb}}Cb=Nb;oa=(Da|0)!=0&(F+Cb|0)<(Da|0)?G+Da-Bb|0:D-Bb+Cb|0;vb=oa+ub|0;wb=da&73728;Db=(wa|0)>(vb|0);if((wb|0)==0&Db){Eb=wa-vb|0;Xo(s|0,32,(Eb>>>0>256?256:Eb)|0)|0;if(Eb>>>0>255){Qb=Eb;do{Go(s,256,e)|0;Qb=Qb+-256|0}while(Qb>>>0>255);Rb=Eb&255}else Rb=Eb;Go(s,Rb,e)|0}Go(tb,ub,e)|0;if((wb|0)==65536&Db){Qb=wa-vb|0;Xo(s|0,48,(Qb>>>0>256?256:Qb)|0)|0;if(Qb>>>0>255){Sb=Qb;do{Go(s,256,e)|0;Sb=Sb+-256|0}while(Sb>>>0>255);Tb=Qb&255}else Tb=Qb;Go(s,Tb,e)|0}Sb=Cb-q|0;Go(p,Sb,e)|0;ub=r-Bb|0;tb=oa-ub-Sb|0;if((tb|0)>0){Xo(s|0,48,(tb>>>0>256?256:tb)|0)|0;if(tb>>>0>255){Sb=tb;do{Go(s,256,e)|0;Sb=Sb+-256|0}while(Sb>>>0>255);Ub=tb&255}else Ub=tb;Go(s,Ub,e)|0}Go(Bb,ub,e)|0;if((wb|0)==8192&Db){Sb=wa-vb|0;Xo(s|0,32,(Sb>>>0>256?256:Sb)|0)|0;if(Sb>>>0>255){oa=Sb;do{Go(s,256,e)|0;oa=oa+-256|0}while(oa>>>0>255);Vb=Sb&255}else Vb=Sb;Go(s,Vb,e)|0}Wb=Db?wa:vb;break}oa=(Da|0)<0?6:Da;if(ma){wb=(c[o>>2]|0)+-28|0;c[o>>2]=wb;Xb=Na*268435456.0;Yb=wb}else{Xb=Na;Yb=c[o>>2]|0}wb=(Yb|0)<0?n:H;ub=wb;xb=Xb;Bb=wb;while(1){tb=~~xb>>>0;c[Bb>>2]=tb;Cb=Bb+4|0;xb=(xb-+(tb>>>0))*1.0e9;if(!(xb!=0.0)){Zb=Cb;break}else Bb=Cb}Bb=c[o>>2]|0;if((Bb|0)>0){ma=Bb;vb=wb;Db=Zb;while(1){Sb=(ma|0)>29?29:ma;Cb=Db+-4|0;do if(Cb>>>0 >>0)_b=vb;else{tb=0;Qb=Cb;while(1){Eb=cp(c[Qb>>2]|0,0,Sb|0)|0;$b=Zo(Eb|0,E|0,tb|0,0)|0;Eb=E;ac=lp($b|0,Eb|0,1e9,0)|0;c[Qb>>2]=ac;ac=kp($b|0,Eb|0,1e9,0)|0;Qb=Qb+-4|0;if(Qb>>>0 >>0){bc=ac;break}else tb=ac}if(!bc){_b=vb;break}tb=vb+-4|0;c[tb>>2]=bc;_b=tb}while(0);Cb=Db;while(1){if(Cb>>>0<=_b>>>0){cc=Cb;break}tb=Cb+-4|0;if(!(c[tb>>2]|0))Cb=tb;else{cc=Cb;break}}Cb=(c[o>>2]|0)-Sb|0;c[o>>2]=Cb;if((Cb|0)>0){ma=Cb;vb=_b;Db=cc}else{dc=Cb;ec=_b;fc=cc;break}}}else{dc=Bb;ec=wb;fc=Zb}g:do if((dc|0)<0){Db=((oa+25|0)/9|0)+1|0;if((na|0)!=102){vb=dc;ma=ec;Cb=fc;while(1){tb=0-vb|0;Qb=(tb|0)>9?9:tb;do if(ma>>>0 >>0){tb=(1< >>Qb;Eb=0;$b=ma;while(1){gc=c[$b>>2]|0;c[$b>>2]=(gc>>>Qb)+Eb;hc=aa(gc&tb,ac)|0;$b=$b+4|0;if($b>>>0>=Cb>>>0){ic=hc;break}else Eb=hc}Eb=(c[ma>>2]|0)==0?ma+4|0:ma;if(!ic){jc=Eb;kc=Cb;break}c[Cb>>2]=ic;jc=Eb;kc=Cb+4|0}else{jc=(c[ma>>2]|0)==0?ma+4|0:ma;kc=Cb}while(0);Eb=(kc-jc>>2|0)>(Db|0)?jc+(Db<<2)|0:kc;vb=(c[o>>2]|0)+Qb|0;c[o>>2]=vb;if((vb|0)>=0){lc=jc;mc=Eb;break g}else{ma=jc;Cb=Eb}}}Cb=wb+(Db<<2)|0;ma=dc;vb=ec;Sb=fc;while(1){Eb=0-ma|0;$b=(Eb|0)>9?9:Eb;do if(vb>>>0 >>0){Eb=(1<<$b)+-1|0;ac=1e9>>>$b;tb=0;hc=vb;while(1){gc=c[hc>>2]|0;c[hc>>2]=(gc>>>$b)+tb;nc=aa(gc&Eb,ac)|0;hc=hc+4|0;if(hc>>>0>=Sb>>>0){oc=nc;break}else tb=nc}tb=(c[vb>>2]|0)==0?vb+4|0:vb;if(!oc){pc=tb;qc=Sb;break}c[Sb>>2]=oc;pc=tb;qc=Sb+4|0}else{pc=(c[vb>>2]|0)==0?vb+4|0:vb;qc=Sb}while(0);Qb=(qc-ub>>2|0)>(Db|0)?Cb:qc;ma=(c[o>>2]|0)+$b|0;c[o>>2]=ma;if((ma|0)>=0){lc=pc;mc=Qb;break}else{vb=pc;Sb=Qb}}}else{lc=ec;mc=fc}while(0);do if(lc>>>0 >>0){Bb=(ub-lc>>2)*9|0;Sb=c[lc>>2]|0;if(Sb>>>0<10){rc=Bb;break}else{sc=Bb;tc=10}while(1){tc=tc*10|0;Bb=sc+1|0;if(Sb>>>0 >>0){rc=Bb;break}else sc=Bb}}else rc=0;while(0);Sb=(na|0)==103;Bb=(oa|0)!=0;vb=oa-((na|0)!=102?rc:0)+((Bb&Sb)<<31>>31)|0;if((vb|0)<(((mc-ub>>2)*9|0)+-9|0)){ma=vb+9216|0;vb=(ma|0)/9|0;Cb=wb+(vb+-1023<<2)|0;Db=((ma|0)%9|0)+1|0;if((Db|0)<9){ma=10;Qb=Db;while(1){Db=ma*10|0;Qb=Qb+1|0;if((Qb|0)==9){uc=Db;break}else ma=Db}}else uc=10;ma=c[Cb>>2]|0;Qb=(ma>>>0)%(uc>>>0)|0;if((Qb|0)==0?(wb+(vb+-1022<<2)|0)==(mc|0):0){vc=lc;wc=Cb;xc=rc}else U=221;do if((U|0)==221){U=0;xb=(((ma>>>0)/(uc>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;na=(uc|0)/2|0;do if(Qb>>>0 >>0)yc=.5;else{if((Qb|0)==(na|0)?(wb+(vb+-1022<<2)|0)==(mc|0):0){yc=1.0;break}yc=1.5}while(0);do if(!rb){zc=xb;Ac=yc}else{if((a[sb>>0]|0)!=45){zc=xb;Ac=yc;break}zc=-xb;Ac=-yc}while(0);na=ma-Qb|0;c[Cb>>2]=na;if(!(zc+Ac!=zc)){vc=lc;wc=Cb;xc=rc;break}Db=na+uc|0;c[Cb>>2]=Db;if(Db>>>0>999999999){Db=lc;na=Cb;while(1){tb=na+-4|0;c[na>>2]=0;if(tb>>>0 >>0){hc=Db+-4|0;c[hc>>2]=0;Bc=hc}else Bc=Db;hc=(c[tb>>2]|0)+1|0;c[tb>>2]=hc;if(hc>>>0>999999999){Db=Bc;na=tb}else{Cc=Bc;Dc=tb;break}}}else{Cc=lc;Dc=Cb}na=(ub-Cc>>2)*9|0;Db=c[Cc>>2]|0;if(Db>>>0<10){vc=Cc;wc=Dc;xc=na;break}else{Ec=na;Fc=10}while(1){Fc=Fc*10|0;na=Ec+1|0;if(Db>>>0 >>0){vc=Cc;wc=Dc;xc=na;break}else Ec=na}}while(0);Cb=wc+4|0;Gc=vc;Hc=xc;Ic=mc>>>0>Cb>>>0?Cb:mc}else{Gc=lc;Hc=rc;Ic=mc}Cb=0-Hc|0;Qb=Ic;while(1){if(Qb>>>0<=Gc>>>0){Jc=0;Kc=Qb;break}ma=Qb+-4|0;if(!(c[ma>>2]|0))Qb=ma;else{Jc=1;Kc=Qb;break}}do if(Sb){Qb=(Bb&1^1)+oa|0;if((Qb|0)>(Hc|0)&(Hc|0)>-5){Lc=ba+-1|0;Mc=Qb+-1-Hc|0}else{Lc=ba+-2|0;Mc=Qb+-1|0}Qb=da&8;if(Qb){Nc=Lc;Oc=Mc;Pc=Qb;break}do if(Jc){Qb=c[Kc+-4>>2]|0;if(!Qb){Qc=9;break}if(!((Qb>>>0)%10|0)){Rc=10;Sc=0}else{Qc=0;break}while(1){Rc=Rc*10|0;ma=Sc+1|0;if((Qb>>>0)%(Rc>>>0)|0){Qc=ma;break}else Sc=ma}}else Qc=9;while(0);Qb=((Kc-ub>>2)*9|0)+-9|0;if((Lc|32|0)==102){$b=Qb-Qc|0;ma=($b|0)<0?0:$b;Nc=Lc;Oc=(Mc|0)<(ma|0)?Mc:ma;Pc=0;break}else{ma=Qb+Hc-Qc|0;Qb=(ma|0)<0?0:ma;Nc=Lc;Oc=(Mc|0)<(Qb|0)?Mc:Qb;Pc=0;break}}else{Nc=ba;Oc=oa;Pc=da&8}while(0);oa=Oc|Pc;ub=(oa|0)!=0&1;Bb=(Nc|32|0)==102;if(Bb){Tc=(Hc|0)>0?Hc:0;Uc=0}else{Sb=(Hc|0)<0?Cb:Hc;if((Sb|0)<0){Qb=B;ma=Sb;$b=((Sb|0)<0)<<31>>31;while(1){vb=lp(ma|0,$b|0,10,0)|0;Db=Qb+-1|0;a[Db>>0]=vb|48;vb=kp(ma|0,$b|0,10,0)|0;if($b>>>0>9|($b|0)==9&ma>>>0>4294967295){Qb=Db;ma=vb;$b=E}else{Vc=Db;Wc=vb;break}}Xc=Vc;Yc=Wc}else{Xc=B;Yc=Sb}if(!Yc)Zc=Xc;else{$b=Xc;ma=Yc;while(1){Qb=$b+-1|0;a[Qb>>0]=(ma>>>0)%10|0|48;if(ma>>>0<10){Zc=Qb;break}else{$b=Qb;ma=(ma>>>0)/10|0}}}if((r-Zc|0)<2){ma=Zc;while(1){$b=ma+-1|0;a[$b>>0]=48;if((r-$b|0)<2)ma=$b;else{_c=$b;break}}}else _c=Zc;a[_c+-1>>0]=(Hc>>31&2)+43;ma=_c+-2|0;a[ma>>0]=Nc;Tc=r-ma|0;Uc=ma}ma=rb+1+Oc+ub+Tc|0;$b=da&73728;Sb=(wa|0)>(ma|0);if(($b|0)==0&Sb){Qb=wa-ma|0;Xo(s|0,32,(Qb>>>0>256?256:Qb)|0)|0;if(Qb>>>0>255){Cb=Qb;do{Go(s,256,e)|0;Cb=Cb+-256|0}while(Cb>>>0>255);$c=Qb&255}else $c=Qb;Go(s,$c,e)|0}Go(sb,rb,e)|0;if(($b|0)==65536&Sb){Cb=wa-ma|0;Xo(s|0,48,(Cb>>>0>256?256:Cb)|0)|0;if(Cb>>>0>255){ub=Cb;do{Go(s,256,e)|0;ub=ub+-256|0}while(ub>>>0>255);ad=Cb&255}else ad=Cb;Go(s,ad,e)|0}if(Bb){ub=Gc>>>0>wb>>>0?wb:Gc;Qb=ub;while(1){vb=c[Qb>>2]|0;if(!vb)bd=I;else{Db=I;na=vb;while(1){vb=Db+-1|0;a[vb>>0]=(na>>>0)%10|0|48;if(na>>>0<10){bd=vb;break}else{Db=vb;na=(na>>>0)/10|0}}}do if((Qb|0)==(ub|0)){if((bd|0)!=(I|0)){cd=bd;break}a[K>>0]=48;cd=K}else{if(bd>>>0>p>>>0)dd=bd;else{cd=bd;break}while(1){na=dd+-1|0;a[na>>0]=48;if(na>>>0>p>>>0)dd=na;else{cd=na;break}}}while(0);Go(cd,J-cd|0,e)|0;na=Qb+4|0;if(na>>>0>wb>>>0){ed=na;break}else Qb=na}if(oa)Go(122400,1,e)|0;if((Oc|0)>0&ed>>>0 >>0){Qb=Oc;wb=ed;while(1){ub=c[wb>>2]|0;if(ub){Bb=I;Cb=ub;while(1){ub=Bb+-1|0;a[ub>>0]=(Cb>>>0)%10|0|48;if(Cb>>>0<10){fd=ub;break}else{Bb=ub;Cb=(Cb>>>0)/10|0}}if(fd>>>0>p>>>0){gd=fd;U=289}else hd=fd}else{gd=I;U=289}if((U|0)==289)while(1){U=0;Cb=gd+-1|0;a[Cb>>0]=48;if(Cb>>>0>p>>>0){gd=Cb;U=289}else{hd=Cb;break}}Cb=(Qb|0)>9;Go(hd,Cb?9:Qb,e)|0;wb=wb+4|0;Bb=Qb+-9|0;if(!(Cb&wb>>>0 >>0)){id=Bb;break}else Qb=Bb}}else id=Oc;if((id|0)>0){Xo(s|0,48,(id>>>0>256?256:id)|0)|0;if(id>>>0>255){Qb=id;do{Go(s,256,e)|0;Qb=Qb+-256|0}while(Qb>>>0>255);jd=id&255}else jd=id;Go(s,jd,e)|0}}else{Qb=Jc?Kc:Gc+4|0;do if((Oc|0)>-1){wb=(Pc|0)==0;oa=Oc;Bb=Gc;while(1){Cb=c[Bb>>2]|0;if(Cb){ub=I;na=Cb;while(1){Cb=ub+-1|0;a[Cb>>0]=(na>>>0)%10|0|48;if(na>>>0<10){kd=ub;ld=Cb;break}else{ub=Cb;na=(na>>>0)/10|0}}if((ld|0)!=(I|0)){md=kd;nd=ld}else U=303}else U=303;if((U|0)==303){U=0;a[K>>0]=48;md=I;nd=K}do if((Bb|0)==(Gc|0)){Go(nd,1,e)|0;if(wb&(oa|0)<1){od=md;break}Go(122400,1,e)|0;od=md}else{if(nd>>>0>p>>>0)pd=nd;else{od=nd;break}while(1){na=pd+-1|0;a[na>>0]=48;if(na>>>0>p>>>0)pd=na;else{od=na;break}}}while(0);na=J-od|0;Go(od,(oa|0)>(na|0)?na:oa,e)|0;ub=oa-na|0;Bb=Bb+4|0;if(!(Bb>>>0 >>0&(ub|0)>-1)){qd=ub;break}else oa=ub}if((qd|0)<=0)break;Xo(s|0,48,(qd>>>0>256?256:qd)|0)|0;if(qd>>>0>255){oa=qd;do{Go(s,256,e)|0;oa=oa+-256|0}while(oa>>>0>255);rd=qd&255}else rd=qd;Go(s,rd,e)|0}while(0);Go(Uc,r-Uc|0,e)|0}if(($b|0)==8192&Sb){Qb=wa-ma|0;Xo(s|0,32,(Qb>>>0>256?256:Qb)|0)|0;if(Qb>>>0>255){oa=Qb;do{Go(s,256,e)|0;oa=oa+-256|0}while(oa>>>0>255);sd=Qb&255}else sd=Qb;Go(s,sd,e)|0}Wb=Sb?wa:ma}else{oa=(ba&32|0)!=0;$b=qb!=qb|0.0!=0.0;Bb=$b?0:rb;wb=$b?(oa?122384:122392):oa?122368:122376;oa=Bb+3|0;$b=(wa|0)>(oa|0);if((da&8192|0)==0&$b){ub=wa-oa|0;Xo(s|0,32,(ub>>>0>256?256:ub)|0)|0;if(ub>>>0>255){na=ub;do{Go(s,256,e)|0;na=na+-256|0}while(na>>>0>255);td=ub&255}else td=ub;Go(s,td,e)|0}Go(sb,Bb,e)|0;Go(wb,3,e)|0;if((da&73728|0)==8192&$b){na=wa-oa|0;Xo(s|0,32,(na>>>0>256?256:na)|0)|0;if(na>>>0>255){ma=na;do{Go(s,256,e)|0;ma=ma+-256|0}while(ma>>>0>255);ud=na&255}else ud=na;Go(s,ud,e)|0}Wb=$b?wa:oa}while(0);L=Ma;M=La;N=Fa;f=Q;O=Wb;P=va;continue a;break}case 117:{Pa=Ma;Qa=La;Ra=0;Sa=122320;U=84;break}default:{cb=Ma;db=La;eb=N;fb=da;gb=Da;hb=0;ib=122320;jb=x}}while(0);if((U|0)==73){U=0;ba=Va&32;if(!((La|0)==0&(Ma|0)==0)){R=x;ea=La;ca=Ma;while(1){ma=R+-1|0;a[ma>>0]=d[122304+(ea&15)>>0]|ba;ea=bp(ea|0,ca|0,4)|0;ca=E;if((ea|0)==0&(ca|0)==0){vd=ma;break}else R=ma}if(!(Ta&8)){Xa=La;Ya=Ma;Za=vd;_a=Ta;$a=Ua;ab=0;bb=122320;U=89}else{Xa=La;Ya=Ma;Za=vd;_a=Ta;$a=Ua;ab=2;bb=122320+(Va>>4)|0;U=89}}else{Xa=La;Ya=Ma;Za=x;_a=Ta;$a=Ua;ab=0;bb=122320;U=89}}else if((U|0)==84){U=0;if(Pa>>>0>0|(Pa|0)==0&Qa>>>0>4294967295){R=x;ca=Qa;ea=Pa;while(1){ba=lp(ca|0,ea|0,10,0)|0;ma=R+-1|0;a[ma>>0]=ba|48;ba=kp(ca|0,ea|0,10,0)|0;if(ea>>>0>9|(ea|0)==9&ca>>>0>4294967295){R=ma;ca=ba;ea=E}else{wd=ma;xd=ba;break}}yd=wd;zd=xd}else{yd=x;zd=Qa}if(!zd){Xa=Qa;Ya=Pa;Za=yd;_a=da;$a=Da;ab=Ra;bb=Sa;U=89}else{ea=yd;ca=zd;while(1){R=ea+-1|0;a[R>>0]=(ca>>>0)%10|0|48;if(ca>>>0<10){Xa=Qa;Ya=Pa;Za=R;_a=da;$a=Da;ab=Ra;bb=Sa;U=89;break}else{ea=R;ca=(ca>>>0)/10|0}}}}else if((U|0)==94){U=0;ca=Jo(Oa,0,Da)|0;ea=(ca|0)==0;cb=Ma;db=La;eb=Oa;fb=$;gb=ea?Da:ca-Oa|0;hb=0;ib=122320;jb=ea?Oa+Da|0:ca}else if((U|0)==97){U=0;ca=0;ea=0;R=nb;while(1){ba=c[R>>2]|0;if(!ba){Ad=ca;Bd=ea;break}ma=Do(v,ba)|0;if((ma|0)<0|ma>>>0>(pb-ca|0)>>>0){Ad=ca;Bd=ma;break}ba=ma+ca|0;if(pb>>>0>ba>>>0){ca=ba;ea=ma;R=R+4|0}else{Ad=ba;Bd=ma;break}}if((Bd|0)<0){sa=-1;U=363;break}else{kb=ob;lb=nb;mb=Ad;U=102}}if((U|0)==89){U=0;R=($a|0)>-1?_a&-65537:_a;ea=(Xa|0)!=0|(Ya|0)!=0;if(ea|($a|0)!=0){ca=(ea&1^1)+(y-Za)|0;cb=Ya;db=Xa;eb=Za;fb=R;gb=($a|0)>(ca|0)?$a:ca;hb=ab;ib=bb;jb=x}else{cb=Ya;db=Xa;eb=x;fb=R;gb=0;hb=ab;ib=bb;jb=x}}else if((U|0)==102){U=0;R=da&73728;ca=(wa|0)>(mb|0);if((R|0)==0&ca){ea=wa-mb|0;Xo(s|0,32,(ea>>>0>256?256:ea)|0)|0;if(ea>>>0>255){$=ea;do{Go(s,256,e)|0;$=$+-256|0}while($>>>0>255);Cd=ea&255}else Cd=ea;Go(s,Cd,e)|0}h:do if(mb){$=0;da=lb;while(1){ma=c[da>>2]|0;if(!ma)break h;ba=Do(v,ma)|0;$=ba+$|0;if(($|0)>(mb|0))break h;Go(v,ba,e)|0;if($>>>0>=mb>>>0)break;else da=da+4|0}}while(0);if((R|0)==8192&ca){ea=wa-mb|0;Xo(s|0,32,(ea>>>0>256?256:ea)|0)|0;if(ea>>>0>255){da=ea;do{Go(s,256,e)|0;da=da+-256|0}while(da>>>0>255);Dd=ea&255}else Dd=ea;Go(s,Dd,e)|0}L=Ma;M=kb;N=Fa;f=Q;O=ca?wa:mb;P=va;continue}da=jb-eb|0;R=(gb|0)<(da|0)?da:gb;$=hb+R|0;ba=(wa|0)<($|0)?$:wa;ma=fb&73728;wb=(ba|0)>($|0);if((ma|0)==0&wb){Bb=ba-$|0;Xo(s|0,32,(Bb>>>0>256?256:Bb)|0)|0;if(Bb>>>0>255){ub=Bb;do{Go(s,256,e)|0;ub=ub+-256|0}while(ub>>>0>255);Ed=Bb&255}else Ed=Bb;Go(s,Ed,e)|0}Go(ib,hb,e)|0;if((ma|0)==65536&wb){ub=ba-$|0;Xo(s|0,48,(ub>>>0>256?256:ub)|0)|0;if(ub>>>0>255){ca=ub;do{Go(s,256,e)|0;ca=ca+-256|0}while(ca>>>0>255);Fd=ub&255}else Fd=ub;Go(s,Fd,e)|0}if((R|0)>(da|0)){ca=R-da|0;Xo(s|0,48,(ca>>>0>256?256:ca)|0)|0;if(ca>>>0>255){Bb=ca;do{Go(s,256,e)|0;Bb=Bb+-256|0}while(Bb>>>0>255);Gd=ca&255}else Gd=ca;Go(s,Gd,e)|0}Go(eb,da,e)|0;if((ma|0)==8192&wb){Bb=ba-$|0;Xo(s|0,32,(Bb>>>0>256?256:Bb)|0)|0;if(Bb>>>0>255){R=Bb;do{Go(s,256,e)|0;R=R+-256|0}while(R>>>0>255);Hd=Bb&255}else Hd=Bb;Go(s,Hd,e)|0}L=cb;M=db;N=Fa;f=Q;O=ba;P=va}if((U|0)==344){if(e){sa=S;i=m;return sa|0}if(!T){sa=0;i=m;return sa|0}else Id=1;while(1){T=c[l+(Id<<2)>>2]|0;if(!T){Jd=Id;break}S=j+(Id<<3)|0;i:do if(T>>>0<=20)do switch(T|0){case 9:{e=(c[g>>2]|0)+(4-1)&~(4-1);va=c[e>>2]|0;c[g>>2]=e+4;c[S>>2]=va;break i;break}case 10:{va=(c[g>>2]|0)+(4-1)&~(4-1);e=c[va>>2]|0;c[g>>2]=va+4;va=S;c[va>>2]=e;c[va+4>>2]=((e|0)<0)<<31>>31;break i;break}case 11:{e=(c[g>>2]|0)+(4-1)&~(4-1);va=c[e>>2]|0;c[g>>2]=e+4;e=S;c[e>>2]=va;c[e+4>>2]=0;break i;break}case 12:{e=(c[g>>2]|0)+(8-1)&~(8-1);va=e;P=c[va>>2]|0;O=c[va+4>>2]|0;c[g>>2]=e+8;e=S;c[e>>2]=P;c[e+4>>2]=O;break i;break}case 13:{O=(c[g>>2]|0)+(4-1)&~(4-1);e=c[O>>2]|0;c[g>>2]=O+4;O=(e&65535)<<16>>16;e=S;c[e>>2]=O;c[e+4>>2]=((O|0)<0)<<31>>31;break i;break}case 14:{O=(c[g>>2]|0)+(4-1)&~(4-1);e=c[O>>2]|0;c[g>>2]=O+4;O=S;c[O>>2]=e&65535;c[O+4>>2]=0;break i;break}case 15:{O=(c[g>>2]|0)+(4-1)&~(4-1);e=c[O>>2]|0;c[g>>2]=O+4;O=(e&255)<<24>>24;e=S;c[e>>2]=O;c[e+4>>2]=((O|0)<0)<<31>>31;break i;break}case 16:{O=(c[g>>2]|0)+(4-1)&~(4-1);e=c[O>>2]|0;c[g>>2]=O+4;O=S;c[O>>2]=e&255;c[O+4>>2]=0;break i;break}case 17:{O=(c[g>>2]|0)+(8-1)&~(8-1);qb=+h[O>>3];c[g>>2]=O+8;h[S>>3]=qb;break i;break}case 18:{O=(c[g>>2]|0)+(8-1)&~(8-1);qb=+h[O>>3];c[g>>2]=O+8;h[S>>3]=qb;break i;break}default:break i}while(0);while(0);Id=Id+1|0;if((Id|0)>=10){sa=1;U=363;break}}if((U|0)==363){i=m;return sa|0}if((Jd|0)<10)Kd=Jd;else{sa=1;i=m;return sa|0}while(1){if(c[l+(Kd<<2)>>2]|0){sa=-1;U=363;break}Kd=Kd+1|0;if((Kd|0)>=10){sa=1;U=363;break}}if((U|0)==363){i=m;return sa|0}}else if((U|0)==363){i=m;return sa|0}return 0}function Oo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=a+20|0;f=c[e>>2]|0;g=(c[a+16>>2]|0)-f|0;a=g>>>0>d>>>0?d:g;Wo(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0} +function Po(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,x=0,y=0,z=0,A=0,B=0,C=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,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0;do if(a>>>0<245){b=a>>>0<11?16:a+11&-8;d=b>>>3;e=c[30602]|0;f=e>>>d;if(f&3){g=(f&1^1)+d|0;h=g<<1;i=122448+(h<<2)|0;j=122448+(h+2<<2)|0;h=c[j>>2]|0;k=h+8|0;l=c[k>>2]|0;do if((i|0)!=(l|0)){if(l>>>0<(c[30606]|0)>>>0)Oe();m=l+12|0;if((c[m>>2]|0)==(h|0)){c[m>>2]=i;c[j>>2]=l;break}else Oe()}else c[30602]=e&~(1< >2]=l|3;j=h+(l|4)|0;c[j>>2]=c[j>>2]|1;n=k;return n|0}j=c[30604]|0;if(b>>>0>j>>>0){if(f){l=2< >>12&16;m=l>>>i;l=m>>>5&8;o=m>>>l;m=o>>>2&4;p=o>>>m;o=p>>>1&2;q=p>>>o;p=q>>>1&1;r=(l|i|m|o|p)+(q>>>p)|0;p=r<<1;q=122448+(p<<2)|0;o=122448+(p+2<<2)|0;p=c[o>>2]|0;m=p+8|0;i=c[m>>2]|0;do if((q|0)!=(i|0)){if(i>>>0<(c[30606]|0)>>>0)Oe();l=i+12|0;if((c[l>>2]|0)==(p|0)){c[l>>2]=q;c[o>>2]=i;s=c[30604]|0;break}else Oe()}else{c[30602]=e&~(1< >2]=b|3;i=p+b|0;c[p+(b|4)>>2]=e|1;c[p+j>>2]=e;if(s){j=c[30607]|0;o=s>>>3;q=o<<1;d=122448+(q<<2)|0;f=c[30602]|0;k=1< >2]|0;if(h>>>0<(c[30606]|0)>>>0)Oe();else{t=o;u=h}}else{c[30602]=f|k;t=122448+(q+2<<2)|0;u=d}c[t>>2]=j;c[u+12>>2]=j;c[j+8>>2]=u;c[j+12>>2]=d}c[30604]=e;c[30607]=i;n=m;return n|0}i=c[30603]|0;if(i){e=(i&0-i)+-1|0;i=e>>>12&16;d=e>>>i;e=d>>>5&8;j=d>>>e;d=j>>>2&4;q=j>>>d;j=q>>>1&2;k=q>>>j;q=k>>>1&1;f=c[122712+((e|i|d|j|q)+(k>>>q)<<2)>>2]|0;q=(c[f+4>>2]&-8)-b|0;k=f;j=f;while(1){f=c[k+16>>2]|0;if(!f){d=c[k+20>>2]|0;if(!d){v=q;w=j;break}else x=d}else x=f;f=(c[x+4>>2]&-8)-b|0;d=f>>>0 >>0;q=d?f:q;k=x;j=d?x:j}j=c[30606]|0;if(w>>>0>>0)Oe();k=w+b|0;if(w>>>0>=k>>>0)Oe();q=c[w+24>>2]|0;m=c[w+12>>2]|0;do if((m|0)==(w|0)){p=w+20|0;r=c[p>>2]|0;if(!r){d=w+16|0;f=c[d>>2]|0;if(!f){y=0;break}else{z=f;A=d}}else{z=r;A=p}while(1){p=z+20|0;r=c[p>>2]|0;if(r){z=r;A=p;continue}p=z+16|0;r=c[p>>2]|0;if(!r){B=z;C=A;break}else{z=r;A=p}}if(C>>>0 >>0)Oe();else{c[C>>2]=0;y=B;break}}else{p=c[w+8>>2]|0;if(p>>>0 >>0)Oe();r=p+12|0;if((c[r>>2]|0)!=(w|0))Oe();d=m+8|0;if((c[d>>2]|0)==(w|0)){c[r>>2]=m;c[d>>2]=p;y=m;break}else Oe()}while(0);do if(q){m=c[w+28>>2]|0;j=122712+(m<<2)|0;if((w|0)==(c[j>>2]|0)){c[j>>2]=y;if(!y){c[30603]=c[30603]&~(1< >>0<(c[30606]|0)>>>0)Oe();m=q+16|0;if((c[m>>2]|0)==(w|0))c[m>>2]=y;else c[q+20>>2]=y;if(!y)break}m=c[30606]|0;if(y>>>0 >>0)Oe();c[y+24>>2]=q;j=c[w+16>>2]|0;do if(j)if(j>>>0 >>0)Oe();else{c[y+16>>2]=j;c[j+24>>2]=y;break}while(0);j=c[w+20>>2]|0;if(j)if(j>>>0<(c[30606]|0)>>>0)Oe();else{c[y+20>>2]=j;c[j+24>>2]=y;break}}while(0);if(v>>>0<16){q=v+b|0;c[w+4>>2]=q|3;j=w+(q+4)|0;c[j>>2]=c[j>>2]|1}else{c[w+4>>2]=b|3;c[w+(b|4)>>2]=v|1;c[w+(v+b)>>2]=v;j=c[30604]|0;if(j){q=c[30607]|0;m=j>>>3;j=m<<1;p=122448+(j<<2)|0;d=c[30602]|0;r=1< >2]|0;if(f>>>0<(c[30606]|0)>>>0)Oe();else{D=m;E=f}}else{c[30602]=d|r;D=122448+(j+2<<2)|0;E=p}c[D>>2]=q;c[E+12>>2]=q;c[q+8>>2]=E;c[q+12>>2]=p}c[30604]=v;c[30607]=k}n=w+8|0;return n|0}else F=b}else F=b}else if(a>>>0<=4294967231){p=a+11|0;q=p&-8;j=c[30603]|0;if(j){r=0-q|0;d=p>>>8;if(d)if(q>>>0>16777215)G=31;else{p=(d+1048320|0)>>>16&8;f=d< >>16&4;m=f<
>>16&2;i=14-(d|p|f)+(m< >>15)|0;G=q>>>(i+7|0)&1|i<<1}else G=0;i=c[122712+(G<<2)>>2]|0;a:do if(!i){H=r;I=0;J=0;K=86}else{f=r;m=0;p=q<<((G|0)==31?0:25-(G>>>1)|0);d=i;e=0;while(1){h=c[d+4>>2]&-8;o=h-q|0;if(o>>>0 >>0)if((h|0)==(q|0)){L=o;M=d;N=d;K=90;break a}else{O=o;P=d}else{O=f;P=e}o=c[d+20>>2]|0;d=c[d+16+(p>>>31<<2)>>2]|0;h=(o|0)==0|(o|0)==(d|0)?m:o;if(!d){H=O;I=h;J=P;K=86;break}else{f=O;m=h;p=p<<1;e=P}}}while(0);if((K|0)==86){if((I|0)==0&(J|0)==0){i=2< >>12&16;b=i>>>r;i=b>>>5&8;k=b>>>i;b=k>>>2&4;e=k>>>b;k=e>>>1&2;p=e>>>k;e=p>>>1&1;Q=c[122712+((i|r|b|k|e)+(p>>>e)<<2)>>2]|0;R=0}else{Q=I;R=J}if(!Q){S=H;T=R}else{L=H;M=Q;N=R;K=90}}if((K|0)==90)while(1){K=0;e=(c[M+4>>2]&-8)-q|0;p=e>>>0 >>0;k=p?e:L;e=p?M:N;p=c[M+16>>2]|0;if(p){L=k;M=p;N=e;K=90;continue}M=c[M+20>>2]|0;if(!M){S=k;T=e;break}else{L=k;N=e;K=90}}if((T|0)!=0?S>>>0<((c[30604]|0)-q|0)>>>0:0){j=c[30606]|0;if(T>>>0 >>0)Oe();e=T+q|0;if(T>>>0>=e>>>0)Oe();k=c[T+24>>2]|0;p=c[T+12>>2]|0;do if((p|0)==(T|0)){b=T+20|0;r=c[b>>2]|0;if(!r){i=T+16|0;m=c[i>>2]|0;if(!m){U=0;break}else{V=m;W=i}}else{V=r;W=b}while(1){b=V+20|0;r=c[b>>2]|0;if(r){V=r;W=b;continue}b=V+16|0;r=c[b>>2]|0;if(!r){X=V;Y=W;break}else{V=r;W=b}}if(Y>>>0 >>0)Oe();else{c[Y>>2]=0;U=X;break}}else{b=c[T+8>>2]|0;if(b>>>0 >>0)Oe();r=b+12|0;if((c[r>>2]|0)!=(T|0))Oe();i=p+8|0;if((c[i>>2]|0)==(T|0)){c[r>>2]=p;c[i>>2]=b;U=p;break}else Oe()}while(0);do if(k){p=c[T+28>>2]|0;j=122712+(p<<2)|0;if((T|0)==(c[j>>2]|0)){c[j>>2]=U;if(!U){c[30603]=c[30603]&~(1< >>0<(c[30606]|0)>>>0)Oe();p=k+16|0;if((c[p>>2]|0)==(T|0))c[p>>2]=U;else c[k+20>>2]=U;if(!U)break}p=c[30606]|0;if(U>>>0
>>0)Oe();c[U+24>>2]=k;j=c[T+16>>2]|0;do if(j)if(j>>>0
>>0)Oe();else{c[U+16>>2]=j;c[j+24>>2]=U;break}while(0);j=c[T+20>>2]|0;if(j)if(j>>>0<(c[30606]|0)>>>0)Oe();else{c[U+20>>2]=j;c[j+24>>2]=U;break}}while(0);b:do if(S>>>0>=16){c[T+4>>2]=q|3;c[T+(q|4)>>2]=S|1;c[T+(S+q)>>2]=S;k=S>>>3;if(S>>>0<256){j=k<<1;p=122448+(j<<2)|0;b=c[30602]|0;i=1<
>2]|0;if(r>>>0<(c[30606]|0)>>>0)Oe();else{Z=k;_=r}}else{c[30602]=b|i;Z=122448+(j+2<<2)|0;_=p}c[Z>>2]=e;c[_+12>>2]=e;c[T+(q+8)>>2]=_;c[T+(q+12)>>2]=p;break}p=S>>>8;if(p)if(S>>>0>16777215)$=31;else{j=(p+1048320|0)>>>16&8;i=p< >>16&4;b=i< >>16&2;r=14-(p|j|i)+(b<>>15)|0;$=S>>>(r+7|0)&1|r<<1}else $=0;r=122712+($<<2)|0;c[T+(q+28)>>2]=$;c[T+(q+20)>>2]=0;c[T+(q+16)>>2]=0;i=c[30603]|0;b=1<<$;if(!(i&b)){c[30603]=i|b;c[r>>2]=e;c[T+(q+24)>>2]=r;c[T+(q+12)>>2]=e;c[T+(q+8)>>2]=e;break}b=c[r>>2]|0;c:do if((c[b+4>>2]&-8|0)!=(S|0)){r=S<<(($|0)==31?0:25-($>>>1)|0);i=b;while(1){j=i+16+(r>>>31<<2)|0;p=c[j>>2]|0;if(!p){aa=j;ba=i;break}if((c[p+4>>2]&-8|0)==(S|0)){ca=p;break c}else{r=r<<1;i=p}}if(aa>>>0<(c[30606]|0)>>>0)Oe();else{c[aa>>2]=e;c[T+(q+24)>>2]=ba;c[T+(q+12)>>2]=e;c[T+(q+8)>>2]=e;break b}}else ca=b;while(0);b=ca+8|0;i=c[b>>2]|0;r=c[30606]|0;if(i>>>0>=r>>>0&ca>>>0>=r>>>0){c[i+12>>2]=e;c[b>>2]=e;c[T+(q+8)>>2]=i;c[T+(q+12)>>2]=ca;c[T+(q+24)>>2]=0;break}else Oe()}else{i=S+q|0;c[T+4>>2]=i|3;b=T+(i+4)|0;c[b>>2]=c[b>>2]|1}while(0);n=T+8|0;return n|0}else F=q}else F=q}else F=-1;while(0);T=c[30604]|0;if(T>>>0>=F>>>0){S=T-F|0;ca=c[30607]|0;if(S>>>0>15){c[30607]=ca+F;c[30604]=S;c[ca+(F+4)>>2]=S|1;c[ca+T>>2]=S;c[ca+4>>2]=F|3}else{c[30604]=0;c[30607]=0;c[ca+4>>2]=T|3;S=ca+(T+4)|0;c[S>>2]=c[S>>2]|1}n=ca+8|0;return n|0}ca=c[30605]|0;if(ca>>>0>F>>>0){S=ca-F|0;c[30605]=S;ca=c[30608]|0;c[30608]=ca+F;c[ca+(F+4)>>2]=S|1;c[ca+4>>2]=F|3;n=ca+8|0;return n|0}do if(!(c[30720]|0)){ca=rb(30)|0;if(!(ca+-1&ca)){c[30722]=ca;c[30721]=ca;c[30723]=-1;c[30724]=-1;c[30725]=0;c[30713]=0;c[30720]=(sd(0)|0)&-16^1431655768;break}else Oe()}while(0);ca=F+48|0;S=c[30722]|0;T=F+47|0;ba=S+T|0;aa=0-S|0;S=ba&aa;if(S>>>0<=F>>>0){n=0;return n|0}$=c[30712]|0;if(($|0)!=0?(_=c[30710]|0,Z=_+S|0,Z>>>0<=_>>>0|Z>>>0>$>>>0):0){n=0;return n|0}d:do if(!(c[30713]&4)){$=c[30608]|0;e:do if($){Z=122856;while(1){_=c[Z>>2]|0;if(_>>>0<=$>>>0?(U=Z+4|0,(_+(c[U>>2]|0)|0)>>>0>$>>>0):0){da=Z;ea=U;break}Z=c[Z+8>>2]|0;if(!Z){K=174;break e}}Z=ba-(c[30605]|0)&aa;if(Z>>>0<2147483647){U=kb(Z|0)|0;_=(U|0)==((c[da>>2]|0)+(c[ea>>2]|0)|0);X=_?Z:0;if(_)if((U|0)==(-1|0))fa=X;else{ga=U;ha=X;K=194;break d}else{ia=U;ja=Z;ka=X;K=184}}else fa=0}else K=174;while(0);do if((K|0)==174){$=kb(0)|0;if(($|0)!=(-1|0)){q=$;X=c[30721]|0;Z=X+-1|0;if(!(Z&q))la=S;else la=S-q+(Z+q&0-X)|0;X=c[30710]|0;q=X+la|0;if(la>>>0>F>>>0&la>>>0<2147483647){Z=c[30712]|0;if((Z|0)!=0?q>>>0<=X>>>0|q>>>0>Z>>>0:0){fa=0;break}Z=kb(la|0)|0;q=(Z|0)==($|0);X=q?la:0;if(q){ga=$;ha=X;K=194;break d}else{ia=Z;ja=la;ka=X;K=184}}else fa=0}else fa=0}while(0);f:do if((K|0)==184){X=0-ja|0;do if(ca>>>0>ja>>>0&(ja>>>0<2147483647&(ia|0)!=(-1|0))?(Z=c[30722]|0,$=T-ja+Z&0-Z,$>>>0<2147483647):0)if((kb($|0)|0)==(-1|0)){kb(X|0)|0;fa=ka;break f}else{ma=$+ja|0;break}else ma=ja;while(0);if((ia|0)==(-1|0))fa=ka;else{ga=ia;ha=ma;K=194;break d}}while(0);c[30713]=c[30713]|4;na=fa;K=191}else{na=0;K=191}while(0);if((((K|0)==191?S>>>0<2147483647:0)?(fa=kb(S|0)|0,S=kb(0)|0,fa>>>0
>>0&((fa|0)!=(-1|0)&(S|0)!=(-1|0))):0)?(ma=S-fa|0,S=ma>>>0>(F+40|0)>>>0,S):0){ga=fa;ha=S?ma:na;K=194}if((K|0)==194){na=(c[30710]|0)+ha|0;c[30710]=na;if(na>>>0>(c[30711]|0)>>>0)c[30711]=na;na=c[30608]|0;g:do if(na){ma=122856;do{S=c[ma>>2]|0;fa=ma+4|0;ia=c[fa>>2]|0;if((ga|0)==(S+ia|0)){oa=S;pa=fa;qa=ia;ra=ma;K=204;break}ma=c[ma+8>>2]|0}while((ma|0)!=0);if(((K|0)==204?(c[ra+12>>2]&8|0)==0:0)?na>>>0>>0&na>>>0>=oa>>>0:0){c[pa>>2]=qa+ha;ma=(c[30605]|0)+ha|0;ia=na+8|0;fa=(ia&7|0)==0?0:0-ia&7;ia=ma-fa|0;c[30608]=na+fa;c[30605]=ia;c[na+(fa+4)>>2]=ia|1;c[na+(ma+4)>>2]=40;c[30609]=c[30724];break}ma=c[30606]|0;if(ga>>>0 >>0){c[30606]=ga;sa=ga}else sa=ma;ma=ga+ha|0;ia=122856;while(1){if((c[ia>>2]|0)==(ma|0)){ta=ia;ua=ia;K=212;break}ia=c[ia+8>>2]|0;if(!ia){va=122856;break}}if((K|0)==212)if(!(c[ua+12>>2]&8)){c[ta>>2]=ga;ia=ua+4|0;c[ia>>2]=(c[ia>>2]|0)+ha;ia=ga+8|0;ma=(ia&7|0)==0?0:0-ia&7;ia=ga+(ha+8)|0;fa=(ia&7|0)==0?0:0-ia&7;ia=ga+(fa+ha)|0;S=ma+F|0;ka=ga+S|0;ja=ia-(ga+ma)-F|0;c[ga+(ma+4)>>2]=F|3;h:do if((ia|0)!=(na|0)){if((ia|0)==(c[30607]|0)){T=(c[30604]|0)+ja|0;c[30604]=T;c[30607]=ka;c[ga+(S+4)>>2]=T|1;c[ga+(T+S)>>2]=T;break}T=ha+4|0;ca=c[ga+(T+fa)>>2]|0;if((ca&3|0)==1){la=ca&-8;ea=ca>>>3;i:do if(ca>>>0>=256){da=c[ga+((fa|24)+ha)>>2]|0;aa=c[ga+(ha+12+fa)>>2]|0;do if((aa|0)==(ia|0)){ba=fa|16;X=ga+(T+ba)|0;$=c[X>>2]|0;if(!$){Z=ga+(ba+ha)|0;ba=c[Z>>2]|0;if(!ba){wa=0;break}else{xa=ba;ya=Z}}else{xa=$;ya=X}while(1){X=xa+20|0;$=c[X>>2]|0;if($){xa=$;ya=X;continue}X=xa+16|0;$=c[X>>2]|0;if(!$){za=xa;Aa=ya;break}else{xa=$;ya=X}}if(Aa>>>0 >>0)Oe();else{c[Aa>>2]=0;wa=za;break}}else{X=c[ga+((fa|8)+ha)>>2]|0;if(X>>>0 >>0)Oe();$=X+12|0;if((c[$>>2]|0)!=(ia|0))Oe();Z=aa+8|0;if((c[Z>>2]|0)==(ia|0)){c[$>>2]=aa;c[Z>>2]=X;wa=aa;break}else Oe()}while(0);if(!da)break;aa=c[ga+(ha+28+fa)>>2]|0;X=122712+(aa<<2)|0;do if((ia|0)!=(c[X>>2]|0)){if(da>>>0<(c[30606]|0)>>>0)Oe();Z=da+16|0;if((c[Z>>2]|0)==(ia|0))c[Z>>2]=wa;else c[da+20>>2]=wa;if(!wa)break i}else{c[X>>2]=wa;if(wa)break;c[30603]=c[30603]&~(1< >>0 >>0)Oe();c[wa+24>>2]=da;X=fa|16;Z=c[ga+(X+ha)>>2]|0;do if(Z)if(Z>>>0 >>0)Oe();else{c[wa+16>>2]=Z;c[Z+24>>2]=wa;break}while(0);Z=c[ga+(T+X)>>2]|0;if(!Z)break;if(Z>>>0<(c[30606]|0)>>>0)Oe();else{c[wa+20>>2]=Z;c[Z+24>>2]=wa;break}}else{Z=c[ga+((fa|8)+ha)>>2]|0;aa=c[ga+(ha+12+fa)>>2]|0;da=122448+(ea<<1<<2)|0;do if((Z|0)!=(da|0)){if(Z>>>0 >>0)Oe();if((c[Z+12>>2]|0)==(ia|0))break;Oe()}while(0);if((aa|0)==(Z|0)){c[30602]=c[30602]&~(1< >>0 >>0)Oe();X=aa+8|0;if((c[X>>2]|0)==(ia|0)){Ba=X;break}Oe()}while(0);c[Z+12>>2]=aa;c[Ba>>2]=Z}while(0);Ca=ga+((la|fa)+ha)|0;Da=la+ja|0}else{Ca=ia;Da=ja}ea=Ca+4|0;c[ea>>2]=c[ea>>2]&-2;c[ga+(S+4)>>2]=Da|1;c[ga+(Da+S)>>2]=Da;ea=Da>>>3;if(Da>>>0<256){T=ea<<1;ca=122448+(T<<2)|0;da=c[30602]|0;X=1< >2]|0;if($>>>0>=(c[30606]|0)>>>0){Ea=ea;Fa=$;break}Oe()}while(0);c[Ea>>2]=ka;c[Fa+12>>2]=ka;c[ga+(S+8)>>2]=Fa;c[ga+(S+12)>>2]=ca;break}T=Da>>>8;do if(!T)Ga=0;else{if(Da>>>0>16777215){Ga=31;break}X=(T+1048320|0)>>>16&8;da=T< >>16&4;$=da< >>16&2;ea=14-(la|X|da)+($< >>15)|0;Ga=Da>>>(ea+7|0)&1|ea<<1}while(0);T=122712+(Ga<<2)|0;c[ga+(S+28)>>2]=Ga;c[ga+(S+20)>>2]=0;c[ga+(S+16)>>2]=0;ca=c[30603]|0;ea=1< >2]=ka;c[ga+(S+24)>>2]=T;c[ga+(S+12)>>2]=ka;c[ga+(S+8)>>2]=ka;break}ea=c[T>>2]|0;j:do if((c[ea+4>>2]&-8|0)!=(Da|0)){T=Da<<((Ga|0)==31?0:25-(Ga>>>1)|0);ca=ea;while(1){da=ca+16+(T>>>31<<2)|0;$=c[da>>2]|0;if(!$){Ha=da;Ia=ca;break}if((c[$+4>>2]&-8|0)==(Da|0)){Ja=$;break j}else{T=T<<1;ca=$}}if(Ha>>>0<(c[30606]|0)>>>0)Oe();else{c[Ha>>2]=ka;c[ga+(S+24)>>2]=Ia;c[ga+(S+12)>>2]=ka;c[ga+(S+8)>>2]=ka;break h}}else Ja=ea;while(0);ea=Ja+8|0;ca=c[ea>>2]|0;T=c[30606]|0;if(ca>>>0>=T>>>0&Ja>>>0>=T>>>0){c[ca+12>>2]=ka;c[ea>>2]=ka;c[ga+(S+8)>>2]=ca;c[ga+(S+12)>>2]=Ja;c[ga+(S+24)>>2]=0;break}else Oe()}else{ca=(c[30605]|0)+ja|0;c[30605]=ca;c[30608]=ka;c[ga+(S+4)>>2]=ca|1}while(0);n=ga+(ma|8)|0;return n|0}else va=122856;while(1){S=c[va>>2]|0;if(S>>>0<=na>>>0?(ka=c[va+4>>2]|0,ja=S+ka|0,ja>>>0>na>>>0):0){Ka=S;La=ka;Ma=ja;break}va=c[va+8>>2]|0}ma=Ka+(La+-39)|0;ja=Ka+(La+-47+((ma&7|0)==0?0:0-ma&7))|0;ma=na+16|0;ka=ja>>>0 >>0?na:ja;ja=ka+8|0;S=ga+8|0;ia=(S&7|0)==0?0:0-S&7;S=ha+-40-ia|0;c[30608]=ga+ia;c[30605]=S;c[ga+(ia+4)>>2]=S|1;c[ga+(ha+-36)>>2]=40;c[30609]=c[30724];S=ka+4|0;c[S>>2]=27;c[ja>>2]=c[30714];c[ja+4>>2]=c[30715];c[ja+8>>2]=c[30716];c[ja+12>>2]=c[30717];c[30714]=ga;c[30715]=ha;c[30717]=0;c[30716]=ja;ja=ka+28|0;c[ja>>2]=7;if((ka+32|0)>>>0 >>0){ia=ja;do{ja=ia;ia=ia+4|0;c[ia>>2]=7}while((ja+8|0)>>>0 >>0)}if((ka|0)!=(na|0)){ia=ka-na|0;c[S>>2]=c[S>>2]&-2;c[na+4>>2]=ia|1;c[ka>>2]=ia;ja=ia>>>3;if(ia>>>0<256){fa=ja<<1;ca=122448+(fa<<2)|0;ea=c[30602]|0;T=1< >2]|0;if(Z>>>0<(c[30606]|0)>>>0)Oe();else{Na=ja;Oa=Z}}else{c[30602]=ea|T;Na=122448+(fa+2<<2)|0;Oa=ca}c[Na>>2]=na;c[Oa+12>>2]=na;c[na+8>>2]=Oa;c[na+12>>2]=ca;break}ca=ia>>>8;if(ca)if(ia>>>0>16777215)Pa=31;else{fa=(ca+1048320|0)>>>16&8;T=ca< >>16&4;ea=T< >>16&2;Z=14-(ca|fa|T)+(ea< >>15)|0;Pa=ia>>>(Z+7|0)&1|Z<<1}else Pa=0;Z=122712+(Pa<<2)|0;c[na+28>>2]=Pa;c[na+20>>2]=0;c[ma>>2]=0;T=c[30603]|0;ea=1< >2]=na;c[na+24>>2]=Z;c[na+12>>2]=na;c[na+8>>2]=na;break}ea=c[Z>>2]|0;k:do if((c[ea+4>>2]&-8|0)!=(ia|0)){Z=ia<<((Pa|0)==31?0:25-(Pa>>>1)|0);T=ea;while(1){fa=T+16+(Z>>>31<<2)|0;ca=c[fa>>2]|0;if(!ca){Qa=fa;Ra=T;break}if((c[ca+4>>2]&-8|0)==(ia|0)){Sa=ca;break k}else{Z=Z<<1;T=ca}}if(Qa>>>0<(c[30606]|0)>>>0)Oe();else{c[Qa>>2]=na;c[na+24>>2]=Ra;c[na+12>>2]=na;c[na+8>>2]=na;break g}}else Sa=ea;while(0);ea=Sa+8|0;ia=c[ea>>2]|0;ma=c[30606]|0;if(ia>>>0>=ma>>>0&Sa>>>0>=ma>>>0){c[ia+12>>2]=na;c[ea>>2]=na;c[na+8>>2]=ia;c[na+12>>2]=Sa;c[na+24>>2]=0;break}else Oe()}}else{ia=c[30606]|0;if((ia|0)==0|ga>>>0 >>0)c[30606]=ga;c[30714]=ga;c[30715]=ha;c[30717]=0;c[30611]=c[30720];c[30610]=-1;ia=0;do{ea=ia<<1;ma=122448+(ea<<2)|0;c[122448+(ea+3<<2)>>2]=ma;c[122448+(ea+2<<2)>>2]=ma;ia=ia+1|0}while((ia|0)!=32);ia=ga+8|0;ma=(ia&7|0)==0?0:0-ia&7;ia=ha+-40-ma|0;c[30608]=ga+ma;c[30605]=ia;c[ga+(ma+4)>>2]=ia|1;c[ga+(ha+-36)>>2]=40;c[30609]=c[30724]}while(0);ha=c[30605]|0;if(ha>>>0>F>>>0){ga=ha-F|0;c[30605]=ga;ha=c[30608]|0;c[30608]=ha+F;c[ha+(F+4)>>2]=ga|1;c[ha+4>>2]=F|3;n=ha+8|0;return n|0}}c[(fe()|0)>>2]=12;n=0;return n|0}function Qo(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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;if(!a)return;b=a+-8|0;d=c[30606]|0;if(b>>>0 >>0)Oe();e=c[a+-4>>2]|0;f=e&3;if((f|0)==1)Oe();g=e&-8;h=a+(g+-8)|0;do if(!(e&1)){i=c[b>>2]|0;if(!f)return;j=-8-i|0;k=a+j|0;l=i+g|0;if(k>>>0 >>0)Oe();if((k|0)==(c[30607]|0)){m=a+(g+-4)|0;n=c[m>>2]|0;if((n&3|0)!=3){o=k;p=l;break}c[30604]=l;c[m>>2]=n&-2;c[a+(j+4)>>2]=l|1;c[h>>2]=l;return}n=i>>>3;if(i>>>0<256){i=c[a+(j+8)>>2]|0;m=c[a+(j+12)>>2]|0;q=122448+(n<<1<<2)|0;if((i|0)!=(q|0)){if(i>>>0 >>0)Oe();if((c[i+12>>2]|0)!=(k|0))Oe()}if((m|0)==(i|0)){c[30602]=c[30602]&~(1< >>0 >>0)Oe();q=m+8|0;if((c[q>>2]|0)==(k|0))r=q;else Oe()}else r=m+8|0;c[i+12>>2]=m;c[r>>2]=i;o=k;p=l;break}i=c[a+(j+24)>>2]|0;m=c[a+(j+12)>>2]|0;do if((m|0)==(k|0)){q=a+(j+20)|0;n=c[q>>2]|0;if(!n){s=a+(j+16)|0;t=c[s>>2]|0;if(!t){u=0;break}else{v=t;w=s}}else{v=n;w=q}while(1){q=v+20|0;n=c[q>>2]|0;if(n){v=n;w=q;continue}q=v+16|0;n=c[q>>2]|0;if(!n){x=v;y=w;break}else{v=n;w=q}}if(y>>>0 >>0)Oe();else{c[y>>2]=0;u=x;break}}else{q=c[a+(j+8)>>2]|0;if(q>>>0 >>0)Oe();n=q+12|0;if((c[n>>2]|0)!=(k|0))Oe();s=m+8|0;if((c[s>>2]|0)==(k|0)){c[n>>2]=m;c[s>>2]=q;u=m;break}else Oe()}while(0);if(i){m=c[a+(j+28)>>2]|0;q=122712+(m<<2)|0;if((k|0)==(c[q>>2]|0)){c[q>>2]=u;if(!u){c[30603]=c[30603]&~(1< >>0<(c[30606]|0)>>>0)Oe();m=i+16|0;if((c[m>>2]|0)==(k|0))c[m>>2]=u;else c[i+20>>2]=u;if(!u){o=k;p=l;break}}m=c[30606]|0;if(u>>>0 >>0)Oe();c[u+24>>2]=i;q=c[a+(j+16)>>2]|0;do if(q)if(q>>>0 >>0)Oe();else{c[u+16>>2]=q;c[q+24>>2]=u;break}while(0);q=c[a+(j+20)>>2]|0;if(q)if(q>>>0<(c[30606]|0)>>>0)Oe();else{c[u+20>>2]=q;c[q+24>>2]=u;o=k;p=l;break}else{o=k;p=l}}else{o=k;p=l}}else{o=b;p=g}while(0);if(o>>>0>=h>>>0)Oe();b=a+(g+-4)|0;u=c[b>>2]|0;if(!(u&1))Oe();if(!(u&2)){if((h|0)==(c[30608]|0)){d=(c[30605]|0)+p|0;c[30605]=d;c[30608]=o;c[o+4>>2]=d|1;if((o|0)!=(c[30607]|0))return;c[30607]=0;c[30604]=0;return}if((h|0)==(c[30607]|0)){d=(c[30604]|0)+p|0;c[30604]=d;c[30607]=o;c[o+4>>2]=d|1;c[o+d>>2]=d;return}d=(u&-8)+p|0;x=u>>>3;do if(u>>>0>=256){y=c[a+(g+16)>>2]|0;w=c[a+(g|4)>>2]|0;do if((w|0)==(h|0)){v=a+(g+12)|0;r=c[v>>2]|0;if(!r){f=a+(g+8)|0;e=c[f>>2]|0;if(!e){z=0;break}else{A=e;B=f}}else{A=r;B=v}while(1){v=A+20|0;r=c[v>>2]|0;if(r){A=r;B=v;continue}v=A+16|0;r=c[v>>2]|0;if(!r){C=A;D=B;break}else{A=r;B=v}}if(D>>>0<(c[30606]|0)>>>0)Oe();else{c[D>>2]=0;z=C;break}}else{v=c[a+g>>2]|0;if(v>>>0<(c[30606]|0)>>>0)Oe();r=v+12|0;if((c[r>>2]|0)!=(h|0))Oe();f=w+8|0;if((c[f>>2]|0)==(h|0)){c[r>>2]=w;c[f>>2]=v;z=w;break}else Oe()}while(0);if(y){w=c[a+(g+20)>>2]|0;l=122712+(w<<2)|0;if((h|0)==(c[l>>2]|0)){c[l>>2]=z;if(!z){c[30603]=c[30603]&~(1< >>0<(c[30606]|0)>>>0)Oe();w=y+16|0;if((c[w>>2]|0)==(h|0))c[w>>2]=z;else c[y+20>>2]=z;if(!z)break}w=c[30606]|0;if(z>>>0 >>0)Oe();c[z+24>>2]=y;l=c[a+(g+8)>>2]|0;do if(l)if(l>>>0 >>0)Oe();else{c[z+16>>2]=l;c[l+24>>2]=z;break}while(0);l=c[a+(g+12)>>2]|0;if(l)if(l>>>0<(c[30606]|0)>>>0)Oe();else{c[z+20>>2]=l;c[l+24>>2]=z;break}}}else{l=c[a+g>>2]|0;w=c[a+(g|4)>>2]|0;y=122448+(x<<1<<2)|0;if((l|0)!=(y|0)){if(l>>>0<(c[30606]|0)>>>0)Oe();if((c[l+12>>2]|0)!=(h|0))Oe()}if((w|0)==(l|0)){c[30602]=c[30602]&~(1< >>0<(c[30606]|0)>>>0)Oe();y=w+8|0;if((c[y>>2]|0)==(h|0))E=y;else Oe()}else E=w+8|0;c[l+12>>2]=w;c[E>>2]=l}while(0);c[o+4>>2]=d|1;c[o+d>>2]=d;if((o|0)==(c[30607]|0)){c[30604]=d;return}else F=d}else{c[b>>2]=u&-2;c[o+4>>2]=p|1;c[o+p>>2]=p;F=p}p=F>>>3;if(F>>>0<256){u=p<<1;b=122448+(u<<2)|0;d=c[30602]|0;E=1< >2]|0;if(h>>>0<(c[30606]|0)>>>0)Oe();else{G=p;H=h}}else{c[30602]=d|E;G=122448+(u+2<<2)|0;H=b}c[G>>2]=o;c[H+12>>2]=o;c[o+8>>2]=H;c[o+12>>2]=b;return}b=F>>>8;if(b)if(F>>>0>16777215)I=31;else{H=(b+1048320|0)>>>16&8;G=b<
>>16&4;u=G<>>16&2;E=14-(b|H|G)+(u< >>15)|0;I=F>>>(E+7|0)&1|E<<1}else I=0;E=122712+(I<<2)|0;c[o+28>>2]=I;c[o+20>>2]=0;c[o+16>>2]=0;G=c[30603]|0;u=1<>2]|0;b:do if((c[H+4>>2]&-8|0)!=(F|0)){b=F<<((I|0)==31?0:25-(I>>>1)|0);d=H;while(1){h=d+16+(b>>>31<<2)|0;p=c[h>>2]|0;if(!p){J=h;K=d;break}if((c[p+4>>2]&-8|0)==(F|0)){L=p;break b}else{b=b<<1;d=p}}if(J>>>0<(c[30606]|0)>>>0)Oe();else{c[J>>2]=o;c[o+24>>2]=K;c[o+12>>2]=o;c[o+8>>2]=o;break a}}else L=H;while(0);H=L+8|0;d=c[H>>2]|0;b=c[30606]|0;if(d>>>0>=b>>>0&L>>>0>=b>>>0){c[d+12>>2]=o;c[H>>2]=o;c[o+8>>2]=d;c[o+12>>2]=L;c[o+24>>2]=0;break}else Oe()}else{c[30603]=G|u;c[E>>2]=o;c[o+24>>2]=E;c[o+12>>2]=o;c[o+8>>2]=o}while(0);o=(c[30610]|0)+-1|0;c[30610]=o;if(!o)M=122864;else return;while(1){o=c[M>>2]|0;if(!o)break;else M=o+8|0}c[30610]=-1;return}function Ro(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!a){d=Po(b)|0;return d|0}if(b>>>0>4294967231){c[(fe()|0)>>2]=12;d=0;return d|0}e=So(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(e){d=e+8|0;return d|0}e=Po(b)|0;if(!e){d=0;return d|0}f=c[a+-4>>2]|0;g=(f&-8)-((f&3|0)==0?8:4)|0;Wo(e|0,a|0,(g>>>0>>0?g:b)|0)|0;Qo(a);d=e;return d|0}function So(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,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;d=a+4|0;e=c[d>>2]|0;f=e&-8;g=a+f|0;h=c[30606]|0;i=e&3;if(!((i|0)!=1&a>>>0>=h>>>0&a>>>0 >>0))Oe();j=a+(f|4)|0;k=c[j>>2]|0;if(!(k&1))Oe();if(!i){if(b>>>0<256){l=0;return l|0}if(f>>>0>=(b+4|0)>>>0?(f-b|0)>>>0<=c[30722]<<1>>>0:0){l=a;return l|0}l=0;return l|0}if(f>>>0>=b>>>0){i=f-b|0;if(i>>>0<=15){l=a;return l|0}c[d>>2]=e&1|b|2;c[a+(b+4)>>2]=i|3;c[j>>2]=c[j>>2]|1;To(a+b|0,i);l=a;return l|0}if((g|0)==(c[30608]|0)){i=(c[30605]|0)+f|0;if(i>>>0<=b>>>0){l=0;return l|0}j=i-b|0;c[d>>2]=e&1|b|2;c[a+(b+4)>>2]=j|1;c[30608]=a+b;c[30605]=j;l=a;return l|0}if((g|0)==(c[30607]|0)){j=(c[30604]|0)+f|0;if(j>>>0>>0){l=0;return l|0}i=j-b|0;if(i>>>0>15){c[d>>2]=e&1|b|2;c[a+(b+4)>>2]=i|1;c[a+j>>2]=i;m=a+(j+4)|0;c[m>>2]=c[m>>2]&-2;n=a+b|0;o=i}else{c[d>>2]=e&1|j|2;i=a+(j+4)|0;c[i>>2]=c[i>>2]|1;n=0;o=0}c[30604]=o;c[30607]=n;l=a;return l|0}if(k&2){l=0;return l|0}n=(k&-8)+f|0;if(n>>>0>>0){l=0;return l|0}o=n-b|0;i=k>>>3;do if(k>>>0>=256){j=c[a+(f+24)>>2]|0;m=c[a+(f+12)>>2]|0;do if((m|0)==(g|0)){p=a+(f+20)|0;q=c[p>>2]|0;if(!q){r=a+(f+16)|0;s=c[r>>2]|0;if(!s){t=0;break}else{u=s;v=r}}else{u=q;v=p}while(1){p=u+20|0;q=c[p>>2]|0;if(q){u=q;v=p;continue}p=u+16|0;q=c[p>>2]|0;if(!q){w=u;x=v;break}else{u=q;v=p}}if(x>>>0 >>0)Oe();else{c[x>>2]=0;t=w;break}}else{p=c[a+(f+8)>>2]|0;if(p>>>0 >>0)Oe();q=p+12|0;if((c[q>>2]|0)!=(g|0))Oe();r=m+8|0;if((c[r>>2]|0)==(g|0)){c[q>>2]=m;c[r>>2]=p;t=m;break}else Oe()}while(0);if(j){m=c[a+(f+28)>>2]|0;p=122712+(m<<2)|0;if((g|0)==(c[p>>2]|0)){c[p>>2]=t;if(!t){c[30603]=c[30603]&~(1< >>0<(c[30606]|0)>>>0)Oe();m=j+16|0;if((c[m>>2]|0)==(g|0))c[m>>2]=t;else c[j+20>>2]=t;if(!t)break}m=c[30606]|0;if(t>>>0 >>0)Oe();c[t+24>>2]=j;p=c[a+(f+16)>>2]|0;do if(p)if(p>>>0 >>0)Oe();else{c[t+16>>2]=p;c[p+24>>2]=t;break}while(0);p=c[a+(f+20)>>2]|0;if(p)if(p>>>0<(c[30606]|0)>>>0)Oe();else{c[t+20>>2]=p;c[p+24>>2]=t;break}}}else{p=c[a+(f+8)>>2]|0;m=c[a+(f+12)>>2]|0;j=122448+(i<<1<<2)|0;if((p|0)!=(j|0)){if(p>>>0 >>0)Oe();if((c[p+12>>2]|0)!=(g|0))Oe()}if((m|0)==(p|0)){c[30602]=c[30602]&~(1<>>0 >>0)Oe();j=m+8|0;if((c[j>>2]|0)==(g|0))y=j;else Oe()}else y=m+8|0;c[p+12>>2]=m;c[y>>2]=p}while(0);if(o>>>0<16){c[d>>2]=n|e&1|2;y=a+(n|4)|0;c[y>>2]=c[y>>2]|1;l=a;return l|0}else{c[d>>2]=e&1|b|2;c[a+(b+4)>>2]=o|3;e=a+(n|4)|0;c[e>>2]=c[e>>2]|1;To(a+b|0,o);l=a;return l|0}return 0}function To(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,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;d=a+b|0;e=c[a+4>>2]|0;do if(!(e&1)){f=c[a>>2]|0;if(!(e&3))return;g=a+(0-f)|0;h=f+b|0;i=c[30606]|0;if(g>>>0>>0)Oe();if((g|0)==(c[30607]|0)){j=a+(b+4)|0;k=c[j>>2]|0;if((k&3|0)!=3){l=g;m=h;break}c[30604]=h;c[j>>2]=k&-2;c[a+(4-f)>>2]=h|1;c[d>>2]=h;return}k=f>>>3;if(f>>>0<256){j=c[a+(8-f)>>2]|0;n=c[a+(12-f)>>2]|0;o=122448+(k<<1<<2)|0;if((j|0)!=(o|0)){if(j>>>0>>0)Oe();if((c[j+12>>2]|0)!=(g|0))Oe()}if((n|0)==(j|0)){c[30602]=c[30602]&~(1< >>0>>0)Oe();o=n+8|0;if((c[o>>2]|0)==(g|0))p=o;else Oe()}else p=n+8|0;c[j+12>>2]=n;c[p>>2]=j;l=g;m=h;break}j=c[a+(24-f)>>2]|0;n=c[a+(12-f)>>2]|0;do if((n|0)==(g|0)){o=16-f|0;k=a+(o+4)|0;q=c[k>>2]|0;if(!q){r=a+o|0;o=c[r>>2]|0;if(!o){s=0;break}else{t=o;u=r}}else{t=q;u=k}while(1){k=t+20|0;q=c[k>>2]|0;if(q){t=q;u=k;continue}k=t+16|0;q=c[k>>2]|0;if(!q){v=t;w=u;break}else{t=q;u=k}}if(w>>>0>>0)Oe();else{c[w>>2]=0;s=v;break}}else{k=c[a+(8-f)>>2]|0;if(k>>>0>>0)Oe();q=k+12|0;if((c[q>>2]|0)!=(g|0))Oe();r=n+8|0;if((c[r>>2]|0)==(g|0)){c[q>>2]=n;c[r>>2]=k;s=n;break}else Oe()}while(0);if(j){n=c[a+(28-f)>>2]|0;i=122712+(n<<2)|0;if((g|0)==(c[i>>2]|0)){c[i>>2]=s;if(!s){c[30603]=c[30603]&~(1< >>0<(c[30606]|0)>>>0)Oe();n=j+16|0;if((c[n>>2]|0)==(g|0))c[n>>2]=s;else c[j+20>>2]=s;if(!s){l=g;m=h;break}}n=c[30606]|0;if(s>>>0 >>0)Oe();c[s+24>>2]=j;i=16-f|0;k=c[a+i>>2]|0;do if(k)if(k>>>0 >>0)Oe();else{c[s+16>>2]=k;c[k+24>>2]=s;break}while(0);k=c[a+(i+4)>>2]|0;if(k)if(k>>>0<(c[30606]|0)>>>0)Oe();else{c[s+20>>2]=k;c[k+24>>2]=s;l=g;m=h;break}else{l=g;m=h}}else{l=g;m=h}}else{l=a;m=b}while(0);s=c[30606]|0;if(d>>>0 >>0)Oe();v=a+(b+4)|0;w=c[v>>2]|0;if(!(w&2)){if((d|0)==(c[30608]|0)){u=(c[30605]|0)+m|0;c[30605]=u;c[30608]=l;c[l+4>>2]=u|1;if((l|0)!=(c[30607]|0))return;c[30607]=0;c[30604]=0;return}if((d|0)==(c[30607]|0)){u=(c[30604]|0)+m|0;c[30604]=u;c[30607]=l;c[l+4>>2]=u|1;c[l+u>>2]=u;return}u=(w&-8)+m|0;t=w>>>3;do if(w>>>0>=256){p=c[a+(b+24)>>2]|0;e=c[a+(b+12)>>2]|0;do if((e|0)==(d|0)){k=a+(b+20)|0;n=c[k>>2]|0;if(!n){f=a+(b+16)|0;j=c[f>>2]|0;if(!j){x=0;break}else{y=j;z=f}}else{y=n;z=k}while(1){k=y+20|0;n=c[k>>2]|0;if(n){y=n;z=k;continue}k=y+16|0;n=c[k>>2]|0;if(!n){A=y;B=z;break}else{y=n;z=k}}if(B>>>0>>0)Oe();else{c[B>>2]=0;x=A;break}}else{k=c[a+(b+8)>>2]|0;if(k>>>0>>0)Oe();n=k+12|0;if((c[n>>2]|0)!=(d|0))Oe();f=e+8|0;if((c[f>>2]|0)==(d|0)){c[n>>2]=e;c[f>>2]=k;x=e;break}else Oe()}while(0);if(p){e=c[a+(b+28)>>2]|0;h=122712+(e<<2)|0;if((d|0)==(c[h>>2]|0)){c[h>>2]=x;if(!x){c[30603]=c[30603]&~(1<>>0<(c[30606]|0)>>>0)Oe();e=p+16|0;if((c[e>>2]|0)==(d|0))c[e>>2]=x;else c[p+20>>2]=x;if(!x)break}e=c[30606]|0;if(x>>>0 >>0)Oe();c[x+24>>2]=p;h=c[a+(b+16)>>2]|0;do if(h)if(h>>>0 >>0)Oe();else{c[x+16>>2]=h;c[h+24>>2]=x;break}while(0);h=c[a+(b+20)>>2]|0;if(h)if(h>>>0<(c[30606]|0)>>>0)Oe();else{c[x+20>>2]=h;c[h+24>>2]=x;break}}}else{h=c[a+(b+8)>>2]|0;e=c[a+(b+12)>>2]|0;p=122448+(t<<1<<2)|0;if((h|0)!=(p|0)){if(h>>>0 >>0)Oe();if((c[h+12>>2]|0)!=(d|0))Oe()}if((e|0)==(h|0)){c[30602]=c[30602]&~(1<>>0 >>0)Oe();p=e+8|0;if((c[p>>2]|0)==(d|0))C=p;else Oe()}else C=e+8|0;c[h+12>>2]=e;c[C>>2]=h}while(0);c[l+4>>2]=u|1;c[l+u>>2]=u;if((l|0)==(c[30607]|0)){c[30604]=u;return}else D=u}else{c[v>>2]=w&-2;c[l+4>>2]=m|1;c[l+m>>2]=m;D=m}m=D>>>3;if(D>>>0<256){w=m<<1;v=122448+(w<<2)|0;u=c[30602]|0;C=1<>2]|0;if(d>>>0<(c[30606]|0)>>>0)Oe();else{E=m;F=d}}else{c[30602]=u|C;E=122448+(w+2<<2)|0;F=v}c[E>>2]=l;c[F+12>>2]=l;c[l+8>>2]=F;c[l+12>>2]=v;return}v=D>>>8;if(v)if(D>>>0>16777215)G=31;else{F=(v+1048320|0)>>>16&8;E=v< >>16&4;w=E< >>16&2;C=14-(v|F|E)+(w< >>15)|0;G=D>>>(C+7|0)&1|C<<1}else G=0;C=122712+(G<<2)|0;c[l+28>>2]=G;c[l+20>>2]=0;c[l+16>>2]=0;E=c[30603]|0;w=1< >2]=l;c[l+24>>2]=C;c[l+12>>2]=l;c[l+8>>2]=l;return}w=c[C>>2]|0;a:do if((c[w+4>>2]&-8|0)==(D|0))H=w;else{C=D<<((G|0)==31?0:25-(G>>>1)|0);E=w;while(1){F=E+16+(C>>>31<<2)|0;v=c[F>>2]|0;if(!v){I=F;J=E;break}if((c[v+4>>2]&-8|0)==(D|0)){H=v;break a}else{C=C<<1;E=v}}if(I>>>0<(c[30606]|0)>>>0)Oe();c[I>>2]=l;c[l+24>>2]=J;c[l+12>>2]=l;c[l+8>>2]=l;return}while(0);J=H+8|0;I=c[J>>2]|0;D=c[30606]|0;if(!(I>>>0>=D>>>0&H>>>0>=D>>>0))Oe();c[I+12>>2]=l;c[J>>2]=l;c[l+8>>2]=I;c[l+12>>2]=H;c[l+24>>2]=0;return}function Uo(){}function Vo(b){b=b|0;var c=0;c=b;while(a[c>>0]|0)c=c+1|0;return c-b|0}function Wo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return pb(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)return f|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}while((e|0)>=4){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0;e=e-4|0}}while((e|0)>0){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}return f|0}function Xo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;if((e|0)>=20){d=d&255;g=b&3;h=d|d<<8|d<<16|d<<24;i=f&~3;if(g){g=b+4-g|0;while((b|0)<(g|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(i|0)){c[b>>2]=h;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return b-e|0}function Yo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=b-d>>>0;e=b-d-(c>>>0>a>>>0|0)>>>0;return (E=e,a-c>>>0|0)|0}function Zo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+c>>>0;return (E=b+d+(e>>>0