>2]){continue}break}}e=1;a=$?$-4|0:999999996;if((a|0)<=0){break A}A=S(S(S(S(ka+ja)+ia)+ga)*S(.25));z=S(S(S(S(ea+da)+W)+V)*S(.25));H=S(S(S(S(Q+N)+G)+I)*S(.25));p=S(p-m);m=S(p*p);p=S(u-r);r=S(p*p);p=S(y-v);p=S(S(_(S(m+S(r+S(p*p)))))*S(.0010000000474974513));y=S(p*S(.009999999776482582));I=S(S(p*p)*S(.10000000149011612));while(1){j=a;d=L[n+4>>2];q=d&1;i=L[n+12>>2];a=0;e=0;if((d|0)!=1){B=d&2147483646;f=0;while(1){D=e<<2;d=L[D+i>>2];if(!(!d|!(P[a+32>>2]>2])?a:0)){a=d}d=L[i+(D|4)>>2];if(!(!d|!(P[a+32>>2]
>2])?a:0)){a=d}e=e+2|0;f=f+2|0;if((B|0)!=(f|0)){continue}break}}B:{if(!q){break B}d=L[i+(e<<2)>>2];if(!d|!(P[a+32>>2]
>2])?a:0){break B}a=d}e=1;if(!(p
>2])|!a){break A}d=L[a+28>>2];L[(d<<2)+x>>2]=1;e=L[n+4>>2];C:{if(!e){break C}f=(d<<4)+o|0;while(1){e=e-1|0;a=L[L[n+12>>2]+(e<<2)>>2];D:{if(!a){break D}l=S(0);s=S(1);t=S(0);i=(L[a+4>>2]<<4)+o|0;m=P[i>>2];q=(L[a>>2]<<4)+o|0;u=P[q>>2];v=S(m-u);B=(L[a+8>>2]<<4)+o|0;r=P[i+4>>2];G=S(P[B+4>>2]-r);N=S(P[B>>2]-m);Q=P[q+4>>2];r=S(r-Q);m=S(S(v*G)-S(N*r));K=r;r=P[i+8>>2];V=S(P[B+8>>2]-r);U=G;G=P[q+8>>2];W=S(r-G);r=S(S(K*V)-S(U*W));v=S(S(W*N)-S(V*v));N=S(_(S(S(m*m)+S(S(r*r)+S(v*v)))));if(N!=S(0)){t=m;m=S(S(1)/N);t=S(t*m);s=S(r*m);l=S(v*m)}if(!(y>2]-G))+S(S(s*S(P[f>>2]-u))+S(l*S(P[f+4>>2]-Q)))))){break D}bk(n,a,d)}if(e){continue}break}e=L[n+4>>2];a=e;if(!a){break C}while(1){E:{D=L[n+12>>2];a=a-1|0;f=L[D+(a<<2)>>2];F:{if(!f){break F}i=L[f+8>>2];B=L[f>>2];q=L[f+4>>2];if(!((B|0)==(d|0)|(q|0)==(d|0))&(d|0)!=(i|0)){break E}l=S(0);s=S(1);t=S(0);q=(q<<4)+o|0;m=P[q>>2];B=(B<<4)+o|0;G=P[B>>2];v=S(m-G);i=(i<<4)+o|0;r=P[q+4>>2];u=S(P[i+4>>2]-r);N=S(P[i>>2]-m);Q=P[B+4>>2];r=S(r-Q);m=S(S(v*u)-S(N*r));K=r;r=P[q+8>>2];V=S(P[i+8>>2]-r);U=u;W=P[B+8>>2];u=S(r-W);r=S(S(K*V)-S(U*u));v=S(S(u*N)-S(V*v));u=S(_(S(S(m*m)+S(S(r*r)+S(v*v)))));if(u!=S(0)){t=m;m=S(S(1)/u);t=S(t*m);s=S(r*m);l=S(v*m)}if(!(y>2]<<2)>>2],d);e=L[n+4>>2];a=e}if(a){continue}}break}if(!e){break C}while(1){e=e-1|0;a=L[L[n+12>>2]+(e<<2)>>2];G:{if(!a){break G}if(L[a+28>>2]>=0){break C}l=S(0);s=S(1);t=S(0);d=(L[a+4>>2]<<4)+o|0;m=P[d>>2];f=(L[a>>2]<<4)+o|0;v=S(m-P[f>>2]);i=(L[a+8>>2]<<4)+o|0;r=P[d+4>>2];u=S(P[i+4>>2]-r);G=S(P[i>>2]-m);r=S(r-P[f+4>>2]);m=S(S(v*u)-S(G*r));K=r;r=P[d+8>>2];N=S(P[i+8>>2]-r);U=u;u=S(r-P[f+8>>2]);r=S(S(K*N)-S(U*u));v=S(S(u*G)-S(N*v));u=S(_(S(S(m*m)+S(S(r*r)+S(v*v)))));if(u!=S(0)){t=m;m=S(S(1)/u);t=S(t*m);s=S(r*m);l=S(v*m)}L[h+24>>2]=0;P[h+20>>2]=t;P[h+16>>2]=l;P[h+12>>2]=s;d=Nb(o,k,h+12|0,h+44|0);L[a+28>>2]=d;if(L[(d<<2)+x>>2]){L[a+28>>2]=-1;break G}f=a;d=(d<<4)+o|0;a=(L[a>>2]<<4)+o|0;P[f+32>>2]=S(P[h+20>>2]*S(P[d+8>>2]-P[a+8>>2]))+S(S(P[h+12>>2]*S(P[d>>2]-P[a>>2]))+S(S(P[d+4>>2]-P[a+4>>2])*P[h+16>>2]))}if(e){continue}break}}a=j-1|0;e=1;if((j|0)>1){continue}break}}a=L[h+56>>2];if(!(a?!a|!M[h+60|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}if(!x){break q}if(x){L[8514]=L[8514]+1;ha[L[6799]](x)}}fa=h- -64|0;a=0;H:{if(!e){break H}k=L[n+4>>2];I:{if((k|0)<=0){f=0;break I}f=0;while(1){x=F<<2;i=L[x+L[n+12>>2]>>2];if(i){J:{K:{if((g|0)!=(E|0)){break K}j=g?g<<1:1;if((g|0)>=(j|0)){break K}if(j){L[8513]=L[8513]+1;k=ha[L[6798]](j<<2,16)|0}else{k=0}L:{if((g|0)>0){e=g&3;h=0;d=0;if(g>>>0>=4){q=g&-4;g=0;while(1){a=d<<2;L[a+k>>2]=L[a+f>>2];B=a|4;L[B+k>>2]=L[f+B>>2];B=a|8;L[B+k>>2]=L[f+B>>2];a=a|12;L[a+k>>2]=L[a+f>>2];d=d+4|0;g=g+4|0;if((q|0)!=(g|0)){continue}break}}if(!e){break L}while(1){a=d<<2;L[a+k>>2]=L[a+f>>2];d=d+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}break L}if(!f){break J}}if(f){L[8514]=L[8514]+1;ha[L[6799]](f)}break J}j=g;k=f}L[(E<<2)+k>>2]=L[i>>2];i=L[x+L[n+12>>2]>>2];M:{N:{q=E+1|0;if((q|0)!=(j|0)){break N}a=j?j<<1:1;if((j|0)>=(a|0)){break N}if(a){L[8513]=L[8513]+1;d=ha[L[6798]](a<<2,16)|0}else{d=0}O:{if((j|0)<=0){break O}h=0;f=0;if(j>>>0>=4){B=j&-4;g=0;while(1){e=f<<2;L[e+d>>2]=L[e+k>>2];D=e|4;L[D+d>>2]=L[k+D>>2];D=e|8;L[D+d>>2]=L[k+D>>2];e=e|12;L[e+d>>2]=L[e+k>>2];f=f+4|0;g=g+4|0;if((B|0)!=(g|0)){continue}break}}g=j&3;if(!g){break O}while(1){j=f<<2;L[j+d>>2]=L[k+j>>2];f=f+1|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}if(k){L[8514]=L[8514]+1;ha[L[6799]](k)}break M}a=j;d=k}L[(q<<2)+d>>2]=L[i+4>>2];i=L[x+L[n+12>>2]>>2];P:{Q:{q=E+2|0;if((q|0)!=(a|0)){break Q}g=a?a<<1:1;if((g|0)<=(a|0)){break Q}if(g){L[8513]=L[8513]+1;f=ha[L[6798]](g<<2,16)|0}else{f=0}R:{if((a|0)<=0){break R}h=0;k=0;if(a>>>0>=4){B=a&-4;j=0;while(1){e=k<<2;L[e+f>>2]=L[d+e>>2];D=e|4;L[D+f>>2]=L[d+D>>2];D=e|8;L[D+f>>2]=L[d+D>>2];e=e|12;L[e+f>>2]=L[d+e>>2];k=k+4|0;j=j+4|0;if((B|0)!=(j|0)){continue}break}}a=a&3;if(!a){break R}while(1){j=k<<2;L[j+f>>2]=L[d+j>>2];k=k+1|0;h=h+1|0;if((a|0)!=(h|0)){continue}break}}if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}break P}g=a;f=d}L[(q<<2)+f>>2]=L[i+8>>2];d=L[n+12>>2];a=L[d+x>>2];L[(L[a+24>>2]<<2)+d>>2]=0;if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}E=E+3|0;k=L[n+4>>2]}F=F+1|0;if((F|0)<(k|0)){continue}break}}L[w+60>>2]=(E|0)/3;e=L[w+44>>2];if((e|0)<(E|0)){S:{if(L[w+48>>2]>=(E|0)){d=L[w+52>>2];break S}T:{if(!E){d=0;a=e;break T}L[8513]=L[8513]+1;d=ha[L[6798]](E<<2,16)|0;a=L[w+44>>2]}x=L[w+52>>2];U:{V:{if((a|0)>0){g=0;k=0;if(a>>>0>=4){i=a&-4;j=0;while(1){h=k<<2;L[h+d>>2]=L[h+x>>2];F=h|4;L[F+d>>2]=L[x+F>>2];F=h|8;L[F+d>>2]=L[x+F>>2];h=h|12;L[h+d>>2]=L[h+x>>2];k=k+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}a=a&3;if(!a){break V}while(1){j=k<<2;L[j+d>>2]=L[j+x>>2];k=k+1|0;g=g+1|0;if((a|0)!=(g|0)){continue}break}break V}if(x){break V}break U}if(x?M[w+56|0]:0){L[8514]=L[8514]+1;ha[L[6799]](x)}}L[w+52>>2]=d;J[w+56|0]=1;L[w+48>>2]=E}pa((e<<2)+d|0,0,E-e<<2)}L[w+44>>2]=E;W:{if((E|0)<=0){break W}g=E&3;a=L[w+52>>2];h=0;k=0;if(E>>>0>=4){j=E&-4;E=0;while(1){d=k<<2;L[d+a>>2]=L[d+f>>2];e=d|4;L[e+a>>2]=L[e+f>>2];e=d|8;L[e+a>>2]=L[e+f>>2];d=d|12;L[d+a>>2]=L[d+f>>2];k=k+4|0;E=E+4|0;if((j|0)!=(E|0)){continue}break}}if(!g){break W}while(1){d=k<<2;L[d+a>>2]=L[d+f>>2];k=k+1|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}a=L[n+4>>2];X:{if((a|0)>=0){break X}if(L[n+8>>2]<0){d=L[n+12>>2];if(!(d?!d|!M[n+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}J[n+16|0]=1;L[n+8>>2]=0;L[n+12>>2]=0}d=0;k=a;g=0-a&3;if(g){while(1){L[L[n+12>>2]+(k<<2)>>2]=0;k=k+1|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}if(a>>>0>4294967292){break X}while(1){a=k<<2;L[a+L[n+12>>2]>>2]=0;L[(a+L[n+12>>2]|0)+4>>2]=0;L[(a+L[n+12>>2]|0)+8>>2]=0;L[(a+L[n+12>>2]|0)+12>>2]=0;k=k+4|0;if(k){continue}break}}L[n+4>>2]=0;if(f){L[8514]=L[8514]+1;ha[L[6799]](f)}a=1}if(!a){break o}L[w+36>>2]=o;x=L[w+60>>2];L[w+32>>2]=x;E=R(x,3);L[w+28>>2]=E;L[w+24>>2]=C;if((C|0)<=0){j=0}else{L[8513]=L[8513]+1;j=ha[L[6798]](C<<4,16)|0}k=L[w+52>>2];d=0;a=L[n+24>>2];Y:{if((a|0)<=0){i=0;break Y}L[8513]=L[8513]+1;a=a<<2;i=ha[L[6798]](a,16)|0;a=pa(i,0,a);if(L[n+24>>2]<=0){break Y}g=L[n+32>>2];while(1){f=d<<2;L[f+a>>2]=L[f+g>>2];d=d+1|0;if((d|0)>2]){continue}break}}d=C<<2;Z:{_:{$:{if((C|0)>0){L[8513]=L[8513]+1;a=ha[L[6798]](d,16)|0;d=pa(a,0,d);L[w+4>>2]=0;if((E|0)>0){break $}if(d){break _}break Z}a=0;L[w+4>>2]=pa(0,0,d);if((E|0)<=0){break Z}}F=0;while(1){d=k+(F<<2)|0;g=L[d>>2];C=(g<<2)+a|0;f=L[C>>2];aa:{if(f){L[d>>2]=f-1;break aa}L[d>>2]=L[w+4>>2];d=L[w+4>>2];f=j+(d<<4)|0;e=(g<<4)+o|0;P[f>>2]=P[e>>2];P[f+4>>2]=P[e+4>>2];P[f+8>>2]=P[e+8>>2];h=L[n+24>>2];if((h|0)>0){f=L[n+32>>2];d=0;while(1){e=d<<2;if((g|0)==L[e+i>>2]){L[e+f>>2]=L[w+4>>2];h=L[n+24>>2]}d=d+1|0;if((h|0)>(d|0)){continue}break}d=L[w+4>>2]}d=d+1|0;L[w+4>>2]=d;L[C>>2]=d}F=F+1|0;if((E|0)!=(F|0)){continue}break}}if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}if(i){L[8514]=L[8514]+1;ha[L[6799]](i)}ba:{ca:{da:{ea:{if(J[b|0]&1){J[c|0]=0;C=L[w+4>>2];L[c+4>>2]=C;d=L[c+12>>2];if(!((C|0)<=(d|0)|(C|0)<=L[c+16>>2])){fa:{if(!C){i=0;break fa}L[8513]=L[8513]+1;i=ha[L[6798]](C<<4,16)|0;d=L[c+12>>2]}ga:{if((d|0)<=0){break ga}g=0;if((d|0)!=1){h=d&-2;a=0;while(1){n=g<<4;f=n+i|0;e=n+L[c+20>>2]|0;F=L[e+4>>2];L[f>>2]=L[e>>2];L[f+4>>2]=F;F=L[e+12>>2];L[f+8>>2]=L[e+8>>2];L[f+12>>2]=F;e=n|16;f=e+i|0;e=e+L[c+20>>2]|0;n=L[e+4>>2];L[f>>2]=L[e>>2];L[f+4>>2]=n;n=L[e+12>>2];L[f+8>>2]=L[e+8>>2];L[f+12>>2]=n;g=g+2|0;a=a+2|0;if((h|0)!=(a|0)){continue}break}}if(!(d&1)){break ga}d=g<<4;a=d+i|0;d=d+L[c+20>>2]|0;g=L[d+4>>2];L[a>>2]=L[d>>2];L[a+4>>2]=g;g=L[d+12>>2];L[a+8>>2]=L[d+8>>2];L[a+12>>2]=g}a=L[c+20>>2];if(!(a?!a|!M[c+24|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[c+20>>2]=i;J[c+24|0]=1;L[c+16>>2]=C}L[c+32>>2]=E;L[c+28>>2]=x;L[c+12>>2]=C;e=L[c+40>>2];if((e|0)>=(E|0)){break ca}if((E|0)<=L[c+44>>2]){d=L[c+48>>2];break da}ha:{if(!x){d=0;a=e;break ha}L[8513]=L[8513]+1;d=ha[L[6798]](R(x,12),16)|0;a=L[c+40>>2]}n=L[c+48>>2];if((a|0)>0){h=0;g=0;if(a>>>0>=4){F=a&-4;f=0;while(1){i=g<<2;L[i+d>>2]=L[i+n>>2];q=i|4;L[q+d>>2]=L[n+q>>2];q=i|8;L[q+d>>2]=L[n+q>>2];i=i|12;L[i+d>>2]=L[i+n>>2];g=g+4|0;f=f+4|0;if((F|0)!=(f|0)){continue}break}}a=a&3;if(!a){break ea}while(1){f=g<<2;L[f+d>>2]=L[f+n>>2];g=g+1|0;h=h+1|0;if((a|0)!=(h|0)){continue}break}break ea}if(n){break ea}L[c+48>>2]=d;L[c+44>>2]=E;J[c+52|0]=1;break da}J[c|0]=1;n=L[w+4>>2];L[c+4>>2]=n;d=L[c+12>>2];if(!((n|0)<=(d|0)|(n|0)<=L[c+16>>2])){ia:{if(!n){i=0;break ia}L[8513]=L[8513]+1;i=ha[L[6798]](n<<4,16)|0;d=L[c+12>>2]}ja:{if((d|0)<=0){break ja}g=0;if((d|0)!=1){h=d&-2;a=0;while(1){C=g<<4;f=C+i|0;e=C+L[c+20>>2]|0;E=L[e+4>>2];L[f>>2]=L[e>>2];L[f+4>>2]=E;E=L[e+12>>2];L[f+8>>2]=L[e+8>>2];L[f+12>>2]=E;e=C|16;f=e+i|0;e=e+L[c+20>>2]|0;C=L[e+4>>2];L[f>>2]=L[e>>2];L[f+4>>2]=C;C=L[e+12>>2];L[f+8>>2]=L[e+8>>2];L[f+12>>2]=C;g=g+2|0;a=a+2|0;if((h|0)!=(a|0)){continue}break}}if(!(d&1)){break ja}d=g<<4;a=d+i|0;d=d+L[c+20>>2]|0;g=L[d+4>>2];L[a>>2]=L[d>>2];L[a+4>>2]=g;g=L[d+12>>2];L[a+8>>2]=L[d+8>>2];L[a+12>>2]=g}a=L[c+20>>2];if(!(a?!a|!M[c+24|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[c+20>>2]=i;J[c+24|0]=1;L[c+16>>2]=n}L[c+28>>2]=x;L[c+12>>2]=n;C=x<<2;L[c+32>>2]=C;f=L[c+40>>2];if((f|0)<(C|0)){ka:{if((C|0)<=L[c+44>>2]){d=L[c+48>>2];break ka}la:{if(!C){d=0;a=f;break la}L[8513]=L[8513]+1;d=ha[L[6798]](x<<4,16)|0;a=L[c+40>>2]}e=L[c+48>>2];ma:{if((a|0)>0){h=0;g=0;if(a>>>0>=4){E=a&-4;X=0;while(1){i=g<<2;L[i+d>>2]=L[e+i>>2];F=i|4;L[F+d>>2]=L[e+F>>2];F=i|8;L[F+d>>2]=L[e+F>>2];i=i|12;L[i+d>>2]=L[e+i>>2];g=g+4|0;X=X+4|0;if((E|0)!=(X|0)){continue}break}}a=a&3;if(!a){break ma}while(1){i=g<<2;L[i+d>>2]=L[e+i>>2];g=g+1|0;h=h+1|0;if((a|0)!=(h|0)){continue}break}break ma}if(e){break ma}L[c+48>>2]=d;L[c+44>>2]=C;J[c+52|0]=1;break ka}if(e?M[c+52|0]:0){L[8514]=L[8514]+1;ha[L[6799]](e)}L[c+48>>2]=d;J[c+52|0]=1;L[c+44>>2]=C}pa((f<<2)+d|0,0,C-f<<2)}L[c+40>>2]=C;qa(L[c+20>>2],j,n<<4);if(!x){break ba}g=L[c+48>>2];i=0;d=k;while(1){L[g>>2]=3;na:{if(M[b|0]&2){L[g+4>>2]=L[d+8>>2];L[g+8>>2]=L[d+4>>2];a=d;break na}L[g+4>>2]=L[d>>2];L[g+8>>2]=L[d+4>>2];a=d+8|0}L[g+12>>2]=L[a>>2];d=d+12|0;g=g+16|0;i=i+1|0;if((x|0)!=(i|0)){continue}break}break ba}if(n?M[c+52|0]:0){L[8514]=L[8514]+1;ha[L[6799]](n)}L[c+48>>2]=d;J[c+52|0]=1;L[c+44>>2]=E}a=e<<2;pa(a+d|0,0,R(x,12)-a|0)}L[c+40>>2]=E;qa(L[c+20>>2],j,C<<4);if(M[b|0]&2){if(!x){break ba}a=x&3;g=L[c+48>>2];oa:{if(x>>>0<4){d=k;break oa}b=x&-4;i=0;d=k;while(1){L[g>>2]=L[d+8>>2];L[g+4>>2]=L[d+4>>2];L[g+8>>2]=L[d>>2];L[g+12>>2]=L[d+20>>2];L[g+16>>2]=L[d+16>>2];L[g+20>>2]=L[d+12>>2];L[g+24>>2]=L[d+32>>2];L[g+28>>2]=L[d+28>>2];L[g+32>>2]=L[d+24>>2];L[g+36>>2]=L[d+44>>2];L[g+40>>2]=L[d+40>>2];L[g+44>>2]=L[d+36>>2];d=d+48|0;g=g+48|0;i=i+4|0;if((b|0)!=(i|0)){continue}break}}if(!a){break ba}i=0;while(1){L[g>>2]=L[d+8>>2];L[g+4>>2]=L[d+4>>2];L[g+8>>2]=L[d>>2];d=d+12|0;g=g+12|0;i=i+1|0;if((a|0)!=(i|0)){continue}break}break ba}qa(L[c+48>>2],k,R(x,12))}if(L[w+44>>2]){if(!(k?!k|!M[w+56|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](k)}L[w+52>>2]=0;J[w+56|0]=1}X=0;if(!j){break o}if(j){L[8514]=L[8514]+1;ha[L[6799]](j)}}if(o){L[8514]=L[8514]+1;ha[L[6799]](o)}a=L[w+52>>2];if(!(a?!a|!M[w+56|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}fa=w- -64|0;return X}function Zm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=0,m=S(0),n=S(0),o=0,p=S(0),q=S(0),r=S(0),s=S(0),t=0,u=0,v=S(0),w=S(0),x=0,y=S(0),z=S(0),A=S(0),B=S(0),C=0,D=0,E=S(0),F=S(0),G=0,H=S(0),I=S(0),J=S(0),K=S(0),M=S(0),N=S(0),O=S(0),Q=S(0),U=S(0),V=S(0),W=0,X=0,Y=S(0),Z=S(0),$=S(0),aa=S(0),ba=S(0),ca=S(0),da=S(0),ea=S(0),ga=0,ia=S(0),ja=S(0),ka=S(0),la=S(0),ma=S(0),na=S(0),oa=0,pa=0,ra=S(0),sa=0,ta=0,ua=0,va=S(0);d=fa-160|0;fa=d;P[d+112>>2]=P[b>>2];P[d+64>>2]=P[b+64>>2];P[d+116>>2]=P[b+4>>2];P[d+68>>2]=P[b+68>>2];P[d+120>>2]=P[b+8>>2];P[d+72>>2]=P[b+72>>2];P[d+128>>2]=P[b+16>>2];P[d+80>>2]=P[b+80>>2];P[d+132>>2]=P[b+20>>2];P[d+84>>2]=P[b+84>>2];P[d+136>>2]=P[b+24>>2];P[d+88>>2]=P[b+88>>2];P[d+144>>2]=P[b+32>>2];P[d+96>>2]=P[b+96>>2];P[d+148>>2]=P[b+36>>2];P[d+100>>2]=P[b+100>>2];P[d+152>>2]=P[b+40>>2];P[d+104>>2]=P[b+104>>2];e=L[a+4>>2];j=P[e+36>>2];i=P[e+32>>2];n=P[e+28>>2];g=S(ha[L[L[e>>2]+48>>2]](e));h=S(ha[L[L[e>>2]+48>>2]](e));k=S(ha[L[L[e>>2]+48>>2]](e));L[d+36>>2]=0;i=S(i+h);P[d+28>>2]=i+i;i=S(n+g);P[d+24>>2]=i+i;j=S(j+k);P[d+32>>2]=j+j;a=L[a+8>>2];j=P[a+36>>2];i=P[a+32>>2];n=P[a+28>>2];g=S(ha[L[L[a>>2]+48>>2]](a));h=S(ha[L[L[a>>2]+48>>2]](a));k=S(ha[L[L[a>>2]+48>>2]](a));L[d+20>>2]=0;i=S(i+h);P[d+12>>2]=i+i;i=S(n+g);P[d+8>>2]=i+i;j=S(j+k);P[d+16>>2]=j+j;W=c;f=fa-368|0;fa=f;a=d+112|0;J=P[a+36>>2];U=P[a+4>>2];F=P[a+20>>2];s=P[a+40>>2];ea=P[a+8>>2];K=P[a+24>>2];G=b+48|0;n=P[G+8>>2];c=b+112|0;g=P[c+8>>2];q=P[G>>2];r=P[c>>2];H=P[G+4>>2];A=P[c+4>>2];j=P[a+32>>2];ra=P[a>>2];i=P[a+16>>2];h=S(P[d+24>>2]*S(.5));P[f+356>>2]=h;k=S(P[d+28>>2]*S(.5));P[f+360>>2]=k;m=S(P[d+32>>2]*S(.5));P[f+364>>2]=m;v=S(P[d+8>>2]*S(.5));P[f+344>>2]=v;y=S(P[d+12>>2]*S(.5));P[f+348>>2]=y;p=S(P[d+16>>2]*S(.5));P[f+352>>2]=p;n=S(g-n);g=S(r-q);q=S(A-H);r=S(S(j*n)+S(S(ra*g)+S(i*q)));b=d- -64|0;Y=P[b+40>>2];Z=P[b+8>>2];M=P[b+24>>2];H=S(S(j*Y)+S(S(ra*Z)+S(i*M)));ia=S(T(H));V=P[b+36>>2];I=P[b+4>>2];$=P[b+20>>2];A=S(S(j*V)+S(S(ra*I)+S(i*$)));ja=S(T(A));aa=P[b+32>>2];ba=P[b>>2];ca=P[b+16>>2];B=S(S(j*aa)+S(S(ra*ba)+S(i*ca)));va=S(T(B));i=S(S(T(r))-S(S(p*ia)+S(S(y*ja)+S(S(v*va)+h))));a:{if(i>S(0)){break a}w=S(S(J*Y)+S(S(U*Z)+S(F*M)));ka=S(T(w));N=S(S(J*V)+S(S(U*I)+S(F*$)));O=S(T(N));Q=S(S(J*aa)+S(S(U*ba)+S(F*ca)));la=S(T(Q));j=S(-34028234663852886e22);if(i>S(-34028234663852886e22)){l=rS(0)){break a}F=S(S(s*Y)+S(S(ea*Z)+S(K*M)));ma=S(T(F));E=S(S(s*V)+S(S(ea*I)+S(K*$)));na=S(T(E));z=S(S(s*aa)+S(S(ea*ba)+S(K*ca)));da=S(T(z));if(jS(0)){break a}if(jS(0)){break a}if(jS(0)){break a}if(jS(0)){break a}if(jS(1.1920928955078125e-7)){break a}K=S(na+S(9999999747378752e-21));Y=S(O+S(9999999747378752e-21));Z=S(va+S(9999999747378752e-21));O=S(-J);q=S(0);la=S(Q*Q);na=S(S(z*z)+S(0));M=S(_(S(la+na)));b:{if(!(M>S(1.1920928955078125e-7))){g=S(0);n=S(0);break b}g=S(0);i=S(i/M);n=S(0);if(!(S(i*S(1.0499999523162842))>j)){break b}l=VS(1.1920928955078125e-7)){break a}M=S(ma+S(9999999747378752e-21));V=S(ka+S(9999999747378752e-21));ka=S(N*N);ma=S(S(E*E)+S(0));I=S(_(S(ka+ma)));c:{if(!(I>S(1.1920928955078125e-7))){break c}i=S(i/I);if(!(S(i*S(1.0499999523162842))>j)){break c}l=daS(1.1920928955078125e-7)){break a}da=S(w*w);ia=S(S(F*F)+S(0));I=S(_(S(da+ia)));d:{if(!(I>S(1.1920928955078125e-7))){break d}i=S(i/I);if(!(S(i*S(1.0499999523162842))>j)){break d}l=OS(1.1920928955078125e-7)){break a}I=S(-s);ja=S(B*B);s=S(_(S(ja+na)));e:{if(!(s>S(1.1920928955078125e-7))){break e}i=S(i/s);if(!(S(i*S(1.0499999523162842))>j)){break e}l=OS(1.1920928955078125e-7)){break a}O=S(A*A);z=S(_(S(O+ma)));f:{if(!(z>S(1.1920928955078125e-7))){break f}i=S(i/z);if(!(S(i*S(1.0499999523162842))>j)){break f}l=sS(1.1920928955078125e-7)){break a}s=S(H*H);E=S(_(S(s+ia)));g:{if(!(E>S(1.1920928955078125e-7))){break g}i=S(i/E);if(!(S(i*S(1.0499999523162842))>j)){break g}l=zS(1.1920928955078125e-7)){break a}F=S(-r);r=S(_(S(S(la+ja)+S(0))));h:{if(!(r>S(1.1920928955078125e-7))){break h}i=S(i/r);if(!(S(i*S(1.0499999523162842))>j)){break h}l=ES(1.1920928955078125e-7)){break a}p=S(_(S(S(ka+O)+S(0))));i:{if(!(p>S(1.1920928955078125e-7))){break i}i=S(i/p);if(!(S(i*S(1.0499999523162842))>j)){break i}l=rS(1.1920928955078125e-7)){break a}j:{k:{l:{m:{p=S(_(S(S(da+s)+S(0))));if(!(p>S(1.1920928955078125e-7))){break m}i=S(i/p);if(!(S(i*S(1.0499999523162842))>j)){break m}l=r>2]=p;r=S(S(P[a+24>>2]*g)+S(S(P[a+16>>2]*q)+S(n*P[a+20>>2])));P[d+52>>2]=r;j=S(S(P[a+40>>2]*g)+S(S(P[a+32>>2]*q)+S(n*P[a+36>>2])));break j}p=P[u>>2];P[d+48>>2]=p;r=P[u+16>>2];P[d+52>>2]=r;i=j;j=P[u+32>>2]}P[d+56>>2]=j;if(l){P[d+56>>2]=-j;P[d+52>>2]=-r;P[d+48>>2]=-p}P[d+44>>2]=-i;if(C>>>0>=7){L[f+120>>2]=L[G+8>>2];e=L[G+4>>2];L[f+112>>2]=L[G>>2];L[f+116>>2]=e;j=P[d+56>>2];q=P[a+40>>2];n=P[d+48>>2];p=P[a+8>>2];g=P[d+52>>2];r=P[a+24>>2];m=S(S(j*q)+S(S(n*p)+S(g*r)))>S(0)?m:S(-m);s=S(m*q);q=P[a+36>>2];H=P[a+4>>2];A=P[a+20>>2];k=S(S(j*q)+S(S(n*H)+S(g*A)))>S(0)?k:S(-k);z=S(k*q);q=P[a+32>>2];B=P[a>>2];w=P[a+16>>2];h=S(S(j*q)+S(S(n*B)+S(g*w)))>S(0)?h:S(-h);P[f+120>>2]=s+S(z+S(S(h*q)+P[f+120>>2]));P[f+112>>2]=S(m*p)+S(S(k*H)+S(S(h*B)+P[f+112>>2]));P[f+116>>2]=S(m*r)+S(S(k*A)+S(S(h*w)+P[f+116>>2]));L[f+216>>2]=L[c+8>>2];e=L[c+4>>2];L[f+208>>2]=L[c>>2];L[f+212>>2]=e;h=P[f+352>>2];k=P[b+40>>2];m=P[b+8>>2];q=P[b+24>>2];h=S(S(j*k)+S(S(n*m)+S(g*q)))>S(0)?S(-h):h;B=S(h*k);w=S(-y);s=y;y=P[b+36>>2];p=P[b+4>>2];r=P[b+20>>2];k=S(S(j*y)+S(S(n*p)+S(g*r)))>S(0)?w:s;z=S(-v);s=v;v=P[b+32>>2];w=n;n=P[b>>2];A=g;g=P[b+16>>2];j=S(S(j*v)+S(S(w*n)+S(A*g)))>S(0)?z:s;v=S(B+S(S(k*y)+S(S(j*v)+P[f+216>>2])));P[f+216>>2]=v;m=S(S(h*m)+S(S(k*p)+S(S(j*n)+P[f+208>>2])));P[f+208>>2]=m;g=S(S(h*q)+S(S(k*r)+S(S(j*g)+P[f+212>>2])));P[f+212>>2]=g;c=C-7&255;a=((c>>>0)/3<<2)+a|0;P[f+288>>2]=P[a>>2];P[f+292>>2]=P[a+16>>2];P[f+296>>2]=P[a+32>>2];a=b+((c>>>0)%3<<2)|0;h=P[a>>2];P[f+80>>2]=h;k=P[a+16>>2];P[f+84>>2]=k;y=P[a+32>>2];P[f+88>>2]=y;a=f+208|0;b=f- -64|0;n=S(0);q=P[f+296>>2];p=P[f+88>>2];r=P[f+288>>2];H=P[f+80>>2];A=P[f+292>>2];B=P[f+84>>2];j=S(S(q*p)+S(S(r*H)+S(A*B)));w=S(S(1)-S(j*j));if(w<=S(9999999747378752e-20)){j=S(0)}else{w=S(S(1)/w);n=S(P[a+8>>2]-P[f+120>>2]);s=S(q*n);q=S(P[a>>2]-P[f+112>>2]);z=S(r*q);r=S(P[a+4>>2]-P[f+116>>2]);A=S(s+S(z+S(A*r)));q=S(S(p*n)+S(S(H*q)+S(B*r)));n=S(w*S(S(j*A)-q));j=S(w*S(A-S(j*q)))}P[f+328>>2]=j;P[b>>2]=n;j=P[f+64>>2];P[f+216>>2]=S(y*j)+v;P[f+212>>2]=S(k*j)+g;P[f+208>>2]=S(h*j)+m;j=P[d+48>>2];n=P[d+52>>2];g=P[d+56>>2];L[f+44>>2]=0;P[f+40>>2]=-g;P[f+36>>2]=-n;P[f+32>>2]=-j;ha[L[L[W>>2]+16>>2]](W,f+32|0,a,i);L[d+40>>2]=C;break a}j=P[d+48>>2];n:{if(C>>>0<=3){n=P[d+56>>2];u=f+356|0;e=c;c=b;o=f+344|0;i=P[d+52>>2];break n}j=S(-j);n=S(-P[d+56>>2]);u=f+344|0;e=G;G=c;c=a;a=b;o=f+356|0;i=S(-P[d+52>>2])}h=S(S(P[c+32>>2]*n)+S(S(P[c>>2]*j)+S(i*P[c+16>>2])));P[f+328>>2]=h;k=S(S(P[c+36>>2]*n)+S(S(P[c+4>>2]*j)+S(i*P[c+20>>2])));P[f+332>>2]=k;g=S(S(P[c+40>>2]*n)+S(S(P[c+8>>2]*j)+S(i*P[c+24>>2])));P[f+336>>2]=g;g=S(T(g));k=S(T(k));h=S(T(h));o:{if(k>h){l=g>2];g=P[b+(f+328|0)>>2]>2])+S(P[e+8>>2]-P[G+8>>2]));y=S(S(g*P[b+16>>2])+S(P[e+4>>2]-P[G+4>>2]));q=S(S(g*P[b>>2])+S(P[e>>2]-P[G>>2]));sa=l?2:1;b=1;e=2;p:{q:{r:{ta=(C>>>0<4?-1:-4)+C|0;switch(ta|0){case 0:break p;case 1:break r;default:break q}}b=0;break p}e=1;b=0}l=b<<2;b=l+a|0;g=P[b+32>>2];h=P[b>>2];k=P[b+16>>2];b=e<<2;a=b+a|0;m=P[a+32>>2];p=P[a>>2];r=P[a+16>>2];H=S(S(v*m)+S(S(q*p)+S(y*r)));a=X<<2;oa=a+c|0;B=P[oa+32>>2];w=P[oa>>2];N=P[oa+16>>2];A=S(S(m*B)+S(S(p*w)+S(r*N)));Q=P[a+o>>2];J=S(A*Q);F=S(H+J);a=sa<<2;ga=a+c|0;E=P[ga+32>>2];z=P[ga>>2];s=P[ga+16>>2];p=S(S(m*E)+S(S(p*z)+S(r*s)));U=P[a+o>>2];m=S(p*U);P[f+316>>2]=F-m;r=S(S(v*g)+S(S(q*h)+S(y*k)));B=S(S(g*B)+S(S(h*w)+S(k*N)));N=S(Q*B);Q=S(r+N);w=S(S(g*E)+S(S(h*z)+S(k*s)));g=S(U*w);P[f+312>>2]=Q-g;P[f+308>>2]=F+m;P[f+304>>2]=Q+g;h=S(H-J);P[f+300>>2]=h+m;k=S(r-N);P[f+296>>2]=k+g;P[f+292>>2]=h-m;P[f+288>>2]=k-g;P[f+280>>2]=P[l+u>>2];P[f+284>>2]=P[b+u>>2];e=f+208|0;l=0;t=fa+-64|0;fa=t;g=P[f+280>>2];m=P[f+288>>2];h=S(-m);if(g>h){P[e>>2]=m;P[e+4>>2]=P[f+292>>2];g=P[f+280>>2];m=P[f+288>>2];h=S(-m);l=1;b=e+8|0}else{b=e}a=g>h;h=P[f+296>>2];k=S(-h);if((a|0)!=(k>2];P[b+4>>2]=S(S(S(P[f+300>>2]-k)/S(h-m))*S(S(-g)-m))+k;P[b>>2]=-P[f+280>>2];l=l+1|0;g=P[f+280>>2];h=P[f+296>>2];k=S(-h);b=b+8|0}if(g>k){P[b>>2]=h;P[b+4>>2]=P[f+300>>2];l=l+1|0;g=P[f+280>>2];h=P[f+296>>2];k=S(-h);b=b+8|0}a=g>k;k=P[f+304>>2];m=S(-k);if((a|0)!=(m>2];P[b+4>>2]=S(S(S(P[f+308>>2]-m)/S(k-h))*S(S(-g)-h))+m;P[b>>2]=-P[f+280>>2];l=l+1|0;g=P[f+280>>2];k=P[f+304>>2];m=S(-k);b=b+8|0}if(g>m){P[b>>2]=k;P[b+4>>2]=P[f+308>>2];l=l+1|0;g=P[f+280>>2];k=P[f+304>>2];m=S(-k);b=b+8|0}a=g>m;h=P[f+312>>2];m=S(-h);if((a|0)!=(m>2];P[b+4>>2]=S(S(S(P[f+316>>2]-m)/S(h-k))*S(S(-g)-k))+m;P[b>>2]=-P[f+280>>2];l=l+1|0;g=P[f+280>>2];h=P[f+312>>2];m=S(-h);b=b+8|0}if(g>m){P[b>>2]=h;P[b+4>>2]=P[f+316>>2];l=l+1|0;g=P[f+280>>2];h=P[f+312>>2];m=S(-h);b=b+8|0}s:{t:{u:{k=P[f+288>>2];if((S(-k)m|0)){m=P[f+316>>2];P[b+4>>2]=S(S(S(P[f+292>>2]-m)/S(k-h))*S(S(-g)-h))+m;P[b>>2]=-P[f+280>>2];b=8;l=l+1|0;if(l&8){break s}break u}if(l){break u}b=0;break t}g=P[f+280>>2];h=P[e>>2];v:{if(!(g>h)){b=0;a=t;break v}P[t>>2]=h;P[t+4>>2]=P[e+4>>2];g=P[f+280>>2];h=P[e>>2];b=1;a=t|8}o=e+8|0;x=l>>>0>1;k=P[e+(x<<3)>>2];if((kh|0)){m=P[e+4>>2];P[a+4>>2]=S(S(S(P[(x?o:e)+4>>2]-m)/S(k-h))*S(g-h))+m;P[a>>2]=P[f+280>>2];b=b+1|0;a=a+8|0}w:{if((l|0)<2){break w}g=P[o>>2];h=P[f+280>>2];if(g>2]=g;P[a+4>>2]=P[e+12>>2];b=b+1|0;h=P[f+280>>2];g=P[o>>2];a=a+8|0}o=e+16|0;x=l-3>>>0<4294967294;k=P[e+(x<<4)>>2];if((g>2];P[a+4>>2]=S(S(S(P[(x?o:e)+4>>2]-m)/S(k-g))*S(h-g))+m;P[a>>2]=P[f+280>>2];b=b+1|0;if(b&8){break t}a=a+8|0}if((l|0)<3){break w}g=P[o>>2];h=P[f+280>>2];if(g>2]=g;P[a+4>>2]=P[e+20>>2];b=b+1|0;if(b&8){break t}h=P[f+280>>2];g=P[o>>2];a=a+8|0}o=e+24|0;x=(l&254)==2;k=P[e+(x?0:24)>>2];if((g>2];P[a+4>>2]=S(S(S(P[(x?e:o)+4>>2]-m)/S(k-g))*S(h-g))+m;P[a>>2]=P[f+280>>2];b=b+1|0;if(b&8){break t}a=a+8|0}if((l|0)<4){break w}g=P[o>>2];h=P[f+280>>2];if(g>2]=g;P[a+4>>2]=P[e+28>>2];b=b+1|0;if(b&8){break t}h=P[f+280>>2];g=P[o>>2];a=a+8|0}o=e+32|0;x=l-5>>>0<4294967294;k=P[e+(x<<5)>>2];if((g>2];P[a+4>>2]=S(S(S(P[(x?o:e)+4>>2]-m)/S(k-g))*S(h-g))+m;P[a>>2]=P[f+280>>2];b=b+1|0;if(b&8){break t}a=a+8|0}if((l|0)<5){break w}g=P[o>>2];h=P[f+280>>2];if(g>2]=g;P[a+4>>2]=P[e+36>>2];b=b+1|0;if(b&8){break t}h=P[f+280>>2];g=P[o>>2];a=a+8|0}o=e+40|0;x=(l&254)==4;k=P[e+(x?0:40)>>2];if((g>2];P[a+4>>2]=S(S(S(P[(x?e:o)+4>>2]-m)/S(k-g))*S(h-g))+m;P[a>>2]=P[f+280>>2];b=b+1|0;if(b&8){break t}a=a+8|0}if((l|0)<6){break w}g=P[o>>2];h=P[f+280>>2];if(g>2]=g;P[a+4>>2]=P[e+44>>2];b=b+1|0;if(b&8){break t}h=P[f+280>>2];g=P[o>>2];a=a+8|0}o=e+48|0;x=l-7>>>0<4294967294;k=P[e+(x?48:0)>>2];if((g>2];P[a+4>>2]=S(S(S(P[(x?o:e)+4>>2]-m)/S(k-g))*S(h-g))+m;P[a>>2]=P[f+280>>2];b=b+1|0;if(b&8){break t}a=a+8|0}if((l|0)<7){break w}g=P[o>>2];h=P[f+280>>2];if(g>2]=g;P[a+4>>2]=P[e+52>>2];b=b+1|0;if(b&8){break t}h=P[f+280>>2];g=P[o>>2];a=a+8|0}o=e+56|0;x=(l&254)==6;k=P[e+(x?0:56)>>2];if((g>2];P[a+4>>2]=S(S(S(P[(x?e:o)+4>>2]-m)/S(k-g))*S(h-g))+m;P[a>>2]=P[f+280>>2];b=b+1|0;if(b&8){break t}a=a+8|0}if((l|0)<8){break w}g=P[o>>2];h=P[f+280>>2];if(g>2]=g;P[a+4>>2]=P[e+60>>2];b=b+1|0;if(b&8){break t}h=P[f+280>>2];g=P[o>>2];a=a+8|0}l=e+((l-9>>>0<4294967294)<<6)|0;k=P[l>>2];if((g>2];P[a+4>>2]=S(S(S(P[l+4>>2]-m)/S(k-g))*S(h-g))+m;P[a>>2]=P[f+280>>2];b=b+1|0;if(b&8){break t}}if((b|0)<=0){b=0;break t}pa=t|4;o=0;a=t;l=e;while(1){g=P[f+284>>2];k=P[a+4>>2];h=S(-k);if(g>h){P[l>>2]=P[a>>2];P[l+4>>2]=P[a+4>>2];o=o+1|0;if(o&8){b=o;break s}g=P[f+284>>2];k=P[a+4>>2];h=S(-k);l=l+8|0}x=a+8|0;ua=b>>>0>1;m=P[(ua?a+12|0:pa)>>2];if((S(-m)h|0)){h=P[a>>2];P[l>>2]=S(S(S(P[(ua?x:t)>>2]-h)/S(m-k))*S(S(-g)-k))+h;P[l+4>>2]=-P[f+284>>2];o=o+1|0;if(o&8){b=o;break s}l=l+8|0}ua=(b|0)>1;b=b-1|0;a=x;if(ua){continue}break}b=0;if((o|0)<=0){break t}l=t;a=e;while(1){g=P[f+284>>2];h=P[a+4>>2];if(g>h){P[l>>2]=P[a>>2];P[l+4>>2]=P[a+4>>2];b=b+1|0;if(b&8){break t}g=P[f+284>>2];h=P[a+4>>2];l=l+8|0}x=a+8|0;pa=o>>>0>1?x:e;k=P[pa+4>>2];if((kh|0)){m=P[a>>2];P[l>>2]=S(S(S(P[pa>>2]-m)/S(k-h))*S(g-h))+m;P[l+4>>2]=P[f+284>>2];b=b+1|0;if(b&8){break t}l=l+8|0}pa=(o|0)>1;o=o-1|0;a=x;if(pa){continue}break}}qa(e,t,b<<3)}fa=t- -64|0;if((b|0)<=0){break a}e=b;g=S(S(1)/S(S(B*p)-S(A*w)));k=S(g*S(-A));m=S(g*S(-w));p=S(p*g);A=S(B*g);B=P[(ta<<2)+u>>2];a=(sa<<2)+c|0;w=P[a+32>>2];b=(X<<2)+c|0;N=P[b+32>>2];Q=P[a+16>>2];J=P[b+16>>2];F=P[ga>>2];E=P[oa>>2];a=0;b=0;while(1){c=(f+112|0)+R(a,12)|0;l=(f+208|0)+(b<<3)|0;z=P[l>>2];h=S(z-r);s=P[l+4>>2];U=S(s-H);g=S(S(k*h)+S(A*U));h=S(S(p*h)+S(m*U));U=S(S(g*F)+S(S(h*E)+q));P[c>>2]=U;ea=S(S(g*Q)+S(S(h*J)+y));P[c+4>>2]=ea;g=S(S(g*w)+S(S(h*N)+v));P[c+8>>2]=g;g=S(B-S(S(n*g)+S(S(j*U)+S(i*ea))));P[(f+80|0)+(a<<2)>>2]=g;if(g>=S(0)){c=(f+208|0)+(a<<3)|0;P[c+4>>2]=s;P[c>>2]=z;a=a+1|0}b=b+1|0;if((e|0)!=(b|0)){continue}break}if((a|0)<=0){break a}b=(a|0)>=4?4:a;X=(b|0)<=1?1:b;x:{if(X>>>0>=a>>>0){if(C>>>0>=4){b=0;while(1){c=(f+112|0)+R(b,12)|0;i=P[d+48>>2];j=P[(f+80|0)+(b<<2)>>2];P[f+32>>2]=S(P[c>>2]+P[G>>2])-S(i*j);n=P[d+52>>2];P[f+36>>2]=S(P[c+4>>2]+P[G+4>>2])-S(j*n);g=P[d+56>>2];P[f+40>>2]=S(P[c+8>>2]+P[G+8>>2])-S(j*g);L[f+76>>2]=0;P[f+72>>2]=-g;P[f+68>>2]=-n;P[f+64>>2]=-i;ha[L[L[W>>2]+16>>2]](W,f- -64|0,f+32|0,S(-j));b=b+1|0;if((b|0)!=(a|0)){continue}break}break x}b=0;while(1){c=(f+112|0)+R(b,12)|0;P[f+32>>2]=P[c>>2]+P[G>>2];P[f+36>>2]=P[c+4>>2]+P[G+4>>2];P[f+40>>2]=P[c+8>>2]+P[G+8>>2];j=P[d+48>>2];i=P[d+52>>2];n=P[d+56>>2];L[f+76>>2]=0;P[f+72>>2]=-n;P[f+68>>2]=-i;P[f+64>>2]=-j;ha[L[L[W>>2]+16>>2]](W,f- -64|0,f+32|0,S(-P[(f+80|0)+(b<<2)>>2]));b=b+1|0;if((b|0)!=(a|0)){continue}break}break x}c=0;y:{if(a>>>0<2){break y}b=a-1|0;t=b&3;e=0;n=P[f+80>>2];z:{if(a-2>>>0<3){b=1;break z}oa=b&-4;b=1;while(1){l=f+80|0;ga=b+3|0;j=P[l+(ga<<2)>>2];i=P[l+(b<<2)>>2];u=i>n;sa=b+1|0;g=P[l+(sa<<2)>>2];i=u?i:n;o=g>i;ta=b+2|0;n=P[l+(ta<<2)>>2];i=o?g:i;l=n>i;i=l?n:i;x=i>2];l=j>n;n=l?j:n;c=l?b:c;b=b+1|0;e=e+1|0;if((t|0)!=(e|0)){continue}break}}t=f+208|0;u=f+32|0;e=0;i=S(0);g=S(0);h=S(0);l=fa+-64|0;fa=l;A:{B:{C:{D:{E:{b=a;switch(b-1|0){case 1:break C;case 0:break D;default:break E}}if((b|0)>=2){o=b-2|0;while(1){a=t+(e<<3)|0;n=P[a>>2];k=P[a+12>>2];m=P[a+4>>2];v=P[a+8>>2];j=S(S(n*k)-S(m*v));i=S(i+j);g=S(S(j*S(k+m))+g);h=S(S(j*S(n+v))+h);a=(e|0)!=(o|0);e=e+1|0;if(a){continue}break}}k=S(0xde0b6b000000000);y=i;a=t+(b<<3)|0;i=P[a-8>>2];n=P[t+4>>2];m=P[a-4>>2];v=P[t>>2];j=S(S(i*n)-S(m*v));y=S(y+j);if(S(T(y))>S(1.1920928955078125e-7)){k=S(S(1)/S(y*S(3)))}e=0;if((b|0)<=0){break A}g=S(S(S(j*S(n+m))+g)*k);j=S(S(S(j*S(i+v))+h)*k);break B}g=P[t+4>>2];j=P[t>>2];break B}g=S(S(P[t+4>>2]+P[t+12>>2])*S(.5));j=S(S(P[t>>2]+P[t+8>>2])*S(.5))}while(1){a=t+(e<<3)|0;P[(l+32|0)+(e<<2)>>2]=Za(S(P[a+4>>2]-g),S(P[a>>2]-j));e=e+1|0;if((b|0)!=(e|0)){continue}break}D=0;o=0;if(b-1>>>0>=7){t=b&-8;a=0;while(1){e=o<<2;L[e+l>>2]=1;L[l+(e|4)>>2]=1;L[l+(e|8)>>2]=1;L[l+(e|12)>>2]=1;L[l+(e|16)>>2]=1;L[l+(e|20)>>2]=1;L[l+(e|24)>>2]=1;L[l+(e|28)>>2]=1;o=o+8|0;a=a+8|0;if((t|0)!=(a|0)){continue}break}}a=b&7;if(!a){e=1;break A}while(1){e=1;L[l+(o<<2)>>2]=1;o=o+1|0;D=D+1|0;if((a|0)!=(D|0)){continue}break}}a=c<<2;L[a+l>>2]=0;L[u>>2]=c;F:{if((X|0)<2){break F}D=u+4|0;if(e){n=S(S(6.2831854820251465)/S(X|0));g=P[a+(l+32|0)>>2];u=1;while(1){L[D>>2]=c;j=S(S(S(u|0)*n)+g);h=j>S(3.1415927410125732)?S(j+S(-6.2831854820251465)):j;i=S(1e9);a=c;e=0;while(1){t=e<<2;G:{if(!L[t+l>>2]){break G}j=S(T(S(P[t+(l+32|0)>>2]-h)));j=j>S(3.1415927410125732)?S(S(6.2831854820251465)-j):j;if(!(j>2]=e;a=e;i=j}e=e+1|0;if((b|0)!=(e|0)){continue}break}L[l+(a<<2)>>2]=0;D=D+4|0;u=u+1|0;if((X|0)!=(u|0)){continue}break}break F}b=X-1|0;a=b&7;if(X-2>>>0>=7){b=b&-8;e=0;while(1){L[D+28>>2]=c;L[D+24>>2]=c;L[D+20>>2]=c;L[D+16>>2]=c;L[D+12>>2]=c;L[D+8>>2]=c;L[D+4>>2]=c;L[D>>2]=c;D=D+32|0;e=e+8|0;if((b|0)!=(e|0)){continue}break}}if(!a){break F}e=0;while(1){L[D>>2]=c;D=D+4|0;e=e+1|0;if((a|0)!=(e|0)){continue}break}}fa=l- -64|0;e=C>>>0>3;a=0;while(1){b=L[(f+32|0)+(a<<2)>>2];c=(f+112|0)+R(b,12)|0;g=S(P[c>>2]+P[G>>2]);P[f+64>>2]=g;h=S(P[c+4>>2]+P[G+4>>2]);P[f+68>>2]=h;k=S(P[c+8>>2]+P[G+8>>2]);P[f+72>>2]=k;H:{if(!e){j=P[d+48>>2];i=P[d+52>>2];n=P[d+56>>2];L[f+28>>2]=0;P[f+24>>2]=-n;P[f+20>>2]=-i;P[f+16>>2]=-j;ha[L[L[W>>2]+16>>2]](W,f+16|0,f- -64|0,S(-P[(f+80|0)+(b<<2)>>2]));break H}i=P[d+48>>2];n=P[d+52>>2];j=P[d+56>>2];L[f+28>>2]=0;P[f+24>>2]=-j;P[f+20>>2]=-n;P[f+16>>2]=-i;L[f+12>>2]=0;v=j;j=P[(f+80|0)+(b<<2)>>2];P[f+8>>2]=k-S(v*j);P[f+4>>2]=h-S(n*j);P[f>>2]=g-S(i*j);ha[L[L[W>>2]+16>>2]](W,f+16|0,f,S(-j))}a=a+1|0;if((X|0)!=(a|0)){continue}break}}L[d+40>>2]=C}fa=f+368|0;fa=d+160|0}function fB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=0,g=S(0),h=S(0),i=S(0),j=0,k=S(0),l=S(0),m=S(0),n=0,o=0,p=0,q=0,r=S(0),s=S(0),t=S(0),u=S(0),v=0,w=0,x=S(0),y=S(0),z=0,A=S(0),B=0,C=S(0),D=S(0),E=0,F=S(0),G=0,H=0,I=S(0),K=S(0),N=S(0),O=S(0),Q=0,U=0,V=0,W=0,X=S(0),Y=S(0),Z=0,$=S(0),aa=0,ba=0,ca=0,da=0,ea=0,ga=0,ia=0,ja=0,ka=S(0),la=S(0),ma=S(0),na=S(0);if((c|0)>0){while(1){aa=0;p=fa-96|0;fa=p;Z=L[(ba<<2)+b>>2];n=L[Z+744>>2];o=L[Z+740>>2];G=vb(a,o,P[d+12>>2]);H=vb(a,n,P[d+12>>2]);f=L[a+16>>2];B=f+R(G,244)|0;a:{b:{if(P[B+128>>2]!=S(0)|P[B+132>>2]!=S(0)|P[B+136>>2]!=S(0)){break b}B=f+R(H,244)|0;if(P[B+128>>2]!=S(0)|P[B+132>>2]!=S(0)){break b}if(P[B+136>>2]==S(0)){break a}}j=L[Z+748>>2];if((j|0)<=0){break a}V=f+R(H,244)|0;W=f+R(G,244)|0;ca=1;while(1){v=R(aa,184)+Z|0;if(P[v+84>>2]<=P[Z+756>>2]){z=v+4|0;B=L[a+28>>2];j=B;c:{if((j|0)!=L[a+32>>2]){break c}w=j?B<<1:1;if((w|0)<=(j|0)){break c}d:{if(!w){q=0;f=B;break d}L[8513]=L[8513]+1;q=ha[L[6798]](R(w,152),16)|0;f=L[a+28>>2]}e:{if((f|0)<=0){break e}j=0;if((f|0)!=1){Q=f&-2;E=0;while(1){U=R(j,152);qa(U+q|0,U+L[a+36>>2]|0,152);U=R(j|1,152);qa(U+q|0,U+L[a+36>>2]|0,152);j=j+2|0;E=E+2|0;if((Q|0)!=(E|0)){continue}break}}if(!(f&1)){break e}f=R(j,152);qa(f+q|0,f+L[a+36>>2]|0,152)}f=L[a+36>>2];if(!(f?!f|!M[a+40|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](f)}L[a+36>>2]=q;J[a+40|0]=1;L[a+32>>2]=w;j=L[a+28>>2]}L[a+28>>2]=j+1;ia=L[o+236>>2];ja=L[n+236>>2];f=L[a+36>>2]+R(B,152)|0;L[f+148>>2]=H;L[f+144>>2]=G;L[f+132>>2]=z;i=P[v+52>>2];h=P[v+56>>2];e=P[v+60>>2];g=P[o+52>>2];l=P[o+56>>2];m=P[o+60>>2];L[p+92>>2]=0;e=S(e-m);P[p+88>>2]=e;h=S(h-l);P[p+84>>2]=h;i=S(i-g);P[p+80>>2]=i;m=P[v+36>>2];l=P[v+40>>2];g=P[v+44>>2];k=P[n+52>>2];y=P[n+56>>2];s=P[n+60>>2];L[p+76>>2]=0;g=S(g-s);P[p+72>>2]=g;l=S(l-y);P[p+68>>2]=l;m=S(m-k);P[p+64>>2]=m;y=S(0);O=S(0);I=S(0);K=S(0);if(L[W+240>>2]){k=S(P[W+192>>2]+P[W+224>>2]);s=S(P[W+196>>2]+P[W+228>>2]);O=S(S(P[W+184>>2]+P[W+216>>2])+S(S(k*h)-S(i*s)));t=S(P[W+200>>2]+P[W+232>>2]);I=S(S(P[W+180>>2]+P[W+212>>2])+S(S(t*i)-S(e*k)));K=S(S(P[W+176>>2]+P[W+208>>2])+S(S(s*e)-S(h*t)))}$=S(0);ka=S(0);if(L[V+240>>2]){e=S(P[V+192>>2]+P[V+224>>2]);h=S(P[V+196>>2]+P[V+228>>2]);y=S(S(P[V+184>>2]+P[V+216>>2])+S(S(e*l)-S(m*h)));i=S(P[V+200>>2]+P[V+232>>2]);$=S(S(P[V+180>>2]+P[V+212>>2])+S(S(i*m)-S(g*e)));ka=S(S(P[V+176>>2]+P[V+208>>2])+S(S(h*g)-S(l*i)))}la=P[v+76>>2];E=v+68|0;ma=P[E>>2];na=P[v+72>>2];m=S(0);Q=L[a+16>>2];da=Q+R(H,244)|0;j=L[da+240>>2];ea=Q+R(G,244)|0;q=L[ea+240>>2];L[p+60>>2]=1065353216;e=P[p+80>>2];h=P[z+68>>2];i=P[z+64>>2];g=P[p+84>>2];k=S(S(e*h)-S(i*g));l=P[p+88>>2];r=S(l*i);i=P[z+72>>2];s=S(r-S(i*e));t=S(S(g*i)-S(h*l));h=S(0);e=S(0);i=S(0);if(q){i=S(S(S(P[q+304>>2]*k)+S(S(P[q+296>>2]*t)+S(s*P[q+300>>2])))*P[q+552>>2]);h=S(S(S(P[q+272>>2]*k)+S(S(P[q+264>>2]*t)+S(s*P[q+268>>2])))*P[q+544>>2]);e=S(S(S(P[q+288>>2]*k)+S(S(P[q+280>>2]*t)+S(s*P[q+284>>2])))*P[q+548>>2])}P[f+64>>2]=h;L[f+76>>2]=0;P[f+72>>2]=i;P[f+68>>2]=e;w=p- -64|0;g=P[w>>2];l=P[z+68>>2];u=P[z+64>>2];C=P[w+4>>2];r=S(S(g*l)-S(u*C));D=P[w+8>>2];F=P[z+72>>2];u=S(S(D*u)-S(F*g));C=S(S(C*F)-S(l*D));g=S(0);l=S(0);if(j){m=S(-C);l=S(S(S(S(P[j+296>>2]*m)-S(P[j+300>>2]*u))-S(P[j+304>>2]*r))*P[j+552>>2]);g=S(S(S(S(P[j+280>>2]*m)-S(P[j+284>>2]*u))-S(P[j+288>>2]*r))*P[j+548>>2]);m=S(S(S(S(P[j+264>>2]*m)-S(P[j+268>>2]*u))-S(P[j+272>>2]*r))*P[j+544>>2])}P[f+80>>2]=m;L[f+92>>2]=0;P[f+88>>2]=l;P[f+84>>2]=g;x=P[p+60>>2];if(q){F=P[p+84>>2];N=P[p+80>>2];D=S(P[z+72>>2]*S(S(h*F)-S(N*e)));A=e;e=P[p+88>>2];e=S(P[q+344>>2]+S(D+S(S(P[z+64>>2]*S(S(A*e)-S(F*i)))+S(S(S(i*N)-S(e*h))*P[z+68>>2]))))}else{e=S(0)}if(j){h=P[w>>2];i=P[w+4>>2];A=S(P[z+72>>2]*S(S(g*h)-S(m*i)));D=S(l*i);i=P[w+8>>2];g=S(P[j+344>>2]+S(A+S(S(P[z+64>>2]*S(D-S(g*i)))+S(S(S(m*i)-S(l*h))*P[z+68>>2]))))}else{g=S(0)}P[f+108>>2]=x/S(e+g);f:{if(q){U=z- -64|0;ga=L[U+4>>2];L[f+16>>2]=L[U>>2];L[f+20>>2]=ga;ga=L[U+12>>2];L[f+24>>2]=L[U+8>>2];L[f+28>>2]=ga;L[f+12>>2]=0;P[f+8>>2]=k;P[f+4>>2]=s;P[f>>2]=t;break f}L[f>>2]=0;L[f+4>>2]=0;L[f+24>>2]=0;L[f+28>>2]=0;L[f+16>>2]=0;L[f+20>>2]=0;L[f+8>>2]=0;L[f+12>>2]=0}g:{if(j){e=P[z+64>>2];h=P[z+68>>2];i=P[z+72>>2];L[f+60>>2]=0;L[f+44>>2]=0;P[f+40>>2]=-r;P[f+36>>2]=-u;P[f+32>>2]=-C;P[f+56>>2]=-i;P[f+52>>2]=-h;P[f+48>>2]=-e;break g}L[f+32>>2]=0;L[f+36>>2]=0;L[f+56>>2]=0;L[f+60>>2]=0;L[f+48>>2]=0;L[f+52>>2]=0;L[f+40>>2]=0;L[f+44>>2]=0}m=S(0);h=S(0);e=S(0);i=S(0);if(q){e=P[q+328>>2];h=P[p+84>>2];g=P[p+80>>2];l=P[q+332>>2];i=S(S(S(e*h)-S(g*l))+P[q+320>>2]);k=P[q+336>>2];r=S(k*g);g=P[p+88>>2];e=S(S(r-S(g*e))+P[q+316>>2]);h=S(S(S(l*g)-S(h*k))+P[q+312>>2])}g=S(0);l=S(0);if(j){g=P[j+328>>2];m=P[w+4>>2];k=P[w>>2];s=P[j+332>>2];l=S(S(S(g*m)-S(k*s))+P[j+320>>2]);t=P[j+336>>2];r=S(t*k);k=P[w+8>>2];g=S(S(r-S(k*g))+P[j+316>>2]);m=S(S(S(s*k)-S(m*t))+P[j+312>>2])}F=P[d+56>>2];N=P[z+80>>2];k=P[z+72>>2];s=P[z+64>>2];t=P[z+68>>2];P[f+104>>2]=P[z+84>>2];m=S(P[z+92>>2]*S(-S(S(k*S(i-l))+S(S(s*S(h-m))+S(t*S(e-g))))));h:{if(M[d+64|0]&4){e=S(P[z+120>>2]*P[d+60>>2]);P[f+100>>2]=e;if(!(!q|!L[ea+240>>2])){h=P[q+356>>2];i=P[f+24>>2];g=P[q+352>>2];l=P[f+20>>2];w=Q+R(G,244)|0;P[w+64>>2]=S(P[w+112>>2]*S(e*S(S(P[f+16>>2]*P[w+128>>2])*P[q+348>>2])))+P[w+64>>2];P[w+68>>2]=S(S(e*S(g*S(l*P[w+132>>2])))*P[w+116>>2])+P[w+68>>2];P[w+72>>2]=S(S(e*S(h*S(i*P[w+136>>2])))*P[w+120>>2])+P[w+72>>2];h=P[f+72>>2];i=P[f+68>>2];P[w+80>>2]=S(S(e*P[w+96>>2])*P[f+64>>2])+P[w+80>>2];g=P[w+104>>2];P[w+84>>2]=S(i*S(e*P[w+100>>2]))+P[w+84>>2];P[w+88>>2]=S(h*S(e*g))+P[w+88>>2]}if(!j|!L[da+240>>2]){break h}q=Q+R(H,244)|0;h=P[q+120>>2];i=P[j+356>>2];g=P[f+56>>2];l=P[q+136>>2];k=P[q+116>>2];s=P[j+352>>2];t=P[f+52>>2];r=P[q+132>>2];u=P[f+88>>2];C=P[f+84>>2];D=P[f+80>>2];e=P[f+100>>2];P[q+64>>2]=P[q+64>>2]+S(P[q+112>>2]*S(S(S(P[q+128>>2]*P[f+48>>2])*P[j+348>>2])*e));P[q+80>>2]=P[q+80>>2]+S(D*S(e*P[q+96>>2]));P[q+84>>2]=P[q+84>>2]+S(C*S(e*P[q+100>>2]));P[q+88>>2]=P[q+88>>2]+S(u*S(e*P[q+104>>2]));P[q+68>>2]=P[q+68>>2]+S(k*S(e*S(s*S(r*t))));P[q+72>>2]=P[q+72>>2]+S(h*S(e*S(i*S(l*g))));break h}L[f+100>>2]=0}L[f+96>>2]=0;e=S(0);i=S(0);g=S(0);l=S(0);k=S(0);s=S(0);t=S(0);if(L[ea+240>>2]){j=Q+R(G,244)|0;t=P[j+224>>2];l=P[j+208>>2];k=P[j+232>>2];s=P[j+228>>2];g=P[j+212>>2];i=P[j+216>>2]}h=S(0);r=S(0);u=S(0);C=S(0);D=S(0);if(L[da+240>>2]){j=Q+R(H,244)|0;D=P[j+224>>2];u=P[j+232>>2];C=P[j+228>>2];r=P[j+216>>2];h=P[j+212>>2];e=P[j+208>>2]}j=Q+R(G,244)|0;k=S(S(S(P[f+24>>2]*S(i+P[j+184>>2]))+S(S(P[f+16>>2]*S(l+P[j+176>>2]))+S(S(g+P[j+180>>2])*P[f+20>>2])))+S(S(P[f+8>>2]*S(k+P[j+200>>2]))+S(S(P[f>>2]*S(t+P[j+192>>2]))+S(S(s+P[j+196>>2])*P[f+4>>2]))));j=Q+R(H,244)|0;h=S((m<=S(0)?S(0):m)-S(k+S(S(S(P[f+56>>2]*S(r+P[j+184>>2]))+S(S(P[f+48>>2]*S(e+P[j+176>>2]))+S(S(h+P[j+180>>2])*P[f+52>>2])))+S(S(P[f+40>>2]*S(u+P[j+200>>2]))+S(S(P[f+32>>2]*S(D+P[j+192>>2]))+S(S(C+P[j+196>>2])*P[f+36>>2]))))));i=S(N+F);j=!L[d+44>>2]|i>P[d+48>>2];e=S(0);i:{if(i>S(0)){h=S(h-S(i/P[d+12>>2]));break i}e=S(S(P[(j?32:36)+d>>2]*S(-i))/P[d+12>>2])}L[f+124>>2]=1343554297;L[f+116>>2]=0;L[f+120>>2]=0;k=e;e=P[f+108>>2];i=S(k*e);P[f+128>>2]=j?S(0):i;P[f+112>>2]=S(h*e)+(j?i:S(-0));L[f+140>>2]=L[a+68>>2];e=S(0);h=S(0);i=S(0);g=S(0);if(ia&2){j=ia<<30>>31&o;g=P[j+336>>2];i=P[j+332>>2];h=P[j+328>>2]}l=S(0);m=S(0);if(ja&2){j=ja<<30>>31&n;m=P[j+336>>2];l=P[j+332>>2];e=P[j+328>>2]}L[p+56>>2]=0;g=S(m-g);P[p+52>>2]=g;i=S(l-i);P[p+48>>2]=i;e=S(e-h);P[p+44>>2]=e;j:{if(!(P[v+92>>2]>S(0))|!ca){break j}h=S(_(S(S(g*g)+S(S(e*e)+S(i*i)))));if(h>P[d+80>>2]){k=g;g=S(S(1)/h);h=S(k*g);P[p+52>>2]=h;i=S(i*g);P[p+48>>2]=i;e=S(e*g);P[p+44>>2]=e;if(M[o+180|0]&2){m=P[o+44>>2];k=P[o+12>>2];s=P[o+28>>2];g=S(S(S(m*h)+S(S(k*e)+S(i*s)))*P[o+172>>2]);t=P[o+36>>2];r=P[o+4>>2];u=P[o+20>>2];l=S(S(S(t*h)+S(S(r*e)+S(i*u)))*P[o+164>>2]);C=P[o+40>>2];D=P[o+8>>2];A=i;i=P[o+24>>2];e=S(S(S(C*h)+S(S(D*e)+S(A*i)))*P[o+168>>2]);h=S(S(m*g)+S(S(t*l)+S(C*e)));P[p+52>>2]=h;i=S(S(s*g)+S(S(u*l)+S(i*e)));P[p+48>>2]=i;e=S(S(k*g)+S(S(r*l)+S(D*e)));P[p+44>>2]=e}if(M[n+180|0]&2){D=P[n+172>>2];g=P[n+44>>2];l=P[n+12>>2];m=P[n+28>>2];F=P[n+164>>2];k=P[n+36>>2];s=P[n+4>>2];t=P[n+20>>2];N=P[n+168>>2];r=P[n+40>>2];u=P[n+8>>2];C=P[n+24>>2];L[p+56>>2]=0;A=g;g=S(D*S(S(g*h)+S(S(l*e)+S(i*m))));x=k;k=S(F*S(S(k*h)+S(S(s*e)+S(t*i))));e=S(N*S(S(r*h)+S(S(u*e)+S(i*C))));h=S(S(A*g)+S(S(x*k)+S(r*e)));P[p+52>>2]=h;i=S(S(m*g)+S(S(t*k)+S(C*e)));P[p+48>>2]=i;e=S(S(l*g)+S(S(s*k)+S(u*e)));P[p+44>>2]=e}ca=0;if(!(+S(_(S(S(h*h)+S(S(e*e)+S(i*i)))))>.001)){break j}ze(a,p+44|0,G,H,B,z);break j}ze(a,E,G,H,B,z);e=P[E+8>>2];k:{if(S(T(e))>S(.7071067690849304)){h=P[E+4>>2];L[p+28>>2]=0;l=S(S(h*h)+S(e*e));g=S(S(1)/S(_(l)));i=S(h*g);P[p+36>>2]=i;h=S(g*S(-e));P[p+32>>2]=h;m=S(l*g);P[p+12>>2]=m;e=P[E>>2];l=S(i*S(-e));P[p+16>>2]=l;g=S(0);e=S(h*e);break k}h=P[E>>2];i=P[E+4>>2];L[p+36>>2]=0;s=S(S(h*h)+S(i*i));k=S(S(1)/S(_(s)));h=S(h*k);P[p+32>>2]=h;g=S(k*S(-i));P[p+28>>2]=g;l=S(e*g);P[p+16>>2]=l;m=S(h*S(-e));P[p+12>>2]=m;i=S(0);e=S(s*k)}P[p+20>>2]=e;if(M[o+180|0]&2){x=P[o+172>>2];k=P[o+44>>2];s=P[o+12>>2];t=P[o+28>>2];X=P[o+164>>2];r=P[o+36>>2];u=P[o+4>>2];C=P[o+20>>2];Y=P[o+168>>2];D=P[o+40>>2];F=P[o+8>>2];N=P[o+24>>2];L[p+40>>2]=0;A=k;k=S(x*S(S(k*i)+S(S(s*g)+S(h*t))));x=r;r=S(X*S(S(r*i)+S(S(u*g)+S(C*h))));g=S(Y*S(S(D*i)+S(S(F*g)+S(h*N))));i=S(S(A*k)+S(S(x*r)+S(D*g)));P[p+36>>2]=i;h=S(S(t*k)+S(S(C*r)+S(N*g)));P[p+32>>2]=h;g=S(S(s*k)+S(S(u*r)+S(F*g)));P[p+28>>2]=g}if(M[n+180|0]&2){x=P[n+172>>2];k=P[n+44>>2];s=P[n+12>>2];t=P[n+28>>2];X=P[n+164>>2];r=P[n+36>>2];u=P[n+4>>2];C=P[n+20>>2];Y=P[n+168>>2];D=P[n+40>>2];F=P[n+8>>2];N=P[n+24>>2];L[p+40>>2]=0;A=k;k=S(x*S(S(k*i)+S(S(s*g)+S(h*t))));x=r;r=S(X*S(S(r*i)+S(S(u*g)+S(C*h))));g=S(Y*S(S(D*i)+S(S(F*g)+S(h*N))));i=S(S(A*k)+S(S(x*r)+S(D*g)));P[p+36>>2]=i;h=S(S(t*k)+S(S(C*r)+S(N*g)));P[p+32>>2]=h;g=S(S(s*k)+S(S(u*r)+S(F*g)));P[p+28>>2]=g}if(M[o+180|0]&2){x=P[o+172>>2];k=P[o+44>>2];s=P[o+12>>2];t=P[o+28>>2];X=P[o+164>>2];r=P[o+36>>2];u=P[o+4>>2];C=P[o+20>>2];Y=P[o+168>>2];D=P[o+40>>2];F=P[o+8>>2];N=P[o+24>>2];L[p+24>>2]=0;A=k;k=S(x*S(S(k*e)+S(S(s*m)+S(l*t))));x=r;r=S(X*S(S(r*e)+S(S(u*m)+S(C*l))));m=S(Y*S(S(D*e)+S(S(F*m)+S(l*N))));e=S(S(A*k)+S(S(x*r)+S(D*m)));P[p+20>>2]=e;l=S(S(t*k)+S(S(C*r)+S(N*m)));P[p+16>>2]=l;m=S(S(s*k)+S(S(u*r)+S(F*m)));P[p+12>>2]=m}if(M[n+180|0]&2){x=P[n+172>>2];k=P[n+44>>2];s=P[n+12>>2];t=P[n+28>>2];X=P[n+164>>2];r=P[n+36>>2];u=P[n+4>>2];C=P[n+20>>2];Y=P[n+168>>2];D=P[n+40>>2];F=P[n+8>>2];N=P[n+24>>2];L[p+24>>2]=0;A=k;k=S(x*S(S(k*e)+S(S(s*m)+S(l*t))));x=r;r=S(X*S(S(r*e)+S(S(u*m)+S(C*l))));m=S(Y*S(S(D*e)+S(S(F*m)+S(l*N))));e=S(S(A*k)+S(S(x*r)+S(D*m)));P[p+20>>2]=e;l=S(S(t*k)+S(S(C*r)+S(N*m)));P[p+16>>2]=l;m=S(S(s*k)+S(S(u*r)+S(F*m)));P[p+12>>2]=m}if(+S(_(S(S(i*i)+S(S(g*g)+S(h*h)))))>.001){ze(a,p+28|0,G,H,B,z)}if(+S(_(S(S(e*e)+S(S(m*m)+S(l*l)))))>.001){ze(a,p+12|0,G,H,B,z)}ca=0}l:{if(!(M[v+120|0]?M[d+64|0]&32:0)){k=P[E>>2];e=P[E+4>>2];i=P[E+8>>2];L[v+168>>2]=0;g=S(O-y);m=S(K-ka);l=S(I-$);h=S(S(la*g)+S(S(ma*m)+S(l*na)));g=S(g-S(i*h));P[v+164>>2]=g;l=S(l-S(h*e));P[v+160>>2]=l;j=v+156|0;m=S(m-S(h*k));P[j>>2]=m;m:{if(M[d+64|0]&64){break m}h=S(S(g*g)+S(S(m*m)+S(l*l)));if(!(h>S(1.1920928955078125e-7))){break m}i=S(S(1)/S(_(h)));e=S(g*i);P[j+8>>2]=e;h=S(l*i);P[j+4>>2]=h;i=S(m*i);P[j>>2]=i;if(J[o+180|0]&1){O=P[o+172>>2];g=P[o+44>>2];l=P[o+12>>2];m=P[o+28>>2];I=P[o+164>>2];k=P[o+36>>2];y=P[o+4>>2];s=P[o+20>>2];K=P[o+168>>2];t=P[o+40>>2];r=P[o+8>>2];u=P[o+24>>2];L[j+12>>2]=0;A=g;g=S(O*S(S(g*e)+S(S(l*i)+S(h*m))));x=k;k=S(I*S(S(k*e)+S(S(y*i)+S(h*s))));i=S(K*S(S(t*e)+S(S(r*i)+S(h*u))));e=S(S(A*g)+S(S(x*k)+S(t*i)));P[j+8>>2]=e;h=S(S(m*g)+S(S(s*k)+S(u*i)));P[j+4>>2]=h;i=S(S(l*g)+S(S(y*k)+S(r*i)));P[j>>2]=i}if(J[n+180|0]&1){O=P[n+172>>2];g=P[n+44>>2];l=P[n+12>>2];m=P[n+28>>2];I=P[n+164>>2];k=P[n+36>>2];y=P[n+4>>2];s=P[n+20>>2];K=P[n+168>>2];t=P[n+40>>2];r=P[n+8>>2];u=P[n+24>>2];L[j+12>>2]=0;A=g;g=S(O*S(S(g*e)+S(S(l*i)+S(h*m))));x=k;k=S(I*S(S(k*e)+S(S(y*i)+S(s*h))));e=S(K*S(S(t*e)+S(S(r*i)+S(h*u))));P[j+8>>2]=S(A*g)+S(S(x*k)+S(t*e));P[j+4>>2]=S(m*g)+S(S(s*k)+S(u*e));P[j>>2]=S(l*g)+S(S(y*k)+S(r*e))}O=P[p+60>>2];Bc(a,j,G,H,B,z,p+80|0,p- -64|0,O,S(0),S(0));if(!(M[d+64|0]&16)){break l}e=P[j+4>>2];h=P[E+4>>2];i=P[E>>2];g=P[j+8>>2];l=P[j>>2];m=P[E+8>>2];L[v+184>>2]=0;k=S(S(l*h)-S(i*e));y=S(S(e*m)-S(h*g));h=S(S(g*i)-S(m*l));i=S(S(1)/S(_(S(S(k*k)+S(S(y*y)+S(h*h))))));e=S(k*i);P[v+180>>2]=e;h=S(h*i);P[v+176>>2]=h;j=v+172|0;i=S(y*i);P[j>>2]=i;if(J[o+180|0]&1){I=P[o+172>>2];g=P[o+44>>2];l=P[o+12>>2];m=P[o+28>>2];K=P[o+164>>2];k=P[o+36>>2];y=P[o+4>>2];s=P[o+20>>2];$=P[o+168>>2];t=P[o+40>>2];r=P[o+8>>2];u=P[o+24>>2];L[j+12>>2]=0;A=g;g=S(I*S(S(g*e)+S(S(l*i)+S(h*m))));x=k;k=S(K*S(S(k*e)+S(S(y*i)+S(h*s))));i=S($*S(S(t*e)+S(S(r*i)+S(h*u))));e=S(S(A*g)+S(S(x*k)+S(t*i)));P[j+8>>2]=e;h=S(S(m*g)+S(S(s*k)+S(u*i)));P[j+4>>2]=h;i=S(S(l*g)+S(S(y*k)+S(r*i)));P[j>>2]=i}if(J[n+180|0]&1){I=P[n+172>>2];g=P[n+44>>2];l=P[n+12>>2];m=P[n+28>>2];K=P[n+164>>2];k=P[n+36>>2];y=P[n+4>>2];s=P[n+20>>2];$=P[n+168>>2];t=P[n+40>>2];r=P[n+8>>2];u=P[n+24>>2];L[j+12>>2]=0;A=g;g=S(I*S(S(g*e)+S(S(l*i)+S(h*m))));x=k;k=S(K*S(S(k*e)+S(S(y*i)+S(s*h))));e=S($*S(S(t*e)+S(S(r*i)+S(h*u))));P[j+8>>2]=S(A*g)+S(S(x*k)+S(t*e));P[j+4>>2]=S(m*g)+S(S(s*k)+S(u*e));P[j>>2]=S(l*g)+S(S(y*k)+S(r*e))}Bc(a,j,G,H,B,z,p+80|0,p- -64|0,O,S(0),S(0));break l}q=v+172|0;n:{if(S(T(i))>S(.7071067690849304)){g=S(S(e*e)+S(i*i));h=S(S(1)/S(_(g)));l=S(g*h);g=S(h*S(-i));m=S(k*g);e=S(e*h);y=S(e*S(-k));h=S(0);break n}h=S(S(k*k)+S(e*e));g=S(S(1)/S(_(h)));m=S(h*g);h=S(g*S(-e));y=S(i*h);g=S(k*g);l=S(g*S(-i));e=S(0)}P[j+8>>2]=e;P[j+4>>2]=g;P[j>>2]=h;P[q+8>>2]=m;P[q+4>>2]=y;P[q>>2]=l;if(J[o+180|0]&1){O=P[o+172>>2];i=P[o+44>>2];l=P[o+12>>2];m=P[o+28>>2];I=P[o+164>>2];k=P[o+36>>2];y=P[o+4>>2];s=P[o+20>>2];K=P[o+168>>2];t=P[o+40>>2];r=P[o+8>>2];u=P[o+24>>2];L[j+12>>2]=0;A=i;i=S(O*S(S(i*e)+S(S(l*h)+S(g*m))));x=k;k=S(I*S(S(k*e)+S(S(y*h)+S(s*g))));h=S(K*S(S(t*e)+S(S(r*h)+S(g*u))));e=S(S(A*i)+S(S(x*k)+S(t*h)));P[j+8>>2]=e;g=S(S(m*i)+S(S(s*k)+S(u*h)));P[j+4>>2]=g;h=S(S(l*i)+S(S(y*k)+S(r*h)));P[j>>2]=h}if(J[n+180|0]&1){O=P[n+172>>2];i=P[n+44>>2];l=P[n+12>>2];m=P[n+28>>2];I=P[n+164>>2];k=P[n+36>>2];y=P[n+4>>2];s=P[n+20>>2];K=P[n+168>>2];t=P[n+40>>2];r=P[n+8>>2];u=P[n+24>>2];L[j+12>>2]=0;A=i;i=S(O*S(S(i*e)+S(S(l*h)+S(g*m))));x=k;k=S(I*S(S(k*e)+S(S(y*h)+S(s*g))));e=S(K*S(S(t*e)+S(S(r*h)+S(g*u))));P[j+8>>2]=S(A*i)+S(S(x*k)+S(t*e));P[j+4>>2]=S(m*i)+S(S(s*k)+S(u*e));P[j>>2]=S(l*i)+S(S(y*k)+S(r*e))}O=P[p+60>>2];Bc(a,j,G,H,B,z,p+80|0,p- -64|0,O,S(0),S(0));j=L[d+64>>2];if(j&16){if(J[o+180|0]&1){t=P[o+172>>2];e=P[o+44>>2];h=P[o+12>>2];i=P[o+28>>2];I=P[o+164>>2];g=P[o+36>>2];l=P[o+4>>2];m=P[o+20>>2];K=P[o+168>>2];k=P[o+40>>2];y=P[o+8>>2];s=P[o+24>>2];L[q+12>>2]=0;A=e;x=t;e=P[q+8>>2];t=P[q>>2];r=P[q+4>>2];u=S(x*S(S(A*e)+S(S(h*t)+S(i*r))));x=g;g=S(I*S(S(g*e)+S(S(l*t)+S(m*r))));e=S(K*S(S(k*e)+S(S(y*t)+S(r*s))));P[q+8>>2]=S(A*u)+S(S(x*g)+S(k*e));P[q+4>>2]=S(i*u)+S(S(m*g)+S(s*e));P[q>>2]=S(h*u)+S(S(l*g)+S(y*e))}if(J[n+180|0]&1){t=P[n+172>>2];e=P[n+44>>2];h=P[n+12>>2];i=P[n+28>>2];I=P[n+164>>2];g=P[n+36>>2];l=P[n+4>>2];m=P[n+20>>2];K=P[n+168>>2];k=P[n+40>>2];y=P[n+8>>2];s=P[n+24>>2];L[q+12>>2]=0;A=e;x=t;e=P[q+8>>2];t=P[q>>2];r=P[q+4>>2];u=S(x*S(S(A*e)+S(S(h*t)+S(i*r))));x=g;g=S(I*S(S(g*e)+S(S(l*t)+S(m*r))));e=S(K*S(S(k*e)+S(S(y*t)+S(r*s))));P[q+8>>2]=S(A*u)+S(S(x*g)+S(k*e));P[q+4>>2]=S(i*u)+S(S(m*g)+S(s*e));P[q>>2]=S(h*u)+S(S(l*g)+S(y*e))}Bc(a,q,G,H,B,z,p+80|0,p- -64|0,O,S(0),S(0));j=L[d+64>>2]}if((j&80)!=80){break l}J[v+120|0]=1;break l}e=P[p+60>>2];Bc(a,v+156|0,G,H,B,z,p+80|0,p- -64|0,e,P[v+136>>2],P[v+144>>2]);if(!(M[d+64|0]&16)){break l}Bc(a,v+172|0,G,H,B,z,p+80|0,p- -64|0,e,P[v+140>>2],P[v+148>>2])}q=L[a+76>>2];Q=L[f+140>>2];U=L[d+64>>2];o:{if(U&4){w=L[a+16>>2];B=L[(w+R(H,244)|0)+240>>2];j=L[(w+R(G,244)|0)+240>>2];v=q+R(Q,152)|0;e=S(P[z+124>>2]*P[d+60>>2]);P[v+100>>2]=e;if(j){i=P[j+356>>2];g=P[v+24>>2];l=P[j+352>>2];m=P[v+20>>2];f=w+R(G,244)|0;h=P[j+344>>2];P[f+64>>2]=S(S(e*S(S(h*P[v+16>>2])*P[j+348>>2]))*P[f+112>>2])+P[f+64>>2];P[f+68>>2]=S(S(e*S(l*S(h*m)))*P[f+116>>2])+P[f+68>>2];P[f+72>>2]=S(S(e*S(i*S(h*g)))*P[f+120>>2])+P[f+72>>2];h=P[v+72>>2];i=P[v+68>>2];P[f+80>>2]=S(S(e*P[f+96>>2])*P[v+64>>2])+P[f+80>>2];g=P[f+104>>2];P[f+84>>2]=S(i*S(e*P[f+100>>2]))+P[f+84>>2];P[f+88>>2]=S(h*S(e*g))+P[f+88>>2]}if(B){E=q+R(Q,152)|0;i=P[E+88>>2];g=P[E+84>>2];l=P[E+80>>2];m=P[B+356>>2];k=P[E+56>>2];y=P[B+352>>2];s=P[E+52>>2];f=w+R(H,244)|0;h=P[B+344>>2];e=P[v+100>>2];P[f+64>>2]=P[f+64>>2]+S(S(S(S(h*P[E+48>>2])*P[B+348>>2])*e)*P[f+112>>2]);P[f+68>>2]=P[f+68>>2]+S(S(e*S(y*S(h*s)))*P[f+116>>2]);P[f+72>>2]=P[f+72>>2]+S(S(e*S(m*S(h*k)))*P[f+120>>2]);P[f+80>>2]=P[f+80>>2]+S(l*S(e*P[f+96>>2]));h=P[f+104>>2];P[f+84>>2]=P[f+84>>2]+S(g*S(e*P[f+100>>2]));P[f+88>>2]=P[f+88>>2]+S(i*S(h*e))}if(!(U&16)){break o}E=Q+1|0;v=q+R(E,152)|0;e=S(P[z+128>>2]*P[d+60>>2]);P[v+100>>2]=e;if(j){i=P[v+24>>2];g=P[v+20>>2];f=w+R(G,244)|0;h=P[j+344>>2];P[f+64>>2]=S(S(e*S(h*P[v+16>>2]))*P[f+112>>2])+P[f+64>>2];P[f+68>>2]=S(S(e*S(h*g))*P[f+116>>2])+P[f+68>>2];P[f+72>>2]=S(S(e*S(h*i))*P[f+120>>2])+P[f+72>>2];h=P[v+72>>2];i=P[v+68>>2];P[f+80>>2]=S(S(e*P[f+96>>2])*P[v+64>>2])+P[f+80>>2];g=P[f+104>>2];P[f+84>>2]=S(i*S(e*P[f+100>>2]))+P[f+84>>2];P[f+88>>2]=S(h*S(e*g))+P[f+88>>2]}if(!B){break o}j=q+R(E,152)|0;i=P[j+88>>2];g=P[j+84>>2];l=P[j+56>>2];m=P[j+52>>2];k=P[j+48>>2];h=P[B+344>>2];f=w+R(H,244)|0;e=P[v+100>>2];P[f+80>>2]=P[f+80>>2]+S(P[j+80>>2]*S(P[f+96>>2]*e));P[f+64>>2]=P[f+64>>2]+S(S(e*S(h*k))*P[f+112>>2]);P[f+68>>2]=P[f+68>>2]+S(S(e*S(h*m))*P[f+116>>2]);P[f+72>>2]=P[f+72>>2]+S(S(e*S(h*l))*P[f+120>>2]);h=P[f+104>>2];P[f+84>>2]=P[f+84>>2]+S(g*S(e*P[f+100>>2]));P[f+88>>2]=P[f+88>>2]+S(i*S(h*e));break o}f=q+R(Q,152)|0;L[f+100>>2]=0;if(!(U&16)){break o}L[f+252>>2]=0}j=L[Z+748>>2]}aa=aa+1|0;if((aa|0)<(j|0)){continue}break}}fa=p+96|0;ba=ba+1|0;if((ba|0)!=(c|0)){continue}break}}}function Lz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=S(0),y=S(0);l=fa-96|0;fa=l;oh(a,b,c);J[l+52|0]=1;L[l+48>>2]=0;J[l+72|0]=1;L[l+40>>2]=0;L[l+44>>2]=0;L[l+68>>2]=0;J[l+92|0]=1;L[l+60>>2]=0;L[l+64>>2]=0;L[l+88>>2]=0;L[l+80>>2]=0;L[l+84>>2]=0;L[l+28>>2]=0;J[l+32|0]=1;L[l+20>>2]=0;L[l+24>>2]=0;d=L[a+872>>2];L[b+292>>2]=d;a:{if(!d){L[b+260>>2]=0;break a}j=a+868|0;d=ha[L[L[c>>2]+28>>2]](c,j)|0;L[b+260>>2]=d;if(!d){break a}i=L[b+292>>2];h=ha[L[L[c>>2]+16>>2]](c,4,i)|0;if((i|0)>0){f=L[h+8>>2];while(1){d=L[L[a+880>>2]+(g<<2)>>2];if(d){e=ha[L[L[c>>2]+28>>2]](c,d)|0}else{e=0}L[f>>2]=e;if(!(ha[L[L[c>>2]+24>>2]](c,d)|0)){k=ha[L[L[c>>2]+16>>2]](c,16,1)|0;e=L[k+8>>2];L[e+12>>2]=L[d+16>>2];P[e+4>>2]=P[d+8>>2];P[e>>2]=P[d+4>>2];P[e+8>>2]=P[d+12>>2];ha[L[L[c>>2]+20>>2]](c,k,3766,1414349395,d)}f=f+4|0;g=g+1|0;if((i|0)!=(g|0)){continue}break}}ha[L[L[c>>2]+20>>2]](c,h,3766,1497453121,j)}d=L[a+712>>2];L[b+296>>2]=d;b:{if(!d){L[b+264>>2]=0;break b}v=a+708|0;d=ha[L[L[c>>2]+28>>2]](c,v)|0;L[b+264>>2]=d;if(!d){break b}t=L[b+296>>2];w=ha[L[L[c>>2]+16>>2]](c,100,t)|0;d=L[w+8>>2];g=0;L[l+12>>2]=0;if((t|0)>0){while(1){h=L[a+720>>2];f=h+R(g,104)|0;P[d+52>>2]=P[f+56>>2];P[d+56>>2]=P[f+60>>2];P[d+60>>2]=P[f- -64>>2];P[d- -64>>2]=P[f+68>>2];P[d+88>>2]=P[f+92>>2];e=0;L[d+92>>2]=0-(J[f+100|0]&1);P[d+84>>2]=P[f+88>>2];f=L[f+4>>2];if(f){e=ha[L[L[c>>2]+28>>2]](c,f)|0;g=L[l+12>>2];h=L[a+720>>2]}L[d>>2]=e;e=R(g,104)+h|0;P[d+68>>2]=P[e+72>>2];P[d+72>>2]=P[e+76>>2];P[d+76>>2]=P[e+80>>2];P[d+80>>2]=P[e+84>>2];P[d+4>>2]=P[e+8>>2];P[d+8>>2]=P[e+12>>2];P[d+12>>2]=P[e+16>>2];P[d+16>>2]=P[e+20>>2];P[d+20>>2]=P[e+24>>2];P[d+24>>2]=P[e+28>>2];P[d+28>>2]=P[e+32>>2];P[d+32>>2]=P[e+36>>2];P[d+36>>2]=P[e+40>>2];P[d+40>>2]=P[e+44>>2];P[d+44>>2]=P[e+48>>2];P[d+48>>2]=P[e+52>>2];L[l+4>>2]=e;g=0;o=0;c:{d:{e:{f:{g:{h:{j=l+16|0;i=L[j+48>>2];e=L[l+4>>2];f=(e<<15^-1)+e|0;f=R(f>>10^f,9);f=f>>6^f;f=(f<<11^-1)+f|0;r=i-1&(f>>16^f);i:{if(r>>>0>=O[j+4>>2]){break i}h=L[L[j+12>>2]+(r<<2)>>2];if((h|0)==-1){break i}f=L[j+32>>2];k=L[j+72>>2];while(1){if((e|0)==L[k+(h<<3)>>2]){break h}h=L[f+(h<<2)>>2];if((h|0)!=-1){continue}break}}m=L[j+44>>2];e=m;if((i|0)!=(e|0)){break d}e=i;n=e?e<<1:1;if((e|0)>=(n|0)){break d}j:{if(!n){k=0;e=i;break j}L[8513]=L[8513]+1;k=ha[L[6798]](n<<2,16)|0;e=L[j+44>>2]}f=L[j+52>>2];if((e|0)<=0){break g}h=0;if(e>>>0>=4){p=e&-4;while(1){q=h<<2;L[q+k>>2]=L[f+q>>2];s=q|4;L[s+k>>2]=L[f+s>>2];s=q|8;L[s+k>>2]=L[f+s>>2];q=q|12;L[q+k>>2]=L[f+q>>2];h=h+4|0;g=g+4|0;if((p|0)!=(g|0)){continue}break}}e=e&3;if(!e){break f}while(1){g=h<<2;L[g+k>>2]=L[f+g>>2];h=h+1|0;o=o+1|0;if((e|0)!=(o|0)){continue}break}break f}L[L[j+52>>2]+(h<<2)>>2]=L[l+12>>2];break c}if(!f){break e}}if(f?M[j+56|0]:0){L[8514]=L[8514]+1;ha[L[6799]](f)}e=L[j+44>>2]}L[j+52>>2]=k;L[j+48>>2]=n;J[j+56|0]=1}L[L[j+52>>2]+(e<<2)>>2]=L[l+12>>2];L[j+44>>2]=L[j+44>>2]+1;f=L[j- -64>>2];k:{if((f|0)!=L[j+68>>2]){break k}n=f?f<<1:1;if((n|0)<=(f|0)){break k}l:{if(!n){k=0;break l}L[8513]=L[8513]+1;k=ha[L[6798]](n<<3,16)|0;f=L[j+64>>2]}m:{if((f|0)<=0){break m}e=0;h=0;if(f>>>0>=4){q=f&-4;o=0;while(1){g=h<<3;p=g+k|0;s=g+L[j+72>>2]|0;u=L[s+4>>2];L[p>>2]=L[s>>2];L[p+4>>2]=u;p=g|8;s=p+k|0;p=p+L[j+72>>2]|0;u=L[p+4>>2];L[s>>2]=L[p>>2];L[s+4>>2]=u;p=g|16;s=p+k|0;p=p+L[j+72>>2]|0;u=L[p+4>>2];L[s>>2]=L[p>>2];L[s+4>>2]=u;g=g|24;p=g+k|0;g=g+L[j+72>>2]|0;s=L[g+4>>2];L[p>>2]=L[g>>2];L[p+4>>2]=s;h=h+4|0;o=o+4|0;if((q|0)!=(o|0)){continue}break}}f=f&3;if(!f){break m}while(1){g=h<<3;o=g+k|0;g=g+L[j+72>>2]|0;q=L[g+4>>2];L[o>>2]=L[g>>2];L[o+4>>2]=q;h=h+1|0;e=e+1|0;if((f|0)!=(e|0)){continue}break}}e=L[j+72>>2];if(!(e?!e|!M[j+76|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](e)}L[j+72>>2]=k;J[j+76|0]=1;L[j+68>>2]=n;f=L[j+64>>2]}e=L[j+72>>2]+(f<<3)|0;f=L[l+8>>2];L[e>>2]=L[l+4>>2];L[e+4>>2]=f;L[j+64>>2]=L[j+64>>2]+1;if((i|0)>2]){nn(j);e=L[l+4>>2];e=(e<<15^-1)+e|0;e=R(e>>10^e,9);e=e>>6^e;e=(e<<11^-1)+e|0;r=L[j+48>>2]-1&(e>>16^e)}e=L[j+12>>2]+(r<<2)|0;L[L[j+32>>2]+(m<<2)>>2]=L[e>>2];L[e>>2]=m}g=L[l+12>>2]+1|0;L[l+12>>2]=g;d=d+100|0;if((g|0)<(t|0)){continue}break}}ha[L[L[c>>2]+20>>2]](c,w,4078,1145979475,v)}d=L[a+732>>2];L[b+300>>2]=d;n:{if(!d){L[b+268>>2]=0;break n}d=ha[L[L[c>>2]+28>>2]](c,L[a+740>>2])|0;L[b+268>>2]=d;if(!d){break n}f=0;e=L[b+300>>2];i=ha[L[L[c>>2]+16>>2]](c,20,e)|0;o:{if((e|0)<=0){h=L[a+740>>2];break o}h=L[a+740>>2];d=L[i+8>>2];while(1){g=0;j=R(f,52);k=j+h|0;L[d+16>>2]=0-(J[k+20|0]&1);k=L[k+4>>2];if(k){g=ha[L[L[c>>2]+28>>2]](c,k)|0;h=L[a+740>>2]}L[d>>2]=g;g=h+j|0;j=L[g+8>>2];if(j){m=(j-L[a+720>>2]|0)/104|0}else{m=-1}L[d+4>>2]=m;j=L[g+12>>2];if(j){m=(j-L[a+720>>2]|0)/104|0}else{m=-1}L[d+8>>2]=m;P[d+12>>2]=P[g+16>>2];d=d+20|0;f=f+1|0;if((e|0)!=(f|0)){continue}break}}ha[L[L[c>>2]+20>>2]](c,i,3787,1497453121,h)}d=L[a+752>>2];L[b+304>>2]=d;p:{if(!d){L[b+272>>2]=0;break p}d=ha[L[L[c>>2]+28>>2]](c,L[a+760>>2])|0;L[b+272>>2]=d;if(!d){break p}g=0;j=L[b+304>>2];k=ha[L[L[c>>2]+16>>2]](c,36,j)|0;q:{if((j|0)<=0){e=L[a+760>>2];break q}e=L[a+760>>2];d=L[k+8>>2];while(1){f=R(g,44);i=L[(f+e|0)+4>>2];r:{if(!i){h=0;break r}h=ha[L[L[c>>2]+28>>2]](c,i)|0;e=L[a+760>>2]}L[d+16>>2]=h;f=e+f|0;P[d>>2]=P[f+20>>2];P[d+4>>2]=P[f+24>>2];P[d+8>>2]=P[f+28>>2];P[d+12>>2]=P[f+32>>2];i=L[a+720>>2];h=L[f+8>>2];if(h){m=(h-i|0)/104|0}else{m=-1}L[d+20>>2]=m;h=L[f+12>>2];if(h){m=(h-i|0)/104|0}else{m=-1}L[d+24>>2]=m;h=L[f+16>>2];if(h){i=(h-i|0)/104|0}else{i=-1}L[d+28>>2]=i;P[d+32>>2]=P[f+36>>2];d=d+36|0;g=g+1|0;if((j|0)!=(g|0)){continue}break}}ha[L[L[c>>2]+20>>2]](c,k,4169,1497453121,e)}d=L[a+772>>2];L[b+308>>2]=d;s:{if(!d){L[b+276>>2]=0;break s}d=ha[L[L[c>>2]+28>>2]](c,L[a+780>>2])|0;L[b+276>>2]=d;if(!d){break s}e=0;h=L[b+308>>2];j=ha[L[L[c>>2]+16>>2]](c,100,h)|0;t:{if((h|0)<=0){g=L[a+780>>2];break t}g=L[a+780>>2];d=L[j+8>>2];while(1){i=L[a+720>>2];o=R(e,104);f=o+g|0;P[d>>2]=P[f+32>>2];P[d+4>>2]=P[f+36>>2];P[d+8>>2]=P[f+40>>2];P[d+12>>2]=P[f+44>>2];k=L[g+8>>2];if(k){m=(k-i|0)/104|0}else{m=-1}L[d+68>>2]=m;P[d+16>>2]=P[f+48>>2];P[d+20>>2]=P[f+52>>2];P[d+24>>2]=P[f+56>>2];P[d+28>>2]=P[f+60>>2];k=L[g+116>>2];if(k){m=(k-i|0)/104|0}else{m=-1}L[d+72>>2]=m;P[d+32>>2]=P[f- -64>>2];P[d+36>>2]=P[f+68>>2];P[d+40>>2]=P[f+72>>2];P[d+44>>2]=P[f+76>>2];k=L[g+224>>2];if(k){m=(k-i|0)/104|0}else{m=-1}L[d+76>>2]=m;P[d+48>>2]=P[f+80>>2];P[d+52>>2]=P[f+84>>2];P[d+56>>2]=P[f+88>>2];P[d+60>>2]=P[f+92>>2];k=L[g+332>>2];if(k){i=(k-i|0)/104|0}else{i=-1}L[d+80>>2]=i;P[d+88>>2]=P[f+96>>2];P[d+92>>2]=P[f+100>>2];f=L[f+4>>2];u:{if(!f){f=0;break u}f=ha[L[L[c>>2]+28>>2]](c,f)|0;g=L[a+780>>2]}L[d+64>>2]=f;P[d+84>>2]=P[(g+o|0)+24>>2];d=d+100|0;e=e+1|0;if((h|0)!=(e|0)){continue}break}}ha[L[L[c>>2]+20>>2]](c,j,4211,1497453121,g)}d=L[a+792>>2];L[b+312>>2]=d;v:{if(!d){L[b+280>>2]=0;break v}d=ha[L[L[c>>2]+28>>2]](c,L[a+800>>2])|0;L[b+280>>2]=d;if(!d){break v}f=L[b+312>>2];i=ha[L[L[c>>2]+16>>2]](c,92,f)|0;if((f|0)>0){d=L[i+8>>2];g=0;while(1){e=L[a+800>>2]+R(g,96)|0;P[d>>2]=P[e+28>>2];P[d+4>>2]=P[e+32>>2];P[d+8>>2]=P[e+36>>2];P[d+12>>2]=P[e+40>>2];P[d+16>>2]=P[e+44>>2];P[d+20>>2]=P[e+48>>2];P[d+24>>2]=P[e+52>>2];P[d+28>>2]=P[e+56>>2];P[d+32>>2]=P[e+60>>2];P[d+36>>2]=P[e- -64>>2];P[d+40>>2]=P[e+68>>2];P[d+44>>2]=P[e+72>>2];P[d+48>>2]=P[e+76>>2];P[d+52>>2]=P[e+80>>2];P[d+56>>2]=P[e+84>>2];P[d+60>>2]=P[e+88>>2];P[d+88>>2]=P[e+92>>2];P[d+64>>2]=P[e+4>>2];P[d+68>>2]=P[e+8>>2];P[d+72>>2]=P[e+12>>2];P[d+76>>2]=P[e+16>>2];h=L[e>>2];if(h){m=(h-L[a+720>>2]|0)/104|0}else{m=-1}L[d+84>>2]=m;e=L[e+20>>2];if(e){e=ha[L[L[c>>2]+28>>2]](c,e)|0}else{e=0}L[d+80>>2]=e;d=d+92|0;g=g+1|0;if((f|0)!=(g|0)){continue}break}}ha[L[L[c>>2]+20>>2]](c,i,3705,1497453121,L[a+800>>2])}P[b+352>>2]=P[a+316>>2];P[b+328>>2]=P[a+292>>2];P[b+344>>2]=P[a+308>>2];L[b+324>>2]=L[a+288>>2];P[b+340>>2]=P[a+304>>2];P[b+336>>2]=P[a+300>>2];L[b+412>>2]=L[a+376>>2];L[b+416>>2]=L[a+380>>2];L[b+420>>2]=L[a+384>>2];L[b+408>>2]=L[a+372>>2];x=P[a+364>>2];P[b+332>>2]=P[a+296>>2];P[b+356>>2]=P[a+320>>2];L[b+424>>2]=L[a+388>>2];P[b+348>>2]=P[a+312>>2];P[b+360>>2]=P[a+324>>2];P[b+364>>2]=P[a+328>>2];P[b+368>>2]=P[a+332>>2];P[b+372>>2]=P[a+336>>2];y=P[a+368>>2];P[b+400>>2]=x;P[b+404>>2]=y;P[b+376>>2]=P[a+340>>2];P[b+380>>2]=P[a+344>>2];P[b+384>>2]=P[a+348>>2];P[b+388>>2]=P[a+352>>2];P[b+392>>2]=P[a+356>>2];P[b+396>>2]=P[a+360>>2];o=a+472|0;L[b+256>>2]=ha[L[L[c>>2]+28>>2]](c,o);n=ha[L[L[c>>2]+16>>2]](c,192,1)|0;d=L[n+8>>2];P[d+96>>2]=P[a+632>>2];P[d+100>>2]=P[a+636>>2];P[d+104>>2]=P[a+640>>2];P[d+108>>2]=P[a+644>>2];P[d+112>>2]=P[a+648>>2];P[d+116>>2]=P[a+652>>2];P[d+120>>2]=P[a+656>>2];P[d+124>>2]=P[a+660>>2];P[d+128>>2]=P[a+664>>2];P[d+132>>2]=P[a+668>>2];P[d+136>>2]=P[a+672>>2];P[d+140>>2]=P[a+676>>2];L[d+180>>2]=M[a+473|0];L[d+176>>2]=M[a+472|0];P[d+144>>2]=P[a+520>>2];P[d+148>>2]=P[a+524>>2];P[d+152>>2]=P[a+528>>2];P[d+156>>2]=P[a+532>>2];e=L[a+484>>2];L[d+168>>2]=e;w:{if(!e){L[d+160>>2]=0;break w}L[d+160>>2]=ha[L[L[c>>2]+28>>2]](c,L[a+492>>2]);i=L[d+168>>2];if(!i){break w}h=0;j=ha[L[L[c>>2]+16>>2]](c,16,i)|0;x:{if((i|0)<=0){e=L[a+492>>2];break x}e=L[a+492>>2];f=L[j+8>>2];if((i|0)!=1){q=i&-2;k=0;while(1){r=h<<4;g=r+e|0;P[f>>2]=P[g>>2];P[f+4>>2]=P[g+4>>2];P[f+8>>2]=P[g+8>>2];P[f+12>>2]=P[g+12>>2];g=(r|16)+e|0;P[f+16>>2]=P[g>>2];P[f+20>>2]=P[g+4>>2];P[f+24>>2]=P[g+8>>2];P[f+28>>2]=P[g+12>>2];f=f+32|0;h=h+2|0;k=k+2|0;if((q|0)!=(k|0)){continue}break}}if(!(i&1)){break x}i=(h<<4)+e|0;P[f>>2]=P[i>>2];P[f+4>>2]=P[i+4>>2];P[f+8>>2]=P[i+8>>2];P[f+12>>2]=P[i+12>>2]}ha[L[L[c>>2]+20>>2]](c,j,3686,1497453121,e)}P[d+184>>2]=P[a+476>>2];P[d>>2]=P[a+536>>2];P[d+4>>2]=P[a+540>>2];P[d+8>>2]=P[a+544>>2];P[d+12>>2]=P[a+548>>2];P[d+16>>2]=P[a+552>>2];P[d+20>>2]=P[a+556>>2];P[d+24>>2]=P[a+560>>2];P[d+28>>2]=P[a+564>>2];P[d+32>>2]=P[a+568>>2];P[d+36>>2]=P[a+572>>2];P[d+40>>2]=P[a+576>>2];P[d+44>>2]=P[a+580>>2];P[d+48>>2]=P[a+584>>2];P[d+52>>2]=P[a+588>>2];P[d+56>>2]=P[a+592>>2];P[d+60>>2]=P[a+596>>2];P[d- -64>>2]=P[a+600>>2];P[d+68>>2]=P[a+604>>2];P[d+72>>2]=P[a+608>>2];P[d+76>>2]=P[a+612>>2];P[d+80>>2]=P[a+616>>2];P[d+84>>2]=P[a+620>>2];P[d+88>>2]=P[a+624>>2];P[d+92>>2]=P[a+628>>2];e=L[a+504>>2];L[d+172>>2]=e;y:{if(!e){L[d+164>>2]=0;break y}L[d+164>>2]=ha[L[L[c>>2]+28>>2]](c,L[a+512>>2]);i=L[d+172>>2];if(!i){break y}f=0;j=ha[L[L[c>>2]+16>>2]](c,4,i)|0;z:{if((i|0)<=0){g=L[a+512>>2];break z}g=L[a+512>>2];d=L[j+8>>2];if(i>>>0>=4){k=i&-4;e=0;while(1){h=f<<2;P[d>>2]=P[h+g>>2];P[d+4>>2]=P[(h|4)+g>>2];P[d+8>>2]=P[(h|8)+g>>2];P[d+12>>2]=P[(h|12)+g>>2];d=d+16|0;f=f+4|0;e=e+4|0;if((k|0)!=(e|0)){continue}break}}e=i&3;if(!e){break z}h=0;while(1){P[d>>2]=P[(f<<2)+g>>2];d=d+4|0;f=f+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}ha[L[L[c>>2]+20>>2]](c,j,2508,1497453121,g)}ha[L[L[c>>2]+20>>2]](c,n,3804,1497453121,o);d=L[a+1112>>2];L[b+316>>2]=d;A:{if(!d){L[b+284>>2]=0;break A}L[b+284>>2]=ha[L[L[c>>2]+28>>2]](c,L[L[a+1120>>2]>>2]);j=L[b+316>>2];if(!j){break A}q=ha[L[L[c>>2]+16>>2]](c,348,j)|0;if((j|0)>0){e=L[q+8>>2];o=0;while(1){i=o<<2;d=L[i+L[a+1120>>2]>>2];P[e+320>>2]=P[d+360>>2];P[e+256>>2]=P[d+332>>2];P[e+260>>2]=P[d+336>>2];P[e+264>>2]=P[d+340>>2];P[e+268>>2]=P[d+344>>2];L[e+344>>2]=L[d+380>>2];L[e+340>>2]=M[d+377|0];P[e+160>>2]=P[d+228>>2];P[e+164>>2]=P[d+232>>2];P[e+168>>2]=P[d+236>>2];P[e+172>>2]=P[d+240>>2];L[e+336>>2]=M[d+376|0];P[e+208>>2]=P[d+276>>2];P[e+212>>2]=P[d+280>>2];P[e+216>>2]=P[d+284>>2];P[e+220>>2]=P[d+288>>2];P[e+224>>2]=P[d+292>>2];P[e+228>>2]=P[d+296>>2];P[e+232>>2]=P[d+300>>2];P[e+236>>2]=P[d+304>>2];P[e>>2]=P[d+60>>2];P[e+4>>2]=P[d- -64>>2];P[e+8>>2]=P[d+68>>2];P[e+12>>2]=P[d+72>>2];P[e+16>>2]=P[d+76>>2];P[e+20>>2]=P[d+80>>2];P[e+24>>2]=P[d+84>>2];P[e+28>>2]=P[d+88>>2];P[e+32>>2]=P[d+92>>2];P[e+36>>2]=P[d+96>>2];P[e+40>>2]=P[d+100>>2];P[e+44>>2]=P[d+104>>2];P[e+48>>2]=P[d+108>>2];P[e+52>>2]=P[d+112>>2];P[e+56>>2]=P[d+116>>2];P[e+60>>2]=P[d+120>>2];P[e+296>>2]=P[d+124>>2];P[e+300>>2]=P[d+128>>2];P[e+112>>2]=P[d+180>>2];P[e+116>>2]=P[d+184>>2];P[e+120>>2]=P[d+188>>2];P[e+124>>2]=P[d+192>>2];P[e+128>>2]=P[d+196>>2];P[e+132>>2]=P[d+200>>2];P[e+136>>2]=P[d+204>>2];P[e+140>>2]=P[d+208>>2];P[e+144>>2]=P[d+212>>2];P[e+148>>2]=P[d+216>>2];P[e+152>>2]=P[d+220>>2];P[e+156>>2]=P[d+224>>2];P[e+316>>2]=P[d+356>>2];P[e+64>>2]=P[d+132>>2];P[e+68>>2]=P[d+136>>2];P[e+72>>2]=P[d+140>>2];P[e+76>>2]=P[d+144>>2];P[e+80>>2]=P[d+148>>2];P[e+84>>2]=P[d+152>>2];P[e+88>>2]=P[d+156>>2];P[e+92>>2]=P[d+160>>2];P[e+96>>2]=P[d+164>>2];P[e+100>>2]=P[d+168>>2];P[e+104>>2]=P[d+172>>2];P[e+108>>2]=P[d+176>>2];P[e+240>>2]=P[d+316>>2];P[e+244>>2]=P[d+320>>2];P[e+248>>2]=P[d+324>>2];P[e+252>>2]=P[d+328>>2];P[e+324>>2]=P[d+364>>2];P[e+328>>2]=P[d+368>>2];P[e+312>>2]=P[d+352>>2];P[e+316>>2]=P[d+356>>2];P[e+320>>2]=P[d+360>>2];P[e+332>>2]=P[d+372>>2];f=L[d+44>>2];L[e+284>>2]=f;L[e+292>>2]=L[d+4>>2];L[e+288>>2]=L[d+24>>2];L[e+304>>2]=L[d+308>>2];P[e+176>>2]=P[d+244>>2];P[e+180>>2]=P[d+248>>2];P[e+184>>2]=P[d+252>>2];P[e+188>>2]=P[d+256>>2];P[e+192>>2]=P[d+260>>2];P[e+196>>2]=P[d+264>>2];P[e+200>>2]=P[d+268>>2];P[e+204>>2]=P[d+272>>2];L[e+308>>2]=L[d+312>>2];B:{if(!f){L[e+272>>2]=0;break B}d=ha[L[L[c>>2]+28>>2]](c,L[d+52>>2])|0;L[e+272>>2]=d;if(!d){break B}f=L[e+284>>2];r=ha[L[L[c>>2]+16>>2]](c,16,f)|0;C:{if((f|0)<=0){h=L[L[i+L[a+1120>>2]>>2]+52>>2];break C}h=L[L[i+L[a+1120>>2]>>2]+52>>2];d=L[r+8>>2];g=0;if((f|0)!=1){t=f&-2;k=0;while(1){m=g<<4;n=m+h|0;P[d>>2]=P[n>>2];P[d+4>>2]=P[n+4>>2];P[d+8>>2]=P[n+8>>2];P[d+12>>2]=P[n+12>>2];n=(m|16)+h|0;P[d+16>>2]=P[n>>2];P[d+20>>2]=P[n+4>>2];P[d+24>>2]=P[n+8>>2];P[d+28>>2]=P[n+12>>2];d=d+32|0;g=g+2|0;k=k+2|0;if((t|0)!=(k|0)){continue}break}}if(!(f&1)){break C}f=(g<<4)+h|0;P[d>>2]=P[f>>2];P[d+4>>2]=P[f+4>>2];P[d+8>>2]=P[f+8>>2];P[d+12>>2]=P[f+12>>2]}ha[L[L[c>>2]+20>>2]](c,r,3686,1497453121,h)}D:{if(!L[e+292>>2]){L[e+280>>2]=0;break D}d=ha[L[L[c>>2]+28>>2]](c,L[L[i+L[a+1120>>2]>>2]+12>>2])|0;L[e+280>>2]=d;if(!d){break D}f=L[e+292>>2];r=ha[L[L[c>>2]+16>>2]](c,4,f)|0;E:{if((f|0)<=0){g=L[L[i+L[a+1120>>2]>>2]+12>>2];break E}t=f&3;g=L[L[i+L[a+1120>>2]>>2]+12>>2];d=L[r+8>>2];k=0;F:{if(f>>>0<4){f=0;break F}m=f&-4;f=0;h=0;while(1){n=f<<2;P[d>>2]=P[n+g>>2];P[d+4>>2]=P[(n|4)+g>>2];P[d+8>>2]=P[(n|8)+g>>2];P[d+12>>2]=P[(n|12)+g>>2];d=d+16|0;f=f+4|0;h=h+4|0;if((m|0)!=(h|0)){continue}break}}if(!t){break E}while(1){P[d>>2]=P[(f<<2)+g>>2];d=d+4|0;f=f+1|0;k=k+1|0;if((t|0)!=(k|0)){continue}break}}ha[L[L[c>>2]+20>>2]](c,r,2508,1497453121,g)}G:{if(!L[e+288>>2]){L[e+276>>2]=0;break G}d=ha[L[L[c>>2]+28>>2]](c,L[i+L[a+1120>>2]>>2]+20|0)|0;L[e+276>>2]=d;if(!d){break G}g=L[e+292>>2];n=ha[L[L[c>>2]+16>>2]](c,4,g)|0;H:{if((g|0)<=0){f=L[i+L[a+1120>>2]>>2];break H}f=L[i+L[a+1120>>2]>>2];t=L[f+32>>2];k=L[n+8>>2];h=0;m=L[l+68>>2];r=L[l+88>>2];v=L[l+28>>2];while(1){i=L[t+(h<<2)>>2];d=(i<<15^-1)+i|0;d=R(d>>10^d,9);d=d>>6^d;d=(d<<11^-1)+d|0;d=L[v+((L[l+64>>2]-1&(d>>16^d))<<2)>>2];if(L[r+(d<<3)>>2]!=(i|0)){w=L[l+48>>2];while(1){d=L[w+(d<<2)>>2];if((i|0)!=L[r+(d<<3)>>2]){continue}break}}L[k>>2]=L[m+(d<<2)>>2];k=k+4|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}ha[L[L[c>>2]+20>>2]](c,n,2504,1497453121,f+20|0)}e=e+348|0;o=o+1|0;if((j|0)!=(o|0)){continue}break}}ha[L[L[c>>2]+20>>2]](c,q,3725,1497453121,L[L[a+1120>>2]>>2])}d=L[a+852>>2];L[b+320>>2]=d;I:{if(!d){L[b+288>>2]=0;break I}d=b;b=ha[L[L[c>>2]+28>>2]](c,L[a+860>>2])|0;L[d+288>>2]=b;if(!b){break I}i=L[a+852>>2];g=ha[L[L[c>>2]+16>>2]](c,104,i)|0;if((i|0)>0){d=L[g+8>>2];h=0;while(1){e=h<<2;b=L[e+L[a+860>>2]>>2];L[d+96>>2]=ha[L[L[b>>2]+20>>2]](b);f=e+L[a+860>>2]|0;b=L[f>>2];P[d+8>>2]=P[b+28>>2];P[d+12>>2]=P[b+32>>2];P[d+16>>2]=P[b+36>>2];P[d+20>>2]=P[b+40>>2];P[d+24>>2]=P[b+44>>2];P[d+28>>2]=P[b+48>>2];P[d+32>>2]=P[b+52>>2];P[d+36>>2]=P[b+56>>2];P[d+40>>2]=P[b+60>>2];P[d+44>>2]=P[b+64>>2];P[d+48>>2]=P[b+68>>2];b=M[b+152|0];L[d+56>>2]=0;L[d+60>>2]=0;L[d>>2]=0;L[d+4>>2]=0;L[d+52>>2]=b;b=d- -64|0;L[b>>2]=0;L[b+4>>2]=0;L[d+72>>2]=0;L[d+76>>2]=0;L[d+80>>2]=0;L[d+84>>2]=0;f=L[f>>2];b=L[f+4>>2];if(b){L[d+88>>2]=1;L[d>>2]=ha[L[L[c>>2]+28>>2]](c,b);f=L[e+L[a+860>>2]>>2]}b=L[f+12>>2];if(b){L[d+88>>2]=3;L[d>>2]=ha[L[L[c>>2]+28>>2]](c,b);f=L[e+L[a+860>>2]>>2]}b=L[f+8>>2];if(b){L[d+88>>2]=2;L[d>>2]=ha[L[L[c>>2]+28>>2]](c,b);f=L[e+L[a+860>>2]>>2]}b=L[f+16>>2];if(b){L[d+92>>2]=1;L[d+4>>2]=ha[L[L[c>>2]+28>>2]](c,b);f=L[e+L[a+860>>2]>>2]}b=L[f+24>>2];if(b){L[d+92>>2]=3;L[d+4>>2]=ha[L[L[c>>2]+28>>2]](c,b);f=L[e+L[a+860>>2]>>2]}b=L[f+20>>2];if(b){L[d+92>>2]=2;L[d+4>>2]=ha[L[L[c>>2]+28>>2]](c,b)}d=d+104|0;h=h+1|0;if((i|0)!=(h|0)){continue}break}}ha[L[L[c>>2]+20>>2]](c,g,3301,1497453121,L[a+860>>2])}a=L[l+88>>2];if(!(a?!a|!M[l+92|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[l+88>>2]=0;J[l+92|0]=1;L[l+80>>2]=0;L[l+84>>2]=0;a=L[l+68>>2];if(!(a?!a|!M[l+72|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[l+68>>2]=0;J[l+72|0]=1;L[l+60>>2]=0;L[l+64>>2]=0;a=L[l+48>>2];if(!(a?!a|!M[l+52|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[l+48>>2]=0;J[l+52|0]=1;L[l+40>>2]=0;L[l+44>>2]=0;a=L[l+28>>2];if(!(a?!a|!M[l+32|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}fa=l+96|0;return 3482}function Vk(a){a=a|0;var b=0,c=0,d=0,e=0,f=S(0),g=S(0),h=0,i=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=0,o=S(0),p=S(0),q=0,r=S(0),s=S(0),t=S(0),u=S(0),v=S(0),w=S(0),x=S(0),y=0,z=S(0),A=S(0),B=S(0),C=S(0),D=S(0),E=S(0),F=0,G=S(0),H=S(0),I=S(0),J=0,K=0;wa(3256);on(a);a:{if(!(ha[L[L[a>>2]+20>>2]](a)|0)){break a}c=ha[L[L[a>>2]+20>>2]](a)|0;if(!(ha[L[L[c>>2]+48>>2]](c)&6144)){break a}J=ha[L[L[a>>2]+104>>2]](a)|0;if((J|0)<=0){break a}while(1){K=J-1|0;d=ha[L[L[a>>2]+108>>2]](a,K)|0;b=fa-224|0;fa=b;c=ha[L[L[a>>2]+20>>2]](a)|0;c=ha[L[L[c>>2]+48>>2]](c)|0;e=ha[L[L[a>>2]+20>>2]](a)|0;e=ha[L[L[e>>2]+48>>2]](e)|0;z=P[d+40>>2];b:{if(z<=S(0)){break b}h=c&2048;q=e&4096;c:{switch(L[d+4>>2]-3|0){case 0:L[b+172>>2]=0;L[b+176>>2]=0;L[b+184>>2]=0;L[b+188>>2]=0;L[b+180>>2]=1065353216;L[b+192>>2]=0;L[b+196>>2]=0;L[b+200>>2]=1065353216;L[b+204>>2]=0;L[b+164>>2]=0;L[b+168>>2]=0;L[b+160>>2]=1065353216;c=L[d+28>>2];j=P[c+52>>2];k=P[c+8>>2];l=P[c+12>>2];m=P[c+56>>2];o=P[c+20>>2];p=P[c+24>>2];u=P[c+28>>2];r=P[c+60>>2];s=P[c+36>>2];f=P[d+304>>2];t=P[c+40>>2];g=P[d+308>>2];v=P[c+44>>2];w=P[c+4>>2];i=P[d+300>>2];L[b+220>>2]=0;P[b+216>>2]=r+S(S(g*v)+S(S(i*s)+S(f*t)));P[b+212>>2]=m+S(S(g*u)+S(S(i*o)+S(f*p)));P[b+208>>2]=j+S(S(g*l)+S(S(i*w)+S(f*k)));c=ha[L[L[a>>2]+20>>2]](a)|0;ha[L[L[c>>2]+56>>2]](c,b+160|0,z);c=L[d+32>>2];j=P[c+52>>2];k=P[c+8>>2];l=P[c+12>>2];m=P[c+56>>2];o=P[c+20>>2];p=P[c+24>>2];u=P[c+28>>2];r=P[c+60>>2];s=P[c+36>>2];f=P[d+320>>2];t=P[c+40>>2];g=P[d+324>>2];v=P[c+44>>2];w=P[c+4>>2];i=P[d+316>>2];L[b+220>>2]=0;P[b+216>>2]=r+S(S(g*v)+S(S(i*s)+S(f*t)));P[b+212>>2]=m+S(S(g*u)+S(S(i*o)+S(f*p)));P[b+208>>2]=j+S(S(g*l)+S(S(i*w)+S(f*k)));if(!h){break b}c=ha[L[L[a>>2]+20>>2]](a)|0;ha[L[L[c>>2]+56>>2]](c,b+160|0,z);break b;case 1:c=L[d+28>>2];G=P[c+52>>2];f=P[c+8>>2];g=P[c+12>>2];u=P[d+568>>2];r=P[d+584>>2];H=P[c+56>>2];I=P[c+60>>2];s=P[d+608>>2];t=P[d+600>>2];v=P[d+604>>2];i=P[c+28>>2];j=P[c+20>>2];k=P[c+24>>2];w=P[d+588>>2];x=P[d+556>>2];A=P[d+572>>2];B=P[d+592>>2];l=P[c+44>>2];C=P[d+560>>2];m=P[c+36>>2];D=P[d+576>>2];o=P[c+40>>2];p=P[c+4>>2];E=P[d+552>>2];L[b+220>>2]=0;L[b+204>>2]=0;L[b+188>>2]=0;P[b+200>>2]=S(B*l)+S(S(C*m)+S(D*o));P[b+196>>2]=S(w*l)+S(S(x*m)+S(A*o));P[b+184>>2]=S(B*i)+S(S(C*j)+S(D*k));P[b+180>>2]=S(w*i)+S(S(x*j)+S(A*k));P[b+216>>2]=I+S(S(s*l)+S(S(t*m)+S(o*v)));P[b+212>>2]=H+S(S(s*i)+S(S(t*j)+S(k*v)));L[b+172>>2]=0;P[b+192>>2]=S(r*l)+S(S(E*m)+S(u*o));P[b+176>>2]=S(r*i)+S(S(E*j)+S(u*k));P[b+168>>2]=S(B*g)+S(S(C*p)+S(f*D));P[b+164>>2]=S(w*g)+S(S(x*p)+S(f*A));P[b+160>>2]=S(r*g)+S(S(E*p)+S(u*f));P[b+208>>2]=G+S(S(s*g)+S(S(t*p)+S(f*v)));d:{if(h){c=ha[L[L[a>>2]+20>>2]](a)|0;e=b+160|0;ha[L[L[c>>2]+56>>2]](c,e,z);c=L[d+32>>2];G=P[c+52>>2];H=P[c+56>>2];I=P[c+60>>2];u=P[d+672>>2];r=P[d+664>>2];s=P[d+668>>2];f=P[c+8>>2];g=P[c+12>>2];i=P[c+28>>2];j=P[c+20>>2];k=P[c+24>>2];t=P[d+632>>2];v=P[d+648>>2];w=P[d+652>>2];x=P[d+620>>2];A=P[d+636>>2];B=P[d+656>>2];l=P[c+44>>2];C=P[d+624>>2];m=P[c+36>>2];D=P[d+640>>2];o=P[c+40>>2];p=P[c+4>>2];E=P[d+616>>2];L[b+220>>2]=0;L[b+204>>2]=0;L[b+188>>2]=0;L[b+172>>2]=0;P[b+200>>2]=S(B*l)+S(S(C*m)+S(D*o));P[b+196>>2]=S(w*l)+S(S(x*m)+S(A*o));P[b+192>>2]=S(v*l)+S(S(E*m)+S(t*o));P[b+184>>2]=S(B*i)+S(S(C*j)+S(D*k));P[b+180>>2]=S(w*i)+S(S(x*j)+S(A*k));P[b+176>>2]=S(v*i)+S(S(E*j)+S(t*k));P[b+168>>2]=S(B*g)+S(S(C*p)+S(f*D));P[b+164>>2]=S(w*g)+S(S(x*p)+S(f*A));P[b+160>>2]=S(v*g)+S(S(E*p)+S(t*f));P[b+216>>2]=I+S(S(u*l)+S(S(r*m)+S(o*s)));P[b+212>>2]=H+S(S(u*i)+S(S(r*j)+S(k*s)));P[b+208>>2]=G+S(S(u*g)+S(S(r*p)+S(f*s)));c=ha[L[L[a>>2]+20>>2]](a)|0;ha[L[L[c>>2]+56>>2]](c,e,z);break d}c=L[d+32>>2];G=P[c+52>>2];H=P[c+56>>2];I=P[c+60>>2];u=P[d+672>>2];r=P[d+664>>2];s=P[d+668>>2];f=P[c+8>>2];g=P[c+12>>2];i=P[c+28>>2];j=P[c+20>>2];k=P[c+24>>2];t=P[d+632>>2];v=P[d+648>>2];w=P[d+652>>2];x=P[d+620>>2];A=P[d+636>>2];B=P[d+656>>2];l=P[c+44>>2];C=P[d+624>>2];m=P[c+36>>2];D=P[d+640>>2];o=P[c+40>>2];p=P[c+4>>2];E=P[d+616>>2];L[b+220>>2]=0;L[b+204>>2]=0;L[b+188>>2]=0;L[b+172>>2]=0;P[b+200>>2]=S(B*l)+S(S(C*m)+S(D*o));P[b+196>>2]=S(w*l)+S(S(x*m)+S(A*o));P[b+192>>2]=S(v*l)+S(S(E*m)+S(t*o));P[b+184>>2]=S(B*i)+S(S(C*j)+S(D*k));P[b+180>>2]=S(w*i)+S(S(x*j)+S(A*k));P[b+176>>2]=S(v*i)+S(S(E*j)+S(t*k));P[b+168>>2]=S(B*g)+S(S(C*p)+S(f*D));P[b+164>>2]=S(w*g)+S(S(x*p)+S(f*A));P[b+160>>2]=S(v*g)+S(S(E*p)+S(t*f));P[b+216>>2]=I+S(S(u*l)+S(S(r*m)+S(o*s)));P[b+212>>2]=H+S(S(u*i)+S(S(r*j)+S(k*s)));P[b+208>>2]=G+S(S(u*g)+S(S(r*p)+S(f*s)))}c=d+688|0;f=we(c);g=xe(c);if(!q|f==g){break b}P[b+64>>2]=P[b+168>>2];P[b+68>>2]=P[b+184>>2];L[b+76>>2]=0;P[b+72>>2]=P[b+200>>2];P[b+144>>2]=P[b+160>>2];P[b+148>>2]=P[b+176>>2];L[b+156>>2]=0;P[b+152>>2]=P[b+192>>2];c=ha[L[L[a>>2]+20>>2]](a)|0;L[b+136>>2]=0;L[b+140>>2]=0;L[b+128>>2]=0;L[b+132>>2]=0;e=f>g;ha[L[L[c>>2]+60>>2]](c,b+208|0,b- -64|0,b+144|0,z,z,e?S(0):f,e?S(6.2831854820251465):g,b+128|0,!e,S(10));break b;case 2:c=L[d+28>>2];G=P[c+52>>2];f=P[c+8>>2];g=P[c+12>>2];u=P[d+316>>2];r=P[d+332>>2];H=P[c+56>>2];I=P[c+60>>2];s=P[d+356>>2];t=P[d+348>>2];v=P[d+352>>2];i=P[c+28>>2];j=P[c+20>>2];k=P[c+24>>2];w=P[d+336>>2];x=P[d+304>>2];A=P[d+320>>2];B=P[d+340>>2];l=P[c+44>>2];C=P[d+308>>2];m=P[c+36>>2];D=P[d+324>>2];o=P[c+40>>2];p=P[c+4>>2];E=P[d+300>>2];L[b+220>>2]=0;L[b+204>>2]=0;L[b+188>>2]=0;P[b+200>>2]=S(B*l)+S(S(C*m)+S(D*o));P[b+196>>2]=S(w*l)+S(S(x*m)+S(A*o));P[b+184>>2]=S(B*i)+S(S(C*j)+S(D*k));P[b+180>>2]=S(w*i)+S(S(x*j)+S(A*k));P[b+216>>2]=I+S(S(s*l)+S(S(t*m)+S(o*v)));P[b+212>>2]=H+S(S(s*i)+S(S(t*j)+S(k*v)));L[b+172>>2]=0;P[b+192>>2]=S(r*l)+S(S(E*m)+S(u*o));P[b+176>>2]=S(r*i)+S(S(E*j)+S(u*k));P[b+168>>2]=S(B*g)+S(S(C*p)+S(f*D));P[b+164>>2]=S(w*g)+S(S(x*p)+S(f*A));P[b+160>>2]=S(r*g)+S(S(E*p)+S(u*f));P[b+208>>2]=G+S(S(s*g)+S(S(t*p)+S(f*v)));e:{if(h){c=ha[L[L[a>>2]+20>>2]](a)|0;e=b+160|0;ha[L[L[c>>2]+56>>2]](c,e,z);c=L[d+32>>2];G=P[c+52>>2];H=P[c+56>>2];I=P[c+60>>2];u=P[d+420>>2];r=P[d+412>>2];s=P[d+416>>2];f=P[c+8>>2];g=P[c+12>>2];i=P[c+28>>2];j=P[c+20>>2];k=P[c+24>>2];t=P[d+380>>2];v=P[d+396>>2];w=P[d+400>>2];x=P[d+368>>2];A=P[d+384>>2];B=P[d+404>>2];l=P[c+44>>2];C=P[d+372>>2];m=P[c+36>>2];D=P[d+388>>2];o=P[c+40>>2];p=P[c+4>>2];E=P[d+364>>2];L[b+220>>2]=0;L[b+204>>2]=0;L[b+188>>2]=0;L[b+172>>2]=0;P[b+200>>2]=S(B*l)+S(S(C*m)+S(D*o));P[b+196>>2]=S(w*l)+S(S(x*m)+S(A*o));P[b+192>>2]=S(v*l)+S(S(E*m)+S(t*o));P[b+184>>2]=S(B*i)+S(S(C*j)+S(D*k));P[b+180>>2]=S(w*i)+S(S(x*j)+S(A*k));P[b+176>>2]=S(v*i)+S(S(E*j)+S(t*k));P[b+168>>2]=S(B*g)+S(S(C*p)+S(f*D));P[b+164>>2]=S(w*g)+S(S(x*p)+S(f*A));P[b+160>>2]=S(v*g)+S(S(E*p)+S(t*f));P[b+216>>2]=I+S(S(u*l)+S(S(r*m)+S(o*s)));P[b+212>>2]=H+S(S(u*i)+S(S(r*j)+S(k*s)));P[b+208>>2]=G+S(S(u*g)+S(S(r*p)+S(f*s)));c=ha[L[L[a>>2]+20>>2]](a)|0;ha[L[L[c>>2]+56>>2]](c,e,z);break e}c=L[d+32>>2];G=P[c+52>>2];H=P[c+56>>2];I=P[c+60>>2];u=P[d+420>>2];r=P[d+412>>2];s=P[d+416>>2];f=P[c+8>>2];g=P[c+12>>2];i=P[c+28>>2];j=P[c+20>>2];k=P[c+24>>2];t=P[d+380>>2];v=P[d+396>>2];w=P[d+400>>2];x=P[d+368>>2];A=P[d+384>>2];B=P[d+404>>2];l=P[c+44>>2];C=P[d+372>>2];m=P[c+36>>2];D=P[d+388>>2];o=P[c+40>>2];p=P[c+4>>2];E=P[d+364>>2];L[b+220>>2]=0;L[b+204>>2]=0;L[b+188>>2]=0;L[b+172>>2]=0;P[b+200>>2]=S(B*l)+S(S(C*m)+S(D*o));P[b+196>>2]=S(w*l)+S(S(x*m)+S(A*o));P[b+192>>2]=S(v*l)+S(S(E*m)+S(t*o));P[b+184>>2]=S(B*i)+S(S(C*j)+S(D*k));P[b+180>>2]=S(w*i)+S(S(x*j)+S(A*k));P[b+176>>2]=S(v*i)+S(S(E*j)+S(t*k));P[b+168>>2]=S(B*g)+S(S(C*p)+S(f*D));P[b+164>>2]=S(w*g)+S(S(x*p)+S(f*A));P[b+160>>2]=S(v*g)+S(S(E*p)+S(t*f));P[b+216>>2]=I+S(S(u*l)+S(S(r*m)+S(o*s)));P[b+212>>2]=H+S(S(u*i)+S(S(r*j)+S(k*s)));P[b+208>>2]=G+S(S(u*g)+S(S(r*p)+S(f*s)))}if(!q){break b}F=d+300|0;c=b+208|0;pl(b+144|0,d,S(6.0868353843688965),z);L[b+156>>2]=0;f=P[b+152>>2];g=P[b+144>>2];i=P[b+148>>2];P[b+152>>2]=S(S(f*P[b+200>>2])+S(S(g*P[b+192>>2])+S(i*P[b+196>>2])))+P[b+216>>2];P[b+148>>2]=S(S(f*P[b+184>>2])+S(S(g*P[b+176>>2])+S(i*P[b+180>>2])))+P[b+212>>2];P[b+144>>2]=S(S(f*P[b+168>>2])+S(S(g*P[b+160>>2])+S(i*P[b+164>>2])))+P[b+208>>2];e=0;while(1){q=b- -64|0;pl(q,d,S(S(S(e|0)*S(6.283185005187988))*S(.03125)),z);L[b+76>>2]=0;f=P[b+72>>2];g=P[b+64>>2];i=P[b+68>>2];P[b+72>>2]=S(S(f*P[b+200>>2])+S(S(g*P[b+192>>2])+S(i*P[b+196>>2])))+P[b+216>>2];P[b+68>>2]=S(S(f*P[b+184>>2])+S(S(g*P[b+176>>2])+S(i*P[b+180>>2])))+P[b+212>>2];P[b+64>>2]=S(S(f*P[b+168>>2])+S(S(g*P[b+160>>2])+S(i*P[b+164>>2])))+P[b+208>>2];h=ha[L[L[a>>2]+20>>2]](a)|0;L[b+136>>2]=0;L[b+140>>2]=0;L[b+128>>2]=0;L[b+132>>2]=0;ha[L[L[h>>2]+8>>2]](h,b+144|0,q,b+128|0);if(!(e&3)){h=ha[L[L[a>>2]+20>>2]](a)|0;L[b+136>>2]=0;L[b+140>>2]=0;L[b+128>>2]=0;L[b+132>>2]=0;ha[L[L[h>>2]+8>>2]](h,c,b- -64|0,b+128|0)}h=L[b+76>>2];L[b+152>>2]=L[b+72>>2];L[b+156>>2]=h;h=L[b+68>>2];L[b+144>>2]=L[b+64>>2];L[b+148>>2]=h;e=e+1|0;if((e|0)!=32){continue}break};f=P[d+512>>2];g=P[d+452>>2];e=L[d+32>>2];f:{if(P[e+344>>2]>S(0)){Td(b- -64|0,e+4|0,d+364|0);break f}Td(b- -64|0,L[d+28>>2]+4|0,F)}e=L[b+76>>2];L[b+168>>2]=L[b+72>>2];L[b+172>>2]=e;e=L[b+68>>2];L[b+160>>2]=L[b+64>>2];L[b+164>>2]=e;e=L[b+92>>2];L[b+184>>2]=L[b+88>>2];L[b+188>>2]=e;e=L[b+84>>2];L[b+176>>2]=L[b+80>>2];L[b+180>>2]=e;e=L[b+108>>2];L[b+200>>2]=L[b+104>>2];L[b+204>>2]=e;e=L[b+100>>2];L[b+192>>2]=L[b+96>>2];L[b+196>>2]=e;e=L[b+124>>2];L[c+8>>2]=L[b+120>>2];L[c+12>>2]=e;e=L[b+116>>2];L[c>>2]=L[b+112>>2];L[c+4>>2]=e;e=L[c+12>>2];L[b+72>>2]=L[c+8>>2];L[b+76>>2]=e;e=L[c+4>>2];L[b+64>>2]=L[c>>2];L[b+68>>2]=e;P[b+128>>2]=P[b+160>>2];P[b+132>>2]=P[b+176>>2];L[b+140>>2]=0;P[b+136>>2]=P[b+192>>2];P[b+48>>2]=P[b+164>>2];P[b+52>>2]=P[b+180>>2];L[b+60>>2]=0;P[b+56>>2]=P[b+196>>2];c=ha[L[L[a>>2]+20>>2]](a)|0;L[b+40>>2]=0;L[b+44>>2]=0;L[b+32>>2]=0;L[b+36>>2]=0;ha[L[L[c>>2]+60>>2]](c,b- -64|0,b+128|0,b+48|0,z,z,S(S(-f)-g),S(g-f),b+32|0,1,S(10));break b;case 3:case 6:c=d+1072|0;e=L[c+4>>2];L[b+168>>2]=L[c>>2];L[b+172>>2]=e;c=L[d+1068>>2];L[b+160>>2]=L[d+1064>>2];L[b+164>>2]=c;c=d+1088|0;e=L[c+4>>2];L[b+184>>2]=L[c>>2];L[b+188>>2]=e;F=d+1080|0;c=L[F+4>>2];L[b+176>>2]=L[F>>2];L[b+180>>2]=c;c=d+1104|0;e=L[c+4>>2];L[b+200>>2]=L[c>>2];L[b+204>>2]=e;c=d+1096|0;e=L[c+4>>2];L[b+192>>2]=L[c>>2];L[b+196>>2]=e;e=d+1120|0;n=L[e+4>>2];L[b+216>>2]=L[e>>2];L[b+220>>2]=n;e=d+1112|0;n=L[e+4>>2];L[b+208>>2]=L[e>>2];L[b+212>>2]=n;if(h){h=ha[L[L[a>>2]+20>>2]](a)|0;n=b+160|0;ha[L[L[h>>2]+56>>2]](h,n,z);h=d+1136|0;y=L[h+4>>2];L[b+168>>2]=L[h>>2];L[b+172>>2]=y;h=L[d+1132>>2];L[b+160>>2]=L[d+1128>>2];L[b+164>>2]=h;h=d+1152|0;y=L[h+4>>2];L[b+184>>2]=L[h>>2];L[b+188>>2]=y;h=d+1144|0;y=L[h+4>>2];L[b+176>>2]=L[h>>2];L[b+180>>2]=y;h=d+1168|0;y=L[h+4>>2];L[b+200>>2]=L[h>>2];L[b+204>>2]=y;h=d+1160|0;y=L[h+4>>2];L[b+192>>2]=L[h>>2];L[b+196>>2]=y;h=d+1184|0;y=L[h+4>>2];L[b+216>>2]=L[h>>2];L[b+220>>2]=y;h=d+1176|0;y=L[h+4>>2];L[b+208>>2]=L[h>>2];L[b+212>>2]=y;h=ha[L[L[a>>2]+20>>2]](a)|0;ha[L[L[h>>2]+56>>2]](h,n,z)}if(!q){break b}h=d+1064|0;q=L[h+12>>2];L[b+168>>2]=L[h+8>>2];L[b+172>>2]=q;q=L[h+4>>2];L[b+160>>2]=L[h>>2];L[b+164>>2]=q;q=L[F+12>>2];L[b+184>>2]=L[F+8>>2];L[b+188>>2]=q;q=L[F+4>>2];L[b+176>>2]=L[F>>2];L[b+180>>2]=q;q=L[c+12>>2];L[b+200>>2]=L[c+8>>2];L[b+204>>2]=q;q=L[c+4>>2];L[b+192>>2]=L[c>>2];L[b+196>>2]=q;q=L[e+12>>2];L[b+216>>2]=L[e+8>>2];L[b+220>>2]=q;q=L[e+4>>2];L[b+208>>2]=L[e>>2];L[b+212>>2]=q;P[b+64>>2]=P[b+168>>2];P[b+68>>2]=P[b+184>>2];L[b+76>>2]=0;P[b+72>>2]=P[b+200>>2];P[b+144>>2]=P[b+160>>2];P[b+148>>2]=P[b+176>>2];L[b+156>>2]=0;P[b+152>>2]=P[b+192>>2];f=P[d+1e3>>2];g=P[d+996>>2];i=P[d+936>>2];j=P[d+932>>2];n=ha[L[L[a>>2]+20>>2]](a)|0;L[b+136>>2]=0;L[b+140>>2]=0;L[b+128>>2]=0;L[b+132>>2]=0;q=d+1176|0;ha[L[L[n>>2]+64>>2]](n,q,b- -64|0,b+144|0,S(z*S(.8999999761581421)),j,i,g,f,b+128|0,S(10),1);L[b+156>>2]=0;P[b+152>>2]=P[b+196>>2];P[b+148>>2]=P[b+180>>2];P[b+144>>2]=P[b+164>>2];j=P[d+1196>>2];f=P[b+144>>2];i=P[d+1200>>2];g=Ea(i);k=P[b+148>>2];l=Fa(i);P[b+132>>2]=S(k*l)-S(g*f);i=Ea(j);m=P[b+152>>2];j=Fa(j);P[b+136>>2]=S(m*j)+S(S(f*S(i*l))+S(k*S(i*g)));P[b+128>>2]=S(S(f*S(j*l))+S(k*S(j*g)))-S(i*m);n=d+1136|0;y=L[n+4>>2];L[b+168>>2]=L[n>>2];L[b+172>>2]=y;n=L[d+1132>>2];L[b+160>>2]=L[d+1128>>2];L[b+164>>2]=n;n=d+1152|0;y=L[n+4>>2];L[b+184>>2]=L[n>>2];L[b+188>>2]=y;n=d+1144|0;y=L[n+4>>2];L[b+176>>2]=L[n>>2];L[b+180>>2]=y;n=d+1168|0;y=L[n+4>>2];L[b+200>>2]=L[n>>2];L[b+204>>2]=y;n=d+1160|0;y=L[n+4>>2];L[b+192>>2]=L[n>>2];L[b+196>>2]=y;n=d+1184|0;y=L[n+4>>2];L[b+216>>2]=L[n>>2];L[b+220>>2]=y;n=L[q+4>>2];L[b+208>>2]=L[q>>2];L[b+212>>2]=n;L[b+60>>2]=0;P[b+56>>2]=-P[b+192>>2];P[b+52>>2]=-P[b+176>>2];P[b+48>>2]=-P[b+160>>2];f=P[d+868>>2];g=P[d+872>>2];g:{if(f>g){n=ha[L[L[a>>2]+20>>2]](a)|0;L[b+40>>2]=0;L[b+44>>2]=0;L[b+32>>2]=0;L[b+36>>2]=0;ha[L[L[n>>2]+60>>2]](n,q,b+48|0,b+128|0,z,z,S(-3.1415927410125732),S(3.1415927410125732),b+32|0,0,S(10));break g}if(!(f>2]+20>>2]](a)|0;L[b+40>>2]=0;L[b+44>>2]=0;L[b+32>>2]=0;L[b+36>>2]=0;ha[L[L[n>>2]+60>>2]](n,q,b+48|0,b+128|0,z,z,f,g,b+32|0,1,S(10))}q=L[h+12>>2];L[b+168>>2]=L[h+8>>2];L[b+172>>2]=q;q=L[h+4>>2];L[b+160>>2]=L[h>>2];L[b+164>>2]=q;h=L[F+12>>2];L[b+184>>2]=L[F+8>>2];L[b+188>>2]=h;h=L[F+4>>2];L[b+176>>2]=L[F>>2];L[b+180>>2]=h;h=L[c+12>>2];L[b+200>>2]=L[c+8>>2];L[b+204>>2]=h;h=L[c+4>>2];L[b+192>>2]=L[c>>2];L[b+196>>2]=h;c=L[e+12>>2];L[b+216>>2]=L[e+8>>2];L[b+220>>2]=c;c=L[e+4>>2];L[b+208>>2]=L[e>>2];L[b+212>>2]=c;c=L[d+692>>2];L[b+40>>2]=L[d+688>>2];L[b+44>>2]=c;c=L[d+684>>2];L[b+32>>2]=L[d+680>>2];L[b+36>>2]=c;c=L[d+708>>2];L[b+24>>2]=L[d+704>>2];L[b+28>>2]=c;c=L[d+700>>2];L[b+16>>2]=L[d+696>>2];L[b+20>>2]=c;c=ha[L[L[a>>2]+20>>2]](a)|0;L[b+8>>2]=0;L[b+12>>2]=0;L[b>>2]=0;L[b+4>>2]=0;ha[L[L[c>>2]+72>>2]](c,b+32|0,b+16|0,b+160|0,b);break b;case 4:break c;default:break b}}c=L[d+836>>2];L[b+168>>2]=L[d+832>>2];L[b+172>>2]=c;c=L[d+828>>2];L[b+160>>2]=L[d+824>>2];L[b+164>>2]=c;c=L[d+852>>2];L[b+184>>2]=L[d+848>>2];L[b+188>>2]=c;c=L[d+844>>2];L[b+176>>2]=L[d+840>>2];L[b+180>>2]=c;c=L[d+868>>2];L[b+200>>2]=L[d+864>>2];L[b+204>>2]=c;c=L[d+860>>2];L[b+192>>2]=L[d+856>>2];L[b+196>>2]=c;c=L[d+884>>2];L[b+216>>2]=L[d+880>>2];L[b+220>>2]=c;c=L[d+876>>2];L[b+208>>2]=L[d+872>>2];L[b+212>>2]=c;h:{if(h){c=ha[L[L[a>>2]+20>>2]](a)|0;e=b+160|0;ha[L[L[c>>2]+56>>2]](c,e,z);c=L[d+900>>2];L[b+168>>2]=L[d+896>>2];L[b+172>>2]=c;c=L[d+892>>2];L[b+160>>2]=L[d+888>>2];L[b+164>>2]=c;c=L[d+916>>2];L[b+184>>2]=L[d+912>>2];L[b+188>>2]=c;c=L[d+908>>2];L[b+176>>2]=L[d+904>>2];L[b+180>>2]=c;c=L[d+932>>2];L[b+200>>2]=L[d+928>>2];L[b+204>>2]=c;c=L[d+924>>2];L[b+192>>2]=L[d+920>>2];L[b+196>>2]=c;c=L[d+948>>2];L[b+216>>2]=L[d+944>>2];L[b+220>>2]=c;c=L[d+940>>2];L[b+208>>2]=L[d+936>>2];L[b+212>>2]=c;c=ha[L[L[a>>2]+20>>2]](a)|0;ha[L[L[c>>2]+56>>2]](c,e,z);break h}c=L[d+900>>2];L[b+168>>2]=L[d+896>>2];L[b+172>>2]=c;c=L[d+892>>2];L[b+160>>2]=L[d+888>>2];L[b+164>>2]=c;c=L[d+916>>2];L[b+184>>2]=L[d+912>>2];L[b+188>>2]=c;c=L[d+908>>2];L[b+176>>2]=L[d+904>>2];L[b+180>>2]=c;c=L[d+932>>2];L[b+200>>2]=L[d+928>>2];L[b+204>>2]=c;c=L[d+924>>2];L[b+192>>2]=L[d+920>>2];L[b+196>>2]=c;c=L[d+948>>2];L[b+216>>2]=L[d+944>>2];L[b+220>>2]=c;c=L[d+940>>2];L[b+208>>2]=L[d+936>>2];L[b+212>>2]=c}if(!q){break b}c=M[d+180|0];f=P[d+(c?824:888)>>2];c=c?d+824|0:d+888|0;k=P[c+48>>2];r=P[c+8>>2];l=P[c+4>>2];m=P[c+52>>2];s=P[c+24>>2];g=P[c+16>>2];o=P[c+20>>2];p=P[c+56>>2];t=P[c+40>>2];i=P[c+32>>2];u=P[c+36>>2];j=P[d+184>>2];L[b+76>>2]=0;t=S(t*S(0));v=S(u*S(0));P[b+72>>2]=p+S(t+S(S(j*i)+v));s=S(s*S(0));w=S(o*S(0));P[b+68>>2]=m+S(s+S(S(j*g)+w));r=S(r*S(0));x=S(l*S(0));P[b+64>>2]=k+S(r+S(S(j*f)+x));j=P[d+188>>2];L[b+156>>2]=0;P[b+152>>2]=p+S(t+S(S(j*i)+v));P[b+148>>2]=m+S(s+S(S(j*g)+w));P[b+144>>2]=k+S(r+S(S(j*f)+x));c=ha[L[L[a>>2]+20>>2]](a)|0;L[b+136>>2]=0;L[b+140>>2]=0;L[b+128>>2]=0;L[b+132>>2]=0;e=b+128|0;ha[L[L[c>>2]+8>>2]](c,b- -64|0,b+144|0,e);L[b+140>>2]=0;P[b+136>>2]=i;P[b+132>>2]=g;P[b+128>>2]=f;L[b+60>>2]=0;P[b+56>>2]=u;P[b+52>>2]=o;P[b+48>>2]=l;f=P[d+196>>2];g=P[d+192>>2];c=ha[L[L[a>>2]+20>>2]](a)|0;L[b+40>>2]=0;L[b+44>>2]=0;L[b+32>>2]=0;L[b+36>>2]=0;ha[L[L[c>>2]+60>>2]](c,d+936|0,e,b+48|0,z,z,g,f,b+32|0,1,S(10))}fa=b+224|0;c=J>>>0>1;J=K;if(c){continue}break}}i:{if(!(ha[L[L[a>>2]+20>>2]](a)|0)){break i}c=ha[L[L[a>>2]+20>>2]](a)|0;if(!(ha[L[L[c>>2]+48>>2]](c)&16387)){break i}if(!(ha[L[L[a>>2]+20>>2]](a)|0)){break i}c=ha[L[L[a>>2]+20>>2]](a)|0;if(!(ha[L[L[c>>2]+48>>2]](c)|0)|L[a+280>>2]<=0){break i}J=0;while(1){c=L[L[a+288>>2]+(J<<2)>>2];ha[L[L[c>>2]+12>>2]](c,L[a+72>>2]);J=J+1|0;if((J|0)>2]){continue}break}}va()}function QB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=S(d);var e=0,f=S(0),g=S(0),h=S(0),i=S(0),j=0,k=S(0),l=0,m=S(0),n=S(0),o=S(0),p=S(0),q=S(0),r=S(0),s=S(0),t=S(0),u=S(0),v=S(0),w=S(0),x=0,y=S(0),z=S(0),A=S(0),B=S(0),C=S(0),D=S(0),E=S(0),F=S(0),G=S(0),H=S(0),I=S(0),J=S(0),K=S(0),N=S(0),O=S(0),Q=S(0),T=S(0),U=S(0),V=S(0),W=S(0),X=S(0),Y=S(0),Z=S(0),$=S(0),aa=0,ba=S(0),ca=S(0),da=0,ea=0,ga=S(0),ha=S(0),ia=S(0),ja=S(0);e=fa-464|0;fa=e;a:{if(!M[a+527|0]){break a}j=L[a+32>>2];l=L[a+28>>2];if(!M[a+524|0]){o=S(P[b+192>>2]+P[b+80>>2]);f=P[a+356>>2];g=P[a+348>>2];h=P[a+352>>2];i=P[l+56>>2];q=S(S(S(f*P[l+28>>2])+S(S(g*P[l+20>>2])+S(h*P[l+24>>2])))+i);k=S(q-i);i=P[l+52>>2];s=S(S(S(f*P[l+12>>2])+S(S(g*P[l+4>>2])+S(h*P[l+8>>2])))+i);p=S(s-i);v=S(P[b+196>>2]+P[b+84>>2]);y=S(P[c+192>>2]+P[c+80>>2]);i=P[a+420>>2];r=P[a+412>>2];m=P[a+416>>2];n=P[j+56>>2];z=S(S(S(i*P[j+28>>2])+S(S(r*P[j+20>>2])+S(m*P[j+24>>2])))+n);n=S(z-n);t=P[j+52>>2];w=S(S(S(i*P[j+12>>2])+S(S(r*P[j+4>>2])+S(m*P[j+8>>2])))+t);t=S(w-t);A=S(P[c+196>>2]+P[c+84>>2]);D=S(S(S(P[b+184>>2]+P[b+72>>2])+S(S(o*k)-S(p*v)))-S(S(P[c+184>>2]+P[c+72>>2])+S(S(y*n)-S(t*A))));E=S(P[b+200>>2]+P[b+88>>2]);g=S(S(f*P[l+44>>2])+S(S(g*P[l+36>>2])+S(h*P[l+40>>2])));f=P[l+60>>2];g=S(g+f);u=S(g-f);f=S(P[c+200>>2]+P[c+88>>2]);h=P[j+60>>2];i=S(S(S(i*P[j+44>>2])+S(S(r*P[j+36>>2])+S(m*P[j+40>>2])))+h);r=S(i-h);y=S(S(S(P[b+180>>2]+P[b+68>>2])+S(S(E*p)-S(u*o)))-S(S(P[c+180>>2]+P[c+68>>2])+S(S(f*t)-S(r*y))));v=S(S(S(P[b+176>>2]+P[b+64>>2])+S(S(v*u)-S(k*E)))-S(S(P[c+176>>2]+P[c+64>>2])+S(S(A*r)-S(n*f))));A=S(g-i);z=S(q-z);s=S(s-w);w=S(-p);E=S(-u);I=S(-k);J=S(-n);K=S(-t);Z=S(-r);da=L[c+240>>2];ea=L[b+240>>2];while(1){x=R(aa,84)+a|0;g=P[x+56>>2];h=P[x+48>>2];i=P[x+52>>2];f=S(S(1)/P[x+128>>2]);f=S(S(S(S(S(S(A*g)+S(S(s*h)+S(z*i)))*S(-.30000001192092896))/d)*f)-S(f*S(S(g*D)+S(S(h*v)+S(y*i)))));P[a+36>>2]=P[a+36>>2]+f;if(ea){O=P[l+304>>2];C=P[l+296>>2];X=P[l+300>>2];Y=P[l+288>>2];Q=P[l+280>>2];F=P[l+284>>2];o=P[l+272>>2];q=P[l+264>>2];B=P[l+268>>2];m=P[l+344>>2];P[b+64>>2]=S(P[b+112>>2]*S(f*S(h*m)))+P[b+64>>2];P[b+68>>2]=S(S(f*S(i*m))*P[b+116>>2])+P[b+68>>2];P[b+72>>2]=S(S(f*S(g*m))*P[b+120>>2])+P[b+72>>2];m=S(S(p*i)+S(h*I));G=S(o*m);o=S(S(k*g)+S(i*E));H=S(q*o);q=S(S(u*h)+S(g*w));P[b+80>>2]=S(S(G+S(H+S(B*q)))*S(f*P[b+96>>2]))+P[b+80>>2];B=P[b+104>>2];P[b+84>>2]=S(S(S(Y*m)+S(S(Q*o)+S(q*F)))*S(f*P[b+100>>2]))+P[b+84>>2];P[b+88>>2]=S(S(S(O*m)+S(S(C*o)+S(q*X)))*S(f*B))+P[b+88>>2]}if(da){o=P[j+304>>2];q=P[j+296>>2];O=P[j+300>>2];C=P[j+288>>2];X=P[j+280>>2];Y=P[j+284>>2];Q=P[j+272>>2];F=P[j+264>>2];B=P[j+268>>2];G=P[c+120>>2];H=P[x+56>>2];N=P[c+116>>2];$=P[x+52>>2];m=P[j+344>>2];P[c+64>>2]=P[c+64>>2]-S(P[c+112>>2]*S(S(m*P[x+48>>2])*f));P[c+68>>2]=P[c+68>>2]-S(N*S(S(m*$)*f));P[c+72>>2]=P[c+72>>2]-S(G*S(S(m*H)*f));m=S(S(t*i)+S(h*J));i=S(S(n*g)+S(i*Z));g=S(S(r*h)+S(g*K));P[c+80>>2]=P[c+80>>2]-S(S(S(Q*m)+S(S(F*i)+S(B*g)))*S(P[c+96>>2]*f));P[c+84>>2]=P[c+84>>2]-S(S(S(C*m)+S(S(X*i)+S(g*Y)))*S(P[c+100>>2]*f));P[c+88>>2]=P[c+88>>2]-S(S(S(o*m)+S(S(q*i)+S(g*O)))*S(P[c+104>>2]*f))}aa=aa+1|0;if((aa|0)!=3){continue}break}}b:{if(M[a+552|0]){x=L[l+16>>2];L[e+384>>2]=L[l+12>>2];L[e+388>>2]=x;x=L[l+8>>2];L[e+376>>2]=L[l+4>>2];L[e+380>>2]=x;x=L[l+32>>2];L[e+400>>2]=L[l+28>>2];L[e+404>>2]=x;x=L[l+24>>2];L[e+392>>2]=L[l+20>>2];L[e+396>>2]=x;x=L[l+48>>2];L[e+416>>2]=L[l+44>>2];L[e+420>>2]=x;x=L[l+40>>2];L[e+408>>2]=L[l+36>>2];L[e+412>>2]=x;x=L[l+64>>2];L[e+432>>2]=L[l+60>>2];L[e+436>>2]=x;x=L[l+56>>2];L[e+424>>2]=L[l+52>>2];L[e+428>>2]=x;l=L[j+16>>2];L[e+320>>2]=L[j+12>>2];L[e+324>>2]=l;l=L[j+8>>2];L[e+312>>2]=L[j+4>>2];L[e+316>>2]=l;l=L[j+32>>2];L[e+336>>2]=L[j+28>>2];L[e+340>>2]=l;l=L[j+24>>2];L[e+328>>2]=L[j+20>>2];L[e+332>>2]=l;l=L[j+48>>2];L[e+352>>2]=L[j+44>>2];L[e+356>>2]=l;l=L[j+40>>2];L[e+344>>2]=L[j+36>>2];L[e+348>>2]=l;l=L[j+64>>2];L[e+368>>2]=L[j+60>>2];L[e+372>>2]=l;l=L[j+56>>2];L[e+360>>2]=L[j+52>>2];L[e+364>>2]=l;f=P[b+84>>2];g=P[b+196>>2];h=P[b+88>>2];i=P[b+200>>2];k=P[b+80>>2];p=P[b+192>>2];L[e+308>>2]=0;P[e+304>>2]=i+h;P[e+300>>2]=g+f;P[e+296>>2]=p+k;f=P[c+84>>2];g=P[c+196>>2];h=P[c+88>>2];i=P[c+200>>2];k=P[c+80>>2];p=P[c+192>>2];L[e+292>>2]=0;P[e+288>>2]=i+h;P[e+284>>2]=g+f;P[e+280>>2]=p+k;L[e+228>>2]=0;L[e+232>>2]=0;L[e+240>>2]=0;L[e+244>>2]=0;L[e+236>>2]=1065353216;L[e+248>>2]=0;L[e+252>>2]=0;L[e+260>>2]=0;L[e+264>>2]=0;L[e+256>>2]=1065353216;L[e+268>>2]=0;L[e+272>>2]=0;L[e+276>>2]=0;L[e+220>>2]=0;L[e+224>>2]=0;L[e+216>>2]=1065353216;L[e+208>>2]=0;L[e+212>>2]=0;L[e+200>>2]=0;L[e+204>>2]=0;j=e+376|0;l=e+200|0;Rb(j,l,e+296|0,d,e+216|0);L[e+148>>2]=0;L[e+152>>2]=0;L[e+160>>2]=0;L[e+164>>2]=0;L[e+156>>2]=1065353216;L[e+168>>2]=0;L[e+172>>2]=0;L[e+180>>2]=0;L[e+184>>2]=0;L[e+176>>2]=1065353216;L[e+188>>2]=0;L[e+192>>2]=0;L[e+196>>2]=0;L[e+140>>2]=0;L[e+144>>2]=0;L[e+136>>2]=1065353216;x=e+312|0;Rb(x,l,e+280|0,d,e+136|0);ga=P[a+420>>2];ha=P[a+416>>2];o=P[a+308>>2];q=P[a+304>>2];X=P[a+352>>2];Y=P[a+356>>2];n=P[a+324>>2];r=P[a+316>>2];m=P[a+320>>2];s=P[a+404>>2];v=P[a+400>>2];y=P[a+396>>2];z=P[a+372>>2];w=P[a+368>>2];A=P[a+340>>2];D=P[a+332>>2];E=P[a+336>>2];I=P[a+388>>2];J=P[a+384>>2];K=P[a+380>>2];g=P[a+568>>2];i=P[a+564>>2];h=P[a+560>>2];ia=P[a+412>>2];Z=P[a+300>>2];ja=P[a+348>>2];O=P[a+364>>2];f=P[a+556>>2];L[e+132>>2]=0;L[e+116>>2]=0;L[e+100>>2]=0;k=S(S(2)/S(S(g*g)+S(S(i*i)+S(S(f*f)+S(h*h)))));C=S(f*k);F=S(f*C);p=S(h*k);B=S(h*p);t=S(S(1)-S(F+B));k=S(i*k);G=S(f*k);H=S(g*p);u=S(G+H);h=S(h*k);N=S(g*C);C=S(h-N);Q=S(S(s*t)+S(S(y*u)+S(v*C)));T=S(G-H);i=S(i*k);U=S(S(1)-S(B+i));B=S(f*p);g=S(g*k);k=S(B+g);f=S(S(s*T)+S(S(y*U)+S(v*k)));p=S(h+N);V=S(B-g);W=S(S(1)-S(F+i));g=S(S(s*p)+S(S(y*V)+S(v*W)));h=S(S(A*Q)+S(S(D*f)+S(E*g)));F=P[e+176>>2];B=S(S(t*z)+S(S(u*O)+S(w*C)));G=S(S(T*z)+S(S(U*O)+S(w*k)));H=S(S(p*z)+S(S(V*O)+S(w*W)));i=S(S(A*B)+S(S(D*G)+S(E*H)));N=P[e+168>>2];$=S(S(t*I)+S(S(u*K)+S(J*C)));T=S(S(T*I)+S(S(U*K)+S(J*k)));U=S(S(p*I)+S(S(V*K)+S(J*W)));k=S(S(A*$)+S(S(D*T)+S(E*U)));V=P[e+172>>2];P[e+112>>2]=S(h*F)+S(S(i*N)+S(k*V));p=S(S(n*Q)+S(S(r*f)+S(g*m)));t=S(S(n*B)+S(S(r*G)+S(H*m)));u=S(S(n*$)+S(S(r*T)+S(U*m)));P[e+108>>2]=S(F*p)+S(S(N*t)+S(V*u));W=P[e+160>>2];ba=P[e+152>>2];ca=P[e+156>>2];P[e+96>>2]=S(h*W)+S(S(i*ba)+S(k*ca));P[e+92>>2]=S(p*W)+S(S(t*ba)+S(u*ca));C=S(0);y=S(ga+S(S(s*S(0))+S(S(y*S(0))+S(v*S(0)))));s=S(-ja);n=S(S(S(o*s)-S(n*X))-S(A*Y));v=S(S(S(Z*s)-S(r*X))-S(D*Y));m=S(S(S(q*s)-S(m*X))-S(E*Y));r=S(y+S(S(n*Q)+S(S(v*f)+S(g*m))));s=S(S(ia+S(S(z*S(0))+S(S(O*S(0))+S(w*S(0)))))+S(S(n*B)+S(S(v*G)+S(H*m))));m=S(S(ha+S(S(I*S(0))+S(S(K*S(0))+S(J*S(0)))))+S(S(n*$)+S(S(v*T)+S(U*m))));E=S(S(S(F*r)+S(S(N*s)+S(V*m)))+P[e+192>>2]);P[e+128>>2]=E;I=S(S(S(r*W)+S(S(s*ba)+S(m*ca)))+P[e+188>>2]);P[e+124>>2]=I;L[e+84>>2]=0;n=S(S(o*Q)+S(S(Z*f)+S(g*q)));g=S(S(o*B)+S(S(Z*G)+S(H*q)));f=S(S(o*$)+S(S(Z*T)+S(U*q)));P[e+104>>2]=S(F*n)+S(S(N*g)+S(V*f));P[e+88>>2]=S(n*W)+S(S(g*ba)+S(f*ca));o=P[e+144>>2];q=P[e+136>>2];v=P[e+140>>2];P[e+80>>2]=S(h*o)+S(S(i*q)+S(k*v));P[e+76>>2]=S(p*o)+S(S(t*q)+S(u*v));P[e+72>>2]=S(n*o)+S(S(g*q)+S(f*v));J=S(S(S(r*o)+S(S(s*q)+S(v*m)))+P[e+184>>2]);P[e+120>>2]=J;L[e+68>>2]=0;L[e+52>>2]=0;L[e+36>>2]=0;o=P[e+256>>2];q=P[e+248>>2];v=P[e+252>>2];P[e+48>>2]=S(h*o)+S(S(n*q)+S(p*v));P[e+44>>2]=S(k*o)+S(S(f*q)+S(u*v));y=P[e+240>>2];z=P[e+232>>2];w=P[e+236>>2];P[e+32>>2]=S(h*y)+S(S(n*z)+S(p*w));P[e+28>>2]=S(k*y)+S(S(f*z)+S(u*w));s=S(-s);A=S(S(S(i*s)-S(k*m))-S(h*r));D=S(S(S(g*s)-S(f*m))-S(n*r));m=S(S(S(t*s)-S(u*m))-S(p*r));s=S(S(S(o*A)+S(S(q*D)+S(v*m)))+P[e+272>>2]);P[e- -64>>2]=s;K=S(S(S(A*y)+S(S(D*z)+S(m*w)))+P[e+268>>2]);P[e+60>>2]=K;L[e+20>>2]=0;P[e+40>>2]=S(i*o)+S(S(g*q)+S(t*v));P[e+24>>2]=S(i*y)+S(S(g*z)+S(t*w));w=h;h=P[e+224>>2];r=P[e+216>>2];o=S(n*r);n=P[e+220>>2];P[e+16>>2]=S(w*h)+S(o+S(p*n));P[e+12>>2]=S(k*h)+S(S(f*r)+S(u*n));P[e+8>>2]=S(i*h)+S(S(g*r)+S(t*n));h=S(S(S(A*h)+S(S(D*r)+S(m*n)))+P[e+264>>2]);P[e+56>>2]=h;i=S(S(1)/d);P[e+208>>2]=i*S(E-P[e+432>>2]);L[e+212>>2]=0;P[e+200>>2]=i*S(J-P[e+424>>2]);P[e+204>>2]=i*S(I-P[e+428>>2]);aa=j;j=e+448|0;l=e+444|0;ec(aa,e+72|0,j,l);P[e+208>>2]=i*S(s-P[e+368>>2]);L[e+212>>2]=0;P[e+204>>2]=i*S(K-P[e+364>>2]);P[e+200>>2]=i*S(h-P[e+360>>2]);k=P[e+452>>2];h=P[e+444>>2];m=P[e+456>>2];o=P[e+448>>2];ec(x,e+8|0,j,l);p=P[e+444>>2];t=S(S(i*S(p*P[e+456>>2]))-P[e+288>>2]);u=S(S(i*S(p*P[e+452>>2]))-P[e+284>>2]);r=S(S(i*S(P[e+448>>2]*p))-P[e+280>>2]);p=S(0);m=S(S(i*S(h*m))-P[e+304>>2]);o=S(S(i*S(o*h))-P[e+296>>2]);q=S(S(i*S(h*k))-P[e+300>>2]);i=S(S(m*m)+S(S(o*o)+S(q*q)));if(i>S(1.1920928955078125e-7)){i=S(S(1)/S(_(i)));f=S(m*i);j=L[a+28>>2];n=S(o*i);g=S(q*i);p=S(S(f*S(S(f*P[j+304>>2])+S(S(P[j+272>>2]*n)+S(g*P[j+288>>2]))))+S(S(n*S(S(P[j+296>>2]*f)+S(S(n*P[j+264>>2])+S(g*P[j+280>>2]))))+S(g*S(S(P[j+300>>2]*f)+S(S(P[j+268>>2]*n)+S(g*P[j+284>>2]))))))}s=S(S(t*t)+S(S(r*r)+S(u*u)));if(s>S(1.1920928955078125e-7)){h=S(S(1)/S(_(s)));k=S(t*h);j=L[a+32>>2];i=S(r*h);h=S(u*h);C=S(S(k*S(S(k*P[j+304>>2])+S(S(P[j+272>>2]*i)+S(h*P[j+288>>2]))))+S(S(i*S(S(P[j+296>>2]*k)+S(S(i*P[j+264>>2])+S(h*P[j+280>>2]))))+S(h*S(S(P[j+300>>2]*k)+S(S(P[j+268>>2]*i)+S(h*P[j+284>>2]))))))}f=S(S(p*f)+S(C*k));i=S(S(p*n)+S(C*i));h=S(S(p*g)+S(C*h));g=S(S(f*f)+S(S(i*i)+S(h*h)));if(!(g>S(1.1920928955078125e-7))){break b}k=S(S(1)/S(_(g)));f=S(f*k);j=L[a+28>>2];g=S(i*k);h=S(h*k);n=S(S(f*S(S(f*P[j+304>>2])+S(S(P[j+272>>2]*g)+S(h*P[j+288>>2]))))+S(S(g*S(S(P[j+296>>2]*f)+S(S(g*P[j+264>>2])+S(h*P[j+280>>2]))))+S(h*S(S(P[j+300>>2]*f)+S(S(P[j+268>>2]*g)+S(h*P[j+284>>2]))))));l=L[a+32>>2];f=S(S(f*S(S(f*P[l+304>>2])+S(S(P[l+272>>2]*g)+S(h*P[l+288>>2]))))+S(S(g*S(S(P[l+296>>2]*f)+S(S(g*P[l+264>>2])+S(h*P[l+280>>2]))))+S(h*S(S(P[l+300>>2]*f)+S(S(P[l+268>>2]*g)+S(h*P[l+284>>2]))))));g=S(n+f);g=S(S(1)/S(g*g));p=S(S(S(m*n)-S(t*f))*g);h=S(S(S(q*n)-S(u*f))*g);f=S(S(S(o*n)-S(r*f))*g);m=P[a+572>>2];if(m>=S(0)){t=P[a+584>>2];i=S(p+t);u=P[a+576>>2];g=S(f+u);r=P[a+580>>2];k=S(h+r);o=S(_(S(S(i*i)+S(S(g*g)+S(k*k)))));n=S(m/(M[a+553|0]?n:S(1)));if(o>n){f=S(S(1)/o);p=S(S(n*S(i*f))-t);i=S(t+p);h=S(S(n*S(k*f))-r);k=S(r+h);f=S(S(n*S(g*f))-u);g=S(u+f)}P[a+584>>2]=i;P[a+580>>2]=k;P[a+576>>2]=g}g=S(_(S(S(p*p)+S(S(f*f)+S(h*h)))));k=S(S(1)/g);i=S(p*k);h=S(h*k);f=S(f*k);if(L[b+240>>2]){p=P[j+304>>2];n=P[j+296>>2];t=P[j+300>>2];u=P[j+288>>2];r=P[j+280>>2];m=P[j+284>>2];o=P[j+272>>2];q=P[j+264>>2];s=P[j+268>>2];k=S(g*S(0));P[b+64>>2]=S(k*P[b+112>>2])+P[b+64>>2];P[b+68>>2]=S(k*P[b+116>>2])+P[b+68>>2];P[b+72>>2]=S(k*P[b+120>>2])+P[b+72>>2];P[b+80>>2]=S(S(S(o*i)+S(S(q*f)+S(h*s)))*S(g*P[b+96>>2]))+P[b+80>>2];k=P[b+104>>2];P[b+84>>2]=S(S(S(u*i)+S(S(r*f)+S(h*m)))*S(g*P[b+100>>2]))+P[b+84>>2];P[b+88>>2]=S(S(S(p*i)+S(S(n*f)+S(h*t)))*S(g*k))+P[b+88>>2]}if(!L[c+240>>2]){break b}p=P[l+304>>2];n=P[l+296>>2];t=P[l+300>>2];u=P[l+288>>2];r=P[l+280>>2];m=P[l+284>>2];o=P[l+272>>2];q=P[l+264>>2];s=P[l+268>>2];k=S(g*S(-0));P[c+64>>2]=S(k*P[c+112>>2])+P[c+64>>2];P[c+68>>2]=S(k*P[c+116>>2])+P[c+68>>2];P[c+72>>2]=S(k*P[c+120>>2])+P[c+72>>2];P[c+80>>2]=P[c+80>>2]-S(S(S(o*i)+S(S(q*f)+S(h*s)))*S(P[c+96>>2]*g));k=P[c+104>>2];P[c+84>>2]=P[c+84>>2]-S(S(S(u*i)+S(S(r*f)+S(h*m)))*S(P[c+100>>2]*g));P[c+88>>2]=P[c+88>>2]-S(S(S(p*i)+S(S(n*f)+S(h*t)))*S(k*g));break b}g=P[a+440>>2];if(!(g>S(1.1920928955078125e-7))){break b}p=P[b+88>>2];f=S(S(P[c+200>>2]+P[c+88>>2])-S(P[b+200>>2]+p));n=P[b+80>>2];i=S(S(P[c+192>>2]+P[c+80>>2])-S(P[b+192>>2]+n));t=P[b+84>>2];k=S(S(P[c+196>>2]+P[c+84>>2])-S(P[b+196>>2]+t));h=S(S(f*f)+S(S(i*i)+S(k*k)));if(!(h>S(1.1920928955078125e-7))){break b}w=f;A=g;h=S(S(1)/S(_(h)));f=S(f*h);u=P[l+304>>2];r=P[l+272>>2];g=S(i*h);h=S(k*h);m=P[l+288>>2];o=P[l+296>>2];q=P[l+264>>2];s=P[l+280>>2];v=P[l+300>>2];y=P[l+268>>2];z=P[l+284>>2];f=S(A*S(S(1)/S(S(S(f*S(S(f*u)+S(S(r*g)+S(h*m))))+S(S(g*S(S(o*f)+S(S(g*q)+S(h*s))))+S(h*S(S(v*f)+S(S(y*g)+S(h*z))))))+S(S(f*S(S(f*P[j+304>>2])+S(S(P[j+272>>2]*g)+S(h*P[j+288>>2]))))+S(S(g*S(S(P[j+296>>2]*f)+S(S(g*P[j+264>>2])+S(h*P[j+280>>2]))))+S(h*S(S(P[j+300>>2]*f)+S(S(P[j+268>>2]*g)+S(h*P[j+284>>2])))))))));g=S(w*f);i=S(i*f);h=S(k*f);f=S(_(S(S(g*g)+S(S(i*i)+S(h*h)))));k=S(S(1)/f);g=S(g*k);h=S(h*k);i=S(i*k);if(L[b+240>>2]){k=S(f*S(0));P[b+64>>2]=S(k*P[b+112>>2])+P[b+64>>2];P[b+68>>2]=S(k*P[b+116>>2])+P[b+68>>2];P[b+72>>2]=S(k*P[b+120>>2])+P[b+72>>2];P[b+88>>2]=p+S(S(S(u*g)+S(S(o*i)+S(h*v)))*S(f*P[b+104>>2]));P[b+84>>2]=t+S(S(S(m*g)+S(S(s*i)+S(h*z)))*S(f*P[b+100>>2]));P[b+80>>2]=n+S(S(S(r*g)+S(S(q*i)+S(h*y)))*S(f*P[b+96>>2]))}if(!L[c+240>>2]){break b}p=P[j+304>>2];n=P[j+296>>2];t=P[j+300>>2];u=P[j+288>>2];r=P[j+280>>2];m=P[j+284>>2];o=P[j+272>>2];q=P[j+264>>2];s=P[j+268>>2];k=S(f*S(-0));P[c+64>>2]=S(k*P[c+112>>2])+P[c+64>>2];P[c+68>>2]=S(k*P[c+116>>2])+P[c+68>>2];P[c+72>>2]=S(k*P[c+120>>2])+P[c+72>>2];P[c+80>>2]=P[c+80>>2]-S(S(S(o*g)+S(S(q*i)+S(h*s)))*S(P[c+96>>2]*f));k=P[c+104>>2];P[c+84>>2]=P[c+84>>2]-S(S(S(u*g)+S(S(r*i)+S(h*m)))*S(P[c+100>>2]*f));P[c+88>>2]=P[c+88>>2]-S(S(S(p*g)+S(S(n*i)+S(h*t)))*S(k*f))}k=S(P[c+200>>2]+P[c+88>>2]);p=S(P[c+196>>2]+P[c+84>>2]);n=S(P[b+200>>2]+P[b+88>>2]);t=S(P[b+196>>2]+P[b+84>>2]);u=S(P[c+192>>2]+P[c+80>>2]);r=S(P[b+192>>2]+P[b+80>>2]);c:{if(!M[a+526|0]){break c}g=P[a+528>>2];f=S(S(S(g*P[a+504>>2])*P[a+432>>2])/d);h=P[a+516>>2];w=g;g=P[a+468>>2];i=P[a+460>>2];m=P[a+464>>2];o=S(S(S(k-n)*g)+S(S(S(u-r)*i)+S(S(p-t)*m)));f=S(h+S(P[a+492>>2]*(o>S(0)?S(S(S(w*o)*P[a+436>>2])+f):f)));f=f>S(0)?f:S(0);P[a+516>>2]=f;f=S(f-h);g=S(g*f);h=P[a+544>>2];i=S(i*f);o=P[a+536>>2];q=P[a+540>>2];s=S(m*f);f=S(S(g*h)+S(S(i*o)+S(q*s)));g=S(g-S(h*f));m=S(i-S(o*f));h=S(s-S(q*f));f=S(_(S(S(g*g)+S(S(m*m)+S(h*h)))));i=S(S(1)/f);g=S(g*i);h=S(h*i);i=S(m*i);if(L[b+240>>2]){j=L[a+28>>2];o=P[j+304>>2];q=P[j+296>>2];s=P[j+300>>2];v=P[j+288>>2];y=P[j+280>>2];z=P[j+284>>2];w=P[j+272>>2];A=P[j+268>>2];D=P[j+264>>2];m=S(f*S(0));P[b+64>>2]=S(m*P[b+112>>2])+P[b+64>>2];P[b+68>>2]=S(m*P[b+116>>2])+P[b+68>>2];P[b+72>>2]=S(m*P[b+120>>2])+P[b+72>>2];P[b+80>>2]=S(S(S(w*g)+S(S(D*i)+S(h*A)))*S(f*P[b+96>>2]))+P[b+80>>2];m=P[b+104>>2];P[b+84>>2]=S(S(S(v*g)+S(S(y*i)+S(h*z)))*S(f*P[b+100>>2]))+P[b+84>>2];P[b+88>>2]=S(S(S(o*g)+S(S(q*i)+S(h*s)))*S(f*m))+P[b+88>>2]}if(!L[c+240>>2]){break c}j=L[a+32>>2];o=P[j+304>>2];q=P[j+296>>2];s=P[j+300>>2];v=P[j+288>>2];y=P[j+280>>2];z=P[j+284>>2];w=P[j+272>>2];A=P[j+268>>2];D=P[j+264>>2];m=S(f*S(-0));P[c+64>>2]=S(m*P[c+112>>2])+P[c+64>>2];P[c+68>>2]=S(m*P[c+116>>2])+P[c+68>>2];P[c+72>>2]=S(m*P[c+120>>2])+P[c+72>>2];P[c+80>>2]=P[c+80>>2]-S(S(S(w*g)+S(S(D*i)+S(h*A)))*S(P[c+96>>2]*f));m=P[c+104>>2];P[c+84>>2]=P[c+84>>2]-S(S(S(v*g)+S(S(y*i)+S(h*z)))*S(P[c+100>>2]*f));P[c+88>>2]=P[c+88>>2]-S(S(S(o*g)+S(S(q*i)+S(h*s)))*S(m*f))}if(!M[a+525|0]){break a}f=P[a+532>>2];d=S(S(S(f*P[a+508>>2])*P[a+432>>2])/d);i=P[a+520>>2];w=f;f=P[a+484>>2];g=P[a+476>>2];h=P[a+480>>2];k=S(S(S(k-n)*f)+S(S(S(u-r)*g)+S(S(p-t)*h)));d=S(i+S(P[a+496>>2]*(k>S(0)?S(S(S(w*k)*P[a+436>>2])+d):d)));d=d>S(0)?d:S(0);P[a+520>>2]=d;d=S(d-i);if(L[b+240>>2]){j=L[a+28>>2];k=P[j+304>>2];p=P[j+296>>2];n=P[j+300>>2];t=P[j+288>>2];u=P[j+280>>2];r=P[j+284>>2];m=P[j+272>>2];o=P[j+268>>2];q=P[j+264>>2];i=S(d*S(0));P[b+64>>2]=S(i*P[b+112>>2])+P[b+64>>2];P[b+68>>2]=S(i*P[b+116>>2])+P[b+68>>2];P[b+72>>2]=S(i*P[b+120>>2])+P[b+72>>2];P[b+80>>2]=S(S(S(m*f)+S(S(q*g)+S(h*o)))*S(d*P[b+96>>2]))+P[b+80>>2];i=P[b+104>>2];P[b+84>>2]=S(S(S(t*f)+S(S(u*g)+S(h*r)))*S(d*P[b+100>>2]))+P[b+84>>2];P[b+88>>2]=S(S(S(k*f)+S(S(p*g)+S(h*n)))*S(d*i))+P[b+88>>2]}if(!L[c+240>>2]){break a}b=L[a+32>>2];k=P[b+304>>2];p=P[b+296>>2];n=P[b+300>>2];t=P[b+288>>2];u=P[b+280>>2];r=P[b+284>>2];m=P[b+272>>2];o=P[b+268>>2];q=P[c+120>>2];s=P[c+116>>2];f=P[a+484>>2];g=P[a+480>>2];h=P[a+476>>2];v=P[b+264>>2];i=S(d*S(-0));P[c+64>>2]=S(i*P[c+112>>2])+P[c+64>>2];P[c+68>>2]=S(i*s)+P[c+68>>2];P[c+72>>2]=S(i*q)+P[c+72>>2];P[c+80>>2]=P[c+80>>2]-S(S(S(m*f)+S(S(v*h)+S(g*o)))*S(P[c+96>>2]*d));P[c+84>>2]=P[c+84>>2]-S(S(S(t*f)+S(S(u*h)+S(g*r)))*S(P[c+100>>2]*d));P[c+88>>2]=P[c+88>>2]-S(S(S(k*f)+S(S(p*h)+S(g*n)))*S(P[c+104>>2]*d))}fa=e+464|0}function Uy(a,b){a=a|0;b=S(b);var c=0,d=0,e=0,f=S(0),g=S(0),h=S(0),i=0,j=S(0),k=S(0),l=0,m=S(0),n=S(0),o=S(0),p=S(0),q=S(0),r=0,s=S(0),t=S(0),u=0,v=S(0),w=S(0),x=S(0),y=0,z=S(0),A=S(0),B=S(0),C=S(0),D=0,E=0,F=0,G=S(0),H=S(0),I=S(0),K=S(0),N=S(0),O=0,Q=S(0),U=0,V=S(0),W=S(0),X=S(0),Y=S(0),Z=0,$=0,aa=0;d=L[a+24>>2];if((d|0)>0){while(1){a:{b:{e=L[L[a+32>>2]+(U<<2)>>2];switch(L[e+216>>2]-2|0){case 0:case 3:break a;default:break b}}d=0;O=0;r=fa-144|0;fa=r;c:{if(!M[e+924|0]){break c}J[e+924|0]=0;i=L[e+732>>2];if((i|0)>0){l=L[e+740>>2];while(1){c=l+R(d,52)|0;u=L[c+8>>2];y=L[c+12>>2];f=S(P[u+16>>2]-P[y+16>>2]);h=S(f*f);f=S(P[u+8>>2]-P[y+8>>2]);j=S(f*f);f=S(P[u+12>>2]-P[y+12>>2]);f=S(_(S(h+S(j+S(f*f)))));P[c+16>>2]=f;P[c+28>>2]=f*f;d=d+1|0;if((i|0)!=(d|0)){continue}break}d=0;while(1){c=l+R(d,52)|0;P[c+24>>2]=S(P[L[c+8>>2]+88>>2]+P[L[c+12>>2]+88>>2])/P[L[c+4>>2]+4>>2];d=d+1|0;if((i|0)!=(d|0)){continue}break}}hg(e);Gd(e+988|0);if(!(M[e+388|0]&16)){break c}vk(e)}f=S(P[e+368>>2]*b);P[e+452>>2]=f;P[e+460>>2]=f*S(3);P[e+456>>2]=S(1)/f;d=L[e+192>>2];f=S(ha[L[L[d>>2]+48>>2]](d));P[e+464>>2]=f;P[e+468>>2]=f*S(.25);i=L[e+712>>2];if((i|0)>0){f=P[e+452>>2];d=L[e+684>>2];h=S(f*P[d+48>>2]);k=S(f*P[d+44>>2]);f=S(P[d+40>>2]*f);l=L[e+720>>2];d=0;while(1){c=l+R(d,104)|0;if(P[c+88>>2]>S(0)){P[c+40>>2]=f+P[c+40>>2];P[c+44>>2]=k+P[c+44>>2];P[c+48>>2]=h+P[c+48>>2]}d=d+1|0;if((i|0)!=(d|0)){continue}break}}d=0;k=S(0);wa(2770);i=L[e+712>>2];n=P[e+312>>2];f=P[e+308>>2];d:{if(f==S(0)){h=S(0);if(!(n>S(0))){break d}}if((i|0)<=0){h=S(0)}else{y=L[e+752>>2];if((y|0)>0){c=L[e+720>>2];h=P[c+8>>2];o=P[c+16>>2];p=P[c+12>>2];D=L[e+760>>2];while(1){v=k;c=D+R(d,44)|0;l=L[c+8>>2];u=L[c+12>>2];k=S(P[u+8>>2]-h);c=L[c+16>>2];j=S(P[c+12>>2]-p);g=S(P[c+8>>2]-h);m=S(P[u+12>>2]-p);t=S(S(P[l+16>>2]-o)*S(S(k*j)-S(g*m)));q=m;m=S(P[c+16>>2]-o);s=j;j=S(P[u+16>>2]-o);k=S(v+S(t+S(S(S(P[l+8>>2]-h)*S(S(q*m)-S(s*j)))+S(S(P[l+12>>2]-p)*S(S(j*g)-S(m*k))))));d=d+1|0;if((y|0)!=(d|0)){continue}break}}h=S(k/S(6))}k=S(f*S(S(1)/S(T(h))));h=S(n*S(P[e+476>>2]-h))}e:{if((i|0)<=0){break e}l=P[e+304>>2]>S(0)|P[e+300>>2]>S(0);u=e+1212|0;if(f!=S(0)){c=0;while(1){d=L[e+720>>2]+R(c,104)|0;f:{if(!(P[d+88>>2]>S(0))){break f}if(l){se(e,u,c)}p=P[d+72>>2];o=P[d+92>>2];f=S(k*o);j=S(S(p*f)+P[d+56>>2]);P[d+56>>2]=j;g=P[d+76>>2];m=S(S(f*g)+P[d+60>>2]);P[d+60>>2]=m;t=P[d+80>>2];y=d- -64|0;f=S(S(f*t)+P[y>>2]);P[y>>2]=f;if(!(n>S(0))){break f}o=S(h*o);P[d+64>>2]=S(o*t)+f;P[d+60>>2]=S(o*g)+m;P[d+56>>2]=S(p*o)+j}c=c+1|0;if((i|0)!=(c|0)){continue}break}break e}if(n>S(0)){c=0;while(1){d=L[e+720>>2]+R(c,104)|0;if(P[d+88>>2]>S(0)){if(l){se(e,u,c)}f=S(h*P[d+92>>2]);P[d+56>>2]=S(P[d+72>>2]*f)+P[d+56>>2];P[d+60>>2]=S(f*P[d+76>>2])+P[d+60>>2];y=d- -64|0;P[y>>2]=S(f*P[d+80>>2])+P[y>>2]}c=c+1|0;if((i|0)!=(c|0)){continue}break}break e}if(!l){break e}d=0;while(1){if(P[(L[e+720>>2]+R(d,104)|0)+88>>2]>S(0)){se(e,u,d)}d=d+1|0;if((i|0)!=(d|0)){continue}break}}E=L[e+752>>2];if((E|0)>0){y=e+1212|0;d=0;while(1){z=P[e+304>>2];A=P[e+300>>2];g:{if(!(z>S(0)|A>S(0))){break g}F=L[e+288>>2];if((F|0)<4){break g}D=L[e+760>>2];u=D+R(d,44)|0;l=L[u+8>>2];g=P[l+48>>2];c=L[u+12>>2];i=L[u+16>>2];f=S(S(S(S(g+P[c+48>>2])+P[i+48>>2])*S(.3333333432674408))-P[y+8>>2]);m=P[l+40>>2];o=S(S(S(S(m+P[c+40>>2])+P[i+40>>2])*S(.3333333432674408))-P[y>>2]);t=P[l+44>>2];p=S(S(S(S(t+P[c+44>>2])+P[i+44>>2])*S(.3333333432674408))-P[y+4>>2]);x=S(S(f*f)+S(S(o*o)+S(p*p)));if(!(x>S(1.1920928955078125e-7))){break g}j=P[e+452>>2];B=P[L[e+684>>2]>>2];G=S(_(x));n=S(S(1)/G);h=S(f*n);k=S(p*n);n=S(o*n);q=P[u+20>>2];s=P[u+28>>2];w=P[u+24>>2];h:{switch(F-4|0){case 1:f=S(S(s*f)+S(S(q*o)+S(p*w)))>2]*S(.5));f=S(q*S(f*x));A=S(f*S(-h));H=S(f*S(-k));I=S(f*S(-n));o=S(0);p=S(0);f=S(0);i:{if(!(q>S(0))){break i}f=S(0);if(!(q>2];if(q>S(0)){s=S(S(h*q)*j);v=S(s*s);s=S(S(n*q)*j);j=S(S(k*q)*j);j=S(v+S(S(s*s)+S(j*j)));j:{if(!(j>S(0))){break j}g=S(S(g*g)+S(S(m*m)+S(t*t)));if(!(g<=j)){break j}j=S(S(S(_(g))/S(_(j)))*S(.800000011920929));h=S(h*j);k=S(k*j);n=S(n*j)}P[l+56>>2]=f+S(n+P[l+56>>2]);u=l- -64|0;P[u>>2]=p+S(h+P[u>>2]);P[l+60>>2]=o+S(k+P[l+60>>2])}j=P[c+88>>2];if(j>S(0)){g=P[e+452>>2];m=S(S(h*j)*g);v=S(m*m);m=S(S(n*j)*g);j=S(S(k*j)*g);j=S(v+S(S(m*m)+S(j*j)));k:{if(!(j>S(0))){break k}g=P[c+48>>2];m=S(g*g);g=P[c+40>>2];v=S(g*g);g=P[c+44>>2];g=S(m+S(v+S(g*g)));if(!(g<=j)){break k}j=S(S(S(_(g))/S(_(j)))*S(.800000011920929));h=S(h*j);k=S(k*j);n=S(n*j)}P[c+56>>2]=f+S(n+P[c+56>>2]);l=c- -64|0;P[l>>2]=p+S(h+P[l>>2]);P[c+60>>2]=o+S(k+P[c+60>>2])}j=P[i+88>>2];if(!(j>S(0))){break g}g=P[e+452>>2];m=S(S(h*j)*g);v=S(m*m);m=S(S(n*j)*g);j=S(S(k*j)*g);j=S(v+S(S(m*m)+S(j*j)));l:{if(!(j>S(0))){break l}g=P[i+48>>2];m=S(g*g);g=P[i+40>>2];v=S(g*g);g=P[i+44>>2];g=S(m+S(v+S(g*g)));if(!(g<=j)){break l}j=S(S(S(_(g))/S(_(j)))*S(.800000011920929));h=S(h*j);k=S(k*j);n=S(n*j)}P[i+56>>2]=f+S(n+P[i+56>>2]);c=i- -64|0;P[c>>2]=p+S(h+P[c>>2]);P[i+60>>2]=o+S(k+P[i+60>>2]);break g;case 0:case 2:break h;default:break g}}v=f;f=S(S(s*f)+S(S(q*o)+S(p*w)))S(0))){break g}f=S(B*S(x*S(f*S(-P[(D+R(d,44)|0)+36>>2]))));o=S(A*f);p=S(z*f);f=S(S(S(h*o)+S(S(s*p)+S(0)))*S(.3333333432674408));h=S(S(S(n*o)+S(S(q*p)+S(0)))*S(.3333333432674408));k=S(S(S(k*o)+S(S(w*p)+S(0)))*S(.3333333432674408));p=S(S(1)/S(_(S(S(f*f)+S(S(h*h)+S(k*k))))));n=S(f*p);o=S(k*p);p=S(h*p);q=S(j*P[l+88>>2]);s=S(f*q);v=S(s*s);s=S(h*q);w=S(s*s);s=S(k*q);m:{if(S(v+S(w+S(s*s)))>S(S(g*g)+S(S(m*m)+S(t*t)))){q=S(S(1)/q);g=S(S(g*n)+S(S(m*p)+S(o*t)));P[l+56>>2]=P[l+56>>2]-S(q*S(p*g));P[l+60>>2]=P[l+60>>2]-S(q*S(o*g));l=l- -64|0;P[l>>2]=P[l>>2]-S(q*S(n*g));break m}P[l+56>>2]=h+P[l+56>>2];P[l+60>>2]=k+P[l+60>>2];l=l- -64|0;P[l>>2]=f+P[l>>2]}g=S(j*P[c+88>>2]);m=S(f*g);v=S(m*m);m=S(h*g);q=S(m*m);m=S(k*g);v=S(v+S(q+S(m*m)));m=P[c+48>>2];t=P[c+40>>2];q=P[c+44>>2];n:{if(!(v>S(S(m*m)+S(S(t*t)+S(q*q))))){P[c+56>>2]=h+P[c+56>>2];P[c+60>>2]=k+P[c+60>>2];c=c- -64|0;P[c>>2]=f+P[c>>2];break n}g=S(S(1)/g);m=S(S(m*n)+S(S(t*p)+S(o*q)));P[c+56>>2]=P[c+56>>2]-S(g*S(p*m));P[c+60>>2]=P[c+60>>2]-S(g*S(o*m));c=c- -64|0;P[c>>2]=P[c>>2]-S(g*S(n*m))}j=S(j*P[i+88>>2]);g=S(f*j);m=S(g*g);g=S(h*j);v=S(g*g);g=S(k*j);v=S(m+S(v+S(g*g)));g=P[i+48>>2];m=P[i+40>>2];t=P[i+44>>2];if(!(v>S(S(g*g)+S(S(m*m)+S(t*t))))){P[i+56>>2]=h+P[i+56>>2];P[i+60>>2]=k+P[i+60>>2];c=i- -64|0;P[c>>2]=f+P[c>>2];break g}f=S(S(1)/j);h=S(S(g*n)+S(S(m*p)+S(o*t)));P[i+56>>2]=P[i+56>>2]-S(f*S(p*h));P[i+60>>2]=P[i+60>>2]-S(f*S(o*h));c=i- -64|0;P[c>>2]=P[c>>2]-S(f*S(n*h))}d=d+1|0;if((E|0)!=(d|0)){continue}break}}va();l=L[e+712>>2];if((l|0)>0){d=0;while(1){c=L[e+720>>2]+R(d,104)|0;i=L[c+12>>2];L[c+24>>2]=L[c+8>>2];L[c+28>>2]=i;i=L[c+20>>2];L[c+32>>2]=L[c+16>>2];L[c+36>>2]=i;k=P[e+452>>2];f=S(P[L[e+684>>2]+12>>2]/k);h=S(-f);n=P[c+88>>2];o=S(S(P[c+56>>2]*n)*k);o=fo?h:o)+P[c+40>>2]);P[c+40>>2]=o;p=S(k*S(n*P[c+60>>2]));p=fp?h:p)+P[c+44>>2]);P[c+44>>2]=p;i=c- -64|0;k=S(k*S(n*P[i>>2]));f=f>2]);P[c+48>>2]=h;f=P[e+452>>2];P[c+8>>2]=S(o*f)+P[c+8>>2];P[c+12>>2]=S(p*f)+P[c+12>>2];P[c+16>>2]=S(h*f)+P[c+16>>2];L[i>>2]=0;L[i+4>>2]=0;L[c+56>>2]=0;L[c+60>>2]=0;d=d+1|0;if((l|0)!=(d|0)){continue}break}}wk(e);d=L[e+928>>2];o:{if(d){c=L[e+192>>2];f=S(ha[L[L[c>>2]+48>>2]](c));h=P[d>>2];k=P[d+4>>2];n=P[d+8>>2];L[e+904>>2]=0;P[e+900>>2]=n-f;P[e+896>>2]=k-f;P[e+892>>2]=h-f;h=P[d+20>>2];k=P[d+24>>2];n=P[d+16>>2];L[e+920>>2]=0;P[e+916>>2]=f+k;P[e+912>>2]=f+h;d=e+908|0;P[d>>2]=f+n;c=L[e+188>>2];if(!c){break o}i=L[e+684>>2];l=L[i+32>>2];ha[L[L[l>>2]+16>>2]](l,c,e+892|0,d,L[i+36>>2]);break o}L[e+892>>2]=0;L[e+896>>2]=0;L[e+916>>2]=0;L[e+920>>2]=0;L[e+908>>2]=0;L[e+912>>2]=0;L[e+900>>2]=0;L[e+904>>2]=0}y=e+928|0;i=L[e+712>>2];if((i|0)>0){d=0;while(1){c=L[e+720>>2]+R(d,104)|0;h=P[c+12>>2];k=P[c+16>>2];n=P[c+8>>2];f=P[e+464>>2];L[r+140>>2]=0;P[r+128>>2]=f+n;L[r+124>>2]=0;P[r+112>>2]=n-f;P[r+136>>2]=f+k;P[r+132>>2]=f+h;P[r+120>>2]=k-f;P[r+116>>2]=h-f;l=L[c+96>>2];h=P[c+40>>2];k=P[c+44>>2];n=P[c+48>>2];f=P[e+460>>2];L[r+20>>2]=0;P[r+16>>2]=f*n;P[r+12>>2]=f*k;P[r+8>>2]=h*f;Dd(y,l,r+112|0,r+8|0,P[e+468>>2]);d=d+1|0;if((i|0)!=(d|0)){continue}break}}D=e+988|0;if(!(!L[e+988>>2]|L[e+752>>2]<=0)){l=0;while(1){u=L[e+760>>2]+R(l,44)|0;d=L[u+16>>2];x=P[d+40>>2];c=L[u+8>>2];B=P[c+40>>2];i=L[u+12>>2];z=P[i+40>>2];A=P[d+44>>2];v=P[c+44>>2];G=P[i+44>>2];H=P[d+48>>2];I=P[c+48>>2];Q=P[i+48>>2];h=P[d+12>>2];k=P[c+12>>2];n=P[i+12>>2];o=P[d+16>>2];p=P[c+16>>2];j=P[i+16>>2];g=P[d+8>>2];m=P[c+8>>2];t=P[i+8>>2];f=P[e+464>>2];q=P[d+20>>2];s=P[i+20>>2];w=P[c+20>>2];C=s>w?s:w;P[r+140>>2]=q>C?q:C;C=m>2]=f+(g>C?g:C);s=s>2]=qt?t:m;P[r+112>>2]=(gp?j:p;P[r+136>>2]=f+(g>2]=f+(h>g?h:g);p=j>2]=(o
n?n:k;P[r+116>>2]=(h>2];f=P[e+460>>2];L[r+20>>2]=0;P[r+16>>2]=f*S(S(H+S(I+Q))*S(.3333333432674408));P[r+12>>2]=f*S(S(A+S(v+G))*S(.3333333432674408));P[r+8>>2]=f*S(S(x+S(B+z))*S(.3333333432674408));Dd(D,d,r+112|0,r+8|0,P[e+468>>2]);l=l+1|0;if((l|0)>2]){continue}break}}h=S(0);c=0;k=S(0);n=S(0);f=S(0);j=S(0);d=fa-144|0;fa=d;p:{if(!M[e+473|0]){break p}i=L[e+712>>2];Z=(i|0)<=0;q:{if(Z){break q}l=L[e+512>>2];u=L[e+720>>2];if((i|0)!=1){aa=i&-2;while(1){E=u+R(c,104)|0;o=P[l+(c<<2)>>2];$=c|1;F=u+R($,104)|0;p=P[l+($<<2)>>2];n=S(S(n+S(P[E+8>>2]*o))+S(P[F+8>>2]*p));h=S(S(h+S(o*P[E+16>>2]))+S(p*P[F+16>>2]));k=S(S(k+S(o*P[E+12>>2]))+S(p*P[F+12>>2]));c=c+2|0;O=O+2|0;if((aa|0)!=(O|0)){continue}break}}if(!(i&1)){break q}u=u+R(c,104)|0;o=P[l+(c<<2)>>2];n=S(n+S(P[u+8>>2]*o));h=S(h+S(o*P[u+16>>2]));k=S(k+S(o*P[u+12>>2]))}L[e+532>>2]=0;P[e+528>>2]=h;P[e+524>>2]=k;P[e+520>>2]=n;L[d+132>>2]=0;L[d+136>>2]=0;L[d+116>>2]=0;L[d+120>>2]=0;L[d+140>>2]=0;L[d+124>>2]=0;L[d+128>>2]=0;L[d+108>>2]=0;L[d+112>>2]=0;L[d+136>>2]=884998144;L[d+116>>2]=880803840;L[d+100>>2]=0;L[d+104>>2]=0;L[d+96>>2]=872415232;if(!Z){O=L[e+492>>2];E=L[e+720>>2];F=L[e+512>>2];o=P[d+120>>2];p=S(3.5762786865234375e-7);g=S(2.384185791015625e-7);m=S(1.1920928955078125e-7);t=P[d+104>>2];q=P[d+100>>2];s=P[d+112>>2];l=0;while(1){u=E+R(l,104)|0;B=P[u+16>>2];z=P[u+12>>2];c=O+(l<<4)|0;A=P[c>>2];v=P[c+4>>2];w=P[F+(l<<2)>>2];x=S(S(P[u+8>>2]-n)*w);t=S(S(x*P[c+8>>2])+t);P[d+104>>2]=t;q=S(S(x*v)+q);P[d+100>>2]=q;m=S(S(x*A)+m);P[d+96>>2]=m;A=P[c>>2];v=P[c+4>>2];x=S(w*S(z-k));o=S(S(x*P[c+8>>2])+o);P[d+120>>2]=o;g=S(S(x*v)+g);P[d+116>>2]=g;s=S(S(x*A)+s);P[d+112>>2]=s;x=P[c>>2];z=P[c+4>>2];w=S(w*S(B-h));p=S(S(w*P[c+8>>2])+p);P[d+136>>2]=p;f=S(S(w*z)+f);P[d+132>>2]=f;j=S(S(w*x)+j);P[d+128>>2]=j;l=l+1|0;if((i|0)!=(l|0)){continue}break}}if(!M[33884]){f=P[5821];L[8470]=L[5822];P[8469]=f;J[33884]=1}Wj(d+96|0,d+48|0,d);c=L[d+60>>2];L[e+544>>2]=L[d+56>>2];L[e+548>>2]=c;c=L[d+52>>2];L[e+536>>2]=L[d+48>>2];L[e+540>>2]=c;c=L[d+76>>2];L[e+560>>2]=L[d+72>>2];L[e+564>>2]=c;c=L[d+68>>2];L[e+552>>2]=L[d+64>>2];L[e+556>>2]=c;c=L[d+84>>2];L[e+568>>2]=L[d+80>>2];L[e+572>>2]=c;c=L[d+92>>2];L[e+576>>2]=L[d+88>>2];L[e+580>>2]=c;f=P[e+640>>2];h=P[e+632>>2];k=P[e+636>>2];n=P[e+656>>2];o=P[e+648>>2];p=P[e+652>>2];j=P[e+672>>2];g=P[e+664>>2];m=P[e+668>>2];t=P[d+88>>2];q=P[d+84>>2];s=P[d+56>>2];w=P[d+120>>2];x=P[d+72>>2];B=P[d+68>>2];z=P[d+128>>2];A=P[d+96>>2];v=P[d+112>>2];G=P[d+132>>2];H=P[d+100>>2];I=P[d+116>>2];Q=P[d+136>>2];C=P[d+80>>2];V=P[d+104>>2];W=P[d+48>>2];X=P[d+52>>2];Y=P[d+64>>2];L[e+628>>2]=0;L[e+612>>2]=0;L[e+596>>2]=0;K=S(S(t*j)+S(S(C*g)+S(q*m)));N=S(S(s*j)+S(S(W*g)+S(X*m)));m=S(S(x*j)+S(S(Y*g)+S(B*m)));j=S(S(Q*K)+S(S(V*N)+S(w*m)));P[e+624>>2]=j;g=S(S(G*K)+S(S(H*N)+S(m*I)));P[e+620>>2]=g;m=S(S(z*K)+S(S(A*N)+S(v*m)));P[e+616>>2]=m;K=S(S(t*n)+S(S(C*o)+S(q*p)));N=S(S(s*n)+S(S(W*o)+S(X*p)));p=S(S(x*n)+S(S(Y*o)+S(B*p)));n=S(S(Q*K)+S(S(V*N)+S(w*p)));P[e+608>>2]=n;o=S(S(G*K)+S(S(H*N)+S(p*I)));P[e+604>>2]=o;p=S(S(z*K)+S(S(A*N)+S(p*v)));P[e+600>>2]=p;t=S(S(t*f)+S(S(C*h)+S(q*k)));q=S(S(s*f)+S(S(W*h)+S(X*k)));f=S(S(x*f)+S(S(Y*h)+S(B*k)));h=S(S(Q*t)+S(S(V*q)+S(w*f)));P[e+592>>2]=h;k=S(S(G*t)+S(S(H*q)+S(f*I)));P[e+588>>2]=k;t=S(S(z*t)+S(S(A*q)+S(f*v)));P[e+584>>2]=t;f=P[e+364>>2];if(!(f>S(1))){break p}v=j;j=S(S(1)/S(S(h*S(S(p*g)-S(m*o)))+S(S(t*S(S(o*j)-S(g*n)))+S(S(S(n*m)-S(j*p))*k))));f=j>2]=v*f;P[e+620>>2]=g*f;P[e+616>>2]=m*f;P[e+608>>2]=n*f;P[e+604>>2]=o*f;P[e+600>>2]=p*f;P[e+592>>2]=h*f;P[e+588>>2]=k*f;P[e+584>>2]=t*f}fa=d+144|0;r:{if(!M[e+473|0]|!(P[e+320>>2]>S(0))){break r}l=L[e+712>>2];if((l|0)<=0){break r}o=P[e+576>>2];p=P[e+572>>2];j=P[e+568>>2];g=P[e+560>>2];m=P[e+556>>2];t=P[e+552>>2];q=P[e+544>>2];s=P[e+540>>2];w=P[e+536>>2];d=0;while(1){c=L[e+720>>2]+R(d,104)|0;if(P[c+88>>2]>S(0)){i=L[e+492>>2]+(d<<4)|0;f=P[i+8>>2];h=P[i>>2];k=P[i+4>>2];x=P[e+520>>2];B=P[e+524>>2];n=P[e+320>>2];z=P[e+528>>2];L[c+20>>2]=0;A=P[c+16>>2];P[c+16>>2]=A+S(n*S(S(z+S(S(o*f)+S(S(j*h)+S(p*k))))-A));z=P[c+12>>2];P[c+12>>2]=z+S(n*S(S(B+S(S(g*f)+S(S(t*h)+S(m*k))))-z));B=P[c+8>>2];P[c+8>>2]=B+S(n*S(S(x+S(S(q*f)+S(S(w*h)+S(s*k))))-B))}d=d+1|0;if((l|0)!=(d|0)){continue}break}}pa(r+8|0,0,104);l=L[e+812>>2];if((l|0)<0){if(L[e+816>>2]<0){d=L[e+820>>2];if(!(d?!d|!M[e+824|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}J[e+824|0]=1;L[e+816>>2]=0;L[e+820>>2]=0}while(1){d=L[e+820>>2]+R(l,104)|0;L[d>>2]=0;L[d+4>>2]=0;L[d+24>>2]=0;L[d+16>>2]=0;L[d+20>>2]=0;L[d+8>>2]=0;L[d+12>>2]=0;c=L[r+48>>2];L[d+36>>2]=L[r+44>>2];L[d+40>>2]=c;c=L[r+40>>2];L[d+28>>2]=L[r+36>>2];L[d+32>>2]=c;c=L[r+64>>2];L[d+52>>2]=L[r+60>>2];L[d+56>>2]=c;c=L[r+56>>2];L[d+44>>2]=L[r+52>>2];L[d+48>>2]=c;c=L[r+80>>2];L[d+68>>2]=L[r+76>>2];L[d+72>>2]=c;c=L[r+72>>2];L[d+60>>2]=L[r+68>>2];L[d+64>>2]=c;c=L[r+88>>2];L[d+76>>2]=L[r+84>>2];L[d+80>>2]=c;c=L[r+96>>2];L[d+84>>2]=L[r+92>>2];L[d+88>>2]=c;c=L[r+104>>2];L[d+92>>2]=L[r+100>>2];L[d+96>>2]=c;L[d+100>>2]=L[r+108>>2];l=l+1|0;if(l){continue}break}}L[e+812>>2]=0;c=L[e+832>>2];s:{if((c|0)>=0){break s}if(L[e+836>>2]<0){d=L[e+840>>2];if(!(d?!d|!M[e+844|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}J[e+844|0]=1;L[e+836>>2]=0;L[e+840>>2]=0}l=0;d=c;u=0-c&3;if(u){while(1){i=L[e+840>>2]+R(d,56)|0;L[i>>2]=0;L[i+4>>2]=0;L[i+48>>2]=0;L[i+52>>2]=0;L[i+40>>2]=0;L[i+44>>2]=0;L[i+32>>2]=0;L[i+36>>2]=0;L[i+24>>2]=0;L[i+28>>2]=0;L[i+16>>2]=0;L[i+20>>2]=0;L[i+8>>2]=0;L[i+12>>2]=0;d=d+1|0;l=l+1|0;if((u|0)!=(l|0)){continue}break}}if(c>>>0>4294967292){break s}while(1){i=R(d,56);c=i+L[e+840>>2]|0;L[c>>2]=0;L[c+4>>2]=0;L[c+48>>2]=0;L[c+52>>2]=0;L[c+40>>2]=0;L[c+44>>2]=0;L[c+32>>2]=0;L[c+36>>2]=0;L[c+24>>2]=0;L[c+28>>2]=0;L[c+16>>2]=0;L[c+20>>2]=0;L[c+8>>2]=0;L[c+12>>2]=0;c=i+L[e+840>>2]|0;L[c+104>>2]=0;L[c+108>>2]=0;L[c+96>>2]=0;L[c+100>>2]=0;L[c+88>>2]=0;L[c+92>>2]=0;L[c+80>>2]=0;L[c+84>>2]=0;L[c+72>>2]=0;L[c+76>>2]=0;l=c- -64|0;L[l>>2]=0;L[l+4>>2]=0;L[c+56>>2]=0;L[c+60>>2]=0;c=i+L[e+840>>2]|0;L[c+160>>2]=0;L[c+164>>2]=0;L[c+152>>2]=0;L[c+156>>2]=0;L[c+144>>2]=0;L[c+148>>2]=0;L[c+136>>2]=0;L[c+140>>2]=0;L[c+128>>2]=0;L[c+132>>2]=0;L[c+120>>2]=0;L[c+124>>2]=0;L[c+112>>2]=0;L[c+116>>2]=0;c=i+L[e+840>>2]|0;L[c+216>>2]=0;L[c+220>>2]=0;L[c+208>>2]=0;L[c+212>>2]=0;L[c+200>>2]=0;L[c+204>>2]=0;L[c+192>>2]=0;L[c+196>>2]=0;L[c+184>>2]=0;L[c+188>>2]=0;L[c+176>>2]=0;L[c+180>>2]=0;L[c+168>>2]=0;L[c+172>>2]=0;d=d+4|0;if(d){continue}break}}L[e+832>>2]=0;Hc(y,1);Hc(D,1);Hc(e+1048|0,1);fa=r+144|0;d=L[a+24>>2]}U=U+1|0;if((U|0)<(d|0)){continue}break}}}function Hg(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=S(0),l=0,m=S(0),n=0,o=0,p=S(0),q=S(0),r=S(0),s=0,t=S(0),u=0,v=S(0),w=0,x=S(0),y=S(0),z=S(0),A=S(0),B=S(0),C=0,D=S(0),E=S(0),F=S(0),G=S(0),H=S(0),I=S(0),K=S(0),N=0,O=0,Q=S(0),R=S(0),U=S(0),V=S(0),W=0,X=S(0),Y=0,Z=0,$=0,aa=S(0),ba=S(0),ca=S(0),da=S(0),ea=S(0),ia=S(0),ja=0,ka=S(0),la=S(0),ma=S(0),na=S(0),oa=S(0),pa=S(0),ra=S(0),sa=S(0),ta=S(0),ua=S(0),va=S(0),wa=S(0),xa=S(0),ya=S(0);f=fa-960|0;fa=f;a:{if((ha[L[L[d>>2]+80>>2]](d)|0)==2){g=L[d+152>>2];h=g-1|0;L[a+28>>2]=h;if(!g){break a}while(1){Hg(a,b,c,L[L[d+160>>2]+(h<<2)>>2],e);g=L[a+28>>2];h=g-1|0;L[a+28>>2]=h;if(g){continue}break}break a}if((ha[L[L[e>>2]+80>>2]](e)|0)==2){g=L[e+152>>2];h=g-1|0;L[a+36>>2]=h;if(!g){break a}while(1){Hg(a,b,c,d,L[L[e+160>>2]+(h<<2)>>2]);g=L[a+36>>2];h=g-1|0;L[a+36>>2]=h;if(g){continue}break}break a}h=L[b+12>>2];g=L[h+12>>2];L[f+904>>2]=L[h+8>>2];L[f+908>>2]=g;g=L[h+4>>2];L[f+896>>2]=L[h>>2];L[f+900>>2]=g;g=L[h+28>>2];L[f+920>>2]=L[h+24>>2];L[f+924>>2]=g;g=L[h+20>>2];L[f+912>>2]=L[h+16>>2];L[f+916>>2]=g;g=L[h+44>>2];L[f+936>>2]=L[h+40>>2];L[f+940>>2]=g;g=L[h+36>>2];L[f+928>>2]=L[h+32>>2];L[f+932>>2]=g;g=L[h+60>>2];L[f+952>>2]=L[h+56>>2];L[f+956>>2]=g;g=L[h+52>>2];L[f+944>>2]=L[h+48>>2];L[f+948>>2]=g;h=L[c+12>>2];g=L[h+12>>2];L[f+840>>2]=L[h+8>>2];L[f+844>>2]=g;g=L[h+4>>2];L[f+832>>2]=L[h>>2];L[f+836>>2]=g;g=L[h+28>>2];L[f+856>>2]=L[h+24>>2];L[f+860>>2]=g;g=L[h+20>>2];L[f+848>>2]=L[h+16>>2];L[f+852>>2]=g;g=L[h+44>>2];L[f+872>>2]=L[h+40>>2];L[f+876>>2]=g;g=L[h+36>>2];L[f+864>>2]=L[h+32>>2];L[f+868>>2]=g;g=L[h+60>>2];L[f+888>>2]=L[h+56>>2];L[f+892>>2]=g;g=L[h+52>>2];L[f+880>>2]=L[h+48>>2];L[f+884>>2]=g;L[f+816>>2]=0;L[8513]=L[8513]+1;L[f+824>>2]=ha[L[6798]](256,16);J[f+828|0]=1;L[f+820>>2]=32;l=f+896|0;s=f+832|0;o=f+812|0;i=fa+-64|0;fa=i;b:{if(!(!L[d+68>>2]|!L[e+68>>2])){j=fa-112|0;fa=j;g=d+68|0;h=e+68|0;if(!(!L[g>>2]|!L[h>>2])){Q=P[l+52>>2];D=P[l+56>>2];E=P[s+52>>2];F=P[s+56>>2];aa=P[l+20>>2];ba=P[l+36>>2];G=P[s+20>>2];H=P[s+36>>2];R=P[s+24>>2];ca=P[l+24>>2];m=P[s+40>>2];da=P[l+40>>2];U=P[l+48>>2];y=P[s+48>>2];ea=P[l+32>>2];ia=P[l+16>>2];z=P[l>>2];A=P[l+4>>2];X=P[s+32>>2];V=P[s+16>>2];I=P[s>>2];K=P[s+4>>2];k=P[s+8>>2];B=P[l+8>>2];L[j+60>>2]=0;L[j+44>>2]=0;L[j+28>>2]=0;x=S(S(m*da)+S(S(k*B)+S(ca*R)));P[j+56>>2]=x;v=S(S(H*da)+S(S(K*B)+S(ca*G)));P[j+52>>2]=v;r=S(S(X*da)+S(S(I*B)+S(ca*V)));P[j+48>>2]=r;p=S(S(m*ba)+S(S(k*A)+S(aa*R)));P[j+40>>2]=p;q=S(S(H*ba)+S(S(K*A)+S(aa*G)));P[j+36>>2]=q;t=S(S(X*ba)+S(S(I*A)+S(aa*V)));P[j+32>>2]=t;m=S(S(m*ea)+S(S(k*z)+S(ia*R)));P[j+24>>2]=m;k=S(S(H*ea)+S(S(K*z)+S(ia*G)));P[j+20>>2]=k;P[j+104>>2]=S(T(x))+S(9.999999974752427e-7);P[j+100>>2]=S(T(v))+S(9.999999974752427e-7);P[j+96>>2]=S(T(r))+S(9.999999974752427e-7);P[j+88>>2]=S(T(p))+S(9.999999974752427e-7);P[j+84>>2]=S(T(q))+S(9.999999974752427e-7);P[j+80>>2]=S(T(t))+S(9.999999974752427e-7);P[j+72>>2]=S(T(m))+S(9.999999974752427e-7);P[j+68>>2]=S(T(k))+S(9.999999974752427e-7);L[j+12>>2]=0;k=S(-U);P[j+8>>2]=S(S(S(B*k)-S(ca*Q))-S(da*D))+S(S(F*da)+S(S(y*B)+S(ca*E)));P[j+4>>2]=S(S(S(A*k)-S(aa*Q))-S(ba*D))+S(S(F*ba)+S(S(y*A)+S(aa*E)));P[j>>2]=S(S(S(z*k)-S(ia*Q))-S(ea*D))+S(S(F*ea)+S(S(y*z)+S(ia*E)));k=S(S(X*ea)+S(S(I*z)+S(ia*V)));P[j+16>>2]=k;P[j+64>>2]=S(T(k))+S(9.999999974752427e-7);xb(g,h,o,j,0,0,1)}fa=j+112|0;break b}W=ha[L[L[d>>2]+88>>2]](d)|0;if(!W){break b}N=i+16|0;u=i+48|0;while(1){W=W-1|0;ha[L[L[d>>2]+120>>2]](d,W,l,i+32|0,u);Y=ha[L[L[e>>2]+88>>2]](e)|0;if(Y){while(1){ha[L[L[e>>2]+120>>2]](e,W,s,i,N);Y=Y-1|0;c:{if(P[i+16>>2]>2]|P[i>>2]>P[i+48>>2]|(P[i+20>>2]
>2]|P[i+4>>2]>P[i+52>>2])){break c}if(P[i+24>>2]
>2]|P[i+8>>2]>P[i+56>>2]){break c}n=L[o+4>>2];d:{if((n|0)!=L[o+8>>2]){break d}O=n?n<<1:1;if((O|0)<=(n|0)){break d}e:{if(!O){C=0;break e}L[8513]=L[8513]+1;C=ha[L[6798]](O<<3,16)|0;n=L[o+4>>2]}w=L[o+12>>2];f:{g:{if((n|0)>0){Z=0;if((n|0)!=1){j=n&-2;ja=0;while(1){$=Z<<3;h=$+C|0;g=w+$|0;L[h>>2]=L[g>>2];L[h+4>>2]=L[g+4>>2];g=$|8;h=g+C|0;g=g+w|0;L[h>>2]=L[g>>2];L[h+4>>2]=L[g+4>>2];Z=Z+2|0;ja=ja+2|0;if((j|0)!=(ja|0)){continue}break}}if(n&1){g=Z<<3;h=g+C|0;g=g+w|0;L[h>>2]=L[g>>2];L[h+4>>2]=L[g+4>>2]}if(M[o+16|0]){break g}break f}if(!w|!M[o+16|0]){break f}}if(w){L[8514]=L[8514]+1;ha[L[6799]](w)}n=L[o+4>>2]}L[o+12>>2]=C;J[o+16|0]=1;L[o+8>>2]=O}g=L[o+12>>2]+(n<<3)|0;L[g+4>>2]=Y;L[g>>2]=W;L[o+4>>2]=n+1}if(Y){continue}break}}if(W){continue}break}}fa=i- -64|0;h:{if(!L[f+816>>2]){break h}i:{if((ha[L[L[d>>2]+80>>2]](d)|0)!=1){break i}if((ha[L[L[e>>2]+80>>2]](e)|0)!=1){break i}Y=L[f+824>>2];Z=L[f+816>>2];i=fa-432|0;fa=i;h=L[c+12>>2];ka=P[h+56>>2];la=P[h+52>>2];ma=P[h+40>>2];na=P[h+36>>2];oa=P[h+24>>2];pa=P[h+20>>2];g=L[b+12>>2];ra=P[g+56>>2];sa=P[g+52>>2];ta=P[g+40>>2];ua=P[g+36>>2];va=P[g+24>>2];wa=P[g+20>>2];xa=P[h+48>>2];ya=P[h+32>>2];aa=P[h+16>>2];ba=P[h+8>>2];ca=P[h+4>>2];da=P[h>>2];ea=P[g+48>>2];ia=P[g+32>>2];z=P[g+16>>2];A=P[g+8>>2];B=P[g+4>>2];Q=P[g>>2];L[i+424>>2]=1008981770;L[i+352>>2]=1008981770;ha[L[L[d>>2]+112>>2]](d);ha[L[L[e>>2]+112>>2]](e);if(Z){ja=i+16|0;while(1){h=L[Y>>2];L[a+24>>2]=h;L[a+32>>2]=L[Y+4>>2];g=ha[L[L[d>>2]+84>>2]](d)|0;ha[L[L[g>>2]+20>>2]](g,h,i+360|0);h=L[a+32>>2];g=ha[L[L[e>>2]+84>>2]](e)|0;ha[L[L[g>>2]+20>>2]](g,h,i+288|0);L[i+372>>2]=0;L[i+388>>2]=0;L[i+404>>2]=0;I=P[i+384>>2];K=P[i+376>>2];U=P[i+380>>2];X=S(sa+S(S(I*va)+S(S(K*z)+S(wa*U))));P[i+380>>2]=X;x=P[i+368>>2];v=P[i+360>>2];r=P[i+364>>2];D=S(sa+S(S(x*va)+S(S(v*z)+S(wa*r))));P[i+364>>2]=D;p=P[i+400>>2];m=P[i+392>>2];k=P[i+396>>2];V=S(sa+S(S(p*va)+S(S(m*z)+S(wa*k))));P[i+396>>2]=V;q=S(ra+S(S(I*ta)+S(S(K*ia)+S(ua*U))));P[i+384>>2]=q;t=S(ea+S(S(p*A)+S(S(m*Q)+S(B*k))));P[i+392>>2]=t;E=S(ra+S(S(x*ta)+S(S(v*ia)+S(ua*r))));P[i+368>>2]=E;m=S(ra+S(S(p*ta)+S(S(m*ia)+S(ua*k))));P[i+400>>2]=m;F=S(ea+S(S(x*A)+S(S(v*Q)+S(B*r))));P[i+360>>2]=F;k=S(ea+S(S(I*A)+S(S(K*Q)+S(B*U))));P[i+376>>2]=k;v=P[i+296>>2];r=P[i+288>>2];p=P[i+292>>2];L[i+300>>2]=0;G=S(la+S(S(v*oa)+S(S(r*aa)+S(pa*p))));P[i+292>>2]=G;H=S(ka+S(S(v*ma)+S(S(r*ya)+S(na*p))));P[i+296>>2]=H;R=S(xa+S(S(v*ba)+S(S(r*da)+S(ca*p))));P[i+288>>2]=R;v=P[i+312>>2];r=P[i+304>>2];p=P[i+308>>2];L[i+316>>2]=0;I=S(la+S(S(v*oa)+S(S(r*aa)+S(pa*p))));P[i+308>>2]=I;K=S(ka+S(S(v*ma)+S(S(r*ya)+S(na*p))));P[i+312>>2]=K;U=S(xa+S(S(v*ba)+S(S(r*da)+S(ca*p))));P[i+304>>2]=U;y=P[i+328>>2];r=P[i+320>>2];p=P[i+324>>2];L[i+332>>2]=0;x=S(la+S(S(y*oa)+S(S(r*aa)+S(pa*p))));P[i+324>>2]=x;v=S(xa+S(S(y*ba)+S(S(r*da)+S(ca*p))));P[i+320>>2]=v;r=S(ka+S(S(y*ma)+S(S(r*ya)+S(na*p))));P[i+328>>2]=r;p=S(q-E);q=S(t-F);t=S(m-E);k=S(k-F);y=S(S(p*q)-S(t*k));m=S(V-D);V=S(k*m);k=S(X-D);q=S(V-S(q*k));m=S(S(k*t)-S(m*p));k=S(S(1)/S(_(S(S(q*q)+S(S(m*m)+S(y*y))))));t=S(y*k);P[i+412>>2]=t;m=S(m*k);P[i+408>>2]=m;k=S(q*k);P[i+416>>2]=k;P[i+420>>2]=S(E*k)+S(S(F*m)+S(D*t));p=S(K-H);q=S(v-R);t=S(r-H);k=S(U-R);r=S(S(p*q)-S(t*k));m=S(x-G);v=S(k*m);k=S(I-G);q=S(v-S(q*k));m=S(S(k*t)-S(m*p));k=S(S(1)/S(_(S(S(q*q)+S(S(m*m)+S(r*r))))));t=S(r*k);P[i+340>>2]=t;m=S(m*k);P[i+336>>2]=m;k=S(q*k);P[i+344>>2]=k;P[i+348>>2]=S(H*k)+S(S(R*m)+S(G*t));Z=Z-1|0;q=P[i+416>>2];t=P[i+408>>2];m=P[i+412>>2];k=P[i+420>>2];p=S(P[i+424>>2]+P[i+352>>2]);j:{if(!(!(S(S(S(S(P[i+296>>2]*q)+S(S(P[i+288>>2]*t)+S(P[i+292>>2]*m)))-k)-p)>S(0))|!(S(S(S(S(P[i+312>>2]*q)+S(S(P[i+304>>2]*t)+S(m*P[i+308>>2])))-k)-p)>S(0)))){h=0;if(S(S(S(S(P[i+328>>2]*q)+S(S(P[i+320>>2]*t)+S(m*P[i+324>>2])))-k)-p)>S(0)){break j}}q=P[i+344>>2];t=P[i+336>>2];m=P[i+340>>2];k=P[i+348>>2];h=!(S(S(S(S(P[i+368>>2]*q)+S(S(P[i+360>>2]*t)+S(P[i+364>>2]*m)))-k)-p)>S(0))|!(S(S(S(S(P[i+384>>2]*q)+S(S(P[i+376>>2]*t)+S(m*P[i+380>>2])))-k)-p)>S(0))|!(S(S(S(S(P[i+400>>2]*q)+S(S(P[i+392>>2]*t)+S(m*P[i+396>>2])))-k)-p)>S(0))}k:{if(!h){break k}o=i+8|0;n=0;w=0;l=fa-880|0;fa=l;h=i+288|0;m=P[h+64>>2];g=i+360|0;k=P[g+64>>2];j=L[g+60>>2];L[l+296>>2]=L[g+56>>2];L[l+300>>2]=j;j=L[g+52>>2];L[l+288>>2]=L[g+48>>2];L[l+292>>2]=j;u=Ll(g,h,l+560|0);j=0;l:{if(!u){break l}j=0;if((u|0)<=0){break l}x=S(k+m);m=P[l+300>>2];r=P[l+296>>2];p=P[l+292>>2];t=S(-1e3);q=P[l+288>>2];m:{while(1){n:{o:{j=(l+560|0)+(n<<4)|0;k=S(x-S(S(S(P[j+8>>2]*r)+S(S(P[j>>2]*q)+S(P[j+4>>2]*p)))-m));p:{if(!(k>=S(0))){break p}if(k>t){break o}if(!(S(k+S(1.1920928955078125e-7))>=t)){break p}L[l+(w<<2)>>2]=n;w=w+1|0}n=n+1|0;if((u|0)!=(n|0)){continue}k=t;if((w|0)<=0){break m}break n}L[l>>2]=n;w=1;t=k;n=n+1|0;if((u|0)!=(n|0)){continue}}break}n=0;if((w|0)!=1){$=w&-2;O=l+304|0;C=0;while(1){N=l+560|0;W=N+(L[l+(n<<2)>>2]<<4)|0;j=L[W+12>>2];u=O+(n<<4)|0;L[u+8>>2]=L[W+8>>2];L[u+12>>2]=j;j=L[W+4>>2];L[u>>2]=L[W>>2];L[u+4>>2]=j;j=n|1;u=O+(j<<4)|0;N=N+(L[l+(j<<2)>>2]<<4)|0;j=L[N+12>>2];L[u+8>>2]=L[N+8>>2];L[u+12>>2]=j;j=L[N+4>>2];L[u>>2]=L[N>>2];L[u+4>>2]=j;n=n+2|0;C=C+2|0;if(($|0)!=(C|0)){continue}break}}if(w&1){N=(l+560|0)+(L[l+(n<<2)>>2]<<4)|0;j=L[N+4>>2];u=(l+280|0)+(n<<4)|0;L[u+24>>2]=L[N>>2];L[u+28>>2]=j;j=L[N+12>>2];L[u+32>>2]=L[N+8>>2];L[u+36>>2]=j}t=k}j=0;if(!w){break l}P[l+296>>2]=-r;P[l+292>>2]=-p;P[l+288>>2]=-q;j=L[h+60>>2];L[l+16>>2]=L[h+56>>2];L[l+20>>2]=j;j=L[h+52>>2];L[l+8>>2]=L[h+48>>2];L[l+12>>2]=j;h=Ll(h,g,l+560|0);j=0;if(!h){break l}j=0;if((h|0)<=0){break l}v=P[l+20>>2];r=P[l+16>>2];p=P[l+12>>2];m=S(-1e3);s=0;q=P[l+8>>2];n=0;q:{while(1){r:{s:{g=(l+560|0)+(n<<4)|0;k=S(x-S(S(S(P[g+8>>2]*r)+S(S(P[g>>2]*q)+S(P[g+4>>2]*p)))-v));t:{if(!(k>=S(0))){break t}if(k>m){break s}if(!(S(k+S(1.1920928955078125e-7))>=m)){break t}L[(l+816|0)+(s<<2)>>2]=n;s=s+1|0}n=n+1|0;if((h|0)!=(n|0)){continue}k=m;if((s|0)<=0){break q}break r}L[l+816>>2]=n;s=1;m=k;n=n+1|0;if((h|0)!=(n|0)){continue}}break}n=0;if((s|0)!=1){N=s&-2;$=l+24|0;C=0;while(1){j=l+560|0;u=l+816|0;O=j+(L[u+(n<<2)>>2]<<4)|0;g=L[O+12>>2];h=$+(n<<4)|0;L[h+8>>2]=L[O+8>>2];L[h+12>>2]=g;g=L[O+4>>2];L[h>>2]=L[O>>2];L[h+4>>2]=g;g=n|1;h=$+(g<<4)|0;j=j+(L[u+(g<<2)>>2]<<4)|0;g=L[j+12>>2];L[h+8>>2]=L[j+8>>2];L[h+12>>2]=g;g=L[j+4>>2];L[h>>2]=L[j>>2];L[h+4>>2]=g;n=n+2|0;C=C+2|0;if((N|0)!=(C|0)){continue}break}}if(s&1){j=(l+560|0)+(L[(l+816|0)+(n<<2)>>2]<<4)|0;g=L[j+4>>2];h=l+(n<<4)|0;L[h+24>>2]=L[j>>2];L[h+28>>2]=g;g=L[j+12>>2];L[h+32>>2]=L[j+8>>2];L[h+36>>2]=g}m=k}j=0;if(!s){break l}h=o+24|0;u:{if(m>2]=m;g=L[l+20>>2];L[o+16>>2]=L[l+16>>2];L[o+20>>2]=g;g=L[l+12>>2];L[o+8>>2]=L[l+8>>2];L[o+12>>2]=g;L[o+4>>2]=s;qa(h,l+24|0,s<<4);break u}P[o>>2]=t;g=L[l+300>>2];L[o+16>>2]=L[l+296>>2];L[o+20>>2]=g;g=L[l+292>>2];L[o+8>>2]=L[l+288>>2];L[o+12>>2]=g;L[o+4>>2]=w;qa(h,l+304|0,w<<4)}j=1}fa=l+880|0;if(!j){break k}u=L[i+12>>2];if(!u){break k}while(1){k=P[i+8>>2];g=L[a+16>>2];ha[L[L[g>>2]+8>>2]](g,L[a+28>>2],L[a+24>>2]);g=L[a+16>>2];ha[L[L[g>>2]+12>>2]](g,L[a+36>>2],L[a+32>>2]);u=u-1|0;h=(i+(u<<4)|0)+32|0;j=L[a+12>>2];if(!j){g=L[a+4>>2];j=ha[L[L[g>>2]+12>>2]](g,L[b+8>>2],L[c+8>>2])|0;L[a+12>>2]=j}g=L[a+16>>2];L[g+4>>2]=j;ha[L[L[g>>2]+16>>2]](g,ja,h,S(-k));if(u){continue}break}}Y=Y+8|0;if(Z){continue}break}}ha[L[L[d>>2]+116>>2]](d);ha[L[L[e>>2]+116>>2]](e);fa=i+432|0;break h}ha[L[L[d>>2]+112>>2]](d);ha[L[L[e>>2]+112>>2]](e);Y=yb(f+520|0);L[f+576>>2]=0;L[f+580>>2]=0;L[f+524>>2]=1;L[f+584>>2]=0;L[f+588>>2]=0;L[f+592>>2]=0;L[f+596>>2]=0;L[f+600>>2]=0;L[f+604>>2]=0;L[f+608>>2]=0;L[f+612>>2]=0;L[f+616>>2]=0;L[f+620>>2]=0;L[Y>>2]=2036;ja=Re(f+624|0);L[ja>>2]=4548;L[f+716>>2]=4;L[f+800>>2]=17472;L[f+792>>2]=17392;L[f+784>>2]=17320;L[f+516>>2]=d;h=f+792|0;v:{if(ha[L[L[d>>2]+96>>2]](d)|0){break v}g=L[f+516>>2];h=f+800|0;if(ha[L[L[g>>2]+100>>2]](g)|0){break v}h=f+784|0}L[f+808>>2]=h;L[h+4>>2]=f+516;Z=yb(f+224|0);L[f+280>>2]=0;L[f+284>>2]=0;L[f+228>>2]=1;L[f+288>>2]=0;L[f+292>>2]=0;L[f+296>>2]=0;L[f+300>>2]=0;L[f+304>>2]=0;L[f+308>>2]=0;L[f+312>>2]=0;L[f+316>>2]=0;L[f+320>>2]=0;L[f+324>>2]=0;L[Z>>2]=2036;$=Re(f+328|0);L[$>>2]=4548;L[f+420>>2]=4;L[f+504>>2]=17472;L[f+496>>2]=17392;L[f+488>>2]=17320;L[f+220>>2]=e;h=f+496|0;w:{if(ha[L[L[e>>2]+96>>2]](e)|0){break w}g=L[f+220>>2];h=f+504|0;if(ha[L[L[g>>2]+100>>2]](g)|0){break w}h=f+488|0}L[f+512>>2]=h;L[h+4>>2]=f+220;N=ha[L[L[d>>2]+92>>2]](d)|0;u=ha[L[L[e>>2]+92>>2]](e)|0;C=L[f+816>>2];if(C){while(1){C=C-1|0;g=L[f+824>>2]+(C<<3)|0;h=L[g>>2];L[a+24>>2]=h;L[a+32>>2]=L[g+4>>2];g=L[f+808>>2];O=ha[L[L[g>>2]>>2]](g,h)|0;g=L[f+512>>2];w=ha[L[L[g>>2]>>2]](g,L[a+32>>2])|0;h=L[b+12>>2];g=L[h+12>>2];L[f+160>>2]=L[h+8>>2];L[f+164>>2]=g;g=L[h+4>>2];L[f+152>>2]=L[h>>2];L[f+156>>2]=g;g=L[h+28>>2];L[f+176>>2]=L[h+24>>2];L[f+180>>2]=g;g=L[h+20>>2];L[f+168>>2]=L[h+16>>2];L[f+172>>2]=g;g=L[h+44>>2];L[f+192>>2]=L[h+40>>2];L[f+196>>2]=g;g=L[h+36>>2];L[f+184>>2]=L[h+32>>2];L[f+188>>2]=g;g=L[h+60>>2];L[f+208>>2]=L[h+56>>2];L[f+212>>2]=g;g=L[h+52>>2];L[f+200>>2]=L[h+48>>2];L[f+204>>2]=g;h=L[c+12>>2];g=L[h+12>>2];L[f+96>>2]=L[h+8>>2];L[f+100>>2]=g;g=L[h+4>>2];L[f+88>>2]=L[h>>2];L[f+92>>2]=g;g=L[h+28>>2];L[f+112>>2]=L[h+24>>2];L[f+116>>2]=g;g=L[h+20>>2];L[f+104>>2]=L[h+16>>2];L[f+108>>2]=g;g=L[h+44>>2];L[f+128>>2]=L[h+40>>2];L[f+132>>2]=g;g=L[h+36>>2];L[f+120>>2]=L[h+32>>2];L[f+124>>2]=g;g=L[h+60>>2];L[f+144>>2]=L[h+56>>2];L[f+148>>2]=g;g=L[h+52>>2];L[f+136>>2]=L[h+48>>2];L[f+140>>2]=g;if(N){ha[L[L[d>>2]+132>>2]](f+24|0,d,L[a+24>>2]);t=P[f+944>>2];m=P[f+948>>2];k=P[f+952>>2];R=P[f+80>>2];y=P[f+72>>2];X=P[f+76>>2];z=P[f+904>>2];A=P[f+896>>2];B=P[f+900>>2];Q=P[f+920>>2];D=P[f+912>>2];E=P[f+916>>2];V=P[f+56>>2];I=P[f+24>>2];K=P[f+40>>2];U=P[f+60>>2];x=P[f+28>>2];v=P[f+44>>2];F=P[f+936>>2];r=P[f+64>>2];G=P[f+928>>2];p=P[f+32>>2];H=P[f+932>>2];q=P[f+48>>2];L[f+212>>2]=0;L[f+196>>2]=0;L[f+180>>2]=0;L[f+164>>2]=0;P[f+192>>2]=S(r*F)+S(S(p*G)+S(q*H));P[f+188>>2]=S(U*F)+S(S(x*G)+S(v*H));P[f+184>>2]=S(V*F)+S(S(I*G)+S(K*H));P[f+176>>2]=S(r*Q)+S(S(p*D)+S(q*E));P[f+172>>2]=S(U*Q)+S(S(x*D)+S(v*E));P[f+168>>2]=S(V*Q)+S(S(I*D)+S(K*E));P[f+160>>2]=S(r*z)+S(S(p*A)+S(B*q));P[f+156>>2]=S(U*z)+S(S(x*A)+S(B*v));P[f+152>>2]=S(V*z)+S(S(I*A)+S(K*B));P[f+208>>2]=k+S(S(R*F)+S(S(y*G)+S(H*X)));P[f+204>>2]=m+S(S(R*Q)+S(S(y*D)+S(E*X)));P[f+200>>2]=t+S(S(R*z)+S(S(y*A)+S(B*X)))}if(u){ha[L[L[e>>2]+132>>2]](f+24|0,e,L[a+32>>2]);t=P[f+880>>2];m=P[f+884>>2];k=P[f+888>>2];R=P[f+80>>2];y=P[f+72>>2];X=P[f+76>>2];z=P[f+840>>2];A=P[f+832>>2];B=P[f+836>>2];Q=P[f+856>>2];D=P[f+848>>2];E=P[f+852>>2];V=P[f+56>>2];I=P[f+24>>2];K=P[f+40>>2];U=P[f+60>>2];x=P[f+28>>2];v=P[f+44>>2];F=P[f+872>>2];r=P[f+64>>2];G=P[f+864>>2];p=P[f+32>>2];H=P[f+868>>2];q=P[f+48>>2];L[f+148>>2]=0;L[f+132>>2]=0;L[f+116>>2]=0;L[f+100>>2]=0;P[f+128>>2]=S(r*F)+S(S(p*G)+S(q*H));P[f+124>>2]=S(U*F)+S(S(x*G)+S(v*H));P[f+120>>2]=S(V*F)+S(S(I*G)+S(K*H));P[f+112>>2]=S(r*Q)+S(S(p*D)+S(q*E));P[f+108>>2]=S(U*Q)+S(S(x*D)+S(v*E));P[f+104>>2]=S(V*Q)+S(S(I*D)+S(K*E));P[f+96>>2]=S(r*z)+S(S(p*A)+S(B*q));P[f+92>>2]=S(U*z)+S(S(x*A)+S(B*v));P[f+88>>2]=S(V*z)+S(S(I*A)+S(K*B));P[f+144>>2]=k+S(S(R*F)+S(S(y*G)+S(H*X)));P[f+140>>2]=m+S(S(R*Q)+S(S(y*D)+S(E*X)));P[f+136>>2]=t+S(S(R*z)+S(S(y*A)+S(B*X)))}j=L[a+28>>2];h=L[a+24>>2];g=L[b+8>>2];L[f+28>>2]=O;L[f+32>>2]=g;L[f+24>>2]=b;L[f+40>>2]=oI(h,j);L[f+44>>2]=ga;L[f+36>>2]=f+152;j=L[a+36>>2];h=L[a+32>>2];g=L[c+8>>2];L[f+4>>2]=w;L[f+8>>2]=g;L[f>>2]=c;L[f+16>>2]=oI(h,j);L[f+20>>2]=ga;L[f+12>>2]=f+88;o=fa-48|0;fa=o;g=L[a+16>>2];ha[L[L[g>>2]+8>>2]](g,L[a+28>>2],L[a+24>>2]);g=L[a+16>>2];ha[L[L[g>>2]+12>>2]](g,L[a+36>>2],L[a+32>>2]);j=L[a+28>>2];h=L[a+24>>2];g=L[f+36>>2];W=L[f+32>>2];L[o+28>>2]=O;L[o+32>>2]=W;L[o+36>>2]=g;L[o+24>>2]=f+24;L[o+40>>2]=oI(h,j);L[o+44>>2]=ga;j=L[a+36>>2];h=L[a+32>>2];g=L[f+12>>2];O=L[f+8>>2];L[o+4>>2]=w;L[o+8>>2]=O;L[o+12>>2]=g;L[o>>2]=f;L[o+16>>2]=oI(h,j);L[o+20>>2]=ga;s=L[a+8>>2];if(!s){s=L[a+12>>2];if(!s){g=L[a+4>>2];s=ha[L[L[g>>2]+12>>2]](g,W,O)|0;L[a+12>>2]=s}L[L[a+16>>2]+4>>2]=s;g=L[a+4>>2];s=ha[L[L[g>>2]+8>>2]](g,o+24|0,o,s)|0;L[a+8>>2]=s}ha[L[L[s>>2]+8>>2]](s,o+24|0,o,L[a+20>>2],L[a+16>>2]);fa=o+48|0;if(C){continue}break}}ha[L[L[d>>2]+116>>2]](d);ha[L[L[e>>2]+116>>2]](e);Oa($);Oa(Z);Oa(ja);Oa(Y)}a=L[f+824>>2];if(!a|!M[f+828|0]){break a}if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}fa=f+960|0}function eB(a,b,c,d,e,f,g,h,i){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;var j=0,k=0,l=0,m=0,n=0,o=S(0),p=0,q=S(0),r=0,s=0,t=S(0),u=S(0),v=0,w=0,x=S(0),y=S(0),z=S(0),A=S(0),B=S(0),C=S(0),D=S(0),E=S(0),F=S(0),G=0,H=S(0),I=S(0),K=S(0),N=S(0),O=S(0),Q=S(0),U=S(0),V=S(0),W=S(0),X=S(0),Y=S(0),Z=S(0),$=S(0),aa=S(0),ba=0,ca=0,da=S(0),ea=S(0),ga=S(0),ia=S(0),ja=S(0),ka=S(0),la=S(0),ma=0,na=S(0),oa=S(0),ra=S(0),sa=S(0);p=fa-256|0;fa=p;L[a+188>>2]=-1;wa(2882);i=0;L[a+184>>2]=0;a:{if((c|0)<=0){break a}if(c>>>0>=4){m=c&-4;while(1){j=i<<2;L[L[j+b>>2]+212>>2]=-1;L[L[(j|4)+b>>2]+212>>2]=-1;L[L[(j|8)+b>>2]+212>>2]=-1;L[L[(j|12)+b>>2]+212>>2]=-1;i=i+4|0;n=n+4|0;if((m|0)!=(n|0)){continue}break}}m=c&3;if(!m){break a}while(1){L[L[(i<<2)+b>>2]+212>>2]=-1;i=i+1|0;k=k+1|0;if((m|0)!=(k|0)){continue}break}}r=L[a+12>>2];if((r|0)<=(c|0)){r=c+1|0;if(r){L[8513]=L[8513]+1;i=ha[L[6798]](R(r,244),16)|0}else{i=0}j=L[a+8>>2];if((j|0)>0){n=0;while(1){m=R(n,244);s=m+i|0;l=m+L[a+16>>2]|0;m=L[l+4>>2];L[s>>2]=L[l>>2];L[s+4>>2]=m;m=L[l+12>>2];L[s+8>>2]=L[l+8>>2];L[s+12>>2]=m;m=L[l+28>>2];L[s+24>>2]=L[l+24>>2];L[s+28>>2]=m;m=L[l+20>>2];L[s+16>>2]=L[l+16>>2];L[s+20>>2]=m;m=L[l+44>>2];L[s+40>>2]=L[l+40>>2];L[s+44>>2]=m;m=L[l+36>>2];L[s+32>>2]=L[l+32>>2];L[s+36>>2]=m;m=L[l+52>>2];L[s+48>>2]=L[l+48>>2];L[s+52>>2]=m;m=L[l+60>>2];L[s+56>>2]=L[l+56>>2];L[s+60>>2]=m;qa(s- -64|0,l- -64|0,180);n=n+1|0;if((j|0)!=(n|0)){continue}break}}m=L[a+16>>2];if(!(m?!m|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](m)}L[a+16>>2]=i;J[a+20|0]=1;L[a+12>>2]=r}pa(p+12|0,0,244);k=L[a+8>>2];if((k|0)<0){if((r|0)<0){i=L[a+16>>2];if(!(i?!i|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](i)}J[a+20|0]=1;L[a+12>>2]=0;L[a+16>>2]=0}m=p+76|0;while(1){j=L[a+16>>2]+R(k,244)|0;L[j>>2]=0;L[j+4>>2]=0;L[j+8>>2]=0;L[j+12>>2]=0;i=L[p+40>>2];L[j+24>>2]=L[p+36>>2];L[j+28>>2]=i;i=L[p+32>>2];L[j+16>>2]=L[p+28>>2];L[j+20>>2]=i;i=L[p+48>>2];L[j+32>>2]=L[p+44>>2];L[j+36>>2]=i;i=L[p+56>>2];L[j+40>>2]=L[p+52>>2];L[j+44>>2]=i;i=L[p+64>>2];L[j+48>>2]=L[p+60>>2];L[j+52>>2]=i;i=L[p+72>>2];L[j+56>>2]=L[p+68>>2];L[j+60>>2]=i;qa(j- -64|0,m,180);k=k+1|0;if(k){continue}break}}L[a+8>>2]=0;if((c|0)>0){k=0;while(1){i=(k<<2)+b|0;m=vb(a,L[i>>2],P[h+12>>2]);j=L[i>>2];if(!(!(M[j+236|0]&2)|!j|(!(M[j+504|0]&2)|P[j+344>>2]==S(0)))){i=L[a+16>>2];z=P[h+76>>2];H=P[j+336>>2];W=P[j+44>>2];X=P[j+40>>2];Y=P[j+36>>2];I=P[j+332>>2];Z=P[j+28>>2];$=P[j+12>>2];q=P[j+404>>2];aa=P[j+24>>2];D=P[j+8>>2];u=P[j+400>>2];E=P[j+20>>2];K=P[j+328>>2];x=P[j+4>>2];o=P[j+396>>2];L[p+24>>2]=0;A=S(S(1)/q);t=S(Z*A);B=S(S(1)/o);q=S(E*B);C=S(S(1)/u);o=S(aa*C);u=S(S(H*S(S(W*t)+S(S(Y*q)+S(X*o))))+S(S(K*S(S($*t)+S(S(x*q)+S(D*o))))+S(I*S(S(Z*t)+S(S(E*q)+S(aa*o))))));t=S(A*$);q=S(B*x);o=S(C*D);o=S(S(H*S(S(W*t)+S(S(Y*q)+S(X*o))))+S(S(K*S(S($*t)+S(S(x*q)+S(D*o))))+S(I*S(S(Z*t)+S(S(E*q)+S(o*aa))))));y=S(S(K*u)-S(I*o));P[p+20>>2]=y;F=S(H*o);t=S(A*W);q=S(B*Y);o=S(C*X);o=S(S(H*S(S(W*t)+S(S(Y*q)+S(X*o))))+S(S(K*S(S($*t)+S(S(x*q)+S(D*o))))+S(I*S(S(Z*t)+S(S(E*q)+S(aa*o))))));q=S(F-S(K*o));P[p+16>>2]=q;u=S(S(I*o)-S(u*H));P[p+12>>2]=u;o=S(S(y*y)+S(S(u*u)+S(q*q)));if(o>S(z*z)){o=S(S(S(1)/S(_(o)))*z);P[p+20>>2]=y*o;P[p+16>>2]=q*o;P[p+12>>2]=u*o}B=P[j+304>>2];C=P[j+272>>2];t=P[j+288>>2];q=P[j+300>>2];u=P[j+268>>2];o=P[j+284>>2];i=i+R(m,244)|0;x=P[p+20>>2];z=P[p+12>>2];y=P[p+16>>2];A=P[h+12>>2];P[i+224>>2]=P[i+224>>2]-S(S(S(P[j+296>>2]*x)+S(S(P[j+264>>2]*z)+S(y*P[j+280>>2])))*A);P[i+228>>2]=P[i+228>>2]-S(A*S(S(q*x)+S(S(u*z)+S(y*o))));P[i+232>>2]=P[i+232>>2]-S(A*S(S(B*x)+S(S(C*z)+S(y*t))))}k=k+1|0;if((k|0)!=(c|0)){continue}break}}b:{if((g|0)<=0){break b}i=0;if((g|0)!=1){m=g&-2;b=0;while(1){c=i<<2;j=L[c+f>>2];ha[L[L[j>>2]+8>>2]](j);L[j+36>>2]=0;c=L[(c|4)+f>>2];ha[L[L[c>>2]+8>>2]](c);L[c+36>>2]=0;i=i+2|0;b=b+2|0;if((m|0)!=(b|0)){continue}break}}if(!(g&1)){break b}b=L[(i<<2)+f>>2];ha[L[L[b>>2]+8>>2]](b);L[b+36>>2]=0}b=L[a+168>>2];if(!((g|0)<=(b|0)|L[a+172>>2]>=(g|0))){c:{if(!g){k=0;break c}L[8513]=L[8513]+1;k=ha[L[6798]](g<<3,16)|0;b=L[a+168>>2]}d:{if((b|0)<=0){break d}n=0;i=0;if(b>>>0>=4){s=b&-4;c=0;while(1){G=i<<3;l=G+k|0;j=G+L[a+176>>2]|0;m=L[j+4>>2];L[l>>2]=L[j>>2];L[l+4>>2]=m;m=G|8;l=m+k|0;j=m+L[a+176>>2]|0;m=L[j+4>>2];L[l>>2]=L[j>>2];L[l+4>>2]=m;m=G|16;l=m+k|0;j=m+L[a+176>>2]|0;m=L[j+4>>2];L[l>>2]=L[j>>2];L[l+4>>2]=m;m=G|24;l=m+k|0;j=m+L[a+176>>2]|0;m=L[j+4>>2];L[l>>2]=L[j>>2];L[l+4>>2]=m;i=i+4|0;c=c+4|0;if((s|0)!=(c|0)){continue}break}}j=b&3;if(!j){break d}while(1){b=i<<3;m=b+k|0;c=b+L[a+176>>2]|0;b=L[c+4>>2];L[m>>2]=L[c>>2];L[m+4>>2]=b;i=i+1|0;n=n+1|0;if((j|0)!=(n|0)){continue}break}}b=L[a+176>>2];if(!(b?!b|!M[a+180|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+176>>2]=k;J[a+180|0]=1;L[a+172>>2]=g}L[a+168>>2]=g;n=0;if((g|0)>0){k=0;while(1){m=L[a+176>>2];i=(k<<2)+f|0;b=L[i>>2];c=L[b+44>>2];if(c){L[c>>2]=0;L[c+4>>2]=0;L[c+56>>2]=0;L[c+60>>2]=0;L[c+48>>2]=0;L[c+52>>2]=0;L[c+40>>2]=0;L[c+44>>2]=0;L[c+32>>2]=0;L[c+36>>2]=0;L[c+24>>2]=0;L[c+28>>2]=0;L[c+16>>2]=0;L[c+20>>2]=0;L[c+8>>2]=0;L[c+12>>2]=0;b=L[i>>2]}c=m+(k<<3)|0;e:{if(M[b+20|0]){ha[L[L[b>>2]+16>>2]](b,c);b=L[c>>2];break e}L[c>>2]=0;L[c+4>>2]=0;b=0}n=b+n|0;k=k+1|0;if((k|0)!=(g|0)){continue}break}}b=L[a+48>>2];if(!((n|0)<=(b|0)|L[a+52>>2]>=(n|0))){f:{if(!n){k=0;break f}L[8513]=L[8513]+1;k=ha[L[6798]](R(n,152),16)|0;b=L[a+48>>2]}g:{if((b|0)<=0){break g}j=b&1;i=0;if((b|0)!=1){m=b&-2;b=0;while(1){c=R(i,152);qa(c+k|0,c+L[a+56>>2]|0,152);c=R(i|1,152);qa(c+k|0,c+L[a+56>>2]|0,152);i=i+2|0;b=b+2|0;if((m|0)!=(b|0)){continue}break}}if(!j){break g}b=R(i,152);qa(b+k|0,b+L[a+56>>2]|0,152)}b=L[a+56>>2];if(!(b?!b|!M[a+60|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+56>>2]=k;J[a+60|0]=1;L[a+52>>2]=n}L[a+48>>2]=n;if((g|0)>0){k=L[a+176>>2];while(1){m=ca<<3;ba=m+k|0;if(L[ba>>2]){G=(ca<<2)+f|0;k=L[G>>2];v=L[k+32>>2];i=L[a+56>>2];w=L[k+28>>2];s=vb(a,w,P[h+12>>2]);l=vb(a,v,P[h+12>>2]);c=L[k+24>>2];b=L[h+20>>2];j=(c|0)>0?c:b;if((j|0)>L[a+184>>2]){L[a+184>>2]=j}i=i+R(ma,152)|0;c=L[a+16>>2];n=0;if(L[ba>>2]>0){while(1){b=pa(i+R(n,152)|0,0,152);L[b+120>>2]=-8388609;L[b+124>>2]=2139095039;L[b+148>>2]=l;L[b+144>>2]=s;L[b+96>>2]=0;L[b+100>>2]=0;L[b+136>>2]=j;n=n+1|0;if((n|0)>2]){continue}break}b=L[h+20>>2]}j=R(s,244)+c|0;L[j+64>>2]=0;L[j+68>>2]=0;L[j+144>>2]=0;L[j+148>>2]=0;L[j+88>>2]=0;L[j+92>>2]=0;L[j+80>>2]=0;L[j+84>>2]=0;L[j+72>>2]=0;L[j+76>>2]=0;L[j+152>>2]=0;L[j+156>>2]=0;L[j+160>>2]=0;L[j+164>>2]=0;L[j+168>>2]=0;L[j+172>>2]=0;c=R(l,244)+c|0;L[c+88>>2]=0;L[c+92>>2]=0;L[c+80>>2]=0;L[c+84>>2]=0;L[c+72>>2]=0;L[c+76>>2]=0;L[c+64>>2]=0;L[c+68>>2]=0;L[c+144>>2]=0;L[c+148>>2]=0;L[c+152>>2]=0;L[c+156>>2]=0;L[c+160>>2]=0;L[c+164>>2]=0;L[c+168>>2]=0;L[c+172>>2]=0;P[p+12>>2]=S(1)/P[h+12>>2];o=P[h+32>>2];L[p+40>>2]=i+112;L[p+36>>2]=38;L[p+32>>2]=i+32;L[p+28>>2]=i+48;L[p+24>>2]=i;L[p+20>>2]=i+16;P[p+16>>2]=o;P[i+116>>2]=P[h+40>>2];o=P[h+4>>2];L[p+60>>2]=b;L[p+52>>2]=i+124;L[p+48>>2]=i+120;L[p+44>>2]=i+116;P[p+64>>2]=o;b=L[G>>2];ha[L[L[b>>2]+20>>2]](b,p+12|0);if(L[ba>>2]>0){r=0;while(1){o=P[L[G>>2]+16>>2];l=i+R(r,152)|0;if(o<=P[l+124>>2]){P[l+124>>2]=o}o=S(-o);if(o>=P[l+120>>2]){P[l+120>>2]=o}L[l+132>>2]=k;b=L[k+28>>2];D=P[b+272>>2];E=P[b+268>>2];x=P[b+548>>2];z=P[b+288>>2];y=P[b+280>>2];A=P[b+284>>2];B=P[b+552>>2];C=P[b+304>>2];t=P[b+296>>2];q=P[b+300>>2];u=P[b+544>>2];o=P[b+264>>2];F=P[l+8>>2];N=P[l>>2];O=P[l+4>>2];L[l+76>>2]=0;P[l+72>>2]=B*S(S(C*F)+S(S(t*N)+S(O*q)));P[l+68>>2]=x*S(S(z*F)+S(S(y*N)+S(O*A)));P[l+64>>2]=u*S(S(D*F)+S(S(o*N)+S(E*O)));b=L[k+32>>2];D=P[b+268>>2];E=P[b+272>>2];x=P[b+548>>2];z=P[b+288>>2];y=P[b+280>>2];A=P[b+284>>2];B=P[b+552>>2];C=P[b+304>>2];t=P[b+296>>2];q=P[b+300>>2];u=P[b+544>>2];o=P[b+264>>2];L[l+92>>2]=0;Q=P[l+40>>2];U=P[l+32>>2];V=P[l+36>>2];P[l+88>>2]=B*S(S(C*Q)+S(S(t*U)+S(q*V)));P[l+84>>2]=x*S(S(z*Q)+S(S(y*U)+S(V*A)));P[l+80>>2]=u*S(S(E*Q)+S(S(o*U)+S(D*V)));na=S(0);o=P[w+344>>2];da=P[l+24>>2];ea=P[l+16>>2];ga=P[l+20>>2];q=S(S(S(S(o*da)*da)+S(S(S(o*ea)*ea)+S(ga*S(o*ga))))+S(S(F*S(S(F*P[w+304>>2])+S(S(N*P[w+296>>2])+S(O*P[w+300>>2]))))+S(S(N*S(S(F*P[w+272>>2])+S(S(N*P[w+264>>2])+S(O*P[w+268>>2]))))+S(O*S(S(F*P[w+288>>2])+S(S(N*P[w+280>>2])+S(O*P[w+284>>2])))))));o=P[v+344>>2];ia=P[l+56>>2];ja=P[l+48>>2];ka=P[l+52>>2];o=S(S(q+S(S(S(o*ia)*ia)+S(S(S(o*ja)*ja)+S(ka*S(o*ka)))))+S(S(Q*S(S(Q*P[v+304>>2])+S(S(U*P[v+296>>2])+S(V*P[v+300>>2]))))+S(S(U*S(S(Q*P[v+272>>2])+S(S(U*P[v+264>>2])+S(V*P[v+268>>2]))))+S(V*S(S(Q*P[v+288>>2])+S(S(U*P[v+280>>2])+S(V*P[v+284>>2])))))));la=S(T(o))>S(1.1920928955078125e-7)?S(S(1)/o):S(0);P[l+108>>2]=la;oa=S(0);ra=S(0);sa=S(0);H=S(0);I=S(0);K=S(0);if(L[j+240>>2]){I=P[j+228>>2];H=P[j+224>>2];ra=P[j+212>>2];sa=P[j+208>>2];oa=P[j+216>>2];K=P[j+232>>2]}W=S(0);X=S(0);Y=S(0);Z=S(0);$=S(0);if(L[c+240>>2]){Z=P[c+228>>2];Y=P[c+224>>2];W=P[c+212>>2];X=P[c+208>>2];na=P[c+216>>2];$=P[c+232>>2]}aa=P[w+320>>2];D=P[w+312>>2];E=P[w+316>>2];x=P[w+336>>2];z=P[w+328>>2];y=P[w+332>>2];A=P[v+320>>2];B=P[v+312>>2];C=P[v+316>>2];t=P[v+336>>2];q=P[v+328>>2];u=P[v+332>>2];o=P[p+64>>2];L[l+100>>2]=0;P[l+112>>2]=S(la*P[l+112>>2])+S(la*S(S(0)-S(o*S(S(S(S(da*S(oa+aa))+S(S(ea*S(sa+D))+S(ga*S(ra+E))))+S(S(F*S(K+x))+S(S(N*S(H+z))+S(O*S(I+y)))))+S(S(S(ia*S(na+A))+S(S(ja*S(X+B))+S(ka*S(W+C))))+S(S(Q*S($+t))+S(S(U*S(Y+q))+S(V*S(Z+u)))))))));r=r+1|0;if((r|0)>2]){continue}break}}k=L[a+176>>2];b=L[m+k>>2]}else{b=0}ma=b+ma|0;ca=ca+1|0;if((ca|0)!=(g|0)){continue}break}}ha[L[L[a>>2]+28>>2]](a,d,e,h);j=L[a+68>>2];l=L[a+28>>2];n=L[a+128>>2];m=L[a+48>>2];if(!((n|0)>=(m|0)|(m|0)<=L[a+132>>2])){h:{if(!m){k=0;break h}L[8513]=L[8513]+1;k=ha[L[6798]](m<<2,16)|0;n=L[a+128>>2]}f=L[a+136>>2];i:{j:{if((n|0)>0){c=0;i=0;if(n>>>0>=4){d=n&-4;r=0;while(1){e=i<<2;L[e+k>>2]=L[e+f>>2];b=e|4;L[b+k>>2]=L[b+f>>2];b=e|8;L[b+k>>2]=L[b+f>>2];b=e|12;L[b+k>>2]=L[b+f>>2];i=i+4|0;r=r+4|0;if((d|0)!=(r|0)){continue}break}}d=n&3;if(d){while(1){b=i<<2;L[b+k>>2]=L[b+f>>2];i=i+1|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}if(M[a+140|0]){break j}break i}if(!f|!M[a+140|0]){break i}}if(f){L[8514]=L[8514]+1;ha[L[6799]](f)}}L[a+136>>2]=k;L[a+132>>2]=m;J[a+140|0]=1}L[a+128>>2]=m;k:{if(M[h+64|0]&16){n=L[a+108>>2];e=l<<1;if(!((n|0)>=(e|0)|(e|0)<=L[a+112>>2])){l:{if(!l){k=0;break l}L[8513]=L[8513]+1;k=ha[L[6798]](l<<3,16)|0;n=L[a+108>>2]}g=L[a+116>>2];m:{n:{if((n|0)>0){c=0;i=0;if(n>>>0>=4){d=n&-4;r=0;while(1){f=i<<2;L[f+k>>2]=L[f+g>>2];b=f|4;L[b+k>>2]=L[b+g>>2];b=f|8;L[b+k>>2]=L[b+g>>2];b=f|12;L[b+k>>2]=L[b+g>>2];i=i+4|0;r=r+4|0;if((d|0)!=(r|0)){continue}break}}d=n&3;if(d){while(1){b=i<<2;L[b+k>>2]=L[b+g>>2];i=i+1|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}if(M[a+120|0]){break n}break m}if(!g|!M[a+120|0]){break m}}if(g){L[8514]=L[8514]+1;ha[L[6799]](g)}}L[a+116>>2]=k;L[a+112>>2]=e;J[a+120|0]=1}L[a+108>>2]=e;break k}n=L[a+108>>2];if(!((l|0)<=(n|0)|(l|0)<=L[a+112>>2])){o:{if(!l){k=0;break o}L[8513]=L[8513]+1;k=ha[L[6798]](l<<2,16)|0;n=L[a+108>>2]}f=L[a+116>>2];p:{q:{if((n|0)>0){c=0;i=0;if(n>>>0>=4){d=n&-4;r=0;while(1){e=i<<2;L[e+k>>2]=L[e+f>>2];b=e|4;L[b+k>>2]=L[b+f>>2];b=e|8;L[b+k>>2]=L[b+f>>2];b=e|12;L[b+k>>2]=L[b+f>>2];i=i+4|0;r=r+4|0;if((d|0)!=(r|0)){continue}break}}d=n&3;if(d){while(1){b=i<<2;L[b+k>>2]=L[b+f>>2];i=i+1|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}if(M[a+120|0]){break q}break p}if(!f|!M[a+120|0]){break p}}if(f){L[8514]=L[8514]+1;ha[L[6799]](f)}}L[a+116>>2]=k;L[a+112>>2]=l;J[a+120|0]=1}L[a+108>>2]=l}n=L[a+148>>2];if(!((j|0)<=(n|0)|(j|0)<=L[a+152>>2])){r:{if(!j){k=0;break r}L[8513]=L[8513]+1;k=ha[L[6798]](j<<2,16)|0;n=L[a+148>>2]}f=L[a+156>>2];s:{t:{if((n|0)>0){c=0;i=0;if(n>>>0>=4){d=n&-4;r=0;while(1){e=i<<2;L[e+k>>2]=L[e+f>>2];b=e|4;L[b+k>>2]=L[b+f>>2];b=e|8;L[b+k>>2]=L[b+f>>2];b=e|12;L[b+k>>2]=L[b+f>>2];i=i+4|0;r=r+4|0;if((d|0)!=(r|0)){continue}break}}d=n&3;if(d){while(1){b=i<<2;L[b+k>>2]=L[b+f>>2];i=i+1|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}if(M[a+160|0]){break t}break s}if(!f|!M[a+160|0]){break s}}if(f){L[8514]=L[8514]+1;ha[L[6799]](f)}}L[a+156>>2]=k;L[a+152>>2]=j;J[a+160|0]=1}L[a+148>>2]=j;u:{if((m|0)<=0){break u}e=L[a+136>>2];b=0;i=0;if(m>>>0>=8){d=m&-8;n=0;while(1){L[e+(i<<2)>>2]=i;c=i|1;L[e+(c<<2)>>2]=c;c=i|2;L[e+(c<<2)>>2]=c;c=i|3;L[e+(c<<2)>>2]=c;c=i|4;L[e+(c<<2)>>2]=c;c=i|5;L[e+(c<<2)>>2]=c;c=i|6;L[e+(c<<2)>>2]=c;c=i|7;L[e+(c<<2)>>2]=c;i=i+8|0;n=n+8|0;if((d|0)!=(n|0)){continue}break}}c=m&7;if(!c){break u}while(1){L[e+(i<<2)>>2]=i;i=i+1|0;b=b+1|0;if((c|0)!=(b|0)){continue}break}}v:{if((l|0)<=0){break v}e=L[a+116>>2];b=0;i=0;if(l>>>0>=8){d=l&-8;n=0;while(1){L[e+(i<<2)>>2]=i;c=i|1;L[e+(c<<2)>>2]=c;c=i|2;L[e+(c<<2)>>2]=c;c=i|3;L[e+(c<<2)>>2]=c;c=i|4;L[e+(c<<2)>>2]=c;c=i|5;L[e+(c<<2)>>2]=c;c=i|6;L[e+(c<<2)>>2]=c;c=i|7;L[e+(c<<2)>>2]=c;i=i+8|0;n=n+8|0;if((d|0)!=(n|0)){continue}break}}c=l&7;if(!c){break v}while(1){L[e+(i<<2)>>2]=i;i=i+1|0;b=b+1|0;if((c|0)!=(b|0)){continue}break}}w:{if((j|0)<=0){break w}d=L[a+156>>2];b=0;i=0;if(j>>>0>=8){c=j&-8;n=0;while(1){L[d+(i<<2)>>2]=i;a=i|1;L[d+(a<<2)>>2]=a;a=i|2;L[d+(a<<2)>>2]=a;a=i|3;L[d+(a<<2)>>2]=a;a=i|4;L[d+(a<<2)>>2]=a;a=i|5;L[d+(a<<2)>>2]=a;a=i|6;L[d+(a<<2)>>2]=a;a=i|7;L[d+(a<<2)>>2]=a;i=i+8|0;n=n+8|0;if((c|0)!=(n|0)){continue}break}}a=j&7;if(!a){break w}while(1){L[d+(i<<2)>>2]=i;i=i+1|0;b=b+1|0;if((a|0)!=(b|0)){continue}break}}va();fa=p+256|0;return S(S(0))}function ag(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=S(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=S(0),t=0,u=S(0),v=0,w=S(0),x=0,y=S(0),z=S(0),A=S(0),B=S(0),C=S(0),D=0,E=0;i=fa-144|0;fa=i;a:{if((c|0)<=0){b=L[a+12>>2];if(!(b?!b|!M[a+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+12>>2]=0;J[a+16|0]=1;L[a+4>>2]=0;L[a+8>>2]=0;b=L[a+32>>2];if(!(b?!b|!M[a+36|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+32>>2]=0;J[a+36|0]=1;L[a+24>>2]=0;L[a+28>>2]=0;b=L[a+52>>2];if(!(b?!b|!M[a+56|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+52>>2]=0;J[a+56|0]=1;L[a+44>>2]=0;L[a+48>>2]=0;break a}J[i+112|0]=1;L[i+88>>2]=0;L[i+92>>2]=256;L[i+72>>2]=0;L[i+76>>2]=256;L[i+56>>2]=0;L[i+60>>2]=256;L[i+108>>2]=0;L[i+100>>2]=0;L[i+104>>2]=0;L[i+80>>2]=0;L[i+84>>2]=0;L[i+64>>2]=0;L[i+68>>2]=0;L[i+48>>2]=0;L[i+52>>2]=0;f=i+16|0;h=fa-48|0;fa=h;B=S(-1.0000000150474662e30);C=S(1.0000000150474662e30);j=c;b:{if((c|0)>0){c=b;y=S(1.0000000150474662e30);z=S(1.0000000150474662e30);A=S(-1.0000000150474662e30);u=S(-1.0000000150474662e30);while(1){w=P[c+8>>2];B=w>B?w:B;s=P[c+4>>2];A=s>A?s:A;k=P[c>>2];u=k>u?k:u;C=w>2]=0;L[f+28>>2]=0;P[f+24>>2]=S(B+C)*S(.5);P[f+20>>2]=S(A+y)*S(.5);P[f+16>>2]=S(u+z)*S(.5);u=S(u-z);s=S(A-y);c=u(c?s:u)?2:c;L[f+112>>2]=d;c=k>(c?u:s)?!c:2;c=(c|0)==(d|0)?d+(d>>>0>1?-2:1)|0:c;L[f+104>>2]=c;c=c+d|0;L[f+108>>2]=3-c;k=S(k*S(9788566967472434e-20));c=(d|0)==((4-c|0)%3|0);w=c?k:S(-k);P[f+8>>2]=w;k=S(s*S(9788566967472434e-20));s=c?k:S(-k);P[f+4>>2]=s;k=S(u*S(9788566967472434e-20));k=c?k:S(-k);P[f>>2]=k;J[h+44|0]=1;L[h+36>>2]=0;L[h+40>>2]=0;c:{d:{if((j|0)>0){L[8513]=L[8513]+1;L[h+40>>2]=ha[L[6798]](j<<4,16);J[h+44|0]=1;L[h+36>>2]=j;L[h+32>>2]=j;if((j|0)<=0){break c}y=w!=S(0)?S(S(1)/w):w;z=s!=S(0)?S(S(1)/s):s;A=k!=S(0)?S(S(1)/k):k;c=h+8|0;p=c+(L[f+104>>2]<<2)|0;m=c+(L[f+112>>2]<<2)|0;n=c+(L[f+108>>2]<<2)|0;B=P[f+24>>2];C=P[f+20>>2];u=P[f+16>>2];d=L[h+40>>2];g=0;while(1){w=P[b>>2];s=P[b+4>>2];k=P[b+8>>2];L[h+20>>2]=0;P[h+16>>2]=y*S(k-B);P[h+12>>2]=z*S(s-C);P[h+8>>2]=A*S(w-u);c=d+(g<<4)|0;k=P[n>>2];e:{if(S(T(k))>2]=l;k=P[m>>2];f:{if(S(T(k))>2]=l;k=P[p>>2];L[c+12>>2]=g;if(S(T(k))>2]=l;b=b+16|0;g=g+1|0;if((j|0)!=(g|0)){continue}break}break d}L[h+32>>2]=j;break c}if((j|0)<2){break c}Yj(h+28|0,h+8|0,0,j-1|0)}L[f+44>>2]=j;L[f+40>>2]=0;L[f+36>>2]=L[f+32>>2];b=L[f+84>>2];g:{if((j|0)<=(b|0)){break g}if((j|0)>L[f+88>>2]){h:{if(!j){g=0;n=b;break h}L[8513]=L[8513]+1;g=ha[L[6798]](j<<2,16)|0;n=L[f+84>>2]}i:{if((n|0)<=0){break i}m=0;c=0;if(n>>>0>=4){v=n&-4;d=0;while(1){l=c<<2;L[l+g>>2]=L[l+L[f+92>>2]>>2];p=l|4;L[p+g>>2]=L[p+L[f+92>>2]>>2];p=l|8;L[p+g>>2]=L[p+L[f+92>>2]>>2];p=l|12;L[p+g>>2]=L[p+L[f+92>>2]>>2];c=c+4|0;d=d+4|0;if((v|0)!=(d|0)){continue}break}}n=n&3;if(!n){break i}while(1){d=c<<2;L[d+g>>2]=L[d+L[f+92>>2]>>2];c=c+1|0;m=m+1|0;if((n|0)!=(m|0)){continue}break}}c=L[f+92>>2];if(!(c?!c|!M[f+96|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[f+92>>2]=g;J[f+96|0]=1;L[f+88>>2]=j}n=j+(b^-1)|0;d=j-b&3;if(d){c=0;while(1){L[L[f+92>>2]+(b<<2)>>2]=0;b=b+1|0;c=c+1|0;if((d|0)!=(c|0)){continue}break}}if(n>>>0<3){break g}while(1){c=b<<2;L[c+L[f+92>>2]>>2]=0;L[(c+L[f+92>>2]|0)+4>>2]=0;L[(c+L[f+92>>2]|0)+8>>2]=0;L[(c+L[f+92>>2]|0)+12>>2]=0;b=b+4|0;if((j|0)!=(b|0)){continue}break}}L[f+84>>2]=j;if((j|0)>0){while(1){d=L[f+40>>2];j:{if(d){break j}b=L[f+36>>2];k:{if(b){L[f+36>>2]=L[b+8>>2];d=L[b>>2];break k}L[8513]=L[8513]+1;b=ha[L[6798]](12,16)|0;c=L[f+44>>2];L[b+8>>2]=0;L[b+4>>2]=c;L[8513]=L[8513]+1;d=ha[L[6798]](R(c,112),16)|0;L[b>>2]=d;L[b+8>>2]=L[f+32>>2];L[f+32>>2]=b}v=L[b+4>>2];if((v|0)<=0){break j}p=0;m=0;c=d;if(v>>>0>=4){n=v&-4;g=0;b=d;r=0;while(1){c=b+448|0;m=g+4|0;L[b+336>>2]=(v|0)>(m|0)?c:0;L[b+224>>2]=(v|0)>(g|3)?b+336|0:0;L[b+112>>2]=(v|0)>(g|2)?b+224|0:0;L[b>>2]=(v|0)>(g|1)?b+112|0:0;g=m;b=c;r=r+4|0;if((n|0)!=(r|0)){continue}break}}b=v&3;if(!b){break j}while(1){n=c;c=c+112|0;m=m+1|0;L[n>>2]=(v|0)>(m|0)?c:0;p=p+1|0;if((b|0)!=(p|0)){continue}break}}L[f+40>>2]=L[d>>2];L[d+16>>2]=0;L[d+8>>2]=0;L[d+12>>2]=0;L[d>>2]=0;L[d+4>>2]=0;L[d+104>>2]=-1;c=L[h+40>>2]+(o<<4)|0;b=L[c+4>>2];L[d+88>>2]=L[c>>2];L[d+92>>2]=b;b=L[c+12>>2];L[d+96>>2]=L[c+8>>2];L[d+100>>2]=b;L[L[f+92>>2]+(o<<2)>>2]=d;o=o+1|0;if((j|0)!=(o|0)){continue}break}}b=L[h+40>>2];if(!(b?!b|!M[h+44|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[h+40>>2]=0;J[h+44|0]=1;L[h+32>>2]=0;L[h+36>>2]=0;L[f+116>>2]=0;L[f+120>>2]=0;L[f+60>>2]=R(j,6);L[f+56>>2]=0;L[f+100>>2]=-3;L[f+52>>2]=L[f+48>>2];L[h+16>>2]=0;L[h+20>>2]=0;L[h+8>>2]=0;L[h+12>>2]=0;bg(f,0,j,h+8|0);L[f+124>>2]=L[h+8>>2];b=L[h+40>>2];if(!(b?!b|!M[h+44|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}fa=h+48|0;if((L[a+4>>2]&L[a+8>>2])<0){b=L[a+12>>2];if(!(b?!b|!M[a+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+16|0]=1;L[a+8>>2]=0;L[a+12>>2]=0}L[a+4>>2]=0;b=L[a+24>>2];l:{if((b|0)>=0){break l}if(L[a+28>>2]<0){c=L[a+32>>2];if(!(c?!c|!M[a+36|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}J[a+36|0]=1;L[a+28>>2]=0;L[a+32>>2]=0}c=b;d=0-b&3;if(d){while(1){n=L[a+32>>2]+R(c,12)|0;L[n>>2]=0;L[n+4>>2]=0;L[n+8>>2]=0;c=c+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(b>>>0>4294967292){break l}while(1){d=R(c,12);b=d+L[a+32>>2]|0;L[b>>2]=0;L[b+4>>2]=0;L[b+8>>2]=0;b=d+L[a+32>>2]|0;L[b+20>>2]=0;L[b+12>>2]=0;L[b+16>>2]=0;b=d+L[a+32>>2]|0;L[b+32>>2]=0;L[b+24>>2]=0;L[b+28>>2]=0;b=d+L[a+32>>2]|0;L[b+44>>2]=0;L[b+36>>2]=0;L[b+40>>2]=0;c=c+4|0;if(c){continue}break}}L[a+24>>2]=0;c=L[a+44>>2];if((c|0)<0){b=L[a+52>>2];if(L[a+48>>2]<0){if(!(b?!b|!M[a+56|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+56|0]=1;L[a+48>>2]=0;L[a+52>>2]=0;b=0}d=b;b=c<<2;pa(d+b|0,0,0-b|0)}L[a+44>>2]=0;b=L[i+140>>2];m:{if(L[b+104>>2]>=0){break m}L[b+104>>2]=0;L[8513]=L[8513]+1;p=ha[L[6798]](4,16)|0;L[p>>2]=b;c=0;n=1;m=1;while(1){v=c;d=fa-16|0;fa=d;n:{o:{p:{q:{h=L[(c<<2)+p>>2];e=h;r:{if(L[e+100>>2]>=0){P[d+(L[i+124>>2]<<2)>>2]=L[e+88>>2];break r}s=ac(e+24|0);c=e+72|0;k=ac(c);b=L[e+100>>2];P[d+(L[i+124>>2]<<2)>>2]=s/k;if((b|0)<0){break q}}P[d+(L[i+128>>2]<<2)>>2]=L[e+92>>2];break p}s=ac(e+40|0);k=ac(c);b=L[e+100>>2];P[d+(L[i+128>>2]<<2)>>2]=s/k;if((b|0)<0){break o}}k=S(L[e+96>>2]);break n}k=S(ac(e+56|0)/ac(e+72|0))}P[d+(L[i+120>>2]<<2)>>2]=k;y=P[i+36>>2];z=P[i+40>>2];A=P[i+32>>2];B=P[i+16>>2];C=P[i+20>>2];u=P[i+24>>2];w=P[d>>2];s=P[d+4>>2];k=P[d+8>>2];L[i+12>>2]=0;P[i+8>>2]=z+S(k*u);P[i+4>>2]=y+S(s*C);P[i>>2]=A+S(w*B);fa=d+16|0;e=L[a+4>>2];s:{if((e|0)!=L[a+8>>2]){break s}q=e?e<<1:1;if((q|0)<=(e|0)){break s}t:{if(!q){d=0;break t}L[8513]=L[8513]+1;d=ha[L[6798]](q<<4,16)|0;e=L[a+4>>2]}u:{if((e|0)<=0){break u}c=0;if((e|0)!=1){l=e&-2;b=0;while(1){r=c<<4;j=r+d|0;f=r+L[a+12>>2]|0;g=L[f+4>>2];L[j>>2]=L[f>>2];L[j+4>>2]=g;g=L[f+12>>2];L[j+8>>2]=L[f+8>>2];L[j+12>>2]=g;g=r|16;j=g+d|0;r=g+L[a+12>>2]|0;g=L[r+4>>2];L[j>>2]=L[r>>2];L[j+4>>2]=g;g=L[r+12>>2];L[j+8>>2]=L[r+8>>2];L[j+12>>2]=g;c=c+2|0;b=b+2|0;if((l|0)!=(b|0)){continue}break}}if(!(e&1)){break u}b=c<<4;e=b+d|0;c=b+L[a+12>>2]|0;b=L[c+4>>2];L[e>>2]=L[c>>2];L[e+4>>2]=b;b=L[c+12>>2];L[e+8>>2]=L[c+8>>2];L[e+12>>2]=b}b=L[a+12>>2];if(!(b?!b|!M[a+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+12>>2]=d;J[a+16|0]=1;L[a+8>>2]=q;e=L[a+4>>2]}b=L[i+4>>2];c=L[a+12>>2]+(e<<4)|0;L[c>>2]=L[i>>2];L[c+4>>2]=b;b=L[i+12>>2];L[c+8>>2]=L[i+8>>2];L[c+12>>2]=b;L[a+4>>2]=L[a+4>>2]+1;b=-1;j=-1;f=L[h+8>>2];c=f;if(c){while(1){if(L[c+20>>2]<0){l=L[a+24>>2];e=l;v:{if((e|0)!=L[a+28>>2]){break v}x=e?l<<1:1;if((x|0)<=(e|0)){break v}w:{if(!x){o=0;d=l;break w}L[8513]=L[8513]+1;o=ha[L[6798]](R(x,12),16)|0;d=L[a+24>>2]}x:{if((d|0)<=0){break x}e=0;if((d|0)!=1){r=d&-2;g=0;while(1){h=R(e,12);t=h+L[a+32>>2]|0;q=h+o|0;h=L[t+4>>2];L[q>>2]=L[t>>2];L[q+4>>2]=h;L[q+8>>2]=L[t+8>>2];h=R(e|1,12);t=h+L[a+32>>2]|0;q=h+o|0;h=L[t+4>>2];L[q>>2]=L[t>>2];L[q+4>>2]=h;L[q+8>>2]=L[t+8>>2];e=e+2|0;g=g+2|0;if((r|0)!=(g|0)){continue}break}}if(!(d&1)){break x}d=R(e,12);g=d+L[a+32>>2]|0;e=d+o|0;d=L[g+4>>2];L[e>>2]=L[g>>2];L[e+4>>2]=d;L[e+8>>2]=L[g+8>>2]}d=L[a+32>>2];if(!(d?!d|!M[a+36|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[a+32>>2]=o;J[a+36|0]=1;L[a+28>>2]=x;e=L[a+24>>2]}d=L[a+32>>2]+R(e,12)|0;L[d>>2]=0;L[d+4>>2]=0;L[d+8>>2]=0;g=L[a+24>>2]+1|0;L[a+24>>2]=g;y:{if(L[a+28>>2]!=(g|0)){break y}x=g?g<<1:1;if((x|0)<=(g|0)){break y}z:{if(!x){o=0;break z}L[8513]=L[8513]+1;o=ha[L[6798]](R(x,12),16)|0;g=L[a+24>>2]}A:{if((g|0)<=0){break A}r=g&1;e=0;if((g|0)!=1){h=g&-2;g=0;while(1){d=R(e,12);t=d+L[a+32>>2]|0;q=d+o|0;d=L[t+4>>2];L[q>>2]=L[t>>2];L[q+4>>2]=d;L[q+8>>2]=L[t+8>>2];d=R(e|1,12);t=d+L[a+32>>2]|0;q=d+o|0;d=L[t+4>>2];L[q>>2]=L[t>>2];L[q+4>>2]=d;L[q+8>>2]=L[t+8>>2];e=e+2|0;g=g+2|0;if((h|0)!=(g|0)){continue}break}}if(!r){break A}d=R(e,12);g=d+L[a+32>>2]|0;e=d+o|0;d=L[g+4>>2];L[e>>2]=L[g>>2];L[e+4>>2]=d;L[e+8>>2]=L[g+8>>2]}d=L[a+32>>2];if(!(d?!d|!M[a+36|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[a+32>>2]=o;J[a+36|0]=1;L[a+28>>2]=x;g=L[a+24>>2]}d=L[a+32>>2]+R(g,12)|0;L[d>>2]=0;L[d+4>>2]=0;L[d+8>>2]=0;L[a+24>>2]=L[a+24>>2]+1;E=L[a+32>>2];L[c+20>>2]=l;r=l+1|0;L[L[c+8>>2]+20>>2]=r;o=E+R(l,12)|0;L[o+16>>2]=-1;L[o+4>>2]=1;x=L[c+12>>2];d=L[x+104>>2];B:{if((d|0)>=0){e=n;n=d;break B}L[x+104>>2]=n;C:{D:{if((m|0)!=(n|0)){break D}g=m?m<<1:1;if((m|0)>=(g|0)){break D}if(g){L[8513]=L[8513]+1;d=ha[L[6798]](g<<2,16)|0}else{d=0}E:{if((m|0)>0){t=m&3;q=0;e=0;if(m>>>0>=4){h=m&-4;m=0;while(1){D=e<<2;L[D+d>>2]=L[p+D>>2];l=D|4;L[l+d>>2]=L[p+l>>2];l=D|8;L[l+d>>2]=L[p+l>>2];l=D|12;L[l+d>>2]=L[p+l>>2];e=e+4|0;m=m+4|0;if((h|0)!=(m|0)){continue}break}}if(!t){break E}while(1){m=e<<2;L[m+d>>2]=L[m+p>>2];e=e+1|0;q=q+1|0;if((t|0)!=(q|0)){continue}break}break E}if(!p){break C}}if(p){L[8514]=L[8514]+1;ha[L[6799]](p)}break C}d=p;g=m}L[(n<<2)+d>>2]=x;e=n+1|0;p=d;m=g}L[o+8>>2]=n;L[(E+R(r,12)|0)+8>>2]=v;n=e}e=L[c+20>>2];d=e;if((b|0)>=0){L[L[a+32>>2]+R(e,12)>>2]=b-e;d=j}b=e;j=d;c=L[c>>2];if((f|0)!=(c|0)){continue}break}L[L[a+32>>2]+R(j,12)>>2]=b-j}c=v+1|0;if((n|0)>(c|0)){continue}break}m=0;while(1){j=L[L[(m<<2)+p>>2]+8>>2];e=j;if(e){while(1){c=L[e+20>>2];if((c|0)>=0){o=L[a+44>>2];F:{if((o|0)!=L[a+48>>2]){break F}l=o?o<<1:1;if((l|0)<=(o|0)){break F}G:{if(!l){d=0;break G}L[8513]=L[8513]+1;d=ha[L[6798]](l<<2,16)|0;o=L[a+44>>2]}f=L[a+52>>2];H:{I:{if((o|0)>0){g=0;c=0;if(o>>>0>=4){n=o&-4;r=0;while(1){h=c<<2;L[h+d>>2]=L[f+h>>2];b=h|4;L[b+d>>2]=L[b+f>>2];b=h|8;L[b+d>>2]=L[b+f>>2];b=h|12;L[b+d>>2]=L[b+f>>2];c=c+4|0;r=r+4|0;if((n|0)!=(r|0)){continue}break}}n=o&3;if(!n){break I}while(1){b=c<<2;L[b+d>>2]=L[b+f>>2];c=c+1|0;g=g+1|0;if((n|0)!=(g|0)){continue}break}break I}if(!f){break H}}if(f?M[a+56|0]:0){L[8514]=L[8514]+1;ha[L[6799]](f)}o=L[a+44>>2]}L[a+52>>2]=d;J[a+56|0]=1;L[a+48>>2]=l;c=L[e+20>>2]}L[L[a+52>>2]+(o<<2)>>2]=c;L[a+44>>2]=L[a+44>>2]+1;c=e;while(1){L[c+20>>2]=-1;c=L[L[c+8>>2]+4>>2];if((e|0)!=(c|0)){continue}break}}e=L[e>>2];if((j|0)!=(e|0)){continue}break}}b=(m|0)==(v|0);m=m+1|0;if(!b){continue}break}if(!p){break m}if(p){L[8514]=L[8514]+1;ha[L[6799]](p)}}a=L[i+108>>2];if(!(a?!a|!M[i+112|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[i+108>>2]=0;J[i+112|0]=1;L[i+100>>2]=0;L[i+104>>2]=0;while(1){b=L[i+80>>2];if(b){L[i+80>>2]=L[b+8>>2];a=L[b>>2];if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}continue}break}while(1){b=L[i+64>>2];if(b){L[i+64>>2]=L[b+8>>2];a=L[b>>2];if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}continue}break}while(1){b=L[i+48>>2];if(!b){break a}L[i+48>>2]=L[b+8>>2];a=L[b>>2];if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}continue}}fa=i+144|0}function bg(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;v=fa-16|0;fa=v;a:{b:{c:{d:{e:{f:{g=c-b|0;switch(g|0){case 1:break d;case 2:break e;case 0:break f;default:break b}}L[d>>2]=0;L[d+4>>2]=0;L[d+8>>2]=0;L[d+12>>2]=0;break a}c=L[L[a+92>>2]+(b<<2)>>2];b=c+112|0;e=L[c+88>>2];p=L[c+200>>2];l=(e|0)!=(p|0);g=L[c+204>>2];f=L[c+92>>2];g:{if(!(l|(g|0)!=(f|0))){if(L[c+96>>2]==L[c+208>>2]){break c}f=L[c+96>>2]>L[c+208>>2];g=(f?112:0)+c|0;L[g>>2]=g;g=f?b:c;L[g+4>>2]=g;L[d+4>>2]=g;L[d>>2]=g;b=f?c:b;f=g;c=f;break g}L[c+4>>2]=b;L[c>>2]=b;L[c+116>>2]=c;L[c+112>>2]=c;n=(f|0)<(g|0);i=n&(e|0)==(p|0);e=(e|0)<(p|0);p=i|e;L[d+4>>2]=p?b:c;L[d>>2]=p?c:b;g=n|e&(l&(f|0)==(g|0));f=g?b:c;g=g?c:b}L[d+12>>2]=f;L[d+8>>2]=g;a=cg(a,c,b);L[a+4>>2]=a;L[a>>2]=a;L[c+8>>2]=a;a=L[a+8>>2];L[a+4>>2]=a;L[a>>2]=a;L[b+8>>2]=a;break a}c=L[L[a+92>>2]+(b<<2)>>2]}L[c+8>>2]=0;L[c+4>>2]=c;L[c>>2]=c;L[d+12>>2]=c;L[d+8>>2]=c;L[d+4>>2]=c;L[d>>2]=c;break a}f=((g|0)/2|0)+b|0;g=f;h:{if((f|0)>=(c|0)){break h}p=L[a+92>>2];g=L[(p+(f<<2)|0)-4>>2];l=L[g+88>>2];n=L[g+96>>2];k=L[g+92>>2];g=f;while(1){e=L[p+(g<<2)>>2];if((l|0)!=L[e+88>>2]|(k|0)!=L[e+92>>2]|(n|0)!=L[e+96>>2]){break h}g=g+1|0;if((g|0)<(c|0)){continue}break}g=c}bg(a,b,f,d);L[v+8>>2]=0;L[v+12>>2]=0;L[v>>2]=0;L[v+4>>2]=0;bg(a,g,c,v);q=a;c=0;h=fa-128|0;fa=h;i:{if(!L[v+4>>2]){break i}if(!L[d+4>>2]){a=L[v+4>>2];L[d>>2]=L[v>>2];L[d+4>>2]=a;a=L[v+12>>2];L[d+8>>2]=L[v+8>>2];L[d+12>>2]=a;break i}L[q+100>>2]=L[q+100>>2]-1;L[h+124>>2]=0;L[h+120>>2]=0;w=d;a=L[d+12>>2];g=L[v+8>>2];j:{k:{l:{if(L[a+88>>2]!=L[g+88>>2]|L[a+92>>2]!=L[g+92>>2]){break l}b=L[g+4>>2];if((b|0)==(g|0)){L[h+124>>2]=a;b=L[g+8>>2];a=0;if(!b){break k}L[h+120>>2]=L[b+12>>2];a=0;break j}d=L[g>>2];L[b>>2]=d;L[d+4>>2]=b;if(L[v>>2]==(g|0)){a=d;f=L[a+88>>2];e=L[b+88>>2];i=a;m:{if((f|0)<(e|0)){break m}if((f|0)==(e|0)){i=d;if(L[a+92>>2]>2]){break m}}i=b}L[v>>2]=i}if(L[v+4>>2]!=(g|0)){break l}a=L[d+88>>2];g=L[b+88>>2];L[v+4>>2]=(a|0)>(g|0)|(a|0)==(g|0)&L[d+92>>2]>L[b+92>>2]?d:b}l=L[v>>2];n=L[w>>2];k=L[v+4>>2];i=L[w+4>>2];e=L[i+88>>2];b=L[k+88>>2]-e|0;n:{if((b|0)>0){a=k;d=i;while(1){g=a;f=L[a+92>>2];e=b;while(1){o:{b=L[d+92>>2];p=f-b|0;a=L[d+4>>2];if((a|0)==(d|0)){break o}o=L[a+92>>2]-b|0;if((o|0)>0){break o}b=L[a+88>>2];j=L[d+88>>2];if((b|0)!=(j|0)){j=b-j|0;if((j|0)>=0|(R(e,o)|0)>(R(j,p)|0)){break o}}e=L[g+88>>2]-b|0;d=a;continue}break}a=L[g+4>>2];if((g|0)==(a|0)){break n}o=L[a+88>>2];b=o-L[d+88>>2]|0;if((b|0)<=0){break n}f=L[a+92>>2]-f|0;if((f|0)>=0){break n}j=L[g+88>>2];if((j|0)==(o|0)){continue}o=o-j|0;if((o|0)>=0){break n}if((R(f,e)|0)<(R(o,p)|0)){continue}break}break n}if((b|0)<0){g=k;a=i;p:while(1){p=L[g+92>>2];f=L[g>>2];while(1){e=b;d=a;s=L[a+92>>2];o=p-s|0;q:{if((f|0)==(g|0)){break q}b=L[f+92>>2]-p|0;if((b|0)<0){break q}a=L[f+88>>2];j=L[g+88>>2];if((a|0)!=(j|0)){j=a-j|0;if((j|0)>=0|(R(b,e)|0)>(R(j,o)|0)){break q}}b=a-L[d+88>>2]|0;g=f;a=d;continue p}a=L[d>>2];if((d|0)==(a|0)){break n}j=L[a+88>>2];b=L[g+88>>2]-j|0;if((b|0)>=0){break n}s=L[a+92>>2]-s|0;if((s|0)<=0){break n}m=L[d+88>>2];if((m|0)==(j|0)){continue}j=j-m|0;if((j|0)>=0){break n}if((R(e,s)|0)<(R(j,o)|0)){continue}break}break}break n}b=L[i+92>>2];a=i;while(1){r:{d=a;a=L[a+4>>2];if((i|0)==(a|0)|(e|0)!=L[a+88>>2]){break r}g=b;b=L[a+92>>2];if((g|0)>=(b|0)){continue}}break}b=L[k+92>>2];a=k;while(1){g=a;a=L[a>>2];if((k|0)==(a|0)|(e|0)!=L[a+88>>2]){break n}f=b;b=L[a+92>>2];if((f|0)<=(b|0)){continue}break}}o=L[n+88>>2];e=o-L[l+88>>2]|0;s:{if((e|0)>0){b=l;a=n;while(1){f=b;o=L[b+92>>2];p=e;while(1){t:{e=L[a+92>>2];j=o-e|0;b=L[a>>2];if((b|0)==(a|0)){break t}s=L[b+92>>2]-e|0;if((s|0)>0){break t}m=L[a+88>>2];e=L[b+88>>2];if((m|0)!=(e|0)){m=m-e|0;if((m|0)>=0|(R(p,s)|0)>(R(j,m)|0)){break t}}p=e-L[f+88>>2]|0;a=b;continue}break}b=L[f>>2];if((f|0)==(b|0)){break s}s=L[b+88>>2];e=L[a+88>>2]-s|0;if((e|0)<=0){break s}o=L[b+92>>2]-o|0;if((o|0)>=0){break s}m=L[f+88>>2];if((m|0)==(s|0)){continue}s=m-s|0;if((s|0)>=0){break s}if((R(o,p)|0)<(R(j,s)|0)){continue}break}break s}if((e|0)<0){f=l;b=n;u:while(1){j=L[f+92>>2];p=L[f+4>>2];while(1){o=e;a=b;r=L[a+92>>2];s=j-r|0;v:{if((f|0)==(p|0)){break v}e=L[p+92>>2]-j|0;if((e|0)<0){break v}m=L[f+88>>2];b=L[p+88>>2];if((m|0)!=(b|0)){m=m-b|0;if((m|0)>=0|(R(e,o)|0)>(R(m,s)|0)){break v}}e=L[a+88>>2]-b|0;f=p;b=a;continue u}b=L[a+4>>2];if((b|0)==(a|0)){break s}m=L[b+88>>2];e=m-L[f+88>>2]|0;if((e|0)>=0){break s}r=L[b+92>>2]-r|0;if((r|0)<=0){break s}B=L[a+88>>2];if((B|0)==(m|0)){continue}m=B-m|0;if((m|0)>=0){break s}if((R(o,r)|0)<(R(m,s)|0)){continue}break}break}break s}e=L[n+92>>2];b=n;while(1){a=b;b=L[a>>2];if(!((n|0)==(b|0)|(o|0)!=L[b+88>>2])){f=e;e=L[b+92>>2];if((f|0)>=(e|0)){continue}}break}e=L[l+92>>2];b=l;while(1){f=b;b=L[b+4>>2];if((l|0)==(b|0)|(o|0)!=L[b+88>>2]){break s}p=e;e=L[b+92>>2];if((p|0)<=(e|0)){continue}break}}L[a+4>>2]=f;L[f>>2]=a;L[d>>2]=g;L[g+4>>2]=d;if(L[l+88>>2]>2]){L[w>>2]=l}if(L[k+88>>2]>=L[i+88>>2]){L[w+4>>2]=k}L[w+12>>2]=L[v+12>>2];L[h+124>>2]=d;a=1}L[h+120>>2]=g}o=L[h+120>>2];w:{if(a){s=L[h+124>>2];i=L[s+96>>2];r=L[o+96>>2];m=L[s+92>>2];l=L[o+92>>2];d=L[s+8>>2];u=L[s+88>>2];B=L[o+88>>2];L[h+80>>2]=0;a=r-i|0;e=a>>31;b=l-m|0;w=b>>31;p=mI(a,e,b,w);C=ga;f=B-u|0;g=0-f|0;j=g>>31;f=mI(g,j,f,f>>31);k=ga;D=mI(b,w,b,w);n=f-D|0;D=k-(ga+(f>>>0>>0)|0)|0;a=mI(g,j,a,e);k=0-a|0;E=0-(ga+((a|0)!=0)|0)|0;if(d){a=d;while(1){t=L[a+12>>2];x=L[t+92>>2];f=x-m|0;e=f;z=f>>31;y=mI(f,z,g,j);A=ga;H=L[t+88>>2];f=H-u|0;I=f>>31;J=mI(b,w,f,I);x:{if((y|0)!=(0-J|0)|(0-(ga+((J|0)!=0)|0)|0)!=(A|0)){break x}e=mI(p,C,e,z);z=ga;y=mI(k,E,f,I);e=y+e|0;f=ga+z|0;f=e>>>0>>0?f+1|0:f;A=e;z=L[t+96>>2];e=z-i|0;y=mI(n,D,e,e>>31);t=A+y|0;e=ga+f|0;e=t>>>0>>0?e+1|0:e;if(!t&(e|0)<=0|(e|0)<0){break x}y:{if(!c){break y}f=L[c+4>>2];if(L[c>>2]==(a|0)){if((a|0)!=(f|0)){break x}f=L[c+12>>2];e=L[L[a+8>>2]+12>>2];y=L[e+96>>2];t=L[f+96>>2]-y|0;A=L[e+92>>2];z=z-y|0;x=R(t,A-x|0)+R(z,L[f+92>>2]-A|0)|0;x=mI(x,x>>31,b,w);y=ga;e=L[e+88>>2];f=R(z,e-L[f+88>>2]|0)+R(t,H-e|0)|0;t=mI(f,f>>31,g,j);f=t+x|0;e=ga+y|0;e=f>>>0>>0?e+1|0:e;if(!f&(e|0)<=0|(e|0)<0){break y}break x}if((a|0)!=(f|0)){break x}}c=a}a=L[a>>2];if((d|0)!=(a|0)){continue}break}L[h+80>>2]=c}f=L[o+8>>2];d=0;L[h+56>>2]=0;if(f){a=f;while(1){m=L[a+12>>2];u=L[m+92>>2];e=u-l|0;i=e;t=e>>31;x=mI(e,t,g,j);z=ga;y=L[m+88>>2];e=y-B|0;A=e>>31;H=mI(b,w,e,A);z:{if((x|0)!=(0-H|0)|(0-(ga+((H|0)!=0)|0)|0)!=(z|0)){break z}i=mI(p,C,i,t);t=ga;x=mI(k,E,e,A);i=x+i|0;e=ga+t|0;e=i>>>0>>0?e+1|0:e;A=i;t=L[m+96>>2];i=t-r|0;m=mI(n,D,i,i>>31);i=A+m|0;e=ga+e|0;e=i>>>0>>0?e+1|0:e;if(!i&(e|0)<=0|(e|0)<0){break z}A:{if(!d){break A}if(L[d>>2]!=(a|0)){break z}if(L[d+4>>2]!=(a|0)){break A}e=L[d+12>>2];i=L[L[a+8>>2]+12>>2];x=L[i+96>>2];m=L[e+96>>2]-x|0;z=L[i+92>>2];t=t-x|0;u=R(m,z-u|0)+R(t,L[e+92>>2]-z|0)|0;u=mI(u,u>>31,b,w);x=ga;i=L[i+88>>2];e=R(t,i-L[e+88>>2]|0)+R(m,y-i|0)|0;m=mI(e,e>>31,g,j);i=m+u|0;e=ga+x|0;e=i>>>0>>0?e+1|0:e;if(!i&(e|0)<=0|(e|0)<0){break z}}d=a}a=L[a>>2];if((f|0)!=(a|0)){continue}break}L[h+56>>2]=d}B:{if(!(c|d)){break B}_j(q,s,o,h+80|0,h+56|0);a=L[h+80>>2];if(a){s=L[a+12>>2];L[h+124>>2]=s}a=L[h+56>>2];if(!a){break B}o=L[a+12>>2];L[h+120>>2]=o;r=L[o+96>>2];l=L[o+92>>2];B=L[o+88>>2]}m=r+1|0;break w}B=L[o+88>>2]+1|0;l=L[o+92>>2];s=L[h+124>>2];m=L[o+96>>2]}a=s;g=o;n=0;e=0;p=0;k=1;c=0;b=0;w=0;while(1){r=L[g+96>>2];d=L[a+96>>2];f=L[a+92>>2];j=L[g+92>>2];i=L[a+88>>2];u=L[g+88>>2];L[h+116>>2]=-1;j=j-f|0;L[h+108>>2]=j;r=r-d|0;L[h+112>>2]=r;u=u-i|0;L[h+104>>2]=u;E=l-f|0;f=m-d|0;d=R(E,r)-R(f,j)|0;C=d>>31;L[h+80>>2]=d;L[h+84>>2]=C;i=B-i|0;f=R(f,u)-R(i,r)|0;D=f>>31;L[h+88>>2]=f;L[h+92>>2]=D;i=R(i,j)-R(u,E)|0;E=i>>31;L[h+96>>2]=i;L[h+100>>2]=E;x=u>>31;t=mI(f,D,u,x);z=ga;y=j>>31;A=mI(d,C,j,y);L[h+72>>2]=t-A;L[h+76>>2]=z-(ga+(t>>>0>>0)|0);A=C;C=r>>31;d=mI(d,A,r,C);t=ga;u=mI(i,E,u,x);L[h+64>>2]=d-u;L[h+68>>2]=t-(ga+(d>>>0>>0)|0);d=mI(j,y,i,E);i=ga;f=mI(f,D,r,C);L[h+56>>2]=d-f;L[h+60>>2]=i-(ga+(d>>>0>>0)|0);L[h+48>>2]=0;L[h+40>>2]=0;L[h+44>>2]=0;L[h+32>>2]=0;L[h+36>>2]=0;d=h+104|0;f=h+80|0;i=h+56|0;j=Zj(q,0,a,d,f,i,h+32|0);L[h+24>>2]=0;L[h+16>>2]=0;L[h+20>>2]=0;L[h+8>>2]=0;L[h+12>>2]=0;i=Zj(q,1,g,d,f,i,h+8|0);if(!(i|j)){b=cg(q,a,g);L[b+4>>2]=b;L[b>>2]=b;L[a+8>>2]=b;a=L[b+8>>2];L[a+4>>2]=a;L[a>>2]=a;L[g+8>>2]=a;break i}r=j?-1:1;if(!(!j|!i)){r=yc(h+32|0,h+8|0)}C:{D:{E:{if(k&1){break E}if((r|0)>=0){if(L[h+16>>2]|L[h+20>>2]|L[h+24>>2]>=0){break E}k=n;g=e;f=c;d=b;break D}if(L[h+40>>2]|L[h+44>>2]|L[h+48>>2]>=0){break E}L[h+4>>2]=j;f=c;d=b;break C}f=cg(q,a,g);d=f;if(c){L[c+4>>2]=f;d=b}L[f>>2]=c;k=L[f+8>>2];g=k;if(n){L[n>>2]=k;g=e}L[k+4>>2]=n}L[h+4>>2]=j;L[h>>2]=i;c=i;if(!r){_j(q,L[h+124>>2],L[h+120>>2],h+4|0,h);c=L[h>>2]}if(!(!c|(r|0)<0)){F:{G:{if(F){a=L[F>>2];if((i|0)!=(a|0)){while(1){n=L[a+8>>2];b=0;l=0;e=L[a>>2];if((e|0)!=(a|0)){L[e+4>>2]=L[a+4>>2];L[L[a+4>>2]>>2]=e;l=e}L[L[n+12>>2]+8>>2]=l;l=L[n>>2];if((l|0)!=(n|0)){L[l+4>>2]=L[n+4>>2];L[L[n+4>>2]>>2]=l;b=l}L[L[a+12>>2]+8>>2]=b;L[a+16>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0;L[a>>2]=0;L[a+4>>2]=0;L[a>>2]=L[q+56>>2];L[q+56>>2]=a;L[n+16>>2]=0;L[n+8>>2]=0;L[n+12>>2]=0;L[n>>2]=0;L[n+4>>2]=0;L[n>>2]=L[q+56>>2];L[q+56>>2]=n;L[q+116>>2]=L[q+116>>2]-1;a=e;if((i|0)!=(a|0)){continue}break}}if(k){break G}break F}if(!k){p=i;break F}F=L[i+4>>2];p=g}L[F>>2]=g;L[g+4>>2]=F;L[k>>2]=i;L[i+4>>2]=k;c=L[h>>2];g=0}e=g;a=L[h+120>>2];m=L[a+96>>2];l=L[a+92>>2];B=L[a+88>>2];L[h+120>>2]=L[c+12>>2];F=L[c+8>>2];n=0;break C}n=k;e=g}H:{I:{if((r|0)<=0){r=L[h+4>>2];if(r){break I}}a=L[h+124>>2];break H}J:{K:{if(G){a=L[G+4>>2];if((j|0)!=(a|0)){while(1){k=L[a+8>>2];l=L[a+4>>2];b=0;c=0;g=L[a>>2];if((g|0)!=(a|0)){L[g+4>>2]=l;L[L[a+4>>2]>>2]=g;c=g}L[L[k+12>>2]+8>>2]=c;c=L[k>>2];if((c|0)!=(k|0)){L[c+4>>2]=L[k+4>>2];L[L[k+4>>2]>>2]=c;b=c}L[L[a+12>>2]+8>>2]=b;L[a+16>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0;L[a>>2]=0;L[a+4>>2]=0;L[a>>2]=L[q+56>>2];L[q+56>>2]=a;L[k+16>>2]=0;L[k+8>>2]=0;L[k+12>>2]=0;L[k>>2]=0;L[k+4>>2]=0;L[k>>2]=L[q+56>>2];L[q+56>>2]=k;L[q+116>>2]=L[q+116>>2]-1;a=l;if((j|0)!=(a|0)){continue}break}}if(!f){break J}L[d>>2]=G;a=G+4|0;break K}if(!f){w=j;break J}a=L[j>>2];L[d>>2]=a;w=d;a=a+4|0}L[a>>2]=d;L[j>>2]=f;L[f+4>>2]=j;d=0;r=L[h+4>>2]}a=L[h+124>>2];m=L[a+96>>2];l=L[a+92>>2];B=L[a+88>>2];a=L[r+12>>2];L[h+124>>2]=a;G=L[r+8>>2];f=0}g=L[h+120>>2];if((a|0)!=(s|0)|(o|0)!=(g|0)){k=0;c=f;b=d;continue}else{L:{if(!G){L[d>>2]=f;L[f+4>>2]=d;L[L[h+124>>2]+8>>2]=f;break L}a=L[G+4>>2];if((w|0)!=(a|0)){while(1){k=L[a+8>>2];g=L[a+4>>2];b=0;c=L[a>>2];if((c|0)!=(a|0)){L[c+4>>2]=g;L[L[a+4>>2]>>2]=c;b=c}L[L[k+12>>2]+8>>2]=b;l=L[k>>2];M:{if((k|0)==(l|0)){l=0;break M}L[l+4>>2]=L[k+4>>2];L[L[k+4>>2]>>2]=l}L[L[a+12>>2]+8>>2]=l;L[a+16>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0;L[a>>2]=0;L[a+4>>2]=0;L[a>>2]=L[q+56>>2];L[q+56>>2]=a;L[k+16>>2]=0;L[k+8>>2]=0;L[k+12>>2]=0;L[k>>2]=0;L[k+4>>2]=0;L[k>>2]=L[q+56>>2];L[q+56>>2]=k;L[q+116>>2]=L[q+116>>2]-1;a=g;if((w|0)!=(a|0)){continue}break}}if(!f){break L}L[d>>2]=G;L[G+4>>2]=d;L[w>>2]=f;L[f+4>>2]=w}if(!F){L[n>>2]=e;L[e+4>>2]=n;L[L[h+120>>2]+8>>2]=n;break i}a=L[F>>2];if((p|0)!=(a|0)){while(1){c=L[a+8>>2];l=0;b=L[a>>2];if((b|0)!=(a|0)){L[b+4>>2]=L[a+4>>2];L[L[a+4>>2]>>2]=b;l=b}L[L[c+12>>2]+8>>2]=l;l=L[c>>2];N:{if((c|0)==(l|0)){l=0;break N}L[l+4>>2]=L[c+4>>2];L[L[c+4>>2]>>2]=l}L[L[a+12>>2]+8>>2]=l;L[a+16>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0;L[a>>2]=0;L[a+4>>2]=0;L[a>>2]=L[q+56>>2];L[q+56>>2]=a;L[c+16>>2]=0;L[c+8>>2]=0;L[c+12>>2]=0;L[c>>2]=0;L[c+4>>2]=0;L[c>>2]=L[q+56>>2];L[q+56>>2]=c;L[q+116>>2]=L[q+116>>2]-1;a=b;if((p|0)!=(a|0)){continue}break}}if(!n){break i}L[F>>2]=e;L[e+4>>2]=F;L[n>>2]=p;L[p+4>>2]=n}break}}fa=h+128|0}fa=v+16|0}function Xg(a,b,c){var d=0,e=0,f=S(0),g=0,h=0,i=0,j=0,k=0,l=S(0),m=0,n=S(0),o=S(0),p=S(0),q=0,r=S(0),s=S(0),t=S(0),u=S(0),v=0,w=S(0),x=0,y=0,z=0,A=0,B=S(0),C=0,D=S(0),E=0,F=0,G=0,H=0,I=S(0),O=S(0);m=fa-32|0;fa=m;A=L[a+56>>2];a:{if((c-b|0)==1){b:{if(M[a+60|0]){b=L[a+116>>2]+(b<<4)|0;e=L[b+4>>2];c=L[a+136>>2]+(A<<4)|0;L[c>>2]=L[b>>2];L[c+4>>2]=e;break b}b=L[a+76>>2]+(b<<6)|0;e=L[b+4>>2];c=L[a+96>>2]+(A<<6)|0;L[c>>2]=L[b>>2];L[c+4>>2]=e;e=L[b+60>>2];L[c+56>>2]=L[b+56>>2];L[c+60>>2]=e;e=L[b+52>>2];L[c+48>>2]=L[b+48>>2];L[c+52>>2]=e;e=L[b+44>>2];L[c+40>>2]=L[b+40>>2];L[c+44>>2]=e;e=L[b+36>>2];L[c+32>>2]=L[b+32>>2];L[c+36>>2]=e;e=L[b+28>>2];L[c+24>>2]=L[b+24>>2];L[c+28>>2]=e;e=L[b+20>>2];L[c+16>>2]=L[b+16>>2];L[c+20>>2]=e}e=L[b+12>>2];L[c+8>>2]=L[b+8>>2];L[c+12>>2]=e;L[a+56>>2]=L[a+56>>2]+1;break a}k=c;e=b;g=c-e|0;c:{d:{e:{if((c|0)<=(e|0)){D=S(g|0);break e}f:{if(!M[a+60|0]){d=L[a+76>>2];c=b;while(1){h=d+(c<<6)|0;w=S(w+S(S(P[h+16>>2]+P[h>>2])*S(.5)));r=S(r+S(S(P[h+24>>2]+P[h+8>>2])*S(.5)));s=S(s+S(S(P[h+20>>2]+P[h+4>>2])*S(.5)));c=c+1|0;if((k|0)!=(c|0)){continue}break}break f}t=P[a+12>>2];o=P[a+8>>2];p=P[a+44>>2];l=P[a+40>>2];d=L[a+116>>2];n=P[a+4>>2];f=P[a+36>>2];c=b;while(1){h=d+(c<<4)|0;w=S(w+S(S(S(S(S(N[h+6>>1])/f)+n)+S(S(S(N[h>>1])/f)+n))*S(.5)));r=S(r+S(S(S(S(S(N[h+10>>1])/p)+t)+S(S(S(N[h+4>>1])/p)+t))*S(.5)));s=S(s+S(S(S(S(S(N[h+8>>1])/l)+o)+S(S(S(N[h+2>>1])/l)+o))*S(.5)));c=c+1|0;if((k|0)!=(c|0)){continue}break}}D=S(g|0);if((e|0)<(k|0)){break d}}r=S(0);s=S(0);break c}f=S(S(1)/D);I=S(f*r);O=S(f*s);w=S(f*w);s=S(0);if(!M[a+60|0]){c=L[a+76>>2];r=S(0);while(1){d=c+(e<<6)|0;f=S(S(S(P[d+16>>2]+P[d>>2])*S(.5))-w);u=S(u+S(f*f));f=S(S(S(P[d+24>>2]+P[d+8>>2])*S(.5))-I);s=S(s+S(f*f));f=S(S(S(P[d+20>>2]+P[d+4>>2])*S(.5))-O);r=S(r+S(f*f));e=e+1|0;if((k|0)!=(e|0)){continue}break}break c}B=P[a+12>>2];t=P[a+8>>2];o=P[a+44>>2];p=P[a+40>>2];c=L[a+116>>2];l=P[a+4>>2];n=P[a+36>>2];r=S(0);while(1){d=c+(e<<4)|0;f=S(S(S(S(S(S(N[d+6>>1])/n)+l)+S(S(S(N[d>>1])/n)+l))*S(.5))-w);u=S(u+S(f*f));f=S(S(S(S(S(S(N[d+10>>1])/o)+B)+S(S(S(N[d+4>>1])/o)+B))*S(.5))-I);s=S(s+S(f*f));f=S(S(S(S(S(S(N[d+8>>1])/p)+t)+S(S(S(N[d+2>>1])/p)+t))*S(.5))-O);r=S(r+S(f*f));e=e+1|0;if((k|0)!=(e|0)){continue}break}}l=S(S(1)/S(D+S(-1)));n=S(l*u);f=S(l*r);c=n(c?f:n)?2:c;r=S(0);s=S(0);u=S(0);i=fa-96|0;L[i+28>>2]=0;y=k-b|0;d=(b|0)>=(k|0);g:{if(d){break g}if(!M[a+60|0]){e=L[a+76>>2];c=b;while(1){h=e+(c<<6)|0;u=S(S(S(P[h+16>>2]+P[h>>2])*S(.5))+u);r=S(S(S(P[h+24>>2]+P[h+8>>2])*S(.5))+r);s=S(S(S(P[h+20>>2]+P[h+4>>2])*S(.5))+s);c=c+1|0;if((k|0)!=(c|0)){continue}break}break g}t=P[a+12>>2];o=P[a+8>>2];p=P[a+44>>2];l=P[a+40>>2];e=L[a+116>>2];n=P[a+4>>2];f=P[a+36>>2];c=b;while(1){h=e+(c<<4)|0;u=S(S(S(S(S(S(N[h+6>>1])/f)+n)+S(S(S(N[h>>1])/f)+n))*S(.5))+u);r=S(S(S(S(S(S(N[h+10>>1])/p)+t)+S(S(S(N[h+4>>1])/p)+t))*S(.5))+r);s=S(S(S(S(S(S(N[h+8>>1])/l)+o)+S(S(S(N[h+2>>1])/l)+o))*S(.5))+s);c=c+1|0;if((k|0)!=(c|0)){continue}break}}f=S(S(1)/S(y|0));P[i+24>>2]=f*r;P[i+20>>2]=f*s;P[i+16>>2]=f*u;e=b;if(!d){c=g<<2;B=P[c+(i+16|0)>>2];z=c+i|0;c=b;while(1){d=M[a+60|0];h:{if(d){g=L[a+116>>2]+(c<<4)|0;t=P[a+44>>2];o=P[a+12>>2];r=S(S(S(N[g+4>>1])/t)+o);p=P[a+40>>2];l=P[a+8>>2];s=S(S(S(N[g+2>>1])/p)+l);n=P[a+36>>2];f=P[a+4>>2];u=S(S(S(N[g>>1])/n)+f);w=S(S(S(N[g+10>>1])/t)+o);D=S(S(S(N[g+8>>1])/p)+l);f=S(S(S(N[g+6>>1])/n)+f);break h}g=L[a+76>>2]+(c<<6)|0;r=P[g+8>>2];s=P[g+4>>2];u=P[g>>2];w=P[g+24>>2];D=P[g+20>>2];f=P[g+16>>2]}L[i+12>>2]=0;P[i+8>>2]=S(w+r)*S(.5);P[i+4>>2]=S(D+s)*S(.5);P[i>>2]=S(f+u)*S(.5);if(B>2]){i:{if(d){g=L[a+116>>2];q=g+(c<<4)|0;h=q;d=L[h+12>>2];L[i+40>>2]=L[h+8>>2];L[i+44>>2]=d;d=L[h+4>>2];L[i+32>>2]=L[h>>2];L[i+36>>2]=d;d=g;g=e<<4;h=d+g|0;d=L[h+4>>2];L[q>>2]=L[h>>2];L[q+4>>2]=d;d=L[h+12>>2];L[q+8>>2]=L[h+8>>2];L[q+12>>2]=d;d=L[i+36>>2];g=g+L[a+116>>2]|0;L[g>>2]=L[i+32>>2];L[g+4>>2]=d;d=L[i+44>>2];L[g+8>>2]=L[i+40>>2];L[g+12>>2]=d;break i}h=L[a+76>>2];j=h+(c<<6)|0;d=L[j+60>>2];L[i+88>>2]=L[j+56>>2];L[i+92>>2]=d;d=L[j+52>>2];L[i+80>>2]=L[j+48>>2];L[i+84>>2]=d;d=L[j+44>>2];L[i+72>>2]=L[j+40>>2];L[i+76>>2]=d;d=L[j+36>>2];q=i- -64|0;g=q;L[g>>2]=L[j+32>>2];L[g+4>>2]=d;d=L[j+28>>2];L[i+56>>2]=L[j+24>>2];L[i+60>>2]=d;d=L[j+20>>2];L[i+48>>2]=L[j+16>>2];L[i+52>>2]=d;d=L[j+12>>2];L[i+40>>2]=L[j+8>>2];L[i+44>>2]=d;d=L[j+4>>2];L[i+32>>2]=L[j>>2];L[i+36>>2]=d;g=e<<6;h=g+h|0;d=L[h+4>>2];L[j>>2]=L[h>>2];L[j+4>>2]=d;d=L[h+12>>2];L[j+8>>2]=L[h+8>>2];L[j+12>>2]=d;d=L[h+20>>2];L[j+16>>2]=L[h+16>>2];L[j+20>>2]=d;d=L[h+28>>2];L[j+24>>2]=L[h+24>>2];L[j+28>>2]=d;d=L[h+36>>2];L[j+32>>2]=L[h+32>>2];L[j+36>>2]=d;d=L[h+44>>2];L[j+40>>2]=L[h+40>>2];L[j+44>>2]=d;d=L[h+52>>2];L[j+48>>2]=L[h+48>>2];L[j+52>>2]=d;d=L[h+60>>2];L[j+56>>2]=L[h+56>>2];L[j+60>>2]=d;d=L[i+36>>2];g=g+L[a+76>>2]|0;L[g>>2]=L[i+32>>2];L[g+4>>2]=d;d=L[i+44>>2];L[g+8>>2]=L[i+40>>2];L[g+12>>2]=d;d=L[i+52>>2];L[g+16>>2]=L[i+48>>2];L[g+20>>2]=d;d=L[i+60>>2];L[g+24>>2]=L[i+56>>2];L[g+28>>2]=d;d=L[q+4>>2];L[g+32>>2]=L[q>>2];L[g+36>>2]=d;d=L[i+76>>2];L[g+40>>2]=L[i+72>>2];L[g+44>>2]=d;d=L[i+84>>2];L[g+48>>2]=L[i+80>>2];L[g+52>>2]=d;d=L[i+92>>2];L[g+56>>2]=L[i+88>>2];L[g+60>>2]=d}e=e+1|0}c=c+1|0;if((k|0)!=(c|0)){continue}break}}c=(y>>1)+b|0;d=c;c=(y|0)/3|0;j=(b+c|0)>=(e|0)?d:(k+(c^-1)|0)<=(e|0)?d:e;E=L[a+56>>2];j:{if(M[a+60|0]){t=P[a+40>>2];o=P[a+8>>2];p=P[a+24>>2];l=P[a+44>>2];n=P[a+12>>2];f=P[a+28>>2];c=L[a+136>>2]+(E<<4)|0;B=S(S(P[a+20>>2]-P[a+4>>2])*P[a+36>>2]);k:{if(B=S(0)){d=~~B>>>0;break k}d=0}K[c>>1]=d&65534;f=S(S(f-n)*l);l:{if(f=S(0)){d=~~f>>>0;break l}d=0}K[c+4>>1]=d&65534;f=S(S(p-o)*t);m:{if(f=S(0)){d=~~f>>>0;break m}d=0}K[c+2>>1]=d&65534;break j}c=L[a+24>>2];e=L[a+96>>2]+(E<<6)|0;L[e>>2]=L[a+20>>2];L[e+4>>2]=c;c=L[a+32>>2];L[e+8>>2]=L[a+28>>2];L[e+12>>2]=c}c=L[a+56>>2];n:{if(M[a+60|0]){l=P[a+40>>2];o=P[a+8>>2];n=P[a+44>>2];p=P[a+12>>2];c=L[a+136>>2]+(c<<4)|0;f=P[a+4>>2];f=S(S(S(f-f)*P[a+36>>2])+S(1));o:{if(f=S(0)){d=~~f>>>0;break o}d=0}K[c+6>>1]=d|1;f=S(S(S(p-p)*n)+S(1));p:{if(f=S(0)){d=~~f>>>0;break p}d=0}K[c+10>>1]=d|1;f=S(S(S(o-o)*l)+S(1));q:{if(f=S(0)){d=~~f>>>0;break q}d=0}K[c+8>>1]=d|1;break n}e=L[a+96>>2]+(c<<6)|0;c=L[a+8>>2];L[e+16>>2]=L[a+4>>2];L[e+20>>2]=c;c=L[a+16>>2];L[e+24>>2]=L[a+12>>2];L[e+28>>2]=c}if((b|0)<(k|0)){c=b;while(1){x=L[a+56>>2];r:{if(M[a+60|0]){h=L[a+116>>2]+(c<<4)|0;g=N[h+4>>1];d=N[h+2>>1];e=N[h>>1];t=P[a+44>>2];o=P[a+40>>2];p=P[a+36>>2];L[m+28>>2]=0;l=P[a+4>>2];P[m+16>>2]=S(S(e>>>0)/p)+l;n=P[a+8>>2];P[m+20>>2]=S(S(d>>>0)/o)+n;f=P[a+12>>2];P[m+24>>2]=S(S(g>>>0)/t)+f;g=N[h+6>>1];d=N[h+8>>1];e=N[h+10>>1];L[m+12>>2]=0;P[m+8>>2]=f+S(S(e>>>0)/t);P[m+4>>2]=n+S(S(d>>>0)/o);P[m>>2]=l+S(S(g>>>0)/p);break r}d=L[a+76>>2]+(c<<6)|0;e=L[d+12>>2];L[m+24>>2]=L[d+8>>2];L[m+28>>2]=e;e=L[d+4>>2];L[m+16>>2]=L[d>>2];L[m+20>>2]=e;e=L[d+28>>2];L[m+8>>2]=L[d+24>>2];L[m+12>>2]=e;e=L[d+20>>2];L[m>>2]=L[d+16>>2];L[m+4>>2]=e}s:{if(M[a+60|0]){p=P[a+12>>2];l=P[a+44>>2];f=S(S(P[m+24>>2]-p)*l);t:{if(f=S(0)){z=~~f>>>0;break t}z=0}n=P[a+8>>2];f=P[a+40>>2];o=S(S(P[m+20>>2]-n)*f);u:{if(o=S(0)){h=~~o>>>0;break u}h=0}l=S(S(l*S(P[m+8>>2]-p))+S(1));v:{if(l=S(0)){g=~~l>>>0;break v}g=0}f=S(S(f*S(P[m+4>>2]-n))+S(1));w:{if(f=S(0)){d=~~f>>>0;break w}d=0}n=P[a+4>>2];f=P[a+36>>2];l=S(S(P[m+16>>2]-n)*f);x:{if(l=S(0)){e=~~l>>>0;break x}e=0}y=e&65534;i=L[a+136>>2];v=i+(x<<4)|0;q=y>>>0>=N[v>>1];f=S(S(f*S(P[m>>2]-n))+S(1));y:{if(f=S(0)){e=~~f>>>0;break y}e=0}if(!q){K[v>>1]=y}e=e|1;q=i+(x<<4)|0;if(e>>>0>N[q+6>>1]){K[q+6>>1]=e}e=h&65534;if(e>>>0>1]){K[v+2>>1]=e}e=d|1;h=i+(x<<4)|0;if(e>>>0>N[h+8>>1]){K[h+8>>1]=e}e=z&65534;if(e>>>0>1]){K[v+4>>1]=e}e=g|1;d=i+(x<<4)|0;if(e>>>0<=N[d+10>>1]){break s}K[d+10>>1]=e;break s}f=P[m+16>>2];e=L[a+96>>2];d=e+(x<<6)|0;if(f>2]){P[d>>2]=f}f=P[m+20>>2];if(f
>2]){P[d+4>>2]=f}f=P[m+24>>2];if(f
>2]){P[d+8>>2]=f}f=P[m+28>>2];if(f
>2]){P[d+12>>2]=f}f=P[m>>2];e=e+(x<<6)|0;if(f>P[e+16>>2]){P[e+16>>2]=f}f=P[m+4>>2];if(f>P[e+20>>2]){P[e+20>>2]=f}f=P[m+8>>2];if(f>P[e+24>>2]){P[e+24>>2]=f}f=P[m+12>>2];if(!(f>P[e+28>>2])){break s}P[e+28>>2]=f}c=c+1|0;if((k|0)!=(c|0)){continue}break}}F=L[a+56>>2]+1|0;L[a+56>>2]=F;Xg(a,b,j);H=L[a+56>>2];Xg(a,j,k);c=M[a+60|0];x=L[a+56>>2]-A|0;if(!(!c|(x|0)<129)){e=0;q=0;v=L[a+136>>2];A=v+(H<<4)|0;b=L[A+12>>2];y=(b|0)>=0?1:0-b|0;i=v+(F<<4)|0;b=L[i+12>>2];z=(b|0)>=0?1:0-b|0;if(z>>>0<=128){d=L[a+152>>2];c=d;z:{if((c|0)!=L[a+156>>2]){break z}j=c?d<<1:1;if((j|0)<=(c|0)){break z}if(j){L[8513]=L[8513]+1;G=ha[L[6798]](j<<5,16)|0;b=L[a+152>>2]}else{b=d}A:{if((b|0)<=0){break A}if((b|0)!=1){h=b&-2;while(1){k=e<<5;g=k+G|0;C=L[a+160>>2]+k|0;c=L[C+4>>2];L[g>>2]=L[C>>2];L[g+4>>2]=c;c=L[C+28>>2];L[g+24>>2]=L[C+24>>2];L[g+28>>2]=c;c=L[C+20>>2];L[g+16>>2]=L[C+16>>2];L[g+20>>2]=c;c=L[C+12>>2];L[g+8>>2]=L[C+8>>2];L[g+12>>2]=c;c=k|32;g=c+G|0;k=c+L[a+160>>2]|0;c=L[k+4>>2];L[g>>2]=L[k>>2];L[g+4>>2]=c;c=L[k+12>>2];L[g+8>>2]=L[k+8>>2];L[g+12>>2]=c;c=L[k+20>>2];L[g+16>>2]=L[k+16>>2];L[g+20>>2]=c;c=L[k+28>>2];L[g+24>>2]=L[k+24>>2];L[g+28>>2]=c;e=e+2|0;q=q+2|0;if((h|0)!=(q|0)){continue}break}}if(!(b&1)){break A}b=e<<5;c=b+G|0;e=b+L[a+160>>2]|0;b=L[e+4>>2];L[c>>2]=L[e>>2];L[c+4>>2]=b;b=L[e+28>>2];L[c+24>>2]=L[e+24>>2];L[c+28>>2]=b;b=L[e+20>>2];L[c+16>>2]=L[e+16>>2];L[c+20>>2]=b;b=L[e+12>>2];L[c+8>>2]=L[e+8>>2];L[c+12>>2]=b}b=L[a+160>>2];if(!(b?!b|!M[a+164|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+160>>2]=G;J[a+164|0]=1;L[a+156>>2]=j;c=L[a+152>>2]}L[a+152>>2]=c+1;c=L[a+160>>2]+(d<<5)|0;K[c>>1]=N[i>>1];K[c+2>>1]=N[i+2>>1];K[c+4>>1]=N[i+4>>1];b=v+(F<<4)|0;K[c+6>>1]=N[b+6>>1];K[c+8>>1]=N[b+8>>1];b=N[b+10>>1];L[c+16>>2]=z;L[c+12>>2]=F;K[c+10>>1]=b}if((y|0)<=128){d=L[a+152>>2];c=d;B:{if((c|0)!=L[a+156>>2]){break B}j=c?d<<1:1;if((j|0)<=(c|0)){break B}C:{if(!j){b=0;c=d;break C}L[8513]=L[8513]+1;b=ha[L[6798]](j<<5,16)|0;c=L[a+152>>2]}D:{if((c|0)<=0){break D}e=0;if((c|0)!=1){z=c&-2;q=0;while(1){k=e<<5;h=k+b|0;i=k+L[a+160>>2]|0;g=L[i+4>>2];L[h>>2]=L[i>>2];L[h+4>>2]=g;g=L[i+28>>2];L[h+24>>2]=L[i+24>>2];L[h+28>>2]=g;g=L[i+20>>2];L[h+16>>2]=L[i+16>>2];L[h+20>>2]=g;g=L[i+12>>2];L[h+8>>2]=L[i+8>>2];L[h+12>>2]=g;g=k|32;h=g+b|0;k=g+L[a+160>>2]|0;g=L[k+4>>2];L[h>>2]=L[k>>2];L[h+4>>2]=g;g=L[k+12>>2];L[h+8>>2]=L[k+8>>2];L[h+12>>2]=g;g=L[k+20>>2];L[h+16>>2]=L[k+16>>2];L[h+20>>2]=g;g=L[k+28>>2];L[h+24>>2]=L[k+24>>2];L[h+28>>2]=g;e=e+2|0;q=q+2|0;if((z|0)!=(q|0)){continue}break}}if(!(c&1)){break D}c=e<<5;e=c+b|0;g=c+L[a+160>>2]|0;c=L[g+4>>2];L[e>>2]=L[g>>2];L[e+4>>2]=c;c=L[g+28>>2];L[e+24>>2]=L[g+24>>2];L[e+28>>2]=c;c=L[g+20>>2];L[e+16>>2]=L[g+16>>2];L[e+20>>2]=c;c=L[g+12>>2];L[e+8>>2]=L[g+8>>2];L[e+12>>2]=c}c=L[a+160>>2];if(!(c?!c|!M[a+164|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[a+160>>2]=b;J[a+164|0]=1;L[a+156>>2]=j;c=L[a+152>>2]}L[a+152>>2]=c+1;c=L[a+160>>2]+(d<<5)|0;K[c>>1]=N[A>>1];K[c+2>>1]=N[A+2>>1];K[c+4>>1]=N[A+4>>1];b=v+(H<<4)|0;K[c+6>>1]=N[b+6>>1];K[c+8>>1]=N[b+8>>1];b=N[b+10>>1];L[c+16>>2]=y;L[c+12>>2]=H;K[c+10>>1]=b}L[a+168>>2]=L[a+152>>2];c=M[a+60|0]}if(c&255){L[(L[a+136>>2]+(E<<4)|0)+12>>2]=0-x;break a}L[(L[a+96>>2]+(E<<6)|0)+32>>2]=x}fa=m+32|0}function vd(a,b,c,d,e,f){var g=0,h=0,i=0,j=0,k=S(0),l=S(0),m=S(0),n=0,o=0,p=S(0),q=S(0),r=S(0),s=S(0),t=S(0),u=S(0),v=S(0),w=S(0),x=S(0),y=S(0),z=0,A=S(0),B=S(0),C=S(0),D=S(0),E=S(0),F=0,G=0,H=S(0),I=S(0),K=S(0),N=S(0),O=S(0),U=S(0),V=0,W=0,X=0,Y=0,Z=0,_=0;i=fa-512|0;fa=i;a:{if((ha[L[L[d>>2]+80>>2]](d)|0)==2){g=(f?36:28)+a|0;j=L[d+152>>2];h=j-1|0;L[g>>2]=h;if(!j){break a}while(1){vd(a,b,c,L[L[d+160>>2]+(h<<2)>>2],e,f);j=L[g>>2];h=j-1|0;L[g>>2]=h;if(j){continue}break}break a}h=(ha[L[L[d>>2]+80>>2]](d)|0)!=1;g=L[e+4>>2];if(!(h|(g|0)!=28)){g=fa-144|0;fa=g;h=L[b+12>>2];j=L[h+12>>2];L[g+88>>2]=L[h+8>>2];L[g+92>>2]=j;j=L[h+4>>2];L[g+80>>2]=L[h>>2];L[g+84>>2]=j;j=L[h+28>>2];L[g+104>>2]=L[h+24>>2];L[g+108>>2]=j;j=L[h+20>>2];L[g+96>>2]=L[h+16>>2];L[g+100>>2]=j;j=L[h+44>>2];L[g+120>>2]=L[h+40>>2];L[g+124>>2]=j;j=L[h+36>>2];L[g+112>>2]=L[h+32>>2];L[g+116>>2]=j;j=L[h+60>>2];L[g+136>>2]=L[h+56>>2];L[g+140>>2]=j;j=L[h+52>>2];L[g+128>>2]=L[h+48>>2];L[g+132>>2]=j;h=L[c+12>>2];p=P[h+52>>2];q=P[h+56>>2];r=P[h+20>>2];s=P[h+24>>2];t=P[h+8>>2];u=P[h>>2];w=P[h+4>>2];x=P[h+48>>2];y=P[h+16>>2];k=P[e+56>>2];l=P[e+48>>2];m=P[e+52>>2];v=S(S(P[h+40>>2]*k)+S(S(P[h+32>>2]*l)+S(P[h+36>>2]*m)));P[g+72>>2]=v;r=S(S(s*k)+S(S(y*l)+S(r*m)));P[g+68>>2]=r;s=S(S(t*k)+S(S(u*l)+S(w*m)));P[g+64>>2]=s;l=S(S(S(q*k)+S(S(x*l)+S(p*m)))+P[e+64>>2]);P[g+76>>2]=l;ha[L[L[d>>2]+8>>2]](d,g+80|0,g+32|0,g+48|0);k=S(ha[L[L[e>>2]+48>>2]](e));m=S(k+P[g+52>>2]);P[g+52>>2]=m;p=S(k+P[g+56>>2]);P[g+56>>2]=p;t=S(P[g+36>>2]-k);P[g+36>>2]=t;q=S(k+P[g+48>>2]);P[g+48>>2]=q;u=S(P[g+32>>2]-k);P[g+32>>2]=u;k=S(P[g+40>>2]-k);P[g+40>>2]=k;k=S(S(p+k)*S(.5));u=S(S(u+q)*S(.5));t=S(S(m+t)*S(.5));w=S(S(v*k)+S(S(s*u)+S(t*r)));k=S(S(S(p-k)*S(T(v)))+S(S(S(q-u)*S(T(s)))+S(S(m-t)*S(T(r)))));if(!(l>S(S(w+k)+S(9.999999974752427e-7))|!(S(l+S(9.999999974752427e-7))>=S(w-k)))){ha[L[L[d>>2]+112>>2]](d);k=S(ha[L[L[d>>2]+48>>2]](d));l=S(ha[L[L[e>>2]+48>>2]](e));h=L[d+184>>2];if(h){s=S(k+l);while(1){h=h-1|0;e=L[d+180>>2]+R(h,L[d+192>>2])|0;k=P[d+156>>2];b:{if(L[d+188>>2]==1){l=S(Q[e>>3]*+k);m=S(Q[e+8>>3]*+P[d+160>>2]);k=S(Q[e+16>>3]*+P[d+164>>2]);break b}l=S(k*P[e>>2]);P[g+16>>2]=l;m=S(P[e+4>>2]*P[d+160>>2]);P[g+20>>2]=m;k=S(P[e+8>>2]*P[d+164>>2])}L[g+28>>2]=0;p=S(S(S(k*P[g+104>>2])+S(S(l*P[g+96>>2])+S(m*P[g+100>>2])))+P[g+132>>2]);P[g+20>>2]=p;v=P[g+68>>2];q=S(S(S(k*P[g+88>>2])+S(S(l*P[g+80>>2])+S(m*P[g+84>>2])))+P[g+128>>2]);P[g+16>>2]=q;r=P[g+64>>2];k=S(S(S(k*P[g+120>>2])+S(S(l*P[g+112>>2])+S(m*P[g+116>>2])))+P[g+136>>2]);P[g+24>>2]=k;l=P[g+72>>2];k=S(S(S(S(k*l)+S(S(q*r)+S(p*v)))-P[g+76>>2])-s);c:{if(!(k>2]=0;P[g+8>>2]=-l;P[g+4>>2]=-v;P[g>>2]=-r;e=L[a+16>>2];ha[L[L[e>>2]+8>>2]](e,L[a+28>>2],L[a+24>>2]);e=L[a+16>>2];ha[L[L[e>>2]+12>>2]](e,L[a+36>>2],L[a+32>>2]);e=L[a+12>>2];if(!e){e=L[a+4>>2];e=ha[L[L[e>>2]+12>>2]](e,L[c+8>>2],L[b+8>>2])|0;L[a+12>>2]=e}j=L[a+16>>2];L[j+4>>2]=e;ha[L[L[j>>2]+16>>2]](j,g,g+16|0,k);break c}e=L[a+16>>2];ha[L[L[e>>2]+8>>2]](e,L[a+28>>2],L[a+24>>2]);e=L[a+16>>2];ha[L[L[e>>2]+12>>2]](e,L[a+36>>2],L[a+32>>2]);e=L[a+12>>2];if(!e){e=L[a+4>>2];e=ha[L[L[e>>2]+12>>2]](e,L[b+8>>2],L[c+8>>2])|0;L[a+12>>2]=e}j=L[a+16>>2];L[j+4>>2]=e;ha[L[L[j>>2]+16>>2]](j,g- -64|0,g+16|0,k)}if(h){continue}break}}ha[L[L[d>>2]+116>>2]](d)}fa=g+144|0;break a}if((g|0)==31){g=fa-96|0;fa=g;n=L[e+16>>2];if(n){h=L[c+12>>2];O=P[h+56>>2];U=P[h+52>>2];k=P[h+40>>2];l=P[h+36>>2];m=P[h+24>>2];v=P[h+20>>2];H=P[h+48>>2];r=P[h+32>>2];s=P[h+16>>2];p=P[h+8>>2];q=P[h+4>>2];t=P[h>>2];o=L[a+16>>2];while(1){n=n-1|0;h=L[e+24>>2]+R(n,80)|0;z=L[h+64>>2];u=P[h+56>>2];w=P[h+48>>2];x=P[h+52>>2];y=P[h+32>>2];A=P[h>>2];B=P[h+16>>2];C=P[h+36>>2];D=P[h+4>>2];E=P[h+20>>2];I=P[h+40>>2];K=P[h+8>>2];N=P[h+24>>2];L[g+92>>2]=0;L[g+76>>2]=0;L[g+60>>2]=0;L[g+44>>2]=0;P[g+72>>2]=S(I*k)+S(S(K*r)+S(l*N));P[g+68>>2]=S(C*k)+S(S(D*r)+S(l*E));P[g+64>>2]=S(y*k)+S(S(A*r)+S(l*B));P[g+56>>2]=S(I*m)+S(S(K*s)+S(v*N));P[g+52>>2]=S(C*m)+S(S(D*s)+S(v*E));P[g+48>>2]=S(y*m)+S(S(A*s)+S(v*B));P[g+40>>2]=S(I*p)+S(S(K*t)+S(q*N));P[g+36>>2]=S(C*p)+S(S(D*t)+S(q*E));P[g+32>>2]=S(y*p)+S(S(A*t)+S(q*B));P[g+88>>2]=O+S(S(u*k)+S(S(w*r)+S(l*x)));P[g+84>>2]=U+S(S(u*m)+S(S(w*s)+S(v*x)));P[g+80>>2]=H+S(S(u*p)+S(S(w*t)+S(q*x)));h=L[c+8>>2];L[g+28>>2]=n;L[g+24>>2]=-1;L[g+16>>2]=h;L[g+12>>2]=z;L[g+8>>2]=c;L[g+20>>2]=g+32;j=L[o+8>>2];if((h|0)==L[j+8>>2]){o=o+8|0}else{j=L[o+12>>2];o=o+12|0}h=g+8|0;L[o>>2]=h;vd(a,b,h,d,z,f);o=L[a+16>>2];L[o+(L[L[o+8>>2]+8>>2]==L[g+16>>2]?8:12)>>2]=j;if(n){continue}break}}fa=g+96|0;break a}if(g-21>>>0<=8){g=fa-128|0;fa=g;J[g+120|0]=f;L[g+116>>2]=d;L[g+104>>2]=a;L[g+100>>2]=17548;L[g+108>>2]=b;L[g+112>>2]=c;P[g+124>>2]=ha[L[L[e>>2]+48>>2]](e);a=L[c+12>>2];u=P[a+52>>2];w=P[a+56>>2];b=L[b+12>>2];x=P[b+52>>2];y=P[b+56>>2];k=P[a+20>>2];l=P[a+36>>2];A=P[b+20>>2];B=P[b+36>>2];C=P[b+24>>2];m=P[a+24>>2];D=P[b+40>>2];v=P[a+40>>2];E=P[b+32>>2];r=P[a+32>>2];I=P[b>>2];s=P[a>>2];K=P[b+16>>2];p=P[a+16>>2];H=P[a+48>>2];N=P[b+48>>2];q=P[a+4>>2];O=P[b+4>>2];U=P[b+8>>2];t=P[a+8>>2];L[g+96>>2]=0;L[g+80>>2]=0;L[g- -64>>2]=0;P[g+76>>2]=S(D*v)+S(S(U*t)+S(m*C));P[g+72>>2]=S(B*v)+S(S(O*t)+S(m*A));P[g+60>>2]=S(D*l)+S(S(U*q)+S(k*C));P[g+56>>2]=S(B*l)+S(S(O*q)+S(k*A));H=S(-H);P[g+92>>2]=S(S(S(t*H)-S(m*u))-S(v*w))+S(S(y*v)+S(S(N*t)+S(m*x)));P[g+88>>2]=S(S(S(q*H)-S(k*u))-S(l*w))+S(S(y*l)+S(S(N*q)+S(k*x)));L[g+48>>2]=0;P[g+36>>2]=S(E*r)+S(S(I*s)+S(p*K));P[g+68>>2]=S(E*v)+S(S(I*t)+S(m*K));P[g+52>>2]=S(E*l)+S(S(I*q)+S(k*K));P[g+44>>2]=S(D*r)+S(S(U*s)+S(p*C));P[g+40>>2]=S(B*r)+S(S(O*s)+S(p*A));P[g+84>>2]=S(S(S(s*H)-S(p*u))-S(r*w))+S(S(y*r)+S(S(N*s)+S(p*x)));a=g+20|0;b=g+4|0;ha[L[L[d>>2]+8>>2]](d,g+36|0,a,b);ha[L[L[e>>2]+64>>2]](e,g+100|0,a,b);fa=g+128|0;break a}g=L[b+12>>2];h=L[g+12>>2];L[i+456>>2]=L[g+8>>2];L[i+460>>2]=h;h=L[g+4>>2];L[i+448>>2]=L[g>>2];L[i+452>>2]=h;h=L[g+28>>2];L[i+472>>2]=L[g+24>>2];L[i+476>>2]=h;h=L[g+20>>2];L[i+464>>2]=L[g+16>>2];L[i+468>>2]=h;h=L[g+44>>2];L[i+488>>2]=L[g+40>>2];L[i+492>>2]=h;h=L[g+36>>2];L[i+480>>2]=L[g+32>>2];L[i+484>>2]=h;h=L[g+60>>2];L[i+504>>2]=L[g+56>>2];L[i+508>>2]=h;h=L[g+52>>2];L[i+496>>2]=L[g+48>>2];L[i+500>>2]=h;g=L[c+12>>2];h=L[g+12>>2];L[i+392>>2]=L[g+8>>2];L[i+396>>2]=h;h=L[g+4>>2];L[i+384>>2]=L[g>>2];L[i+388>>2]=h;h=L[g+28>>2];L[i+408>>2]=L[g+24>>2];L[i+412>>2]=h;h=L[g+20>>2];L[i+400>>2]=L[g+16>>2];L[i+404>>2]=h;h=L[g+44>>2];L[i+424>>2]=L[g+40>>2];L[i+428>>2]=h;h=L[g+36>>2];L[i+416>>2]=L[g+32>>2];L[i+420>>2]=h;h=L[g+60>>2];L[i+440>>2]=L[g+56>>2];L[i+444>>2]=h;h=L[g+52>>2];L[i+432>>2]=L[g+48>>2];L[i+436>>2]=h;L[i+376>>2]=0;J[i+380|0]=1;L[i+368>>2]=0;L[i+372>>2]=0;h=i+448|0;j=i+384|0;o=i+364|0;g=fa-96|0;fa=g;d:{if(L[d+68>>2]){k=P[h+20>>2];l=P[h+36>>2];u=P[h+52>>2];m=P[h+24>>2];w=P[h+56>>2];v=P[h+40>>2];r=P[h+32>>2];s=P[h>>2];p=P[h+16>>2];q=P[h+4>>2];t=P[h+8>>2];x=P[h+48>>2];L[g+60>>2]=0;x=S(-x);y=P[j+56>>2];A=P[j+48>>2];B=P[j+52>>2];P[g+56>>2]=S(S(S(t*x)-S(m*u))-S(v*w))+S(S(v*y)+S(S(t*A)+S(m*B)));P[g+52>>2]=S(S(S(q*x)-S(k*u))-S(l*w))+S(S(l*y)+S(S(q*A)+S(k*B)));P[g+48>>2]=S(S(S(s*x)-S(p*u))-S(r*w))+S(S(r*y)+S(S(s*A)+S(p*B)));u=P[j+20>>2];w=P[j+36>>2];x=P[j+24>>2];y=P[j+40>>2];A=P[j+32>>2];B=P[j>>2];C=P[j+16>>2];D=P[j+4>>2];E=P[j+8>>2];L[g+44>>2]=0;L[g+28>>2]=0;P[g+40>>2]=S(y*v)+S(S(E*t)+S(m*x));P[g+36>>2]=S(w*v)+S(S(D*t)+S(m*u));P[g+24>>2]=S(y*l)+S(S(E*q)+S(k*x));P[g+20>>2]=S(w*l)+S(S(D*q)+S(k*u));L[g+12>>2]=0;P[g+32>>2]=S(A*v)+S(S(B*t)+S(m*C));P[g+16>>2]=S(A*l)+S(S(B*q)+S(k*C));P[g+8>>2]=S(y*r)+S(S(E*s)+S(p*x));P[g+4>>2]=S(w*r)+S(S(D*s)+S(p*u));P[g>>2]=S(A*r)+S(S(B*s)+S(p*C));h=g- -64|0;ha[L[L[e>>2]+8>>2]](e,g,h,g+80|0);Sl(d+68|0,h,o);break d}ha[L[L[e>>2]+8>>2]](e,j,g- -64|0,g+80|0);G=ha[L[L[d>>2]+88>>2]](d)|0;if(!G){break d}Z=g+16|0;while(1){G=G-1|0;ha[L[L[d>>2]+120>>2]](d,G,h,g,Z);e:{if(P[g+80>>2]
>2]|P[g+64>>2]>P[g+16>>2]|(P[g+84>>2]
>2]|P[g+68>>2]>P[g+20>>2])){break e}if(P[g+88>>2]
>2]|P[g+72>>2]>P[g+24>>2]){break e}e=L[o+4>>2];f:{if((e|0)!=L[o+8>>2]){break f}W=e?e<<1:1;if((W|0)<=(e|0)){break f}g:{if(!W){z=0;break g}L[8513]=L[8513]+1;z=ha[L[6798]](W<<2,16)|0;e=L[o+4>>2]}n=L[o+12>>2];h:{i:{if((e|0)>0){X=0;j=0;if(e>>>0>=4){_=e&-4;Y=0;while(1){F=j<<2;L[F+z>>2]=L[n+F>>2];V=F|4;L[V+z>>2]=L[n+V>>2];V=F|8;L[V+z>>2]=L[n+V>>2];F=F|12;L[F+z>>2]=L[n+F>>2];j=j+4|0;Y=Y+4|0;if((_|0)!=(Y|0)){continue}break}}e=e&3;if(!e){break i}while(1){F=j<<2;L[F+z>>2]=L[n+F>>2];j=j+1|0;X=X+1|0;if((e|0)!=(X|0)){continue}break}break i}if(!n){break h}}if(n?M[o+16|0]:0){L[8514]=L[8514]+1;ha[L[6799]](n)}e=L[o+4>>2]}L[o+12>>2]=z;J[o+16|0]=1;L[o+8>>2]=W}L[L[o+12>>2]+(e<<2)>>2]=G;L[o+4>>2]=L[o+4>>2]+1}if(G){continue}break}}fa=g+96|0;if(L[i+368>>2]){ha[L[L[d>>2]+112>>2]](d);g=yb(i+72|0);L[i+128>>2]=0;L[i+132>>2]=0;L[i+76>>2]=1;L[i+136>>2]=0;L[i+140>>2]=0;L[i+144>>2]=0;L[i+148>>2]=0;L[i+152>>2]=0;L[i+156>>2]=0;L[i+160>>2]=0;L[i+164>>2]=0;L[i+168>>2]=0;L[i+172>>2]=0;L[g>>2]=2036;o=Re(i+176|0);L[o>>2]=4548;L[i+268>>2]=4;L[i+352>>2]=17472;L[i+344>>2]=17392;L[i+336>>2]=17320;L[i+68>>2]=d;e=i+344|0;j:{if(ha[L[L[d>>2]+96>>2]](d)|0){break j}h=L[i+68>>2];e=i+352|0;if(ha[L[L[h>>2]+100>>2]](h)|0){break j}e=i+336|0}L[i+360>>2]=e;L[e+4>>2]=i+68;h=ha[L[L[d>>2]+92>>2]](d)|0;e=L[i+368>>2];k:{if(!e){break k}e=e-1|0;if(f){while(1){f=e;e=L[L[i+376>>2]+(e<<2)>>2];L[a+32>>2]=e;j=L[i+360>>2];j=ha[L[L[j>>2]>>2]](j,e)|0;if(h){ha[L[L[d>>2]+132>>2]](i+4|0,d,e)}n=L[a+28>>2];z=L[a+24>>2];G=L[b+12>>2];e=L[b+8>>2];L[i+8>>2]=j;L[i+12>>2]=e;L[i+16>>2]=G;L[i+4>>2]=b;L[i+20>>2]=oI(z,n);L[i+24>>2]=ga;n=L[a+16>>2];j=L[n+8>>2];n=((e|0)==L[j+8>>2]?8:12)+n|0;e=i+4|0;L[n>>2]=e;Ig(a,c,e);L[L[a+16>>2]+8>>2]=j;e=f-1|0;if(f){continue}break k}}if(h){while(1){f=L[L[i+376>>2]+(e<<2)>>2];L[a+24>>2]=f;h=L[i+360>>2];j=ha[L[L[h>>2]>>2]](h,f)|0;h=i+4|0;ha[L[L[d>>2]+132>>2]](h,d,f);n=L[a+28>>2];z=L[a+24>>2];G=L[b+12>>2];f=L[b+8>>2];L[i+8>>2]=j;L[i+12>>2]=f;L[i+16>>2]=G;L[i+4>>2]=b;L[i+20>>2]=oI(z,n);L[i+24>>2]=ga;n=L[a+16>>2];j=L[n+8>>2];L[((f|0)==L[j+8>>2]?8:12)+n>>2]=h;Ig(a,h,c);L[L[a+16>>2]+8>>2]=j;f=e;e=e-1|0;if(f){continue}break k}}while(1){f=L[L[i+376>>2]+(e<<2)>>2];L[a+24>>2]=f;h=L[i+360>>2];h=ha[L[L[h>>2]>>2]](h,f)|0;j=L[a+28>>2];n=L[a+24>>2];z=L[b+12>>2];f=L[b+8>>2];L[i+8>>2]=h;L[i+12>>2]=f;L[i+16>>2]=z;L[i+4>>2]=b;L[i+20>>2]=oI(n,j);L[i+24>>2]=ga;j=L[a+16>>2];h=L[j+8>>2];j=((f|0)==L[h+8>>2]?8:12)+j|0;f=i+4|0;L[j>>2]=f;Ig(a,f,c);L[L[a+16>>2]+8>>2]=h;f=e;e=e-1|0;if(f){continue}break}}ha[L[L[d>>2]+116>>2]](d);Oa(o);Oa(g)}a=L[i+376>>2];if(!a|!M[i+380|0]){break a}if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}fa=i+512|0}function wg(a,b,c,d,e){var f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=0,m=S(0),n=S(0),o=S(0),p=S(0),q=S(0),r=S(0),s=S(0),t=S(0),u=S(0),v=S(0),w=S(0),x=S(0),y=S(0),z=S(0),A=S(0),B=S(0),C=S(0),D=S(0),E=S(0),F=S(0),G=S(0),H=S(0),I=S(0),K=S(0),N=S(0),O=S(0),Q=S(0),R=S(0),U=S(0),V=S(0),W=S(0),X=S(0),Y=S(0),Z=S(0),$=S(0),aa=S(0),ba=S(0),ca=S(0),da=S(0),ea=S(0),ga=S(0),ha=S(0),ia=S(0),ja=S(0),ka=S(0),la=S(0),ma=S(0),na=S(0),oa=0,pa=S(0),qa=S(0),ra=S(0),sa=S(0),ta=S(0),ua=S(0),va=S(0),wa=S(0),xa=S(0),ya=S(0),za=S(0),Aa=S(0),Ba=S(0),Ca=S(0),Da=S(0),Ga=S(0),Ha=S(0),Ia=S(0),Ja=S(0),Ka=S(0),La=S(0);l=fa-80|0;fa=l;J[a+525|0]=0;J[a+526|0]=0;L[a+500>>2]=0;L[a+504>>2]=0;a:{if(!(M[a+527|0]|!M[a+552|0])){Ga=P[c+52>>2];Ha=P[c+56>>2];s=P[a+412>>2];q=P[a+416>>2];Q=P[a+420>>2];Ia=P[b+52>>2];Ja=P[b+56>>2];R=P[a+348>>2];U=P[a+352>>2];y=P[a+356>>2];i=P[c+20>>2];n=P[c+24>>2];o=P[b+20>>2];u=P[b+24>>2];v=P[a+308>>2];D=P[a+324>>2];E=P[a+340>>2];O=P[a+316>>2];G=P[a+332>>2];V=P[a+304>>2];p=P[b+36>>2];W=P[a+320>>2];k=P[b+40>>2];X=P[a+336>>2];Y=P[a+372>>2];Z=P[a+388>>2];$=P[a+404>>2];ia=P[a+368>>2];ja=P[a+384>>2];ka=P[a+400>>2];h=P[a+568>>2];j=P[a+564>>2];g=P[a+560>>2];H=P[c+36>>2];la=P[a+380>>2];I=P[c+40>>2];ma=P[a+396>>2];Ka=P[c+48>>2];K=P[c+8>>2];x=P[c+4>>2];r=P[c>>2];La=P[b+48>>2];t=P[b+8>>2];z=P[b>>2];A=P[b+4>>2];C=P[c+16>>2];m=P[b+16>>2];na=P[a+300>>2];w=P[b+32>>2];f=P[a+556>>2];F=P[c+32>>2];ua=P[a+364>>2];L[l+76>>2]=0;L[l+60>>2]=0;L[l+44>>2]=0;pa=S(S(E*k)+S(S(v*w)+S(D*p)));B=S(S(2)/S(S(h*h)+S(S(j*j)+S(S(f*f)+S(g*g)))));aa=S(f*B);ba=S(f*aa);N=S(g*B);ca=S(g*N);va=S(S(1)-S(ba+ca));qa=S(S($*I)+S(S(Y*F)+S(Z*H)));B=S(j*B);da=S(f*B);ea=S(h*N);wa=S(da+ea);ra=S(S(ma*I)+S(S(ua*F)+S(la*H)));ga=S(g*B);ha=S(h*aa);xa=S(ga-ha);g=S(S(ka*I)+S(S(ia*F)+S(ja*H)));aa=S(S(va*qa)+S(S(wa*ra)+S(xa*g)));sa=S(S(G*k)+S(S(na*w)+S(O*p)));ya=S(da-ea);j=S(j*B);za=S(S(1)-S(ca+j));N=S(f*N);B=S(h*B);Aa=S(N+B);f=S(S(ya*qa)+S(S(za*ra)+S(Aa*g)));h=S(S(X*k)+S(S(V*w)+S(W*p)));Ba=S(ga+ha);Ca=S(N-B);Da=S(S(1)-S(ba+j));j=S(S(Ba*qa)+S(S(Ca*ra)+S(Da*g)));P[l+56>>2]=S(pa*aa)+S(S(sa*f)+S(h*j));B=S(S(E*u)+S(S(v*m)+S(D*o)));N=S(S(G*u)+S(S(na*m)+S(O*o)));ba=S(S(X*u)+S(S(V*m)+S(W*o)));P[l+52>>2]=S(B*aa)+S(S(N*f)+S(ba*j));ca=S(S($*n)+S(S(Y*C)+S(Z*i)));da=S(S(ma*n)+S(S(ua*C)+S(la*i)));ea=S(S(ka*n)+S(S(ia*C)+S(ja*i)));ga=S(S(va*ca)+S(S(wa*da)+S(xa*ea)));ha=S(S(ya*ca)+S(S(za*da)+S(Aa*ea)));ta=S(S(Ba*ca)+S(S(Ca*da)+S(Da*ea)));P[l+40>>2]=S(pa*ga)+S(S(sa*ha)+S(h*ta));P[l+36>>2]=S(B*ga)+S(S(N*ha)+S(ba*ta));v=S(S(E*t)+S(S(v*z)+S(A*D)));D=S(-S(La+S(S(y*t)+S(S(R*z)+S(A*U)))));m=S(Ia+S(S(y*u)+S(S(R*m)+S(o*U))));p=S(Ja+S(S(y*k)+S(S(R*w)+S(p*U))));k=S(S(S(v*D)-S(B*m))-S(pa*p));o=S(S(G*t)+S(S(na*z)+S(O*A)));w=S(S(S(o*D)-S(N*m))-S(sa*p));u=S(S(X*t)+S(S(V*z)+S(A*W)));t=S(S(S(u*D)-S(ba*m))-S(h*p));P[l+72>>2]=S(S(k*aa)+S(S(w*f)+S(t*j)))+S(S(S(qa*S(0))+S(S(ra*S(0))+S(g*S(0))))+S(Ha+S(S(Q*I)+S(S(s*F)+S(H*q)))));P[l+68>>2]=S(S(k*ga)+S(S(w*ha)+S(t*ta)))+S(S(S(ca*S(0))+S(S(da*S(0))+S(ea*S(0))))+S(Ga+S(S(Q*n)+S(S(s*C)+S(i*q)))));L[l+28>>2]=0;P[l+48>>2]=S(v*aa)+S(S(o*f)+S(u*j));P[l+32>>2]=S(v*ga)+S(S(o*ha)+S(u*ta));f=S(S($*K)+S(S(Y*r)+S(x*Z)));g=S(S(ma*K)+S(S(ua*r)+S(la*x)));i=S(S(ka*K)+S(S(ia*r)+S(x*ja)));n=S(S(va*f)+S(S(wa*g)+S(xa*i)));p=S(S(ya*f)+S(S(za*g)+S(Aa*i)));m=h;h=S(S(Ba*f)+S(S(Ca*g)+S(Da*i)));P[l+24>>2]=S(pa*n)+S(S(sa*p)+S(m*h));P[l+20>>2]=S(B*n)+S(S(N*p)+S(ba*h));P[l+16>>2]=S(v*n)+S(S(o*p)+S(u*h));P[l+64>>2]=S(S(k*n)+S(S(w*p)+S(t*h)))+S(S(S(f*S(0))+S(S(g*S(0))+S(i*S(0))))+S(Ka+S(S(Q*K)+S(S(s*r)+S(x*q)))));Ma(l+16|0,l);f=P[l+8>>2];h=P[l>>2];g=P[l+4>>2];i=S(S(f*f)+S(S(h*h)+S(g*g)));if(S(T(i))>2]=0;m=f;f=S(S(1)/S(_(i)));P[a+468>>2]=m*f;P[a+464>>2]=g*f;P[a+460>>2]=h*f;f=P[l+12>>2];f=fS(1)?S(1):f);f=S(f+f);P[a+504>>2]=f;if(S(T(f))>2];h=P[l+8>>2];p=P[l+4>>2];k=P[l+20>>2];j=P[l+12>>2];x=P[l+28>>2];r=P[l+16>>2];t=P[l>>2];Ma(c,oa);Ma(a+364|0,l);g=S(-0);C=S(1);z=P[l+16>>2];A=P[l+4>>2];m=P[l+28>>2];w=P[l+8>>2];F=P[l+12>>2];i=P[l+24>>2];s=P[l+20>>2];q=P[l>>2];o=S(S(S(z*A)+S(S(m*w)+S(F*i)))-S(s*q));H=S(S(S(r*p)+S(S(x*h)+S(j*f)))-S(k*t));u=S(S(S(i*q)+S(S(m*A)+S(F*s)))-S(z*w));I=S(S(S(f*t)+S(S(x*p)+S(j*k)))-S(r*h));n=S(S(S(S(m*F)-S(q*z))-S(s*A))-S(i*w));K=S(S(S(S(x*j)-S(t*r))-S(k*p))-S(f*h));x=S(S(S(k*h)+S(S(x*t)+S(r*j)))-S(f*p));p=S(S(S(s*w)+S(S(m*q)+S(z*F)))-S(i*A));t=S(S(o*H)+S(S(u*I)+S(S(n*K)+S(x*p))));h=S(t*S(0));z=S(S(u*x)+S(S(S(n*H)-S(K*o))-S(p*I)));A=S(S(o*I)+S(S(S(n*x)-S(K*p))-S(u*H)));k=S(A*S(0));f=S(S(h+z)-k);r=S(S(p*H)+S(S(S(n*I)-S(K*u))-S(o*x)));h=S(S(h+k)-r);j=S(z*S(-0));k=S(j+S(S(r*S(-0))-A));j=S(j+S(t+S(r*S(0))));m=S(S(f*A)+S(S(S(t*h)-S(k*z))-S(j*r)));q=m;s=S(m*m);m=S(S(h*r)+S(S(S(t*j)-S(k*A))-S(f*z)));f=S(S(j*z)+S(S(S(t*f)-S(k*r))-S(h*A)));h=S(S(1)/S(_(S(s+S(S(m*m)+S(f*f))))));k=S(q*h);j=S(m*h);f=S(f*h);h=S(S(k*S(0))+S(j+S(f*S(0))));if(!(h>2];y=P[a+456>>2];oa=h>=y;j=P[a+448>>2];b:{if(!(!oa|!(y<=j))){g=FS(1)?S(1):g);s=S(g+g);f=S(0);c:{if(!(s>S(1.1920928955078125e-7))){break c}g=S(S(1)/S(_(S(S(m*m)+S(S(w*w)+S(C*C))))));k=S(m*g);i=S(w*g);g=S(C*g);f=h;if(!(S(T(g))>S(1.1920928955078125e-7))){break c}f=S(S(k*k)/S(g*g));f=S(_(S(S(f+S(1))/S(S(S(1)/S(j*j))+S(f/S(h*h))))))}q=P[a+428>>2];y=S(f*q);if(!(y>2]=y;P[a+528>>2]=!(f>s)|!(qS(1.1920928955078125e-7)){f=S(T(S(g*S(S(j/h)*S(S(-k)/g)))));f=k>2]=0;L[a+540>>2]=0;L[a+472>>2]=0;L[a+544>>2]=0;L[a+548>>2]=0;j=S(S(p*k)+S(S(n*S(-g))-S(o*i)));s=S(S(o*g)+S(S(n*S(-i))-S(u*k)));q=S(S(o*k)+S(S(p*i)+S(u*g)));g=S(S(u*i)+S(S(n*S(-k))-S(p*g)));f=S(S(j*p)+S(S(s*R)+S(S(q*Q)+S(n*g))));P[a+468>>2]=f;h=S(S(s*o)+S(S(g*U)+S(S(q*R)+S(n*j))));P[a+464>>2]=h;g=S(S(g*u)+S(S(j*Q)+S(S(q*U)+S(n*s))));P[a+460>>2]=g;P[a+492>>2]=S(1)/S(S(S(f*S(S(f*P[d+40>>2])+S(S(P[d+8>>2]*g)+S(h*P[d+24>>2]))))+S(S(g*S(S(P[d+32>>2]*f)+S(S(g*P[d>>2])+S(P[d+16>>2]*h))))+S(h*S(S(P[d+36>>2]*f)+S(S(P[d+4>>2]*g)+S(h*P[d+20>>2]))))))+S(S(f*S(S(f*P[e+40>>2])+S(S(P[e+8>>2]*g)+S(h*P[e+24>>2]))))+S(S(g*S(S(P[e+32>>2]*f)+S(S(g*P[e>>2])+S(h*P[e+16>>2]))))+S(h*S(S(P[e+36>>2]*f)+S(S(P[e+4>>2]*g)+S(h*P[e+20>>2])))))));break b}f=P[a+396>>2];g=P[a+364>>2];i=P[a+380>>2];k=S(S(P[c+40>>2]*f)+S(S(P[c+32>>2]*g)+S(i*P[c+36>>2])));v=P[b+40>>2];q=P[a+340>>2];D=P[b+32>>2];E=P[a+308>>2];O=P[b+36>>2];G=P[a+324>>2];ia=S(S(v*q)+S(S(D*E)+S(O*G)));s=S(S(P[c+8>>2]*f)+S(S(P[c>>2]*g)+S(i*P[c+4>>2])));V=P[b+8>>2];W=P[b>>2];X=P[b+4>>2];ja=S(S(V*q)+S(S(W*E)+S(X*G)));Y=P[b+24>>2];Z=P[b+16>>2];B=S(Z*E);E=P[b+20>>2];ka=S(S(Y*q)+S(B+S(E*G)));q=S(S(P[c+24>>2]*f)+S(S(P[c+16>>2]*g)+S(i*P[c+20>>2])));g=S(S(k*ia)+S(S(s*ja)+S(ka*q)));f=P[a+336>>2];i=P[a+304>>2];G=P[a+320>>2];la=S(S(v*f)+S(S(D*i)+S(O*G)));ma=S(S(V*f)+S(S(W*i)+S(X*G)));na=S(S(Y*f)+S(S(Z*i)+S(E*G)));f=S(S(k*la)+S(S(s*ma)+S(na*q)));i=P[a+332>>2];G=P[a+300>>2];$=P[a+316>>2];v=S(S(v*i)+S(S(D*G)+S($*O)));D=S(S(Y*i)+S(S(Z*G)+S($*E)));E=S(S(V*i)+S(S(W*G)+S($*X)));b=h>2]=0;P[a+468>>2]=-S(S(s*D)-S(E*q));P[a+464>>2]=-S(S(k*E)-S(v*s));P[a+460>>2]=-S(S(q*v)-S(D*k));break b}i=S(S(k*v)+S(S(s*E)+S(D*q)));O=S(T(i));d:{if(b){if(O=y)){break d}h=Za(g,i);if(h>j){f=S(0);g=Ea(j);i=Fa(j);break d}f=S(0);if(!(hh){g=S(0);f=Ea(h);break e}g=S(0);if(!(j>2]=0;h=S(S(g*ia)+S(S(i*v)+S(la*f)));j=S(S(g*ja)+S(S(i*E)+S(ma*f)));g=S(S(g*ka)+S(S(i*D)+S(na*f)));f=S(S(1)/S(_(S(S(h*h)+S(S(j*j)+S(g*g))))));i=S(g*f);j=S(j*f);g=S(S(s*i)-S(j*q));h=S(h*f);f=S(S(q*h)-S(i*k));h=S(S(k*j)-S(h*s));i=S(_(S(S(g*g)+S(S(f*f)+S(h*h)))));P[a+504>>2]=i;i=S(S(1)/i);P[a+468>>2]=i*S(-g);P[a+464>>2]=i*S(-h);P[a+460>>2]=i*S(-f)}k=P[a+452>>2];if(k>=S(0)){j=S(S(m*z)+S(S(C*r)+S(S(F*t)+S(A*w))));f=S(S(C*A)+S(S(S(F*z)-S(t*m))-S(w*r)));g=S(S(m*r)+S(S(S(F*A)-S(t*w))-S(C*z)));h=S(S(w*z)+S(S(S(F*r)-S(t*C))-S(m*A)));i=S(S(1)/S(_(S(S(j*j)+S(S(f*f)+S(S(g*g)+S(h*h)))))));f=S(f*i);h=S(h*i);g=S(g*i);j=S(j*i);i=jS(1)?S(1):i);i=S(i+i);if(i>S(3.1415927410125732)){i=j>S(1)?S(-1):S(-j);i=ob(i>S(1)?S(1):i);i=S(i+i);h=S(-h);g=S(-g);f=S(-f)}P[a+512>>2]=i;if(i>S(1.1920928955078125e-7)){j=S(S(1)/S(_(S(S(f*f)+S(S(g*g)+S(h*h))))));f=S(f*j);g=S(g*j);h=S(h*j)}r=P[a+428>>2];j=S(k*r);if(j>2]=t;m=S(1);f:{if(!(i>2]=m;L[a+488>>2]=0;k=S(S(p*f)+S(S(n*S(-h))-S(o*g)));m=S(k*p);j=S(S(o*h)+S(S(n*S(-g))-S(u*f)));r=S(S(o*f)+S(S(p*g)+S(u*h)));p=S(S(u*g)+S(S(n*S(-f))-S(p*h)));i=S(m+S(S(j*R)+S(S(r*Q)+S(n*p))));P[a+484>>2]=i;o=S(S(j*o)+S(S(p*U)+S(S(r*R)+S(n*k))));P[a+480>>2]=o;n=S(S(p*u)+S(S(k*Q)+S(S(r*U)+S(n*j))));P[a+476>>2]=n;P[a+496>>2]=S(1)/S(S(S(i*S(S(i*P[d+40>>2])+S(S(P[d+8>>2]*n)+S(o*P[d+24>>2]))))+S(S(n*S(S(P[d+32>>2]*i)+S(S(n*P[d>>2])+S(P[d+16>>2]*o))))+S(o*S(S(P[d+36>>2]*i)+S(S(P[d+4>>2]*n)+S(o*P[d+20>>2]))))))+S(S(i*S(S(i*P[e+40>>2])+S(S(P[e+8>>2]*n)+S(o*P[e+24>>2]))))+S(S(n*S(S(P[e+32>>2]*i)+S(S(n*P[e>>2])+S(o*P[e+16>>2]))))+S(o*S(S(P[e+36>>2]*i)+S(S(P[e+4>>2]*n)+S(o*P[e+20>>2])))))))}if(!M[a+526|0]){break a}L[a+548>>2]=0;i=S(S(x*f)+S(S(K*S(-h))-S(H*g)));n=S(S(I*g)+S(S(K*S(-f))-S(x*h)));o=S(S(H*f)+S(S(x*g)+S(I*h)));f=S(S(H*h)+S(S(K*S(-g))-S(I*f)));P[a+544>>2]=S(i*x)+S(S(S(K*n)-S(o*H))-S(f*I));P[a+540>>2]=S(f*H)+S(S(S(K*i)-S(o*I))-S(n*x));P[a+536>>2]=S(n*I)+S(S(S(K*f)-S(o*x))-S(i*H));break a}L[a+512>>2]=0}fa=l+80|0}function Al(a){var b=0,c=0,d=0,e=S(0),f=S(0),g=0,h=S(0),i=S(0),j=S(0),k=0,l=S(0),m=S(0),n=S(0),o=S(0),p=S(0),q=S(0),r=S(0),s=0,t=S(0),u=S(0),v=S(0),w=S(0),x=S(0),y=S(0),z=0,A=0,B=0,C=S(0),D=S(0),E=0,F=S(0),G=S(0),H=S(0),I=S(0),K=S(0),N=S(0),O=S(0),Q=S(0),R=S(0),T=S(0),U=S(0),V=0,W=0,X=0,Y=0,Z=S(0),_=S(0),$=0;k=fa-16|0;fa=k;a:{if(!M[a+356|0]){c=M[a+312|0];break a}J[a+356|0]=0;J[a+352|0]=0;L[a+344>>2]=0;L[a+348>>2]=0;L[a+336>>2]=0;L[a+340>>2]=0;d=M[a+332|0]&-16;J[a+332|0]=d;b=a+316|0;b:{c:{switch(L[a>>2]-1|0){case 0:c=L[a+168>>2];L[a+260>>2]=L[a+164>>2];L[a+264>>2]=c;c=L[a+88>>2];L[a+244>>2]=L[a+84>>2];L[a+248>>2]=c;c=L[a+176>>2];L[a+268>>2]=L[a+172>>2];L[a+272>>2]=c;c=L[a+96>>2];L[a+252>>2]=L[a+92>>2];L[a+256>>2]=c;J[a+352|0]=0;L[a+288>>2]=0;P[a+280>>2]=P[a+248>>2]-P[a+264>>2];P[a+276>>2]=P[a+244>>2]-P[a+260>>2];P[a+284>>2]=P[a+252>>2]-P[a+268>>2];L[a+344>>2]=0;L[a+348>>2]=0;L[a+336>>2]=1065353216;L[a+340>>2]=0;c=1;break b;case 1:g=1;j=P[a+8>>2];e=S(P[a+24>>2]-j);i=P[a+12>>2];h=S(P[a+28>>2]-i);m=S(h*S(S(0)-i));l=P[a+4>>2];i=S(P[a+20>>2]-l);j=S(m+S(S(i*S(S(0)-l))+S(S(S(0)-j)*e)));b=j>S(0);c=1;d:{if(!b){break d}f=S(S(h*h)+S(S(i*i)+S(e*e)));if(!(f>j)){f=S(1);c=2;break d}f=S(j/f);c=3}L[a+344>>2]=0;L[a+348>>2]=0;P[a+340>>2]=f;j=S(S(1)-f);P[a+336>>2]=j;J[a+332|0]=d|c;L[a+256>>2]=0;e=P[a+92>>2];l=S(e+S(f*S(P[a+108>>2]-e)));P[a+252>>2]=l;e=P[a+88>>2];n=S(e+S(f*S(P[a+104>>2]-e)));P[a+248>>2]=n;e=P[a+84>>2];o=S(e+S(f*S(P[a+100>>2]-e)));P[a+244>>2]=o;m=P[a+180>>2];q=P[a+184>>2];e=P[a+168>>2];r=P[a+188>>2];h=P[a+172>>2];i=P[a+164>>2];L[a+288>>2]=0;h=S(h+S(f*S(r-h)));P[a+284>>2]=l-h;e=S(e+S(f*S(q-e)));P[a+280>>2]=n-e;i=S(i+S(f*S(m-i)));P[a+276>>2]=o-i;L[a+272>>2]=0;P[a+268>>2]=h;P[a+264>>2]=e;P[a+260>>2]=i;if(!b){L[a>>2]=1;g=0}if(!(c&1)){L[a>>2]=g;c=(g<<4)+a|0;b=L[c+16>>2];L[a+12>>2]=L[c+12>>2];L[a+16>>2]=b;b=L[c+8>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=b;b=L[c+96>>2];L[a+92>>2]=L[c+92>>2];L[a+96>>2]=b;b=L[c+88>>2];L[a+84>>2]=L[c+84>>2];L[a+88>>2]=b;b=L[c+176>>2];L[a+172>>2]=L[c+172>>2];L[a+176>>2]=b;b=L[c+168>>2];L[a+164>>2]=L[c+164>>2];L[a+168>>2]=b}c=j>=S(0)&f>=S(0);break b;case 2:L[k+8>>2]=0;L[k+12>>2]=0;L[k>>2]=0;L[k+4>>2]=0;sd(k,a+4|0,a+20|0,a+36|0,b);L[a+256>>2]=0;f=P[a+336>>2];e=P[a+340>>2];h=P[a+344>>2];i=S(S(S(f*P[a+92>>2])+S(e*P[a+108>>2]))+S(h*P[a+124>>2]));P[a+252>>2]=i;j=S(S(S(f*P[a+88>>2])+S(e*P[a+104>>2]))+S(h*P[a+120>>2]));P[a+248>>2]=j;l=S(S(S(f*P[a+84>>2])+S(e*P[a+100>>2]))+S(h*P[a+116>>2]));P[a+244>>2]=l;n=P[a+180>>2];o=P[a+196>>2];m=P[a+168>>2];q=P[a+184>>2];r=P[a+200>>2];u=P[a+172>>2];v=P[a+188>>2];w=P[a+204>>2];x=P[a+164>>2];L[a+288>>2]=0;p=i;i=S(S(S(f*u)+S(e*v))+S(h*w));P[a+284>>2]=p-i;p=j;j=S(S(S(f*m)+S(e*q))+S(h*r));P[a+280>>2]=p-j;m=l;l=S(S(S(f*x)+S(e*n))+S(h*o));P[a+276>>2]=m-l;L[a+272>>2]=0;P[a+268>>2]=i;P[a+264>>2]=j;P[a+260>>2]=l;e:{f:{g:{h:{i:{b=L[a>>2];j:{if((b|0)>=4){g=M[a+332|0];if(g&8){c=b;break j}c=b-1|0;L[a>>2]=c;b=(c<<4)+a|0;d=L[b+16>>2];L[a+60>>2]=L[b+12>>2];L[a+64>>2]=d;d=L[b+8>>2];L[a+52>>2]=L[b+4>>2];L[a+56>>2]=d;d=L[b+88>>2];L[a+132>>2]=L[b+84>>2];L[a+136>>2]=d;d=L[b+96>>2];L[a+140>>2]=L[b+92>>2];L[a+144>>2]=d;d=L[b+176>>2];L[a+220>>2]=L[b+172>>2];L[a+224>>2]=d;d=L[b+168>>2];L[a+212>>2]=L[b+164>>2];L[a+216>>2]=d;break j}c=3;if((b|0)!=3){break i}g=M[a+332|0]}if(g&4){break h}c=c-1|0;L[a>>2]=c;b=(c<<4)+a|0;d=L[b+16>>2];L[a+44>>2]=L[b+12>>2];L[a+48>>2]=d;d=L[b+8>>2];L[a+36>>2]=L[b+4>>2];L[a+40>>2]=d;d=L[b+96>>2];L[a+124>>2]=L[b+92>>2];L[a+128>>2]=d;d=L[b+88>>2];L[a+116>>2]=L[b+84>>2];L[a+120>>2]=d;d=L[b+176>>2];L[a+204>>2]=L[b+172>>2];L[a+208>>2]=d;d=L[b+168>>2];L[a+196>>2]=L[b+164>>2];L[a+200>>2]=d;break h}c=2;if((b|0)<2){break g}g=M[a+332|0]}if(g&2){break f}c=c-1|0;L[a>>2]=c;b=(c<<4)+a|0;d=L[b+16>>2];L[a+28>>2]=L[b+12>>2];L[a+32>>2]=d;d=L[b+8>>2];L[a+20>>2]=L[b+4>>2];L[a+24>>2]=d;d=L[b+96>>2];L[a+108>>2]=L[b+92>>2];L[a+112>>2]=d;d=L[b+88>>2];L[a+100>>2]=L[b+84>>2];L[a+104>>2]=d;d=L[b+176>>2];L[a+188>>2]=L[b+172>>2];L[a+192>>2]=d;d=L[b+168>>2];L[a+180>>2]=L[b+164>>2];L[a+184>>2]=d;break f}c=1;if((b|0)!=1){break e}g=M[a+332|0]}if(g&1){break e}c=c-1|0;L[a>>2]=c;c=(c<<4)+a|0;b=L[c+16>>2];L[a+12>>2]=L[c+12>>2];L[a+16>>2]=b;b=L[c+8>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=b;b=L[c+96>>2];L[a+92>>2]=L[c+92>>2];L[a+96>>2]=b;b=L[c+88>>2];L[a+84>>2]=L[c+84>>2];L[a+88>>2]=b;b=L[c+176>>2];L[a+172>>2]=L[c+172>>2];L[a+176>>2]=b;b=L[c+168>>2];L[a+164>>2]=L[c+164>>2];L[a+168>>2]=b}c=0;if(!(h>=S(0))|(!(f>=S(0))|!(e>=S(0)))){break b}c=P[a+348>>2]>=S(0);break b;case 3:break c;default:break b}}L[k+8>>2]=0;L[k+12>>2]=0;L[k>>2]=0;L[k+4>>2]=0;g=fa-48|0;fa=g;J[g+24|0]=0;d=L[k+12>>2];L[b+8>>2]=L[k+8>>2];L[b+12>>2]=d;d=L[k+4>>2];L[b>>2]=L[k>>2];L[b+4>>2]=d;s=M[b+16|0];J[b+16|0]=s|15;O=P[k+8>>2];d=a+4|0;f=P[d+8>>2];Q=S(O-f);z=a+36|0;p=P[z+8>>2];e=S(p-f);A=a+52|0;t=P[A>>2];h=P[d>>2];i=S(t-h);B=a+20|0;j=P[B+4>>2];l=P[d+4>>2];n=S(j-l);o=P[B>>2];m=S(o-h);F=P[A+4>>2];q=S(F-l);C=S(S(i*n)-S(m*q));G=P[z>>2];r=S(G-h);u=P[B+8>>2];v=S(u-f);U=P[A+8>>2];w=S(U-f);D=S(S(q*v)-S(n*w));H=P[z+4>>2];x=S(H-l);I=S(S(w*m)-S(v*i));y=S(S(e*C)+S(S(r*D)+S(x*I)));K=S(Q*C);C=P[k>>2];R=S(C-h);N=S(R*D);D=P[k+4>>2];T=S(D-l);V=S(y*y)>2];e=S(h-O);f=S(e*e);i=P[g+8>>2];e=S(i-C);l=S(e*e);j=P[g+12>>2];e=S(j-D);e=S(f+S(l+S(e*e)));f=S(34028234663852886e22);if(!(e>2]=P[g+20>>2];P[b+8>>2]=h;P[b+4>>2]=j;P[b>>2]=i;J[b+16|0]=M[g+24|0]&7|s&-16;f=P[g+36>>2];s=L[g+32>>2];E=L[g+28>>2];L[b+32>>2]=0;P[b+28>>2]=f;L[b+20>>2]=E;L[b+24>>2]=s;f=e}m:{if(!W){break m}sd(k,d,z,A,g+8|0);h=P[g+16>>2];e=S(h-P[k+8>>2]);l=S(e*e);i=P[g+8>>2];e=S(i-P[k>>2]);m=S(e*e);j=P[g+12>>2];e=S(j-P[k+4>>2]);e=S(l+S(m+S(e*e)));if(!(e>2]=P[g+20>>2];P[b+8>>2]=h;P[b+4>>2]=j;P[b>>2]=i;s=M[g+24|0];J[b+16|0]=M[b+16|0]&240|(s&1|s<<1&12);s=L[g+36>>2];E=L[g+32>>2];f=P[g+28>>2];L[b+24>>2]=0;L[b+28>>2]=E;L[b+32>>2]=s;P[b+20>>2]=f;f=e}n:{if(!V){break n}sd(k,d,A,B,g+8|0);h=P[g+16>>2];e=S(h-P[k+8>>2]);l=S(e*e);i=P[g+8>>2];e=S(i-P[k>>2]);m=S(e*e);j=P[g+12>>2];e=S(j-P[k+4>>2]);e=S(l+S(m+S(e*e)));if(!(e>2]=P[g+20>>2];P[b+8>>2]=h;P[b+4>>2]=j;P[b>>2]=i;d=M[g+24|0];J[b+16|0]=M[b+16|0]&240|(d&1|d>>>1&2|d<<2&8);f=P[g+36>>2];h=P[g+28>>2];P[b+32>>2]=P[g+32>>2];L[b+28>>2]=0;P[b+24>>2]=f;P[b+20>>2]=h;f=e}$=1;if(!X){break k}sd(k,B,A,z,g+8|0);j=f;f=P[g+16>>2];e=S(f-P[k+8>>2]);l=S(e*e);e=P[g+8>>2];h=S(e-P[k>>2]);m=S(h*h);h=P[g+12>>2];i=S(h-P[k+4>>2]);if(!(j>S(l+S(m+S(i*i))))){break k}P[b+12>>2]=P[g+20>>2];P[b+8>>2]=f;P[b+4>>2]=h;P[b>>2]=e;d=M[g+24|0];J[b+16|0]=M[b+16|0]&240|(d&4|d<<1&2|d<<2&8);f=P[g+36>>2];e=P[g+28>>2];P[b+32>>2]=P[g+32>>2];P[b+28>>2]=f;P[b+24>>2]=e;L[b+20>>2]=0}fa=g+48|0;if($){L[a+256>>2]=0;e=P[a+336>>2];h=P[a+340>>2];i=P[a+344>>2];f=P[a+348>>2];j=S(S(S(S(e*P[a+92>>2])+S(h*P[a+108>>2]))+S(i*P[a+124>>2]))+S(f*P[a+140>>2]));P[a+252>>2]=j;l=S(S(S(S(e*P[a+88>>2])+S(h*P[a+104>>2]))+S(i*P[a+120>>2]))+S(f*P[a+136>>2]));P[a+248>>2]=l;n=S(S(S(S(e*P[a+84>>2])+S(h*P[a+100>>2]))+S(i*P[a+116>>2]))+S(f*P[a+132>>2]));P[a+244>>2]=n;L[a+288>>2]=0;L[a+272>>2]=0;o=S(S(S(S(e*P[a+164>>2])+S(h*P[a+180>>2]))+S(i*P[a+196>>2]))+S(f*P[a+212>>2]));P[a+260>>2]=o;m=S(S(S(S(e*P[a+168>>2])+S(h*P[a+184>>2]))+S(i*P[a+200>>2]))+S(f*P[a+216>>2]));P[a+264>>2]=m;e=S(S(S(S(e*P[a+172>>2])+S(h*P[a+188>>2]))+S(i*P[a+204>>2]))+S(f*P[a+220>>2]));P[a+268>>2]=e;P[a+276>>2]=n-o;P[a+280>>2]=l-m;P[a+284>>2]=j-e;o:{p:{q:{r:{s:{b=L[a>>2];t:{if((b|0)>=4){g=M[a+332|0];if(g&8){c=b;break t}c=b-1|0;L[a>>2]=c;b=(c<<4)+a|0;d=L[b+16>>2];L[a+60>>2]=L[b+12>>2];L[a+64>>2]=d;d=L[b+8>>2];L[a+52>>2]=L[b+4>>2];L[a+56>>2]=d;d=L[b+96>>2];L[a+140>>2]=L[b+92>>2];L[a+144>>2]=d;d=L[b+88>>2];L[a+132>>2]=L[b+84>>2];L[a+136>>2]=d;d=L[b+176>>2];L[a+220>>2]=L[b+172>>2];L[a+224>>2]=d;d=L[b+168>>2];L[a+212>>2]=L[b+164>>2];L[a+216>>2]=d;break t}c=3;if((b|0)!=3){break s}g=M[a+332|0]}if(g&4){break r}c=c-1|0;L[a>>2]=c;b=(c<<4)+a|0;d=L[b+16>>2];L[a+44>>2]=L[b+12>>2];L[a+48>>2]=d;d=L[b+8>>2];L[a+36>>2]=L[b+4>>2];L[a+40>>2]=d;d=L[b+96>>2];L[a+124>>2]=L[b+92>>2];L[a+128>>2]=d;d=L[b+88>>2];L[a+116>>2]=L[b+84>>2];L[a+120>>2]=d;d=L[b+176>>2];L[a+204>>2]=L[b+172>>2];L[a+208>>2]=d;d=L[b+168>>2];L[a+196>>2]=L[b+164>>2];L[a+200>>2]=d;break r}c=2;if((b|0)<2){break q}g=M[a+332|0]}if(g&2){break p}c=c-1|0;L[a>>2]=c;b=(c<<4)+a|0;d=L[b+16>>2];L[a+28>>2]=L[b+12>>2];L[a+32>>2]=d;d=L[b+8>>2];L[a+20>>2]=L[b+4>>2];L[a+24>>2]=d;d=L[b+96>>2];L[a+108>>2]=L[b+92>>2];L[a+112>>2]=d;d=L[b+88>>2];L[a+100>>2]=L[b+84>>2];L[a+104>>2]=d;d=L[b+176>>2];L[a+188>>2]=L[b+172>>2];L[a+192>>2]=d;d=L[b+168>>2];L[a+180>>2]=L[b+164>>2];L[a+184>>2]=d;break p}c=1;if((b|0)!=1){break o}g=M[a+332|0]}if(g&1){break o}c=c-1|0;L[a>>2]=c;c=(c<<4)+a|0;b=L[c+16>>2];L[a+12>>2]=L[c+12>>2];L[a+16>>2]=b;b=L[c+8>>2];L[a+4>>2]=L[c+4>>2];L[a+8>>2]=b;b=L[c+96>>2];L[a+92>>2]=L[c+92>>2];L[a+96>>2]=b;b=L[c+88>>2];L[a+84>>2]=L[c+84>>2];L[a+88>>2]=b;b=L[c+176>>2];L[a+172>>2]=L[c+172>>2];L[a+176>>2]=b;b=L[c+168>>2];L[a+164>>2]=L[c+164>>2];L[a+168>>2]=b}c=P[a+336>>2]>=S(0)&P[a+340>>2]>=S(0)&P[a+344>>2]>=S(0)&f>=S(0);break b}if(M[a+352|0]){break b}L[a+276>>2]=0;L[a+280>>2]=0;c=1;J[a+312|0]=1;L[a+284>>2]=0;L[a+288>>2]=0;break a}J[a+312|0]=c}fa=k+16|0;return(c&255)!=0}function dm(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=S(0),j=0,k=0,l=S(0),m=0,n=0,o=S(0),p=0,q=S(0),r=0,s=0,t=S(0),u=0,v=0,w=S(0),x=S(0),y=0,z=S(0),A=S(0),B=0,C=S(0),D=0,E=0,F=0,G=S(0),H=0,I=S(0),Q=S(0),U=S(0),V=S(0),W=S(0),X=S(0),Y=S(0),Z=S(0),$=S(0);g=fa-96|0;fa=g;J[g+52|0]=1;L[g+48>>2]=0;J[g+72|0]=1;L[g+40>>2]=0;L[g+44>>2]=0;L[g+68>>2]=0;J[g+92|0]=1;L[g+60>>2]=0;L[g+64>>2]=0;L[g+88>>2]=0;L[g+80>>2]=0;L[g+84>>2]=0;L[g+28>>2]=0;J[g+32|0]=1;L[g+20>>2]=0;L[g+24>>2]=0;L[a+72>>2]=0;L[a+76>>2]=0;L[a+64>>2]=0;L[a+68>>2]=0;a:{b:{j=L[a+28>>2];if((j|0)>0){while(1){D=R(B,36);E=L[(D+L[a+36>>2]|0)+4>>2];if((E|0)>0){F=0;while(1){b=L[(L[a+36>>2]+D|0)+12>>2];e=L[b+(F<<2)>>2];F=F+1|0;H=(E|0)==(F|0);b=L[b+((H?0:F)<<2)>>2];K[g+14>>1]=b;K[g+12>>1]=e;c=e<<16>>16;d=b<<16>>16;if((c|0)<(d|0)){K[g+14>>1]=e;K[g+12>>1]=b;c=b;d=e}v=d<<16>>16;j=0;n=c<<16>>16;b=n+(d<<16)&L[g+64>>2]-1;c:{if(b>>>0>=O[g+20>>2]){break c}b=L[L[g+28>>2]+(b<<2)>>2];if((b|0)==-1){break c}h=L[g+48>>2];e=L[g+88>>2];while(1){k=b<<2;b=k+e|0;if(!(N[b>>1]==(c&65535)&N[b+2>>1]==(d&65535))){b=L[h+k>>2];if((b|0)!=-1){continue}break c}break}j=k+L[g+68>>2]|0}b=L[a+16>>2];e=b+(v<<4)|0;b=b+(n<<4)|0;i=S(P[e+8>>2]-P[b+8>>2]);G=i;q=S(P[e>>2]-P[b>>2]);o=S(P[e+4>>2]-P[b+4>>2]);i=S(S(1)/S(_(S(S(i*i)+S(S(q*q)+S(o*o))))));w=S(G*i);x=S(o*i);l=S(q*i);c=L[a+48>>2];d:{if((c|0)>0){e=L[a+56>>2];b=0;while(1){d=e+(b<<4)|0;q=P[d+8>>2];i=P[d>>2];o=P[d+4>>2];if(!(+S(T(S(i-l)))>1e-6|+S(T(S(o-x)))>1e-6|+S(T(S(q-w)))>1e-6)|!(+S(T(S(l+i)))>1e-6|+S(T(S(x+o)))>1e-6|+S(T(S(w+q)))>1e-6)){break d}b=b+1|0;if((b|0)!=(c|0)){continue}break}}e:{if(L[a+52>>2]!=(c|0)){break e}r=c?c<<1:1;if((r|0)<=(c|0)){break e}f:{if(!r){d=0;break f}L[8513]=L[8513]+1;d=ha[L[6798]](r<<4,16)|0;c=L[a+48>>2]}g:{if((c|0)<=0){break g}v=c&1;b=0;if((c|0)!=1){n=c&-2;c=0;while(1){k=b<<4;h=k+d|0;p=k+L[a+56>>2]|0;e=L[p+4>>2];L[h>>2]=L[p>>2];L[h+4>>2]=e;e=L[p+12>>2];L[h+8>>2]=L[p+8>>2];L[h+12>>2]=e;e=k|16;h=e+d|0;k=e+L[a+56>>2]|0;e=L[k+4>>2];L[h>>2]=L[k>>2];L[h+4>>2]=e;e=L[k+12>>2];L[h+8>>2]=L[k+8>>2];L[h+12>>2]=e;b=b+2|0;c=c+2|0;if((n|0)!=(c|0)){continue}break}}if(!v){break g}b=b<<4;c=b+d|0;e=b+L[a+56>>2]|0;b=L[e+4>>2];L[c>>2]=L[e>>2];L[c+4>>2]=b;b=L[e+12>>2];L[c+8>>2]=L[e+8>>2];L[c+12>>2]=b}b=L[a+56>>2];if(!(b?!b|!M[a+60|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+56>>2]=d;J[a+60|0]=1;L[a+52>>2]=r;c=L[a+48>>2]}b=L[a+56>>2]+(c<<4)|0;L[b+12>>2]=0;P[b+8>>2]=w;P[b+4>>2]=x;P[b>>2]=l;L[a+48>>2]=L[a+48>>2]+1}h:{if(j){K[j+2>>1]=B;if(H){break h}continue}K[g+8>>1]=B;K[g+10>>1]=65535;i:{j:{d=K[g+12>>1];k=N[g+14>>1];f=g+16|0;e=L[f+48>>2];y=d+(k<<16)&e-1;k:{if(y>>>0>=O[f+4>>2]){break k}b=L[L[f+12>>2]+(y<<2)>>2];if((b|0)==-1){break k}v=L[f+32>>2];n=L[f+72>>2];h=d&65535;while(1){c=b<<2;d=c+n|0;if((h|0)==N[d>>1]&(k|0)==N[d+2>>1]){break j}b=L[c+v>>2];if((b|0)!=-1){continue}break}}v=L[f+44>>2];b=v;l:{if((e|0)!=(b|0)){break l}b=e;p=b?b<<1:1;if((b|0)>=(p|0)){break l}m:{if(!p){m=0;d=e;break m}L[8513]=L[8513]+1;m=ha[L[6798]](p<<2,16)|0;d=L[f+44>>2]}n:{if((d|0)<=0){break n}r=0;b=0;if(d>>>0>=4){n=d&-4;j=0;while(1){k=b<<2;h=k+m|0;c=k+L[f+52>>2]|0;c=N[c>>1]|N[c+2>>1]<<16;K[h>>1]=c;K[h+2>>1]=c>>>16;c=k|4;h=c+m|0;c=c+L[f+52>>2]|0;c=N[c>>1]|N[c+2>>1]<<16;K[h>>1]=c;K[h+2>>1]=c>>>16;c=k|8;h=c+m|0;c=c+L[f+52>>2]|0;c=N[c>>1]|N[c+2>>1]<<16;K[h>>1]=c;K[h+2>>1]=c>>>16;c=k|12;h=c+m|0;c=c+L[f+52>>2]|0;c=N[c>>1]|N[c+2>>1]<<16;K[h>>1]=c;K[h+2>>1]=c>>>16;b=b+4|0;j=j+4|0;if((n|0)!=(j|0)){continue}break}}h=d&3;if(!h){break n}while(1){d=b<<2;c=d+m|0;d=d+L[f+52>>2]|0;d=N[d>>1]|N[d+2>>1]<<16;K[c>>1]=d;K[c+2>>1]=d>>>16;b=b+1|0;r=r+1|0;if((h|0)!=(r|0)){continue}break}}b=L[f+52>>2];if(!(b?!b|!M[f+56|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[f+52>>2]=m;J[f+56|0]=1;L[f+48>>2]=p;b=L[f+44>>2]}d=L[f+52>>2]+(b<<2)|0;b=N[g+8>>1]|N[g+10>>1]<<16;K[d>>1]=b;K[d+2>>1]=b>>>16;L[f+44>>2]=L[f+44>>2]+1;p=L[f- -64>>2];o:{if((p|0)!=L[f+68>>2]){break o}n=p?p<<1:1;if((n|0)<=(p|0)){break o}p:{if(!n){m=0;break p}L[8513]=L[8513]+1;m=ha[L[6798]](n<<2,16)|0;p=L[f+64>>2]}q:{if((p|0)<=0){break q}r=0;b=0;if(p>>>0>=4){h=p&-4;j=0;while(1){k=b<<2;c=k+m|0;d=k+L[f+72>>2]|0;d=N[d>>1]|N[d+2>>1]<<16;K[c>>1]=d;K[c+2>>1]=d>>>16;d=k|4;c=d+m|0;d=d+L[f+72>>2]|0;d=N[d>>1]|N[d+2>>1]<<16;K[c>>1]=d;K[c+2>>1]=d>>>16;d=k|8;c=d+m|0;d=d+L[f+72>>2]|0;d=N[d>>1]|N[d+2>>1]<<16;K[c>>1]=d;K[c+2>>1]=d>>>16;d=k|12;c=d+m|0;d=d+L[f+72>>2]|0;d=N[d>>1]|N[d+2>>1]<<16;K[c>>1]=d;K[c+2>>1]=d>>>16;b=b+4|0;j=j+4|0;if((h|0)!=(j|0)){continue}break}}h=p&3;if(!h){break q}while(1){d=b<<2;c=d+m|0;d=d+L[f+72>>2]|0;d=N[d>>1]|N[d+2>>1]<<16;K[c>>1]=d;K[c+2>>1]=d>>>16;b=b+1|0;r=r+1|0;if((h|0)!=(r|0)){continue}break}}b=L[f+72>>2];if(!(b?!b|!M[f+76|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[f+72>>2]=m;J[f+76|0]=1;L[f+68>>2]=n;p=L[f+64>>2]}d=L[f+72>>2]+(p<<2)|0;b=N[g+12>>1]|N[g+14>>1]<<16;K[d>>1]=b;K[d+2>>1]=b>>>16;L[f+64>>2]=L[f+64>>2]+1;if((e|0)>2]){j=0;m=0;p=0;y=0;d=L[f+4>>2];u=L[f+48>>2];r:{if((d|0)>=(u|0)){break r}s:{if((u|0)<=L[f+8>>2]){j=L[f+12>>2];break s}if(u){L[8513]=L[8513]+1;j=ha[L[6798]](u<<2,16)|0;b=L[f+4>>2]}else{b=d}n=L[f+12>>2];t:{u:{if((b|0)>0){if(b>>>0>=4){c=b&-4;while(1){h=m<<2;L[h+j>>2]=L[h+n>>2];e=h|4;L[e+j>>2]=L[e+n>>2];e=h|8;L[e+j>>2]=L[e+n>>2];e=h|12;L[e+j>>2]=L[e+n>>2];m=m+4|0;p=p+4|0;if((c|0)!=(p|0)){continue}break}}e=b&3;if(!e){break u}while(1){b=m<<2;L[b+j>>2]=L[b+n>>2];m=m+1|0;y=y+1|0;if((e|0)!=(y|0)){continue}break}break u}if(n){break u}break t}if(n?M[f+16|0]:0){L[8514]=L[8514]+1;ha[L[6799]](n)}}L[f+12>>2]=j;J[f+16|0]=1;L[f+8>>2]=u}b=d<<2;k=u<<2;pa(b+j|0,0,k-b|0);L[f+4>>2]=u;e=L[f+24>>2];if((e|0)<(u|0)){v:{if((u|0)<=L[f+28>>2]){j=L[f+32>>2];break v}w:{if(!u){j=0;b=e;break w}L[8513]=L[8513]+1;j=ha[L[6798]](k,16)|0;b=L[f+24>>2]}r=L[f+32>>2];x:{if((b|0)>0){y=0;m=0;if(b>>>0>=4){h=b&-4;p=0;while(1){n=m<<2;L[n+j>>2]=L[n+r>>2];c=n|4;L[c+j>>2]=L[c+r>>2];c=n|8;L[c+j>>2]=L[c+r>>2];c=n|12;L[c+j>>2]=L[c+r>>2];m=m+4|0;p=p+4|0;if((h|0)!=(p|0)){continue}break}}c=b&3;if(!c){break x}while(1){b=m<<2;L[b+j>>2]=L[b+r>>2];m=m+1|0;y=y+1|0;if((c|0)!=(y|0)){continue}break}break x}if(r){break x}L[f+32>>2]=j;L[f+28>>2]=u;J[f+36|0]=1;break v}if(r?M[f+36|0]:0){L[8514]=L[8514]+1;ha[L[6799]](r)}L[f+32>>2]=j;J[f+36|0]=1;L[f+28>>2]=u}b=e<<2;pa(b+j|0,0,k-b|0)}L[f+24>>2]=u;if((u|0)>0){pa(L[f+12>>2],255,k);pa(L[f+32>>2],255,k)}if((d|0)<=0){break r}n=L[f+32>>2];h=L[f+72>>2];c=L[f+12>>2];m=0;while(1){e=m<<2;b=e+h|0;b=c+(((N[b+2>>1]<<16)+K[b>>1]&L[f+48>>2]-1)<<2)|0;L[e+n>>2]=L[b>>2];L[b>>2]=m;m=m+1|0;if((d|0)!=(m|0)){continue}break}}y=K[g+12>>1]+(N[g+14>>1]<<16)&L[f+48>>2]-1}b=L[f+12>>2]+(y<<2)|0;L[L[f+32>>2]+(v<<2)>>2]=L[b>>2];L[b>>2]=v;break i}e=L[f+52>>2]+(b<<2)|0;b=N[g+8>>1]|N[g+10>>1]<<16;K[e>>1]=b;K[e+2>>1]=b>>>16}if(!H){continue}}break}j=L[a+28>>2]}B=B+1|0;if((B|0)<(j|0)){continue}break}B=0;d=(j|0)>0;if(d){break b}}i=P[a+72>>2];z=P[a+68>>2];A=P[a+64>>2];break a}D=L[a+16>>2];h=L[a+36>>2];A=P[a+64>>2];z=P[a+68>>2];i=P[a+72>>2];while(1){b=h+R(B,36)|0;k=L[b+4>>2];if((k|0)>=3){v=L[b+12>>2];E=D+(L[v>>2]<<4)|0;c=k-2|0;b=1;while(1){n=D+(L[v+(b<<2)>>2]<<4)|0;V=P[n+8>>2];e=b+1|0;s=D+(L[v+((e|0)%(k|0)<<2)>>2]<<4)|0;W=P[s+8>>2];I=P[E>>2];X=P[n>>2];Y=S(I-X);Q=P[E+4>>2];Z=P[s+4>>2];t=S(Q-Z);w=P[s>>2];x=S(I-w);l=P[n+4>>2];o=S(Q-l);$=S(S(Y*t)-S(x*o));U=P[E+8>>2];q=S(U-W);G=S(o*q);o=S(U-V);t=S(G-S(t*o));G=i;i=S(S(o*x)-S(q*Y));o=S(S(_(S(S($*$)+S(S(t*t)+S(i*i)))))*S(.5));i=S(G+S(S(S(S(U+V)+W)*S(.3333333432674408))*o));P[a+72>>2]=i;z=S(z+S(S(S(Z+S(Q+l))*S(.3333333432674408))*o));P[a+68>>2]=z;A=S(A+S(S(S(w+S(I+X))*S(.3333333432674408))*o));P[a+64>>2]=A;C=S(C+o);s=(b|0)==(c|0);b=e;if(!s){continue}break}}B=B+1|0;if((B|0)!=(j|0)){continue}break}s=d}L[a+96>>2]=2139095039;o=S(S(1)/C);w=S(o*i);P[a+72>>2]=w;x=S(o*z);P[a+68>>2]=x;l=S(o*A);P[a+64>>2]=l;q=S(34028234663852886e22);o=S(34028234663852886e22);if(s){e=L[a+36>>2];b=0;while(1){s=e+R(b,36)|0;i=S(T(S(P[s+32>>2]+S(S(w*P[s+28>>2])+S(S(l*P[s+20>>2])+S(x*P[s+24>>2]))))));if(i>2]=i;o=i}b=b+1|0;if((j|0)!=(b|0)){continue}break}}s=L[a+8>>2];y:{if((s|0)<=0){t=S(-34028234663852886e22);i=S(34028234663852886e22);z=S(-34028234663852886e22);A=S(-34028234663852886e22);C=S(34028234663852886e22);break y}e=L[a+16>>2];A=S(-34028234663852886e22);b=0;C=S(34028234663852886e22);z=S(-34028234663852886e22);t=S(-34028234663852886e22);i=S(34028234663852886e22);while(1){d=e+(b<<4)|0;l=P[d+8>>2];A=l>A?l:A;i=i>l?l:i;l=P[d+4>>2];z=l>z?l:z;q=l>2];t=l>t?l:t;C=l>2]=0;l=S(A-i);P[a+124>>2]=l;w=S(z-q);P[a+120>>2]=w;x=S(t-C);P[a+116>>2]=x;L[a+112>>2]=0;P[a+108>>2]=i+A;P[a+104>>2]=q+z;P[a+100>>2]=t+C;e=w>x;s=l>(e?w:x)?2:e;e=s<<2;i=P[e+(a+116|0)>>2];l=S(o/S(1.7320507764816284));P[a+84>>2]=l;P[a+88>>2]=l;P[a+80>>2]=l;d=a+80|0;e=d+e|0;i=S(i*S(.5));P[e>>2]=i;q=S(S(i-l)*S(.0009765625));z:{A:{while(1){if(Pg(a)){break A}i=S(i-q);P[e>>2]=i;b=b+1|0;if((b|0)!=1024){continue}break}P[a+84>>2]=l;P[a+88>>2]=l;P[a+80>>2]=l;break z}b=1<>2];b=d+(b<<2)|0;t=P[b>>2];o=S(S(o-l)*S(.0009765625));P[b>>2]=o+t;q=S(o+P[e>>2]);P[e>>2]=q;if(Pg(a)){c=0;while(1){i=q;c=c+1|0;if((c|0)==1024){break z}t=P[b>>2];P[b>>2]=o+t;q=S(o+P[e>>2]);P[e>>2]=q;if(Pg(a)){continue}break}}P[b>>2]=t;P[e>>2]=i}a=L[g+88>>2];if(!(a?!a|!M[g+92|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[g+88>>2]=0;J[g+92|0]=1;L[g+80>>2]=0;L[g+84>>2]=0;a=L[g+68>>2];if(!(a?!a|!M[g+72|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[g+68>>2]=0;J[g+72|0]=1;L[g+60>>2]=0;L[g+64>>2]=0;a=L[g+48>>2];if(!(a?!a|!M[g+52|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[g+48>>2]=0;J[g+52|0]=1;L[g+40>>2]=0;L[g+44>>2]=0;a=L[g+28>>2];if(!(a?!a|!M[g+32|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}fa=g+96|0}function $z(a,b){a=a|0;b=S(b);var c=0,d=0,e=0,f=0,g=S(0),h=0,i=0,j=0,k=S(0),l=S(0),m=S(0),n=0,o=0,p=S(0),q=S(0),r=0,s=S(0),t=S(0),u=S(0),v=0,w=S(0),x=0,y=S(0),z=S(0),A=S(0),B=S(0),C=S(0),D=S(0),E=0,F=S(0),G=S(0),H=S(0),I=S(0),K=S(0);n=fa-96|0;fa=n;c=L[a+136>>2];a:{if(!c){break a}if(!((c|0)<=L[a+8>>2]|(c|0)<=L[a+12>>2])){L[8513]=L[8513]+1;f=ha[L[6798]](c<<4,16)|0;i=L[a+8>>2];b:{if((i|0)<=0){break b}if((i|0)!=1){r=i&-2;while(1){j=d<<4;o=j+f|0;h=j+L[a+16>>2]|0;v=L[h+4>>2];L[o>>2]=L[h>>2];L[o+4>>2]=v;v=L[h+12>>2];L[o+8>>2]=L[h+8>>2];L[o+12>>2]=v;h=j|16;j=h+f|0;h=h+L[a+16>>2]|0;o=L[h+4>>2];L[j>>2]=L[h>>2];L[j+4>>2]=o;o=L[h+12>>2];L[j+8>>2]=L[h+8>>2];L[j+12>>2]=o;d=d+2|0;e=e+2|0;if((r|0)!=(e|0)){continue}break}}if(!(i&1)){break b}e=d<<4;d=e+f|0;e=e+L[a+16>>2]|0;i=L[e+4>>2];L[d>>2]=L[e>>2];L[d+4>>2]=i;i=L[e+12>>2];L[d+8>>2]=L[e+8>>2];L[d+12>>2]=i}d=L[a+16>>2];if(!(d?!d|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[a+16>>2]=f;J[a+20|0]=1;L[a+12>>2]=c}L[a+8>>2]=c;if(!((c|0)<=L[a+28>>2]|(c|0)<=L[a+32>>2])){L[8513]=L[8513]+1;f=ha[L[6798]](c<<4,16)|0;i=L[a+28>>2];c:{if((i|0)<=0){break c}d=0;if((i|0)!=1){r=i&-2;e=0;while(1){j=d<<4;o=j+f|0;h=j+L[a+36>>2]|0;v=L[h+4>>2];L[o>>2]=L[h>>2];L[o+4>>2]=v;v=L[h+12>>2];L[o+8>>2]=L[h+8>>2];L[o+12>>2]=v;h=j|16;j=h+f|0;h=h+L[a+36>>2]|0;o=L[h+4>>2];L[j>>2]=L[h>>2];L[j+4>>2]=o;o=L[h+12>>2];L[j+8>>2]=L[h+8>>2];L[j+12>>2]=o;d=d+2|0;e=e+2|0;if((r|0)!=(e|0)){continue}break}}if(!(i&1)){break c}e=d<<4;d=e+f|0;e=e+L[a+36>>2]|0;i=L[e+4>>2];L[d>>2]=L[e>>2];L[d+4>>2]=i;i=L[e+12>>2];L[d+8>>2]=L[e+8>>2];L[d+12>>2]=i}d=L[a+36>>2];if(!(d?!d|!M[a+40|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[a+36>>2]=f;J[a+40|0]=1;L[a+32>>2]=c}L[a+28>>2]=c;v=L[a+48>>2];if((v|0)<(c|0)){d:{if((c|0)<=L[a+52>>2]){j=c<<2;e=L[a+56>>2];break d}L[8513]=L[8513]+1;j=c<<2;e=ha[L[6798]](j,16)|0;f=L[a+56>>2];e:{r=L[a+48>>2];if((r|0)>0){i=0;d=0;if(r>>>0>=4){E=r&-4;h=0;while(1){o=d<<2;P[o+e>>2]=P[f+o>>2];x=o|4;P[x+e>>2]=P[f+x>>2];x=o|8;P[x+e>>2]=P[f+x>>2];o=o|12;P[o+e>>2]=P[f+o>>2];d=d+4|0;h=h+4|0;if((E|0)!=(h|0)){continue}break}}h=r&3;if(!h){break e}while(1){o=d<<2;P[o+e>>2]=P[f+o>>2];d=d+1|0;i=i+1|0;if((h|0)!=(i|0)){continue}break}break e}if(f){break e}L[a+56>>2]=e;L[a+52>>2]=c;J[a+60|0]=1;break d}if(f?M[a+60|0]:0){L[8514]=L[8514]+1;ha[L[6799]](f)}L[a+56>>2]=e;J[a+60|0]=1;L[a+52>>2]=c}d=v<<2;pa(d+e|0,0,j-d|0)}L[a+48>>2]=c;v=L[a+68>>2];if((v|0)<(c|0)){f:{if((c|0)<=L[a+72>>2]){j=c<<2;e=L[a+76>>2];break f}L[8513]=L[8513]+1;j=c<<2;e=ha[L[6798]](j,16)|0;f=L[a+76>>2];g:{r=L[a+68>>2];if((r|0)>0){i=0;d=0;if(r>>>0>=4){E=r&-4;h=0;while(1){o=d<<2;P[o+e>>2]=P[f+o>>2];x=o|4;P[x+e>>2]=P[f+x>>2];x=o|8;P[x+e>>2]=P[f+x>>2];o=o|12;P[o+e>>2]=P[f+o>>2];d=d+4|0;h=h+4|0;if((E|0)!=(h|0)){continue}break}}h=r&3;if(!h){break g}while(1){o=d<<2;P[o+e>>2]=P[f+o>>2];d=d+1|0;i=i+1|0;if((h|0)!=(i|0)){continue}break}break g}if(f){break g}L[a+76>>2]=e;L[a+72>>2]=c;J[a+80|0]=1;break f}if(f?M[a+80|0]:0){L[8514]=L[8514]+1;ha[L[6799]](f)}L[a+76>>2]=e;J[a+80|0]=1;L[a+72>>2]=c}d=v<<2;pa(d+e|0,0,j-d|0)}L[a+68>>2]=c;i=L[a+136>>2];if((i|0)<=0){break a}c=L[a+56>>2];f=L[a+76>>2];e=0;d=0;if(i>>>0>=4){o=i&-4;h=0;while(1){j=d<<2;L[j+f>>2]=0;L[c+j>>2]=0;r=j|4;L[r+f>>2]=0;L[c+r>>2]=0;r=j|8;L[r+f>>2]=0;L[c+r>>2]=0;j=j|12;L[j+f>>2]=0;L[c+j>>2]=0;d=d+4|0;h=h+4|0;if((o|0)!=(h|0)){continue}break}}h=i&3;if(h){while(1){j=d<<2;L[j+f>>2]=0;L[c+j>>2]=0;d=d+1|0;e=e+1|0;if((h|0)!=(e|0)){continue}break}}if((i|0)<=0){break a}h=n+80|0;j=n- -64|0;e=0;while(1){f=L[a+144>>2]+R(e,284)|0;d=L[f+88>>2];if(d){c=L[f+104>>2];L[n+56>>2]=L[f+100>>2];L[n+60>>2]=c;c=L[f+96>>2];L[n+48>>2]=L[f+92>>2];L[n+52>>2]=c;c=L[f+120>>2];L[j+8>>2]=L[f+116>>2];L[j+12>>2]=c;c=L[f+112>>2];L[j>>2]=L[f+108>>2];L[j+4>>2]=c;c=L[f+136>>2];L[h+8>>2]=L[f+132>>2];L[h+12>>2]=c;c=L[f+128>>2];L[h>>2]=L[f+124>>2];L[h+4>>2]=c;c=L[a+120>>2]<<2;g=P[c+(n+48|0)>>2];m=P[c+j>>2];l=P[c+h>>2];i=e<<4;c=i+L[a+36>>2]|0;L[c+12>>2]=0;P[c+8>>2]=l;P[c+4>>2]=m;P[c>>2]=g;c=i+L[a+36>>2]|0;m=P[c+8>>2];l=P[f+8>>2];p=P[c>>2];k=P[f>>2];q=P[c+4>>2];u=P[f+4>>2];g=S(S(m*l)+S(S(p*k)+S(q*u)));m=S(m-S(l*g));l=S(p-S(k*g));p=S(q-S(u*g));g=S(S(1)/S(_(S(S(m*m)+S(S(l*l)+S(p*p))))));m=S(m*g);P[c+8>>2]=m;p=S(p*g);P[c+4>>2]=p;g=S(l*g);P[c>>2]=g;l=P[f+8>>2];k=P[f>>2];q=P[f+4>>2];c=i+L[a+16>>2]|0;L[c+12>>2]=0;P[c+8>>2]=S(k*p)-S(g*q);P[c+4>>2]=S(l*g)-S(m*k);P[c>>2]=S(q*m)-S(p*l);c=i+L[a+16>>2]|0;g=P[c+8>>2];k=g;l=S(g*g);g=P[c>>2];m=P[c+4>>2];l=S(S(1)/S(_(S(l+S(S(g*g)+S(m*m))))));P[c+8>>2]=k*l;P[c+4>>2]=m*l;P[c>>2]=g*l;c=L[a+116>>2];o=f+16|0;r=e<<2;v=r+L[a+76>>2]|0;f=i+L[a+36>>2]|0;t=P[f+8>>2];g=P[f>>2];A=P[f+4>>2];if(S(S(t*t)+S(S(g*g)+S(A*A)))>S(1.100000023841858)){k=S(0)}else{k=P[o+4>>2];m=S(k-P[c+56>>2]);q=P[o>>2];l=S(q-P[c+52>>2]);s=P[o+8>>2];p=S(s-P[c+60>>2]);k=S(k-P[d+56>>2]);q=S(q-P[d+52>>2]);u=P[f+4>>2];y=S(S(g*k)-S(q*u));s=S(s-P[d+60>>2]);w=P[f+8>>2];C=S(S(s*u)-S(k*w));z=S(S(q*w)-S(s*g));F=S(S(P[d+44>>2]*y)+S(S(P[d+12>>2]*C)+S(P[d+28>>2]*z)));B=t;t=P[c+328>>2];D=P[c+332>>2];G=P[d+328>>2];H=P[d+332>>2];I=S(B*S(S(S(S(t*m)-S(l*D))+P[c+320>>2])-S(S(S(G*k)-S(q*H))+P[d+320>>2])));K=S(D*p);D=P[c+336>>2];B=k;k=P[d+336>>2];s=S(S(I+S(S(g*S(S(S(K-S(m*D))+P[c+312>>2])-S(S(S(H*s)-S(B*k))+P[d+312>>2])))+S(A*S(S(S(S(D*l)-S(p*t))+P[c+316>>2])-S(S(S(k*q)-S(s*G))+P[d+316>>2])))))*S(-.20000000298023224));k=S(S(P[d+36>>2]*y)+S(S(P[d+4>>2]*C)+S(P[d+20>>2]*z)));t=S(S(P[d+396>>2]*k)*k);k=S(S(P[d+40>>2]*y)+S(S(P[d+8>>2]*C)+S(P[d+24>>2]*z)));t=S(S(S(F*P[d+404>>2])*F)+S(t+S(k*S(k*P[d+400>>2]))));k=S(S(l*u)-S(g*m));m=S(S(m*w)-S(u*p));g=S(S(p*g)-S(w*l));l=S(S(P[c+44>>2]*k)+S(S(P[c+12>>2]*m)+S(P[c+28>>2]*g)));p=S(S(P[c+404>>2]*l)*l);l=S(S(P[c+36>>2]*k)+S(S(P[c+4>>2]*m)+S(P[c+20>>2]*g)));g=S(S(P[c+40>>2]*k)+S(S(P[c+8>>2]*m)+S(P[c+24>>2]*g)));k=S(s*S(S(1)/S(t+S(P[d+344>>2]+S(P[c+344>>2]+S(p+S(S(S(P[c+396>>2]*l)*l)+S(g*S(g*P[c+400>>2])))))))))}P[v>>2]=k;d=r+L[a+76>>2]|0;P[d>>2]=P[6797]*P[d>>2];i=L[a+136>>2]}e=e+1|0;if((i|0)>(e|0)){continue}break}if((i|0)<=0){break a}e=L[a+144>>2];h=0;d=0;while(1){h:{i:{j:{o=R(d,284);i=o+e|0;c=L[i+88>>2];if(c){g=P[i+252>>2];if(g==S(0)){break j}g=S(g*b);break i}L[L[a+56>>2]+(d<<2)>>2]=0;L[(e+o|0)+280>>2]=1065353216;break h}e=L[a+116>>2];j=L[a+16>>2]+(d<<4)|0;g=P[i+256>>2];f=n+48|0;L[f+4>>2]=c;L[f>>2]=e;r=L[i+20>>2];L[f+8>>2]=L[i+16>>2];L[f+12>>2]=r;r=L[i+28>>2];L[f+16>>2]=L[i+24>>2];L[f+20>>2]=r;r=L[j+4>>2];L[f+24>>2]=L[j>>2];L[f+28>>2]=r;r=L[j+12>>2];L[f+32>>2]=L[j+8>>2];L[f+36>>2]=r;P[f+44>>2]=g==S(0)?S(0):g;A=P[i+16>>2];p=S(A-P[e+52>>2]);g=P[j+4>>2];m=P[j>>2];y=P[i+20>>2];k=S(y-P[e+56>>2]);u=S(S(p*g)-S(m*k));l=P[j+8>>2];C=P[i+24>>2];q=S(C-P[e+60>>2]);s=S(S(k*l)-S(g*q));w=S(S(q*m)-S(l*p));t=S(S(P[e+296>>2]*u)+S(S(P[e+264>>2]*s)+S(w*P[e+280>>2])));z=S(S(P[e+300>>2]*u)+S(S(P[e+268>>2]*s)+S(w*P[e+284>>2])));D=S(l*S(S(t*k)-S(p*z)));B=k;k=S(S(P[e+304>>2]*u)+S(S(P[e+272>>2]*s)+S(w*P[e+288>>2])));z=S(P[e+344>>2]+S(D+S(S(m*S(S(z*q)-S(B*k)))+S(g*S(S(k*p)-S(q*t))))));B=l;p=S(A-P[c+52>>2]);k=S(y-P[c+56>>2]);u=S(S(p*g)-S(m*k));q=S(C-P[c+60>>2]);s=S(S(k*l)-S(g*q));l=S(S(q*m)-S(l*p));w=S(S(P[c+296>>2]*u)+S(S(P[c+264>>2]*s)+S(l*P[c+280>>2])));t=S(S(P[c+300>>2]*u)+S(S(P[c+268>>2]*s)+S(l*P[c+284>>2])));y=m;m=S(S(P[c+304>>2]*u)+S(S(P[c+272>>2]*s)+S(l*P[c+288>>2])));P[f+40>>2]=S(1)/S(z+S(P[c+344>>2]+S(S(B*S(S(w*k)-S(p*t)))+S(S(y*S(S(t*q)-S(k*m)))+S(g*S(S(m*p)-S(q*w)))))));g=P[n+92>>2];m=S(-g);e=L[f>>2];l=P[e+328>>2];p=P[n+60>>2];k=S(p-P[e+56>>2]);q=P[n+56>>2];u=S(q-P[e+52>>2]);s=P[e+332>>2];c=L[n+52>>2];w=P[c+328>>2];p=S(p-P[c+56>>2]);q=S(q-P[c+52>>2]);t=P[c+332>>2];z=S(P[n+80>>2]*S(S(S(S(l*k)-S(u*s))+P[e+320>>2])-S(S(S(w*p)-S(q*t))+P[c+320>>2])));B=s;s=P[n+64>>2];A=S(s-P[e+60>>2]);y=k;k=P[e+336>>2];s=S(s-P[c+60>>2]);C=p;p=P[c+336>>2];l=S(P[n+88>>2]*S(-S(z+S(S(P[n+72>>2]*S(S(S(S(B*A)-S(y*k))+P[e+312>>2])-S(S(S(t*s)-S(C*p))+P[c+312>>2])))+S(S(S(S(S(k*u)-S(A*l))+P[e+316>>2])-S(S(S(p*q)-S(s*w))+P[c+316>>2]))*P[n+76>>2])))));g=g>2]}f=d<<2;j=f+L[a+56>>2]|0;L[j>>2]=0;c=e+o|0;L[c+280>>2]=1065353216;m=P[i+228>>2];l=P[i+276>>2];P[j>>2]=g;g=S(g*S(.5));k=S(g*g);g=P[f+L[a+76>>2]>>2];g=S(k+S(g*g));m=S(m*S(l*b));if(!(g>S(m*m))){break h}P[c+280>>2]=S(m/S(_(g)))*P[c+280>>2];h=1}d=d+1|0;c=L[a+136>>2];if((d|0)<(c|0)){continue}break}d=0;if((c|0)>0&h){f=L[a+56>>2];i=L[a+144>>2];h=L[a+76>>2];while(1){j=d<<2;e=j+h|0;k:{if(P[e>>2]==S(0)){break k}o=i+R(d,284)|0;b=P[o+280>>2];if(!(b>2]=b*P[j>>2];P[e>>2]=P[o+280>>2]*P[e>>2]}d=d+1|0;if((c|0)!=(d|0)){continue}break}}if((c|0)<=0){break a}d=0;while(1){i=R(d,284);e=i+L[a+144>>2]|0;b=P[e+16>>2];c=L[a+116>>2];g=P[c+52>>2];m=P[e+20>>2];l=P[c+56>>2];p=P[e+24>>2];k=P[c+60>>2];L[n+60>>2]=0;P[n+56>>2]=p-k;P[n+52>>2]=m-l;P[n+48>>2]=b-g;h=d<<2;b=P[h+L[a+56>>2]>>2];if(b!=S(0)){f=L[a+16>>2]+(d<<4)|0;g=P[f>>2];m=P[f+4>>2];l=P[f+8>>2];L[n+44>>2]=0;P[n+40>>2]=b*l;P[n+36>>2]=b*m;P[n+32>>2]=g*b;rb(c,n+32|0,n+48|0)}h=h+L[a+76>>2]|0;if(P[h>>2]!=S(0)){c=L[(i+L[a+144>>2]|0)+88>>2];b=P[c+52>>2];g=P[c+56>>2];m=P[c+60>>2];l=P[e+16>>2];p=P[e+20>>2];k=P[e+24>>2];L[n+44>>2]=0;P[n+40>>2]=k-m;P[n+36>>2]=p-g;P[n+32>>2]=l-b;f=L[a+36>>2]+(d<<4)|0;g=P[f>>2];m=P[f+4>>2];l=P[f+8>>2];b=P[h>>2];L[n+28>>2]=0;P[n+24>>2]=b*l;P[n+20>>2]=b*m;P[n+16>>2]=g*b;i=L[a+116>>2];f=i+(L[a+124>>2]<<2)|0;g=P[f+36>>2];m=P[n+56>>2];l=P[f+4>>2];p=P[n+48>>2];k=P[f+20>>2];q=P[n+52>>2];b=S(S(S(g*m)+S(S(l*p)+S(k*q)))*S(S(1)-P[e+244>>2]));P[n+56>>2]=m-S(g*b);P[n+52>>2]=q-S(k*b);P[n+48>>2]=p-S(l*b);rb(i,n+16|0,n+48|0);L[n+12>>2]=0;P[n+8>>2]=-P[n+24>>2];P[n+4>>2]=-P[n+20>>2];P[n>>2]=-P[n+16>>2];rb(c,n,n+32|0)}d=d+1|0;if((d|0)>2]){continue}break}}fa=n+96|0}function _B(a,b,c){a=a|0;b=b|0;c=S(c);var d=0,e=0,f=S(0),g=S(0),h=0,i=S(0),j=0,k=S(0),l=0,m=S(0),n=0,o=0,p=S(0),q=S(0),r=0,s=S(0);h=fa-80|0;fa=h;if(!(!M[a+171|0]&P[a+172>>2]<=S(0))){J[a+168|0]=ha[L[L[a>>2]+48>>2]](a);f=S(P[a+16>>2]-S(P[a+44>>2]*c));P[a+16>>2]=f;a:{if(!(f>S(0))){break a}g=P[a+28>>2];if(!(g>2]=g;f=g}b:{if(!(f>2]));if(!(g>2]=f}P[a+20>>2]=f*c;e=L[a+8>>2];d=L[e+16>>2];L[h+24>>2]=L[e+12>>2];L[h+28>>2]=d;d=L[e+8>>2];L[h+16>>2]=L[e+4>>2];L[h+20>>2]=d;d=L[e+32>>2];L[h+40>>2]=L[e+28>>2];L[h+44>>2]=d;d=L[e+24>>2];L[h+32>>2]=L[e+20>>2];L[h+36>>2]=d;d=L[e+48>>2];L[h+56>>2]=L[e+44>>2];L[h+60>>2]=d;d=L[e+40>>2];L[h+48>>2]=L[e+36>>2];L[h+52>>2]=d;e=fa-240|0;fa=e;if(!M[32528]){L[8121]=0;L[8122]=0;L[8120]=1065353216;L[8123]=0;L[8124]=0;L[8126]=0;L[8127]=0;L[8125]=1065353216;L[8128]=0;L[8129]=0;L[8130]=1065353216;L[8131]=0;J[32528]=1}d=L[a+176>>2]<<4;j=d+32480|0;g=P[j>>2];l=d+32484|0;k=P[l>>2];d=d+32488|0;f=P[d>>2];L[a+124>>2]=0;i=f;f=P[a+20>>2];f=S(P[a+52>>2]+(f>S(0)?f:S(0)));P[a+120>>2]=S(i*f)+P[a+100>>2];P[a+116>>2]=S(k*f)+P[a+96>>2];P[a+112>>2]=P[a+92>>2]+S(g*f);L[e+188>>2]=0;L[e+192>>2]=0;L[e+200>>2]=0;L[e+204>>2]=0;L[e+196>>2]=1065353216;L[e+208>>2]=0;L[e+212>>2]=0;L[e+216>>2]=1065353216;L[e+220>>2]=0;L[e+124>>2]=0;L[e+128>>2]=0;L[e+136>>2]=0;L[e+140>>2]=0;L[e+132>>2]=1065353216;L[e+144>>2]=0;L[e+148>>2]=0;L[e+152>>2]=1065353216;L[e+156>>2]=0;L[e+180>>2]=0;L[e+184>>2]=0;L[e+176>>2]=1065353216;L[e+116>>2]=0;L[e+120>>2]=0;L[e+112>>2]=1065353216;o=L[a+12>>2];f=S(ha[L[L[o>>2]+48>>2]](o));g=P[j>>2];k=P[a+96>>2];i=P[l>>2];m=P[a+100>>2];p=P[d>>2];q=P[a+92>>2];s=P[a+56>>2];L[e+236>>2]=0;f=S(f+s);P[e+232>>2]=m+S(p*f);P[e+228>>2]=k+S(f*i);P[e+224>>2]=q+S(g*f);d=L[a+124>>2];L[e+168>>2]=L[a+120>>2];L[e+172>>2]=d;d=L[a+116>>2];L[e+160>>2]=L[a+112>>2];L[e+164>>2]=d;d=L[a+8>>2];if(!M[32528]){L[8121]=0;L[8122]=0;L[8120]=1065353216;L[8123]=0;L[8124]=0;L[8126]=0;L[8127]=0;L[8125]=1065353216;L[8128]=0;L[8129]=0;L[8130]=1065353216;L[8131]=0;J[32528]=1}j=L[a+176>>2]<<4;f=P[j+32480>>2];g=P[j+32484>>2];k=P[j+32488>>2];L[e+28>>2]=0;L[e+32>>2]=0;L[e+36>>2]=0;L[e+40>>2]=0;L[e+44>>2]=0;L[e+48>>2]=0;L[e+104>>2]=0;L[e+108>>2]=1060439169;P[e+100>>2]=-k;P[e+96>>2]=-g;L[e+84>>2]=0;L[e+12>>2]=1065353216;L[e+20>>2]=0;L[e+24>>2]=0;L[e+8>>2]=19308;P[e+92>>2]=-f;L[e+88>>2]=d;j=L[d+188>>2];K[e+16>>1]=N[j+4>>1];K[e+18>>1]=N[j+6>>1];j=L[a+12>>2];c:{if(M[a+170|0]){Ec(d,j,e+176|0,e+112|0,e+8|0,P[b+56>>2]);break c}Ab(b,j,e+176|0,e+112|0,e+8|0,S(0))}f=P[e+12>>2];d:{if(f>2]<<4;e:{if(!(S(S(P[e+60>>2]*P[d+32488>>2])+S(S(P[e+52>>2]*P[d+32480>>2])+S(P[e+56>>2]*P[d+32484>>2])))>S(0))){break e}P[a+108>>2]=f*P[a+52>>2];if(M[a+180|0]){g=S(S(1)-f);P[a+92>>2]=S(g*P[a+92>>2])+S(f*P[a+112>>2]);P[a+96>>2]=S(g*P[a+96>>2])+S(f*P[a+116>>2]);P[a+100>>2]=S(g*P[a+100>>2])+S(f*P[a+120>>2]);break e}d=L[a+116>>2];L[a+92>>2]=L[a+112>>2];L[a+96>>2]=d;d=L[a+124>>2];L[a+100>>2]=L[a+120>>2];L[a+104>>2]=d}L[a+16>>2]=0;L[a+20>>2]=0;break d}P[a+108>>2]=P[a+52>>2];d=L[a+124>>2];L[a+100>>2]=L[a+120>>2];L[a+104>>2]=d;d=L[a+116>>2];L[a+92>>2]=L[a+112>>2];L[a+96>>2]=d}fa=e+240|0;j=h- -64|0;f:{if(M[a+171|0]){sl(a,b,a+60|0);break f}f=P[a+172>>2];P[a+172>>2]=f-c;g=P[a- -64>>2];k=P[a+68>>2];i=P[a+60>>2];L[h+12>>2]=0;f=c>2]=k*f;P[h+4>>2]=f*g;P[h>>2]=f*i;sl(a,b,h)}d=fa-416|0;fa=d;e=L[a+124>>2];L[d+216>>2]=L[a+120>>2];L[d+220>>2]=e;e=L[a+116>>2];L[d+208>>2]=L[a+112>>2];L[d+212>>2]=e;f=P[a+16>>2];f=S((fS(0))){break g}g=P[a+24>>2];if(!(g>2]<<4;e=l+32488|0;i=P[e>>2];g=P[l+32484>>2];l=l+32480|0;k=S(f+P[a+108>>2]);f=S(P[l>>2]*k);m=S(P[a+112>>2]-f);P[a+112>>2]=m;g=S(k*g);p=S(P[a+116>>2]-g);P[a+116>>2]=p;k=S(k*i);q=S(P[a+120>>2]-k);P[a+120>>2]=q;i=P[a+40>>2];o=L[a+8>>2];L[d+124>>2]=0;L[d+128>>2]=0;L[d+132>>2]=0;L[d+136>>2]=0;L[d+140>>2]=0;L[d+144>>2]=0;L[d+180>>2]=0;L[d+108>>2]=1065353216;L[d+116>>2]=0;L[d+120>>2]=0;L[d+184>>2]=o;L[d+104>>2]=19308;n=L[e+4>>2];L[d+196>>2]=L[e>>2];L[d+200>>2]=n;n=L[l+4>>2];L[d+188>>2]=L[l>>2];L[d+192>>2]=n;P[d+204>>2]=i;n=L[o+188>>2];K[d+112>>1]=N[n+4>>1];K[d+114>>1]=N[n+6>>1];L[d+20>>2]=0;L[d+24>>2]=0;L[d+28>>2]=0;L[d+32>>2]=0;L[d+36>>2]=0;L[d+40>>2]=0;L[d+76>>2]=0;L[d+4>>2]=1065353216;L[d+12>>2]=0;L[d+16>>2]=0;L[d+80>>2]=o;L[d>>2]=19308;r=L[e+4>>2];L[d+92>>2]=L[e>>2];L[d+96>>2]=r;e=L[l+4>>2];L[d+84>>2]=L[l>>2];L[d+88>>2]=e;P[d+100>>2]=i;K[d+8>>1]=N[n+4>>1];e=N[n+6>>1];L[d+364>>2]=0;L[d+368>>2]=0;L[d+376>>2]=0;L[d+380>>2]=0;L[d+372>>2]=1065353216;L[d+384>>2]=0;L[d+388>>2]=0;L[d+392>>2]=1065353216;L[d+396>>2]=0;L[d+300>>2]=0;L[d+304>>2]=0;L[d+312>>2]=0;L[d+316>>2]=0;L[d+308>>2]=1065353216;L[d+320>>2]=0;L[d+324>>2]=0;L[d+328>>2]=1065353216;L[d+332>>2]=0;L[d+236>>2]=0;L[d+240>>2]=0;L[d+244>>2]=1065353216;L[d+356>>2]=0;L[d+360>>2]=0;L[d+352>>2]=1065353216;K[d+10>>1]=e;L[d+292>>2]=0;L[d+296>>2]=0;L[d+288>>2]=1065353216;L[d+224>>2]=1065353216;L[d+228>>2]=0;L[d+232>>2]=0;L[d+256>>2]=0;L[d+260>>2]=0;L[d+248>>2]=0;L[d+252>>2]=0;L[d+264>>2]=1065353216;L[d+268>>2]=0;e=L[a+104>>2];L[d+408>>2]=L[a+100>>2];L[d+412>>2]=e;e=L[a+96>>2];L[d+400>>2]=L[a+92>>2];L[d+404>>2]=e;e=L[a+120>>2];l=L[a+124>>2];n=L[a+112>>2];r=L[a+116>>2];L[d+284>>2]=0;P[d+280>>2]=q-k;P[d+276>>2]=p-g;L[d+344>>2]=e;L[d+348>>2]=l;P[d+272>>2]=m-f;L[d+336>>2]=n;L[d+340>>2]=r;i=P[b+56>>2];e=L[a+12>>2];h:{if(M[a+170|0]){Ec(o,e,d+352|0,d+288|0,d+104|0,i);if(P[d+108>>2]>2],L[a+12>>2],d+352|0,d+224|0,d,P[b+56>>2]);break h}Ab(b,e,d+352|0,d+288|0,d+104|0,i);if(P[d+108>>2]>2],d+352|0,d+224|0,d,P[b+56>>2])}i=P[a+16>>2];i=S((i>2]>2]>2]S(0))){break o}c=P[a+52>>2];if(!(M[a+169|0]?M[a+168|0]:1)|(!(c>i)|!e)){break o}e=L[d+212>>2];L[a+112>>2]=L[d+208>>2];L[a+116>>2]=e;e=L[d+220>>2];L[a+120>>2]=L[d+216>>2];L[a+124>>2]=e;if(!M[32528]){L[8121]=0;L[8122]=0;L[8120]=1065353216;L[8123]=0;L[8124]=0;L[8126]=0;L[8127]=0;L[8125]=1065353216;L[8128]=0;L[8129]=0;L[8130]=1065353216;L[8131]=0;J[32528]=1}e=L[a+176>>2]<<4;i=P[e+32488>>2];m=P[e+32484>>2];c=S(c+P[a+108>>2]);p=S(P[a+112>>2]-S(P[e+32480>>2]*c));P[a+112>>2]=p;m=S(P[a+116>>2]-S(c*m));P[a+116>>2]=m;c=S(P[a+120>>2]-S(c*i));P[a+120>>2]=c;L[d+352>>2]=1065353216;L[d+364>>2]=0;L[d+368>>2]=0;L[d+356>>2]=0;L[d+360>>2]=0;L[d+372>>2]=1065353216;L[d+384>>2]=0;L[d+388>>2]=0;L[d+376>>2]=0;L[d+380>>2]=0;L[d+288>>2]=1065353216;L[d+392>>2]=1065353216;L[d+396>>2]=0;L[d+300>>2]=0;L[d+304>>2]=0;L[d+292>>2]=0;L[d+296>>2]=0;L[d+308>>2]=1065353216;L[d+320>>2]=0;L[d+324>>2]=0;L[d+312>>2]=0;L[d+316>>2]=0;L[d+224>>2]=1065353216;L[d+328>>2]=1065353216;L[d+332>>2]=0;L[d+236>>2]=0;L[d+240>>2]=0;L[d+228>>2]=0;L[d+232>>2]=0;L[d+244>>2]=1065353216;L[d+256>>2]=0;L[d+260>>2]=0;L[d+248>>2]=0;L[d+252>>2]=0;L[d+264>>2]=1065353216;L[d+268>>2]=0;e=L[a+104>>2];L[d+408>>2]=L[a+100>>2];L[d+412>>2]=e;e=L[a+96>>2];L[d+400>>2]=L[a+92>>2];L[d+404>>2]=e;e=L[a+124>>2];L[d+344>>2]=L[a+120>>2];L[d+348>>2]=e;e=L[a+116>>2];L[d+336>>2]=L[a+112>>2];L[d+340>>2]=e;L[d+284>>2]=0;P[d+280>>2]=c-k;P[d+276>>2]=m-g;P[d+272>>2]=p-f;p:{if(M[a+170|0]){Ec(L[a+8>>2],L[a+12>>2],d+352|0,d+288|0,d+104|0,P[b+56>>2]);if(P[d+108>>2]>2],L[a+12>>2],d+352|0,d+224|0,d,P[b+56>>2]);break p}Ab(b,L[a+12>>2],d+352|0,d+288|0,d+104|0,P[b+56>>2]);if(P[d+108>>2]>2],d+352|0,d+224|0,d,P[b+56>>2])}g=P[a+96>>2];c=P[d+108>>2];if(!M[a+182|0]){break m}f=S(g-P[d+168>>2]);break n}c=P[d+108>>2];if(!(c>2];if(!l){break m}f=S(g-P[d+168>>2])}k=P[a+112>>2];i=P[a+92>>2];if(M[a+181|0]){f=S(S(1)-c);P[a+92>>2]=S(f*i)+S(c*k);break l}c=S(f*S(.5));f=S(S(1)-c);P[a+92>>2]=S(f*i)+S(c*k);break l}f=S(S(1)-c);P[a+92>>2]=S(f*P[a+92>>2])+S(c*P[a+112>>2])}P[a+96>>2]=S(f*g)+S(c*P[a+116>>2]);J[a+181|0]=0;J[a+169|0]=0;L[a+16>>2]=0;L[a+20>>2]=0;P[a+100>>2]=S(f*P[a+100>>2])+S(c*P[a+120>>2]);break j}J[a+181|0]=1;q:{if(!l){break q}c=P[a+24>>2];if(!(c>2]);g=S(g+P[a+116>>2]);f=S(f+P[a+112>>2]);if(!M[32528]){L[8121]=0;L[8122]=0;L[8120]=1065353216;L[8123]=0;L[8124]=0;L[8126]=0;L[8127]=0;L[8125]=1065353216;L[8128]=0;L[8129]=0;L[8130]=1065353216;L[8131]=0;J[32528]=1}b=L[a+176>>2]<<4;i=P[b+32480>>2];m=P[b+32484>>2];c=S(c+P[a+108>>2]);P[a+120>>2]=k-S(c*P[b+32488>>2]);P[a+116>>2]=g-S(c*m);P[a+112>>2]=f-S(i*c)}b=L[a+116>>2];L[a+92>>2]=L[a+112>>2];L[a+96>>2]=b;b=L[a+124>>2];L[a+100>>2]=L[a+120>>2];L[a+104>>2]=b}fa=d+416|0;b=L[a+104>>2];L[j+8>>2]=L[a+100>>2];L[j+12>>2]=b;b=L[a+96>>2];L[j>>2]=L[a+92>>2];L[j+4>>2]=b;a=L[a+8>>2];L[a+260>>2]=L[a+260>>2]+1;b=L[h+28>>2];L[a+12>>2]=L[h+24>>2];L[a+16>>2]=b;b=L[h+20>>2];L[a+4>>2]=L[h+16>>2];L[a+8>>2]=b;b=L[h+44>>2];L[a+28>>2]=L[h+40>>2];L[a+32>>2]=b;b=L[h+36>>2];L[a+20>>2]=L[h+32>>2];L[a+24>>2]=b;b=L[h+52>>2];L[a+36>>2]=L[h+48>>2];L[a+40>>2]=b;b=L[h+60>>2];L[a+44>>2]=L[h+56>>2];L[a+48>>2]=b;b=L[j+4>>2];L[a+52>>2]=L[j>>2];L[a+56>>2]=b;b=L[j+12>>2];L[a+60>>2]=L[j+8>>2];L[a+64>>2]=b}fa=h+80|0}function Yf(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=fa-16|0;fa=l;a:{b:{c:{d:{e:{f:{g:{h:{i:{if(a>>>0<=244){g=L[8530];h=a>>>0<11?16:a+11&-8;c=h>>>3|0;b=g>>>c|0;if(b&3){c=c+((b^-1)&1)|0;a=c<<3;b=a+34160|0;d=L[a+34168>>2];a=L[d+8>>2];j:{if((b|0)==(a|0)){L[8530]=nI(c)&g;break j}L[a+12>>2]=b;L[b+8>>2]=a}a=d+8|0;b=c<<3;L[d+4>>2]=b|3;b=b+d|0;L[b+4>>2]=L[b+4>>2]|1;break a}k=L[8532];if(k>>>0>=h>>>0){break i}if(b){a=2<>2];a=L[e+8>>2];k:{if((b|0)==(a|0)){g=nI(d)&g;L[8530]=g;break k}L[a+12>>2]=b;L[b+8>>2]=a}L[e+4>>2]=h|3;c=e+h|0;a=d<<3;d=a-h|0;L[c+4>>2]=d|1;L[a+e>>2]=d;if(k){b=(k&-8)+34160|0;f=L[8535];a=1<<(k>>>3);l:{if(!(a&g)){L[8530]=a|g;a=b;break l}a=L[b+8>>2]}L[b+8>>2]=f;L[a+12>>2]=f;L[f+12>>2]=b;L[f+8>>2]=a}a=e+8|0;L[8535]=c;L[8532]=d;break a}j=L[8531];if(!j){break i}c=L[(lI(0-j&j)<<2)+34424>>2];f=(L[c+4>>2]&-8)-h|0;b=c;while(1){m:{a=L[b+16>>2];if(!a){a=L[b+20>>2];if(!a){break m}}b=(L[a+4>>2]&-8)-h|0;d=b>>>0>>0;f=d?b:f;c=d?a:c;b=a;continue}break}i=L[c+24>>2];d=L[c+12>>2];if((d|0)!=(c|0)){a=L[c+8>>2];L[a+12>>2]=d;L[d+8>>2]=a;break b}b=c+20|0;a=L[b>>2];if(!a){a=L[c+16>>2];if(!a){break h}b=c+16|0}while(1){e=b;d=a;b=a+20|0;a=L[b>>2];if(a){continue}b=d+16|0;a=L[d+16>>2];if(a){continue}break}L[e>>2]=0;break b}h=-1;if(a>>>0>4294967231){break i}a=a+11|0;h=a&-8;j=L[8531];if(!j){break i}f=0-h|0;g=0;n:{if(h>>>0<256){break n}g=31;if(h>>>0>16777215){break n}a=U(a>>>8|0);g=((h>>>38-a&1)-(a<<1)|0)+62|0}b=L[(g<<2)+34424>>2];o:{p:{q:{if(!b){a=0;break q}a=0;c=h<<((g|0)!=31?25-(g>>>1|0)|0:0);while(1){r:{e=(L[b+4>>2]&-8)-h|0;if(e>>>0>=f>>>0){break r}d=b;f=e;if(e){break r}f=0;a=b;break p}e=L[b+20>>2];b=L[((c>>>29&4)+b|0)+16>>2];a=e?(e|0)==(b|0)?a:e:a;c=c<<1;if(b){continue}break}}if(!(a|d)){d=0;a=2<>2]}if(!a){break o}}while(1){b=(L[a+4>>2]&-8)-h|0;c=b>>>0>>0;f=c?b:f;d=c?a:d;b=L[a+16>>2];if(b){a=b}else{a=L[a+20>>2]}if(a){continue}break}}if(!d|L[8532]-h>>>0<=f>>>0){break i}g=L[d+24>>2];c=L[d+12>>2];if((d|0)!=(c|0)){a=L[d+8>>2];L[a+12>>2]=c;L[c+8>>2]=a;break c}b=d+20|0;a=L[b>>2];if(!a){a=L[d+16>>2];if(!a){break g}b=d+16|0}while(1){e=b;c=a;b=a+20|0;a=L[b>>2];if(a){continue}b=c+16|0;a=L[c+16>>2];if(a){continue}break}L[e>>2]=0;break c}a=L[8532];if(a>>>0>=h>>>0){d=L[8535];b=a-h|0;s:{if(b>>>0>=16){c=d+h|0;L[c+4>>2]=b|1;L[a+d>>2]=b;L[d+4>>2]=h|3;break s}L[d+4>>2]=a|3;a=a+d|0;L[a+4>>2]=L[a+4>>2]|1;c=0;b=0}L[8532]=b;L[8535]=c;a=d+8|0;break a}i=L[8533];if(i>>>0>h>>>0){b=i-h|0;L[8533]=b;c=L[8536];a=c+h|0;L[8536]=a;L[a+4>>2]=b|1;L[c+4>>2]=h|3;a=c+8|0;break a}a=0;j=h+47|0;if(L[8648]){c=L[8650]}else{L[8651]=-1;L[8652]=-1;L[8649]=4096;L[8650]=4096;L[8648]=l+12&-16^1431655768;L[8653]=0;L[8641]=0;c=4096}e=j+c|0;f=0-c|0;b=e&f;if(b>>>0<=h>>>0){break a}d=L[8640];if(d){c=L[8638];g=c+b|0;if(d>>>0>>0|c>>>0>=g>>>0){break a}}t:{if(!(M[34564]&4)){u:{v:{w:{x:{d=L[8536];if(d){a=34568;while(1){c=L[a>>2];if(c>>>0<=d>>>0&d>>>0>2]>>>0){break x}a=L[a+8>>2];if(a){continue}break}}c=wc(0);if((c|0)==-1){break u}g=b;d=L[8649];a=d-1|0;if(a&c){g=(b-c|0)+(a+c&0-d)|0}if(g>>>0<=h>>>0){break u}d=L[8640];if(d){a=L[8638];f=a+g|0;if(d>>>0>>0|a>>>0>=f>>>0){break u}}a=wc(g);if((c|0)!=(a|0)){break w}break t}g=f&e-i;c=wc(g);if((c|0)==(L[a>>2]+L[a+4>>2]|0)){break v}a=c}if((a|0)==-1){break u}if(h+48>>>0<=g>>>0){c=a;break t}c=L[8650];c=c+(j-g|0)&0-c;if((wc(c)|0)==-1){break u}g=c+g|0;c=a;break t}if((c|0)!=-1){break t}}L[8641]=L[8641]|4}c=wc(b);a=wc(0);if((c|0)==-1|(a|0)==-1|a>>>0<=c>>>0){break d}g=a-c|0;if(g>>>0<=h+40>>>0){break d}}a=L[8638]+g|0;L[8638]=a;if(a>>>0>O[8639]){L[8639]=a}y:{e=L[8536];if(e){a=34568;while(1){d=L[a>>2];b=L[a+4>>2];if((d+b|0)==(c|0)){break y}a=L[a+8>>2];if(a){continue}break}break f}a=L[8534];if(!(a>>>0<=c>>>0?a:0)){L[8534]=c}a=0;L[8643]=g;L[8642]=c;L[8538]=-1;L[8539]=L[8648];L[8645]=0;while(1){d=a<<3;b=d+34160|0;L[d+34168>>2]=b;L[d+34172>>2]=b;a=a+1|0;if((a|0)!=32){continue}break}d=g-40|0;a=c+8&7?-8-c&7:0;b=d-a|0;L[8533]=b;a=a+c|0;L[8536]=a;L[a+4>>2]=b|1;L[(c+d|0)+4>>2]=40;L[8537]=L[8652];break e}if(M[a+12|0]&8|d>>>0>e>>>0|c>>>0<=e>>>0){break f}L[a+4>>2]=b+g;a=e+8&7?-8-e&7:0;c=a+e|0;L[8536]=c;b=L[8533]+g|0;a=b-a|0;L[8533]=a;L[c+4>>2]=a|1;L[(b+e|0)+4>>2]=40;L[8537]=L[8652];break e}d=0;break b}c=0;break c}if(O[8534]>c>>>0){L[8534]=c}b=c+g|0;a=34568;z:{A:{B:{C:{D:{E:{while(1){if((b|0)!=L[a>>2]){a=L[a+8>>2];if(a){continue}break E}break}if(!(M[a+12|0]&8)){break D}}a=34568;while(1){b=L[a>>2];if(b>>>0<=e>>>0){f=b+L[a+4>>2]|0;if(f>>>0>e>>>0){break C}}a=L[a+8>>2];continue}}L[a>>2]=c;L[a+4>>2]=L[a+4>>2]+g;j=(c+8&7?-8-c&7:0)+c|0;L[j+4>>2]=h|3;g=b+(b+8&7?-8-b&7:0)|0;i=h+j|0;a=g-i|0;if((e|0)==(g|0)){L[8536]=i;a=L[8533]+a|0;L[8533]=a;L[i+4>>2]=a|1;break A}if(L[8535]==(g|0)){L[8535]=i;a=L[8532]+a|0;L[8532]=a;L[i+4>>2]=a|1;L[a+i>>2]=a;break A}f=L[g+4>>2];if((f&3)==1){e=f&-8;F:{if(f>>>0<=255){c=L[g+12>>2];b=L[g+8>>2];if((c|0)==(b|0)){L[8530]=L[8530]&nI(f>>>3|0);break F}L[b+12>>2]=c;L[c+8>>2]=b;break F}h=L[g+24>>2];c=L[g+12>>2];G:{if((g|0)!=(c|0)){b=L[g+8>>2];L[b+12>>2]=c;L[c+8>>2]=b;break G}H:{f=g+20|0;b=L[f>>2];if(b){break H}f=g+16|0;b=L[f>>2];if(b){break H}c=0;break G}while(1){d=f;c=b;f=c+20|0;b=L[f>>2];if(b){continue}f=c+16|0;b=L[c+16>>2];if(b){continue}break}L[d>>2]=0}if(!h){break F}d=L[g+28>>2];b=(d<<2)+34424|0;I:{if(L[b>>2]==(g|0)){L[b>>2]=c;if(c){break I}L[8531]=L[8531]&nI(d);break F}L[h+(L[h+16>>2]==(g|0)?16:20)>>2]=c;if(!c){break F}}L[c+24>>2]=h;b=L[g+16>>2];if(b){L[c+16>>2]=b;L[b+24>>2]=c}b=L[g+20>>2];if(!b){break F}L[c+20>>2]=b;L[b+24>>2]=c}g=e+g|0;f=L[g+4>>2];a=a+e|0}L[g+4>>2]=f&-2;L[i+4>>2]=a|1;L[a+i>>2]=a;if(a>>>0<=255){b=(a&-8)+34160|0;c=L[8530];a=1<<(a>>>3);J:{if(!(c&a)){L[8530]=a|c;a=b;break J}a=L[b+8>>2]}L[b+8>>2]=i;L[a+12>>2]=i;L[i+12>>2]=b;L[i+8>>2]=a;break A}f=31;if(a>>>0<=16777215){b=U(a>>>8|0);f=((a>>>38-b&1)-(b<<1)|0)+62|0}L[i+28>>2]=f;L[i+16>>2]=0;L[i+20>>2]=0;b=(f<<2)+34424|0;d=L[8531];c=1<>2]=i;break K}f=a<<((f|0)!=31?25-(f>>>1|0)|0:0);c=L[b>>2];while(1){b=c;if((L[c+4>>2]&-8)==(a|0)){break B}c=f>>>29|0;f=f<<1;d=(c&4)+b|0;c=L[d+16>>2];if(c){continue}break}L[d+16>>2]=i}L[i+24>>2]=b;L[i+12>>2]=i;L[i+8>>2]=i;break A}d=g-40|0;a=c+8&7?-8-c&7:0;b=d-a|0;L[8533]=b;a=a+c|0;L[8536]=a;L[a+4>>2]=b|1;L[(c+d|0)+4>>2]=40;L[8537]=L[8652];a=(f+(f-39&7?39-f&7:0)|0)-47|0;d=a>>>0>>0?e:a;L[d+4>>2]=27;a=L[8645];L[d+16>>2]=L[8644];L[d+20>>2]=a;a=L[8643];L[d+8>>2]=L[8642];L[d+12>>2]=a;L[8644]=d+8;L[8643]=g;L[8642]=c;L[8645]=0;a=d+24|0;while(1){L[a+4>>2]=7;b=a+8|0;a=a+4|0;if(b>>>0>>0){continue}break}if((d|0)==(e|0)){break e}L[d+4>>2]=L[d+4>>2]&-2;f=d-e|0;L[e+4>>2]=f|1;L[d>>2]=f;if(f>>>0<=255){b=(f&-8)+34160|0;c=L[8530];a=1<<(f>>>3);L:{if(!(c&a)){L[8530]=a|c;a=b;break L}a=L[b+8>>2]}L[b+8>>2]=e;L[a+12>>2]=e;L[e+12>>2]=b;L[e+8>>2]=a;break e}a=31;if(f>>>0<=16777215){a=U(f>>>8|0);a=((f>>>38-a&1)-(a<<1)|0)+62|0}L[e+28>>2]=a;L[e+16>>2]=0;L[e+20>>2]=0;b=(a<<2)+34424|0;d=L[8531];c=1<>2]=e;break M}a=f<<((a|0)!=31?25-(a>>>1|0)|0:0);d=L[b>>2];while(1){b=d;if((f|0)==(L[b+4>>2]&-8)){break z}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;d=L[c+16>>2];if(d){continue}break}L[c+16>>2]=e}L[e+24>>2]=b;L[e+12>>2]=e;L[e+8>>2]=e;break e}a=L[b+8>>2];L[a+12>>2]=i;L[b+8>>2]=i;L[i+24>>2]=0;L[i+12>>2]=b;L[i+8>>2]=a}a=j+8|0;break a}a=L[b+8>>2];L[a+12>>2]=e;L[b+8>>2]=e;L[e+24>>2]=0;L[e+12>>2]=b;L[e+8>>2]=a}a=L[8533];if(a>>>0<=h>>>0){break d}b=a-h|0;L[8533]=b;c=L[8536];a=c+h|0;L[8536]=a;L[a+4>>2]=b|1;L[c+4>>2]=h|3;a=c+8|0;break a}L[8527]=48;a=0;break a}N:{if(!g){break N}b=L[d+28>>2];a=(b<<2)+34424|0;O:{if(L[a>>2]==(d|0)){L[a>>2]=c;if(c){break O}j=nI(b)&j;L[8531]=j;break N}L[g+(L[g+16>>2]==(d|0)?16:20)>>2]=c;if(!c){break N}}L[c+24>>2]=g;a=L[d+16>>2];if(a){L[c+16>>2]=a;L[a+24>>2]=c}a=L[d+20>>2];if(!a){break N}L[c+20>>2]=a;L[a+24>>2]=c}P:{if(f>>>0<=15){a=f+h|0;L[d+4>>2]=a|3;a=a+d|0;L[a+4>>2]=L[a+4>>2]|1;break P}L[d+4>>2]=h|3;e=d+h|0;L[e+4>>2]=f|1;L[e+f>>2]=f;if(f>>>0<=255){b=(f&-8)+34160|0;c=L[8530];a=1<<(f>>>3);Q:{if(!(c&a)){L[8530]=a|c;a=b;break Q}a=L[b+8>>2]}L[b+8>>2]=e;L[a+12>>2]=e;L[e+12>>2]=b;L[e+8>>2]=a;break P}a=31;if(f>>>0<=16777215){a=U(f>>>8|0);a=((f>>>38-a&1)-(a<<1)|0)+62|0}L[e+28>>2]=a;L[e+16>>2]=0;L[e+20>>2]=0;b=(a<<2)+34424|0;R:{c=1<>2]=e;break S}a=f<<((a|0)!=31?25-(a>>>1|0)|0:0);h=L[b>>2];while(1){b=h;if((L[b+4>>2]&-8)==(f|0)){break R}c=a>>>29|0;a=a<<1;c=(c&4)+b|0;h=L[c+16>>2];if(h){continue}break}L[c+16>>2]=e}L[e+24>>2]=b;L[e+12>>2]=e;L[e+8>>2]=e;break P}a=L[b+8>>2];L[a+12>>2]=e;L[b+8>>2]=e;L[e+24>>2]=0;L[e+12>>2]=b;L[e+8>>2]=a}a=d+8|0;break a}T:{if(!i){break T}b=L[c+28>>2];a=(b<<2)+34424|0;U:{if(L[a>>2]==(c|0)){L[a>>2]=d;if(d){break U}L[8531]=nI(b)&j;break T}L[i+(L[i+16>>2]==(c|0)?16:20)>>2]=d;if(!d){break T}}L[d+24>>2]=i;a=L[c+16>>2];if(a){L[d+16>>2]=a;L[a+24>>2]=d}a=L[c+20>>2];if(!a){break T}L[d+20>>2]=a;L[a+24>>2]=d}V:{if(f>>>0<=15){a=f+h|0;L[c+4>>2]=a|3;a=a+c|0;L[a+4>>2]=L[a+4>>2]|1;break V}L[c+4>>2]=h|3;d=c+h|0;L[d+4>>2]=f|1;L[d+f>>2]=f;if(k){b=(k&-8)+34160|0;e=L[8535];a=1<<(k>>>3);W:{if(!(a&g)){L[8530]=a|g;a=b;break W}a=L[b+8>>2]}L[b+8>>2]=e;L[a+12>>2]=e;L[e+12>>2]=b;L[e+8>>2]=a}L[8535]=d;L[8532]=f}a=c+8|0}fa=l+16|0;return a|0}function Gz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=S(0),g=0,h=S(0),i=S(0),j=0,k=S(0),l=S(0),m=0,n=S(0),o=S(0),p=S(0),q=S(0),r=0,s=S(0),t=0,u=0,v=S(0),w=S(0),x=0,y=0,z=S(0),A=0,B=S(0),C=0,D=0,E=S(0),F=0,G=S(0),H=0,I=0,K=0,N=S(0),O=S(0),Q=0,U=S(0),V=S(0),W=S(0),X=S(0);e=fa-176|0;fa=e;r=L[b+36>>2];a:{if(J[r+100|0]&1){break a}U=P[r+88>>2]>S(0)?P[a+16>>2]:P[a+20>>2];d=fa-32|0;fa=d;F=L[a+8>>2];t=L[F+4>>2];j=L[L[a+4>>2]+684>>2];m=L[F+12>>2];l=P[m+20>>2];q=P[m+36>>2];h=P[m+24>>2];k=P[m+52>>2];f=P[m+40>>2];i=P[m+56>>2];s=P[m+32>>2];n=P[m>>2];p=P[m+16>>2];v=P[m+4>>2];o=P[m+8>>2];B=P[m+48>>2];w=P[r+8>>2];z=P[r+12>>2];E=P[r+16>>2];L[d+12>>2]=0;G=f;f=S(E-i);i=S(w-B);w=h;h=S(z-k);P[d+8>>2]=S(G*f)+S(S(o*i)+S(w*h));P[d+4>>2]=S(q*f)+S(S(v*i)+S(h*l));P[d>>2]=S(s*f)+S(S(n*i)+S(h*p));f=S(S(1)/P[j+76>>2]);i=S(S(f*P[d>>2])/S(3));b=i>2])/S(3));c=h>>5&134215680^b<<16);g=b>>>11|0;f=S(S(f*P[d+8>>2])/S(3));u=f>>5&134215680^b<<16);c=b>>>11|0;g=L[j+68>>2];C=t>>>5&134215680;A=b;h=f;f=S(S(1)-f);f:{if(S(T(f))>>5&134215680^b<<16);b=b+(t&65535)+(b>>>11)|0;b=b<<16^C^b;b=(b>>>11|0)+b|0;b=b<<3^b;b=(b>>>5|0)+b|0;b=b<<4^b;b=(b>>>17|0)+b|0;b=b<<25^b;C=(b>>>6|0)+b|0;g=L[j+60>>2];A=c+((C>>>0)%(g>>>0)<<2)|0;b=L[A>>2];L[j+96>>2]=L[j+96>>2]+1;c=L[j+92>>2];h:{if(b){while(1){c=c+1|0;L[j+92>>2]=c;if(!((C|0)!=L[b+272>>2]|(x|0)!=L[b+256>>2]|((y|0)!=L[b+260>>2]|(u|0)!=L[b+264>>2]))&(t|0)==L[b+276>>2]){break h}b=L[b+280>>2];if(b){continue}break}}L[j+92>>2]=c+1;b=L[j+84>>2];L[j+84>>2]=b+1;if((b|0)>=L[j+88>>2]){L[8499]=L[8499]+1;if((g|0)>0){while(1){c=L[j+68>>2]+(D<<2)|0;b=L[c>>2];L[c>>2]=0;if(b){while(1){c=L[b+280>>2];ra(b);b=c;if(c){continue}break}}D=D+1|0;if((g|0)!=(D|0)){continue}break}}L[j+92>>2]=1;L[j+96>>2]=1;L[j+84>>2]=0;L[j+76>>2]=1048576e3;L[j+80>>2]=0}b=sa(284);g=pa(b,0,272);L[g+280>>2]=L[A>>2];L[A>>2]=g;L[g+272>>2]=C;L[g+276>>2]=t;L[g+264>>2]=u;L[g+260>>2]=y;L[g+256>>2]=x;x=0;c=fa-144|0;fa=c;f=P[j+76>>2];i=S(S(S(L[g+256>>2])*S(3))*f);p=S(f*S(S(L[g+264>>2])*S(3)));v=S(f*S(S(L[g+260>>2])*S(3)));while(1){h=S(S(P[j+76>>2]*S(x|0))+p);y=0;while(1){n=P[j+76>>2];L[c+20>>2]=0;P[c+16>>2]=h;l=S(S(n*S(y|0))+v);P[c+12>>2]=l;f=S(0);P[c+8>>2]=S(n*S(0))+i;t=L[g+276>>2];L[c+80>>2]=1065353216;L[c+92>>2]=0;L[c+96>>2]=0;L[c+84>>2]=0;L[c+88>>2]=0;L[c+100>>2]=1065353216;L[c+112>>2]=0;L[c+116>>2]=0;L[c+104>>2]=0;L[c+108>>2]=0;L[c+120>>2]=1065353216;L[c+140>>2]=0;L[c+132>>2]=0;L[c+136>>2]=0;L[c+124>>2]=0;L[c+128>>2]=0;i:{if(L[t+4>>2]>19){n=S(0);break i}n=Je(c+8|0,t,c+80|0,c+24|0);t=L[g+276>>2]}u=(g+(y<<4)|0)+(x<<2)|0;P[u>>2]=n;n=P[j+76>>2];L[c+20>>2]=0;P[c+16>>2]=h;P[c+12>>2]=l;P[c+8>>2]=n+i;L[c+80>>2]=1065353216;L[c+92>>2]=0;L[c+96>>2]=0;L[c+84>>2]=0;L[c+88>>2]=0;L[c+100>>2]=1065353216;L[c+112>>2]=0;L[c+116>>2]=0;L[c+104>>2]=0;L[c+108>>2]=0;L[c+120>>2]=1065353216;L[c+140>>2]=0;L[c+132>>2]=0;L[c+136>>2]=0;L[c+124>>2]=0;L[c+128>>2]=0;if(L[t+4>>2]<=19){f=Je(c+8|0,t,c+80|0,c+24|0);t=L[g+276>>2]}P[u- -64>>2]=f;f=P[j+76>>2];L[c+20>>2]=0;P[c+16>>2]=h;P[c+12>>2]=l;P[c+8>>2]=S(f+f)+i;L[c+80>>2]=1065353216;L[c+92>>2]=0;L[c+96>>2]=0;L[c+84>>2]=0;L[c+88>>2]=0;L[c+100>>2]=1065353216;L[c+112>>2]=0;L[c+116>>2]=0;L[c+104>>2]=0;L[c+108>>2]=0;L[c+120>>2]=1065353216;L[c+140>>2]=0;L[c+132>>2]=0;L[c+136>>2]=0;L[c+124>>2]=0;L[c+128>>2]=0;j:{if(L[t+4>>2]>19){f=S(0);break j}f=Je(c+8|0,t,c+80|0,c+24|0);t=L[g+276>>2]}P[u+128>>2]=f;f=P[j+76>>2];L[c+20>>2]=0;P[c+16>>2]=h;P[c+12>>2]=l;P[c+8>>2]=S(f*S(3))+i;L[c+80>>2]=1065353216;L[c+92>>2]=0;L[c+96>>2]=0;L[c+84>>2]=0;L[c+88>>2]=0;L[c+100>>2]=1065353216;L[c+112>>2]=0;L[c+116>>2]=0;L[c+104>>2]=0;L[c+108>>2]=0;L[c+120>>2]=1065353216;L[c+140>>2]=0;L[c+132>>2]=0;L[c+136>>2]=0;L[c+124>>2]=0;L[c+128>>2]=0;if(L[t+4>>2]<=19){f=Je(c+8|0,t,c+80|0,c+24|0)}else{f=S(0)}P[u+192>>2]=f;y=y+1|0;if((y|0)!=4){continue}break}x=x+1|0;if((x|0)!=4){continue}break}fa=c+144|0}L[b+268>>2]=L[j+80>>2];i=S(S(k-S(I|0))*S(3));k:{if(S(T(i))>2];j=j+u|0;p=P[j+c>>2];v=P[b+j>>2];l=P[c+t>>2];q=P[b+t>>2];k=S(l-q);f=S(f-S(y|0));o=S(S(S(S(p-v)-k)*f)+k);B=P[b+A>>2];j=c;c=g+C|0;k=P[j+c>>2];s=P[b+c>>2];w=S(k-s);i=S(i-S(x|0));o=S(S(S(S(S(S(S(h-B)-w)*f)+w)-o)*i)+o);G=o;V=S(o*o);E=S(h-k);o=S(p-l);N=S(B-s);w=S(v-q);z=S(S(S(N-w)*i)+w);n=S(n-S(D|0));z=S(S(S(S(S(S(E-o)*i)+o)-z)*n)+z);p=S(h-p);h=S(k-l);p=S(S(S(p-h)*f)+h);h=S(s-q);h=S(S(S(S(B-v)-h)*f)+h);h=S(S(S(p-h)*n)+h);p=S(S(1)/S(_(S(V+S(S(z*z)+S(h*h))))));P[d+24>>2]=G*p;P[d+20>>2]=h*p;P[d+16>>2]=z*p;h=S(l+S(o*f));h=S(S(S(S(k+S(E*f))-h)*i)+h);o=S(s+S(N*f));f=S(q+S(w*f));f=S(S(S(o-f)*i)+f);f=S(S(S(S(h-f)*n)+f)-U);b=f>2]=L[F+8>>2];s=P[m+8>>2];n=P[m>>2];p=P[m+4>>2];k=P[m+24>>2];v=P[m+16>>2];o=P[m+20>>2];q=P[m+40>>2];B=P[m+32>>2];w=P[m+36>>2];i=P[d+24>>2];h=P[d+16>>2];l=P[d+20>>2];L[e+88>>2]=0;q=S(S(q*i)+S(S(B*h)+S(l*w)));P[e+84>>2]=q;k=S(S(k*i)+S(S(v*h)+S(l*o)));P[e+80>>2]=k;i=S(S(s*i)+S(S(n*h)+S(p*l)));P[e+76>>2]=i;P[e+92>>2]=-S(S(q*S(P[r+16>>2]-S(f*q)))+S(S(i*S(P[r+8>>2]-S(f*i)))+S(k*S(P[r+12>>2]-S(f*k)))))}fa=d+32|0;if(!b){break a}i=P[r+88>>2];d=L[a+12>>2];n:{if(!d){if(!(S(i+S(0))>S(0))){break a}b=L[L[a+8>>2]+8>>2];break n}b=d;O=P[d+344>>2];if(!(S(i+O)>S(0))){break a}}if(!(J[33988]&1)){L[8485]=0;L[8486]=0;J[33988]=1;L[8495]=0;L[8496]=0;L[8493]=0;L[8494]=0;L[8491]=0;L[8492]=0;L[8489]=0;L[8490]=0;L[8487]=0;L[8488]=0}f=P[b+52>>2];s=P[b+56>>2];h=P[r+12>>2];k=P[b+60>>2];l=P[r+16>>2];q=P[r+8>>2];L[e+68>>2]=0;k=S(l-k);P[e+64>>2]=k;s=S(h-s);P[e+60>>2]=s;n=S(q-f);P[e+56>>2]=n;c=d?d+264|0:33940;o:{if(!d){b=L[a+4>>2];f=P[b+452>>2];p=S(0);break o}p=P[d+328>>2];v=P[d+332>>2];b=L[a+4>>2];f=P[b+452>>2];W=S(S(S(S(p*s)-S(n*v))+P[d+320>>2])*f);o=P[d+336>>2];X=S(S(S(S(o*n)-S(k*p))+P[d+316>>2])*f);p=S(S(S(S(v*k)-S(s*o))+P[d+312>>2])*f)}v=P[b+316>>2];o=P[r+32>>2];B=P[r+28>>2];d=L[a+8>>2];w=P[L[d+8>>2]+224>>2];z=P[r+24>>2];L[e+96>>2]=r;k=P[e+84>>2];s=P[e+80>>2];n=P[e+76>>2];sk(e+8|0,f,i,O,c,e+56|0);c=L[e+20>>2];L[e+108>>2]=L[e+16>>2];L[e+112>>2]=c;c=L[e+28>>2];L[e+116>>2]=L[e+24>>2];L[e+120>>2]=c;c=L[e+36>>2];L[e+124>>2]=L[e+32>>2];L[e+128>>2]=c;c=L[e+44>>2];L[e+132>>2]=L[e+40>>2];L[e+136>>2]=c;c=L[e+52>>2];L[e+140>>2]=L[e+48>>2];L[e+144>>2]=c;c=e- -64|0;j=L[c+4>>2];L[e+156>>2]=L[c>>2];L[e+160>>2]=j;c=L[e+12>>2];L[e+100>>2]=L[e+8>>2];L[e+104>>2]=c;P[e+164>>2]=i*f;c=L[e+60>>2];L[e+148>>2]=L[e+56>>2];L[e+152>>2]=c;l=S(S(l-o)-W);q=S(S(q-z)-p);h=S(S(h-B)-X);f=S(S(l*k)+S(S(n*q)+S(s*h)));i=S(v*w);l=S(l-S(k*f));o=S(l*l);l=S(q-S(n*f));h=S(h-S(s*f));P[e+168>>2]=S(o+S(S(l*l)+S(h*h)))>2]=P[(L[L[d+8>>2]+204>>2]&3?328:324)+b>>2];m=0;j=L[b+812>>2];p:{if((j|0)!=L[b+816>>2]){break p}r=j?j<<1:1;if((r|0)<=(j|0)){break p}if(r){L[8513]=L[8513]+1;Q=ha[L[6798]](R(r,104),16)|0;j=L[b+812>>2]}if((j|0)>0){while(1){c=R(m,104);d=c+Q|0;c=c+L[b+820>>2]|0;g=L[c+4>>2];L[d>>2]=L[c>>2];L[d+4>>2]=g;L[d+24>>2]=L[c+24>>2];g=L[c+20>>2];L[d+16>>2]=L[c+16>>2];L[d+20>>2]=g;g=L[c+12>>2];L[d+8>>2]=L[c+8>>2];L[d+12>>2]=g;g=L[c+40>>2];L[d+36>>2]=L[c+36>>2];L[d+40>>2]=g;g=L[c+32>>2];L[d+28>>2]=L[c+28>>2];L[d+32>>2]=g;g=L[c+56>>2];L[d+52>>2]=L[c+52>>2];L[d+56>>2]=g;g=L[c+48>>2];L[d+44>>2]=L[c+44>>2];L[d+48>>2]=g;g=L[c+64>>2];L[d+60>>2]=L[c+60>>2];L[d+64>>2]=g;g=L[c+72>>2];L[d+68>>2]=L[c+68>>2];L[d+72>>2]=g;g=L[c+80>>2];L[d+76>>2]=L[c+76>>2];L[d+80>>2]=g;g=L[c+88>>2];L[d+84>>2]=L[c+84>>2];L[d+88>>2]=g;g=L[c+96>>2];L[d+92>>2]=L[c+92>>2];L[d+96>>2]=g;L[d+100>>2]=L[c+100>>2];m=m+1|0;if((m|0)!=(j|0)){continue}break}}d=L[b+820>>2];if(!(d?!d|!M[b+824|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[b+820>>2]=Q;J[b+824|0]=1;L[b+816>>2]=r;j=L[b+812>>2]}c=L[e+76>>2];d=L[b+820>>2]+R(j,104)|0;L[d>>2]=L[e+72>>2];L[d+4>>2]=c;L[d+24>>2]=L[e+96>>2];c=L[e+92>>2];L[d+16>>2]=L[e+88>>2];L[d+20>>2]=c;c=L[e+84>>2];L[d+8>>2]=L[e+80>>2];L[d+12>>2]=c;c=L[e+112>>2];L[d+36>>2]=L[e+108>>2];L[d+40>>2]=c;c=L[e+104>>2];L[d+28>>2]=L[e+100>>2];L[d+32>>2]=c;c=L[e+128>>2];L[d+52>>2]=L[e+124>>2];L[d+56>>2]=c;c=L[e+120>>2];L[d+44>>2]=L[e+116>>2];L[d+48>>2]=c;c=L[e+144>>2];L[d+68>>2]=L[e+140>>2];L[d+72>>2]=c;c=L[e+136>>2];L[d+60>>2]=L[e+132>>2];L[d+64>>2]=c;c=L[e+152>>2];L[d+76>>2]=L[e+148>>2];L[d+80>>2]=c;c=L[e+160>>2];L[d+84>>2]=L[e+156>>2];L[d+88>>2]=c;c=L[e+168>>2];L[d+92>>2]=L[e+164>>2];L[d+96>>2]=c;L[d+100>>2]=L[e+172>>2];L[b+812>>2]=L[b+812>>2]+1;a=L[a+12>>2];if(!a){break a}ib(a,0)}fa=e+176|0}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=S(0),f=0,g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=0,m=S(0),n=S(0),o=S(0),p=0,q=S(0),r=S(0),s=S(0),t=S(0),u=0,v=S(0),w=S(0),x=S(0),y=S(0),z=S(0),A=S(0),B=S(0),C=S(0),D=S(0),E=0,F=0,G=S(0),H=S(0),I=S(0),K=0,N=S(0),O=S(0),Q=S(0),T=S(0),U=S(0),V=S(0),W=0,X=S(0),Y=S(0),Z=S(0),$=S(0),aa=S(0),ba=0,ca=0,da=S(0),ea=S(0),fa=S(0),ga=S(0),ha=S(0),ia=S(0),ja=S(0),ka=S(0),la=0,ma=0,na=0;d=L[a+32>>2];ba=d+328|0;c=L[a+28>>2];ca=c+328|0;d=d+4|0;c=c+4|0;if(M[a+739|0]){e=P[L[a+32>>2]+344>>2];V=P[L[a+28>>2]+344>>2];j=S(e+V);j=j>S(0)?S(e/j):S(.5);o=S(S(1)-j);q=P[a+672>>2];r=P[d+40>>2];h=P[a+664>>2];s=P[d+32>>2];k=P[d+36>>2];g=P[a+668>>2];m=P[d+56>>2];ga=S(S(S(q*r)+S(S(h*s)+S(k*g)))+m);B=S(ga-m);I=B;m=P[a+592>>2];i=P[c+40>>2];n=P[a+560>>2];y=P[c+32>>2];v=P[a+576>>2];z=P[c+36>>2];O=S(S(m*i)+S(S(n*y)+S(v*z)));t=P[a+656>>2];H=S(t*r);r=P[a+624>>2];N=S(r*s);s=P[a+640>>2];Q=S(H+S(N+S(s*k)));k=S(S(O*j)+S(Q*o));H=k;T=S(k*k);w=P[c+8>>2];A=P[c>>2];D=P[c+4>>2];U=S(S(m*w)+S(S(n*A)+S(D*v)));x=P[d+8>>2];X=P[d>>2];Y=P[d+4>>2];Z=S(S(t*x)+S(S(r*X)+S(Y*s)));k=S(S(U*j)+S(Z*o));C=P[c+24>>2];G=P[c+16>>2];N=v;v=P[c+20>>2];da=S(S(m*C)+S(S(n*G)+S(N*v)));N=P[d+24>>2];$=P[d+16>>2];m=s;s=P[d+20>>2];ea=S(S(t*N)+S(S(r*$)+S(m*s)));t=S(S(da*j)+S(ea*o));r=S(S(1)/S(_(S(T+S(S(k*k)+S(t*t))))));m=S(H*r);H=S(B*m);n=P[d+48>>2];X=S(n+S(S(q*x)+S(S(h*X)+S(Y*g))));B=S(X-n);n=S(k*r);g=S(S(q*N)+S(S(h*$)+S(s*g)));q=P[d+52>>2];Y=S(g+q);s=S(Y-q);q=S(t*r);h=S(H+S(S(B*n)+S(s*q)));k=S(m*h);N=S(I-k);g=P[a+608>>2];t=P[a+600>>2];r=P[a+604>>2];x=P[c+56>>2];$=S(S(S(g*i)+S(S(t*y)+S(z*r)))+x);x=S($-x);H=P[c+48>>2];ha=S(H+S(S(g*w)+S(S(t*A)+S(D*r))));H=S(ha-H);I=S(S(g*C)+S(S(t*G)+S(v*r)));g=P[c+52>>2];ia=S(I+g);T=S(ia-g);g=S(S(m*x)+S(S(H*n)+S(T*q)));aa=S(m*g);k=S(aa-k);t=S(N-S(o*k));r=S(q*h);ja=S(s-r);fa=S(q*g);I=S(fa-r);r=S(ja-S(o*I));h=S(n*h);ka=S(B-h);g=S(n*g);h=S(g-h);s=S(ka-S(o*h));aa=S(x-aa);k=S(aa+S(j*k));T=S(T-fa);B=S(T+S(j*I));g=S(H-g);x=S(g+S(j*h));d=!(eS(1.1920928955078125e-7)){i=S(S(1)/S(_(h)));h=S(e*i);e=S(V*i);g=S(g*i);break a}h=P[a+588>>2];e=S(h*w);w=P[a+556>>2];g=S(w*A);A=P[a+572>>2];g=S(e+S(g+S(D*A)));e=S(S(h*C)+S(S(w*G)+S(A*v)));h=S(S(h*i)+S(S(w*y)+S(A*z)))}p=L[b+24>>2];f=L[b+12>>2];P[f+8>>2]=S(x*e)-S(g*B);P[f+4>>2]=S(k*g)-S(h*x);P[f>>2]=S(B*h)-S(e*k);c=L[b+20>>2];P[c+8>>2]=-S(S(s*e)-S(g*r));P[c+4>>2]=-S(S(t*g)-S(h*s));P[c>>2]=-S(S(r*h)-S(e*t));y=S(S(m*g)-S(h*n));v=S(S(q*h)-S(e*m));i=S(S(s*y)-S(v*r));z=S(S(n*e)-S(g*q));w=S(S(t*v)-S(z*s));A=S(S(r*z)-S(y*t));D=S(S(x*y)-S(v*B));C=S(S(k*v)-S(z*x));G=S(S(B*z)-S(y*k));F=M[a+716|0];if(!(d|!F)){D=S(j*D);C=S(j*C);G=S(j*G);w=S(o*w);A=S(o*A);i=S(o*i)}l=p<<2;u=l+f|0;P[u+8>>2]=D;P[u+4>>2]=C;P[u>>2]=G;P[c+l>>2]=-A;K=p+1|0;P[c+(K<<2)>>2]=-w;W=p+2|0;P[c+(W<<2)>>2]=-i;i=S(S(s*q)+S(n*S(-r)));s=S(S(t*n)+S(m*S(-s)));t=S(S(r*m)+S(q*S(-t)));r=S(S(x*q)+S(n*S(-B)));x=S(S(k*n)+S(m*S(-x)));k=S(S(B*m)+S(q*S(-k)));if(!d){r=S(j*r);x=S(j*x);k=S(j*k);s=S(o*s);t=S(o*t);i=S(o*i)}j=S(-q);o=S(-n);B=S(-m);la=p<<3;d=f+la|0;P[d+8>>2]=r;P[d+4>>2]=x;P[d>>2]=k;u=p<<1;P[c+(u<<2)>>2]=-t;ma=u|1;P[c+(ma<<2)>>2]=-s;na=u+2|0;P[c+(na<<2)>>2]=-i;b:{if(M[a+736|0]){s=S(-z);t=S(-y);i=S(-v);x=S(-h);k=S(-e);r=S(-g);d=L[b+28>>2];break b}C=P[b+4>>2];G=P[b>>2];d=L[b+8>>2];P[d+8>>2]=h;P[d+4>>2]=e;P[d>>2]=g;E=d+l|0;P[E+8>>2]=z;P[E+4>>2]=y;P[E>>2]=v;d=d+la|0;P[d+8>>2]=m;P[d+4>>2]=q;P[d>>2]=n;d=L[b+16>>2];x=S(-h);P[d+8>>2]=x;k=S(-e);P[d+4>>2]=k;r=S(-g);P[d>>2]=r;E=p<<2;i=S(-v);P[E+d>>2]=i;t=S(-y);P[d+(K<<2)>>2]=t;s=S(-z);P[d+(W<<2)>>2]=s;u=u<<2;P[u+d>>2]=o;P[d+(ma<<2)>>2]=j;P[d+(na<<2)>>2]=B;d=L[b+28>>2];w=S(ga-$);A=S(X-ha);D=S(Y-ia);C=S(G*C);P[d>>2]=S(S(h*w)+S(S(g*A)+S(D*e)))*C;P[d+E>>2]=S(S(z*w)+S(S(v*A)+S(D*y)))*C;P[d+u>>2]=C*S(S(m*w)+S(S(n*A)+S(D*q)))}p=R(p,12);P[p+f>>2]=g;u=p+8|0;P[u+f>>2]=h;E=p+4|0;P[E+f>>2]=e;l=l<<2;P[l+f>>2]=v;K=l|4;P[K+f>>2]=y;W=l|8;P[W+f>>2]=z;P[c+p>>2]=r;P[c+u>>2]=x;P[c+E>>2]=k;P[c+l>>2]=i;P[c+K>>2]=t;P[c+W>>2]=s;i=S(S(U*ea)-S(Z*da));k=S(i*h);h=S(S(da*Q)-S(ea*O));s=S(h*g);g=S(S(O*Z)-S(Q*U));k=S(k+S(s+S(g*e)));e=S(P[b>>2]*P[b+4>>2]);P[d+p>>2]=k*e;P[d+l>>2]=S(S(i*z)+S(S(h*v)+S(g*y)))*e;c:{d:{if(F){u=!M[a+737|0];e=S(P[a+708>>2]*P[a+732>>2]);d=e>S(0)?1:2;break d}if(!M[a+737|0]){break c}u=0;e=S(0);d=0}p=R(L[b+24>>2],5);l=p<<2;P[l+f>>2]=n;E=l+8|0;P[E+f>>2]=m;K=f;f=l+4|0;P[K+f>>2]=q;P[c+E>>2]=B;P[c+f>>2]=j;P[c+l>>2]=o;c=a+688|0;j=we(c);o=xe(c);c=L[b+28>>2];L[l+c>>2]=0;f=L[a+748>>2];h=P[(f&2?a+760|0:b+4|0)>>2];if(!((F|0)!=0&j==o|u)){if(f&4){P[L[b+32>>2]+(p<<2)>>2]=P[a+752>>2]}g=pd(P[a+728>>2],j,o,P[a+680>>2],S(h*P[b>>2]));c=L[b+28>>2];f=p<<2;l=c+f|0;P[l>>2]=S(S(g*P[a+680>>2])*P[a+732>>2])+P[l>>2];P[f+L[b+36>>2]>>2]=-P[a+684>>2];P[f+L[b+40>>2]>>2]=P[a+684>>2]}if(!F){break c}f=p<<2;c=f+c|0;P[c>>2]=S(S(h*P[b>>2])*e)+P[c>>2];if(J[a+748|0]&1){P[f+L[b+32>>2]>>2]=P[a+756>>2]}e:{if(j==o){L[L[b+36>>2]+(p<<2)>>2]=-8388609;e=S(34028234663852886e22);break e}f=L[b+36>>2]+(p<<2)|0;if((d|0)==1){L[f>>2]=0;e=S(34028234663852886e22);break e}L[f>>2]=-8388609;e=S(0)}P[L[b+40>>2]+(p<<2)>>2]=e;j=P[a+704>>2];f:{if(!(j>S(0))){break f}e=S(S(S(P[ca+8>>2]*m)+S(S(P[ca>>2]*n)+S(P[ca+4>>2]*q)))-S(S(P[ba+8>>2]*m)+S(S(P[ba>>2]*n)+S(q*P[ba+4>>2]))));g:{if((d|0)==1){if(!(eP[c>>2]){break g}break f}if(!(e>S(0))){break f}e=S(e*S(-j));if(!(e>2])){break f}}P[c>>2]=e}P[c>>2]=P[a+700>>2]*P[c>>2]}return}h=P[a+656>>2];A=P[d+40>>2];V=S(h*A);g=P[a+624>>2];D=P[d+32>>2];i=P[a+640>>2];C=P[d+36>>2];ga=S(S(g*D)+S(i*C));G=P[d+24>>2];X=S(h*G);O=P[d+16>>2];Q=P[d+20>>2];Y=S(S(g*O)+S(i*Q));y=P[a+592>>2];e=P[c+40>>2];N=S(y*e);v=P[a+560>>2];j=P[c+32>>2];z=P[a+576>>2];o=P[c+36>>2];$=S(S(v*j)+S(z*o));t=P[a+588>>2];H=S(t*e);r=P[a+556>>2];s=P[a+572>>2];ha=S(S(r*j)+S(s*o));k=P[a+584>>2];ia=S(k*e);B=P[a+552>>2];x=P[a+568>>2];T=S(S(B*j)+S(x*o));m=P[c+24>>2];aa=S(y*m);n=P[c+16>>2];q=P[c+20>>2];ja=S(S(v*n)+S(z*q));w=P[a+672>>2];I=S(w*A);A=P[a+664>>2];U=S(A*D);D=P[a+668>>2];C=S(S(I+S(U+S(C*D)))+P[d+56>>2]);G=S(S(S(w*G)+S(S(A*O)+S(Q*D)))+P[d+52>>2]);O=P[a+608>>2];Q=P[a+600>>2];U=P[a+604>>2];Z=P[c+56>>2];da=S(S(S(O*e)+S(S(Q*j)+S(o*U)))+Z);e=P[c+52>>2];ea=S(S(S(O*m)+S(S(Q*n)+S(q*U)))+e);I=g;g=P[d>>2];fa=P[d+4>>2];I=S(S(I*g)+S(fa*i));i=P[d+8>>2];ka=S(h*i);j=P[c>>2];o=P[c+4>>2];v=S(S(v*j)+S(o*z));h=P[c+8>>2];z=S(y*h);g=S(P[d+48>>2]+S(S(w*i)+S(S(A*g)+S(fa*D))));i=P[c+48>>2];y=S(i+S(S(O*h)+S(S(Q*j)+S(o*U))));p=L[b+24>>2];F=M[a+736|0];if(!F){f=L[b+8>>2];L[f>>2]=1065353216;l=(p<<2)+4|0;L[l+f>>2]=1065353216;u=(p<<3)+8|0;L[u+f>>2]=1065353216;f=L[b+16>>2];L[f>>2]=-1082130432;L[f+l>>2]=-1082130432;L[f+u>>2]=-1082130432;Z=P[c+56>>2];i=P[c+48>>2];e=P[c+52>>2]}c=L[b+12>>2];L[c+12>>2]=0;w=S(da-Z);P[c+4>>2]=w;L[c>>2]=0;e=S(ea-e);P[c+8>>2]=-e;l=p<<2;f=l+c|0;L[f+12>>2]=0;i=S(y-i);P[f+8>>2]=i;L[f+4>>2]=0;P[f>>2]=-w;u=p<<3;f=u+c|0;L[f+8>>2]=0;L[f+12>>2]=0;P[f+4>>2]=-i;P[f>>2]=e;e=P[d+48>>2];i=P[d+56>>2];w=P[d+52>>2];f=L[b+20>>2];L[f+12>>2]=0;L[f>>2]=0;w=S(G-w);P[f+8>>2]=w;i=S(C-i);P[f+4>>2]=-i;d=f+l|0;L[d+12>>2]=0;e=S(g-e);P[d+8>>2]=-e;L[d+4>>2]=0;P[d>>2]=i;d=f+u|0;L[d+8>>2]=0;L[d+12>>2]=0;P[d+4>>2]=e;P[d>>2]=-w;e=S(P[b>>2]*P[b+4>>2]);d=L[b+28>>2];if(!F){P[d>>2]=e*S(g-y);P[d+l>>2]=e*S(G-ea);P[d+(p<<3)>>2]=e*S(C-da)}l=R(p,12);g=S(S(k*h)+S(S(B*j)+S(x*o)));P[l+c>>2]=g;u=l+8|0;i=S(ia+T);P[u+c>>2]=i;E=l+4|0;y=S(S(k*m)+S(S(B*n)+S(x*q)));P[E+c>>2]=y;F=p<<4;h=S(S(t*h)+S(S(r*j)+S(o*s)));P[F+c>>2]=h;K=F|4;n=S(S(t*m)+S(S(r*n)+S(s*q)));P[K+c>>2]=n;W=F|8;q=S(H+ha);P[W+c>>2]=q;P[f+l>>2]=-g;P[f+u>>2]=-i;P[f+E>>2]=-y;P[f+F>>2]=-h;P[f+K>>2]=-n;P[f+W>>2]=-q;j=S(z+v);m=S(X+Y);v=S(ka+I);o=S(aa+ja);z=S(S(j*m)-S(v*o));s=S(z*i);i=S(V+ga);k=m;m=S(N+$);t=S(S(o*i)-S(k*m));k=S(t*g);g=S(S(m*v)-S(i*j));P[d+l>>2]=S(s+S(k+S(y*g)))*e;P[d+F>>2]=S(S(z*q)+S(S(t*h)+S(n*g)))*e;F=M[a+716|0];h:{i:{if(F){u=!M[a+737|0];q=S(P[a+708>>2]*P[a+732>>2]);d=q>S(0)?1:2;break i}if(!M[a+737|0]){break h}u=0;q=S(0);d=0}p=R(p,5);l=p<<2;P[l+c>>2]=j;E=l+8|0;P[E+c>>2]=m;K=c;c=l+4|0;P[K+c>>2]=o;P[f+E>>2]=-m;P[c+f>>2]=-o;P[f+l>>2]=-j;c=a+688|0;e=we(c);n=xe(c);c=L[b+28>>2];L[l+c>>2]=0;f=L[a+748>>2];h=P[(f&2?a+760|0:b+4|0)>>2];if(!((F|0)!=0&e==n|u)){if(f&4){P[L[b+32>>2]+(p<<2)>>2]=P[a+752>>2]}g=pd(P[a+728>>2],e,n,P[a+680>>2],S(h*P[b>>2]));c=L[b+28>>2];f=p<<2;l=c+f|0;P[l>>2]=S(S(g*P[a+680>>2])*P[a+732>>2])+P[l>>2];P[f+L[b+36>>2]>>2]=-P[a+684>>2];P[f+L[b+40>>2]>>2]=P[a+684>>2]}if(!F){break h}f=p<<2;c=f+c|0;P[c>>2]=S(S(h*P[b>>2])*q)+P[c>>2];if(J[a+748|0]&1){P[f+L[b+32>>2]>>2]=P[a+756>>2]}j:{if(e==n){L[L[b+36>>2]+(p<<2)>>2]=-8388609;e=S(34028234663852886e22);break j}f=L[b+36>>2]+(p<<2)|0;if((d|0)==1){L[f>>2]=0;e=S(34028234663852886e22);break j}L[f>>2]=-8388609;e=S(0)}P[L[b+40>>2]+(p<<2)>>2]=e;n=P[a+704>>2];k:{if(!(n>S(0))){break k}e=S(S(S(P[ca+8>>2]*m)+S(S(P[ca>>2]*j)+S(o*P[ca+4>>2])))-S(S(P[ba+8>>2]*m)+S(S(P[ba>>2]*j)+S(o*P[ba+4>>2]))));l:{if((d|0)==1){if(!(eP[c>>2]){break l}break k}if(!(e>S(0))){break k}e=S(e*S(-n));if(!(e
>2])){break k}}P[c>>2]=e}P[c>>2]=P[a+700>>2]*P[c>>2]}}function nk(a,b,c,d,e){var f=0,g=0,h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=S(0),o=S(0),p=0,q=S(0),r=S(0),s=S(0),t=S(0),u=S(0),v=0,w=S(0),x=S(0),y=S(0),z=0,A=S(0),B=S(0),C=0,D=0,E=S(0),F=S(0),G=0,H=S(0),I=S(0),K=S(0),N=S(0),O=S(0),Q=S(0),R=S(0),T=S(0),U=S(0),V=S(0),W=S(0),X=S(0),Y=S(0),Z=S(0),$=S(0),aa=S(0),ba=S(0),ca=S(0),da=S(0),ea=S(0),ga=S(0),ha=S(0),ia=0;p=fa-48|0;fa=p;ia=P[b+52>>2]
>2];if(ia){i=P[b+44>>2];q=P[b+36>>2];m=P[b+40>>2];h=S(S(i*i)+S(S(q*q)+S(m*m)));E=P[b+48>>2];G=M[33872];if(!(G&1)){if(!(J[30088]&1)){if(!(J[30140]&1)){L[7524]=0;L[7525]=0;L[7523]=1065353216;J[30140]=1;L[7526]=0;L[7527]=0;L[7529]=0;L[7530]=0;L[7528]=1065353216;L[7531]=0;L[7532]=0;L[7533]=1065353216;L[7534]=0}L[7518]=0;L[7519]=0;J[30088]=1;g=L[7524];L[7506]=L[7523];L[7507]=g;g=L[7528];L[7510]=L[7527];L[7511]=g;g=L[7532];L[7514]=L[7531];L[7515]=g;L[7520]=0;L[7521]=0;g=L[7526];L[7508]=L[7525];L[7509]=g;g=L[7530];L[7512]=L[7529];L[7513]=g;g=L[7534];L[7516]=L[7533];L[7517]=g}J[33872]=1;g=L[7507];L[8452]=L[7506];L[8453]=g;g=L[7511];L[8456]=L[7510];L[8457]=g;g=L[7515];L[8460]=L[7514];L[8461]=g;g=L[7519];L[8464]=L[7518];L[8465]=g;g=L[7509];L[8454]=L[7508];L[8455]=g;g=L[7513];L[8458]=L[7512];L[8459]=g;g=L[7517];L[8462]=L[7516];L[8463]=g;g=L[7521];L[8466]=L[7520];L[8467]=g;G=1}f=L[c+8>>2];g=L[c>>2];z=f?f+4|0:g?g+60|0:33808;j=P[z+48>>2];l=P[b+4>>2];n=P[z+56>>2];k=P[b+12>>2];A=P[z+52>>2];u=P[b+8>>2];if(!(G&1)){G=1;if(!(J[30088]&1)){if(!(J[30140]&1)){L[7524]=0;L[7525]=0;L[7523]=1065353216;J[30140]=1;L[7526]=0;L[7527]=0;L[7529]=0;L[7530]=0;L[7528]=1065353216;L[7531]=0;L[7532]=0;L[7533]=1065353216;L[7534]=0}L[7518]=0;L[7519]=0;J[30088]=1;f=L[7524];L[7506]=L[7523];L[7507]=f;f=L[7528];L[7510]=L[7527];L[7511]=f;f=L[7532];L[7514]=L[7531];L[7515]=f;L[7520]=0;L[7521]=0;f=L[7526];L[7508]=L[7525];L[7509]=f;f=L[7530];L[7512]=L[7529];L[7513]=f;f=L[7534];L[7516]=L[7533];L[7517]=f}J[33872]=1;f=L[7507];L[8452]=L[7506];L[8453]=f;f=L[7511];L[8456]=L[7510];L[8457]=f;f=L[7515];L[8460]=L[7514];L[8461]=f;f=L[7519];L[8464]=L[7518];L[8465]=f;f=L[7509];L[8454]=L[7508];L[8455]=f;f=L[7513];L[8458]=L[7512];L[8459]=f;f=L[7517];L[8462]=L[7516];L[8463]=f;f=L[7521];L[8466]=L[7520];L[8467]=f}j=S(l-j);l=S(k-n);n=S(u-A);k=i;i=S(S(1)/S(_(h)));A=S(k*i);u=S(m*i);w=S(q*i);v=L[d+8>>2];f=L[d>>2];v=v?v+4|0:f?f+60|0:33808;i=S(P[b+20>>2]-P[v+48>>2]);q=S(P[b+28>>2]-P[v+56>>2]);m=S(P[b+24>>2]-P[v+52>>2]);a:{b:{C=L[c+4>>2];if(!C){if(g){break b}k=S(0);h=S(0);break a}h=P[C+328>>2];k=P[C+332>>2];r=S(S(h*n)-S(j*k));o=P[C+336>>2];s=S(S(o*j)-S(l*h));t=S(S(k*l)-S(n*o));k=P[C+312>>2];o=P[C+320>>2];h=P[C+316>>2];break a}h=P[g+332>>2];k=P[g+336>>2];r=S(S(h*n)-S(j*k));o=P[g+340>>2];s=S(S(o*j)-S(l*h));t=S(S(k*l)-S(n*o));k=P[g+316>>2];o=P[g+324>>2];h=P[g+320>>2]}x=S(o+r);y=S(h+s);B=S(k+t);c:{d:{D=L[d+4>>2];if(!D){if(f){break d}s=S(0);o=S(0);h=S(0);k=S(0);t=S(0);r=S(0);break c}h=P[D+328>>2];r=P[D+332>>2];k=S(S(h*m)-S(i*r));s=P[D+336>>2];h=S(S(s*i)-S(q*h));o=S(S(r*q)-S(m*s));s=P[D+316>>2];t=P[D+320>>2];r=P[D+312>>2];break c}h=P[f+332>>2];r=P[f+336>>2];k=S(S(h*m)-S(i*r));s=P[f+340>>2];h=S(S(s*i)-S(q*h));o=S(S(r*q)-S(m*s));s=P[f+320>>2];t=P[f+324>>2];r=P[f+316>>2]}F=P[a+12>>2];Q=P[b+52>>2];b=L[c+4>>2];L[e+4>>2]=L[c>>2];L[e+8>>2]=b;L[e+12>>2]=L[c+8>>2];b=L[d+4>>2];L[e+16>>2]=L[d>>2];L[e+20>>2]=b;L[e+24>>2]=L[d+8>>2];k=S(x-S(t+k));r=S(B-S(r+o));s=S(y-S(s+h));h=S(S(k*A)+S(S(r*w)+S(u*s)));o=S(A*h);if(!(G&1)){if(!(J[30088]&1)){if(!(J[30140]&1)){L[7524]=0;L[7525]=0;L[7523]=1065353216;J[30140]=1;L[7526]=0;L[7527]=0;L[7529]=0;L[7530]=0;L[7528]=1065353216;L[7531]=0;L[7532]=0;L[7533]=1065353216;L[7534]=0}L[7518]=0;L[7519]=0;J[30088]=1;b=L[7524];L[7506]=L[7523];L[7507]=b;b=L[7528];L[7510]=L[7527];L[7511]=b;b=L[7532];L[7514]=L[7531];L[7515]=b;L[7520]=0;L[7521]=0;b=L[7526];L[7508]=L[7525];L[7509]=b;b=L[7530];L[7512]=L[7529];L[7513]=b;b=L[7534];L[7516]=L[7533];L[7517]=b}J[33872]=1;b=L[7507];L[8452]=L[7506];L[8453]=b;b=L[7511];L[8456]=L[7510];L[8457]=b;b=L[7515];L[8460]=L[7514];L[8461]=b;b=L[7519];L[8464]=L[7518];L[8465]=b;b=L[7509];L[8454]=L[7508];L[8455]=b;b=L[7513];L[8458]=L[7512];L[8459]=b;b=L[7517];L[8462]=L[7516];L[8463]=b;b=L[7521];L[8466]=L[7520];L[8467]=b;G=1}t=P[z+36>>2];x=P[z+20>>2];y=P[z+40>>2];B=P[z+24>>2];H=P[z+4>>2];I=P[z+8>>2];K=P[z+32>>2];N=P[z>>2];O=P[z+16>>2];L[e+40>>2]=0;P[e+28>>2]=S(K*l)+S(S(N*j)+S(n*O));P[e+36>>2]=S(y*l)+S(S(I*j)+S(n*B));P[e+32>>2]=S(t*l)+S(S(H*j)+S(n*x));if(!(G&1)){if(!(J[30088]&1)){if(!(J[30140]&1)){L[7524]=0;L[7525]=0;L[7523]=1065353216;J[30140]=1;L[7526]=0;L[7527]=0;L[7529]=0;L[7530]=0;L[7528]=1065353216;L[7531]=0;L[7532]=0;L[7533]=1065353216;L[7534]=0}L[7518]=0;L[7519]=0;J[30088]=1;b=L[7524];L[7506]=L[7523];L[7507]=b;b=L[7528];L[7510]=L[7527];L[7511]=b;b=L[7532];L[7514]=L[7531];L[7515]=b;L[7520]=0;L[7521]=0;b=L[7526];L[7508]=L[7525];L[7509]=b;b=L[7530];L[7512]=L[7529];L[7513]=b;b=L[7534];L[7516]=L[7533];L[7517]=b}J[33872]=1;b=L[7507];L[8452]=L[7506];L[8453]=b;b=L[7511];L[8456]=L[7510];L[8457]=b;b=L[7515];L[8460]=L[7514];L[8461]=b;b=L[7519];L[8464]=L[7518];L[8465]=b;b=L[7509];L[8454]=L[7508];L[8455]=b;b=L[7513];L[8458]=L[7512];L[8459]=b;b=L[7517];L[8462]=L[7516];L[8463]=b;b=L[7521];L[8466]=L[7520];L[8467]=b}t=P[v+36>>2];x=P[v+20>>2];y=P[v+40>>2];B=P[v+24>>2];H=P[v+4>>2];I=P[v+8>>2];K=P[v+32>>2];N=P[v>>2];O=P[v+16>>2];L[e+192>>2]=0;P[e+188>>2]=q;P[e+184>>2]=m;c=e+180|0;P[c>>2]=i;L[e+176>>2]=0;P[e+172>>2]=l;P[e+168>>2]=n;P[e+164>>2]=j;L[e+56>>2]=0;L[e+156>>2]=0;L[e+160>>2]=0;L[e+60>>2]=1065353216;L[e+64>>2]=1065353216;P[e+208>>2]=E;P[e+204>>2]=A;P[e+200>>2]=u;P[e+196>>2]=w;L[e+84>>2]=0;j=S(Q-F);P[e+80>>2]=A*j;P[e+76>>2]=u*j;P[e+72>>2]=w*j;L[e+68>>2]=1065353216;P[e+44>>2]=S(K*q)+S(S(N*i)+S(m*O));P[e+52>>2]=S(y*q)+S(S(I*i)+S(m*B));P[e+48>>2]=S(t*q)+S(S(H*i)+S(m*x));J[e+152|0]=0;j=P[a+16>>2];l=S(k-o);i=S(l*l);l=S(r-S(w*h));r=S(l*l);l=S(s-S(u*h));P[e+212>>2]=S(i+S(r+S(l*l)))>2]}b=M[33936];if(!(b&1)){L[8472]=0;L[8473]=0;J[33936]=1;L[8482]=0;L[8483]=0;L[8480]=0;L[8481]=0;L[8478]=0;L[8479]=0;L[8476]=0;L[8477]=0;L[8474]=0;L[8475]=0;b=1}f:{if(D){a=D+344|0}else{l=S(0);if(!f){break f}a=f+128|0}l=P[a>>2]}if(!(b&1)){L[8472]=0;L[8473]=0;J[33936]=1;L[8482]=0;L[8483]=0;L[8480]=0;L[8481]=0;L[8478]=0;L[8479]=0;L[8476]=0;L[8477]=0;L[8474]=0;L[8475]=0}a=C?C+264|0:g?g+180|0:33888;u=P[a+40>>2];w=P[a+24>>2];o=P[a+36>>2];t=P[a+20>>2];b=D?D+264|0:f?f+180|0:33888;E=P[b+40>>2];x=P[b+24>>2];y=P[b+36>>2];B=P[b+20>>2];n=P[e+168>>2];F=P[a+8>>2];Q=P[a+4>>2];H=P[a+32>>2];i=P[e+164>>2];I=P[a>>2];q=P[e+172>>2];K=P[a+16>>2];m=P[c+4>>2];N=P[b+8>>2];O=P[b+4>>2];T=P[b+32>>2];h=P[c>>2];U=P[b>>2];k=P[c+8>>2];V=P[b+16>>2];L[p+44>>2]=0;L[p+28>>2]=0;L[p+12>>2]=0;W=S(S(H*n)+S(S(I*S(0))-S(K*q)));X=S(S(o*n)+S(S(Q*S(0))-S(t*q)));Y=S(S(u*n)+S(S(F*S(0))-S(w*q)));Z=S(S(T*m)+S(S(U*S(0))-S(V*k)));$=S(S(y*m)+S(S(O*S(0))-S(B*k)));aa=S(S(E*m)+S(S(N*S(0))-S(x*k)));r=S(S(j-S(S(S(W*S(0))+S(q*X))-S(n*Y)))+S(l-S(S(S(Z*S(0))+S(k*$))-S(m*aa))));ba=S(S(S(F*q)+S(w*S(0)))-S(u*i));ca=S(S(S(Q*q)+S(t*S(0)))-S(o*i));da=S(S(S(I*q)+S(K*S(0)))-S(H*i));ea=S(S(S(N*k)+S(x*S(0)))-S(E*h));ga=S(S(S(O*k)+S(B*S(0)))-S(y*h));ha=S(S(S(U*k)+S(V*S(0)))-S(T*h));s=S(S(j-S(S(i*ba)+S(S(ca*S(0))-S(q*da))))+S(l-S(S(h*ea)+S(S(ga*S(0))-S(k*ha)))));A=S(S(S(0)-S(S(Y*S(0))+S(S(n*W)-S(X*i))))+S(S(0)-S(S(aa*S(0))+S(S(m*Z)-S($*h)))));R=S(S(S(0)-S(S(S(da*S(0))+S(q*ca))-S(n*ba)))+S(S(0)-S(S(S(ha*S(0))+S(k*ga))-S(m*ea))));F=S(S(u*S(0))+S(S(i*w)-S(F*n)));o=S(S(o*S(0))+S(S(i*t)-S(Q*n)));t=S(S(H*S(0))+S(S(i*K)-S(I*n)));E=S(S(E*S(0))+S(S(h*x)-S(N*m)));x=S(S(y*S(0))+S(S(h*B)-S(O*m)));y=S(S(T*S(0))+S(S(h*V)-S(U*m)));u=S(S(S(0)-S(S(i*F)+S(S(o*S(0))-S(q*t))))+S(S(0)-S(S(h*E)+S(S(x*S(0))-S(k*y)))));w=S(S(S(0)-S(S(S(t*S(0))+S(q*o))-S(n*F)))+S(S(0)-S(S(S(y*S(0))+S(k*x))-S(m*E))));B=S(S(R*u)-S(w*s));o=S(S(j-S(S(F*S(0))+S(S(n*t)-S(o*i))))+S(l-S(S(E*S(0))+S(S(m*y)-S(x*h)))));n=S(S(S(0)-S(S(ba*S(0))+S(S(n*da)-S(ca*i))))+S(S(0)-S(S(ea*S(0))+S(S(m*ha)-S(ga*h)))));m=S(S(s*o)-S(u*n));l=S(S(S(0)-S(S(i*Y)+S(S(X*S(0))-S(q*W))))+S(S(0)-S(S(h*aa)+S(S($*S(0))-S(k*Z)))));i=S(S(n*w)-S(o*R));j=S(S(1)/S(S(A*B)+S(S(r*m)+S(l*i))));P[p+40>>2]=S(S(r*s)-S(R*l))*j;P[p+36>>2]=S(S(l*w)-S(u*r))*j;P[p+32>>2]=B*j;P[p+24>>2]=S(S(A*R)-S(n*r))*j;P[p+20>>2]=S(S(r*o)-S(w*A))*j;P[p+16>>2]=i*j;P[p+8>>2]=S(S(l*n)-S(s*A))*j;P[p+4>>2]=S(S(A*u)-S(o*l))*j;P[p>>2]=m*j;a=L[p+12>>2];L[e+112>>2]=L[p+8>>2];L[e+116>>2]=a;a=L[p+4>>2];L[e+104>>2]=L[p>>2];L[e+108>>2]=a;a=L[p+20>>2];L[e+120>>2]=L[p+16>>2];L[e+124>>2]=a;a=L[p+28>>2];L[e+128>>2]=L[p+24>>2];L[e+132>>2]=a;a=L[p+36>>2];L[e+136>>2]=L[p+32>>2];L[e+140>>2]=a;a=L[p+44>>2];L[e+144>>2]=L[p+40>>2];L[e+148>>2]=a}fa=p+48|0;return ia}function _j(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0,S=0,T=0,U=0,V=0,W=0;k=fa-48|0;fa=k;x=L[e>>2];q=b;S=L[d>>2];if(S){q=L[S+12>>2]}D=L[q+96>>2];l=c;t=L[b+96>>2];E=L[c+96>>2]-t|0;i=L[(S?S:x)+12>>2];s=L[b+92>>2];j=L[i+92>>2]-s|0;K=L[c+92>>2]-s|0;u=L[i+96>>2]-t|0;H=R(E,j)-R(K,u)|0;M=H>>31;r=E>>31;m=mI(H,M,E,r);h=ga;w=L[b+88>>2];i=L[i+88>>2]-w|0;T=L[c+88>>2]-w|0;I=R(i,K)-R(j,T)|0;N=I>>31;o=T;n=o>>31;j=mI(I,N,o,n);b=m-j|0;y=L[q+92>>2];c=y;F=b;z=h-(ga+(j>>>0>m>>>0)|0)|0;g=mI(b,z,c,c>>31);f=ga;c=K;m=c>>31;v=mI(I,N,c,m);h=ga;J=R(o,u)-R(i,E)|0;O=J>>31;i=mI(J,O,E,r);b=v-i|0;q=L[q+88>>2];j=q;G=b;A=h-(ga+(i>>>0>v>>>0)|0)|0;b=mI(b,A,j,j>>31);i=b+g|0;f=ga+f|0;f=b>>>0>i>>>0?f+1|0:f;j=mI(o,n,J,O);o=ga;c=mI(c,m,H,M);B=j-c|0;C=o-(ga+(c>>>0>j>>>0)|0)|0;c=mI(B,C,D,D>>31);b=c+i|0;f=ga+f|0;o=b>>>0>>0?f+1|0:f;c=mI(H,M,w,w>>31);j=ga;h=c;c=mI(I,N,t,t>>31);i=h+c|0;g=ga+j|0;g=c>>>0>i>>>0?g+1|0:g;j=mI(J,O,s,s>>31);c=j+i|0;h=ga+g|0;s=c;t=c>>>0>>0?h+1|0:h;l=x?L[x+12>>2]:l;w=L[l+96>>2];v=L[l+92>>2];u=L[l+88>>2];c=x;a:{if(!S){break a}c=x;if(!L[S+12>>2]){break a}c=L[L[S+8>>2]+4>>2];g=L[c+12>>2];i=L[g+92>>2];m=i>>31;h=mI(i,m,J,O);f=ga;n=h;j=L[g+88>>2];r=j>>31;h=mI(j,r,H,M);n=n+h|0;f=ga+f|0;f=h>>>0>n>>>0?f+1|0:f;l=n;h=L[g+96>>2];P=h>>31;n=mI(h,P,I,N);l=l+n|0;g=ga+f|0;g=l>>>0>>0?g+1|0:g;b:{if(l>>>0>>0&(t|0)>=(g|0)|(g|0)<(t|0)){break b}l=c+12|0;p=L[a+100>>2];while(1){if((p|0)==L[c+20>>2]){break b}m=mI(i,m,F,z);i=ga;j=mI(j,r,G,A);m=j+m|0;f=ga+i|0;f=j>>>0>m>>>0?f+1|0:f;i=mI(h,P,B,C);j=i+m|0;f=ga+f|0;f=i>>>0>j>>>0?f+1|0:f;i=f;if((o|0)>=(f|0)&b>>>0>=j>>>0|(f|0)<(o|0)){break b}L[d>>2]=c;b=L[l>>2];D=L[b+96>>2];y=L[b+92>>2];q=L[b+88>>2];if(b){c=L[L[c+8>>2]+4>>2];l=c+12|0;b=j;o=i;n=L[c+12>>2];j=n;i=L[j+92>>2];m=i>>31;h=mI(i,m,J,O);f=ga;g=h;j=L[j+88>>2];r=j>>31;h=mI(j,r,H,M);Q=g+h|0;g=ga+f|0;g=h>>>0>Q>>>0?g+1|0:g;h=L[n+96>>2];P=h>>31;f=mI(h,P,I,N);n=f+Q|0;g=ga+g|0;g=f>>>0>n>>>0?g+1|0:g;if(n>>>0>>0&(t|0)>=(g|0)|(g|0)<(t|0)){break b}continue}break}b=j;o=i}c=L[e>>2]}j=mI(F,z,v,v>>31);i=ga;h=j;j=mI(G,A,u,u>>31);h=h+j|0;f=ga+i|0;f=h>>>0>>0?f+1|0:f;j=mI(B,C,w,w>>31);i=j+h|0;g=ga+f|0;m=i>>>0>>0?g+1|0:g;c:{if(!c){c=0;break c}if(!L[c+12>>2]){break c}l=L[L[c+8>>2]>>2];n=L[l+12>>2];h=n;j=L[h+92>>2];r=j>>31;f=mI(j,r,J,O);g=ga;p=f;h=L[h+88>>2];P=h>>31;f=mI(h,P,H,M);p=p+f|0;g=ga+g|0;g=f>>>0>p>>>0?g+1|0:g;n=L[n+96>>2];U=n>>31;f=mI(n,U,I,N);p=f+p|0;g=ga+g|0;g=f>>>0>p>>>0?g+1|0:g;if(p>>>0>>0&(t|0)>=(g|0)|(g|0)<(t|0)){break c}V=l+12|0;Q=L[a+100>>2];while(1){f=l;if((Q|0)==L[f+20>>2]){break c}j=mI(j,r,F,z);g=ga;l=j;j=mI(h,P,G,A);l=l+j|0;h=ga+g|0;h=j>>>0>l>>>0?h+1|0:h;n=mI(B,C,n,U);j=n+l|0;g=ga+h|0;g=j>>>0>>0?g+1|0:g;h=g;if((m|0)>=(g|0)&i>>>0>=j>>>0|(g|0)<(m|0)){break c}L[e>>2]=f;c=L[V>>2];w=L[c+96>>2];v=L[c+92>>2];u=L[c+88>>2];if(c){l=L[L[f+8>>2]>>2];V=l+12|0;c=f;i=j;m=h;n=L[l+12>>2];h=n;j=L[h+92>>2];r=j>>31;f=mI(j,r,J,O);g=ga;p=f;h=L[h+88>>2];P=h>>31;f=mI(h,P,H,M);p=p+f|0;g=ga+g|0;g=f>>>0>p>>>0?g+1|0:g;f=p;n=L[n+96>>2];U=n>>31;p=mI(n,U,I,N);W=f+p|0;f=ga+g|0;f=p>>>0>W>>>0?f+1|0:f;if(s>>>0>W>>>0&(t|0)>=(f|0)|(f|0)<(t|0)){break c}continue}break}c=f;i=j;m=h}o=m-((b>>>0>i>>>0)+o|0)|0;d:{b=i-b|0;if(!!b&(o|0)>=0|(o|0)>0){t=L[a+100>>2];while(1){c=L[d>>2];while(1){e:{j=(R(v-y|0,K)+R(u-q|0,T)|0)+R(w-D|0,E)|0;r=j>>31;if(!c|!L[c+12>>2]){break e}s=L[L[c>>2]+8>>2];if((t|0)>=L[s+20>>2]){break e}i=L[s+12>>2];l=L[i+92>>2];a=l-y|0;x=L[i+88>>2];h=x-q|0;n=L[i+96>>2];m=n-D|0;p=(R(a,K)+R(h,T)|0)+R(m,E)|0;a=mI(F,z,a,a>>31);i=ga;f=a;a=mI(G,A,h,h>>31);h=f+a|0;g=ga+i|0;g=a>>>0>h>>>0?g+1|0:g;i=mI(B,C,m,m>>31);a=i+h|0;f=ga+g|0;f=a>>>0>>0?f+1|0:f;f:{if(!(f|a)){if((p|0)<0){break f}break e}if((f|0)>0|(f|0)>=0){break e}L[k+32>>2]=0-a;L[k+36>>2]=0-(((a|0)!=0)+f|0);h=(p|0)>0;L[k+40>>2]=h?-1:p>>>31|0;i=(p|0)<0;L[k+24>>2]=h?p:i?0-p|0:0;a=p>>31;L[k+28>>2]=h?a:i?0-(((p|0)!=0)+a|0)|0:0;g:{if((j|0)>0){L[k+16>>2]=1;m=r;h=-1;a=j;break g}if((j|0)<0){L[k+16>>2]=-1;m=0-(((j|0)!=0)+r|0)|0;h=1;a=0-j|0;break g}L[k+16>>2]=0;m=0;h=0;a=0}L[k>>2]=a;L[k+4>>2]=m;a=b;i=o;h:{if(!!a&(i|0)>=0|(i|0)>0){break h}i=0;a=0;if((o|0)>0|(o|0)>=0){break h}L[k+16>>2]=h;i=0-(((b|0)!=0)+o|0)|0;a=0-b|0}L[k+8>>2]=a;L[k+12>>2]=i;if((yc(k+24|0,k)|0)<0){break e}}c=(c|0)!=(S|0)?s:0;L[d>>2]=c;a=v-l|0;a=mI(F,z,a,a>>31);b=ga;j=a;a=u-x|0;a=mI(G,A,a,a>>31);o=j+a|0;h=ga+b|0;h=a>>>0>o>>>0?h+1|0:h;a=w-n|0;a=mI(B,C,a,a>>31);b=a+o|0;f=ga+h|0;o=a>>>0>b>>>0?f+1|0:f;q=x;y=l;D=n;continue}break}a=L[e>>2];if(!a|!L[a+12>>2]){break d}p=L[L[a+8>>2]>>2];if((t|0)>=L[p+20>>2]){break d}i=L[p+12>>2];s=L[i+92>>2];f=s-v|0;v=f>>31;a=mI(f,v,J,O);c=ga;h=a;l=L[i+88>>2];m=l-u|0;x=m>>31;a=mI(m,x,H,M);u=h+a|0;g=ga+c|0;g=a>>>0>u>>>0?g+1|0:g;h=L[i+96>>2];i=h-w|0;n=i>>31;c=mI(I,N,i,n);if((u|0)!=(0-c|0)|(0-(ga+((c|0)!=0)|0)|0)!=(g|0)){break d}a=s-y|0;a=mI(F,z,a,a>>31);c=ga;g=a;a=l-q|0;a=mI(G,A,a,a>>31);l=g+a|0;g=ga+c|0;g=a>>>0>l>>>0?g+1|0:g;a=h-D|0;a=mI(B,C,a,a>>31);c=a+l|0;h=ga+g|0;h=a>>>0>c>>>0?h+1|0:h;a=h;if(!c&(a|0)<=0|(a|0)<0){break d}l=(R(f,K)+R(m,T)|0)+R(i,E)|0;h=mI(f,v,F,z);f=ga;g=h;h=mI(G,A,m,x);m=g+h|0;g=ga+f|0;g=h>>>0>m>>>0?g+1|0:g;h=mI(B,C,i,n);i=h+m|0;f=ga+g|0;f=h>>>0>i>>>0?f+1|0:f;i:{if(!(f|i)){if((l|0)<0){break i}break d}if((f|0)>0|(f|0)>=0){break d}L[k+32>>2]=0-i;L[k+36>>2]=0-(((i|0)!=0)+f|0);m=(l|0)>0;L[k+40>>2]=m?-1:l>>>31|0;h=(l|0)<0;L[k+24>>2]=m?l:h?0-l|0:0;i=l>>31;L[k+28>>2]=m?i:h?0-(((l|0)!=0)+i|0)|0:0;j:{if((j|0)>0){L[k+16>>2]=1;i=-1;break j}if((j|0)<0){L[k+16>>2]=-1;i=j;j=0-i|0;r=0-(((i|0)!=0)+r|0)|0;i=1;break j}L[k+16>>2]=0;j=0;r=0;i=0}L[k>>2]=j;L[k+4>>2]=r;j=b;h=o;k:{if(!!j&(h|0)>=0|(h|0)>0){break k}h=0;j=0;if((o|0)>0|(o|0)>=0){break k}L[k+16>>2]=i;h=0-(((b|0)!=0)+o|0)|0;j=0-b|0}L[k+8>>2]=j;L[k+12>>2]=h;if((yc(k+24|0,k)|0)<=0){break d}}L[e>>2]=p;b=L[p+12>>2];w=L[b+96>>2];v=L[b+92>>2];u=L[b+88>>2];b=c;o=a;continue}}if((o|0)>0|(o|0)>=0){break d}p=L[a+100>>2];while(1){j=(R(v-y|0,K)+R(u-q|0,T)|0)+R(w-D|0,E)|0;r=j>>31;l:{if(!c|!L[c+12>>2]){break l}s=L[L[c+4>>2]+8>>2];if((p|0)>=L[s+20>>2]){break l}i=L[s+12>>2];m=L[i+92>>2];a=m-v|0;h=L[i+88>>2];g=h-u|0;i=L[i+96>>2];n=i-w|0;l=(R(a,K)+R(g,T)|0)+R(n,E)|0;a=mI(F,z,a,a>>31);f=ga;t=a;a=mI(G,A,g,g>>31);g=t+a|0;f=ga+f|0;f=a>>>0>g>>>0?f+1|0:f;n=mI(B,C,n,n>>31);a=n+g|0;g=ga+f|0;g=a>>>0>>0?g+1|0:g;m:{if(!(g|a)){if((l|0)>0){break m}break l}if((g|0)>0|(g|0)>=0){break l}L[k+32>>2]=0-a;L[k+36>>2]=0-(((a|0)!=0)+g|0);g=(l|0)>0;L[k+40>>2]=g?-1:l>>>31|0;f=(l|0)<0;L[k+24>>2]=g?l:f?0-l|0:0;a=l>>31;L[k+28>>2]=g?a:f?0-(((l|0)!=0)+a|0)|0:0;n:{if((j|0)>0){L[k+16>>2]=1;l=-1;f=r;a=j;break n}if((j|0)<0){L[k+16>>2]=-1;l=1;f=0-(((j|0)!=0)+r|0)|0;a=0-j|0;break n}l=0;L[k+16>>2]=0;f=0;a=0}L[k>>2]=a;L[k+4>>2]=f;a=b;f=o;o:{if(!!a&(f|0)>=0|(f|0)>0){break o}f=0;a=0;if((o|0)>0|(o|0)>=0){break o}L[k+16>>2]=l;f=0-(((b|0)!=0)+o|0)|0;a=0-b|0}L[k+8>>2]=a;L[k+12>>2]=f;if((yc(k+24|0,k)|0)>0){break l}}c=(c|0)!=(x|0)?s:0;L[e>>2]=c;a=m-y|0;a=mI(F,z,a,a>>31);b=ga;j=a;a=h-q|0;a=mI(G,A,a,a>>31);o=j+a|0;f=ga+b|0;f=a>>>0>o>>>0?f+1|0:f;a=i-D|0;a=mI(B,C,a,a>>31);b=a+o|0;g=ga+f|0;o=a>>>0>b>>>0?g+1|0:g;u=h;v=m;w=i;continue}a=L[d>>2];if(!a|!L[a+12>>2]){break d}Q=L[L[a+8>>2]+4>>2];if((p|0)>=L[Q+20>>2]){break d}h=L[Q+12>>2];s=L[h+92>>2];m=s-y|0;y=m>>31;a=mI(m,y,J,O);c=ga;f=a;l=L[h+88>>2];i=l-q|0;g=i>>31;a=mI(i,g,H,M);t=f+a|0;f=ga+c|0;f=a>>>0>t>>>0?f+1|0:f;q=L[h+96>>2];c=q-D|0;n=c>>31;h=mI(I,N,c,n);if((t|0)!=(0-h|0)|(0-(ga+((h|0)!=0)|0)|0)!=(f|0)){break d}a=v-s|0;a=mI(F,z,a,a>>31);h=ga;f=a;a=u-l|0;a=mI(G,A,a,a>>31);f=f+a|0;h=ga+h|0;h=a>>>0>f>>>0?h+1|0:h;a=w-q|0;q=mI(B,C,a,a>>31);a=q+f|0;f=ga+h|0;f=a>>>0>>0?f+1|0:f;if((f|0)>0|(f|0)>=0){break d}q=(R(m,K)+R(i,T)|0)+R(c,E)|0;m=mI(m,y,F,z);h=ga;i=mI(G,A,i,g);m=i+m|0;g=ga+h|0;g=i>>>0>m>>>0?g+1|0:g;i=mI(B,C,c,n);c=i+m|0;g=ga+g|0;g=c>>>0>>0?g+1|0:g;p:{if(!(g|c)){if((q|0)>0){break p}break d}if((g|0)>0|(g|0)>=0){break d}L[k+32>>2]=0-c;L[k+36>>2]=0-(((c|0)!=0)+g|0);h=(q|0)>0;L[k+40>>2]=h?-1:q>>>31|0;i=(q|0)<0;L[k+24>>2]=h?q:i?0-q|0:0;c=q>>31;L[k+28>>2]=h?c:i?0-(((q|0)!=0)+c|0)|0:0;q:{if((j|0)>0){L[k+16>>2]=1;i=-1;break q}if((j|0)<0){L[k+16>>2]=-1;c=j;j=0-j|0;r=0-(((c|0)!=0)+r|0)|0;i=1;break q}L[k+16>>2]=0;j=0;r=0;i=0}L[k>>2]=j;L[k+4>>2]=r;c=b;j=o;r:{if(!!c&(j|0)>=0|(j|0)>0){break r}j=0;c=0;if((o|0)>0|(o|0)>=0){break r}L[k+16>>2]=i;j=0-(((b|0)!=0)+o|0)|0;c=0-b|0}L[k+8>>2]=c;L[k+12>>2]=j;if((yc(k+24|0,k)|0)>=0){break d}}L[d>>2]=Q;b=L[Q+12>>2];D=L[b+96>>2];y=L[b+92>>2];c=L[e>>2];q=L[b+88>>2];b=a;o=f;continue}}fa=k+48|0}function Ac(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=S(0),p=0,q=S(0),r=S(0),s=S(0),t=0,u=0,v=S(0),w=0,x=0;p=fa-32|0;fa=p;f=Cd(a);L[f>>2]=20992;L[f+284>>2]=0;J[f+280|0]=1;L[f+276>>2]=0;J[f+408|0]=1;L[f+268>>2]=0;L[f+272>>2]=0;L[f+404>>2]=0;J[f+428|0]=1;L[f+396>>2]=0;L[f+400>>2]=0;L[f+424>>2]=0;J[f+448|0]=1;L[f+416>>2]=0;L[f+420>>2]=0;L[f+444>>2]=0;J[f+496|0]=1;L[f+436>>2]=0;L[f+440>>2]=0;L[f+492>>2]=0;L[f+484>>2]=0;L[f+488>>2]=0;J[f+516|0]=1;L[f+512>>2]=0;J[f+704|0]=1;L[f+684>>2]=b;L[f+504>>2]=0;L[f+508>>2]=0;L[f+700>>2]=0;L[f+692>>2]=0;L[f+696>>2]=0;J[f+724|0]=1;L[f+720>>2]=0;L[f+712>>2]=0;L[f+716>>2]=0;J[f+744|0]=1;L[f+740>>2]=0;L[f+732>>2]=0;L[f+736>>2]=0;J[f+764|0]=1;L[f+760>>2]=0;L[f+752>>2]=0;L[f+756>>2]=0;J[f+784|0]=1;L[f+780>>2]=0;L[f+772>>2]=0;L[f+776>>2]=0;J[f+804|0]=1;J[f+824|0]=1;L[f+800>>2]=0;L[f+792>>2]=0;L[f+796>>2]=0;J[f+844|0]=1;L[f+820>>2]=0;L[f+812>>2]=0;L[f+816>>2]=0;J[f+864|0]=1;L[f+840>>2]=0;L[f+832>>2]=0;L[f+836>>2]=0;J[f+884|0]=1;L[f+860>>2]=0;L[f+852>>2]=0;L[f+856>>2]=0;L[f+880>>2]=0;L[f+872>>2]=0;L[f+876>>2]=0;w=hc(f+928|0);hc(f+988|0);hc(f+1048|0);L[f+1120>>2]=0;J[f+1124|0]=1;J[f+1144|0]=1;a=f+1112|0;L[a>>2]=0;L[a+4>>2]=0;L[f+1140>>2]=0;J[f+1248|0]=1;a=f+1132|0;L[a>>2]=0;L[a+4>>2]=0;L[f+1244>>2]=0;a=f+1236|0;L[a>>2]=0;L[a+4>>2]=0;L[f+288>>2]=0;L[f+292>>2]=1065353216;L[f+236>>2]=8;K[f+472>>1]=0;L[f+296>>2]=0;L[f+300>>2]=0;L[f+304>>2]=0;L[f+308>>2]=0;L[f+312>>2]=0;L[f+476>>2]=0;L[f+388>>2]=1;L[f+380>>2]=0;L[f+384>>2]=4;L[f+372>>2]=0;L[f+376>>2]=1;L[f+364>>2]=1065353216;L[f+368>>2]=1065353216;L[f+356>>2]=1056964608;L[f+360>>2]=1056964608;L[f+348>>2]=1056964608;L[f+352>>2]=1056964608;L[f+340>>2]=1036831949;L[f+344>>2]=1065353216;L[f+332>>2]=1065353216;L[f+336>>2]=1060320051;L[f+324>>2]=1065353216;L[f+328>>2]=1036831949;L[f+316>>2]=1045220557;L[f+320>>2]=0;L[f+528>>2]=0;L[f+532>>2]=0;L[f+520>>2]=0;L[f+524>>2]=0;L[f+536>>2]=1065353216;L[f+540>>2]=0;L[f+544>>2]=0;L[f+548>>2]=0;L[f+552>>2]=0;L[f+556>>2]=1065353216;L[f+560>>2]=0;L[f+564>>2]=0;L[f+568>>2]=0;L[f+572>>2]=0;L[f+576>>2]=1065353216;L[f+580>>2]=0;L[f+584>>2]=1065353216;L[f+588>>2]=0;L[f+592>>2]=0;L[f+596>>2]=0;L[f+600>>2]=0;L[f+604>>2]=1065353216;L[f+608>>2]=0;L[f+612>>2]=0;L[f+616>>2]=0;L[f+620>>2]=0;J[f+924|0]=1;L[f+888>>2]=0;L[f+624>>2]=1065353216;L[f+628>>2]=0;L[f+680>>2]=0;L[f+916>>2]=0;L[f+920>>2]=0;L[f+908>>2]=0;L[f+912>>2]=0;L[f+900>>2]=0;L[f+904>>2]=0;L[f+892>>2]=0;L[f+896>>2]=0;L[f+8>>2]=0;L[f+12>>2]=0;L[f+4>>2]=1065353216;L[f+16>>2]=0;L[f+20>>2]=0;L[f+28>>2]=0;L[f+32>>2]=0;L[f+24>>2]=1065353216;L[f+36>>2]=0;L[f+40>>2]=0;L[f+48>>2]=0;L[f+52>>2]=0;L[f+44>>2]=1065353216;L[f+56>>2]=0;L[f+60>>2]=0;L[f- -64>>2]=0;b=L[f+404>>2];a=f;if(!(!b|!M[f+408|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}L[a+404>>2]=0;J[a+408|0]=1;L[a+396>>2]=0;L[a+400>>2]=0;b=L[a+424>>2];if(!(b?!b|!M[a+428|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+424>>2]=0;J[a+428|0]=1;g=a;L[a+416>>2]=0;L[a+420>>2]=0;a=L[a+444>>2];if(!(a?!a|!M[g+448|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[g+444>>2]=0;J[g+448|0]=1;L[g+436>>2]=0;L[g+440>>2]=0;a=L[g+420>>2];m=L[g+416>>2];a:{if((a|0)!=(m|0)){break a}a=m?m<<1:1;if((m|0)>=(a|0)){a=m;break a}if(a){L[8513]=L[8513]+1;i=ha[L[6798]](a<<2,16)|0;m=L[g+416>>2]}h=L[g+424>>2];b:{c:{if((m|0)>0){b=0;if(m>>>0>=4){t=m&-4;while(1){j=k<<2;L[j+i>>2]=L[h+j>>2];n=j|4;L[n+i>>2]=L[h+n>>2];n=j|8;L[n+i>>2]=L[h+n>>2];j=j|12;L[j+i>>2]=L[h+j>>2];k=k+4|0;l=l+4|0;if((t|0)!=(l|0)){continue}break}}l=m&3;if(l){while(1){j=k<<2;L[j+i>>2]=L[h+j>>2];k=k+1|0;b=b+1|0;if((l|0)!=(b|0)){continue}break}}if(M[g+428|0]){break c}break b}if(!h|!M[g+428|0]){break b}}if(h){L[8514]=L[8514]+1;ha[L[6799]](h)}m=L[g+416>>2]}L[g+424>>2]=i;J[g+428|0]=1;L[g+420>>2]=a}h=L[g+424>>2];L[h+(m<<2)>>2]=1;i=m+1|0;L[g+416>>2]=i;d:{if((a|0)!=(i|0)){b=a;k=h;a=i;break d}b=a?a<<1:1;if((b|0)<=(a|0)){b=a;k=h;break d}e:{if(!b){k=0;break e}L[8513]=L[8513]+1;k=ha[L[6798]](b<<2,16)|0;h=L[g+424>>2];a=L[g+416>>2]}f:{g:{if((a|0)>0){m=0;i=0;if(a>>>0>=4){t=a&-4;l=0;while(1){j=i<<2;L[j+k>>2]=L[h+j>>2];n=j|4;L[n+k>>2]=L[h+n>>2];n=j|8;L[n+k>>2]=L[h+n>>2];j=j|12;L[j+k>>2]=L[h+j>>2];i=i+4|0;l=l+4|0;if((t|0)!=(l|0)){continue}break}}l=a&3;if(l){while(1){j=i<<2;L[j+k>>2]=L[h+j>>2];i=i+1|0;m=m+1|0;if((l|0)!=(m|0)){continue}break}}if(M[g+428|0]){break g}break f}if(!h|!M[g+428|0]){break f}}if(h){L[8514]=L[8514]+1;ha[L[6799]](h)}a=L[g+416>>2]}L[g+424>>2]=k;J[g+428|0]=1;L[g+420>>2]=b}L[(a<<2)+k>>2]=2;h=a+1|0;L[g+416>>2]=h;h:{if((b|0)!=(h|0)){a=b;i=k;b=h;break h}a=b?b<<1:1;if((b|0)>=(a|0)){a=b;i=k;break h}i:{if(!a){i=0;break i}L[8513]=L[8513]+1;i=ha[L[6798]](a<<2,16)|0;k=L[g+424>>2];b=L[g+416>>2]}j:{k:{if((b|0)>0){m=0;h=0;if(b>>>0>=4){t=b&-4;l=0;while(1){j=h<<2;L[j+i>>2]=L[k+j>>2];n=j|4;L[n+i>>2]=L[k+n>>2];n=j|8;L[n+i>>2]=L[k+n>>2];j=j|12;L[j+i>>2]=L[k+j>>2];h=h+4|0;l=l+4|0;if((t|0)!=(l|0)){continue}break}}l=b&3;if(l){while(1){j=h<<2;L[j+i>>2]=L[k+j>>2];h=h+1|0;m=m+1|0;if((l|0)!=(m|0)){continue}break}}if(M[g+428|0]){break k}break j}if(!k|!M[g+428|0]){break j}}if(k){L[8514]=L[8514]+1;ha[L[6799]](k)}b=L[g+416>>2]}L[g+424>>2]=i;J[g+428|0]=1;L[g+420>>2]=a}L[(b<<2)+i>>2]=3;b=b+1|0;L[g+416>>2]=b;l:{if((a|0)!=(b|0)){h=i;a=b;break l}j=a?a<<1:1;if((j|0)<=(a|0)){h=i;break l}m:{if(!j){h=0;break m}L[8513]=L[8513]+1;h=ha[L[6798]](j<<2,16)|0;i=L[g+424>>2];a=L[g+416>>2]}n:{o:{if((a|0)>0){b=0;k=0;if(a>>>0>=4){t=a&-4;m=0;while(1){l=k<<2;L[l+h>>2]=L[i+l>>2];n=l|4;L[n+h>>2]=L[i+n>>2];n=l|8;L[n+h>>2]=L[i+n>>2];l=l|12;L[l+h>>2]=L[i+l>>2];k=k+4|0;m=m+4|0;if((t|0)!=(m|0)){continue}break}}m=a&3;if(m){while(1){l=k<<2;L[l+h>>2]=L[i+l>>2];k=k+1|0;b=b+1|0;if((m|0)!=(b|0)){continue}break}}if(M[g+428|0]){break o}break n}if(!i|!M[g+428|0]){break n}}if(i){L[8514]=L[8514]+1;ha[L[6799]](i)}a=L[g+416>>2]}L[g+424>>2]=h;J[g+428|0]=1;L[g+420>>2]=j}L[(a<<2)+h>>2]=0;L[g+416>>2]=a+1;L[8513]=L[8513]+1;a=ha[L[6798]](20,16)|0;L[a+12>>2]=0;L[a+4>>2]=35;L[a+8>>2]=0;L[a>>2]=13384;L[a+16>>2]=f;L[a+4>>2]=32;L[a>>2]=21300;L[f+192>>2]=a;L[a+12>>2]=1048576e3;a=f+1152|0;L[a>>2]=0;L[a+4>>2]=0;L[f+1148>>2]=1065353216;a=f+1160|0;L[a>>2]=0;L[a+4>>2]=0;a=f+1172|0;L[a>>2]=0;L[a+4>>2]=0;L[f+1168>>2]=1065353216;a=f+1180|0;L[a>>2]=0;L[a+4>>2]=0;a=f+1192|0;L[a>>2]=0;L[a+4>>2]=0;L[f+1188>>2]=1065353216;a=f+1200|0;L[a>>2]=0;L[a+4>>2]=0;a=f+1208|0;L[a>>2]=0;L[a+4>>2]=0;a=f+1216|0;L[a>>2]=0;L[a+4>>2]=0;a=f+1224|0;L[a>>2]=0;L[a+4>>2]=1065353216;k=Bk(f);a=k;L[a+12>>2]=1065353216;L[a+16>>2]=1;L[a+4>>2]=1065353216;L[a+8>>2]=1065353216;a=L[f+192>>2];o=S(ha[L[L[a>>2]+48>>2]](a));a=L[f+712>>2];p:{if((c|0)<=(a|0)){break p}if(L[f+716>>2]<(c|0)){if(c){L[8513]=L[8513]+1;u=ha[L[6798]](R(c,104),16)|0;i=L[f+712>>2]}else{i=a}q:{if((i|0)<=0){break q}b=0;if((i|0)!=1){h=i&-2;while(1){g=R(b,104);qa(g+u|0,g+L[f+720>>2]|0,104);g=R(b|1,104);qa(g+u|0,g+L[f+720>>2]|0,104);b=b+2|0;x=x+2|0;if((h|0)!=(x|0)){continue}break}}if(!(i&1)){break q}b=R(b,104);qa(b+u|0,b+L[f+720>>2]|0,104)}b=L[f+720>>2];if(!(b?!b|!M[f+724|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[f+720>>2]=u;J[f+724|0]=1;L[f+716>>2]=c}i=(a^-1)+c|0;h=c-a&3;if(h){b=0;while(1){pa(L[f+720>>2]+R(a,104)|0,0,104);a=a+1|0;b=b+1|0;if((h|0)!=(b|0)){continue}break}}if(i>>>0<3){break p}while(1){b=R(a,104);pa(b+L[f+720>>2]|0,0,104);pa((b+L[f+720>>2]|0)+104|0,0,104);pa((b+L[f+720>>2]|0)+208|0,0,104);pa((b+L[f+720>>2]|0)+312|0,0,104);a=a+4|0;if((c|0)!=(a|0)){continue}break}}L[f+712>>2]=c;if((c|0)>0){b=0;while(1){a=pa(L[f+720>>2]+R(b,104)|0,0,104);r=S(0);s=S(0);v=S(0);q=S(0);u=0;if(d){q=P[d+12>>2];v=P[d+8>>2];r=P[d+4>>2];s=P[d>>2];u=d+16|0}P[a+8>>2]=s;P[a+12>>2]=r;P[a+20>>2]=q;P[a+16>>2]=v;d=L[a+12>>2];L[a+24>>2]=L[a+8>>2];L[a+28>>2]=d;d=L[a+20>>2];L[a+32>>2]=L[a+16>>2];L[a+36>>2]=d;r:{if(!e){q=S(1);e=0;break r}q=P[e>>2];e=e+4|0}P[a+88>>2]=q>S(0)?S(S(1)/q):S(0);L[p+28>>2]=0;P[p+24>>2]=o+v;P[p+20>>2]=o+r;P[p+16>>2]=o+s;L[p+12>>2]=0;P[p+8>>2]=v-o;P[p+4>>2]=r-o;P[p>>2]=s-o;L[a+96>>2]=Bb(w,p,a);L[a+4>>2]=k;d=u;b=b+1|0;if((c|0)!=(b|0)){continue}break}}a=f+892|0;b=L[w>>2];s:{if(b){c=L[f+192>>2];o=S(ha[L[L[c>>2]+48>>2]](c));q=P[b>>2];r=P[b+4>>2];s=P[b+8>>2];L[f+904>>2]=0;P[f+900>>2]=s-o;P[f+896>>2]=r-o;P[f+892>>2]=q-o;q=P[b+20>>2];r=P[b+24>>2];s=P[b+16>>2];L[f+920>>2]=0;P[f+916>>2]=o+r;P[f+912>>2]=o+q;b=f+908|0;P[b>>2]=o+s;c=L[f+188>>2];if(!c){break s}d=L[f+684>>2];e=L[d+32>>2];ha[L[L[e>>2]+16>>2]](e,c,a,b,L[d+36>>2]);break s}L[a>>2]=0;L[a+4>>2]=0;L[a+24>>2]=0;L[a+28>>2]=0;L[a+16>>2]=0;L[a+20>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0}fa=p+32|0;return f}function xA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;u=fa-16|0;fa=u;wa(2555);d=L[a+180>>2];j=L[a+212>>2];a:{if((d|0)>=(j|0)){break a}if((j|0)>L[a+184>>2]){if(j){L[8513]=L[8513]+1;g=ha[L[6798]](j<<2,16)|0;c=L[a+180>>2]}else{c=d}b:{if((c|0)<=0){break b}if(c>>>0>=4){i=c&-4;while(1){f=h<<2;L[f+g>>2]=L[f+L[a+188>>2]>>2];m=f|4;L[m+g>>2]=L[m+L[a+188>>2]>>2];m=f|8;L[m+g>>2]=L[m+L[a+188>>2]>>2];f=f|12;L[f+g>>2]=L[f+L[a+188>>2]>>2];h=h+4|0;e=e+4|0;if((i|0)!=(e|0)){continue}break}}c=c&3;if(!c){break b}while(1){e=h<<2;L[e+g>>2]=L[e+L[a+188>>2]>>2];h=h+1|0;r=r+1|0;if((c|0)!=(r|0)){continue}break}}c=L[a+188>>2];if(!(c?!c|!M[a+192|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[a+188>>2]=g;J[a+192|0]=1;L[a+184>>2]=j}c=j+(d^-1)|0;e=j-d&3;if(e){h=0;while(1){L[L[a+188>>2]+(d<<2)>>2]=0;d=d+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}if(c>>>0<3){break a}while(1){c=d<<2;L[c+L[a+188>>2]>>2]=0;L[(c+L[a+188>>2]|0)+4>>2]=0;L[(c+L[a+188>>2]|0)+8>>2]=0;L[(c+L[a+188>>2]|0)+12>>2]=0;d=d+4|0;if((j|0)!=(d|0)){continue}break}}L[a+180>>2]=j;if((ha[L[L[a>>2]+104>>2]](a)|0)>0){d=0;while(1){c=d<<2;L[c+L[a+188>>2]>>2]=L[c+L[a+220>>2]>>2];d=d+1|0;if((ha[L[L[a>>2]+104>>2]](a)|0)>(d|0)){continue}break}}d=L[a+180>>2];if((d|0)>=2){Pk(a+176|0,u+15|0,0,d-1|0)}d=ha[L[L[a>>2]+104>>2]](a)|0;d=d?L[a+188>>2]:0;c=L[a+180>>2];g=L[a+196>>2];L[g+20>>2]=ha[L[L[a>>2]+20>>2]](a);L[g+16>>2]=c;L[g+12>>2]=d;L[g+4>>2]=b;c=L[g+32>>2];c:{if((c|0)>=0){break c}if(L[g+36>>2]<0){d=L[g+40>>2];if(!(d?!d|!M[g+44|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}J[g+44|0]=1;L[g+36>>2]=0;L[g+40>>2]=0}e=0;d=c;j=0-c&3;if(j){while(1){L[L[g+40>>2]+(d<<2)>>2]=0;d=d+1|0;e=e+1|0;if((j|0)!=(e|0)){continue}break}}if(c>>>0>4294967292){break c}while(1){c=d<<2;L[c+L[g+40>>2]>>2]=0;L[(c+L[g+40>>2]|0)+4>>2]=0;L[(c+L[g+40>>2]|0)+8>>2]=0;L[(c+L[g+40>>2]|0)+12>>2]=0;d=d+4|0;if(d){continue}break}}L[g+32>>2]=0;c=L[g+52>>2];d:{if((c|0)>=0){break d}if(L[g+56>>2]<0){d=L[g+60>>2];if(!(d?!d|!M[g- -64|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}J[g+64|0]=1;L[g+56>>2]=0;L[g+60>>2]=0}e=0;d=c;j=0-c&3;if(j){while(1){L[L[g+60>>2]+(d<<2)>>2]=0;d=d+1|0;e=e+1|0;if((j|0)!=(e|0)){continue}break}}if(c>>>0>4294967292){break d}while(1){c=d<<2;L[c+L[g+60>>2]>>2]=0;L[(c+L[g+60>>2]|0)+4>>2]=0;L[(c+L[g+60>>2]|0)+8>>2]=0;L[(c+L[g+60>>2]|0)+12>>2]=0;d=d+4|0;if(d){continue}break}}L[g+52>>2]=0;c=L[g+72>>2];e:{if((c|0)>=0){break e}if(L[g+76>>2]<0){d=L[g+80>>2];if(!(d?!d|!M[g+84|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}J[g+84|0]=1;L[g+76>>2]=0;L[g+80>>2]=0}e=0;d=c;j=0-c&3;if(j){while(1){L[L[g+80>>2]+(d<<2)>>2]=0;d=d+1|0;e=e+1|0;if((j|0)!=(e|0)){continue}break}}if(c>>>0>4294967292){break e}while(1){c=d<<2;L[c+L[g+80>>2]>>2]=0;L[(c+L[g+80>>2]|0)+4>>2]=0;L[(c+L[g+80>>2]|0)+8>>2]=0;L[(c+L[g+80>>2]|0)+12>>2]=0;d=d+4|0;if(d){continue}break}}L[g+72>>2]=0;d=L[a+200>>2];c=L[a+24>>2];A=d,B=L[a+8>>2],C=ha[L[L[c>>2]+36>>2]](c)|0,z=L[L[d>>2]+8>>2],ha[z](A|0,B|0,C|0);f=L[a+204>>2];m=L[a+24>>2];t=L[a+196>>2];g=0;r=0;v=fa-16|0;fa=v;j=a;d=0;wa(2450);a=L[f+28>>2];f:{if((a|0)>=0){break f}if(L[f+32>>2]<0){c=L[f+36>>2];if(!(c?!c|!M[f+40|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}J[f+40|0]=1;L[f+32>>2]=0;L[f+36>>2]=0}c=a;e=0-c&3;if(e){while(1){L[L[f+36>>2]+(c<<2)>>2]=0;c=c+1|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}if(a>>>0>4294967292){break f}while(1){a=c<<2;L[a+L[f+36>>2]>>2]=0;L[(a+L[f+36>>2]|0)+4>>2]=0;L[(a+L[f+36>>2]|0)+8>>2]=0;L[(a+L[f+36>>2]|0)+12>>2]=0;c=c+4|0;if(c){continue}break}}L[f+28>>2]=0;a=0;l=fa-16|0;fa=l;k=f+4|0;h=L[k+4>>2];g:{if((h|0)<=0){break g}i=L[k+12>>2];while(1){d=a;n=i+(a<<3)|0;e=n;c=L[e>>2];if((c|0)!=(a|0)){while(1){d=i+(c<<3)|0;L[e>>2]=L[d>>2];d=L[d>>2];e=i+(d<<3)|0;c=L[e>>2];if((c|0)!=(d|0)){continue}break}}L[n>>2]=d;a=a+1|0;if((h|0)!=(a|0)){continue}break}if((h|0)<2){break g}Zk(k,l+15|0,0,h-1|0)}fa=l+16|0;k=L[f+8>>2];if((k|0)>0){d=0;while(1){a=d;c=a+1|0;h=(c|0)<(k|0)?k:c;e=h-1|0;n=L[f+16>>2];l=L[n+(a<<3)>>2];while(1){h:{c=d;if((e|0)==(c|0)){c=e;d=h;break h}d=c+1|0;if((l|0)==L[n+(d<<3)>>2]){continue}}break}s=(a|0)>(c|0);i:{if(s){break i}i=1;h=(c-a|0)+1|0;o=h&1;p=L[j+16>>2];e=a;if((a|0)!=(c|0)){w=h&-2;h=0;while(1){q=n+(e<<3)|0;y=L[p+(L[q+4>>2]<<2)>>2];if((l|0)==L[y+208>>2]){x=i;i=L[y+216>>2];i=x&((i|0)!=4&(i|0)!=1)}q=L[p+(L[q+12>>2]<<2)>>2];if((l|0)==L[q+208>>2]){x=i;i=L[q+216>>2];i=x&((i|0)!=4&(i|0)!=1)}e=e+2|0;h=h+2|0;if((w|0)!=(h|0)){continue}break}}j:{if(!o){break j}e=L[p+(L[(n+(e<<3)|0)+4>>2]<<2)>>2];if((l|0)!=L[e+208>>2]){break j}e=L[e+216>>2];i=(e|0)!=4&(e|0)!=1&i}if(i){if(s){break i}while(1){e=L[L[j+16>>2]+(L[(L[f+16>>2]+(a<<3)|0)+4>>2]<<2)>>2];if((l|0)==L[e+208>>2]&(L[e+216>>2]&-2)!=4){L[e+216>>2]=2}e=(a|0)==(c|0);a=a+1|0;if(!e){continue}break}break i}while(1){e=a;a=L[L[j+16>>2]+(L[(L[f+16>>2]+(a<<3)|0)+4>>2]<<2)>>2];if(!((l|0)!=L[a+208>>2]|L[a+216>>2]!=2)){if((L[a+216>>2]&-2)!=4){L[a+216>>2]=3}L[a+220>>2]=0}a=e+1|0;if((c|0)!=(e|0)){continue}break}}if((d|0)<(k|0)){continue}break}}p=ha[L[L[m>>2]+36>>2]](m)|0;if((p|0)>0){d=0;while(1){n=ha[L[L[m>>2]+40>>2]](m,d)|0;a=L[n+744>>2];c=L[n+740>>2];k:{if(!(L[c+216>>2]!=2?c:0)&(!a|L[a+216>>2]==2)){break k}e=L[c+204>>2];if(!(!(e&2)|L[c+216>>2]==2|e&4)){ib(a,0)}e=L[a+204>>2];if(!(!(e&2)|L[a+216>>2]==2|e&4)){ib(c,0)}if(!M[f+64|0]){break k}if(!(ha[L[L[m>>2]+28>>2]](m,c,a)|0)){break k}e=L[f+28>>2];l:{if((e|0)!=L[f+32>>2]){break l}k=e?e<<1:1;if((k|0)<=(e|0)){break l}m:{if(!k){a=0;break m}L[8513]=L[8513]+1;a=ha[L[6798]](k<<2,16)|0;e=L[f+28>>2]}n:{if((e|0)<=0){break n}i=0;c=0;if(e>>>0>=4){s=e&-4;h=0;while(1){l=c<<2;L[l+a>>2]=L[l+L[f+36>>2]>>2];o=l|4;L[o+a>>2]=L[o+L[f+36>>2]>>2];o=l|8;L[o+a>>2]=L[o+L[f+36>>2]>>2];l=l|12;L[l+a>>2]=L[l+L[f+36>>2]>>2];c=c+4|0;h=h+4|0;if((s|0)!=(h|0)){continue}break}}h=e&3;if(!h){break n}while(1){l=c<<2;L[l+a>>2]=L[l+L[f+36>>2]>>2];c=c+1|0;i=i+1|0;if((h|0)!=(i|0)){continue}break}}c=L[f+36>>2];if(!(!c|!M[f+40|0])){if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}e=L[f+28>>2]}L[f+36>>2]=a;J[f+40|0]=1;L[f+32>>2]=k}L[L[f+36>>2]+(e<<2)>>2]=n;L[f+28>>2]=e+1}d=d+1|0;if((p|0)!=(d|0)){continue}break}}va();n=L[f+8>>2];wa(2791);o:{if(!M[f+64|0]){a=ha[L[L[m>>2]+44>>2]](m)|0;d=ha[L[L[m>>2]+36>>2]](m)|0;ha[L[L[t>>2]+8>>2]](t,L[j+16>>2],L[j+8>>2],a,d,-1);break o}m=L[f+28>>2];if((m|0)>=2){Xk(f+24|0,v+15|0,0,m-1|0)}if((n|0)<=0){break o}a=1;while(1){l=L[L[f+16>>2]+(r<<3)>>2];i=1;while(1){d=L[f+16>>2]+(r<<3)|0;if((l|0)==L[d>>2]){s=L[L[j+16>>2]+(L[d+4>>2]<<2)>>2];c=L[f+48>>2];p:{if((c|0)!=L[f+52>>2]){break p}p=c?c<<1:1;if((p|0)<=(c|0)){break p}q:{if(!p){e=0;break q}L[8513]=L[8513]+1;e=ha[L[6798]](p<<2,16)|0;c=L[f+48>>2]}r:{if((c|0)<=0){break r}h=0;d=0;if(c>>>0>=4){w=c&-4;o=0;while(1){k=d<<2;L[k+e>>2]=L[k+L[f+56>>2]>>2];q=k|4;L[q+e>>2]=L[q+L[f+56>>2]>>2];q=k|8;L[q+e>>2]=L[q+L[f+56>>2]>>2];k=k|12;L[k+e>>2]=L[k+L[f+56>>2]>>2];d=d+4|0;o=o+4|0;if((w|0)!=(o|0)){continue}break}}k=c&3;if(!k){break r}while(1){o=d<<2;L[o+e>>2]=L[o+L[f+56>>2]>>2];d=d+1|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}d=L[f+56>>2];if(!(!d|!M[f+60|0])){if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}c=L[f+48>>2]}L[f+56>>2]=e;J[f+60|0]=1;L[f+52>>2]=p}L[L[f+56>>2]+(c<<2)>>2]=s;L[f+48>>2]=c+1;d=L[s+216>>2];i=((d|0)==2|(d|0)==5)&i;r=r+1|0;if((n|0)>(r|0)){continue}}break}h=0;d=0;s:{if((g|0)>=(m|0)){break s}k=L[f+36>>2];e=k+(g<<2)|0;d=L[e>>2];c=L[L[d+740>>2]+208>>2];if((c|0)<0){c=L[L[d+744>>2]+208>>2]}d=0;if((c|0)!=(l|0)){break s}a=g+1|0;c=(a|0)<(m|0)?m:a;h=c-1|0;a=g;while(1){t:{if((a|0)==(h|0)){a=c;break t}a=a+1|0;p=L[k+(a<<2)>>2];d=L[L[p+740>>2]+208>>2];if((d|0)<0){d=L[L[p+744>>2]+208>>2]}if((d|0)==(l|0)){continue}}break}h=a-g|0;d=e}if(!i){ha[L[L[t>>2]+8>>2]](t,L[f+56>>2],L[f+48>>2],d,h,l)}c=L[f+48>>2];u:{if((c|0)>=0){break u}if(L[f+52>>2]<0){d=L[f+56>>2];if(!(d?!d|!M[f+60|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}J[f+60|0]=1;L[f+52>>2]=0;L[f+56>>2]=0}e=0;d=c;i=0-c&3;if(i){while(1){L[L[f+56>>2]+(d<<2)>>2]=0;d=d+1|0;e=e+1|0;if((i|0)!=(e|0)){continue}break}}if(c>>>0>4294967292){break u}while(1){c=d<<2;L[c+L[f+56>>2]>>2]=0;L[(c+L[f+56>>2]|0)+4>>2]=0;L[(c+L[f+56>>2]|0)+8>>2]=0;L[(c+L[f+56>>2]|0)+12>>2]=0;d=d+4|0;if(d){continue}break}}g=h?a:g;L[f+48>>2]=0;if((n|0)>(r|0)){continue}break}}va();fa=v+16|0;Ok(L[j+196>>2]);a=L[j+200>>2];ha[L[L[a>>2]+16>>2]](a,b,L[j+72>>2]);va();fa=u+16|0}function EG(a,b,c,d,e){a=a|0;b=b|0;c=c|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=S(0),o=S(0),p=S(0),q=S(0),r=0,s=0,t=S(0),u=S(0),v=S(0),w=S(0),x=S(0),y=S(0),z=S(0),A=S(0),B=0,C=S(0),D=0,E=S(0),F=S(0),G=S(0),H=S(0),I=S(0),K=S(0),N=S(0),O=S(0),Q=S(0),U=S(0),V=S(0),W=S(0),X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=S(0),ca=S(0),da=S(0),ea=S(0),ga=S(0),ia=S(0);g=fa-176|0;fa=g;$=L[b+4>>2];aa=L[c+4>>2];if(!(L[$+68>>2]==L[a+40>>2]&L[aa+68>>2]==L[a+44>>2])){h=L[a+8>>2];r=L[h+8>>2];if((r|0)>0){while(1){i=L[(L[h+16>>2]+R(f,12)|0)+8>>2];if(i){ha[L[L[i>>2]>>2]](i)|0;j=L[a+4>>2];ha[L[L[j>>2]+60>>2]](j,i)}f=f+1|0;if((r|0)!=(f|0)){continue}break}h=L[a+8>>2]}Pm(h)}L[g+24>>2]=0;L[g+16>>2]=0;L[g+20>>2]=0;J[g+28|0]=1;i=L[a+8>>2];s=L[i+8>>2];a:{if((s|0)<=0){break a}while(1){h=L[(L[i+16>>2]+R(l,12)|0)+8>>2];if(h){ha[L[L[h>>2]+16>>2]](h,g+12|0);f=0;j=L[g+16>>2];if((j|0)>0){while(1){k=L[L[g+24>>2]+(f<<2)>>2];if(L[k+748>>2]){L[e+4>>2]=k;h=L[k+740>>2];j=L[L[e+8>>2]+8>>2];r=(h|0)==(j|0);m=h;h=L[L[e+12>>2]+8>>2];_a(k,(r?m:h)+4|0,(r?h:j)+4|0);L[e+4>>2]=0;j=L[g+16>>2]}f=f+1|0;if((j|0)>(f|0)){continue}break}}b:{if((j|0)>=0){break b}if(L[g+20>>2]<0){h=L[g+24>>2];if(!(h?!h|!M[g+28|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](h)}J[g+28|0]=1;L[g+20>>2]=0;L[g+24>>2]=0}s=0;f=j;h=0-f&3;if(h){while(1){L[L[g+24>>2]+(f<<2)>>2]=0;f=f+1|0;s=s+1|0;if((h|0)!=(s|0)){continue}break}}if(j>>>0>4294967292){break b}while(1){h=f<<2;L[h+L[g+24>>2]>>2]=0;L[(h+L[g+24>>2]|0)+4>>2]=0;L[(h+L[g+24>>2]|0)+8>>2]=0;L[(h+L[g+24>>2]|0)+12>>2]=0;f=f+4|0;if(f){continue}break}}L[g+16>>2]=0;s=L[i+8>>2]}l=l+1|0;if((s|0)>(l|0)){continue}break}h=L[g+24>>2];if(!h|!M[g+28|0]){break a}if(h){L[8514]=L[8514]+1;ha[L[6799]](h)}}r=L[$+64>>2];j=L[aa+64>>2];f=L[a+4>>2];h=L[a+8>>2];L[g+172>>2]=L[a+32>>2];L[g+168>>2]=h;L[g+164>>2]=e;L[g+160>>2]=d;L[g+156>>2]=f;L[g+144>>2]=0;L[g+140>>2]=9996;L[g+152>>2]=c;L[g+148>>2]=b;h=L[r>>2];c:{if(!h){break c}d=L[j>>2];if(!d){break c}f=L[b+12>>2];w=P[f+8>>2];n=S(-P[f+48>>2]);t=P[f+24>>2];p=P[f+52>>2];x=P[f+40>>2];u=P[f+56>>2];e=L[c+12>>2];v=P[e+56>>2];q=P[e+48>>2];o=P[e+52>>2];ea=S(S(S(S(w*n)-S(t*p))-S(x*u))+S(S(v*x)+S(S(q*w)+S(t*o))));y=P[f+4>>2];C=P[f+20>>2];z=P[f+36>>2];ga=S(S(S(S(y*n)-S(C*p))-S(z*u))+S(S(v*z)+S(S(q*y)+S(C*o))));H=P[e+40>>2];E=P[e+24>>2];I=P[e+8>>2];F=P[e+36>>2];K=P[e+20>>2];G=P[e+4>>2];W=P[f>>2];A=S(W*n);n=P[f+16>>2];A=S(A-S(n*p));p=P[f+32>>2];ia=S(S(A-S(p*u))+S(S(v*p)+S(S(q*W)+S(n*o))));v=P[e+16>>2];q=P[e>>2];o=P[e+32>>2];L[8513]=L[8513]+1;e=ha[L[6798]](1024,16)|0;L[e+4>>2]=d;L[e>>2]=h;da=S(S(H*x)+S(S(I*w)+S(t*E)));Q=S(T(da));A=S(S(F*x)+S(S(G*w)+S(t*K)));U=S(T(A));N=S(S(o*x)+S(S(q*w)+S(t*v)));V=S(T(N));O=S(S(H*z)+S(S(I*y)+S(C*E)));w=S(T(O));t=S(S(F*z)+S(S(G*y)+S(C*K)));x=S(T(t));y=S(S(o*z)+S(S(q*y)+S(C*v)));C=S(T(y));z=S(S(H*p)+S(S(I*W)+S(n*E)));H=S(T(z));E=S(S(F*p)+S(S(G*W)+S(n*K)));I=S(T(E));F=S(S(o*p)+S(S(q*W)+S(n*v)));K=S(T(F));X=124;f=128;l=128;j=1;while(1){d:{e:{f:{r=j-1|0;s=r<<3;d=s+e|0;D=L[d>>2];B=L[d+4>>2];G=P[B+24>>2];n=P[B+8>>2];ba=S(S(S(G-n)*S(.5))+S(0));p=P[B+16>>2];u=P[B>>2];ca=S(S(S(p-u)*S(.5))+S(0));v=P[B+20>>2];o=P[B+4>>2];W=S(S(S(v-o)*S(.5))+S(0));q=S(S(ba*H)+S(S(ca*K)+S(I*W)));n=S(S(G+n)*S(.5));u=S(S(p+u)*S(.5));v=S(S(v+o)*S(.5));o=S(ia+S(S(n*z)+S(S(u*F)+S(E*v))));g:{if(!(P[D>>2]<=S(q+o))|!(P[D+16>>2]>=S(o-q))){break g}q=S(S(ba*w)+S(S(ca*C)+S(x*W)));o=S(ga+S(S(n*O)+S(S(u*y)+S(t*v))));if(!(P[D+4>>2]<=S(q+o))|!(P[D+20>>2]>=S(o-q))){break g}q=S(S(ba*Q)+S(S(ca*V)+S(U*W)));o=S(ea+S(S(n*da)+S(S(u*N)+S(A*v))));if(!(P[D+8>>2]<=S(q+o))|!(P[D+24>>2]>=S(o-q))){break g}h:{if((r|0)<=(X|0)){d=f;h=e;break h}d=f<<1;i:{if((f|0)>=(d|0)){h=e;break i}if((d|0)<=(l|0)){h=e;break i}j:{if(!f){h=0;break j}L[8513]=L[8513]+1;h=ha[L[6798]](f<<4,16)|0;if((f|0)<=0){break j}l=0;X=0;if(f>>>0>=4){Z=f&-4;Y=0;while(1){_=X<<3;m=_+h|0;k=e+_|0;i=L[k+4>>2];L[m>>2]=L[k>>2];L[m+4>>2]=i;i=_|8;m=i+h|0;k=e+i|0;i=L[k+4>>2];L[m>>2]=L[k>>2];L[m+4>>2]=i;i=_|16;m=i+h|0;k=e+i|0;i=L[k+4>>2];L[m>>2]=L[k>>2];L[m+4>>2]=i;i=_|24;m=i+h|0;k=e+i|0;i=L[k+4>>2];L[m>>2]=L[k>>2];L[m+4>>2]=i;X=X+4|0;Y=Y+4|0;if((Z|0)!=(Y|0)){continue}break}}m=f&3;if(!m){break j}while(1){f=X<<3;k=f+h|0;i=e+f|0;f=L[i+4>>2];L[k>>2]=L[i>>2];L[k+4>>2]=f;X=X+1|0;l=l+1|0;if((m|0)!=(l|0)){continue}break}}if(e){L[8514]=L[8514]+1;ha[L[6799]](e)}l=d}X=d-4|0}e=L[B+40>>2];if(L[D+40>>2]){f=L[D+36>>2];if(e){e=h+s|0;L[e+4>>2]=L[B+36>>2];L[e>>2]=f;e=L[D+40>>2];f=(j<<3)+h|0;L[f+4>>2]=L[B+36>>2];L[f>>2]=e;e=L[D+36>>2];L[f+12>>2]=L[B+40>>2];L[f+8>>2]=e;e=L[D+40>>2];L[f+20>>2]=L[B+40>>2];L[f+16>>2]=e;j=j+3|0;break e}e=h+s|0;L[e+4>>2]=B;L[e>>2]=f;f=L[D+40>>2];e=(j<<3)+h|0;L[e+4>>2]=B;L[e>>2]=f;break f}if(e){e=h+s|0;L[e+4>>2]=L[B+36>>2];L[e>>2]=D;e=(j<<3)+h|0;L[e+4>>2]=L[B+40>>2];L[e>>2]=D;break f}ha[L[L[g+140>>2]+8>>2]](g+140|0,D,B);f=d;e=h}j=r;break d}j=j+1|0}f=d;e=h}if(j){continue}break}if(!e){break c}if(e){L[8514]=L[8514]+1;ha[L[6799]](e)}}Y=L[a+8>>2];if(L[Y+8>>2]>0){j=0;while(1){h=R(j,12);d=h+L[Y+16>>2]|0;r=L[d+8>>2];k:{if(!r){break k}f=L[$+24>>2]+R(L[d>>2],80)|0;e=L[f+64>>2];d=L[b+12>>2];v=P[d+52>>2];q=P[d+56>>2];y=P[f+48>>2];C=P[f+52>>2];z=P[f+56>>2];H=P[f+4>>2];E=P[f+20>>2];I=P[f+36>>2];F=P[f+8>>2];K=P[f+24>>2];G=P[f+40>>2];Q=P[d+20>>2];A=P[d+24>>2];n=P[f>>2];U=P[d+36>>2];p=P[f+16>>2];N=P[d+40>>2];u=P[f+32>>2];o=P[d+48>>2];V=P[d+8>>2];O=P[d>>2];w=P[d+4>>2];t=P[d+16>>2];x=P[d+32>>2];f=0;L[g+72>>2]=0;L[g+56>>2]=0;L[g+40>>2]=0;L[g+24>>2]=0;P[g+44>>2]=S(u*N)+S(S(n*x)+S(U*p));P[g+28>>2]=S(u*A)+S(S(n*t)+S(Q*p));P[g+12>>2]=S(u*V)+S(S(n*O)+S(w*p));P[g+52>>2]=S(G*N)+S(S(F*x)+S(U*K));P[g+48>>2]=S(I*N)+S(S(H*x)+S(U*E));P[g+36>>2]=S(G*A)+S(S(F*t)+S(Q*K));P[g+32>>2]=S(I*A)+S(S(H*t)+S(Q*E));P[g+20>>2]=S(G*V)+S(S(F*O)+S(w*K));P[g+16>>2]=S(I*V)+S(S(H*O)+S(w*E));P[g+68>>2]=q+S(S(z*N)+S(S(y*x)+S(U*C)));P[g+64>>2]=v+S(S(z*A)+S(S(y*t)+S(Q*C)));P[g+60>>2]=o+S(S(z*V)+S(S(y*O)+S(w*C)));d=g+12|0;ha[L[L[e>>2]+8>>2]](e,d,g+124|0,g+108|0);i=L[aa+24>>2]+R(L[(h+L[Y+16>>2]|0)+4>>2],80)|0;e=L[i+64>>2];l=L[c+12>>2];v=P[l+52>>2];q=P[l+56>>2];y=P[i+48>>2];C=P[i+52>>2];z=P[i+56>>2];H=P[i+4>>2];E=P[i+20>>2];I=P[i+36>>2];F=P[i+8>>2];K=P[i+24>>2];G=P[i+40>>2];Q=P[l+20>>2];A=P[l+24>>2];n=P[i>>2];U=P[l+36>>2];p=P[i+16>>2];N=P[l+40>>2];u=P[i+32>>2];o=P[l+48>>2];V=P[l+8>>2];O=P[l>>2];w=P[l+4>>2];t=P[l+16>>2];x=P[l+32>>2];L[g+72>>2]=0;L[g+56>>2]=0;L[g+40>>2]=0;L[g+24>>2]=0;P[g+44>>2]=S(u*N)+S(S(n*x)+S(U*p));P[g+28>>2]=S(u*A)+S(S(n*t)+S(Q*p));P[g+12>>2]=S(u*V)+S(S(n*O)+S(w*p));P[g+52>>2]=S(G*N)+S(S(F*x)+S(U*K));P[g+48>>2]=S(I*N)+S(S(H*x)+S(U*E));P[g+36>>2]=S(G*A)+S(S(F*t)+S(Q*K));P[g+32>>2]=S(I*A)+S(S(H*t)+S(Q*E));P[g+20>>2]=S(G*V)+S(S(F*O)+S(w*K));P[g+16>>2]=S(I*V)+S(S(H*O)+S(w*E));P[g+68>>2]=q+S(S(z*N)+S(S(y*x)+S(U*C)));P[g+64>>2]=v+S(S(z*A)+S(S(y*t)+S(Q*C)));P[g+60>>2]=o+S(S(z*V)+S(S(y*O)+S(w*C)));ha[L[L[e>>2]+8>>2]](e,d,g+92|0,g+76|0);d=0;l:{if(P[g+124>>2]>P[g+76>>2]){break l}d=0;if(P[g+108>>2]>2]){break l}d=1}if(!(P[g+128>>2]>P[g+80>>2])&(!(P[g+112>>2]
>2])&(P[g+116>>2]
>2]|P[g+132>>2]>P[g+84>>2]?f:d))){break k}ha[L[L[r>>2]>>2]](r)|0;d=L[a+4>>2];ha[L[L[d>>2]+60>>2]](d,r);d=h+L[Y+16>>2]|0;i=L[d+4>>2];l=L[d>>2];h=L[a+16>>2];m:{if((h|0)!=L[a+20>>2]){break m}Z=h?h<<1:1;if((Z|0)<=(h|0)){break m}n:{if(!Z){s=0;break n}L[8513]=L[8513]+1;s=ha[L[6798]](R(Z,12),16)|0;h=L[a+16>>2]}o:{if((h|0)<=0){break o}r=h&1;if((h|0)!=1){e=h&-2;h=0;while(1){d=R(f,12);m=d+s|0;k=d+L[a+24>>2]|0;d=L[k+4>>2];L[m>>2]=L[k>>2];L[m+4>>2]=d;L[m+8>>2]=L[k+8>>2];d=R(f|1,12);m=d+s|0;k=d+L[a+24>>2]|0;d=L[k+4>>2];L[m>>2]=L[k>>2];L[m+4>>2]=d;L[m+8>>2]=L[k+8>>2];f=f+2|0;h=h+2|0;if((e|0)!=(h|0)){continue}break}}if(!r){break o}d=R(f,12);h=d+s|0;e=d+L[a+24>>2]|0;d=L[e+4>>2];L[h>>2]=L[e>>2];L[h+4>>2]=d;L[h+8>>2]=L[e+8>>2]}d=L[a+24>>2];if(!(d?!d|!M[a+28|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[a+24>>2]=s;J[a+28|0]=1;L[a+20>>2]=Z;h=L[a+16>>2]}d=L[a+24>>2]+R(h,12)|0;L[d+8>>2]=0;L[d+4>>2]=i;L[d>>2]=l;L[a+16>>2]=L[a+16>>2]+1}j=j+1|0;if((j|0)>2]){continue}break}}if(L[a+16>>2]>0){f=0;while(1){c=L[a+8>>2];b=L[a+24>>2]+R(f,12)|0;ha[L[L[c>>2]+8>>2]](c,L[b>>2],L[b+4>>2])|0;f=f+1|0;if((f|0)>2]){continue}break}}b=L[a+24>>2];if(!(b?!b|!M[a+28|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+24>>2]=0;J[a+28|0]=1;L[a+16>>2]=0;L[a+20>>2]=0;fa=g+176|0}function vz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=S(0),k=S(0),l=S(0),m=0,n=0,o=0,p=S(0),q=0,r=S(0),s=S(0),t=0,u=S(0),v=S(0),w=S(0),x=S(0),y=S(0),z=S(0),A=S(0),B=S(0),C=S(0),D=0,E=0,F=S(0),G=S(0);f=fa-176|0;fa=f;i=L[a+48>>2];e=L[a+52>>2];a:{if(!e){break a}e=L[e+20>>2];if(!e){break a}if(!(ha[L[L[e>>2]+48>>2]](e)&1)){break a}L[f+40>>2]=0;L[f+44>>2]=0;L[f+32>>2]=1065353216;L[f+36>>2]=1065353216;g=L[L[a+52>>2]+20>>2];e=L[a+8>>2];u=P[e+52>>2];p=P[e+12>>2];r=P[e+8>>2];v=P[e+56>>2];w=P[e+28>>2];y=P[e+20>>2];z=P[e+24>>2];A=P[e+60>>2];B=P[e+44>>2];C=P[e+36>>2];s=P[e+40>>2];x=P[e+4>>2];j=P[b+8>>2];k=P[b>>2];l=P[b+4>>2];L[f+152>>2]=0;P[f+148>>2]=A+S(S(j*B)+S(S(k*C)+S(l*s)));P[f+144>>2]=v+S(S(j*w)+S(S(k*y)+S(l*z)));P[f+140>>2]=u+S(S(j*p)+S(S(k*x)+S(l*r)));p=P[e+8>>2];r=P[e+12>>2];j=P[b+20>>2];k=P[b+24>>2];x=P[e+4>>2];l=P[b+16>>2];L[f+20>>2]=0;P[f+16>>2]=A+S(S(k*B)+S(S(l*C)+S(s*j)));P[f+12>>2]=v+S(S(k*w)+S(S(l*y)+S(z*j)));P[f+8>>2]=u+S(S(k*r)+S(S(l*x)+S(j*p)));o=f+140|0;h=f+8|0;n=f+32|0;ha[L[L[g>>2]+8>>2]](g,o,h,n);g=L[L[a+52>>2]+20>>2];u=P[e+52>>2];p=P[e+8>>2];r=P[e+12>>2];v=P[e+56>>2];w=P[e+20>>2];y=P[e+24>>2];z=P[e+28>>2];A=P[e+60>>2];B=P[e+36>>2];C=P[e+40>>2];j=P[b+20>>2];s=P[e+44>>2];k=P[b+24>>2];x=P[e+4>>2];l=P[b+16>>2];L[f+152>>2]=0;P[f+148>>2]=A+S(S(k*s)+S(S(l*B)+S(j*C)));P[f+144>>2]=v+S(S(k*z)+S(S(l*w)+S(j*y)));P[f+140>>2]=u+S(S(k*r)+S(S(l*x)+S(j*p)));p=P[e+8>>2];r=P[e+12>>2];j=P[b+36>>2];k=P[b+40>>2];x=P[e+4>>2];l=P[b+32>>2];L[f+20>>2]=0;P[f+16>>2]=A+S(S(k*s)+S(S(l*B)+S(C*j)));P[f+12>>2]=v+S(S(k*z)+S(S(l*w)+S(y*j)));P[f+8>>2]=u+S(S(k*r)+S(S(l*x)+S(j*p)));ha[L[L[g>>2]+8>>2]](g,o,h,n);g=L[L[a+52>>2]+20>>2];u=P[e+52>>2];p=P[e+8>>2];r=P[e+12>>2];v=P[e+56>>2];w=P[e+20>>2];y=P[e+24>>2];z=P[e+28>>2];A=P[e+60>>2];B=P[e+36>>2];C=P[e+40>>2];j=P[b+36>>2];s=P[e+44>>2];k=P[b+40>>2];x=P[e+4>>2];l=P[b+32>>2];L[f+152>>2]=0;P[f+148>>2]=A+S(S(k*s)+S(S(l*B)+S(j*C)));P[f+144>>2]=v+S(S(k*z)+S(S(l*w)+S(j*y)));P[f+140>>2]=u+S(S(k*r)+S(S(l*x)+S(j*p)));p=P[e+12>>2];r=P[e+8>>2];x=P[e+4>>2];j=P[b+8>>2];k=P[b>>2];l=P[b+4>>2];L[f+20>>2]=0;P[f+16>>2]=A+S(S(j*s)+S(S(k*B)+S(C*l)));P[f+12>>2]=v+S(S(j*z)+S(S(k*w)+S(y*l)));P[f+8>>2]=u+S(S(j*p)+S(S(k*x)+S(l*r)));ha[L[L[g>>2]+8>>2]](g,o,h,n)}e=c<<21|d;L[f+168>>2]=e;L[f+164>>2]=e;b:{c:{g=e+(d<<15^-1)|0;g=R(g>>10^g,9);g=g>>6^g;g=(g<<11^-1)+g|0;g=L[a+108>>2]-1&(g>>16^g);if(g>>>0>=O[a- -64>>2]){break c}g=L[L[a+72>>2]+(g<<2)>>2];if((g|0)==-1){break c}o=L[a+92>>2];h=L[a+132>>2];while(1){n=g<<2;if((e|0)!=L[n+h>>2]){g=L[o+n>>2];if((g|0)!=-1){continue}break c}break}e=L[a+112>>2];if(!e){break c}g=L[(e+(g<<3)|0)+4>>2];b=L[a+8>>2];L[g+8>>2]=L[L[b+192>>2]+8>>2];e=L[a+4>>2];o=L[e+192>>2];L[f+48>>2]=-1;L[f+52>>2]=-1;L[f+44>>2]=e+4;L[f+40>>2]=e;L[f+36>>2]=o;L[f+32>>2]=0;L[f+160>>2]=d;L[f+156>>2]=c;L[f+152>>2]=b+4;L[f+148>>2]=b;L[f+144>>2]=g;L[f+140>>2]=0;c=f+32|0;d=f+140|0;b=ha[L[L[i>>2]+8>>2]](i,c,d,0)|0;ha[L[L[b>>2]+8>>2]](b,c,d,L[a+52>>2],L[a+44>>2]);ha[L[L[b>>2]>>2]](b)|0;ha[L[L[i>>2]+60>>2]](i,b);break b}l=P[b+20>>2];y=P[b+36>>2];z=P[b+24>>2];A=P[b+40>>2];u=P[b+4>>2];B=P[b+32>>2];v=P[b+8>>2];w=P[b>>2];C=P[b+16>>2];L[f+124>>2]=0;L[f+108>>2]=0;L[f+92>>2]=0;L[f+76>>2]=0;L[f+60>>2]=0;k=S(C-w);s=S(y-u);p=S(B-w);r=S(l-u);j=S(S(k*s)-S(p*r));x=j;F=S(j*j);j=S(A-v);G=S(r*j);r=S(z-v);s=S(G-S(s*r));k=S(S(r*p)-S(j*k));p=S(S(1)/S(_(S(F+S(S(s*s)+S(k*k))))));j=S(S(x*p)*S(.05999999865889549));P[f+120>>2]=A-j;k=S(S(k*p)*S(.05999999865889549));P[f+116>>2]=y-k;P[f+104>>2]=z-j;P[f+100>>2]=l-k;P[f+88>>2]=v-j;P[f+84>>2]=u-k;P[f+72>>2]=A+j;P[f+68>>2]=y+k;P[f+56>>2]=z+j;P[f+52>>2]=l+k;L[f+44>>2]=0;l=S(S(s*p)*S(.05999999865889549));P[f+112>>2]=B-l;P[f+96>>2]=C-l;P[f+80>>2]=w-l;P[f+64>>2]=B+l;P[f+48>>2]=C+l;P[f+40>>2]=v+j;P[f+36>>2]=u+k;P[f+32>>2]=w+l;L[8513]=L[8513]+1;e=We(ha[L[6798]](112,16)|0,f+32|0,6);b=L[a+8>>2];L[e+8>>2]=L[L[b+192>>2]+8>>2];g=L[a+4>>2];o=L[g+192>>2];L[f+156>>2]=-1;L[f+160>>2]=-1;L[f+152>>2]=g+4;L[f+148>>2]=g;L[f+144>>2]=o;L[f+140>>2]=0;L[f+28>>2]=d;L[f+24>>2]=c;L[f+20>>2]=b+4;L[f+16>>2]=b;L[f+12>>2]=e;L[f+8>>2]=0;c=f+140|0;d=f+8|0;b=ha[L[L[i>>2]+8>>2]](i,c,d,0)|0;ha[L[L[b>>2]+8>>2]](b,c,d,L[a+52>>2],L[a+44>>2]);ha[L[L[b>>2]>>2]](b)|0;ha[L[L[i>>2]+60>>2]](i,b);L[f+172>>2]=e;d:{e:{f:{g:{h:{i:{e=a+60|0;b=L[e+48>>2];c=L[f+164>>2];a=(c<<15^-1)+c|0;a=R(a>>10^a,9);a=a>>6^a;a=(a<<11^-1)+a|0;o=b-1&(a>>16^a);j:{if(o>>>0>=O[e+4>>2]){break j}a=L[L[e+12>>2]+(o<<2)>>2];if((a|0)==-1){break j}d=L[e+32>>2];i=L[e+72>>2];while(1){g=a<<2;if((c|0)==L[g+i>>2]){break i}a=L[d+g>>2];if((a|0)!=-1){continue}break}}E=L[e+44>>2];a=E;k:{if((b|0)!=(a|0)){break k}a=b;n=a?a<<1:1;if((a|0)>=(n|0)){break k}l:{if(!n){d=0;c=b;break l}L[8513]=L[8513]+1;d=ha[L[6798]](n<<3,16)|0;c=L[e+44>>2]}m:{if((c|0)<=0){break m}i=0;a=0;if(c>>>0>=4){t=c&-4;g=0;while(1){h=a<<3;m=h+d|0;q=h+L[e+52>>2]|0;D=L[q+4>>2];L[m>>2]=L[q>>2];L[m+4>>2]=D;m=h|8;q=m+d|0;m=m+L[e+52>>2]|0;D=L[m+4>>2];L[q>>2]=L[m>>2];L[q+4>>2]=D;m=h|16;q=m+d|0;m=m+L[e+52>>2]|0;D=L[m+4>>2];L[q>>2]=L[m>>2];L[q+4>>2]=D;h=h|24;m=h+d|0;h=h+L[e+52>>2]|0;q=L[h+4>>2];L[m>>2]=L[h>>2];L[m+4>>2]=q;a=a+4|0;g=g+4|0;if((t|0)!=(g|0)){continue}break}}c=c&3;if(!c){break m}while(1){g=a<<3;h=g+d|0;g=g+L[e+52>>2]|0;t=L[g+4>>2];L[h>>2]=L[g>>2];L[h+4>>2]=t;a=a+1|0;i=i+1|0;if((c|0)!=(i|0)){continue}break}}a=L[e+52>>2];if(!(a?!a|!M[e+56|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[e+52>>2]=d;J[e+56|0]=1;L[e+48>>2]=n;a=L[e+44>>2]}c=L[f+172>>2];a=L[e+52>>2]+(a<<3)|0;L[a>>2]=L[f+168>>2];L[a+4>>2]=c;L[e+44>>2]=L[e+44>>2]+1;i=L[e- -64>>2];if((i|0)!=L[e+68>>2]){break e}n=i?i<<1:1;if((n|0)<=(i|0)){break e}n:{if(!n){d=0;break n}L[8513]=L[8513]+1;d=ha[L[6798]](n<<2,16)|0;i=L[e+64>>2]}c=L[e+72>>2];if((i|0)<=0){break h}g=0;a=0;if(i>>>0>=4){m=i&-4;t=0;while(1){h=a<<2;L[h+d>>2]=L[c+h>>2];q=h|4;L[q+d>>2]=L[c+q>>2];q=h|8;L[q+d>>2]=L[c+q>>2];h=h|12;L[h+d>>2]=L[c+h>>2];a=a+4|0;t=t+4|0;if((m|0)!=(t|0)){continue}break}}i=i&3;if(!i){break g}while(1){h=a<<2;L[h+d>>2]=L[c+h>>2];a=a+1|0;g=g+1|0;if((i|0)!=(g|0)){continue}break}break g}b=L[f+172>>2];a=L[e+52>>2]+(a<<3)|0;L[a>>2]=L[f+168>>2];L[a+4>>2]=b;break d}if(!c){break f}}if(c?M[e+76|0]:0){L[8514]=L[8514]+1;ha[L[6799]](c)}i=L[e+64>>2]}L[e+72>>2]=d;L[e+68>>2]=n;J[e+76|0]=1}L[L[e+72>>2]+(i<<2)>>2]=L[f+164>>2];L[e+64>>2]=L[e+64>>2]+1;if((b|0)>2]){d=0;i=0;n=0;o=0;b=L[e+4>>2];g=L[e+48>>2];o:{if((b|0)>=(g|0)){break o}p:{if((g|0)<=L[e+8>>2]){d=L[e+12>>2];break p}if(g){L[8513]=L[8513]+1;d=ha[L[6798]](g<<2,16)|0;a=L[e+4>>2]}else{a=b}c=L[e+12>>2];q:{r:{if((a|0)>0){if(a>>>0>=4){t=a&-4;while(1){h=i<<2;L[h+d>>2]=L[c+h>>2];m=h|4;L[m+d>>2]=L[c+m>>2];m=h|8;L[m+d>>2]=L[c+m>>2];h=h|12;L[h+d>>2]=L[c+h>>2];i=i+4|0;n=n+4|0;if((t|0)!=(n|0)){continue}break}}a=a&3;if(!a){break r}while(1){h=i<<2;L[h+d>>2]=L[c+h>>2];i=i+1|0;o=o+1|0;if((a|0)!=(o|0)){continue}break}break r}if(c){break r}break q}if(c?M[e+16|0]:0){L[8514]=L[8514]+1;ha[L[6799]](c)}}L[e+12>>2]=d;J[e+16|0]=1;L[e+8>>2]=g}a=b<<2;t=g<<2;pa(a+d|0,0,t-a|0);L[e+4>>2]=g;c=L[e+24>>2];if((c|0)<(g|0)){s:{if((g|0)<=L[e+28>>2]){d=L[e+32>>2];break s}t:{if(!g){d=0;a=c;break t}L[8513]=L[8513]+1;d=ha[L[6798]](t,16)|0;a=L[e+24>>2]}h=L[e+32>>2];u:{if((a|0)>0){o=0;i=0;if(a>>>0>=4){q=a&-4;n=0;while(1){m=i<<2;L[m+d>>2]=L[h+m>>2];D=m|4;L[D+d>>2]=L[h+D>>2];D=m|8;L[D+d>>2]=L[h+D>>2];m=m|12;L[m+d>>2]=L[h+m>>2];i=i+4|0;n=n+4|0;if((q|0)!=(n|0)){continue}break}}a=a&3;if(!a){break u}while(1){n=i<<2;L[n+d>>2]=L[h+n>>2];i=i+1|0;o=o+1|0;if((a|0)!=(o|0)){continue}break}break u}if(h){break u}L[e+32>>2]=d;L[e+28>>2]=g;J[e+36|0]=1;break s}if(h?M[e+36|0]:0){L[8514]=L[8514]+1;ha[L[6799]](h)}L[e+32>>2]=d;J[e+36|0]=1;L[e+28>>2]=g}a=c<<2;pa(a+d|0,0,t-a|0)}L[e+24>>2]=g;if((g|0)>0){pa(L[e+12>>2],255,t);pa(L[e+32>>2],255,t)}if((b|0)<=0){break o}c=L[e+32>>2];d=L[e+72>>2];g=L[e+12>>2];i=0;while(1){o=i<<2;a=L[o+d>>2];a=(a<<15^-1)+a|0;a=R(a>>10^a,9);a=a>>6^a;a=(a<<11^-1)+a|0;a=g+((L[e+48>>2]-1&(a>>16^a))<<2)|0;L[c+o>>2]=L[a>>2];L[a>>2]=i;i=i+1|0;if((b|0)!=(i|0)){continue}break}}a=L[f+164>>2];a=(a<<15^-1)+a|0;a=R(a>>10^a,9);a=a>>6^a;a=(a<<11^-1)+a|0;o=L[e+48>>2]-1&(a>>16^a)}a=L[e+12>>2]+(o<<2)|0;L[L[e+32>>2]+(E<<2)>>2]=L[a>>2];L[a>>2]=E}}fa=f+176|0}function Cg(a,b,c){var d=S(0),e=0,f=0,g=S(0),h=S(0),i=S(0),j=S(0),k=0,l=0,m=0,n=S(0),o=S(0),p=S(0),q=S(0),r=S(0),s=S(0),t=S(0),u=0,v=0,w=0,x=S(0),y=S(0),z=S(0),A=S(0),B=S(0),C=S(0),D=S(0),E=S(0),F=S(0),G=S(0),H=S(0),I=S(0),J=S(0),K=S(0),M=0,N=S(0),O=S(0),Q=S(0),T=S(0),U=0,V=0,W=0,X=0,Y=S(0),Z=S(0),$=0,aa=0;e=fa-96|0;fa=e;L[a+376>>2]=0;L[a+364>>2]=4;L[a+368>>2]=0;k=a+316|0;L[a+360>>2]=k;L[a+356>>2]=a+284;L[a+352>>2]=a+252;L[a+348>>2]=a+220;f=L[b+4>>2];L[a>>2]=L[b>>2];L[a+4>>2]=f;f=L[b+20>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=f;f=L[b+12>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=f;f=L[b+36>>2];L[a+32>>2]=L[b+32>>2];L[a+36>>2]=f;f=L[b+28>>2];L[a+24>>2]=L[b+24>>2];L[a+28>>2]=f;f=L[b+52>>2];L[a+48>>2]=L[b+48>>2];L[a+52>>2]=f;f=L[b+44>>2];L[a+40>>2]=L[b+40>>2];L[a+44>>2]=f;l=b- -64|0;f=L[l+4>>2];w=a- -64|0;L[w>>2]=L[l>>2];L[w+4>>2]=f;f=L[b+60>>2];L[a+56>>2]=L[b+56>>2];L[a+60>>2]=f;f=L[b+84>>2];L[a+80>>2]=L[b+80>>2];L[a+84>>2]=f;f=L[b+76>>2];L[a+72>>2]=L[b+72>>2];L[a+76>>2]=f;f=L[b+100>>2];L[a+96>>2]=L[b+96>>2];L[a+100>>2]=f;f=L[b+92>>2];L[a+88>>2]=L[b+88>>2];L[a+92>>2]=f;f=L[b+108>>2];L[a+104>>2]=L[b+104>>2];L[a+108>>2]=f;f=L[b+116>>2];L[a+112>>2]=L[b+112>>2];L[a+116>>2]=f;f=L[b+124>>2];b=L[b+120>>2];L[a+144>>2]=0;L[a+180>>2]=0;L[a+120>>2]=b;L[a+124>>2]=f;b=L[c+4>>2];L[a+128>>2]=L[c>>2];L[a+132>>2]=b;b=L[c+12>>2];L[a+136>>2]=L[c+8>>2];L[a+140>>2]=b;L[a+364>>2]=3;L[a+164>>2]=0;L[a+328>>2]=0;L[a+180>>2]=1;L[a+148>>2]=k;h=P[a+136>>2];i=P[a+128>>2];d=P[a+132>>2];g=S(S(h*h)+S(S(i*i)+S(d*d)));b=g>S(0);h=b?S(-h):S(0);i=b?S(-i):S(1);d=b?S(-d):S(0);j=S(S(1)/S(_(S(S(h*h)+S(S(i*i)+S(d*d))))));P[a+324>>2]=h*j;P[a+320>>2]=d*j;P[k>>2]=i*j;Xa(e+16|0,a,k);b=L[e+28>>2];L[a+340>>2]=L[e+24>>2];L[a+344>>2]=b;b=L[e+20>>2];L[a+332>>2]=L[e+16>>2];L[a+336>>2]=b;L[a+164>>2]=1065353216;c=L[a+148>>2];b=L[c+20>>2];L[a+128>>2]=L[c+16>>2];L[a+132>>2]=b;b=L[c+28>>2];L[a+136>>2]=L[c+24>>2];L[a+140>>2]=b;b=L[c+28>>2];L[e+72>>2]=L[c+24>>2];L[e+76>>2]=b;b=L[c+20>>2];L[e+64>>2]=L[c+16>>2];L[e+68>>2]=b;b=L[c+28>>2];L[e+56>>2]=L[c+24>>2];L[e+60>>2]=b;b=L[c+20>>2];L[e+48>>2]=L[c+16>>2];L[e+52>>2]=b;b=L[c+28>>2];L[e+40>>2]=L[c+24>>2];L[e+44>>2]=b;b=L[c+20>>2];L[e+32>>2]=L[c+16>>2];L[e+36>>2]=b;b=L[c+28>>2];L[e+24>>2]=L[c+24>>2];L[e+28>>2]=b;b=L[c+20>>2];L[e+16>>2]=L[c+16>>2];L[e+20>>2]=b;d=P[a+136>>2];n=P[a+132>>2];j=P[a+128>>2];u=L[a+368>>2];W=a+148|0;while(1){a:{b:{o=S(_(S(S(d*d)+S(S(j*j)+S(n*n)))));c:{if(o>2]=1;break c}f=R(u,36);w=f+a|0;c=L[w+180>>2];l=c<<2;L[(l+w|0)+164>>2]=0;b=L[a+364>>2]-1|0;L[a+364>>2]=b;v=f+W|0;f=L[((b<<2)+a|0)+348>>2];L[l+v>>2]=f;L[w+180>>2]=c+1;L[f+12>>2]=0;i=S(S(1)/o);P[f+8>>2]=i*S(-d);P[f+4>>2]=i*S(-n);P[f>>2]=i*S(-j);Xa(e+80|0,a,f);b=L[e+92>>2];L[f+24>>2]=L[e+88>>2];L[f+28>>2]=b;b=L[e+84>>2];L[f+16>>2]=L[e+80>>2];L[f+20>>2]=b;d:{f=L[w+180>>2];l=L[((f<<2)+v|0)-4>>2];j=P[l+24>>2];d=S(j-P[e+24>>2]);s=S(d*d);h=P[l+16>>2];d=S(h-P[e+16>>2]);p=S(d*d);i=P[l+20>>2];d=S(i-P[e+20>>2]);if(S(s+S(p+S(d*d)))>2]);s=S(d*d);d=S(h-P[e+32>>2]);p=S(d*d);d=S(i-P[e+36>>2]);if(S(s+S(p+S(d*d)))>2]);s=S(d*d);d=S(h-P[e+48>>2]);p=S(d*d);d=S(i-P[e+52>>2]);if(S(s+S(p+S(d*d)))>2]);s=S(d*d);d=S(h-P[e+64>>2]);p=S(d*d);d=S(i-P[e+68>>2]);if(S(s+S(p+S(d*d)))>2];X=X+1&3;c=(e+16|0)+(X<<4)|0;L[c+8>>2]=L[l+24>>2];L[c+12>>2]=b;b=L[l+20>>2];L[c>>2]=L[l+16>>2];L[c+4>>2]=b;d=S(S(S(P[a+136>>2]*j)+S(S(P[a+128>>2]*h)+S(P[a+132>>2]*i)))/o);N=d>N?d:N;if(S(S(o*S(-9999999747378752e-20))+S(o-N))<=S(0)){u=L[a+368>>2];c=R(u,36)+a|0;b=L[c+180>>2]-1|0;L[c+180>>2]=b;c=L[(c+(b<<2)|0)+148>>2];b=L[a+364>>2];L[a+364>>2]=b+1;L[((b<<2)+a|0)+348>>2]=c;break c}L[e+12>>2]=0;e:{f:{g:{switch(f-2|0){case 0:c=L[v+4>>2];h=P[c+24>>2];b=L[v>>2];x=P[b+24>>2];n=S(h-x);i=P[c+16>>2];q=P[b+16>>2];o=S(i-q);g=P[c+20>>2];r=P[b+20>>2];j=S(g-r);d=S(S(n*n)+S(S(o*o)+S(j*j)));if(!(d>S(0))){break e}t=S(S(-S(S(x*n)+S(S(q*o)+S(r*j))))/d);if(t>=S(1)){L[e+12>>2]=2;L[e+80>>2]=0;L[e+84>>2]=1065353216;g=S(S(h*h)+S(S(i*i)+S(g*g)));break f}if(t<=S(0)){L[e+12>>2]=1;L[e+80>>2]=1065353216;L[e+84>>2]=0;g=S(S(x*x)+S(S(q*q)+S(r*r)));break f}L[e+12>>2]=3;P[e+84>>2]=t;P[e+80>>2]=S(1)-t;d=S(x+S(n*t));p=S(d*d);d=S(q+S(o*t));g=S(d*d);d=S(r+S(j*t));g=S(p+S(g+S(d*d)));break f;case 1:g=Ke(L[v>>2]+16|0,L[v+4>>2]+16|0,L[v+8>>2]+16|0,e+80|0,e+12|0);break f;case 2:break g;default:break f}}m=fa-32|0;fa=m;d=S(-1);l=L[v+4>>2]+16|0;s=P[l+4>>2];k=L[v+12>>2]+16|0;C=P[k+4>>2];D=S(s-C);f=L[v>>2]+16|0;p=P[f+8>>2];E=P[k+8>>2];F=S(p-E);Y=S(D*S(-F));c=L[v+8>>2]+16|0;i=P[c>>2];G=P[k>>2];z=S(i-G);O=P[f>>2];H=S(O-G);Z=S(H*D);t=P[c+8>>2];A=S(t-E);h=P[l>>2];I=S(h-G);Q=P[f+4>>2];J=S(Q-C);x=S(I*S(-J));T=P[l+8>>2];K=S(T-E);q=S(K*S(-H));g=P[c+4>>2];B=S(g-C);r=S(J*K);n=S(F*I);y=S(S(Y*z)+S(S(Z*A)+S(S(x*A)+S(S(q*B)+S(S(r*z)+S(n*B))))));h:{if(!(y>S(0)|y>2]=0;L[m+16>>2]=0;L[m+20>>2]=0;L[m+12>>2]=0;if(S(y*S(S(E*S(Z+x))+S(S(G*S(r+Y))+S(C*S(n+q)))))>S(0)){d=Ke(f,l,k,m+16|0,m+12|0);b=L[m+12>>2];L[e+12>>2]=b&3|b<<1&8;P[e+80>>2]=P[m+16>>2];g=P[m+20>>2];L[e+88>>2]=0;P[e+84>>2]=g;P[e+92>>2]=P[m+24>>2]}i:{if(!(S(y*S(S(P[k+8>>2]*S(S(I*B)-S(z*D)))+S(S(P[k>>2]*S(S(D*A)-S(B*K)))+S(P[k+4>>2]*S(S(K*z)-S(A*I))))))>S(0))){break i}g=Ke(l,c,k,m+16|0,m+12|0);if(!(d