=(f|0))break;q=e+1|0;e=c[b+(e<<2)>>2]|0;p=i+g;n=n+g;m=m+g;o=o+v;h[L>>3]=E;h[u>>3]=F;Q=o+F;rO(M,n*.3333333333333333+E,Q);c[w>>2]=c[M>>2];c[w+4>>2]=c[M+4>>2];c[w+8>>2]=c[M+8>>2];c[w+12>>2]=c[M+12>>2];R=p+C;rO(N,R,Q);c[x>>2]=c[N>>2];c[x+4>>2]=c[N+4>>2];c[x+8>>2]=c[N+8>>2];c[x+12>>2]=c[N+12>>2];rO(O,R,z);c[y>>2]=c[O>>2];c[y+4>>2]=c[O+4>>2];c[y+8>>2]=c[O+8>>2];c[y+12>>2]=c[O+12>>2];Q=H-o;rO(J,R,Q);c[A>>2]=c[J>>2];c[A+4>>2]=c[J+4>>2];c[A+8>>2]=c[J+8>>2];c[A+12>>2]=c[J+12>>2];rO(K,m*.3333333333333333+G,Q);c[B>>2]=c[K>>2];c[B+4>>2]=c[K+4>>2];c[B+8>>2]=c[K+8>>2];c[B+12>>2]=c[K+12>>2];h[s>>3]=G;h[t>>3]=H;k=e+16|0;if((c[(c[k>>2]|0)+96>>2]|0)!=0?(S=(c[(c[(xC(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,k=c[(c[k>>2]|0)+96>>2]|0,I=+h[(S?k+24|0:k+32|0)>>3],S=c[D>>2]|0,h[k+56>>3]=I*.5+p+ +h[S+16>>3],h[k+64>>3]=+h[S+24>>3],a[k+81>>0]=1,I>g):0)i=I+i;else i=p;dO(e,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,L,7,j);e=q;r=r+1|0}l=P;return}function nO(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=+g;i=+i;j=j|0;var k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0,C=0,D=0.0,E=0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0.0,S=0;Q=l;l=l+16080|0;M=Q+80|0;N=Q+64|0;O=Q+48|0;P=Q+32|0;K=Q+16|0;L=Q;C=c[b+(e<<2)>>2]|0;q=g*.5/+(f|0);q=q>2.0?q:2.0;E=(c[((c[C>>2]&3|0)==3?C:C+48|0)+40>>2]|0)+16|0;m=c[E>>2]|0;H=+h[m+16>>3];D=+h[m+24>>3];C=c[C+16>>2]|0;k=+h[C+16>>3];p=+h[C+24>>3];F=k+H;G=p+D;g=+h[C+56>>3];o=+h[C+64>>3];H=g+H;I=o+D;n=!(F>=H)?-1.0:1.0;s=+h[m+80>>3]*.5;switch(qO(d[C+49>>0]|0,d[C+89>>0]|0)|0){case 15:{k=(q-g+ +h[m+96>>3])*n;break}case 38:{k=(g+q+ +h[m+88>>3])*n;break}case 41:{k=(q-k+ +h[m+96>>3])*n;break}case 48:{k=(q-k+ +h[m+96>>3])*n;break}case 58:case 57:case 51:case 47:case 37:case 14:{k=n*.3333333333333333*(k-g+ +h[m+88>>3]+ +h[m+96>>3]);break}case 73:{k=(k+q+ +h[m+88>>3])*n;break}case 83:{k=(+h[m+88>>3]+k)*n;break}case 84:{k=((k-g+ +h[m+88>>3]+ +h[m+96>>3])*.5+q)*n;break}case 85:case 75:case 74:{k=((k-g+ +h[m+88>>3]+ +h[m+96>>3])*.5+q*2.0)*n;break}default:k=0.0}p=(s-p)*3.0;o=(s-o)*3.0;q=n*q;w=M+8|0;x=M+16|0;y=M+32|0;z=M+48|0;A=(H+F)*.5;B=M+64|0;C=M+80|0;u=M+96|0;v=M+104|0;t=0;g=s;p=s=(f|0))break;r=e+1|0;e=c[b+(e<<2)>>2]|0;o=g+i;p=p+i;n=n+i;k=k+q;h[M>>3]=F;h[w>>3]=G;s=k+F;rO(N,s,p*.3333333333333333+G);c[x>>2]=c[N>>2];c[x+4>>2]=c[N+4>>2];c[x+8>>2]=c[N+8>>2];c[x+12>>2]=c[N+12>>2];R=o+D;rO(O,s,R);c[y>>2]=c[O>>2];c[y+4>>2]=c[O+4>>2];c[y+8>>2]=c[O+8>>2];c[y+12>>2]=c[O+12>>2];rO(P,A,R);c[z>>2]=c[P>>2];c[z+4>>2]=c[P+4>>2];c[z+8>>2]=c[P+8>>2];c[z+12>>2]=c[P+12>>2];s=H-k;rO(K,s,R);c[B>>2]=c[K>>2];c[B+4>>2]=c[K+4>>2];c[B+8>>2]=c[K+8>>2];c[B+12>>2]=c[K+12>>2];rO(L,s,n*.3333333333333333+I);c[C>>2]=c[L>>2];c[C+4>>2]=c[L+4>>2];c[C+8>>2]=c[L+8>>2];c[C+12>>2]=c[L+12>>2];h[u>>3]=H;h[v>>3]=I;m=e+16|0;if((c[(c[m>>2]|0)+96>>2]|0)!=0?(S=(c[(c[(xC(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,m=c[(c[m>>2]|0)+96>>2]|0,J=+h[(S?m+32|0:m+24|0)>>3],S=c[E>>2]|0,h[m+64>>3]=J*.5+o+ +h[S+24>>3],h[m+56>>3]=+h[S+16>>3],a[m+81>>0]=1,J>i):0)g=J+g;else g=o;dO(e,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,M,7,j);e=r;t=t+1|0}l=Q;return}function oO(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=+g;i=+i;j=j|0;var k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0.0,A=0,B=0,C=0.0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0.0,R=0.0,S=0;P=l;l=l+16080|0;L=P+80|0;M=P+64|0;N=P+48|0;O=P+32|0;J=P+16|0;K=P;B=c[b+(e<<2)>>2]|0;n=i*.5/+(f|0);n=n>2.0?n:2.0;D=(c[((c[B>>2]&3|0)==3?B:B+48|0)+40>>2]|0)+16|0;A=c[D>>2]|0;C=+h[A+16>>3];H=+h[A+24>>3];B=c[B+16>>2]|0;m=+h[B+16>>3];E=m+C;F=+h[B+24>>3]+H;i=+h[B+56>>3];G=i+C;H=+h[B+64>>3]+H;k=!(F>=H)?-1:1;p=+h[A+88>>3];switch(qO(d[B+49>>0]|0,d[B+89>>0]|0)|0){case 67:case 12:{if(F==H)k=0-k|0;break}default:{}}Q=(m+p)*3.0;m=(i+p)*3.0;v=n*+(k|0);u=L+8|0;w=L+16|0;x=L+32|0;y=L+48|0;z=(H+F)*.5;A=L+64|0;B=L+80|0;s=L+96|0;t=L+104|0;r=0;o=0.0;i=p;n=p=(f|0))break;q=e+1|0;e=c[b+(e<<2)>>2]|0;p=i+g;n=n+g;m=m+g;o=o+v;h[L>>3]=E;h[u>>3]=F;Q=o+F;rO(M,E-n*.3333333333333333,Q);c[w>>2]=c[M>>2];c[w+4>>2]=c[M+4>>2];c[w+8>>2]=c[M+8>>2];c[w+12>>2]=c[M+12>>2];R=C-p;rO(N,R,Q);c[x>>2]=c[N>>2];c[x+4>>2]=c[N+4>>2];c[x+8>>2]=c[N+8>>2];c[x+12>>2]=c[N+12>>2];rO(O,R,z);c[y>>2]=c[O>>2];c[y+4>>2]=c[O+4>>2];c[y+8>>2]=c[O+8>>2];c[y+12>>2]=c[O+12>>2];Q=H-o;rO(J,R,Q);c[A>>2]=c[J>>2];c[A+4>>2]=c[J+4>>2];c[A+8>>2]=c[J+8>>2];c[A+12>>2]=c[J+12>>2];rO(K,G-m*.3333333333333333,Q);c[B>>2]=c[K>>2];c[B+4>>2]=c[K+4>>2];c[B+8>>2]=c[K+8>>2];c[B+12>>2]=c[K+12>>2];h[s>>3]=G;h[t>>3]=H;k=e+16|0;if((c[(c[k>>2]|0)+96>>2]|0)!=0?(S=(c[(c[(xC(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,k=c[(c[k>>2]|0)+96>>2]|0,I=+h[(S?k+24|0:k+32|0)>>3],S=c[D>>2]|0,h[k+56>>3]=I*-.5-p+ +h[S+16>>3],h[k+64>>3]=+h[S+24>>3],a[k+81>>0]=1,I>g):0)i=I+i;else i=p;dO(e,c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,L,7,j);e=q;r=r+1|0}l=P;return}function pO(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=+g;i=+i;j=j|0;var k=0.0,m=0.0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0,D=0,E=0,F=0.0,G=0,H=0,I=0.0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0.0,R=0.0,S=0;P=l;l=l+16080|0;L=P+80|0;M=P+64|0;N=P+48|0;O=P+32|0;J=P+16|0;K=P;C=c[b+(e<<2)>>2]|0;B=g*.5/+(f|0);w=(c[((c[C>>2]&3|0)==3?C:C+48|0)+40>>2]|0)+16|0;D=c[w>>2]|0;z=+h[D+16>>3];v=+h[D+24>>3];C=c[C+16>>2]|0;m=+h[C+24>>3];x=+h[C+16>>3]+z;y=m+v;n=+h[C+64>>3];z=+h[C+56>>3]+z;A=n+v;u=!(x>=z)?-1:1;o=+h[D+80>>3]*.5;C=(qO(d[C+49>>0]|0,d[C+89>>0]|0)|0)==67;m=(m+o)*3.0;n=(n+o)*3.0;B=(B>2.0?B:2.0)*+((C?0-u|0:u)|0);u=L+8|0;C=L+16|0;D=L+32|0;E=L+48|0;F=(z+x)*.5;G=L+64|0;H=L+80|0;s=L+96|0;t=L+104|0;g=o;k=0.0;m=o=(f|0))break;r=e+1|0;p=c[b+(e<<2)>>2]|0;o=g+i;m=m+i;n=n+i;k=k+B;h[L>>3]=x;h[u>>3]=y;Q=k+x;rO(M,Q,y-m*.3333333333333333);c[C>>2]=c[M>>2];c[C+4>>2]=c[M+4>>2];c[C+8>>2]=c[M+8>>2];c[C+12>>2]=c[M+12>>2];R=v-o;rO(N,Q,R);c[D>>2]=c[N>>2];c[D+4>>2]=c[N+4>>2];c[D+8>>2]=c[N+8>>2];c[D+12>>2]=c[N+12>>2];rO(O,F,R);c[E>>2]=c[O>>2];c[E+4>>2]=c[O+4>>2];c[E+8>>2]=c[O+8>>2];c[E+12>>2]=c[O+12>>2];Q=z-k;rO(J,Q,R);c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];rO(K,Q,A-n*.3333333333333333);c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];h[s>>3]=z;h[t>>3]=A;e=p+16|0;if((c[(c[e>>2]|0)+96>>2]|0)!=0?(S=(c[(c[(xC(c[((c[p>>2]&3|0)==3?p:p+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,e=c[(c[e>>2]|0)+96>>2]|0,I=+h[(S?e+32|0:e+24|0)>>3],S=c[w>>2]|0,h[e+64>>3]=I*-.5-o+ +h[S+24>>3],h[e+56>>3]=+h[S+16>>3],a[e+81>>0]=1,I>i):0)g=I+g;else g=o;dO(p,c[((c[p>>2]&3|0)==2?p:p+-48|0)+40>>2]|0,L,7,j);e=r;q=q+1|0}l=P;return}function qO(a,b){a=a|0;b=b|0;var d=0;d=0;while(1){if((d|0)>=8){b=-1;break}if((c[22044+(d<<2)>>2]|0)==(b|0)){b=d;break}d=d+1|0}d=0;while(1){if((d|0)>=8){d=-1;break}if((c[22044+(d<<2)>>2]|0)==(a|0))break;d=d+1|0}if((d|b|0)<0)d=0;else d=c[22076+(d<<5)+(b<<2)>>2]|0;return d|0}function rO(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function sO(b){b=b|0;var d=0,e=0;if((c[47203]|0)!=0|(c[47202]|0)!=0){d=b+16|0;e=c[(c[d>>2]|0)+100>>2]|0;if((e|0?(a[e+81>>0]|0)==0:0)?tO(b,1)|0:0){e=xC(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;zP(e,c[(c[d>>2]|0)+100>>2]|0)}e=c[(c[d>>2]|0)+104>>2]|0;if((e|0?(a[e+81>>0]|0)==0:0)?tO(b,0)|0:0){e=xC(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;zP(e,c[(c[d>>2]|0)+104>>2]|0)}}return}function tO(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+96|0;o=q+32|0;m=q+16|0;n=q;i=b+16|0;do if((a[(c[i>>2]|0)+112>>0]|0)!=6){e=c[47203]|0;if(!((e|0)!=0?(a[(RA(b,e)|0)>>0]|0)!=0:0)){e=c[47202]|0;if(!e){e=0;break}if(!(a[(RA(b,e)|0)>>0]|0)){e=0;break}}d=d<<24>>24==0;p=c[i>>2]|0;p=c[(d?p+104|0:p+100|0)>>2]|0;e=uO(b)|0;if(e){k=c[e>>2]|0;do if(d){if(c[k+8>>2]|0){e=c[k>>2]|0;j=+h[e>>3];g=+h[k+16>>3];e=e+8|0;f=+h[k+24>>3];break}e=c[k>>2]|0;g=+h[e>>3];f=+h[e+8>>3];e=0;while(1){if((e|0)==4)break;n=o+(e<<4)|0;i=(c[k>>2]|0)+(e<<4)|0;c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[n+8>>2]=c[i+8>>2];c[n+12>>2]=c[i+12>>2];e=e+1|0}kP(m,o,3,.1,0,0);j=+h[m>>3];e=m+8|0}else{d=(c[e+4>>2]|0)+-1|0;i=k+(d*48|0)|0;if(c[k+(d*48|0)+12>>2]|0){o=c[i>>2]|0;e=(c[k+(d*48|0)+4>>2]|0)+-1|0;j=+h[o+(e<<4)>>3];g=+h[k+(d*48|0)+32>>3];e=o+(e<<4)+8|0;f=+h[k+(d*48|0)+40>>3];break}m=c[i>>2]|0;d=k+(d*48|0)+4|0;e=(c[d>>2]|0)+-1|0;g=+h[m+(e<<4)>>3];f=+h[m+(e<<4)+8>>3];e=0;while(1){if((e|0)==4)break;m=o+(e<<4)|0;k=(c[i>>2]|0)+(e+-4+(c[d>>2]|0)<<4)|0;c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[m+12>>2]=c[k+12>>2];e=e+1|0}kP(n,o,3,.9,0,0);j=+h[n>>3];e=n+8|0}while(0);r=+K(+(+h[e>>3]-f),+(j-g));r=+_O(b,c[47203]|0,-25.0,-180.0)*.017453292519943295+r;j=+_O(b,c[47202]|0,1.0,0.0)*10.0;h[p+56>>3]=j*+E(+r)+g;h[p+64>>3]=+F(+r)*j+f;a[p+81>>0]=1;e=1}else e=0}else e=0;while(0);l=q;return e|0}function uO(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;d=b;while(1){e=c[d+16>>2]|0;d=c[e+8>>2]|0;if(d|0)break;if(!(a[e+112>>0]|0)){g=5;break}d=c[e+116>>2]|0}if((g|0)==5){g=KB(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;d=KB(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;c[f>>2]=g;c[f+4>>2]=d;gA(1,106579,f)|0;d=0}l=h;return d|0}function vO(a,d,e){a=a|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0;s=l;l=l+96|0;m=s+80|0;n=s+64|0;o=s+48|0;p=s+32|0;q=s+16|0;r=s;k=b[(c[d+16>>2]|0)+136>>1]|0;d=e+16|0;wO(c[(c[d>>2]|0)+8>>2]|0,p,q);f=+h[p>>3];g=+h[q>>3];t=f-g;i=+h[p+8>>3];j=+h[q+8>>3];u=i-j;a:do if(u*u+t*t<1.0e-06){c[o>>2]=c[p>>2];c[o+4>>2]=c[p+4>>2];c[o+8>>2]=c[p+8>>2];c[o+12>>2]=c[p+12>>2]}else switch(k&14){case 4:case 10:{h[n>>3]=(g+f)*.5;h[n+8>>3]=(j+i)*.5;q=c[(c[d>>2]|0)+8>>2]|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];qP(r,q,m);c[o>>2]=c[r>>2];c[o+4>>2]=c[r+4>>2];c[o+8>>2]=c[r+8>>2];c[o+12>>2]=c[r+12>>2];break a}default:{xO(o,c[(c[d>>2]|0)+8>>2]|0,p,q);break a}}while(0);c[a>>2]=c[o>>2];c[a+4>>2]=c[o+4>>2];c[a+8>>2]=c[o+8>>2];c[a+12>>2]=c[o+12>>2];l=s;return}function wO(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;h=l;l=l+32|0;g=h+16|0;f=h;j=c[a>>2]|0;e=c[j>>2]|0;i=c[j+8>>2]|0;k=j+16|0;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];j=j+32|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];if(!i){c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2]}else{c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2]}i=c[a>>2]|0;j=(c[a+4>>2]|0)+-1|0;e=c[i+(j*48|0)>>2]|0;a=c[i+(j*48|0)+4>>2]|0;k=c[i+(j*48|0)+12>>2]|0;b=i+(j*48|0)+16|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];j=i+(j*48|0)+32|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];if(!k){k=e+(a+-1<<4)|0;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];c[d+8>>2]=c[k+8>>2];c[d+12>>2]=c[k+12>>2]}else{c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2]}l=h;return}function xO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0,j=0,k=0,l=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0.0;r=c[b+4>>2]|0;g=0.0;f=0;while(1){if((f|0)>=(r|0))break;l=c[b>>2]|0;k=c[l+(f*48|0)>>2]|0;l=c[l+(f*48|0)+4>>2]|0;i=3;j=0;while(1){if((i|0)>=(l|0))break;q=+h[k+(j<<4)>>3]-+h[k+(i<<4)>>3];p=+h[k+(j<<4)+8>>3]-+h[k+(i<<4)+8>>3];i=i+3|0;j=j+3|0;g=+C(+(p*p+q*q))+g}f=f+1|0}l=0;g=g*.5;a:while(1){if((l|0)>=(r|0)){f=15;break}k=c[b>>2]|0;j=c[k+(l*48|0)>>2]|0;k=c[k+(l*48|0)+4>>2]|0;f=3;i=0;while(1){if((f|0)>=(k|0))break;m=+h[j+(i<<4)>>3];p=+h[j+(i<<4)+8>>3];n=+h[j+(f<<4)>>3];o=+h[j+(f<<4)+8>>3];q=m-n;s=p-o;q=+C(+(s*s+q*q));if(q>=g){f=12;break a}f=f+3|0;i=i+3|0;g=g-q}l=l+1|0}if((f|0)==12){h[d>>3]=m;h[d+8>>3]=p;h[e>>3]=n;h[e+8>>3]=o;s=q-g;h[a>>3]=(s*m+n*g)/q;h[a+8>>3]=(s*p+o*g)/q;return}else if((f|0)==15)qa(138712,106514,1316,106641)}function yO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;sO(b);return}function zO(b,d,e,f,g){b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0,p=0.0,q=0.0,r=0.0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0,G=0,H=0,I=0,J=0,K=0,L=0;J=AO(b)|0;I=c[J+4>>2]|0;K=c[J>>2]|0;H=I+-1|0;B=+h[K+(H<<6)+16>>3];C=+(I|0);D=(g|0)==2;G=(f|0)!=0;n=0;j=0.0;i=0.0;l=0.0;m=0.0;while(1){if((n|0)>=(I|0))break;b=~~+BO(+(n+-1|0),C);A=n+1|0;L=~~+BO(+(A|0),C);o=K+(n<<6)|0;m=+h[o>>3];z=K+(n<<6)+8|0;l=+h[z>>3];s=K+(n<<6)+16|0;t=+h[s>>3];u=K+(n<<6)+24|0;v=K+(n<<6)+32|0;w=K+(n<<6)+40|0;x=K+(n<<6)+48|0;y=K+(n<<6)+56|0;k=+CO(+h[K+(L<<6)+8>>3]-l,+h[K+(L<<6)>>3]-m);q=+CO(+h[K+(b<<6)+8>>3]-l,+h[K+(b<<6)>>3]-m);r=+hb[d&7](t,B,e);b=(n|0)==0;do if(b|(n|0)==(H|0))if(b){i=k+1.5707963267948966;if(!D){b=0;p=i;j=r;break}b=0;p=i;j=r;l=l-+F(+k)*r;m=m-+E(+k)*r;break}else{i=q+-1.5707963267948966;if(!D){b=0;p=i;j=r;break}b=0;p=i;j=r;l=l-+F(+q)*r;m=m-+E(+q)*r;break}else{p=k-q;p=1.5707963267948966-(p<0.0?p+6.283185307179586:p)*.5;j=+E(+p);j=j==0.0?0.0:r/j;i=k+1.5707963267948966;k=p+i;if(G|j>r*10.0){q=+BO(q+-1.5707963267948966,6.283185307179586);b=1;p=+BO(i,6.283185307179586);j=r;i=q}else{b=0;p=k;i=k}}while(0);h[o>>3]=m;h[z>>3]=l;h[s>>3]=t;a[u>>0]=108;h[v>>3]=i;h[w>>3]=j;c[x>>2]=b;h[y>>3]=p;n=A}o=JK(12)|0;b=0;while(1){if((b|0)>=(I|0))break;m=+h[K+(b<<6)>>3];l=+h[K+(b<<6)+8>>3];i=+h[K+(b<<6)+32>>3];j=+h[K+(b<<6)+40>>3];L=c[K+(b<<6)+48>>2]|0;k=+h[K+(b<<6)+56>>3];DO(o,+E(+i)*j+m,+F(+i)*j+l);if(L|0)EO(m,l,j,1,i,k,f,o);b=b+1|0}n=(g|0)==1;k=i+3.141592653589793;if(n)FO(o,m,l,j,i,k);else{DO(o,+E(+k)*j+m,+F(+k)*j+l);i=k}b=I+-2|0;k=m;while(1){if((b|0)<=-1)break;m=+h[K+(b<<6)>>3];l=+h[K+(b<<6)+8>>3];j=+h[K+(b<<6)+40>>3];L=c[K+(b<<6)+48>>2]|0;i=+h[K+(b<<6)+32>>3]+3.141592653589793;k=+h[K+(b<<6)+56>>3]+3.141592653589793;DO(o,+E(+k)*j+m,+F(+k)*j+l);if(L|0)EO(m,l,j,0,i,k,f,o);b=b+-1|0;k=m}if(n)FO(o,k,l,j,i,i+3.141592653589793);GO(J);return o|0}function AO(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;q=l;l=l+144|0;i=q+128|0;h=q+112|0;j=q+96|0;k=q+64|0;m=q;n=q+80|0;o=HO()|0;p=c[a+4>>2]|0;f=c[a>>2]|0;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];IO(o,i,0.0);g=m+48|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];d=0;b=0.0;a:while(1){e=d+3|0;if((e|0)>=(p|0))break;c[m>>2]=c[g>>2];c[m+4>>2]=c[g+4>>2];c[m+8>>2]=c[g+8>>2];c[m+12>>2]=c[g+12>>2];a=1;while(1){if((a|0)==4)break;r=m+(a<<4)|0;s=f+(a+d<<4)|0;c[r>>2]=c[s>>2];c[r+4>>2]=c[s+4>>2];c[r+8>>2]=c[s+8>>2];c[r+12>>2]=c[s+12>>2];a=a+1|0}c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];a=1;while(1){if((a|0)==21){d=e;continue a}kP(n,m,3,+(a|0)*.05,0,0);c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[k+12>>2]=c[n+12>>2];c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>>2];c[i>>2]=c[n>>2];c[i+4>>2]=c[n+4>>2];c[i+8>>2]=c[n+8>>2];c[i+12>>2]=c[n+12>>2];t=+JO(h,i)+b;c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];IO(o,i,t);c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];a=a+1|0;b=t}}KO(o);l=q;return o|0}function BO(a,b){a=+a;b=+b;var c=0.0;c=a-+A(+(a/b))*b;return +(!(a<0.0)&!(a>=b)?a:c)}function CO(a,b){a=+a;b=+b;if(!(a==0.0&b==0.0)){a=+K(+a,+b);if(!(a>=0.0))a=a+6.283185307179586}else a=0.0;return +a}function DO(a,b,d){a=a|0;b=+b;d=+d;var e=0,f=0;e=c[a>>2]|0;f=a+4|0;if((e|0)<(c[f>>2]|0))f=c[a+8>>2]|0;else{c[f>>2]=2e3;e=a+8|0;f=MK(c[e>>2]|0,32e3)|0;c[e>>2]=f;e=c[a>>2]|0}c[a>>2]=e+1;h[f+(e<<4)>>3]=b;h[f+(e<<4)+8>>3]=d;return}function EO(a,b,c,d,e,f,g,h){a=+a;b=+b;c=+c;d=d|0;e=+e;f=+f;g=g|0;h=h|0;var i=0.0;d=(d|0)==0;i=d?e:f;do if((g|0)==1){e=(d?f:e)-i;e=!(e<=1.7453292519943296e-03)?e:e+6.283185307179586;if(e<3.141592653589793){FO(h,a,b,c,e+i,i);break}else{DO(h,+E(+i)*c+a,+F(+i)*c+a);break}}else DO(h,+E(+i)*c+a,+F(+i)*c+a);while(0);return}function FO(a,b,c,d,e,f){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;var g=0,h=0.0;DO(a,+E(+e)*d+b,+F(+e)*d+c);a:do if(!(d==0.0)){while(1){if(!(f>e))break;f=f+-6.283185307179586}f=e-f;while(1){if(!(f>6.283185307179586))break;f=f+-6.283185307179586}f=f*.05263157894736842;g=1;while(1){if((g|0)==20)break a;h=e-f*+(g|0);DO(a,+E(+h)*d+b,+F(+h)*d+c);g=g+1|0}}while(0);return}function GO(a){a=a|0;U1(c[a>>2]|0);U1(a);return}function HO(){var a=0;a=JK(12)|0;c[a+4>>2]=0;c[a+8>>2]=2e3;c[a>>2]=JK(128e3)|0;return a|0}function IO(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,i=0;i=a+4|0;e=c[i>>2]|0;f=a+8|0;g=c[f>>2]|0;if((e|0)<(g|0))a=c[a>>2]|0;else{c[f>>2]=g<<1;e=MK(c[a>>2]|0,g<<7)|0;c[a>>2]=e;a=e;e=c[i>>2]|0}h[a+(e<<6)>>3]=+h[b>>3];h[a+(e<<6)+8>>3]=+h[b+8>>3];c[i>>2]=e+1;h[a+(e<<6)+16>>3]=d;return}function JO(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a>>3]-+h[b>>3];d=+h[a+8>>3]-+h[b+8>>3];return +(+C(+(d*d+c*c)))}function KO(a){a=a|0;var b=0;b=c[a+4>>2]|0;if((c[a+8>>2]|0)>(b|0))c[a>>2]=MK(c[a>>2]|0,b<<6)|0;return}function LO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;i=k;g=k+12|0;c[g>>2]=0;h=c[d+4>>2]|0;if(!h)qa(106658,106669,203,106680);e=c[h>>2]|0;if(!e)qa(106694,106669,206,106680);f=h+8|0;if(!(c[f>>2]|0))c[f>>2]=MO(e)|0;if(!0)e=0;else{e=(PJ(c[h>>2]|0)|0)==0;e=e?0:g}if(!((dT(b,d,e)|0)<<24>>24))NO(d,e);do if(e|0){f=c[g>>2]|0;b=c[15712]|0;e=c[h>>2]|0;if(!f){c[j>>2]=e;w4(b,106737,j)|0;break}else{c[i>>2]=e;c[i+4>>2]=f;w4(b,106705,i)|0;break}}while(0);j=d+32|0;c[a>>2]=c[j>>2];c[a+4>>2]=c[j+4>>2];c[a+8>>2]=c[j+8>>2];c[a+12>>2]=c[j+12>>2];l=k;return}function MO(a){a=a|0;var b=0;b=c[47301]|0;if((b|0)!=0?(c3(b,a)|0)==0:0)a=c[47310]|0;else{U1(b);c[47301]=D4(a)|0;a=u5(189204,22332,35,36,95)|0;c[47310]=a}return a|0}function NO(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0.0,j=0,k=0.0;j=c[b+4>>2]|0;e=c[j>>2]|0;i=+h[j+16>>3];j=b+32|0;h[j>>3]=0.0;h[b+40>>3]=i*1.2;h[b+16>>3]=0.0;h[b+24>>3]=i*.1;c[b+8>>2]=0;c[b+12>>2]=0;if(j3(e,106771,4)|0)if((j3(e,106776,5)|0)!=0?(j3(e,106782,9)|0)!=0:0){g=4248;e=106792}else{g=8344;e=106828}else{g=6296;e=106809}if(d|0)c[d>>2]=e;e=c[b>>2]|0;if(e|0){f=0.0;while(1){b=a[e>>0]|0;if(!(b<<24>>24))break;k=f+ +h[g+((b&255)<<3)>>3];h[j>>3]=k;e=e+1|0;f=k}h[j>>3]=f*i}return}function OO(a,b){a=a|0;b=b|0;return c3(c[a>>2]|0,c[b>>2]|0)|0}function PO(a){a=a|0;var b=0;b=a+108|0;c[b>>2]=0;c[a+112>>2]=32;c[a+116>>2]=-1;c[a+120>>2]=33;c[a+124>>2]=63;c[a+128>>2]=55;c[a+132>>2]=0;c[a+136>>2]=0;c[a+140>>2]=0;b=Vz(b,c[4581]|0)|0;c[a+144>>2]=b;return b|0}function QO(a,b,d){a=a|0;b=b|0;d=d|0;d=V1(1,32)|0;a=c[b>>2]|0;if(a|0)c[d>>2]=D4(a)|0;a=c[b+4>>2]|0;if(a|0)c[d+4>>2]=D4(a)|0;c[d+24>>2]=c[b+24>>2]&127;h[d+16>>3]=+h[b+16>>3];c[d+8>>2]=c[b+8>>2];return d|0}function RO(a,b,d){a=a|0;b=b|0;d=d|0;U1(c[b>>2]|0);U1(c[b+4>>2]|0);U1(b);return}function SO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0,j=0;a=c[b>>2]|0;e=c[d>>2]|0;i=(e|0)==0;if(!a)if(i)j=5;else a=-1;else if(!i){a=s2(a,e)|0;if(!a)j=5}else a=1;do if((j|0)==5){a=c[b+4>>2]|0;e=c[d+4>>2]|0;i=(e|0)==0;if(!a){if(!i){a=-1;break}}else{if(i){a=1;break}a=s2(a,e)|0;if(a|0)break}a=(c[b+24>>2]&127)-(c[d+24>>2]&127)|0;if(!a){g=+h[b+16>>3];f=+h[d+16>>3];if(gf&1}}while(0);return a|0}function TO(){eb(189244)|0;return}function UO(){var a=0,b=0;b=l;l=l+16|0;a=b;eb(a|0)|0;l=b;return +(+((c[a+4>>2]|0)+(c[a>>2]|0)-(c[47311]|0)-(c[47312]|0)|0)*.016666666666666666)}function VO(a){a=a|0;var b=0,d=0;b=JK(16)|0;a=(a|0)>2?a:2;d=JK(a<<2)|0;c[b>>2]=d;c[b+12>>2]=d;c[b+8>>2]=d;c[b+4>>2]=d+(a<<2);return b|0}function WO(a){a=a|0;U1(c[a>>2]|0);U1(a);return}function XO(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+12|0;e=c[d>>2]|0;c[d>>2]=e+4;c[e>>2]=b;if((c[d>>2]|0)>>>0>=(c[a+4>>2]|0)>>>0)c[d>>2]=c[a>>2];return}function YO(a){a=a|0;var b=0,d=0,e=0;d=a+8|0;b=c[d>>2]|0;if((b|0)!=(c[a+12>>2]|0)){e=b+4|0;c[d>>2]=e;b=c[b>>2]|0;if(e>>>0>=(c[a+4>>2]|0)>>>0)c[d>>2]=c[a>>2]}else b=0;return b|0}function ZO(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+16|0;g=i;if(((d|0)!=0?(h=RA(b,d)|0,(h|0)!=0):0)?(a[h>>0]|0)!=0:0){d=y4(h,g,10)|0;e=(h|0)==(c[g>>2]|0)?e:(d|0)<(f|0)?f:d}l=i;return e|0}function _O(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var g=0,h=0,i=0,j=0.0;i=l;l=l+16|0;g=i;if(((b|0)!=0&(d|0)!=0?(h=RA(b,d)|0,(h|0)!=0):0)?(a[h>>0]|0)!=0:0){j=+s5(h,g);e=(h|0)==(c[g>>2]|0)?e:j0.0)){b=+_O(a,GA(a,0,107638,0)|0,-1.0,0.0);b=b==0.0?72.0:b}return +b}function aP(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)!=0&(b|0)!=0)c=RA(a,b)|0;return c|0}function bP(b,c,d){b=b|0;c=c|0;d=d|0;b=aP(b,c,d)|0;if((b|0)!=0?(a[b>>0]|0)!=0:0)d=b;return d|0}function cP(a,b,c){a=a|0;b=b|0;c=c|0;if(!b)a=c&255;else a=dP(RA(a,b)|0)|0;return a|0}function dP(a){a=a|0;return eP(a,0)|0}function eP(b,c){b=b|0;c=c|0;var d=0;if((b|0)!=0?(d=a[b>>0]|0,d<<24>>24!=0):0)if((c3(b,137308)|0)!=0?(c3(b,107649)|0)!=0:0)if((c3(b,107652)|0)!=0?(c3(b,107657)|0)!=0:0){if(((d<<24>>24)+-48|0)>>>0<10)c=(q5(b)|0)&255}else c=1;else c=0;return c|0}function fP(a){a=a|0;var b=0,d=0;while(1){b=(c[a+16>>2]|0)+220|0;d=c[b>>2]|0;if(!((d|0)!=(a|0)&(d|0)!=0))break;a=c[(c[d+16>>2]|0)+220>>2]|0;if(!a){a=d;continue}c[b>>2]=a}return a|0}function gP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;if((a|0)!=(b|0)){d=c[a+16>>2]|0;e=d+220|0;if(!(c[e>>2]|0)){c[e>>2]=a;c[d+216>>2]=1}else a=fP(a)|0;d=c[b+16>>2]|0;e=d+220|0;if(!(c[e>>2]|0)){c[e>>2]=b;c[d+216>>2]=1}else{d=fP(b)|0;b=d;d=c[d+16>>2]|0}g=a+16|0;e=c[g>>2]|0;f=b+16|0;h=(c[e+120>>2]|0)>(c[d+120>>2]|0);a=h?b:a;c[(h?e:d)+220>>2]=a;e=(c[(h?f:g)>>2]|0)+216|0;c[e>>2]=(c[e>>2]|0)+(c[(c[(h?g:f)>>2]|0)+216>>2]|0)}return a|0}function hP(b){b=b|0;b=c[b+16>>2]|0;c[b+216>>2]=1;c[b+220>>2]=0;a[b+159>>0]=0;return}function iP(a,b){a=a|0;b=b|0;if((fP(a)|0)==(a|0)){a=c[a+16>>2]|0;c[a+220>>2]=b;b=(c[b+16>>2]|0)+216|0;c[b>>2]=(c[b>>2]|0)+(c[a+216>>2]|0);return}else qa(107669,107661,194,107685)}function jP(a,b){a=a|0;b=b|0;var d=0.0;b=c[(c[b+16>>2]|0)+132>>2]|0;d=+h[b+8>>3]*72.0;h[a>>3]=+h[b>>3]*72.0;h[a+8>>3]=d;return}function kP(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=f|0;g=g|0;var i=0,j=0,k=0,m=0.0,n=0,o=0,p=0;o=l;l=l+576|0;n=o;i=0;while(1){if((i|0)>(d|0))break;k=n+(i<<4)|0;j=b+(i<<4)|0;c[k>>2]=c[j>>2];c[k+4>>2]=c[j+4>>2];c[k+8>>2]=c[j+8>>2];c[k+12>>2]=c[j+12>>2];i=i+1|0}m=1.0-e;i=1;while(1){if((i|0)>(d|0))break;j=d-i|0;k=i+-1|0;b=0;while(1){if((b|0)>(j|0))break;p=b+1|0;h[n+(i*96|0)+(b<<4)>>3]=+h[n+(k*96|0)+(p<<4)>>3]*e+ +h[n+(k*96|0)+(b<<4)>>3]*m;h[n+(i*96|0)+(b<<4)+8>>3]=+h[n+(k*96|0)+(p<<4)+8>>3]*e+ +h[n+(k*96|0)+(b<<4)+8>>3]*m;b=p}i=i+1|0}a:do if(f|0){i=0;while(1){if((i|0)>(d|0))break a;p=f+(i<<4)|0;k=n+(i*96|0)|0;c[p>>2]=c[k>>2];c[p+4>>2]=c[k+4>>2];c[p+8>>2]=c[k+8>>2];c[p+12>>2]=c[k+12>>2];i=i+1|0}}while(0);b:do if(g|0){i=0;while(1){if((i|0)>(d|0))break b;p=g+(i<<4)|0;f=n+((d-i|0)*96|0)+(i<<4)|0;c[p>>2]=c[f>>2];c[p+4>>2]=c[f+4>>2];c[p+8>>2]=c[f+8>>2];c[p+12>>2]=c[f+12>>2];i=i+1|0}}while(0);p=n+(d*96|0)|0;c[a>>2]=c[p>>2];c[a+4>>2]=c[p+4>>2];c[a+8>>2]=c[p+8>>2];c[a+12>>2]=c[p+12>>2];l=o;return}function lP(b){b=b|0;var d=0,e=0,f=0,g=0;e=0;do{d=c[47315]|0;f=d+1024|0;if((d-e|0)<1024){c[47315]=f;f=MK(c[47316]|0,f)|0;c[47316]=f;d=c[47315]|0}else f=c[47316]|0;d=c4(f+e|0,d-e|0,b)|0;if(!d){g=6;break}e=(l2(d)|0)+e|0;d=c[47316]|0}while((a[d+(e+-1)>>0]|0)!=10);if((g|0)==6)d=c[47316]|0;return ((e|0)>0?d:0)|0}function mP(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;do if((b|0)!=0?(a[b>>0]|0)!=0:0)if(!0){d=c[47133]|0;e=c[47318]|0;if((c[47317]|0)==(d|0))d=e;else{if(e){U1(c[e>>2]|0);U1(c[47318]|0);c[47318]=0;d=c[47133]|0}c[47317]=d;if(!d)break;if(!(a[d>>0]|0))break;d=nP(d)|0;c[47318]=d}if(!((a[b>>0]|0)!=47&(d|0)!=0))break;b=oP(d,c[47319]|0,b)|0;break}else S();else b=0;while(0);l=f;return b|0}function nP(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=0;f=0;g=0;b=D4(a)|0;d=0;while(1){b=A4(b,107984)|0;if(!b)break;a=(g<<2)+8|0;if(!f)a=KK(a)|0;else a=MK(d,a)|0;c[a+(g<<2)>>2]=b;f=l2(b)|0;e=e>>>0>f>>>0?e:f;f=a;g=g+1|0;b=0;d=a}c[f+(g<<2)>>2]=0;c[47319]=e;return f|0}function oP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;e=g;h=c[47320]|0;c[47320]=W1(h,b+2+(l2(d)|0)|0)|0;while(1){b=c[a>>2]|0;if(!b){a=0;break}h=c[47320]|0;c[e>>2]=b;c[e+4>>2]=107982;c[e+8>>2]=d;m4(h,107975,e)|0;if(!(_4(c[47320]|0,4)|0)){f=4;break}else a=a+4|0}if((f|0)==4)a=c[47320]|0;l=g;return a|0}function pP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=(b|0)==0;f=0;while(1){h=c[d+(f<<2)>>2]|0;if(!h)break;if((!g?(a[b>>0]|0)==(a[h>>0]|0):0)?(s2(b,h)|0)==0:0)break;f=f+1|0}return c[e+(f<<2)>>2]|0}function qP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0;z=l;l=l+80|0;x=z+16|0;y=z;u=c[b+4>>2]|0;v=c[b>>2]|0;w=d+8|0;f=0;e=-1;g=1.e+38;b=-1;while(1){if((f|0)>=(u|0))break;s=c[v+(f*48|0)>>2]|0;t=c[v+(f*48|0)+4>>2]|0;r=0;while(1){if((r|0)>=(t|0))break;q=+h[s+(r<<4)>>3]-+h[d>>3];p=+h[s+(r<<4)+8>>3]-+h[w>>3];q=p*p+q*q;A=(e|0)==-1|q>2]|0;e=e+(((e|0)==((c[v+(b*48|0)+4>>2]|0)+-1|0))<<31>>31)|0;e=e-((e|0)%3|0)|0;b=0;while(1){if((b|0)==4)break;C=b+e|0;h[x+(b<<4)>>3]=+h[f+(C<<4)>>3];h[x+(b<<4)+8>>3]=+h[f+(C<<4)+8>>3];b=b+1|0}q=+h[d>>3];k=+h[x>>3]-q;o=+h[w>>3];p=+h[x+8>>3]-o;j=+h[x+48>>3]-q;n=+h[x+56>>3]-o;b=y+8|0;g=1.0;i=0.0;j=n*n+j*j;k=p*p+k*k;while(1){p=(g+i)*.5;kP(y,x,3,p,0,0);m=+h[y>>3];n=+h[b>>3];if(+B(+(k-j))<1.0)break;if(+B(+(g-i))<1.0e-05)break;C=k>3]=m;h[a+8>>3]=n;l=z;return}function rP(){return 0}function sP(b){b=b|0;var d=0.0,e=0,f=0,g=0,i=0,j=0,k=0,l=0;d=+_O(b,c[47146]|0,.75,.01);g=b+16|0;h[(c[g>>2]|0)+32>>3]=d;d=+_O(b,c[47145]|0,.5,.02);h[(c[g>>2]|0)+40>>3]=d;l=jN(bP(b,c[47147]|0,107986)|0,b)|0;c[(c[g>>2]|0)+8>>2]=l;l=RA(b,c[47154]|0)|0;d=+_O(b,c[47150]|0,14.0,1.0);e=bP(b,c[47151]|0,107994)|0;f=bP(b,c[47152]|0,137314)|0;i=(iD(l)|0)!=0;k=(WM(b)|0)==2;i=zK(b,l,(k?4:0)|(i?2:0),d,e,f)|0;c[(c[g>>2]|0)+104>>2]=i;i=c[47155]|0;if((i|0?(j=RA(b,i)|0,j|0):0)?a[j>>0]|0:0){l=(iD(j)|0)!=0;l=zK(b,j,l?2:0,d,e,f)|0;c[(c[g>>2]|0)+108>>2]=l;l=(c[(xC(b)|0)+16>>2]|0)+113|0;a[l>>0]=a[l>>0]|16}k=(ZO(b,c[47158]|0,0,0)|0)&255;l=c[g>>2]|0;a[l+144>>0]=k;tb[c[c[(c[l+8>>2]|0)+4>>2]>>2]&127](b);return}function tP(b){b=b|0;var d=0,e=0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+112|0;m=v+96|0;n=v+80|0;s=v+40|0;u=v;r=b+48|0;p=xC(c[((c[b>>2]&3|0)==3?b:r)+40>>2]|0)|0;g=m+8|0;c[g>>2]=0;o=n+8|0;c[o>>2]=0;d=c[47182]|0;if(((d|0)!=0?(e=RA(b,d)|0,(e|0)!=0):0)?(a[e>>0]|0)!=0:0){uP(b,m);t=(iD(e)|0)!=0;i=+h[m>>3];f=c[g>>2]|0;d=c[m+12>>2]|0;e=zK(b,e,t?2:0,i,f,d)|0;t=b+16|0;c[(c[t>>2]|0)+96>>2]=e;e=(c[p+16>>2]|0)+113|0;a[e>>0]=a[e>>0]|1;e=dP(aP(b,c[47192]|0,137308)|0)|0;a[(c[t>>2]|0)+114>>0]=e;t=1;e=f}else{t=0;d=0;i=0.0;e=0}f=c[47183]|0;if((f|0?(j=RA(b,f)|0,j|0):0)?a[j>>0]|0:0){if(!e){uP(b,m);i=+h[m>>3];e=c[g>>2]|0;d=c[m+12>>2]|0}g=(iD(j)|0)!=0;j=zK(b,j,g?2:0,i,e,d)|0;c[(c[b+16>>2]|0)+108>>2]=j;j=(c[p+16>>2]|0)+113|0;a[j>>0]=a[j>>0]|32}d=c[47197]|0;if(((d|0)!=0?(k=RA(b,d)|0,(k|0)!=0):0)?(a[k>>0]|0)!=0:0){vP(b,m,n);j=(iD(k)|0)!=0;i=+h[n>>3];d=c[o>>2]|0;e=c[n+12>>2]|0;k=zK(b,k,j?2:0,i,d,e)|0;c[(c[b+16>>2]|0)+100>>2]=k;k=(c[p+16>>2]|0)+113|0;a[k>>0]=a[k>>0]|2}else{e=0;i=0.0;d=0}f=c[47198]|0;if((f|0?(q=RA(b,f)|0,q|0):0)?a[q>>0]|0:0){if(!d){vP(b,m,n);e=c[n+12>>2]|0;i=+h[n>>3];d=c[o>>2]|0}o=(iD(q)|0)!=0;q=zK(b,q,o?2:0,i,d,e)|0;c[(c[b+16>>2]|0)+104>>2]=q;q=(c[p+16>>2]|0)+113|0;a[q>>0]=a[q>>0]|4}d=QA(b,111455)|0;d=d|0?d:195059;if(a[d>>0]|0)a[(c[(c[((c[b>>2]&3|0)==3?b:r)+40>>2]|0)+16>>2]|0)+145>>0]=1;g=b+16|0;f=(c[g>>2]|0)+16|0;e=c[((c[b>>2]&3|0)==3?b:r)+40>>2]|0;wP(s,c[(c[(c[(c[e+16>>2]|0)+8>>2]|0)+4>>2]|0)+8>>2]|0,e,d);d=s;e=f+40|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0));if((xP(b,c[47204]|0)|0)<<24>>24)a[(c[g>>2]|0)+46>>0]=0;d=QA(b,111464)|0;d=d|0?d:195059;if(!(a[d>>0]|0))e=b+-48|0;else{e=b+-48|0;a[(c[(c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0)+16>>2]|0)+145>>0]=1}f=(c[g>>2]|0)+56|0;e=c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0;wP(u,c[(c[(c[(c[e+16>>2]|0)+8>>2]|0)+4>>2]|0)+8>>2]|0,e,d);d=u;e=f+40|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0));if((xP(b,c[47205]|0)|0)<<24>>24)a[(c[g>>2]|0)+86>>0]=0;l=v;return t|0}function uP(a,b){a=a|0;b=b|0;h[b>>3]=+_O(a,c[47179]|0,14.0,1.0);c[b+8>>2]=bP(a,c[47180]|0,107994)|0;c[b+12>>2]=bP(a,c[47181]|0,137314)|0;return}function vP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=b+8|0;if(!(c[e>>2]|0))uP(a,b);h[d>>3]=+_O(a,c[47199]|0,+h[b>>3],1.0);c[d+8>>2]=bP(a,c[47200]|0,c[e>>2]|0)|0;c[d+12>>2]=bP(a,c[47201]|0,c[b+12>>2]|0)|0;return}function wP(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+128|0;k=m+80|0;h=m+40|0;g=m;if((f|0)!=0?(j=R2(f,58)|0,(j|0)!=0):0){a[j>>0]=0;i=j+1|0;xb[d&31](h,e,f,i);e=k;g=h;d=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(d|0));a[j>>0]=58;f=i}else{xb[d&31](g,e,f,0);e=k;d=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(d|0))}e=b;g=k;d=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(d|0));c[b+36>>2]=f;l=m;return}function xP(b,c){b=b|0;c=c|0;var d=0;if(((c|0)!=0?(d=RA(b,c)|0,(d|0)!=0):0)?(a[d>>0]|0)!=0:0)b=(dP(d)|0)<<24>>24==0&1;else b=0;return b|0}function yP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;k=l;l=l+32|0;i=k;j=c[b+8>>2]|0;d=c[b+4>>2]|0;d=(c[b+44>>2]|0)+((O((d|0)>1?d+-1|0:0,j)|0)<<4)|0;e=i+16|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];f=i+8|0;g=i+24|0;b=1;while(1){if((b|0)>=(j|0))break;m=d+(b<<4)|0;o=+h[m>>3];h[i>>3]=+h[(+h[i>>3]>3];n=+h[m+8>>3];h[f>>3]=+h[(+h[f>>3]>3];h[e>>3]=+h[(+h[e>>3]>o?e:m)>>3];h[g>>3]=+h[(+h[g>>3]>n?e:m)+8>>3];b=b+1|0}c[a>>2]=c[i>>2];c[a+4>>2]=c[i+4>>2];c[a+8>>2]=c[i+8>>2];c[a+12>>2]=c[i+12>>2];c[a+16>>2]=c[i+16>>2];c[a+20>>2]=c[i+20>>2];c[a+24>>2]=c[i+24>>2];c[a+28>>2]=c[i+28>>2];l=k;return}function zP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+64|0;g=d+32|0;e=d;f=c[a+16>>2]|0;a=f+16|0;f=c[f+116>>2]&1;c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[g+16>>2]=c[a+16>>2];c[g+20>>2]=c[a+20>>2];c[g+24>>2]=c[a+24>>2];c[g+28>>2]=c[a+28>>2];AP(e,g,b,f);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];c[a+8>>2]=c[e+8>>2];c[a+12>>2]=c[e+12>>2];c[a+16>>2]=c[e+16>>2];c[a+20>>2]=c[e+20>>2];c[a+24>>2]=c[e+24>>2];c[a+28>>2]=c[e+28>>2];l=d;return}function AP(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0,k=0.0,l=0.0,m=0.0;g=+h[d+56>>3];l=+h[d+64>>3];j=e<<24>>24==0;k=+h[d+24>>3];i=+h[d+32>>3];m=(j?k:i)*.5;f=g-m;g=m+g;if(f<+h[b>>3])h[b>>3]=f;e=b+16|0;if(g>+h[e>>3])h[e>>3]=g;g=(j?i:k)*.5;f=l-g;g=g+l;e=b+8|0;if(f<+h[e>>3])h[e>>3]=f;e=b+24|0;if(g>+h[e>>3])h[e>>3]=g;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];return}function BP(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=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.0,P=0.0;L=l;l=l+448|0;H=L+416|0;t=L+384|0;u=L+304|0;K=L+256|0;G=L+192|0;B=L+144|0;C=L+96|0;d=L+400|0;e=L+368|0;f=L+352|0;g=L+336|0;v=L+288|0;w=L+224|0;x=L+160|0;y=L+112|0;z=L+64|0;A=L+32|0;I=L;J=b+16|0;if((tB(b)|0)==0?(c[(c[J>>2]|0)+180>>2]|0)==0:0){CP(d,0.0,0.0);c[K>>2]=c[d>>2];c[K+4>>2]=c[d+4>>2];c[K+8>>2]=c[d+8>>2];c[K+12>>2]=c[d+12>>2];K=K+16|0;CP(e,0.0,0.0);c[K>>2]=c[e>>2];c[K+4>>2]=c[e+4>>2];c[K+8>>2]=c[e+8>>2];c[K+12>>2]=c[e+12>>2]}else{CP(f,2147483647.0,2147483647.0);c[K>>2]=c[f>>2];c[K+4>>2]=c[f+4>>2];c[K+8>>2]=c[f+8>>2];c[K+12>>2]=c[f+12>>2];F=K+16|0;CP(g,-2147483647.0,-2147483647.0);c[F>>2]=c[g>>2];c[F+4>>2]=c[g+4>>2];c[F+8>>2]=c[g+8>>2];c[F+12>>2]=c[g+12>>2];o=C+8|0;p=u+16|0;D=K+8|0;q=u+8|0;E=K+24|0;r=u+24|0;s=B+8|0;n=jC(b)|0;while(1){if(!n)break;jP(B,n);d=n+16|0;m=c[d>>2]|0;h[C>>3]=(+h[m+96>>3]+ +h[m+88>>3])*.5;h[o>>3]=+h[m+80>>3]*.5;c[t>>2]=c[B>>2];c[t+4>>2]=c[B+4>>2];c[t+8>>2]=c[B+8>>2];c[t+12>>2]=c[B+12>>2];c[H>>2]=c[C>>2];c[H+4>>2]=c[C+4>>2];c[H+8>>2]=c[C+8>>2];c[H+12>>2]=c[C+12>>2];DP(u,t,H);c[t>>2]=c[B>>2];c[t+4>>2]=c[B+4>>2];c[t+8>>2]=c[B+8>>2];c[t+12>>2]=c[B+12>>2];c[H>>2]=c[C>>2];c[H+4>>2]=c[C+4>>2];c[H+8>>2]=c[C+8>>2];c[H+12>>2]=c[C+12>>2];EP(v,t,H);c[p>>2]=c[v>>2];c[p+4>>2]=c[v+4>>2];c[p+8>>2]=c[v+8>>2];c[p+12>>2]=c[v+12>>2];h[K>>3]=+h[(+h[K>>3]<+h[u>>3]?K:u)>>3];h[D>>3]=+h[(+h[D>>3]<+h[q>>3]?K:u)+8>>3];h[F>>3]=+h[(+h[F>>3]>+h[p>>3]?K:u)+16>>3];h[E>>3]=+h[(+h[E>>3]>+h[r>>3]?K:u)+24>>3];d=c[(c[d>>2]|0)+108>>2]|0;if(d|0?a[d+81>>0]|0:0){m=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];AP(w,H,d,m);c[K>>2]=c[w>>2];c[K+4>>2]=c[w+4>>2];c[K+8>>2]=c[w+8>>2];c[K+12>>2]=c[w+12>>2];c[K+16>>2]=c[w+16>>2];c[K+20>>2]=c[w+20>>2];c[K+24>>2]=c[w+24>>2];c[K+28>>2]=c[w+28>>2]}m=XA(b,n)|0;while(1){if(!m)break;k=m+16|0;d=c[k>>2]|0;j=d+8|0;e=c[j>>2]|0;if(e|0){i=0;while(1){if((i|0)<(c[e+4>>2]|0))g=0;else break;while(1){f=c[e>>2]|0;if((g|0)>=(c[f+(i*48|0)+4>>2]|0))break;e=(c[f+(i*48|0)>>2]|0)+(g<<4)|0;c[B>>2]=c[e>>2];c[B+4>>2]=c[e+4>>2];c[B+8>>2]=c[e+8>>2];c[B+12>>2]=c[e+12>>2];N=+h[B>>3];h[K>>3]=+h[(+h[K>>3]>3];M=+h[s>>3];h[D>>3]=+h[(+h[D>>3]>3];h[F>>3]=+h[(+h[F>>3]>N?F:B)>>3];h[E>>3]=+h[(+h[E>>3]>M?F:B)+8>>3];g=g+1|0;e=c[j>>2]|0}i=i+1|0}e=c[d+96>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){d=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];AP(x,H,e,d);c[K>>2]=c[x>>2];c[K+4>>2]=c[x+4>>2];c[K+8>>2]=c[x+8>>2];c[K+12>>2]=c[x+12>>2];c[K+16>>2]=c[x+16>>2];c[K+20>>2]=c[x+20>>2];c[K+24>>2]=c[x+24>>2];c[K+28>>2]=c[x+28>>2];d=c[k>>2]|0}e=c[d+100>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){d=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];AP(y,H,e,d);c[K>>2]=c[y>>2];c[K+4>>2]=c[y+4>>2];c[K+8>>2]=c[y+8>>2];c[K+12>>2]=c[y+12>>2];c[K+16>>2]=c[y+16>>2];c[K+20>>2]=c[y+20>>2];c[K+24>>2]=c[y+24>>2];c[K+28>>2]=c[y+28>>2];d=c[k>>2]|0}e=c[d+104>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){d=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];AP(z,H,e,d);c[K>>2]=c[z>>2];c[K+4>>2]=c[z+4>>2];c[K+8>>2]=c[z+8>>2];c[K+12>>2]=c[z+12>>2];c[K+16>>2]=c[z+16>>2];c[K+20>>2]=c[z+20>>2];c[K+24>>2]=c[z+24>>2];c[K+28>>2]=c[z+28>>2];d=c[k>>2]|0}d=c[d+108>>2]|0;if(d|0?a[d+81>>0]|0:0){k=c[(c[J>>2]|0)+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];AP(A,H,d,k);c[K>>2]=c[A>>2];c[K+4>>2]=c[A+4>>2];c[K+8>>2]=c[A+8>>2];c[K+12>>2]=c[A+12>>2];c[K+16>>2]=c[A+16>>2];c[K+20>>2]=c[A+20>>2];c[K+24>>2]=c[A+24>>2];c[K+28>>2]=c[A+28>>2]}}m=ZA(b,m)|0}n=kC(b,n)|0}d=c[J>>2]|0;f=c[d+180>>2]|0;g=d+184|0;i=G+8|0;j=G+16|0;k=G+24|0;e=1;while(1){if((e|0)>(f|0))break;P=+h[(c[(c[(c[g>>2]|0)+(e<<2)>>2]|0)+16>>2]|0)+16>>3];h[G>>3]=P;C=c[(c[(c[g>>2]|0)+(e<<2)>>2]|0)+16>>2]|0;O=+h[C+24>>3];h[i>>3]=O;M=+h[C+32>>3];h[j>>3]=M;N=+h[C+40>>3];h[k>>3]=N;h[K>>3]=+h[(+h[K>>3]>3];h[D>>3]=+h[(+h[D>>3]>3];h[F>>3]=+h[(+h[F>>3]>M?K:G)+16>>3];h[E>>3]=+h[(+h[E>>3]>N?K:G)+24>>3];e=e+1|0}e=c[d+12>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){d=c[d+116>>2]&1;c[H>>2]=c[K>>2];c[H+4>>2]=c[K+4>>2];c[H+8>>2]=c[K+8>>2];c[H+12>>2]=c[K+12>>2];c[H+16>>2]=c[K+16>>2];c[H+20>>2]=c[K+20>>2];c[H+24>>2]=c[K+24>>2];c[H+28>>2]=c[K+28>>2];AP(I,H,e,d);c[K>>2]=c[I>>2];c[K+4>>2]=c[I+4>>2];c[K+8>>2]=c[I+8>>2];c[K+12>>2]=c[I+12>>2];c[K+16>>2]=c[I+16>>2];c[K+20>>2]=c[I+20>>2];c[K+24>>2]=c[I+24>>2];c[K+28>>2]=c[I+28>>2];d=c[J>>2]|0}J=d+16|0;c[J>>2]=c[K>>2];c[J+4>>2]=c[K+4>>2];c[J+8>>2]=c[K+8>>2];c[J+12>>2]=c[K+12>>2];c[J+16>>2]=c[K+16>>2];c[J+20>>2]=c[K+20>>2];c[J+24>>2]=c[K+24>>2];c[J+28>>2]=c[K+28>>2]}l=L;return}function CP(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function DP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[b+8>>3]-+h[c+8>>3];h[a>>3]=+h[b>>3]-+h[c>>3];h[a+8>>3]=d;return}function EP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[c+8>>3]+ +h[b+8>>3];h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=d;return}function FP(a){a=a|0;if((c[a+60>>2]|0)==(a|0))a=1;else a=(j3(KB(a)|0,108006,7)|0)==0&1;return a|0}function GP(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a:do if(!e)switch(IC(b)|0){case 0:{e=GA(a,0,c,195059)|0;break a}case 1:{e=GA(a,1,c,195059)|0;break a}case 2:{e=GA(a,2,c,195059)|0;break a}default:{e=0;break a}}while(0);KA(b,e,d)|0;return e|0}function HP(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+144|0;g=k;i=IP(d)|0;h=Vz(23592,c[4581]|0)|0;j=ND(d,108014,1)|0;TC(j,137483,280,1)|0;kA(g,128,k+16|0);e=jC(d)|0;while(1){if(!e)break;a:do if(!(a[(c[e+16>>2]|0)+118>>0]|0)){f=XA(d,e)|0;while(1){if(!f)break a;JP(f,j,g,h,i);f=ZA(d,f)|0}}while(0);e=kC(d,e)|0}oA(g);Rz(h)|0;f=tB(j)|0;e=jC(j)|0;while(1){if(!e)break;h=kC(j,e)|0;wC(d,e)|0;e=h}sB(j)|0;if(f|0){j=(c[d+16>>2]|0)+136|0;b[j>>1]=b[j>>1]|1}Rz(i)|0;l=k;return f|0}function IP(a){a=a|0;var b=0;b=Vz(23628,c[4581]|0)|0;SP(a,b);return b|0}function JP(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+48|0;q=t+32|0;p=t+24|0;s=t+16|0;r=t+8|0;k=t;n=c[b>>2]&3;m=c[((n|0)==3?b:b+48|0)+40>>2]|0;n=c[((n|0)==2?b:b+-48|0)+40>>2]|0;do if(!(a[(c[n+16>>2]|0)+118>>0]|0)){if(!(Q2(KB(m)|0,108006,7)|0))o=KP(g,KB(m)|0)|0;else o=0;if(!(Q2(KB(n)|0,108006,7)|0))i=KP(g,KB(n)|0)|0;else i=0;h=(o|0)!=0;j=(i|0)!=0;if(h|j){if((o|0)==(i|0)){r=KB(m)|0;s=KB(m)|0;c[k>>2]=r;c[k+4>>2]=s;gA(0,108029,k)|0;break}g=LP(f,b)|0;if(g|0){MP(b,c[g+16>>2]|0,c[g+20>>2]|0)|0;break}if(!j)if(!(HC(o,n)|0)){OP(f,m,n,MP(b,NP(m,o,e,d)|0,n)|0);break}else{r=KB(n)|0;s=KB(o)|0;c[q>>2]=r;c[q+4>>2]=s;gA(0,108184,q)|0;break}if(!h)if(!(HC(i,m)|0)){OP(f,m,n,MP(b,m,NP(n,i,e,d)|0)|0);break}else{r=KB(m)|0;s=KB(i)|0;c[p>>2]=r;c[p+4>>2]=s;gA(0,108147,p)|0;break}if(HC(i,o)|0){q=KB(o)|0;s=KB(i)|0;c[r>>2]=q;c[r+4>>2]=s;gA(0,108067,r)|0;break}if(!(HC(o,i)|0)){s=NP(m,o,e,d)|0;OP(f,m,n,MP(b,s,NP(n,i,e,d)|0)|0);break}else{q=KB(i)|0;r=KB(o)|0;c[s>>2]=q;c[s+4>>2]=r;gA(0,108107,s)|0;break}}}while(0);l=t;return}function KP(a,b){a=a|0;b=b|0;a=nb[c[a>>2]&63](a,b,512)|0;if(!a)a=0;else a=c[a+12>>2]|0;return a|0}function LP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[b>>2]&3;c[e>>2]=c[((f|0)==3?b:b+48|0)+40>>2];c[e+4>>2]=c[((f|0)==2?b:b+-48|0)+40>>2];b=nb[c[a>>2]&63](a,e,512)|0;l=d;return b|0}function MP(a,b,c){a=a|0;b=b|0;c=c|0;c=iB(xC(b)|0,b,c,0,1)|0;TC(c,137460,176,1)|0;UA(a,c)|0;return c|0}function NP(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+112|0;g=k;j=k+4|0;nA(e,108221)|0;i=c[47321]|0;c[47321]=i+1;c[g>>2]=i;m4(j,137395,g)|0;nA(e,j)|0;j=e+4|0;g=c[j>>2]|0;i=e+8|0;if(g>>>0>=(c[i>>2]|0)>>>0){lA(e,1)|0;g=c[j>>2]|0}c[j>>2]=g+1;a[g>>0]=58;nA(e,KB(d)|0)|0;h=yC(d)|0;g=c[j>>2]|0;if(g>>>0>=(c[i>>2]|0)>>>0){lA(e,1)|0;g=c[j>>2]|0}a[g>>0]=0;e=c[e>>2]|0;c[j>>2]=e;j=tC(h,e,1)|0;TC(j,137447,304,1)|0;a[(c[j+16>>2]|0)+118>>0]=1;oC(d,j,1)|0;oC(f,b,1)|0;f=xC(j)|0;c[47154]=GP(f,j,108224,195059,c[47154]|0)|0;f=xC(j)|0;c[47157]=GP(f,j,141082,134335,c[47157]|0)|0;f=xC(j)|0;c[47147]=GP(f,j,108230,108236,c[47147]|0)|0;l=k;return j|0}function OP(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,m=0,n=0,o=0;f=l;l=l+32|0;g=f;n=g+8|0;c[n>>2]=b;m=g+12|0;c[m>>2]=d;o=c[e>>2]&3;i=e+48|0;j=g+16|0;c[j>>2]=c[((o|0)==3?e:i)+40>>2];k=e+-48|0;h=g+20|0;c[h>>2]=c[((o|0)==2?e:k)+40>>2];nb[c[a>>2]&63](a,g,1)|0;c[n>>2]=d;c[m>>2]=b;d=c[e>>2]&3;c[j>>2]=c[((d|0)==2?e:k)+40>>2];c[h>>2]=c[((d|0)==3?e:i)+40>>2];nb[c[a>>2]&63](a,g,1)|0;l=f;return}function PP(a,b,d){a=a|0;b=b|0;d=d|0;d=JK(24)|0;c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[d+16>>2]=c[b+16>>2];c[d+20>>2]=c[b+20>>2];return d|0}function QP(a,b,c){a=a|0;b=b|0;c=c|0;U1(b);return}function RP(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[b>>2]|0;e=c[d>>2]|0;if(a>>>0>=e>>>0)if(a>>>0>e>>>0)a=1;else{b=c[b+4>>2]|0;d=c[d+4>>2]|0;return (b>>>0>>0?-1:b>>>0>d>>>0&1)|0}else a=-1;return a|0}function SP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;f=a+16|0;e=1;while(1){a=c[f>>2]|0;if((e|0)>(c[a+180>>2]|0))break;a=c[(c[a+184>>2]|0)+(e<<2)>>2]|0;d=KB(a)|0;if(!(nb[c[b>>2]&63](b,d,512)|0)){i=JK(16)|0;c[i+8>>2]=d;c[i+12>>2]=a;nb[c[b>>2]&63](b,i,1)|0}else{c[g>>2]=d;gA(0,108240,g)|0}SP(a,b);e=e+1|0}l=h;return}function TP(a,b,c){a=a|0;b=b|0;c=c|0;U1(b);return}function UP(a){a=a|0;var b=0,c=0,d=0;d=ND(a,108014,1)|0;TC(d,137483,280,1)|0;b=jC(a)|0;while(1){if(!b)break;c=XA(a,b)|0;while(1){if(!c)break;VP(c,d);c=ZA(a,c)|0}b=kC(a,b)|0}b=jC(d)|0;while(1){if(!b)break;c=kC(d,b)|0;WP(b);wC(a,b)|0;b=c}sB(d)|0;return}function VP(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]&3;f=c[((e|0)==3?b:b+48|0)+40>>2]|0;e=c[((e|0)==2?b:b+-48|0)+40>>2]|0;if(!((a[(c[f+16>>2]|0)+118>>0]|0)==0?!(a[(c[e+16>>2]|0)+118>>0]|0):0)){f=XP(f,d)|0;e=MP(b,f,XP(e,d)|0)|0;f=c[b+16>>2]|0;d=f+8|0;e=c[e+16>>2]|0;c[e+8>>2]=c[d>>2];c[d>>2]=0;d=f+96|0;c[e+96>>2]=c[d>>2];c[d>>2]=0;d=f+108|0;c[e+108>>2]=c[d>>2];c[d>>2]=0;d=f+100|0;c[e+100>>2]=c[d>>2];c[d>>2]=0;f=f+104|0;c[e+104>>2]=c[f>>2];c[f>>2]=0;YP(b)}return}function WP(a){a=a|0;var b=0,d=0,e=0;e=a+16|0;b=c[e>>2]|0;d=c[b+132>>2]|0;if(d){U1(d);b=c[e>>2]|0}d=c[b+8>>2]|0;if(d){tb[c[(c[d+4>>2]|0)+4>>2]&127](a);b=c[e>>2]|0}CK(c[b+104>>2]|0);CK(c[(c[e>>2]|0)+108>>2]|0);VC(a,137447)|0;return}function XP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=xC(b)|0;a:do if(a[(c[b+16>>2]|0)+118>>0]|0){oC(d,b,1)|0;b=R2(KB(b)|0,58)|0;if(!b)qa(111208,107661,1225,108292);d=b+1|0;b=tC(f,d,0)|0;if(!b){b=tC(f,d,1)|0;TC(b,137447,304,1)|0;d=LA(f,1,0)|0;while(1){if(!d)break a;g=RA(b,d)|0;e=c[d+12>>2]|0;if((g|0)!=(e|0))KA(b,d,e)|0;d=LA(f,1,d)|0}}}while(0);return b|0}function YP(a){a=a|0;var b=0;b=a+16|0;U1(c[(c[b>>2]|0)+144>>2]|0);ZP(a);CK(c[(c[b>>2]|0)+96>>2]|0);CK(c[(c[b>>2]|0)+108>>2]|0);CK(c[(c[b>>2]|0)+100>>2]|0);CK(c[(c[b>>2]|0)+104>>2]|0);VC(a,137460)|0;return}function ZP(a){a=a|0;var b=0,d=0,e=0;e=a+16|0;a=c[e>>2]|0;b=c[a+8>>2]|0;if(b){d=0;while(1){a=c[b>>2]|0;if((d|0)>=(c[b+4>>2]|0))break;U1(c[a+(d*48|0)>>2]|0);d=d+1|0;b=c[(c[e>>2]|0)+8>>2]|0}U1(a);U1(c[(c[e>>2]|0)+8>>2]|0);a=c[e>>2]|0}c[a+8>>2]=0;return}function _P(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=GA(a,b,c,0)|0;if(!e)e=GA(a,b,c,d)|0;return e|0}function $P(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;i=o;h=o+8|0;j=o+16|0;m=R2(b,59)|0;n=d+4|0;e=c[n>>2]|0;k=d+8|0;if(e>>>0>=(c[k>>2]|0)>>>0){lA(d,1)|0;e=c[n>>2]|0}c[n>>2]=e+1;a[e>>0]=38;if(((m|0)!=0?(f=m-b|0,(f+-2|0)>>>0<=6):0)?(i4(j,b,f)|0,a[j+f>>0]=0,c[h>>2]=j,g=u5(h,23664,252,8,96)|0,(g|0)!=0):0){c[i>>2]=c[g+4>>2];m4(j,137395,i)|0;b=c[n>>2]|0;if(b>>>0>=(c[k>>2]|0)>>>0){lA(d,1)|0;b=c[n>>2]|0}c[n>>2]=b+1;a[b>>0]=35;nA(d,j)|0;b=c[n>>2]|0;if(b>>>0>=(c[k>>2]|0)>>>0){lA(d,1)|0;b=c[n>>2]|0}c[n>>2]=b+1;a[b>>0]=59;b=m+1|0}l=o;return b|0}function aQ(a,b){a=a|0;b=b|0;return s2(c[a>>2]|0,c[b>>2]|0)|0}function bQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+1072|0;k=q+8|0;j=q;i=q+16|0;o=q+24|0;c[i>>2]=b;if((c[47322]|0)!=(d|0)){c[47322]=d;a[194958]=0}kA(o,1024,q+40|0);p=o+4|0;n=o+8|0;while(1){f=b+1|0;c[i>>2]=f;e=a[b>>0]|0;if(!(e<<24>>24))break;do if((e&255)<192)if(e<<24>>24==38){f=dQ(i)|0;if(!f)e=38;else{if(f>>>0<127){e=f&255;break}b=c[p>>2]|0;e=b>>>0>=(c[n>>2]|0)>>>0;if(f>>>0<2047){if(e){lA(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=f>>>6|192;e=(f&63|128)&255;break}if(e){lA(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=f>>>12|224;b=c[p>>2]|0;if(b>>>0>=(c[n>>2]|0)>>>0){lA(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=f>>>6&63|128;e=(f&63|128)&255}}else{h=0;m=9}else if((e&255)>=224)if((e&255)>=240)if((e&255)<248){h=3;m=9}else{if(!(a[194958]|0)){c[j>>2]=KB(d)|0;gA(0,109707,j)|0;a[194958]=1}h=-1;e=cQ(e,o)|0;m=9}else{h=2;m=9}else{h=1;m=9}while(0);do if((m|0)==9){m=0;g=0;while(1){if((g|0)>=(h|0)){m=34;break}if((a[f>>0]&-64)<<24>>24!=-128)break;b=c[p>>2]|0;if(b>>>0>=(c[n>>2]|0)>>>0){lA(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=e;g=g+1|0;e=a[f>>0]|0;f=f+1|0}if((m|0)==34){m=0;c[i>>2]=f;break}c[i>>2]=f;if(!(a[194958]|0)){g=KB(d)|0;c[k>>2]=h+1;c[k+4>>2]=g;gA(0,109828,k)|0;a[194958]=1}e=cQ(e,o)|0}while(0);b=c[p>>2]|0;if(b>>>0>=(c[n>>2]|0)>>>0){lA(o,1)|0;b=c[p>>2]|0}c[p>>2]=b+1;a[b>>0]=e;b=c[i>>2]|0}b=c[p>>2]|0;if(b>>>0>=(c[n>>2]|0)>>>0){lA(o,1)|0;b=c[p>>2]|0}a[b>>0]=0;n=c[o>>2]|0;c[p>>2]=n;p=D4(n)|0;oA(o);l=q;return p|0}function cQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j;a[g>>0]=b;a[g+1>>0]=0;g=eQ(g)|0;h=d+4|0;i=d+8|0;e=l2(g)|0;f=g;while(1){if((e|0)<=1)break;b=c[h>>2]|0;if(b>>>0>=(c[i>>2]|0)>>>0){lA(d,1)|0;b=c[h>>2]|0}k=a[f>>0]|0;c[h>>2]=b+1;a[b>>0]=k;e=e+-1|0;f=f+1|0}k=a[f>>0]|0;U1(g);l=j;return k|0}function dQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;h=i;d=i+8|0;e=c[b>>2]|0;a:do if((a[e>>0]|0)!=35){c[h>>2]=d;g=0;b:while(1){if((g|0)>=8){d=0;break a}f=a[e+g>>0]|0;switch(f<<24>>24){case 0:{d=0;break a}case 59:break b;default:{}}a[d>>0]=f;d=d+1|0;g=g+1|0}a[d>>0]=0;d=u5(h,23664,252,8,96)|0;if(!d)d=0;else{e=e+(g+1)|0;d=c[d+4>>2]|0}}else{h=a[e+1>>0]|0;d=h&255;c:do if((h|32)<<24>>24==120){h=0;g=2;while(1){if((g|0)>=8){f=h;break c}f=a[e+g>>0]|0;d=f&255;if((f+-65&255)>=6)if((f+-97&255)>=6)if((f+-48&255)<10)f=-48;else{f=h;break c}else f=-87;else f=-55;d=f+d|0;h=d+(h<<4)|0;g=g+1|0}}else{f=0;g=1;while(1){if((g|0)>=8)break c;h=a[e+g>>0]|0;d=h&255;if((h+-48&255)>=10)break c;f=(f*10|0)+-48+d|0;g=g+1|0}}while(0);d=(d|0)==59;e=d?e+(g+1)|0:e;d=d?f:0}while(0);c[b>>2]=e;l=i;return d|0}function eQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+1056|0;g=k;i=k+8|0;c[g>>2]=b;kA(i,1024,k+24|0);j=i+4|0;h=i+8|0;while(1){c[g>>2]=b+1;d=a[b>>0]|0;if(!(d<<24>>24))break;b=d&255;if(d<<24>>24==38){b=dQ(g)|0;if(!b){b=38;f=6}else f=5}else f=5;do if((f|0)==5){f=0;if(b>>>0<127)f=6;else{d=c[j>>2]|0;e=d>>>0>=(c[h>>2]|0)>>>0;if(b>>>0<2047){if(e){lA(i,1)|0;d=c[j>>2]|0}c[j>>2]=d+1;a[d>>0]=b>>>6|192;d=c[j>>2]|0;if(d>>>0>=(c[h>>2]|0)>>>0){lA(i,1)|0;d=c[j>>2]|0}b=b&63|128;break}if(e){lA(i,1)|0;d=c[j>>2]|0}c[j>>2]=d+1;a[d>>0]=b>>>12|224;d=c[j>>2]|0;if(d>>>0>=(c[h>>2]|0)>>>0){lA(i,1)|0;d=c[j>>2]|0}c[j>>2]=d+1;a[d>>0]=b>>>6&63|128;d=c[j>>2]|0;if(d>>>0>=(c[h>>2]|0)>>>0){lA(i,1)|0;d=c[j>>2]|0}b=b&63|128}}while(0);if((f|0)==6){d=c[j>>2]|0;if(d>>>0>=(c[h>>2]|0)>>>0){lA(i,1)|0;d=c[j>>2]|0}}c[j>>2]=d+1;a[d>>0]=b;b=c[g>>2]|0}b=c[j>>2]|0;if(b>>>0>=(c[h>>2]|0)>>>0){lA(i,1)|0;b=c[j>>2]|0}a[b>>0]=0;h=c[i>>2]|0;c[j>>2]=h;j=D4(h)|0;oA(i);l=k;return j|0}function fQ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+1040|0;g=i;kA(g,1024,i+16|0);h=g+4|0;f=g+8|0;while(1){d=b+1|0;e=a[b>>0]|0;if(!(e<<24>>24))break;if((e&255)<127){b=c[h>>2]|0;if(b>>>0>=(c[f>>2]|0)>>>0){lA(g,1)|0;b=c[h>>2]|0}c[h>>2]=b+1;a[b>>0]=e;b=d;continue}else{e=a[d>>0]&63|e<<6&255;d=c[h>>2]|0;if(d>>>0>=(c[f>>2]|0)>>>0){lA(g,1)|0;d=c[h>>2]|0}c[h>>2]=d+1;a[d>>0]=e;b=b+2|0;continue}}b=c[h>>2]|0;if(b>>>0>=(c[f>>2]|0)>>>0){lA(g,1)|0;b=c[h>>2]|0}a[b>>0]=0;f=c[g>>2]|0;c[h>>2]=f;h=D4(f)|0;oA(g);l=i;return h|0}function gQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+80|0;e=n+48|0;d=n+32|0;f=n+64|0;g=n+16|0;i=n;j=b+16|0;k=a+16|0;m=c[k>>2]|0;if(((+h[j>>3]>=+h[m+48>>3]?+h[m+64>>3]>=+h[b>>3]:0)?+h[b+24>>3]>=+h[m+56>>3]:0)?+h[m+72>>3]>=+h[b+8>>3]:0){m=m+16|0;c[d>>2]=c[j>>2];c[d+4>>2]=c[j+4>>2];c[d+8>>2]=c[j+8>>2];c[d+12>>2]=c[j+12>>2];c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];hQ(g,d,e);c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];DP(i,d,e);c[f>>2]=a;c[f+4>>2]=0;d=c[(c[(c[(c[k>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];d=lb[d&127](f,e)|0}else d=0;l=n;return d|0}function hQ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=(+h[c+8>>3]+ +h[b+8>>3])*.5;h[a>>3]=(+h[c>>3]+ +h[b>>3])*.5;h[a+8>>3]=d;return}function iQ(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0.0,g=0,i=0.0,j=0,k=0,m=0,n=0;e=l;l=l+80|0;j=e+64|0;k=e+48|0;m=e;n=e+32|0;g=e+16|0;h[m>>3]=+h[a+24>>3]*.5;h[m+8>>3]=+h[a+32>>3]*.5;a=a+56|0;c[k>>2]=c[a>>2];c[k+4>>2]=c[a+4>>2];c[k+8>>2]=c[a+8>>2];c[k+12>>2]=c[a+12>>2];c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];DP(n,k,j);i=+h[n>>3];f=+h[n+8>>3];c[k>>2]=c[a>>2];c[k+4>>2]=c[a+4>>2];c[k+8>>2]=c[a+8>>2];c[k+12>>2]=c[a+12>>2];c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];EP(g,k,j);d=+h[g+8>>3];if((+h[b+16>>3]>=i?+h[g>>3]>=+h[b>>3]:0)?+h[b+24>>3]>=f:0)a=d>=+h[b+8>>3]&1;else a=0;l=e;return a|0}function jQ(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,m=0,n=0;n=l;l=l+80|0;k=n+48|0;j=n;h=a+16|0;a=c[h>>2]|0;i=c[a+8>>2]|0;a:do if((i|0)!=0?(g=i+8|0,c[j>>2]=c[g>>2],c[j+4>>2]=c[g+4>>2],c[j+8>>2]=c[g+8>>2],c[j+12>>2]=c[g+12>>2],c[j+16>>2]=c[g+16>>2],c[j+20>>2]=c[g+20>>2],c[j+24>>2]=c[g+24>>2],c[j+28>>2]=c[g+28>>2],c[k>>2]=c[b>>2],c[k+4>>2]=c[b+4>>2],c[k+8>>2]=c[b+8>>2],c[k+12>>2]=c[b+12>>2],c[k+16>>2]=c[b+16>>2],c[k+20>>2]=c[b+20>>2],c[k+24>>2]=c[b+24>>2],c[k+28>>2]=c[b+28>>2],(kQ(j,k)|0)!=0):0){d=i+4|0;a=0;while(1){if((a|0)>=(c[d>>2]|0))break;e=j;f=(c[i>>2]|0)+(a*48|0)|0;g=e+48|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];c[k+16>>2]=c[b+16>>2];c[k+20>>2]=c[b+20>>2];c[k+24>>2]=c[b+24>>2];c[k+28>>2]=c[b+28>>2];if(!((lQ(j,k)|0)<<24>>24))a=a+1|0;else{a=1;break a}}a=c[h>>2]|0;m=7}else m=7;while(0);do if((m|0)==7){a=c[a+96>>2]|0;if(a|0?(c[k>>2]=c[b>>2],c[k+4>>2]=c[b+4>>2],c[k+8>>2]=c[b+8>>2],c[k+12>>2]=c[b+12>>2],c[k+16>>2]=c[b+16>>2],c[k+20>>2]=c[b+20>>2],c[k+24>>2]=c[b+24>>2],c[k+28>>2]=c[b+28>>2],(iQ(a,k)|0)<<24>>24):0){a=1;break}a=0}while(0);l=n;return a|0}function kQ(a,b){a=a|0;b=b|0;if((+h[a+16>>3]>=+h[b>>3]?+h[b+16>>3]>=+h[a>>3]:0)?+h[a+24>>3]>=+h[b+8>>3]:0)a=+h[b+24>>3]>=+h[a+8>>3]&1;else a=0;return a|0}function lQ(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,m=0,n=0;n=l;l=l+96|0;k=n+64|0;j=n+48|0;i=n+32|0;f=n+16|0;g=n;m=a+4|0;d=c[m>>2]|0;if(!d)qa(109937,107661,1637,109945);e=c[a>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];e=1;while(1){if((e|0)>=(d|0)){h=7;break}d=(c[a>>2]|0)+(e<<4)|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];c[k+16>>2]=c[b+16>>2];c[k+20>>2]=c[b+20>>2];c[k+24>>2]=c[b+24>>2];c[k+28>>2]=c[b+28>>2];if((iK(i,j,k)|0)!=-1){d=1;break};c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];e=e+1|0;d=c[m>>2]|0}do if((h|0)==7){d=c[a+8>>2]|0;if(d|0?(g=a+16|0,h=c[a>>2]|0,c[i>>2]=c[g>>2],c[i+4>>2]=c[g+4>>2],c[i+8>>2]=c[g+8>>2],c[i+12>>2]=c[g+12>>2],c[j>>2]=c[h>>2],c[j+4>>2]=c[h+4>>2],c[j+8>>2]=c[h+8>>2],c[j+12>>2]=c[h+12>>2],c[k>>2]=c[b>>2],c[k+4>>2]=c[b+4>>2],c[k+8>>2]=c[b+8>>2],c[k+12>>2]=c[b+12>>2],c[k+16>>2]=c[b+16>>2],c[k+20>>2]=c[b+20>>2],c[k+24>>2]=c[b+24>>2],c[k+28>>2]=c[b+28>>2],(mQ(i,j,d,k)|0)<<24>>24):0){d=1;break}d=c[a+12>>2]|0;if(d|0?(h=a+32|0,m=(c[a>>2]|0)+((c[m>>2]|0)+-1<<4)|0,c[i>>2]=c[h>>2],c[i+4>>2]=c[h+4>>2],c[i+8>>2]=c[h+8>>2],c[i+12>>2]=c[h+12>>2],c[j>>2]=c[m>>2],c[j+4>>2]=c[m+4>>2],c[j+8>>2]=c[m+8>>2],c[j+12>>2]=c[m+12>>2],c[k>>2]=c[b>>2],c[k+4>>2]=c[b+4>>2],c[k+8>>2]=c[b+8>>2],c[k+12>>2]=c[b+12>>2],c[k+16>>2]=c[b+16>>2],c[k+20>>2]=c[b+20>>2],c[k+24>>2]=c[b+24>>2],c[k+28>>2]=c[b+28>>2],(mQ(i,j,d,k)|0)<<24>>24):0){d=1;break}d=0}while(0);l=n;return d|0}function mQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0.0;m=l;l=l+160|0;g=m+144|0;f=m+128|0;n=m+96|0;i=m+64|0;j=m+32|0;k=m;o=+h[e+16>>3];c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];YH(n,f,g,1.0,d);if(((o>=+h[n>>3]?(c[f>>2]=c[a>>2],c[f+4>>2]=c[a+4>>2],c[f+8>>2]=c[a+8>>2],c[f+12>>2]=c[a+12>>2],c[g>>2]=c[b>>2],c[g+4>>2]=c[b+4>>2],c[g+8>>2]=c[b+8>>2],c[g+12>>2]=c[b+12>>2],YH(i,f,g,1.0,d),+h[i+16>>3]>=+h[e>>3]):0)?(o=+h[e+24>>3],c[f>>2]=c[a>>2],c[f+4>>2]=c[a+4>>2],c[f+8>>2]=c[a+8>>2],c[f+12>>2]=c[a+12>>2],c[g>>2]=c[b>>2],c[g+4>>2]=c[b+4>>2],c[g+8>>2]=c[b+8>>2],c[g+12>>2]=c[b+12>>2],YH(j,f,g,1.0,d),o>=+h[j+8>>3]):0)?(c[f>>2]=c[a>>2],c[f+4>>2]=c[a+4>>2],c[f+8>>2]=c[a+8>>2],c[f+12>>2]=c[a+12>>2],c[g>>2]=c[b>>2],c[g+4>>2]=c[b+4>>2],c[g+8>>2]=c[b+8>>2],c[g+12>>2]=c[b+12>>2],YH(k,f,g,1.0,d),+h[k+24>>3]>=+h[e+8>>3]):0)f=1;else f=0;l=m;return f|0}function nQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;f=g;a:do if((b|0)!=0?(e=a[b>>0]|0,e<<24>>24!=0):0){do switch(e<<24>>24|0){case 48:{d=2;break a}case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:{d=10;break a}case 67:case 99:{e=b+1|0;if(!(c3(e,109960)|0)){d=4;break a}if(!(c3(e,109966)|0)){d=12;break a}break}case 70:case 102:{if(!(c3(b+1|0,109974)|0)){d=2;break a}break}case 76:case 108:{if(!(c3(b+1|0,109979)|0)){d=2;break a}break}case 78:case 110:{e=b+1|0;if(!(c3(e,109983)|0)){d=0;break a}if(!(c3(e,109987)|0)){d=2;break a}break}case 79:case 111:{if(!(c3(b+1|0,109989)|0)){d=8;break a}break}case 80:case 112:{if(!(c3(b+1|0,109994)|0)){d=6;break a}break}case 83:case 115:{if(!(c3(b+1|0,110002)|0)){d=10;break a}break}case 84:case 116:{if(!(c3(b+1|0,110008)|0)){d=10;break a}break}case 89:case 121:{if(!(c3(b+1|0,110012)|0)){d=10;break a}break}default:{}}while(0);c[f>>2]=b;gA(0,110015,f)|0}while(0);l=g;return d|0}function oQ(d,f){d=d|0;f=f|0;var g=0;g=QA(d,110056)|0;if(g)if(!(a[g>>0]|0))f=0;else f=nQ(g,f)|0;d=(c[d+16>>2]|0)+136|0;b[d>>1]=f|e[d>>1];return}function pQ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,m=0,n=0,o=0.0,p=0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0;v=l;l=l+32|0;p=v+16|0;r=v;t=e&1;u=e&2;a:do if((c|0)==2){s=+h[a+16>>3];f=+h[a>>3];j=+h[a+24>>3];i=+h[a+8>>3];f=f-(s-f);h[p>>3]=f;h[r>>3]=s;i=i-(j-i);h[p+8>>3]=i;h[r+8>>3]=j}else{g=+h[a>>3];h[r>>3]=g;h[p>>3]=g;j=+h[a+8>>3];m=r+8|0;h[m>>3]=j;n=p+8|0;h[n>>3]=j;e=0;f=g;i=j;while(1){if((e|0)>=(c|0)){s=g;break a}w=a+(e<<4)|0;q=+h[w>>3];k=+h[(q>3];h[p>>3]=k;s=+h[a+(e<<4)+8>>3];o=+h[(s>3];h[n>>3]=o;q=+h[(q>g?w:r)>>3];h[r>>3]=q;s=+h[(s>j?w:r)+8>>3];h[m>>3]=s;e=e+1|0;f=k;i=o;g=q;j=s}}while(0);g=(s-f)*.5;q=g+f;o=(j-i)*.5;k=o+i;if(!t){f=j-k;j=d;i=+F(+j);j=+E(+j);if(!u){g=i*f-k;f=-k-o*i}else{f=i*f;g=k-f;f=f+k}h[b+8>>3]=g;h[b+24>>3]=f;d=j*(s-q);h[b>>3]=q-d;h[b+16>>3]=d+q}else{d=+C(+(o*o+g*g));h[b+8>>3]=u|0?k:-k;h[b>>3]=q;h[b+16>>3]=d*.25;h[b+24>>3]=d}l=v;return}function qQ(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0;e=a+16|0;f=c[e>>2]|0;if(!(b<<24>>24)){d=+h[f+32>>3]*36.0;h[f+88>>3]=d;a=f+40|0}else{d=+h[f+40>>3]*36.0;h[f+88>>3]=d;a=f+32|0}h[f+96>>3]=d;h[(c[e>>2]|0)+80>>3]=+h[a>>3]*72.0;return}
+function Tl(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,m=0,n=0;n=l;l=l+32|0;j=n+8|0;f=n+4|0;g=n;d=c[b>>2]&3;e=c[((d|0)==3?b:b+48|0)+40>>2]|0;k=(c[(c[e+16>>2]|0)+232>>2]|0)+-1|0;a=c[(c[a+16>>2]|0)+196>>2]|0;h=c[a+(k<<6)+4>>2]|0;a=c[a+(k<<6)>>2]|0;k=j+8|0;c[k>>2]=-1;c[j>>2]=-1;m=j+12|0;c[m>>2]=a;i=j+4|0;c[i>>2]=a;Vl(e,c[((d|0)==2?b:b+-48|0)+40>>2]|0,f,g);f=c[f>>2]|0;g=c[g>>2]|0;d=0;e=a;b=-1;while(1){if((d|0)>=(e|0))break;e=e+-1|0;Wl(c[h+(d<<2)>>2]|0,j,f,g);if((d|0)!=(e|0))Wl(c[h+(e<<2)>>2]|0,j,f,g);a=c[i>>2]|0;b=c[j>>2]|0;if((a-b|0)<2)break;else d=d+1|0}if((b|0)>(a|0))a=(c[m>>2]|0)+(c[k>>2]|0)|0;else a=a+b|0;l=n;return (a+1|0)/2|0|0}function Ul(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=a+16|0;f=c[(c[g>>2]|0)+196>>2]|0;e=f+(b<<6)|0;f=c[f+(b<<6)+4>>2]|0;if(!f)f=KK((c[e>>2]<<2)+8|0)|0;else f=MK(f,(c[e>>2]<<2)+8|0)|0;e=c[(c[g>>2]|0)+196>>2]|0;c[e+(b<<6)+4>>2]=f;e=c[e+(b<<6)>>2]|0;while(1){if((e|0)<=(d|0))break;h=e+-1|0;i=c[f+(h<<2)>>2]|0;c[f+(e<<2)>>2]=i;i=(c[i+16>>2]|0)+236|0;c[i>>2]=(c[i>>2]|0)+1;e=h}h=sh(a)|0;i=f+(d<<2)|0;c[i>>2]=h;h=c[h+16>>2]|0;c[h+236>>2]=d;c[h+232>>2]=b;g=(c[(c[g>>2]|0)+196>>2]|0)+(b<<6)|0;h=(c[g>>2]|0)+1|0;c[g>>2]=h;c[f+(h<<2)>>2]=0;return c[i>>2]|0}function Vl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;a=c[(c[a+16>>2]|0)+236>>2]|0;b=c[(c[b+16>>2]|0)+236>>2]|0;f=(a|0)>(b|0);c[d>>2]=f?b:a;c[e>>2]=f?a:b;return}function Wl(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;h=m+4|0;g=m;b=c[b+16>>2]|0;do if((a[b+156>>0]|0)==1){k=c[b+236>>2]|0;if(c[b+176>>2]|0){i=c[b+180>>2]|0;b=0;g=0;h=0;while(1){j=c[i+(h<<2)>>2]|0;if(!j)break;n=c[(c[(c[((c[j>>2]&3|0)==2?j:j+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;j=(n|0)>(e|0);b=j?((n|0)<(f|0)?b:1):b;g=j?g:1;h=h+1|0}if(g<<24>>24!=0&b<<24>>24==0){c[d>>2]=k+1;break}if(!(g<<24>>24==0&b<<24>>24!=0))break;c[d+4>>2]=k+-1;break}if((c[b+184>>2]|0)!=2)qa(88397,88417,63,88424);i=c[b+180>>2]|0;n=c[i>>2]|0;i=c[i+4>>2]|0;Vl(c[((c[n>>2]&3|0)==2?n:n+-48|0)+40>>2]|0,c[((c[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0,h,g);i=c[g>>2]|0;if((i|0)<=(e|0)){c[d>>2]=k;c[d+8>>2]=k;break}b=c[h>>2]|0;if((b|0)>=(f|0)){c[d+4>>2]=k;c[d+12>>2]=k;break}g=(b|0)<(e|0);h=(i|0)>(f|0);if(!(h&g)){if(!(!g?!((i|0)<(f|0)&(b|0)==(e|0)):0))c[d+8>>2]=k;if(!h?!((i|0)==(f|0)&(b|0)>(e|0)):0)break;c[d+12>>2]=k}}while(0);l=m;return}function Xl(a){a=a|0;c[47134]=1;pm(a);c[47134]=0;return}function Yl(a){a=a|0;c[47134]=2;pm(a);c[47134]=0;return}function Zl(a){a=a|0;var b=0;TC(a,137447,304,1)|0;sP(a);b=JK((e[(c[(xC(a)|0)+16>>2]|0)+176>>1]|0)<<3)|0;c[(c[a+16>>2]|0)+132>>2]=b;qQ(a,c[(c[(xC(a)|0)+16>>2]|0)+116>>2]&1);return}function _l(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0;s=l;l=l+64|0;j=s+48|0;o=s+40|0;k=s+24|0;i=s+8|0;q=s+56|0;m=s;do if((b|0)!=0?(r=e+16|0,p=c[(c[r>>2]|0)+132>>2]|0,g=RA(e,b)|0,(a[g>>0]|0)!=0):0){a[q>>0]=0;b=p+8|0;if((c[47137]|0)>2?(c[i>>2]=p,c[i+4>>2]=b,c[i+8>>2]=p+16,c[i+12>>2]=q,(b5(g,88535,i)|0)>2):0){a[(c[r>>2]|0)+119>>0]=1;g=c[47137]|0;a:do if(+h[23293]>0.0){b=0;while(1){if((b|0)>=(g|0))break a;o=p+(b<<3)|0;h[o>>3]=+h[o>>3]/+h[23293];b=b+1|0}}while(0);if((g|0)>3)Fn(e,f,3);if((a[q>>0]|0)!=33){if(!d){b=1;break}if(!((dP(RA(e,d)|0)|0)<<24>>24)){b=1;break}}a[(c[r>>2]|0)+119>>0]=3;b=1;break}c[k>>2]=p;c[k+4>>2]=b;c[k+8>>2]=q;if((b5(g,101749,k)|0)<=1){c[j>>2]=KB(e)|0;c[j+4>>2]=g;gA(1,88549,j)|0;b=0;break}a[(c[r>>2]|0)+119>>0]=1;g=c[47137]|0;b:do if(+h[23293]>0.0){b=0;while(1){if((b|0)>=(g|0))break b;k=p+(b<<3)|0;h[k>>3]=+h[k>>3]/+h[23293];b=b+1|0}}while(0);do if((g|0)>2){b=c[47171]|0;if((b|0?(n=RA(e,b)|0,n|0):0)?(c[o>>2]=m,(b5(n,101209,o)|0)==1):0){u=+h[23293];t=+h[m>>3];h[p+16>>3]=u>0.0?t/u:t;Fn(e,f,3);break}Gn(e,f)}while(0);if((a[q>>0]|0)!=33){if(!d){b=1;break}if(!((dP(RA(e,d)|0)|0)<<24>>24)){b=1;break}}a[(c[r>>2]|0)+119>>0]=3;b=1}else b=0;while(0);l=s;return b|0}function $l(a){a=a|0;var b=0,c=0;c=jC(a)|0;while(1){if(!c)break;b=XA(a,c)|0;while(1){if(!b)break;YP(b);b=ZA(a,b)|0}WP(c);c=kC(a,c)|0}am(a);return}function am(a){a=a|0;if((c[47134]|0)!=0|(c[46795]|0)<0)Dn(a);if((yC(a)|0)!=(a|0))ZC(a,0,137483);return}function bm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+48|0;m=q+32|0;o=q;k=GA(b,0,102637,0)|0;e=GA(b,0,102671,0)|0;p=(eP(QA(b,88593)|0,0)|0)<<24>>24!=0;if(!e)e=GA(b,0,102671,195059)|0;Cn(b)|0;n=b+16|0;i=0;while(1){j=c[(c[(c[n>>2]|0)+152>>2]|0)+(i<<2)>>2]|0;if(!j){f=12;break}g=j+16|0;f=c[g>>2]|0;if(!(a[f+119>>0]|0)){if(Q2(KB(j)|0,108006,7)|0){f=8;break}f=c[g>>2]|0}f=c[f+108>>2]|0;if(f|0)cm(j,f,102633);i=i+1|0}a:do if((f|0)==8){p=KB(j)|0;e=KB(b)|0;c[m>>2]=p;c[m+4>>2]=e;gA(1,88605,m)|0;e=-1}else if((f|0)==12){dm(b,k,e);j=em(b)|0;e=c[(c[n>>2]|0)+8>>2]|0;if(!(c[e+88>>2]|0))e=0;else{c[e+84>>2]=0;e=1}g=(d|0)!=0;i=(e|0)!=0;if(!(i|g&(c[47134]|0)==1^1)?(or(b)|0)!=0:0){f=c[(c[n>>2]|0)+12>>2]|0;if(!f)f=1;else{a[f+81>>0]=0;f=1}}else f=0;BP(b);if(i){d=(c[n>>2]|0)+16|0;nI(o,b);c[d>>2]=c[o>>2];c[d+4>>2]=c[o+4>>2];c[d+8>>2]=c[o+8>>2];c[d+12>>2]=c[o+12>>2];c[d+16>>2]=c[o+16>>2];c[d+20>>2]=c[o+20>>2];c[d+24>>2]=c[o+24>>2];c[d+28>>2]=c[o+28>>2]}if(!g){c[47138]=1;f=jC(b)|0;while(1){if(!f)break a;p=c[f+16>>2]|0;o=c[p+132>>2]|0;h[p+16>>3]=+h[o>>3]*72.0;h[p+24>>3]=+h[o+8>>3]*72.0;f=kC(b,f)|0}}do if(!(p|i)){p=c[n>>2]|0;if(!(+h[p+16>>3]!=0.0)?!(+h[p+24>>3]!=0.0):0)break;an(b)}while(0);if(!((j|0)!=0&(f|(_m(b)|0)<<24>>24!=0))){if((j|0)==2){c[47138]=1;break}}else fm(b);Zm(b,0)}while(0);l=q;return e|0}function cm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k+32|0;f=k+24|0;g=k+16|0;i=k;b=QA(b,e)|0;if(b|0?(c[j>>2]=f,c[j+4>>2]=g,(b5(b,105503,j)|0)==2):0){j=d+56|0;im(i,+h[f>>3],+h[g>>3]);c[j>>2]=c[i>>2];c[j+4>>2]=c[i+4>>2];c[j+8>>2]=c[i+8>>2];c[j+12>>2]=c[i+12>>2];a[d+81>>0]=1}l=k;return}function dm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+48|0;k=m+32|0;f=m+24|0;g=m+16|0;i=m;j=b+16|0;if((d|0?(c[(c[j>>2]|0)+12>>2]|0)!=0:0)?(n=RA(b,d)|0,c[k>>2]=f,c[k+4>>2]=g,(b5(n,105503,k)|0)==2):0){n=(c[(c[j>>2]|0)+12>>2]|0)+56|0;im(i,+h[f>>3],+h[g>>3]);c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[n+8>>2]=c[i+8>>2];c[n+12>>2]=c[i+12>>2];a[(c[(c[j>>2]|0)+12>>2]|0)+81>>0]=1}a:do if(e|0){f=OD(b)|0;while(1){if(!f)break a;jm(f,b,d,e);f=PD(f)|0}}while(0);l=m;return}function em(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(uB(a)|0){f=GA(a,2,102623,0)|0;if(!((f|0)==0|(c[47134]|0)<2)){b=0;e=jC(a)|0;while(1){if(!e)break;d=XA(a,e)|0;while(1){if(!d)break;g=b+((gm(f,d)|0)!=0&1)|0;d=ZA(a,d)|0;b=g}e=kC(a,e)|0}if(b){b=(b|0)==(uB(a)|0);b=b?2:1}else b=0}else b=0}else b=2;return b|0}function fm(a){a=a|0;var b=0,d=0,e=0;d=jC(a)|0;while(1){if(!d)break;b=XA(a,d)|0;while(1){if(!b)break;ZP(b);e=b+16|0;CK(c[(c[e>>2]|0)+96>>2]|0);CK(c[(c[e>>2]|0)+108>>2]|0);CK(c[(c[e>>2]|0)+100>>2]|0);CK(c[(c[e>>2]|0)+104>>2]|0);b=ZA(a,b)|0}d=kC(a,d)|0}return}function gm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.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;B=l;l=l+96|0;z=B+72|0;x=B+56|0;A=B+48|0;y=B+32|0;w=B+16|0;r=B+88|0;s=B+8|0;t=B;u=B+84|0;v=B+80|0;b=RA(d,b)|0;do if(a[b>>0]|0){HH(d,u,v);q=1;f=0;e=0;j=0.0;i=0.0;k=0.0;g=0.0;a:while(1){c[w>>2]=s;c[w+4>>2]=t;c[w+8>>2]=r;if((b5(b,88642,w)|0)==2){p=1;b=b+(c[r>>2]|0)|0;i=+h[s>>3];g=+h[t>>3]}else p=e;c[y>>2]=s;c[y+4>>2]=t;c[y+8>>2]=r;if((b5(b,88654,y)|0)==2){o=1;b=b+(c[r>>2]|0)|0;j=+h[s>>3];k=+h[t>>3]}else o=f;m=hm(b)|0;if(!((m|0)>3&((m|0)%3|0|0)==1)){e=8;break}n=KK(m<<4)|0;e=n;f=m;while(1){if(!f)break;c[x>>2]=s;c[x+4>>2]=t;c[x+8>>2]=r;if((b5(b,88724,x)|0)<2){e=13;break a}C=b+(c[r>>2]|0)|0;h[e>>3]=+h[s>>3];h[e+8>>3]=+h[t>>3];e=e+16|0;f=f+-1|0;b=C}while(1){e=a[b>>0]|0;f=b+1|0;if(!(S2(e<<24>>24)|0))break;else b=f}C=e<<24>>24==0;b=C?b:f;q=C?0:q;f=cO(d,m)|0;if(p|0){c[f+8>>2]=c[u>>2];h[f+16>>3]=i;h[f+24>>3]=g}if(o|0){c[f+12>>2]=c[v>>2];h[f+32>>3]=j;h[f+40>>3]=k}e=0;while(1){if((e|0)>=(m|0))break;C=(c[f>>2]|0)+(e<<4)|0;D=n+(e<<4)|0;c[C>>2]=c[D>>2];c[C+4>>2]=c[D+4>>2];c[C+8>>2]=c[D+8>>2];c[C+12>>2]=c[D+12>>2];e=e+1|0}U1(n);if(!q){e=26;break}else{f=o;e=p}}if((e|0)==8){ZP(d);if(a[193771]|0){b=0;break}a[193771]=1;D=KB(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)|0;b=KB(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)|0;c[A>>2]=D;c[A+4>>2]=b;gA(0,88667,A)|0;b=0;break}else if((e|0)==13){if(!(a[193771]|0)){a[193771]=1;C=KB(c[((c[d>>2]&3|0)==3?d:d+48|0)+40>>2]|0)|0;D=KB(c[((c[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)|0;c[z>>2]=C;c[z+4>>2]=D;gA(0,88734,z)|0}U1(n);ZP(d);b=0;break}else if((e|0)==26){f=d+16|0;b=c[f>>2]|0;e=c[b+96>>2]|0;if(e){cm(d,e,102637);b=c[f>>2]|0}e=c[b+108>>2]|0;if(e){cm(d,e,102633);b=c[f>>2]|0}e=c[b+100>>2]|0;if(e){cm(d,e,102640);b=c[f>>2]|0}b=c[b+104>>2]|0;if(!b){b=1;break}cm(d,b,102648);b=1;break}}else b=0;while(0);l=B;return b|0}function hm(b){b=b|0;var c=0,d=0;d=0;do{while(1){c=a[b>>0]|0;if(!(S2(c&255)|0))break;else b=b+1|0}a:do if(!(c<<24>>24))c=0;else{d=d+1|0;while(1){if(!(c<<24>>24)){c=0;break a}if(c<<24>>24==59|(S2(c&255)|0)!=0)break a;c=b+1|0;b=c;c=a[c>>0]|0}}while(0)}while((S2(c&255)|0)!=0);return d|0}function im(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function jm(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;h=l;l=l+32|0;f=h;if((Q2(KB(a)|0,108006,7)|0)==0?(km(a,e,f)|0)!=0:0){TC(a,137483,280,1)|0;i=(c[a+16>>2]|0)+16|0;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[i+16>>2]=c[f+16>>2];c[i+20>>2]=c[f+20>>2];c[i+24>>2]=c[f+24>>2];c[i+28>>2]=c[f+28>>2];lm(b,a);dm(a,d,e)}else g=4;a:do if((g|0)==4){a=OD(a)|0;while(1){if(!a)break a;jm(a,b,d,e);a=PD(a)|0}}while(0);l=h;return}function km(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0,k=0;i=l;l=l+48|0;j=i+32|0;g=i;k=RA(a,b)|0;a=g+8|0;b=g+24|0;c[j>>2]=g;c[j+4>>2]=a;c[j+8>>2]=g+16;c[j+12>>2]=b;if((b5(k,88782,j)|0)==4){e=+h[a>>3];f=+h[b>>3];if(e>f){h[a>>3]=f;h[b>>3]=e};c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];c[d+16>>2]=c[g+16>>2];c[d+20>>2]=c[g+20>>2];c[d+24>>2]=c[g+24>>2];c[d+28>>2]=c[g+28>>2];a=1}else a=0;l=i;return a|0}function lm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+16|0;d=c[e>>2]|0;g=d+180|0;a=c[g>>2]|0;f=a+1|0;c[g>>2]=f;d=c[d+184>>2]|0;if(!d)a=JK((a<<2)+8|0)|0;else a=LK(d,a+2|0,4,f)|0;c[(c[e>>2]|0)+184>>2]=a;c[a+(f<<2)>>2]=b;uK(b);return}function mm(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+48|0;m=n+8|0;k=n;i=n+16|0;j=n+12|0;h=QA(b,88798)|0;do if((h|0)!=0?(g=a[h>>0]|0,g<<24>>24!=0):0){g=g&255;if(!(b3(g)|0))if((e|0)==2|(g+-48|0)>>>0<10)e=h;else break;else{if(!(Q2(h,88804,4)|0)){e=0;break}if(!(Q2(h,105511,7)|0)){e=1;break}if(Q2(h,88809,6)|0)if((e|0)==2)e=h;else break;else e=h+6|0}if(!(((d[e>>0]|0)+-48|0)>>>0<10?(c[k>>2]=j,(b5(e,99933,k)|0)>=1):0)){k=X4()|0;k=(db(0)|0)^k;c[j>>2]=k;c[m>>2]=k;m4(i,99933,m)|0;SA(b,88798,i)|0}c[f>>2]=c[j>>2];e=2}while(0);l=n;return e|0}function nm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f+4|0;c[e>>2]=1;d=mm(a,d,e)|0;if((d|0)!=2&(c[46796]|0)!=0)gA(0,88816,f)|0;if((d|0)==1)om(a,b);z5(c[e>>2]|0);l=f;return d|0}function om(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0.0,j=0,k=0,l=0.0;g=+(d|0);i=6.283185307179586/g;e=jC(b)|0;f=0.0;while(1){if(!e)break;l=+E(+f)*g;j=c[e+16>>2]|0;k=c[j+132>>2]|0;h[k>>3]=l;h[k+8>>3]=+F(+f)*g;a[j+119>>0]=1;if((c[47137]|0)>2)Gn(e,d);e=kC(b,e)|0;f=f+i}return}function pm(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0;r=l;l=l+80|0;d=r+24|0;n=r+32|0;k=r;p=r+28|0;m=r+64|0;q=+h[23293];do if(c[47134]|0){h[23293]=72.0;qm(b);rm(b);if((bm(b,1)|0)<0){gA(3,88864,d)|0;break}else{cM(b,0);f=32;break}}else{o=eP(QA(b,88593)|0,0)|0;h[23293]=+$O(b);qm(b);g=sm(b)|0;Nq(b,k,0)|0;i=tm(b)|0;j=mH(b,0,n)|0;d=lH(b,-1,8)|0;c[46795]=d;e=(d|0)<0;do if(!j){if((g|0)!=0&e){c[46795]=8;c[n+16>>2]=2;f=11;break}c[n+16>>2]=2;if((d|0)<=-1){um(b,g,i);Qq(b,k)|0;rm(b);if(!(o<<24>>24)){fn(b);break}else{vm(b);break}}else f=11}else if(e){c[46795]=8;f=11}else f=11;while(0);if((f|0)==11){j=sG(b,p,88892,m)|0;d=c[p>>2]|0;do if((d|0)<=1){um(b,g,i);Qq(b,k)|0;if(!(o<<24>>24)){fn(b);break}else{vm(b);break}}else{f=o<<24>>24==0;e=0;while(1){if((e|0)>=(d|0))break;d=c[j+(e<<2)>>2]|0;KG(d)|0;um(d,g,i);Qq(d,k)|0;oQ(d,2);if(f)fn(d);else vm(d);e=e+1|0;d=c[p>>2]|0}if(!(a[m>>0]|0))e=0;else{e=JK(d)|0;a[e>>0]=1;d=c[p>>2]|0}c[n+8>>2]=c[46795];c[n+20>>2]=e;c[n+12>>2]=1;iH(d,j,b,n)|0;U1(e)}while(0);BP(b);rm(b);d=0;while(1){if((d|0)>=(c[p>>2]|0))break;n=c[j+(d<<2)>>2]|0;Dn(n);VC(n,137483)|0;wC(b,n)|0;d=d+1|0}U1(j)}cM(b,o<<24>>24==0&1);f=32}while(0);if((f|0)==32)h[23293]=q;l=r;return}function qm(a){a=a|0;var d=0,e=0,f=0,g=0;oQ(a,2);f=ZO(a,GA(a,0,91368,0)|0,2,2)|0;d=(ZO(a,GA(a,0,91374,0)|0,f,2)|0)&65535;b[(c[(yC(a)|0)+16>>2]|0)+176>>1]=d;d=c[(c[a+60>>2]|0)+16>>2]|0;g=d+176|0;e=b[g>>1]|0;e=(e&65535)<10?e:10;b[g>>1]=e;e=e&65535;c[47137]=e;b[d+178>>1]=(f|0)<(e|0)?f:e;Fm(a);return}function rm(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+1040|0;e=f;d=f+8|0;a:do if((c[47137]|0)>2&(c[47171]|0)!=0){b=jC(a)|0;while(1){if(!b)break a;h[e>>3]=+h[(c[(c[b+16>>2]|0)+132>>2]|0)+16>>3]*72.0;m4(d,101209,e)|0;KA(b,c[47171]|0,d)|0;b=kC(a,b)|0}}while(0);l=f;return}function sm(b){b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f;d=QA(b,89577)|0;a:do if(!d)b=1;else{switch(a[d>>0]|0){case 0:{b=1;break a}case 75:{if(!(s2(d,89582)|0)){b=0;break a}break}case 109:{if(!(s2(d,89585)|0)){b=1;break a}break}case 104:{if(!(s2(d,89591)|0)){b=2;break a}break}default:{}}b=KB(b)|0;c[e>>2]=d;c[e+4>>2]=b;gA(0,89596,e)|0;b=1}while(0);l=f;return b|0}function tm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+16|0;f=h+8|0;e=h;d=QA(b,89360)|0;a:do if(!d)b=0;else{switch(a[d>>0]|0){case 0:{b=0;break a}case 99:{if(!(s2(d,89366)|0)){b=1;break a}break}case 115:{if(!(s2(d,89374)|0)){b=2;break a}if(!(s2(d,89381)|0)){b=0;break a}break}case 109:{if(!(s2(d,89391)|0)){if(GA(b,2,92493,0)|0){b=3;break a}c[e>>2]=KB(b)|0;gA(0,89395,e)|0;gA(3,89458,f)|0;b=0;break a}break}default:{}}b=KB(b)|0;c[g>>2]=d;c[g+4>>2]=b;gA(0,89515,g)|0;b=0}while(0);l=h;return b|0}function um(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=QA(a,91061)|0;if(!e)if((b|0)==1)e=200;else e=(tB(a)|0)*100|0;else e=q5(e)|0;c[47136]=e;e=wn(a,b)|0;do if(!((e|0)<2|(c[47136]|0)<0))if(!b){xm(a,e,d);break}else{wm(a,e,b,d,c[47137]|0);break}while(0);return}function vm(a){a=a|0;BP(a);Zm(a,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,i=0,j=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+64|0;r=u+40|0;o=u+24|0;n=u;p=u+48|0;t=u+44|0;q=(d|0)==2;i=nm(a,b,q?0:2)|0;j=Em(a)|0;k=j|4;s=KK(f<<2)|0;c[s>>2]=KK(O(b<<3,f)|0)|0;g=c[47137]|0;f=1;while(1){if((f|0)>=(g|0))break;c[s+(f<<2)>>2]=(c[s>>2]|0)+((O(f,b)|0)<<3);f=f+1|0}g=(i|0)==0;f=g?k:j;if(0){k=c[15712]|0;j=c[47136]|0;m=+h[23294];c[n>>2]=e;c[n+4>>2]=g&1;c[n+8>>2]=f&3;c[n+12>>2]=j;h[n+16>>3]=m;w4(k,89173,n)|0;U4(89230,15,1,k)|0;TO();U4(89246,13,1,k)|0}n=Am(a,b,p,d,e,t)|0;if(0){k=c[15712]|0;m=+UO();c[o>>2]=b;h[o+8>>3]=m;w4(k,89260,o)|0}if((d|0)!=1){m=+_O(a,GA(a,0,89279,0)|0,0.0,-1797693134862315708145274.0e284);if(q){f=Br(n,b,c[p>>2]|0,s,c[t>>2]|0,c[47137]|0,f,e,c[47136]|0,m)|0;g=12}else g=14}else{f=on(n,b,c[p>>2]|0,s,c[t>>2]|0,c[47137]|0,f,e,c[47136]|0)|0;g=12}if((g|0)==12)if((f|0)<0)gA(3,89289,r)|0;else g=14;a:do if((g|0)==14){g=jC(a)|0;while(1){if(!g)break a;k=c[g+16>>2]|0;i=c[k+120>>2]|0;j=c[47137]|0;k=k+132|0;f=0;while(1){if((f|0)>=(j|0))break;h[(c[k>>2]|0)+(f<<3)>>3]=+h[(c[s+(f<<2)>>2]|0)+(i<<3)>>3];f=f+1|0}g=kC(a,g)|0}}while(0);as(n);U1(c[s>>2]|0);U1(s);U1(c[t>>2]|0);l=u;return}function xm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0;g=l;l=l+48|0;f=g+32|0;e=g;switch(d|0){case 2:{ym(a,b);break}case 1:{if(!(xr(a,b)|0)){c[e>>2]=KB(a)|0;gA(0,88902,e)|0;gA(3,93364,g+8|0)|0;gA(3,88954,g+16|0)|0;gA(3,89026,g+24|0)|0;Un(a,b)}break}default:{Un(a,b);if((d|0)==3)zm(a)}}In(a,b);Jn(a,b);if(0){e=c[15712]|0;j=c[47136]|0;i=+h[23294];c[f>>2]=d;c[f+4>>2]=j;h[f+8>>3]=i;w4(e,89064,f)|0;TO()}Kn(a,b);l=g;return}function ym(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0;j=l;l=l+16|0;g=Am(a,b,j,0,2,0)|0;i=ct(g,b)|0;e=a+16|0;a=0;while(1){if((a|0)>=(b|0))break;f=i+(a<<2)|0;d=0;while(1){if((d|0)==(b|0))break;h[(c[(c[(c[e>>2]|0)+160>>2]|0)+(a<<2)>>2]|0)+(d<<3)>>3]=+(c[(c[f>>2]|0)+(d<<2)>>2]|0);d=d+1|0}a=a+1|0}U1(c[i>>2]|0);U1(i);as(g);l=j;return}function zm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0.0;f=a+16|0;d=jC(a)|0;while(1){if(!d)break;b=XA(a,d)|0;while(1){if(!b)break;g=c[b>>2]&3;e=(c[c[((g|0)==3?b:b+48|0)+40>>2]>>2]|0)>>>4;g=(c[c[((g|0)==2?b:b+-48|0)+40>>2]>>2]|0)>>>4;if((e|0)!=(g|0)){j=+h[(c[b+16>>2]|0)+136>>3];i=c[(c[f>>2]|0)+160>>2]|0;h[(c[i+(g<<2)>>2]|0)+(e<<3)>>3]=j;h[(c[i+(e<<2)>>2]|0)+(g<<3)>>3]=j}b=ZA(a,b)|0}d=kC(a,d)|0}return}function Am(a,b,d,e,f,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0.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.0,I=0;j=uB(a)|0;G=VL()|0;if((f|0)==2){k=0;D=0}else{D=GA(a,2,92493,0)|0;k=(c[47174]|0)!=0&1;D=(D|0)!=0}A=(e|1|0)==3;E=KK(b*20|0)|0;F=KK(b<<2)|0;l=(j<<1)+b<<2;m=KK(l)|0;z=A|D;if(z)f=KK(l)|0;else f=0;C=(k|0)!=0;if(C)j=KK(l)|0;else j=0;if(A)k=KK(l)|0;else k=0;l=0;x=jC(a)|0;y=0;while(1){if(!x)break;YL(G);if((c[(c[x+16>>2]|0)+120>>2]|0)!=(y|0)){B=12;break}c[F+(y<<2)>>2]=x;u=E+(y*20|0)+4|0;c[u>>2]=m;v=E+(y*20|0)+8|0;c[v>>2]=z?f:0;w=E+(y*20|0)+12|0;c[w>>2]=C?j:0;c[E+(y*20|0)+16>>2]=A?k:0;r=1;t=aB(a,x)|0;s=1;q=l;m=m+4|0;f=z?f+4|0:f;j=C?j+4|0:j;k=A?k+4|0:k;while(1){if(!t)break;n=c[t>>2]&3;p=t+-48|0;l=t+48|0;do if((c[((n|0)==2?t:p)+40>>2]|0)==(c[((n|0)==3?t:l)+40>>2]|0)){n=r;p=s;l=q}else{n=Bm(G,t,r)|0;if((n|0)!=(r|0)){if(C){p=(c[w>>2]|0)+(n<<2)|0;g[p>>2]=+h[(c[t+16>>2]|0)+128>>3]+ +g[p>>2]}if(!D){n=r;p=s;l=q;break}n=(c[v>>2]|0)+(n<<2)|0;H=+h[(c[t+16>>2]|0)+136>>3];o=+(~~+g[n>>2]|0);g[n>>2]=H>o?H:o;n=r;p=s;l=q;break}I=c[t>>2]&3;l=(I|0)==3?t:l;q=q+1|0;n=r+1|0;r=m+4|0;c[m>>2]=c[(c[(c[((c[l+40>>2]|0)==(x|0)?((I|0)==2?t:p):l)+40>>2]|0)+16>>2]|0)+120>>2];if(C){g[j>>2]=+h[(c[t+16>>2]|0)+128>>3];j=j+4|0}if(D){l=f+4|0;g[f>>2]=+h[(c[t+16>>2]|0)+136>>3];if(A){f=l;B=27}else f=l}else if(A){g[f>>2]=1.0;f=f+4|0;B=27}if((B|0)==27){B=0;l=QA(t,101559)|0;if((l|0)!=0?(Q2(l,135709,4)|0)==0:0)o=0.0;else o=(x|0)==(c[((c[t>>2]&3|0)==2?t:p)+40>>2]|0)?1.0:-1.0;g[k>>2]=o;k=k+4|0}p=s+1|0;l=q;m=r}while(0);r=n;t=bB(a,t,x)|0;s=p;q=l}c[E+(y*20|0)>>2]=s;c[c[u>>2]>>2]=y;l=q;x=kC(a,x)|0;y=y+1|0}if((B|0)==12)qa(89103,89118,819,89130);if(A)Cm(E,b,e,F);n=(l|0)/2|0;a:do if((n|0)!=(uB(a)|0)){l=(n<<1)+b<<2;k=MK(c[E+4>>2]|0,l)|0;if(D)f=MK(c[E+8>>2]|0,l)|0;if(C){m=0;j=MK(c[E+12>>2]|0,l)|0}else m=0;while(1){if((m|0)>=(b|0))break a;l=c[E+(m*20|0)>>2]|0;c[E+(m*20|0)+4>>2]=k;if(D){c[E+(m*20|0)+8>>2]=f;f=f+(l<<2)|0}if(C){c[E+(m*20|0)+12>>2]=j;j=j+(l<<2)|0}m=m+1|0;k=k+(l<<2)|0}}while(0);c[d>>2]=n;if(!i)U1(F);else c[i>>2]=F;ZL(G);return E|0}function Bm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=c[b>>2]&3;e=c[(c[(c[((f|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+120>>2]|0;b=c[(c[(c[((f|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+120>>2]|0;f=(e|0)>(b|0);return _L(a,f?b:e,f?e:b,d)|0}function Cm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=0;while(1){if((g|0)>=(d|0)){g=0;break}h=c[(c[f+(g<<2)>>2]|0)+16>>2]|0;a[h+157>>0]=0;a[h+158>>0]=0;g=g+1|0}while(1){if((g|0)>=(d|0))break;if(!(a[(c[(c[f+(g<<2)>>2]|0)+16>>2]|0)+157>>0]|0))Dm(b,g,e,f);g=g+1|0}return}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0,q=0;q=(c[f+(d<<2)>>2]|0)+16|0;l=c[q>>2]|0;a[l+157>>0]=1;a[l+158>>0]=1;l=b+(d*20|0)|0;m=b+(d*20|0)+16|0;n=b+(d*20|0)+4|0;o=(e|0)==3?-1.0:1.0;k=1;a:while(1){if((k|0)>=(c[l>>2]|0)){h=14;break}h=(c[m>>2]|0)+(k<<2)|0;do if(!(+g[h>>2]==1.0)){p=c[(c[n>>2]|0)+(k<<2)>>2]|0;i=c[(c[f+(p<<2)>>2]|0)+16>>2]|0;if(!(a[i+158>>0]|0)){if(a[i+157>>0]|0)break;Dm(b,p,e,f);break}g[h>>2]=o;i=b+(p*20|0)+4|0;j=c[b+(p*20|0)>>2]|0;h=1;while(1){if((h|0)>=(j|0)){h=9;break a}if((c[(c[i>>2]|0)+(h<<2)>>2]|0)==(d|0))break;h=h+1|0}g[(c[b+(p*20|0)+16>>2]|0)+(h<<2)>>2]=-1.0}while(0);k=k+1|0}if((h|0)==9)qa(89144,89118,721,89164);else if((h|0)==14){a[(c[q>>2]|0)+158>>0]=0;return}}function Em(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;a=ZO(a,GA(a,0,89305,0)|0,2,0)|0;if((a|0)==0|(a|0)>2){c[b>>2]=89305;gA(0,89314,b)|0;a=2}l=d;return a|0}function Fm(a){a=a|0;var b=0,d=0,e=0;d=tB(a)|0;c[46796]=GA(a,1,102623,0)|0;e=GA(a,1,90660,0)|0;b=jC(a)|0;while(1){if(!b)break;Zl(b);_l(c[46796]|0,e,b,d)|0;b=kC(a,b)|0}d=jC(a)|0;while(1){if(!d)break;b=XA(a,d)|0;while(1){if(!b)break;Gm(b);b=ZA(a,b)|0}d=kC(a,d)|0}return}function Gm(a){a=a|0;var b=0.0;TC(a,137460,176,1)|0;tP(a)|0;b=+_O(a,c[47174]|0,1.0,1.0);h[(c[a+16>>2]|0)+128>>3]=b;return}function Hm(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;a=JK(64)|0;e=a+8|0;f=d+8|0;g=e+48|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));d=c[d+56>>2]|0;c[a+56>>2]=d;b[(c[d+16>>2]|0)+168>>1]=1;return a|0}function Im(a,b,c){a=a|0;b=b|0;c=c|0;U1(b);return}function Jm(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[b>>2]|0;e=c[d>>2]|0;if(a>>>0<=e>>>0)if(a>>>0>=e>>>0){e=c[b+24>>2]|0;a=c[d+24>>2]|0;if(e>>>0<=a>>>0)if(e>>>0>=a>>>0){a=~~(+h[b+8>>3]-+h[d+8>>3]);if(!a){a=~~(+h[b+16>>3]-+h[d+16>>3]);if(!a){a=~~(+h[b+32>>3]-+h[d+32>>3]);if(!a)a=~~(+h[b+40>>3]-+h[d+40>>3])}}}else a=-1;else a=1}else a=-1;else a=1;return a|0}function Km(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0.0;k=l;l=l+16|0;g=k;h=e+16|0;i=b[(c[h>>2]|0)+168>>1]|0;j=i<<16>>16;if(i<<16>>16!=1&(a[194954]|0)==0){i=KK(j<<2)|0;g=0;while(1){if((g|0)>=(j|0))break;c[i+(g<<2)>>2]=e;e=c[(c[e+16>>2]|0)+172>>2]|0;g=g+1|0}m=+(f|0);lO(d,i,0,j,m,m,17792);e=0;while(1){if((e|0)>=(j|0))break;g=c[i+(e<<2)>>2]|0;h=g+16|0;if(c[(c[h>>2]|0)+96>>2]|0){f=xC(c[((c[g>>2]&3|0)==3?g:g+48|0)+40>>2]|0)|0;zP(f,c[(c[h>>2]|0)+96>>2]|0)}sO(g);e=e+1|0}U1(i)}else{c[g>>2]=e;m=+(f|0);lO(d,g,0,1,m,m,17792);if(c[(c[h>>2]|0)+96>>2]|0){j=xC(c[((c[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0;zP(j,c[(c[h>>2]|0)+96>>2]|0)}sO(e)}l=k;return}function Lm(a){a=a|0;return 0}function Mm(a){a=a|0;return 0}function Nm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0.0,x=0.0,y=0.0,z=0,A=0,B=0,D=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;Q=l;l=l+384|0;O=Q+368|0;P=Q+112|0;j=Q+32|0;r=Q+336|0;K=Q+320|0;L=Q+304|0;M=Q+288|0;N=Q+272|0;i=Q+256|0;H=Q+240|0;I=Q+224|0;J=Q+208|0;t=Q+192|0;u=Q+176|0;v=Q+160|0;z=Q+144|0;A=Q+128|0;B=Q+96|0;D=Q+16|0;G=Q;a:do switch(WM(b)|0){case 3:case 1:{f=JK(8)|0;z=b+16|0;b=c[z>>2]|0;i=c[b+12>>2]|0;do if(!(e<<24>>24)){b=c[i+8>>2]|0;if((b|0)>2){y=0.0;j=c[i+44>>2]|0;e=0;p=+g[d>>2];q=+g[d+4>>2];break}else{y=+B5()*.01;b=8;j=0;e=1;p=0.0;q=0.0;break}}else if(!(c[i+40>>2]&2048)){q=+h[b+88>>3];p=-q;y=+h[b+80>>3];x=y*-.5;h[j>>3]=p;h[j+8>>3]=x;h[j+16>>3]=q;h[j+24>>3]=x;y=y*.5;h[j+32>>3]=q;h[j+40>>3]=y;h[j+48>>3]=p;h[j+56>>3]=y;y=0.0;b=4;e=0;p=0.0;q=0.0;break}else{yP(r,i);p=+h[r>>3];x=+h[r+8>>3];q=+h[r+16>>3];y=+h[r+24>>3];h[j>>3]=p;h[j+8>>3]=x;h[j+16>>3]=q;h[j+24>>3]=x;h[j+32>>3]=q;h[j+40>>3]=y;h[j+48>>3]=p;h[j+56>>3]=y;y=0.0;b=4;e=0;p=0.0;q=0.0;break}while(0);c[f+4>>2]=b;r=JK(b<<4)|0;c[f>>2]=r;s=1.0/+(b|0);t=d+8|0;u=d+4|0;v=(b|0)==4;w=-p;x=-q;i=0;while(1){if((b|0)<=(i|0))break a;do if(e){k=+(i|0)*6.283185307179586*s+y;m=+E(+k);k=+F(+k);if(!(a[t>>0]|0)){P=c[z>>2]|0;n=k*+g[u>>2]*+h[P+80>>3];k=m*+g[d>>2]*(+h[P+96>>3]+ +h[P+88>>3])}else{P=c[z>>2]|0;n=(+h[P+80>>3]+ +g[u>>2])*k;k=(+h[P+96>>3]+ +h[P+88>>3]+ +g[d>>2])*m}o=k*.5;k=n*.5}else{if(!(a[t>>0]|0)){o=+h[j+(i<<4)>>3]*p;k=+h[j+(i<<4)+8>>3]*q;break}if(!v){o=+h[j+(i<<4)>>3];k=+h[j+(i<<4)+8>>3];n=+C(+(k*k+o*o));o=(p/n+1.0)*o;k=(q/n+1.0)*k;break}switch(i|0){case 0:{m=q;k=p;break}case 1:{m=q;k=w;break}case 2:{m=x;k=w;break}case 3:{m=x;k=p;break}default:{m=0.0;k=0.0}}o=+h[j+(i<<4)>>3]+k;k=+h[j+(i<<4)+8>>3]+m}while(0);O=c[z>>2]|0;P=b-i+-1|0;h[r+(P<<4)>>3]=+h[O+16>>3]+o;h[r+(P<<4)+8>>3]=+h[O+24>>3]+k;i=i+1|0}}case 2:{G=b+16|0;f=c[(c[G>>2]|0)+12>>2]|0;k=+h[f+16>>3];o=+h[f+24>>3];m=+h[f+32>>3];n=+h[f+40>>3];f=JK(8)|0;c[f+4>>2]=4;b=JK(64)|0;c[f>>2]=b;G=(c[G>>2]|0)+16|0;c[P>>2]=c[G>>2];c[P+4>>2]=c[G+4>>2];c[P+8>>2]=c[G+8>>2];c[P+12>>2]=c[G+12>>2];if(!(a[d+8>>0]|0)){c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Pm(i,k,o,O,d);c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];N=(c[f>>2]|0)+16|0;c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Pm(H,k,n,O,d);c[N>>2]=c[H>>2];c[N+4>>2]=c[H+4>>2];c[N+8>>2]=c[H+8>>2];c[N+12>>2]=c[H+12>>2];N=(c[f>>2]|0)+32|0;c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Pm(I,m,n,O,d);c[N>>2]=c[I>>2];c[N+4>>2]=c[I+4>>2];c[N+8>>2]=c[I+8>>2];c[N+12>>2]=c[I+12>>2];N=(c[f>>2]|0)+48|0;c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Pm(J,m,o,O,d);c[N>>2]=c[J>>2];c[N+4>>2]=c[J+4>>2];c[N+8>>2]=c[J+8>>2];c[N+12>>2]=c[J+12>>2];break a}else{y=k-+g[d>>2];J=d+4|0;x=o-+g[J>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Om(K,y,x,O);c[b>>2]=c[K>>2];c[b+4>>2]=c[K+4>>2];c[b+8>>2]=c[K+8>>2];c[b+12>>2]=c[K+12>>2];K=(c[f>>2]|0)+16|0;x=k-+g[d>>2];y=n+ +g[J>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Om(L,x,y,O);c[K>>2]=c[L>>2];c[K+4>>2]=c[L+4>>2];c[K+8>>2]=c[L+8>>2];c[K+12>>2]=c[L+12>>2];L=(c[f>>2]|0)+32|0;y=m+ +g[d>>2];x=n+ +g[J>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Om(M,y,x,O);c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];c[L+12>>2]=c[M+12>>2];M=(c[f>>2]|0)+48|0;x=m+ +g[d>>2];y=o-+g[J>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Om(N,x,y,O);c[M>>2]=c[N>>2];c[M+4>>2]=c[N+4>>2];c[M+8>>2]=c[N+8>>2];c[M+12>>2]=c[N+12>>2];break a}}case 4:{b=b+16|0;f=JK(8)|0;c[f+4>>2]=4;i=JK(64)|0;c[f>>2]=i;j=c[b>>2]|0;N=j+16|0;c[P>>2]=c[N>>2];c[P+4>>2]=c[N+4>>2];c[P+8>>2]=c[N+8>>2];c[P+12>>2]=c[N+12>>2];k=-+h[j+88>>3];if(!(a[d+8>>0]|0)){x=-+h[j+80>>3];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Pm(A,k,x,O,d);c[i>>2]=c[A>>2];c[i+4>>2]=c[A+4>>2];c[i+8>>2]=c[A+8>>2];c[i+12>>2]=c[A+12>>2];N=(c[f>>2]|0)+16|0;M=c[b>>2]|0;x=-+h[M+88>>3];y=+h[M+80>>3];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Pm(B,x,y,O,d);c[N>>2]=c[B>>2];c[N+4>>2]=c[B+4>>2];c[N+8>>2]=c[B+8>>2];c[N+12>>2]=c[B+12>>2];N=(c[f>>2]|0)+32|0;M=c[b>>2]|0;y=+h[M+96>>3];x=+h[M+80>>3];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Pm(D,y,x,O,d);c[N>>2]=c[D>>2];c[N+4>>2]=c[D+4>>2];c[N+8>>2]=c[D+8>>2];c[N+12>>2]=c[D+12>>2];N=(c[f>>2]|0)+48|0;M=c[b>>2]|0;x=+h[M+96>>3];y=-+h[M+80>>3];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Pm(G,x,y,O,d);c[N>>2]=c[G>>2];c[N+4>>2]=c[G+4>>2];c[N+8>>2]=c[G+8>>2];c[N+12>>2]=c[G+12>>2];break a}else{y=k-+g[d>>2];M=d+4|0;x=-+h[j+80>>3]-+g[M>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Om(t,y,x,O);c[i>>2]=c[t>>2];c[i+4>>2]=c[t+4>>2];c[i+8>>2]=c[t+8>>2];c[i+12>>2]=c[t+12>>2];N=(c[f>>2]|0)+16|0;L=c[b>>2]|0;x=-+h[L+88>>3]-+g[d>>2];y=+h[L+80>>3]+ +g[M>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Om(u,x,y,O);c[N>>2]=c[u>>2];c[N+4>>2]=c[u+4>>2];c[N+8>>2]=c[u+8>>2];c[N+12>>2]=c[u+12>>2];N=(c[f>>2]|0)+32|0;L=c[b>>2]|0;y=+h[L+96>>3]+ +g[d>>2];x=+h[L+80>>3]+ +g[M>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Om(v,y,x,O);c[N>>2]=c[v>>2];c[N+4>>2]=c[v+4>>2];c[N+8>>2]=c[v+8>>2];c[N+12>>2]=c[v+12>>2];N=(c[f>>2]|0)+48|0;L=c[b>>2]|0;x=+h[L+96>>3]+ +g[d>>2];y=-+h[L+80>>3]-+g[M>>2];c[O>>2]=c[P>>2];c[O+4>>2]=c[P+4>>2];c[O+8>>2]=c[P+8>>2];c[O+12>>2]=c[P+12>>2];Om(z,x,y,O);c[N>>2]=c[z>>2];c[N+4>>2]=c[z+4>>2];c[N+8>>2]=c[z+8>>2];c[N+12>>2]=c[z+12>>2];break a}}default:f=0}while(0);l=Q;return f|0}function Om(a,b,c,d){a=a|0;b=+b;c=+c;d=d|0;c=+h[d+8>>3]+c;h[a>>3]=+h[d>>3]+b;h[a+8>>3]=c;return}function Pm(a,b,c,d,e){a=a|0;b=+b;c=+c;d=d|0;e=e|0;c=+g[e+4>>2]*c+ +h[d+8>>3];h[a>>3]=+g[e>>2]*b+ +h[d>>3];h[a+8>>3]=c;return}function Qm(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,m=0,n=0,o=0,p=0,q=0,r=0;o=l;l=l+112|0;j=o+88|0;i=o+72|0;k=o+32|0;m=o+16|0;n=o;f=o+56|0;g=o+40|0;h=b+48|0;r=(c[(c[((c[b>>2]&3|0)==3?b:h)+40>>2]|0)+16>>2]|0)+16|0;p=b+16|0;q=(c[p>>2]|0)+16|0;c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];c[i+8>>2]=c[r+8>>2];c[i+12>>2]=c[r+12>>2];c[j>>2]=c[q>>2];c[j+4>>2]=c[q+4>>2];c[j+8>>2]=c[q+8>>2];c[j+12>>2]=c[q+12>>2];Rm(f,i,j);c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];f=b+-48|0;q=(c[(c[((c[b>>2]&3|0)==2?b:f)+40>>2]|0)+16>>2]|0)+16|0;p=(c[p>>2]|0)+56|0;c[i>>2]=c[q>>2];c[i+4>>2]=c[q+4>>2];c[i+8>>2]=c[q+8>>2];c[i+12>>2]=c[q+12>>2];c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];c[j+12>>2]=c[p+12>>2];Rm(g,i,j);c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];if(!e){g=-1111;f=-1111}else{r=c[b>>2]&3;g=c[(c[(c[((r|0)==2?b:f)+40>>2]|0)+16>>2]|0)+288>>2]|0;f=c[(c[(c[((r|0)==3?b:h)+40>>2]|0)+16>>2]|0)+288>>2]|0};c[i>>2]=c[m>>2];c[i+4>>2]=c[m+4>>2];c[i+8>>2]=c[m+8>>2];c[i+12>>2]=c[m+12>>2];c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];c[j+12>>2]=c[n+12>>2];MX(d,i,f,j,g,k)|0;p=k;q=c[p+4>>2]|0;r=a;c[r>>2]=c[p>>2];c[r+4>>2]=q;l=o;return}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[c+8>>3]+ +h[b+8>>3];h[a>>3]=+h[c>>3]+ +h[b>>3];h[a+8>>3]=d;return}function Sm(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+144|0;p=u+104|0;q=u+88|0;o=u+80|0;n=u+72|0;j=u+64|0;s=u+128|0;k=u+32|0;m=u+124|0;t=u+16|0;r=u;i=u+120|0;h=(c[b+16>>2]|0)+144|0;g=c[h>>2]|0;h=c[h+4>>2]|0;v=j;c[v>>2]=g;c[v+4>>2]=h;v=g;c[t>>2]=c[v>>2];c[t+4>>2]=c[v+4>>2];c[t+8>>2]=c[v+8>>2];c[t+12>>2]=c[v+12>>2];h=g+(h+-1<<4)|0;c[r>>2]=c[h>>2];c[r+4>>2]=c[h+4>>2];c[r+8>>2]=c[h+8>>2];c[r+12>>2]=c[h+12>>2];a:do if(!(f<<24>>24)){g=-1111;f=-1111}else{g=-1111;f=-1111;h=0;while(1){if((h|0)>=(e|0))break a;if((f|0)==-1111){f=c[d+(h<<2)>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=c[f+4>>2];c[p>>2]=c[t>>2];c[p+4>>2]=c[t+4>>2];c[p+8>>2]=c[t+8>>2];c[p+12>>2]=c[t+12>>2];f=(NX(q,p)|0)==0;f=f?-1111:h}if((g|0)==-1111){g=c[d+(h<<2)>>2]|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];g=(NX(q,p)|0)==0;g=g?-1111:h}h=h+1|0}}while(0);Tm(d,e,f,g,i,m);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;c[k+28>>2]=0;h=c[i>>2]|0;v=c[m>>2]|0;c[p>>2]=c[j>>2];c[p+4>>2]=c[j+4>>2];if((OX(h,v,p,k,s)|0)<0){t=KB(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;v=KB(c[((c[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;c[n>>2]=t;c[n+4>>2]=v;gA(1,89657,n)|0}else{if(0>1){g=c[15712]|0;n=KB(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;f=b+-48|0;v=KB(c[((c[b>>2]&3|0)==2?b:f)+40>>2]|0)|0;c[o>>2]=n;c[o+4>>2]=v;w4(g,89705,o)|0;g=b}else{f=b+-48|0;g=b}dO(b,c[((c[g>>2]&3|0)==2?b:f)+40>>2]|0,c[s>>2]|0,c[s+4>>2]|0,17792);U1(h);c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[q+12>>2]=c[t+12>>2];c[p>>2]=c[r>>2];c[p+4>>2]=c[r+4>>2];c[p+8>>2]=c[r+8>>2];c[p+12>>2]=c[r+12>>2];yO(a,b,q,p)}l=u;return}function Tm(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i=0;h=0;while(1){if((i|0)>=(b|0))break;if(!((i|0)==(d|0)|(i|0)==(e|0)))h=(c[(c[a+(i<<2)>>2]|0)+4>>2]|0)+h|0;i=i+1|0}o=KK(h<<5)|0;i=0;n=0;while(1){if((n|0)>=(b|0))break;a:do if(!((n|0)==(d|0)|(n|0)==(e|0))){m=a+(n<<2)|0;l=0;while(1){j=c[m>>2]|0;k=c[j+4>>2]|0;if((l|0)>=(k|0))break a;p=l+1|0;q=o+(i<<5)|0;j=(c[j>>2]|0)+(l<<4)|0;c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];c[q+8>>2]=c[j+8>>2];c[q+12>>2]=c[j+12>>2];j=o+(i<<5)+16|0;k=(c[c[m>>2]>>2]|0)+(((p|0)<(k|0)?p:0)<<4)|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];l=p;i=i+1|0}}while(0);n=n+1|0}if((i|0)==(h|0)){c[f>>2]=o;c[g>>2]=h;return}else qa(89719,89726,77,89741)}function Um(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+32|0;k=n+12|0;f=n;pr(f,a);c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];f=jC(a)|0;while(1){if(!f)break;g=XA(a,f)|0;while(1){if(!g)break;ZN(g);g=ZA(a,g)|0}f=kC(a,f)|0}h=Vz(17756,c[4581]|0)|0;f=jC(a)|0;while(1){if(!f)break;g=XA(a,f)|0;while(1){if(!g)break;if((c[47134]|0)>1?(i=c[g+16>>2]|0,(c[i+8>>2]|0)!=0):0){o=i+168|0;b[o>>1]=(b[o>>1]|0)+1<<16>>16}else m=14;if((m|0)==14?(m=0,j=Vm(h,g)|0,(j|0)!=(g|0)):0){o=c[j+16>>2]|0;p=o+168|0;b[p>>1]=(b[p>>1]|0)+1<<16>>16;o=o+172|0;c[(c[g+16>>2]|0)+172>>2]=c[o>>2];c[o>>2]=g}g=ZA(a,g)|0}f=kC(a,f)|0}Rz(h)|0;if(!(nb[d&63](a,k,e)|0)){c[47138]=1;f=0}else f=1;l=n;return f|0}function Vm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0,p=0,q=0;q=l;l=l+64|0;p=q;e=c[b>>2]&3;i=c[((e|0)==3?b:b+48|0)+40>>2]|0;e=c[((e|0)==2?b:b+-48|0)+40>>2]|0;do if(i>>>0>=e>>>0){d=b+16|0;if(i>>>0>e>>>0){d=c[d>>2]|0;o=e;e=i;k=+h[d+16>>3];m=+h[d+24>>3];g=+h[d+56>>3];f=+h[d+64>>3];break}o=c[d>>2]|0;j=+h[o+56>>3];n=+h[o+64>>3];g=+h[o+16>>3];f=+h[o+24>>3];if(!(gj)){d=f>n;if(f>2]|0;o=i;k=+h[d+56>>3];m=+h[d+64>>3];g=+h[d+16>>3];f=+h[d+24>>3]}while(0);c[p+8>>2]=o;h[p+16>>3]=g;h[p+24>>3]=f;c[p+32>>2]=e;h[p+40>>3]=k;h[p+48>>3]=m;c[p+56>>2]=b;p=c[(nb[c[a>>2]&63](a,p,1)|0)+56>>2]|0;l=q;return p|0}function Wm(a,b){a=a|0;b=b|0;return Um(a,21,b)|0}function Xm(d,e,f){d=d|0;e=e|0;f=f|0;var i=0,j=0,k=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.0,H=0;F=l;l=l+112|0;B=F+88|0;A=F+72|0;t=F+40|0;q=F+8|0;p=F;u=F+64|0;C=F+48|0;D=F+24|0;i=(c[47134]|0)>1&1;do if((f|0)>5){s=JK((tB(d)|0)<<2)|0;o=(f|0)==8;n=o&1;m=jC(d)|0;r=0;while(1){if(!m)break;j=Nm(m,e,n)|0;k=(c[m+16>>2]|0)+288|0;if(!j){c[k>>2]=-1111;j=r}else{c[k>>2]=r;c[s+(r<<2)>>2]=j;j=r+1|0}m=kC(d,m)|0;r=j}if(s){j=lt(s,r)|0;if(j|0){if(o){y=0;z=s;x=s;w=1;break}y=JX(s,r)|0;z=s;x=s;w=1;break}if(o){gA(0,89755,p)|0;j=0;y=0;z=s;x=s;w=1;break}else{G=+g[e+4>>2];h[q>>3]=+g[e>>2];h[q+8>>3]=G;gA(0,89833,q)|0;j=0;y=0;z=s;x=s;w=1;break}}else{j=0;y=0;z=0;x=0;w=0}}else{j=0;y=0;z=0;r=0;x=0;w=0}while(0);if(0){k=c[15712]|0;if((f|0)==8&(j|0)!=0)m=89939;else m=(y|0)==0?89925:(f|0)==10?110056:89915;c[t>>2]=m;w4(k,89956,t)|0}v=(y|0)!=0;a:do if(!v){if((f|0)==8&(j|0)!=0){rQ(d,0);i=1}}else{k=jC(d)|0;while(1){if(!k)break a;j=XA(d,k)|0;while(1){if(!j)break;t=(c[j+16>>2]|0)+144|0;Qm(u,j,y,1,0,0);q=u;s=c[q+4>>2]|0;c[t>>2]=c[q>>2];c[t+4>>2]=s;j=ZA(d,j)|0}k=kC(d,k)|0}}while(0);p=(i|0)==0;q=d+60|0;s=(f|0)==10;i=0;o=jC(d)|0;j=0;while(1){if(!o)break;t=o+16|0;e=XA(d,o)|0;while(1){if(!e)break;n=c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0;k=e+16|0;m=c[k>>2]|0;if(!p?(c[m+8>>2]|0)!=0:0){H=(c[t>>2]|0)+16|0;u=m+16|0;c[A>>2]=c[H>>2];c[A+4>>2]=c[H+4>>2];c[A+8>>2]=c[H+8>>2];c[A+12>>2]=c[H+12>>2];c[B>>2]=c[u>>2];c[B+4>>2]=c[u+4>>2];c[B+8>>2]=c[u+8>>2];c[B+12>>2]=c[u+12>>2];Rm(C,A,B);n=(c[n+16>>2]|0)+16|0;u=(c[k>>2]|0)+56|0;c[A>>2]=c[n>>2];c[A+4>>2]=c[n+4>>2];c[A+8>>2]=c[n+8>>2];c[A+12>>2]=c[n+12>>2];c[B>>2]=c[u>>2];c[B+4>>2]=c[u+4>>2];c[B+8>>2]=c[u+8>>2];c[B+12>>2]=c[u+12>>2];Rm(D,A,B);c[A>>2]=c[C>>2];c[A+4>>2]=c[C+4>>2];c[A+8>>2]=c[C+8>>2];c[A+12>>2]=c[C+12>>2];c[B>>2]=c[D>>2];c[B+4>>2]=c[D+4>>2];c[B+8>>2]=c[D+8>>2];c[B+12>>2]=c[D+12>>2];yO(d,e,A,B)}else E=35;b:do if((E|0)==35){E=0;H=b[m+168>>1]|0;k=H<<16>>16;if(H<<16>>16){if((o|0)==(n|0)){if(!i){j=JK(96)|0;c[j+84>>2]=JK(((tB(d)|0)<<5)+11520|0)|0;i=j}Km(i,e,c[(c[(c[q>>2]|0)+16>>2]|0)+248>>2]|0);break}if(!v){OM(d,e,f,17792);break}k=a[194954]|0?1:k;m=e;n=0;while(1){if((n|0)>=(k|0))break b;if(s)Sm(d,m,z,r,1);else Ym(d,m);m=c[(c[m+16>>2]|0)+172>>2]|0;n=n+1|0}}}while(0);e=ZA(d,e)|0}o=kC(d,o)|0}if(v)LX(y);if(i|0){U1(c[i+84>>2]|0);U1(j)}if(w){i=0;while(1){if((i|0)>=(r|0))break;U1(c[z+(i<<2)>>2]|0);i=i+1|0}U1(x)}l=F;return 0}function Ym(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,m=0,n=0,o=0;k=l;l=l+96|0;g=k+64|0;f=k+48|0;d=k+40|0;h=k+80|0;e=k+32|0;i=k+16|0;j=k;m=(c[b+16>>2]|0)+144|0;n=c[m>>2]|0;m=c[m+4>>2]|0;o=e;c[o>>2]=n;c[o+4>>2]=m;o=n;c[i>>2]=c[o>>2];c[i+4>>2]=c[o+4>>2];c[i+8>>2]=c[o+8>>2];c[i+12>>2]=c[o+12>>2];m=n+(m+-1<<4)|0;c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];FY(g,h);if(0>1){o=c[15712]|0;m=KB(c[((c[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;e=b+-48|0;n=KB(c[((c[b>>2]&3|0)==2?b:e)+40>>2]|0)|0;c[d>>2]=m;c[d+4>>2]=n;w4(o,89981,d)|0;d=e;e=b}else{d=b+-48|0;e=b}dO(b,c[((c[e>>2]&3|0)==2?b:d)+40>>2]|0,c[h>>2]|0,c[h+4>>2]|0,17792);c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2];c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];c[g+8>>2]=c[j+8>>2];c[g+12>>2]=c[j+12>>2];yO(a,b,f,g);l=k;return}function Zm(a,d){a=a|0;d=d|0;var e=0;e=b[(c[a+16>>2]|0)+136>>1]&14;if(d<<24>>24)_m(a)|0;if(e<<16>>16)Wm(a,e&65535)|0;return}function _m(a){a=a|0;var b=0,d=0,e=0,f=0;d=$m(a)|0;b=jC(a)|0;while(1){if(!b)break;e=c[b+16>>2]|0;f=c[e+132>>2]|0;h[e+16>>3]=+h[f>>3]*72.0;h[e+24>>3]=+h[f+8>>3]*72.0;b=kC(a,b)|0}return d|0}function $m(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0.0,i=0.0,j=0,k=0;a:do if((c[a+60>>2]|0)==(a|0)?(d=a+16|0,e=c[d>>2]|0,(c[(c[e+8>>2]|0)+84>>2]|0)!=0):0){if(!(+h[e+16>>3]!=0.0)?!(+h[e+24>>3]!=0.0):0)b=0;else{an(a);b=1;e=c[d>>2]|0}j=(c[e+116>>2]&1|0)==0;if(!j){k=e+32|0;i=+h[k>>3];d=e+40|0;h[k>>3]=+h[d>>3];h[d>>3]=i}d=c[e+8>>2]|0;b:do switch(c[d+84>>2]|0){case 2:{f=+h[d+64>>3];if(f<=0.0)break a;g=f/+h[e+32>>3];f=+h[d+72>>3]/+h[e+40>>3];if(g<1.0|f<1.0)if(g>3];if(f<=0.0)break a;g=f/+h[e+32>>3];f=+h[d+72>>3]/+h[e+40>>3];if(!(g>1.0&f>1.0))break a;f=g>3];f=+h[e+40>>3]/+h[e+32>>3];if(f1){d=jC(a)|0;while(1){if(!d)break c;b=XA(a,d)|0;while(1){if(!b)break;if(c[(c[b+16>>2]|0)+8>>2]|0)bn(b,f,g);b=ZA(a,b)|0}d=kC(a,d)|0}}while(0);b=jC(a)|0;while(1){if(!b)break;k=c[(c[b+16>>2]|0)+132>>2]|0;h[k>>3]=+h[k>>3]*f;k=k+8|0;h[k>>3]=+h[k>>3]*g;b=kC(a,b)|0}cn(a,f,g);b=1}else b=0;while(0);return b|0}function an(b){b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0,o=0;n=l;l=l+32|0;k=n+16|0;m=n;d=(c[b+16>>2]|0)+16|0;c[m>>2]=c[d>>2];c[m+4>>2]=c[d+4>>2];c[m+8>>2]=c[d+8>>2];c[m+12>>2]=c[d+12>>2];f=+h[m>>3];g=f*.013888888888888888;i=+h[m+8>>3];j=i*.013888888888888888;d=jC(b)|0;while(1){if(!d)break;e=c[d+16>>2]|0;o=c[e+132>>2]|0;h[o>>3]=+h[o>>3]-g;o=o+8|0;h[o>>3]=+h[o>>3]-j;e=c[e+108>>2]|0;if(e|0?a[e+81>>0]|0:0){o=e+56|0;h[o>>3]=+h[o>>3]-f;o=e+64|0;h[o>>3]=+h[o>>3]-i}d=kC(b,d)|0}e=jC(b)|0;while(1){if(!e)break;d=XA(b,e)|0;while(1){if(!d)break;if(c[(c[d+16>>2]|0)+8>>2]|0){c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];dn(d,k)}d=ZA(b,d)|0}e=kC(b,e)|0}c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];en(b,k);l=n;return}function bn(b,d,e){b=b|0;d=+d;e=+e;var f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0;p=c[b>>2]&3;i=c[(c[(c[((p|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;s=(d+-1.0)*72.0;q=s*+h[i>>3];t=(e+-1.0)*72.0;r=t*+h[i+8>>3];p=c[(c[(c[((p|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;s=s*+h[p>>3];t=t*+h[p+8>>3];p=c[b+16>>2]|0;i=c[p+8>>2]|0;j=c[i+4>>2]|0;k=j+-1|0;b=0;i=c[i>>2]|0;while(1){if((b|0)>=(j|0))break;l=c[i+4>>2]|0;m=l+-1|0;n=(b|0)==(k|0);f=0;g=c[i>>2]|0;while(1){if((f|0)>=(l|0))break;do if(f|b){o=+h[g>>3];if((f|0)==(m|0)&n){h[g>>3]=o+q;u=g+8|0;h[u>>3]=+h[u>>3]+r;break}else{h[g>>3]=o*d;u=g+8|0;h[u>>3]=+h[u>>3]*e;break}}else{h[g>>3]=+h[g>>3]+s;u=g+8|0;h[u>>3]=+h[u>>3]+t}while(0);f=f+1|0;g=g+16|0}if(c[i+8>>2]|0){u=i+16|0;h[u>>3]=+h[u>>3]+s;u=i+24|0;h[u>>3]=+h[u>>3]+t}if(c[i+12>>2]|0){u=i+32|0;h[u>>3]=+h[u>>3]+q;u=i+40|0;h[u>>3]=+h[u>>3]+r}b=b+1|0;i=i+48|0}b=c[p+96>>2]|0;if(b|0?a[b+81>>0]|0:0){u=b+56|0;h[u>>3]=+h[u>>3]*d;u=b+64|0;h[u>>3]=+h[u>>3]*e}b=c[p+100>>2]|0;if(b|0?a[b+81>>0]|0:0){u=b+56|0;h[u>>3]=+h[u>>3]+q;u=b+64|0;h[u>>3]=+h[u>>3]+r}b=c[p+104>>2]|0;if(b|0?a[b+81>>0]|0:0){u=b+56|0;h[u>>3]=+h[u>>3]+s;u=b+64|0;h[u>>3]=+h[u>>3]+t}return}function cn(b,d,e){b=b|0;d=+d;e=+e;var f=0,g=0,i=0;i=b+16|0;g=c[i>>2]|0;b=g+32|0;h[b>>3]=+h[b>>3]*d;b=g+40|0;h[b>>3]=+h[b>>3]*e;b=g+16|0;h[b>>3]=+h[b>>3]*d;b=g+24|0;h[b>>3]=+h[b>>3]*e;b=c[g+12>>2]|0;if((b|0)!=0?(a[b+81>>0]|0)!=0:0){f=b+56|0;h[f>>3]=+h[f>>3]*d;f=b+64|0;h[f>>3]=+h[f>>3]*e;f=1;b=g}else{f=1;b=g}while(1){if((f|0)>(c[b+180>>2]|0))break;cn(c[(c[b+184>>2]|0)+(f<<2)>>2]|0,d,e);f=f+1|0;b=c[i>>2]|0}return}function dn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0;k=c[b+16>>2]|0;b=c[k+8>>2]|0;j=c[b+4>>2]|0;l=d+8|0;b=c[b>>2]|0;g=0;while(1){if((g|0)>=(j|0))break;i=c[b+4>>2]|0;e=c[b>>2]|0;f=0;while(1){if((f|0)>=(i|0))break;h[e>>3]=+h[e>>3]-+h[d>>3];m=e+8|0;h[m>>3]=+h[m>>3]-+h[l>>3];e=e+16|0;f=f+1|0}if(c[b+8>>2]|0){m=b+16|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+24|0;h[m>>3]=+h[m>>3]-+h[l>>3]}if(c[b+12>>2]|0){m=b+32|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+40|0;h[m>>3]=+h[m>>3]-+h[l>>3]}b=b+48|0;g=g+1|0}b=c[k+96>>2]|0;if(b|0?a[b+81>>0]|0:0){m=b+56|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+64|0;h[m>>3]=+h[m>>3]-+h[l>>3]}b=c[k+108>>2]|0;if(b|0?a[b+81>>0]|0:0){m=b+56|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+64|0;h[m>>3]=+h[m>>3]-+h[l>>3]}b=c[k+100>>2]|0;if(b|0?a[b+81>>0]|0:0){m=b+56|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+64|0;h[m>>3]=+h[m>>3]-+h[l>>3]}b=c[k+104>>2]|0;if(b|0?a[b+81>>0]|0:0){m=b+56|0;h[m>>3]=+h[m>>3]-+h[d>>3];m=b+64|0;h[m>>3]=+h[m>>3]-+h[l>>3]}return}function en(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;j=k;g=+h[d>>3];i=b+16|0;b=c[i>>2]|0;e=b+32|0;h[e>>3]=+h[e>>3]-g;f=+h[d+8>>3];e=b+40|0;h[e>>3]=+h[e>>3]-f;e=b+16|0;h[e>>3]=+h[e>>3]-g;e=b+24|0;h[e>>3]=+h[e>>3]-f;e=c[b+12>>2]|0;if((e|0)!=0?(a[e+81>>0]|0)!=0:0){m=e+56|0;h[m>>3]=+h[m>>3]-g;e=e+64|0;h[e>>3]=+h[e>>3]-f;e=1}else e=1;while(1){if((e|0)>(c[b+180>>2]|0))break;m=c[(c[b+184>>2]|0)+(e<<2)>>2]|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];en(m,j);e=e+1|0;b=c[i>>2]|0}l=k;return}function fn(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0.0,i=0,j=0;i=l;l=l+16|0;d=i;BP(a);e=a+16|0;b=c[e>>2]|0;f=+h[b+16>>3]*.013888888888888888;g=+h[b+24>>3]*.013888888888888888;b=jC(a)|0;while(1){if(!b)break;j=c[(c[b+16>>2]|0)+132>>2]|0;h[j>>3]=+h[j>>3]-f;j=j+8|0;h[j>>3]=+h[j>>3]-g;b=kC(a,b)|0}j=(c[e>>2]|0)+16|0;c[d>>2]=c[j>>2];c[d+4>>2]=c[j+4>>2];c[d+8>>2]=c[j+8>>2];c[d+12>>2]=c[j+12>>2];gn(a,d);Zm(a,1);l=i;return}function gn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0.0,j=0.0;g=l;l=l+16|0;f=g;d=a+16|0;a=1;while(1){e=c[d>>2]|0;if((a|0)>(c[e+180>>2]|0))break;e=c[(c[e+184>>2]|0)+(a<<2)>>2]|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];gn(e,f);a=a+1|0}j=+h[b>>3];f=e+32|0;h[f>>3]=+h[f>>3]-j;i=+h[b+8>>3];b=e+40|0;h[b>>3]=+h[b>>3]-i;b=e+16|0;h[b>>3]=+h[b>>3]-j;b=e+24|0;h[b>>3]=+h[b>>3]-i;l=g;return}function hn(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;p=(e|0)>2;n=0;o=0;j=c[f+4>>2]|0;b=c[f>>2]|0;while(1){if((o|0)>=(d|0)){b=0;break}i=c[(c[g+(o<<2)>>2]|0)+16>>2]|0;l=a[i+119>>0]|0;a:do if(!(l<<24>>24)){k=b+8|0;h[b>>3]=+B5();i=j+8|0;h[j>>3]=+B5();if(p){b=2;while(1){if((b|0)==(e|0)){j=n;b=k;break a}q=+B5();h[(c[f+(b<<2)>>2]|0)+(o<<3)>>3]=q;b=b+1|0}}else{j=n;b=k}}else{k=c[i+132>>2]|0;m=b+8|0;h[b>>3]=+h[k>>3];i=j+8|0;h[j>>3]=+h[k+8>>3];b:do if(p){j=2;b=k+16|0;while(1){if((j|0)==(e|0))break b;h[(c[f+(j<<2)>>2]|0)+(o<<3)>>3]=+h[b>>3];j=j+1|0;b=b+8|0}}while(0);j=(l&255)>1?1:n;b=m}while(0);n=j;o=o+1|0;j=i}while(1){if((b|0)>=(e|0))break;Ht(d,c[f+(b<<2)>>2]|0);b=b+1|0}return n|0}function jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0;d=JK(((O(b+1|0,b)|0)/2|0)<<2)|0;n=un(b,b,0.0)|0;o=un(b,b,0.0)|0;a:do if(!(c[a+8>>2]|0)){e=0;while(1){if((e|0)>=(b|0))break a;i=c[a+(e*20|0)>>2]|0;j=a+(e*20|0)+4|0;k=n+(e<<2)|0;f=1;while(1){if((f|0)>=(i|0))break;m=c[(c[j>>2]|0)+(f<<2)>>2]|0;h[(c[n+(m<<2)>>2]|0)+(e<<3)>>3]=-1.0;h[(c[k>>2]|0)+(m<<3)>>3]=-1.0;f=f+1|0}e=e+1|0}}else{e=0;while(1){if((e|0)>=(b|0))break a;i=c[a+(e*20|0)>>2]|0;j=a+(e*20|0)+4|0;k=a+(e*20|0)+8|0;m=n+(e<<2)|0;f=1;while(1){if((f|0)>=(i|0))break;p=c[(c[j>>2]|0)+(f<<2)>>2]|0;l=-1.0/+g[(c[k>>2]|0)+(f<<2)>>2];h[(c[n+(p<<2)>>2]|0)+(e<<3)>>3]=l;h[(c[m>>2]|0)+(p<<3)>>3]=l;f=f+1|0}e=e+1|0}}while(0);b:do if(!(wr(b,n,o)|0)){U1(d);d=0}else{f=0;j=0;m=b;while(1){if((j|0)>=(b|0))break b;k=o+(j<<2)|0;e=j;i=f;while(1){if((e|0)==(b|0))break;if((j|0)==(e|0))l=0.0;else{p=c[k>>2]|0;l=+h[(c[o+(e<<2)>>2]|0)+(e<<3)>>3]+ +h[p+(j<<3)>>3]+ +h[p+(e<<3)>>3]*-2.0}g[d+(i<<2)>>2]=l;e=e+1|0;i=i+1|0}f=f+m|0;j=j+1|0;m=m+-1|0}}while(0);vn(n);vn(o);return d|0}function kn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=l;l=l+16|0;q=r;if(c[a+8>>2]|0){d=ln(a,b)|0;f=0.0;e=0;p=0;while(1){if((p|0)>=(b|0))break;e=e+p|0;o=c[a+(p*20|0)>>2]|0;k=a+(p*20|0)+4|0;m=(O(p,b)|0)-e|0;n=a+(p*20|0)+8|0;j=1;while(1){if((j|0)>=(o|0))break;i=c[(c[k>>2]|0)+(j<<2)>>2]|0;if((i|0)>=(p|0)){i=d+(m+i<<2)|0;s=+g[(c[n>>2]|0)+(j<<2)>>2];f=f+ +B(+(+g[i>>2]-s));g[i>>2]=s}j=j+1|0}p=p+1|0}if(0){b=c[15712]|0;h[q>>3]=f;w4(b,89997,q)|0}}else d=0;l=r;return d|0}function ln(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,m=0;m=l;l=l+16|0;h=m;i=JK(((O(b+1|0,b)|0)/2|0)<<2)|0;j=JK(b<<2)|0;ur(h,b);d=0;f=0;k=b;while(1){if((d|0)>=(b|0))break;hs(d,a,b,j);e=d;g=f;while(1){if((e|0)==(b|0))break;c[i+(g<<2)>>2]=c[j+(e<<2)>>2];e=e+1|0;g=g+1|0}d=d+1|0;f=f+k|0;k=k+-1|0}U1(j);vr(h);l=m;return i|0}function mn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;j=JK(((O(b+1|0,b)|0)/2|0)<<2)|0;k=JK(b<<2)|0;ur(i,b);d=0;f=0;m=b;while(1){if((d|0)>=(b|0))break;qr(d,a,b,k,i);e=d;h=f;while(1){if((e|0)==(b|0))break;g[j+(h<<2)>>2]=+(c[k+(e<<2)>>2]|0);e=e+1|0;h=h+1|0}d=d+1|0;f=f+m|0;m=m+-1|0}U1(k);vr(i);l=n;return j|0}function nn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=a+8|0;d=c[r>>2]|0;e=0;f=0;while(1){if((f|0)>=(b|0))break;e=(c[a+(f*20|0)>>2]|0)+e|0;f=f+1|0}f=JK(e<<2)|0;q=JK(b<<2)|0;e=0;while(1){if((e|0)>=(b|0))break;c[q+(e<<2)>>2]=0;e=e+1|0}if(!(c[r>>2]|0)){h=0;while(1){if((h|0)>=(b|0))break;c[a+(h*20|0)+8>>2]=f;Zs(a,h,q);i=a+(h*20|0)|0;j=c[i>>2]|0;k=a+(h*20|0)+4|0;l=+(j+-1|0);e=1;while(1){if((e|0)>=(j|0))break;p=c[(c[k>>2]|0)+(e<<2)>>2]|0;s=+((c[a+(p*20|0)>>2]|0)+-1|0)+l;g[f+(e<<2)>>2]=s-+((Ys(a,h,p,q)|0)<<1|0);e=e+1|0}_s(a,h,q);f=f+(c[i>>2]<<2)|0;h=h+1|0}f=mn(a,b)|0}else{j=0;while(1){if((j|0)>=(b|0))break;Zs(a,j,q);k=a+(j*20|0)|0;m=c[k>>2]|0;n=a+(j*20|0)+4|0;o=m+-2|0;p=a+(j*20|0)+8|0;i=1;while(1){if((i|0)>=(m|0))break;e=c[(c[n>>2]|0)+(i<<2)>>2]|0;h=o+(c[a+(e*20|0)>>2]|0)|0;s=+(h-((Ys(a,j,e,q)|0)<<1)|0);l=+g[(c[p>>2]|0)+(i<<2)>>2];if(l>2]=l;i=i+1|0}_s(a,j,q);c[p>>2]=f;f=f+(c[k>>2]<<2)|0;j=j+1|0}f=ln(a,b)|0}U1(q);U1(c[r>>2]|0);c[r>>2]=0;a:do if(d|0){e=0;while(1){if((e|0)>=(b|0))break a;c[a+(e*20|0)+8>>2]=d;d=d+(c[a+(e*20|0)>>2]<<2)|0;e=e+1|0}}while(0);return f|0}function on(a,b,e,f,i,j,k,m,n){a=a|0;b=b|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0.0,w=0,x=0.0,y=0,z=0,A=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.0,P=0.0;M=l;l=l+80|0;L=M+56|0;K=M+48|0;A=M+40|0;u=M+32|0;t=M+24|0;s=M+16|0;p=M+8|0;o=M;q=k&4;J=k&3;a:do if((n|0)<0)e=0;else{if(0)TO();k=(m|0)==2;b:do if(k){if(0)U4(93290,24,1,c[15712]|0)|0;e=nn(a,b)|0;w=14}else{switch(m|0){case 1:{e=jn(a,b)|0;if(e|0){I=e;break b}gA(0,93315,o)|0;gA(3,93364,p)|0;w=15;break b}case 3:break;default:{w=15;break b}}if(0)U4(93417,21,1,c[15712]|0)|0;e=kn(a,b)|0;w=14}while(0);if((w|0)==14)if(!e)w=15;else I=e;do if((w|0)==15){if(0)U4(93439,26,1,c[15712]|0)|0;if(!(c[a+8>>2]|0)){I=mn(a,b)|0;break}else{I=ln(a,b)|0;break}}while(0);if(0){H=c[15712]|0;h[s>>3]=+UO();w4(H,93466,s)|0;U4(93478,25,1,H)|0;TO()}c:do if((b|0)>1&(q|0)!=0)if((pn(a,b,f,j,q,J,k&1)|0)<0){u=0;t=0;e=-1;a=0;s=0;q=0;p=0;o=0;m=0;k=0}else{k=0;while(1){if((k|0)>=(j|0)){y=0;w=35;break c}m=f+(k<<2)|0;r=1.0;e=0;while(1){if((e|0)==(b|0))break;x=+B(+(+h[(c[m>>2]|0)+(e<<3)>>3]));r=x>r?x:r;e=e+1|0}r=1.0/r;e=0;while(1){if((e|0)==(b|0)){e=0;break}H=(c[m>>2]|0)+(e<<3)|0;h[H>>3]=+h[H>>3]*r;e=e+1|0}while(1){if((e|0)==(b|0))break;x=(+B5()+-.5)*1.0e-06;H=(c[m>>2]|0)+(e<<3)|0;h[H>>3]=+h[H>>3]+x;e=e+1|0}Ht(b,c[m>>2]|0);k=k+1|0}}else{y=hn(0,b,j,f,i)|0;w=35}while(0);d:do if((w|0)==35){if(0){H=c[15712]|0;h[t>>3]=+UO();w4(H,93504,t)|0}if((b|0)==1|(n|0)==0){e=0;break a}if(0){H=c[15712]|0;h[u>>3]=+UO();w4(H,93466,u)|0;U4(90019,26,1,H)|0;TO()}s=j<<2;H=JK(s)|0;t=b<<2;a=O(t,j)|0;G=JK(a)|0;e=0;while(1){if((e|0)>=(j|0))break;m=G+((O(e,b)|0)<<2)|0;c[H+(e<<2)>>2]=m;o=f+(e<<2)|0;k=0;while(1){if((k|0)>=(b|0))break;g[m+(k<<2)>>2]=+h[(c[o>>2]|0)+(k<<3)>>3];k=k+1|0}e=e+1|0}e:do if(!J){p=b+-1|0;e=0;r=0.0;o=0;while(1){if((o|0)>=(p|0))break e;q=b-o|0;m=e;k=1;while(1){e=m+1|0;if((k|0)>=(q|0))break;m=e;r=+g[I+(e<<2)>>2]+r;k=k+1|0}o=o+1|0}}else r=+(b|0)*.5*+(b+-1|0);while(0);C=(O(b+1|0,b)|0)/2|0;D=(J|0)==2;if(D)bu(C,I);cu(C,I);E=b<<3;m=JK(E)|0;Y6(m|0,0,E|0)|0;F=b+-1|0;e=0;o=0;while(1){if((o|0)>=(F|0)){e=b;k=0;o=0;break}p=b-o|0;v=0.0;k=1;while(1){e=e+1|0;if((k|0)>=(p|0))break;x=+g[I+(e<<2)>>2];z=m+(k+o<<3)|0;h[z>>3]=+h[z>>3]-x;v=v+x;k=k+1|0}z=m+(o<<3)|0;h[z>>3]=+h[z>>3]-v;o=o+1|0}while(1){if((k|0)>=(b|0))break;g[I+(o<<2)>>2]=+h[m+(k<<3)>>3];z=e+o|0;e=e+-1|0;k=k+1|0;o=z}z=JK(s)|0;c[z>>2]=JK(a)|0;e=1;while(1){if((e|0)>=(j|0))break;c[z+(e<<2)>>2]=(c[z>>2]|0)+((O(e,b)|0)<<2);e=e+1|0}p=JK(t)|0;o=JK(t)|0;k=JK(C<<2)|0;if(0){w=c[15712]|0;h[A>>3]=+UO();w4(w,93466,A)|0;U4(90046,15,1,w)|0;TO()}w=(y|0)==0;y=c[15712]|0;e=0;q=0;x=1797693134862315708145274.0e284;while(1){if(!(q<<24>>24==0&(e|0)<(n|0)))break;Y6(m|0,0,E|0)|0;if(D){du(C,I,k);u=0;a=0}else{u=0;a=0}while(1){if((u|0)>=(F|0)){q=b;s=0;a=0;break}t=b-u+-1|0;$t(t,0.0,o);q=0;while(1){if((q|0)>=(j|0))break;A=H+(q<<2)|0;$t(t,+g[(c[A>>2]|0)+(u<<2)>>2],p);Wt(t,p,-1.0,(c[A>>2]|0)+(u<<2)+4|0);bu(t,p);Vt(t,p,o,o);q=q+1|0}eu(t,o);q=0;while(1){if((q|0)>=(t|0))break;s=o+(q<<2)|0;v=+g[s>>2];if(v>=3402823466385288598117041.0e14|v<0.0)g[s>>2]=0.0;q=q+1|0}q=a+1|0;a=u+1|0;f:do if(D){v=0.0;s=0;while(1){if((s|0)>=(t|0))break f;A=k+(q<<2)|0;N=+g[A>>2]*+g[o+(s<<2)>>2];g[A>>2]=N;A=m+(a+s<<3)|0;h[A>>3]=+h[A>>3]-N;v=v+N;q=q+1|0;s=s+1|0}}else{v=0.0;s=0;while(1){if((s|0)>=(t|0))break f;N=+g[o+(s<<2)>>2];g[k+(q<<2)>>2]=N;A=m+(a+s<<3)|0;h[A>>3]=+h[A>>3]-N;v=v+N;q=q+1|0;s=s+1|0}}while(0);A=m+(u<<3)|0;h[A>>3]=+h[A>>3]-v;u=a;a=q}while(1){if((s|0)>=(b|0)){q=0;break}g[k+(a<<2)>>2]=+h[m+(s<<3)>>3];A=q+a|0;q=q+-1|0;s=s+1|0;a=A}while(1){if((q|0)>=(j|0)){v=0.0;q=0;break}Tt(k,b,c[H+(q<<2)>>2]|0,c[z+(q<<2)>>2]|0);q=q+1|0}while(1){if((q|0)>=(j|0))break;v=+Zt(b,c[H+(q<<2)>>2]|0,c[z+(q<<2)>>2]|0)+v;q=q+1|0}v=v*2.0+r;q=0;while(1){if((q|0)>=(j|0))break;A=H+(q<<2)|0;Tt(I,b,c[A>>2]|0,p);v=v-+Zt(b,c[A>>2]|0,p);q=q+1|0}P=x-v;N=+h[23294];q=(v=0.0?P:-P)/x=(j|0))break;t=H+(a<<2)|0;s=c[t>>2]|0;g:do if(w){if((Ar(I,s,c[z+(a<<2)>>2]|0,b,.001,b)|0)<0){u=z;t=I;e=-1;a=G;s=H;q=z;break d}}else{Yt(b,s,p);if((Ar(I,p,c[z+(a<<2)>>2]|0,b,.001,b)|0)<0){u=z;t=I;e=-1;a=G;s=H;q=z;break d}else s=0;while(1){if((s|0)>=(b|0))break g;if((d[(c[(c[i+(s<<2)>>2]|0)+16>>2]|0)+119>>0]|0)<=1)c[(c[t>>2]|0)+(s<<2)>>2]=c[p+(s<<2)>>2];s=s+1|0}}while(0);a=a+1|0}if(((e|0)%5|0|0)==0&0!=0?(h[K>>3]=v,w4(y,90371,K)|0,((e+5|0)%50|0|0)==0):0)E6(10,y)|0;e=e+1|0;x=v}if(!0)q=0;else{N=+qn(H,I,j,b,J);P=+UO();h[L>>3]=N;c[L+8>>2]=e;h[L+16>>3]=P;w4(y,90062,L)|0;q=0}while(1){if((q|0)>=(j|0)){u=z;t=I;a=G;s=H;q=z;break d}a=H+(q<<2)|0;t=f+(q<<2)|0;s=0;while(1){if((s|0)>=(b|0))break;h[(c[t>>2]|0)+(s<<3)>>3]=+g[(c[a>>2]|0)+(s<<2)>>2];s=s+1|0}q=q+1|0}}while(0);U1(a);U1(s);U1(t);if(u|0){U1(c[u>>2]|0);U1(q)}U1(p);U1(o);U1(m);U1(k)}while(0);l=M;return e|0}function pn(b,d,e,f,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;var m=0,n=0,o=0,p=0.0,q=0,r=0,s=0.0,t=0,u=0.0,v=0,w=0,x=0,y=0,z=0,A=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,P=0,Q=0,R=0;R=l;l=l+32|0;o=R+24|0;Q=R+8|0;H=R+4|0;N=R;M=(d|0)<50?d:50;P=KK(M<<2)|0;G=d<<3;n=KK(O(G,M)|0)|0;m=0;while(1){if((m|0)>=(M|0))break;c[P+(m<<2)>>2]=n+((O(m,d)|0)<<3);m=m+1|0}E=M<<1;E=(E|0)>50?E:50;E=(E|0)>(d|0)?d:E;c[o>>2]=0;rs(b,d,E,o,k);ss(c[o>>2]|0,d,E);mu(c[o>>2]|0,E,d,P,M);U1(c[c[o>>2]>>2]|0);U1(c[o>>2]|0);E=d<<2;L=KK(E)|0;m=0;while(1){if((m|0)>=(d|0))break;c[L+(m<<2)>>2]=-1;m=m+1|0}ur(Q,d);J=c[b+8>>2]|0;I=(k|0)!=0;if(I)dt(b,d);C=KK(E)|0;K=KK(160)|0;n=KK(d*160|0)|0;D=KK(160)|0;m=0;while(1){if((m|0)==40)break;c[D+(m<<2)>>2]=n+((O(m,d)|0)<<2);m=m+1|0}m=(x5()|0)%(d|0)|0;c[L+(m<<2)>>2]=0;c[K>>2]=m;n=c[D>>2]|0;if(I){bs(m,b,d,n);n=0;o=0}else{qr(m,b,d,n,Q);n=0;o=0}while(1){if((o|0)>=(d|0)){r=1;break}F=c[(c[D>>2]|0)+(o<<2)>>2]|0;c[C+(o<<2)>>2]=F;A=(F|0)>(n|0);m=A?o:m;n=A?F:n;o=o+1|0}while(1){if((r|0)==40){m=0;break}c[L+(m<<2)>>2]=r;c[K+(r<<2)>>2]=m;t=D+(r<<2)|0;n=c[t>>2]|0;if(I){bs(m,b,d,n);q=0;n=0}else{qr(m,b,d,n,Q);q=0;n=0}while(1){if((q|0)>=(d|0))break;o=C+(q<<2)|0;F=c[o>>2]|0;k=c[(c[t>>2]|0)+(q<<2)>>2]|0;k=(F|0)<(k|0)?F:k;c[o>>2]=k;if((k|0)<=(n|0)){if((k|0)==(n|0)?((x5()|0)%(q+1|0)|0|0)==0:0){n=c[o>>2]|0;m=q}}else{n=k;m=q}q=q+1|0}r=r+1|0}while(1){if((m|0)>=(d|0))break;c[C+(m<<2)>>2]=-1;m=m+1|0}w=KK(E)|0;F=KK(d<<4)|0;x=d+-1|0;y=x<<2;A=0;o=0;k=0;n=0;z=0;while(1){if((z|0)>=(d|0))break;m=L+(z<<2)|0;a:do if((c[m>>2]|0)>-1){t=F+(z<<4)+4|0;c[t>>2]=KK(y)|0;v=KK(y)|0;c[F+(z<<4)+8>>2]=v;c[F+(z<<4)>>2]=x;a[F+(z<<4)+12>>0]=1;r=D+(c[m>>2]<<2)|0;m=0;while(1){if((m|0)==(z|0)){q=z;break}c[(c[t>>2]|0)+(m<<2)>>2]=m;c[v+(m<<2)>>2]=c[(c[r>>2]|0)+(m<<2)>>2];m=m+1|0}while(1){m=q+1|0;if((q|0)==(x|0)){m=x;break a}c[(c[t>>2]|0)+(q<<2)>>2]=m;c[v+(q<<2)>>2]=c[(c[r>>2]|0)+(m<<2)>>2];q=m}}else{if((n|0)<40){k=KK(E)|0;o=KK(E)|0;n=d;m=1}else m=0;a[F+(z<<4)+12>>0]=m;c[F+(z<<4)+4>>2]=k;c[F+(z<<4)+8>>2]=o;c[F+(z<<4)>>2]=40;m=0;while(1){if((m|0)==40)break;c[k+(m<<2)>>2]=c[K+(m<<2)>>2];c[o+(m<<2)>>2]=c[(c[D+(m<<2)>>2]|0)+(z<<2)>>2];m=m+1|0}o=o+160|0;k=k+160|0;n=n+-40|0;m=40}while(0);A=m+A|0;z=z+1|0}U1(C);U1(w);if(D|0){U1(c[D>>2]|0);U1(D)}D=KK(d*20|0)|0;q=A+d<<2;r=KK(q)|0;v=(j|0)==2;q=KK(q)|0;t=0;while(1){if((t|0)>=(d|0))break;c[D+(t*20|0)+4>>2]=r;c[D+(t*20|0)+8>>2]=q;m=(c[F+(t<<4)>>2]|0)+1|0;w=D+(t*20|0)|0;c[w>>2]=m;o=(c[F+(t<<4)+8>>2]|0)+-4|0;k=F+(t<<4)+4|0;b:do if(v){p=0.0;n=1;while(1){if((n|0)>=(m|0))break b;c[r+(n<<2)>>2]=c[(c[k>>2]|0)+(n+-1<<2)>>2];u=+(c[o+(n<<2)>>2]|0);u=-1.0/(u*u);g[q+(n<<2)>>2]=u;p=p-u;n=n+1|0;m=c[w>>2]|0}}else{p=0.0;n=1;while(1){if((n|0)>=(m|0))break b;c[r+(n<<2)>>2]=c[(c[k>>2]|0)+(n+-1<<2)>>2];u=-1.0/+(c[o+(n<<2)>>2]|0);g[q+(n<<2)>>2]=u;p=p-u;n=n+1|0;m=c[w>>2]|0}}while(0);c[r>>2]=t;g[q>>2]=p;E=c[w>>2]|0;q=q+(E<<2)|0;r=r+(E<<2)|0;t=t+1|0}C=KK(f<<2)|0;c[C>>2]=KK(O(f<<3,M)|0)|0;m=1;while(1){if((m|0)>=(f|0))break;c[C+(m<<2)>>2]=(c[C>>2]|0)+((O(m,M)|0)<<3);m=m+1|0}c:do if(i){m=0;while(1){if((m|0)>=(f|0))break;o=C+(m<<2)|0;n=0;while(1){if((n|0)>=(M|0))break;h[(c[o>>2]|0)+(n<<3)>>3]=0.0;n=n+1|0}m=m+1|0}if((f|0)!=2){m=0;while(1){if((m|0)>=(f|0)){m=0;break c}h[(c[C+(m<<2)>>2]|0)+(m<<3)>>3]=1.0;m=m+1|0}}h[c[C>>2]>>3]=1.0;m=C+4|0;if(!((nu(P,M,d,c[m>>2]|0)|0)<<24>>24)){n=c[m>>2]|0;m=0;while(1){if((m|0)>=(M|0))break;h[n+(m<<3)>>3]=0.0;m=m+1|0}h[n+8>>3]=1.0;m=0}else m=0}else{n=0;while(1){if((n|0)>=(f|0)){m=0;break c}o=C+(n<<2)|0;m=0;while(1){if((m|0)>=(M|0))break;u=+(x5()|0)*4.656612875245797e-10;h[(c[o>>2]|0)+(m<<3)>>3]=u;m=m+1|0}n=n+1|0}}while(0);while(1){if((m|0)>=(f|0))break;Rt(P,d,M,c[C+(m<<2)>>2]|0,c[e+(m<<2)>>2]|0);m=m+1|0}c[H>>2]=0;c[N>>2]=0;Gt(D,P,d,M,H);Et(P,c[H>>2]|0,M,d,M,N);U1(c[c[H>>2]>>2]|0);U1(c[H>>2]|0);z=KK(G)|0;A=KK(M<<3)|0;m=0;n=0;p=+rn(e,F,f,d,j);d:while(1){if((n|0)<50&m<<24>>24==0)x=0;else break;while(1){if((x|0)>=(f|0))break;y=e+(x<<2)|0;o=0;while(1){if((o|0)>=(d|0))break;q=z+(o<<3)|0;h[q>>3]=0.0;r=(c[F+(o<<4)+8>>2]|0)+-4|0;t=c[D+(o*20|0)+4>>2]|0;v=c[D+(o*20|0)+8>>2]|0;w=D+(o*20|0)|0;s=0.0;k=1;while(1){if((k|0)>=(c[w>>2]|0))break;m=c[t+(k<<2)>>2]|0;u=+ft(e,f,o,m);if(u>1.0e-30){u=-(+g[v+(k<<2)>>2]*+(c[r+(k<<2)>>2]|0))/u;h[q>>3]=u*+h[(c[y>>2]|0)+(m<<3)>>3]+ +h[q>>3];s=s-u}k=k+1|0}h[q>>3]=+h[q>>3]+ +h[(c[y>>2]|0)+(o<<3)>>3]*s;o=o+1|0}Dt(P,M,d,z,A);m=C+(x<<2)|0;if(zr(c[N>>2]|0,c[m>>2]|0,A,M,.001,M,0)|0){n=-1;break d}Rt(P,d,M,c[m>>2]|0,c[y>>2]|0);x=x+1|0}if(!(n&1)){u=+rn(e,F,f,d,j);p=+B(+(u-p))/(u+1.0e-10);m=p<+h[23294]&1;p=u}else m=0;n=n+1|0}U1(A);U1(z);if(I){et(b,d,J);m=0}else m=0;while(1){if((m|0)>=(d|0))break;if(a[F+(m<<4)+12>>0]|0){U1(c[F+(m<<4)+4>>2]|0);U1(c[F+(m<<4)+8>>2]|0)}m=m+1|0}U1(F);U1(c[D+4>>2]|0);U1(c[D+8>>2]|0);U1(D);U1(L);U1(K);U1(c[C>>2]|0);U1(C);m=c[N>>2]|0;if(m|0){U1(c[m>>2]|0);U1(c[N>>2]|0)}U1(c[P>>2]|0);U1(P);vr(Q);l=R;return n|0}function qn(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0.0,i=0.0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0;q=e+-1|0;o=(f|0)==2;h=0.0;f=0;m=0;while(1){if((m|0)>=(q|0))break;p=e-m|0;n=1;while(1){f=f+1|0;if((n|0)>=(p|0))break;k=n+m|0;i=0.0;j=0;while(1){if((j|0)>=(d|0))break;r=c[a+(j<<2)>>2]|0;l=+g[r+(m<<2)>>2]-+g[r+(k<<2)>>2];i=i+l*l;j=j+1|0}i=+C(+i);l=+g[b+(f<<2)>>2];if(o){i=1.0/+C(+l)-i;i=i*i}else{i=1.0/l-i;i=i*i}n=n+1|0;h=i*l+h}m=m+1|0}return +h}function rn(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0;a:do if((f|0)==2){g=0.0;l=0;while(1){if((l|0)>=(e|0))break a;n=c[b+(l<<4)>>2]|0;o=b+(l<<4)+4|0;m=b+(l<<4)+8|0;k=0;while(1){if((k|0)>=(n|0))break;j=c[(c[o>>2]|0)+(k<<2)>>2]|0;if((j|0)>(l|0)){i=0.0;f=0;while(1){if((f|0)>=(d|0))break;q=c[a+(f<<2)>>2]|0;p=+h[q+(l<<3)>>3]-+h[q+(j<<3)>>3];i=p*p+i;f=f+1|0}i=+C(+i);p=+(c[(c[m>>2]|0)+(k<<2)>>2]|0);i=p-i;g=i*i/(p*p)+g}k=k+1|0}l=l+1|0}}else{l=0;g=0.0;while(1){if((l|0)>=(e|0))break a;m=c[b+(l<<4)>>2]|0;n=b+(l<<4)+4|0;o=b+(l<<4)+8|0;k=0;while(1){if((k|0)>=(m|0))break;j=c[(c[n>>2]|0)+(k<<2)>>2]|0;if((j|0)>(l|0)){i=0.0;f=0;while(1){if((f|0)>=(d|0))break;q=c[a+(f<<2)>>2]|0;p=+h[q+(l<<3)>>3]-+h[q+(j<<3)>>3];i=p*p+i;f=f+1|0}i=+C(+i);p=+(c[(c[o>>2]|0)+(k<<2)>>2]|0);i=p-i;g=i*i/p+g}k=k+1|0}l=l+1|0}}while(0);return +g}function sn(a){a=+a;return +(+C(+a)*a)}function tn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0.0;g=c[47137]|0;e=0.0;f=0;while(1){if((f|0)>=(g|0))break;i=+h[a+(f<<3)>>3]-+h[b+(f<<3)>>3];h[d+(f<<3)>>3]=i;e=i*i+e;f=f+1|0}return +(+C(+e))}function un(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,i=0;i=JK(a<<2)|0;f=0;g=JK(O(a<<3,b)|0)|0;while(1){if((f|0)>=(a|0))break;c[i+(f<<2)>>2]=g;e=0;while(1){if((e|0)>=(b|0))break;h[g+(e<<3)>>3]=d;e=e+1|0}f=f+1|0;g=g+(b<<3)|0}return i|0}function vn(a){a=a|0;if(a|0){U1(c[a>>2]|0);U1(a)}return}function wn(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+16|0;n=tB(b)|0;m=uB(b)|0;k=GA(b,2,92493,0)|0;a:do if(!d){h[23294]=+(n|0)*.0001;pK(b,108886,186352);g=QA(c[b+60>>2]|0,90100)|0;if(!g)e=.99;else e=+r5(g);h[23296]=e;g=JK((n<<2)+4|0)|0;j=b+16|0;c[(c[j>>2]|0)+152>>2]=g;g=0;e=0.0;i=jC(b)|0;while(1){if(!i)break a;c[(c[(c[j>>2]|0)+152>>2]|0)+(g<<2)>>2]=i;p=c[i+16>>2]|0;c[p+120>>2]=g;c[p+124>>2]=-1;f=+zn(b,i,k)+e;g=g+1|0;e=f;i=kC(b,i)|0}}else{h[23294]=.0001;pK(b,108886,186352);g=0;e=0.0;i=jC(b)|0;while(1){if(!i)break a;c[(c[i+16>>2]|0)+120>>2]=g;f=+zn(b,i,k)+e;g=g+1|0;e=f;i=kC(b,i)|0}}while(0);g=QA(b,90108)|0;if((g|0)!=0?(a[g>>0]|0)!=0:0){e=+h[23294];f=+r5(g);if(!(e>f))e=f}else e=e/+(((m|0)>1?m:1)|0)*+C(+(+(n|0)))+1.0;h[23295]=e;if(!(c[47134]|d)){d=un(n,n,e)|0;p=b+16|0;c[(c[p>>2]|0)+160>>2]=d;d=un(n,n,1.0)|0;c[(c[p>>2]|0)+164>>2]=d;d=un(n,c[47137]|0,1.0)|0;c[(c[p>>2]|0)+168>>2]=d;d=An(n,n,c[47137]|0)|0;c[(c[p>>2]|0)+172>>2]=d}l=o;return n|0}function xn(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;f=0;e=0;j=aB(a,b)|0;a:while(1){if(!j)break;h=c[j>>2]&3;g=c[((h|0)==2?j:j+-48|0)+40>>2]|0;h=c[((h|0)==3?j:j+48|0)+40>>2]|0;do if((g|0)!=(h|0)){i=(h|0)==(b|0);if((e|0)!=1){f=i?g:h;c[d>>2]=f;e=e+1|0;break}if(!((g|0)==(f|0)&i)?!((g|0)==(b|0)&(h|0)==(f|0)):0){e=2;break a}else e=1}while(0);j=bB(a,j,b)|0}return e|0}function yn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h;g=a+60|0;a:while(1){b:while(1){if(!b)break a;switch(xn(a,b,f)|0){case 0:{e=5;break b}case 1:{e=8;break b}default:b=0}}if((e|0)==5){if((d|0)==(b|0))d=kC(a,d)|0;wC(c[g>>2]|0,b)|0;b=0;continue}else if((e|0)==8){if((d|0)==(b|0))d=kC(a,d)|0;wC(c[g>>2]|0,b)|0;b=c[f>>2]|0;continue}}l=h;return d|0}function zn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0,k=0;k=l;l=l+32|0;i=k+8|0;g=k;b=XA(a,b)|0;e=0.0;while(1){if(!b)break;switch(Bn(b,d,g)|0){case 0:{f=+h[g>>3];break}case 2:{c[i>>2]=KB(a)|0;h[i+8>>3]=1.0;gA(3,90120,i)|0;j=6;break}default:j=6}if((j|0)==6){j=0;h[g>>3]=1.0;f=1.0}h[(c[b+16>>2]|0)+136>>3]=f;b=ZA(a,b)|0;e=f+e}l=k;return +e}function An(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0;j=JK((a<<2)+4|0)|0;k=(b<<2)+4|0;l=d<<3;g=0;while(1){if((g|0)>=(a|0))break;i=j+(g<<2)|0;c[i>>2]=JK(k)|0;f=0;while(1){if((f|0)>=(b|0))break;e=JK(l)|0;c[(c[i>>2]|0)+(f<<2)>>2]=e;e=0;while(1){if((e|0)>=(d|0))break;h[(c[(c[i>>2]|0)+(f<<2)>>2]|0)+(e<<3)>>3]=0.0;e=e+1|0}f=f+1|0}c[(c[i>>2]|0)+(f<<2)>>2]=0;g=g+1|0}c[j+(g<<2)>>2]=0;return j|0}function Bn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;i=k;do if((d|0)!=0?(f=RA(b,d)|0,(a[f>>0]|0)!=0):0){c[i>>2]=e;if(((b5(f,101209,i)|0)>=1?(g=+h[e>>3],!(g<0.0)):0)?g!=0.0|(c[47134]|0)!=0:0){b=0;break}c[j>>2]=f;gA(0,90147,j)|0;b=2}else b=1;while(0);l=k;return b|0}function Cn(a){a=a|0;return wn(a,0)|0}function Dn(a){a=a|0;a=a+16|0;U1(c[(c[a>>2]|0)+152>>2]|0);if(!(c[47134]|0)){vn(c[(c[a>>2]|0)+160>>2]|0);vn(c[(c[a>>2]|0)+164>>2]|0);vn(c[(c[a>>2]|0)+168>>2]|0);En(c[(c[a>>2]|0)+172>>2]|0);c[(c[a>>2]|0)+172>>2]=0}return}function En(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;if(a|0){f=0;while(1){g=a+(f<<2)|0;b=c[g>>2]|0;if(!b)break;else e=0;while(1){d=c[b+(e<<2)>>2]|0;if(!d)break;U1(d);e=e+1|0;b=c[g>>2]|0}U1(b);f=f+1|0}U1(a)}return}function Fn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0;e=+(b|0);b=a+16|0;while(1){if((d|0)>=(c[47137]|0))break;f=+B5()*e;h[(c[(c[b>>2]|0)+132>>2]|0)+(d<<3)>>3]=f;d=d+1|0}return}function Gn(a,b){a=a|0;b=b|0;Fn(a,b,2);return}function Hn(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0;e=+(b|0);f=+B5()*e;d=a+16|0;h[c[(c[d>>2]|0)+132>>2]>>3]=f;e=+B5()*e;h[(c[(c[d>>2]|0)+132>>2]|0)+8>>3]=e;if((c[47137]|0)>2)Gn(a,b);return}function In(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if(0)U4(90165,26,1,c[15712]|0)|0;d=nm(b,d,2)|0;a:do if((d|0)!=1){if(!(c[46797]|d)){gA(0,90192,e)|0;c[46797]=1}e=b+16|0;d=0;while(1){b=c[(c[(c[e>>2]|0)+152>>2]|0)+(d<<2)>>2]|0;if(!b)break a;if(!(a[(c[b+16>>2]|0)+119>>0]|0))Hn(b,1);d=d+1|0}}while(0);l=f;return}function Jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+96|0;p=q+80|0;n=q;if(0){U4(90241,25,1,c[15712]|0)|0;TO()}o=a+16|0;f=c[o>>2]|0;k=c[f+164>>2]|0;f=c[f+160>>2]|0;m=0;while(1){if((m|0)>=(b|0))break;i=f+(m<<2)|0;j=k+(m<<2)|0;e=0;while(1){if((e|0)==(m|0))break;g=+h[(c[i>>2]|0)+(e<<3)>>3];g=1.0/(g*g);d=c[(c[o>>2]|0)+152>>2]|0;d=iB(a,c[d+(m<<2)>>2]|0,c[d+(e<<2)>>2]|0,0,0)|0;if(d)g=+h[(c[d+16>>2]|0)+128>>3]*g;h[(c[k+(e<<2)>>2]|0)+(m<<3)>>3]=g;h[(c[j>>2]|0)+(e<<3)>>3]=g;e=e+1|0}m=m+1|0}a=c[47137]|0;e=0;while(1){if((e|0)<(b|0))d=0;else break;while(1){if((d|0)>=(a|0))break;h[(c[(c[(c[o>>2]|0)+168>>2]|0)+(e<<2)>>2]|0)+(d<<3)>>3]=0.0;d=d+1|0}e=e+1|0}i=0;while(1){d=c[(c[(c[o>>2]|0)+152>>2]|0)+(i<<2)>>2]|0;if(!d)break;a=d+16|0;d=0;while(1){if((d|0)>=(b|0))break;a:do if((i|0)!=(d|0)){g=+tn(c[(c[a>>2]|0)+132>>2]|0,c[(c[(c[(c[(c[o>>2]|0)+152>>2]|0)+(d<<2)>>2]|0)+16>>2]|0)+132>>2]|0,n);f=c[47137]|0;g=1.0/g;e=0;while(1){if((e|0)>=(f|0))break a;m=c[o>>2]|0;r=+h[n+(e<<3)>>3];r=(r-+h[(c[(c[m+160>>2]|0)+(i<<2)>>2]|0)+(d<<3)>>3]*r*g)*+h[(c[(c[m+164>>2]|0)+(i<<2)>>2]|0)+(d<<3)>>3];h[(c[(c[(c[m+172>>2]|0)+(i<<2)>>2]|0)+(d<<2)>>2]|0)+(e<<3)>>3]=r;m=(c[(c[m+168>>2]|0)+(i<<2)>>2]|0)+(e<<3)|0;h[m>>3]=+h[m>>3]+r;e=e+1|0}}while(0);d=d+1|0}i=i+1|0}if(0){o=c[15712]|0;h[p>>3]=+UO();w4(o,90267,p)|0}l=q;return}function Kn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0.0,k=0;i=l;l=l+32|0;g=i+24|0;f=i+8|0;e=i;j=+h[23294];h[23216]=j*j;while(1){d=Ln(a,b)|0;if(!d)break;Mn(a,b,d)}if(!0)b=a+16|0;else{d=c[15712]|0;h[e>>3]=+Nn(a,b);w4(d,90277,e)|0;b=a+16|0;k=c[(c[b>>2]|0)+156>>2]|0;e=(k|0)==(c[47136]|0)?90291:195059;j=+UO();c[f>>2]=k;c[f+4>>2]=e;h[f+8>>3]=j;w4(d,90293,f)|0}b=c[(c[b>>2]|0)+156>>2]|0;if((b|0)==(c[47136]|0)){k=KB(a)|0;c[g>>2]=b;c[g+4>>2]=k;gA(0,90320,g)|0}l=i;return}function Ln(a,b){a=a|0;b=b|0;var e=0.0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=l;l=l+16|0;q=r;o=(c[46799]|0)+1|0;c[46799]=o;a=c[a+16>>2]|0;if((c[a+156>>2]|0)<(c[47136]|0)){m=c[47137]|0;n=a+152|0;k=a+168|0;a=0;e=0.0;j=0;while(1){if((j|0)>=(b|0))break;g=c[(c[n>>2]|0)+(j<<2)>>2]|0;if((d[(c[g+16>>2]|0)+119>>0]|0)<=1){i=0.0;f=0;while(1){if((f|0)>=(m|0))break;s=+h[(c[(c[k>>2]|0)+(j<<2)>>2]|0)+(f<<3)>>3];i=s*s+i;f=f+1|0}if(i>e){a=g;e=i}}j=j+1|0}if(!(e<+h[23216])){if(0!=0&((o|0)%100|0|0)==0?(p=c[15712]|0,h[q>>3]=+C(+e),w4(p,90371,q)|0,((c[46799]|0)%1e3|0|0)==0):0)E6(10,p)|0}else a=0}else a=0;l=r;return a|0}function Mn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;k=d+16|0;m=c[(c[k>>2]|0)+120>>2]|0;f=c[46798]|0;if(!f){g=c[47137]|0;g=KK(O(g<<3,g)|0)|0}else{g=c[47137]|0;g=MK(f,O(g<<3,g)|0)|0}c[46798]=g;On(a,b,m,g);i=c[47137]|0;j=a+16|0;f=0;while(1){if((f|0)>=(i|0))break;h[185736+(f<<3)>>3]=-+h[(c[(c[(c[j>>2]|0)+168>>2]|0)+(m<<2)>>2]|0)+(f<<3)>>3];f=f+1|0}Xu(g,185816,185736,i);f=0;while(1){if((f|0)>=(c[47137]|0))break;e=+h[23296];e=(1.0-e)*2.0*+B5()+e;i=185816+(f<<3)|0;e=e*+h[i>>3];h[i>>3]=e;i=(c[(c[k>>2]|0)+132>>2]|0)+(f<<3)|0;h[i>>3]=+h[i>>3]+e;f=f+1|0}k=(c[j>>2]|0)+156|0;c[k>>2]=(c[k>>2]|0)+1;Pn(a,b,m);if(rP()|0){g=c[47137]|0;e=0.0;f=0;while(1){if((f|0)>=(g|0))break;e=+B(+(+h[185816+(f<<3)>>3]))+e;f=f+1|0}e=+C(+e);m=c[15712]|0;c[n>>2]=KB(d)|0;h[n+8>>3]=e;w4(m,90362,n)|0}l=o;return}function Nn(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=b+-1|0;n=a+16|0;o=c[47137]|0;g=0;d=0.0;a:while(1){if((g|0)>=(q|0))break;m=c[n>>2]|0;p=c[m+152>>2]|0;j=g+1|0;k=(c[p+(g<<2)>>2]|0)+16|0;l=m+164|0;m=m+160|0;i=j;while(1){if((i|0)>=(b|0)){g=j;continue a}f=(c[p+(i<<2)>>2]|0)+16|0;a=0;e=0.0;while(1){if((a|0)>=(o|0))break;r=+h[(c[(c[k>>2]|0)+132>>2]|0)+(a<<3)>>3]-+h[(c[(c[f>>2]|0)+132>>2]|0)+(a<<3)>>3];a=a+1|0;e=r*r+e}r=+h[(c[(c[m>>2]|0)+(g<<2)>>2]|0)+(i<<3)>>3];r=((+C(+e)*-2.0+r)*r+e)*+h[(c[(c[l>>2]|0)+(g<<2)>>2]|0)+(i<<3)>>3]+d;i=i+1|0;d=r}}return +d}function On(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0.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;x=l;l=l+80|0;w=x;v=c[a+16>>2]|0;k=c[v+164>>2]|0;m=c[v+160>>2]|0;v=c[v+152>>2]|0;j=c[v+(d<<2)>>2]|0;g=c[47137]|0;a=0;while(1){if((a|0)>=(g|0))break;i=O(g,a)|0;f=0;while(1){if((f|0)==(g|0))break;h[e+(i+f<<3)>>3]=0.0;f=f+1|0}a=a+1|0}u=c[47137]|0;t=j+16|0;s=k+(d<<2)|0;k=m+(d<<2)|0;j=0;while(1){if((j|0)>=(b|0))break;a:do if((j|0)!=(d|0)){f=(c[v+(j<<2)>>2]|0)+16|0;r=0.0;a=0;while(1){if((a|0)>=(u|0))break;q=+h[(c[(c[t>>2]|0)+132>>2]|0)+(a<<3)>>3]-+h[(c[(c[f>>2]|0)+132>>2]|0)+(a<<3)>>3];h[w+(a<<3)>>3]=q;r=q*q+r;a=a+1|0}n=1.0/+sn(r);i=0;while(1){if((i|0)>=(u|0))break a;f=(c[s>>2]|0)+(j<<3)|0;g=(c[k>>2]|0)+(j<<3)|0;o=+h[w+(i<<3)>>3];a=0;while(1){p=+h[f>>3];q=+h[g>>3];if((a|0)==(i|0))break;m=e+((O(u,a)|0)+i<<3)|0;h[m>>3]=+h[m>>3]+p*n*q*o*+h[w+(a<<3)>>3];a=a+1|0}m=e+((O(u,i)|0)+i<<3)|0;h[m>>3]=(1.0-q*n*(r-o*o))*p+ +h[m>>3];i=i+1|0}}while(0);j=j+1|0}f=c[47137]|0;i=1;while(1){if((i|0)>=(f|0))break;g=O(f,i)|0;a=0;while(1){if((a|0)==(i|0))break;h[e+(g+a<<3)>>3]=+h[e+((O(f,a)|0)+i<<3)>>3];a=a+1|0}i=i+1|0}l=x;return}function Pn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0,r=0,s=0;m=l;l=l+80|0;k=m;j=a+16|0;f=c[j>>2]|0;g=c[(c[f+152>>2]|0)+(d<<2)>>2]|0;e=c[47137]|0;f=f+168|0;a=0;while(1){if((a|0)>=(e|0))break;h[(c[(c[f>>2]|0)+(d<<2)>>2]|0)+(a<<3)>>3]=0.0;a=a+1|0}f=g+16|0;a=0;while(1){if((a|0)>=(b|0))break;a:do if((a|0)!=(d|0)){i=+tn(c[(c[f>>2]|0)+132>>2]|0,c[(c[(c[(c[(c[j>>2]|0)+152>>2]|0)+(a<<2)>>2]|0)+16>>2]|0)+132>>2]|0,k);g=c[47137]|0;i=1.0/i;e=0;while(1){if((e|0)>=(g|0))break a;n=c[j>>2]|0;q=c[n+172>>2]|0;r=(c[(c[q+(d<<2)>>2]|0)+(a<<2)>>2]|0)+(e<<3)|0;o=+h[k+(e<<3)>>3];o=(o-+h[(c[(c[n+160>>2]|0)+(d<<2)>>2]|0)+(a<<3)>>3]*o*i)*+h[(c[(c[n+164>>2]|0)+(d<<2)>>2]|0)+(a<<3)>>3];h[r>>3]=o;n=c[n+168>>2]|0;s=(c[n+(d<<2)>>2]|0)+(e<<3)|0;h[s>>3]=+h[s>>3]+o;q=(c[(c[q+(a<<2)>>2]|0)+(d<<2)>>2]|0)+(e<<3)|0;o=+h[q>>3];p=-+h[r>>3];h[q>>3]=p;n=(c[n+(a<<2)>>2]|0)+(e<<3)|0;h[n>>3]=p-o+ +h[n>>3];e=e+1|0}}while(0);a=a+1|0}l=m;return}function Qn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0;d=a+16|0;g=c[46800]|0;b=c[(c[d>>2]|0)+124>>2]|0;while(1){if((b|0)<=0)break;i=(b+-1|0)/2|0;j=g+(i<<2)|0;e=c[j>>2]|0;f=e+16|0;if(+h[(c[f>>2]|0)+136>>3]<=+h[(c[d>>2]|0)+136>>3])break;c[j>>2]=a;c[(c[d>>2]|0)+124>>2]=i;c[g+(b<<2)>>2]=e;c[(c[f>>2]|0)+124>>2]=b;b=i}return}function Rn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0;i=a+16|0;j=c[46801]|0;k=c[46800]|0;g=c[(c[i>>2]|0)+124>>2]|0;while(1){e=g<<1|1;if((e|0)>=(j|0))break;d=e+1|0;if((d|0)<(j|0)){f=c[k+(d<<2)>>2]|0;b=c[k+(e<<2)>>2]|0;if(+h[(c[f+16>>2]|0)+136>>3]<+h[(c[b+16>>2]|0)+136>>3]){e=d;b=f}else l=6}else{b=c[k+(e<<2)>>2]|0;l=6}if((l|0)==6)l=0;d=b+16|0;if(+h[(c[i>>2]|0)+136>>3]<=+h[(c[d>>2]|0)+136>>3])break;c[k+(e<<2)>>2]=a;c[(c[i>>2]|0)+124>>2]=e;c[k+(g<<2)>>2]=b;c[(c[d>>2]|0)+124>>2]=g;g=e}return}function Sn(a){a=a|0;var b=0,d=0;b=(c[a+16>>2]|0)+124|0;if((c[b>>2]|0)>=0)qa(90377,90397,643,90405);d=c[46801]|0;c[46801]=d+1;c[b>>2]=d;c[(c[46800]|0)+(d<<2)>>2]=a;if((d|0)>0)Qn(a);return}function Tn(){var a=0,b=0,d=0,e=0;b=c[46801]|0;if(!b)a=0;else{e=c[46800]|0;a=c[e>>2]|0;d=b+-1|0;c[46801]=d;d=c[e+(d<<2)>>2]|0;c[e>>2]=d;c[(c[d+16>>2]|0)+124>>2]=0;if((b|0)>2)Rn(d);c[(c[a+16>>2]|0)+124>>2]=-1}return a|0}function Un(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;d=e;c[46800]=JK((b<<2)+4|0)|0;if(0){U4(90419,28,1,c[15712]|0)|0;TO()}b=jC(a)|0;while(1){if(!b)break;Vn(a,b);b=kC(a,b)|0}if(0){a=c[15712]|0;h[d>>3]=+UO();w4(a,90267,d)|0}U1(c[46800]|0);l=e;return}function Vn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0,i=0,j=0,k=0;e=c[(c[a+16>>2]|0)+152>>2]|0;f=+h[23295];d=0;while(1){g=c[e+(d<<2)>>2]|0;if(!g)break;h[(c[g+16>>2]|0)+136>>3]=f;d=d+1|0}c[46802]=b;k=c[b+16>>2]|0;h[k+136>>3]=0.0;c[k+128>>2]=0;Sn(b);a:while(1){k=Tn()|0;if(!k)break;d=c[46802]|0;j=k+16|0;if((k|0)!=(d|0))Wn(a,d,k,+h[(c[j>>2]|0)+136>>3]);i=aB(a,k)|0;while(1){if(!i)continue a;d=c[i>>2]&3;b=c[((d|0)==3?i:i+48|0)+40>>2]|0;if((b|0)==(k|0))b=c[((d|0)==2?i:i+-48|0)+40>>2]|0;d=c[j>>2]|0;f=+h[(c[i+16>>2]|0)+136>>3]+ +h[d+136>>3];e=c[b+16>>2]|0;g=e+136|0;do if(+h[g>>3]>f){h[g>>3]=f;if((c[e+124>>2]|0)>-1){Qn(b);break}else{c[e+128>>2]=(c[d+128>>2]|0)+1;Sn(b);break}}while(0);i=bB(a,i,k)|0}}return}function Wn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=+e;b=c[(c[b+16>>2]|0)+120>>2]|0;d=c[(c[d+16>>2]|0)+120>>2]|0;a=c[(c[a+16>>2]|0)+160>>2]|0;h[(c[a+(d<<2)>>2]|0)+(b<<3)>>3]=e;h[(c[a+(b<<2)>>2]|0)+(d<<3)>>3]=e;return}function Xn(a){a=a|0;oQ(a,2);b[(c[a+16>>2]|0)+176>>1]=2;c[47137]=2;Yn(a);return}function Yn(a){a=a|0;var b=0,d=0,e=0,f=0;b=tB(a)|0;e=JK(b*56|0)|0;b=JK((b<<2)+4|0)|0;f=a+16|0;c[(c[f>>2]|0)+152>>2]=b;b=jC(a)|0;d=0;while(1){if(!b)break;Zl(b);c[(c[b+16>>2]|0)+112>>2]=e+(d*56|0);c[(c[(c[f>>2]|0)+152>>2]|0)+(d<<2)>>2]=b;b=kC(a,b)|0;d=d+1|0}d=jC(a)|0;while(1){if(!d)break;b=XA(a,d)|0;while(1){if(!b)break;Zn(b);b=ZA(a,b)|0}d=kC(a,d)|0}return}function Zn(a){a=a|0;var b=0.0;TC(a,137460,176,1)|0;tP(a)|0;b=+_O(a,c[47174]|0,1.0,0.0);h[(c[a+16>>2]|0)+128>>3]=b;return}function _n(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+80|0;m=u+32|0;i=u+24|0;g=u+16|0;j=u;t=u+72|0;p=u+40|0;if(tB(b)|0){Xn(b);f=QA(b,95738)|0;if(f)if(a[f>>0]|0){d=tC(b,f,0)|0;if(!d){c[g>>2]=f;gA(0,90448,g)|0;gA(3,90488,i)|0;d=0;s=1}else s=0}else{d=0;s=1}else{d=0;s=0}n=GA(b,1,95738,0)|0;o=(n|0)!=0;f=QA(b,140742)|0;if((f|0?a[f>>0]|0:0)?(k=j+8|0,c[m>>2]=j,c[m+4>>2]=k,(b5(f,105503,m)|0)==1):0)h[k>>3]=+h[j>>3];if(tB(b)|0){m=DG(b,t,0)|0;if((c[t>>2]|0)==1){g=(d|0)!=0;do if(g)e=d;else{if(o?(e=$n(b,n)|0,e|0):0)break;e=0}while(0);f=Zu(b,e)|0;if(!((e|0)!=0|o^1))KA(f,n,142463)|0;r=(jC(b)|0)+16|0;U1(c[(c[r>>2]|0)+112>>2]|0);c[(c[r>>2]|0)+112>>2]=0;or(b)|0;fn(b);d=(s|0)==0|g?d:f}else{kH(b,2,8,p)|0;c[p+12>>2]=0;k=(s|0)==0;j=0;while(1){if((j|0)>=(c[t>>2]|0))break;g=c[m+(j<<2)>>2]|0;e=(d|0)!=0;if(e?(HC(g,d)|0)!=0:0)f=d;else r=23;do if((r|0)==23){r=0;if(o?(q=$n(g,n)|0,q|0):0){f=q;break}f=0}while(0);KG(g)|0;i=Zu(g,f)|0;d=k|e?d:i;if(o?(f|0)==0|(f|0)==(d|0):0)KA(i,n,142463)|0;or(g)|0;j=j+1|0}r=(jC(b)|0)+16|0;U1(c[(c[r>>2]|0)+112>>2]|0);c[(c[r>>2]|0)+112>>2]=0;jH(c[t>>2]|0,m,b,p)|0;fn(b)}e=0;while(1){if((e|0)>=(c[t>>2]|0))break;wC(b,c[m+(e<<2)>>2]|0)|0;e=e+1|0}U1(m)}if(s|0)SA(b,95738,KB(d)|0)|0;tM(b)}l=u;return}function $n(a,b){a=a|0;b=b|0;var c=0;c=jC(a)|0;while(1){if(!c){c=0;break}if((dP(RA(c,b)|0)|0)<<24>>24)break;c=kC(a,c)|0}return c|0}function ao(a){a=a|0;var b=0,c=0;b=jC(a)|0;if(b|0){while(1){if(!b)break;c=XA(a,b)|0;while(1){if(!c)break;YP(c);c=ZA(a,c)|0}WP(b);b=kC(a,b)|0}bo(a)}return}function bo(a){a=a|0;U1(c[(c[a+16>>2]|0)+152>>2]|0);if((yC(a)|0)!=(a|0))ZC(a,0,137483);return}function co(a){a=a|0;eo(a);if(!((tB(a)|0)==0?!(c[(c[a+16>>2]|0)+180>>2]|0):0)){nv(a);tM(a)}return}function eo(a){a=a|0;c[47147]=GA(a,1,108230,108236)|0;oQ(a,2);b[(c[a+16>>2]|0)+176>>1]=2;c[47137]=2;fo(a,0);go(a);return}function fo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(b|0)==0;if(h){jo(g);b=g}d=OD(a)|0;while(1){if(!d)break;if(!(Q2(KB(d)|0,108006,7)|0)){TC(d,137483,280,1)|0;ko(b,d);fo(d,0)}else fo(d,b);d=PD(d)|0}if(h?(e=c[g+8>>2]|0,f=a+16|0,c[(c[f>>2]|0)+180>>2]=e,e|0):0){h=MK(c[g>>2]|0,(e<<2)+4|0)|0;c[(c[f>>2]|0)+184>>2]=h}l=i;return}function go(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=JK((tB(a)|0)<<2)|0;b=JK(((tB(a)|0)<<2)+4|0)|0;g=a+16|0;c[(c[g>>2]|0)+152>>2]=b;b=jC(a)|0;d=0;while(1){if(!b)break;TC(b,137447,304,1)|0;c[(c[b+16>>2]|0)+112>>2]=f+(d<<2);c[(c[(c[g>>2]|0)+152>>2]|0)+(d<<2)>>2]=b;ho(b);e=XA(a,b)|0;while(1){if(!e)break;io(e);e=ZA(a,e)|0}b=kC(a,b)|0;d=d+1|0}return}function ho(a){a=a|0;SA(a,108230,108236)|0;return}function io(a){a=a|0;TC(a,137460,304,1)|0;return}function jo(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function ko(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=a+8|0;d=(c[g>>2]|0)+1|0;c[g>>2]=d;e=a+4|0;h=c[e>>2]|0;f=h+10|0;if((d|0)<(h|0))a=c[a>>2]|0;else{c[e>>2]=f;d=MK(c[a>>2]|0,f<<2)|0;c[a>>2]=d;a=d;d=c[g>>2]|0}c[a+(d<<2)>>2]=b;return}function lo(a){a=a|0;var b=0,d=0;b=jC(a)|0;if(b|0){U1(c[(c[b+16>>2]|0)+112>>2]|0);while(1){if(!b)break;d=XA(a,b)|0;while(1){if(!d)break;YP(d);d=ZA(a,d)|0}WP(b);b=kC(a,b)|0}mo(a)}return}function mo(a){a=a|0;U1(c[(c[a+16>>2]|0)+152>>2]|0);if((yC(a)|0)!=(a|0))ZC(a,0,137483);return}function no(a){a=a|0;var d=0,e=0,f=0;oo(a);po(a,0);qo(a,0);ro(a,0);d=c[a+16>>2]|0;if(!(c[(c[d+8>>2]|0)+84>>2]|0)){d=b[d+136>>1]&14;if(d<<16>>16)Wm(a,d&65535)|0}else{d=jC(a)|0;while(1){if(!d)break;f=c[d+16>>2]|0;e=c[f+132>>2]|0;h[e>>3]=+h[f+16>>3]*.013888888888888888;h[e+8>>3]=+h[f+24>>3]*.013888888888888888;d=kC(a,d)|0}Zm(a,1)}tM(a);return}function oo(a){a=a|0;var d=0,e=0;oQ(a,2);b[(c[a+16>>2]|0)+176>>1]=2;c[47137]=2;d=jC(a)|0;while(1){if(!d)break;Zl(d);d=kC(a,d)|0}e=jC(a)|0;while(1){if(!e)break;d=XA(a,e)|0;while(1){if(!d)break;TC(d,137460,176,1)|0;tP(d)|0;d=ZA(a,d)|0}e=kC(a,e)|0}return}function po(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=(b|0)==0;if(h){wo(g);b=g}d=OD(a)|0;while(1){if(!d)break;if(!(Q2(KB(d)|0,108006,7)|0)){TC(d,137483,280,1)|0;uK(d);xo(b,d);po(d,0)}else po(d,b);d=PD(d)|0}if(h?(e=c[g+8>>2]|0,f=a+16|0,c[(c[f>>2]|0)+180>>2]=e,e|0):0){h=MK(c[g>>2]|0,(e<<2)+4|0)|0;c[(c[f>>2]|0)+184>>2]=h}l=i;return}function qo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0.0,j=0.0,k=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,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;Q=l;l=l+448|0;G=Q+400|0;F=Q+384|0;P=Q+344|0;O=Q+304|0;N=Q+248|0;D=Q+192|0;x=Q+152|0;y=Q+96|0;o=Q+72|0;d=Q+64|0;I=Q+32|0;J=Q;B=Q+416|0;u=Q+328|0;w=Q+288|0;K=Q+232|0;L=Q+176|0;M=Q+136|0;H=Q+80|0;n=c[a+60>>2]|0;if(0>1){so(b);E=c[15712]|0;c[d>>2]=KB(a)|0;w4(E,90723,d)|0}E=a+16|0;f=b+1|0;d=1;e=0;while(1){g=c[E>>2]|0;if((d|0)>(c[g+180>>2]|0))break;C=c[(c[g+184>>2]|0)+(d<<2)>>2]|0;qo(C,f);d=d+1|0;e=(tB(C)|0)+e|0}p=(tB(a)|0)-e|0;d=c[E>>2]|0;C=(c[d+180>>2]|0)+p|0;v=(C|0)==0;if(v?(c[d+12>>2]|0)==0:0){P=d+16|0;c[P>>2]=0;c[P+4>>2]=0;c[P+8>>2]=0;c[P+12>>2]=0;h[d+40>>3]=18.0;h[d+32>>3]=18.0}else{d=B+16|0;do if((kH(a,4,4,B)|0)>>>0>=3)if((c[d>>2]|0)==4?(c[B+28>>2]&2|0)!=0:0){e=GA(n,0,99190,0)|0;d=GA(n,1,99190,0)|0;if((e|0)!=0|(d|0)!=0){c[B+24>>2]=JK(C<<2)|0;break}else{c[o>>2]=KB(a)|0;gA(0,90577,o)|0;d=0;e=0;break}}else{d=0;e=0}else{c[d>>2]=3;d=0;e=0}while(0);z=JK(C<<5)|0;A=JK(C<<2)|0;s=B+24|0;n=(e|0)!=0;r=0;g=1;while(1){f=c[E>>2]|0;if((g|0)>(c[f+180>>2]|0))break;f=c[(c[f+184>>2]|0)+(g<<2)>>2]|0;t=z+(r<<5)|0;q=(c[f+16>>2]|0)+16|0;c[t>>2]=c[q>>2];c[t+4>>2]=c[q+4>>2];c[t+8>>2]=c[q+8>>2];c[t+12>>2]=c[q+12>>2];c[t+16>>2]=c[q+16>>2];c[t+20>>2]=c[q+20>>2];c[t+24>>2]=c[q+24>>2];c[t+28>>2]=c[q+28>>2];if(n&(c[s>>2]|0)!=0){t=ZO(f,e,0,0)|0;c[(c[s>>2]|0)+(r<<2)>>2]=t}c[A+(r<<2)>>2]=f;r=r+1|0;g=g+1|0}a:do if((p|0)>0){o=I+16|0;p=I+24|0;q=(d|0)!=0;n=jC(a)|0;e=r;while(1){if(!n)break a;f=c[n+16>>2]|0;g=f+112|0;if(!(c[g>>2]|0)){c[g>>2]=a;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=0;c[I+12>>2]=0;h[o>>3]=+h[f+96>>3]+ +h[f+88>>3];h[p>>3]=+h[f+80>>3];t=z+(e<<5)|0;c[t>>2]=c[I>>2];c[t+4>>2]=c[I+4>>2];c[t+8>>2]=c[I+8>>2];c[t+12>>2]=c[I+12>>2];c[t+16>>2]=c[I+16>>2];c[t+20>>2]=c[I+20>>2];c[t+24>>2]=c[I+24>>2];c[t+28>>2]=c[I+28>>2];if(q&(c[s>>2]|0)!=0){t=ZO(n,d,0,0)|0;c[(c[s>>2]|0)+(e<<2)>>2]=t}c[A+(e<<2)>>2]=n;e=e+1|0}n=kC(a,n)|0}}while(0);t=dH(C,z,B)|0;d=c[s>>2]|0;if(d|0)U1(d);to(J,2147483647.0,2147483647.0);s=J+16|0;to(u,-2147483647.0,-2147483647.0);c[s>>2]=c[u>>2];c[s+4>>2]=c[u+4>>2];c[s+8>>2]=c[u+8>>2];c[s+12>>2]=c[u+12>>2];g=I+16|0;n=I+8|0;o=I+24|0;p=J+8|0;q=J+24|0;r=c[15712]|0;d=0;while(1){if((d|0)>=(C|0))break;j=+(c[t+(d<<3)>>2]|0);m=+(c[t+(d<<3)+4>>2]|0);e=z+(d<<5)|0;c[I>>2]=c[e>>2];c[I+4>>2]=c[e+4>>2];c[I+8>>2]=c[e+8>>2];c[I+12>>2]=c[e+12>>2];c[I+16>>2]=c[e+16>>2];c[I+20>>2]=c[e+20>>2];c[I+24>>2]=c[e+24>>2];c[I+28>>2]=c[e+28>>2];i=+h[I>>3]+j;h[I>>3]=i;j=+h[g>>3]+j;h[g>>3]=j;k=+h[n>>3]+m;h[n>>3]=k;m=+h[o>>3]+m;h[o>>3]=m;h[J>>3]=+h[(+h[J>>3]>3];h[p>>3]=+h[(+h[p>>3]>3];h[s>>3]=+h[(+h[s>>3]>j?J:I)+16>>3];h[q>>3]=+h[(+h[q>>3]>m?J:I)+24>>3];e=c[A+(d<<2)>>2]|0;f=e+16|0;if((d|0)<(c[(c[E>>2]|0)+180>>2]|0)){u=(c[f>>2]|0)+16|0;c[u>>2]=c[I>>2];c[u+4>>2]=c[I+4>>2];c[u+8>>2]=c[I+8>>2];c[u+12>>2]=c[I+12>>2];c[u+16>>2]=c[I+16>>2];c[u+20>>2]=c[I+20>>2];c[u+24>>2]=c[I+24>>2];c[u+28>>2]=c[I+28>>2];if(0>1){so(b);c[y>>2]=KB(e)|0;h[y+8>>3]=i;h[y+16>>3]=k;h[y+24>>3]=j;h[y+32>>3]=m;w4(r,90556,y)|0}}else{u=(c[f>>2]|0)+16|0;c[F>>2]=c[I>>2];c[F+4>>2]=c[I+4>>2];c[F+8>>2]=c[I+8>>2];c[F+12>>2]=c[I+12>>2];c[G>>2]=c[g>>2];c[G+4>>2]=c[g+4>>2];c[G+8>>2]=c[g+8>>2];c[G+12>>2]=c[g+12>>2];uo(w,F,G);c[u>>2]=c[w>>2];c[u+4>>2]=c[w+4>>2];c[u+8>>2]=c[w+8>>2];c[u+12>>2]=c[w+12>>2];if(0>1){so(b);u=KB(e)|0;f=c[f>>2]|0;k=+h[f+16>>3];m=+h[f+24>>3];c[x>>2]=u;h[x+8>>3]=k;h[x+16>>3]=m;w4(r,90544,x)|0}}d=d+1|0}e=c[E>>2]|0;d=c[e+12>>2]|0;if(d|0){i=+h[d+24>>3];if(v){j=+h[d+32>>3];c[J>>2]=0;c[J+4>>2]=0;c[J+8>>2]=0;c[J+12>>2]=0;h[s>>3]=i;h[q>>3]=j;j=0.0;k=i}else{j=+h[J>>3];k=+h[s>>3]}m=i-(k-j);i=m*.5;if(m>0.0){h[J>>3]=j-i;h[s>>3]=k+i}}if((b|0)>0)i=+((c[B+8>>2]|0)>>>0)*.5;else i=0.0;j=+h[J>>3]-i;h[J>>3]=j;k=+h[s>>3]+i;h[s>>3]=k;m=-i-+h[e+56>>3]+ +h[p>>3];h[p>>3]=m;i=+h[e+88>>3]+i+ +h[q>>3];h[q>>3]=i;if(0>1){so(b);c[D>>2]=KB(a)|0;h[D+8>>3]=j;h[D+16>>3]=m;h[D+24>>3]=k;h[D+32>>3]=i;w4(r,90556,D)|0}d=0;while(1){if((d|0)>=(C|0))break;e=c[A+(d<<2)>>2]|0;f=e+16|0;if((d|0)<(c[(c[E>>2]|0)+180>>2]|0)){D=(c[f>>2]|0)+16|0;c[I>>2]=c[D>>2];c[I+4>>2]=c[D+4>>2];c[I+8>>2]=c[D+8>>2];c[I+12>>2]=c[D+12>>2];c[I+16>>2]=c[D+16>>2];c[I+20>>2]=c[D+20>>2];c[I+24>>2]=c[D+24>>2];c[I+28>>2]=c[D+28>>2];c[F>>2]=c[D>>2];c[F+4>>2]=c[D+4>>2];c[F+8>>2]=c[D+8>>2];c[F+12>>2]=c[D+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];vo(I,F,G);c[F>>2]=c[g>>2];c[F+4>>2]=c[g+4>>2];c[F+8>>2]=c[g+8>>2];c[F+12>>2]=c[g+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];vo(K,F,G);c[g>>2]=c[K>>2];c[g+4>>2]=c[K+4>>2];c[g+8>>2]=c[K+8>>2];c[g+12>>2]=c[K+12>>2];D=(c[f>>2]|0)+16|0;c[D>>2]=c[I>>2];c[D+4>>2]=c[I+4>>2];c[D+8>>2]=c[I+8>>2];c[D+12>>2]=c[I+12>>2];c[D+16>>2]=c[I+16>>2];c[D+20>>2]=c[I+20>>2];c[D+24>>2]=c[I+24>>2];c[D+28>>2]=c[I+28>>2];if(0>1){so(b);D=KB(e)|0;i=+h[I>>3];j=+h[n>>3];k=+h[g>>3];m=+h[o>>3];c[N>>2]=D;h[N+8>>3]=i;h[N+16>>3]=j;h[N+24>>3]=k;h[N+32>>3]=m;w4(r,90556,N)|0}}else{D=(c[f>>2]|0)+16|0;c[F>>2]=c[D>>2];c[F+4>>2]=c[D+4>>2];c[F+8>>2]=c[D+8>>2];c[F+12>>2]=c[D+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];vo(L,F,G);c[D>>2]=c[L>>2];c[D+4>>2]=c[L+4>>2];c[D+8>>2]=c[L+8>>2];c[D+12>>2]=c[L+12>>2];if(0>1){so(b);D=KB(e)|0;B=c[f>>2]|0;k=+h[B+16>>3];m=+h[B+24>>3];c[O>>2]=D;h[O+8>>3]=k;h[O+16>>3]=m;w4(r,90544,O)|0}}d=d+1|0}c[F>>2]=c[s>>2];c[F+4>>2]=c[s+4>>2];c[F+8>>2]=c[s+8>>2];c[F+12>>2]=c[s+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];vo(M,F,G);c[s>>2]=c[M>>2];c[s+4>>2]=c[M+4>>2];c[s+8>>2]=c[M+8>>2];c[s+12>>2]=c[M+12>>2];c[F>>2]=c[J>>2];c[F+4>>2]=c[J+4>>2];c[F+8>>2]=c[J+8>>2];c[F+12>>2]=c[J+12>>2];c[G>>2]=c[J>>2];c[G+4>>2]=c[J+4>>2];c[G+8>>2]=c[J+8>>2];c[G+12>>2]=c[J+12>>2];vo(H,F,G);c[J>>2]=c[H>>2];c[J+4>>2]=c[H+4>>2];c[J+8>>2]=c[H+8>>2];c[J+12>>2]=c[H+12>>2];O=(c[E>>2]|0)+16|0;c[O>>2]=c[J>>2];c[O+4>>2]=c[J+4>>2];c[O+8>>2]=c[J+8>>2];c[O+12>>2]=c[J+12>>2];c[O+16>>2]=c[J+16>>2];c[O+20>>2]=c[J+20>>2];c[O+24>>2]=c[J+24>>2];c[O+28>>2]=c[J+28>>2];if(0>1){so(b);O=KB(a)|0;i=+h[J>>3];j=+h[p>>3];k=+h[s>>3];m=+h[q>>3];c[P>>2]=O;h[P+8>>3]=i;h[P+16>>3]=j;h[P+24>>3]=k;h[P+32>>3]=m;w4(r,90556,P)|0}U1(z);U1(A);U1(t)}l=Q;return}function ro(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0.0,k=0.0,m=0.0,n=0.0,o=0,p=0.0,q=0.0,r=0,s=0,t=0,u=0;t=l;l=l+80|0;s=t+32|0;i=t+8|0;d=t;r=a+16|0;o=c[r>>2]|0;p=+h[o+16>>3];q=+h[o+24>>3];if(0>1){so(b);o=c[15712]|0;c[d>>2]=KB(a)|0;w4(o,90529,d)|0}o=(b|0)!=0;a:do if(o){d=jC(a)|0;e=c[15712]|0;while(1){if(!d)break a;f=d+16|0;g=c[f>>2]|0;if((c[g+112>>2]|0)==(a|0)?(u=g+16|0,h[u>>3]=+h[u>>3]+p,g=g+24|0,h[g>>3]=+h[g>>3]+q,0>1):0){so(b);u=KB(d)|0;g=c[f>>2]|0;m=+h[g+16>>3];n=+h[g+24>>3];c[i>>2]=u;h[i+8>>3]=m;h[i+16>>3]=n;w4(e,90544,i)|0}d=kC(a,d)|0}}else e=c[15712]|0;while(0);i=b+1|0;a=1;while(1){d=c[r>>2]|0;if((a|0)>(c[d+180>>2]|0))break;g=c[(c[d+184>>2]|0)+(a<<2)>>2]|0;if(o){f=g+16|0;d=c[f>>2]|0;j=+h[d+16>>3]+p;k=+h[d+24>>3]+q;m=+h[d+32>>3]+p;n=+h[d+40>>3]+q;if(0>1){so(b);c[s>>2]=KB(g)|0;h[s+8>>3]=j;h[s+16>>3]=k;h[s+24>>3]=m;h[s+32>>3]=n;w4(e,90556,s)|0;d=c[f>>2]|0}h[d+16>>3]=j;h[d+24>>3]=k;h[d+32>>3]=m;h[d+40>>3]=n}ro(g,i);a=a+1|0}l=t;return}function so(a){a=a|0;var b=0;b=c[15712]|0;while(1){if((a|0)<=0)break;T4(90574,b)|0;a=a+-1|0}return}function to(a,b,c){a=a|0;b=+b;c=+c;h[a>>3]=b;h[a+8>>3]=c;return}function uo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=(+h[c+8>>3]+ +h[b+8>>3])*.5;h[a>>3]=(+h[c>>3]+ +h[b>>3])*.5;h[a+8>>3]=d;return}function vo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+h[b+8>>3]-+h[c+8>>3];h[a>>3]=+h[b>>3]-+h[c>>3];h[a+8>>3]=d;return}function wo(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function xo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=a+8|0;d=(c[g>>2]|0)+1|0;c[g>>2]=d;e=a+4|0;h=c[e>>2]|0;f=h+10|0;if((d|0)<(h|0))a=c[a>>2]|0;else{c[e>>2]=f;d=MK(c[a>>2]|0,f<<2)|0;c[a>>2]=d;a=d;d=c[g>>2]|0}c[a+(d<<2)>>2]=b;return}function yo(a){a=a|0;var b=0;b=jC(a)|0;while(1){if(!b)break;WP(b);b=kC(a,b)|0}zo(a);return}function zo(a){a=a|0;var b=0,d=0,e=0;b=a+16|0;a=1;while(1){e=c[b>>2]|0;d=c[e+184>>2]|0;if((a|0)>(c[e+180>>2]|0))break;e=c[d+(a<<2)>>2]|0;CK(c[(c[e+16>>2]|0)+12>>2]|0);zo(e);a=a+1|0}U1(d);return}function Ao(a){a=a|0;var b=0,d=0,e=0;YC(a,1,137447,304,1);HP(a)|0;b=JK(((tB(a)|0)<<2)+4|0)|0;e=a+16|0;c[(c[e>>2]|0)+152>>2]=b;b=0;d=jC(a)|0;while(1){if(!d)break;Bo(d);c[(c[(c[e>>2]|0)+152>>2]|0)+(b<<2)>>2]=d;c[(c[d+16>>2]|0)+120>>2]=b;b=b+1|0;d=kC(a,d)|0}e=GA(a,2,92493,0)|0;d=jC(a)|0;while(1){if(!d)break;b=XA(a,d)|0;while(1){if(!b)break;Co(b,e);b=ZA(a,b)|0}d=kC(a,d)|0}Do(a);return}function Bo(a){a=a|0;var b=0;sP(a);b=JK((e[(c[(xC(a)|0)+16>>2]|0)+176>>1]|0)<<3)|0;c[(c[a+16>>2]|0)+132>>2]=b;qQ(a,c[(c[(xC(a)|0)+16>>2]|0)+116>>2]&1);return}function Co(a,b){a=a|0;b=b|0;var d=0,e=0.0;TC(a,137460,176,1)|0;e=+_O(a,c[47174]|0,1.0,0.0);d=a+16|0;h[(c[d>>2]|0)+128>>3]=e;e=+_O(a,b,+h[1371],0.0);h[(c[d>>2]|0)+136>>3]=e;tP(a)|0;return}function Do(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+32|0;q=r+16|0;p=r;m=r+24|0;n=GA(b,1,102623,0)|0;a:do if(n|0){o=GA(b,1,90660,0)|0;i=b+16|0;j=(o|0)==0;k=c[15712]|0;g=0;while(1){e=c[(c[(c[i>>2]|0)+152>>2]|0)+(g<<2)>>2]|0;if(!e)break a;b=RA(e,n)|0;do if(a[b>>0]|0){f=e+16|0;d=c[(c[f>>2]|0)+132>>2]|0;a[m>>0]=0;c[p>>2]=d;c[p+4>>2]=d+8;c[p+8>>2]=m;if((b5(b,101749,p)|0)<=1){c[q>>2]=KB(e)|0;c[q+4>>2]=b;w4(k,90664,q)|0;break}b:do if(+h[23293]>0.0){b=0;while(1){if((b|0)==2)break b;s=d+(b<<3)|0;h[s>>3]=+h[s>>3]/+h[23293];b=b+1|0}}while(0);b=c[f>>2]|0;a[b+119>>0]=1;if((a[m>>0]|0)!=33){if(j)break;if(!((dP(RA(e,o)|0)|0)<<24>>24))break;b=c[f>>2]|0}a[b+119>>0]=3}while(0);g=g+1|0}}while(0);l=r;return}function Eo(a){a=a|0;var b=0,c=0;c=jC(a)|0;while(1){if(!c)break;b=XA(a,c)|0;while(1){if(!b)break;YP(b);b=ZA(a,b)|0}WP(c);c=kC(a,c)|0}Fo(a);return}function Fo(a){a=a|0;Go(a);a=a+16|0;U1(c[(c[a>>2]|0)+152>>2]|0);U1(c[(c[a>>2]|0)+140>>2]|0);return}function Go(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=a+16|0;f=1;while(1){e=c[g>>2]|0;b=c[e+184>>2]|0;if((f|0)>(c[e+180>>2]|0))break;e=c[b+(f<<2)>>2]|0;b=e+16|0;CK(c[(c[b>>2]|0)+12>>2]|0);d=c[(c[b>>2]|0)+140>>2]|0;if(d|0){U1(c[d>>2]|0);U1(c[(c[b>>2]|0)+140>>2]|0)}Go(e);f=f+1|0}U1(b);if((yC(a)|0)!=(a|0))VC(a,137483)|0;return}function Ho(a,b){a=a|0;b=b|0;c[b+4>>2]=GA(a,0,90716,0)|0;c[b+8>>2]=GA(a,0,141116,0)|0;c[b+12>>2]=GA(a,0,141048,0)|0;c[b>>2]=a;c[b+16>>2]=0;c[b+36>>2]=kH(a,2,4,b+20|0)|0;return}function Io(a){a=a|0;var d=0,e=0;oQ(a,2);d=JK(56)|0;e=a+16|0;c[(c[e>>2]|0)+140>>2]=d;d=(ZO(a,GA(a,0,91374,0)|0,2,2)|0)&65535;d=(d&65535)<10?d:10;b[(c[e>>2]|0)+176>>1]=d;c[47137]=d&65535;Jo(a,0,a);fp(a);Ao(a);return}function Jo(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;j=m;k=(d|0)==0;if(k){Ko(j);d=j}g=e+16|0;f=OD(a)|0;while(1){if(!f)break;if(!(Q2(KB(f)|0,108006,7)|0)){TC(f,137483,280,1)|0;n=JK(56)|0;p=c[f+16>>2]|0;c[p+140>>2]=n;o=c[g>>2]|0;b[p+176>>1]=b[o+176>>1]|0;c[n+44>>2]=(c[(c[o+140>>2]|0)+44>>2]|0)+1;c[n+48>>2]=e;Lo(d,f);Jo(f,0,f)}else Jo(f,d,e);f=PD(f)|0}if(k?(h=c[j+8>>2]|0,i=a+16|0,c[(c[i>>2]|0)+180>>2]=h,h|0):0){p=MK(c[j>>2]|0,(h<<2)+4|0)|0;c[(c[i>>2]|0)+184>>2]=p}l=m;return}function Ko(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function Lo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=a+8|0;d=(c[g>>2]|0)+1|0;c[g>>2]=d;e=a+4|0;h=c[e>>2]|0;f=h+10|0;if((d|0)<(h|0))a=c[a>>2]|0;else{c[e>>2]=f;d=MK(c[a>>2]|0,f<<2)|0;c[a>>2]=d;a=d;d=c[g>>2]|0}c[a+(d<<2)>>2]=b;return}function Mo(a){a=a|0;var b=0,c=0;b=l;l=l+64|0;c=b;Ho(a,c);No(a,c);Oo(a);Po(a,a);Qo(a);l=b;return}function No(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0,w=0.0,x=0.0;s=l;l=l+64|0;r=s+48|0;e=s+40|0;o=s+56|0;n=s+52|0;m=s;if(0){q=c[15712]|0;c[e>>2]=KB(b)|0;w4(q,90723,e)|0}e=jC(b)|0;while(1){if(!e)break;c[(c[e+16>>2]|0)+164>>2]=0;e=kC(b,e)|0}p=Ro(b,d)|0;q=Iv(p,o,n)|0;e=q;while(1){k=e+4|0;f=c[e>>2]|0;if(!f)break;gp(f,m);e=jC(f)|0;while(1){if(!e)break;g=kC(f,e)|0;i=e+16|0;j=c[i>>2]|0;if(c[j+212>>2]|0){v=So(e,f)|0;No(v,d);v=c[(c[v+16>>2]|0)+140>>2]|0;u=+h[v+24>>3];j=c[i>>2]|0;h[j+32>>3]=u;t=+h[v+32>>3];h[j+40>>3]=t;u=u*36.0;h[j+88>>3]=u;h[j+96>>3]=u;h[j+80>>3]=t*72.0;e=g;continue}if(c[(c[j+112>>2]|0)+8>>2]|0){e=g;continue}wC(f,e)|0;e=g}if((tB(f)|0)<=1){e=k;continue}if((c[d>>2]|0)==(b|0))Lq(f)|0;tp(f,m);e=k}e=c[o>>2]|0;if((e|0)<=1)if((e|0)==1){BP(c[q>>2]|0);e=0}else e=0;else{if(!(c[n>>2]|0))f=0;else{f=JK(e)|0;a[f>>0]=1;e=c[o>>2]|0}c[d+40>>2]=f;e=QG(e,q,0,d+20|0)|0;U1(f)}To(p,c[o>>2]|0,q,e,b,d);U1(e);f=jC(p)|0;while(1){if(!f)break;g=c[f+16>>2]|0;e=c[g+212>>2]|0;if(!e){e=c[(c[g+112>>2]|0)+8>>2]|0;if(e|0){o=c[g+132>>2]|0;v=c[(c[e+16>>2]|0)+132>>2]|0;h[v>>3]=+h[o>>3];h[v+8>>3]=+h[o+8>>3]}}else{o=c[g+132>>2]|0;x=+h[g+32>>3];w=+h[o>>3]-x*.5;v=c[(c[e+16>>2]|0)+140>>2]|0;h[v+8>>3]=w;t=+h[g+40>>3];u=+h[o+8>>3]-t*.5;h[v+16>>3]=u;h[v+24>>3]=x+w;h[v+32>>3]=t+u}f=kC(p,f)|0}v=(c[(c[b+16>>2]|0)+140>>2]|0)+8|0;o=(c[(c[p+16>>2]|0)+140>>2]|0)+8|0;c[v>>2]=c[o>>2];c[v+4>>2]=c[o+4>>2];c[v+8>>2]=c[o+8>>2];c[v+12>>2]=c[o+12>>2];c[v+16>>2]=c[o+16>>2];c[v+20>>2]=c[o+20>>2];c[v+24>>2]=c[o+24>>2];c[v+28>>2]=c[o+28>>2];Uo(p,q);U1(q);if(0){v=c[15712]|0;c[r>>2]=KB(b)|0;w4(v,90734,r)|0}l=s;return}function Oo(b){b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0.0,j=0.0,k=0;d=jC(b)|0;while(1){if(!d)break;e=c[d+16>>2]|0;if(a[e+118>>0]|0){k=c[(c[(c[e+212>>2]|0)+16>>2]|0)+140>>2]|0;j=+h[k+24>>3]-+h[k+8>>3];i=+h[k+32>>3]-+h[k+16>>3];g=j*36.0;f=i*36.0;k=c[e+132>>2]|0;h[k>>3]=j*.5;h[k+8>>3]=i*.5;h[e+32>>3]=j;h[e+40>>3]=i;h[e+96>>3]=g;h[e+88>>3]=g;h[e+80>>3]=i*72.0;e=c[(c[e+12>>2]|0)+44>>2]|0;h[e>>3]=g;h[e+8>>3]=f;i=-g;h[e+16>>3]=i;h[e+24>>3]=f;h[e+32>>3]=i;f=-f;h[e+40>>3]=f;h[e+48>>3]=g;h[e+56>>3]=f}d=kC(b,d)|0}return}function Po(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0.0,i=0,j=0,k=0.0,l=0,m=0.0,n=0,o=0.0,p=0;i=a+16|0;j=c[(c[i>>2]|0)+140>>2]|0;f=+h[j+8>>3];g=+h[j+16>>3];j=(a|0)!=(b|0);a:do if(j){d=jC(a)|0;while(1){if(!d){a=1;break a}e=c[d+16>>2]|0;if((c[e+212>>2]|0)==(a|0)){e=c[e+132>>2]|0;h[e>>3]=+h[e>>3]+f;e=e+8|0;h[e>>3]=+h[e>>3]+g}d=kC(a,d)|0}}else a=1;while(0);while(1){d=c[i>>2]|0;if((a|0)>(c[d+180>>2]|0))break;d=c[(c[d+184>>2]|0)+(a<<2)>>2]|0;if(j){e=c[(c[d+16>>2]|0)+140>>2]|0;p=e+8|0;n=e+16|0;l=e+24|0;e=e+32|0;o=+h[n>>3]+g;m=+h[l>>3]+f;k=+h[e>>3]+g;h[p>>3]=+h[p>>3]+f;h[n>>3]=o;h[l>>3]=m;h[e>>3]=k}Po(d,b);a=a+1|0}return}function Qo(a){a=a|0;var b=0,d=0,e=0.0,f=0.0,g=0.0;b=a+16|0;a=c[b>>2]|0;d=c[a+140>>2]|0;g=+h[d+16>>3]*72.0;f=+h[d+24>>3]*72.0;e=+h[d+32>>3]*72.0;h[a+16>>3]=+h[d+8>>3]*72.0;h[a+24>>3]=g;h[a+32>>3]=f;h[a+40>>3]=e;a=1;while(1){d=c[b>>2]|0;if((a|0)>(c[d+180>>2]|0))break;Qo(c[(c[d+184>>2]|0)+(a<<2)>>2]|0);a=a+1|0}return}function Ro(d,e){d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=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;y=l;l=l+160|0;s=y+24|0;t=y+8|0;g=y;f=y+56|0;w=e+16|0;x=c[w>>2]|0;c[w>>2]=x+1;c[s>>2]=x;m4(f,90796,s)|0;if(0>1){x=c[15712]|0;w=KB(d)|0;c[g>>2]=f;c[g+4>>2]=w;w4(x,90803,g)|0};a[s>>0]=a[18588]|0;a[s+1>>0]=a[18589]|0;a[s+2>>0]=a[18590]|0;a[s+3>>0]=a[18591]|0;x=oB(91156,s,0)|0;TC(x,137483,280,1)|0;v=JK(56)|0;w=x+16|0;o=c[w>>2]|0;c[o+140>>2]=v;v=d+16|0;b[o+176>>1]=b[(c[v>>2]|0)+176>>1]|0;_o(d,x,92507);_o(d,x,93112);_o(d,x,91202);o=e+4|0;p=s+16|0;q=s+8|0;r=s+24|0;j=0;n=1;while(1){f=c[v>>2]|0;if((n|0)>(c[f+180>>2]|0))break;c[s>>2]=c[332];c[s+4>>2]=c[333];c[s+8>>2]=c[334];c[s+12>>2]=c[335];c[s+16>>2]=c[336];c[s+20>>2]=c[337];c[s+24>>2]=c[338];c[s+28>>2]=c[339];g=c[(c[f+184>>2]|0)+(n<<2)>>2]|0;uK(g);i=$o(x,KB(g)|0)|0;k=i+16|0;f=c[k>>2]|0;c[f+212>>2]=g;m=j+1|0;c[f+120>>2]=j;if(c[o>>2]|0)ap(g,i,e,s);f=jC(g)|0;while(1){if(!f)break;c[(c[f+16>>2]|0)+164>>2]=i;f=kC(g,f)|0}f=c[k>>2]|0;if(a[f+119>>0]|0){k=c[f+132>>2]|0;h[k>>3]=(+h[p>>3]+ +h[s>>3])*.5;h[k+8>>3]=(+h[r>>3]+ +h[q>>3])*.5}j=m;n=n+1|0}k=jC(d)|0;while(1){if(!k)break;f=k+16|0;g=c[f>>2]|0;if(!(c[g+164>>2]|0)){i=g+212|0;s=c[i>>2]|0;if(s|0?(s|0)!=(c[(c[(c[v>>2]|0)+140>>2]|0)+48>>2]|0):0){u=18;break}c[i>>2]=d;if(!(a[g+118>>0]|0)){i=$o(x,KB(k)|0)|0;g=c[f>>2]|0;c[g+164>>2]=i;i=c[i+16>>2]|0;c[i+120>>2]=j;h[i+32>>3]=+h[g+32>>3];h[i+40>>3]=+h[g+40>>3];h[i+88>>3]=+h[g+88>>3];h[i+96>>3]=+h[g+96>>3];h[i+80>>3]=+h[g+80>>3];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];f=a[g+119>>0]|0;if(f<<24>>24){e=c[g+132>>2]|0;s=c[i+132>>2]|0;h[s>>3]=+h[e>>3];h[s+8>>3]=+h[e+8>>3];a[i+119>>0]=f}c[(c[i+112>>2]|0)+8>>2]=k;f=j+1|0}else f=j}else f=j;k=kC(d,k)|0;j=f}if((u|0)==18){e=KB(k)|0;s=KB(d)|0;u=KB(c[(c[f>>2]|0)+212>>2]|0)|0;c[t>>2]=e;c[t+4>>2]=s;c[t+8>>2]=u;gA(1,90826,t)|0;bb(187212,1)}m=jC(d)|0;while(1){if(!m)break;n=c[(c[m+16>>2]|0)+164>>2]|0;o=n+16|0;i=XA(d,m)|0;while(1){if(!i)break;f=c[(c[(c[((c[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+164>>2]|0;if((f|0)!=(n|0)){if(f>>>0>n>>>0)k=iB(x,n,f,0,1)|0;else k=iB(x,f,n,0,1)|0;TC(k,137460,176,1)|0;g=c[i+16>>2]|0;u=c[k+16>>2]|0;h[u+136>>3]=+h[g+136>>3];h[u+128>>3]=+h[g+128>>3];f=c[(c[f+16>>2]|0)+112>>2]|0;g=f+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[(c[o>>2]|0)+112>>2]|0;t=g+4|0;c[t>>2]=(c[t>>2]|0)+1;if(!(c[u+172>>2]|0)){c[f>>2]=(c[f>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+1}bp(k,i)}i=ZA(d,i)|0}m=kC(d,m)|0}f=c[(c[v>>2]|0)+140>>2]|0;g=c[f>>2]|0;if(g|0){i=JK((c[f+4>>2]<<4)+16|0)|0;c[c[(c[w>>2]|0)+140>>2]>>2]=i;f=0;while(1){if(!(c[g>>2]|0))break;m=c[(c[(c[g+4>>2]|0)+16>>2]|0)+164>>2]|0;if(m){cp(d,g);n=$o(x,193772)|0;o=n+16|0;c[(c[o>>2]|0)+120>>2]=j;if(n>>>0>m>>>0)k=iB(x,m,n,0,1)|0;else k=iB(x,n,m,0,1)|0;TC(k,137460,176,1)|0;u=c[g>>2]|0;t=c[u+16>>2]|0;v=c[k+16>>2]|0;h[v+136>>3]=+h[t+136>>3];h[v+128>>3]=+h[t+128>>3];bp(k,u);u=c[(c[o>>2]|0)+112>>2]|0;v=u+4|0;c[v>>2]=(c[v>>2]|0)+1;v=c[(c[m+16>>2]|0)+112>>2]|0;t=v+4|0;c[t>>2]=(c[t>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1;c[v>>2]=(c[v>>2]|0)+1;c[i+4>>2]=n;h[i+8>>3]=+h[g+8>>3];c[i>>2]=k;f=f+1|0;i=i+16|0;j=j+1|0}g=g+16|0}c[(c[(c[w>>2]|0)+140>>2]|0)+4>>2]=f}l=y;return x|0}function So(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0,i=0,j=0,k=0,l=0;l=c[a+16>>2]|0;k=c[l+212>>2]|0;l=c[(c[l+112>>2]|0)+4>>2]|0;do if(l|0){j=JK((l<<4)+16|0)|0;f=Xo(a,b)|0;g=f+8|0;b=0;e=f;while(1){if(!(c[e>>2]|0))break;i=e+24|0;if(!(c[i>>2]|0))d=+h[g>>3]+6.283185307179586;else d=+h[e+32>>3];b=Yo(a,e,j,b,d)|0;e=i}if((b|0)==(l|0)){a=c[(c[k+16>>2]|0)+140>>2]|0;c[a>>2]=j;c[a+4>>2]=l;U1(f);break}else qa(90742,90752,766,90761)}while(0);return k|0}function To(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 i=0.0,j=0,k=0.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.0,H=0.0;B=l;l=l+32|0;x=B+16|0;A=B;m=c[g+8>>2]|0;j=c[g+12>>2]|0;y=(c[g>>2]|0)==(f|0);z=(b|0)!=0;a:do if(z){p=c[(c[d>>2]|0)+16>>2]|0;k=+h[p+16>>3];m=~~(k+(k>=0.0?.5:-.5));c[A>>2]=m;k=+h[p+24>>3];g=~~(k+(k>=0.0?.5:-.5));u=A+4|0;c[u>>2]=g;k=+h[p+32>>3];n=~~(k+(k>=0.0?.5:-.5));v=A+8|0;c[v>>2]=n;k=+h[p+40>>3];p=~~(k+(k>=0.0?.5:-.5));w=A+12|0;c[w>>2]=p;if((b|0)>1){q=c[e>>2]|0;t=c[e+4>>2]|0;m=q+m|0;c[A>>2]=m;b=t+g|0;c[u>>2]=b;n=q+n|0;c[v>>2]=n;q=x+4|0;r=x+8|0;s=x+12|0;o=e;g=d;t=t+p|0;p=b;while(1){g=g+4|0;j=o+8|0;c[w>>2]=t;b=c[g>>2]|0;if(!b){j=0;r=p;s=t;break a}E=c[b+16>>2]|0;G=+h[E+16>>3];i=+h[E+24>>3];k=+h[E+32>>3];H=+h[E+40>>3];E=~~(H+(H>=0.0?.5:-.5));c[s>>2]=E;b=c[j>>2]|0;F=c[o+12>>2]|0;D=b+~~(G+(G>=0.0?.5:-.5))|0;c[x>>2]=D;C=F+~~(i+(i>=0.0?.5:-.5))|0;c[q>>2]=C;b=b+~~(k+(k>=0.0?.5:-.5))|0;c[r>>2]=b;E=F+E|0;c[s>>2]=E;D=c[((m|0)<(D|0)?A:x)>>2]|0;c[A>>2]=D;C=c[((p|0)<(C|0)?A:x)+4>>2]|0;c[u>>2]=C;b=c[((n|0)>(b|0)?A:x)+8>>2]|0;c[v>>2]=b;o=j;t=c[((t|0)>(E|0)?A:x)+12>>2]|0;m=D;p=C;n=b}}else{j=0;r=g;s=p}}else{c[A>>2]=0;c[A+4>>2]=0;n=ZO(f,m,54,3)|0;c[A+8>>2]=n;s=ZO(f,j,36,3)|0;c[A+12>>2]=s;j=1;m=0;r=0}while(0);b=f+16|0;o=c[b>>2]|0;g=c[o+12>>2]|0;if(g){H=+h[g+24>>3];g=m-n+~~(H+(H>=0.0?.5:-.5))|0;if((g|0)>0){g=g>>>1;m=m-g|0;c[A>>2]=m;n=n+g|0;c[A+8>>2]=n;g=0}else g=0}else g=j;if(y|(g|0)!=0){j=0;g=o}else{j=ZO(a,c[47144]|0,8,0)|0;g=c[b>>2]|0}q=j-m|0;p=~~(+h[g+56>>3]+ +(j-r|0));c[A>>2]=0;c[A+4>>2]=0;o=q+j+n|0;c[A+8>>2]=o;b=~~(+h[g+88>>3]+ +(j+p|0)+ +(s|0));c[A+12>>2]=b;b:do if(z){g=e;c:while(1){n=d+4|0;j=c[d>>2]|0;if(!j)break b;if(!g){m=0;d=q;g=p}else{m=g+8|0;d=(c[g>>2]|0)+q|0;g=(c[g+4>>2]|0)+p|0}k=+(d|0)*.013888888888888888;i=+(g|0)*.013888888888888888;d=jC(j)|0;while(1){if(!d){d=n;g=m;continue c}F=c[(c[d+16>>2]|0)+132>>2]|0;h[F>>3]=+h[F>>3]+k;F=F+8|0;h[F>>3]=+h[F>>3]+i;d=kC(j,d)|0}}}while(0);F=c[(c[a+16>>2]|0)+140>>2]|0;E=F+8|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[E+12>>2]=0;h[F+24>>3]=+(o|0)*.013888888888888888;h[F+32>>3]=+(b|0)*.013888888888888888;l=B;return}function Uo(a,b){a=a|0;b=b|0;var d=0,e=0;while(1){d=c[b>>2]|0;if(!d)break;Vo(d);VC(d,137483)|0;b=b+4|0}b=c[c[(c[a+16>>2]|0)+140>>2]>>2]|0;if(b|0)U1(b);Vo(a);VC(a,137483)|0;d=jC(a)|0;while(1){if(!d)break;e=kC(a,d)|0;b=XA(a,d)|0;while(1){if(!b)break;U1(c[(c[b+16>>2]|0)+172>>2]|0);VC(b,137460)|0;b=ZA(a,b)|0}Wo(d);d=e}sB(a)|0;return}function Vo(a){a=a|0;U1(c[(c[a+16>>2]|0)+140>>2]|0);return}function Wo(a){a=a|0;var b=0;b=a+16|0;U1(c[(c[b>>2]|0)+112>>2]|0);U1(c[(c[b>>2]|0)+132>>2]|0);VC(a,137447)|0;return}function Xo(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0.0,i=0,j=0,k=0,l=0,m=0;k=a+16|0;l=c[c[(c[k>>2]|0)+112>>2]>>2]|0;m=JK((l*24|0)+24|0)|0;i=0;j=aB(b,a)|0;while(1){if(!j)break;f=c[j>>2]&3;e=c[((f|0)==2?j:j+-48|0)+40>>2]|0;if((e|0)==(a|0))e=c[((f|0)==3?j:j+48|0)+40>>2]|0;e=c[(c[e+16>>2]|0)+132>>2]|0;f=c[(c[k>>2]|0)+132>>2]|0;g=+h[e>>3]-+h[f>>3];d=+h[e+8>>3]-+h[f+8>>3];c[m+(i*24|0)>>2]=j;h[m+(i*24|0)+8>>3]=+K(+d,+g);h[m+(i*24|0)+16>>3]=d*d+g*g;i=i+1|0;j=bB(b,j,a)|0}if((i|0)!=(l|0))qa(90775,90752,642,90784);o4(m,l,24,67);a:do if((l|0)>1){j=l+-1|0;e=0;b:while(1){if((e|0)>=(j|0))break a;g=+h[m+(e*24|0)+8>>3];f=e+1|0;i=f;while(1){if((i|0)>=(l|0))break;if(!(+h[m+(i*24|0)+8>>3]==g))break;i=i+1|0}if((i|0)==(f|0)){e=f;continue}if((i|0)==(l|0))d=3.141592653589793;else d=+h[m+(i*24|0)+8>>3];d=(d-g)/+(i-e|0);d=d>.03490658503988659?.03490658503988659:d;g=0.0;while(1){if((e|0)>=(i|0))continue b;k=m+(e*24|0)+8|0;h[k>>3]=+h[k>>3]+g;g=g+d;e=e+1|0}}}while(0);return m|0}function Yo(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=+g;var i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0.0,q=0;k=c[d>>2]|0;n=c[k+16>>2]|0;m=b[n+168>>1]|0;o=m<<16>>16;j=c[k>>2]&3;i=c[((j|0)==2?k:k+-48|0)+40>>2]|0;if((i|0)==(a|0))i=c[((j|0)==3?k:k+48|0)+40>>2]|0;p=+h[d+8>>3];g=(g-p)/+(m<<16>>16);g=g>.03490658503988659?.03490658503988659:g;m=i>>>0>a>>>0;l=m?g:-g;d=m?1:-1;k=0;i=c[n+172>>2]|0;j=m?f:f+-1+o|0;g=m?p:g*+(o+-1|0)+p;while(1){if((k|0)>=(o|0))break;n=c[i>>2]|0;c[e+(j<<4)>>2]=n;m=c[n>>2]&3;q=(m|0)==3?n:n+48|0;c[e+(j<<4)+4>>2]=c[((c[(c[(c[q+40>>2]|0)+16>>2]|0)+164>>2]|0)==(a|0)?q:(m|0)==2?n:n+-48|0)+40>>2];h[e+(j<<4)+8>>3]=g;k=k+1|0;i=i+4|0;j=j+d|0;g=g+l}return o+f|0}function Zo(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;c=+h[a+8>>3];d=+h[b+8>>3];if(!(c>d))if(!(c>3];c=+h[b+16>>3];if(d>c)a=1;else a=(d>31}else a=-1;else a=1;return a|0}function _o(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=GA(a,0,c,0)|0;do if(d|0){a=RA(a,d)|0;d=GA(b,0,c,0)|0;if(!d){GA(b,0,c,a)|0;break}else{KA(b,d,a)|0;break}}while(0);return}function $o(a,b){a=a|0;b=b|0;var d=0,f=0;b=tC(a,b,1)|0;TC(b,137447,304,1)|0;f=JK(32)|0;d=b+16|0;c[(c[d>>2]|0)+112>>2]=f;a=KK((e[(c[a+16>>2]|0)+176>>1]|0)<<3)|0;c[(c[d>>2]|0)+132>>2]=a;return b|0}function ap(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+80|0;n=q+56|0;m=q+32|0;p=q;o=q+64|0;i=c[e+4>>2]|0;k=RA(b,i)|0;do if(a[k>>0]|0){if((c[e>>2]|0)!=(b|0)){e=RA(QD(b)|0,i)|0;if((e|0)==(k|0))break;if(!(s2(k,e)|0))break}a[o>>0]=0;e=p+8|0;i=p+16|0;j=p+24|0;c[m>>2]=p;c[m+4>>2]=e;c[m+8>>2]=i;c[m+12>>2]=j;c[m+16>>2]=o;if((b5(k,90937,m)|0)<=3){c[n>>2]=KB(b)|0;c[n+4>>2]=k;gA(0,90955,n)|0;break}g=+h[23293];if(g>0.0){h[p>>3]=+h[p>>3]/g;h[e>>3]=+h[e>>3]/g;h[i>>3]=+h[i>>3]/g;h[j>>3]=+h[j>>3]/g}e=a[o>>0]|0;if(e<<24>>24==33)a[(c[d+16>>2]|0)+119>>0]=3;else a[(c[d+16>>2]|0)+119>>0]=e<<24>>24==63?2:1;c[f>>2]=c[p>>2];c[f+4>>2]=c[p+4>>2];c[f+8>>2]=c[p+8>>2];c[f+12>>2]=c[p+12>>2];c[f+16>>2]=c[p+16>>2];c[f+20>>2]=c[p+20>>2];c[f+24>>2]=c[p+24>>2];c[f+28>>2]=c[p+28>>2]}while(0);l=q;return}function bp(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;g=a+16|0;f=c[g>>2]|0;a=b[f+168>>1]|0;f=c[f+172>>2]|0;if(!f){a=a<<16>>16;e=a;a=KK((a<<2)+4|0)|0}else{a=a<<16>>16;e=a;a=MK(f,(a<<2)+4|0)|0}c[a+(e<<2)>>2]=d;d=c[g>>2]|0;c[d+172>>2]=a;d=d+168|0;b[d>>1]=(b[d>>1]|0)+1<<16>>16;return}function cp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+48|0;h=i+24|0;g=i;e=c[b>>2]|0;d=c[e>>2]&3;f=c[((d|0)==2?e:e+-48|0)+40>>2]|0;d=c[((d|0)==3?e:e+48|0)+40>>2]|0;b=l2(KB(a)|0)|0;j=l2(KB(f)|0)|0;j=(b+8+j+(l2(KB(d)|0)|0)|0)>999;b=KB(a)|0;if(j){d=KB(d)|0;j=KB(f)|0;h=(c[e>>2]|0)>>>4;c[g>>2]=b;c[g+4>>2]=d;c[g+8>>2]=j;j=g+16|0;c[j>>2]=h;c[j+4>>2]=0;m4(193772,90895,g)|0}else{d=c[(c[d+16>>2]|0)+120>>2]|0;j=c[(c[f+16>>2]|0)+120>>2]|0;g=(c[e>>2]|0)>>>4;c[h>>2]=b;c[h+4>>2]=d;c[h+8>>2]=j;j=h+16|0;c[j>>2]=g;c[j+4>>2]=0;m4(193772,90914,h)|0}l=i;return}function dp(a){a=a|0;var d=0,e=0,f=0.0,g=0.0,i=0,j=0,k=0;j=4;i=T1(40)|0;c[i>>2]=0;g=+h[23293];o=0;f=+Z(1,a|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=V6(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)!=1){h[23293]=f;o=0;ia(102,a|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=V6(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)!=1){i=U6(187212,1,i|0,j|0)|0;j=z;o=0;e=o;o=0;if((e|0)!=0&(p|0)!=0){d=V6(c[e>>2]|0,i|0,j|0)|0;if(!d)bb(e|0,p|0);z=p}else d=-1;if((d|0)!=1)d=0;else d=z}else d=z}else d=z;while(1){if(d|0)break;o=0;ia(103,a|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=V6(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;continue}o=0;$(22,a|0)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){e=V6(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;continue}if(b[(c[a+16>>2]|0)+136>>1]&14){o=0;ia(104,a|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=V6(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1){d=z;continue}}o=0;ja(22,a|0,0);d=o;o=0;if((d|0)!=0&(p|0)!=0){e=V6(c[d>>2]|0,i|0,j|0)|0;if(!e)bb(d|0,p|0);z=p}else e=-1;if((e|0)==1)d=z;else{k=12;break}}if((k|0)==12)h[23293]=g;U1(i|0);return}function ep(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;e=a+16|0;f=b[(c[e>>2]|0)+136>>1]&14;d=f&65535;if((f&65535)>8){if(f<<16>>16==12){if(Um(a,22,10)|0){c[47134]=2;h=5}}else h=5;do if((h|0)==5)if(!(b[(c[e>>2]|0)+136>>1]&1)){Wm(a,d)|0;break}else{gA(0,90998,g)|0;d=2;break}while(0);c[47134]=0}if((c[47138]|0)<1)Wm(a,d)|0;l=i;return}function fp(a){a=a|0;var b=0.0,d=0.0,e=0;e=l;l=l+16|0;c[46474]=1;c[46475]=1;c[46477]=-1;c[46479]=50;h[23245]=0.0;h[23240]=0.0;h[23241]=1.0;c[46478]=ZO(a,GA(a,0,91061,0)|0,600,0)|0;d=+_O(a,GA(a,0,91202,0)|0,.3,0.0);h[23242]=d;h[1371]=d;if(-1.0==-1.0)b=+_O(a,GA(a,0,91069,0)|0,-1.0,0.0);else b=-1.0;h[23243]=b;c[46476]=1;a=mm(a,2,185904)|0;c[46488]=a;if(!a){gA(0,91072,e)|0;c[46476]=2}c[46504]=(O(c[46478]|0,c[46479]|0)|0)/100|0;d=+h[23242];h[23247]=d*d;if(c[46474]|0){b=+h[23245];if(b<=0.0){b=d*3.0;h[23245]=b}h[23246]=b*b}l=e;return}function gp(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,g=0,i=0,j=0;j=l;l=l+16|0;d=j;g=c[c[(c[a+16>>2]|0)+140>>2]>>2]|0;i=hp(a,b)|0;ip(d,a,g);e=+h[d>>3];f=+h[d+8>>3];a:do if(!(c[46474]|0)){b=0;while(1){if((b|0)>=(c[46505]|0))break a;lp(a,+jp(b),g);b=b+1|0}}else{d=Kv(tB(a)|0)|0;Pv(d,tB(a)|0);b=0;while(1){if((b|0)>=(c[46505]|0))break;kp(a,+jp(b),g,d);b=b+1|0}Rv(d)}while(0);b:do if(e!=0.0|f!=0.0){b=jC(a)|0;while(1){if(!b)break b;g=c[(c[b+16>>2]|0)+132>>2]|0;h[g>>3]=+h[g>>3]+e;g=g+8|0;h[g>>3]=+h[g>>3]+f;b=kC(a,b)|0}}while(0);if(i|0)mp();l=j;return}function hp(a,b){a=a|0;b=b|0;var d=0.0,e=0,f=0,g=0,i=0,j=0;if(+h[23243]==-1.0){i=tB(a)|0;d=+h[23242];h[23243]=+h[23241]*.2*d*+C(+(+(i|0)));i=1}else{i=0;d=+h[23242]}g=c[46504]|0;h[b+8>>3]=+jp(g);h[b+16>>3]=d;h[b+24>>3]=+h[23240];e=c[46478]|0;a=e-g|0;c[b>>2]=a;f=c[46477]|0;do if((f|0)>-1){if((f|0)<=(g|0)){c[46505]=f;a=0;j=10;break}if((f|0)<=(e|0)){c[46505]=g;a=f-g|0;j=10}}else{c[46505]=g;j=10}while(0);if((j|0)==10)c[b+32>>2]=a;return i|0}function ip(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,j=0.0,k=0,l=0.0,m=0.0,n=0,o=0.0,p=0.0,q=0,r=0,s=0.0,t=0.0,u=0,v=0,w=0.0,x=0,y=0,z=0;v=tB(d)|0;x=c[(c[(c[d+16>>2]|0)+140>>2]|0)+4>>2]|0;u=jC(d)|0;q=0;r=0;g=0;k=0;n=0;while(1){if(!u)break;f=c[u+16>>2]|0;if(!(a[f+119>>0]|0))f=r;else{f=c[f+132>>2]|0;i=+h[f>>3];if(!q){k=~~i;g=~~+h[f+8>>3];n=g;f=k}else{p=+(r|0);s=+h[f+8>>3];t=+(g|0);w=+(k|0);o=+(n|0);n=~~(s>o?s:o);f=~~(iw?i:w)}q=q+1|0}u=kC(d,u)|0;r=f}i=+h[23242]*(+C(+(+(v-x|0)))+1.0);s=i*.6;h[23249]=s;h[23248]=s;if((q|0)!=1)if((q|0)>1){t=+(k+r|0)*.5;w=+(n+g|0)*.5;o=+(k-r|0);p=o*1.2;l=+(n-g|0);m=l*1.2;i=i*2.4*s;j=m*p/i;do if(!(j>=1.0)){if(j>0.0){i=+C(+j)*2.0;j=p/i;h[23248]=j;i=m/i;z=20;break}if(p>0.0){j=o*.6;h[23248]=j;i=i/p*.5;z=20;break}if(m>0.0){j=i/m*.5;h[23248]=j;i=l*.6;z=20}else{i=s;j=s}}else{j=o*.6;h[23248]=j;i=l*.6;z=20}while(0);if((z|0)==20)h[23249]=i;s=+K(+i,+j);j=j/+E(+s);h[23248]=j;i=i/+F(+s);h[23249]=i}else{t=0.0;w=0.0;j=s;i=s}else{t=+(r|0);w=+(g|0);j=s;i=s}h[23250]=j*j;h[23251]=i*i;if((c[46488]|0)==2)f=c[46476]|0;else{f=X4()|0;f=(db(0)|0)^f}z5(f);a:do if(!e){e=jC(d)|0;if(!q)while(1){if(!e)break a;s=+h[23248];s=(+B5()*2.0+-1.0)*s;z=e+16|0;h[c[(c[z>>2]|0)+132>>2]>>3]=s;s=+h[23249];s=(+B5()*2.0+-1.0)*s;h[(c[(c[z>>2]|0)+132>>2]|0)+8>>3]=s;e=kC(d,e)|0}while(1){if(!e)break a;f=e+16|0;g=c[f>>2]|0;if(!(a[g+119>>0]|0)){s=+h[23248];s=(+B5()*2.0+-1.0)*s;h[c[(c[f>>2]|0)+132>>2]>>3]=s;s=+h[23249];s=(+B5()*2.0+-1.0)*s;h[(c[(c[f>>2]|0)+132>>2]|0)+8>>3]=s}else{z=c[g+132>>2]|0;h[z>>3]=+h[z>>3]-t;z=z+8|0;h[z>>3]=+h[z>>3]-w}e=kC(d,e)|0}}else{while(1){if(!(c[e>>2]|0))break;u=e+8|0;s=+E(+(+h[u>>3]))*+h[23248]+t;x=c[(c[e+4>>2]|0)+16>>2]|0;v=c[x+132>>2]|0;h[v>>3]=s;h[v+8>>3]=+F(+(+h[u>>3]))*+h[23249]+w;a[x+119>>0]=1;e=e+16|0}l=t*.1;m=w*.1;r=jC(d)|0;while(1){if(!r)break a;q=r+16|0;e=c[q>>2]|0;if(!((c[(c[e+112>>2]|0)+8>>2]|0)==0?!(c[e+212>>2]|0):0))z=32;do if((z|0)==32){z=0;if(a[e+119>>0]|0){x=c[e+132>>2]|0;h[x>>3]=+h[x>>3]-t;x=x+8|0;h[x>>3]=+h[x>>3]-w;break}n=aB(d,r)|0;e=0;j=0.0;i=0.0;while(1){if(!n)break;k=c[n>>2]&3;f=(k|0)==2?n:n+-48|0;g=c[f+40>>2]|0;k=(k|0)==3?n:n+48|0;do if((g|0)!=(c[k+40>>2]|0)?(y=c[(c[((g|0)==(r|0)?k:f)+40>>2]|0)+16>>2]|0,(a[y+119>>0]|0)!=0):0)if(!e){x=c[y+132>>2]|0;e=1;j=+h[x>>3];i=+h[x+8>>3];break}else{p=+(e|0);x=c[y+132>>2]|0;e=e+1|0;s=+(e|0);j=(+h[x>>3]+j*p)/s;i=(+h[x+8>>3]+i*p)/s;break}while(0);n=bB(d,n,r)|0}do if((e|0)<=1)if((e|0)==1){f=c[q>>2]|0;e=c[f+132>>2]|0;h[e>>3]=j*.98+l;i=i*.9+m;break}else{i=+B5()*6.283185307179586;s=+B5()*.9;p=s*+h[23248]*+E(+i);f=c[q>>2]|0;e=c[f+132>>2]|0;h[e>>3]=p;i=+h[23249]*s*+F(+i);break}else{f=c[q>>2]|0;e=c[f+132>>2]|0;h[e>>3]=j}while(0);h[e+8>>3]=i;a[f+119>>0]=1}while(0);r=kC(d,r)|0}}while(0);h[b>>3]=t;h[b+8>>3]=w;return}function jp(a){a=a|0;var b=0;b=c[46478]|0;return +(+h[23243]*+(b-a|0)/+(b|0))}function kp(a,b,d,e){a=a|0;b=+b;d=d|0;e=e|0;var f=0,g=0,i=0,j=0.0;if(!(b<=0.0)){Qv(e);f=jC(a)|0;while(1){if(!f)break;i=c[f+16>>2]|0;g=(c[i+112>>2]|0)+16|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;i=c[i+132>>2]|0;j=+h[23245];g=~~+A(+(+h[i>>3]/j));Tv(e,g,~~+A(+(+h[i+8>>3]/j)),f);f=kC(a,f)|0}g=jC(a)|0;while(1){if(!g)break;f=XA(a,g)|0;while(1){if(!f)break;i=c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;if((g|0)!=(i|0))op(g,i,f);f=ZA(a,f)|0}g=kC(a,g)|0}Vv(e,23);pp(a,b,d)}return}function lp(a,b,d){a=a|0;b=+b;d=d|0;var e=0,f=0,g=0;if(!(b<=0.0)){e=jC(a)|0;while(1){if(!e)break;g=(c[(c[e+16>>2]|0)+112>>2]|0)+16|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;e=kC(a,e)|0}g=jC(a)|0;while(1){if(!g)break;else e=g;while(1){e=kC(a,e)|0;if(!e)break;np(g,e)}e=XA(a,g)|0;while(1){if(!e)break;f=c[((c[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0;if((g|0)!=(f|0))op(g,f,e);e=ZA(a,e)|0}g=kC(a,g)|0}pp(a,b,d)}return}function mp(){h[23243]=-1.0;return}function np(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0;g=c[(c[b+16>>2]|0)+132>>2]|0;f=c[(c[a+16>>2]|0)+132>>2]|0;d=+h[g>>3]-+h[f>>3];e=+h[g+8>>3]-+h[f+8>>3];qp(a,b,d,e,e*e+d*d);return}function op(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0.0,j=0,k=0;j=b+16|0;k=c[(c[j>>2]|0)+132>>2]|0;a=a+16|0;b=c[(c[a>>2]|0)+132>>2]|0;e=+h[k>>3]-+h[b>>3];f=+h[k+8>>3]-+h[b+8>>3];g=e;i=f;e=e*e;f=f*f;while(1){e=e+f;if(!(e==0.0))break;e=+(5-((x5()|0)%10|0)|0);f=+(5-((x5()|0)%10|0)|0);g=e;i=f;e=e*e;f=f*f}f=+C(+e);b=c[d+16>>2]|0;e=+h[b+128>>3];if(!(c[46475]|0))e=e*f/+h[b+136>>3];else e=(f-+h[b+136>>3])*e/f;g=e*g;k=c[(c[j>>2]|0)+112>>2]|0;j=k+16|0;h[j>>3]=+h[j>>3]-g;i=e*i;k=k+24|0;h[k>>3]=+h[k>>3]-i;k=c[(c[a>>2]|0)+112>>2]|0;j=k+16|0;h[j>>3]=+h[j>>3]+g;k=k+24|0;h[k>>3]=+h[k>>3]+i;return}function pp(b,d,e){b=b|0;d=+d;e=e|0;var f=0.0,g=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0.0;o=d*d;n=(e|0)==0;m=jC(b)|0;while(1){if(!m)break;l=c[m+16>>2]|0;if(!(a[l+119>>0]&2)){k=c[l+112>>2]|0;f=+h[k+16>>3];i=+h[k+24>>3];g=i*i+f*f;if(g>2]|0;j=+h[e>>3]+f;f=+h[e+8>>3]+i}else{g=d/+C(+g);e=c[l+132>>2]|0;j=+h[e>>3]+g*f;f=+h[e+8>>3]+g*i}do if(!n){g=+C(+(f*f/+h[23251]+j*j/+h[23250]));if((c[k+8>>2]|0)==0?(c[l+212>>2]|0)==0:0){h[e>>3]=j/g;f=f/g;break}if(!(g>=1.0)){h[e>>3]=j;break}else{h[e>>3]=j*.95/g;f=f*.95/g;break}}else h[e>>3]=j;while(0);h[e+8>>3]=f}m=kC(b,m)|0}return}function qp(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=+e;f=+f;var g=0.0,i=0,j=0;g=d;d=f;while(1){if(!(d==0.0))break;d=+(5-((x5()|0)%10|0)|0);e=+(5-((x5()|0)%10|0)|0);g=d;d=e*e+d*d}if(!(c[46475]|0))d=+h[23247]/d;else{f=+C(+d);d=+h[23247]/(f*d)}j=c[a+16>>2]|0;a=c[j+112>>2]|0;if(((c[a+8>>2]|0)==0?(c[j+212>>2]|0)==0:0)?(i=c[b+16>>2]|0,(c[(c[i+112>>2]|0)+8>>2]|0)==0):0)d=(c[i+212>>2]|0)==0?d*10.0:d;f=d*g;j=c[(c[b+16>>2]|0)+112>>2]|0;b=j+16|0;h[b>>3]=+h[b>>3]+f;g=d*e;j=j+24|0;h[j>>3]=+h[j>>3]+g;j=a+16|0;h[j>>3]=+h[j>>3]-f;j=a+24|0;h[j>>3]=+h[j>>3]-g;return}function rp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[b+8>>2]|0;g=c[b>>2]|0;e=c[b+4>>2]|0;b=f;while(1){if(!b)break;a=f;while(1){if(!a)break;if((b|0)!=(a|0))np(c[b>>2]|0,c[a>>2]|0);a=c[a+4>>2]|0}b=c[b+4>>2]|0}h=g+-1|0;a=e+-1|0;sp(d,h,a,f);sp(d,h,e,f);b=e+1|0;sp(d,h,b,f);sp(d,g,a,f);sp(d,g,b,f);g=g+1|0;sp(d,g,a,f);sp(d,g,e,f);sp(d,g,b,f);return 0}function sp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0.0,j=0,k=0,l=0,m=0;a=Wv(a,b,d)|0;if((e|0)!=0&(a|0)!=0){k=a+8|0;do{d=c[e>>2]|0;j=d+16|0;a=k;while(1){a=c[a>>2]|0;if(!a)break;b=c[a>>2]|0;m=c[(c[b+16>>2]|0)+132>>2]|0;l=c[(c[j>>2]|0)+132>>2]|0;f=+h[m>>3]-+h[l>>3];g=+h[m+8>>3]-+h[l+8>>3];i=g*g+f*f;if(i<+h[23246])qp(d,b,f,g,i);a=a+4|0}e=c[e+4>>2]|0}while((e|0)!=0)}return}function tp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;e=QA(b,92507)|0;if(0)U4(91116,8,1,c[15712]|0)|0;if(!((e|0)!=0?(a[e>>0]|0)!=0:0))e=91125;f=R2(e,58)|0;do if(!f)f=0;else{if((f|0)!=(e|0)?((a[e>>0]|0)+-48|0)>>>0>=10:0){f=0;break}i=q5(e)|0;e=f+1|0;f=(i|0)>0?i:0}while(0);if(0){i=c[15712]|0;c[g>>2]=f;c[g+4>>2]=e;w4(i,91133,g)|0}if(!((f|0)!=0?!(up(b,d,f)|0):0))nr(b,e)|0;l=h;return}function up(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0;t=l;l=l+64|0;r=t;j=t+40|0;s=tB(b)|0;k=uB(b)|0;lr(j,b);c[46842]=c[j>>2];c[46843]=c[j+4>>2];c[46844]=c[j+8>>2];if(a[187376]|0){g[46842]=+g[46842]*.013888888888888888;g[46843]=+g[46843]*.013888888888888888}f=vp(b)|0;a:do if(!f)f=0;else{j=r;i=j+40|0;do{c[j>>2]=c[d>>2];j=j+4|0;d=d+4|0}while((j|0)<(i|0));j=r+16|0;q=+h[j>>3];o=+(k|0)*2.0;p=1.0/+(O(s+-1|0,s)|0);i=0;n=q;while(1){if(!((f|0)!=0&(i|0)<(e|0)))break a;wp(s,r);m=+h[23253]*+h[170];h[23254]=m;h[23255]=o*m*p;d=0;while(1){if((d|0)>=(c[46512]|0))break;m=+xp(d);if(m<=0.0)break;f=yp(b,m)|0;if(!f){f=0;break}else d=d+1|0}m=n+q;h[j>>3]=m;i=i+1|0;n=m}}while(0);l=t;return f|0}function vp(a){a=a|0;var b=0,c=0,d=0,e=0;b=0;e=jC(a)|0;while(1){if(!e)break;else d=e;while(1){c=kC(a,d)|0;if(!c)break;d=c;b=(Bp(e,c)|0)+b|0}e=kC(a,e)|0}return b|0}function wp(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0.0;e=+h[b+16>>3];h[171]=e;c[344]=c[b>>2];f=+h[b+8>>3];h[23257]=f;c[46512]=c[b+32>>2];d=+h[b+24>>3];if(d>0.0)h[170]=d;h[23253]=e*e;if(f==0.0)h[23257]=+C(+(+(a|0)))*.2*e;return}function xp(a){a=a|0;var b=0;b=c[344]|0;return +(+h[23257]*+(b-a|0)/+(b|0))}function yp(b,d){b=b|0;d=+d;var e=0,f=0,g=0,i=0.0,j=0,k=0.0,l=0.0,m=0.0;e=jC(b)|0;while(1){if(!e)break;j=(c[(c[e+16>>2]|0)+112>>2]|0)+16|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;e=kC(b,e)|0}e=0;j=jC(b)|0;while(1){if(!j)break;else g=j;while(1){f=kC(b,g)|0;if(!f)break;g=f;e=(zp(j,f)|0)+e|0}f=XA(b,j)|0;while(1){if(!f)break;Ap(j,c[((c[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0);f=ZA(b,f)|0}j=kC(b,j)|0}a:do if(!e)e=0;else{m=d*d;g=jC(b)|0;while(1){if(!g)break a;f=c[g+16>>2]|0;if((a[f+119>>0]|0)!=3){j=c[f+112>>2]|0;k=+h[j+16>>3];i=+h[j+24>>3];l=i*i+k*k;if(l>2]|0;h[f>>3]=+h[f>>3]+k}else{l=+C(+l);f=c[f+132>>2]|0;h[f>>3]=+h[f>>3]+k*d/l;i=i*d/l}j=f+8|0;h[j>>3]=+h[j>>3]+i}g=kC(b,g)|0}}while(0);return e|0}function zp(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0;g=c[(c[b+16>>2]|0)+132>>2]|0;f=c[(c[a+16>>2]|0)+132>>2]|0;d=+h[g>>3]-+h[f>>3];e=+h[g+8>>3]-+h[f+8>>3];return Dp(a,b,d,e,e*e+d*d)|0}function Ap(a,b){a=a|0;b=b|0;var d=0.0,e=0.0,f=0,g=0.0,i=0,j=0.0,k=0.0,l=0,m=0;if(!(Bp(a,b)|0)){i=c[b+16>>2]|0;m=c[i+132>>2]|0;f=c[a+16>>2]|0;l=c[f+132>>2]|0;e=+h[m>>3]-+h[l>>3];d=+h[m+8>>3]-+h[l+8>>3];g=+C(+(d*d+e*e));j=+Cp(a);j=+Cp(b)+j;k=g-j;g=k*k/((+h[171]+j)*g);e=g*e;b=c[i+112>>2]|0;a=b+16|0;h[a>>3]=+h[a>>3]-e;d=g*d;b=b+24|0;h[b>>3]=+h[b>>3]-d;b=c[f+112>>2]|0;a=b+16|0;h[a>>3]=+h[a>>3]+e;b=b+24|0;h[b>>3]=+h[b>>3]+d}return}function Bp(b,d){b=b|0;d=d|0;var e=0.0,f=0.0,i=0.0,j=0.0,k=0,l=0;k=c[d+16>>2]|0;l=c[k+132>>2]|0;d=c[b+16>>2]|0;b=c[d+132>>2]|0;i=+h[l>>3]-+h[b>>3];j=+h[l+8>>3]-+h[b+8>>3];j=j<0.0?-j:j;b=(a[187376]|0)==0;e=+h[d+32>>3];if(b){f=+g[46842];e=e*.5*f;f=+h[k+32>>3]*.5*f}else{f=+g[46842];e=e*.5+f;f=+h[k+32>>3]*.5+f}if(!((i<0.0?-i:i)<=f+e))d=0;else{e=+h[d+40>>3];if(b){i=+g[46843];f=e*.5*i;e=+h[k+40>>3]*.5*i}else{i=+g[46843];f=e*.5+i;e=+h[k+40>>3]*.5+i}d=j<=e+f&1}return d|0}function Cp(b){b=b|0;var d=0.0,e=0.0;b=c[b+16>>2]|0;d=+h[b+32>>3];if(!(a[187376]|0)){e=d*.5*+g[46842];d=+h[b+40>>3]*.5*+g[46843]}else{e=d*.5+ +g[46842];d=+h[b+40>>3]*.5+ +g[46843]}return +(+C(+(d*d+e*e)))}function Dp(a,b,d,e,f){a=a|0;b=b|0;d=+d;e=+e;f=+f;var g=0,i=0;while(1){if(!(f==0.0))break;f=+(5-((x5()|0)%10|0)|0);e=+(5-((x5()|0)%10|0)|0);d=f;f=e*e+f*f}g=Bp(a,b)|0;f=((g|0)==0?+h[23255]:+h[23254])/f;d=f*d;b=c[(c[b+16>>2]|0)+112>>2]|0;i=b+16|0;h[i>>3]=+h[i>>3]+d;f=f*e;b=b+24|0;h[b>>3]=+h[b>>3]+f;b=c[(c[a+16>>2]|0)+112>>2]|0;a=b+16|0;h[a>>3]=+h[a>>3]-d;b=b+24|0;h[b>>3]=+h[b>>3]-f;return g|0}function Ep(a){a=a|0;oQ(a,2);b[(c[a+16>>2]|0)+176>>1]=2;c[47137]=2;Fp(a);return}function Fp(a){a=a|0;var b=0,d=0,e=0,f=0;e=JK((tB(a)|0)<<2)|0;b=JK(((tB(a)|0)<<2)+4|0)|0;f=a+16|0;c[(c[f>>2]|0)+152>>2]=b;b=jC(a)|0;d=0;while(1){if(!b)break;Zl(b);c[(c[b+16>>2]|0)+112>>2]=e+(d<<2);c[(c[(c[f>>2]|0)+152>>2]|0)+(d<<2)>>2]=b;b=kC(a,b)|0;d=d+1|0}d=jC(a)|0;while(1){if(!d)break;b=XA(a,d)|0;while(1){if(!b)break;Gp(b);b=ZA(a,b)|0}d=kC(a,d)|0}return}function Gp(a){a=a|0;var b=0.0;TC(a,137460,176,1)|0;tP(a)|0;b=+_O(a,c[47174]|0,1.0,0.0);h[(c[a+16>>2]|0)+128>>3]=b;return}function Hp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n+4|0;k=n;a[m>>0]=a[18596]|0;a[m+1>>0]=a[18597]|0;a[m+2>>0]=a[18598]|0;a[m+3>>0]=a[18599]|0;m=oB(91156,m,0)|0;TC(m,91164,280,1)|0;c[(c[b+16>>2]|0)+140>>2]=m;e=jC(b)|0;while(1){if(!e)break;f=e+16|0;if(!(c[c[(c[f>>2]|0)+112>>2]>>2]|0)){j=Ip(m,KB(e)|0,e)|0;c[c[(c[f>>2]|0)+112>>2]>>2]=j}e=kC(b,e)|0}f=jC(b)|0;while(1){if(!f)break;e=XA(b,f)|0;while(1){if(!e)break;h=c[e>>2]&3;g=c[c[(c[(c[((h|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+112>>2]>>2]|0;h=c[c[(c[(c[((h|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]>>2]|0;if((g|0)!=(h|0))TC(iB(m,g,h,0,1)|0,137460,176,1)|0;e=ZA(b,e)|0}f=kC(b,f)|0}j=DG(m,k,0)|0;f=0;while(1){if((f|0)>=(c[k>>2]|0))break;h=c[j+(f<<2)>>2]|0;e=jC(h)|0;while(1){if(!e)break;g=XA(b,c[c[(c[e+16>>2]|0)+112>>2]>>2]|0)|0;while(1){if(!g)break;i=c[c[(c[(c[((c[g>>2]&3|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]>>2]|0;if((e|0)!=(i|0)){i=iB(m,e,i,0,1)|0;TC(i,137460,176,1)|0;mB(h,i,1)|0}g=ZA(b,g)|0}e=kC(h,e)|0}f=f+1|0}e=jC(m)|0;while(1){if(!e)break;f=XA(m,e)|0;while(1){if(!f)break;b=JK(8)|0;c[(c[f+16>>2]|0)+120>>2]=b;f=ZA(m,f)|0}e=kC(m,e)|0}c[d>>2]=c[k>>2];l=n;return j|0}function Ip(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=tC(a,b,1)|0;TC(b,137447,304,1)|0;e=JK(40)|0;a=b+16|0;c[(c[a>>2]|0)+112>>2]=e;e=JK(c[47137]<<3)|0;a=c[a>>2]|0;c[a+132>>2]=e;e=c[d+16>>2]|0;h[a+88>>3]=+h[e+88>>3];h[a+96>>3]=+h[e+96>>3];h[a+80>>3]=+h[e+80>>3];c[c[a+112>>2]>>2]=d;return b|0}function Jp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+48|0;b=h+32|0;e=h;if(tB(a)|0){g=Hp(a,b)|0;f=c[b>>2]|0;b=c[g>>2]|0;if((f|0)==1){bx(b,a);Kp(c[g>>2]|0);or(a)|0}else{d=c[b+60>>2]|0;kH(a,2,8,e)|0;b=0;while(1){if((b|0)>=(f|0))break;i=c[g+(b<<2)>>2]|0;bx(i,a);or(i)|0;b=b+1|0}jH(f,g,d,e)|0;b=0;while(1){if((b|0)>=(f|0))break;Kp(c[g+(b<<2)>>2]|0);b=b+1|0}}U1(g)}l=h;return}function Kp(a){a=a|0;var b=0,d=0,e=0;b=jC(a)|0;while(1){if(!b)break;d=c[b+16>>2]|0;e=c[d+132>>2]|0;d=c[(c[(c[c[d+112>>2]>>2]|0)+16>>2]|0)+132>>2]|0;h[d>>3]=+h[e>>3];h[d+8>>3]=+h[e+8>>3];b=kC(a,b)|0}return}function Lp(a){a=a|0;if(tB(a)|0){Ep(a);Jp(a);U1(c[(c[(jC(a)|0)+16>>2]|0)+112>>2]|0);fn(a);tM(a)}return}function Mp(a){a=a|0;var b=0,d=0,e=0;b=jC(a)|0;if(b|0){e=a+16|0;Np(c[(c[e>>2]|0)+140>>2]|0);while(1){if(!b)break;d=XA(a,b)|0;while(1){if(!d)break;YP(d);d=ZA(a,d)|0}WP(b);b=kC(a,b)|0}U1(c[(c[e>>2]|0)+152>>2]|0);if((yC(a)|0)!=(a|0))ZC(a,0,137483)}return}function Np(a){a=a|0;var b=0,d=0;d=jC(a)|0;while(1){if(!d)break;b=XA(a,d)|0;while(1){if(!b)break;U1(c[(c[b+16>>2]|0)+120>>2]|0);b=ZA(a,b)|0}b=d+16|0;U1(c[(c[b>>2]|0)+112>>2]|0);U1(c[(c[b>>2]|0)+132>>2]|0);d=kC(a,d)|0}sB(a)|0;return}function Op(b){b=b|0;var d=0,e=0.0,f=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+112|0;m=s+40|0;n=s+16|0;r=s+100|0;o=s;j=s+88|0;p=s+56|0;Pp(b);i=(c[47137]|0)==2;d=i&1;if(tB(b)|0){q=Yp()|0;Qp(b,q);Nq(b,n,0)|0;if(i&(c[n>>2]|0)==18){c[q+124>>2]=c[n+8>>2];h[q+144>>3]=+h[n+16>>3];lr(j,b);if(!(a[j+8>>0]|0)){f=.05555555555555555;e=.05555555555555555}else{f=+g[j+4>>2]*.013888888888888888;e=+g[j>>2]*.013888888888888888}h[o>>3]=e;h[o+8>>3]=f;d=0}else c[q+124>>2]=-1;if(0)_p(q);k=DG(b,r,0)|0;if((c[r>>2]|0)==1){c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];Rp(b,q,m);if(d|0)Qq(b,n)|0;fn(b);d=0}else{kH(b,2,8,p)|0;c[p+12>>2]=1;j=(d|0)==0;i=0;while(1){d=c[r>>2]|0;if((i|0)>=(d|0))break;d=c[k+(i<<2)>>2]|0;KG(d)|0;c[m>>2]=c[o>>2];c[m+4>>2]=c[o+4>>2];c[m+8>>2]=c[o+8>>2];c[m+12>>2]=c[o+12>>2];Rp(d,q,m);if(!j)Qq(d,n)|0;oQ(d,2);fn(d);i=i+1|0}jH(d,k,b,p)|0;d=0}while(1){if((d|0)>=(c[r>>2]|0))break;wC(b,c[k+(d<<2)>>2]|0)|0;d=d+1|0}U1(k);Zp(q)}tM(b);l=s;return}function Pp(a){a=a|0;var d=0,f=0;oQ(a,2);d=ZO(a,GA(a,0,91368,0)|0,2,2)|0;f=(ZO(a,GA(a,0,91374,0)|0,d,2)|0)&65535;b[(c[(yC(a)|0)+16>>2]|0)+176>>1]=f;if((e[(c[(yC(a)|0)+16>>2]|0)+176>>1]|0)<10)f=b[(c[(yC(a)|0)+16>>2]|0)+176>>1]|0;else f=10;b[(c[(yC(a)|0)+16>>2]|0)+176>>1]=f;f=f&65535;c[47137]=f;b[(c[(yC(a)|0)+16>>2]|0)+178>>1]=(d|0)<(f|0)?d:f;Vp(a);return}function Qp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;f=g+8|0;d=g+12|0;e=b+108|0;c[d>>2]=c[e>>2];if((mm(a,2,d)|0)!=2)gA(0,91169,g)|0;c[e>>2]=c[d>>2];h[b+24>>3]=+_O(a,GA(a,0,91202,0)|0,-1.0,0.0);h[b>>3]=-+_O(a,GA(a,0,91204,0)|0,1.0001234,0.0);c[b+40>>2]=ZO(a,GA(a,0,91219,0)|0,2147483647,0)|0;c[b+120>>2]=Tp(a,GA(a,0,91226,0)|0)|0;c[b+132>>2]=Up(a,GA(a,0,91236,0)|0)|0;c[b+136>>2]=0;c[b+112>>2]=(eP(QA(a,91245)|0,0)|0)&255;c[b+128>>2]=(eP(QA(a,91254)|0,1)|0)&255;h[b+152>>3]=+_O(a,GA(a,0,91269,0)|0,0.0,-1797693134862315708145274.0e284);d=ZO(a,GA(a,0,91278,0)|0,0,0)|0;a=b+160|0;c[a>>2]=d;if((d|0)>4){c[f>>2]=d;gA(0,91291,f)|0;c[a>>2]=0}l=g;return}function Rp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+48|0;f=q;n=q+32|0;j=q+28|0;g=q+24|0;p=q+20|0;o=q+16|0;c[g>>2]=0;c[p>>2]=0;c[o>>2]=0;i=b+136|0;e=c[47137]|0;if((c[i>>2]|0)==1)m=Kq(a,e,o)|0;else m=Kq(a,e,0)|0;do if((c[b+124>>2]|0)>-1)if((c[b+160>>2]|0)>0){c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];k=Jq(a,f,g,p)|0;break}else{c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];k=Jq(a,f,0,0)|0;break}else k=0;while(0);e=Sp(a)|0;c[n>>2]=e;switch(c[i>>2]|0){case 1:case 0:{wq(c[47137]|0,m,c[o>>2]|0,b,0,k,e,c[g>>2]|0,c[p>>2]|0,j);break}case 5:{Iq(c[47137]|0,m,e,j);break}case 4:{e=c[o>>2]|0;if(!e)e=Qw(m)|0;else e=Aw(e,0)|0;c[o>>2]=e;Dq(c[47137]|0,m,e,n,1,200,.001,j);break}default:{}}e=jC(a)|0;while(1){if(!e)break;d=c[47137]|0;g=c[e+16>>2]|0;b=(c[n>>2]|0)+((O(c[g+120>>2]|0,d)|0)<<3)|0;g=g+132|0;f=0;while(1){if((f|0)>=(d|0))break;h[(c[g>>2]|0)+(f<<3)>>3]=+h[b+(f<<3)>>3];f=f+1|0}e=kC(a,e)|0}U1(k);U1(c[n>>2]|0);qw(m);e=c[o>>2]|0;if(e|0)qw(e);e=c[p>>2]|0;if(e|0)U1(e);l=q;return}function Sp(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0;j=c[47137]|0;j=JK(O(j<<3,tB(b)|0)|0)|0;a:do if(GA(b,1,102623,0)|0){f=jC(b)|0;while(1){if(!f)break a;d=c[f+16>>2]|0;b:do if(a[d+119>>0]|0){g=c[47137]|0;i=O(g,c[d+120>>2]|0)|0;e=d+132|0;d=0;while(1){if((d|0)>=(g|0))break b;h[j+(i+d<<3)>>3]=+h[(c[e>>2]|0)+(d<<3)>>3];d=d+1|0}}while(0);f=kC(b,f)|0}}while(0);return j|0}function Tp(b,c){b=b|0;c=c|0;do if(c){b=RA(b,c)|0;c=a[b>>0]|0;if((c+-48|0)>>>0<10){b=q5(b)|0;b=(b|0)<5?b:0;break}if(b3(c)|0)if(c3(b,91330)|0)if(c3(b,91339)|0)if(c3(b,135709)|0)if(!(c3(b,91350)|0))b=3;else{b=(c3(b,91361)|0)==0;b=b?4:0}else b=0;else b=1;else b=2;else b=0}else b=0;while(0);return b|0}function Up(b,c){b=b|0;c=c|0;do if(c){b=RA(b,c)|0;c=a[b>>0]|0;if((c+-48|0)>>>0<10){b=q5(b)|0;b=b>>>0<3?b:1;break}if(b3(c)|0)if((c3(b,135709)|0)!=0?(c3(b,137308)|0)!=0:0)if(((c3(b,99730)|0)!=0?(c3(b,107652)|0)!=0:0)?(c3(b,107657)|0)!=0:0){b=(c3(b,91325)|0)==0;b=b?2:1}else b=1;else b=0;else b=1}else b=1;while(0);return b|0}function Vp(a){a=a|0;var b=0,c=0;b=jC(a)|0;while(1){if(!b)break;Zl(b);b=kC(a,b)|0}c=jC(a)|0;while(1){if(!c)break;b=XA(a,c)|0;while(1){if(!b)break;Wp(b);b=ZA(a,b)|0}c=kC(a,c)|0}return}function Wp(a){a=a|0;TC(a,137460,176,1)|0;tP(a)|0;return}function Xp(a){a=a|0;var b=0,c=0;c=jC(a)|0;while(1){if(!c)break;b=XA(a,c)|0;while(1){if(!b)break;YP(b);b=ZA(a,b)|0}WP(c);c=kC(a,c)|0}return}function Yp(){var a=0,b=0;a=KK(168)|0;h[a>>3]=-1.0001234;h[a+8>>3]=1.0;c[a+16>>2]=1;h[a+24>>3]=-1.0;h[a+32>>3]=.2;c[a+40>>2]=0;c[a+44>>2]=4;c[a+48>>2]=1;c[a+52>>2]=45;c[a+56>>2]=10;h[a+64>>3]=.6;h[a+72>>3]=.001;c[a+80>>2]=500;h[a+88>>3]=.9;h[a+96>>3]=.1;c[a+104>>2]=1;c[a+108>>2]=123;b=a+112|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[a+128>>2]=1;c[a+132>>2]=3;c[a+136>>2]=0;h[a+144>>3]=-4.0;h[a+152>>3]=0.0;c[a+160>>2]=0;return a|0}function Zp(a){a=a|0;U1(a);return}function _p(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;b=l;l=l+176|0;d=b+160|0;f=b+152|0;g=b+128|0;k=b+112|0;j=b+88|0;m=b+64|0;n=b+56|0;o=b+40|0;q=b+24|0;p=b+16|0;r=b;e=c[15712]|0;U4(91378,27,1,e)|0;i=+h[a+8>>3];h[r>>3]=+h[a>>3];h[r+8>>3]=i;w4(e,91406,r)|0;r=c[a+108>>2]|0;c[p>>2]=c[a+16>>2];c[p+4>>2]=r;w4(e,91457,p)|0;i=+h[a+32>>3];h[q>>3]=+h[a+24>>3];h[q+8>>3]=i;w4(e,91484,q)|0;q=c[a+44>>2]|0;p=c[a+48>>2]|0;c[o>>2]=c[a+40>>2];c[o+4>>2]=q;c[o+8>>2]=p;w4(e,91507,o)|0;o=c[a+56>>2]|0;c[n>>2]=c[a+52>>2];c[n+4>>2]=o;w4(e,91558,n)|0;i=+h[a+72>>3];n=c[a+80>>2]|0;h[m>>3]=+h[a+64>>3];h[m+8>>3]=i;c[m+16>>2]=n;w4(e,91591,m)|0;i=+h[a+96>>3];m=c[a+104>>2]|0;h[j>>3]=+h[a+88>>3];h[j+8>>3]=i;c[j+16>>2]=m;w4(e,91649,j)|0;j=c[a+116>>2]|0;i=+h[a+152>>3];c[k>>2]=c[a+112>>2];c[k+4>>2]=j;h[k+8>>3]=i;w4(e,91695,k)|0;k=c[a+124>>2]|0;j=c[a+128>>2]|0;i=+h[a+144>>3];c[g>>2]=c[17804+(c[a+120>>2]<<2)>>2];c[g+4>>2]=k;c[g+8>>2]=j;h[g+16>>3]=i;w4(e,91748,g)|0;g=c[17848+(c[a+136>>2]<<2)>>2]|0;c[f>>2]=c[17832+(c[a+132>>2]<<2)>>2];c[f+4>>2]=g;w4(e,91813,f)|0;c[d>>2]=c[a+160>>2];w4(e,91843,d)|0;l=b;return}function $p(a){a=a|0;U1(a);return}function aq(a){a=a|0;var b=0;b=KK(184)|0;c[b>>2]=a;c[b+176>>2]=0;return b|0}function bq(a,b){a=a|0;b=+b;var d=0,e=0,f=0;e=c[a>>2]|0;h[a+8+(e<<3)>>3]=b;f=a+176|0;a:do switch(c[f>>2]|0){case 0:{d=c[a>>2]|0;if((d|0)==20){c[f>>2]=-1;d=19}else{c[f>>2]=1;d=(d|0)>19?20:d+1|0}c[a>>2]=d;break}case 1:{d=c[a>>2]|0;if((d|0)<20?+h[a+8+(e+-1<<3)>>3]>b:0){c[a>>2]=d+1;break a}else{c[a>>2]=d+-1;c[f>>2]=-1;break a}}default:{d=c[a>>2]|0;if((d|0)>0?+h[a+8+(e+1<<3)>>3]>b:0){c[a>>2]=d+-1;break a}else{c[a>>2]=d+1;c[f>>2]=1;break a}}}while(0);return}function cq(a){a=a|0;return c[a>>2]|0}function dq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;o=c[a+20>>2]|0;p=c[a+24>>2]|0;m=c[a>>2]|0;n=c[o+(m<<2)>>2]|0;if(!n)e=1.0;else{a=0;e=0.0;a:while(1){if((a|0)>=(m|0))break;j=a+1|0;k=c[o+(j<<2)>>2]|0;l=O(a,b)|0;i=c[o+(a<<2)>>2]|0;while(1){if((i|0)>=(k|0)){a=j;continue a}g=p+(i<<2)|0;a=0;f=0.0;while(1){if((a|0)>=(b|0))break;q=+h[d+(a+l<<3)>>3]-+h[d+((O(c[g>>2]|0,b)|0)<<3)>>3];a=a+1|0;f=q*q+f}i=i+1|0;e=+C(+f)+e}}e=e/+(n|0)}return +e}function eq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=b+10|0;if((c[d>>2]|0)<=(b|0)){c[d>>2]=e;c[a>>2]=MK(c[a>>2]|0,e<<3)|0}return}function fq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=b+10|0;if((c[d>>2]|0)<=(b|0)){c[d>>2]=e;c[a>>2]=MK(c[a>>2]|0,e<<2)|0}return}function gq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,g=0.0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=O(d,b)|0;b=O(c,b)|0;d=0;while(1){if((d|0)==2)break;h[j+(d<<3)>>3]=+h[a+(d+i<<3)>>3]-+h[a+(d+b<<3)>>3];d=d+1|0}g=+h[j>>3];f=+h[j+8>>3];do if(!((g>=0.0?g:-g)<=(f>=0.0?f:-f)*1.0e-05)){e=+J(+(f/g));if(g>0.0){if(!(f<0.0))break;e=e+6.283185307179586;break}else{if(!(g<0.0))break;e=e+3.141592653589793;break}}else e=f>0.0?1.5707963267948966:4.71238898038469;while(0);l=k;return +e}function hq(a,b){a=a|0;b=b|0;var c=0.0,d=0.0;d=+h[a>>3];c=+h[b>>3];return (d>c?1:(d>31)|0}function iq(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 i=0,j=0.0,k=0,m=0,n=0.0,o=0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0.0,A=0.0,B=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0,P=0,Q=0,R=0.0,S=0,T=0.0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0.0;_=l;l=l+80|0;Z=_+32|0;Y=_;p=+h[d>>3];m=d+24|0;n=+h[m>>3];o=d+32|0;j=+h[o>>3];R=+h[d+72>>3];S=c[d+80>>2]|0;T=+h[d+88>>3];q=+h[d+96>>3];U=c[d+104>>2]|0;V=d+56|0;i=c[V>>2]|0;do if(!((b|0)==0|(S|0)<1)?(W=c[b+4>>2]|0,!((a|0)<1|(W|0)<1)):0){Q=c[b>>2]|0;X=aq(i)|0;c[g>>2]=0;if((Q|0)!=(W|0)){c[g>>2]=-100;$p(X);c[V>>2]=i;break}N=vw(b,1)|0;P=c[N+20>>2]|0;Q=c[N+24>>2]|0;a:do if(c[d+16>>2]|0){w5(c[d+108>>2]|0);k=O(W,a)|0;i=0;while(1){if((i|0)>=(k|0))break a;h[f+(i<<3)>>3]=+Sw();i=i+1|0}}while(0);if(n<0.0){n=+dq(N,a,f);h[m>>3]=n}if(j<0.0){h[o>>3]=.2;j=.2}if(p>=0.0){h[d>>3]=-1.0;p=-1.0}M=+D(+n,+(1.0-p));A=+D(+j,+((2.0-p)*.3333333333333333))/n;B=O(W,a<<3)|0;E=KK(B)|0;F=KK(B)|0;G=d+116|0;H=d+64|0;I=c[15712]|0;J=N+8|0;K=Y+8|0;L=Y+16|0;y=0;z=0.0;v=q;while(1){W6(E|0,f|0,B|0)|0;w=cq(X)|0;x=hw(a,W,w,f,(c[G>>2]|0)==0?0:e)|0;cw(x,F,f,+h[H>>3],p,M,Y,g);m=0;b:while(1){if((m|0)>=(W|0)){q=0.0;k=0;break}o=O(m,a)|0;r=F+(o<<3)|0;s=m+1|0;t=P+(s<<2)|0;k=c[P+(m<<2)>>2]|0;while(1){if((k|0)>=(c[t>>2]|0)){m=s;continue b}u=Q+(k<<2)|0;i=c[u>>2]|0;c:do if((i|0)!=(m|0)){j=+_w(f,a,m,i)*A;i=0;while(1){if((i|0)>=(a|0))break c;q=j*(+h[f+(i+o<<3)>>3]-+h[f+((O(c[u>>2]|0,a)|0)+i<<3)>>3]);$=r+(i<<3)|0;h[$>>3]=+h[$>>3]-q;i=i+1|0}}while(0);k=k+1|0}}while(1){if((k|0)>=(W|0))break;m=O(k,a)|0;o=F+(m<<3)|0;j=0.0;i=0;while(1){if((i|0)>=(a|0))break;aa=+h[o+(i<<3)>>3];j=aa*aa+j;i=i+1|0}j=+C(+j);q=j+q;d:do if(j>0.0){j=1.0/j;i=0;while(1){if((i|0)>=(a|0)){i=0;break d}$=o+(i<<3)|0;h[$>>3]=+h[$>>3]*j;i=i+1|0}}else i=0;while(0);while(1){if((i|0)>=(a|0))break;$=f+(i+m<<3)|0;h[$>>3]=+h[$>>3]+ +h[o+(i<<3)>>3]*v;i=i+1|0}k=k+1|0}y=y+1|0;if(!x){if(0){$=c[J>>2]|0;c[Z>>2]=y;h[Z+8>>3]=v;h[Z+16>>3]=q;c[Z+24>>2]=$;h[Z+32>>3]=n;w4(I,92099,Z)|0}}else{ow(x);bq(X,+h[K>>3]*.85+ +h[Y>>3]+ +h[L>>3]*3.3)}v=+jq(U,v,q,z,T);if(!((y|0)<(S|0)&v>R))break;else z=q}if(c[d+112>>2]|0)kq(a,N,f);$p(X);c[V>>2]=w;U1(E);if((N|0)!=(b|0))qw(N);U1(F)}while(0);l=_;return}function jq(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;do if(a){if(c>=d){b=e*b;break}if(!(d*.95>2]|0;C=c[b+20>>2]|0;t=c[b+24>>2]|0;c[v>>2]=10;c[A>>2]=10;u=KK(B<<2)|0;f=KK(80)|0;c[y>>2]=f;e=KK(40)|0;c[z>>2]=e;b=0;while(1){if((b|0)>=(B|0)){n=0;r=f;k=e;o=e;m=f;break}c[u+(b<<2)>>2]=0;b=b+1|0}while(1){if((n|0)>=(B|0))break;b=c[C+(n<<2)>>2]|0;a:do if((((c[C+(n+1<<2)>>2]|0)-b|0)==1?(c[u+(n<<2)>>2]|0)==0:0)?(w=c[t+(b<<2)>>2]|0,x=u+(w<<2)|0,(c[x>>2]|0)==0):0){c[x>>2]=1;q=C+(w+1<<2)|0;n=0;s=0;g=0.0;p=c[C+(w<<2)>>2]|0;k=o;b=r;while(1){if((p|0)>=(c[q>>2]|0))break;e=t+(p<<2)|0;f=c[e>>2]|0;if(((c[C+(f+1<<2)>>2]|0)-(c[C+(f<<2)>>2]|0)|0)==1){c[u+(f<<2)>>2]=1;fq(z,s,v);g=+_w(d,a,w,c[e>>2]|0)+g;k=c[z>>2]|0;c[k+(s<<2)>>2]=c[e>>2];e=n;f=s+1|0}else{eq(y,n,A);j=+gq(d,a,w,c[e>>2]|0);b=c[y>>2]|0;h[b+(n<<3)>>3]=j;e=n+1|0;f=s;m=b}n=e;s=f;p=p+1|0}j=g/+(s|0);if((n|0)>0){lq(n,m);b=m}g=(s|0)>1?6.283185307179586/+(s+-1|0):0.0;e=0;i=0.0;while(1){if((e|0)>=(s|0)){o=k;f=k;break a}mq(d,a,j,i,w,c[k+(e<<2)>>2]|0);e=e+1|0;i=i+g}}else{e=n;f=k;b=r}while(0);n=e+1|0;r=b;k=f}U1(u);U1(r);U1(k);l=D;return}function lq(a,b){a=a|0;b=b|0;o4(b,a,8,68);return}function mq(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=e|0;f=f|0;var g=0.0;g=+E(+d)*c;e=O(e,b)|0;f=O(f,b)|0;h[a+(f<<3)>>3]=g+ +h[a+(e<<3)>>3];d=+F(+d)*c;h[a+(f+1<<3)>>3]=d+ +h[a+(e+1<<3)>>3];return}function nq(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 i=0,j=0,k=0.0,l=0.0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0,B=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0.0,Q=0,R=0.0,S=0,T=0,U=0,V=0,W=0.0;o=+h[d>>3];m=d+24|0;l=+h[m>>3];n=d+32|0;k=+h[n>>3];P=+h[d+72>>3];Q=c[d+80>>2]|0;R=+h[d+88>>3];r=+h[d+96>>3];S=c[d+104>>2]|0;i=c[d+56>>2]|0;U4(92198,32,1,c[15712]|0)|0;if(!((b|0)==0|(Q|0)<1)?(T=c[b>>2]|0,j=c[b+4>>2]|0,!((a|0)<1|(j|0)<1)):0){p=a<<3;U=KK(O(p,j)|0)|0;if((j|0)<(c[d+52>>2]|0)){I=0;J=0;K=0;L=0;M=0;N=0}else{aq(i)|0;L=KK(a*80|0)|0;M=KK(80)|0;N=KK(80)|0;I=N;J=M;K=L}c[g>>2]=0;if((T|0)==(j|0)){F=vw(b,1)|0;G=c[F+20>>2]|0;H=c[F+24>>2]|0;a:do if(c[d+16>>2]|0){w5(c[d+108>>2]|0);j=O(T,a)|0;i=0;while(1){if((i|0)>=(j|0))break a;h[f+(i<<3)>>3]=+Sw();i=i+1|0}}while(0);if(l<0.0){l=+dq(F,a,f);h[m>>3]=l}if(k<0.0){h[n>>3]=.2;k=.2}if(o>=0.0){h[d>>3]=-1.0;o=-1.0}B=1.0-o;E=+D(+l,+B);z=+D(+k,+((2.0-o)*.3333333333333333))/l;A=KK(p)|0;u=O(T,p)|0;v=KK(u)|0;w=O(T,a)|0;x=d+116|0;y=(e|0)!=0;t=o==-1.0;s=0;o=0.0;while(1){i=0;while(1){if((i|0)>=(w|0))break;h[U+(i<<3)>>3]=0.0;i=i+1|0}W6(v|0,f|0,u|0)|0;p=0;while(1){if((p|0)<(T|0))i=0;else{n=0;break}while(1){if((i|0)>=(a|0))break;h[A+(i<<3)>>3]=0.0;i=i+1|0}n=O(p,a)|0;b:do if(y&(c[x>>2]|0)!=0){i=0;while(1){if((i|0)==(T|0)){i=0;break b}c:do if((i|0)!=(p|0)){l=+Zw(f,a,p,i);g=e+(i<<3)|0;m=O(i,a)|0;k=+D(+l,+B);k=1.0/(t?l*l:k);j=0;while(1){if((j|0)>=(a|0))break c;q=A+(j<<3)|0;h[q>>3]=+h[g>>3]*E*(+h[f+(j+n<<3)>>3]-+h[f+(j+m<<3)>>3])*k+ +h[q>>3];j=j+1|0}}while(0);i=i+1|0}}else{i=0;while(1){if((i|0)==(T|0)){i=0;break b}d:do if((i|0)!=(p|0)){l=+Zw(f,a,p,i);g=O(i,a)|0;k=+D(+l,+B);k=1.0/(t?l*l:k);j=0;while(1){if((j|0)>=(a|0))break d;q=A+(j<<3)|0;h[q>>3]=(+h[f+(j+n<<3)>>3]-+h[f+(j+g<<3)>>3])*E*k+ +h[q>>3];j=j+1|0}}while(0);i=i+1|0}}while(0);while(1){if((i|0)>=(a|0))break;q=U+(i+n<<3)|0;h[q>>3]=+h[q>>3]+ +h[A+(i<<3)>>3];i=i+1|0}p=p+1|0}e:while(1){if((n|0)<(T|0))i=0;else{l=0.0;j=0;break}while(1){if((i|0)>=(a|0))break;h[A+(i<<3)>>3]=0.0;i=i+1|0}p=n+1|0;g=G+(p<<2)|0;q=O(n,a)|0;j=c[G+(n<<2)>>2]|0;while(1){if((j|0)>=(c[g>>2]|0)){i=0;break}m=H+(j<<2)|0;i=c[m>>2]|0;f:do if((i|0)!=(n|0)){k=+_w(f,a,n,i)*z;i=0;while(1){if((i|0)>=(a|0))break f;l=k*(+h[f+(i+q<<3)>>3]-+h[f+((O(c[m>>2]|0,a)|0)+i<<3)>>3]);V=A+(i<<3)|0;h[V>>3]=+h[V>>3]-l;i=i+1|0}}while(0);j=j+1|0}while(1){if((i|0)>=(a|0)){n=p;continue e}V=U+(i+q<<3)|0;h[V>>3]=+h[V>>3]+ +h[A+(i<<3)>>3];i=i+1|0}}while(1){if((j|0)>=(T|0))break;g=O(j,a)|0;i=0;while(1){if((i|0)>=(a|0)){k=0.0;i=0;break}h[A+(i<<3)>>3]=+h[U+(i+g<<3)>>3];i=i+1|0}while(1){if((i|0)>=(a|0))break;W=+h[A+(i<<3)>>3];k=W*W+k;i=i+1|0}k=+C(+k);l=k+l;g:do if(k>0.0){k=1.0/k;i=0;while(1){if((i|0)>=(a|0)){i=0;break g}V=A+(i<<3)|0;h[V>>3]=+h[V>>3]*k;i=i+1|0}}else i=0;while(0);while(1){if((i|0)>=(a|0))break;V=f+(i+g<<3)|0;h[V>>3]=+h[V>>3]+ +h[A+(i<<3)>>3]*r;i=i+1|0}j=j+1|0}s=s+1|0;r=+jq(S,r,l,o,R);if(!((s|0)<(Q|0)&r>P))break;else o=l}if(c[d+112>>2]|0)kq(a,F,f);U1(v);if((F|0)!=(b|0))qw(F);U1(A)}else c[g>>2]=-100;if(K|0)U1(L);if(J|0)U1(M);if(I|0)U1(N);U1(U)}return}function oq(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 i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,E=0.0,F=0,G=0,H=0.0,I=0.0,J=0,K=0,L=0,M=0,N=0.0,P=0.0,Q=0,R=0,S=0,T=0,U=0,V=0.0,W=0,X=0.0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0.0,ia=0;ga=l;l=l+32|0;_=ga+24|0;$=ga+20|0;da=ga+16|0;ea=ga+12|0;fa=ga+8|0;U=ga;s=+h[d>>3];k=d+24|0;r=+h[k>>3];m=d+32|0;q=+h[m>>3];V=+h[d+72>>3];W=c[d+80>>2]|0;X=+h[d+88>>3];t=+h[d+96>>3];Y=c[d+104>>2]|0;c[_>>2]=0;c[$>>2]=10;c[da>>2]=0;c[ea>>2]=0;c[fa>>2]=0;h[U>>3]=0.0;ca=d+56|0;n=c[ca>>2]|0;if(!((b|0)==0|(W|0)<1)?(Z=c[b>>2]|0,i=c[b+4>>2]|0,!((a|0)<1|(i|0)<1)):0){if((i|0)<(c[d+52>>2]|0)){ba=0;aa=0}else{ba=aq(n)|0;c[da>>2]=KK(a*80|0)|0;c[ea>>2]=KK(80)|0;c[fa>>2]=KK(80)|0;aa=1}c[g>>2]=0;a:do if((Z|0)==(i|0)){o=vw(b,1)|0;Q=c[o+20>>2]|0;R=c[o+24>>2]|0;b:do if(c[d+16>>2]|0){w5(c[d+108>>2]|0);j=O(Z,a)|0;i=0;while(1){if((i|0)>=(j|0))break b;h[f+(i<<3)>>3]=+Sw();i=i+1|0}}while(0);if(r<0.0){r=+dq(o,a,f);h[k>>3]=r}if(q<0.0){h[m>>3]=.2;q=.2}if(s>=0.0){h[d>>3]=-1.0;s=-1.0}N=1.0-s;P=+D(+r,+N);I=+D(+q,+((2.0-s)*.3333333333333333))/r;J=a<<3;S=KK(J)|0;J=O(Z,J)|0;T=KK(J)|0;K=(aa|0)!=0;L=d+116|0;M=d+64|0;F=s==-1.0;G=(e|0)!=0;H=1.0/+(Z|0);i=0;B=0;E=0.0;while(1){B=B+1|0;W6(T|0,f|0,J|0)|0;if(K){i=cq(ba)|0;n=i;i=hw(a,Z,i,f,(c[L>>2]|0)==0?0:e)|0}u=0.0;s=0.0;v=0;r=0.0;c:while(1){if((v|0)<(Z|0))j=0;else break;while(1){if((j|0)>=(a|0))break;h[S+(j<<3)>>3]=0.0;j=j+1|0}z=v+1|0;m=Q+(z<<2)|0;A=O(v,a)|0;k=c[Q+(v<<2)>>2]|0;while(1){if((k|0)>=(c[m>>2]|0))break;p=R+(k<<2)|0;j=c[p>>2]|0;d:do if((j|0)!=(v|0)){q=+_w(f,a,v,j)*I;j=0;while(1){if((j|0)>=(a|0))break d;ha=q*(+h[f+(j+A<<3)>>3]-+h[f+((O(c[p>>2]|0,a)|0)+j<<3)>>3]);y=S+(j<<3)|0;h[y>>3]=+h[y>>3]-ha;j=j+1|0}}while(0);k=k+1|0}e:do if(!K)if(G&(c[L>>2]|0)!=0){j=0;while(1){if((j|0)==(Z|0))break e;f:do if((j|0)!=(v|0)){ha=+Zw(f,a,v,j);m=e+(j<<3)|0;p=O(j,a)|0;q=+D(+ha,+N);q=1.0/(F?ha*ha:q);k=0;while(1){if((k|0)>=(a|0))break f;y=S+(k<<3)|0;h[y>>3]=+h[m>>3]*P*(+h[f+(k+A<<3)>>3]-+h[f+(k+p<<3)>>3])*q+ +h[y>>3];k=k+1|0}}while(0);j=j+1|0}}else{j=0;while(1){if((j|0)==(Z|0))break e;g:do if((j|0)!=(v|0)){ha=+Zw(f,a,v,j);m=O(j,a)|0;q=+D(+ha,+N);q=1.0/(F?ha*ha:q);k=0;while(1){if((k|0)>=(a|0))break g;y=S+(k<<3)|0;h[y>>3]=(+h[f+(k+A<<3)>>3]-+h[f+(k+m<<3)>>3])*P*q+ +h[y>>3];k=k+1|0}}while(0);j=j+1|0}}else{bw(i,+h[M>>3],f+(A<<3)|0,v,_,$,da,ea,fa,U,g);u=+h[U>>3]+u;y=c[_>>2]|0;s=s+ +(y|0);if(c[g>>2]|0){m=S;k=T;i=S;j=T;p=67;break a}m=c[fa>>2]|0;p=c[ea>>2]|0;v=c[da>>2]|0;j=0;while(1){if((j|0)>=(y|0))break e;ha=+h[m+(j<<3)>>3];ha=ha>1.0e-15?ha:1.0e-15;w=p+(j<<3)|0;x=O(j,a)|0;q=+D(+ha,+N);q=1.0/(F?ha*ha:q);k=0;while(1){if((k|0)>=(a|0))break;ia=S+(k<<3)|0;h[ia>>3]=+h[w>>3]*P*(+h[f+(k+A<<3)>>3]-+h[v+(k+x<<3)>>3])*q+ +h[ia>>3];k=k+1|0}j=j+1|0}}while(0);q=0.0;j=0;while(1){if((j|0)>=(a|0))break;ha=+h[S+(j<<3)>>3];q=ha*ha+q;j=j+1|0}q=+C(+q);r=q+r;h:do if(q>0.0){q=1.0/q;j=0;while(1){if((j|0)>=(a|0)){j=0;break h}ia=S+(j<<3)|0;h[ia>>3]=+h[ia>>3]*q;j=j+1|0}}else j=0;while(0);while(1){if((j|0)>=(a|0)){v=z;continue c}ia=f+(j+A<<3)|0;h[ia>>3]=+h[ia>>3]+ +h[S+(j<<3)>>3]*t;j=j+1|0}}if(i|0){ow(i);bq(ba,s*H*5.0+u*H)}t=+jq(Y,t,r,E,X);if(!((B|0)<(W|0)&t>V))break;else E=r}if(!(c[d+112>>2]|0)){m=S;k=T;j=T;i=S;p=66}else{kq(a,o,f);m=S;k=T;j=T;i=S;p=66}}else{c[g>>2]=-100;o=b;m=0;k=0;j=0;i=0;p=66}while(0);if((p|0)==66)if(aa)p=67;if((p|0)==67){$p(ba);c[ca>>2]=n}if(k|0)U1(j);if((o|0)!=(b|0))qw(o);if(m|0)U1(i);i=c[da>>2]|0;if(i|0)U1(i);i=c[ea>>2]|0;if(i|0)U1(i);i=c[fa>>2]|0;if(i|0)U1(i)}l=ga;return}function pq(a,b,d,e,f,g,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=+i;j=j|0;var k=0,m=0,n=0,o=0,p=0.0,q=0,r=0.0,s=0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0.0,z=0,A=0,B=0.0,E=0,F=0.0,G=0.0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0.0,Z=0,_=0.0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0.0,ia=0;ga=l;l=l+48|0;o=ga+8|0;ba=ga+40|0;ca=ga+36|0;W=ga+32|0;ea=ga+28|0;fa=ga+24|0;X=ga;p=+h[e>>3];q=e+32|0;r=+h[q>>3];Y=+h[e+72>>3];Z=c[e+80>>2]|0;_=+h[e+88>>3];t=+h[e+96>>3];$=c[e+104>>2]|0;c[ba>>2]=0;c[ca>>2]=10;c[W>>2]=0;c[ea>>2]=0;c[fa>>2]=0;h[X>>3]=0.0;if(!((b|0)==0|(Z|0)<1)?(aa=c[b>>2]|0,n=c[b+4>>2]|0,!((a|0)<1|(n|0)<1)):0){if((c[e+132>>2]|0)!=0?(n|0)>=(c[e+52>>2]|0):0){m=KK(a*80|0)|0;c[W>>2]=m;c[ea>>2]=KK(80)|0;c[fa>>2]=KK(80)|0;s=1;k=m}else{s=0;k=0;m=0}c[j>>2]=0;if((aa|0)==(n|0)){V=vw(b,1)|0;if(!d){U=0;k=V}else{U=c[d+28>>2]|0;k=d}T=c[k+24>>2]|0;S=c[k+20>>2]|0;if(i<0.0){G=+qq(aa,S,U);F=+(c[S+(aa<<2)>>2]|0);B=+(aa|0);i=F/(B*B-F)*i/+D(+G,+(p+1.0));R=c[15712]|0;h[o>>3]=G;h[o+8>>3]=i;w4(R,92231,o)|0}a:do if(c[e+16>>2]|0){U4(92253,24,1,c[15712]|0)|0;w5(c[e+108>>2]|0);m=O(aa,a)|0;k=0;while(1){if((k|0)>=(m|0))break a;h[g+(k<<3)>>3]=+Sw();k=k+1|0}}while(0);rq(aa,a,g,S,T,U);if(r<0.0)h[q>>3]=.2;if(p>=0.0){h[e>>3]=-1.0;p=-1.0}Q=a<<3;P=KK(Q)|0;Q=O(aa,Q)|0;R=KK(Q)|0;I=(s|0)!=0;J=e+116|0;K=(U|0)==0;L=e+8|0;M=(f|0)!=0;N=p==-1.0;G=1.0-p;H=e+64|0;k=0;E=0;F=0.0;p=1.0;B=t;b:while(1){E=E+1|0;W6(R|0,g|0,Q|0)|0;if(I)k=hw(a,aa,10,g,(c[J>>2]|0)==0?0:f)|0;s=0;t=0.0;c:while(1){if((s|0)<(aa|0))m=0;else break;while(1){if((m|0)>=(a|0))break;h[P+(m<<3)>>3]=0.0;m=m+1|0}A=s+1|0;q=S+(A<<2)|0;z=O(s,a)|0;o=c[S+(s<<2)>>2]|0;while(1){if((o|0)>=(c[q>>2]|0))break;d=T+(o<<2)|0;m=c[d>>2]|0;d:do if((m|0)!=(s|0)){y=+Zw(g,a,s,m);if(!K)p=+h[U+(o<<3)>>3];r=+h[L>>3];e:do if(!(r==2.0))if(r==1.0){r=(y-p)*(1.0/(p*p));u=1.0/y;m=0;while(1){if((m|0)>=(a|0))break e;v=r*(+h[g+(m+z<<3)>>3]-+h[g+((O(c[d>>2]|0,a)|0)+m<<3)>>3])*u;x=P+(m<<3)|0;h[x>>3]=+h[x>>3]-v;m=m+1|0}}else{r=1.0/+D(+p,+(r+1.0));u=y-p;v=1.0/y;m=0;while(1){if((m|0)>=(a|0))break e;ha=+h[g+(m+z<<3)>>3]-+h[g+((O(c[d>>2]|0,a)|0)+m<<3)>>3];ha=r*ha*+D(+u,+(+h[L>>3]))*v;x=P+(m<<3)|0;h[x>>3]=+h[x>>3]-ha;m=m+1|0}}else{r=y-p;r=r*r*(1.0/(p*p*p));u=1.0/y;m=0;while(1){if((m|0)>=(a|0))break e;ha=r*(+h[g+(m+z<<3)>>3]-+h[g+((O(c[d>>2]|0,a)|0)+m<<3)>>3])*u;x=P+(m<<3)|0;h[x>>3]=+h[x>>3]-ha;m=m+1|0}}while(0);if(M&(c[J>>2]|0)!=0){n=f+(o<<3)|0;r=+D(+y,+G);r=1.0/(N?y*y:r);m=0;while(1){if((m|0)>=(a|0))break d;ha=+h[n>>3]*i*(+h[g+(m+z<<3)>>3]-+h[g+((O(c[d>>2]|0,a)|0)+m<<3)>>3])*r;x=P+(m<<3)|0;h[x>>3]=+h[x>>3]-ha;m=m+1|0}}else{r=+D(+y,+G);r=1.0/(N?y*y:r);m=0;while(1){if((m|0)>=(a|0))break d;ha=(+h[g+(m+z<<3)>>3]-+h[g+((O(c[d>>2]|0,a)|0)+m<<3)>>3])*i*r;x=P+(m<<3)|0;h[x>>3]=+h[x>>3]-ha;m=m+1|0}}}while(0);o=o+1|0}f:do if(!I)if(M&(c[J>>2]|0)!=0){m=0;while(1){if((m|0)==(aa|0)){r=0.0;m=0;break f}g:do if((m|0)!=(s|0)){ha=+Zw(g,a,s,m);d=f+(m<<3)|0;o=O(m,a)|0;r=+D(+ha,+G);r=1.0/(N?ha*ha:r);n=0;while(1){if((n|0)>=(a|0))break g;x=P+(n<<3)|0;h[x>>3]=+h[d>>3]*i*(+h[g+(n+z<<3)>>3]-+h[g+(n+o<<3)>>3])*r+ +h[x>>3];n=n+1|0}}while(0);m=m+1|0}}else{m=0;while(1){if((m|0)==(aa|0)){r=0.0;m=0;break f}h:do if((m|0)!=(s|0)){ha=+Zw(g,a,s,m);d=O(m,a)|0;r=+D(+ha,+G);r=1.0/(N?ha*ha:r);n=0;while(1){if((n|0)>=(a|0))break h;x=P+(n<<3)|0;h[x>>3]=(+h[g+(n+z<<3)>>3]-+h[g+(n+d<<3)>>3])*i*r+ +h[x>>3];n=n+1|0}}while(0);m=m+1|0}}else{bw(k,+h[H>>3],g+(z<<3)|0,s,ba,ca,W,ea,fa,X,j);d=c[ba>>2]|0;if(c[j>>2]|0)break b;o=c[fa>>2]|0;q=c[ea>>2]|0;s=c[W>>2]|0;m=0;while(1){if((m|0)>=(d|0)){r=0.0;m=0;break f}ha=+h[o+(m<<3)>>3];ha=ha>1.0e-15?ha:1.0e-15;w=q+(m<<3)|0;x=O(m,a)|0;r=+D(+ha,+G);r=1.0/(N?ha*ha:r);n=0;while(1){if((n|0)>=(a|0))break;ia=P+(n<<3)|0;h[ia>>3]=+h[w>>3]*i*(+h[g+(n+z<<3)>>3]-+h[s+(n+x<<3)>>3])*r+ +h[ia>>3];n=n+1|0}m=m+1|0}}while(0);while(1){if((m|0)>=(a|0))break;ha=+h[P+(m<<3)>>3];r=ha*ha+r;m=m+1|0}r=+C(+r);t=r+t;i:do if(r>0.0){r=1.0/r;m=0;while(1){if((m|0)>=(a|0)){m=0;break i}ia=P+(m<<3)|0;h[ia>>3]=+h[ia>>3]*r;m=m+1|0}}else m=0;while(0);while(1){if((m|0)>=(a|0)){s=A;continue c}ia=g+(m+z<<3)|0;h[ia>>3]=+h[ia>>3]+ +h[P+(m<<3)>>3]*B;m=m+1|0}}if(k|0)ow(k);B=+jq($,B,t,F,_);if(!((E|0)<(Z|0)&B>Y)){da=83;break}else F=t}if((da|0)==83?c[e+112>>2]|0:0)kq(a,V,g);U1(R);if((V|0)!=(b|0))qw(V);U1(P);k=c[W>>2]|0;m=k}else c[j>>2]=-100;if(m|0)U1(k);k=c[ea>>2]|0;if(k|0)U1(k);k=c[fa>>2]|0;if(k|0)U1(k)}l=ga;return}function qq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0,j=0.0;if(!d)e=1.0;else{f=0;e=0.0;a:while(1){if((f|0)>=(a|0))break;g=f+1|0;i=c[b+(g<<2)>>2]|0;f=c[b+(f<<2)>>2]|0;while(1){if((f|0)>=(i|0)){f=g;continue a}j=+h[d+(f<<3)>>3]+e;f=f+1|0;e=j}}e=e/+(c[b+(a<<2)>>2]|0)}return +e}function rq(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 i=0,j=0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0;v=l;l=l+16|0;u=v;t=(g|0)==0;k=0.0;m=0.0;n=1.0;j=0;a:while(1){if((j|0)>=(a|0))break;r=j+1|0;s=e+(r<<2)|0;q=c[e+(j<<2)>>2]|0;while(1){if((q|0)>=(c[s>>2]|0)){j=r;continue a}i=c[f+(q<<2)>>2]|0;b:do if((i|0)!=(j|0)){o=+Zw(d,b,j,i);if(!t)n=+h[g+(q<<3)>>3];w=1.0/(n*n);p=n*o*w;o=o*o*w;i=0;while(1){if((i|0)>=(b|0))break b;i=i+1|0;k=k+o;m=m+p}}while(0);q=q+1|0}}k=m/k;j=O(b,a)|0;i=0;while(1){if((i|0)>=(j|0))break;b=d+(i<<3)|0;h[b>>3]=+h[b>>3]*k;i=i+1|0}d=c[15712]|0;h[u>>3]=k;w4(d,92278,u)|0;l=v;return}function sq(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0.0,o=0.0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0.0,A=0,B=0,E=0,F=0,G=0.0,H=0,I=0.0,J=0,K=0,L=0,M=0.0,N=0.0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0.0,X=0,Y=0.0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0.0,ha=0.0,ia=0;fa=l;l=l+32|0;$=fa+24|0;aa=fa+20|0;ba=fa+16|0;da=fa+12|0;ea=fa+8|0;V=fa;r=+h[e>>3];p=e+24|0;o=+h[p>>3];q=e+32|0;n=+h[q>>3];W=+h[e+72>>3];X=c[e+80>>2]|0;Y=+h[e+88>>3];v=+h[e+96>>3];Z=c[e+104>>2]|0;c[$>>2]=0;c[aa>>2]=10;c[ba>>2]=0;c[da>>2]=0;c[ea>>2]=0;h[V>>3]=0.0;if(!((b|0)==0|(X|0)<1)?(_=c[b>>2]|0,m=c[b+4>>2]|0,!((a|0)<1|(m|0)<1)):0){if((m|0)<(c[e+52>>2]|0)){s=0;j=0;k=0}else{k=KK(a*80|0)|0;c[ba>>2]=k;c[da>>2]=KK(80)|0;c[ea>>2]=KK(80)|0;s=1;j=k}c[i>>2]=0;if((_|0)==(m|0)){Q=vw(b,1)|0;R=c[Q+20>>2]|0;S=c[Q+24>>2]|0;T=c[d+20>>2]|0;U=c[d+24>>2]|0;P=c[d+28>>2]|0;a:do if(c[e+16>>2]|0){w5(c[e+108>>2]|0);k=O(_,a)|0;j=0;while(1){if((j|0)>=(k|0))break a;h[g+(j<<3)>>3]=+Sw();j=j+1|0}}while(0);if(o<0.0){o=+dq(Q,a,g);h[p>>3]=o}if(n<0.0){h[q>>3]=.2;n=.2}if(r>=0.0){h[e>>3]=-1.0;r=-1.0}M=1.0-r;N=+D(+o,+M);I=+D(+n,+((2.0-r)*.3333333333333333))/o;K=a<<3;J=KK(K)|0;K=O(_,K)|0;L=KK(K)|0;E=(s|0)!=0;F=e+116|0;G=I*.2;H=e+64|0;A=r==-1.0;B=(f|0)!=0;j=0;y=0;z=0.0;b:while(1){y=y+1|0;W6(L|0,g|0,K|0)|0;if(E)j=hw(a,_,10,g,(c[F>>2]|0)==0?0:f)|0;s=0;o=0.0;c:while(1){if((s|0)<(_|0))k=0;else break;while(1){if((k|0)>=(a|0))break;h[J+(k<<3)>>3]=0.0;k=k+1|0}w=s+1|0;d=R+(w<<2)|0;x=O(s,a)|0;m=c[R+(s<<2)>>2]|0;while(1){if((m|0)>=(c[d>>2]|0))break;p=S+(m<<2)|0;k=c[p>>2]|0;d:do if((k|0)!=(s|0)){n=+_w(g,a,s,k)*I;k=0;while(1){if((k|0)>=(a|0))break d;r=n*(+h[g+(k+x<<3)>>3]-+h[g+((O(c[p>>2]|0,a)|0)+k<<3)>>3]);u=J+(k<<3)|0;h[u>>3]=+h[u>>3]-r;k=k+1|0}}while(0);m=m+1|0}p=T+(w<<2)|0;d=c[T+(s<<2)>>2]|0;while(1){if((d|0)>=(c[p>>2]|0))break;q=U+(d<<2)|0;k=c[q>>2]|0;e:do if((k|0)!=(s|0)){n=+Zw(g,a,s,k);m=P+(d<<3)|0;r=1.0/n;k=0;while(1){if((k|0)>=(a|0))break e;ha=+h[m>>3];ga=n-ha;ga=ga*ga*G*(+h[g+(k+x<<3)>>3]-+h[g+((O(c[q>>2]|0,a)|0)+k<<3)>>3])*r;u=J+(k<<3)|0;h[u>>3]=(n>3];k=k+1|0}}while(0);d=d+1|0}f:do if(!E)if(B&(c[F>>2]|0)!=0){k=0;while(1){if((k|0)==(_|0)){n=0.0;k=0;break f}g:do if((k|0)!=(s|0)){ha=+Zw(g,a,s,k);d=f+(k<<3)|0;p=O(k,a)|0;n=+D(+ha,+M);n=1.0/(A?ha*ha:n);m=0;while(1){if((m|0)>=(a|0))break g;u=J+(m<<3)|0;h[u>>3]=+h[d>>3]*N*(+h[g+(m+x<<3)>>3]-+h[g+(m+p<<3)>>3])*n+ +h[u>>3];m=m+1|0}}while(0);k=k+1|0}}else{k=0;while(1){if((k|0)==(_|0)){n=0.0;k=0;break f}h:do if((k|0)!=(s|0)){ha=+Zw(g,a,s,k);d=O(k,a)|0;n=+D(+ha,+M);n=1.0/(A?ha*ha:n);m=0;while(1){if((m|0)>=(a|0))break h;u=J+(m<<3)|0;h[u>>3]=(+h[g+(m+x<<3)>>3]-+h[g+(m+d<<3)>>3])*N*n+ +h[u>>3];m=m+1|0}}while(0);k=k+1|0}}else{bw(j,+h[H>>3],g+(x<<3)|0,s,$,aa,ba,da,ea,V,i);d=c[$>>2]|0;if(c[i>>2]|0)break b;p=c[ea>>2]|0;q=c[da>>2]|0;s=c[ba>>2]|0;k=0;while(1){if((k|0)>=(d|0)){n=0.0;k=0;break f}ha=+h[p+(k<<3)>>3];ha=ha>1.0e-15?ha:1.0e-15;t=q+(k<<3)|0;u=O(k,a)|0;n=+D(+ha,+M);n=1.0/(A?ha*ha:n);m=0;while(1){if((m|0)>=(a|0))break;ia=J+(m<<3)|0;h[ia>>3]=+h[t>>3]*N*(+h[g+(m+x<<3)>>3]-+h[s+(m+u<<3)>>3])*n+ +h[ia>>3];m=m+1|0}k=k+1|0}}while(0);while(1){if((k|0)>=(a|0))break;ha=+h[J+(k<<3)>>3];n=ha*ha+n;k=k+1|0}n=+C(+n);o=n+o;i:do if(n>0.0){n=1.0/n;k=0;while(1){if((k|0)>=(a|0)){k=0;break i}ia=J+(k<<3)|0;h[ia>>3]=+h[ia>>3]*n;k=k+1|0}}else k=0;while(0);while(1){if((k|0)>=(a|0)){s=w;continue c}ia=g+(k+x<<3)|0;h[ia>>3]=+h[ia>>3]+ +h[J+(k<<3)>>3]*v;k=k+1|0}}if(j|0)ow(j);v=+jq(Z,v,o,z,Y);if(!((y|0)<(X|0)&v>W)){ca=70;break}else z=o}if((ca|0)==70?c[e+112>>2]|0:0)kq(a,Q,g);U1(L);if((Q|0)!=(b|0))qw(Q);U1(J);j=c[ba>>2]|0;k=j}else c[i>>2]=-100;if(k|0)U1(j);j=c[da>>2]|0;if(j|0)U1(j);j=c[ea>>2]|0;if(j|0)U1(j)}l=fa;return}function tq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=c[b+20>>2]|0;o=c[b+24>>2]|0;p=KK(a<<3)|0;m=c[b>>2]|0;k=0;a:while(1){if((k|0)<(m|0))b=0;else break;while(1){if((b|0)>=(a|0))break;h[p+(b<<3)>>3]=0.0;b=b+1|0}l=k+1|0;j=c[n+(l<<2)>>2]|0;i=c[n+(k<<2)>>2]|0;b=0;while(1){if((i|0)>=(j|0))break;e=c[o+(i<<2)>>2]|0;if((e|0)!=(k|0)){g=O(e,a)|0;e=0;while(1){if((e|0)>=(a|0))break;q=p+(e<<3)|0;h[q>>3]=+h[q>>3]+ +h[d+(g+e<<3)>>3];e=e+1|0}b=b+1|0}i=i+1|0}if((b|0)<=0){k=l;continue}f=.5/+(b|0);e=O(k,a)|0;b=0;while(1){if((b|0)>=(a|0)){k=l;continue a}q=d+(b+e<<3)|0;h[q>>3]=+h[p+(b<<3)>>3]*f+ +h[q>>3]*.5;b=b+1|0}}U1(p);return}function uq(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.0;i=c[a+20>>2]|0;j=c[a+24>>2]|0;h=c[a>>2]|0;k=KK((h<<2)+4|0)|0;a=0;while(1){if((a|0)>(h|0)){d=0;e=0;break}c[k+(a<<2)>>2]=0;a=a+1|0}while(1){if((e|0)>=(h|0))break;f=e+1|0;g=c[i+(f<<2)>>2]|0;a=0;b=c[i+(e<<2)>>2]|0;while(1){if((b|0)>=(g|0))break;a=a+((e|0)!=(c[j+(b<<2)>>2]|0)&1)|0;b=b+1|0}g=k+(a<<2)|0;e=(c[g>>2]|0)+1|0;c[g>>2]=e;d=(d|0)>(e|0)?d:e;e=f}l=+(c[k+4>>2]|0);if(+(d|0)*.8=(g|0)){e=0;break}h[n+(e<<3)>>3]=0.0;e=e+1|0}while(1){if((e|0)>=(b|0)){g=0;break}h[j+(e<<3)>>3]=0.0;e=e+1|0}while(1){if((g|0)>=(a|0))break;i=O(g,b)|0;e=0;while(1){if((e|0)>=(b|0))break;m=j+(e<<3)|0;h[m>>3]=+h[m>>3]+ +h[c+(e+i<<3)>>3];e=e+1|0}g=g+1|0}d=1.0/+(a|0);e=0;while(1){if((e|0)>=(b|0)){g=0;break}m=j+(e<<3)|0;h[m>>3]=+h[m>>3]*d;e=e+1|0}while(1){if((g|0)>=(a|0)){i=0;break}i=O(g,b)|0;e=0;while(1){if((e|0)>=(b|0))break;m=c+(e+i<<3)|0;h[m>>3]=+h[m>>3]-+h[j+(e<<3)>>3];e=e+1|0}g=g+1|0}while(1){if((i|0)>=(a|0))break;j=O(i,b)|0;g=0;while(1){if((g|0)>=(b|0))break;k=c+(g+j<<3)|0;m=O(g,b)|0;e=0;while(1){if((e|0)==(b|0))break;p=n+(e+m<<3)|0;h[p>>3]=+h[p>>3]+ +h[c+(e+j<<3)>>3]*+h[k>>3];e=e+1|0}g=g+1|0}i=i+1|0}d=+h[n+8>>3];if(d==0.0)d=0.0;else{q=+h[n>>3];f=+h[n+24>>3];d=-(f-q-+C(+(q*q+d*d*4.0+(q*-2.0+f)*f)))/(d*2.0)}f=+C(+(d*d+1.0));d=d/f;f=1.0/f;e=0;while(1){if((e|0)>=(a|0))break;p=O(e,b)|0;n=c+(p<<3)|0;q=+h[n>>3];p=c+(p+1<<3)|0;r=+h[p>>3];h[n>>3]=r*f+q*d;h[p>>3]=r*d-q*f;e=e+1|0}l=o;return}function wq(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;xq(a,b,c,d,e,f,g,h,i,j);return}function xq(a,b,d,e,f,g,i,j,k,m){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;m=m|0;var n=0.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;M=l;l=l+192|0;I=M+176|0;H=M+168|0;K=M;W6(K|0,e|0,168)|0;c[m>>2]=0;do if(b|0?(L=c[b+4>>2]|0,!((a|0)<1|(L|0)<1)):0){if((ww(b,0)|0)!=0?(c[b+16>>2]|0)==1:0){if((c[e+136>>2]|0)==1)o=Bw(d)|0;else o=d;J=Bw(b)|0}else t=5;do if((t|0)==5)if((c[e+136>>2]|0)==1){J=Aw(b,0)|0;o=Aw(d,0)|0;break}else{J=Qw(b)|0;o=d;break}while(0);G=e+160|0;p=c[G>>2]|0;if((p|0)==3){if((j|0)>0)t=14}else if((j|0)>0&(p|0)==4)t=14;if((t|0)==14){d=KK(O(a<<3,c[J>>2]|0)|0)|0;L=yq(J,j,k)|0;wq(a,L,0,e,0,0,d,0,0,m);zq(a,J,j,k,i,d);lu(a,J,i,g,c[e+124>>2]|0,+h[e+144>>3],c[G>>2]|0,j,k);qw(L);U1(d);if((J|0)==(b|0))break;qw(J);break}E=fx(c[e+44>>2]|0,c[e+48>>2]|0)|0;c[E+16>>2]=c[e+40>>2];F=tx(J,o,f,E)|0;q=wx(F)|0;if(!(c[q+32>>2]|0))r=i;else r=KK(O(a<<3,c[q+4>>2]|0)|0)|0;p=uq(J)|0;if(+h[e>>3]==-1.0001234)h[e>>3]=(p|0)==0?-1.0:-1.8;v=e+136|0;w=e+24|0;x=e+16|0;y=e+104|0;z=e+96|0;A=a<<3;B=e+132|0;C=c[15712]|0;D=e+80|0;while(1){a:do switch(c[v>>2]|0){case 0:{switch(c[B>>2]|0){case 0:{nq(a,c[q+8>>2]|0,e,c[q+24>>2]|0,r,m);break a}case 2:{p=q+8|0;t=29;break}case 3:{p=q+8|0;s=c[p>>2]|0;if((c[s>>2]|0)>1e4)if(!0)t=29;else{c[H>>2]=1e4;w4(C,92299,H)|0;t=29}else t=30;break}default:{s=c[q+8>>2]|0;t=30}}if((t|0)==29){iq(a,c[p>>2]|0,e,c[q+24>>2]|0,r,m);break a}else if((t|0)==30){oq(a,s,e,c[q+24>>2]|0,r,m);break a}break}case 1:{h[z>>3]=1.0;c[y>>2]=1;u=(c[q+28>>2]|0)==0;n=u?.5:.05;c[D>>2]=u?500:100;u=(c[q+32>>2]|0)==0;p=q+8|0;s=q+12|0;t=q+24|0;pq(a,c[p>>2]|0,c[s>>2]|0,e,c[t>>2]|0,r,n,m);if(u){c[x>>2]=0;h[z>>3]=.05;c[y>>2]=0;pq(a,c[p>>2]|0,c[s>>2]|0,e,c[t>>2]|0,r,n*.5,m);pq(a,c[p>>2]|0,c[s>>2]|0,e,c[t>>2]|0,r,n*.125,m);pq(a,c[p>>2]|0,c[s>>2]|0,e,c[t>>2]|0,r,n*.03125,m)}break}default:{}}while(0);t=c[q+32>>2]|0;if(!t){t=39;break}if(c[m>>2]|0){t=35;break}u=c[q+16>>2]|0;p=c[q+40>>2]|0;if(!(c[t+32>>2]|0))s=i;else s=KK(O(A,c[t+4>>2]|0)|0)|0;Aq(a,c[t+8>>2]|0,u,c[t+20>>2]|0,r,s,p,+h[w>>3]*.001);U1(r);c[x>>2]=0;h[w>>3]=+h[w>>3]*.75;c[y>>2]=0;h[z>>3]=((c[(c[t+28>>2]|0)+40>>2]|0)+-9|0)>>>0<2?1.0:.1;q=t;r=s}if((t|0)==35)U1(r);else if((t|0)==39){Ux(a,J,e,f,i,m);if(0){c[I>>2]=c[e+124>>2];w4(C,92362,I)|0}if((a|0)==2)vq(L,2,i);n=+h[e+152>>3];if(n!=0.0)Bq(L,a,i,n);lu(a,J,i,g,c[e+124>>2]|0,+h[e+144>>3],c[G>>2]|0,j,k)}W6(e|0,K|0,168)|0;if((J|0)!=(b|0))qw(J);if(!((o|0)==0|(o|0)==(d|0)))qw(o);gx(E);hx(F)}while(0);l=M;return}function yq(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,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;y=l;l=l+16|0;x=y;u=c[a+20>>2]|0;v=c[a+24>>2]|0;w=KK(c[a>>2]<<2)|0;e=0;while(1){if((e|0)>=(c[a>>2]|0)){e=0;break}c[w+(e<<2)>>2]=1;e=e+1|0}while(1){if((e|0)>=(b|0)){e=0;d=0;break}c[w+(c[d+(e<<2)>>2]<<2)>>2]=-1;e=e+1|0}while(1){m=c[a>>2]|0;if((d|0)>=(m|0)){d=0;b=0;break}b=w+(d<<2)|0;if((c[b>>2]|0)>0){c[b>>2]=e;e=e+1|0}d=d+1|0}a:while(1){while(1){if((b|0)>=(m|0))break a;if((c[w+(b<<2)>>2]|0)>=0)break;b=b+1|0}j=b+1|0;k=c[u+(j<<2)>>2]|0;i=c[u+(b<<2)>>2]|0;while(1){if((i|0)>=(k|0)){b=j;continue a}f=c[v+(i<<2)>>2]|0;b:do if((c[w+(f<<2)>>2]|0)>-1)d=d+1|0;else{h=c[u+(f+1<<2)>>2]|0;g=c[u+(f<<2)>>2]|0;while(1){if((g|0)>=(h|0))break b;f=c[v+(g<<2)>>2]|0;if((f|0)!=(b|0))d=((c[w+(f<<2)>>2]|0)>>>31^1)+d|0;g=g+1|0}}while(0);i=i+1|0}}b=d<<2;if((d|0)>0){r=KK(b)|0;s=KK(b)|0;p=s;q=r}else{p=0;q=0;r=0;s=0}t=c[15712]|0;b=0;f=0;c:while(1){d=c[a>>2]|0;while(1){if((b|0)>=(d|0))break c;o=w+(b<<2)|0;if((c[o>>2]|0)>=0)break;b=b+1|0}m=b+1|0;n=u+(m<<2)|0;k=c[u+(b<<2)>>2]|0;d=f;while(1){if((k|0)>=(c[n>>2]|0)){b=m;f=d;continue c}f=v+(k<<2)|0;g=c[f>>2]|0;d:do if((c[w+(g<<2)>>2]|0)>-1){c[q+(d<<2)>>2]=c[o>>2];c[p+(d<<2)>>2]=c[w+(c[f>>2]<<2)>>2];d=d+1|0}else{j=u+(g+1<<2)|0;i=c[u+(g<<2)>>2]|0;while(1){if((i|0)>=(c[j>>2]|0))break d;f=v+(i<<2)|0;h=c[f>>2]|0;do if((h|0)!=(b|0)?(c[w+(h<<2)>>2]|0)>-1:0){c[q+(d<<2)>>2]=c[o>>2];h=d+1|0;c[p+(d<<2)>>2]=c[w+(c[f>>2]<<2)>>2];g=c[o>>2]|0;d=c[w+(c[f>>2]<<2)>>2]|0;if((g|0)!=68)if((d|0)==68)d=68;else{d=h;break}c[x>>2]=g;c[x+4>>2]=d;w4(t,92380,x)|0;d=h}while(0);i=i+1|0}}while(0);k=k+1|0}}x=Dw(f,e,e,q,p,0,8,8)|0;U1(r);U1(s);U1(w);l=y;return x|0}function zq(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 i=0,j=0,k=0.0,l=0,m=0,n=0,o=0,p=0,q=0;p=KK(c[b>>2]<<2)|0;i=0;while(1){if((i|0)>=(c[b>>2]|0)){i=0;break}c[p+(i<<2)>>2]=1;i=i+1|0}while(1){if((i|0)>=(d|0)){i=0;l=0;break}j=c[e+(i<<2)>>2]|0;if((j|0)>-1?(j|0)<(c[b>>2]|0):0)c[p+(j<<2)>>2]=-1;i=i+1|0}while(1){n=c[b>>2]|0;if((l|0)>=(n|0)){l=0;break}j=p+(l<<2)|0;if((c[j>>2]|0)>-1){c[j>>2]=i;i=i+1|0}l=l+1|0}while(1){if((l|0)>=(n|0))break;i=c[p+(l<<2)>>2]|0;a:do if((i|0)>-1){m=O(l,a)|0;j=O(i,a)|0;i=0;while(1){if((i|0)>=(a|0))break a;h[f+(i+m<<3)>>3]=+h[g+(j+i<<3)>>3];i=i+1|0}}while(0);l=l+1|0}o=b+20|0;g=b+24|0;n=0;while(1){if((n|0)>=(d|0))break;b=c[e+(n<<2)>>2]|0;i=c[o>>2]|0;l=c[i+(b+1<<2)>>2]|0;i=c[i+(b<<2)>>2]|0;m=l-i|0;b=O(b,a)|0;j=0;while(1){if((j|0)>=(a|0))break;h[f+(j+b<<3)>>3]=0.0;j=j+1|0}while(1){if((i|0)<(l|0))j=0;else break;while(1){if((j|0)>=(a|0))break;k=+h[f+((O(c[(c[g>>2]|0)+(i<<2)>>2]|0,a)|0)+j<<3)>>3];q=f+(j+b<<3)|0;h[q>>3]=+h[q>>3]+k;j=j+1|0}i=i+1|0}k=1.0/+(m|0);i=0;while(1){if((i|0)>=(a|0))break;q=f+(i+b<<3)|0;h[q>>3]=+h[q>>3]*k;i=i+1|0}n=n+1|0}U1(p);return}function Aq(a,b,d,e,f,g,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=+j;var k=0,m=0,n=0,o=0,p=0,q=0.0;o=l;l=l+16|0;n=o;c[n>>2]=g;Gw(d,0,f,0,n,0,a);a:do if((i+-1|0)>>>0<6){tq(a,b,c[n>>2]|0);k=c[e>>2]|0;m=c[e+20>>2]|0;g=c[e+24>>2]|0;b=0;b:while(1){if((b|0)>=(k|0))break a;i=b+1|0;e=m+(i<<2)|0;b=c[m+(b<<2)>>2]|0;c:while(1){b=b+1|0;if((b|0)>=(c[e>>2]|0)){b=i;continue b}f=g+(b<<2)|0;d=0;while(1){if((d|0)>=(a|0))continue c;q=(+Sw()+-.5)*j;p=(c[n>>2]|0)+((O(c[f>>2]|0,a)|0)+d<<3)|0;h[p>>3]=+h[p>>3]+q;d=d+1|0}}}}while(0);l=o;return}function Bq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;var e=0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;k=l;l=l+16|0;j=k;e=0;while(1){if((e|0)>=(b|0)){g=0;break}h[j+(e<<3)>>3]=0.0;e=e+1|0}while(1){if((g|0)>=(a|0))break;i=O(g,b)|0;e=0;while(1){if((e|0)>=(b|0))break;m=j+(e<<3)|0;h[m>>3]=+h[m>>3]+ +h[c+(e+i<<3)>>3];e=e+1|0}g=g+1|0}f=1.0/+(a|0);e=0;while(1){if((e|0)>=(b|0)){g=0;break}m=j+(e<<3)|0;h[m>>3]=+h[m>>3]*f;e=e+1|0}while(1){if((g|0)>=(a|0))break;i=O(g,b)|0;e=0;while(1){if((e|0)>=(b|0))break;m=c+(e+i<<3)|0;h[m>>3]=+h[m>>3]-+h[j+(e<<3)>>3];e=e+1|0}g=g+1|0}d=d*-.017453277777777776;f=+E(+d);d=+F(+d);e=0;while(1){if((e|0)>=(a|0))break;m=O(e,b)|0;j=c+(m<<3)|0;n=+h[j>>3];m=c+(m+1<<3)|0;o=+h[m>>3];h[j>>3]=o*d+n*f;h[m>>3]=o*f-n*d;e=e+1|0}l=k;return}function Cq(a,b,d,e,f,g,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=+g;i=i|0;var j=0,k=0,l=0,m=0;m=(ww(b,0)|0)==0;j=(c[b+16>>2]|0)==1;if(m)if(j)j=Bw(vw(b,0)|0)|0;else k=5;else if(j)j=b;else k=5;if((k|0)==5)j=Qw(b)|0;m=Bw(j)|0;c[i>>2]=0;j=c[m>>2]|0;if(!d){KK(O(a<<3,j)|0)|0;ab()}l=Gx(m,a,0.0,c[d>>2]|0,(e|0)==0?0:2,1)|0;if(!l)c[i>>2]=-1;else{h[l+40>>3]=.1;c[l+24>>2]=5;+Ix(l,a,c[d>>2]|0,f,g);k=O(j,a)|0;e=l+32|0;j=0;while(1){if((j|0)>=(k|0))break;i=(c[d>>2]|0)+(j<<3)|0;h[i>>3]=+h[i>>3]/+h[e>>3];j=j+1|0}Hx(l)}if((m|0)!=(b|0))qw(m);return}function Dq(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Cq(a,c,d,e,f,g,h);return}function Eq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=+e;f=+f;g=g|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.0;v=c[b>>2]|0;w=c[b+20>>2]|0;t=c[b+24>>2]|0;u=c[b+28>>2]|0;if(!(ww(b,0)|0))qa(95795,92387,37,92404);a=KK(56)|0;k=a+20|0;c[k>>2]=0;c[a+24>>2]=2;c[a+12>>2]=0;j=KK(16)|0;c[k>>2]=j;h[j>>3]=e;h[j+8>>3]=f;c[a+16>>2]=105;h[a+40>>3]=.01;c[a+48>>2]=~~+C(+(+(c[b>>2]|0)));j=b+8|0;k=a+4|0;c[k>>2]=rw(v,v,(c[j>>2]|0)+v|0,1,1)|0;j=rw(v,v,(c[j>>2]|0)+v|0,1,1)|0;c[a+8>>2]=j;k=c[k>>2]|0;l=c[k+28>>2]|0;m=c[j+28>>2]|0;if((j|0)==0|(k|0)==0){Fx(a);a=0}else{n=c[k+20>>2]|0;o=c[k+24>>2]|0;p=c[j+20>>2]|0;q=c[j+24>>2]|0;c[p>>2]=0;c[n>>2]=0;b=0;d=0;while(1){if((b|0)>=(v|0))break;r=b+1|0;s=w+(r<<2)|0;e=0.0;f=0.0;i=c[w+(b<<2)>>2]|0;while(1){if((i|0)>=(c[s>>2]|0))break;g=c[t+(i<<2)>>2]|0;if((g|0)!=(b|0)){x=+h[u+(i<<3)>>3];x=x>=0.0?x:-x;x=x>.01?x:.01;c[o+(d<<2)>>2]=g;c[q+(d<<2)>>2]=g;g=l+(d<<3)|0;h[g>>3]=-1.0;h[m+(d<<3)>>3]=-x;e=+h[g>>3]+e;f=f-x;d=d+1|0}i=i+1|0}c[o+(d<<2)>>2]=b;c[q+(d<<2)>>2]=b;h[l+(d<<3)>>3]=-e;h[m+(d<<3)>>3]=-f;d=d+1|0;c[n+(r<<2)>>2]=d;c[p+(r<<2)>>2]=d;b=r}c[k+8>>2]=d;c[j+8>>2]=d}return a|0}function Fq(a){a=a|0;Fx(a);return}function Gq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +(+Jx(a,b,c,d,.001))}function Hq(a,b){a=a|0;b=+b;var d=0,e=0,f=0,g=0;if((c[a+16>>2]|0)==1)d=vw(a,0)|0;else d=Qw(a)|0;f=c[d+28>>2]|0;a:do if(b!=1.0){e=c[d+8>>2]|0;a=0;while(1){if((a|0)>=(e|0))break a;g=f+(a<<3)|0;h[g>>3]=+h[g>>3]*b;a=a+1|0}}while(0);return d|0}function Iq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,l=0.0;j=c[b>>2]|0;c[e>>2]=0;k=O(j,a)|0;e=0;while(1){if((e|0)>=(k|0)){e=1;f=1;break}h[d+(e<<3)>>3]=+Sw()*100.0;e=e+1|0}while(1){if((f|0)>=(j|0))break;i=O(f,a)|0;g=0;while(1){if((g|0)>=(a|0))break;l=+h[d+(g<<3)>>3]-+h[d+(g+i<<3)>>3];if((l>=0.0?l:-l)>1.0e-16){e=0;f=j;break}else g=g+1|0}f=f+1|0}a:do if(e|0){w5(1);e=0;while(1){if((e|0)>=(k|0))break a;h[d+(e<<3)>>3]=+Sw()*100.0;e=e+1|0}}while(0);e=Hq(b,1.0)|0;if(!(ww(e,0)|0))qa(92430,92387,164,92466);else{k=Eq(0,e,0,101.0e5,100.0,0)|0;+Gq(k,a,d,300);Fq(k);k=Eq(0,e,0,101.0e3,100.0,0)|0;+Gq(k,a,d,300);Fq(k);k=Eq(0,e,0,1010.0,100.0,0)|0;+Gq(k,a,d,300);Fq(k);k=Eq(0,e,0,10.1,100.0,0)|0;+Gq(k,a,d,300);Fq(k);ax(0.0,0.0,490.0,700.0,c[b>>2]|0,a,d);qw(e);return}}function Jq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,l=0,m=0;k=KK((tB(a)|0)<<4)|0;i=(e|0)!=0;j=b+8|0;g=jC(a)|0;f=0;while(1){if(!g)break;if(i)f=f+((Q2(KB(g)|0,92481,11)|0)==0&1)|0;m=c[g+16>>2]|0;l=c[m+120>>2]<<1;h[k+(l<<3)>>3]=+h[m+32>>3]*.5+ +h[b>>3];h[k+((l|1)<<3)>>3]=+h[m+40>>3]*.5+ +h[j>>3];g=kC(a,g)|0}if(i&(f|0)!=0){b=KK(f<<2)|0;g=jC(a)|0;f=0;while(1){if(!g)break;if(!(Q2(KB(g)|0,92481,11)|0)){c[b+(f<<2)>>2]=c[(c[g+16>>2]|0)+120>>2];f=f+1|0}g=kC(a,g)|0}c[e>>2]=b;c[d>>2]=f}return k|0}function Kq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0,k=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;z=l;l=l+32|0;w=z+16|0;v=z+8|0;u=z;if(a){x=tB(a)|0;y=uB(a)|0;b=jC(a)|0;e=0;while(1){if(!b)break;c[(c[b+16>>2]|0)+120>>2]=e;b=kC(a,b)|0;e=e+1|0}r=y<<2;q=KK(r)|0;r=KK(r)|0;b=y<<3;s=KK(b)|0;o=GA(a,2,101541,0)|0;t=(d|0)!=0;if(t){e=GA(a,2,92493,0)|0;p=JK(b)|0;n=p}else{n=0;e=0;p=0}j=(o|0)==0;k=(e|0)==0;i=jC(a)|0;b=0;while(1){if(!i)break;m=c[(c[i+16>>2]|0)+120>>2]|0;g=XA(a,i)|0;while(1){if(!g)break;c[q+(b<<2)>>2]=m;c[r+(b<<2)>>2]=c[(c[(c[((c[g>>2]&3|0)==2?g:g+-48|0)+40>>2]|0)+16>>2]|0)+120>>2];if(!j?(A=RA(g,o)|0,c[v>>2]=u,(b5(A,101209,v)|0)==1):0)f=+h[u>>3];else{h[u>>3]=1.0;f=1.0}h[s+(b<<3)>>3]=f;if(!k){A=RA(g,e)|0;c[w>>2]=u;if((b5(A,101209,w)|0)==1)f=+h[u>>3];else{h[u>>3]=1.0;f=1.0}h[n+(b<<3)>>3]=f}g=ZA(a,g)|0;b=b+1|0}i=kC(a,i)|0}b=Dw(y,x,x,q,r,s,1,8)|0;if(t)c[d>>2]=Dw(y,x,x,q,r,p,1,8)|0;U1(q);U1(r);U1(s);if(n)U1(p)}else b=0;l=z;return b|0}function Lq(a){a=a|0;var b=0,d=0,e=0.0,f=0,g=0.0,i=0.0,j=0.0,k=0,m=0,n=0,o=0.0,p=0.0;m=l;l=l+16|0;k=m;a:do if(Mq(a,k)|0){b=c[(c[(jC(a)|0)+16>>2]|0)+132>>2]|0;g=+h[b>>3];e=+h[b+8>>3];b=jC(a)|0;while(1){if(!b)break;f=c[(c[b+16>>2]|0)+132>>2]|0;h[f>>3]=+h[f>>3]-g;f=f+8|0;h[f>>3]=+h[f>>3]-e;b=kC(a,b)|0}b=(g!=0.0|e!=0.0)&1;d=jC(a)|0;while(1){if(!d)break a;f=XA(a,d)|0;if(f|0)break;d=kC(a,d)|0}n=c[f>>2]&3;d=c[(c[(c[((n|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;f=c[(c[(c[((n|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;i=+h[f+8>>3];j=+h[f>>3];e=+K(+(+h[d+8>>3]-i),+(+h[d>>3]-j));e=+h[k>>3]-e;h[k>>3]=e;if(e!=0.0){g=+E(+e);e=+F(+e);b=jC(a)|0;while(1){if(!b){b=1;break a}k=c[(c[b+16>>2]|0)+132>>2]|0;p=+h[k>>3]-j;n=k+8|0;o=+h[n>>3]-i;h[k>>3]=p*g+j-o*e;h[n>>3]=p*e+i+o*g;b=kC(a,b)|0}}}else b=0;while(0);l=m;return b|0}function Mq(b,d){b=b|0;d=d|0;var e=0.0,f=0,g=0;g=l;l=l+16|0;f=g;b=QA(b,92497)|0;do if((b|0)!=0?(a[b>>0]|0)!=0:0){e=+s5(b,f);if((c[f>>2]|0)==(b|0))if(!((dP(b)|0)<<24>>24)){b=0;break}else e=0.0;while(1){if(!(e>180.0))break;e=e+-360.0}while(1){if(!(e<=-180.0))break;e=e+360.0}h[d>>3]=e*.017453292519943295;b=1}else b=0;while(0);l=g;return b|0}function Nq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=QA(a,92507)|0;return Oq(a,(d|0)==0?(c|0?c:195059):d,b)|0}function Oq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;m=n+16|0;j=n+8|0;i=n;if((d|0)!=0?(a[d>>0]|0)!=0:0){f=17896;while(1){g=c[f+4>>2]|0;if(!g)break;if(!(j3(d,g,c[f+8>>2]|0)|0)){k=6;break}f=f+16|0}if((k|0)==6){if(!(c[f+12>>2]|0)){c[i>>2]=g;gA(0,92515,i)|0;f=17896}i=c[f>>2]|0;c[e>>2]=i;c[e+4>>2]=c[f+12>>2];if((i|0)==18)Pq(b,d+(c[f+8>>2]|0)|0,e)}if(!(c[f+4>>2]|0)){f=eP(d,63)|0;if(f<<24>>24==63){c[j>>2]=d;gA(0,92557,j)|0;f=0}else f=f&255;f=(f|0)==0;c[e>>2]=f&1;f=f?92604:135709;k=15}}else{c[e>>2]=0;f=135709;k=15}if((k|0)==15)c[e+4>>2]=f;if(0){k=c[15712]|0;j=c[e+8>>2]|0;o=+h[e+16>>3];c[m>>2]=c[e+4>>2];c[m+4>>2]=j;h[m+8>>3]=o;w4(k,92612,m)|0}l=n;return e|0}function Pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e;g=e+4|0;c[f>>2]=g;f=(b5(b,137395,f)|0)>0;b=c[g>>2]|0;c[d+8>>2]=f&(b|0)>-1?b:1e3;h[d+16>>3]=+_O(a,GA(a,0,92648,0)|0,-4.0,-1.0e10);l=e;return}function Qq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+16|0;g=h+8|0;f=h;do if((tB(a)|0)>=2){d=Lq(a)|0;d=(Rq(a)|0)+d|0;e=c[b>>2]|0;if(e){if(0){e=c[15712]|0;j=KB(a)|0;i=c[b+4>>2]|0;c[f>>2]=j;c[f+4>>2]=i;w4(e,92977,f)|0;e=c[b>>2]|0}if(e>>>0>2){switch(e|0){case 3:{e=Sr(a,1)|0;break}case 4:{e=Sr(a,0)|0;break}case 6:case 5:{e=0;break}case 10:case 9:case 7:case 8:case 14:case 13:case 11:case 12:{Cr(a,e)|0;e=0;break}case 15:{e=Sr(a,-1)|0;break}default:{c[g>>2]=c[b+4>>2];gA(0,93e3,g)|0;e=0}}d=e+d|0;break}if(Sq(a)|0){Tq();U1(c[46845]|0);c[46845]=0;break}Uq(a);if((c[b>>2]|0)==2)e=Vq()|0;else e=Wq()|0;if(e|0)Xq();Tq();U1(c[46845]|0);c[46845]=0;d=e+d|0}}else d=0;while(0);l=h;return d|0}function Rq(a){a=a|0;var b=0,d=0.0,e=0,f=0,g=0.0,i=0,j=0,k=0,m=0;m=l;l=l+48|0;i=m+24|0;f=m+16|0;j=m;b=QA(a,140742)|0;a:do if(((b|0)!=0?(k=j+8|0,c[f>>2]=j,c[f+4>>2]=k,e=b5(b,105503,f)|0,(e|0)!=0):0)?(g=+h[j>>3],!(+B(+g)<1.0e-09)):0){if((e|0)!=1){d=+h[k>>3];if(+B(+d)<1.0e-09){b=0;break}}else{h[k>>3]=g;d=g}if(!(d==1.0&g==1.0)){if(0){f=c[15712]|0;h[i>>3]=g;h[i+8>>3]=d;w4(f,93160,i)|0}b=jC(a)|0;while(1){if(!b){b=1;break a}i=c[(c[b+16>>2]|0)+132>>2]|0;h[i>>3]=+h[i>>3]*+h[j>>3];i=i+8|0;h[i>>3]=+h[i>>3]*+h[k>>3];b=kC(a,b)|0}}else b=0}else b=0;while(0);l=m;return b|0}function Sq(b){b=b|0;var d=0,e=0,f=0,i=0.0,j=0.0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;k=n;c[46854]=tB(b)|0;ts();c[46869]=KK((c[46854]|0)*96|0)|0;f=jC(b)|0;d=c[46869]|0;lr(k,b);i=+g[k>>2];j=+g[k+4>>2];k=(a[k+8>>0]|0)==0;j=k?j:j*.013888888888888888;i=k?i:i*.013888888888888888;k=k?2:1;e=0;while(1){if((e|0)>=(c[46854]|0)){d=0;break}o=c[(c[f+16>>2]|0)+132>>2]|0;h[d+8>>3]=+h[o>>3];h[d+16>>3]=+h[o+8>>3];if(mb[k&3](d+40|0,f,i,j)|0){m=4;break}c[d+24>>2]=e;c[d+28>>2]=1;c[d>>2]=f;c[d+88>>2]=0;d=d+96|0;e=e+1|0;f=kC(b,f)|0}if((m|0)==4){U1(c[46869]|0);c[46869]=0;d=1}l=n;return d|0}function Tq(){var a=0,b=0;a=c[46869]|0;b=0;while(1){if((b|0)>=(c[46854]|0))break;pu(a+40|0);a=a+96|0;b=b+1|0}ou();Vs();U1(c[46869]|0);return}function Uq(b){b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0.0;o=l;l=l+32|0;m=o+16|0;n=o;p=c[46869]|0;i=+h[p+8>>3];k=+h[p+16>>3];f=c[46854]|0;d=p;e=1;g=+h[p+40>>3]+i;i=+h[p+56>>3]+i;j=+h[p+48>>3]+k;k=+h[p+64>>3]+k;while(1){if((e|0)>=(f|0))break;s=+h[d+104>>3];q=+h[d+112>>3];t=+h[d+136>>3]+s;r=+h[d+144>>3]+q;s=+h[d+152>>3]+s;q=+h[d+160>>3]+q;d=d+96|0;e=e+1|0;g=ti?s:i;j=rk?q:k}d=QA(b,93100)|0;if(d|0?a[d>>0]|0:0)h[173]=+r5(d);s=+h[173];t=s*(k-j);s=s*(i-g);h[m>>3]=g-s;h[m+8>>3]=j-t;h[n>>3]=s+i;h[n+8>>3]=t+k;dr(m,n);l=o;return}function Vq(){var a=0,b=0,d=0,e=0;d=l;l=l+16|0;b=d;if(Yq(0)|0){Zq();a=0;do{kr();a=a+1|0}while((Yq(a)|0)!=0);if(!0)a=1;else{e=c[15712]|0;c[b>>2]=a;w4(e,93028,b)|0;a=1}}else a=0;l=d;return a|0}function Wq(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;h=i+8|0;g=i;b=Yq(0)|0;if(!b)a=0;else{Zq();_q(0);Yu(0,1);a=0;e=0;d=0;while(1){ar();d=d+1|0;f=Yq(d)|0;if(!f)break;b=(f|0)<(b|0)?0:e+1|0;c[46846]=1;if(b){br();a=a+1|0}_q(1);Yu(0,1);e=b;b=f}if(0){f=c[15712]|0;c[g>>2]=d;w4(f,93028,g)|0;c[h>>2]=a;w4(f,93055,h)|0}cr();a=1}l=i;return a|0}function Xq(){var a=0,b=0,d=0,e=0;d=c[46854]|0;a=c[46869]|0;b=0;while(1){if((b|0)>=(d|0))break;e=c[(c[(c[a>>2]|0)+16>>2]|0)+132>>2]|0;h[e>>3]=+h[a+8>>3];h[e+8>>3]=+h[a+16>>3];a=a+96|0;b=b+1|0}return}function Yq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+48|0;o=q+24|0;n=q+8|0;p=q;d=c[46869]|0;e=c[46854]|0;b=0;while(1){if((b|0)>=(e|0)){f=0;b=0;break}c[d+(b*96|0)+32>>2]=0;b=b+1|0}a:while(1){if((b|0)>=(e+-1|0))break;m=d+96|0;b=b+1|0;j=d+8|0;k=d+40|0;i=d+32|0;g=m;h=b;while(1){if((h|0)>=(e|0)){d=m;continue a}e=g+8|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[o>>2]=c[e>>2];c[o+4>>2]=c[e+4>>2];c[o+8>>2]=c[e+8>>2];c[o+12>>2]=c[e+12>>2];if(!(yu(n,k,o,g+40|0)|0))d=f;else{c[i>>2]=1;c[g+32>>2]=1;d=f+1|0}g=g+96|0;h=h+1|0;f=d;e=c[46854]|0}}if(0>1){o=c[15712]|0;c[p>>2]=a;c[p+4>>2]=f;w4(o,93081,p)|0}l=q;return f|0}function Zq(){var a=0,b=0,d=0,e=0.0,f=0,g=0.0,i=0,j=0,k=0,l=0,m=0,n=0;ir();k=c[46848]|0;l=c[46869]|0;a=c[46845]|0;a:while(1){i=a;if(a>>>0>=k>>>0)break;b=a+4|0;if(b>>>0>=k>>>0){a=b;continue}f=c[b>>2]|0;d=c[a>>2]|0;g=+h[d>>3];if(+h[f>>3]!=g){a=b;continue}e=+h[d+8>>3];if(+h[f+8>>3]!=e){a=b;continue}j=a+8|0;f=2;while(1){if(j>>>0>=k>>>0)break;d=c[j>>2]|0;if(!(+h[d>>3]==g)){m=11;break}if(!(+h[d+8>>3]==e)){m=11;break}j=j+4|0;f=f+1|0}if((m|0)==11){m=0;d=c[j>>2]|0;if(+h[d+8>>3]==e){e=(+h[d>>3]-g)/+(f|0);d=(((j>>>0>b>>>0?j:b)+-1+(0-i)|0)>>>2)+1|0;a=1;while(1){if((a|0)==(d|0)){a=j;continue a}i=c[b>>2]|0;h[i>>3]=+h[i>>3]+e*+(a|0);a=a+1|0;b=b+4|0}}}while(1){if(b>>>0>=j>>>0){a=j;continue a}f=c[a>>2]|0;n=c[f+16>>2]|0;i=c[b>>2]|0;d=c[i+16>>2]|0;h[i>>3]=(+h[l+(n*96|0)+56>>3]-+h[l+(n*96|0)+40>>3]+ +h[l+(d*96|0)+56>>3]-+h[l+(d*96|0)+40>>3])*.5+ +h[f>>3];b=b+4|0;a=a+4|0}}return}function _q(a){a=a|0;var b=0.0,d=0.0,e=0.0,f=0,g=0.0,i=0,j=0,k=0;if(a|0)ir();i=c[46845]|0;j=c[i>>2]|0;d=+h[j>>3];h[23272]=d;k=c[46854]|0;f=1;g=+h[j>>3];while(1){if((f|0)>=(k|0))break;a=c[i+(f<<2)>>2]|0;b=+h[a>>3];if(b>3]}else{e=b;b=d}f=f+1|0;d=b;g=e>g?e:g}e=+h[j+8>>3];h[23273]=e;h[23275]=+h[(c[i+(k+-1<<2)>>2]|0)+8>>3]-e;h[23274]=g-d;return}function $q(){var a=0;a=c[46847]|0;if(a>>>0<(c[46848]|0)>>>0){c[46847]=a+4;a=c[a>>2]|0}else a=0;return a|0}function ar(){var a=0,b=0,d=0;a=c[46869]|0;er();d=(c[46846]|0)==0;b=0;while(1){if((b|0)>=(c[46854]|0))break;if(!(d?!(c[a+32>>2]|0):0))fr(a);a=a+96|0;b=b+1|0}return}function br(){var a=0,b=0,c=0,d=0.0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0;a=l;l=l+32|0;c=a+16|0;b=a;j=+h[23268];i=+h[23266];g=+h[23269];e=+h[23267];d=(i-e)*.05;f=(j-g)*.05;h[b>>3]=f+j;h[b+8>>3]=i+d;h[c>>3]=g-f;h[c+8>>3]=e-d;dr(c,b);l=a;return}function cr(){Gs();Is();Ku();ms();return}function dr(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0;f=+h[a>>3];h[23269]=f;e=+h[b>>3];h[23268]=e;c=+h[a+8>>3];h[23267]=c;d=+h[b+8>>3];h[23266]=d;h[23258]=f;h[23260]=f;h[23262]=e;h[23264]=e;h[23265]=d;h[23261]=d;h[23263]=c;h[23259]=c;return}function er(){var a=0,b=0.0,d=0.0,e=0.0,f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;m=c[46869]|0;g=m+8|0;f=+us(g,186064);e=+us(g,186080);d=+us(g,186096);a=1;b=+us(g,186112);g=m;i=m;j=m;k=m;while(1){l=m+96|0;if((a|0)>=(c[46854]|0))break;q=m+104|0;r=+us(q,186064);n=r>2]|0;o=k+8|0;b=0.0;d=0.0;e=0.0;k=c[k>>2]|0;while(1){f=c[k>>2]|0;if(!f)break;s=k+8|0;r=f+8|0;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[i>>2]=c[s>>2];c[i+4>>2]=c[s+4>>2];c[i+8>>2]=c[s+8>>2];c[i+12>>2]=c[s+12>>2];c[j>>2]=c[r>>2];c[j+4>>2]=c[r+4>>2];c[j+8>>2]=c[r+8>>2];c[j+12>>2]=c[r+12>>2];q=+gr(g,i,j);c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];c[i>>2]=c[s>>2];c[i+4>>2]=c[s+4>>2];c[i+8>>2]=c[s+8>>2];c[i+12>>2]=c[s+12>>2];c[j>>2]=c[r>>2];c[j+4>>2]=c[r+4>>2];c[j+8>>2]=c[r+8>>2];c[j+12>>2]=c[r+12>>2];hr(g,i,j,m,n);b=+h[n>>3]*q+b;d=+h[m>>3]*q+d;e=q+e;k=f}h[a+8>>3]=d/e;h[a+16>>3]=b/e;l=p;return}function gr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0;d=+h[b+8>>3];f=+h[c+8>>3];e=+h[a+8>>3];return +(+B(+((f-e)*+h[b>>3]+(d-f)*+h[a>>3]+ +h[c>>3]*(e-d)))*.5)}function hr(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;h[d>>3]=(+h[b>>3]+ +h[a>>3]+ +h[c>>3])*.3333333333333333;h[e>>3]=(+h[b+8>>3]+ +h[a+8>>3]+ +h[c+8>>3])*.3333333333333333;return}function ir(){var a=0,b=0,d=0,e=0;a=c[46845]|0;if(!a){a=KK(c[46854]<<2)|0;c[46845]=a;c[46848]=a+(c[46854]<<2)}d=c[46869]|0;Vs();e=c[46854]|0;b=0;while(1){if((b|0)>=(e|0))break;c[a>>2]=d+8;c[d+88>>2]=0;c[d+28>>2]=1;d=d+96|0;a=a+4|0;b=b+1|0}o4(c[46845]|0,e,4,69);c[46847]=c[46845];return}function jr(a,b){a=a|0;b=b|0;var d=0.0,e=0.0;a=c[a>>2]|0;b=c[b>>2]|0;d=+h[a+8>>3];e=+h[b+8>>3];if(!(de)){e=+h[a>>3];d=+h[b>>3];if(ed&1}else a=1;else a=-1;return a|0}function kr(){var a=0,b=0,d=0,e=0;d=c[46854]|0;a=0;b=c[46869]|0;while(1){if((a|0)>=(d|0))break;e=b+8|0;h[e>>3]=+h[e>>3]*1.05;e=b+16|0;h[e>>3]=+h[e>>3]*1.05;a=a+1|0;b=b+96|0}return}function lr(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;k=m;j=m+24|0;f=QA(e,93112)|0;if(!((f|0)!=0?(mr(f,j,1.0,0.0)|0)!=0:0))i=3;do if((i|0)==3){e=QA(e,93116)|0;if(e|0?mr(e,j,.800000011920929,4.0)|0:0)break;g[j+4>>2]=4.0;g[j>>2]=4.0;a[j+8>>0]=1}while(0);if(0){i=c[15712]|0;o=+g[j>>2];n=+g[j+4>>2];c[k>>2]=d[j+8>>0];h[k+8>>3]=o;h[k+16>>3]=n;w4(i,93121,k)|0};c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];l=m;return}function mr(b,d,e,f){b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0;o=l;l=l+16|0;m=o;j=o+12|0;k=o+8|0;while(1){h=a[b>>0]|0;i=b+1|0;if(!(S2(h<<24>>24)|0))break;else b=i}p=h<<24>>24==43;h=d+8|0;a[h>>0]=p&1;c[m>>2]=j;c[m+4>>2]=k;switch(b5(p?i:b,93154,m)|0){case 0:{b=0;break}case 1:{c[k>>2]=c[j>>2];n=5;break}default:n=5}if((n|0)==5){do if(a[h>>0]|0){if(e>1.0){q=+g[j>>2]/e;g[d>>2]=q>f?f:q;e=+g[k>>2]/e;e=e>f?f:e;break}if(e<1.0){q=+g[j>>2]/e;g[d>>2]=q>2]/e;e=e>2]=c[j>>2];e=+g[k>>2];break}}else{g[d>>2]=+g[j>>2]/e+1.0;e=+g[k>>2]/e+1.0}while(0);g[d+4>>2]=e;b=1}l=o;return b|0}function nr(a,b){a=a|0;b=b|0;var c=0,d=0;d=l;l=l+32|0;c=d;if((tB(a)|0)<2)a=0;else{Oq(a,b,c)|0;a=Qq(a,c)|0}l=d;return a|0}function or(a){a=a|0;return nr(a,QA(a,92507)|0)|0}function pr(b,e){b=b|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;k=m;j=m+24|0;f=QA(e,93116)|0;if(!((f|0)!=0?(mr(f,j,1.0,0.0)|0)!=0:0))i=3;do if((i|0)==3){e=QA(e,93112)|0;if(e|0?mr(e,j,1.25,3.200000047683716)|0:0)break;g[j+4>>2]=3.200000047683716;g[j>>2]=3.200000047683716;a[j+8>>0]=1}while(0);if(0){i=c[15712]|0;o=+g[j>>2];n=+g[j+4>>2];c[k>>2]=d[j+8>>0];h[k+8>>3]=o;h[k+16>>3]=n;w4(i,93183,k)|0};c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];l=m;return}function qr(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;o=p;h=0;while(1){if((h|0)>=(d|0))break;c[e+(h<<2)>>2]=-1;h=h+1|0}c[e+(a<<2)>>2]=0;rr(f,a);a:do if(!(c[b+8>>2]|0)){h=2147483647;b:while(1){if(!((sr(f,o)|0)<<24>>24))break a;j=c[o>>2]|0;h=c[e+(j<<2)>>2]|0;i=b+(j*20|0)|0;j=b+(j*20|0)+4|0;k=h+1|0;a=1;while(1){if((a|0)>=(c[i>>2]|0))continue b;m=c[(c[j>>2]|0)+(a<<2)>>2]|0;n=e+(m<<2)|0;if((c[n>>2]|0)<0){c[n>>2]=k;tr(f,m)|0}a=a+1|0}}}else{h=2147483647;c:while(1){if(!((sr(f,o)|0)<<24>>24))break a;k=c[o>>2]|0;h=c[e+(k<<2)>>2]|0;i=b+(k*20|0)|0;j=b+(k*20|0)+4|0;k=b+(k*20|0)+8|0;a=1;while(1){if((a|0)>=(c[i>>2]|0))continue c;m=c[(c[j>>2]|0)+(a<<2)>>2]|0;n=e+(m<<2)|0;if((c[n>>2]|0)<0){c[n>>2]=h+~~+g[(c[k>>2]|0)+(a<<2)>>2];tr(f,m)|0}a=a+1|0}}}while(0);a=h+10|0;h=0;while(1){if((h|0)>=(d|0))break;i=e+(h<<2)|0;if((c[i>>2]|0)<0)c[i>>2]=a;h=h+1|0}l=p;return}function rr(a,b){a=a|0;b=b|0;c[c[a>>2]>>2]=b;c[a+12>>2]=0;c[a+8>>2]=1;return}function sr(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+12|0;e=c[d>>2]|0;if((e|0)<(c[a+8>>2]|0)){a=c[a>>2]|0;c[d>>2]=e+1;c[b>>2]=c[a+(e<<2)>>2];a=1}else a=0;return a|0}function tr(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+8|0;e=c[d>>2]|0;if((e|0)<(c[a+4>>2]|0)){a=c[a>>2]|0;c[d>>2]=e+1;c[a+(e<<2)>>2]=b;a=1}else a=0;return a|0}function ur(a,b){a=a|0;b=b|0;c[a>>2]=KK(b<<2)|0;c[a+4>>2]=b;c[a+8>>2]=0;c[a+12>>2]=0;return}function vr(a){a=a|0;U1(c[a>>2]|0);return}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0;if(!0)g=0;else{U4(93216,25,1,c[15712]|0)|0;g=0}while(1){if((g|0)>=(a|0))break;i=b+(g<<2)|0;f=0;e=0.0;while(1){if((f|0)==(a|0))break;if((g|0)!=(f|0))e=+h[(c[i>>2]|0)+(f<<3)>>3]+e;f=f+1|0}h[(c[i>>2]|0)+(g<<3)>>3]=-e;g=g+1|0}return wt(b,d,a+-1|0)|0}function xr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0.0;j=un(b,b,0.0)|0;k=un(b,b,0.0)|0;e=jC(a)|0;while(1){if(!e)break;d=aB(a,e)|0;while(1){if(!d)break;g=c[d>>2]&3;f=(c[c[((g|0)==3?d:d+48|0)+40>>2]>>2]|0)>>>4;g=(c[c[((g|0)==2?d:d+-48|0)+40>>2]>>2]|0)>>>4;if((f|0)!=(g|0)){l=-1.0/+h[(c[d+16>>2]|0)+136>>3];h[(c[j+(g<<2)>>2]|0)+(f<<3)>>3]=l;h[(c[j+(f<<2)>>2]|0)+(g<<3)>>3]=l}d=bB(a,d,e)|0}e=kC(a,e)|0}i=wr(b,j,k)|0;a:do if(i|0){f=a+16|0;e=0;while(1){if((e|0)>=(b|0))break a;g=k+(e<<2)|0;d=0;while(1){if((d|0)==(b|0))break;a=c[g>>2]|0;h[(c[(c[(c[f>>2]|0)+160>>2]|0)+(e<<2)>>2]|0)+(d<<3)>>3]=+h[(c[k+(d<<2)>>2]|0)+(d<<3)>>3]+ +h[a+(e<<3)>>3]+ +h[a+(d<<3)>>3]*-2.0;d=d+1|0}e=e+1|0}}while(0);vn(j);vn(k);return i|0}function yr(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;j=s;n=d<<3;o=KK(n)|0;p=KK(n)|0;q=KK(n)|0;k=KK(n)|0;m=KK(n)|0;n=KK(n)|0;Ot(d,c,n);Ht(d,n);Ht(d,b);Jt(a,d,b,k);Lt(d,n,k,o);Ot(d,o,p);i=f+-1|0;c=0;g=+Pt(d,o,o);while(1){if((c|0)>=(f|0)){c=0;break}if(!(+Qt(d,o)>e)){c=0;break}Jt(a,d,p,q);h=+Pt(d,p,q);if(h==0.0){c=0;break}h=g/h;Nt(d,p,h,m);Mt(d,b,m,b);if((c|0)<(i|0)){Nt(d,q,h,q);Lt(d,o,q,o);h=+Pt(d,o,o);if(g==0.0){r=7;break}Nt(d,p,h/g,p);Mt(d,o,p,p);g=h}c=c+1|0}if((r|0)==7){gA(1,93242,j)|0;c=1}U1(o);U1(p);U1(q);U1(k);U1(m);U1(n);l=s;return c|0}function zr(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;var h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;j=s;o=d<<3;p=KK(o)|0;q=KK(o)|0;k=KK(o)|0;m=KK(o)|0;n=KK(o)|0;o=KK(o)|0;Ot(d,c,o);if(g<<24>>24){Ht(d,o);Ht(d,b)}Kt(a,d,b,m);Lt(d,o,m,p);Ot(d,p,q);g=f+-1|0;c=0;h=+Pt(d,p,p);while(1){if((c|0)>=(f|0)){c=0;break}if(!(+Qt(d,p)>e)){c=0;break}Kt(a,d,q,k);i=+Pt(d,q,k);if(i==0.0){c=0;break}i=h/i;Nt(d,q,i,n);Mt(d,b,n,b);if((c|0)<(g|0)){Nt(d,k,i,k);Lt(d,p,k,p);i=+Pt(d,p,p);if(h==0.0){r=9;break}Nt(d,q,i/h,q);Mt(d,p,q,q);h=i}c=c+1|0}if((r|0)==9){gA(1,93242,j)|0;c=1}U1(p);U1(q);U1(k);U1(m);U1(n);U1(o);l=s;return c|0}function Ar(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;var g=0.0,h=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;j=q;k=d<<2;m=JK(k)|0;n=JK(k)|0;o=JK(k)|0;k=JK(k)|0;St(d,b);St(d,c);Tt(a,d,b,k);St(d,k);Ut(d,c,k,m);Yt(d,m,n);i=f+-1|0;c=0;g=+Zt(d,m,m);while(1){if((c|0)>=(f|0)){c=0;break}if(!(+au(d,m)>e)){c=0;break}St(d,n);St(d,b);St(d,m);Tt(a,d,n,o);St(d,o);h=+Zt(d,n,o);if(h==0.0){c=0;break}h=g/h;Wt(d,b,h,n);if((c|0)<(i|0)){Wt(d,m,-h,o);h=+Zt(d,m,m);if(g==0.0){p=7;break}Xt(d,n,h/g,n);Vt(d,m,n,n);g=h}c=c+1|0}if((p|0)==7){gA(1,93242,j)|0;c=1}U1(m);U1(n);U1(o);U1(k);l=q;return c|0}function Br(a,b,d,e,f,i,j,k,m,n){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;i=i|0;j=j|0;k=k|0;m=m|0;n=+n;var o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0.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.0;M=l;l=l+48|0;F=M+24|0;E=M+16|0;D=M+8|0;C=M;J=M+40|0;K=M+36|0;H=M+32|0;s=j&4;c[J>>2]=0;c[K>>2]=0;a:do if(c[a+16>>2]|0){p=0;o=0;while(1){if((p|0)>=(b|0))break;t=c[a+(p*20|0)>>2]|0;u=a+(p*20|0)+16|0;r=1;while(1){if((r|0)>=(t|0))break;if(!(o<<24>>24))o=+g[(c[u>>2]|0)+(r<<2)>>2]!=0.0;else o=1;r=r+1|0;o=o&1}p=p+1|0}if(o<<24>>24){z=(s|0)!=0;if(z){r=e+4|0;b:do if((i|0)>2){o=i+-1|0;if((on(a,b,d,r,f,o,j,k,15)|0)<0){o=-1;break a}p=e+(o<<2)|0;o=0;while(1){if((o|0)>=(b|0))break b;h[(c[p>>2]|0)+(o<<3)>>3]=+h[(c[r>>2]|0)+(o<<3)>>3];o=o+1|0}}while(0);y=c[e>>2]|0;w=c[r>>2]|0;if((ju(a,b,w,b)|0)==0?(ty(a,b,.01,.1,w,J,K,H)|0)==0:0){x=c[H>>2]|0;if((x|0)<1){o=on(a,b,d,e,f,i,j,k,m)|0;break}c:do if(n>0.0){s=c[J>>2]|0;t=c[K>>2]|0;u=x+-1|0;q=0.0;r=0;while(1){if((r|0)>=(x|0))break c;o=c[t+(r<<2)>>2]|0;A=n-q-+h[w+(c[s+(o<<2)>>2]<<3)>>3]+ +h[w+(c[s+(o+-1<<2)>>2]<<3)>>3];q=(A<0.0?0.0:A)+q;if((r|0)<(u|0))p=c[t+(r+1<<2)>>2]|0;else p=b;while(1){if((o|0)>=(p|0))break;I=w+(c[s+(o<<2)>>2]<<3)|0;h[I>>3]=+h[I>>3]+q;o=o+1|0}r=r+1|0}}while(0);if((i|0)==2?(Qu(a,b,w,y,+h[23294])|0)!=0:0){p=0;o=-1}else L=33}else{p=0;o=-1}}else{hn(a,b,i,e,f)|0;if(!(ty(a,b,.01,.1,0,J,K,H)|0))L=33;else{p=0;o=-1}}d:do if((L|0)==33){if((b|0)==1){o=0;break a}I=KK(c[H>>2]<<2)|0;if(!m){o=0;break a}if(0)TO();switch(k|0){case 2:{if(0)U4(93290,24,1,c[15712]|0)|0;o=nn(a,b)|0;L=46;break}case 1:{o=jn(a,b)|0;if(!o){gA(0,93315,C)|0;gA(3,93364,D)|0;L=47}else G=o;break}case 3:{if(0)U4(93417,21,1,c[15712]|0)|0;o=kn(a,b)|0;L=46;break}default:L=47}if((L|0)==46)if(!o)L=47;else G=o;if((L|0)==47){if(0)U4(93439,26,1,c[15712]|0)|0;G=mn(a,b)|0}if(0){a=c[15712]|0;h[E>>3]=+UO();w4(a,93466,E)|0;U4(93478,25,1,a)|0;TO()}a=b+-1|0;y=(O(a,b)|0)/2|0;E=y+b|0;e:do if(!z){q=1.0;p=0;while(1){if((p|0)>=(i|0))break;r=e+(p<<2)|0;o=0;while(1){if((o|0)>=(b|0))break;A=+B(+(+h[(c[r>>2]|0)+(o<<3)>>3]));q=A>q?A:q;o=o+1|0}p=p+1|0}q=1.0/q;p=0;while(1){if((p|0)>=(i|0))break e;r=e+(p<<2)|0;o=0;while(1){if((o|0)>=(b|0))break;D=(c[r>>2]|0)+(o<<3)|0;h[D>>3]=+h[D>>3]*(10.0*q);o=o+1|0}p=p+1|0}}while(0);f:do if(n>0.0){v=+(y|0);o=0;q=0.0;s=0;g:while(1){if((s|0)>=(a|0))break;t=s+1|0;r=o;p=t;while(1){o=r+1|0;if((p|0)>=(b|0)){s=t;continue g}A=+ft(e,i,s,p);r=o;q=A/+g[G+(o<<2)>>2]+q;p=p+1|0}}q=q/v;o=0;while(1){if((o|0)>=(E|0)){o=0;break f}D=G+(o<<2)|0;g[D>>2]=+g[D>>2]*q;o=o+1|0}}else o=0;while(0);while(1){if((o|0)>=(i|0))break;Ht(b,c[e+(o<<2)>>2]|0);o=o+1|0}p=c[e+4>>2]|0;q=+h[p>>3];o=0;while(1){if((o|0)>=(b|0))break;D=p+(o<<3)|0;h[D>>3]=+h[D>>3]-q;o=o+1|0}u=i<<2;D=KK(u)|0;x=b<<2;w=O(x,i)|0;r=KK(w)|0;o=0;while(1){if((o|0)>=(i|0))break;s=r+((O(o,b)|0)<<2)|0;c[D+(o<<2)>>2]=s;t=e+(o<<2)|0;p=0;while(1){if((p|0)>=(b|0))break;g[s+(p<<2)>>2]=+h[(c[t>>2]|0)+(p<<3)>>3];p=p+1|0}o=o+1|0}v=+(y|0);if(0){C=c[15712]|0;h[F>>3]=+UO();w4(C,93504,F)|0}bu(E,G);cu(E,G);C=KK(b<<3)|0;_t(b,0.0,C);o=0;r=0;while(1){if((r|0)>=(a|0)){o=b;p=0;r=0;break}s=b-r|0;q=0.0;p=1;while(1){o=o+1|0;if((p|0)>=(s|0))break;A=+g[G+(o<<2)>>2];F=C+(p+r<<3)|0;h[F>>3]=+h[F>>3]-A;q=q+A;p=p+1|0}F=C+(r<<3)|0;h[F>>3]=+h[F>>3]-q;r=r+1|0}while(1){if((p|0)>=(b|0))break;g[G+(r<<2)>>2]=+h[C+(p<<3)>>3];F=o+r|0;o=o+-1|0;p=p+1|0;r=F}k=KK(u)|0;c[k>>2]=KK(w)|0;o=1;while(1){if((o|0)>=(i|0))break;c[k+(o<<2)>>2]=(c[k>>2]|0)+((O(o,b)|0)<<2);o=o+1|0}z=KK(x)|0;f=KK(x)|0;j=KK(E<<2)|0;p=Eu(G,b)|0;d=Ju(G,b,c[J>>2]|0,c[K>>2]|0,c[H>>2]|0)|0;y=k+4|0;r=0;A=1797693134862315708145274.0e284;o=0;while(1){if(!(r<<24>>24==0&(o|0)<(m|0)))break;_t(b,0.0,C);du(E,G,j);w=0;t=0;while(1){if((w|0)>=(a|0)){r=0;s=b;t=0;break}x=b-w+-1|0;$t(b,0.0,f);r=0;while(1){if((r|0)>=(i|0))break;H=D+(r<<2)|0;$t(x,+g[(c[H>>2]|0)+(w<<2)>>2],z);Wt(x,z,-1.0,(c[H>>2]|0)+(w<<2)+4|0);bu(x,z);Vt(x,z,f,f);r=r+1|0}eu(x,f);r=0;while(1){if((r|0)>=(x|0))break;s=f+(r<<2)|0;q=+g[s>>2];if(q>=3402823466385288598117041.0e14|q<0.0)g[s>>2]=0.0;r=r+1|0}u=w+1|0;q=0.0;r=t;s=0;while(1){r=r+1|0;if((s|0)>=(x|0))break;H=j+(r<<2)|0;N=+g[H>>2]*+g[f+(s<<2)>>2];g[H>>2]=N;H=C+(u+s<<3)|0;h[H>>3]=+h[H>>3]-N;q=q+N;s=s+1|0}t=C+(w<<3)|0;h[t>>3]=+h[t>>3]-q;w=u;t=r}while(1){if((r|0)>=(b|0)){r=0;break}g[j+(t<<2)>>2]=+h[C+(r<<3)>>3];H=s+t|0;r=r+1|0;s=s+-1|0;t=H}while(1){if((r|0)>=(i|0)){q=0.0;r=0;break}Tt(j,b,c[D+(r<<2)>>2]|0,c[k+(r<<2)>>2]|0);r=r+1|0}while(1){if((r|0)>=(i|0))break;q=+Zt(b,c[D+(r<<2)>>2]|0,c[k+(r<<2)>>2]|0)+q;r=r+1|0}q=q*2.0+v;r=0;while(1){if((r|0)>=(i|0))break;H=D+(r<<2)|0;Tt(G,b,c[H>>2]|0,z);q=q-+Zt(b,c[H>>2]|0,z);r=r+1|0}N=+B(+(q-A))/+B(+(A+1.0e-10));r=((o|0)>1&q>A|N<+h[23294])&1;s=0;while(1){if((s|0)>=(i|0))break;if((s|0)!=1){if(Ar(G,c[D+(s<<2)>>2]|0,c[k+(s<<2)>>2]|0,b,.001,b)|0){o=-1;break d}}else Fu(d,c[y>>2]|0,D,i,1,15,I,n)|0;s=s+1|0}A=q;o=o+1|0}U1(I);Iu(d);if(D|0){r=0;while(1){if((r|0)>=(i|0))break;t=D+(r<<2)|0;u=e+(r<<2)|0;s=0;while(1){if((s|0)>=(b|0))break;h[(c[u>>2]|0)+(s<<3)>>3]=+g[(c[t>>2]|0)+(s<<2)>>2];s=s+1|0}r=r+1|0}U1(c[D>>2]|0);U1(D)}if(k|0){U1(c[k>>2]|0);U1(k)}U1(z);U1(f);U1(C);U1(G);U1(j)}while(0);U1(c[J>>2]|0);U1(c[K>>2]|0);if(p){U1(c[p>>2]|0);U1(p)}}else L=10}else L=10;while(0);if((L|0)==10)o=on(a,b,d,e,f,i,j,k,m)|0;l=M;return o|0}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+48|0;f=m+24|0;g=m+12|0;d=m;i=tB(a)|0;k=KK(i*48|0)|0;lr(d,a);c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];d=jC(a)|0;e=k;while(1){if(!d)break;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];Dr(d,e,f);d=kC(a,d)|0;e=e+48|0}a:do if(!(Er(k,i)|0))d=0;else{switch(b|0){case 9:{Gr(a,k,i,70,1);Ir(a,k,i,71,1);d=0;e=k;break}case 10:{Ir(a,k,i,71,1);Gr(a,k,i,70,1);d=0;e=k;break}case 7:{Gr(a,k,i,72,1);Ir(a,k,i,71,1);j=9;break}case 8:{j=9;break}case 13:{j=10;break}case 14:{Ir(a,k,i,71,0);Gr(a,k,i,70,0);d=0;e=k;break}case 12:{Ir(a,k,i,73,0);Gr(a,k,i,70,0);d=0;e=k;break}default:{Gr(a,k,i,72,0);Ir(a,k,i,71,0);d=0;e=k}}if((j|0)==9){Ir(a,k,i,73,1);Gr(a,k,i,70,1);j=10}if((j|0)==10){Gr(a,k,i,70,0);Ir(a,k,i,71,0);d=0;e=k}while(1){if((d|0)>=(i|0)){d=1;break a}g=c[e+16>>2]|0;j=c[(c[(c[e+20>>2]|0)+16>>2]|0)+132>>2]|0;h[j>>3]=+(c[e+12>>2]|0)*1.3888888888888887e-03;h[j+8>>3]=+(g|0)*1.3888888888888887e-03;d=d+1|0;e=e+48|0}}while(0);U1(k);l=m;return d|0}function Dr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,l=0.0,m=0.0;f=c[b+16>>2]|0;k=c[f+132>>2]|0;l=+h[k>>3]*720.0;j=~~(l+(l>=0.0?.5:-.5));l=+h[k+8>>3]*720.0;k=~~(l+(l>=0.0?.5:-.5));if(!(a[e+8>>0]|0)){m=+h[f+32>>3]*72.0*(+g[e>>2]*5.0);l=+h[f+40>>3]*72.0*(+g[e+4>>2]*5.0);i=~~(m+(m>=0.0?.5:-.5));f=~~(l+(l>=0.0?.5:-.5))}else{l=+h[f+32>>3]*36.0;m=+h[f+40>>3]*36.0;i=~~((+g[e>>2]+ +(~~(l+(l>=0.0?.5:-.5))|0))*10.0);f=~~((+g[e+4>>2]+ +(~~(m+(m>=0.0?.5:-.5))|0))*10.0)}c[d+12>>2]=j;c[d+16>>2]=k;c[d+20>>2]=b;c[d+32>>2]=j-i;c[d+36>>2]=k-f;c[d+40>>2]=i+j;c[d+44>>2]=f+k;return}function Er(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;k=b+-1|0;d=0;a:while(1){if((d|0)>=(k|0)){a=0;break}j=a+48|0;d=d+1|0;g=a+32|0;h=a+40|0;i=a+36|0;f=a+44|0;a=j;e=d;while(1){if((e|0)>=(b|0)){a=j;continue a}if((((c[g>>2]|0)<=(c[a+40>>2]|0)?(c[a+32>>2]|0)<=(c[h>>2]|0):0)?(c[i>>2]|0)<=(c[a+44>>2]|0):0)?(c[a+36>>2]|0)<=(c[f>>2]|0):0){a=1;break a}a=a+48|0;e=e+1|0}}return a|0}function Fr(a,b){a=a|0;b=b|0;if((c[a+36>>2]|0)>(c[b+44>>2]|0))a=0;else a=(c[b+36>>2]|0)<=(c[a+44>>2]|0)&1;return a|0}function Gr(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;i=Vz(18168,c[4584]|0)|0;g=b;h=0;while(1){if((h|0)>=(d|0))break;c[g+8>>2]=c[g+12>>2];nb[c[i>>2]&63](i,g,1)|0;g=g+48|0;h=h+1|0}if(!f)h=Or(a,i,e,74)|0;else h=Nr(i,e,74)|0;uL(h,2,2147483647)|0;g=0;while(1){if((g|0)>=(d|0))break;f=b+12|0;a=c[(c[(c[b+24>>2]|0)+16>>2]|0)+232>>2]|0;e=a-(c[f>>2]|0)|0;c[f>>2]=a;f=b+32|0;c[f>>2]=(c[f>>2]|0)+e;f=b+40|0;c[f>>2]=(c[f>>2]|0)+e;b=b+48|0;g=g+1|0}Pr(h);Rz(i)|0;return}function Hr(a,b){a=a|0;b=b|0;if((c[a+32>>2]|0)>(c[b+40>>2]|0))a=0;else a=(c[b+32>>2]|0)<=(c[a+40>>2]|0)&1;return a|0}function Ir(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;i=Vz(18168,c[4584]|0)|0;g=b;h=0;while(1){if((h|0)>=(d|0))break;c[g+8>>2]=c[g+16>>2];nb[c[i>>2]&63](i,g,1)|0;g=g+48|0;h=h+1|0}if(!f)h=Or(a,i,e,75)|0;else h=Nr(i,e,75)|0;uL(h,2,2147483647)|0;g=0;while(1){if((g|0)>=(d|0))break;f=b+16|0;a=c[(c[(c[b+24>>2]|0)+16>>2]|0)+232>>2]|0;e=a-(c[f>>2]|0)|0;c[f>>2]=a;f=b+36|0;c[f>>2]=(c[f>>2]|0)+e;f=b+44|0;c[f>>2]=(c[f>>2]|0)+e;b=b+48|0;g=g+1|0}Pr(h);Rz(i)|0;return}function Jr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+32|0;e=b+32|0;if((c[a+36>>2]|0)<=(c[b+44>>2]|0)?(c[b+36>>2]|0)<=(c[a+44>>2]|0):0)if((c[a+40>>2]|0)<(c[e>>2]|0))a=1;else{g=Mr(d,e)|0;g=g-(c[b+12>>2]|0)+(c[a+12>>2]|0)|0;b=c[b+16>>2]|0;a=c[a+16>>2]|0;f=(b|0)<(a|0);e=Lr(d,e)|0;a=(g|0)<=(e-(f?a:b)+(f?b:a)|0)&1}else a=0;return a|0}function Kr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+32|0;e=b+32|0;if((c[d>>2]|0)<=(c[b+40>>2]|0)?(c[e>>2]|0)<=(c[a+40>>2]|0):0)if((c[a+44>>2]|0)<(c[b+36>>2]|0))a=1;else{g=Lr(d,e)|0;g=g-(c[b+16>>2]|0)+(c[a+16>>2]|0)|0;b=c[b+12>>2]|0;a=c[a+12>>2]|0;f=(b|0)<(a|0);e=Mr(d,e)|0;a=(g|0)<=(e-(f?a:b)+(f?b:a)|0)&1}else a=0;return a|0}function Lr(a,b){a=a|0;b=b|0;return ((c[a+12>>2]|0)-(c[a+4>>2]|0)+(c[b+12>>2]|0)-(c[b+4>>2]|0)|0)/2|0|0}function Mr(a,b){a=a|0;b=b|0;return ((c[a+8>>2]|0)-(c[a>>2]|0)+(c[b+8>>2]|0)-(c[b>>2]|0)|0)/2|0|0}function Nr(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=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;x=l;l=l+16|0;v=x;a[v>>0]=a[18588]|0;a[v+1>>0]=a[18589]|0;a[v+2>>0]=a[18590]|0;a[v+3>>0]=a[18591]|0;w=oB(93515,v,0)|0;TC(w,137483,280,1)|0;g=Tz(d)|0;h=-2147483647;u=0;while(1){if(!g)break;s=c[g+8>>2]|0;t=u+((h|0)!=(s|0)&1)|0;g=c[g>>2]|0;h=s;u=t}s=w+16|0;t=(u<<3)+-4|0;n=0;j=0;g=0;h=0;m=0;r=Tz(d)|0;i=-2147483647;while(1){if(!r)break;q=c[r+8>>2]|0;if((i|0)!=(q|0)){p=tC(w,KB(c[r+20>>2]|0)|0,1)|0;TC(p,137447,304,1)|0;o=p+16|0;g=c[o>>2]|0;c[g+112>>2]=r;if(!h){c[(c[s>>2]|0)+192>>2]=p;n=p}else{c[(c[n+16>>2]|0)+164>>2]=p;n=h}c[g+176>>2]=0;k=j+1|0;i=JK(k<<2)|0;c[(c[o>>2]|0)+172>>2]=i;if(!m){j=k;k=p;m=p;g=p;h=n;i=q}else{i=m+16|0;c[(c[i>>2]|0)+184>>2]=0;j=JK((m|0)==(n|0)?t:u-j<<2)|0;c[(c[i>>2]|0)+180>>2]=j;j=iB(w,m,p,0,1)|0;TC(j,137460,176,1)|0;g=c[j+16>>2]|0;b[g+170>>1]=10;c[g+156>>2]=1;g=c[i>>2]|0;h=c[g+180>>2]|0;if(!h)g=KK((c[g+184>>2]<<2)+8|0)|0;else g=MK(h,(c[g+184>>2]<<2)+8|0)|0;m=c[i>>2]|0;c[m+180>>2]=g;m=m+184|0;h=c[m>>2]|0;c[m>>2]=h+1;c[g+(h<<2)>>2]=j;g=c[i>>2]|0;c[(c[g+180>>2]|0)+(c[g+184>>2]<<2)>>2]=0;g=c[o>>2]|0;h=c[g+172>>2]|0;if(!h)g=KK((c[g+176>>2]<<2)+8|0)|0;else g=MK(h,(c[g+176>>2]<<2)+8|0)|0;h=c[o>>2]|0;c[h+172>>2]=g;h=h+176|0;m=c[h>>2]|0;c[h>>2]=m+1;c[g+(m<<2)>>2]=j;j=c[o>>2]|0;c[(c[j+172>>2]|0)+(c[j+176>>2]<<2)>>2]=0;j=k;k=p;m=p;g=p;h=n;i=q}}else{k=g;g=n}c[r+24>>2]=k;n=g;g=k;r=c[r>>2]|0}m=m+16|0;c[(c[m>>2]|0)+184>>2]=0;g=JK(4)|0;c[(c[m>>2]|0)+180>>2]=g;a[v>>0]=a[18588]|0;a[v+1>>0]=a[18589]|0;a[v+2>>0]=a[18590]|0;a[v+3>>0]=a[18591]|0;m=oB(93562,v,0)|0;g=Tz(d)|0;while(1){if(!g)break;v=tC(m,KB(c[g+20>>2]|0)|0,1)|0;TC(v,137447,304,1)|0;c[g+28>>2]=v;c[(c[v+16>>2]|0)+112>>2]=g;g=c[g>>2]|0}g=0;k=Tz(d)|0;h=-2147483647;a:while(1){if(!k)break;j=c[k+8>>2]|0;b:do if((h|0)==(j|0))j=h;else{g=k;while(1){g=c[g>>2]|0;if(!g)break a;if((c[g+8>>2]|0)!=(j|0))break b}}while(0);i=k+28|0;h=g;while(1){if(!h)break;if(lb[e&127](k,h)|0)iB(m,c[i>>2]|0,c[h+28>>2]|0,0,1)|0;h=c[h>>2]|0}k=c[k>>2]|0;h=j}Qr(m,w,f);sB(m)|0;l=x;return w|0}function Or(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+16|0;r=s;a[r>>0]=a[18588]|0;a[r+1>>0]=a[18589]|0;a[r+2>>0]=a[18590]|0;a[r+3>>0]=a[18591]|0;r=oB(93515,r,0)|0;TC(r,137483,280,1)|0;k=r+16|0;h=Tz(e)|0;i=0;while(1){if(!h)break;j=tC(r,KB(c[h+20>>2]|0)|0,1)|0;TC(j,137447,304,1)|0;p=j+16|0;n=c[p>>2]|0;c[n+112>>2]=h;c[h+24>>2]=j;c[n+176>>2]=0;n=JK(4)|0;o=c[p>>2]|0;c[o+172>>2]=n;c[o+184>>2]=0;o=JK(4)|0;c[(c[p>>2]|0)+180>>2]=o;if(!i)c[(c[k>>2]|0)+192>>2]=j;else c[(c[i+16>>2]|0)+164>>2]=j;h=c[h>>2]|0;i=j}m=Tz(e)|0;a:while(1){if(!m)break;n=m+32|0;o=m+24|0;p=m+20|0;h=m;while(1){h=c[h>>2]|0;if(!h)break;if(lb[f&127](m,h)|0){i=lb[g&127](n,h+32|0)|0;j=iB(r,c[o>>2]|0,c[h+24>>2]|0,0,1)|0;TC(j,137460,176,1)|0;if((i|0)>=65536){q=13;break a}k=j+16|0;t=c[k>>2]|0;b[t+170>>1]=i;c[t+156>>2]=1;if(j|0?iB(d,c[p>>2]|0,c[h+20>>2]|0,0,0)|0:0)c[(c[k>>2]|0)+156>>2]=100}}m=c[m>>2]|0}if((q|0)==13)qa(93518,93534,254,93547);m=Tz(e)|0;while(1){if(!m)break;k=c[m+24>>2]|0;n=k+16|0;k=XA(r,k)|0;while(1){if(!k)break;h=c[n>>2]|0;i=c[h+180>>2]|0;if(!i)h=KK((c[h+184>>2]<<2)+8|0)|0;else h=MK(i,(c[h+184>>2]<<2)+8|0)|0;i=c[n>>2]|0;c[i+180>>2]=h;i=i+184|0;j=c[i>>2]|0;c[i>>2]=j+1;c[h+(j<<2)>>2]=k;j=c[n>>2]|0;c[(c[j+180>>2]|0)+(c[j+184>>2]<<2)>>2]=0;j=k+-48|0;h=c[(c[((c[k>>2]&3|0)==2?k:j)+40>>2]|0)+16>>2]|0;i=c[h+172>>2]|0;if(!i)h=KK((c[h+176>>2]<<2)+8|0)|0;else h=MK(i,(c[h+176>>2]<<2)+8|0)|0;c[(c[(c[((c[k>>2]&3|0)==2?k:j)+40>>2]|0)+16>>2]|0)+172>>2]=h;g=c[(c[((c[k>>2]&3|0)==2?k:j)+40>>2]|0)+16>>2]|0;q=c[g+172>>2]|0;g=g+176|0;t=c[g>>2]|0;c[g>>2]=t+1;c[q+(t<<2)>>2]=k;t=c[(c[((c[k>>2]&3|0)==2?k:j)+40>>2]|0)+16>>2]|0;c[(c[t+172>>2]|0)+(c[t+176>>2]<<2)>>2]=0;k=ZA(r,k)|0}m=c[m>>2]|0}l=s;return r|0}function Pr(a){a=a|0;var b=0,d=0,e=0,f=0;f=jC(a)|0;while(1){if(!f)break;d=f+16|0;b=c[d>>2]|0;e=c[b+172>>2]|0;if(e){U1(e);b=c[d>>2]|0}b=c[b+180>>2]|0;if(b|0)U1(b);f=kC(a,f)|0}sB(a)|0;return}function Qr(a,d,e){a=a|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;k=jC(a)|0;while(1){if(!k)break;n=c[(c[k+16>>2]|0)+112>>2]|0;m=c[n+24>>2]|0;n=n+32|0;o=m+16|0;l=XA(a,k)|0;while(1){if(!l)break;h=c[(c[(c[((c[l>>2]&3|0)==2?l:l+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0;p=lb[e&127](n,h+32|0)|0;h=c[h+24>>2]|0;i=iB(d,m,h,0,1)|0;TC(i,137460,176,1)|0;j=i+16|0;f=c[j>>2]|0;c[f+156>>2]=1;g=b[f+170>>1]|0;if((p|0)>(g&65535|0)){if(!(g<<16>>16)){f=c[o>>2]|0;g=c[f+180>>2]|0;if(!g)f=KK((c[f+184>>2]<<2)+8|0)|0;else f=MK(g,(c[f+184>>2]<<2)+8|0)|0;q=c[o>>2]|0;c[q+180>>2]=f;q=q+184|0;g=c[q>>2]|0;c[q>>2]=g+1;c[f+(g<<2)>>2]=i;f=c[o>>2]|0;c[(c[f+180>>2]|0)+(c[f+184>>2]<<2)>>2]=0;h=h+16|0;f=c[h>>2]|0;g=c[f+172>>2]|0;if(!g)f=KK((c[f+176>>2]<<2)+8|0)|0;else f=MK(g,(c[f+176>>2]<<2)+8|0)|0;g=c[h>>2]|0;c[g+172>>2]=f;g=g+176|0;q=c[g>>2]|0;c[g>>2]=q+1;c[f+(q<<2)>>2]=i;f=c[h>>2]|0;c[(c[f+172>>2]|0)+(c[f+176>>2]<<2)>>2]=0;f=c[j>>2]|0}b[f+170>>1]=p}l=ZA(a,l)|0}k=kC(a,k)|0}return}function Rr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return (c[b>>2]|0)-(c[d>>2]|0)|0}function Sr(b,d){b=b|0;d=d|0;var e=0,f=0,i=0.0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.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.0;y=l;l=l+64|0;u=y+24|0;s=y+16|0;r=y+52|0;q=y+40|0;t=y;w=tB(b)|0;x=KK(w*72|0)|0;lr(q,b);k=+g[q>>2];m=+g[q+4>>2];q=(a[q+8>>0]|0)!=0;k=q?k*.013888888888888888:k;m=q?m*.013888888888888888:m;n=k*.5;o=m*.5;e=x;f=jC(b)|0;while(1){if(!f)break;p=c[f+16>>2]|0;i=+h[p+32>>3];if(q){j=+h[p+40>>3]*.5+m;i=i*.5+k}else{j=o*+h[p+40>>3];i=n*i}p=c[p+132>>2]|0;A=+h[p>>3];h[e>>3]=A;z=+h[p+8>>3];h[e+8>>3]=z;h[e+16>>3]=A-i;h[e+24>>3]=z-j;h[e+32>>3]=A+i;h[e+40>>3]=z+j;h[e+48>>3]=i;h[e+56>>3]=j;c[e+64>>2]=f;e=e+72|0;f=kC(b,f)|0}do if((d|0)<0){i=+Tr(x,w);if(i==0.0){U1(x);e=0;break}if(!0){k=i;j=i;v=19}else{v=c[15712]|0;h[s>>3]=i;w4(v,93565,s)|0;k=i;j=i;v=19}}else{f=Ur(x,w,r)|0;e=c[r>>2]|0;if(!e){U1(f);U1(x);e=0;break}if(!d){Wr(t,f,e);i=+h[t>>3];j=+h[t+8>>3]}else{j=+Vr(f,e);i=j}U1(f);if(!0){k=i;v=19}else{v=c[15712]|0;h[u>>3]=i;h[u+8>>3]=j;w4(v,93579,u)|0;k=i;v=19}}while(0);if((v|0)==19){e=0;f=x;while(1){if((e|0)>=(w|0))break;v=c[(c[(c[f+64>>2]|0)+16>>2]|0)+132>>2]|0;h[v>>3]=+h[f>>3]*k;h[v+8>>3]=+h[f+8>>3]*j;e=e+1|0;f=f+72|0}U1(x);e=1}l=y;return e|0}function Tr(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0.0,f=0.0,g=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;c=0.0;d=0;a:while(1){if((d|0)>=(b|0))break;r=a+72|0;d=d+1|0;m=a+16|0;n=a+8|0;o=a+56|0;p=a+48|0;q=a+32|0;k=a+24|0;l=a+40|0;i=d;j=r;while(1){if((i|0)>=(b|0)){a=r;continue a}if(((+h[m>>3]<=+h[j+32>>3]?+h[j+16>>3]<=+h[q>>3]:0)?+h[k>>3]<=+h[j+40>>3]:0)?+h[j+24>>3]<=+h[l>>3]:0){c=0.0;break a}e=+h[a>>3];f=+h[j>>3];if(e==f)g=t;else{g=+B(+(e-f));g=(+h[j+48>>3]+ +h[p>>3])/g}e=+h[n>>3];f=+h[j+8>>3];if(e==f)e=t;else{e=+B(+(e-f));e=(+h[j+56>>3]+ +h[o>>3])/e}g=ec?g:c}}return +c}function Ur(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0.0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;k=KK((b<<4)+16|0)|0;m=0;e=0;n=k;o=b;i=k;a:while(1){if((e|0)>=(b|0))break;z=a+72|0;e=e+1|0;y=a+16|0;r=a+32|0;s=a+24|0;u=a+40|0;v=a+8|0;w=a+56|0;x=a+48|0;p=e;q=z;l=i;while(1){if((p|0)==(b|0)){a=z;i=l;continue a}if(((+h[y>>3]<=+h[q+32>>3]?+h[q+16>>3]<=+h[r>>3]:0)?+h[s>>3]<=+h[q+40>>3]:0)?+h[q+24>>3]<=+h[u>>3]:0){i=o+b|0;if((m|0)==(o|0)){k=MK(k,(i<<4)+16|0)|0;n=k;l=k}else i=o;f=+h[a>>3];g=+h[q>>3];if(!(f==g)){f=(+h[q+48>>3]+ +h[x>>3])/+B(+(f-g));if(f<1.0){f=1.0;A=13}}else{f=t;A=13}if((A|0)==13)A=0;g=+h[v>>3];j=+h[q+8>>3];if(!(g==j)){g=(+h[q+56>>3]+ +h[w>>3])/+B(+(g-j));if(g<1.0){g=1.0;A=16}}else{g=t;A=16}if((A|0)==16)A=0;m=m+1|0;h[n+(m<<4)>>3]=f;h[n+(m<<4)+8>>3]=g}else i=o;p=p+1|0;q=q+72|0;o=i}}A=MK(i,(m<<4)+16|0)|0;c[d>>2]=m;return A|0}function Vr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,f=0.0,g=0.0;d=1;e=0.0;while(1){c=a+16|0;if((d|0)>(b|0))break;g=+h[c>>3];f=+h[a+24>>3];f=g