// This is ammo.js, a port of Bullet Physics to JavaScript. zlib licensed. var Ammo = (() => { var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; return ( function(Ammo = {}) { function aa(a,c){return Object.prototype.hasOwnProperty.call(a,c)}var ba="function"==typeof Object.defineProperties?Object.defineProperty:function(a,c,d){if(a==Array.prototype||a==Object.prototype)return a;a[c]=d.value;return a};function da(a){a=["object"==typeof globalThis&&globalThis,a,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var c=0;c=m}}); function ia(a){var c=0;return function(){return c=0;--c){h[48+c]=52+c;h[65+c]=c;h[97+c]=26+c}h[43]=62;h[47]=63;function n(o,p,q){var i,j,c=0,k=p,l=q.length,m=p+(l*3>>2)-(q[l-2]=="=")-(q[l-1]=="=");for(;c>4;if(k>2;if(k>2];if(f){ha[L[L[f>>2]>>2]](f)|0;f=L[a+52>>2];if(f){L[8514]=L[8514]+1;ha[L[6799]](f)}}L[8513]=L[8513]+1;f=ha[L[6798]](132,16)|0;J[f+20|0]=1;L[f>>2]=15788;L[f+16>>2]=0;J[f+40|0]=1;L[f+8>>2]=0;L[f+12>>2]=0;L[f+36>>2]=0;J[f+60|0]=1;L[f+28>>2]=0;L[f+32>>2]=0;L[f+56>>2]=0;L[f+48>>2]=0;L[f+52>>2]=0;L[a+52>>2]=f;L[d+184>>2]=0;L[d+176>>2]=0;L[d+180>>2]=0;J[d+188|0]=1;f=0;if((ha[L[L[a>>2]+96>>2]](a)|0)>0){t=L[d+176>>2];p=t-1|0;f=L[d+184>>2];e=M[d+188|0];g=L[d+180>>2];while(1){a:{if((g|0)!=(t|0)){break a}o=t?t<<1:1;if((o|0)<=(t|0)){break a}if(o){L[8513]=L[8513]+1;f=ha[L[6798]](o<<4,16)|0}else{f=0}b:{if((t|0)<=0){break b}r=0;g=0;if(j+p>>>0>=3){h=t&-4;v=0;while(1){l=g<<4;q=l+f|0;n=c+l|0;i=L[n+4>>2];L[q>>2]=L[n>>2];L[q+4>>2]=i;i=L[n+12>>2];L[q+8>>2]=L[n+8>>2];L[q+12>>2]=i;i=l|16;q=i+f|0;n=c+i|0;i=L[n+12>>2];L[q+8>>2]=L[n+8>>2];L[q+12>>2]=i;i=L[n+4>>2];L[q>>2]=L[n>>2];L[q+4>>2]=i;i=l|32;q=i+f|0;n=c+i|0;i=L[n+12>>2];L[q+8>>2]=L[n+8>>2];L[q+12>>2]=i;i=L[n+4>>2];L[q>>2]=L[n>>2];L[q+4>>2]=i;i=l|48;q=i+f|0;n=c+i|0;i=L[n+12>>2];L[q+8>>2]=L[n+8>>2];L[q+12>>2]=i;i=L[n+4>>2];L[q>>2]=L[n>>2];L[q+4>>2]=i;g=g+4|0;v=v+4|0;if((h|0)!=(v|0)){continue}break}}h=t&3;if(!h){break b}while(1){i=g<<4;q=i+f|0;n=c+i|0;i=L[n+4>>2];L[q>>2]=L[n>>2];L[q+4>>2]=i;i=L[n+12>>2];L[q+8>>2]=L[n+8>>2];L[q+12>>2]=i;g=g+1|0;r=r+1|0;if((h|0)!=(r|0)){continue}break}}if(!(c?!c|!(e&255):1)){L[8514]=L[8514]+1;ha[L[6799]](c)}e=1;g=o}ha[L[L[a>>2]+108>>2]](a,j,(t<<4)+f|0);t=t+1|0;c=f;j=j+1|0;if((ha[L[L[a>>2]+96>>2]](a)|0)>(j|0)){continue}break}J[d+188|0]=e;L[d+180>>2]=g;L[d+176>>2]=t;L[d+184>>2]=f}J[d+148|0]=1;L[d+144>>2]=0;J[d+168|0]=1;L[d+136>>2]=0;L[d+140>>2]=0;L[d+164>>2]=0;L[d+156>>2]=0;L[d+160>>2]=0;L[d+124>>2]=0;J[d+128|0]=1;L[d+116>>2]=0;L[d+120>>2]=0;c:{d:{if(b){t=0;L[d+28>>2]=0;J[d+32|0]=1;L[d+20>>2]=0;L[d+24>>2]=0;c=0;x=L[d+176>>2];if((x|0)>0){while(1){b=c;c=c+1|0;if((x|0)>(c|0)){z=L[d+184>>2]+(b<<4)|0;b=c;while(1){f=b;b=b+1|0;if((x|0)>(b|0)){A=L[d+184>>2]+(f<<4)|0;f=b;while(1){K=P[z>>2];w=S(P[A>>2]-K);g=L[d+184>>2];j=g+(f<<4)|0;N=P[z+4>>2];y=S(P[j+4>>2]-N);u=S(P[j>>2]-K);m=S(P[A+4>>2]-N);C=S(S(w*y)-S(u*m));H=P[z+8>>2];s=S(P[j+8>>2]-H);B=S(m*s);m=S(P[A+8>>2]-H);y=S(B-S(y*m));u=S(S(m*u)-S(s*w));s=S(S(C*C)+S(S(y*y)+S(u*u)));p=s>S(9999999747378752e-20);e:{if(!p){break e}m=S(S(1)/S(_(s)));D=S(C*m);F=S(u*m);w=S(y*m);i=L[d+20>>2];if((i|0)>0){e=0;o=L[d+28>>2];if(S(S(D*P[o+8>>2])+S(S(w*P[o>>2])+S(F*P[o+4>>2])))>S(.9990000128746033)){break e}while(1){e=e+1|0;if((i|0)!=(e|0)){j=o+(e<<4)|0;if(!(S(S(D*P[j+8>>2])+S(S(w*P[j>>2])+S(F*P[j+4>>2])))>S(.9990000128746033))){continue}}break}if((e|0)<(i|0)){break e}}m=S(S(D*H)+S(S(w*K)+S(F*N)));o=L[d+176>>2];if((o|0)>0){e=0;if(S(S(S(S(D*P[g+8>>2])+S(S(w*P[g>>2])+S(F*P[g+4>>2])))-m)+S(-.009999999776482582))>S(0)){break e}while(1){e=e+1|0;if((o|0)!=(e|0)){j=g+(e<<4)|0;if(!(S(S(S(S(D*P[j+8>>2])+S(S(w*P[j>>2])+S(F*P[j+4>>2])))-m)+S(-.009999999776482582))>S(0))){continue}}break}if((e|0)<(o|0)){break e}}m=S(-m);f:{if(L[d+24>>2]!=(i|0)){break f}k=i?i<<1:1;if((k|0)<=(i|0)){break f}g:{if(!k){j=0;break g}L[8513]=L[8513]+1;j=ha[L[6798]](k<<4,16)|0;i=L[d+20>>2]}h:{if((i|0)<=0){break h}h=i&1;e=0;if((i|0)!=1){q=i&-2;i=0;while(1){n=e<<4;g=n+j|0;l=n+L[d+28>>2]|0;o=L[l+4>>2];L[g>>2]=L[l>>2];L[g+4>>2]=o;o=L[l+12>>2];L[g+8>>2]=L[l+8>>2];L[g+12>>2]=o;o=n|16;g=o+j|0;n=o+L[d+28>>2]|0;o=L[n+4>>2];L[g>>2]=L[n>>2];L[g+4>>2]=o;o=L[n+12>>2];L[g+8>>2]=L[n+8>>2];L[g+12>>2]=o;e=e+2|0;i=i+2|0;if((q|0)!=(i|0)){continue}break}}if(!h){break h}e=e<<4;o=e+j|0;i=e+L[d+28>>2]|0;e=L[i+4>>2];L[o>>2]=L[i>>2];L[o+4>>2]=e;e=L[i+12>>2];L[o+8>>2]=L[i+8>>2];L[o+12>>2]=e}e=L[d+28>>2];if(!(e?!e|!M[d+32|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](e)}L[d+28>>2]=j;J[d+32|0]=1;L[d+24>>2]=k;i=L[d+20>>2]}j=L[d+28>>2]+(i<<4)|0;P[j+12>>2]=m;P[j+8>>2]=D;P[j+4>>2]=F;P[j>>2]=w;L[d+20>>2]=L[d+20>>2]+1}i:{if(!p){break i}m=S(S(1)/S(_(s)));w=S(m*S(-C));u=S(m*S(-u));s=S(m*S(-y));i=L[d+20>>2];if((i|0)>0){e=0;o=L[d+28>>2];if(S(S(w*P[o+8>>2])+S(S(s*P[o>>2])+S(u*P[o+4>>2])))>S(.9990000128746033)){break i}while(1){e=e+1|0;if((i|0)!=(e|0)){j=o+(e<<4)|0;if(!(S(S(w*P[j+8>>2])+S(S(s*P[j>>2])+S(u*P[j+4>>2])))>S(.9990000128746033))){continue}}break}if((e|0)<(i|0)){break i}}m=S(S(w*P[z+8>>2])+S(S(s*P[z>>2])+S(u*P[z+4>>2])));o=L[d+176>>2];if((o|0)>0){e=0;g=L[d+184>>2];if(S(S(S(S(w*P[g+8>>2])+S(S(s*P[g>>2])+S(u*P[g+4>>2])))-m)+S(-.009999999776482582))>S(0)){break i}while(1){e=e+1|0;if((o|0)!=(e|0)){j=g+(e<<4)|0;if(!(S(S(S(S(w*P[j+8>>2])+S(S(s*P[j>>2])+S(u*P[j+4>>2])))-m)+S(-.009999999776482582))>S(0))){continue}}break}if((e|0)<(o|0)){break i}}m=S(-m);j:{if(L[d+24>>2]!=(i|0)){break j}l=i?i<<1:1;if((l|0)<=(i|0)){break j}k:{if(!l){j=0;break k}L[8513]=L[8513]+1;j=ha[L[6798]](l<<4,16)|0;i=L[d+20>>2]}l:{if((i|0)<=0){break l}h=i&1;e=0;if((i|0)!=1){q=i&-2;i=0;while(1){p=e<<4;g=p+j|0;n=p+L[d+28>>2]|0;o=L[n+4>>2];L[g>>2]=L[n>>2];L[g+4>>2]=o;o=L[n+12>>2];L[g+8>>2]=L[n+8>>2];L[g+12>>2]=o;o=p|16;g=o+j|0;p=o+L[d+28>>2]|0;o=L[p+4>>2];L[g>>2]=L[p>>2];L[g+4>>2]=o;o=L[p+12>>2];L[g+8>>2]=L[p+8>>2];L[g+12>>2]=o;e=e+2|0;i=i+2|0;if((q|0)!=(i|0)){continue}break}}if(!h){break l}e=e<<4;o=e+j|0;i=e+L[d+28>>2]|0;e=L[i+4>>2];L[o>>2]=L[i>>2];L[o+4>>2]=e;e=L[i+12>>2];L[o+8>>2]=L[i+8>>2];L[o+12>>2]=e}e=L[d+28>>2];if(!(e?!e|!M[d+32|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](e)}L[d+28>>2]=j;J[d+32|0]=1;L[d+24>>2]=l;i=L[d+20>>2]}j=L[d+28>>2]+(i<<4)|0;P[j+12>>2]=m;P[j+8>>2]=w;P[j+4>>2]=u;P[j>>2]=s;L[d+20>>2]=L[d+20>>2]+1}f=f+1|0;if((x|0)>(f|0)){continue}break}}if((b|0)!=(x|0)){continue}break}}if((c|0)!=(x|0)){continue}break}}L[d+104>>2]=0;J[d+108|0]=1;L[d+96>>2]=0;L[d+100>>2]=0;if(L[d+20>>2]<=0){break d}while(1){b=L[d+28>>2]+(t<<4)|0;L[d+80>>2]=L[b+8>>2];c=L[b+4>>2];L[d+72>>2]=L[b>>2];L[d+76>>2]=c;m=S(P[b+12>>2]-S(ha[L[L[a>>2]+48>>2]](a)));f=L[d+96>>2];m:{if((f|0)!=L[d+100>>2]){break m}h=f?f<<1:1;if((h|0)<=(f|0)){break m}n:{if(!h){c=0;break n}L[8513]=L[8513]+1;c=ha[L[6798]](h<<4,16)|0;f=L[d+96>>2]}o:{if((f|0)<=0){break o}g=0;if((f|0)!=1){o=f&-2;e=0;while(1){i=g<<4;j=i+c|0;q=i+L[d+104>>2]|0;b=L[q+4>>2];L[j>>2]=L[q>>2];L[j+4>>2]=b;b=L[q+12>>2];L[j+8>>2]=L[q+8>>2];L[j+12>>2]=b;b=i|16;j=b+c|0;i=b+L[d+104>>2]|0;b=L[i+4>>2];L[j>>2]=L[i>>2];L[j+4>>2]=b;b=L[i+12>>2];L[j+8>>2]=L[i+8>>2];L[j+12>>2]=b;g=g+2|0;e=e+2|0;if((o|0)!=(e|0)){continue}break}}if(!(f&1)){break o}b=g<<4;f=b+c|0;j=b+L[d+104>>2]|0;b=L[j+4>>2];L[f>>2]=L[j>>2];L[f+4>>2]=b;b=L[j+12>>2];L[f+8>>2]=L[j+8>>2];L[f+12>>2]=b}b=L[d+104>>2];if(!(b?!b|!M[d+108|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[d+104>>2]=c;J[d+108|0]=1;L[d+100>>2]=h;f=L[d+96>>2]}b=L[d+76>>2];c=L[d+104>>2]+(f<<4)|0;L[c>>2]=L[d+72>>2];L[c+4>>2]=b;b=L[d+80>>2];P[c+12>>2]=m;L[c+8>>2]=b;L[d+96>>2]=L[d+96>>2]+1;t=t+1|0;if((t|0)>2]){continue}break}break d}ag(d+112|0,f,L[d+176>>2]);break c}L[d+84>>2]=0;J[d+88|0]=1;L[d+76>>2]=0;L[d+80>>2]=0;c=0;k=L[d+96>>2];if((k|0)>0){while(1){b=c;c=c+1|0;if((k|0)>(c|0)){l=L[d+104>>2]+(b<<4)|0;b=c;while(1){f=b;b=b+1|0;if((k|0)>(b|0)){n=L[d+104>>2]+(f<<4)|0;f=b;while(1){$=P[n>>2];o=L[d+104>>2];j=o+(f<<4)|0;w=P[j+4>>2];y=P[j>>2];u=P[n+4>>2];B=S(S($*w)-S(y*u));s=P[j+8>>2];m=P[n+8>>2];D=S(S(u*s)-S(w*m));F=S(S(m*y)-S(s*$));p:{if(!(S(S(B*B)+S(S(D*D)+S(F*F)))>S(9999999747378752e-20))){break p}U=P[l+4>>2];X=P[l>>2];C=S(S(y*U)-S(X*w));Y=P[l+8>>2];K=S(S(w*Y)-S(U*s));N=S(S(s*X)-S(Y*y));if(!(S(S(C*C)+S(S(K*K)+S(N*N)))>S(9999999747378752e-20))){break p}s=S(S(X*u)-S($*U));H=S(S(U*m)-S(u*Y));w=S(S(Y*$)-S(m*X));if(!(S(S(s*s)+S(S(H*H)+S(w*w)))>S(9999999747378752e-20))){break p}m=S(S(Y*B)+S(S(X*D)+S(U*F)));if(!(S(T(m))>S(9.999999974752427e-7))){break p}y=S(S(-1)/m);u=P[j+12>>2];U=S(s*u);s=P[l+12>>2];m=P[n+12>>2];C=S(y*S(U+S(S(B*s)+S(C*m))));w=S(y*S(S(w*u)+S(S(F*s)+S(N*m))));m=S(y*S(S(H*u)+S(S(D*s)+S(K*m))));j=L[d+96>>2];if((j|0)>0){i=0;if(S(S(P[o+12>>2]+S(S(P[o+8>>2]*C)+S(S(P[o>>2]*m)+S(w*P[o+4>>2]))))+S(-.009999999776482582))>S(0)){break p}while(1){i=i+1|0;if((j|0)!=(i|0)){e=o+(i<<4)|0;if(!(S(S(P[e+12>>2]+S(S(P[e+8>>2]*C)+S(S(P[e>>2]*m)+S(w*P[e+4>>2]))))+S(-.009999999776482582))>S(0))){continue}}break}if((i|0)<(j|0)){break p}}e=L[d+76>>2];q:{if((e|0)!=L[d+80>>2]){break q}p=e?e<<1:1;if((p|0)<=(e|0)){break q}r:{if(!p){i=0;break r}L[8513]=L[8513]+1;i=ha[L[6798]](p<<4,16)|0;e=L[d+76>>2]}s:{if((e|0)<=0){break s}A=0;if((e|0)!=1){g=e&-2;E=0;while(1){q=A<<4;o=q+i|0;h=q+L[d+84>>2]|0;j=L[h+4>>2];L[o>>2]=L[h>>2];L[o+4>>2]=j;j=L[h+12>>2];L[o+8>>2]=L[h+8>>2];L[o+12>>2]=j;j=q|16;o=j+i|0;q=j+L[d+84>>2]|0;j=L[q+4>>2];L[o>>2]=L[q>>2];L[o+4>>2]=j;j=L[q+12>>2];L[o+8>>2]=L[q+8>>2];L[o+12>>2]=j;A=A+2|0;E=E+2|0;if((g|0)!=(E|0)){continue}break}}if(!(e&1)){break s}j=A<<4;e=j+i|0;o=j+L[d+84>>2]|0;j=L[o+4>>2];L[e>>2]=L[o>>2];L[e+4>>2]=j;j=L[o+12>>2];L[e+8>>2]=L[o+8>>2];L[e+12>>2]=j}j=L[d+84>>2];if(!(j?!j|!M[d+88|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](j)}L[d+84>>2]=i;J[d+88|0]=1;L[d+80>>2]=p;e=L[d+76>>2]}j=L[d+84>>2]+(e<<4)|0;L[j+12>>2]=0;P[j+8>>2]=C;P[j+4>>2]=w;P[j>>2]=m;L[d+76>>2]=L[d+76>>2]+1}f=f+1|0;if((k|0)>(f|0)){continue}break}}if((b|0)!=(k|0)){continue}break}}if((c|0)!=(k|0)){continue}break}}ag(d+112|0,L[d+84>>2],L[d+76>>2]);b=L[d+84>>2];if(!(b?!b|!M[d+88|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[d+104>>2];if(!(b?!b|!M[d+108|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[d+28>>2];if(!b|!M[d+32|0]){break c}if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}t:{u:{o=L[d+156>>2];if((o|0)>=0){if(o){break u}L[d+32>>2]=0;L[d+36>>2]=0;L[d+48>>2]=0;L[d+40>>2]=0;L[d+44>>2]=0;L[d+24>>2]=0;L[d+28>>2]=0;J[d+32|0]=1;L[d+16>>2]=0;L[d+20>>2]=0;L[d+20>>2]=0;E=0;break t}L[d+32>>2]=0;L[d+36>>2]=0;L[d+48>>2]=0;L[d+40>>2]=0;L[d+44>>2]=0;L[d+24>>2]=0;L[d+28>>2]=0;J[d+32|0]=1;L[d+16>>2]=0;L[d+20>>2]=0;L[d+20>>2]=0;f=o;while(1){c=R(f,36);b=L[c+12>>2];if(!(b?!b|!M[c+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[c+12>>2]=0;J[c+16|0]=1;L[c+4>>2]=0;L[c+8>>2]=0;E=0;f=f+1|0;if(f){continue}break}break t}L[8513]=L[8513]+1;Z=ha[L[6798]](o<<4,16)|0;L[d+32>>2]=0;L[d+36>>2]=0;g=0;L[d+48>>2]=0;L[d+40>>2]=0;L[d+44>>2]=0;L[d+24>>2]=0;L[d+28>>2]=0;J[d+32|0]=1;L[d+16>>2]=0;L[d+20>>2]=0;L[d+20>>2]=0;L[8513]=L[8513]+1;E=ha[L[6798]](R(o,36),16)|0;while(1){c=R(g,36)+E|0;Jc(c,d+16|0);b=L[d+48>>2];L[c+28>>2]=L[d+44>>2];L[c+32>>2]=b;b=L[d+40>>2];L[c+20>>2]=L[d+36>>2];L[c+24>>2]=b;g=g+1|0;if((o|0)!=(g|0)){continue}break}}b=L[d+28>>2];if(!(b?!b|!M[d+32|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}h=L[a+52>>2];c=L[h+8>>2];q=L[d+116>>2];if(!((c|0)>=(q|0)|(q|0)<=L[h+12>>2])){v:{if(!q){r=0;break v}L[8513]=L[8513]+1;r=ha[L[6798]](q<<4,16)|0;c=L[h+8>>2]}w:{if((c|0)<=0){break w}f=0;if((c|0)!=1){e=c&-2;v=0;while(1){i=f<<4;j=i+r|0;g=i+L[h+16>>2]|0;b=L[g+4>>2];L[j>>2]=L[g>>2];L[j+4>>2]=b;b=L[g+12>>2];L[j+8>>2]=L[g+8>>2];L[j+12>>2]=b;b=i|16;j=b+r|0;i=b+L[h+16>>2]|0;b=L[i+4>>2];L[j>>2]=L[i>>2];L[j+4>>2]=b;b=L[i+12>>2];L[j+8>>2]=L[i+8>>2];L[j+12>>2]=b;f=f+2|0;v=v+2|0;if((e|0)!=(v|0)){continue}break}}if(!(c&1)){break w}b=f<<4;c=b+r|0;f=b+L[h+16>>2]|0;b=L[f+4>>2];L[c>>2]=L[f>>2];L[c+4>>2]=b;b=L[f+12>>2];L[c+8>>2]=L[f+8>>2];L[c+12>>2]=b}b=L[h+16>>2];if(!(b?!b|!M[h+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[h+16>>2]=r;J[h+20|0]=1;L[h+12>>2]=q}L[h+8>>2]=q;x:{if((q|0)<=0){break x}g=0;if((q|0)!=1){j=q&-2;c=0;while(1){e=g<<4;f=e+L[L[a+52>>2]+16>>2]|0;i=e+L[d+124>>2]|0;b=L[i+4>>2];L[f>>2]=L[i>>2];L[f+4>>2]=b;b=L[i+12>>2];L[f+8>>2]=L[i+8>>2];L[f+12>>2]=b;b=e|16;f=b+L[L[a+52>>2]+16>>2]|0;e=b+L[d+124>>2]|0;b=L[e+4>>2];L[f>>2]=L[e>>2];L[f+4>>2]=b;b=L[e+12>>2];L[f+8>>2]=L[e+8>>2];L[f+12>>2]=b;g=g+2|0;c=c+2|0;if((j|0)!=(c|0)){continue}break}}if(!(q&1)){break x}b=g<<4;c=b+L[L[a+52>>2]+16>>2]|0;f=b+L[d+124>>2]|0;b=L[f+4>>2];L[c>>2]=L[f>>2];L[c+4>>2]=b;b=L[f+12>>2];L[c+8>>2]=L[f+8>>2];L[c+12>>2]=b}y:{z:{A:{B:{if((o|0)<=0){break B}b=0;while(1){k=R(b,36)+E|0;e=L[k+4>>2];j=0;h=L[d+144>>2]+R(L[L[d+164>>2]+(b<<2)>>2],12)|0;t=h;C:{while(1){q=L[(R(L[t+4>>2],12)+t|0)+8>>2];D:{if(L[k+8>>2]!=(e|0)){break D}p=e?e<<1:1;if((p|0)<=(e|0)){break D}E:{if(!p){f=0;break E}L[8513]=L[8513]+1;f=ha[L[6798]](p<<2,16)|0;e=L[k+4>>2]}l=L[k+12>>2];F:{G:{if((e|0)>0){r=0;g=0;if(e>>>0>=4){i=e&-4;v=0;while(1){n=g<<2;L[n+f>>2]=L[l+n>>2];c=n|4;L[c+f>>2]=L[c+l>>2];c=n|8;L[c+f>>2]=L[c+l>>2];c=n|12;L[c+f>>2]=L[c+l>>2];g=g+4|0;v=v+4|0;if((i|0)!=(v|0)){continue}break}}e=e&3;if(!e){break G}while(1){c=g<<2;L[c+f>>2]=L[c+l>>2];g=g+1|0;r=r+1|0;if((e|0)!=(r|0)){continue}break}break G}if(!l){break F}}if(l?M[k+16|0]:0){L[8514]=L[8514]+1;ha[L[6799]](l)}e=L[k+4>>2]}L[k+12>>2]=f;J[k+16|0]=1;L[k+8>>2]=p}L[L[k+12>>2]+(e<<2)>>2]=q;e=L[k+4>>2]+1|0;L[k+4>>2]=e;H:{if((j|0)<=1){c=L[d+124>>2];f=c+(q<<4)|0;H=P[f+8>>2];c=c+(L[t+8>>2]<<4)|0;w=P[c+8>>2];y=P[f>>2];u=P[c>>2];s=P[f+4>>2];m=P[c+4>>2];c=(d+16|0)+(j<<4)|0;L[c+12>>2]=0;w=S(w-H);u=S(u-y);m=S(m-s);s=S(S(1)/S(_(S(S(w*w)+S(S(u*u)+S(m*m))))));P[c+8>>2]=w*s;P[c+4>>2]=m*s;P[c>>2]=u*s;j=j+1|0;c=R(L[t+4>>2],12)+t|0;t=R(L[c>>2],12)+c|0;if((h|0)!=(t|0)){continue}if((j|0)==2){break H}c=(b<<4)+Z|0;L[c>>2]=0;L[c+4>>2]=0;L[c+8>>2]=0;L[c+12>>2]=0;break C}j=2;c=R(L[t+4>>2],12)+t|0;t=R(L[c>>2],12)+c|0;if((h|0)!=(t|0)){continue}}break}N=P[d+20>>2];s=P[d+36>>2];H=P[d+32>>2];w=P[d+24>>2];y=P[d+16>>2];m=P[d+40>>2];c=(b<<4)+Z|0;L[c+12>>2]=0;u=S(S(y*s)-S(H*N));s=S(S(N*m)-S(s*w));m=S(S(w*H)-S(m*y));y=S(S(1)/S(_(S(S(u*u)+S(S(s*s)+S(m*m))))));P[c+8>>2]=u*y;P[c+4>>2]=m*y;m=S(s*y);P[c>>2]=m;P[k+20>>2]=m;P[k+24>>2]=P[c+4>>2];m=P[c+8>>2];L[k+32>>2]=1900671690;P[k+28>>2]=m}f=L[k+4>>2];I:{if((f|0)<=0){B=S(1.0000000150474662e30);break I}j=f&1;c=(b<<4)+Z|0;w=P[c+8>>2];y=P[c+4>>2];u=P[c>>2];q=L[L[a+52>>2]+16>>2];i=L[k+12>>2];J:{if((f|0)==1){B=S(1.0000000150474662e30);g=0;break J}f=f&-2;B=S(1.0000000150474662e30);g=0;r=0;while(1){c=g<<2;e=q+(L[i+(c|4)>>2]<<4)|0;s=S(S(P[e+8>>2]*w)+S(S(P[e>>2]*u)+S(P[e+4>>2]*y)));c=q+(L[c+i>>2]<<4)|0;m=S(S(P[c+8>>2]*w)+S(S(P[c>>2]*u)+S(P[c+4>>2]*y)));m=ms?s:m;g=g+2|0;r=r+2|0;if((f|0)!=(r|0)){continue}break}}if(!j){break I}c=q+(L[i+(g<<2)>>2]<<4)|0;m=S(S(P[c+8>>2]*w)+S(S(P[c>>2]*u)+S(P[c+4>>2]*y)));B=m>2]=-B;b=b+1|0;if((o|0)!=(b|0)){continue}break}e=0;if((o|0)<=0){break B}q=0;c=0;while(1){K:{if((c|0)!=(e|0)){break K}c=e?e<<1:1;if(e>>>0>=c>>>0){c=e;break K}L[8513]=L[8513]+1;b=ha[L[6798]](c<<2,16)|0;L:{M:{if(e){r=0;g=0;if(e>>>0>=4){j=e&2147483644;v=0;while(1){i=g<<2;L[i+b>>2]=L[i+q>>2];f=i|4;L[f+b>>2]=L[f+q>>2];f=i|8;L[f+b>>2]=L[f+q>>2];f=i|12;L[f+b>>2]=L[f+q>>2];g=g+4|0;v=v+4|0;if((j|0)!=(v|0)){continue}break}}j=e&3;if(!j){break M}while(1){f=g<<2;L[f+b>>2]=L[f+q>>2];g=g+1|0;r=r+1|0;if((j|0)!=(r|0)){continue}break}break M}if(q){break M}c=1;break L}if(q){L[8514]=L[8514]+1;ha[L[6799]](q)}}q=b}L[(e<<2)+q>>2]=e;e=e+1|0;if((o|0)!=(e|0)){continue}break}j=o;while(1){b=j-1|0;c=L[(b<<2)+q>>2];L[8513]=L[8513]+1;i=ha[L[6798]](4,16)|0;L[i>>2]=c;N:{O:{if((j|0)<2){j=b;O=1;break O}c=R(c,36)+E|0;u=P[c+20>>2];s=P[c+28>>2];m=P[c+24>>2];g=j-2|0;e=1;j=b;O=1;while(1){b=g;n=L[(b<<2)+q>>2];c=R(n,36)+E|0;if(S(S(s*P[c+28>>2])+S(S(u*P[c+20>>2])+S(m*P[c+24>>2])))>S(.9990000128746033)){P:{Q:{if((e|0)!=(O|0)){break Q}c=e?e<<1:1;if((e|0)>=(c|0)){break Q}if(c){L[8513]=L[8513]+1;f=ha[L[6798]](c<<2,16)|0}else{f=0}R:{if((e|0)>0){r=0;g=0;if(e>>>0>=4){p=e&-4;t=0;while(1){l=g<<2;L[l+f>>2]=L[i+l>>2];h=l|4;L[h+f>>2]=L[h+i>>2];h=l|8;L[h+f>>2]=L[h+i>>2];h=l|12;L[h+f>>2]=L[h+i>>2];g=g+4|0;t=t+4|0;if((p|0)!=(t|0)){continue}break}}h=e&3;if(!h){break R}while(1){e=g<<2;L[e+f>>2]=L[e+i>>2];g=g+1|0;r=r+1|0;if((h|0)!=(r|0)){continue}break}break R}if(!i){break P}}if(i){L[8514]=L[8514]+1;ha[L[6799]](i)}break P}c=e;f=i}L[(O<<2)+f>>2]=n;O=O+1|0;g=0;S:{if((j|0)<=0){break S}while(1){e=(g<<2)+q|0;if((n|0)!=L[e>>2]){g=g+1|0;if((j|0)!=(g|0)){continue}break S}break}if((g|0)>=(j|0)){break S}g=e;j=j-1|0;e=(j<<2)+q|0;L[g>>2]=L[e>>2];L[e>>2]=n}i=f;e=c}g=b-1|0;if((b|0)>0){continue}break}T:{if((O|0)>1){f=0;L[d+104>>2]=0;J[d+108|0]=1;L[d+96>>2]=0;L[d+100>>2]=0;L[d+8>>2]=0;L[d+12>>2]=0;L[d>>2]=0;L[d+4>>2]=0;b=0;while(1){A=R(L[(b<<2)+i>>2],36)+E|0;s=P[A+28>>2];m=P[A+24>>2];P[d>>2]=P[A+20>>2]+P[d>>2];P[d+4>>2]=m+P[d+4>>2];P[d+8>>2]=s+P[d+8>>2];r=L[A+4>>2];if((r|0)>0){c=0;while(1){l=L[L[A+12>>2]+(c<<2)>>2];h=L[L[a+52>>2]+16>>2];U:{if((f|0)>0){g=0;e=L[d+104>>2];while(1){if((l|0)==L[(e+R(g,24)|0)+20>>2]){break U}g=g+1|0;if((g|0)!=(f|0)){continue}break}}g=h+(l<<4)|0;e=L[g+12>>2];L[d+24>>2]=L[g+8>>2];L[d+28>>2]=e;e=L[g+4>>2];L[d+16>>2]=L[g>>2];L[d+20>>2]=e;V:{if(L[d+100>>2]!=(f|0)){break V}n=f?f<<1:1;if((n|0)<=(f|0)){break V}W:{if(!n){r=0;break W}L[8513]=L[8513]+1;r=ha[L[6798]](R(n,24),16)|0;f=L[d+96>>2]}x=L[d+104>>2];X:{if((f|0)<=0){break X}v=0;g=0;if(f>>>0>=4){p=f&-4;t=0;while(1){e=R(g,24);h=e+r|0;k=e+x|0;e=L[k+4>>2];L[h>>2]=L[k>>2];L[h+4>>2]=e;e=L[k+20>>2];L[h+16>>2]=L[k+16>>2];L[h+20>>2]=e;e=L[k+12>>2];L[h+8>>2]=L[k+8>>2];L[h+12>>2]=e;e=R(g|1,24);h=e+r|0;k=e+x|0;e=L[k+20>>2];L[h+16>>2]=L[k+16>>2];L[h+20>>2]=e;e=L[k+12>>2];L[h+8>>2]=L[k+8>>2];L[h+12>>2]=e;e=L[k+4>>2];L[h>>2]=L[k>>2];L[h+4>>2]=e;e=R(g|2,24);h=e+r|0;k=e+x|0;e=L[k+20>>2];L[h+16>>2]=L[k+16>>2];L[h+20>>2]=e;e=L[k+12>>2];L[h+8>>2]=L[k+8>>2];L[h+12>>2]=e;e=L[k+4>>2];L[h>>2]=L[k>>2];L[h+4>>2]=e;e=R(g|3,24);h=e+r|0;k=e+x|0;e=L[k+20>>2];L[h+16>>2]=L[k+16>>2];L[h+20>>2]=e;e=L[k+12>>2];L[h+8>>2]=L[k+8>>2];L[h+12>>2]=e;e=L[k+4>>2];L[h>>2]=L[k>>2];L[h+4>>2]=e;g=g+4|0;t=t+4|0;if((p|0)!=(t|0)){continue}break}}p=f&3;if(!p){break X}while(1){e=R(g,24);h=e+r|0;k=e+x|0;e=L[k+4>>2];L[h>>2]=L[k>>2];L[h+4>>2]=e;e=L[k+20>>2];L[h+16>>2]=L[k+16>>2];L[h+20>>2]=e;e=L[k+12>>2];L[h+8>>2]=L[k+8>>2];L[h+12>>2]=e;g=g+1|0;v=v+1|0;if((p|0)!=(v|0)){continue}break}}if(!(!x|!M[d+108|0])){if(x){L[8514]=L[8514]+1;ha[L[6799]](x)}f=L[d+96>>2]}L[d+104>>2]=r;J[d+108|0]=1;L[d+100>>2]=n}h=L[d+104>>2]+R(f,24)|0;e=h;f=L[d+20>>2];L[e>>2]=L[d+16>>2];L[e+4>>2]=f;g=L[d+28>>2];e=L[d+24>>2];f=L[d+32>>2];L[h+20>>2]=l;L[h+16>>2]=f;L[h+8>>2]=e;L[h+12>>2]=g;f=L[d+96>>2]+1|0;L[d+96>>2]=f;r=L[A+4>>2]}c=c+1|0;if((r|0)>(c|0)){continue}break}}b=b+1|0;if((O|0)!=(b|0)){continue}break}break T}b=(O|0)!=1;O=1;if(b){break N}break O}L[d+28>>2]=0;J[d+32|0]=1;L[d+20>>2]=0;L[d+24>>2]=0;b=R(L[i>>2],36)+E|0;P[d+36>>2]=P[b+20>>2];P[d+40>>2]=P[b+24>>2];P[d+44>>2]=P[b+28>>2];P[d+48>>2]=P[b+32>>2];L[d+84>>2]=0;J[d+88|0]=1;L[d+76>>2]=0;L[d+80>>2]=0;u=P[d+8>>2];s=P[d>>2];m=P[d+4>>2];y=S(S(1)/S(_(S(S(u*u)+S(S(s*s)+S(m*m))))));P[d+8>>2]=u*y;P[d+4>>2]=m*y;P[d>>2]=s*y;x=d+92|0;r=0;g=0;z=fa-32|0;fa=z;u=P[d+8>>2];Y:{if(S(T(u))>S(.7071067690849304)){s=P[d+4>>2];m=S(S(1)/S(_(S(S(s*s)+S(u*u)))));B=S(s*m);D=S(m*S(-u));m=S(0);break Y}u=P[d>>2];s=P[d+4>>2];m=S(S(1)/S(_(S(S(u*u)+S(s*s)))));D=S(u*m);B=S(0);m=S(m*S(-s))}Z:{_:{$:{aa:{f=L[x+4>>2];if((f|0)>=2){while(1){h=L[x+12>>2];e=R(g,24);b=h+e|0;if(S(S(P[b+8>>2]*B)+S(S(P[b>>2]*m)+S(D*P[b+4>>2])))>2]*B)+S(S(P[h>>2]*m)+S(D*P[h+4>>2])))){c=L[h+20>>2];L[z+24>>2]=L[h+16>>2];L[z+28>>2]=c;c=L[h+12>>2];L[z+16>>2]=L[h+8>>2];L[z+20>>2]=c;c=L[h+4>>2];L[z+8>>2]=L[h>>2];L[z+12>>2]=c;c=L[b+4>>2];L[h>>2]=L[b>>2];L[h+4>>2]=c;c=L[b+12>>2];L[h+8>>2]=L[b+8>>2];L[h+12>>2]=c;c=L[b+20>>2];L[h+16>>2]=L[b+16>>2];L[h+20>>2]=c;b=L[z+12>>2];c=e+L[x+12>>2]|0;L[c>>2]=L[z+8>>2];L[c+4>>2]=b;b=L[z+28>>2];L[c+16>>2]=L[z+24>>2];L[c+20>>2]=b;b=L[z+20>>2];L[c+8>>2]=L[z+16>>2];L[c+12>>2]=b;f=L[x+4>>2]}g=g+1|0;if((g|0)<(f|0)){continue}break}e=L[x+12>>2];L[e+16>>2]=-246811958;if((f|0)>=2){N=P[e+8>>2];H=P[e+4>>2];w=P[e>>2];y=S(-D);u=S(-m);s=S(-B);c=1;while(1){b=e+R(c,24)|0;F=S(P[b+4>>2]-H);C=S(P[b>>2]-w);K=S(P[b+8>>2]-N);P[b+16>>2]=S(S(S(S(m*F)+S(C*y))*P[d+8>>2])+S(S(S(S(D*K)+S(F*s))*P[d>>2])+S(P[d+4>>2]*S(S(B*C)+S(K*u)))))/S(_(S(S(K*K)+S(S(C*C)+S(F*F)))));c=c+1|0;if((f|0)!=(c|0)){continue}break}}b=L[e+12>>2];L[z+16>>2]=L[e+8>>2];L[z+20>>2]=b;b=L[e+4>>2];L[z+8>>2]=L[e>>2];L[z+12>>2]=b;cm(x,z+8|0,1,f-1|0);e=L[x+12>>2];c=L[d+76>>2];if((c|0)!=L[d+80>>2]){break _}l=c?c<<1:1;if((l|0)<=(c|0)){break _}if(l){break aa}f=0;break $}if((f|0)!=1){break Z}c=L[d+76>>2];while(1){e=L[x+12>>2];ba:{if(L[d+80>>2]!=(c|0)){break ba}n=c?c<<1:1;if((n|0)<=(c|0)){break ba}ca:{if(!n){f=0;break ca}L[8513]=L[8513]+1;f=ha[L[6798]](R(n,24),16)|0;c=L[d+76>>2]}da:{if((c|0)<=0){break da}b=0;if((c|0)!=1){p=c&-2;A=0;while(1){g=R(b,24);h=g+f|0;l=g+L[d+84>>2]|0;g=L[l+4>>2];L[h>>2]=L[l>>2];L[h+4>>2]=g;g=L[l+20>>2];L[h+16>>2]=L[l+16>>2];L[h+20>>2]=g;g=L[l+12>>2];L[h+8>>2]=L[l+8>>2];L[h+12>>2]=g;g=R(b|1,24);h=g+f|0;l=g+L[d+84>>2]|0;g=L[l+4>>2];L[h>>2]=L[l>>2];L[h+4>>2]=g;g=L[l+12>>2];L[h+8>>2]=L[l+8>>2];L[h+12>>2]=g;g=L[l+20>>2];L[h+16>>2]=L[l+16>>2];L[h+20>>2]=g;b=b+2|0;A=A+2|0;if((p|0)!=(A|0)){continue}break}}if(!(c&1)){break da}b=R(b,24);c=b+f|0;g=b+L[d+84>>2]|0;b=L[g+4>>2];L[c>>2]=L[g>>2];L[c+4>>2]=b;b=L[g+20>>2];L[c+16>>2]=L[g+16>>2];L[c+20>>2]=b;b=L[g+12>>2];L[c+8>>2]=L[g+8>>2];L[c+12>>2]=b}b=L[d+84>>2];if(!(b?!b|!M[d+88|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[d+84>>2]=f;J[d+88|0]=1;L[d+80>>2]=n;c=L[d+76>>2]}b=L[e+4>>2];c=L[d+84>>2]+R(c,24)|0;L[c>>2]=L[e>>2];L[c+4>>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;c=L[d+76>>2]+1|0;L[d+76>>2]=c;r=r+1|0;if((r|0)>2]){continue}break}break Z}L[8513]=L[8513]+1;f=ha[L[6798]](R(l,24),16)|0;c=L[d+76>>2]}ea:{if((c|0)<=0){break ea}b=0;if((c|0)!=1){n=c&-2;g=0;while(1){h=R(b,24);p=h+f|0;k=h+L[d+84>>2]|0;h=L[k+4>>2];L[p>>2]=L[k>>2];L[p+4>>2]=h;h=L[k+20>>2];L[p+16>>2]=L[k+16>>2];L[p+20>>2]=h;h=L[k+12>>2];L[p+8>>2]=L[k+8>>2];L[p+12>>2]=h;h=R(b|1,24);p=h+f|0;k=h+L[d+84>>2]|0;h=L[k+4>>2];L[p>>2]=L[k>>2];L[p+4>>2]=h;h=L[k+12>>2];L[p+8>>2]=L[k+8>>2];L[p+12>>2]=h;h=L[k+20>>2];L[p+16>>2]=L[k+16>>2];L[p+20>>2]=h;b=b+2|0;g=g+2|0;if((n|0)!=(g|0)){continue}break}}if(!(c&1)){break ea}b=R(b,24);c=b+f|0;g=b+L[d+84>>2]|0;b=L[g+4>>2];L[c>>2]=L[g>>2];L[c+4>>2]=b;b=L[g+20>>2];L[c+16>>2]=L[g+16>>2];L[c+20>>2]=b;b=L[g+12>>2];L[c+8>>2]=L[g+8>>2];L[c+12>>2]=b}b=L[d+84>>2];if(!(b?!b|!M[d+88|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[d+84>>2]=f;J[d+88|0]=1;L[d+80>>2]=l;c=L[d+76>>2]}b=L[e+4>>2];c=L[d+84>>2]+R(c,24)|0;L[c>>2]=L[e>>2];L[c+4>>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;c=L[d+76>>2]+1|0;L[d+76>>2]=c;e=L[x+12>>2];fa:{if(L[d+80>>2]!=(c|0)){break fa}l=c?c<<1:1;if((l|0)<=(c|0)){break fa}ga:{if(!l){f=0;break ga}L[8513]=L[8513]+1;f=ha[L[6798]](R(l,24),16)|0;c=L[d+76>>2]}ha:{if((c|0)<=0){break ha}b=0;if((c|0)!=1){n=c&-2;g=0;while(1){h=R(b,24);p=h+f|0;k=h+L[d+84>>2]|0;h=L[k+4>>2];L[p>>2]=L[k>>2];L[p+4>>2]=h;h=L[k+20>>2];L[p+16>>2]=L[k+16>>2];L[p+20>>2]=h;h=L[k+12>>2];L[p+8>>2]=L[k+8>>2];L[p+12>>2]=h;h=R(b|1,24);p=h+f|0;k=h+L[d+84>>2]|0;h=L[k+4>>2];L[p>>2]=L[k>>2];L[p+4>>2]=h;h=L[k+12>>2];L[p+8>>2]=L[k+8>>2];L[p+12>>2]=h;h=L[k+20>>2];L[p+16>>2]=L[k+16>>2];L[p+20>>2]=h;b=b+2|0;g=g+2|0;if((n|0)!=(g|0)){continue}break}}if(!(c&1)){break ha}b=R(b,24);c=b+f|0;g=b+L[d+84>>2]|0;b=L[g+4>>2];L[c>>2]=L[g>>2];L[c+4>>2]=b;b=L[g+20>>2];L[c+16>>2]=L[g+16>>2];L[c+20>>2]=b;b=L[g+12>>2];L[c+8>>2]=L[g+8>>2];L[c+12>>2]=b}b=L[d+84>>2];if(!(b?!b|!M[d+88|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[d+84>>2]=f;J[d+88|0]=1;L[d+80>>2]=l;c=L[d+76>>2]}b=L[e+28>>2];c=L[d+84>>2]+R(c,24)|0;L[c>>2]=L[e+24>>2];L[c+4>>2]=b;b=L[e+44>>2];L[c+16>>2]=L[e+40>>2];L[c+20>>2]=b;b=L[e+36>>2];L[c+8>>2]=L[e+32>>2];L[c+12>>2]=b;f=L[d+76>>2];b=f+1|0;L[d+76>>2]=b;g=2;c=L[x+4>>2];if((c|0)==2|(f|0)<=0){break Z}while(1){if((b|0)>=2){e=L[x+12>>2]+R(g,24)|0;D=P[e+8>>2];F=P[e+4>>2];C=P[e>>2];K=P[d+8>>2];N=P[d+4>>2];H=P[d>>2];f=L[d+84>>2];ia:{while(1){c=R(b,24)+f|0;h=c-48|0;s=P[h>>2];c=c-24|0;w=S(s-P[c>>2]);m=P[h+4>>2];y=S(m-F);u=S(s-C);m=S(m-P[c+4>>2]);U=S(S(S(w*y)-S(u*m))*K);B=m;m=P[h+8>>2];s=S(m-D);m=S(m-P[c+8>>2]);if(S(U+S(S(S(S(B*s)-S(y*m))*H)+S(N*S(S(m*u)-S(s*w)))))>S(0)){ja:{if(L[d+80>>2]!=(b|0)){break ja}n=b<<1;if((n|0)<=(b|0)){break ja}L[8513]=L[8513]+1;f=ha[L[6798]](R(b,48),16)|0;l=L[d+76>>2];ka:{if((l|0)<=0){break ka}b=0;if((l|0)!=1){p=l&-2;r=0;while(1){c=R(b,24);h=c+f|0;k=c+L[d+84>>2]|0;c=L[k+4>>2];L[h>>2]=L[k>>2];L[h+4>>2]=c;c=L[k+20>>2];L[h+16>>2]=L[k+16>>2];L[h+20>>2]=c;c=L[k+12>>2];L[h+8>>2]=L[k+8>>2];L[h+12>>2]=c;c=R(b|1,24);h=c+f|0;k=c+L[d+84>>2]|0;c=L[k+4>>2];L[h>>2]=L[k>>2];L[h+4>>2]=c;c=L[k+12>>2];L[h+8>>2]=L[k+8>>2];L[h+12>>2]=c;c=L[k+20>>2];L[h+16>>2]=L[k+16>>2];L[h+20>>2]=c;b=b+2|0;r=r+2|0;if((p|0)!=(r|0)){continue}break}}if(!(l&1)){break ka}b=R(b,24);c=b+f|0;h=b+L[d+84>>2]|0;b=L[h+4>>2];L[c>>2]=L[h>>2];L[c+4>>2]=b;b=L[h+20>>2];L[c+16>>2]=L[h+16>>2];L[c+20>>2]=b;b=L[h+12>>2];L[c+8>>2]=L[h+8>>2];L[c+12>>2]=b}b=L[d+84>>2];if(!(b?!b|!M[d+88|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[d+84>>2]=f;J[d+88|0]=1;L[d+80>>2]=n;b=L[d+76>>2]}c=R(b,24)+f|0;b=L[e+4>>2];L[c>>2]=L[e>>2];L[c+4>>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[d+76>>2]+1|0;L[d+76>>2]=b;break ia}c=b-1|0;L[d+76>>2]=c;h=b>>>0<3;b=c;if(!h){continue}break}b=1}c=L[x+4>>2]}g=g+1|0;if((g|0)!=(c|0)){continue}break}}fa=z+32|0;la:{if(L[d+76>>2]<=0){f=L[d+96>>2];break la}t=0;v=L[d+20>>2];while(1){h=R(t,24);e=h+L[d+84>>2]|0;ma:{if(L[d+24>>2]!=(v|0)){break ma}n=v?v<<1:1;if((n|0)<=(v|0)){break ma}na:{if(!n){f=0;break na}L[8513]=L[8513]+1;f=ha[L[6798]](n<<2,16)|0;v=L[d+20>>2]}k=L[d+28>>2];oa:{pa:{if((v|0)>0){p=v&3;r=0;g=0;if(v>>>0>=4){c=v&-4;v=0;while(1){l=g<<2;L[l+f>>2]=L[k+l>>2];b=l|4;L[b+f>>2]=L[b+k>>2];b=l|8;L[b+f>>2]=L[b+k>>2];b=l|12;L[b+f>>2]=L[b+k>>2];g=g+4|0;v=v+4|0;if((c|0)!=(v|0)){continue}break}}if(!p){break pa}while(1){b=g<<2;L[b+f>>2]=L[b+k>>2];g=g+1|0;r=r+1|0;if((p|0)!=(r|0)){continue}break}break pa}if(!k){break oa}}if(k?M[d+32|0]:0){L[8514]=L[8514]+1;ha[L[6799]](k)}v=L[d+20>>2]}L[d+28>>2]=f;J[d+32|0]=1;L[d+24>>2]=n}L[L[d+28>>2]+(v<<2)>>2]=L[e+20>>2];v=L[d+20>>2]+1|0;L[d+20>>2]=v;f=L[d+96>>2];qa:{if((f|0)<=0){break qa}e=L[(h+L[d+84>>2]|0)+20>>2];g=0;c=L[d+104>>2];while(1){b=c+R(g,24)|0;if((e|0)!=L[b+20>>2]){g=g+1|0;if((g|0)!=(f|0)){continue}break qa}break}L[b+20>>2]=-1}t=t+1|0;if((t|0)>2]){continue}break}}ra:{if((f|0)>0){t=0;h=L[d+104>>2];while(1){p=L[(h+R(t,24)|0)+20>>2];sa:{if((p|0)==-1|(o|0)<=0){break sa}c=0;if((O|0)>0){while(1){b=R(c,36)+E|0;g=0;ta:{while(1){if(L[(g<<2)+i>>2]==(c|0)){break ta}g=g+1|0;if((O|0)!=(g|0)){continue}break}e=L[b+4>>2];if((e|0)<=0){break ta}b=L[b+12>>2];g=0;while(1){if((p|0)!=L[b+(g<<2)>>2]){g=g+1|0;if((e|0)!=(g|0)){continue}break ta}break}b=1;break ra}c=c+1|0;if((o|0)!=(c|0)){continue}break sa}}while(1){ua:{b=R(c,36)+E|0;e=L[b+4>>2];if((e|0)<=0){break ua}b=L[b+12>>2];g=0;while(1){if((p|0)!=L[b+(g<<2)>>2]){g=g+1|0;if((e|0)!=(g|0)){continue}break ua}break}b=1;break ra}c=c+1|0;if((o|0)!=(c|0)){continue}break}}t=t+1|0;if((t|0)!=(f|0)){continue}break}}e=L[a+52>>2];f=L[e+28>>2];if((f|0)==L[e+32>>2]){Fh(e+24|0,f?f<<1:1);f=L[e+28>>2]}c=L[e+36>>2]+R(f,36)|0;Jc(c,d+16|0);b=L[d+48>>2];L[c+28>>2]=L[d+44>>2];L[c+32>>2]=b;b=L[d+40>>2];L[c+20>>2]=L[d+36>>2];L[c+24>>2]=b;L[e+28>>2]=L[e+28>>2]+1;b=0}c=L[d+84>>2];if(!(c?!c|!M[d+88|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}c=L[d+28>>2];if(!(c?!c|!M[d+32|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}c=L[d+104>>2];if(!(c?!c|!M[d+108|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}if(!(b&(O|0)>0)){break N}}A=0;while(1){t=0;b=R(L[(A<<2)+i>>2],36)+E|0;Q=L[b+4>>2];va:{if((Q|0)<=0){break va}r=0;L[8513]=L[8513]+1;c=Q<<2;t=ha[L[6798]](c,16)|0;p=pa(t,0,c);h=L[b+12>>2];g=0;if(Q>>>0>=4){f=Q&-4;v=0;while(1){e=g<<2;L[e+p>>2]=L[e+h>>2];c=e|4;L[c+p>>2]=L[c+h>>2];c=e|8;L[c+p>>2]=L[c+h>>2];c=e|12;L[c+p>>2]=L[c+h>>2];g=g+4|0;v=v+4|0;if((f|0)!=(v|0)){continue}break}}f=Q&3;if(!f){break va}while(1){c=g<<2;L[c+p>>2]=L[c+h>>2];g=g+1|0;r=r+1|0;if((f|0)!=(r|0)){continue}break}}f=M[b+24|0]|M[b+25|0]<<8|(M[b+26|0]<<16|M[b+27|0]<<24);c=M[b+20|0]|M[b+21|0]<<8|(M[b+22|0]<<16|M[b+23|0]<<24);J[d+19|0]=c;J[d+20|0]=c>>>8;J[d+21|0]=c>>>16;J[d+22|0]=c>>>24;J[d+23|0]=f;J[d+24|0]=f>>>8;J[d+25|0]=f>>>16;J[d+26|0]=f>>>24;c=M[b+32|0]|M[b+33|0]<<8|(M[b+34|0]<<16|M[b+35|0]<<24);b=M[b+28|0]|M[b+29|0]<<8|(M[b+30|0]<<16|M[b+31|0]<<24);J[d+27|0]=b;J[d+28|0]=b>>>8;J[d+29|0]=b>>>16;J[d+30|0]=b>>>24;J[d+31|0]=c;J[d+32|0]=c>>>8;J[d+33|0]=c>>>16;J[d+34|0]=c>>>24;I=L[a+52>>2];b=L[I+28>>2];wa:{if((b|0)!=L[I+32>>2]){break wa}k=b?b<<1:1;if((k|0)<=(b|0)){break wa}xa:{if(!k){l=0;break xa}L[8513]=L[8513]+1;l=ha[L[6798]](R(k,36),16)|0;b=L[I+28>>2]}ya:{if((b|0)<=0){break ya}e=0;while(1){f=L[I+36>>2];c=R(e,36);G=c+l|0;L[G+12>>2]=0;J[G+16|0]=1;L[G+4>>2]=0;L[G+8>>2]=0;c=c+f|0;V=L[c+4>>2];za:{if((V|0)<=0){L[G+4>>2]=V;break za}L[8513]=L[8513]+1;p=V<<2;z=ha[L[6798]](p,16)|0;W=L[G+12>>2];n=L[G+4>>2];Aa:{Ba:{if((n|0)>0){r=0;g=0;if(n>>>0>=4){h=n&-4;v=0;while(1){x=g<<2;L[x+z>>2]=L[x+W>>2];f=x|4;L[f+z>>2]=L[f+W>>2];f=x|8;L[f+z>>2]=L[f+W>>2];f=x|12;L[f+z>>2]=L[f+W>>2];g=g+4|0;v=v+4|0;if((h|0)!=(v|0)){continue}break}}h=n&3;if(h){while(1){f=g<<2;L[f+z>>2]=L[f+W>>2];g=g+1|0;r=r+1|0;if((h|0)!=(r|0)){continue}break}}if(M[G+16|0]){break Ba}break Aa}if(!W|!M[G+16|0]){break Aa}}if(W){L[8514]=L[8514]+1;ha[L[6799]](W)}}L[G+12>>2]=z;J[G+16|0]=1;L[G+8>>2]=V;r=0;x=pa(z,0,p);L[G+4>>2]=V;n=L[c+12>>2];g=0;if(V>>>0>=4){h=V&-4;v=0;while(1){p=g<<2;L[p+x>>2]=L[n+p>>2];f=p|4;L[f+x>>2]=L[f+n>>2];f=p|8;L[f+x>>2]=L[f+n>>2];f=p|12;L[f+x>>2]=L[f+n>>2];g=g+4|0;v=v+4|0;if((h|0)!=(v|0)){continue}break}}h=V&3;if(!h){break za}while(1){f=g<<2;L[f+x>>2]=L[f+n>>2];g=g+1|0;r=r+1|0;if((h|0)!=(r|0)){continue}break}}f=L[c+24>>2];L[G+20>>2]=L[c+20>>2];L[G+24>>2]=f;f=L[c+32>>2];L[G+28>>2]=L[c+28>>2];L[G+32>>2]=f;e=e+1|0;if((e|0)!=(b|0)){continue}break}f=0;b=L[I+28>>2];if((b|0)<=0){break ya}while(1){e=L[I+36>>2]+R(f,36)|0;c=L[e+12>>2];if(!(c?!c|!M[e+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[e+12>>2]=0;J[e+16|0]=1;L[e+4>>2]=0;L[e+8>>2]=0;f=f+1|0;if((b|0)!=(f|0)){continue}break}}b=L[I+36>>2];if(!(b?!b|!M[I+40|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[I+36>>2]=l;J[I+40|0]=1;L[I+32>>2]=k;b=L[I+28>>2]}l=L[I+36>>2]+R(b,36)|0;L[l+12>>2]=0;J[l+16|0]=1;L[l+4>>2]=0;L[l+8>>2]=0;Ca:{if((Q|0)<=0){L[l+4>>2]=Q;break Ca}L[8513]=L[8513]+1;f=Q<<2;p=ha[L[6798]](f,16)|0;n=L[l+12>>2];e=L[l+4>>2];Da:{Ea:{if((e|0)>0){r=0;g=0;if(e>>>0>=4){c=e&-4;v=0;while(1){h=g<<2;L[h+p>>2]=L[h+n>>2];b=h|4;L[b+p>>2]=L[b+n>>2];b=h|8;L[b+p>>2]=L[b+n>>2];b=h|12;L[b+p>>2]=L[b+n>>2];g=g+4|0;v=v+4|0;if((c|0)!=(v|0)){continue}break}}c=e&3;if(c){while(1){b=g<<2;L[b+p>>2]=L[b+n>>2];g=g+1|0;r=r+1|0;if((c|0)!=(r|0)){continue}break}}if(M[l+16|0]){break Ea}break Da}if(!n|!M[l+16|0]){break Da}}if(n){L[8514]=L[8514]+1;ha[L[6799]](n)}}L[l+12>>2]=p;J[l+16|0]=1;L[l+8>>2]=Q;e=0;h=pa(p,0,f);L[l+4>>2]=Q;g=0;if(Q>>>0>=4){c=Q&-4;r=0;while(1){f=g<<2;L[f+h>>2]=L[f+t>>2];b=f|4;L[b+h>>2]=L[b+t>>2];b=f|8;L[b+h>>2]=L[b+t>>2];b=f|12;L[b+h>>2]=L[b+t>>2];g=g+4|0;r=r+4|0;if((c|0)!=(r|0)){continue}break}}c=Q&3;if(!c){break Ca}while(1){b=g<<2;L[b+h>>2]=L[b+t>>2];g=g+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}}c=M[d+23|0]|M[d+24|0]<<8|(M[d+25|0]<<16|M[d+26|0]<<24);b=M[d+19|0]|M[d+20|0]<<8|(M[d+21|0]<<16|M[d+22|0]<<24);J[l+20|0]=b;J[l+21|0]=b>>>8;J[l+22|0]=b>>>16;J[l+23|0]=b>>>24;J[l+24|0]=c;J[l+25|0]=c>>>8;J[l+26|0]=c>>>16;J[l+27|0]=c>>>24;c=M[d+31|0]|M[d+32|0]<<8|(M[d+33|0]<<16|M[d+34|0]<<24);b=M[d+27|0]|M[d+28|0]<<8|(M[d+29|0]<<16|M[d+30|0]<<24);J[l+28|0]=b;J[l+29|0]=b>>>8;J[l+30|0]=b>>>16;J[l+31|0]=b>>>24;J[l+32|0]=c;J[l+33|0]=c>>>8;J[l+34|0]=c>>>16;J[l+35|0]=c>>>24;L[I+28>>2]=L[I+28>>2]+1;if(t){L[8514]=L[8514]+1;ha[L[6799]](t)}A=A+1|0;if((O|0)!=(A|0)){continue}break}}if(i){L[8514]=L[8514]+1;ha[L[6799]](i)}if(j){continue}break}dm(L[a+52>>2]);if(q){L[8514]=L[8514]+1;ha[L[6799]](q)}if((o|0)<=0){break A}f=0;while(1){b=R(f,36)+E|0;a=L[b+12>>2];if(!(a?!a|!M[b+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[b+12>>2]=0;J[b+16|0]=1;L[b+4>>2]=0;L[b+8>>2]=0;f=f+1|0;if((o|0)!=(f|0)){continue}break}break z}dm(L[a+52>>2])}if(!E){break y}}if(E){L[8514]=L[8514]+1;ha[L[6799]](E)}}if(Z){L[8514]=L[8514]+1;ha[L[6799]](Z)}a=L[d+164>>2];if(!(a?!a|!M[d+168|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[d+164>>2]=0;J[d+168|0]=1;L[d+156>>2]=0;L[d+160>>2]=0;a=L[d+144>>2];if(!(a?!a|!M[d+148|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[d+144>>2]=0;J[d+148|0]=1;L[d+136>>2]=0;L[d+140>>2]=0;a=L[d+124>>2];if(!(a?!a|!M[d+128|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}a=L[d+184>>2];if(!(a?!a|!M[d+188|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}fa=d+192|0;return 1}function xk(a,b,c){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=S(0),r=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=0,C=S(0),D=S(0),E=0,F=S(0),G=S(0),H=S(0);E=fa-16|0;fa=E;f=L[a+1112>>2];if((f|0)>0){while(1){kg(a,0);f=L[a+1112>>2];if((f|0)>0){continue}break}}d=L[a+712>>2];d=(b|0)>(d|0)?d:b;a:{if((d|0)<=(f|0)){break a}if(L[a+1116>>2]<(d|0)){b:{if(!d){break b}L[8513]=L[8513]+1;h=ha[L[6798]](d<<2,16)|0;k=L[a+1112>>2];if((k|0)<=0){break b}b=0;if(k>>>0>=4){l=k&-4;while(1){m=b<<2;L[m+h>>2]=L[m+L[a+1120>>2]>>2];j=m|4;L[j+h>>2]=L[j+L[a+1120>>2]>>2];j=m|8;L[j+h>>2]=L[j+L[a+1120>>2]>>2];j=m|12;L[j+h>>2]=L[j+L[a+1120>>2]>>2];b=b+4|0;e=e+4|0;if((l|0)!=(e|0)){continue}break}}j=k&3;if(!j){break b}while(1){e=b<<2;L[e+h>>2]=L[e+L[a+1120>>2]>>2];b=b+1|0;o=o+1|0;if((j|0)!=(o|0)){continue}break}}b=L[a+1120>>2];if(!(b?!b|!M[a+1124|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+1120>>2]=h;J[a+1124|0]=1;L[a+1116>>2]=d}j=(f^-1)+d|0;e=d-f&3;if(e){b=0;while(1){L[L[a+1120>>2]+(f<<2)>>2]=0;f=f+1|0;b=b+1|0;if((e|0)!=(b|0)){continue}break}}if(j>>>0<3){break a}while(1){b=f<<2;L[b+L[a+1120>>2]>>2]=0;L[(b+L[a+1120>>2]|0)+4>>2]=0;L[(b+L[a+1120>>2]|0)+8>>2]=0;L[(b+L[a+1120>>2]|0)+12>>2]=0;f=f+4|0;if((d|0)!=(f|0)){continue}break}}L[a+1112>>2]=d;c:{d:{e:{f:{if((d|0)<=0){break f}b=0;while(1){L[8513]=L[8513]+1;d=ha[L[6798]](384,16)|0;L[d+4>>2]=0;L[d+8>>2]=0;L[d+12>>2]=0;J[d+16|0]=1;L[d+348>>2]=0;L[d+352>>2]=0;J[d+376|0]=0;L[d+368>>2]=1120403456;L[d+372>>2]=1008981770;J[d+36|0]=1;L[d+32>>2]=0;J[d+56|0]=1;L[d+24>>2]=0;L[d+28>>2]=0;L[d+52>>2]=0;L[d+44>>2]=0;L[d+48>>2]=0;L[d+356>>2]=0;L[d+360>>2]=0;L[d+364>>2]=0;e=b<<2;L[e+L[a+1120>>2]>>2]=d;J[L[e+L[a+1120>>2]>>2]+377|0]=1;b=b+1|0;d=L[a+1112>>2];if((b|0)<(d|0)){continue}break}if((d|0)<=0){break f}b=L[a+712>>2];if((b|0)>0){while(1){k=L[a+720>>2]+R(t,104)|0;x=P[k+8>>2];s=P[k+16>>2];q=P[k+12>>2];g=L[L[a+1120>>2]+((R(t,29873)|0)%L[a+1112>>2]<<2)>>2];e=L[g+24>>2];g:{if((e|0)!=L[g+28>>2]){break g}l=e?e<<1:1;if((l|0)<=(e|0)){break g}h:{if(!l){h=0;break h}L[8513]=L[8513]+1;h=ha[L[6798]](l<<2,16)|0;e=L[g+24>>2]}i:{if((e|0)<=0){break i}o=0;b=0;if(e>>>0>=4){f=e&-4;r=0;while(1){m=b<<2;L[m+h>>2]=L[m+L[g+32>>2]>>2];j=m|4;L[j+h>>2]=L[j+L[g+32>>2]>>2];j=m|8;L[j+h>>2]=L[j+L[g+32>>2]>>2];j=m|12;L[j+h>>2]=L[j+L[g+32>>2]>>2];b=b+4|0;r=r+4|0;if((f|0)!=(r|0)){continue}break}}f=e&3;if(!f){break i}while(1){j=b<<2;L[j+h>>2]=L[j+L[g+32>>2]>>2];b=b+1|0;o=o+1|0;if((f|0)!=(o|0)){continue}break}}b=L[g+32>>2];if(!(!b|!M[g+36|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}e=L[g+24>>2]}L[g+32>>2]=h;J[g+36|0]=1;L[g+28>>2]=l;b=L[a+712>>2]}v=S(v+x);u=S(u+s);w=S(w+q);L[L[g+32>>2]+(e<<2)>>2]=k;L[g+24>>2]=e+1;t=t+1|0;if((t|0)<(b|0)){continue}break}}q=S(S(1)/S(b|0));x=S(u*q);s=S(w*q);q=S(v*q);e=0;L[8513]=L[8513]+1;B=ha[L[6798]](d<<4,16)|0;f=0;if(d>>>0>=4){b=d&-4;o=0;while(1){l=f<<4;j=l+B|0;L[j+12>>2]=0;P[j+8>>2]=x;P[j+4>>2]=s;P[j>>2]=q;j=B+(l|16)|0;L[j+12>>2]=0;P[j+8>>2]=x;P[j+4>>2]=s;P[j>>2]=q;j=B+(l|32)|0;L[j+12>>2]=0;P[j+8>>2]=x;P[j+4>>2]=s;P[j>>2]=q;j=B+(l|48)|0;L[j+12>>2]=0;P[j+8>>2]=x;P[j+4>>2]=s;P[j>>2]=q;f=f+4|0;o=o+4|0;if((b|0)!=(o|0)){continue}break}}b=d&3;if(b){while(1){j=B+(f<<4)|0;L[j+12>>2]=0;P[j+8>>2]=x;P[j+4>>2]=s;P[j>>2]=q;f=f+1|0;e=e+1|0;if((b|0)!=(e|0)){continue}break}}while(1){q=S(S(i|0)*S(.0625));D=S(S(2)-(q>S(1)?S(1):q));i=i+1|0;g=0;t=0;while(1){l=t<<2;b=L[l+L[a+1120>>2]>>2];p=L[b+24>>2];j:{if((p|0)<=0){u=S(0);w=S(0);v=S(0);break j}j=p&1;m=L[b+32>>2];k:{if((p|0)==1){v=S(0);f=0;w=S(0);u=S(0);break k}e=p&-2;v=S(0);f=0;w=S(0);u=S(0);o=0;while(1){b=f<<2;k=L[b+m>>2];b=L[m+(b|4)>>2];u=S(S(u+P[k+8>>2])+P[b+8>>2]);v=S(S(v+P[k+16>>2])+P[b+16>>2]);w=S(S(w+P[k+12>>2])+P[b+12>>2]);f=f+2|0;o=o+2|0;if((e|0)!=(o|0)){continue}break}}if(!j){break j}b=L[m+(f<<2)>>2];u=S(u+P[b+8>>2]);v=S(v+P[b+16>>2]);w=S(w+P[b+12>>2])}if(p){b=B+(t<<4)|0;L[b+12>>2]=0;C=P[b+8>>2];s=S(S(1)/S(p|0));q=S(C+S(D*S(S(v*s)-C)));P[b+8>>2]=q;z=P[b+4>>2];x=S(z+S(D*S(S(w*s)-z)));P[b+4>>2]=x;A=P[b>>2];s=S(A+S(D*S(S(u*s)-A)));P[b>>2]=s;q=S(q-C);F=S(q*q);q=S(s-A);C=S(q*q);q=S(x-z);j=S(F+S(C+S(q*q)))>S(1.1920928955078125e-7);l=L[l+L[a+1120>>2]>>2];b=L[l+24>>2];l:{if((b|0)>=0){break l}if(L[l+28>>2]<0){e=L[l+32>>2];if(!(e?!e|!M[l+36|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](e)}J[l+36|0]=1;L[l+28>>2]=0;L[l+32>>2]=0}h=0;f=b;e=0-b&3;if(e){while(1){L[L[l+32>>2]+(f<<2)>>2]=0;f=f+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}if(b>>>0>4294967292){break l}while(1){b=f<<2;L[b+L[l+32>>2]>>2]=0;L[(b+L[l+32>>2]|0)+4>>2]=0;L[(b+L[l+32>>2]|0)+8>>2]=0;L[(b+L[l+32>>2]|0)+12>>2]=0;f=f+4|0;if(f){continue}break}}L[l+24>>2]=0;g=g|j}t=t+1|0;if((t|0)!=(d|0)){continue}break}n=0;e=L[a+712>>2];if((e|0)>0){while(1){m=L[a+720>>2]+R(n,104)|0;h=0;if((d|0)>=2){A=P[m+8>>2];x=P[m+12>>2];s=P[m+16>>2];u=S(S(S(T(S(P[B>>2]-A)))+S(T(S(P[B+4>>2]-x))))+S(T(S(P[B+8>>2]-s))));f=1;while(1){b=B+(f<<4)|0;q=S(S(S(T(S(P[b>>2]-A)))+S(T(S(P[b+4>>2]-x))))+S(T(S(P[b+8>>2]-s))));b=q>2]+(h<<2)>>2];r=L[p+24>>2];m:{if((r|0)!=L[p+28>>2]){break m}l=r?r<<1:1;if((l|0)<=(r|0)){break m}n:{if(!l){h=0;break n}L[8513]=L[8513]+1;h=ha[L[6798]](l<<2,16)|0;r=L[p+24>>2]}o:{if((r|0)<=0){break o}o=0;b=0;if(r>>>0>=4){f=r&-4;j=0;while(1){k=b<<2;L[k+h>>2]=L[k+L[p+32>>2]>>2];e=k|4;L[e+h>>2]=L[e+L[p+32>>2]>>2];e=k|8;L[e+h>>2]=L[e+L[p+32>>2]>>2];e=k|12;L[e+h>>2]=L[e+L[p+32>>2]>>2];b=b+4|0;j=j+4|0;if((f|0)!=(j|0)){continue}break}}j=r&3;if(!j){break o}while(1){e=b<<2;L[e+h>>2]=L[e+L[p+32>>2]>>2];b=b+1|0;o=o+1|0;if((j|0)!=(o|0)){continue}break}}b=L[p+32>>2];if(!(!b|!M[p+36|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}r=L[p+24>>2]}L[p+32>>2]=h;J[p+36|0]=1;L[p+28>>2]=l;e=L[a+712>>2]}L[L[p+32>>2]+(r<<2)>>2]=m;L[p+24>>2]=r+1;n=n+1|0;if((n|0)<(e|0)){continue}break}}if((c|0)>(i|0)&g){continue}break}p:{if((e|0)<=0){r=0;break p}L[8513]=L[8513]+1;b=e<<2;r=ha[L[6798]](b,16)|0;pa(r,255,b)}e=L[a+1112>>2];if((e|0)>0){j=L[a+720>>2];d=L[a+1120>>2];b=0;while(1){l=L[d+(b<<2)>>2];if(L[l+24>>2]>0){c=L[l+32>>2];f=0;while(1){L[((L[c+(f<<2)>>2]-j|0)/104<<2)+r>>2]=b;f=f+1|0;if((f|0)>2]){continue}break}e=L[a+1112>>2]}b=b+1|0;if((e|0)>(b|0)){continue}break}}if(L[a+752>>2]>0){e=0;while(1){c=L[a+760>>2]+R(e,44)|0;b=L[a+720>>2];L[E+4>>2]=(L[c+8>>2]-b|0)/104;L[E+8>>2]=(L[c+12>>2]-b|0)/104;L[E+12>>2]=(L[c+16>>2]-b|0)/104;j=0;while(1){b=j;j=b+1|0;k=(j|0)==3;d=E+4|0;c=L[d+((k?0:j)<<2)>>2];g=L[(L[d+(b<<2)>>2]<<2)+r>>2];q:{if(L[(c<<2)+r>>2]==(g|0)){break q}l=L[a+720>>2]+R(c,104)|0;i=L[L[a+1120>>2]+(g<<2)>>2];h=L[i+24>>2];r:{if((h|0)<=0){break r}c=L[i+32>>2];f=0;while(1){if((l|0)!=L[c+(f<<2)>>2]){f=f+1|0;if((h|0)!=(f|0)){continue}break r}break}if((f|0)!=(h|0)){break q}}s:{if(L[i+28>>2]!=(h|0)){break s}m=h?h<<1:1;if((m|0)<=(h|0)){break s}t:{if(!m){o=0;break t}L[8513]=L[8513]+1;o=ha[L[6798]](m<<2,16)|0;h=L[i+24>>2]}u:{if((h|0)<=0){break u}t=0;f=0;if(h>>>0>=4){d=h&-4;n=0;while(1){p=f<<2;L[p+o>>2]=L[p+L[i+32>>2]>>2];c=p|4;L[c+o>>2]=L[c+L[i+32>>2]>>2];c=p|8;L[c+o>>2]=L[c+L[i+32>>2]>>2];c=p|12;L[c+o>>2]=L[c+L[i+32>>2]>>2];f=f+4|0;n=n+4|0;if((d|0)!=(n|0)){continue}break}}d=h&3;if(!d){break u}while(1){c=f<<2;L[c+o>>2]=L[c+L[i+32>>2]>>2];f=f+1|0;t=t+1|0;if((d|0)!=(t|0)){continue}break}}c=L[i+32>>2];if(!(!c|!M[i+36|0])){if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}h=L[i+24>>2]}L[i+32>>2]=o;J[i+36|0]=1;L[i+28>>2]=m}L[L[i+32>>2]+(h<<2)>>2]=l;L[i+24>>2]=h+1}b=L[(E+4|0)+((b+2>>>0)%3<<2)>>2];v:{if((g|0)==L[(b<<2)+r>>2]){break v}d=L[a+720>>2]+R(b,104)|0;g=L[L[a+1120>>2]+(g<<2)>>2];h=L[g+24>>2];w:{if((h|0)<=0){break w}b=L[g+32>>2];f=0;while(1){if((d|0)!=L[b+(f<<2)>>2]){f=f+1|0;if((h|0)!=(f|0)){continue}break w}break}if((f|0)!=(h|0)){break v}}x:{if(L[g+28>>2]!=(h|0)){break x}l=h?h<<1:1;if((l|0)<=(h|0)){break x}y:{if(!l){o=0;break y}L[8513]=L[8513]+1;o=ha[L[6798]](l<<2,16)|0;h=L[g+24>>2]}z:{if((h|0)<=0){break z}t=0;f=0;if(h>>>0>=4){c=h&-4;i=0;while(1){m=f<<2;L[m+o>>2]=L[m+L[g+32>>2]>>2];b=m|4;L[b+o>>2]=L[b+L[g+32>>2]>>2];b=m|8;L[b+o>>2]=L[b+L[g+32>>2]>>2];b=m|12;L[b+o>>2]=L[b+L[g+32>>2]>>2];f=f+4|0;i=i+4|0;if((c|0)!=(i|0)){continue}break}}c=h&3;if(!c){break z}while(1){b=f<<2;L[b+o>>2]=L[b+L[g+32>>2]>>2];f=f+1|0;t=t+1|0;if((c|0)!=(t|0)){continue}break}}b=L[g+32>>2];if(!(!b|!M[g+36|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}h=L[g+24>>2]}L[g+32>>2]=o;J[g+36|0]=1;L[g+28>>2]=l}L[L[g+32>>2]+(h<<2)>>2]=d;L[g+24>>2]=h+1}if(!k){continue}break}e=e+1|0;if((e|0)>2]){continue}break}e=L[a+1112>>2]}if((e|0)<2){break d}L[8513]=L[8513]+1;g=ha[L[6798]](384,16)|0;L[g+348>>2]=0;L[g+352>>2]=0;L[g+12>>2]=0;J[g+16|0]=1;L[g+4>>2]=0;L[g+8>>2]=0;K[g+376>>1]=0;L[g+368>>2]=1120403456;L[g+372>>2]=1008981770;L[g+44>>2]=0;L[g+48>>2]=0;J[g+36|0]=1;L[g+32>>2]=0;J[g+56|0]=1;L[g+24>>2]=0;L[g+28>>2]=0;L[g+52>>2]=0;L[g+356>>2]=0;L[g+360>>2]=0;L[g+364>>2]=0;e=L[a+712>>2];if((e|0)<=0){break e}L[8513]=L[8513]+1;m=ha[L[6798]](e<<2,16)|0;l=L[g+24>>2];A:{if((l|0)<=0){break A}d=0;b=0;if(l>>>0>=4){f=l&-4;j=0;while(1){k=b<<2;L[k+m>>2]=L[k+L[g+32>>2]>>2];c=k|4;L[c+m>>2]=L[c+L[g+32>>2]>>2];c=k|8;L[c+m>>2]=L[c+L[g+32>>2]>>2];c=k|12;L[c+m>>2]=L[c+L[g+32>>2]>>2];b=b+4|0;j=j+4|0;if((f|0)!=(j|0)){continue}break}}j=l&3;if(!j){break A}while(1){c=b<<2;L[c+m>>2]=L[c+L[g+32>>2]>>2];b=b+1|0;d=d+1|0;if((j|0)!=(d|0)){continue}break}}b=L[g+32>>2];if(!(b?!b|!M[g+36|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[g+32>>2]=m;J[g+36|0]=1;L[g+28>>2]=e;b=L[a+712>>2];if((b|0)<=0){break e}d=L[g+24>>2];t=0;while(1){l=L[a+720>>2]+R(t,104)|0;B:{if((d|0)!=(e|0)){break B}c=e?e<<1:1;if((c|0)<=(e|0)){d=e;break B}C:{if(!c){h=0;break C}L[8513]=L[8513]+1;h=ha[L[6798]](c<<2,16)|0;e=L[g+24>>2]}d=e;D:{if((d|0)<=0){break D}o=0;b=0;if(d>>>0>=4){f=d&-4;j=0;while(1){k=b<<2;L[k+h>>2]=L[k+L[g+32>>2]>>2];e=k|4;L[e+h>>2]=L[e+L[g+32>>2]>>2];e=k|8;L[e+h>>2]=L[e+L[g+32>>2]>>2];e=k|12;L[e+h>>2]=L[e+L[g+32>>2]>>2];b=b+4|0;j=j+4|0;if((f|0)!=(j|0)){continue}break}}j=d&3;if(!j){break D}while(1){e=b<<2;L[e+h>>2]=L[e+L[g+32>>2]>>2];b=b+1|0;o=o+1|0;if((j|0)!=(o|0)){continue}break}}b=L[g+32>>2];if(!(!b|!M[g+36|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}d=L[g+24>>2]}L[g+32>>2]=h;J[g+36|0]=1;L[g+28>>2]=c;b=L[a+712>>2];e=c}L[L[g+32>>2]+(d<<2)>>2]=l;d=d+1|0;L[g+24>>2]=d;t=t+1|0;if((t|0)<(b|0)){continue}break}break e}m=L[a+772>>2];if(m){E:{if((d|0)>=(m|0)){break E}if((m|0)>L[a+1116>>2]){L[8513]=L[8513]+1;k=ha[L[6798]](m<<2,16)|0;j=L[a+1112>>2];F:{if((j|0)<=0){break F}o=0;f=0;if(j>>>0>=4){c=j&-4;e=0;while(1){l=f<<2;L[l+k>>2]=L[l+L[a+1120>>2]>>2];b=l|4;L[b+k>>2]=L[b+L[a+1120>>2]>>2];b=l|8;L[b+k>>2]=L[b+L[a+1120>>2]>>2];b=l|12;L[b+k>>2]=L[b+L[a+1120>>2]>>2];f=f+4|0;e=e+4|0;if((c|0)!=(e|0)){continue}break}}c=j&3;if(!c){break F}while(1){b=f<<2;L[b+k>>2]=L[b+L[a+1120>>2]>>2];f=f+1|0;o=o+1|0;if((c|0)!=(o|0)){continue}break}}b=L[a+1120>>2];if(!(b?!b|!M[a+1124|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+1120>>2]=k;J[a+1124|0]=1;L[a+1116>>2]=m}c=m+(d^-1)|0;b=m-d&3;if(b){f=0;while(1){L[L[a+1120>>2]+(d<<2)>>2]=0;d=d+1|0;f=f+1|0;if((b|0)!=(f|0)){continue}break}}if(c>>>0<3){break E}while(1){b=d<<2;L[b+L[a+1120>>2]>>2]=0;L[(b+L[a+1120>>2]|0)+4>>2]=0;L[(b+L[a+1120>>2]|0)+8>>2]=0;L[(b+L[a+1120>>2]|0)+12>>2]=0;d=d+4|0;if((m|0)!=(d|0)){continue}break}}L[a+1112>>2]=m;if((m|0)>0){b=0;while(1){L[8513]=L[8513]+1;e=ha[L[6798]](384,16)|0;L[e+4>>2]=0;L[e+8>>2]=0;L[e+12>>2]=0;J[e+16|0]=1;L[e+348>>2]=0;L[e+352>>2]=0;J[e+376|0]=0;L[e+368>>2]=1120403456;L[e+372>>2]=1008981770;J[e+36|0]=1;L[e+32>>2]=0;J[e+56|0]=1;L[e+24>>2]=0;L[e+28>>2]=0;L[e+52>>2]=0;L[e+44>>2]=0;L[e+48>>2]=0;L[e+356>>2]=0;L[e+360>>2]=0;L[e+364>>2]=0;c=b<<2;L[c+L[a+1120>>2]>>2]=e;J[L[c+L[a+1120>>2]>>2]+377|0]=1;b=b+1|0;if((b|0)>2]){continue}break}}if(L[a+772>>2]<=0){break c}j=0;while(1){g=R(j,104);l=g+L[a+780>>2]|0;m=j<<2;n=L[m+L[a+1120>>2]>>2];d=L[n+24>>2];G:{if((d|0)!=L[n+28>>2]){break G}k=d?d<<1:1;if((k|0)<=(d|0)){break G}H:{if(!k){h=0;break H}L[8513]=L[8513]+1;h=ha[L[6798]](k<<2,16)|0;d=L[n+24>>2]}I:{if((d|0)<=0){break I}o=0;b=0;if(d>>>0>=4){f=d&-4;e=0;while(1){p=b<<2;L[p+h>>2]=L[p+L[n+32>>2]>>2];c=p|4;L[c+h>>2]=L[c+L[n+32>>2]>>2];c=p|8;L[c+h>>2]=L[c+L[n+32>>2]>>2];c=p|12;L[c+h>>2]=L[c+L[n+32>>2]>>2];b=b+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=d&3;if(!e){break I}while(1){c=b<<2;L[c+h>>2]=L[c+L[n+32>>2]>>2];b=b+1|0;o=o+1|0;if((e|0)!=(o|0)){continue}break}}b=L[n+32>>2];if(!(!b|!M[n+36|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}d=L[n+24>>2]}L[n+32>>2]=h;J[n+36|0]=1;L[n+28>>2]=k}L[L[n+32>>2]+(d<<2)>>2]=L[l+8>>2];L[n+24>>2]=d+1;l=g+L[a+780>>2]|0;n=L[m+L[a+1120>>2]>>2];d=L[n+24>>2];J:{if((d|0)!=L[n+28>>2]){break J}k=d?d<<1:1;if((k|0)<=(d|0)){break J}K:{if(!k){h=0;break K}L[8513]=L[8513]+1;h=ha[L[6798]](k<<2,16)|0;d=L[n+24>>2]}L:{if((d|0)<=0){break L}o=0;b=0;if(d>>>0>=4){f=d&-4;e=0;while(1){p=b<<2;L[p+h>>2]=L[p+L[n+32>>2]>>2];c=p|4;L[c+h>>2]=L[c+L[n+32>>2]>>2];c=p|8;L[c+h>>2]=L[c+L[n+32>>2]>>2];c=p|12;L[c+h>>2]=L[c+L[n+32>>2]>>2];b=b+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=d&3;if(!e){break L}while(1){c=b<<2;L[c+h>>2]=L[c+L[n+32>>2]>>2];b=b+1|0;o=o+1|0;if((e|0)!=(o|0)){continue}break}}b=L[n+32>>2];if(!(!b|!M[n+36|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}d=L[n+24>>2]}L[n+32>>2]=h;J[n+36|0]=1;L[n+28>>2]=k}L[L[n+32>>2]+(d<<2)>>2]=L[l+12>>2];L[n+24>>2]=d+1;l=g+L[a+780>>2]|0;n=L[m+L[a+1120>>2]>>2];d=L[n+24>>2];M:{if((d|0)!=L[n+28>>2]){break M}k=d?d<<1:1;if((k|0)<=(d|0)){break M}N:{if(!k){h=0;break N}L[8513]=L[8513]+1;h=ha[L[6798]](k<<2,16)|0;d=L[n+24>>2]}O:{if((d|0)<=0){break O}o=0;b=0;if(d>>>0>=4){f=d&-4;e=0;while(1){p=b<<2;L[p+h>>2]=L[p+L[n+32>>2]>>2];c=p|4;L[c+h>>2]=L[c+L[n+32>>2]>>2];c=p|8;L[c+h>>2]=L[c+L[n+32>>2]>>2];c=p|12;L[c+h>>2]=L[c+L[n+32>>2]>>2];b=b+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=d&3;if(!e){break O}while(1){c=b<<2;L[c+h>>2]=L[c+L[n+32>>2]>>2];b=b+1|0;o=o+1|0;if((e|0)!=(o|0)){continue}break}}b=L[n+32>>2];if(!(!b|!M[n+36|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}d=L[n+24>>2]}L[n+32>>2]=h;J[n+36|0]=1;L[n+28>>2]=k}L[L[n+32>>2]+(d<<2)>>2]=L[l+16>>2];L[n+24>>2]=d+1;l=g+L[a+780>>2]|0;g=L[m+L[a+1120>>2]>>2];d=L[g+24>>2];P:{if((d|0)!=L[g+28>>2]){break P}k=d?d<<1:1;if((k|0)<=(d|0)){break P}Q:{if(!k){h=0;break Q}L[8513]=L[8513]+1;h=ha[L[6798]](k<<2,16)|0;d=L[g+24>>2]}R:{if((d|0)<=0){break R}o=0;b=0;if(d>>>0>=4){f=d&-4;e=0;while(1){m=b<<2;L[m+h>>2]=L[m+L[g+32>>2]>>2];c=m|4;L[c+h>>2]=L[c+L[g+32>>2]>>2];c=m|8;L[c+h>>2]=L[c+L[g+32>>2]>>2];c=m|12;L[c+h>>2]=L[c+L[g+32>>2]>>2];b=b+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=d&3;if(!e){break R}while(1){c=b<<2;L[c+h>>2]=L[c+L[g+32>>2]>>2];b=b+1|0;o=o+1|0;if((e|0)!=(o|0)){continue}break}}b=L[g+32>>2];if(!(!b|!M[g+36|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}d=L[g+24>>2]}L[g+32>>2]=h;J[g+36|0]=1;L[g+28>>2]=k}L[L[g+32>>2]+(d<<2)>>2]=L[l+20>>2];L[g+24>>2]=d+1;j=j+1|0;if((j|0)>2]){continue}break}break c}k=L[a+752>>2];S:{if((k|0)<=(d|0)){break S}if((k|0)>L[a+1116>>2]){T:{if(!k){h=0;break T}L[8513]=L[8513]+1;h=ha[L[6798]](k<<2,16)|0;j=L[a+1112>>2];if((j|0)<=0){break T}o=0;f=0;if(j>>>0>=4){c=j&-4;e=0;while(1){l=f<<2;L[l+h>>2]=L[l+L[a+1120>>2]>>2];b=l|4;L[b+h>>2]=L[b+L[a+1120>>2]>>2];b=l|8;L[b+h>>2]=L[b+L[a+1120>>2]>>2];b=l|12;L[b+h>>2]=L[b+L[a+1120>>2]>>2];f=f+4|0;e=e+4|0;if((c|0)!=(e|0)){continue}break}}c=j&3;if(!c){break T}while(1){b=f<<2;L[b+h>>2]=L[b+L[a+1120>>2]>>2];f=f+1|0;o=o+1|0;if((c|0)!=(o|0)){continue}break}}b=L[a+1120>>2];if(!(b?!b|!M[a+1124|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+1120>>2]=h;J[a+1124|0]=1;L[a+1116>>2]=k}c=k+(d^-1)|0;b=k-d&3;if(b){f=0;while(1){L[L[a+1120>>2]+(d<<2)>>2]=0;d=d+1|0;f=f+1|0;if((b|0)!=(f|0)){continue}break}}if(c>>>0<3){break S}while(1){b=d<<2;L[b+L[a+1120>>2]>>2]=0;L[(b+L[a+1120>>2]|0)+4>>2]=0;L[(b+L[a+1120>>2]|0)+8>>2]=0;L[(b+L[a+1120>>2]|0)+12>>2]=0;d=d+4|0;if((k|0)!=(d|0)){continue}break}}L[a+1112>>2]=k;if((k|0)>0){b=0;while(1){L[8513]=L[8513]+1;e=ha[L[6798]](384,16)|0;L[e+4>>2]=0;L[e+8>>2]=0;L[e+12>>2]=0;J[e+16|0]=1;L[e+348>>2]=0;L[e+352>>2]=0;J[e+376|0]=0;L[e+368>>2]=1120403456;L[e+372>>2]=1008981770;J[e+36|0]=1;L[e+32>>2]=0;J[e+56|0]=1;L[e+24>>2]=0;L[e+28>>2]=0;L[e+52>>2]=0;L[e+44>>2]=0;L[e+48>>2]=0;L[e+356>>2]=0;L[e+360>>2]=0;L[e+364>>2]=0;c=b<<2;L[c+L[a+1120>>2]>>2]=e;J[L[c+L[a+1120>>2]>>2]+377|0]=1;b=b+1|0;if((b|0)>2]){continue}break}}if(L[a+752>>2]<=0){break c}j=0;while(1){m=R(j,44);l=m+L[a+760>>2]|0;k=j<<2;n=L[k+L[a+1120>>2]>>2];d=L[n+24>>2];U:{if((d|0)!=L[n+28>>2]){break U}g=d?d<<1:1;if((g|0)<=(d|0)){break U}V:{if(!g){h=0;break V}L[8513]=L[8513]+1;h=ha[L[6798]](g<<2,16)|0;d=L[n+24>>2]}W:{if((d|0)<=0){break W}o=0;b=0;if(d>>>0>=4){f=d&-4;e=0;while(1){p=b<<2;L[p+h>>2]=L[p+L[n+32>>2]>>2];c=p|4;L[c+h>>2]=L[c+L[n+32>>2]>>2];c=p|8;L[c+h>>2]=L[c+L[n+32>>2]>>2];c=p|12;L[c+h>>2]=L[c+L[n+32>>2]>>2];b=b+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=d&3;if(!e){break W}while(1){c=b<<2;L[c+h>>2]=L[c+L[n+32>>2]>>2];b=b+1|0;o=o+1|0;if((e|0)!=(o|0)){continue}break}}b=L[n+32>>2];if(!(!b|!M[n+36|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}d=L[n+24>>2]}L[n+32>>2]=h;J[n+36|0]=1;L[n+28>>2]=g}L[L[n+32>>2]+(d<<2)>>2]=L[l+8>>2];L[n+24>>2]=d+1;l=m+L[a+760>>2]|0;n=L[k+L[a+1120>>2]>>2];d=L[n+24>>2];X:{if((d|0)!=L[n+28>>2]){break X}g=d?d<<1:1;if((g|0)<=(d|0)){break X}Y:{if(!g){h=0;break Y}L[8513]=L[8513]+1;h=ha[L[6798]](g<<2,16)|0;d=L[n+24>>2]}Z:{if((d|0)<=0){break Z}o=0;b=0;if(d>>>0>=4){f=d&-4;e=0;while(1){p=b<<2;L[p+h>>2]=L[p+L[n+32>>2]>>2];c=p|4;L[c+h>>2]=L[c+L[n+32>>2]>>2];c=p|8;L[c+h>>2]=L[c+L[n+32>>2]>>2];c=p|12;L[c+h>>2]=L[c+L[n+32>>2]>>2];b=b+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=d&3;if(!e){break Z}while(1){c=b<<2;L[c+h>>2]=L[c+L[n+32>>2]>>2];b=b+1|0;o=o+1|0;if((e|0)!=(o|0)){continue}break}}b=L[n+32>>2];if(!(!b|!M[n+36|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}d=L[n+24>>2]}L[n+32>>2]=h;J[n+36|0]=1;L[n+28>>2]=g}L[L[n+32>>2]+(d<<2)>>2]=L[l+12>>2];L[n+24>>2]=d+1;l=m+L[a+760>>2]|0;g=L[k+L[a+1120>>2]>>2];d=L[g+24>>2];_:{if((d|0)!=L[g+28>>2]){break _}k=d?d<<1:1;if((k|0)<=(d|0)){break _}$:{if(!k){h=0;break $}L[8513]=L[8513]+1;h=ha[L[6798]](k<<2,16)|0;d=L[g+24>>2]}aa:{if((d|0)<=0){break aa}o=0;b=0;if(d>>>0>=4){f=d&-4;e=0;while(1){m=b<<2;L[m+h>>2]=L[m+L[g+32>>2]>>2];c=m|4;L[c+h>>2]=L[c+L[g+32>>2]>>2];c=m|8;L[c+h>>2]=L[c+L[g+32>>2]>>2];c=m|12;L[c+h>>2]=L[c+L[g+32>>2]>>2];b=b+4|0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}e=d&3;if(!e){break aa}while(1){c=b<<2;L[c+h>>2]=L[c+L[g+32>>2]>>2];b=b+1|0;o=o+1|0;if((e|0)!=(o|0)){continue}break}}b=L[g+32>>2];if(!(!b|!M[g+36|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}d=L[g+24>>2]}L[g+32>>2]=h;J[g+36|0]=1;L[g+28>>2]=k}L[L[g+32>>2]+(d<<2)>>2]=L[l+16>>2];L[g+24>>2]=d+1;j=j+1|0;if((j|0)>2]){continue}break}break c}d=L[a+1112>>2];ba:{if((d|0)!=L[a+1116>>2]){break ba}f=d?d<<1:1;if((f|0)<=(d|0)){break ba}ca:{if(!f){h=0;break ca}L[8513]=L[8513]+1;h=ha[L[6798]](f<<2,16)|0;d=L[a+1112>>2]}da:{if((d|0)<=0){break da}o=0;b=0;if(d>>>0>=4){e=d&-4;j=0;while(1){l=b<<2;L[l+h>>2]=L[l+L[a+1120>>2]>>2];c=l|4;L[c+h>>2]=L[c+L[a+1120>>2]>>2];c=l|8;L[c+h>>2]=L[c+L[a+1120>>2]>>2];c=l|12;L[c+h>>2]=L[c+L[a+1120>>2]>>2];b=b+4|0;j=j+4|0;if((e|0)!=(j|0)){continue}break}}e=d&3;if(!e){break da}while(1){c=b<<2;L[c+h>>2]=L[c+L[a+1120>>2]>>2];b=b+1|0;o=o+1|0;if((e|0)!=(o|0)){continue}break}}b=L[a+1120>>2];if(!(!b|!M[a+1124|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}d=L[a+1112>>2]}L[a+1120>>2]=h;J[a+1124|0]=1;L[a+1116>>2]=f}b=d<<2;L[b+L[a+1120>>2]>>2]=g;e=d+1|0;L[a+1112>>2]=e;d=L[a+1120>>2];c=L[d>>2];b=b+d|0;L[d>>2]=L[b>>2];L[b>>2]=c}if((e|0)>0){f=0;while(1){if(!L[L[L[a+1120>>2]+(f<<2)>>2]+24>>2]){kg(a,f);f=f-1|0;e=L[a+1112>>2]}f=f+1|0;if((e|0)>(f|0)){continue}break}}if(r){L[8514]=L[8514]+1;ha[L[6799]](r)}if(!B){break c}if(B){L[8514]=L[8514]+1;ha[L[6799]](B)}}ea:{if(!L[a+1112>>2]){r=0;break ea}n=0;if(L[a+1112>>2]>0){while(1){i=L[L[a+1120>>2]+(n<<2)>>2];L[i+128>>2]=0;k=L[i+24>>2];e=k;j=L[i+4>>2];if((e|0)>(j|0)){fa:{if((k|0)<=L[i+8>>2]){d=L[i+12>>2];break fa}ga:{if(!k){d=0;b=j;break ga}L[8513]=L[8513]+1;d=ha[L[6798]](k<<2,16)|0;b=L[i+4>>2]}m=L[i+12>>2];c=b;ha:{ia:{if((b|0)>0){o=0;b=0;if(c>>>0>=4){f=c&-4;t=0;while(1){l=b<<2;P[l+d>>2]=P[l+m>>2];e=l|4;P[e+d>>2]=P[e+m>>2];e=l|8;P[e+d>>2]=P[e+m>>2];e=l|12;P[e+d>>2]=P[e+m>>2];b=b+4|0;t=t+4|0;if((f|0)!=(t|0)){continue}break}}e=c&3;if(!e){break ia}while(1){c=b<<2;P[c+d>>2]=P[c+m>>2];b=b+1|0;o=o+1|0;if((e|0)!=(o|0)){continue}break}break ia}if(!m){break ha}}if(!M[i+16|0]){break ha}if(m){L[8514]=L[8514]+1;ha[L[6799]](m)}}L[i+12>>2]=d;J[i+16|0]=1;L[i+8>>2]=k}pa((j<<2)+d|0,0,k-j<<2);e=L[i+24>>2]}L[i+4>>2]=k;ja:{ka:{l=(e|0)>0;la:{if(!l){y=S(S(1)/P[i+128>>2]);P[i+128>>2]=y;break la}f=L[i+32>>2];j=L[i+12>>2];b=0;while(1){d=b<<2;c=d+j|0;q=P[L[d+f>>2]+88>>2];ma:{if(q==S(0)){J[i+376|0]=1;q=S(0xde0b6b000000000);break ma}q=S(S(1)/q)}P[c>>2]=q;q=S(q+P[i+128>>2]);P[i+128>>2]=q;b=b+1|0;if((e|0)!=(b|0)){continue}break}y=S(S(1)/q);P[i+128>>2]=y;if((e|0)>0){break ka}}v=S(0);w=S(0);u=S(0);break ja}f=e&1;p=L[i+32>>2];g=L[i+12>>2];na:{if((e|0)==1){u=S(0);b=0;w=S(0);v=S(0);break na}j=e&-2;u=S(0);b=0;w=S(0);v=S(0);d=0;while(1){c=b<<2;m=L[c+p>>2];s=P[c+g>>2];c=c|4;k=L[c+p>>2];q=P[c+g>>2];v=S(S(v+S(P[m+8>>2]*s))+S(P[k+8>>2]*q));u=S(S(u+S(s*P[m+16>>2]))+S(q*P[k+16>>2]));w=S(S(w+S(s*P[m+12>>2]))+S(q*P[k+12>>2]));b=b+2|0;d=d+2|0;if((j|0)!=(d|0)){continue}break}}if(!f){break ja}b=b<<2;c=L[b+p>>2];q=P[b+g>>2];v=S(v+S(P[c+8>>2]*q));u=S(u+S(q*P[c+16>>2]));w=S(w+S(q*P[c+12>>2]))}L[i+316>>2]=0;L[i+320>>2]=0;L[i+132>>2]=0;L[i+136>>2]=0;L[i+240>>2]=0;z=S(y*u);P[i+236>>2]=z;A=S(y*w);P[i+232>>2]=A;x=S(y*v);P[i+228>>2]=x;L[i+324>>2]=0;L[i+328>>2]=0;L[i+332>>2]=0;L[i+336>>2]=0;L[i+340>>2]=0;L[i+344>>2]=0;L[i+348>>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[i+176>>2]=0;oa:{if(!l){G=P[i+152>>2];v=P[i+156>>2];u=P[i+140>>2];y=P[i+136>>2];w=S(0);H=S(0);break oa}v=P[i+156>>2];u=P[i+140>>2];y=P[i+136>>2];G=P[i+152>>2];j=L[i+32>>2];d=L[i+12>>2];b=0;H=S(0);w=S(0);while(1){c=b<<2;f=L[c+j>>2];s=P[f+12>>2];C=S(P[f+8>>2]-x);F=P[c+d>>2];q=S(C*S(-F));D=S(P[f+16>>2]-z);u=S(S(q*D)+u);P[i+140>>2]=u;s=S(s-A);y=S(S(q*s)+y);P[i+136>>2]=y;v=S(v-S(S(s*F)*D));P[i+156>>2]=v;q=S(C*C);s=S(s*s);H=S(S(F*S(q+s))+H);P[i+172>>2]=H;C=q;q=S(D*D);G=S(S(F*S(C+q))+G);P[i+152>>2]=G;w=S(S(F*S(s+q))+w);P[i+132>>2]=w;b=b+1|0;if((e|0)!=(b|0)){continue}break}}L[i+176>>2]=0;L[i+60>>2]=1065353216;L[i+160>>2]=0;L[i+144>>2]=0;b=i- -64|0;L[b>>2]=0;L[b+4>>2]=0;L[i+72>>2]=0;L[i+76>>2]=0;L[i+84>>2]=0;L[i+88>>2]=0;L[i+80>>2]=1065353216;L[i+92>>2]=0;L[i+96>>2]=0;s=S(S(y*v)-S(G*u));A=S(S(G*H)-S(v*v));x=S(S(v*u)-S(H*y));z=S(S(1)/S(S(u*s)+S(S(w*A)+S(x*y))));P[i+172>>2]=S(S(w*G)-S(y*y))*z;q=S(S(S(u*y)-S(v*w))*z);P[i+168>>2]=q;s=S(s*z);P[i+164>>2]=s;P[i+156>>2]=q;P[i+152>>2]=S(S(w*H)-S(u*u))*z;q=S(x*z);P[i+148>>2]=q;P[i+140>>2]=s;P[i+136>>2]=q;P[i+132>>2]=A*z;L[i+100>>2]=1065353216;L[i+104>>2]=0;b=L[i+232>>2];L[i+108>>2]=L[i+228>>2];L[i+112>>2]=b;b=L[i+240>>2];L[i+116>>2]=L[i+236>>2];L[i+120>>2]=b;d=L[i+44>>2];m=L[i+24>>2];if(!((d|0)>=(m|0)|(m|0)<=L[i+48>>2])){pa:{if(!m){e=0;break pa}L[8513]=L[8513]+1;e=ha[L[6798]](m<<4,16)|0;d=L[i+44>>2]}qa:{if((d|0)<=0){break qa}b=0;if((d|0)!=1){j=d&-2;r=0;while(1){f=b<<4;k=f+e|0;l=f+L[i+52>>2]|0;c=L[l+4>>2];L[k>>2]=L[l>>2];L[k+4>>2]=c;c=L[l+12>>2];L[k+8>>2]=L[l+8>>2];L[k+12>>2]=c;c=f|16;l=c+e|0;f=c+L[i+52>>2]|0;c=L[f+4>>2];L[l>>2]=L[f>>2];L[l+4>>2]=c;c=L[f+12>>2];L[l+8>>2]=L[f+8>>2];L[l+12>>2]=c;b=b+2|0;r=r+2|0;if((j|0)!=(r|0)){continue}break}}if(!(d&1)){break qa}b=b<<4;d=b+e|0;c=b+L[i+52>>2]|0;b=L[c+4>>2];L[d>>2]=L[c>>2];L[d+4>>2]=b;b=L[c+12>>2];L[d+8>>2]=L[c+8>>2];L[d+12>>2]=b}b=L[i+52>>2];if(!(b?!b|!M[i+56|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[i+52>>2]=e;J[i+56|0]=1;L[i+48>>2]=m}L[i+44>>2]=m;if((m|0)>0){b=0;while(1){c=L[L[i+32>>2]+(b<<2)>>2];C=P[c+12>>2];z=P[c+16>>2];A=P[c+8>>2];x=P[i+232>>2];s=P[i+236>>2];q=P[i+228>>2];c=L[i+52>>2]+(b<<4)|0;L[c+12>>2]=0;P[c>>2]=A-q;P[c+8>>2]=z-s;P[c+4>>2]=C-x;b=b+1|0;if((b|0)>2]){continue}break}}n=n+1|0;if((n|0)>2]){continue}break}}wk(a);r=L[a+1112>>2];k=R(r,r);d=L[a+1132>>2];if((k|0)>(d|0)){ra:{if((k|0)<=L[a+1136>>2]){b=L[a+1140>>2];break ra}sa:{if(!r){b=0;c=d;break sa}L[8513]=L[8513]+1;b=ha[L[6798]](k,16)|0;c=L[a+1132>>2]}m=L[a+1140>>2];ta:{if((c|0)>0){e=0;f=0;if(c>>>0>=4){l=c&-4;o=0;while(1){J[b+f|0]=M[f+m|0];j=f|1;J[j+b|0]=M[j+m|0];j=f|2;J[j+b|0]=M[j+m|0];j=f|3;J[j+b|0]=M[j+m|0];f=f+4|0;o=o+4|0;if((l|0)!=(o|0)){continue}break}}c=c&3;if(!c){break ta}while(1){J[b+f|0]=M[f+m|0];f=f+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}break ta}if(m){break ta}L[a+1140>>2]=b;L[a+1136>>2]=k;J[a+1144|0]=1;break ra}if(m?M[a+1144|0]:0){L[8514]=L[8514]+1;ha[L[6799]](m)}L[a+1140>>2]=b;J[a+1144|0]=1;L[a+1136>>2]=k}pa(b+d|0,0,k-d|0);r=L[a+1112>>2]}L[a+1132>>2]=k;if((r|0)<=0){break ea}k=L[a+1140>>2];n=L[a+1120>>2];t=0;while(1){p=L[n+(t<<2)>>2];L[p+380>>2]=t;g=L[p+24>>2];a=(g|0)>0;l=a?g:0;e=0;while(1){d=a;ua:{if((g|0)<=0){break ua}j=L[n+(e<<2)>>2];m=L[j+24>>2];o=0;while(1){if((m|0)>0){c=L[L[p+32>>2]+(o<<2)>>2];b=L[j+32>>2];f=0;while(1){if((c|0)==L[b+(f<<2)>>2]){break ua}f=f+1|0;if((m|0)!=(f|0)){continue}break}}o=o+1|0;d=(l|0)!=(o|0);if(d){continue}break}}J[k+(R(e,r)+t|0)|0]=d&1;e=e+1|0;if((r|0)!=(e|0)){continue}break}t=t+1|0;if((t|0)!=(r|0)){continue}break}}fa=E+16|0;return r}function gz(a){a=a|0;var b=0,c=0,d=0,e=0,f=S(0),g=S(0),h=S(0),i=0,j=0,k=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=0,y=S(0),z=S(0),A=0,B=0,C=0,D=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),T=S(0),U=S(0),V=S(0),W=S(0),X=0;Vk(a);if(!(!(ha[L[L[a>>2]+20>>2]](a)|0)|L[a+328>>2]<=0)){while(1){k=L[L[a+336>>2]+(E<<2)>>2];a:{if(!(ha[L[L[a>>2]+20>>2]](a)|0)){break a}d=ha[L[L[a>>2]+20>>2]](a)|0;if(!(ha[L[L[d>>2]+48>>2]](d)&1)){break a}i=L[a+72>>2];d=fa+-64|0;fa=d;b:{if(!M[k+473|0]){break b}c=L[k+532>>2];L[d+24>>2]=L[k+528>>2];L[d+28>>2]=c;c=L[k+524>>2];L[d+16>>2]=L[k+520>>2];L[d+20>>2]=c;f=P[k+576>>2];h=P[k+568>>2];g=P[k+572>>2];l=P[k+544>>2];m=P[k+536>>2];p=P[k+540>>2];r=P[k+624>>2];s=P[k+592>>2];t=P[k+608>>2];q=P[k+620>>2];u=P[k+588>>2];v=P[k+604>>2];w=P[k+616>>2];y=P[k+560>>2];z=P[k+584>>2];F=P[k+552>>2];G=P[k+600>>2];H=P[k+556>>2];L[d+60>>2]=0;I=S(S(r*f)+S(S(s*h)+S(t*g)));T=S(I*S(0));K=S(S(w*f)+S(S(z*h)+S(G*g)));N=S(S(q*f)+S(S(u*h)+S(v*g)));U=S(N*S(0));h=S(T+S(K+U));O=S(S(r*l)+S(S(s*m)+S(p*t)));V=S(O*S(0));Q=S(S(w*l)+S(S(z*m)+S(G*p)));p=S(S(q*l)+S(S(u*m)+S(p*v)));m=S(p*S(0));g=S(V+S(Q+m));r=S(S(r*y)+S(S(s*F)+S(t*H)));W=S(r*S(0));s=S(S(w*y)+S(S(z*F)+S(G*H)));t=S(S(q*y)+S(S(u*F)+S(v*H)));q=S(t*S(0));l=S(W+S(s+q));f=S(S(1)/S(_(S(S(h*h)+S(S(g*g)+S(l*l))))));P[d+56>>2]=P[d+24>>2]+S(S(h*f)*S(10));P[d+52>>2]=P[d+20>>2]+S(S(l*f)*S(10));P[d+48>>2]=P[d+16>>2]+S(S(g*f)*S(10));L[d+40>>2]=0;L[d+44>>2]=0;L[d+32>>2]=1065353216;L[d+36>>2]=0;c=d+16|0;b=d+48|0;j=d+32|0;ha[L[L[i>>2]+8>>2]](i,c,b,j);L[d+60>>2]=0;u=S(K*S(0));h=S(T+S(u+N));v=S(Q*S(0));g=S(V+S(v+p));w=S(s*S(0));l=S(W+S(w+t));f=S(S(1)/S(_(S(S(h*h)+S(S(g*g)+S(l*l))))));P[d+56>>2]=S(S(h*f)*S(10))+P[d+24>>2];P[d+52>>2]=S(S(l*f)*S(10))+P[d+20>>2];P[d+48>>2]=S(S(g*f)*S(10))+P[d+16>>2];L[d+40>>2]=0;L[d+44>>2]=0;L[d+32>>2]=0;L[d+36>>2]=1065353216;ha[L[L[i>>2]+8>>2]](i,c,b,j);L[d+60>>2]=0;h=S(I+S(u+U));g=S(S(v+m)+O);l=S(r+S(w+q));f=S(S(1)/S(_(S(S(h*h)+S(S(g*g)+S(l*l))))));P[d+56>>2]=S(S(h*f)*S(10))+P[d+24>>2];P[d+52>>2]=S(S(l*f)*S(10))+P[d+20>>2];P[d+48>>2]=S(S(g*f)*S(10))+P[d+16>>2];L[d+40>>2]=1065353216;L[d+44>>2]=0;L[d+32>>2]=0;L[d+36>>2]=0;ha[L[L[i>>2]+8>>2]](i,c,b,j);if(L[k+484>>2]<=0){break b}c=0;while(1){b=L[k+492>>2]+(c<<4)|0;g=P[b+8>>2];l=P[b>>2];m=P[b+4>>2];q=P[d+16>>2];h=P[d+20>>2];f=P[d+24>>2];L[d+8>>2]=1065353216;L[d+12>>2]=0;L[d>>2]=1065353216;L[d+4>>2]=0;L[d+60>>2]=0;f=S(f+S(S(I*g)+S(S(K*l)+S(N*m))));P[d+56>>2]=f;h=S(h+S(S(r*g)+S(S(s*l)+S(t*m))));P[d+52>>2]=h;g=S(q+S(S(O*g)+S(S(Q*l)+S(p*m))));P[d+48>>2]=g+S(-.10000000149011612);L[d+44>>2]=0;l=S(f+S(0));P[d+40>>2]=l;m=S(h+S(0));P[d+36>>2]=m;P[d+32>>2]=g+S(.10000000149011612);b=d+48|0;j=d+32|0;ha[L[L[i>>2]+8>>2]](i,b,j,d);L[d+60>>2]=0;P[d+56>>2]=f;P[d+52>>2]=h+S(-.10000000149011612);P[d+48>>2]=g;L[d+44>>2]=0;P[d+40>>2]=l;P[d+36>>2]=h+S(.10000000149011612);l=S(g+S(0));P[d+32>>2]=l;ha[L[L[i>>2]+8>>2]](i,b,j,d);L[d+60>>2]=0;P[d+56>>2]=f+S(-.10000000149011612);P[d+52>>2]=h;P[d+48>>2]=g;L[d+44>>2]=0;P[d+40>>2]=f+S(.10000000149011612);P[d+36>>2]=m;P[d+32>>2]=l;ha[L[L[i>>2]+8>>2]](i,b,j,d);c=c+1|0;if((c|0)>2]){continue}break}}fa=d- -64|0;j=L[a+72>>2];o=L[a+344>>2];d=0;C=0;b=fa-176|0;fa=b;L[b+152>>2]=0;L[b+156>>2]=0;L[b+144>>2]=0;L[b+148>>2]=0;L[b+136>>2]=1065353216;L[b+140>>2]=0;L[b+128>>2]=1065353216;L[b+132>>2]=1065353216;L[b+120>>2]=0;L[b+124>>2]=0;L[b+112>>2]=1065353216;L[b+116>>2]=0;c:{if(o&256){L[8528]=1805;L[8529]=0;e=L[k+1112>>2];if((e|0)<=0){break c}while(1){x=C<<2;if(M[L[x+L[k+1120>>2]>>2]+377|0]){D=0;c=mI(L[8528],L[8529],1284865837,1481765933);d=ga;c=c+1|0;d=c?d:d+1|0;L[8528]=c;L[8529]=d;i=mI(L[8528],L[8529],1284865837,1481765933);c=ga;i=i+1|0;c=i?c:c+1|0;L[8528]=i;L[8529]=c;e=mI(L[8528],L[8529],1284865837,1481765933);i=ga;e=e+1|0;i=e?i:i+1|0;L[8528]=e;L[8529]=i;L[b+172>>2]=0;f=S(S(i>>>1|0)*S(4.656612873077393e-10));m=f;q=S(f*f);f=S(S(d>>>1|0)*S(4.656612873077393e-10));h=S(S(c>>>1|0)*S(4.656612873077393e-10));g=S(S(1)/S(_(S(q+S(S(f*f)+S(h*h))))));P[b+168>>2]=S(m*g)*S(.75);P[b+164>>2]=S(h*g)*S(.75);P[b+160>>2]=S(f*g)*S(.75);n=0;d=L[L[x+L[k+1120>>2]>>2]+24>>2];d:{if((d|0)<=0){break d}e=0;L[8513]=L[8513]+1;n=ha[L[6798]](d<<4,16)|0;if((d|0)!=1){X=d&-2;i=0;while(1){c=L[L[L[x+L[k+1120>>2]>>2]+32>>2]+(e<<2)>>2];B=L[c+12>>2];A=(e<<4)+n|0;L[A>>2]=L[c+8>>2];L[A+4>>2]=B;B=L[c+20>>2];L[A+8>>2]=L[c+16>>2];L[A+12>>2]=B;c=e|1;A=(c<<4)+n|0;c=L[L[L[x+L[k+1120>>2]>>2]+32>>2]+(c<<2)>>2];B=L[c+12>>2];L[A>>2]=L[c+8>>2];L[A+4>>2]=B;B=L[c+20>>2];L[A+8>>2]=L[c+16>>2];L[A+12>>2]=B;e=e+2|0;i=i+2|0;if((X|0)!=(i|0)){continue}break}}if(!(d&1)){break d}i=(e<<4)+n|0;c=L[L[L[x+L[k+1120>>2]>>2]+32>>2]+(e<<2)>>2];e=L[c+12>>2];L[i>>2]=L[c+8>>2];L[i+4>>2]=e;e=L[c+20>>2];L[i+8>>2]=L[c+16>>2];L[i+12>>2]=e}L[b+60>>2]=0;J[b+64|0]=1;J[b+84|0]=1;L[b+52>>2]=0;L[b+56>>2]=0;L[b+80>>2]=0;J[b+104|0]=1;L[b+72>>2]=0;L[b+76>>2]=0;L[b+100>>2]=0;L[b+92>>2]=0;L[b+96>>2]=0;ag(b+48|0,n,d);i=L[b+92>>2];if((i|0)>0){while(1){x=L[b+80>>2]+R(L[L[b+100>>2]+(D<<2)>>2],12)|0;d=R(L[x+4>>2],12)+x|0;e=R(L[d>>2],12)+d|0;if((e|0)!=(x|0)){c=L[d+8>>2];d=L[x+8>>2];while(1){A=c<<4;c=L[b+60>>2];i=L[e+8>>2];ha[L[L[j>>2]+28>>2]](j,A+c|0,c+(d<<4)|0,c+(i<<4)|0,b+160|0,S(1));c=d;d=i;i=R(L[e+4>>2],12)+e|0;e=R(L[i>>2],12)+i|0;if((x|0)!=(e|0)){continue}break}i=L[b+92>>2]}D=D+1|0;if((i|0)>(D|0)){continue}break}}d=L[b+100>>2];if(!(d?!d|!M[b+104|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[b+100>>2]=0;J[b+104|0]=1;L[b+92>>2]=0;L[b+96>>2]=0;d=L[b+80>>2];if(!(d?!d|!M[b+84|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[b+80>>2]=0;J[b+84|0]=1;L[b+72>>2]=0;L[b+76>>2]=0;d=L[b+60>>2];if(!(d?!d|!M[b+64|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}if(n){L[8514]=L[8514]+1;ha[L[6799]](n)}e=L[k+1112>>2]}C=C+1|0;if((C|0)<(e|0)){continue}break}break c}e:{if(!(o&1)){break e}i=L[k+712>>2];if((i|0)<=0){break e}while(1){c=L[k+720>>2]+R(d,104)|0;if(J[L[c+4>>2]+16|0]&1){f=P[c+8>>2];i=L[c+12>>2];e=L[c+16>>2];L[b+60>>2]=0;L[b+52>>2]=i;L[b+56>>2]=e;P[b+48>>2]=f+S(-.10000000149011612);f=P[c+8>>2];h=P[c+12>>2];g=P[c+16>>2];L[b+172>>2]=0;P[b+168>>2]=g+S(0);P[b+164>>2]=h+S(0);P[b+160>>2]=f+S(.10000000149011612);L[b+40>>2]=0;L[b+44>>2]=0;L[b+32>>2]=1065353216;L[b+36>>2]=0;i=b+48|0;e=b+160|0;n=b+32|0;ha[L[L[j>>2]+8>>2]](j,i,e,n);f=P[c+12>>2];h=P[c+8>>2];g=P[c+16>>2];L[b+60>>2]=0;P[b+56>>2]=g;P[b+48>>2]=h;P[b+52>>2]=f+S(-.10000000149011612);f=P[c+8>>2];h=P[c+12>>2];g=P[c+16>>2];L[b+172>>2]=0;P[b+168>>2]=g+S(0);P[b+164>>2]=h+S(.10000000149011612);P[b+160>>2]=f+S(0);L[b+40>>2]=0;L[b+44>>2]=0;L[b+32>>2]=0;L[b+36>>2]=1065353216;ha[L[L[j>>2]+8>>2]](j,i,e,n);f=P[c+16>>2];x=L[c+8>>2];C=L[c+12>>2];L[b+60>>2]=0;L[b+48>>2]=x;L[b+52>>2]=C;P[b+56>>2]=f+S(-.10000000149011612);f=P[c+8>>2];h=P[c+12>>2];g=P[c+16>>2];L[b+172>>2]=0;P[b+168>>2]=g+S(.10000000149011612);P[b+164>>2]=h+S(0);P[b+160>>2]=f+S(0);L[b+40>>2]=1065353216;L[b+44>>2]=0;L[b+32>>2]=0;L[b+36>>2]=0;ha[L[L[j>>2]+8>>2]](j,i,e,n);i=L[k+712>>2]}d=d+1|0;if((i|0)>(d|0)){continue}break}}f:{if(!(o&2)){break f}i=L[k+732>>2];if((i|0)<=0){break f}e=0;while(1){d=L[k+740>>2]+R(e,52)|0;if(J[L[d+4>>2]+16|0]&1){ha[L[L[j>>2]+8>>2]](j,L[d+8>>2]+8|0,L[d+12>>2]+8|0,b+144|0);i=L[k+732>>2]}e=e+1|0;if((i|0)>(e|0)){continue}break}}g:{if(!(o&16)){break g}i=L[k+712>>2];if((i|0)<=0){break g}d=0;while(1){c=L[k+720>>2]+R(d,104)|0;if(J[L[c+4>>2]+16|0]&1){f=P[c+72>>2];h=P[c+76>>2];g=P[c+80>>2];l=P[c+8>>2];m=P[c+12>>2];p=P[c+16>>2];L[b+60>>2]=0;g=S(g*S(.5));P[b+56>>2]=p+g;h=S(h*S(.5));P[b+52>>2]=m+h;f=S(f*S(.5));P[b+48>>2]=l+f;i=c+8|0;e=b+48|0;ha[L[L[j>>2]+8>>2]](j,i,e,b+128|0);l=P[c+8>>2];m=P[c+12>>2];p=P[c+16>>2];L[b+60>>2]=0;P[b+56>>2]=p-g;P[b+52>>2]=m-h;P[b+48>>2]=l-f;L[b+172>>2]=0;P[b+168>>2]=P[b+136>>2]*S(.5);P[b+164>>2]=P[b+132>>2]*S(.5);P[b+160>>2]=P[b+128>>2]*S(.5);ha[L[L[j>>2]+8>>2]](j,i,e,b+160|0);i=L[k+712>>2]}d=d+1|0;if((i|0)>(d|0)){continue}break}}h:{if(!(o&32)){break h}if(!M[34048]){L[8501]=0;L[8502]=0;L[8500]=1065353216;L[8503]=0;L[8504]=0;L[8506]=0;L[8507]=0;L[8505]=1065353216;L[8508]=0;L[8509]=0;L[8510]=1065353216;L[8511]=0;J[34048]=1}if(L[k+812>>2]<=0){break h}d=0;while(1){c=L[k+820>>2]+R(d,104)|0;r=P[c+20>>2];f=P[c+12>>2];i=L[c+24>>2];h=P[i+16>>2];g=P[c+8>>2];l=P[i+12>>2];m=P[c+4>>2];p=P[i+8>>2];L[b+60>>2]=0;q=m;m=S(r+S(S(h*f)+S(S(p*m)+S(l*g))));p=S(p-S(q*m));P[b+48>>2]=p;r=S(l-S(g*m));P[b+52>>2]=r;m=S(h-S(f*m));P[b+56>>2]=m;f=P[c+4>>2];h=P[c+8>>2];i=f>2];i=(g>(i?f:h)?!i:2)<<4;l=P[i+34004>>2];s=P[i+34e3>>2];t=P[i+34008>>2];L[b+172>>2]=0;q=S(S(f*l)-S(s*h));u=S(S(h*t)-S(l*g));s=S(S(g*s)-S(t*f));l=S(S(1)/S(_(S(S(q*q)+S(S(u*u)+S(s*s))))));t=S(q*l);q=S(t*S(.5));P[b+168>>2]=m-q;s=S(s*l);v=S(s*S(.5));P[b+164>>2]=r-v;l=S(u*l);u=S(l*S(.5));P[b+160>>2]=p-u;L[b+44>>2]=0;P[b+40>>2]=m+q;P[b+36>>2]=r+v;P[b+32>>2]=p+u;i=b+160|0;e=b+32|0;n=b+112|0;ha[L[L[j>>2]+8>>2]](j,i,e,n);L[b+172>>2]=0;m=S(S(l*h)-S(f*s));h=S(S(s*g)-S(h*t));g=S(S(t*f)-S(g*l));f=S(S(1)/S(_(S(S(m*m)+S(S(h*h)+S(g*g))))));l=P[b+56>>2];m=S(S(m*f)*S(.5));P[b+168>>2]=l-m;p=P[b+52>>2];g=S(S(g*f)*S(.5));P[b+164>>2]=p-g;r=P[b+48>>2];f=S(S(h*f)*S(.5));P[b+160>>2]=r-f;L[b+44>>2]=0;P[b+40>>2]=m+l;P[b+36>>2]=g+p;P[b+32>>2]=f+r;ha[L[L[j>>2]+8>>2]](j,i,e,n);f=P[c+4>>2];h=P[c+8>>2];g=P[c+12>>2];L[b+172>>2]=0;P[b+168>>2]=S(S(g*S(.5))*S(3))+P[b+56>>2];P[b+164>>2]=S(S(h*S(.5))*S(3))+P[b+52>>2];P[b+160>>2]=S(S(f*S(.5))*S(3))+P[b+48>>2];L[b+40>>2]=0;L[b+44>>2]=0;L[b+32>>2]=1065353216;L[b+36>>2]=1065353216;ha[L[L[j>>2]+8>>2]](j,b+48|0,i,e);d=d+1|0;if((d|0)>2]){continue}break}}i:{if(!(o&4)){break i}L[b+56>>2]=0;L[b+60>>2]=0;L[b+48>>2]=0;L[b+52>>2]=1060320051;i=L[k+752>>2];if((i|0)<=0){break i}e=0;while(1){d=L[k+760>>2]+R(e,44)|0;if(J[L[d+4>>2]+16|0]&1){c=L[d+16>>2];l=P[c+12>>2];i=L[d+8>>2];m=P[i+12>>2];d=L[d+12>>2];p=P[d+12>>2];r=P[c+16>>2];g=P[i+16>>2];s=P[d+16>>2];t=P[c+8>>2];h=P[i+8>>2];q=P[d+8>>2];L[b+172>>2]=0;f=S(S(t+S(h+q))*S(.3333333432674408));P[b+160>>2]=f+S(S(h-f)*S(.800000011920929));h=S(S(r+S(g+s))*S(.3333333432674408));P[b+168>>2]=h+S(S(g-h)*S(.800000011920929));g=S(S(l+S(m+p))*S(.3333333432674408));P[b+164>>2]=g+S(S(m-g)*S(.800000011920929));L[b+44>>2]=0;P[b+40>>2]=h+S(S(s-h)*S(.800000011920929));P[b+36>>2]=g+S(S(p-g)*S(.800000011920929));P[b+32>>2]=f+S(S(q-f)*S(.800000011920929));L[b+28>>2]=0;P[b+24>>2]=h+S(S(r-h)*S(.800000011920929));P[b+20>>2]=g+S(S(l-g)*S(.800000011920929));P[b+16>>2]=f+S(S(t-f)*S(.800000011920929));ha[L[L[j>>2]+28>>2]](j,b+160|0,b+32|0,b+16|0,b+48|0,S(1));i=L[k+752>>2]}e=e+1|0;if((i|0)>(e|0)){continue}break}}if(!(o&8)){break c}L[b+56>>2]=1060320051;L[b+60>>2]=0;L[b+48>>2]=1050253722;L[b+52>>2]=1050253722;i=L[k+772>>2];if((i|0)<=0){break c}e=0;while(1){d=L[k+780>>2]+R(e,104)|0;if(J[L[d+4>>2]+16|0]&1){c=L[d+20>>2];l=P[c+12>>2];i=L[d+16>>2];m=P[i+12>>2];n=L[d+8>>2];p=P[n+12>>2];d=L[d+12>>2];r=P[d+12>>2];s=P[c+16>>2];t=P[i+16>>2];g=P[n+16>>2];q=P[d+16>>2];u=P[c+8>>2];v=P[i+8>>2];h=P[n+8>>2];w=P[d+8>>2];L[b+172>>2]=0;f=S(S(u+S(v+S(h+w)))*S(.25));y=S(f+S(S(h-f)*S(.800000011920929)));P[b+160>>2]=y;h=S(S(s+S(t+S(g+q)))*S(.25));z=S(h+S(S(g-h)*S(.800000011920929)));P[b+168>>2]=z;g=S(S(l+S(m+S(p+r)))*S(.25));p=S(g+S(S(p-g)*S(.800000011920929)));P[b+164>>2]=p;L[b+44>>2]=0;q=S(h+S(S(q-h)*S(.800000011920929)));P[b+40>>2]=q;r=S(g+S(S(r-g)*S(.800000011920929)));P[b+36>>2]=r;w=S(f+S(S(w-f)*S(.800000011920929)));P[b+32>>2]=w;L[b+28>>2]=0;t=S(h+S(S(t-h)*S(.800000011920929)));P[b+24>>2]=t;m=S(g+S(S(m-g)*S(.800000011920929)));P[b+20>>2]=m;v=S(f+S(S(v-f)*S(.800000011920929)));P[b+16>>2]=v;d=b+160|0;c=b+32|0;i=b+16|0;n=b+48|0;ha[L[L[j>>2]+28>>2]](j,d,c,i,n,S(1));L[b+172>>2]=0;P[b+168>>2]=z;P[b+164>>2]=p;P[b+160>>2]=y;L[b+44>>2]=0;P[b+40>>2]=q;P[b+36>>2]=r;P[b+32>>2]=w;L[b+28>>2]=0;h=S(h+S(S(s-h)*S(.800000011920929)));P[b+24>>2]=h;g=S(g+S(S(l-g)*S(.800000011920929)));P[b+20>>2]=g;f=S(f+S(S(u-f)*S(.800000011920929)));P[b+16>>2]=f;ha[L[L[j>>2]+28>>2]](j,d,c,i,n,S(1));L[b+172>>2]=0;P[b+168>>2]=q;P[b+164>>2]=r;P[b+160>>2]=w;L[b+44>>2]=0;P[b+40>>2]=t;P[b+36>>2]=m;P[b+32>>2]=v;L[b+28>>2]=0;P[b+24>>2]=h;P[b+20>>2]=g;P[b+16>>2]=f;ha[L[L[j>>2]+28>>2]](j,d,c,i,n,S(1));L[b+172>>2]=0;P[b+168>>2]=t;P[b+164>>2]=m;P[b+160>>2]=v;L[b+44>>2]=0;P[b+40>>2]=z;P[b+36>>2]=p;P[b+32>>2]=y;L[b+28>>2]=0;P[b+24>>2]=h;P[b+20>>2]=g;P[b+16>>2]=f;ha[L[L[j>>2]+28>>2]](j,d,c,i,n,S(1));i=L[k+772>>2]}e=e+1|0;if((i|0)>(e|0)){continue}break}}j:{if(!(o&64)){break j}if(L[k+792>>2]>0){i=0;while(1){e=L[k+800>>2]+R(i,96)|0;d=L[e+20>>2];l=P[d+52>>2];m=P[d+12>>2];p=P[d+8>>2];r=P[d+4>>2];s=P[d+56>>2];t=P[d+28>>2];q=P[d+20>>2];u=P[d+24>>2];v=P[d+60>>2];f=P[e+12>>2];w=P[d+44>>2];h=P[e+4>>2];y=P[d+36>>2];g=P[e+8>>2];z=P[d+40>>2];L[b+44>>2]=0;P[b+40>>2]=v+S(S(f*w)+S(S(h*y)+S(g*z)));P[b+36>>2]=s+S(S(f*t)+S(S(h*q)+S(g*u)));P[b+32>>2]=l+S(S(f*m)+S(S(h*r)+S(g*p)));d=L[e>>2];L[b+24>>2]=0;L[b+28>>2]=0;L[b+16>>2]=1065353216;L[b+20>>2]=0;f=P[d+8>>2];h=P[d+12>>2];g=P[d+16>>2];L[b+60>>2]=0;P[b+56>>2]=g;P[b+52>>2]=h;P[b+48>>2]=f+S(-.25);L[b+172>>2]=0;P[b+168>>2]=g+S(0);P[b+164>>2]=h+S(0);P[b+160>>2]=f+S(.25);c=b+48|0;n=b+160|0;x=b+16|0;ha[L[L[j>>2]+8>>2]](j,c,n,x);f=P[d+12>>2];h=P[d+8>>2];g=P[d+16>>2];L[b+60>>2]=0;P[b+56>>2]=g;P[b+48>>2]=h;P[b+52>>2]=f+S(-.25);L[b+172>>2]=0;P[b+168>>2]=g+S(0);P[b+164>>2]=f+S(.25);P[b+160>>2]=h+S(0);ha[L[L[j>>2]+8>>2]](j,c,n,x);f=P[d+16>>2];h=P[d+8>>2];g=P[d+12>>2];L[b+60>>2]=0;P[b+52>>2]=g;P[b+48>>2]=h;P[b+56>>2]=f+S(-.25);L[b+172>>2]=0;P[b+168>>2]=f+S(.25);P[b+164>>2]=g+S(0);P[b+160>>2]=h+S(0);ha[L[L[j>>2]+8>>2]](j,c,n,x);L[b+24>>2]=0;L[b+28>>2]=0;L[b+16>>2]=0;L[b+20>>2]=1065353216;L[b+60>>2]=0;f=P[b+40>>2];P[b+56>>2]=f;h=P[b+36>>2];P[b+52>>2]=h;g=P[b+32>>2];P[b+48>>2]=g+S(-.25);L[b+172>>2]=0;P[b+168>>2]=f+S(0);P[b+164>>2]=h+S(0);P[b+160>>2]=g+S(.25);ha[L[L[j>>2]+8>>2]](j,c,n,x);L[b+60>>2]=0;f=P[b+40>>2];P[b+56>>2]=f;h=P[b+36>>2];P[b+52>>2]=h+S(-.25);g=P[b+32>>2];P[b+48>>2]=g;L[b+172>>2]=0;P[b+168>>2]=f+S(0);P[b+164>>2]=h+S(.25);P[b+160>>2]=g+S(0);ha[L[L[j>>2]+8>>2]](j,c,n,x);L[b+60>>2]=0;f=P[b+40>>2];P[b+56>>2]=f+S(-.25);h=P[b+36>>2];P[b+52>>2]=h;g=P[b+32>>2];P[b+48>>2]=g;L[b+172>>2]=0;P[b+168>>2]=f+S(.25);P[b+164>>2]=h+S(0);P[b+160>>2]=g+S(0);ha[L[L[j>>2]+8>>2]](j,c,n,x);d=L[e>>2];L[b+56>>2]=1065353216;L[b+60>>2]=0;L[b+48>>2]=1065353216;L[b+52>>2]=1065353216;ha[L[L[j>>2]+8>>2]](j,d+8|0,b+32|0,c);i=i+1|0;if((i|0)>2]){continue}break}}i=L[k+712>>2];if((i|0)<=0){break j}d=0;while(1){c=L[k+720>>2]+R(d,104)|0;if(!(!(J[L[c+4>>2]+16|0]&1)|!(P[c+88>>2]<=S(0)))){L[b+40>>2]=0;L[b+44>>2]=0;L[b+32>>2]=1065353216;L[b+36>>2]=0;f=P[c+8>>2];h=P[c+12>>2];g=P[c+16>>2];L[b+60>>2]=0;P[b+56>>2]=g;P[b+52>>2]=h;P[b+48>>2]=f+S(-.25);L[b+172>>2]=0;P[b+168>>2]=g+S(0);P[b+164>>2]=h+S(0);P[b+160>>2]=f+S(.25);i=b+48|0;e=b+160|0;n=b+32|0;ha[L[L[j>>2]+8>>2]](j,i,e,n);f=P[c+12>>2];h=P[c+8>>2];g=P[c+16>>2];L[b+60>>2]=0;P[b+56>>2]=g;P[b+48>>2]=h;P[b+52>>2]=f+S(-.25);L[b+172>>2]=0;P[b+168>>2]=g+S(0);P[b+164>>2]=f+S(.25);P[b+160>>2]=h+S(0);ha[L[L[j>>2]+8>>2]](j,i,e,n);f=P[c+16>>2];h=P[c+8>>2];g=P[c+12>>2];L[b+60>>2]=0;P[b+52>>2]=g;P[b+48>>2]=h;P[b+56>>2]=f+S(-.25);L[b+172>>2]=0;P[b+168>>2]=f+S(.25);P[b+164>>2]=g+S(0);P[b+160>>2]=h+S(0);ha[L[L[j>>2]+8>>2]](j,i,e,n);i=L[k+712>>2]}d=d+1|0;if((i|0)>(d|0)){continue}break}}if(!(!(o&128)|L[k+692>>2]<=0)){c=0;while(1){d=L[k+700>>2]+R(c,60)|0;i=L[d+20>>2];L[b+56>>2]=L[d+16>>2];L[b+60>>2]=i;i=L[d+12>>2];L[b+48>>2]=L[d+8>>2];L[b+52>>2]=i;n=L[d+24>>2];if((n|0)>0){e=0;f=P[b+56>>2];h=P[b+52>>2];g=P[b+48>>2];while(1){x=d+(e<<2)|0;i=L[x+28>>2];m=P[i+12>>2];p=P[i+16>>2];l=P[x+44>>2];g=S(S(P[i+8>>2]*l)+g);P[b+48>>2]=g;f=S(S(l*p)+f);P[b+56>>2]=f;h=S(S(l*m)+h);P[b+52>>2]=h;e=e+1|0;if((n|0)!=(e|0)){continue}break}}ha[L[L[j>>2]+40>>2]](j,b+48|0,L[d+4>>2]);c=c+1|0;if((c|0)>2]){continue}break}}if(o&512){d=L[k+928>>2];L[b+56>>2]=1065353216;L[b+60>>2]=0;L[b+48>>2]=1065353216;L[b+52>>2]=0;L[b+168>>2]=1065353216;L[b+172>>2]=0;L[b+160>>2]=1065353216;L[b+164>>2]=1065353216;Ob(j,d,0,b+48|0,b+160|0,0,-1)}if(o&1024){d=L[k+988>>2];L[b+56>>2]=0;L[b+60>>2]=0;L[b+48>>2]=0;L[b+52>>2]=1065353216;L[b+168>>2]=0;L[b+172>>2]=0;L[b+160>>2]=1065353216;L[b+164>>2]=0;Ob(j,d,0,b+48|0,b+160|0,0,-1)}if(o&2048){d=L[k+1048>>2];L[b+56>>2]=1065353216;L[b+60>>2]=0;L[b+48>>2]=0;L[b+52>>2]=1065353216;L[b+168>>2]=0;L[b+172>>2]=0;L[b+160>>2]=1065353216;L[b+164>>2]=0;Ob(j,d,0,b+48|0,b+160|0,0,-1)}if(!(!(o&4096)|L[k+852>>2]<=0)){i=0;while(1){k:{l:{m:{d=L[L[k+860>>2]+(i<<2)>>2];switch(ha[L[L[d>>2]+20>>2]](d)|0){case 1:break l;case 0:break m;default:break k}}c=M[33872];if(!(c&1)){c=$a();e=L[c+4>>2];L[8452]=L[c>>2];L[8453]=e;e=L[c+12>>2];L[8454]=L[c+8>>2];L[8455]=e;e=L[c+20>>2];L[8456]=L[c+16>>2];L[8457]=e;e=L[c+28>>2];L[8458]=L[c+24>>2];L[8459]=e;e=L[c+36>>2];L[8460]=L[c+32>>2];L[8461]=e;e=L[c+44>>2];L[8462]=L[c+40>>2];L[8463]=e;e=L[c+56>>2];o=L[c+60>>2];n=L[c+48>>2];c=L[c+52>>2];J[33872]=1;L[8466]=e;L[8467]=o;L[8464]=n;L[8465]=c;c=1}e=L[d+12>>2];o=L[d+4>>2];e=e?e+4|0:o?o+60|0:33808;l=P[e+52>>2];m=P[e+24>>2];p=P[e+20>>2];r=P[e+16>>2];s=P[e+56>>2];t=P[e+40>>2];q=P[e+36>>2];u=P[e+32>>2];v=P[e+48>>2];w=P[e+8>>2];y=P[e>>2];z=P[e+4>>2];f=P[d+36>>2];h=P[d+32>>2];g=P[d+28>>2];L[b+44>>2]=0;P[b+32>>2]=v+S(S(f*w)+S(S(g*y)+S(h*z)));P[b+40>>2]=s+S(S(f*t)+S(S(g*u)+S(h*q)));P[b+36>>2]=l+S(S(f*m)+S(S(g*r)+S(h*p)));if(!(c&1)){c=$a();e=L[c+4>>2];L[8452]=L[c>>2];L[8453]=e;e=L[c+12>>2];L[8454]=L[c+8>>2];L[8455]=e;e=L[c+20>>2];L[8456]=L[c+16>>2];L[8457]=e;e=L[c+28>>2];L[8458]=L[c+24>>2];L[8459]=e;e=L[c+36>>2];L[8460]=L[c+32>>2];L[8461]=e;e=L[c+44>>2];L[8462]=L[c+40>>2];L[8463]=e;e=L[c+56>>2];o=L[c+60>>2];n=L[c+48>>2];c=L[c+52>>2];J[33872]=1;L[8466]=e;L[8467]=o;L[8464]=n;L[8465]=c;c=1}e=L[d+24>>2];o=L[d+16>>2];e=e?e+4|0:o?o+60|0:33808;l=P[e+52>>2];m=P[e+24>>2];p=P[e+20>>2];r=P[e+16>>2];s=P[e+56>>2];t=P[e+40>>2];q=P[e+36>>2];u=P[e+32>>2];v=P[e+48>>2];w=P[e+8>>2];y=P[e>>2];z=P[e+4>>2];f=P[d+52>>2];h=P[d+44>>2];g=P[d+48>>2];L[b+28>>2]=0;P[b+16>>2]=v+S(S(f*w)+S(S(h*y)+S(g*z)));P[b+24>>2]=s+S(S(f*t)+S(S(h*u)+S(g*q)));P[b+20>>2]=l+S(S(f*m)+S(S(h*r)+S(g*p)));if(!(c&1)){c=$a();e=L[c+4>>2];L[8452]=L[c>>2];L[8453]=e;e=L[c+12>>2];L[8454]=L[c+8>>2];L[8455]=e;e=L[c+20>>2];L[8456]=L[c+16>>2];L[8457]=e;e=L[c+28>>2];L[8458]=L[c+24>>2];L[8459]=e;e=L[c+36>>2];L[8460]=L[c+32>>2];L[8461]=e;e=L[c+44>>2];L[8462]=L[c+40>>2];L[8463]=e;e=L[c+56>>2];o=L[c+60>>2];n=L[c+48>>2];c=L[c+52>>2];J[33872]=1;L[8466]=e;L[8467]=o;L[8464]=n;L[8465]=c}c=L[d+12>>2];e=L[d+4>>2];L[b+56>>2]=0;L[b+60>>2]=0;L[b+48>>2]=1065353216;L[b+52>>2]=1065353216;ha[L[L[j>>2]+8>>2]](j,(c?c+4|0:e?e+60|0:33808)+48|0,b+32|0,b+48|0);if(!(J[33872]&1)){c=$a();e=L[c+4>>2];L[8452]=L[c>>2];L[8453]=e;e=L[c+12>>2];L[8454]=L[c+8>>2];L[8455]=e;e=L[c+20>>2];L[8456]=L[c+16>>2];L[8457]=e;e=L[c+28>>2];L[8458]=L[c+24>>2];L[8459]=e;e=L[c+36>>2];L[8460]=L[c+32>>2];L[8461]=e;e=L[c+44>>2];L[8462]=L[c+40>>2];L[8463]=e;e=L[c+56>>2];o=L[c+60>>2];n=L[c+48>>2];c=L[c+52>>2];J[33872]=1;L[8466]=e;L[8467]=o;L[8464]=n;L[8465]=c}c=L[d+24>>2];d=L[d+16>>2];L[b+56>>2]=1065353216;L[b+60>>2]=0;L[b+48>>2]=0;L[b+52>>2]=1065353216;c=(c?c+4|0:d?d+60|0:33808)+48|0;d=b+48|0;ha[L[L[j>>2]+8>>2]](j,c,b+16|0,d);L[b+8>>2]=0;L[b+12>>2]=0;L[b>>2]=1065353216;L[b+4>>2]=1065353216;L[b+60>>2]=0;f=P[b+40>>2];P[b+56>>2]=f;h=P[b+36>>2];P[b+52>>2]=h;g=P[b+32>>2];P[b+48>>2]=g+S(-.25);L[b+172>>2]=0;P[b+168>>2]=f+S(0);P[b+164>>2]=h+S(0);P[b+160>>2]=g+S(.25);c=b+160|0;ha[L[L[j>>2]+8>>2]](j,d,c,b);L[b+60>>2]=0;f=P[b+40>>2];P[b+56>>2]=f;h=P[b+36>>2];P[b+52>>2]=h+S(-.25);g=P[b+32>>2];P[b+48>>2]=g;L[b+172>>2]=0;P[b+168>>2]=f+S(0);P[b+164>>2]=h+S(.25);P[b+160>>2]=g+S(0);ha[L[L[j>>2]+8>>2]](j,d,c,b);L[b+60>>2]=0;f=P[b+40>>2];P[b+56>>2]=f+S(-.25);h=P[b+36>>2];P[b+52>>2]=h;g=P[b+32>>2];P[b+48>>2]=g;L[b+172>>2]=0;P[b+168>>2]=f+S(.25);P[b+164>>2]=h+S(0);P[b+160>>2]=g+S(0);ha[L[L[j>>2]+8>>2]](j,d,c,b);L[b+8>>2]=1065353216;L[b+12>>2]=0;L[b>>2]=0;L[b+4>>2]=1065353216;L[b+60>>2]=0;f=P[b+24>>2];P[b+56>>2]=f;h=P[b+20>>2];P[b+52>>2]=h;g=P[b+16>>2];P[b+48>>2]=g+S(-.25);L[b+172>>2]=0;P[b+168>>2]=f+S(0);P[b+164>>2]=h+S(0);P[b+160>>2]=g+S(.25);ha[L[L[j>>2]+8>>2]](j,d,c,b);L[b+60>>2]=0;f=P[b+24>>2];P[b+56>>2]=f;h=P[b+20>>2];P[b+52>>2]=h+S(-.25);g=P[b+16>>2];P[b+48>>2]=g;L[b+172>>2]=0;P[b+168>>2]=f+S(0);P[b+164>>2]=h+S(.25);P[b+160>>2]=g+S(0);ha[L[L[j>>2]+8>>2]](j,d,c,b);L[b+60>>2]=0;f=P[b+24>>2];P[b+56>>2]=f+S(-.25);h=P[b+20>>2];P[b+52>>2]=h;g=P[b+16>>2];P[b+48>>2]=g;L[b+172>>2]=0;P[b+168>>2]=f+S(.25);P[b+164>>2]=h+S(0);P[b+160>>2]=g+S(0);ha[L[L[j>>2]+8>>2]](j,d,c,b);break k}c=M[33872];if(!(c&1)){c=$a();e=L[c+4>>2];L[8452]=L[c>>2];L[8453]=e;e=L[c+12>>2];L[8454]=L[c+8>>2];L[8455]=e;e=L[c+20>>2];L[8456]=L[c+16>>2];L[8457]=e;e=L[c+28>>2];L[8458]=L[c+24>>2];L[8459]=e;e=L[c+36>>2];L[8460]=L[c+32>>2];L[8461]=e;e=L[c+44>>2];L[8462]=L[c+40>>2];L[8463]=e;e=L[c+56>>2];o=L[c+60>>2];n=L[c+48>>2];c=L[c+52>>2];J[33872]=1;L[8466]=e;L[8467]=o;L[8464]=n;L[8465]=c;c=1}e=L[d+12>>2];o=L[d+4>>2];e=e?e+4|0:o?o+60|0:33808;o=L[e+60>>2];L[b+56>>2]=L[e+56>>2];L[b+60>>2]=o;o=L[e+52>>2];L[b+48>>2]=L[e+48>>2];L[b+52>>2]=o;if(!(c&1)){c=$a();e=L[c+4>>2];L[8452]=L[c>>2];L[8453]=e;e=L[c+12>>2];L[8454]=L[c+8>>2];L[8455]=e;e=L[c+20>>2];L[8456]=L[c+16>>2];L[8457]=e;e=L[c+28>>2];L[8458]=L[c+24>>2];L[8459]=e;e=L[c+36>>2];L[8460]=L[c+32>>2];L[8461]=e;e=L[c+44>>2];L[8462]=L[c+40>>2];L[8463]=e;e=L[c+56>>2];o=L[c+60>>2];n=L[c+48>>2];c=L[c+52>>2];J[33872]=1;L[8466]=e;L[8467]=o;L[8464]=n;L[8465]=c;c=1}e=L[d+24>>2];o=L[d+16>>2];e=e?e+4|0:o?o+60|0:33808;o=L[e+60>>2];L[b+168>>2]=L[e+56>>2];L[b+172>>2]=o;o=L[e+52>>2];L[b+160>>2]=L[e+48>>2];L[b+164>>2]=o;if(!(c&1)){c=$a();e=L[c+4>>2];L[8452]=L[c>>2];L[8453]=e;e=L[c+12>>2];L[8454]=L[c+8>>2];L[8455]=e;e=L[c+20>>2];L[8456]=L[c+16>>2];L[8457]=e;e=L[c+28>>2];L[8458]=L[c+24>>2];L[8459]=e;e=L[c+36>>2];L[8460]=L[c+32>>2];L[8461]=e;e=L[c+44>>2];L[8462]=L[c+40>>2];L[8463]=e;e=L[c+56>>2];o=L[c+60>>2];n=L[c+48>>2];c=L[c+52>>2];J[33872]=1;L[8466]=e;L[8467]=o;L[8464]=n;L[8465]=c;c=1}e=L[d+12>>2];o=L[d+4>>2];e=e?e+4|0:o?o+60|0:33808;f=P[d+36>>2];h=P[d+28>>2];g=P[d+32>>2];l=S(S(P[e+8>>2]*f)+S(S(P[e>>2]*h)+S(P[e+4>>2]*g)));m=S(S(P[e+40>>2]*f)+S(S(P[e+32>>2]*h)+S(g*P[e+36>>2])));p=S(S(P[e+24>>2]*f)+S(S(P[e+16>>2]*h)+S(g*P[e+20>>2])));if(!(c&1)){c=$a();e=L[c+4>>2];L[8452]=L[c>>2];L[8453]=e;e=L[c+12>>2];L[8454]=L[c+8>>2];L[8455]=e;e=L[c+20>>2];L[8456]=L[c+16>>2];L[8457]=e;e=L[c+28>>2];L[8458]=L[c+24>>2];L[8459]=e;e=L[c+36>>2];L[8460]=L[c+32>>2];L[8461]=e;e=L[c+44>>2];L[8462]=L[c+40>>2];L[8463]=e;e=L[c+56>>2];o=L[c+60>>2];n=L[c+48>>2];c=L[c+52>>2];J[33872]=1;L[8466]=e;L[8467]=o;L[8464]=n;L[8465]=c}c=L[d+24>>2];e=L[d+16>>2];c=c?c+4|0:e?e+60|0:33808;r=P[c+8>>2];s=P[c>>2];t=P[c+4>>2];q=P[c+24>>2];u=P[c+20>>2];v=P[c+16>>2];w=P[c+40>>2];y=P[c+36>>2];z=P[c+32>>2];f=P[d+52>>2];h=P[d+48>>2];g=P[d+44>>2];L[b+44>>2]=0;m=S(m*S(10));P[b+40>>2]=m+P[b+56>>2];p=S(p*S(10));P[b+36>>2]=p+P[b+52>>2];l=S(l*S(10));P[b+32>>2]=l+P[b+48>>2];L[b+24>>2]=0;L[b+28>>2]=0;L[b+16>>2]=1065353216;L[b+20>>2]=1065353216;e=b+48|0;d=b+32|0;c=b+16|0;ha[L[L[j>>2]+8>>2]](j,e,d,c);L[b+44>>2]=0;w=S(S(S(w*f)+S(S(z*g)+S(h*y)))*S(10));P[b+40>>2]=w+P[b+56>>2];q=S(S(S(q*f)+S(S(v*g)+S(h*u)))*S(10));P[b+36>>2]=q+P[b+52>>2];f=S(S(S(r*f)+S(S(s*g)+S(t*h)))*S(10));P[b+32>>2]=f+P[b+48>>2];L[b+24>>2]=0;L[b+28>>2]=0;L[b+16>>2]=1065353216;L[b+20>>2]=1065353216;ha[L[L[j>>2]+8>>2]](j,e,d,c);L[b+44>>2]=0;P[b+40>>2]=m+P[b+168>>2];P[b+36>>2]=p+P[b+164>>2];P[b+32>>2]=l+P[b+160>>2];L[b+24>>2]=1065353216;L[b+28>>2]=0;L[b+16>>2]=0;L[b+20>>2]=1065353216;e=b+160|0;ha[L[L[j>>2]+8>>2]](j,e,d,c);L[b+44>>2]=0;P[b+40>>2]=w+P[b+168>>2];P[b+36>>2]=q+P[b+164>>2];P[b+32>>2]=f+P[b+160>>2];L[b+24>>2]=1065353216;L[b+28>>2]=0;L[b+16>>2]=0;L[b+20>>2]=1065353216;ha[L[L[j>>2]+8>>2]](j,e,d,c)}i=i+1|0;if((i|0)>2]){continue}break}}fa=b+176|0}d=L[a+72>>2];n:{if(!d){break n}if(!(ha[L[L[d>>2]+48>>2]](d)&2)){break n}if(M[a+348|0]){c=L[a+72>>2];d=fa-32|0;fa=d;i=L[k+928>>2];L[d+24>>2]=1065353216;L[d+28>>2]=0;L[d+16>>2]=1065353216;L[d+20>>2]=0;L[d+8>>2]=1065353216;L[d+12>>2]=0;L[d>>2]=1065353216;L[d+4>>2]=1065353216;Ob(c,i,0,d+16|0,d,0,-1);fa=d+32|0}if(M[a+349|0]){c=L[a+72>>2];d=fa-32|0;fa=d;i=L[k+988>>2];L[d+24>>2]=0;L[d+28>>2]=0;L[d+16>>2]=0;L[d+20>>2]=1065353216;L[d+8>>2]=0;L[d+12>>2]=0;L[d>>2]=1065353216;L[d+4>>2]=0;Ob(c,i,0,d+16|0,d,0,-1);fa=d+32|0}if(!M[a+350|0]){break n}c=L[a+72>>2];d=fa-32|0;fa=d;i=L[k+1048>>2];L[d+24>>2]=1065353216;L[d+28>>2]=0;L[d+16>>2]=0;L[d+20>>2]=1065353216;L[d+8>>2]=0;L[d+12>>2]=0;L[d>>2]=1065353216;L[d+4>>2]=0;Ob(c,i,0,d+16|0,d,0,-1);fa=d+32|0}E=E+1|0;if((E|0)>2]){continue}break}}}function XG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=S(0),g=0,h=0,i=S(0),j=S(0),k=S(0),l=0,m=0,n=0,o=S(0),p=0,q=0,r=S(0),s=0,t=0,u=S(0),v=S(0),w=S(0),x=0,y=S(0),z=S(0),A=S(0),B=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=S(0),O=0,Q=S(0),U=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=0,ga=S(0),ia=S(0),ja=S(0),ka=S(0),la=S(0),ma=S(0),na=S(0),oa=0,pa=0,qa=S(0),ra=S(0),sa=S(0),ta=S(0),ua=S(0),va=S(0),wa=0,xa=0,ya=0;g=fa-544|0;fa=g;s=L[a+20>>2];if(!s){h=L[a+4>>2];s=ha[L[L[h>>2]+12>>2]](h,L[b+8>>2],L[c+8>>2])|0;J[a+16|0]=1;L[a+20>>2]=s}L[e+4>>2]=s;O=L[b+4>>2];C=L[c+4>>2];a:{if(!(L[O+4>>2]!=10|L[C+4>>2]!=10)){u=P[s+752>>2];a=L[b+12>>2];h=L[O+52>>2];p=h<<2;d=a+p|0;G=P[d+32>>2];b=L[c+12>>2];Z=P[b+56>>2];y=S(Z-P[a+56>>2]);N=P[d>>2];$=P[b+48>>2];H=S($-P[a+48>>2]);D=P[d+16>>2];ba=P[b+52>>2];F=S(ba-P[a+52>>2]);j=S(S(G*y)+S(S(N*H)+S(D*F)));a=b;b=L[C+52>>2];c=b<<2;a=a+c|0;r=P[a+32>>2];v=P[a>>2];Y=P[a+16>>2];o=S(-S(S(r*y)+S(S(v*H)+S(Y*F))));a=C+28|0;i=P[a+c>>2];c=O+28|0;z=P[c+p>>2];a=a+((b+2|0)%3<<2)|0;b=c+((h+2|0)%3<<2)|0;K=S(S(G*r)+S(S(N*v)+S(D*Y)));k=S(S(1)-S(K*K));b:{if(k==S(0)){break b}f=S(-z);k=S(S(S(o*K)+j)/k);if(f>k){break b}f=k;if(!(z>2];E=P[b>>2];k=S(S(f*K)+o);o=S(-i);c:{d:{if(ki){k=o;break c}if(!(i>z)){k=o;f=i;break c}i=o;break d}if(!(io){k=i;break c}if(!(o>z)){k=i;f=o;break c}}k=i;f=z}K=S(r*k);i=S(K+S(y-S(G*f)));j=S(v*k);o=S(j+S(H-S(N*f)));y=S(Y*k);k=S(y+S(F-S(D*f)));f=S(S(i*i)+S(S(o*o)+S(k*k)));H=S(_(f));z=S(S(H-E)-w);if(!(z>u)){e:{if(f<=S(14210854715202004e-30)){if(S(T(G))>S(.7071067690849304)){L[g+4>>2]=0;k=S(S(1)/S(_(S(S(D*D)+S(G*G)))));f=S(D*k);P[g+12>>2]=f;k=S(k*S(-G));P[g+8>>2]=k;i=S(0);break e}L[g+12>>2]=0;f=S(S(1)/S(_(S(S(N*N)+S(D*D)))));k=S(N*f);P[g+8>>2]=k;i=S(f*S(-D));P[g+4>>2]=i;f=S(0);break e}L[g+16>>2]=0;f=i;i=S(S(-1)/H);f=S(f*i);P[g+12>>2]=f;k=S(k*i);P[g+8>>2]=k;i=S(o*i);P[g+4>>2]=i}L[g+420>>2]=0;P[g+416>>2]=S(w*f)+S(K+Z);P[g+412>>2]=S(w*k)+S(y+ba);P[g+408>>2]=S(w*i)+S(j+$)}if(u>z){ha[L[L[e>>2]+16>>2]](e,g+4|0,g+408|0,z)}a=L[e+4>>2];if(!L[a+748>>2]){break a}c=L[a+740>>2];d=L[L[e+8>>2]+8>>2];b=(c|0)==(d|0);h=a;a=L[L[e+12>>2]+8>>2];_a(h,(b?c:a)+4|0,(b?a:d)+4|0);break a}L[g+536>>2]=1566444395;l=yg(g+328|0,O,C,L[a+8>>2],L[a+12>>2]);L[l+32>>2]=C;L[l+28>>2]=O;k=S(S(S(ha[L[L[O>>2]+48>>2]](O))+S(ha[L[L[C>>2]+48>>2]](C)))+P[L[a+20>>2]+752>>2]);P[g+536>>2]=k*k;h=L[b+12>>2];p=L[h+12>>2];L[g+416>>2]=L[h+8>>2];L[g+420>>2]=p;p=L[h+4>>2];L[g+408>>2]=L[h>>2];L[g+412>>2]=p;p=L[h+28>>2];L[g+432>>2]=L[h+24>>2];L[g+436>>2]=p;p=L[h+20>>2];L[g+424>>2]=L[h+16>>2];L[g+428>>2]=p;p=L[h+44>>2];L[g+448>>2]=L[h+40>>2];L[g+452>>2]=p;p=L[h+36>>2];L[g+440>>2]=L[h+32>>2];L[g+444>>2]=p;p=L[h+60>>2];L[g+464>>2]=L[h+56>>2];L[g+468>>2]=p;p=L[h+52>>2];L[g+456>>2]=L[h+48>>2];L[g+460>>2]=p;h=L[c+12>>2];p=L[h+12>>2];L[g+480>>2]=L[h+8>>2];L[g+484>>2]=p;p=L[h+4>>2];L[g+472>>2]=L[h>>2];L[g+476>>2]=p;s=L[h+20>>2];p=g+488|0;L[p>>2]=L[h+16>>2];L[p+4>>2]=s;s=L[h+28>>2];L[g+496>>2]=L[h+24>>2];L[g+500>>2]=s;q=L[h+36>>2];s=g+504|0;L[s>>2]=L[h+32>>2];L[s+4>>2]=q;q=L[h+44>>2];L[g+512>>2]=L[h+40>>2];L[g+516>>2]=q;n=L[h+52>>2];q=g+520|0;L[q>>2]=L[h+48>>2];L[q+4>>2]=n;n=L[h+60>>2];L[g+528>>2]=L[h+56>>2];L[g+532>>2]=n;f:{n=L[O+4>>2];if((n|0)>6){break f}h=L[C+4>>2];if((h|0)>6){break f}L[g+324>>2]=8956;k=S(0);if(n){k=S(ha[L[L[O>>2]+48>>2]](O));h=L[C+4>>2]}if(h){f=S(ha[L[L[C>>2]+48>>2]](C))}J[g+40|0]=0;P[g+32>>2]=f;P[g+28>>2]=k;L[g+8>>2]=e;L[g+4>>2]=9188;if(!L[O+52>>2]){break f}if(L[C+52>>2]){ba=P[L[a+20>>2]+752>>2];g:{h:{if(M[d+24|0]){k=S(-1.0000000150474662e30);x=L[O+52>>2];t=L[C+52>>2];q=L[b+12>>2];n=L[c+12>>2];l=fa-96|0;fa=l;L[8117]=L[8117]+1;f=P[x+72>>2];i=P[x+64>>2];w=P[x+68>>2];j=P[t+72>>2];u=P[t+64>>2];y=P[t+68>>2];Y=S(S(S(S(f*P[q+40>>2])+S(S(i*P[q+32>>2])+S(w*P[q+36>>2])))+P[q+56>>2])-S(S(S(j*P[n+40>>2])+S(S(u*P[n+32>>2])+S(y*P[n+36>>2])))+P[n+56>>2]));Z=S(S(S(S(f*P[q+24>>2])+S(S(i*P[q+16>>2])+S(w*P[q+20>>2])))+P[q+52>>2])-S(S(S(j*P[n+24>>2])+S(S(u*P[n+16>>2])+S(y*P[n+20>>2])))+P[n+52>>2]));$=S(S(S(S(f*P[q+8>>2])+S(S(i*P[q>>2])+S(w*P[q+4>>2])))+P[q+48>>2])-S(S(S(j*P[n+8>>2])+S(S(u*P[n>>2])+S(y*P[n+4>>2])))+P[n+48>>2]));i=S(34028234663852886e22);i:{j:{h=L[x+28>>2];if((h|0)>0){while(1){d=L[x+36>>2]+R(B,36)|0;w=P[d+28>>2];j=P[d+20>>2];u=P[d+24>>2];y=P[q+8>>2];H=P[q>>2];F=P[q+4>>2];E=P[q+24>>2];Q=P[q+16>>2];I=P[q+20>>2];V=P[q+40>>2];W=P[q+32>>2];aa=P[q+36>>2];L[l+12>>2]=0;f=S(S(V*w)+S(S(W*j)+S(u*aa)));P[l+8>>2]=f;r=S(S(E*w)+S(S(Q*j)+S(u*I)));P[l+4>>2]=r;v=S(S(y*w)+S(S(H*j)+S(u*F)));P[l>>2]=v;if(S(S(Y*f)+S(S($*v)+S(Z*r)))>2]=f;r=S(-r);P[l+4>>2]=r;v=S(-v);P[l>>2]=v}L[8115]=L[8115]+1;k:{if(M[27181]){w=S(S(Y*f)+S(S($*v)+S(Z*r)));j=P[x+88>>2];X=S(-j);A=j;j=S(S(V*f)+S(S(y*v)+S(E*r)));E=S((j>2];X=S(-j);A=j;j=S(S(W*f)+S(S(H*v)+S(Q*r)));A=S((j>2];j=S(E+S(A+S(j*(j>2];F=j>u?j:u;j=P[t+88>>2];X=S(-j);A=j;j=S(S(P[n+40>>2]*f)+S(S(P[n+8>>2]*v)+S(r*P[n+24>>2])));E=S((j>2];X=S(-j);A=j;j=S(S(P[n+32>>2]*f)+S(S(P[n>>2]*v)+S(r*P[n+16>>2])));A=S((j>2]*f)+S(S(P[n+4>>2]*v)+S(r*P[n+20>>2])));j=P[t+84>>2];f=S(E+S(A+S(f*(f>2];f=S(F+(f>j?f:j));j=S(w+f);f=S(f-w);if((f>j?j:f)>i){break k}}L[8116]=L[8116]+1;Cc(x,q,l,l+92|0,l+88|0,l- -64|0,l+48|0);Cc(t,n,l,l+84|0,l+80|0,l+32|0,l+16|0);f=P[l+88>>2];w=P[l+84>>2];if(f>2];u=P[l+92>>2];if(j>2];L[g+240>>2]=L[l>>2];L[g+244>>2]=d;d=L[l+12>>2];L[g+248>>2]=L[l+8>>2];L[g+252>>2]=d;i=f}B=B+1|0;if((h|0)!=(B|0)){continue}break}}h=L[t+28>>2];if((h|0)>0){B=0;while(1){d=L[t+36>>2]+R(B,36)|0;w=P[d+28>>2];j=P[d+20>>2];u=P[d+24>>2];y=P[n+8>>2];H=P[n>>2];F=P[n+4>>2];E=P[n+24>>2];Q=P[n+16>>2];I=P[n+20>>2];V=P[n+40>>2];W=P[n+32>>2];aa=P[n+36>>2];L[l+12>>2]=0;f=S(S(V*w)+S(S(W*j)+S(u*aa)));P[l+8>>2]=f;r=S(S(E*w)+S(S(Q*j)+S(u*I)));P[l+4>>2]=r;v=S(S(y*w)+S(S(H*j)+S(u*F)));P[l>>2]=v;if(S(S(Y*f)+S(S($*v)+S(Z*r)))>2]=f;r=S(-r);P[l+4>>2]=r;v=S(-v);P[l>>2]=v}L[8115]=L[8115]+1;l:{if(M[27181]){w=S(S(Y*f)+S(S($*v)+S(Z*r)));j=P[x+88>>2];X=S(-j);A=j;j=S(S(P[q+40>>2]*f)+S(S(P[q+8>>2]*v)+S(r*P[q+24>>2])));ca=S((j>2];X=S(-j);A=j;j=S(S(P[q+32>>2]*f)+S(S(P[q>>2]*v)+S(r*P[q+16>>2])));A=S((j>2]*f)+S(S(P[q+4>>2]*v)+S(r*P[q+20>>2])));u=P[x+84>>2];j=S(ca+S(A+S(j*(j>2];u=j>u?j:u;j=P[t+88>>2];X=S(-j);A=j;j=S(S(V*f)+S(S(y*v)+S(E*r)));E=S((j>2];X=S(-j);A=j;j=S(S(W*f)+S(S(H*v)+S(Q*r)));A=S((j>2];f=S(E+S(A+S(f*(f>2];f=S(u+(f>j?f:j));j=S(w+f);f=S(f-w);if((f>j?j:f)>i){break l}}L[8116]=L[8116]+1;Cc(x,q,l,l+92|0,l+88|0,l- -64|0,l+48|0);Cc(t,n,l,l+84|0,l+80|0,l+32|0,l+16|0);f=P[l+88>>2];w=P[l+84>>2];if(f>2];u=P[l+92>>2];if(j>2];L[g+240>>2]=L[l>>2];L[g+244>>2]=d;d=L[l+12>>2];L[g+248>>2]=L[l+8>>2];L[g+252>>2]=d;i=f}B=B+1|0;if((h|0)!=(B|0)){continue}break}}m=1;d=L[x+48>>2];m:{if((d|0)<=0){break m}h=0;B=L[t+48>>2];if((B|0)<=0){break m}s=-1;p=-1;while(1){if((B|0)>0){d=L[x+56>>2]+(h<<4)|0;f=P[d+8>>2];u=P[d>>2];y=P[d+4>>2];w=S(S(P[q+24>>2]*f)+S(S(P[q+16>>2]*u)+S(y*P[q+20>>2])));qa=S(-w);j=S(S(P[q+8>>2]*f)+S(S(P[q>>2]*u)+S(y*P[q+4>>2])));ra=S(-j);u=S(S(P[q+40>>2]*f)+S(S(P[q+32>>2]*u)+S(y*P[q+36>>2])));sa=S(-u);d=0;while(1){B=L[t+56>>2]+(d<<4)|0;F=P[B+8>>2];r=P[B>>2];v=P[B+4>>2];E=P[n+40>>2];Q=P[n+32>>2];I=P[n+36>>2];V=P[n+24>>2];W=P[n+16>>2];aa=P[n+20>>2];ja=P[n+8>>2];ga=P[n>>2];ia=P[n+4>>2];L[l+12>>2]=0;y=S(S(V*F)+S(S(W*r)+S(v*aa)));H=S(S(ja*F)+S(S(ga*r)+S(v*ia)));f=S(S(j*y)+S(H*qa));F=S(S(E*F)+S(S(Q*r)+S(v*I)));r=S(S(u*H)+S(F*ra));v=S(S(w*F)+S(y*sa));n:{if(!(+S(T(v))>1e-6|+S(T(r))>1e-6|+S(T(f))>1e-6)){break n}da=S(S(1)/S(_(S(S(f*f)+S(S(v*v)+S(r*r))))));f=S(f*da);P[l+8>>2]=f;r=S(r*da);P[l+4>>2]=r;v=S(v*da);P[l>>2]=v;if(S(S(Y*f)+S(S($*v)+S(Z*r)))>2]=f;r=S(-r);P[l+4>>2]=r;v=S(-v);P[l>>2]=v}L[8115]=L[8115]+1;if(M[27181]){da=S(S(Y*f)+S(S($*v)+S(Z*r)));A=P[x+88>>2];ca=S(-A);X=A;A=S(S(P[q+40>>2]*f)+S(S(P[q+8>>2]*v)+S(r*P[q+24>>2])));ka=S((A>2];ca=S(-A);X=A;A=S(S(P[q+32>>2]*f)+S(S(P[q>>2]*v)+S(r*P[q+16>>2])));X=S((A>2]*f)+S(S(P[q+4>>2]*v)+S(r*P[q+20>>2])));ca=P[x+84>>2];A=S(ka+S(X+S(A*(A>2];ka=A>ca?A:ca;A=P[t+88>>2];E=S(S(E*f)+S(S(ja*v)+S(V*r)));ca=S((E>2];X=S(-E);A=E;E=S(S(Q*f)+S(S(ga*v)+S(W*r)));f=S(S(I*f)+S(S(ia*v)+S(aa*r)));r=P[t+84>>2];f=S(ca+S(S((E>2];f=S(ka+(f>r?f:r));r=S(da+f);f=S(f-da);if((f>r?r:f)>i){break n}}L[8116]=L[8116]+1;Cc(x,q,l,l+92|0,l+88|0,l- -64|0,l+48|0);Cc(t,n,l,l+84|0,l+80|0,l+32|0,l+16|0);f=P[l+88>>2];r=P[l+84>>2];if(f>2];E=P[l+92>>2];if(v>2];ma=P[p+4>>2];p=B?l+48|0:l- -64|0;ta=P[p+8>>2];ua=P[p+4>>2];i=P[l+16>>2];o=P[l+32>>2];z=P[l+64>>2];D=P[l+48>>2];p=L[l+4>>2];L[g+240>>2]=L[l>>2];L[g+244>>2]=p;p=L[l+12>>2];L[g+248>>2]=L[l+8>>2];L[g+252>>2]=p;va=B?D:z;na=B?o:i;o=H;z=y;D=F;G=j;N=w;K=u;p=h;s=d;i=f}d=d+1|0;B=L[t+48>>2];if((d|0)<(B|0)){continue}break}d=L[x+48>>2]}h=h+1|0;if((h|0)<(d|0)){continue}break}if((p|s)<0){break m}u=S(la-ta);y=S(na-va);H=S(ma-ua);j=S(S(K*u)+S(S(G*y)+S(N*H)));f=S(0);F=S(-S(S(D*u)+S(S(o*y)+S(z*H))));w=S(S(K*D)+S(S(G*o)+S(N*z)));i=S(S(1)-S(w*w));o:{if(i==S(0)){break o}f=S(-1.0000000150474662e30);i=S(S(S(F*w)+j)/i);if(iS(1.0000000150474662e30))){break o}f=S(1.0000000150474662e30)}r=S(S(f*w)+F);p:{if(rS(1.0000000150474662e30))){r=S(-1.0000000150474662e30);f=i;break p}r=S(-1.0000000150474662e30);break p}if(!(r>S(1.0000000150474662e30))){break p}f=S(-1.0000000150474662e30);r=S(1.0000000150474662e30);i=S(S(w*S(1.0000000150474662e30))+j);if(iS(1.0000000150474662e30))){break p}f=S(1.0000000150474662e30)}L[l+76>>2]=0;D=S(D*r);i=S(D+S(u-S(K*f)));K=S(o*r);o=S(K+S(y-S(G*f)));G=S(z*r);f=S(G+S(H-S(N*f)));z=S(S(i*i)+S(S(o*o)+S(f*f)));if(!(z>S(1.1920928955078125e-7))){break m}j=i;N=S(_(z));i=S(S(1)/N);z=S(j*i);P[l+72>>2]=z;f=S(f*i);P[l+68>>2]=f;i=S(o*i);P[l+64>>2]=i;if(S(S(z*Y)+S(S(i*$)+S(Z*f)))>2]=-z;P[l+68>>2]=-f;P[l+64>>2]=-i}L[l+60>>2]=0;P[l+56>>2]=la+D;P[l+52>>2]=ma+G;P[l+48>>2]=na+K;ha[L[L[e>>2]+16>>2]](e,l- -64|0,l+48|0,S(-N))}f=P[g+248>>2];i=P[g+240>>2];o=P[g+244>>2];if(!(S(S(Y*f)+S(S($*i)+S(Z*o)))>2]=0;P[g+248>>2]=-f;P[g+244>>2]=-o;P[g+240>>2]=-i;break i}m=0}fa=l+96|0;if(m){break h}break g}wb(l,g+408|0,g+4|0,L[d+20>>2],0);d=L[g+24>>2];L[g+248>>2]=L[g+20>>2];L[g+252>>2]=d;d=L[g+16>>2];L[g+240>>2]=L[g+12>>2];L[g+244>>2]=d;if(!M[g+40|0]){break g}k=P[g+36>>2];if(!(k>2];C=L[C+52>>2];xa=L[b+12>>2];s=L[c+12>>2];c=0;x=0;O=0;l=fa-48|0;fa=l;f=P[g+248>>2];i=P[g+240>>2];o=P[g+244>>2];P[l+44>>2]=P[g+252>>2];j=f;f=S(S(1)/S(_(S(S(f*f)+S(S(i*i)+S(o*o))))));D=S(j*f);P[l+40>>2]=D;G=S(o*f);P[l+36>>2]=G;N=S(i*f);P[l+32>>2]=N;b=L[C+36>>2];h=L[C+28>>2];q:{if((h|0)<=0){q=-1;break q}K=P[s+40>>2];w=P[s+36>>2];j=P[s+24>>2];u=P[s+20>>2];y=P[s+32>>2];H=P[s+16>>2];F=P[s+8>>2];r=P[s+4>>2];v=P[s>>2];p=0;f=S(-34028234663852886e22);q=-1;while(1){d=b+R(p,36)|0;i=P[d+28>>2];o=P[d+20>>2];z=P[d+24>>2];i=S(S(S(S(K*i)+S(S(y*o)+S(z*w)))*D)+S(S(S(S(F*i)+S(S(v*o)+S(z*r)))*N)+S(S(S(j*i)+S(S(H*o)+S(z*u)))*G)));d=i>f;f=d?i:f;q=d?p:q;p=p+1|0;if((h|0)!=(p|0)){continue}break}}oa=b+R(q,36)|0;pa=L[oa+4>>2];r:{if((pa|0)<=0){d=0;b=0;break r}b=0;d=0;while(1){h=L[C+16>>2]+(L[L[oa+12>>2]+(x<<2)>>2]<<4)|0;f=P[h+8>>2];i=P[h>>2];o=P[h+4>>2];z=S(S(S(f*P[s+40>>2])+S(S(i*P[s+32>>2])+S(o*P[s+36>>2])))+P[s+56>>2]);D=S(S(S(f*P[s+24>>2])+S(S(i*P[s+16>>2])+S(o*P[s+20>>2])))+P[s+52>>2]);f=S(S(S(f*P[s+8>>2])+S(S(i*P[s>>2])+S(o*P[s+4>>2])))+P[s+48>>2]);s:{if((b|0)!=(d|0)){break s}d=b?b<<1:1;if(d>>>0<=b>>>0){d=b;break s}L[8513]=L[8513]+1;h=ha[L[6798]](d<<4,16)|0;t:{u:{if(b){m=0;p=0;if(b>>>0>=4){ya=b&2147483644;B=0;while(1){n=p<<4;U=n+h|0;t=c+n|0;ea=L[t+4>>2];L[U>>2]=L[t>>2];L[U+4>>2]=ea;ea=L[t+12>>2];L[U+8>>2]=L[t+8>>2];L[U+12>>2]=ea;t=n|16;U=t+h|0;t=c+t|0;ea=L[t+12>>2];L[U+8>>2]=L[t+8>>2];L[U+12>>2]=ea;ea=L[t+4>>2];L[U>>2]=L[t>>2];L[U+4>>2]=ea;t=n|32;U=t+h|0;t=c+t|0;ea=L[t+12>>2];L[U+8>>2]=L[t+8>>2];L[U+12>>2]=ea;ea=L[t+4>>2];L[U>>2]=L[t>>2];L[U+4>>2]=ea;n=n|48;t=n+h|0;n=c+n|0;U=L[n+12>>2];L[t+8>>2]=L[n+8>>2];L[t+12>>2]=U;U=L[n+4>>2];L[t>>2]=L[n>>2];L[t+4>>2]=U;p=p+4|0;B=B+4|0;if((ya|0)!=(B|0)){continue}break}}B=b&3;if(!B){break u}while(1){n=p<<4;t=n+h|0;n=c+n|0;U=L[n+4>>2];L[t>>2]=L[n>>2];L[t+4>>2]=U;U=L[n+12>>2];L[t+8>>2]=L[n+8>>2];L[t+12>>2]=U;p=p+1|0;m=m+1|0;if((B|0)!=(m|0)){continue}break}break u}if(!c){break t}}if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}}c=h}h=(b<<4)+c|0;L[h+12>>2]=0;P[h+8>>2]=z;P[h+4>>2]=D;P[h>>2]=f;b=b+1|0;x=x+1|0;if((pa|0)!=(x|0)){continue}break}}J[l+28|0]=1;L[l+24>>2]=c;L[l+20>>2]=d;L[l+16>>2]=b;if((q|0)>=0){wl(l+32|0,wa,xa,l+12|0,S(k-ba),ba,e);O=!M[l+28|0];c=L[l+24>>2]}if(!(c?O|!c:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}fa=l+48|0}if(!M[a+16|0]){break a}a=L[e+4>>2];if(!L[a+748>>2]){break a}c=L[a+740>>2];d=L[L[e+8>>2]+8>>2];b=(c|0)==(d|0);h=a;a=L[L[e+12>>2]+8>>2];_a(h,(b?c:a)+4|0,(b?a:d)+4|0);break a}if(L[C+4>>2]!=1){break f}L[g+244>>2]=0;h=L[c+12>>2];o=P[h+52>>2];z=P[h+20>>2];D=P[h+24>>2];G=P[h+56>>2];N=P[h+36>>2];K=P[h+40>>2];f=P[C- -64>>2];k=P[C+60>>2];w=P[h+16>>2];j=P[h+32>>2];u=P[h+48>>2];y=P[h+8>>2];i=P[C+56>>2];H=P[h>>2];F=P[h+4>>2];L[8513]=L[8513]+1;h=ha[L[6798]](16,16)|0;L[g+252>>2]=h;J[g+256|0]=1;L[g+248>>2]=1;L[h+12>>2]=0;P[h>>2]=u+S(S(f*y)+S(S(i*H)+S(k*F)));P[h+8>>2]=G+S(S(f*K)+S(S(i*j)+S(k*N)));P[h+4>>2]=o+S(S(f*D)+S(S(i*w)+S(k*z)));s=L[g+244>>2];h=s+1|0;L[g+244>>2]=h;f=P[C+80>>2];p=L[c+12>>2];k=P[C+72>>2];i=P[C+76>>2];o=S(S(S(f*P[p+40>>2])+S(S(k*P[p+32>>2])+S(i*P[p+36>>2])))+P[p+56>>2]);z=S(S(S(f*P[p+24>>2])+S(S(k*P[p+16>>2])+S(i*P[p+20>>2])))+P[p+52>>2]);f=S(S(S(f*P[p+8>>2])+S(S(k*P[p>>2])+S(i*P[p+4>>2])))+P[p+48>>2]);v:{if(L[g+248>>2]!=(h|0)){break v}q=h?h<<1:1;if((q|0)<=(h|0)){break v}p=0;if(q){L[8513]=L[8513]+1;p=ha[L[6798]](q<<4,16)|0}w:{if((s|0)<0){break w}h=s+1|0;B=h&1;x:{if(!s){s=0;break x}m=h&-2;s=0;h=0;while(1){x=s<<4;t=x+p|0;n=x+L[g+252>>2]|0;U=L[n+4>>2];L[t>>2]=L[n>>2];L[t+4>>2]=U;U=L[n+12>>2];L[t+8>>2]=L[n+8>>2];L[t+12>>2]=U;n=x|16;x=n+p|0;n=n+L[g+252>>2]|0;t=L[n+4>>2];L[x>>2]=L[n>>2];L[x+4>>2]=t;t=L[n+12>>2];L[x+8>>2]=L[n+8>>2];L[x+12>>2]=t;s=s+2|0;h=h+2|0;if((m|0)!=(h|0)){continue}break}}if(!B){break w}h=s<<4;s=h+p|0;h=h+L[g+252>>2]|0;n=L[h+4>>2];L[s>>2]=L[h>>2];L[s+4>>2]=n;n=L[h+12>>2];L[s+8>>2]=L[h+8>>2];L[s+12>>2]=n}h=L[g+252>>2];if(!(h?!h|!M[g+256|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](h)}L[g+252>>2]=p;J[g+256|0]=1;L[g+248>>2]=q;h=L[g+244>>2]}h=L[g+252>>2]+(h<<4)|0;L[h+12>>2]=0;P[h+8>>2]=o;P[h+4>>2]=z;P[h>>2]=f;p=L[g+244>>2];h=p+1|0;L[g+244>>2]=h;f=P[C+96>>2];c=L[c+12>>2];k=P[C+88>>2];i=P[C+92>>2];o=S(S(S(f*P[c+40>>2])+S(S(k*P[c+32>>2])+S(i*P[c+36>>2])))+P[c+56>>2]);z=S(S(S(f*P[c+24>>2])+S(S(k*P[c+16>>2])+S(i*P[c+20>>2])))+P[c+52>>2]);f=S(S(S(f*P[c+8>>2])+S(S(k*P[c>>2])+S(i*P[c+4>>2])))+P[c+48>>2]);y:{if(L[g+248>>2]!=(h|0)){break y}c=h?h<<1:1;if((c|0)<=(h|0)){break y}h=0;if(c){L[8513]=L[8513]+1;h=ha[L[6798]](c<<4,16)|0}z:{if((p|0)<0){break z}s=p+1|0;t=s&1;A:{if(!p){s=0;break A}B=s&-2;s=0;p=0;while(1){n=s<<4;x=n+h|0;q=n+L[g+252>>2]|0;m=L[q+4>>2];L[x>>2]=L[q>>2];L[x+4>>2]=m;m=L[q+12>>2];L[x+8>>2]=L[q+8>>2];L[x+12>>2]=m;q=n|16;n=q+h|0;q=q+L[g+252>>2]|0;x=L[q+4>>2];L[n>>2]=L[q>>2];L[n+4>>2]=x;x=L[q+12>>2];L[n+8>>2]=L[q+8>>2];L[n+12>>2]=x;s=s+2|0;p=p+2|0;if((B|0)!=(p|0)){continue}break}}if(!t){break z}p=s<<4;s=p+h|0;p=p+L[g+252>>2]|0;q=L[p+4>>2];L[s>>2]=L[p>>2];L[s+4>>2]=q;q=L[p+12>>2];L[s+8>>2]=L[p+8>>2];L[s+12>>2]=q}p=L[g+252>>2];if(!(p?!p|!M[g+256|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](p)}L[g+252>>2]=h;J[g+256|0]=1;L[g+248>>2]=c;h=L[g+244>>2]}c=L[g+252>>2]+(h<<4)|0;L[c+12>>2]=0;P[c+8>>2]=o;P[c+4>>2]=z;P[c>>2]=f;L[g+244>>2]=L[g+244>>2]+1;f=P[L[a+20>>2]+752>>2];wb(l,g+408|0,g+324|0,L[d+20>>2],0);k=P[l+12>>2];i=P[l+4>>2];o=P[l+8>>2];z=S(S(k*k)+S(S(i*i)+S(o*o)));if(z>S(1.1920928955078125e-7)){L[g+320>>2]=0;j=k;k=S(S(1)/z);P[g+316>>2]=j*k;P[g+312>>2]=o*k;P[g+308>>2]=i*k;k=P[l+56>>2];i=S(ha[L[L[O>>2]+48>>2]](O));o=S(ha[L[L[C>>2]+48>>2]](C));wl(g+308|0,L[O+52>>2],L[b+12>>2],g+240|0,S(S(S(k-i)-o)-f),f,e)}B:{if(!M[a+16|0]){break B}a=L[e+4>>2];if(!L[a+748>>2]){break B}c=L[a+740>>2];d=L[L[e+8>>2]+8>>2];b=(c|0)==(d|0);h=a;a=L[L[e+12>>2]+8>>2];_a(h,(b?c:a)+4|0,(b?a:d)+4|0)}a=L[g+252>>2];if(!a|!M[g+256|0]){break a}if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}break a}wb(l,g+408|0,e,L[d+20>>2],0);C:{if(!L[a+28>>2]|L[L[e+4>>2]+748>>2]>=L[a+32>>2]){break C}f=P[l+12>>2];k=P[l+4>>2];i=P[l+8>>2];o=S(S(f*f)+S(S(k*k)+S(i*i)));if(!(o>S(1.1920928955078125e-7))){break C}n=g+472|0;x=g+456|0;t=g+440|0;B=g+424|0;j=i;i=S(S(1)/o);z=S(j*i);w=S(k*i);j=S(f*i);D:{if(S(T(j))>S(.7071067690849304)){k=S(S(1)/S(_(S(S(z*z)+S(j*j)))));f=S(z*k);i=S(k*S(-j));k=S(0);break D}k=S(S(1)/S(_(S(S(w*w)+S(z*z)))));i=S(w*k);f=S(0);k=S(k*S(-z))}o=S(ha[L[L[O>>2]+16>>2]](O));D=S(ha[L[L[C>>2]+16>>2]](C));O=0;G=P[6794];C=o>2];L[g+248>>2]=L[h+8>>2];L[g+252>>2]=m;m=L[h+4>>2];L[g+240>>2]=L[h>>2];L[g+244>>2]=m;h=C?B:p;m=L[h+12>>2];L[g+264>>2]=L[h+8>>2];L[g+268>>2]=m;m=L[h+4>>2];L[g+256>>2]=L[h>>2];L[g+260>>2]=m;h=C?t:s;m=L[h+12>>2];L[g+280>>2]=L[h+8>>2];L[g+284>>2]=m;m=L[h+4>>2];L[g+272>>2]=L[h>>2];L[g+276>>2]=m;h=C?x:q;m=L[h+12>>2];L[g+296>>2]=L[h+8>>2];L[g+300>>2]=m;m=L[h+4>>2];L[g+288>>2]=L[h>>2];L[g+292>>2]=m;h=L[a+28>>2];if((h|0)<=0){break C}o=S(G/(C?o:D));o=S((o>S(.39269909262657166)?S(.39269909262657166):o)*S(.5));G=Ea(o);D=Fa(o);o=S(S(f*f)+S(S(k*k)+S(i*i)));if(!(o>S(1.1920928955078125e-7))){break C}A=f;f=S(G/S(_(o)));G=S(A*f);N=S(i*f);K=S(k*f);ja=S(_(S(S(j*j)+S(S(w*w)+S(z*z)))));while(1){o=S(S(S(S(6.2831854820251465)/S(h|0))*S(O|0))*S(.5));i=S(Ea(o)/ja);f=S(j*i);k=S(z*i);i=S(w*i);o=Fa(o);E:{if(!C){h=L[b+12>>2];m=L[h+12>>2];L[g+416>>2]=L[h+8>>2];L[g+420>>2]=m;m=L[h+4>>2];L[g+408>>2]=L[h>>2];L[g+412>>2]=m;m=L[h+28>>2];L[B+8>>2]=L[h+24>>2];L[B+12>>2]=m;m=L[h+20>>2];L[B>>2]=L[h+16>>2];L[B+4>>2]=m;m=L[h+44>>2];L[t+8>>2]=L[h+40>>2];L[t+12>>2]=m;m=L[h+36>>2];L[t>>2]=L[h+32>>2];L[t+4>>2]=m;m=L[h+60>>2];L[x+8>>2]=L[h+56>>2];L[x+12>>2]=m;m=L[h+52>>2];L[x>>2]=L[h+48>>2];L[x+4>>2]=m;h=L[c+12>>2];H=P[h+36>>2];F=P[h+20>>2];r=P[h+40>>2];v=P[h+24>>2];Y=P[h+32>>2];Z=P[h>>2];$=P[h+16>>2];ba=P[h+4>>2];E=P[h+8>>2];L[g+516>>2]=0;L[g+500>>2]=0;L[g+484>>2]=0;Q=S(S(i*G)+S(S(S(o*N)-S(D*k))-S(f*K)));I=S(S(f*G)+S(S(k*N)+S(S(o*D)+S(K*i))));V=S(S(f*N)+S(S(S(o*K)-S(D*i))-S(k*G)));W=S(S(k*K)+S(S(S(o*G)-S(D*f))-S(i*N)));u=S(S(S(Q*f)+S(S(I*i)+S(o*V)))-S(W*k));y=S(S(S(S(I*o)-S(i*V))-S(Q*k))-S(W*f));aa=S(S(S(V*k)+S(S(I*f)+S(o*W)))-S(Q*i));f=S(S(S(W*i)+S(S(I*k)+S(o*Q)))-S(V*f));k=S(S(2)/S(S(y*y)+S(S(aa*aa)+S(S(u*u)+S(f*f)))));I=S(u*k);V=S(u*I);i=S(f*k);W=S(f*i);o=S(S(1)-S(V+W));k=S(aa*k);ga=S(u*k);ia=S(y*i);Q=S(ga-ia);da=S(f*k);I=S(y*I);f=S(da+I);P[g+512>>2]=S(r*o)+S(S(E*Q)+S(v*f));P[g+508>>2]=S(H*o)+S(S(ba*Q)+S(f*F));P[g+504>>2]=S(Y*o)+S(S(Z*Q)+S(f*$));f=S(da-I);o=S(u*i);u=S(y*k);i=S(o+u);y=S(aa*k);k=S(S(1)-S(V+y));P[g+496>>2]=S(r*f)+S(S(E*i)+S(v*k));P[g+492>>2]=S(H*f)+S(S(ba*i)+S(k*F));P[g+488>>2]=S(Y*f)+S(S(Z*i)+S(k*$));f=S(ga+ia);k=S(S(1)-S(W+y));i=S(o-u);P[g+480>>2]=S(r*f)+S(S(E*k)+S(v*i));P[g+476>>2]=S(H*f)+S(S(ba*k)+S(i*F));P[g+472>>2]=S(Y*f)+S(S(Z*k)+S(i*$));break E}h=L[b+12>>2];H=P[h+36>>2];F=P[h+20>>2];r=P[h+40>>2];v=P[h+24>>2];Y=P[h+32>>2];Z=P[h>>2];$=P[h+16>>2];ba=P[h+4>>2];E=P[h+8>>2];L[g+452>>2]=0;L[g+436>>2]=0;L[g+420>>2]=0;Q=S(S(i*G)+S(S(S(o*N)-S(D*k))-S(f*K)));I=S(S(f*G)+S(S(k*N)+S(S(o*D)+S(K*i))));V=S(S(f*N)+S(S(S(o*K)-S(D*i))-S(k*G)));W=S(S(k*K)+S(S(S(o*G)-S(D*f))-S(i*N)));u=S(S(S(Q*f)+S(S(I*i)+S(o*V)))-S(W*k));y=S(S(S(S(I*o)-S(i*V))-S(Q*k))-S(W*f));aa=S(S(S(V*k)+S(S(I*f)+S(o*W)))-S(Q*i));f=S(S(S(W*i)+S(S(I*k)+S(o*Q)))-S(V*f));k=S(S(2)/S(S(y*y)+S(S(aa*aa)+S(S(u*u)+S(f*f)))));I=S(u*k);V=S(u*I);i=S(f*k);W=S(f*i);o=S(S(1)-S(V+W));k=S(aa*k);ga=S(u*k);ia=S(y*i);Q=S(ga-ia);da=S(f*k);I=S(y*I);f=S(da+I);P[g+448>>2]=S(r*o)+S(S(E*Q)+S(v*f));P[g+444>>2]=S(H*o)+S(S(ba*Q)+S(f*F));P[g+440>>2]=S(Y*o)+S(S(Z*Q)+S(f*$));f=S(da-I);o=S(u*i);u=S(y*k);i=S(o+u);y=S(aa*k);k=S(S(1)-S(V+y));P[g+432>>2]=S(r*f)+S(S(E*i)+S(v*k));P[g+428>>2]=S(H*f)+S(S(ba*i)+S(k*F));P[g+424>>2]=S(Y*f)+S(S(Z*i)+S(k*$));f=S(ga+ia);k=S(S(1)-S(W+y));i=S(o-u);P[g+416>>2]=S(r*f)+S(S(E*k)+S(v*i));P[g+412>>2]=S(H*f)+S(S(ba*k)+S(i*F));P[g+408>>2]=S(Y*f)+S(S(Z*k)+S(i*$));h=L[c+12>>2];m=L[h+4>>2];L[n>>2]=L[h>>2];L[n+4>>2]=m;m=L[h+12>>2];L[n+8>>2]=L[h+8>>2];L[n+12>>2]=m;m=L[h+28>>2];L[p+8>>2]=L[h+24>>2];L[p+12>>2]=m;m=L[h+20>>2];L[p>>2]=L[h+16>>2];L[p+4>>2]=m;m=L[h+44>>2];L[s+8>>2]=L[h+40>>2];L[s+12>>2]=m;m=L[h+36>>2];L[s>>2]=L[h+32>>2];L[s+4>>2]=m;m=L[h+60>>2];L[q+8>>2]=L[h+56>>2];L[q+12>>2]=m;m=L[h+52>>2];L[q>>2]=L[h+48>>2];L[q+4>>2]=m}h=L[d+20>>2];L[g+36>>2]=e;L[g+4>>2]=9372;m=L[g+420>>2];L[g+48>>2]=L[g+416>>2];L[g+52>>2]=m;m=L[g+412>>2];L[g+40>>2]=L[g+408>>2];L[g+44>>2]=m;m=L[B+12>>2];L[g+64>>2]=L[B+8>>2];L[g+68>>2]=m;m=L[B+4>>2];L[g+56>>2]=L[B>>2];L[g+60>>2]=m;m=L[t+12>>2];L[g+80>>2]=L[t+8>>2];L[g+84>>2]=m;m=L[t+4>>2];L[g+72>>2]=L[t>>2];L[g+76>>2]=m;m=L[x+12>>2];L[g+96>>2]=L[x+8>>2];L[g+100>>2]=m;m=L[x+4>>2];L[g+88>>2]=L[x>>2];L[g+92>>2]=m;m=L[n+12>>2];L[g+112>>2]=L[n+8>>2];L[g+116>>2]=m;m=L[n+4>>2];L[g+104>>2]=L[n>>2];L[g+108>>2]=m;m=L[p+12>>2];L[g+128>>2]=L[p+8>>2];L[g+132>>2]=m;m=L[p+4>>2];L[g+120>>2]=L[p>>2];L[g+124>>2]=m;m=L[s+12>>2];L[g+144>>2]=L[s+8>>2];L[g+148>>2]=m;m=L[s+4>>2];L[g+136>>2]=L[s>>2];L[g+140>>2]=m;m=L[q+12>>2];L[g+160>>2]=L[q+8>>2];L[g+164>>2]=m;m=L[q+4>>2];L[g+152>>2]=L[q>>2];L[g+156>>2]=m;m=L[g+252>>2];L[g+176>>2]=L[g+248>>2];L[g+180>>2]=m;m=L[g+244>>2];L[g+168>>2]=L[g+240>>2];L[g+172>>2]=m;m=L[g+268>>2];L[g+192>>2]=L[g+264>>2];L[g+196>>2]=m;m=L[g+260>>2];L[g+184>>2]=L[g+256>>2];L[g+188>>2]=m;m=L[g+284>>2];L[g+208>>2]=L[g+280>>2];L[g+212>>2]=m;m=L[g+276>>2];L[g+200>>2]=L[g+272>>2];L[g+204>>2]=m;m=L[g+292>>2];L[g+216>>2]=L[g+288>>2];L[g+220>>2]=m;m=L[g+300>>2];L[g+224>>2]=L[g+296>>2];L[g+228>>2]=m;L[g+236>>2]=h;J[g+232|0]=C;wb(l,g+408|0,g+4|0,h,0);h=L[a+28>>2];O=O+1|0;if((h|0)>(O|0)){continue}break}}if(!M[a+16|0]){break a}a=L[e+4>>2];if(!L[a+748>>2]){break a}c=L[a+740>>2];d=L[L[e+8>>2]+8>>2];b=(c|0)==(d|0);h=a;a=L[L[e+12>>2]+8>>2];_a(h,(b?c:a)+4|0,(b?a:d)+4|0)}fa=g+544|0}function ak(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=S(0),m=S(0),n=0,o=0,p=S(0),q=0,r=S(0),s=S(0),t=S(0),u=S(0),v=S(0),w=0,x=0,y=S(0),z=S(0),A=S(0),B=0,C=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=S(0),V=S(0),W=S(0),X=0,Y=0,Z=S(0),$=0,aa=S(0),ba=S(0),ca=0,da=S(0),ea=S(0),ga=S(0),ia=S(0),ja=S(0),ka=S(0);w=fa+-64|0;fa=w;L[w+52>>2]=0;X=1;J[w+56|0]=1;L[w+44>>2]=0;L[w+48>>2]=0;L[w+32>>2]=0;L[w+36>>2]=0;L[w+24>>2]=0;L[w+28>>2]=0;F=L[b+4>>2];d=F>>>0<=8?8:F;if((d|0)>=0){L[8513]=L[8513]+1;o=ha[L[6798]](d<<4,16)|0;F=L[b+4>>2]}k=a;g=L[b+8>>2];q=L[b+12>>2];l=P[b+16>>2];a:{if(!F){break a}d=L[k+24>>2];if((d|0)<0){a=L[k+32>>2];if(L[k+28>>2]<0){if(!(a?!a|!M[k+36|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}J[k+36|0]=1;L[k+28>>2]=0;L[k+32>>2]=0;a=0}j=a;a=d<<2;pa(j+a|0,0,0-a|0)}L[k+24>>2]=0;L[w+4>>2]=0;L[w+16>>2]=1065353216;L[w+8>>2]=1065353216;L[w+12>>2]=1065353216;m=S(-34028234663852886e22);u=S(34028234663852886e22);v=S(34028234663852886e22);y=S(34028234663852886e22);r=S(-34028234663852886e22);s=S(-34028234663852886e22);a=g;while(1){p=P[a+8>>2];m=m>2];r=p>r?p:r;v=p>2];s=p>s?p:s;y=p>>0<3|vS(9.999999974752427e-7)?vS(9.999999974752427e-7)?l>m?m:l:l;l=p>S(9.999999974752427e-7)?l>p?p:l:l;d:{if(l==S(34028234663852886e22)){break d}y=S(l*S(.05000000074505806));s=m>2]=p;P[w+12>>2]=m;P[w+8>>2]=v;s=S(S(1)/p);r=S(u*s);y=t;t=S(S(1)/m);u=S(y*t);m=A;A=S(S(1)/v);v=S(m*A);while(1){p=S(s*P[g+8>>2]);y=S(t*P[g+4>>2]);m=S(A*P[g>>2]);a=0;d=0;e:{f:{g:{j=L[w+4>>2];if(!j){break g}while(1){h:{d=(a<<4)+o|0;z=P[d>>2];if(!(l>S(T(S(z-m))))){break h}H=P[d+4>>2];if(!(l>S(T(S(H-y))))){break h}I=P[d+8>>2];if(!(l>S(T(S(I-p))))){break h}G=S(p-r);K=S(G*G);G=S(m-v);U=S(G*G);G=S(y-u);I=S(I-r);z=S(z-v);Z=S(z*z);z=S(H-u);if(S(K+S(U+S(G*G)))>S(S(I*I)+S(Z+S(z*z)))){P[d+8>>2]=p;P[d+4>>2]=y;P[d>>2]=m}d=a;break g}a=a+1|0;if((j|0)!=(a|0)){continue}break}d=j;break f}if((d|0)!=(j|0)){break e}}a=(j<<4)+o|0;P[a+8>>2]=p;P[a+4>>2]=y;P[a>>2]=m;L[w+4>>2]=j+1}j=L[k+24>>2];i:{if((j|0)!=L[k+28>>2]){break i}C=j?j<<1:1;if((C|0)<=(j|0)){break i}j:{if(!C){h=0;break j}L[8513]=L[8513]+1;h=ha[L[6798]](C<<2,16)|0;j=L[k+24>>2]}e=L[k+32>>2];k:{l:{if((j|0)>0){x=0;a=0;if(j>>>0>=4){D=j&-4;B=0;while(1){n=a<<2;L[n+h>>2]=L[e+n>>2];O=n|4;L[O+h>>2]=L[e+O>>2];O=n|8;L[O+h>>2]=L[e+O>>2];n=n|12;L[n+h>>2]=L[e+n>>2];a=a+4|0;B=B+4|0;if((D|0)!=(B|0)){continue}break}}j=j&3;if(!j){break l}while(1){n=a<<2;L[n+h>>2]=L[e+n>>2];a=a+1|0;x=x+1|0;if((j|0)!=(x|0)){continue}break}break l}if(!e){break k}}if(e?M[k+36|0]:0){L[8514]=L[8514]+1;ha[L[6799]](e)}j=L[k+24>>2]}L[k+32>>2]=h;J[k+36|0]=1;L[k+28>>2]=C}g=g+q|0;L[L[k+32>>2]+(j<<2)>>2]=d;L[k+24>>2]=L[k+24>>2]+1;f=f+1|0;if((F|0)!=(f|0)){continue}break}y=S(-34028234663852886e22);p=S(34028234663852886e22);d=L[w+4>>2];m:{if(!d){u=S(34028234663852886e22);v=S(34028234663852886e22);m=S(-34028234663852886e22);r=S(-34028234663852886e22);break m}a=0;u=S(34028234663852886e22);v=S(34028234663852886e22);m=S(-34028234663852886e22);r=S(-34028234663852886e22);while(1){g=(a<<4)+o|0;l=P[g+8>>2];y=l>y?l:y;p=l>2];m=l>m?l:m;u=l>2];r=l>r?l:r;v=l>>0>=3){break a}}s=S(S(y*S(.5))+p);t=S(S(m*S(.5))+u);A=S(S(l*S(.5))+v);r=S(.009999999776482582);v=S(.009999999776482582);p=S(.009999999776482582);u=l>=S(9.999999974752427e-7)?l=S(9.999999974752427e-7)?m=S(9.999999974752427e-7)?u>y?y:u:u;n:{if(u==S(34028234663852886e22)){break n}p=S(u*S(.05000000074505806));v=m>2]=m;P[o+96>>2]=y;P[o+80>>2]=y;P[o+64>>2]=m;P[o+48>>2]=m;P[o+32>>2]=y;P[o+16>>2]=y;P[o+8>>2]=p;P[o+4>>2]=v;P[o>>2]=m;P[o+120>>2]=l;P[o+116>>2]=u;P[o+104>>2]=l;P[o+100>>2]=u;P[o+88>>2]=l;P[o+84>>2]=v;P[o+72>>2]=l;P[o+68>>2]=v;P[o+56>>2]=p;P[o+52>>2]=u;P[o+40>>2]=p;P[o+36>>2]=u;P[o+24>>2]=p;P[o+20>>2]=v;L[w+4>>2]=8}o:{if(!F){break o}C=L[w+4>>2];p:{if(!C){break p}d=0;p=P[w+16>>2];y=P[w+12>>2];m=P[w+8>>2];if((C|0)!=1){g=C&-2;while(1){f=d<<4;a=f+o|0;P[a>>2]=m*P[a>>2];P[a+4>>2]=y*P[a+4>>2];P[a+8>>2]=p*P[a+8>>2];a=(f|16)+o|0;P[a>>2]=m*P[a>>2];P[a+4>>2]=y*P[a+4>>2];P[a+8>>2]=p*P[a+8>>2];d=d+2|0;i=i+2|0;if((g|0)!=(i|0)){continue}break}}if(!(C&1)){break p}a=(d<<4)+o|0;P[a>>2]=m*P[a>>2];P[a+4>>2]=y*P[a+4>>2];P[a+8>>2]=p*P[a+8>>2]}$=L[b+20>>2];e=0;f=0;g=0;F=0;n=k;h=fa+-64|0;fa=h;k=C;q:{if((k|0)<4){break q}m=P[o+8>>2];v=P[o+4>>2];r=P[o>>2];L[8513]=L[8513]+1;a=k<<2;x=ha[L[6798]](a,16)|0;L[h+48>>2]=0;L[8513]=L[8513]+1;e=ha[L[6798]](a,16)|0;L[h+56>>2]=e;J[h+60|0]=1;L[h+52>>2]=k;p=m;y=v;u=r;d=k;while(1){q=L[h+48>>2];r:{if((q|0)!=L[h+52>>2]){break r}O=q?q<<1:1;if((O|0)<=(q|0)){break r}if(O){L[8513]=L[8513]+1;j=ha[L[6798]](O<<2,16)|0}else{j=0}s:{t:{if((q|0)>0){B=0;a=0;if(q>>>0>=4){ca=q&-4;i=0;while(1){D=a<<2;L[D+j>>2]=L[e+D>>2];Y=D|4;L[Y+j>>2]=L[e+Y>>2];Y=D|8;L[Y+j>>2]=L[e+Y>>2];D=D|12;L[D+j>>2]=L[e+D>>2];a=a+4|0;i=i+4|0;if((ca|0)!=(i|0)){continue}break}}i=q&3;if(!i){break t}while(1){q=a<<2;L[q+j>>2]=L[e+q>>2];a=a+1|0;B=B+1|0;if((i|0)!=(B|0)){continue}break}break t}if(!e){break s}}if(e){L[8514]=L[8514]+1;ha[L[6799]](e)}q=L[h+48>>2]}L[h+52>>2]=O;e=j}L[(q<<2)+e>>2]=1;L[h+48>>2]=L[h+48>>2]+1;u:{if((d|0)!=(f|0)){break u}d=f?f<<1:1;if(f>>>0>=d>>>0){d=f;break u}L[8513]=L[8513]+1;j=ha[L[6798]](d<<2,16)|0;v:{w:{if(f){B=0;a=0;if(f>>>0>=4){D=f&2147483644;i=0;while(1){q=a<<2;L[q+j>>2]=L[q+x>>2];O=q|4;L[O+j>>2]=L[x+O>>2];O=q|8;L[O+j>>2]=L[x+O>>2];q=q|12;L[q+j>>2]=L[q+x>>2];a=a+4|0;i=i+4|0;if((D|0)!=(i|0)){continue}break}}i=f&3;if(!i){break w}while(1){q=a<<2;L[q+j>>2]=L[q+x>>2];a=a+1|0;B=B+1|0;if((i|0)!=(B|0)){continue}break}break w}if(x){break w}d=1;break v}if(x){L[8514]=L[8514]+1;ha[L[6799]](x)}}x=j}L[(f<<2)+x>>2]=0;a=(f<<4)+o|0;l=P[a+8>>2];p=l>p?l:p;s=P[a+4>>2];y=s>y?s:y;t=P[a>>2];u=ut?t:r;f=f+1|0;if((k|0)!=(f|0)){continue}break}J[h+60|0]=1;L[h+56>>2]=e;a=fa+-64|0;fa=a;L[a+24>>2]=1065353216;L[a+28>>2]=0;L[a+16>>2]=1008981770;L[a+20>>2]=1017370378;q=h+44|0;j=Nb(o,k,a+16|0,q);L[a+12>>2]=0;P[a+8>>2]=-P[a+24>>2];P[a+4>>2]=-P[a+20>>2];P[a>>2]=-P[a+16>>2];i=Nb(o,k,a,q);f=(j<<4)+o|0;t=P[f>>2];B=(i<<4)+o|0;A=P[B>>2];s=P[f+4>>2];z=P[B+4>>2];l=P[f+8>>2];H=P[B+8>>2];L[a+28>>2]=0;l=S(l-H);P[a+24>>2]=l;s=S(s-z);P[a+20>>2]=s;t=S(t-A);P[a+16>>2]=t;x:{y:{if((i|0)!=(j|0)){if(l!=S(0)|s!=S(0)|t!=S(0)){break y}}L[h+28>>2]=-1;L[h+32>>2]=-1;L[h+36>>2]=-1;L[h+40>>2]=-1;break x}L[a+60>>2]=0;L[a+44>>2]=0;A=S(S(s*S(-.019999999552965164))-t);P[a+56>>2]=A;I=S(t*S(0));G=S(l*S(.019999999552965164));z=S(I+G);P[a+52>>2]=z;N=S(s*S(-0));H=S(l+N);P[a+48>>2]=H;d=a+48|0;e=a+32|0;z=S(_(S(S(A*A)+S(S(H*H)+S(z*z)))));s=S(s+S(t*S(-.019999999552965164)));t=S(G+N);l=S(I-l);A=S(_(S(S(s*s)+S(S(t*t)+S(l*l)))));z:{if(z>2];L[e>>2]=L[d>>2];L[e+4>>2]=D;D=L[d+12>>2];L[e+8>>2]=L[d+8>>2];L[e+12>>2]=D;l=P[a+40>>2];A=P[a+32>>2];z=P[a+36>>2];t=S(S(1)/S(_(S(S(l*l)+S(S(A*A)+S(z*z))))));s=S(l*t);l=S(z*t);t=S(A*t)}P[a+40>>2]=s;P[a+36>>2]=l;P[a+32>>2]=t;e=Nb(o,k,e,q);if(!((j|0)!=(e|0)&(e|0)!=(i|0))){L[a+12>>2]=0;P[a+8>>2]=-P[a+40>>2];P[a+4>>2]=-P[a+36>>2];P[a>>2]=-P[a+32>>2];e=Nb(o,k,a,q)}if(!((e|0)!=(j|0)&(e|0)!=(i|0))){L[h+28>>2]=-1;L[h+32>>2]=-1;L[h+36>>2]=-1;L[h+40>>2]=-1;break x}D=(e<<4)+o|0;H=P[D+4>>2];t=P[D+8>>2];l=P[D>>2];I=P[f+4>>2];A=P[f+8>>2];s=P[f>>2];L[a+44>>2]=0;L[a+60>>2]=0;l=S(l-s);P[a+32>>2]=l;s=P[a+24>>2];t=S(t-A);P[a+40>>2]=t;A=P[a+16>>2];z=P[a+20>>2];H=S(H-I);P[a+36>>2]=H;I=S(S(l*z)-S(A*H));z=S(S(H*s)-S(z*t));s=S(S(t*A)-S(s*l));l=S(S(1)/S(_(S(S(I*I)+S(S(z*z)+S(s*s))))));P[a+56>>2]=I*l;P[a+52>>2]=s*l;P[a+48>>2]=z*l;d=Nb(o,k,d,q);if(!(!((e|0)==(d|0)|(d|0)==(j|0))&(d|0)!=(i|0))){L[a+12>>2]=0;P[a+8>>2]=-P[a+56>>2];P[a+4>>2]=-P[a+52>>2];P[a>>2]=-P[a+48>>2];d=Nb(o,k,a,q)}if(!(!((d|0)==(e|0)|(d|0)==(j|0))&(d|0)!=(i|0))){L[h+28>>2]=-1;L[h+32>>2]=-1;L[h+36>>2]=-1;L[h+40>>2]=-1;break x}q=(d<<4)+o|0;A=P[q+8>>2];z=P[q>>2];H=P[q+4>>2];I=P[B+4>>2];G=P[D+4>>2];l=P[f+4>>2];N=P[B+8>>2];Q=P[D>>2];V=P[D+8>>2];s=P[f+8>>2];W=P[B>>2];t=P[f>>2];L[h+32>>2]=i;L[h+28>>2]=j;K=S(A-s);A=S(W-t);G=S(G-l);Q=S(Q-t);I=S(I-l);z=S(z-t);t=S(V-s);s=S(N-s);f=S(S(K*S(S(A*G)-S(Q*I)))+S(S(z*S(S(I*t)-S(G*s)))+S(S(H-l)*S(S(s*Q)-S(t*A)))))>2]=f?e:d;L[h+36>>2]=f?d:e}fa=a- -64|0;a=L[h+28>>2];A:{if((a|0)==-1){e=0;break A}d=L[h+40>>2];e=(d<<4)+o|0;I=P[e>>2];f=L[h+36>>2];i=(f<<4)+o|0;G=P[i>>2];j=L[h+32>>2];q=(j<<4)+o|0;N=P[q>>2];B=(a<<4)+o|0;Q=P[B>>2];V=P[e+4>>2];W=P[i+4>>2];da=P[q+4>>2];ea=P[B+4>>2];ga=P[e+8>>2];ia=P[i+8>>2];ja=P[q+8>>2];ka=P[B+8>>2];e=bc(n,f,d,j);L[e+12>>2]=2;L[e+16>>2]=3;L[e+20>>2]=1;e=bc(n,d,f,a);L[e+12>>2]=3;L[e+16>>2]=2;L[e+20>>2]=0;e=bc(n,a,j,d);L[e+12>>2]=0;L[e+16>>2]=1;L[e+20>>2]=3;e=bc(n,j,a,f);L[e+12>>2]=1;L[e+16>>2]=0;L[e+20>>2]=2;L[(d<<2)+x>>2]=1;L[(f<<2)+x>>2]=1;L[(j<<2)+x>>2]=1;L[(a<<2)+x>>2]=1;if(L[n+4>>2]>0){e=0;while(1){l=S(0);s=S(1);t=S(0);a=L[L[n+12>>2]+(e<<2)>>2];d=(L[a+4>>2]<<4)+o|0;A=P[d>>2];f=(L[a>>2]<<4)+o|0;H=S(A-P[f>>2]);j=(L[a+8>>2]<<4)+o|0;z=P[d+4>>2];K=S(P[j+4>>2]-z);aa=S(P[j>>2]-A);z=S(z-P[f+4>>2]);A=S(S(H*K)-S(aa*z));U=z;z=P[d+8>>2];ba=S(P[j+8>>2]-z);Z=K;K=S(z-P[f+8>>2]);z=S(S(U*ba)-S(Z*K));H=S(S(K*aa)-S(ba*H));K=S(_(S(S(A*A)+S(S(z*z)+S(H*H)))));if(K!=S(0)){s=S(S(1)/K);t=S(A*s);l=S(H*s);s=S(z*s)}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;j=a;d=(d<<4)+o|0;a=(L[a>>2]<<4)+o|0;P[j+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]));e=e+1|0;if((e|0)>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]=(on?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>2]=L[m+12>>2]<<1&14;P[e+84>>2]=P[m+16>>2];d=P[m+20>>2];L[e+80>>2]=0;P[e+88>>2]=d;P[e+92>>2]=P[m+24>>2];d=g}j:{if(!(S(y*S(S(P[k+8>>2]*S(S(z*J)-S(H*B)))+S(S(P[k>>2]*S(S(B*F)-S(J*A)))+S(P[k+4>>2]*S(S(A*H)-S(F*z))))))>S(0))){break j}g=Ke(c,f,k,m+16|0,m+12|0);if(!(d>2];L[e+12>>2]=b>>>1&1|b<<1&8|b<<2&4;P[e+88>>2]=P[m+16>>2];d=P[m+20>>2];L[e+84>>2]=0;P[e+80>>2]=d;P[e+92>>2]=P[m+24>>2];d=g}if(!(d>2]=15;q=P[c>>2];r=P[l+4>>2];n=P[k+8>>2];o=P[c+4>>2];j=P[l+8>>2];h=P[k>>2];i=P[c+8>>2];g=P[l>>2];d=P[k+4>>2];t=S(S(S(S(S(q*r)*n)+S(S(S(S(S(o*j)*h)+S(S(i*g)*d))-S(S(j*q)*d))-S(S(g*o)*n)))-S(S(r*i)*h))/y);P[e+80>>2]=t;q=P[f>>2];r=P[c+4>>2];n=P[k+8>>2];o=P[f+4>>2];j=P[c+8>>2];h=P[k>>2];i=P[f+8>>2];g=P[c>>2];d=P[k+4>>2];x=S(S(S(S(S(q*r)*n)+S(S(S(S(S(o*j)*h)+S(S(i*g)*d))-S(S(j*q)*d))-S(S(g*o)*n)))-S(S(r*i)*h))/y);P[e+84>>2]=x;q=P[l>>2];r=P[f+4>>2];n=P[k+8>>2];o=P[l+4>>2];j=P[f+8>>2];h=P[k>>2];i=P[l+8>>2];g=P[f>>2];d=P[k+4>>2];d=S(S(S(S(S(q*r)*n)+S(S(S(S(S(o*j)*h)+S(S(i*g)*d))-S(S(j*q)*d))-S(S(g*o)*n)))-S(S(r*i)*h))/y);P[e+88>>2]=d;P[e+92>>2]=S(1)-S(S(t+x)+d);d=S(0)}fa=m+32|0;g=d}if(!(g>=S(0))){break e}u=1-u|0;b=R(u,36);U=b+a|0;L[U+180>>2]=0;L[a+136>>2]=0;L[a+140>>2]=0;L[a+128>>2]=0;L[a+132>>2]=0;L[a+368>>2]=u;m=L[w+180>>2];if(!m){d=S(0);V=L[e+12>>2];n=S(0);j=S(0);break b}k=b+W|0;c=L[a+364>>2];d=S(0);M=0;V=L[e+12>>2];n=S(0);j=S(0);b=0;while(1){w=b<<2;l=w+v|0;$=L[l>>2];k:{if(V>>>b&1){f=M<<2;L[f+k>>2]=$;h=P[w+(e+80|0)>>2];M=M+1|0;L[U+180>>2]=M;P[(f+U|0)+164>>2]=h;f=L[l>>2];i=P[f+24>>2];d=P[f+20>>2];j=S(S(h*P[f+16>>2])+P[a+128>>2]);P[a+128>>2]=j;n=S(S(h*d)+P[a+132>>2]);P[a+132>>2]=n;d=S(S(h*i)+P[a+136>>2]);P[a+136>>2]=d;break k}f=c+1|0;L[a+364>>2]=f;L[((c<<2)+a|0)+348>>2]=$;c=f}b=b+1|0;if((m|0)!=(b|0)){continue}break}break b}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}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}b=L[a+376>>2];break a}aa=aa+1|0;b=aa>>>0>=128?2:(V|0)==15?1:L[a+376>>2];L[a+376>>2]=b;if(!b){continue}}break}L[a+372>>2]=(R(u,36)+a|0)+148;d=S(0);l:{switch(b|0){case 0:d=P[a+136>>2];p=S(d*d);d=P[a+128>>2];g=S(d*d);d=P[a+132>>2];d=S(_(S(p+S(g+S(d*d)))));case 1:P[a+144>>2]=d;break;default:break l}}fa=e+96|0;return b}function sH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=S(0),h=S(0),i=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=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=0,D=S(0),E=S(0),F=0,G=0,H=0,I=0,J=0,K=S(0),M=S(0),N=S(0);e=fa-144|0;fa=e;f=ha[L[L[a>>2]+20>>2]](a)|0;ha[L[L[f>>2]+56>>2]](f,b,S(1));a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{f=L[c+4>>2];switch(f|0){case 31:break j;case 28:break c;case 13:break d;case 11:break e;case 10:break f;case 9:break g;case 8:break h;case 0:break i;default:break b}}f=L[c+16>>2];if((f|0)<=0){break a}while(1){k=f-1|0;i=L[c+24>>2]+R(k,80)|0;B=L[i+64>>2];p=P[i+56>>2];q=P[i+48>>2];w=P[i+52>>2];x=P[i+32>>2];y=P[i>>2];z=P[i+16>>2];A=P[i+36>>2];r=P[i+4>>2];s=P[i+20>>2];t=P[i+40>>2];D=P[i+8>>2];E=P[i+24>>2];K=P[b+48>>2];M=P[b+52>>2];N=P[b+56>>2];g=P[b+8>>2];h=P[b>>2];j=P[b+4>>2];l=P[b+24>>2];m=P[b+16>>2];n=P[b+20>>2];u=P[b+40>>2];v=P[b+32>>2];o=P[b+36>>2];L[e+60>>2]=0;L[e+44>>2]=0;L[e+28>>2]=0;L[e+12>>2]=0;P[e+40>>2]=S(t*u)+S(S(D*v)+S(E*o));P[e+36>>2]=S(A*u)+S(S(r*v)+S(s*o));P[e+32>>2]=S(x*u)+S(S(y*v)+S(z*o));P[e+24>>2]=S(t*l)+S(S(D*m)+S(E*n));P[e+20>>2]=S(A*l)+S(S(r*m)+S(s*n));P[e+16>>2]=S(x*l)+S(S(y*m)+S(z*n));P[e+8>>2]=S(t*g)+S(S(D*h)+S(E*j));P[e+4>>2]=S(A*g)+S(S(r*h)+S(s*j));P[e>>2]=S(x*g)+S(S(y*h)+S(z*j));P[e+56>>2]=N+S(S(p*u)+S(S(q*v)+S(w*o)));P[e+52>>2]=M+S(S(p*l)+S(S(q*m)+S(w*n)));P[e+48>>2]=K+S(S(p*g)+S(S(q*h)+S(w*j)));ha[L[L[a>>2]+28>>2]](a,e,B,d);i=f>>>0>1;f=k;if(i){continue}break}break a}f=L[c+40>>2];L[e+8>>2]=L[c+36>>2];L[e+12>>2]=f;f=L[c+32>>2];L[e>>2]=L[c+28>>2];L[e+4>>2]=f;g=S(ha[L[L[c>>2]+48>>2]](c));h=S(ha[L[L[c>>2]+48>>2]](c));j=S(S(ha[L[L[c>>2]+48>>2]](c))+P[e+8>>2]);P[e+8>>2]=j;g=S(g+P[e>>2]);P[e>>2]=g;h=S(h+P[e+4>>2]);P[e+4>>2]=h;a=ha[L[L[a>>2]+20>>2]](a)|0;L[e+140>>2]=0;P[e+136>>2]=-j;P[e+132>>2]=-h;P[e+128>>2]=-g;ha[L[L[a>>2]+72>>2]](a,e+128|0,e,b,d);break a}g=S(ha[L[L[c>>2]+48>>2]](c));a=ha[L[L[a>>2]+20>>2]](a)|0;ha[L[L[a>>2]+16>>2]](a,g,b,d);break a}f=L[c+92>>2];if((f|0)<=0){break a}while(1){k=f-1|0;i=L[c+100>>2]+(k<<4)|0;g=P[i+8>>2];h=P[i>>2];j=P[i+4>>2];i=ha[L[L[a>>2]+20>>2]](a)|0;x=P[L[c+120>>2]+(k<<2)>>2];y=P[b+48>>2];z=P[b+52>>2];A=P[b+56>>2];l=P[b+8>>2];m=P[b>>2];n=P[b+4>>2];u=P[b+24>>2];v=P[b+16>>2];o=P[b+20>>2];p=P[b+40>>2];q=P[b+32>>2];w=P[b+36>>2];L[e+60>>2]=0;L[e+44>>2]=0;L[e+28>>2]=0;L[e+12>>2]=0;r=S(q*S(0));s=S(w*S(0));P[e+40>>2]=p+S(r+s);t=S(p*S(0));P[e+36>>2]=t+S(r+w);P[e+32>>2]=t+S(q+s);r=S(v*S(0));s=S(o*S(0));P[e+24>>2]=u+S(r+s);t=S(u*S(0));P[e+20>>2]=t+S(r+o);P[e+16>>2]=t+S(v+s);r=S(m*S(0));s=S(n*S(0));P[e+8>>2]=l+S(r+s);t=S(l*S(0));P[e+4>>2]=t+S(r+n);P[e>>2]=t+S(m+s);P[e+56>>2]=A+S(S(g*p)+S(S(h*q)+S(j*w)));P[e+52>>2]=z+S(S(g*u)+S(S(h*v)+S(j*o)));P[e+48>>2]=y+S(S(g*l)+S(S(h*m)+S(j*n)));ha[L[L[i>>2]+16>>2]](i,x,e,d);i=f>>>0>1;f=k;if(i){continue}break}break a}f=L[c+52>>2];c=c+28|0;g=P[(f<<2)+c>>2];h=P[c+((f+2|0)%3<<2)>>2];a=ha[L[L[a>>2]+20>>2]](a)|0;ha[L[L[a>>2]+76>>2]](a,h,g,f,b,d);break a}f=L[c+68>>2];g=P[c+60>>2];h=P[c+56>>2];a=ha[L[L[a>>2]+20>>2]](a)|0;ha[L[L[a>>2]+84>>2]](a,h,g,f,b,d);break a}f=L[c+52>>2];g=S(ha[L[L[c>>2]+92>>2]](c));k=L[c+40>>2];L[e+8>>2]=L[c+36>>2];L[e+12>>2]=k;k=L[c+32>>2];L[e>>2]=L[c+28>>2];L[e+4>>2]=k;h=S(ha[L[L[c>>2]+48>>2]](c));j=S(ha[L[L[c>>2]+48>>2]](c));P[e+8>>2]=S(ha[L[L[c>>2]+48>>2]](c))+P[e+8>>2];P[e>>2]=h+P[e>>2];P[e+4>>2]=j+P[e+4>>2];h=P[(f<<2)+e>>2];a=ha[L[L[a>>2]+20>>2]](a)|0;ha[L[L[a>>2]+80>>2]](a,g,h,f,b,d);break a}g=P[c+64>>2];a=ha[L[L[a>>2]+20>>2]](a)|0;ha[L[L[a>>2]+88>>2]](a,c+48|0,g,b,d);break a}k:{if((f|0)>6){break k}B=L[c+52>>2];if(B){if(L[B+28>>2]<=0){break k}while(1){i=L[B+36>>2];F=R(G,36);f=i+F|0;H=L[f+4>>2];l:{if((H|0)<=0){g=S(0);h=S(0);j=S(0);break l}k=L[(L[f+12>>2]+(H<<2)|0)-4>>2];j=S(0);f=0;h=S(0);g=S(0);while(1){i=L[L[(i+F|0)+12>>2]+(f<<2)>>2];I=i<<4;C=I+L[B+16>>2]|0;t=P[C>>2];D=P[C+4>>2];E=P[C+8>>2];C=ha[L[L[a>>2]+20>>2]](a)|0;J=L[B+16>>2];k=J+(k<<4)|0;l=P[k+8>>2];m=P[k>>2];n=P[k+4>>2];u=P[b+48>>2];v=P[b+8>>2];o=P[b>>2];p=P[b+4>>2];q=P[b+52>>2];w=P[b+24>>2];x=P[b+16>>2];y=P[b+20>>2];z=P[b+56>>2];A=P[b+40>>2];r=P[b+32>>2];s=P[b+36>>2];L[e+12>>2]=0;P[e+8>>2]=z+S(S(l*A)+S(S(m*r)+S(n*s)));P[e+4>>2]=q+S(S(l*w)+S(S(m*x)+S(n*y)));P[e>>2]=u+S(S(l*v)+S(S(m*o)+S(n*p)));k=I+J|0;l=P[k+8>>2];m=P[k>>2];n=P[k+4>>2];L[e+140>>2]=0;P[e+136>>2]=z+S(S(l*A)+S(S(m*r)+S(s*n)));P[e+132>>2]=q+S(S(l*w)+S(S(m*x)+S(y*n)));P[e+128>>2]=u+S(S(l*v)+S(S(m*o)+S(p*n)));ha[L[L[C>>2]+8>>2]](C,e,e+128|0,d);j=S(j+E);h=S(h+D);g=S(g+t);k=i;f=f+1|0;i=L[B+36>>2];if((f|0)>2]){continue}break}}f=ha[L[L[a>>2]+20>>2]](a)|0;if(ha[L[L[f>>2]+48>>2]](f)&16384){L[e+8>>2]=0;L[e+12>>2]=0;L[e>>2]=1065353216;L[e+4>>2]=1065353216;f=L[B+36>>2]+F|0;r=P[f+28>>2];s=P[f+20>>2];t=P[f+24>>2];f=ha[L[L[a>>2]+20>>2]](a)|0;l=P[b+48>>2];m=P[b+8>>2];n=P[b>>2];u=P[b+4>>2];v=P[b+52>>2];o=P[b+24>>2];p=P[b+16>>2];q=P[b+20>>2];w=P[b+56>>2];x=P[b+40>>2];y=P[b+32>>2];z=P[b+36>>2];L[e+140>>2]=0;A=S(S(1)/S(H|0));j=S(A*j);g=S(A*g);h=S(A*h);P[e+136>>2]=w+S(S(x*j)+S(S(y*g)+S(z*h)));P[e+132>>2]=v+S(S(j*o)+S(S(g*p)+S(h*q)));P[e+128>>2]=l+S(S(j*m)+S(S(g*n)+S(h*u)));L[e+124>>2]=0;j=S(j+r);g=S(g+s);h=S(h+t);P[e+120>>2]=w+S(S(x*j)+S(S(y*g)+S(z*h)));P[e+116>>2]=v+S(S(j*o)+S(S(g*p)+S(h*q)));P[e+112>>2]=l+S(S(j*m)+S(S(g*n)+S(h*u)));ha[L[L[f>>2]+8>>2]](f,e+128|0,e+112|0,e)}G=G+1|0;if((G|0)>2]){continue}break}break k}if((ha[L[L[c>>2]+100>>2]](c)|0)<=0){break k}f=0;while(1){ha[L[L[c>>2]+104>>2]](c,f,e,e+128|0);g=P[b+48>>2];h=P[b+8>>2];j=P[b>>2];l=P[b+4>>2];m=P[b+52>>2];n=P[b+24>>2];u=P[b+16>>2];v=P[b+20>>2];o=P[b+56>>2];p=P[b+40>>2];q=P[b+32>>2];w=P[b+36>>2];L[e+124>>2]=0;x=P[e+8>>2];y=P[e>>2];z=P[e+4>>2];P[e+120>>2]=o+S(S(p*x)+S(S(q*y)+S(w*z)));P[e+116>>2]=m+S(S(x*n)+S(S(y*u)+S(z*v)));P[e+112>>2]=g+S(S(x*h)+S(S(y*j)+S(z*l)));L[e+108>>2]=0;r=o;o=P[e+136>>2];s=S(p*o);p=P[e+128>>2];t=S(q*p);q=P[e+132>>2];P[e+104>>2]=r+S(s+S(t+S(w*q)));P[e+100>>2]=m+S(S(o*n)+S(S(p*u)+S(v*q)));P[e+96>>2]=g+S(S(o*h)+S(S(p*j)+S(l*q)));k=ha[L[L[a>>2]+20>>2]](a)|0;ha[L[L[k>>2]+8>>2]](k,e+112|0,e+96|0,d);f=f+1|0;if((ha[L[L[c>>2]+100>>2]](c)|0)>(f|0)){continue}break}}f=L[c+4>>2];if(f-21>>>0<=8){L[e+136>>2]=1566444395;L[e+140>>2]=0;L[e+128>>2]=1566444395;L[e+132>>2]=1566444395;L[e+120>>2]=-581039253;L[e+124>>2]=0;L[e+112>>2]=-581039253;L[e+116>>2]=-581039253;L[e+8>>2]=ha[L[L[a>>2]+20>>2]](a);L[e+4>>2]=8612;L[e>>2]=8588;f=L[d+12>>2];L[e+20>>2]=L[d+8>>2];L[e+24>>2]=f;f=L[d+4>>2];L[e+12>>2]=L[d>>2];L[e+16>>2]=f;f=L[b+12>>2];L[e+36>>2]=L[b+8>>2];L[e+40>>2]=f;f=L[b+4>>2];L[e+28>>2]=L[b>>2];L[e+32>>2]=f;f=L[b+20>>2];L[e+44>>2]=L[b+16>>2];L[e+48>>2]=f;f=L[b+28>>2];L[e+52>>2]=L[b+24>>2];L[e+56>>2]=f;f=L[b+44>>2];L[e+68>>2]=L[b+40>>2];L[e+72>>2]=f;f=L[b+36>>2];L[e+60>>2]=L[b+32>>2];L[e+64>>2]=f;f=L[b+52>>2];L[e+76>>2]=L[b+48>>2];L[e+80>>2]=f;f=L[b+60>>2];L[e+84>>2]=L[b+56>>2];L[e+88>>2]=f;ha[L[L[c>>2]+64>>2]](c,e,e+112|0,e+128|0);f=L[c+4>>2]}if((f|0)!=3){break a}L[e+136>>2]=1566444395;L[e+140>>2]=0;L[e+128>>2]=1566444395;L[e+132>>2]=1566444395;L[e+120>>2]=-581039253;L[e+124>>2]=0;L[e+112>>2]=-581039253;L[e+116>>2]=-581039253;L[e+8>>2]=ha[L[L[a>>2]+20>>2]](a);L[e+4>>2]=8612;L[e>>2]=8588;a=L[d+12>>2];L[e+20>>2]=L[d+8>>2];L[e+24>>2]=a;a=L[d+4>>2];L[e+12>>2]=L[d>>2];L[e+16>>2]=a;a=L[b+12>>2];L[e+36>>2]=L[b+8>>2];L[e+40>>2]=a;a=L[b+4>>2];L[e+28>>2]=L[b>>2];L[e+32>>2]=a;a=L[b+20>>2];L[e+44>>2]=L[b+16>>2];L[e+48>>2]=a;a=L[b+28>>2];L[e+52>>2]=L[b+24>>2];L[e+56>>2]=a;a=L[b+44>>2];L[e+68>>2]=L[b+40>>2];L[e+72>>2]=a;a=L[b+36>>2];L[e+60>>2]=L[b+32>>2];L[e+64>>2]=a;a=L[b+52>>2];L[e+76>>2]=L[b+48>>2];L[e+80>>2]=a;a=L[b+60>>2];L[e+84>>2]=L[b+56>>2];L[e+88>>2]=a;a=L[c+92>>2];ha[L[L[a>>2]+8>>2]](a,e+4|0,e+112|0,e+128|0)}fa=e+144|0}function fm(a,b,c,d,e){var f=0,g=S(0),h=0,i=0,j=0,k=0,l=0,m=S(0),n=S(0),o=S(0),p=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);k=fa-48|0;fa=k;J[a+60|0]=c;a:{if(c){g=P[d>>2];m=P[d+4>>2];n=P[d+8>>2];L[a+16>>2]=0;o=S(n+S(-1));P[a+12>>2]=o;m=S(m+S(-1));P[a+8>>2]=m;n=S(g+S(-1));P[a+4>>2]=n;v=P[e>>2];q=P[e+4>>2];g=P[e+8>>2];J[a+60|0]=1;L[a+32>>2]=0;t=S(g+S(1));P[a+28>>2]=t;u=S(q+S(1));P[a+24>>2]=u;q=S(v+S(1));P[a+20>>2]=q;w=S(S(65533)/S(t-o));P[a+44>>2]=w;x=S(S(65533)/S(u-m));P[a+40>>2]=x;y=S(S(65533)/S(q-n));P[a+36>>2]=y;g=S(S(o-o)*w);b:{if(g=S(0)){c=~~g>>>0;break b}c=0}z=S((c&65534)>>>0);g=S(S(m-m)*x);c:{if(g=S(0)){c=~~g>>>0;break c}c=0}v=S(m+S(S((c&65534)>>>0)/x));g=S(S(n-n)*y);d:{if(g=S(0)){c=~~g>>>0;break d}c=0}g=S(S(n+S(S((c&65534)>>>0)/y))+S(-1));if(g>2]=g;n=g}g=S(v+S(-1));if(g>2]=g;m=g}g=S(S(o+S(z/w))+S(-1));if(g>2]=g;o=g}g=S(S(w*S(t-o))+S(1));e:{if(g=S(0)){c=~~g>>>0;break e}c=0}z=S((c|1)>>>0);g=S(S(x*S(u-m))+S(1));f:{if(g=S(0)){c=~~g>>>0;break f}c=0}v=S(m+S(S((c|1)>>>0)/x));g=S(S(y*S(q-n))+S(1));g:{if(g=S(0)){c=~~g>>>0;break g}c=0}g=S(S(n+S(S((c|1)>>>0)/y))+S(1));if(g>q){P[a+20>>2]=g;q=g}g=S(v+S(1));if(g>u){P[a+24>>2]=g;u=g}g=S(S(o+S(z/w))+S(1));if(g>t){P[a+28>>2]=g;t=g}L[a+48>>2]=0;P[a+44>>2]=S(65533)/S(t-o);P[a+40>>2]=S(65533)/S(u-m);P[a+36>>2]=S(65533)/S(q-n);L[k+32>>2]=a;L[k+28>>2]=a+104;L[k+24>>2]=15532;ha[L[L[b>>2]+8>>2]](b,k+24|0,a+4|0,a+20|0);c=L[a+128>>2];r=L[a+108>>2];j=r<<1;h:{if((c|0)>=(j|0)){break h}if((j|0)>L[a+132>>2]){i:{if(!r){d=0;e=c;break i}L[8513]=L[8513]+1;d=ha[L[6798]](r<<5,16)|0;e=L[a+128>>2]}j:{if((e|0)<=0){break j}b=0;if((e|0)!=1){s=e&-2;while(1){i=b<<4;h=i+d|0;p=i+L[a+136>>2]|0;f=L[p+4>>2];L[h>>2]=L[p>>2];L[h+4>>2]=f;f=L[p+12>>2];L[h+8>>2]=L[p+8>>2];L[h+12>>2]=f;f=i|16;h=f+d|0;i=f+L[a+136>>2]|0;f=L[i+4>>2];L[h>>2]=L[i>>2];L[h+4>>2]=f;f=L[i+12>>2];L[h+8>>2]=L[i+8>>2];L[h+12>>2]=f;b=b+2|0;l=l+2|0;if((s|0)!=(l|0)){continue}break}}if(!(e&1)){break j}b=b<<4;e=b+d|0;f=b+L[a+136>>2]|0;b=L[f+4>>2];L[e>>2]=L[f>>2];L[e+4>>2]=b;b=L[f+12>>2];L[e+8>>2]=L[f+8>>2];L[e+12>>2]=b}b=L[a+136>>2];if(!(b?!b|!M[a+140|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+136>>2]=d;J[a+140|0]=1;L[a+132>>2]=j}e=j+(c^-1)|0;d=j-c&3;if(d){b=0;while(1){f=L[a+136>>2]+(c<<4)|0;L[f>>2]=0;L[f+4>>2]=0;L[f+8>>2]=0;L[f+12>>2]=0;c=c+1|0;b=b+1|0;if((d|0)!=(b|0)){continue}break}}if(e>>>0<3){break h}while(1){d=c<<4;b=d+L[a+136>>2]|0;L[b>>2]=0;L[b+4>>2]=0;L[b+8>>2]=0;L[b+12>>2]=0;b=d+L[a+136>>2]|0;L[b+24>>2]=0;L[b+28>>2]=0;L[b+16>>2]=0;L[b+20>>2]=0;b=d+L[a+136>>2]|0;L[b+40>>2]=0;L[b+44>>2]=0;L[b+32>>2]=0;L[b+36>>2]=0;b=d+L[a+136>>2]|0;L[b+56>>2]=0;L[b+60>>2]=0;L[b+48>>2]=0;L[b+52>>2]=0;c=c+4|0;if((j|0)!=(c|0)){continue}break}}L[a+128>>2]=j;break a}L[k+40>>2]=15664;L[k+44>>2]=a- -64;L[k+32>>2]=-581039253;L[k+36>>2]=0;L[k+24>>2]=-581039253;L[k+28>>2]=-581039253;L[k+16>>2]=1566444395;L[k+20>>2]=0;L[k+8>>2]=1566444395;L[k+12>>2]=1566444395;ha[L[L[b>>2]+8>>2]](b,k+40|0,k+24|0,k+8|0);b=L[a+88>>2];r=L[a+68>>2];l=r<<1;k:{if((b|0)>=(l|0)){break k}if((l|0)>L[a+92>>2]){if(r){L[8513]=L[8513]+1;p=ha[L[6798]](r<<7,16)|0;c=L[a+88>>2]}else{c=b}l:{if((c|0)<=0){break l}d=0;if((c|0)!=1){s=c&-2;while(1){i=d<<6;h=i+p|0;j=i+L[a+96>>2]|0;e=L[j+4>>2];L[h>>2]=L[j>>2];L[h+4>>2]=e;e=L[j+60>>2];L[h+56>>2]=L[j+56>>2];L[h+60>>2]=e;e=L[j+52>>2];L[h+48>>2]=L[j+48>>2];L[h+52>>2]=e;e=L[j+44>>2];L[h+40>>2]=L[j+40>>2];L[h+44>>2]=e;e=L[j+36>>2];L[h+32>>2]=L[j+32>>2];L[h+36>>2]=e;e=L[j+28>>2];L[h+24>>2]=L[j+24>>2];L[h+28>>2]=e;e=L[j+20>>2];L[h+16>>2]=L[j+16>>2];L[h+20>>2]=e;e=L[j+12>>2];L[h+8>>2]=L[j+8>>2];L[h+12>>2]=e;e=i|64;h=e+p|0;i=e+L[a+96>>2]|0;e=L[i+4>>2];L[h>>2]=L[i>>2];L[h+4>>2]=e;e=L[i+12>>2];L[h+8>>2]=L[i+8>>2];L[h+12>>2]=e;e=L[i+20>>2];L[h+16>>2]=L[i+16>>2];L[h+20>>2]=e;e=L[i+28>>2];L[h+24>>2]=L[i+24>>2];L[h+28>>2]=e;e=L[i+36>>2];L[h+32>>2]=L[i+32>>2];L[h+36>>2]=e;e=L[i+44>>2];L[h+40>>2]=L[i+40>>2];L[h+44>>2]=e;e=L[i+52>>2];L[h+48>>2]=L[i+48>>2];L[h+52>>2]=e;e=L[i+60>>2];L[h+56>>2]=L[i+56>>2];L[h+60>>2]=e;d=d+2|0;f=f+2|0;if((s|0)!=(f|0)){continue}break}}if(!(c&1)){break l}c=d<<6;d=c+p|0;e=c+L[a+96>>2]|0;c=L[e+4>>2];L[d>>2]=L[e>>2];L[d+4>>2]=c;c=L[e+60>>2];L[d+56>>2]=L[e+56>>2];L[d+60>>2]=c;c=L[e+52>>2];L[d+48>>2]=L[e+48>>2];L[d+52>>2]=c;c=L[e+44>>2];L[d+40>>2]=L[e+40>>2];L[d+44>>2]=c;c=L[e+36>>2];L[d+32>>2]=L[e+32>>2];L[d+36>>2]=c;c=L[e+28>>2];L[d+24>>2]=L[e+24>>2];L[d+28>>2]=c;c=L[e+20>>2];L[d+16>>2]=L[e+16>>2];L[d+20>>2]=c;c=L[e+12>>2];L[d+8>>2]=L[e+8>>2];L[d+12>>2]=c}c=L[a+96>>2];if(!(c?!c|!M[a+100|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[a+96>>2]=p;J[a+100|0]=1;L[a+92>>2]=l}d=l+(b^-1)|0;c=l-b&3;if(c){e=0;while(1){f=L[a+96>>2]+(b<<6)|0;L[f>>2]=0;L[f+4>>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;L[f+32>>2]=0;L[f+36>>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;b=b+1|0;e=e+1|0;if((c|0)!=(e|0)){continue}break}}if(d>>>0<3){break k}while(1){d=b<<6;c=d+L[a+96>>2]|0;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;c=d+L[a+96>>2]|0;L[c+120>>2]=0;L[c+124>>2]=0;L[c+112>>2]=0;L[c+116>>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;c=c- -64|0;L[c>>2]=0;L[c+4>>2]=0;c=d+L[a+96>>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;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;c=d+L[a+96>>2]|0;L[c+248>>2]=0;L[c+252>>2]=0;L[c+240>>2]=0;L[c+244>>2]=0;L[c+232>>2]=0;L[c+236>>2]=0;L[c+224>>2]=0;L[c+228>>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;b=b+4|0;if((l|0)!=(b|0)){continue}break}}L[a+88>>2]=l}L[a+56>>2]=0;Xg(a,0,r);if(!(L[a+152>>2]|!M[a+60|0])){if(L[a+156>>2]){b=1}else{L[8513]=L[8513]+1;s=ha[L[6798]](32,16)|0;h=L[a+152>>2];m:{if((h|0)<=0){break m}e=0;if((h|0)!=1){d=h&-2;l=0;while(1){f=e<<5;c=f+s|0;i=f+L[a+160>>2]|0;b=L[i+4>>2];L[c>>2]=L[i>>2];L[c+4>>2]=b;b=L[i+28>>2];L[c+24>>2]=L[i+24>>2];L[c+28>>2]=b;b=L[i+20>>2];L[c+16>>2]=L[i+16>>2];L[c+20>>2]=b;b=L[i+12>>2];L[c+8>>2]=L[i+8>>2];L[c+12>>2]=b;b=f|32;c=b+s|0;f=b+L[a+160>>2]|0;b=L[f+4>>2];L[c>>2]=L[f>>2];L[c+4>>2]=b;b=L[f+12>>2];L[c+8>>2]=L[f+8>>2];L[c+12>>2]=b;b=L[f+20>>2];L[c+16>>2]=L[f+16>>2];L[c+20>>2]=b;b=L[f+28>>2];L[c+24>>2]=L[f+24>>2];L[c+28>>2]=b;e=e+2|0;l=l+2|0;if((d|0)!=(l|0)){continue}break}}if(!(h&1)){break m}b=e<<5;c=b+s|0;d=b+L[a+160>>2]|0;b=L[d+4>>2];L[c>>2]=L[d>>2];L[c+4>>2]=b;b=L[d+28>>2];L[c+24>>2]=L[d+24>>2];L[c+28>>2]=b;b=L[d+20>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=b;b=L[d+12>>2];L[c+8>>2]=L[d+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]=s;J[a+164|0]=1;L[a+156>>2]=1;b=L[a+152>>2]+1|0}L[a+152>>2]=b;d=L[a+160>>2];c=L[a+136>>2];K[d>>1]=N[c>>1];K[d+2>>1]=N[c+2>>1];K[d+4>>1]=N[c+4>>1];K[d+6>>1]=N[c+6>>1];K[d+8>>1]=N[c+8>>1];b=N[c+10>>1];L[d+12>>2]=0;K[d+10>>1]=b;b=L[c+12>>2];L[d+16>>2]=(b|0)>=0?1:0-b|0}L[a+168>>2]=L[a+152>>2];b=L[a+116>>2];if(!(b?!b|!M[a+120|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+116>>2]=0;J[a+120|0]=1;L[a+108>>2]=0;L[a+112>>2]=0;b=L[a+76>>2];if(!(b?!b|!M[a+80|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+76>>2]=0;J[a+80|0]=1;L[a+68>>2]=0;L[a+72>>2]=0;fa=k+48|0}function uB(a){a=a|0;var b=0,c=S(0),d=0,e=S(0),f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=S(0),o=0,p=S(0),q=S(0),r=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),J=S(0),K=S(0),N=S(0),O=S(0),Q=0,U=0,V=0,W=S(0),X=S(0),Y=S(0),Z=0;r=fa-48|0;fa=r;if(M[a+738|0]){L[a+744>>2]=0;L[a+36>>2]=0;if(!M[a+736|0]){e=P[a+672>>2];b=L[a+32>>2];g=P[a+664>>2];h=P[a+668>>2];p=S(S(S(e*P[b+44>>2])+S(S(g*P[b+36>>2])+S(h*P[b+40>>2])))+P[b+60>>2]);f=P[a+608>>2];d=L[a+28>>2];c=P[a+600>>2];j=P[a+604>>2];m=S(S(S(f*P[d+44>>2])+S(S(c*P[d+36>>2])+S(j*P[d+40>>2])))+P[d+60>>2]);i=S(p-m);t=S(S(S(e*P[b+12>>2])+S(S(g*P[b+4>>2])+S(h*P[b+8>>2])))+P[b+52>>2]);u=S(S(S(f*P[d+12>>2])+S(S(c*P[d+4>>2])+S(j*P[d+8>>2])))+P[d+52>>2]);k=S(t-u);C=S(S(S(e*P[b+28>>2])+S(S(g*P[b+20>>2])+S(h*P[b+24>>2])))+P[b+56>>2]);D=S(S(S(f*P[d+28>>2])+S(S(c*P[d+20>>2])+S(j*P[d+24>>2])))+P[d+56>>2]);g=S(C-D);e=S(S(i*i)+S(S(k*k)+S(g*g)));a:{if(e>S(1.1920928955078125e-7)){h=S(S(1)/S(_(e)));e=S(i*h);P[r+8>>2]=e;g=S(g*h);P[r+4>>2]=g;h=S(k*h);P[r>>2]=h;break a}L[r+8>>2]=0;L[r>>2]=1065353216;L[r+4>>2]=0;h=S(1);g=S(0);e=S(0)}L[r+12>>2]=0;b:{if(S(T(e))>S(.7071067690849304)){f=S(S(g*g)+S(e*e));i=S(S(1)/S(_(f)));f=S(f*i);c=S(i*S(-e));j=S(c*h);e=S(g*i);g=S(e*S(-h));i=S(0);break b}c=S(S(h*h)+S(g*g));f=S(S(1)/S(_(c)));j=S(c*f);i=S(f*S(-g));g=S(e*i);c=S(h*f);f=S(c*S(-e));e=S(0)}P[r+40>>2]=j;P[r+36>>2]=g;P[r+20>>2]=c;P[r+32>>2]=f;P[r+24>>2]=e;P[r+16>>2]=i;while(1){E=P[b+344>>2];K=P[d+344>>2];z=P[d+36>>2];A=P[d+4>>2];B=P[d+20>>2];l=P[d+40>>2];v=P[d+8>>2];s=P[d+24>>2];n=P[d+44>>2];q=P[d+12>>2];w=P[d+56>>2];x=P[d+28>>2];y=P[d+60>>2];G=P[d+52>>2];H=P[b+36>>2];I=P[b+4>>2];N=P[b+20>>2];k=P[b+40>>2];O=P[b+8>>2];Y=P[b+24>>2];e=P[b+44>>2];h=P[b+12>>2];g=P[b+56>>2];j=P[b+28>>2];f=P[b+52>>2];c=P[b+60>>2];U=(Q<<4)+r|0;Z=L[U+4>>2];o=R(Q,84)+a|0;V=o+48|0;L[V>>2]=L[U>>2];L[V+4>>2]=Z;V=L[U+12>>2];L[o+56>>2]=L[U+8>>2];L[o+60>>2]=V;L[o+92>>2]=0;L[o+76>>2]=0;F=e;i=S(C-g);e=P[o+48>>2];W=S(t-f);g=P[o+52>>2];f=S(S(i*e)-S(W*g));J=h;X=S(p-c);h=P[o+56>>2];c=S(S(X*g)-S(i*h));i=j;j=S(S(W*h)-S(X*e));i=S(S(F*f)+S(S(J*c)+S(i*j)));P[o+88>>2]=i;k=S(S(k*f)+S(S(O*c)+S(Y*j)));P[o+84>>2]=k;f=S(S(H*f)+S(S(I*c)+S(N*j)));P[o+80>>2]=f;F=n;j=S(u-G);n=S(D-w);c=S(S(g*j)-S(e*n));J=S(n*h);n=S(m-y);g=S(J-S(g*n));e=S(S(n*e)-S(h*j));h=S(S(F*c)+S(S(q*g)+S(x*e)));P[o+72>>2]=h;j=S(S(l*c)+S(S(v*g)+S(s*e)));P[o+68>>2]=j;e=S(S(z*c)+S(S(A*g)+S(B*e)));P[o- -64>>2]=e;g=P[d+404>>2];c=P[d+400>>2];z=P[d+396>>2];L[o+108>>2]=0;z=S(e*z);P[o+96>>2]=z;c=S(j*c);P[o+100>>2]=c;g=S(h*g);P[o+104>>2]=g;A=P[b+404>>2];B=P[b+400>>2];l=P[b+396>>2];L[o+124>>2]=0;l=S(f*l);P[o+112>>2]=l;B=S(k*B);P[o+116>>2]=B;A=S(i*A);P[o+120>>2]=A;P[o+128>>2]=S(E+S(K+S(S(g*h)+S(S(z*e)+S(j*c)))))+S(S(A*i)+S(S(l*f)+S(k*B)));Q=Q+1|0;if((Q|0)!=3){continue}break}}e=P[a+576>>2];g=P[a+560>>2];h=P[a+592>>2];c:{if(S(T(h))>S(.7071067690849304)){f=S(S(e*e)+S(h*h));i=S(S(1)/S(_(f)));c=S(i*S(-h));j=S(g*c);k=S(e*i);p=S(k*S(-g));m=S(0);f=S(f*i);break c}c=S(S(g*g)+S(e*e));f=S(S(1)/S(_(c)));j=S(c*f);m=S(f*S(-e));p=S(h*m);k=S(0);c=S(g*f);f=S(c*S(-h))}b=L[a+32>>2];q=P[b+36>>2];w=P[b+20>>2];n=P[b+40>>2];x=P[b+8>>2];y=P[b+24>>2];s=P[b+44>>2];G=P[b+12>>2];H=P[b+28>>2];d=L[a+28>>2];t=P[d+44>>2];u=P[d+36>>2];C=P[d+40>>2];D=P[d+12>>2];E=P[d+8>>2];K=P[d+28>>2];z=P[d+20>>2];A=P[d+24>>2];I=P[b+4>>2];B=P[d+4>>2];L[a+308>>2]=0;L[a+312>>2]=0;L[a+300>>2]=0;L[a+304>>2]=0;L[a+344>>2]=0;L[a+328>>2]=0;i=S(S(t*k)+S(S(u*m)+S(c*C)));l=S(S(D*k)+S(S(B*m)+S(c*E)));c=S(S(K*k)+S(S(z*m)+S(c*A)));k=S(S(t*i)+S(S(D*l)+S(K*c)));P[a+324>>2]=k;m=S(S(C*i)+S(S(E*l)+S(A*c)));P[a+320>>2]=m;v=S(S(u*i)+S(S(B*l)+S(z*c)));P[a+316>>2]=v;l=S(-l);s=S(S(S(G*l)-S(H*c))-S(s*i));P[a+340>>2]=s;n=S(S(S(x*l)-S(y*c))-S(n*i));P[a+336>>2]=n;c=S(S(S(I*l)-S(w*c))-S(q*i));P[a+332>>2]=c;i=P[d+400>>2];l=P[d+404>>2];q=P[d+396>>2];L[a+360>>2]=0;l=S(k*l);P[a+356>>2]=l;i=S(m*i);P[a+352>>2]=i;q=S(v*q);P[a+348>>2]=q;w=P[b+400>>2];x=P[b+404>>2];y=P[b+396>>2];L[a+376>>2]=0;x=S(s*x);P[a+372>>2]=x;w=S(n*w);P[a+368>>2]=w;y=S(c*y);P[a+364>>2]=y;P[a+380>>2]=S(S(l*k)+S(S(q*v)+S(m*i)))+S(S(x*s)+S(S(y*c)+S(n*w)));v=P[d+36>>2];s=P[d+20>>2];l=P[d+40>>2];n=P[d+8>>2];q=P[d+24>>2];m=P[d+44>>2];w=P[d+12>>2];x=P[d+28>>2];y=P[b+36>>2];G=P[b+20>>2];H=P[b+40>>2];I=P[b+8>>2];N=P[b+24>>2];O=P[b+44>>2];c=P[b+12>>2];Y=P[b+28>>2];W=P[d+4>>2];X=P[b+4>>2];L[a+392>>2]=0;L[a+396>>2]=0;L[a+384>>2]=0;L[a+388>>2]=0;L[a+428>>2]=0;L[a+412>>2]=0;i=S(S(D*j)+S(S(B*f)+S(p*E)));k=S(-i);F=S(c*k);c=S(S(K*j)+S(S(z*f)+S(p*A)));f=S(S(t*j)+S(S(u*f)+S(p*C)));j=S(S(F-S(Y*c))-S(O*f));P[a+424>>2]=j;p=S(S(S(I*k)-S(N*c))-S(H*f));P[a+420>>2]=p;k=S(S(S(X*k)-S(G*c))-S(y*f));P[a+416>>2]=k;m=S(S(m*f)+S(S(w*i)+S(c*x)));P[a+408>>2]=m;l=S(S(l*f)+S(S(n*i)+S(c*q)));P[a+404>>2]=l;f=S(S(v*f)+S(S(W*i)+S(c*s)));P[a+400>>2]=f;c=P[d+400>>2];i=P[d+404>>2];v=P[d+396>>2];L[a+444>>2]=0;i=S(m*i);P[a+440>>2]=i;c=S(l*c);P[a+436>>2]=c;v=S(f*v);P[a+432>>2]=v;s=P[b+400>>2];n=P[b+404>>2];q=P[b+396>>2];L[a+460>>2]=0;n=S(j*n);P[a+456>>2]=n;s=S(p*s);P[a+452>>2]=s;q=S(k*q);P[a+448>>2]=q;P[a+464>>2]=S(S(i*m)+S(S(v*f)+S(l*c)))+S(S(n*j)+S(S(q*k)+S(p*s)));p=P[d+36>>2];m=P[d+20>>2];k=P[d+40>>2];l=P[d+8>>2];v=P[d+24>>2];i=P[d+44>>2];s=P[d+12>>2];n=P[d+28>>2];q=P[b+36>>2];w=P[b+20>>2];x=P[b+40>>2];y=P[b+8>>2];G=P[b+24>>2];H=P[b+44>>2];f=P[b+12>>2];I=P[b+28>>2];N=P[d+4>>2];O=P[b+4>>2];L[a+476>>2]=0;L[a+480>>2]=0;L[a+468>>2]=0;L[a+472>>2]=0;L[a+512>>2]=0;L[a+496>>2]=0;c=S(S(D*h)+S(S(B*g)+S(e*E)));j=S(-c);F=S(f*j);f=S(S(K*h)+S(S(z*g)+S(e*A)));e=S(S(t*h)+S(S(u*g)+S(e*C)));g=S(S(F-S(I*f))-S(H*e));P[a+508>>2]=g;h=S(S(S(y*j)-S(G*f))-S(x*e));P[a+504>>2]=h;j=S(S(S(O*j)-S(w*f))-S(q*e));P[a+500>>2]=j;i=S(S(i*e)+S(S(s*c)+S(f*n)));P[a+492>>2]=i;k=S(S(k*e)+S(S(l*c)+S(f*v)));P[a+488>>2]=k;e=S(S(p*e)+S(S(N*c)+S(f*m)));P[a+484>>2]=e;f=P[d+400>>2];c=P[d+404>>2];p=P[d+396>>2];L[a+528>>2]=0;c=S(i*c);P[a+524>>2]=c;f=S(k*f);P[a+520>>2]=f;p=S(e*p);P[a+516>>2]=p;m=P[b+400>>2];t=P[b+404>>2];u=P[b+396>>2];L[a+724>>2]=0;L[a+544>>2]=0;t=S(g*t);P[a+540>>2]=t;m=S(h*m);P[a+536>>2]=m;u=S(j*u);P[a+532>>2]=u;P[a+548>>2]=S(S(c*i)+S(S(p*e)+S(k*f)))+S(S(t*g)+S(S(u*j)+S(h*m)));e=P[a+652>>2];g=P[a+620>>2];h=P[a+636>>2];i=S(S(P[b+44>>2]*e)+S(S(P[b+36>>2]*g)+S(h*P[b+40>>2])));k=P[d+44>>2];f=P[a+584>>2];p=P[d+36>>2];c=P[a+552>>2];j=P[a+568>>2];m=P[d+40>>2];n=S(i*S(S(k*f)+S(S(p*c)+S(j*m))));t=S(S(P[b+12>>2]*e)+S(S(P[b+4>>2]*g)+S(h*P[b+8>>2])));u=P[d+12>>2];C=P[d+4>>2];D=P[d+8>>2];F=S(t*S(S(u*f)+S(S(C*c)+S(j*D))));E=P[d+28>>2];J=S(E*f);f=P[d+20>>2];l=S(f*c);c=P[d+24>>2];J=S(J+S(l+S(j*c)));j=S(S(P[b+28>>2]*e)+S(S(P[b+20>>2]*g)+S(h*P[b+24>>2])));e=P[a+588>>2];g=P[a+556>>2];h=P[a+572>>2];e=S(Za(S(n+S(F+S(J*j))),S(S(i*S(S(k*e)+S(S(p*g)+S(m*h))))+S(S(t*S(S(u*e)+S(S(C*g)+S(D*h))))+S(S(S(E*e)+S(S(f*g)+S(c*h)))*j))))*P[a+732>>2]);P[a+728>>2]=e;_k(a+688|0,e);d=a;b=L[a+28>>2];h=P[a+592>>2];f=P[a+560>>2];c=P[a+576>>2];e=S(S(P[b+44>>2]*h)+S(S(P[b+36>>2]*f)+S(c*P[b+40>>2])));g=S(S(P[b+12>>2]*h)+S(S(P[b+4>>2]*f)+S(c*P[b+8>>2])));h=S(S(P[b+28>>2]*h)+S(S(P[b+20>>2]*f)+S(c*P[b+24>>2])));a=L[a+32>>2];P[d+720>>2]=S(1)/S(S(S(e*S(S(e*P[b+304>>2])+S(S(P[b+272>>2]*g)+S(h*P[b+288>>2]))))+S(S(g*S(S(P[b+296>>2]*e)+S(S(g*P[b+264>>2])+S(h*P[b+280>>2]))))+S(h*S(S(P[b+300>>2]*e)+S(S(P[b+268>>2]*g)+S(h*P[b+284>>2]))))))+S(S(e*S(S(e*P[a+304>>2])+S(S(P[a+272>>2]*g)+S(h*P[a+288>>2]))))+S(S(g*S(S(P[a+296>>2]*e)+S(S(g*P[a+264>>2])+S(h*P[a+280>>2]))))+S(h*S(S(P[a+300>>2]*e)+S(S(P[a+268>>2]*g)+S(h*P[a+284>>2])))))))}fa=r+48|0}function Mp(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=S(0),v=0,w=0,x=0,y=0,z=S(0),A=S(0);t=fa-16|0;fa=t;L[t+12>>2]=a;L[t+8>>2]=b;L[t+4>>2]=c;m=L[t+12>>2];y=L[t+4>>2];a=0;h=fa-48|0;fa=h;w=L[t+8>>2];if((w|0)>=2){k=L[m+712>>2];b=R(k,k);o=sa(b>>>0>1073741823?-1:b<<2);if((k|0)>0){j=k&-2;d=k&1;while(1){c=R(a,k);i=(c+a<<2)+o|0;b=0;e=0;if((k|0)!=1){while(1){a:{if((a|0)!=(b|0)){L[(R(b,k)+a<<2)+o>>2]=2147483647;L[(b+c<<2)+o>>2]=2147483647;break a}L[i>>2]=0}f=b|1;b:{if((f|0)!=(a|0)){L[(R(f,k)+a<<2)+o>>2]=2147483647;L[(c+f<<2)+o>>2]=2147483647;break b}L[i>>2]=0}b=b+2|0;e=e+2|0;if((j|0)!=(e|0)){continue}break}}c:{if(!d){break c}if((a|0)!=(b|0)){L[(R(b,k)+a<<2)+o>>2]=2147483647;L[(b+c<<2)+o>>2]=2147483647;break c}L[i>>2]=0}a=a+1|0;if((k|0)!=(a|0)){continue}break}}c=L[m+732>>2];if((c|0)>0){a=L[m+720>>2];i=L[m+740>>2];b=0;while(1){f=i+R(b,52)|0;e=(L[f+12>>2]-a|0)/104|0;f=(L[f+8>>2]-a|0)/104|0;L[(R(e,k)+f<<2)+o>>2]=1;L[(e+R(f,k)<<2)+o>>2]=1;b=b+1|0;if((c|0)!=(b|0)){continue}break}}d:{e:{if((w|0)!=2){if((k|0)<=0){break d}while(1){f=R(k,l);c=0;while(1){a=c+1|0;if((a|0)<(k|0)){e=R(c,k);j=(e+l<<2)+o|0;b=a;while(1){i=L[j>>2]+L[(b+f<<2)+o>>2]|0;d=(b+e<<2)+o|0;if(i>>>0>2]){L[(R(b,k)+c<<2)+o>>2]=i;L[d>>2]=i}b=b+1|0;if((k|0)!=(b|0)){continue}break}}c=a;if((a|0)!=(k|0)){continue}break}l=l+1|0;if((l|0)!=(k|0)){continue}break}break e}L[h+40>>2]=0;J[h+44|0]=1;L[h+32>>2]=0;L[h+36>>2]=0;L[h+24>>2]=0;L[h+16>>2]=0;L[h+20>>2]=0;J[h+24|0]=1;L[h+8>>2]=0;L[h+12>>2]=0;L[h+12>>2]=0;j=h+8|0;f=0;i=0;b=L[h+32>>2];a=k;f:{if((b|0)>(a|0)){c=a;while(1){i=L[h+40>>2]+R(c,20)|0;f=L[i+12>>2];if(!(f?!f|!M[i+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](f)}L[i+12>>2]=0;J[i+16|0]=1;L[i+4>>2]=0;L[i+8>>2]=0;c=c+1|0;if((c|0)!=(b|0)){continue}break}break f}d=(a|0)<=(b|0);if(d){break f}if((a|0)>L[h+36>>2]){if(a){L[8513]=L[8513]+1;i=ha[L[6798]](R(a,20),16)|0;c=L[h+32>>2]}else{c=b}g:{if((c|0)<=0){break g}while(1){e=R(f,20);Jc(e+i|0,e+L[h+40>>2]|0);f=f+1|0;if((c|0)!=(f|0)){continue}break}l=L[h+32>>2];if((l|0)<=0){break g}f=0;while(1){c=L[h+40>>2]+R(f,20)|0;e=L[c+12>>2];if(!(e?!e|!M[c+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](e)}L[c+12>>2]=0;J[c+16|0]=1;L[c+4>>2]=0;L[c+8>>2]=0;f=f+1|0;if((l|0)!=(f|0)){continue}break}}c=L[h+40>>2];if(!(c?!c|!M[h+44|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[h+40>>2]=i;J[h+44|0]=1;L[h+36>>2]=a;if(d){break f}}while(1){Jc(L[h+40>>2]+R(b,20)|0,j);b=b+1|0;if((a|0)!=(b|0)){continue}break}}L[h+32>>2]=a;a=L[h+20>>2];if(!(a?!a|!M[h+24|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}if(L[m+732>>2]>0){i=0;while(1){a=L[m+740>>2]+R(i,52)|0;b=L[m+720>>2];g=(L[a+12>>2]-b|0)/104|0;p=L[h+40>>2];s=(L[a+8>>2]-b|0)/104|0;c=p+R(s,20)|0;a=L[c+4>>2];h:{i:{if((a|0)<=0){break i}f=L[c+12>>2];b=0;while(1){if((g|0)!=L[f+(b<<2)>>2]){b=b+1|0;if((b|0)!=(a|0)){continue}break i}break}if((a|0)!=(b|0)){break h}}j:{if(L[c+8>>2]!=(a|0)){break j}q=a?a<<1:1;if((q|0)<=(a|0)){break j}k:{if(!q){j=0;break k}L[8513]=L[8513]+1;j=ha[L[6798]](q<<2,16)|0;a=L[c+4>>2]}f=L[c+12>>2];l:{m:{if((a|0)>0){d=0;b=0;if(a>>>0>=4){p=a&-4;l=0;while(1){e=b<<2;L[e+j>>2]=L[e+f>>2];r=e|4;L[r+j>>2]=L[f+r>>2];r=e|8;L[r+j>>2]=L[f+r>>2];e=e|12;L[e+j>>2]=L[e+f>>2];b=b+4|0;l=l+4|0;if((p|0)!=(l|0)){continue}break}}a=a&3;if(!a){break m}while(1){e=b<<2;L[e+j>>2]=L[e+f>>2];b=b+1|0;d=d+1|0;if((a|0)!=(d|0)){continue}break}break m}if(!f){break l}}if(f?M[c+16|0]:0){L[8514]=L[8514]+1;ha[L[6799]](f)}a=L[c+4>>2]}L[c+12>>2]=j;J[c+16|0]=1;L[c+8>>2]=q;p=L[h+40>>2]}L[L[c+12>>2]+(a<<2)>>2]=g;L[c+4>>2]=L[c+4>>2]+1}f=R(g,20)+p|0;a=L[f+4>>2];n:{o:{if((a|0)<=0){break o}c=L[f+12>>2];b=0;while(1){if((s|0)!=L[c+(b<<2)>>2]){b=b+1|0;if((b|0)!=(a|0)){continue}break o}break}if((a|0)!=(b|0)){break n}}p:{if(L[f+8>>2]!=(a|0)){break p}g=a?a<<1:1;if((g|0)<=(a|0)){break p}q:{if(!g){e=0;break q}L[8513]=L[8513]+1;e=ha[L[6798]](g<<2,16)|0;a=L[f+4>>2]}j=L[f+12>>2];r:{s:{if((a|0)>0){c=0;b=0;if(a>>>0>=4){p=a&-4;d=0;while(1){l=b<<2;L[l+e>>2]=L[j+l>>2];q=l|4;L[q+e>>2]=L[j+q>>2];q=l|8;L[q+e>>2]=L[j+q>>2];l=l|12;L[l+e>>2]=L[j+l>>2];b=b+4|0;d=d+4|0;if((p|0)!=(d|0)){continue}break}}a=a&3;if(!a){break s}while(1){d=b<<2;L[d+e>>2]=L[d+j>>2];b=b+1|0;c=c+1|0;if((a|0)!=(c|0)){continue}break}break s}if(!j){break r}}if(j?M[f+16|0]:0){L[8514]=L[8514]+1;ha[L[6799]](j)}a=L[f+4>>2]}L[f+12>>2]=e;J[f+16|0]=1;L[f+8>>2]=g}L[L[f+12>>2]+(a<<2)>>2]=s;L[f+4>>2]=L[f+4>>2]+1}i=i+1|0;if((i|0)>2]){continue}break}}i=L[h+32>>2];t:{if((i|0)<=0){break t}e=0;a=L[h+40>>2];while(1){f=a+R(e,20)|0;b=L[f+4>>2];if((b|0)>0){q=R(e,k);s=L[f+12>>2];j=0;while(1){d=L[s+(j<<2)>>2];l=a+R(d,20)|0;c=L[l+4>>2];if((c|0)>0){r=(R(d,k)+e<<2)+o|0;x=L[l+12>>2];b=0;while(1){g=L[x+(b<<2)>>2];u:{if((g|0)==(e|0)){break u}p=R(g,k);v=(p+e<<2)+o|0;p=L[(d+p<<2)+o>>2]+L[r>>2]|0;if(O[v>>2]<=p>>>0){break u}L[(g+q<<2)+o>>2]=p;L[v>>2]=p;c=L[l+4>>2]}b=b+1|0;if((c|0)>(b|0)){continue}break}b=L[f+4>>2]}j=j+1|0;if((j|0)<(b|0)){continue}break}}e=e+1|0;if((i|0)!=(e|0)){continue}break}if((i|0)<=0){break t}a=0;while(1){b=L[h+40>>2]+R(a,20)|0;c=L[b+12>>2];if(!(c?!c|!M[b+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[b+12>>2]=0;J[b+16|0]=1;L[b+4>>2]=0;L[b+8>>2]=0;a=a+1|0;if((i|0)!=(a|0)){continue}break}}a=L[h+40>>2];if(!a|!M[h+44|0]){break e}if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}if((k|0)<=0){l=0;break d}l=0;a=0;while(1){f=a;a=a+1|0;if((k|0)>(a|0)){x=R(f,k);c=a;while(1){if(L[(c+x<<2)+o>>2]==(w|0)){b=L[m+720>>2];i=y;if(!i){i=L[L[m+880>>2]>>2]}q=b+R(f,104)|0;s=b+R(c,104)|0;b=L[m+732>>2];v:{if((b|0)!=L[m+736>>2]){break v}r=b?b<<1:1;if((r|0)<=(b|0)){break v}w:{if(!r){j=0;break w}L[8513]=L[8513]+1;j=ha[L[6798]](R(r,52),16)|0;b=L[m+732>>2]}x:{if((b|0)<=0){break x}e=0;if((b|0)!=1){v=b&-2;p=0;while(1){d=R(e,52);g=d+j|0;d=d+L[m+740>>2]|0;n=L[d+4>>2];L[g>>2]=L[d>>2];L[g+4>>2]=n;L[g+48>>2]=L[d+48>>2];n=L[d+44>>2];L[g+40>>2]=L[d+40>>2];L[g+44>>2]=n;n=L[d+36>>2];L[g+32>>2]=L[d+32>>2];L[g+36>>2]=n;n=L[d+28>>2];L[g+24>>2]=L[d+24>>2];L[g+28>>2]=n;n=L[d+20>>2];L[g+16>>2]=L[d+16>>2];L[g+20>>2]=n;n=L[d+12>>2];L[g+8>>2]=L[d+8>>2];L[g+12>>2]=n;d=R(e|1,52);g=d+j|0;d=d+L[m+740>>2]|0;n=L[d+4>>2];L[g>>2]=L[d>>2];L[g+4>>2]=n;n=L[d+12>>2];L[g+8>>2]=L[d+8>>2];L[g+12>>2]=n;n=L[d+20>>2];L[g+16>>2]=L[d+16>>2];L[g+20>>2]=n;n=L[d+28>>2];L[g+24>>2]=L[d+24>>2];L[g+28>>2]=n;n=L[d+36>>2];L[g+32>>2]=L[d+32>>2];L[g+36>>2]=n;n=L[d+44>>2];L[g+40>>2]=L[d+40>>2];L[g+44>>2]=n;L[g+48>>2]=L[d+48>>2];e=e+2|0;p=p+2|0;if((v|0)!=(p|0)){continue}break}}if(!(b&1)){break x}e=R(e,52);b=e+j|0;e=e+L[m+740>>2]|0;d=L[e+4>>2];L[b>>2]=L[e>>2];L[b+4>>2]=d;L[b+48>>2]=L[e+48>>2];d=L[e+44>>2];L[b+40>>2]=L[e+40>>2];L[b+44>>2]=d;d=L[e+36>>2];L[b+32>>2]=L[e+32>>2];L[b+36>>2]=d;d=L[e+28>>2];L[b+24>>2]=L[e+24>>2];L[b+28>>2]=d;d=L[e+20>>2];L[b+16>>2]=L[e+16>>2];L[b+20>>2]=d;d=L[e+12>>2];L[b+8>>2]=L[e+8>>2];L[b+12>>2]=d}b=L[m+740>>2];if(!(b?!b|!M[m+744|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[m+740>>2]=j;J[m+744|0]=1;L[m+736>>2]=r;b=L[m+732>>2]}b=L[m+740>>2]+R(b,52)|0;L[b+8>>2]=0;L[b+12>>2]=0;L[b+4>>2]=i;L[b>>2]=0;L[b+16>>2]=0;L[b+20>>2]=0;L[b+24>>2]=0;L[b+28>>2]=0;L[b+32>>2]=0;L[b+36>>2]=0;L[b+40>>2]=0;L[b+44>>2]=0;L[b+48>>2]=0;b=L[m+732>>2];L[m+732>>2]=b+1;i=R(b,52);b=i+L[m+740>>2]|0;L[b+8>>2]=s;L[b+12>>2]=q;u=S(P[s+16>>2]-P[q+16>>2]);z=S(u*u);u=S(P[s+8>>2]-P[q+8>>2]);A=S(u*u);u=S(P[s+12>>2]-P[q+12>>2]);P[b+16>>2]=_(S(z+S(A+S(u*u))));J[m+924|0]=1;b=i+L[m+740>>2]|0;J[b+20|0]=M[b+20|0]|1;l=l+1|0}c=c+1|0;if((k|0)!=(c|0)){continue}break}}if((a|0)!=(k|0)){continue}break}}ra(o)}fa=h+48|0;fa=t+16|0;return l|0}function wb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=S(0),g=0,h=S(0),i=S(0),j=S(0),k=S(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=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=0,I=S(0),J=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);e=fa-272|0;fa=e;L[a+56>>2]=0;L[e+264>>2]=0;L[e+268>>2]=0;L[e+256>>2]=0;L[e+260>>2]=0;g=L[b+12>>2];L[e+168>>2]=L[b+8>>2];L[e+172>>2]=g;g=L[b+4>>2];L[e+160>>2]=L[b>>2];L[e+164>>2]=g;g=L[b+28>>2];L[e+184>>2]=L[b+24>>2];L[e+188>>2]=g;g=L[b+20>>2];L[e+176>>2]=L[b+16>>2];L[e+180>>2]=g;g=L[b+44>>2];L[e+200>>2]=L[b+40>>2];L[e+204>>2]=g;g=L[b+36>>2];L[e+192>>2]=L[b+32>>2];L[e+196>>2]=g;g=L[b+60>>2];L[e+216>>2]=L[b+56>>2];L[e+220>>2]=g;g=L[b+52>>2];L[e+208>>2]=L[b+48>>2];L[e+212>>2]=g;g=L[b+76>>2];L[e+104>>2]=L[b+72>>2];L[e+108>>2]=g;g=L[b+68>>2];L[e+96>>2]=L[b+64>>2];L[e+100>>2]=g;g=L[b+92>>2];L[e+120>>2]=L[b+88>>2];L[e+124>>2]=g;g=L[b+84>>2];L[e+112>>2]=L[b+80>>2];L[e+116>>2]=g;g=L[b+108>>2];L[e+136>>2]=L[b+104>>2];L[e+140>>2]=g;g=L[b+100>>2];L[e+128>>2]=L[b+96>>2];L[e+132>>2]=g;g=L[b+124>>2];L[e+152>>2]=L[b+120>>2];L[e+156>>2]=g;g=L[b+116>>2];L[e+144>>2]=L[b+112>>2];L[e+148>>2]=g;f=P[e+212>>2];i=P[e+148>>2];y=S(S(f+i)*S(.5));v=S(f-y);P[e+212>>2]=v;f=P[e+216>>2];h=P[e+152>>2];z=S(S(f+h)*S(.5));w=S(f-z);P[e+216>>2]=w;x=S(i-y);P[e+148>>2]=x;P[e+152>>2]=h-z;f=P[e+208>>2];i=P[e+144>>2];A=S(S(f+i)*S(.5));F=S(f-A);P[e+208>>2]=F;G=S(i-A);P[e+144>>2]=G;l=L[L[a+28>>2]+4>>2]-17>>>0<=1?L[L[a+32>>2]+4>>2]-17>>>0<2:l;f=P[a+44>>2];i=P[a+48>>2];L[7861]=L[7861]+1;L[a+68>>2]=0;L[a+12>>2]=0;L[a+16>>2]=0;L[a+4>>2]=0;L[a+8>>2]=1065353216;L[a+60>>2]=-1;L[a+64>>2]=0;g=M[a+52|0];He(L[a+24>>2]);o=g?S(0):f;p=g?S(0):i;r=S(o+p);g=a+4|0;I=P[e+136>>2];J=P[e+132>>2];K=P[e+120>>2];N=P[e+116>>2];O=P[e+200>>2];Q=P[e+196>>2];R=P[e+184>>2];T=P[e+180>>2];i=S(0xde0b6b000000000);U=P[e+128>>2];V=P[e+112>>2];W=P[e+104>>2];X=P[e+100>>2];Y=P[e+96>>2];Z=P[e+192>>2];$=P[e+176>>2];aa=P[e+168>>2];ba=P[e+164>>2];ca=P[e+160>>2];a:{b:{c:{while(1){n=P[b+32>>2];s=P[b>>2];t=P[b+16>>2];u=P[b+36>>2];B=P[b+4>>2];C=P[b+20>>2];D=P[b+40>>2];f=P[a+12>>2];j=P[b+8>>2];k=P[a+4>>2];E=P[b+24>>2];h=P[a+8>>2];L[e+252>>2]=0;q=j;j=S(-k);P[e+248>>2]=S(S(q*j)-S(E*h))-S(D*f);P[e+244>>2]=S(S(B*j)-S(C*h))-S(u*f);P[e+240>>2]=S(S(s*j)-S(t*h))-S(n*f);j=P[b+96>>2];n=P[b+64>>2];s=P[b+80>>2];t=P[b+100>>2];u=P[b+68>>2];B=P[b+84>>2];C=P[b+104>>2];D=P[b+72>>2];E=P[b+88>>2];L[e+236>>2]=0;P[e+232>>2]=S(C*f)+S(S(D*k)+S(h*E));P[e+228>>2]=S(t*f)+S(S(u*k)+S(h*B));P[e+224>>2]=S(j*f)+S(S(n*k)+S(h*s));Te(e+80|0,L[a+28>>2],e+240|0);Te(e- -64|0,L[a+32>>2],e+224|0);L[e+60>>2]=0;f=P[e+88>>2];h=P[e+80>>2];j=P[e+84>>2];k=S(S(S(f*O)+S(S(h*Z)+S(j*Q)))+w);P[e+56>>2]=k;s=S(S(S(f*R)+S(S(h*$)+S(j*T)))+v);P[e+52>>2]=s;t=S(S(S(f*aa)+S(S(h*ca)+S(j*ba)))+F);P[e+48>>2]=t;L[e+44>>2]=0;f=P[e+72>>2];h=P[e+64>>2];n=P[e+68>>2];j=S(S(S(f*I)+S(S(h*U)+S(n*J)))+P[e+152>>2]);P[e+40>>2]=j;u=S(S(S(f*K)+S(S(h*V)+S(n*N)))+x);P[e+36>>2]=u;f=S(S(S(f*W)+S(S(h*Y)+S(n*X)))+G);P[e+32>>2]=f;if(l){L[e+40>>2]=0;L[e+56>>2]=0;j=S(0);k=S(0)}L[e+28>>2]=0;h=S(k-j);P[e+24>>2]=h;f=S(t-f);P[e+16>>2]=f;k=S(s-u);P[e+20>>2]=k;f=S(S(P[a+12>>2]*h)+S(S(P[a+4>>2]*f)+S(k*P[a+8>>2])));if(!(!(f>S(0))|!(S(f*f)>S(i*P[b+128>>2])))){L[a+68>>2]=10;break c}if(yl(L[a+24>>2],e+16|0)){L[a+68>>2]=1;break c}f=S(i-f);if(f<=S(i*S(9.999999974752427e-7))){L[a+68>>2]=f<=S(0)?2:11;break c}Bl(L[a+24>>2],e+16|0,e+48|0,e+32|0);d:{if(!zl(L[a+24>>2],e)){m=3;break d}f=P[e+8>>2];h=S(f*f);f=P[e>>2];j=S(f*f);f=P[e+4>>2];f=S(h+S(j+S(f*f)));if(f>2];L[g>>2]=L[e>>2];L[g+4>>2]=l;l=L[e+12>>2];L[g+8>>2]=L[e+8>>2];L[g+12>>2]=l;m=6;break d}if(S(i-f)<=S(i*S(1.1920928955078125e-7))){m=12;i=f;break d}m=L[e+4>>2];L[g>>2]=L[e>>2];L[g+4>>2]=m;m=L[e+12>>2];L[g+8>>2]=L[e+8>>2];L[g+12>>2]=m;m=L[a+64>>2];L[a+64>>2]=m+1;if((m|0)>1e3){break b}if(L[L[a+24>>2]>>2]==4){L[a+68>>2]=13;break b}i=f;continue}break}L[a+68>>2]=m}xl(L[a+24>>2],e+240|0,e+224|0);l=L[g+12>>2];L[e+264>>2]=L[g+8>>2];L[e+268>>2]=l;l=L[g+4>>2];L[e+256>>2]=L[g>>2];L[e+260>>2]=l;f=P[a+12>>2];h=P[a+4>>2];k=P[a+8>>2];j=S(S(f*f)+S(S(h*h)+S(k*k)));if(+j<1e-4){L[a+68>>2]=5}if(j>S(14210854715202004e-30)){j=S(S(1)/S(_(j)));P[e+256>>2]=j*P[e+256>>2];P[e+260>>2]=j*P[e+260>>2];P[e+264>>2]=j*P[e+264>>2];n=S(_(i));i=S(o/n);P[e+240>>2]=P[e+240>>2]-S(i*h);P[e+244>>2]=P[e+244>>2]-S(i*k);P[e+248>>2]=P[e+248>>2]-S(i*f);i=S(p/n);P[e+224>>2]=S(i*h)+P[e+224>>2];P[e+228>>2]=S(i*k)+P[e+228>>2];P[e+232>>2]=S(i*f)+P[e+232>>2];l=1;L[a+60>>2]=1;f=S(S(S(1)/j)-r);break a}L[a+60>>2]=2}l=0;f=S(0)}H=1;m=L[a+20>>2];if(!(!L[a+68>>2]|(!L[a+72>>2]|!m))){H=!(+S(r+f)<.01)}e:{f:{g:{if(!m|l&H){break g}L[7860]=L[7860]+1;L[g+8>>2]=0;L[g+12>>2]=0;L[g>>2]=0;L[g+4>>2]=0;if(ha[L[L[m>>2]+8>>2]](m,L[a+24>>2],L[a+28>>2],L[a+32>>2],e+160|0,e+96|0,g,e+80|0,e- -64|0,d)|0){j=S(0);m=9;h=P[e+72>>2];r=P[e+88>>2];o=S(h-r);n=P[e+64>>2];v=P[e+80>>2];i=S(n-v);w=P[e+68>>2];x=P[e+84>>2];p=S(w-x);k=S(S(o*o)+S(S(i*i)+S(p*p)));if(k<=S(14210854715202004e-30)){j=P[a+16>>2];o=P[a+12>>2];i=P[a+4>>2];p=P[a+8>>2];k=S(S(o*o)+S(S(i*i)+S(p*p)))}h:{if(!(k>S(14210854715202004e-30))){break h}m=8;h=S(r-h);q=S(h*h);h=S(v-n);n=S(h*h);h=S(x-w);h=S(-S(_(S(q+S(n+S(h*h))))));if(!(h>2];L[e+248>>2]=L[e+88>>2];L[e+252>>2]=d;d=L[e+76>>2];L[e+232>>2]=L[e+72>>2];L[e+236>>2]=d;d=L[e+84>>2];L[e+240>>2]=L[e+80>>2];L[e+244>>2]=d;d=L[e+68>>2];L[e+224>>2]=L[e+64>>2];L[e+228>>2]=d;P[e+268>>2]=j;f=S(S(1)/S(_(k)));P[e+264>>2]=o*f;P[e+260>>2]=p*f;P[e+256>>2]=i*f;L[a+60>>2]=3;f=h;break f}L[a+60>>2]=m;if(l){break f}break e}h=P[a+12>>2];k=P[a+4>>2];j=P[a+8>>2];if(!(S(S(h*h)+S(S(k*k)+S(j*j)))>S(0))){break g}i=S(P[e+88>>2]-P[e+72>>2]);q=S(i*i);i=S(P[e+80>>2]-P[e+64>>2]);n=S(i*i);i=S(P[e+84>>2]-P[e+68>>2]);i=S(S(_(S(q+S(n+S(i*i)))))-r);if(!(!(i>2];L[e+248>>2]=L[e+88>>2];L[e+252>>2]=d;d=L[e+76>>2];L[e+232>>2]=L[e+72>>2];L[e+236>>2]=d;P[e+248>>2]=P[e+248>>2]-S(o*h);P[e+232>>2]=S(p*h)+P[e+232>>2];d=L[e+68>>2];L[e+224>>2]=L[e+64>>2];L[e+228>>2]=d;d=L[e+84>>2];L[e+240>>2]=L[e+80>>2];L[e+244>>2]=d;P[e+224>>2]=S(p*k)+P[e+224>>2];P[e+228>>2]=S(p*j)+P[e+228>>2];P[e+240>>2]=P[e+240>>2]-S(o*k);P[e+244>>2]=P[e+244>>2]-S(o*j);d=L[g+12>>2];L[e+264>>2]=L[g+8>>2];L[e+268>>2]=d;d=L[g+4>>2];L[e+256>>2]=L[g>>2];L[e+260>>2]=d;h=P[e+264>>2];k=P[e+256>>2];j=P[e+260>>2];f=S(S(1)/S(_(S(S(h*h)+S(S(k*k)+S(j*j))))));P[e+264>>2]=h*f;P[e+260>>2]=j*f;P[e+256>>2]=k*f;L[a+60>>2]=6;f=i;break f}L[a+60>>2]=5;break f}if(!l){break e}}if(!(f>2]>S(f*f))){break e}i:{if(!L[a+76>>2]){break i}b=L[a+28>>2];d=e+80|0;l=e- -64|0;ha[L[L[b>>2]+8>>2]](b,e+160|0,d,l);i=P[e+88>>2];h=P[e+72>>2];k=P[e+80>>2];j=P[e+64>>2];o=P[e+84>>2];p=P[e+68>>2];b=L[a+32>>2];ha[L[L[b>>2]+8>>2]](b,e+96|0,d,l);q=S(S(S(h+i)*S(.5))-S(S(P[e+88>>2]+P[e+72>>2])*S(.5)));i=P[e+264>>2];h=P[e+256>>2];j=S(S(S(S(j+k)*S(.5))-S(S(P[e+80>>2]+P[e+64>>2])*S(.5)))*h);k=P[e+260>>2];if(!(S(S(q*i)+S(j+S(S(S(S(p+o)*S(.5))-S(S(P[e+84>>2]+P[e+68>>2])*S(.5)))*k)))>2]=-i;P[e+260>>2]=-k;P[e+256>>2]=-h}b=L[e+260>>2];L[g>>2]=L[e+256>>2];L[g+4>>2]=b;b=L[e+268>>2];L[g+8>>2]=L[e+264>>2];L[g+12>>2]=b;P[a+56>>2]=f;L[e+92>>2]=0;P[e+88>>2]=z+P[e+232>>2];P[e+84>>2]=y+P[e+228>>2];P[e+80>>2]=A+P[e+224>>2];ha[L[L[c>>2]+16>>2]](c,e+256|0,e+80|0,f)}fa=e+272|0}function wl(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=0,l=0,m=0,n=S(0),o=0,p=0,q=0,r=S(0),s=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=0,H=0,I=0,K=S(0),N=S(0),O=S(0),Q=S(0),T=S(0),U=0,V=0,W=0,X=S(0),Y=S(0),Z=S(0),_=S(0),$=S(0),aa=S(0),ba=S(0),ca=S(0);m=fa+-64|0;fa=m;L[m+56>>2]=0;L[m+48>>2]=0;L[m+52>>2]=0;J[m+60|0]=1;h=L[d+4>>2];if((h|0)>0){L[8513]=L[8513]+1;L[m+56>>2]=ha[L[6798]](h<<4,16);J[m+60|0]=1;L[m+52>>2]=h}q=L[b+28>>2];a:{if((q|0)<=0){break a}v=P[c+40>>2];x=P[c+36>>2];z=P[c+24>>2];A=P[c+20>>2];I=L[b+36>>2];B=P[a+8>>2];D=P[a+4>>2];F=P[a>>2];K=P[c+32>>2];N=P[c+16>>2];O=P[c+8>>2];Q=P[c+4>>2];y=P[c>>2];n=S(34028234663852886e22);j=-1;while(1){h=I+R(i,36)|0;t=P[h+28>>2];s=P[h+20>>2];r=P[h+24>>2];t=S(S(S(S(v*t)+S(S(K*s)+S(r*x)))*B)+S(S(S(S(O*t)+S(S(y*s)+S(r*Q)))*F)+S(S(S(z*t)+S(S(N*s)+S(r*A)))*D)));h=t>2]+R(j,36)|0;V=L[C+4>>2];b:{if((V|0)<=0){h=d;break b}q=m+44|0;I=0;while(1){h=q;i=I;I=i+1|0;W=(V|0)==(I|0);k=L[b+16>>2];j=L[C+12>>2];q=k+(L[j+((W?0:I)<<2)>>2]<<4)|0;y=P[q+8>>2];E=P[q>>2];T=P[q+4>>2];i=k+(L[j+(i<<2)>>2]<<4)|0;n=P[i+8>>2];t=P[i>>2];s=P[i+4>>2];aa=P[c+56>>2];ba=P[c+48>>2];ca=P[c+52>>2];z=P[c+40>>2];A=P[c+32>>2];B=P[c+36>>2];r=P[C+28>>2];D=P[c+8>>2];v=P[C+20>>2];F=P[c>>2];x=P[C+24>>2];K=P[c+4>>2];N=P[c+24>>2];O=P[c+16>>2];Q=P[c+20>>2];L[m+36>>2]=0;y=S(n-y);E=S(t-E);T=S(s-T);X=S(S(D*y)+S(S(F*E)+S(K*T)));Y=S(S(N*r)+S(S(O*v)+S(Q*x)));Z=S(S(D*r)+S(S(F*v)+S(K*x)));_=S(S(N*y)+S(S(O*E)+S(T*Q)));$=S(S(X*Y)-S(Z*_));P[m+32>>2]=-$;y=S(S(z*y)+S(S(A*E)+S(T*B)));r=S(S(z*r)+S(S(A*v)+S(B*x)));E=S(S(y*Z)-S(r*X));P[m+28>>2]=-E;y=S(-S(S(_*r)-S(Y*y)));P[m+24>>2]=y;G=0;q=d;U=L[d+4>>2];if((U|0)>=2){d=(L[q+12>>2]+(U<<4)|0)-16|0;r=P[d+8>>2];v=P[d>>2];x=P[d+4>>2];D=S(-S(S(S(S(ba+S(S(n*D)+S(S(t*F)+S(s*K))))*y)-S(S(ca+S(S(n*N)+S(S(t*O)+S(s*Q))))*E))-S(S(aa+S(S(n*z)+S(S(t*A)+S(s*B))))*$)));n=S(S(S(P[m+32>>2]*r)+S(S(P[m+24>>2]*v)+S(x*P[m+28>>2])))+D);while(1){d=L[q+12>>2]+(G<<4)|0;t=P[d+8>>2];A=P[d>>2];s=P[d+4>>2];z=S(S(S(P[m+32>>2]*t)+S(S(P[m+24>>2]*A)+S(s*P[m+28>>2])))+D);B=P[d+12>>2];c:{d:{e:{if(n>2];f:{if((d|0)!=L[h+8>>2]){break f}u=d?d<<1:1;if((u|0)<=(d|0)){break f}g:{if(!u){j=0;break g}L[8513]=L[8513]+1;j=ha[L[6798]](u<<4,16)|0;d=L[h+4>>2]}h:{if((d|0)<=0){break h}i=0;if((d|0)!=1){H=d&-2;k=0;while(1){o=i<<4;p=o+j|0;l=o+L[h+12>>2]|0;w=L[l+4>>2];L[p>>2]=L[l>>2];L[p+4>>2]=w;w=L[l+12>>2];L[p+8>>2]=L[l+8>>2];L[p+12>>2]=w;l=o|16;o=l+j|0;l=l+L[h+12>>2]|0;p=L[l+4>>2];L[o>>2]=L[l>>2];L[o+4>>2]=p;p=L[l+12>>2];L[o+8>>2]=L[l+8>>2];L[o+12>>2]=p;i=i+2|0;k=k+2|0;if((H|0)!=(k|0)){continue}break}}if(!(d&1)){break h}d=i<<4;i=d+j|0;d=d+L[h+12>>2]|0;k=L[d+4>>2];L[i>>2]=L[d>>2];L[i+4>>2]=k;k=L[d+12>>2];L[i+8>>2]=L[d+8>>2];L[i+12>>2]=k}d=L[h+12>>2];if(!(d?!d|!M[h+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[h+12>>2]=j;J[h+16|0]=1;L[h+8>>2]=u;d=L[h+4>>2]}i=L[h+12>>2]+(d<<4)|0;break e}n=S(n/S(n-z));B=S(S(t-r)*n);F=S(S(s-x)*n);v=S(S(S(A-v)*n)+v);d=L[h+4>>2];i:{if((d|0)!=L[h+8>>2]){break i}u=d?d<<1:1;if((u|0)<=(d|0)){break i}j:{if(!u){j=0;break j}L[8513]=L[8513]+1;j=ha[L[6798]](u<<4,16)|0;d=L[h+4>>2]}k:{if((d|0)<=0){break k}i=0;if((d|0)!=1){H=d&-2;k=0;while(1){o=i<<4;p=o+j|0;l=o+L[h+12>>2]|0;w=L[l+4>>2];L[p>>2]=L[l>>2];L[p+4>>2]=w;w=L[l+12>>2];L[p+8>>2]=L[l+8>>2];L[p+12>>2]=w;l=o|16;o=l+j|0;l=l+L[h+12>>2]|0;p=L[l+4>>2];L[o>>2]=L[l>>2];L[o+4>>2]=p;p=L[l+12>>2];L[o+8>>2]=L[l+8>>2];L[o+12>>2]=p;i=i+2|0;k=k+2|0;if((H|0)!=(k|0)){continue}break}}if(!(d&1)){break k}d=i<<4;i=d+j|0;d=d+L[h+12>>2]|0;k=L[d+4>>2];L[i>>2]=L[d>>2];L[i+4>>2]=k;k=L[d+12>>2];L[i+8>>2]=L[d+8>>2];L[i+12>>2]=k}d=L[h+12>>2];if(!(d?!d|!M[h+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[h+12>>2]=j;J[h+16|0]=1;L[h+8>>2]=u;d=L[h+4>>2]}n=S(B+r);i=L[h+12>>2]+(d<<4)|0;P[i>>2]=v;B=S(0);r=S(F+x);break d}if(!(z>2];l:{if((d|0)!=L[h+8>>2]){break l}u=d?d<<1:1;if((u|0)<=(d|0)){break l}m:{if(!u){j=0;break m}L[8513]=L[8513]+1;j=ha[L[6798]](u<<4,16)|0;d=L[h+4>>2]}n:{if((d|0)<=0){break n}i=0;if((d|0)!=1){H=d&-2;k=0;while(1){o=i<<4;p=o+j|0;l=o+L[h+12>>2]|0;w=L[l+4>>2];L[p>>2]=L[l>>2];L[p+4>>2]=w;w=L[l+12>>2];L[p+8>>2]=L[l+8>>2];L[p+12>>2]=w;l=o|16;o=l+j|0;l=l+L[h+12>>2]|0;p=L[l+4>>2];L[o>>2]=L[l>>2];L[o+4>>2]=p;p=L[l+12>>2];L[o+8>>2]=L[l+8>>2];L[o+12>>2]=p;i=i+2|0;k=k+2|0;if((H|0)!=(k|0)){continue}break}}if(!(d&1)){break n}d=i<<4;i=d+j|0;d=d+L[h+12>>2]|0;k=L[d+4>>2];L[i>>2]=L[d>>2];L[i+4>>2]=k;k=L[d+12>>2];L[i+8>>2]=L[d+8>>2];L[i+12>>2]=k}d=L[h+12>>2];if(!(d?!d|!M[h+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[h+12>>2]=j;J[h+16|0]=1;L[h+8>>2]=u;d=L[h+4>>2]}d=L[h+12>>2]+(d<<4)|0;L[d+12>>2]=0;P[d+8>>2]=r;P[d+4>>2]=x;P[d>>2]=n;d=L[h+4>>2]+1|0;L[h+4>>2]=d;o:{if(L[h+8>>2]!=(d|0)){break o}u=d?d<<1:1;if((u|0)<=(d|0)){break o}p:{if(!u){j=0;break p}L[8513]=L[8513]+1;j=ha[L[6798]](u<<4,16)|0;d=L[h+4>>2]}q:{if((d|0)<=0){break q}i=0;if((d|0)!=1){H=d&-2;k=0;while(1){o=i<<4;p=o+j|0;l=o+L[h+12>>2]|0;w=L[l+4>>2];L[p>>2]=L[l>>2];L[p+4>>2]=w;w=L[l+12>>2];L[p+8>>2]=L[l+8>>2];L[p+12>>2]=w;l=o|16;o=l+j|0;l=l+L[h+12>>2]|0;p=L[l+4>>2];L[o>>2]=L[l>>2];L[o+4>>2]=p;p=L[l+12>>2];L[o+8>>2]=L[l+8>>2];L[o+12>>2]=p;i=i+2|0;k=k+2|0;if((H|0)!=(k|0)){continue}break}}if(!(d&1)){break q}d=i<<4;i=d+j|0;d=d+L[h+12>>2]|0;k=L[d+4>>2];L[i>>2]=L[d>>2];L[i+4>>2]=k;k=L[d+12>>2];L[i+8>>2]=L[d+8>>2];L[i+12>>2]=k}d=L[h+12>>2];if(!(d?!d|!M[h+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[h+12>>2]=j;J[h+16|0]=1;L[h+8>>2]=u;d=L[h+4>>2]}i=L[h+12>>2]+(d<<4)|0}P[i>>2]=A;n=t;r=s}P[i+12>>2]=B;P[i+8>>2]=n;P[i+4>>2]=r;L[h+4>>2]=L[h+4>>2]+1}n=z;r=t;x=s;v=A;G=G+1|0;if((U|0)!=(G|0)){continue}break}}d=L[q+4>>2];r:{if((d|0)>=0){break r}if(L[q+8>>2]<0){i=L[q+12>>2];if(!(i?!i|!M[q+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](i)}J[q+16|0]=1;L[q+8>>2]=0;L[q+12>>2]=0}j=0;i=d;G=0-d&3;if(G){while(1){u=L[m+12>>2];k=L[q+12>>2]+(i<<4)|0;L[k>>2]=L[m+8>>2];L[k+4>>2]=u;u=L[m+20>>2];L[k+8>>2]=L[m+16>>2];L[k+12>>2]=u;i=i+1|0;j=j+1|0;if((G|0)!=(j|0)){continue}break}}if(d>>>0>4294967292){break r}while(1){k=L[m+12>>2];d=i<<4;j=d+L[q+12>>2]|0;L[j>>2]=L[m+8>>2];L[j+4>>2]=k;k=L[m+20>>2];L[j+8>>2]=L[m+16>>2];L[j+12>>2]=k;k=L[m+20>>2];j=d+L[q+12>>2]|0;L[j+24>>2]=L[m+16>>2];L[j+28>>2]=k;k=L[m+12>>2];L[j+16>>2]=L[m+8>>2];L[j+20>>2]=k;k=L[m+20>>2];j=d+L[q+12>>2]|0;L[j+40>>2]=L[m+16>>2];L[j+44>>2]=k;k=L[m+12>>2];L[j+32>>2]=L[m+8>>2];L[j+36>>2]=k;j=L[m+20>>2];d=d+L[q+12>>2]|0;L[d+56>>2]=L[m+16>>2];L[d+60>>2]=j;j=L[m+12>>2];L[d+48>>2]=L[m+8>>2];L[d+52>>2]=j;i=i+4|0;if(i){continue}break}}L[q+4>>2]=0;d=h;if(!W){continue}break}}j=L[h+4>>2];if((j|0)<=0){break a}n=P[C+28>>2];t=P[C+20>>2];s=P[C+24>>2];r=S(S(P[c+40>>2]*n)+S(S(P[c+32>>2]*t)+S(s*P[c+36>>2])));v=S(S(P[c+8>>2]*n)+S(S(P[c>>2]*t)+S(s*P[c+4>>2])));n=S(S(P[c+24>>2]*n)+S(S(P[c+16>>2]*t)+S(s*P[c+20>>2])));t=S(P[C+32>>2]-S(S(r*P[c+56>>2])+S(S(v*P[c+48>>2])+S(n*P[c+52>>2]))));q=0;while(1){b=L[h+12>>2]+(q<<4)|0;s=S(t+S(S(r*P[b+8>>2])+S(S(v*P[b>>2])+S(n*P[b+4>>2]))));s=e>=s?e:s;if(s<=f){c=L[b+12>>2];L[m+32>>2]=L[b+8>>2];L[m+36>>2]=c;c=L[b+4>>2];L[m+24>>2]=L[b>>2];L[m+28>>2]=c;ha[L[L[g>>2]+16>>2]](g,a,m+24|0,s);j=L[h+4>>2]}q=q+1|0;if((q|0)<(j|0)){continue}break}}a=L[m+56>>2];if(!(a?!a|!M[m+60|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}fa=m- -64|0}function $n(a){a=a|0;var b=S(0),c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=S(0),m=S(0),n=0,o=0,p=S(0),q=S(0),r=S(0),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=S(0),E=0,F=0;t=fa-48|0;fa=t;L[t+44>>2]=a;s=L[t+44>>2];ha[L[L[s>>2]+112>>2]](s);c=fa-16|0;fa=c;L[c+12>>2]=s+68;a=fa-16|0;L[a+12>>2]=L[c+12>>2];fa=c+16|0;a:{if(!L[L[a+12>>2]>>2]){h=fa+-64|0;fa=h;J[h+60|0]=1;L[h+52>>2]=0;L[h+56>>2]=0;i=s+68|0;a=L[i+72>>2];j=ha[L[L[a>>2]+12>>2]](a)|0;L[h+32>>2]=0;L[h+36>>2]=0;L[h+24>>2]=0;L[h+28>>2]=0;L[h+16>>2]=0;L[h+20>>2]=0;L[h+8>>2]=0;L[h+12>>2]=0;b:{if((j|0)<=0){L[h+48>>2]=j;break b}L[8513]=L[8513]+1;L[h+56>>2]=ha[L[6798]](R(j,36),16);L[h+52>>2]=j;J[h+60|0]=1;e=j-1|0;if(e){c=j&-2;while(1){d=L[h+56>>2]+R(g,36)|0;a=d;L[a>>2]=0;L[a+4>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0;a=L[h+28>>2];L[d+16>>2]=L[h+24>>2];L[d+20>>2]=a;a=L[h+36>>2];L[d+24>>2]=L[h+32>>2];L[d+28>>2]=a;L[d+32>>2]=0;d=L[h+56>>2]+R(g|1,36)|0;a=d;L[a>>2]=0;L[a+4>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0;a=L[h+28>>2];L[d+16>>2]=L[h+24>>2];L[d+20>>2]=a;a=L[h+36>>2];L[d+24>>2]=L[h+32>>2];L[d+28>>2]=a;L[d+32>>2]=0;g=g+2|0;n=n+2|0;if((c|0)!=(n|0)){continue}break}}if(j&1){c=L[h+56>>2]+R(g,36)|0;L[c>>2]=0;L[c+4>>2]=0;L[c+8>>2]=0;L[c+12>>2]=0;a=L[h+28>>2];L[c+16>>2]=L[h+24>>2];L[c+20>>2]=a;a=L[h+36>>2];L[c+24>>2]=L[h+32>>2];L[c+28>>2]=a;L[c+32>>2]=0}L[h+48>>2]=j;if((j|0)<=0){break b}d=j&1;k=L[h+56>>2];c:{if(!e){a=0;break c}g=j&-2;a=0;n=0;while(1){e=L[i+72>>2];c=k+R(a,36)|0;ha[L[L[e>>2]+16>>2]](e,a,c);L[c+32>>2]=a;j=a|1;e=k+R(j,36)|0;c=L[i+72>>2];ha[L[L[c>>2]+16>>2]](c,j,e);L[e+32>>2]=j;a=a+2|0;n=n+2|0;if((g|0)!=(n|0)){continue}break}}if(!d){break b}e=L[i+72>>2];c=k+R(a,36)|0;ha[L[L[e>>2]+16>>2]](e,a,c);L[c+32>>2]=a}n=0;k=0;F=h+44|0;c=L[F+4>>2];d:{if((c|0)<=0){p=S(-34028234663852886e22);D=S(-34028234663852886e22);q=S(-34028234663852886e22);l=S(34028234663852886e22);m=S(34028234663852886e22);b=S(34028234663852886e22);break d}a=L[F+12>>2];y=S(-34028234663852886e22);m=S(34028234663852886e22);l=S(34028234663852886e22);w=S(34028234663852886e22);p=S(-34028234663852886e22);q=S(-34028234663852886e22);while(1){e=a+R(o,36)|0;b=P[e+16>>2];y=b>y?b:y;b=P[e+8>>2];w=b>2];l=b>2];m=b>2];p=b>p?b:p;b=P[e+20>>2];q=b>q?b:q;o=o+1|0;if((c|0)!=(o|0)){continue}break}D=S(p+S(1));p=S(q+S(1));q=S(y+S(1));l=S(l+S(-1));m=S(m+S(-1));b=S(w+S(-1))}P[i+24>>2]=m;L[i>>2]=0;L[i+68>>2]=0;L[i+52>>2]=0;P[i+48>>2]=D;P[i+44>>2]=p;P[i+40>>2]=q;L[i+36>>2]=0;P[i+32>>2]=b;P[i+28>>2]=l;P[i- -64>>2]=S(65535)/S(D-b);P[i+60>>2]=S(65535)/S(p-l);P[i+56>>2]=S(65535)/S(q-m);a=L[i+8>>2];o=L[F+4>>2];E=o<<1;if((a|0)<(E|0)){if((E|0)>L[i+12>>2]){if(o){L[8513]=L[8513]+1;n=ha[L[6798]](o<<5,16)|0;c=L[i+8>>2]}else{c=a}e:{if((c|0)<=0){break e}o=0;if((c|0)!=1){d=c&-2;while(1){j=o<<4;g=j+n|0;f=j+L[i+16>>2]|0;e=L[f+4>>2];L[g>>2]=L[f>>2];L[g+4>>2]=e;e=L[f+12>>2];L[g+8>>2]=L[f+8>>2];L[g+12>>2]=e;e=j|16;g=e+n|0;j=e+L[i+16>>2]|0;e=L[j+4>>2];L[g>>2]=L[j>>2];L[g+4>>2]=e;e=L[j+12>>2];L[g+8>>2]=L[j+8>>2];L[g+12>>2]=e;o=o+2|0;k=k+2|0;if((d|0)!=(k|0)){continue}break}}if(!(c&1)){break e}c=o<<4;e=c+n|0;g=c+L[i+16>>2]|0;c=L[g+4>>2];L[e>>2]=L[g>>2];L[e+4>>2]=c;c=L[g+12>>2];L[e+8>>2]=L[g+8>>2];L[e+12>>2]=c}c=L[i+16>>2];if(!(c?!c|!M[i+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[i+16>>2]=n;J[i+20|0]=1;L[i+12>>2]=E}e=E+(a^-1)|0;c=E-a&3;if(c){o=0;while(1){L[(L[i+16>>2]+(a<<4)|0)+12>>2]=0;a=a+1|0;o=o+1|0;if((c|0)!=(o|0)){continue}break}}if(e>>>0>=3){while(1){c=a<<4;L[(c+L[i+16>>2]|0)+12>>2]=0;L[(c+L[i+16>>2]|0)+28>>2]=0;L[(c+L[i+16>>2]|0)+44>>2]=0;L[(c+L[i+16>>2]|0)+60>>2]=0;a=a+4|0;if((E|0)!=(a|0)){continue}break}}o=L[F+4>>2]}L[i+8>>2]=E;Gg(i,F,0,o);a=L[h+56>>2];if(!(a?!a|!M[h+60|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}fa=h- -64|0;break a}j=fa-16|0;fa=j;L[j+12>>2]=s+68;k=fa-32|0;fa=k;f=L[j+12>>2];a=L[f>>2];if(a){n=L[f+16>>2];while(1){e=a;a=a-1|0;d=a<<4;c=d+n|0;g=L[c+12>>2];f:{if((g|0)>=0){c=L[f+72>>2];ha[L[L[c>>2]+16>>2]](c,g,k);p=P[f+56>>2];x=P[f+40>>2];r=P[f+24>>2];q=P[f+60>>2];z=P[f+44>>2];u=P[f+28>>2];l=P[k>>2];m=P[k+4>>2];n=L[f+16>>2];c=d+n|0;A=P[f+48>>2];v=P[f+32>>2];b=P[k+8>>2];b=b>2];b=S(S(S((b>A?A:b)-v)*w)+S(.5));g:{if(b=S(0)){d=~~b>>>0;break g}d=0}K[c+4>>1]=d;b=mz?z:b)-u))+S(.5));h:{if(b=S(0)){d=~~b>>>0;break h}d=0}K[c+2>>1]=d;b=lx?x:b)-r)*p)+S(.5));i:{if(b=S(0)){d=~~b>>>0;break i}d=0}K[c>>1]=d;l=P[k+16>>2];m=P[k+20>>2];b=P[k+24>>2];b=bA?A:b)-v))+S(.5));j:{if(b=S(0)){d=~~b>>>0;break j}d=0}K[c+10>>1]=d;b=mz?z:b)-u))+S(.5));k:{if(b=S(0)){d=~~b>>>0;break k}d=0}K[c+8>>1]=d;b=lx?x:b)-r))+S(.5));if(b=S(0)){K[c+6>>1]=~~b>>>0;break f}K[c+6>>1]=0;break f}B=P[f+24>>2];g=(e<<4)+n|0;u=P[f+56>>2];b=S(B+S(S(N[g+6>>1])/u));y=b>S(-34028234663852886e22)?b:S(-34028234663852886e22);v=P[f+64>>2];C=P[f+32>>2];b=S(S(S(N[g+4>>1])/v)+C);D=b>2];r=P[f+28>>2];b=S(S(S(N[g+2>>1])/x)+r);z=b>1])/u)+B);A=b>1])/v));p=b>S(-34028234663852886e22)?b:S(-34028234663852886e22);b=S(r+S(S(N[g+8>>1])/x));q=b>S(-34028234663852886e22)?b:S(-34028234663852886e22);g=L[g+12>>2];e=e+((g|0)>=0?1:0-g|0)|0;if(e){e=(e<<4)+n|0;b=S(B+S(S(N[e+6>>1])/u));y=b>y?b:y;b=S(S(S(N[e+4>>1])/v)+C);D=b>1])/x)+r);z=b>1])/u)+B);A=b>1])/v));p=b>p?b:p;b=S(r+S(S(N[e+8>>1])/x));q=b>q?b:q}l=P[f+40>>2];m=P[f+44>>2];w=P[f+48>>2];b=pw?w:b)-C))+S(.5));l:{if(b=S(0)){d=~~b>>>0;break l}d=0}K[c+10>>1]=d;b=qm?m:b)-r))+S(.5));m:{if(b=S(0)){d=~~b>>>0;break m}d=0}K[c+8>>1]=d;b=yl?l:b)-B))+S(.5));n:{if(b=S(0)){d=~~b>>>0;break n}d=0}K[c+6>>1]=d;b=Dw?w:b)-C)*v)+S(.5));o:{if(b=S(0)){d=~~b>>>0;break o}d=0}K[c+4>>1]=d;b=r>z?r:z;b=S(S(S((b>m?m:b)-r)*x)+S(.5));p:{if(b=S(0)){d=~~b>>>0;break p}d=0}K[c+2>>1]=d;b=Al?l:b)-B)*u)+S(.5));q:{if(b=S(0)){d=~~b>>>0;break q}d=0}K[c>>1]=d}if(a){continue}break}}fa=k+32|0;fa=j+16|0}ha[L[L[s>>2]+116>>2]](s);j=fa-16|0;fa=j;c=t+12|0;L[j+12>>2]=c;L[j+8>>2]=s+68;a=L[j+8>>2];Od(c);k=fa-16|0;fa=k;L[k+12>>2]=a;L[k+8>>2]=0;L[k+4>>2]=c;c=L[k+8>>2];a=L[k+4>>2];f=fa-48|0;fa=f;L[f+44>>2]=L[k+12>>2];L[f+40>>2]=c;L[f+36>>2]=a;a=L[f+40>>2];c=fa-16|0;d=L[f+44>>2];L[c+12>>2]=d+4;L[c+8>>2]=a;a=L[L[c+12>>2]+12>>2]+(L[c+8>>2]<<4)|0;e=d+24|0;c=d+56|0;Jh(f+20|0,a,e,c);a=L[f+24>>2];g=L[f+36>>2];L[g>>2]=L[f+20>>2];L[g+4>>2]=a;a=L[f+32>>2];L[g+8>>2]=L[f+28>>2];L[g+12>>2]=a;a=L[f+40>>2];g=fa-16|0;L[g+12>>2]=d+4;L[g+8>>2]=a;Jh(f+4|0,(L[L[g+12>>2]+12>>2]+(L[g+8>>2]<<4)|0)+6|0,e,c);a=L[f+8>>2];c=L[f+36>>2];L[c+16>>2]=L[f+4>>2];L[c+20>>2]=a;a=L[f+16>>2];L[c+24>>2]=L[f+12>>2];L[c+28>>2]=a;fa=f+48|0;fa=k+16|0;fa=j+16|0;a=L[t+16>>2];L[s+16>>2]=L[t+12>>2];L[s+20>>2]=a;a=L[t+40>>2];L[s+40>>2]=L[t+36>>2];L[s+44>>2]=a;a=L[t+32>>2];L[s+32>>2]=L[t+28>>2];L[s+36>>2]=a;a=L[t+24>>2];L[s+24>>2]=L[t+20>>2];L[s+28>>2]=a;fa=t+48|0}function YA(a,b){a=a|0;b=b|0;var c=S(0),d=0,e=S(0),f=S(0),g=0,h=S(0),i=0,j=S(0),k=0,l=S(0),m=S(0),n=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=S(0),C=0,D=S(0),E=S(0),F=S(0),G=0,H=S(0),I=0,K=0,N=0,O=0,Q=0,U=0,V=0,W=S(0),X=S(0),Y=0,Z=0,$=S(0),aa=S(0),ba=S(0),ca=0,da=0,ea=0,fa=S(0),ga=S(0),ha=S(0),ia=S(0),ja=S(0),ka=S(0);Z=L[a+28>>2];d=Z;D=P[d+344>>2];G=L[a+32>>2];B=P[G+344>>2];h=S(D+B);t=h>S(0)?S(B/h):S(.5);u=S(S(1)-t);v=P[a+920>>2];w=P[a+904>>2];e=P[a+856>>2];j=P[a+840>>2];F=P[a+888>>2];q=P[a+824>>2];s=L[b+24>>2];V=M[a+49|0];a:{if(V){c=S(S(t*e)+S(u*v));r=S(S(t*q)+S(u*F));h=S(S(t*j)+S(u*w));p=S(S(1)/S(_(S(S(c*c)+S(S(r*r)+S(h*h))))));h=S(h*p);r=S(r*p);p=S(c*p);if(S(T(p))>S(.7071067690849304)){c=S(S(h*h)+S(p*p));o=S(S(1)/S(_(c)));l=S(o*S(-p));x=S(r*l);m=S(h*o);y=S(m*S(-r));c=S(c*o);break a}f=S(S(r*r)+S(h*h));c=S(S(1)/S(_(f)));x=S(f*c);f=S(c*S(-h));y=S(p*f);l=S(r*c);c=S(l*S(-p));break a}x=P[a+864>>2];y=P[a+848>>2];m=P[a+860>>2];l=P[a+844>>2];f=P[a+828>>2];r=q;h=j;p=e;c=P[a+832>>2]}ea=M[a+180|0];fa=P[a+880>>2];ga=P[a+944>>2];ha=P[a+876>>2];ia=P[a+940>>2];ja=P[a+872>>2];ka=P[a+936>>2];g=L[b+12>>2];P[g+8>>2]=m;P[g+4>>2]=l;P[g>>2]=f;k=s<<2;P[k+g>>2]=c;n=k+8|0;P[n+g>>2]=x;C=k+4|0;P[C+g>>2]=y;i=L[b+20>>2];H=S(-m);P[i+8>>2]=H;E=S(-l);P[i+4>>2]=E;W=S(-f);P[i>>2]=W;aa=S(-x);P[i+n>>2]=aa;ba=S(-y);P[i+C>>2]=ba;$=S(-c);P[i+k>>2]=$;o=P[a+280>>2];C=L[b+28>>2];n=C;K=L[a+300>>2];if(!(K&128)){o=S(o*P[b+4>>2])}o=S(o*P[b>>2]);X=S(S(q*w)-S(F*j));j=S(S(j*v)-S(w*e));e=S(S(e*F)-S(v*q));P[n>>2]=o*S(S(X*m)+S(S(j*f)+S(e*l)));P[k+C>>2]=o*S(S(X*x)+S(S(j*c)+S(e*y)));if(K&64){k=L[b+32>>2];P[k>>2]=P[a+292>>2];P[k+(s<<2)>>2]=P[a+292>>2]}ca=B>2];j=P[G+56>>2];o=P[d+60>>2];q=P[d+56>>2];v=P[G+52>>2];w=P[d+52>>2];b:{if(V){e=S(P[a+944>>2]-e);l=S(P[a+936>>2]-v);m=S(P[a+940>>2]-j);c=S(S(e*p)+S(S(l*r)+S(h*m)));f=S(p*c);x=S(e-f);o=S(P[a+880>>2]-o);y=S(P[a+872>>2]-w);q=S(P[a+876>>2]-q);e=S(S(o*p)+S(S(y*r)+S(h*q)));B=S(p*e);j=S(P[a+1080>>2]-P[a+1032>>2]);f=S(S(B+S(p*j))-f);v=S(x-S(u*f));X=m;m=S(h*c);E=S(X-m);D=S(h*e);m=S(S(D+S(h*j))-m);w=S(E-S(u*m));c=S(r*c);l=S(l-c);e=S(r*e);c=S(S(e+S(r*j))-c);F=S(l-S(u*c));j=S(o-B);B=S(j+S(t*f));q=S(q-D);D=S(q+S(t*m));f=S(y-e);H=S(f+S(t*c));c=S(S(t*x)+S(u*j));f=S(S(t*l)+S(u*f));e=S(S(t*E)+S(u*q));j=S(S(c*c)+S(S(f*f)+S(e*e)));c:{if(j>S(1.1920928955078125e-7)){m=c;c=S(S(1)/S(_(j)));m=S(m*c);l=S(e*c);f=S(f*c);break c}m=P[a+860>>2];l=P[a+844>>2];f=P[a+828>>2]}A=s<<3;d=A+g|0;P[d+8>>2]=S(H*l)-S(f*D);P[d+4>>2]=S(B*f)-S(m*H);P[d>>2]=S(D*m)-S(l*B);I=k<<2;P[I+i>>2]=-S(S(w*m)-S(l*v));N=(k|1)<<2;P[N+i>>2]=-S(S(v*f)-S(m*F));O=k+2<<2;P[O+i>>2]=-S(S(F*l)-S(f*w));y=S(S(p*f)-S(m*r));c=S(S(h*m)-S(l*p));E=S(S(F*y)-S(c*w));x=S(S(r*l)-S(f*h));e=S(S(v*c)-S(x*F));W=S(S(w*x)-S(y*v));j=S(S(H*y)-S(c*D));q=S(S(B*c)-S(x*H));o=S(S(D*x)-S(y*B));if(M[a+297|0]!=0&ca){j=S(t*j);q=S(t*q);o=S(t*o);E=S(u*E);W=S(u*W);e=S(u*e)}Y=R(s,12);d=Y+g|0;P[d+8>>2]=j;P[d+4>>2]=q;P[d>>2]=o;z=U<<2;da=z+8|0;P[i+da>>2]=-E;Q=z+4|0;P[i+Q>>2]=-e;P[i+z>>2]=-W;n=L[b+8>>2];d=A+n|0;P[d+8>>2]=m;P[d+4>>2]=l;P[d>>2]=f;d=n+Y|0;P[d+8>>2]=x;P[d+4>>2]=y;P[d>>2]=c;d=L[b+16>>2];P[I+d>>2]=-f;P[d+N>>2]=-l;P[d+O>>2]=-m;P[d+da>>2]=-x;P[d+Q>>2]=-y;P[d+z>>2]=-c;j=S(0);q=S(0);o=S(0);break b}z=k<<2;q=S(j-q);o=S(e-o);e=S(S(q*m)-S(l*o));P[z+g>>2]=t*e;I=z|4;j=S(v-w);v=S(S(o*f)-S(m*j));P[I+g>>2]=t*v;N=z+8|0;w=S(S(j*l)-S(f*q));P[N+g>>2]=t*w;P[i+z>>2]=u*e;P[i+I>>2]=u*v;P[i+N>>2]=u*w;A=U<<2;O=A+8|0;e=S(S(j*y)-S(c*q));P[O+g>>2]=t*e;Y=A+4|0;v=S(S(o*c)-S(x*j));P[Y+g>>2]=t*v;w=S(S(q*x)-S(y*o));P[g+A>>2]=t*w;P[i+O>>2]=u*e;P[i+Y>>2]=u*v;P[i+A>>2]=u*w;n=L[b+8>>2];d=n+(s<<3)|0;P[d+8>>2]=m;P[d+4>>2]=l;P[d>>2]=f;d=R(s,12)+n|0;P[d+8>>2]=x;P[d+4>>2]=y;P[d>>2]=c;d=L[b+16>>2];P[z+d>>2]=W;P[d+I>>2]=E;P[d+N>>2]=H;P[d+O>>2]=aa;P[d+Y>>2]=ba;P[d+A>>2]=$;F=S(0);w=S(0);v=S(0);H=S(0);D=S(0);B=S(0)}e=P[a+264>>2];k=k<<2;z=k+C|0;if(!(K&32)){e=S(e*P[b+4>>2])}e=S(e*P[b>>2]);$=m;m=S(ga-fa);X=f;f=S(ka-ja);E=S(ia-ha);P[z>>2]=e*S(S($*m)+S(S(X*f)+S(E*l)));z=U<<2;P[z+C>>2]=e*S(S(x*m)+S(S(c*f)+S(E*y)));if(K&16){Q=k;k=L[b+32>>2];P[Q+k>>2]=P[a+276>>2];P[k+z>>2]=P[a+276>>2]}f=ea?S(1):S(-1);d:{e:{U=M[a+296|0];f:{if(U){c=S(f*P[a+1032>>2]);z=c>S(0)?2:1;k=M[a+1096|0];break f}if(!M[a+1096|0]){break e}z=0;c=S(0);k=1}N=s<<4;P[N+n>>2]=r;s=s<<2;O=s|1;A=O<<2;P[A+n>>2]=h;Q=n;n=s|2;I=n<<2;P[Q+I>>2]=p;P[d+N>>2]=-r;P[d+A>>2]=-h;P[d+I>>2]=-p;Q=i+(n<<2)|0;g:{h:{if(V){if(ca){break g}A=s<<2;P[A+g>>2]=S(D*p)-S(h*B);V=O<<2;P[V+g>>2]=S(B*r)-S(p*H);P[g+(n<<2)>>2]=S(H*h)-S(r*D);P[i+A>>2]=-S(S(w*p)-S(h*v));P[i+V>>2]=-S(S(v*r)-S(p*F));m=S(-S(S(F*h)-S(r*w)));break h}n=s<<2;e=S(S(q*p)-S(h*o));P[n+g>>2]=t*e;o=S(S(o*r)-S(p*j));P[g+A>>2]=t*o;j=S(S(j*h)-S(r*q));P[g+I>>2]=t*j;P[i+n>>2]=u*e;P[i+A>>2]=u*o;m=S(u*j)}P[Q>>2]=m}e=P[a+188>>2];j=P[a+184>>2];i=s<<2;L[i+C>>2]=0;d=L[b+36>>2];L[i+d>>2]=0;n=L[b+40>>2];L[i+n>>2]=0;q=P[(K&512?a+232|0:b+4|0)>>2];if(!(!k|(U|0)!=0&e==j)){if(K&1){P[L[b+32>>2]+(s<<2)>>2]=P[a+212>>2]}o=pd(P[a+1080>>2],P[a+184>>2],P[a+188>>2],P[a+1100>>2],S(q*P[b>>2]));C=L[b+28>>2];k=s<<2;i=C+k|0;P[i>>2]=P[i>>2]-S(S(o*f)*P[a+1100>>2]);d=L[b+36>>2];i=k+d|0;P[i>>2]=P[i>>2]-S(P[a+1104>>2]*P[b>>2]);n=L[b+40>>2];k=k+n|0;P[k>>2]=S(P[a+1104>>2]*P[b>>2])+P[k>>2]}i=5;if(!U){break d}g=s<<2;k=g+C|0;P[k>>2]=S(S(q*P[b>>2])*c)+P[k>>2];if(J[a+301|0]&1){P[g+L[b+32>>2]>>2]=P[a+244>>2]}n=g+n|0;i:{j:{if(e==j){L[(s<<2)+d>>2]=-8388609;break j}g=(s<<2)+d|0;if((z|0)==1){L[g>>2]=-8388609;c=S(0);break i}L[g>>2]=0}c=S(34028234663852886e22)}P[n>>2]=c;c=S(S(1)-P[a+240>>2]);k:{if(!(c>S(0)|c>2]*p)+S(S(P[Z+312>>2]*r)+S(h*P[Z+316>>2])))-S(S(P[G+320>>2]*p)+S(S(P[G+312>>2]*r)+S(h*P[G+316>>2])))));l:{if((z|0)==1){if(!(cP[k>>2]){break l}break k}if(!(c>S(0))){break k}l=S(c*S(-e));if(!(l>2])){break k}}P[k>>2]=l}P[k>>2]=P[a+232>>2]*P[k>>2];break d}i=4}d=M[a+297|0];m:{n:{if(d){s=!M[a+1112|0];l=P[a+1088>>2];k=l>S(0)?1:2;break n}if(!M[a+1112|0]){break m}s=0;l=S(0);k=0}n=L[b+12>>2];i=R(L[b+24>>2],i);g=i<<2;P[n+g>>2]=r;G=g+8|0;P[G+n>>2]=p;K=g+4|0;P[K+n>>2]=h;n=L[b+20>>2];P[n+G>>2]=-p;P[n+K>>2]=-h;P[g+n>>2]=-r;g=L[a+300>>2];q=P[(g&2048?a+248|0:b+4|0)>>2];f=P[a+196>>2];j=P[a+192>>2];if(!((d|0)!=0&f==j|s)){e=f;c=j;if(g&4){P[L[b+32>>2]+(i<<2)>>2]=P[a+228>>2];e=P[a+196>>2];c=P[a+192>>2]}c=pd(P[a+1084>>2],c,e,P[a+1116>>2],S(q*P[b>>2]));C=L[b+28>>2];g=i<<2;P[C+g>>2]=c*P[a+1116>>2];P[g+L[b+36>>2]>>2]=P[b>>2]*S(-P[a+1120>>2]);P[g+L[b+40>>2]>>2]=P[a+1120>>2]*P[b>>2]}if(!d){break m}d=i<<2;g=d+C|0;P[g>>2]=S(S(q*P[b>>2])*l)+P[g>>2];if(M[a+301|0]&4){P[d+L[b+32>>2]>>2]=P[a+260>>2]}o:{if(f==j){L[L[b+36>>2]+(i<<2)>>2]=-8388609;c=S(34028234663852886e22);break o}d=L[b+36>>2]+(i<<2)|0;if((k|0)==1){L[d>>2]=0;c=S(34028234663852886e22);break o}L[d>>2]=-8388609;c=S(0)}P[L[b+40>>2]+(i<<2)>>2]=c;c=S(S(1)-P[a+256>>2]);p:{if(!(c>S(0)|c>2];f=S(S(P[b+336>>2]*p)+S(S(P[b+328>>2]*r)+S(h*P[b+332>>2])));b=L[a+32>>2];h=S(f-S(S(P[b+336>>2]*p)+S(S(P[b+328>>2]*r)+S(h*P[b+332>>2]))));q:{if((k|0)==1){if(!(hP[g>>2]){break q}break p}if(!(h>S(0))){break p}h=S(h*S(-c));if(!(h>2])){break p}}P[g>>2]=h}P[g>>2]=P[a+248>>2]*P[g>>2]}}function bE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=S(0),h=0,i=S(0),j=S(0),k=S(0),l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=fa-48|0;fa=h;e=P[a+40>>2];f=P[a+24>>2];j=S(S(1)/P[a+116>>2]);k=P[a+56>>2];g=S(S(j*P[d+8>>2])+k);g=f>g?f:g;g=e>2])+k);f=f>j?f:j;e=e>2];f=P[a+20>>2];j=S(S(1)/P[a+112>>2]);k=P[a+52>>2];g=S(S(j*P[d+4>>2])+k);g=f>g?f:g;g=e>2])+k);f=f>j?f:j;e=e>2];f=P[a+16>>2];j=S(S(1)/P[a+108>>2]);k=P[a+48>>2];g=S(S(j*P[d>>2])+k);g=f>g?f:g;g=e>2])+k);f=f>j?f:j;e=e>2]-1|0;p=L[a+64>>2]-1|0;g:{h:{switch(L[a+104>>2]){case 0:l=(o|0)<(l|0)?o:l;n=(q|0)>0?q:0;p=(p|0)>(r|0)?r:p;t=(s|0)>0?s:0;break g;case 1:l=(o|0)<(l|0)?o:l;n=(q|0)>0?q:0;p=(d|0)<(p|0)?d:p;t=(c|0)>0?c:0;break g;case 2:break h;default:break g}}l=(l|0)>(r|0)?r:l;n=(s|0)>0?s:0;p=(d|0)<(p|0)?d:p;t=(c|0)>0?c:0}if(!((p|0)<=(t|0)|(n|0)>=(l|0))){while(1){q=n&1;o=n+1|0;j=S(o|0);k=S(n|0);c=t;while(1){i:{j:{d=c;if(!(M[a+100|0]|(c+n&1?0:M[a+101|0])|(q?0:M[a+102|0]))){g=S(ha[L[L[a>>2]+68>>2]](a,d,n));k:{l:{switch(L[a+104>>2]){case 2:f=P[a+80>>2];e=P[a+84>>2];i=P[a+56>>2];L[h+12>>2]=0;e=S(k-S(e*S(.5)));f=S(S(d|0)-S(f*S(.5)));g=S(g-i);break k;case 1:f=P[a+80>>2];i=P[a+84>>2];e=P[a+52>>2];L[h+12>>2]=0;e=S(g-e);f=S(S(d|0)-S(f*S(.5)));g=S(k-S(i*S(.5)));break k;case 0:e=P[a+80>>2];i=P[a+84>>2];f=P[a+48>>2];L[h+12>>2]=0;f=S(g-f);e=S(S(d|0)-S(e*S(.5)));g=S(k-S(i*S(.5)));break k;default:break l}}e=P[h+4>>2];f=P[h>>2];g=P[h+8>>2]}P[h>>2]=f*P[a+108>>2];P[h+4>>2]=e*P[a+112>>2];P[h+8>>2]=g*P[a+116>>2];g=S(ha[L[L[a>>2]+68>>2]](a,d,o));m:{n:{switch(L[a+104>>2]){case 2:f=P[a+80>>2];e=P[a+84>>2];i=P[a+56>>2];L[h+28>>2]=0;e=S(j-S(e*S(.5)));f=S(S(d|0)-S(f*S(.5)));g=S(g-i);break m;case 1:f=P[a+80>>2];i=P[a+84>>2];e=P[a+52>>2];L[h+28>>2]=0;e=S(g-e);f=S(S(d|0)-S(f*S(.5)));g=S(j-S(i*S(.5)));break m;case 0:e=P[a+80>>2];i=P[a+84>>2];f=P[a+48>>2];L[h+28>>2]=0;f=S(g-f);e=S(S(d|0)-S(e*S(.5)));g=S(j-S(i*S(.5)));break m;default:break n}}e=P[h+20>>2];f=P[h+16>>2];g=P[h+24>>2]}P[h+16>>2]=f*P[a+108>>2];P[h+20>>2]=e*P[a+112>>2];P[h+24>>2]=g*P[a+116>>2];c=d+1|0;g=S(ha[L[L[a>>2]+68>>2]](a,c,n));o:{p:{switch(L[a+104>>2]){case 2:f=P[a+80>>2];e=P[a+84>>2];i=P[a+56>>2];L[h+44>>2]=0;e=S(k-S(e*S(.5)));f=S(S(c|0)-S(f*S(.5)));g=S(g-i);break o;case 1:f=P[a+80>>2];i=P[a+84>>2];e=P[a+52>>2];L[h+44>>2]=0;e=S(g-e);f=S(S(c|0)-S(f*S(.5)));g=S(k-S(i*S(.5)));break o;case 0:e=P[a+80>>2];i=P[a+84>>2];f=P[a+48>>2];L[h+44>>2]=0;f=S(g-f);e=S(S(c|0)-S(e*S(.5)));g=S(k-S(i*S(.5)));break o;default:break p}}e=P[h+36>>2];f=P[h+32>>2];g=P[h+40>>2]}P[h+32>>2]=f*P[a+108>>2];P[h+36>>2]=e*P[a+112>>2];P[h+40>>2]=g*P[a+116>>2];ha[L[L[b>>2]+8>>2]](b,h,d,n);g=S(ha[L[L[a>>2]+68>>2]](a,c,n));q:{r:{switch(L[a+104>>2]){case 2:f=P[a+80>>2];e=P[a+84>>2];i=P[a+56>>2];L[h+12>>2]=0;e=S(k-S(e*S(.5)));f=S(S(c|0)-S(f*S(.5)));g=S(g-i);break q;case 1:f=P[a+80>>2];i=P[a+84>>2];e=P[a+52>>2];L[h+12>>2]=0;e=S(g-e);f=S(S(c|0)-S(f*S(.5)));g=S(k-S(i*S(.5)));break q;case 0:e=P[a+80>>2];i=P[a+84>>2];f=P[a+48>>2];L[h+12>>2]=0;f=S(g-f);e=S(S(c|0)-S(e*S(.5)));g=S(k-S(i*S(.5)));break q;default:break r}}e=P[h+4>>2];f=P[h>>2];g=P[h+8>>2]}P[h>>2]=f*P[a+108>>2];P[h+4>>2]=e*P[a+112>>2];P[h+8>>2]=g*P[a+116>>2];g=S(ha[L[L[a>>2]+68>>2]](a,c,o));s:{switch(L[a+104>>2]){case 2:f=P[a+80>>2];e=P[a+84>>2];i=P[a+56>>2];L[h+44>>2]=0;e=S(j-S(e*S(.5)));f=S(S(c|0)-S(f*S(.5)));g=S(g-i);break i;case 1:f=P[a+80>>2];i=P[a+84>>2];e=P[a+52>>2];L[h+44>>2]=0;e=S(g-e);f=S(S(c|0)-S(f*S(.5)));g=S(j-S(i*S(.5)));break i;case 0:break s;default:break j}}e=P[a+80>>2];i=P[a+84>>2];f=P[a+48>>2];L[h+44>>2]=0;f=S(g-f);e=S(S(c|0)-S(e*S(.5)));g=S(j-S(i*S(.5)));break i}g=S(ha[L[L[a>>2]+68>>2]](a,d,n));t:{u:{switch(L[a+104>>2]){case 2:f=P[a+80>>2];e=P[a+84>>2];i=P[a+56>>2];L[h+12>>2]=0;e=S(k-S(e*S(.5)));f=S(S(d|0)-S(f*S(.5)));g=S(g-i);break t;case 1:f=P[a+80>>2];i=P[a+84>>2];e=P[a+52>>2];L[h+12>>2]=0;e=S(g-e);f=S(S(d|0)-S(f*S(.5)));g=S(k-S(i*S(.5)));break t;case 0:e=P[a+80>>2];i=P[a+84>>2];f=P[a+48>>2];L[h+12>>2]=0;f=S(g-f);e=S(S(d|0)-S(e*S(.5)));g=S(k-S(i*S(.5)));break t;default:break u}}e=P[h+4>>2];f=P[h>>2];g=P[h+8>>2]}P[h>>2]=f*P[a+108>>2];P[h+4>>2]=e*P[a+112>>2];P[h+8>>2]=g*P[a+116>>2];c=d+1|0;g=S(ha[L[L[a>>2]+68>>2]](a,c,n));v:{w:{switch(L[a+104>>2]){case 2:f=P[a+80>>2];e=P[a+84>>2];i=P[a+56>>2];L[h+28>>2]=0;e=S(k-S(e*S(.5)));f=S(S(c|0)-S(f*S(.5)));g=S(g-i);break v;case 1:f=P[a+80>>2];i=P[a+84>>2];e=P[a+52>>2];L[h+28>>2]=0;e=S(g-e);f=S(S(c|0)-S(f*S(.5)));g=S(k-S(i*S(.5)));break v;case 0:e=P[a+80>>2];i=P[a+84>>2];f=P[a+48>>2];L[h+28>>2]=0;f=S(g-f);e=S(S(c|0)-S(e*S(.5)));g=S(k-S(i*S(.5)));break v;default:break w}}e=P[h+20>>2];f=P[h+16>>2];g=P[h+24>>2]}P[h+16>>2]=f*P[a+108>>2];P[h+20>>2]=e*P[a+112>>2];P[h+24>>2]=g*P[a+116>>2];g=S(ha[L[L[a>>2]+68>>2]](a,c,o));x:{y:{switch(L[a+104>>2]){case 2:f=P[a+80>>2];e=P[a+84>>2];i=P[a+56>>2];L[h+44>>2]=0;e=S(j-S(e*S(.5)));f=S(S(c|0)-S(f*S(.5)));g=S(g-i);break x;case 1:f=P[a+80>>2];i=P[a+84>>2];e=P[a+52>>2];L[h+44>>2]=0;e=S(g-e);f=S(S(c|0)-S(f*S(.5)));g=S(j-S(i*S(.5)));break x;case 0:e=P[a+80>>2];i=P[a+84>>2];f=P[a+48>>2];L[h+44>>2]=0;f=S(g-f);e=S(S(c|0)-S(e*S(.5)));g=S(j-S(i*S(.5)));break x;default:break y}}e=P[h+36>>2];f=P[h+32>>2];g=P[h+40>>2]}P[h+32>>2]=f*P[a+108>>2];P[h+36>>2]=e*P[a+112>>2];P[h+40>>2]=g*P[a+116>>2];ha[L[L[b>>2]+8>>2]](b,h,d,n);g=S(ha[L[L[a>>2]+68>>2]](a,c,o));z:{A:{switch(L[a+104>>2]){case 2:f=P[a+80>>2];e=P[a+84>>2];i=P[a+56>>2];L[h+28>>2]=0;e=S(j-S(e*S(.5)));f=S(S(c|0)-S(f*S(.5)));g=S(g-i);break z;case 1:f=P[a+80>>2];i=P[a+84>>2];e=P[a+52>>2];L[h+28>>2]=0;e=S(g-e);f=S(S(c|0)-S(f*S(.5)));g=S(j-S(i*S(.5)));break z;case 0:e=P[a+80>>2];i=P[a+84>>2];f=P[a+48>>2];L[h+28>>2]=0;f=S(g-f);e=S(S(c|0)-S(e*S(.5)));g=S(j-S(i*S(.5)));break z;default:break A}}e=P[h+20>>2];f=P[h+16>>2];g=P[h+24>>2]}P[h+16>>2]=f*P[a+108>>2];P[h+20>>2]=e*P[a+112>>2];P[h+24>>2]=g*P[a+116>>2];g=S(ha[L[L[a>>2]+68>>2]](a,d,o));B:{switch(L[a+104>>2]){case 2:f=P[a+80>>2];e=P[a+84>>2];i=P[a+56>>2];L[h+44>>2]=0;e=S(j-S(e*S(.5)));f=S(S(d|0)-S(f*S(.5)));g=S(g-i);break i;case 1:f=P[a+80>>2];i=P[a+84>>2];e=P[a+52>>2];L[h+44>>2]=0;e=S(g-e);f=S(S(d|0)-S(f*S(.5)));g=S(j-S(i*S(.5)));break i;case 0:break B;default:break j}}e=P[a+80>>2];i=P[a+84>>2];f=P[a+48>>2];L[h+44>>2]=0;f=S(g-f);e=S(S(d|0)-S(e*S(.5)));g=S(j-S(i*S(.5)));break i}e=P[h+36>>2];f=P[h+32>>2];g=P[h+40>>2]}P[h+32>>2]=f*P[a+108>>2];P[h+36>>2]=e*P[a+112>>2];P[h+40>>2]=g*P[a+116>>2];ha[L[L[b>>2]+8>>2]](b,h,d,n);if((c|0)!=(p|0)){continue}break}n=o;if((l|0)!=(n|0)){continue}break}}fa=h+48|0}function Ze(a,b,c,d){var e=0,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=S(0),q=S(0),r=S(0),s=S(0),t=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=S(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);e=fa-688|0;fa=e;g=e+612|0;L[g+4>>2]=35;L[g+8>>2]=0;L[g>>2]=14328;L[g+44>>2]=1025758986;L[g+12>>2]=1065353216;L[g+16>>2]=1065353216;L[g>>2]=14044;L[g+20>>2]=1065353216;L[g+24>>2]=0;L[g+44>>2]=0;L[g+28>>2]=0;L[g+4>>2]=8;L[g>>2]=16192;f=L[c+12>>2];t=L[c+4>>2];u=L[t+4>>2];a:{if((u|0)<=19){L[e+604>>2]=0;L[e+608>>2]=0;L[e+436>>2]=6864;P[e+600>>2]=P[d+4>>2];J[e+408|0]=0;L[e+384>>2]=953267991;u=e+664|0;L[u+12>>2]=t;L[u+8>>2]=g;K=e+76|0;L[u+4>>2]=K;L[u>>2]=19064;F=e+60|0;L[F+12>>2]=t;L[F+8>>2]=g;L[F+4>>2]=K;L[F>>2]=18416;g=L[d+16>>2]&8?F:u;b:{if(!(ha[L[L[g>>2]+8>>2]](g,a,b,f,f,e+436|0)|0)){break b}h=P[e+576>>2];j=P[e+568>>2];i=P[e+572>>2];k=S(S(h*h)+S(S(j*j)+S(i*i)));if(!(k>S(9999999747378752e-20))){break b}l=P[e+600>>2];if(!(l>2])){break b}m=h;h=S(S(1)/S(_(k)));P[e+576>>2]=m*h;P[e+572>>2]=i*h;P[e+568>>2]=j*h;a=L[c+8>>2];L[e+36>>2]=0;L[e+32>>2]=a;a=L[e+580>>2];L[e+48>>2]=L[e+576>>2];L[e+52>>2]=a;a=L[e+572>>2];L[e+40>>2]=L[e+568>>2];L[e+44>>2]=a;P[e+56>>2]=l;S(ha[L[L[d>>2]+12>>2]](d,e+32|0,1))}break a}g=u-21|0;if(g>>>0<=8){v=P[f+20>>2];i=P[f+36>>2];q=P[f+24>>2];n=P[f+52>>2];k=P[f+56>>2];l=P[f+40>>2];r=P[f+32>>2];o=P[f+16>>2];m=P[f>>2];p=P[f+4>>2];s=P[f+48>>2];x=P[f+8>>2];j=P[a+52>>2];w=P[a+56>>2];h=P[a+48>>2];L[e+448>>2]=0;n=S(-n);B=S(q*n);y=S(S(B-S(x*s))-S(l*k));C=S(w*l);D=S(q*j);P[e+444>>2]=y+S(C+S(S(h*x)+D));E=S(v*n);z=S(S(E-S(p*s))-S(i*k));G=S(w*i);H=S(v*j);P[e+440>>2]=z+S(G+S(S(h*p)+H));I=S(o*n);N=S(S(I-S(m*s))-S(r*k));O=S(w*r);Q=S(o*j);P[e+436>>2]=N+S(O+S(S(h*m)+Q));w=P[b+52>>2];n=P[b+56>>2];j=P[b+48>>2];L[e+44>>2]=0;A=y;y=S(n*l);T=S(j*x);x=S(q*w);P[e+40>>2]=A+S(y+S(T+x));A=z;z=S(n*i);q=S(j*p);p=S(v*w);P[e+36>>2]=A+S(z+S(q+p));n=S(n*r);A=S(j*m);m=S(o*w);P[e+32>>2]=N+S(n+S(A+m));c:{switch(g|0){case 0:b=L[c+8>>2];g=e+436|0;u=e+32|0;a=xg(e+76|0,g,u,L[d+16>>2]);L[a+52>>2]=t;L[a+48>>2]=b;L[a+44>>2]=d;L[a>>2]=6932;c=L[f+12>>2];b=a- -64|0;L[b>>2]=L[f+8>>2];L[b+4>>2]=c;b=L[f+4>>2];L[a+56>>2]=L[f>>2];L[a+60>>2]=b;b=L[f+28>>2];L[a+80>>2]=L[f+24>>2];L[a+84>>2]=b;b=L[f+20>>2];L[a+72>>2]=L[f+16>>2];L[a+76>>2]=b;b=L[f+44>>2];L[a+96>>2]=L[f+40>>2];L[a+100>>2]=b;b=L[f+36>>2];L[a+88>>2]=L[f+32>>2];L[a+92>>2]=b;b=L[f+60>>2];L[a+112>>2]=L[f+56>>2];L[a+116>>2]=b;b=L[f+52>>2];L[a+104>>2]=L[f+48>>2];L[a+108>>2]=b;P[a+40>>2]=P[d+4>>2];b=fa-16|0;fa=b;c=L[t+48>>2];L[b+12>>2]=a;L[b+8>>2]=c;L[b+4>>2]=12388;c=L[t+52>>2];d=b+4|0;a=fa-32|0;fa=a;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;L[a>>2]=0;L[a+4>>2]=0;d:{if(M[c+60|0]){Em(c,d,g,u,a+16|0,a,L[c+56>>2]);break d}Fm(c,d,g,u,a+16|0,a)}fa=a+32|0;fa=b+16|0;break a;case 4:b=L[c+8>>2];c=e+436|0;g=e+32|0;a=xg(e+76|0,c,g,L[d+16>>2]);L[a+52>>2]=t;L[a+48>>2]=b;L[a+44>>2]=d;L[a>>2]=6932;u=L[f+12>>2];b=a- -64|0;L[b>>2]=L[f+8>>2];L[b+4>>2]=u;b=L[f+4>>2];L[a+56>>2]=L[f>>2];L[a+60>>2]=b;b=L[f+28>>2];L[a+80>>2]=L[f+24>>2];L[a+84>>2]=b;b=L[f+20>>2];L[a+72>>2]=L[f+16>>2];L[a+76>>2]=b;b=L[f+44>>2];L[a+96>>2]=L[f+40>>2];L[a+100>>2]=b;b=L[f+36>>2];L[a+88>>2]=L[f+32>>2];L[a+92>>2]=b;b=L[f+60>>2];L[a+112>>2]=L[f+56>>2];L[a+116>>2]=b;b=L[f+52>>2];L[a+104>>2]=L[f+48>>2];L[a+108>>2]=b;P[a+40>>2]=P[d+4>>2];ha[L[L[t>>2]+144>>2]](t,a,c,g);break a;default:break c}}v=P[f>>2];q=P[f+4>>2];k=S(-k);A=S(l*k);l=P[f+8>>2];s=S(-s);o=S(A+S(S(l*s)+B));P[e+672>>2]=S(C+S(S(h*l)+D))+o;L[e+676>>2]=0;i=S(S(i*k)+S(S(q*s)+E));P[e+668>>2]=S(G+S(S(h*q)+H))+i;A=S(O+S(S(h*v)+Q));h=S(S(r*k)+S(S(v*s)+I));P[e+664>>2]=A+h;L[e+72>>2]=0;P[e+68>>2]=S(y+S(S(j*l)+x))+o;P[e+64>>2]=S(z+S(S(j*q)+p))+i;P[e+60>>2]=S(n+S(S(j*v)+m))+h;b=L[c+8>>2];a=xg(e+76|0,e+664|0,e+60|0,L[d+16>>2]);L[a+52>>2]=t;L[a+48>>2]=b;L[a+44>>2]=d;L[a>>2]=7116;c=L[f+12>>2];b=a- -64|0;L[b>>2]=L[f+8>>2];L[b+4>>2]=c;b=L[f+4>>2];L[a+56>>2]=L[f>>2];L[a+60>>2]=b;b=L[f+28>>2];L[a+80>>2]=L[f+24>>2];L[a+84>>2]=b;b=L[f+20>>2];L[a+72>>2]=L[f+16>>2];L[a+76>>2]=b;b=L[f+44>>2];L[a+96>>2]=L[f+40>>2];L[a+100>>2]=b;b=L[f+36>>2];L[a+88>>2]=L[f+32>>2];L[a+92>>2]=b;b=L[f+60>>2];L[a+112>>2]=L[f+56>>2];L[a+116>>2]=b;b=L[f+52>>2];L[a+104>>2]=L[f+48>>2];L[a+108>>2]=b;P[a+40>>2]=P[d+4>>2];b=L[e+676>>2];L[e+24>>2]=L[e+672>>2];L[e+28>>2]=b;b=L[e+668>>2];L[e+16>>2]=L[e+664>>2];L[e+20>>2]=b;h=P[e+60>>2];if(h>2]){P[e+16>>2]=h}j=P[e+64>>2];if(j>2]){P[e+20>>2]=j}i=P[e+68>>2];if(i>2]){P[e+24>>2]=i}k=P[e+72>>2];if(k>2]){P[e+28>>2]=k}b=L[e+676>>2];L[e+8>>2]=L[e+672>>2];L[e+12>>2]=b;b=L[e+668>>2];L[e>>2]=L[e+664>>2];L[e+4>>2]=b;if(h>P[e>>2]){P[e>>2]=h}if(j>P[e+4>>2]){P[e+4>>2]=j}if(i>P[e+8>>2]){P[e+8>>2]=i}if(k>P[e+12>>2]){P[e+12>>2]=k}ha[L[L[t>>2]+64>>2]](t,a,e+16|0,e);break a}if((u|0)!=31){break a}g=L[t+64>>2];c=L[c+8>>2];L[e+56>>2]=d;L[e+52>>2]=b;L[e+48>>2]=a;L[e+44>>2]=f;L[e+40>>2]=t;L[e+36>>2]=c;L[e+32>>2]=7304;if(g){h=P[f+20>>2];j=P[f+36>>2];i=P[f+24>>2];k=P[f+52>>2];p=P[a+52>>2];l=P[f+40>>2];r=P[f+56>>2];o=P[a+56>>2];x=P[f>>2];s=P[f+16>>2];v=P[f+32>>2];w=P[f+4>>2];m=P[f+8>>2];q=P[f+48>>2];n=P[a+48>>2];L[e+88>>2]=0;o=S(o-r);y=m;m=S(n-q);p=S(p-k);P[e+84>>2]=S(l*o)+S(S(y*m)+S(i*p));P[e+80>>2]=S(j*o)+S(S(w*m)+S(p*h));P[e+76>>2]=S(v*o)+S(S(x*m)+S(p*s));o=P[b+52>>2];m=P[b+56>>2];p=P[f>>2];x=P[f+4>>2];w=P[f+8>>2];n=P[b+48>>2];L[e+448>>2]=0;y=l;l=S(m-r);r=S(n-q);m=i;i=S(o-k);P[e+444>>2]=S(y*l)+S(S(w*r)+S(m*i));P[e+440>>2]=S(j*l)+S(S(x*r)+S(h*i));P[e+436>>2]=S(v*l)+S(S(p*r)+S(s*i));qn(L[g>>2],e+76|0,e+436|0,e+32|0);break a}b=L[t+16>>2];if((b|0)<=0){break a}c=0;while(1){a=L[L[e+40>>2]+24>>2]+R(c,80)|0;d=L[a+64>>2];o=P[a+56>>2];m=P[a+48>>2];p=P[a+52>>2];x=P[a+32>>2];w=P[a>>2];n=P[a+16>>2];B=P[a+36>>2];y=P[a+4>>2];C=P[a+20>>2];D=P[a+40>>2];E=P[a+8>>2];z=P[a+24>>2];a=L[e+44>>2];G=P[a+52>>2];H=P[a+56>>2];h=P[a+24>>2];j=P[a+20>>2];i=P[a+40>>2];k=P[a+36>>2];I=P[a+48>>2];l=P[a+8>>2];r=P[a>>2];s=P[a+4>>2];v=P[a+16>>2];q=P[a+32>>2];L[e+136>>2]=0;L[e+120>>2]=0;L[e+104>>2]=0;L[e+88>>2]=0;P[e+116>>2]=S(D*i)+S(S(E*q)+S(z*k));P[e+112>>2]=S(B*i)+S(S(y*q)+S(C*k));P[e+108>>2]=S(x*i)+S(S(w*q)+S(n*k));P[e+100>>2]=S(D*h)+S(S(E*v)+S(z*j));P[e+96>>2]=S(B*h)+S(S(y*v)+S(C*j));P[e+92>>2]=S(x*h)+S(S(w*v)+S(n*j));P[e+84>>2]=S(D*l)+S(S(E*r)+S(s*z));P[e+80>>2]=S(B*l)+S(S(y*r)+S(s*C));P[e+76>>2]=S(x*l)+S(S(w*r)+S(n*s));P[e+132>>2]=H+S(S(o*i)+S(S(m*q)+S(k*p)));P[e+128>>2]=G+S(S(o*h)+S(S(m*v)+S(j*p)));P[e+124>>2]=I+S(S(o*l)+S(S(m*r)+S(s*p)));L[e+684>>2]=c;L[e+680>>2]=-1;L[e+672>>2]=L[e+36>>2];L[e+668>>2]=d;L[e+664>>2]=0;L[e+676>>2]=e+76;L[e+448>>2]=-65535;L[e+452>>2]=0;L[e+440>>2]=1065353216;L[e+444>>2]=0;L[e+460>>2]=c;L[e+436>>2]=7480;a=L[e+56>>2];L[e+456>>2]=a;P[e+440>>2]=P[a+4>>2];L[e+452>>2]=L[a+16>>2];Ze(L[e+48>>2],L[e+52>>2],e+664|0,e+436|0);c=c+1|0;if((b|0)!=(c|0)){continue}break}}fa=e+688|0}function MF(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;P[a+20>>2]=Q[b+32>>3];P[a+24>>2]=Q[b+40>>3];P[a+28>>2]=Q[b+48>>3];P[a+32>>2]=Q[b+56>>3];P[a+4>>2]=Q[b>>3];P[a+8>>2]=Q[b+8>>3];P[a+12>>2]=Q[b+16>>3];P[a+16>>2]=Q[b+24>>3];P[a+36>>2]=Q[b+64>>3];P[a+40>>2]=Q[b+72>>3];P[a+44>>2]=Q[b+80>>3];P[a+48>>2]=Q[b+88>>3];L[a+56>>2]=L[b+96>>2];J[a+60|0]=L[b+100>>2]!=0;f=L[a+88>>2];k=L[b+104>>2];a:{if((f|0)>=(k|0)){break a}if((k|0)>L[a+92>>2]){if(k){L[8513]=L[8513]+1;j=ha[L[6798]](k<<6,16)|0;c=L[a+88>>2]}else{c=f}b:{if((c|0)<=0){break b}if((c|0)!=1){m=c&-2;while(1){h=l<<6;g=h+j|0;i=h+L[a+96>>2]|0;e=L[i+4>>2];L[g>>2]=L[i>>2];L[g+4>>2]=e;e=L[i+60>>2];L[g+56>>2]=L[i+56>>2];L[g+60>>2]=e;e=L[i+52>>2];L[g+48>>2]=L[i+48>>2];L[g+52>>2]=e;e=L[i+44>>2];L[g+40>>2]=L[i+40>>2];L[g+44>>2]=e;e=L[i+36>>2];L[g+32>>2]=L[i+32>>2];L[g+36>>2]=e;e=L[i+28>>2];L[g+24>>2]=L[i+24>>2];L[g+28>>2]=e;e=L[i+20>>2];L[g+16>>2]=L[i+16>>2];L[g+20>>2]=e;e=L[i+12>>2];L[g+8>>2]=L[i+8>>2];L[g+12>>2]=e;e=h|64;g=e+j|0;h=e+L[a+96>>2]|0;e=L[h+4>>2];L[g>>2]=L[h>>2];L[g+4>>2]=e;e=L[h+12>>2];L[g+8>>2]=L[h+8>>2];L[g+12>>2]=e;e=L[h+20>>2];L[g+16>>2]=L[h+16>>2];L[g+20>>2]=e;e=L[h+28>>2];L[g+24>>2]=L[h+24>>2];L[g+28>>2]=e;e=L[h+36>>2];L[g+32>>2]=L[h+32>>2];L[g+36>>2]=e;e=L[h+44>>2];L[g+40>>2]=L[h+40>>2];L[g+44>>2]=e;e=L[h+52>>2];L[g+48>>2]=L[h+48>>2];L[g+52>>2]=e;e=L[h+60>>2];L[g+56>>2]=L[h+56>>2];L[g+60>>2]=e;l=l+2|0;d=d+2|0;if((m|0)!=(d|0)){continue}break}}if(!(c&1)){break b}c=l<<6;d=c+j|0;e=c+L[a+96>>2]|0;c=L[e+4>>2];L[d>>2]=L[e>>2];L[d+4>>2]=c;c=L[e+60>>2];L[d+56>>2]=L[e+56>>2];L[d+60>>2]=c;c=L[e+52>>2];L[d+48>>2]=L[e+48>>2];L[d+52>>2]=c;c=L[e+44>>2];L[d+40>>2]=L[e+40>>2];L[d+44>>2]=c;c=L[e+36>>2];L[d+32>>2]=L[e+32>>2];L[d+36>>2]=c;c=L[e+28>>2];L[d+24>>2]=L[e+24>>2];L[d+28>>2]=c;c=L[e+20>>2];L[d+16>>2]=L[e+16>>2];L[d+20>>2]=c;c=L[e+12>>2];L[d+8>>2]=L[e+8>>2];L[d+12>>2]=c}c=L[a+96>>2];if(!(c?!c|!M[a+100|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[a+96>>2]=j;J[a+100|0]=1;L[a+92>>2]=k}d=k+(f^-1)|0;c=k-f&3;if(c){j=0;while(1){e=L[a+96>>2]+(f<<6)|0;L[e>>2]=0;L[e+4>>2]=0;L[e+56>>2]=0;L[e+60>>2]=0;L[e+48>>2]=0;L[e+52>>2]=0;L[e+40>>2]=0;L[e+44>>2]=0;L[e+32>>2]=0;L[e+36>>2]=0;L[e+24>>2]=0;L[e+28>>2]=0;L[e+16>>2]=0;L[e+20>>2]=0;L[e+8>>2]=0;L[e+12>>2]=0;f=f+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}if(d>>>0<3){break a}while(1){d=f<<6;c=d+L[a+96>>2]|0;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;c=d+L[a+96>>2]|0;L[c+120>>2]=0;L[c+124>>2]=0;L[c+112>>2]=0;L[c+116>>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;c=c- -64|0;L[c>>2]=0;L[c+4>>2]=0;c=d+L[a+96>>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;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;c=d+L[a+96>>2]|0;L[c+248>>2]=0;L[c+252>>2]=0;L[c+240>>2]=0;L[c+244>>2]=0;L[c+232>>2]=0;L[c+236>>2]=0;L[c+224>>2]=0;L[c+228>>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;f=f+4|0;if((k|0)!=(f|0)){continue}break}}L[a+88>>2]=k;if((k|0)>0){c=L[a+96>>2];d=L[b+112>>2];j=0;while(1){f=c+(j<<6)|0;P[f+16>>2]=Q[d+32>>3];P[f+20>>2]=Q[d+40>>3];P[f+24>>2]=Q[d+48>>3];P[f+28>>2]=Q[d+56>>3];P[f>>2]=Q[d>>3];P[f+4>>2]=Q[d+8>>3];P[f+8>>2]=Q[d+16>>3];P[f+12>>2]=Q[d+24>>3];L[f+32>>2]=L[d+64>>2];L[f+36>>2]=L[d+68>>2];L[f+40>>2]=L[d+72>>2];d=d+80|0;j=j+1|0;if((k|0)!=(j|0)){continue}break}}d=L[a+128>>2];n=L[b+108>>2];c:{if((d|0)>=(n|0)){break c}if((n|0)>L[a+132>>2]){d:{if(!n){l=0;c=d;break d}L[8513]=L[8513]+1;l=ha[L[6798]](n<<4,16)|0;c=L[a+128>>2]}e:{if((c|0)<=0){break e}f=0;if((c|0)!=1){m=c&-2;i=0;while(1){h=f<<4;g=h+l|0;k=h+L[a+136>>2]|0;e=L[k+4>>2];L[g>>2]=L[k>>2];L[g+4>>2]=e;e=L[k+12>>2];L[g+8>>2]=L[k+8>>2];L[g+12>>2]=e;e=h|16;g=e+l|0;h=e+L[a+136>>2]|0;e=L[h+4>>2];L[g>>2]=L[h>>2];L[g+4>>2]=e;e=L[h+12>>2];L[g+8>>2]=L[h+8>>2];L[g+12>>2]=e;f=f+2|0;i=i+2|0;if((m|0)!=(i|0)){continue}break}}if(!(c&1)){break e}c=f<<4;f=c+l|0;e=c+L[a+136>>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}c=L[a+136>>2];if(!(c?!c|!M[a+140|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[a+136>>2]=l;J[a+140|0]=1;L[a+132>>2]=n}e=n+(d^-1)|0;c=n-d&3;if(c){f=0;while(1){g=L[a+136>>2]+(d<<4)|0;L[g>>2]=0;L[g+4>>2]=0;L[g+8>>2]=0;L[g+12>>2]=0;d=d+1|0;f=f+1|0;if((c|0)!=(f|0)){continue}break}}if(e>>>0<3){break c}while(1){f=d<<4;c=f+L[a+136>>2]|0;L[c>>2]=0;L[c+4>>2]=0;L[c+8>>2]=0;L[c+12>>2]=0;c=f+L[a+136>>2]|0;L[c+24>>2]=0;L[c+28>>2]=0;L[c+16>>2]=0;L[c+20>>2]=0;c=f+L[a+136>>2]|0;L[c+40>>2]=0;L[c+44>>2]=0;L[c+32>>2]=0;L[c+36>>2]=0;c=f+L[a+136>>2]|0;L[c+56>>2]=0;L[c+60>>2]=0;L[c+48>>2]=0;L[c+52>>2]=0;d=d+4|0;if((n|0)!=(d|0)){continue}break}}L[a+128>>2]=n;if((n|0)>0){c=L[a+136>>2];d=L[b+116>>2];j=0;while(1){f=c+(j<<4)|0;L[f+12>>2]=L[d+12>>2];K[f+6>>1]=N[d+6>>1];K[f+8>>1]=N[d+8>>1];K[f+10>>1]=N[d+10>>1];K[f>>1]=N[d>>1];K[f+2>>1]=N[d+2>>1];K[f+4>>1]=N[d+4>>1];d=d+16|0;j=j+1|0;if((n|0)!=(j|0)){continue}break}}L[a+144>>2]=L[b+120>>2];d=L[a+152>>2];h=L[b+124>>2];if(!((d|0)>=(h|0)|(h|0)<=L[a+156>>2])){f:{if(!h){i=0;break f}L[8513]=L[8513]+1;i=ha[L[6798]](h<<5,16)|0;d=L[a+152>>2]}g:{if((d|0)<=0){break g}l=0;if((d|0)!=1){e=d&-2;j=0;while(1){g=l<<5;f=g+i|0;m=g+L[a+160>>2]|0;c=L[m+4>>2];L[f>>2]=L[m>>2];L[f+4>>2]=c;c=L[m+28>>2];L[f+24>>2]=L[m+24>>2];L[f+28>>2]=c;c=L[m+20>>2];L[f+16>>2]=L[m+16>>2];L[f+20>>2]=c;c=L[m+12>>2];L[f+8>>2]=L[m+8>>2];L[f+12>>2]=c;c=g|32;f=c+i|0;g=c+L[a+160>>2]|0;c=L[g+4>>2];L[f>>2]=L[g>>2];L[f+4>>2]=c;c=L[g+12>>2];L[f+8>>2]=L[g+8>>2];L[f+12>>2]=c;c=L[g+20>>2];L[f+16>>2]=L[g+16>>2];L[f+20>>2]=c;c=L[g+28>>2];L[f+24>>2]=L[g+24>>2];L[f+28>>2]=c;l=l+2|0;j=j+2|0;if((e|0)!=(j|0)){continue}break}}if(!(d&1)){break g}c=l<<5;f=c+i|0;d=c+L[a+160>>2]|0;c=L[d+4>>2];L[f>>2]=L[d>>2];L[f+4>>2]=c;c=L[d+28>>2];L[f+24>>2]=L[d+24>>2];L[f+28>>2]=c;c=L[d+20>>2];L[f+16>>2]=L[d+16>>2];L[f+20>>2]=c;c=L[d+12>>2];L[f+8>>2]=L[d+8>>2];L[f+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]=i;J[a+164|0]=1;L[a+156>>2]=h}L[a+152>>2]=h;if((h|0)>0){c=L[a+160>>2];d=L[b+128>>2];a=0;while(1){b=c+(a<<5)|0;K[b+6>>1]=N[d+14>>1];K[b+8>>1]=N[d+16>>1];K[b+10>>1]=N[d+18>>1];K[b>>1]=N[d+8>>1];K[b+2>>1]=N[d+10>>1];K[b+4>>1]=N[d+12>>1];L[b+12>>2]=L[d>>2];L[b+16>>2]=L[d+4>>2];d=d+20|0;a=a+1|0;if((h|0)!=(a|0)){continue}break}}}function NF(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;P[a+20>>2]=P[b+16>>2];P[a+24>>2]=P[b+20>>2];P[a+28>>2]=P[b+24>>2];P[a+32>>2]=P[b+28>>2];P[a+4>>2]=P[b>>2];P[a+8>>2]=P[b+4>>2];P[a+12>>2]=P[b+8>>2];P[a+16>>2]=P[b+12>>2];P[a+36>>2]=P[b+32>>2];P[a+40>>2]=P[b+36>>2];P[a+44>>2]=P[b+40>>2];P[a+48>>2]=P[b+44>>2];L[a+56>>2]=L[b+48>>2];J[a+60|0]=L[b+52>>2]!=0;f=L[a+88>>2];k=L[b+56>>2];a:{if((f|0)>=(k|0)){break a}if((k|0)>L[a+92>>2]){if(k){L[8513]=L[8513]+1;j=ha[L[6798]](k<<6,16)|0;c=L[a+88>>2]}else{c=f}b:{if((c|0)<=0){break b}if((c|0)!=1){m=c&-2;while(1){h=l<<6;g=h+j|0;i=h+L[a+96>>2]|0;e=L[i+4>>2];L[g>>2]=L[i>>2];L[g+4>>2]=e;e=L[i+60>>2];L[g+56>>2]=L[i+56>>2];L[g+60>>2]=e;e=L[i+52>>2];L[g+48>>2]=L[i+48>>2];L[g+52>>2]=e;e=L[i+44>>2];L[g+40>>2]=L[i+40>>2];L[g+44>>2]=e;e=L[i+36>>2];L[g+32>>2]=L[i+32>>2];L[g+36>>2]=e;e=L[i+28>>2];L[g+24>>2]=L[i+24>>2];L[g+28>>2]=e;e=L[i+20>>2];L[g+16>>2]=L[i+16>>2];L[g+20>>2]=e;e=L[i+12>>2];L[g+8>>2]=L[i+8>>2];L[g+12>>2]=e;e=h|64;g=e+j|0;h=e+L[a+96>>2]|0;e=L[h+4>>2];L[g>>2]=L[h>>2];L[g+4>>2]=e;e=L[h+12>>2];L[g+8>>2]=L[h+8>>2];L[g+12>>2]=e;e=L[h+20>>2];L[g+16>>2]=L[h+16>>2];L[g+20>>2]=e;e=L[h+28>>2];L[g+24>>2]=L[h+24>>2];L[g+28>>2]=e;e=L[h+36>>2];L[g+32>>2]=L[h+32>>2];L[g+36>>2]=e;e=L[h+44>>2];L[g+40>>2]=L[h+40>>2];L[g+44>>2]=e;e=L[h+52>>2];L[g+48>>2]=L[h+48>>2];L[g+52>>2]=e;e=L[h+60>>2];L[g+56>>2]=L[h+56>>2];L[g+60>>2]=e;l=l+2|0;d=d+2|0;if((m|0)!=(d|0)){continue}break}}if(!(c&1)){break b}c=l<<6;d=c+j|0;e=c+L[a+96>>2]|0;c=L[e+4>>2];L[d>>2]=L[e>>2];L[d+4>>2]=c;c=L[e+60>>2];L[d+56>>2]=L[e+56>>2];L[d+60>>2]=c;c=L[e+52>>2];L[d+48>>2]=L[e+48>>2];L[d+52>>2]=c;c=L[e+44>>2];L[d+40>>2]=L[e+40>>2];L[d+44>>2]=c;c=L[e+36>>2];L[d+32>>2]=L[e+32>>2];L[d+36>>2]=c;c=L[e+28>>2];L[d+24>>2]=L[e+24>>2];L[d+28>>2]=c;c=L[e+20>>2];L[d+16>>2]=L[e+16>>2];L[d+20>>2]=c;c=L[e+12>>2];L[d+8>>2]=L[e+8>>2];L[d+12>>2]=c}c=L[a+96>>2];if(!(c?!c|!M[a+100|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[a+96>>2]=j;J[a+100|0]=1;L[a+92>>2]=k}d=k+(f^-1)|0;c=k-f&3;if(c){j=0;while(1){e=L[a+96>>2]+(f<<6)|0;L[e>>2]=0;L[e+4>>2]=0;L[e+56>>2]=0;L[e+60>>2]=0;L[e+48>>2]=0;L[e+52>>2]=0;L[e+40>>2]=0;L[e+44>>2]=0;L[e+32>>2]=0;L[e+36>>2]=0;L[e+24>>2]=0;L[e+28>>2]=0;L[e+16>>2]=0;L[e+20>>2]=0;L[e+8>>2]=0;L[e+12>>2]=0;f=f+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}if(d>>>0<3){break a}while(1){d=f<<6;c=d+L[a+96>>2]|0;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;c=d+L[a+96>>2]|0;L[c+120>>2]=0;L[c+124>>2]=0;L[c+112>>2]=0;L[c+116>>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;c=c- -64|0;L[c>>2]=0;L[c+4>>2]=0;c=d+L[a+96>>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;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;c=d+L[a+96>>2]|0;L[c+248>>2]=0;L[c+252>>2]=0;L[c+240>>2]=0;L[c+244>>2]=0;L[c+232>>2]=0;L[c+236>>2]=0;L[c+224>>2]=0;L[c+228>>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;f=f+4|0;if((k|0)!=(f|0)){continue}break}}L[a+88>>2]=k;if((k|0)>0){c=L[a+96>>2];d=L[b+64>>2];j=0;while(1){f=c+(j<<6)|0;P[f+16>>2]=P[d+16>>2];P[f+20>>2]=P[d+20>>2];P[f+24>>2]=P[d+24>>2];P[f+28>>2]=P[d+28>>2];P[f>>2]=P[d>>2];P[f+4>>2]=P[d+4>>2];P[f+8>>2]=P[d+8>>2];P[f+12>>2]=P[d+12>>2];L[f+32>>2]=L[d+32>>2];L[f+36>>2]=L[d+36>>2];L[f+40>>2]=L[d+40>>2];d=d+48|0;j=j+1|0;if((k|0)!=(j|0)){continue}break}}d=L[a+128>>2];n=L[b+60>>2];c:{if((d|0)>=(n|0)){break c}if((n|0)>L[a+132>>2]){d:{if(!n){l=0;c=d;break d}L[8513]=L[8513]+1;l=ha[L[6798]](n<<4,16)|0;c=L[a+128>>2]}e:{if((c|0)<=0){break e}f=0;if((c|0)!=1){m=c&-2;i=0;while(1){h=f<<4;g=h+l|0;k=h+L[a+136>>2]|0;e=L[k+4>>2];L[g>>2]=L[k>>2];L[g+4>>2]=e;e=L[k+12>>2];L[g+8>>2]=L[k+8>>2];L[g+12>>2]=e;e=h|16;g=e+l|0;h=e+L[a+136>>2]|0;e=L[h+4>>2];L[g>>2]=L[h>>2];L[g+4>>2]=e;e=L[h+12>>2];L[g+8>>2]=L[h+8>>2];L[g+12>>2]=e;f=f+2|0;i=i+2|0;if((m|0)!=(i|0)){continue}break}}if(!(c&1)){break e}c=f<<4;f=c+l|0;e=c+L[a+136>>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}c=L[a+136>>2];if(!(c?!c|!M[a+140|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[a+136>>2]=l;J[a+140|0]=1;L[a+132>>2]=n}e=n+(d^-1)|0;c=n-d&3;if(c){f=0;while(1){g=L[a+136>>2]+(d<<4)|0;L[g>>2]=0;L[g+4>>2]=0;L[g+8>>2]=0;L[g+12>>2]=0;d=d+1|0;f=f+1|0;if((c|0)!=(f|0)){continue}break}}if(e>>>0<3){break c}while(1){f=d<<4;c=f+L[a+136>>2]|0;L[c>>2]=0;L[c+4>>2]=0;L[c+8>>2]=0;L[c+12>>2]=0;c=f+L[a+136>>2]|0;L[c+24>>2]=0;L[c+28>>2]=0;L[c+16>>2]=0;L[c+20>>2]=0;c=f+L[a+136>>2]|0;L[c+40>>2]=0;L[c+44>>2]=0;L[c+32>>2]=0;L[c+36>>2]=0;c=f+L[a+136>>2]|0;L[c+56>>2]=0;L[c+60>>2]=0;L[c+48>>2]=0;L[c+52>>2]=0;d=d+4|0;if((n|0)!=(d|0)){continue}break}}L[a+128>>2]=n;if((n|0)>0){c=L[a+136>>2];d=L[b+68>>2];j=0;while(1){f=c+(j<<4)|0;L[f+12>>2]=L[d+12>>2];K[f+6>>1]=N[d+6>>1];K[f+8>>1]=N[d+8>>1];K[f+10>>1]=N[d+10>>1];K[f>>1]=N[d>>1];K[f+2>>1]=N[d+2>>1];K[f+4>>1]=N[d+4>>1];d=d+16|0;j=j+1|0;if((n|0)!=(j|0)){continue}break}}L[a+144>>2]=L[b+76>>2];d=L[a+152>>2];h=L[b+80>>2];if(!((d|0)>=(h|0)|(h|0)<=L[a+156>>2])){f:{if(!h){i=0;break f}L[8513]=L[8513]+1;i=ha[L[6798]](h<<5,16)|0;d=L[a+152>>2]}g:{if((d|0)<=0){break g}l=0;if((d|0)!=1){e=d&-2;j=0;while(1){g=l<<5;f=g+i|0;m=g+L[a+160>>2]|0;c=L[m+4>>2];L[f>>2]=L[m>>2];L[f+4>>2]=c;c=L[m+28>>2];L[f+24>>2]=L[m+24>>2];L[f+28>>2]=c;c=L[m+20>>2];L[f+16>>2]=L[m+16>>2];L[f+20>>2]=c;c=L[m+12>>2];L[f+8>>2]=L[m+8>>2];L[f+12>>2]=c;c=g|32;f=c+i|0;g=c+L[a+160>>2]|0;c=L[g+4>>2];L[f>>2]=L[g>>2];L[f+4>>2]=c;c=L[g+12>>2];L[f+8>>2]=L[g+8>>2];L[f+12>>2]=c;c=L[g+20>>2];L[f+16>>2]=L[g+16>>2];L[f+20>>2]=c;c=L[g+28>>2];L[f+24>>2]=L[g+24>>2];L[f+28>>2]=c;l=l+2|0;j=j+2|0;if((e|0)!=(j|0)){continue}break}}if(!(d&1)){break g}c=l<<5;f=c+i|0;d=c+L[a+160>>2]|0;c=L[d+4>>2];L[f>>2]=L[d>>2];L[f+4>>2]=c;c=L[d+28>>2];L[f+24>>2]=L[d+24>>2];L[f+28>>2]=c;c=L[d+20>>2];L[f+16>>2]=L[d+16>>2];L[f+20>>2]=c;c=L[d+12>>2];L[f+8>>2]=L[d+8>>2];L[f+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]=i;J[a+164|0]=1;L[a+156>>2]=h}L[a+152>>2]=h;if((h|0)>0){c=L[a+160>>2];d=L[b+72>>2];a=0;while(1){b=c+(a<<5)|0;K[b+6>>1]=N[d+14>>1];K[b+8>>1]=N[d+16>>1];K[b+10>>1]=N[d+18>>1];K[b>>1]=N[d+8>>1];K[b+2>>1]=N[d+10>>1];K[b+4>>1]=N[d+12>>1];L[b+12>>2]=L[d>>2];L[b+16>>2]=L[d+4>>2];d=d+20|0;a=a+1|0;if((h|0)!=(a|0)){continue}break}}}function yG(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=0,l=S(0),m=0,n=S(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=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),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),ia=S(0),ja=0,ka=0,la=S(0),ma=S(0),na=0,oa=S(0);d=fa-48|0;fa=d;a:{if(!L[a+12>>2]){break a}m=M[a+16|0];k=m?c:b;f=L[k+12>>2];y=P[f+56>>2];z=P[f+52>>2];A=P[f+48>>2];o=m?b:c;m=L[o+12>>2];B=P[m+56>>2];ea=P[m+48>>2];C=P[m+52>>2];k=L[k+4>>2];w=P[f+32>>2];D=P[f+16>>2];E=P[f>>2];F=P[f+36>>2];n=P[f+20>>2];s=P[f+4>>2];h=P[m+40>>2];j=P[m+24>>2];g=P[m+8>>2];i=P[m+32>>2];p=P[m+16>>2];r=P[m>>2];t=P[m+36>>2];l=P[f+40>>2];u=P[m+20>>2];H=P[f+24>>2];x=P[m+4>>2];I=P[f+8>>2];m=L[o+4>>2];J=P[m+56>>2];v=P[m+48>>2];K=P[m+52>>2];L[d+28>>2]=0;W=S(S(i*l)+S(S(r*I)+S(H*p)));v=S(-v);X=S(S(t*l)+S(S(x*I)+S(H*u)));l=S(S(h*l)+S(S(g*I)+S(H*j)));P[d+24>>2]=S(S(W*v)-S(K*X))-S(J*l);H=S(S(i*F)+S(S(r*s)+S(n*p)));I=S(S(t*F)+S(S(x*s)+S(n*u)));Y=S(S(h*F)+S(S(g*s)+S(n*j)));P[d+20>>2]=S(S(H*v)-S(K*I))-S(J*Y);Z=S(S(i*w)+S(S(r*E)+S(D*p)));q=K;K=S(S(t*w)+S(S(x*E)+S(D*u)));ga=J;J=S(S(h*w)+S(S(g*E)+S(D*j)));P[d+16>>2]=S(S(Z*v)-S(q*K))-S(ga*J);ha[L[L[k>>2]+64>>2]](d+32|0,k,d+16|0);f=L[o+12>>2];v=P[f+48>>2];R=P[f+32>>2];U=P[f+16>>2];q=P[f+8>>2];O=P[f+4>>2];N=P[f>>2];Q=P[f+56>>2];G=P[f+52>>2];V=P[f+40>>2];$=P[f+36>>2];ia=P[f+24>>2];aa=P[f+20>>2];ba=P[m+64>>2];F=P[m+56>>2];n=P[m+48>>2];s=P[m+52>>2];w=P[d+40>>2];D=P[d+32>>2];E=P[d+36>>2];f=L[a+12>>2];ca=P[f+752>>2];L[e+4>>2]=f;da=S(S(y*h)+S(S(A*g)+S(z*j)));ga=g;g=S(-ea);l=S(S(da+S(S(S(ga*g)-S(j*C))-S(h*B)))+S(S(w*l)+S(S(D*J)+S(Y*E))));p=S(S(S(S(y*i)+S(S(A*r)+S(z*p)))+S(S(S(r*g)-S(p*C))-S(i*B)))+S(S(w*W)+S(S(D*Z)+S(H*E))));r=S(S(S(S(y*t)+S(S(A*x)+S(z*u)))+S(S(S(x*g)-S(u*C))-S(t*B)))+S(S(w*X)+S(S(D*K)+S(I*E))));h=S(S(S(F*l)+S(S(n*p)+S(s*r)))-ba);if(h>2];t=P[f+24>>2];u=P[f+20>>2];x=P[f+40>>2];y=P[f+36>>2];z=P[f+16>>2];A=P[f+32>>2];j=P[m+56>>2];B=P[f+8>>2];g=P[m+48>>2];C=P[f>>2];i=P[m+52>>2];w=P[f+4>>2];L[d+28>>2]=0;P[d+16>>2]=S(B*j)+S(S(C*g)+S(w*i));P[d+24>>2]=S(x*j)+S(S(A*g)+S(i*y));P[d+20>>2]=S(t*j)+S(S(z*g)+S(i*u));L[d+12>>2]=0;j=S(l-S(F*h));g=S(p-S(n*h));i=S(r-S(s*h));P[d+8>>2]=S(S(j*V)+S(S(g*R)+S(i*$)))+Q;P[d+4>>2]=S(S(j*ia)+S(S(g*U)+S(i*aa)))+G;P[d>>2]=S(S(j*q)+S(S(g*N)+S(O*i)))+v;ha[L[L[e>>2]+16>>2]](e,d+16|0,d,h)}b:{if(L[k+4>>2]>6|L[L[e+4>>2]+748>>2]>=L[a+24>>2]){break b}j=P[m+56>>2];c:{if(S(T(j))>S(.7071067690849304)){h=P[m+52>>2];g=S(S(1)/S(_(S(S(h*h)+S(j*j)))));h=S(h*g);j=S(g*S(-j));g=S(0);break c}h=P[m+48>>2];g=P[m+52>>2];i=S(S(1)/S(_(S(S(h*h)+S(g*g)))));j=S(h*i);h=S(0);g=S(i*S(-g))}i=S(ha[L[L[k>>2]+16>>2]](k));i=S(P[6794]/i);i=S((i>S(.39269909262657166)?S(.39269909262657166):i)*S(.5));p=Ea(i);f=L[a+20>>2];H=Fa(i);if((f|0)<=0){break b}q=h;h=S(p/S(_(S(S(h*h)+S(S(g*g)+S(j*j))))));I=S(q*h);J=S(j*h);K=S(g*h);while(1){j=P[m+52>>2];i=P[m+48>>2];h=P[m+56>>2];g=S(S(S(S(6.2831854820251465)/S(f|0))*S(na|0))*S(.5));p=S(Ea(g)/S(_(S(S(h*h)+S(S(i*i)+S(j*j))))));h=S(h*p);j=S(j*p);g=Fa(g);i=S(i*p);p=S(S(h*I)+S(S(j*J)+S(S(g*H)+S(K*i))));r=S(S(h*J)+S(S(S(g*K)-S(H*i))-S(j*I)));t=S(S(i*I)+S(S(S(g*J)-S(H*j))-S(h*K)));u=S(S(j*K)+S(S(S(g*I)-S(H*h))-S(i*J)));P[d+28>>2]=S(S(S(p*g)-S(i*r))-S(t*j))-S(u*h);P[d+24>>2]=S(S(r*j)+S(S(p*h)+S(g*u)))-S(t*i);P[d+20>>2]=S(S(u*i)+S(S(p*j)+S(g*t)))-S(r*h);P[d+16>>2]=S(S(t*h)+S(S(p*i)+S(g*r)))-S(u*j);f=fa-48|0;fa=f;o=M[a+16|0];ja=o?c:b;k=L[ja+12>>2];ea=P[k+56>>2];W=P[k+52>>2];X=P[k+48>>2];ka=o?b:c;o=L[ka+12>>2];Y=P[o+56>>2];$=P[o+48>>2];Z=P[o+52>>2];ja=L[ja+4>>2];h=P[o+40>>2];j=P[o+8>>2];g=P[o+24>>2];i=P[o+32>>2];p=P[o>>2];r=P[o+16>>2];t=P[o+36>>2];y=P[k+40>>2];z=P[k+32>>2];A=P[k+36>>2];u=P[o+4>>2];B=P[k+8>>2];C=P[k>>2];w=P[k+4>>2];x=P[o+20>>2];D=P[k+24>>2];E=P[k+16>>2];F=P[k+20>>2];s=P[d+28>>2];v=P[d+24>>2];n=P[d+16>>2];l=P[d+20>>2];o=L[ka+4>>2];R=P[o+56>>2];ia=P[o+48>>2];U=P[o+52>>2];L[f+28>>2]=0;q=S(S(2)/S(S(s*s)+S(S(v*v)+S(S(n*n)+S(l*l)))));G=S(n*q);aa=S(n*G);O=S(l*q);ba=S(l*O);N=S(S(1)-S(aa+ba));q=S(v*q);ca=S(n*q);da=S(s*O);Q=S(ca+da);la=S(l*q);ma=S(s*G);l=S(la-ma);G=S(S(y*N)+S(S(z*Q)+S(A*l)));V=S(S(N*B)+S(S(Q*C)+S(w*l)));l=S(S(N*D)+S(S(Q*E)+S(F*l)));N=S(-ia);P[f+24>>2]=S(S(S(S(i*G)+S(S(p*V)+S(r*l)))*N)-S(U*S(S(t*G)+S(S(u*V)+S(x*l)))))-S(R*S(S(h*G)+S(S(j*V)+S(g*l))));l=S(la+ma);O=S(n*O);Q=S(s*q);n=S(O-Q);G=S(v*q);s=S(S(1)-S(aa+G));v=S(S(y*l)+S(S(z*n)+S(A*s)));q=S(S(l*B)+S(S(n*C)+S(w*s)));n=S(S(l*D)+S(S(n*E)+S(F*s)));P[f+20>>2]=S(S(S(S(i*v)+S(S(p*q)+S(r*n)))*N)-S(U*S(S(t*v)+S(S(u*q)+S(x*n)))))-S(R*S(S(h*v)+S(S(j*q)+S(g*n))));n=S(ca-da);s=S(S(1)-S(ba+G));l=S(O+Q);v=S(S(y*n)+S(S(z*s)+S(A*l)));q=S(S(n*B)+S(S(s*C)+S(w*l)));n=S(S(n*D)+S(S(s*E)+S(F*l)));P[f+16>>2]=S(S(S(S(i*v)+S(S(p*q)+S(r*n)))*N)-S(U*S(S(t*v)+S(S(u*q)+S(x*n)))))-S(R*S(S(h*v)+S(S(j*q)+S(g*n))));ha[L[L[ja>>2]+64>>2]](f+32|0,ja,f+16|0);k=L[ka+12>>2];O=P[k+48>>2];N=P[k+32>>2];Q=P[k+16>>2];G=P[k+8>>2];V=P[k+4>>2];ia=P[k>>2];aa=P[k+56>>2];ba=P[k+52>>2];ca=P[k+40>>2];da=P[k+36>>2];la=P[k+24>>2];ma=P[k+20>>2];oa=P[o+64>>2];v=P[o+56>>2];R=P[o+48>>2];U=P[o+52>>2];n=P[f+40>>2];s=P[f+32>>2];l=P[f+36>>2];k=L[a+12>>2];q=P[k+752>>2];L[e+4>>2]=k;ga=q;q=S(-$);$=S(S(S(S(ea*h)+S(S(X*j)+S(W*g)))+S(S(S(j*q)-S(g*Z))-S(h*Y)))+S(S(n*S(S(y*h)+S(S(B*j)+S(D*g))))+S(S(s*S(S(z*h)+S(S(C*j)+S(E*g))))+S(l*S(S(A*h)+S(S(w*j)+S(F*g)))))));p=S(S(S(S(ea*i)+S(S(X*p)+S(W*r)))+S(S(S(p*q)-S(r*Z))-S(i*Y)))+S(S(n*S(S(y*i)+S(S(B*p)+S(D*r))))+S(S(s*S(S(z*i)+S(S(C*p)+S(E*r))))+S(l*S(S(A*i)+S(S(w*p)+S(F*r)))))));r=S(S(S(S(ea*t)+S(S(X*u)+S(W*x)))+S(S(S(u*q)-S(x*Z))-S(t*Y)))+S(S(n*S(S(y*t)+S(S(B*u)+S(D*x))))+S(S(s*S(S(z*t)+S(S(C*u)+S(E*x))))+S(l*S(S(A*t)+S(S(w*u)+S(F*x)))))));h=S(S(S(v*$)+S(S(R*p)+S(U*r)))-oa);if(ga>h){k=L[ka+12>>2];t=P[k+24>>2];u=P[k+20>>2];x=P[k+40>>2];y=P[k+36>>2];z=P[k+16>>2];A=P[k+32>>2];j=P[o+56>>2];B=P[k+8>>2];g=P[o+48>>2];C=P[k>>2];i=P[o+52>>2];w=P[k+4>>2];L[f+28>>2]=0;P[f+16>>2]=S(B*j)+S(S(C*g)+S(w*i));P[f+24>>2]=S(x*j)+S(S(A*g)+S(i*y));P[f+20>>2]=S(t*j)+S(S(z*g)+S(i*u));L[f+12>>2]=0;j=S($-S(v*h));g=S(p-S(R*h));i=S(r-S(U*h));P[f+8>>2]=S(S(j*ca)+S(S(g*N)+S(i*da)))+aa;P[f+4>>2]=S(S(j*la)+S(S(g*Q)+S(i*ma)))+ba;P[f>>2]=S(S(j*G)+S(S(g*ia)+S(V*i)))+O;ha[L[L[e>>2]+16>>2]](e,f+16|0,f,h)}fa=f+48|0;f=L[a+20>>2];na=na+1|0;if((f|0)>(na|0)){continue}break}}if(!M[a+8|0]|!L[L[a+12>>2]+748>>2]){break a}a=L[e+4>>2];if(!L[a+748>>2]){break a}c=L[a+740>>2];f=L[L[e+8>>2]+8>>2];b=(c|0)==(f|0);k=a;a=L[L[e+12>>2]+8>>2];_a(k,(b?c:a)+4|0,(b?a:f)+4|0)}fa=d+48|0}function Bg(a,b,c,d,e,f,g){var h=S(0),i=0,j=S(0),k=0,l=S(0),m=S(0),n=S(0),o=S(0),p=0,q=S(0),r=S(0),s=0,t=S(0),u=0,v=S(0),w=0,x=0,y=0,z=0,A=S(0),B=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);k=fa-9824|0;fa=k;i=a;a=k+9696|0;Dg(i,b,c,d,f,a,g);c=k+9452|0;L[c>>2]=0;L[c+4>>2]=0;L[k+9444>>2]=0;L[k+9448>>2]=0;L[k+9680>>2]=0;L[k+9684>>2]=0;L[k+9692>>2]=2;g=0;L[k+9460>>2]=0;h=P[e>>2];j=P[e+4>>2];l=P[e+8>>2];L[k+32>>2]=0;P[k+28>>2]=-l;P[k+24>>2]=-j;P[k+20>>2]=-h;a:{b:{c:{switch(Cg(k+9316|0,a,k+20|0)-1|0){case 0:L[k+68>>2]=0;L[k+72>>2]=0;L[k+76>>2]=0;L[k+9296>>2]=0;L[k+20>>2]=9;L[k+9300>>2]=0;L[k+9304>>2]=0;L[k+60>>2]=0;L[k+64>>2]=0;d=0;while(1){c=R(127-d|0,56);a=c+(k+20|0)|0;L[a+2156>>2]=g;L[a+2152>>2]=0;a=a+2108|0;if(g){L[g+44>>2]=a}L[k+9308>>2]=a;i=k+2128|0;g=i+R(126-d|0,56)|0;L[g+44>>2]=0;L[g+48>>2]=a;L[(c+i|0)+44>>2]=g;L[k+9308>>2]=g;d=d+2|0;if((d|0)!=128){continue}break};L[k+9312>>2]=128;h=P[e>>2];j=P[e+4>>2];l=P[e+8>>2];g=0;L[k+16>>2]=0;P[k+12>>2]=-l;P[k+8>>2]=-j;P[k+4>>2]=-h;e=k+20|0;s=fa-32|0;fa=s;d:{e:{B=k+9316|0;i=L[B+372>>2];if(O[i+32>>2]<2){break e}if(!cb(B)){break e}a=L[e+9280>>2];if(a){d=L[e+9292>>2];c=L[e+9284>>2];while(1){p=L[a+48>>2];if(p){L[p+44>>2]=L[a+44>>2]}p=L[a+44>>2];if(p){L[p+48>>2]=L[a+48>>2]}if(L[e+9280>>2]==(a|0)){L[e+9280>>2]=L[a+48>>2]}L[a+44>>2]=0;L[a+48>>2]=L[e+9288>>2];p=L[e+9288>>2];if(p){L[p+44>>2]=a}c=c-1|0;L[e+9288>>2]=a;d=d+1|0;a=L[e+9280>>2];if(a){continue}break}L[e+9292>>2]=d;L[e+9284>>2]=c}L[e+9276>>2]=0;L[e>>2]=0;d=L[i>>2];c=L[i+12>>2];h=P[c+16>>2];n=S(P[d+16>>2]-h);a=L[i+4>>2];j=P[c+20>>2];m=S(P[a+20>>2]-j);p=L[i+8>>2];l=P[c+24>>2];o=S(P[p+24>>2]-l);q=S(P[d+20>>2]-j);r=S(P[a+24>>2]-l);t=S(P[p+16>>2]-h);l=S(P[d+24>>2]-l);h=S(P[a+16>>2]-h);j=S(P[p+20>>2]-j);f:{if(!(S(S(S(S(n*m)*o)+S(S(S(S(S(q*r)*t)+S(S(l*h)*j))-S(S(r*n)*j))-S(S(h*q)*o)))-S(S(m*l)*t))>2]=d;L[i>>2]=a;L[i+16>>2]=oI(L[i+16>>2],L[i+20>>2]);L[i+20>>2]=ga;c=d}c=ud(e,a,c,p,1);p=ud(e,L[i+4>>2],L[i>>2],L[i+12>>2],1);u=ud(e,L[i+8>>2],L[i+4>>2],L[i+12>>2],1);w=ud(e,L[i>>2],L[i+8>>2],L[i+12>>2],1);if(L[e+9284>>2]!=4){break e}d=L[e+9280>>2];a=L[d+48>>2];if(a){h=P[d+16>>2];h=S(h*h);while(1){j=P[a+16>>2];j=S(j*j);i=j>2];if(a){continue}break}}x=L[d+28>>2];y=L[d+24>>2];z=L[d+20>>2];h=P[d+16>>2];r=P[d+12>>2];n=P[d+8>>2];j=P[d+4>>2];l=P[d>>2];L[c+32>>2]=p;J[c+52|0]=0;L[p+32>>2]=c;J[p+52|0]=0;L[c+36>>2]=u;J[c+53|0]=0;L[u+32>>2]=c;J[u+52|0]=1;L[c+40>>2]=w;J[c+54|0]=0;L[w+32>>2]=c;J[w+52|0]=2;L[p+36>>2]=w;J[p+53|0]=2;L[w+40>>2]=p;J[w+54|0]=1;L[p+40>>2]=u;J[p+54|0]=1;L[u+36>>2]=p;J[u+53|0]=2;J[u+54|0]=1;L[u+40>>2]=w;L[w+36>>2]=u;J[w+53|0]=2;L[e>>2]=0;c=0;while(1){g:{h:{i=L[e+9276>>2];if(i>>>0<=63){a=0;L[s+12>>2]=0;L[s+4>>2]=0;L[s+8>>2]=0;L[e+9276>>2]=i+1;c=c+1|0;J[d+55|0]=c;m=P[d+8>>2];o=P[d>>2];q=P[d+4>>2];i=e+(i<<5)|0;L[i+72>>2]=0;v=m;m=S(S(1)/S(_(S(S(m*m)+S(S(o*o)+S(q*q))))));P[i+68>>2]=v*m;P[i- -64>>2]=q*m;p=i+60|0;P[p>>2]=o*m;Xa(s+16|0,B,p);u=L[s+28>>2];L[i+84>>2]=L[s+24>>2];L[i+88>>2]=u;u=L[s+20>>2];L[i+76>>2]=L[s+16>>2];L[i+80>>2]=u;if(!(S(S(S(P[d+8>>2]*P[i+84>>2])+S(S(P[d>>2]*P[i+76>>2])+S(P[d+4>>2]*P[i+80>>2])))-P[d+16>>2])>S(9999999747378752e-20))){L[e>>2]=7;break g}while(1){i=Ag(e,c,p,L[((a<<2)+d|0)+32>>2],M[(a+d|0)+52|0],s+4|0);if(!i){break h}u=a>>>0<2;a=a+1|0;if(u){continue}break}break h}L[e>>2]=6;break g}if(!(i&O[s+12>>2]>2)){L[e>>2]=4;break g}a=L[s+4>>2];i=L[s+8>>2];L[a+36>>2]=i;J[a+53|0]=2;L[i+40>>2]=a;J[i+54|0]=1;a=L[d+48>>2];if(a){L[a+44>>2]=L[d+44>>2]}a=L[d+44>>2];if(a){L[a+48>>2]=L[d+48>>2]}if(L[e+9280>>2]==(d|0)){L[e+9280>>2]=L[d+48>>2]}L[e+9284>>2]=L[e+9284>>2]-1;L[d+44>>2]=0;L[d+48>>2]=L[e+9288>>2];a=L[e+9288>>2];if(a){L[a+44>>2]=d}L[e+9288>>2]=d;L[e+9292>>2]=L[e+9292>>2]+1;d=L[e+9280>>2];a=L[d+48>>2];if(a){h=P[d+16>>2];h=S(h*h);while(1){j=P[a+16>>2];j=S(j*j);i=j>2];if(a){continue}break}}x=L[d+28>>2];y=L[d+24>>2];z=L[d+20>>2];h=P[d+16>>2];r=P[d+12>>2];n=P[d+8>>2];j=P[d+4>>2];l=P[d>>2];if((c|0)!=255){continue}}break}P[e+56>>2]=h;P[e+40>>2]=l;L[e+4>>2]=z;P[e+52>>2]=r;P[e+48>>2]=n;P[e+44>>2]=j;L[e+36>>2]=3;L[e+12>>2]=x;L[e+8>>2]=y;l=S(l*h);m=S(P[y+16>>2]-l);j=S(j*h);o=S(P[x+20>>2]-j);q=S(P[x+16>>2]-l);r=S(P[y+20>>2]-j);t=S(S(m*o)-S(q*r));h=S(n*h);n=S(P[x+24>>2]-h);v=o;o=S(P[y+24>>2]-h);r=S(S(r*n)-S(v*o));n=S(S(o*q)-S(n*m));n=S(_(S(S(t*t)+S(S(r*r)+S(n*n)))));P[e+20>>2]=n;m=S(P[x+16>>2]-l);o=S(P[z+20>>2]-j);q=S(P[z+16>>2]-l);r=S(P[x+20>>2]-j);t=S(S(m*o)-S(q*r));A=S(t*t);v=r;r=S(P[z+24>>2]-h);t=o;o=S(P[x+24>>2]-h);t=S(S(v*r)-S(t*o));m=S(S(o*q)-S(r*m));m=S(_(S(A+S(S(t*t)+S(m*m)))));P[e+24>>2]=m;o=S(P[z+16>>2]-l);q=S(P[y+20>>2]-j);l=S(P[y+16>>2]-l);j=S(P[z+20>>2]-j);r=S(S(o*q)-S(l*j));v=j;j=S(P[y+24>>2]-h);h=S(P[z+24>>2]-h);q=S(S(v*j)-S(q*h));h=S(S(h*l)-S(j*o));j=S(_(S(S(r*r)+S(S(q*q)+S(h*h)))));h=S(j+S(n+m));P[e+28>>2]=j/h;P[e+24>>2]=m/h;P[e+20>>2]=n/h;a=L[e>>2];break d}a=8;L[e>>2]=8;h=S(0);l=S(1);j=S(0);n=P[k+12>>2];m=P[k+4>>2];o=P[k+8>>2];q=S(_(S(S(n*n)+S(S(m*m)+S(o*o)))));if(q>S(0)){l=S(S(1)/q);j=S(l*S(-n));h=S(l*S(-o));l=S(l*S(-m))}L[e+52>>2]=0;L[e+56>>2]=0;P[e+48>>2]=j;P[e+44>>2]=h;P[e+40>>2]=l;L[e+36>>2]=1;c=L[i>>2];L[e+20>>2]=1065353216;L[e+4>>2]=c}fa=s+32|0;if((a|0)==9){break b}i:{if(!L[k+56>>2]){h=S(0);j=S(0);l=S(0);break i}c=k+24|0;l=S(0);j=S(0);h=S(0);while(1){a=L[k+9816>>2];d=k+4|0;e=L[k+9820>>2];i=L[k+9696>>2]+(e>>1)|0;s=g<<2;p=L[s+c>>2];if(e&1){a=L[a+L[i>>2]>>2]}ha[a|0](d,i,p);n=P[(k+s|0)+40>>2];l=S(l+S(n*P[k+12>>2]));j=S(j+S(n*P[k+8>>2]));h=S(h+S(P[k+4>>2]*n));g=g+1|0;if(g>>>0>2]){continue}break}}g=1;L[f>>2]=1;n=P[b+52>>2];m=P[b+24>>2];o=P[b+20>>2];q=P[b+56>>2];r=P[b+40>>2];t=P[b+36>>2];v=P[b+48>>2];A=P[b+8>>2];C=P[b>>2];D=P[b+4>>2];E=P[b+16>>2];F=P[b+32>>2];L[f+16>>2]=0;P[f+12>>2]=q+S(S(l*r)+S(S(h*F)+S(j*t)));P[f+8>>2]=n+S(S(l*m)+S(S(h*E)+S(j*o)));P[f+4>>2]=v+S(S(l*A)+S(S(h*C)+S(j*D)));r=P[b+52>>2];t=P[b+20>>2];v=P[b+24>>2];A=P[b+56>>2];C=P[b+36>>2];D=P[b+40>>2];E=P[b+48>>2];F=P[b+8>>2];G=P[b>>2];H=P[b+4>>2];I=P[b+16>>2];K=P[b+32>>2];m=P[k- -64>>2];o=P[k+68>>2];q=P[k+60>>2];n=P[k+76>>2];L[f+48>>2]=0;L[f+32>>2]=0;P[f+52>>2]=-n;P[f+44>>2]=-o;P[f+40>>2]=-m;P[f+36>>2]=-q;l=S(l-S(n*o));h=S(h-S(q*n));j=S(j-S(n*m));P[f+28>>2]=A+S(S(D*l)+S(S(K*h)+S(C*j)));P[f+24>>2]=r+S(S(l*v)+S(S(h*I)+S(j*t)));P[f+20>>2]=E+S(S(l*F)+S(S(h*G)+S(j*H)));break a;case 1:break c;default:break a}}L[f>>2]=2;break a}L[f>>2]=3}fa=k+9824|0;return g}function kh(a,b,c,d,e,f){var g=0,h=0,i=0,j=S(0),k=S(0),l=S(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=0,K=0,N=S(0),O=S(0),Q=S(0);g=fa-640|0;fa=g;h=L[d+12>>2];x=L[d+4>>2];i=L[x+4>>2];a:{if((i|0)<=19){P[g+636>>2]=f;L[g+632>>2]=0;L[g+464>>2]=6864;P[g+628>>2]=P[e+4>>2];J[g+436|0]=0;L[g+412>>2]=953267991;L[g+20>>2]=18492;i=g+80|0;L[i+20>>2]=0;L[i+16>>2]=x;L[i+12>>2]=a;L[i+8>>2]=g+20;L[i+4>>2]=g+104;L[i>>2]=18268;b:{if(!(ha[L[L[i>>2]+8>>2]](i,b,c,h,h,g+464|0)|0)){break b}f=P[g+604>>2];j=P[g+596>>2];k=P[g+600>>2];l=S(S(f*f)+S(S(j*j)+S(k*k)));if(!(l>S(9999999747378752e-20))){break b}m=P[g+628>>2];if(!(m>2])){break b}n=f;f=S(S(1)/S(_(l)));P[g+604>>2]=n*f;P[g+600>>2]=k*f;P[g+596>>2]=j*f;a=L[d+8>>2];L[g+40>>2]=0;L[g+36>>2]=a;a=L[g+608>>2];L[g+52>>2]=L[g+604>>2];L[g+56>>2]=a;a=L[g+596>>2];b=L[g+600>>2];c=L[g+624>>2];L[g+68>>2]=L[g+620>>2];L[g+72>>2]=c;L[g+44>>2]=a;L[g+48>>2]=b;a=L[g+616>>2];L[g+60>>2]=L[g+612>>2];L[g+64>>2]=a;P[g+76>>2]=m;S(ha[L[L[e>>2]+12>>2]](e,g+36|0,1))}break a}K=i-21|0;if(K>>>0<=8){c:{switch(K|0){case 0:j=P[h+20>>2];k=P[h+36>>2];p=P[h+52>>2];l=P[h+24>>2];q=P[h+56>>2];m=P[h+40>>2];n=P[h+32>>2];v=P[h>>2];w=P[h+16>>2];r=P[h+4>>2];o=P[h+8>>2];s=P[h+48>>2];t=P[b+52>>2];y=P[b+56>>2];u=P[b+48>>2];L[g+48>>2]=0;s=S(-s);z=S(S(S(o*s)-S(l*p))-S(m*q));P[g+44>>2]=z+S(S(y*m)+S(S(u*o)+S(l*t)));A=S(S(S(r*s)-S(j*p))-S(k*q));P[g+40>>2]=A+S(S(y*k)+S(S(u*r)+S(j*t)));s=S(S(S(v*s)-S(w*p))-S(n*q));P[g+36>>2]=s+S(S(y*n)+S(S(u*v)+S(w*t)));p=P[c+52>>2];q=P[c+56>>2];t=P[c+48>>2];L[g+92>>2]=0;P[g+88>>2]=z+S(S(q*m)+S(S(t*o)+S(l*p)));P[g+84>>2]=A+S(S(q*k)+S(S(t*r)+S(j*p)));P[g+80>>2]=s+S(S(q*n)+S(S(t*v)+S(w*p)));p=P[c+20>>2];q=P[c+36>>2];t=P[c+24>>2];y=P[c+40>>2];u=P[c+32>>2];s=P[c>>2];z=P[c+16>>2];A=P[c+4>>2];B=P[c+8>>2];L[g+508>>2]=0;L[g+512>>2]=0;L[g+492>>2]=0;L[g+516>>2]=0;L[g+520>>2]=0;L[g+524>>2]=0;P[g+504>>2]=S(y*m)+S(S(B*o)+S(l*t));P[g+500>>2]=S(q*m)+S(S(A*o)+S(l*p));P[g+488>>2]=S(y*k)+S(S(B*r)+S(j*t));P[g+484>>2]=S(q*k)+S(S(A*r)+S(j*p));L[g+476>>2]=0;P[g+496>>2]=S(u*m)+S(S(s*o)+S(l*z));P[g+480>>2]=S(u*k)+S(S(s*r)+S(j*z));P[g+472>>2]=S(y*n)+S(S(B*v)+S(w*t));P[g+468>>2]=S(q*n)+S(S(A*v)+S(w*p));P[g+464>>2]=S(u*n)+S(S(s*v)+S(w*z));d=L[d+8>>2];b=El(g+104|0,a,b,c,h,S(ha[L[L[x>>2]+48>>2]](x)));L[b+220>>2]=x;L[b+216>>2]=d;L[b+212>>2]=e;L[b>>2]=7652;j=P[e+4>>2];P[b+208>>2]=f;P[b+200>>2]=j;c=g+20|0;d=g+4|0;ha[L[L[a>>2]+8>>2]](a,g+464|0,c,d);a=fa-16|0;fa=a;e=L[x+48>>2];L[a+12>>2]=b;L[a+8>>2]=e;L[a+4>>2]=12556;e=a+4|0;h=g+36|0;i=g+80|0;b=L[x+52>>2];d:{if(M[b+60|0]){Em(b,e,h,i,c,d,L[b+56>>2]);break d}Fm(b,e,h,i,c,d)}fa=a+16|0;break a;case 7:P[g+276>>2]=f;L[g+272>>2]=0;L[g+104>>2]=6864;P[g+268>>2]=P[e+4>>2];i=g+36|0;L[i+20>>2]=x;L[i+16>>2]=0;L[i+12>>2]=a;L[i+4>>2]=0;L[i+8>>2]=0;L[i>>2]=18268;e:{if(!(ha[L[L[i>>2]+8>>2]](i,b,c,h,h,g+104|0)|0)){break e}f=P[g+244>>2];j=P[g+236>>2];k=P[g+240>>2];l=S(S(f*f)+S(S(j*j)+S(k*k)));if(!(l>S(9999999747378752e-20))){break e}m=P[g+268>>2];if(!(m>2])){break e}n=f;f=S(S(1)/S(_(l)));P[g+244>>2]=n*f;P[g+240>>2]=k*f;P[g+236>>2]=j*f;a=L[d+8>>2];L[g+468>>2]=0;L[g+464>>2]=a;a=L[g+248>>2];L[g+480>>2]=L[g+244>>2];L[g+484>>2]=a;a=L[g+236>>2];b=L[g+240>>2];c=L[g+264>>2];L[g+496>>2]=L[g+260>>2];L[g+500>>2]=c;L[g+472>>2]=a;L[g+476>>2]=b;a=L[g+256>>2];L[g+488>>2]=L[g+252>>2];L[g+492>>2]=a;P[g+504>>2]=m;S(ha[L[L[e>>2]+12>>2]](e,g+464|0,1))}break a;default:break c}}t=P[b+52>>2];y=P[b+56>>2];m=P[h+52>>2];u=P[h+56>>2];s=P[c+52>>2];z=P[c+56>>2];l=P[h+20>>2];n=P[h+36>>2];v=P[h+24>>2];w=P[h+40>>2];A=P[b+48>>2];Q=P[h+48>>2];B=P[c+48>>2];k=P[h+32>>2];r=P[h>>2];o=P[h+16>>2];p=P[h+4>>2];q=P[h+8>>2];j=P[c+20>>2];C=P[c+36>>2];D=P[c+24>>2];E=P[c+40>>2];F=P[c+32>>2];G=P[c>>2];H=P[c+16>>2];N=P[c+4>>2];O=P[c+8>>2];L[g+508>>2]=0;L[g+512>>2]=0;L[g+492>>2]=0;L[g+516>>2]=0;L[g+520>>2]=0;L[g+524>>2]=0;P[g+504>>2]=S(E*w)+S(S(O*q)+S(v*D));P[g+500>>2]=S(C*w)+S(S(N*q)+S(v*j));P[g+488>>2]=S(E*n)+S(S(O*p)+S(l*D));P[g+484>>2]=S(C*n)+S(S(N*p)+S(l*j));L[g+476>>2]=0;P[g+496>>2]=S(F*w)+S(S(G*q)+S(v*H));P[g+480>>2]=S(F*n)+S(S(G*p)+S(l*H));P[g+472>>2]=S(E*k)+S(S(O*r)+S(o*D));P[g+468>>2]=S(C*k)+S(S(N*r)+S(o*j));P[g+464>>2]=S(F*k)+S(S(G*r)+S(o*H));d=L[d+8>>2];b=El(g+104|0,a,b,c,h,S(ha[L[L[x>>2]+48>>2]](x)));L[b+220>>2]=x;L[b+216>>2]=d;L[b+212>>2]=e;L[b>>2]=7864;j=P[e+4>>2];P[b+208>>2]=f;P[b+200>>2]=j;ha[L[L[a>>2]+8>>2]](a,g+464|0,g+36|0,g+80|0);L[g+32>>2]=0;f=S(-Q);C=S(S(S(q*f)-S(v*m))-S(w*u));D=S(S(S(p*f)-S(l*m))-S(n*u));j=S(D+S(S(z*n)+S(S(B*p)+S(l*s))));f=S(S(S(r*f)-S(o*m))-S(k*u));u=S(f+S(S(y*k)+S(S(A*r)+S(o*t))));m=u;k=S(f+S(S(z*k)+S(S(B*r)+S(o*s))));if(k>2]=k;m=k}o=S(D+S(S(y*n)+S(S(A*p)+S(l*t))));n=o;if(j>2]=j;n=j}r=S(C+S(S(y*w)+S(S(A*q)+S(v*t))));f=r;l=S(C+S(S(z*w)+S(S(B*q)+S(v*s))));if(l>2]=l;f=l}L[g+16>>2]=0;P[g+20>>2]=P[g+36>>2]+m;P[g+24>>2]=P[g+40>>2]+n;P[g+28>>2]=P[g+44>>2]+f;P[g+4>>2]=P[g+80>>2]+(k>u?k:u);P[g+8>>2]=P[g+84>>2]+(j>o?j:o);P[g+12>>2]=P[g+88>>2]+(l>r?l:r);ha[L[L[x>>2]+64>>2]](x,b,g+20|0,g+4|0);break a}if((i|0)!=31){break a}wa(3236);if(L[x+16>>2]>0){while(1){i=L[x+24>>2]+R(I,80)|0;K=L[i+64>>2];p=P[i+56>>2];q=P[i+48>>2];t=P[i+52>>2];y=P[i+32>>2];u=P[i>>2];s=P[i+16>>2];z=P[i+36>>2];A=P[i+4>>2];B=P[i+20>>2];C=P[i+40>>2];D=P[i+8>>2];E=P[i+24>>2];F=P[h+48>>2];G=P[h+52>>2];H=P[h+56>>2];j=P[h+8>>2];k=P[h>>2];l=P[h+4>>2];m=P[h+24>>2];n=P[h+16>>2];v=P[h+20>>2];w=P[h+40>>2];r=P[h+32>>2];o=P[h+36>>2];L[g+164>>2]=0;L[g+148>>2]=0;L[g+132>>2]=0;L[g+116>>2]=0;P[g+144>>2]=S(C*w)+S(S(D*r)+S(E*o));P[g+140>>2]=S(z*w)+S(S(A*r)+S(B*o));P[g+136>>2]=S(y*w)+S(S(u*r)+S(s*o));P[g+128>>2]=S(C*m)+S(S(D*n)+S(E*v));P[g+124>>2]=S(z*m)+S(S(A*n)+S(B*v));P[g+120>>2]=S(y*m)+S(S(u*n)+S(s*v));P[g+112>>2]=S(C*j)+S(S(D*k)+S(E*l));P[g+108>>2]=S(z*j)+S(S(A*k)+S(B*l));P[g+104>>2]=S(y*j)+S(S(u*k)+S(s*l));P[g+160>>2]=H+S(S(p*w)+S(S(q*r)+S(t*o)));P[g+156>>2]=G+S(S(p*m)+S(S(q*n)+S(t*v)));P[g+152>>2]=F+S(S(p*j)+S(S(q*k)+S(t*l)));L[g+52>>2]=I;L[g+36>>2]=8080;L[g+44>>2]=-65535;L[g+48>>2]=e;P[g+40>>2]=P[e+4>>2];i=L[d+8>>2];L[g+484>>2]=I;L[g+480>>2]=-1;L[g+472>>2]=i;L[g+468>>2]=K;L[g+464>>2]=d;L[g+476>>2]=g+104;kh(a,b,c,g+464|0,g+36|0,f);I=I+1|0;if((I|0)>2]){continue}break}}va()}fa=g+640|0}function dB(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=S(0),l=S(0),m=0,n=0,o=0,p=0,q=0,r=0;a:{if(!(J[i+64|0]&1)){break a}p=L[a+68>>2];n=L[a+28>>2];m=L[a+48>>2];if((m|0)>0){e=R(L[a+192>>2],1664525)+1013904223|0;b:{if((m|0)==1){break b}d=L[a+136>>2];c=L[d+4>>2];e=R(e,1664525)+1013904223|0;f=e^e>>>16;f=f>>>8^f;f=f>>>4^f;f=f>>>2^f;f=d+(((f>>>1^f)&1)<<2)|0;L[d+4>>2]=L[f>>2];L[f>>2]=c;if((m|0)==2){break b}c=L[d+8>>2];e=R(e,1664525)+1013904223|0;f=e^e>>>16;f=f>>>8^f;f=f>>>4^f;f=d+(((f>>>2^f)>>>0)%3<<2)|0;L[d+8>>2]=L[f>>2];L[f>>2]=c;if((m|0)==3){break b}c=4;f=L[d+12>>2];e=R(e,1664525)+1013904223|0;j=e^e>>>16;j=j>>>8^j;j=j>>>4^j;j=d+(((j>>>2^j)&3)<<2)|0;L[d+12>>2]=L[j>>2];L[j>>2]=f;if((m|0)==4){break b}while(1){f=c;c=f+1|0;j=d+(f<<2)|0;r=L[j>>2];q=j;e=R(e,1664525)+1013904223|0;j=e;c:{if(f>>>0>65535){break c}o=e>>>16^e;j=o;if(f>>>0>255){break c}o=o^o>>>8;j=o;if(f>>>0>15){break c}j=o^o>>>4}f=((j>>>0)%(c>>>0)<<2)+d|0;L[q>>2]=L[f>>2];L[f>>2]=r;if((c|0)!=(m|0)){continue}break}}L[a+192>>2]=e}if(L[i+20>>2]<=(b|0)){break a}if((n|0)>0){e=R(L[a+192>>2],1664525)+1013904223|0;d:{if((n|0)==1){break d}d=L[a+116>>2];c=L[d+4>>2];e=R(e,1664525)+1013904223|0;f=e^e>>>16;f=f>>>8^f;f=f>>>4^f;f=f>>>2^f;f=d+(((f>>>1^f)&1)<<2)|0;L[d+4>>2]=L[f>>2];L[f>>2]=c;if((n|0)==2){break d}c=L[d+8>>2];e=R(e,1664525)+1013904223|0;f=e^e>>>16;f=f>>>8^f;f=f>>>4^f;f=d+(((f>>>2^f)>>>0)%3<<2)|0;L[d+8>>2]=L[f>>2];L[f>>2]=c;if((n|0)==3){break d}c=4;f=L[d+12>>2];e=R(e,1664525)+1013904223|0;j=e^e>>>16;j=j>>>8^j;j=j>>>4^j;j=d+(((j>>>2^j)&3)<<2)|0;L[d+12>>2]=L[j>>2];L[j>>2]=f;if((n|0)==4){break d}while(1){f=c;c=f+1|0;j=d+(f<<2)|0;o=L[j>>2];q=j;e=R(e,1664525)+1013904223|0;j=e;e:{if(f>>>0>65535){break e}m=e>>>16^e;j=m;if(f>>>0>255){break e}m=m^m>>>8;j=m;if(f>>>0>15){break e}j=m^m>>>4}f=((j>>>0)%(c>>>0)<<2)+d|0;L[q>>2]=L[f>>2];L[f>>2]=o;if((c|0)!=(n|0)){continue}break}}L[a+192>>2]=e}if((p|0)<=0){break a}e=R(L[a+192>>2],1664525)+1013904223|0;f:{if((p|0)==1){break f}d=L[a+156>>2];c=L[d+4>>2];e=R(e,1664525)+1013904223|0;f=e^e>>>16;f=f>>>8^f;f=f>>>4^f;f=f>>>2^f;f=d+(((f>>>1^f)&1)<<2)|0;L[d+4>>2]=L[f>>2];L[f>>2]=c;if((p|0)==2){break f}c=L[d+8>>2];e=R(e,1664525)+1013904223|0;f=e^e>>>16;f=f>>>8^f;f=f>>>4^f;f=d+(((f>>>2^f)>>>0)%3<<2)|0;L[d+8>>2]=L[f>>2];L[f>>2]=c;if((p|0)==3){break f}c=4;f=L[d+12>>2];e=R(e,1664525)+1013904223|0;j=e^e>>>16;j=j>>>8^j;j=j>>>4^j;j=d+(((j>>>2^j)&3)<<2)|0;L[d+12>>2]=L[j>>2];L[j>>2]=f;if((p|0)==4){break f}while(1){f=c;c=f+1|0;j=d+(f<<2)|0;m=L[j>>2];o=j;e=R(e,1664525)+1013904223|0;j=e;g:{if(f>>>0>65535){break g}n=e>>>16^e;j=n;if(f>>>0>255){break g}n=n^n>>>8;j=n;if(f>>>0>15){break g}j=n^n>>>4}f=((j>>>0)%(c>>>0)<<2)+d|0;L[o>>2]=L[f>>2];L[f>>2]=m;if((c|0)!=(p|0)){continue}break}}L[a+192>>2]=e}e=L[a+48>>2];h:{i:{if(J[i+65|0]&1){if((e|0)>0){c=0;while(1){d=L[a+56>>2]+R(L[L[a+136>>2]+(c<<2)>>2],152)|0;if(L[d+136>>2]>(b|0)){e=L[a+16>>2];Qb(e+R(L[d+144>>2],244)|0,e+R(L[d+148>>2],244)|0,d);e=L[a+48>>2]}c=c+1|0;if((e|0)>(c|0)){continue}break}}if(L[i+20>>2]<=(b|0)){break h}if((h|0)>0){e=0;while(1){b=(e<<2)+g|0;c=L[b>>2];if(M[c+20|0]){c=vb(a,L[c+28>>2],P[i+12>>2]);d=vb(a,L[L[b>>2]+32>>2],P[i+12>>2]);b=L[b>>2];f=R(c,244);c=L[a+16>>2];ha[L[L[b>>2]+24>>2]](b,f+c|0,c+R(d,244)|0,P[i+12>>2])}e=e+1|0;if((h|0)!=(e|0)){continue}break}}d=L[a+28>>2];b=L[i+64>>2];if(!(b&512)){break i}if((d|0)<=0){break h}e=b&16?2:1;c=0;while(1){f=L[a+16>>2];b=L[a+36>>2]+R(L[L[a+116>>2]+(c<<2)>>2],152)|0;tg(f+R(L[b+144>>2],244)|0,f+R(L[b+148>>2],244)|0,b);k=P[b+100>>2];f=k>S(0);j:{if(!f){break j}g=R(c,e)<<2;b=L[a+76>>2]+R(L[g+L[a+156>>2]>>2],152)|0;l=P[b+104>>2];P[b+124>>2]=k*l;P[b+120>>2]=k*S(-l);h=L[a+16>>2];Qb(h+R(L[b+144>>2],244)|0,h+R(L[b+148>>2],244)|0,b);if(!f|!(L[i+64>>2]&16)){break j}b=L[a+76>>2]+R(L[(g+L[a+156>>2]|0)+4>>2],152)|0;l=P[b+104>>2];P[b+124>>2]=k*l;P[b+120>>2]=k*S(-l);f=L[a+16>>2];Qb(f+R(L[b+144>>2],244)|0,f+R(L[b+148>>2],244)|0,b)}c=c+1|0;if((d|0)!=(c|0)){continue}break}break h}if((e|0)>0){c=0;while(1){d=L[a+56>>2]+R(L[L[a+136>>2]+(c<<2)>>2],152)|0;if(L[d+136>>2]>(b|0)){e=L[a+16>>2];Qb(e+R(L[d+144>>2],244)|0,e+R(L[d+148>>2],244)|0,d);e=L[a+48>>2]}c=c+1|0;if((e|0)>(c|0)){continue}break}}if(L[i+20>>2]<=(b|0)){break h}if((h|0)>0){e=0;while(1){b=(e<<2)+g|0;c=L[b>>2];if(M[c+20|0]){c=vb(a,L[c+28>>2],P[i+12>>2]);d=vb(a,L[L[b>>2]+32>>2],P[i+12>>2]);b=L[b>>2];f=R(c,244);c=L[a+16>>2];ha[L[L[b>>2]+24>>2]](b,f+c|0,c+R(d,244)|0,P[i+12>>2])}e=e+1|0;if((h|0)!=(e|0)){continue}break}}c=L[a+28>>2];if((c|0)>0){e=0;while(1){d=L[a+16>>2];b=L[a+36>>2]+R(L[L[a+116>>2]+(e<<2)>>2],152)|0;tg(d+R(L[b+144>>2],244)|0,d+R(L[b+148>>2],244)|0,b);e=e+1|0;if((c|0)!=(e|0)){continue}break}}d=L[a+68>>2];if((d|0)>0){c=0;while(1){b=L[a+76>>2]+R(L[L[a+156>>2]+(c<<2)>>2],152)|0;k=P[(L[a+36>>2]+R(L[b+140>>2],152)|0)+100>>2];if(k>S(0)){l=P[b+104>>2];P[b+124>>2]=k*l;P[b+120>>2]=k*S(-l);e=L[a+16>>2];Qb(e+R(L[b+144>>2],244)|0,e+R(L[b+148>>2],244)|0,b)}c=c+1|0;if((d|0)!=(c|0)){continue}break}}d=L[a+88>>2];if((d|0)<=0){break h}c=0;while(1){b=L[a+96>>2]+R(c,152)|0;k=P[(L[a+36>>2]+R(L[b+140>>2],152)|0)+100>>2];if(k>S(0)){l=k;k=P[b+104>>2];l=S(l*k);k=k>2]=k;P[b+120>>2]=-k;e=L[a+16>>2];Qb(e+R(L[b+144>>2],244)|0,e+R(L[b+148>>2],244)|0,b)}c=c+1|0;if((d|0)!=(c|0)){continue}break}break h}if((d|0)>0){e=0;while(1){c=L[a+16>>2];b=L[a+36>>2]+R(L[L[a+116>>2]+(e<<2)>>2],152)|0;tg(c+R(L[b+144>>2],244)|0,c+R(L[b+148>>2],244)|0,b);e=e+1|0;if((d|0)!=(e|0)){continue}break}}d=L[a+68>>2];if((d|0)>0){c=0;while(1){b=L[a+76>>2]+R(L[L[a+156>>2]+(c<<2)>>2],152)|0;k=P[(L[a+36>>2]+R(L[b+140>>2],152)|0)+100>>2];if(k>S(0)){l=P[b+104>>2];P[b+124>>2]=k*l;P[b+120>>2]=k*S(-l);e=L[a+16>>2];Qb(e+R(L[b+144>>2],244)|0,e+R(L[b+148>>2],244)|0,b)}c=c+1|0;if((d|0)!=(c|0)){continue}break}}d=L[a+88>>2];if((d|0)<=0){break h}c=0;while(1){b=L[a+96>>2]+R(c,152)|0;k=P[(L[a+36>>2]+R(L[b+140>>2],152)|0)+100>>2];if(k>S(0)){l=k;k=P[b+104>>2];l=S(l*k);k=k>2]=k;P[b+120>>2]=-k;e=L[a+16>>2];Qb(e+R(L[b+144>>2],244)|0,e+R(L[b+148>>2],244)|0,b)}c=c+1|0;if((d|0)!=(c|0)){continue}break}}return S(S(0))}function vb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=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=S(0),u=S(0);g=fa-256|0;fa=g;h=L[b+212>>2];a:{if((h|0)>=0){break a}b:{h=L[b+236>>2];if(!(h&2)){break b}h=h<<30>>31&b;if(P[h+344>>2]==S(0)&!(M[h+204|0]&2)){break b}h=L[a+8>>2];pa(g+12|0,0,244);d=h;e=d;c:{if(L[a+12>>2]!=(d|0)){break c}l=d?d<<1:1;e=h;if((l|0)<=(d|0)){break c}if(l){L[8513]=L[8513]+1;i=ha[L[6798]](R(l,244),16)|0;d=L[a+8>>2]}else{d=h}if((d|0)>0){while(1){e=R(o,244);f=e+i|0;e=e+L[a+16>>2]|0;j=L[e+4>>2];L[f>>2]=L[e>>2];L[f+4>>2]=j;j=L[e+12>>2];L[f+8>>2]=L[e+8>>2];L[f+12>>2]=j;j=L[e+28>>2];L[f+24>>2]=L[e+24>>2];L[f+28>>2]=j;j=L[e+20>>2];L[f+16>>2]=L[e+16>>2];L[f+20>>2]=j;j=L[e+44>>2];L[f+40>>2]=L[e+40>>2];L[f+44>>2]=j;j=L[e+36>>2];L[f+32>>2]=L[e+32>>2];L[f+36>>2]=j;j=L[e+52>>2];L[f+48>>2]=L[e+48>>2];L[f+52>>2]=j;j=L[e+60>>2];L[f+56>>2]=L[e+56>>2];L[f+60>>2]=j;qa(f- -64|0,e- -64|0,180);o=o+1|0;if((d|0)!=(o|0)){continue}break}}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]=i;J[a+20|0]=1;L[a+12>>2]=l;e=L[a+8>>2]}L[a+8>>2]=e+1;e=R(h,244);d=e+L[a+16>>2]|0;L[d>>2]=0;L[d+4>>2]=0;L[d+8>>2]=0;L[d+12>>2]=0;f=L[g+40>>2];L[d+24>>2]=L[g+36>>2];L[d+28>>2]=f;f=L[g+32>>2];L[d+16>>2]=L[g+28>>2];L[d+20>>2]=f;f=L[g+48>>2];L[d+32>>2]=L[g+44>>2];L[d+36>>2]=f;f=L[g+56>>2];L[d+40>>2]=L[g+52>>2];L[d+44>>2]=f;f=L[g+64>>2];L[d+48>>2]=L[g+60>>2];L[d+52>>2]=f;f=L[g+72>>2];L[d+56>>2]=L[g+68>>2];L[d+60>>2]=f;qa(d- -64|0,g+76|0,180);d=e+L[a+16>>2]|0;a=b?L[b+236>>2]<<30>>31&b:0;L[d+64>>2]=0;L[d+68>>2]=0;L[d+144>>2]=0;L[d+148>>2]=0;L[d+88>>2]=0;L[d+92>>2]=0;L[d+80>>2]=0;L[d+84>>2]=0;L[d+72>>2]=0;L[d+76>>2]=0;L[d+152>>2]=0;L[d+156>>2]=0;L[d+160>>2]=0;L[d+164>>2]=0;L[d+168>>2]=0;L[d+172>>2]=0;d:{if(a){e=L[a+8>>2];L[d>>2]=L[a+4>>2];L[d+4>>2]=e;e=L[a+16>>2];L[d+8>>2]=L[a+12>>2];L[d+12>>2]=e;e=L[a+32>>2];L[d+24>>2]=L[a+28>>2];L[d+28>>2]=e;e=L[a+24>>2];L[d+16>>2]=L[a+20>>2];L[d+20>>2]=e;e=L[a+48>>2];L[d+40>>2]=L[a+44>>2];L[d+44>>2]=e;e=L[a+40>>2];L[d+32>>2]=L[a+36>>2];L[d+36>>2]=e;e=L[a+64>>2];L[d+56>>2]=L[a+60>>2];L[d+60>>2]=e;e=L[a+56>>2];L[d+48>>2]=L[a+52>>2];L[d+52>>2]=e;m=P[a+352>>2];n=P[a+356>>2];p=P[a+348>>2];k=P[a+344>>2];L[d+240>>2]=a;L[d+140>>2]=0;P[d+136>>2]=k*n;P[d+132>>2]=k*m;P[d+128>>2]=k*p;e=L[a+556>>2];L[d+104>>2]=L[a+552>>2];L[d+108>>2]=e;e=L[a+548>>2];L[d+96>>2]=L[a+544>>2];L[d+100>>2]=e;e=L[a+360>>2];L[d+120>>2]=L[a+356>>2];L[d+124>>2]=e;e=L[a+352>>2];L[d+112>>2]=L[a+348>>2];L[d+116>>2]=e;e=L[a+324>>2];L[d+184>>2]=L[a+320>>2];L[d+188>>2]=e;e=L[a+316>>2];L[d+176>>2]=L[a+312>>2];L[d+180>>2]=e;e=L[a+340>>2];L[d+200>>2]=L[a+336>>2];L[d+204>>2]=e;e=L[a+332>>2];L[d+192>>2]=L[a+328>>2];L[d+196>>2]=e;m=P[a+416>>2];n=P[a+420>>2];p=P[a+412>>2];k=P[a+344>>2];L[d+220>>2]=0;P[d+216>>2]=S(k*n)*c;P[d+212>>2]=S(k*m)*c;P[d+208>>2]=S(k*p)*c;p=P[a+272>>2];q=P[a+288>>2];r=P[a+304>>2];s=P[a+280>>2];t=P[a+296>>2];u=P[a+264>>2];k=P[a+436>>2];m=P[a+428>>2];n=P[a+432>>2];P[d+228>>2]=S(S(P[a+300>>2]*k)+S(S(P[a+268>>2]*m)+S(n*P[a+284>>2])))*c;P[d+224>>2]=S(S(t*k)+S(S(u*m)+S(s*n)))*c;c=S(S(S(r*k)+S(S(p*m)+S(n*q)))*c);break d}L[d+4>>2]=0;L[d+8>>2]=0;L[d>>2]=1065353216;L[d+240>>2]=0;L[d+128>>2]=0;L[d+132>>2]=0;L[d+112>>2]=1065353216;L[d+116>>2]=1065353216;L[d+96>>2]=1065353216;L[d+100>>2]=1065353216;L[d+176>>2]=0;L[d+180>>2]=0;L[d+12>>2]=0;L[d+16>>2]=0;L[d+24>>2]=0;L[d+28>>2]=0;L[d+20>>2]=1065353216;L[d+32>>2]=0;L[d+36>>2]=0;L[d+44>>2]=0;L[d+48>>2]=0;L[d+40>>2]=1065353216;L[d+52>>2]=0;L[d+56>>2]=0;L[d+60>>2]=0;L[d+136>>2]=0;L[d+140>>2]=0;L[d+120>>2]=1065353216;L[d+124>>2]=0;L[d+104>>2]=1065353216;L[d+108>>2]=0;L[d+224>>2]=0;L[d+228>>2]=0;L[d+216>>2]=0;L[d+220>>2]=0;L[d+208>>2]=0;L[d+212>>2]=0;L[d+200>>2]=0;L[d+204>>2]=0;L[d+192>>2]=0;L[d+196>>2]=0;L[d+184>>2]=0;L[d+188>>2]=0;c=S(0)}L[d+236>>2]=0;P[d+232>>2]=c;L[b+212>>2]=h;break a}h=L[a+188>>2];if((h|0)>=0){break a}b=L[a+8>>2];L[a+188>>2]=b;pa(g+12|0,0,244);d=b;e:{if((b|0)!=L[a+12>>2]){break e}l=b?b<<1:1;d=b;if((l|0)<=(b|0)){break e}if(l){L[8513]=L[8513]+1;o=ha[L[6798]](R(l,244),16)|0;d=L[a+8>>2]}else{d=b}if((d|0)>0){h=0;while(1){e=R(h,244);f=e+o|0;e=e+L[a+16>>2]|0;i=L[e+4>>2];L[f>>2]=L[e>>2];L[f+4>>2]=i;i=L[e+12>>2];L[f+8>>2]=L[e+8>>2];L[f+12>>2]=i;i=L[e+28>>2];L[f+24>>2]=L[e+24>>2];L[f+28>>2]=i;i=L[e+20>>2];L[f+16>>2]=L[e+16>>2];L[f+20>>2]=i;i=L[e+44>>2];L[f+40>>2]=L[e+40>>2];L[f+44>>2]=i;i=L[e+36>>2];L[f+32>>2]=L[e+32>>2];L[f+36>>2]=i;i=L[e+52>>2];L[f+48>>2]=L[e+48>>2];L[f+52>>2]=i;i=L[e+60>>2];L[f+56>>2]=L[e+56>>2];L[f+60>>2]=i;qa(f- -64|0,e- -64|0,180);h=h+1|0;if((d|0)!=(h|0)){continue}break}}h=L[a+16>>2];if(!(h?!h|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](h)}L[a+16>>2]=o;J[a+20|0]=1;L[a+12>>2]=l;d=L[a+8>>2]}L[a+8>>2]=d+1;h=R(b,244);b=h+L[a+16>>2]|0;L[b>>2]=0;L[b+4>>2]=0;L[b+8>>2]=0;L[b+12>>2]=0;d=L[g+40>>2];L[b+24>>2]=L[g+36>>2];L[b+28>>2]=d;d=L[g+32>>2];L[b+16>>2]=L[g+28>>2];L[b+20>>2]=d;d=L[g+48>>2];L[b+32>>2]=L[g+44>>2];L[b+36>>2]=d;d=L[g+56>>2];L[b+40>>2]=L[g+52>>2];L[b+44>>2]=d;d=L[g+64>>2];L[b+48>>2]=L[g+60>>2];L[b+52>>2]=d;d=L[g+72>>2];L[b+56>>2]=L[g+68>>2];L[b+60>>2]=d;qa(b- -64|0,g+76|0,180);b=h+L[a+16>>2]|0;L[b+64>>2]=0;L[b+68>>2]=0;L[b+144>>2]=0;L[b+148>>2]=0;L[b+4>>2]=0;L[b+8>>2]=0;L[b>>2]=1065353216;L[b+88>>2]=0;L[b+92>>2]=0;L[b+80>>2]=0;L[b+84>>2]=0;L[b+72>>2]=0;L[b+76>>2]=0;L[b+152>>2]=0;L[b+156>>2]=0;L[b+160>>2]=0;L[b+164>>2]=0;L[b+168>>2]=0;L[b+172>>2]=0;L[b+12>>2]=0;L[b+16>>2]=0;L[b+24>>2]=0;L[b+28>>2]=0;L[b+20>>2]=1065353216;L[b+32>>2]=0;L[b+36>>2]=0;L[b+44>>2]=0;L[b+48>>2]=0;L[b+40>>2]=1065353216;L[b+52>>2]=0;L[b+56>>2]=0;L[b+60>>2]=0;L[b+136>>2]=0;L[b+140>>2]=0;L[b+240>>2]=0;L[b+128>>2]=0;L[b+132>>2]=0;L[b+120>>2]=1065353216;L[b+124>>2]=0;L[b+112>>2]=1065353216;L[b+116>>2]=1065353216;L[b+104>>2]=1065353216;L[b+108>>2]=0;L[b+96>>2]=1065353216;L[b+100>>2]=1065353216;L[b+232>>2]=0;L[b+236>>2]=0;L[b+224>>2]=0;L[b+228>>2]=0;L[b+216>>2]=0;L[b+220>>2]=0;L[b+208>>2]=0;L[b+212>>2]=0;L[b+200>>2]=0;L[b+204>>2]=0;L[b+192>>2]=0;L[b+196>>2]=0;L[b+184>>2]=0;L[b+188>>2]=0;L[b+176>>2]=0;L[b+180>>2]=0;h=L[a+188>>2]}fa=g+256|0;return h}function wk(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=S(0),l=S(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=0,C=S(0),D=S(0),E=0,F=0,G=0,H=0,I=0,K=0,N=S(0),O=S(0),Q=S(0),R=S(0),T=S(0),U=0,V=S(0),W=0,X=0;c=fa-192|0;fa=c;wa(2663);d=L[a+1112>>2];if((d|0)>0){H=a+1048|0;U=L[5822];V=P[5821];while(1){b=L[L[a+1120>>2]+(F<<2)>>2];E=L[b+24>>2];if(E){L[c+188>>2]=0;L[c+180>>2]=0;L[c+184>>2]=0;L[c+172>>2]=0;L[c+176>>2]=0;L[c+164>>2]=0;L[c+168>>2]=0;L[c+156>>2]=0;L[c+160>>2]=0;L[c+148>>2]=0;L[c+152>>2]=0;L[c+184>>2]=966609233;L[c+164>>2]=961656599;L[c+144>>2]=953267991;r=L[b+24>>2];I=(r|0)<=0;a:{if(I){e=S(0);h=S(0);f=S(0);break a}W=r&1;g=L[b+32>>2];y=L[b+12>>2];b:{if((r|0)==1){f=S(0);d=0;h=S(0);e=S(0);break b}X=r&-2;f=S(0);d=0;h=S(0);e=S(0);B=0;while(1){u=d<<2;G=L[u+g>>2];i=P[y+u>>2];K=u|4;u=L[g+K>>2];j=P[y+K>>2];e=S(S(e+S(P[G+8>>2]*i))+S(P[u+8>>2]*j));f=S(S(f+S(i*P[G+16>>2]))+S(j*P[u+16>>2]));h=S(S(h+S(i*P[G+12>>2]))+S(j*P[u+12>>2]));d=d+2|0;B=B+2|0;if((X|0)!=(B|0)){continue}break}}if(!W){break a}u=g;g=d<<2;d=L[u+g>>2];i=P[g+y>>2];e=S(e+S(P[d+8>>2]*i));f=S(f+S(i*P[d+16>>2]));h=S(h+S(i*P[d+12>>2]))}L[b+240>>2]=0;k=f;f=P[b+128>>2];p=S(k*f);P[b+236>>2]=p;v=S(h*f);P[b+232>>2]=v;x=S(e*f);P[b+228>>2]=x;if(!I){B=L[b+52>>2];u=L[b+32>>2];l=S(9999999747378752e-20);d=0;e=S(.00019999999494757503);h=S(0);f=S(.00029999998514540493);i=P[c+168>>2];j=P[c+152>>2];k=P[c+148>>2];m=P[c+160>>2];n=S(0);while(1){y=L[u+(d<<2)>>2];z=P[y+16>>2];w=P[y+12>>2];g=B+(d<<4)|0;q=P[g>>2];s=P[g+4>>2];o=S(P[y+8>>2]-x);j=S(S(o*P[g+8>>2])+j);P[c+152>>2]=j;k=S(S(o*s)+k);P[c+148>>2]=k;l=S(S(o*q)+l);P[c+144>>2]=l;q=P[g>>2];s=P[g+4>>2];o=S(w-v);i=S(S(o*P[g+8>>2])+i);P[c+168>>2]=i;e=S(S(o*s)+e);P[c+164>>2]=e;m=S(S(o*q)+m);P[c+160>>2]=m;w=P[g>>2];q=P[g+4>>2];o=S(z-p);f=S(S(o*P[g+8>>2])+f);P[c+184>>2]=f;h=S(S(o*q)+h);P[c+180>>2]=h;n=S(S(o*w)+n);P[c+176>>2]=n;d=d+1|0;if((r|0)!=(d|0)){continue}break}}if(!M[33884]){L[8470]=U;P[8469]=V;J[33884]=1}Wj(c+144|0,c+96|0,c+48|0);d=L[b+240>>2];L[b+116>>2]=L[b+236>>2];L[b+120>>2]=d;d=L[b+232>>2];L[b+108>>2]=L[b+228>>2];L[b+112>>2]=d;d=L[c+108>>2];L[b+68>>2]=L[c+104>>2];L[b+72>>2]=d;d=L[c+100>>2];L[b+60>>2]=L[c+96>>2];L[b+64>>2]=d;d=L[c+124>>2];L[b+84>>2]=L[c+120>>2];L[b+88>>2]=d;d=L[c+116>>2];L[b+76>>2]=L[c+112>>2];L[b+80>>2]=d;d=L[c+132>>2];L[b+92>>2]=L[c+128>>2];L[b+96>>2]=d;d=L[c+140>>2];L[b+100>>2]=L[c+136>>2];L[b+104>>2]=d;h=P[b+68>>2];f=P[b- -64>>2];e=P[b+84>>2];i=P[b+76>>2];j=P[b+80>>2];o=P[b+172>>2];p=P[b+140>>2];v=P[b+156>>2];x=P[b+148>>2];z=P[b+164>>2];k=P[b+100>>2];w=P[b+168>>2];m=P[b+92>>2];q=P[b+136>>2];n=P[b+96>>2];s=P[b+152>>2];l=P[b+60>>2];C=P[b+132>>2];L[b+316>>2]=0;L[b+320>>2]=0;L[b+224>>2]=0;L[b+208>>2]=0;L[b+192>>2]=0;L[b+324>>2]=0;L[b+328>>2]=0;L[b+332>>2]=0;L[b+336>>2]=0;L[b+340>>2]=0;L[b+344>>2]=0;t=S(S(o*k)+S(S(p*m)+S(v*n)));A=S(S(z*k)+S(S(C*m)+S(x*n)));D=S(S(w*k)+S(S(q*m)+S(s*n)));N=S(S(k*t)+S(S(m*A)+S(n*D)));P[b+220>>2]=N;O=S(S(e*t)+S(S(i*A)+S(j*D)));P[b+216>>2]=O;Q=S(S(h*t)+S(S(l*A)+S(f*D)));P[b+212>>2]=Q;t=S(S(o*e)+S(S(p*i)+S(v*j)));A=S(S(z*e)+S(S(C*i)+S(x*j)));D=S(S(w*e)+S(S(q*i)+S(s*j)));R=S(S(k*t)+S(S(m*A)+S(n*D)));P[b+204>>2]=R;T=S(S(e*t)+S(S(i*A)+S(j*D)));P[b+200>>2]=T;t=S(S(h*t)+S(S(l*A)+S(f*D)));P[b+196>>2]=t;A=k;k=S(S(o*h)+S(S(p*l)+S(f*v)));o=m;m=S(S(z*h)+S(S(C*l)+S(x*f)));p=n;n=S(S(w*h)+S(S(q*l)+S(f*s)));o=S(S(A*k)+S(S(o*m)+S(p*n)));P[b+188>>2]=o;p=S(S(e*k)+S(S(i*m)+S(n*j)));P[b+184>>2]=p;v=S(S(h*k)+S(S(l*m)+S(f*n)));P[b+180>>2]=v;c:{if((E|0)<=0){h=S(0);f=S(0);i=S(0);j=S(0);k=S(0);m=S(0);break c}r=L[b+32>>2];x=P[b+236>>2];z=P[b+232>>2];w=P[b+228>>2];y=L[b+12>>2];d=0;h=S(0);f=S(0);i=S(0);j=S(0);k=S(0);m=S(0);while(1){B=d<<2;g=L[B+r>>2];q=P[g+44>>2];l=P[g+48>>2];e=P[y+B>>2];n=S(P[g+40>>2]*e);m=S(n+m);P[b+316>>2]=m;l=S(e*l);j=S(l+j);P[b+324>>2]=j;e=S(e*q);k=S(e+k);P[b+320>>2]=k;q=P[g+16>>2];s=S(P[g+8>>2]-w);C=S(P[g+12>>2]-z);h=S(S(S(s*e)-S(n*C))+h);P[b+340>>2]=h;q=S(q-x);f=S(S(S(q*n)-S(l*s))+f);P[b+336>>2]=f;i=S(i+S(S(C*l)-S(e*q)));P[b+332>>2]=i;d=d+1|0;if((E|0)!=(d|0)){continue}break}}L[b+328>>2]=0;L[b+344>>2]=0;e=P[b+128>>2];n=S(e*j);j=S(S(1)-P[b+356>>2]);P[b+324>>2]=n*j;P[b+320>>2]=S(e*k)*j;P[b+316>>2]=S(m*e)*j;e=S(S(1)-P[b+360>>2]);P[b+340>>2]=e*S(S(N*h)+S(S(Q*i)+S(f*O)));P[b+336>>2]=S(S(R*h)+S(S(t*i)+S(f*T)))*e;P[b+332>>2]=S(S(o*h)+S(S(v*i)+S(p*f)))*e;pa(b+244|0,0,72);if(!(!(P[b+364>>2]>S(0))|L[b+24>>2]<=0)){d=0;while(1){g=L[L[b+32>>2]+(d<<2)>>2];j=P[g+8>>2];k=P[g+12>>2];m=P[g+16>>2];r=L[b+52>>2]+(d<<4)|0;h=P[r+8>>2];f=P[r>>2];e=P[r+4>>2];n=P[b+108>>2];l=P[b+68>>2];o=P[b+60>>2];p=P[b+64>>2];v=P[b+112>>2];x=P[b+84>>2];z=P[b+76>>2];w=P[b+80>>2];i=P[b+364>>2];q=P[b+116>>2];s=P[b+100>>2];C=P[b+92>>2];t=P[b+96>>2];L[g+20>>2]=0;P[g+16>>2]=m+S(i*S(S(q+S(S(h*s)+S(S(f*C)+S(e*t))))-m));P[g+12>>2]=k+S(i*S(S(v+S(S(h*x)+S(S(f*z)+S(e*w))))-k));P[g+8>>2]=j+S(i*S(S(n+S(S(h*l)+S(S(f*o)+S(e*p))))-j));d=d+1|0;if((d|0)>2]){continue}break}}d:{if(!M[b+377|0]){break d}d=1;r=L[b+32>>2];g=L[r>>2];h=P[g+8>>2];f=h;i=P[g+12>>2];j=i;k=P[g+16>>2];m=k;n=P[g+20>>2];e=n;if((E|0)>1){while(1){g=L[r+(d<<2)>>2];l=P[g+8>>2];h=hl?l:f;l=P[g+20>>2];n=l>n?l:n;o=P[g+16>>2];k=k>2];i=il?l:e;m=m>o?o:m;j=j>p?p:j;d=d+1|0;if((E|0)!=(d|0)){continue}break}}P[c+44>>2]=n;P[c+40>>2]=k;P[c+36>>2]=i;P[c+32>>2]=h;P[c+28>>2]=e;P[c+24>>2]=m;P[c+20>>2]=j;P[c+16>>2]=f;d=L[b+348>>2];if(d){f=P[b+316>>2];e=P[b+320>>2];i=P[b+324>>2];h=P[a+452>>2];L[c+12>>2]=0;P[c+8>>2]=S(h*i)*S(3);P[c+4>>2]=S(h*e)*S(3);P[c>>2]=S(f*h)*S(3);Dd(H,d,c+16|0,c,P[a+464>>2]);break d}L[b+348>>2]=Bb(H,c+16|0,b)}d=L[a+1112>>2]}F=F+1|0;if((F|0)<(d|0)){continue}break}}va();fa=c+192|0}function cb(a){var b=0,c=0,d=0,e=S(0),f=0,g=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=0;d=fa-32|0;fa=d;a:{b:{c:{d:{e:{f:{b=L[a+372>>2];switch(L[b+32>>2]-1|0){case 3:break c;case 2:break d;case 1:break e;case 0:break f;default:break b}}b=L[a+364>>2];c=L[a+372>>2];g=L[c+32>>2];f=(g<<2)+c|0;L[f+16>>2]=0;b=b-1|0;L[a+364>>2]=b;b=L[((b<<2)+a|0)+348>>2];L[f>>2]=b;L[c+32>>2]=g+1;L[b+8>>2]=0;L[b+12>>2]=0;L[b>>2]=1065353216;L[b+4>>2]=0;Xa(d+16|0,a,b);c=L[d+28>>2];L[b+24>>2]=L[d+24>>2];L[b+28>>2]=c;c=L[d+20>>2];L[b+16>>2]=L[d+16>>2];L[b+20>>2]=c;c=1;if(cb(a)){break a}b=L[a+372>>2];c=L[b+32>>2]-1|0;L[b+32>>2]=c;b=L[b+(c<<2)>>2];L[((L[a+364>>2]<<2)+a|0)+348>>2]=b;c=L[a+372>>2];g=L[c+32>>2];f=(g<<2)+c|0;L[f>>2]=b;L[f+16>>2]=0;L[c+32>>2]=g+1;L[b+8>>2]=-2147483648;L[b+12>>2]=0;L[b>>2]=-1082130432;L[b+4>>2]=-2147483648;Xa(d+16|0,a,b);c=L[d+28>>2];L[b+24>>2]=L[d+24>>2];L[b+28>>2]=c;c=L[d+20>>2];L[b+16>>2]=L[d+16>>2];L[b+20>>2]=c;c=1;if(cb(a)){break a}b=L[a+372>>2];c=L[b+32>>2]-1|0;L[b+32>>2]=c;c=L[b+(c<<2)>>2];b=L[a+364>>2];L[a+364>>2]=b+1;g=(b<<2)+a|0;L[g+348>>2]=c;c=L[a+372>>2];f=L[c+32>>2];l=(f<<2)+c|0;L[l+16>>2]=0;L[a+364>>2]=b;b=L[g+348>>2];L[l>>2]=b;L[c+32>>2]=f+1;L[b+8>>2]=0;L[b+12>>2]=0;L[b>>2]=0;L[b+4>>2]=1065353216;Xa(d+16|0,a,b);c=L[d+28>>2];L[b+24>>2]=L[d+24>>2];L[b+28>>2]=c;c=L[d+20>>2];L[b+16>>2]=L[d+16>>2];L[b+20>>2]=c;c=1;if(cb(a)){break a}b=L[a+372>>2];c=L[b+32>>2]-1|0;L[b+32>>2]=c;b=L[b+(c<<2)>>2];L[((L[a+364>>2]<<2)+a|0)+348>>2]=b;c=L[a+372>>2];g=L[c+32>>2];f=(g<<2)+c|0;L[f>>2]=b;L[f+16>>2]=0;L[c+32>>2]=g+1;L[b+8>>2]=-2147483648;L[b+12>>2]=0;L[b>>2]=-2147483648;L[b+4>>2]=-1082130432;Xa(d+16|0,a,b);c=L[d+28>>2];L[b+24>>2]=L[d+24>>2];L[b+28>>2]=c;c=L[d+20>>2];L[b+16>>2]=L[d+16>>2];L[b+20>>2]=c;c=1;if(cb(a)){break a}b=L[a+372>>2];c=L[b+32>>2]-1|0;L[b+32>>2]=c;c=L[b+(c<<2)>>2];b=L[a+364>>2];L[a+364>>2]=b+1;g=(b<<2)+a|0;L[g+348>>2]=c;c=L[a+372>>2];f=L[c+32>>2];l=(f<<2)+c|0;L[l+16>>2]=0;L[a+364>>2]=b;b=L[g+348>>2];L[l>>2]=b;L[c+32>>2]=f+1;L[b+8>>2]=1065353216;L[b+12>>2]=0;L[b>>2]=0;L[b+4>>2]=0;Xa(d+16|0,a,b);c=L[d+28>>2];L[b+24>>2]=L[d+24>>2];L[b+28>>2]=c;c=L[d+20>>2];L[b+16>>2]=L[d+16>>2];L[b+20>>2]=c;c=1;if(cb(a)){break a}b=L[a+372>>2];c=L[b+32>>2]-1|0;L[b+32>>2]=c;b=L[b+(c<<2)>>2];L[((L[a+364>>2]<<2)+a|0)+348>>2]=b;c=L[a+372>>2];g=L[c+32>>2];f=(g<<2)+c|0;L[f>>2]=b;L[f+16>>2]=0;L[c+32>>2]=g+1;L[b+8>>2]=-1082130432;L[b+12>>2]=0;L[b>>2]=-2147483648;L[b+4>>2]=-2147483648;Xa(d+16|0,a,b);c=L[d+28>>2];L[b+24>>2]=L[d+24>>2];L[b+28>>2]=c;c=L[d+20>>2];L[b+16>>2]=L[d+16>>2];L[b+20>>2]=c;c=1;if(cb(a)){break a}b=L[a+372>>2];c=L[b+32>>2]-1|0;L[b+32>>2]=c;b=L[b+(c<<2)>>2];c=L[a+364>>2];L[a+364>>2]=c+1;L[((c<<2)+a|0)+348>>2]=b;break b}c=L[b+4>>2];b=L[b>>2];k=S(P[c+20>>2]-P[b+20>>2]);m=S(-k);n=S(P[c+24>>2]-P[b+24>>2]);p=S(-n);o=S(P[c+16>>2]-P[b+16>>2]);r=S(-o);while(1){g:{L[d+8>>2]=0;L[d+12>>2]=0;L[d>>2]=0;L[d+4>>2]=0;L[d+(g<<2)>>2]=1065353216;e=P[d+4>>2];j=P[d>>2];h=S(S(o*e)+S(j*m));q=P[d+8>>2];i=S(S(k*q)+S(e*p));j=S(S(n*j)+S(q*r));e=S(S(h*h)+S(S(i*i)+S(j*j)));if(e>S(0)){c=L[a+372>>2];f=L[c+32>>2];b=(f<<2)+c|0;L[b+16>>2]=0;l=L[a+364>>2]-1|0;L[a+364>>2]=l;s=b;b=L[((l<<2)+a|0)+348>>2];L[s>>2]=b;L[c+32>>2]=f+1;L[b+12>>2]=0;e=S(S(1)/S(_(e)));P[b+8>>2]=h*e;P[b+4>>2]=j*e;P[b>>2]=i*e;Xa(d+16|0,a,b);c=L[d+28>>2];L[b+24>>2]=L[d+24>>2];L[b+28>>2]=c;c=L[d+20>>2];L[b+16>>2]=L[d+16>>2];L[b+20>>2]=c;if(cb(a)){break g}b=L[a+372>>2];c=L[b+32>>2]-1|0;L[b+32>>2]=c;b=L[b+(c<<2)>>2];L[((L[a+364>>2]<<2)+a|0)+348>>2]=b;c=L[a+372>>2];f=L[c+32>>2];l=(f<<2)+c|0;L[l>>2]=b;L[l+16>>2]=0;L[c+32>>2]=f+1;L[b+12>>2]=0;P[b+8>>2]=e*S(-h);P[b+4>>2]=e*S(-j);P[b>>2]=e*S(-i);Xa(d+16|0,a,b);c=L[d+28>>2];L[b+24>>2]=L[d+24>>2];L[b+28>>2]=c;c=L[d+20>>2];L[b+16>>2]=L[d+16>>2];L[b+20>>2]=c;if(cb(a)){break g}b=L[a+372>>2];c=L[b+32>>2]-1|0;L[b+32>>2]=c;b=L[b+(c<<2)>>2];c=L[a+364>>2];L[a+364>>2]=c+1;L[((c<<2)+a|0)+348>>2]=b}g=g+1|0;if((g|0)!=3){continue}break b}break}c=1;break a}c=L[b+4>>2];g=L[b>>2];e=P[g+16>>2];j=S(P[c+16>>2]-e);f=L[b+8>>2];h=P[g+20>>2];i=S(P[f+20>>2]-h);e=S(P[f+16>>2]-e);k=S(P[c+20>>2]-h);h=S(S(j*i)-S(e*k));n=k;k=P[g+24>>2];m=S(P[f+24>>2]-k);k=S(P[c+24>>2]-k);i=S(S(n*m)-S(i*k));j=S(S(k*e)-S(m*j));e=S(S(h*h)+S(S(i*i)+S(j*j)));if(!(e>S(0))){break b}L[b+28>>2]=0;c=L[a+364>>2]-1|0;L[a+364>>2]=c;c=L[((c<<2)+a|0)+348>>2];L[b+32>>2]=4;L[b+12>>2]=c;L[c+12>>2]=0;e=S(S(1)/S(_(e)));P[c+8>>2]=h*e;P[c+4>>2]=j*e;P[c>>2]=i*e;Xa(d+16|0,a,c);b=L[d+28>>2];L[c+24>>2]=L[d+24>>2];L[c+28>>2]=b;b=L[d+20>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=b;c=1;if(cb(a)){break a}b=L[a+372>>2];c=L[b+32>>2]-1|0;L[b+32>>2]=c;b=L[b+(c<<2)>>2];L[((L[a+364>>2]<<2)+a|0)+348>>2]=b;c=L[a+372>>2];g=L[c+32>>2];f=(g<<2)+c|0;L[f>>2]=b;L[f+16>>2]=0;L[c+32>>2]=g+1;L[b+12>>2]=0;P[b+8>>2]=e*S(-h);P[b+4>>2]=e*S(-j);P[b>>2]=e*S(-i);Xa(d+16|0,a,b);c=L[d+28>>2];L[b+24>>2]=L[d+24>>2];L[b+28>>2]=c;c=L[d+20>>2];L[b+16>>2]=L[d+16>>2];L[b+20>>2]=c;c=1;if(cb(a)){break a}b=L[a+372>>2];c=L[b+32>>2]-1|0;L[b+32>>2]=c;b=L[b+(c<<2)>>2];c=L[a+364>>2];L[a+364>>2]=c+1;L[((c<<2)+a|0)+348>>2]=b;break b}a=L[b>>2];g=L[b+12>>2];e=P[g+16>>2];j=S(P[a+16>>2]-e);f=L[b+4>>2];h=P[g+20>>2];k=S(P[f+20>>2]-h);b=L[b+8>>2];i=P[g+24>>2];m=S(P[b+24>>2]-i);n=S(P[a+20>>2]-h);p=S(P[f+24>>2]-i);o=S(P[b+16>>2]-e);i=S(P[a+24>>2]-i);e=S(P[f+16>>2]-e);h=S(P[b+20>>2]-h);e=S(S(S(S(j*k)*m)+S(S(S(S(S(n*p)*o)+S(S(i*e)*h))-S(S(p*j)*h))-S(S(e*n)*m)))-S(S(k*i)*o));c=1;if(e>S(0)|e>2]=a;L[f+792>>2]=b;L[f+788>>2]=c;L[f+784>>2]=d;L[f+780>>2]=e;a=L[f+796>>2];c=L[f+784>>2];b=fa-16|0;L[b+12>>2]=L[f+792>>2];d=L[b+12>>2];L[b+12>>2]=L[f+792>>2];e=L[b+12>>2];L[b+12>>2]=L[f+792>>2];g=f+748|0;la(g,d,e+4|0,L[b+12>>2]+8|0);b=f+764|0;xa(b,c,g);c=L[f+784>>2];d=fa-16|0;L[d+12>>2]=L[f+788>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+792>>2];e=L[e+12>>2];g=fa-16|0;L[g+12>>2]=L[f+792>>2];h=f+716|0;la(h,d,e+4|0,L[g+12>>2]+8|0);d=f+732|0;xa(d,c,h);ha[L[L[a>>2]+8>>2]](a,b,d,L[f+780>>2]);b=L[f+784>>2];c=fa-16|0;L[c+12>>2]=L[f+788>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[f+792>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+792>>2];g=f+684|0;la(g,c,d+4|0,L[e+12>>2]+8|0);c=f+700|0;xa(c,b,g);b=L[f+784>>2];d=fa-16|0;L[d+12>>2]=L[f+788>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+788>>2];e=L[e+12>>2];g=fa-16|0;L[g+12>>2]=L[f+792>>2];h=f+652|0;la(h,d,e+4|0,L[g+12>>2]+8|0);d=f+668|0;xa(d,b,h);ha[L[L[a>>2]+8>>2]](a,c,d,L[f+780>>2]);b=L[f+784>>2];c=fa-16|0;L[c+12>>2]=L[f+788>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[f+788>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+792>>2];g=f+620|0;la(g,c,d+4|0,L[e+12>>2]+8|0);c=f+636|0;xa(c,b,g);b=L[f+784>>2];d=fa-16|0;L[d+12>>2]=L[f+792>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+788>>2];e=L[e+12>>2];g=fa-16|0;L[g+12>>2]=L[f+792>>2];h=f+588|0;la(h,d,e+4|0,L[g+12>>2]+8|0);d=f+604|0;xa(d,b,h);ha[L[L[a>>2]+8>>2]](a,c,d,L[f+780>>2]);b=L[f+784>>2];c=fa-16|0;L[c+12>>2]=L[f+792>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[f+788>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+792>>2];g=f+556|0;la(g,c,d+4|0,L[e+12>>2]+8|0);c=f+572|0;xa(c,b,g);b=L[f+784>>2];d=fa-16|0;L[d+12>>2]=L[f+792>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+792>>2];e=L[e+12>>2];g=fa-16|0;L[g+12>>2]=L[f+792>>2];h=f+524|0;la(h,d,e+4|0,L[g+12>>2]+8|0);d=f+540|0;xa(d,b,h);ha[L[L[a>>2]+8>>2]](a,c,d,L[f+780>>2]);b=L[f+784>>2];c=fa-16|0;L[c+12>>2]=L[f+792>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[f+792>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+792>>2];g=f+492|0;la(g,c,d+4|0,L[e+12>>2]+8|0);c=f+508|0;xa(c,b,g);b=L[f+784>>2];d=fa-16|0;L[d+12>>2]=L[f+792>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+792>>2];e=L[e+12>>2];g=fa-16|0;L[g+12>>2]=L[f+788>>2];h=f+460|0;la(h,d,e+4|0,L[g+12>>2]+8|0);d=f+476|0;xa(d,b,h);ha[L[L[a>>2]+8>>2]](a,c,d,L[f+780>>2]);b=L[f+784>>2];c=fa-16|0;L[c+12>>2]=L[f+788>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[f+792>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+792>>2];g=f+428|0;la(g,c,d+4|0,L[e+12>>2]+8|0);c=f+444|0;xa(c,b,g);b=L[f+784>>2];d=fa-16|0;L[d+12>>2]=L[f+788>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+792>>2];e=L[e+12>>2];g=fa-16|0;L[g+12>>2]=L[f+788>>2];h=f+396|0;la(h,d,e+4|0,L[g+12>>2]+8|0);d=f+412|0;xa(d,b,h);ha[L[L[a>>2]+8>>2]](a,c,d,L[f+780>>2]);b=L[f+784>>2];c=fa-16|0;L[c+12>>2]=L[f+788>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[f+788>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+792>>2];g=f+364|0;la(g,c,d+4|0,L[e+12>>2]+8|0);c=f+380|0;xa(c,b,g);b=L[f+784>>2];d=fa-16|0;L[d+12>>2]=L[f+788>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+788>>2];e=L[e+12>>2];g=fa-16|0;L[g+12>>2]=L[f+788>>2];h=f+332|0;la(h,d,e+4|0,L[g+12>>2]+8|0);d=f+348|0;xa(d,b,h);ha[L[L[a>>2]+8>>2]](a,c,d,L[f+780>>2]);b=L[f+784>>2];c=fa-16|0;L[c+12>>2]=L[f+792>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[f+788>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+792>>2];g=f+300|0;la(g,c,d+4|0,L[e+12>>2]+8|0);c=f+316|0;xa(c,b,g);b=L[f+784>>2];d=fa-16|0;L[d+12>>2]=L[f+792>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+788>>2];e=L[e+12>>2];g=fa-16|0;L[g+12>>2]=L[f+788>>2];h=f+268|0;la(h,d,e+4|0,L[g+12>>2]+8|0);d=f+284|0;xa(d,b,h);ha[L[L[a>>2]+8>>2]](a,c,d,L[f+780>>2]);b=L[f+784>>2];c=fa-16|0;L[c+12>>2]=L[f+792>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[f+792>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+788>>2];g=f+236|0;la(g,c,d+4|0,L[e+12>>2]+8|0);c=f+252|0;xa(c,b,g);b=L[f+784>>2];d=fa-16|0;L[d+12>>2]=L[f+788>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+792>>2];e=L[e+12>>2];g=fa-16|0;L[g+12>>2]=L[f+788>>2];h=f+204|0;la(h,d,e+4|0,L[g+12>>2]+8|0);d=f+220|0;xa(d,b,h);ha[L[L[a>>2]+8>>2]](a,c,d,L[f+780>>2]);b=L[f+784>>2];c=fa-16|0;L[c+12>>2]=L[f+788>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[f+792>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+788>>2];g=f+172|0;la(g,c,d+4|0,L[e+12>>2]+8|0);c=f+188|0;xa(c,b,g);b=L[f+784>>2];d=fa-16|0;L[d+12>>2]=L[f+788>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+788>>2];e=L[e+12>>2];g=fa-16|0;L[g+12>>2]=L[f+788>>2];h=f+140|0;la(h,d,e+4|0,L[g+12>>2]+8|0);d=f+156|0;xa(d,b,h);ha[L[L[a>>2]+8>>2]](a,c,d,L[f+780>>2]);b=L[f+784>>2];c=fa-16|0;L[c+12>>2]=L[f+788>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[f+788>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+788>>2];g=f+108|0;la(g,c,d+4|0,L[e+12>>2]+8|0);c=f+124|0;xa(c,b,g);b=L[f+784>>2];d=fa-16|0;L[d+12>>2]=L[f+792>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+788>>2];e=L[e+12>>2];g=fa-16|0;L[g+12>>2]=L[f+788>>2];h=f+76|0;la(h,d,e+4|0,L[g+12>>2]+8|0);d=f+92|0;xa(d,b,h);ha[L[L[a>>2]+8>>2]](a,c,d,L[f+780>>2]);b=L[f+784>>2];c=fa-16|0;L[c+12>>2]=L[f+792>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[f+788>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+788>>2];g=f+44|0;la(g,c,d+4|0,L[e+12>>2]+8|0);c=f+60|0;xa(c,b,g);b=L[f+784>>2];d=fa-16|0;L[d+12>>2]=L[f+792>>2];d=L[d+12>>2];e=fa-16|0;L[e+12>>2]=L[f+792>>2];e=L[e+12>>2];g=fa-16|0;L[g+12>>2]=L[f+788>>2];h=f+12|0;la(h,d,e+4|0,L[g+12>>2]+8|0);d=f+28|0;xa(d,b,h);ha[L[L[a>>2]+8>>2]](a,c,d,L[f+780>>2]);fa=f+800|0}function qd(a,b,c){var d=S(0),e=S(0),f=S(0),g=S(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=S(0),q=S(0),r=S(0),s=S(0),t=S(0),u=S(0),v=S(0),w=S(0),y=S(0),z=S(0),A=S(0),B=S(0),C=S(0),D=S(0),F=S(0),G=S(0),H=0,I=0,K=0,N=0,O=0,Q=0,R=0,U=0,V=0,W=0,X=0,Y=0,Z=0;f=P[b+52>>2];e=P[b+56>>2];p=P[a+96>>2];s=P[a+100>>2];t=P[a+104>>2];q=P[b+20>>2];r=P[b+24>>2];k=P[a- -64>>2];o=P[a+80>>2];u=P[a+52>>2];l=P[a+68>>2];v=P[a+84>>2];h=P[a+56>>2];w=P[b+36>>2];i=P[a+72>>2];y=P[b+40>>2];m=P[a+88>>2];d=P[b+48>>2];g=P[b+8>>2];z=P[b>>2];A=P[b+4>>2];B=P[b+16>>2];n=P[a+48>>2];j=P[b+32>>2];L[a+1124>>2]=0;L[a+1108>>2]=0;L[a+1092>>2]=0;L[a+1076>>2]=0;K=a+1104|0;P[K>>2]=S(m*y)+S(S(h*j)+S(i*w));N=a+1100|0;P[N>>2]=S(v*y)+S(S(u*j)+S(l*w));O=a+1096|0;P[O>>2]=S(o*y)+S(S(n*j)+S(k*w));Q=a+1088|0;P[Q>>2]=S(m*r)+S(S(h*B)+S(i*q));R=a+1084|0;P[R>>2]=S(v*r)+S(S(u*B)+S(l*q));U=a+1080|0;P[U>>2]=S(o*r)+S(S(n*B)+S(k*q));V=a+1072|0;P[V>>2]=S(m*g)+S(S(h*z)+S(A*i));W=a+1068|0;P[W>>2]=S(v*g)+S(S(u*z)+S(A*l));P[a+1064>>2]=S(o*g)+S(S(n*z)+S(k*A));X=a+1120|0;P[X>>2]=e+S(S(t*y)+S(S(p*j)+S(w*s)));Y=a+1116|0;P[Y>>2]=f+S(S(t*r)+S(S(p*B)+S(q*s)));Z=a+1112|0;P[Z>>2]=d+S(S(t*g)+S(S(p*z)+S(A*s)));f=P[c+52>>2];e=P[c+56>>2];p=P[a+160>>2];s=P[a+164>>2];t=P[a+168>>2];q=P[c+20>>2];r=P[c+24>>2];k=P[a+128>>2];o=P[a+144>>2];u=P[a+116>>2];l=P[a+132>>2];v=P[a+148>>2];h=P[a+120>>2];i=P[a+136>>2];w=P[c+36>>2];m=P[a+152>>2];y=P[c+40>>2];d=P[c+48>>2];g=P[c+8>>2];z=P[c>>2];A=P[c+4>>2];B=P[c+16>>2];n=P[a+112>>2];j=P[c+32>>2];L[a+1188>>2]=0;L[a+1172>>2]=0;L[a+1156>>2]=0;L[a+1140>>2]=0;P[a+1168>>2]=S(m*y)+S(S(h*j)+S(i*w));P[a+1164>>2]=S(v*y)+S(S(u*j)+S(l*w));P[a+1160>>2]=S(o*y)+S(S(n*j)+S(k*w));P[a+1152>>2]=S(m*r)+S(S(h*B)+S(i*q));P[a+1148>>2]=S(v*r)+S(S(u*B)+S(l*q));P[a+1144>>2]=S(o*r)+S(S(n*B)+S(k*q));P[a+1136>>2]=S(m*g)+S(S(h*z)+S(A*i));P[a+1132>>2]=S(v*g)+S(S(u*z)+S(A*l));P[a+1128>>2]=S(o*g)+S(S(n*z)+S(k*A));H=a+1184|0;P[H>>2]=e+S(S(t*y)+S(S(p*j)+S(w*s)));c=a+1180|0;P[c>>2]=f+S(S(t*r)+S(S(p*B)+S(q*s)));b=a+1176|0;P[b>>2]=d+S(S(t*g)+S(S(p*z)+S(A*s)));L[a+1268>>2]=0;s=P[V>>2];o=P[U>>2];u=P[N>>2];l=P[O>>2];v=P[R>>2];f=S(S(o*u)-S(l*v));t=P[a+1064>>2];h=P[K>>2];i=P[Q>>2];e=S(S(v*h)-S(u*i));k=P[W>>2];d=S(S(i*l)-S(h*o));j=S(S(1)/S(S(s*f)+S(S(t*e)+S(k*d))));m=S(P[H>>2]-P[X>>2]);n=S(P[b>>2]-P[Z>>2]);g=S(S(f*j)*n);f=S(P[c>>2]-P[Y>>2]);p=S(S(S(S(S(t*v)-S(o*k))*j)*m)+S(g+S(f*S(S(S(k*l)-S(u*t))*j))));P[a+1264>>2]=p;l=S(S(S(S(S(s*o)-S(i*t))*j)*m)+S(S(S(d*j)*n)+S(f*S(S(S(t*h)-S(l*s))*j))));P[a+1260>>2]=l;f=S(S(S(S(S(k*i)-S(v*s))*j)*m)+S(S(S(e*j)*n)+S(f*S(S(S(s*u)-S(h*k))*j))));P[a+1256>>2]=f;P[a+840>>2]=f;e=P[a+680>>2];d=P[a+696>>2];a:{if(!(e>d)){if(e>f){L[a+856>>2]=2;d=S(f-e);break a}if(d>2]=1;d=S(f-d);break a}}L[a+856>>2]=0;d=S(0)}P[a+824>>2]=d;P[a+844>>2]=l;e=P[a+684>>2];d=P[a+700>>2];b:{if(!(e>d)){c:{if(!(e>l)){if(!(d>2]=1;d=S(l-d);break b}L[a+860>>2]=2;d=S(l-e);break b}}L[a+860>>2]=0;d=S(0)}P[a+848>>2]=p;P[a+828>>2]=d;e=P[a+688>>2];d=P[a+704>>2];d:{if(!(e>d)){e:{if(!(e>p)){if(!(d>2]=1;d=S(p-d);break d}L[a+864>>2]=2;d=S(p-e);break d}}L[a+864>>2]=0;d=S(0)}P[a+832>>2]=d;C=P[a+1072>>2];g=P[a+1080>>2];z=P[a+1100>>2];A=P[a+1096>>2];k=P[a+1084>>2];o=S(S(g*z)-S(A*k));w=P[a+1064>>2];F=P[a+1104>>2];G=P[a+1088>>2];e=S(S(k*F)-S(z*G));y=P[a+1068>>2];d=S(S(G*A)-S(F*g));D=S(S(1)/S(S(C*o)+S(S(w*e)+S(y*d))));B=P[a+1164>>2];u=S(S(S(C*g)-S(G*w))*D);j=P[a+1132>>2];l=S(d*D);v=S(S(S(w*F)-S(A*C))*D);p=P[a+1148>>2];s=S(S(B*u)+S(S(j*l)+S(v*p)));h=S(S(S(y*G)-S(k*C))*D);i=S(e*D);m=S(S(S(C*z)-S(F*y))*D);t=S(S(B*h)+S(S(j*i)+S(m*p)));n=S(-C);f=S(-G);q=P[a+1160>>2];k=S(S(S(w*k)-S(g*y))*D);r=P[a+1128>>2];e=S(o*D);g=P[a+1144>>2];d=S(S(S(y*A)-S(z*w))*D);o=S(S(q*k)+S(S(r*e)+S(g*d)));f:{g:{if(oS(-1)){P[a+1192>>2]=Za(S(-S(S(B*k)+S(S(j*e)+S(d*p)))),S(S(P[a+1168>>2]*k)+S(S(P[a+1136>>2]*e)+S(d*P[a+1152>>2]))));c=a+1196|0;d=oS(1)?S(1):d;b=(E(e),x(2));H=b&2147483647;h:{if(H>>>0>=1065353216){d=S(+e*1.5707963267948966+752316384526264e-51);if((H|0)==1065353216){break h}d=S(S(0)/S(e-e));break h}i:{if(H>>>0<=1056964607){if(H-8388608>>>0<956301312){break i}d=S(e*e);d=S(S(e*S(S(S(S(d*S(S(d*S(-.008656363002955914))+S(-.04274342209100723)))+S(.16666586697101593))*d)/S(S(d*S(-.7066296339035034))+S(1))))+e);break h}d=S(S(S(1)-S(T(e)))*S(.5));I=_(+d);I=I+I*+S(S(S(S(d*S(S(d*S(-.008656363002955914))+S(-.04274342209100723)))+S(.16666586697101593))*d)/S(S(d*S(-.7066296339035034))+S(1)));d=S(1.5707963267948966-(I+I));e=(b|0)<0?S(-d):d}d=e}P[c>>2]=d;d=Za(S(-S(S(q*u)+S(S(r*l)+S(g*v)))),S(S(q*h)+S(S(r*i)+S(g*m))));break f}L[a+1196>>2]=-1077342245;P[a+1192>>2]=-Za(t,s);break g}L[a+1196>>2]=1070141403;P[a+1192>>2]=Za(t,s)}d=S(0)}L[a+1236>>2]=0;P[a+1200>>2]=d;L[a+1252>>2]=0;L[a+1220>>2]=0;h=S(S(C*g)+S(r*f));i=S(S(G*q)-S(g*F));m=S(S(F*r)+S(q*n));d=S(S(1)/S(_(S(S(h*h)+S(S(i*i)+S(m*m))))));P[a+1232>>2]=h*d;P[a+1228>>2]=m*d;P[a+1224>>2]=i*d;f=S(S(r*m)-S(i*g));e=S(S(g*h)-S(m*q));d=S(S(q*i)-S(h*r));n=S(S(1)/S(_(S(S(f*f)+S(S(e*e)+S(d*d))))));P[a+1248>>2]=f*n;P[a+1244>>2]=d*n;P[a+1240>>2]=e*n;f=S(S(i*G)-S(C*m));e=S(S(m*F)-S(G*h));d=S(S(h*C)-S(F*i));n=S(S(1)/S(_(S(S(f*f)+S(S(e*e)+S(d*d))))));P[a+1216>>2]=f*n;P[a+1212>>2]=d*n;P[a+1208>>2]=e*n;if(M[a+1301|0]){d=P[L[a+28>>2]+344>>2];e=P[L[a+32>>2]+344>>2];J[a+1280|0]=dS(0)?S(e/d):S(.5);P[a+1272>>2]=d;P[a+1276>>2]=S(1)-d}}function iC(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=S(0),l=S(0),m=S(0),n=S(0),o=0,p=S(0),q=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=0,D=S(0),E=0,F=0;a=fa-4240|0;fa=a;F=L[c+4>>2]-17>>>0<=1?L[d+4>>2]-17>>>0<2:F;while(1){Ie();q=w<<4;k=P[q+31464>>2];n=P[q+31456>>2];l=P[q+31460>>2];r=P[e+32>>2];s=P[e>>2];t=P[e+16>>2];p=P[e+36>>2];x=P[e+4>>2];y=P[e+20>>2];z=P[e+40>>2];m=P[e+8>>2];A=P[e+24>>2];u=q+(a+1264|0)|0;L[u+12>>2]=0;B=m;m=S(-n);P[u+8>>2]=S(S(B*m)-S(A*l))-S(z*k);P[u+4>>2]=S(S(x*m)-S(y*l))-S(p*k);P[u>>2]=S(S(s*m)-S(t*l))-S(r*k);m=P[f+32>>2];r=P[f>>2];s=P[f+16>>2];t=P[f+36>>2];p=P[f+4>>2];x=P[f+20>>2];y=P[f+40>>2];z=P[f+8>>2];A=P[f+24>>2];q=q+(a+272|0)|0;L[q+12>>2]=0;P[q+8>>2]=S(y*k)+S(S(z*n)+S(l*A));P[q+4>>2]=S(t*k)+S(S(p*n)+S(l*x));P[q>>2]=S(m*k)+S(S(r*n)+S(l*s));w=w+1|0;if((w|0)!=42){continue}break}q=42;E=ha[L[L[c>>2]+84>>2]](c)|0;if((E|0)>0){u=a+3256|0;w=0;while(1){ha[L[L[c>>2]+88>>2]](c,w,a+3248|0);m=P[e+8>>2];r=P[e>>2];s=P[e+4>>2];t=P[e+24>>2];p=P[e+16>>2];x=P[e+20>>2];k=P[u>>2];l=P[a+3248>>2];n=P[a+3252>>2];P[u>>2]=S(P[e+40>>2]*k)+S(S(P[e+32>>2]*l)+S(n*P[e+36>>2]));L[a+3260>>2]=0;P[a+3252>>2]=S(t*k)+S(S(p*l)+S(n*x));P[a+3248>>2]=S(m*k)+S(S(r*l)+S(s*n));Ie();C=L[u+4>>2];o=q<<4;v=o+31464|0;L[v>>2]=L[u>>2];L[v+4>>2]=C;C=L[a+3252>>2];v=o+31456|0;L[v>>2]=L[a+3248>>2];L[v+4>>2]=C;r=P[e+40>>2];s=P[e+8>>2];t=P[e+24>>2];p=P[e+36>>2];x=P[e+4>>2];y=P[e+20>>2];l=P[e+32>>2];k=P[e>>2];z=P[e+16>>2];v=o+(a+1264|0)|0;L[v+12>>2]=0;n=P[a+3248>>2];m=S(-n);D=S(k*m);k=P[a+3252>>2];B=l;l=P[u>>2];P[v>>2]=S(D-S(z*k))-S(B*l);P[v+4>>2]=S(S(x*m)-S(y*k))-S(p*l);P[v+8>>2]=S(S(s*m)-S(t*k))-S(r*l);m=P[f+32>>2];r=P[f>>2];s=P[f+16>>2];t=P[f+36>>2];p=P[f+4>>2];x=P[f+20>>2];y=P[f+40>>2];z=P[f+8>>2];A=P[f+24>>2];o=o+(a+272|0)|0;L[o+12>>2]=0;P[o+8>>2]=S(y*l)+S(S(z*n)+S(k*A));P[o+4>>2]=S(t*l)+S(S(p*n)+S(k*x));P[o>>2]=S(m*l)+S(S(r*n)+S(k*s));q=q+1|0;w=w+1|0;if((E|0)!=(w|0)){continue}break}}E=ha[L[L[d>>2]+84>>2]](d)|0;if((E|0)>0){u=a+3256|0;w=0;while(1){ha[L[L[d>>2]+88>>2]](d,w,a+3248|0);m=P[f+8>>2];r=P[f>>2];s=P[f+4>>2];t=P[f+24>>2];p=P[f+16>>2];x=P[f+20>>2];k=P[u>>2];l=P[a+3248>>2];n=P[a+3252>>2];P[u>>2]=S(P[f+40>>2]*k)+S(S(P[f+32>>2]*l)+S(n*P[f+36>>2]));L[a+3260>>2]=0;P[a+3252>>2]=S(t*k)+S(S(p*l)+S(n*x));P[a+3248>>2]=S(m*k)+S(S(r*l)+S(s*n));Ie();C=L[u+4>>2];o=q<<4;v=o+31464|0;L[v>>2]=L[u>>2];L[v+4>>2]=C;C=L[a+3252>>2];v=o+31456|0;L[v>>2]=L[a+3248>>2];L[v+4>>2]=C;r=P[e+40>>2];s=P[e+8>>2];t=P[e+24>>2];p=P[e+36>>2];x=P[e+4>>2];y=P[e+20>>2];l=P[e+32>>2];k=P[e>>2];z=P[e+16>>2];v=o+(a+1264|0)|0;L[v+12>>2]=0;n=P[a+3248>>2];m=S(-n);D=S(k*m);k=P[a+3252>>2];B=l;l=P[u>>2];P[v>>2]=S(D-S(z*k))-S(B*l);P[v+4>>2]=S(S(x*m)-S(y*k))-S(p*l);P[v+8>>2]=S(S(s*m)-S(t*k))-S(r*l);m=P[f+32>>2];r=P[f>>2];s=P[f+16>>2];t=P[f+36>>2];p=P[f+4>>2];x=P[f+20>>2];y=P[f+40>>2];z=P[f+8>>2];A=P[f+24>>2];o=o+(a+272|0)|0;L[o+12>>2]=0;P[o+8>>2]=S(y*l)+S(S(z*n)+S(k*A));P[o+4>>2]=S(t*l)+S(S(p*n)+S(k*x));P[o>>2]=S(m*l)+S(S(r*n)+S(k*s));q=q+1|0;w=w+1|0;if((E|0)!=(w|0)){continue}break}}ha[L[L[c>>2]+76>>2]](c,a+1264|0,a+3248|0,q);ha[L[L[d>>2]+76>>2]](d,a+272|0,a+2256|0,q);a:{if((q|0)<=0){m=S(0xde0b6b000000000);k=S(0);l=S(0);n=S(0);x=S(0);break a}w=0;m=S(0xde0b6b000000000);x=S(0);n=S(0);l=S(0);k=S(0);while(1){Ie();u=w<<4;r=F?S(0):P[u+31464>>2];s=P[u+31456>>2];t=P[u+31460>>2];b:{if(!(+S(S(r*r)+S(S(s*s)+S(t*t)))>.01)){break b}o=u+(a+2256|0)|0;p=P[o+8>>2];y=P[o>>2];z=P[o+4>>2];o=u+(a+3248|0)|0;A=P[o+8>>2];D=P[o>>2];B=P[o+4>>2];p=S(S(r*(F?S(0):S(S(S(S(p*P[f+40>>2])+S(S(y*P[f+32>>2])+S(z*P[f+36>>2])))+P[f+56>>2])-S(S(S(A*P[e+40>>2])+S(S(D*P[e+32>>2])+S(B*P[e+36>>2])))+P[e+56>>2]))))+S(S(s*S(S(S(S(p*P[f+8>>2])+S(S(y*P[f>>2])+S(z*P[f+4>>2])))+P[f+48>>2])-S(S(S(A*P[e+8>>2])+S(S(D*P[e>>2])+S(B*P[e+4>>2])))+P[e+48>>2])))+S(t*S(S(S(S(p*P[f+24>>2])+S(S(y*P[f+16>>2])+S(z*P[f+20>>2])))+P[f+52>>2])-S(S(S(A*P[e+24>>2])+S(S(D*P[e+16>>2])+S(B*P[e+20>>2])))+P[e+52>>2])))));if(!(p>2];k=s;l=t;n=r;m=p}w=w+1|0;if((w|0)!=(q|0)){continue}break}}Dc(c);Dc(d);q=0;if(!(m>2];p=P[e+56>>2];y=P[e+48>>2];d=L[e+12>>2];c=a- -64|0;L[c>>2]=L[e+8>>2];L[c+4>>2]=d;c=L[e+4>>2];L[a+56>>2]=L[e>>2];L[a+60>>2]=c;c=L[e+28>>2];L[a+80>>2]=L[e+24>>2];L[a+84>>2]=c;c=L[e+20>>2];L[a+72>>2]=L[e+16>>2];L[a+76>>2]=c;c=L[e+40>>2];d=L[e+44>>2];w=L[e+32>>2];e=L[e+36>>2];L[a+116>>2]=0;L[a+96>>2]=c;L[a+100>>2]=d;m=S(m+S(S(r+s)+S(.5)));P[a+112>>2]=p+S(n*m);P[a+108>>2]=t+S(l*m);L[a+88>>2]=w;L[a+92>>2]=e;P[a+104>>2]=y+S(k*m);c=L[f+12>>2];L[a+128>>2]=L[f+8>>2];L[a+132>>2]=c;c=L[f+4>>2];L[a+120>>2]=L[f>>2];L[a+124>>2]=c;c=L[f+28>>2];L[a+144>>2]=L[f+24>>2];L[a+148>>2]=c;c=L[f+20>>2];L[a+136>>2]=L[f+16>>2];L[a+140>>2]=c;c=L[f+44>>2];L[a+160>>2]=L[f+40>>2];L[a+164>>2]=c;c=L[f+36>>2];L[a+152>>2]=L[f+32>>2];L[a+156>>2]=c;c=L[f+60>>2];L[a+176>>2]=L[f+56>>2];L[a+180>>2]=c;c=L[f+52>>2];L[a+168>>2]=L[f+48>>2];L[a+172>>2]=c;L[a+184>>2]=1566444395;J[a+52|0]=0;L[a+12>>2]=18720;L[b+16>>2]=0;P[b+12>>2]=-n;P[b+8>>2]=-l;P[b+4>>2]=-k;wb(b,a+56|0,a+12|0,j,0);b=M[a+52|0];if(b){r=P[a+36>>2];s=P[a+40>>2];t=P[a+32>>2];p=P[a+48>>2];L[h+12>>2]=0;m=S(m-p);P[h+8>>2]=s-S(n*m);P[h+4>>2]=r-S(l*m);P[h>>2]=t-S(k*m);c=L[a+44>>2];L[i+8>>2]=L[a+40>>2];L[i+12>>2]=c;c=L[a+36>>2];L[i>>2]=L[a+32>>2];L[i+4>>2]=c;P[g+12>>2]=x;P[g+8>>2]=n;P[g+4>>2]=l;P[g>>2]=k}q=(b|0)!=0}fa=a+4240|0;return q|0}function Dm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;L[a+168>>2]=L[a+152>>2];Jm(b);c=L[a+56>>2];a:{if(d){L[b+56>>2]=c<<24|(c&65280)<<8|(c>>>8&65280|c>>>24);J[b+4|0]=M[a+7|0];J[b+5|0]=M[a+6|0];J[b+6|0]=M[a+5|0];J[b+7|0]=M[a+4|0];J[b+8|0]=M[a+11|0];J[b+9|0]=M[a+10|0];J[b+10|0]=M[a+9|0];J[b+11|0]=M[a+8|0];J[b+12|0]=M[a+15|0];J[b+13|0]=M[a+14|0];J[b+14|0]=M[a+13|0];J[b+15|0]=M[a+12|0];J[b+16|0]=M[a+19|0];J[b+17|0]=M[a+18|0];J[b+18|0]=M[a+17|0];J[b+19|0]=M[a+16|0];J[b+20|0]=M[a+23|0];J[b+21|0]=M[a+22|0];J[b+22|0]=M[a+21|0];J[b+23|0]=M[a+20|0];J[b+24|0]=M[a+27|0];J[b+25|0]=M[a+26|0];J[b+26|0]=M[a+25|0];J[b+27|0]=M[a+24|0];J[b+28|0]=M[a+31|0];J[b+29|0]=M[a+30|0];J[b+30|0]=M[a+29|0];J[b+31|0]=M[a+28|0];J[b+32|0]=M[a+35|0];J[b+33|0]=M[a+34|0];J[b+34|0]=M[a+33|0];J[b+35|0]=M[a+32|0];J[b+36|0]=M[a+39|0];J[b+37|0]=M[a+38|0];J[b+38|0]=M[a+37|0];J[b+39|0]=M[a+36|0];J[b+40|0]=M[a+43|0];J[b+41|0]=M[a+42|0];J[b+42|0]=M[a+41|0];J[b+43|0]=M[a+40|0];J[b+44|0]=M[a+47|0];J[b+45|0]=M[a+46|0];J[b+46|0]=M[a+45|0];J[b+47|0]=M[a+44|0];J[b+48|0]=M[a+51|0];J[b+49|0]=M[a+50|0];J[b+50|0]=M[a+49|0];J[b+51|0]=M[a+48|0];c=L[a+168>>2];g=c<<24|(c&65280)<<8|(c>>>8&65280|c>>>24);c=L[a+144>>2];c=c<<24|(c&65280)<<8|(c>>>8&65280|c>>>24);break a}L[b+56>>2]=c;c=L[a+16>>2];L[b+12>>2]=L[a+12>>2];L[b+16>>2]=c;c=L[a+8>>2];L[b+4>>2]=L[a+4>>2];L[b+8>>2]=c;c=L[a+32>>2];L[b+28>>2]=L[a+28>>2];L[b+32>>2]=c;c=L[a+24>>2];L[b+20>>2]=L[a+20>>2];L[b+24>>2]=c;c=L[a+48>>2];L[b+44>>2]=L[a+44>>2];L[b+48>>2]=c;c=L[a+40>>2];L[b+36>>2]=L[a+36>>2];L[b+40>>2]=c;g=L[a+168>>2];c=L[a+144>>2]}L[b+168>>2]=g;L[b+144>>2]=c;J[b+60|0]=M[a+60|0];i=b+172|0;j=L[a+56>>2];b:{if(M[a+60|0]){c=L[b+136>>2];if(!(c?!c|!M[b+140|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[b+136>>2]=i;J[b+140|0]=0;c:{if(!d){if((j|0)<=0){break c}h=L[a+136>>2];g=0;while(1){c=g<<4;f=c+i|0;c=c+h|0;K[f>>1]=N[c>>1];K[f+2>>1]=N[c+2>>1];K[f+4>>1]=N[c+4>>1];K[f+6>>1]=N[c+6>>1];K[f+8>>1]=N[c+8>>1];K[f+10>>1]=N[c+10>>1];L[f+12>>2]=L[c+12>>2];g=g+1|0;if((j|0)!=(g|0)){continue}break}break c}if((j|0)<=0){break c}h=L[a+136>>2];g=0;while(1){c=g<<4;e=c+i|0;f=c+h|0;c=N[f>>1];K[e>>1]=c<<8|c>>>8;c=N[f+2>>1];K[e+2>>1]=c<<8|c>>>8;c=N[f+4>>1];K[e+4>>1]=c<<8|c>>>8;c=N[f+6>>1];K[e+6>>1]=c<<8|c>>>8;c=N[f+8>>1];K[e+8>>1]=c<<8|c>>>8;c=N[f+10>>1];K[e+10>>1]=c<<8|c>>>8;c=L[f+12>>2];L[e+12>>2]=c<<24|(c&65280)<<8|(c>>>8&65280|c>>>24);g=g+1|0;if((j|0)!=(g|0)){continue}break}}h=b+128|0;g=j<<4;break b}c=L[b+96>>2];if(!(c?!c|!M[b+100|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[b+96>>2]=i;J[b+100|0]=0;L[b+92>>2]=j;h=b+88|0;L[h>>2]=j;d:{if(!d){c=i;if((j|0)<=0){break d}l=L[a+96>>2];g=0;while(1){k=g<<6;e=k+c|0;f=k+l|0;c=L[f+4>>2];L[e>>2]=L[f>>2];L[e+4>>2]=c;c=L[f+12>>2];L[e+8>>2]=L[f+8>>2];L[e+12>>2]=c;f=k+L[a+96>>2]|0;c=L[f+20>>2];e=k+L[b+96>>2]|0;L[e+16>>2]=L[f+16>>2];L[e+20>>2]=c;c=L[f+28>>2];L[e+24>>2]=L[f+24>>2];L[e+28>>2]=c;c=L[b+96>>2];e=k+c|0;l=L[a+96>>2];f=k+l|0;L[e+32>>2]=L[f+32>>2];L[e+36>>2]=L[f+36>>2];L[e+40>>2]=L[f+40>>2];g=g+1|0;if((j|0)!=(g|0)){continue}break}break d}c=i;if((j|0)<=0){break d}k=L[a+96>>2];while(1){f=l<<6;e=f+c|0;c=f+k|0;J[e|0]=M[c+3|0];J[e+1|0]=M[c+2|0];J[e+2|0]=M[c+1|0];J[e+3|0]=M[c|0];J[e+4|0]=M[c+7|0];J[e+5|0]=M[c+6|0];J[e+6|0]=M[c+5|0];J[e+7|0]=M[c+4|0];J[e+8|0]=M[c+11|0];J[e+9|0]=M[c+10|0];J[e+10|0]=M[c+9|0];J[e+11|0]=M[c+8|0];J[e+12|0]=M[c+15|0];J[e+13|0]=M[c+14|0];J[e+14|0]=M[c+13|0];J[e+15|0]=M[c+12|0];e=f+L[b+96>>2]|0;c=f+L[a+96>>2]|0;J[e+16|0]=M[c+19|0];J[e+17|0]=M[c+18|0];J[e+18|0]=M[c+17|0];J[e+19|0]=M[c+16|0];J[e+20|0]=M[c+23|0];J[e+21|0]=M[c+22|0];J[e+22|0]=M[c+21|0];J[e+23|0]=M[c+20|0];J[e+24|0]=M[c+27|0];J[e+25|0]=M[c+26|0];J[e+26|0]=M[c+25|0];J[e+27|0]=M[c+24|0];J[e+28|0]=M[c+31|0];J[e+29|0]=M[c+30|0];J[e+30|0]=M[c+29|0];J[e+31|0]=M[c+28|0];c=L[b+96>>2];e=f+c|0;k=L[a+96>>2];f=f+k|0;g=L[f+32>>2];L[e+32>>2]=g<<24|(g&65280)<<8|(g>>>8&65280|g>>>24);g=L[f+36>>2];L[e+36>>2]=g<<24|(g&65280)<<8|(g>>>8&65280|g>>>24);f=L[f+40>>2];L[e+40>>2]=f<<24|(f&65280)<<8|(f>>>8&65280|f>>>24);l=l+1|0;if((j|0)!=(l|0)){continue}break}}g=j<<6;if(!M[b+100|0]){break b}if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}}L[h>>2]=0;L[h+4>>2]=0;J[h+5|0]=0;J[h+6|0]=0;J[h+7|0]=0;J[h+8|0]=0;J[h+9|0]=0;J[h+10|0]=0;J[h+11|0]=0;J[h+12|0]=0;h=g+i|0;i=L[a+168>>2];c=L[b+160>>2];if(!(c?!c|!M[b+164|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[b+160>>2]=h;J[b+164|0]=0;L[b+156>>2]=i;L[b+152>>2]=i;i=L[a+168>>2];e:{if(!d){if((i|0)<=0){break e}i=L[a+160>>2];d=0;while(1){c=d<<5;f=c+h|0;c=c+i|0;K[f>>1]=N[c>>1];K[f+2>>1]=N[c+2>>1];K[f+4>>1]=N[c+4>>1];K[f+6>>1]=N[c+6>>1];K[f+8>>1]=N[c+8>>1];K[f+10>>1]=N[c+10>>1];L[f+12>>2]=L[c+12>>2];c=L[c+16>>2];L[f+28>>2]=0;L[f+20>>2]=0;L[f+24>>2]=0;L[f+16>>2]=c;d=d+1|0;if((d|0)>2]){continue}break}break e}if((i|0)<=0){break e}c=L[a+160>>2];d=0;while(1){a=d<<5;e=a+h|0;f=a+c|0;a=N[f>>1];K[e>>1]=a<<8|a>>>8;a=N[f+2>>1];K[e+2>>1]=a<<8|a>>>8;a=N[f+4>>1];K[e+4>>1]=a<<8|a>>>8;a=N[f+6>>1];K[e+6>>1]=a<<8|a>>>8;a=N[f+8>>1];K[e+8>>1]=a<<8|a>>>8;a=N[f+10>>1];K[e+10>>1]=a<<8|a>>>8;a=L[f+12>>2];L[e+12>>2]=a<<24|(a&65280)<<8|(a>>>8&65280|a>>>24);a=L[f+16>>2];L[e+16>>2]=a<<24|(a&65280)<<8|(a>>>8&65280|a>>>24);d=d+1|0;if((i|0)!=(d|0)){continue}break}}if(h?M[b+164|0]:0){L[8514]=L[8514]+1;ha[L[6799]](h)}L[b>>2]=0;J[b+157|0]=0;J[b+158|0]=0;J[b+159|0]=0;J[b+160|0]=0;J[b+161|0]=0;J[b+162|0]=0;J[b+163|0]=0;J[b+164|0]=0;L[b+152>>2]=0;L[b+156>>2]=0;return 1}function Tk(a,b){a=a|0;b=S(b);var c=0,d=0,e=0,f=0,g=S(0),h=0,i=S(0),j=0,k=0,l=S(0),m=S(0),n=S(0),o=S(0),p=0,q=S(0),r=0,s=0,t=0,u=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=S(0),F=S(0),G=S(0),H=0,I=S(0),O=S(0);wa(3084);d=L[a+84>>2];if(d){ha[d|0](a,b)}ha[L[L[a>>2]+140>>2]](a,b);L[a+32>>2]=0;P[a+28>>2]=b;L[a+48>>2]=ha[L[L[a>>2]+20>>2]](a);c=fa-464|0;fa=c;wa(2572);wa(2833);if(L[a+308>>2]>0){while(1){d=L[a+24>>2];ha[L[L[d>>2]+16>>2]](d,L[L[a+316>>2]+(k<<2)>>2]);k=k+1|0;if((k|0)>2]){continue}break}}d=L[a+316>>2];if(!(d?!d|!M[a+320|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[a+316>>2]=0;J[a+320|0]=1;L[a+308>>2]=0;L[a+312>>2]=0;va();if(L[a+232>>2]>0){s=c- -64|0;k=0;while(1){e=L[L[a+240>>2]+(k<<2)>>2];L[e+244>>2]=1065353216;a:{b:{switch(L[e+216>>2]-2|0){case 0:case 3:break a;default:break b}}if(M[e+204|0]&3){break a}ue(e,b,c+400|0);if(!M[a+44|0]){break a}g=P[e+252>>2];g=S(g*g);if(g==S(0)){break a}i=S(P[c+456>>2]-P[e+60>>2]);l=S(i*i);i=S(P[c+448>>2]-P[e+52>>2]);q=S(i*i);i=S(P[c+452>>2]-P[e+56>>2]);if(!(g>2]+4>>2]<=19){L[8289]=L[8289]+1;d=L[a+68>>2];d=ha[L[L[d>>2]+36>>2]](d)|0;h=L[a+24>>2];L[c+308>>2]=1065353216;L[c+312>>2]=-65535;f=L[e+64>>2];L[c+324>>2]=L[e+60>>2];L[c+328>>2]=f;f=L[e+56>>2];L[c+316>>2]=L[e+52>>2];L[c+320>>2]=f;f=L[c+460>>2];L[c+340>>2]=L[c+456>>2];L[c+344>>2]=f;f=L[c+452>>2];L[c+332>>2]=L[c+448>>2];L[c+336>>2]=f;L[c+396>>2]=h;L[c+392>>2]=d;L[c+388>>2]=0;L[c+304>>2]=20724;L[c+380>>2]=0;L[c+384>>2]=e;g=P[e+248>>2];h=c+252|0;d=h;L[d+4>>2]=35;L[d+8>>2]=0;L[d>>2]=14328;L[d+44>>2]=1025758986;L[d+12>>2]=1065353216;L[d+16>>2]=1065353216;L[d>>2]=14044;L[d+20>>2]=1065353216;L[d+24>>2]=0;L[d>>2]=16192;P[c+296>>2]=g;P[c+280>>2]=g;L[c+256>>2]=8;P[c+388>>2]=P[a+56>>2];d=L[e+188>>2];K[c+312>>1]=N[d+4>>1];K[c+314>>1]=N[d+6>>1];d=L[c+412>>2];L[c+192>>2]=L[c+408>>2];L[c+196>>2]=d;d=L[c+404>>2];L[c+184>>2]=L[c+400>>2];L[c+188>>2]=d;d=L[c+428>>2];L[c+208>>2]=L[c+424>>2];L[c+212>>2]=d;d=L[c+420>>2];L[c+200>>2]=L[c+416>>2];L[c+204>>2]=d;d=L[c+444>>2];L[c+224>>2]=L[c+440>>2];L[c+228>>2]=d;d=L[c+436>>2];L[c+216>>2]=L[c+432>>2];L[c+220>>2]=d;d=L[c+460>>2];L[c+240>>2]=L[c+456>>2];L[c+244>>2]=d;d=L[c+452>>2];L[c+232>>2]=L[c+448>>2];L[c+236>>2]=d;d=e+4|0;f=L[d+12>>2];L[c+192>>2]=L[d+8>>2];L[c+196>>2]=f;f=L[d+4>>2];L[c+184>>2]=L[d>>2];L[c+188>>2]=f;f=L[e+32>>2];L[c+208>>2]=L[e+28>>2];L[c+212>>2]=f;f=L[e+24>>2];L[c+200>>2]=L[e+20>>2];L[c+204>>2]=f;f=L[e+48>>2];L[c+224>>2]=L[e+44>>2];L[c+228>>2]=f;f=L[e+40>>2];L[c+216>>2]=L[e+36>>2];L[c+220>>2]=f;Ab(a,h,d,c+184|0,c+304|0,S(0));g=P[c+308>>2];if(g>2]-P[e+52>>2]));n=S(g*S(P[c+452>>2]-P[e+56>>2]));o=S(g*S(P[c+456>>2]-P[e+60>>2]));G=S(S(S(m*S(-P[c+348>>2]))-S(n*P[c+352>>2]))-S(o*P[c+356>>2]));d=L[a+24>>2];u=ha[L[L[d>>2]+12>>2]](d,e,L[c+380>>2])|0;d=L[a+308>>2];c:{if((d|0)!=L[a+312>>2]){break c}t=d?d<<1:1;if((t|0)<=(d|0)){break c}d:{if(!t){h=0;break d}L[8513]=L[8513]+1;h=ha[L[6798]](t<<2,16)|0;d=L[a+308>>2]}e:{if((d|0)<=0){break e}v=0;f=0;if(d>>>0>=4){H=d&-4;p=0;while(1){j=f<<2;L[j+h>>2]=L[j+L[a+316>>2]>>2];r=j|4;L[r+h>>2]=L[r+L[a+316>>2]>>2];r=j|8;L[r+h>>2]=L[r+L[a+316>>2]>>2];j=j|12;L[j+h>>2]=L[j+L[a+316>>2]>>2];f=f+4|0;p=p+4|0;if((H|0)!=(p|0)){continue}break}}j=d&3;if(!j){break e}while(1){p=f<<2;L[p+h>>2]=L[p+L[a+316>>2]>>2];f=f+1|0;v=v+1|0;if((j|0)!=(v|0)){continue}break}}f=L[a+316>>2];if(!(!f|!M[a+320|0])){if(f){L[8514]=L[8514]+1;ha[L[6799]](f)}d=L[a+308>>2]}L[a+316>>2]=h;J[a+320|0]=1;L[a+312>>2]=t}L[L[a+316>>2]+(d<<2)>>2]=u;L[a+308>>2]=d+1;d=L[c+380>>2];y=P[d+20>>2];z=P[d+36>>2];A=P[d+40>>2];B=P[d+8>>2];C=P[d+24>>2];g=P[d+60>>2];I=P[d+52>>2];i=P[d+56>>2];D=P[d+44>>2];l=P[d+12>>2];E=P[d+28>>2];F=P[d+4>>2];q=P[e+60>>2];w=P[e+52>>2];O=P[e+56>>2];L[c+8>>2]=0;L[c+12>>2]=0;L[c>>2]=0;L[c+4>>2]=0;L[c+28>>2]=0;o=S(o+q);m=S(m+w);n=S(n+O);w=S(S(D*o)+S(S(l*m)+S(E*n)));q=l;l=S(-I);P[c+24>>2]=w+S(S(S(q*l)-S(E*i))-S(D*g));P[c+20>>2]=S(S(o*A)+S(S(m*B)+S(n*C)))+S(S(S(B*l)-S(C*i))-S(A*g));P[c+16>>2]=S(S(o*z)+S(S(m*F)+S(n*y)))+S(S(S(F*l)-S(y*i))-S(z*g));d=L[c+360>>2];L[s+8>>2]=L[c+356>>2];L[s+12>>2]=d;d=L[c+352>>2];L[s>>2]=L[c+348>>2];L[s+4>>2]=d;J[c+116|0]=0;L[c+112>>2]=0;L[c+92>>2]=0;L[c+84>>2]=0;L[c+88>>2]=0;P[c+80>>2]=G;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;d=R(Fl(u,c),184)+u|0;L[d+96>>2]=0;g=S(P[e+224>>2]*P[L[c+380>>2]+224>>2]);g=g>2]=g>S(10)?S(10):g;h=L[e+56>>2];L[d+52>>2]=L[e+52>>2];L[d+56>>2]=h;h=L[e+64>>2];L[d+60>>2]=L[e+60>>2];L[d+64>>2]=h;L[d+48>>2]=0;P[d+44>>2]=o;P[d+40>>2]=n;P[d+36>>2]=m}}va()}k=k+1|0;if((k|0)>2]){continue}break}}va();fa=c+464|0;ha[L[L[a>>2]+44>>2]](a);ha[L[L[a>>2]+148>>2]](a);P[a+104>>2]=b;ha[L[L[a>>2]+152>>2]](a,a+92|0);ha[L[L[a>>2]+144>>2]](a,b);wa(2678);if(L[a+280>>2]>0){while(1){d=L[L[a+288>>2]+(x<<2)>>2];ha[L[L[d>>2]+8>>2]](d,a,b);x=x+1|0;if((x|0)>2]){continue}break}}va();ha[L[L[a>>2]+156>>2]](a,b);d=L[a+80>>2];if(d){ha[d|0](a,b)}va()}function cq(a,b,c){a=a|0;b=b|0;c=S(c);var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=S(0),p=S(0),q=S(0);m=fa-16|0;fa=m;L[m+12>>2]=a;L[m+8>>2]=b;P[m+4>>2]=c;a=L[m+8>>2];o=P[m+4>>2];b=0;l=fa-32|0;fa=l;d=L[m+12>>2];if(L[d+716>>2]==L[d+712>>2]){h=L[d+720>>2];g=L[d+712>>2];a:{if((g|0)<=0){break a}if((g|0)!=1){i=g&-2;while(1){k=L[(L[d+720>>2]+R(e,104)|0)+96>>2];if(k){L[k+36>>2]=e}k=e|1;n=L[(L[d+720>>2]+R(k,104)|0)+96>>2];if(n){L[n+36>>2]=k}e=e+2|0;f=f+2|0;if((i|0)!=(f|0)){continue}break}}if(!(g&1)){break a}f=L[(L[d+720>>2]+R(e,104)|0)+96>>2];if(!f){break a}L[f+36>>2]=e}g=g?h:0;f=L[d+732>>2];if((f|0)>0){e=0;while(1){h=R(e,52);i=h+L[d+740>>2]|0;L[i+8>>2]=(L[i+8>>2]-g|0)/104;h=h+L[d+740>>2]|0;L[h+12>>2]=(L[h+12>>2]-g|0)/104;e=e+1|0;if((f|0)!=(e|0)){continue}break}}h=L[d+752>>2];if((h|0)>0){f=0;while(1){e=R(f,44);i=e+L[d+760>>2]|0;L[i+8>>2]=(L[i+8>>2]-g|0)/104;i=e+L[d+760>>2]|0;L[i+12>>2]=(L[i+12>>2]-g|0)/104;i=e+L[d+760>>2]|0;L[i+16>>2]=(L[i+16>>2]-g|0)/104;e=L[(e+L[d+760>>2]|0)+40>>2];if(e){L[e+36>>2]=f}f=f+1|0;if((h|0)!=(f|0)){continue}break}}f=L[d+792>>2];b:{if((f|0)<=0){break b}h=L[d+800>>2];e=0;if((f|0)!=1){k=f&-2;i=0;while(1){n=h+R(e,96)|0;L[n>>2]=(L[n>>2]-g|0)/104;n=h+R(e|1,96)|0;L[n>>2]=(L[n>>2]-g|0)/104;e=e+2|0;i=i+2|0;if((k|0)!=(i|0)){continue}break}}if(!(f&1)){break b}e=h+R(e,96)|0;L[e>>2]=(L[e>>2]-g|0)/104}k=L[d+692>>2];if((k|0)>0){f=L[d+700>>2];h=0;while(1){e=0;i=R(h,60);if(L[(i+f|0)+24>>2]>0){while(1){f=(f+i|0)+(e<<2)|0;L[f+28>>2]=(L[f+28>>2]-g|0)/104;e=e+1|0;f=L[d+700>>2];if((e|0)>2]){continue}break}}h=h+1|0;if((k|0)!=(h|0)){continue}break}}g=L[d+712>>2]<<1|1;if((g|0)>L[d+716>>2]){L[8513]=L[8513]+1;e=ha[L[6798]](R(g,104),16)|0;f=L[d+712>>2];c:{if((f|0)<=0){break c}if((f|0)!=1){h=f&-2;while(1){i=R(j,104);qa(i+e|0,i+L[d+720>>2]|0,104);i=R(j|1,104);qa(i+e|0,i+L[d+720>>2]|0,104);j=j+2|0;b=b+2|0;if((h|0)!=(b|0)){continue}break}}if(!(f&1)){break c}b=R(j,104);qa(b+e|0,b+L[d+720>>2]|0,104)}b=L[d+720>>2];if(!(b?!b|!M[d+724|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[d+720>>2]=e;J[d+724|0]=1;L[d+716>>2]=g}b=0;f=0;j=L[d+720>>2];e=L[d+712>>2];d:{if((e|0)<=0){break d}if((e|0)!=1){g=e&-2;while(1){h=L[d+720>>2]+R(b,104)|0;i=L[h+96>>2];if(i){L[i+36>>2]=h}h=L[d+720>>2]+R(b|1,104)|0;i=L[h+96>>2];if(i){L[i+36>>2]=h}b=b+2|0;f=f+2|0;if((g|0)!=(f|0)){continue}break}}if(!(e&1)){break d}b=L[d+720>>2]+R(b,104)|0;f=L[b+96>>2];if(!f){break d}L[f+36>>2]=b}e=e?j:0;j=L[d+732>>2];e:{if((j|0)<=0){break e}b=0;if((j|0)!=1){g=j&-2;f=0;while(1){h=R(b,52);i=h+L[d+740>>2]|0;L[i+8>>2]=e+R(L[i+8>>2],104);h=h+L[d+740>>2]|0;L[h+12>>2]=e+R(L[h+12>>2],104);h=R(b|1,52);i=h+L[d+740>>2]|0;L[i+8>>2]=e+R(L[i+8>>2],104);h=h+L[d+740>>2]|0;L[h+12>>2]=e+R(L[h+12>>2],104);b=b+2|0;f=f+2|0;if((g|0)!=(f|0)){continue}break}}if(!(j&1)){break e}b=R(b,52);f=b+L[d+740>>2]|0;L[f+8>>2]=e+R(L[f+8>>2],104);b=b+L[d+740>>2]|0;L[b+12>>2]=e+R(L[b+12>>2],104)}j=L[d+752>>2];if((j|0)>0){b=0;while(1){f=R(b,44);g=f+L[d+760>>2]|0;L[g+8>>2]=e+R(L[g+8>>2],104);g=f+L[d+760>>2]|0;L[g+12>>2]=e+R(L[g+12>>2],104);g=f+L[d+760>>2]|0;L[g+16>>2]=e+R(L[g+16>>2],104);f=f+L[d+760>>2]|0;g=L[f+40>>2];if(g){L[g+36>>2]=f}b=b+1|0;if((j|0)!=(b|0)){continue}break}}g=L[d+792>>2];f:{if((g|0)<=0){break f}f=L[d+800>>2];h=0;b=0;if(g>>>0>=4){i=g&-4;j=0;while(1){k=f+R(b,96)|0;L[k>>2]=e+R(L[k>>2],104);k=f+R(b|1,96)|0;L[k>>2]=e+R(L[k>>2],104);k=f+R(b|2,96)|0;L[k>>2]=e+R(L[k>>2],104);k=f+R(b|3,96)|0;L[k>>2]=e+R(L[k>>2],104);b=b+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}j=g&3;if(!j){break f}while(1){g=f+R(b,96)|0;L[g>>2]=e+R(L[g>>2],104);b=b+1|0;h=h+1|0;if((j|0)!=(h|0)){continue}break}}h=L[d+692>>2];if((h|0)>0){b=L[d+700>>2];j=0;while(1){f=0;g=R(j,60);if(L[(g+b|0)+24>>2]>0){while(1){b=(b+g|0)+(f<<2)|0;L[b+28>>2]=e+R(L[b+28>>2],104);f=f+1|0;b=L[d+700>>2];if((f|0)>2]){continue}break}}j=j+1|0;if((h|0)!=(j|0)){continue}break}}}b=L[d+192>>2];c=S(ha[L[L[b>>2]+48>>2]](b));b=L[d+712>>2];g:{if((b|0)!=L[d+716>>2]){break g}f=b?b<<1:1;if((f|0)<=(b|0)){break g}h:{if(!f){e=0;break h}L[8513]=L[8513]+1;e=ha[L[6798]](R(f,104),16)|0;b=L[d+712>>2]}i:{if((b|0)<=0){break i}g=b&1;j=0;if((b|0)!=1){h=b&-2;b=0;while(1){i=R(j,104);qa(i+e|0,i+L[d+720>>2]|0,104);i=R(j|1,104);qa(i+e|0,i+L[d+720>>2]|0,104);j=j+2|0;b=b+2|0;if((h|0)!=(b|0)){continue}break}}if(!g){break i}b=R(j,104);qa(b+e|0,b+L[d+720>>2]|0,104)}b=L[d+720>>2];if(!(b?!b|!M[d+724|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[d+720>>2]=e;J[d+724|0]=1;L[d+716>>2]=f;b=L[d+712>>2]}pa(L[d+720>>2]+R(b,104)|0,0,104);b=L[d+712>>2];L[d+712>>2]=b+1;b=pa(L[d+720>>2]+R(b,104)|0,0,104);e=L[a+12>>2];L[b+16>>2]=L[a+8>>2];L[b+20>>2]=e;e=L[a+4>>2];L[b+8>>2]=L[a>>2];L[b+12>>2]=e;e=L[a>>2];f=L[a+4>>2];j=L[a+12>>2];L[b+32>>2]=L[a+8>>2];L[b+36>>2]=j;L[b+24>>2]=e;L[b+28>>2]=f;P[b+88>>2]=o>S(0)?S(S(1)/o):S(0);L[b+4>>2]=L[L[d+880>>2]>>2];o=P[b+8>>2];p=P[b+12>>2];q=P[b+16>>2];L[l+28>>2]=0;P[l+24>>2]=c+q;P[l+20>>2]=c+p;L[l+12>>2]=0;P[l+16>>2]=c+o;P[l+8>>2]=q-c;P[l+4>>2]=p-c;P[l>>2]=o-c;L[b+96>>2]=Bb(d+928|0,l,b);fa=l+32|0;fa=m+16|0}function aB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=S(0),g=0,h=S(0),i=0,j=S(0),k=S(0),l=0,m=S(0),n=S(0),o=0,p=0;c=L[d+64>>2];a:{if(!(c&4)){break a}b=L[a+28>>2];if((b|0)<=0){break a}l=L[a+76>>2];i=L[a+36>>2];if(c&16){c=0;while(1){e=i+R(c,152)|0;g=L[e+132>>2];P[g+120>>2]=P[e+100>>2];e=l+R(L[e+140>>2],152)|0;P[g+124>>2]=P[e+100>>2];P[g+128>>2]=P[e+252>>2];c=c+1|0;if((b|0)!=(c|0)){continue}break}break a}c=0;if((b|0)!=1){p=b&-2;while(1){g=i+R(c,152)|0;o=L[g+132>>2];P[o+120>>2]=P[g+100>>2];P[o+124>>2]=P[(l+R(L[g+140>>2],152)|0)+100>>2];g=i+R(c|1,152)|0;o=L[g+132>>2];P[o+120>>2]=P[g+100>>2];P[o+124>>2]=P[(l+R(L[g+140>>2],152)|0)+100>>2];c=c+2|0;e=e+2|0;if((p|0)!=(e|0)){continue}break}}if(!(b&1)){break a}b=i+R(c,152)|0;c=L[b+132>>2];P[c+120>>2]=P[b+100>>2];P[c+124>>2]=P[(l+R(L[b+140>>2],152)|0)+100>>2]}p=L[a+48>>2];if((p|0)>0){o=L[a+56>>2];l=0;while(1){c=o+R(l,152)|0;e=L[c+132>>2];b=L[e+44>>2];if(b){i=L[e+28>>2];j=P[i+356>>2];k=P[c+24>>2];m=P[i+352>>2];n=P[c+20>>2];f=P[c+100>>2];h=S(S(1)/P[d+12>>2]);P[b>>2]=P[b>>2]+S(S(S(P[c+16>>2]*f)*P[i+348>>2])*h);P[b+4>>2]=S(S(m*S(f*n))*h)+P[b+4>>2];P[b+8>>2]=S(S(j*S(f*k))*h)+P[b+8>>2];g=L[e+32>>2];j=P[g+356>>2];k=P[c+56>>2];m=P[g+352>>2];n=P[c+52>>2];f=P[c+100>>2];h=S(S(1)/P[d+12>>2]);P[b+32>>2]=P[b+32>>2]+S(S(S(P[c+48>>2]*f)*P[g+348>>2])*h);P[b+36>>2]=S(S(m*S(f*n))*h)+P[b+36>>2];P[b+40>>2]=S(S(j*S(f*k))*h)+P[b+40>>2];j=P[i+552>>2];k=P[c+8>>2];m=P[i+548>>2];n=P[c+4>>2];f=P[c+100>>2];h=S(S(1)/P[d+12>>2]);P[b+16>>2]=P[b+16>>2]+S(S(S(P[c>>2]*P[i+544>>2])*f)*h);P[b+20>>2]=S(S(f*S(n*m))*h)+P[b+20>>2];P[b+24>>2]=S(S(f*S(k*j))*h)+P[b+24>>2];j=P[g+552>>2];k=P[c+40>>2];m=P[g+548>>2];n=P[c+36>>2];f=P[c+100>>2];h=S(S(1)/P[d+12>>2]);P[b+48>>2]=P[b+48>>2]+S(S(S(P[c+32>>2]*P[g+544>>2])*f)*h);P[b+52>>2]=S(S(f*S(n*m))*h)+P[b+52>>2];P[b+56>>2]=S(S(f*S(k*j))*h)+P[b+56>>2]}f=P[c+100>>2];P[e+36>>2]=f;if(P[e+16>>2]<=S(T(f))){J[e+20|0]=0}l=l+1|0;if((p|0)!=(l|0)){continue}break}}l=L[a+8>>2];if((l|0)>0){e=L[a+16>>2];g=0;while(1){i=R(g,244);b=i+e|0;c=L[b+240>>2];if(c){b:{if(L[d+44>>2]){m=P[d+12>>2];f=P[d+52>>2];c=fa-80|0;fa=c;c:{if(!L[b+240>>2]){break c}P[b+176>>2]=P[b+64>>2]+P[b+176>>2];P[b+192>>2]=P[b+80>>2]+P[b+192>>2];P[b+180>>2]=P[b+68>>2]+P[b+180>>2];P[b+184>>2]=P[b+72>>2]+P[b+184>>2];P[b+196>>2]=P[b+84>>2]+P[b+196>>2];P[b+200>>2]=P[b+88>>2]+P[b+200>>2];k=P[b+160>>2];d:{if(!(!(P[b+144>>2]!=S(0)|P[b+148>>2]!=S(0))&P[b+152>>2]==S(0))){h=P[b+168>>2];j=P[b+164>>2];break d}h=P[b+168>>2];j=P[b+164>>2];if(k!=S(0)|j!=S(0)){break d}if(h==S(0)){break c}}L[c+12>>2]=0;P[c+8>>2]=h*f;P[c+4>>2]=j*f;P[c>>2]=k*f;Rb(b,b+144|0,c,m,c+16|0);e=L[c+28>>2];L[b+8>>2]=L[c+24>>2];L[b+12>>2]=e;e=L[c+20>>2];L[b>>2]=L[c+16>>2];L[b+4>>2]=e;e=L[c+44>>2];L[b+24>>2]=L[c+40>>2];L[b+28>>2]=e;e=L[c+36>>2];L[b+16>>2]=L[c+32>>2];L[b+20>>2]=e;e=L[c+52>>2];L[b+32>>2]=L[c+48>>2];L[b+36>>2]=e;e=L[c+60>>2];L[b+40>>2]=L[c+56>>2];L[b+44>>2]=e;e=L[c+68>>2];L[b+48>>2]=L[c+64>>2];L[b+52>>2]=e;e=L[c+76>>2];L[b+56>>2]=L[c+72>>2];L[b+60>>2]=e}fa=c+80|0;e=L[a+16>>2];b=i+e|0;f=P[b+176>>2];c=L[b+240>>2];break b}f=S(P[b+64>>2]+P[b+176>>2]);P[b+176>>2]=f;P[b+192>>2]=P[b+80>>2]+P[b+192>>2];P[b+180>>2]=P[b+68>>2]+P[b+180>>2];P[b+184>>2]=P[b+72>>2]+P[b+184>>2];P[b+196>>2]=P[b+84>>2]+P[b+196>>2];P[b+200>>2]=P[b+88>>2]+P[b+200>>2]}b=e+i|0;h=P[b+212>>2];j=P[b+180>>2];k=P[b+216>>2];m=P[b+184>>2];n=P[b+208>>2];L[c+324>>2]=0;P[c+312>>2]=f+n;L[c+260>>2]=L[c+260>>2]+1;P[c+320>>2]=m+k;P[c+316>>2]=j+h;b=i+L[a+16>>2]|0;f=P[b+228>>2];h=P[b+196>>2];j=P[b+232>>2];k=P[b+200>>2];m=P[b+224>>2];n=P[b+192>>2];b=L[b+240>>2];L[b+340>>2]=0;P[b+328>>2]=n+m;P[b+336>>2]=k+j;P[b+332>>2]=h+f;L[b+260>>2]=L[b+260>>2]+1;if(L[d+44>>2]){c=i+L[a+16>>2]|0;b=L[c+240>>2];L[b+260>>2]=L[b+260>>2]+1;e=L[c+12>>2];L[b+12>>2]=L[c+8>>2];L[b+16>>2]=e;e=L[c+4>>2];L[b+4>>2]=L[c>>2];L[b+8>>2]=e;e=L[c+28>>2];L[b+28>>2]=L[c+24>>2];L[b+32>>2]=e;e=L[c+20>>2];L[b+20>>2]=L[c+16>>2];L[b+24>>2]=e;e=L[c+36>>2];L[b+36>>2]=L[c+32>>2];L[b+40>>2]=e;e=L[c+44>>2];L[b+44>>2]=L[c+40>>2];L[b+48>>2]=e;e=L[c+60>>2];L[b+60>>2]=L[c+56>>2];L[b+64>>2]=e;e=L[c+52>>2];L[b+52>>2]=L[c+48>>2];L[b+56>>2]=e}e=L[a+16>>2];L[L[(i+e|0)+240>>2]+212>>2]=-1;l=L[a+8>>2]}g=g+1|0;if((l|0)>(g|0)){continue}break}}if((L[a+28>>2]&L[a+32>>2])<0){b=L[a+36>>2];if(!(b?!b|!M[a+40|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+40|0]=1;L[a+32>>2]=0;L[a+36>>2]=0}L[a+28>>2]=0;if((L[a+48>>2]&L[a+52>>2])<0){b=L[a+56>>2];if(!(b?!b|!M[a+60|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+60|0]=1;L[a+52>>2]=0;L[a+56>>2]=0}L[a+48>>2]=0;if((L[a+68>>2]&L[a+72>>2])<0){b=L[a+76>>2];if(!(b?!b|!M[a+80|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+80|0]=1;L[a+72>>2]=0;L[a+76>>2]=0}L[a+68>>2]=0;if((L[a+88>>2]&L[a+92>>2])<0){b=L[a+96>>2];if(!(b?!b|!M[a+100|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+100|0]=1;L[a+92>>2]=0;L[a+96>>2]=0}L[a+88>>2]=0;if((L[a+8>>2]&L[a+12>>2])<0){b=L[a+16>>2];if(!(b?!b|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+20|0]=1;L[a+12>>2]=0;L[a+16>>2]=0}L[a+8>>2]=0;return S(S(0))}function yz(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=0,f=S(0),g=S(0),h=S(0),i=S(0),j=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=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=S(0),G=S(0),H=S(0),I=S(0),K=S(0),N=0,O=S(0),Q=S(0),T=0,U=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=0,ea=S(0),fa=0;N=L[c+36>>2];c=L[N+12>>2];V=P[c+8>>2];y=L[b+36>>2];E=P[y+8>>2];F=S(V-E);b=L[N+8>>2];W=P[b+8>>2];m=S(W-E);p=S(F-m);e=L[N+16>>2];X=P[e+12>>2];G=P[y+12>>2];u=S(X-G);Y=P[b+12>>2];l=S(Y-G);i=S(u-l);Z=P[e+8>>2];v=S(Z-E);d=S(v-m);$=P[c+12>>2];H=S($-G);n=S(H-l);w=S(S(p*i)-S(d*n));aa=P[e+16>>2];I=P[y+16>>2];x=S(aa-I);ba=P[b+16>>2];o=S(ba-I);f=S(x-o);ca=P[c+16>>2];K=S(ca-I);B=S(K-o);C=S(S(n*f)-S(i*B));D=S(S(B*d)-S(f*p));d=S(S(w*w)+S(S(C*C)+S(D*D)));a:{if(!(d>S(1.1920928955078125e-7))){i=S(34028234663852886e22);break a}i=S(34028234663852886e22);d=S(S(1)/S(_(d)));z=S(w*d);f=S(C*d);A=S(D*d);h=S(S(o*z)+S(S(m*f)+S(l*A)));g=S(h*h);if(!(gS(0))){break c}O=S(u-f);Q=S(v-d);ea=S(S(S(s*O)-S(Q*i))*w);t=i;i=S(x-h);if(!(S(ea+S(S(S(S(t*i)-S(O*r))*C)+S(D*S(S(r*Q)-S(i*s)))))>S(0))){break c}if(S(S(S(S(Q*A)-S(q*O))*w)+S(S(S(S(O*z)-S(A*i))*C)+S(D*S(S(i*q)-S(z*Q)))))>S(0)){break b}}d=S(S(B*B)+S(S(p*p)+S(n*n)));i=S(34028234663852886e22);d:{if(!(d>S(1.1920928955078125e-7))){break d}q=S(S(-S(S(o*B)+S(S(m*p)+S(l*n))))/d);r=qS(1)?S(1):q;q=S(o+S(B*r));s=S(m+S(p*r));r=S(l+S(n*r));d=S(S(q*q)+S(S(s*s)+S(r*r)));i=S(34028234663852886e22);if(!(dS(1.1920928955078125e-7))){break e}t=d;d=S(S(-S(S(K*d)+S(S(F*f)+S(H*h))))/g);g=dS(1)?S(1):d;d=S(K+S(t*g));f=S(F+S(f*g));h=S(H+S(h*g));g=S(S(d*d)+S(S(f*f)+S(h*h)));if(!(gS(1.1920928955078125e-7))){break a}t=d;d=S(S(-S(S(x*d)+S(S(v*f)+S(u*g))))/h);m=dS(1)?S(1):d;h=S(x+S(t*m));d=S(v+S(f*m));f=S(u+S(g*m));g=S(S(h*h)+S(S(d*d)+S(f*f)));if(!(g>2]);g=S(d*d);d=S(E-P[y+24>>2]);f=S(d*d);d=S(G-P[y+28>>2]);d=S(_(S(g+S(f+S(d*d)))));u=S(S(d+d)+P[a+12>>2]);f:{if(!(S(u*u)>i)){break f}o=S(E+s);d=S(W-o);p=S(G+r);f=S($-p);h=S(V-o);g=S(Y-p);v=S(S(d*f)-S(h*g));n=S(I+q);m=S(ca-n);l=S(ba-n);w=S(S(g*m)-S(f*l));o=S(Z-o);p=S(X-p);x=S(S(o*g)-S(d*p));t=g;g=S(aa-n);n=S(S(p*l)-S(t*g));t=S(n*n);n=S(S(g*d)-S(l*o));n=S(_(S(S(x*x)+S(t+S(n*n)))));d=S(S(l*h)-S(m*d));l=S(_(S(S(v*v)+S(S(w*w)+S(d*d)))));d=S(S(h*p)-S(o*f));t=S(d*d);d=S(S(f*g)-S(p*m));f=S(d*d);d=S(S(m*o)-S(g*h));f=S(_(S(t+S(f+S(d*d)))));d=S(S(1)/S(n+S(l+f)));h=P[y+88>>2];g=P[e+88>>2];m=S(l*d);l=P[b+88>>2];f=S(f*d);o=S(n*d);d=P[c+88>>2];g=l<=S(0)?S(0):d<=S(0)?S(0):g<=S(0)?S(0):S(S(g*m)+S(S(l*f)+S(o*d)));d=S(h+g);if(!(d>S(0))){break f}b=L[a+4>>2];l=P[b+316>>2];a=L[a+8>>2];p=P[a+316>>2];l=l>p?l:p;h=S(S(h/d)*P[b+332>>2]);d=S(S(g/d)*P[a+332>>2]);i=S(S(-1)/S(_(i)));q=S(i*q);r=S(i*r);i=S(s*i);c=L[b+832>>2];g:{if((c|0)!=L[b+836>>2]){break g}T=c?c<<1:1;if((T|0)<=(c|0)){break g}if(T){L[8513]=L[8513]+1;U=ha[L[6798]](R(T,56),16)|0;c=L[b+832>>2]}h:{if((c|0)<=0){break h}a=0;if((c|0)!=1){fa=c&-2;while(1){e=R(a,56);j=e+U|0;e=e+L[b+840>>2]|0;k=L[e+4>>2];L[j>>2]=L[e>>2];L[j+4>>2]=k;k=L[e+52>>2];L[j+48>>2]=L[e+48>>2];L[j+52>>2]=k;k=L[e+44>>2];L[j+40>>2]=L[e+40>>2];L[j+44>>2]=k;k=L[e+36>>2];L[j+32>>2]=L[e+32>>2];L[j+36>>2]=k;k=L[e+28>>2];L[j+24>>2]=L[e+24>>2];L[j+28>>2]=k;k=L[e+20>>2];L[j+16>>2]=L[e+16>>2];L[j+20>>2]=k;k=L[e+12>>2];L[j+8>>2]=L[e+8>>2];L[j+12>>2]=k;e=R(a|1,56);j=e+U|0;e=e+L[b+840>>2]|0;k=L[e+4>>2];L[j>>2]=L[e>>2];L[j+4>>2]=k;k=L[e+12>>2];L[j+8>>2]=L[e+8>>2];L[j+12>>2]=k;k=L[e+20>>2];L[j+16>>2]=L[e+16>>2];L[j+20>>2]=k;k=L[e+28>>2];L[j+24>>2]=L[e+24>>2];L[j+28>>2]=k;k=L[e+36>>2];L[j+32>>2]=L[e+32>>2];L[j+36>>2]=k;k=L[e+44>>2];L[j+40>>2]=L[e+40>>2];L[j+44>>2]=k;k=L[e+52>>2];L[j+48>>2]=L[e+48>>2];L[j+52>>2]=k;a=a+2|0;da=da+2|0;if((da|0)!=(fa|0)){continue}break}}if(!(c&1)){break h}a=R(a,56);c=a+U|0;a=a+L[b+840>>2]|0;e=L[a+4>>2];L[c>>2]=L[a>>2];L[c+4>>2]=e;e=L[a+52>>2];L[c+48>>2]=L[a+48>>2];L[c+52>>2]=e;e=L[a+44>>2];L[c+40>>2]=L[a+40>>2];L[c+44>>2]=e;e=L[a+36>>2];L[c+32>>2]=L[a+32>>2];L[c+36>>2]=e;e=L[a+28>>2];L[c+24>>2]=L[a+24>>2];L[c+28>>2]=e;e=L[a+20>>2];L[c+16>>2]=L[a+16>>2];L[c+20>>2]=e;e=L[a+12>>2];L[c+8>>2]=L[a+8>>2];L[c+12>>2]=e}a=L[b+840>>2];if(!(a?!a|!M[b+844|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[b+840>>2]=U;J[b+844|0]=1;L[b+836>>2]=T;c=L[b+832>>2]}a=L[b+840>>2]+R(c,56)|0;P[a+52>>2]=d;P[a+48>>2]=h;P[a+44>>2]=l;P[a+40>>2]=u;L[a+36>>2]=0;P[a+32>>2]=q;P[a+28>>2]=r;P[a+24>>2]=i;P[a+8>>2]=f;L[a+4>>2]=N;L[a>>2]=y;L[a+20>>2]=0;P[a+16>>2]=m;P[a+12>>2]=o;L[b+832>>2]=L[b+832>>2]+1}}function Mm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=S(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=S(0),w=S(0),x=S(0),y=S(0),z=S(0),A=S(0),B=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=0,M=0;d=fa-144|0;fa=d;L[d+108>>2]=0;f=P[b+80>>2];l=P[b+96>>2];y=P[b+120>>2];o=P[b+56>>2];E=P[b+112>>2];v=P[b+116>>2];G=P[b+52>>2];i=P[b+68>>2];j=P[b+84>>2];p=P[b+100>>2];h=P[b+20>>2];t=P[b+36>>2];s=P[b+72>>2];n=P[b+88>>2];u=P[b+24>>2];g=P[b+104>>2];C=P[b+40>>2];k=P[b+64>>2];D=P[b+32>>2];w=P[b>>2];z=P[b+16>>2];H=P[b+48>>2];r=P[b+4>>2];A=P[b+8>>2];L[d+104>>2]=0;L[d+88>>2]=0;L[d+72>>2]=0;P[d+84>>2]=S(g*C)+S(S(s*A)+S(u*n));P[d+80>>2]=S(g*t)+S(S(s*r)+S(h*n));P[d+68>>2]=S(p*C)+S(S(i*A)+S(u*j));P[d- -64>>2]=S(p*t)+S(S(i*r)+S(h*j));y=S(o-y);o=S(H-E);E=S(G-v);P[d+100>>2]=S(g*y)+S(S(s*o)+S(n*E));P[d+96>>2]=S(p*y)+S(S(i*o)+S(E*j));L[d+56>>2]=0;P[d+76>>2]=S(g*D)+S(S(s*w)+S(z*n));P[d+60>>2]=S(p*D)+S(S(i*w)+S(z*j));P[d+52>>2]=S(l*C)+S(S(k*A)+S(f*u));P[d+48>>2]=S(l*t)+S(S(k*r)+S(f*h));P[d+44>>2]=S(l*D)+S(S(k*w)+S(f*z));P[d+92>>2]=S(l*y)+S(S(k*o)+S(E*f));t=S(0);u=S(0);C=S(0);q=fa-32|0;fa=q;m=L[a+4>>2];D=S(P[m+28>>2]*P[m+12>>2]);j=S(D+P[a+12>>2]);l=P[d+100>>2];m=L[a+8>>2];f=P[m- -64>>2];v=S(l-f);i=P[m+56>>2];s=S(P[m+72>>2]-i);n=P[m+60>>2];g=S(P[m+92>>2]-n);k=S(P[m+88>>2]-i);h=S(P[m+76>>2]-n);p=S(S(s*g)-S(k*h));r=p;x=S(p*p);p=S(P[m+96>>2]-f);o=g;g=S(P[m+80>>2]-f);f=S(S(h*p)-S(o*g));g=S(S(g*k)-S(p*s));k=S(S(1)/S(_(S(x+S(S(f*f)+S(g*g))))));p=S(r*k);w=P[d+92>>2];s=S(f*k);f=S(S(w-i)*s);i=P[d+96>>2];h=S(i-n);n=S(g*k);f=S(S(v*p)+S(f+S(h*n)));if(f>2];L[q+24>>2]=L[d+100>>2];L[q+28>>2]=B;B=L[d+96>>2];L[q+16>>2]=L[d+92>>2];L[q+20>>2]=B;L[q+12>>2]=0;P[q+8>>2]=p;P[q+4>>2]=n;P[q>>2]=s;z=P[m+96>>2];r=P[m+80>>2];A=S(z-r);y=P[m+88>>2];o=P[m+72>>2];F=S(y-o);g=P[q+4>>2];k=P[q>>2];E=P[m+92>>2];v=P[m+76>>2];h=S(E-v);G=P[q+24>>2];I=S(S(S(F*g)-S(k*h))*S(G-r));x=h;h=P[q+8>>2];H=P[q+16>>2];J=P[q+20>>2];A=S(I+S(S(S(S(x*h)-S(g*A))*S(H-o))+S(S(J-v)*S(S(A*k)-S(h*F)))));x=r;r=P[m+64>>2];F=S(x-r);x=o;o=P[m+56>>2];I=S(x-o);x=v;v=P[m+60>>2];x=S(x-v);F=S(S(S(S(I*g)-S(k*x))*S(G-r))+S(S(S(S(x*h)-S(g*F))*S(H-o))+S(S(J-v)*S(S(F*k)-S(h*I)))));o=S(o-y);v=S(v-E);G=S(S(S(o*g)-S(k*v))*S(G-z));x=g;g=S(r-z);g=S(G+S(S(S(S(v*h)-S(x*g))*S(H-y))+S(S(J-E)*S(S(g*k)-S(h*o)))));b:{if(!(!(g>S(0))|!(F>S(0)))){B=1;if(A>S(0)){break b}}B=F<=S(0)&A<=S(0)&g<=S(0)}c:{if(B){t=S(l-S(f*p));u=S(i-S(f*n));C=S(w-S(f*s));z=S(j*j);break c}if((ha[L[L[m>>2]+100>>2]](m)|0)<=0){break a}z=S(j*j);m=0;while(1){B=L[a+8>>2];ha[L[L[B>>2]+104>>2]](B,m,q+16|0,q);j=S(0);w=P[q+24>>2];g=S(P[q+8>>2]-w);f=S(P[d+100>>2]-w);r=P[q+16>>2];k=S(P[q>>2]-r);i=S(P[d+92>>2]-r);A=P[q+20>>2];l=S(P[d+96>>2]-A);h=S(P[q+4>>2]-A);y=S(S(g*f)+S(S(k*i)+S(l*h)));d:{if(!(y>S(0))){break d}j=S(S(g*g)+S(S(k*k)+S(h*h)));if(j>y){j=S(y/j);f=S(f-S(g*j));l=S(l-S(h*j));i=S(i-S(k*j));break d}f=S(f-g);l=S(l-h);i=S(i-k);j=S(1)}if(S(S(f*f)+S(S(i*i)+S(l*l)))>2];m=m+1|0;if((ha[L[L[B>>2]+100>>2]](B)|0)>(m|0)){continue}break}if(!K){break a}l=P[d+100>>2];i=P[d+96>>2];w=P[d+92>>2]}f=S(l-t);l=S(w-C);i=S(i-u);j=S(S(f*f)+S(S(l*l)+S(i*i)));if(!(jS(1.1920928955078125e-7)){L[d+124>>2]=0;g=f;j=S(_(j));f=S(S(1)/j);P[d+120>>2]=g*f;P[d+116>>2]=i*f;P[d+112>>2]=l*f;D=S(D-j);break e}L[d+124>>2]=0;P[d+120>>2]=p;P[d+116>>2]=n;P[d+112>>2]=s}L[d+140>>2]=0;P[d+136>>2]=t;P[d+132>>2]=u;P[d+128>>2]=C;P[d+108>>2]=-D;M=1}fa=q+32|0;f:{if(!M){break f}if(e){j=P[b+72>>2];p=P[b+64>>2];s=P[b+68>>2];n=P[b+88>>2];g=P[b+80>>2];k=P[b+84>>2];h=P[b+104>>2];t=P[b+96>>2];u=P[b+100>>2];f=P[d+120>>2];l=P[d+112>>2];i=P[d+116>>2];L[d+40>>2]=0;C=S(S(h*f)+S(S(t*l)+S(i*u)));P[d+36>>2]=-C;D=S(S(n*f)+S(S(g*l)+S(i*k)));P[d+32>>2]=-D;w=S(S(j*f)+S(S(p*l)+S(s*i)));P[d+28>>2]=-w;z=P[b+112>>2];r=P[b+116>>2];f=P[b+120>>2];L[d+24>>2]=0;l=P[d+136>>2];o=S(h*l);i=P[d+128>>2];h=P[d+132>>2];o=S(f+S(o+S(S(t*i)+S(u*h))));f=P[d+108>>2];P[d+20>>2]=o+S(C*f);P[d+16>>2]=S(r+S(S(l*n)+S(S(i*g)+S(k*h))))+S(D*f);P[d+12>>2]=S(z+S(S(l*j)+S(S(i*p)+S(s*h))))+S(w*f);ha[L[L[c>>2]+16>>2]](c,d+28|0,d+12|0,f);break f}f=P[b+72>>2];l=P[b+64>>2];i=P[b+68>>2];j=P[b+88>>2];p=P[b+80>>2];s=P[b+84>>2];n=P[b+104>>2];g=P[b+96>>2];k=P[b+100>>2];L[d+40>>2]=0;h=P[d+120>>2];t=P[d+112>>2];u=P[d+116>>2];P[d+36>>2]=S(n*h)+S(S(g*t)+S(k*u));P[d+32>>2]=S(j*h)+S(S(p*t)+S(u*s));P[d+28>>2]=S(f*h)+S(S(l*t)+S(i*u));h=P[b+112>>2];t=P[b+116>>2];u=P[b+120>>2];L[d+24>>2]=0;r=n;n=P[d+136>>2];o=g;g=P[d+128>>2];v=k;k=P[d+132>>2];P[d+20>>2]=u+S(S(r*n)+S(S(o*g)+S(v*k)));P[d+16>>2]=t+S(S(n*j)+S(S(g*p)+S(s*k)));P[d+12>>2]=h+S(S(n*f)+S(S(g*l)+S(i*k)));ha[L[L[c>>2]+16>>2]](c,d+28|0,d+12|0,P[d+108>>2])}fa=d+144|0}function Gg(a,b,c,d){var e=S(0),f=0,g=S(0),h=0,i=S(0),j=0,k=S(0),l=S(0),m=S(0),n=0,o=S(0),p=S(0),q=S(0),r=S(0),s=0,t=0,u=0,v=S(0),w=S(0),x=0,y=0,z=0,A=S(0),B=S(0),C=S(0),D=0,E=0,F=0,G=0;x=L[a>>2];L[a>>2]=x+1;a:{if((d-c|0)==1){q=P[a+48>>2];g=P[a+32>>2];c=L[b+12>>2]+R(c,36)|0;e=P[c+8>>2];e=e>2];e=S(S(S((e>q?q:e)-g)*o)+S(.5));b:{if(e=S(0)){d=~~e>>>0;break b}d=0}m=P[a+40>>2];i=P[c>>2];r=P[a+60>>2];l=P[a+44>>2];e=P[a+28>>2];p=P[c+4>>2];v=P[a+56>>2];k=P[a+24>>2];a=L[a+16>>2];b=a+(x<<4)|0;K[b+4>>1]=d;p=e>p?e:p;p=S(S(r*S((l=S(0)){d=~~p>>>0;break c}d=0}K[b+2>>1]=d;i=k>i?k:i;i=S(S(S((i>m?m:i)-k)*v)+S(.5));d:{if(i=S(0)){d=~~i>>>0;break d}d=0}K[b>>1]=d;i=P[c+16>>2];p=P[c+20>>2];w=o;o=P[c+24>>2];o=g>o?g:o;g=S(S(w*S((q=S(0)){d=~~g>>>0;break e}d=0}K[b+10>>1]=d;g=e>p?e:p;e=S(S(r*S((g>l?l:g)-e))+S(.5));f:{if(e=S(0)){d=~~e>>>0;break f}d=0}K[b+8>>1]=d;e=k>i?k:i;e=S(S(v*S((e>m?m:e)-k))+S(.5));g:{if(e=S(0)){d=~~e>>>0;break g}d=0}K[b+6>>1]=d;b=L[c+32>>2];break a}u=b;b=c;h=d-b|0;h:{i:{j:{if((b|0)>=(d|0)){m=S(h|0);break j}n=L[u+12>>2];f=b;while(1){j=n+R(f,36)|0;l=S(l+S(S(P[j+16>>2]+P[j>>2])*S(.5)));e=S(e+S(S(P[j+24>>2]+P[j+8>>2])*S(.5)));k=S(k+S(S(P[j+20>>2]+P[j+4>>2])*S(.5)));f=f+1|0;if((f|0)!=(d|0)){continue}break}m=S(h|0);if((b|0)<(d|0)){break i}}e=S(0);k=S(0);break h}g=S(S(1)/m);q=S(g*e);i=S(g*k);l=S(g*l);j=L[u+12>>2];k=S(0);e=S(0);g=S(0);while(1){o=g;f=j+R(b,36)|0;g=S(S(S(P[f+16>>2]+P[f>>2])*S(.5))-l);g=S(o+S(g*g));o=k;k=S(S(S(P[f+24>>2]+P[f+8>>2])*S(.5))-q);k=S(o+S(k*k));o=e;e=S(S(S(P[f+20>>2]+P[f+4>>2])*S(.5))-i);e=S(o+S(e*e));b=b+1|0;if((d|0)!=(b|0)){continue}break}}m=S(S(1)/S(m+S(-1)));g=S(m*g);e=S(m*e);b=g(b?e:g)?2:b;e=S(0);k=S(0);g=S(0);j=fa+-64|0;L[j+28>>2]=0;n=(c|0)>=(d|0);if(!n){y=L[u+12>>2];b=c;while(1){f=y+R(b,36)|0;e=S(S(S(P[f+16>>2]+P[f>>2])*S(.5))+e);k=S(S(S(P[f+24>>2]+P[f+8>>2])*S(.5))+k);g=S(S(S(P[f+20>>2]+P[f+4>>2])*S(.5))+g);b=b+1|0;if((d|0)!=(b|0)){continue}break}}y=d-c|0;m=S(S(1)/S(y|0));P[j+24>>2]=m*k;P[j+20>>2]=m*g;P[j+16>>2]=m*e;f=c;if(!n){b=h<<2;e=P[b+(j+16|0)>>2];D=b+j|0;b=c;while(1){n=L[u+12>>2];h=n+R(b,36)|0;k=P[h+4>>2];g=P[h+20>>2];m=P[h+8>>2];l=P[h+24>>2];q=P[h>>2];i=P[h+16>>2];L[j+12>>2]=0;P[j>>2]=S(i+q)*S(.5);P[j+8>>2]=S(l+m)*S(.5);P[j+4>>2]=S(g+k)*S(.5);if(e>2]){s=L[h+12>>2];L[j+40>>2]=L[h+8>>2];L[j+44>>2]=s;s=L[h+4>>2];L[j+32>>2]=L[h>>2];L[j+36>>2]=s;s=L[h+28>>2];L[j+56>>2]=L[h+24>>2];L[j+60>>2]=s;s=L[h+20>>2];L[j+48>>2]=L[h+16>>2];L[j+52>>2]=s;s=L[h+32>>2];z=R(f,36);n=n+z|0;t=L[n+4>>2];L[h>>2]=L[n>>2];L[h+4>>2]=t;t=L[n+12>>2];L[h+8>>2]=L[n+8>>2];L[h+12>>2]=t;t=L[n+20>>2];L[h+16>>2]=L[n+16>>2];L[h+20>>2]=t;t=L[n+28>>2];L[h+24>>2]=L[n+24>>2];L[h+28>>2]=t;L[h+32>>2]=L[n+32>>2];n=L[j+36>>2];h=L[u+12>>2]+z|0;L[h>>2]=L[j+32>>2];L[h+4>>2]=n;n=L[j+56>>2];z=L[j+60>>2];t=L[j+48>>2];E=L[j+52>>2];F=L[j+44>>2];G=L[j+40>>2];L[h+32>>2]=s;L[h+8>>2]=G;L[h+12>>2]=F;L[h+16>>2]=t;L[h+20>>2]=E;L[h+24>>2]=n;L[h+28>>2]=z;f=f+1|0}b=b+1|0;if((d|0)!=(b|0)){continue}break}}b=(y>>1)+c|0;h=b;b=(y|0)/3|0;j=(b+c|0)>=(f|0)?h:((b^-1)+d|0)<=(f|0)?h:f;k:{if((c|0)>=(d|0)){e=S(34028234663852886e22);k=S(-34028234663852886e22);g=S(-34028234663852886e22);l=S(-34028234663852886e22);m=S(34028234663852886e22);q=S(34028234663852886e22);break k}h=L[u+12>>2];l=S(-34028234663852886e22);q=S(34028234663852886e22);b=c;m=S(34028234663852886e22);e=S(34028234663852886e22);g=S(-34028234663852886e22);k=S(-34028234663852886e22);while(1){f=h+R(b,36)|0;i=P[f+16>>2];l=i>l?i:l;i=P[f+8>>2];e=e>i?i:e;i=P[f+4>>2];m=i>2];q=i>2];g=g>2];k=k>2];v=P[a+44>>2];i=P[a+28>>2];B=P[a- -64>>2];o=P[a+48>>2];r=P[a+32>>2];b=L[a+16>>2]+(x<<4)|0;C=P[a+56>>2];w=P[a+40>>2];p=P[a+24>>2];l=lw?w:l)-p))+S(.5));l:{if(l=S(0)){f=~~l>>>0;break l}f=0}K[b+6>>1]=f;l=p>q?p:q;l=S(S(S((l>w?w:l)-p)*C)+S(.5));m:{if(l=S(0)){f=~~l>>>0;break m}f=0}K[b>>1]=f;g=go?o:g)-r))+S(.5));n:{if(g=S(0)){f=~~g>>>0;break n}f=0}K[b+10>>1]=f;k=kv?v:k)-i))+S(.5));o:{if(k=S(0)){f=~~k>>>0;break o}f=0}K[b+8>>1]=f;e=eo?o:e)-r)*B)+S(.5));p:{if(e=S(0)){f=~~e>>>0;break p}f=0}K[b+4>>1]=f;e=i>m?i:m;e=S(S(S((e>v?v:e)-i)*A)+S(.5));q:{if(e=S(0)){f=~~e>>>0;break q}f=0}K[b+2>>1]=f;Gg(a,u,c,j);Gg(a,u,j,d);b=x-L[a>>2]|0;a=L[a+16>>2]}L[((x<<4)+a|0)+12>>2]=b}function Yy(a,b){a=a|0;b=S(b);var c=0,d=0,e=0,f=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=S(0),r=S(0),s=0,t=S(0),u=S(0);j=L[a+24>>2];if((j|0)>0){while(1){a:{b:{e=L[L[a+32>>2]+(s<<2)>>2];switch(L[e+216>>2]-2|0){case 0:case 3:break a;default:break b}}d=0;j=fa+-64|0;fa=j;tk(e,0);h=L[e+732>>2];if((h|0)>0){while(1){f=L[e+740>>2]+R(d,52)|0;i=L[f+8>>2];r=P[i+28>>2];g=L[f+12>>2];n=P[g+28>>2];q=P[i+32>>2];o=P[g+32>>2];l=P[i+24>>2];b=P[g+24>>2];L[f+48>>2]=0;p=S(b-l);P[f+36>>2]=p;l=S(o-q);P[f+44>>2]=l;b=S(n-r);P[f+40>>2]=b;P[f+32>>2]=S(1)/S(P[f+24>>2]*S(S(l*l)+S(S(p*p)+S(b*b))));d=d+1|0;if((h|0)!=(d|0)){continue}break}}i=L[e+792>>2];if((i|0)>0){k=0;while(1){c=L[e+800>>2]+R(k,96)|0;f=L[c+20>>2];r=P[f+12>>2];n=P[f+8>>2];q=P[f+4>>2];o=P[f+28>>2];l=P[f+20>>2];b=P[f+24>>2];t=P[c+12>>2];u=P[c+4>>2];p=P[c+8>>2];P[j+56>>2]=S(P[f+44>>2]*t)+S(S(P[f+36>>2]*u)+S(p*P[f+40>>2]));L[j+60>>2]=0;P[j+52>>2]=S(o*t)+S(S(l*u)+S(p*b));P[j+48>>2]=S(r*t)+S(S(q*u)+S(n*p));g=L[c>>2];sk(j,P[e+452>>2],P[g+88>>2],P[f+344>>2],f+264|0,j+48|0);h=L[j+12>>2];L[c+36>>2]=L[j+8>>2];L[c+40>>2]=h;h=L[j+4>>2];L[c+28>>2]=L[j>>2];L[c+32>>2]=h;h=L[j+28>>2];L[c+52>>2]=L[j+24>>2];L[c+56>>2]=h;h=L[j+20>>2];L[c+44>>2]=L[j+16>>2];L[c+48>>2]=h;h=L[j+44>>2];L[c+68>>2]=L[j+40>>2];L[c+72>>2]=h;h=L[j+36>>2];L[c+60>>2]=L[j+32>>2];L[c+64>>2]=h;h=L[j+60>>2];L[c+84>>2]=L[j+56>>2];L[c+88>>2]=h;h=L[j+52>>2];L[c+76>>2]=L[j+48>>2];L[c+80>>2]=h;P[c+92>>2]=P[e+452>>2]*P[g+88>>2];ib(f,0);k=k+1|0;if((i|0)!=(k|0)){continue}break}}m=L[e+372>>2];c:{if((m|0)<=0){break c}d=L[e+396>>2];if((d|0)>0){k=0;while(1){c=0;if((d|0)>0){while(1){if(L[L[e+404>>2]+(c<<2)>>2]){D()}else{qk(e,S(1))}c=c+1|0;d=L[e+396>>2];if((c|0)<(d|0)){continue}break}m=L[e+372>>2]}k=k+1|0;if((m|0)>(k|0)){continue}break}}h=L[e+712>>2];if((h|0)<=0){break c}d=0;while(1){b=P[e+452>>2];g=L[e+720>>2]+R(d,104)|0;L[g+20>>2]=0;P[g+8>>2]=S(b*P[g+40>>2])+P[g+24>>2];P[g+16>>2]=S(b*P[g+48>>2])+P[g+32>>2];P[g+12>>2]=S(b*P[g+44>>2])+P[g+28>>2];d=d+1|0;if((h|0)!=(d|0)){continue}break}}c=L[e+376>>2];d:{if((c|0)<=0){break d}d=L[e+416>>2];k=0;while(1){if((d|0)>0){b=S(S(k|0)/S(c|0));c=0;while(1){ha[L[(L[L[e+424>>2]+(c<<2)>>2]<<2)+21936>>2]](e,S(1),b);c=c+1|0;d=L[e+416>>2];if((c|0)<(d|0)){continue}break}c=L[e+376>>2]}k=k+1|0;if((k|0)<(c|0)){continue}break}h=L[e+712>>2];if((h|0)<=0){break d}b=S(P[e+456>>2]*S(S(1)-P[e+296>>2]));d=0;while(1){g=L[e+720>>2]+R(d,104)|0;L[g+52>>2]=0;L[g+56>>2]=0;L[g+60>>2]=0;L[g+64>>2]=0;L[g+68>>2]=0;P[g+40>>2]=b*S(P[g+8>>2]-P[g+24>>2]);P[g+48>>2]=b*S(P[g+16>>2]-P[g+32>>2]);P[g+44>>2]=b*S(P[g+12>>2]-P[g+28>>2]);d=d+1|0;if((h|0)!=(d|0)){continue}break}}m=L[e+380>>2];e:{if((m|0)<=0){break e}l=P[e+456>>2];b=P[e+292>>2];i=L[e+712>>2];f:{if((i|0)>0){c=0;if((i|0)!=1){g=i&-2;k=0;while(1){f=L[e+720>>2]+R(c,104)|0;h=L[f+12>>2];L[f+24>>2]=L[f+8>>2];L[f+28>>2]=h;h=L[f+20>>2];L[f+32>>2]=L[f+16>>2];L[f+36>>2]=h;f=L[e+720>>2]+R(c|1,104)|0;h=L[f+12>>2];L[f+24>>2]=L[f+8>>2];L[f+28>>2]=h;h=L[f+20>>2];L[f+32>>2]=L[f+16>>2];L[f+36>>2]=h;c=c+2|0;k=k+2|0;if((g|0)!=(k|0)){continue}break}}if(i&1){i=L[e+720>>2]+R(c,104)|0;g=L[i+12>>2];h=L[i+8>>2];L[i+24>>2]=h;L[i+28>>2]=g;h=L[i+20>>2];L[i+32>>2]=L[i+16>>2];L[i+36>>2]=h}m=L[e+380>>2];if((m|0)<=0){break f}}k=0;d=L[e+436>>2];if((d|0)<=0){break f}while(1){c=0;if((d|0)>0){while(1){ha[L[(L[L[e+444>>2]+(c<<2)>>2]<<2)+21936>>2]](e,S(1),S(0));c=c+1|0;d=L[e+436>>2];if((c|0)<(d|0)){continue}break}m=L[e+380>>2]}k=k+1|0;if((m|0)>(k|0)){continue}break}}g=L[e+712>>2];if((g|0)<=0){break e}b=S(b*l);h=L[e+720>>2];d=0;while(1){i=h+R(d,104)|0;P[i+40>>2]=S(b*S(P[i+8>>2]-P[i+24>>2]))+P[i+40>>2];P[i+44>>2]=S(b*S(P[i+12>>2]-P[i+28>>2]))+P[i+44>>2];P[i+48>>2]=S(b*S(P[i+16>>2]-P[i+32>>2]))+P[i+48>>2];d=d+1|0;if((g|0)!=(d|0)){continue}break}}k=0;f=L[e+1112>>2];if((f|0)>0){i=L[e+1120>>2];while(1){d=L[i+(k<<2)>>2];g:{if(!(P[d+352>>2]>S(0))){break g}g=L[d+24>>2];if((g|0)<=0){break g}h=L[d+32>>2];m=0;while(1){c=L[h+(m<<2)>>2];h:{if(!(P[c+88>>2]>S(0))){break h}n=P[d+332>>2];q=S(P[c+28>>2]-P[d+232>>2]);o=S(P[c+24>>2]-P[d+228>>2]);b=P[d+336>>2];r=S(S(S(n*q)-S(o*b))+P[d+324>>2]);l=S(P[c+32>>2]-P[d+236>>2]);p=S(b*l);b=P[d+340>>2];q=S(P[d+316>>2]+S(p-S(q*b)));l=S(P[d+320>>2]+S(S(b*o)-S(l*n)));b=P[c+48>>2];n=P[c+40>>2];o=P[c+44>>2];if(!(S(S(r*r)+S(S(q*q)+S(l*l)))<=S(S(b*b)+S(S(n*n)+S(o*o))))){break h}p=b;r=S(r-b);b=P[d+352>>2];P[c+48>>2]=p+S(r*b);P[c+44>>2]=o+S(b*S(l-o));P[c+40>>2]=n+S(b*S(q-n))}m=m+1|0;if((g|0)!=(m|0)){continue}break}}k=k+1|0;if((f|0)!=(k|0)){continue}break}}tk(e,1);fa=j- -64|0;j=L[a+24>>2]}s=s+1|0;if((s|0)<(j|0)){continue}break}}}function To(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=fa-400|0;fa=e;L[e+396>>2]=a;L[e+392>>2]=b;L[e+388>>2]=c;L[e+384>>2]=d;a=L[e+396>>2];b=fa-16|0;L[b+12>>2]=L[e+392>>2];c=L[b+12>>2];L[b+12>>2]=L[e+392>>2];d=L[b+12>>2];L[b+12>>2]=L[e+392>>2];f=e+368|0;la(f,c,d+4|0,L[b+12>>2]+8|0);b=fa-16|0;L[b+12>>2]=L[e+388>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+392>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+392>>2];g=e+352|0;la(g,b,c+4|0,L[d+12>>2]+8|0);ha[L[L[a>>2]+8>>2]](a,f,g,L[e+384>>2]);b=fa-16|0;L[b+12>>2]=L[e+388>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+392>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+392>>2];f=e+336|0;la(f,b,c+4|0,L[d+12>>2]+8|0);b=fa-16|0;L[b+12>>2]=L[e+388>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+388>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+392>>2];g=e+320|0;la(g,b,c+4|0,L[d+12>>2]+8|0);ha[L[L[a>>2]+8>>2]](a,f,g,L[e+384>>2]);b=fa-16|0;L[b+12>>2]=L[e+388>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+388>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+392>>2];f=e+304|0;la(f,b,c+4|0,L[d+12>>2]+8|0);b=fa-16|0;L[b+12>>2]=L[e+392>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+388>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+392>>2];g=e+288|0;la(g,b,c+4|0,L[d+12>>2]+8|0);ha[L[L[a>>2]+8>>2]](a,f,g,L[e+384>>2]);b=fa-16|0;L[b+12>>2]=L[e+392>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+388>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+392>>2];f=e+272|0;la(f,b,c+4|0,L[d+12>>2]+8|0);b=fa-16|0;L[b+12>>2]=L[e+392>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+392>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+392>>2];g=e+256|0;la(g,b,c+4|0,L[d+12>>2]+8|0);ha[L[L[a>>2]+8>>2]](a,f,g,L[e+384>>2]);b=fa-16|0;L[b+12>>2]=L[e+392>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+392>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+392>>2];f=e+240|0;la(f,b,c+4|0,L[d+12>>2]+8|0);b=fa-16|0;L[b+12>>2]=L[e+392>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+392>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+388>>2];g=e+224|0;la(g,b,c+4|0,L[d+12>>2]+8|0);ha[L[L[a>>2]+8>>2]](a,f,g,L[e+384>>2]);b=fa-16|0;L[b+12>>2]=L[e+388>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+392>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+392>>2];f=e+208|0;la(f,b,c+4|0,L[d+12>>2]+8|0);b=fa-16|0;L[b+12>>2]=L[e+388>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+392>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+388>>2];g=e+192|0;la(g,b,c+4|0,L[d+12>>2]+8|0);ha[L[L[a>>2]+8>>2]](a,f,g,L[e+384>>2]);b=fa-16|0;L[b+12>>2]=L[e+388>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+388>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+392>>2];f=e+176|0;la(f,b,c+4|0,L[d+12>>2]+8|0);b=fa-16|0;L[b+12>>2]=L[e+388>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+388>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+388>>2];g=e+160|0;la(g,b,c+4|0,L[d+12>>2]+8|0);ha[L[L[a>>2]+8>>2]](a,f,g,L[e+384>>2]);b=fa-16|0;L[b+12>>2]=L[e+392>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+388>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+392>>2];f=e+144|0;la(f,b,c+4|0,L[d+12>>2]+8|0);b=fa-16|0;L[b+12>>2]=L[e+392>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+388>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+388>>2];g=e+128|0;la(g,b,c+4|0,L[d+12>>2]+8|0);ha[L[L[a>>2]+8>>2]](a,f,g,L[e+384>>2]);b=fa-16|0;L[b+12>>2]=L[e+392>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+392>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+388>>2];f=e+112|0;la(f,b,c+4|0,L[d+12>>2]+8|0);b=fa-16|0;L[b+12>>2]=L[e+388>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+392>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+388>>2];g=e+96|0;la(g,b,c+4|0,L[d+12>>2]+8|0);ha[L[L[a>>2]+8>>2]](a,f,g,L[e+384>>2]);b=fa-16|0;L[b+12>>2]=L[e+388>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+392>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+388>>2];f=e+80|0;la(f,b,c+4|0,L[d+12>>2]+8|0);b=fa-16|0;L[b+12>>2]=L[e+388>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+388>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+388>>2];g=e- -64|0;la(g,b,c+4|0,L[d+12>>2]+8|0);ha[L[L[a>>2]+8>>2]](a,f,g,L[e+384>>2]);b=fa-16|0;L[b+12>>2]=L[e+388>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+388>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+388>>2];f=e+48|0;la(f,b,c+4|0,L[d+12>>2]+8|0);b=fa-16|0;L[b+12>>2]=L[e+392>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+388>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+388>>2];g=e+32|0;la(g,b,c+4|0,L[d+12>>2]+8|0);ha[L[L[a>>2]+8>>2]](a,f,g,L[e+384>>2]);b=fa-16|0;L[b+12>>2]=L[e+392>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+388>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+388>>2];f=e+16|0;la(f,b,c+4|0,L[d+12>>2]+8|0);b=fa-16|0;L[b+12>>2]=L[e+392>>2];b=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[e+392>>2];c=L[c+12>>2];d=fa-16|0;L[d+12>>2]=L[e+388>>2];la(e,b,c+4|0,L[d+12>>2]+8|0);ha[L[L[a>>2]+8>>2]](a,f,e,L[e+384>>2]);fa=e+400|0}function Fl(a,b){var 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=0,l=S(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=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),U=S(0),V=S(0),W=S(0),X=S(0),Y=S(0),Z=S(0),_=S(0),$=S(0),aa=S(0),ba=S(0),ca=S(0),da=S(0),ea=0;k=L[a+748>>2];a:{if((k|0)==4){c=P[a+84>>2];e=P[b+80>>2];k=c>2];c=k?c:e;k=f>2];c=k?f:c;x=e>2]<(x?e:c);A=k?3:A;b:{c:{d:{e:{if(M[27180]){if(!A){n=P[a+564>>2];i=P[a+380>>2];h=S(n-i);q=P[a+560>>2];l=P[a+376>>2];d=S(q-l);v=P[a+556>>2];w=P[a+372>>2];m=S(v-w);e=P[b+8>>2];f=P[b+4>>2];j=P[b>>2];break e}j=P[b>>2];s=P[a+188>>2];c=S(j-s);q=P[a+560>>2];l=P[a+376>>2];d=S(q-l);v=P[a+556>>2];w=P[a+372>>2];m=S(v-w);f=P[b+4>>2];t=P[a+192>>2];e=S(f-t);h=S(S(c*d)-S(m*e));o=S(h*h);n=P[a+564>>2];i=P[a+380>>2];h=S(n-i);p=S(e*h);e=P[b+8>>2];u=P[a+196>>2];g=S(e-u);p=S(p-S(d*g));c=S(S(g*m)-S(h*c));da=S(o+S(S(p*p)+S(c*c)));if((A|0)!=1){break e}j=S(j-P[a+4>>2]);g=S(-j);f=S(f-P[a+8>>2]);p=S(-f);e=S(e-P[a+12>>2]);r=S(-e);m=S(0);break d}f:{g:{h:{i:{if(!A){j=P[a+380>>2];h=P[a+564>>2];m=S(j-h);f=P[a+376>>2];d=P[a+560>>2];y=S(f-d);e=P[a+372>>2];l=P[a+556>>2];B=S(e-l);u=P[b+4>>2];H=S(u-d);W=S(-H);t=P[b>>2];z=S(t-l);X=S(-z);s=P[b+8>>2];I=S(s-h);Y=S(-I);E=S(t-e);D=S(-E);F=S(s-j);V=S(-F);G=S(u-f);c=S(-G);break i}t=P[b>>2];g=P[a+188>>2];J=S(t-g);f=P[a+376>>2];d=P[a+560>>2];y=S(f-d);e=P[a+372>>2];l=P[a+556>>2];B=S(e-l);u=P[b+4>>2];p=P[a+192>>2];K=S(u-p);c=S(S(J*y)-S(B*K));i=S(c*c);j=P[a+380>>2];h=P[a+564>>2];m=S(j-h);s=P[b+8>>2];r=P[a+196>>2];N=S(s-r);c=S(S(K*m)-S(y*N));n=S(c*c);c=S(S(N*B)-S(m*J));n=S(i+S(n+S(c*c)));E=S(t-e);C=S(p-d);c=S(g-l);G=S(u-f);i=S(S(E*C)-S(c*G));q=S(i*i);D=S(r-h);F=S(s-j);i=S(S(G*D)-S(C*F));o=S(i*i);i=S(S(F*c)-S(D*E));i=S(q+S(o+S(i*i)));n=i>2];v=S(t-n);i=P[a+8>>2];w=S(u-i);g=S(S(v*y)-S(B*w));o=S(g*g);q=P[a+12>>2];O=S(s-q);g=S(S(w*m)-S(y*O));m=S(S(O*B)-S(m*v));m=S(o+S(S(g*g)+S(m*m)));o=S(i-d);Q=S(n-l);g=S(S(E*o)+S(Q*c));p=S(g*g);U=S(q-h);g=S(S(G*U)+S(o*V));r=S(g*g);g=S(S(F*Q)+S(U*D));g=S(p+S(r+S(g*g)));m=g>2];K=S(u-p);_=S(-K);g=P[a+188>>2];J=S(t-g);$=S(-J);r=P[a+196>>2];N=S(s-r);aa=S(-N);ba=S(-w);ca=S(-O);if(!(!x|k)){l=S(q-r);o=S(i-p);z=S(n-g);d=S(0);break f}D=S(r-h);C=S(p-d);c=S(g-l);break g}_=S(-K);$=S(-J);aa=S(-N);n=P[a+4>>2];Q=S(n-l);q=P[a+12>>2];U=S(q-h);i=P[a+8>>2];o=S(i-d);v=S(t-n);Z=S(-v);w=S(u-i);ba=S(-w);O=S(s-q);ca=S(-O);m=S(0)}d=S(S(v*C)+S(c*ba));h=S(d*d);d=S(S(w*D)+S(C*ca));c=S(S(O*c)+S(D*Z));c=S(h+S(S(d*d)+S(c*c)));d=S(S(J*o)+S(Q*_));h=S(d*d);d=S(S(K*U)+S(o*aa));l=S(d*d);d=S(S(N*Q)+S(U*$));d=S(h+S(l+S(d*d)));c=c>d?c:d;o=S(i-p);h=S(z*o);z=S(n-g);d=S(h+S(z*W));h=S(d*d);l=S(q-r);d=S(S(H*l)+S(o*Y));y=S(d*d);d=S(S(I*z)+S(l*X));d=S(h+S(y+S(d*d)));d=c>d?c:d;c=S(0);if(k){break b}C=S(q-j);y=S(i-f);B=S(n-e);G=S(u-f);c=S(-G);E=S(t-e);D=S(-E);F=S(s-j);V=S(-F)}f=S(p-f);e=S(g-e);h=S(S(v*f)+S(e*ba));j=S(r-j);f=S(S(w*j)+S(f*ca));e=S(S(O*e)+S(j*Z));e=S(S(h*h)+S(S(f*f)+S(e*e)));f=S(S(J*y)+S(B*_));h=S(f*f);f=S(S(K*C)+S(y*aa));g=S(f*f);f=S(S(N*B)+S(C*$));f=S(h+S(g+S(f*f)));e=e>f?e:f;c=S(S(E*o)+S(z*c));f=S(c*c);c=S(S(G*l)+S(o*V));h=S(c*c);c=S(S(F*z)+S(l*D));c=S(f+S(h+S(c*c)));c=c>2]);f=S(f-P[a+8>>2]);c=S(S(j*d)-S(m*f));g=S(c*c);e=S(e-P[a+12>>2]);c=S(S(f*h)-S(d*e));d=S(c*c);c=S(S(e*m)-S(h*j));m=S(g+S(d+S(c*c)));u=P[a+196>>2];t=P[a+192>>2];s=P[a+188>>2];g=S(-j);p=S(-f);r=S(-e);if(k){break d}d=S(0);if(x){break c}}c=S(q-t);d=S(v-s);h=S(S(j*c)+S(d*p));q=S(h*h);h=S(n-u);c=S(S(f*h)+S(c*r));n=S(c*c);c=S(S(e*d)+S(h*g));d=S(q+S(n+S(c*c)));c=S(0);if(k){break b}}c=S(l-t);h=S(j*c);j=S(w-s);l=S(h+S(j*p));h=f;f=S(i-u);c=S(S(h*f)+S(c*r));h=S(c*c);c=S(S(e*j)+S(f*g));c=S(S(l*l)+S(h+S(c*c)))}e=S(T(da));k=e>S(-0xde0b6b000000000);x=k?0:-1;f=S(T(m));e=k?e:S(-0xde0b6b000000000);k=f>e;x=k?1:x;j=S(T(d));e=k?f:e;k=j>e;k=S(T(c))>(k?j:e)?3:k?2:x;A=R(k,184)+a|0;x=L[A+116>>2];if(!x){break a}ea=L[8113];if(!ea){break a}ha[ea|0](x)|0;L[A+116>>2]=0;break a}L[a+748>>2]=k+1}x=a;a=(k|0)>0?k:0;qa((x+R(a,184)|0)+4|0,b,184);return a}function KG(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=S(0),j=S(0),k=S(0),l=S(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=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=0,G=0,H=S(0),I=S(0),K=0,N=0,O=0;f=fa-176|0;fa=f;g=M[a+28|0];F=g?b:c;K=g?c:b;N=L[K+4>>2];if(L[N+68>>2]!=L[a+40>>2]){r=L[a+12>>2];if((r|0)>0){g=0;while(1){G=g<<2;h=L[G+L[a+20>>2]>>2];if(h){ha[L[L[h>>2]>>2]](h)|0;h=L[a+4>>2];ha[L[L[h>>2]+60>>2]](h,L[L[a+20>>2]+G>>2])}g=g+1|0;if((r|0)!=(g|0)){continue}break}}cn(a,b,c)}h=L[N+64>>2];b=L[a+20>>2];c=L[a+4>>2];L[f+172>>2]=L[a+32>>2];L[f+168>>2]=b;L[f+164>>2]=e;L[f+160>>2]=d;L[f+156>>2]=c;L[f+152>>2]=F;L[f+148>>2]=K;L[f+144>>2]=9840;L[f+60>>2]=0;L[f+52>>2]=0;L[f+56>>2]=0;J[f+64|0]=1;c=L[a+12>>2];a:{if((c|0)<=0){break a}b=0;while(1){d=L[L[a+20>>2]+(b<<2)>>2];if(d){ha[L[L[d>>2]+16>>2]](d,f+48|0);g=0;d=L[f+52>>2];if((d|0)>0){while(1){c=L[L[f+60>>2]+(g<<2)>>2];if(L[c+748>>2]){L[e+4>>2]=c;r=L[c+740>>2];G=L[L[e+8>>2]+8>>2];d=(r|0)==(G|0);O=c;c=L[L[e+12>>2]+8>>2];_a(O,(d?r:c)+4|0,(d?c:G)+4|0);L[e+4>>2]=0;d=L[f+52>>2]}g=g+1|0;if((g|0)<(d|0)){continue}break}}b:{if((d|0)>=0){break b}if(L[f+56>>2]<0){c=L[f+60>>2];if(!(c?!c|!M[f+64|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}J[f+64|0]=1;L[f+56>>2]=0;L[f+60>>2]=0}c=0;g=d;r=0-g&3;if(r){while(1){L[L[f+60>>2]+(g<<2)>>2]=0;g=g+1|0;c=c+1|0;if((r|0)!=(c|0)){continue}break}}if(d>>>0>4294967292){break b}while(1){c=g<<2;L[c+L[f+60>>2]>>2]=0;L[(c+L[f+60>>2]|0)+4>>2]=0;L[(c+L[f+60>>2]|0)+8>>2]=0;L[(c+L[f+60>>2]|0)+12>>2]=0;g=g+4|0;if(g){continue}break}}L[f+52>>2]=0;c=L[a+12>>2]}b=b+1|0;if((c|0)>(b|0)){continue}break}b=L[f+60>>2];if(!b|!M[f+64|0]){break a}if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}c:{d:{if(h){b=L[K+12>>2];s=P[b+52>>2];t=P[b+56>>2];c=L[F+12>>2];u=P[c+52>>2];v=P[c+56>>2];i=P[b+20>>2];j=P[b+36>>2];w=P[c+20>>2];x=P[c+36>>2];y=P[c+24>>2];k=P[b+24>>2];z=P[c+40>>2];l=P[b+40>>2];A=P[c+32>>2];m=P[b+32>>2];B=P[c>>2];n=P[b>>2];C=P[c+16>>2];o=P[b+16>>2];D=P[b+48>>2];E=P[c+48>>2];p=P[b+4>>2];H=P[c+4>>2];I=P[c+8>>2];q=P[b+8>>2];L[f+108>>2]=0;L[f+92>>2]=0;L[f+76>>2]=0;P[f+88>>2]=S(z*l)+S(S(I*q)+S(k*y));P[f+84>>2]=S(x*l)+S(S(H*q)+S(k*w));P[f+72>>2]=S(z*j)+S(S(I*p)+S(i*y));P[f+68>>2]=S(x*j)+S(S(H*p)+S(i*w));D=S(-D);P[f+104>>2]=S(S(S(q*D)-S(k*s))-S(l*t))+S(S(v*l)+S(S(E*q)+S(k*u)));P[f+100>>2]=S(S(S(p*D)-S(i*s))-S(j*t))+S(S(v*j)+S(S(E*p)+S(i*u)));L[f+60>>2]=0;P[f+48>>2]=S(A*m)+S(S(B*n)+S(o*C));P[f+80>>2]=S(A*l)+S(S(B*q)+S(k*C));P[f+64>>2]=S(A*j)+S(S(B*p)+S(i*C));P[f+56>>2]=S(z*m)+S(S(I*n)+S(o*y));P[f+52>>2]=S(x*m)+S(S(H*n)+S(o*w));P[f+96>>2]=S(S(S(n*D)-S(o*s))-S(m*t))+S(S(v*m)+S(S(E*n)+S(o*u)));b=L[F+4>>2];ha[L[L[b>>2]+8>>2]](b,f+48|0,f+128|0,f+112|0);b=L[f+140>>2];L[f+24>>2]=L[f+136>>2];L[f+28>>2]=b;b=L[f+124>>2];L[f+40>>2]=L[f+120>>2];L[f+44>>2]=b;b=L[f+116>>2];L[f+32>>2]=L[f+112>>2];L[f+36>>2]=b;b=L[f+132>>2];L[f+16>>2]=L[f+128>>2];L[f+20>>2]=b;Vb(h,L[h>>2],f+16|0,f+144|0);break d}g=0;b=L[a+12>>2];if((b|0)<=0){break c}while(1){an(f+144|0,L[(L[N+24>>2]+R(g,80)|0)+64>>2],g);g=g+1|0;if((b|0)!=(g|0)){continue}break}}h=L[a+12>>2];if((h|0)<=0){break c}e=0;while(1){d=e<<2;e:{if(!L[d+L[a+20>>2]>>2]){break e}b=L[N+24>>2]+R(e,80)|0;g=L[b+64>>2];c=L[K+12>>2];H=P[c+52>>2];I=P[c+56>>2];s=P[b+48>>2];t=P[b+52>>2];u=P[b+56>>2];v=P[b+4>>2];w=P[b+20>>2];x=P[b+36>>2];y=P[b+8>>2];z=P[b+24>>2];A=P[b+40>>2];i=P[c+20>>2];j=P[c+24>>2];B=P[b>>2];C=P[b+16>>2];k=P[c+36>>2];E=P[b+32>>2];l=P[c+40>>2];D=P[c+48>>2];m=P[c+8>>2];n=P[c>>2];o=P[c+4>>2];p=P[c+16>>2];q=P[c+32>>2];c=0;L[f+108>>2]=0;L[f+92>>2]=0;L[f+76>>2]=0;L[f+60>>2]=0;P[f+80>>2]=S(E*l)+S(S(B*q)+S(k*C));P[f+64>>2]=S(E*j)+S(S(B*p)+S(i*C));P[f+48>>2]=S(E*m)+S(S(B*n)+S(o*C));P[f+88>>2]=S(A*l)+S(S(y*q)+S(k*z));P[f+84>>2]=S(x*l)+S(S(v*q)+S(k*w));P[f+72>>2]=S(A*j)+S(S(y*p)+S(i*z));P[f+68>>2]=S(x*j)+S(S(v*p)+S(i*w));P[f+56>>2]=S(A*m)+S(S(y*n)+S(o*z));P[f+52>>2]=S(x*m)+S(S(v*n)+S(o*w));P[f+104>>2]=I+S(S(u*l)+S(S(s*q)+S(k*t)));P[f+100>>2]=H+S(S(u*j)+S(S(s*p)+S(i*t)));P[f+96>>2]=D+S(S(u*m)+S(S(s*n)+S(o*t)));ha[L[L[g>>2]+8>>2]](g,f+48|0,f+16|0,f+128|0);b=L[F+4>>2];ha[L[L[b>>2]+8>>2]](b,L[F+12>>2],f+112|0,f);b=0;f:{if(P[f+16>>2]>P[f>>2]){break f}b=0;if(P[f+128>>2]>2]){break f}b=1}if(!(P[f+20>>2]>P[f+4>>2])&(!(P[f+132>>2]>2])&(P[f+136>>2]>2]|P[f+24>>2]>P[f+8>>2]?c:b))){break e}b=L[d+L[a+20>>2]>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+4>>2];ha[L[L[b>>2]+60>>2]](b,L[d+L[a+20>>2]>>2]);L[d+L[a+20>>2]>>2]=0}e=e+1|0;if((h|0)!=(e|0)){continue}break}}fa=f+176|0}function Cl(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=S(0),i=S(0),j=S(0),k=S(0),l=S(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=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=0,F=S(0),G=S(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),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=0,ea=S(0),ga=0;g=fa-96|0;fa=g;He(L[a+4>>2]);V=P[d+40>>2];W=P[d+36>>2];X=P[d+24>>2];Y=P[d+20>>2];G=P[b+20>>2];H=P[b+36>>2];I=P[b+24>>2];y=P[b+52>>2];m=P[c+52>>2];z=P[d+52>>2];l=P[e+52>>2];J=P[b+40>>2];A=P[b+56>>2];h=P[c+56>>2];B=P[d+56>>2];i=P[e+56>>2];Z=P[d+32>>2];$=P[d+16>>2];aa=P[d+8>>2];ba=P[d+4>>2];ca=P[d>>2];K=P[b>>2];M=P[b+16>>2];N=P[b+32>>2];O=P[b+4>>2];Q=P[b+8>>2];C=P[b+48>>2];j=P[c+48>>2];D=P[d+48>>2];p=P[e+48>>2];r=L[a+8>>2];L[g+60>>2]=0;x=S(S(j-C)-S(p-D));j=S(-x);t=S(S(m-y)-S(l-z));u=S(S(h-A)-S(i-B));P[g+56>>2]=S(S(Q*j)-S(I*t))-S(J*u);P[g+52>>2]=S(S(O*j)-S(G*t))-S(H*u);P[g+48>>2]=S(S(K*j)-S(M*t))-S(N*u);ha[L[L[r>>2]+64>>2]](g+80|0,r,g+48|0);h=P[b+52>>2];i=P[b+24>>2];p=P[b+20>>2];j=P[b+56>>2];m=P[b+40>>2];l=P[b+36>>2];k=P[b+16>>2];n=P[b+48>>2];s=P[b+8>>2];o=P[b>>2];q=P[b+4>>2];v=P[b+32>>2];L[g+76>>2]=0;R=j;j=P[g+88>>2];w=S(m*j);m=P[g+80>>2];T=l;l=P[g+84>>2];v=S(R+S(w+S(S(v*m)+S(T*l))));P[g+72>>2]=v;n=S(n+S(S(j*s)+S(S(m*o)+S(l*q))));P[g+64>>2]=n;h=S(h+S(S(j*i)+S(S(m*k)+S(l*p))));P[g+68>>2]=h;r=L[a+12>>2];j=P[d+20>>2];m=P[d+36>>2];l=P[d+24>>2];i=P[d+40>>2];p=P[d>>2];k=P[d+16>>2];s=P[d+32>>2];o=P[d+4>>2];q=P[d+8>>2];L[g+28>>2]=0;P[g+24>>2]=S(i*u)+S(S(q*x)+S(t*l));P[g+20>>2]=S(m*u)+S(S(o*x)+S(t*j));P[g+16>>2]=S(s*u)+S(S(p*x)+S(t*k));ha[L[L[r>>2]+64>>2]](g+32|0,r,g+16|0);p=P[d+56>>2];k=P[d+40>>2];s=P[d+36>>2];j=P[d+52>>2];m=P[d+24>>2];l=P[d+20>>2];o=P[d+32>>2];i=P[d+48>>2];q=P[d+8>>2];w=P[d>>2];U=P[d+4>>2];F=P[d+16>>2];L[g+60>>2]=0;L[g+92>>2]=0;R=j;j=P[g+40>>2];ea=S(m*j);m=P[g+32>>2];T=l;l=P[g+36>>2];F=S(R+S(ea+S(S(F*m)+S(T*l))));P[g+52>>2]=F;h=S(h-F);P[g+84>>2]=h;i=S(i+S(S(j*q)+S(S(m*w)+S(l*U))));P[g+48>>2]=i;i=S(n-i);P[g+80>>2]=i;j=S(p+S(S(j*k)+S(S(m*o)+S(l*s))));P[g+56>>2]=j;k=S(v-j);P[g+88>>2]=k;s=S(0);j=S(0);m=S(0);l=S(0);p=S(0);n=S(0);a:{b:{if(!(S(S(k*k)+S(S(i*i)+S(h*h)))>S(9999999747378752e-20))){break b}r=32;while(1){if(!r){break b}E=L[a+8>>2];L[g+12>>2]=0;h=S(-P[g+80>>2]);i=P[g+84>>2];k=P[g+88>>2];P[g+8>>2]=S(S(Q*h)-S(I*i))-S(J*k);P[g+4>>2]=S(S(O*h)-S(G*i))-S(H*k);P[g>>2]=S(S(K*h)-S(M*i))-S(N*k);da=g+16|0;ha[L[L[E>>2]+64>>2]](da,E,g);L[g+76>>2]=0;h=P[g+24>>2];i=P[g+16>>2];k=P[g+20>>2];P[g+72>>2]=A+S(S(h*J)+S(S(i*N)+S(H*k)));P[g+68>>2]=y+S(S(h*I)+S(S(i*M)+S(G*k)));P[g+64>>2]=C+S(S(h*Q)+S(S(i*K)+S(O*k)));E=L[a+12>>2];L[g+12>>2]=0;h=P[g+88>>2];i=P[g+80>>2];k=P[g+84>>2];P[g+8>>2]=S(V*h)+S(S(aa*i)+S(X*k));P[g+4>>2]=S(W*h)+S(S(ba*i)+S(Y*k));P[g>>2]=S(Z*h)+S(S(ca*i)+S($*k));ha[L[L[E>>2]+64>>2]](da,E,g);L[g+60>>2]=0;L[g+44>>2]=0;k=P[g+24>>2];o=P[g+16>>2];q=P[g+20>>2];h=S(z+S(S(k*X)+S(S(o*$)+S(Y*q))));P[g+52>>2]=h;v=S(P[g+68>>2]-h);P[g+36>>2]=v;h=P[g+84>>2];i=S(D+S(S(k*aa)+S(S(o*ca)+S(ba*q))));P[g+48>>2]=i;w=S(P[g+64>>2]-i);P[g+32>>2]=w;i=P[g+80>>2];k=S(B+S(S(k*V)+S(S(o*Z)+S(W*q))));P[g+56>>2]=k;o=S(P[g+72>>2]-k);P[g+40>>2]=o;if(n>S(1)){break a}k=P[g+88>>2];o=S(S(k*o)+S(S(i*w)+S(h*v)));if(o>S(0)){j=S(S(k*u)+S(S(i*x)+S(t*h)));if(j>=S(-14210854715202004e-30)){break a}m=P[b+48>>2];l=P[c+48>>2];p=P[b+52>>2];y=P[c+52>>2];A=P[b+56>>2];C=P[c+56>>2];D=P[d+48>>2];q=P[e+48>>2];z=P[d+52>>2];w=P[e+52>>2];B=P[d+56>>2];U=P[e+56>>2];L[g+44>>2]=0;P[g+36>>2]=v;n=S(n-S(o/j));j=S(S(1)-n);B=S(S(B*j)+S(n*U));z=S(S(j*z)+S(n*w));D=S(S(j*D)+S(n*q));A=S(S(j*A)+S(n*C));y=S(S(j*p)+S(n*y));C=S(S(j*m)+S(n*l));p=P[g+92>>2];m=h;l=k;j=i}if(!yl(L[a+4>>2],g+32|0)){Bl(L[a+4>>2],g+32|0,g- -64|0,g+48|0)}if(!zl(L[a+4>>2],g+80|0)){break b}r=r-1|0;h=P[g+88>>2];i=S(h*h);h=P[g+80>>2];k=S(h*h);h=P[g+84>>2];if(S(i+S(k+S(h*h)))>S(9999999747378752e-20)){continue}break}}P[f+164>>2]=n;n=S(0);i=S(0);h=S(0);k=S(S(l*l)+S(S(j*j)+S(m*m)));if(k>=S(14210854715202004e-30)){h=l;l=S(S(1)/S(_(k)));i=S(h*l);n=S(m*l);s=S(j*l);h=p}P[f+132>>2]=s;P[f+144>>2]=h;P[f+140>>2]=i;P[f+136>>2]=n;if(S(-P[f+172>>2])<=S(S(i*u)+S(S(s*x)+S(t*n)))){break a}xl(L[a+4>>2],g+16|0,g);a=L[g+12>>2];L[f+156>>2]=L[g+8>>2];L[f+160>>2]=a;a=L[g+4>>2];L[f+148>>2]=L[g>>2];L[f+152>>2]=a;ga=1}fa=g+96|0;return ga|0}function Wj(a,b,c){var d=S(0),e=S(0),f=S(0),g=S(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=S(0),q=S(0),r=S(0),s=S(0),t=S(0),u=S(0),v=S(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=0;w=L[a+4>>2];L[b>>2]=L[a>>2];L[b+4>>2]=w;w=L[a+12>>2];L[b+8>>2]=L[a+8>>2];L[b+12>>2]=w;w=L[a+28>>2];L[b+24>>2]=L[a+24>>2];L[b+28>>2]=w;w=L[a+20>>2];L[b+16>>2]=L[a+16>>2];L[b+20>>2]=w;w=L[a+36>>2];L[b+32>>2]=L[a+32>>2];L[b+36>>2]=w;w=L[a+44>>2];L[b+40>>2]=L[a+40>>2];L[b+44>>2]=w;e=P[a+8>>2];f=P[a+20>>2];l=P[a+40>>2];g=P[a+24>>2];i=P[a+36>>2];j=P[a+4>>2];m=P[a+32>>2];n=P[a+16>>2];h=P[a>>2];L[c+44>>2]=0;L[c+28>>2]=0;L[c+12>>2]=0;p=S(S(n*i)-S(m*f));k=S(S(f*l)-S(i*g));o=S(S(g*m)-S(l*n));d=S(S(1)/S(S(e*p)+S(S(h*k)+S(j*o))));q=S(S(S(e*i)-S(l*j))*d);P[c+4>>2]=q;r=S(S(S(j*g)-S(f*e))*d);P[c+8>>2]=r;o=S(o*d);P[c+16>>2]=o;s=S(S(S(h*l)-S(m*e))*d);P[c+20>>2]=s;t=S(S(S(e*n)-S(g*h))*d);P[c+24>>2]=t;p=S(p*d);P[c+32>>2]=p;u=S(S(S(j*m)-S(i*h))*d);P[c+36>>2]=u;v=S(S(S(h*f)-S(n*j))*d);P[c+40>>2]=v;k=S(k*d);P[c>>2]=k;a:{b:{if(!L[8470]){break b}while(1){d=S(T(k));e=S(T(o));j=S(T(p));h=S(S(d+e)+j);f=S(T(q));l=S(T(s));g=S(T(u));i=S(S(f+l)+g);h=h>i?h:i;i=S(T(r));m=S(T(t));n=S(T(v));y=S(S(i+m)+n);d=S(S(d+f)+i);e=S(S(e+l)+m);d=d>e?d:e;e=S(S(j+g)+n);e=S((h>y?h:y)*(d>e?d:e));if(e>2];f=S(T(y));j=P[b+16>>2];g=S(T(j));h=P[b+32>>2];n=S(T(h));d=S(S(f+g)+n);z=P[b+4>>2];B=S(T(z));m=P[b+20>>2];C=S(T(m));l=P[b+36>>2];D=S(T(l));i=S(S(B+C)+D);E=d>i?d:i;A=P[b+8>>2];F=S(T(A));i=P[b+24>>2];G=S(T(i));d=P[b+40>>2];H=S(T(d));x=S(S(F+G)+H);E=E>x?E:x;f=S(S(f+B)+F);g=S(S(g+C)+G);f=f>g?f:g;g=S(S(n+D)+H);f=S(E*(f>g?f:g));if(f>2]=0;L[b+28>>2]=0;L[b+12>>2]=0;x=d;e=Zf(S(e/f),S(.25));d=S(e+S(-2));e=S(S(1)/e);B=S(S(S(x*d)+S(v*e))*S(.5));f=S(x+B);P[b+40>>2]=f;C=S(S(S(l*d)+S(t*e))*S(.5));l=S(l+C);P[b+36>>2]=l;D=S(S(S(h*d)+S(e*r))*S(.5));g=S(h+D);P[b+32>>2]=g;F=S(S(S(i*d)+S(u*e))*S(.5));i=S(i+F);P[b+24>>2]=i;G=S(S(S(m*d)+S(s*e))*S(.5));m=S(m+G);P[b+20>>2]=m;H=S(S(S(j*d)+S(e*q))*S(.5));n=S(j+H);P[b+16>>2]=n;x=A;A=S(S(S(p*e)+S(d*A))*S(.5));j=S(x+A);P[b+8>>2]=j;x=z;z=S(S(S(o*e)+S(d*z))*S(.5));h=S(x+z);P[b+4>>2]=h;x=y;y=S(S(S(y*d)+S(k*e))*S(.5));e=S(x+y);P[b>>2]=e;L[c+44>>2]=0;L[c+28>>2]=0;L[c+12>>2]=0;q=S(S(n*l)-S(g*m));k=S(S(m*f)-S(l*i));r=S(S(i*g)-S(f*n));d=S(S(1)/S(S(j*q)+S(S(e*k)+S(r*h))));v=S(S(S(e*m)-S(n*h))*d);P[c+40>>2]=v;u=S(S(S(h*g)-S(l*e))*d);P[c+36>>2]=u;p=S(q*d);P[c+32>>2]=p;t=S(S(S(j*n)-S(i*e))*d);P[c+24>>2]=t;s=S(S(S(e*f)-S(g*j))*d);P[c+20>>2]=s;o=S(r*d);P[c+16>>2]=o;r=S(S(S(h*i)-S(m*j))*d);P[c+8>>2]=r;q=S(S(S(j*l)-S(f*h))*d);P[c+4>>2]=q;k=S(k*d);P[c>>2]=k;d=S(S(S(T(y))+S(T(H)))+S(T(D)));e=S(S(T(C))+S(S(T(G))+S(T(z))));d=d>e?d:e;e=S(S(T(B))+S(S(T(F))+S(T(A))));if(S(E*P[8469])>=(d>e?d:e)){break a}I=I+1|0;if(I>>>0>2];e=P[b+20>>2];j=P[b+40>>2];h=P[b+24>>2];f=P[a+36>>2];l=P[a+20>>2];g=P[a+4>>2];i=P[b+4>>2];m=P[a+40>>2];n=P[a+24>>2];q=P[a+8>>2];r=P[b+8>>2];o=P[a+32>>2];s=P[b+32>>2];t=P[a>>2];p=P[b>>2];u=P[a+16>>2];v=P[b+16>>2];L[c+44>>2]=0;L[c+28>>2]=0;L[c+12>>2]=0;k=S(S(o*s)+S(S(t*p)+S(v*u)));P[c>>2]=S(k+k)*S(.5);k=S(S(m*j)+S(S(q*r)+S(h*n)));P[c+40>>2]=S(k+k)*S(.5);k=S(S(S(S(f*j)+S(S(g*r)+S(h*l)))+S(S(m*d)+S(S(q*i)+S(e*n))))*S(.5));P[c+36>>2]=k;j=S(S(S(S(o*j)+S(S(t*r)+S(h*u)))+S(S(m*s)+S(S(q*p)+S(v*n))))*S(.5));P[c+32>>2]=j;P[c+24>>2]=k;h=S(S(f*d)+S(S(g*i)+S(e*l)));P[c+20>>2]=S(h+h)*S(.5);d=S(S(S(S(o*d)+S(S(t*i)+S(e*u)))+S(S(f*s)+S(S(g*p)+S(v*l))))*S(.5));P[c+16>>2]=d;P[c+8>>2]=j;P[c+4>>2]=d;return}d=P[a+32>>2];e=P[a>>2];j=P[a+16>>2];h=P[b+32>>2];f=P[b>>2];l=P[b+16>>2];g=P[a+36>>2];i=P[a+4>>2];m=P[a+20>>2];n=P[b+36>>2];q=P[b+4>>2];r=P[b+20>>2];o=P[a+40>>2];s=P[b+40>>2];t=P[a+8>>2];p=P[b+8>>2];u=P[a+24>>2];v=P[b+24>>2];L[c+44>>2]=0;L[c+28>>2]=0;L[c+12>>2]=0;k=S(S(o*s)+S(S(t*p)+S(v*u)));P[c+40>>2]=S(k+k)*S(.5);k=S(S(S(S(g*s)+S(S(i*p)+S(v*m)))+S(S(o*n)+S(S(t*q)+S(r*u))))*S(.5));P[c+36>>2]=k;o=S(S(S(S(d*s)+S(S(e*p)+S(v*j)))+S(S(o*h)+S(S(t*f)+S(l*u))))*S(.5));P[c+32>>2]=o;P[c+24>>2]=k;s=S(S(g*n)+S(S(i*q)+S(r*m)));P[c+20>>2]=S(s+s)*S(.5);g=S(S(S(S(d*n)+S(S(e*q)+S(r*j)))+S(S(g*h)+S(S(i*f)+S(l*m))))*S(.5));P[c+16>>2]=g;P[c+8>>2]=o;P[c+4>>2]=g;d=S(S(d*h)+S(S(e*f)+S(l*j)));P[c>>2]=S(d+d)*S(.5)}function sg(a,b,c){var d=S(0),e=S(0),f=S(0),g=S(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=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=0,C=0;B=M[a+180|0];C=M[a+48|0];a:{if(C?B:1){x=P[b+52>>2];z=P[b+56>>2];j=P[a+100>>2];k=P[a+104>>2];l=P[a+108>>2];d=P[b+20>>2];g=P[b+24>>2];y=P[a+68>>2];p=P[a+84>>2];q=P[a+56>>2];r=P[a+72>>2];s=P[a+88>>2];t=P[a+60>>2];h=P[b+36>>2];u=P[a+76>>2];m=P[b+40>>2];v=P[a+92>>2];A=P[b+48>>2];n=P[b+8>>2];o=P[b>>2];e=P[b+4>>2];f=P[b+16>>2];w=P[a+52>>2];i=P[b+32>>2];L[a+884>>2]=0;L[a+868>>2]=0;L[a+852>>2]=0;L[a+836>>2]=0;P[a+864>>2]=S(v*m)+S(S(t*i)+S(u*h));P[a+860>>2]=S(s*m)+S(S(q*i)+S(r*h));P[a+856>>2]=S(p*m)+S(S(w*i)+S(y*h));P[a+848>>2]=S(v*g)+S(S(t*f)+S(u*d));P[a+844>>2]=S(s*g)+S(S(q*f)+S(r*d));P[a+840>>2]=S(p*g)+S(S(w*f)+S(y*d));P[a+832>>2]=S(v*n)+S(S(t*o)+S(e*u));P[a+828>>2]=S(s*n)+S(S(q*o)+S(e*r));P[a+824>>2]=S(p*n)+S(S(w*o)+S(y*e));P[a+880>>2]=z+S(S(l*m)+S(S(j*i)+S(h*k)));P[a+876>>2]=x+S(S(l*g)+S(S(j*f)+S(d*k)));P[a+872>>2]=A+S(S(l*n)+S(S(j*o)+S(e*k)));j=P[a+172>>2];d=P[c+40>>2];k=P[a+164>>2];g=P[c+32>>2];h=P[c+36>>2];l=P[a+168>>2];y=S(S(j*d)+S(S(k*g)+S(h*l)));e=P[c+24>>2];f=P[c+16>>2];i=P[c+20>>2];m=S(S(j*e)+S(S(k*f)+S(i*l)));p=P[a+156>>2];q=P[a+124>>2];r=P[a+140>>2];n=S(S(p*d)+S(S(q*g)+S(r*h)));s=P[a+152>>2];t=P[a+120>>2];u=P[a+136>>2];o=S(S(s*d)+S(S(t*g)+S(u*h)));v=P[a+148>>2];w=P[a+116>>2];x=P[a+132>>2];z=S(S(v*d)+S(S(w*g)+S(x*h)));g=S(S(p*e)+S(S(q*f)+S(r*i)));h=S(S(s*e)+S(S(t*f)+S(u*i)));i=S(S(v*e)+S(S(w*f)+S(x*i)));d=P[c+8>>2];e=P[c>>2];f=P[c+4>>2];j=S(S(j*d)+S(S(k*e)+S(f*l)));k=S(S(p*d)+S(S(q*e)+S(f*r)));l=S(S(s*d)+S(S(t*e)+S(f*u)));d=S(S(v*d)+S(S(w*e)+S(x*f)));break a}x=P[c+52>>2];z=P[c+56>>2];j=P[a+164>>2];k=P[a+168>>2];l=P[a+172>>2];d=P[c+20>>2];g=P[c+24>>2];y=P[a+132>>2];p=P[a+148>>2];q=P[a+120>>2];r=P[a+136>>2];s=P[a+152>>2];t=P[a+124>>2];h=P[c+36>>2];u=P[a+140>>2];m=P[c+40>>2];v=P[a+156>>2];A=P[c+48>>2];n=P[c+8>>2];o=P[c>>2];e=P[c+4>>2];f=P[c+16>>2];w=P[a+116>>2];i=P[c+32>>2];L[a+884>>2]=0;L[a+868>>2]=0;L[a+852>>2]=0;L[a+836>>2]=0;P[a+864>>2]=S(v*m)+S(S(t*i)+S(u*h));P[a+860>>2]=S(s*m)+S(S(q*i)+S(r*h));P[a+856>>2]=S(p*m)+S(S(w*i)+S(y*h));P[a+848>>2]=S(v*g)+S(S(t*f)+S(u*d));P[a+844>>2]=S(s*g)+S(S(q*f)+S(r*d));P[a+840>>2]=S(p*g)+S(S(w*f)+S(y*d));P[a+832>>2]=S(v*n)+S(S(t*o)+S(e*u));P[a+828>>2]=S(s*n)+S(S(q*o)+S(e*r));P[a+824>>2]=S(p*n)+S(S(w*o)+S(y*e));P[a+880>>2]=z+S(S(l*m)+S(S(j*i)+S(h*k)));P[a+876>>2]=x+S(S(l*g)+S(S(j*f)+S(d*k)));P[a+872>>2]=A+S(S(l*n)+S(S(j*o)+S(e*k)));j=P[a+108>>2];d=P[b+40>>2];k=P[a+100>>2];g=P[b+32>>2];h=P[b+36>>2];l=P[a+104>>2];y=S(S(j*d)+S(S(k*g)+S(h*l)));e=P[b+24>>2];f=P[b+16>>2];i=P[b+20>>2];m=S(S(j*e)+S(S(k*f)+S(i*l)));p=P[a+92>>2];q=P[a+60>>2];r=P[a+76>>2];n=S(S(p*d)+S(S(q*g)+S(r*h)));s=P[a+88>>2];t=P[a+56>>2];u=P[a+72>>2];o=S(S(s*d)+S(S(t*g)+S(u*h)));v=P[a+84>>2];w=P[a+52>>2];x=P[a+68>>2];z=S(S(v*d)+S(S(w*g)+S(x*h)));g=S(S(p*e)+S(S(q*f)+S(r*i)));h=S(S(s*e)+S(S(t*f)+S(u*i)));i=S(S(v*e)+S(S(w*f)+S(x*i)));d=P[b+8>>2];e=P[b>>2];f=P[b+4>>2];j=S(S(j*d)+S(S(k*e)+S(f*l)));k=S(S(p*d)+S(S(q*e)+S(f*r)));l=S(S(s*d)+S(S(t*e)+S(f*u)));c=b;d=S(S(v*d)+S(S(w*e)+S(x*f)))}e=P[c+56>>2];f=P[c+52>>2];P[a+936>>2]=P[c+48>>2]+j;L[a+932>>2]=0;P[a+928>>2]=n;P[a+924>>2]=o;P[a+920>>2]=z;L[a+916>>2]=0;P[a+912>>2]=g;P[a+908>>2]=h;P[a+904>>2]=i;L[a+900>>2]=0;P[a+896>>2]=k;P[a+892>>2]=l;P[a+888>>2]=d;L[a+948>>2]=0;P[a+940>>2]=m+f;P[a+944>>2]=y+e;b=L[a+876>>2];L[a+968>>2]=L[a+872>>2];L[a+972>>2]=b;b=L[a+884>>2];L[a+976>>2]=L[a+880>>2];L[a+980>>2]=b;b=L[a+948>>2];L[a+992>>2]=L[a+944>>2];L[a+996>>2]=b;b=L[a+940>>2];L[a+984>>2]=L[a+936>>2];L[a+988>>2]=b;e=P[a+840>>2];f=P[a+856>>2];i=P[a+824>>2];L[a+964>>2]=0;P[a+960>>2]=f;P[a+956>>2]=e;P[a+952>>2]=i;b:{if(B|C){n=P[a+972>>2];g=S(P[a+988>>2]-n);o=P[a+968>>2];h=S(P[a+984>>2]-o);m=P[a+976>>2];d=S(P[a+992>>2]-m);break b}n=P[a+972>>2];g=S(n-P[a+988>>2]);o=P[a+968>>2];h=S(o-P[a+984>>2]);m=P[a+976>>2];d=S(m-P[a+992>>2])}P[a+1016>>2]=h;L[a+1028>>2]=0;P[a+1024>>2]=d;P[a+1020>>2]=g;L[a+1012>>2]=0;j=S(S(f*d)+S(S(i*h)+S(e*g)));P[a+1032>>2]=j;P[a+1008>>2]=S(f*j)+m;P[a+1004>>2]=n+S(e*j);P[a+1e3>>2]=o+S(i*j);P[a+1036>>2]=S(d*P[a+860>>2])+S(S(h*P[a+828>>2])+S(P[a+844>>2]*g));P[a+1040>>2]=S(d*P[a+864>>2])+S(S(h*P[a+832>>2])+S(P[a+848>>2]*g))}function Vn(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=S(0),f=0,g=0,h=0;f=fa-96|0;fa=f;L[f+92>>2]=a;L[f+88>>2]=b;L[f+84>>2]=c;a=L[f+92>>2];b=f+12|0;ej(b);ha[L[L[a>>2]+20>>2]](a,L[f+88>>2],b);d=P[f+76>>2];a=fa-32|0;fa=a;L[a+28>>2]=L[f+84>>2];L[a+24>>2]=b;L[a+20>>2]=b+16;L[a+16>>2]=b+32;P[a+12>>2]=d;c=L[a+28>>2];b=fa-16|0;L[b+12>>2]=L[a+24>>2];e=P[L[b+12>>2]>>2];L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]>>2];L[b+12>>2]=L[a+16>>2];a:{if(P[L[b+12>>2]>>2]>2]=L[a+16>>2];d=P[L[b+12>>2]>>2];break a}b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]>>2]}b:{if(e>d){b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]>>2];L[b+12>>2]=L[a+16>>2];c:{if(P[L[b+12>>2]>>2]>2]=L[a+16>>2];d=P[L[b+12>>2]>>2];break c}b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]>>2]}break b}b=fa-16|0;L[b+12>>2]=L[a+24>>2];d=P[L[b+12>>2]>>2]}b=fa-16|0;L[b+12>>2]=c;P[L[b+12>>2]>>2]=d;L[b+12>>2]=L[a+24>>2];e=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[a+16>>2];d:{if(P[L[b+12>>2]+4>>2]>2]=L[a+16>>2];d=P[L[b+12>>2]+4>>2];break d}b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]+4>>2]}e:{if(e>d){b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[a+16>>2];f:{if(P[L[b+12>>2]+4>>2]>2]=L[a+16>>2];d=P[L[b+12>>2]+4>>2];break f}b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]+4>>2]}break e}b=fa-16|0;L[b+12>>2]=L[a+24>>2];d=P[L[b+12>>2]+4>>2]}b=fa-16|0;L[b+12>>2]=c;P[L[b+12>>2]+4>>2]=d;L[b+12>>2]=L[a+24>>2];e=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[a+16>>2];g:{if(P[L[b+12>>2]+8>>2]>2]=L[a+16>>2];d=P[L[b+12>>2]+8>>2];break g}b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]+8>>2]}h:{if(e>d){b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[a+16>>2];i:{if(P[L[b+12>>2]+8>>2]>2]=L[a+16>>2];d=P[L[b+12>>2]+8>>2];break i}b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]+8>>2]}break h}b=fa-16|0;L[b+12>>2]=L[a+24>>2];d=P[L[b+12>>2]+8>>2]}b=fa-16|0;L[b+12>>2]=c;P[L[b+12>>2]+8>>2]=d;L[b+12>>2]=L[a+24>>2];e=P[L[b+12>>2]>>2];L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]>>2];L[b+12>>2]=L[a+16>>2];j:{if(P[L[b+12>>2]>>2]>d){b=fa-16|0;L[b+12>>2]=L[a+16>>2];d=P[L[b+12>>2]>>2];break j}b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]>>2]}k:{if(e>2]=L[a+20>>2];d=P[L[b+12>>2]>>2];L[b+12>>2]=L[a+16>>2];l:{if(P[L[b+12>>2]>>2]>d){b=fa-16|0;L[b+12>>2]=L[a+16>>2];d=P[L[b+12>>2]>>2];break l}b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]>>2]}break k}b=fa-16|0;L[b+12>>2]=L[a+24>>2];d=P[L[b+12>>2]>>2]}b=fa-16|0;L[b+12>>2]=c+16;P[L[b+12>>2]>>2]=d;L[b+12>>2]=L[a+24>>2];e=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[a+16>>2];m:{if(P[L[b+12>>2]+4>>2]>d){b=fa-16|0;L[b+12>>2]=L[a+16>>2];d=P[L[b+12>>2]+4>>2];break m}b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]+4>>2]}n:{if(e>2]=L[a+20>>2];d=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[a+16>>2];o:{if(P[L[b+12>>2]+4>>2]>d){b=fa-16|0;L[b+12>>2]=L[a+16>>2];d=P[L[b+12>>2]+4>>2];break o}b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]+4>>2]}break n}b=fa-16|0;L[b+12>>2]=L[a+24>>2];d=P[L[b+12>>2]+4>>2]}b=fa-16|0;L[b+12>>2]=c+16;P[L[b+12>>2]+4>>2]=d;L[b+12>>2]=L[a+24>>2];e=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[a+16>>2];p:{if(P[L[b+12>>2]+8>>2]>d){b=fa-16|0;L[b+12>>2]=L[a+16>>2];d=P[L[b+12>>2]+8>>2];break p}b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]+8>>2]}q:{if(e>2]=L[a+20>>2];d=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[a+16>>2];r:{if(P[L[b+12>>2]+8>>2]>d){b=fa-16|0;L[b+12>>2]=L[a+16>>2];d=P[L[b+12>>2]+8>>2];break r}b=fa-16|0;L[b+12>>2]=L[a+20>>2];d=P[L[b+12>>2]+8>>2]}break q}b=fa-16|0;L[b+12>>2]=L[a+24>>2];d=P[L[b+12>>2]+8>>2]}b=fa-16|0;h=c+16|0;L[b+12>>2]=h;P[L[b+12>>2]+8>>2]=d;d=P[a+12>>2];L[b+12>>2]=c;g=L[b+12>>2];P[g>>2]=P[g>>2]-d;d=P[a+12>>2];L[b+12>>2]=c;g=L[b+12>>2];P[g+4>>2]=P[g+4>>2]-d;d=P[a+12>>2];L[b+12>>2]=c;c=L[b+12>>2];P[c+8>>2]=P[c+8>>2]-d;d=P[a+12>>2];L[b+12>>2]=h;c=L[b+12>>2];P[c>>2]=P[c>>2]+d;d=P[a+12>>2];L[b+12>>2]=h;c=L[b+12>>2];P[c+4>>2]=P[c+4>>2]+d;d=P[a+12>>2];L[b+12>>2]=h;b=L[b+12>>2];P[b+8>>2]=P[b+8>>2]+d;fa=a+32|0;fa=f+96|0}function vA(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=S(0),k=S(0),l=S(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=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);c=fa-288|0;fa=c;wa(2726);if(L[a+232>>2]>0){while(1){d=L[L[a+240>>2]+(i<<2)>>2];L[d+244>>2]=1065353216;a:{b:{switch(L[d+216>>2]-2|0){case 0:case 3:break a;default:break b}}if(M[d+204|0]&3){break a}ue(d,b,c+224|0);c:{d:{if(!M[a+44|0]){break d}g=P[d+252>>2];g=S(g*g);if(g==S(0)){break d}j=S(P[c+280>>2]-P[d+60>>2]);l=S(j*j);j=S(P[c+272>>2]-P[d+52>>2]);k=S(j*j);j=S(P[c+276>>2]-P[d+56>>2]);if(!(g>2]+4>>2]<=19){L[8289]=L[8289]+1;e=L[a+68>>2];e=ha[L[L[e>>2]+36>>2]](e)|0;f=L[a+24>>2];L[c+132>>2]=1065353216;L[c+136>>2]=-65535;h=L[d+64>>2];L[c+148>>2]=L[d+60>>2];L[c+152>>2]=h;h=L[d+56>>2];L[c+140>>2]=L[d+52>>2];L[c+144>>2]=h;h=L[c+284>>2];L[c+164>>2]=L[c+280>>2];L[c+168>>2]=h;h=L[c+276>>2];L[c+156>>2]=L[c+272>>2];L[c+160>>2]=h;L[c+220>>2]=f;L[c+216>>2]=e;L[c+212>>2]=0;L[c+128>>2]=20724;L[c+204>>2]=0;L[c+208>>2]=d;g=P[d+248>>2];e=c+76|0;L[e+4>>2]=35;L[e+8>>2]=0;L[e>>2]=14328;L[e+44>>2]=1025758986;L[e+12>>2]=1065353216;L[e+16>>2]=1065353216;L[e>>2]=14044;L[e+20>>2]=1065353216;L[e+24>>2]=0;L[e>>2]=16192;P[c+120>>2]=g;P[c+104>>2]=g;L[c+80>>2]=8;P[c+212>>2]=P[a+56>>2];f=L[d+188>>2];K[c+136>>1]=N[f+4>>1];K[c+138>>1]=N[f+6>>1];f=L[c+236>>2];L[c+16>>2]=L[c+232>>2];L[c+20>>2]=f;f=L[c+228>>2];L[c+8>>2]=L[c+224>>2];L[c+12>>2]=f;f=L[c+252>>2];L[c+32>>2]=L[c+248>>2];L[c+36>>2]=f;f=L[c+244>>2];L[c+24>>2]=L[c+240>>2];L[c+28>>2]=f;f=L[c+268>>2];L[c+48>>2]=L[c+264>>2];L[c+52>>2]=f;f=L[c+260>>2];L[c+40>>2]=L[c+256>>2];L[c+44>>2]=f;f=L[c+284>>2];L[c+64>>2]=L[c+280>>2];L[c+68>>2]=f;f=L[c+276>>2];L[c+56>>2]=L[c+272>>2];L[c+60>>2]=f;f=d+4|0;h=L[f+12>>2];L[c+16>>2]=L[f+8>>2];L[c+20>>2]=h;h=L[f+4>>2];L[c+8>>2]=L[f>>2];L[c+12>>2]=h;h=L[d+32>>2];L[c+32>>2]=L[d+28>>2];L[c+36>>2]=h;h=L[d+24>>2];L[c+24>>2]=L[d+20>>2];L[c+28>>2]=h;h=L[d+48>>2];L[c+48>>2]=L[d+44>>2];L[c+52>>2]=h;h=L[d+40>>2];L[c+40>>2]=L[d+36>>2];L[c+44>>2]=h;Ab(a,e,f,c+8|0,c+128|0,S(0));g=P[c+132>>2];if(g>2]=g;e=c+224|0;ue(d,S(g*b),e);L[d+244>>2]=0;Hk(d,e);va()}i=i+1|0;if((i|0)>2]){continue}break}}if(M[a+275|0]){wa(2922);i=L[a+308>>2];if((i|0)>0){while(1){f=L[L[a+316>>2]+(u<<2)>>2];if(L[f+748>>2]>0){d=L[f+744>>2];d=L[d+236>>2]<<30>>31&d;e=L[f+740>>2];e=L[e+236>>2]<<30>>31&e;h=0;while(1){b=S(P[e+228>>2]*P[d+228>>2]);e:{if(!(b>S(0))){break e}i=f+R(h,184)|0;g=P[i+124>>2];if(g==S(0)){break e}r=P[i+44>>2];y=P[d+60>>2];s=P[i+40>>2];z=P[d+56>>2];t=P[i+36>>2];A=P[d+52>>2];j=S(b*S(g*S(-P[i+76>>2])));k=S(b*S(g*S(-P[i+72>>2])));g=S(b*S(g*S(-P[i+68>>2])));b=P[e+344>>2];if(b!=S(0)){n=P[i+56>>2];o=P[i+60>>2];p=P[i+52>>2];q=S(g*P[e+348>>2]);P[e+312>>2]=S(b*q)+P[e+312>>2];m=S(k*P[e+352>>2]);P[e+316>>2]=S(b*m)+P[e+316>>2];l=b;b=S(j*P[e+356>>2]);P[e+320>>2]=S(l*b)+P[e+320>>2];l=P[e+552>>2];v=P[e+304>>2];w=P[e+296>>2];B=P[e+300>>2];C=P[e+548>>2];D=P[e+288>>2];E=P[e+280>>2];F=P[e+284>>2];p=S(p-P[e+52>>2]);x=S(n-P[e+56>>2]);n=S(S(p*m)-S(q*x));o=S(o-P[e+60>>2]);m=S(S(x*b)-S(m*o));b=S(S(o*q)-S(b*p));P[e+328>>2]=S(S(S(P[e+272>>2]*n)+S(S(P[e+264>>2]*m)+S(b*P[e+268>>2])))*P[e+544>>2])+P[e+328>>2];P[e+332>>2]=S(C*S(S(D*n)+S(S(E*m)+S(b*F))))+P[e+332>>2];P[e+336>>2]=S(l*S(S(v*n)+S(S(w*m)+S(b*B))))+P[e+336>>2]}b=P[d+344>>2];if(b==S(0)){break e}g=S(P[d+348>>2]*S(-g));P[d+312>>2]=S(b*g)+P[d+312>>2];k=S(P[d+352>>2]*S(-k));P[d+316>>2]=S(b*k)+P[d+316>>2];l=b;b=S(P[d+356>>2]*S(-j));P[d+320>>2]=S(l*b)+P[d+320>>2];q=P[d+552>>2];m=P[d+304>>2];n=P[d+296>>2];o=P[d+300>>2];p=P[d+548>>2];l=P[d+288>>2];v=P[d+280>>2];w=P[d+284>>2];t=S(t-A);s=S(s-z);j=S(S(t*k)-S(g*s));r=S(r-y);k=S(S(s*b)-S(k*r));b=S(S(r*g)-S(b*t));P[d+328>>2]=S(S(S(P[d+272>>2]*j)+S(S(P[d+264>>2]*k)+S(b*P[d+268>>2])))*P[d+544>>2])+P[d+328>>2];P[d+332>>2]=S(p*S(S(l*j)+S(S(v*k)+S(b*w))))+P[d+332>>2];P[d+336>>2]=S(q*S(S(m*j)+S(S(n*k)+S(b*o))))+P[d+336>>2]}h=h+1|0;if((h|0)>2]){continue}break}i=L[a+308>>2]}u=u+1|0;if((u|0)<(i|0)){continue}break}}va()}va();fa=c+288|0}function gj(a,b,c,d,e){var f=0,g=S(0);f=fa-32|0;fa=f;L[f+24>>2]=a;L[f+20>>2]=b;L[f+16>>2]=c;L[f+12>>2]=d;P[f+8>>2]=e;a=L[f+24>>2];L[f+28>>2]=a;b=fa-16|0;L[b+12>>2]=a;L[b+12>>2]=a+16;L[b+12>>2]=L[f+20>>2];g=P[L[b+12>>2]>>2];L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]>>2];L[b+12>>2]=L[f+12>>2];a:{if(P[L[b+12>>2]>>2]>2]=L[f+12>>2];e=P[L[b+12>>2]>>2];break a}b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]>>2]}b:{if(g>e){b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]>>2];L[b+12>>2]=L[f+12>>2];c:{if(P[L[b+12>>2]>>2]>2]=L[f+12>>2];e=P[L[b+12>>2]>>2];break c}b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]>>2]}break b}b=fa-16|0;L[b+12>>2]=L[f+20>>2];e=P[L[b+12>>2]>>2]}b=fa-16|0;L[b+12>>2]=a;P[L[b+12>>2]>>2]=e;L[b+12>>2]=L[f+20>>2];g=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[f+12>>2];d:{if(P[L[b+12>>2]+4>>2]>2]=L[f+12>>2];e=P[L[b+12>>2]+4>>2];break d}b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]+4>>2]}e:{if(g>e){b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[f+12>>2];f:{if(P[L[b+12>>2]+4>>2]>2]=L[f+12>>2];e=P[L[b+12>>2]+4>>2];break f}b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]+4>>2]}break e}b=fa-16|0;L[b+12>>2]=L[f+20>>2];e=P[L[b+12>>2]+4>>2]}b=fa-16|0;L[b+12>>2]=a;P[L[b+12>>2]+4>>2]=e;L[b+12>>2]=L[f+20>>2];g=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[f+12>>2];g:{if(P[L[b+12>>2]+8>>2]>2]=L[f+12>>2];e=P[L[b+12>>2]+8>>2];break g}b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]+8>>2]}h:{if(g>e){b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[f+12>>2];i:{if(P[L[b+12>>2]+8>>2]>2]=L[f+12>>2];e=P[L[b+12>>2]+8>>2];break i}b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]+8>>2]}break h}b=fa-16|0;L[b+12>>2]=L[f+20>>2];e=P[L[b+12>>2]+8>>2]}b=fa-16|0;L[b+12>>2]=a;P[L[b+12>>2]+8>>2]=e;L[b+12>>2]=L[f+20>>2];g=P[L[b+12>>2]>>2];L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]>>2];L[b+12>>2]=L[f+12>>2];j:{if(P[L[b+12>>2]>>2]>e){b=fa-16|0;L[b+12>>2]=L[f+12>>2];e=P[L[b+12>>2]>>2];break j}b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]>>2]}k:{if(g>2]=L[f+16>>2];e=P[L[b+12>>2]>>2];L[b+12>>2]=L[f+12>>2];l:{if(P[L[b+12>>2]>>2]>e){b=fa-16|0;L[b+12>>2]=L[f+12>>2];e=P[L[b+12>>2]>>2];break l}b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]>>2]}break k}b=fa-16|0;L[b+12>>2]=L[f+20>>2];e=P[L[b+12>>2]>>2]}b=fa-16|0;L[b+12>>2]=a+16;P[L[b+12>>2]>>2]=e;L[b+12>>2]=L[f+20>>2];g=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[f+12>>2];m:{if(P[L[b+12>>2]+4>>2]>e){b=fa-16|0;L[b+12>>2]=L[f+12>>2];e=P[L[b+12>>2]+4>>2];break m}b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]+4>>2]}n:{if(g>2]=L[f+16>>2];e=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[f+12>>2];o:{if(P[L[b+12>>2]+4>>2]>e){b=fa-16|0;L[b+12>>2]=L[f+12>>2];e=P[L[b+12>>2]+4>>2];break o}b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]+4>>2]}break n}b=fa-16|0;L[b+12>>2]=L[f+20>>2];e=P[L[b+12>>2]+4>>2]}b=fa-16|0;L[b+12>>2]=a+16;P[L[b+12>>2]+4>>2]=e;L[b+12>>2]=L[f+20>>2];g=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[f+12>>2];p:{if(P[L[b+12>>2]+8>>2]>e){b=fa-16|0;L[b+12>>2]=L[f+12>>2];e=P[L[b+12>>2]+8>>2];break p}b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]+8>>2]}q:{if(g>2]=L[f+16>>2];e=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[f+12>>2];r:{if(P[L[b+12>>2]+8>>2]>e){b=fa-16|0;L[b+12>>2]=L[f+12>>2];e=P[L[b+12>>2]+8>>2];break r}b=fa-16|0;L[b+12>>2]=L[f+16>>2];e=P[L[b+12>>2]+8>>2]}break q}b=fa-16|0;L[b+12>>2]=L[f+20>>2];e=P[L[b+12>>2]+8>>2]}b=fa-16|0;c=a+16|0;L[b+12>>2]=c;P[L[b+12>>2]+8>>2]=e;e=P[f+8>>2];L[b+12>>2]=a;d=L[b+12>>2];P[d>>2]=P[d>>2]-e;e=P[f+8>>2];L[b+12>>2]=a;d=L[b+12>>2];P[d+4>>2]=P[d+4>>2]-e;e=P[f+8>>2];L[b+12>>2]=a;a=L[b+12>>2];P[a+8>>2]=P[a+8>>2]-e;e=P[f+8>>2];L[b+12>>2]=c;a=L[b+12>>2];P[a>>2]=P[a>>2]+e;e=P[f+8>>2];L[b+12>>2]=c;a=L[b+12>>2];P[a+4>>2]=P[a+4>>2]+e;e=P[f+8>>2];L[b+12>>2]=c;a=L[b+12>>2];P[a+8>>2]=P[a+8>>2]+e;fa=f+32|0}function xb(a,b,c,d,e,f,g){var h=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=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=S(0),E=S(0),F=S(0),G=0,H=S(0),I=S(0),K=S(0),O=S(0),Q=S(0),R=S(0),U=S(0),V=S(0),W=S(0);i=fa+-64|0;fa=i;r=e<<4;h=r+L[a+16>>2]|0;s=N[h>>1];l=N[h+2>>1];t=N[h+4>>1];m=P[a+28>>2];n=P[a+60>>2];o=P[a+32>>2];p=P[a- -64>>2];k=P[a+24>>2];j=P[a+56>>2];L[i+44>>2]=0;P[i+40>>2]=o+S(S(t>>>0)/p);P[i+36>>2]=m+S(S(l>>>0)/n);P[i+32>>2]=k+S(S(s>>>0)/j);s=N[h+6>>1];l=N[h+8>>1];h=N[h+10>>1];L[i+60>>2]=0;P[i+56>>2]=o+S(S(h>>>0)/p);P[i+52>>2]=m+S(S(l>>>0)/n);P[i+48>>2]=k+S(S(s>>>0)/j);s=f<<4;h=s+L[b+16>>2]|0;l=N[h>>1];t=N[h+2>>1];G=N[h+4>>1];m=P[b+28>>2];n=P[b+60>>2];o=P[b+32>>2];p=P[b- -64>>2];k=P[b+24>>2];j=P[b+56>>2];L[i+12>>2]=0;P[i+8>>2]=o+S(S(G>>>0)/p);P[i+4>>2]=m+S(S(t>>>0)/n);P[i>>2]=k+S(S(l>>>0)/j);l=N[h+6>>1];t=N[h+8>>1];h=N[h+10>>1];L[i+28>>2]=0;P[i+24>>2]=o+S(S(h>>>0)/p);P[i+20>>2]=m+S(S(t>>>0)/n);P[i+16>>2]=k+S(S(l>>>0)/j);h=0;H=P[d+24>>2];m=P[i+24>>2];j=S(S(m+P[i+8>>2])*S(.5));I=P[d+16>>2];n=P[i+16>>2];q=S(S(n+P[i>>2])*S(.5));o=P[i+20>>2];u=S(S(o+P[i+4>>2])*S(.5));K=P[d+20>>2];p=P[i+48>>2];k=S(S(p+P[i+32>>2])*S(.5));v=S(S(P[d>>2]+S(S(H*j)+S(S(I*q)+S(u*K))))-k);y=P[d+72>>2];m=S(m-j);z=P[d+64>>2];n=S(n-q);A=P[d+68>>2];o=S(o-u);p=S(p-k);a:{if(S(T(v))>S(S(S(y*m)+S(S(z*n)+S(A*o)))+p)){break a}O=P[d+40>>2];Q=P[d+32>>2];R=P[d+36>>2];k=P[i+52>>2];w=S(S(k+P[i+36>>2])*S(.5));x=S(S(P[d+4>>2]+S(S(O*j)+S(S(Q*q)+S(u*R))))-w);B=P[d+88>>2];C=P[d+80>>2];D=P[d+84>>2];k=S(k-w);if(S(T(x))>S(S(S(B*m)+S(S(C*n)+S(D*o)))+k)){break a}U=P[d+56>>2];V=P[d+48>>2];W=P[d+52>>2];q=S(P[d+8>>2]+S(S(U*j)+S(S(V*q)+S(u*W))));j=P[i+56>>2];F=S(S(j+P[i+40>>2])*S(.5));q=S(q-F);u=P[d+104>>2];w=P[d+96>>2];E=P[d+100>>2];j=S(j-F);if(S(T(q))>S(S(S(u*m)+S(S(w*n)+S(E*o)))+j)|S(T(S(S(q*V)+S(S(v*I)+S(x*Q)))))>S(S(S(j*w)+S(S(p*z)+S(k*C)))+n)|S(T(S(S(q*W)+S(S(v*K)+S(x*R)))))>S(S(S(j*E)+S(S(p*A)+S(k*D)))+o)){break a}l=S(T(S(S(q*U)+S(S(v*H)+S(x*O)))))>S(S(S(j*u)+S(S(p*y)+S(k*B)))+m);h=!l;if(!g|l){break a}b:{if(S(T(S(S(q*Q)-S(V*x))))>S(S(m*A)+S(S(o*y)+S(S(k*w)+S(j*C))))){break b}F=S(-x);if(S(T(S(S(q*R)+S(W*F))))>S(S(m*z)+S(S(n*y)+S(S(k*E)+S(j*D))))|S(T(S(S(q*O)+S(U*F))))>S(S(o*z)+S(S(n*A)+S(S(k*u)+S(j*B))))|S(T(S(S(v*V)-S(I*q))))>S(S(m*D)+S(S(o*B)+S(S(p*w)+S(j*z))))){break b}q=S(-q);if(S(T(S(S(v*W)+S(K*q))))>S(S(m*C)+S(S(n*B)+S(S(p*E)+S(j*A))))|S(T(S(S(v*U)+S(H*q))))>S(S(o*C)+S(S(n*D)+S(S(p*u)+S(j*y))))|S(T(S(S(x*I)-S(Q*v))))>S(S(m*E)+S(S(o*u)+S(S(p*C)+S(k*z))))){break b}j=S(-v);if(S(T(S(S(x*K)+S(R*j))))>S(S(m*w)+S(S(n*u)+S(S(p*D)+S(k*A))))){break b}h=1;if(!(S(T(S(S(x*H)+S(O*j))))>S(S(o*w)+S(S(n*E)+S(S(p*B)+S(k*y)))))){break a}}h=0}c:{if(!h){break c}h=L[(s+L[b+16>>2]|0)+12>>2];s=L[(r+L[a+16>>2]|0)+12>>2];if((s|0)>=0){if((h|0)>=0){f=L[c+4>>2];d:{if((f|0)!=L[c+8>>2]){break d}e=f?f<<1:1;if((e|0)<=(f|0)){break d}e:{if(!e){d=0;break e}L[8513]=L[8513]+1;d=ha[L[6798]](e<<3,16)|0;f=L[c+4>>2]}b=L[c+12>>2];f:{g:{if((f|0)>0){a=0;if((f|0)!=1){l=f&-2;g=0;while(1){r=a<<3;t=r+d|0;G=b+r|0;L[t>>2]=L[G>>2];L[t+4>>2]=L[G+4>>2];r=r|8;t=r+d|0;r=b+r|0;L[t>>2]=L[r>>2];L[t+4>>2]=L[r+4>>2];a=a+2|0;g=g+2|0;if((l|0)!=(g|0)){continue}break}}if(f&1){a=a<<3;g=a+d|0;a=a+b|0;L[g>>2]=L[a>>2];L[g+4>>2]=L[a+4>>2]}if(M[c+16|0]){break g}break f}if(!b|!M[c+16|0]){break f}}if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}f=L[c+4>>2]}L[c+12>>2]=d;J[c+16|0]=1;L[c+8>>2]=e}a=L[c+12>>2]+(f<<3)|0;L[a+4>>2]=h;L[a>>2]=s;L[c+4>>2]=f+1;break c}g=f+1|0;xb(a,b,c,d,e,g,0);l=a;a=L[(L[b+16>>2]+(g<<4)|0)+12>>2];xb(l,b,c,d,e,(a|0)<0?g-a|0:f+2|0,0);break c}g=e+1|0;if((h|0)>=0){xb(a,b,c,d,g,f,0);l=a;a=L[(L[a+16>>2]+(g<<4)|0)+12>>2];xb(l,b,c,d,(a|0)<0?g-a|0:e+2|0,f,0);break c}h=f+1|0;xb(a,b,c,d,g,h,0);r=h<<4;s=L[(r+L[b+16>>2]|0)+12>>2];f=f+2|0;xb(a,b,c,d,g,(s|0)<0?h-s|0:f,0);s=g<<4;l=L[(s+L[a+16>>2]|0)+12>>2];e=e+2|0;xb(a,b,c,d,(l|0)<0?g-l|0:e,h,0);l=a;a=L[(s+L[a+16>>2]|0)+12>>2];e=(a|0)<0?g-a|0:e;a=L[(r+L[b+16>>2]|0)+12>>2];xb(l,b,c,d,e,(a|0)<0?h-a|0:f,0)}fa=i- -64|0}function Ec(a,b,c,d,e,f){var g=0,h=S(0),i=0,j=S(0),k=S(0),l=S(0),m=S(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=0,x=S(0),y=S(0),z=S(0),A=S(0),B=S(0),C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,N=0;g=fa-272|0;fa=g;i=L[c+12>>2];L[g+216>>2]=L[c+8>>2];L[g+220>>2]=i;i=L[c+4>>2];L[g+208>>2]=L[c>>2];L[g+212>>2]=i;i=L[c+28>>2];L[g+232>>2]=L[c+24>>2];L[g+236>>2]=i;i=L[c+20>>2];L[g+224>>2]=L[c+16>>2];L[g+228>>2]=i;i=L[c+44>>2];L[g+248>>2]=L[c+40>>2];L[g+252>>2]=i;i=L[c+36>>2];L[g+240>>2]=L[c+32>>2];L[g+244>>2]=i;i=L[c+60>>2];L[g+264>>2]=L[c+56>>2];L[g+268>>2]=i;i=L[c+52>>2];L[g+256>>2]=L[c+48>>2];L[g+260>>2]=i;i=L[d+12>>2];L[g+152>>2]=L[d+8>>2];L[g+156>>2]=i;i=L[d+4>>2];L[g+144>>2]=L[d>>2];L[g+148>>2]=i;i=L[d+28>>2];L[g+168>>2]=L[d+24>>2];L[g+172>>2]=i;i=L[d+20>>2];L[g+160>>2]=L[d+16>>2];L[g+164>>2]=i;i=L[d+44>>2];L[g+184>>2]=L[d+40>>2];L[g+188>>2]=i;i=L[d+36>>2];L[g+176>>2]=L[d+32>>2];L[g+180>>2]=i;i=L[d+60>>2];L[g+200>>2]=L[d+56>>2];L[g+204>>2]=i;i=L[d+52>>2];L[g+192>>2]=L[d+48>>2];L[g+196>>2]=i;L[g+108>>2]=0;P[g+104>>2]=P[g+200>>2]-P[g+264>>2];P[g+100>>2]=P[g+196>>2]-P[g+260>>2];P[g+96>>2]=P[g+192>>2]-P[g+256>>2];t=g+208|0;u=g+16|0;i=g+128|0;ec(t,g+144|0,u,i);L[g+92>>2]=0;k=P[g+128>>2];P[g+88>>2]=k*P[g+24>>2];P[g+84>>2]=k*P[g+20>>2];P[g+80>>2]=k*P[g+16>>2];L[g+72>>2]=0;L[g+76>>2]=0;L[g+64>>2]=0;L[g+68>>2]=0;Ma(t,i);L[g+60>>2]=0;L[g+44>>2]=0;h=P[g+140>>2];l=P[g+136>>2];k=P[g+128>>2];j=P[g+132>>2];m=S(S(2)/S(S(h*h)+S(S(l*l)+S(S(k*k)+S(j*j)))));n=S(l*m);o=S(j*n);p=S(k*m);q=S(h*p);P[g+52>>2]=o+q;P[g+40>>2]=o-q;o=S(k*p);v=j;j=S(j*m);m=S(v*j);P[g+56>>2]=S(1)-S(o+m);l=S(l*n);P[g+36>>2]=S(1)-S(o+l);L[g+28>>2]=0;o=S(k*n);p=S(h*j);P[g+48>>2]=o-p;k=S(k*j);h=S(h*n);P[g+32>>2]=k+h;P[g+24>>2]=o+p;P[g+20>>2]=k-h;P[g+16>>2]=S(1)-S(m+l);xm(b,u,g+96|0,g+80|0,i,g+112|0);if(L[a+268>>2]>0){t=d+48|0;u=c+48|0;c=0;while(1){i=L[L[a+276>>2]+(c<<2)>>2];a:{if(!(ha[L[L[e>>2]+8>>2]](e,L[i+188>>2])|0)){break a}w=L[i+192>>2];C=i+4|0;d=g+16|0;r=g+96|0;ha[L[L[w>>2]+8>>2]](w,C,d,r);L[g+28>>2]=0;L[g+108>>2]=0;P[g+24>>2]=P[g+24>>2]+P[g+136>>2];P[g+20>>2]=P[g+20>>2]+P[g+132>>2];P[g+16>>2]=P[g+16>>2]+P[g+128>>2];P[g+96>>2]=P[g+96>>2]+P[g+112>>2];P[g+100>>2]=P[g+100>>2]+P[g+116>>2];P[g+104>>2]=P[g+104>>2]+P[g+120>>2];L[g+12>>2]=1065353216;w=0;h=P[r>>2];j=P[d>>2];l=S(S(h+j)*S(.5));k=S(P[t>>2]-l);h=S(S(h-j)*S(.5));D=k>h;j=P[r+4>>2];m=P[d+4>>2];p=S(S(j+m)*S(.5));n=S(P[t+4>>2]-p);o=S(P[u>>2]-l);E=h>2];m=P[d+8>>2];q=S(S(l+m)*S(.5));s=S(P[t+8>>2]-q);x=S(S(l-m)*S(.5));A=S(-x);d=sx)<<5;I=o>2]-p);J=z>p;K=j>2]-q);M=A>q;N=I|E<<3|J<<1|K<<4|M<<2|(q>x)<<5;b:{if(r&N){break b}B=S(k-o);k=P[g+12>>2];c:{d:{if(I){m=S(0);l=S(S(S(-o)-h)/B);if(!(l>=S(0))){break d}m=S(1);break c}m=S(0);if(!F){break d}h=S(S(S(-o)-h)/B);if(!(h=h)){break h}n=S(0);l=S(1);m=S(0);break g}l=S(0);if(!d){break h}j=S(S(S(-q)-x)/s);if(!(j=h)){break l}n=S(-1);l=S(0);m=S(0);break k}if(!H){break l}j=S(S(S(-z)-p)/v);if(!(j>>0>=32){h=S(S(S(-A)-q)/s);if(!(j<=h)){break n}n=S(0);l=S(-1);m=S(0);break m}if(r>>>0<32){break n}h=S(S(S(-A)-q)/s);if(!(h>2]=h;L[g+92>>2]=0;P[g+88>>2]=l;P[g+84>>2]=n;P[g+80>>2]=m;w=1}if(!w){break a}r=L[i+192>>2];d=fa-32|0;fa=d;L[d+24>>2]=-1;L[d+28>>2]=-1;L[d+20>>2]=C;L[d+16>>2]=i;L[d+12>>2]=r;L[d+8>>2]=0;kh(b,g+208|0,g+144|0,d+8|0,e,f);fa=d+32|0}c=c+1|0;if((c|0)>2]){continue}break}}fa=g+272|0}function SB(a,b){a=a|0;b=b|0;var c=0,d=0,e=S(0),f=0,g=0,h=0,i=S(0),j=0,k=S(0),l=S(0),m=0,n=S(0),o=0,p=S(0),q=S(0),r=S(0),s=0,t=S(0),u=S(0),v=S(0),w=0,x=S(0),y=0,z=S(0),A=S(0),B=S(0),C=0,D=S(0),E=S(0);a:{g=L[a+28>>2];c=g+4|0;f=L[a+32>>2];d=f+4|0;wg(a,c,d,g+264|0,f+264|0);g=L[b+8>>2];L[g>>2]=1065353216;w=L[b+24>>2];j=w<<2;h=j+4|0;L[h+g>>2]=1065353216;m=w<<3;o=m+8|0;L[o+g>>2]=1065353216;n=P[c+20>>2];t=P[c+24>>2];e=P[a+348>>2];k=P[c+36>>2];l=P[a+352>>2];p=P[c+40>>2];i=P[a+356>>2];q=P[c+8>>2];x=P[c>>2];r=P[c+4>>2];u=P[c+16>>2];v=P[c+32>>2];g=L[b+12>>2];L[g+12>>2]=0;L[g>>2]=0;k=S(S(p*i)+S(S(v*e)+S(l*k)));P[g+4>>2]=k;n=S(S(t*i)+S(S(u*e)+S(l*n)));P[g+8>>2]=-n;f=g+j|0;L[f+12>>2]=0;l=S(S(q*i)+S(S(x*e)+S(r*l)));P[f+8>>2]=l;L[f+4>>2]=0;P[f>>2]=-k;f=g+m|0;L[f+8>>2]=0;L[f+12>>2]=0;P[f+4>>2]=-l;P[f>>2]=n;f=L[b+16>>2];L[f>>2]=-1082130432;L[f+h>>2]=-1082130432;L[f+o>>2]=-1082130432;q=P[d+36>>2];x=P[d+40>>2];e=P[a+412>>2];p=P[d+20>>2];i=P[a+416>>2];r=P[d+24>>2];t=P[a+420>>2];u=P[d+8>>2];v=P[d>>2];z=P[d+4>>2];A=P[d+32>>2];B=P[d+16>>2];f=L[b+20>>2];L[f+12>>2]=0;L[f>>2]=0;p=S(S(r*t)+S(S(B*e)+S(i*p)));P[f+8>>2]=p;q=S(S(x*t)+S(S(A*e)+S(i*q)));P[f+4>>2]=-q;h=f+j|0;L[h+12>>2]=0;i=S(S(u*t)+S(S(v*e)+S(z*i)));P[h+8>>2]=-i;L[h+4>>2]=0;P[h>>2]=q;h=f+m|0;L[h+8>>2]=0;L[h+12>>2]=0;P[h+4>>2]=i;P[h>>2]=-p;C=L[a+592>>2];e=S(P[(C&2?a+600|0:b+4|0)>>2]*P[b>>2]);h=L[b+40>>2];o=L[b+36>>2];s=L[b+28>>2];b:{if(!(C&1)){P[s>>2]=e*S(S(S(i+P[d+48>>2])-l)-P[c+48>>2]);L[o>>2]=-8388609;L[h>>2]=2139095039;P[j+s>>2]=e*S(S(S(p+P[d+52>>2])-n)-P[c+52>>2]);L[j+o>>2]=-8388609;L[h+j>>2]=2139095039;P[m+s>>2]=e*S(S(S(q+P[d+56>>2])-k)-P[c+56>>2]);L[m+o>>2]=-8388609;L[h+m>>2]=2139095039;break b}y=L[b+32>>2];P[s>>2]=e*S(S(S(i+P[d+48>>2])-l)-P[c+48>>2]);L[o>>2]=-8388609;L[h>>2]=2139095039;P[y>>2]=P[a+596>>2];P[j+s>>2]=e*S(S(S(p+P[d+52>>2])-n)-P[c+52>>2]);L[j+o>>2]=-8388609;L[h+j>>2]=2139095039;P[j+y>>2]=P[a+596>>2];P[m+s>>2]=e*S(S(S(q+P[d+56>>2])-k)-P[c+56>>2]);L[m+o>>2]=-8388609;L[h+m>>2]=2139095039;P[m+y>>2]=P[a+596>>2]}d=R(w,3);c:{if(!M[a+526|0]){break c}e=P[a+456>>2];if(!(!(e>P[a+444>>2])|!(e>P[a+448>>2]))){e=P[a+340>>2];l=P[a+308>>2];i=P[a+324>>2];k=P[c+8>>2];n=P[c>>2];t=P[c+4>>2];p=P[c+24>>2];q=P[c+16>>2];x=P[c+20>>2];d=d<<2;h=d+8|0;r=P[a+336>>2];B=P[c+40>>2];u=P[a+304>>2];D=P[c+32>>2];v=P[a+320>>2];E=P[c+36>>2];z=S(S(r*B)+S(S(u*D)+S(v*E)));P[h+g>>2]=z;j=d+4|0;A=S(S(r*p)+S(S(u*q)+S(v*x)));P[j+g>>2]=A;r=S(S(r*k)+S(S(u*n)+S(t*v)));P[d+g>>2]=r;c=w<<4;k=S(S(e*k)+S(S(l*n)+S(t*i)));P[c+g>>2]=k;m=c|4;n=S(S(e*p)+S(S(l*q)+S(i*x)));P[m+g>>2]=n;y=c|8;e=S(S(e*B)+S(S(l*D)+S(i*E)));P[y+g>>2]=e;P[f+h>>2]=-z;P[f+j>>2]=-A;P[d+f>>2]=-r;P[c+f>>2]=-k;P[f+m>>2]=-n;P[f+y>>2]=-e;l=S(P[b>>2]*P[a+436>>2]);P[d+s>>2]=l*S(S(P[a+468>>2]*z)+S(S(P[a+460>>2]*r)+S(A*P[a+464>>2])));P[c+s>>2]=l*S(S(P[a+468>>2]*e)+S(S(P[a+460>>2]*k)+S(n*P[a+464>>2])));L[d+o>>2]=-8388609;h=L[b+40>>2];L[d+h>>2]=2139095039;L[c+o>>2]=-8388609;L[c+h>>2]=2139095039;d=R(w,5);break c}l=P[a+464>>2];i=P[a+468>>2];d=d<<2;e=P[a+436>>2];k=S(e*S(e*P[a+460>>2]));P[d+g>>2]=k;c=d+8|0;i=S(e*S(e*i));P[c+g>>2]=i;j=d+4|0;e=S(e*S(e*l));P[j+g>>2]=e;P[c+f>>2]=-i;P[f+j>>2]=-e;P[d+f>>2]=-k;P[d+s>>2]=S(P[b>>2]*P[a+432>>2])*P[a+504>>2];if(C&4){P[d+L[b+32>>2]>>2]=P[a+604>>2]}L[d+o>>2]=0;L[d+h>>2]=2139095039;d=w<<2}if(M[a+525|0]){l=P[a+480>>2];i=P[a+484>>2];c=d<<2;e=P[a+436>>2];k=S(e*S(e*P[a+476>>2]));P[c+g>>2]=k;j=c+8|0;i=S(e*S(e*i));P[j+g>>2]=i;m=g;g=c+4|0;e=S(e*S(e*l));P[m+g>>2]=e;P[f+j>>2]=-i;P[f+g>>2]=-e;P[c+f>>2]=-k;P[c+L[b+28>>2]>>2]=S(P[b>>2]*P[a+432>>2])*P[a+508>>2];if(C&4){P[c+L[b+32>>2]>>2]=P[a+604>>2]}if(P[a+452>>2]>S(0)){c=d<<2;d=c+h|0;b=c+L[b+36>>2]|0;if(P[a+508>>2]>S(0)){L[b>>2]=0;L[d>>2]=2139095039;break a}L[b>>2]=-8388609;L[d>>2]=0;break a}a=d<<2;L[a+L[b+36>>2]>>2]=-8388609;L[a+h>>2]=2139095039}}}function Te(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=0,f=S(0),g=S(0),h=0,i=S(0),j=S(0),k=0,l=S(0),m=0,n=S(0),o=S(0),p=0,q=S(0),r=S(0),s=0,t=S(0),u=0,v=0,w=S(0),x=S(0),y=S(0),z=S(0),A=S(0),B=S(0),C=S(0);e=fa-48|0;fa=e;a:{b:{switch(L[b+4>>2]){case 8:L[a>>2]=0;L[a+4>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0;break a;case 0:d=P[b+32>>2];f=P[b+36>>2];i=P[c+4>>2];j=P[c+8>>2];g=P[b+28>>2];o=P[c>>2];L[a+12>>2]=0;P[a>>2]=o>=S(0)?g:S(-g);P[a+8>>2]=j>=S(0)?f:S(-f);P[a+4>>2]=i>=S(0)?d:S(-d);break a;case 1:d=P[c+8>>2];f=P[c>>2];g=P[c+4>>2];i=S(S(d*P[b- -64>>2])+S(S(f*P[b+56>>2])+S(g*P[b+60>>2])));j=S(S(d*P[b+80>>2])+S(S(f*P[b+72>>2])+S(g*P[b+76>>2])));c=i>2])+S(S(f*P[b+88>>2])+S(g*P[b+92>>2])))>(c?j:i)?2:c)<<4)|0;c=L[b>>2];m=L[b+4>>2];d=P[b+8>>2];L[a+12>>2]=0;P[a+8>>2]=d;L[a>>2]=c;L[a+4>>2]=m;break a;case 13:h=L[b+40>>2];L[e+40>>2]=L[b+36>>2];L[e+44>>2]=h;h=L[b+32>>2];L[e+32>>2]=L[b+28>>2];L[e+36>>2]=h;P[e+16>>2]=P[c>>2];P[e+20>>2]=P[c+4>>2];d=P[c+8>>2];L[e+28>>2]=0;P[e+24>>2]=d;c=1;h=2;c:{d:{e:{b=L[b+52>>2];switch(b-1|0){case 0:break d;case 1:break e;default:break c}}h=1}c=0;m=b}k=b<<2;b=e+32|0;d=P[k+b>>2];k=b;b=c<<2;f=P[(k|b)>>2];k=b;b=e+16|0;g=P[k+b>>2];i=P[b+(h<<2)>>2];j=S(_(S(S(g*g)+S(i*i))));f:{if(j!=S(0)){f=S(f/j);P[(c<<2)+e>>2]=g*f;b=m<<2;P[b+e>>2]=P[b+(e+16|0)>>2]>2]=f;b=m<<2;P[b+e>>2]=P[b+(e+16|0)>>2]>2]=r;b=L[e+4>>2];c=L[e>>2];d=P[e+8>>2];L[a+12>>2]=0;P[a+8>>2]=d;L[a>>2]=c;L[a+4>>2]=b;break a;case 10:h=b+28|0;m=L[b+52>>2];k=m<<2;w=P[h+k>>2];o=P[h+((m+2|0)%3<<2)>>2];n=S(1);d=P[c+8>>2];f=P[c>>2];g=P[c+4>>2];i=S(S(d*d)+S(S(f*f)+S(g*g)));if(!(i>2]=0;L[e+44>>2]=0;L[e+32>>2]=0;L[e+36>>2]=0;P[k+(e+32|0)>>2]=w;d=S(-0xde0b6b000000000);f=S(0);g=S(0);x=S(o*t);l=P[b+44>>2];y=S(t*l);i=S(S(x+P[e+40>>2])-y);z=S(o*n);A=S(n*l);j=S(S(z+P[e+32>>2])-A);B=S(o*r);C=S(r*l);o=S(S(B+P[e+36>>2])-C);l=S(S(t*i)+S(S(n*j)+S(r*o)));if(l>S(-0xde0b6b000000000)){f=o;g=i;q=j;d=l}L[e+40>>2]=0;L[e+44>>2]=0;L[e+32>>2]=0;L[e+36>>2]=0;P[(e+32|0)+(m<<2)>>2]=-w;i=P[e+40>>2];j=P[e+32>>2];o=P[e+36>>2];L[a+12>>2]=0;l=d;d=S(S(x+i)-y);i=S(S(z+j)-A);j=S(S(B+o)-C);b=l>2]=b?d:g;P[a+4>>2]=b?j:f;P[a>>2]=b?i:q;break a;case 5:i=P[b+12>>2];j=P[b+20>>2];o=P[b+16>>2];m=L[b+92>>2];b=L[b+96>>2];g:{if((b|0)<=0){h=-1;break g}d=S(P[c>>2]*i);f=S(P[c+8>>2]*j);g=S(P[c+4>>2]*o);u=b&1;h:{if((b|0)==1){b=0;h=-1;n=S(-34028234663852886e22);break h}v=b&-2;b=0;h=-1;n=S(-34028234663852886e22);c=0;while(1){k=m+(b<<4)|0;l=S(S(P[k+8>>2]*f)+S(S(P[k>>2]*d)+S(g*P[k+4>>2])));k=l>n;s=b|1;p=m+(s<<4)|0;q=S(S(P[p+8>>2]*f)+S(S(P[p>>2]*d)+S(g*P[p+4>>2])));l=k?l:n;p=q>l;n=p?q:l;h=p?s:k?b:h;b=b+2|0;c=c+2|0;if((v|0)!=(c|0)){continue}break}}if(!u){break g}c=b;b=m+(b<<4)|0;h=S(S(P[b+8>>2]*f)+S(S(P[b>>2]*d)+S(g*P[b+4>>2])))>n?c:h}b=m+(h<<4)|0;d=P[b>>2];f=P[b+4>>2];g=P[b+8>>2];L[a+12>>2]=0;P[a+8>>2]=j*g;P[a+4>>2]=o*f;P[a>>2]=i*d;break a;case 4:i=P[b+12>>2];j=P[b+20>>2];o=P[b+16>>2];m=L[b+104>>2];b=L[b+96>>2];i:{if((b|0)<=0){h=-1;break i}d=S(P[c>>2]*i);f=S(P[c+8>>2]*j);g=S(P[c+4>>2]*o);u=b&1;j:{if((b|0)==1){b=0;h=-1;n=S(-34028234663852886e22);break j}v=b&-2;b=0;h=-1;n=S(-34028234663852886e22);c=0;while(1){k=m+(b<<4)|0;l=S(S(P[k+8>>2]*f)+S(S(P[k>>2]*d)+S(g*P[k+4>>2])));k=l>n;s=b|1;p=m+(s<<4)|0;q=S(S(P[p+8>>2]*f)+S(S(P[p>>2]*d)+S(g*P[p+4>>2])));l=k?l:n;p=q>l;n=p?q:l;h=p?s:k?b:h;b=b+2|0;c=c+2|0;if((v|0)!=(c|0)){continue}break}}if(!u){break i}c=b;b=m+(b<<4)|0;h=S(S(P[b+8>>2]*f)+S(S(P[b>>2]*d)+S(g*P[b+4>>2])))>n?c:h}b=m+(h<<4)|0;d=P[b>>2];f=P[b+4>>2];g=P[b+8>>2];L[a+12>>2]=0;P[a+8>>2]=j*g;P[a+4>>2]=o*f;P[a>>2]=i*d;break a;default:break b}}ha[L[L[b>>2]+68>>2]](a,b,c)}fa=e+48|0}function Pe(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=S(0),o=S(0),p=S(0),q=S(0),r=S(0),s=S(0);a:{b:{if(M[a+165|0]){d=L[a+88>>2];if(!(!c|(d|0)<=0)){e=L[a+96>>2];n=P[a+168>>2];o=P[b+8>>2];p=P[b+4>>2];q=P[b>>2];c=0;while(1){f=e+(c<<4)|0;k=S(P[f+8>>2]-o);r=S(k*k);k=S(P[f>>2]-q);s=S(k*k);k=S(P[f+4>>2]-p);if(n>=S(r+S(s+S(k*k)))){break b}c=c+1|0;if((d|0)!=(c|0)){continue}break}}c=L[a+32>>2];L[c+12>>2]=L[c+12>>2]+1;c:{if(L[a+92>>2]!=(d|0)){break c}h=d?d<<1:1;if((h|0)<=(d|0)){break c}if(h){L[8513]=L[8513]+1;g=ha[L[6798]](h<<4,16)|0;d=L[a+88>>2]}d:{if((d|0)<=0){break d}i=d&1;c=0;if((d|0)!=1){l=d&-2;d=0;while(1){j=c<<4;f=j+g|0;m=j+L[a+96>>2]|0;e=L[m+4>>2];L[f>>2]=L[m>>2];L[f+4>>2]=e;e=L[m+12>>2];L[f+8>>2]=L[m+8>>2];L[f+12>>2]=e;e=j|16;f=e+g|0;j=e+L[a+96>>2]|0;e=L[j+4>>2];L[f>>2]=L[j>>2];L[f+4>>2]=e;e=L[j+12>>2];L[f+8>>2]=L[j+8>>2];L[f+12>>2]=e;c=c+2|0;d=d+2|0;if((l|0)!=(d|0)){continue}break}}if(!i){break d}c=c<<4;f=c+g|0;e=c+L[a+96>>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}c=L[a+96>>2];if(!(c?!c|!M[a+100|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[a+96>>2]=g;J[a+100|0]=1;L[a+92>>2]=h;d=L[a+88>>2]}c=L[b+4>>2];e=L[a+96>>2]+(d<<4)|0;L[e>>2]=L[b>>2];L[e+4>>2]=c;c=L[b+12>>2];L[e+8>>2]=L[b+8>>2];L[e+12>>2]=c;b=L[a+88>>2];L[a+88>>2]=b+1;L[L[a+32>>2]+16>>2]=L[a+96>>2];return b}d=L[a+108>>2];if(!(!c|(d|0)<=0)){e=L[a+116>>2];n=P[a+168>>2];o=P[b+8>>2];p=P[b+4>>2];q=P[b>>2];c=0;while(1){f=e+(c<<2)|0;k=S(P[f+8>>2]-o);r=S(k*k);k=S(P[f>>2]-q);s=S(k*k);k=S(P[f+4>>2]-p);if(n>=S(r+S(s+S(k*k)))){break a}c=c+3|0;if((d|0)>(c|0)){continue}break}}e=L[a+112>>2];e:{if((e|0)!=(d|0)){break e}e=d?d<<1:1;if((e|0)<=(d|0)){e=d;break e}if(e){L[8513]=L[8513]+1;h=ha[L[6798]](e<<2,16)|0;d=L[a+108>>2]}i=L[a+116>>2];f:{g:{if((d|0)>0){c=0;if(d>>>0>=4){g=d&-4;while(1){l=c<<2;P[l+h>>2]=P[i+l>>2];f=l|4;P[f+h>>2]=P[f+i>>2];f=l|8;P[f+h>>2]=P[f+i>>2];f=l|12;P[f+h>>2]=P[f+i>>2];c=c+4|0;j=j+4|0;if((g|0)!=(j|0)){continue}break}}g=d&3;if(g){while(1){f=c<<2;P[f+h>>2]=P[f+i>>2];c=c+1|0;m=m+1|0;if((g|0)!=(m|0)){continue}break}}if(M[a+120|0]){break g}break f}if(!i|!M[a+120|0]){break f}}if(i){L[8514]=L[8514]+1;ha[L[6799]](i)}d=L[a+108>>2]}L[a+116>>2]=h;L[a+112>>2]=e;J[a+120|0]=1}g=L[a+116>>2];P[g+(d<<2)>>2]=P[b>>2];d=d+1|0;L[a+108>>2]=d;h:{if((d|0)!=(e|0)){f=e;c=g;e=d;break h}f=e?e<<1:1;if((e|0)>=(f|0)){f=e;c=g;break h}i:{if(!f){c=0;break i}L[8513]=L[8513]+1;c=ha[L[6798]](f<<2,16)|0;g=L[a+116>>2];e=L[a+108>>2]}j:{k:{if((e|0)>0){m=0;h=0;if(e>>>0>=4){l=e&-4;j=0;while(1){i=h<<2;P[i+c>>2]=P[g+i>>2];d=i|4;P[d+c>>2]=P[d+g>>2];d=i|8;P[d+c>>2]=P[d+g>>2];d=i|12;P[d+c>>2]=P[d+g>>2];h=h+4|0;j=j+4|0;if((l|0)!=(j|0)){continue}break}}l=e&3;if(l){while(1){d=h<<2;P[d+c>>2]=P[d+g>>2];h=h+1|0;m=m+1|0;if((l|0)!=(m|0)){continue}break}}if(M[a+120|0]){break k}break j}if(!g|!M[a+120|0]){break j}}if(g){L[8514]=L[8514]+1;ha[L[6799]](g)}e=L[a+108>>2]}L[a+116>>2]=c;L[a+112>>2]=f;J[a+120|0]=1}P[(e<<2)+c>>2]=P[b+4>>2];e=e+1|0;L[a+108>>2]=e;l:{if((e|0)!=(f|0)){d=c;f=e;break l}i=f?f<<1:1;if((i|0)<=(f|0)){d=c;break l}m:{if(!i){d=0;break m}L[8513]=L[8513]+1;d=ha[L[6798]](i<<2,16)|0;c=L[a+116>>2];f=L[a+108>>2]}n:{o:{if((f|0)>0){e=0;h=0;if(f>>>0>=4){l=f&-4;m=0;while(1){j=h<<2;P[j+d>>2]=P[c+j>>2];g=j|4;P[g+d>>2]=P[c+g>>2];g=j|8;P[g+d>>2]=P[c+g>>2];g=j|12;P[g+d>>2]=P[c+g>>2];h=h+4|0;m=m+4|0;if((l|0)!=(m|0)){continue}break}}l=f&3;if(l){while(1){g=h<<2;P[g+d>>2]=P[c+g>>2];h=h+1|0;e=e+1|0;if((l|0)!=(e|0)){continue}break}}if(M[a+120|0]){break o}break n}if(!c|!M[a+120|0]){break n}}if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}f=L[a+108>>2]}L[a+116>>2]=d;L[a+112>>2]=i;J[a+120|0]=1}P[(f<<2)+d>>2]=P[b+8>>2];b=f+1|0;L[a+108>>2]=b;a=L[a+32>>2];L[a+16>>2]=d;L[a+12>>2]=L[a+12>>2]+1;c=((b|0)/3|0)-1|0}return c}return(c>>>0)/3|0}function oD(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=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=S(0),o=0,p=0,q=0,r=0,s=0;c=fa-80|0;fa=c;s=ha[L[L[a>>2]+28>>2]](a)|0;if((s|0)>0){i=P[a+12>>2];j=P[a+8>>2];k=P[a+4>>2];while(1){ha[L[L[a>>2]+16>>2]](a,c+76|0,c+52|0,c- -64|0,c+56|0,c+72|0,c+68|0,c+48|0,c+60|0,r);a:{b:{switch(L[c+64>>2]){case 0:c:{switch(L[c+60>>2]-2|0){case 0:d=0;if(L[c+48>>2]<=0){break a}while(1){g=L[c+76>>2];h=L[c+56>>2];e=L[c+72>>2]+R(L[c+68>>2],d)|0;f=g+R(h,L[e>>2])|0;l=P[f>>2];m=P[f+4>>2];n=P[f+8>>2];L[c+12>>2]=0;P[c+8>>2]=i*n;P[c+4>>2]=j*m;P[c>>2]=k*l;f=g+R(h,L[e+4>>2])|0;l=P[f>>2];m=P[f+4>>2];n=P[f+8>>2];L[c+28>>2]=0;P[c+24>>2]=i*n;P[c+20>>2]=j*m;P[c+16>>2]=k*l;e=g+R(h,L[e+8>>2])|0;l=P[e>>2];m=P[e+4>>2];n=P[e+8>>2];L[c+44>>2]=0;P[c+40>>2]=i*n;P[c+36>>2]=j*m;P[c+32>>2]=k*l;ha[L[L[b>>2]+8>>2]](b,c,r,d);d=d+1|0;if((d|0)>2]){continue}break};break a;case 1:d=0;if(L[c+48>>2]<=0){break a}while(1){g=L[c+76>>2];h=L[c+56>>2];e=L[c+72>>2]+R(L[c+68>>2],d)|0;f=g+R(h,N[e>>1])|0;l=P[f>>2];m=P[f+4>>2];n=P[f+8>>2];L[c+12>>2]=0;P[c+8>>2]=i*n;P[c+4>>2]=j*m;P[c>>2]=k*l;f=g+R(h,N[e+2>>1])|0;l=P[f>>2];m=P[f+4>>2];n=P[f+8>>2];L[c+28>>2]=0;P[c+24>>2]=i*n;P[c+20>>2]=j*m;P[c+16>>2]=k*l;e=g+R(h,N[e+4>>1])|0;l=P[e>>2];m=P[e+4>>2];n=P[e+8>>2];L[c+44>>2]=0;P[c+40>>2]=i*n;P[c+36>>2]=j*m;P[c+32>>2]=k*l;ha[L[L[b>>2]+8>>2]](b,c,r,d);d=d+1|0;if((d|0)>2]){continue}break};break a;case 3:break c;default:break a}}d=0;if(L[c+48>>2]<=0){break a}while(1){g=L[c+76>>2];h=L[c+56>>2];e=L[c+72>>2]+R(L[c+68>>2],d)|0;f=g+R(h,M[e|0])|0;l=P[f>>2];m=P[f+4>>2];n=P[f+8>>2];L[c+12>>2]=0;P[c+8>>2]=i*n;P[c+4>>2]=j*m;P[c>>2]=k*l;f=g+R(h,M[e+1|0])|0;l=P[f>>2];m=P[f+4>>2];n=P[f+8>>2];L[c+28>>2]=0;P[c+24>>2]=i*n;P[c+20>>2]=j*m;P[c+16>>2]=k*l;e=g+R(h,M[e+2|0])|0;l=P[e>>2];m=P[e+4>>2];n=P[e+8>>2];L[c+44>>2]=0;P[c+40>>2]=i*n;P[c+36>>2]=j*m;P[c+32>>2]=k*l;ha[L[L[b>>2]+8>>2]](b,c,r,d);d=d+1|0;if((d|0)>2]){continue}break};break a;case 1:break b;default:break a}}d:{switch(L[c+60>>2]-2|0){case 0:d=0;if(L[c+48>>2]<=0){break a}while(1){g=L[c+76>>2];h=L[c+56>>2];e=L[c+72>>2]+R(L[c+68>>2],d)|0;f=g+R(h,L[e>>2])|0;o=Q[f>>3];p=Q[f+8>>3];q=Q[f+16>>3];L[c+12>>2]=0;P[c+8>>2]=i*S(q);P[c+4>>2]=j*S(p);P[c>>2]=k*S(o);f=g+R(h,L[e+4>>2])|0;o=Q[f>>3];p=Q[f+8>>3];q=Q[f+16>>3];L[c+28>>2]=0;P[c+24>>2]=i*S(q);P[c+20>>2]=j*S(p);P[c+16>>2]=k*S(o);e=g+R(h,L[e+8>>2])|0;o=Q[e>>3];p=Q[e+8>>3];q=Q[e+16>>3];L[c+44>>2]=0;P[c+40>>2]=i*S(q);P[c+36>>2]=j*S(p);P[c+32>>2]=k*S(o);ha[L[L[b>>2]+8>>2]](b,c,r,d);d=d+1|0;if((d|0)>2]){continue}break};break a;case 1:d=0;if(L[c+48>>2]<=0){break a}while(1){g=L[c+76>>2];h=L[c+56>>2];e=L[c+72>>2]+R(L[c+68>>2],d)|0;f=g+R(h,N[e>>1])|0;o=Q[f>>3];p=Q[f+8>>3];q=Q[f+16>>3];L[c+12>>2]=0;P[c+8>>2]=i*S(q);P[c+4>>2]=j*S(p);P[c>>2]=k*S(o);f=g+R(h,N[e+2>>1])|0;o=Q[f>>3];p=Q[f+8>>3];q=Q[f+16>>3];L[c+28>>2]=0;P[c+24>>2]=i*S(q);P[c+20>>2]=j*S(p);P[c+16>>2]=k*S(o);e=g+R(h,N[e+4>>1])|0;o=Q[e>>3];p=Q[e+8>>3];q=Q[e+16>>3];L[c+44>>2]=0;P[c+40>>2]=i*S(q);P[c+36>>2]=j*S(p);P[c+32>>2]=k*S(o);ha[L[L[b>>2]+8>>2]](b,c,r,d);d=d+1|0;if((d|0)>2]){continue}break};break a;case 3:break d;default:break a}}d=0;if(L[c+48>>2]<=0){break a}while(1){g=L[c+76>>2];h=L[c+56>>2];e=L[c+72>>2]+R(L[c+68>>2],d)|0;f=g+R(h,M[e|0])|0;o=Q[f>>3];p=Q[f+8>>3];q=Q[f+16>>3];L[c+12>>2]=0;P[c+8>>2]=i*S(q);P[c+4>>2]=j*S(p);P[c>>2]=k*S(o);f=g+R(h,M[e+1|0])|0;o=Q[f>>3];p=Q[f+8>>3];q=Q[f+16>>3];L[c+28>>2]=0;P[c+24>>2]=i*S(q);P[c+20>>2]=j*S(p);P[c+16>>2]=k*S(o);e=g+R(h,M[e+2|0])|0;o=Q[e>>3];p=Q[e+8>>3];q=Q[e+16>>3];L[c+44>>2]=0;P[c+40>>2]=i*S(q);P[c+36>>2]=j*S(p);P[c+32>>2]=k*S(o);ha[L[L[b>>2]+8>>2]](b,c,r,d);d=d+1|0;if((d|0)>2]){continue}break}}ha[L[L[a>>2]+24>>2]](a,r);r=r+1|0;if((s|0)!=(r|0)){continue}break}}fa=c+80|0}function Uo(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=S(e);f=S(f);g=S(g);h=S(h);i=S(i);j=j|0;k=S(k);l=l|0;var m=0;m=fa-2704|0;fa=m;L[m+2700>>2]=a;L[m+2696>>2]=b;L[m+2692>>2]=c;L[m+2688>>2]=d;P[m+2684>>2]=e;P[m+2680>>2]=f;P[m+2676>>2]=g;P[m+2672>>2]=h;P[m+2668>>2]=i;L[m+2664>>2]=j;P[m+2660>>2]=k;J[m+2659|0]=l;b=L[m+2700>>2];a=m+1472|0;c=a+1184|0;while(1){L[(fa-16|0)+12>>2]=a;a=a+16|0;if((c|0)!=(a|0)){continue}break}a=m+288|0;c=a+1184|0;while(1){L[(fa-16|0)+12>>2]=a;a=a+16|0;if((c|0)!=(a|0)){continue}break}L[m+284>>2]=m+1472;L[m+280>>2]=m+288;a=L[m+2696>>2];c=m+244|0;d=m+2684|0;Ga(c,L[m+2692>>2],d);ta(m+260|0,a,c);a=L[m+2696>>2];c=m+212|0;Ga(c,L[m+2692>>2],d);La(m+228|0,a,c);L[(fa-16|0)+12>>2]=m+192;P[m+188>>2]=P[m+2660>>2]*S(.01745329238474369);L[m+184>>2]=L[m+2692>>2];L[m+180>>2]=L[m+2688>>2];Ub(m+164|0,L[m+184>>2],L[m+180>>2]);J[m+163|0]=0;J[m+162|0]=0;if(P[m+2680>>2]<=S(-1.5707963705062866)){P[m+2680>>2]=P[m+188>>2]+S(-1.5707963705062866);J[m+163|0]=1}if(P[m+2676>>2]>=S(1.5707963705062866)){P[m+2676>>2]=S(1.5707963705062866)-P[m+188>>2];J[m+162|0]=1}if(P[m+2680>>2]>P[m+2676>>2]){P[m+2680>>2]=P[m+188>>2]+S(-1.5707963705062866);P[m+2676>>2]=S(1.5707963705062866)-P[m+188>>2];J[m+162|0]=1;J[m+163|0]=1}e=S(S(P[m+2676>>2]-P[m+2680>>2])/P[m+188>>2]);a:{if(S(T(e))>2]=a+1;if(L[m+156>>2]<2){L[m+156>>2]=2}P[m+152>>2]=S(P[m+2676>>2]-P[m+2680>>2])/S(L[m+156>>2]-1|0);J[m+151|0]=0;b:{if(P[m+2672>>2]>P[m+2668>>2]){P[m+2672>>2]=P[m+188>>2]+S(-3.1415927410125732);P[m+2668>>2]=3.1415927410125732;J[m+151|0]=1;break b}c:{if(S(P[m+2668>>2]-P[m+2672>>2])>=S(6.2831854820251465)){J[m+151|0]=1;break c}J[m+151|0]=0}}e=S(S(P[m+2668>>2]-P[m+2672>>2])/P[m+188>>2]);d:{if(S(T(e))>2]=a+1;if(L[m+144>>2]<2){L[m+144>>2]=2}P[m+140>>2]=S(P[m+2668>>2]-P[m+2672>>2])/S(L[m+144>>2]-1|0);L[m+136>>2]=0;while(1){if(L[m+136>>2]>2]){P[m+132>>2]=S(S(L[m+136>>2])*P[m+152>>2])+P[m+2680>>2];P[m+128>>2]=P[m+2684>>2]*Qa(P[m+132>>2]);P[m+124>>2]=P[m+2684>>2]*Ra(P[m+132>>2]);L[m+120>>2]=0;while(1){if(L[m+120>>2]>2]){P[m+116>>2]=S(S(L[m+120>>2])*P[m+140>>2])+P[m+2672>>2];P[m+112>>2]=Qa(P[m+116>>2]);P[m+108>>2]=Ra(P[m+116>>2]);a=L[m+2696>>2];P[m+40>>2]=P[m+124>>2]*P[m+108>>2];c=m+44|0;Xb(c,m+40|0,L[m+180>>2]);d=m+60|0;ta(d,a,c);P[m+20>>2]=P[m+124>>2]*P[m+112>>2];a=m+24|0;Xb(a,m+20|0,m+164|0);c=m+76|0;ta(c,d,a);a=m+4|0;Xb(a,m+128|0,L[m+184>>2]);ta(m+92|0,c,a);c=L[m+96>>2];a=L[m+280>>2]+(L[m+120>>2]<<4)|0;L[a>>2]=L[m+92>>2];L[a+4>>2]=c;c=L[m+104>>2];L[a+8>>2]=L[m+100>>2];L[a+12>>2]=c;e:{if(L[m+136>>2]){a=L[m+120>>2]<<4;ha[L[L[b>>2]+8>>2]](b,a+L[m+284>>2]|0,a+L[m+280>>2]|0,L[m+2664>>2]);break e}if(J[m+162|0]&1){ha[L[L[b>>2]+8>>2]](b,m+228|0,L[m+280>>2]+(L[m+120>>2]<<4)|0,L[m+2664>>2])}}f:{if(L[m+120>>2]){c=L[m+280>>2];a=L[m+120>>2];ha[L[L[b>>2]+8>>2]](b,c+(a-1<<4)|0,c+(a<<4)|0,L[m+2664>>2]);break f}a=L[m+280>>2]+(L[m+120>>2]<<4)|0;c=L[a+12>>2];L[m+200>>2]=L[a+8>>2];L[m+204>>2]=c;c=L[a+4>>2];L[m+192>>2]=L[a>>2];L[m+196>>2]=c}if(!(!(J[m+163|0]&1)|L[m+136>>2]!=(L[m+156>>2]-1|0))){ha[L[L[b>>2]+8>>2]](b,m+260|0,L[m+280>>2]+(L[m+120>>2]<<4)|0,L[m+2664>>2])}if(J[m+2659|0]&1){g:{if(J[m+151|0]&1){if(L[m+120>>2]==(L[m+144>>2]-1|0)){ha[L[L[b>>2]+8>>2]](b,m+192|0,L[m+280>>2]+(L[m+120>>2]<<4)|0,L[m+2664>>2])}break g}if(!((L[m+136>>2]!=(L[m+156>>2]-1|0)?L[m+136>>2]:0)|(L[m+120>>2]!=(L[m+144>>2]-1|0)?L[m+120>>2]:0))){ha[L[L[b>>2]+8>>2]](b,L[m+2696>>2],L[m+280>>2]+(L[m+120>>2]<<4)|0,L[m+2664>>2])}}}L[m+120>>2]=L[m+120>>2]+1;continue}break}L[m+276>>2]=L[m+284>>2];L[m+284>>2]=L[m+280>>2];L[m+280>>2]=L[m+276>>2];L[m+136>>2]=L[m+136>>2]+1;continue}break}fa=m+2704|0}function jh(a,b){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;d=fa-96|0;fa=d;l=L[a+8>>2];if((l|0)>0){while(1){e=L[L[a+16>>2]+(c<<2)>>2];if(L[e+236>>2]==1){ha[L[L[e>>2]+24>>2]](e,b);l=L[a+8>>2]}c=c+1|0;if((l|0)>(c|0)){continue}break}}J[d+52|0]=1;L[d+48>>2]=0;J[d+72|0]=1;L[d+40>>2]=0;L[d+44>>2]=0;L[d+68>>2]=0;J[d+92|0]=1;L[d+60>>2]=0;L[d+64>>2]=0;L[d+88>>2]=0;L[d+80>>2]=0;L[d+84>>2]=0;L[d+28>>2]=0;J[d+32|0]=1;L[d+20>>2]=0;L[d+24>>2]=0;a:{if((l|0)<=0){break a}while(1){e=L[L[L[a+16>>2]+(r<<2)>>2]+192>>2];L[d+12>>2]=e;c=e+(e<<15^-1)|0;c=R(c>>10^c,9);c=c>>6^c;c=(c<<11^-1)+c|0;c=L[d+64>>2]-1&(c>>16^c);b:{c:{if(c>>>0>=O[d+20>>2]){break c}c=L[L[d+28>>2]+(c<<2)>>2];if((c|0)==-1){break c}f=L[d+48>>2];h=L[d+88>>2];while(1){if((e|0)!=L[h+(c<<3)>>2]){c=L[f+(c<<2)>>2];if((c|0)!=-1){continue}break c}break}if(L[d+68>>2]){break b}}L[d+4>>2]=e;j=0;d:{e:{e=d+16|0;l=L[e+48>>2];c=L[d+4>>2];f=(c<<15^-1)+c|0;f=R(f>>10^f,9);f=f>>6^f;f=(f<<11^-1)+f|0;q=l-1&(f>>16^f);f:{if(q>>>0>=O[e+4>>2]){break f}f=L[L[e+12>>2]+(q<<2)>>2];if((f|0)==-1){break f}h=L[e+32>>2];n=L[e+72>>2];while(1){if((c|0)==L[n+(f<<3)>>2]){break e}f=L[h+(f<<2)>>2];if((f|0)!=-1){continue}break}}s=L[e+44>>2];c=s;g:{if((l|0)!=(c|0)){break g}c=l;i=c?c<<1:1;if((c|0)>=(i|0)){break g}h:{if(!i){h=0;c=l;break h}L[8513]=L[8513]+1;h=ha[L[6798]](i<<2,16)|0;c=L[e+44>>2]}i:{if((c|0)<=0){break i}n=0;f=0;if(c>>>0>=4){o=c&-4;while(1){k=f<<2;L[k+h>>2]=L[k+L[e+52>>2]>>2];g=k|4;L[g+h>>2]=L[g+L[e+52>>2]>>2];g=k|8;L[g+h>>2]=L[g+L[e+52>>2]>>2];k=k|12;L[k+h>>2]=L[k+L[e+52>>2]>>2];f=f+4|0;j=j+4|0;if((o|0)!=(j|0)){continue}break}}j=c&3;if(!j){break i}while(1){k=f<<2;L[k+h>>2]=L[k+L[e+52>>2]>>2];f=f+1|0;n=n+1|0;if((j|0)!=(n|0)){continue}break}}f=L[e+52>>2];if(!(!f|!M[e+56|0])){if(f){L[8514]=L[8514]+1;ha[L[6799]](f)}c=L[e+44>>2]}L[e+52>>2]=h;J[e+56|0]=1;L[e+48>>2]=i}L[L[e+52>>2]+(c<<2)>>2]=L[d+12>>2];L[e+44>>2]=c+1;c=L[e- -64>>2];j:{if((c|0)!=L[e+68>>2]){break j}k=c?c<<1:1;if((k|0)<=(c|0)){break j}k:{if(!k){h=0;break k}L[8513]=L[8513]+1;h=ha[L[6798]](k<<3,16)|0;c=L[e+64>>2]}l:{if((c|0)<=0){break l}n=0;f=0;if(c>>>0>=4){o=c&-4;j=0;while(1){i=f<<3;g=i+h|0;m=i+L[e+72>>2]|0;p=L[m+4>>2];L[g>>2]=L[m>>2];L[g+4>>2]=p;g=i|8;m=g+h|0;g=g+L[e+72>>2]|0;p=L[g+4>>2];L[m>>2]=L[g>>2];L[m+4>>2]=p;g=i|16;m=g+h|0;g=g+L[e+72>>2]|0;p=L[g+4>>2];L[m>>2]=L[g>>2];L[m+4>>2]=p;i=i|24;g=i+h|0;i=i+L[e+72>>2]|0;m=L[i+4>>2];L[g>>2]=L[i>>2];L[g+4>>2]=m;f=f+4|0;j=j+4|0;if((o|0)!=(j|0)){continue}break}}c=c&3;if(!c){break l}while(1){j=f<<3;i=j+h|0;j=j+L[e+72>>2]|0;o=L[j+4>>2];L[i>>2]=L[j>>2];L[i+4>>2]=o;f=f+1|0;n=n+1|0;if((c|0)!=(n|0)){continue}break}}c=L[e+72>>2];if(!(c?!c|!M[e+76|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[e+72>>2]=h;J[e+76|0]=1;L[e+68>>2]=k;c=L[e+64>>2]}f=L[d+8>>2];c=L[e+72>>2]+(c<<3)|0;L[c>>2]=L[d+4>>2];L[c+4>>2]=f;L[e+64>>2]=L[e+64>>2]+1;if((l|0)>2]){nn(e);c=L[d+4>>2];c=(c<<15^-1)+c|0;c=R(c>>10^c,9);c=c>>6^c;c=(c<<11^-1)+c|0;q=L[e+48>>2]-1&(c>>16^c)}c=L[e+12>>2]+(q<<2)|0;L[L[e+32>>2]+(s<<2)>>2]=L[c>>2];L[c>>2]=s;break d}L[L[e+52>>2]+(f<<2)>>2]=L[d+12>>2]}c=L[d+12>>2];ha[L[L[c>>2]+60>>2]](c,b);l=L[a+8>>2]}r=r+1|0;if((r|0)<(l|0)){continue}break}a=L[d+88>>2];if(!a|!M[d+92|0]){break a}if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}L[d+88>>2]=0;J[d+92|0]=1;L[d+80>>2]=0;L[d+84>>2]=0;a=L[d+68>>2];if(!(a?!a|!M[d+72|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[d+68>>2]=0;J[d+72|0]=1;L[d+60>>2]=0;L[d+64>>2]=0;a=L[d+48>>2];if(!(a?!a|!M[d+52|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[d+48>>2]=0;J[d+52|0]=1;L[d+40>>2]=0;L[d+44>>2]=0;a=L[d+28>>2];if(!(a?!a|!M[d+32|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}fa=d+96|0}function Sj(a,b){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,y=0,A=0;o=fa-16|0;fa=o;s=(E(a),x(2));e=s&2147483647;a:{if(e>>>0<=1305022426){j=+a;d=j*.6366197723675814+6755399441055744+-6755399441055744;r=j+d*-1.5707963109016418+d*-1.5893254773528196e-8;Q[b>>3]=r;c=r<-.7853981852531433;if(T(d)<2147483648){e=~~d}else{e=-2147483648}if(c){d=d+-1;Q[b>>3]=j+d*-1.5707963109016418+d*-1.5893254773528196e-8;e=e-1|0;break a}if(!(r>.7853981852531433)){break a}d=d+1;Q[b>>3]=j+d*-1.5707963109016418+d*-1.5893254773528196e-8;e=e+1|0;break a}if(e>>>0>=2139095040){Q[b>>3]=S(a-a);e=0;break a}c=e;e=(e>>>23|0)-150|0;Q[o+8>>3]=(z(2,c-(e<<23)|0),F());t=o+8|0;g=fa-560|0;fa=g;c=(e-3|0)/24|0;p=(c|0)>0?c:0;i=e+R(p,-24)|0;l=L[5840];if((l|0)>=0){e=l+1|0;c=p;while(1){Q[(g+320|0)+(f<<3)>>3]=(c|0)<0?0:+L[(c<<2)+23376>>2];c=c+1|0;f=f+1|0;if((e|0)!=(f|0)){continue}break}}k=i-24|0;e=0;f=(l|0)>0?l:0;while(1){c=0;d=0;while(1){d=Q[(c<<3)+t>>3]*Q[(g+320|0)+(e-c<<3)>>3]+d;c=c+1|0;if((c|0)!=1){continue}break}Q[(e<<3)+g>>3]=d;c=(e|0)==(f|0);e=e+1|0;if(!c){continue}break}y=47-i|0;u=48-i|0;A=i-25|0;e=l;b:{while(1){d=Q[(e<<3)+g>>3];c=0;f=e;n=(e|0)<=0;if(!n){while(1){m=(g+480|0)+(c<<2)|0;j=d*5.960464477539063e-8;c:{if(T(j)<2147483648){h=~~j;break c}h=-2147483648}j=+(h|0);d=j*-16777216+d;d:{if(T(d)<2147483648){h=~~d;break d}h=-2147483648}L[m>>2]=h;f=f-1|0;d=Q[(f<<3)+g>>3]+j;c=c+1|0;if((e|0)!=(c|0)){continue}break}}d=me(d,k);d=d+X(d*.125)*-8;e:{if(T(d)<2147483648){m=~~d;break e}m=-2147483648}d=d-+(m|0);f:{g:{h:{v=(k|0)<=0;i:{if(!v){f=(e<<2)+g|0;h=L[f+476>>2];c=h>>u;q=f;f=h-(c<>2]=f;m=c+m|0;h=f>>y;break i}if(k){break h}h=L[((e<<2)+g|0)+476>>2]>>23}if((h|0)<=0){break f}break g}h=2;if(d>=.5){break g}h=0;break f}c=0;f=0;if(!n){while(1){q=(g+480|0)+(c<<2)|0;n=L[q>>2];w=16777215;j:{k:{if(f){break k}w=16777216;if(n){break k}f=0;break j}L[q>>2]=w-n;f=1}c=c+1|0;if((e|0)!=(c|0)){continue}break}}l:{if(v){break l}c=8388607;m:{switch(A|0){case 1:c=4194303;break;case 0:break m;default:break l}}n=(e<<2)+g|0;L[n+476>>2]=L[n+476>>2]&c}m=m+1|0;if((h|0)!=2){break f}d=1-d;h=2;if(!f){break f}d=d-me(1,k)}if(d==0){f=0;n:{c=e;if((l|0)>=(e|0)){break n}while(1){c=c-1|0;f=L[(g+480|0)+(c<<2)>>2]|f;if((c|0)>(l|0)){continue}break}if(!f){break n}i=k;while(1){i=i-24|0;e=e-1|0;if(!L[(g+480|0)+(e<<2)>>2]){continue}break}break b}c=1;while(1){f=c;c=c+1|0;if(!L[(g+480|0)+(l-f<<2)>>2]){continue}break}f=e+f|0;while(1){e=e+1|0;Q[(g+320|0)+(e<<3)>>3]=L[(e+p<<2)+23376>>2];c=0;d=0;while(1){d=Q[(c<<3)+t>>3]*Q[(g+320|0)+(e-c<<3)>>3]+d;c=c+1|0;if((c|0)!=1){continue}break}Q[(e<<3)+g>>3]=d;if((e|0)<(f|0)){continue}break}e=f;continue}break}d=me(d,24-i|0);o:{if(d>=16777216){k=(g+480|0)+(e<<2)|0;j=d*5.960464477539063e-8;p:{if(T(j)<2147483648){c=~~j;break p}c=-2147483648}d=+(c|0)*-16777216+d;q:{if(T(d)<2147483648){f=~~d;break q}f=-2147483648}L[k>>2]=f;e=e+1|0;break o}if(T(d)<2147483648){c=~~d}else{c=-2147483648}i=k}L[(g+480|0)+(e<<2)>>2]=c}d=me(1,i);r:{if((e|0)<0){break r}c=e;while(1){f=c;Q[(c<<3)+g>>3]=d*+L[(g+480|0)+(c<<2)>>2];c=c-1|0;d=d*5.960464477539063e-8;if(f){continue}break}if((e|0)<0){break r}f=e;while(1){d=0;c=0;i=e-f|0;k=(i|0)>(l|0)?l:i;if((k|0)>=0){while(1){d=Q[(c<<3)+26144>>3]*Q[(c+f<<3)+g>>3]+d;p=(c|0)!=(k|0);c=c+1|0;if(p){continue}break}}Q[(g+160|0)+(i<<3)>>3]=d;c=(f|0)>0;f=f-1|0;if(c){continue}break}}d=0;if((e|0)>=0){while(1){c=e;e=e-1|0;d=d+Q[(g+160|0)+(c<<3)>>3];if(c){continue}break}}Q[o>>3]=h?-d:d;fa=g+560|0;e=m&7;d=Q[o>>3];if((s|0)<0){Q[b>>3]=-d;e=0-e|0;break a}Q[b>>3]=d}fa=o+16|0;return e}function cz(a,b){a=a|0;b=b|0;var c=S(0),d=0,e=S(0),f=0,g=0,h=S(0),i=S(0),j=0,k=S(0),l=S(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=0,v=0,w=0,x=0,y=0,z=0,A=S(0),B=0,C=0,D=S(0),E=S(0),F=S(0),G=S(0),H=S(0),I=S(0),J=0,K=S(0);f=L[a+216>>2];D=P[f+4>>2];a:{if(D==S(0)){break a}g=L[b>>2];if(!(ha[L[L[f>>2]+8>>2]](f,L[g+188>>2])|0)){break a}v=a+68|0;w=a+132|0;f=g+4|0;y=L[a+216>>2];a=fa+-64|0;fa=a;d=L[g+192>>2];b:{if(L[d+4>>2]==32){if(!g|L[g+236>>2]!=8){break b}f=v+48|0;d=w+48|0;if(!(L[g+988>>2]|!L[g+752>>2])){vk(g)}L[a+60>>2]=1065353216;L[a+48>>2]=g;L[a+52>>2]=0;L[a+56>>2]=-1;b=fa-80|0;fa=b;c=P[f>>2];l=P[d>>2];e=P[f+4>>2];h=P[d+4>>2];i=P[f+8>>2];k=P[d+8>>2];L[b+76>>2]=0;P[b+72>>2]=k-i;P[b+68>>2]=h-e;P[b+64>>2]=l-c;c:{if(!L[g+988>>2]){u=L[g+752>>2];if((u|0)<=0){break c}while(1){d=L[g+760>>2]+R(j,44)|0;c=uk(f,b- -64|0,L[d+8>>2]+8|0,L[d+12>>2]+8|0,L[d+16>>2]+8|0,P[a+60>>2]);if(c>S(0)){L[a+52>>2]=3;L[a+56>>2]=j;P[a+60>>2]=c;x=x+1|0}j=j+1|0;if((u|0)!=(j|0)){continue}break}break c}c=P[a+60>>2];L[b>>2]=21032;j=L[f+4>>2];L[b+4>>2]=L[f>>2];L[b+8>>2]=j;j=L[f+12>>2];L[b+12>>2]=L[f+8>>2];L[b+16>>2]=j;l=P[d+8>>2];e=P[f+8>>2];h=P[d>>2];i=P[f>>2];k=P[d+4>>2];m=P[f+4>>2];L[b+48>>2]=0;P[b+44>>2]=l-e;P[b+40>>2]=k-m;P[b+36>>2]=h-i;j=L[d+4>>2];L[b+20>>2]=L[d>>2];L[b+24>>2]=j;j=L[d+12>>2];L[b+28>>2]=L[d+8>>2];L[b+32>>2]=j;L[b+56>>2]=0;L[b+60>>2]=0;P[b+52>>2]=c;qn(L[g+988>>2],f,d,b);d=L[b+56>>2];if(!d){break c}P[a+60>>2]=P[b+52>>2];L[a+52>>2]=3;L[a+56>>2]=(d-L[g+760>>2]|0)/44;x=1}if(L[g+772>>2]>0){J=L[g+780>>2];E=P[b+72>>2];F=P[b+68>>2];G=P[b+64>>2];while(1){j=0;while(1){d=(J+R(z,104)|0)+8|0;u=R(j,12);B=L[d+(L[u+21076>>2]<<2)>>2];t=P[B+8>>2];C=L[(L[u+21072>>2]<<2)+d>>2];i=P[C+8>>2];c=S(t-i);d=L[(L[u+21080>>2]<<2)+d>>2];H=P[d+12>>2];k=P[C+12>>2];e=S(H-k);A=P[d+8>>2];h=S(A-i);o=P[B+12>>2];m=S(o-k);l=S(S(c*e)-S(h*m));p=m;I=P[d+16>>2];m=P[C+16>>2];q=S(I-m);r=P[B+16>>2];n=S(r-m);e=S(S(p*q)-S(e*n));h=S(S(n*h)-S(q*c));c=S(S(E*l)+S(S(G*e)+S(F*h)));d:{if(S(T(c))>2];n=P[f>>2];p=P[f+4>>2];c=S(S(-S(S(S(q*l)+S(S(n*e)+S(h*p)))-S(S(m*l)+S(S(i*e)+S(k*h)))))/c);if(!(c>S(11920928955078125e-22))|!(P[a+60>>2]>c)){break d}s=S(n+S(G*c));i=S(i-s);n=S(p+S(F*c));o=S(o-n);t=S(t-s);k=S(k-n);p=r;r=S(q+S(E*c));q=S(p-r);m=S(m-r);if(!(S(S(l*S(S(i*o)-S(t*k)))+S(S(e*S(S(k*q)-S(o*m)))+S(h*S(S(m*t)-S(q*i)))))>S(-11920928955078125e-22))){break d}n=S(H-n);s=S(A-s);A=S(l*S(S(t*n)-S(s*o)));p=o;o=S(I-r);if(!(c>S(0))|(!(S(A+S(S(e*S(S(p*o)-S(n*q)))+S(h*S(S(q*s)-S(o*t)))))>S(-11920928955078125e-22))|!(S(S(l*S(S(s*k)-S(i*n)))+S(S(e*S(S(n*m)-S(k*o)))+S(h*S(S(o*i)-S(m*s)))))>S(-11920928955078125e-22)))){break d}x=x+1|0;L[a+52>>2]=4;L[a+56>>2]=z;P[a+60>>2]=c}j=j+1|0;if((j|0)!=4){continue}break}z=z+1|0;if((z|0)>2]){continue}break}}fa=b+80|0;if(!x){break b}k=P[a+60>>2];if(!(k<=P[y+4>>2])){break b}L[a+40>>2]=0;b=L[a+56>>2];L[a+44>>2]=b;c=S(P[w+52>>2]-P[v+52>>2]);l=S(P[w+48>>2]-P[v+48>>2]);e=S(P[w+56>>2]-P[v+56>>2]);e:{if(L[a+52>>2]!=3){i=S(S(1)/S(_(S(S(e*e)+S(S(l*l)+S(c*c))))));h=S(i*S(-e));c=S(i*S(-c));e=S(i*S(-l));break e}b=L[g+760>>2]+R(b,44)|0;h=P[b+28>>2];r=S(h*e);e=P[b+20>>2];p=c;c=P[b+24>>2];if(!(S(r+S(S(e*l)+S(p*c)))>S(0))){K=P[b+32>>2];break e}h=S(-h);c=S(-c);e=S(-e)}P[a+32>>2]=K;P[a+28>>2]=h;P[a+24>>2]=c;P[a+36>>2]=k;P[a+20>>2]=e;L[a+12>>2]=g;L[a+16>>2]=a+40;S(ha[L[L[y>>2]+12>>2]](y,a+12|0,1));break b}b=fa-32|0;fa=b;L[b+24>>2]=-1;L[b+28>>2]=-1;L[b+20>>2]=f;L[b+16>>2]=g;L[b+12>>2]=d;L[b+8>>2]=0;Ze(v,w,b+8|0,y);fa=b+32|0}fa=a- -64|0}return D!=S(0)|0}function mA(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{b:{c:{if((f|0)>=0){i=L[a+16>>2];if((i|0)>0){break c}break b}f=L[a+8>>2];S(ha[L[L[f>>2]+12>>2]](f,b,c,d,e,L[a+12>>2],L[a+16>>2],L[a+4>>2],L[a+20>>2],L[a+24>>2]));return}m=L[a+12>>2];while(1){q=m+(g<<2)|0;j=L[q>>2];h=L[L[j+28>>2]+208>>2];if((h|0)<0){h=L[L[j+32>>2]+208>>2]}if((f|0)==(h|0)){break b}g=g+1|0;if((i|0)!=(g|0)){continue}break}q=0;break a}if((g|0)>=(i|0)){break a}h=i-g|0;k=h&1;j=L[a+12>>2];if((i|0)!=(g+1|0)){i=h&-2;m=0;while(1){l=j+(g<<2)|0;n=L[l>>2];h=L[L[n+28>>2]+208>>2];if((h|0)<0){h=L[L[n+32>>2]+208>>2]}g=g+2|0;o=((f|0)==(h|0))+o|0;l=L[l+4>>2];h=L[L[l+28>>2]+208>>2];if((h|0)<0){h=L[L[l+32>>2]+208>>2]}o=((f|0)==(h|0))+o|0;m=m+2|0;if((i|0)!=(m|0)){continue}break}}if(!k){break a}h=L[j+(g<<2)>>2];g=L[L[h+28>>2]+208>>2];if((g|0)<0){g=L[L[h+32>>2]+208>>2]}o=((f|0)==(g|0))+o|0}f=L[a+4>>2];if(L[f+72>>2]>=2){if((c|0)>0){g=L[a+36>>2];h=L[a+32>>2];j=0;while(1){n=(j<<2)+b|0;d:{if((g|0)!=(h|0)){break d}i=g?g<<1:1;if((i|0)<=(g|0)){h=g;break d}e:{if(!i){f=0;break e}L[8513]=L[8513]+1;f=ha[L[6798]](i<<2,16)|0;g=L[a+32>>2]}h=g;f:{if((g|0)<=0){break f}m=0;g=0;if(h>>>0>=4){r=h&-4;k=0;while(1){l=g<<2;L[l+f>>2]=L[l+L[a+40>>2]>>2];p=l|4;L[p+f>>2]=L[p+L[a+40>>2]>>2];p=l|8;L[p+f>>2]=L[p+L[a+40>>2]>>2];l=l|12;L[l+f>>2]=L[l+L[a+40>>2]>>2];g=g+4|0;k=k+4|0;if((r|0)!=(k|0)){continue}break}}k=h&3;if(!k){break f}while(1){l=g<<2;L[l+f>>2]=L[l+L[a+40>>2]>>2];g=g+1|0;m=m+1|0;if((k|0)!=(m|0)){continue}break}}g=L[a+40>>2];if(!(!g|!M[a+44|0])){if(g){L[8514]=L[8514]+1;ha[L[6799]](g)}h=L[a+32>>2]}L[a+40>>2]=f;J[a+44|0]=1;L[a+36>>2]=i;g=i}L[L[a+40>>2]+(h<<2)>>2]=L[n>>2];h=h+1|0;L[a+32>>2]=h;j=j+1|0;if((j|0)!=(c|0)){continue}break}}if((e|0)>0){g=L[a+56>>2];h=L[a+52>>2];j=0;while(1){i=(j<<2)+d|0;g:{if((g|0)!=(h|0)){break g}b=g?g<<1:1;if((b|0)<=(g|0)){h=g;break g}h:{if(!b){f=0;break h}L[8513]=L[8513]+1;f=ha[L[6798]](b<<2,16)|0;g=L[a+52>>2]}h=g;i:{if((g|0)<=0){break i}m=0;g=0;if(h>>>0>=4){l=h&-4;k=0;while(1){c=g<<2;L[c+f>>2]=L[c+L[a+60>>2]>>2];n=c|4;L[n+f>>2]=L[n+L[a+60>>2]>>2];n=c|8;L[n+f>>2]=L[n+L[a+60>>2]>>2];c=c|12;L[c+f>>2]=L[c+L[a+60>>2]>>2];g=g+4|0;k=k+4|0;if((l|0)!=(k|0)){continue}break}}c=h&3;if(!c){break i}while(1){k=g<<2;L[k+f>>2]=L[k+L[a+60>>2]>>2];g=g+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}c=L[a+60>>2];if(!(!c|!M[a+64|0])){if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}h=L[a+52>>2]}L[a+60>>2]=f;J[a+64|0]=1;L[a+56>>2]=b;g=b}L[L[a+60>>2]+(h<<2)>>2]=L[i>>2];h=h+1|0;L[a+52>>2]=h;j=j+1|0;if((j|0)!=(e|0)){continue}break}}j:{if(!o){h=L[a+72>>2];break j}g=L[a+76>>2];h=L[a+72>>2];j=0;while(1){d=(j<<2)+q|0;k:{if((g|0)!=(h|0)){break k}b=g?g<<1:1;if((b|0)<=(g|0)){h=g;break k}l:{if(!b){f=0;break l}L[8513]=L[8513]+1;f=ha[L[6798]](b<<2,16)|0;g=L[a+72>>2]}h=g;m:{if((g|0)<=0){break m}m=0;g=0;if(h>>>0>=4){e=h&-4;k=0;while(1){c=g<<2;L[c+f>>2]=L[c+L[a+80>>2]>>2];i=c|4;L[i+f>>2]=L[i+L[a+80>>2]>>2];i=c|8;L[i+f>>2]=L[i+L[a+80>>2]>>2];c=c|12;L[c+f>>2]=L[c+L[a+80>>2]>>2];g=g+4|0;k=k+4|0;if((e|0)!=(k|0)){continue}break}}c=h&3;if(!c){break m}while(1){e=g<<2;L[e+f>>2]=L[e+L[a+80>>2]>>2];g=g+1|0;m=m+1|0;if((c|0)!=(m|0)){continue}break}}c=L[a+80>>2];if(!(!c|!M[a+84|0])){if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}h=L[a+72>>2]}L[a+80>>2]=f;J[a+84|0]=1;L[a+76>>2]=b;g=b}L[L[a+80>>2]+(h<<2)>>2]=L[d>>2];h=h+1|0;L[a+72>>2]=h;j=j+1|0;if((o|0)!=(j|0)){continue}break}}if(L[L[a+4>>2]+72>>2]<(L[a+52>>2]+h|0)){Ok(a)}return}g=L[a+8>>2];S(ha[L[L[g>>2]+12>>2]](g,b,c,d,e,q,o,f,L[a+20>>2],L[a+24>>2]))}function hI(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=S(0);f=fa-32|0;fa=f;h=a+4|0;Hc(h,((R(L[a+152>>2],L[a+16>>2])|0)/100|0)+1|0);if(L[a+164>>2]){c=((R(L[a+148>>2],L[a+76>>2])|0)/100|0)+1|0;Hc(a- -64|0,c);c=L[a+164>>2]-c|0;L[a+164>>2]=(c|0)>0?c:0}c=(L[a+144>>2]+1|0)%2|0;L[a+144>>2]=c;c=L[((c<<2)+a|0)+124>>2];if(c){g=a- -64|0;while(1){d=L[c+52>>2];e=d?d+56|0:((L[c+60>>2]<<2)+a|0)+124|0;d=L[c+56>>2];L[e>>2]=d;e=L[c+56>>2];if(e){L[e+52>>2]=L[c+52>>2]}L[c+52>>2]=0;L[c+56>>2]=L[a+132>>2];e=L[a+132>>2];if(e){L[e+52>>2]=c}L[a+132>>2]=c;fc(h,L[c+48>>2]);e=L[c+28>>2];L[f+8>>2]=L[c+24>>2];L[f+12>>2]=e;e=L[c+20>>2];L[f>>2]=L[c+16>>2];L[f+4>>2]=e;e=L[c+44>>2];L[f+24>>2]=L[c+40>>2];L[f+28>>2]=e;e=L[c+36>>2];L[f+16>>2]=L[c+32>>2];L[f+20>>2]=e;e=Bb(g,f,c);L[c+60>>2]=2;L[c+48>>2]=e;c=d;if(c){continue}break}J[a+194|0]=1;L[a+164>>2]=L[a+76>>2]}L[f>>2]=5824;L[f+4>>2]=a;a:{if(!M[a+193|0]){break a}_e(h,L[a+4>>2],L[a- -64>>2],f);if(!M[a+193|0]){break a}c=L[h>>2];_e(h,c,c,f)}b:{if(!M[a+194|0]){break b}c=L[a+136>>2];e=ha[L[L[c>>2]+28>>2]](c)|0;c=L[e+4>>2];if((c|0)<=0){break b}c:{d=L[a+160>>2];h=(R(L[a+156>>2],c)|0)/100|0;d=(d|0)>(h|0)?d:h;g=(c|0)<(d|0)?c:d;if((g|0)>0){c=0;while(1){h=L[e+12>>2]+((L[a+184>>2]+c|0)%L[e+4>>2]<<4)|0;i=L[h>>2];d=L[i+48>>2];j=L[h+4>>2];h=L[j+48>>2];d:{e:{if(!(P[d>>2]<=P[h+16>>2])|!(P[d+16>>2]>=P[h>>2])|(!(P[d+4>>2]<=P[h+20>>2])|!(P[d+20>>2]>=P[h+4>>2]))){break e}if(!(P[d+8>>2]<=P[h+24>>2])){break e}if(P[d+24>>2]>=P[h+8>>2]){break d}}d=L[a+136>>2];ha[L[L[d>>2]+12>>2]](d,i,j,b)|0;c=c-1|0;g=g-1|0}c=c+1|0;if((g|0)>(c|0)){continue}break}c=L[e+4>>2];if((c|0)<=0){break c}}L[a+184>>2]=(L[a+184>>2]+g|0)%(c|0);break b}L[a+184>>2]=0}J[a+194|0]=0;L[a+160>>2]=1;L[a+180>>2]=L[a+180>>2]+1;c=L[a+172>>2];d=L[a+168>>2];if(d){m=S(S(c>>>0)/S(d>>>0))}else{m=S(0)}P[a+176>>2]=m;L[a+172>>2]=c>>>1;L[a+168>>2]=d>>>1;fa=f+32|0;d=0;c=0;j=0;l=fa-16|0;fa=l;f=L[a+136>>2];if(ha[L[L[f>>2]+56>>2]](f)|0){h=a;a=L[a+136>>2];g=ha[L[L[a>>2]+28>>2]](a)|0;a=L[g+4>>2];if((a|0)>=2){jc(g,l+15|0,0,a-1|0);a=L[g+4>>2]}if((a|0)>0){while(1){i=L[g+12>>2]+(j<<4)|0;f=L[i+4>>2];e=d;d=L[i>>2];f:{g:{if((e|0)==(d|0)&(c|0)==(f|0)){break g}c=L[d+48>>2];e=L[f+48>>2];if(!(P[c>>2]<=P[e+16>>2])|!(P[c+16>>2]>=P[e>>2])|(!(P[c+4>>2]<=P[e+20>>2])|!(P[c+20>>2]>=P[e+4>>2]))){break g}if(!(P[c+8>>2]<=P[e+24>>2])){break g}if(P[c+24>>2]>=P[e+8>>2]){break f}}a=L[h+136>>2];ha[L[L[a>>2]+32>>2]](a,i,b);L[i>>2]=0;L[i+4>>2]=0;k=k+1|0;a=L[g+4>>2]}c=f;j=j+1|0;if((j|0)<(a|0)){continue}break}if((a|0)>=2){jc(g,l+14|0,0,a-1|0);a=L[g+4>>2]}b=a-k|0;h:{if((k|0)>=0){break h}if((b|0)>L[g+8>>2]){d=0;i:{if((a|0)==(k|0)){break i}L[8513]=L[8513]+1;d=ha[L[6798]](b<<4,16)|0;e=L[g+4>>2];if((e|0)<=0){break i}c=0;while(1){h=c<<4;f=h+d|0;h=h+L[g+12>>2]|0;L[f>>2]=L[h>>2];L[f+4>>2]=L[h+4>>2];L[f+8>>2]=L[h+8>>2];L[f+12>>2]=L[h+12>>2];c=c+1|0;if((e|0)!=(c|0)){continue}break}}c=L[g+12>>2];if(!(c?!c|!M[g+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[g+12>>2]=d;J[g+16|0]=1;L[g+8>>2]=b}c=0;f=0-k&3;if(f){while(1){d=L[g+12>>2]+(a<<4)|0;L[d>>2]=0;L[d+4>>2]=0;L[d+8>>2]=0;L[d+12>>2]=0;a=a+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}if(k>>>0>4294967292){break h}while(1){c=a<<4;d=c+L[g+12>>2]|0;L[d>>2]=0;L[d+4>>2]=0;L[d+8>>2]=0;L[d+12>>2]=0;d=c+L[g+12>>2]|0;L[d+24>>2]=0;L[d+28>>2]=0;L[d+16>>2]=0;L[d+20>>2]=0;d=c+L[g+12>>2]|0;L[d+40>>2]=0;L[d+44>>2]=0;L[d+32>>2]=0;L[d+36>>2]=0;c=c+L[g+12>>2]|0;L[c+56>>2]=0;L[c+60>>2]=0;L[c+48>>2]=0;L[c+52>>2]=0;a=a+4|0;if((b|0)!=(a|0)){continue}break}}a=b}L[g+4>>2]=a}fa=l+16|0}function Bc(a,b,c,d,e,f,g,h,i,j,k){var l=0,m=S(0),n=S(0),o=S(0),p=S(0),q=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=S(0),G=S(0),H=S(0),I=S(0),K=0,N=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),_=0;q=L[a+68>>2];u=q;a:{if((q|0)!=L[a+72>>2]){break a}K=q?q<<1:1;if((q|0)>=(K|0)){break a}if(K){L[8513]=L[8513]+1;N=ha[L[6798]](R(K,152),16)|0;l=L[a+68>>2]}else{l=q}b:{if((l|0)<=0){break b}u=0;if((l|0)!=1){_=l&-2;while(1){E=R(u,152);qa(E+N|0,E+L[a+76>>2]|0,152);E=R(u|1,152);qa(E+N|0,E+L[a+76>>2]|0,152);u=u+2|0;W=W+2|0;if((W|0)!=(_|0)){continue}break}}if(!(l&1)){break b}l=R(u,152);qa(l+N|0,l+L[a+76>>2]|0,152)}l=L[a+76>>2];if(!(l?!l|!M[a+80|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](l)}L[a+76>>2]=N;J[a+80|0]=1;L[a+72>>2]=K;u=L[a+68>>2]}L[a+68>>2]=u+1;l=L[a+76>>2]+R(q,152)|0;L[l+140>>2]=e;q=L[a+16>>2];a=L[(q+R(d,244)|0)+240>>2];e=L[(q+R(c,244)|0)+240>>2];L[l+148>>2]=d;L[l+144>>2]=c;O=P[f+84>>2];L[l+132>>2]=0;P[l+104>>2]=O;L[l+96>>2]=0;L[l+100>>2]=0;c:{if(e){f=L[b+4>>2];L[l+16>>2]=L[b>>2];L[l+20>>2]=f;f=L[b+12>>2];L[l+24>>2]=L[b+8>>2];L[l+28>>2]=f;p=P[g+8>>2];m=P[g>>2];n=P[g+4>>2];L[l+12>>2]=0;Q=P[l+20>>2];T=P[l+16>>2];F=S(S(m*Q)-S(n*T));P[l+8>>2]=F;U=P[l+24>>2];G=S(S(p*T)-S(m*U));P[l+4>>2]=G;H=S(S(n*U)-S(Q*p));P[l>>2]=H;p=P[e+272>>2];m=P[e+268>>2];n=P[e+548>>2];o=P[e+288>>2];v=P[e+280>>2];z=P[e+284>>2];r=P[e+552>>2];t=P[e+304>>2];A=P[e+296>>2];B=P[e+300>>2];C=P[e+544>>2];y=P[e+264>>2];L[l+76>>2]=0;r=S(r*S(S(t*F)+S(S(A*H)+S(G*B))));P[l+72>>2]=r;o=S(n*S(S(o*F)+S(S(v*H)+S(G*z))));P[l+68>>2]=o;v=S(C*S(S(p*F)+S(S(y*H)+S(G*m))));P[l+64>>2]=v;break c}L[l+64>>2]=0;L[l+68>>2]=0;L[l>>2]=0;L[l+4>>2]=0;L[l+72>>2]=0;L[l+76>>2]=0;L[l+8>>2]=0;L[l+12>>2]=0;L[l+16>>2]=0;L[l+20>>2]=0;L[l+24>>2]=0;L[l+28>>2]=0}d:{if(a){p=P[b>>2];m=P[b+4>>2];n=P[b+8>>2];L[l+60>>2]=0;X=S(-n);P[l+56>>2]=X;Y=S(-m);P[l+52>>2]=Y;Z=S(-p);P[l+48>>2]=Z;s=P[h+8>>2];w=P[h+4>>2];x=P[h>>2];L[l+44>>2]=0;I=S(S(p*w)-S(x*m));P[l+40>>2]=I;x=S(S(n*x)-S(s*p));P[l+36>>2]=x;w=S(S(m*s)-S(w*n));P[l+32>>2]=w;p=P[a+272>>2];n=P[a+268>>2];m=P[a+548>>2];z=P[a+288>>2];t=P[a+280>>2];A=P[a+284>>2];s=P[a+552>>2];B=P[a+304>>2];C=P[a+296>>2];y=P[a+300>>2];V=P[a+544>>2];D=P[a+264>>2];L[l+92>>2]=0;s=S(s*S(S(B*I)+S(S(C*w)+S(x*y))));P[l+88>>2]=s;m=S(m*S(S(z*I)+S(S(t*w)+S(x*A))));P[l+84>>2]=m;n=S(V*S(S(p*I)+S(S(D*w)+S(x*n))));P[l+80>>2]=n;break d}L[l+80>>2]=0;L[l+84>>2]=0;L[l+32>>2]=0;L[l+36>>2]=0;L[l+88>>2]=0;L[l+92>>2]=0;L[l+40>>2]=0;L[l+44>>2]=0;L[l+48>>2]=0;L[l+52>>2]=0;L[l+56>>2]=0;L[l+60>>2]=0;m=S(0);n=S(0)}z=S(0);V=i;if(e){i=P[g+4>>2];t=P[g>>2];y=S(P[b+8>>2]*S(S(v*i)-S(t*o)));D=o;o=P[g+8>>2];D=S(P[e+344>>2]+S(y+S(S(P[b>>2]*S(S(D*o)-S(i*r)))+S(S(S(r*t)-S(o*v))*P[b+4>>2]))))}else{D=S(0)}if(a){r=P[h>>2];o=P[h+4>>2];y=S(P[b+8>>2]*S(S(m*r)-S(n*o)));i=m;m=P[h+8>>2];i=S(P[a+344>>2]+S(y+S(S(P[b>>2]*S(S(s*o)-S(i*m)))+S(S(S(n*m)-S(s*r))*P[b+4>>2]))))}else{i=S(0)}C=S(V/S(D+i));P[l+108>>2]=C;i=S(0);r=S(0);o=S(0);v=S(0);s=S(0);m=S(0);if(e){b=q+R(c,244)|0;o=S(P[b+176>>2]+P[b+208>>2]);m=P[b+192>>2];v=P[b+200>>2];r=S(P[b+180>>2]+P[b+212>>2]);s=P[b+196>>2];i=S(P[b+184>>2]+P[b+216>>2])}n=S(0);p=S(0);t=S(0);A=S(0);B=S(0);if(a){a=q+R(d,244)|0;z=S(P[a+176>>2]+P[a+208>>2]);n=S(P[a+180>>2]+P[a+212>>2]);t=P[a+200>>2];A=P[a+196>>2];B=P[a+192>>2];p=S(P[a+184>>2]+P[a+216>>2])}P[l+124>>2]=O;P[l+116>>2]=k;P[l+120>>2]=-O;P[l+112>>2]=C*S(j-S(S(S(S(U*i)+S(S(T*o)+S(r*Q)))+S(S(F*v)+S(S(H*m)+S(s*G))))+S(S(S(X*p)+S(S(Z*z)+S(n*Y)))+S(S(I*t)+S(S(w*B)+S(A*x))))))}function IB(a,b){a=a|0;b=b|0;var c=S(0),d=S(0),e=S(0),f=0,g=S(0),h=0,i=S(0),j=0,k=S(0),l=0,m=S(0),n=S(0),o=0,p=S(0),q=0,r=S(0),s=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=S(0),D=0,E=S(0),F=S(0),G=S(0),H=S(0),I=S(0),J=0,K=0;f=fa-96|0;fa=f;h=L[a+32>>2];l=L[a+28>>2];q=L[b+8>>2];L[q>>2]=1065353216;u=L[b+24>>2];o=u+1<<2;L[o+q>>2]=1065353216;J=u<<1;K=J+2<<2;L[q+K>>2]=1065353216;s=P[l+8>>2];m=P[l+12>>2];n=P[l+20>>2];p=P[l+24>>2];k=P[l+28>>2];i=P[l+36>>2];d=P[l+40>>2];c=P[a+52>>2];r=P[l+44>>2];e=P[a+56>>2];v=P[l+4>>2];g=P[a+48>>2];q=L[b+12>>2];L[q+12>>2]=0;L[q>>2]=0;i=S(S(r*e)+S(S(i*g)+S(c*d)));P[q+4>>2]=i;n=S(S(k*e)+S(S(n*g)+S(c*p)));P[q+8>>2]=-n;w=u<<2;j=w+q|0;L[j+12>>2]=0;m=S(S(m*e)+S(S(v*g)+S(s*c)));P[j+8>>2]=m;L[j+4>>2]=0;P[j>>2]=-i;D=u<<3;j=q+D|0;L[j+8>>2]=0;L[j+12>>2]=0;P[j+4>>2]=-m;P[j>>2]=n;j=L[b+16>>2];if(j){L[j>>2]=-1082130432;L[j+o>>2]=-1082130432;L[j+K>>2]=-1082130432}s=P[h+8>>2];d=P[h+12>>2];k=P[h+36>>2];r=P[h+40>>2];v=P[h+44>>2];p=P[h+20>>2];z=P[h+24>>2];c=P[a+68>>2];A=P[h+28>>2];e=P[a+72>>2];B=P[h+4>>2];g=P[a+64>>2];j=L[b+20>>2];L[j+12>>2]=0;L[j>>2]=0;p=S(S(A*e)+S(S(p*g)+S(c*z)));P[j+8>>2]=p;k=S(S(v*e)+S(S(k*g)+S(c*r)));P[j+4>>2]=-k;o=j+w|0;L[o+12>>2]=0;c=S(S(d*e)+S(S(B*g)+S(s*c)));P[o+8>>2]=-c;L[o+4>>2]=0;P[o>>2]=k;o=j+(J<<2)|0;L[o+8>>2]=0;L[o+12>>2]=0;P[o+4>>2]=c;P[o>>2]=-p;e=P[l+60>>2];g=P[h+60>>2];d=P[l+56>>2];r=P[h+56>>2];o=L[b+28>>2];s=S(P[b>>2]*P[b+4>>2]);P[o>>2]=s*S(S(S(c+P[h+52>>2])-m)-P[l+52>>2]);P[o+w>>2]=s*S(S(S(p+r)-n)-d);P[o+D>>2]=s*S(S(S(k+g)-i)-e);o=R(u,12);L[o+q>>2]=1065353216;w=u<<4|4;L[w+q>>2]=1065353216;D=q;q=R(u,20)+8|0;L[D+q>>2]=1065353216;L[j+o>>2]=-1082130432;L[j+w>>2]=-1082130432;L[j+q>>2]=-1082130432;e=P[h+12>>2];n=P[h+24>>2];m=P[h+40>>2];g=P[h+8>>2];p=P[h+36>>2];k=P[h+28>>2];d=P[h+20>>2];r=P[h+44>>2];v=P[l+12>>2];z=P[l+4>>2];A=P[l+8>>2];B=P[l+28>>2];E=P[l+20>>2];F=P[l+24>>2];G=P[l+44>>2];H=P[l+36>>2];I=P[l+40>>2];i=P[h+4>>2];L[f+72>>2]=0;L[f+56>>2]=0;x=S(S(d*m)-S(p*n));y=S(S(n*r)-S(m*k));t=S(S(k*p)-S(r*d));c=S(S(1)/S(S(e*x)+S(S(i*y)+S(g*t))));C=S(S(S(i*n)-S(d*g))*c);n=S(S(S(g*k)-S(n*e))*c);k=S(S(S(e*d)-S(k*i))*c);P[f+68>>2]=S(G*C)+S(S(H*n)+S(I*k));d=S(S(S(g*p)-S(m*i))*c);g=S(S(S(e*m)-S(r*g))*c);e=S(S(S(i*r)-S(p*e))*c);P[f- -64>>2]=S(G*d)+S(S(H*g)+S(I*e));P[f+52>>2]=S(C*B)+S(S(n*E)+S(k*F));P[f+48>>2]=S(d*B)+S(S(g*E)+S(e*F));L[f+40>>2]=0;i=S(x*c);m=S(y*c);c=S(t*c);P[f+60>>2]=S(G*i)+S(S(H*m)+S(I*c));P[f+44>>2]=S(i*B)+S(S(m*E)+S(c*F));P[f+36>>2]=S(C*v)+S(S(n*z)+S(A*k));P[f+32>>2]=S(d*v)+S(S(g*z)+S(A*e));P[f+28>>2]=S(i*v)+S(S(m*z)+S(A*c));h=f+12|0;Ma(f+28|0,h);n=P[a+92>>2];c=P[h+12>>2];e=S(n-c);x=S(e*e);m=P[a+88>>2];e=P[h+8>>2];g=S(m-e);y=S(g*g);p=P[a+80>>2];g=P[h>>2];i=S(p-g);t=S(i*i);k=P[a+84>>2];i=P[h+4>>2];d=S(k-i);C=S(x+S(y+S(t+S(d*d))));d=S(n+c);x=S(d*d);d=S(m+e);y=S(d*d);d=S(p+g);t=S(d*d);d=S(k+i);if(!(CS(1)?S(1):d);P[f+76>>2]=d+d;L[f+92>>2]=0;d=S(S(i*p)+S(S(S(n*e)-S(c*m))-S(g*k)));r=S(S(e*k)+S(S(S(n*g)-S(c*p))-S(i*m)));c=S(S(g*m)+S(S(S(n*i)-S(c*k))-S(e*p)));e=S(S(d*d)+S(S(r*r)+S(c*c)));a:{if(e>2]=1065353216;L[f+84>>2]=0;P[f+88>>2]=0;break a}t=c;c=S(S(1)/S(_(e)));P[f+84>>2]=t*c;P[f+80>>2]=r*c;P[f+88>>2]=d*c}c=S(-P[f+76>>2]);P[f+84>>2]=P[f+84>>2]*c;P[f+88>>2]=P[f+88>>2]*c;a=L[b+24>>2];b=L[b+28>>2];P[R(a,12)+b>>2]=s*S(P[f+80>>2]*c);P[b+(a<<4)>>2]=s*P[f+84>>2];P[b+R(a,20)>>2]=s*P[f+88>>2];fa=f+96|0}function zz(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=S(0),m=S(0),n=0,o=0,p=S(0),q=S(0),r=S(0),s=S(0);d=fa-448|0;fa=d;f=L[c+36>>2];i=L[b+36>>2];b=L[a+24>>2];a:{if(M[L[b+1140>>2]+(L[i+380>>2]+R(L[f+380>>2],L[b+1112>>2])|0)|0]?(b|0)!=L[a+28>>2]|!L[b+1132>>2]:1){c=d+392|0;L[c+4>>2]=35;L[c+8>>2]=0;L[c>>2]=14328;L[c+44>>2]=1025758986;L[c+12>>2]=1065353216;L[c+16>>2]=1065353216;L[c>>2]=14044;L[c+20>>2]=1065353216;L[c+24>>2]=0;L[c+52>>2]=i;L[c>>2]=21628;L[c+44>>2]=0;b=d+336|0;L[b+4>>2]=35;L[b+8>>2]=0;L[b>>2]=14328;L[b+44>>2]=1025758986;L[b+12>>2]=1065353216;L[b+16>>2]=1065353216;L[b>>2]=14044;L[b+20>>2]=1065353216;L[b+24>>2]=0;L[b+52>>2]=f;L[b>>2]=21628;L[b+44>>2]=0;g=J[30088]&1;b:{c:{d:{if(!g){if(!(J[30140]&1)){break d}break c}if(g){break b}if(J[30140]&1){break c}}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}p=P[f+232>>2];q=P[i+232>>2];r=P[f+236>>2];s=P[i+236>>2];l=P[f+228>>2];m=P[i+228>>2];L[d+76>>2]=0;P[d+64>>2]=m-l;P[d+72>>2]=s-r;P[d+68>>2]=q-p;e:{if(!Gl(c,b,30024,d- -64|0,d+280|0)){break e}L[d+84>>2]=0;L[d+88>>2]=0;L[d+76>>2]=0;L[d+80>>2]=0;L[d+32>>2]=0;L[d+16>>2]=0;L[d+56>>2]=0;L[d+60>>2]=0;L[d+52>>2]=i;L[d+44>>2]=0;L[d+48>>2]=0;L[d+40>>2]=f;L[d+68>>2]=0;L[d+72>>2]=0;J[d+216|0]=0;L[d+64>>2]=21160;b=L[d+56>>2];L[d+24>>2]=L[d+52>>2];L[d+28>>2]=b;b=L[d+44>>2];L[d+8>>2]=L[d+40>>2];L[d+12>>2]=b;if(!nk(a,d+280|0,d+24|0,d+8|0,d- -64|0)){break e}L[8513]=L[8513]+1;e=ha[L[6798]](216,16)|0;b=pa(e+4|0,0,212);L[e>>2]=21160;qa(b,d+68|0,100);b=L[d+180>>2];L[e+112>>2]=L[d+176>>2];L[e+116>>2]=b;b=L[d+172>>2];L[e+104>>2]=L[d+168>>2];L[e+108>>2]=b;b=L[d+196>>2];L[e+128>>2]=L[d+192>>2];L[e+132>>2]=b;b=L[d+188>>2];L[e+120>>2]=L[d+184>>2];L[e+124>>2]=b;b=L[d+204>>2];L[e+136>>2]=L[d+200>>2];L[e+140>>2]=b;b=L[d+212>>2];L[e+144>>2]=L[d+208>>2];L[e+148>>2]=b;J[e+152|0]=M[d+216|0];L[e+212>>2]=L[d+276>>2];b=L[d+272>>2];L[e+204>>2]=L[d+268>>2];L[e+208>>2]=b;b=L[d+264>>2];L[e+196>>2]=L[d+260>>2];L[e+200>>2]=b;b=L[d+256>>2];L[e+188>>2]=L[d+252>>2];L[e+192>>2]=b;b=L[d+248>>2];L[e+180>>2]=L[d+244>>2];L[e+184>>2]=b;b=L[d+240>>2];L[e+172>>2]=L[d+236>>2];L[e+176>>2]=b;b=L[d+232>>2];L[e+164>>2]=L[d+228>>2];L[e+168>>2]=b;b=L[d+224>>2];L[e+156>>2]=L[d+220>>2];L[e+160>>2]=b;h=L[a+24>>2];f=L[h+852>>2];f:{if((f|0)!=L[h+856>>2]){break f}g=f?f<<1:1;if((g|0)<=(f|0)){break f}if(g){L[8513]=L[8513]+1;j=ha[L[6798]](g<<2,16)|0;f=L[h+852>>2]}g:{if((f|0)<=0){break g}if(f>>>0>=4){c=f&-4;while(1){i=k<<2;L[i+j>>2]=L[i+L[h+860>>2]>>2];b=i|4;L[b+j>>2]=L[b+L[h+860>>2]>>2];b=i|8;L[b+j>>2]=L[b+L[h+860>>2]>>2];b=i|12;L[b+j>>2]=L[b+L[h+860>>2]>>2];k=k+4|0;n=n+4|0;if((c|0)!=(n|0)){continue}break}}c=f&3;if(!c){break g}while(1){b=k<<2;L[b+j>>2]=L[b+L[h+860>>2]>>2];k=k+1|0;o=o+1|0;if((c|0)!=(o|0)){continue}break}}b=L[h+860>>2];if(!(!b|!M[h+864|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}f=L[h+852>>2]}L[h+860>>2]=j;J[h+864|0]=1;L[h+856>>2]=g}L[L[h+860>>2]+(f<<2)>>2]=e;L[h+852>>2]=f+1;b=L[a+24>>2];l=P[b+348>>2];a=L[a+28>>2];m=P[a+348>>2];P[e+64>>2]=P[e+64>>2]*(l>m?l:m);P[e+68>>2]=P[e+68>>2]*S(S(P[b+360>>2]+P[a+360>>2])*S(.5))}break a}L[8498]=L[8498]+1}fa=d+448|0}function Jl(a,b,c,d){var e=0,f=0,g=S(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=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=0,C=S(0),D=0,E=S(0),F=S(0),G=S(0),H=S(0),I=S(0),K=S(0),M=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),_=0,$=0,aa=S(0),ba=S(0),ca=S(0),da=S(0),ea=S(0),ga=S(0);e=fa-240|0;fa=e;a:{if(L[a+16>>2]){He(L[a+4>>2]);f=L[a+12>>2];D=L[f+4>>2];M=L[a+16>>2];_=L[M+4>>2];h=S(ha[L[L[f>>2]+48>>2]](f));B=L[a+16>>2];j=S(ha[L[L[B>>2]+48>>2]](B));B=L[a+4>>2];$=L[a+8>>2];a=e+160|0;L[a+72>>2]=1;L[a+76>>2]=1;L[a+60>>2]=-1;J[a+52|0]=0;P[a+48>>2]=j;P[a+44>>2]=h;L[a+40>>2]=_;L[a+36>>2]=D;L[a+32>>2]=M;L[a+28>>2]=f;L[a+24>>2]=B;L[a+20>>2]=$;L[a+4>>2]=0;L[a+8>>2]=1065353216;L[a+12>>2]=0;L[a+16>>2]=0;L[a>>2]=18600;L[e+152>>2]=1566444395;f=L[b+12>>2];L[e+32>>2]=L[b+8>>2];L[e+36>>2]=f;f=L[b+4>>2];L[e+24>>2]=L[b>>2];L[e+28>>2]=f;f=L[b+28>>2];L[e+48>>2]=L[b+24>>2];L[e+52>>2]=f;f=L[b+20>>2];L[e+40>>2]=L[b+16>>2];L[e+44>>2]=f;D=L[b+44>>2];f=e- -64|0;L[f>>2]=L[b+40>>2];L[f+4>>2]=D;f=L[b+36>>2];L[e+56>>2]=L[b+32>>2];L[e+60>>2]=f;f=L[b+60>>2];L[e+80>>2]=L[b+56>>2];L[e+84>>2]=f;f=L[b+52>>2];L[e+72>>2]=L[b+48>>2];L[e+76>>2]=f;b=L[c+12>>2];L[e+96>>2]=L[c+8>>2];L[e+100>>2]=b;b=L[c+4>>2];L[e+88>>2]=L[c>>2];L[e+92>>2]=b;b=L[c+20>>2];L[e+104>>2]=L[c+16>>2];L[e+108>>2]=b;b=L[c+28>>2];L[e+112>>2]=L[c+24>>2];L[e+116>>2]=b;b=L[c+44>>2];L[e+128>>2]=L[c+40>>2];L[e+132>>2]=b;b=L[c+36>>2];L[e+120>>2]=L[c+32>>2];L[e+124>>2]=b;b=L[c+52>>2];L[e+136>>2]=L[c+48>>2];L[e+140>>2]=b;b=L[c+60>>2];L[e+144>>2]=L[c+56>>2];L[e+148>>2]=b;wb(a,e+24|0,d,0,0);break a}E=P[b+52>>2];F=P[b+56>>2];G=P[c+52>>2];H=P[c+56>>2];k=P[b+20>>2];l=P[b+36>>2];h=P[c+20>>2];j=P[c+36>>2];g=P[c+24>>2];m=P[b+24>>2];i=P[c+40>>2];p=P[b+40>>2];I=P[b+48>>2];aa=P[c+48>>2];f=L[a+12>>2];q=P[b+32>>2];r=P[b+16>>2];s=P[b>>2];t=P[b+4>>2];x=P[c+32>>2];y=P[c+16>>2];z=P[c>>2];A=P[c+4>>2];n=P[c+8>>2];u=P[b+8>>2];a=L[a+20>>2];v=P[a+52>>2];w=P[a+56>>2];o=P[a+48>>2];L[e+172>>2]=0;N=S(S(p*x)+S(S(u*z)+S(m*y)));o=S(-o);O=S(S(p*j)+S(S(u*A)+S(m*h)));C=S(S(p*i)+S(S(u*n)+S(m*g)));P[e+168>>2]=S(S(N*o)-S(v*O))-S(w*C);Q=S(S(l*x)+S(S(t*z)+S(k*y)));R=S(S(l*j)+S(S(t*A)+S(k*h)));T=S(S(l*i)+S(S(t*n)+S(k*g)));P[e+164>>2]=S(S(Q*o)-S(v*R))-S(w*T);U=S(S(q*x)+S(S(s*z)+S(r*y)));V=S(S(q*j)+S(S(s*A)+S(r*h)));W=S(S(q*i)+S(S(s*n)+S(r*g)));P[e+160>>2]=S(S(U*o)-S(v*V))-S(w*W);b=e+160|0;ha[L[L[f>>2]+64>>2]](e+24|0,f,b);k=P[a+52>>2];l=P[a+56>>2];ba=P[a+64>>2];m=P[a+48>>2];p=P[e+24>>2];q=P[e+28>>2];r=P[e+32>>2];ca=P[c+52>>2];s=P[c+24>>2];t=P[c+20>>2];da=P[c+56>>2];u=P[c+40>>2];v=P[c+36>>2];ea=P[c+48>>2];w=P[c+8>>2];o=P[c>>2];X=P[c+4>>2];Y=P[c+16>>2];Z=P[c+32>>2];L[e+172>>2]=0;ga=S(S(F*i)+S(S(I*n)+S(E*g)));K=n;n=S(-aa);g=S(S(ga+S(S(S(K*n)-S(g*G))-S(i*H)))+S(S(r*C)+S(S(p*W)+S(T*q))));K=g;C=S(l*g);g=S(S(S(S(F*x)+S(S(I*z)+S(E*y)))+S(S(S(z*n)-S(y*G))-S(x*H)))+S(S(r*N)+S(S(p*U)+S(Q*q))));i=S(S(S(S(F*j)+S(S(I*A)+S(E*h)))+S(S(S(A*n)-S(h*G))-S(j*H)))+S(S(r*O)+S(S(p*V)+S(R*q))));h=S(S(C+S(S(m*g)+S(k*i)))-ba);j=S(K-S(l*h));g=S(g-S(m*h));i=S(i-S(k*h));P[e+168>>2]=da+S(S(u*j)+S(S(Z*g)+S(v*i)));P[e+164>>2]=ca+S(S(j*s)+S(S(g*Y)+S(i*t)));P[e+160>>2]=ea+S(S(j*w)+S(S(g*o)+S(i*X)));L[e+20>>2]=0;P[e+16>>2]=S(u*l)+S(S(Z*m)+S(k*v));P[e+12>>2]=S(s*l)+S(S(Y*m)+S(k*t));P[e+8>>2]=S(w*l)+S(S(o*m)+S(k*X));ha[L[L[d>>2]+16>>2]](d,e+8|0,b,h)}fa=e+240|0}function Kk(a,b){var c=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),l=S(0),m=S(0),n=S(0),o=S(0),p=S(0),q=S(0),r=S(0),s=S(0),t=0;L[a+312>>2]=0;L[a+316>>2]=0;L[a+236>>2]=2;L[a+544>>2]=1065353216;L[a+548>>2]=1065353216;L[a+348>>2]=1065353216;L[a+352>>2]=1065353216;L[a+412>>2]=0;L[a+416>>2]=0;L[a+320>>2]=0;L[a+324>>2]=0;L[a+328>>2]=0;L[a+332>>2]=0;L[a+336>>2]=0;L[a+340>>2]=0;L[a+552>>2]=1065353216;L[a+556>>2]=0;L[a+360>>2]=0;L[a+364>>2]=0;L[a+356>>2]=1065353216;L[a+368>>2]=0;L[a+372>>2]=0;L[a+376>>2]=0;L[a+380>>2]=0;L[a+384>>2]=0;L[a+388>>2]=0;L[a+392>>2]=0;L[a+420>>2]=0;L[a+424>>2]=0;L[a+428>>2]=0;L[a+432>>2]=0;L[a+436>>2]=0;L[a+440>>2]=0;g=P[b+92>>2];d=P[b+96>>2];P[a+448>>2]=dS(1)?S(1):d;P[a+444>>2]=gS(1)?S(1):g;P[a+472>>2]=P[b+112>>2];P[a+476>>2]=P[b+116>>2];c=L[b+4>>2];L[a+608>>2]=0;L[a+612>>2]=0;L[a+480>>2]=c;J[a+452|0]=M[b+120|0];P[a+456>>2]=P[b+124>>2];P[a+460>>2]=P[b+128>>2];P[a+464>>2]=P[b+132>>2];P[a+468>>2]=P[b+136>>2];a:{if(c){ha[L[L[c>>2]+8>>2]](c,a+4|0);break a}c=L[b+12>>2];L[a+4>>2]=L[b+8>>2];L[a+8>>2]=c;c=L[b+20>>2];L[a+12>>2]=L[b+16>>2];L[a+16>>2]=c;c=L[b+36>>2];L[a+28>>2]=L[b+32>>2];L[a+32>>2]=c;c=L[b+28>>2];L[a+20>>2]=L[b+24>>2];L[a+24>>2]=c;c=L[b+44>>2];L[a+36>>2]=L[b+40>>2];L[a+40>>2]=c;c=L[b+52>>2];L[a+44>>2]=L[b+48>>2];L[a+48>>2]=c;c=b- -64|0;t=L[c+4>>2];L[a+60>>2]=L[c>>2];L[a+64>>2]=t;c=L[b+60>>2];L[a+52>>2]=L[b+56>>2];L[a+56>>2]=c}L[a+132>>2]=0;L[a+136>>2]=0;c=L[a+8>>2];L[a+68>>2]=L[a+4>>2];L[a+72>>2]=c;L[a+156>>2]=0;L[a+160>>2]=0;L[a+148>>2]=0;L[a+152>>2]=0;L[a+140>>2]=0;L[a+144>>2]=0;c=L[a+24>>2];L[a+84>>2]=L[a+20>>2];L[a+88>>2]=c;c=L[a+16>>2];L[a+76>>2]=L[a+12>>2];L[a+80>>2]=c;c=L[a+32>>2];L[a+92>>2]=L[a+28>>2];L[a+96>>2]=c;c=L[a+40>>2];L[a+100>>2]=L[a+36>>2];L[a+104>>2]=c;c=L[a+48>>2];L[a+108>>2]=L[a+44>>2];L[a+112>>2]=c;c=L[a+56>>2];L[a+116>>2]=L[a+52>>2];L[a+120>>2]=c;c=L[a+64>>2];L[a+124>>2]=L[a+60>>2];L[a+128>>2]=c;P[a+224>>2]=P[b+100>>2];P[a+232>>2]=P[b+104>>2];P[a+228>>2]=P[b+108>>2];ha[L[L[a>>2]+12>>2]](a,L[b+72>>2]);c=L[8291];L[8291]=c+1;L[a+508>>2]=c;g=S(0);c=L[a+204>>2];d=P[b>>2];if(d==S(0)){c=c|1}else{g=S(S(1)/d);c=c&-2}P[a+344>>2]=g;L[a+204>>2]=c;L[a+376>>2]=0;P[a+364>>2]=d*P[a+380>>2];P[a+372>>2]=d*P[a+388>>2];P[a+368>>2]=d*P[a+384>>2];e=P[b+84>>2];f=P[b+80>>2];d=P[b+76>>2];L[a+504>>2]=0;L[a+308>>2]=0;L[a+292>>2]=0;L[a+276>>2]=0;L[a+408>>2]=0;d=d!=S(0)?S(S(1)/d):S(0);P[a+396>>2]=d;f=f!=S(0)?S(S(1)/f):S(0);P[a+400>>2]=f;e=e!=S(0)?S(S(1)/e):S(0);P[a+404>>2]=e;m=P[a+12>>2];h=S(e*m);n=P[a+4>>2];i=S(d*n);o=P[a+8>>2];j=S(f*o);P[a+264>>2]=S(m*h)+S(S(n*i)+S(o*j));p=P[a+28>>2];q=P[a+20>>2];r=P[a+24>>2];P[a+268>>2]=S(p*h)+S(S(q*i)+S(j*r));s=P[a+44>>2];k=S(s*h);h=P[a+36>>2];l=S(h*i);i=P[a+40>>2];P[a+272>>2]=k+S(l+S(j*i));j=S(e*p);k=S(d*q);l=S(f*r);P[a+280>>2]=S(m*j)+S(S(n*k)+S(o*l));P[a+284>>2]=S(p*j)+S(S(q*k)+S(r*l));P[a+288>>2]=S(s*j)+S(S(h*k)+S(l*i));e=S(e*s);d=S(d*h);f=S(f*i);P[a+296>>2]=S(m*e)+S(S(n*d)+S(o*f));P[a+300>>2]=S(p*e)+S(S(q*d)+S(r*f));P[a+304>>2]=S(s*e)+S(S(h*d)+S(i*f));d=P[a+348>>2];f=P[a+352>>2];e=P[a+356>>2];L[a+536>>2]=0;L[a+540>>2]=0;L[a+528>>2]=0;L[a+532>>2]=0;L[a+520>>2]=0;L[a+524>>2]=0;L[a+512>>2]=0;L[a+516>>2]=0;P[a+568>>2]=g*e;P[a+564>>2]=g*f;P[a+560>>2]=g*d;L[a+604>>2]=0;L[a+596>>2]=0;L[a+600>>2]=0;L[a+588>>2]=0;L[a+592>>2]=0;L[a+580>>2]=0;L[a+584>>2]=0;L[a+572>>2]=0;L[a+576>>2]=0}function CG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=S(0),f=S(0),g=S(0),h=S(0),i=S(0),j=S(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=S(0),A=S(0),B=0,C=0,D=0,E=S(0),F=S(0),G=S(0),H=0,I=0;d=fa-240|0;fa=d;L[a+4>>2]=L[a+4>>2]+1;B=L[c+36>>2];D=R(B,80);H=L[a+12>>2];I=L[H+4>>2];n=L[(D+L[I+24>>2]|0)+64>>2];c=L[a+8>>2];C=L[b+36>>2];b=L[L[c+4>>2]+24>>2]+R(C,80)|0;o=L[b+64>>2];c=L[c+12>>2];E=P[c+52>>2];F=P[c+56>>2];e=P[c+24>>2];f=P[c+20>>2];g=P[c+40>>2];h=P[c+36>>2];G=P[c+48>>2];i=P[c+8>>2];j=P[c>>2];k=P[c+4>>2];l=P[c+16>>2];m=P[c+32>>2];p=P[b+32>>2];q=P[b>>2];r=P[b+16>>2];s=P[b+56>>2];t=P[b+48>>2];u=P[b+52>>2];v=P[b+36>>2];w=P[b+4>>2];x=P[b+20>>2];y=P[b+40>>2];z=P[b+8>>2];A=P[b+24>>2];b=0;L[d+236>>2]=0;L[d+220>>2]=0;L[d+204>>2]=0;P[d+216>>2]=S(y*g)+S(S(z*m)+S(h*A));P[d+212>>2]=S(v*g)+S(S(w*m)+S(h*x));P[d+200>>2]=S(y*e)+S(S(z*l)+S(f*A));P[d+196>>2]=S(v*e)+S(S(w*l)+S(f*x));P[d+232>>2]=F+S(S(s*g)+S(S(t*m)+S(h*u)));P[d+228>>2]=E+S(S(s*e)+S(S(t*l)+S(f*u)));L[d+188>>2]=0;P[d+208>>2]=S(p*g)+S(S(q*m)+S(h*r));P[d+192>>2]=S(p*e)+S(S(q*l)+S(f*r));P[d+184>>2]=S(y*i)+S(S(z*j)+S(k*A));P[d+180>>2]=S(v*i)+S(S(w*j)+S(k*x));P[d+176>>2]=S(p*i)+S(S(q*j)+S(k*r));P[d+224>>2]=G+S(S(s*i)+S(S(t*j)+S(k*u)));c=L[H+12>>2];E=P[c+52>>2];F=P[c+56>>2];e=P[c+24>>2];f=P[c+20>>2];g=P[c+40>>2];h=P[c+36>>2];G=P[c+48>>2];i=P[c+8>>2];j=P[c>>2];k=P[c+4>>2];l=P[c+16>>2];m=P[c+32>>2];c=L[I+24>>2]+D|0;p=P[c+32>>2];q=P[c>>2];r=P[c+16>>2];s=P[c+56>>2];t=P[c+48>>2];u=P[c+52>>2];v=P[c+36>>2];w=P[c+4>>2];x=P[c+20>>2];y=P[c+40>>2];z=P[c+8>>2];A=P[c+24>>2];L[d+172>>2]=0;L[d+156>>2]=0;L[d+140>>2]=0;P[d+152>>2]=S(y*g)+S(S(z*m)+S(h*A));P[d+148>>2]=S(v*g)+S(S(w*m)+S(h*x));P[d+136>>2]=S(y*e)+S(S(z*l)+S(f*A));P[d+132>>2]=S(v*e)+S(S(w*l)+S(f*x));P[d+168>>2]=F+S(S(s*g)+S(S(t*m)+S(h*u)));P[d+164>>2]=E+S(S(s*e)+S(S(t*l)+S(f*u)));L[d+124>>2]=0;P[d+144>>2]=S(p*g)+S(S(q*m)+S(h*r));P[d+128>>2]=S(p*e)+S(S(q*l)+S(f*r));P[d+120>>2]=S(y*i)+S(S(z*j)+S(k*A));P[d+116>>2]=S(v*i)+S(S(w*j)+S(k*x));P[d+112>>2]=S(p*i)+S(S(q*j)+S(k*r));P[d+160>>2]=G+S(S(s*i)+S(S(t*j)+S(k*u)));ha[L[L[o>>2]+8>>2]](o,d+176|0,d+96|0,d+80|0);ha[L[L[n>>2]+8>>2]](n,d+112|0,d- -64|0,d+48|0);c=L[7543];a:{if(c){if(!(ha[c|0](o,n)|0)){break a}}b=P[d+80>>2]>2]|P[d+96>>2]>P[d+48>>2]?b:1;c=0;if((P[d+88>>2]>2]|P[d+104>>2]>P[d+56>>2]?c:b)^1|P[d+84>>2]>2]|P[d+100>>2]>P[d+52>>2]){break a}b=L[a+8>>2];c=L[b+8>>2];L[d+44>>2]=C;L[d+40>>2]=-1;L[d+32>>2]=c;L[d+28>>2]=o;L[d+24>>2]=b;L[d+36>>2]=d+176;b=L[a+12>>2];c=L[b+8>>2];L[d+20>>2]=B;L[d+16>>2]=-1;L[d+8>>2]=c;L[d+4>>2]=n;L[d>>2]=b;L[d+12>>2]=d+112;b=L[a+28>>2];L[7546]=L[7546]+1;c=B<<16|C;c=(c<<15^-1)+c|0;c=R(c>>10^c,9);c=c>>6^c;c=(c<<11^-1)+c|0;c=L[b+12>>2]-1&(c>>16^c);b:{c:{if((c|0)>=L[b+32>>2]){break c}c=L[L[b+40>>2]+(c<<2)>>2];if((c|0)==-1){break c}n=L[b+60>>2];o=L[b+16>>2];while(1){b=o+R(c,12)|0;if(L[b>>2]==(C|0)&L[b+4>>2]==(B|0)){break b}c=L[n+(c<<2)>>2];if((c|0)!=-1){continue}break}}b=0}d:{if(b){b=L[b+8>>2];break d}b=L[a+16>>2];b=ha[L[L[b>>2]+8>>2]](b,d+24|0,d,L[a+32>>2])|0;c=L[a+28>>2];L[(ha[L[L[c>>2]+12>>2]](c,C,B)|0)+8>>2]=b}c=L[a+24>>2];n=L[c+8>>2];o=L[c+12>>2];L[c+12>>2]=d;D=d+24|0;L[c+8>>2]=D;ha[L[L[c>>2]+8>>2]](c,-1,C);c=L[a+24>>2];ha[L[L[c>>2]+12>>2]](c,-1,B);ha[L[L[b>>2]+8>>2]](b,D,d,L[a+20>>2],L[a+24>>2]);a=L[a+24>>2];L[a+8>>2]=n;L[a+12>>2]=o}fa=d+240|0}function Iw(a,b){a=a|0;b=S(b);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;m=fa-16|0;fa=m;L[m+12>>2]=a;P[m+8>>2]=b;a=0;c=fa-1120|0;fa=c;j=42;f=L[m+12>>2];e=L[f+44>>2];e=ha[L[L[e>>2]+84>>2]](e)|0;if((e|0)>0){while(1){d=L[f+44>>2];ha[L[L[d>>2]+88>>2]](d,a,c+128|0);am();h=L[c+140>>2];d=j<<4;g=d+30440|0;L[g>>2]=L[c+136>>2];L[g+4>>2]=h;g=L[c+132>>2];d=d+30432|0;L[d>>2]=L[c+128>>2];L[d+4>>2]=g;j=j+1|0;a=a+1|0;if((e|0)!=(a|0)){continue}break}}a=0;while(1){e=L[f+44>>2];am();d=a<<4;ha[L[L[e>>2]+64>>2]](c+4|0,e,d+30432|0);e=d+(c+128|0)|0;d=L[c+16>>2];L[e+8>>2]=L[c+12>>2];L[e+12>>2]=d;d=L[c+8>>2];L[e>>2]=L[c+4>>2];L[e+4>>2]=d;a=a+1|0;if((j|0)!=(a|0)){continue}break}L[c+120>>2]=4096;L[c+124>>2]=4096;L[c+112>>2]=16;L[c+116>>2]=981668463;L[c+104>>2]=j;L[c+100>>2]=1;L[c+108>>2]=c+128;J[c+96|0]=1;L[c+92>>2]=0;L[c+84>>2]=0;L[c+88>>2]=0;L[c+72>>2]=0;J[c+76|0]=1;L[c+64>>2]=0;L[c+68>>2]=0;L[c+24>>2]=0;J[c+28|0]=1;J[c+56|0]=1;L[c+16>>2]=0;L[c+20>>2]=0;L[c+52>>2]=0;L[c+44>>2]=0;L[c+48>>2]=0;L[c+32>>2]=0;L[c+36>>2]=0;L[c+8>>2]=0;J[c+4|0]=1;p=ak(c+60|0,c+100|0,c+4|0);if((p|0)!=1){e=L[c+8>>2];a=e;h=L[f+4>>2];if((a|0)>(h|0)){if((e|0)>L[f+8>>2]){a:{if(!e){j=0;break a}L[8513]=L[8513]+1;j=ha[L[6798]](e<<4,16)|0;h=L[f+4>>2]}b:{if((h|0)<=0){break b}a=0;if((h|0)!=1){k=h&-2;while(1){g=a<<4;i=g+j|0;d=g+L[f+12>>2]|0;n=L[d+4>>2];L[i>>2]=L[d>>2];L[i+4>>2]=n;n=L[d+12>>2];L[i+8>>2]=L[d+8>>2];L[i+12>>2]=n;d=g|16;g=d+j|0;d=d+L[f+12>>2]|0;i=L[d+4>>2];L[g>>2]=L[d>>2];L[g+4>>2]=i;i=L[d+12>>2];L[g+8>>2]=L[d+8>>2];L[g+12>>2]=i;a=a+2|0;l=l+2|0;if((k|0)!=(l|0)){continue}break}}if(!(h&1)){break b}a=a<<4;d=a+j|0;a=a+L[f+12>>2]|0;g=L[a+4>>2];L[d>>2]=L[a>>2];L[d+4>>2]=g;g=L[a+12>>2];L[d+8>>2]=L[a+8>>2];L[d+12>>2]=g}a=L[f+12>>2];if(!(a?!a|!M[f+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[f+12>>2]=j;J[f+16|0]=1;L[f+8>>2]=e}a=L[c+8>>2]}L[f+4>>2]=e;if((a|0)>0){a=0;while(1){e=a<<4;d=e+L[f+12>>2]|0;e=e+L[c+24>>2]|0;g=L[e+4>>2];L[d>>2]=L[e>>2];L[d+4>>2]=g;g=L[e+12>>2];L[d+8>>2]=L[e+8>>2];L[d+12>>2]=g;a=a+1|0;if((a|0)>2]){continue}break}}e=L[c+36>>2];L[f+40>>2]=e;a=e;d=L[f+24>>2];if((a|0)>(d|0)){c:{if((e|0)<=L[f+28>>2]){h=L[f+32>>2];break c}d:{if(!e){h=0;a=d;break d}L[8513]=L[8513]+1;h=ha[L[6798]](e<<2,16)|0;a=L[f+24>>2]}i=L[f+32>>2];e:{g=a;if((a|0)>0){j=0;a=0;if(g>>>0>=4){n=g&-4;l=0;while(1){k=a<<2;L[k+h>>2]=L[i+k>>2];o=k|4;L[o+h>>2]=L[i+o>>2];o=k|8;L[o+h>>2]=L[i+o>>2];k=k|12;L[k+h>>2]=L[i+k>>2];a=a+4|0;l=l+4|0;if((n|0)!=(l|0)){continue}break}}g=g&3;if(!g){break e}while(1){l=a<<2;L[l+h>>2]=L[i+l>>2];a=a+1|0;j=j+1|0;if((g|0)!=(j|0)){continue}break}break e}if(i){break e}L[f+32>>2]=h;L[f+28>>2]=e;J[f+36|0]=1;break c}if(i?M[f+36|0]:0){L[8514]=L[8514]+1;ha[L[6799]](i)}L[f+32>>2]=h;J[f+36|0]=1;L[f+28>>2]=e}pa((d<<2)+h|0,0,e-d<<2);a=L[f+40>>2]}L[f+24>>2]=e;if((a|0)>0){e=L[f+32>>2];a=0;d=L[c+52>>2];while(1){g=a<<2;L[g+e>>2]=L[d+g>>2];a=a+1|0;if((a|0)>2]){continue}break}}$j(c+4|0)}a=L[c+52>>2];if(!(a?!a|!M[c+56|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[c+52>>2]=0;J[c+56|0]=1;L[c+44>>2]=0;L[c+48>>2]=0;a=L[c+24>>2];if(!(a?!a|!M[c+28|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}a=L[c+92>>2];if(!(a?!a|!M[c+96|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[c+92>>2]=0;J[c+96|0]=1;L[c+84>>2]=0;L[c+88>>2]=0;a=L[c+72>>2];if(!(a?!a|!M[c+76|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}fa=c+1120|0;fa=m+16|0;return(p|0)!=1|0}function dG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=S(d);var e=0,f=0,g=0,h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=0,o=S(0),p=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=0;e=fa-192|0;fa=e;a:{if(P[L[a+4>>2]+752>>2]>2];k=S(S(P[b+8>>2]*d)+o);r=P[c+4>>2];m=S(S(P[b+4>>2]*d)+r);s=P[c>>2];l=S(S(P[b>>2]*d)+s);g=L[L[a+8>>2]+8>>2];n=L[a+4>>2];f=L[n+740>>2];p=(g|0)==(f|0);b:{if(!p){f=L[L[a+12>>2]+8>>2];h=S(k-P[f+60>>2]);i=S(l-P[f+52>>2]);j=S(m-P[f+56>>2]);t=S(S(P[f+44>>2]*h)+S(S(P[f+12>>2]*i)+S(j*P[f+28>>2])));u=S(S(P[f+40>>2]*h)+S(S(P[f+8>>2]*i)+S(j*P[f+24>>2])));h=S(S(P[f+36>>2]*h)+S(S(P[f+4>>2]*i)+S(j*P[f+20>>2])));break b}h=S(k-P[f+60>>2]);i=S(l-P[f+52>>2]);j=S(m-P[f+56>>2]);t=S(S(P[f+44>>2]*h)+S(S(P[f+12>>2]*i)+S(j*P[f+28>>2])));u=S(S(P[f+40>>2]*h)+S(S(P[f+8>>2]*i)+S(j*P[f+24>>2])));g=L[L[a+12>>2]+8>>2];h=S(S(P[f+36>>2]*h)+S(S(P[f+4>>2]*i)+S(j*P[f+20>>2])))}v=P[g+20>>2];w=P[g+36>>2];x=P[g+40>>2];y=P[g+8>>2];z=P[g+24>>2];i=P[g+44>>2];j=P[g+60>>2];A=P[g+12>>2];B=P[g+52>>2];C=P[g+28>>2];D=P[g+56>>2];E=P[g+4>>2];L[e+36>>2]=0;q=i;i=S(o-j);j=S(s-B);o=S(r-D);P[e+32>>2]=S(q*i)+S(S(A*j)+S(C*o));P[e+28>>2]=S(x*i)+S(S(y*j)+S(o*z));L[e+20>>2]=0;P[e+16>>2]=t;P[e+12>>2]=u;P[e+8>>2]=h;P[e+24>>2]=S(w*i)+S(S(E*j)+S(o*v));g=L[b+12>>2];L[e+80>>2]=L[b+8>>2];L[e+84>>2]=g;g=L[b>>2];b=L[b+4>>2];L[e+136>>2]=0;L[e+140>>2]=0;L[e+144>>2]=0;L[e+148>>2]=0;L[e+152>>2]=0;L[e+156>>2]=0;P[e+60>>2]=m;P[e- -64>>2]=k;L[e+68>>2]=0;L[e+72>>2]=g;L[e+76>>2]=b;L[e+128>>2]=0;L[e+132>>2]=0;J[e+124|0]=0;L[e+120>>2]=0;L[e+100>>2]=0;L[e+92>>2]=0;L[e+96>>2]=0;P[e+88>>2]=d;P[e+56>>2]=l;b=L[c+12>>2];L[e+48>>2]=L[c+8>>2];L[e+52>>2]=b;b=L[c+4>>2];L[e+40>>2]=L[c>>2];L[e+44>>2]=b;f=L[n+748>>2];c:{if((f|0)<=0){b=-1;break c}d=P[e+16>>2];m=P[e+12>>2];l=P[e+8>>2];k=P[n+752>>2];k=S(k*k);c=0;b=-1;while(1){g=n+R(c,184)|0;h=S(P[g+12>>2]-d);i=S(h*h);h=S(P[g+4>>2]-l);q=S(h*h);h=S(P[g+8>>2]-m);h=S(i+S(q+S(h*h)));g=h>2]+8>>2];c=L[L[a+12>>2]+8>>2];d=S(P[b+224>>2]*P[c+224>>2]);d=d>2]=d>S(10)?S(10):d;P[e+100>>2]=P[b+228>>2]*P[c+228>>2];d=S(P[b+232>>2]*P[c+232>>2]);d=d>2]=d>S(10)?S(10):d;d=P[e+80>>2];d:{if(S(T(d))>S(.7071067690849304)){l=P[e+76>>2];k=S(S(l*l)+S(d*d));m=S(S(1)/S(_(k)));h=S(k*m);i=S(m*S(-d));j=P[e+72>>2];k=S(i*j);d=S(l*m);l=S(d*S(-j));j=S(0);break d}h=P[e+72>>2];l=P[e+76>>2];k=S(S(h*h)+S(l*l));m=S(S(1)/S(_(k)));k=S(k*m);j=S(m*S(-l));l=S(d*j);i=S(h*m);h=S(i*S(-d));d=S(0)}P[e+184>>2]=k;P[e+180>>2]=l;P[e+164>>2]=i;P[e+176>>2]=h;P[e+168>>2]=d;P[e+160>>2]=j;e:{if(!p){c=a+28|0;f=a+20|0;n=a+16|0;b=a+24|0;break e}c=a+24|0;f=a+16|0;n=a+20|0;b=a+28|0}f=L[f>>2];n=L[n>>2];c=L[c>>2];L[e+116>>2]=L[b>>2];L[e+112>>2]=c;L[e+108>>2]=n;L[e+104>>2]=f;b=L[a+4>>2];f:{if((g|0)>=0){b=b+R(g,184)|0;c=L[b+116>>2];f=L[b+124>>2];n=L[b+128>>2];d=P[b+132>>2];F=L[b+152>>2];qa(b+4|0,e+8|0,184);L[b+152>>2]=F;P[b+132>>2]=d;L[b+124>>2]=f;L[b+128>>2]=n;L[b+116>>2]=c;break f}g=Fl(b,e+8|0)}f=L[7547];if(!f){break a}c=L[a+8>>2];b=L[a+12>>2];if(!(M[L[c+8>>2]+204|0]&8|M[L[b+8>>2]+204|0]&8)){break a}ha[f|0]((L[a+4>>2]+R(g,184)|0)+4|0,p?c:b,L[e+104>>2],L[e+112>>2],p?b:c,L[e+108>>2],L[e+116>>2])|0}fa=e+192|0}function Je(a,b,c,d){var e=0,f=S(0),g=S(0),h=S(0),i=0,j=0,k=S(0),l=S(0),m=S(0),n=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=S(0),A=S(0),B=0,C=0,D=S(0),E=S(0),F=0;e=fa-656|0;fa=e;j=e+444|0;L[j+4>>2]=35;L[j+8>>2]=0;L[j>>2]=14328;L[j+44>>2]=1025758986;L[j+12>>2]=1065353216;L[j+16>>2]=1065353216;L[j>>2]=14044;L[j+20>>2]=1065353216;L[j+24>>2]=0;P[j+44>>2]=0;P[j+28>>2]=0;L[j+4>>2]=8;L[j>>2]=16192;L[e+392>>2]=0;L[e+396>>2]=0;L[e+404>>2]=0;L[e+408>>2]=0;L[e+400>>2]=1065353216;L[e+412>>2]=0;L[e+416>>2]=0;L[e+420>>2]=1065353216;L[e+424>>2]=0;L[e+384>>2]=0;L[e+388>>2]=0;L[e+380>>2]=1065353216;n=L[a+12>>2];L[e+436>>2]=L[a+8>>2];L[e+440>>2]=n;n=L[a+4>>2];L[e+428>>2]=L[a>>2];L[e+432>>2]=n;a=e+496|0;Dg(b,c,j,e+380|0,d,a,0);L[e+136>>2]=0;L[e+140>>2]=0;L[e+128>>2]=0;L[e+132>>2]=0;L[e+364>>2]=0;L[e+368>>2]=0;L[e+376>>2]=2;L[e+144>>2]=0;L[e+648>>2]=1065353216;L[e+652>>2]=0;L[e+640>>2]=1065353216;L[e+644>>2]=1065353216;o=S(34028234663852886e22);a:{b:{c:{switch(Cg(e,a,e+640|0)|0){case 0:i=L[e+372>>2];if(!L[i+32>>2]){o=S(0);break b}a=0;o=S(0);while(1){B=a<<2;i=B+i|0;k=P[i+16>>2];n=L[e+616>>2];F=e+640|0;C=L[e+620>>2];s=L[e+496>>2]+(C>>1)|0;i=L[i>>2];if(C&1){n=L[n+L[s>>2]>>2]}ha[n|0](F,s,i);n=L[e+620>>2];s=L[e+500>>2]+(n>>1)|0;g=S(k*P[e+648>>2]);h=S(k*P[e+644>>2]);f=S(k*P[e+640>>2]);i=L[L[e+372>>2]+B>>2];p=S(-P[i+8>>2]);l=S(-P[i+4>>2]);m=S(-P[i>>2]);i=L[e+616>>2];i=n&1?L[L[s>>2]+i>>2]:i;t=S(t+g);u=S(u+h);q=S(q+f);L[e+636>>2]=0;P[e+632>>2]=S(P[e+544>>2]*p)+S(S(P[e+536>>2]*m)+S(P[e+540>>2]*l));P[e+628>>2]=S(P[e+528>>2]*p)+S(S(P[e+520>>2]*m)+S(P[e+524>>2]*l));P[e+624>>2]=S(P[e+512>>2]*p)+S(S(P[e+504>>2]*m)+S(P[e+508>>2]*l));ha[i|0](e+640|0,s,e+624|0);g=P[e+648>>2];h=P[e+640>>2];f=P[e+644>>2];v=S(v+S(k*S(S(S(g*P[e+592>>2])+S(S(h*P[e+584>>2])+S(f*P[e+588>>2])))+P[e+608>>2])));w=S(w+S(k*S(S(S(g*P[e+576>>2])+S(S(h*P[e+568>>2])+S(f*P[e+572>>2])))+P[e+604>>2])));o=S(o+S(k*S(S(S(g*P[e+560>>2])+S(S(h*P[e+552>>2])+S(f*P[e+556>>2])))+P[e+600>>2])));a=a+1|0;i=L[e+372>>2];if(a>>>0>2]){continue}break};break b;case 1:break c;default:break a}}if(!Bg(b,c,j,e+380|0,e+128|0,d,1)){break a}f=S(P[d+12>>2]-P[d+28>>2]);m=S(P[d+4>>2]-P[d+20>>2]);g=S(P[d+8>>2]-P[d+24>>2]);h=S(_(S(S(f*f)+S(S(m*m)+S(g*g)))));if(h>=S(1.1920928955078125e-7)){L[d+48>>2]=0;k=f;f=S(S(1)/h);P[d+44>>2]=k*f;P[d+40>>2]=g*f;P[d+36>>2]=m*f}o=S(-h);break a}x=P[c+52>>2];y=P[c+24>>2];z=P[c+20>>2];A=P[c+56>>2];r=P[c+40>>2];k=P[c+36>>2];p=P[c+16>>2];l=P[c+32>>2];m=P[c+48>>2];g=P[c+8>>2];h=P[c>>2];f=P[c+4>>2];L[d+16>>2]=0;D=S(m+S(S(t*g)+S(S(q*h)+S(u*f))));P[d+4>>2]=D;E=S(A+S(S(t*r)+S(S(q*l)+S(u*k))));P[d+12>>2]=E;q=S(x+S(S(t*y)+S(S(q*p)+S(u*z))));P[d+8>>2]=q;x=P[c+52>>2];y=P[c+24>>2];z=P[c+20>>2];A=P[c+56>>2];r=P[c+40>>2];g=P[c+36>>2];k=P[c+48>>2];p=P[c+8>>2];l=P[c>>2];m=P[c+4>>2];h=P[c+16>>2];f=P[c+32>>2];L[d+32>>2]=0;g=S(A+S(S(v*r)+S(S(o*f)+S(w*g))));P[d+28>>2]=g;h=S(x+S(S(v*y)+S(S(o*h)+S(w*z))));P[d+24>>2]=h;f=S(k+S(S(v*p)+S(S(o*l)+S(w*m))));P[d+20>>2]=f;p=Dc(b);l=Dc(j);L[d+48>>2]=0;g=S(g-E);k=S(f-D);f=S(h-q);m=S(_(S(S(g*g)+S(S(k*k)+S(f*f)))));r=S(S(1)/m);g=S(g*r);P[d+44>>2]=g;h=S(f*r);P[d+40>>2]=h;f=S(k*r);P[d+36>>2]=f;l=S(p+l);P[d+4>>2]=S(l*f)+P[d+4>>2];P[d+8>>2]=S(l*h)+P[d+8>>2];P[d+12>>2]=S(l*g)+P[d+12>>2];o=S(m-l)}fa=e+656|0;return o}function nD(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;e=fa-32|0;fa=e;d=ha[L[L[a>>2]+28>>2]](a)|0;L[b>>2]=0;L[b+20>>2]=d;if(d){q=ha[L[L[c>>2]+16>>2]](c,32,d)|0;l=L[q+8>>2];L[b>>2]=ha[L[L[c>>2]+28>>2]](c,l);r=ha[L[L[a>>2]+28>>2]](a)|0;if((r|0)>0){while(1){ha[L[L[a>>2]+16>>2]](a,e+28|0,e+4|0,e+16|0,e+8|0,e+24|0,e+20|0,e,e+12|0,p);d=L[e>>2];L[l+24>>2]=d;f=L[e+4>>2];L[l>>2]=0;L[l+4>>2]=0;L[l+28>>2]=f;L[l+8>>2]=0;L[l+12>>2]=0;L[l+16>>2]=0;L[l+20>>2]=0;a:{b:{switch(L[e+12>>2]-2|0){case 0:if(!d){break a}f=ha[L[L[c>>2]+16>>2]](c,4,R(d,3))|0;k=L[f+8>>2];L[l+8>>2]=ha[L[L[c>>2]+28>>2]](c,k);if(L[e>>2]>0){d=0;m=L[e+24>>2];while(1){i=k+R(d,12)|0;j=m+R(L[e+20>>2],d)|0;L[i>>2]=L[j>>2];L[i+4>>2]=L[j+4>>2];L[i+8>>2]=L[j+8>>2];d=d+1|0;if((d|0)>2]){continue}break}}ha[L[L[c>>2]+20>>2]](c,f,3271,1497453121,L[f+8>>2]);break a;case 1:if(!d){break a}n=ha[L[L[c>>2]+16>>2]](c,8,d)|0;i=L[n+8>>2];L[l+12>>2]=ha[L[L[c>>2]+28>>2]](c,i);j=L[e>>2];c:{if((j|0)<=0){break c}d=0;k=L[e+20>>2];m=L[e+24>>2];if((j|0)!=1){o=j&-2;f=0;while(1){h=i+(d<<3)|0;g=m+R(d,k)|0;K[h>>1]=N[g>>1];K[h+2>>1]=N[g+2>>1];K[h+4>>1]=N[g+4>>1];g=d|1;h=i+(g<<3)|0;g=m+R(g,k)|0;K[h>>1]=N[g>>1];K[h+2>>1]=N[g+2>>1];K[h+4>>1]=N[g+4>>1];d=d+2|0;f=f+2|0;if((o|0)!=(f|0)){continue}break}}if(!(j&1)){break c}f=i+(d<<3)|0;d=m+R(d,k)|0;K[f>>1]=N[d>>1];K[f+2>>1]=N[d+2>>1];K[f+4>>1]=N[d+4>>1]}ha[L[L[c>>2]+20>>2]](c,n,3432,1497453121,L[n+8>>2]);break a;case 3:break b;default:break a}}if(!d){break a}f=ha[L[L[c>>2]+16>>2]](c,4,d)|0;k=L[f+8>>2];L[l+16>>2]=ha[L[L[c>>2]+28>>2]](c,k);d=0;if(L[e>>2]>0){while(1){i=k+(d<<2)|0;j=L[e+24>>2]+R(L[e+20>>2],d)|0;J[i|0]=M[j|0];J[i+1|0]=M[j+1|0];J[i+2|0]=M[j+2|0];d=d+1|0;if((d|0)>2]){continue}break}}ha[L[L[c>>2]+20>>2]](c,f,3459,1497453121,L[f+8>>2])}d:{e:{switch(L[e+16>>2]){case 0:d=L[e+4>>2];if(!d){break d}n=ha[L[L[c>>2]+16>>2]](c,16,d)|0;i=L[n+8>>2];L[l>>2]=ha[L[L[c>>2]+28>>2]](c,i);j=L[e+4>>2];f:{if((j|0)<=0){break f}d=0;k=L[e+8>>2];m=L[e+28>>2];if((j|0)!=1){o=j&-2;f=0;while(1){h=i+(d<<4)|0;g=m+R(d,k)|0;P[h>>2]=P[g>>2];P[h+4>>2]=P[g+4>>2];P[h+8>>2]=P[g+8>>2];g=d|1;h=i+(g<<4)|0;g=m+R(g,k)|0;P[h>>2]=P[g>>2];P[h+4>>2]=P[g+4>>2];P[h+8>>2]=P[g+8>>2];d=d+2|0;f=f+2|0;if((o|0)!=(f|0)){continue}break}}if(!(j&1)){break f}f=i+(d<<4)|0;d=m+R(d,k)|0;P[f>>2]=P[d>>2];P[f+4>>2]=P[d+4>>2];P[f+8>>2]=P[d+8>>2]}ha[L[L[c>>2]+20>>2]](c,n,3686,1497453121,L[n+8>>2]);break d;case 1:break e;default:break d}}d=L[e+4>>2];if(!d){break d}n=ha[L[L[c>>2]+16>>2]](c,32,d)|0;i=L[n+8>>2];L[l+4>>2]=ha[L[L[c>>2]+28>>2]](c,i);j=L[e+4>>2];g:{if((j|0)<=0){break g}d=0;k=L[e+8>>2];m=L[e+28>>2];if((j|0)!=1){o=j&-2;f=0;while(1){h=i+(d<<5)|0;g=m+R(d,k)|0;Q[h>>3]=Q[g>>3];Q[h+8>>3]=Q[g+8>>3];Q[h+16>>3]=Q[g+16>>3];g=d|1;h=i+(g<<5)|0;g=m+R(g,k)|0;Q[h>>3]=Q[g>>3];Q[h+8>>3]=Q[g+8>>3];Q[h+16>>3]=Q[g+16>>3];d=d+2|0;f=f+2|0;if((o|0)!=(f|0)){continue}break}}if(!(j&1)){break g}f=i+(d<<5)|0;d=m+R(d,k)|0;Q[f>>3]=Q[d>>3];Q[f+8>>3]=Q[d+8>>3];Q[f+16>>3]=Q[d+16>>3]}ha[L[L[c>>2]+20>>2]](c,n,4058,1497453121,L[n+8>>2])}ha[L[L[a>>2]+24>>2]](a,p);l=l+32|0;p=p+1|0;if((r|0)!=(p|0)){continue}break}}ha[L[L[c>>2]+20>>2]](c,q,3286,1497453121,L[q+8>>2])}P[b+4>>2]=P[a+4>>2];P[b+8>>2]=P[a+8>>2];P[b+12>>2]=P[a+12>>2];P[b+16>>2]=P[a+16>>2];fa=e+32|0;return 4141}function Po(a,b,c,d,e,f){a=a|0;b=S(b);c=S(c);d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=fa-736|0;fa=g;L[g+732>>2]=a;P[g+728>>2]=b;P[g+724>>2]=c;L[g+720>>2]=d;L[g+716>>2]=e;L[g+712>>2]=f;a=L[g+732>>2];L[g+708>>2]=30;d=fa-16|0;L[d+12>>2]=L[g+716>>2];d=L[d+12>>2]+48|0;e=L[d+12>>2];L[g+696>>2]=L[d+8>>2];L[g+700>>2]=e;e=L[d+4>>2];L[g+688>>2]=L[d>>2];L[g+692>>2]=e;P[g+668>>2]=0;P[g+664>>2]=0;P[g+660>>2]=0;d=g+672|0;la(d,g+668|0,g+664|0,g+660|0);P[g+656>>2]=P[g+724>>2]*S(.5);b=P[g+656>>2];e=fa-16|0;L[e+12>>2]=d;P[L[e+12>>2]+(L[g+720>>2]<<2)>>2]=b;P[g+636>>2]=0;P[g+632>>2]=0;P[g+628>>2]=0;d=g+640|0;la(d,g+636|0,g+632|0,g+628|0);b=P[g+728>>2];e=fa-16|0;L[e+12>>2]=d;P[L[e+12>>2]+((L[g+720>>2]+1|0)%3<<2)>>2]=b;P[g+608>>2]=0;P[g+604>>2]=0;P[g+600>>2]=0;d=g+612|0;la(d,g+608|0,g+604|0,g+600|0);b=P[g+728>>2];e=fa-16|0;L[e+12>>2]=d;P[L[e+12>>2]+((L[g+720>>2]+2|0)%3<<2)>>2]=b;P[g+580>>2]=0;P[g+576>>2]=0;P[g+572>>2]=0;d=g+584|0;la(d,g+580|0,g+576|0,g+572|0);b=S(-P[g+656>>2]);e=fa-16|0;L[e+12>>2]=d;P[L[e+12>>2]+(L[g+720>>2]<<2)>>2]=b;L[g+568>>2]=0;while(1){if(L[g+568>>2]<360){b=S(Qa(S(S(L[g+568>>2])*S(.01745329238474369)))*P[g+728>>2]);e=fa-16|0;d=g+584|0;L[e+12>>2]=d;P[L[e+12>>2]+((L[g+720>>2]+1|0)%3<<2)>>2]=b;b=S(Ra(S(S(L[g+568>>2])*S(.01745329238474369)))*P[g+728>>2]);e=fa-16|0;L[e+12>>2]=d;P[L[e+12>>2]+((L[g+720>>2]+2|0)%3<<2)>>2]=b;e=fa-16|0;L[e+12>>2]=L[g+716>>2];f=g+536|0;ua(f,L[e+12>>2],g+672|0);e=g+552|0;h=g+688|0;ta(e,h,f);f=fa-16|0;L[f+12>>2]=L[g+716>>2];i=g+504|0;ua(i,L[f+12>>2],d);d=g+520|0;ta(d,h,i);ha[L[L[a>>2]+8>>2]](a,e,d,L[g+712>>2]);L[g+568>>2]=L[g+708>>2]+L[g+568>>2];continue}break}d=fa-16|0;L[d+12>>2]=L[g+716>>2];f=g+472|0;e=L[d+12>>2];d=g+672|0;ua(f,e,d);h=g+488|0;e=g+688|0;ta(h,e,f);f=fa-16|0;L[f+12>>2]=L[g+716>>2];f=L[f+12>>2];i=g+408|0;Zb(i,d);k=g+424|0;j=i;i=g+640|0;ta(k,j,i);j=g+440|0;ua(j,f,k);f=g+456|0;ta(f,e,j);ha[L[L[a>>2]+8>>2]](a,h,f,L[g+712>>2]);f=fa-16|0;L[f+12>>2]=L[g+716>>2];h=g+376|0;ua(h,L[f+12>>2],d);f=g+392|0;ta(f,e,h);h=fa-16|0;L[h+12>>2]=L[g+716>>2];h=L[h+12>>2];k=g+312|0;Zb(k,d);j=g+328|0;La(j,k,i);i=g+344|0;ua(i,h,j);h=g+360|0;ta(h,e,i);ha[L[L[a>>2]+8>>2]](a,f,h,L[g+712>>2]);f=fa-16|0;L[f+12>>2]=L[g+716>>2];h=g+280|0;ua(h,L[f+12>>2],d);f=g+296|0;ta(f,e,h);h=fa-16|0;L[h+12>>2]=L[g+716>>2];h=L[h+12>>2];i=g+216|0;Zb(i,d);k=g+232|0;j=i;i=g+612|0;ta(k,j,i);j=g+248|0;ua(j,h,k);h=g+264|0;ta(h,e,j);ha[L[L[a>>2]+8>>2]](a,f,h,L[g+712>>2]);f=fa-16|0;L[f+12>>2]=L[g+716>>2];h=g+184|0;ua(h,L[f+12>>2],d);f=g+200|0;ta(f,e,h);h=fa-16|0;L[h+12>>2]=L[g+716>>2];h=L[h+12>>2];k=g+120|0;Zb(k,d);j=g+136|0;La(j,k,i);i=g+152|0;ua(i,h,j);h=g+168|0;ta(h,e,i);ha[L[L[a>>2]+8>>2]](a,f,h,L[g+712>>2]);P[g+100>>2]=0;P[g+96>>2]=0;P[g+92>>2]=0;f=g+104|0;la(f,g+100|0,g+96|0,g+92|0);h=fa-16|0;L[h+12>>2]=f;P[L[h+12>>2]+(L[g+720>>2]<<2)>>2]=1;P[g+72>>2]=0;P[g+68>>2]=0;P[g+64>>2]=0;h=g+76|0;la(h,g+72|0,g+68|0,g- -64|0);i=fa-16|0;L[i+12>>2]=h;P[L[i+12>>2]+((L[g+720>>2]+1|0)%3<<2)>>2]=1;i=fa-16|0;L[i+12>>2]=L[g+716>>2];k=g+32|0;ua(k,L[i+12>>2],d);d=g+48|0;La(d,e,k);e=fa-16|0;L[e+12>>2]=L[g+716>>2];i=g+16|0;ua(i,L[e+12>>2],f);e=fa-16|0;L[e+12>>2]=L[g+716>>2];ua(g,L[e+12>>2],h);b=P[g+728>>2];ha[L[L[a>>2]+60>>2]](a,d,i,g,b,b,S(0),S(6.2831854820251465),L[g+712>>2],0,S(10));fa=g+736|0} function Sz(a,b,c){a=a|0;b=S(b);c=S(c);var d=0,e=0,f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=0,m=0,n=0,o=S(0),p=S(0),q=0,r=S(0),s=S(0),t=S(0),u=0;d=fa-80|0;fa=d;l=a+4|0;n=a+16|0;a:{b:{e=L[a+8>>2];if(!e){e=L[l>>2];if(e){break b}b=S(0);break a}b=P[e+332>>2];h=P[a+172>>2];f=P[a+168>>2];g=P[e+336>>2];i=S(S(b*h)-S(f*g));j=P[e+328>>2];k=P[a+164>>2];f=S(S(j*f)-S(k*b));g=S(S(g*k)-S(h*j));h=P[e+316>>2];j=P[e+312>>2];b=P[e+320>>2];break a}b=P[e+336>>2];h=P[a+172>>2];f=P[a+168>>2];g=P[e+340>>2];i=S(S(b*h)-S(f*g));j=P[e+332>>2];k=P[a+164>>2];f=S(S(j*f)-S(k*b));g=S(S(g*k)-S(h*j));h=P[e+320>>2];j=P[e+316>>2];b=P[e+324>>2]}r=S(b+f);s=S(h+g);t=S(j+i);c:{d:{e=L[a+20>>2];if(!e){e=L[n>>2];if(e){break d}h=S(0);j=S(0);i=S(0);g=S(0);f=S(0);b=S(0);break c}b=P[e+332>>2];h=P[a+188>>2];f=P[a+184>>2];g=P[e+336>>2];i=S(S(b*h)-S(f*g));j=P[e+328>>2];k=P[a+180>>2];f=S(S(j*f)-S(k*b));g=S(S(g*k)-S(h*j));h=P[e+316>>2];j=P[e+312>>2];b=P[e+320>>2];break c}b=P[e+336>>2];h=P[a+188>>2];f=P[a+184>>2];g=P[e+340>>2];i=S(S(b*h)-S(f*g));j=P[e+332>>2];k=P[a+180>>2];f=S(S(j*f)-S(k*b));g=S(S(g*k)-S(h*j));h=P[e+320>>2];j=P[e+316>>2];b=P[e+324>>2]}k=P[a+200>>2];o=P[a+204>>2];p=P[a+196>>2];e=d- -64|0;L[e>>2]=0;L[e+4>>2]=0;L[d+56>>2]=0;L[d+60>>2]=0;J[d+72|0]=1;e=L[a+84>>2];L[d+48>>2]=L[a+80>>2];L[d+52>>2]=e;e=L[a+76>>2];L[d+40>>2]=L[a+72>>2];L[d+44>>2]=e;b=S(r-S(b+f));j=S(t-S(j+i));h=S(s-S(h+g));i=S(S(o*b)+S(S(p*j)+S(k*h)));e:{if(!(i>2];h=P[d+44>>2];i=P[d+40>>2];break e}f=S(o*i);g=f;b=S(b-f);f=P[a+212>>2];b=S(S(g+S(b*f))+P[d+48>>2]);g=S(k*i);h=S(S(g+S(S(h-g)*f))+P[d+44>>2]);i=S(p*i);i=S(P[d+40>>2]+S(i+S(S(j-i)*f)))}e=a+164|0;q=a+180|0;j=P[a+112>>2];k=P[a+108>>2];g=P[a+128>>2];o=P[a+120>>2];p=P[a+124>>2];f=P[a+144>>2];r=P[a+136>>2];s=P[a+140>>2];t=P[a+104>>2];L[d+52>>2]=0;f=S(S(S(f*b)+S(S(r*i)+S(h*s)))*c);P[d+48>>2]=f;g=S(S(S(g*b)+S(S(o*i)+S(h*p)))*c);P[d+44>>2]=g;b=S(S(S(j*b)+S(S(t*i)+S(k*h)))*c);P[d+40>>2]=b;m=L[a+16>>2];a=L[a+4>>2];f:{if((m|0)==(a|0)){if(b!=b|g!=g|(f!=f|P[a+368>>2]>S(_(S(S(f*f)+S(S(b*b)+S(g*g))))))){break f}c=P[a+372>>2];a=L[d+72>>2];L[d+32>>2]=a;L[d+28>>2]=0;L[d+12>>2]=0;i=S(c*S(-0));P[d+24>>2]=i;P[d+20>>2]=i;P[d+16>>2]=i;P[d+8>>2]=c*S(-f);P[d+4>>2]=c*S(-g);P[d>>2]=c*S(-b);if(a&1){qe(l,d,e);a=M[d+32|0]}if(a&2){zc(l,d+16|0,e)}b=P[L[l>>2]+372>>2];a=L[d+52>>2];L[d+8>>2]=L[d+48>>2];L[d+12>>2]=a;a=L[d+60>>2];l=d+16|0;L[l>>2]=L[d+56>>2];L[l+4>>2]=a;L[d+32>>2]=L[d+72>>2];a=d- -64|0;e=L[a+4>>2];L[d+24>>2]=L[a>>2];L[d+28>>2]=e;P[d+8>>2]=b*P[d+8>>2];P[l>>2]=b*P[l>>2];a=L[d+44>>2];L[d>>2]=L[d+40>>2];L[d+4>>2]=a;P[d>>2]=b*P[d>>2];P[d+4>>2]=b*P[d+4>>2];P[d+20>>2]=b*P[d+20>>2];P[d+24>>2]=b*P[d+24>>2];a=M[d+32|0];if(a&1){qe(n,d,q);a=M[d+32|0]}if(!(a&2)){break f}zc(n,l,q);break f}a=L[d+52>>2];L[d+8>>2]=L[d+48>>2];L[d+12>>2]=a;a=L[d+60>>2];m=d+16|0;L[m>>2]=L[d+56>>2];L[m+4>>2]=a;a=d- -64|0;u=L[a+4>>2];L[d+24>>2]=L[a>>2];L[d+28>>2]=u;L[d+32>>2]=L[d+72>>2];P[d+8>>2]=-P[d+8>>2];P[m>>2]=-P[m>>2];a=L[d+44>>2];L[d>>2]=L[d+40>>2];L[d+4>>2]=a;P[d>>2]=-P[d>>2];P[d+4>>2]=-P[d+4>>2];L[d+12>>2]=0;b=P[d+20>>2];c=P[d+24>>2];L[d+28>>2]=0;P[d+24>>2]=-c;P[d+20>>2]=-b;a=M[d+32|0];if(a&1){qe(l,d,e);a=M[d+32|0]}if(a&2){zc(l,m,e)}qe(n,d+40|0,q);if(!(M[d+72|0]&2)){break f}zc(n,d+56|0,q)}fa=d+80|0}function bx(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=S(0),l=0,m=0,n=0,o=0,p=0;j=fa-16|0;fa=j;L[j+12>>2]=a;L[j+8>>2]=b;L[j+4>>2]=c;c=oa(128);o=L[j+12>>2];p=L[j+8>>2];h=L[j+4>>2];b=0;L[c+4>>2]=35;L[c+8>>2]=0;L[c>>2]=14328;L[c+44>>2]=1025758986;L[c+12>>2]=1065353216;L[c+16>>2]=1065353216;J[c+84|0]=0;L[c+68>>2]=-1082130432;L[c+72>>2]=-1082130432;L[c+52>>2]=1065353216;L[c+56>>2]=1065353216;L[c>>2]=14144;L[c+20>>2]=1065353216;L[c+24>>2]=0;L[c+76>>2]=-1082130432;L[c+80>>2]=0;L[c+60>>2]=1065353216;L[c+64>>2]=0;L[c>>2]=15324;L[c+4>>2]=9;J[c+104|0]=1;L[c+100>>2]=0;J[c+124|0]=1;L[c+92>>2]=0;L[c+96>>2]=0;L[c+120>>2]=0;L[c+112>>2]=0;L[c+116>>2]=0;if((h|0)>0){L[8513]=L[8513]+1;a=ha[L[6798]](h<<4,16)|0;d=L[c+92>>2];a:{if((d|0)<=0){break a}if((d|0)!=1){l=d&-2;while(1){e=b<<4;i=e+a|0;f=e+L[c+100>>2]|0;m=L[f+4>>2];L[i>>2]=L[f>>2];L[i+4>>2]=m;m=L[f+12>>2];L[i+8>>2]=L[f+8>>2];L[i+12>>2]=m;f=e|16;e=f+a|0;f=f+L[c+100>>2]|0;i=L[f+4>>2];L[e>>2]=L[f>>2];L[e+4>>2]=i;i=L[f+12>>2];L[e+8>>2]=L[f+8>>2];L[e+12>>2]=i;b=b+2|0;g=g+2|0;if((l|0)!=(g|0)){continue}break}}if(!(d&1)){break a}b=b<<4;d=b+a|0;b=b+L[c+100>>2]|0;g=L[b+4>>2];L[d>>2]=L[b>>2];L[d+4>>2]=g;g=L[b+12>>2];L[d+8>>2]=L[b+8>>2];L[d+12>>2]=g}b=L[c+100>>2];if(!(b?!b|!M[c+104|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[c+100>>2]=a;J[c+104|0]=1;L[c+96>>2]=h;d=L[c+112>>2]}L[c+92>>2]=h;if((d|0)<(h|0)){b:{if((h|0)<=L[c+116>>2]){g=L[c+120>>2];break b}c:{if(!h){g=0;a=d;break c}L[8513]=L[8513]+1;g=ha[L[6798]](h<<2,16)|0;a=L[c+112>>2]}f=L[c+120>>2];d:{e:{if((a|0)>0){i=0;b=0;if(a>>>0>=4){m=a&-4;l=0;while(1){e=b<<2;P[e+g>>2]=P[e+f>>2];n=e|4;P[n+g>>2]=P[f+n>>2];n=e|8;P[n+g>>2]=P[f+n>>2];e=e|12;P[e+g>>2]=P[e+f>>2];b=b+4|0;l=l+4|0;if((m|0)!=(l|0)){continue}break}}a=a&3;if(!a){break e}while(1){e=b<<2;P[e+g>>2]=P[e+f>>2];b=b+1|0;i=i+1|0;if((a|0)!=(i|0)){continue}break}break e}if(f){break e}break d}if(f?M[c+124|0]:0){L[8514]=L[8514]+1;ha[L[6799]](f)}}L[c+120>>2]=g;J[c+124|0]=1;L[c+116>>2]=h}pa((d<<2)+g|0,0,h-d<<2)}L[c+112>>2]=h;f:{if((h|0)<=0){break f}b=0;if((h|0)!=1){f=h&-2;g=0;while(1){a=b<<4;d=a+L[c+100>>2]|0;a=a+o|0;e=L[a+4>>2];L[d>>2]=L[a>>2];L[d+4>>2]=e;e=L[a+12>>2];L[d+8>>2]=L[a+8>>2];L[d+12>>2]=e;a=b<<2;P[a+L[c+120>>2]>>2]=P[a+p>>2];e=b|1;a=e<<4;d=a+L[c+100>>2]|0;a=a+o|0;i=L[a+4>>2];L[d>>2]=L[a>>2];L[d+4>>2]=i;i=L[a+12>>2];L[d+8>>2]=L[a+8>>2];L[d+12>>2]=i;a=e<<2;P[a+L[c+120>>2]>>2]=P[a+p>>2];b=b+2|0;g=g+2|0;if((f|0)!=(g|0)){continue}break}}if(!(h&1)){break f}a=b<<4;d=a+L[c+100>>2]|0;a=a+o|0;h=L[a+4>>2];L[d>>2]=L[a>>2];L[d+4>>2]=h;h=L[a+12>>2];L[d+8>>2]=L[a+8>>2];L[d+12>>2]=h;a=b<<2;P[a+L[c+120>>2]>>2]=P[a+p>>2]}a=fa-96|0;fa=a;J[c+84|0]=1;if(!M[30304]){L[7553]=0;L[7554]=0;L[7552]=1065353216;L[7555]=0;L[7556]=0;L[7558]=0;L[7559]=0;L[7557]=1065353216;L[7560]=0;L[7561]=0;L[7565]=0;L[7566]=0;L[7564]=-1082130432;L[7562]=1065353216;L[7563]=0;L[7567]=0;L[7568]=0;L[7570]=0;L[7571]=0;L[7569]=-1082130432;L[7572]=0;L[7573]=0;L[7574]=-1082130432;L[7575]=0;J[30304]=1}a=pa(a,0,96);ha[L[L[c>>2]+76>>2]](c,30208,a,6);k=P[c+44>>2];P[c+68>>2]=P[a>>2]+k;P[c+52>>2]=P[a+48>>2]-k;P[c+72>>2]=k+P[a+20>>2];P[c+56>>2]=P[a+68>>2]-k;P[c+76>>2]=k+P[a+40>>2];P[c+60>>2]=P[a+88>>2]-k;fa=a+96|0;fa=j+16|0;return c|0}function hr(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=S(e);f=S(f);g=g|0;h=h|0;var i=0,j=0,k=0,l=S(0),m=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=S(0),w=S(0),x=S(0),y=S(0),z=S(0);j=fa-32|0;fa=j;L[j+28>>2]=a;L[j+24>>2]=b;L[j+20>>2]=c;L[j+16>>2]=d;P[j+12>>2]=e;P[j+8>>2]=f;L[j+4>>2]=g;J[j+3|0]=h;k=L[j+28>>2];c=L[j+24>>2];b=L[j+20>>2];a=L[j+16>>2];n=P[j+12>>2];o=P[j+8>>2];h=J[j+3|0]&1;i=fa-288|0;fa=i;m=L[j+4>>2];l=P[m+16>>2];f=P[m+20>>2];e=P[m+12>>2];g=L[m+4>>2];d=L[m>>2];P[i+228>>2]=P[m+8>>2];L[i+220>>2]=d;L[i+224>>2]=g;P[i+216>>2]=o;P[i+212>>2]=e;P[i+208>>2]=n;d=L[c+12>>2];L[i+168>>2]=L[c+8>>2];L[i+172>>2]=d;d=L[c+4>>2];L[i+160>>2]=L[c>>2];L[i+164>>2]=d;c=L[b+12>>2];L[i+184>>2]=L[b+8>>2];L[i+188>>2]=c;c=L[b+4>>2];L[i+176>>2]=L[b>>2];L[i+180>>2]=c;b=L[a+12>>2];L[i+200>>2]=L[a+8>>2];L[i+204>>2]=b;b=L[a+4>>2];L[i+192>>2]=L[a>>2];L[i+196>>2]=b;J[i+264|0]=h;P[i+252>>2]=f;L[i+248>>2]=1036831949;L[i+240>>2]=0;L[i+244>>2]=0;P[i+232>>2]=l;L[i+256>>2]=0;L[i+260>>2]=0;L[i+236>>2]=0;b=i+4|0;m=0;g=L[k+136>>2];a:{if((g|0)!=L[k+140>>2]){break a}h=g?g<<1:1;if((h|0)<=(g|0)){break a}if(h){L[8513]=L[8513]+1;m=ha[L[6798]](R(h,284),16)|0;g=L[k+136>>2]}if((g|0)>0){while(1){c=R(p,284);a=c+L[k+144>>2]|0;d=qa(c+m|0,a,92);c=L[a+104>>2];L[d+100>>2]=L[a+100>>2];L[d+104>>2]=c;c=L[a+96>>2];L[d+92>>2]=L[a+92>>2];L[d+96>>2]=c;c=L[a+120>>2];L[d+116>>2]=L[a+116>>2];L[d+120>>2]=c;c=L[a+112>>2];L[d+108>>2]=L[a+108>>2];L[d+112>>2]=c;c=L[a+136>>2];L[d+132>>2]=L[a+132>>2];L[d+136>>2]=c;c=L[a+128>>2];L[d+124>>2]=L[a+124>>2];L[d+128>>2]=c;c=L[a+144>>2];L[d+140>>2]=L[a+140>>2];L[d+144>>2]=c;c=L[a+152>>2];L[d+148>>2]=L[a+148>>2];L[d+152>>2]=c;qa(d+156|0,a+156|0,128);p=p+1|0;if((p|0)!=(g|0)){continue}break}}a=L[k+144>>2];if(!(a?!a|!M[k+148|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[k+144>>2]=m;J[k+148|0]=1;L[k+140>>2]=h;g=L[k+136>>2]}c=qa(L[k+144>>2]+R(g,284)|0,b,92);a=L[b+104>>2];L[c+100>>2]=L[b+100>>2];L[c+104>>2]=a;a=L[b+96>>2];L[c+92>>2]=L[b+92>>2];L[c+96>>2]=a;a=L[b+120>>2];L[c+116>>2]=L[b+116>>2];L[c+120>>2]=a;a=L[b+112>>2];L[c+108>>2]=L[b+108>>2];L[c+112>>2]=a;a=L[b+128>>2];L[c+124>>2]=L[b+124>>2];L[c+128>>2]=a;a=L[b+136>>2];L[c+132>>2]=L[b+132>>2];L[c+136>>2]=a;a=L[b+152>>2];L[c+148>>2]=L[b+148>>2];L[c+152>>2]=a;a=L[b+144>>2];L[c+140>>2]=L[b+140>>2];L[c+144>>2]=a;qa(c+156|0,b+156|0,128);L[k+136>>2]=L[k+136>>2]+1;b=(L[k+144>>2]+R(L[k+136>>2],284)|0)-284|0;J[b+84|0]=0;a=L[k+116>>2];l=P[a+52>>2];q=P[a+12>>2];r=P[a+8>>2];f=P[a+56>>2];s=P[a+28>>2];t=P[a+20>>2];u=P[a+24>>2];e=P[a+60>>2];v=P[a+44>>2];w=P[a+36>>2];x=P[a+40>>2];y=P[a+4>>2];L[b+48>>2]=0;z=e;n=P[b+164>>2];o=P[b+156>>2];e=P[b+160>>2];P[b+44>>2]=z+S(S(v*n)+S(S(w*o)+S(x*e)));P[b+40>>2]=f+S(S(n*s)+S(S(o*t)+S(u*e)));P[b+36>>2]=l+S(S(n*q)+S(S(o*y)+S(r*e)));L[b- -64>>2]=0;l=P[b+180>>2];f=P[b+172>>2];e=P[b+176>>2];P[b+60>>2]=S(v*l)+S(S(w*f)+S(x*e));P[b+56>>2]=S(s*l)+S(S(t*f)+S(u*e));P[b+52>>2]=S(q*l)+S(S(y*f)+S(r*e));l=P[b+196>>2];f=P[b+188>>2];e=P[b+192>>2];L[b+80>>2]=0;P[b+76>>2]=S(v*l)+S(S(w*f)+S(x*e));P[b+72>>2]=S(s*l)+S(S(t*f)+S(u*e));P[b+68>>2]=S(q*l)+S(S(y*f)+S(r*e));mg(k,L[k+136>>2]-1|0,0);fa=i+288|0;fa=j+32|0;return b|0}function Pn(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;f=L[a+108>>2];if(f){ha[L[L[f>>2]+12>>2]](f,L[b+60>>2],c)}k=N[b+12>>1];b=a;i=L[a+60>>2];a=L[a+92>>2];if(!(ha[L[L[a>>2]+56>>2]](a)|0)){a=L[b+92>>2];ha[L[L[a>>2]+16>>2]](a,i+(k<<6)|0,c)}g=N[b+56>>1];f=L[b+60>>2];K[f+54>>1]=N[f+54>>1]-2;K[f+56>>1]=N[f+56>>1]-2;K[f+58>>1]=N[f+58>>1]-2;c=L[b+68>>2];j=i+(k<<6)|0;h=N[j+54>>1]<<2;a=c+h|0;e=N[b+6>>1];K[a>>1]=e;d=N[a+6>>1];if(d){h=f+(N[(c+h|0)+2>>1]<<6)|0;while(1){l=e&65535;f=a+4|0;e=N[f>>1];if(l>>>0>=e>>>0){d=(L[b+60>>2]+(d<<6)|0)+(e&1?54:48)|0;K[d>>1]=N[d>>1]-1;K[h+54>>1]=N[h+54>>1]+1;d=N[a+4>>1]|N[a+6>>1]<<16;e=N[a>>1]|N[a+2>>1]<<16;K[a+4>>1]=e;K[a+6>>1]=e>>>16;K[a>>1]=d;K[a+2>>1]=d>>>16;d=a;a=f;d=N[d+10>>1];if(d){continue}}break}e=N[b+6>>1];a=L[b+68>>2]}else{a=c}h=N[j+48>>1];d=h<<2;K[d+c>>1]=e;f=a;a=d+a|0;d=N[a+6>>1];if(d){h=L[b+60>>2]+(N[(f+(h<<2)|0)+2>>1]<<6)|0;e=N[a>>1];while(1){j=e&65535;f=a+4|0;e=N[f>>1];if(j>>>0>=e>>>0){d=(L[b+60>>2]+(d<<6)|0)+(e&1?54:48)|0;K[d>>1]=N[d>>1]-1;K[h+48>>1]=N[h+48>>1]+1;d=N[a+4>>1]|N[a+6>>1]<<16;e=N[a>>1]|N[a+2>>1]<<16;K[a+4>>1]=e;K[a+6>>1]=e>>>16;K[a>>1]=d;K[a+2>>1]=d>>>16;d=a;a=f;d=N[d+10>>1];if(d){continue}}break}e=N[b+6>>1]}h=(g<<1)-1|0;a=c+(h<<2)|0;K[a>>1]=e;K[a+2>>1]=0;c=L[b+72>>2];j=i+(k<<6)|0;f=N[j+56>>1]<<2;a=c+f|0;K[a>>1]=e;d=N[a+6>>1];if(d){g=L[b+60>>2]+(N[(c+f|0)+2>>1]<<6)|0;while(1){l=e&65535;f=a+4|0;e=N[f>>1];if(l>>>0>=e>>>0){d=(L[b+60>>2]+(d<<6)|0)+(e&1?54:48)|0;K[d+2>>1]=N[d+2>>1]-1;K[g+56>>1]=N[g+56>>1]+1;d=N[a+4>>1]|N[a+6>>1]<<16;e=N[a>>1]|N[a+2>>1]<<16;K[a+4>>1]=e;K[a+6>>1]=e>>>16;K[a>>1]=d;K[a+2>>1]=d>>>16;d=a;a=f;d=N[d+10>>1];if(d){continue}}break}e=N[b+6>>1];a=L[b+72>>2]}else{a=c}g=N[j+50>>1];d=g<<2;K[d+c>>1]=e;f=a;a=d+a|0;d=N[a+6>>1];if(d){g=L[b+60>>2]+(N[(f+(g<<2)|0)+2>>1]<<6)|0;e=N[a>>1];while(1){j=e&65535;f=a+4|0;e=N[f>>1];if(j>>>0>=e>>>0){d=(L[b+60>>2]+(d<<6)|0)+(e&1?54:48)|0;K[d+2>>1]=N[d+2>>1]-1;K[g+50>>1]=N[g+50>>1]+1;d=N[a+4>>1]|N[a+6>>1]<<16;e=N[a>>1]|N[a+2>>1]<<16;K[a+4>>1]=e;K[a+6>>1]=e>>>16;K[a>>1]=d;K[a+2>>1]=d>>>16;d=a;a=f;d=N[d+10>>1];if(d){continue}}break}e=N[b+6>>1]}a=c+(h<<2)|0;K[a>>1]=e;K[a+2>>1]=0;c=L[b+76>>2];g=i+(k<<6)|0;f=N[g+58>>1]<<2;a=c+f|0;K[a>>1]=e;d=N[a+6>>1];if(d){i=L[b+60>>2]+(N[(c+f|0)+2>>1]<<6)|0;while(1){j=e&65535;f=a+4|0;e=N[f>>1];if(j>>>0>=e>>>0){d=(L[b+60>>2]+(d<<6)|0)+(e&1?54:48)|0;K[d+4>>1]=N[d+4>>1]-1;K[i+58>>1]=N[i+58>>1]+1;d=N[a+4>>1]|N[a+6>>1]<<16;e=N[a>>1]|N[a+2>>1]<<16;K[a+4>>1]=e;K[a+6>>1]=e>>>16;K[a>>1]=d;K[a+2>>1]=d>>>16;d=a;a=f;d=N[d+10>>1];if(d){continue}}break}e=N[b+6>>1];a=L[b+76>>2]}else{a=c}i=N[g+52>>1];d=i<<2;K[d+c>>1]=e;f=a;a=d+a|0;d=N[a+6>>1];if(d){i=L[b+60>>2]+(N[(f+(i<<2)|0)+2>>1]<<6)|0;e=N[a>>1];while(1){g=e&65535;f=a+4|0;e=N[f>>1];if(g>>>0>=e>>>0){d=(L[b+60>>2]+(d<<6)|0)+(e&1?54:48)|0;K[d+4>>1]=N[d+4>>1]-1;K[i+52>>1]=N[i+52>>1]+1;d=N[a+4>>1]|N[a+6>>1]<<16;e=N[a>>1]|N[a+2>>1]<<16;K[a+4>>1]=e;K[a+6>>1]=e>>>16;K[a>>1]=d;K[a+2>>1]=d>>>16;d=a;a=f;d=N[d+10>>1];if(d){continue}}break}e=N[b+6>>1]}a=c+(h<<2)|0;K[a>>1]=e;K[a+2>>1]=0;K[(L[b+60>>2]+(k<<6)|0)+48>>1]=N[b+64>>1];K[b+64>>1]=k;K[b+56>>1]=N[b+56>>1]-1}function Fz(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=S(0);d=fa-384|0;fa=d;g=L[b+36>>2];b=d+328|0;L[b+4>>2]=35;L[b+8>>2]=0;L[b>>2]=14328;L[b+44>>2]=1025758986;L[b+12>>2]=1065353216;L[b+16>>2]=1065353216;L[b>>2]=14044;L[b+20>>2]=1065353216;L[b+24>>2]=0;L[b+52>>2]=g;L[b>>2]=21628;L[b+44>>2]=0;c=L[a+28>>2];l=L[c+4>>2];a:{if(M[g+376|0]?M[L[c+8>>2]+204|0]&3:0){break a}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;c=L[7532];L[7514]=L[7531];L[7515]=c;c=L[7524];L[7506]=L[7523];L[7507]=c;c=L[7528];L[7510]=L[7527];L[7511]=c;L[7520]=0;L[7521]=0;c=L[7534];L[7516]=L[7533];L[7517]=c;c=L[7526];L[7508]=L[7525];L[7509]=c;c=L[7530];L[7512]=L[7529];L[7513]=c;c=L[a+28>>2]}c=L[c+12>>2];L[d+64>>2]=0;L[d+68>>2]=0;L[d+56>>2]=1065353216;L[d+60>>2]=0;if(!Gl(b,l,c,d+56|0,d+272|0)){break a}L[d+76>>2]=0;L[d+80>>2]=0;L[d+68>>2]=0;L[d+72>>2]=0;L[d+60>>2]=0;L[d+64>>2]=0;J[d+208|0]=0;L[d+48>>2]=0;L[d+52>>2]=0;L[d+44>>2]=g;L[d+56>>2]=21160;c=L[L[a+28>>2]+8>>2];L[d+40>>2]=c;L[d+32>>2]=0;b=L[c+236>>2];L[d+24>>2]=0;L[d+8>>2]=c;L[d+36>>2]=c&b<<30>>31;b=L[d+48>>2];L[d+16>>2]=L[d+44>>2];L[d+20>>2]=b;b=L[d+36>>2];L[d>>2]=L[d+32>>2];L[d+4>>2]=b;if(!nk(a,d+272|0,d+16|0,d,d+56|0)){break a}L[8513]=L[8513]+1;b=ha[L[6798]](216,16)|0;c=pa(b+4|0,0,212);L[b>>2]=21160;qa(c,d+60|0,100);c=L[d+172>>2];L[b+112>>2]=L[d+168>>2];L[b+116>>2]=c;c=L[d+164>>2];L[b+104>>2]=L[d+160>>2];L[b+108>>2]=c;c=L[d+188>>2];L[b+128>>2]=L[d+184>>2];L[b+132>>2]=c;c=L[d+180>>2];L[b+120>>2]=L[d+176>>2];L[b+124>>2]=c;c=L[d+196>>2];L[b+136>>2]=L[d+192>>2];L[b+140>>2]=c;c=L[d+204>>2];L[b+144>>2]=L[d+200>>2];L[b+148>>2]=c;J[b+152|0]=M[d+208|0];L[b+212>>2]=L[d+268>>2];c=L[d+264>>2];L[b+204>>2]=L[d+260>>2];L[b+208>>2]=c;c=L[d+256>>2];L[b+196>>2]=L[d+252>>2];L[b+200>>2]=c;c=L[d+248>>2];L[b+188>>2]=L[d+244>>2];L[b+192>>2]=c;c=L[d+240>>2];L[b+180>>2]=L[d+236>>2];L[b+184>>2]=c;c=L[d+232>>2];L[b+172>>2]=L[d+228>>2];L[b+176>>2]=c;c=L[d+224>>2];L[b+164>>2]=L[d+220>>2];L[b+168>>2]=c;c=L[d+216>>2];L[b+156>>2]=L[d+212>>2];L[b+160>>2]=c;e=L[a+24>>2];f=L[e+852>>2];b:{if((f|0)!=L[e+856>>2]){break b}g=f?f<<1:1;if((g|0)<=(f|0)){break b}if(g){L[8513]=L[8513]+1;h=ha[L[6798]](g<<2,16)|0;f=L[e+852>>2]}c:{if((f|0)<=0){break c}if(f>>>0>=4){l=f&-4;while(1){j=i<<2;L[j+h>>2]=L[j+L[e+860>>2]>>2];c=j|4;L[c+h>>2]=L[c+L[e+860>>2]>>2];c=j|8;L[c+h>>2]=L[c+L[e+860>>2]>>2];c=j|12;L[c+h>>2]=L[c+L[e+860>>2]>>2];i=i+4|0;k=k+4|0;if((l|0)!=(k|0)){continue}break}}k=f&3;if(!k){break c}while(1){c=i<<2;L[c+h>>2]=L[c+L[e+860>>2]>>2];i=i+1|0;m=m+1|0;if((k|0)!=(m|0)){continue}break}}c=L[e+860>>2];if(!(!c|!M[e+864|0])){if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}f=L[e+852>>2]}L[e+860>>2]=h;J[e+864|0]=1;L[e+856>>2]=g}L[L[e+860>>2]+(f<<2)>>2]=b;L[e+852>>2]=f+1;n=P[b+64>>2];c=L[a+24>>2];d:{if(M[L[L[a+28>>2]+8>>2]+204|0]&3){P[b+64>>2]=P[c+344>>2]*n;a=c+356|0;break d}P[b+64>>2]=P[c+340>>2]*n;a=c+352|0}P[b+68>>2]=P[a>>2]*P[b+68>>2]}fa=d+384|0}function Ab(a,b,c,d,e,f){var g=0,h=0,i=S(0),j=0,k=S(0),l=S(0),m=S(0),n=S(0),o=S(0),p=S(0),q=S(0),r=0,s=0,t=S(0),u=0;g=fa-400|0;fa=g;wa(2434);h=L[c+12>>2];L[g+344>>2]=L[c+8>>2];L[g+348>>2]=h;h=L[c+4>>2];L[g+336>>2]=L[c>>2];L[g+340>>2]=h;h=L[c+28>>2];L[g+360>>2]=L[c+24>>2];L[g+364>>2]=h;h=L[c+20>>2];L[g+352>>2]=L[c+16>>2];L[g+356>>2]=h;h=L[c+44>>2];L[g+376>>2]=L[c+40>>2];L[g+380>>2]=h;h=L[c+36>>2];L[g+368>>2]=L[c+32>>2];L[g+372>>2]=h;h=L[c+60>>2];L[g+392>>2]=L[c+56>>2];L[g+396>>2]=h;h=L[c+52>>2];L[g+384>>2]=L[c+48>>2];L[g+388>>2]=h;h=L[d+12>>2];L[g+280>>2]=L[d+8>>2];L[g+284>>2]=h;h=L[d+4>>2];L[g+272>>2]=L[d>>2];L[g+276>>2]=h;h=L[d+28>>2];L[g+296>>2]=L[d+24>>2];L[g+300>>2]=h;h=L[d+20>>2];L[g+288>>2]=L[d+16>>2];L[g+292>>2]=h;h=L[d+44>>2];L[g+312>>2]=L[d+40>>2];L[g+316>>2]=h;h=L[d+36>>2];L[g+304>>2]=L[d+32>>2];L[g+308>>2]=h;h=L[d+60>>2];L[g+328>>2]=L[d+56>>2];L[g+332>>2]=h;h=L[d+52>>2];L[g+320>>2]=L[d+48>>2];L[g+324>>2]=h;r=g+336|0;s=g+12|0;h=g+256|0;ec(r,g+272|0,s,h);L[g+236>>2]=0;i=P[g+256>>2];P[g+232>>2]=i*P[g+20>>2];P[g+228>>2]=i*P[g+16>>2];P[g+224>>2]=i*P[g+12>>2];L[g+216>>2]=0;L[g+220>>2]=0;L[g+208>>2]=0;L[g+212>>2]=0;L[g+68>>2]=0;L[g+72>>2]=0;L[g+60>>2]=0;L[g+64>>2]=0;Ma(r,h);L[g+56>>2]=0;L[g+40>>2]=0;k=P[g+268>>2];m=P[g+264>>2];i=P[g+256>>2];l=P[g+260>>2];o=S(S(2)/S(S(k*k)+S(S(m*m)+S(S(i*i)+S(l*l)))));q=S(m*o);n=S(l*q);p=S(i*o);t=S(k*p);P[g+48>>2]=n+t;P[g+36>>2]=n-t;n=S(i*p);p=l;l=S(l*o);o=S(p*l);P[g+52>>2]=S(1)-S(n+o);m=S(m*q);P[g+32>>2]=S(1)-S(n+m);L[g+24>>2]=0;n=S(i*q);p=S(k*l);P[g+44>>2]=n-p;i=S(i*l);k=S(k*q);P[g+28>>2]=i+k;P[g+20>>2]=n+p;P[g+16>>2]=i-k;P[g+12>>2]=S(1)-S(o+m);r=g+240|0;xm(b,s,g+208|0,g+224|0,h,r);L[g+12>>2]=8404;j=L[c+12>>2];L[g+56>>2]=L[c+8>>2];L[g+60>>2]=j;j=L[c+4>>2];L[g+48>>2]=L[c>>2];L[g+52>>2]=j;j=L[c+28>>2];L[g+72>>2]=L[c+24>>2];L[g+76>>2]=j;u=L[c+20>>2];j=g- -64|0;L[j>>2]=L[c+16>>2];L[j+4>>2]=u;j=L[c+44>>2];L[g+88>>2]=L[c+40>>2];L[g+92>>2]=j;j=L[c+36>>2];L[g+80>>2]=L[c+32>>2];L[g+84>>2]=j;j=L[c+60>>2];L[g+104>>2]=L[c+56>>2];L[g+108>>2]=j;j=L[c+52>>2];L[g+96>>2]=L[c+48>>2];L[g+100>>2]=j;c=L[d+12>>2];L[g+120>>2]=L[d+8>>2];L[g+124>>2]=c;c=L[d+4>>2];L[g+112>>2]=L[d>>2];L[g+116>>2]=c;c=L[d+28>>2];L[g+136>>2]=L[d+24>>2];L[g+140>>2]=c;c=L[d+20>>2];L[g+128>>2]=L[d+16>>2];L[g+132>>2]=c;c=L[d+36>>2];L[g+144>>2]=L[d+32>>2];L[g+148>>2]=c;c=L[d+44>>2];L[g+152>>2]=L[d+40>>2];L[g+156>>2]=c;c=L[d+60>>2];L[g+168>>2]=L[d+56>>2];L[g+172>>2]=c;c=L[d+52>>2];L[g+160>>2]=L[d+48>>2];L[g+164>>2]=c;L[g+196>>2]=e;P[g+200>>2]=f;L[g+204>>2]=b;L[g+192>>2]=a;f=S(P[g+168>>2]-P[g+104>>2]);i=S(P[g+160>>2]-P[g+96>>2]);k=S(P[g+164>>2]-P[g+100>>2]);l=S(S(1)/S(_(S(S(f*f)+S(S(i*i)+S(k*k))))));m=S(f*l);q=m==S(0)?S(0xde0b6b000000000):S(S(1)/m);P[g+24>>2]=q;o=S(k*l);n=o==S(0)?S(0xde0b6b000000000):S(S(1)/o);P[g+20>>2]=n;L[g+40>>2]=q>2]=n>2]=p+S(S(f*i)+S(k*o));f=f==S(0)?S(0xde0b6b000000000):S(S(1)/f);P[g+16>>2]=f;L[g+32>>2]=f>2];ha[L[L[a>>2]+24>>2]](a,g+384|0,g+320|0,s,h,r);va();fa=g+400|0}function RB(a){a=a|0;var b=S(0),c=S(0),d=0,e=0,f=S(0),g=S(0),h=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=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=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),U=S(0),V=S(0),W=S(0),X=S(0),Y=S(0),Z=0;k=fa-48|0;fa=k;if(M[a+527|0]){L[a+36>>2]=0;L[a+576>>2]=0;L[a+580>>2]=0;L[a+516>>2]=0;L[a+520>>2]=0;L[a+584>>2]=0;L[a+588>>2]=0;if(!M[a+524|0]){c=P[a+420>>2];d=L[a+32>>2];b=P[a+412>>2];g=P[a+416>>2];x=S(S(S(c*P[d+44>>2])+S(S(b*P[d+36>>2])+S(g*P[d+40>>2])))+P[d+60>>2]);i=P[a+356>>2];e=L[a+28>>2];f=P[a+348>>2];j=P[a+352>>2];y=S(S(S(i*P[e+44>>2])+S(S(f*P[e+36>>2])+S(j*P[e+40>>2])))+P[e+60>>2]);l=S(x-y);z=S(S(S(c*P[d+12>>2])+S(S(b*P[d+4>>2])+S(g*P[d+8>>2])))+P[d+52>>2]);A=S(S(S(i*P[e+12>>2])+S(S(f*P[e+4>>2])+S(j*P[e+8>>2])))+P[e+52>>2]);m=S(z-A);B=S(S(S(c*P[d+28>>2])+S(S(b*P[d+20>>2])+S(g*P[d+24>>2])))+P[d+56>>2]);C=S(S(S(i*P[e+28>>2])+S(S(f*P[e+20>>2])+S(j*P[e+24>>2])))+P[e+56>>2]);b=S(B-C);c=S(S(l*l)+S(S(m*m)+S(b*b)));a:{if(c>S(1.1920928955078125e-7)){g=S(S(1)/S(_(c)));c=S(l*g);P[k+8>>2]=c;b=S(b*g);P[k+4>>2]=b;g=S(m*g);P[k>>2]=g;break a}L[k+8>>2]=0;L[k>>2]=1065353216;L[k+4>>2]=0;g=S(1);b=S(0);c=S(0)}L[k+12>>2]=0;b:{if(S(T(c))>S(.7071067690849304)){f=S(S(b*b)+S(c*c));i=S(S(1)/S(_(f)));f=S(f*i);j=S(i*S(-c));l=S(j*g);c=S(b*i);b=S(c*S(-g));m=S(0);break b}f=S(S(g*g)+S(b*b));i=S(S(1)/S(_(f)));l=S(f*i);m=S(i*S(-b));b=S(c*m);j=S(g*i);f=S(j*S(-c));c=S(0)}P[k+40>>2]=l;P[k+36>>2]=b;P[k+20>>2]=j;P[k+32>>2]=f;P[k+24>>2]=c;P[k+16>>2]=m;while(1){F=P[d+344>>2];G=P[e+344>>2];o=P[e+36>>2];p=P[e+4>>2];q=P[e+20>>2];r=P[e+40>>2];H=P[e+8>>2];I=P[e+24>>2];n=P[e+44>>2];J=P[e+12>>2];K=P[e+56>>2];N=P[e+28>>2];O=P[e+60>>2];Q=P[e+52>>2];U=P[d+36>>2];V=P[d+4>>2];W=P[d+20>>2];m=P[d+40>>2];X=P[d+8>>2];Y=P[d+24>>2];c=P[d+44>>2];g=P[d+12>>2];b=P[d+56>>2];j=P[d+28>>2];i=P[d+52>>2];f=P[d+60>>2];t=(s<<4)+k|0;Z=L[t+4>>2];h=R(s,84)+a|0;u=h+48|0;L[u>>2]=L[t>>2];L[u+4>>2]=Z;u=L[t+12>>2];L[h+56>>2]=L[t+8>>2];L[h+60>>2]=u;L[h+92>>2]=0;L[h+76>>2]=0;v=c;l=S(B-b);c=P[h+48>>2];D=S(z-i);b=P[h+52>>2];i=S(S(l*c)-S(D*b));w=g;E=S(x-f);g=P[h+56>>2];f=S(S(E*b)-S(l*g));l=j;j=S(S(D*g)-S(E*c));l=S(S(v*i)+S(S(w*f)+S(l*j)));P[h+88>>2]=l;m=S(S(m*i)+S(S(X*f)+S(Y*j)));P[h+84>>2]=m;i=S(S(U*i)+S(S(V*f)+S(W*j)));P[h+80>>2]=i;v=n;j=S(A-Q);n=S(C-K);f=S(S(b*j)-S(c*n));w=S(n*g);n=S(y-O);b=S(w-S(b*n));c=S(S(n*c)-S(g*j));g=S(S(v*f)+S(S(J*b)+S(N*c)));P[h+72>>2]=g;j=S(S(r*f)+S(S(H*b)+S(I*c)));P[h+68>>2]=j;c=S(S(o*f)+S(S(p*b)+S(q*c)));P[h- -64>>2]=c;b=P[e+404>>2];f=P[e+400>>2];o=P[e+396>>2];L[h+108>>2]=0;o=S(c*o);P[h+96>>2]=o;f=S(j*f);P[h+100>>2]=f;b=S(g*b);P[h+104>>2]=b;p=P[d+404>>2];q=P[d+400>>2];r=P[d+396>>2];L[h+124>>2]=0;r=S(i*r);P[h+112>>2]=r;q=S(m*q);P[h+116>>2]=q;p=S(l*p);P[h+120>>2]=p;P[h+128>>2]=S(F+S(G+S(S(b*g)+S(S(o*c)+S(j*f)))))+S(S(p*l)+S(S(r*i)+S(m*q)));s=s+1|0;if((s|0)!=3){continue}break}}e=a;d=L[a+28>>2];a=L[a+32>>2];wg(e,d+4|0,a+4|0,d+264|0,a+264|0)}fa=k+48|0}function Ak(a){a=a|0;var b=0,c=0;L[a>>2]=20992;b=L[a+192>>2];if(b){ha[L[L[b>>2]+4>>2]](b)}if(L[a+1112>>2]>0){while(1){kg(a,0);if(L[a+1112>>2]>0){continue}break}}if(L[a+872>>2]>0){b=0;while(1){c=L[L[a+880>>2]+(b<<2)>>2];if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}b=b+1|0;if((b|0)>2]){continue}break}}if(L[a+852>>2]>0){b=0;while(1){c=L[L[a+860>>2]+(b<<2)>>2];if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}b=b+1|0;if((b|0)>2]){continue}break}}b=L[a+1244>>2];if(!(b?!b|!M[a+1248|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+1244>>2]=0;J[a+1248|0]=1;b=a+1236|0;L[b>>2]=0;L[b+4>>2]=0;b=L[a+1140>>2];if(!(b?!b|!M[a+1144|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+1140>>2]=0;J[a+1144|0]=1;b=a+1132|0;L[b>>2]=0;L[b+4>>2]=0;b=L[a+1120>>2];if(!(b?!b|!M[a+1124|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+1120>>2]=0;J[a+1124|0]=1;L[a+1112>>2]=0;L[a+1116>>2]=0;gc(a+1048|0);gc(a+988|0);gc(a+928|0);b=L[a+880>>2];if(!(b?!b|!M[a+884|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+880>>2]=0;J[a+884|0]=1;L[a+872>>2]=0;L[a+876>>2]=0;b=L[a+860>>2];if(!(b?!b|!M[a+864|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+860>>2]=0;J[a+864|0]=1;L[a+852>>2]=0;L[a+856>>2]=0;b=L[a+840>>2];if(!(b?!b|!M[a+844|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+840>>2]=0;J[a+844|0]=1;L[a+832>>2]=0;L[a+836>>2]=0;b=L[a+820>>2];if(!(b?!b|!M[a+824|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+820>>2]=0;J[a+824|0]=1;L[a+812>>2]=0;L[a+816>>2]=0;b=L[a+800>>2];if(!(b?!b|!M[a+804|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+800>>2]=0;J[a+804|0]=1;L[a+792>>2]=0;L[a+796>>2]=0;b=L[a+780>>2];if(!(b?!b|!M[a+784|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+780>>2]=0;J[a+784|0]=1;L[a+772>>2]=0;L[a+776>>2]=0;b=L[a+760>>2];if(!(b?!b|!M[a+764|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+760>>2]=0;J[a+764|0]=1;L[a+752>>2]=0;L[a+756>>2]=0;b=L[a+740>>2];if(!(b?!b|!M[a+744|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+740>>2]=0;J[a+744|0]=1;L[a+732>>2]=0;L[a+736>>2]=0;b=L[a+720>>2];if(!(b?!b|!M[a+724|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+720>>2]=0;J[a+724|0]=1;L[a+712>>2]=0;L[a+716>>2]=0;b=L[a+700>>2];if(!(b?!b|!M[a+704|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+700>>2]=0;J[a+704|0]=1;L[a+692>>2]=0;L[a+696>>2]=0;b=L[a+512>>2];if(!(b?!b|!M[a+516|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+512>>2]=0;J[a+516|0]=1;L[a+504>>2]=0;L[a+508>>2]=0;b=L[a+492>>2];if(!(b?!b|!M[a+496|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+492>>2]=0;J[a+496|0]=1;L[a+484>>2]=0;L[a+488>>2]=0;b=L[a+444>>2];if(!(b?!b|!M[a+448|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+444>>2]=0;J[a+448|0]=1;L[a+436>>2]=0;L[a+440>>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;L[a+416>>2]=0;L[a+420>>2]=0;b=L[a+404>>2];if(!(b?!b|!M[a+408|0]:1)){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+276>>2];if(!(b?!b|!M[a+280|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+276>>2]=0;J[a+280|0]=1;L[a+268>>2]=0;L[a+272>>2]=0;L[a>>2]=6712;return a|0}function Ce(a,b,c,d,e,f,g,h,i,j,k,l,m){var n=S(0),o=S(0),p=S(0),q=S(0),r=S(0),s=S(0),t=0,u=S(0),v=S(0),w=0,x=S(0),y=S(0),z=0,A=0,B=S(0),C=S(0),D=S(0),E=S(0),F=0,G=0,H=0,I=0,J=S(0),K=S(0),N=S(0),O=S(0),Q=S(0),T=S(0),U=0;z=L[i+24>>2];G=M[b+44|0];F=L[b+56>>2];a:{if(!(G|F)){break a}t=L[(l?20:16)+i>>2];w=L[(l?12:8)+i>>2];j=R(j,z);A=j<<2;P[w+A>>2]=P[k>>2];z=j+1|0;H=z<<2;P[H+w>>2]=P[k+4>>2];U=w;w=j+2|0;I=w<<2;P[U+I>>2]=P[k+8>>2];P[t+A>>2]=-P[k>>2];P[t+H>>2]=-P[k+4>>2];P[t+I>>2]=-P[k+8>>2];if(!l){r=P[a+1184>>2];s=P[a+1180>>2];u=P[a+1176>>2];n=P[k+4>>2];b:{if(M[a+1301|0]){B=S(P[a+1120>>2]-P[c+56>>2]);p=P[k+8>>2];v=S(P[a+1112>>2]-P[c+48>>2]);q=P[k>>2];C=S(P[a+1116>>2]-P[c+52>>2]);o=S(S(B*p)+S(S(v*q)+S(n*C)));D=S(q*o);x=S(P[b+52>>2]-P[b+48>>2]);J=S(r-P[d+56>>2]);K=S(u-P[d+48>>2]);N=S(s-P[d+52>>2]);u=S(S(J*p)+S(S(q*K)+S(N*n)));O=S(q*u);y=S(S(D+S(q*x))-O);s=S(n*o);Q=S(n*u);E=S(S(s+S(n*x))-Q);r=P[a+1272>>2];D=S(S(v-D)+S(r*y));C=S(S(C-s)+S(r*E));s=S(S(D*n)-S(q*C));o=S(p*o);T=S(p*u);v=S(S(o+S(p*x))-T);o=S(S(B-o)+S(r*v));u=S(S(o*q)-S(p*D));x=S(S(C*p)-S(n*o));o=P[a+1276>>2];B=S(S(K-O)-S(o*y));E=S(S(N-Q)-S(o*E));y=S(S(B*n)-S(q*E));v=S(S(J-T)-S(o*v));q=S(S(v*q)-S(p*B));n=S(S(E*p)-S(n*v));if(!(!M[a+1280|0]|m)){y=S(o*y);q=S(o*q);s=S(r*s);u=S(r*u);x=S(r*x);n=S(o*n)}c=j<<2;a=c+L[i+12>>2]|0;P[a+8>>2]=s;P[a+4>>2]=u;P[a>>2]=x;t=L[i+20>>2];P[c+t>>2]=-n;P[(z<<2)+t>>2]=-q;n=S(-y);break b}p=P[k>>2];q=P[c+48>>2];m=L[i+12>>2];A=j<<2;o=S(s-P[c+52>>2]);s=P[k+8>>2];r=S(r-P[c+56>>2]);P[m+A>>2]=S(o*s)-S(n*r);c=z<<2;q=S(u-q);P[c+m>>2]=S(r*p)-S(s*q);P[m+(w<<2)>>2]=S(q*n)-S(p*o);n=P[k>>2];p=P[d+48>>2];q=P[a+1176>>2];t=L[i+20>>2];r=S(P[a+1180>>2]-P[d+52>>2]);o=P[k+8>>2];s=P[k+4>>2];u=S(P[a+1184>>2]-P[d+56>>2]);P[A+t>>2]=-S(S(r*o)-S(s*u));p=S(q-p);P[c+t>>2]=-S(S(u*n)-S(o*p));n=S(-S(S(p*s)-S(n*r)))}P[(w<<2)+t>>2]=n}c:{d:{if(F){n=P[b+4>>2];p=P[b>>2];a=L[i+28>>2];L[a+(j<<2)>>2]=0;if(!(!G|n==p)){P[L[i+32>>2]+(j<<2)>>2]=P[b+28>>2]}n=S(P[i>>2]*P[b+32>>2]);if(l){break d}c=a+(j<<2)|0;P[c>>2]=S(n*P[b+48>>2])+P[c>>2];break c}a=j<<2;L[a+L[i+28>>2]>>2]=0;t=1;if(!G){break a}P[a+L[i+32>>2]>>2]=P[b+28>>2];n=P[b+8>>2];n=pd(P[b+52>>2],P[b>>2],P[b+4>>2],l?n:S(-n),S(P[i>>2]*P[b+32>>2]));c=a+L[i+28>>2]|0;P[c>>2]=S(n*P[b+8>>2])+P[c>>2];P[a+L[i+36>>2]>>2]=-P[b+12>>2];P[a+L[i+40>>2]>>2]=P[b+12>>2];return 1}c=a+(j<<2)|0;P[c>>2]=P[c>>2]-S(n*P[b+48>>2])}c=j<<2;P[c+L[i+32>>2]>>2]=P[b+36>>2];if(P[b>>2]==P[b+4>>2]){L[c+L[i+36>>2]>>2]=-8388609;L[c+L[i+40>>2]>>2]=2139095039;return 1}t=1;d=(F|0)==1;P[c+L[i+36>>2]>>2]=d?S(0):S(-34028234663852886e22);P[c+L[i+40>>2]>>2]=d?S(34028234663852886e22):S(0);p=P[b+40>>2];if(!(p>S(0))){break a}b=l?g:e;n=P[k+8>>2];q=P[k>>2];r=P[k+4>>2];o=S(S(P[b+8>>2]*n)+S(S(P[b>>2]*q)+S(P[b+4>>2]*r)));b=l?h:f;n=S(o-S(S(P[b+8>>2]*n)+S(S(P[b>>2]*q)+S(r*P[b+4>>2]))));if((F|0)==1){if(!(nP[a>>2])){break a}P[a>>2]=n;return 1}if(!(n>S(0))){break a}n=S(n*S(-p));a=a+(j<<2)|0;if(!(n>2])){break a}P[a>>2]=n}return t}function ll(a,b,c,d){var e=0,f=S(0),g=S(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=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=0,B=0,C=S(0),D=S(0),E=S(0);a=ub(a,6,al(),b);L[a>>2]=19568;e=L[c+12>>2];L[a+120>>2]=L[c+8>>2];L[a+124>>2]=e;e=L[c+4>>2];L[a+112>>2]=L[c>>2];L[a+116>>2]=e;e=L[c+28>>2];L[a+136>>2]=L[c+24>>2];L[a+140>>2]=e;e=L[c+20>>2];L[a+128>>2]=L[c+16>>2];L[a+132>>2]=e;e=L[c+44>>2];L[a+152>>2]=L[c+40>>2];L[a+156>>2]=e;e=L[c+36>>2];L[a+144>>2]=L[c+32>>2];L[a+148>>2]=e;e=L[c+56>>2];A=L[c+60>>2];B=L[c+48>>2];c=L[c+52>>2];L[a+784>>2]=0;L[a+776>>2]=0;L[a+780>>2]=0;L[a+768>>2]=0;L[a+772>>2]=0;L[a+764>>2]=1045220557;L[a+756>>2]=1045220557;L[a+760>>2]=1045220557;L[a+740>>2]=0;L[a+744>>2]=0;L[a+748>>2]=0;L[a+752>>2]=0;L[a+720>>2]=0;L[a+724>>2]=0;L[a+712>>2]=0;L[a+716>>2]=0;L[a+704>>2]=0;L[a+708>>2]=0;L[a+696>>2]=0;L[a+700>>2]=0;L[a+688>>2]=0;L[a+692>>2]=0;L[a+680>>2]=0;L[a+684>>2]=0;L[a+168>>2]=e;L[a+172>>2]=A;L[a+160>>2]=B;L[a+164>>2]=c;L[a+728>>2]=1060320051;L[a+732>>2]=1065353216;L[a+736>>2]=1056964608;J[a+790|0]=0;K[a+788>>1]=0;L[a+792>>2]=0;L[a+796>>2]=0;L[a+800>>2]=0;L[a+808>>2]=0;L[a+812>>2]=0;L[a+816>>2]=0;L[a+876>>2]=0;L[a+880>>2]=1036831949;L[a+884>>2]=1133903872;L[a+868>>2]=1065353216;L[a+872>>2]=-1082130432;L[a+896>>2]=0;L[a+900>>2]=1045220557;L[a+904>>2]=0;L[a+908>>2]=0;L[a+924>>2]=0;L[a+928>>2]=0;L[a+888>>2]=1065353216;L[a+892>>2]=1056964608;L[a+916>>2]=0;L[a+992>>2]=0;J[a+912|0]=0;L[a+940>>2]=0;L[a+944>>2]=1036831949;L[a+948>>2]=1133903872;L[a+968>>2]=0;L[a+972>>2]=0;L[a+960>>2]=0;L[a+964>>2]=1045220557;L[a+932>>2]=1065353216;L[a+936>>2]=-1082130432;L[a+952>>2]=1065353216;L[a+956>>2]=1056964608;L[a+988>>2]=0;L[a+980>>2]=0;J[a+976|0]=0;L[a+1004>>2]=0;L[a+1008>>2]=1036831949;L[a+1012>>2]=1133903872;c=a+1032|0;L[c>>2]=0;L[c+4>>2]=0;c=a+1024|0;L[c>>2]=0;L[c+4>>2]=1045220557;L[a+996>>2]=1065353216;L[a+1e3>>2]=-1082130432;L[a+1016>>2]=1065353216;L[a+1020>>2]=1056964608;c=a+1052|0;L[c>>2]=0;L[c+4>>2]=0;L[a+1044>>2]=0;J[a+1040|0]=0;J[a+1301|0]=1;J[a+1308|0]=0;L[a+1304>>2]=0;J[a+1300|0]=d;o=P[a+168>>2];p=P[a+160>>2];q=P[a+164>>2];r=P[a+144>>2];s=P[a+112>>2];t=P[a+128>>2];u=P[a+148>>2];v=P[a+116>>2];w=P[a+132>>2];x=P[a+152>>2];y=P[a+120>>2];z=P[a+136>>2];C=P[b+52>>2];D=P[b+56>>2];E=P[b+60>>2];f=P[b+12>>2];g=P[b+8>>2];h=P[b+28>>2];i=P[b+20>>2];j=P[b+24>>2];k=P[b+44>>2];l=P[b+36>>2];m=P[b+40>>2];n=P[b+4>>2];L[a+108>>2]=0;L[a+92>>2]=0;L[a+76>>2]=0;L[a+60>>2]=0;P[a+88>>2]=S(x*k)+S(S(y*l)+S(z*m));P[a+84>>2]=S(u*k)+S(S(v*l)+S(w*m));P[a+80>>2]=S(r*k)+S(S(s*l)+S(t*m));P[a+72>>2]=S(x*h)+S(S(y*i)+S(z*j));P[a+68>>2]=S(u*h)+S(S(v*i)+S(w*j));P[a- -64>>2]=S(r*h)+S(S(s*i)+S(t*j));P[a+56>>2]=S(x*f)+S(S(y*n)+S(g*z));P[a+52>>2]=S(u*f)+S(S(v*n)+S(g*w));P[a+48>>2]=S(r*f)+S(S(s*n)+S(t*g));P[a+104>>2]=E+S(S(o*k)+S(S(p*l)+S(m*q)));P[a+100>>2]=D+S(S(o*h)+S(S(p*i)+S(j*q)));P[a+96>>2]=C+S(S(o*f)+S(S(p*n)+S(g*q)));qd(a,L[a+28>>2]+4|0,L[a+32>>2]+4|0);return a}function JF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=0,n=0,o=0,p=0,q=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;q=fa+-64|0;fa=q;g=L[a+48>>2];L[q+12>>2]=b;L[q+8>>2]=g;L[q+4>>2]=12704;p=q+4|0;g=fa-16|0;fa=g;f=L[a+52>>2];a:{if(M[f+60|0]){w=P[f+40>>2];t=P[f+24>>2];h=P[f+8>>2];x=P[f+36>>2];u=P[f+20>>2];r=P[f+4>>2];k=P[c>>2];l=P[c+4>>2];v=P[f+28>>2];j=P[f+12>>2];i=P[c+8>>2];i=j>i?j:i;y=P[f+44>>2];i=S(S((i>v?v:i)-j)*y);b:{if(i=S(0)){a=~~i>>>0;break b}a=0}n=a&65534;K[g+14>>1]=n;l=h>l?h:l;l=S(w*S((l>t?t:l)-h));c:{if(l=S(0)){a=~~l>>>0;break c}a=0}o=a&65534;K[g+12>>1]=o;k=ku?u:k)-r)*x);d:{if(k=S(0)){a=~~k>>>0;break d}a=0}s=a&65534;K[g+10>>1]=s;k=P[d>>2];l=P[d+4>>2];i=P[d+8>>2];i=j>i?j:i;j=S(S(y*S((i>v?v:i)-j))+S(1));e:{if(j=S(0)){a=~~j>>>0;break e}a=0}z=a|1;K[g+8>>1]=z;j=h>l?h:l;h=S(S(w*S((j>t?t:j)-h))+S(1));f:{if(h=S(0)){a=~~h>>>0;break f}a=0}A=a|1;K[g+6>>1]=A;h=ku?u:h)-r))+S(1));g:{if(h=S(0)){a=~~h>>>0;break g}a=0}B=a|1;K[g+4>>1]=B;h:{switch(L[f+144>>2]){case 0:a=L[f+56>>2];if((a|0)>0){e=L[f+136>>2];b=0;while(1){m=m+1|0;i:{j:{c=L[e+12>>2];f=(c|0)<0;d=s>>>0<=N[e+6>>1]&N[e>>1]<=B>>>0&n>>>0<=N[e+10>>1]&z>>>0>=N[e+4>>1]&o>>>0<=N[e+8>>1]&N[e+2>>1]<=A>>>0;k:{if(!(f|!d)){ha[L[L[p>>2]+8>>2]](p,c>>>21|0,c&2097151);break k}if(f&(d^-1)){break j}}e=e+16|0;b=b+1|0;break i}e=e-(c<<4)|0;b=b-c|0}if((a|0)>(b|0)){continue}break}}if(L[7548]>=(m|0)){break a}L[7548]=m;break a;case 1:if(L[f+152>>2]>0){while(1){a=L[f+160>>2]+(e<<5)|0;l:{if(N[g+10>>1]>N[a+6>>1]|N[g+4>>1]>1]|(N[g+8>>1]>1]|N[g+14>>1]>N[a+10>>1])){break l}if(N[g+6>>1]>1]|N[g+12>>1]>N[a+8>>1]){break l}b=L[a+16>>2];m:{if((b|0)<=0){a=0;break m}c=L[a+12>>2];n=b+c|0;b=L[f+136>>2]+(c<<4)|0;a=0;while(1){n:{o:{d=L[b+12>>2];o=(d|0)<0;m=N[g+10>>1]<=N[b+6>>1]&N[g+4>>1]>=N[b>>1]&N[g+14>>1]<=N[b+10>>1]&N[g+8>>1]>=N[b+4>>1]&N[g+12>>1]<=N[b+8>>1]&N[g+6>>1]>=N[b+2>>1];p:{if(!(o|!m)){ha[L[L[p>>2]+8>>2]](p,d>>>21|0,d&2097151);break p}if(o&(m^-1)){break o}}c=c+1|0;b=b+16|0;break n}c=c-d|0;b=b-(d<<4)|0}a=a+1|0;if((c|0)<(n|0)){continue}break}}if(L[7548]>=(a|0)){break l}L[7548]=a}e=e+1|0;if((e|0)>2]){continue}break}}break a;case 2:break h;default:break a}}Gm(f,L[f+136>>2],p,g+10|0,g+4|0);break a}o=L[f+56>>2];if((o|0)>0){e=L[f+96>>2];while(1){b=0;q:{if(P[c>>2]>P[e+16>>2]){break q}b=0;if(P[d>>2]>2]){break q}b=1}a=0;a=P[d+8>>2]>2]|P[c+8>>2]>P[e+24>>2]?a:b;r:{s:{t:{if(P[d+4>>2]>2]|P[c+4>>2]>P[e+20>>2]){b=L[e+32>>2];s=(b|0)==-1;a=0;break t}b=L[e+32>>2];s=(b|0)==-1;if(!(s&a)){break t}ha[L[L[p>>2]+8>>2]](p,L[e+36>>2],L[e+40>>2]);o=L[f+56>>2];break s}if(a|s){break s}n=b+n|0;e=(b<<6)+e|0;break r}n=n+1|0;e=e- -64|0}m=m+1|0;if((n|0)<(o|0)){continue}break}}if(L[7548]>=(m|0)){break a}L[7548]=m}fa=g+16|0;fa=q- -64|0}function ze(a,b,c,d,e,f){var g=0,h=S(0),i=S(0),j=0,k=S(0),l=S(0),m=S(0),n=S(0),o=S(0),p=S(0),q=S(0),r=0,s=0,t=0,u=0,v=S(0),w=S(0),x=S(0),y=0,z=S(0),A=0,B=S(0),C=S(0),D=S(0),E=S(0),F=S(0),G=S(0),H=S(0);j=L[a+88>>2];r=j;a:{if((j|0)!=L[a+92>>2]){break a}t=j?j<<1:1;if((j|0)>=(t|0)){break a}if(t){L[8513]=L[8513]+1;u=ha[L[6798]](R(t,152),16)|0;g=L[a+88>>2]}else{g=j}b:{if((g|0)<=0){break b}r=0;if((g|0)!=1){A=g&-2;while(1){s=R(r,152);qa(s+u|0,s+L[a+96>>2]|0,152);s=R(r|1,152);qa(s+u|0,s+L[a+96>>2]|0,152);r=r+2|0;y=y+2|0;if((y|0)!=(A|0)){continue}break}}if(!(g&1)){break b}g=R(r,152);qa(g+u|0,g+L[a+96>>2]|0,152)}g=L[a+96>>2];if(!(g?!g|!M[a+100|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](g)}L[a+96>>2]=u;J[a+100|0]=1;L[a+92>>2]=t;r=L[a+88>>2]}L[a+88>>2]=r+1;g=L[a+96>>2]+R(j,152)|0;L[g+140>>2]=e;L[g+16>>2]=0;L[g+20>>2]=0;L[g+48>>2]=-2147483648;L[g+52>>2]=-2147483648;L[g+24>>2]=0;L[g+28>>2]=0;L[g+56>>2]=-2147483648;L[g+60>>2]=0;j=L[a+16>>2];a=L[(j+R(d,244)|0)+240>>2];e=L[(j+R(c,244)|0)+240>>2];L[g+148>>2]=d;L[g+144>>2]=c;x=P[f+88>>2];L[g+132>>2]=0;P[g+104>>2]=x;L[g+96>>2]=0;L[g+100>>2]=0;h=P[b>>2];i=P[b+4>>2];k=P[b+8>>2];L[g+12>>2]=0;n=S(-k);P[g+8>>2]=n;o=S(-i);P[g+4>>2]=o;p=S(-h);P[g>>2]=p;h=S(0);if(e){h=S(S(S(P[e+304>>2]*n)+S(S(P[e+296>>2]*p)+S(P[e+300>>2]*o)))*P[e+552>>2]);l=S(S(S(P[e+288>>2]*n)+S(S(P[e+280>>2]*p)+S(P[e+284>>2]*o)))*P[e+548>>2]);i=S(S(S(P[e+272>>2]*n)+S(S(P[e+264>>2]*p)+S(P[e+268>>2]*o)))*P[e+544>>2])}else{i=S(0)}P[g+64>>2]=i;L[g+76>>2]=0;P[g+72>>2]=h;P[g+68>>2]=l;h=P[b>>2];i=P[b+4>>2];k=P[b+8>>2];P[g+44>>2]=P[b+12>>2];P[g+40>>2]=k;P[g+36>>2]=i;P[g+32>>2]=h;if(a){m=S(S(S(P[a+304>>2]*k)+S(S(P[a+296>>2]*h)+S(i*P[a+300>>2])))*P[a+552>>2]);q=S(S(S(P[a+288>>2]*k)+S(S(P[a+280>>2]*h)+S(i*P[a+284>>2])))*P[a+548>>2]);l=S(S(S(P[a+272>>2]*k)+S(S(P[a+264>>2]*h)+S(i*P[a+268>>2])))*P[a+544>>2])}else{l=S(0)}P[g+80>>2]=l;L[g+92>>2]=0;P[g+88>>2]=m;P[g+84>>2]=q;q=S(0);m=S(0);if(e){q=S(S(P[e+272>>2]*n)+S(S(P[e+264>>2]*p)+S(P[e+268>>2]*o)));m=S(S(P[e+288>>2]*n)+S(S(P[e+280>>2]*p)+S(P[e+284>>2]*o)));l=S(S(P[e+304>>2]*n)+S(S(P[e+296>>2]*p)+S(P[e+300>>2]*o)))}else{l=S(0)}q=S(S(S(l*n)+S(S(q*p)+S(m*o)))+S(0));if(a){v=S(S(P[a+288>>2]*k)+S(S(P[a+280>>2]*h)+S(i*P[a+284>>2])));w=S(S(P[a+272>>2]*k)+S(S(P[a+264>>2]*h)+S(P[a+268>>2]*i)));m=S(S(P[a+304>>2]*k)+S(S(P[a+296>>2]*h)+S(i*P[a+300>>2])))}else{m=S(0)}z=S(S(1)/S(q+S(S(m*k)+S(S(w*h)+S(v*i)))));P[g+108>>2]=z;w=S(0);q=S(0);m=S(0);v=S(0);if(e){b=j+R(c,244)|0;w=S(P[b+176>>2]+P[b+208>>2]);B=P[b+200>>2];v=P[b+196>>2];q=S(S(P[b+180>>2]+P[b+212>>2])*S(0));C=P[b+192>>2];m=S(P[b+184>>2]+P[b+216>>2])}l=S(-0);if(a){a=j+R(d,244)|0;D=S(P[a+176>>2]+P[a+208>>2]);E=S(P[a+184>>2]+P[a+216>>2]);F=P[a+192>>2];G=P[a+200>>2];H=P[a+196>>2];l=S(S(P[a+180>>2]+P[a+212>>2])*S(-0))}P[g+124>>2]=x;P[g+116>>2]=0;P[g+120>>2]=-x;P[g+112>>2]=z*S(S(0)-S(S(S(S(m*S(0))+S(S(w*S(0))+q))+S(S(n*B)+S(S(p*C)+S(v*o))))+S(S(S(E*S(-0))+S(S(D*S(-0))+l))+S(S(k*G)+S(S(h*F)+S(i*H))))))}function Ll(a,b,c){var d=S(0),e=S(0),f=S(0),g=0,h=S(0),i=0,j=0,k=S(0),l=S(0),m=S(0),n=S(0),o=0,p=S(0),q=S(0),r=S(0),s=0,t=0;g=fa-528|0;fa=g;k=P[a+20>>2];d=S(k-P[a+4>>2]);e=P[a+56>>2];h=P[a+52>>2];m=P[a+24>>2];l=S(m-P[a+8>>2]);f=S(S(d*e)-S(h*l));q=f;n=P[a+16>>2];p=S(n-P[a>>2]);r=S(p*h);h=P[a+48>>2];d=S(r-S(h*d));r=S(f*f);f=S(S(l*h)-S(e*p));e=S(S(1)/S(_(S(S(d*d)+S(r+S(f*f))))));h=S(q*e);P[g+256>>2]=h;f=S(f*e);P[g+260>>2]=f;d=S(d*e);P[g+264>>2]=d;P[g+268>>2]=S(m*d)+S(S(n*h)+S(k*f));o=g+272|0;d=P[g+264>>2];e=P[g+256>>2];k=P[g+260>>2];h=P[g+268>>2];f=S(S(S(P[b+8>>2]*d)+S(S(P[b>>2]*e)+S(P[b+4>>2]*k)))-h);i=f>S(1.1920928955078125e-7);if(!i){j=L[b+4>>2];L[o>>2]=L[b>>2];L[o+4>>2]=j;j=L[b+12>>2];L[o+8>>2]=L[b+8>>2];L[o+12>>2]=j;h=P[g+268>>2];d=P[g+264>>2];k=P[g+260>>2];e=P[g+256>>2];j=1}m=P[b+24>>2];l=P[b+16>>2];n=P[b+20>>2];d=S(S(S(m*d)+S(S(l*e)+S(n*k)))-h);if((i|0)!=(d>S(1.1920928955078125e-7)|0)){h=P[b>>2];p=P[b+4>>2];q=P[b+8>>2];i=o+(j<<4)|0;L[i+12>>2]=0;e=S(S(-f)/S(d-f));k=S(S(1)-e);P[i+8>>2]=S(m*e)+S(q*k);P[i+4>>2]=S(n*e)+S(k*p);P[i>>2]=S(l*e)+S(k*h);j=j+1|0}t=d>S(1.1920928955078125e-7);if(!t){s=L[b+20>>2];i=o+(j<<4)|0;L[i>>2]=L[b+16>>2];L[i+4>>2]=s;s=L[b+28>>2];L[i+8>>2]=L[b+24>>2];L[i+12>>2]=s;j=j+1|0}h=P[b+40>>2];m=P[b+32>>2];l=P[b+36>>2];e=S(S(S(h*P[g+264>>2])+S(S(m*P[g+256>>2])+S(l*P[g+260>>2])))-P[g+268>>2]);if((t|0)!=(e>S(1.1920928955078125e-7)|0)){n=P[b+16>>2];p=P[b+20>>2];q=P[b+24>>2];i=o+(j<<4)|0;L[i+12>>2]=0;d=S(S(-d)/S(e-d));k=S(S(1)-d);P[i+8>>2]=S(h*d)+S(q*k);P[i+4>>2]=S(l*d)+S(k*p);P[i>>2]=S(m*d)+S(k*n);j=j+1|0}t=e>S(1.1920928955078125e-7);if(!t){s=L[b+36>>2];i=o+(j<<4)|0;L[i>>2]=L[b+32>>2];L[i+4>>2]=s;s=L[b+44>>2];L[i+8>>2]=L[b+40>>2];L[i+12>>2]=s;j=j+1|0}if((t|0)!=(f>S(1.1920928955078125e-7)|0)){k=P[b+32>>2];h=P[b>>2];m=P[b+36>>2];l=P[b+4>>2];d=P[b+40>>2];n=P[b+8>>2];i=o+(j<<4)|0;L[i+12>>2]=0;q=d;d=S(S(-e)/S(f-e));e=S(S(1)-d);P[i+8>>2]=S(q*e)+S(d*n);P[i+4>>2]=S(e*m)+S(d*l);P[i>>2]=S(e*k)+S(d*h);j=j+1|0}if(f>S(1.1920928955078125e-7)){b=j}else{i=L[b+4>>2];o=o+(j<<4)|0;L[o>>2]=L[b>>2];L[o+4>>2]=i;i=L[b+12>>2];L[o+8>>2]=L[b+8>>2];L[o+12>>2]=i;b=j+1|0}j=0;a:{if(!b){break a}k=P[a+40>>2];e=S(k-P[a+24>>2]);d=P[a+48>>2];h=P[a+56>>2];m=P[a+32>>2];l=S(m-P[a+16>>2]);f=S(S(e*d)-S(h*l));q=f;r=l;l=P[a+52>>2];n=P[a+36>>2];p=S(n-P[a+20>>2]);d=S(S(r*l)-S(d*p));e=S(S(p*h)-S(l*e));f=S(S(1)/S(_(S(S(d*d)+S(S(e*e)+S(f*f))))));h=S(q*f);P[g+260>>2]=h;e=S(e*f);P[g+256>>2]=e;f=S(d*f);P[g+264>>2]=f;P[g+268>>2]=S(k*f)+S(S(m*e)+S(n*h));b=Kl(g+256|0,g+272|0,b,g);j=0;if(!b){break a}k=P[a+8>>2];e=S(k-P[a+40>>2]);d=P[a+48>>2];h=P[a+56>>2];m=P[a>>2];l=S(m-P[a+32>>2]);f=S(S(e*d)-S(h*l));q=f;r=l;l=P[a+52>>2];n=P[a+4>>2];p=S(n-P[a+36>>2]);d=S(S(r*l)-S(d*p));e=S(S(p*h)-S(l*e));f=S(S(1)/S(_(S(S(d*d)+S(S(e*e)+S(f*f))))));h=S(q*f);P[g+260>>2]=h;e=S(e*f);P[g+256>>2]=e;f=S(d*f);P[g+264>>2]=f;P[g+268>>2]=S(k*f)+S(S(m*e)+S(n*h));j=Kl(g+256|0,g,b,c)}fa=g+528|0;return j}function Bn(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=S(0),m=0,n=0,o=0,p=0,q=S(0),r=0,s=0,t=0,u=S(0),v=S(0),w=0,x=0,y=0,z=0,A=S(0),B=S(0),C=S(0);o=fa-32|0;fa=o;if(b){j=L[a+44>>2];a:{if((j|0)>127){break a}if(L[a+48>>2]<=127){L[8513]=L[8513]+1;r=ha[L[6798]](512,16)|0;w=L[a+44>>2];b:{if((w|0)<=0){break b}if(w>>>0>=4){z=w&-4;while(1){s=k<<2;L[s+r>>2]=L[s+L[a+52>>2]>>2];p=s|4;L[p+r>>2]=L[p+L[a+52>>2]>>2];p=s|8;L[p+r>>2]=L[p+L[a+52>>2]>>2];p=s|12;L[p+r>>2]=L[p+L[a+52>>2]>>2];k=k+4|0;m=m+4|0;if((z|0)!=(m|0)){continue}break}}p=w&3;if(!p){break b}while(1){m=k<<2;L[m+r>>2]=L[m+L[a+52>>2]>>2];k=k+1|0;n=n+1|0;if((p|0)!=(n|0)){continue}break}}k=L[a+52>>2];if(!(k?!k|!M[a+56|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](k)}L[a+52>>2]=r;J[a+56|0]=1;L[a+48>>2]=128}k=j;m=0-j&3;if(m){while(1){L[L[a+52>>2]+(k<<2)>>2]=0;k=k+1|0;x=x+1|0;if((m|0)!=(x|0)){continue}break}}if(j-125>>>0<3){break a}while(1){j=k<<2;L[j+L[a+52>>2]>>2]=0;L[(j+L[a+52>>2]|0)+4>>2]=0;L[(j+L[a+52>>2]|0)+8>>2]=0;L[(j+L[a+52>>2]|0)+12>>2]=0;k=k+4|0;if((k|0)!=128){continue}break}}L[a+44>>2]=128;L[L[a+52>>2]>>2]=b;n=126;x=1;while(1){k=L[a+52>>2];b=x-1|0;p=b<<2;t=L[k+p>>2];u=P[t>>2];v=P[t+4>>2];q=P[h>>2];l=P[h+4>>2];P[o+8>>2]=P[t+8>>2]-P[h+8>>2];P[o+4>>2]=v-l;P[o>>2]=u-q;u=P[t+16>>2];v=P[t+20>>2];q=P[g>>2];l=P[g+4>>2];P[o+24>>2]=P[t+24>>2]-P[g+8>>2];P[o+20>>2]=v-l;P[o+16>>2]=u-q;m=L[e>>2];u=P[c>>2];v=P[d>>2];A=S(S(P[(m<<4)+o>>2]-u)*v);q=P[d+4>>2];j=L[e+4>>2];l=P[c+4>>2];B=S(q*S(P[((1-j<<4)+o|0)+4>>2]-l));c:{if(A>B){break c}l=S(S(P[((j<<4)+o|0)+4>>2]-l)*q);C=S(v*S(P[(1-m<<4)+o>>2]-u));if(l>C){break c}u=l>A?l:A;q=P[d+8>>2];j=L[e+8>>2];l=P[c+8>>2];v=S(q*S(P[((1-j<<4)+o|0)+8>>2]-l));if(u>v){break c}q=S(S(P[((j<<4)+o|0)+8>>2]-l)*q);l=Bl|!((q>u?q:u)v?v:l)>S(0))){break c}if(L[t+40>>2]){if((b|0)>(n|0)){b=L[a+44>>2];y=b<<1;if((b|0)<(y|0)){if((y|0)>L[a+48>>2]){d:{if(!b){k=0;break d}L[8513]=L[8513]+1;k=ha[L[6798]](b<<3,16)|0;s=L[a+44>>2];if((s|0)<=0){break d}w=0;n=0;if(s>>>0>=4){m=s&-4;z=0;while(1){r=n<<2;L[r+k>>2]=L[r+L[a+52>>2]>>2];j=r|4;L[j+k>>2]=L[j+L[a+52>>2]>>2];j=r|8;L[j+k>>2]=L[j+L[a+52>>2]>>2];j=r|12;L[j+k>>2]=L[j+L[a+52>>2]>>2];n=n+4|0;z=z+4|0;if((m|0)!=(z|0)){continue}break}}m=s&3;if(!m){break d}while(1){j=n<<2;L[j+k>>2]=L[j+L[a+52>>2]>>2];n=n+1|0;w=w+1|0;if((m|0)!=(w|0)){continue}break}}j=L[a+52>>2];if(!(j?!j|!M[a+56|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](j)}L[a+52>>2]=k;J[a+56|0]=1;L[a+48>>2]=y}k=b-1|0;n=0;j=b&3;if(j){while(1){L[L[a+52>>2]+(b<<2)>>2]=0;b=b+1|0;n=n+1|0;if((j|0)!=(n|0)){continue}break}}if(k>>>0>=3){while(1){j=b<<2;L[j+L[a+52>>2]>>2]=0;L[(j+L[a+52>>2]|0)+4>>2]=0;L[(j+L[a+52>>2]|0)+8>>2]=0;L[(j+L[a+52>>2]|0)+12>>2]=0;b=b+4|0;if((y|0)!=(b|0)){continue}break}}k=L[a+52>>2]}L[a+44>>2]=y;n=y-2|0}L[k+p>>2]=L[t+36>>2];L[L[a+52>>2]+(x<<2)>>2]=L[t+40>>2];b=x+1|0;break c}ha[L[L[i>>2]+12>>2]](i,t)}x=b;if(b){continue}break}}fa=o+32|0}function RA(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;c=L[b+8>>2];a:{if((c|0)<=0){break a}d=L[b+16>>2];if((c|0)!=1){g=c&-2;while(1){i=e<<2;h=L[i+d>>2];if(!(M[h+204|0]&3)){L[h+208>>2]=f;f=f+1|0}L[h+244>>2]=1065353216;L[h+212>>2]=-1;h=L[d+(i|4)>>2];if(!(M[h+204|0]&3)){L[h+208>>2]=f;f=f+1|0}L[h+244>>2]=1065353216;L[h+212>>2]=-1;e=e+2|0;k=k+2|0;if((g|0)!=(k|0)){continue}break}}if(!(c&1)){break a}c=L[d+(e<<2)>>2];if(!(M[c+204|0]&3)){L[c+208>>2]=f;f=f+1|0}L[c+244>>2]=1065353216;L[c+212>>2]=-1}d=0;h=0;i=0;k=0;c=L[a+8>>2];b:{if((f|0)<=(c|0)){break b}if(L[a+12>>2]<(f|0)){if(f){L[8513]=L[8513]+1;h=ha[L[6798]](f<<3,16)|0;e=L[a+8>>2]}else{e=c}c:{if((e|0)<=0){break c}if(e>>>0>=4){n=e&-4;while(1){g=d<<3;j=g+h|0;l=g+L[a+16>>2]|0;m=L[l+4>>2];L[j>>2]=L[l>>2];L[j+4>>2]=m;j=g|8;l=j+h|0;j=j+L[a+16>>2]|0;m=L[j+4>>2];L[l>>2]=L[j>>2];L[l+4>>2]=m;j=g|16;l=j+h|0;j=j+L[a+16>>2]|0;m=L[j+4>>2];L[l>>2]=L[j>>2];L[l+4>>2]=m;g=g|24;j=g+h|0;g=g+L[a+16>>2]|0;l=L[g+4>>2];L[j>>2]=L[g>>2];L[j+4>>2]=l;d=d+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}e=e&3;if(!e){break c}while(1){g=d<<3;i=g+h|0;g=g+L[a+16>>2]|0;n=L[g+4>>2];L[i>>2]=L[g>>2];L[i+4>>2]=n;d=d+1|0;k=k+1|0;if((e|0)!=(k|0)){continue}break}}e=L[a+16>>2];if(!(e?!e|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](e)}L[a+16>>2]=h;J[a+20|0]=1;L[a+12>>2]=f}e=(c^-1)+f|0;h=f-c&3;if(h){d=0;while(1){k=L[a+16>>2]+(c<<3)|0;L[k>>2]=0;L[k+4>>2]=0;c=c+1|0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}if(e>>>0<3){break b}while(1){e=c<<3;d=e+L[a+16>>2]|0;L[d>>2]=0;L[d+4>>2]=0;d=e+L[a+16>>2]|0;L[d+8>>2]=0;L[d+12>>2]=0;d=e+L[a+16>>2]|0;L[d+16>>2]=0;L[d+20>>2]=0;e=e+L[a+16>>2]|0;L[e+24>>2]=0;L[e+28>>2]=0;c=c+4|0;if((f|0)!=(c|0)){continue}break}}L[a+8>>2]=f;d:{if((f|0)<=0){break d}e=L[a+16>>2];d=0;c=0;if(f>>>0>=4){k=f&-4;h=0;while(1){g=e+(c<<3)|0;L[g+4>>2]=1;L[g>>2]=c;g=c|1;i=e+(g<<3)|0;L[i+4>>2]=1;L[i>>2]=g;g=c|2;i=e+(g<<3)|0;L[i+4>>2]=1;L[i>>2]=g;g=c|3;i=e+(g<<3)|0;L[i+4>>2]=1;L[i>>2]=g;c=c+4|0;h=h+4|0;if((k|0)!=(h|0)){continue}break}}f=f&3;if(!f){break d}while(1){h=e+(c<<3)|0;L[h+4>>2]=1;L[h>>2]=c;c=c+1|0;d=d+1|0;if((f|0)!=(d|0)){continue}break}}e=0;b=L[b+68>>2];b=ha[L[L[b>>2]+36>>2]](b)|0;h=ha[L[L[b>>2]+36>>2]](b)|0;e:{if(!h){break e}k=ha[L[L[b>>2]+20>>2]](b)|0;if((h|0)<=0){break e}a=L[a+16>>2];while(1){b=k+(e<<4)|0;c=L[L[b>>2]>>2];f:{if(!c|M[c+204|0]&7){break f}b=L[L[b+4>>2]>>2];if(!b|M[b+204|0]&7){break f}b=L[b+208>>2];c=L[c+208>>2];f=a+(c<<3)|0;d=L[f>>2];if((c|0)!=(d|0)){while(1){c=a+(d<<3)|0;L[f>>2]=L[c>>2];c=L[c>>2];f=a+(c<<3)|0;d=L[f>>2];if((c|0)!=(d|0)){continue}break}}f=a+(b<<3)|0;d=L[f>>2];if((d|0)!=(b|0)){while(1){b=a+(d<<3)|0;L[f>>2]=L[b>>2];b=L[b>>2];f=a+(b<<3)|0;d=L[f>>2];if((b|0)!=(d|0)){continue}break}}if((b|0)==(c|0)){break f}c=a+(c<<3)|0;L[c>>2]=b;b=a+(b<<3)|0;L[b+4>>2]=L[b+4>>2]+L[c+4>>2]}e=e+1|0;if((h|0)!=(e|0)){continue}break}}}function Jz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=S(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=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);a=L[a+16>>2];e=P[a+908>>2];i=P[a+912>>2];q=P[a+916>>2];j=P[b+56>>2];t=P[b+36>>2];z=P[b+40>>2];f=P[b+32>>2];k=P[b+48>>2];A=P[b+8>>2];u=P[b+4>>2];l=P[b>>2];n=P[a+900>>2];B=P[b+24>>2];g=S(n*B);r=P[a+892>>2];o=P[b+16>>2];C=S(r*o);p=P[a+896>>2];v=P[b+20>>2];w=S(p*v);D=S(C+w);m=P[b+52>>2];P[d+4>>2]=S(g+D)+m;h=S(n*A);E=S(r*l);x=S(p*u);F=S(E+x);P[d>>2]=k+S(h+F);L[d+12>>2]=0;n=S(n*z);r=S(r*f);p=S(p*t);G=S(r+p);P[d+8>>2]=j+S(n+G);a=L[d+4>>2];L[c>>2]=L[d>>2];L[c+4>>2]=a;a=L[d+12>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=a;y=S(e*f);p=S(y+p);H=S(n+p);o=S(e*o);w=S(o+w);f=S(m+S(g+w));s=S(e*l);x=S(s+x);e=S(k+S(h+x));if(e>2]){P[c>>2]=e}if(f>2]){P[c+4>>2]=f}l=S(H+j);if(l>2]){P[c+8>>2]=l}if(P[c+12>>2]>S(0)){L[c+12>>2]=0}if(e>P[d>>2]){P[d>>2]=e}if(f>P[d+4>>2]){P[d+4>>2]=f}if(l>P[d+8>>2]){P[d+8>>2]=l}if(P[d+12>>2]>2]=0}l=S(i*u);u=S(s+l);f=S(S(h+u)+k);if(f>2]){P[c>>2]=f}s=o;o=S(i*v);v=S(s+o);e=S(S(g+v)+m);if(e>2]){P[c+4>>2]=e}t=S(i*t);y=S(y+t);i=S(S(n+y)+j);if(i>2]){P[c+8>>2]=i}if(P[c+12>>2]>S(0)){L[c+12>>2]=0}if(f>P[d>>2]){P[d>>2]=f}if(e>P[d+4>>2]){P[d+4>>2]=e}if(i>P[d+8>>2]){P[d+8>>2]=i}if(P[d+12>>2]>2]=0}l=S(E+l);f=S(S(h+l)+k);if(f>2]){P[c>>2]=f}o=S(C+o);e=S(S(g+o)+m);if(e>2]){P[c+4>>2]=e}s=n;n=S(r+t);i=S(S(s+n)+j);if(i>2]){P[c+8>>2]=i}if(P[c+12>>2]>S(0)){L[c+12>>2]=0}if(f>P[d>>2]){P[d>>2]=f}if(e>P[d+4>>2]){P[d+4>>2]=e}if(i>P[d+8>>2]){P[d+8>>2]=i}if(P[d+12>>2]>2]=0}f=S(q*A);e=S(S(f+F)+k);if(e>2]){P[c>>2]=e}i=S(q*B);g=S(S(i+D)+m);if(g>2]){P[c+4>>2]=g}q=S(q*z);h=S(S(q+G)+j);if(h>2]){P[c+8>>2]=h}if(P[c+12>>2]>S(0)){L[c+12>>2]=0}if(e>P[d>>2]){P[d>>2]=e}if(g>P[d+4>>2]){P[d+4>>2]=g}if(h>P[d+8>>2]){P[d+8>>2]=h}if(P[d+12>>2]>2]=0}e=S(S(f+x)+k);if(e>2]){P[c>>2]=e}g=S(S(i+w)+m);if(g>2]){P[c+4>>2]=g}h=S(S(q+p)+j);if(h>2]){P[c+8>>2]=h}if(P[c+12>>2]>S(0)){L[c+12>>2]=0}if(e>P[d>>2]){P[d>>2]=e}if(g>P[d+4>>2]){P[d+4>>2]=g}if(h>P[d+8>>2]){P[d+8>>2]=h}if(P[d+12>>2]>2]=0}e=S(S(f+u)+k);if(e>2]){P[c>>2]=e}g=S(S(i+v)+m);if(g>2]){P[c+4>>2]=g}h=S(S(q+y)+j);if(h>2]){P[c+8>>2]=h}if(P[c+12>>2]>S(0)){L[c+12>>2]=0}if(e>P[d>>2]){P[d>>2]=e}if(g>P[d+4>>2]){P[d+4>>2]=g}if(h>P[d+8>>2]){P[d+8>>2]=h}if(P[d+12>>2]>2]=0}k=S(S(f+l)+k);if(k>2]){P[c>>2]=k}m=S(S(i+o)+m);if(m>2]){P[c+4>>2]=m}j=S(S(q+n)+j);if(j>2]){P[c+8>>2]=j}if(P[c+12>>2]>S(0)){L[c+12>>2]=0}if(k>P[d>>2]){P[d>>2]=k}if(m>P[d+4>>2]){P[d+4>>2]=m}if(j>P[d+8>>2]){P[d+8>>2]=j}if(P[d+12>>2]>2]=0}}function am(){if(!M[31424]){L[7774]=1062847606;L[7775]=0;L[7772]=1042701022;L[7773]=1056964440;L[7770]=1062847606;L[7771]=0;L[7768]=-1093024784;L[7769]=1050556081;L[7766]=1062847606;L[7767]=0;L[7764]=-1093024784;L[7765]=-1096927567;L[7762]=1062847606;L[7763]=0;L[7760]=1042701022;L[7761]=-1090519208;L[7758]=1062847572;L[7759]=0;L[7756]=1057396286;L[7757]=0;L[7754]=1057396386;L[7755]=0;L[7752]=1060121912;L[7753]=1056964507;L[7750]=1057396420;L[7751]=0;L[7748]=-1098475836;L[7749]=1062148969;L[7746]=1057396386;L[7747]=0;L[7744]=-1084636143;L[7745]=0;L[7742]=1057396420;L[7743]=0;L[7740]=-1098475836;L[7741]=-1085334679;L[7738]=1057396386;L[7739]=0;L[7736]=1060121912;L[7737]=-1090519141;L[7734]=-2147483648;L[7735]=0;L[7732]=1058437413;L[7733]=1062149053;L[7730]=-2147483648;L[7731]=0;L[7728]=-2147483648;L[7729]=1065353216;L[7726]=-2147483648;L[7727]=0;L[7724]=-1089046235;L[7725]=1062149053;L[7722]=-2147483648;L[7723]=0;L[7720]=-1082951543;L[7721]=1050556148;L[7718]=-2147483648;L[7719]=0;L[7716]=-1082951543;L[7717]=-1096927500;L[7714]=0;L[7715]=0;L[7712]=-1089046235;L[7713]=-1085334595;L[7710]=0;L[7711]=0;L[7708]=0;L[7709]=-1082130432;L[7706]=0;L[7707]=0;L[7704]=1058437413;L[7705]=-1085334595;L[7702]=0;L[7703]=0;L[7700]=1064532105;L[7701]=-1096927500;L[7698]=0;L[7699]=0;L[7696]=1064532105;L[7697]=1050556148;L[7694]=-1090087228;L[7695]=0;L[7692]=1049007812;L[7693]=1062148969;L[7690]=-1090087262;L[7691]=0;L[7688]=-1087361736;L[7689]=1056964507;L[7686]=-1084636042;L[7687]=0;L[7684]=-1104782626;L[7685]=1056964440;L[7682]=-1090087262;L[7683]=0;L[7680]=-1087361736;L[7681]=-1090519141;L[7678]=-1084636076;L[7679]=0;L[7676]=-1090087362;L[7677]=-2147483648;L[7674]=-1090087262;L[7675]=0;L[7672]=1062847505;L[7673]=-2147483648;L[7670]=-1084636042;L[7671]=0;L[7668]=1054458864;L[7669]=1050556081;L[7666]=-1090087228;L[7667]=0;L[7664]=1049007812;L[7665]=-1085334679;L[7662]=-1084636042;L[7663]=0;L[7660]=-1104782626;L[7661]=-1090519208;L[7658]=-1084636042;L[7659]=0;L[7656]=1054458864;L[7657]=-1096927567;L[7654]=1065353216;L[7655]=0;L[7652]=-2147483648;L[7653]=0;L[7650]=1055193471;L[7651]=0;L[7648]=1063581978;L[7649]=0;L[7646]=1055193572;L[7647]=0;L[7644]=1049461434;L[7645]=1062847522;L[7642]=1055193572;L[7643]=0;L[7640]=-1086767520;L[7641]=1057396202;L[7638]=1055193572;L[7639]=0;L[7636]=-1086767520;L[7637]=-1090087446;L[7634]=1055193605;L[7635]=0;L[7632]=1049461434;L[7633]=-1084636126;L[7630]=-1092290076;L[7631]=0;L[7628]=1060716128;L[7629]=1057396202;L[7626]=-1092290043;L[7627]=0;L[7624]=-1098022214;L[7625]=1062847522;L[7622]=-1092290177;L[7623]=0;L[7620]=-1083901670;L[7621]=-2147483648;L[7618]=-1092290076;L[7619]=0;L[7616]=-1098022214;L[7617]=-1084636126;L[7614]=-1092290076;L[7615]=0;L[7612]=1060716128;L[7613]=-1090087446;L[7610]=-1082130432;L[7611]=0;L[7608]=0;L[7609]=-2147483648;J[31424]=1}}function Ie(){if(!M[32448]){L[8030]=1062847606;L[8031]=0;L[8028]=1042701022;L[8029]=1056964440;L[8026]=1062847606;L[8027]=0;L[8024]=-1093024784;L[8025]=1050556081;L[8022]=1062847606;L[8023]=0;L[8020]=-1093024784;L[8021]=-1096927567;L[8018]=1062847606;L[8019]=0;L[8016]=1042701022;L[8017]=-1090519208;L[8014]=1062847572;L[8015]=0;L[8012]=1057396286;L[8013]=0;L[8010]=1057396386;L[8011]=0;L[8008]=1060121912;L[8009]=1056964507;L[8006]=1057396420;L[8007]=0;L[8004]=-1098475836;L[8005]=1062148969;L[8002]=1057396386;L[8003]=0;L[8e3]=-1084636143;L[8001]=0;L[7998]=1057396420;L[7999]=0;L[7996]=-1098475836;L[7997]=-1085334679;L[7994]=1057396386;L[7995]=0;L[7992]=1060121912;L[7993]=-1090519141;L[7990]=-2147483648;L[7991]=0;L[7988]=1058437413;L[7989]=1062149053;L[7986]=-2147483648;L[7987]=0;L[7984]=-2147483648;L[7985]=1065353216;L[7982]=-2147483648;L[7983]=0;L[7980]=-1089046235;L[7981]=1062149053;L[7978]=-2147483648;L[7979]=0;L[7976]=-1082951543;L[7977]=1050556148;L[7974]=-2147483648;L[7975]=0;L[7972]=-1082951543;L[7973]=-1096927500;L[7970]=0;L[7971]=0;L[7968]=-1089046235;L[7969]=-1085334595;L[7966]=0;L[7967]=0;L[7964]=0;L[7965]=-1082130432;L[7962]=0;L[7963]=0;L[7960]=1058437413;L[7961]=-1085334595;L[7958]=0;L[7959]=0;L[7956]=1064532105;L[7957]=-1096927500;L[7954]=0;L[7955]=0;L[7952]=1064532105;L[7953]=1050556148;L[7950]=-1090087228;L[7951]=0;L[7948]=1049007812;L[7949]=1062148969;L[7946]=-1090087262;L[7947]=0;L[7944]=-1087361736;L[7945]=1056964507;L[7942]=-1084636042;L[7943]=0;L[7940]=-1104782626;L[7941]=1056964440;L[7938]=-1090087262;L[7939]=0;L[7936]=-1087361736;L[7937]=-1090519141;L[7934]=-1084636076;L[7935]=0;L[7932]=-1090087362;L[7933]=-2147483648;L[7930]=-1090087262;L[7931]=0;L[7928]=1062847505;L[7929]=-2147483648;L[7926]=-1084636042;L[7927]=0;L[7924]=1054458864;L[7925]=1050556081;L[7922]=-1090087228;L[7923]=0;L[7920]=1049007812;L[7921]=-1085334679;L[7918]=-1084636042;L[7919]=0;L[7916]=-1104782626;L[7917]=-1090519208;L[7914]=-1084636042;L[7915]=0;L[7912]=1054458864;L[7913]=-1096927567;L[7910]=1065353216;L[7911]=0;L[7908]=-2147483648;L[7909]=0;L[7906]=1055193471;L[7907]=0;L[7904]=1063581978;L[7905]=0;L[7902]=1055193572;L[7903]=0;L[7900]=1049461434;L[7901]=1062847522;L[7898]=1055193572;L[7899]=0;L[7896]=-1086767520;L[7897]=1057396202;L[7894]=1055193572;L[7895]=0;L[7892]=-1086767520;L[7893]=-1090087446;L[7890]=1055193605;L[7891]=0;L[7888]=1049461434;L[7889]=-1084636126;L[7886]=-1092290076;L[7887]=0;L[7884]=1060716128;L[7885]=1057396202;L[7882]=-1092290043;L[7883]=0;L[7880]=-1098022214;L[7881]=1062847522;L[7878]=-1092290177;L[7879]=0;L[7876]=-1083901670;L[7877]=-2147483648;L[7874]=-1092290076;L[7875]=0;L[7872]=-1098022214;L[7873]=-1084636126;L[7870]=-1092290076;L[7871]=0;L[7868]=1060716128;L[7869]=-1090087446;L[7866]=-1082130432;L[7867]=0;L[7864]=0;L[7865]=-2147483648;J[32448]=1}}function jg(a,b){var c=0,d=S(0),e=0,f=S(0),g=S(0),h=S(0),i=0,j=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=S(0),t=S(0),u=S(0),v=S(0),w=S(0),x=S(0),y=0,z=0,A=0,B=S(0),C=S(0);i=fa-32|0;fa=i;c=L[a+192>>2];d=S(ha[L[L[c>>2]+48>>2]](c));j=L[a+712>>2];if((j|0)>0){k=a+928|0;while(1){l=P[b+48>>2];m=P[b+8>>2];n=P[b+4>>2];o=P[b>>2];p=P[b+52>>2];q=P[b+24>>2];r=P[b+20>>2];s=P[b+16>>2];f=P[b+56>>2];h=P[b+40>>2];g=P[b+36>>2];t=P[b+32>>2];c=L[a+720>>2]+R(e,104)|0;L[c+20>>2]=0;w=f;f=P[c+16>>2];u=S(h*f);h=P[c+8>>2];v=g;g=P[c+12>>2];t=S(w+S(u+S(S(t*h)+S(v*g))));P[c+16>>2]=t;p=S(p+S(S(f*q)+S(S(h*s)+S(g*r))));P[c+12>>2]=p;l=S(l+S(S(f*m)+S(S(h*o)+S(g*n))));P[c+8>>2]=l;m=P[b+48>>2];n=P[b+8>>2];o=P[b>>2];q=P[b+4>>2];r=P[b+52>>2];s=P[b+24>>2];v=P[b+16>>2];u=P[b+20>>2];f=P[b+56>>2];h=P[b+40>>2];g=P[b+32>>2];x=P[b+36>>2];L[c+36>>2]=0;w=f;f=P[c+32>>2];B=S(h*f);h=P[c+24>>2];C=S(g*h);g=P[c+28>>2];P[c+32>>2]=w+S(B+S(C+S(x*g)));P[c+28>>2]=r+S(S(f*s)+S(S(h*v)+S(g*u)));P[c+24>>2]=m+S(S(f*n)+S(S(h*o)+S(g*q)));f=P[c+80>>2];h=P[c+72>>2];g=P[c+76>>2];m=P[b+8>>2];n=P[b>>2];o=P[b+4>>2];q=P[b+24>>2];r=P[b+16>>2];s=P[b+20>>2];v=P[b+40>>2];u=P[b+32>>2];x=P[b+36>>2];L[c+84>>2]=0;P[c+80>>2]=S(v*f)+S(S(u*h)+S(g*x));P[c+76>>2]=S(q*f)+S(S(r*h)+S(g*s));P[c+72>>2]=S(m*f)+S(S(n*h)+S(o*g));L[i+28>>2]=0;P[i+24>>2]=d+t;P[i+20>>2]=d+p;P[i+16>>2]=d+l;L[i+12>>2]=0;P[i+8>>2]=t-d;P[i+4>>2]=p-d;P[i>>2]=l-d;Gc(k,L[c+96>>2],i);e=e+1|0;if((j|0)!=(e|0)){continue}break}}ig(a);c=L[a+928>>2];a:{if(c){e=L[a+192>>2];d=S(ha[L[L[e>>2]+48>>2]](e));f=P[c>>2];h=P[c+4>>2];g=P[c+8>>2];L[a+904>>2]=0;P[a+900>>2]=g-d;P[a+896>>2]=h-d;P[a+892>>2]=f-d;f=P[c+20>>2];h=P[c+24>>2];g=P[c+16>>2];L[a+920>>2]=0;P[a+916>>2]=d+h;P[a+912>>2]=d+f;c=a+908|0;P[c>>2]=d+g;e=L[a+188>>2];if(!e){break a}j=L[a+684>>2];k=L[j+32>>2];ha[L[L[k>>2]+16>>2]](k,e,a+892|0,c,L[j+36>>2]);break a}L[a+892>>2]=0;L[a+896>>2]=0;L[a+916>>2]=0;L[a+920>>2]=0;L[a+908>>2]=0;L[a+912>>2]=0;L[a+900>>2]=0;L[a+904>>2]=0}k=L[a+732>>2];if((k|0)>0){A=L[a+740>>2];e=0;c=0;while(1){j=R(c,52)+A|0;y=L[j+8>>2];z=L[j+12>>2];d=S(P[y+16>>2]-P[z+16>>2]);f=S(d*d);d=S(P[y+8>>2]-P[z+8>>2]);g=S(d*d);d=S(P[y+12>>2]-P[z+12>>2]);d=S(_(S(f+S(g+S(d*d)))));P[j+16>>2]=d;P[j+28>>2]=d*d;c=c+1|0;if((k|0)!=(c|0)){continue}break}while(1){c=R(e,52)+A|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];e=e+1|0;if((k|0)!=(e|0)){continue}break}}hg(a);e=L[b+12>>2];c=a+1156|0;L[c>>2]=L[b+8>>2];L[c+4>>2]=e;c=L[b+4>>2];L[a+1148>>2]=L[b>>2];L[a+1152>>2]=c;e=L[b+28>>2];c=a+1172|0;L[c>>2]=L[b+24>>2];L[c+4>>2]=e;e=L[b+20>>2];c=a+1164|0;L[c>>2]=L[b+16>>2];L[c+4>>2]=e;e=L[b+36>>2];c=a+1180|0;L[c>>2]=L[b+32>>2];L[c+4>>2]=e;e=L[b+44>>2];c=a+1188|0;L[c>>2]=L[b+40>>2];L[c+4>>2]=e;e=L[b+60>>2];c=a+1204|0;L[c>>2]=L[b+56>>2];L[c+4>>2]=e;c=L[b+52>>2];a=a+1196|0;L[a>>2]=L[b+48>>2];L[a+4>>2]=c;fa=i+32|0}function Ke(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=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=S(0),A=S(0),B=S(0),C=S(0),D=0,E=S(0);f=S(-1);l=P[a>>2];i=P[b>>2];g=S(l-i);k=P[b+4>>2];u=P[c+4>>2];z=S(k-u);v=P[c>>2];A=S(i-v);q=P[a+4>>2];j=S(q-k);m=S(S(g*z)-S(A*j));h=P[b+8>>2];w=P[c+8>>2];B=S(h-w);r=P[a+8>>2];o=S(r-h);x=S(S(j*B)-S(z*o));y=S(S(o*A)-S(B*g));E=S(S(m*m)+S(S(x*x)+S(y*y)));a:{if(!(E>S(0))){break a}b:{if(!(S(S(r*S(S(g*y)+S(x*S(-j))))+S(S(l*S(S(j*m)+S(y*S(-o))))+S(q*S(S(o*x)+S(m*S(-g))))))>S(0))){j=S(-1);g=S(0);break b}j=S(-1);o=S(h-r);n=S(i-l);p=S(k-q);f=S(S(o*o)+S(S(n*n)+S(p*p)));c:{if(!(f>S(0))){g=S(0);s=0;break c}g=S(1);f=S(S(-S(S(r*o)+S(S(l*n)+S(q*p))))/f);if(f>=S(1)){j=S(S(h*h)+S(S(i*i)+S(k*k)));D=2;s=2;break c}g=S(0);if(f<=S(0)){j=S(S(r*r)+S(S(l*l)+S(q*q)));t=S(1);s=1;break c}g=S(r+S(o*f));j=S(g*g);g=S(l+S(n*f));i=S(g*g);g=S(q+S(p*f));j=S(j+S(i+S(g*g)));t=S(S(1)-f);D=2;g=f;s=3}L[e>>2]=s&1|D;L[d+8>>2]=0;P[d+4>>2]=g;P[d>>2]=t;h=P[b+8>>2];k=P[b+4>>2];i=P[b>>2]}r=S(w-r);q=S(u-q);o=S(v-l);d:{if(!(S(S(h*S(S(A*y)-S(x*z)))+S(S(i*S(S(z*m)-S(y*B)))+S(k*S(S(B*x)-S(m*A)))))>S(0))){f=j;break d}D=j>2];l=S(u-h);v=P[c>>2];n=S(v-i);w=P[c+4>>2];p=S(w-k);C=S(S(l*l)+S(S(n*n)+S(p*p)));f=S(-1);e:{if(!(C>S(0))){break e}g=S(1);f=S(S(-S(S(h*l)+S(S(i*n)+S(k*p))))/C);if(f>=S(1)){t=S(0);s=2;f=S(S(u*u)+S(S(v*v)+S(w*w)));break e}g=S(0);if(f<=S(0)){t=S(1);s=1;f=S(S(h*h)+S(S(i*i)+S(k*k)));break e}t=S(S(1)-f);s=3;g=f;h=S(h+S(l*f));i=S(i+S(n*f));f=S(k+S(p*f));f=S(S(h*h)+S(S(i*i)+S(f*f)))}if(!(D|j>f)){f=j;break d}L[e>>2]=s<<1;P[d+8>>2]=g;P[d+4>>2]=t;L[d>>2]=0}k=P[c+8>>2];h=P[c>>2];l=P[c+4>>2];f:{if(!(S(S(k*S(S(o*y)-S(x*q)))+S(S(h*S(S(q*m)-S(y*r)))+S(l*S(S(r*x)-S(m*o)))))>S(0))){break f}i=S(-1);v=P[a+8>>2];n=S(v-k);w=P[a>>2];p=S(w-h);C=P[a+4>>2];u=S(C-l);j=S(S(n*n)+S(S(p*p)+S(u*u)));g:{if(!(j>S(0))){break g}g=S(1);j=S(S(-S(S(k*n)+S(S(h*p)+S(l*u))))/j);if(j>=S(1)){i=S(S(v*v)+S(S(w*w)+S(C*C)));t=S(0);s=2;break g}g=S(0);if(j<=S(0)){i=S(S(k*k)+S(S(h*h)+S(l*l)));t=S(1);s=1;break g}g=S(k+S(n*j));i=S(g*g);g=S(h+S(p*j));h=S(g*g);g=S(l+S(u*j));i=S(i+S(h+S(g*g)));t=S(S(1)-j);s=3;g=j}if(!(fi)){break f}L[e>>2]=s<<2&4|s>>>1;L[d+4>>2]=0;P[d>>2]=g;P[d+8>>2]=t;f=i}if(!(f>2];g=P[a>>2];j=P[a+4>>2];L[e>>2]=7;j=S(S(S(f*m)+S(S(g*x)+S(y*j)))/E);f=S(y*j);i=S(P[b+4>>2]-f);g=S(x*j);k=S(P[b>>2]-g);h=S(S(A*i)+S(k*S(-z)));l=S(h*h);j=S(m*j);h=S(P[b+8>>2]-j);i=S(S(z*h)+S(i*S(-B)));m=S(i*i);i=S(S(B*k)+S(h*S(-A)));h=S(_(S(l+S(m+S(i*i)))));i=S(_(E));k=S(h/i);P[d>>2]=k;h=S(P[c+4>>2]-f);t=S(P[c>>2]-g);m=S(S(o*h)+S(t*S(-q)));l=S(m*m);m=S(P[c+8>>2]-j);h=S(S(q*m)+S(h*S(-r)));n=S(h*h);h=S(S(r*t)+S(m*S(-o)));i=S(S(_(S(l+S(n+S(h*h)))))/i);P[d+4>>2]=i;P[d+8>>2]=S(1)-S(k+i);f=S(S(j*j)+S(S(g*g)+S(f*f)))}return f}function Ro(a,b,c,d,e,f){a=a|0;b=S(b);c=S(c);d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=fa-480|0;fa=g;L[g+476>>2]=a;P[g+472>>2]=b;P[g+468>>2]=c;L[g+464>>2]=d;L[g+460>>2]=e;L[g+456>>2]=f;a=L[g+476>>2];L[g+452>>2]=30;P[g+432>>2]=0;P[g+428>>2]=0;P[g+424>>2]=0;e=g+436|0;la(e,g+432|0,g+428|0,g+424|0);b=S(-P[g+468>>2]);d=fa-16|0;L[d+12>>2]=e;P[L[d+12>>2]+(L[g+464>>2]<<2)>>2]=b;P[g+404>>2]=0;P[g+400>>2]=0;P[g+396>>2]=0;f=g+408|0;la(f,g+404|0,g+400|0,g+396|0);b=P[g+468>>2];d=fa-16|0;L[d+12>>2]=f;P[L[d+12>>2]+(L[g+464>>2]<<2)>>2]=b;d=g+332|0;Yb(d,L[g+460>>2]);xa(g+316|0,L[g+460>>2],e);e=fa-16|0;L[e+12>>2]=d;h=L[g+320>>2];e=L[e+12>>2]+48|0;L[e>>2]=L[g+316>>2];L[e+4>>2]=h;h=L[g+328>>2];L[e+8>>2]=L[g+324>>2];L[e+12>>2]=h;e=fa-16|0;L[e+12>>2]=d;e=L[e+12>>2]+48|0;h=L[e+12>>2];L[g+304>>2]=L[e+8>>2];L[g+308>>2]=h;h=L[e+4>>2];L[g+296>>2]=L[e>>2];L[g+300>>2]=h;e=fa-16|0;L[e+12>>2]=d;h=g+280|0;nc(h,L[e+12>>2],(L[g+464>>2]+1|0)%3|0);e=fa-16|0;L[e+12>>2]=d;d=g+248|0;nc(d,L[e+12>>2],L[g+464>>2]);e=g+264|0;Zb(e,d);P[g+244>>2]=-1.5707963705062866;P[g+240>>2]=1.5707963705062866;P[g+236>>2]=-1.5707963705062866;P[g+232>>2]=1.5707963705062866;ha[L[L[a>>2]+64>>2]](a,g+296|0,h,e,P[g+472>>2],P[g+244>>2],P[g+240>>2],P[g+236>>2],P[g+232>>2],L[g+456>>2],S(L[g+452>>2]),0);d=g+168|0;Yb(d,L[g+460>>2]);xa(g+152|0,L[g+460>>2],f);e=fa-16|0;L[e+12>>2]=d;f=L[g+156>>2];e=L[e+12>>2]+48|0;L[e>>2]=L[g+152>>2];L[e+4>>2]=f;f=L[g+164>>2];L[e+8>>2]=L[g+160>>2];L[e+12>>2]=f;e=fa-16|0;L[e+12>>2]=d;e=L[e+12>>2]+48|0;f=L[e+12>>2];L[g+144>>2]=L[e+8>>2];L[g+148>>2]=f;f=L[e+4>>2];L[g+136>>2]=L[e>>2];L[g+140>>2]=f;e=fa-16|0;L[e+12>>2]=d;f=g+120|0;nc(f,L[e+12>>2],(L[g+464>>2]+1|0)%3|0);e=fa-16|0;L[e+12>>2]=d;d=g+104|0;nc(d,L[e+12>>2],L[g+464>>2]);P[g+100>>2]=-1.5707963705062866;P[g+96>>2]=1.5707963705062866;P[g+92>>2]=-1.5707963705062866;P[g+88>>2]=1.5707963705062866;ha[L[L[a>>2]+64>>2]](a,g+136|0,f,d,P[g+472>>2],P[g+100>>2],P[g+96>>2],P[g+92>>2],P[g+88>>2],L[g+456>>2],S(L[g+452>>2]),0);d=fa-16|0;L[d+12>>2]=L[g+460>>2];d=L[d+12>>2]+48|0;e=L[d+12>>2];L[g+80>>2]=L[d+8>>2];L[g+84>>2]=e;e=L[d+4>>2];L[g+72>>2]=L[d>>2];L[g+76>>2]=e;L[g+68>>2]=0;while(1){if(L[g+68>>2]<360){b=S(Qa(S(S(L[g+68>>2])*S(.01745329238474369)))*P[g+472>>2]);d=fa-16|0;e=g+436|0;L[d+12>>2]=e;P[L[d+12>>2]+((L[g+464>>2]+1|0)%3<<2)>>2]=b;f=g+408|0;L[d+12>>2]=f;P[L[d+12>>2]+((L[g+464>>2]+1|0)%3<<2)>>2]=b;b=S(Ra(S(S(L[g+68>>2])*S(.01745329238474369)))*P[g+472>>2]);d=fa-16|0;L[d+12>>2]=e;P[L[d+12>>2]+((L[g+464>>2]+2|0)%3<<2)>>2]=b;d=fa-16|0;L[d+12>>2]=f;P[L[d+12>>2]+((L[g+464>>2]+2|0)%3<<2)>>2]=b;d=fa-16|0;L[d+12>>2]=L[g+460>>2];h=g+36|0;ua(h,L[d+12>>2],e);d=g+52|0;e=g+72|0;ta(d,e,h);h=fa-16|0;L[h+12>>2]=L[g+460>>2];i=g+4|0;ua(i,L[h+12>>2],f);f=g+20|0;ta(f,e,i);ha[L[L[a>>2]+8>>2]](a,d,f,L[g+456>>2]);L[g+68>>2]=L[g+452>>2]+L[g+68>>2];continue}break}fa=g+480|0}function ra(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;a:{if(!a){break a}d=a-8|0;b=L[a-4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=L[d>>2];d=d-b|0;if(d>>>0>>0<=255){b=b>>>3|0;e=L[d+12>>2];c=L[d+8>>2];if((e|0)==(c|0)){L[8530]=L[8530]&nI(b);break b}L[c+12>>2]=e;L[e+8>>2]=c;break b}h=L[d+24>>2];b=L[d+12>>2];c:{if((d|0)!=(b|0)){c=L[d+8>>2];L[c+12>>2]=b;L[b+8>>2]=c;break c}d:{e=d+20|0;c=L[e>>2];if(c){break d}e=d+16|0;c=L[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=L[e>>2];if(c){continue}e=b+16|0;c=L[b+16>>2];if(c){continue}break}L[g>>2]=0}if(!h){break b}e=L[d+28>>2];c=(e<<2)+34424|0;e:{if(L[c>>2]==(d|0)){L[c>>2]=b;if(b){break e}L[8531]=L[8531]&nI(e);break b}L[h+(L[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}L[b+24>>2]=h;c=L[d+16>>2];if(c){L[b+16>>2]=c;L[c+24>>2]=b}c=L[d+20>>2];if(!c){break b}L[b+20>>2]=c;L[c+24>>2]=b;break b}b=L[f+4>>2];if((b&3)!=3){break b}L[8532]=a;L[f+4>>2]=b&-2;L[d+4>>2]=a|1;L[a+d>>2]=a;return}if(d>>>0>=f>>>0){break a}b=L[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if(L[8536]==(f|0)){L[8536]=d;a=L[8533]+a|0;L[8533]=a;L[d+4>>2]=a|1;if(L[8535]!=(d|0)){break a}L[8532]=0;L[8535]=0;return}if(L[8535]==(f|0)){L[8535]=d;a=L[8532]+a|0;L[8532]=a;L[d+4>>2]=a|1;L[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){b=b>>>3|0;e=L[f+12>>2];c=L[f+8>>2];if((e|0)==(c|0)){L[8530]=L[8530]&nI(b);break g}L[c+12>>2]=e;L[e+8>>2]=c;break g}h=L[f+24>>2];b=L[f+12>>2];h:{if((f|0)!=(b|0)){c=L[f+8>>2];L[c+12>>2]=b;L[b+8>>2]=c;break h}i:{e=f+20|0;c=L[e>>2];if(c){break i}e=f+16|0;c=L[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=L[e>>2];if(c){continue}e=b+16|0;c=L[b+16>>2];if(c){continue}break}L[g>>2]=0}if(!h){break g}e=L[f+28>>2];c=(e<<2)+34424|0;j:{if(L[c>>2]==(f|0)){L[c>>2]=b;if(b){break j}L[8531]=L[8531]&nI(e);break g}L[h+(L[h+16>>2]==(f|0)?16:20)>>2]=b;if(!b){break g}}L[b+24>>2]=h;c=L[f+16>>2];if(c){L[b+16>>2]=c;L[c+24>>2]=b}c=L[f+20>>2];if(!c){break g}L[b+20>>2]=c;L[c+24>>2]=b}L[d+4>>2]=a|1;L[a+d>>2]=a;if(L[8535]!=(d|0)){break f}L[8532]=a;return}L[f+4>>2]=b&-2;L[d+4>>2]=a|1;L[a+d>>2]=a}if(a>>>0<=255){b=(a&-8)+34160|0;c=L[8530];a=1<<(a>>>3);k:{if(!(c&a)){L[8530]=a|c;a=b;break k}a=L[b+8>>2]}L[b+8>>2]=d;L[a+12>>2]=d;L[d+12>>2]=b;L[d+8>>2]=a;return}e=31;if(a>>>0<=16777215){b=U(a>>>8|0);e=((a>>>38-b&1)-(b<<1)|0)+62|0}L[d+28>>2]=e;L[d+16>>2]=0;L[d+20>>2]=0;g=(e<<2)+34424|0;l:{m:{c=L[8531];b=1<>2]=d;L[d+24>>2]=g;break n}e=a<<((e|0)!=31?25-(e>>>1|0)|0:0);b=L[g>>2];while(1){c=b;if((L[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=c+(b&4)|0;b=L[g+16>>2];if(b){continue}break}L[g+16>>2]=d;L[d+24>>2]=c}L[d+12>>2]=d;L[d+8>>2]=d;break l}a=L[c+8>>2];L[a+12>>2]=d;L[c+8>>2]=d;L[d+24>>2]=0;L[d+12>>2]=c;L[d+8>>2]=a}a=L[8538]-1|0;L[8538]=a?a:-1}}function tz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=S(0),g=S(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=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),J=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),$=S(0),aa=S(0),ba=S(0),ca=S(0),da=S(0),ea=S(0),ga=S(0),ia=S(0),ja=S(0),ka=S(0),la=S(0);d=fa-240|0;fa=d;U=S(1);e=M[a+8|0];a=e?c:b;k=P[a+60>>2];g=S(P[a+124>>2]-k);f=S(g*g);i=P[a+116>>2];u=P[a+52>>2];g=S(i-u);j=S(g*g);w=P[a+56>>2];g=S(P[a+120>>2]-w);f=S(f+S(j+S(g*g)));g=P[a+252>>2];a:{if(f>2];if(L[c+4>>2]-21>>>0>8){break a}h=P[b+12>>2];v=S(-P[b+52>>2]);f=P[b+28>>2];j=P[b+56>>2];l=P[b+44>>2];m=P[b+60>>2];V=S(S(S(h*v)-S(f*j))-S(l*m));n=P[a+124>>2];x=P[a+120>>2];X=S(S(n*l)+S(S(i*h)+S(f*x)));o=P[b+8>>2];p=P[b+24>>2];q=P[b+40>>2];W=S(S(S(o*v)-S(p*j))-S(q*m));g=S(W+S(S(n*q)+S(S(i*o)+S(p*x))));r=P[b+36>>2];y=P[a+92>>2];Y=S(f*y);z=P[a+76>>2];Z=S(z*h);A=P[a+108>>2];B=P[a+88>>2];_=S(f*B);C=P[a+72>>2];$=S(C*h);D=P[a+104>>2];E=P[a+84>>2];aa=S(f*E);F=P[a+68>>2];ba=S(F*h);G=P[a+100>>2];s=P[b+4>>2];ca=S(z*s);t=P[b+20>>2];da=S(t*y);H=P[a+28>>2];ea=S(f*H);I=P[a+12>>2];ga=S(I*h);J=P[a+44>>2];K=P[a+24>>2];ia=S(f*K);N=P[a+8>>2];ja=S(N*h);O=P[a+40>>2];Q=P[a+20>>2];ka=S(f*Q);R=P[a+4>>2];la=S(R*h);T=P[a+36>>2];L[d+236>>2]=0;j=S(S(S(s*v)-S(t*j))-S(r*m));m=S(j+S(S(k*r)+S(S(u*s)+S(t*w))));v=m;i=S(j+S(S(n*r)+S(S(i*s)+S(t*x))));if(i>2]=i;v=i}n=S(W+S(S(k*q)+S(S(u*o)+S(p*w))));j=n;if(g>2]=g;j=g}k=S(V+S(S(k*l)+S(S(u*h)+S(f*w))));f=k;h=S(V+X);if(f>h){P[d+232>>2]=h;f=h}L[d+220>>2]=0;u=f;f=P[a+248>>2];P[d+232>>2]=u-f;P[d+228>>2]=j-f;P[d+224>>2]=v-f;P[d+216>>2]=f+(h>k?h:k);P[d+212>>2]=f+(g>n?g:n);P[d+208>>2]=f+(i>m?i:m);L[d+132>>2]=0;P[d+128>>2]=h;P[d+124>>2]=g;P[d+120>>2]=i;L[d+116>>2]=0;P[d+112>>2]=S(A*l)+S(Z+Y);P[d+108>>2]=S(D*l)+S($+_);P[d+104>>2]=S(G*l)+S(ba+aa);L[d+100>>2]=0;P[d+96>>2]=S(A*q)+S(S(z*o)+S(p*y));P[d+92>>2]=S(D*q)+S(S(C*o)+S(p*B));P[d+88>>2]=S(G*q)+S(S(F*o)+S(p*E));L[d+84>>2]=0;P[d+80>>2]=S(A*r)+S(ca+da);P[d+76>>2]=S(D*r)+S(S(C*s)+S(t*B));L[d+68>>2]=0;P[d- -64>>2]=k;P[d+60>>2]=n;P[d+56>>2]=m;L[d+52>>2]=0;P[d+48>>2]=S(J*l)+S(ga+ea);P[d+44>>2]=S(O*l)+S(ja+ia);P[d+40>>2]=S(T*l)+S(la+ka);L[d+36>>2]=0;P[d+32>>2]=S(J*q)+S(S(I*o)+S(p*H));P[d+28>>2]=S(O*q)+S(S(N*o)+S(p*K));P[d+24>>2]=S(T*q)+S(S(R*o)+S(p*Q));L[d+20>>2]=0;P[d+16>>2]=S(J*r)+S(S(I*s)+S(t*H));P[d+12>>2]=S(O*r)+S(S(N*s)+S(t*K));P[d+200>>2]=f;P[d+72>>2]=S(G*r)+S(S(F*s)+S(t*E));P[d+8>>2]=S(T*r)+S(S(R*s)+S(t*Q));L[d+4>>2]=22104;P[d+204>>2]=P[a+244>>2];ha[L[L[c>>2]+64>>2]](c,d+4|0,d+224|0,d+208|0);g=P[d+204>>2];if(!(g>2])){break a}P[a+244>>2]=g;U=g}fa=d+240|0;return S(U)}function Qn(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=0,p=0,q=0,r=0,s=0,t=0;t=h;q=fa-16|0;fa=q;Kd(a,q+10|0,b,0);Kd(a,q+4|0,c,1);k=L[a+60>>2];h=a;r=N[a+64>>1];p=k+(r<<6)|0;K[a+64>>1]=N[p+48>>1];j=N[a+56>>1]+1|0;K[a+56>>1]=j;L[p+8>>2]=i;K[p+6>>1]=g;K[p+4>>1]=f;L[p>>2]=e;L[p+12>>2]=r;K[k+54>>1]=N[k+54>>1]+2;i=L[a+68>>2];k=j<<1;l=k&65534;j=l<<2;n=j|4;m=i+n|0;o=i;l=l-1|0;i=l<<2;o=o+i|0;o=N[o>>1]|N[o+2>>1]<<16;K[m>>1]=o;K[m+2>>1]=o>>>16;m=N[q+10>>1];o=L[a+68>>2];s=o+i|0;K[s+2>>1]=r;K[s>>1]=m;m=N[q+4>>1];o=j+o|0;K[o+2>>1]=r;K[o>>1]=m;K[p+54>>1]=k;K[p+48>>1]=l;m=L[a+60>>2];K[m+56>>1]=N[m+56>>1]+2;m=L[a+72>>2];o=m+n|0;m=i+m|0;m=N[m>>1]|N[m+2>>1]<<16;K[o>>1]=m;K[o+2>>1]=m>>>16;m=N[q+12>>1];o=L[a+72>>2];s=o+i|0;K[s+2>>1]=r;K[s>>1]=m;m=N[q+6>>1];o=j+o|0;K[o+2>>1]=r;K[o>>1]=m;K[p+56>>1]=k;K[p+50>>1]=l;m=L[a+60>>2];K[m+58>>1]=N[m+58>>1]+2;o=n;n=L[a+76>>2];m=o+n|0;n=i+n|0;n=N[n>>1]|N[n+2>>1]<<16;K[m>>1]=n;K[m+2>>1]=n>>>16;n=N[q+14>>1];o=i;i=L[a+76>>2];m=o+i|0;K[m+2>>1]=r;K[m>>1]=n;n=N[q+8>>1];i=i+j|0;K[i+2>>1]=r;K[i>>1]=n;K[p+58>>1]=k;K[p+52>>1]=l;i=L[a+68>>2];l=N[p+48>>1]<<2;a=i+l|0;k=a-4|0;j=N[k>>1];if(j>>>0>N[a>>1]){l=L[h+60>>2]+(N[(i+l|0)+2>>1]<<6)|0;while(1){i=a-4|0;j=(L[h+60>>2]+(N[i+2>>1]<<6)|0)+(j&1?54:48)|0;K[j>>1]=N[j>>1]+1;K[l+48>>1]=N[l+48>>1]-1;j=N[a>>1]|N[a+2>>1]<<16;n=N[k>>1]|N[k+2>>1]<<16;K[a>>1]=n;K[a+2>>1]=n>>>16;K[k>>1]=j;K[k+2>>1]=j>>>16;k=k-4|0;j=N[k>>1];a=i;if(j>>>0>N[a>>1]){continue}break}i=L[h+68>>2]}l=N[p+54>>1];a=(l<<2)+i|0;k=a-4|0;j=N[k>>1];if(j>>>0>N[a>>1]){l=L[h+60>>2]+(N[((l<<2)+i|0)+2>>1]<<6)|0;while(1){i=a-4|0;j=(L[h+60>>2]+(N[i+2>>1]<<6)|0)+(j&1?54:48)|0;K[j>>1]=N[j>>1]+1;K[l+54>>1]=N[l+54>>1]-1;j=N[a>>1]|N[a+2>>1]<<16;n=N[k>>1]|N[k+2>>1]<<16;K[a>>1]=n;K[a+2>>1]=n>>>16;K[k>>1]=j;K[k+2>>1]=j>>>16;k=k-4|0;j=N[k>>1];a=i;if(j>>>0>N[a>>1]){continue}break}}i=L[h+72>>2];l=N[p+50>>1]<<2;a=i+l|0;k=a-4|0;j=N[k>>1];if(j>>>0>N[a>>1]){l=L[h+60>>2]+(N[(i+l|0)+2>>1]<<6)|0;while(1){i=a-4|0;j=(L[h+60>>2]+(N[i+2>>1]<<6)|0)+(j&1?54:48)|0;K[j+2>>1]=N[j+2>>1]+1;K[l+50>>1]=N[l+50>>1]-1;j=N[a>>1]|N[a+2>>1]<<16;n=N[k>>1]|N[k+2>>1]<<16;K[a>>1]=n;K[a+2>>1]=n>>>16;K[k>>1]=j;K[k+2>>1]=j>>>16;k=k-4|0;j=N[k>>1];a=i;if(j>>>0>N[a>>1]){continue}break}i=L[h+72>>2]}l=N[p+56>>1];a=(l<<2)+i|0;k=a-4|0;j=N[k>>1];if(j>>>0>N[a>>1]){l=L[h+60>>2]+(N[((l<<2)+i|0)+2>>1]<<6)|0;while(1){i=a-4|0;j=(L[h+60>>2]+(N[i+2>>1]<<6)|0)+(j&1?54:48)|0;K[j+2>>1]=N[j+2>>1]+1;K[l+56>>1]=N[l+56>>1]-1;j=N[a>>1]|N[a+2>>1]<<16;n=N[k>>1]|N[k+2>>1]<<16;K[a>>1]=n;K[a+2>>1]=n>>>16;K[k>>1]=j;K[k+2>>1]=j>>>16;k=k-4|0;j=N[k>>1];a=i;if(j>>>0>N[a>>1]){continue}break}}Jd(h,2,N[p+52>>1]);Id(h,2,N[p+58>>1],t);fa=q+16|0;a=L[h+60>>2];h=L[h+108>>2];if(h){L[(a+(r<<6)|0)+60>>2]=ha[L[L[h>>2]+8>>2]](h,b,c,d,e,f,g,t,0)}return a+(r<<6)|0}function MG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=S(0),g=S(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=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),J=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),$=S(0),aa=S(0),ba=S(0),ca=S(0),da=S(0),ea=S(0),ga=S(0),ia=S(0),ja=S(0),ka=S(0),la=S(0);d=fa-240|0;fa=d;U=S(1);e=M[a+8|0];a=e?c:b;k=P[a+60>>2];g=S(P[a+124>>2]-k);f=S(g*g);i=P[a+116>>2];u=P[a+52>>2];g=S(i-u);j=S(g*g);w=P[a+56>>2];g=S(P[a+120>>2]-w);f=S(f+S(j+S(g*g)));g=P[a+252>>2];a:{if(f>2];if(L[c+4>>2]-21>>>0>8){break a}h=P[b+12>>2];v=S(-P[b+52>>2]);f=P[b+28>>2];j=P[b+56>>2];l=P[b+44>>2];m=P[b+60>>2];V=S(S(S(h*v)-S(f*j))-S(l*m));n=P[a+124>>2];x=P[a+120>>2];X=S(S(n*l)+S(S(i*h)+S(f*x)));o=P[b+8>>2];p=P[b+24>>2];q=P[b+40>>2];W=S(S(S(o*v)-S(p*j))-S(q*m));g=S(W+S(S(n*q)+S(S(i*o)+S(p*x))));r=P[b+36>>2];y=P[a+92>>2];Y=S(f*y);z=P[a+76>>2];Z=S(z*h);A=P[a+108>>2];B=P[a+88>>2];_=S(f*B);C=P[a+72>>2];$=S(C*h);D=P[a+104>>2];E=P[a+84>>2];aa=S(f*E);F=P[a+68>>2];ba=S(F*h);G=P[a+100>>2];s=P[b+4>>2];ca=S(z*s);t=P[b+20>>2];da=S(t*y);H=P[a+28>>2];ea=S(f*H);I=P[a+12>>2];ga=S(I*h);J=P[a+44>>2];K=P[a+24>>2];ia=S(f*K);N=P[a+8>>2];ja=S(N*h);O=P[a+40>>2];Q=P[a+20>>2];ka=S(f*Q);R=P[a+4>>2];la=S(R*h);T=P[a+36>>2];L[d+236>>2]=0;j=S(S(S(s*v)-S(t*j))-S(r*m));m=S(j+S(S(k*r)+S(S(u*s)+S(t*w))));v=m;i=S(j+S(S(n*r)+S(S(i*s)+S(t*x))));if(i>2]=i;v=i}n=S(W+S(S(k*q)+S(S(u*o)+S(p*w))));j=n;if(g>2]=g;j=g}k=S(V+S(S(k*l)+S(S(u*h)+S(f*w))));f=k;h=S(V+X);if(f>h){P[d+232>>2]=h;f=h}L[d+220>>2]=0;u=f;f=P[a+248>>2];P[d+232>>2]=u-f;P[d+228>>2]=j-f;P[d+224>>2]=v-f;P[d+216>>2]=f+(h>k?h:k);P[d+212>>2]=f+(g>n?g:n);P[d+208>>2]=f+(i>m?i:m);L[d+132>>2]=0;P[d+128>>2]=h;P[d+124>>2]=g;P[d+120>>2]=i;L[d+116>>2]=0;P[d+112>>2]=S(A*l)+S(Z+Y);P[d+108>>2]=S(D*l)+S($+_);P[d+104>>2]=S(G*l)+S(ba+aa);L[d+100>>2]=0;P[d+96>>2]=S(A*q)+S(S(z*o)+S(p*y));P[d+92>>2]=S(D*q)+S(S(C*o)+S(p*B));P[d+88>>2]=S(G*q)+S(S(F*o)+S(p*E));L[d+84>>2]=0;P[d+80>>2]=S(A*r)+S(ca+da);P[d+76>>2]=S(D*r)+S(S(C*s)+S(t*B));L[d+68>>2]=0;P[d- -64>>2]=k;P[d+60>>2]=n;P[d+56>>2]=m;L[d+52>>2]=0;P[d+48>>2]=S(J*l)+S(ga+ea);P[d+44>>2]=S(O*l)+S(ja+ia);P[d+40>>2]=S(T*l)+S(la+ka);L[d+36>>2]=0;P[d+32>>2]=S(J*q)+S(S(I*o)+S(p*H));P[d+28>>2]=S(O*q)+S(S(N*o)+S(p*K));P[d+24>>2]=S(T*q)+S(S(R*o)+S(p*Q));L[d+20>>2]=0;P[d+16>>2]=S(J*r)+S(S(I*s)+S(t*H));P[d+12>>2]=S(O*r)+S(S(N*s)+S(t*K));P[d+200>>2]=f;P[d+72>>2]=S(G*r)+S(S(F*s)+S(t*E));P[d+8>>2]=S(T*r)+S(S(R*s)+S(t*Q));L[d+4>>2]=9576;P[d+204>>2]=P[a+244>>2];ha[L[L[c>>2]+64>>2]](c,d+4|0,d+224|0,d+208|0);g=P[d+204>>2];if(!(g>2])){break a}P[a+244>>2]=g;U=g}fa=d+240|0;return S(U)}function _e(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;if(!(!b|!c)){if(!(L[a+24>>2]>127|L[a+28>>2]>127)){L[8513]=L[8513]+1;l=ha[L[6798]](1024,16)|0;g=L[a+24>>2];a:{if((g|0)<=0){break a}if(g>>>0>=4){p=g&-4;while(1){f=n<<3;i=f+l|0;h=f+L[a+32>>2]|0;m=L[h+4>>2];L[i>>2]=L[h>>2];L[i+4>>2]=m;i=f|8;h=i+l|0;i=i+L[a+32>>2]|0;m=L[i+4>>2];L[h>>2]=L[i>>2];L[h+4>>2]=m;i=f|16;h=i+l|0;i=i+L[a+32>>2]|0;m=L[i+4>>2];L[h>>2]=L[i>>2];L[h+4>>2]=m;f=f|24;i=f+l|0;f=f+L[a+32>>2]|0;h=L[f+4>>2];L[i>>2]=L[f>>2];L[i+4>>2]=h;n=n+4|0;e=e+4|0;if((p|0)!=(e|0)){continue}break}}e=g&3;if(!e){break a}while(1){f=n<<3;g=f+l|0;f=f+L[a+32>>2]|0;p=L[f+4>>2];L[g>>2]=L[f>>2];L[g+4>>2]=p;n=n+1|0;j=j+1|0;if((e|0)!=(j|0)){continue}break}}e=L[a+32>>2];if(!(e?!e|!M[a+36|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](e)}L[a+32>>2]=l;J[a+36|0]=1;L[a+28>>2]=128}L[a+24>>2]=128;e=L[a+32>>2];L[e+4>>2]=c;L[e>>2]=b;b=124;e=1;while(1){j=L[a+32>>2];l=e;e=e-1|0;i=e<<3;c=j+i|0;g=L[c+4>>2];f=L[c>>2];if((b|0)<(e|0)){b=L[a+24>>2];p=b<<1;if(!((p|0)<=L[a+28>>2]|(b|0)>=(p|0))){b:{if(!b){j=0;break b}L[8513]=L[8513]+1;j=ha[L[6798]](b<<4,16)|0;m=L[a+24>>2];if((m|0)<=0){break b}b=0;n=0;if(m>>>0>=4){r=m&-4;c=0;while(1){h=n<<3;k=h+j|0;o=h+L[a+32>>2]|0;q=L[o+4>>2];L[k>>2]=L[o>>2];L[k+4>>2]=q;k=h|8;o=k+j|0;k=k+L[a+32>>2]|0;q=L[k+4>>2];L[o>>2]=L[k>>2];L[o+4>>2]=q;k=h|16;o=k+j|0;k=k+L[a+32>>2]|0;q=L[k+4>>2];L[o>>2]=L[k>>2];L[o+4>>2]=q;h=h|24;k=h+j|0;h=h+L[a+32>>2]|0;o=L[h+4>>2];L[k>>2]=L[h>>2];L[k+4>>2]=o;n=n+4|0;c=c+4|0;if((r|0)!=(c|0)){continue}break}}c=m&3;if(!c){break b}while(1){h=n<<3;m=h+j|0;h=h+L[a+32>>2]|0;r=L[h+4>>2];L[m>>2]=L[h>>2];L[m+4>>2]=r;n=n+1|0;b=b+1|0;if((c|0)!=(b|0)){continue}break}}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]=j;J[a+36|0]=1;L[a+28>>2]=p}L[a+24>>2]=p;b=p-4|0}c:{if((f|0)==(g|0)){if(!L[f+40>>2]){break c}c=j+i|0;e=L[f+36>>2];L[c+4>>2]=e;L[c>>2]=e;c=l<<3;e=c+L[a+32>>2]|0;g=L[f+40>>2];L[e+4>>2]=g;L[e>>2]=g;e=L[f+40>>2];c=c+L[a+32>>2]|0;L[c+8>>2]=L[f+36>>2];L[c+12>>2]=e;e=l+2|0;break c}if(!(P[f>>2]<=P[g+16>>2])|!(P[f+16>>2]>=P[g>>2])|(!(P[f+4>>2]<=P[g+20>>2])|!(P[f+20>>2]>=P[g+4>>2]))){break c}if(!(P[f+8>>2]<=P[g+24>>2])|!(P[f+24>>2]>=P[g+8>>2])){break c}c=L[g+40>>2];if(L[f+40>>2]){e=L[f+36>>2];if(c){c=j+i|0;L[c+4>>2]=L[g+36>>2];L[c>>2]=e;e=L[f+40>>2];c=l<<3;j=c+L[a+32>>2]|0;L[j+4>>2]=L[g+36>>2];L[j>>2]=e;e=L[f+36>>2];j=c+L[a+32>>2]|0;L[j+12>>2]=L[g+40>>2];L[j+8>>2]=e;e=L[f+40>>2];c=c+L[a+32>>2]|0;L[c+20>>2]=L[g+40>>2];L[c+16>>2]=e;e=l+3|0;break c}c=j+i|0;L[c+4>>2]=g;L[c>>2]=e;c=L[f+40>>2];e=L[a+32>>2]+(l<<3)|0;L[e+4>>2]=g;L[e>>2]=c;e=l+1|0;break c}if(c){c=j+i|0;L[c+4>>2]=L[g+36>>2];L[c>>2]=f;c=L[a+32>>2]+(l<<3)|0;L[c+4>>2]=L[g+40>>2];L[c>>2]=f;e=l+1|0;break c}ha[L[L[d>>2]+8>>2]](d,f,g)}if(e){continue}break}}}function gh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;L[a>>2]=10328;L[8513]=L[8513]+1;c=ha[L[6798]](360,16)|0;L[c+308>>2]=953267991;J[c+332|0]=M[c+332|0]&240;L[a+24>>2]=c;c=L[b+20>>2];L[8513]=L[8513]+1;e=ha[L[6798]](4,16)|0;L[e>>2]=(c?18484:18644)+8;L[a+28>>2]=e;L[8513]=L[8513]+1;c=ha[L[6798]](24,16)|0;e=L[a+24>>2];f=L[a+28>>2];L[c+16>>2]=0;L[c+20>>2]=3;J[c+4|0]=0;L[c+12>>2]=e;L[c+8>>2]=f;L[c>>2]=8816;L[a+32>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=10444;J[c+4|0]=0;L[a+36>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=10568;J[c+4|0]=0;L[a+40>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=10660;J[c+4|0]=0;L[a+44>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=10740;J[c+4|0]=0;L[a+48>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=10828;J[c+4|0]=0;L[a+52>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=10912;J[c+4|0]=0;L[a+56>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=10980;J[c+4|0]=0;L[a+60>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=11064;J[c+4|0]=0;L[a+76>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=11064;L[a+80>>2]=c;J[c+4|0]=1;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=11148;J[c+4|0]=0;L[a+72>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](16,16)|0;L[c+8>>2]=1;L[c+12>>2]=0;L[c>>2]=11224;J[c+4|0]=0;L[a+88>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](16,16)|0;L[c+8>>2]=1;L[c+12>>2]=0;L[c>>2]=11224;L[a+84>>2]=c;J[c+4|0]=1;i=L[b+16>>2];g=L[b>>2];a:{if(g){J[a+12|0]=0;break a}J[a+12|0]=1;L[8513]=L[8513]+1;g=ha[L[6798]](20,16)|0;c=L[b+8>>2];L[g+4>>2]=c;L[g>>2]=772;L[8513]=L[8513]+1;c=ha[L[6798]](R(c,772),16)|0;L[g+12>>2]=c;L[g+16>>2]=c;j=L[g+4>>2];L[g+8>>2]=j;e=j-1|0;b:{if(!e){break b}f=L[g>>2];k=e&7;if(k){while(1){d=c;c=c+f|0;L[d>>2]=c;e=e-1|0;h=h+1|0;if((k|0)!=(h|0)){continue}break}}if(j-2>>>0<7){break b}while(1){d=c;c=c+f|0;L[d>>2]=c;d=c;c=c+f|0;L[d>>2]=c;d=c;c=c+f|0;L[d>>2]=c;d=c;c=c+f|0;L[d>>2]=c;d=c;c=c+f|0;L[d>>2]=c;d=c;c=c+f|0;L[d>>2]=c;d=c;c=c+f|0;L[d>>2]=c;d=c;c=c+f|0;L[d>>2]=c;e=e-8|0;if(e){continue}break}}L[c>>2]=0}L[a+8>>2]=g;c=L[b+4>>2];if(c){J[a+20|0]=0;L[a+16>>2]=c;return a}J[a+20|0]=1;L[8513]=L[8513]+1;f=ha[L[6798]](20,16)|0;b=L[b+12>>2];L[f+4>>2]=b;c=(i|0)<=36?36:i;c=c>>>0<=80?80:c;L[f>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](R(b,c),16)|0;L[f+12>>2]=c;L[f+16>>2]=c;g=L[f+4>>2];L[f+8>>2]=g;e=g-1|0;c:{if(!e){break c}b=L[f>>2];i=e&7;if(i){h=0;while(1){d=c;c=b+c|0;L[d>>2]=c;e=e-1|0;h=h+1|0;if((i|0)!=(h|0)){continue}break}}if(g-2>>>0<7){break c}while(1){d=c;c=b+c|0;L[d>>2]=c;d=c;c=b+c|0;L[d>>2]=c;d=c;c=b+c|0;L[d>>2]=c;d=c;c=b+c|0;L[d>>2]=c;d=c;c=b+c|0;L[d>>2]=c;d=c;c=b+c|0;L[d>>2]=c;d=c;c=b+c|0;L[d>>2]=c;d=c;c=b+c|0;L[d>>2]=c;e=e-8|0;if(e){continue}break}}L[c>>2]=0;L[a+16>>2]=f;return a}function Em(a,b,c,d,e,f,g){var h=S(0),i=S(0),j=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=0,v=S(0),w=S(0),x=S(0),y=S(0),z=S(0),A=S(0),B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,O=0,Q=0,R=0,T=0,U=0;k=fa-32|0;fa=k;x=P[c+4>>2];y=P[d+4>>2];z=P[c>>2];A=P[d>>2];n=P[a+28>>2];p=P[a+12>>2];v=P[d+8>>2];w=P[c+8>>2];h=S((v>2]);h=h>2];h=S(S((h>n?n:h)-p)*l);a:{if(h=S(0)){C=~~h>>>0;break a}C=0}o=P[a+24>>2];q=P[a+8>>2];h=S((x>y?y:x)+P[e+4>>2]);h=h>2];h=S(S((h>o?o:h)-q)*t);b:{if(h=S(0)){B=~~h>>>0;break b}B=0}m=P[a+20>>2];r=P[a+4>>2];h=S((z>A?A:z)+P[e>>2]);h=h>2];h=S(S((h>m?m:h)-r)*i);c:{if(h=S(0)){u=~~h>>>0;break c}u=0}h=S((v>w?v:w)+P[f+8>>2]);h=hn?n:h)-p)*l)+S(1));d:{if(h=S(0)){s=~~h>>>0;break d}s=0}h=S((x>2]);h=ho?o:h)-q)*t)+S(1));e:{if(h=S(0)){j=~~h>>>0;break e}j=0}h=S((z>2]);h=hm?m:h)-r)*i)+S(1));f:{if(h=S(0)){d=~~h>>>0;break f}d=0}if((g|0)>0){i=S(v-w);m=S(A-z);t=S(y-x);h=S(S(1)/S(_(S(S(i*i)+S(S(m*m)+S(t*t))))));l=S(i*h);n=S(l*i);i=S(m*h);h=S(t*h);t=S(n+S(S(i*m)+S(t*h)));G=C&65534;H=B&65534;I=u&65534;J=s|1;K=j|1;M=d|1;d=L[a+136>>2];p=l==S(0)?S(0xde0b6b000000000):S(S(1)/l);s=p>2];u=0;g:{h:{i:{j:{if(N[d+6>>1]>>0){break j}B=N[d>>1];if(M>>>0>>0|N[d+10>>1]>>0){break j}s=N[d+4>>1];if(N[d+8>>1]>>0|s>>>0>J>>>0){break j}j=N[d+2>>1];if(j>>>0>K>>>0){break j}v=P[a+4>>2];w=P[a+36>>2];n=P[a+8>>2];o=P[a+40>>2];m=P[a+12>>2];l=P[a+44>>2];L[k+12>>2]=0;i=S(m+S(S(s>>>0)/l));P[k+8>>2]=i;h=S(n+S(S(j>>>0)/o));P[k+4>>2]=h;u=N[d+10>>1];s=N[d+8>>1];j=N[d+6>>1];L[k+28>>2]=0;P[k>>2]=S(v+S(S(B>>>0)/w))-P[f>>2];P[k+4>>2]=h-P[f+4>>2];P[k+8>>2]=i-P[f+8>>2];P[k+16>>2]=S(v+S(S(j>>>0)/w))-P[e>>2];P[k+20>>2]=S(n+S(S(s>>>0)/o))-P[e+4>>2];P[k+24>>2]=S(m+S(S(u>>>0)/l))-P[e+8>>2];k:{i=P[c>>2];l=S(r*S(P[U>>2]-i));h=P[c+4>>2];n=S(q*S(P[T>>2]-h));if(l>n){break k}h=S(q*S(P[Q>>2]-h));o=S(r*S(P[C>>2]-i));if(h>o){break k}m=h>l?h:l;h=P[c+8>>2];l=S(p*S(P[R>>2]-h));if(m>l){break k}i=S(p*S(P[O>>2]-h));h=nh){break k}u=t>(i>m?i:m)&(h>l?l:h)>S(0);if(!u|(F|0)<0){break j}j=L[d+12>>2];ha[L[L[b>>2]+8>>2]](b,j>>21,j&2097151);break i}u=0}if((F|0)>=0){break i}if(!u){break h}}D=D+1|0;d=d+16|0;break g}j=L[d+12>>2];D=D-j|0;d=d-(j<<4)|0}E=E+1|0;if((g|0)>(D|0)){continue}break}}if(L[7548]<(E|0)){L[7548]=E}fa=k+32|0}function Ln(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;l=fa-16|0;fa=l;c=L[a+92>>2];if(ha[L[L[c>>2]+56>>2]](c)|0){c=L[a+92>>2];e=ha[L[L[c>>2]+28>>2]](c)|0;d=L[e+4>>2];if((d|0)>=2){jc(e,l+15|0,0,d-1|0);d=L[e+4>>2]}i=L[a+104>>2];g=d-i|0;a:{if((i|0)>=0){break a}if(L[e+8>>2]<(g|0)){if(g){L[8513]=L[8513]+1;h=ha[L[6798]](g<<4,16)|0;c=L[e+4>>2]}else{c=d}if((c|0)>0){while(1){k=f<<4;j=k+h|0;k=k+L[e+12>>2]|0;L[j>>2]=L[k>>2];L[j+4>>2]=L[k+4>>2];L[j+8>>2]=L[k+8>>2];L[j+12>>2]=L[k+12>>2];f=f+1|0;if((c|0)!=(f|0)){continue}break}}c=L[e+12>>2];if(!(c?!c|!M[e+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[e+12>>2]=h;J[e+16|0]=1;L[e+8>>2]=g}f=0;h=0-i&3;if(h){while(1){c=L[e+12>>2]+(d<<4)|0;L[c>>2]=0;L[c+4>>2]=0;L[c+8>>2]=0;L[c+12>>2]=0;d=d+1|0;f=f+1|0;if((h|0)!=(f|0)){continue}break}}if(i>>>0>4294967292){break a}while(1){c=d<<4;f=c+L[e+12>>2]|0;L[f>>2]=0;L[f+4>>2]=0;L[f+8>>2]=0;L[f+12>>2]=0;f=c+L[e+12>>2]|0;L[f+24>>2]=0;L[f+28>>2]=0;L[f+16>>2]=0;L[f+20>>2]=0;f=c+L[e+12>>2]|0;L[f+40>>2]=0;L[f+44>>2]=0;L[f+32>>2]=0;L[f+36>>2]=0;c=c+L[e+12>>2]|0;L[c+56>>2]=0;L[c+60>>2]=0;L[c+48>>2]=0;L[c+52>>2]=0;d=d+4|0;if((g|0)!=(d|0)){continue}break}}L[e+4>>2]=g;L[a+104>>2]=0;if((g|0)>0){i=0;j=0;h=0;f=0;while(1){d=L[e+12>>2]+(j<<4)|0;c=L[d+4>>2];k=h;h=L[d>>2];b:{c:{if((k|0)==(h|0)&(c|0)==(f|0)|N[h+54>>1]>1]|(N[c+54>>1]>1]|N[h+56>>1]>1])){break c}if(N[c+56>>1]>1]|N[h+58>>1]>1]){break c}if(N[c+58>>1]>=N[h+52>>1]){break b}}g=L[a+92>>2];ha[L[L[g>>2]+32>>2]](g,d,b);L[d>>2]=0;L[d+4>>2]=0;i=L[a+104>>2]+1|0;L[a+104>>2]=i;L[7536]=L[7536]-1;g=L[e+4>>2]}f=c;j=j+1|0;if((j|0)<(g|0)){continue}break}if((g|0)>=2){jc(e,l+14|0,0,g-1|0);i=L[a+104>>2];g=L[e+4>>2]}b=g-i|0;d:{if((i|0)>=0){break d}if((b|0)>L[e+8>>2]){h=0;e:{if((g|0)==(i|0)){break e}L[8513]=L[8513]+1;h=ha[L[6798]](b<<4,16)|0;j=L[e+4>>2];if((j|0)<=0){break e}f=0;while(1){d=f<<4;c=d+h|0;d=d+L[e+12>>2]|0;L[c>>2]=L[d>>2];L[c+4>>2]=L[d+4>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=L[d+12>>2];f=f+1|0;if((j|0)!=(f|0)){continue}break}}c=L[e+12>>2];if(!(c?!c|!M[e+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[e+12>>2]=h;J[e+16|0]=1;L[e+8>>2]=b}d=0;f=0-i&3;if(f){while(1){c=L[e+12>>2]+(g<<4)|0;L[c>>2]=0;L[c+4>>2]=0;L[c+8>>2]=0;L[c+12>>2]=0;g=g+1|0;d=d+1|0;if((f|0)!=(d|0)){continue}break}}if(i>>>0>4294967292){break d}while(1){c=g<<4;d=c+L[e+12>>2]|0;L[d>>2]=0;L[d+4>>2]=0;L[d+8>>2]=0;L[d+12>>2]=0;d=c+L[e+12>>2]|0;L[d+24>>2]=0;L[d+28>>2]=0;L[d+16>>2]=0;L[d+20>>2]=0;d=c+L[e+12>>2]|0;L[d+40>>2]=0;L[d+44>>2]=0;L[d+32>>2]=0;L[d+36>>2]=0;c=c+L[e+12>>2]|0;L[c+56>>2]=0;L[c+60>>2]=0;L[c+48>>2]=0;L[c+52>>2]=0;g=g+4|0;if((b|0)!=(g|0)){continue}break}}}else{b=g}L[e+4>>2]=b;L[a+104>>2]=0}fa=l+16|0}function sl(a,b,c){var d=0,e=S(0),f=S(0),g=S(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=S(0),q=0,r=S(0),s=S(0),t=S(0);d=fa-240|0;fa=d;h=P[c>>2];f=P[c+4>>2];e=P[c+8>>2];L[a+124>>2]=0;P[a+120>>2]=e+P[a+100>>2];P[a+116>>2]=f+P[a+96>>2];P[a+112>>2]=h+P[a+92>>2];L[d+188>>2]=0;L[d+192>>2]=0;L[d+200>>2]=0;L[d+204>>2]=0;L[d+196>>2]=1065353216;L[d+208>>2]=0;L[d+212>>2]=0;L[d+216>>2]=1065353216;L[d+220>>2]=0;L[d+124>>2]=0;L[d+128>>2]=0;L[d+136>>2]=0;L[d+140>>2]=0;L[d+132>>2]=1065353216;L[d+144>>2]=0;L[d+148>>2]=0;L[d+152>>2]=1065353216;L[d+156>>2]=0;L[d+180>>2]=0;L[d+184>>2]=0;L[d+176>>2]=1065353216;L[d+116>>2]=0;L[d+120>>2]=0;L[d+112>>2]=1065353216;q=10;r=S(1);while(1){a:{if(!q){break a}c=L[a+96>>2];L[d+224>>2]=L[a+92>>2];L[d+228>>2]=c;c=L[a+104>>2];L[d+232>>2]=L[a+100>>2];L[d+236>>2]=c;c=L[a+124>>2];L[d+168>>2]=L[a+120>>2];L[d+172>>2]=c;c=L[a+116>>2];L[d+160>>2]=L[a+112>>2];L[d+164>>2]=c;k=P[a+92>>2];l=P[a+112>>2];m=P[a+96>>2];h=P[a+116>>2];f=P[a+100>>2];e=P[a+120>>2];c=L[a+8>>2];L[d+84>>2]=0;L[d+12>>2]=1065353216;L[d+44>>2]=0;L[d+48>>2]=0;L[d+36>>2]=0;L[d+40>>2]=0;L[d+28>>2]=0;L[d+32>>2]=0;L[d+20>>2]=0;L[d+24>>2]=0;L[d+104>>2]=0;L[d+108>>2]=0;P[d+100>>2]=f-e;P[d+96>>2]=m-h;P[d+92>>2]=k-l;L[d+88>>2]=c;L[d+8>>2]=19308;c=L[c+188>>2];K[d+16>>1]=N[c+4>>1];K[d+18>>1]=N[c+6>>1];c=L[a+12>>2];e=S(ha[L[L[c>>2]+48>>2]](c));c=L[a+12>>2];ha[L[L[c>>2]+44>>2]](c,S(e+P[a+56>>2]));b:{if(M[a+170|0]){Ec(L[a+8>>2],L[a+12>>2],d+176|0,d+112|0,d+8|0,P[b+56>>2]);break b}Ab(b,L[a+12>>2],d+176|0,d+112|0,d+8|0,P[b+56>>2])}c=L[a+12>>2];ha[L[L[c>>2]+44>>2]](c,e);t=P[d+12>>2];c:{if(t>2];i=S(P[a+120>>2]-k);l=P[a+92>>2];g=S(P[a+112>>2]-l);m=P[a+96>>2];f=S(P[a+116>>2]-m);e=S(S(i*i)+S(S(g*g)+S(f*f)));j=S(_(e));if(j>S(1.1920928955078125e-7)){n=P[d+60>>2];o=P[d+52>>2];p=P[d+56>>2];c=L[a+96>>2];L[a+112>>2]=L[a+92>>2];L[a+116>>2]=c;c=L[a+104>>2];L[a+120>>2]=L[a+100>>2];L[a+124>>2]=c;e=f;f=S(S(1)/j);e=S(e*f);s=e;h=S(i*f);f=S(g*f);e=S(S(n*h)+S(S(o*f)+S(e*p)));g=S(e+e);e=S(s-S(p*g));s=e;i=S(h-S(n*g));g=S(f-S(o*g));e=S(S(1)/S(_(S(S(i*i)+S(S(g*g)+S(e*e))))));h=S(s*e);f=S(i*e);e=S(g*e);g=S(S(n*f)+S(S(o*e)+S(p*h)));h=S(P[a+116>>2]+S(j*S(h-S(p*g))));P[a+116>>2]=h;f=S(P[a+120>>2]+S(j*S(f-S(n*g))));P[a+120>>2]=f;e=S(P[a+112>>2]+S(j*S(e-S(o*g))));P[a+112>>2]=e;i=S(f-k);g=S(e-l);f=S(h-m);e=S(S(i*i)+S(S(g*g)+S(f*f)))}if(!(e>S(1.1920928955078125e-7))){break a}e=S(S(1)/S(_(e)));if(!(S(S(S(i*e)*P[a+84>>2])+S(S(S(g*e)*P[a+76>>2])+S(S(f*e)*P[a+80>>2])))<=S(0))){break c}break a}c=L[a+116>>2];L[a+92>>2]=L[a+112>>2];L[a+96>>2]=c;c=L[a+124>>2];L[a+100>>2]=L[a+120>>2];L[a+104>>2]=c}q=q-1|0;r=S(r-t);if(r>S(.009999999776482582)){continue}}break}fa=d+240|0}function Il(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=S(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=0,u=S(0),v=S(0),w=S(0),x=S(0);g=fa-304|0;fa=g;h=P[b+52>>2];k=P[c+52>>2];l=P[b+56>>2];i=P[c+56>>2];m=P[b+48>>2];j=P[c+48>>2];L[g+300>>2]=0;p=S(i-l);P[g+296>>2]=p;o=S(k-h);P[g+292>>2]=o;u=S(j-m);P[g+288>>2]=u;t=c;c=g+116|0;n=g+52|0;ec(b,t,c,n);L[g+284>>2]=0;h=P[g+52>>2];k=S(h*P[g+124>>2]);P[g+280>>2]=k;l=S(h*P[g+120>>2]);P[g+276>>2]=l;h=S(h*P[g+116>>2]);P[g+272>>2]=h;i=P[d+52>>2];m=P[e+52>>2];j=P[d+56>>2];r=P[e+56>>2];s=P[d+48>>2];x=P[e+48>>2];L[g+268>>2]=0;v=S(r-j);P[g+264>>2]=v;w=S(m-i);P[g+260>>2]=w;s=S(x-s);P[g+256>>2]=s;ec(d,e,c,n);L[g+252>>2]=0;i=P[g+52>>2];m=S(i*P[g+124>>2]);P[g+248>>2]=m;j=S(i*P[g+120>>2]);P[g+244>>2]=j;i=S(i*P[g+116>>2]);P[g+240>>2]=i;c=L[a+12>>2];k=S(S(_(S(S(k*k)+S(S(h*h)+S(l*l)))))*S(ha[L[L[c>>2]+16>>2]](c)));c=L[a+16>>2];if(c){h=S(ha[L[L[c>>2]+16>>2]](c))}else{h=S(0)}r=S(k+S(h*S(_(S(S(m*m)+S(S(i*i)+S(j*j)))))));l=S(v-p);i=S(s-u);m=S(w-o);a:{if(S(r+S(_(S(S(l*l)+S(S(i*i)+S(m*m))))))==S(0)){break a}J[g+220|0]=0;L[g+216>>2]=1566444395;L[g+180>>2]=18332;Jl(a,b,d,g+180|0);c=L[g+212>>2];L[g+232>>2]=L[g+208>>2];L[g+236>>2]=c;c=L[g+204>>2];L[g+224>>2]=L[g+200>>2];L[g+228>>2]=c;if(!M[g+220|0]){break a}k=P[g+192>>2];j=P[g+184>>2];p=P[g+188>>2];if(S(r+S(S(l*k)+S(S(i*j)+S(m*p))))<=S(1.1920928955078125e-7)){break a}b:{o=S(P[g+216>>2]+P[f+172>>2]);c:{if(!(o>S(.0010000000474974513))){h=S(0);l=P[g+196>>2];break c}e=g+28|0;t=g+164|0;c=0;h=S(0);while(1){q=L[f+168>>2];if(q){L[g+124>>2]=1065353216;L[g+128>>2]=0;L[g+116>>2]=1065353216;L[g+120>>2]=1065353216;ha[L[L[q>>2]+20>>2]](q,g+224|0,S(.20000000298023224),g+116|0)}q=0;j=S(r+S(S(l*k)+S(S(i*j)+S(m*p))));if(j<=S(1.1920928955078125e-7)){break a}k=h;h=S(h+S(o/j));if(k>=h|h>S(1)|h>2];if(n){L[g+16>>2]=0;L[g+20>>2]=0;L[g+8>>2]=1065353216;L[g+12>>2]=0;ha[L[L[n>>2]+20>>2]](n,t,S(.20000000298023224),g+8|0)}ha[L[L[f>>2]>>2]](f,h);J[g+48|0]=0;L[g+44>>2]=1566444395;L[g+8>>2]=18332;Jl(a,g+116|0,g+52|0,g+8|0);if(!M[g+48|0]){break b}o=P[f+172>>2];n=L[e+12>>2];L[g+232>>2]=L[e+8>>2];L[g+236>>2]=n;n=L[e+4>>2];L[g+224>>2]=L[e>>2];L[g+228>>2]=n;if((c|0)==64){ha[L[L[f>>2]+8>>2]](f,-2,65);break a}c=c+1|0;j=P[g+12>>2];p=P[g+16>>2];k=P[g+20>>2];o=S(P[g+44>>2]+o);if(o>S(.0010000000474974513)){continue}break}l=P[g+24>>2]}P[f+132>>2]=j;P[f+164>>2]=h;P[f+144>>2]=l;P[f+140>>2]=k;P[f+136>>2]=p;a=L[g+228>>2];L[f+148>>2]=L[g+224>>2];L[f+152>>2]=a;a=L[g+236>>2];L[f+156>>2]=L[g+232>>2];L[f+160>>2]=a;q=1;break a}ha[L[L[f>>2]+8>>2]](f,-1,c)}fa=g+304|0;return q|0}function Eg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=S(0),j=S(0),k=S(0),l=S(0),m=S(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);g=fa-272|0;fa=g;He(L[a+4>>2]);j=P[b+52>>2];i=P[c+52>>2];n=P[d+52>>2];k=P[e+52>>2];l=P[b+56>>2];m=P[c+56>>2];o=P[d+56>>2];p=P[e+56>>2];q=P[b+48>>2];t=P[c+48>>2];u=P[d+48>>2];v=P[e+48>>2];J[g+252|0]=0;L[g+248>>2]=1566444395;L[g+212>>2]=18332;r=yg(g+132|0,L[a+8>>2],L[a+12>>2],L[a+4>>2],0);L[g+128>>2]=1566444395;a=L[b+12>>2];L[g+8>>2]=L[b+8>>2];L[g+12>>2]=a;a=L[b+4>>2];L[g>>2]=L[b>>2];L[g+4>>2]=a;a=L[b+28>>2];L[g+24>>2]=L[b+24>>2];L[g+28>>2]=a;a=L[b+20>>2];L[g+16>>2]=L[b+16>>2];L[g+20>>2]=a;a=L[b+44>>2];L[g+40>>2]=L[b+40>>2];L[g+44>>2]=a;a=L[b+36>>2];L[g+32>>2]=L[b+32>>2];L[g+36>>2]=a;a=L[b+60>>2];L[g+56>>2]=L[b+56>>2];L[g+60>>2]=a;a=L[b+52>>2];L[g+48>>2]=L[b+48>>2];L[g+52>>2]=a;a=L[d+12>>2];L[g+72>>2]=L[d+8>>2];L[g+76>>2]=a;a=L[d+4>>2];L[g+64>>2]=L[d>>2];L[g+68>>2]=a;a=L[d+20>>2];L[g+80>>2]=L[d+16>>2];L[g+84>>2]=a;a=L[d+28>>2];L[g+88>>2]=L[d+24>>2];L[g+92>>2]=a;a=L[d+44>>2];L[g+104>>2]=L[d+40>>2];L[g+108>>2]=a;a=L[d+36>>2];L[g+96>>2]=L[d+32>>2];L[g+100>>2]=a;a=L[d+52>>2];L[g+112>>2]=L[d+48>>2];L[g+116>>2]=a;a=L[d+60>>2];L[g+120>>2]=L[d+56>>2];L[g+124>>2]=a;wb(r,g,g+212|0,0,0);a=L[g+244>>2];L[g+264>>2]=L[g+240>>2];L[g+268>>2]=a;a=L[g+236>>2];L[g+256>>2]=L[g+232>>2];L[g+260>>2]=a;h=0;a:{if(!M[g+252|0]){break a}o=S(S(m-l)-S(p-o));p=S(S(i-j)-S(k-n));q=S(S(t-q)-S(v-u));k=P[g+224>>2];l=P[g+220>>2];m=P[g+216>>2];i=P[g+248>>2];b:{c:{if(!(i>S(.0010000000474974513))){j=S(0);i=P[g+228>>2];break c}s=g+232|0;a=0;n=S(0);while(1){h=0;if((a|0)==32){break a}j=S(n-S(i/S(S(o*k)+S(S(q*m)+S(p*l)))));h=0;if(n>=j){break a}h=0;if(j>S(1)){break a}h=0;if(j>2]>>2]](f,j);i=S(S(1)-j);P[g+48>>2]=S(i*P[b+48>>2])+S(j*P[c+48>>2]);P[g+52>>2]=S(i*P[b+52>>2])+S(j*P[c+52>>2]);P[g+56>>2]=S(i*P[b+56>>2])+S(j*P[c+56>>2]);P[g+112>>2]=S(i*P[d+48>>2])+S(j*P[e+48>>2]);P[g+116>>2]=S(i*P[d+52>>2])+S(j*P[e+52>>2]);P[g+120>>2]=S(i*P[d+56>>2])+S(j*P[e+56>>2]);wb(r,g,g+212|0,0,0);h=0;if(!M[g+252|0]){break a}i=P[g+248>>2];if(i>2]=j;i=P[g+228>>2];k=P[g+224>>2];l=P[g+220>>2];m=P[g+216>>2];break b}a=a+1|0;h=L[g+244>>2];L[g+264>>2]=L[g+240>>2];L[g+268>>2]=h;h=L[g+236>>2];L[g+256>>2]=L[g+232>>2];L[g+260>>2]=h;k=P[g+224>>2];l=P[g+220>>2];m=P[g+216>>2];n=j;if(i>S(.0010000000474974513)){continue}break}i=P[g+228>>2]}h=0;if(S(-P[f+172>>2])<=S(S(k*o)+S(S(m*q)+S(p*l)))){break a}P[f+164>>2]=j;s=g+256|0}P[f+132>>2]=m;P[f+144>>2]=i;P[f+140>>2]=k;P[f+136>>2]=l;a=s;b=L[a+4>>2];L[f+148>>2]=L[a>>2];L[f+152>>2]=b;b=L[a+12>>2];L[f+156>>2]=L[a+8>>2];L[f+160>>2]=b;h=1}fa=g+272|0;return h|0}function lp(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=S(0),n=S(0),o=S(0),p=S(0),q=S(0),r=0,s=0,t=0,u=S(0),v=S(0),w=S(0),x=0,y=0,z=0,A=S(0),B=0;l=fa-48|0;fa=l;L[l+44>>2]=a;L[l+40>>2]=b;L[l+36>>2]=c;L[l+32>>2]=d;L[l+28>>2]=e;L[l+24>>2]=f;L[l+20>>2]=g;L[l+16>>2]=h;L[l+12>>2]=i;J[l+11|0]=j;L[l+4>>2]=k;t=L[l+40>>2];h=L[l+36>>2];i=L[l+32>>2];j=L[l+28>>2];k=L[l+24>>2];b=L[l+12>>2];z=J[l+11|0]&1;x=L[l+4>>2];e=0;d=L[l+20>>2];f=L[l+16>>2];a:{if((d|0)<2|(f|0)<2){break a}u=S(d-1|0);v=S(f-1|0);L[8513]=L[8513]+1;c=R(d,f);g=ha[L[6798]](c>>>0>268435455?-1:c<<4,16)|0;r=sa(c>>>0>1073741823?-1:c<<2);while(1){p=P[h+8>>2];m=S(S(e|0)/v);p=S(S(S(P[j+8>>2]-p)*m)+p);q=P[i+8>>2];q=S(S(S(S(P[k+8>>2]-q)*m)+q)-p);n=P[i+4>>2];o=S(S(S(P[k+4>>2]-n)*m)+n);n=P[h+4>>2];n=S(S(S(P[j+4>>2]-n)*m)+n);A=S(o-n);o=P[i>>2];w=S(S(S(P[k>>2]-o)*m)+o);o=P[h>>2];o=S(S(S(P[j>>2]-o)*m)+o);w=S(w-o);B=R(d,e);a=0;while(1){y=a+B|0;s=g+(y<<4)|0;L[s+12>>2]=0;m=S(S(a|0)/u);P[s+8>>2]=S(q*m)+p;P[s+4>>2]=S(A*m)+n;P[s>>2]=S(w*m)+o;L[r+(y<<2)>>2]=1065353216;a=a+1|0;if((d|0)!=(a|0)){continue}break}e=e+1|0;if((f|0)!=(e|0)){continue}break}L[8513]=L[8513]+1;e=Ac(ha[L[6798]](1252,16)|0,t,c,g,r);if(b&1){P[L[e+720>>2]+88>>2]=0;J[e+924|0]=1}if(b&2){P[(L[e+720>>2]+R(d-1|0,104)|0)+88>>2]=0;J[e+924|0]=1}if(b&4){P[(L[e+720>>2]+R(R(d,f-1|0),104)|0)+88>>2]=0;J[e+924|0]=1}if(b&8){P[(L[e+720>>2]+R((d+R(d,f-1|0)|0)-1|0,104)|0)+88>>2]=0;J[e+924|0]=1}if(b&16){P[(L[e+720>>2]+R(d-1>>>1|0,104)|0)+88>>2]=0;J[e+924|0]=1}if(b&32){P[(L[e+720>>2]+R(R(d,f-1>>>1|0),104)|0)+88>>2]=0;J[e+924|0]=1}if(b&64){P[(L[e+720>>2]+R((d+R(d,f-1>>>1|0)|0)-1|0,104)|0)+88>>2]=0;J[e+924|0]=1}if(b&128){P[(L[e+720>>2]+R(R(d,f-1|0)+(d-1>>>1|0)|0,104)|0)+88>>2]=0;J[e+924|0]=1}if(b&256){P[(L[e+720>>2]+R(R(d,f-1>>>1|0)+(d-1>>>1|0)|0,104)|0)+88>>2]=0;J[e+924|0]=1}if(g){L[8514]=L[8514]+1;ha[L[6799]](g)}ra(r);if((d|0)<=0){break a}r=f-1|0;u=S(S(1)/S(r|0));v=S(S(1)/S(d-1|0));a=0;j=0;while(1){i=R(a,d);b=0;c=a+1|0;b:{if((c|0)<(f|0)){s=R(c,d);m=S(u*S(r-a|0));p=S(u*S(r+(a^-1)|0));a=0;while(1){g=a+s|0;h=a+i|0;b=a+1|0;c:{if((b|0)<(d|0)){t=b+i|0;Ha(e,h,t,0,0);Ha(e,h,g,0,0);k=b+s|0;pb(e,h,g,k,0);d:{if(x){g=(j<<2)+x|0;q=S(v*S(a|0));P[g>>2]=q;P[g+20>>2]=p;n=S(v*S(b|0));P[g+16>>2]=n;P[g+12>>2]=p;P[g+8>>2]=q;P[g+4>>2]=m;pb(e,k,t,h,0);P[g+44>>2]=m;P[g+40>>2]=q;P[g+36>>2]=m;P[g+32>>2]=n;P[g+28>>2]=p;P[g+24>>2]=n;break d}pb(e,k,t,h,0)}if(z){Ha(e,h,k,0,0)}j=j+12|0;break c}Ha(e,h,g,0,0)}a=b;if((d|0)!=(b|0)){continue}break}break b}while(1){a=b+1|0;if((a|0)<(d|0)){Ha(e,b+i|0,a+i|0,0,0)}b=a;if((b|0)!=(d|0)){continue}break}}a=c;if((f|0)!=(a|0)){continue}break}}fa=l+48|0;return e|0}function Ha(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=S(0),l=0,m=0,n=0,o=0,p=S(0),q=S(0);f=R(c,104);c=L[a+720>>2];i=f+c|0;j=c+R(b,104)|0;a:{b:{if(!e){break b}c=L[a+732>>2];if((c|0)<=0){break b}e=L[a+740>>2];f=L[e+12>>2];h=L[e+8>>2];if((h|0)==(j|0)&(f|0)==(i|0)){break a}b=0;if((h|0)==(i|0)&(f|0)==(j|0)){break a}while(1){c:{b=b+1|0;if((c|0)==(b|0)){break c}h=e+R(b,52)|0;f=L[h+12>>2];h=L[h+8>>2];if((h|0)==(j|0)&(f|0)==(i|0)){break c}if((h|0)!=(i|0)|(f|0)!=(j|0)){continue}}break}if((b|0)<(c|0)){break a}}h=0;b=fa-48|0;fa=b;L[b+40>>2]=0;L[b+32>>2]=0;L[b+36>>2]=0;L[b+24>>2]=0;L[b+28>>2]=0;L[b+16>>2]=0;L[b+20>>2]=0;L[b+8>>2]=0;L[b+12>>2]=0;L[b>>2]=0;L[b+4>>2]=0;d=d?d:L[L[a+880>>2]>>2];c=L[a+732>>2];d:{if((c|0)!=L[a+736>>2]){break d}l=c?c<<1:1;if((l|0)<=(c|0)){break d}if(l){L[8513]=L[8513]+1;h=ha[L[6798]](R(l,52),16)|0;c=L[a+732>>2]}e:{if((c|0)<=0){break e}if((c|0)!=1){o=c&-2;while(1){e=R(m,52);f=e+h|0;e=e+L[a+740>>2]|0;g=L[e+4>>2];L[f>>2]=L[e>>2];L[f+4>>2]=g;L[f+48>>2]=L[e+48>>2];g=L[e+44>>2];L[f+40>>2]=L[e+40>>2];L[f+44>>2]=g;g=L[e+36>>2];L[f+32>>2]=L[e+32>>2];L[f+36>>2]=g;g=L[e+28>>2];L[f+24>>2]=L[e+24>>2];L[f+28>>2]=g;g=L[e+20>>2];L[f+16>>2]=L[e+16>>2];L[f+20>>2]=g;g=L[e+12>>2];L[f+8>>2]=L[e+8>>2];L[f+12>>2]=g;e=R(m|1,52);f=e+h|0;e=e+L[a+740>>2]|0;g=L[e+4>>2];L[f>>2]=L[e>>2];L[f+4>>2]=g;g=L[e+12>>2];L[f+8>>2]=L[e+8>>2];L[f+12>>2]=g;g=L[e+20>>2];L[f+16>>2]=L[e+16>>2];L[f+20>>2]=g;g=L[e+28>>2];L[f+24>>2]=L[e+24>>2];L[f+28>>2]=g;g=L[e+36>>2];L[f+32>>2]=L[e+32>>2];L[f+36>>2]=g;g=L[e+44>>2];L[f+40>>2]=L[e+40>>2];L[f+44>>2]=g;L[f+48>>2]=L[e+48>>2];m=m+2|0;n=n+2|0;if((o|0)!=(n|0)){continue}break}}if(!(c&1)){break e}c=R(m,52);e=c+h|0;c=c+L[a+740>>2]|0;f=L[c+4>>2];L[e>>2]=L[c>>2];L[e+4>>2]=f;L[e+48>>2]=L[c+48>>2];f=L[c+44>>2];L[e+40>>2]=L[c+40>>2];L[e+44>>2]=f;f=L[c+36>>2];L[e+32>>2]=L[c+32>>2];L[e+36>>2]=f;f=L[c+28>>2];L[e+24>>2]=L[c+24>>2];L[e+28>>2]=f;f=L[c+20>>2];L[e+16>>2]=L[c+16>>2];L[e+20>>2]=f;f=L[c+12>>2];L[e+8>>2]=L[c+8>>2];L[e+12>>2]=f}c=L[a+740>>2];if(!(c?!c|!M[a+744|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](c)}L[a+740>>2]=h;J[a+744|0]=1;L[a+736>>2]=l;c=L[a+732>>2]}c=L[a+740>>2]+R(c,52)|0;L[c+4>>2]=d;L[c>>2]=0;d=L[b+4>>2];L[c+8>>2]=L[b>>2];L[c+12>>2]=d;d=L[b+12>>2];L[c+16>>2]=L[b+8>>2];L[c+20>>2]=d;d=L[b+20>>2];L[c+24>>2]=L[b+16>>2];L[c+28>>2]=d;d=L[b+28>>2];L[c+32>>2]=L[b+24>>2];L[c+36>>2]=d;d=L[b+36>>2];L[c+40>>2]=L[b+32>>2];L[c+44>>2]=d;L[c+48>>2]=L[b+40>>2];L[a+732>>2]=L[a+732>>2]+1;fa=b+48|0;b=(L[a+740>>2]+R(L[a+732>>2],52)|0)-52|0;L[b+8>>2]=j;L[b+12>>2]=i;k=S(P[j+16>>2]-P[i+16>>2]);p=S(k*k);k=S(P[j+8>>2]-P[i+8>>2]);q=S(k*k);k=S(P[j+12>>2]-P[i+12>>2]);P[b+16>>2]=_(S(p+S(q+S(k*k))));J[a+924|0]=1}}function dg(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=b+12|0;k=c+12|0;n=L[a+12>>2];while(1){a=l;l=a+1|0;f=L[(((l|0)!=3?l:0)<<2)+b>>2];d=L[c+4>>2];a:{b:{g=L[((a?a-1|0:2)<<2)+b>>2];h=L[c>>2];if((g|0)==(h|0)){a=2;e=0;if((d|0)==(f|0)){break b}}c:{if(!((f|0)!=(h|0)|(d|0)!=(g|0))){d=0;a=2;break c}e=L[c+8>>2];if(!((d|0)!=(g|0)|(e|0)!=(f|0))){e=1;a=-1;break b}if(!((d|0)!=(f|0)|(e|0)!=(g|0))){d=1;a=-1;break c}if(!((e|0)!=(g|0)|(f|0)!=(h|0))){e=2;a=-1;break b}a=27208;if((f|0)!=(e|0)|(g|0)!=(h|0)){break a}d=2;a=-1}a=(a+d<<2)+k|0;break a}a=(a+e<<2)+k|0}m=L[a>>2];d:{e:{e=L[b>>2];d=L[b+4>>2];if(!((e|0)!=(f|0)|(d|0)!=(g|0))){d=0;a=2;break e}f:{if(!((e|0)!=(g|0)|(d|0)!=(f|0))){d=0;a=2;break f}a=L[b+8>>2];if(!((d|0)!=(f|0)|(a|0)!=(g|0))){d=1;a=-1;break e}if(!((d|0)!=(g|0)|(a|0)!=(f|0))){d=1;a=-1;break f}if(!((a|0)!=(f|0)|(e|0)!=(g|0))){d=2;a=-1;break e}d=27208;if((a|0)!=(g|0)|(f|0)!=(e|0)){break d}d=2;a=-1}d=(a+d<<2)+j|0;break d}d=(a+d<<2)+j|0}e=2;d=L[(L[d>>2]<<2)+n>>2];h=L[d+4>>2];g:{h:{i=L[d>>2];if((i|0)==(g|0)){a=0;if((f|0)==(h|0)){break h}}a=0;i:{if(!((f|0)!=(i|0)|(g|0)!=(h|0))){break i}e=L[d+8>>2];if(!((g|0)!=(h|0)|(e|0)!=(f|0))){a=1;e=-1;break h}if(!((f|0)!=(h|0)|(e|0)!=(g|0))){e=-1;a=1;break i}if(!((e|0)!=(g|0)|(f|0)!=(i|0))){a=2;e=-1;break h}a=27208;if((f|0)!=(e|0)|(g|0)!=(i|0)){break g}e=-1;a=2}a=((a+e<<2)+d|0)+12|0;break g}a=(d+(a+e<<2)|0)+12|0}L[a>>2]=m;j:{k:{e=L[b>>2];a=L[b+4>>2];if(!((e|0)!=(f|0)|(a|0)!=(g|0))){d=0;a=2;break k}l:{if(!((e|0)!=(g|0)|(a|0)!=(f|0))){d=0;a=2;break l}d=L[b+8>>2];if(!((a|0)!=(f|0)|(d|0)!=(g|0))){d=1;a=-1;break k}if(!((a|0)!=(g|0)|(d|0)!=(f|0))){d=1;a=-1;break l}if(!((d|0)!=(f|0)|(e|0)!=(g|0))){d=2;a=-1;break k}a=27208;if((d|0)!=(g|0)|(f|0)!=(e|0)){break j}d=2;a=-1}a=(a+d<<2)+j|0;break j}a=(a+d<<2)+j|0}m=L[a>>2];m:{n:{e=L[c>>2];d=L[c+4>>2];if(!((e|0)!=(g|0)|(d|0)!=(f|0))){d=0;a=2;break n}o:{if(!((f|0)!=(e|0)|(d|0)!=(g|0))){d=0;a=2;break o}a=L[c+8>>2];if(!((d|0)!=(g|0)|(a|0)!=(f|0))){d=1;a=-1;break n}if(!((d|0)!=(f|0)|(a|0)!=(g|0))){d=1;a=-1;break o}if(!((a|0)!=(g|0)|(f|0)!=(e|0))){d=2;a=-1;break n}d=27208;if((a|0)!=(f|0)|(e|0)!=(g|0)){break m}d=2;a=-1}d=(a+d<<2)+k|0;break m}d=(a+d<<2)+k|0}e=2;d=L[(L[d>>2]<<2)+n>>2];h=L[d+4>>2];p:{q:{i=L[d>>2];if((i|0)==(f|0)){a=0;if((g|0)==(h|0)){break q}}r:{if(!((g|0)!=(i|0)|(f|0)!=(h|0))){f=0;a=2;break r}e=L[d+8>>2];if(!((f|0)!=(h|0)|(e|0)!=(g|0))){a=1;e=-1;break q}if(!((g|0)!=(h|0)|(f|0)!=(e|0))){f=1;a=-1;break r}if(!((f|0)!=(e|0)|(g|0)!=(i|0))){a=2;e=-1;break q}a=27208;if((e|0)!=(g|0)|(f|0)!=(i|0)){break p}f=2;a=-1}a=((a+f<<2)+d|0)+12|0;break p}a=(d+(a+e<<2)|0)+12|0}L[a>>2]=m;if((l|0)!=3){continue}break}}function OD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=S(0),g=S(0),h=0,i=0,j=0,k=S(0),l=S(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=0,w=0,x=0,y=0,z=0;g=P[b+44>>2];m=P[b+40>>2];n=P[b+36>>2];k=P[b+28>>2];o=P[b+24>>2];p=P[b+20>>2];q=P[b+32>>2];r=P[b+16>>2];l=P[b+12>>2];s=P[b+8>>2];t=P[b+4>>2];u=P[b>>2];i=L[a+4>>2];b=L[i+4>>2];a:{if((b|0)!=L[i+8>>2]){break a}v=b?b<<1:1;if((v|0)<=(b|0)){break a}if(v){L[8513]=L[8513]+1;w=ha[L[6798]](v<<6,16)|0;b=L[i+4>>2]}b:{if((b|0)<=0){break b}if((b|0)!=1){z=b&-2;while(1){h=x<<6;e=h+w|0;a=L[i+12>>2]+h|0;j=L[a+4>>2];L[e>>2]=L[a>>2];L[e+4>>2]=j;j=L[a+60>>2];L[e+56>>2]=L[a+56>>2];L[e+60>>2]=j;j=L[a+52>>2];L[e+48>>2]=L[a+48>>2];L[e+52>>2]=j;j=L[a+44>>2];L[e+40>>2]=L[a+40>>2];L[e+44>>2]=j;j=L[a+36>>2];L[e+32>>2]=L[a+32>>2];L[e+36>>2]=j;j=L[a+28>>2];L[e+24>>2]=L[a+24>>2];L[e+28>>2]=j;j=L[a+20>>2];L[e+16>>2]=L[a+16>>2];L[e+20>>2]=j;j=L[a+12>>2];L[e+8>>2]=L[a+8>>2];L[e+12>>2]=j;a=h|64;e=a+w|0;a=a+L[i+12>>2]|0;h=L[a+4>>2];L[e>>2]=L[a>>2];L[e+4>>2]=h;h=L[a+12>>2];L[e+8>>2]=L[a+8>>2];L[e+12>>2]=h;h=L[a+20>>2];L[e+16>>2]=L[a+16>>2];L[e+20>>2]=h;h=L[a+28>>2];L[e+24>>2]=L[a+24>>2];L[e+28>>2]=h;h=L[a+36>>2];L[e+32>>2]=L[a+32>>2];L[e+36>>2]=h;h=L[a+44>>2];L[e+40>>2]=L[a+40>>2];L[e+44>>2]=h;h=L[a+52>>2];L[e+48>>2]=L[a+48>>2];L[e+52>>2]=h;h=L[a+60>>2];L[e+56>>2]=L[a+56>>2];L[e+60>>2]=h;x=x+2|0;y=y+2|0;if((y|0)!=(z|0)){continue}break}}if(!(b&1)){break b}a=x<<6;b=a+w|0;a=a+L[i+12>>2]|0;e=L[a+4>>2];L[b>>2]=L[a>>2];L[b+4>>2]=e;e=L[a+60>>2];L[b+56>>2]=L[a+56>>2];L[b+60>>2]=e;e=L[a+52>>2];L[b+48>>2]=L[a+48>>2];L[b+52>>2]=e;e=L[a+44>>2];L[b+40>>2]=L[a+40>>2];L[b+44>>2]=e;e=L[a+36>>2];L[b+32>>2]=L[a+32>>2];L[b+36>>2]=e;e=L[a+28>>2];L[b+24>>2]=L[a+24>>2];L[b+28>>2]=e;e=L[a+20>>2];L[b+16>>2]=L[a+16>>2];L[b+20>>2]=e;e=L[a+12>>2];L[b+8>>2]=L[a+8>>2];L[b+12>>2]=e}a=L[i+12>>2];if(!(a?!a|!M[i+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[i+12>>2]=w;J[i+16|0]=1;L[i+8>>2]=v;b=L[i+4>>2]}a=L[i+12>>2]+(b<<6)|0;L[a+40>>2]=d;L[a+36>>2]=c;L[a+32>>2]=-1;f=l>S(0)?l:S(0);f=f>2]=g>f?g:f;f=s>S(-0xde0b6b000000000)?s:S(-0xde0b6b000000000);f=f>2]=fS(-0xde0b6b000000000)?t:S(-0xde0b6b000000000);f=f>2]=fS(-0xde0b6b000000000)?u:S(-0xde0b6b000000000);f=f>2]=f>2]=go?o:g;P[a+8>>2]=g>m?m:g;g=tp?p:g;P[a+4>>2]=g>n?n:g;g=ur?r:g;P[a>>2]=g>q?q:g;L[i+4>>2]=L[i+4>>2]+1}function Cw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=S(0),h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=S(0);i=fa-16|0;fa=i;L[i+12>>2]=a;L[i+8>>2]=b;L[i+4>>2]=c;a=L[i+8>>2];j=L[i+4>>2];b=fa-128|0;fa=b;c=L[i+12>>2];L[c+68>>2]=L[c+68>>2]+1;d=L[a+12>>2];L[b+72>>2]=L[a+8>>2];L[b+76>>2]=d;d=L[a+4>>2];L[b+64>>2]=L[a>>2];L[b+68>>2]=d;d=L[a+28>>2];L[b+88>>2]=L[a+24>>2];L[b+92>>2]=d;d=L[a+20>>2];L[b+80>>2]=L[a+16>>2];L[b+84>>2]=d;d=L[a+44>>2];L[b+104>>2]=L[a+40>>2];L[b+108>>2]=d;d=L[a+36>>2];L[b+96>>2]=L[a+32>>2];L[b+100>>2]=d;d=L[a+60>>2];L[b+120>>2]=L[a+56>>2];L[b+124>>2]=d;d=L[a+52>>2];L[b+112>>2]=L[a+48>>2];L[b+116>>2]=d;n=L[j+4>>2];o=S(ha[L[L[j>>2]+48>>2]](j));ha[L[L[j>>2]+8>>2]](j,a,b+48|0,b+32|0);g=P[b+48>>2];if(g>2]){P[c+32>>2]=g}g=P[b+32>>2];if(g>P[c+48>>2]){P[c+48>>2]=g}g=P[b+52>>2];if(g>2]){P[c+36>>2]=g}g=P[b+36>>2];if(g>P[c+52>>2]){P[c+52>>2]=g}g=P[b+56>>2];if(g>2]){P[c+40>>2]=g}g=P[b+40>>2];if(g>P[c+56>>2]){P[c+56>>2]=g}a=L[c+64>>2];if(a){d=L[b+60>>2];L[b+8>>2]=L[b+56>>2];L[b+12>>2]=d;d=L[b+44>>2];L[b+24>>2]=L[b+40>>2];L[b+28>>2]=d;d=L[b+36>>2];L[b+16>>2]=L[b+32>>2];L[b+20>>2]=d;d=L[b+52>>2];L[b>>2]=L[b+48>>2];L[b+4>>2]=d;a=Bb(a,b,L[c+16>>2])}else{a=0}h=L[c+16>>2];a:{if((h|0)!=L[c+20>>2]){break a}k=h?h<<1:1;if((k|0)<=(h|0)){break a}if(k){L[8513]=L[8513]+1;m=ha[L[6798]](R(k,80),16)|0;h=L[c+16>>2]}if((h|0)>0){while(1){d=R(l,80);e=d+m|0;d=d+L[c+24>>2]|0;f=L[d+4>>2];L[e>>2]=L[d>>2];L[e+4>>2]=f;f=L[d+12>>2];L[e+8>>2]=L[d+8>>2];L[e+12>>2]=f;f=L[d+28>>2];L[e+24>>2]=L[d+24>>2];L[e+28>>2]=f;f=L[d+20>>2];L[e+16>>2]=L[d+16>>2];L[e+20>>2]=f;f=L[d+44>>2];L[e+40>>2]=L[d+40>>2];L[e+44>>2]=f;f=L[d+36>>2];L[e+32>>2]=L[d+32>>2];L[e+36>>2]=f;f=L[d+60>>2];L[e+56>>2]=L[d+56>>2];L[e+60>>2]=f;f=L[d+52>>2];L[e+48>>2]=L[d+48>>2];L[e+52>>2]=f;f=L[d+68>>2];L[e+64>>2]=L[d+64>>2];L[e+68>>2]=f;f=L[d+76>>2];L[e+72>>2]=L[d+72>>2];L[e+76>>2]=f;l=l+1|0;if((l|0)!=(h|0)){continue}break}}d=L[c+24>>2];if(!(d?!d|!M[c+28|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[c+24>>2]=m;J[c+28|0]=1;L[c+20>>2]=k;h=L[c+16>>2]}e=L[b+68>>2];d=L[c+24>>2]+R(h,80)|0;L[d>>2]=L[b+64>>2];L[d+4>>2]=e;e=L[b+76>>2];L[d+8>>2]=L[b+72>>2];L[d+12>>2]=e;e=L[b+92>>2];L[d+24>>2]=L[b+88>>2];L[d+28>>2]=e;e=L[b+84>>2];L[d+16>>2]=L[b+80>>2];L[d+20>>2]=e;e=L[b+100>>2];L[d+32>>2]=L[b+96>>2];L[d+36>>2]=e;e=L[b+108>>2];L[d+40>>2]=L[b+104>>2];L[d+44>>2]=e;e=L[b+116>>2];L[d+48>>2]=L[b+112>>2];L[d+52>>2]=e;e=L[b+124>>2];L[d+56>>2]=L[b+120>>2];L[d+60>>2]=e;L[d+64>>2]=j;L[d+68>>2]=n;P[d+72>>2]=o;L[d+76>>2]=a;L[c+16>>2]=L[c+16>>2]+1;fa=b+128|0;fa=i+16|0}function Oo(a,b,c,d,e){a=a|0;b=b|0;c=S(c);d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=S(0),k=S(0),l=0;f=fa-272|0;fa=f;L[f+268>>2]=a;L[f+264>>2]=b;P[f+260>>2]=c;L[f+256>>2]=d;L[f+252>>2]=e;d=L[f+268>>2];e=f+236|0;Ga(e,L[f+264>>2],f+260|0);a=fa-16|0;g=f+220|0;L[a+12>>2]=g;i=f+204|0;L[a+12>>2]=i;a=fa-32|0;fa=a;L[a+28>>2]=L[f+264>>2];L[a+24>>2]=g;L[a+20>>2]=i;b=fa-16|0;L[b+12>>2]=L[a+28>>2];h=fa-16|0;P[h+12>>2]=P[L[b+12>>2]+8>>2];a:{if(S(T(P[h+12>>2]))>S(.7071067690849304)){b=fa-16|0;L[b+12>>2]=L[a+28>>2];c=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[a+28>>2];j=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[a+28>>2];k=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[a+28>>2];P[a+16>>2]=S(c*j)+S(k*P[L[b+12>>2]+8>>2]);P[b+12>>2]=P[a+16>>2];P[a+12>>2]=S(1)/S(_(P[b+12>>2]));L[b+12>>2]=L[a+24>>2];P[L[b+12>>2]>>2]=0;L[b+12>>2]=L[a+28>>2];c=S(S(-P[L[b+12>>2]+8>>2])*P[a+12>>2]);L[b+12>>2]=L[a+24>>2];P[L[b+12>>2]+4>>2]=c;L[b+12>>2]=L[a+28>>2];c=S(P[L[b+12>>2]+4>>2]*P[a+12>>2]);L[b+12>>2]=L[a+24>>2];P[L[b+12>>2]+8>>2]=c;c=S(P[a+16>>2]*P[a+12>>2]);L[b+12>>2]=L[a+20>>2];P[L[b+12>>2]>>2]=c;L[b+12>>2]=L[a+28>>2];c=P[L[b+12>>2]>>2];L[b+12>>2]=L[a+24>>2];c=S(S(-c)*P[L[b+12>>2]+8>>2]);L[b+12>>2]=L[a+20>>2];P[L[b+12>>2]+4>>2]=c;L[b+12>>2]=L[a+28>>2];c=P[L[b+12>>2]>>2];L[b+12>>2]=L[a+24>>2];c=S(c*P[L[b+12>>2]+4>>2]);break a}b=fa-16|0;L[b+12>>2]=L[a+28>>2];c=P[L[b+12>>2]>>2];L[b+12>>2]=L[a+28>>2];j=P[L[b+12>>2]>>2];L[b+12>>2]=L[a+28>>2];k=P[L[b+12>>2]+4>>2];L[b+12>>2]=L[a+28>>2];P[a+8>>2]=S(c*j)+S(k*P[L[b+12>>2]+4>>2]);P[b+12>>2]=P[a+8>>2];P[a+4>>2]=S(1)/S(_(P[b+12>>2]));L[b+12>>2]=L[a+28>>2];c=S(S(-P[L[b+12>>2]+4>>2])*P[a+4>>2]);L[b+12>>2]=L[a+24>>2];P[L[b+12>>2]>>2]=c;L[b+12>>2]=L[a+28>>2];c=S(P[L[b+12>>2]>>2]*P[a+4>>2]);L[b+12>>2]=L[a+24>>2];P[L[b+12>>2]+4>>2]=c;L[b+12>>2]=L[a+24>>2];P[L[b+12>>2]+8>>2]=0;L[b+12>>2]=L[a+28>>2];c=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[a+24>>2];c=S(S(-c)*P[L[b+12>>2]+4>>2]);L[b+12>>2]=L[a+20>>2];P[L[b+12>>2]>>2]=c;L[b+12>>2]=L[a+28>>2];c=P[L[b+12>>2]+8>>2];L[b+12>>2]=L[a+24>>2];c=S(c*P[L[b+12>>2]>>2]);L[b+12>>2]=L[a+20>>2];P[L[b+12>>2]+4>>2]=c;c=S(P[a+8>>2]*P[a+4>>2])}b=fa-16|0;L[b+12>>2]=L[a+20>>2];P[L[b+12>>2]+8>>2]=c;fa=a+32|0;P[f+200>>2]=100;b=f+168|0;a=f+200|0;Ga(b,g,a);h=f+184|0;ta(h,e,b);b=f+136|0;Ga(b,g,a);g=f+152|0;La(g,e,b);b=f+104|0;Ga(b,i,a);l=f+120|0;ta(l,e,b);b=f+72|0;Ga(b,i,a);a=f+88|0;La(a,e,b);b=f+56|0;xa(b,L[f+256>>2],h);e=f+40|0;xa(e,L[f+256>>2],g);ha[L[L[d>>2]+8>>2]](d,b,e,L[f+252>>2]);b=f+24|0;xa(b,L[f+256>>2],l);e=f+8|0;xa(e,L[f+256>>2],a);ha[L[L[d>>2]+8>>2]](d,b,e,L[f+252>>2]);fa=f+272|0}function bk(a,b,c){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;i=L[b>>2];j=L[a+4>>2];k=L[b+4>>2];f=L[b+8>>2];n=bc(a,c,k,f);e=2;d=L[b+12>>2];o=j+2|0;L[n+20>>2]=o;p=j+1|0;L[n+16>>2]=p;L[n+12>>2]=d;d=L[L[a+12>>2]+(L[b+12>>2]<<2)>>2];l=L[d+4>>2];a:{b:{g=L[d>>2];if((g|0)==(k|0)&(f|0)==(l|0)){break b}e=2;c:{if(!((f|0)!=(g|0)|(k|0)!=(l|0))){break c}e=L[d+8>>2];if(!((k|0)!=(l|0)|(e|0)!=(f|0))){h=1;e=-1;break b}if(!((f|0)!=(l|0)|(e|0)!=(k|0))){h=1;e=-1;break c}if(!((e|0)!=(k|0)|(f|0)!=(g|0))){h=2;e=-1;break b}h=27208;if((f|0)!=(e|0)|(k|0)!=(g|0)){break a}h=2;e=-1}h=((e+h<<2)+d|0)+12|0;break a}h=(d+(e+h<<2)|0)+12|0}L[h>>2]=j;l=bc(a,c,f,i);d=L[b+16>>2];L[l+20>>2]=j;L[l+16>>2]=o;L[l+12>>2]=d;e=2;d=L[L[a+12>>2]+(L[b+16>>2]<<2)>>2];h=L[d+4>>2];d:{e:{m=L[d>>2];if((m|0)==(f|0)&(i|0)==(h|0)){break e}f:{if(!((i|0)!=(m|0)|(f|0)!=(h|0))){f=2;e=0;break f}g=L[d+8>>2];if(!((f|0)!=(h|0)|(g|0)!=(i|0))){q=1;e=-1;break e}if(!((i|0)!=(h|0)|(f|0)!=(g|0))){f=-1;e=1;break f}if(!((f|0)!=(g|0)|(i|0)!=(m|0))){q=2;e=-1;break e}e=27208;if((i|0)!=(g|0)|(f|0)!=(m|0)){break d}f=-1;e=2}e=(d+(e+f<<2)|0)+12|0;break d}e=(d+(e+q<<2)|0)+12|0}L[e>>2]=p;f=bc(a,c,i,k);d=L[b+20>>2];L[f+20>>2]=p;L[f+16>>2]=j;L[f+12>>2]=d;e=2;j=L[a+12>>2];d=L[j+(L[b+20>>2]<<2)>>2];g=L[d+4>>2];g:{h:{m=L[d>>2];if((m|0)==(i|0)){h=0;if((k|0)==(g|0)){break h}}i:{if(!((k|0)!=(m|0)|(i|0)!=(g|0))){i=0;e=2;break i}e=L[d+8>>2];if(!((i|0)!=(g|0)|(e|0)!=(k|0))){h=1;e=-1;break h}if(!((k|0)!=(g|0)|(e|0)!=(i|0))){i=1;e=-1;break i}if(!((e|0)!=(i|0)|(k|0)!=(m|0))){h=2;e=-1;break h}g=27208;if((e|0)!=(k|0)|(i|0)!=(m|0)){break g}i=2;e=-1}g=((e+i<<2)+d|0)+12|0;break g}g=(d+(e+h<<2)|0)+12|0}L[g>>2]=o;d=L[(L[n+12>>2]<<2)+j>>2];if(!(!(L[d>>2]==(c|0)|L[d+4>>2]==(c|0))&L[d+8>>2]!=(c|0))){dg(a,n,d);L[L[a+12>>2]+(L[n+24>>2]<<2)>>2]=0;if(n){L[8514]=L[8514]+1;ha[L[6799]](n)}L[L[a+12>>2]+(L[d+24>>2]<<2)>>2]=0;if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}j=L[a+12>>2]}d=L[(L[l+12>>2]<<2)+j>>2];if(!(!(L[d>>2]==(c|0)|L[d+4>>2]==(c|0))&L[d+8>>2]!=(c|0))){dg(a,l,d);L[L[a+12>>2]+(L[l+24>>2]<<2)>>2]=0;if(l){L[8514]=L[8514]+1;ha[L[6799]](l)}L[L[a+12>>2]+(L[d+24>>2]<<2)>>2]=0;if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}j=L[a+12>>2]}d=L[(L[f+12>>2]<<2)+j>>2];if(!(!(L[d>>2]==(c|0)|L[d+4>>2]==(c|0))&L[d+8>>2]!=(c|0))){dg(a,f,d);L[L[a+12>>2]+(L[f+24>>2]<<2)>>2]=0;if(f){L[8514]=L[8514]+1;ha[L[6799]](f)}L[L[a+12>>2]+(L[d+24>>2]<<2)>>2]=0;if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}j=L[a+12>>2]}L[(L[b+24>>2]<<2)+j>>2]=0;if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}function NC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=S(0),h=S(0),i=0,j=0,k=S(0),l=S(0),m=S(0),n=S(0),o=0,p=S(0),q=0,r=0,s=0,t=0,u=S(0),v=S(0),w=0,x=0,y=0,z=S(0),A=S(0),B=S(0),C=0;e=fa-112|0;fa=e;ha[L[L[a>>2]+112>>2]](a);L[e+104>>2]=0;J[e+108|0]=1;L[e+96>>2]=0;L[e+100>>2]=0;k=P[c+8>>2];l=P[d+8>>2];m=P[c>>2];h=P[d>>2];n=P[c+4>>2];p=P[d+4>>2];L[e+88>>2]=0;l=S(l-k);m=S(h-m);h=S(p-n);k=S(S(1)/S(_(S(S(l*l)+S(S(m*m)+S(h*h))))));P[e+84>>2]=l*k;P[e+80>>2]=h*k;P[e+76>>2]=m*k;t=L[a+68>>2];if((t|0)>0){while(1){o=q<<4;f=o+L[a+84>>2]|0;d=N[f+4>>1];m=P[a+132>>2];h=P[a+100>>2];j=N[f+10>>1];i=N[f+2>>1];l=P[a+128>>2];n=P[a+96>>2];r=N[f+8>>1];k=P[a+92>>2];g=P[a+124>>2];p=S(k+S(S(N[f+6>>1])/g));a:{b:{c:{d:{g=S(S(S(S(S(N[f>>1])/g)+k)+p)*S(.5));k=S(P[c>>2]-g);p=S(p-g);e:{if(S(T(k))>p&S(k*P[e+76>>2])>=S(0)){break e}g=S(S(S(i>>>0)/l)+n);n=S(n+S(S(r>>>0)/l));g=S(S(g+n)*S(.5));l=S(P[c+4>>2]-g);n=S(n-g);if(S(T(l))>n&S(l*P[e+80>>2])>=S(0)){break e}g=S(S(S(d>>>0)/m)+h);h=S(h+S(S(j>>>0)/m));g=S(S(g+h)*S(.5));m=S(P[c+8>>2]-g);g=S(h-g);h=P[e+84>>2];if(S(T(m))>g&S(m*h)>=S(0)){break e}u=P[e+80>>2];z=S(T(u));A=S(T(h));if(S(T(S(S(u*m)-S(l*h))))>S(S(n*A)+S(g*z))){break e}v=P[e+76>>2];B=S(T(v));if(!(S(T(S(S(h*k)-S(m*v))))>S(S(p*A)+S(g*B)))){break d}}j=L[f+12>>2]>=0;d=0;break c}i=S(T(S(S(v*l)-S(k*u))))>S(S(p*z)+S(n*B));d=!i;w=L[f+12>>2];j=(w|0)>=0;if((w|0)<0|i){break c}f=L[e+96>>2];f:{if((f|0)!=L[e+100>>2]){break f}r=f?f<<1:1;if((r|0)<=(f|0)){break f}g:{if(!r){d=0;break g}L[8513]=L[8513]+1;d=ha[L[6798]](r<<2,16)|0;f=L[e+96>>2]}o=L[e+104>>2];h:{i:{if((f|0)>0){x=0;j=0;if(f>>>0>=4){C=f&-4;y=0;while(1){i=j<<2;L[i+d>>2]=L[i+o>>2];s=i|4;L[s+d>>2]=L[o+s>>2];s=i|8;L[s+d>>2]=L[o+s>>2];i=i|12;L[i+d>>2]=L[i+o>>2];j=j+4|0;y=y+4|0;if((C|0)!=(y|0)){continue}break}}f=f&3;if(!f){break i}while(1){i=j<<2;L[i+d>>2]=L[i+o>>2];j=j+1|0;x=x+1|0;if((f|0)!=(x|0)){continue}break}break i}if(!o){break h}}if(o?M[e+108|0]:0){L[8514]=L[8514]+1;ha[L[6799]](o)}f=L[e+96>>2]}L[e+104>>2]=d;J[e+108|0]=1;L[e+100>>2]=r}L[L[e+104>>2]+(f<<2)>>2]=w;L[e+96>>2]=L[e+96>>2]+1;break b}if(d|j){break b}q=q-L[(o+L[a+84>>2]|0)+12>>2]|0;break a}q=q+1|0}if((t|0)>(q|0)){continue}break}}c=L[e+96>>2];if(c){d=L[a+172>>2];L[e+68>>2]=1008981770;while(1){c=c-1|0;q=c<<2;f=L[q+L[e+104>>2]>>2];j=ha[L[L[a>>2]+84>>2]](a)|0;t=f;f=e+4|0;ha[L[L[j>>2]+20>>2]](j,t,f);ha[L[L[b>>2]+8>>2]](b,f,d,L[q+L[e+104>>2]>>2]);if(c){continue}break}}ha[L[L[a>>2]+116>>2]](a);a=L[e+104>>2];if(!(a?!a|!M[e+108|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}fa=e+112|0}function Qo(a,b,c,d,e,f){a=a|0;b=S(b);c=S(c);d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;g=fa-384|0;fa=g;L[g+380>>2]=a;P[g+376>>2]=b;P[g+372>>2]=c;L[g+368>>2]=d;L[g+364>>2]=e;L[g+360>>2]=f;a=L[g+380>>2];d=fa-16|0;L[d+12>>2]=L[g+364>>2];d=L[d+12>>2]+48|0;e=L[d+12>>2];L[g+352>>2]=L[d+8>>2];L[g+356>>2]=e;e=L[d+4>>2];L[g+344>>2]=L[d>>2];L[g+348>>2]=e;P[g+324>>2]=0;P[g+320>>2]=0;P[g+316>>2]=0;d=g+328|0;la(d,g+324|0,g+320|0,g+316|0);b=P[g+372>>2];e=fa-16|0;L[e+12>>2]=d;P[L[e+12>>2]+(L[g+368>>2]<<2)>>2]=b;L[g+312>>2]=30;P[g+292>>2]=0;P[g+288>>2]=0;P[g+284>>2]=0;d=g+296|0;la(d,g+292|0,g+288|0,g+284|0);b=S(-P[g+372>>2]);e=fa-16|0;L[e+12>>2]=d;P[L[e+12>>2]+(L[g+368>>2]<<2)>>2]=b;P[g+264>>2]=0;P[g+260>>2]=0;P[g+256>>2]=0;d=g+268|0;la(d,g+264|0,g+260|0,g+256|0);b=P[g+372>>2];e=fa-16|0;L[e+12>>2]=d;P[L[e+12>>2]+(L[g+368>>2]<<2)>>2]=b;L[g+252>>2]=0;while(1){if(L[g+252>>2]<360){b=S(Qa(S(S(L[g+252>>2])*S(.01745329238474369)))*P[g+376>>2]);d=fa-16|0;e=g+296|0;L[d+12>>2]=e;P[L[d+12>>2]+((L[g+368>>2]+1|0)%3<<2)>>2]=b;f=g+268|0;L[d+12>>2]=f;P[L[d+12>>2]+((L[g+368>>2]+1|0)%3<<2)>>2]=b;b=S(Ra(S(S(L[g+252>>2])*S(.01745329238474369)))*P[g+376>>2]);d=fa-16|0;L[d+12>>2]=e;P[L[d+12>>2]+((L[g+368>>2]+2|0)%3<<2)>>2]=b;d=fa-16|0;L[d+12>>2]=f;P[L[d+12>>2]+((L[g+368>>2]+2|0)%3<<2)>>2]=b;d=fa-16|0;L[d+12>>2]=L[g+364>>2];h=g+220|0;ua(h,L[d+12>>2],e);d=g+236|0;e=g+344|0;ta(d,e,h);h=fa-16|0;L[h+12>>2]=L[g+364>>2];i=g+188|0;ua(i,L[h+12>>2],f);f=g+204|0;ta(f,e,i);ha[L[L[a>>2]+8>>2]](a,d,f,L[g+360>>2]);L[g+252>>2]=L[g+312>>2]+L[g+252>>2];continue}break}P[g+168>>2]=0;P[g+164>>2]=0;P[g+160>>2]=0;d=g+172|0;la(d,g+168|0,g+164|0,g+160|0);e=fa-16|0;L[e+12>>2]=d;P[L[e+12>>2]+(L[g+368>>2]<<2)>>2]=1;P[g+140>>2]=0;P[g+136>>2]=0;P[g+132>>2]=0;e=g+144|0;la(e,g+140|0,g+136|0,g+132|0);f=fa-16|0;L[f+12>>2]=e;P[L[f+12>>2]+((L[g+368>>2]+1|0)%3<<2)>>2]=1;f=fa-16|0;L[f+12>>2]=L[g+364>>2];h=g+100|0;i=L[f+12>>2];f=g+328|0;ua(h,i,f);i=g+116|0;j=g+344|0;La(i,j,h);h=fa-16|0;L[h+12>>2]=L[g+364>>2];k=g+84|0;ua(k,L[h+12>>2],d);h=fa-16|0;L[h+12>>2]=L[g+364>>2];l=g+68|0;ua(l,L[h+12>>2],e);b=P[g+376>>2];ha[L[L[a>>2]+60>>2]](a,i,k,l,b,b,S(0),S(6.2831854820251465),L[g+360>>2],0,S(10));h=fa-16|0;L[h+12>>2]=L[g+364>>2];i=g+36|0;ua(i,L[h+12>>2],f);f=g+52|0;ta(f,j,i);h=fa-16|0;L[h+12>>2]=L[g+364>>2];i=g+20|0;ua(i,L[h+12>>2],d);d=fa-16|0;L[d+12>>2]=L[g+364>>2];h=g+4|0;ua(h,L[d+12>>2],e);ha[L[L[a>>2]+60>>2]](a,f,i,h,P[g+376>>2],P[g+376>>2],S(0),S(6.2831854820251465),L[g+360>>2],0,S(10));fa=g+384|0}function PD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=S(0),h=0,i=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=0,u=0,v=S(0),w=S(0),x=S(0),y=S(0),z=S(0),A=S(0),B=0,C=0;f=P[b+40>>2];g=P[b+36>>2];e=P[b+24>>2];o=P[b+20>>2];i=L[a+8>>2];v=P[i+44>>2];w=P[i+40>>2];x=P[i+12>>2];y=P[i+8>>2];p=P[b+32>>2];q=P[b+16>>2];n=P[b+8>>2];r=P[b+4>>2];s=P[b>>2];z=P[i+36>>2];A=P[i+4>>2];b=L[a+4>>2];a=L[b+4>>2];a:{if((a|0)!=L[b+8>>2]){break a}t=a?a<<1:1;if((t|0)<=(a|0)){break a}b:{if(!t){i=0;break b}L[8513]=L[8513]+1;i=ha[L[6798]](t<<4,16)|0;a=L[b+4>>2]}c:{if((a|0)<=0){break c}if((a|0)!=1){C=a&-2;while(1){l=k<<4;m=l+i|0;h=l+L[b+12>>2]|0;u=L[h+4>>2];L[m>>2]=L[h>>2];L[m+4>>2]=u;u=L[h+12>>2];L[m+8>>2]=L[h+8>>2];L[m+12>>2]=u;h=l|16;l=h+i|0;h=h+L[b+12>>2]|0;m=L[h+4>>2];L[l>>2]=L[h>>2];L[l+4>>2]=m;m=L[h+12>>2];L[l+8>>2]=L[h+8>>2];L[l+12>>2]=m;k=k+2|0;B=B+2|0;if((B|0)!=(C|0)){continue}break}}if(!(a&1)){break c}a=k<<4;k=a+i|0;a=a+L[b+12>>2]|0;h=L[a+4>>2];L[k>>2]=L[a>>2];L[k+4>>2]=h;h=L[a+12>>2];L[k+8>>2]=L[a+8>>2];L[k+12>>2]=h}a=L[b+12>>2];if(!(a?!a|!M[b+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[b+12>>2]=i;J[b+16|0]=1;L[b+8>>2]=t;a=L[b+4>>2]}a=L[b+12>>2]+(a<<4)|0;L[a+12>>2]=c<<21|d;j=n>S(-0xde0b6b000000000)?n:S(-0xde0b6b000000000);j=e>j?e:j;j=f>j?f:j;n=n=S(0)){d=~~f>>>0;break d}d=0}K[a+4>>1]=d&65534;f=r>S(-0xde0b6b000000000)?r:S(-0xde0b6b000000000);f=fo?o:e;g=e>g?g:e;d=S(f-g)=S(0)){h=~~g>>>0;break e}h=0}K[a+2>>1]=h&65534;g=s>S(-0xde0b6b000000000)?s:S(-0xde0b6b000000000);g=gq?q:e;e=e>p?p:e;i=S(g-e)=S(0)){h=~~e>>>0;break f}h=0}K[a>>1]=h&65534;e=S(S(S((c?S(j+S(.0010000000474974513)):j)-x)*v)+S(1));g:{if(e=S(0)){c=~~e>>>0;break g}c=0}K[a+10>>1]=c|1;f=S(S(S((d?S(f+S(.0010000000474974513)):f)-y)*w)+S(1));h:{if(f=S(0)){c=~~f>>>0;break h}c=0}K[a+8>>1]=c|1;f=S(S(S((i?S(g+S(.0010000000474974513)):g)-A)*z)+S(1));i:{if(f=S(0)){c=~~f>>>0;break i}c=0}K[a+6>>1]=c|1;L[b+4>>2]=L[b+4>>2]+1}function BF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=S(0),h=S(0),i=S(0),j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=S(0),r=S(0),s=S(0);l=fa-32|0;fa=l;d=L[a+4>>2];ha[L[L[d>>2]+16>>2]](d,l+28|0,l+24|0,l+20|0,l+16|0,l+12|0,l+8|0,l+4|0,l,b);e=L[a+4>>2];j=L[l+12>>2]+R(L[l+8>>2],c)|0;m=L[l+16>>2];d=L[l+28>>2];f=L[l>>2];a:{if(!L[l+20>>2]){b:{c:{switch(f-2|0){case 0:k=L[j+8>>2];break b;case 1:k=N[j+4>>1];break b;default:break c}}k=M[j+2|0]}k=R(k,m)+d|0;g=P[k>>2];h=P[k+4>>2];i=P[k+8>>2];q=P[e+4>>2];r=P[e+8>>2];s=P[e+12>>2];L[a+56>>2]=0;P[a+52>>2]=i*s;P[a+48>>2]=h*r;P[a+44>>2]=g*q;d:{e:{switch(f-2|0){case 0:k=L[j+4>>2];break d;case 1:k=N[j+2>>1];break d;default:break e}}k=M[j+1|0]}k=R(k,m)+d|0;g=P[k>>2];h=P[k+4>>2];i=P[k+8>>2];q=P[e+4>>2];r=P[e+8>>2];s=P[e+12>>2];L[a+40>>2]=0;P[a+36>>2]=i*s;P[a+32>>2]=h*r;P[a+28>>2]=g*q;f:{g:{switch(f-2|0){case 0:f=L[j>>2];break f;case 1:f=N[j>>1];break f;default:break g}}f=M[j|0]}d=R(f,m)+d|0;k=d+8|0;g=S(P[d+4>>2]*P[e+8>>2]);i=S(P[d>>2]*P[e+4>>2]);h=P[e+12>>2];break a}k=e+12|0;h:{switch(f-2|0){case 0:f=R(L[j+8>>2],m)+d|0;n=Q[f>>3];o=Q[f+8>>3];p=Q[f+16>>3];g=P[e+4>>2];h=P[e+8>>2];i=P[e+12>>2];L[a+56>>2]=0;P[a+52>>2]=i*S(p);P[a+48>>2]=h*S(o);P[a+44>>2]=g*S(n);f=R(L[j+4>>2],m)+d|0;n=Q[f>>3];o=Q[f+8>>3];p=Q[f+16>>3];g=P[e+4>>2];h=P[e+8>>2];i=P[e+12>>2];L[a+40>>2]=0;P[a+36>>2]=i*S(p);P[a+32>>2]=h*S(o);P[a+28>>2]=g*S(n);d=R(L[j>>2],m)+d|0;g=S(P[e+8>>2]*S(Q[d+8>>3]));i=S(P[e+4>>2]*S(Q[d>>3]));h=S(Q[d+16>>3]);break a;case 1:f=R(N[j+4>>1],m)+d|0;n=Q[f>>3];o=Q[f+8>>3];p=Q[f+16>>3];g=P[e+4>>2];h=P[e+8>>2];i=P[e+12>>2];L[a+56>>2]=0;P[a+52>>2]=i*S(p);P[a+48>>2]=h*S(o);P[a+44>>2]=g*S(n);f=R(N[j+2>>1],m)+d|0;n=Q[f>>3];o=Q[f+8>>3];p=Q[f+16>>3];g=P[e+4>>2];h=P[e+8>>2];i=P[e+12>>2];L[a+40>>2]=0;P[a+36>>2]=i*S(p);P[a+32>>2]=h*S(o);P[a+28>>2]=g*S(n);d=R(N[j>>1],m)+d|0;g=S(P[e+8>>2]*S(Q[d+8>>3]));i=S(P[e+4>>2]*S(Q[d>>3]));h=S(Q[d+16>>3]);break a;default:break h}}f=R(M[j+2|0],m)+d|0;n=Q[f>>3];o=Q[f+8>>3];p=Q[f+16>>3];g=P[e+4>>2];h=P[e+8>>2];i=P[e+12>>2];L[a+56>>2]=0;P[a+52>>2]=i*S(p);P[a+48>>2]=h*S(o);P[a+44>>2]=g*S(n);f=R(M[j+1|0],m)+d|0;n=Q[f>>3];o=Q[f+8>>3];p=Q[f+16>>3];g=P[e+4>>2];h=P[e+8>>2];i=P[e+12>>2];L[a+40>>2]=0;P[a+36>>2]=i*S(p);P[a+32>>2]=h*S(o);P[a+28>>2]=g*S(n);d=R(M[j|0],m)+d|0;g=S(P[e+8>>2]*S(Q[d+8>>3]));i=S(P[e+4>>2]*S(Q[d>>3]));h=S(Q[d+16>>3])}q=P[k>>2];L[a+24>>2]=0;P[a+16>>2]=g;P[a+12>>2]=i;P[a+20>>2]=q*h;d=L[a+8>>2];ha[L[L[d>>2]+8>>2]](d,a+12|0,b,c);a=L[a+4>>2];ha[L[L[a>>2]+24>>2]](a,b);fa=l+32|0}function Ld(a,b,c,d,e,f){var g=0,h=0,i=0,j=S(0);L[a+104>>2]=0;L[a+108>>2]=0;J[a+100|0]=0;L[a+96>>2]=0;L[a+92>>2]=e;K[a+6>>1]=65535;K[a+4>>1]=65534;L[a>>2]=5520;if(!e){L[8513]=L[8513]+1;e=qh(ha[L[6798]](76,16)|0);J[a+100|0]=1;L[a+92>>2]=e}if(!f){L[8513]=L[8513]+1;e=ha[L[6798]](24,16)|0;L[e+4>>2]=0;L[e+8>>2]=0;L[e+20>>2]=0;L[e>>2]=5584;L[e+12>>2]=0;L[e+16>>2]=0;L[e+8>>2]=0;J[e+20|0]=1;L[a+112>>2]=e;L[8513]=L[8513]+1;e=th(ha[L[6798]](196,16)|0,L[a+112>>2]);L[a+108>>2]=e;J[e+193|0]=1}e=L[b+4>>2];L[a+8>>2]=L[b>>2];L[a+12>>2]=e;e=L[b+12>>2];L[a+16>>2]=L[b+8>>2];L[a+20>>2]=e;b=L[c+12>>2];L[a+32>>2]=L[c+8>>2];L[a+36>>2]=b;b=L[c+4>>2];L[a+24>>2]=L[c>>2];L[a+28>>2]=b;e=0;L[a+52>>2]=0;j=S(N[a+6>>1]);P[a+48>>2]=j/S(P[a+32>>2]-P[a+16>>2]);P[a+44>>2]=j/S(P[a+28>>2]-P[a+12>>2]);P[a+40>>2]=j/S(P[a+24>>2]-P[a+8>>2]);L[8513]=L[8513]+1;f=d+1|0;d=f&65535;i=d<<6;c=ha[L[6798]](i,16)|0;a:{if(!d){K[a+58>>1]=f;L[a+60>>2]=c;K[a+64>>1]=1;K[a+56>>1]=0;break a}b=c;g=d&7;if(g){while(1){L[b+8>>2]=0;L[b>>2]=0;b=b- -64|0;e=e+1|0;if((g|0)!=(e|0)){continue}break}}if((d-1&67108863)>>>0>=7){e=c+i|0;while(1){L[b+448>>2]=0;L[b+384>>2]=0;L[b+320>>2]=0;L[b+256>>2]=0;L[b+192>>2]=0;L[b+128>>2]=0;L[b+64>>2]=0;L[b+8>>2]=0;L[b>>2]=0;L[b+456>>2]=0;L[b+392>>2]=0;L[b+328>>2]=0;L[b+264>>2]=0;L[b+200>>2]=0;L[b+136>>2]=0;L[b+72>>2]=0;b=b+512|0;if((e|0)!=(b|0)){continue}break}}K[a+58>>1]=f;L[a+60>>2]=c;b=1;K[a+64>>1]=1;K[a+56>>1]=0;if((f&65535)>>>0<2){break a}e=d-1|0;f=e&7;if(d-2>>>0>=7){i=e&-8;e=0;while(1){g=b+1|0;K[(c+(b<<6)|0)+48>>1]=g;h=c+(g<<6)|0;g=b+2|0;K[h+48>>1]=g;h=c+(g<<6)|0;g=b+3|0;K[h+48>>1]=g;h=c+(g<<6)|0;g=b+4|0;K[h+48>>1]=g;h=c+(g<<6)|0;g=b+5|0;K[h+48>>1]=g;h=c+(g<<6)|0;g=b+6|0;K[h+48>>1]=g;h=c+(g<<6)|0;g=b+7|0;K[h+48>>1]=g;b=b+8|0;K[(c+(g<<6)|0)+48>>1]=b;e=e+8|0;if((i|0)!=(e|0)){continue}break}}if(!f){break a}e=0;while(1){g=c+(b<<6)|0;b=b+1|0;K[g+48>>1]=b;e=e+1|0;if((f|0)!=(e|0)){continue}break}}K[(c+(d<<6)|0)-16>>1]=0;L[8513]=L[8513]+1;b=d<<3;c=ha[L[6798]](b,16)|0;L[a+68>>2]=c;L[a+80>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](b,16)|0;L[a+72>>2]=c;L[a+84>>2]=c;L[8513]=L[8513]+1;b=ha[L[6798]](b,16)|0;L[a+76>>2]=b;L[a+88>>2]=b;b=L[a+60>>2];K[b+54>>1]=1;K[b+48>>1]=0;L[b>>2]=0;c=L[a+68>>2];K[c>>1]=0;K[c+2>>1]=0;d=N[a+6>>1];K[c+6>>1]=0;K[c+4>>1]=d;K[b+56>>1]=1;K[b+50>>1]=0;c=L[a+72>>2];K[c>>1]=0;K[c+2>>1]=0;d=N[a+6>>1];K[c+6>>1]=0;K[c+4>>1]=d;K[b+58>>1]=1;K[b+52>>1]=0;b=L[a+76>>2];K[b>>1]=0;K[b+2>>1]=0;c=N[a+6>>1];K[b+6>>1]=0;K[b+4>>1]=c;L[a>>2]=5356}function bt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=S(0),g=S(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=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=0,B=0,C=0,D=0,E=S(0),F=S(0),G=S(0);e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;J[e+7|0]=c;A=oa(1128);c=L[e+12>>2];a=L[e+8>>2];B=M[e+7|0];b=ub(A,7,al(),c);J[b+48|0]=0;L[b>>2]=20084;d=L[a+12>>2];L[b+124>>2]=L[a+8>>2];L[b+128>>2]=d;d=L[a+4>>2];L[b+116>>2]=L[a>>2];L[b+120>>2]=d;d=L[a+28>>2];L[b+140>>2]=L[a+24>>2];L[b+144>>2]=d;d=L[a+20>>2];L[b+132>>2]=L[a+16>>2];L[b+136>>2]=d;d=L[a+36>>2];L[b+148>>2]=L[a+32>>2];L[b+152>>2]=d;d=L[a+44>>2];L[b+156>>2]=L[a+40>>2];L[b+160>>2]=d;d=L[a+56>>2];C=L[a+60>>2];D=L[a+52>>2];a=L[a+48>>2];J[b+180|0]=B&1;L[b+164>>2]=a;L[b+168>>2]=D;L[b+172>>2]=d;L[b+176>>2]=C;o=P[b+172>>2];p=P[b+164>>2];q=P[b+168>>2];r=P[b+148>>2];s=P[b+116>>2];t=P[b+132>>2];u=P[b+152>>2];v=P[b+120>>2];w=P[b+136>>2];x=P[b+156>>2];y=P[b+124>>2];z=P[b+140>>2];E=P[c+52>>2];F=P[c+56>>2];G=P[c+60>>2];f=P[c+12>>2];g=P[c+8>>2];h=P[c+28>>2];i=P[c+20>>2];j=P[c+24>>2];k=P[c+44>>2];l=P[c+36>>2];m=P[c+40>>2];n=P[c+4>>2];L[b+288>>2]=1065353216;L[b+292>>2]=0;L[b+280>>2]=1065353216;L[b+284>>2]=1060320051;L[b+272>>2]=1065353216;L[b+276>>2]=0;L[b+264>>2]=1065353216;L[b+268>>2]=1060320051;L[b+224>>2]=0;L[b+228>>2]=0;L[b+216>>2]=1065353216;L[b+220>>2]=1060320051;L[b+208>>2]=0;L[b+212>>2]=0;L[b+200>>2]=1065353216;L[b+204>>2]=1060320051;L[b+192>>2]=0;L[b+196>>2]=0;L[b+184>>2]=1065353216;L[b+188>>2]=-1082130432;L[b+112>>2]=0;L[b+96>>2]=0;L[b+80>>2]=0;L[b- -64>>2]=0;P[b+92>>2]=S(x*k)+S(S(y*l)+S(z*m));P[b+88>>2]=S(u*k)+S(S(v*l)+S(w*m));P[b+84>>2]=S(r*k)+S(S(s*l)+S(t*m));P[b+76>>2]=S(x*h)+S(S(y*i)+S(z*j));P[b+72>>2]=S(u*h)+S(S(v*i)+S(w*j));P[b+68>>2]=S(r*h)+S(S(s*i)+S(t*j));P[b+60>>2]=S(x*f)+S(S(y*n)+S(g*z));P[b+56>>2]=S(u*f)+S(S(v*n)+S(g*w));P[b+52>>2]=S(r*f)+S(S(s*n)+S(t*g));P[b+108>>2]=G+S(S(o*k)+S(S(p*l)+S(m*q)));P[b+104>>2]=F+S(S(o*h)+S(S(p*i)+S(j*q)));P[b+100>>2]=E+S(S(o*f)+S(S(p*n)+S(g*q)));L[b+1124>>2]=0;L[b+1116>>2]=0;L[b+1120>>2]=0;J[b+1096|0]=0;L[b+256>>2]=1065353216;L[b+260>>2]=0;L[b+248>>2]=1065353216;L[b+252>>2]=1060320051;L[b+240>>2]=1065353216;L[b+244>>2]=0;L[b+232>>2]=1065353216;L[b+236>>2]=1060320051;L[b+1100>>2]=0;L[b+1104>>2]=0;L[b+300>>2]=0;a=b+1105|0;J[a|0]=0;J[a+1|0]=0;J[a+2|0]=0;J[a+3|0]=0;J[a+4|0]=0;J[a+5|0]=0;J[a+6|0]=0;J[a+7|0]=0;J[b+49|0]=1;sg(b,L[b+28>>2]+4|0,L[b+32>>2]+4|0);fa=e+16|0;return A|0}function FB(a){a=a|0;var b=0,c=0,d=0,e=S(0),f=S(0),g=S(0),h=0,i=S(0),j=S(0),k=S(0),l=S(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=S(0),v=S(0),w=S(0),x=S(0),y=S(0),z=S(0),A=S(0);c=fa-48|0;fa=c;if(M[a+1308|0]){L[a+1056>>2]=0;L[a+992>>2]=0;L[a+928>>2]=0;L[a+712>>2]=0;L[a+716>>2]=0;L[a+720>>2]=0;L[a+724>>2]=0;qd(a,L[a+28>>2]+4|0,L[a+32>>2]+4|0);ha[L[L[a>>2]+44>>2]](a);b=a+1292|0;d=L[b+4>>2];L[c+40>>2]=L[b>>2];L[c+44>>2]=d;d=L[a+1288>>2];L[c+32>>2]=L[a+1284>>2];L[c+36>>2]=d;d=L[b+4>>2];L[c+24>>2]=L[b>>2];L[c+28>>2]=d;b=L[a+1288>>2];L[c+16>>2]=L[a+1284>>2];L[c+20>>2]=b;if(P[a+696>>2]>=P[a+680>>2]){b=M[a+1300|0];g=P[(b?a+1064|0:a+1128|0)>>2];f=P[(b?a+1080|0:a+1144|0)>>2];e=P[(b?a+1096|0:a+1160|0)>>2];L[c+12>>2]=0;P[c+8>>2]=e;P[c+4>>2]=f;P[c>>2]=g;ug(a,a+176|0,c,c+32|0,c+16|0)}if(P[a+700>>2]>=P[a+684>>2]){b=M[a+1300|0];g=P[(b?a+1068|0:a+1132|0)>>2];f=P[(b?a+1084|0:a+1148|0)>>2];e=P[(b?a+1100|0:a+1164|0)>>2];L[c+12>>2]=0;P[c+8>>2]=e;P[c+4>>2]=f;P[c>>2]=g;ug(a,a+260|0,c,c+32|0,c+16|0)}if(P[a+704>>2]>=P[a+688>>2]){b=M[a+1300|0];g=P[(b?a+1072|0:a+1136|0)>>2];f=P[(b?a+1088|0:a+1152|0)>>2];e=P[(b?a+1104|0:a+1168|0)>>2];L[c+12>>2]=0;P[c+8>>2]=e;P[c+4>>2]=f;P[c>>2]=g;ug(a,a+344|0,c,c+32|0,c+16|0)}while(1){if(De(a,m)){b=(m<<4)+a|0;d=b+1216|0;h=L[d+4>>2];L[c+8>>2]=L[d>>2];L[c+12>>2]=h;b=b+1208|0;d=L[b+4>>2];L[c>>2]=L[b>>2];L[c+4>>2]=d;d=L[a+32>>2];i=P[d+36>>2];j=P[d+20>>2];n=P[d+40>>2];k=P[d+8>>2];l=P[d+24>>2];o=P[d+44>>2];s=P[d+12>>2];t=P[d+28>>2];h=L[a+28>>2];p=P[h+36>>2];u=P[h+20>>2];q=P[h+40>>2];v=P[h+8>>2];w=P[h+24>>2];r=P[h+44>>2];x=P[h+12>>2];y=P[h+28>>2];z=P[d+4>>2];A=P[h+4>>2];b=R(m,84)+a|0;L[b+436>>2]=0;L[b+440>>2]=0;L[b+428>>2]=0;L[b+432>>2]=0;g=P[c+8>>2];e=P[c>>2];f=P[c+4>>2];L[b+472>>2]=0;L[b+456>>2]=0;r=S(S(r*g)+S(S(x*e)+S(y*f)));P[b+452>>2]=r;q=S(S(q*g)+S(S(v*e)+S(w*f)));P[b+448>>2]=q;p=S(S(p*g)+S(S(A*e)+S(u*f)));P[b+444>>2]=p;e=S(-e);o=S(S(S(s*e)-S(t*f))-S(o*g));P[b+468>>2]=o;n=S(S(S(k*e)-S(l*f))-S(n*g));P[b+464>>2]=n;g=S(S(S(z*e)-S(j*f))-S(i*g));P[b+460>>2]=g;f=P[h+400>>2];e=P[h+404>>2];i=P[h+396>>2];L[b+488>>2]=0;e=S(r*e);P[b+484>>2]=e;f=S(q*f);P[b+480>>2]=f;i=S(p*i);P[b+476>>2]=i;j=P[d+400>>2];k=P[d+404>>2];l=P[d+396>>2];L[b+504>>2]=0;k=S(o*k);P[b+500>>2]=k;j=S(n*j);P[b+496>>2]=j;l=S(g*l);P[b+492>>2]=l;P[b+508>>2]=S(S(e*r)+S(S(i*p)+S(q*f)))+S(S(k*o)+S(S(l*g)+S(n*j)))}m=m+1|0;if((m|0)!=3){continue}break}}fa=c+48|0}function SG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=S(d);var e=S(0),f=S(0),g=S(0),h=S(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=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),J=S(0);n=fa-16|0;fa=n;k=P[b+8>>2];f=P[c+8>>2];q=S(S(k*d)+f);C=P[b+4>>2];B=P[c+4>>2];D=S(S(C*d)+B);E=P[b>>2];e=S(E*d);d=P[c>>2];F=S(e+d);a:{if(M[a+228|0]){r=P[a+44>>2];i=S(-P[a+84>>2]);s=P[a+60>>2];h=P[a+88>>2];t=P[a+76>>2];g=P[a+92>>2];y=S(S(S(r*i)-S(s*h))-S(t*g));e=P[a+204>>2];u=P[a+36>>2];v=P[a+52>>2];w=P[a+68>>2];z=S(S(S(u*i)-S(v*h))-S(w*g));l=P[a+196>>2];x=P[a+40>>2];j=S(x*i);i=P[a+56>>2];j=S(j-S(i*h));h=P[a+72>>2];j=S(j-S(h*g));g=P[a+200>>2];e=S(S(S(S(y*e)+S(S(z*l)+S(j*g)))+P[a+220>>2])+S(S(q*S(S(t*e)+S(S(w*l)+S(h*g))))+S(S(F*S(S(r*e)+S(S(u*l)+S(x*g))))+S(D*S(S(s*e)+S(S(v*l)+S(i*g)))))));g=e;l=k;o=S(S(e-f)*k);f=P[a+172>>2];e=P[a+164>>2];k=P[a+168>>2];e=S(S(S(q*S(S(t*f)+S(S(w*e)+S(h*k))))+S(S(F*S(S(r*f)+S(S(u*e)+S(x*k))))+S(D*S(S(s*f)+S(S(v*e)+S(i*k))))))+S(S(S(y*f)+S(S(z*e)+S(k*j)))+P[a+212>>2]));p=S(S(e-d)*E);k=q;d=P[a+188>>2];f=P[a+180>>2];q=P[a+184>>2];f=S(S(S(k*S(S(t*d)+S(S(w*f)+S(h*q))))+S(S(F*S(S(r*d)+S(S(u*f)+S(x*q))))+S(D*S(S(s*d)+S(S(v*f)+S(i*q))))))+S(S(S(y*d)+S(S(z*f)+S(j*q)))+P[a+216>>2]));d=S(o+S(p+S(C*S(f-B))));P[n+8>>2]=g+S(l*d);P[n+4>>2]=f+S(C*d);P[n>>2]=e+S(E*d);break a}I=P[a+220>>2];r=P[a+204>>2];s=P[a+196>>2];t=P[a+200>>2];J=P[a+212>>2];e=P[a+168>>2];u=P[a+172>>2];v=P[a+164>>2];w=P[a+108>>2];o=S(-P[a+148>>2]);l=P[a+124>>2];p=P[a+152>>2];x=P[a+140>>2];A=P[a+156>>2];i=S(S(S(w*o)-S(l*p))-S(x*A));h=P[a+100>>2];g=P[a+116>>2];y=P[a+132>>2];z=S(S(S(h*o)-S(g*p))-S(y*A));j=P[a+104>>2];m=S(j*o);o=P[a+120>>2];m=S(m-S(o*p));p=P[a+136>>2];A=S(m-S(p*A));m=P[a+188>>2];G=P[a+180>>2];H=P[a+184>>2];m=S(S(S(f*S(S(x*m)+S(S(y*G)+S(p*H))))+S(S(d*S(S(w*m)+S(S(h*G)+S(j*H))))+S(B*S(S(l*m)+S(S(g*G)+S(o*H))))))+S(S(S(i*m)+S(S(z*G)+S(A*H)))+P[a+216>>2]));P[n+4>>2]=m;e=S(S(S(f*S(S(x*u)+S(S(y*v)+S(p*e))))+S(S(d*S(S(w*u)+S(S(h*v)+S(j*e))))+S(B*S(S(l*u)+S(S(g*v)+S(o*e))))))+S(J+S(S(i*u)+S(S(z*v)+S(e*A)))));P[n>>2]=e;d=S(S(I+S(S(i*r)+S(S(z*s)+S(A*t))))+S(S(f*S(S(x*r)+S(S(y*s)+S(p*t))))+S(S(d*S(S(w*r)+S(S(h*s)+S(j*t))))+S(B*S(S(l*r)+S(S(g*s)+S(o*t)))))));P[n+8>>2]=d;d=S(S(S(q-d)*k)+S(S(S(F-e)*E)+S(C*S(D-m))))}L[n+12>>2]=0;a=L[a+32>>2];ha[L[L[a>>2]+16>>2]](a,b,n,d);fa=n+16|0}function ol(a,b){var 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),l=S(0),m=S(0),n=S(0),o=S(0),p=S(0),q=0,r=S(0),s=S(0);q=L[b+4>>2];L[a+556>>2]=L[b>>2];L[a+560>>2]=q;q=L[b+12>>2];L[a+564>>2]=L[b+8>>2];L[a+568>>2]=q;k=S(-0);l=S(1);f=P[a+568>>2];d=S(f*S(0));g=P[a+564>>2];h=P[a+556>>2];e=S(h*S(0));j=S(S(d+g)-e);e=S(d+e);d=P[a+560>>2];i=S(e-d);e=S(g*S(-0));p=S(e+S(S(d*S(-0))-h));e=S(e+S(f+S(d*S(0))));m=S(S(j*h)+S(S(S(f*i)-S(p*g))-S(e*d)));n=S(S(i*d)+S(S(S(f*e)-S(p*h))-S(j*g)));j=S(S(e*g)+S(S(S(f*j)-S(p*d))-S(i*h)));i=S(S(m*S(0))+S(n+S(j*S(0))));if(!(i>2];a:{if(!(f>=S(.05000000074505806))){break a}c=P[a+448>>2];if(!(c>=S(.05000000074505806))){break a}d=oS(1)?S(1):d);d=S(d+d);b:{if(!(d>S(1.1920928955078125e-7))){break b}e=S(S(1)/S(_(S(S(i*i)+S(S(k*k)+S(l*l))))));m=S(i*e);n=S(k*e);e=S(l*e);if(!(S(T(e))>S(1.1920928955078125e-7))){break b}s=S(S(m*m)/S(e*e));f=S(_(S(S(s+S(1))/S(S(S(1)/S(c*c))+S(s/S(f*f))))))}if(!(S(T(d))>S(1.1920928955078125e-7))){break a}c:{if(d>f){d=f;break c}c=S(-f);if(!(c>d)){break c}d=c}c=S(d*S(.5));d=S(Ea(c)/S(_(S(S(m*m)+S(S(n*n)+S(e*e))))));i=S(m*d);l=S(e*d);k=S(n*d);o=Fa(c)}f=S(j*g);d=S(p*g);m=S(h*g);n=S(r*g);j=P[a+452>>2];d:{if(!(j>=S(.05000000074505806))){break d}g=n;h=m;e=d;c=fS(1)?S(1):c);c=S(c+c);if(c>S(3.1415927410125732)){e=S(-d);h=S(-m);g=S(-n);c=f>S(1)?S(-1):S(-f);c=ob(c>S(1)?S(1):c);c=S(c+c)}if(c>S(1.1920928955078125e-7)){p=S(S(1)/S(_(S(S(e*e)+S(S(g*g)+S(h*h))))));e=S(e*p);h=S(h*p);g=S(g*p)}if(!(S(T(c))>S(1.1920928955078125e-7))){break d}e:{if(c>j){c=j;break e}d=S(-j);if(!(d>c)){break e}c=d}f=S(c*S(.5));c=S(Ea(f)/S(_(S(S(e*e)+S(S(g*g)+S(h*h))))));d=S(e*c);m=S(h*c);n=S(g*c);f=Fa(f)}P[a+568>>2]=S(S(S(o*f)-S(n*k))-S(l*m))-S(i*d);P[a+564>>2]=S(S(k*m)+S(S(o*d)+S(i*f)))-S(l*n);P[a+560>>2]=S(S(i*n)+S(S(o*m)+S(l*f)))-S(k*d);P[a+556>>2]=S(S(l*d)+S(S(o*n)+S(k*f)))-S(i*m)}function on(a){a=a|0;var b=0,c=0,d=S(0),e=0,f=S(0),g=0,h=S(0),i=S(0),j=S(0),k=S(0),l=0,m=0,n=0,o=0;b=fa-80|0;fa=b;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)&8)){break a}c=L[a+24>>2];l=ha[L[L[c>>2]+36>>2]](c)|0;L[b+72>>2]=0;L[b+76>>2]=0;L[b+64>>2]=1065353216;L[b+68>>2]=1065353216;c=0;if((l|0)<=0){break a}while(1){g=0;e=L[a+24>>2];m=ha[L[L[e>>2]+40>>2]](e,c)|0;n=L[m+748>>2];if((n|0)>0){while(1){o=ha[L[L[a>>2]+20>>2]](a)|0;e=R(g,184)+m|0;ha[L[L[o>>2]+32>>2]](o,e+36|0,e+68|0,P[e+84>>2],L[e+152>>2],b- -64|0);g=g+1|0;if((n|0)!=(g|0)){continue}break}}c=c+1|0;if((l|0)!=(c|0)){continue}break}}b:{if(!(ha[L[L[a>>2]+20>>2]](a)|0)){break b}c=ha[L[L[a>>2]+20>>2]](a)|0;if(!(ha[L[L[c>>2]+48>>2]](c)&3)|L[a+8>>2]<=0){break b}g=0;while(1){c=L[L[a+16>>2]+(g<<2)>>2];c:{if(M[c+204|0]&32){break c}d:{if(!(ha[L[L[a>>2]+20>>2]](a)|0)){break d}e=ha[L[L[a>>2]+20>>2]](a)|0;if(!(ha[L[L[e>>2]+48>>2]](e)&1)){break d}e:{f:{g:{h:{switch(L[c+216>>2]-1|0){case 0:L[b+64>>2]=1065353216;break f;case 1:L[b+64>>2]=0;break g;case 2:L[b+64>>2]=0;break f;case 4:L[b+64>>2]=1065353216;break g;default:break h}}L[b+64>>2]=1065353216;f=S(0);d=S(0);break e}f=S(1);d=S(0);break e}f=S(1);d=S(1)}L[b+76>>2]=0;P[b+72>>2]=d;P[b+68>>2]=f;ha[L[L[a>>2]+28>>2]](a,c+4|0,L[c+192>>2],b- -64|0)}e=L[a+72>>2];if(!e){break c}if(!(ha[L[L[e>>2]+48>>2]](e)&2)){break c}L[b+40>>2]=0;L[b+44>>2]=0;L[b+32>>2]=1065353216;L[b+36>>2]=0;e=L[c+192>>2];ha[L[L[e>>2]+8>>2]](e,c+4|0,b- -64|0,b+48|0);d=P[6794];P[b+64>>2]=P[b+64>>2]-d;P[b+68>>2]=P[b+68>>2]-d;P[b+72>>2]=P[b+72>>2]-d;P[b+48>>2]=d+P[b+48>>2];P[b+52>>2]=d+P[b+52>>2];P[b+56>>2]=d+P[b+56>>2];i:{if(M[c+204|0]&3|(!M[a+44|0]|L[c+236>>2]!=2)){break i}e=L[c+192>>2];ha[L[L[e>>2]+8>>2]](e,c+68|0,b+16|0,b);f=S(P[b+16>>2]-d);P[b+16>>2]=f;h=S(P[b+20>>2]-d);P[b+20>>2]=h;i=S(P[b+24>>2]-d);P[b+24>>2]=i;j=S(d+P[b>>2]);P[b>>2]=j;k=S(d+P[b+4>>2]);P[b+4>>2]=k;d=S(d+P[b+8>>2]);P[b+8>>2]=d;if(f>2]){P[b+64>>2]=f}if(P[b+68>>2]>h){P[b+68>>2]=h}if(P[b+72>>2]>i){P[b+72>>2]=i}f=P[b+28>>2];if(f>2]){P[b+76>>2]=f}if(P[b+48>>2]>2]=j}if(P[b+52>>2]>2]=k}if(d>P[b+56>>2]){P[b+56>>2]=d}d=P[b+12>>2];if(!(d>P[b+60>>2])){break i}P[b+60>>2]=d}c=L[a+72>>2];ha[L[L[c>>2]+52>>2]](c,b- -64|0,b+48|0,b+32|0)}g=g+1|0;if((g|0)>2]){continue}break}}fa=b+80|0}function ml(a,b,c,d,e,f){a=ub(a,6,b,c);L[a>>2]=19568;b=L[d+12>>2];L[a+56>>2]=L[d+8>>2];L[a+60>>2]=b;b=L[d+4>>2];L[a+48>>2]=L[d>>2];L[a+52>>2]=b;b=L[d+28>>2];L[a+72>>2]=L[d+24>>2];L[a+76>>2]=b;c=L[d+20>>2];b=a- -64|0;L[b>>2]=L[d+16>>2];L[b+4>>2]=c;b=L[d+44>>2];L[a+88>>2]=L[d+40>>2];L[a+92>>2]=b;b=L[d+36>>2];L[a+80>>2]=L[d+32>>2];L[a+84>>2]=b;b=L[d+60>>2];L[a+104>>2]=L[d+56>>2];L[a+108>>2]=b;b=L[d+52>>2];L[a+96>>2]=L[d+48>>2];L[a+100>>2]=b;b=L[e+12>>2];L[a+120>>2]=L[e+8>>2];L[a+124>>2]=b;b=L[e+4>>2];L[a+112>>2]=L[e>>2];L[a+116>>2]=b;b=L[e+20>>2];L[a+128>>2]=L[e+16>>2];L[a+132>>2]=b;b=L[e+28>>2];L[a+136>>2]=L[e+24>>2];L[a+140>>2]=b;b=L[e+36>>2];L[a+144>>2]=L[e+32>>2];L[a+148>>2]=b;b=L[e+44>>2];L[a+152>>2]=L[e+40>>2];L[a+156>>2]=b;b=L[e+52>>2];L[a+160>>2]=L[e+48>>2];L[a+164>>2]=b;b=L[e+60>>2];L[a+168>>2]=L[e+56>>2];L[a+172>>2]=b;L[a+680>>2]=0;L[a+684>>2]=0;L[a+688>>2]=0;L[a+692>>2]=0;L[a+696>>2]=0;L[a+700>>2]=0;L[a+704>>2]=0;L[a+708>>2]=0;L[a+712>>2]=0;L[a+716>>2]=0;L[a+720>>2]=0;L[a+724>>2]=0;L[a+740>>2]=0;L[a+744>>2]=0;L[a+748>>2]=0;L[a+752>>2]=0;L[a+764>>2]=1045220557;L[a+756>>2]=1045220557;L[a+760>>2]=1045220557;L[a+784>>2]=0;L[a+776>>2]=0;L[a+780>>2]=0;L[a+768>>2]=0;L[a+772>>2]=0;L[a+736>>2]=1056964608;L[a+728>>2]=1060320051;L[a+732>>2]=1065353216;J[a+790|0]=0;K[a+788>>1]=0;L[a+800>>2]=0;L[a+792>>2]=0;L[a+796>>2]=0;L[a+816>>2]=0;L[a+808>>2]=0;L[a+812>>2]=0;L[a+928>>2]=0;L[a+884>>2]=1133903872;L[a+876>>2]=0;L[a+880>>2]=1036831949;L[a+904>>2]=0;L[a+908>>2]=0;L[a+896>>2]=0;L[a+900>>2]=1045220557;L[a+868>>2]=1065353216;L[a+872>>2]=-1082130432;L[a+924>>2]=0;L[a+888>>2]=1065353216;L[a+892>>2]=1056964608;L[a+916>>2]=0;L[a+992>>2]=0;J[a+912|0]=0;L[a+948>>2]=1133903872;L[a+940>>2]=0;L[a+944>>2]=1036831949;L[a+968>>2]=0;L[a+972>>2]=0;L[a+960>>2]=0;L[a+964>>2]=1045220557;L[a+932>>2]=1065353216;L[a+936>>2]=-1082130432;L[a+988>>2]=0;L[a+952>>2]=1065353216;L[a+956>>2]=1056964608;L[a+980>>2]=0;L[a+1056>>2]=0;J[a+976|0]=0;L[a+1012>>2]=1133903872;L[a+1004>>2]=0;L[a+1008>>2]=1036831949;b=a+1032|0;L[b>>2]=0;L[b+4>>2]=0;b=a+1024|0;L[b>>2]=0;L[b+4>>2]=1045220557;L[a+996>>2]=1065353216;L[a+1e3>>2]=-1082130432;L[a+1052>>2]=0;L[a+1016>>2]=1065353216;L[a+1020>>2]=1056964608;L[a+1044>>2]=0;J[a+1308|0]=0;L[a+1304>>2]=0;J[a+1301|0]=1;J[a+1300|0]=f;J[a+1040|0]=0;qd(a,L[a+28>>2]+4|0,L[a+32>>2]+4|0);return a}function pb(a,b,c,d,e){var f=0,g=0,h=0,i=0,j=0,k=S(0),l=S(0),m=S(0),n=S(0),o=0,p=0,q=0,r=0,s=S(0),t=0,u=S(0),v=S(0);if(!((b|0)==(d|0)|(b|0)==(c|0)|(c|0)==(d|0))){i=fa-48|0;fa=i;L[i+40>>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;e=e?e:L[L[a+880>>2]>>2];f=L[a+752>>2];a:{if((f|0)!=L[a+756>>2]){break a}o=f?f<<1:1;if((o|0)<=(f|0)){break a}if(o){L[8513]=L[8513]+1;p=ha[L[6798]](R(o,44),16)|0;f=L[a+752>>2]}b:{if((f|0)<=0){break b}if((f|0)!=1){t=f&-2;while(1){g=R(q,44);h=g+p|0;g=g+L[a+760>>2]|0;j=L[g+4>>2];L[h>>2]=L[g>>2];L[h+4>>2]=j;L[h+40>>2]=L[g+40>>2];j=L[g+36>>2];L[h+32>>2]=L[g+32>>2];L[h+36>>2]=j;j=L[g+28>>2];L[h+24>>2]=L[g+24>>2];L[h+28>>2]=j;j=L[g+20>>2];L[h+16>>2]=L[g+16>>2];L[h+20>>2]=j;j=L[g+12>>2];L[h+8>>2]=L[g+8>>2];L[h+12>>2]=j;g=R(q|1,44);h=g+p|0;g=g+L[a+760>>2]|0;j=L[g+4>>2];L[h>>2]=L[g>>2];L[h+4>>2]=j;j=L[g+12>>2];L[h+8>>2]=L[g+8>>2];L[h+12>>2]=j;j=L[g+20>>2];L[h+16>>2]=L[g+16>>2];L[h+20>>2]=j;j=L[g+28>>2];L[h+24>>2]=L[g+24>>2];L[h+28>>2]=j;j=L[g+36>>2];L[h+32>>2]=L[g+32>>2];L[h+36>>2]=j;L[h+40>>2]=L[g+40>>2];q=q+2|0;r=r+2|0;if((t|0)!=(r|0)){continue}break}}if(!(f&1)){break b}f=R(q,44);g=f+p|0;f=f+L[a+760>>2]|0;h=L[f+4>>2];L[g>>2]=L[f>>2];L[g+4>>2]=h;L[g+40>>2]=L[f+40>>2];h=L[f+36>>2];L[g+32>>2]=L[f+32>>2];L[g+36>>2]=h;h=L[f+28>>2];L[g+24>>2]=L[f+24>>2];L[g+28>>2]=h;h=L[f+20>>2];L[g+16>>2]=L[f+16>>2];L[g+20>>2]=h;h=L[f+12>>2];L[g+8>>2]=L[f+8>>2];L[g+12>>2]=h}f=L[a+760>>2];if(!(f?!f|!M[a+764|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](f)}L[a+760>>2]=p;J[a+764|0]=1;L[a+756>>2]=o;f=L[a+752>>2]}f=L[a+760>>2]+R(f,44)|0;L[f+4>>2]=e;L[f>>2]=0;e=L[i+12>>2];L[f+8>>2]=L[i+8>>2];L[f+12>>2]=e;e=L[i+20>>2];L[f+16>>2]=L[i+16>>2];L[f+20>>2]=e;e=L[i+28>>2];L[f+24>>2]=L[i+24>>2];L[f+28>>2]=e;e=L[i+36>>2];L[f+32>>2]=L[i+32>>2];L[f+36>>2]=e;L[f+40>>2]=L[i+40>>2];L[a+752>>2]=L[a+752>>2]+1;fa=i+48|0;e=(L[a+760>>2]+R(L[a+752>>2],44)|0)-44|0;b=L[a+720>>2]+R(b,104)|0;L[e+8>>2]=b;c=L[a+720>>2]+R(c,104)|0;L[e+12>>2]=c;d=L[a+720>>2]+R(d,104)|0;L[e+16>>2]=d;l=P[b+8>>2];s=S(P[c+8>>2]-l);k=P[b+12>>2];m=S(P[d+12>>2]-k);l=S(P[d+8>>2]-l);k=S(P[c+12>>2]-k);n=S(S(s*m)-S(l*k));u=S(n*n);v=k;k=P[b+16>>2];n=S(P[d+16>>2]-k);k=S(P[c+16>>2]-k);m=S(S(v*n)-S(m*k));l=S(S(k*l)-S(n*s));P[e+36>>2]=_(S(u+S(S(m*m)+S(l*l))));J[a+924|0]=1}}function Ck(a,b){var c=0,d=0,e=S(0),f=S(0),g=S(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=S(0),q=S(0),r=S(0),s=S(0);d=fa+-64|0;fa=d;J[b+84|0]=0;c=L[a+116>>2];r=P[c+52>>2];g=P[c+8>>2];e=P[c+12>>2];s=P[c+56>>2];i=P[c+20>>2];h=P[c+24>>2];k=P[c+28>>2];f=P[c+60>>2];m=P[c+36>>2];n=P[c+40>>2];o=P[c+44>>2];p=P[c+4>>2];L[b+48>>2]=0;q=f;f=P[b+164>>2];j=P[b+156>>2];l=P[b+160>>2];P[b+44>>2]=q+S(S(o*f)+S(S(m*j)+S(n*l)));P[b+40>>2]=s+S(S(f*k)+S(S(j*i)+S(h*l)));P[b+36>>2]=r+S(S(f*e)+S(S(j*p)+S(g*l)));L[b- -64>>2]=0;f=P[b+180>>2];j=P[b+172>>2];l=P[b+176>>2];P[b+60>>2]=S(o*f)+S(S(m*j)+S(n*l));P[b+56>>2]=S(k*f)+S(S(i*j)+S(h*l));P[b+52>>2]=S(e*f)+S(S(p*j)+S(g*l));f=P[b+192>>2];j=P[b+196>>2];l=P[b+188>>2];L[b+80>>2]=0;P[b+76>>2]=S(o*j)+S(S(m*l)+S(n*f));P[b+72>>2]=S(k*j)+S(S(i*l)+S(h*f));P[b+68>>2]=S(e*j)+S(S(p*l)+S(g*f));g=P[b+204>>2];L[b+28>>2]=0;g=S(g+P[b+212>>2]);P[b+24>>2]=S(g*P[b+60>>2])+P[b+44>>2];P[b+20>>2]=S(g*P[b+56>>2])+P[b+40>>2];P[b+16>>2]=S(P[b+52>>2]*g)+P[b+36>>2];L[d+44>>2]=-1082130432;c=L[a+100>>2];c=ha[L[L[c>>2]+8>>2]](c,b+36|0,b+16|0,d+12|0)|0;L[b+88>>2]=0;a:{if(c){e=P[d+44>>2];c=L[d+32>>2];L[b>>2]=L[d+28>>2];L[b+4>>2]=c;c=L[d+40>>2];L[b+8>>2]=L[d+36>>2];L[b+12>>2]=c;J[b+84|0]=1;g=S(g*e);if(!M[33784]){L[d+56>>2]=0;L[d+60>>2]=0;L[d+48>>2]=0;L[d+52>>2]=0;ng(33168,d+48|0);J[33784]=1}L[d+56>>2]=0;L[d+60>>2]=0;L[d+48>>2]=0;L[d+52>>2]=0;ve(33168,S(0),d+48|0);L[b+88>>2]=33168;P[b+32>>2]=g-P[b+212>>2];i=P[b+204>>2];h=S(P[b+208>>2]*S(.009999999776482582));e=S(i-h);k=P[b+32>>2];c=e>k;e=c?e:k;i=S(i+h);if(c|e>i){P[b+32>>2]=e>i?i:e}c=L[d+16>>2];L[b+16>>2]=L[d+12>>2];L[b+20>>2]=c;c=L[d+24>>2];L[b+24>>2]=L[d+20>>2];L[b+28>>2]=c;h=P[b+8>>2];k=P[b>>2];m=P[b+4>>2];e=S(S(h*P[b+60>>2])+S(S(k*P[b+52>>2])+S(m*P[b+56>>2])));if(e>=S(-.10000000149011612)){L[b+272>>2]=0;e=S(10);break a}a=L[a+116>>2];i=P[a+328>>2];e=S(S(-1)/e);f=h;h=S(P[b+20>>2]-P[a+56>>2]);n=S(P[b+16>>2]-P[a+52>>2]);o=P[a+332>>2];j=S(f*S(P[a+320>>2]+S(S(i*h)-S(n*o))));f=k;k=S(P[b+24>>2]-P[a+60>>2]);q=h;h=P[a+336>>2];P[b+272>>2]=e*S(j+S(S(f*S(P[a+312>>2]+S(S(o*k)-S(q*h))))+S(m*S(S(S(h*n)-S(k*i))+P[a+316>>2]))));break a}g=P[b+204>>2];L[b+272>>2]=0;P[b+32>>2]=g;L[b+12>>2]=0;P[b+8>>2]=-P[b+60>>2];P[b+4>>2]=-P[b+56>>2];P[b>>2]=-P[b+52>>2];g=S(-1);e=S(1)}P[b+268>>2]=e;fa=d- -64|0;return g}function zm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=S(0),i=S(0),j=S(0),k=0,l=0,m=S(0),n=0,o=0,p=S(0),q=S(0),r=0;d=fa-80|0;fa=d;e=L[a+4>>2];ha[L[L[e>>2]+16>>2]](e,d+28|0,d+24|0,d+20|0,d+16|0,d+12|0,d+8|0,d+4|0,d,b);g=L[d+12>>2]+R(L[d+8>>2],c)|0;e=L[a+4>>2];k=L[d+16>>2];l=L[d+28>>2];f=L[d>>2];a:{if(!L[d+20>>2]){if((f|0)!=3){f=R(L[g+8>>2],k)+l|0;h=P[f>>2];i=P[f+4>>2];j=P[f+8>>2];m=P[e+4>>2];p=P[e+8>>2];q=P[e+12>>2];L[d+76>>2]=0;P[d+72>>2]=j*q;P[d+68>>2]=i*p;P[d+64>>2]=h*m;f=R(L[g+4>>2],k)+l|0;h=P[f>>2];i=P[f+4>>2];j=P[f+8>>2];m=P[e+4>>2];p=P[e+8>>2];q=P[e+12>>2];L[d+60>>2]=0;P[d+56>>2]=j*q;P[d+52>>2]=i*p;P[d+48>>2]=h*m;g=R(L[g>>2],k)+l|0;h=P[g+4>>2];i=P[g+8>>2];j=P[e+8>>2];m=P[e+12>>2];P[d+32>>2]=P[g>>2]*P[e+4>>2];i=S(i*m);h=S(h*j);break a}f=R(N[g+4>>1],k)+l|0;h=P[f>>2];i=P[f+4>>2];j=P[f+8>>2];m=P[e+4>>2];p=P[e+8>>2];q=P[e+12>>2];L[d+76>>2]=0;P[d+72>>2]=j*q;P[d+68>>2]=i*p;P[d+64>>2]=h*m;f=R(N[g+2>>1],k)+l|0;h=P[f>>2];i=P[f+4>>2];j=P[f+8>>2];m=P[e+4>>2];p=P[e+8>>2];q=P[e+12>>2];L[d+60>>2]=0;P[d+56>>2]=j*q;P[d+52>>2]=i*p;P[d+48>>2]=h*m;g=R(N[g>>1],k)+l|0;h=P[g+4>>2];i=P[g+8>>2];j=P[e+8>>2];m=P[e+12>>2];P[d+32>>2]=P[g>>2]*P[e+4>>2];i=S(i*m);h=S(h*j);break a}if((f|0)!=3){f=R(L[g+8>>2],k)+l|0;n=Q[f>>3];o=Q[f+8>>3];r=Q[f+16>>3];h=P[e+4>>2];i=P[e+8>>2];j=P[e+12>>2];L[d+76>>2]=0;P[d+72>>2]=j*S(r);P[d+68>>2]=i*S(o);P[d+64>>2]=h*S(n);f=R(L[g+4>>2],k)+l|0;n=Q[f>>3];o=Q[f+8>>3];r=Q[f+16>>3];h=P[e+4>>2];i=P[e+8>>2];j=P[e+12>>2];L[d+60>>2]=0;P[d+56>>2]=j*S(r);P[d+52>>2]=i*S(o);P[d+48>>2]=h*S(n);g=R(L[g>>2],k)+l|0;n=Q[g+8>>3];o=Q[g+16>>3];h=P[e+8>>2];i=P[e+12>>2];P[d+32>>2]=P[e+4>>2]*S(Q[g>>3]);i=S(i*S(o));h=S(h*S(n));break a}f=R(N[g+4>>1],k)+l|0;n=Q[f>>3];o=Q[f+8>>3];r=Q[f+16>>3];h=P[e+4>>2];i=P[e+8>>2];j=P[e+12>>2];L[d+76>>2]=0;P[d+72>>2]=j*S(r);P[d+68>>2]=i*S(o);P[d+64>>2]=h*S(n);f=R(N[g+2>>1],k)+l|0;n=Q[f>>3];o=Q[f+8>>3];r=Q[f+16>>3];h=P[e+4>>2];i=P[e+8>>2];j=P[e+12>>2];L[d+60>>2]=0;P[d+56>>2]=j*S(r);P[d+52>>2]=i*S(o);P[d+48>>2]=h*S(n);g=R(N[g>>1],k)+l|0;n=Q[g+8>>3];o=Q[g+16>>3];h=P[e+8>>2];i=P[e+12>>2];P[d+32>>2]=P[e+4>>2]*S(Q[g>>3]);i=S(i*S(o));h=S(h*S(n))}L[d+44>>2]=0;P[d+40>>2]=i;P[d+36>>2]=h;e=L[a+8>>2];ha[L[L[e>>2]+8>>2]](e,d+32|0,b,c);a=L[a+4>>2];ha[L[L[a>>2]+24>>2]](a,b);fa=d+80|0}function rd(a,b){var c=0,d=0,e=0,f=0,g=0,h=S(0),i=S(0),j=0,k=S(0),l=S(0),m=S(0),n=0,o=S(0),p=S(0),q=S(0),r=0,s=0,t=0,u=0;e=fa-96|0;fa=e;c=L[a+12>>2];d=e+80|0;g=e- -64|0;ha[L[L[c>>2]+8>>2]](c,L[a+8>>2]+4|0,d,g);c=L[b+68>>2];ha[L[L[c>>2]+16>>2]](c,L[L[a+8>>2]+188>>2],d,g,L[b+24>>2]);c=L[b+24>>2];ha[L[L[c>>2]+32>>2]](c,L[L[a+8>>2]+284>>2],b+28|0,c);b=L[a+8>>2];c=L[b+56>>2];L[a+92>>2]=L[b+52>>2];L[a+96>>2]=c;c=L[b+64>>2];L[a+100>>2]=L[b+60>>2];L[a+104>>2]=c;b=L[b+284>>2];a:{if((ha[L[L[b>>2]+36>>2]](b)|0)<=0){g=0;break a}s=a+128|0;g=0;while(1){c=L[a+132>>2];b:{if((c|0)>=0){break b}if(L[a+136>>2]<0){b=L[a+140>>2];if(!(b?!b|!M[a+144|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+144|0]=1;L[a+136>>2]=0;L[a+140>>2]=0}d=0;b=c;f=0-b&3;if(f){while(1){L[L[a+140>>2]+(b<<2)>>2]=0;b=b+1|0;d=d+1|0;if((f|0)!=(d|0)){continue}break}}if(c>>>0>4294967292){break b}while(1){c=b<<2;L[c+L[a+140>>2]>>2]=0;L[(c+L[a+140>>2]|0)+4>>2]=0;L[(c+L[a+140>>2]|0)+8>>2]=0;L[(c+L[a+140>>2]|0)+12>>2]=0;b=b+4|0;if(b){continue}break}}L[a+132>>2]=0;b=L[L[a+8>>2]+284>>2];b=L[(ha[L[L[b>>2]+28>>2]](b)|0)+12>>2]+(j<<4)|0;c=L[L[b+4>>2]>>2];d=L[L[b>>2]>>2];c:{if((M[d+204|0]&4?d:0)|(M[c+204|0]&4?c:0)){break c}b=L[b+8>>2];if(b){ha[L[L[b>>2]+16>>2]](b,s)}r=L[a+132>>2];if((r|0)<=0){break c}k=P[a+100>>2];l=P[a+96>>2];t=L[a+8>>2];u=L[a+140>>2];m=P[a+92>>2];c=0;while(1){f=L[(c<<2)+u>>2];n=L[f+748>>2];if((n|0)>0){h=L[f+740>>2]==(t|0)?S(-1):S(1);d=0;while(1){b=f+R(d,184)|0;i=P[b+84>>2];if(i>2];p=P[b+72>>2];q=P[b+76>>2];L[a+164>>2]=0;P[a+160>>2]=h*q;P[a+156>>2]=h*p;P[a+152>>2]=h*o;n=L[f+748>>2];o=i}p=P[b+68>>2];q=P[b+72>>2];k=S(S(S(i*S(h*P[b+76>>2]))*S(.20000000298023224))+k);P[a+100>>2]=k;l=S(S(S(i*S(h*q))*S(.20000000298023224))+l);P[a+96>>2]=l;m=S(S(S(i*S(h*p))*S(.20000000298023224))+m);P[a+92>>2]=m;g=1}d=d+1|0;if((n|0)>(d|0)){continue}break}}c=c+1|0;if((r|0)!=(c|0)){continue}break}}b=L[L[a+8>>2]+284>>2];j=j+1|0;if((ha[L[L[b>>2]+36>>2]](b)|0)>(j|0)){continue}break}}b=L[a+8>>2];c=L[a+104>>2];L[e+56>>2]=L[a+100>>2];L[e+60>>2]=c;c=L[a+96>>2];L[e+48>>2]=L[a+92>>2];L[e+52>>2]=c;L[b+260>>2]=L[b+260>>2]+1;a=L[e+60>>2];L[b+60>>2]=L[e+56>>2];L[b+64>>2]=a;a=L[e+52>>2];L[b+52>>2]=L[e+48>>2];L[b+56>>2]=a;fa=e+96|0;return g}function se(a,b,c){var d=S(0),e=S(0),f=S(0),g=S(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=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=S(0),z=S(0),A=S(0),B=S(0);n=P[a+452>>2];w=P[a+304>>2];q=P[a+300>>2];a:{if(!(w>S(0)|q>S(0))){break a}u=L[a+720>>2];v=P[(u+R(c,104)|0)+88>>2];if(!(v>S(0))|L[a+288>>2]>3){break a}r=R(c,104)+u|0;p=P[r+48>>2];e=S(p-P[b+8>>2]);s=P[r+40>>2];f=S(s-P[b>>2]);t=P[r+44>>2];j=S(t-P[b+4>>2]);o=S(S(e*e)+S(S(f*f)+S(j*j)));if(!(o>S(1.1920928955078125e-7))){break a}x=P[L[a+684>>2]>>2];A=S(_(o));g=S(S(1)/A);d=S(e*g);h=S(j*g);g=S(f*g);i=P[r+72>>2];k=P[r+80>>2];m=P[r+76>>2];b:{switch(L[a+288>>2]){case 2:e=S(S(k*e)+S(S(i*f)+S(j*m)))>2]*S(.5));i=S(e*S(f*o));f=S(i*S(-d));j=S(i*S(-h));i=S(i*S(-g));c:{if(!(e>S(0))){k=S(0);m=S(0);break c}k=S(0);m=S(0);if(!(e=h)|!(d>S(0)))){d=S(S(S(_(h))/S(_(d)))*S(.800000011920929));f=S(f*d);i=S(i*d);j=S(j*d)}a=R(c,104)+u|0;P[a+56>>2]=B+S(i+P[a+56>>2]);b=a- -64|0;P[b>>2]=m+S(f+P[b>>2]);P[a+60>>2]=k+S(j+P[a+60>>2]);return;case 0:case 1:case 3:break b;default:break a}}l=e;e=S(S(k*e)+S(S(i*f)+S(j*m)))S(0))){break a}e=S(n*v);l=d;a=R(c,104)+u|0;d=S(x*S(S(o*S(f*P[a+92>>2]))*S(-.5)));f=S(q*d);j=S(w*d);d=S(S(l*f)+S(S(k*j)+S(0)));n=S(e*d);l=S(n*n);g=S(S(g*f)+S(S(i*j)+S(0)));n=S(e*g);h=S(S(h*f)+S(S(m*j)+S(0)));f=S(e*h);if(S(l+S(S(n*n)+S(f*f)))>S(S(p*p)+S(S(s*s)+S(t*t)))){e=S(S(1)/e);l=g;g=S(S(1)/S(_(S(S(d*d)+S(S(g*g)+S(h*h))))));f=S(l*g);l=p;p=S(d*g);h=S(h*g);d=S(S(l*p)+S(S(s*f)+S(t*h)));P[a+56>>2]=P[a+56>>2]-S(e*S(f*d));P[a+60>>2]=P[a+60>>2]-S(e*S(h*d));a=a- -64|0;P[a>>2]=P[a>>2]-S(e*S(p*d));return}P[a+56>>2]=g+P[a+56>>2];P[a+60>>2]=h+P[a+60>>2];a=a- -64|0;P[a>>2]=d+P[a>>2]}}function Hl(a,b,c,d,e,f){var g=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=0,B=0,C=0,D=S(0),E=S(0);g=fa-544|0;fa=g;l=a;a=g+384|0;Dg(l,b,c,d,f,a,0);L[g+140>>2]=0;L[g+144>>2]=0;L[g+132>>2]=0;L[g+136>>2]=0;L[g+368>>2]=0;L[g+372>>2]=0;L[g+380>>2]=2;L[g+148>>2]=0;a:{b:{e=Cg(g+4|0,a,e);if(!e){c=L[g+376>>2];if(!L[c+32>>2]){break b}d=0;while(1){a=c;c=d<<2;l=a+c|0;h=P[l+16>>2];a=L[g+504>>2];C=g+528|0;A=L[g+508>>2];B=L[g+384>>2]+(A>>1)|0;l=L[l>>2];if(A&1){a=L[a+L[B>>2]>>2]}ha[a|0](C,B,l);l=L[g+508>>2];a=L[g+388>>2]+(l>>1)|0;p=S(h*P[g+536>>2]);q=S(h*P[g+532>>2]);r=S(h*P[g+528>>2]);c=L[L[g+376>>2]+c>>2];i=S(-P[c+8>>2]);j=S(-P[c+4>>2]);k=S(-P[c>>2]);c=L[g+504>>2];c=l&1?L[L[a>>2]+c>>2]:c;m=S(m+p);n=S(n+q);o=S(o+r);L[g+524>>2]=0;P[g+520>>2]=S(P[g+432>>2]*i)+S(S(P[g+424>>2]*k)+S(P[g+428>>2]*j));P[g+516>>2]=S(P[g+416>>2]*i)+S(S(P[g+408>>2]*k)+S(P[g+412>>2]*j));P[g+512>>2]=S(P[g+400>>2]*i)+S(S(P[g+392>>2]*k)+S(P[g+396>>2]*j));ha[c|0](g+528|0,a,g+512|0);i=P[g+536>>2];j=P[g+528>>2];k=P[g+532>>2];s=S(s+S(h*S(S(S(i*P[g+480>>2])+S(S(j*P[g+472>>2])+S(k*P[g+476>>2])))+P[g+496>>2])));t=S(t+S(h*S(S(S(i*P[g+464>>2])+S(S(j*P[g+456>>2])+S(k*P[g+460>>2])))+P[g+492>>2])));u=S(u+S(h*S(S(S(i*P[g+448>>2])+S(S(j*P[g+440>>2])+S(k*P[g+444>>2])))+P[g+488>>2])));d=d+1|0;c=L[g+376>>2];if(d>>>0>2]){continue}break}break b}L[f>>2]=(e|0)==1?1:2;break a}h=P[b+52>>2];i=P[b+24>>2];j=P[b+20>>2];k=P[b+56>>2];p=P[b+40>>2];q=P[b+36>>2];r=P[b+16>>2];v=P[b+32>>2];w=P[b+48>>2];x=P[b+8>>2];y=P[b>>2];z=P[b+4>>2];L[f+16>>2]=0;P[f+4>>2]=w+S(S(m*x)+S(S(o*y)+S(n*z)));P[f+12>>2]=k+S(S(m*p)+S(S(o*v)+S(n*q)));P[f+8>>2]=h+S(S(m*i)+S(S(o*r)+S(n*j)));i=P[b+52>>2];j=P[b+24>>2];k=P[b+20>>2];p=P[b+56>>2];q=P[b+40>>2];r=P[b+36>>2];v=P[b+48>>2];w=P[b+8>>2];x=P[b>>2];y=P[b+4>>2];z=P[b+16>>2];D=P[b+32>>2];h=S(m-s);m=S(o-u);n=S(n-t);o=S(_(S(S(h*h)+S(S(m*m)+S(n*n)))));P[f+52>>2]=o;L[f+48>>2]=0;L[f+32>>2]=0;E=h;h=o>S(9999999747378752e-20)?S(S(1)/o):S(1);P[f+44>>2]=E*h;P[f+40>>2]=n*h;P[f+36>>2]=m*h;P[f+28>>2]=p+S(S(s*q)+S(S(u*D)+S(t*r)));P[f+24>>2]=i+S(S(s*j)+S(S(u*z)+S(t*k)));P[f+20>>2]=v+S(S(s*w)+S(S(u*x)+S(t*y)))}fa=g+544|0;return!e}function iz(a,b){a=a|0;b=S(b);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;d=L[a+452>>2];l=a+324|0;ha[L[L[d>>2]+16>>2]](d,l,0);d=L[a+452>>2];ha[L[L[d>>2]+12>>2]](d)|0;Tk(a,b);wa(2534);if(L[a+328>>2]){d=0;j=L[l+4>>2];a:{if((j|0)<=0){break a}c=L[l+12>>2];if(j>>>0>=4){k=j&-4;while(1){h=e<<2;i=L[L[h+c>>2]+384>>2];f=(f|0)>(i|0)?f:i;i=L[L[c+(h|4)>>2]+384>>2];f=(f|0)>(i|0)?f:i;i=L[L[c+(h|8)>>2]+384>>2];f=(f|0)>(i|0)?f:i;h=L[L[c+(h|12)>>2]+384>>2];f=(f|0)>(h|0)?f:h;e=e+4|0;g=g+4|0;if((k|0)!=(g|0)){continue}break}}g=j&3;if(g){while(1){h=L[L[c+(e<<2)>>2]+384>>2];f=(f|0)>(h|0)?f:h;e=e+1|0;d=d+1|0;if((g|0)!=(d|0)){continue}break}}if((j|0)<=0){break a}d=0;while(1){e=L[L[l+12>>2]+(d<<2)>>2];if(L[e+852>>2]>0){c=0;while(1){g=L[L[e+860>>2]+(c<<2)>>2];ha[L[L[g>>2]+8>>2]](g,P[e+452>>2],f);c=c+1|0;if((c|0)>2]){continue}break}}d=d+1|0;if((j|0)!=(d|0)){continue}break}if((f|0)>0){if((j|0)<=0){break a}g=0;while(1){d=0;while(1){e=L[L[l+12>>2]+(d<<2)>>2];h=L[e+852>>2];b:{if((h|0)<=0){break b}c=0;if((h|0)!=1){i=h&-2;k=0;while(1){m=c<<2;n=L[m+L[e+860>>2]>>2];ha[L[L[n>>2]+12>>2]](n,P[e+452>>2],S(1));m=L[L[e+860>>2]+(m|4)>>2];ha[L[L[m>>2]+12>>2]](m,P[e+452>>2],S(1));c=c+2|0;k=k+2|0;if((i|0)!=(k|0)){continue}break}}if(!(h&1)){break b}c=L[L[e+860>>2]+(c<<2)>>2];ha[L[L[c>>2]+12>>2]](c,P[e+452>>2],S(1))}d=d+1|0;if((j|0)!=(d|0)){continue}break}g=g+1|0;if((g|0)!=(f|0)){continue}break}}if((j|0)<=0){break a}f=0;while(1){g=L[L[l+12>>2]+(f<<2)>>2];if(L[g+852>>2]>0){d=0;while(1){e=d<<2;c=L[e+L[g+860>>2]>>2];ha[L[L[c>>2]+16>>2]](c,P[g+452>>2]);c=L[e+L[g+860>>2]>>2];c:{if(!M[c+152|0]){c=L[g+852>>2];break c}if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}d=d-1|0;c=L[g+852>>2];if((c|0)<=0){break c}h=L[g+860>>2];k=L[h+e>>2];e=0;while(1){i=h+(e<<2)|0;if((k|0)!=L[i>>2]){e=e+1|0;if((e|0)!=(c|0)){continue}break c}break}if((c|0)<=(e|0)){break c}c=c-1|0;e=c<<2;L[i>>2]=L[e+h>>2];L[e+L[g+860>>2]>>2]=k;L[g+852>>2]=c}d=d+1|0;if((d|0)<(c|0)){continue}break}}f=f+1|0;if((j|0)!=(f|0)){continue}break}}}d=L[a+452>>2];ha[L[L[d>>2]+28>>2]](d,S(P[d+12>>2]*b));va();if(L[a+328>>2]>0){d=0;while(1){c=L[L[a+336>>2]+(d<<2)>>2];ok(c,c);d=d+1|0;if((d|0)>2]){continue}break}}a=L[a+452>>2];ha[L[L[a>>2]+32>>2]](a)}function Nb(a,b,c,d){var e=0,f=S(0),g=S(0),h=S(0),i=S(0),j=0,k=S(0),l=S(0),m=S(0),n=S(0),o=0,p=S(0),q=0,r=0,s=S(0),t=S(0),u=S(0),v=S(0),w=S(0),x=0,y=0,z=0,A=0,B=S(0);p=P[c+4>>2];s=P[c+8>>2];i=S(s*S(0));k=S(p-i);l=P[c>>2];f=S(p*S(-0));g=S(S(l*S(0))+f);m=S(i-l);u=S(_(S(S(g*g)+S(S(k*k)+S(m*m)))));n=S(S(1)/u);f=S(f+l);h=S(S(p*S(0))-s);t=S(i+S(l*S(-0)));v=S(_(S(S(f*f)+S(S(h*h)+S(t*t)))));i=S(S(1)/v);e=u>v;k=e?S(k*n):S(h*i);m=e?S(m*n):S(t*i);t=S(S(k*p)-S(l*m));n=e?S(g*n):S(f*i);u=S(S(n*l)-S(s*k));v=S(S(m*s)-S(p*n));x=L[d+12>>2];y=(b|0)<=0;a:{while(1){j=-1;if(!y){i=P[c+8>>2];g=P[c+4>>2];f=P[c>>2];e=0;while(1){b:{if(!L[(e<<2)+x>>2]){break b}if((j|0)!=-1){d=(e<<4)+a|0;h=S(S(P[d+8>>2]*i)+S(S(P[d>>2]*f)+S(g*P[d+4>>2])));d=(j<<4)+a|0;if(!(h>S(S(P[d+8>>2]*i)+S(S(P[d>>2]*f)+S(g*P[d+4>>2]))))){break b}}j=e}e=e+1|0;if((e|0)!=(b|0)){continue}break}}q=-1;e=0;z=(j<<2)+x|0;if(L[z>>2]==3){break a}c:{while(1){o=q;A=e;i=S(e|0);f=S(i*S(.01745329238474369));g=Fa(f);f=Ea(f);q=-1;if(!y){h=S(s+S(S(S(n*f)+S(t*g))*S(.02500000037252903)));w=S(p+S(S(S(m*f)+S(u*g))*S(.02500000037252903)));g=S(l+S(S(S(k*f)+S(v*g))*S(.02500000037252903)));e=0;while(1){d:{if(!L[(e<<2)+x>>2]){break d}if((q|0)!=-1){d=(e<<4)+a|0;f=S(S(P[d+8>>2]*h)+S(S(P[d>>2]*g)+S(w*P[d+4>>2])));d=(q<<4)+a|0;if(!(f>S(S(P[d+8>>2]*h)+S(S(P[d>>2]*g)+S(w*P[d+4>>2]))))){break d}}q=e}e=e+1|0;if((e|0)!=(b|0)){continue}break}}if((j|0)==(o|0)&(j|0)==(q|0)){break c}e:{if((o|0)==-1|(o|0)==(q|0)){break e}g=S(i+S(-40));if(!(i>=g)){break e}while(1){h=S(g*S(.01745329238474369));f=Fa(h);h=Ea(h);f:{g:{if(!y){w=S(s+S(S(S(n*h)+S(t*f))*S(.02500000037252903)));B=S(p+S(S(S(m*h)+S(u*f))*S(.02500000037252903)));f=S(l+S(S(S(k*h)+S(v*f))*S(.02500000037252903)));d=-1;e=0;while(1){h:{if(!L[(e<<2)+x>>2]){break h}if((d|0)!=-1){r=(e<<4)+a|0;h=S(S(P[r+8>>2]*w)+S(S(P[r>>2]*f)+S(B*P[r+4>>2])));r=(d<<4)+a|0;if(!(h>S(S(P[r+8>>2]*w)+S(S(P[r>>2]*f)+S(B*P[r+4>>2]))))){break h}}d=e}e=e+1|0;if((e|0)!=(b|0)){continue}break}if((j|0)==(o|0)){break g}o=d;break f}d=j&o;o=-1;if((d|0)==-1){break c}break f}o=d;if((d|0)==(j|0)){break c}}g=S(g+S(5));if(i>=g){continue}break}}e=A+45|0;if(A>>>0<316){continue}break}L[z>>2]=0;continue}break}L[z>>2]=3}return j}function Zj(a,b,c,d,e,f,g){var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;k=fa-48|0;fa=k;h=L[c+8>>2];if(h){p=h;while(1){if(L[p+20>>2]>L[a+100>>2]){j=L[p+12>>2];i=L[j+92>>2];l=L[j+96>>2];h=L[c+88>>2];m=L[j+88>>2];o=L[c+92>>2];j=L[c+96>>2];L[k+44>>2]=-1;j=l-j|0;L[k+40>>2]=j;i=i-o|0;L[k+36>>2]=i;l=m-h|0;L[k+32>>2]=l;m=i;q=i>>31;i=mI(i,q,L[e+8>>2],L[e+12>>2]);h=ga;o=l;r=l>>31;l=mI(l,r,L[e>>2],L[e+4>>2]);i=l+i|0;h=ga+h|0;h=i>>>0>>0?h+1|0:h;s=j>>31;t=mI(j,s,L[e+16>>2],L[e+20>>2]);l=t+i|0;i=ga+h|0;i=l>>>0>>0?i+1|0:i;h=mI(L[f+8>>2],L[f+12>>2],m,q);q=ga;o=mI(L[f>>2],L[f+4>>2],o,r);m=o+h|0;h=ga+q|0;h=m>>>0>>0?h+1|0:h;u=m;m=mI(L[f+16>>2],L[f+20>>2],j,s);j=u+m|0;h=ga+h|0;h=j>>>0>>0?h+1|0:h;m=h;a:{if(!!j&(h|0)>=0|(h|0)>0){L[k+24>>2]=1;o=0;h=-1;break a}if((m|0)<0){L[k+24>>2]=-1;h=j;j=0-j|0;m=0-(((h|0)!=0)+m|0)|0;o=0;h=1;break a}L[k+24>>2]=0;j=0;m=0;o=1;h=0}L[k+8>>2]=j;L[k+12>>2]=m;b:{c:{d:{m=k;if(!l&(i|0)<=0|(i|0)<0){if((i|0)>0|(i|0)>=0){break d}L[k+24>>2]=h;i=0-(((l|0)!=0)+i|0)|0;l=0-l|0}L[m+16>>2]=l;L[k+20>>2]=i;break c}L[k+16>>2]=0;L[k+20>>2]=0;if(o){break b}}if(!n){n=L[k+12>>2];L[g>>2]=L[k+8>>2];L[g+4>>2]=n;L[g+16>>2]=L[k+24>>2];n=L[k+20>>2];L[g+8>>2]=L[k+16>>2];L[g+12>>2]=n;n=p;break b}j=yc(k+8|0,g);if((j|0)<0){n=L[k+12>>2];L[g>>2]=L[k+8>>2];L[g+4>>2]=n;L[g+16>>2]=L[k+24>>2];n=L[k+20>>2];L[g+8>>2]=L[k+16>>2];L[g+12>>2]=n;n=p;break b}if(j){break b}x=n;i=L[n+4>>2];e:{f:{if(L[n>>2]==(p|0)){h=2;if((i|0)!=(p|0)){break f}j=L[p+12>>2];i=L[L[p+8>>2]+12>>2];h=L[i+96>>2];m=L[j+96>>2]-h|0;l=L[n+12>>2];o=L[i+92>>2];q=L[l+92>>2]-o|0;o=L[j+92>>2]-o|0;h=L[l+96>>2]-h|0;r=R(m,q)-R(o,h)|0;n=r;u=r>>31;r=L[d+8>>2];s=L[k+36>>2];t=L[d+4>>2];w=L[k+40>>2];v=R(r,s)-R(t,w)|0;v=mI(n,u,v,v>>31);n=ga;i=L[i+88>>2];l=L[l+88>>2]-i|0;u=R(l,o);o=L[j+88>>2]-i|0;j=u-R(o,q)|0;u=j;y=j>>31;q=L[k+32>>2];i=s;s=L[d>>2];j=R(q,t)-R(i,s)|0;t=mI(u,y,j,j>>31);i=t+v|0;j=ga+n|0;j=i>>>0>>0?j+1|0:j;n=i;i=R(h,o)-R(l,m)|0;h=i;m=i>>31;i=R(s,w)-R(q,r)|0;l=mI(h,m,i,i>>31);i=n+l|0;j=ga+j|0;j=i>>>0>>0?j+1|0:j;h=!!i&(j|0)>=0|(j|0)>0?2:1;break e}h=(i|0)==(p|0)}}n=(h|0)!=2^b?p:x}h=L[c+8>>2]}p=L[p>>2];if((p|0)!=(h|0)){continue}break}}fa=k+48|0;return n}function hl(a,b,c,d,e,f,g,h){var i=S(0),j=S(0),k=S(0),l=S(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);a=ub(a,4,b,c);L[a+688>>2]=0;L[a+692>>2]=-1082130432;L[a>>2]=19768;L[a+748>>2]=0;J[a+740|0]=h;L[a+736>>2]=16777216;L[a+708>>2]=0;L[a+712>>2]=0;L[a+704>>2]=1065353216;L[a+696>>2]=1063675494;L[a+700>>2]=1050253722;J[a+716|0]=0;c=L[d+12>>2];L[a+608>>2]=L[d+8>>2];L[a+612>>2]=c;c=L[d+4>>2];L[a+600>>2]=L[d>>2];L[a+604>>2]=c;i=P[f+8>>2];j=P[b+36>>2];m=P[f>>2];n=P[b+4>>2];q=P[b+20>>2];o=P[f+4>>2];k=S(S(i*j)+S(S(m*n)+S(q*o)));a:{if(k>=S(.9999998807907104)){j=P[b+40>>2];k=P[b+24>>2];l=P[b+8>>2];p=S(-P[b+44>>2]);n=S(-P[b+28>>2]);m=S(-P[b+12>>2]);break a}if(k<=S(-.9999998807907104)){j=P[b+40>>2];k=P[b+24>>2];l=P[b+8>>2];p=P[b+44>>2];n=P[b+28>>2];m=P[b+12>>2];break a}l=S(S(o*j)-S(q*i));k=S(S(i*n)-S(j*m));p=S(S(l*o)-S(m*k));j=S(S(m*q)-S(n*o));n=S(S(j*m)-S(i*l));m=S(S(k*i)-S(o*j))}P[a+552>>2]=m;P[a+556>>2]=l;i=P[f>>2];P[a+572>>2]=k;P[a+568>>2]=n;L[a+564>>2]=0;P[a+560>>2]=i;i=P[f+4>>2];P[a+588>>2]=j;P[a+584>>2]=p;L[a+580>>2]=0;P[a+576>>2]=i;i=P[f+8>>2];L[a+596>>2]=0;P[a+592>>2]=i;l=P[f+8>>2];o=P[g+8>>2];k=P[f>>2];q=P[g>>2];i=P[f+4>>2];t=P[g+4>>2];j=S(S(l*o)+S(S(k*q)+S(i*t)));b:{if(jS(.7071067690849304)){j=i;i=S(S(1)/S(_(S(S(i*i)+S(l*l)))));j=S(j*i);k=S(i*S(-l));l=S(0);i=S(0);break b}j=S(S(1)/S(_(S(S(k*k)+S(i*i)))));k=S(k*j);l=S(j*S(-i));j=S(0);i=S(0);break b}j=S(j+S(1));s=S(_(S(j+j)));r=S(S(1)/s);j=S(S(S(k*t)-S(q*i))*r);k=S(S(S(l*q)-S(o*k))*r);l=S(S(S(i*o)-S(t*l))*r);i=S(s*S(.5))}b=L[e+4>>2];L[a+664>>2]=L[e>>2];L[a+668>>2]=b;b=L[e+12>>2];L[a+672>>2]=L[e+8>>2];L[a+676>>2]=b;r=S(S(S(i*p)+S(n*l))-S(k*m));s=S(S(S(i*m)+S(p*k))-S(j*n));u=S(S(S(S(-l)*m)-S(n*k))-S(j*p));m=S(S(S(i*n)+S(m*j))-S(l*p));p=S(S(r*k)+S(S(S(i*s)-S(u*l))-S(m*j)));P[a+616>>2]=p;n=S(S(m*l)+S(S(S(i*r)-S(u*j))-S(s*k)));i=S(S(s*j)+S(S(S(i*m)-S(u*k))-S(r*l)));P[a+620>>2]=S(t*n)-S(i*o);m=P[g>>2];P[a+636>>2]=S(o*p)-S(n*q);P[a+632>>2]=i;L[a+628>>2]=0;P[a+624>>2]=m;m=P[g+4>>2];P[a+652>>2]=S(q*i)-S(p*t);P[a+648>>2]=n;L[a+644>>2]=0;P[a+640>>2]=m;i=P[g+8>>2];P[a+732>>2]=h?S(-1):S(1);L[a+660>>2]=0;P[a+656>>2]=i}function aA(a,b){a=a|0;b=S(b);var c=0,d=S(0),e=0,f=S(0),g=S(0),h=0,i=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=0,u=S(0);h=fa-32|0;fa=h;e=L[a+136>>2];if((e|0)>0){while(1){mg(a,c,0);c=c+1|0;e=L[a+136>>2];if((c|0)<(e|0)){continue}break}}c=L[a+116>>2];d=P[c+320>>2];f=S(d*d);d=P[c+312>>2];g=S(d*d);d=P[c+316>>2];d=S(S(_(S(f+S(g+S(d*d)))))*S(3.5999999046325684));P[a+112>>2]=d;i=c+(L[a+128>>2]<<2)|0;if(S(S(P[i+36>>2]*P[c+320>>2])+S(S(P[i+4>>2]*P[c+312>>2])+S(P[i+20>>2]*P[c+316>>2])))>2]=-d}a:{if((e|0)<=0){break a}c=0;while(1){Ck(a,L[a+144>>2]+R(c,284)|0);c=c+1|0;e=L[a+136>>2];if((c|0)<(e|0)){continue}break}if((e|0)<=0){break a}g=S(S(1)/P[L[a+116>>2]+344>>2]);e=0;while(1){d=S(0);c=L[a+144>>2]+R(e,284)|0;if(M[c+84|0]){d=P[c+272>>2];d=S(g*S(S(S(P[c+216>>2]*S(P[c+204>>2]-P[c+32>>2]))*P[c+268>>2])-S(P[c+(d>2]*d)));d=d>2]=d;e=e+1|0;c=L[a+136>>2];if((e|0)<(c|0)){continue}break}if((c|0)<=0){break a}c=0;while(1){e=L[a+144>>2]+R(c,284)|0;d=P[e+248>>2];g=P[e+276>>2];j=P[e>>2];f=P[e+4>>2];k=P[e+8>>2];L[h+28>>2]=0;d=d>2]=S(k*d)*b;P[h+20>>2]=S(d*f)*b;P[h+16>>2]=S(j*d)*b;d=P[e+16>>2];i=L[a+116>>2];g=P[i+52>>2];j=P[e+20>>2];f=P[i+56>>2];k=P[e+24>>2];l=P[i+60>>2];L[h+12>>2]=0;P[h+8>>2]=k-l;P[h+4>>2]=j-f;P[h>>2]=d-g;rb(i,h+16|0,h);c=c+1|0;if((c|0)>2]){continue}break}}ha[L[L[a>>2]+20>>2]](a,b);n=L[a+136>>2];if((n|0)>0){c=L[a+116>>2];i=c+(L[a+128>>2]<<2)|0;t=L[a+144>>2];e=0;while(1){a=R(e,284)+t|0;b:{if(M[a+84|0]){d=P[a+236>>2];j=P[i+36>>2];f=P[a+8>>2];k=P[i+4>>2];l=P[a>>2];o=P[i+20>>2];p=P[a+4>>2];g=S(S(j*f)+S(S(k*l)+S(o*p)));q=a+236|0;m=S(j-S(f*g));j=P[c+328>>2];f=S(P[a+40>>2]-P[c+56>>2]);r=S(P[a+36>>2]-P[c+52>>2]);s=P[c+332>>2];m=S(m*S(P[c+320>>2]+S(S(j*f)-S(r*s))));u=S(k-S(l*g));k=S(P[a+44>>2]-P[c+60>>2]);l=f;f=P[c+336>>2];g=S(S(S(m+S(S(u*S(S(S(s*k)-S(l*f))+P[c+312>>2]))+S(S(P[c+316>>2]+S(S(f*r)-S(k*j)))*S(o-S(p*g)))))*b)/P[a+212>>2]);f=g;break b}g=P[a+236>>2];q=a+236|0;d=P[a+240>>2];f=d}j=f;P[q>>2]=d+g;P[a+240>>2]=j*S(.9900000095367432);e=e+1|0;if((n|0)!=(e|0)){continue}break}}fa=h+32|0}function Up(a,b,c){a=a|0;b=S(b);c=c|0;var d=0,e=0,f=0,g=S(0),h=0,i=0,j=0,k=S(0),l=S(0),m=0,n=S(0),o=S(0),p=S(0),q=S(0);i=fa-16|0;fa=i;L[i+12>>2]=a;P[i+8>>2]=b;J[i+7|0]=c;o=P[i+8>>2];j=L[i+12>>2];c=L[j+712>>2];a:{b:{if(!(J[i+7|0]&1)){break b}c:{if((c|0)<=0){break c}d=L[j+720>>2];a=0;if(c>>>0>=8){f=c&-8;while(1){L[(d+R(a,104)|0)+88>>2]=0;L[(d+R(a|1,104)|0)+88>>2]=0;L[(d+R(a|2,104)|0)+88>>2]=0;L[(d+R(a|3,104)|0)+88>>2]=0;L[(d+R(a|4,104)|0)+88>>2]=0;L[(d+R(a|5,104)|0)+88>>2]=0;L[(d+R(a|6,104)|0)+88>>2]=0;L[(d+R(a|7,104)|0)+88>>2]=0;a=a+8|0;h=h+8|0;if((f|0)!=(h|0)){continue}break}}h=c&7;if(!h){break c}while(1){L[(d+R(a,104)|0)+88>>2]=0;a=a+1|0;e=e+1|0;if((h|0)!=(e|0)){continue}break}}f=L[j+752>>2];if((f|0)>0){m=L[j+760>>2];h=0;while(1){d=m+R(h,44)|0;a=L[d+8>>2];e=L[d+12>>2];b=P[a+8>>2];n=S(P[e+8>>2]-b);d=L[d+16>>2];g=P[a+12>>2];k=S(P[d+12>>2]-g);b=S(P[d+8>>2]-b);g=S(P[e+12>>2]-g);l=S(S(n*k)-S(b*g));p=S(l*l);q=g;g=P[a+16>>2];l=S(P[d+16>>2]-g);g=S(P[e+16>>2]-g);k=S(S(q*l)-S(k*g));b=S(S(g*b)-S(l*n));b=S(_(S(p+S(S(k*k)+S(b*b)))));P[a+88>>2]=b+P[a+88>>2];P[e+88>>2]=b+P[e+88>>2];P[d+88>>2]=b+P[d+88>>2];h=h+1|0;if((f|0)!=(h|0)){continue}break}}if((c|0)<=0){break a}d=L[j+720>>2];a=0;if((c|0)!=1){h=c&-2;e=0;while(1){f=d+R(a,104)|0;P[f+88>>2]=S(1)/P[f+88>>2];f=d+R(a|1,104)|0;P[f+88>>2]=S(1)/P[f+88>>2];a=a+2|0;e=e+2|0;if((h|0)!=(e|0)){continue}break}}if(!(c&1)){break b}a=d+R(a,104)|0;P[a+88>>2]=S(1)/P[a+88>>2]}if((c|0)<=0){break a}h=c&1;d=L[j+720>>2];f=c-1|0;d:{if(!f){b=S(0);a=0;break d}m=c&-2;a=0;b=S(0);e=0;while(1){g=b;b=P[(d+R(a,104)|0)+88>>2];g=S(g+(b>S(0)?S(S(1)/b):S(0)));b=P[(d+R(a|1,104)|0)+88>>2];b=S(g+(b>S(0)?S(S(1)/b):S(0)));a=a+2|0;e=e+2|0;if((m|0)!=(e|0)){continue}break}}if(h){g=b;b=P[(d+R(a,104)|0)+88>>2];b=S(g+(b>S(0)?S(S(1)/b):S(0)))}if((c|0)<=0){break a}h=c&1;b=S(S(S(1)/b)*o);d=L[j+720>>2];e:{if(!f){a=0;break e}c=c&-2;a=0;e=0;while(1){f=d+R(a,104)|0;P[f+88>>2]=P[f+88>>2]/b;f=d+R(a|1,104)|0;P[f+88>>2]=P[f+88>>2]/b;a=a+2|0;e=e+2|0;if((c|0)!=(e|0)){continue}break}}if(!h){break a}a=d+R(a,104)|0;P[a+88>>2]=P[a+88>>2]/b}J[j+924|0]=1;fa=i+16|0}function yk(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;d=fa+-64|0;h=243703;g=L[a+732>>2];if((g|0)>0){while(1){c=L[a+740>>2];b=c+R(f,52)|0;L[d+56>>2]=L[b+48>>2];e=L[b+44>>2];L[d+48>>2]=L[b+40>>2];L[d+52>>2]=e;e=L[b+36>>2];L[d+40>>2]=L[b+32>>2];L[d+44>>2]=e;e=L[b+28>>2];L[d+32>>2]=L[b+24>>2];L[d+36>>2]=e;e=L[b+20>>2];L[d+24>>2]=L[b+16>>2];L[d+28>>2]=e;e=L[b+12>>2];L[d+16>>2]=L[b+8>>2];L[d+20>>2]=e;e=L[b+4>>2];L[d+8>>2]=L[b>>2];L[d+12>>2]=e;h=R(h,1664525)+1013904223|0;c=c+R((h>>>0)%(g>>>0)|0,52)|0;e=L[c+4>>2];L[b>>2]=L[c>>2];L[b+4>>2]=e;L[b+48>>2]=L[c+48>>2];e=L[c+44>>2];L[b+40>>2]=L[c+40>>2];L[b+44>>2]=e;e=L[c+36>>2];L[b+32>>2]=L[c+32>>2];L[b+36>>2]=e;e=L[c+28>>2];L[b+24>>2]=L[c+24>>2];L[b+28>>2]=e;e=L[c+20>>2];L[b+16>>2]=L[c+16>>2];L[b+20>>2]=e;e=L[c+12>>2];L[b+8>>2]=L[c+8>>2];L[b+12>>2]=e;L[c+48>>2]=L[d+56>>2];b=L[d+52>>2];L[c+40>>2]=L[d+48>>2];L[c+44>>2]=b;b=L[d+44>>2];L[c+32>>2]=L[d+40>>2];L[c+36>>2]=b;b=L[d+36>>2];L[c+24>>2]=L[d+32>>2];L[c+28>>2]=b;b=L[d+28>>2];L[c+16>>2]=L[d+24>>2];L[c+20>>2]=b;b=L[d+20>>2];L[c+8>>2]=L[d+16>>2];L[c+12>>2]=b;b=L[d+12>>2];L[c>>2]=L[d+8>>2];L[c+4>>2]=b;f=f+1|0;if((g|0)!=(f|0)){continue}break}}g=L[a+752>>2];if((g|0)>0){f=0;while(1){c=L[a+760>>2];b=c+R(f,44)|0;L[d+48>>2]=L[b+40>>2];e=L[b+36>>2];L[d+40>>2]=L[b+32>>2];L[d+44>>2]=e;e=L[b+28>>2];L[d+32>>2]=L[b+24>>2];L[d+36>>2]=e;e=L[b+20>>2];L[d+24>>2]=L[b+16>>2];L[d+28>>2]=e;e=L[b+12>>2];L[d+16>>2]=L[b+8>>2];L[d+20>>2]=e;e=L[b+4>>2];L[d+8>>2]=L[b>>2];L[d+12>>2]=e;h=R(h,1664525)+1013904223|0;c=c+R((h>>>0)%(g>>>0)|0,44)|0;e=L[c+4>>2];L[b>>2]=L[c>>2];L[b+4>>2]=e;L[b+40>>2]=L[c+40>>2];e=L[c+36>>2];L[b+32>>2]=L[c+32>>2];L[b+36>>2]=e;e=L[c+28>>2];L[b+24>>2]=L[c+24>>2];L[b+28>>2]=e;e=L[c+20>>2];L[b+16>>2]=L[c+16>>2];L[b+20>>2]=e;e=L[c+12>>2];L[b+8>>2]=L[c+8>>2];L[b+12>>2]=e;L[c+40>>2]=L[d+48>>2];b=L[d+44>>2];L[c+32>>2]=L[d+40>>2];L[c+36>>2]=b;b=L[d+36>>2];L[c+24>>2]=L[d+32>>2];L[c+28>>2]=b;b=L[d+28>>2];L[c+16>>2]=L[d+24>>2];L[c+20>>2]=b;b=L[d+20>>2];L[c+8>>2]=L[d+16>>2];L[c+12>>2]=b;b=L[d+12>>2];L[c>>2]=L[d+8>>2];L[c+4>>2]=b;f=f+1|0;if((g|0)!=(f|0)){continue}break}}}function Gk(a,b){var c=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),l=S(0),m=S(0),n=S(0),o=S(0),p=0,q=0,r=S(0),s=S(0),t=S(0);a:{if(M[a+204|0]&2){c=L[a+8>>2];L[a+68>>2]=L[a+4>>2];L[a+72>>2]=c;c=L[a+16>>2];L[a+76>>2]=L[a+12>>2];L[a+80>>2]=c;c=L[a+24>>2];L[a+84>>2]=L[a+20>>2];L[a+88>>2]=c;c=L[a+32>>2];L[a+92>>2]=L[a+28>>2];L[a+96>>2]=c;c=L[a+40>>2];L[a+100>>2]=L[a+36>>2];L[a+104>>2]=c;c=L[a+48>>2];L[a+108>>2]=L[a+44>>2];L[a+112>>2]=c;c=a+52|0;break a}c=L[b+4>>2];L[a+68>>2]=L[b>>2];L[a+72>>2]=c;c=L[b+12>>2];L[a+76>>2]=L[b+8>>2];L[a+80>>2]=c;c=L[b+20>>2];L[a+84>>2]=L[b+16>>2];L[a+88>>2]=c;c=L[b+28>>2];L[a+92>>2]=L[b+24>>2];L[a+96>>2]=c;c=L[b+36>>2];L[a+100>>2]=L[b+32>>2];L[a+104>>2]=c;c=L[b+44>>2];L[a+108>>2]=L[b+40>>2];L[a+112>>2]=c;c=b+48|0}p=L[c+4>>2];L[a+116>>2]=L[c>>2];L[a+120>>2]=p;p=L[c+8>>2];c=L[c+12>>2];q=L[a+340>>2];L[a+156>>2]=L[a+336>>2];L[a+160>>2]=q;q=L[a+332>>2];L[a+148>>2]=L[a+328>>2];L[a+152>>2]=q;L[a+124>>2]=p;L[a+128>>2]=c;c=L[a+316>>2];L[a+132>>2]=L[a+312>>2];L[a+136>>2]=c;c=L[a+324>>2];L[a+140>>2]=L[a+320>>2];L[a+144>>2]=c;c=L[b+12>>2];L[a+12>>2]=L[b+8>>2];L[a+16>>2]=c;c=L[b+4>>2];L[a+4>>2]=L[b>>2];L[a+8>>2]=c;c=L[b+28>>2];L[a+28>>2]=L[b+24>>2];L[a+32>>2]=c;c=L[b+20>>2];L[a+20>>2]=L[b+16>>2];L[a+24>>2]=c;c=L[b+44>>2];L[a+44>>2]=L[b+40>>2];L[a+48>>2]=c;c=L[b+36>>2];L[a+36>>2]=L[b+32>>2];L[a+40>>2]=c;c=L[b+60>>2];L[a+60>>2]=L[b+56>>2];L[a+64>>2]=c;c=L[b+52>>2];L[a+52>>2]=L[b+48>>2];L[a+56>>2]=c;j=P[a+8>>2];k=P[a+12>>2];l=P[a+28>>2];m=P[a+20>>2];n=P[a+24>>2];g=P[a+44>>2];r=P[a+404>>2];h=P[a+36>>2];i=P[a+40>>2];s=P[a+400>>2];o=P[a+4>>2];t=P[a+396>>2];L[a+308>>2]=0;L[a+292>>2]=0;L[a+276>>2]=0;d=S(r*g);e=S(t*h);f=S(s*i);P[a+304>>2]=S(g*d)+S(S(h*e)+S(i*f));P[a+300>>2]=S(l*d)+S(S(m*e)+S(n*f));P[a+296>>2]=S(k*d)+S(S(o*e)+S(j*f));d=S(r*l);e=S(t*m);f=S(s*n);P[a+288>>2]=S(g*d)+S(S(h*e)+S(i*f));P[a+284>>2]=S(l*d)+S(S(m*e)+S(n*f));P[a+280>>2]=S(k*d)+S(S(o*e)+S(j*f));d=g;g=S(k*r);e=h;h=S(o*t);f=i;i=S(j*s);P[a+272>>2]=S(d*g)+S(S(e*h)+S(f*i));P[a+268>>2]=S(l*g)+S(S(m*h)+S(i*n));P[a+264>>2]=S(k*g)+S(S(o*h)+S(j*i))}function mg(a,b,c){var d=S(0),e=S(0),f=S(0),g=S(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=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),J=S(0),K=S(0),M=S(0),N=S(0),O=S(0),Q=S(0),T=0;T=a;a=L[a+144>>2]+R(b,284)|0;lg(T,a,c);L[a+136>>2]=0;L[a+120>>2]=0;L[a+104>>2]=0;r=P[a+56>>2];y=P[a+52>>2];j=P[a+60>>2];n=S(P[a+232>>2]*S(.5));d=Ea(n);e=Fa(n);n=P[a+72>>2];t=P[a+76>>2];u=P[a+68>>2];i=S(P[a+236>>2]*S(-.5));g=S(Ea(i)/S(_(S(S(t*t)+S(S(u*u)+S(n*n))))));f=S(u*g);i=Fa(i);h=S(t*g);s=S(n*g);p=S(S(2)/S(S(i*i)+S(S(h*h)+S(S(f*f)+S(s*s)))));l=S(h*p);m=S(f*l);v=S(s*p);q=S(i*v);D=S(m-q);C=S(-y);d=S(d/S(_(S(S(j*j)+S(S(y*y)+S(r*r))))));g=S(C*d);w=S(d*S(-j));d=S(d*S(-r));o=S(S(2)/S(S(e*e)+S(S(w*w)+S(S(g*g)+S(d*d)))));k=S(g*o);F=S(g*k);z=S(d*o);G=S(d*z);x=S(S(1)-S(F+G));A=S(s*v);B=S(h*l);E=S(S(1)-S(A+B));h=S(w*o);H=S(g*h);I=S(e*z);o=S(H-I);J=S(d*h);K=S(e*k);k=S(J+K);M=S(f*v);N=S(i*l);v=S(M+N);d=S(S(D*x)+S(S(E*o)+S(k*v)));O=S(s*l);p=S(f*p);Q=S(i*p);i=S(O+Q);s=S(M-N);f=S(f*p);p=S(S(1)-S(f+B));l=S(S(i*x)+S(S(s*o)+S(k*p)));A=S(S(1)-S(f+A));f=S(A*x);x=S(m+q);m=S(x*o);o=S(O-Q);k=S(f+S(m+S(k*o)));P[a+132>>2]=S(S(C*d)-S(r*l))-S(j*k);m=S(S(r*u)-S(y*n));q=S(S(j*n)-S(r*t));B=S(S(y*t)-S(j*u));f=S(S(1)/S(_(S(S(m*m)+S(S(q*q)+S(B*B))))));m=S(m*f);q=S(q*f);f=S(B*f);P[a+128>>2]=S(m*k)+S(S(q*d)+S(f*l));P[a+124>>2]=S(t*k)+S(S(u*d)+S(n*l));d=S(J-K);z=S(g*z);k=S(e*h);e=S(z+k);w=S(w*h);g=S(S(1)-S(F+w));h=S(S(D*d)+S(S(E*e)+S(v*g)));l=S(S(i*d)+S(S(s*e)+S(g*p)));e=S(S(A*d)+S(S(x*e)+S(o*g)));P[a+116>>2]=S(S(C*h)-S(r*l))-S(j*e);P[a+112>>2]=S(m*e)+S(S(q*h)+S(f*l));P[a+108>>2]=S(t*e)+S(S(u*h)+S(n*l));e=S(H+I);g=S(S(1)-S(G+w));d=S(z-k);h=S(S(D*e)+S(S(E*g)+S(d*v)));i=S(S(i*e)+S(S(s*g)+S(d*p)));e=S(S(A*e)+S(S(x*g)+S(d*o)));P[a+100>>2]=S(S(C*h)-S(r*i))-S(j*e);P[a+96>>2]=S(m*e)+S(S(q*h)+S(f*i));P[a+92>>2]=S(t*e)+S(S(u*h)+S(n*i));L[a+152>>2]=0;d=j;j=P[a+32>>2];P[a+148>>2]=S(d*j)+P[a+44>>2];P[a+144>>2]=S(r*j)+P[a+40>>2];P[a+140>>2]=P[a+36>>2]+S(y*j)}function _a(a,b,c){var d=0,e=0,f=S(0),g=S(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=S(0),s=S(0),t=S(0),u=S(0),v=S(0),w=S(0),x=S(0),y=S(0);a:{d=L[a+748>>2];if((d|0)<=0){break a}while(1){n=P[b+48>>2];q=P[b+8>>2];r=P[b>>2];s=P[b+4>>2];o=P[b+52>>2];t=P[b+24>>2];i=P[b+16>>2];u=P[b+20>>2];f=P[b+56>>2];h=P[b+40>>2];g=P[b+32>>2];p=P[b+36>>2];j=d-1|0;e=R(j,184)+a|0;L[e- -64>>2]=0;l=f;f=P[e+12>>2];k=S(h*f);h=P[e+4>>2];v=S(g*h);g=P[e+8>>2];p=S(l+S(k+S(v+S(p*g))));P[e+60>>2]=p;o=S(o+S(S(f*t)+S(S(h*i)+S(g*u))));P[e+56>>2]=o;n=S(n+S(S(f*q)+S(S(h*r)+S(g*s))));P[e+52>>2]=n;q=P[c+56>>2];r=P[c+40>>2];s=P[c+32>>2];t=P[c+36>>2];i=P[c+52>>2];u=P[c+24>>2];v=P[c+16>>2];w=P[c+20>>2];f=P[c+48>>2];h=P[c+8>>2];g=P[c>>2];k=P[c+4>>2];L[e+48>>2]=0;l=f;f=P[e+28>>2];x=S(h*f);h=P[e+20>>2];y=S(g*h);g=P[e+24>>2];k=S(l+S(x+S(y+S(k*g))));P[e+36>>2]=k;i=S(i+S(S(f*u)+S(S(h*v)+S(g*w))));P[e+40>>2]=i;f=S(q+S(S(f*r)+S(S(h*s)+S(g*t))));P[e+44>>2]=f;P[e+84>>2]=S(S(p-f)*P[e+76>>2])+S(S(S(n-k)*P[e+68>>2])+S(S(o-i)*P[e+72>>2]));L[e+152>>2]=L[e+152>>2]+1;e=d>>>0>1;d=j;if(e){continue}break}b=L[a+748>>2];if((b|0)<=0){break a}while(1){c=b;b=c-1|0;d=R(b,184)+a|0;j=d+4|0;f=P[d+84>>2];h=P[a+752>>2];b:{if(!(f<=h)){e=L[d+116>>2];c:{if(!e){break c}m=L[8113];if(!m){break c}ha[m|0](e)|0;L[d+116>>2]=0}e=L[a+748>>2];d=e-1|0;if((c|0)!=(e|0)){d=R(d,184)+a|0;qa(j,d+4|0,184);L[d+124>>2]=0;L[d+116>>2]=0;L[d+152>>2]=0;L[d+128>>2]=0;L[d+132>>2]=0;J[d+120|0]=0;d=L[a+748>>2]-1|0}L[a+748>>2]=d;break b}g=S(P[d+44>>2]-S(P[d+60>>2]-S(f*P[d+76>>2])));l=S(g*g);g=S(P[d+36>>2]-S(P[d+52>>2]-S(P[d+68>>2]*f)));f=S(P[d+40>>2]-S(P[d+56>>2]-S(f*P[d+72>>2])));if(S(l+S(S(g*g)+S(f*f)))>S(h*h)){e=L[d+116>>2];d:{if(!e){break d}m=L[8113];if(!m){break d}ha[m|0](e)|0;L[d+116>>2]=0}e=L[a+748>>2];d=e-1|0;if((c|0)!=(e|0)){d=R(d,184)+a|0;qa(j,d+4|0,184);L[d+124>>2]=0;L[d+116>>2]=0;L[d+152>>2]=0;L[d+128>>2]=0;L[d+132>>2]=0;J[d+120|0]=0;d=L[a+748>>2]-1|0}L[a+748>>2]=d;break b}d=L[8114];if(!d){break b}ha[d|0](j,L[a+740>>2],L[a+744>>2])|0}if(c>>>0>1){continue}break}}}function xB(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=S(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=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);h=L[a+28>>2];p=P[h+20>>2];q=P[h+36>>2];r=P[h+40>>2];s=P[h+8>>2];t=P[h+24>>2];d=P[h+60>>2];i=P[h+44>>2];j=P[h+12>>2];f=P[h+52>>2];k=P[h+56>>2];l=P[h+28>>2];m=P[c+8>>2];n=P[c>>2];o=P[c+4>>2];e=P[b+8>>2];g=P[b>>2];u=P[b+4>>2];v=P[h+4>>2];L[a+108>>2]=0;L[a+92>>2]=0;L[a+76>>2]=0;L[a+60>>2]=0;f=S(-f);P[a+104>>2]=S(S(i*S(0))+S(S(j*S(0))+S(l*S(0))))+S(S(S(j*f)-S(l*k))-S(i*d));P[a+100>>2]=S(S(r*S(0))+S(S(s*S(0))+S(t*S(0))))+S(S(S(s*f)-S(t*k))-S(r*d));P[a+96>>2]=S(S(q*S(0))+S(S(v*S(0))+S(p*S(0))))+S(S(S(v*f)-S(p*k))-S(q*d));f=e;e=S(S(1)/S(_(S(S(e*e)+S(S(g*g)+S(u*u))))));d=S(f*e);k=S(g*e);e=S(u*e);P[a+88>>2]=S(i*d)+S(S(j*k)+S(l*e));g=S(S(1)/S(_(S(S(m*m)+S(S(n*n)+S(o*o))))));m=S(m*g);n=S(n*g);o=S(o*g);P[a+84>>2]=S(i*m)+S(S(j*n)+S(l*o));P[a+72>>2]=S(d*r)+S(S(k*s)+S(e*t));P[a+68>>2]=S(m*r)+S(S(n*s)+S(o*t));P[a+56>>2]=S(d*q)+S(S(k*v)+S(e*p));P[a+52>>2]=S(m*q)+S(S(n*v)+S(p*o));f=i;i=S(S(n*e)-S(k*o));g=j;j=S(S(o*d)-S(e*m));u=l;l=S(S(m*k)-S(d*n));P[a+80>>2]=S(f*i)+S(S(g*j)+S(u*l));P[a- -64>>2]=S(i*r)+S(S(j*s)+S(t*l));P[a+48>>2]=S(i*q)+S(S(j*v)+S(p*l));b=L[a+32>>2];w=P[b+60>>2];y=P[b+52>>2];x=P[b+56>>2];p=P[b+20>>2];q=P[b+36>>2];r=P[b+40>>2];s=P[b+8>>2];t=P[b+24>>2];v=P[b+44>>2];g=P[b+12>>2];u=P[b+28>>2];f=P[b+4>>2];L[a+172>>2]=0;L[a+156>>2]=0;L[a+140>>2]=0;L[a+124>>2]=0;P[a+152>>2]=S(d*v)+S(S(k*g)+S(e*u));P[a+148>>2]=S(m*v)+S(S(n*g)+S(o*u));P[a+144>>2]=S(i*v)+S(S(j*g)+S(l*u));P[a+136>>2]=S(d*r)+S(S(k*s)+S(e*t));P[a+132>>2]=S(m*r)+S(S(n*s)+S(o*t));P[a+128>>2]=S(i*r)+S(S(j*s)+S(l*t));P[a+120>>2]=S(d*q)+S(S(k*f)+S(e*p));P[a+116>>2]=S(m*q)+S(S(n*f)+S(o*p));P[a+112>>2]=S(i*q)+S(S(j*f)+S(l*p));d=S(-y);P[a+168>>2]=S(S(v*S(0))+S(S(g*S(0))+S(u*S(0))))+S(S(S(g*d)-S(u*x))-S(v*w));P[a+164>>2]=S(S(r*S(0))+S(S(s*S(0))+S(t*S(0))))+S(S(S(s*d)-S(t*x))-S(r*w));P[a+160>>2]=S(S(q*S(0))+S(S(f*S(0))+S(p*S(0))))+S(S(S(f*d)-S(p*x))-S(q*w));vg(a)}function sd(a,b,c,d,e){var f=S(0),g=S(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=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);k=M[e+16|0]&-16;J[e+16|0]=k;B=P[d+8>>2];m=P[b+8>>2];r=S(B-m);l=P[a+8>>2];f=S(l-m);C=P[d>>2];n=P[b>>2];s=S(C-n);i=P[a>>2];g=S(i-n);D=P[d+4>>2];o=P[b+4>>2];t=S(D-o);p=P[a+4>>2];h=S(p-o);j=S(S(r*f)+S(S(s*g)+S(t*h)));x=P[c+8>>2];u=S(x-m);y=P[c>>2];v=S(y-n);z=P[c+4>>2];w=S(z-o);g=S(S(u*f)+S(S(v*g)+S(w*h)));a:{if(!(!(g<=S(0))|!(j<=S(0)))){a=L[b+4>>2];L[e>>2]=L[b>>2];L[e+4>>2]=a;a=L[b+12>>2];L[e+8>>2]=L[b+8>>2];L[e+12>>2]=a;J[e+16|0]=k|1;g=S(0);f=S(0);h=S(1);break a}f=S(l-x);h=S(i-y);q=S(p-z);A=S(S(r*f)+S(S(s*h)+S(t*q)));h=S(S(u*f)+S(S(v*h)+S(w*q)));if(!(!(h>=S(0))|!(h>=A))){a=L[c+4>>2];L[e>>2]=L[c>>2];L[e+4>>2]=a;a=L[c+12>>2];L[e+8>>2]=L[c+8>>2];L[e+12>>2]=a;J[e+16|0]=k|2;g=S(1);f=S(0);h=S(0);break a}q=S(S(g*A)-S(j*h));b:{if(!(h<=S(0))|!(g>=S(0))){break b}f=S(0);if(!(q<=S(0))){break b}L[e+12>>2]=0;J[e+16|0]=k|3;g=S(g/S(g-h));P[e+8>>2]=m+S(u*g);P[e+4>>2]=o+S(w*g);P[e>>2]=n+S(v*g);h=S(S(1)-g);break a}f=S(l-B);i=S(i-C);p=S(p-D);l=S(S(u*f)+S(S(v*i)+S(w*p)));f=S(S(r*f)+S(S(s*i)+S(t*p)));if(!(!(f>=S(0))|!(f>=l))){a=L[d+4>>2];L[e>>2]=L[d>>2];L[e+4>>2]=a;a=L[d+12>>2];L[e+8>>2]=L[d+8>>2];L[e+12>>2]=a;J[e+16|0]=k|4;f=S(1);g=S(0);h=S(0);break a}i=S(S(l*j)-S(f*g));c:{if(!(f<=S(0))|!(j>=S(0))){break c}g=S(0);if(!(i<=S(0))){break c}L[e+12>>2]=0;J[e+16|0]=k|5;f=S(j/S(j-f));P[e+8>>2]=m+S(r*f);P[e+4>>2]=o+S(t*f);P[e>>2]=n+S(s*f);h=S(S(1)-f);break a}d:{j=S(S(h*f)-S(A*l));if(!(j<=S(0))){break d}g=S(A-h);if(!(g>=S(0))){break d}f=S(l-f);if(!(f>=S(0))){break d}L[e+12>>2]=0;J[e+16|0]=k|6;f=S(g/S(g+f));P[e+8>>2]=x+S(S(B-x)*f);P[e+4>>2]=z+S(S(D-z)*f);P[e>>2]=y+S(S(C-y)*f);g=S(S(1)-f);h=S(0);break a}L[e+12>>2]=0;J[e+16|0]=k|7;g=S(S(1)/S(q+S(j+i)));f=S(q*g);g=S(i*g);P[e+8>>2]=S(r*f)+S(m+S(u*g));P[e+4>>2]=S(t*f)+S(o+S(w*g));P[e>>2]=S(s*f)+S(n+S(v*g));h=S(S(S(1)-g)-f)}P[e+20>>2]=h;L[e+32>>2]=0;P[e+28>>2]=f;P[e+24>>2]=g}function nB(a){a=a|0;var b=0,c=S(0),d=0,e=0,f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=0,n=S(0),o=S(0),p=S(0),q=S(0),r=S(0),s=0,t=0,u=S(0),v=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),J=S(0),K=S(0),M=S(0),N=S(0),O=S(0),Q=S(0),T=S(0),U=S(0),V=0;L[a+36>>2]=0;m=fa-16|0;b=m+8|0;L[b>>2]=0;L[b+4>>2]=0;L[m>>2]=0;L[m+4>>2]=0;d=L[a+32>>2];e=L[a+28>>2];while(1){v=(s<<2)+m|0;L[v>>2]=1065353216;T=P[d+344>>2];U=P[e+344>>2];l=P[e+56>>2];n=P[e+20>>2];w=P[e+24>>2];x=P[e+28>>2];y=P[e+60>>2];z=P[e+44>>2];A=P[e+36>>2];B=P[e+40>>2];r=P[e+52>>2];j=P[a+308>>2];C=P[e+12>>2];f=P[a+300>>2];D=P[e+4>>2];o=P[a+304>>2];E=P[e+8>>2];g=P[d+56>>2];F=P[d+20>>2];p=P[d+24>>2];q=P[d+28>>2];h=P[d+52>>2];G=P[d+12>>2];H=P[d+4>>2];I=P[d+8>>2];J=P[d+60>>2];i=P[a+324>>2];K=P[d+44>>2];k=P[a+316>>2];M=P[d+36>>2];c=P[a+320>>2];N=P[d+40>>2];V=L[m+4>>2];b=R(s,84)+a|0;t=b+48|0;L[t>>2]=L[m>>2];L[t+4>>2]=V;t=L[m+12>>2];L[b+56>>2]=L[m+8>>2];L[b+60>>2]=t;L[b+92>>2]=0;L[b+76>>2]=0;O=S(S(g+S(S(i*q)+S(S(k*F)+S(p*c))))-g);g=P[b+48>>2];Q=S(S(h+S(S(i*G)+S(S(k*H)+S(I*c))))-h);h=P[b+52>>2];u=S(S(O*g)-S(Q*h));c=S(S(J+S(S(i*K)+S(S(k*M)+S(N*c))))-J);i=P[b+56>>2];k=S(S(c*h)-S(O*i));c=S(S(Q*i)-S(c*g));q=S(S(K*u)+S(S(G*k)+S(q*c)));P[b+88>>2]=q;p=S(S(N*u)+S(S(I*k)+S(p*c)));P[b+84>>2]=p;k=S(S(M*u)+S(S(H*k)+S(F*c)));P[b+80>>2]=k;r=S(S(r+S(S(j*C)+S(S(f*D)+S(E*o))))-r);l=S(S(l+S(S(j*x)+S(S(f*n)+S(w*o))))-l);c=S(S(h*r)-S(g*l));f=S(S(y+S(S(j*z)+S(S(f*A)+S(B*o))))-y);j=S(S(l*i)-S(h*f));f=S(S(f*g)-S(i*r));o=S(S(z*c)+S(S(C*j)+S(x*f)));P[b+72>>2]=o;i=S(S(B*c)+S(S(E*j)+S(w*f)));P[b+68>>2]=i;j=S(S(A*c)+S(S(D*j)+S(n*f)));P[b- -64>>2]=j;f=P[e+404>>2];c=P[e+400>>2];g=P[e+396>>2];L[b+108>>2]=0;g=S(j*g);P[b+96>>2]=g;c=S(i*c);P[b+100>>2]=c;f=S(o*f);P[b+104>>2]=f;h=P[d+404>>2];l=P[d+400>>2];n=P[d+396>>2];L[b+124>>2]=0;n=S(k*n);P[b+112>>2]=n;l=S(p*l);P[b+116>>2]=l;h=S(q*h);P[b+120>>2]=h;P[b+128>>2]=S(T+S(U+S(S(f*o)+S(S(g*j)+S(i*c)))))+S(S(h*q)+S(S(n*k)+S(p*l)));L[v>>2]=0;s=s+1|0;if((s|0)!=3){continue}break}}function mp(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=S(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=0,w=0,x=S(0),y=S(0),z=S(0),A=0;k=fa-48|0;fa=k;L[k+44>>2]=a;L[k+40>>2]=b;L[k+36>>2]=c;L[k+32>>2]=d;L[k+28>>2]=e;L[k+24>>2]=f;L[k+20>>2]=g;L[k+16>>2]=h;L[k+12>>2]=i;J[k+11|0]=j;w=L[k+40>>2];i=L[k+36>>2];j=L[k+32>>2];n=L[k+28>>2];o=L[k+24>>2];b=L[k+12>>2];u=J[k+11|0]&1;e=0;c=0;f=L[k+20>>2];g=L[k+16>>2];a:{if((f|0)<2|(g|0)<2){break a}x=S(f-1|0);y=S(g-1|0);L[8513]=L[8513]+1;d=R(f,g);h=ha[L[6798]](d>>>0>268435455?-1:d<<4,16)|0;s=sa(d>>>0>1073741823?-1:d<<2);while(1){q=P[i+8>>2];l=S(S(c|0)/y);q=S(S(S(P[n+8>>2]-q)*l)+q);r=P[j+8>>2];r=S(S(S(S(P[o+8>>2]-r)*l)+r)-q);p=P[j+4>>2];m=S(S(S(P[o+4>>2]-p)*l)+p);p=P[i+4>>2];p=S(S(S(P[n+4>>2]-p)*l)+p);z=S(m-p);m=P[j>>2];t=S(S(S(P[o>>2]-m)*l)+m);m=P[i>>2];m=S(S(S(P[n>>2]-m)*l)+m);t=S(t-m);A=R(c,f);a=0;while(1){v=a+A|0;e=h+(v<<4)|0;L[e+12>>2]=0;l=S(S(a|0)/x);P[e+8>>2]=S(r*l)+q;P[e+4>>2]=S(z*l)+p;P[e>>2]=S(t*l)+m;L[s+(v<<2)>>2]=1065353216;a=a+1|0;if((f|0)!=(a|0)){continue}break}c=c+1|0;if((g|0)!=(c|0)){continue}break}L[8513]=L[8513]+1;e=Ac(ha[L[6798]](1252,16)|0,w,d,h,s);if(b&1){P[L[e+720>>2]+88>>2]=0;J[e+924|0]=1}if(b&2){P[(L[e+720>>2]+R(f-1|0,104)|0)+88>>2]=0;J[e+924|0]=1}if(b&4){P[(L[e+720>>2]+R(R(f,g-1|0),104)|0)+88>>2]=0;J[e+924|0]=1}if(b&8){P[(L[e+720>>2]+R((f+R(f,g-1|0)|0)-1|0,104)|0)+88>>2]=0;J[e+924|0]=1}if(h){L[8514]=L[8514]+1;ha[L[6799]](h)}ra(s);if((f|0)<=0){break a}b=0;while(1){i=R(b,f);a=0;d=b+1|0;b:{if((d|0)<(g|0)){j=R(d,f);while(1){c=a;h=a+i|0;a=a+1|0;c:{if((f|0)>(a|0)){n=a+i|0;Ha(e,h,n,0,0);o=c+j|0;Ha(e,h,o,0,0);if(b+c&1){c=a+j|0;pb(e,h,n,c,0);pb(e,h,c,o,0);if(!u){break c}Ha(e,h,c,0,0);break c}pb(e,o,h,n,0);pb(e,o,n,a+j|0,0);if(!u){break c}Ha(e,n,o,0,0);break c}Ha(e,h,c+j|0,0,0)}if((a|0)!=(f|0)){continue}break}break b}while(1){b=a+1|0;if((b|0)<(f|0)){Ha(e,a+i|0,b+i|0,0,0)}a=b;if((f|0)!=(a|0)){continue}break}}b=d;if((g|0)!=(b|0)){continue}break}}fa=k+48|0;return e|0}function LF(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;P[b+16>>2]=P[a+20>>2];P[b+20>>2]=P[a+24>>2];P[b+24>>2]=P[a+28>>2];P[b+28>>2]=P[a+32>>2];P[b>>2]=P[a+4>>2];P[b+4>>2]=P[a+8>>2];P[b+8>>2]=P[a+12>>2];P[b+12>>2]=P[a+16>>2];P[b+32>>2]=P[a+36>>2];P[b+36>>2]=P[a+40>>2];P[b+40>>2]=P[a+44>>2];P[b+44>>2]=P[a+48>>2];L[b+48>>2]=L[a+56>>2];L[b+52>>2]=M[a+60|0];d=L[a+88>>2];L[b+56>>2]=d;a:{if(!d){L[b+64>>2]=0;break a}d=ha[L[L[c>>2]+28>>2]](c,L[a+96>>2])|0;L[b+64>>2]=d;if(!d){break a}h=L[a+88>>2];i=ha[L[L[c>>2]+16>>2]](c,48,h)|0;b:{if((h|0)<=0){g=L[a+96>>2];break b}g=L[a+96>>2];d=L[i+8>>2];while(1){e=(f<<6)+g|0;P[d+16>>2]=P[e+16>>2];P[d+20>>2]=P[e+20>>2];P[d+24>>2]=P[e+24>>2];P[d+28>>2]=P[e+28>>2];P[d>>2]=P[e>>2];P[d+4>>2]=P[e+4>>2];P[d+8>>2]=P[e+8>>2];P[d+12>>2]=P[e+12>>2];L[d+32>>2]=L[e+32>>2];L[d+36>>2]=L[e+36>>2];L[d+40>>2]=L[e+40>>2];d=d+48|0;f=f+1|0;if((h|0)!=(f|0)){continue}break}}ha[L[L[c>>2]+20>>2]](c,i,4118,1497453121,g)}d=L[a+128>>2];L[b+60>>2]=d;c:{if(!d){L[b+68>>2]=0;break c}d=ha[L[L[c>>2]+28>>2]](c,L[a+136>>2])|0;L[b+68>>2]=d;if(!d){break c}f=0;h=L[a+128>>2];i=ha[L[L[c>>2]+16>>2]](c,16,h)|0;d:{if((h|0)<=0){g=L[a+136>>2];break d}g=L[a+136>>2];d=L[i+8>>2];while(1){e=(f<<4)+g|0;L[d+12>>2]=L[e+12>>2];K[d+6>>1]=N[e+6>>1];K[d+8>>1]=N[e+8>>1];K[d+10>>1]=N[e+10>>1];K[d>>1]=N[e>>1];K[d+2>>1]=N[e+2>>1];K[d+4>>1]=N[e+4>>1];d=d+16|0;f=f+1|0;if((h|0)!=(f|0)){continue}break}}ha[L[L[c>>2]+20>>2]](c,i,4095,1497453121,g)}L[b+76>>2]=L[a+144>>2];d=L[a+152>>2];L[b+80>>2]=d;if(!d){L[b+72>>2]=0;return 3637}d=b;b=ha[L[L[c>>2]+28>>2]](c,L[a+160>>2])|0;L[d+72>>2]=b;if(b){f=0;e=L[a+152>>2];g=ha[L[L[c>>2]+16>>2]](c,20,e)|0;e:{if((e|0)<=0){a=L[a+160>>2];break e}a=L[a+160>>2];d=L[g+8>>2];while(1){b=(f<<5)+a|0;K[d+14>>1]=N[b+6>>1];K[d+16>>1]=N[b+8>>1];K[d+18>>1]=N[b+10>>1];K[d+8>>1]=N[b>>1];K[d+10>>1]=N[b+2>>1];K[d+12>>1]=N[b+4>>1];L[d>>2]=L[b+12>>2];L[d+4>>2]=L[b+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,g,3745,1497453121,a)}return 3637}function an(a,b,c){var d=0,e=0,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=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=0,D=S(0),E=S(0),F=S(0);e=fa-160|0;fa=e;f=L[a+4>>2];d=L[f+12>>2];D=P[d+52>>2];E=P[d+56>>2];h=P[d+24>>2];i=P[d+20>>2];j=P[d+40>>2];k=P[d+36>>2];F=P[d+48>>2];l=P[d+8>>2];m=P[d>>2];n=P[d+4>>2];o=P[d+16>>2];p=P[d+32>>2];d=L[L[f+4>>2]+24>>2]+R(c,80)|0;q=P[d+32>>2];r=P[d>>2];s=P[d+16>>2];t=P[d+56>>2];u=P[d+52>>2];v=P[d+48>>2];w=P[d+36>>2];x=P[d+20>>2];y=P[d+4>>2];z=P[d+40>>2];A=P[d+24>>2];B=P[d+8>>2];f=0;L[e+156>>2]=0;L[e+140>>2]=0;L[e+124>>2]=0;P[e+136>>2]=S(z*j)+S(S(B*p)+S(k*A));P[e+132>>2]=S(w*j)+S(S(y*p)+S(k*x));P[e+120>>2]=S(z*h)+S(S(B*o)+S(i*A));P[e+116>>2]=S(w*h)+S(S(y*o)+S(i*x));P[e+152>>2]=E+S(S(t*j)+S(S(v*p)+S(k*u)));P[e+148>>2]=D+S(S(t*h)+S(S(v*o)+S(i*u)));L[e+108>>2]=0;P[e+128>>2]=S(q*j)+S(S(r*p)+S(k*s));P[e+112>>2]=S(q*h)+S(S(r*o)+S(i*s));P[e+96>>2]=S(q*l)+S(S(r*m)+S(n*s));P[e+104>>2]=S(z*l)+S(S(B*m)+S(n*A));P[e+100>>2]=S(w*l)+S(S(y*m)+S(n*x));P[e+144>>2]=F+S(S(t*l)+S(S(v*m)+S(n*u)));ha[L[L[b>>2]+8>>2]](b,e+96|0,e+80|0,e- -64|0);d=L[a+8>>2];g=L[d+4>>2];ha[L[L[g>>2]+8>>2]](g,L[d+12>>2],e+48|0,e+32|0);d=L[7542];a:{if(d){if(!(ha[d|0](L[L[a+8>>2]+4>>2],b)|0)){break a}}f=P[e+64>>2]>2]|P[e+80>>2]>P[e+32>>2]?f:1;d=0;if((P[e+72>>2]>2]|P[e+88>>2]>P[e+40>>2]?d:f)^1|P[e+68>>2]>2]|P[e+84>>2]>P[e+36>>2]){break a}d=L[a+4>>2];f=L[d+8>>2];L[e+24>>2]=-1;L[e+16>>2]=f;L[e+12>>2]=b;L[e+8>>2]=d;L[e+28>>2]=c;b=2;L[e+20>>2]=e+96;if(!L[L[a+24>>2]+(c<<2)>>2]){d=L[a+12>>2];d=ha[L[L[d>>2]+8>>2]](d,e+8|0,L[a+8>>2],L[a+28>>2])|0;L[L[a+24>>2]+(c<<2)>>2]=d;d=L[a+4>>2]}g=L[a+20>>2];f=L[g+8>>2];b:{if(L[f+8>>2]==L[d+8>>2]){C=g+8|0;break b}f=L[g+12>>2];b=3;C=g+12|0}d=e+8|0;L[C>>2]=d;ha[L[L[g>>2]+(b<<2)>>2]](g,-1,c);b=L[L[a+24>>2]+(c<<2)>>2];ha[L[L[b>>2]+8>>2]](b,d,L[a+8>>2],L[a+16>>2],L[a+20>>2]);b=L[a+20>>2];L[(L[L[b+8>>2]+8>>2]==L[L[a+4>>2]+8>>2]?8:12)+b>>2]=f}fa=e+160|0}function lv(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+8>>2];if(!M[31436]){J[31436]=1;L[7857]=17608;J[31432]=0}L[(a+3600|0)+72>>2]=31428;L[(a+3604|0)+72>>2]=31428;L[(a+3608|0)+72>>2]=31428;L[(a+3612|0)+72>>2]=31428;L[(a+3616|0)+72>>2]=31428;L[(a+3620|0)+72>>2]=31428;L[(a+3624|0)+72>>2]=31428;L[(a+3628|0)+72>>2]=31428;L[(a+3632|0)+72>>2]=31428;L[(a+3636|0)+72>>2]=31428;L[(a+3640|0)+72>>2]=31428;L[(a+3644|0)+72>>2]=31428;L[(a+3648|0)+72>>2]=31428;L[(a+3652|0)+72>>2]=31428;L[(a+3656|0)+72>>2]=31428;L[(a+3660|0)+72>>2]=31428;L[(a+3664|0)+72>>2]=31428;L[(a+3668|0)+72>>2]=31428;L[(a+3672|0)+72>>2]=31428;L[(a+3676|0)+72>>2]=31428;L[(a+3680|0)+72>>2]=31428;L[(a+3684|0)+72>>2]=31428;L[(a+3688|0)+72>>2]=31428;L[(a+3692|0)+72>>2]=31428;L[(a+3696|0)+72>>2]=31428;b=a+3700|0;L[b+72>>2]=31428;L[(a+3704|0)+72>>2]=31428;L[(a+3708|0)+72>>2]=31428;L[(a+3712|0)+72>>2]=31428;L[(a+3716|0)+72>>2]=31428;L[(a+3720|0)+72>>2]=31428;L[(a+3724|0)+72>>2]=31428;L[(a+3728|0)+72>>2]=31428;L[(a+3732|0)+72>>2]=31428;L[(a+3736|0)+72>>2]=31428;L[(a+3740|0)+72>>2]=31428;L[a+172>>2]=31428;L[a+316>>2]=31428;L[a+460>>2]=31428;L[a+604>>2]=31428;L[a+748>>2]=31428;L[a+892>>2]=31428;L[(a+964|0)+72>>2]=31428;L[(a+1108|0)+72>>2]=31428;L[(a+1252|0)+72>>2]=31428;L[(a+1396|0)+72>>2]=31428;L[(a+1540|0)+72>>2]=31428;L[(a+1684|0)+72>>2]=31428;L[(a+1828|0)+72>>2]=31428;L[(a+1972|0)+72>>2]=31428;L[(a+2116|0)+72>>2]=31428;L[(a+2260|0)+72>>2]=31428;L[(a+2404|0)+72>>2]=31428;L[(a+2548|0)+72>>2]=31428;L[(a+2692|0)+72>>2]=31428;L[(a+2836|0)+72>>2]=31428;L[(a+2980|0)+72>>2]=31428;L[(a+3124|0)+72>>2]=31428;L[(a+3268|0)+72>>2]=31428;L[(a+3412|0)+72>>2]=31428;L[(a+3556|0)+72>>2]=31428;L[b+72>>2]=31428;L[(a+3844|0)+72>>2]=31428;L[(a+3988|0)+72>>2]=31428;L[(a+4132|0)+72>>2]=31428;L[(a+4276|0)+72>>2]=31428;L[(a+4420|0)+72>>2]=31428;L[(a+4564|0)+72>>2]=31428;L[(a+4708|0)+72>>2]=31428;L[(a+4852|0)+72>>2]=31428;L[(a+4996|0)+72>>2]=31428;L[(a+5140|0)+72>>2]=31428;fa=c+16|0}function jF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=S(0);c=fa-144|0;fa=c;if(L[a+16>>2]>0){f=c- -64|0;while(1){g=R(h,80);d=g+L[a+24>>2]|0;e=L[d+12>>2];L[c+24>>2]=L[d+8>>2];L[c+28>>2]=e;e=L[d+4>>2];L[c+16>>2]=L[d>>2];L[c+20>>2]=e;e=L[d+28>>2];L[c+40>>2]=L[d+24>>2];L[c+44>>2]=e;e=L[d+20>>2];L[c+32>>2]=L[d+16>>2];L[c+36>>2]=e;e=L[d+44>>2];L[c+56>>2]=L[d+40>>2];L[c+60>>2]=e;e=L[d+36>>2];L[c+48>>2]=L[d+32>>2];L[c+52>>2]=e;e=L[d+60>>2];L[f+8>>2]=L[d+56>>2];L[f+12>>2]=e;e=L[d+52>>2];L[f>>2]=L[d+48>>2];L[f+4>>2]=e;d=L[d+64>>2];d=ha[L[L[d>>2]+28>>2]](d)|0;e=L[d+12>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=e;e=L[d+4>>2];L[c>>2]=L[d>>2];L[c+4>>2]=e;i=P[a+80>>2];j=P[b+4>>2];k=P[a+76>>2];l=P[b>>2];P[c+8>>2]=S(P[c+8>>2]*P[b+8>>2])/P[a+84>>2];L[c+12>>2]=0;P[c>>2]=S(l*P[c>>2])/k;P[c+4>>2]=S(j*P[c+4>>2])/i;d=L[(L[a+24>>2]+g|0)+64>>2];ha[L[L[d>>2]+24>>2]](d,c);i=P[a+76>>2];j=P[b>>2];k=P[a+80>>2];l=P[b+4>>2];m=P[a+84>>2];n=P[b+8>>2];L[c+76>>2]=0;P[c+72>>2]=S(n*P[c+72>>2])/m;P[c+68>>2]=S(l*P[c+68>>2])/k;P[c+64>>2]=S(j*P[c+64>>2])/i;e=L[c+20>>2];d=L[a+24>>2]+g|0;L[d>>2]=L[c+16>>2];L[d+4>>2]=e;e=L[c+28>>2];L[d+8>>2]=L[c+24>>2];L[d+12>>2]=e;e=L[c+44>>2];L[d+24>>2]=L[c+40>>2];L[d+28>>2]=e;e=L[c+36>>2];L[d+16>>2]=L[c+32>>2];L[d+20>>2]=e;e=L[c+60>>2];L[d+40>>2]=L[c+56>>2];L[d+44>>2]=e;e=L[c+52>>2];L[d+32>>2]=L[c+48>>2];L[d+36>>2]=e;e=L[f+12>>2];L[d+56>>2]=L[f+8>>2];L[d+60>>2]=e;e=L[f+4>>2];L[d+48>>2]=L[f>>2];L[d+52>>2]=e;if(L[a+64>>2]){d=L[(L[a+24>>2]+g|0)+64>>2];ha[L[L[d>>2]+8>>2]](d,c+16|0,c+128|0,c+112|0);d=L[c+140>>2];L[c+88>>2]=L[c+136>>2];L[c+92>>2]=d;d=L[c+132>>2];L[c+80>>2]=L[c+128>>2];L[c+84>>2]=d;d=L[c+124>>2];L[c+104>>2]=L[c+120>>2];L[c+108>>2]=d;d=L[c+116>>2];L[c+96>>2]=L[c+112>>2];L[c+100>>2]=d;Gc(L[a+64>>2],L[(L[a+24>>2]+g|0)+76>>2],c+80|0)}h=h+1|0;if((h|0)>2]){continue}break}}d=L[b+4>>2];L[a+76>>2]=L[b>>2];L[a+80>>2]=d;d=L[b+12>>2];L[a+84>>2]=L[b+8>>2];L[a+88>>2]=d;ha[L[L[a>>2]+68>>2]](a);fa=c+144|0}function cH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=S(d);var e=0,f=0,g=0,h=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=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);e=fa-192|0;fa=e;m=P[c+8>>2];n=S(S(P[b+8>>2]*d)+m);q=P[c+4>>2];o=S(S(P[b+4>>2]*d)+q);r=P[c>>2];p=S(S(P[b>>2]*d)+r);l=L[a+8>>2];f=L[l+8>>2];g=L[L[a+4>>2]+740>>2];s=(f|0)==(g|0);a:{if(!s){g=L[a+12>>2];h=L[g+8>>2];k=S(n-P[h+60>>2]);i=S(p-P[h+52>>2]);j=S(o-P[h+56>>2]);t=S(S(P[h+44>>2]*k)+S(S(P[h+12>>2]*i)+S(j*P[h+28>>2])));u=S(S(P[h+40>>2]*k)+S(S(P[h+8>>2]*i)+S(j*P[h+24>>2])));k=S(S(P[h+36>>2]*k)+S(S(P[h+4>>2]*i)+S(j*P[h+20>>2])));break a}k=S(n-P[g+60>>2]);i=S(p-P[g+52>>2]);j=S(o-P[g+56>>2]);t=S(S(P[g+44>>2]*k)+S(S(P[g+12>>2]*i)+S(j*P[g+28>>2])));u=S(S(P[g+40>>2]*k)+S(S(P[g+8>>2]*i)+S(j*P[g+24>>2])));k=S(S(P[g+36>>2]*k)+S(S(P[g+4>>2]*i)+S(j*P[g+20>>2])));g=L[a+12>>2];f=L[g+8>>2]}v=P[f+20>>2];w=P[f+36>>2];x=P[f+40>>2];y=P[f+8>>2];z=P[f+24>>2];i=P[f+44>>2];j=P[f+60>>2];A=P[f+12>>2];B=P[f+52>>2];C=P[f+28>>2];D=P[f+56>>2];E=P[f+4>>2];L[e+36>>2]=0;F=i;i=S(m-j);j=S(r-B);m=S(q-D);P[e+32>>2]=S(F*i)+S(S(A*j)+S(C*m));P[e+28>>2]=S(x*i)+S(S(y*j)+S(m*z));L[e+20>>2]=0;P[e+16>>2]=t;P[e+12>>2]=u;P[e+8>>2]=k;P[e+24>>2]=S(w*i)+S(S(E*j)+S(m*v));f=L[b+12>>2];L[e+80>>2]=L[b+8>>2];L[e+84>>2]=f;f=L[b>>2];b=L[b+4>>2];L[e+136>>2]=0;L[e+140>>2]=0;L[e+144>>2]=0;L[e+148>>2]=0;L[e+152>>2]=0;L[e+156>>2]=0;P[e+60>>2]=o;P[e- -64>>2]=n;L[e+68>>2]=0;L[e+72>>2]=f;L[e+76>>2]=b;L[e+128>>2]=0;L[e+132>>2]=0;J[e+124|0]=0;L[e+120>>2]=0;L[e+100>>2]=0;L[e+92>>2]=0;L[e+96>>2]=0;P[e+88>>2]=d;P[e+56>>2]=p;b=L[c+12>>2];L[e+48>>2]=L[c+8>>2];L[e+52>>2]=b;b=L[c+4>>2];L[e+40>>2]=L[c>>2];L[e+44>>2]=b;b:{if(!s){h=a+16|0;f=a+20|0;b=l;l=a+28|0;c=a+24|0;break b}h=a+20|0;f=a+16|0;b=g;g=l;l=a+24|0;c=a+28|0}f=L[f>>2];h=L[h>>2];l=L[l>>2];c=L[c>>2];L[e+116>>2]=c;L[e+112>>2]=l;L[e+108>>2]=h;L[e+104>>2]=f;a=L[a+32>>2];S(ha[L[L[a>>2]+12>>2]](a,e+8|0,g,f,l,b,h,c));fa=e+192|0}function Sl(a,b,c){var d=S(0),e=0,f=S(0),g=0,h=0,i=0,j=0,k=S(0),l=0,m=S(0),n=S(0),o=S(0),p=0,q=S(0),r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;k=P[a- -64>>2];q=P[a+48>>2];m=P[a+32>>2];d=P[b+24>>2];d=dq?q:d)-m))+S(.5));a:{if(d=S(0)){w=~~d>>>0;break a}w=0}o=P[a+60>>2];f=P[a+44>>2];n=P[a+28>>2];d=P[b+20>>2];d=df?f:d)-n))+S(.5));b:{if(d=S(0)){x=~~d>>>0;break b}x=0}d=P[b+8>>2];d=dq?q:d)-m)*k)+S(.5));c:{if(d=S(0)){s=~~d>>>0;break c}s=0}d=P[b+4>>2];d=df?f:d)-n)*o)+S(.5));d:{if(d=S(0)){y=~~d>>>0;break d}y=0}o=P[a+56>>2];k=P[a+40>>2];f=P[a+24>>2];d=P[b+16>>2];d=dk?k:d)-f))+S(.5));e:{if(d=S(0)){z=~~d>>>0;break e}z=0}d=P[b>>2];d=dk?k:d)-f)*o)+S(.5));f:{if(d=S(0)){A=~~d>>>0;break f}A=0}B=L[a>>2];if((B|0)>0){b=0;while(1){g:{h:{i:{j:{l=b<<4;e=l+L[a+16>>2]|0;if(!(N[e>>1]>z>>>0|N[e+6>>1]>>0|(N[e+8>>1]>>0|N[e+2>>1]>x>>>0))){if(N[e+4>>1]<=w>>>0){break j}}h=L[e+12>>2]>=0;i=0;break i}t=L[e+12>>2];h=(t|0)>=0;e=N[e+10>>1];i=e>>>0>=s>>>0;if((t|0)<0|e>>>0>>0){break i}g=L[c+4>>2];k:{if((g|0)!=L[c+8>>2]){break k}r=g?g<<1:1;if((r|0)<=(g|0)){break k}l:{if(!r){h=0;break l}L[8513]=L[8513]+1;h=ha[L[6798]](r<<2,16)|0;g=L[c+4>>2]}j=L[c+12>>2];m:{n:{if((g|0)>0){u=0;i=0;if(g>>>0>=4){l=g&-4;v=0;while(1){p=i<<2;L[p+h>>2]=L[j+p>>2];e=p|4;L[e+h>>2]=L[e+j>>2];e=p|8;L[e+h>>2]=L[e+j>>2];e=p|12;L[e+h>>2]=L[e+j>>2];i=i+4|0;v=v+4|0;if((l|0)!=(v|0)){continue}break}}l=g&3;if(!l){break n}while(1){e=i<<2;L[e+h>>2]=L[e+j>>2];i=i+1|0;u=u+1|0;if((l|0)!=(u|0)){continue}break}break n}if(!j){break m}}if(j?M[c+16|0]:0){L[8514]=L[8514]+1;ha[L[6799]](j)}g=L[c+4>>2]}L[c+12>>2]=h;J[c+16|0]=1;L[c+8>>2]=r}L[L[c+12>>2]+(g<<2)>>2]=t;L[c+4>>2]=L[c+4>>2]+1;break h}if(h|i){break h}b=b-L[(l+L[a+16>>2]|0)+12>>2]|0;break g}b=b+1|0}if((B|0)>(b|0)){continue}break}}}function qn(a,b,c,d){var e=0,f=0,g=S(0),h=S(0),i=S(0),j=0,k=S(0),l=S(0),m=0,n=0,o=S(0),p=0,q=0,r=S(0),s=S(0),t=0,u=0,v=0,w=0,x=S(0),y=0,z=0,A=0,B=0,C=0,D=0,E=0;f=fa-32|0;fa=f;if(a){g=P[b+8>>2];h=P[c+8>>2];o=P[b>>2];k=P[c>>2];l=P[b+4>>2];i=P[c+4>>2];L[8513]=L[8513]+1;c=ha[L[6798]](512,16)|0;pa(c+4|0,0,508);L[c>>2]=a;g=S(h-g);h=S(k-o);o=S(i-l);k=S(S(1)/S(_(S(S(g*g)+S(S(h*h)+S(o*o))))));l=S(g*k);i=S(l*g);g=S(h*k);r=S(g*h);h=S(o*k);x=S(i+S(r+S(o*h)));o=l==S(0)?S(0xde0b6b000000000):S(S(1)/l);a=o>2];m=L[n+4>>2];L[f>>2]=L[n>>2];L[f+4>>2]=m;m=L[n+12>>2];L[f+8>>2]=L[n+8>>2];L[f+12>>2]=m;m=L[n+28>>2];L[f+24>>2]=L[n+24>>2];L[f+28>>2]=m;m=L[n+20>>2];L[f+16>>2]=L[n+16>>2];L[f+20>>2]=m;r=P[b>>2];k=S(g*S(P[C>>2]-r));i=P[b+4>>2];l=S(h*S(P[B>>2]-i));a:{b:{if(k>l){break b}i=S(h*S(P[z>>2]-i));r=S(g*S(P[D>>2]-r));if(i>r){break b}k=k>2];i=S(o*S(P[A>>2]-s));if(k>i){break b}s=S(o*S(P[y>>2]-s));l=ll|!((ki?i:l)>S(0))){break b}if(L[n+40>>2]){c:{if((e|0)<=(q|0)){e=c;break c}m=p<<1;d:{if((m|0)<=(p|0)){e=c;break d}e:{if((m|0)<=(j|0)){e=c;break e}f:{if(!p){e=0;break f}L[8513]=L[8513]+1;e=ha[L[6798]](p<<3,16)|0;if((p|0)<=0){break f}v=0;q=0;if(p>>>0>=4){E=p&-4;t=0;while(1){j=q<<2;L[j+e>>2]=L[c+j>>2];u=j|4;L[u+e>>2]=L[c+u>>2];u=j|8;L[u+e>>2]=L[c+u>>2];j=j|12;L[j+e>>2]=L[c+j>>2];q=q+4|0;t=t+4|0;if((E|0)!=(t|0)){continue}break}}j=p&3;if(!j){break f}while(1){t=q<<2;L[t+e>>2]=L[c+t>>2];q=q+1|0;v=v+1|0;if((j|0)!=(v|0)){continue}break}}if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}j=m}c=p<<2;pa(c+e|0,0,c)}q=m-2|0;c=e;p=m}L[e+w>>2]=L[n+36>>2];L[(a<<2)+e>>2]=L[n+40>>2];a=a+1|0;break a}ha[L[L[d>>2]+12>>2]](d,n)}a=e}if(a){continue}break}if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}}fa=f+32|0}function Dp(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;g=fa-16|0;fa=g;L[g+12>>2]=a;L[g+8>>2]=b;a=L[g+8>>2];h=fa-16|0;fa=h;L[h+12>>2]=L[g+12>>2]+748;L[h+8>>2]=a;a=L[h+8>>2];b=fa+-64|0;fa=b;L[b+60>>2]=L[h+12>>2];L[b+56>>2]=a;k=L[b+60>>2];a=fa-16|0;L[a+12>>2]=L[b+56>>2];L[b+52>>2]=L[L[a+12>>2]+4>>2];d=L[b+52>>2];L[b+48>>2]=0;L[b+40>>2]=0;L[b+44>>2]=0;L[b+32>>2]=0;L[b+36>>2]=0;L[b+24>>2]=0;L[b+28>>2]=0;L[b+16>>2]=0;L[b+20>>2]=0;L[b+8>>2]=0;L[b+12>>2]=0;fa=a;e=b+8|0;L[a+12>>2]=e;c=L[a+12>>2];Bh(c);L[(fa-16|0)+12>>2]=c+20;fa=a+16|0;a=fa-32|0;fa=a;L[a+28>>2]=k;L[a+24>>2]=d;L[a+20>>2]=e;d=fa-16|0;i=L[a+28>>2];L[d+12>>2]=i;L[a+16>>2]=L[L[d+12>>2]+4>>2];a:{if(L[a+24>>2]>2]){L[a+12>>2]=L[a+24>>2];while(1){if(L[a+12>>2]>2]){L[a+12>>2]=L[a+12>>2]+1;continue}break}break a}d=L[a+24>>2];e=fa-16|0;L[e+12>>2]=i;if(L[L[e+12>>2]+4>>2]<(d|0)){e=L[a+24>>2];d=fa-16|0;fa=d;L[d+12>>2]=i;L[d+8>>2]=e;c=fa-16|0;e=L[d+12>>2];L[c+12>>2]=e;if(L[L[c+12>>2]+8>>2]>2]){f=L[d+8>>2];c=fa-16|0;fa=c;L[c+8>>2]=e;L[c+4>>2]=f;j=L[c+8>>2];b:{if(L[c+4>>2]){l=L[c+4>>2];f=fa-16|0;fa=f;L[f+12>>2]=j;L[f+8>>2]=l;L[f+4>>2]=0;j=R(L[f+8>>2],44);L[8513]=L[8513]+1;j=ha[L[6798]](j,16)|0;fa=f+16|0;L[c+12>>2]=j;break b}L[c+12>>2]=0}fa=c+16|0;L[d+4>>2]=L[c+12>>2];c=fa-16|0;L[c+12>>2]=e;Ah(e,L[L[c+12>>2]+4>>2],L[d+4>>2]);c=fa-16|0;L[c+12>>2]=e;Db(e,L[L[c+12>>2]+4>>2]);jb(e);J[e+16|0]=1;L[e+12>>2]=L[d+4>>2];L[e+8>>2]=L[d+8>>2]}fa=d+16|0}L[a+8>>2]=L[a+16>>2];while(1){if(L[a+8>>2]>2]){e=L[a+20>>2];c=L[e+4>>2];d=L[i+12>>2]+R(L[a+8>>2],44)|0;L[d>>2]=L[e>>2];L[d+4>>2]=c;L[d+40>>2]=L[e+40>>2];c=L[e+36>>2];L[d+32>>2]=L[e+32>>2];L[d+36>>2]=c;c=L[e+28>>2];L[d+24>>2]=L[e+24>>2];L[d+28>>2]=c;c=L[e+20>>2];L[d+16>>2]=L[e+16>>2];L[d+20>>2]=c;c=L[e+12>>2];L[d+8>>2]=L[e+8>>2];L[d+12>>2]=c;L[a+8>>2]=L[a+8>>2]+1;continue}break}}L[i+4>>2]=L[a+24>>2];fa=a+32|0;Ah(L[b+56>>2],L[b+52>>2],L[k+12>>2]);fa=b- -64|0;fa=h+16|0;fa=g+16|0}function nF(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;f=fa-80|0;fa=f;L[a+68>>2]=L[a+68>>2]+1;d=L[a+16>>2];if((d|0)>0){g=f- -64|0;h=f+48|0;i=f+32|0;j=f+16|0;l=d;while(1){k=L[a+24>>2];m=l-1|0;n=R(m,80);c=k+n|0;if(L[c+64>>2]==(b|0)){L[a+68>>2]=L[a+68>>2]+1;e=L[a+64>>2];if(e){fc(e,L[c+76>>2]);k=L[a+24>>2];d=L[a+16>>2]}c=k+n|0;e=c+8|0;o=L[e+4>>2];L[f+8>>2]=L[e>>2];L[f+12>>2]=o;e=L[c+4>>2];L[f>>2]=L[c>>2];L[f+4>>2]=e;e=L[c+28>>2];L[j+8>>2]=L[c+24>>2];L[j+12>>2]=e;e=L[c+20>>2];L[j>>2]=L[c+16>>2];L[j+4>>2]=e;e=L[c+44>>2];L[i+8>>2]=L[c+40>>2];L[i+12>>2]=e;e=L[c+36>>2];L[i>>2]=L[c+32>>2];L[i+4>>2]=e;e=L[c+60>>2];L[h+8>>2]=L[c+56>>2];L[h+12>>2]=e;e=L[c+52>>2];L[h>>2]=L[c+48>>2];L[h+4>>2]=e;e=L[c+76>>2];L[g+8>>2]=L[c+72>>2];L[g+12>>2]=e;e=L[c+68>>2];L[g>>2]=L[c+64>>2];L[g+4>>2]=e;e=k;k=R(d,80)-80|0;d=e+k|0;e=L[d+4>>2];L[c>>2]=L[d>>2];L[c+4>>2]=e;e=L[d+12>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=e;e=L[d+20>>2];L[c+16>>2]=L[d+16>>2];L[c+20>>2]=e;e=L[d+28>>2];L[c+24>>2]=L[d+24>>2];L[c+28>>2]=e;e=L[d+36>>2];L[c+32>>2]=L[d+32>>2];L[c+36>>2]=e;e=L[d+44>>2];L[c+40>>2]=L[d+40>>2];L[c+44>>2]=e;e=L[d+60>>2];L[c+56>>2]=L[d+56>>2];L[c+60>>2]=e;e=L[d+52>>2];L[c+48>>2]=L[d+48>>2];L[c+52>>2]=e;e=L[d+68>>2];L[c+64>>2]=L[d+64>>2];L[c+68>>2]=e;e=L[d+76>>2];L[c+72>>2]=L[d+72>>2];L[c+76>>2]=e;d=L[f+4>>2];c=k+L[a+24>>2]|0;L[c>>2]=L[f>>2];L[c+4>>2]=d;d=L[f+12>>2];L[c+8>>2]=L[f+8>>2];L[c+12>>2]=d;d=L[j+4>>2];L[c+16>>2]=L[j>>2];L[c+20>>2]=d;d=L[j+12>>2];L[c+24>>2]=L[j+8>>2];L[c+28>>2]=d;d=L[i+12>>2];L[c+40>>2]=L[i+8>>2];L[c+44>>2]=d;d=L[i+4>>2];L[c+32>>2]=L[i>>2];L[c+36>>2]=d;d=L[h+4>>2];L[c+48>>2]=L[h>>2];L[c+52>>2]=d;d=L[h+12>>2];L[c+56>>2]=L[h+8>>2];L[c+60>>2]=d;d=L[g+4>>2];L[c+64>>2]=L[g>>2];L[c+68>>2]=d;d=L[g+12>>2];L[c+72>>2]=L[g+8>>2];L[c+76>>2]=d;if(L[a+64>>2]){L[L[(L[a+24>>2]+n|0)+76>>2]+36>>2]=m}d=L[a+16>>2]-1|0;L[a+16>>2]=d}c=l>>>0>1;l=m;if(c){continue}break}}ha[L[L[a>>2]+68>>2]](a);fa=f+80|0}function PE(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=0,m=S(0),n=S(0),o=0,p=S(0),q=S(0),r=0,s=S(0),t=S(0),u=S(0),v=0,w=0,x=0;a:{if((d|0)<=0){break a}if(d>>>0>=8){e=d&-8;while(1){f=g<<4;L[(f+c|0)+12>>2]=-581039253;L[((f|16)+c|0)+12>>2]=-581039253;L[((f|32)+c|0)+12>>2]=-581039253;L[((f|48)+c|0)+12>>2]=-581039253;L[((f|64)+c|0)+12>>2]=-581039253;L[((f|80)+c|0)+12>>2]=-581039253;L[((f|96)+c|0)+12>>2]=-581039253;L[((f|112)+c|0)+12>>2]=-581039253;g=g+8|0;i=i+8|0;if((e|0)!=(i|0)){continue}break}}e=d&7;if(e){while(1){L[((g<<4)+c|0)+12>>2]=-581039253;g=g+1|0;h=h+1|0;if((e|0)!=(h|0)){continue}break}}if((d|0)<=0){break a}i=0;if(L[a+96>>2]>0){while(1){o=i<<4;h=L[a+96>>2];b:{if((h|0)>0){e=b+o|0;s=P[a+20>>2];p=S(P[e+8>>2]*s);t=P[a+16>>2];q=S(P[e+4>>2]*t);u=P[a+12>>2];m=S(P[e>>2]*u);w=h&1;e=L[a+104>>2];c:{if((h|0)==1){g=0;h=-1;k=S(-34028234663852886e22);break c}x=h&-2;g=0;h=-1;k=S(-34028234663852886e22);r=0;while(1){f=e+(g<<4)|0;j=S(S(P[f+8>>2]*p)+S(S(P[f>>2]*m)+S(q*P[f+4>>2])));v=j>k;f=g|1;l=e+(f<<4)|0;n=S(S(P[l+8>>2]*p)+S(S(P[l>>2]*m)+S(q*P[l+4>>2])));j=v?j:k;l=n>j;k=l?n:j;h=l?f:v?g:h;g=g+2|0;r=r+2|0;if((x|0)!=(r|0)){continue}break}}if(w){f=e+(g<<4)|0;j=S(S(P[f+8>>2]*p)+S(S(P[f>>2]*m)+S(q*P[f+4>>2])));f=j>k;k=f?j:k;h=f?g:h}e=(h<<4)+e|0;m=P[e>>2];n=P[e+4>>2];j=P[e+8>>2];e=c+o|0;P[e+12>>2]=k;P[e+8>>2]=j*s;P[e+4>>2]=n*t;P[e>>2]=u*m;break b}L[(c+o|0)+12>>2]=-581039253}i=i+1|0;if((i|0)!=(d|0)){continue}break a}}h=0;g=0;if(d>>>0>=8){a=d&-8;while(1){b=g<<4;L[(b+c|0)+12>>2]=-581039253;L[((b|16)+c|0)+12>>2]=-581039253;L[((b|32)+c|0)+12>>2]=-581039253;L[((b|48)+c|0)+12>>2]=-581039253;L[((b|64)+c|0)+12>>2]=-581039253;L[((b|80)+c|0)+12>>2]=-581039253;L[((b|96)+c|0)+12>>2]=-581039253;L[((b|112)+c|0)+12>>2]=-581039253;g=g+8|0;i=i+8|0;if((a|0)!=(i|0)){continue}break}}a=d&7;if(!a){break a}while(1){L[((g<<4)+c|0)+12>>2]=-581039253;g=g+1|0;h=h+1|0;if((a|0)!=(h|0)){continue}break}}}function _p(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=S(e);var f=0,g=0,h=0,i=0,j=0,k=S(0),l=0,m=0,n=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=S(0),A=S(0),B=S(0),C=0,D=0,E=S(0);f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;J[f+19|0]=d;P[f+12>>2]=e;c=J[f+19|0]&1;E=P[f+12>>2];h=fa-16|0;fa=h;a=L[f+28>>2];s=L[f+24>>2];b=L[a+720>>2]+R(s,104)|0;e=P[b+16>>2];o=P[b+12>>2];p=P[b+8>>2];b=L[f+20>>2];t=P[b+20>>2];u=P[b+36>>2];v=P[b+40>>2];w=P[b+8>>2];x=P[b+24>>2];q=P[b+60>>2];y=P[b+44>>2];z=P[b+12>>2];k=P[b+52>>2];r=P[b+56>>2];A=P[b+28>>2];B=P[b+4>>2];L[h+12>>2]=0;k=S(-k);P[h+8>>2]=S(S(S(z*k)-S(A*r))-S(y*q))+S(S(e*y)+S(S(p*z)+S(A*o)));P[h+4>>2]=S(S(S(w*k)-S(x*r))-S(v*q))+S(S(e*v)+S(S(p*w)+S(x*o)));P[h>>2]=S(S(S(B*k)-S(t*r))-S(u*q))+S(S(e*u)+S(S(p*B)+S(t*o)));i=fa-96|0;fa=i;a:{if(!c){break a}c=L[a+268>>2];b:{if((c|0)<=0){break b}j=L[a+276>>2];d=0;while(1){if((b|0)!=L[j+(d<<2)>>2]){d=d+1|0;if((d|0)!=(c|0)){continue}break b}break}if((c|0)!=(d|0)){break a}}c:{if(L[a+272>>2]!=(c|0)){break c}m=c?c<<1:1;if((m|0)<=(c|0)){break c}d:{if(!m){j=0;break d}L[8513]=L[8513]+1;j=ha[L[6798]](m<<2,16)|0;c=L[a+268>>2]}e:{if((c|0)<=0){break e}d=0;if(c>>>0>=4){n=c&-4;while(1){g=d<<2;L[g+j>>2]=L[g+L[a+276>>2]>>2];l=g|4;L[l+j>>2]=L[l+L[a+276>>2]>>2];l=g|8;L[l+j>>2]=L[l+L[a+276>>2]>>2];g=g|12;L[g+j>>2]=L[g+L[a+276>>2]>>2];d=d+4|0;C=C+4|0;if((n|0)!=(C|0)){continue}break}}g=c&3;if(!g){break e}while(1){n=d<<2;L[n+j>>2]=L[n+L[a+276>>2]>>2];d=d+1|0;D=D+1|0;if((g|0)!=(D|0)){continue}break}}d=L[a+276>>2];if(!(!d|!M[a+280|0])){if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}c=L[a+268>>2]}L[a+276>>2]=j;J[a+280|0]=1;L[a+272>>2]=m}L[L[a+276>>2]+(c<<2)>>2]=b;L[a+268>>2]=c+1}c=L[a+720>>2];L[i+20>>2]=b;b=c+R(s,104)|0;L[i>>2]=b;c=L[h+12>>2];L[i+12>>2]=L[h+8>>2];L[i+16>>2]=c;c=L[h+4>>2];L[i+4>>2]=L[h>>2];L[i+8>>2]=c;J[b+100|0]=M[b+100|0]|1;P[i+24>>2]=E;ki(a+788|0,i);fa=i+96|0;fa=h+16|0;fa=f+32|0}function Fm(a,b,c,d,e,f){var g=0,h=0,i=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=S(0),o=S(0),p=S(0),q=0,r=S(0),s=S(0),t=0,u=S(0),v=S(0),w=S(0),x=0,y=0,z=S(0),A=S(0),B=S(0),C=0,D=0,E=0,F=0,G=0,H=0;g=fa-32|0;fa=g;if(L[a+56>>2]>0){n=P[d+8>>2];o=P[c+8>>2];j=S(n-o);p=P[d>>2];l=P[c>>2];k=S(p-l);m=P[d+4>>2];i=P[c+4>>2];r=S(m-i);s=S(S(1)/S(_(S(S(j*j)+S(S(k*k)+S(r*r))))));u=S(j*s);v=S(u*j);j=S(k*s);w=S(j*k);k=S(r*s);r=S(v+S(w+S(r*k)));s=S((n>o?n:o)+P[f+8>>2]);v=S((i>2]);w=S((l>2]);z=S((n>2]);A=S((i>m?m:i)+P[e+4>>2]);B=S((l>p?p:l)+P[e>>2]);d=L[a+96>>2];n=u==S(0)?S(0xde0b6b000000000):S(S(1)/u);h=n>2];L[g>>2]=L[d>>2];L[g+4>>2]=h;h=L[d+12>>2];L[g+8>>2]=L[d+8>>2];L[g+12>>2]=h;h=L[d+28>>2];L[g+24>>2]=L[d+24>>2];L[g+28>>2]=h;h=L[d+20>>2];L[g+16>>2]=L[d+16>>2];L[g+20>>2]=h;P[g>>2]=P[g>>2]-P[f>>2];P[g+4>>2]=P[g+4>>2]-P[f+4>>2];P[g+8>>2]=P[g+8>>2]-P[f+8>>2];P[g+16>>2]=P[g+16>>2]-P[e>>2];P[g+20>>2]=P[g+20>>2]-P[e+4>>2];P[g+24>>2]=P[g+24>>2]-P[e+8>>2];h=0;a:{if(P[d+16>>2]>2]>w){break a}h=1}q=0;b:{c:{d:{e:{f:{if((P[d+24>>2]>2]?q:h)^1|P[d+4>>2]>v|P[d+20>>2]>2];l=S(p*S(P[G>>2]-j));i=P[c+4>>2];m=S(o*S(P[F>>2]-i));if(l>m){break f}i=S(o*S(P[D>>2]-i));j=S(p*S(P[H>>2]-j));if(i>j){break f}l=i>l?i:l;k=P[c+8>>2];i=S(n*S(P[E>>2]-k));if(l>i){break f}k=S(n*S(P[C>>2]-k));m=j>m?m:j;if(k>m){break f}y=L[d+32>>2];q=(y|0)==-1;h=r>(k>l?k:l)&(iS(0);if(!h|(y|0)!=-1){break e}ha[L[L[b>>2]+8>>2]](b,L[d+36>>2],L[d+40>>2]);break d}q=L[d+32>>2]==-1;h=0}if(h){break d}if(!q){break c}}t=t+1|0;d=d- -64|0;break b}h=L[d+32>>2];t=h+t|0;d=(h<<6)+d|0}x=x+1|0;if(L[a+56>>2]>(t|0)){continue}break}}if(L[7548]<(x|0)){L[7548]=x}fa=g+32|0}function Ma(a,b){var c=0,d=S(0),e=0,f=S(0),g=0;c=fa+-64|0;fa=c;L[c+60>>2]=a;L[c+56>>2]=b;a=fa-16|0;b=L[c+60>>2];L[a+12>>2]=b;d=P[L[a+12>>2]>>2];L[a+12>>2]=b+16;f=P[L[a+12>>2]+4>>2];L[a+12>>2]=b+32;P[c+52>>2]=S(d+f)+P[L[a+12>>2]+8>>2];a:{if(P[c+52>>2]>S(0)){a=fa-16|0;P[a+12>>2]=P[c+52>>2]+S(1);P[c+28>>2]=_(P[a+12>>2]);P[c+44>>2]=P[c+28>>2]*S(.5);P[c+28>>2]=S(.5)/P[c+28>>2];e=b+32|0;L[a+12>>2]=e;d=P[L[a+12>>2]+4>>2];g=b+16|0;L[a+12>>2]=g;P[c+32>>2]=S(d-P[L[a+12>>2]+8>>2])*P[c+28>>2];L[a+12>>2]=b;d=P[L[a+12>>2]+8>>2];L[a+12>>2]=e;P[c+36>>2]=S(d-P[L[a+12>>2]>>2])*P[c+28>>2];L[a+12>>2]=g;d=P[L[a+12>>2]>>2];L[a+12>>2]=b;P[c+40>>2]=S(d-P[L[a+12>>2]+4>>2])*P[c+28>>2];break a}a=fa-16|0;L[a+12>>2]=b;d=P[L[a+12>>2]>>2];L[a+12>>2]=b+16;b:{if(P[L[a+12>>2]+4>>2]>d){a=fa-16|0;L[a+12>>2]=b+16;d=P[L[a+12>>2]+4>>2];L[a+12>>2]=b+32;a=P[L[a+12>>2]+8>>2]>d?2:1;break b}a=fa-16|0;L[a+12>>2]=b;d=P[L[a+12>>2]>>2];L[a+12>>2]=b+32;a=P[L[a+12>>2]+8>>2]>d?2:0}L[c+24>>2]=a;L[c+20>>2]=(L[c+24>>2]+1|0)%3;L[c+16>>2]=(L[c+24>>2]+2|0)%3;a=fa-16|0;L[a+12>>2]=b+(L[c+24>>2]<<4);d=P[L[a+12>>2]+(L[c+24>>2]<<2)>>2];L[a+12>>2]=b+(L[c+20>>2]<<4);f=P[L[a+12>>2]+(L[c+20>>2]<<2)>>2];L[a+12>>2]=b+(L[c+16>>2]<<4);P[a+12>>2]=S(S(d-f)-P[L[a+12>>2]+(L[c+16>>2]<<2)>>2])+S(1);P[c+12>>2]=_(P[a+12>>2]);e=c+32|0;P[e+(L[c+24>>2]<<2)>>2]=P[c+12>>2]*S(.5);P[c+12>>2]=S(.5)/P[c+12>>2];L[a+12>>2]=b+(L[c+16>>2]<<4);d=P[L[a+12>>2]+(L[c+20>>2]<<2)>>2];L[a+12>>2]=b+(L[c+20>>2]<<4);P[c+44>>2]=S(d-P[L[a+12>>2]+(L[c+16>>2]<<2)>>2])*P[c+12>>2];L[a+12>>2]=b+(L[c+20>>2]<<4);d=P[L[a+12>>2]+(L[c+24>>2]<<2)>>2];L[a+12>>2]=b+(L[c+24>>2]<<4);P[e+(L[c+20>>2]<<2)>>2]=S(d+P[L[a+12>>2]+(L[c+20>>2]<<2)>>2])*P[c+12>>2];L[a+12>>2]=b+(L[c+16>>2]<<4);d=P[L[a+12>>2]+(L[c+24>>2]<<2)>>2];L[a+12>>2]=b+(L[c+24>>2]<<4);P[e+(L[c+16>>2]<<2)>>2]=S(d+P[L[a+12>>2]+(L[c+16>>2]<<2)>>2])*P[c+12>>2]}a=c+32|0;vc(L[c+56>>2],a,a+4|0,a+8|0,a+12|0);fa=c- -64|0}function gg(a,b,c){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;a:{if(!a|!b){break a}L[8513]=L[8513]+1;d=ha[L[6798]](1024,16)|0;L[d+4>>2]=b;L[d>>2]=a;n=124;i=128;j=128;l=1;while(1){m=l;l=m-1|0;o=l<<3;a=o+d|0;f=L[a+4>>2];e=L[a>>2];if((l|0)>(n|0)){p=i<<1;b:{if((p|0)<=(i|0)){b=d;break b}if((j|0)>=(p|0)){b=d;break b}c:{if(!i){b=0;break c}L[8513]=L[8513]+1;b=ha[L[6798]](i<<4,16)|0;if((i|0)<=0){break c}n=0;a=0;if(i>>>0>=4){r=i&-4;j=0;while(1){h=a<<3;g=h+b|0;k=d+h|0;q=L[k+4>>2];L[g>>2]=L[k>>2];L[g+4>>2]=q;g=h|8;k=g+b|0;g=d+g|0;q=L[g+4>>2];L[k>>2]=L[g>>2];L[k+4>>2]=q;g=h|16;k=g+b|0;g=d+g|0;q=L[g+4>>2];L[k>>2]=L[g>>2];L[k+4>>2]=q;h=h|24;g=h+b|0;h=d+h|0;k=L[h+4>>2];L[g>>2]=L[h>>2];L[g+4>>2]=k;a=a+4|0;j=j+4|0;if((r|0)!=(j|0)){continue}break}}i=i&3;if(!i){break c}while(1){j=a<<3;h=j+b|0;j=d+j|0;r=L[j+4>>2];L[h>>2]=L[j>>2];L[h+4>>2]=r;a=a+1|0;n=n+1|0;if((i|0)!=(n|0)){continue}break}}if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}j=p}n=p-4|0;i=p;d=b}d:{if((e|0)==(f|0)){if(!L[e+40>>2]){break d}a=d+o|0;b=L[e+36>>2];L[a+4>>2]=b;L[a>>2]=b;a=(m<<3)+d|0;b=L[e+40>>2];L[a+4>>2]=b;L[a>>2]=b;b=L[e+40>>2];L[a+8>>2]=L[e+36>>2];L[a+12>>2]=b;l=m+2|0;break d}if(!(P[e>>2]<=P[f+16>>2])|!(P[e+16>>2]>=P[f>>2])|(!(P[e+4>>2]<=P[f+20>>2])|!(P[e+20>>2]>=P[f+4>>2]))){break d}if(!(P[e+8>>2]<=P[f+24>>2])|!(P[e+24>>2]>=P[f+8>>2])){break d}a=L[f+40>>2];if(L[e+40>>2]){b=L[e+36>>2];if(a){a=d+o|0;L[a+4>>2]=L[f+36>>2];L[a>>2]=b;b=L[e+40>>2];a=(m<<3)+d|0;L[a+4>>2]=L[f+36>>2];L[a>>2]=b;b=L[e+36>>2];L[a+12>>2]=L[f+40>>2];L[a+8>>2]=b;b=L[e+40>>2];L[a+20>>2]=L[f+40>>2];L[a+16>>2]=b;l=m+3|0;break d}a=d+o|0;L[a+4>>2]=f;L[a>>2]=b;a=L[e+40>>2];b=(m<<3)+d|0;L[b+4>>2]=f;L[b>>2]=a;l=m+1|0;break d}if(a){a=d+o|0;L[a+4>>2]=L[f+36>>2];L[a>>2]=e;a=(m<<3)+d|0;L[a+4>>2]=L[f+40>>2];L[a>>2]=e;l=m+1|0;break d}ha[L[L[c>>2]+8>>2]](c,e,f)}if(l){continue}break}if(!d){break a}if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}}}function Xo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=S(0),h=0;e=fa-256|0;fa=e;L[e+252>>2]=a;L[e+248>>2]=b;L[e+244>>2]=c;L[e+240>>2]=d;d=L[e+252>>2];a=e+208|0;La(a,L[e+244>>2],L[e+248>>2]);P[e+204>>2]=.5;Ga(e+224|0,a,e+204|0);a=e+172|0;ta(a,L[e+244>>2],L[e+248>>2]);P[e+168>>2]=.5;Ga(e+188|0,a,e+168|0);P[e+140>>2]=1;P[e+136>>2]=1;P[e+132>>2]=1;la(e+144|0,e+140|0,e+136|0,e+132|0);a=fa-16|0;L[a+12>>2]=e+112;L[a+12>>2]=e+96;L[e+164>>2]=0;while(1){if(L[e+164>>2]<4){L[e+160>>2]=0;while(1){if(L[e+160>>2]<3){a=fa-16|0;b=e+144|0;L[a+12>>2]=b;g=P[L[a+12>>2]>>2];c=e+224|0;L[a+12>>2]=c;P[e+76>>2]=g*P[L[a+12>>2]>>2];L[a+12>>2]=b;g=P[L[a+12>>2]+4>>2];L[a+12>>2]=c;P[e+72>>2]=g*P[L[a+12>>2]+4>>2];L[a+12>>2]=b;g=P[L[a+12>>2]+8>>2];L[a+12>>2]=c;P[e+68>>2]=g*P[L[a+12>>2]+8>>2];la(e+80|0,e+76|0,e+72|0,e+68|0);a=L[e+92>>2];L[e+120>>2]=L[e+88>>2];L[e+124>>2]=a;a=L[e+84>>2];L[e+112>>2]=L[e+80>>2];L[e+116>>2]=a;a=e+112|0;h=e+188|0;hb(a,h);L[e+64>>2]=L[e+160>>2]%3;f=fa-16|0;L[f+12>>2]=b;f=L[f+12>>2]+(L[e+64>>2]<<2)|0;P[f>>2]=S(-0)-P[f>>2];f=fa-16|0;L[f+12>>2]=b;g=P[L[f+12>>2]>>2];f=fa-16|0;L[f+12>>2]=c;P[e+44>>2]=g*P[L[f+12>>2]>>2];f=fa-16|0;L[f+12>>2]=b;g=P[L[f+12>>2]+4>>2];f=fa-16|0;L[f+12>>2]=c;P[e+40>>2]=g*P[L[f+12>>2]+4>>2];f=fa-16|0;L[f+12>>2]=b;g=P[L[f+12>>2]+8>>2];b=fa-16|0;L[b+12>>2]=c;P[e+36>>2]=g*P[L[b+12>>2]+8>>2];la(e+48|0,e+44|0,e+40|0,e+36|0);b=L[e+60>>2];L[e+104>>2]=L[e+56>>2];L[e+108>>2]=b;b=L[e+52>>2];L[e+96>>2]=L[e+48>>2];L[e+100>>2]=b;b=e+96|0;hb(b,h);ha[L[L[d>>2]+8>>2]](d,a,b,L[e+240>>2]);L[e+160>>2]=L[e+160>>2]+1;continue}break}P[e+16>>2]=-1;P[e+12>>2]=-1;P[e+8>>2]=-1;la(e+20|0,e+16|0,e+12|0,e+8|0);a=L[e+32>>2];L[e+152>>2]=L[e+28>>2];L[e+156>>2]=a;a=L[e+24>>2];L[e+144>>2]=L[e+20>>2];L[e+148>>2]=a;if(L[e+164>>2]<3){a=fa-16|0;L[a+12>>2]=e+144;a=L[a+12>>2]+(L[e+164>>2]<<2)|0;P[a>>2]=S(-0)-P[a>>2]}L[e+164>>2]=L[e+164>>2]+1;continue}break}fa=e+256|0}function PH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=S(0),j=S(0),k=0,l=0,m=0,n=0,o=S(0);g=fa-16|0;fa=g;L[7540]=L[7540]+1;if(L[a+4>>2]&2){d=L[b+192>>2];i=S(ha[L[L[d>>2]+20>>2]](d,P[6794]));P[g+12>>2]=i;d=L[c+192>>2];j=S(ha[L[L[d>>2]+20>>2]](d,P[6794]));P[g+8>>2]=j;d=i>2];i=P[c+184>>2];j=P[b+184>>2];e=L[a+68>>2];f=L[e+8>>2];a:{b:{if(f){d=L[e+12>>2];h=L[d>>2];L[e+8>>2]=f-1;L[e+12>>2]=h;break b}d=0;if(M[a+4|0]&4){break a}L[8513]=L[8513]+1;d=ha[L[6798]](772,16)|0}L[d>>2]=1025;L[d+124>>2]=0;L[d+128>>2]=0;J[d+120|0]=0;L[d+116>>2]=0;L[d+132>>2]=0;L[d+136>>2]=0;L[d+140>>2]=0;L[d+144>>2]=0;L[d+148>>2]=0;L[d+152>>2]=0;L[d+308>>2]=0;L[d+312>>2]=0;J[d+304|0]=0;L[d+300>>2]=0;L[d+316>>2]=0;L[d+320>>2]=0;L[d+324>>2]=0;L[d+328>>2]=0;L[d+332>>2]=0;L[d+336>>2]=0;L[d+492>>2]=0;L[d+496>>2]=0;J[d+488|0]=0;L[d+484>>2]=0;L[d+500>>2]=0;L[d+504>>2]=0;L[d+508>>2]=0;L[d+512>>2]=0;L[d+516>>2]=0;L[d+520>>2]=0;J[d+672|0]=0;L[d+668>>2]=0;L[d+676>>2]=0;L[d+680>>2]=0;L[d+684>>2]=0;L[d+688>>2]=0;L[d+692>>2]=0;L[d+696>>2]=0;L[d+700>>2]=0;L[d+704>>2]=0;L[d+740>>2]=b;L[d+744>>2]=c;L[d+748>>2]=0;P[d+752>>2]=o;P[d+756>>2]=i>j?j:i;e=L[a+12>>2];L[d+768>>2]=e;c:{if(L[a+16>>2]!=(e|0)){break c}h=e?e<<1:1;if((h|0)<=(e|0)){break c}d:{if(!h){b=0;break d}L[8513]=L[8513]+1;b=ha[L[6798]](h<<2,16)|0;e=L[a+12>>2]}e:{if((e|0)<=0){break e}c=0;if(e>>>0>=4){l=e&-4;while(1){f=c<<2;L[f+b>>2]=L[f+L[a+20>>2]>>2];k=f|4;L[k+b>>2]=L[k+L[a+20>>2]>>2];k=f|8;L[k+b>>2]=L[k+L[a+20>>2]>>2];f=f|12;L[f+b>>2]=L[f+L[a+20>>2]>>2];c=c+4|0;m=m+4|0;if((l|0)!=(m|0)){continue}break}}f=e&3;if(!f){break e}while(1){l=c<<2;L[l+b>>2]=L[l+L[a+20>>2]>>2];c=c+1|0;n=n+1|0;if((f|0)!=(n|0)){continue}break}}c=L[a+20>>2];if(!(!c|!M[a+24|0])){if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}e=L[a+12>>2]}L[a+20>>2]=b;J[a+24|0]=1;L[a+16>>2]=h}L[L[a+20>>2]+(e<<2)>>2]=d;L[a+12>>2]=e+1}fa=g+16|0;return d|0}function tk(a,b){var c=0,d=S(0),e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=S(0),n=S(0),o=S(0),p=0,q=S(0),r=S(0),s=S(0),t=0,u=0,v=S(0),w=S(0),x=0,y=0,z=0,A=S(0),B=0,C=S(0),D=S(0),E=S(0),F=0,G=S(0);wa(2649);j=L[a+712>>2];a:{if((j|0)<=0){break a}L[8513]=L[8513]+1;c=j<<4;i=ha[L[6798]](c,16)|0;pa(i,0,c);c=L[a+712>>2];if((c|0)<=0){break a}L[8513]=L[8513]+1;c=c<<2;g=ha[L[6798]](c,16)|0;pa(g,0,c)}k=L[a+1112>>2];b:{if(b){if((k|0)<=0){break b}h=L[a+1120>>2];while(1){c=L[h+(e<<2)>>2];f=L[c+312>>2];if(f){d=S(S(1)/S(f|0));P[c+276>>2]=d*P[c+276>>2];P[c+280>>2]=d*P[c+280>>2];P[c+284>>2]=d*P[c+284>>2];P[c+292>>2]=d*P[c+292>>2];P[c+296>>2]=d*P[c+296>>2];P[c+300>>2]=d*P[c+300>>2]}e=e+1|0;if((k|0)!=(e|0)){continue}break}}if((k|0)<=0){break b}x=L[a+720>>2];y=L[a+1120>>2];h=0;z=b?312:308;while(1){c=L[(h<<2)+y>>2];c:{if(L[c+z>>2]<=0){break c}p=L[c+24>>2];if((p|0)<=0){break c}d=P[a+452>>2];e=b?c+276|0:c+244|0;n=S(d*P[e+8>>2]);o=S(d*P[e+4>>2]);A=S(P[c+(b?276:244)>>2]*d);B=L[c+32>>2];e=b?c+292|0:c+260|0;q=S(d*P[e+4>>2]);C=S(-q);r=S(d*P[c+(b?292:260)>>2]);D=S(-r);s=S(d*P[e+8>>2]);E=S(-s);F=L[c+12>>2];f=0;while(1){t=f<<2;l=L[t+B>>2];m=P[l+8>>2];G=P[c+228>>2];u=(l-x|0)/104|0;e=(u<<4)+i|0;d=P[F+t>>2];v=S(P[l+16>>2]-P[c+236>>2]);w=S(P[l+12>>2]-P[c+232>>2]);P[e>>2]=P[e>>2]+S(d*S(A+S(S(q*v)+S(w*E))));m=S(m-G);P[e+4>>2]=P[e+4>>2]+S(d*S(o+S(S(s*m)+S(v*D))));P[e+8>>2]=S(d*S(n+S(S(r*w)+S(m*C))))+P[e+8>>2];e=(u<<2)+g|0;P[e>>2]=d+P[e>>2];f=f+1|0;if((p|0)!=(f|0)){continue}break}}h=h+1|0;if((k|0)!=(h|0)){continue}break}}d:{e:{if((j|0)>0){e=L[a+720>>2];a=0;while(1){d=P[(a<<2)+g>>2];if(d>S(0)){c=(a<<4)+i|0;n=P[c+8>>2];o=P[c+4>>2];b=e+R(a,104)|0;d=S(S(1)/d);P[b+8>>2]=S(d*P[c>>2])+P[b+8>>2];P[b+12>>2]=S(d*o)+P[b+12>>2];P[b+16>>2]=S(d*n)+P[b+16>>2]}a=a+1|0;if((j|0)!=(a|0)){continue}break}break e}if(!g){break d}}if(g){L[8514]=L[8514]+1;ha[L[6799]](g)}}if(i){L[8514]=L[8514]+1;ha[L[6799]](i)}va()}function at(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;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;J[f+15|0]=e;g=oa(1128);b=L[f+20>>2];a=L[f+16>>2];e=J[f+15|0]&1;c=ub(g,7,L[f+28>>2],L[f+24>>2]);J[c+48|0]=0;L[c>>2]=20084;d=L[b+12>>2];L[c+60>>2]=L[b+8>>2];L[c+64>>2]=d;d=L[b+4>>2];L[c+52>>2]=L[b>>2];L[c+56>>2]=d;d=L[b+28>>2];L[c+76>>2]=L[b+24>>2];L[c+80>>2]=d;d=L[b+20>>2];L[c+68>>2]=L[b+16>>2];L[c+72>>2]=d;d=L[b+44>>2];L[c+92>>2]=L[b+40>>2];L[c+96>>2]=d;d=L[b+36>>2];L[c+84>>2]=L[b+32>>2];L[c+88>>2]=d;d=L[b+60>>2];L[c+108>>2]=L[b+56>>2];L[c+112>>2]=d;d=L[b+52>>2];L[c+100>>2]=L[b+48>>2];L[c+104>>2]=d;b=L[a+12>>2];L[c+124>>2]=L[a+8>>2];L[c+128>>2]=b;b=L[a+4>>2];L[c+116>>2]=L[a>>2];L[c+120>>2]=b;b=L[a+28>>2];L[c+140>>2]=L[a+24>>2];L[c+144>>2]=b;b=L[a+20>>2];L[c+132>>2]=L[a+16>>2];L[c+136>>2]=b;b=L[a+44>>2];L[c+156>>2]=L[a+40>>2];L[c+160>>2]=b;b=L[a+36>>2];L[c+148>>2]=L[a+32>>2];L[c+152>>2]=b;b=L[a+60>>2];L[c+172>>2]=L[a+56>>2];L[c+176>>2]=b;b=L[a+52>>2];L[c+164>>2]=L[a+48>>2];L[c+168>>2]=b;L[c+288>>2]=1065353216;L[c+292>>2]=0;L[c+280>>2]=1065353216;L[c+284>>2]=1060320051;L[c+272>>2]=1065353216;L[c+276>>2]=0;L[c+264>>2]=1065353216;L[c+268>>2]=1060320051;L[c+224>>2]=0;L[c+228>>2]=0;L[c+216>>2]=1065353216;L[c+220>>2]=1060320051;L[c+208>>2]=0;L[c+212>>2]=0;L[c+200>>2]=1065353216;L[c+204>>2]=1060320051;L[c+192>>2]=0;L[c+196>>2]=0;L[c+184>>2]=1065353216;L[c+188>>2]=-1082130432;J[c+180|0]=e;L[c+1124>>2]=0;L[c+1116>>2]=0;L[c+1120>>2]=0;J[c+1096|0]=0;L[c+256>>2]=1065353216;L[c+260>>2]=0;L[c+248>>2]=1065353216;L[c+252>>2]=1060320051;L[c+240>>2]=1065353216;L[c+244>>2]=0;L[c+232>>2]=1065353216;L[c+236>>2]=1060320051;L[c+300>>2]=0;a=c+1105|0;J[a|0]=0;J[a+1|0]=0;J[a+2|0]=0;J[a+3|0]=0;J[a+4|0]=0;J[a+5|0]=0;J[a+6|0]=0;J[a+7|0]=0;L[c+1100>>2]=0;L[c+1104>>2]=0;J[c+49|0]=1;sg(c,L[c+28>>2]+4|0,L[c+32>>2]+4|0);fa=f+32|0;return g|0}function Wk(a,b,c,d){J[a+76|0]=1;L[a+72>>2]=0;L[a+68>>2]=c;L[a+28>>2]=0;L[a+32>>2]=0;L[a+24>>2]=b;J[a+20|0]=1;L[a>>2]=6776;L[a+16>>2]=0;L[a- -64>>2]=0;J[a+60|0]=0;L[a+56>>2]=1025758986;J[a+54|0]=1;K[a+52>>1]=256;L[a+48>>2]=0;J[a+44|0]=1;L[a+36>>2]=1;L[a+40>>2]=1065353216;L[a+8>>2]=0;L[a+12>>2]=0;L[a+92>>2]=1058642330;L[a+96>>2]=1065353216;L[a+88>>2]=0;L[a+80>>2]=0;L[a+84>>2]=0;L[a>>2]=20352;L[a+200>>2]=d;L[a+196>>2]=0;L[a+100>>2]=1050253722;L[a+104>>2]=1015580809;L[a+124>>2]=1045220557;L[a+128>>2]=1061997773;L[a+108>>2]=0;L[a+112>>2]=10;L[a+168>>2]=1120403456;L[a+172>>2]=1900671690;L[a+164>>2]=128;L[a+156>>2]=260;L[a+160>>2]=2;L[a+148>>2]=0;L[a+152>>2]=1062836634;L[a+140>>2]=-1121724662;L[a+144>>2]=1036831949;L[a+132>>2]=0;L[a+136>>2]=1;L[a+116>>2]=1101004800;L[a+120>>2]=1065353216;J[a+192|0]=1;L[a+188>>2]=0;L[a+180>>2]=0;L[a+184>>2]=0;J[a+224|0]=1;L[a+212>>2]=0;L[a+216>>2]=0;L[a+220>>2]=0;J[a+244|0]=1;K[a+274>>1]=0;L[a+240>>2]=0;L[a+248>>2]=0;L[a+252>>2]=-1054867456;L[a+232>>2]=0;L[a+236>>2]=0;L[a+256>>2]=0;L[a+260>>2]=0;L[a+264>>2]=0;L[a+268>>2]=0;J[a+292|0]=1;L[a+296>>2]=0;L[a+288>>2]=0;L[a+280>>2]=0;L[a+284>>2]=0;J[a+320|0]=1;J[a+300|0]=1;L[a+316>>2]=0;L[a+308>>2]=0;L[a+312>>2]=0;if(d){c=0}else{L[8513]=L[8513]+1;L[a+200>>2]=dl(ha[L[6798]](196,16)|0);c=1}J[a+273|0]=c;L[8513]=L[8513]+1;c=ha[L[6798]](68,16)|0;L[c>>2]=20292;L[c+16>>2]=0;J[c+20|0]=1;L[c+8>>2]=0;L[c+12>>2]=0;L[c+36>>2]=0;J[c+40|0]=1;J[c+60|0]=1;L[c+28>>2]=0;L[c+32>>2]=0;L[c+56>>2]=0;J[c+64|0]=1;L[c+48>>2]=0;L[c+52>>2]=0;J[a+272|0]=1;L[a+204>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](88,16)|0;d=L[a+200>>2];J[c+44|0]=1;L[c+24>>2]=b;L[c+20>>2]=0;L[c+12>>2]=0;L[c+16>>2]=0;L[c+8>>2]=d;L[c+4>>2]=0;L[c>>2]=20608;L[c+40>>2]=0;J[c- -64|0]=1;L[c+32>>2]=0;L[c+36>>2]=0;L[c+60>>2]=0;J[c+84|0]=1;L[c+52>>2]=0;L[c+56>>2]=0;L[c+80>>2]=0;L[c+72>>2]=0;L[c+76>>2]=0;L[a+196>>2]=c;return a}function NG(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=S(0),i=0,j=S(0),k=S(0),l=S(0),m=S(0),n=S(0),o=S(0),p=S(0),q=S(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=S(0),E=S(0),F=S(0),G=S(0),H=S(0);a:{f=M[a+8|0];t=f?b:c;g=L[t+4>>2];if(L[g+4>>2]-21>>>0>8){break a}i=f?c:b;if(L[L[i+4>>2]+4>>2]>19){break a}h=S(ha[L[L[g>>2]+48>>2]](g));L[e+4>>2]=L[a+76>>2];c=fa+-64|0;fa=c;b=a+12|0;P[b+56>>2]=h;L[b+52>>2]=d;L[b+8>>2]=t;L[b+4>>2]=i;L[b+44>>2]=e;d=L[t+12>>2];u=P[d+52>>2];v=P[d+56>>2];f=L[i+12>>2];w=P[f+52>>2];x=P[f+56>>2];j=P[d+20>>2];k=P[d+36>>2];y=P[f+20>>2];z=P[f+36>>2];A=P[f+24>>2];l=P[d+24>>2];B=P[f+40>>2];m=P[d+40>>2];C=P[f+32>>2];n=P[d+32>>2];D=P[f>>2];o=P[d>>2];E=P[f+16>>2];p=P[d+16>>2];q=P[d+48>>2];F=P[f+48>>2];r=P[d+4>>2];G=P[f+4>>2];H=P[f+8>>2];s=P[d+8>>2];L[c+60>>2]=0;L[c+44>>2]=0;L[c+28>>2]=0;P[c+40>>2]=S(B*m)+S(S(H*s)+S(l*A));P[c+36>>2]=S(z*m)+S(S(G*s)+S(l*y));P[c+24>>2]=S(B*k)+S(S(H*r)+S(j*A));P[c+20>>2]=S(z*k)+S(S(G*r)+S(j*y));q=S(-q);P[c+56>>2]=S(S(S(s*q)-S(l*u))-S(m*v))+S(S(x*m)+S(S(F*s)+S(l*w)));P[c+52>>2]=S(S(S(r*q)-S(j*u))-S(k*v))+S(S(x*k)+S(S(F*r)+S(j*w)));L[c+12>>2]=0;P[c>>2]=S(C*n)+S(S(D*o)+S(p*E));P[c+32>>2]=S(C*m)+S(S(D*s)+S(l*E));P[c+16>>2]=S(C*k)+S(S(D*r)+S(j*E));P[c+8>>2]=S(B*n)+S(S(H*o)+S(p*A));P[c+4>>2]=S(z*n)+S(S(G*o)+S(p*y));P[c+48>>2]=S(S(S(o*q)-S(p*u))-S(n*v))+S(S(x*n)+S(S(F*o)+S(p*w)));d=L[i+4>>2];ha[L[L[d>>2]+8>>2]](d,c,b+12|0,b+28|0);P[b+28>>2]=P[b+28>>2]+h;P[b+32>>2]=P[b+32>>2]+h;P[b+36>>2]=P[b+36>>2]+h;P[b+12>>2]=P[b+12>>2]-h;P[b+16>>2]=P[b+16>>2]-h;P[b+20>>2]=P[b+20>>2]-h;fa=c- -64|0;c=L[i+8>>2];d=L[a+76>>2];L[d+744>>2]=L[t+8>>2];L[d+740>>2]=c;ha[L[L[g>>2]+64>>2]](g,b,a+24|0,a+40|0);b=L[e+4>>2];if(L[b+748>>2]){d=L[b+740>>2];f=L[L[e+8>>2]+8>>2];c=(d|0)==(f|0);g=b;b=L[L[e+12>>2]+8>>2];_a(g,(c?d:b)+4|0,(c?b:f)+4|0)}L[a+16>>2]=0;L[a+20>>2]=0}}function Bw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;f=fa-16|0;fa=f;L[f+12>>2]=a;L[f+8>>2]=b;h=L[f+8>>2];a=fa-80|0;fa=a;e=L[f+12>>2];L[e+68>>2]=L[e+68>>2]+1;b=L[e+64>>2];if(b){fc(b,L[(L[e+24>>2]+R(h,80)|0)+76>>2])}c=L[e+16>>2];g=L[e+24>>2];i=R(h,80);b=g+i|0;d=L[b+12>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=d;d=L[b+4>>2];L[a>>2]=L[b>>2];L[a+4>>2]=d;d=L[b+28>>2];L[a+24>>2]=L[b+24>>2];L[a+28>>2]=d;d=L[b+20>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=d;d=L[b+44>>2];L[a+40>>2]=L[b+40>>2];L[a+44>>2]=d;d=L[b+36>>2];L[a+32>>2]=L[b+32>>2];L[a+36>>2]=d;d=L[b+60>>2];L[a+56>>2]=L[b+56>>2];L[a+60>>2]=d;d=L[b+52>>2];L[a+48>>2]=L[b+48>>2];L[a+52>>2]=d;d=L[b+76>>2];L[a+72>>2]=L[b+72>>2];L[a+76>>2]=d;d=L[b+68>>2];L[a+64>>2]=L[b+64>>2];L[a+68>>2]=d;d=g;g=R(c,80)-80|0;c=d+g|0;d=L[c+4>>2];L[b>>2]=L[c>>2];L[b+4>>2]=d;d=L[c+12>>2];L[b+8>>2]=L[c+8>>2];L[b+12>>2]=d;d=L[c+20>>2];L[b+16>>2]=L[c+16>>2];L[b+20>>2]=d;d=L[c+28>>2];L[b+24>>2]=L[c+24>>2];L[b+28>>2]=d;d=L[c+44>>2];L[b+40>>2]=L[c+40>>2];L[b+44>>2]=d;d=L[c+36>>2];L[b+32>>2]=L[c+32>>2];L[b+36>>2]=d;d=L[c+52>>2];L[b+48>>2]=L[c+48>>2];L[b+52>>2]=d;d=L[c+60>>2];L[b+56>>2]=L[c+56>>2];L[b+60>>2]=d;d=L[c+76>>2];L[b+72>>2]=L[c+72>>2];L[b+76>>2]=d;d=L[c+68>>2];L[b+64>>2]=L[c+64>>2];L[b+68>>2]=d;c=L[a+4>>2];b=g+L[e+24>>2]|0;L[b>>2]=L[a>>2];L[b+4>>2]=c;c=L[a+12>>2];L[b+8>>2]=L[a+8>>2];L[b+12>>2]=c;c=L[a+20>>2];L[b+16>>2]=L[a+16>>2];L[b+20>>2]=c;c=L[a+28>>2];L[b+24>>2]=L[a+24>>2];L[b+28>>2]=c;c=L[a+36>>2];L[b+32>>2]=L[a+32>>2];L[b+36>>2]=c;c=L[a+44>>2];L[b+40>>2]=L[a+40>>2];L[b+44>>2]=c;c=L[a+52>>2];L[b+48>>2]=L[a+48>>2];L[b+52>>2]=c;c=L[a+60>>2];L[b+56>>2]=L[a+56>>2];L[b+60>>2]=c;c=L[a+68>>2];L[b+64>>2]=L[a+64>>2];L[b+68>>2]=c;c=L[a+76>>2];L[b+72>>2]=L[a+72>>2];L[b+76>>2]=c;if(L[e+64>>2]){L[L[(i+L[e+24>>2]|0)+76>>2]+36>>2]=h}L[e+16>>2]=L[e+16>>2]-1;fa=a+80|0;fa=f+16|0}function yn(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:{l=L[a+36>>2];b=L[a+12>>2];if((l|0)>=(b|0)){break a}b:{if((b|0)<=L[a+40>>2]){d=L[a+44>>2];break b}if(b){L[8513]=L[8513]+1;d=ha[L[6798]](b<<2,16)|0;c=L[a+36>>2]}else{c=l}g=L[a+44>>2];c:{if((c|0)>0){if(c>>>0>=4){j=c&-4;while(1){e=f<<2;L[e+d>>2]=L[e+g>>2];h=e|4;L[h+d>>2]=L[g+h>>2];h=e|8;L[h+d>>2]=L[g+h>>2];e=e|12;L[e+d>>2]=L[e+g>>2];f=f+4|0;i=i+4|0;if((j|0)!=(i|0)){continue}break}}c=c&3;if(!c){break c}while(1){e=f<<2;L[e+d>>2]=L[e+g>>2];f=f+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}break c}if(g){break c}L[a+44>>2]=d;L[a+40>>2]=b;J[a+48|0]=1;break b}if(g?M[a+48|0]:0){L[8514]=L[8514]+1;ha[L[6799]](g)}L[a+44>>2]=d;J[a+48|0]=1;L[a+40>>2]=b}c=l<<2;j=b<<2;pa(c+d|0,0,j-c|0);L[a+36>>2]=b;g=L[a+56>>2];if((g|0)<(b|0)){d:{if((b|0)<=L[a+60>>2]){d=L[a- -64>>2];break d}e:{if(!b){d=0;c=g;break e}L[8513]=L[8513]+1;d=ha[L[6798]](j,16)|0;c=L[a+56>>2]}e=L[a- -64>>2];f:{if((c|0)>0){k=0;f=0;if(c>>>0>=4){n=c&-4;i=0;while(1){h=f<<2;L[h+d>>2]=L[e+h>>2];m=h|4;L[m+d>>2]=L[e+m>>2];m=h|8;L[m+d>>2]=L[e+m>>2];h=h|12;L[h+d>>2]=L[e+h>>2];f=f+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}c=c&3;if(!c){break f}while(1){i=f<<2;L[i+d>>2]=L[e+i>>2];f=f+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}break f}if(e){break f}L[a+64>>2]=d;L[a+60>>2]=b;J[a+68|0]=1;break d}if(e?M[a+68|0]:0){L[8514]=L[8514]+1;ha[L[6799]](e)}L[a+64>>2]=d;J[a+68|0]=1;L[a+60>>2]=b}c=g<<2;pa(c+d|0,0,j-c|0)}L[a+56>>2]=b;if((b|0)>0){pa(L[a+44>>2],255,j);pa(L[a- -64>>2],255,j)}if((l|0)<=0){break a}c=L[a- -64>>2];g=L[a+16>>2];d=L[a+44>>2];f=0;while(1){b=g+(f<<4)|0;b=L[L[b+4>>2]+12>>2]<<16|L[L[b>>2]+12>>2];b=(b<<15^-1)+b|0;b=R(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;b=d+((L[a+12>>2]-1&(b>>16^b))<<2)|0;L[c+(f<<2)>>2]=L[b>>2];L[b>>2]=f;f=f+1|0;if((l|0)!=(f|0)){continue}break}}}function KD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=S(0),i=0,j=0,k=0,l=0,m=S(0),n=0,o=0,p=0,q=0,r=S(0),s=S(0),t=S(0),u=0,v=S(0),w=0;i=fa-2048|0;fa=i;a:{if((d|0)<=0){break a}if(d>>>0>=8){l=d&-8;while(1){e=f<<4;L[(e+c|0)+12>>2]=-581039253;L[((e|16)+c|0)+12>>2]=-581039253;L[((e|32)+c|0)+12>>2]=-581039253;L[((e|48)+c|0)+12>>2]=-581039253;L[((e|64)+c|0)+12>>2]=-581039253;L[((e|80)+c|0)+12>>2]=-581039253;L[((e|96)+c|0)+12>>2]=-581039253;L[((e|112)+c|0)+12>>2]=-581039253;f=f+8|0;j=j+8|0;if((l|0)!=(j|0)){continue}break}}e=d&7;if(e){while(1){L[((f<<4)+c|0)+12>>2]=-581039253;f=f+1|0;g=g+1|0;if((e|0)!=(g|0)){continue}break}}if((d|0)<=0){break a}while(1){if((ha[L[L[a>>2]+96>>2]](a)|0)>0){e=p<<4;q=e+b|0;l=c+e|0;n=0;while(1){g=128;b:{c:{if(((ha[L[L[a>>2]+96>>2]](a)|0)-n|0)>127){break c}g=(ha[L[L[a>>2]+96>>2]](a)|0)-n|0;if((g|0)>0){break c}h=S(-34028234663852886e22);g=-1;break b}e=0;j=(g|0)==1;if(!j){k=g&-2;f=0;while(1){ha[L[L[a>>2]+108>>2]](a,e,(e<<4)+i|0);o=e|1;ha[L[L[a>>2]+108>>2]](a,o,(o<<4)+i|0);e=e+2|0;f=f+2|0;if((k|0)!=(f|0)){continue}break}}o=g&1;if(o){ha[L[L[a>>2]+108>>2]](a,e,(e<<4)+i|0)}m=P[q+8>>2];r=P[q+4>>2];s=P[q>>2];d:{if(j){e=0;g=-1;h=S(-34028234663852886e22);break d}w=g&-2;e=0;g=-1;h=S(-34028234663852886e22);j=0;while(1){f=(e<<4)+i|0;t=S(S(P[f+8>>2]*m)+S(S(P[f>>2]*s)+S(r*P[f+4>>2])));f=t>h;u=e|1;k=(u<<4)+i|0;v=S(S(P[k+8>>2]*m)+S(S(P[k>>2]*s)+S(r*P[k+4>>2])));h=f?t:h;k=v>h;h=k?v:h;g=k?u:f?e:g;e=e+2|0;j=j+2|0;if((w|0)!=(j|0)){continue}break}}if(!o){break b}f=(e<<4)+i|0;m=S(S(P[f+8>>2]*m)+S(S(P[f>>2]*s)+S(r*P[f+4>>2])));f=m>h;h=f?m:h;g=f?e:g}if(P[l+12>>2]>2]=L[e+8>>2];g=L[e+4>>2];L[l>>2]=L[e>>2];L[l+4>>2]=g;P[l+12>>2]=h}n=n+128|0;if((ha[L[L[a>>2]+96>>2]](a)|0)>(n|0)){continue}break}}p=p+1|0;if((p|0)!=(d|0)){continue}break}}fa=i+2048|0}function lB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=S(0),g=S(0),h=0,i=S(0),j=S(0),k=S(0),l=0,m=S(0),n=S(0),o=S(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=S(0);e=L[a+28>>2];d=L[a+32>>2];c=L[b+8>>2];L[c>>2]=1065353216;p=L[b+24>>2];l=p<<2;v=l+4|0;L[c+v>>2]=1065353216;q=p<<3;w=q+8|0;L[c+w>>2]=1065353216;m=P[e+24>>2];n=P[e+28>>2];o=P[e+40>>2];g=P[a+304>>2];j=P[e+44>>2];f=P[a+308>>2];k=P[e+12>>2];r=P[e+4>>2];s=P[e+8>>2];t=P[e+20>>2];u=P[e+36>>2];i=P[a+300>>2];c=L[b+12>>2];L[c+12>>2]=0;L[c>>2]=0;o=S(S(j*f)+S(S(u*i)+S(g*o)));P[c+4>>2]=o;m=S(S(n*f)+S(S(t*i)+S(g*m)));P[c+8>>2]=-m;h=c+l|0;L[h+12>>2]=0;n=S(S(k*f)+S(S(r*i)+S(s*g)));P[h+8>>2]=n;L[h+4>>2]=0;P[h>>2]=-o;c=c+q|0;L[c+8>>2]=0;L[c+12>>2]=0;P[c+4>>2]=-n;P[c>>2]=m;c=L[b+16>>2];L[c>>2]=-1082130432;L[c+v>>2]=-1082130432;L[c+w>>2]=-1082130432;k=P[d+40>>2];r=P[d+44>>2];j=P[d+24>>2];g=P[a+320>>2];s=P[d+28>>2];f=P[a+324>>2];t=P[d+12>>2];u=P[d+4>>2];x=P[d+8>>2];y=P[d+36>>2];z=P[d+20>>2];i=P[a+316>>2];c=L[b+20>>2];L[c+12>>2]=0;L[c>>2]=0;j=S(S(s*f)+S(S(z*i)+S(g*j)));P[c+8>>2]=j;k=S(S(r*f)+S(S(y*i)+S(g*k)));P[c+4>>2]=-k;h=c+l|0;L[h+12>>2]=0;g=S(S(t*f)+S(S(u*i)+S(x*g)));P[h+8>>2]=-g;L[h+4>>2]=0;P[h>>2]=k;c=c+q|0;L[c+8>>2]=0;L[c+12>>2]=0;P[c+4>>2]=g;P[c>>2]=-j;c=L[b+28>>2];h=L[a+332>>2];f=S(P[(h&1?a+336|0:b+4|0)>>2]*P[b>>2]);P[c>>2]=f*S(S(S(g+P[d+52>>2])-n)-P[e+52>>2]);P[c+l>>2]=f*S(S(S(j+P[d+56>>2])-m)-P[e+56>>2]);P[c+q>>2]=f*S(S(S(k+P[d+60>>2])-o)-P[e+60>>2]);e=p<<1;if(h&2){d=L[b+32>>2];P[d>>2]=P[a+340>>2];P[d+l>>2]=P[a+340>>2];P[d+(e<<2)>>2]=P[a+340>>2]}f=P[a+356>>2];a:{if(!(f>S(0))){break a}i=S(-f);P[L[b+36>>2]>>2]=i;P[L[b+40>>2]>>2]=f;g=P[a+356>>2];if(g>S(0)){d=p<<2;P[d+L[b+36>>2]>>2]=i;P[d+L[b+40>>2]>>2]=f;g=P[a+356>>2]}if(!(g>S(0))){break a}e=e<<2;P[e+L[b+36>>2]>>2]=i;P[e+L[b+40>>2]>>2]=f}P[b+52>>2]=P[a+352>>2]}function QC(a,b,c){a=a|0;b=S(b);c=c|0;var d=S(0),e=0,f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=0,l=S(0),m=0,n=S(0),o=S(0),p=S(0);k=fa-16|0;fa=k;ha[L[L[a>>2]+112>>2]](a);L[c+8>>2]=0;L[c+12>>2]=0;L[c>>2]=0;L[c+4>>2]=0;m=ha[L[L[a>>2]+88>>2]](a)|0;if(m){p=S(b/S(m|0));while(1){m=m-1|0;e=L[L[a+184>>2]+(m<<2)>>2];ha[L[L[e>>2]+32>>2]](e,p,k);a:{if(ha[L[L[a>>2]+92>>2]](a)|0){e=L[a+164>>2]+(m<<6)|0;b=P[e+8>>2];f=P[k+8>>2];j=S(b*S(b*f));b=P[e>>2];g=P[k>>2];d=S(b*S(b*g));b=P[e+4>>2];i=P[k+4>>2];d=S(j+S(d+S(b*S(b*i))));b=P[e+52>>2];l=S(b*b);b=P[e+56>>2];j=S(b*b);b=S(d*S(l+j));h=P[e+40>>2];d=S(h*S(f*h));h=P[e+32>>2];n=S(h*S(g*h));h=P[e+36>>2];d=S(d+S(n+S(h*S(i*h))));h=P[e+48>>2];h=S(h*h);l=S(d*S(h+l));d=P[e+24>>2];d=S(d*S(f*d));f=P[e+16>>2];g=S(f*S(g*f));f=P[e+20>>2];f=S(S(d+S(g+S(f*S(i*f))))*S(h+j));break a}b:{if(J[30088]&1){l=P[7519];f=P[7518];b=P[7520];break b}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;e=L[7524];L[7506]=L[7523];L[7507]=e;e=L[7528];L[7510]=L[7527];L[7511]=e;e=L[7532];L[7514]=L[7531];L[7515]=e;L[7520]=0;L[7521]=0;e=L[7526];L[7508]=L[7525];L[7509]=e;e=L[7530];L[7512]=L[7529];L[7513]=e;e=L[7534];L[7516]=L[7533];L[7517]=e;l=S(0);f=S(0);b=S(0)}g=P[7516];d=g;g=P[k+8>>2];i=P[7514];n=i;i=P[k>>2];j=P[7515];o=j;j=P[k+4>>2];f=S(f*f);h=S(l*l);l=S(S(S(d*S(d*g))+S(S(n*S(n*i))+S(o*S(o*j))))*S(f+h));d=P[7512];n=S(d*S(g*d));d=P[7510];o=S(d*S(i*d));d=P[7511];b=S(b*b);f=S(S(n+S(o+S(d*S(j*d))))*S(f+b));d=P[7508];d=S(d*S(d*g));g=P[7506];i=S(g*S(g*i));g=P[7507];b=S(S(d+S(i+S(g*S(g*j))))*S(h+b))}L[c+12>>2]=0;P[c+8>>2]=l+P[c+8>>2];P[c+4>>2]=P[c+4>>2]+f;P[c>>2]=P[c>>2]+b;if(m){continue}break}}ha[L[L[a>>2]+116>>2]](a);fa=k+16|0}function dh(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:{l=L[a+32>>2];b=L[a+12>>2];if((l|0)>=(b|0)){break a}b:{if((b|0)<=L[a+36>>2]){d=L[a+40>>2];break b}if(b){L[8513]=L[8513]+1;d=ha[L[6798]](b<<2,16)|0;c=L[a+32>>2]}else{c=l}g=L[a+40>>2];c:{if((c|0)>0){if(c>>>0>=4){j=c&-4;while(1){e=f<<2;L[e+d>>2]=L[e+g>>2];h=e|4;L[h+d>>2]=L[g+h>>2];h=e|8;L[h+d>>2]=L[g+h>>2];e=e|12;L[e+d>>2]=L[e+g>>2];f=f+4|0;i=i+4|0;if((j|0)!=(i|0)){continue}break}}c=c&3;if(!c){break c}while(1){e=f<<2;L[e+d>>2]=L[e+g>>2];f=f+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}break c}if(g){break c}L[a+40>>2]=d;L[a+36>>2]=b;J[a+44|0]=1;break b}if(g?M[a+44|0]:0){L[8514]=L[8514]+1;ha[L[6799]](g)}L[a+40>>2]=d;J[a+44|0]=1;L[a+36>>2]=b}c=l<<2;j=b<<2;pa(c+d|0,0,j-c|0);L[a+32>>2]=b;g=L[a+52>>2];if((g|0)<(b|0)){d:{if((b|0)<=L[a+56>>2]){d=L[a+60>>2];break d}e:{if(!b){d=0;c=g;break e}L[8513]=L[8513]+1;d=ha[L[6798]](j,16)|0;c=L[a+52>>2]}e=L[a+60>>2];f:{if((c|0)>0){k=0;f=0;if(c>>>0>=4){n=c&-4;i=0;while(1){h=f<<2;L[h+d>>2]=L[e+h>>2];m=h|4;L[m+d>>2]=L[e+m>>2];m=h|8;L[m+d>>2]=L[e+m>>2];h=h|12;L[h+d>>2]=L[e+h>>2];f=f+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}c=c&3;if(!c){break f}while(1){i=f<<2;L[i+d>>2]=L[e+i>>2];f=f+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}break f}if(e){break f}L[a+60>>2]=d;L[a+56>>2]=b;J[a- -64|0]=1;break d}if(e?M[a- -64|0]:0){L[8514]=L[8514]+1;ha[L[6799]](e)}L[a+60>>2]=d;J[a+64|0]=1;L[a+56>>2]=b}c=g<<2;pa(c+d|0,0,j-c|0)}L[a+52>>2]=b;if((b|0)>0){pa(L[a+40>>2],255,j);pa(L[a+60>>2],255,j)}if((l|0)<=0){break a}c=L[a+60>>2];g=L[a+16>>2];d=L[a+40>>2];f=0;while(1){b=g+R(f,12)|0;b=L[b+4>>2]<<16|L[b>>2];b=(b<<15^-1)+b|0;b=R(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;b=d+((L[a+12>>2]-1&(b>>16^b))<<2)|0;L[c+(f<<2)>>2]=L[b>>2];L[b>>2]=f;f=f+1|0;if((l|0)!=(f|0)){continue}break}}}function Dg(a,b,c,d,e,f,g){var 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=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);L[e>>2]=0;L[e+4>>2]=0;L[e+32>>2]=0;L[e+24>>2]=0;L[e+28>>2]=0;L[e+16>>2]=0;L[e+20>>2]=0;L[e+8>>2]=0;L[e+12>>2]=0;L[f+4>>2]=c;L[f>>2]=a;l=P[d+20>>2];m=P[d+36>>2];h=P[b+20>>2];i=P[b+36>>2];n=P[d+24>>2];o=P[b+24>>2];p=P[d+40>>2];q=P[b+40>>2];j=P[d+32>>2];r=P[d>>2];s=P[d+16>>2];t=P[d+4>>2];u=P[b+32>>2];v=P[b>>2];w=P[b+16>>2];x=P[b+4>>2];y=P[d+8>>2];k=P[b+8>>2];L[f+52>>2]=0;L[f+36>>2]=0;L[f+20>>2]=0;P[f+48>>2]=S(p*q)+S(S(y*k)+S(o*n));P[f+44>>2]=S(p*i)+S(S(y*x)+S(h*n));P[f+40>>2]=S(p*u)+S(S(y*v)+S(w*n));P[f+32>>2]=S(m*q)+S(S(t*k)+S(o*l));P[f+28>>2]=S(m*i)+S(S(t*x)+S(h*l));P[f+24>>2]=S(m*u)+S(S(t*v)+S(w*l));P[f+16>>2]=S(j*q)+S(S(r*k)+S(s*o));P[f+12>>2]=S(j*i)+S(S(r*x)+S(s*h));P[f+8>>2]=S(j*u)+S(S(r*v)+S(s*w));B=P[b+52>>2];C=P[d+52>>2];D=P[b+56>>2];z=P[d+56>>2];l=P[b+20>>2];m=P[b+36>>2];r=P[d+20>>2];s=P[d+36>>2];h=P[b+24>>2];t=P[d+24>>2];i=P[b+40>>2];u=P[d+40>>2];E=P[b+48>>2];A=P[d+48>>2];n=P[b+32>>2];o=P[b>>2];p=P[b+16>>2];q=P[b+4>>2];v=P[d+32>>2];w=P[d>>2];x=P[d+16>>2];y=P[d+4>>2];j=P[b+8>>2];k=P[d+8>>2];L[f+124>>2]=0;L[f+120>>2]=g?770:771;L[f+116>>2]=0;L[f+100>>2]=0;L[f+84>>2]=0;L[f+68>>2]=0;P[f+96>>2]=S(i*u)+S(S(j*k)+S(t*h));P[f+92>>2]=S(i*s)+S(S(j*y)+S(r*h));P[f+88>>2]=S(i*v)+S(S(j*w)+S(x*h));P[f+80>>2]=S(m*u)+S(S(q*k)+S(t*l));P[f+76>>2]=S(m*s)+S(S(q*y)+S(r*l));P[f+72>>2]=S(m*v)+S(S(q*w)+S(x*l));P[f- -64>>2]=S(n*u)+S(S(o*k)+S(p*t));P[f+60>>2]=S(n*s)+S(S(o*y)+S(p*r));P[f+56>>2]=S(n*v)+S(S(o*w)+S(p*x));k=i;i=S(z-D);z=j;j=S(A-E);A=h;h=S(C-B);P[f+112>>2]=S(k*i)+S(S(z*j)+S(A*h));P[f+108>>2]=S(m*i)+S(S(q*j)+S(h*l));P[f+104>>2]=S(n*i)+S(S(o*j)+S(h*p))}function Kg(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;L[a+4>>2]=1065353216;L[a+8>>2]=1065353216;L[a+48>>2]=0;J[a+36|0]=1;L[a+12>>2]=1065353216;L[a+16>>2]=0;L[a+32>>2]=0;L[a+24>>2]=0;L[a+28>>2]=0;J[a+100|0]=1;L[a>>2]=16836;L[a+96>>2]=0;J[a+120|0]=1;L[a+88>>2]=0;L[a+92>>2]=0;L[a+116>>2]=0;J[a+140|0]=1;L[a+108>>2]=0;L[a+112>>2]=0;L[a+136>>2]=0;J[a+160|0]=1;L[a+128>>2]=0;L[a+132>>2]=0;L[a+168>>2]=0;J[a+164|0]=b;L[a+148>>2]=0;L[a+152>>2]=0;L[a+156>>2]=0;J[a+165|0]=c;L[8513]=L[8513]+1;f=ha[L[6798]](32,16)|0;h=L[a+24>>2];a:{if((h|0)<=0){break a}if((h|0)!=1){j=h&-2;while(1){e=d<<5;c=f+e|0;b=L[a+32>>2]+e|0;g=L[b+4>>2];L[c>>2]=L[b>>2];L[c+4>>2]=g;g=L[b+28>>2];L[c+24>>2]=L[b+24>>2];L[c+28>>2]=g;g=L[b+20>>2];L[c+16>>2]=L[b+16>>2];L[c+20>>2]=g;g=L[b+12>>2];L[c+8>>2]=L[b+8>>2];L[c+12>>2]=g;b=e|32;c=b+f|0;b=b+L[a+32>>2]|0;e=L[b+4>>2];L[c>>2]=L[b>>2];L[c+4>>2]=e;e=L[b+12>>2];L[c+8>>2]=L[b+8>>2];L[c+12>>2]=e;e=L[b+20>>2];L[c+16>>2]=L[b+16>>2];L[c+20>>2]=e;e=L[b+28>>2];L[c+24>>2]=L[b+24>>2];L[c+28>>2]=e;d=d+2|0;i=i+2|0;if((i|0)!=(j|0)){continue}break}}if(!(h&1)){break a}b=d<<5;c=b+f|0;b=b+L[a+32>>2]|0;d=L[b+4>>2];L[c>>2]=L[b>>2];L[c+4>>2]=d;d=L[b+28>>2];L[c+24>>2]=L[b+24>>2];L[c+28>>2]=d;d=L[b+20>>2];L[c+16>>2]=L[b+16>>2];L[c+20>>2]=d;d=L[b+12>>2];L[c+8>>2]=L[b+8>>2];L[c+12>>2]=d}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]=f;J[a+36|0]=1;L[a+28>>2]=1;b=f+(L[a+24>>2]<<5)|0;L[b+24>>2]=2;L[b+28>>2]=0;L[b+16>>2]=0;L[b+20>>2]=16;L[b+8>>2]=12;L[b+12>>2]=0;L[b>>2]=0;L[b+4>>2]=0;L[a+24>>2]=L[a+24>>2]+1;c=M[a+164|0];f=L[(c?a+128|0:a+148|0)>>2];b=L[a+32>>2];L[b+24>>2]=c?2:3;L[b+4>>2]=0;d=12;L[b+8>>2]=c?12:6;L[b>>2]=(f|0)/3;b:{if(M[a+165|0]){d=16;a=L[a+88>>2];break b}a=L[a+108>>2]/3|0}L[b+20>>2]=d;L[b+16>>2]=0;L[b+12>>2]=a}function GE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=S(0),g=S(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=S(0),q=S(0),r=0,s=0,t=0,u=S(0),v=S(0),w=S(0),x=S(0),y=0;e=fa-80|0;fa=e;x=S(ha[L[L[a>>2]+48>>2]](a));while(1){L[e+72>>2]=0;L[e+76>>2]=0;L[e+64>>2]=0;L[e+68>>2]=0;s=t<<2;y=s+(e- -64|0)|0;L[y>>2]=1065353216;i=P[b+32>>2];j=P[b>>2];k=P[b+16>>2];l=P[b+36>>2];m=P[b+4>>2];n=P[b+20>>2];f=P[b+40>>2];g=P[b+8>>2];h=P[b+24>>2];L[e+44>>2]=0;o=f;f=P[e+72>>2];p=g;g=P[e+64>>2];q=h;h=P[e+68>>2];P[e+40>>2]=S(o*f)+S(S(p*g)+S(q*h));P[e+36>>2]=S(l*f)+S(S(m*g)+S(h*n));P[e+32>>2]=S(i*f)+S(S(j*g)+S(k*h));r=e+32|0;ha[L[L[a>>2]+64>>2]](e+48|0,a,r);i=P[b+48>>2];j=P[b+8>>2];k=P[b>>2];l=P[b+4>>2];m=P[b+52>>2];n=P[b+24>>2];p=P[b+16>>2];q=P[b+20>>2];f=P[b+56>>2];g=P[b+40>>2];h=P[b+32>>2];u=P[b+36>>2];L[e+44>>2]=0;o=f;f=P[e+56>>2];v=S(g*f);g=P[e+48>>2];w=S(h*g);h=P[e+52>>2];P[e+40>>2]=o+S(v+S(w+S(u*h)));P[e+36>>2]=m+S(S(f*n)+S(S(g*p)+S(h*q)));P[e+32>>2]=i+S(S(f*j)+S(S(g*k)+S(h*l)));r=s+r|0;P[d+s>>2]=x+P[r>>2];L[y>>2]=-1082130432;i=P[b+32>>2];j=P[b>>2];k=P[b+16>>2];l=P[b+36>>2];m=P[b+4>>2];n=P[b+20>>2];f=P[b+40>>2];g=P[b+8>>2];h=P[b+24>>2];L[e+12>>2]=0;o=f;f=P[e+72>>2];p=g;g=P[e+64>>2];q=h;h=P[e+68>>2];P[e+8>>2]=S(o*f)+S(S(p*g)+S(q*h));P[e+4>>2]=S(l*f)+S(S(m*g)+S(h*n));P[e>>2]=S(i*f)+S(S(j*g)+S(k*h));ha[L[L[a>>2]+64>>2]](e+16|0,a,e);i=P[b+48>>2];j=P[b+8>>2];k=P[b>>2];l=P[b+4>>2];m=P[b+52>>2];n=P[b+24>>2];p=P[b+16>>2];q=P[b+20>>2];f=P[b+56>>2];g=P[b+40>>2];h=P[b+32>>2];u=P[b+36>>2];L[e+44>>2]=0;o=f;f=P[e+24>>2];v=S(g*f);g=P[e+16>>2];w=S(h*g);h=P[e+20>>2];P[e+40>>2]=o+S(v+S(w+S(u*h)));P[e+36>>2]=m+S(S(f*n)+S(S(g*p)+S(h*q)));P[e+32>>2]=i+S(S(f*j)+S(S(g*k)+S(h*l)));P[c+s>>2]=P[r>>2]-x;t=t+1|0;if((t|0)!=3){continue}break}fa=e+80|0}function vB(a,b,c){a=a|0;b=b|0;c=c|0;cc(a,b,c);P[b+52>>2]=P[a+48>>2];P[b+56>>2]=P[a+52>>2];P[b+60>>2]=P[a+56>>2];P[b- -64>>2]=P[a+60>>2];P[b+68>>2]=P[a- -64>>2];P[b+72>>2]=P[a+68>>2];P[b+76>>2]=P[a+72>>2];P[b+80>>2]=P[a+76>>2];P[b+84>>2]=P[a+80>>2];P[b+88>>2]=P[a+84>>2];P[b+92>>2]=P[a+88>>2];P[b+96>>2]=P[a+92>>2];P[b+100>>2]=P[a+96>>2];P[b+104>>2]=P[a+100>>2];P[b+108>>2]=P[a+104>>2];P[b+112>>2]=P[a+108>>2];P[b+116>>2]=P[a+112>>2];P[b+120>>2]=P[a+116>>2];P[b+124>>2]=P[a+120>>2];P[b+128>>2]=P[a+124>>2];P[b+132>>2]=P[a+128>>2];P[b+136>>2]=P[a+132>>2];P[b+140>>2]=P[a+136>>2];P[b+144>>2]=P[a+140>>2];P[b+148>>2]=P[a+144>>2];P[b+152>>2]=P[a+148>>2];P[b+156>>2]=P[a+152>>2];P[b+160>>2]=P[a+156>>2];P[b+164>>2]=P[a+160>>2];P[b+168>>2]=P[a+164>>2];P[b+172>>2]=P[a+168>>2];P[b+176>>2]=P[a+172>>2];P[b+228>>2]=P[a+868>>2];P[b+212>>2]=P[a+872>>2];P[b+196>>2]=P[a+680>>2];P[b+180>>2]=P[a+696>>2];P[b+232>>2]=P[a+932>>2];P[b+216>>2]=P[a+936>>2];P[b+200>>2]=P[a+684>>2];P[b+184>>2]=P[a+700>>2];P[b+236>>2]=P[a+996>>2];P[b+220>>2]=P[a+1e3>>2];P[b+204>>2]=P[a+688>>2];P[b+188>>2]=P[a+704>>2];L[b+244>>2]=M[a+1300|0];L[b+248>>2]=M[a+1301|0];P[b+276>>2]=P[a+1316>>2];P[b+324>>2]=P[a+1364>>2];L[b+252>>2]=M[a+1309|0];P[b+300>>2]=P[a+1340>>2];P[b+280>>2]=P[a+1320>>2];P[b+328>>2]=P[a+1368>>2];L[b+256>>2]=M[a+1310|0];P[b+304>>2]=P[a+1344>>2];P[b+284>>2]=P[a+1324>>2];P[b+332>>2]=P[a+1372>>2];L[b+260>>2]=M[a+1311|0];P[b+308>>2]=P[a+1348>>2];P[b+288>>2]=P[a+1328>>2];P[b+336>>2]=P[a+1376>>2];L[b+264>>2]=M[a+1312|0];P[b+312>>2]=P[a+1352>>2];P[b+292>>2]=P[a+1332>>2];P[b+340>>2]=P[a+1380>>2];L[b+268>>2]=M[a+1313|0];P[b+316>>2]=P[a+1356>>2];P[b+296>>2]=P[a+1336>>2];P[b+344>>2]=P[a+1384>>2];L[b+272>>2]=M[a+1314|0];P[b+320>>2]=P[a+1360>>2];return 3370}function Ed(a,b,c){var d=0,e=S(0),f=S(0),g=S(0),h=0;if(!L[a>>2]){L[a>>2]=c;L[c+32>>2]=0;return}d=L[b+40>>2];if(d){f=S(P[c>>2]+P[c+16>>2]);e=S(P[c+8>>2]+P[c+24>>2]);g=S(P[c+4>>2]+P[c+20>>2]);while(1){h=b+36|0;b=L[b+36>>2];b=L[h+(!(S(S(S(T(S(f-S(P[b>>2]+P[b+16>>2]))))+S(T(S(g-S(P[b+4>>2]+P[b+20>>2])))))+S(T(S(e-S(P[b+8>>2]+P[b+24>>2])))))>2]+P[d+16>>2]))))+S(T(S(g-S(P[d+4>>2]+P[d+20>>2])))))+S(T(S(e-S(P[d+8>>2]+P[d+24>>2]))))))<<2)>>2];d=L[b+40>>2];if(d){continue}break}}h=L[b+32>>2];d=L[a+4>>2];a:{if(d){L[a+4>>2]=0;break a}L[8513]=L[8513]+1;d=ha[L[6798]](44,16)|0;L[d>>2]=0;L[d+4>>2]=0;L[d+40>>2]=0;L[d+32>>2]=0;L[d+36>>2]=0;L[d+24>>2]=0;L[d+28>>2]=0;L[d+16>>2]=0;L[d+20>>2]=0;L[d+8>>2]=0;L[d+12>>2]=0}L[d+36>>2]=0;L[d+40>>2]=0;L[d+32>>2]=h;f=P[c>>2];e=P[b>>2];P[d>>2]=e>f?f:e;f=P[c+16>>2];e=P[b+16>>2];P[d+16>>2]=e>2];e=P[b+4>>2];P[d+4>>2]=e>f?f:e;f=P[c+20>>2];e=P[b+20>>2];P[d+20>>2]=e>2];e=P[b+8>>2];P[d+8>>2]=e>f?f:e;f=P[c+24>>2];e=P[b+24>>2];P[d+24>>2]=e>2]+40>>2]==(b|0))<<2)+h|0)+36>>2]=d;L[d+36>>2]=b;L[b+32>>2]=d;L[d+40>>2]=c;L[c+32>>2]=d;f=P[d>>2];while(1){a=d;d=h;c:{if(!(P[d>>2]<=f)|!(P[d+4>>2]<=P[a+4>>2])|(!(P[d+8>>2]<=P[a+8>>2])|!(P[d+16>>2]>=P[a+16>>2]))){break c}if(!(P[d+20>>2]>=P[a+20>>2])){break c}if(P[d+24>>2]>=P[a+24>>2]){break b}}a=L[d+36>>2];f=P[a>>2];b=L[d+40>>2];e=P[b>>2];f=e>f?f:e;P[d>>2]=f;e=P[a+16>>2];g=P[b+16>>2];P[d+16>>2]=e>g?e:g;e=P[a+4>>2];g=P[b+4>>2];P[d+4>>2]=e>2];g=P[b+20>>2];P[d+20>>2]=e>g?e:g;e=P[a+8>>2];g=P[b+8>>2];P[d+8>>2]=e>2];g=P[b+24>>2];P[d+24>>2]=e>g?e:g;h=L[d+32>>2];if(h){continue}break}break b}L[d+36>>2]=b;L[b+32>>2]=d;L[d+40>>2]=c;L[c+32>>2]=d;L[a>>2]=d}}function cg(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=L[a+56>>2];a:{if(g){break a}d=L[a+52>>2];b:{if(d){L[a+52>>2]=L[d+8>>2];g=L[d>>2];break b}L[8513]=L[8513]+1;d=ha[L[6798]](12,16)|0;e=L[a+60>>2];L[d+8>>2]=0;L[d+4>>2]=e;L[8513]=L[8513]+1;g=ha[L[6798]](R(e,24),16)|0;L[d>>2]=g;L[d+8>>2]=L[a+48>>2];L[a+48>>2]=d}h=L[d+4>>2];if((h|0)<=0){break a}e=g;if(h>>>0>=4){m=h&-4;d=g;while(1){e=d+96|0;j=i+4|0;L[d+72>>2]=(h|0)>(j|0)?e:0;L[d+48>>2]=(h|0)>(i|3)?d+72|0:0;L[d+24>>2]=(h|0)>(i|2)?d+48|0:0;L[d>>2]=(h|0)>(i|1)?d+24|0:0;i=j;d=e;f=f+4|0;if((m|0)!=(f|0)){continue}break}}d=h&3;if(!d){break a}while(1){f=e;e=e+24|0;j=j+1|0;L[f>>2]=(h|0)>(j|0)?e:0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}L[a+56>>2]=L[g>>2];L[g+16>>2]=0;L[g+20>>2]=0;L[g+8>>2]=0;L[g+12>>2]=0;L[g>>2]=0;L[g+4>>2]=0;f=L[a+56>>2];c:{if(f){break c}d=L[a+52>>2];d:{if(d){L[a+52>>2]=L[d+8>>2];f=L[d>>2];break d}L[8513]=L[8513]+1;d=ha[L[6798]](12,16)|0;e=L[a+60>>2];L[d+8>>2]=0;L[d+4>>2]=e;L[8513]=L[8513]+1;f=ha[L[6798]](R(e,24),16)|0;L[d>>2]=f;L[d+8>>2]=L[a+48>>2];L[a+48>>2]=d}k=L[d+4>>2];if((k|0)<=0){break c}l=0;j=0;e=f;if(k>>>0>=4){m=k&-4;i=0;d=f;h=0;while(1){e=d+96|0;j=i+4|0;L[d+72>>2]=(k|0)>(j|0)?e:0;L[d+48>>2]=(i|3)<(k|0)?d+72|0:0;L[d+24>>2]=(i|2)<(k|0)?d+48|0:0;L[d>>2]=(i|1)<(k|0)?d+24|0:0;i=j;d=e;h=h+4|0;if((m|0)!=(h|0)){continue}break}}d=k&3;if(!d){break c}while(1){i=e;e=e+24|0;j=j+1|0;L[i>>2]=(k|0)>(j|0)?e:0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}L[a+56>>2]=L[f>>2];L[f+16>>2]=0;L[f+20>>2]=0;L[f+8>>2]=0;L[f+12>>2]=0;L[f>>2]=0;L[f+4>>2]=0;L[g+8>>2]=f;L[f+8>>2]=g;e=L[a+100>>2];L[g+20>>2]=e;L[f+20>>2]=e;L[g+12>>2]=c;L[f+12>>2]=b;L[g+16>>2]=0;L[f+16>>2]=0;c=L[a+116>>2];b=c+1|0;L[a+116>>2]=b;if((c|0)>=L[a+120>>2]){L[a+120>>2]=b}return g}function nn(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:{l=L[a+4>>2];b=L[a+48>>2];if((l|0)>=(b|0)){break a}b:{if((b|0)<=L[a+8>>2]){d=L[a+12>>2];break b}if(b){L[8513]=L[8513]+1;d=ha[L[6798]](b<<2,16)|0;c=L[a+4>>2]}else{c=l}g=L[a+12>>2];c:{d:{if((c|0)>0){if(c>>>0>=4){j=c&-4;while(1){e=f<<2;L[e+d>>2]=L[e+g>>2];h=e|4;L[h+d>>2]=L[g+h>>2];h=e|8;L[h+d>>2]=L[g+h>>2];e=e|12;L[e+d>>2]=L[e+g>>2];f=f+4|0;i=i+4|0;if((j|0)!=(i|0)){continue}break}}c=c&3;if(!c){break d}while(1){e=f<<2;L[e+d>>2]=L[e+g>>2];f=f+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}break d}if(g){break d}break c}if(g?M[a+16|0]:0){L[8514]=L[8514]+1;ha[L[6799]](g)}}L[a+12>>2]=d;J[a+16|0]=1;L[a+8>>2]=b}c=l<<2;j=b<<2;pa(c+d|0,0,j-c|0);L[a+4>>2]=b;g=L[a+24>>2];if((g|0)<(b|0)){e:{if((b|0)<=L[a+28>>2]){d=L[a+32>>2];break e}f:{if(!b){d=0;c=g;break f}L[8513]=L[8513]+1;d=ha[L[6798]](j,16)|0;c=L[a+24>>2]}e=L[a+32>>2];g:{if((c|0)>0){k=0;f=0;if(c>>>0>=4){n=c&-4;i=0;while(1){h=f<<2;L[h+d>>2]=L[e+h>>2];m=h|4;L[m+d>>2]=L[e+m>>2];m=h|8;L[m+d>>2]=L[e+m>>2];h=h|12;L[h+d>>2]=L[e+h>>2];f=f+4|0;i=i+4|0;if((n|0)!=(i|0)){continue}break}}c=c&3;if(!c){break g}while(1){i=f<<2;L[i+d>>2]=L[e+i>>2];f=f+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}break g}if(e){break g}L[a+32>>2]=d;L[a+28>>2]=b;J[a+36|0]=1;break e}if(e?M[a+36|0]:0){L[8514]=L[8514]+1;ha[L[6799]](e)}L[a+32>>2]=d;J[a+36|0]=1;L[a+28>>2]=b}c=g<<2;pa(c+d|0,0,j-c|0)}L[a+24>>2]=b;if((b|0)>0){pa(L[a+12>>2],255,j);pa(L[a+32>>2],255,j)}if((l|0)<=0){break a}c=L[a+32>>2];g=L[a+72>>2];d=L[a+12>>2];f=0;while(1){b=L[g+(f<<3)>>2];b=(b<<15^-1)+b|0;b=R(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;b=d+((L[a+48>>2]-1&(b>>16^b))<<2)|0;L[c+(f<<2)>>2]=L[b>>2];L[b>>2]=f;f=f+1|0;if((l|0)!=(f|0)){continue}break}}}function hg(a){var b=0,c=0,d=0,e=0,f=S(0),g=0,h=0,i=S(0),j=S(0),k=0,l=0,m=S(0),n=S(0),o=S(0),p=S(0);h=L[a+752>>2];if((h|0)>0){l=L[a+760>>2];while(1){b=l+R(g,44)|0;e=L[b+12>>2];c=L[b+8>>2];f=P[c+8>>2];m=S(P[e+8>>2]-f);d=L[b+16>>2];i=P[c+12>>2];j=S(P[d+12>>2]-i);n=S(P[d+8>>2]-f);i=S(P[e+12>>2]-i);f=S(S(m*j)-S(n*i));o=S(f*f);p=i;f=P[c+16>>2];i=S(P[d+16>>2]-f);f=S(P[e+16>>2]-f);j=S(S(p*i)-S(j*f));f=S(S(f*n)-S(i*m));P[b+36>>2]=_(S(o+S(S(j*j)+S(f*f))));g=g+1|0;if((h|0)!=(g|0)){continue}break}}e=L[a+712>>2];a:{if((e|0)<=0){g=0;break a}b=0;L[8513]=L[8513]+1;e=e<<2;g=ha[L[6798]](e,16)|0;pa(g,0,e);e=L[a+712>>2];if((e|0)<=0){break a}c=L[a+720>>2];if(e>>>0>=8){h=e&-8;d=0;while(1){L[(c+R(b,104)|0)+92>>2]=0;L[(c+R(b|1,104)|0)+92>>2]=0;L[(c+R(b|2,104)|0)+92>>2]=0;L[(c+R(b|3,104)|0)+92>>2]=0;L[(c+R(b|4,104)|0)+92>>2]=0;L[(c+R(b|5,104)|0)+92>>2]=0;L[(c+R(b|6,104)|0)+92>>2]=0;L[(c+R(b|7,104)|0)+92>>2]=0;b=b+8|0;d=d+8|0;if((h|0)!=(d|0)){continue}break}}h=e&7;if(!h){break a}d=0;while(1){L[(c+R(b,104)|0)+92>>2]=0;b=b+1|0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}h=L[a+752>>2];if((h|0)>0){b=L[a+720>>2];l=L[a+760>>2];e=0;while(1){c=R(e,44)+l|0;f=P[c+36>>2];d=L[c+8>>2];k=((d-b|0)/104<<2)+g|0;L[k>>2]=L[k>>2]+1;f=S(T(f));P[d+92>>2]=P[d+92>>2]+f;d=L[c+12>>2];k=((d-b|0)/104<<2)+g|0;L[k>>2]=L[k>>2]+1;P[d+92>>2]=P[d+92>>2]+f;c=L[c+16>>2];d=((c-b|0)/104<<2)+g|0;L[d>>2]=L[d>>2]+1;P[c+92>>2]=P[c+92>>2]+f;e=e+1|0;if((h|0)!=(e|0)){continue}break}e=L[a+712>>2]}b:{c:{if((e|0)>0){a=L[a+720>>2];b=0;while(1){c=L[(b<<2)+g>>2];d:{if((c|0)>0){d=a+R(b,104)|0;P[d+92>>2]=P[d+92>>2]/S(c|0);break d}L[(a+R(b,104)|0)+92>>2]=0}b=b+1|0;if((e|0)!=(b|0)){continue}break}break c}if(!g){break b}}if(g){L[8514]=L[8514]+1;ha[L[6799]](g)}}}function bH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=S(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=S(0),q=S(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=0,B=0;c=fa-96|0;fa=c;e=P[a+76>>2];i=P[a+36>>2];f=P[a+32>>2];j=P[a+80>>2];n=P[a+52>>2];o=P[a+44>>2];p=P[a+48>>2];k=P[a+84>>2];q=P[a+68>>2];w=P[a+60>>2];x=P[a- -64>>2];y=P[a+28>>2];l=P[b+8>>2];g=P[b>>2];h=P[b+4>>2];L[c+92>>2]=0;u=S(k+S(S(l*q)+S(S(g*w)+S(h*x))));P[c+88>>2]=u;v=S(j+S(S(l*n)+S(S(g*o)+S(h*p))));P[c+84>>2]=v;l=S(e+S(S(l*i)+S(S(g*y)+S(h*f))));P[c+80>>2]=l;g=P[b+20>>2];h=P[b+24>>2];m=P[b+16>>2];L[c+76>>2]=0;z=S(k+S(S(h*q)+S(S(m*w)+S(x*g))));P[c+72>>2]=z;r=S(j+S(S(h*n)+S(S(m*o)+S(p*g))));P[c+68>>2]=r;s=S(e+S(S(h*i)+S(S(m*y)+S(f*g))));P[c+64>>2]=s;g=P[b+36>>2];h=P[b+40>>2];m=P[b+32>>2];L[c+60>>2]=0;k=S(k+S(S(h*q)+S(S(m*w)+S(x*g))));P[c+56>>2]=k;j=S(j+S(S(h*n)+S(S(m*o)+S(p*g))));P[c+52>>2]=j;e=S(e+S(S(h*i)+S(S(m*y)+S(f*g))));P[c+48>>2]=e;L[c+44>>2]=0;n=S(S(S(u+z)+k)*S(.3333333432674408));P[c+40>>2]=n;o=S(S(S(v+r)+j)*S(.3333333432674408));P[c+36>>2]=o;p=S(S(S(l+s)+e)*S(.3333333432674408));P[c+32>>2]=p;b=L[a+8>>2];if(ha[L[L[b>>2]+48>>2]](b)&16384){L[c+24>>2]=0;L[c+28>>2]=0;L[c+16>>2]=1065353216;L[c+20>>2]=1065353216;b=L[a+8>>2];L[c+12>>2]=0;i=S(s-l);f=S(j-v);j=S(e-l);q=S(r-v);e=S(S(i*f)-S(j*q));s=e;r=S(e*e);k=S(k-u);e=f;f=S(z-u);e=S(S(q*k)-S(e*f));i=S(S(f*j)-S(k*i));f=S(S(1)/S(_(S(r+S(S(e*e)+S(i*i))))));P[c+8>>2]=S(s*f)+n;P[c+4>>2]=S(i*f)+o;P[c>>2]=p+S(e*f);ha[L[L[b>>2]+8>>2]](b,c+32|0,c,c+16|0)}d=L[a+8>>2];A=c+80|0;t=c- -64|0;b=a+12|0;ha[L[L[d>>2]+8>>2]](d,A,t,b);d=L[a+8>>2];B=t;t=c+48|0;ha[L[L[d>>2]+8>>2]](d,B,t,b);a=L[a+8>>2];ha[L[L[a>>2]+8>>2]](a,t,A,b);fa=c+96|0}function iI(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=0,i=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=S(0),o=S(0),p=S(0),q=S(0);e=fa-48|0;fa=e;f=L[c+12>>2];L[e+24>>2]=L[c+8>>2];L[e+28>>2]=f;f=L[c+4>>2];L[e+16>>2]=L[c>>2];L[e+20>>2]=f;f=L[d+12>>2];L[e+40>>2]=L[d+8>>2];L[e+44>>2]=f;f=L[d+4>>2];L[e+32>>2]=L[d>>2];L[e+36>>2]=f;a:{if(L[b+60>>2]==2){fc(a- -64|0,L[b+48>>2]);L[b+48>>2]=Bb(a+4|0,e+16|0,b);h=1;break a}h=1;L[a+168>>2]=L[a+168>>2]+1;b:{f=L[b+48>>2];if(!(P[f>>2]<=P[e+32>>2])|!(P[f+16>>2]>=P[e+16>>2])|(!(P[f+4>>2]<=P[e+36>>2])|!(P[f+20>>2]>=P[e+20>>2]))){break b}if(!(P[f+8>>2]<=P[e+40>>2])|!(P[f+24>>2]>=P[e+24>>2])){break b}k=P[b+20>>2];l=P[b+24>>2];n=P[c>>2];o=P[c+4>>2];p=P[c+8>>2];m=P[b+16>>2];i=P[b+36>>2];j=P[b+40>>2];q=P[b+32>>2];g=P[a+140>>2];L[e+12>>2]=0;j=S(g*S(S(j-l)*S(.5)));P[e+8>>2]=j;i=S(g*S(S(i-k)*S(.5)));P[e+4>>2]=i;g=S(g*S(S(q-m)*S(.5)));P[e>>2]=g;if(S(n-m)>2]=-g}if(S(o-k)>2]=-i}if(S(p-l)>2]=-j}h=Dd(a+4|0,f,e+16|0,e,S(.05000000074505806));if(!h){break a}L[a+172>>2]=L[a+172>>2]+1;break a}Gc(a+4|0,f,e+16|0);L[a+172>>2]=L[a+172>>2]+1}f=L[b+52>>2];L[(f?f+56|0:((L[b+60>>2]<<2)+a|0)+124|0)>>2]=L[b+56>>2];f=L[b+56>>2];if(f){L[f+52>>2]=L[b+52>>2]}f=L[c+4>>2];L[b+16>>2]=L[c>>2];L[b+20>>2]=f;f=L[c+12>>2];L[b+24>>2]=L[c+8>>2];L[b+28>>2]=f;c=L[d+4>>2];L[b+32>>2]=L[d>>2];L[b+36>>2]=c;c=L[d+12>>2];L[b+40>>2]=L[d+8>>2];L[b+44>>2]=c;c=L[a+144>>2];L[b+60>>2]=c;L[b+52>>2]=0;c=(c<<2)+a|0;L[b+56>>2]=L[c+124>>2];d=L[c+124>>2];if(d){L[d+52>>2]=b}L[c+124>>2]=b;c:{if(!h){break c}J[a+194|0]=1;if(M[a+193|0]){break c}L[e>>2]=5824;L[e+4>>2]=a;c=a- -64|0;_e(c,L[c>>2],L[b+48>>2],e);_e(a+4|0,L[a+4>>2],L[b+48>>2],e)}fa=e+48|0}function sk(a,b,c,d,e,f){var g=S(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=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);l=P[e+40>>2];m=P[e+24>>2];j=P[e+36>>2];k=P[e+20>>2];g=P[f+4>>2];o=P[e+8>>2];r=P[e+4>>2];s=P[e+32>>2];h=P[f>>2];t=P[e>>2];i=P[f+8>>2];v=P[e+16>>2];L[a+44>>2]=0;L[a+28>>2]=0;L[a+12>>2]=0;w=S(S(s*g)+S(S(t*S(0))-S(v*i)));x=S(S(j*g)+S(S(r*S(0))-S(k*i)));y=S(S(l*g)+S(S(o*S(0))-S(m*i)));n=S(S(d-S(S(S(w*S(0))+S(i*x))-S(g*y)))+c);z=S(S(S(o*i)+S(m*S(0)))-S(l*h));A=S(S(S(r*i)+S(k*S(0)))-S(j*h));B=S(S(S(t*i)+S(v*S(0)))-S(s*h));q=S(S(d-S(S(h*z)+S(S(A*S(0))-S(i*B))))+c);p=S(S(S(0)-S(S(y*S(0))+S(S(g*w)-S(x*h))))+S(0));u=S(S(S(0)-S(S(S(B*S(0))+S(i*A))-S(g*z)))+S(0));o=S(S(l*S(0))+S(S(h*m)-S(o*g)));j=S(S(j*S(0))+S(S(h*k)-S(r*g)));k=S(S(s*S(0))+S(S(h*v)-S(t*g)));l=S(S(S(0)-S(S(h*o)+S(S(j*S(0))-S(i*k))))+S(0));m=S(S(S(0)-S(S(S(k*S(0))+S(i*j))-S(g*o)))+S(0));r=S(S(u*l)-S(m*q));j=S(S(d-S(S(o*S(0))+S(S(g*k)-S(j*h))))+c);g=S(S(S(0)-S(S(z*S(0))+S(S(g*B)-S(A*h))))+S(0));k=S(S(q*j)-S(l*g));d=S(S(S(0)-S(S(h*y)+S(S(x*S(0))-S(i*w))))+S(0));h=S(S(g*m)-S(j*u));c=S(S(1)/S(S(p*r)+S(S(n*k)+S(d*h))));i=S(S(S(n*q)-S(u*d))*c);b=S(S(1)/b);q=S(S(S(d*g)-S(q*p))*c);o=S(q*S(0));g=S(S(S(p*u)-S(g*n))*c);s=S(g*S(0));P[a+40>>2]=S(i*b)+S(o+s);t=S(S(S(d*m)-S(l*n))*c);d=S(S(S(p*l)-S(j*d))*c);l=S(d*S(0));n=S(S(S(n*j)-S(m*p))*c);p=S(n*S(0));P[a+36>>2]=S(t*b)+S(l+p);m=S(r*c);j=S(k*c);k=S(j*S(0));c=S(h*c);h=S(c*S(0));P[a+32>>2]=S(m*b)+S(k+h);i=S(i*S(0));P[a+24>>2]=i+S(o+S(b*g));g=S(t*S(0));P[a+20>>2]=g+S(l+S(b*n));n=S(m*S(0));P[a+16>>2]=n+S(k+S(b*c));P[a+8>>2]=i+S(S(q*b)+s);P[a+4>>2]=g+S(S(d*b)+p);P[a>>2]=n+S(S(j*b)+h)}function WG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=S(0),g=S(0),h=S(0),i=0,j=0,k=0,l=0,m=S(0),n=0;a=fa-608|0;fa=a;g=S(P[b+124>>2]-P[b+60>>2]);h=S(g*g);g=S(P[b+116>>2]-P[b+52>>2]);f=S(g*g);g=S(P[b+120>>2]-P[b+56>>2]);f=S(h+S(f+S(g*g)));g=P[b+252>>2];a:{b:{if(f>2]-P[c+60>>2]);m=S(f*f);f=S(P[c+116>>2]-P[c+52>>2]);h=S(f*f);f=S(P[c+120>>2]-P[c+56>>2]);h=S(m+S(h+S(f*f)));f=P[c+252>>2];if(h>2];g=P[c+248>>2];d=a+556|0;L[d+4>>2]=35;L[d+8>>2]=0;L[d>>2]=14328;L[d+44>>2]=1025758986;L[d+12>>2]=1065353216;L[d+16>>2]=1065353216;L[d>>2]=14044;L[d+20>>2]=1065353216;L[d+24>>2]=0;P[d+44>>2]=g;P[d+28>>2]=g;L[d+4>>2]=8;L[d>>2]=16192;L[a+552>>2]=0;L[a+544>>2]=1566444395;L[a+548>>2]=0;L[a+380>>2]=6864;J[a+352|0]=0;L[a+328>>2]=953267991;e=a+4|0;L[e+12>>2]=d;L[e+8>>2]=i;L[e+4>>2]=a+20;L[e>>2]=18416;i=b+4|0;j=b+68|0;k=c+4|0;l=c+68|0;g=S(1);c:{if(!Eg(e,i,j,k,l,a+380|0)){break c}f=P[a+544>>2];if(f>2]){P[b+244>>2]=f}if(f>2]){P[c+244>>2]=f}g=S(1);if(!(f>2];f=P[b+248>>2];d=a+556|0;L[d+4>>2]=35;L[d+8>>2]=0;L[d>>2]=14328;L[d+44>>2]=1025758986;L[d+12>>2]=1065353216;L[d+16>>2]=1065353216;L[d>>2]=14044;L[d+20>>2]=1065353216;L[d+24>>2]=0;P[d+44>>2]=f;P[d+28>>2]=f;L[d+4>>2]=8;L[d>>2]=16192;L[a+552>>2]=0;L[a+544>>2]=1566444395;L[a+548>>2]=0;L[a+380>>2]=6864;J[a+352|0]=0;L[a+328>>2]=953267991;e=a+4|0;L[e+12>>2]=n;L[e+8>>2]=d;L[e+4>>2]=a+20;L[e>>2]=18416;d:{if(!Eg(e,i,j,k,l,a+380|0)){break d}f=P[a+544>>2];if(f>2]){P[b+244>>2]=f}if(f>2]){P[c+244>>2]=f}if(!(f>2]=a;L[g+8>>2]=b;a=L[g+8>>2];h=fa-16|0;fa=h;L[h+12>>2]=L[g+12>>2]+708;L[h+8>>2]=a;a=L[h+8>>2];b=fa-128|0;fa=b;L[b+124>>2]=L[h+12>>2];L[b+120>>2]=a;k=L[b+124>>2];a=fa-16|0;L[a+12>>2]=L[b+120>>2];L[b+116>>2]=L[L[a+12>>2]+4>>2];c=L[b+116>>2];e=b+12|0;pa(e,0,104);d=fa-16|0;fa=d;L[d+12>>2]=e;a=L[d+12>>2];Bh(a);L[(fa-16|0)+12>>2]=a+8;L[(fa-16|0)+12>>2]=a+24;L[(fa-16|0)+12>>2]=a+40;L[(fa-16|0)+12>>2]=a+56;L[(fa-16|0)+12>>2]=a+72;fa=d+16|0;a=fa-32|0;fa=a;L[a+28>>2]=k;L[a+24>>2]=c;L[a+20>>2]=e;d=fa-16|0;i=L[a+28>>2];L[d+12>>2]=i;L[a+16>>2]=L[L[d+12>>2]+4>>2];a:{if(L[a+24>>2]>2]){L[a+12>>2]=L[a+24>>2];while(1){if(L[a+12>>2]>2]){L[a+12>>2]=L[a+12>>2]+1;continue}break}break a}d=L[a+24>>2];e=fa-16|0;L[e+12>>2]=i;if(L[L[e+12>>2]+4>>2]<(d|0)){e=L[a+24>>2];d=fa-16|0;fa=d;L[d+12>>2]=i;L[d+8>>2]=e;c=fa-16|0;e=L[d+12>>2];L[c+12>>2]=e;if(L[L[c+12>>2]+8>>2]>2]){f=L[d+8>>2];c=fa-16|0;fa=c;L[c+8>>2]=e;L[c+4>>2]=f;j=L[c+8>>2];b:{if(L[c+4>>2]){l=L[c+4>>2];f=fa-16|0;fa=f;L[f+12>>2]=j;L[f+8>>2]=l;L[f+4>>2]=0;j=R(L[f+8>>2],104);L[8513]=L[8513]+1;j=ha[L[6798]](j,16)|0;fa=f+16|0;L[c+12>>2]=j;break b}L[c+12>>2]=0}fa=c+16|0;L[d+4>>2]=L[c+12>>2];c=fa-16|0;L[c+12>>2]=e;Ch(e,L[L[c+12>>2]+4>>2],L[d+4>>2]);c=fa-16|0;L[c+12>>2]=e;Db(e,L[L[c+12>>2]+4>>2]);jb(e);J[e+16|0]=1;L[e+12>>2]=L[d+4>>2];L[e+8>>2]=L[d+8>>2]}fa=d+16|0}L[a+8>>2]=L[a+16>>2];while(1){if(L[a+8>>2]>2]){qa(L[i+12>>2]+R(L[a+8>>2],104)|0,L[a+20>>2],104);L[a+8>>2]=L[a+8>>2]+1;continue}break}}L[i+4>>2]=L[a+24>>2];fa=a+32|0;Ch(L[b+120>>2],L[b+116>>2],L[k+12>>2]);fa=b+128|0;fa=h+16|0;fa=g+16|0}function ZA(a,b){a=a|0;b=b|0;var c=S(0),d=S(0),e=S(0),f=S(0),g=S(0);a:{b:{if(M[a+48|0]){L[b>>2]=0;a=0;break b}L[b>>2]=4;L[b+4>>2]=2;sg(a,L[a+28>>2]+4|0,L[a+32>>2]+4|0);J[a+297|0]=0;L[a+1088>>2]=0;e=P[a+192>>2];f=P[a+196>>2];c:{if(!(e<=f)){break c}c=P[a+924>>2];d=P[a+892>>2];g=P[a+908>>2];d=Za(S(S(c*P[a+864>>2])+S(S(d*P[a+832>>2])+S(P[a+848>>2]*g))),S(S(c*P[a+860>>2])+S(S(d*P[a+828>>2])+S(P[a+844>>2]*g))));d:{if(e>=f){break d}if(dS(3.1415927410125732))){break e}c=S(c+S(-6.2831854820251465))}g=S(T(c));c=Na(S(f-d),S(6.2831854820251465));f:{if(cS(3.1415927410125732))){break f}c=S(c+S(-6.2831854820251465))}d=gf)){break d}c=Na(S(d-f),S(6.2831854820251465));g:{if(cS(3.1415927410125732))){break g}c=S(c+S(-6.2831854820251465))}g=S(T(c));c=Na(S(d-e),S(6.2831854820251465));h:{if(cS(3.1415927410125732))){break h}c=S(c+S(-6.2831854820251465))}d=g>S(T(c))?S(d+S(-6.2831854820251465)):d}P[a+1084>>2]=d;if(!(d>2]=d-e}J[a+296|0]=0;c=P[a+1032>>2];P[a+1080>>2]=c;i:{j:{k:{e=P[a+188>>2];f=P[a+184>>2];if(e>=f){if(c>e){break k}e=f;if(c>2]=0;if(M[a+1096|0]){break j}break i}J[a+296|0]=1;P[a+1032>>2]=c-e}L[b>>2]=L[b>>2]+1;L[b+4>>2]=L[b+4>>2]-1}if(!(M[a+297|0]|M[a+1112|0])){break a}L[b>>2]=L[b>>2]+1;a=L[b+4>>2]-1|0}L[b+4>>2]=a}}function ig(a){var b=0,c=0,d=0,e=0,f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=0,l=0,m=S(0),n=S(0),o=S(0),p=S(0);c=L[a+712>>2];a:{if((c|0)<=0){break a}if(c>>>0>=4){k=c&-4;while(1){b=L[a+720>>2]+R(d,104)|0;L[b+72>>2]=0;L[b+76>>2]=0;L[b+80>>2]=0;L[b+84>>2]=0;b=L[a+720>>2]+R(d|1,104)|0;L[b+72>>2]=0;L[b+76>>2]=0;L[b+80>>2]=0;L[b+84>>2]=0;b=L[a+720>>2]+R(d|2,104)|0;L[b+72>>2]=0;L[b+76>>2]=0;L[b+80>>2]=0;L[b+84>>2]=0;b=L[a+720>>2]+R(d|3,104)|0;L[b+72>>2]=0;L[b+76>>2]=0;L[b+80>>2]=0;L[b+84>>2]=0;d=d+4|0;l=l+4|0;if((k|0)!=(l|0)){continue}break}}b=c&3;if(!b){break a}while(1){c=L[a+720>>2]+R(d,104)|0;L[c+72>>2]=0;L[c+76>>2]=0;L[c+80>>2]=0;L[c+84>>2]=0;d=d+1|0;e=e+1|0;if((b|0)!=(e|0)){continue}break}}l=L[a+752>>2];if((l|0)>0){k=0;while(1){b=L[a+760>>2]+R(k,44)|0;d=L[b+12>>2];h=P[d+12>>2];e=L[b+8>>2];f=P[e+12>>2];c=L[b+16>>2];j=P[c+12>>2];p=P[d+16>>2];n=P[c+8>>2];i=P[e+16>>2];o=P[c+16>>2];g=P[e+8>>2];m=P[d+8>>2];L[b+32>>2]=0;m=S(m-g);j=S(j-f);g=S(n-g);h=S(h-f);f=S(S(m*j)-S(g*h));n=h;h=S(o-i);o=j;j=S(p-i);i=S(S(n*h)-S(o*j));g=S(S(j*g)-S(h*m));h=S(S(1)/S(_(S(S(f*f)+S(S(i*i)+S(g*g))))));P[b+28>>2]=f*h;P[b+24>>2]=g*h;P[b+20>>2]=i*h;P[e+80>>2]=f+P[e+80>>2];P[e+76>>2]=g+P[e+76>>2];P[e+72>>2]=i+P[e+72>>2];P[d+72>>2]=i+P[d+72>>2];P[d+76>>2]=g+P[d+76>>2];P[d+80>>2]=f+P[d+80>>2];P[c+72>>2]=i+P[c+72>>2];P[c+76>>2]=g+P[c+76>>2];P[c+80>>2]=f+P[c+80>>2];k=k+1|0;if((l|0)!=(k|0)){continue}break}}d=L[a+712>>2];if((d|0)>0){c=L[a+720>>2];e=0;while(1){a=c+R(e,104)|0;f=P[a+80>>2];i=P[a+72>>2];g=P[a+76>>2];h=S(_(S(S(f*f)+S(S(i*i)+S(g*g)))));if(h>S(1.1920928955078125e-7)){j=f;f=S(S(1)/h);P[a+80>>2]=j*f;P[a+76>>2]=g*f;P[a+72>>2]=i*f}e=e+1|0;if((d|0)!=(e|0)){continue}break}}}function ct(a,b,c){a=a|0;b=S(b);c=S(c);var d=S(0),e=0,f=0,g=0,h=0,i=S(0),j=S(0),k=S(0),l=S(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);g=fa-16|0;fa=g;L[g+12>>2]=a;P[g+8>>2]=b;P[g+4>>2]=c;a=L[g+12>>2];v=P[g+4>>2];h=fa-16|0;fa=h;P[h+12>>2]=P[g+8>>2];c=P[a+692>>2];a:{if(!(c>S(0))){break a}d=P[a+688>>2];b=Na(S(P[h+12>>2]-d),S(6.2831854820251465));b:{if(bS(3.1415927410125732))){break b}b=S(b+S(-6.2831854820251465))}if(!(S(-c)>b)&b<=c){break a}c:{if(b>S(0)){b=Na(S(c+d),S(6.2831854820251465));if(bS(3.1415927410125732))){break c}b=S(b+S(-6.2831854820251465));break c}b=Na(S(d-c),S(6.2831854820251465));if(bS(3.1415927410125732))){break c}b=S(b+S(-6.2831854820251465))}P[h+12>>2]=b}e=L[a+32>>2];b=P[a+652>>2];c=P[a+620>>2];d=P[a+636>>2];m=S(S(P[e+44>>2]*b)+S(S(P[e+36>>2]*c)+S(d*P[e+40>>2])));f=L[a+28>>2];n=P[f+44>>2];i=P[a+584>>2];o=P[f+36>>2];j=P[a+552>>2];k=P[a+568>>2];p=P[f+40>>2];w=S(m*S(S(n*i)+S(S(o*j)+S(k*p))));q=S(S(P[e+12>>2]*b)+S(S(P[e+4>>2]*c)+S(d*P[e+8>>2])));r=P[f+12>>2];s=P[f+4>>2];t=P[f+8>>2];x=S(q*S(S(r*i)+S(S(s*j)+S(k*t))));u=P[f+28>>2];l=S(u*i);i=P[f+20>>2];y=S(i*j);j=P[f+24>>2];l=S(l+S(y+S(k*j)));k=S(S(P[e+28>>2]*b)+S(S(P[e+20>>2]*c)+S(d*P[e+24>>2])));b=P[a+588>>2];c=P[a+556>>2];d=P[a+572>>2];P[a+680>>2]=S(P[h+12>>2]-S(Za(S(w+S(x+S(l*k))),S(S(m*S(S(n*b)+S(S(o*c)+S(p*d))))+S(S(q*S(S(r*b)+S(S(s*c)+S(t*d))))+S(S(S(u*b)+S(S(i*c)+S(j*d)))*k))))*P[a+732>>2]))/v;fa=h+16|0;fa=g+16|0}function Vy(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=0,f=S(0),g=S(0),h=S(0),i=0,j=0,k=S(0);a=fa-160|0;fa=a;a:{b:{switch((L[b+388>>2]&15)-1|0){case 0:L[a>>2]=21416;e=L[c+12>>2];f=P[e+56>>2];g=P[e+52>>2];i=L[c+8>>2];j=L[i+236>>2];h=P[e+48>>2];e=L[b+192>>2];d=S(ha[L[L[e>>2]+48>>2]](e));e=L[c+4>>2];ha[L[L[e>>2]+8>>2]](e,L[c+12>>2],a+144|0,a+128|0);e=L[a+156>>2];L[a+104>>2]=L[a+152>>2];L[a+108>>2]=e;e=L[a+132>>2];L[a+112>>2]=L[a+128>>2];L[a+116>>2]=e;e=L[a+140>>2];L[a+120>>2]=L[a+136>>2];L[a+124>>2]=e;P[a+104>>2]=P[a+104>>2]-d;P[a+112>>2]=d+P[a+112>>2];e=L[a+148>>2];L[a+96>>2]=L[a+144>>2];L[a+100>>2]=e;P[a+96>>2]=P[a+96>>2]-d;P[a+100>>2]=P[a+100>>2]-d;P[a+116>>2]=d+P[a+116>>2];P[a+120>>2]=d+P[a+120>>2];P[a+20>>2]=d;k=d;d=S(f-f);f=S(d*d);d=S(h-h);h=S(d*d);d=S(g-g);P[a+16>>2]=k+S(_(S(f+S(h+S(d*d)))));L[a+12>>2]=j<<30>>31&i;L[a+8>>2]=c;L[a+4>>2]=b;Vb(b+928|0,L[b+928>>2],a+96|0,a);break a;case 1:break b;default:break a}}L[a+20>>2]=0;L[a+4>>2]=1065353216;L[a>>2]=21500;L[a+24>>2]=b;L[a+28>>2]=c;P[a+8>>2]=P[b+456>>2];e=L[c+4>>2];d=S(ha[L[L[e>>2]+48>>2]](e));e=L[b+192>>2];d=S(d+S(ha[L[L[e>>2]+48>>2]](e)));P[a+12>>2]=d;f=P[b+316>>2];g=P[L[c+8>>2]+224>>2];P[a+16>>2]=f>2];ha[L[L[e>>2]+8>>2]](e,L[c+12>>2],a+144|0,a+128|0);c=L[a+156>>2];L[a+104>>2]=L[a+152>>2];L[a+108>>2]=c;c=L[a+132>>2];L[a+112>>2]=L[a+128>>2];L[a+116>>2]=c;c=L[a+140>>2];L[a+120>>2]=L[a+136>>2];L[a+124>>2]=c;P[a+104>>2]=P[a+104>>2]-d;P[a+112>>2]=d+P[a+112>>2];P[a+116>>2]=d+P[a+116>>2];c=L[a+148>>2];L[a+96>>2]=L[a+144>>2];L[a+100>>2]=c;P[a+96>>2]=P[a+96>>2]-d;P[a+100>>2]=P[a+100>>2]-d;P[a+120>>2]=d+P[a+120>>2];Vb(b+1048|0,L[b+1048>>2],a+96|0,a)}fa=a+160|0}function JG(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=S(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=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=S(0),F=S(0),G=S(0),H=0,I=S(0),J=S(0),K=S(0),N=S(0),O=0;D=L[a+12>>2];if((D|0)<=0){return S(S(1))}f=M[a+28|0];H=f?b:c;b=f?c:b;I=P[b- -64>>2];E=P[b+60>>2];F=P[b+56>>2];G=P[b+52>>2];J=P[b+48>>2];h=P[b+44>>2];i=P[b+40>>2];j=P[b+36>>2];K=P[b+32>>2];k=P[b+28>>2];l=P[b+24>>2];m=P[b+20>>2];N=P[b+16>>2];n=P[b+12>>2];o=P[b+8>>2];r=L[b+260>>2];p=P[b+4>>2];O=L[b+192>>2];q=S(1);f=0;while(1){c=L[O+24>>2]+R(f,80)|0;g=P[c+56>>2];s=P[c+52>>2];t=P[c+48>>2];u=P[c+36>>2];v=P[c+20>>2];w=P[c+4>>2];x=P[c+40>>2];y=P[c+24>>2];z=P[c+8>>2];A=P[c+32>>2];B=P[c>>2];C=P[c+16>>2];L[b+64>>2]=0;L[b+48>>2]=0;L[b+32>>2]=0;L[b+16>>2]=0;L[b+260>>2]=r+1;P[b+36>>2]=S(A*h)+S(S(B*j)+S(i*C));P[b+20>>2]=S(A*k)+S(S(B*m)+S(l*C));P[b+4>>2]=S(A*n)+S(S(B*p)+S(o*C));P[b+44>>2]=S(x*h)+S(S(z*j)+S(i*y));P[b+40>>2]=S(u*h)+S(S(w*j)+S(i*v));P[b+28>>2]=S(x*k)+S(S(z*m)+S(l*y));P[b+24>>2]=S(u*k)+S(S(w*m)+S(l*v));P[b+12>>2]=S(x*n)+S(S(z*p)+S(o*y));P[b+8>>2]=S(u*n)+S(S(w*p)+S(o*v));P[b+60>>2]=E+S(S(g*h)+S(S(t*j)+S(i*s)));P[b+56>>2]=F+S(S(g*k)+S(S(t*m)+S(l*s)));P[b+52>>2]=G+S(S(g*n)+S(S(t*p)+S(o*s)));c=L[L[a+20>>2]+(f<<2)>>2];g=S(ha[L[L[c>>2]+12>>2]](c,b,H,d,e));P[b+64>>2]=I;P[b+60>>2]=E;P[b+56>>2]=F;P[b+52>>2]=G;P[b+48>>2]=J;P[b+44>>2]=h;P[b+40>>2]=i;P[b+36>>2]=j;P[b+32>>2]=K;P[b+28>>2]=k;P[b+24>>2]=l;P[b+20>>2]=m;P[b+16>>2]=N;P[b+12>>2]=n;P[b+8>>2]=o;P[b+4>>2]=p;r=L[b+260>>2]+1|0;L[b+260>>2]=r;q=g>2]=P[a+4>>2];P[b+20>>2]=P[a+8>>2];P[b+24>>2]=P[a+12>>2];P[b+28>>2]=P[a+16>>2];P[b+32>>2]=P[a+20>>2];P[b+36>>2]=P[a+24>>2];P[b+40>>2]=P[a+28>>2];P[b+44>>2]=P[a+32>>2];P[b+48>>2]=P[a+36>>2];P[b+52>>2]=P[a+40>>2];P[b+56>>2]=P[a+44>>2];P[b+60>>2]=P[a+48>>2];P[b- -64>>2]=P[a+52>>2];P[b+68>>2]=P[a+56>>2];P[b+72>>2]=P[a+60>>2];P[b+76>>2]=P[a- -64>>2];P[b+80>>2]=P[a+68>>2];P[b+84>>2]=P[a+72>>2];P[b+88>>2]=P[a+76>>2];P[b+92>>2]=P[a+80>>2];P[b+96>>2]=P[a+84>>2];P[b+100>>2]=P[a+88>>2];P[b+104>>2]=P[a+92>>2];P[b+108>>2]=P[a+96>>2];P[b+112>>2]=P[a+100>>2];P[b+116>>2]=P[a+104>>2];P[b+120>>2]=P[a+108>>2];P[b+124>>2]=P[a+112>>2];P[b+128>>2]=P[a+116>>2];P[b+132>>2]=P[a+120>>2];P[b+136>>2]=P[a+124>>2];P[b+140>>2]=P[a+128>>2];P[b+144>>2]=P[a+132>>2];P[b+148>>2]=P[a+136>>2];P[b+152>>2]=P[a+140>>2];P[b+156>>2]=P[a+144>>2];P[b+160>>2]=P[a+148>>2];P[b+164>>2]=P[a+152>>2];P[b+168>>2]=P[a+156>>2];P[b+172>>2]=P[a+160>>2];P[b+176>>2]=P[a+164>>2];P[b+180>>2]=P[a+168>>2];P[b+184>>2]=P[a+172>>2];P[b+188>>2]=P[a+176>>2];L[b+224>>2]=L[a+180>>2];f=P[a+184>>2];L[b>>2]=0;P[b+192>>2]=f;d=ha[L[L[c>>2]+28>>2]](c,L[a+192>>2])|0;L[b+8>>2]=0;L[b+4>>2]=d;L[b+228>>2]=L[a+204>>2];L[b+232>>2]=L[a+208>>2];L[b+236>>2]=L[a+212>>2];L[b+240>>2]=L[a+216>>2];P[b+196>>2]=P[a+220>>2];P[b+200>>2]=P[a+224>>2];P[b+204>>2]=P[a+232>>2];P[b+208>>2]=P[a+228>>2];L[b+244>>2]=L[a+236>>2];d=ha[L[L[c>>2]+40>>2]](c,a)|0;e=ha[L[L[c>>2]+28>>2]](c,d)|0;L[b+12>>2]=e;if(e){ha[L[L[c>>2]+48>>2]](c,d)}P[b+212>>2]=P[a+244>>2];P[b+216>>2]=P[a+248>>2];P[b+220>>2]=P[a+252>>2];L[b+248>>2]=L[a+256>>2];return 3610}function Pp(a,b){a=a|0;b=b|0;var c=S(0),d=0,e=0,f=0,g=0,h=S(0),i=S(0),j=S(0),k=0,l=0,m=0,n=0;k=fa-16|0;fa=k;L[k+12>>2]=a;L[k+8>>2]=b;d=L[k+8>>2];e=fa-32|0;fa=e;a=L[k+12>>2];b=L[a+192>>2];c=S(ha[L[L[b>>2]+48>>2]](b));g=L[a+712>>2];if((g|0)>0){l=a+928|0;while(1){b=L[a+720>>2]+R(f,104)|0;h=S(P[d>>2]*P[b+8>>2]);P[b+8>>2]=h;i=S(P[d+4>>2]*P[b+12>>2]);P[b+12>>2]=i;j=S(P[d+8>>2]*P[b+16>>2]);P[b+16>>2]=j;P[b+24>>2]=P[d>>2]*P[b+24>>2];P[b+28>>2]=P[d+4>>2]*P[b+28>>2];P[b+32>>2]=P[d+8>>2]*P[b+32>>2];L[e+28>>2]=0;P[e+24>>2]=c+j;P[e+20>>2]=c+i;P[e+16>>2]=c+h;L[e+12>>2]=0;P[e+8>>2]=j-c;P[e+4>>2]=i-c;P[e>>2]=h-c;Gc(l,L[b+96>>2],e);f=f+1|0;if((g|0)!=(f|0)){continue}break}}ig(a);b=L[a+928>>2];a:{if(b){d=L[a+192>>2];c=S(ha[L[L[d>>2]+48>>2]](d));h=P[b>>2];i=P[b+4>>2];j=P[b+8>>2];L[a+904>>2]=0;P[a+900>>2]=j-c;P[a+896>>2]=i-c;P[a+892>>2]=h-c;h=P[b+20>>2];i=P[b+24>>2];j=P[b+16>>2];L[a+920>>2]=0;P[a+916>>2]=c+i;P[a+912>>2]=c+h;b=a+908|0;P[b>>2]=c+j;d=L[a+188>>2];if(!d){break a}f=L[a+684>>2];g=L[f+32>>2];ha[L[L[g>>2]+16>>2]](g,d,a+892|0,b,L[f+36>>2]);break a}L[a+892>>2]=0;L[a+896>>2]=0;L[a+916>>2]=0;L[a+920>>2]=0;L[a+908>>2]=0;L[a+912>>2]=0;L[a+900>>2]=0;L[a+904>>2]=0}g=L[a+732>>2];if((g|0)>0){l=L[a+740>>2];b=0;f=0;while(1){d=l+R(f,52)|0;m=L[d+8>>2];n=L[d+12>>2];c=S(P[m+16>>2]-P[n+16>>2]);h=S(c*c);c=S(P[m+8>>2]-P[n+8>>2]);i=S(c*c);c=S(P[m+12>>2]-P[n+12>>2]);c=S(_(S(h+S(i+S(c*c)))));P[d+16>>2]=c;P[d+28>>2]=c*c;f=f+1|0;if((g|0)!=(f|0)){continue}break}while(1){d=l+R(b,52)|0;P[d+24>>2]=S(P[L[d+8>>2]+88>>2]+P[L[d+12>>2]+88>>2])/P[L[d+4>>2]+4>>2];b=b+1|0;if((g|0)!=(b|0)){continue}break}}hg(a);fa=e+32|0;fa=k+16|0}function ug(a,b,c,d,e){var f=0,g=S(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=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),J=S(0),K=S(0),M=S(0),N=S(0),O=S(0);f=L[a+28>>2];o=P[f+36>>2];p=P[f+20>>2];q=P[f+40>>2];r=P[f+8>>2];x=P[f+24>>2];n=P[f+44>>2];y=P[f+12>>2];z=P[f+56>>2];A=P[f+28>>2];B=P[f+60>>2];C=P[f+52>>2];a=L[a+32>>2];D=P[a+36>>2];E=P[a+20>>2];s=P[a+40>>2];F=P[a+8>>2];G=P[a+24>>2];h=P[a+44>>2];k=P[a+12>>2];g=P[a+56>>2];j=P[a+28>>2];i=P[a+60>>2];m=P[a+52>>2];H=P[a+344>>2];I=P[f+344>>2];J=P[f+4>>2];K=P[d+4>>2];M=P[d+8>>2];N=P[d>>2];O=P[a+4>>2];l=P[e+4>>2];t=P[e+8>>2];u=P[e>>2];d=L[c+12>>2];L[b+8>>2]=L[c+8>>2];L[b+12>>2]=d;d=L[c+4>>2];L[b>>2]=L[c>>2];L[b+4>>2]=d;L[b+44>>2]=0;L[b+28>>2]=0;v=h;l=S(l-g);h=P[b>>2];u=S(u-m);g=P[b+4>>2];m=S(S(l*h)-S(u*g));w=k;t=S(t-i);k=P[b+8>>2];i=S(S(t*g)-S(l*k));l=j;j=S(S(u*k)-S(t*h));l=S(S(v*m)+S(S(w*i)+S(l*j)));P[b+40>>2]=l;s=S(S(s*m)+S(S(F*i)+S(G*j)));P[b+36>>2]=s;m=S(S(D*m)+S(S(O*i)+S(E*j)));P[b+32>>2]=m;v=n;j=S(N-C);n=S(K-z);i=S(S(g*j)-S(h*n));w=S(n*k);n=S(M-B);g=S(w-S(g*n));h=S(S(n*h)-S(k*j));k=S(S(v*i)+S(S(y*g)+S(A*h)));P[b+24>>2]=k;j=S(S(q*i)+S(S(r*g)+S(x*h)));P[b+20>>2]=j;h=S(S(o*i)+S(S(J*g)+S(p*h)));P[b+16>>2]=h;g=P[f+404>>2];i=P[f+400>>2];o=P[f+396>>2];L[b+60>>2]=0;o=S(h*o);P[b+48>>2]=o;i=S(j*i);P[b+52>>2]=i;g=S(k*g);P[b+56>>2]=g;p=P[a+404>>2];q=P[a+400>>2];r=P[a+396>>2];L[b+76>>2]=0;r=S(m*r);P[b+64>>2]=r;q=S(s*q);P[b+68>>2]=q;p=S(l*p);P[b+72>>2]=p;P[b+80>>2]=S(H+S(I+S(S(g*k)+S(S(o*h)+S(j*i)))))+S(S(p*l)+S(S(r*m)+S(s*q)))}function Ok(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=L[a+8>>2];c=L[a+32>>2];f=c?L[a+40>>2]:0;d=c;c=L[a+52>>2];g=c?L[a+60>>2]:0;h=c;c=L[a+72>>2];S(ha[L[L[b>>2]+12>>2]](b,f,d,g,h,c?L[a+80>>2]:0,c,L[a+4>>2],L[a+20>>2],L[a+24>>2]));c=L[a+32>>2];a:{if((c|0)>=0){break a}if(L[a+36>>2]<0){b=L[a+40>>2];if(!(b?!b|!M[a+44|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+44|0]=1;L[a+36>>2]=0;L[a+40>>2]=0}b=c;d=0-b&3;if(d){while(1){L[L[a+40>>2]+(b<<2)>>2]=0;b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(c>>>0>4294967292){break a}while(1){c=b<<2;L[c+L[a+40>>2]>>2]=0;L[(c+L[a+40>>2]|0)+4>>2]=0;L[(c+L[a+40>>2]|0)+8>>2]=0;L[(c+L[a+40>>2]|0)+12>>2]=0;b=b+4|0;if(b){continue}break}}L[a+32>>2]=0;c=L[a+52>>2];b:{if((c|0)>=0){break b}if(L[a+56>>2]<0){b=L[a+60>>2];if(!(b?!b|!M[a- -64|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+64|0]=1;L[a+56>>2]=0;L[a+60>>2]=0}e=0;b=c;d=0-b&3;if(d){while(1){L[L[a+60>>2]+(b<<2)>>2]=0;b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(c>>>0>4294967292){break b}while(1){c=b<<2;L[c+L[a+60>>2]>>2]=0;L[(c+L[a+60>>2]|0)+4>>2]=0;L[(c+L[a+60>>2]|0)+8>>2]=0;L[(c+L[a+60>>2]|0)+12>>2]=0;b=b+4|0;if(b){continue}break}}L[a+52>>2]=0;c=L[a+72>>2];c:{if((c|0)>=0){break c}if(L[a+76>>2]<0){b=L[a+80>>2];if(!(b?!b|!M[a+84|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+84|0]=1;L[a+76>>2]=0;L[a+80>>2]=0}e=0;b=c;d=0-b&3;if(d){while(1){L[L[a+80>>2]+(b<<2)>>2]=0;b=b+1|0;e=e+1|0;if((d|0)!=(e|0)){continue}break}}if(c>>>0>4294967292){break c}while(1){c=b<<2;L[c+L[a+80>>2]>>2]=0;L[(c+L[a+80>>2]|0)+4>>2]=0;L[(c+L[a+80>>2]|0)+8>>2]=0;L[(c+L[a+80>>2]|0)+12>>2]=0;b=b+4|0;if(b){continue}break}}L[a+72>>2]=0}function fh(a){a=a|0;var b=0;L[a>>2]=10328;if(M[a+20|0]){b=L[L[a+16>>2]+16>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+16>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}if(M[a+12|0]){b=L[L[a+8>>2]+16>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+8>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}b=L[a+32>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+32>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+36>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+36>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+40>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+40>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+44>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+44>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+48>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+48>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+52>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+52>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+56>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+56>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+60>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+60>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+76>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+76>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+80>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+80>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+72>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+72>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+88>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+88>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+84>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+84>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+24>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+28>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+28>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}return a|0}function Vb(a,b,c,d){var e=0,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=S(0),s=S(0),t=0;if(b){n=P[c+24>>2];o=P[c+20>>2];p=P[c+16>>2];q=P[c+8>>2];r=P[c+4>>2];s=P[c>>2];L[8513]=L[8513]+1;a=ha[L[6798]](256,16)|0;L[a>>2]=b;f=64;c=1;while(1){a:{b:{c:{b=c-1|0;k=b<<2;i=L[k+a>>2];d:{if(!(P[i>>2]<=p)|!(P[i+16>>2]>=s)|(!(P[i+4>>2]<=o)|!(P[i+20>>2]>=r))){break d}if(!(P[i+8>>2]<=n)|!(P[i+24>>2]>=q)){break d}if(L[i+40>>2]){if((b|0)!=(f|0)){break c}g=f?f<<1:1;if((g|0)<(c|0)){break c}if(g){L[8513]=L[8513]+1;b=ha[L[6798]](g<<2,16)|0}else{b=0}e:{if(!f){break e}l=0;e=0;if(f>>>0>=4){t=f&-4;h=0;while(1){j=e<<2;L[j+b>>2]=L[a+j>>2];m=j|4;L[m+b>>2]=L[a+m>>2];m=j|8;L[m+b>>2]=L[a+m>>2];j=j|12;L[j+b>>2]=L[a+j>>2];e=e+4|0;h=h+4|0;if((t|0)!=(h|0)){continue}break}}f=f&3;if(!f){break e}while(1){h=e<<2;L[h+b>>2]=L[a+h>>2];e=e+1|0;l=l+1|0;if((f|0)!=(l|0)){continue}break}}if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}break b}ha[L[L[d>>2]+12>>2]](d,i)}break a}g=f;b=a}L[b+k>>2]=L[i+36>>2];f:{if((c|0)!=(g|0)){f=g;a=b;break f}f=c?c<<1:1;if((f|0)<=(c|0)){f=c;a=b;break f}if(f){L[8513]=L[8513]+1;a=ha[L[6798]](f<<2,16)|0}else{a=0}g:{if((c|0)<=0){break g}l=0;g=0;if(c>>>0>=4){j=c&-4;h=0;while(1){e=g<<2;L[e+a>>2]=L[b+e>>2];k=e|4;L[k+a>>2]=L[b+k>>2];k=e|8;L[k+a>>2]=L[b+k>>2];e=e|12;L[e+a>>2]=L[b+e>>2];g=g+4|0;h=h+4|0;if((j|0)!=(h|0)){continue}break}}e=c&3;if(!e){break g}while(1){h=g<<2;L[h+a>>2]=L[b+h>>2];g=g+1|0;l=l+1|0;if((e|0)!=(l|0)){continue}break}}if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}L[(c<<2)+a>>2]=L[i+40>>2];b=c+1|0}c=b;if((c|0)>0){continue}break}if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}}function fz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=0;e=fa-256|0;fa=e;wa(2415);L[e+36>>2]=23020;f=L[b+12>>2];L[e+80>>2]=L[b+8>>2];L[e+84>>2]=f;f=L[b+4>>2];L[e+72>>2]=L[b>>2];L[e+76>>2]=f;f=L[c+12>>2];L[e+96>>2]=L[c+8>>2];L[e+100>>2]=f;f=L[c>>2];m=L[c+4>>2];L[e+108>>2]=0;L[e+112>>2]=0;L[e+116>>2]=0;L[e+120>>2]=0;L[e+128>>2]=0;L[e+132>>2]=0;L[e+124>>2]=1065353216;L[e+136>>2]=0;L[e+140>>2]=0;L[e+144>>2]=1065353216;L[e+148>>2]=0;L[e+88>>2]=f;L[e+92>>2]=m;L[e+252>>2]=d;L[e+104>>2]=1065353216;L[e+248>>2]=a;d=L[b+4>>2];L[e+152>>2]=L[b>>2];L[e+156>>2]=d;d=L[b+12>>2];L[e+160>>2]=L[b+8>>2];L[e+164>>2]=d;L[e+172>>2]=0;L[e+176>>2]=0;L[e+180>>2]=0;L[e+184>>2]=0;L[e+188>>2]=1065353216;L[e+192>>2]=0;L[e+196>>2]=0;L[e+200>>2]=0;L[e+204>>2]=0;L[e+208>>2]=1065353216;L[e+212>>2]=0;L[e+168>>2]=1065353216;d=L[c+12>>2];L[e+224>>2]=L[c+8>>2];L[e+228>>2]=d;d=L[c+4>>2];L[e+216>>2]=L[c>>2];L[e+220>>2]=d;g=S(P[c+8>>2]-P[b+8>>2]);j=S(P[c>>2]-P[b>>2]);h=S(P[c+4>>2]-P[b+4>>2]);i=S(S(1)/S(_(S(S(g*g)+S(S(j*j)+S(h*h))))));g=S(g*i);k=g==S(0)?S(1.0000000150474662e30):S(S(1)/g);P[e+48>>2]=k;h=S(h*i);l=h==S(0)?S(1.0000000150474662e30):S(S(1)/h);P[e+44>>2]=l;L[e- -64>>2]=k>2]=l>2]=j;L[e+56>>2]=j>2]=S(g*S(P[e+96>>2]-P[e+80>>2]))+S(S(i*S(P[e+88>>2]-P[e+72>>2]))+S(h*S(P[e+92>>2]-P[e+76>>2])));a=L[a+68>>2];L[e+24>>2]=0;L[e+28>>2]=0;L[e+16>>2]=0;L[e+20>>2]=0;L[e+8>>2]=0;L[e+12>>2]=0;L[e>>2]=0;L[e+4>>2]=0;ha[L[L[a>>2]+24>>2]](a,b,c,e+36|0,e+16|0,e);va();fa=e+256|0}function YD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=S(0),h=0,i=0,j=0,k=S(0),l=0,m=0,n=0,o=S(0),p=S(0),q=0,r=0,s=S(0),t=S(0),u=0,v=0,w=0,x=0,y=0,z=S(0),A=S(0),B=S(0),C=S(0),D=0,E=S(0),F=S(0),G=S(0),H=S(0),I=S(0),J=S(0),K=0;l=fa-2048|0;fa=l;a:{if((d|0)<=0){break a}n=L[a+92>>2];if((n|0)<=0){break a}while(1){if((n|0)>0){m=w<<4;i=m+b|0;u=c+m|0;q=L[a+100>>2];x=L[a+120>>2];B=S(-0xde0b6b000000000);v=0;m=n;while(1){g=S(-34028234663852886e22);r=-1;j=(n|0)<=(v|0);b:{if(j){break b}e=(m|0)>=128?128:m;y=(e|0)<=1?1:e;k=P[i+8>>2];o=P[i+4>>2];p=P[i>>2];f=0;while(1){E=P[q>>2];F=P[a+12>>2];G=P[q+4>>2];H=P[a+16>>2];I=P[q+8>>2];z=P[x>>2];J=P[a+20>>2];A=S(ha[L[L[a>>2]+48>>2]](a));s=P[i>>2];t=P[i+4>>2];C=P[i+8>>2];h=(f<<4)+l|0;L[h+12>>2]=0;P[h+8>>2]=S(I+S(z*S(k*J)))-S(A*C);P[h+4>>2]=S(G+S(z*S(o*H)))-S(A*t);P[h>>2]=S(E+S(z*S(p*F)))-S(A*s);x=x+4|0;q=q+16|0;k=C;o=t;p=s;f=f+1|0;if((y|0)!=(f|0)){continue}break}if(j){break b}y=e&1;k=P[i+8>>2];o=P[i+4>>2];p=P[i>>2];c:{if((e|0)==1){e=0;break c}K=e&-2;e=0;f=0;while(1){h=(e<<4)+l|0;s=S(S(P[h+8>>2]*k)+S(S(P[h>>2]*p)+S(o*P[h+4>>2])));h=s>g;D=e|1;j=(D<<4)+l|0;t=S(S(P[j+8>>2]*k)+S(S(P[j>>2]*p)+S(o*P[j+4>>2])));g=h?s:g;j=t>g;g=j?t:g;r=j?D:h?e:r;e=e+2|0;f=f+2|0;if((K|0)!=(f|0)){continue}break}}if(!y){break b}f=(e<<4)+l|0;k=S(S(P[f+8>>2]*k)+S(S(P[f>>2]*p)+S(o*P[f+4>>2])));f=k>g;g=f?k:g;r=f?e:r}if(g>B){e=(r<<4)+l|0;f=L[e+12>>2];L[u+8>>2]=L[e+8>>2];L[u+12>>2]=f;f=L[e+4>>2];L[u>>2]=L[e>>2];L[u+4>>2]=f;B=g}m=m-128|0;v=v+128|0;if((v|0)<(n|0)){continue}break}}w=w+1|0;if((w|0)==(d|0)){break a}n=L[a+92>>2];continue}}fa=l+2048|0}function tH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=0;e=fa-256|0;fa=e;L[e+36>>2]=8276;f=L[b+12>>2];L[e+80>>2]=L[b+8>>2];L[e+84>>2]=f;f=L[b+4>>2];L[e+72>>2]=L[b>>2];L[e+76>>2]=f;f=L[c+12>>2];L[e+96>>2]=L[c+8>>2];L[e+100>>2]=f;f=L[c>>2];m=L[c+4>>2];L[e+108>>2]=0;L[e+112>>2]=0;L[e+116>>2]=0;L[e+120>>2]=0;L[e+128>>2]=0;L[e+132>>2]=0;L[e+124>>2]=1065353216;L[e+136>>2]=0;L[e+140>>2]=0;L[e+144>>2]=1065353216;L[e+148>>2]=0;L[e+88>>2]=f;L[e+92>>2]=m;L[e+252>>2]=d;L[e+104>>2]=1065353216;L[e+248>>2]=a;d=L[b+4>>2];L[e+152>>2]=L[b>>2];L[e+156>>2]=d;d=L[b+12>>2];L[e+160>>2]=L[b+8>>2];L[e+164>>2]=d;L[e+172>>2]=0;L[e+176>>2]=0;L[e+180>>2]=0;L[e+184>>2]=0;L[e+188>>2]=1065353216;L[e+192>>2]=0;L[e+196>>2]=0;L[e+200>>2]=0;L[e+204>>2]=0;L[e+208>>2]=1065353216;L[e+212>>2]=0;L[e+168>>2]=1065353216;d=L[c+12>>2];L[e+224>>2]=L[c+8>>2];L[e+228>>2]=d;d=L[c+4>>2];L[e+216>>2]=L[c>>2];L[e+220>>2]=d;g=S(P[c+8>>2]-P[b+8>>2]);j=S(P[c>>2]-P[b>>2]);h=S(P[c+4>>2]-P[b+4>>2]);i=S(S(1)/S(_(S(S(g*g)+S(S(j*j)+S(h*h))))));g=S(g*i);k=g==S(0)?S(0xde0b6b000000000):S(S(1)/g);P[e+48>>2]=k;h=S(h*i);l=h==S(0)?S(0xde0b6b000000000):S(S(1)/h);P[e+44>>2]=l;L[e- -64>>2]=k>2]=l>2]=j;L[e+56>>2]=j>2]=S(g*S(P[e+96>>2]-P[e+80>>2]))+S(S(i*S(P[e+88>>2]-P[e+72>>2]))+S(h*S(P[e+92>>2]-P[e+76>>2])));a=L[a+68>>2];L[e+24>>2]=0;L[e+28>>2]=0;L[e+16>>2]=0;L[e+20>>2]=0;L[e+8>>2]=0;L[e+12>>2]=0;L[e>>2]=0;L[e+4>>2]=0;ha[L[L[a>>2]+24>>2]](a,b,c,e+36|0,e+16|0,e);fa=e+256|0}function uz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=S(0),g=S(0),h=S(0),i=0,j=S(0),k=S(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=S(0),A=S(0),B=S(0),C=S(0),D=S(0),E=S(0),F=S(0),G=S(0);c=M[a+8|0]?b:c;if(L[L[c+4>>2]+4>>2]-21>>>0<=8){s=L[L[c+8>>2]+192>>2];k=S(ha[L[L[s>>2]+48>>2]](s));i=fa-32|0;fa=i;b=a+12|0;L[b+52>>2]=d;L[b+44>>2]=e;P[b+56>>2]=k+S(.05999999865889549);d=L[b+4>>2];ha[L[L[d>>2]+28>>2]](d,i+16|0,i);c=L[c+12>>2];k=P[c+20>>2];m=P[c+36>>2];n=P[c+24>>2];j=P[c+40>>2];v=P[c+56>>2];w=P[c+52>>2];t=P[c+4>>2];o=P[c+8>>2];l=P[b+56>>2];h=P[c+32>>2];f=P[c>>2];r=P[c+48>>2];g=P[c+16>>2];p=P[i+24>>2];q=P[i+8>>2];u=P[i+16>>2];A=P[i>>2];B=P[i+20>>2];C=P[i+4>>2];L[b+40>>2]=0;L[b+24>>2]=0;x=S(S(q+p)*S(.5));y=S(S(A+u)*S(.5));z=S(S(C+B)*S(.5));r=S(-r);D=S(S(S(h*x)+S(S(f*y)+S(g*z)))+S(S(S(f*r)-S(g*w))-S(h*v)));p=S(l+S(S(q-p)*S(.5)));E=S(f*S(0));F=S(g*S(0));G=S(p*S(T(S(h+S(E+F)))));q=S(l+S(S(A-u)*S(.5)));h=S(h*S(0));f=S(q*S(T(S(h+S(f+F)))));g=S(T(S(h+S(E+g))));h=S(l+S(S(C-B)*S(.5)));f=S(G+S(f+S(g*h)));P[b+28>>2]=D+f;P[b+12>>2]=D-f;f=S(S(S(x*j)+S(S(y*o)+S(z*n)))+S(S(S(o*r)-S(n*w))-S(j*v)));g=S(o*S(0));l=S(n*S(0));u=S(p*S(T(S(j+S(g+l)))));j=S(j*S(0));n=S(u+S(S(q*S(T(S(j+S(o+l)))))+S(S(T(S(j+S(g+n))))*h)));P[b+36>>2]=f+n;j=S(S(S(x*m)+S(S(y*t)+S(z*k)))+S(S(S(t*r)-S(k*w))-S(m*v)));o=S(t*S(0));g=S(k*S(0));l=S(p*S(T(S(m+S(o+g)))));m=S(m*S(0));k=S(l+S(S(q*S(T(S(m+S(t+g)))))+S(S(T(S(m+S(o+k))))*h)));P[b+32>>2]=j+k;P[b+20>>2]=f-n;P[b+16>>2]=j-k;fa=i+32|0;ha[L[L[s>>2]+64>>2]](s,b,a+24|0,a+40|0)}}function De(a,b){var c=S(0),d=S(0),e=0,f=0,g=S(0),h=S(0),i=S(0);d=P[((b<<2)+a|0)+1192>>2];f=(b<<6)+a|0;g=P[f+868>>2];h=P[f+872>>2];a:{if(g>=h){break a}if(dS(3.1415927410125732))){break b}c=S(c+S(-6.2831854820251465))}i=S(T(c));c=Na(S(h-d),S(6.2831854820251465));c:{if(cS(3.1415927410125732))){break c}c=S(c+S(-6.2831854820251465))}d=ih)){break a}c=Na(S(d-h),S(6.2831854820251465));d:{if(cS(3.1415927410125732))){break d}c=S(c+S(-6.2831854820251465))}i=S(T(c));c=Na(S(d-g),S(6.2831854820251465));e:{if(cS(3.1415927410125732))){break e}c=S(c+S(-6.2831854820251465))}d=i>S(T(c))?S(d+S(-6.2831854820251465)):d}P[f+920>>2]=d;f:{if(g>h){f=0;L[((b<<6)+a|0)+924>>2]=0;break f}if(d>2]=c;f=1;L[e+924>>2]=1;if(c>S(3.1415927410125732)){P[e+916>>2]=c+S(-6.2831854820251465);break f}if(!(c>2]=c+S(6.2831854820251465);break f}e=(b<<6)+a|0;if(d>h){L[e+924>>2]=2;c=S(d-h);P[e+916>>2]=c;if(c>S(3.1415927410125732)){P[e+916>>2]=c+S(-6.2831854820251465);f=1;break f}f=1;if(!(c>2]=c+S(6.2831854820251465);break f}f=0;L[e+924>>2]=0}return M[((b<<6)+a|0)+912|0]!=0|f}function Oz(a,b,c){a=a|0;b=S(b);c=S(c);var d=0,e=0,f=S(0),g=0,h=0,i=S(0),j=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=0,u=S(0),v=S(0),w=S(0),x=S(0);t=L[a+832>>2];if((t|0)>0){a=L[a+840>>2];while(1){u=S(0);v=S(0);w=S(0);d=a+R(p,56)|0;j=L[d>>2];q=P[j+16>>2];f=P[d+8>>2];e=L[d+4>>2];g=L[e+8>>2];i=P[d+12>>2];h=L[e+12>>2];b=P[d+16>>2];e=L[e+16>>2];k=S(S(S(f*P[g+16>>2])+S(i*P[h+16>>2]))+S(b*P[e+16>>2]));l=S(S(q-P[j+32>>2])-S(k-S(S(S(f*P[g+32>>2])+S(i*P[h+32>>2]))+S(b*P[e+32>>2]))));n=P[d+32>>2];r=P[j+8>>2];m=S(S(S(P[g+8>>2]*f)+S(P[h+8>>2]*i))+S(P[e+8>>2]*b));x=S(S(r-P[j+24>>2])-S(m-S(S(S(f*P[g+24>>2])+S(i*P[h+24>>2]))+S(b*P[e+24>>2]))));o=P[d+24>>2];s=P[j+12>>2];c=S(S(S(f*P[g+12>>2])+S(i*P[h+12>>2]))+S(b*P[e+12>>2]));b=S(S(s-P[j+28>>2])-S(c-S(S(S(f*P[g+28>>2])+S(i*P[h+28>>2]))+S(b*P[e+28>>2]))));f=P[d+28>>2];i=S(S(l*n)+S(S(x*o)+S(b*f)));if(i>2]-S(S(S(n*q)+S(S(o*r)+S(s*f)))-S(S(n*k)+S(S(o*m)+S(c*f)))));w=S(S(n*c)+S(0));u=S(S(o*c)+S(0));v=S(S(f*c)+S(0))}m=P[d+48>>2];c=P[d+44>>2];k=S(w-S(S(l-S(n*i))*c));P[j+16>>2]=q+S(m*k);l=S(v-S(c*S(b-S(f*i))));P[j+12>>2]=s+S(m*l);c=S(u-S(c*S(x-S(o*i))));P[j+8>>2]=r+S(m*c);b=S(P[d+52>>2]*P[d+8>>2]);P[g+8>>2]=P[g+8>>2]-S(c*b);P[g+12>>2]=P[g+12>>2]-S(l*b);P[g+16>>2]=P[g+16>>2]-S(k*b);b=S(P[d+52>>2]*P[d+12>>2]);P[h+8>>2]=P[h+8>>2]-S(c*b);P[h+12>>2]=P[h+12>>2]-S(l*b);P[h+16>>2]=P[h+16>>2]-S(k*b);b=S(P[d+52>>2]*P[d+16>>2]);P[e+8>>2]=P[e+8>>2]-S(c*b);P[e+12>>2]=P[e+12>>2]-S(l*b);P[e+16>>2]=P[e+16>>2]-S(k*b);p=p+1|0;if((t|0)!=(p|0)){continue}break}}}function Pg(a){var b=0,c=0,d=S(0),e=0,f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=0;e=L[a+28>>2];if((e|0)<=0){return 1}f=P[a+84>>2];g=P[a+68>>2];i=S(f+g);h=P[a+88>>2];d=P[a+72>>2];j=S(h+d);h=S(d-h);f=S(g-f);d=P[a+80>>2];k=P[a+64>>2];g=S(d+k);d=S(k-d);a=L[a+36>>2];a:{b:{while(1){b=a+R(c,36)|0;if(S(P[b+32>>2]+S(S(j*P[b+28>>2])+S(S(g*P[b+20>>2])+S(i*P[b+24>>2]))))>S(0)){break b}c=c+1|0;if((e|0)!=(c|0)){continue}break}c=0;while(1){b=a+R(c,36)|0;if(S(P[b+32>>2]+S(S(h*P[b+28>>2])+S(S(g*P[b+20>>2])+S(i*P[b+24>>2]))))>S(0)){break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}c=0;while(1){b=a+R(c,36)|0;if(S(P[b+32>>2]+S(S(j*P[b+28>>2])+S(S(g*P[b+20>>2])+S(f*P[b+24>>2]))))>S(0)){break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}c=0;while(1){b=a+R(c,36)|0;if(S(P[b+32>>2]+S(S(h*P[b+28>>2])+S(S(g*P[b+20>>2])+S(f*P[b+24>>2]))))>S(0)){break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}c=0;while(1){b=a+R(c,36)|0;if(S(P[b+32>>2]+S(S(j*P[b+28>>2])+S(S(d*P[b+20>>2])+S(i*P[b+24>>2]))))>S(0)){break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}c=0;while(1){b=a+R(c,36)|0;if(S(P[b+32>>2]+S(S(h*P[b+28>>2])+S(S(d*P[b+20>>2])+S(i*P[b+24>>2]))))>S(0)){break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}c=0;while(1){b=a+R(c,36)|0;if(S(P[b+32>>2]+S(S(j*P[b+28>>2])+S(S(d*P[b+20>>2])+S(f*P[b+24>>2]))))>S(0)){break a}c=c+1|0;if((e|0)!=(c|0)){continue}break}c=0;while(1){c:{b=a+R(c,36)|0;b=S(P[b+32>>2]+S(S(h*P[b+28>>2])+S(S(d*P[b+20>>2])+S(f*P[b+24>>2]))))>S(0);l=!b;if(b){break c}c=c+1|0;if((e|0)!=(c|0)){continue}}break}return l}return 0}return 0}function fl(a,b,c,d){var e=S(0),f=S(0),g=S(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=S(0),q=S(0),r=S(0),s=S(0);a=rg(a,4,b);L[a>>2]=19768;b=L[c+12>>2];L[a+560>>2]=L[c+8>>2];L[a+564>>2]=b;b=L[c+4>>2];L[a+552>>2]=L[c>>2];L[a+556>>2]=b;b=L[c+28>>2];L[a+576>>2]=L[c+24>>2];L[a+580>>2]=b;b=L[c+20>>2];L[a+568>>2]=L[c+16>>2];L[a+572>>2]=b;b=L[c+44>>2];L[a+592>>2]=L[c+40>>2];L[a+596>>2]=b;b=L[c+36>>2];L[a+584>>2]=L[c+32>>2];L[a+588>>2]=b;b=L[c+60>>2];L[a+608>>2]=L[c+56>>2];L[a+612>>2]=b;b=L[c+52>>2];L[a+600>>2]=L[c+48>>2];L[a+604>>2]=b;b=L[c+12>>2];L[a+624>>2]=L[c+8>>2];L[a+628>>2]=b;b=L[c+4>>2];L[a+616>>2]=L[c>>2];L[a+620>>2]=b;b=L[c+20>>2];L[a+632>>2]=L[c+16>>2];L[a+636>>2]=b;b=L[c+28>>2];L[a+640>>2]=L[c+24>>2];L[a+644>>2]=b;b=L[c+36>>2];L[a+648>>2]=L[c+32>>2];L[a+652>>2]=b;b=L[c+44>>2];L[a+656>>2]=L[c+40>>2];L[a+660>>2]=b;b=L[c+52>>2];L[a+664>>2]=L[c+48>>2];L[a+668>>2]=b;b=L[c+60>>2];L[a+672>>2]=L[c+56>>2];L[a+676>>2]=b;L[a+688>>2]=0;L[a+692>>2]=-1082130432;L[a+696>>2]=1063675494;L[a+700>>2]=1050253722;L[a+704>>2]=1065353216;L[a+708>>2]=0;L[a+712>>2]=0;J[a+716|0]=0;J[a+740|0]=d;L[a+748>>2]=0;L[a+736>>2]=16777216;b=L[a+28>>2];h=P[b+52>>2];i=P[b+12>>2];j=P[b+8>>2];k=P[b+4>>2];l=P[b+56>>2];m=P[b+28>>2];n=P[b+20>>2];o=P[b+24>>2];p=P[b+60>>2];e=P[a+608>>2];q=P[b+44>>2];f=P[a+600>>2];r=P[b+36>>2];g=P[a+604>>2];s=P[b+40>>2];P[a+732>>2]=d?S(-1):S(1);L[a+676>>2]=0;P[a+672>>2]=p+S(S(e*q)+S(S(f*r)+S(g*s)));P[a+668>>2]=l+S(S(e*m)+S(S(f*n)+S(g*o)));P[a+664>>2]=h+S(S(e*i)+S(S(f*k)+S(g*j)))}function Pz(a,b,c){a=a|0;b=S(b);c=S(c);var 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=0,n=S(0),o=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=S(0),A=S(0),B=S(0),C=S(0),D=S(0),E=S(0),F=S(0),G=S(0);m=fa-16|0;fa=m;c=P[a+452>>2];d=L[a+192>>2];r=S(ha[L[L[d>>2]+48>>2]](d));s=L[a+812>>2];if((s|0)>0){while(1){d=L[a+820>>2]+R(o,104)|0;g=L[d>>2];k=L[g+236>>2]<<30>>31&g;a:{if(!k){j=S(0);e=S(0);f=S(0);break a}e=P[k+332>>2];f=P[d+84>>2];h=P[d+80>>2];l=P[k+336>>2];j=S(c*S(S(S(e*f)-S(h*l))+P[k+312>>2]));n=P[k+328>>2];i=S(n*h);h=P[d+76>>2];e=S(c*S(S(i-S(h*e))+P[k+320>>2]));f=S(c*S(S(S(l*h)-S(f*n))+P[k+316>>2]))}g=L[d+24>>2];n=P[g+16>>2];i=S(S(n-P[g+32>>2])-e);e=P[d+12>>2];t=P[g+8>>2];p=S(S(t-P[g+24>>2])-j);j=P[d+4>>2];u=P[g+12>>2];q=S(S(u-P[g+28>>2])-f);f=P[d+8>>2];h=S(S(i*e)+S(S(p*j)+S(q*f)));b:{if(!(h<=S(1.1920928955078125e-7))){break b}v=P[d+20>>2];w=P[d+36>>2];x=P[d+28>>2];y=P[d+32>>2];z=P[d+52>>2];A=P[d+44>>2];B=P[d+48>>2];C=P[d+68>>2];D=P[d+60>>2];E=P[d- -64>>2];l=P[d+96>>2];F=P[d+100>>2];L[m+12>>2]=0;G=S(i-S(l*S(i-S(e*h))));i=S(v+S(S(n*e)+S(S(t*j)+S(u*f))));i=S(F*(i>2]=h;l=S(S(z*e)+S(S(A*j)+S(f*B)));P[m+4>>2]=l;e=S(S(w*e)+S(S(x*j)+S(f*y)));P[m>>2]=e;f=e;e=P[d+92>>2];P[g+8>>2]=P[g+8>>2]-S(f*e);P[g+12>>2]=P[g+12>>2]-S(l*e);P[g+16>>2]=n-S(h*e);if(!k){break b}rb(k,m,d+76|0)}o=o+1|0;if((s|0)!=(o|0)){continue}break}}fa=m+16|0}function $p(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=S(0),i=0,j=0,k=S(0),l=S(0),m=S(0),n=S(0),o=S(0),p=S(0),q=S(0),r=0,s=0,t=0,u=0,v=0,w=0,x=S(0);g=fa-32|0;fa=g;L[g+28>>2]=a;L[g+24>>2]=b;L[g+20>>2]=c;L[g+16>>2]=d;L[g+12>>2]=e;L[g+8>>2]=f;r=L[g+24>>2];s=L[g+20>>2];t=L[g+16>>2];u=L[g+12>>2];a=L[g+28>>2];e=L[g+8>>2];c=0;d=0;f=fa-96|0;fa=f;pa(f,0,96);e=e?e:L[L[a+880>>2]>>2];b=L[a+772>>2];a:{if((b|0)!=L[a+776>>2]){break a}j=b?b<<1:1;if((j|0)<=(b|0)){break a}if(j){L[8513]=L[8513]+1;c=ha[L[6798]](R(j,104),16)|0;b=L[a+772>>2]}b:{if((b|0)<=0){break b}v=b&1;if((b|0)!=1){w=b&-2;b=0;while(1){i=R(d,104);qa(i+c|0,i+L[a+780>>2]|0,104);i=R(d|1,104);qa(i+c|0,i+L[a+780>>2]|0,104);d=d+2|0;b=b+2|0;if((w|0)!=(b|0)){continue}break}}if(!v){break b}b=R(d,104);qa(b+c|0,b+L[a+780>>2]|0,104)}b=L[a+780>>2];if(!(b?!b|!M[a+784|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+780>>2]=c;J[a+784|0]=1;L[a+776>>2]=j;b=L[a+772>>2]}b=L[a+780>>2]+R(b,104)|0;L[b+4>>2]=e;L[b>>2]=0;qa(b+8|0,f,96);L[a+772>>2]=L[a+772>>2]+1;fa=f+96|0;b=(L[a+780>>2]+R(L[a+772>>2],104)|0)-104|0;c=L[a+720>>2]+R(r,104)|0;L[b+8>>2]=c;d=L[a+720>>2]+R(s,104)|0;L[b+12>>2]=d;e=L[a+720>>2]+R(t,104)|0;L[b+16>>2]=e;f=L[a+720>>2]+R(u,104)|0;L[b+20>>2]=f;h=P[c+16>>2];m=S(P[f+16>>2]-h);k=P[c+8>>2];n=S(P[e+8>>2]-k);l=P[c+12>>2];o=S(P[f+12>>2]-l);p=S(P[f+8>>2]-k);q=S(P[e+12>>2]-l);x=S(S(P[d+16>>2]-h)*S(S(n*o)-S(p*q)));h=S(P[e+16>>2]-h);P[b+24>>2]=x+S(S(S(P[d+8>>2]-k)*S(S(q*m)-S(o*h)))+S(S(P[d+12>>2]-l)*S(S(h*p)-S(m*n))));J[a+924|0]=1;fa=g+32|0}function jp(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=S(0);g=fa-32|0;fa=g;L[g+28>>2]=a;L[g+24>>2]=b;L[g+20>>2]=c;L[g+16>>2]=d;L[g+12>>2]=e;J[g+11|0]=f;j=L[g+24>>2];m=L[g+20>>2];e=L[g+16>>2];q=J[g+11|0]&1;b=0;c=0;f=0;h=L[g+12>>2];o=R(h,3);a=1;if((h|0)>0){a=(o|0)<=1?1:o;k=a&3;if(a-1>>>0>=3){i=a&2147483644;a=0;while(1){d=c<<2;l=L[(d|12)+e>>2];n=L[(d|8)+e>>2];p=L[(d|4)+e>>2];d=L[d+e>>2];b=(b|0)<(d|0)?d:b;b=(b|0)<(p|0)?p:b;b=(b|0)<(n|0)?n:b;b=(b|0)<(l|0)?l:b;c=c+4|0;a=a+4|0;if((i|0)!=(a|0)){continue}break}}if(k){while(1){a=L[(c<<2)+e>>2];b=(a|0)>(b|0)?a:b;c=c+1|0;f=f+1|0;if((k|0)!=(f|0)){continue}break}}a=b+1|0}L[8513]=L[8513]+1;b=R(a,a);d=pa(ha[L[6798]](b,16)|0,0,b);b=R(a,3);i=(((b|0)<=3?3:b)-1>>>0)/3|0;L[8513]=L[8513]+1;k=ha[L[6798]](a<<4,16)|0;c=0;b=0;while(1){f=m+(c<<2)|0;l=L[f>>2];n=L[f+4>>2];r=P[f+8>>2];f=k+(b<<4)|0;L[f+12>>2]=0;P[f+8>>2]=r;L[f>>2]=l;L[f+4>>2]=n;c=c+3|0;f=(b|0)!=(i|0);b=b+1|0;if(f){continue}break}m=0;L[8513]=L[8513]+1;b=Ac(ha[L[6798]](1252,16)|0,j,a,k,0);if((h|0)>0){while(1){f=(m<<2)+e|0;c=L[f+4>>2];h=L[f>>2];j=R(h,a);f=L[f+8>>2];i=d+(j+f|0)|0;if(!M[i|0]){J[i|0]=1;J[d+(h+R(a,f)|0)|0]=1;Ha(b,f,h,0,0)}i=R(a,c);l=d+(i+h|0)|0;if(!M[l|0]){J[l|0]=1;J[d+(c+j|0)|0]=1;Ha(b,h,c,0,0)}j=d+(c+R(a,f)|0)|0;if(!M[j|0]){J[j|0]=1;J[d+(f+i|0)|0]=1;Ha(b,c,f,0,0)}pb(b,h,c,f,0);m=m+3|0;if((o|0)>(m|0)){continue}break}}if(q){yk(b)}if(k){L[8514]=L[8514]+1;ha[L[6799]](k)}if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}fa=g+32|0;return b|0}function WH(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;c=fa-32|0;fa=c;L[c+24>>2]=0;L[c+16>>2]=0;L[c+20>>2]=0;J[c+28|0]=1;a:{if(L[a+8>>2]<=0){break a}while(1){e=L[a+16>>2]+(j<<4)|0;b:{if(L[c+20>>2]!=(d|0)){break b}f=d?d<<1:1;if((f|0)<=(d|0)){break b}h=0;i=0;if(f){L[8513]=L[8513]+1;i=ha[L[6798]](f<<4,16)|0}if((d|0)>0){while(1){g=h<<4;k=g+i|0;g=g+L[c+24>>2]|0;L[k>>2]=L[g>>2];L[k+4>>2]=L[g+4>>2];L[k+8>>2]=L[g+8>>2];L[k+12>>2]=L[g+12>>2];h=h+1|0;if((h|0)!=(d|0)){continue}break}}d=L[c+24>>2];if(!(d?!d|!M[c+28|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[c+24>>2]=i;J[c+28|0]=1;L[c+20>>2]=f;d=L[c+16>>2]}d=L[c+24>>2]+(d<<4)|0;L[d>>2]=L[e>>2];L[d+4>>2]=L[e+4>>2];L[d+8>>2]=L[e+8>>2];L[d+12>>2]=L[e+12>>2];f=L[c+16>>2];d=f+1|0;L[c+16>>2]=d;j=j+1|0;if((j|0)>2]){continue}break}e=0;if((f|0)<0){break a}i=f+1|0;k=i&1;h=L[c+24>>2];if(f){i=i&-2;f=0;while(1){g=e<<4;j=g+h|0;ha[L[L[a>>2]+12>>2]](a,L[j>>2],L[j+4>>2],b)|0;g=h+(g|16)|0;ha[L[L[a>>2]+12>>2]](a,L[g>>2],L[g+4>>2],b)|0;e=e+2|0;f=f+2|0;if((i|0)!=(f|0)){continue}break}}if(!k){break a}e=h+(e<<4)|0;ha[L[L[a>>2]+12>>2]](a,L[e>>2],L[e+4>>2],b)|0}if(L[a+56>>2]>0){b=L[a- -64>>2];e=0;while(1){L[b+(e<<2)>>2]=-1;e=e+1|0;if((e|0)>2]){continue}break}d=L[c+16>>2]}if((d|0)>=2){jc(c+12|0,c+11|0,0,d-1|0);d=L[c+16>>2]}if((d|0)>0){e=0;while(1){b=L[c+24>>2]+(e<<4)|0;ha[L[L[a>>2]+8>>2]](a,L[b>>2],L[b+4>>2])|0;e=e+1|0;if((e|0)>2]){continue}break}}a=L[c+24>>2];if(!(a?!a|!M[c+28|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}fa=c+32|0}function gC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=S(0),h=S(0),i=0,j=S(0),k=S(0),l=S(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);i=fa-32|0;fa=i;h=P[b+20>>2];r=P[b+36>>2];s=P[b+24>>2];x=P[b+40>>2];j=P[b+4>>2];t=P[b+32>>2];o=P[b+8>>2];p=P[b>>2];u=P[b+16>>2];L[i+28>>2]=0;g=S(u-p);k=S(r-j);e=S(t-p);l=S(h-j);f=S(S(g*k)-S(e*l));m=l;l=S(x-o);n=S(s-o);k=S(S(m*l)-S(k*n));g=S(S(n*e)-S(l*g));e=S(S(o*f)+S(S(p*k)+S(j*g)));v=P[a+12>>2];m=P[a+4>>2];q=P[a+8>>2];l=S(S(S(f*v)+S(S(k*m)+S(g*q)))-e);w=P[a+28>>2];y=P[a+20>>2];z=P[a+24>>2];e=S(S(S(f*w)+S(S(k*y)+S(g*z)))-e);a:{if(S(l*e)>=S(0)){break a}b=L[a+36>>2];if(b&1&l<=S(0)){break a}e=S(l/S(l-e));if(!(e>2])){break a}n=S(S(1)-e);m=S(S(n*m)+S(y*e));p=S(p-m);q=S(S(n*q)+S(z*e));h=S(h-q);u=S(u-m);j=S(j-q);n=S(S(n*v)+S(w*e));s=S(s-n);o=S(o-n);w=S(S(f*f)+S(S(k*k)+S(g*g)));v=S(w*S(-9999999747378752e-20));if(!(S(S(S(S(p*h)-S(u*j))*f)+S(S(S(S(j*s)-S(h*o))*k)+S(g*S(S(o*u)-S(s*p)))))>=v)){break a}r=S(r-q);t=S(t-m);q=S(S(S(u*r)-S(t*h))*f);m=h;h=S(x-n);if(!(v<=S(q+S(S(S(S(m*h)-S(r*s))*k)+S(g*S(S(s*t)-S(h*u))))))|!(v<=S(S(S(S(t*j)-S(p*r))*f)+S(S(S(S(r*o)-S(j*h))*k)+S(g*S(S(h*p)-S(o*t))))))){break a}h=f;f=S(S(1)/S(_(w)));j=S(h*f);P[i+24>>2]=j;g=S(g*f);P[i+20>>2]=g;f=S(k*f);P[i+16>>2]=f;if(!(!(l<=S(0))|b&2)){L[i+12>>2]=0;P[i+8>>2]=-j;P[i+4>>2]=-g;P[i>>2]=-f;P[a+40>>2]=ha[L[L[a>>2]+12>>2]](a,i,e,c,d);break a}P[a+40>>2]=ha[L[L[a>>2]+12>>2]](a,i+16|0,e,c,d)}fa=i+32|0}function ZD(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=0,f=0,g=S(0),h=0,i=S(0),j=0,k=S(0),l=0,m=0,n=S(0),o=S(0),p=S(0),q=0,r=0,s=0,t=0,u=0,v=S(0),w=S(0),x=S(0),y=S(0),z=S(0),A=S(0),B=0,C=0;m=fa-2048|0;fa=m;L[a>>2]=0;L[a+4>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0;d=P[c+8>>2];i=P[c>>2];n=P[c+4>>2];g=S(S(d*d)+S(S(i*i)+S(n*n)));if(g>2];if((q|0)>0){c=L[b+100>>2];t=L[b+120>>2];n=S(-0xde0b6b000000000);r=q;while(1){d=S(-34028234663852886e22);j=-1;a:{if((q|0)<=(s|0)){break a}e=(r|0)>=128?128:r;l=(e|0)<=1?1:e;f=0;while(1){v=P[c>>2];w=P[b+12>>2];x=P[c+4>>2];y=P[b+16>>2];z=P[c+8>>2];g=P[t>>2];A=P[b+20>>2];k=S(ha[L[L[b>>2]+48>>2]](b));h=(f<<4)+m|0;L[h+12>>2]=0;P[h+8>>2]=S(z+S(g*S(o*A)))-S(o*k);P[h+4>>2]=S(x+S(g*S(p*y)))-S(p*k);P[h>>2]=S(v+S(g*S(i*w)))-S(i*k);t=t+4|0;c=c+16|0;f=f+1|0;if((l|0)!=(f|0)){continue}break}if((q|0)<=(s|0)){break a}B=e&1;b:{if((e|0)==1){e=0;break b}C=e&-2;e=0;f=0;while(1){h=(e<<4)+m|0;g=S(S(P[h+8>>2]*o)+S(S(P[h>>2]*i)+S(p*P[h+4>>2])));h=g>d;u=e|1;l=(u<<4)+m|0;k=S(S(P[l+8>>2]*o)+S(S(P[l>>2]*i)+S(p*P[l+4>>2])));d=h?g:d;l=k>d;d=l?k:d;j=l?u:h?e:j;e=e+2|0;f=f+2|0;if((C|0)!=(f|0)){continue}break}}if(!B){break a}f=(e<<4)+m|0;g=S(S(P[f+8>>2]*o)+S(S(P[f>>2]*i)+S(p*P[f+4>>2])));f=g>d;d=f?g:d;j=f?e:j}if(d>n){e=(j<<4)+m|0;j=L[e+12>>2];L[a+8>>2]=L[e+8>>2];L[a+12>>2]=j;j=L[e+4>>2];L[a>>2]=L[e>>2];L[a+4>>2]=j;n=d}r=r-128|0;s=s+128|0;if((s|0)<(q|0)){continue}break}}fa=m+2048|0}function sD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a:{b:{c:{switch(L[a+92>>2]-2|0){case 0:b=L[a+100>>2];L[c>>2]=L[a+96>>2];L[c+4>>2]=b;b=L[a+108>>2];L[c+8>>2]=L[a+104>>2];L[c+12>>2]=b;a=a+112|0;break b;case 1:d:{switch(b|0){case 0:b=L[a+100>>2];L[c>>2]=L[a+96>>2];L[c+4>>2]=b;b=L[a+108>>2];L[c+8>>2]=L[a+104>>2];L[c+12>>2]=b;a=a+112|0;break b;case 1:b=L[a+124>>2];L[c+8>>2]=L[a+120>>2];L[c+12>>2]=b;b=L[a+116>>2];L[c>>2]=L[a+112>>2];L[c+4>>2]=b;a=a+128|0;break b;case 2:break d;default:break a}}b=L[a+140>>2];L[c+8>>2]=L[a+136>>2];L[c+12>>2]=b;b=L[a+132>>2];L[c>>2]=L[a+128>>2];L[c+4>>2]=b;a=a+96|0;break b;case 2:break c;default:break a}}e:{switch(b|0){case 0:b=L[a+100>>2];L[c>>2]=L[a+96>>2];L[c+4>>2]=b;b=L[a+108>>2];L[c+8>>2]=L[a+104>>2];L[c+12>>2]=b;a=a+112|0;break b;case 1:b=L[a+124>>2];L[c+8>>2]=L[a+120>>2];L[c+12>>2]=b;b=L[a+116>>2];L[c>>2]=L[a+112>>2];L[c+4>>2]=b;a=a+128|0;break b;case 2:b=L[a+140>>2];L[c+8>>2]=L[a+136>>2];L[c+12>>2]=b;b=L[a+132>>2];L[c>>2]=L[a+128>>2];L[c+4>>2]=b;a=a+96|0;break b;case 3:b=L[a+100>>2];L[c>>2]=L[a+96>>2];L[c+4>>2]=b;b=L[a+108>>2];L[c+8>>2]=L[a+104>>2];L[c+12>>2]=b;a=a+144|0;break b;case 4:b=L[a+124>>2];L[c+8>>2]=L[a+120>>2];L[c+12>>2]=b;b=L[a+116>>2];L[c>>2]=L[a+112>>2];L[c+4>>2]=b;a=a+144|0;break b;case 5:break e;default:break a}}b=L[a+140>>2];L[c+8>>2]=L[a+136>>2];L[c+12>>2]=b;b=L[a+132>>2];L[c>>2]=L[a+128>>2];L[c+4>>2]=b;a=a+144|0}b=L[a+4>>2];L[d>>2]=L[a>>2];L[d+4>>2]=b;b=L[a+12>>2];L[d+8>>2]=L[a+8>>2];L[d+12>>2]=b}}function OG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=S(0),h=S(0),i=0,j=S(0),k=0,l=S(0),m=0,n=0,o=0;i=fa-128|0;fa=i;g=P[b>>2];h=P[b+16>>2];l=g>2];a:{if(P[a+28>>2]<(j>l?l:j)){break a}e=g>h;if(P[(j<(e?g:h)?!e<<4:32)+b>>2]>2]){break a}g=P[b+8>>2];e=b+24|0;h=P[e>>2];l=g>2];if(P[a+36>>2]<(j>l?l:j)){break a}k=e;e=g>h;if(P[(j<(e?g:h)?e?b+8|0:k:f)>>2]>2]){break a}g=P[b+4>>2];e=b+20|0;h=P[e>>2];l=g>2];if(P[a+32>>2]<(j>l?l:j)){break a}k=e;e=g>h;if(L[L[L[a+4>>2]+4>>2]+4>>2]>19|P[(j<(e?g:h)?e?b+4|0:k:f)>>2]>2]){break a}m=L[a+48>>2];e=yb(i+24|0);L[e+4>>2]=1;L[e>>2]=2236;k=L[b+12>>2];f=e- -64|0;L[f>>2]=L[b+8>>2];L[f+4>>2]=k;f=L[b+4>>2];L[e+56>>2]=L[b>>2];L[e+60>>2]=f;f=L[b+28>>2];L[e+80>>2]=L[b+24>>2];L[e+84>>2]=f;f=L[b+20>>2];L[e+72>>2]=L[b+16>>2];L[e+76>>2]=f;f=L[b+44>>2];L[e+96>>2]=L[b+40>>2];L[e+100>>2]=f;f=L[b+36>>2];L[e+88>>2]=L[b+32>>2];L[e+92>>2]=f;P[e+44>>2]=P[a+56>>2];b=L[a+8>>2];f=L[b+8>>2];k=L[b+12>>2];L[i+4>>2]=e;L[i+20>>2]=d;L[i+16>>2]=c;L[i+8>>2]=f;L[i+12>>2]=k;L[i>>2]=b;b=ha[L[L[m>>2]+8>>2]](m,L[a+4>>2],i,L[a+64>>2])|0;f=L[a+44>>2];k=L[f+8>>2];b:{if(L[k+8>>2]==L[L[a+8>>2]+8>>2]){n=f+8|0;o=2;break b}k=L[f+12>>2];n=f+12|0;o=3}L[n>>2]=i;ha[L[L[f>>2]+(o<<2)>>2]](f,c,d);ha[L[L[b>>2]+8>>2]](b,L[a+4>>2],i,L[a+52>>2],L[a+44>>2]);c=L[a+44>>2];L[(L[L[c+8>>2]+8>>2]==L[L[a+8>>2]+8>>2]?8:12)+c>>2]=k;ha[L[L[b>>2]>>2]](b)|0;ha[L[L[m>>2]+60>>2]](m,b);Oa(e)}fa=i+128|0}function Zf(a,b){var c=0,d=0,e=0,f=0,g=0,h=S(0),i=0,j=0;e=(E(b),x(2));f=(e<<1)+16777216>>>0<16777217;a:{b:{c:{c=(E(a),x(2));d:{if(c-2139095040>>>0>=2164260864){if(f){break d}break b}if(!f){break c}}h=S(1);if((c|0)==1065353216){break a}g=e<<1;if(!g){break a}c=c<<1;if(!(g>>>0<4278190081&c>>>0<=4278190080)){return S(a+b)}if((c|0)==2130706432){break a}return c>>>0>2130706431^(e|0)>=0?S(0):S(b*b)}if((c<<1)+16777216>>>0<16777217){h=S(a*a);if((c|0)<0){h=(Qj(e)|0)==1?S(-h):h}if((e|0)>=0){break a}c=fa-16|0;P[c+12>>2]=S(1)/h;return P[c+12>>2]}if((c|0)<0){e=Qj(e);if(!e){a=S(a-a);return S(a/a)}g=((e|0)==1)<<16;c=c&2147483647}if(c>>>0>8388607){break b}c=((E(S(a*S(8388608))),x(2))&2147483647)-192937984|0}e=c-1060306944|0;f=e>>>15&240;d=+(z(2,c-(e&-8388608)|0),F())*Q[f+26536>>3]+-1;i=d*d;d=((Q[3349]*d+Q[3350])*(i*i)+((Q[3351]*d+Q[3352])*i+(Q[3353]*d+(Q[f+26544>>3]+ +(e>>23)))))*+b;C(+d);c=x(1)|0;x(0)|0;e:{c=c&2147450880;if((c|0)==1079967744|c>>>0<1079967744){break e}if(d>127.99999995700433){c=fa-16|0;P[c+12>>2]=g?S(-15845632502852868e13):S(15845632502852868e13);return S(P[c+12>>2]*S(15845632502852868e13))}if(!(d<=-150)){break e}c=fa-16|0;P[c+12>>2]=g?S(-2524354896707238e-44):S(2524354896707238e-44);return S(P[c+12>>2]*S(2524354896707238e-44))}i=Q[3308];j=i+d;d=d-(j-i);d=(Q[3309]*d+Q[3310])*(d*d)+(Q[3311]*d+1);C(+j);x(1)|0;f=x(0)|0;c=g+f|0;g=((f&31)<<3)+26208|0;f=L[g>>2];e=f;c=L[g+4>>2]+(c<<15)|0;z(0,e|0);z(1,(e>>>0>>0?c+1|0:c)|0);h=S(d*+B())}return h}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;L[7537]=L[7537]+1;e=L[b+12>>2]>L[c+12>>2];h=e?b:c;f=L[h+12>>2];i=e?c:b;g=L[i+12>>2];b=f<<16|g;b=(b<<15^-1)+b|0;b=R(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;j=L[a+12>>2]-1&(b>>16^b);c=L[L[a+44>>2]+(j<<2)>>2];a:{if((c|0)==-1){break a}k=L[a- -64>>2];e=L[a+16>>2];while(1){b=e+(c<<4)|0;if(!((g|0)==L[L[b>>2]+12>>2]&(f|0)==L[L[b+4>>2]+12>>2])){c=L[(c<<2)+k>>2];if((c|0)!=-1){continue}break a}break}ha[L[L[a>>2]+32>>2]](a,b,d);l=L[(e+(c<<4)|0)+12>>2];b:{c:{f=L[a+44>>2]+(j<<2)|0;c=L[f>>2];e=b-L[a+16>>2]>>4;if((c|0)==(e|0)){break c}g=L[a+64>>2];while(1){b=c;c=L[g+(b<<2)>>2];if((e|0)!=(c|0)){continue}break}if((b|0)==-1){break c}c=b<<2;b=L[a+64>>2];L[c+b>>2]=L[b+(e<<2)>>2];break b}L[f>>2]=L[L[a+64>>2]+(e<<2)>>2]}f=L[a+8>>2]-1|0;b=L[a+72>>2];if(b){ha[L[L[b>>2]+12>>2]](b,i,h,d)|0}if((e|0)!=(f|0)){d:{e:{h=L[a+16>>2];d=h+(f<<4)|0;b=L[L[d+4>>2]+12>>2]<<16|L[L[d>>2]+12>>2];b=(b<<15^-1)+b|0;b=R(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;i=L[a+12>>2]-1&(b>>16^b);g=L[a+44>>2]+(i<<2)|0;c=L[g>>2];if((f|0)==(c|0)){break e}j=L[a+64>>2];while(1){b=c;c=L[j+(b<<2)>>2];if((f|0)!=(c|0)){continue}break}if((b|0)==-1){break e}c=b<<2;b=L[a+64>>2];L[c+b>>2]=L[b+(f<<2)>>2];break d}L[g>>2]=L[L[a+64>>2]+(f<<2)>>2]}c=L[d+4>>2];b=h+(e<<4)|0;L[b>>2]=L[d>>2];L[b+4>>2]=c;c=L[d+12>>2];L[b+8>>2]=L[d+8>>2];L[b+12>>2]=c;b=L[a+44>>2]+(i<<2)|0;L[L[a+64>>2]+(e<<2)>>2]=L[b>>2];L[b>>2]=e}L[a+8>>2]=L[a+8>>2]-1}return l|0}function Vo(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=S(e);f=S(f);g=S(g);h=S(h);i=i|0;j=j|0;k=S(k);var l=0;l=fa-288|0;fa=l;L[l+284>>2]=a;L[l+280>>2]=b;L[l+276>>2]=c;L[l+272>>2]=d;P[l+268>>2]=e;P[l+264>>2]=f;P[l+260>>2]=g;P[l+256>>2]=h;L[l+252>>2]=i;J[l+251|0]=j;P[l+244>>2]=k;a=L[l+284>>2];L[l+240>>2]=L[l+272>>2];Ub(l+224|0,L[l+276>>2],L[l+272>>2]);P[l+220>>2]=P[l+244>>2]*S(.01745329238474369);e=S(S(P[l+256>>2]-P[l+260>>2])/P[l+220>>2]);a:{if(S(T(e))>2]=b;if(!L[l+216>>2]){L[l+216>>2]=1}b=L[l+280>>2];c=l+152|0;Xb(c,l+268|0,L[l+240>>2]);P[l+148>>2]=Ra(P[l+260>>2]);d=l+168|0;Ga(d,c,l+148|0);c=l+184|0;ta(c,b,d);b=l+116|0;Xb(b,l+264|0,l+224|0);P[l+112>>2]=Qa(P[l+260>>2]);d=l+132|0;Ga(d,b,l+112|0);ta(l+200|0,c,d);if(J[l+251|0]&1){ha[L[L[a>>2]+8>>2]](a,L[l+280>>2],l+200|0,L[l+252>>2])}L[l+108>>2]=1;while(1){if(L[l+108>>2]<=L[l+216>>2]){e=P[l+260>>2];P[l+104>>2]=e+S(S(S(P[l+256>>2]-e)*S(L[l+108>>2]))/S(L[l+216>>2]));b=L[l+280>>2];c=l+40|0;Xb(c,l+268|0,L[l+240>>2]);P[l+36>>2]=Ra(P[l+104>>2]);d=l+56|0;Ga(d,c,l+36|0);c=l+72|0;ta(c,b,d);b=l+4|0;Xb(b,l+264|0,l+224|0);P[l>>2]=Qa(P[l+104>>2]);d=l+20|0;Ga(d,b,l);b=l+88|0;ta(b,c,d);ha[L[L[a>>2]+8>>2]](a,l+200|0,b,L[l+252>>2]);b=L[l+100>>2];L[l+208>>2]=L[l+96>>2];L[l+212>>2]=b;b=L[l+92>>2];L[l+200>>2]=L[l+88>>2];L[l+204>>2]=b;L[l+108>>2]=L[l+108>>2]+1;continue}break}if(J[l+251|0]&1){ha[L[L[a>>2]+8>>2]](a,L[l+280>>2],l+200|0,L[l+252>>2])}fa=l+288|0}function ec(a,b,c,d){var e=S(0),f=S(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=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);g=fa+-64|0;fa=g;p=P[b+24>>2];q=P[b+20>>2];r=P[b+40>>2];s=P[b+36>>2];j=P[a+40>>2];k=P[a+20>>2];n=P[a+36>>2];l=P[a+24>>2];t=P[b+8>>2];u=P[b>>2];v=P[b+4>>2];w=P[b+16>>2];x=P[b+32>>2];f=P[a+8>>2];h=P[a+4>>2];o=P[a+32>>2];m=P[a+16>>2];i=P[a>>2];L[g+60>>2]=0;L[g+44>>2]=0;z=S(S(m*n)-S(o*k));A=S(S(k*j)-S(n*l));B=S(S(l*o)-S(j*m));e=S(S(1)/S(S(f*z)+S(S(i*A)+S(h*B))));y=S(S(S(i*k)-S(m*h))*e);k=S(S(S(h*l)-S(k*f))*e);l=S(S(S(f*m)-S(l*i))*e);P[g+56>>2]=S(r*y)+S(S(x*k)+S(s*l));m=S(S(S(h*o)-S(n*i))*e);h=S(S(S(f*n)-S(j*h))*e);f=S(S(S(i*j)-S(o*f))*e);P[g+52>>2]=S(r*m)+S(S(x*h)+S(s*f));P[g+40>>2]=S(y*p)+S(S(k*w)+S(l*q));P[g+36>>2]=S(m*p)+S(S(h*w)+S(f*q));L[g+28>>2]=0;i=S(z*e);j=S(A*e);e=S(B*e);P[g+48>>2]=S(r*i)+S(S(x*j)+S(s*e));P[g+32>>2]=S(i*p)+S(S(j*w)+S(e*q));P[g+24>>2]=S(y*t)+S(S(k*u)+S(v*l));P[g+20>>2]=S(m*t)+S(S(h*u)+S(v*f));P[g+16>>2]=S(i*t)+S(S(j*u)+S(v*e));Ma(g+16|0,g);f=P[g+12>>2];h=P[g+8>>2];i=P[g>>2];j=P[g+4>>2];e=S(S(1)/S(_(S(S(f*f)+S(S(h*h)+S(S(i*i)+S(j*j)))))));f=S(f*e);f=fS(1)?S(1):f);P[d>>2]=f+f;L[c+12>>2]=0;f=S(h*e);h=S(i*e);e=S(j*e);i=S(S(f*f)+S(S(h*h)+S(e*e)));a:{if(i>2]=1065353216;L[c+4>>2]=0;e=S(0);break a}j=e;e=S(S(1)/S(_(i)));P[c+4>>2]=j*e;P[c>>2]=h*e;e=S(f*e)}P[c+8>>2]=e;fa=g- -64|0}function hA(a,b,c){a=a|0;b=b|0;c=c|0;oh(a,b,c);P[b+256>>2]=P[a+264>>2];P[b+260>>2]=P[a+268>>2];P[b+264>>2]=P[a+272>>2];P[b+268>>2]=P[a+276>>2];P[b+272>>2]=P[a+280>>2];P[b+276>>2]=P[a+284>>2];P[b+280>>2]=P[a+288>>2];P[b+284>>2]=P[a+292>>2];P[b+288>>2]=P[a+296>>2];P[b+292>>2]=P[a+300>>2];P[b+296>>2]=P[a+304>>2];P[b+300>>2]=P[a+308>>2];P[b+304>>2]=P[a+312>>2];P[b+308>>2]=P[a+316>>2];P[b+312>>2]=P[a+320>>2];P[b+316>>2]=P[a+324>>2];P[b+320>>2]=P[a+328>>2];P[b+324>>2]=P[a+332>>2];P[b+328>>2]=P[a+336>>2];P[b+332>>2]=P[a+340>>2];P[b+448>>2]=P[a+344>>2];P[b+336>>2]=P[a+544>>2];P[b+340>>2]=P[a+548>>2];P[b+344>>2]=P[a+552>>2];P[b+348>>2]=P[a+556>>2];P[b+352>>2]=P[a+348>>2];P[b+356>>2]=P[a+352>>2];P[b+360>>2]=P[a+356>>2];P[b+364>>2]=P[a+360>>2];P[b+368>>2]=P[a+364>>2];P[b+372>>2]=P[a+368>>2];P[b+376>>2]=P[a+372>>2];P[b+380>>2]=P[a+376>>2];P[b+384>>2]=P[a+380>>2];P[b+388>>2]=P[a+384>>2];P[b+392>>2]=P[a+388>>2];P[b+396>>2]=P[a+392>>2];P[b+400>>2]=P[a+396>>2];P[b+404>>2]=P[a+400>>2];P[b+408>>2]=P[a+404>>2];P[b+412>>2]=P[a+408>>2];P[b+416>>2]=P[a+412>>2];P[b+420>>2]=P[a+416>>2];P[b+424>>2]=P[a+420>>2];P[b+428>>2]=P[a+424>>2];P[b+432>>2]=P[a+428>>2];P[b+436>>2]=P[a+432>>2];P[b+440>>2]=P[a+436>>2];P[b+444>>2]=P[a+440>>2];P[b+452>>2]=P[a+444>>2];P[b+456>>2]=P[a+448>>2];L[b+484>>2]=M[a+452|0];P[b+460>>2]=P[a+456>>2];P[b+464>>2]=P[a+460>>2];P[b+468>>2]=P[a+464>>2];P[b+472>>2]=P[a+468>>2];P[b+476>>2]=P[a+472>>2];P[b+480>>2]=P[a+476>>2];return 3502}function wA(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;wa(2806);b=L[a+204>>2];ha[L[L[b>>2]+8>>2]](b,a,L[a+24>>2]);h=L[a+308>>2];if((h|0)>0){i=L[a+316>>2];j=L[a+204>>2];while(1){b=L[i+(g<<2)>>2];c=L[b+740>>2];a:{if(!c){break a}b=L[b+744>>2];if(!b|L[c+204>>2]&3|M[b+204|0]&3){break a}b=L[b+208>>2];d=L[j+16>>2];e=L[c+208>>2];f=d+(e<<3)|0;c=L[f>>2];if((c|0)!=(e|0)){while(1){c=d+(c<<3)|0;L[f>>2]=L[c>>2];e=L[c>>2];f=d+(e<<3)|0;c=L[f>>2];if((c|0)!=(e|0)){continue}break}}f=d+(b<<3)|0;c=L[f>>2];if((c|0)!=(b|0)){while(1){b=d+(c<<3)|0;L[f>>2]=L[b>>2];b=L[b>>2];f=d+(b<<3)|0;c=L[f>>2];if((b|0)!=(c|0)){continue}break}}if((b|0)==(e|0)){break a}c=d+(e<<3)|0;L[c>>2]=b;b=d+(b<<3)|0;L[b+4>>2]=L[b+4>>2]+L[c+4>>2]}g=g+1|0;if((h|0)!=(g|0)){continue}break}}h=L[a+212>>2];if((h|0)>0){i=L[a+220>>2];j=L[a+204>>2];f=0;while(1){b=L[i+(f<<2)>>2];b:{if(!M[b+20|0]){break b}c=L[b+28>>2];if(M[c+204|0]&3){break b}b=L[b+32>>2];if(M[b+204|0]&3){break b}b=L[b+208>>2];d=L[j+16>>2];e=L[c+208>>2];c=d+(e<<3)|0;g=L[c>>2];if((g|0)!=(e|0)){while(1){e=c;c=d+(g<<3)|0;L[e>>2]=L[c>>2];e=L[c>>2];c=d+(e<<3)|0;g=L[c>>2];if((g|0)!=(e|0)){continue}break}}c=d+(b<<3)|0;g=L[c>>2];if((g|0)!=(b|0)){while(1){b=d+(g<<3)|0;L[c>>2]=L[b>>2];b=L[b>>2];c=d+(b<<3)|0;g=L[c>>2];if((b|0)!=(g|0)){continue}break}}if((b|0)==(e|0)){break b}c=d+(e<<3)|0;L[c>>2]=b;b=d+(b<<3)|0;L[b+4>>2]=L[b+4>>2]+L[c+4>>2]}f=f+1|0;if((h|0)!=(f|0)){continue}break}}b=L[a+204>>2];ha[L[L[b>>2]+12>>2]](b,a);va()}function ud(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);f=L[a+9288>>2];if(f){g=L[f+48>>2];if(g){L[g+44>>2]=L[f+44>>2]}g=L[f+44>>2];if(g){L[g+48>>2]=L[f+48>>2]}if(L[a+9288>>2]==(f|0)){L[a+9288>>2]=L[f+48>>2]}g=a+9292|0;L[g>>2]=L[g>>2]-1;L[f+44>>2]=0;L[f+48>>2]=L[a+9280>>2];g=L[a+9280>>2];if(g){L[g+44>>2]=f}L[a+9280>>2]=f;g=a+9284|0;L[g>>2]=L[g>>2]+1;L[f+28>>2]=d;L[f+24>>2]=c;L[f+20>>2]=b;J[f+55|0]=0;k=P[c+24>>2];q=P[d+24>>2];h=P[b+24>>2];l=P[d+20>>2];j=P[b+20>>2];m=P[c+20>>2];n=P[c+16>>2];o=P[d+16>>2];i=P[b+16>>2];L[f+12>>2]=0;n=S(n-i);l=S(l-j);i=S(o-i);m=S(m-j);j=S(S(n*l)-S(i*m));P[f+8>>2]=j;k=S(k-h);o=S(k*i);i=S(q-h);h=S(o-S(i*n));P[f+4>>2]=h;i=S(S(m*i)-S(l*k));P[f>>2]=i;p=2;a:{h=S(_(S(S(j*j)+S(S(i*i)+S(h*h)))));if(!(h>S(9999999747378752e-20))){break a}g=f+16|0;b:{if(zg(f,b,c,g)){break b}if(zg(f,c,d,g)){break b}if(zg(f,d,b,g)){break b}P[f+16>>2]=S(S(P[b+24>>2]*P[f+8>>2])+S(S(P[b+16>>2]*P[f>>2])+S(P[b+20>>2]*P[f+4>>2])))/h}h=S(S(1)/h);P[f>>2]=h*P[f>>2];P[f+4>>2]=h*P[f+4>>2];P[f+8>>2]=h*P[f+8>>2];if(e){return f}p=3;if(!(P[g>>2]>=S(-9999999747378752e-21))){break a}return f}L[a>>2]=p;b=L[f+48>>2];if(b){L[b+44>>2]=L[f+44>>2]}b=L[f+44>>2];if(b){L[b+48>>2]=L[f+48>>2]}if(L[a+9280>>2]==(f|0)){L[a+9280>>2]=L[f+48>>2]}L[a+9284>>2]=L[a+9284>>2]-1;L[f+44>>2]=0;L[f+48>>2]=L[a+9288>>2];b=L[a+9288>>2];if(b){L[b+44>>2]=f}L[a+9288>>2]=f;L[a+9292>>2]=L[a+9292>>2]+1;return 0}L[a>>2]=5;return 0}function Qe(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:{b:{c:{d:{e:{if(M[a+164|0]){m=a+128|0;c=L[m>>2];if((c|0)!=L[a+132>>2]){break b}i=c?c<<1:1;if((i|0)<=(c|0)){break b}if(i){L[8513]=L[8513]+1;h=ha[L[6798]](i<<2,16)|0;c=L[a+128>>2]}d=L[a+136>>2];if((c|0)<=0){break e}if(c>>>0>=4){k=c&-4;while(1){f=e<<2;L[f+h>>2]=L[d+f>>2];j=f|4;L[j+h>>2]=L[d+j>>2];j=f|8;L[j+h>>2]=L[d+j>>2];f=f|12;L[f+h>>2]=L[d+f>>2];e=e+4|0;l=l+4|0;if((k|0)!=(l|0)){continue}break}}c=c&3;if(!c){break d}while(1){f=e<<2;L[f+h>>2]=L[d+f>>2];e=e+1|0;g=g+1|0;if((c|0)!=(g|0)){continue}break}break d}m=a+148|0;g=L[m>>2];f:{if((g|0)!=L[a+152>>2]){break f}f=g?g<<1:1;if((f|0)<=(g|0)){break f}if(f){L[8513]=L[8513]+1;h=ha[L[6798]](f<<1,16)|0;g=L[a+148>>2]}c=L[a+156>>2];g:{h:{if((g|0)>0){if(g>>>0>=4){i=g&-4;while(1){d=e<<1;K[d+h>>1]=N[c+d>>1];k=d|2;K[k+h>>1]=N[c+k>>1];k=d|4;K[k+h>>1]=N[c+k>>1];d=d|6;K[d+h>>1]=N[c+d>>1];e=e+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}d=g&3;if(d){while(1){i=e<<1;K[i+h>>1]=N[c+i>>1];e=e+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}if(M[a+160|0]){break h}break g}if(!c|!M[a+160|0]){break g}}if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}g=L[a+148>>2]}L[a+156>>2]=h;L[a+152>>2]=f;J[a+160|0]=1}e=L[a+156>>2];K[e+(g<<1)>>1]=b;break a}if(!d){break c}}if(d?M[a+140|0]:0){L[8514]=L[8514]+1;ha[L[6799]](d)}c=L[a+128>>2]}L[a+136>>2]=h;L[a+132>>2]=i;J[a+140|0]=1}e=L[a+136>>2];L[e+(c<<2)>>2]=b;g=L[a+128>>2]}L[m>>2]=g+1;L[L[a+32>>2]+4>>2]=e}function DE(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=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=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);f=fa-48|0;fa=f;j=P[b+36>>2];k=P[b+20>>2];l=P[b+40>>2];m=P[b+24>>2];n=P[b+4>>2];o=P[b+8>>2];g=P[c+8>>2];p=P[b+32>>2];h=P[c>>2];q=P[b>>2];i=P[c+4>>2];r=P[b+16>>2];L[f+44>>2]=0;P[f+32>>2]=S(p*g)+S(S(q*h)+S(r*i));P[f+40>>2]=S(l*g)+S(S(o*h)+S(i*m));P[f+36>>2]=S(j*g)+S(S(n*h)+S(i*k));s=f+16|0;ha[L[L[a>>2]+64>>2]](s,a,f+32|0);m=P[b+56>>2];n=P[b+40>>2];o=P[b+36>>2];p=P[b+52>>2];q=P[b+24>>2];r=P[b+20>>2];t=P[b+32>>2];u=P[b+48>>2];v=P[b+8>>2];w=P[b>>2];x=P[b+4>>2];y=P[b+16>>2];g=P[f+24>>2];h=P[f+16>>2];i=P[f+20>>2];L[f+12>>2]=0;P[f+8>>2]=-P[f+40>>2];P[f+4>>2]=-P[f+36>>2];P[f>>2]=-P[f+32>>2];ha[L[L[a>>2]+64>>2]](s,a,f);z=P[b+56>>2];A=P[b+40>>2];B=P[b+36>>2];C=P[b+52>>2];D=P[b+24>>2];E=P[b+20>>2];F=P[b+32>>2];G=P[b+48>>2];H=P[b+8>>2];I=P[b>>2];J=P[b+4>>2];K=P[b+16>>2];j=P[f+24>>2];k=P[f+16>>2];l=P[f+20>>2];P[d>>2]=S(S(m+S(S(g*n)+S(S(h*t)+S(i*o))))*P[c+8>>2])+S(S(S(u+S(S(g*v)+S(S(h*w)+S(i*x))))*P[c>>2])+S(S(p+S(S(g*q)+S(S(h*y)+S(i*r))))*P[c+4>>2]));g=S(S(S(z+S(S(j*A)+S(S(k*F)+S(l*B))))*P[c+8>>2])+S(S(S(G+S(S(j*H)+S(S(k*I)+S(l*J))))*P[c>>2])+S(S(C+S(S(j*D)+S(S(k*K)+S(l*E))))*P[c+4>>2])));P[e>>2]=g;h=P[d>>2];if(h>g){P[d>>2]=g;P[e>>2]=h}fa=f+48|0}function Wv(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;g=fa-16|0;fa=g;L[g+12>>2]=a;L[g+8>>2]=b;L[g+4>>2]=c;a=L[g+8>>2];b=L[g+4>>2];h=fa-16|0;fa=h;L[h+12>>2]=L[g+12>>2];L[h+8>>2]=a;L[h+4>>2]=b;a=L[h+8>>2];i=fa-16|0;fa=i;j=L[h+12>>2];L[i+12>>2]=j+152;L[i+8>>2]=a;a=fa-16|0;f=L[i+12>>2];L[a+12>>2]=f;L[i+4>>2]=L[L[a+12>>2]+4>>2];a=L[i+4>>2];b=fa-16|0;L[b+12>>2]=f;if(L[L[b+12>>2]+8>>2]==(a|0)){a=fa-16|0;L[a+12>>2]=f;b=L[L[a+12>>2]+4>>2];L[a+12>>2]=f;L[a+8>>2]=b;if(L[a+8>>2]){a=L[a+8>>2]<<1}else{a=1}b=fa-16|0;fa=b;L[b+12>>2]=f;L[b+8>>2]=a;a=fa-16|0;c=L[b+12>>2];L[a+12>>2]=c;if(L[L[a+12>>2]+8>>2]>2]){d=L[b+8>>2];a=fa-16|0;fa=a;L[a+8>>2]=c;L[a+4>>2]=d;e=L[a+8>>2];a:{if(L[a+4>>2]){k=L[a+4>>2];d=fa-16|0;fa=d;L[d+12>>2]=e;L[d+8>>2]=k;L[d+4>>2]=0;e=L[d+8>>2]<<6;L[8513]=L[8513]+1;e=ha[L[6798]](e,16)|0;fa=d+16|0;L[a+12>>2]=e;break a}L[a+12>>2]=0}fa=a+16|0;L[b+4>>2]=L[a+12>>2];a=fa;d=a-16|0;L[d+12>>2]=c;d=L[L[d+12>>2]+4>>2];e=L[b+4>>2];a=a-32|0;fa=a;L[a+28>>2]=c;L[a+24>>2]=0;L[a+20>>2]=d;L[a+16>>2]=e;d=L[a+28>>2];L[a+12>>2]=L[a+24>>2];while(1){if(L[a+12>>2]>2]){e=L[a+12>>2]<<6;Yb(e+L[a+16>>2]|0,e+L[d+12>>2]|0);L[a+12>>2]=L[a+12>>2]+1;continue}break}fa=a+32|0;a=fa-16|0;L[a+12>>2]=c;Db(c,L[L[a+12>>2]+4>>2]);jb(c);J[c+16|0]=1;L[c+12>>2]=L[b+4>>2];L[c+8>>2]=L[b+8>>2]}fa=b+16|0}Yb(L[f+12>>2]+(L[f+4>>2]<<6)|0,L[i+8>>2]);L[f+4>>2]=L[f+4>>2]+1;fa=i+16|0;Hf(j+172|0,h+4|0);fa=h+16|0;fa=g+16|0}function Nk(a,b){a=a|0;b=S(b);var c=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),l=0,m=0,n=S(0);wa(2960);l=L[a+232>>2];if((l|0)>0){while(1){c=L[L[a+240>>2]+(m<<2)>>2];if(!(M[c+204|0]&3)){d=P[c+312>>2];k=P[c+444>>2];e=Zf(S(S(1)-k),b);d=S(d*e);P[c+312>>2]=d;h=S(e*P[c+316>>2]);P[c+316>>2]=h;e=S(e*P[c+320>>2]);P[c+320>>2]=e;g=P[c+328>>2];n=P[c+448>>2];f=Zf(S(S(1)-n),b);g=S(g*f);P[c+328>>2]=g;i=S(f*P[c+332>>2]);P[c+332>>2]=i;f=S(f*P[c+336>>2]);P[c+336>>2]=f;a:{if(!M[c+452|0]){break a}if(!(!(P[c+464>>2]>S(S(f*f)+S(S(g*g)+S(i*i))))|!(P[c+460>>2]>S(S(e*e)+S(S(d*d)+S(h*h)))))){j=P[c+456>>2];f=S(f*j);P[c+336>>2]=f;i=S(i*j);P[c+332>>2]=i;g=S(g*j);P[c+328>>2]=g;e=S(e*j);P[c+320>>2]=e;h=S(h*j);P[c+316>>2]=h;d=S(d*j);P[c+312>>2]=d}j=S(_(S(S(e*e)+S(S(d*d)+S(h*h)))));b:{if(!(jS(.004999999888241291)){k=e;e=S(S(1)/j);P[c+320>>2]=k-S(S(k*e)*S(.004999999888241291));P[c+316>>2]=h-S(S(h*e)*S(.004999999888241291));P[c+312>>2]=d-S(S(d*e)*S(.004999999888241291));break b}L[c+312>>2]=0;L[c+316>>2]=0;L[c+320>>2]=0;L[c+324>>2]=0}d=S(_(S(S(f*f)+S(S(g*g)+S(i*i)))));if(!(dS(.004999999888241291)){d=S(S(1)/d);P[c+336>>2]=f-S(S(f*d)*S(.004999999888241291));P[c+332>>2]=i-S(S(i*d)*S(.004999999888241291));P[c+328>>2]=g-S(S(g*d)*S(.004999999888241291));break a}L[c+328>>2]=0;L[c+332>>2]=0;L[c+336>>2]=0;L[c+340>>2]=0}ue(c,b,c+68|0);l=L[a+232>>2]}m=m+1|0;if((m|0)<(l|0)){continue}break}}va()}function rn(a,b){var c=0,d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=0;c=fa+-64|0;fa=c;k=L[b+192>>2];ha[L[L[k>>2]+8>>2]](k,b+4|0,c+48|0,c+32|0);d=P[6794];g=S(P[c+48>>2]-d);P[c+48>>2]=g;h=S(P[c+52>>2]-d);P[c+52>>2]=h;f=S(P[c+56>>2]-d);P[c+56>>2]=f;e=S(d+P[c+32>>2]);P[c+32>>2]=e;i=S(d+P[c+36>>2]);P[c+36>>2]=i;j=S(d+P[c+40>>2]);P[c+40>>2]=j;a:{if(M[b+204|0]&3|(!M[a+44|0]|L[b+236>>2]!=2)){break a}k=L[b+192>>2];ha[L[L[k>>2]+8>>2]](k,b+68|0,c+16|0,c);h=S(P[c+16>>2]-d);P[c+16>>2]=h;f=S(P[c+20>>2]-d);P[c+20>>2]=f;e=S(P[c+24>>2]-d);P[c+24>>2]=e;i=S(d+P[c>>2]);P[c>>2]=i;j=S(d+P[c+4>>2]);P[c+4>>2]=j;d=S(d+P[c+8>>2]);P[c+8>>2]=d;g=P[c+48>>2];if(h>2]=h;g=h}h=P[c+52>>2];if(f>2]=f;h=f}f=P[c+56>>2];if(e>2]=e;f=e}e=P[c+28>>2];if(e>2]){P[c+60>>2]=e}e=P[c+32>>2];if(i>e){P[c+32>>2]=i;e=i}i=P[c+36>>2];if(j>i){P[c+36>>2]=j;i=j}j=P[c+40>>2];if(d>j){P[c+40>>2]=d;j=d}d=P[c+12>>2];if(!(d>P[c+44>>2])){break a}P[c+44>>2]=d}k=L[a+68>>2];b:{c:{if(!(J[b+204|0]&1)){f=S(j-f);g=S(e-g);e=S(g*g);g=S(i-h);if(!(S(S(f*f)+S(e+S(g*g)))>2]+16>>2]](k,L[b+188>>2],c+48|0,c+32|0,L[a+24>>2]);break b}if((L[b+216>>2]&-2)!=4){L[b+216>>2]=5}if(M[30164]){break b}b=L[a+72>>2];if(!b){break b}J[30164]=1;ha[L[L[b>>2]+36>>2]](b,3020);b=L[a+72>>2];ha[L[L[b>>2]+36>>2]](b,4395);b=L[a+72>>2];ha[L[L[b>>2]+36>>2]](b,4472);a=L[a+72>>2];ha[L[L[a>>2]+36>>2]](a,4463)}fa=c- -64|0}function LD(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=0,f=0,g=0,h=0,i=S(0),j=S(0),k=0,l=S(0),m=S(0),n=0,o=0,p=S(0),q=0,r=S(0),s=0;g=fa-2048|0;fa=g;L[a>>2]=0;L[a+4>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0;d=P[c+8>>2];i=P[c>>2];l=P[c+4>>2];j=S(S(d*d)+S(S(i*i)+S(l*l)));if(j>2]+96>>2]](b)|0)>0){l=S(-0xde0b6b000000000);while(1){e=128;a:{b:{if(((ha[L[L[b>>2]+96>>2]](b)|0)-o|0)>127){break b}e=(ha[L[L[b>>2]+96>>2]](b)|0)-o|0;if((e|0)>0){break b}d=S(-34028234663852886e22);f=-1;break a}c=0;h=(e|0)==1;if(!h){k=e&-2;f=0;while(1){ha[L[L[b>>2]+108>>2]](b,c,(c<<4)+g|0);n=c|1;ha[L[L[b>>2]+108>>2]](b,n,(n<<4)+g|0);c=c+2|0;f=f+2|0;if((k|0)!=(f|0)){continue}break}}n=e&1;if(n){ha[L[L[b>>2]+108>>2]](b,c,(c<<4)+g|0)}c:{if(h){c=0;f=-1;d=S(-34028234663852886e22);break c}s=e&-2;c=0;f=-1;d=S(-34028234663852886e22);e=0;while(1){h=(c<<4)+g|0;j=S(S(P[h+8>>2]*m)+S(S(P[h>>2]*i)+S(p*P[h+4>>2])));h=j>d;q=c|1;k=(q<<4)+g|0;r=S(S(P[k+8>>2]*m)+S(S(P[k>>2]*i)+S(p*P[k+4>>2])));d=h?j:d;k=r>d;d=k?r:d;f=k?q:h?c:f;c=c+2|0;e=e+2|0;if((s|0)!=(e|0)){continue}break}}if(!n){break a}e=(c<<4)+g|0;j=S(S(P[e+8>>2]*m)+S(S(P[e>>2]*i)+S(p*P[e+4>>2])));e=j>d;d=e?j:d;f=e?c:f}if(d>l){c=(f<<4)+g|0;e=L[c+12>>2];L[a+8>>2]=L[c+8>>2];L[a+12>>2]=e;e=L[c+4>>2];L[a>>2]=L[c>>2];L[a+4>>2]=e;l=d}o=o+128|0;if((ha[L[L[b>>2]+96>>2]](b)|0)>(o|0)){continue}break}}fa=g+2048|0} function cm(a,b,c,d){var e=S(0),f=0,g=0,h=0,i=0,j=0,k=S(0),l=S(0),m=S(0),n=S(0),o=S(0),p=S(0),q=S(0),r=0,s=0,t=0,u=S(0),v=S(0),w=S(0);i=fa-32|0;fa=i;while(1){r=c;h=L[a+12>>2]+R((c+d|0)/2|0,24)|0;s=L[h+20>>2];m=P[h+16>>2];u=P[h+8>>2];v=P[h+4>>2];w=P[h>>2];h=d;while(1){n=P[b+8>>2];k=S(u-n);e=S(k*k);o=P[b>>2];k=S(w-o);l=S(k*k);p=P[b+4>>2];k=S(v-p);k=S(e+S(l+S(k*k)));j=L[a+12>>2];while(1){a:{f=R(c,24)+j|0;e=P[f+16>>2];b:{if(e!=m){if(e>2]-n);l=S(e*e);e=S(P[f>>2]-o);q=S(e*e);e=S(P[f+4>>2]-p);e=S(l+S(q+S(e*e)));if(((e!=k?e>2]<(s|0))|0)!=1){break a}}c=c+1|0;continue}break}while(1){c:{t=R(h,24);g=t+j|0;e=P[g+16>>2];d:{if(e!=m){if(e>m){break d}break c}e=S(P[g+8>>2]-n);l=S(e*e);e=S(P[g>>2]-o);q=S(e*e);e=S(P[g+4>>2]-p);e=S(l+S(q+S(e*e)));if(((e!=k?e>k:L[g+20>>2]>(s|0))|0)!=1){break c}}h=h-1|0;continue}break}if((c|0)<=(h|0)){j=L[f+20>>2];L[i+24>>2]=L[f+16>>2];L[i+28>>2]=j;j=L[f+12>>2];L[i+16>>2]=L[f+8>>2];L[i+20>>2]=j;j=L[f+4>>2];L[i+8>>2]=L[f>>2];L[i+12>>2]=j;j=L[g+4>>2];L[f>>2]=L[g>>2];L[f+4>>2]=j;j=L[g+12>>2];L[f+8>>2]=L[g+8>>2];L[f+12>>2]=j;j=L[g+20>>2];L[f+16>>2]=L[g+16>>2];L[f+20>>2]=j;g=L[i+12>>2];f=L[a+12>>2]+t|0;L[f>>2]=L[i+8>>2];L[f+4>>2]=g;g=L[i+28>>2];L[f+16>>2]=L[i+24>>2];L[f+20>>2]=g;g=L[i+20>>2];L[f+8>>2]=L[i+16>>2];L[f+12>>2]=g;h=h-1|0;c=c+1|0}if((c|0)<=(h|0)){continue}break}if((h|0)>(r|0)){cm(a,b,r,h)}if((c|0)<(d|0)){continue}break}fa=i+32|0}function bl(a,b,c){var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=0;a:{d=P[c+128>>2];if(d==S(0)){break a}L[8133]=L[8133]+1;h=d;d=P[c+96>>2];g=P[c+24>>2];i=P[c+16>>2];j=P[c+20>>2];e=P[c+108>>2];e=S(S(S(h-S(d*P[c+116>>2]))-S(S(S(S(g*P[a+152>>2])+S(S(i*P[a+144>>2])+S(j*P[a+148>>2])))+S(S(P[c+8>>2]*P[a+168>>2])+S(S(P[c>>2]*P[a+160>>2])+S(P[c+4>>2]*P[a+164>>2]))))*e))-S(S(S(S(P[c+56>>2]*P[b+152>>2])+S(S(P[c+48>>2]*P[b+144>>2])+S(P[c+52>>2]*P[b+148>>2])))+S(S(P[c+40>>2]*P[b+168>>2])+S(S(P[c+32>>2]*P[b+160>>2])+S(P[c+36>>2]*P[b+164>>2]))))*e));h=S(d+e);f=P[c+120>>2];k=h>2]=k?f:h;d=k?S(f-d):e;if(L[a+240>>2]){P[a+144>>2]=S(P[a+112>>2]*S(d*S(i*P[a+128>>2])))+P[a+144>>2];P[a+148>>2]=S(S(d*S(j*P[a+132>>2]))*P[a+116>>2])+P[a+148>>2];P[a+152>>2]=S(S(d*S(g*P[a+136>>2]))*P[a+120>>2])+P[a+152>>2];e=P[c+72>>2];f=P[c+68>>2];P[a+160>>2]=S(S(d*P[a+96>>2])*P[c+64>>2])+P[a+160>>2];g=P[a+104>>2];P[a+164>>2]=S(f*S(d*P[a+100>>2]))+P[a+164>>2];P[a+168>>2]=S(e*S(d*g))+P[a+168>>2]}if(!L[b+240>>2]){break a}e=P[c+56>>2];f=P[c+52>>2];P[b+144>>2]=S(P[b+112>>2]*S(d*S(P[c+48>>2]*P[b+128>>2])))+P[b+144>>2];P[b+148>>2]=S(S(d*S(f*P[b+132>>2]))*P[b+116>>2])+P[b+148>>2];P[b+152>>2]=S(S(d*S(e*P[b+136>>2]))*P[b+120>>2])+P[b+152>>2];e=P[c+88>>2];f=P[c+84>>2];P[b+160>>2]=S(S(d*P[b+96>>2])*P[c+80>>2])+P[b+160>>2];g=P[b+104>>2];P[b+164>>2]=S(f*S(d*P[b+100>>2]))+P[b+164>>2];P[b+168>>2]=S(e*S(d*g))+P[b+168>>2]}}function cn(a,b,c){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;h=fa-32|0;fa=h;e=L[a+12>>2];n=M[a+28|0];l=n?c:b;m=L[l+4>>2];f=L[m+16>>2];a:{if((e|0)>=(f|0)){break a}if(L[a+16>>2]<(f|0)){if(f){L[8513]=L[8513]+1;i=ha[L[6798]](f<<2,16)|0;d=L[a+12>>2]}else{d=e}b:{if((d|0)<=0){break b}if(d>>>0>=4){q=d&-4;while(1){g=j<<2;L[g+i>>2]=L[g+L[a+20>>2]>>2];k=g|4;L[k+i>>2]=L[k+L[a+20>>2]>>2];k=g|8;L[k+i>>2]=L[k+L[a+20>>2]>>2];g=g|12;L[g+i>>2]=L[g+L[a+20>>2]>>2];j=j+4|0;o=o+4|0;if((o|0)!=(q|0)){continue}break}}d=d&3;if(!d){break b}while(1){g=j<<2;L[g+i>>2]=L[g+L[a+20>>2]>>2];j=j+1|0;p=p+1|0;if((d|0)!=(p|0)){continue}break}}d=L[a+20>>2];if(!(d?!d|!M[a+24|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[a+20>>2]=i;J[a+24|0]=1;L[a+16>>2]=f}d=(e^-1)+f|0;i=f-e&3;if(i){j=0;while(1){L[L[a+20>>2]+(e<<2)>>2]=0;e=e+1|0;j=j+1|0;if((i|0)!=(j|0)){continue}break}}if(d>>>0<3){break a}while(1){d=e<<2;L[d+L[a+20>>2]>>2]=0;L[(d+L[a+20>>2]|0)+4>>2]=0;L[(d+L[a+20>>2]|0)+8>>2]=0;L[(d+L[a+20>>2]|0)+12>>2]=0;e=e+4|0;if((f|0)!=(e|0)){continue}break}}L[a+12>>2]=f;if((f|0)>0){b=n?b:c;e=0;while(1){c:{if(L[m+64>>2]){L[L[a+20>>2]+(e<<2)>>2]=0;break c}c=L[l+12>>2];d=L[l+8>>2];L[h+12>>2]=L[(L[m+24>>2]+R(e,80)|0)+64>>2];L[h+28>>2]=e;L[h+24>>2]=-1;L[h+16>>2]=d;L[h+20>>2]=c;L[h+8>>2]=l;c=L[a+4>>2];c=ha[L[L[c>>2]+8>>2]](c,h+8|0,b,L[a+32>>2])|0;L[L[a+20>>2]+(e<<2)>>2]=c}e=e+1|0;if((f|0)!=(e|0)){continue}break}}fa=h+32|0}function VH(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;L[7538]=L[7538]+1;d=L[a+24>>2];a:{b:{if(d){if(ha[L[L[d>>2]+8>>2]](d,b,c)|0){break b}break a}if(!(N[c+6>>1]&N[b+4>>1])|!(N[b+6>>1]&N[c+4>>1])){break a}}e=L[b+12>>2]>L[c+12>>2];j=e?b:c;g=L[j+12>>2];k=e?c:b;h=L[k+12>>2];b=g<<16|h;b=(b<<15^-1)+b|0;b=R(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;m=b>>16^b;c=a;b=L[c+12>>2];l=m&b-1;a=L[L[c+44>>2]+(l<<2)>>2];c:{if((a|0)!=-1){i=L[c- -64>>2];d=L[c+16>>2];while(1){f=a<<4;e=f+d|0;if((h|0)==L[L[e>>2]+12>>2]&(g|0)==L[L[(d+f|0)+4>>2]+12>>2]){break c}a=L[i+(a<<2)>>2];if((a|0)!=-1){continue}break}}h=L[c+8>>2];e=h;a=b;d:{if((e|0)!=(b|0)){break d}e=b;d=b?b<<1:1;if((d|0)<=(b|0)){break d}e:{if(!d){e=0;a=b;break e}L[8513]=L[8513]+1;e=ha[L[6798]](d<<4,16)|0;a=L[c+8>>2]}g=a;if((g|0)>0){a=0;while(1){f=a<<4;i=f+e|0;f=f+L[c+16>>2]|0;L[i>>2]=L[f>>2];L[i+4>>2]=L[f+4>>2];L[i+8>>2]=L[f+8>>2];L[i+12>>2]=L[f+12>>2];a=a+1|0;if((g|0)!=(a|0)){continue}break}}a=L[c+16>>2];if(!(a?!a|!M[c+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}L[c+16>>2]=e;J[c+20|0]=1;L[c+12>>2]=d;e=L[c+8>>2];a=d}L[c+8>>2]=e+1;g=L[c+16>>2];e=g+(h<<4)|0;d=L[c+72>>2];if(d){ha[L[L[d>>2]+8>>2]](d,k,j)|0;a=L[c+12>>2]}if((a|0)>(b|0)){yn(c);l=L[c+12>>2]-1&m}b=L[k+12>>2]>2];L[e>>2]=b?k:j;a=g+(h<<4)|0;L[a+8>>2]=0;L[a+12>>2]=0;L[a+4>>2]=b?j:k;a=L[c+44>>2]+(l<<2)|0;L[L[c- -64>>2]+(h<<2)>>2]=L[a>>2];L[a>>2]=h}}return e|0}function _y(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;c=b;e=L[b+4>>2];b=L[a+24>>2];a:{if((e|0)<=(b|0)){break a}if((e|0)>L[a+28>>2]){if(e){L[8513]=L[8513]+1;f=ha[L[6798]](e<<2,16)|0;d=L[a+24>>2]}else{d=b}b:{if((d|0)<=0){break b}if(d>>>0>=4){i=d&-4;while(1){h=g<<2;L[h+f>>2]=L[h+L[a+32>>2]>>2];j=h|4;L[j+f>>2]=L[j+L[a+32>>2]>>2];j=h|8;L[j+f>>2]=L[j+L[a+32>>2]>>2];h=h|12;L[h+f>>2]=L[h+L[a+32>>2]>>2];g=g+4|0;k=k+4|0;if((i|0)!=(k|0)){continue}break}}d=d&3;if(!d){break b}while(1){h=g<<2;L[h+f>>2]=L[h+L[a+32>>2]>>2];g=g+1|0;l=l+1|0;if((d|0)!=(l|0)){continue}break}}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]=f;J[a+36|0]=1;L[a+28>>2]=e}d=e+(b^-1)|0;f=e-b&3;if(f){g=0;while(1){L[L[a+32>>2]+(b<<2)>>2]=0;b=b+1|0;g=g+1|0;if((f|0)!=(g|0)){continue}break}}if(d>>>0<3){break a}while(1){d=b<<2;L[d+L[a+32>>2]>>2]=0;L[(d+L[a+32>>2]|0)+4>>2]=0;L[(d+L[a+32>>2]|0)+8>>2]=0;L[(d+L[a+32>>2]|0)+12>>2]=0;b=b+4|0;if((e|0)!=(b|0)){continue}break}}L[a+24>>2]=e;c:{if((e|0)<=0){break c}b=L[a+32>>2];f=0;a=0;if(e>>>0>=4){h=e&-4;g=0;while(1){d=a<<2;L[d+b>>2]=L[d+L[c+12>>2]>>2];i=d|4;L[i+b>>2]=L[i+L[c+12>>2]>>2];i=d|8;L[i+b>>2]=L[i+L[c+12>>2]>>2];d=d|12;L[d+b>>2]=L[d+L[c+12>>2]>>2];a=a+4|0;g=g+4|0;if((h|0)!=(g|0)){continue}break}}d=e&3;if(!d){break c}while(1){e=a<<2;L[e+b>>2]=L[e+L[c+12>>2]>>2];a=a+1|0;f=f+1|0;if((d|0)!=(f|0)){continue}break}}}function oH(a,b){a=a|0;b=b|0;var c=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),l=S(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=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);c=fa-128|0;fa=c;m=L[b+36>>2];b=L[L[a+8>>2]+24>>2]+R(m,80)|0;z=L[b+64>>2];n=P[b+32>>2];o=P[b>>2];p=P[b+16>>2];q=P[b+56>>2];r=P[b+52>>2];s=P[b+48>>2];t=P[b+36>>2];u=P[b+20>>2];v=P[b+4>>2];w=P[b+40>>2];x=P[b+24>>2];y=P[b+8>>2];b=L[a+12>>2];A=P[b+52>>2];B=P[b+56>>2];d=P[b+24>>2];e=P[b+20>>2];f=P[b+40>>2];g=P[b+36>>2];C=P[b+48>>2];h=P[b+8>>2];i=P[b>>2];j=P[b+4>>2];k=P[b+16>>2];l=P[b+32>>2];L[c+124>>2]=0;L[c+108>>2]=0;L[c+92>>2]=0;P[c+104>>2]=S(w*f)+S(S(y*l)+S(x*g));P[c+100>>2]=S(t*f)+S(S(v*l)+S(u*g));P[c+88>>2]=S(w*d)+S(S(y*k)+S(x*e));P[c+84>>2]=S(t*d)+S(S(v*k)+S(u*e));P[c+120>>2]=B+S(S(q*f)+S(S(s*l)+S(g*r)));P[c+116>>2]=A+S(S(q*d)+S(S(s*k)+S(e*r)));L[c+76>>2]=0;P[c+72>>2]=S(w*h)+S(S(y*i)+S(j*x));P[c+68>>2]=S(t*h)+S(S(v*i)+S(j*u));P[c+64>>2]=S(n*h)+S(S(o*i)+S(p*j));P[c+112>>2]=C+S(S(q*h)+S(S(s*i)+S(j*r)));P[c+96>>2]=S(n*f)+S(S(o*l)+S(p*g));P[c+80>>2]=S(n*d)+S(S(o*k)+S(p*e));b=L[a+4>>2];L[c+60>>2]=m;L[c+56>>2]=-1;L[c+48>>2]=b;L[c+44>>2]=z;L[c+40>>2]=0;L[c+52>>2]=c- -64;b=L[a+24>>2];L[c+36>>2]=m;L[c+32>>2]=b;L[c+12>>2]=7480;L[c+20>>2]=0;L[c+24>>2]=-65535;P[c+16>>2]=P[b+4>>2];L[c+28>>2]=L[b+16>>2];Ze(L[a+16>>2],L[a+20>>2],c+40|0,c+12|0);fa=c+128|0}function iw(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=S(d);e=S(e);f=S(f);g=g|0;h=h|0;i=i|0;var j=0,k=S(0),l=S(0),m=S(0),n=S(0),o=0;j=fa-48|0;fa=j;L[j+44>>2]=a;L[j+40>>2]=b;L[j+36>>2]=c;P[j+32>>2]=d;P[j+28>>2]=e;P[j+24>>2]=f;L[j+20>>2]=g;L[j+16>>2]=h;J[j+15|0]=i;a=oa(124);b=L[j+44>>2];c=L[j+40>>2];h=L[j+36>>2];d=P[j+32>>2];k=P[j+28>>2];e=P[j+24>>2];g=L[j+20>>2];i=L[j+16>>2];o=M[j+15|0];L[a+12>>2]=0;L[a+4>>2]=35;L[a+8>>2]=0;L[a>>2]=13384;L[a>>2]=15204;L[a+108>>2]=1065353216;L[a+112>>2]=1065353216;L[a+104>>2]=g;J[a+101|0]=0;J[a+102|0]=0;J[a+100|0]=o&1;L[a+96>>2]=i;L[a+92>>2]=h;P[a+88>>2]=d;P[a+76>>2]=e;P[a+72>>2]=k;L[a+68>>2]=c;L[a+64>>2]=b;L[a+4>>2]=24;L[a+116>>2]=1065353216;L[a+120>>2]=0;d=S(c-1|0);P[a+84>>2]=d;l=S(b-1|0);P[a+80>>2]=l;a:{b:{c:{switch(g|0){default:f=P[a+40>>2];m=P[a+24>>2];d=P[a+36>>2];n=P[a+20>>2];e=P[a+32>>2];k=P[a+16>>2];break a;case 0:P[a+32>>2]=e;P[a+16>>2]=k;L[a+44>>2]=0;P[a+40>>2]=d;P[a+36>>2]=l;L[a+28>>2]=0;L[a+20>>2]=0;L[a+24>>2]=0;f=d;d=l;break a;case 1:P[a+32>>2]=l;L[a+16>>2]=0;L[a+44>>2]=0;P[a+40>>2]=d;P[a+36>>2]=e;L[a+24>>2]=0;L[a+28>>2]=0;P[a+20>>2]=k;f=d;d=e;n=k;k=S(0);break b;case 2:break c}}P[a+32>>2]=l;L[a+16>>2]=0;L[a+20>>2]=0;L[a+44>>2]=0;P[a+40>>2]=e;P[a+36>>2]=d;L[a+28>>2]=0;P[a+24>>2]=k;f=e}m=k;e=l;k=S(0)}L[a+60>>2]=0;P[a+56>>2]=S(m+f)*S(.5);P[a+52>>2]=S(n+d)*S(.5);P[a+48>>2]=S(k+e)*S(.5);fa=j+48|0;return a|0}function Qb(a,b,c){var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0),j=S(0);g=P[c+100>>2];h=P[c+24>>2];i=P[c+16>>2];j=P[c+20>>2];e=P[c+108>>2];d=S(S(S(P[c+112>>2]-S(g*P[c+116>>2]))-S(S(S(S(h*P[a+72>>2])+S(S(i*P[a+64>>2])+S(j*P[a+68>>2])))+S(S(P[c+8>>2]*P[a+88>>2])+S(S(P[c>>2]*P[a+80>>2])+S(P[c+4>>2]*P[a+84>>2]))))*e))-S(S(S(S(P[c+56>>2]*P[b+72>>2])+S(S(P[c+48>>2]*P[b+64>>2])+S(P[c+52>>2]*P[b+68>>2])))+S(S(P[c+40>>2]*P[b+88>>2])+S(S(P[c+32>>2]*P[b+80>>2])+S(P[c+36>>2]*P[b+84>>2]))))*e));e=S(g+d);f=P[c+120>>2];a:{if(e>2];if(!(f>2]=e;if(L[a+240>>2]){P[a+64>>2]=S(P[a+112>>2]*S(d*S(i*P[a+128>>2])))+P[a+64>>2];P[a+68>>2]=S(S(d*S(j*P[a+132>>2]))*P[a+116>>2])+P[a+68>>2];P[a+72>>2]=S(S(d*S(h*P[a+136>>2]))*P[a+120>>2])+P[a+72>>2];e=P[c+72>>2];f=P[c+68>>2];P[a+80>>2]=S(S(d*P[a+96>>2])*P[c+64>>2])+P[a+80>>2];g=P[a+104>>2];P[a+84>>2]=S(f*S(d*P[a+100>>2]))+P[a+84>>2];P[a+88>>2]=S(e*S(d*g))+P[a+88>>2]}if(L[b+240>>2]){e=P[c+56>>2];f=P[c+52>>2];P[b+64>>2]=S(P[b+112>>2]*S(d*S(P[c+48>>2]*P[b+128>>2])))+P[b+64>>2];P[b+68>>2]=S(S(d*S(f*P[b+132>>2]))*P[b+116>>2])+P[b+68>>2];P[b+72>>2]=S(S(d*S(e*P[b+136>>2]))*P[b+120>>2])+P[b+72>>2];e=P[c+88>>2];f=P[c+84>>2];P[b+80>>2]=S(S(d*P[b+96>>2])*P[c+80>>2])+P[b+80>>2];g=P[b+104>>2];P[b+84>>2]=S(f*S(d*P[b+100>>2]))+P[b+84>>2];P[b+88>>2]=S(e*S(d*g))+P[b+88>>2]}}function Bm(a,b,c,d){var e=0,f=0,g=0;e=fa-48|0;fa=e;L[a+12>>2]=0;L[a+4>>2]=35;L[a+8>>2]=0;L[a>>2]=13384;L[a+48>>2]=b;L[a>>2]=16936;L[a+4>>2]=21;a:{if(ha[L[L[b>>2]+40>>2]](b)|0){ha[L[L[b>>2]+48>>2]](b,a+16|0,a+32|0);break a}L[e+44>>2]=0;L[e+36>>2]=0;L[e+40>>2]=0;L[e+32>>2]=1065353216;g=e+16|0;b=e+32|0;ha[L[L[a>>2]+68>>2]](g,a,b);P[a+32>>2]=P[e+16>>2]+P[a+12>>2];L[e+32>>2]=-1082130432;ha[L[L[a>>2]+68>>2]](e,a,b);f=L[e+12>>2];L[e+24>>2]=L[e+8>>2];L[e+28>>2]=f;f=L[e+4>>2];L[e+16>>2]=L[e>>2];L[e+20>>2]=f;P[a+16>>2]=P[e+16>>2]-P[a+12>>2];L[e+40>>2]=0;L[e+44>>2]=0;L[e+32>>2]=0;L[e+36>>2]=0;L[e+36>>2]=1065353216;ha[L[L[a>>2]+68>>2]](g,a,b);P[a+36>>2]=P[e+20>>2]+P[a+12>>2];L[e+36>>2]=-1082130432;ha[L[L[a>>2]+68>>2]](e,a,b);f=L[e+12>>2];L[e+24>>2]=L[e+8>>2];L[e+28>>2]=f;f=L[e+4>>2];L[e+16>>2]=L[e>>2];L[e+20>>2]=f;P[a+20>>2]=P[e+20>>2]-P[a+12>>2];L[e+40>>2]=0;L[e+44>>2]=0;L[e+40>>2]=1065353216;L[e+32>>2]=0;L[e+36>>2]=0;ha[L[L[a>>2]+68>>2]](g,a,b);P[a+40>>2]=P[e+24>>2]+P[a+12>>2];L[e+40>>2]=-1082130432;ha[L[L[a>>2]+68>>2]](e,a,b);b=L[e+12>>2];L[e+24>>2]=L[e+8>>2];L[e+28>>2]=b;b=L[e+4>>2];L[e+16>>2]=L[e>>2];L[e+20>>2]=b;P[a+24>>2]=P[e+24>>2]-P[a+12>>2]}fa=e+48|0;J[a+61|0]=0;J[a+60|0]=c;L[a+52>>2]=0;L[a+56>>2]=0;L[a>>2]=12256;L[a+4>>2]=21;if(d){L[8513]=L[8513]+1;b=gm(ha[L[6798]](172,16)|0);L[a+52>>2]=b;fm(b,L[a+48>>2],M[a+60|0],a+16|0,a+32|0);J[a+61|0]=1}}function Ob(a,b,c,d,e,f,g){var h=0,i=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=0,o=0,p=S(0),q=S(0),r=S(0);h=fa-128|0;fa=h;a:{if(!b){break a}if(!(!L[b+40>>2]|(c|0)>=(g|0)&(g|0)>=0)){n=c+1|0;Ob(a,L[b+36>>2],n,d,e,f,g);Ob(a,L[b+40>>2],n,d,e,f,g)}if((c|0)<(f|0)){break a}i=P[b+20>>2];j=P[b+24>>2];f=L[b+40>>2];k=P[b+16>>2];p=P[b>>2];l=P[b+4>>2];m=P[b+8>>2];L[h+124>>2]=0;L[h+108>>2]=0;L[h+92>>2]=0;L[h+76>>2]=0;L[h+60>>2]=0;L[h+44>>2]=0;L[h+28>>2]=0;q=S(S(m+j)*S(.5));m=S(S(j-m)*S(.5));j=S(q+m);P[h+120>>2]=j;r=S(S(l+i)*S(.5));l=S(S(i-l)*S(.5));i=S(r+l);P[h+116>>2]=i;P[h+104>>2]=j;P[h+100>>2]=i;P[h+88>>2]=j;l=S(r-l);P[h+84>>2]=l;P[h+72>>2]=j;P[h+68>>2]=l;j=S(q-m);P[h+56>>2]=j;P[h+52>>2]=i;P[h+40>>2]=j;P[h+36>>2]=i;P[h+24>>2]=j;P[h+20>>2]=l;L[h+12>>2]=0;m=S(S(p+k)*S(.5));k=S(S(k-p)*S(.5));i=S(m-k);P[h+112>>2]=i;k=S(m+k);P[h+96>>2]=k;P[h+80>>2]=k;P[h+64>>2]=i;P[h+48>>2]=i;P[h+32>>2]=k;P[h+16>>2]=k;P[h>>2]=i;P[h+8>>2]=j;P[h+4>>2]=l;c=h+16|0;b=f?d:e;ha[L[L[a>>2]+8>>2]](a,h,c,b);d=h+32|0;ha[L[L[a>>2]+8>>2]](a,c,d,b);e=h+48|0;ha[L[L[a>>2]+8>>2]](a,d,e,b);ha[L[L[a>>2]+8>>2]](a,e,h,b);f=h- -64|0;g=h+80|0;ha[L[L[a>>2]+8>>2]](a,f,g,b);n=h+96|0;ha[L[L[a>>2]+8>>2]](a,g,n,b);o=h+112|0;ha[L[L[a>>2]+8>>2]](a,n,o,b);ha[L[L[a>>2]+8>>2]](a,o,f,b);ha[L[L[a>>2]+8>>2]](a,h,f,b);ha[L[L[a>>2]+8>>2]](a,c,g,b);ha[L[L[a>>2]+8>>2]](a,d,n,b);ha[L[L[a>>2]+8>>2]](a,e,o,b)}fa=h+128|0}function cc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=S(0),j=0;L[b>>2]=ha[L[L[c>>2]+28>>2]](c,L[a+28>>2]);L[b+4>>2]=ha[L[L[c>>2]+28>>2]](c,L[a+32>>2]);d=ha[L[L[c>>2]+40>>2]](c,a)|0;f=ha[L[L[c>>2]+28>>2]](c,d)|0;L[b+8>>2]=f;if(f){ha[L[L[c>>2]+48>>2]](c,d)}L[b+12>>2]=L[a+4>>2];L[b+24>>2]=M[a+21|0];L[b+40>>2]=L[a+24>>2];P[b+44>>2]=P[a+16>>2];L[b+48>>2]=M[a+20|0];L[b+20>>2]=L[a+12>>2];L[b+16>>2]=L[a+8>>2];P[b+28>>2]=P[a+36>>2];i=P[a+40>>2];c=0;L[b+36>>2]=0;P[b+32>>2]=i;d=L[a+28>>2];e=L[d+488>>2];a:{if((e|0)<=0){break a}f=L[d+496>>2];if(e>>>0>=4){h=e&-4;d=0;while(1){g=c<<2;if(L[g+f>>2]==(a|0)){L[b+36>>2]=1}if(L[f+(g|4)>>2]==(a|0)){L[b+36>>2]=1}if(L[f+(g|8)>>2]==(a|0)){L[b+36>>2]=1}if(L[f+(g|12)>>2]==(a|0)){L[b+36>>2]=1}c=c+4|0;d=d+4|0;if((h|0)!=(d|0)){continue}break}}e=e&3;if(!e){break a}d=0;while(1){if(L[f+(c<<2)>>2]==(a|0)){L[b+36>>2]=1}c=c+1|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}c=L[a+32>>2];e=L[c+488>>2];b:{if((e|0)<=0){break b}f=L[c+496>>2];d=0;c=0;if(e>>>0>=4){j=e&-4;h=0;while(1){g=c<<2;if(L[g+f>>2]==(a|0)){L[b+36>>2]=1}if(L[f+(g|4)>>2]==(a|0)){L[b+36>>2]=1}if(L[f+(g|8)>>2]==(a|0)){L[b+36>>2]=1}if(L[f+(g|12)>>2]==(a|0)){L[b+36>>2]=1}c=c+4|0;h=h+4|0;if((j|0)!=(h|0)){continue}break}}e=e&3;if(!e){break b}while(1){if(L[f+(c<<2)>>2]==(a|0)){L[b+36>>2]=1}c=c+1|0;d=d+1|0;if((e|0)!=(d|0)){continue}break}}return 3583}function zD(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=S(0),k=S(0),l=S(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);f=fa-48|0;fa=f;n=P[c+8>>2];j=P[d+8>>2];p=P[c+4>>2];q=P[d+4>>2];k=P[c>>2];l=P[d>>2];e=P[a+56>>2];a:{if(S(T(e))>S(.7071067690849304)){i=P[a+52>>2];g=S(S(i*i)+S(e*e));h=S(S(1)/S(_(g)));m=S(g*h);t=S(i*h);g=P[a+48>>2];r=S(t*S(-g));o=S(h*S(-e));u=S(g*o);break a}g=P[a+48>>2];i=P[a+52>>2];m=S(S(g*g)+S(i*i));h=S(S(1)/S(_(m)));u=S(m*h);v=S(h*S(-i));r=S(e*v);o=S(g*h);m=S(o*S(-e))}h=P[a+64>>2];L[f+44>>2]=0;L[f+28>>2]=0;s=S(S(j+n)*S(.5));w=S(S(l+k)*S(.5));x=S(S(q+p)*S(.5));h=S(S(S(e*s)+S(S(g*w)+S(x*i)))-h);s=S(s-S(e*h));e=S(S(j-n)*S(.5));j=S(e*e);e=S(S(l-k)*S(.5));k=S(e*e);e=S(S(q-p)*S(.5));e=S(_(S(j+S(k+S(e*e)))));j=S(e*t);p=S(s-j);n=S(e*u);q=S(p-n);P[f+40>>2]=q;k=S(x-S(i*h));l=S(e*o);o=S(k-l);i=S(e*r);r=S(o-i);P[f+36>>2]=r;j=S(j+s);P[f+24>>2]=j-n;k=S(l+k);P[f+20>>2]=k-i;L[f+12>>2]=0;g=S(w-S(g*h));h=S(e*v);l=S(g-h);e=S(e*m);m=S(l-e);P[f+32>>2]=m;g=S(h+g);P[f+16>>2]=g-e;h=S(n+j);P[f+8>>2]=h;j=S(i+k);P[f+4>>2]=j;g=S(e+g);P[f>>2]=g;ha[L[L[b>>2]+8>>2]](b,f,0,0);L[f+44>>2]=0;P[f+40>>2]=h;P[f+36>>2]=j;L[f+28>>2]=0;P[f+24>>2]=n+p;P[f+20>>2]=i+o;P[f+32>>2]=g;P[f+16>>2]=e+l;L[f+12>>2]=0;P[f+8>>2]=q;P[f+4>>2]=r;P[f>>2]=m;ha[L[L[b>>2]+8>>2]](b,f,0,1);fa=f+48|0}function hD(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;a:{b:{if(M[a+165|0]){l=a+92|0;if(L[l>>2]>=(b|0)){break a}if(b){L[8513]=L[8513]+1;f=ha[L[6798]](b<<4,16)|0}else{f=0}e=L[a+88>>2];c:{if((e|0)<=0){break c}if((e|0)!=1){j=e&-2;while(1){g=d<<4;h=g+f|0;c=g+L[a+96>>2]|0;k=L[c+4>>2];L[h>>2]=L[c>>2];L[h+4>>2]=k;k=L[c+12>>2];L[h+8>>2]=L[c+8>>2];L[h+12>>2]=k;c=g|16;g=c+f|0;c=c+L[a+96>>2]|0;h=L[c+4>>2];L[g>>2]=L[c>>2];L[g+4>>2]=h;h=L[c+12>>2];L[g+8>>2]=L[c+8>>2];L[g+12>>2]=h;d=d+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(!(e&1)){break c}d=d<<4;e=d+f|0;d=d+L[a+96>>2]|0;c=L[d+4>>2];L[e>>2]=L[d>>2];L[e+4>>2]=c;c=L[d+12>>2];L[e+8>>2]=L[d+8>>2];L[e+12>>2]=c}d=L[a+96>>2];if(!(d?!d|!M[a+100|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[a+96>>2]=f;J[a+100|0]=1;break b}l=a+112|0;if(L[l>>2]>=(b|0)){break a}if(b){L[8513]=L[8513]+1;f=ha[L[6798]](b<<2,16)|0}else{f=0}e=L[a+116>>2];g=L[a+108>>2];d:{e:{if((g|0)>0){if(g>>>0>=4){h=g&-4;while(1){c=d<<2;P[c+f>>2]=P[c+e>>2];j=c|4;P[j+f>>2]=P[e+j>>2];j=c|8;P[j+f>>2]=P[e+j>>2];c=c|12;P[c+f>>2]=P[c+e>>2];d=d+4|0;i=i+4|0;if((h|0)!=(i|0)){continue}break}}c=g&3;if(c){while(1){i=d<<2;P[i+f>>2]=P[e+i>>2];d=d+1|0;k=k+1|0;if((c|0)!=(k|0)){continue}break}}if(M[a+120|0]){break e}break d}if(!e|!M[a+120|0]){break d}}if(e){L[8514]=L[8514]+1;ha[L[6799]](e)}}L[a+116>>2]=f;J[a+120|0]=1}L[l>>2]=b}}function Qz(a,b,c){a=a|0;b=S(b);c=S(c);var d=0,e=0,f=S(0),g=0,h=0,i=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=S(0),o=0,p=S(0),q=S(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);h=fa-16|0;fa=h;t=L[a+792>>2];if((t|0)>0){b=S(P[a+336>>2]*b);c=P[a+452>>2];while(1){d=L[a+800>>2]+R(o,96)|0;w=P[d+36>>2];x=P[d+28>>2];y=P[d+32>>2];z=P[d+52>>2];A=P[d+44>>2];B=P[d+48>>2];e=L[d+20>>2];k=P[e+328>>2];f=P[d+12>>2];l=P[d+4>>2];p=P[d+8>>2];g=L[d>>2];i=P[g+16>>2];m=P[d+80>>2];u=P[d+76>>2];j=P[e+332>>2];n=S(S(b*S(S(S(S(f*P[e+44>>2])+S(S(l*P[e+36>>2])+S(p*P[e+40>>2])))+P[e+60>>2])-i))+S(S(c*S(S(S(k*m)-S(u*j))+P[e+320>>2]))-S(i-P[g+32>>2])));C=i;i=P[d+92>>2];q=P[d+24>>2];r=P[g+8>>2];s=j;j=P[d+84>>2];v=P[e+336>>2];m=S(S(b*S(S(S(S(f*P[e+12>>2])+S(S(l*P[e+4>>2])+S(p*P[e+8>>2])))+P[e+52>>2])-r))+S(S(c*S(S(S(s*j)-S(m*v))+P[e+312>>2]))-S(r-P[g+24>>2])));s=S(S(S(f*P[e+28>>2])+S(S(l*P[e+20>>2])+S(p*P[e+24>>2])))+P[e+56>>2]);f=P[g+12>>2];k=S(S(b*S(s-f))+S(S(c*S(S(S(v*u)-S(j*k))+P[e+316>>2]))-S(f-P[g+28>>2])));l=S(q*S(S(P[d+68>>2]*n)+S(S(P[d+60>>2]*m)+S(k*P[d- -64>>2]))));P[g+16>>2]=C+S(i*l);j=f;f=S(q*S(S(z*n)+S(S(A*m)+S(k*B))));P[g+12>>2]=j+S(i*f);n=S(q*S(S(w*n)+S(S(x*m)+S(k*y))));P[g+8>>2]=r+S(i*n);L[h+12>>2]=0;P[h+8>>2]=-l;P[h+4>>2]=-f;P[h>>2]=-n;rb(e,h,d+76|0);o=o+1|0;if((t|0)!=(o|0)){continue}break}}fa=h+16|0}function We(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=S(0),m=0;d=Og(a);L[d>>2]=13876;L[d+4>>2]=4;J[d+108|0]=1;L[d+104>>2]=0;L[d+96>>2]=0;L[d+100>>2]=0;if((c|0)<=0){L[d+96>>2]=c;Sb(d);return d}L[8513]=L[8513]+1;a=ha[L[6798]](c<<4,16)|0;e=L[d+96>>2];a:{if((e|0)<=0){break a}if((e|0)!=1){j=e&-2;while(1){h=f<<4;i=h+a|0;g=h+L[d+104>>2]|0;k=L[g+4>>2];L[i>>2]=L[g>>2];L[i+4>>2]=k;k=L[g+12>>2];L[i+8>>2]=L[g+8>>2];L[i+12>>2]=k;g=h|16;h=g+a|0;g=g+L[d+104>>2]|0;i=L[g+4>>2];L[h>>2]=L[g>>2];L[h+4>>2]=i;i=L[g+12>>2];L[h+8>>2]=L[g+8>>2];L[h+12>>2]=i;f=f+2|0;m=m+2|0;if((j|0)!=(m|0)){continue}break}}if(!(e&1)){break a}f=f<<4;e=f+a|0;f=f+L[d+104>>2]|0;g=L[f+4>>2];L[e>>2]=L[f>>2];L[e+4>>2]=g;g=L[f+12>>2];L[e+8>>2]=L[f+8>>2];L[e+12>>2]=g}f=L[d+104>>2];if(!(f?!f|!M[d+108|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](f)}L[d+104>>2]=a;J[d+108|0]=1;L[d+100>>2]=c;L[d+96>>2]=c;b:{if((c|0)<=0){break b}f=0;if((c|0)!=1){g=c&-2;a=0;while(1){h=L[b+4>>2];i=L[b>>2];l=P[b+8>>2];j=f<<4;e=j+L[d+104>>2]|0;L[e+12>>2]=0;P[e+8>>2]=l;L[e>>2]=i;L[e+4>>2]=h;b=b+16|0;h=L[b>>2];i=L[b+4>>2];e=L[d+104>>2]+(j|16)|0;P[e+8>>2]=P[b+8>>2];L[e+12>>2]=0;L[e>>2]=h;L[e+4>>2]=i;f=f+2|0;b=b+16|0;a=a+2|0;if((g|0)!=(a|0)){continue}break}}if(!(c&1)){break b}c=L[b+4>>2];e=L[b>>2];l=P[b+8>>2];a=L[d+104>>2]+(f<<4)|0;L[a+12>>2]=0;P[a+8>>2]=l;L[a>>2]=e;L[a+4>>2]=c}Sb(d);return d}function yj(a,b){var c=0;c=fa-112|0;fa=c;L[c+108>>2]=a;L[c+104>>2]=b;b=L[c+108>>2];P[c+100>>2]=$b(L[c+104>>2]);P[c+96>>2]=S(2)/P[c+100>>2];a=fa-16|0;L[a+12>>2]=L[c+104>>2];P[c+92>>2]=P[L[a+12>>2]>>2]*P[c+96>>2];L[a+12>>2]=L[c+104>>2];P[c+88>>2]=P[L[a+12>>2]+4>>2]*P[c+96>>2];L[a+12>>2]=L[c+104>>2];P[c+84>>2]=P[L[a+12>>2]+8>>2]*P[c+96>>2];L[a+12>>2]=L[c+104>>2];P[c+80>>2]=P[L[a+12>>2]+12>>2]*P[c+92>>2];L[a+12>>2]=L[c+104>>2];P[c+76>>2]=P[L[a+12>>2]+12>>2]*P[c+88>>2];L[a+12>>2]=L[c+104>>2];P[c+72>>2]=P[L[a+12>>2]+12>>2]*P[c+84>>2];L[a+12>>2]=L[c+104>>2];P[c+68>>2]=P[L[a+12>>2]>>2]*P[c+92>>2];L[a+12>>2]=L[c+104>>2];P[c+64>>2]=P[L[a+12>>2]>>2]*P[c+88>>2];L[a+12>>2]=L[c+104>>2];P[c+60>>2]=P[L[a+12>>2]>>2]*P[c+84>>2];L[a+12>>2]=L[c+104>>2];P[c+56>>2]=P[L[a+12>>2]+4>>2]*P[c+88>>2];L[a+12>>2]=L[c+104>>2];P[c+52>>2]=P[L[a+12>>2]+4>>2]*P[c+84>>2];L[a+12>>2]=L[c+104>>2];P[c+48>>2]=P[L[a+12>>2]+8>>2]*P[c+84>>2];P[c+44>>2]=S(1)-S(P[c+56>>2]+P[c+48>>2]);P[c+40>>2]=P[c+64>>2]-P[c+72>>2];P[c+36>>2]=P[c+60>>2]+P[c+76>>2];P[c+32>>2]=P[c+64>>2]+P[c+72>>2];P[c+28>>2]=S(1)-S(P[c+68>>2]+P[c+48>>2]);P[c+24>>2]=P[c+52>>2]-P[c+80>>2];P[c+20>>2]=P[c+60>>2]-P[c+76>>2];P[c+16>>2]=P[c+52>>2]+P[c+80>>2];P[c+12>>2]=S(1)-S(P[c+68>>2]+P[c+56>>2]);md(b,c+44|0,c+40|0,c+36|0,c+32|0,c+28|0,c+24|0,c+20|0,c+16|0,c+12|0);fa=c+112|0}function tg(a,b,c){var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=0;d=P[c+100>>2];g=P[c+24>>2];h=P[c+16>>2];i=P[c+20>>2];e=P[c+108>>2];e=S(S(S(P[c+112>>2]-S(d*P[c+116>>2]))-S(S(S(S(g*P[a+72>>2])+S(S(h*P[a+64>>2])+S(i*P[a+68>>2])))+S(S(P[c+8>>2]*P[a+88>>2])+S(S(P[c>>2]*P[a+80>>2])+S(P[c+4>>2]*P[a+84>>2]))))*e))-S(S(S(S(P[c+56>>2]*P[b+72>>2])+S(S(P[c+48>>2]*P[b+64>>2])+S(P[c+52>>2]*P[b+68>>2])))+S(S(P[c+40>>2]*P[b+88>>2])+S(S(P[c+32>>2]*P[b+80>>2])+S(P[c+36>>2]*P[b+84>>2]))))*e));j=S(d+e);f=P[c+120>>2];k=j>2]=k?f:j;d=k?S(f-d):e;if(L[a+240>>2]){P[a+64>>2]=S(P[a+112>>2]*S(d*S(h*P[a+128>>2])))+P[a+64>>2];P[a+68>>2]=S(S(d*S(i*P[a+132>>2]))*P[a+116>>2])+P[a+68>>2];P[a+72>>2]=S(S(d*S(g*P[a+136>>2]))*P[a+120>>2])+P[a+72>>2];e=P[c+72>>2];f=P[c+68>>2];P[a+80>>2]=S(S(d*P[a+96>>2])*P[c+64>>2])+P[a+80>>2];g=P[a+104>>2];P[a+84>>2]=S(f*S(d*P[a+100>>2]))+P[a+84>>2];P[a+88>>2]=S(e*S(d*g))+P[a+88>>2]}if(L[b+240>>2]){e=P[c+56>>2];f=P[c+52>>2];P[b+64>>2]=S(P[b+112>>2]*S(d*S(P[c+48>>2]*P[b+128>>2])))+P[b+64>>2];P[b+68>>2]=S(S(d*S(f*P[b+132>>2]))*P[b+116>>2])+P[b+68>>2];P[b+72>>2]=S(S(d*S(e*P[b+136>>2]))*P[b+120>>2])+P[b+72>>2];e=P[c+88>>2];f=P[c+84>>2];P[b+80>>2]=S(S(d*P[b+96>>2])*P[c+80>>2])+P[b+80>>2];g=P[b+104>>2];P[b+84>>2]=S(f*S(d*P[b+100>>2]))+P[b+84>>2];P[b+88>>2]=S(e*S(d*g))+P[b+88>>2]}}function lh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=fa-96|0;fa=f;e=L[a+8>>2];a:{if((e|0)!=L[a+12>>2]){break a}k=e?e<<1:1;if((k|0)<=(e|0)){break a}if(k){L[8513]=L[8513]+1;h=ha[L[6798]](k<<2,16)|0;e=L[a+8>>2]}b:{if((e|0)<=0){break b}if(e>>>0>=4){l=e&-4;while(1){g=i<<2;L[g+h>>2]=L[g+L[a+16>>2]>>2];j=g|4;L[j+h>>2]=L[j+L[a+16>>2]>>2];j=g|8;L[j+h>>2]=L[j+L[a+16>>2]>>2];g=g|12;L[g+h>>2]=L[g+L[a+16>>2]>>2];i=i+4|0;m=m+4|0;if((l|0)!=(m|0)){continue}break}}g=e&3;if(!g){break b}while(1){l=i<<2;L[l+h>>2]=L[l+L[a+16>>2]>>2];i=i+1|0;n=n+1|0;if((g|0)!=(n|0)){continue}break}}i=L[a+16>>2];if(!(!i|!M[a+20|0])){if(i){L[8514]=L[8514]+1;ha[L[6799]](i)}e=L[a+8>>2]}L[a+16>>2]=h;J[a+20|0]=1;L[a+12>>2]=k}L[L[a+16>>2]+(e<<2)>>2]=b;L[a+8>>2]=e+1;e=L[b+16>>2];L[f+40>>2]=L[b+12>>2];L[f+44>>2]=e;e=L[b+8>>2];L[f+32>>2]=L[b+4>>2];L[f+36>>2]=e;e=L[b+32>>2];L[f+56>>2]=L[b+28>>2];L[f+60>>2]=e;e=L[b+24>>2];L[f+48>>2]=L[b+20>>2];L[f+52>>2]=e;e=L[b+48>>2];L[f+72>>2]=L[b+44>>2];L[f+76>>2]=e;e=L[b+40>>2];L[f+64>>2]=L[b+36>>2];L[f+68>>2]=e;e=L[b+64>>2];L[f+88>>2]=L[b+60>>2];L[f+92>>2]=e;e=L[b+56>>2];L[f+80>>2]=L[b+52>>2];L[f+84>>2]=e;e=L[b+192>>2];h=f+16|0;ha[L[L[e>>2]+8>>2]](e,f+32|0,h,f);e=L[a+68>>2];L[b+188>>2]=ha[L[L[e>>2]+8>>2]](e,h,f,L[L[b+192>>2]+4>>2],b,c,d,L[a+24>>2],0);fa=f+96|0}function yt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=fa-16|0;fa=f;L[f+12>>2]=a;L[f+8>>2]=b;L[f+4>>2]=c;L[f>>2]=d;d=oa(608);b=L[f+4>>2];a=L[f>>2];e=ub(d,5,L[f+12>>2],L[f+8>>2]);L[e>>2]=19392;c=L[b+12>>2];L[e+308>>2]=L[b+8>>2];L[e+312>>2]=c;c=L[b+4>>2];L[e+300>>2]=L[b>>2];L[e+304>>2]=c;c=L[b+28>>2];L[e+324>>2]=L[b+24>>2];L[e+328>>2]=c;c=L[b+20>>2];L[e+316>>2]=L[b+16>>2];L[e+320>>2]=c;c=L[b+44>>2];L[e+340>>2]=L[b+40>>2];L[e+344>>2]=c;c=L[b+36>>2];L[e+332>>2]=L[b+32>>2];L[e+336>>2]=c;c=L[b+60>>2];L[e+356>>2]=L[b+56>>2];L[e+360>>2]=c;c=L[b+52>>2];L[e+348>>2]=L[b+48>>2];L[e+352>>2]=c;b=L[a+12>>2];L[e+372>>2]=L[a+8>>2];L[e+376>>2]=b;b=L[a+4>>2];L[e+364>>2]=L[a>>2];L[e+368>>2]=b;b=L[a+20>>2];L[e+380>>2]=L[a+16>>2];L[e+384>>2]=b;b=L[a+28>>2];L[e+388>>2]=L[a+24>>2];L[e+392>>2]=b;b=L[a+36>>2];L[e+396>>2]=L[a+32>>2];L[e+400>>2]=b;b=L[a+44>>2];L[e+404>>2]=L[a+40>>2];L[e+408>>2]=b;b=L[a+52>>2];L[e+412>>2]=L[a+48>>2];L[e+416>>2]=b;b=L[a+60>>2];L[e+420>>2]=L[a+56>>2];L[e+424>>2]=b;J[e+552|0]=0;L[e+572>>2]=-1082130432;L[e+524>>2]=0;L[e+444>>2]=1566444395;L[e+448>>2]=1566444395;L[e+592>>2]=0;L[e+428>>2]=1065353216;L[e+432>>2]=1050253722;L[e+436>>2]=1065353216;L[e+440>>2]=1008981770;L[e+596>>2]=0;L[e+600>>2]=1060320051;L[e+604>>2]=0;L[e+452>>2]=1566444395;L[e+456>>2]=1028443341;fa=f+16|0;return d|0}function eG(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;L[7545]=L[7545]+1;d=c<<16|b;d=(d<<15^-1)+d|0;d=R(d>>10^d,9);d=d>>6^d;d=(d<<11^-1)+d|0;m=d>>16^d;d=L[a+12>>2];k=m&d-1;e=L[L[a+40>>2]+(k<<2)>>2];a:{if((e|0)!=-1){i=L[a+60>>2];j=L[a+16>>2];while(1){f=j+R(e,12)|0;if(L[f>>2]==(b|0)&L[f+4>>2]==(c|0)){break a}e=L[i+(e<<2)>>2];if((e|0)!=-1){continue}break}}b:{c:{i=L[a+8>>2];f=i;if((f|0)==(d|0)){j=d?d<<1:1;n=(j|0)<=(d|0);if(!n){break c}}else{d=f}L[a+8>>2]=d+1;f=L[a+16>>2];break b}d:{if(!j){f=0;break d}L[8513]=L[8513]+1;f=ha[L[6798]](R(j,12),16)|0;d=L[a+8>>2]}e:{if((d|0)<=0){break e}e=0;if((d|0)!=1){p=d&-2;while(1){g=R(e,12);h=g+L[a+16>>2]|0;l=L[h+4>>2];g=f+g|0;L[g>>2]=L[h>>2];L[g+4>>2]=l;L[g+8>>2]=L[h+8>>2];g=R(e|1,12);h=g+L[a+16>>2]|0;l=L[h+4>>2];g=f+g|0;L[g>>2]=L[h>>2];L[g+4>>2]=l;L[g+8>>2]=L[h+8>>2];e=e+2|0;o=o+2|0;if((p|0)!=(o|0)){continue}break}}if(!(d&1)){break e}e=R(e,12);d=e+f|0;e=e+L[a+16>>2]|0;h=L[e+4>>2];L[d>>2]=L[e>>2];L[d+4>>2]=h;L[d+8>>2]=L[e+8>>2]}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]=j;L[a+8>>2]=L[a+8>>2]+1;if(n){break b}dh(a);k=L[a+12>>2]-1&m}f=R(i,12)+f|0;L[f+8>>2]=0;L[f+4>>2]=c;L[f>>2]=b;b=L[a+60>>2]+(i<<2)|0;a=L[a+40>>2]+(k<<2)|0;L[b>>2]=L[a>>2];L[a>>2]=i}return f|0}function Hc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=fa-32|0;fa=e;a:{if(!L[a>>2]){break a}g=(b|0)<0?L[a+12>>2]:b;if((g|0)<=0){break a}while(1){h=0;b=L[a>>2];f=b+40|0;if(L[f>>2]){while(1){d=L[b+32>>2];b:{if(d>>>0<=b>>>0){d=b;break b}c=L[d+40>>2];l=(c|0)==(b|0);i=((b|0)!=(c|0))<<2;j=L[(i+d|0)+36>>2];c=L[d+32>>2];if(c){k=(((L[c+40>>2]==(d|0))<<2)+c|0)+36|0}else{k=a}L[k>>2]=b;L[j+32>>2]=b;L[d+32>>2]=b;L[b+32>>2]=c;L[d+36>>2]=L[b+36>>2];L[d+40>>2]=L[f>>2];L[L[b+36>>2]+32>>2]=d;L[L[f>>2]+32>>2]=d;c=b+36|0;L[c+(l<<2)>>2]=d;L[c+i>>2]=j;c=d+24|0;f=L[c+4>>2];L[e+24>>2]=L[c>>2];L[e+28>>2]=f;c=d+16|0;f=L[c+4>>2];L[e+16>>2]=L[c>>2];L[e+20>>2]=f;c=d+8|0;f=L[c+4>>2];L[e+8>>2]=L[c>>2];L[e+12>>2]=f;c=L[d+4>>2];L[e>>2]=L[d>>2];L[e+4>>2]=c;c=b+24|0;f=L[c+4>>2];L[d+24>>2]=L[c>>2];L[d+28>>2]=f;c=b+16|0;f=L[c+4>>2];L[d+16>>2]=L[c>>2];L[d+20>>2]=f;c=b+8|0;f=L[c+4>>2];L[d+8>>2]=L[c>>2];L[d+12>>2]=f;c=L[b+4>>2];L[d>>2]=L[b>>2];L[d+4>>2]=c;c=L[e+28>>2];L[b+24>>2]=L[e+24>>2];L[b+28>>2]=c;c=L[e+20>>2];L[b+16>>2]=L[e+16>>2];L[b+20>>2]=c;c=L[e+12>>2];L[b+8>>2]=L[e+8>>2];L[b+12>>2]=c;c=L[e+4>>2];L[b>>2]=L[e>>2];L[b+4>>2]=c}b=L[a+16>>2]>>>h|0;h=h+1&31;b=L[(((b&1)<<2)+d|0)+36>>2];f=b+40|0;if(L[f>>2]){continue}break}}d=Fd(a,b);Ed(a,d?L[a>>2]:0,b);L[a+16>>2]=L[a+16>>2]+1;g=g-1|0;if(g){continue}break}}fa=e+32|0}function Kl(a,b,c,d){var e=0,f=0,g=S(0),h=S(0),i=0,j=S(0),k=0,l=S(0),m=0,n=S(0),o=S(0),p=S(0),q=S(0),r=S(0),s=S(0);j=S(S(S(P[b+8>>2]*P[a+8>>2])+S(S(P[b>>2]*P[a>>2])+S(P[b+4>>2]*P[a+4>>2])))-P[a+12>>2]);if(!(j>S(1.1920928955078125e-7))){e=L[b+4>>2];L[d>>2]=L[b>>2];L[d+4>>2]=e;e=L[b+12>>2];L[d+8>>2]=L[b+8>>2];L[d+12>>2]=e;e=1}m=1;a:{if((c|0)<=1){g=j;break a}h=j;while(1){i=(m<<4)+b|0;n=P[i+8>>2];o=P[i>>2];p=P[i+4>>2];g=S(S(S(n*P[a+8>>2])+S(S(o*P[a>>2])+S(p*P[a+4>>2])))-P[a+12>>2]);k=g>S(1.1920928955078125e-7);if((k|0)!=(h>S(1.1920928955078125e-7)|0)){f=i-16|0;q=P[f>>2];r=P[f+4>>2];s=P[f+8>>2];f=(e<<4)+d|0;L[f+12>>2]=0;h=S(S(-h)/S(g-h));l=S(S(1)-h);P[f+8>>2]=S(n*h)+S(s*l);P[f+4>>2]=S(p*h)+S(l*r);P[f>>2]=S(o*h)+S(l*q);e=e+1|0}if(!k){k=L[i+4>>2];f=(e<<4)+d|0;L[f>>2]=L[i>>2];L[f+4>>2]=k;k=L[i+12>>2];L[f+8>>2]=L[i+8>>2];L[f+12>>2]=k;e=e+1|0}h=g;m=m+1|0;if((m|0)!=(c|0)){continue}break}}i=j>S(1.1920928955078125e-7);if((i|0)!=(g>S(1.1920928955078125e-7)|0)){a=((c<<4)+b|0)-16|0;h=P[a>>2];l=P[a+4>>2];n=P[a+8>>2];o=P[b>>2];p=P[b+4>>2];q=P[b+8>>2];a=(e<<4)+d|0;L[a+12>>2]=0;g=S(S(-g)/S(j-g));j=S(S(1)-g);P[a+8>>2]=S(n*j)+S(g*q);P[a+4>>2]=S(j*l)+S(g*p);P[a>>2]=S(j*h)+S(g*o);e=e+1|0}if(!i){c=L[b+4>>2];a=(e<<4)+d|0;L[a>>2]=L[b>>2];L[a+4>>2]=c;c=L[b+12>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=c;e=e+1|0}return e}function ey(a,b){a=a|0;b=b|0;var c=0,d=S(0),e=S(0),f=0,g=S(0);f=fa-16|0;fa=f;L[f+12>>2]=a;L[f+8>>2]=b;b=L[f+8>>2];a=fa-32|0;fa=a;L[a+28>>2]=L[f+12>>2];L[a+24>>2]=b;b=L[a+28>>2];d=P[b+12>>2];c=fa-16|0;L[c+12>>2]=L[a+24>>2];d=S(S(d*P[L[c+12>>2]>>2])+S(P[b>>2]*P[L[a+24>>2]+12>>2]));e=P[b+4>>2];c=fa-16|0;L[c+12>>2]=L[a+24>>2];d=S(S(e*P[L[c+12>>2]+8>>2])+d);e=P[b+8>>2];c=fa-16|0;L[c+12>>2]=L[a+24>>2];P[a+20>>2]=S(S(-e)*P[L[c+12>>2]+4>>2])+d;d=P[b+12>>2];c=fa-16|0;L[c+12>>2]=L[a+24>>2];d=S(S(d*P[L[c+12>>2]+4>>2])+S(P[b+4>>2]*P[L[a+24>>2]+12>>2]));e=P[b+8>>2];c=fa-16|0;L[c+12>>2]=L[a+24>>2];d=S(S(e*P[L[c+12>>2]>>2])+d);e=P[b>>2];c=fa-16|0;L[c+12>>2]=L[a+24>>2];P[a+16>>2]=S(S(-e)*P[L[c+12>>2]+8>>2])+d;d=P[b+12>>2];c=fa-16|0;L[c+12>>2]=L[a+24>>2];d=S(S(d*P[L[c+12>>2]+8>>2])+S(P[b+8>>2]*P[L[a+24>>2]+12>>2]));e=P[b>>2];c=fa-16|0;L[c+12>>2]=L[a+24>>2];d=S(S(e*P[L[c+12>>2]+4>>2])+d);e=P[b+4>>2];c=fa-16|0;L[c+12>>2]=L[a+24>>2];P[a+12>>2]=S(S(-e)*P[L[c+12>>2]>>2])+d;d=P[b+12>>2];e=P[L[a+24>>2]+12>>2];g=P[b>>2];c=fa-16|0;L[c+12>>2]=L[a+24>>2];d=S(S(d*e)-S(g*P[L[c+12>>2]>>2]));e=P[b+4>>2];c=fa-16|0;L[c+12>>2]=L[a+24>>2];d=S(S(S(-e)*P[L[c+12>>2]+4>>2])+d);e=P[b+8>>2];c=fa-16|0;L[c+12>>2]=L[a+24>>2];P[a+8>>2]=S(S(-e)*P[L[c+12>>2]+8>>2])+d;vc(b,a+20|0,a+16|0,a+12|0,a+8|0);fa=a+32|0;fa=f+16|0;return b|0}function lg(a,b,c){var d=0,e=0,f=S(0),g=S(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=S(0),q=S(0),r=S(0),s=S(0),t=S(0);d=fa+-64|0;fa=d;J[b+84|0]=0;a=L[a+116>>2];e=L[a+16>>2];L[d+8>>2]=L[a+12>>2];L[d+12>>2]=e;e=L[a+8>>2];L[d>>2]=L[a+4>>2];L[d+4>>2]=e;e=L[a+32>>2];L[d+24>>2]=L[a+28>>2];L[d+28>>2]=e;e=L[a+24>>2];L[d+16>>2]=L[a+20>>2];L[d+20>>2]=e;e=L[a+48>>2];L[d+40>>2]=L[a+44>>2];L[d+44>>2]=e;e=L[a+40>>2];L[d+32>>2]=L[a+36>>2];L[d+36>>2]=e;e=L[a+64>>2];L[d+56>>2]=L[a+60>>2];L[d+60>>2]=e;e=L[a+56>>2];L[d+48>>2]=L[a+52>>2];L[d+52>>2]=e;a:{if(!c){break a}a=L[a+480>>2];if(!a){break a}ha[L[L[a>>2]+8>>2]](a,d)}r=P[d+52>>2];i=P[d+24>>2];j=P[d+20>>2];f=P[d+56>>2];k=P[d+40>>2];l=P[d+36>>2];s=P[d+48>>2];m=P[d+8>>2];n=P[d+4>>2];o=P[d>>2];p=P[d+16>>2];q=P[d+32>>2];L[b+48>>2]=0;t=f;f=P[b+164>>2];g=P[b+156>>2];h=P[b+160>>2];P[b+44>>2]=t+S(S(k*f)+S(S(q*g)+S(l*h)));P[b+40>>2]=r+S(S(f*i)+S(S(g*p)+S(h*j)));P[b+36>>2]=s+S(S(f*m)+S(S(g*o)+S(h*n)));L[b- -64>>2]=0;f=P[b+180>>2];g=P[b+172>>2];h=P[b+176>>2];P[b+60>>2]=S(k*f)+S(S(q*g)+S(l*h));P[b+56>>2]=S(i*f)+S(S(p*g)+S(j*h));P[b+52>>2]=S(m*f)+S(S(o*g)+S(n*h));f=P[b+196>>2];g=P[b+192>>2];h=P[b+188>>2];L[b+80>>2]=0;P[b+76>>2]=S(k*f)+S(S(q*h)+S(l*g));P[b+72>>2]=S(i*f)+S(S(p*h)+S(j*g));P[b+68>>2]=S(m*f)+S(S(o*h)+S(n*g));fa=d- -64|0}function $F(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;g=fa-160|0;fa=g;f=L[a+12>>2];a:{if(!f){break a}h=M[a+16|0];i=h?b:c;j=L[i+4>>2];b=h?c:b;h=L[b+4>>2];L[e+4>>2]=f;c=g+144|0;P[c+12>>2]=P[f+752>>2];L[c+8>>2]=j;L[c+4>>2]=h;L[c>>2]=11800;L[g+136>>2]=1566444395;b=L[b+12>>2];f=L[b+12>>2];L[g+16>>2]=L[b+8>>2];L[g+20>>2]=f;f=L[b+4>>2];L[g+8>>2]=L[b>>2];L[g+12>>2]=f;f=L[b+28>>2];L[g+32>>2]=L[b+24>>2];L[g+36>>2]=f;f=L[b+20>>2];L[g+24>>2]=L[b+16>>2];L[g+28>>2]=f;f=L[b+44>>2];L[g+48>>2]=L[b+40>>2];L[g+52>>2]=f;f=L[b+36>>2];L[g+40>>2]=L[b+32>>2];L[g+44>>2]=f;h=L[b+60>>2];f=g- -64|0;L[f>>2]=L[b+56>>2];L[f+4>>2]=h;f=L[b+52>>2];L[g+56>>2]=L[b+48>>2];L[g+60>>2]=f;b=L[i+12>>2];f=L[b+12>>2];L[g+80>>2]=L[b+8>>2];L[g+84>>2]=f;f=L[b+4>>2];L[g+72>>2]=L[b>>2];L[g+76>>2]=f;f=L[b+20>>2];L[g+88>>2]=L[b+16>>2];L[g+92>>2]=f;f=L[b+28>>2];L[g+96>>2]=L[b+24>>2];L[g+100>>2]=f;f=L[b+36>>2];L[g+104>>2]=L[b+32>>2];L[g+108>>2]=f;f=L[b+44>>2];L[g+112>>2]=L[b+40>>2];L[g+116>>2]=f;f=L[b+52>>2];L[g+120>>2]=L[b+48>>2];L[g+124>>2]=f;f=L[b+60>>2];L[g+128>>2]=L[b+56>>2];L[g+132>>2]=f;Mm(c,g+8|0,e,L[d+20>>2],M[a+16|0]);if(!M[a+8|0]){break a}a=L[e+4>>2];if(!L[a+748>>2]){break a}c=L[a+740>>2];d=L[L[e+8>>2]+8>>2];b=(c|0)==(d|0);f=a;a=L[L[e+12>>2]+8>>2];_a(f,(b?c:a)+4|0,(b?a:d)+4|0)}fa=g+160|0}function El(a,b,c,d,e,f){var g=0;L[a+4>>2]=b;L[a>>2]=18956;b=L[c+12>>2];L[a+16>>2]=L[c+8>>2];L[a+20>>2]=b;b=L[c+4>>2];L[a+8>>2]=L[c>>2];L[a+12>>2]=b;b=L[c+28>>2];L[a+32>>2]=L[c+24>>2];L[a+36>>2]=b;b=L[c+20>>2];L[a+24>>2]=L[c+16>>2];L[a+28>>2]=b;b=L[c+44>>2];L[a+48>>2]=L[c+40>>2];L[a+52>>2]=b;b=L[c+36>>2];L[a+40>>2]=L[c+32>>2];L[a+44>>2]=b;g=L[c+60>>2];b=a- -64|0;L[b>>2]=L[c+56>>2];L[b+4>>2]=g;b=L[c+52>>2];L[a+56>>2]=L[c+48>>2];L[a+60>>2]=b;b=L[d+12>>2];L[a+80>>2]=L[d+8>>2];L[a+84>>2]=b;b=L[d+4>>2];L[a+72>>2]=L[d>>2];L[a+76>>2]=b;b=L[d+28>>2];L[a+96>>2]=L[d+24>>2];L[a+100>>2]=b;b=L[d+20>>2];L[a+88>>2]=L[d+16>>2];L[a+92>>2]=b;b=L[d+44>>2];L[a+112>>2]=L[d+40>>2];L[a+116>>2]=b;b=L[d+36>>2];L[a+104>>2]=L[d+32>>2];L[a+108>>2]=b;b=L[d+60>>2];L[a+128>>2]=L[d+56>>2];L[a+132>>2]=b;b=L[d+52>>2];L[a+120>>2]=L[d+48>>2];L[a+124>>2]=b;b=L[e+12>>2];L[a+144>>2]=L[e+8>>2];L[a+148>>2]=b;b=L[e+4>>2];L[a+136>>2]=L[e>>2];L[a+140>>2]=b;b=L[e+28>>2];L[a+160>>2]=L[e+24>>2];L[a+164>>2]=b;b=L[e+20>>2];L[a+152>>2]=L[e+16>>2];L[a+156>>2]=b;b=L[e+44>>2];L[a+176>>2]=L[e+40>>2];L[a+180>>2]=b;b=L[e+36>>2];L[a+168>>2]=L[e+32>>2];L[a+172>>2]=b;b=L[e+60>>2];L[a+192>>2]=L[e+56>>2];L[a+196>>2]=b;b=L[e+52>>2];L[a+184>>2]=L[e+48>>2];L[a+188>>2]=b;L[a+208>>2]=0;P[a+204>>2]=f;L[a+200>>2]=1065353216;return a}function zt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;e=oa(608);a=L[d+8>>2];b=rg(e,5,L[d+12>>2]);L[b>>2]=19392;c=L[a+12>>2];L[b+308>>2]=L[a+8>>2];L[b+312>>2]=c;c=L[a+4>>2];L[b+300>>2]=L[a>>2];L[b+304>>2]=c;c=L[a+28>>2];L[b+324>>2]=L[a+24>>2];L[b+328>>2]=c;c=L[a+20>>2];L[b+316>>2]=L[a+16>>2];L[b+320>>2]=c;c=L[a+36>>2];L[b+332>>2]=L[a+32>>2];L[b+336>>2]=c;c=L[a+44>>2];L[b+340>>2]=L[a+40>>2];L[b+344>>2]=c;c=L[a+56>>2];f=L[a+60>>2];g=L[a+48>>2];a=L[a+52>>2];J[b+527|0]=0;L[b+356>>2]=c;L[b+360>>2]=f;L[b+348>>2]=g;L[b+352>>2]=a;a=L[b+304>>2];L[b+364>>2]=L[b+300>>2];L[b+368>>2]=a;a=L[b+312>>2];L[b+372>>2]=L[b+308>>2];L[b+376>>2]=a;a=L[b+320>>2];L[b+380>>2]=L[b+316>>2];L[b+384>>2]=a;a=L[b+328>>2];L[b+388>>2]=L[b+324>>2];L[b+392>>2]=a;a=L[b+344>>2];L[b+404>>2]=L[b+340>>2];L[b+408>>2]=a;a=L[b+336>>2];L[b+396>>2]=L[b+332>>2];L[b+400>>2]=a;J[b+552|0]=0;J[b+526|0]=0;K[b+524>>1]=0;L[b+420>>2]=0;L[b+424>>2]=0;L[b+412>>2]=0;L[b+416>>2]=0;L[b+572>>2]=-1082130432;L[b+452>>2]=1566444395;L[b+444>>2]=1566444395;L[b+448>>2]=1566444395;L[b+604>>2]=0;L[b+596>>2]=0;L[b+600>>2]=1060320051;L[b+592>>2]=0;L[b+456>>2]=1028443341;L[b+436>>2]=1065353216;L[b+440>>2]=1008981770;L[b+428>>2]=1065353216;L[b+432>>2]=1050253722;fa=d+16|0;return e|0}function OA(a,b){a=a|0;b=S(b);var c=0,d=0,e=0,f=S(0),g=0,h=S(0),i=S(0),j=S(0),k=S(0);e=L[a+8>>2];if((e|0)>0){while(1){c=L[L[a+16>>2]+(g<<2)>>2];if(!(!(M[c+236|0]&2)|!c|(!(M[c+204|0]&2)|L[c+216>>2]==2))){e=fa-32|0;fa=e;if(b!=S(0)){d=L[c+480>>2];if(d){ha[L[L[d>>2]+8>>2]](d,c+4|0)}L[c+324>>2]=0;f=S(S(1)/b);P[c+320>>2]=f*S(P[c+60>>2]-P[c+124>>2]);P[c+316>>2]=f*S(P[c+56>>2]-P[c+120>>2]);P[c+312>>2]=f*S(P[c+52>>2]-P[c+116>>2]);ec(c+68|0,c+4|0,e+16|0,e+12|0);i=P[e+16>>2];j=P[e+20>>2];k=P[e+24>>2];h=P[e+12>>2];L[c+340>>2]=0;P[c+336>>2]=f*S(h*k);P[c+332>>2]=f*S(h*j);P[c+328>>2]=f*S(i*h);d=L[c+324>>2];L[c+140>>2]=L[c+320>>2];L[c+144>>2]=d;d=L[c+316>>2];L[c+132>>2]=L[c+312>>2];L[c+136>>2]=d;d=L[c+332>>2];L[c+148>>2]=L[c+328>>2];L[c+152>>2]=d;d=L[c+340>>2];L[c+156>>2]=L[c+336>>2];L[c+160>>2]=d;d=L[c+8>>2];L[c+68>>2]=L[c+4>>2];L[c+72>>2]=d;d=L[c+16>>2];L[c+76>>2]=L[c+12>>2];L[c+80>>2]=d;d=L[c+24>>2];L[c+84>>2]=L[c+20>>2];L[c+88>>2]=d;d=L[c+32>>2];L[c+92>>2]=L[c+28>>2];L[c+96>>2]=d;d=L[c+48>>2];L[c+108>>2]=L[c+44>>2];L[c+112>>2]=d;d=L[c+40>>2];L[c+100>>2]=L[c+36>>2];L[c+104>>2]=d;d=L[c+64>>2];L[c+124>>2]=L[c+60>>2];L[c+128>>2]=d;d=L[c+56>>2];L[c+116>>2]=L[c+52>>2];L[c+120>>2]=d}fa=e+32|0;e=L[a+8>>2]}g=g+1|0;if((g|0)<(e|0)){continue}break}}}function AG(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;f=fa-160|0;fa=f;g=L[a+12>>2];a:{if(!g){break a}h=L[c+4>>2];i=L[b+4>>2];L[e+4>>2]=g;L[f+152>>2]=1566444395;b=L[b+12>>2];g=L[b+12>>2];L[f+32>>2]=L[b+8>>2];L[f+36>>2]=g;g=L[b+4>>2];L[f+24>>2]=L[b>>2];L[f+28>>2]=g;g=L[b+28>>2];L[f+48>>2]=L[b+24>>2];L[f+52>>2]=g;g=L[b+20>>2];L[f+40>>2]=L[b+16>>2];L[f+44>>2]=g;j=L[b+44>>2];g=f- -64|0;L[g>>2]=L[b+40>>2];L[g+4>>2]=j;g=L[b+36>>2];L[f+56>>2]=L[b+32>>2];L[f+60>>2]=g;g=L[b+60>>2];L[f+80>>2]=L[b+56>>2];L[f+84>>2]=g;g=L[b+52>>2];L[f+72>>2]=L[b+48>>2];L[f+76>>2]=g;b=L[c+12>>2];c=L[b+12>>2];L[f+96>>2]=L[b+8>>2];L[f+100>>2]=c;c=L[b+4>>2];L[f+88>>2]=L[b>>2];L[f+92>>2]=c;c=L[b+20>>2];L[f+104>>2]=L[b+16>>2];L[f+108>>2]=c;c=L[b+28>>2];L[f+112>>2]=L[b+24>>2];L[f+116>>2]=c;c=L[b+36>>2];L[f+120>>2]=L[b+32>>2];L[f+124>>2]=c;c=L[b+44>>2];L[f+128>>2]=L[b+40>>2];L[f+132>>2]=c;c=L[b+52>>2];L[f+136>>2]=L[b+48>>2];L[f+140>>2]=c;c=L[b+60>>2];L[f+144>>2]=L[b+56>>2];L[f+148>>2]=c;b=f+12|0;L[b+8>>2]=h;L[b+4>>2]=i;L[b>>2]=10080;Zm(b,f+24|0,e,L[d+20>>2],0);if(!M[a+8|0]){break a}a=L[e+4>>2];if(!L[a+748>>2]){break a}c=L[a+740>>2];d=L[L[e+8>>2]+8>>2];b=(c|0)==(d|0);g=a;a=L[L[e+12>>2]+8>>2];_a(g,(b?c:a)+4|0,(b?a:d)+4|0)}fa=f+160|0}function Rb(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=S(0),m=S(0),n=S(0),o=0,p=S(0);o=fa-16|0;fa=o;f=P[a+52>>2];g=P[a+56>>2];j=P[a+48>>2];h=P[b>>2];k=P[b+4>>2];i=P[b+8>>2];L[e+60>>2]=0;P[e+56>>2]=g+S(i*d);P[e+52>>2]=f+S(k*d);P[e+48>>2]=j+S(h*d);l=P[c+8>>2];m=P[c>>2];n=P[c+4>>2];f=S(_(S(S(l*l)+S(S(m*m)+S(n*n)))));g=S(f*d)>S(.7853981852531433)?S(S(.7853981852531433)/d):f;a:{if(g>2];h=P[o>>2];k=P[o+4>>2];i=P[o+12>>2];L[e+44>>2]=0;L[e+28>>2]=0;L[e+12>>2]=0;l=S(l*f);d=Fa(S(S(g*d)*S(.5)));g=S(n*f);f=S(m*f);m=S(S(S(h*l)+S(S(k*d)+S(i*g)))-S(j*f));n=S(S(S(S(d*i)-S(h*f))-S(g*k))-S(l*j));p=S(S(S(f*k)+S(S(d*j)+S(l*i)))-S(g*h));h=S(S(S(g*j)+S(S(d*h)+S(f*i)))-S(l*k));f=S(S(1)/S(_(S(S(n*n)+S(S(p*p)+S(S(h*h)+S(m*m)))))));d=S(m*f);g=S(n*f);j=S(p*f);f=S(h*f);h=S(S(2)/S(S(g*g)+S(S(j*j)+S(S(f*f)+S(d*d)))));k=S(j*h);i=S(d*k);l=S(f*h);m=S(g*l);P[e+36>>2]=i+m;n=S(f*k);h=S(d*h);p=S(g*h);P[e+32>>2]=n-p;P[e+24>>2]=i-m;i=S(f*h);g=S(g*k);P[e+16>>2]=i+g;P[e+8>>2]=n+p;P[e+4>>2]=i-g;f=S(f*l);d=S(d*h);P[e+40>>2]=S(1)-S(f+d);g=f;f=S(j*k);P[e+20>>2]=S(1)-S(g+f);P[e>>2]=S(1)-S(d+f);fa=o+16|0}function up(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;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;L[f+12>>2]=e;e=oa(460);a=L[f+12>>2];b=L[f+28>>2];g=L[f+24>>2];c=Wk(e,b,g,L[f+20>>2]);L[c>>2]=22792;L[c+352>>2]=1067030938;L[c+356>>2]=0;d=0;J[c+456|0]=0;L[c+452>>2]=a;J[c+340|0]=1;L[c+336>>2]=0;L[c+368>>2]=0;L[c+372>>2]=0;L[c+360>>2]=0;L[c+364>>2]=1148846080;L[c+328>>2]=0;L[c+332>>2]=0;L[c+376>>2]=0;L[c+380>>2]=0;L[c+384>>2]=0;L[c+388>>2]=0;L[c+392>>2]=0;J[c+424|0]=1;L[c+404>>2]=0;L[c+396>>2]=-1054867456;L[c+400>>2]=0;L[c+420>>2]=0;L[c+412>>2]=0;L[c+416>>2]=0;if(!a){L[8513]=L[8513]+1;a=ek(ha[L[6798]](40,16)|0);J[c+456|0]=1;L[c+452>>2]=a}J[c+350|0]=0;K[c+348>>1]=1;L[c+344>>2]=4302;L[c+388>>2]=b;L[c+384>>2]=g;g=c+408|0;gk(g);h=L[c+412>>2];if((h|0)>0){while(1){b=L[c+420>>2]+(d<<2)|0;a=L[b>>2];L[b>>2]=0;if(a){while(1){b=L[a+280>>2];ra(a);a=b;if(a){continue}break}}d=d+1|0;if((h|0)!=(d|0)){continue}break}}L[c+360>>2]=0;L[c+352>>2]=1067030938;L[c+356>>2]=0;L[c+444>>2]=1;L[c+448>>2]=1;L[c+436>>2]=0;L[c+428>>2]=1048576e3;L[c+432>>2]=0;L[c+392>>2]=0;L[c+376>>2]=0;L[c+380>>2]=0;L[c+368>>2]=0;L[c+372>>2]=0;L[c+404>>2]=0;L[c+396>>2]=-1054867456;L[c+400>>2]=0;gk(g);fa=f+32|0;return e|0}function Td(a,b,c){var d=0,e=0,f=0,g=0;e=fa-80|0;fa=e;L[e+76>>2]=a;L[e+72>>2]=b;L[e+68>>2]=c;g=L[e+72>>2];c=L[e+68>>2];b=fa-48|0;fa=b;f=e+20|0;L[b+44>>2]=f;L[b+40>>2]=g;L[b+36>>2]=c;d=L[b+36>>2];c=fa-16|0;L[c+12>>2]=L[b+40>>2];L[c+8>>2]=0;P[b+32>>2]=mc(d,L[c+12>>2]+(L[c+8>>2]<<4)|0);d=L[b+36>>2];c=fa-16|0;L[c+12>>2]=L[b+40>>2];L[c+8>>2]=0;P[b+28>>2]=lc(d,L[c+12>>2]+(L[c+8>>2]<<4)|0);d=L[b+36>>2];c=fa-16|0;L[c+12>>2]=L[b+40>>2];L[c+8>>2]=0;P[b+24>>2]=kc(d,L[c+12>>2]+(L[c+8>>2]<<4)|0);d=L[b+36>>2];c=fa-16|0;L[c+12>>2]=L[b+40>>2];L[c+8>>2]=1;P[b+20>>2]=mc(d,L[c+12>>2]+(L[c+8>>2]<<4)|0);d=L[b+36>>2];c=fa-16|0;L[c+12>>2]=L[b+40>>2];L[c+8>>2]=1;P[b+16>>2]=lc(d,L[c+12>>2]+(L[c+8>>2]<<4)|0);d=L[b+36>>2];c=fa-16|0;L[c+12>>2]=L[b+40>>2];L[c+8>>2]=1;P[b+12>>2]=kc(d,L[c+12>>2]+(L[c+8>>2]<<4)|0);d=L[b+36>>2];c=fa-16|0;L[c+12>>2]=L[b+40>>2];L[c+8>>2]=2;P[b+8>>2]=mc(d,L[c+12>>2]+(L[c+8>>2]<<4)|0);d=L[b+36>>2];c=fa-16|0;L[c+12>>2]=L[b+40>>2];L[c+8>>2]=2;P[b+4>>2]=lc(d,L[c+12>>2]+(L[c+8>>2]<<4)|0);d=L[b+36>>2];c=fa-16|0;L[c+12>>2]=L[b+40>>2];L[c+8>>2]=2;P[b>>2]=kc(d,L[c+12>>2]+(L[c+8>>2]<<4)|0);lf(f,b+32|0,b+28|0,b+24|0,b+20|0,b+16|0,b+12|0,b+8|0,b+4|0,b);fa=b+48|0;b=e+4|0;tb(b,g,L[e+68>>2]+48|0);Qf(a,f,b);fa=e+80|0}function On(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=0,o=0,p=0;g=L[c+4>>2];L[b+16>>2]=L[c>>2];L[b+20>>2]=g;g=L[c+12>>2];L[b+24>>2]=L[c+8>>2];L[b+28>>2]=g;g=L[d+4>>2];L[b+32>>2]=L[d>>2];L[b+36>>2]=g;g=L[d+12>>2];L[b+40>>2]=L[d+8>>2];L[b+44>>2]=g;l=N[b+12>>1];g=fa-16|0;fa=g;k=L[a+60>>2];Kd(a,g+10|0,c,0);Kd(a,g+4|0,d,1);h=L[a+68>>2];f=k+(l<<6)|0;j=N[f+48>>1];i=h+(j<<2)|0;m=N[i>>1];f=N[f+54>>1];h=h+(f<<2)|0;o=N[h>>1];p=N[g+4>>1];n=i;i=N[g+10>>1];K[n>>1]=i;K[h>>1]=N[g+4>>1];h=i-m|0;if((h|0)<0){Jd(a,0,j)}i=p-o|0;if((i|0)>0){bf(a,0,f)}if((h|0)>0){af(a,0,j,e)}if((i|0)<0){Id(a,0,f,e)}h=L[a+72>>2];f=k+(l<<6)|0;j=N[f+50>>1];i=h+(j<<2)|0;m=N[i>>1];f=N[f+56>>1];h=h+(f<<2)|0;o=N[h>>1];p=N[g+6>>1];n=i;i=N[g+12>>1];K[n>>1]=i;K[h>>1]=N[g+6>>1];h=i-m|0;if((h|0)<0){Jd(a,1,j)}i=p-o|0;if((i|0)>0){bf(a,1,f)}if((h|0)>0){af(a,1,j,e)}if((i|0)<0){Id(a,1,f,e)}j=L[a+76>>2];k=k+(l<<6)|0;l=N[k+52>>1];f=j+(l<<2)|0;h=N[f>>1];k=N[k+58>>1];j=j+(k<<2)|0;i=N[j>>1];m=N[g+8>>1];n=f;f=N[g+14>>1];K[n>>1]=f;K[j>>1]=N[g+8>>1];j=f-h|0;if((j|0)<0){Jd(a,2,l)}f=m-i|0;if((f|0)>0){bf(a,2,k)}if((j|0)>0){af(a,2,l,e)}if((f|0)<0){Id(a,2,k,e)}fa=g+16|0;a=L[a+108>>2];if(a){ha[L[L[a>>2]+16>>2]](a,L[b+60>>2],c,d,e)}}function Xy(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;a:{if(ha[L[L[c>>2]+16>>2]](c)|0){break a}h=L[b+712>>2];f=ha[L[L[c>>2]+36>>2]](c)|0;b:{if(!(ha[L[L[c>>2]+8>>2]](c)|0)){break b}a=ha[L[L[c>>2]+20>>2]](c)|0;i=ha[L[L[c>>2]+24>>2]](c)|0;if((h|0)<=0){break b}a=f+(a<<2)|0;g=L[b+720>>2];if((h|0)!=1){j=h&-2;i=i<<2;while(1){e=g+R(d,104)|0;k=L[e+8>>2];l=L[e+12>>2];P[a+8>>2]=P[e+16>>2];L[a>>2]=k;L[a+4>>2]=l;e=g+R(d|1,104)|0;k=L[e+8>>2];l=L[e+12>>2];a=a+i|0;P[a+8>>2]=P[e+16>>2];L[a>>2]=k;L[a+4>>2]=l;a=a+i|0;d=d+2|0;m=m+2|0;if((j|0)!=(m|0)){continue}break}}if(!(h&1)){break b}d=g+R(d,104)|0;g=L[d+8>>2];i=L[d+12>>2];P[a+8>>2]=P[d+16>>2];L[a>>2]=g;L[a+4>>2]=i}if(!(ha[L[L[c>>2]+12>>2]](c)|0)){break a}a=ha[L[L[c>>2]+28>>2]](c)|0;c=ha[L[L[c>>2]+32>>2]](c)|0;if((h|0)<=0){break a}a=f+(a<<2)|0;b=L[b+720>>2];d=0;if((h|0)!=1){i=h&-2;c=c<<2;g=0;while(1){f=b+R(d,104)|0;e=L[f+72>>2];j=L[f+76>>2];P[a+8>>2]=P[f+80>>2];L[a>>2]=e;L[a+4>>2]=j;f=b+R(d|1,104)|0;e=L[f+72>>2];j=L[f+76>>2];a=a+c|0;P[a+8>>2]=P[f+80>>2];L[a>>2]=e;L[a+4>>2]=j;a=a+c|0;d=d+2|0;g=g+2|0;if((i|0)!=(g|0)){continue}break}}if(!(h&1)){break a}b=b+R(d,104)|0;c=L[b+72>>2];d=L[b+76>>2];P[a+8>>2]=P[b+80>>2];L[a>>2]=c;L[a+4>>2]=d}}function gD(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;a:{b:{if(M[a+164|0]){k=a+132|0;if(L[k>>2]>=(b|0)){break a}if(b){L[8513]=L[8513]+1;e=ha[L[6798]](b<<2,16)|0}else{e=0}d=L[a+136>>2];f=L[a+128>>2];c:{d:{if((f|0)>0){if(f>>>0>=4){l=f&-4;while(1){c=g<<2;L[c+e>>2]=L[d+c>>2];h=c|4;L[h+e>>2]=L[d+h>>2];h=c|8;L[h+e>>2]=L[d+h>>2];c=c|12;L[c+e>>2]=L[d+c>>2];g=g+4|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}c=f&3;if(c){while(1){f=g<<2;L[f+e>>2]=L[d+f>>2];g=g+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}if(M[a+140|0]){break d}break c}if(!d|!M[a+140|0]){break c}}if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}}L[a+136>>2]=e;J[a+140|0]=1;break b}k=a+152|0;if(L[k>>2]>=(b|0)){break a}if(b){L[8513]=L[8513]+1;e=ha[L[6798]](b<<1,16)|0}else{e=0}d=L[a+156>>2];f=L[a+148>>2];e:{f:{if((f|0)>0){if(f>>>0>=4){l=f&-4;while(1){c=g<<1;K[c+e>>1]=N[d+c>>1];h=c|2;K[h+e>>1]=N[d+h>>1];h=c|4;K[h+e>>1]=N[d+h>>1];c=c|6;K[c+e>>1]=N[d+c>>1];g=g+4|0;i=i+4|0;if((l|0)!=(i|0)){continue}break}}c=f&3;if(c){while(1){f=g<<1;K[f+e>>1]=N[d+f>>1];g=g+1|0;j=j+1|0;if((c|0)!=(j|0)){continue}break}}if(M[a+160|0]){break f}break e}if(!d|!M[a+160|0]){break e}}if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}}L[a+156>>2]=e;J[a+160|0]=1}L[k>>2]=b}}function iF(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;db(a,b,c);P[b+20>>2]=P[a+72>>2];d=L[a+16>>2];L[b+12>>2]=0;L[b+16>>2]=d;if(d){g=ha[L[L[c>>2]+16>>2]](c,76,d)|0;d=L[g+8>>2];L[b+12>>2]=ha[L[L[c>>2]+28>>2]](c,d);if(L[b+16>>2]>0){f=L[a+24>>2];while(1){e=R(h,80);f=e+f|0;P[d+72>>2]=P[f+72>>2];L[d+64>>2]=ha[L[L[c>>2]+28>>2]](c,L[f+64>>2]);if(!(ha[L[L[c>>2]+24>>2]](c,L[(e+L[a+24>>2]|0)+64>>2])|0)){f=L[(e+L[a+24>>2]|0)+64>>2];f=(k=c,l=ha[L[L[f>>2]+52>>2]](f)|0,m=1,j=L[L[c>>2]+16>>2],ha[j](k|0,l|0,m|0)|0);i=L[(e+L[a+24>>2]|0)+64>>2];m=c,l=f,k=ha[L[L[i>>2]+56>>2]](i,L[f+8>>2],c)|0,n=1346455635,o=L[(e+L[a+24>>2]|0)+64>>2],j=L[L[c>>2]+20>>2],ha[j](m|0,l|0,k|0,n|0,o|0)}f=L[a+24>>2];e=e+f|0;L[d+68>>2]=L[e+68>>2];P[d>>2]=P[e>>2];P[d+4>>2]=P[e+4>>2];P[d+8>>2]=P[e+8>>2];P[d+12>>2]=P[e+12>>2];P[d+16>>2]=P[e+16>>2];P[d+20>>2]=P[e+20>>2];P[d+24>>2]=P[e+24>>2];P[d+28>>2]=P[e+28>>2];P[d+32>>2]=P[e+32>>2];P[d+36>>2]=P[e+36>>2];P[d+40>>2]=P[e+40>>2];P[d+44>>2]=P[e+44>>2];P[d+48>>2]=P[e+48>>2];P[d+52>>2]=P[e+52>>2];P[d+56>>2]=P[e+56>>2];P[d+60>>2]=P[e+60>>2];d=d+76|0;h=h+1|0;if((h|0)>2]){continue}break}}ha[L[L[c>>2]+20>>2]](c,g,4186,1497453121,L[g+8>>2])}return 4038}function EC(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=S(0),i=S(0),j=S(0),k=S(0),l=S(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=0,D=S(0),E=S(0),F=S(0);f=fa+-64|0;fa=f;C=ha[L[L[a>>2]+92>>2]](a)|0;g=L[L[a+184>>2]+(b<<2)>>2];a:{if(C){a=L[a+164>>2]+(b<<6)|0;q=P[a+32>>2];r=P[a>>2];s=P[a+16>>2];t=P[a+56>>2];u=P[a+52>>2];v=P[a+48>>2];w=P[a+36>>2];x=P[a+20>>2];y=P[a+4>>2];z=P[a+40>>2];A=P[a+24>>2];B=P[a+8>>2];D=P[c+52>>2];E=P[c+56>>2];h=P[c+24>>2];i=P[c+20>>2];j=P[c+40>>2];k=P[c+36>>2];F=P[c+48>>2];l=P[c+8>>2];m=P[c>>2];n=P[c+4>>2];o=P[c+16>>2];p=P[c+32>>2];L[f+60>>2]=0;L[f+44>>2]=0;L[f+28>>2]=0;P[f+40>>2]=S(z*j)+S(S(B*p)+S(A*k));P[f+36>>2]=S(w*j)+S(S(y*p)+S(x*k));P[f+24>>2]=S(z*h)+S(S(B*o)+S(A*i));P[f+20>>2]=S(w*h)+S(S(y*o)+S(x*i));P[f+56>>2]=E+S(S(t*j)+S(S(v*p)+S(k*u)));P[f+52>>2]=D+S(S(t*h)+S(S(v*o)+S(i*u)));L[f+12>>2]=0;P[f+32>>2]=S(q*j)+S(S(r*p)+S(s*k));P[f+16>>2]=S(q*h)+S(S(r*o)+S(s*i));P[f>>2]=S(q*l)+S(S(r*m)+S(s*n));P[f+8>>2]=S(z*l)+S(S(B*m)+S(n*A));P[f+4>>2]=S(w*l)+S(S(y*m)+S(n*x));P[f+48>>2]=F+S(S(t*l)+S(S(v*m)+S(n*u)));ha[L[L[g>>2]+8>>2]](g,f,d,e);break a}ha[L[L[g>>2]+8>>2]](g,c,d,e)}fa=f- -64|0}function en(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=S(0),g=0,h=0;c=fa-784|0;fa=c;L[c+732>>2]=0;L[c+736>>2]=0;L[c+744>>2]=0;L[c+748>>2]=0;L[c+740>>2]=1065353216;L[c+752>>2]=0;L[c+756>>2]=0;L[c+764>>2]=0;L[c+768>>2]=0;L[c+760>>2]=1065353216;L[c+772>>2]=0;L[c+776>>2]=0;L[c+780>>2]=0;L[c+724>>2]=0;L[c+728>>2]=0;L[c+720>>2]=1065353216;L[c+712>>2]=0;L[c+716>>2]=0;L[c+544>>2]=6864;P[c+708>>2]=P[a+200>>2];f=P[a+196>>2];g=c+492|0;d=g;L[d+4>>2]=35;L[d+8>>2]=0;L[d>>2]=14328;L[d+44>>2]=1025758986;L[d+12>>2]=1065353216;L[d+16>>2]=1065353216;L[d>>2]=14044;L[d+20>>2]=1065353216;L[d+24>>2]=0;P[d+44>>2]=f;P[d+28>>2]=f;L[d+4>>2]=8;L[d>>2]=16192;d=yb(c+388|0);L[d+4>>2]=1;L[d>>2]=2236;h=L[b+12>>2];e=d- -64|0;L[e>>2]=L[b+8>>2];L[e+4>>2]=h;e=L[b+4>>2];L[d+56>>2]=L[b>>2];L[d+60>>2]=e;e=L[b+20>>2];L[d+72>>2]=L[b+16>>2];L[d+76>>2]=e;e=L[b+28>>2];L[d+80>>2]=L[b+24>>2];L[d+84>>2]=e;e=L[b+36>>2];L[d+88>>2]=L[b+32>>2];L[d+92>>2]=e;e=L[b+44>>2];L[d+96>>2]=L[b+40>>2];L[d+100>>2]=e;J[c+360|0]=0;L[c+336>>2]=953267991;b=c+12|0;L[b+12>>2]=d;L[b+8>>2]=g;L[b+4>>2]=c+28;L[b>>2]=19064;g=b;b=c+720|0;a:{if(!Cl(g,a+4|0,a+68|0,b,b,c+544|0)){break a}f=P[c+708>>2];if(!(f>2])){break a}P[a+200>>2]=f}Oa(d);fa=c+784|0}function ik(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0;a=gh(a,b);L[a>>2]=22296;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=22384;J[c+4|0]=0;L[a+92>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=22464;J[c+4|0]=0;L[a+96>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=22464;L[a+100>>2]=c;J[c+4|0]=1;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=22544;J[c+4|0]=0;L[a+104>>2]=c;L[8513]=L[8513]+1;c=ha[L[6798]](8,16)|0;L[c>>2]=22628;L[a+108>>2]=c;J[c+4|0]=1;a:{if(!M[a+20|0]){break a}c=L[a+16>>2];if(!c|L[c>>2]>155){break a}c=L[c+16>>2];if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}c=L[a+16>>2];if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}L[8513]=L[8513]+1;e=ha[L[6798]](20,16)|0;b=L[b+12>>2];L[e+4>>2]=b;L[e>>2]=156;L[8513]=L[8513]+1;b=ha[L[6798]](R(b,156),16)|0;L[e+12>>2]=b;L[e+16>>2]=b;g=L[e+4>>2];L[e+8>>2]=g;f=g-1|0;b:{if(!f){break b}c=L[e>>2];h=f&7;if(h){while(1){d=b;b=b+c|0;L[d>>2]=b;f=f-1|0;i=i+1|0;if((i|0)!=(h|0)){continue}break}}if(g-2>>>0<7){break b}while(1){d=b;b=b+c|0;L[d>>2]=b;d=b;b=b+c|0;L[d>>2]=b;d=b;b=b+c|0;L[d>>2]=b;d=b;b=b+c|0;L[d>>2]=b;d=b;b=b+c|0;L[d>>2]=b;d=b;b=b+c|0;L[d>>2]=b;d=b;b=b+c|0;L[d>>2]=b;d=b;b=b+c|0;L[d>>2]=b;f=f-8|0;if(f){continue}break}}L[b>>2]=0;L[a+16>>2]=e}}function gk(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;L[a+32>>2]=262144;c=L[a+4>>2];a:{if((c|0)>=2383){break a}if(L[a+8>>2]<2383){L[8513]=L[8513]+1;g=ha[L[6798]](9532,16)|0;i=L[a+4>>2];b:{if((i|0)<=0){break b}if(i>>>0>=4){j=i&-4;while(1){h=e<<2;L[h+g>>2]=L[L[a+12>>2]+h>>2];d=h|4;L[d+g>>2]=L[d+L[a+12>>2]>>2];d=h|8;L[d+g>>2]=L[d+L[a+12>>2]>>2];d=h|12;L[d+g>>2]=L[d+L[a+12>>2]>>2];e=e+4|0;f=f+4|0;if((j|0)!=(f|0)){continue}break}}j=i&3;if(!j){break b}while(1){d=e<<2;L[d+g>>2]=L[d+L[a+12>>2]>>2];e=e+1|0;b=b+1|0;if((j|0)!=(b|0)){continue}break}}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]=g;J[a+16|0]=1;L[a+8>>2]=2383}d=(c^-1)+2383|0;b=2383-c&3;if(b){e=0;while(1){L[L[a+12>>2]+(c<<2)>>2]=0;c=c+1|0;e=e+1|0;if((b|0)!=(e|0)){continue}break}}if(d>>>0<3){break a}while(1){b=c<<2;L[b+L[a+12>>2]>>2]=0;L[(b+L[a+12>>2]|0)+4>>2]=0;L[(b+L[a+12>>2]|0)+8>>2]=0;L[(b+L[a+12>>2]|0)+12>>2]=0;c=c+4|0;if((c|0)!=2383){continue}break}}L[a+4>>2]=2383;f=0;while(1){b=L[a+12>>2]+(f<<2)|0;c=L[b>>2];L[b>>2]=0;if(c){while(1){b=L[c+280>>2];ra(c);c=b;if(b){continue}break}}f=f+1|0;if((f|0)!=2383){continue}break}L[a+36>>2]=1;L[a+40>>2]=1;L[a+28>>2]=0;L[a+20>>2]=1048576e3;L[a+24>>2]=0}function cl(a){a=a|0;var b=0;L[a>>2]=19944;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]=0;J[a+180|0]=1;L[a+168>>2]=0;L[a+172>>2]=0;b=L[a+156>>2];if(!(b?!b|!M[a+160|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+156>>2]=0;J[a+160|0]=1;L[a+148>>2]=0;L[a+152>>2]=0;b=L[a+136>>2];if(!(b?!b|!M[a+140|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+136>>2]=0;J[a+140|0]=1;L[a+128>>2]=0;L[a+132>>2]=0;b=L[a+116>>2];if(!(b?!b|!M[a+120|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+116>>2]=0;J[a+120|0]=1;L[a+108>>2]=0;L[a+112>>2]=0;b=L[a+96>>2];if(!(b?!b|!M[a+100|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+96>>2]=0;J[a+100|0]=1;L[a+88>>2]=0;L[a+92>>2]=0;b=L[a+76>>2];if(!(b?!b|!M[a+80|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+76>>2]=0;J[a+80|0]=1;L[a+68>>2]=0;L[a+72>>2]=0;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]=0;J[a+60|0]=1;L[a+48>>2]=0;L[a+52>>2]=0;b=L[a+36>>2];if(!(b?!b|!M[a+40|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+36>>2]=0;J[a+40|0]=1;L[a+28>>2]=0;L[a+32>>2]=0;b=L[a+16>>2];if(!(b?!b|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+16>>2]=0;J[a+20|0]=1;L[a+8>>2]=0;L[a+12>>2]=0;return a|0}function yc(a,b){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;d=L[a+16>>2];c=L[b+16>>2];if((d|0)!=(c|0)){return d-c|0}if(!d){return 0}n=d;e=L[b+8>>2];f=L[a+4>>2];i=L[b+12>>2];k=L[a>>2];j=mI(i,0,k,0);d=ga;g=f;c=0;f=mI(i,0,f,c);h=d+f|0;d=ga+c|0;l=e;i=0;e=mI(e,i,g,c);c=f>>>0>h>>>0?d+1|0:d;f=ga;g=f+h|0;d=g;f=f>>>0>d>>>0?c+1|0:c;c=0;g=e;e=e+j|0;j=g>>>0>e>>>0?c+1|0:c;g=j+d|0;d=f;d=g>>>0>>0?d+1|0:d;h=g;j=0;f=mI(k,m,l,i);i=j+f|0;c=ga+e|0;c=f>>>0>i>>>0?c+1|0:c;g=c;e=(e|0)==(c|0)&i>>>0>>0|c>>>0>>0;c=d;d=e+h|0;c=d>>>0>>0?c+1|0:c;j=d;k=c;e=L[b>>2];d=L[b+4>>2];b=L[a+8>>2];a=L[a+12>>2];c=0;l=b;f=mI(d,c,b,0);b=ga;h=a;a=mI(d,c,a,0);b=b+a|0;d=ga;d=a>>>0>b>>>0?d+1|0:d;a=mI(e,0,h,c);c=d;d=b;b=ga;h=d+b|0;d=h;b=b>>>0>d>>>0?c+1|0:c;c=0;h=a;a=a+f|0;f=h>>>0>a>>>0?c+1|0:c;h=f+d|0;d=b;d=f>>>0>h>>>0?d+1|0:d;f=0;e=mI(e,m,l,m);b=f+e|0;c=ga+a|0;c=b>>>0>>0?c+1|0:c;e=c;a=(a|0)==(c|0)&b>>>0>>0|a>>>0>c>>>0;c=d;d=a;a=a+h|0;c=d>>>0>a>>>0?c+1|0:c;d=-1;a:{if((c|0)==(k|0)&a>>>0>j>>>0|c>>>0>k>>>0){break a}d=1;if((c|0)==(k|0)&a>>>0>>0|c>>>0>>0){break a}d=-1;if((e|0)==(g|0)&b>>>0>i>>>0|e>>>0>g>>>0){break a}d=(e|0)==(g|0)&b>>>0>>0|e>>>0>>0}return R(n,d)}function Gy(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;if(Wa(a,L[b+8>>2],e)){if(!(L[b+28>>2]==1|L[b+4>>2]!=(c|0))){L[b+28>>2]=d}return}a:{if(Wa(a,L[b>>2],e)){if(!(L[b+16>>2]!=(c|0)&L[b+20>>2]!=(c|0))){if((d|0)!=1){break a}L[b+32>>2]=1;return}L[b+32>>2]=d;if(L[b+44>>2]!=4){f=a+16|0;h=f+(L[a+12>>2]<<3)|0;d=0;b:{c:{while(1){d:{if(f>>>0>=h>>>0){break d}K[b+52>>1]=0;Vf(f,b,c,c,1,e);if(M[b+54|0]){break d}e:{if(!M[b+53|0]){break e}if(M[b+52|0]){d=1;if(L[b+24>>2]==1){break c}g=1;if(M[a+8|0]&2){break e}break c}g=1;if(!(J[a+8|0]&1)){break c}}f=f+8|0;continue}break}a=4;if(!g){break b}}a=3}L[b+44>>2]=a;if(d&1){break a}}L[b+20>>2]=c;L[b+40>>2]=L[b+40>>2]+1;if(L[b+36>>2]!=1|L[b+24>>2]!=2){break a}J[b+54|0]=1;return}g=L[a+12>>2];h=a+16|0;le(h,b,c,d,e);f=a+24|0;g=h+(g<<3)|0;if(f>>>0>=g>>>0){break a}a=L[a+8>>2];if(!(!(a&2)&L[b+36>>2]!=1)){while(1){if(M[b+54|0]){break a}le(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break}break a}if(!(a&1)){while(1){if(M[b+54|0]|L[b+36>>2]==1){break a}le(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break a}}while(1){if(M[b+54|0]|L[b+36>>2]==1&L[b+24>>2]==1){break a}le(f,b,c,d,e);f=f+8|0;if(g>>>0>f>>>0){continue}break}}}function fg(a,b,c,d){var e=0,f=0,g=0;e=fa-128|0;fa=e;L[e+112>>2]=16;L[e+116>>2]=981668463;L[e+108>>2]=b;L[e+104>>2]=c;L[e+100>>2]=1;b=e- -64|0;L[b>>2]=0;J[e+68|0]=1;J[e+96|0]=1;L[e+56>>2]=0;L[e+60>>2]=0;L[e+92>>2]=0;L[e+84>>2]=0;L[e+88>>2]=0;L[e+72>>2]=0;L[e+76>>2]=0;L[e+48>>2]=0;J[e+44|0]=1;J[e+40|0]=1;L[e+36>>2]=0;L[e+28>>2]=0;L[e+32>>2]=0;L[e+16>>2]=0;J[e+20|0]=1;L[e+8>>2]=0;L[e+12>>2]=0;L[e+120>>2]=c;ak(e+4|0,e+100|0,e+44|0);L[8513]=L[8513]+1;a=Ac(ha[L[6798]](1252,16)|0,a,L[e+48>>2],L[b>>2],0);if(L[e+72>>2]>0){while(1){f=L[e+92>>2]+R(g,12)|0;b=L[f+8>>2];c=L[f>>2];f=L[f+4>>2];if((c|0)<(f|0)){Ha(a,c,f,0,0)}if((b|0)>(f|0)){Ha(a,f,b,0,0)}if((b|0)<(c|0)){Ha(a,b,c,0,0)}pb(a,c,f,b,0);g=g+1|0;if((g|0)>2]){continue}break}}$j(e+44|0);if(d){yk(a)}b=L[e+36>>2];if(!(b?!b|!M[e+40|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[e+36>>2]=0;J[e+40|0]=1;L[e+28>>2]=0;L[e+32>>2]=0;b=L[e+16>>2];if(!(b?!b|!M[e+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[e+92>>2];if(!(b?!b|!M[e+96|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[e+92>>2]=0;J[e+96|0]=1;L[e+84>>2]=0;L[e+88>>2]=0;b=L[e+64>>2];if(!(b?!b|!M[e+68|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}fa=e+128|0;return a}function AE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=fa-80|0;fa=e;a:{if((d|0)<=0){break a}if(d>>>0>=8){j=d&-8;while(1){f=i<<4;L[(f+c|0)+12>>2]=-581039253;L[((f|16)+c|0)+12>>2]=-581039253;L[((f|32)+c|0)+12>>2]=-581039253;L[((f|48)+c|0)+12>>2]=-581039253;L[((f|64)+c|0)+12>>2]=-581039253;L[((f|80)+c|0)+12>>2]=-581039253;L[((f|96)+c|0)+12>>2]=-581039253;L[((f|112)+c|0)+12>>2]=-581039253;i=i+8|0;g=g+8|0;if((j|0)!=(g|0)){continue}break}}g=d&7;if(g){while(1){L[((i<<4)+c|0)+12>>2]=-581039253;i=i+1|0;h=h+1|0;if((g|0)!=(h|0)){continue}break}}if((d|0)<=0){break a}f=e- -64|0;i=0;while(1){L[e+40>>2]=14628;L[e+52>>2]=0;L[e+56>>2]=0;L[e+44>>2]=0;L[e+48>>2]=0;L[e+60>>2]=-581039253;g=i<<4;j=g+b|0;h=L[j+12>>2];L[f+8>>2]=L[j+8>>2];L[f+12>>2]=h;h=L[j+4>>2];L[f>>2]=L[j>>2];L[f+4>>2]=h;L[e+32>>2]=1566444395;L[e+36>>2]=0;L[e+24>>2]=1566444395;L[e+28>>2]=1566444395;h=L[a+92>>2];L[e+16>>2]=-581039253;L[e+20>>2]=0;L[e+8>>2]=-581039253;L[e+12>>2]=-581039253;ha[L[L[h>>2]+8>>2]](h,e+40|0,e+8|0,e+24|0);h=L[e+56>>2];g=c+g|0;L[g+8>>2]=L[e+52>>2];L[g+12>>2]=h;h=L[e+48>>2];L[g>>2]=L[e+44>>2];L[g+4>>2]=h;i=i+1|0;if((i|0)!=(d|0)){continue}break}}fa=e+80|0}function KA(a,b,c,d){a=a|0;b=S(b);c=c|0;d=S(d);var e=0,f=0,g=0,h=0,i=S(0);e=fa-16|0;fa=e;xc(L[8515]);$f(34064);L[8517]=L[8517]+1;f=L[8520];L[8520]=f+1;if(!f){xc(e);f=L[8515];h=L[e>>2]-L[f>>2]|0;L[8519]=(L[e+8>>2]-L[f+8>>2]|0)+R(h,1e6)}L[8525]=0;xc(e);f=L[8515];h=L[e>>2]-L[f>>2]|0;L[8526]=(L[e+8>>2]-L[f+8>>2]|0)+R(h,1e6);fa=e+16|0;wa(3069);a:{if(c){P[a+268>>2]=d;b=S(P[a+264>>2]+b);P[a+264>>2]=b;if(!(b>=d)){break a}i=b;b=S(b/d);b:{if(S(T(b))>2]=i-S(S(g|0)*d);break a}L[a+268>>2]=0;P[a+264>>2]=M[a+300|0]?S(0):b;d=b;g=!(S(T(b))>2]+20>>2]](a)|0){e=ha[L[L[a>>2]+20>>2]](a)|0;J[33160]=ha[L[L[e>>2]+48>>2]](e)>>>4&1}c:{if(g){e=(c|0)>(g|0)?g:c;ha[L[L[a>>2]+164>>2]](a,S(d*S(e|0)));ha[L[L[a>>2]+168>>2]](a);if((e|0)<=0){break c}if((e|0)!=1){f=e&-2;c=0;while(1){ha[L[L[a>>2]+160>>2]](a,d);ha[L[L[a>>2]+80>>2]](a);ha[L[L[a>>2]+160>>2]](a,d);ha[L[L[a>>2]+80>>2]](a);c=c+2|0;if((f|0)!=(c|0)){continue}break}}if(!(e&1)){break c}ha[L[L[a>>2]+160>>2]](a,d);ha[L[L[a>>2]+80>>2]](a);break c}ha[L[L[a>>2]+80>>2]](a)}ha[L[L[a>>2]+120>>2]](a);L[8525]=L[8525]+1;va();return g|0}function tG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a=L[b>>2];e=ha[L[L[a>>2]+56>>2]](a,48)|0;L[e>>2]=8684;L[e+4>>2]=L[b>>2];L[e>>2]=8712;L[e>>2]=9916;J[e+28|0]=1;L[e+24>>2]=0;L[e+16>>2]=0;L[e+20>>2]=0;a=L[b+4>>2];J[e+36|0]=0;L[e+32>>2]=a;L[8513]=L[8513]+1;a=ha[L[6798]](68,16)|0;J[a+24|0]=0;J[a+20|0]=1;L[a>>2]=11520;L[a+16>>2]=0;J[a+44|0]=1;L[a+8>>2]=0;L[a+12>>2]=0;L[a+40>>2]=0;J[a- -64|0]=1;L[a+32>>2]=0;L[a+36>>2]=0;L[a+60>>2]=0;L[a+52>>2]=0;L[a+56>>2]=0;L[8513]=L[8513]+1;b=ha[L[6798]](24,16)|0;h=L[a+8>>2];a:{if((h|0)<=0){break a}if((h|0)!=1){l=h&-2;while(1){f=R(g,12);i=f+L[a+16>>2]|0;j=L[i+4>>2];f=b+f|0;L[f>>2]=L[i>>2];L[f+4>>2]=j;L[f+8>>2]=L[i+8>>2];f=R(g|1,12);i=f+L[a+16>>2]|0;j=L[i+4>>2];f=b+f|0;L[f>>2]=L[i>>2];L[f+4>>2]=j;L[f+8>>2]=L[i+8>>2];g=g+2|0;k=k+2|0;if((l|0)!=(k|0)){continue}break}}if(!(h&1)){break a}h=R(g,12);g=h+L[a+16>>2]|0;i=L[g+4>>2];h=b+h|0;L[h>>2]=L[g>>2];L[h+4>>2]=i;L[h+8>>2]=L[g+8>>2]}g=L[a+16>>2];if(!(g?!g|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](g)}L[a+16>>2]=b;J[a+20|0]=1;L[a+12>>2]=2;dh(a);L[e+8>>2]=a;L[e+40>>2]=L[L[c+4>>2]+68>>2];L[e+44>>2]=L[L[d+4>>2]+68>>2];return e|0}function ys(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=fa-16|0;fa=e;L[e+12>>2]=a;f=sa(284);a=L[e+12>>2];c=fa-16|0;fa=c;L[c+12>>2]=f;L[c+8>>2]=a;d=fa-16|0;fa=d;a=L[c+12>>2];L[d+12>>2]=a;b=L[d+12>>2];L[(fa-16|0)+12>>2]=b;L[(fa-16|0)+12>>2]=b+16;L[(fa-16|0)+12>>2]=b+36;L[(fa-16|0)+12>>2]=b+52;L[(fa-16|0)+12>>2]=b+68;fa=d+16|0;Pb(a+92|0);L[(fa-16|0)+12>>2]=a+156;L[(fa-16|0)+12>>2]=a+172;L[(fa-16|0)+12>>2]=a+188;P[a+204>>2]=P[L[c+8>>2]+48>>2];P[a+208>>2]=P[L[c+8>>2]+52>>2];P[a+212>>2]=P[L[c+8>>2]+56>>2];P[a+216>>2]=P[L[c+8>>2]+60>>2];P[a+220>>2]=P[L[c+8>>2]+64>>2];P[a+224>>2]=P[L[c+8>>2]+68>>2];b=L[c+8>>2];d=L[b+4>>2];L[a+156>>2]=L[b>>2];L[a+160>>2]=d;d=L[b+12>>2];L[a+164>>2]=L[b+8>>2];L[a+168>>2]=d;b=L[c+8>>2];d=L[b+20>>2];L[a+172>>2]=L[b+16>>2];L[a+176>>2]=d;d=L[b+28>>2];L[a+180>>2]=L[b+24>>2];L[a+184>>2]=d;b=L[c+8>>2];d=L[b+36>>2];L[a+188>>2]=L[b+32>>2];L[a+192>>2]=d;d=L[b+44>>2];L[a+196>>2]=L[b+40>>2];L[a+200>>2]=d;P[a+228>>2]=P[L[c+8>>2]+72>>2];P[a+232>>2]=0;P[a+252>>2]=0;P[a+236>>2]=0;P[a+240>>2]=0;P[a+256>>2]=0;P[a+244>>2]=.10000000149011612;J[a+260|0]=J[L[c+8>>2]+80|0]&1;P[a+248>>2]=P[L[c+8>>2]+76>>2];fa=c+16|0;fa=e+16|0;return f|0}function uk(a,b,c,d,e,f){var g=S(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=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);n=S(-1);o=P[b+8>>2];p=P[d>>2];g=P[c>>2];k=S(p-g);v=P[e+4>>2];l=P[c+4>>2];m=S(v-l);w=P[e>>2];h=S(w-g);r=P[d+4>>2];i=S(r-l);s=S(S(k*m)-S(h*i));j=P[b>>2];t=i;x=P[e+8>>2];i=P[c+8>>2];q=S(x-i);y=P[d+8>>2];u=S(y-i);m=S(S(t*q)-S(m*u));t=P[b+4>>2];k=S(S(u*h)-S(q*k));h=S(S(o*s)+S(S(j*m)+S(t*k)));a:{if(S(T(h))>2];u=P[a>>2];z=P[a+4>>2];n=S(S(-S(S(S(q*s)+S(S(u*m)+S(k*z)))-S(S(i*s)+S(S(g*m)+S(l*k)))))/h);b:{if(!(n>S(11920928955078125e-22))|!(f>n)){break b}j=S(u+S(j*n));f=S(g-j);h=S(z+S(t*n));g=S(r-h);p=S(p-j);l=S(l-h);r=S(q+S(o*n));o=S(y-r);i=S(i-r);if(!(S(S(s*S(S(f*g)-S(p*l)))+S(S(m*S(S(l*o)-S(g*i)))+S(k*S(S(i*p)-S(o*f)))))>S(-11920928955078125e-22))){break b}h=S(v-h);j=S(w-j);q=S(s*S(S(p*h)-S(j*g)));t=g;g=S(x-r);if(!(S(q+S(S(m*S(S(t*g)-S(h*o)))+S(k*S(S(o*j)-S(g*p)))))>S(-11920928955078125e-22))){break b}if(S(S(s*S(S(j*l)-S(f*h)))+S(S(m*S(S(h*i)-S(l*g)))+S(k*S(S(g*f)-S(i*j)))))>S(-11920928955078125e-22)){break a}}n=S(-1)}return n}function zB(a,b,c){a=a|0;b=b|0;c=c|0;cc(a,b,c);P[b+52>>2]=P[a+48>>2];P[b+56>>2]=P[a+52>>2];P[b+60>>2]=P[a+56>>2];P[b- -64>>2]=P[a+60>>2];P[b+68>>2]=P[a- -64>>2];P[b+72>>2]=P[a+68>>2];P[b+76>>2]=P[a+72>>2];P[b+80>>2]=P[a+76>>2];P[b+84>>2]=P[a+80>>2];P[b+88>>2]=P[a+84>>2];P[b+92>>2]=P[a+88>>2];P[b+96>>2]=P[a+92>>2];P[b+100>>2]=P[a+96>>2];P[b+104>>2]=P[a+100>>2];P[b+108>>2]=P[a+104>>2];P[b+112>>2]=P[a+108>>2];P[b+116>>2]=P[a+112>>2];P[b+120>>2]=P[a+116>>2];P[b+124>>2]=P[a+120>>2];P[b+128>>2]=P[a+124>>2];P[b+132>>2]=P[a+128>>2];P[b+136>>2]=P[a+132>>2];P[b+140>>2]=P[a+136>>2];P[b+144>>2]=P[a+140>>2];P[b+148>>2]=P[a+144>>2];P[b+152>>2]=P[a+148>>2];P[b+156>>2]=P[a+152>>2];P[b+160>>2]=P[a+156>>2];P[b+164>>2]=P[a+160>>2];P[b+168>>2]=P[a+164>>2];P[b+172>>2]=P[a+168>>2];P[b+176>>2]=P[a+172>>2];P[b+228>>2]=P[a+868>>2];P[b+212>>2]=P[a+872>>2];P[b+196>>2]=P[a+680>>2];P[b+180>>2]=P[a+696>>2];P[b+232>>2]=P[a+932>>2];P[b+216>>2]=P[a+936>>2];P[b+200>>2]=P[a+684>>2];P[b+184>>2]=P[a+700>>2];P[b+236>>2]=P[a+996>>2];P[b+220>>2]=P[a+1e3>>2];P[b+204>>2]=P[a+688>>2];P[b+188>>2]=P[a+704>>2];L[b+244>>2]=M[a+1300|0];L[b+248>>2]=M[a+1301|0];return 3404}function jc(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;while(1){q=c;g=L[a+12>>2]+((c+d|0)/2<<4)|0;r=L[g+8>>2];l=L[g+4>>2];k=L[g>>2];g=d;while(1){s=L[a+12>>2];while(1){e=-1;i=-1;f=(c<<4)+s|0;m=L[f>>2];if(m){i=L[m+12>>2]}e=k?L[k+12>>2]:e;j=-1;h=-1;n=L[f+4>>2];if(n){h=L[n+12>>2]}j=l?L[l+12>>2]:j;a:{b:{if((e|0)<(i|0)){break b}e=(k|0)==(m|0)&(h|0)>(j|0);if(!(e|(k|0)!=(m|0))){if((l|0)!=(n|0)){break a}if(O[f+8>>2]>r>>>0){break b}break a}if(!e){break a}}c=c+1|0;continue}break}while(1){t=g<<4;e=t+s|0;i=-1;j=-1;j=k?L[k+12>>2]:j;h=L[e>>2];if(h){i=L[h+12>>2]}u=-1;o=-1;o=l?L[l+12>>2]:o;p=L[e+4>>2];if(p){u=L[p+12>>2]}c:{d:{if((i|0)<(j|0)){break d}i=(h|0)==(k|0)&(u|0)<(o|0);if(!(i|(h|0)!=(k|0))){if((l|0)!=(p|0)){break c}if(O[e+8>>2]>>0){break d}break c}if(!i){break c}}g=g-1|0;continue}break}if((c|0)<=(g|0)){i=L[f+8>>2];j=L[f+12>>2];h=L[e+4>>2];L[f>>2]=L[e>>2];L[f+4>>2]=h;h=L[e+12>>2];L[f+8>>2]=L[e+8>>2];L[f+12>>2]=h;f=L[a+12>>2]+t|0;L[f+4>>2]=n;L[f+8>>2]=i;L[f+12>>2]=j;L[f>>2]=m;g=g-1|0;c=c+1|0}if((c|0)<=(g|0)){continue}break}if((g|0)>(q|0)){jc(a,b,q,g)}if((c|0)<(d|0)){continue}break}}function dD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=S(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=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);h=P[a+24>>2];f=P[a+40>>2];u=P[a+20>>2];v=P[a+36>>2];w=P[a+16>>2];x=P[a+32>>2];y=S(ha[L[L[a>>2]+48>>2]](a));z=S(ha[L[L[a>>2]+48>>2]](a));A=S(ha[L[L[a>>2]+48>>2]](a));B=P[b+52>>2];i=P[b+24>>2];j=P[b+20>>2];k=P[b+56>>2];l=P[a+20>>2];o=P[a+36>>2];m=P[a+24>>2];C=P[a+40>>2];e=P[b+40>>2];n=P[b+36>>2];D=P[b+48>>2];q=P[b+8>>2];r=P[b>>2];s=P[b+4>>2];t=P[b+16>>2];E=P[a+16>>2];F=P[a+32>>2];g=P[b+32>>2];L[c+12>>2]=0;p=k;k=S(S(C+m)*S(.5));m=S(S(F+E)*S(.5));l=S(S(o+l)*S(.5));o=S(p+S(S(e*k)+S(S(g*m)+S(n*l))));h=S(A+S(S(f-h)*S(.5)));p=S(h*S(T(e)));e=S(y+S(S(x-w)*S(.5)));f=S(e*S(T(g)));g=S(z+S(S(v-u)*S(.5)));n=S(p+S(f+S(g*S(T(n)))));P[c+8>>2]=o-n;f=S(B+S(S(k*i)+S(S(m*t)+S(l*j))));i=S(S(h*S(T(i)))+S(S(e*S(T(t)))+S(g*S(T(j)))));P[c+4>>2]=f-i;j=S(D+S(S(k*q)+S(S(m*r)+S(l*s))));e=S(S(h*S(T(q)))+S(S(e*S(T(r)))+S(g*S(T(s)))));P[c>>2]=j-e;L[d+12>>2]=0;P[d+8>>2]=n+o;P[d+4>>2]=i+f;P[d>>2]=e+j}function ez(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;ha[L[L[b>>2]+32>>2]](b);d=ha[L[L[b>>2]+16>>2]](b,104,1)|0;c=pa(L[d+8>>2],0,104);P[c+88>>2]=P[a+248>>2];P[c+92>>2]=P[a+252>>2];P[c+96>>2]=P[a+256>>2];P[c+100>>2]=P[a+260>>2];P[c>>2]=P[a+92>>2];P[c+4>>2]=P[a+96>>2];P[c+8>>2]=P[a+100>>2];P[c+12>>2]=P[a+104>>2];P[c+16>>2]=P[a+108>>2];P[c+20>>2]=P[a+116>>2];P[c+24>>2]=P[a+120>>2];P[c+28>>2]=P[a+124>>2];P[c+32>>2]=P[a+128>>2];P[c+36>>2]=P[a+132>>2];P[c+40>>2]=P[a+140>>2];P[c+44>>2]=P[a+144>>2];P[c+48>>2]=P[a+148>>2];P[c+52>>2]=P[a+152>>2];P[c+56>>2]=P[a+168>>2];P[c+60>>2]=P[a+172>>2];L[c+64>>2]=L[a+112>>2];L[c+68>>2]=L[a+156>>2];L[c+72>>2]=L[a+160>>2];L[c+76>>2]=L[a+164>>2];L[c+80>>2]=L[a+136>>2];ha[L[L[b>>2]+20>>2]](b,d,3661,1145853764,c);d=L[a+8>>2];if((d|0)>0){while(1){c=L[L[a+16>>2]+(e<<2)>>2];if(M[c+236|0]&8){d=(g=b,h=ha[L[L[c>>2]+16>>2]](c)|0,i=1,f=L[L[b>>2]+16>>2],ha[f](g|0,h|0,i|0)|0);i=b,h=d,g=ha[L[L[c>>2]+20>>2]](c,L[d+8>>2],b)|0,j=1497645651,k=c,f=L[L[b>>2]+20>>2],ha[f](i|0,h|0,g|0,j|0,k|0);d=L[a+8>>2]}e=e+1|0;if((e|0)<(d|0)){continue}break}}Lk(a,b);jh(a,b);ha[L[L[b>>2]+36>>2]](b)}function fG(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;L[7544]=L[7544]+1;k=L[a+40>>2];d=c<<16|b;d=(d<<15^-1)+d|0;d=R(d>>10^d,9);d=d>>6^d;d=(d<<11^-1)+d|0;i=k+((L[a+12>>2]-1&(d>>16^d))<<2)|0;d=L[i>>2];a:{if((d|0)==-1){break a}f=L[a+60>>2];g=L[a+16>>2];e=d;while(1){j=g+R(e,12)|0;if(!(L[j>>2]==(b|0)&L[j+4>>2]==(c|0))){e=L[(e<<2)+f>>2];if((e|0)!=-1){continue}break a}break}l=L[(g+R(e,12)|0)+8>>2];b:{c:{if((d|0)==(e|0)){break c}while(1){b=d;d=L[(b<<2)+f>>2];if((e|0)!=(d|0)){continue}break}if((b|0)==-1){break c}L[(b<<2)+f>>2]=L[(e<<2)+f>>2];break b}L[i>>2]=L[(e<<2)+f>>2]}h=L[a+8>>2]-1|0;if((h|0)!=(e|0)){d:{e:{g=g+R(h,12)|0;b=L[g+4>>2]<<16|L[g>>2];b=(b<<15^-1)+b|0;b=R(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;i=L[a+12>>2]-1&(b>>16^b);d=k+(i<<2)|0;b=L[d>>2];if((h|0)==(b|0)){break e}while(1){c=b;b=L[(b<<2)+f>>2];if((h|0)!=(b|0)){continue}break}if((c|0)==-1){break e}L[(c<<2)+f>>2]=L[(h<<2)+f>>2];break d}L[d>>2]=L[(h<<2)+f>>2]}b=L[g+4>>2];L[j>>2]=L[g>>2];L[j+4>>2]=b;L[j+8>>2]=L[g+8>>2];b=L[a+40>>2]+(i<<2)|0;L[L[a+60>>2]+(e<<2)>>2]=L[b>>2];L[b>>2]=e;e=L[a+8>>2]-1|0}L[a+8>>2]=e}return l|0}function Vl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=fa-48|0;fa=c;d=L[b+4>>2];e=L[a+48>>2];L[e+4>>2]=L[b>>2];L[e+8>>2]=d;d=L[b+12>>2];L[e+12>>2]=L[b+8>>2];L[e+16>>2]=d;L[c+44>>2]=0;L[c+36>>2]=0;L[c+40>>2]=0;L[c+32>>2]=1065353216;e=c+16|0;b=c+32|0;ha[L[L[a>>2]+68>>2]](e,a,b);P[a+32>>2]=P[c+16>>2]+P[a+12>>2];L[c+32>>2]=-1082130432;ha[L[L[a>>2]+68>>2]](c,a,b);d=L[c+12>>2];L[c+24>>2]=L[c+8>>2];L[c+28>>2]=d;d=L[c+4>>2];L[c+16>>2]=L[c>>2];L[c+20>>2]=d;P[a+16>>2]=P[c+16>>2]-P[a+12>>2];L[c+40>>2]=0;L[c+44>>2]=0;L[c+32>>2]=0;L[c+36>>2]=0;L[c+36>>2]=1065353216;ha[L[L[a>>2]+68>>2]](e,a,b);P[a+36>>2]=P[c+20>>2]+P[a+12>>2];L[c+36>>2]=-1082130432;ha[L[L[a>>2]+68>>2]](c,a,b);d=L[c+12>>2];L[c+24>>2]=L[c+8>>2];L[c+28>>2]=d;d=L[c+4>>2];L[c+16>>2]=L[c>>2];L[c+20>>2]=d;P[a+20>>2]=P[c+20>>2]-P[a+12>>2];L[c+40>>2]=0;L[c+44>>2]=0;L[c+40>>2]=1065353216;L[c+32>>2]=0;L[c+36>>2]=0;ha[L[L[a>>2]+68>>2]](e,a,b);P[a+40>>2]=P[c+24>>2]+P[a+12>>2];L[c+40>>2]=-1082130432;ha[L[L[a>>2]+68>>2]](c,a,b);b=L[c+12>>2];L[c+24>>2]=L[c+8>>2];L[c+28>>2]=b;b=L[c+4>>2];L[c+16>>2]=L[c>>2];L[c+20>>2]=b;P[a+24>>2]=P[c+24>>2]-P[a+12>>2];fa=c+48|0}function zF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=0,o=S(0),p=0,q=0,r=0,s=S(0);f=fa-16|0;fa=f;e=(L[a+52>>2]+2|0)%3|0;if((d|0)>0){p=a+28|0;o=P[p+(e<<2)>>2];while(1){L[f+8>>2]=0;L[f+12>>2]=0;L[f>>2]=0;L[f+4>>2]=0;e=L[a+52>>2]<<2;P[e+f>>2]=P[e+p>>2];r=q<<4;e=r+b|0;g=P[e+8>>2];h=P[e>>2];j=P[e+4>>2];i=P[f>>2];k=P[f+4>>2];s=S(-0xde0b6b000000000);m=S(P[f+8>>2]+S(o*g));g=S(ha[L[L[a>>2]+48>>2]](a));l=P[e+8>>2];m=S(m-S(g*l));i=S(i+S(o*h));h=P[e>>2];i=S(i-S(g*h));k=S(k+S(o*j));j=P[e+4>>2];k=S(k-S(g*j));g=S(S(l*m)+S(S(h*i)+S(j*k)));if(g>S(-0xde0b6b000000000)){n=c+r|0;L[n+12>>2]=0;P[n+8>>2]=m;P[n+4>>2]=k;P[n>>2]=i;l=P[e+8>>2];j=P[e+4>>2];h=P[e>>2];s=g}L[f+8>>2]=0;L[f+12>>2]=0;L[f>>2]=0;L[f+4>>2]=0;n=L[a+52>>2]<<2;P[n+f>>2]=-P[n+p>>2];m=P[f+4>>2];i=P[f>>2];l=S(P[f+8>>2]+S(o*l));g=S(ha[L[L[a>>2]+48>>2]](a));k=P[e+8>>2];l=S(l-S(g*k));h=S(i+S(o*h));i=P[e>>2];h=S(h-S(g*i));m=S(m+S(o*j));j=P[e+4>>2];g=S(m-S(g*j));if(S(S(k*l)+S(S(i*h)+S(j*g)))>s){e=c+r|0;L[e+12>>2]=0;P[e+8>>2]=l;P[e+4>>2]=g;P[e>>2]=h}q=q+1|0;if((q|0)!=(d|0)){continue}break}}fa=f+16|0}function qa(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){da(a|0,b|0,c|0);return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if(!(a&3)){c=a;break b}if(!c){c=a;break b}c=a;while(1){J[c|0]=M[b|0];b=b+1|0;c=c+1|0;if(!(c&3)){break b}if(c>>>0>>0){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+-64|0;if(f>>>0>>0){break c}while(1){L[c>>2]=L[b>>2];L[c+4>>2]=L[b+4>>2];L[c+8>>2]=L[b+8>>2];L[c+12>>2]=L[b+12>>2];L[c+16>>2]=L[b+16>>2];L[c+20>>2]=L[b+20>>2];L[c+24>>2]=L[b+24>>2];L[c+28>>2]=L[b+28>>2];L[c+32>>2]=L[b+32>>2];L[c+36>>2]=L[b+36>>2];L[c+40>>2]=L[b+40>>2];L[c+44>>2]=L[b+44>>2];L[c+48>>2]=L[b+48>>2];L[c+52>>2]=L[b+52>>2];L[c+56>>2]=L[b+56>>2];L[c+60>>2]=L[b+60>>2];b=b- -64|0;c=c- -64|0;if(f>>>0>=c>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){L[c>>2]=L[b>>2];b=b+4|0;c=c+4|0;if(d>>>0>c>>>0){continue}break}break a}if(e>>>0<4){c=a;break a}d=e-4|0;if(d>>>0>>0){c=a;break a}c=a;while(1){J[c|0]=M[b|0];J[c+1|0]=M[b+1|0];J[c+2|0]=M[b+2|0];J[c+3|0]=M[b+3|0];b=b+4|0;c=c+4|0;if(d>>>0>=c>>>0){continue}break}}if(c>>>0>>0){while(1){J[c|0]=M[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function Wo(a,b,c){a=a|0;b=b|0;c=S(c);var d=0,e=0,f=0,g=0,h=0;d=fa-288|0;fa=d;L[d+284>>2]=a;L[d+280>>2]=b;P[d+276>>2]=c;a=L[d+284>>2];b=fa-16|0;L[b+12>>2]=L[d+280>>2];f=L[b+12>>2]+48|0;e=L[f+12>>2];L[d+264>>2]=L[f+8>>2];L[d+268>>2]=e;e=L[f+4>>2];L[d+256>>2]=L[f>>2];L[d+260>>2]=e;L[b+12>>2]=L[d+280>>2];b=L[b+12>>2];P[d+204>>2]=0;P[d+200>>2]=0;e=d+208|0;f=d+276|0;la(e,f,d+204|0,d+200|0);g=d+224|0;ua(g,b,e);e=d+240|0;b=d+256|0;ta(e,b,g);P[d+180>>2]=.699999988079071;P[d+176>>2]=0;P[d+172>>2]=0;g=d+184|0;la(g,d+180|0,d+176|0,d+172|0);ha[L[L[a>>2]+8>>2]](a,b,e,g);e=fa-16|0;L[e+12>>2]=L[d+280>>2];e=L[e+12>>2];P[d+120>>2]=0;P[d+116>>2]=0;g=d+124|0;la(g,d+120|0,f,d+116|0);h=d+140|0;ua(h,e,g);e=d+156|0;ta(e,b,h);P[d+96>>2]=0;P[d+92>>2]=.699999988079071;P[d+88>>2]=0;g=d+100|0;la(g,d+96|0,d+92|0,d+88|0);ha[L[L[a>>2]+8>>2]](a,b,e,g);e=fa-16|0;L[e+12>>2]=L[d+280>>2];e=L[e+12>>2];P[d+36>>2]=0;P[d+32>>2]=0;g=d+40|0;la(g,d+36|0,d+32|0,f);f=d+56|0;ua(f,e,g);e=d+72|0;ta(e,b,f);P[d+12>>2]=0;P[d+8>>2]=0;P[d+4>>2]=.699999988079071;f=d+16|0;la(f,d+12|0,d+8|0,d+4|0);ha[L[L[a>>2]+8>>2]](a,b,e,f);fa=d+288|0}function AF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=S(0),f=S(0),g=S(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);d=fa-16|0;fa=d;L[a>>2]=0;L[a+4>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0;e=P[c+8>>2];h=P[c>>2];f=P[c+4>>2];g=S(S(e*e)+S(S(h*h)+S(f*f)));a:{if(g>2];f=P[c+((k+2|0)%3<<2)>>2];L[d+8>>2]=0;L[d+12>>2]=0;L[d>>2]=0;L[d+4>>2]=0;k=k<<2;P[k+d>>2]=P[c+k>>2];m=P[d+4>>2];n=P[d>>2];h=S(-0xde0b6b000000000);p=S(j*f);i=S(p+P[d+8>>2]);l=S(ha[L[L[b>>2]+48>>2]](b));o=S(i-S(j*l));q=S(e*f);m=S(S(m+q)-S(e*l));i=n;n=S(g*f);l=S(S(i+n)-S(g*l));f=S(S(j*o)+S(S(g*l)+S(e*m)));if(f>S(-0xde0b6b000000000)){L[a+12>>2]=0;P[a+8>>2]=o;P[a+4>>2]=m;P[a>>2]=l;h=f}L[d+8>>2]=0;L[d+12>>2]=0;L[d>>2]=0;L[d+4>>2]=0;k=L[b+52>>2]<<2;P[k+d>>2]=-P[c+k>>2];f=P[d+4>>2];l=P[d>>2];r=h;m=j;i=S(p+P[d+8>>2]);h=S(ha[L[L[b>>2]+48>>2]](b));j=S(i-S(j*h));o=g;g=S(S(n+l)-S(g*h));i=e;e=S(S(q+f)-S(e*h));if(r>2]=0;P[a+8>>2]=j;P[a+4>>2]=e;P[a>>2]=g}fa=d+16|0}function il(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=S(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;j=fa-80|0;fa=j;L[j+52>>2]=0;L[j+44>>2]=0;L[j+48>>2]=1045220557;L[j+76>>2]=0;s=b+4|0;t=a+756|0;u=a+772|0;v=a+740|0;w=a+1096|0;x=a+1080|0;y=a+1064|0;z=a+792|0;A=a+808|0;B=a+696|0;C=a+824|0;D=a+840|0;p=a+680|0;while(1){k=M[(m+p|0)+108|0];l=m<<2;q=p+l|0;r=L[q+176>>2];a:{if(!r){o=k;k=1;if(!o){break a}}L[j+72>>2]=r;L[j+56>>2]=0;P[j+68>>2]=P[l+D>>2];P[j+64>>2]=P[l+C>>2];n=P[a+732>>2];J[j+60|0]=k;P[j+36>>2]=n;P[j+20>>2]=P[l+B>>2];P[j+40>>2]=P[a+728>>2];n=P[q>>2];L[j+32>>2]=0;P[j+16>>2]=n;P[j+28>>2]=P[l+A>>2];P[j+24>>2]=P[l+z>>2];P[j>>2]=P[l+y>>2];P[j+4>>2]=P[l+x>>2];n=P[l+w>>2];L[j+12>>2]=0;P[j+8>>2]=n;k=L[a+1304>>2]>>R(m,3);P[j+44>>2]=P[(k&1?l+v|0:L[b+32>>2])>>2];P[j+52>>2]=P[(k&2?l+u|0:L[b+32>>2])>>2];P[j+48>>2]=P[(k&4?l+t|0:s)>>2];o=j+16|0;k=0;b:{if(!M[a+1301|0]){break b}k=1;if(!L[(((m>>>0>1?-2:1)+m<<6)+a|0)+924>>2]){break b}k=!L[(((m?m-1|0:2)<<6)+a|0)+924>>2]}c=Ce(a,o,d,e,f,g,h,i,b,c,j,0,k)+c|0}m=m+1|0;if((m|0)!=3){continue}break}fa=j+80|0;return c}function vk(a){var b=0,c=S(0),d=S(0),e=0,f=0,g=0,h=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=0,s=S(0),t=S(0),u=0,v=S(0),w=S(0);b=fa-32|0;fa=b;u=a+988|0;Gd(u);if(L[a+752>>2]>0){while(1){h=L[a+760>>2]+R(r,44)|0;k=L[h+16>>2];g=L[h+12>>2];f=L[h+8>>2];e=L[f+12>>2];L[b+16>>2]=L[f+8>>2];L[b+20>>2]=e;e=L[f+20>>2];L[b+24>>2]=L[f+16>>2];L[b+28>>2]=e;e=L[f+20>>2];L[b+8>>2]=L[f+16>>2];L[b+12>>2]=e;e=L[f+12>>2];L[b>>2]=L[f+8>>2];L[b+4>>2]=e;l=P[b+4>>2];m=P[b>>2];d=P[g+8>>2];if(m>d){P[b>>2]=d;m=d}n=P[b+8>>2];s=P[b+28>>2];v=P[b+24>>2];w=P[b+20>>2];o=P[b+16>>2];t=P[b+12>>2];i=P[g+12>>2];if(i>2]=i;l=i}j=P[g+16>>2];if(j>2]=j;n=j}c=P[g+20>>2];if(c>2]=c;t=c}if(d>o){P[b+16>>2]=d;o=d}if(c>s){P[b+28>>2]=c;s=c}p=P[k+12>>2];g=p>2];e=d>2];c=P[k+20>>2];if(c>2]=c}if(c>s){P[b+28>>2]=c}P[b+4>>2]=g?p:l;P[b>>2]=e?d:m;P[b+8>>2]=n>q?q:n;c=j>v?j:v;P[b+24>>2]=(cw?i:w;P[b+20>>2]=(c>2]=(d>o?d:o)+S(0);L[h+40>>2]=Bb(u,b,h);r=r+1|0;if((r|0)>2]){continue}break}}fa=b+32|0}function LE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=S(0),i=S(0),j=0,k=0,l=S(0),m=S(0),n=S(0),o=0;L[d>>2]=2139095039;L[e>>2]=-8388609;o=L[a+96>>2];if((o|0)<=0){h=S(-34028234663852886e22)}else{while(1){k=L[a+104>>2]+(j<<4)|0;h=S(P[k+8>>2]*P[a+20>>2]);i=S(P[k>>2]*P[a+12>>2]);l=S(P[k+4>>2]*P[a+16>>2]);m=S(S(S(h*P[b+40>>2])+S(S(i*P[b+32>>2])+S(l*P[b+36>>2])))+P[b+56>>2]);n=S(S(S(h*P[b+8>>2])+S(S(i*P[b>>2])+S(l*P[b+4>>2])))+P[b+48>>2]);i=S(S(S(h*P[b+24>>2])+S(S(i*P[b+16>>2])+S(l*P[b+20>>2])))+P[b+52>>2]);h=S(S(m*P[c+8>>2])+S(S(n*P[c>>2])+S(i*P[c+4>>2])));if(h>2]){P[d>>2]=h;L[f+12>>2]=0;P[f+8>>2]=m;P[f+4>>2]=i;P[f>>2]=n}if(h>P[e>>2]){P[e>>2]=h;L[g+12>>2]=0;P[g+8>>2]=m;P[g+4>>2]=i;P[g>>2]=n}j=j+1|0;if((o|0)!=(j|0)){continue}break}h=P[e>>2]}i=P[d>>2];if(h>2]=h;P[e>>2]=i;b=L[f+12>>2];a=fa-16|0;L[a+8>>2]=L[f+8>>2];L[a+12>>2]=b;b=L[f+4>>2];L[a>>2]=L[f>>2];L[a+4>>2]=b;b=L[g+12>>2];L[f+8>>2]=L[g+8>>2];L[f+12>>2]=b;b=L[g+4>>2];L[f>>2]=L[g>>2];L[f+4>>2]=b;b=L[a+12>>2];L[g+8>>2]=L[a+8>>2];L[g+12>>2]=b;b=L[a+4>>2];L[g>>2]=L[a>>2];L[g+4>>2]=b}}function UB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=S(0),f=S(0),g=S(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=S(0);e=S(1);d=L[b>>2];a:{if((d|0)==L[a+80>>2]|M[d+204|0]&4){break a}b:{if(c){g=P[b+16>>2];h=P[b+12>>2];f=P[b+8>>2];break b}f=P[b+16>>2];i=P[b+8>>2];j=P[b+12>>2];g=S(S(P[d+44>>2]*f)+S(S(P[d+36>>2]*i)+S(j*P[d+40>>2])));h=S(S(P[d+28>>2]*f)+S(S(P[d+20>>2]*i)+S(j*P[d+24>>2])));f=S(S(P[d+12>>2]*f)+S(S(P[d+4>>2]*i)+S(P[d+8>>2]*j)))}if(P[a+100>>2]>S(S(P[a+92>>2]*g)+S(S(P[a+84>>2]*f)+S(h*P[a+88>>2])))){break a}e=P[b+40>>2];L[a+76>>2]=d;P[a+4>>2]=e;c:{if(c){c=L[b+12>>2];L[a+44>>2]=L[b+8>>2];L[a+48>>2]=c;c=L[b+20>>2];L[a+52>>2]=L[b+16>>2];L[a+56>>2]=c;break c}f=P[d+8>>2];i=P[d+12>>2];j=P[d+20>>2];k=P[d+24>>2];l=P[d+28>>2];m=P[d+36>>2];n=P[d+40>>2];e=P[b+12>>2];o=P[d+44>>2];g=P[b+16>>2];p=P[d+4>>2];h=P[b+8>>2];L[a+56>>2]=0;P[a+52>>2]=S(o*g)+S(S(m*h)+S(e*n));P[a+48>>2]=S(l*g)+S(S(j*h)+S(e*k));P[a+44>>2]=S(i*g)+S(S(p*h)+S(f*e))}c=L[b+28>>2];L[a+60>>2]=L[b+24>>2];L[a+64>>2]=c;c=L[b+36>>2];L[a+68>>2]=L[b+32>>2];L[a+72>>2]=c;e=P[b+40>>2]}return S(e)}function Bk(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;L[8513]=L[8513]+1;c=ha[L[6798]](20,16)|0;L[c>>2]=0;L[c+4>>2]=0;L[c+16>>2]=0;L[c+8>>2]=0;L[c+12>>2]=0;a:{if(L[a+872>>2]>0){b=L[L[a+880>>2]>>2];d=L[b+4>>2];L[c>>2]=L[b>>2];L[c+4>>2]=d;L[c+16>>2]=L[b+16>>2];d=L[b+12>>2];L[c+8>>2]=L[b+8>>2];L[c+12>>2]=d;break a}L[c>>2]=0;L[c+4>>2]=0;L[c+16>>2]=0;L[c+8>>2]=0;L[c+12>>2]=0}b=L[a+872>>2];b:{if((b|0)!=L[a+876>>2]){break b}h=b?b<<1:1;if((h|0)<=(b|0)){break b}if(h){L[8513]=L[8513]+1;f=ha[L[6798]](h<<2,16)|0;b=L[a+872>>2]}c:{if((b|0)<=0){break c}if(b>>>0>=4){i=b&-4;while(1){d=e<<2;L[d+f>>2]=L[d+L[a+880>>2]>>2];g=d|4;L[g+f>>2]=L[g+L[a+880>>2]>>2];g=d|8;L[g+f>>2]=L[g+L[a+880>>2]>>2];d=d|12;L[d+f>>2]=L[d+L[a+880>>2]>>2];e=e+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}d=b&3;if(!d){break c}while(1){i=e<<2;L[i+f>>2]=L[i+L[a+880>>2]>>2];e=e+1|0;k=k+1|0;if((d|0)!=(k|0)){continue}break}}e=L[a+880>>2];if(!(!e|!M[a+884|0])){if(e){L[8514]=L[8514]+1;ha[L[6799]](e)}b=L[a+872>>2]}L[a+880>>2]=f;J[a+884|0]=1;L[a+876>>2]=h}L[L[a+880>>2]+(b<<2)>>2]=c;L[a+872>>2]=b+1;return c}function HF(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;db(a,b,c);d=L[a+48>>2];ha[L[L[d>>2]+56>>2]](d,b+12|0,c)|0;P[b+52>>2]=P[a+12>>2];a:{b:{if(!L[a+52>>2]){break b}if(ha[L[L[c>>2]+52>>2]](c)&1){break b}d=ha[L[L[c>>2]+24>>2]](c,L[a+52>>2])|0;if(d){L[b+44>>2]=0;L[b+40>>2]=d;break a}d=ha[L[L[c>>2]+28>>2]](c,L[a+52>>2])|0;L[b+44>>2]=0;L[b+40>>2]=d;d=L[a+52>>2];d=(g=c,h=ha[L[L[d>>2]+12>>2]](d)|0,i=1,f=L[L[c>>2]+16>>2],ha[f](g|0,h|0,i|0)|0);e=L[a+52>>2];i=c,h=d,g=ha[L[L[e>>2]+16>>2]](e,L[d+8>>2],c)|0,j=1213612625,k=L[a+52>>2],f=L[L[c>>2]+20>>2],ha[f](i|0,h|0,g|0,j|0,k|0);break a}L[b+40>>2]=0;L[b+44>>2]=0}c:{if(!L[a+56>>2]){break c}if(ha[L[L[c>>2]+52>>2]](c)&2){break c}d=ha[L[L[c>>2]+24>>2]](c,L[a+56>>2])|0;if(d){L[b+48>>2]=d;return 3933}L[b+48>>2]=ha[L[L[c>>2]+28>>2]](c,L[a+56>>2]);b=L[a+56>>2];b=(k=c,j=ha[L[L[b>>2]+8>>2]](b)|0,g=1,f=L[L[c>>2]+16>>2],ha[f](k|0,j|0,g|0)|0);d=L[a+56>>2];g=c,j=b,k=ha[L[L[d>>2]+12>>2]](d,L[b+8>>2],c)|0,h=1346456916,i=L[a+56>>2],f=L[L[c>>2]+20>>2],ha[f](g|0,j|0,k|0,h|0,i|0);return 3933}L[b+48>>2]=0;return 3933}function gl(a,b,c,d,e,f){a=ub(a,4,b,c);L[a>>2]=19768;b=L[d+12>>2];L[a+560>>2]=L[d+8>>2];L[a+564>>2]=b;b=L[d+4>>2];L[a+552>>2]=L[d>>2];L[a+556>>2]=b;b=L[d+28>>2];L[a+576>>2]=L[d+24>>2];L[a+580>>2]=b;b=L[d+20>>2];L[a+568>>2]=L[d+16>>2];L[a+572>>2]=b;b=L[d+44>>2];L[a+592>>2]=L[d+40>>2];L[a+596>>2]=b;b=L[d+36>>2];L[a+584>>2]=L[d+32>>2];L[a+588>>2]=b;b=L[d+60>>2];L[a+608>>2]=L[d+56>>2];L[a+612>>2]=b;b=L[d+52>>2];L[a+600>>2]=L[d+48>>2];L[a+604>>2]=b;b=L[e+12>>2];L[a+624>>2]=L[e+8>>2];L[a+628>>2]=b;b=L[e+4>>2];L[a+616>>2]=L[e>>2];L[a+620>>2]=b;b=L[e+20>>2];L[a+632>>2]=L[e+16>>2];L[a+636>>2]=b;b=L[e+28>>2];L[a+640>>2]=L[e+24>>2];L[a+644>>2]=b;b=L[e+36>>2];L[a+648>>2]=L[e+32>>2];L[a+652>>2]=b;b=L[e+44>>2];L[a+656>>2]=L[e+40>>2];L[a+660>>2]=b;b=L[e+52>>2];L[a+664>>2]=L[e+48>>2];L[a+668>>2]=b;b=L[e+60>>2];L[a+672>>2]=L[e+56>>2];L[a+676>>2]=b;L[a+688>>2]=0;L[a+692>>2]=-1082130432;L[a+696>>2]=1063675494;L[a+700>>2]=1050253722;L[a+704>>2]=1065353216;L[a+708>>2]=0;L[a+712>>2]=0;J[a+716|0]=0;J[a+740|0]=f;L[a+748>>2]=0;L[a+736>>2]=16777216;P[a+732>>2]=f?S(-1):S(1)}function fC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=0,n=S(0);e=fa-672|0;fa=e;f=yb(e+568|0);L[f+4>>2]=1;L[f>>2]=2236;m=L[b+12>>2];g=f- -64|0;L[g>>2]=L[b+8>>2];L[g+4>>2]=m;g=L[b+4>>2];L[f+56>>2]=L[b>>2];L[f+60>>2]=g;g=L[b+28>>2];L[f+80>>2]=L[b+24>>2];L[f+84>>2]=g;g=L[b+20>>2];L[f+72>>2]=L[b+16>>2];L[f+76>>2]=g;g=L[b+44>>2];L[f+96>>2]=L[b+40>>2];L[f+100>>2]=g;g=L[b+36>>2];L[f+88>>2]=L[b+32>>2];L[f+92>>2]=g;P[f+44>>2]=P[a+204>>2];J[e+540|0]=0;L[e+516>>2]=953267991;L[e+204>>2]=18492;g=L[a+4>>2];b=e+180|0;L[b+20>>2]=0;L[b+16>>2]=f;L[b+12>>2]=g;L[b+8>>2]=e+204;L[b+4>>2]=e+208;L[b>>2]=18268;L[e+4>>2]=6864;L[e+168>>2]=1065353216;L[e+172>>2]=0;P[e+176>>2]=P[a+208>>2];g=b;b=a+136|0;a:{if(!Il(g,a+8|0,a+72|0,b,b,e+4|0)){break a}h=P[e+144>>2];i=P[e+136>>2];j=P[e+140>>2];k=S(S(h*h)+S(S(i*i)+S(j*j)));if(!(k>S(9999999747378752e-20))){break a}l=P[e+168>>2];if(!(l>2])){break a}n=h;h=S(S(1)/S(_(k)));P[e+144>>2]=n*h;P[e+140>>2]=j*h;P[e+136>>2]=i*h;S(ha[L[L[a>>2]+12>>2]](a,e+136|0,e+152|0,l,c,d))}Oa(f);fa=e+672|0}function oB(a,b,c){a=a|0;b=b|0;c=c|0;cc(a,b,c);P[b+52>>2]=P[a+552>>2];P[b+56>>2]=P[a+556>>2];P[b+60>>2]=P[a+560>>2];P[b- -64>>2]=P[a+564>>2];P[b+68>>2]=P[a+568>>2];P[b+72>>2]=P[a+572>>2];P[b+76>>2]=P[a+576>>2];P[b+80>>2]=P[a+580>>2];P[b+84>>2]=P[a+584>>2];P[b+88>>2]=P[a+588>>2];P[b+92>>2]=P[a+592>>2];P[b+96>>2]=P[a+596>>2];P[b+100>>2]=P[a+600>>2];P[b+104>>2]=P[a+604>>2];P[b+108>>2]=P[a+608>>2];P[b+112>>2]=P[a+612>>2];P[b+116>>2]=P[a+616>>2];P[b+120>>2]=P[a+620>>2];P[b+124>>2]=P[a+624>>2];P[b+128>>2]=P[a+628>>2];P[b+132>>2]=P[a+632>>2];P[b+136>>2]=P[a+636>>2];P[b+140>>2]=P[a+640>>2];P[b+144>>2]=P[a+644>>2];P[b+148>>2]=P[a+648>>2];P[b+152>>2]=P[a+652>>2];P[b+156>>2]=P[a+656>>2];P[b+160>>2]=P[a+660>>2];P[b+164>>2]=P[a+664>>2];P[b+168>>2]=P[a+668>>2];P[b+172>>2]=P[a+672>>2];P[b+176>>2]=P[a+676>>2];L[b+184>>2]=M[a+736|0];L[b+188>>2]=M[a+737|0];P[b+196>>2]=P[a+684>>2];P[b+192>>2]=P[a+680>>2];L[b+180>>2]=M[a+740|0];c=a+688|0;P[b+200>>2]=we(c);P[b+204>>2]=xe(c);P[b+208>>2]=P[a+696>>2];P[b+212>>2]=P[a+700>>2];P[b+216>>2]=P[a+704>>2];return 3556}function DA(a,b){a=a|0;b=S(b);var c=0,d=S(0),e=0,f=S(0),g=0,h=S(0);wa(3159);if(L[a+232>>2]>0){while(1){c=L[L[a+240>>2]+(g<<2)>>2];a:{if(!c){break a}b:{c:{d:{e=L[c+216>>2];switch(e-2|0){case 0:case 2:break c;default:break d}}e:{d=P[c+320>>2];f=S(d*d);d=P[c+312>>2];h=S(d*d);d=P[c+316>>2];f=S(f+S(h+S(d*d)));d=P[c+472>>2];if(!(f>2];f=S(d*d);d=P[c+328>>2];h=S(d*d);d=P[c+332>>2];f=S(f+S(h+S(d*d)));d=P[c+476>>2];if(!(f>2]=P[c+220>>2]+b;break b}L[c+220>>2]=0;if((L[c+216>>2]&-2)!=4){L[c+216>>2]=0}e=L[c+216>>2]}if((e|0)==4){break a}}f:{if(M[33160]){break f}d=P[6796];if(d==S(0)|!(d>2])&(e&-2)!=2){break f}if(M[c+204|0]&3){if((L[c+216>>2]&-2)!=4){L[c+216>>2]=2}break a}if((e|0)==1){if((L[c+216>>2]&-2)!=4){L[c+216>>2]=3}e=L[c+216>>2]}if((e|0)!=2){break a}L[c+328>>2]=0;L[c+332>>2]=0;L[c+312>>2]=0;L[c+316>>2]=0;L[c+336>>2]=0;L[c+340>>2]=0;L[c+320>>2]=0;L[c+324>>2]=0;L[c+260>>2]=L[c+260>>2]+2;break a}if((L[c+216>>2]&-2)!=4){L[c+216>>2]=1}}g=g+1|0;if((g|0)>2]){continue}break}}va()}function WD(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;db(a,b,c);P[b+28>>2]=P[a+28>>2];P[b+32>>2]=P[a+32>>2];P[b+36>>2]=P[a+36>>2];P[b+40>>2]=P[a+40>>2];P[b+12>>2]=P[a+12>>2];P[b+16>>2]=P[a+16>>2];P[b+20>>2]=P[a+20>>2];P[b+24>>2]=P[a+24>>2];P[b+44>>2]=P[a+44>>2];d=L[a+92>>2];if(d){f=ha[L[L[c>>2]+28>>2]](c,L[a+100>>2])|0;L[b+56>>2]=d;L[b+52>>2]=f;b=0;h=ha[L[L[c>>2]+16>>2]](c,20,d)|0;a:{if((d|0)<=0){f=L[a+100>>2];break a}g=L[a+120>>2];f=L[a+100>>2];a=L[h+8>>2];if((d|0)!=1){k=d&-2;while(1){e=(b<<4)+f|0;P[a>>2]=P[e>>2];P[a+4>>2]=P[e+4>>2];P[a+8>>2]=P[e+8>>2];P[a+12>>2]=P[e+12>>2];P[a+16>>2]=P[(b<<2)+g>>2];i=b|1;e=(i<<4)+f|0;P[a+20>>2]=P[e>>2];P[a+24>>2]=P[e+4>>2];P[a+28>>2]=P[e+8>>2];P[a+32>>2]=P[e+12>>2];P[a+36>>2]=P[(i<<2)+g>>2];a=a+40|0;b=b+2|0;j=j+2|0;if((k|0)!=(j|0)){continue}break}}if(!(d&1)){break a}d=(b<<4)+f|0;P[a>>2]=P[d>>2];P[a+4>>2]=P[d+4>>2];P[a+8>>2]=P[d+8>>2];P[a+12>>2]=P[d+12>>2];P[a+16>>2]=P[(b<<2)+g>>2]}ha[L[L[c>>2]+20>>2]](c,h,2514,1497453121,f);return 3957}L[b+52>>2]=0;L[b+56>>2]=0;return 3957}function bG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=S(0),g=0,h=0,i=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=S(0),o=S(0),p=S(0);d=fa-32|0;fa=d;a=L[a+12>>2];a:{if(!a){break a}L[e+4>>2]=a;g=L[b+12>>2];h=L[c+12>>2];n=P[h+56>>2];i=S(P[g+56>>2]-n);o=P[h+48>>2];m=S(P[g+48>>2]-o);p=P[h+52>>2];j=S(P[g+52>>2]-p);f=S(_(S(S(i*i)+S(S(m*m)+S(j*j)))));b=L[b+4>>2];k=S(P[b+28>>2]*P[b+12>>2]);b=L[c+4>>2];l=S(P[b+28>>2]*P[b+12>>2]);k=S(k+l);if(f>k){if(!L[a+748>>2]){break a}c=L[a+740>>2];g=L[L[e+8>>2]+8>>2];b=(c|0)==(g|0);h=a;a=L[L[e+12>>2]+8>>2];_a(h,(b?c:a)+4|0,(b?a:g)+4|0);break a}L[d+24>>2]=0;L[d+28>>2]=0;L[d+16>>2]=1065353216;L[d+20>>2]=0;k=S(f-k);b:{if(!(f>S(1.1920928955078125e-7))){f=S(1);i=S(0);j=S(0);break b}f=S(S(1)/f);i=S(i*f);P[d+24>>2]=i;j=S(j*f);P[d+20>>2]=j;f=S(m*f);P[d+16>>2]=f}L[d+12>>2]=0;P[d+8>>2]=S(l*i)+n;P[d+4>>2]=S(l*j)+p;P[d>>2]=S(l*f)+o;ha[L[L[e>>2]+16>>2]](e,d+16|0,d,k);a=L[e+4>>2];if(!L[a+748>>2]){break a}c=L[a+740>>2];g=L[L[e+8>>2]+8>>2];b=(c|0)==(g|0);h=a;a=L[L[e+12>>2]+8>>2];_a(h,(b?c:a)+4|0,(b?a:g)+4|0)}fa=d+32|0}function Sw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;a=L[d+8>>2];e=fa-16|0;fa=e;L[e+12>>2]=L[d+12>>2]+24;L[e+8>>2]=a;a=L[e+8>>2];b=fa-48|0;fa=b;L[b+44>>2]=L[e+12>>2];L[b+40>>2]=a;g=L[b+44>>2];a=fa-16|0;L[a+12>>2]=L[b+40>>2];L[b+36>>2]=L[L[a+12>>2]+4>>2];c=L[b+36>>2];L[b+32>>2]=0;L[b+24>>2]=0;L[b+28>>2]=0;L[b+16>>2]=0;L[b+20>>2]=0;L[b+8>>2]=0;L[b+12>>2]=0;L[b>>2]=0;L[b+4>>2]=0;rf(b);a=fa-32|0;fa=a;L[a+28>>2]=g;L[a+24>>2]=c;L[a+20>>2]=b;f=fa-16|0;c=L[a+28>>2];L[f+12>>2]=c;L[a+16>>2]=L[L[f+12>>2]+4>>2];a:{if(L[a+24>>2]>2]){L[a+12>>2]=L[a+24>>2];while(1){if(L[a+12>>2]>2]){rc(L[c+12>>2]+R(L[a+12>>2],36)|0);L[a+12>>2]=L[a+12>>2]+1;continue}break}break a}f=L[a+24>>2];h=fa-16|0;L[h+12>>2]=c;if(L[L[h+12>>2]+4>>2]<(f|0)){Fh(c,L[a+24>>2])}L[a+8>>2]=L[a+16>>2];while(1){if(L[a+8>>2]>2]){Eh(L[c+12>>2]+R(L[a+8>>2],36)|0,L[a+20>>2]);L[a+8>>2]=L[a+8>>2]+1;continue}break}}L[c+4>>2]=L[a+24>>2];fa=a+32|0;rc(b);Gh(L[b+40>>2],L[b+36>>2],L[g+12>>2]);fa=b+48|0;fa=e+16|0;fa=d+16|0}function lF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=S(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=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);a:{if(L[a+16>>2]){g=P[a+56>>2];e=P[a+40>>2];h=S(S(g+e)*S(.5));f=P[a+52>>2];k=P[a+36>>2];i=S(S(f+k)*S(.5));l=S(S(g-e)*S(.5));u=S(S(f-k)*S(.5));e=P[a+48>>2];f=P[a+32>>2];g=S(S(e+f)*S(.5));e=S(S(e-f)*S(.5));break a}e=S(0)}v=S(ha[L[L[a>>2]+48>>2]](a));w=S(ha[L[L[a>>2]+48>>2]](a));p=S(ha[L[L[a>>2]+48>>2]](a));x=P[b+52>>2];f=P[b+20>>2];k=P[b+24>>2];o=P[b+56>>2];m=P[b+36>>2];j=P[b+40>>2];y=P[b+48>>2];q=P[b+8>>2];r=P[b>>2];s=P[b+4>>2];t=P[b+16>>2];n=P[b+32>>2];L[c+12>>2]=0;o=S(o+S(S(h*j)+S(S(g*n)+S(i*m))));l=S(l+p);p=S(l*S(T(j)));e=S(e+v);j=S(u+w);m=S(p+S(S(e*S(T(n)))+S(j*S(T(m)))));P[c+8>>2]=o-m;n=S(x+S(S(h*k)+S(S(g*t)+S(i*f))));f=S(S(l*S(T(k)))+S(S(e*S(T(t)))+S(j*S(T(f)))));P[c+4>>2]=n-f;h=S(y+S(S(h*q)+S(S(g*r)+S(i*s))));i=S(S(l*S(T(q)))+S(S(e*S(T(r)))+S(j*S(T(s)))));P[c>>2]=h-i;L[d+12>>2]=0;P[d+8>>2]=m+o;P[d+4>>2]=f+n;P[d>>2]=i+h}function Xa(a,b,c){var d=0,e=S(0),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=S(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);d=fa-48|0;fa=d;f=L[b+120>>2];v=L[b+124>>2];g=L[b>>2]+(v>>1)|0;if(v&1){f=L[f+L[g>>2]>>2]}ha[f|0](d,g,c);h=P[c+8>>2];i=P[c+4>>2];k=P[c>>2];f=L[b+124>>2];g=L[b+4>>2]+(f>>1)|0;c=L[b+120>>2];c=f&1?L[L[g>>2]+c>>2]:c;l=P[b+16>>2];m=P[b+12>>2];n=P[b+32>>2];o=P[b+24>>2];p=P[b+28>>2];q=P[b+48>>2];e=P[b+40>>2];r=P[b+44>>2];s=P[b+8>>2];L[d+28>>2]=0;j=e;e=S(-k);P[d+24>>2]=S(S(j*e)-S(r*i))-S(q*h);P[d+20>>2]=S(S(o*e)-S(p*i))-S(n*h);P[d+16>>2]=S(S(s*e)-S(m*i))-S(l*h);ha[c|0](d+32|0,g,d+16|0);w=P[b+104>>2];x=P[b- -64>>2];y=P[b+60>>2];h=P[b+108>>2];i=P[b+80>>2];k=P[b+72>>2];l=P[b+76>>2];m=P[b+112>>2];n=P[b+96>>2];o=P[b+88>>2];p=P[b+92>>2];q=P[b+56>>2];j=P[d+40>>2];t=P[d+32>>2];u=P[d+36>>2];e=P[d>>2];r=P[d+4>>2];s=P[d+8>>2];L[a+12>>2]=0;P[a+8>>2]=s-S(m+S(S(j*n)+S(S(t*o)+S(u*p))));P[a+4>>2]=r-S(h+S(S(j*i)+S(S(t*k)+S(u*l))));P[a>>2]=e-S(w+S(S(j*x)+S(S(t*q)+S(u*y))));fa=d+48|0}function tB(a,b){a=a|0;b=b|0;var c=S(0),d=0,e=0,f=S(0),g=S(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=S(0),q=S(0),r=S(0),s=S(0),t=S(0),u=S(0),v=S(0),w=S(0);a:{b:{if(M[a+738|0]){L[b>>2]=0;a=0;break b}L[b>>2]=5;L[b+4>>2]=1;d=L[a+32>>2];c=P[a+652>>2];f=P[a+620>>2];g=P[a+636>>2];l=S(S(P[d+44>>2]*c)+S(S(P[d+36>>2]*f)+S(g*P[d+40>>2])));e=L[a+28>>2];m=P[e+44>>2];h=P[a+584>>2];n=P[e+36>>2];i=P[a+552>>2];j=P[a+568>>2];o=P[e+40>>2];u=S(l*S(S(m*h)+S(S(n*i)+S(j*o))));p=S(S(P[d+12>>2]*c)+S(S(P[d+4>>2]*f)+S(g*P[d+8>>2])));q=P[e+12>>2];r=P[e+4>>2];s=P[e+8>>2];v=S(p*S(S(q*h)+S(S(r*i)+S(j*s))));t=P[e+28>>2];k=S(t*h);h=P[e+20>>2];w=S(h*i);i=P[e+24>>2];k=S(k+S(w+S(j*i)));j=S(S(P[d+28>>2]*c)+S(S(P[d+20>>2]*f)+S(g*P[d+24>>2])));c=P[a+588>>2];f=P[a+556>>2];g=P[a+572>>2];c=S(Za(S(u+S(v+S(k*j))),S(S(l*S(S(m*c)+S(S(n*f)+S(o*g))))+S(S(p*S(S(q*c)+S(S(r*f)+S(s*g))))+S(S(S(t*c)+S(S(h*f)+S(i*g)))*j))))*P[a+732>>2]);P[a+728>>2]=c;_k(a+688|0,c);if(!(M[a+716|0]|M[a+737|0])){break a}L[b>>2]=L[b>>2]+1;a=L[b+4>>2]-1|0}L[b+4>>2]=a}}function Fo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=fa+-64|0;fa=d;L[d+60>>2]=a;L[d+56>>2]=b;J[d+55|0]=c;b=L[d+60>>2];L[b+8>>2]=L[L[d+56>>2]>>2];Hf(b+20|0,L[d+56>>2]);L[(fa-16|0)+12>>2]=d+32;a:{if(J[d+55|0]&1){a=L[d+56>>2];c=L[a+20>>2];L[d+40>>2]=L[a+16>>2];L[d+44>>2]=c;c=L[a+12>>2];L[d+32>>2]=L[a+8>>2];L[d+36>>2]=c;break a}a=fa-16|0;L[a+12>>2]=L[b+8>>2];L[a+12>>2]=L[a+12>>2]+4;ua(d+16|0,L[a+12>>2],L[d+56>>2]+8|0);a=L[d+28>>2];L[d+40>>2]=L[d+24>>2];L[d+44>>2]=a;a=L[d+20>>2];L[d+32>>2]=L[d+16>>2];L[d+36>>2]=a}_h(b+72|0,d+32|0);L[(fa-16|0)+12>>2]=d;ai(d,b+40|0,b+56|0,P[L[d+56>>2]+24>>2]);_h(b+92|0,d);a=L[d+56>>2]+24|0;c=fa-16|0;fa=c;L[c+12>>2]=b+112;L[c+8>>2]=a;e=fa-16|0;a=L[c+12>>2];L[e+12>>2]=a;L[c+4>>2]=L[L[e+12>>2]+4>>2];e=L[c+4>>2];f=fa-16|0;L[f+12>>2]=a;if(L[L[f+12>>2]+8>>2]==(e|0)){e=fa-16|0;L[e+12>>2]=a;f=L[L[e+12>>2]+4>>2];L[e+12>>2]=a;L[e+8>>2]=f;if(L[e+8>>2]){e=L[e+8>>2]<<1}else{e=1}Wh(a,e)}P[L[a+12>>2]+(L[a+4>>2]<<2)>>2]=P[L[c+8>>2]>>2];L[a+4>>2]=L[a+4>>2]+1;fa=c+16|0;fa=d- -64|0;return S(P[b+4>>2])}function kp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=S(0),g=0,h=S(0),i=0,j=0,k=0,l=S(0),m=0,n=0,o=S(0),p=S(0),q=S(0);g=fa-32|0;fa=g;L[g+28>>2]=a;L[g+24>>2]=b;L[g+20>>2]=c;L[g+16>>2]=d;L[g+12>>2]=e;m=L[g+24>>2];i=L[g+20>>2];j=L[g+16>>2];a=0;k=L[g+12>>2];c=k+3|0;a:{if((k|0)>=-2){l=S(c|0);L[8513]=L[8513]+1;e=ha[L[6798]](c<<4,16)|0;d=e;while(1){f=S(0);h=S(.5);b=a;if(b){while(1){f=S(f+(b&1?h:S(-0)));n=b>>>0<2;b=b>>>1|0;h=S(h*S(.5));if(!n){continue}break}}L[d+12>>2]=0;f=S(S(f+f)+S(-1));P[d+8>>2]=f;h=S(S(S(S(a<<1)*S(3.1415927410125732))+S(3.1415927410125732))/l);f=S(_(S(S(1)-S(f*f))));P[d+4>>2]=Ea(h)*f;P[d>>2]=Fa(h)*f;d=d+16|0;a=a+1|0;if((c|0)!=(a|0)){continue}break}if((k|0)>=-2){d=(c|0)<=1?1:c;a=0;while(1){f=P[i>>2];h=P[j>>2];l=P[i+4>>2];o=P[j+4>>2];p=P[i+8>>2];q=P[j+8>>2];b=e+(a<<4)|0;L[b+12>>2]=0;P[b+8>>2]=p+S(q*P[b+8>>2]);P[b+4>>2]=l+S(o*P[b+4>>2]);P[b>>2]=f+S(h*P[b>>2]);a=a+1|0;if((d|0)!=(a|0)){continue}break}}a=fg(m,e,c,1);if(e){L[8514]=L[8514]+1;ha[L[6799]](e)}break a}a=fg(m,0,c,1)}fa=g+32|0;return a|0}function eg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;L[a>>2]=21988;if(L[a+104>>2]>0){while(1){i=L[a+112>>2]+(f<<3)|0;d=L[i+4>>2];g=L[L[a+4>>2]+684>>2];c=L[g+60>>2];if((c|0)>0){e=0;while(1){h=0;j=L[g+68>>2]+(e<<2)|0;b=L[j>>2];if(b){while(1){c=L[b+280>>2];a:{if(L[b+276>>2]!=(d|0)){h=b;break a}L[(h?h+280|0:j)>>2]=c;ra(b)}b=c;if(b){continue}break}c=L[g+60>>2]}e=e+1|0;if((e|0)<(c|0)){continue}break}d=L[i+4>>2]}if(d){ha[L[L[d>>2]+4>>2]](d)}f=f+1|0;if((f|0)>2]){continue}break}}jk(a+60|0);b=L[a+132>>2];if(!(b?!b|!M[a+136|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+132>>2]=0;J[a+136|0]=1;L[a+124>>2]=0;L[a+128>>2]=0;b=L[a+112>>2];if(!(b?!b|!M[a+116|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+112>>2]=0;J[a+116|0]=1;L[a+104>>2]=0;L[a+108>>2]=0;b=L[a+92>>2];if(!(b?!b|!M[a+96|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+92>>2]=0;J[a+96|0]=1;L[a+84>>2]=0;L[a+88>>2]=0;b=L[a+72>>2];if(!(b?!b|!M[a+76|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+72>>2]=0;J[a+76|0]=1;b=a- -64|0;L[b>>2]=0;L[b+4>>2]=0;return a|0}function jl(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0;k=fa-16|0;fa=k;if(L[a+924>>2]|M[a+912|0]){j=a+1216|0;l=L[j+4>>2];L[k+8>>2]=L[j>>2];L[k+12>>2]=l;j=L[a+1212>>2];L[k>>2]=L[a+1208>>2];L[k+4>>2]=j;j=L[a+1304>>2];if(!(j&512)){P[a+896>>2]=P[L[b+32>>2]>>2]}if(!(j&1024)){P[a+904>>2]=P[L[b+32>>2]>>2]}if(!(j&2048)){P[a+900>>2]=P[b+4>>2]}c=Ce(a,a+868|0,d,e,f,g,h,i,b,c,k,1,0)+c|0}if(L[a+988>>2]|M[a+976|0]){j=a+1232|0;l=L[j+4>>2];L[k+8>>2]=L[j>>2];L[k+12>>2]=l;j=a+1224|0;l=L[j+4>>2];L[k>>2]=L[j>>2];L[k+4>>2]=l;j=L[a+1304>>2];if(!(j&4096)){P[a+960>>2]=P[L[b+32>>2]>>2]}if(!(j&8192)){P[a+968>>2]=P[L[b+32>>2]>>2]}if(!(j&16384)){P[a+964>>2]=P[b+4>>2]}c=Ce(a,a+932|0,d,e,f,g,h,i,b,c,k,1,0)+c|0}if(L[a+1052>>2]|M[a+1040|0]){j=a+1248|0;l=L[j+4>>2];L[k+8>>2]=L[j>>2];L[k+12>>2]=l;j=a+1240|0;l=L[j+4>>2];L[k>>2]=L[j>>2];L[k+4>>2]=l;j=L[a+1304>>2];if(!(j&32768)){P[a+1024>>2]=P[L[b+32>>2]>>2]}if(!(j&65536)){P[a+1032>>2]=P[L[b+32>>2]>>2]}if(!(j&131072)){P[a+1028>>2]=P[b+4>>2]}c=Ce(a,a+996|0,d,e,f,g,h,i,b,c,k,1,0)+c|0}fa=k+16|0;return c}function Pm(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;b=L[a+16>>2];if(!(b?!b|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+16>>2]=0;J[a+20|0]=1;L[a+8>>2]=0;L[a+12>>2]=0;b=L[a+40>>2];if(!(b?!b|!M[a+44|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+40>>2]=0;J[a+44|0]=1;L[a+32>>2]=0;L[a+36>>2]=0;b=L[a+60>>2];if(!(b?!b|!M[a- -64|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+60>>2]=0;J[a+64|0]=1;L[a+52>>2]=0;L[a+56>>2]=0;if(L[a+12>>2]<=1){L[8513]=L[8513]+1;f=ha[L[6798]](24,16)|0;d=L[a+8>>2];a:{if((d|0)<=0){break a}b=0;if((d|0)!=1){i=d&-2;while(1){c=R(b,12);e=c+L[a+16>>2]|0;g=L[e+4>>2];c=c+f|0;L[c>>2]=L[e>>2];L[c+4>>2]=g;L[c+8>>2]=L[e+8>>2];c=R(b|1,12);e=c+L[a+16>>2]|0;g=L[e+4>>2];c=c+f|0;L[c>>2]=L[e>>2];L[c+4>>2]=g;L[c+8>>2]=L[e+8>>2];b=b+2|0;h=h+2|0;if((h|0)!=(i|0)){continue}break}}if(!(d&1)){break a}d=R(b,12);b=d+L[a+16>>2]|0;e=L[b+4>>2];d=d+f|0;L[d>>2]=L[b>>2];L[d+4>>2]=e;L[d+8>>2]=L[b+8>>2]}b=L[a+16>>2];if(!(b?!b|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+16>>2]=f;J[a+20|0]=1;L[a+12>>2]=2}dh(a)}function iG(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;f=L[a+188>>2];j=L[b>>2];d=L[a+268>>2];a:{b:{if((d|0)<=0){break b}g=L[a+276>>2];while(1){if(L[g+(e<<2)>>2]!=(j|0)){e=e+1|0;if((e|0)!=(d|0)){continue}break b}break}if((d|0)!=(e|0)){break a}}m=c?c:f;c:{if(L[a+272>>2]!=(d|0)){break c}g=d?d<<1:1;if((g|0)<=(d|0)){break c}d:{if(!g){c=0;break d}L[8513]=L[8513]+1;c=ha[L[6798]](g<<2,16)|0;d=L[a+268>>2]}e:{if((d|0)<=0){break e}e=0;if(d>>>0>=4){i=d&-4;while(1){f=e<<2;L[f+c>>2]=L[f+L[a+276>>2]>>2];h=f|4;L[h+c>>2]=L[h+L[a+276>>2]>>2];h=f|8;L[h+c>>2]=L[h+L[a+276>>2]>>2];f=f|12;L[f+c>>2]=L[f+L[a+276>>2]>>2];e=e+4|0;k=k+4|0;if((i|0)!=(k|0)){continue}break}}f=d&3;if(!f){break e}while(1){i=e<<2;L[i+c>>2]=L[i+L[a+276>>2]>>2];e=e+1|0;l=l+1|0;if((f|0)!=(l|0)){continue}break}}e=L[a+276>>2];if(!(!e|!M[a+280|0])){if(e){L[8514]=L[8514]+1;ha[L[6799]](e)}d=L[a+268>>2]}L[a+276>>2]=c;J[a+280|0]=1;L[a+272>>2]=g}L[L[a+276>>2]+(d<<2)>>2]=j;L[a+268>>2]=d+1;a=L[a+284>>2];ha[L[L[a>>2]+8>>2]](a,m,b)|0}}function Ky(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;e=fa+-64|0;fa=e;d=1;a:{if(Wa(a,b,0)){break a}d=0;if(!b){break a}d=fa+-64|0;fa=d;f=L[b>>2];g=L[f-4>>2];f=L[f-8>>2];L[d+32>>2]=0;L[d+36>>2]=0;L[d+40>>2]=0;L[d+44>>2]=0;L[d+48>>2]=0;L[d+52>>2]=0;J[d+55|0]=0;J[d+56|0]=0;J[d+57|0]=0;J[d+58|0]=0;J[d+59|0]=0;J[d+60|0]=0;J[d+61|0]=0;J[d+62|0]=0;L[d+24>>2]=0;L[d+28>>2]=0;L[d+20>>2]=0;L[d+16>>2]=26868;L[d+12>>2]=b;L[d+8>>2]=26916;f=b+f|0;b=0;b:{if(Wa(g,26916,0)){L[d+56>>2]=1;ha[L[L[g>>2]+20>>2]](g,d+8|0,f,f,1,0);b=L[d+32>>2]==1?f:0;break b}ha[L[L[g>>2]+24>>2]](g,d+8|0,f,1,0);c:{switch(L[d+44>>2]){case 0:b=L[d+48>>2]==1?L[d+36>>2]==1?L[d+40>>2]==1?L[d+28>>2]:0:0:0;break b;case 1:break c;default:break b}}if(L[d+32>>2]!=1){if(L[d+48>>2]|L[d+36>>2]!=1|L[d+40>>2]!=1){break b}}b=L[d+24>>2]}fa=d- -64|0;d=0;if(!b){break a}pa(e+12|0,0,52);L[e+56>>2]=1;L[e+20>>2]=-1;L[e+16>>2]=a;L[e+8>>2]=b;ha[L[L[b>>2]+28>>2]](b,e+8|0,L[c>>2],1);a=L[e+32>>2];if((a|0)==1){L[c>>2]=L[e+24>>2]}d=(a|0)==1}fa=e- -64|0;return d|0}function pg(a){a=a|0;var b=0;L[a>>2]=20352;if(M[a+272|0]){b=L[a+204>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+204>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}b=L[a+196>>2];if(b){ha[L[L[b>>2]>>2]](b)|0;b=L[a+196>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}if(M[a+273|0]){b=L[a+200>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+200>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}b=L[a+316>>2];if(!(b?!b|!M[a+320|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+316>>2]=0;J[a+320|0]=1;L[a+308>>2]=0;L[a+312>>2]=0;b=L[a+288>>2];if(!(b?!b|!M[a+292|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+288>>2]=0;J[a+292|0]=1;L[a+280>>2]=0;L[a+284>>2]=0;b=L[a+240>>2];if(!(b?!b|!M[a+244|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+240>>2]=0;J[a+244|0]=1;L[a+232>>2]=0;L[a+236>>2]=0;b=L[a+220>>2];if(!(b?!b|!M[a+224|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+220>>2]=0;J[a+224|0]=1;L[a+212>>2]=0;L[a+216>>2]=0;b=L[a+188>>2];if(!(b?!b|!M[a+192|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+188>>2]=0;J[a+192|0]=1;L[a+180>>2]=0;L[a+184>>2]=0;return nh(a)|0}function np(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=S(0),i=0,j=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);g=fa-32|0;fa=g;L[g+28>>2]=a;L[g+24>>2]=b;L[g+20>>2]=c;L[g+16>>2]=d;L[g+12>>2]=e;L[g+8>>2]=f;o=L[g+24>>2];c=L[g+20>>2];f=L[g+16>>2];l=L[g+8>>2];a=0;d=L[g+12>>2];b=d+2|0;L[8513]=L[8513]+1;e=ha[L[6798]](b>>>0>268435455?-1:b<<4,16)|0;j=sa(b>>>0>1073741823?-1:b<<2);if((d|0)>=-1){p=S(d+1|0);while(1){q=P[f>>2];m=P[c>>2];r=P[f+4>>2];n=P[c+4>>2];k=P[f+8>>2];h=P[c+8>>2];i=e+(a<<4)|0;L[i+12>>2]=0;s=h;k=S(k-h);h=S(S(a|0)/p);P[i+8>>2]=s+S(k*h);P[i+4>>2]=n+S(S(r-n)*h);P[i>>2]=m+S(S(q-m)*h);L[(a<<2)+j>>2]=1065353216;a=a+1|0;if((b|0)!=(a|0)){continue}break}}L[8513]=L[8513]+1;c=Ac(ha[L[6798]](1252,16)|0,o,b,e,j);if(l&1){P[L[c+720>>2]+88>>2]=0;J[c+924|0]=1}if(l&2){P[(L[c+720>>2]+R(d+1|0,104)|0)+88>>2]=0;J[c+924|0]=1}if(e){L[8514]=L[8514]+1;ha[L[6799]](e)}ra(j);if((d|0)>=0){a=1;while(1){Ha(c,a-1|0,a,0,0);a=a+1|0;if((b|0)!=(a|0)){continue}break}}fa=g+32|0;return c|0}function Cc(a,b,c,d,e,f,g){var h=S(0),i=S(0),j=0,k=0,l=S(0),m=S(0),n=S(0),o=0;L[d>>2]=2139095039;L[e>>2]=-8388609;o=L[a+8>>2];if((o|0)<=0){h=S(-34028234663852886e22)}else{while(1){k=L[a+16>>2]+(j<<4)|0;h=P[k+8>>2];i=P[k>>2];l=P[k+4>>2];m=S(S(S(h*P[b+40>>2])+S(S(i*P[b+32>>2])+S(l*P[b+36>>2])))+P[b+56>>2]);n=S(S(S(h*P[b+8>>2])+S(S(i*P[b>>2])+S(l*P[b+4>>2])))+P[b+48>>2]);i=S(S(S(h*P[b+24>>2])+S(S(i*P[b+16>>2])+S(l*P[b+20>>2])))+P[b+52>>2]);h=S(S(m*P[c+8>>2])+S(S(n*P[c>>2])+S(i*P[c+4>>2])));if(h>2]){P[d>>2]=h;L[f+12>>2]=0;P[f+8>>2]=m;P[f+4>>2]=i;P[f>>2]=n}if(h>P[e>>2]){P[e>>2]=h;L[g+12>>2]=0;P[g+8>>2]=m;P[g+4>>2]=i;P[g>>2]=n}j=j+1|0;if((o|0)!=(j|0)){continue}break}h=P[e>>2]}i=P[d>>2];if(h>2]=h;P[e>>2]=i;b=L[f+12>>2];a=fa-16|0;L[a+8>>2]=L[f+8>>2];L[a+12>>2]=b;b=L[f+4>>2];L[a>>2]=L[f>>2];L[a+4>>2]=b;b=L[g+12>>2];L[f+8>>2]=L[g+8>>2];L[f+12>>2]=b;b=L[g+4>>2];L[f>>2]=L[g>>2];L[f+4>>2]=b;b=L[a+12>>2];L[g+8>>2]=L[a+8>>2];L[g+12>>2]=b;b=L[a+4>>2];L[g>>2]=L[a>>2];L[g+4>>2]=b}}function KB(a,b,c){a=a|0;b=b|0;c=c|0;cc(a,b,c);P[b+52>>2]=P[a+300>>2];P[b+56>>2]=P[a+304>>2];P[b+60>>2]=P[a+308>>2];P[b- -64>>2]=P[a+312>>2];P[b+68>>2]=P[a+316>>2];P[b+72>>2]=P[a+320>>2];P[b+76>>2]=P[a+324>>2];P[b+80>>2]=P[a+328>>2];P[b+84>>2]=P[a+332>>2];P[b+88>>2]=P[a+336>>2];P[b+92>>2]=P[a+340>>2];P[b+96>>2]=P[a+344>>2];P[b+100>>2]=P[a+348>>2];P[b+104>>2]=P[a+352>>2];P[b+108>>2]=P[a+356>>2];P[b+112>>2]=P[a+360>>2];P[b+116>>2]=P[a+364>>2];P[b+120>>2]=P[a+368>>2];P[b+124>>2]=P[a+372>>2];P[b+128>>2]=P[a+376>>2];P[b+132>>2]=P[a+380>>2];P[b+136>>2]=P[a+384>>2];P[b+140>>2]=P[a+388>>2];P[b+144>>2]=P[a+392>>2];P[b+148>>2]=P[a+396>>2];P[b+152>>2]=P[a+400>>2];P[b+156>>2]=P[a+404>>2];P[b+160>>2]=P[a+408>>2];P[b+164>>2]=P[a+412>>2];P[b+168>>2]=P[a+416>>2];P[b+172>>2]=P[a+420>>2];P[b+176>>2]=P[a+424>>2];P[b+180>>2]=P[a+444>>2];P[b+184>>2]=P[a+448>>2];P[b+188>>2]=P[a+452>>2];P[b+192>>2]=P[a+428>>2];P[b+196>>2]=P[a+432>>2];P[b+200>>2]=P[a+436>>2];P[b+204>>2]=P[a+440>>2];return 3321}function Yj(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;h=fa-16|0;fa=h;while(1){m=c;g=L[a+12>>2]+((c+d|0)/2<<4)|0;n=L[g+8>>2];k=L[g+4>>2];l=L[g>>2];g=d;while(1){i=L[a+12>>2];while(1){a:{f=(c<<4)+i|0;e=L[f+4>>2];b:{if((e|0)<(k|0)){break b}if((e|0)!=(k|0)){break a}e=L[f>>2];if((e|0)<(l|0)){break b}if((e|0)!=(l|0)|L[f+8>>2]>=(n|0)){break a}}c=c+1|0;continue}break}while(1){c:{o=g<<4;e=o+i|0;j=L[e+4>>2];d:{if((j|0)>(k|0)){break d}if((k|0)!=(j|0)){break c}j=L[e>>2];if((j|0)>(l|0)){break d}if((l|0)!=(j|0)|L[e+8>>2]<=(n|0)){break c}}g=g-1|0;continue}break}if((c|0)<=(g|0)){i=L[f+12>>2];L[h+8>>2]=L[f+8>>2];L[h+12>>2]=i;i=L[f+4>>2];L[h>>2]=L[f>>2];L[h+4>>2]=i;i=L[e+4>>2];L[f>>2]=L[e>>2];L[f+4>>2]=i;i=L[e+12>>2];L[f+8>>2]=L[e+8>>2];L[f+12>>2]=i;e=L[h+4>>2];f=L[a+12>>2]+o|0;L[f>>2]=L[h>>2];L[f+4>>2]=e;e=L[h+12>>2];L[f+8>>2]=L[h+8>>2];L[f+12>>2]=e;g=g-1|0;c=c+1|0}if((c|0)<=(g|0)){continue}break}if((g|0)>(m|0)){Yj(a,b,m,g)}if((c|0)<(d|0)){continue}break}fa=h+16|0}function Fd(a,b){var c=0,d=0,e=S(0),f=S(0),g=S(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=S(0),q=S(0);if(L[a>>2]==(b|0)){L[a>>2]=0;return 0}d=L[b+32>>2];c=L[(((L[d+40>>2]!=(b|0))<<2)+d|0)+36>>2];b=L[d+32>>2];a:{b:{if(b){L[((((d|0)==L[b+40>>2])<<2)+b|0)+36>>2]=c;L[c+32>>2]=b;c=L[a+4>>2];if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}L[a+4>>2]=d;while(1){q=P[b>>2];d=L[b+36>>2];e=P[d>>2];c=L[b+40>>2];k=P[c>>2];e=e>2]=e;k=P[b+16>>2];f=P[d+16>>2];l=P[c+16>>2];f=f>l?f:l;P[b+16>>2]=f;l=P[b+4>>2];g=P[d+4>>2];m=P[c+4>>2];g=g>2]=g;m=P[b+20>>2];h=P[d+20>>2];n=P[c+20>>2];h=h>n?h:n;P[b+20>>2]=h;n=P[b+8>>2];i=P[d+8>>2];o=P[c+8>>2];i=i>2]=i;o=P[b+24>>2];j=P[d+24>>2];p=P[c+24>>2];j=j>p?j:p;P[b+24>>2]=j;c:{if(e!=q|l!=g|(n!=i|k!=f)){break c}if(m!=h){break c}if(o==j){break a}}b=L[b+32>>2];if(b){continue}break}break b}L[a>>2]=c;L[c+32>>2]=0;b=L[a+4>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+4>>2]=d}b=L[a>>2]}return b}function cy(a,b,c,d){a=a|0;b=S(b);c=S(c);d=S(d);var e=0,f=0;e=fa-16|0;fa=e;L[e+12>>2]=a;P[e+8>>2]=b;P[e+4>>2]=c;P[e>>2]=d;b=P[e+8>>2];c=P[e+4>>2];d=P[e>>2];a=fa-96|0;fa=a;L[a+92>>2]=L[e+12>>2];P[a+88>>2]=b;P[a+84>>2]=c;P[a+80>>2]=d;f=L[a+92>>2];P[a+76>>2]=Ra(P[a+88>>2]);P[a+72>>2]=Ra(P[a+84>>2]);P[a+68>>2]=Ra(P[a+80>>2]);P[a+64>>2]=Qa(P[a+88>>2]);P[a+60>>2]=Qa(P[a+84>>2]);P[a+56>>2]=Qa(P[a+80>>2]);P[a+52>>2]=P[a+76>>2]*P[a+68>>2];P[a+48>>2]=P[a+76>>2]*P[a+56>>2];P[a+44>>2]=P[a+64>>2]*P[a+68>>2];P[a+40>>2]=P[a+64>>2]*P[a+56>>2];P[a+36>>2]=P[a+72>>2]*P[a+68>>2];P[a+32>>2]=S(P[a+60>>2]*P[a+44>>2])-P[a+48>>2];P[a+28>>2]=S(P[a+60>>2]*P[a+52>>2])+P[a+40>>2];P[a+24>>2]=P[a+72>>2]*P[a+56>>2];P[a+20>>2]=S(P[a+60>>2]*P[a+40>>2])+P[a+52>>2];P[a+16>>2]=S(P[a+60>>2]*P[a+48>>2])-P[a+44>>2];P[a+12>>2]=-P[a+60>>2];P[a+8>>2]=P[a+72>>2]*P[a+64>>2];P[a+4>>2]=P[a+72>>2]*P[a+76>>2];md(f,a+36|0,a+32|0,a+28|0,a+24|0,a+20|0,a+16|0,a+12|0,a+8|0,a+4|0);fa=a+96|0;fa=e+16|0}function tm(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=L[a+96>>2];a:{if((d|0)!=L[a+100>>2]){break a}j=d?d<<1:1;if((j|0)<=(d|0)){break a}if(j){L[8513]=L[8513]+1;f=ha[L[6798]](j<<4,16)|0;d=L[a+96>>2]}b:{if((d|0)<=0){break b}if((d|0)!=1){m=d&-2;while(1){h=g<<4;i=h+f|0;e=h+L[a+104>>2]|0;k=L[e+4>>2];L[i>>2]=L[e>>2];L[i+4>>2]=k;k=L[e+12>>2];L[i+8>>2]=L[e+8>>2];L[i+12>>2]=k;e=h|16;h=e+f|0;e=e+L[a+104>>2]|0;i=L[e+4>>2];L[h>>2]=L[e>>2];L[h+4>>2]=i;i=L[e+12>>2];L[h+8>>2]=L[e+8>>2];L[h+12>>2]=i;g=g+2|0;l=l+2|0;if((l|0)!=(m|0)){continue}break}}if(!(d&1)){break b}d=g<<4;g=d+f|0;d=d+L[a+104>>2]|0;e=L[d+4>>2];L[g>>2]=L[d>>2];L[g+4>>2]=e;e=L[d+12>>2];L[g+8>>2]=L[d+8>>2];L[g+12>>2]=e}d=L[a+104>>2];if(!(d?!d|!M[a+108|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[a+104>>2]=f;J[a+108|0]=1;L[a+100>>2]=j;d=L[a+96>>2]}f=L[b+4>>2];d=L[a+104>>2]+(d<<4)|0;L[d>>2]=L[b>>2];L[d+4>>2]=f;f=L[b+12>>2];L[d+8>>2]=L[b+8>>2];L[d+12>>2]=f;L[a+96>>2]=L[a+96>>2]+1;if(c){Sb(a)}}function Xk(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;while(1){n=c;m=L[L[a+12>>2]+((c+d|0)/2<<2)>>2];f=d;while(1){k=L[a+12>>2];j=L[L[m+740>>2]+208>>2];g=(j|0)<0;a:{if(!g){while(1){h=c;l=(c<<2)+k|0;i=L[l>>2];e=L[L[i+740>>2]+208>>2];if((e|0)<0){e=L[L[i+744>>2]+208>>2]}c=h+1|0;if((e|0)<(j|0)){continue}break a}}o=L[L[m+744>>2]+208>>2];while(1){h=c;l=(c<<2)+k|0;i=L[l>>2];e=L[L[i+740>>2]+208>>2];if((e|0)<0){e=L[L[i+744>>2]+208>>2]}c=h+1|0;if((e|0)<(o|0)){continue}break}}b:{if(!g){while(1){c=f;g=L[(c<<2)+k>>2];e=L[L[g+740>>2]+208>>2];if((e|0)<0){e=L[L[g+744>>2]+208>>2]}f=c-1|0;if((e|0)>(j|0)){continue}break b}}j=L[L[m+744>>2]+208>>2];while(1){c=f;g=L[(c<<2)+k>>2];e=L[L[g+740>>2]+208>>2];if((e|0)<0){e=L[L[g+744>>2]+208>>2]}f=c-1|0;if((e|0)>(j|0)){continue}break}}c:{if((c|0)<(h|0)){f=c;c=h;break c}L[l>>2]=g;L[L[a+12>>2]+(c<<2)>>2]=i;f=c-1|0;c=h+1|0}if((c|0)<=(f|0)){continue}break}if((f|0)>(n|0)){Xk(a,b,n,f)}if((c|0)<(d|0)){continue}break}}function Kf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=fa-16|0;fa=f;L[f+12>>2]=a;L[f+8>>2]=b;a=L[f+8>>2];b=fa-32|0;fa=b;L[b+28>>2]=L[f+12>>2];L[b+24>>2]=a;h=L[b+28>>2];a=fa-16|0;L[a+12>>2]=L[b+24>>2];L[b+20>>2]=L[L[a+12>>2]+4>>2];e=L[b+20>>2];c=b+4|0;L[(fa-16|0)+12>>2]=c;a=fa-32|0;fa=a;L[a+28>>2]=h;L[a+24>>2]=e;L[a+20>>2]=c;c=fa-16|0;e=L[a+28>>2];L[c+12>>2]=e;L[a+16>>2]=L[L[c+12>>2]+4>>2];a:{if(L[a+24>>2]>2]){L[a+12>>2]=L[a+24>>2];while(1){if(L[a+12>>2]>2]){L[a+12>>2]=L[a+12>>2]+1;continue}break}break a}c=L[a+24>>2];d=fa-16|0;L[d+12>>2]=e;if(L[L[d+12>>2]+4>>2]<(c|0)){Xh(e,L[a+24>>2])}L[a+8>>2]=L[a+16>>2];while(1){if(L[a+8>>2]>2]){d=L[e+12>>2]+(L[a+8>>2]<<4)|0;c=fa-16|0;L[c+12>>2]=16;L[c+8>>2]=d;d=L[a+20>>2];g=L[d+4>>2];c=L[c+8>>2];L[c>>2]=L[d>>2];L[c+4>>2]=g;g=L[d+12>>2];L[c+8>>2]=L[d+8>>2];L[c+12>>2]=g;L[a+8>>2]=L[a+8>>2]+1;continue}break}}L[e+4>>2]=L[a+24>>2];fa=a+32|0;Uh(L[b+24>>2],L[b+20>>2],L[h+12>>2]);fa=b+32|0;fa=f+16|0}function tp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=fa-16|0;fa=f;L[f+12>>2]=a;L[f+8>>2]=b;K[f+6>>1]=c;K[f+4>>1]=d;j=L[f+8>>2];m=N[f+6>>1]<<16>>16;n=N[f+4>>1]<<16>>16;d=0;c=0;a=L[f+12>>2];b=L[a+328>>2];a:{if((b|0)!=L[a+332>>2]){break a}h=b?b<<1:1;if((h|0)<=(b|0)){break a}if(h){L[8513]=L[8513]+1;c=ha[L[6798]](h<<2,16)|0;b=L[a+328>>2]}b:{if((b|0)<=0){break b}if(b>>>0>=4){i=b&-4;while(1){e=d<<2;L[e+c>>2]=L[e+L[a+336>>2]>>2];g=e|4;L[g+c>>2]=L[g+L[a+336>>2]>>2];g=e|8;L[g+c>>2]=L[g+L[a+336>>2]>>2];e=e|12;L[e+c>>2]=L[e+L[a+336>>2]>>2];d=d+4|0;k=k+4|0;if((i|0)!=(k|0)){continue}break}}e=b&3;if(!e){break b}while(1){i=d<<2;L[i+c>>2]=L[i+L[a+336>>2]>>2];d=d+1|0;l=l+1|0;if((e|0)!=(l|0)){continue}break}}d=L[a+336>>2];if(!(!d|!M[a+340|0])){if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}b=L[a+328>>2]}L[a+336>>2]=c;J[a+340|0]=1;L[a+332>>2]=h}L[L[a+336>>2]+(b<<2)>>2]=j;L[a+328>>2]=b+1;L[j+284>>2]=L[a+452>>2];lh(a,j,m,n);fa=f+16|0}function ob(a){var b=S(0),c=0,d=0,e=S(0);d=(E(a),x(2));c=d&2147483647;if(c>>>0>=1065353216){if((c|0)==1065353216){return(d|0)>=0?S(0):S(3.141592502593994)}return S(S(0)/S(a-a))}a:{if(c>>>0<=1056964607){b=S(1.570796251296997);if(c>>>0<847249409){break a}b=S(a*a);return S(S(S(S(7.549789415861596e-8)-S(a*S(S(S(S(b*S(S(b*S(-.008656363002955914))+S(-.04274342209100723)))+S(.16666586697101593))*b)/S(S(b*S(-.7066296339035034))+S(1)))))-a)+S(1.570796251296997))}if((d|0)<0){a=S(S(a+S(1))*S(.5));b=S(_(a));a=S(S(1.570796251296997)-S(b+S(S(b*S(S(S(S(a*S(S(a*S(-.008656363002955914))+S(-.04274342209100723)))+S(.16666586697101593))*a)/S(S(a*S(-.7066296339035034))+S(1))))+S(-7.549789415861596e-8))));return S(a+a)}a=S(S(S(1)-a)*S(.5));e=S(_(a));b=(z(2,(E(e),x(2))&-4096),F());a=S(S(S(e*S(S(S(S(a*S(S(a*S(-.008656363002955914))+S(-.04274342209100723)))+S(.16666586697101593))*a)/S(S(a*S(-.7066296339035034))+S(1))))+S(S(a-S(b*b))/S(e+b)))+b);b=S(a+a)}return b}function ME(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;db(a,b,c);P[b+28>>2]=P[a+28>>2];P[b+32>>2]=P[a+32>>2];P[b+36>>2]=P[a+36>>2];P[b+40>>2]=P[a+40>>2];P[b+12>>2]=P[a+12>>2];P[b+16>>2]=P[a+16>>2];P[b+20>>2]=P[a+20>>2];P[b+24>>2]=P[a+24>>2];P[b+44>>2]=P[a+44>>2];d=L[a+96>>2];L[b+60>>2]=d;if(d){e=ha[L[L[c>>2]+28>>2]](c,L[a+104>>2])|0;L[b+56>>2]=0;L[b+52>>2]=e;g=ha[L[L[c>>2]+16>>2]](c,16,d)|0;a:{if((d|0)<=0){a=L[a+104>>2];break a}a=L[a+104>>2];b=L[g+8>>2];if((d|0)!=1){j=d&-2;while(1){h=f<<4;e=h+a|0;P[b>>2]=P[e>>2];P[b+4>>2]=P[e+4>>2];P[b+8>>2]=P[e+8>>2];P[b+12>>2]=P[e+12>>2];e=(h|16)+a|0;P[b+16>>2]=P[e>>2];P[b+20>>2]=P[e+4>>2];P[b+24>>2]=P[e+8>>2];P[b+28>>2]=P[e+12>>2];b=b+32|0;f=f+2|0;i=i+2|0;if((j|0)!=(i|0)){continue}break}}if(!(d&1)){break a}d=(f<<4)+a|0;P[b>>2]=P[d>>2];P[b+4>>2]=P[d+4>>2];P[b+8>>2]=P[d+8>>2];P[b+12>>2]=P[d+12>>2]}ha[L[L[c>>2]+20>>2]](c,g,3686,1497453121,a);return 3862}L[b+52>>2]=0;L[b+56>>2]=0;return 3862}function UA(a,b,c){a=a|0;b=b|0;c=c|0;cc(a,b,c);P[b+52>>2]=P[a+52>>2];P[b+56>>2]=P[a+56>>2];P[b+60>>2]=P[a+60>>2];P[b- -64>>2]=P[a- -64>>2];P[b+68>>2]=P[a+68>>2];P[b+72>>2]=P[a+72>>2];P[b+76>>2]=P[a+76>>2];P[b+80>>2]=P[a+80>>2];P[b+84>>2]=P[a+84>>2];P[b+88>>2]=P[a+88>>2];P[b+92>>2]=P[a+92>>2];P[b+96>>2]=P[a+96>>2];P[b+100>>2]=P[a+100>>2];P[b+104>>2]=P[a+104>>2];P[b+108>>2]=P[a+108>>2];P[b+112>>2]=P[a+112>>2];P[b+116>>2]=P[a+116>>2];P[b+120>>2]=P[a+120>>2];P[b+124>>2]=P[a+124>>2];P[b+128>>2]=P[a+128>>2];P[b+132>>2]=P[a+132>>2];P[b+136>>2]=P[a+136>>2];P[b+140>>2]=P[a+140>>2];P[b+144>>2]=P[a+144>>2];P[b+148>>2]=P[a+148>>2];P[b+152>>2]=P[a+152>>2];P[b+156>>2]=P[a+156>>2];P[b+160>>2]=P[a+160>>2];P[b+164>>2]=P[a+164>>2];P[b+168>>2]=P[a+168>>2];P[b+172>>2]=P[a+172>>2];P[b+176>>2]=P[a+176>>2];P[b+180>>2]=P[a+188>>2];P[b+184>>2]=P[a+184>>2];P[b+188>>2]=P[a+196>>2];P[b+192>>2]=P[a+192>>2];L[b+196>>2]=M[a+180|0];L[b+200>>2]=M[a+49|0];return 3347}function Pk(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;while(1){n=c;m=L[L[a+12>>2]+((c+d|0)/2<<2)>>2];f=d;while(1){k=L[a+12>>2];j=L[L[m+28>>2]+208>>2];g=(j|0)<0;a:{if(!g){while(1){h=c;l=(c<<2)+k|0;i=L[l>>2];e=L[L[i+28>>2]+208>>2];if((e|0)<0){e=L[L[i+32>>2]+208>>2]}c=h+1|0;if((e|0)<(j|0)){continue}break a}}o=L[L[m+32>>2]+208>>2];while(1){h=c;l=(c<<2)+k|0;i=L[l>>2];e=L[L[i+28>>2]+208>>2];if((e|0)<0){e=L[L[i+32>>2]+208>>2]}c=h+1|0;if((e|0)<(o|0)){continue}break}}b:{if(!g){while(1){c=f;g=L[(c<<2)+k>>2];e=L[L[g+28>>2]+208>>2];if((e|0)<0){e=L[L[g+32>>2]+208>>2]}f=c-1|0;if((e|0)>(j|0)){continue}break b}}j=L[L[m+32>>2]+208>>2];while(1){c=f;g=L[(c<<2)+k>>2];e=L[L[g+28>>2]+208>>2];if((e|0)<0){e=L[L[g+32>>2]+208>>2]}f=c-1|0;if((e|0)>(j|0)){continue}break}}c:{if((c|0)<(h|0)){f=c;c=h;break c}L[l>>2]=g;L[L[a+12>>2]+(c<<2)>>2]=i;f=c-1|0;c=h+1|0}if((c|0)<=(f|0)){continue}break}if((f|0)>(n|0)){Pk(a,b,n,f)}if((c|0)<(d|0)){continue}break}}function FA(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;if(!(M[b+204|0]&3|J[b+504|0]&1)){te(b,a+248|0)}if(L[b+192>>2]){a:{if(!(J[b+204|0]&1)){c=L[a+232>>2];b:{if((c|0)!=L[a+236>>2]){break b}h=c?c<<1:1;if((h|0)<=(c|0)){break b}if(h){L[8513]=L[8513]+1;f=ha[L[6798]](h<<2,16)|0;c=L[a+232>>2]}c:{if((c|0)<=0){break c}if(c>>>0>=4){i=c&-4;while(1){d=e<<2;L[d+f>>2]=L[d+L[a+240>>2]>>2];g=d|4;L[g+f>>2]=L[g+L[a+240>>2]>>2];g=d|8;L[g+f>>2]=L[g+L[a+240>>2]>>2];d=d|12;L[d+f>>2]=L[d+L[a+240>>2]>>2];e=e+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}d=c&3;if(!d){break c}while(1){i=e<<2;L[i+f>>2]=L[i+L[a+240>>2]>>2];e=e+1|0;k=k+1|0;if((d|0)!=(k|0)){continue}break}}e=L[a+240>>2];if(!(!e|!M[a+244|0])){if(e){L[8514]=L[8514]+1;ha[L[6799]](e)}c=L[a+232>>2]}L[a+240>>2]=f;J[a+244|0]=1;L[a+236>>2]=h}L[L[a+240>>2]+(c<<2)>>2]=b;L[a+232>>2]=c+1;break a}if((L[b+216>>2]&-2)!=4){L[b+216>>2]=2}}c=b;b=L[b+204>>2]&3;ha[L[L[a>>2]+36>>2]](a,c,b?2:1,b?-3:-1)}}function bm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=S(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=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);e=S(ha[L[L[a>>2]+48>>2]](a));y=P[b+52>>2];i=P[b+24>>2];j=P[b+20>>2];k=P[b+56>>2];g=P[b+40>>2];h=P[a- -64>>2];f=P[a+80>>2];l=P[b+36>>2];p=P[a+60>>2];q=P[a+76>>2];z=P[b+48>>2];r=P[b+8>>2];s=P[b>>2];t=P[b+4>>2];u=P[b+16>>2];v=P[b+32>>2];w=P[a+56>>2];x=P[a+72>>2];L[c+12>>2]=0;m=k;k=S(S(f+h)*S(.5));n=S(S(x+w)*S(.5));o=S(S(q+p)*S(.5));m=S(m+S(S(g*k)+S(S(v*n)+S(l*o))));h=S(e+S(S(f-h)*S(.5)));f=S(h*S(T(g)));g=S(e+S(S(x-w)*S(.5)));e=S(e+S(S(q-p)*S(.5)));f=S(f+S(S(g*S(T(v)))+S(e*S(T(l)))));P[c+8>>2]=m-f;l=S(y+S(S(k*i)+S(S(n*u)+S(o*j))));i=S(S(h*S(T(i)))+S(S(g*S(T(u)))+S(e*S(T(j)))));P[c+4>>2]=l-i;j=S(z+S(S(k*r)+S(S(n*s)+S(o*t))));e=S(S(h*S(T(r)))+S(S(g*S(T(s)))+S(e*S(T(t)))));P[c>>2]=j-e;L[d+12>>2]=0;P[d+8>>2]=f+m;P[d+4>>2]=i+l;P[d>>2]=e+j}function lG(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;i=L[b>>2];c=L[a+268>>2];a:{b:{if((c|0)<=0){break b}e=L[a+276>>2];b=0;while(1){if(L[e+(b<<2)>>2]!=(i|0)){b=b+1|0;if((c|0)!=(b|0)){continue}break b}break}if((b|0)!=(c|0)){break a}}c:{if(L[a+272>>2]!=(c|0)){break c}g=c?c<<1:1;if((g|0)<=(c|0)){break c}d:{if(!g){e=0;break d}L[8513]=L[8513]+1;e=ha[L[6798]](g<<2,16)|0;c=L[a+268>>2]}e:{if((c|0)<=0){break e}b=0;if(c>>>0>=4){h=c&-4;while(1){d=b<<2;L[d+e>>2]=L[d+L[a+276>>2]>>2];f=d|4;L[f+e>>2]=L[f+L[a+276>>2]>>2];f=d|8;L[f+e>>2]=L[f+L[a+276>>2]>>2];d=d|12;L[d+e>>2]=L[d+L[a+276>>2]>>2];b=b+4|0;j=j+4|0;if((h|0)!=(j|0)){continue}break}}d=c&3;if(!d){break e}while(1){h=b<<2;L[h+e>>2]=L[h+L[a+276>>2]>>2];b=b+1|0;k=k+1|0;if((d|0)!=(k|0)){continue}break}}b=L[a+276>>2];if(!(!b|!M[a+280|0])){if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}c=L[a+268>>2]}L[a+276>>2]=e;J[a+280|0]=1;L[a+272>>2]=g}L[L[a+276>>2]+(c<<2)>>2]=i;L[a+268>>2]=c+1}}function FE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=S(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=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);e=S(ha[L[L[a>>2]+48>>2]](a));y=P[b+52>>2];i=P[b+24>>2];j=P[b+20>>2];k=P[b+56>>2];g=P[b+40>>2];h=P[a+60>>2];f=P[a+76>>2];l=P[b+36>>2];p=P[a+56>>2];q=P[a+72>>2];z=P[b+48>>2];r=P[b+8>>2];s=P[b>>2];t=P[b+4>>2];u=P[b+16>>2];v=P[b+32>>2];w=P[a+52>>2];x=P[a+68>>2];L[c+12>>2]=0;m=k;k=S(S(f+h)*S(.5));n=S(S(x+w)*S(.5));o=S(S(q+p)*S(.5));m=S(m+S(S(g*k)+S(S(v*n)+S(l*o))));h=S(e+S(S(f-h)*S(.5)));f=S(h*S(T(g)));g=S(e+S(S(x-w)*S(.5)));e=S(e+S(S(q-p)*S(.5)));f=S(f+S(S(g*S(T(v)))+S(e*S(T(l)))));P[c+8>>2]=m-f;l=S(y+S(S(k*i)+S(S(n*u)+S(o*j))));i=S(S(h*S(T(i)))+S(S(g*S(T(u)))+S(e*S(T(j)))));P[c+4>>2]=l-i;j=S(z+S(S(k*r)+S(S(n*s)+S(o*t))));e=S(S(h*S(T(r)))+S(S(g*S(T(s)))+S(e*S(T(t)))));P[c>>2]=j-e;L[d+12>>2]=0;P[d+8>>2]=f+m;P[d+4>>2]=i+l;P[d>>2]=e+j}function yB(a,b){a=a|0;b=b|0;var c=S(0),d=S(0);if(M[a+1309|0]){c=S(S(P[a+1256>>2]-P[a+1316>>2])*P[a+1340>>2]);P[a+792>>2]=c*S(S(P[b>>2]*P[a+1364>>2])/S(L[b+48>>2]));P[a+808>>2]=S(T(c))/P[b>>2]}if(M[a+1310|0]){c=S(S(P[a+1260>>2]-P[a+1320>>2])*P[a+1344>>2]);P[a+796>>2]=c*S(S(P[b>>2]*P[a+1368>>2])/S(L[b+48>>2]));P[a+812>>2]=S(T(c))/P[b>>2]}if(M[a+1311|0]){c=S(S(P[a+1264>>2]-P[a+1324>>2])*P[a+1348>>2]);P[a+800>>2]=c*S(S(P[b>>2]*P[a+1372>>2])/S(L[b+48>>2]));P[a+816>>2]=S(T(c))/P[b>>2]}if(M[a+1312|0]){c=S(P[a+1352>>2]*S(-S(P[a+1192>>2]-P[a+1328>>2])));d=P[b>>2];P[a+876>>2]=c*S(S(d*P[a+1376>>2])/S(L[b+48>>2]));P[a+880>>2]=S(T(c))/d}if(M[a+1313|0]){c=S(P[a+1356>>2]*S(-S(P[a+1196>>2]-P[a+1332>>2])));d=P[b>>2];P[a+940>>2]=c*S(S(d*P[a+1380>>2])/S(L[b+48>>2]));P[a+944>>2]=S(T(c))/d}if(M[a+1314|0]){c=S(P[a+1360>>2]*S(-S(P[a+1200>>2]-P[a+1336>>2])));d=P[b>>2];P[a+1004>>2]=c*S(S(d*P[a+1384>>2])/S(L[b+48>>2]));P[a+1008>>2]=S(T(c))/d}kl(a,b)}function En(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;h=fa-48|0;fa=h;L[8513]=L[8513]+1;d=ha[L[6798]](64,16)|0;K[d+6>>1]=g;K[d+4>>1]=f;L[d>>2]=e;e=L[b+4>>2];L[d+16>>2]=L[b>>2];L[d+20>>2]=e;e=L[b+12>>2];L[d+24>>2]=L[b+8>>2];L[d+28>>2]=e;e=L[c+4>>2];L[d+32>>2]=L[c>>2];L[d+36>>2]=e;e=L[c+12>>2];L[d+40>>2]=L[c+8>>2];L[d+44>>2]=e;L[d+8>>2]=0;L[d+52>>2]=0;L[d+56>>2]=0;e=L[b+12>>2];L[h+24>>2]=L[b+8>>2];L[h+28>>2]=e;e=L[b+4>>2];L[h+16>>2]=L[b>>2];L[h+20>>2]=e;b=L[c+12>>2];L[h+40>>2]=L[c+8>>2];L[h+44>>2]=b;b=L[c+4>>2];L[h+32>>2]=L[c>>2];L[h+36>>2]=b;L[d+60>>2]=L[a+144>>2];b=L[a+188>>2]+1|0;L[a+188>>2]=b;L[d+12>>2]=b;c=a+4|0;L[d+48>>2]=Bb(c,h+16|0,d);b=L[a+144>>2];L[d+52>>2]=0;b=(b<<2)+a|0;L[d+56>>2]=L[b+124>>2];e=L[b+124>>2];if(e){L[e+52>>2]=d}L[b+124>>2]=d;if(!M[a+193|0]){L[h+12>>2]=d;L[h+4>>2]=5824;L[h+8>>2]=a;e=c;b=h+16|0;c=h+4|0;Vb(e,L[a+4>>2],b,c);a=a- -64|0;Vb(a,L[a>>2],b,c)}fa=h+48|0;return d|0}function LA(a){a=a|0;var b=0,c=0,d=S(0),e=0,f=0,g=0,h=0;f=fa+-64|0;fa=f;wa(2746);a:{if(M[a+274|0]){c=L[a+8>>2];if((c|0)<=0){break a}while(1){b=L[L[a+16>>2]+(e<<2)>>2];if(!(!(M[b+236|0]&2)|!b|(!L[b+480>>2]|M[b+204|0]&3))){c=b+68|0;g=b+132|0;h=b+148|0;b:{c:{if(!M[a+300|0]){break c}d=P[a+268>>2];if(d==S(0)){break c}d=S(P[a+264>>2]-d);break b}d=S(P[a+264>>2]*P[b+244>>2])}Rb(c,g,h,d,f);b=L[b+480>>2];ha[L[L[b>>2]+12>>2]](b,f);c=L[a+8>>2]}e=e+1|0;if((c|0)>(e|0)){continue}break}break a}c=L[a+232>>2];if((c|0)<=0){break a}while(1){d:{e:{b=L[L[a+240>>2]+(e<<2)>>2];switch(L[b+216>>2]-2|0){case 0:case 3:break d;default:break e}}if(!L[b+480>>2]|M[b+204|0]&3){break d}c=b+68|0;g=b+132|0;h=b+148|0;f:{g:{if(!M[a+300|0]){break g}d=P[a+268>>2];if(d==S(0)){break g}d=S(P[a+264>>2]-d);break f}d=S(P[a+264>>2]*P[b+244>>2])}Rb(c,g,h,d,f);b=L[b+480>>2];ha[L[L[b>>2]+12>>2]](b,f);c=L[a+232>>2]}e=e+1|0;if((c|0)>(e|0)){continue}break}}va();fa=f- -64|0}function EA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!(M[b+204|0]&3|J[b+504|0]&1)){te(b,a+248|0)}if(L[b+192>>2]){a:{if(!(J[b+204|0]&1)){e=L[a+232>>2];b:{if((e|0)!=L[a+236>>2]){break b}j=e?e<<1:1;if((j|0)<=(e|0)){break b}if(j){L[8513]=L[8513]+1;h=ha[L[6798]](j<<2,16)|0;e=L[a+232>>2]}c:{if((e|0)<=0){break c}if(e>>>0>=4){k=e&-4;while(1){f=g<<2;L[f+h>>2]=L[f+L[a+240>>2]>>2];i=f|4;L[i+h>>2]=L[i+L[a+240>>2]>>2];i=f|8;L[i+h>>2]=L[i+L[a+240>>2]>>2];f=f|12;L[f+h>>2]=L[f+L[a+240>>2]>>2];g=g+4|0;l=l+4|0;if((k|0)!=(l|0)){continue}break}}f=e&3;if(!f){break c}while(1){k=g<<2;L[k+h>>2]=L[k+L[a+240>>2]>>2];g=g+1|0;m=m+1|0;if((f|0)!=(m|0)){continue}break}}g=L[a+240>>2];if(!(!g|!M[a+244|0])){if(g){L[8514]=L[8514]+1;ha[L[6799]](g)}e=L[a+232>>2]}L[a+240>>2]=h;J[a+244|0]=1;L[a+236>>2]=j}L[L[a+240>>2]+(e<<2)>>2]=b;L[a+232>>2]=e+1;break a}if((L[b+216>>2]&-2)!=4){L[b+216>>2]=2}}ha[L[L[a>>2]+36>>2]](a,b,c,d)}}function Fk(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c=L[a+488>>2];a:{b:{if((c|0)<=0){break b}f=L[a+496>>2];while(1){if(L[f+(d<<2)>>2]!=(b|0)){d=d+1|0;if((d|0)!=(c|0)){continue}break b}break}if((c|0)!=(d|0)){break a}}c:{if(L[a+492>>2]!=(c|0)){break c}h=c?c<<1:1;if((h|0)<=(c|0)){break c}d:{if(!h){f=0;break d}L[8513]=L[8513]+1;f=ha[L[6798]](h<<2,16)|0;c=L[a+488>>2]}e:{if((c|0)<=0){break e}d=0;if(c>>>0>=4){i=c&-4;while(1){e=d<<2;L[e+f>>2]=L[e+L[a+496>>2]>>2];g=e|4;L[g+f>>2]=L[g+L[a+496>>2]>>2];g=e|8;L[g+f>>2]=L[g+L[a+496>>2]>>2];e=e|12;L[e+f>>2]=L[e+L[a+496>>2]>>2];d=d+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}e=c&3;if(!e){break e}while(1){i=d<<2;L[i+f>>2]=L[i+L[a+496>>2]>>2];d=d+1|0;k=k+1|0;if((e|0)!=(k|0)){continue}break}}d=L[a+496>>2];if(!(!d|!M[a+500|0])){if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}c=L[a+488>>2]}L[a+496>>2]=f;J[a+500|0]=1;L[a+492>>2]=h}L[L[a+496>>2]+(c<<2)>>2]=b;L[a+488>>2]=c+1}L[a+256>>2]=1}function Mh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=fa-176|0;fa=c;L[c+172>>2]=a;L[c+168>>2]=b;b=c+136|0;a=L[c+172>>2];ta(b,a+16|0,a);P[c+132>>2]=.5;e=c+152|0;Ga(e,b,c+132|0);d=c+116|0;La(d,a+16|0,e);tb(c+100|0,L[c+168>>2],e);b=L[c+112>>2];L[c+160>>2]=L[c+108>>2];L[c+164>>2]=b;b=L[c+104>>2];L[c+152>>2]=L[c+100>>2];L[c+156>>2]=b;b=fa-16|0;L[b+12>>2]=L[c+168>>2];L[b+12>>2]=L[b+12>>2];L[b+8>>2]=0;h=c+68|0;df(h,L[b+12>>2]+(L[b+8>>2]<<4)|0);f=fa-16|0;L[f+12>>2]=L[c+168>>2];b=fa-16|0;L[b+12>>2]=L[f+12>>2];L[b+8>>2]=1;f=c+52|0;df(f,L[b+12>>2]+(L[b+8>>2]<<4)|0);g=fa-16|0;L[g+12>>2]=L[c+168>>2];b=fa-16|0;L[b+12>>2]=L[g+12>>2];L[b+8>>2]=2;g=c+36|0;df(g,L[b+12>>2]+(L[b+8>>2]<<4)|0);b=c+84|0;Vd(b,d,h,f,g);La(c+20|0,e,b);d=L[c+24>>2];L[a>>2]=L[c+20>>2];L[a+4>>2]=d;d=L[c+32>>2];L[a+8>>2]=L[c+28>>2];L[a+12>>2]=d;ta(c+4|0,e,b);b=L[c+8>>2];L[a+16>>2]=L[c+4>>2];L[a+20>>2]=b;b=L[c+16>>2];L[a+24>>2]=L[c+12>>2];L[a+28>>2]=b;fa=c+176|0}function yp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;a=L[d+8>>2];e=fa-16|0;fa=e;L[e+12>>2]=L[d+12>>2]+788;L[e+8>>2]=a;a=L[e+8>>2];b=fa-112|0;fa=b;L[b+108>>2]=L[e+12>>2];L[b+104>>2]=a;g=L[b+108>>2];a=fa-16|0;L[a+12>>2]=L[b+104>>2];L[b+100>>2]=L[L[a+12>>2]+4>>2];f=L[b+100>>2];c=b+4|0;pa(c,0,96);mi(c);a=fa-32|0;fa=a;L[a+28>>2]=g;L[a+24>>2]=f;L[a+20>>2]=c;f=fa-16|0;c=L[a+28>>2];L[f+12>>2]=c;L[a+16>>2]=L[L[f+12>>2]+4>>2];a:{if(L[a+24>>2]>2]){L[a+12>>2]=L[a+24>>2];while(1){if(L[a+12>>2]>2]){L[a+12>>2]=L[a+12>>2]+1;continue}break}break a}f=L[a+24>>2];h=fa-16|0;L[h+12>>2]=c;if(L[L[h+12>>2]+4>>2]<(f|0)){ji(c,L[a+24>>2])}L[a+8>>2]=L[a+16>>2];while(1){if(L[a+8>>2]>2]){qf(L[c+12>>2]+R(L[a+8>>2],96)|0,L[a+20>>2]);L[a+8>>2]=L[a+8>>2]+1;continue}break}}L[c+4>>2]=L[a+24>>2];fa=a+32|0;Dh(L[b+104>>2],L[b+100>>2],L[g+12>>2]);fa=b+112|0;fa=e+16|0;fa=d+16|0}function qe(a,b,c){var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0),j=0,k=S(0),l=S(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);j=L[a+4>>2];if(j){rb(j,b,c)}a=L[a>>2];if(a){n=P[a+220>>2];o=P[a+212>>2];p=P[a+216>>2];q=P[a+204>>2];r=P[a+196>>2];s=P[a+200>>2];t=P[a+188>>2];u=P[a+184>>2];v=P[a+180>>2];g=P[c+4>>2];h=P[c+8>>2];k=P[c>>2];d=P[b+8>>2];f=P[b+4>>2];i=P[b>>2];e=P[a+128>>2];l=S(i*e);P[a+244>>2]=l+P[a+244>>2];m=S(e*f);P[a+248>>2]=m+P[a+248>>2];e=S(e*d);P[a+252>>2]=e+P[a+252>>2];P[a+316>>2]=l+P[a+316>>2];P[a+320>>2]=m+P[a+320>>2];P[a+324>>2]=e+P[a+324>>2];e=S(S(k*f)-S(i*g));f=S(S(g*d)-S(f*h));d=S(S(h*i)-S(d*k));g=S(S(t*e)+S(S(v*f)+S(u*d)));P[a+260>>2]=g+P[a+260>>2];h=S(S(q*e)+S(S(r*f)+S(d*s)));P[a+264>>2]=h+P[a+264>>2];d=S(S(n*e)+S(S(o*f)+S(d*p)));P[a+268>>2]=d+P[a+268>>2];P[a+332>>2]=g+P[a+332>>2];P[a+336>>2]=h+P[a+336>>2];P[a+340>>2]=d+P[a+340>>2];L[a+308>>2]=L[a+308>>2]+1}}function jt(a){a=a|0;var b=0,c=S(0),d=0,e=S(0),f=S(0),g=S(0),h=S(0),i=S(0),j=0,k=S(0),l=S(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);j=fa-16|0;fa=j;L[j+12>>2]=a;a=L[j+12>>2];b=L[a+32>>2];c=P[a+652>>2];e=P[a+620>>2];f=P[a+636>>2];l=S(S(P[b+44>>2]*c)+S(S(P[b+36>>2]*e)+S(f*P[b+40>>2])));d=L[a+28>>2];m=P[d+44>>2];g=P[a+584>>2];n=P[d+36>>2];h=P[a+552>>2];i=P[a+568>>2];o=P[d+40>>2];u=S(l*S(S(m*g)+S(S(n*h)+S(i*o))));p=S(S(P[b+12>>2]*c)+S(S(P[b+4>>2]*e)+S(f*P[b+8>>2])));q=P[d+12>>2];r=P[d+4>>2];s=P[d+8>>2];v=S(p*S(S(q*g)+S(S(r*h)+S(i*s))));t=P[d+28>>2];k=S(t*g);g=P[d+20>>2];w=S(g*h);h=P[d+24>>2];k=S(k+S(w+S(i*h)));i=S(S(P[b+28>>2]*c)+S(S(P[b+20>>2]*e)+S(f*P[b+24>>2])));c=P[a+588>>2];e=P[a+556>>2];f=P[a+572>>2];c=Za(S(u+S(v+S(k*i))),S(S(l*S(S(m*c)+S(S(n*e)+S(o*f))))+S(S(p*S(S(q*c)+S(S(r*e)+S(s*f))))+S(S(S(t*c)+S(S(g*e)+S(h*f)))*i))));fa=j+16|0;return S(S(c*P[a+732>>2]))}function dE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=S(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=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);k=P[b+56>>2];n=P[b+36>>2];o=P[b+40>>2];l=P[b+52>>2];h=P[b+20>>2];f=P[a+112>>2];i=P[a+20>>2];p=P[a+36>>2];g=P[b+24>>2];e=P[a+116>>2];j=P[a+24>>2];q=P[a+40>>2];r=P[b+32>>2];m=P[b+48>>2];s=P[b>>2];t=P[b+4>>2];u=P[b+8>>2];v=P[b+16>>2];w=P[a+108>>2];x=P[a+16>>2];y=P[a+32>>2];z=S(ha[L[L[a>>2]+48>>2]](a));A=S(ha[L[L[a>>2]+48>>2]](a));B=S(ha[L[L[a>>2]+48>>2]](a));L[c+12>>2]=0;e=S(S(e*S(q-j))*S(.5));j=S(e*S(T(g)));g=S(S(w*S(y-x))*S(.5));f=S(S(f*S(p-i))*S(.5));h=S(A+S(j+S(S(g*S(T(v)))+S(f*S(T(h))))));P[c+4>>2]=l-h;i=S(z+S(S(e*S(T(u)))+S(S(g*S(T(s)))+S(f*S(T(t))))));P[c>>2]=m-i;e=S(B+S(S(e*S(T(o)))+S(S(g*S(T(r)))+S(f*S(T(n))))));P[c+8>>2]=k-e;L[d+12>>2]=0;P[d+8>>2]=k+e;P[d+4>>2]=l+h;P[d>>2]=m+i}function Dd(a,b,c,d,e){var f=0,g=S(0),h=0,i=S(0),j=0;i=P[c>>2];a:{b:{if(!(i>=P[b>>2])){g=P[c+4>>2];break b}g=P[c+4>>2];if(!(g>=P[b+4>>2])|!(P[b+8>>2]<=P[c+8>>2])|(!(P[b+16>>2]>=P[c+16>>2])|!(P[b+20>>2]>=P[c+20>>2]))){break b}f=0;if(P[b+24>>2]>=P[c+24>>2]){break a}}P[c+4>>2]=g-e;P[c>>2]=i-e;P[c+8>>2]=P[c+8>>2]-e;P[c+16>>2]=P[c+16>>2]+e;P[c+20>>2]=P[c+20>>2]+e;P[c+24>>2]=P[c+24>>2]+e;e=P[d>>2];f=((e>S(0))<<4)+c|0;P[f>>2]=e+P[f>>2];e=P[d+4>>2];f=(e>S(0)?20:4)+c|0;P[f>>2]=e+P[f>>2];e=P[d+8>>2];d=(e>S(0)?24:8)+c|0;P[d>>2]=e+P[d>>2];d=Fd(a,b);c:{if(!d){d=0;break c}h=L[a+8>>2];if((h|0)>=0){if(!h){break c}while(1){f=L[d+32>>2];if(!f){break c}d=f;j=j+1|0;if((h|0)!=(j|0)){continue}break}break c}d=L[a>>2]}f=L[c+4>>2];L[b>>2]=L[c>>2];L[b+4>>2]=f;f=L[c+28>>2];L[b+24>>2]=L[c+24>>2];L[b+28>>2]=f;f=L[c+20>>2];L[b+16>>2]=L[c+16>>2];L[b+20>>2]=f;f=L[c+12>>2];L[b+8>>2]=L[c+8>>2];L[b+12>>2]=f;Ed(a,d,b);f=1}return f}function Ag(a,b,c,d,e,f){var g=0,h=0,i=0;a:{if(M[d+55|0]==(b|0)){break a}g=e<<2;h=L[g+18460>>2];b:{if(S(S(S(P[d+8>>2]*P[c+24>>2])+S(S(P[d>>2]*P[c+16>>2])+S(P[d+4>>2]*P[c+20>>2])))-P[d+16>>2])>2],L[a+g>>2],c,0);if(!a){break a}L[a+32>>2]=d;J[a+52|0]=e;J[(d+e|0)+52|0]=0;L[((e<<2)+d|0)+32>>2]=a;b=L[f>>2];c:{if(b){L[b+36>>2]=a;J[b+53|0]=2;L[a+40>>2]=b;J[a+54|0]=1;break c}L[f+4>>2]=a}L[f>>2]=a;a=f+8|0;break b}J[d+55|0]=b;e=L[g+18472>>2];if(!Ag(a,b,c,L[((h<<2)+d|0)+32>>2],M[(d+h|0)+52|0],f)){break a}if(!Ag(a,b,c,L[((e<<2)+d|0)+32>>2],M[(d+e|0)+52|0],f)){break a}b=L[d+48>>2];if(b){L[b+44>>2]=L[d+44>>2]}b=L[d+44>>2];if(b){L[b+48>>2]=L[d+48>>2]}if(L[a+9280>>2]==(d|0)){L[a+9280>>2]=L[d+48>>2]}b=a+9284|0;L[b>>2]=L[b>>2]-1;L[d+44>>2]=0;L[d+48>>2]=L[a+9288>>2];b=L[a+9288>>2];if(b){L[b+44>>2]=d}L[a+9288>>2]=d;a=a+9292|0}i=1;L[a>>2]=L[a>>2]+1}return i}function Na(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a:{f=(E(b),x(2));c=f<<1;b:{if(!c){break b}h=(E(a),x(2));e=h>>>23&255;if((e|0)==255){break b}if(((E(b),x(2))&2147483647)>>>0<2139095041){break a}}a=S(a*b);return S(a/a)}d=h<<1;if(d>>>0<=c>>>0){return(d|0)==(c|0)?S(a*S(0)):a}g=f>>>23&255;c:{if(!e){e=0;d=h<<9;if((d|0)>=0){while(1){e=e-1|0;d=d<<1;if((d|0)>=0){continue}break}}d=h<<1-e;break c}d=h&8388607|8388608}d:{if(!g){g=0;c=f<<9;if((c|0)>=0){while(1){g=g-1|0;c=c<<1;if((c|0)>=0){continue}break}}c=f<<1-g;break d}c=f&8388607|8388608}f=c;if((e|0)>(g|0)){while(1){e:{c=d-f|0;if((c|0)<0){break e}d=c;if(d){break e}return S(a*S(0))}d=d<<1;e=e-1|0;if((g|0)<(e|0)){continue}break}e=g}f:{c=d-f|0;if((c|0)<0){break f}d=c;if(d){break f}return S(a*S(0))}g:{if(d>>>0>8388607){c=d;break g}while(1){e=e-1|0;f=d>>>0<4194304;c=d<<1;d=c;if(f){continue}break}}return z(2,h&-2147483648|((e|0)>0?c-8388608|e<<23:c>>>1-e|0)),F()}function bc(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;L[8513]=L[8513]+1;e=ha[L[6798]](36,16)|0;L[e+28>>2]=-1;L[e+32>>2]=0;L[e+12>>2]=-1;L[e+16>>2]=-1;L[e+8>>2]=d;L[e+4>>2]=c;L[e>>2]=b;L[e+20>>2]=-1;b=L[a+4>>2];L[e+24>>2]=b;a:{if(L[a+8>>2]!=(b|0)){break a}h=b?b<<1:1;if((h|0)<=(b|0)){break a}b:{if(!h){c=0;break b}L[8513]=L[8513]+1;c=ha[L[6798]](h<<2,16)|0;b=L[a+4>>2]}c:{if((b|0)<=0){break c}d=0;if(b>>>0>=4){i=b&-4;while(1){f=d<<2;L[f+c>>2]=L[f+L[a+12>>2]>>2];g=f|4;L[g+c>>2]=L[g+L[a+12>>2]>>2];g=f|8;L[g+c>>2]=L[g+L[a+12>>2]>>2];f=f|12;L[f+c>>2]=L[f+L[a+12>>2]>>2];d=d+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}f=b&3;if(!f){break c}while(1){i=d<<2;L[i+c>>2]=L[i+L[a+12>>2]>>2];d=d+1|0;k=k+1|0;if((f|0)!=(k|0)){continue}break}}d=L[a+12>>2];if(!(!d|!M[a+16|0])){if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}b=L[a+4>>2]}L[a+12>>2]=c;J[a+16|0]=1;L[a+8>>2]=h}L[L[a+12>>2]+(b<<2)>>2]=e;L[a+4>>2]=b+1;return e}function mC(a){a=a|0;var b=0,c=0,d=0,e=S(0),f=S(0),g=S(0),h=0,i=S(0),j=S(0),k=S(0),l=S(0),m=0,n=0;L[a+16>>2]=2139095039;L[a+20>>2]=2139095039;L[a+40>>2]=-8388609;h=a+32|0;L[h>>2]=-8388609;L[h+4>>2]=-8388609;L[a+24>>2]=2139095039;d=L[a+152>>2];if(d){n=a+16|0;m=L[a+160>>2];i=S(34028234663852886e22);j=S(-34028234663852886e22);k=S(-34028234663852886e22);e=S(-34028234663852886e22);l=S(34028234663852886e22);f=S(34028234663852886e22);while(1){d=d-1|0;c=d<<2;b=L[c+m>>2];if(M[b+48|0]){ha[L[L[b>>2]+68>>2]](b);J[b+48|0]=0;j=P[a+40>>2];k=P[a+36>>2];e=P[a+32>>2];i=P[a+24>>2];l=P[a+20>>2];f=P[a+16>>2];m=L[a+160>>2];b=L[c+m>>2]}g=P[b+16>>2];f=f>g?g:f;P[a+16>>2]=f;c=b+16|0;l=P[(P[b+20>>2]>2];P[a+20>>2]=l;i=P[(P[b+24>>2]>2];P[a+24>>2]=i;c=b+32|0;g=P[c>>2];e=e>2]=e;k=P[(P[b+36>>2]>k?c:h)+4>>2];P[a+36>>2]=k;j=P[(P[b+40>>2]>j?c:h)+8>>2];P[a+40>>2]=j;if(d){continue}break}}}function aD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=S(0),f=0,g=S(0),h=S(0),i=S(0);d=fa-144|0;fa=d;L[d+72>>2]=0;L[d+76>>2]=0;f=d- -64|0;L[f>>2]=0;L[f+4>>2]=0;L[d+108>>2]=0;L[d+112>>2]=0;L[d+116>>2]=0;L[d+120>>2]=0;L[d+52>>2]=0;L[d+56>>2]=0;L[d+84>>2]=0;L[d+88>>2]=0;L[d+80>>2]=1065353216;L[d+92>>2]=0;L[d+96>>2]=0;L[d+100>>2]=1065353216;L[d+104>>2]=0;L[d+44>>2]=0;L[d+48>>2]=0;L[d+60>>2]=1065353216;L[d+124>>2]=-581039253;L[d+40>>2]=17192;e=P[c+8>>2];g=P[c>>2];h=P[c+4>>2];L[d+140>>2]=0;i=S(h*S(0));P[d+136>>2]=e+S(S(g*P[d+68>>2])+i);e=S(e*S(0));P[d+132>>2]=e+S(h+S(g*P[f>>2]));P[d+128>>2]=e+S(g+i);L[d+32>>2]=1566444395;L[d+36>>2]=0;L[d+24>>2]=1566444395;L[d+28>>2]=1566444395;L[d+16>>2]=-581039253;L[d+20>>2]=0;L[d+8>>2]=-581039253;L[d+12>>2]=-581039253;ha[L[L[b>>2]+64>>2]](b,d+40|0,d+8|0,d+24|0);b=L[d+56>>2];L[a+8>>2]=L[d+52>>2];L[a+12>>2]=b;b=L[d+48>>2];L[a>>2]=L[d+44>>2];L[a+4>>2]=b;fa=d+144|0}function Sg(a,b){var c=S(0),d=S(0),e=0,f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=S(0);L[a+4>>2]=35;L[a+8>>2]=0;L[a>>2]=14328;L[a+44>>2]=1025758986;L[a+12>>2]=1065353216;L[a+16>>2]=1065353216;L[a>>2]=14044;L[a+20>>2]=1065353216;L[a+24>>2]=0;L[a+52>>2]=1;L[a>>2]=14692;d=P[b>>2];c=P[b+4>>2];e=d>2]>(e?d:c)?!e:2)<<2)+b>>2]*S(.10000000149011612));d=P[a+44>>2];if(c>2]=a;f=P[L[e+12>>2]+44>>2];P[a+44>>2]=c;c=P[a+36>>2];g=P[a+32>>2];h=P[a+28>>2];i=S(ha[L[L[a>>2]+48>>2]](a));j=S(ha[L[L[a>>2]+48>>2]](a));k=S(ha[L[L[a>>2]+48>>2]](a));L[a+40>>2]=0;P[a+32>>2]=S(d+g)-j;P[a+28>>2]=S(d+h)-i;P[a+36>>2]=S(f+c)-k;e=L[a>>2]}else{e=14692}d=S(ha[L[e+48>>2]](a));c=S(ha[L[L[a>>2]+48>>2]](a));f=S(ha[L[L[a>>2]+48>>2]](a));g=P[b>>2];h=P[b+4>>2];i=P[b+8>>2];L[a+40>>2]=0;L[a+4>>2]=13;P[a+36>>2]=S(i*P[a+20>>2])-f;P[a+32>>2]=S(h*P[a+16>>2])-c;P[a+28>>2]=S(g*P[a+12>>2])-d;return a}function Dx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;a=L[d+8>>2];e=fa-16|0;fa=e;L[e+12>>2]=L[d+12>>2]+112;L[e+8>>2]=a;a=L[e+8>>2];b=fa-16|0;fa=b;L[b+12>>2]=L[e+12>>2];L[b+8>>2]=a;g=L[b+12>>2];a=fa-16|0;L[a+12>>2]=L[b+8>>2];L[b+4>>2]=L[L[a+12>>2]+4>>2];c=L[b+4>>2];P[b>>2]=0;a=fa-32|0;fa=a;L[a+28>>2]=g;L[a+24>>2]=c;L[a+20>>2]=b;f=fa-16|0;c=L[a+28>>2];L[f+12>>2]=c;L[a+16>>2]=L[L[f+12>>2]+4>>2];a:{if(L[a+24>>2]>2]){L[a+12>>2]=L[a+24>>2];while(1){if(L[a+12>>2]>2]){L[a+12>>2]=L[a+12>>2]+1;continue}break}break a}f=L[a+24>>2];h=fa-16|0;L[h+12>>2]=c;if(L[L[h+12>>2]+4>>2]<(f|0)){Wh(c,L[a+24>>2])}L[a+8>>2]=L[a+16>>2];while(1){if(L[a+8>>2]>2]){P[L[c+12>>2]+(L[a+8>>2]<<2)>>2]=P[L[a+20>>2]>>2];L[a+8>>2]=L[a+8>>2]+1;continue}break}}L[c+4>>2]=L[a+24>>2];fa=a+32|0;Th(L[b+8>>2],L[b+4>>2],L[g+12>>2]);fa=b+16|0;fa=e+16|0;fa=d+16|0}function ew(a,b,c){a=a|0;b=b|0;c=S(c);var d=0,e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;P[e+4>>2]=c;b=L[e+8>>2];c=P[e+4>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[e+12>>2];L[a+8>>2]=b;P[a+4>>2]=c;b=L[a+12>>2];d=fa-16|0;L[d+12>>2]=L[a+8>>2];c=S(P[L[d+12>>2]>>2]-P[a+4>>2]);d=fa-16|0;L[d+12>>2]=b;P[L[d+12>>2]>>2]=c;d=fa-16|0;L[d+12>>2]=L[a+8>>2];c=S(P[L[d+12>>2]+4>>2]-P[a+4>>2]);d=fa-16|0;L[d+12>>2]=b;P[L[d+12>>2]+4>>2]=c;d=fa-16|0;L[d+12>>2]=L[a+8>>2];c=S(P[L[d+12>>2]+8>>2]-P[a+4>>2]);d=fa-16|0;L[d+12>>2]=b;P[L[d+12>>2]+8>>2]=c;d=fa-16|0;L[d+12>>2]=L[a+8>>2]+16;c=S(P[L[d+12>>2]>>2]+P[a+4>>2]);d=fa-16|0;b=b+16|0;L[d+12>>2]=b;P[L[d+12>>2]>>2]=c;d=fa-16|0;L[d+12>>2]=L[a+8>>2]+16;c=S(P[L[d+12>>2]+4>>2]+P[a+4>>2]);d=fa-16|0;L[d+12>>2]=b;P[L[d+12>>2]+4>>2]=c;d=fa-16|0;L[d+12>>2]=L[a+8>>2]+16;c=S(P[L[d+12>>2]+8>>2]+P[a+4>>2]);d=fa-16|0;L[d+12>>2]=b;P[L[d+12>>2]+8>>2]=c;fa=a+16|0;fa=e+16|0}function uy(a,b,c,d){a=a|0;b=S(b);c=S(c);d=S(d);var e=0,f=0;e=fa-16|0;fa=e;L[e+12>>2]=a;P[e+8>>2]=b;P[e+4>>2]=c;P[e>>2]=d;a=fa-80|0;fa=a;L[a+76>>2]=L[e+12>>2];L[a+72>>2]=e+8;L[a+68>>2]=e+4;L[a+64>>2]=e;f=L[a+76>>2];P[a+60>>2]=P[L[a+72>>2]>>2]*S(.5);P[a+56>>2]=P[L[a+68>>2]>>2]*S(.5);P[a+52>>2]=P[L[a+64>>2]>>2]*S(.5);P[a+48>>2]=Ra(P[a+60>>2]);P[a+44>>2]=Qa(P[a+60>>2]);P[a+40>>2]=Ra(P[a+56>>2]);P[a+36>>2]=Qa(P[a+56>>2]);P[a+32>>2]=Ra(P[a+52>>2]);P[a+28>>2]=Qa(P[a+52>>2]);P[a+24>>2]=S(S(P[a+28>>2]*P[a+40>>2])*P[a+48>>2])-S(S(P[a+32>>2]*P[a+36>>2])*P[a+44>>2]);P[a+20>>2]=S(S(P[a+32>>2]*P[a+36>>2])*P[a+48>>2])+S(S(P[a+28>>2]*P[a+40>>2])*P[a+44>>2]);P[a+16>>2]=S(S(P[a+32>>2]*P[a+40>>2])*P[a+44>>2])-S(S(P[a+28>>2]*P[a+36>>2])*P[a+48>>2]);P[a+12>>2]=S(S(P[a+32>>2]*P[a+40>>2])*P[a+48>>2])+S(S(P[a+28>>2]*P[a+36>>2])*P[a+44>>2]);vc(f,a+24|0,a+20|0,a+16|0,a+12|0);fa=a+80|0;fa=e+16|0}function Za(a,b){var c=0,d=0,e=0,f=S(0),g=0;if(!(((E(a),x(2))&2147483647)>>>0<2139095041&((E(b),x(2))&2147483647)>>>0<=2139095040)){return S(a+b)}c=(E(b),x(2));if((c|0)==1065353216){return Tj(a)}g=c>>>30&2;d=(E(a),x(2));e=g|d>>>31;a:{b:{d=d&2147483647;c:{if(!d){d:{switch(e-2|0){case 0:return S(3.1415927410125732);case 1:break d;default:break c}}return S(-3.1415927410125732)}c=c&2147483647;if((c|0)!=2139095040){if(!c|!((d|0)!=2139095040&d>>>0<=c+218103808>>>0)){break a}e:{if(g){f=S(0);if(c>>>0>d+218103808>>>0){break e}}f=Tj(S(T(S(a/b))))}a=f;f:{switch(e|0){case 1:return S(-a);case 2:return S(S(3.1415927410125732)-S(a+S(8.742277657347586e-8)));case 0:break c;default:break f}}return S(S(a+S(8.742277657347586e-8))+S(-3.1415927410125732))}if((d|0)==2139095040){break b}a=P[(e<<2)+23308>>2]}return a}return P[(e<<2)+23292>>2]}return z(2,(E(a),x(2))&-2147483648|1070141403),F()}function SC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=fa-128|0;fa=g;e=yb(g+24|0);L[e+4>>2]=1;h=L[b+12>>2];f=e- -64|0;L[f>>2]=L[b+8>>2];L[f+4>>2]=h;f=L[b+4>>2];L[e+56>>2]=L[b>>2];L[e+60>>2]=f;f=L[b+20>>2];L[e+72>>2]=L[b+16>>2];L[e+76>>2]=f;f=L[b+28>>2];L[e+80>>2]=L[b+24>>2];L[e+84>>2]=f;f=L[b+40>>2];h=L[b+44>>2];i=L[b+32>>2];b=L[b+36>>2];L[e>>2]=2036;L[e+96>>2]=f;L[e+100>>2]=h;L[e+88>>2]=i;L[e+92>>2]=b;P[e+44>>2]=P[a+24>>2];b=L[a+4>>2];i=M[a+20|0];a:{if(i){L[b+28>>2]=c;f=b+24|0;break a}L[b+36>>2]=c;f=b+32|0}L[f>>2]=d;f=L[a+12>>2];h=L[f+8>>2];j=L[f+12>>2];L[g+20>>2]=d;L[g+16>>2]=c;L[g+12>>2]=j;L[g+8>>2]=h;L[g+4>>2]=e;L[g>>2]=f;d=L[b+16>>2];c=L[d+8>>2];b:{if(L[c+8>>2]==(h|0)){d=d+8|0;break b}c=L[d+12>>2];d=d+12|0}L[d>>2]=g;vd(b,L[a+8>>2],g,L[a+16>>2],e,(i|0)!=0);a=L[L[a+4>>2]+16>>2];L[(L[L[a+8>>2]+8>>2]==L[g+8>>2]?8:12)+a>>2]=c;Oa(e);fa=g+128|0}function aF(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=S(0),f=S(0),g=0,h=S(0),i=S(0),j=0,k=0;e=S(P[b+60>>2]*S(.5));j=L[b+64>>2];k=L[b+68>>2];g=k<<2;d=P[c+8>>2];i=S(d*d);d=P[c>>2];f=S(d*d);d=P[c+4>>2];a:{b:{if(P[g+c>>2]>S(P[b+52>>2]*S(_(S(i+S(f+S(d*d))))))){L[(j<<2)+a>>2]=0;P[a+g>>2]=e;g=L[b+72>>2];break b}d=P[(j<<2)+c>>2];g=L[b+72>>2];f=P[(g<<2)+c>>2];h=S(_(S(S(d*d)+S(f*f))));if(h>S(1.1920928955078125e-7)){i=d;d=S(P[b+56>>2]/h);P[(j<<2)+a>>2]=i*d;P[(k<<2)+a>>2]=-e;e=S(f*d);break a}L[(j<<2)+a>>2]=0;P[(k<<2)+a>>2]=-e}e=S(0)}P[(g<<2)+a>>2]=e;if(S(ha[L[L[b>>2]+48>>2]](b))!=S(0)){e=P[c+4>>2];d=P[c>>2];f=P[c+8>>2];h=S(ha[L[L[b>>2]+48>>2]](b));b=S(S(f*f)+S(S(d*d)+S(e*e)))>2]=P[a>>2]+S(h*S(i*d));P[a+4>>2]=P[a+4>>2]+S(h*S(e*d));P[a+8>>2]=P[a+8>>2]+S(h*S(f*d))}}function xF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=S(0),g=S(0),h=0,i=S(0),j=S(0),k=S(0),l=S(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=S(0),v=S(0),w=S(0),x=S(0),y=S(0);e=fa-16|0;fa=e;m=a+28|0;h=L[a+52>>2];g=P[m+((h+2|0)%3<<2)>>2];P[e+8>>2]=g;P[e+4>>2]=g;P[e>>2]=g;h=h<<2;P[h+e>>2]=g+P[h+m>>2];i=S(ha[L[L[a>>2]+48>>2]](a));j=S(ha[L[L[a>>2]+48>>2]](a));f=S(ha[L[L[a>>2]+48>>2]](a));g=P[b+52>>2];k=P[b+20>>2];p=P[b+24>>2];n=P[b+56>>2];l=P[b+36>>2];q=P[b+40>>2];o=P[b+48>>2];r=P[b+8>>2];s=P[b>>2];t=P[b+4>>2];u=P[b+16>>2];v=P[b+32>>2];w=P[e>>2];x=P[e+4>>2];y=P[e+8>>2];L[c+12>>2]=0;f=S(f+y);i=S(i+w);j=S(j+x);l=S(S(f*S(T(q)))+S(S(i*S(T(v)))+S(j*S(T(l)))));P[c+8>>2]=n-l;k=S(S(f*S(T(p)))+S(S(i*S(T(u)))+S(j*S(T(k)))));P[c+4>>2]=g-k;f=S(S(f*S(T(r)))+S(S(i*S(T(s)))+S(j*S(T(t)))));P[c>>2]=o-f;L[d+12>>2]=0;P[d+8>>2]=n+l;P[d+4>>2]=k+g;P[d>>2]=f+o;fa=e+16|0}function kA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=S(0),f=S(0),g=S(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=S(0);e=S(1);d=L[b>>2];if(!((d|0)==L[a+80>>2]|M[d+204|0]&4|S(-P[a+84>>2])<=S(S(P[b+16>>2]*S(P[a+36>>2]-P[a+20>>2]))+S(S(P[b+8>>2]*S(P[a+28>>2]-P[a+12>>2]))+S(S(P[a+32>>2]-P[a+16>>2])*P[b+12>>2]))))){e=P[b+40>>2];L[a+76>>2]=d;P[a+4>>2]=e;a:{if(c){c=b+8|0;d=L[c+4>>2];L[a+44>>2]=L[c>>2];L[a+48>>2]=d;d=L[c+12>>2];L[a+52>>2]=L[c+8>>2];L[a+56>>2]=d;break a}h=P[d+12>>2];i=P[d+8>>2];j=P[d+28>>2];k=P[d+20>>2];l=P[d+24>>2];m=P[d+44>>2];n=P[d+36>>2];o=P[d+40>>2];p=P[d+4>>2];e=P[b+16>>2];f=P[b+8>>2];g=P[b+12>>2];L[a+56>>2]=0;P[a+52>>2]=S(m*e)+S(S(n*f)+S(g*o));P[a+48>>2]=S(j*e)+S(S(k*f)+S(g*l));P[a+44>>2]=S(h*e)+S(S(p*f)+S(i*g))}c=L[b+28>>2];L[a+60>>2]=L[b+24>>2];L[a+64>>2]=c;c=L[b+36>>2];L[a+68>>2]=L[b+32>>2];L[a+72>>2]=c;e=P[b+40>>2]}return S(e)}function NB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=L[b+4>>2];L[a+300>>2]=L[b>>2];L[a+304>>2]=d;d=L[b+12>>2];L[a+308>>2]=L[b+8>>2];L[a+312>>2]=d;d=L[b+28>>2];L[a+324>>2]=L[b+24>>2];L[a+328>>2]=d;d=L[b+20>>2];L[a+316>>2]=L[b+16>>2];L[a+320>>2]=d;d=L[b+44>>2];L[a+340>>2]=L[b+40>>2];L[a+344>>2]=d;d=L[b+36>>2];L[a+332>>2]=L[b+32>>2];L[a+336>>2]=d;d=L[b+60>>2];L[a+356>>2]=L[b+56>>2];L[a+360>>2]=d;d=L[b+52>>2];L[a+348>>2]=L[b+48>>2];L[a+352>>2]=d;b=L[c+12>>2];L[a+372>>2]=L[c+8>>2];L[a+376>>2]=b;b=L[c+4>>2];L[a+364>>2]=L[c>>2];L[a+368>>2]=b;b=L[c+20>>2];L[a+380>>2]=L[c+16>>2];L[a+384>>2]=b;b=L[c+28>>2];L[a+388>>2]=L[c+24>>2];L[a+392>>2]=b;b=L[c+36>>2];L[a+396>>2]=L[c+32>>2];L[a+400>>2]=b;b=L[c+44>>2];L[a+404>>2]=L[c+40>>2];L[a+408>>2]=b;b=L[c+60>>2];L[a+420>>2]=L[c+56>>2];L[a+424>>2]=b;b=L[c+52>>2];L[a+412>>2]=L[c+48>>2];L[a+416>>2]=b;ha[L[L[a>>2]+8>>2]](a)}function Lb(a,b,c){var d=0,e=S(0),f=0;d=fa-32|0;fa=d;L[d+28>>2]=a;L[d+24>>2]=b;L[d+20>>2]=c;b=L[d+28>>2];a:{if(L[b+44>>2]==1){L[d+16>>2]=L[b+36>>2]+R(L[d+24>>2],L[b+48>>2]);f=Q[L[d+16>>2]>>3];a=fa-16|0;b=b+12|0;L[a+12>>2]=b;e=S(f*+P[L[a+12>>2]>>2]);L[a+12>>2]=L[d+20>>2];P[L[a+12>>2]>>2]=e;f=Q[L[d+16>>2]+8>>3];L[a+12>>2]=b;e=S(f*+P[L[a+12>>2]+4>>2]);L[a+12>>2]=L[d+20>>2];P[L[a+12>>2]+4>>2]=e;f=Q[L[d+16>>2]+16>>3];L[a+12>>2]=b;e=S(f*+P[L[a+12>>2]+8>>2]);break a}L[d+12>>2]=L[b+36>>2]+R(L[d+24>>2],L[b+48>>2]);e=P[L[d+12>>2]>>2];a=fa-16|0;b=b+12|0;L[a+12>>2]=b;e=S(e*P[L[a+12>>2]>>2]);L[a+12>>2]=L[d+20>>2];P[L[a+12>>2]>>2]=e;e=P[L[d+12>>2]+4>>2];L[a+12>>2]=b;e=S(e*P[L[a+12>>2]+4>>2]);L[a+12>>2]=L[d+20>>2];P[L[a+12>>2]+4>>2]=e;e=P[L[d+12>>2]+8>>2];L[a+12>>2]=b;e=S(e*P[L[a+12>>2]+8>>2])}a=fa-16|0;L[a+12>>2]=L[d+20>>2];P[L[a+12>>2]+8>>2]=e;fa=d+32|0}function cw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;f=fa-16|0;fa=f;L[f+12>>2]=a;L[f+8>>2]=b;L[f+4>>2]=c;g=oa(104);a=L[f+12>>2];b=L[f+8>>2];d=L[f+4>>2];c=fa-16|0;fa=c;L[c+12>>2]=g;L[c+8>>2]=a;L[c+4>>2]=b;L[c>>2]=d;a=L[c+8>>2];d=L[c+4>>2];e=L[c>>2];b=fa-32|0;fa=b;h=L[c+12>>2];L[b+24>>2]=h;L[b+20>>2]=a;L[b+16>>2]=d;L[b+12>>2]=e;a=L[b+24>>2];L[b+28>>2]=a;yb(a);L[a>>2]=2236;d=a+56|0;e=d+48|0;while(1){L[(fa-16|0)+12>>2]=d;d=d+16|0;if((e|0)!=(d|0)){continue}break}L[a+4>>2]=1;d=L[b+20>>2];e=L[d+4>>2];L[a+56>>2]=L[d>>2];L[a+60>>2]=e;e=L[d+12>>2];L[a+64>>2]=L[d+8>>2];L[a+68>>2]=e;d=L[b+16>>2];e=L[d+4>>2];L[a+72>>2]=L[d>>2];L[a+76>>2]=e;e=L[d+12>>2];L[a+80>>2]=L[d+8>>2];L[a+84>>2]=e;d=L[b+12>>2];e=L[d+4>>2];L[a+88>>2]=L[d>>2];L[a+92>>2]=e;e=L[d+12>>2];L[a+96>>2]=L[d+8>>2];L[a+100>>2]=e;fa=b+32|0;L[h>>2]=2036;fa=c+16|0;fa=f+16|0;return g|0}function Tz(a,b,c){a=a|0;b=S(b);c=c|0;var d=S(0),e=0,f=S(0),g=S(0),h=S(0),i=S(0),j=S(0);e=L[a+8>>2];if(e){ib(e,0)}e=L[a+12>>2];if(e){ib(e,0)}e=L[a+20>>2];if(e){ib(e,0)}e=L[a+24>>2];if(e){ib(e,0)}e=L[a+156>>2];L[a+156>>2]=e+1;J[a+152|0]=(e|0)>=L[a+160>>2];if(!e){L[a+84>>2]=0;f=S(S(1)/b);d=P[a+64>>2];b=S(f*S(P[a+72>>2]*d));g=S(f*S(d*P[a+80>>2]));f=S(f*S(d*P[a+76>>2]));d=P[a+68>>2];if(d>S(0)){L[a+100>>2]=0;h=S(d*g);i=S(b*d);j=S(d*f);P[a+96>>2]=S(P[a+144>>2]*h)+S(S(P[a+136>>2]*i)+S(j*P[a+140>>2]));P[a+92>>2]=S(P[a+128>>2]*h)+S(S(P[a+120>>2]*i)+S(j*P[a+124>>2]));P[a+88>>2]=S(P[a+112>>2]*h)+S(S(P[a+104>>2]*i)+S(j*P[a+108>>2]));d=S(S(1)-d);g=S(d*g);f=S(d*f);b=S(b*d)}d=S(S(1)/S(c|0));P[a+80>>2]=d*g;P[a+76>>2]=d*f;P[a+72>>2]=d*b;return}a=a+72|0;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}function QE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=S(0),f=0,g=0,h=S(0),i=S(0),j=0,k=S(0),l=S(0),m=S(0),n=S(0),o=S(0),p=0,q=S(0),r=0,s=0;d=L[b+96>>2];if((d|0)>0){r=d&1;l=P[b+12>>2];h=S(P[c>>2]*l);m=P[b+20>>2];i=S(P[c+8>>2]*m);n=P[b+16>>2];k=S(P[c+4>>2]*n);j=L[b+104>>2];a:{if((d|0)==1){b=0;c=-1;e=S(-34028234663852886e22);break a}s=d&-2;b=0;c=-1;e=S(-34028234663852886e22);d=0;while(1){f=(b<<4)+j|0;o=S(S(P[f+8>>2]*i)+S(S(P[f>>2]*h)+S(k*P[f+4>>2])));f=o>e;p=b|1;g=(p<<4)+j|0;q=S(S(P[g+8>>2]*i)+S(S(P[g>>2]*h)+S(k*P[g+4>>2])));e=f?o:e;g=q>e;e=g?q:e;c=g?p:f?b:c;b=b+2|0;d=d+2|0;if((s|0)!=(d|0)){continue}break}}if(r){d=b;b=(b<<4)+j|0;c=S(S(P[b+8>>2]*i)+S(S(P[b>>2]*h)+S(k*P[b+4>>2])))>e?d:c}b=(c<<4)+j|0;e=P[b>>2];h=P[b+4>>2];i=P[b+8>>2];L[a+12>>2]=0;P[a+8>>2]=m*i;P[a+4>>2]=n*h;P[a>>2]=l*e;return}L[a>>2]=0;L[a+4>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0}function Zz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=S(0),h=S(0),i=S(0),j=S(0);e=fa-96|0;fa=e;L[e+24>>2]=-65535;L[e+28>>2]=0;L[e+16>>2]=1065353216;L[e+20>>2]=0;L[e+12>>2]=1476;f=L[b+12>>2];L[e+40>>2]=L[b+8>>2];L[e+44>>2]=f;f=L[b+4>>2];L[e+32>>2]=L[b>>2];L[e+36>>2]=f;f=L[c+12>>2];L[e+56>>2]=L[c+8>>2];L[e+60>>2]=f;f=L[c+4>>2];L[e+48>>2]=L[c>>2];L[e+52>>2]=f;a=L[a+4>>2];ha[L[L[a>>2]+32>>2]](a,b,c,e+12|0);b=0;a=L[e+20>>2];if(!(!a|!(M[a+236|0]&2)|M[a+204|0]&4)){b=L[e+84>>2];L[d>>2]=L[e+80>>2];L[d+4>>2]=b;b=L[e+92>>2];L[d+8>>2]=L[e+88>>2];L[d+12>>2]=b;b=L[e+68>>2];L[d+16>>2]=L[e+64>>2];L[d+20>>2]=b;b=L[e+76>>2];L[d+24>>2]=L[e+72>>2];L[d+28>>2]=b;g=P[d+24>>2];h=P[d+16>>2];i=P[d+20>>2];j=S(S(1)/S(_(S(S(g*g)+S(S(h*h)+S(i*i))))));P[d+16>>2]=h*j;P[d+24>>2]=g*j;P[d+20>>2]=i*j;P[d+32>>2]=P[e+16>>2];b=a}fa=e+96|0;return b|0}function PC(a,b,c){a=a|0;b=S(b);c=c|0;var d=S(0),e=S(0),f=0,g=0,h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=0,n=0,o=0;ha[L[L[a>>2]+112>>2]](a);L[c+8>>2]=0;L[c+12>>2]=0;L[c>>2]=0;L[c+4>>2]=0;f=L[a+184>>2];a:{if(!f){break a}b=S(b/S(f|0));m=L[a+192>>2];n=L[a+180>>2];if(L[a+188>>2]==1){while(1){f=f-1|0;g=R(m,f)+n|0;o=Q[g+16>>3];d=P[a+164>>2];h=S(Q[g>>3]*+P[a+156>>2]);h=S(h*h);e=S(Q[g+8>>3]*+P[a+160>>2]);e=S(e*e);i=S(S(b*S(h+e))+i);P[c+8>>2]=i;d=S(o*+d);d=S(d*d);j=S(S(b*S(h+d))+j);P[c+4>>2]=j;k=S(k+S(b*S(e+d)));P[c>>2]=k;if(f){continue}break}break a}while(1){f=f-1|0;g=R(m,f)+n|0;d=P[g+8>>2];h=P[a+164>>2];e=S(P[a+156>>2]*P[g>>2]);e=S(e*e);l=S(P[g+4>>2]*P[a+160>>2]);l=S(l*l);i=S(S(b*S(e+l))+i);P[c+8>>2]=i;d=S(d*h);d=S(d*d);j=S(S(b*S(e+d))+j);P[c+4>>2]=j;k=S(k+S(b*S(l+d)));P[c>>2]=k;if(f){continue}break}}ha[L[L[a>>2]+116>>2]](a)}function bf(a,b,c){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;a:{e=L[((b<<2)+a|0)+68>>2]+(c<<2)|0;d=N[e+6>>1];if(!d){break a}j=b<<1;f=L[a+60>>2]+(N[e+2>>1]<<6)|0;g=f+54|0;l=j+g|0;c=e+4|0;i=f+48|0;b=1<>1];if(h>>>0>N[e>>1]){break a}m=L[a+60>>2];b=m+(d<<6)|0;if(h&1){b=(b+j|0)+54|0}else{d=b+k|0;b:{if(N[g>>1]>1]|N[d+54>>1]>1]){break b}d=b+f|0;if(N[o>>1]>1]|N[d+54>>1]>1]){break b}d=L[a+92>>2];h=(N[e+2>>1]<<6)+m|0;ha[L[L[d>>2]+8>>2]](d,h,b)|0;d=L[a+96>>2];if(!d){break b}ha[L[L[d>>2]+8>>2]](d,h,b)|0}b=(b+j|0)+48|0}K[b>>1]=N[b>>1]-1;K[l>>1]=N[l>>1]+1;b=N[e>>1]|N[e+2>>1]<<16;d=N[c>>1]|N[c+2>>1]<<16;K[e>>1]=d;K[e+2>>1]=d>>>16;K[c>>1]=b;K[c+2>>1]=b>>>16;e=e+4|0;b=c;c=b+4|0;d=N[b+6>>1];if(d){continue}break}}}function hx(a){a=a|0;var b=S(0),c=S(0),d=0,e=0,f=0,g=S(0),h=S(0),i=S(0),j=S(0),k=0,l=S(0),m=S(0);f=fa-16|0;fa=f;L[f+12>>2]=a;k=oa(56);e=L[f+12>>2];a=yb(k);L[a+4>>2]=0;L[a>>2]=11860;c=P[e>>2];b=P[e+4>>2];d=c>2]>(d?c:b)?!d:2)<<2)+e>>2]*S(.10000000149011612));c=P[a+44>>2];if(b>2]=a;g=P[L[d+12>>2]+44>>2];P[a+44>>2]=b;b=P[a+36>>2];h=P[a+32>>2];i=P[a+28>>2];j=S(ha[L[L[a>>2]+48>>2]](a));l=S(ha[L[L[a>>2]+48>>2]](a));m=S(ha[L[L[a>>2]+48>>2]](a));L[a+40>>2]=0;P[a+32>>2]=S(c+h)-l;P[a+28>>2]=S(c+i)-j;P[a+36>>2]=S(g+b)-m;d=L[a>>2]}else{d=11860}c=S(ha[L[d+48>>2]](a));b=S(ha[L[L[a>>2]+48>>2]](a));g=S(ha[L[L[a>>2]+48>>2]](a));h=P[e>>2];i=P[e+4>>2];j=P[e+8>>2];L[a+40>>2]=0;P[a+36>>2]=S(j*P[a+20>>2])-g;P[a+32>>2]=S(i*P[a+16>>2])-b;P[a+28>>2]=S(h*P[a+12>>2])-c;fa=f+16|0;return k|0}function ws(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=S(0),f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=S(0);d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;b=L[d+8>>2];a=L[d+12>>2];a:{if(M[a+84|0]){e=P[a+8>>2];f=P[a>>2];j=P[a+4>>2];g=S(S(e*P[a+60>>2])+S(S(f*P[a+52>>2])+S(j*P[a+56>>2])));if(g>=S(-.10000000149011612)){L[a+272>>2]=0;P[a+268>>2]=10;break a}g=S(S(-1)/g);i=e;e=P[b+328>>2];h=S(P[a+20>>2]-P[b+56>>2]);k=S(P[a+16>>2]-P[b+52>>2]);l=P[b+332>>2];m=S(i*S(P[b+320>>2]+S(S(e*h)-S(k*l))));i=f;f=S(P[a+24>>2]-P[b+60>>2]);n=h;h=P[b+336>>2];P[a+272>>2]=g*S(m+S(S(i*S(P[b+312>>2]+S(S(l*f)-S(n*h))))+S(j*S(S(S(h*k)-S(f*e))+P[b+316>>2]))));P[a+268>>2]=g;break a}L[a+272>>2]=0;L[a+12>>2]=0;P[a+32>>2]=P[a+204>>2];P[a>>2]=-P[a+52>>2];P[a+8>>2]=-P[a+60>>2];P[a+4>>2]=-P[a+56>>2];P[a+268>>2]=1}fa=d+16|0}function fu(a){a=a|0;var 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),l=0,m=S(0),n=S(0),o=S(0),p=S(0),q=S(0);l=fa-16|0;fa=l;L[l+12>>2]=a;a=L[l+12>>2];L[a+308>>2]=0;L[a+292>>2]=0;L[a+276>>2]=0;c=P[a+44>>2];h=P[a+404>>2];d=S(c*h);e=P[a+36>>2];i=P[a+396>>2];f=S(e*i);g=P[a+40>>2];q=P[a+400>>2];b=S(g*q);P[a+304>>2]=S(c*d)+S(S(e*f)+S(g*b));m=P[a+28>>2];n=P[a+20>>2];o=P[a+24>>2];P[a+300>>2]=S(m*d)+S(S(n*f)+S(o*b));p=P[a+12>>2];j=S(p*d);d=P[a+4>>2];k=S(d*f);f=P[a+8>>2];P[a+296>>2]=j+S(k+S(f*b));b=S(h*m);j=S(i*n);k=S(q*o);P[a+288>>2]=S(c*b)+S(S(e*j)+S(g*k));P[a+284>>2]=S(m*b)+S(S(n*j)+S(o*k));P[a+280>>2]=S(p*b)+S(S(d*j)+S(f*k));b=c;c=S(p*h);h=e;e=S(d*i);i=g;g=S(f*q);P[a+272>>2]=S(b*c)+S(S(h*e)+S(i*g));P[a+268>>2]=S(m*c)+S(S(n*e)+S(g*o));P[a+264>>2]=S(p*c)+S(S(d*e)+S(f*g));fa=l+16|0}function um(a,b,c,d){var e=0,f=0,g=0;e=fa+-64|0;fa=e;g=R(b,80);f=g+L[a+24>>2]|0;b=L[c+4>>2];L[f>>2]=L[c>>2];L[f+4>>2]=b;b=L[c+12>>2];L[f+8>>2]=L[c+8>>2];L[f+12>>2]=b;b=L[c+28>>2];L[f+24>>2]=L[c+24>>2];L[f+28>>2]=b;b=L[c+20>>2];L[f+16>>2]=L[c+16>>2];L[f+20>>2]=b;b=L[c+44>>2];L[f+40>>2]=L[c+40>>2];L[f+44>>2]=b;b=L[c+36>>2];L[f+32>>2]=L[c+32>>2];L[f+36>>2]=b;b=L[c+60>>2];L[f+56>>2]=L[c+56>>2];L[f+60>>2]=b;b=L[c+52>>2];L[f+48>>2]=L[c+48>>2];L[f+52>>2]=b;if(L[a+64>>2]){b=L[(L[a+24>>2]+g|0)+64>>2];ha[L[L[b>>2]+8>>2]](b,c,e+48|0,e+32|0);c=L[e+60>>2];L[e+8>>2]=L[e+56>>2];L[e+12>>2]=c;b=L[e+44>>2];L[e+24>>2]=L[e+40>>2];L[e+28>>2]=b;b=L[e+36>>2];L[e+16>>2]=L[e+32>>2];L[e+20>>2]=b;b=L[e+52>>2];L[e>>2]=L[e+48>>2];L[e+4>>2]=b;Gc(L[a+64>>2],L[(L[a+24>>2]+g|0)+76>>2],e)}if(d){ha[L[L[a>>2]+68>>2]](a)}fa=e- -64|0}function Pq(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=fa-32|0;fa=c;L[c+28>>2]=a;if(!M[29900]){L[(fa-16|0)+12>>2]=29884;J[29900]=1}a=fa-16|0;fa=a;L[a+12>>2]=L[c+28>>2];g=L[a+12>>2];L[a+8>>2]=L[g+116>>2]+4;d=fa-16|0;L[d+12>>2]=L[a+8>>2];b=fa-16|0;L[b+12>>2]=L[d+12>>2];L[b+8>>2]=0;d=fa-16|0;L[d+12>>2]=L[b+12>>2]+(L[b+8>>2]<<4);d=L[d+12>>2];h=L[g+128>>2]<<2;e=fa-16|0;L[e+12>>2]=L[a+8>>2];b=fa-16|0;L[b+12>>2]=L[e+12>>2];L[b+8>>2]=1;e=fa-16|0;L[e+12>>2]=L[b+12>>2]+(L[b+8>>2]<<4);e=L[e+12>>2];i=L[g+128>>2]<<2;f=fa-16|0;L[f+12>>2]=L[a+8>>2];b=fa-16|0;L[b+12>>2]=L[f+12>>2];L[b+8>>2]=2;f=fa-16|0;L[f+12>>2]=L[b+12>>2]+(L[b+8>>2]<<4);la(c+12|0,d+h|0,e+i|0,L[f+12>>2]+(L[g+128>>2]<<2)|0);fa=a+16|0;a=L[c+16>>2];L[7471]=L[c+12>>2];L[7472]=a;a=L[c+24>>2];L[7473]=L[c+20>>2];L[7474]=a;fa=c+32|0;return 29884}function BA(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;d=L[a+212>>2];a:{if((d|0)!=L[a+216>>2]){break a}i=d?d<<1:1;if((i|0)<=(d|0)){break a}if(i){L[8513]=L[8513]+1;g=ha[L[6798]](i<<2,16)|0;d=L[a+212>>2]}b:{if((d|0)<=0){break b}if(d>>>0>=4){j=d&-4;while(1){e=f<<2;L[e+g>>2]=L[e+L[a+220>>2]>>2];h=e|4;L[h+g>>2]=L[h+L[a+220>>2]>>2];h=e|8;L[h+g>>2]=L[h+L[a+220>>2]>>2];e=e|12;L[e+g>>2]=L[e+L[a+220>>2]>>2];f=f+4|0;k=k+4|0;if((j|0)!=(k|0)){continue}break}}e=d&3;if(!e){break b}while(1){j=f<<2;L[j+g>>2]=L[j+L[a+220>>2]>>2];f=f+1|0;l=l+1|0;if((e|0)!=(l|0)){continue}break}}f=L[a+220>>2];if(!(!f|!M[a+224|0])){if(f){L[8514]=L[8514]+1;ha[L[6799]](f)}d=L[a+212>>2]}L[a+220>>2]=g;J[a+224|0]=1;L[a+216>>2]=i}L[L[a+220>>2]+(d<<2)>>2]=b;L[a+212>>2]=d+1;if(c){Fk(L[b+28>>2],b);Fk(L[b+32>>2],b)}}function ep(a,b,c,d){a=a|0;b=S(b);c=c|0;d=d|0;var e=0,f=0,g=0;e=fa-112|0;fa=e;L[e+108>>2]=a;P[e+104>>2]=b;L[e+100>>2]=c;L[e+96>>2]=d;a=L[e+108>>2];d=fa-16|0;c=d;L[c+12>>2]=L[e+100>>2];c=L[c+12>>2]+48|0;f=L[c+12>>2];L[e+88>>2]=L[c+8>>2];L[e+92>>2]=f;f=L[c+4>>2];L[e+80>>2]=L[c>>2];L[e+84>>2]=f;L[d+12>>2]=L[e+100>>2];c=e- -64|0;nc(c,L[d+12>>2],1);f=fa-16|0;L[f+12>>2]=L[e+100>>2];d=e+48|0;nc(d,L[f+12>>2],0);P[e+44>>2]=-1.5707963705062866;P[e+40>>2]=1.5707963705062866;P[e+36>>2]=-1.5707963705062866;P[e+32>>2]=1.5707963705062866;P[e+28>>2]=30;f=e+80|0;ha[L[L[a>>2]+64>>2]](a,f,c,d,P[e+104>>2],P[e+44>>2],P[e+40>>2],P[e+36>>2],P[e+32>>2],L[e+96>>2],P[e+28>>2],0);g=e+12|0;Zb(g,d);ha[L[L[a>>2]+64>>2]](a,f,c,g,P[e+104>>2],P[e+44>>2],P[e+40>>2],P[e+36>>2],P[e+32>>2],L[e+96>>2],P[e+28>>2],0);fa=e+112|0}function af(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a:{g=L[((b<<2)+a|0)+68>>2]+(c<<2)|0;f=N[g+6>>1];if(!f){break a}i=b<<1;j=i+(L[a+60>>2]+(N[g+2>>1]<<6)|0)|0;c=g+4|0;k=1<>1];if(e>>>0>N[g>>1]){break a}b=f<<6;f=L[a+60>>2];b=b+f|0;b:{if(e&1){f=f+(N[g+2>>1]<<6)|0;e=k<<1;h=f+e|0;e=b+e|0;c:{if(N[h+54>>1]>1]|N[e+54>>1]>1]){break c}e=l<<1;h=e+f|0;e=b+e|0;if(N[h+54>>1]>1]|N[e+54>>1]>1]){break c}e=L[a+92>>2];ha[L[L[e>>2]+12>>2]](e,f,b,d)|0;e=L[a+96>>2];if(!e){break c}ha[L[L[e>>2]+12>>2]](e,f,b,d)|0}b=(b+i|0)+54|0;break b}b=(b+i|0)+48|0}K[b>>1]=N[b>>1]-1;K[j+48>>1]=N[j+48>>1]+1;b=N[g>>1]|N[g+2>>1]<<16;f=N[c>>1]|N[c+2>>1]<<16;K[g>>1]=f;K[g+2>>1]=f>>>16;K[c>>1]=b;K[c+2>>1]=b>>>16;g=g+4|0;b=c;c=b+4|0;f=N[b+6>>1];if(f){continue}break}}}function Ts(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=S(0),o=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;o=oa(96);a=L[e+4>>2];b=L[e>>2];d=fa-32|0;fa=d;c=ub(o,11,L[e+12>>2],L[e+8>>2]);L[c>>2]=19484;f=L[a+52>>2];L[c+48>>2]=L[a+48>>2];L[c+52>>2]=f;f=L[a+60>>2];L[c+56>>2]=L[a+56>>2];L[c+60>>2]=f;f=L[b+52>>2];L[c+64>>2]=L[b+48>>2];L[c+68>>2]=f;f=L[b+60>>2];L[c+72>>2]=L[b+56>>2];L[c+76>>2]=f;Ma(a,d+16|0);Ma(b,d);g=P[d+24>>2];h=P[d+8>>2];i=P[d+20>>2];j=P[d+4>>2];k=P[d+28>>2];l=P[d+12>>2];m=P[d>>2];n=P[d+16>>2];P[c+92>>2]=S(g*h)+S(S(i*j)+S(S(k*l)+S(m*n)));P[c+88>>2]=S(i*m)+S(S(S(l*g)-S(k*h))-S(n*j));P[c+84>>2]=S(n*h)+S(S(S(l*i)-S(k*j))-S(g*m));P[c+80>>2]=S(g*j)+S(S(S(l*n)-S(k*m))-S(i*h));fa=d+32|0;fa=e+16|0;return o|0}function cB(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;a:{if(!L[h+44>>2]){break a}d=L[h+20>>2];b:{c:{if(J[h+65|0]&1){if((d|0)<=0){break a}e=0;b=L[a+28>>2];if((b|0)<=0){break a}break c}if((d|0)<=0){break a}e=0;b=L[a+28>>2];if((b|0)<=0){break a}break b}while(1){c=0;if((b|0)>0){while(1){f=L[a+16>>2];d=L[a+36>>2]+R(L[L[a+116>>2]+(c<<2)>>2],152)|0;bl(f+R(L[d+144>>2],244)|0,f+R(L[d+148>>2],244)|0,d);c=c+1|0;if((c|0)!=(b|0)){continue}break}d=L[h+20>>2]}e=e+1|0;if((e|0)>=(d|0)){break a}b=L[a+28>>2];continue}}while(1){c=0;if((b|0)>0){while(1){f=L[a+16>>2];d=L[a+36>>2]+R(L[L[a+116>>2]+(c<<2)>>2],152)|0;bl(f+R(L[d+144>>2],244)|0,f+R(L[d+148>>2],244)|0,d);c=c+1|0;if((c|0)!=(b|0)){continue}break}d=L[h+20>>2]}e=e+1|0;if((e|0)>=(d|0)){break a}b=L[a+28>>2];continue}}}function Tj(a){var b=0,c=0,d=S(0),e=S(0),f=0,g=S(0);f=(E(a),x(2));c=f&2147483647;if(c>>>0>=1283457024){return((E(a),x(2))&2147483647)>>>0>2139095040?a:(z(2,(E(a),x(2))&-2147483648|1070141402),F())}a:{b:{if(c>>>0<=1054867455){b=-1;if(c>>>0>=964689920){break b}break a}a=S(T(a));if(c>>>0<=1066926079){if(c>>>0<=1060110335){a=S(S(S(a+a)+S(-1))/S(a+S(2)));b=0;break b}a=S(S(a+S(-1))/S(a+S(1)));b=1;break b}if(c>>>0<=1075576831){a=S(S(a+S(-1.5))/S(S(a*S(1.5))+S(1)));b=2;break b}a=S(S(-1)/a);b=3}e=S(a*a);d=S(e*e);g=S(d*S(S(d*S(-.106480173766613))+S(-.19999158382415771)));d=S(e*S(S(d*S(S(d*S(.06168760731816292))+S(.14253635704517365)))+S(.333333283662796)));if(c>>>0<=1054867455){return S(a-S(a*S(g+d)))}b=b<<2;a=S(P[b+23328>>2]-S(S(S(a*S(g+d))-P[b+23344>>2])-a));a=(f|0)<0?S(-a):a}return a}function UG(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;c=L[a+20>>2];if(!(!c|!M[a+16|0])){d=L[b+4>>2];a:{if((d|0)!=L[b+8>>2]){break a}h=d?d<<1:1;if((h|0)<=(d|0)){break a}if(h){L[8513]=L[8513]+1;f=ha[L[6798]](h<<2,16)|0;d=L[b+4>>2]}b:{if((d|0)<=0){break b}c=0;if(d>>>0>=4){i=d&-4;while(1){e=c<<2;L[e+f>>2]=L[e+L[b+12>>2]>>2];g=e|4;L[g+f>>2]=L[g+L[b+12>>2]>>2];g=e|8;L[g+f>>2]=L[g+L[b+12>>2]>>2];e=e|12;L[e+f>>2]=L[e+L[b+12>>2]>>2];c=c+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}e=d&3;if(!e){break b}while(1){i=c<<2;L[i+f>>2]=L[i+L[b+12>>2]>>2];c=c+1|0;k=k+1|0;if((e|0)!=(k|0)){continue}break}}c=L[b+12>>2];if(!(!c|!M[b+16|0])){if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}d=L[b+4>>2]}L[b+12>>2]=f;J[b+16|0]=1;L[b+8>>2]=h;c=L[a+20>>2]}L[L[b+12>>2]+(d<<2)>>2]=c;L[b+4>>2]=d+1}}function Pt(a,b){a=a|0;b=b|0;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=S(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);d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;i=oa(360);c=L[d+8>>2];b=L[d+12>>2];a=rg(i,3,b);L[a>>2]=19852;e=L[c+4>>2];L[a+300>>2]=L[c>>2];L[a+304>>2]=e;e=L[c+12>>2];L[a+308>>2]=L[c+8>>2];L[a+312>>2]=e;j=P[b+52>>2];k=P[b+8>>2];l=P[b+12>>2];m=P[b+56>>2];n=P[b+20>>2];o=P[b+24>>2];p=P[b+28>>2];q=P[b+60>>2];r=P[b+36>>2];s=P[b+40>>2];f=P[c+8>>2];t=P[b+44>>2];u=P[b+4>>2];g=P[c>>2];h=P[c+4>>2];L[a+356>>2]=0;L[a+348>>2]=1050253722;L[a+352>>2]=1065353216;J[a+344|0]=0;L[a+328>>2]=0;L[a+332>>2]=0;P[a+324>>2]=q+S(S(f*t)+S(S(g*r)+S(h*s)));P[a+320>>2]=m+S(S(f*p)+S(S(g*n)+S(h*o)));P[a+316>>2]=j+S(S(f*l)+S(S(g*u)+S(h*k)));fa=d+16|0;return i|0}function zd(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;c=L[a+12>>2];if(!(!c|!M[a+8|0])){d=L[b+4>>2];a:{if((d|0)!=L[b+8>>2]){break a}h=d?d<<1:1;if((h|0)<=(d|0)){break a}if(h){L[8513]=L[8513]+1;f=ha[L[6798]](h<<2,16)|0;d=L[b+4>>2]}b:{if((d|0)<=0){break b}c=0;if(d>>>0>=4){i=d&-4;while(1){e=c<<2;L[e+f>>2]=L[e+L[b+12>>2]>>2];g=e|4;L[g+f>>2]=L[g+L[b+12>>2]>>2];g=e|8;L[g+f>>2]=L[g+L[b+12>>2]>>2];e=e|12;L[e+f>>2]=L[e+L[b+12>>2]>>2];c=c+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}e=d&3;if(!e){break b}while(1){i=c<<2;L[i+f>>2]=L[i+L[b+12>>2]>>2];c=c+1|0;k=k+1|0;if((e|0)!=(k|0)){continue}break}}c=L[b+12>>2];if(!(!c|!M[b+16|0])){if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}d=L[b+4>>2]}L[b+12>>2]=f;J[b+16|0]=1;L[b+8>>2]=h;c=L[a+12>>2]}L[L[b+12>>2]+(d<<2)>>2]=c;L[b+4>>2]=d+1}}function BE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=S(0),f=S(0),g=S(0),h=S(0),i=S(0);d=fa-80|0;fa=d;L[a>>2]=0;L[a+4>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0;f=P[c+8>>2];h=P[c>>2];g=P[c+4>>2];e=S(S(f*f)+S(S(h*h)+S(g*g)));a:{if(e>2];e=S(h*e)}L[d+52>>2]=0;L[d+56>>2]=0;P[d+76>>2]=g;P[d+72>>2]=f;P[d+68>>2]=i;L[d+44>>2]=0;L[d+48>>2]=0;P[d+64>>2]=e;L[d+60>>2]=-581039253;L[d+40>>2]=14628;L[d+32>>2]=1566444395;L[d+36>>2]=0;L[d+24>>2]=1566444395;L[d+28>>2]=1566444395;b=L[b+92>>2];L[d+16>>2]=-581039253;L[d+20>>2]=0;L[d+8>>2]=-581039253;L[d+12>>2]=-581039253;ha[L[L[b>>2]+8>>2]](b,d+40|0,d+8|0,d+24|0);b=L[d+56>>2];L[a+8>>2]=L[d+52>>2];L[a+12>>2]=b;b=L[d+48>>2];L[a>>2]=L[d+44>>2];L[a+4>>2]=b;fa=d+80|0}function CE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=S(0),f=S(0),g=S(0),h=0,i=S(0),j=S(0),k=S(0),l=S(0);d=fa-32|0;fa=d;h=L[c+12>>2];L[d+24>>2]=L[c+8>>2];L[d+28>>2]=h;h=L[c+4>>2];L[d+16>>2]=L[c>>2];L[d+20>>2]=h;e=P[d+24>>2];f=P[d+16>>2];g=P[d+20>>2];if(S(S(e*e)+S(S(f*f)+S(g*g)))>2]=0;g=S(-1);f=S(-1);e=S(-1)}i=e;e=S(S(1)/S(_(S(S(e*e)+S(S(f*f)+S(g*g))))));P[d+24>>2]=i*e;P[d+20>>2]=g*e;P[d+16>>2]=f*e;Te(d,b,d+16|0);a:{b:{switch(L[b+4>>2]){case 8:e=S(P[b+28>>2]*P[b+12>>2]);break a;case 0:case 1:case 4:case 5:case 10:case 11:case 13:e=P[b+44>>2];break a;default:break b}}e=S(ha[L[L[b>>2]+48>>2]](b))}f=P[d>>2];g=P[d+16>>2];i=P[d+4>>2];j=P[d+20>>2];k=P[d+8>>2];l=P[d+24>>2];L[a+12>>2]=0;P[a+8>>2]=k+S(e*l);P[a+4>>2]=i+S(e*j);P[a>>2]=f+S(e*g);fa=d+32|0}function Id(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=L[((b<<2)+a|0)+68>>2];e=c<<2;c=h+e|0;g=c-4|0;f=N[g>>1];if(f>>>0>N[c>>1]){j=b<<1;h=j+(L[a+60>>2]+(N[(e+h|0)+2>>1]<<6)|0)|0;k=1<>2];b=e+(N[c-2>>1]<<6)|0;if(f&1){b=(b+j|0)+54|0}else{f=e+(N[c+2>>1]<<6)|0;e=k<<1;i=f+e|0;e=b+e|0;a:{if(N[i+54>>1]>1]|N[e+54>>1]>1]){break a}e=l<<1;i=e+f|0;e=b+e|0;if(N[i+54>>1]>1]|N[e+54>>1]>1]){break a}e=L[a+92>>2];ha[L[L[e>>2]+12>>2]](e,f,b,d)|0;e=L[a+96>>2];if(!e){break a}ha[L[L[e>>2]+12>>2]](e,f,b,d)|0}b=(b+j|0)+48|0}K[b>>1]=N[b>>1]+1;K[h+54>>1]=N[h+54>>1]-1;b=N[c>>1]|N[c+2>>1]<<16;f=N[g>>1]|N[g+2>>1]<<16;K[c>>1]=f;K[c+2>>1]=f>>>16;K[g>>1]=b;K[g+2>>1]=b>>>16;g=g-4|0;f=N[g>>1];c=c-4|0;if(f>>>0>N[c>>1]){continue}break}}}function rA(a,b){a=a|0;b=b|0;var c=0,d=0;ha[L[L[b>>2]+32>>2]](b);d=ha[L[L[b>>2]+16>>2]](b,104,1)|0;c=pa(L[d+8>>2],0,104);P[c+88>>2]=P[a+248>>2];P[c+92>>2]=P[a+252>>2];P[c+96>>2]=P[a+256>>2];P[c+100>>2]=P[a+260>>2];P[c>>2]=P[a+92>>2];P[c+4>>2]=P[a+96>>2];P[c+8>>2]=P[a+100>>2];P[c+12>>2]=P[a+104>>2];P[c+16>>2]=P[a+108>>2];P[c+20>>2]=P[a+116>>2];P[c+24>>2]=P[a+120>>2];P[c+28>>2]=P[a+124>>2];P[c+32>>2]=P[a+128>>2];P[c+36>>2]=P[a+132>>2];P[c+40>>2]=P[a+140>>2];P[c+44>>2]=P[a+144>>2];P[c+48>>2]=P[a+148>>2];P[c+52>>2]=P[a+152>>2];P[c+56>>2]=P[a+168>>2];P[c+60>>2]=P[a+172>>2];L[c+64>>2]=L[a+112>>2];L[c+68>>2]=L[a+156>>2];L[c+72>>2]=L[a+160>>2];L[c+76>>2]=L[a+164>>2];L[c+80>>2]=L[a+136>>2];ha[L[L[b>>2]+20>>2]](b,d,3661,1145853764,c);Lk(a,b);jh(a,b);ha[L[L[b>>2]+36>>2]](b)}function Fa(a){var b=S(0),c=0,d=0,e=0,f=0;c=fa-16|0;fa=c;e=(E(a),x(2));d=e&2147483647;a:{if(d>>>0<=1061752794){b=S(1);if(d>>>0<964689920){break a}b=bb(+a);break a}if(d>>>0<=1081824209){if(d>>>0>=1075235812){b=S(-bb(((e|0)<0?3.141592653589793:-3.141592653589793)+ +a));break a}f=+a;if((e|0)<0){b=ab(f+1.5707963267948966);break a}b=ab(1.5707963267948966-f);break a}if(d>>>0<=1088565717){if(d>>>0>=1085271520){b=bb(((e|0)<0?6.283185307179586:-6.283185307179586)+ +a);break a}if((e|0)<0){b=ab(-4.71238898038469-+a);break a}b=ab(+a+-4.71238898038469);break a}b=S(a-a);if(d>>>0>=2139095040){break a}b:{switch(Sj(a,c+8|0)&3){case 0:b=bb(Q[c+8>>3]);break a;case 1:b=ab(-Q[c+8>>3]);break a;case 2:b=S(-bb(Q[c+8>>3]));break a;default:break b}}b=ab(Q[c+8>>3])}a=b;fa=c+16|0;return a}function WC(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;c=L[a+12>>2];if(c){d=L[b+4>>2];a:{if((d|0)!=L[b+8>>2]){break a}h=d?d<<1:1;if((h|0)<=(d|0)){break a}if(h){L[8513]=L[8513]+1;f=ha[L[6798]](h<<2,16)|0;d=L[b+4>>2]}b:{if((d|0)<=0){break b}c=0;if(d>>>0>=4){i=d&-4;while(1){e=c<<2;L[e+f>>2]=L[e+L[b+12>>2]>>2];g=e|4;L[g+f>>2]=L[g+L[b+12>>2]>>2];g=e|8;L[g+f>>2]=L[g+L[b+12>>2]>>2];e=e|12;L[e+f>>2]=L[e+L[b+12>>2]>>2];c=c+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}e=d&3;if(!e){break b}while(1){i=c<<2;L[i+f>>2]=L[i+L[b+12>>2]>>2];c=c+1|0;k=k+1|0;if((e|0)!=(k|0)){continue}break}}c=L[b+12>>2];if(!(!c|!M[b+16|0])){if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}d=L[b+4>>2]}L[b+12>>2]=f;J[b+16|0]=1;L[b+8>>2]=h;c=L[a+12>>2]}L[L[b+12>>2]+(d<<2)>>2]=c;L[b+4>>2]=d+1}}function QG(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;c=L[a+76>>2];if(c){d=L[b+4>>2];a:{if((d|0)!=L[b+8>>2]){break a}h=d?d<<1:1;if((h|0)<=(d|0)){break a}if(h){L[8513]=L[8513]+1;f=ha[L[6798]](h<<2,16)|0;d=L[b+4>>2]}b:{if((d|0)<=0){break b}c=0;if(d>>>0>=4){i=d&-4;while(1){e=c<<2;L[e+f>>2]=L[e+L[b+12>>2]>>2];g=e|4;L[g+f>>2]=L[g+L[b+12>>2]>>2];g=e|8;L[g+f>>2]=L[g+L[b+12>>2]>>2];e=e|12;L[e+f>>2]=L[e+L[b+12>>2]>>2];c=c+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}e=d&3;if(!e){break b}while(1){i=c<<2;L[i+f>>2]=L[i+L[b+12>>2]>>2];c=c+1|0;k=k+1|0;if((e|0)!=(k|0)){continue}break}}c=L[b+12>>2];if(!(!c|!M[b+16|0])){if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}d=L[b+4>>2]}L[b+12>>2]=f;J[b+16|0]=1;L[b+8>>2]=h;c=L[a+76>>2]}L[L[b+12>>2]+(d<<2)>>2]=c;L[b+4>>2]=d+1}}function rt(a,b){a=a|0;b=b|0;var c=S(0),d=S(0),e=0,f=S(0),g=S(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=S(0),q=S(0),r=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;b=L[e+8>>2];a=fa-48|0;fa=a;r=L[e+12>>2];Ma(r+364|0,a+16|0);c=P[b+4>>2];d=P[b+8>>2];f=P[b>>2];g=P[b+12>>2];h=P[a+24>>2];i=P[a+20>>2];j=P[a+28>>2];k=P[a+16>>2];Ma(r+300|0,a);l=S(S(h*d)+S(S(i*c)+S(S(j*g)+S(k*f))));m=P[a+12>>2];n=P[a>>2];o=S(S(h*c)+S(S(S(j*f)-S(g*k))-S(i*d)));p=S(S(k*d)+S(S(S(j*c)-S(g*i))-S(h*f)));q=P[a+4>>2];c=S(S(i*f)+S(S(S(j*d)-S(g*h))-S(k*c)));d=P[a+8>>2];P[a+44>>2]=S(S(S(l*m)-S(n*o))-S(p*q))-S(c*d);P[a+40>>2]=S(S(o*q)+S(S(l*d)+S(c*m)))-S(p*n);P[a+36>>2]=S(S(c*n)+S(S(l*q)+S(p*m)))-S(o*d);P[a+32>>2]=S(S(p*d)+S(S(l*n)+S(o*m)))-S(c*q);ol(r,a+32|0);fa=a+48|0;fa=e+16|0}function Jd(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c=L[((b<<2)+a|0)+68>>2]+(c<<2)|0;e=c-4|0;d=N[e>>1];if(d>>>0>N[c>>1]){i=b<<1;g=L[a+60>>2]+(N[c+2>>1]<<6)|0;f=g+48|0;l=i+f|0;b=1<>2]+(N[c-2>>1]<<6)|0;a:{if(d&1){d=b+j|0;b:{if(N[n>>1]>1]|N[d+54>>1]>1]){break b}d=b+k|0;if(N[h>>1]>1]|N[d+54>>1]>1]){break b}d=L[a+92>>2];ha[L[L[d>>2]+8>>2]](d,g,b)|0;d=L[a+96>>2];if(!d){break b}ha[L[L[d>>2]+8>>2]](d,g,b)|0}b=(b+i|0)+54|0;break a}b=(b+i|0)+48|0}K[b>>1]=N[b>>1]+1;K[l>>1]=N[l>>1]-1;b=N[c>>1]|N[c+2>>1]<<16;d=N[e>>1]|N[e+2>>1]<<16;K[c>>1]=d;K[c+2>>1]=d>>>16;K[e>>1]=b;K[e+2>>1]=b>>>16;e=e-4|0;d=N[e>>1];c=c-4|0;if(d>>>0>N[c>>1]){continue}break}}}function Cz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=0,m=S(0),n=0,o=0,p=0;d=L[b+52>>2];f=L[d+32>>2];b=L[f>>2];d=L[d+24>>2];if((d|0)>=2){h=P[c+8>>2];i=P[c>>2];j=P[c+4>>2];k=S(S(h*P[b+16>>2])+S(S(i*P[b+8>>2])+S(j*P[b+12>>2])));b=1;c=d-1|0;o=c&1;a:{if((d|0)==2){c=0;break a}p=c&-2;c=0;while(1){d=L[(b<<2)+f>>2];g=S(S(h*P[d+16>>2])+S(S(i*P[d+8>>2])+S(j*P[d+12>>2])));l=g>k;d=b+1|0;e=L[(d<<2)+f>>2];m=S(S(h*P[e+16>>2])+S(S(i*P[e+8>>2])+S(j*P[e+12>>2])));g=l?g:k;e=m>g;k=e?m:g;c=e?d:l?b:c;b=b+2|0;n=n+2|0;if((p|0)!=(n|0)){continue}break}}if(o){d=b;b=L[(b<<2)+f>>2];c=S(S(h*P[b+16>>2])+S(S(i*P[b+8>>2])+S(j*P[b+12>>2])))>k?d:c}b=L[(c<<2)+f>>2]}c=L[b+12>>2];L[a>>2]=L[b+8>>2];L[a+4>>2]=c;c=L[b+20>>2];L[a+8>>2]=L[b+16>>2];L[a+12>>2]=c}function Ea(a){var b=0,c=0,d=0,e=0;b=fa-16|0;fa=b;e=(E(a),x(2));c=e&2147483647;a:{if(c>>>0<=1061752794){if(c>>>0<964689920){break a}a=ab(+a);break a}if(c>>>0<=1081824209){d=+a;if(c>>>0<=1075235811){if((e|0)<0){a=S(-bb(d+1.5707963267948966));break a}a=bb(d+-1.5707963267948966);break a}a=ab(-(((e|0)>=0?-3.141592653589793:3.141592653589793)+d));break a}if(c>>>0<=1088565717){if(c>>>0<=1085271519){d=+a;if((e|0)<0){a=bb(d+4.71238898038469);break a}a=S(-bb(d+-4.71238898038469));break a}a=ab(((e|0)<0?6.283185307179586:-6.283185307179586)+ +a);break a}if(c>>>0>=2139095040){a=S(a-a);break a}b:{switch(Sj(a,b+8|0)&3){case 0:a=ab(Q[b+8>>3]);break a;case 1:a=bb(Q[b+8>>3]);break a;case 2:a=ab(-Q[b+8>>3]);break a;default:break b}}a=S(-bb(Q[b+8>>3]))}fa=b+16|0;return a}function ng(a,b){var c=0,d=0,e=0;c=fa-144|0;fa=c;d=Cd(a);L[d>>2]=20800;J[d+500|0]=1;L[d+496>>2]=0;L[d+488>>2]=0;L[d+492>>2]=0;L[c+76>>2]=0;L[c+8>>2]=0;P[c+4>>2]=0;a=L[b+12>>2];L[c+88>>2]=L[b+8>>2];L[c+92>>2]=a;e=L[b>>2];b=L[b+4>>2];a=c;L[a+16>>2]=0;L[a+20>>2]=0;L[a+24>>2]=0;L[a+28>>2]=0;L[a+32>>2]=1065353216;L[a+36>>2]=0;L[a+40>>2]=0;L[a+44>>2]=0;L[a+48>>2]=0;L[a+52>>2]=1065353216;L[a+56>>2]=0;L[a+60>>2]=0;c=a- -64|0;L[c>>2]=0;L[c+4>>2]=0;L[a+72>>2]=0;L[a+80>>2]=e;L[a+84>>2]=b;L[a+136>>2]=1008981770;L[a+140>>2]=1008981770;L[a+128>>2]=1000593162;L[a+132>>2]=1008981770;J[a+124|0]=0;L[a+120>>2]=1065353216;L[a+112>>2]=0;L[a+116>>2]=1061997773;L[a+104>>2]=1056964608;L[a+108>>2]=0;L[a+96>>2]=0;L[a+100>>2]=0;L[a+12>>2]=1065353216;Kk(d,a+4|0);fa=a+144|0}function zA(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;c=L[a+280>>2];a:{if((c|0)!=L[a+284>>2]){break a}h=c?c<<1:1;if((h|0)<=(c|0)){break a}if(h){L[8513]=L[8513]+1;f=ha[L[6798]](h<<2,16)|0;c=L[a+280>>2]}b:{if((c|0)<=0){break b}if(c>>>0>=4){i=c&-4;while(1){d=e<<2;L[d+f>>2]=L[d+L[a+288>>2]>>2];g=d|4;L[g+f>>2]=L[g+L[a+288>>2]>>2];g=d|8;L[g+f>>2]=L[g+L[a+288>>2]>>2];d=d|12;L[d+f>>2]=L[d+L[a+288>>2]>>2];e=e+4|0;j=j+4|0;if((i|0)!=(j|0)){continue}break}}d=c&3;if(!d){break b}while(1){i=e<<2;L[i+f>>2]=L[i+L[a+288>>2]>>2];e=e+1|0;k=k+1|0;if((d|0)!=(k|0)){continue}break}}e=L[a+288>>2];if(!(!e|!M[a+292|0])){if(e){L[8514]=L[8514]+1;ha[L[6799]](e)}c=L[a+280>>2]}L[a+288>>2]=f;J[a+292|0]=1;L[a+284>>2]=h}L[L[a+288>>2]+(c<<2)>>2]=b;L[a+280>>2]=c+1}function _v(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;L[f+12>>2]=e;a=L[f+24>>2];c=L[f+20>>2];d=L[f+16>>2];e=L[f+12>>2];b=fa-32|0;fa=b;L[b+28>>2]=L[f+28>>2];L[b+24>>2]=a;L[b+20>>2]=c;L[b+16>>2]=d;L[b+12>>2]=e;c=L[b+24>>2];d=L[c+4>>2];a=L[b+28>>2];L[a+96>>2]=L[c>>2];L[a+100>>2]=d;d=L[c+12>>2];L[a+104>>2]=L[c+8>>2];L[a+108>>2]=d;c=L[b+20>>2];d=L[c+4>>2];L[a+112>>2]=L[c>>2];L[a+116>>2]=d;d=L[c+12>>2];L[a+120>>2]=L[c+8>>2];L[a+124>>2]=d;c=L[b+16>>2];d=L[c+4>>2];L[a+128>>2]=L[c>>2];L[a+132>>2]=d;d=L[c+12>>2];L[a+136>>2]=L[c+8>>2];L[a+140>>2]=d;c=L[b+12>>2];d=L[c+4>>2];L[a+144>>2]=L[c>>2];L[a+148>>2]=d;d=L[c+12>>2];L[a+152>>2]=L[c+8>>2];L[a+156>>2]=d;Sb(a);fa=b+32|0;fa=f+32|0}function mo(a,b,c){a=a|0;b=b|0;c=S(c);var d=0,e=0,f=0;d=fa-128|0;fa=d;L[d+120>>2]=a;L[d+116>>2]=b;P[d+112>>2]=c;a=L[d+120>>2];b=d+96|0;L[(fa-16|0)+12>>2]=b;gf(a,b);P[d+92>>2]=Sa(L[d+116>>2],b);P[d+88>>2]=Sa(a+56|0,b);P[d+92>>2]=P[d+92>>2]-P[d+88>>2];a:{if(!(!(P[d+92>>2]>=S(-P[d+112>>2]))|!(P[d+92>>2]<=P[d+112>>2]))){L[d+84>>2]=0;while(1){if(L[d+84>>2]<3){e=fa-16|0;b=d+68|0;L[e+12>>2]=b;f=e;e=d+52|0;L[f+12>>2]=e;ha[L[L[a>>2]+104>>2]](a,L[d+84>>2],b,e);f=d+36|0;La(f,e,b);e=d+20|0;Ub(e,f,d+96|0);Nd(e);P[d+16>>2]=Sa(L[d+116>>2],e);P[d+12>>2]=Sa(b,e);P[d+16>>2]=P[d+16>>2]-P[d+12>>2];if(P[d+16>>2]>2])){J[d+127|0]=0;break a}else{L[d+84>>2]=L[d+84>>2]+1;continue}}break}J[d+127|0]=1;break a}J[d+127|0]=0}fa=d+128|0;return J[d+127|0]&1}function kg(a,b){var c=0,d=0,e=0,f=0;c=L[L[a+1120>>2]+(b<<2)>>2];b=L[c+348>>2];if(b){fc(a+1048|0,b)}b=L[c+52>>2];if(!(b?!b|!M[c+56|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[c+52>>2]=0;J[c+56|0]=1;L[c+44>>2]=0;L[c+48>>2]=0;b=L[c+32>>2];if(!(b?!b|!M[c+36|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[c+32>>2]=0;J[c+36|0]=1;L[c+24>>2]=0;L[c+28>>2]=0;b=L[c+12>>2];if(!(b?!b|!M[c+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}b=0;L[c+12>>2]=0;J[c+16|0]=1;L[c+4>>2]=0;L[c+8>>2]=0;if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}d=L[a+1112>>2];a:{if((d|0)<=0){break a}e=L[a+1120>>2];while(1){f=(b<<2)+e|0;if(L[f>>2]!=(c|0)){b=b+1|0;if((d|0)!=(b|0)){continue}break a}break}if((b|0)>=(d|0)){break a}b=d-1|0;d=b<<2;L[f>>2]=L[d+e>>2];L[d+L[a+1120>>2]>>2]=c;L[a+1112>>2]=b}}function oy(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=fa-32|0;fa=b;L[b+28>>2]=a;if(!M[29664]){Ka(29648);J[29664]=1}e=fa-16|0;fa=e;L[e+12>>2]=L[b+28>>2];a=L[e+12>>2];P[e+8>>2]=Sf(a);c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=e+8;f=L[c+12>>2];P[c+4>>2]=S(1)/P[L[c+8>>2]>>2];a=fa-32|0;fa=a;L[a+28>>2]=f;L[a+24>>2]=c+4;d=fa-16|0;f=L[a+28>>2];L[d+12>>2]=f;P[a+20>>2]=P[L[d+12>>2]>>2]*P[L[a+24>>2]>>2];d=fa-16|0;L[d+12>>2]=f;P[a+16>>2]=P[L[d+12>>2]+4>>2]*P[L[a+24>>2]>>2];d=fa-16|0;L[d+12>>2]=f;P[a+12>>2]=P[L[d+12>>2]+8>>2]*P[L[a+24>>2]>>2];P[a+8>>2]=P[f+12>>2]*P[L[a+24>>2]>>2];ie(b+12|0,a+20|0,a+16|0,a+12|0,a+8|0);fa=a+32|0;fa=c+16|0;fa=e+16|0;a=L[b+16>>2];L[7412]=L[b+12>>2];L[7413]=a;a=L[b+24>>2];L[7414]=L[b+20>>2];L[7415]=a;fa=b+32|0;return 29648}function ZE(a,b,c){a=a|0;b=S(b);c=c|0;var d=0,e=S(0),f=S(0),g=S(0),h=0,i=S(0),j=S(0),k=S(0),l=S(0);d=fa-96|0;fa=d;L[d+44>>2]=0;L[d+48>>2]=0;L[d+56>>2]=0;L[d+60>>2]=0;L[d+52>>2]=1065353216;h=d- -64|0;L[h>>2]=0;L[h+4>>2]=0;L[d+76>>2]=0;L[d+80>>2]=0;L[d+72>>2]=1065353216;L[d+84>>2]=0;L[d+88>>2]=0;L[d+92>>2]=0;L[d+36>>2]=0;L[d+40>>2]=0;L[d+32>>2]=1065353216;ha[L[L[a>>2]+8>>2]](a,d+32|0,d+16|0,d);i=P[d+24>>2];j=P[d+8>>2];f=P[d+16>>2];g=P[d>>2];k=P[d+20>>2];l=P[d+4>>2];e=S(ha[L[L[a>>2]+48>>2]](a));L[c+12>>2]=0;b=S(b*S(.0833333283662796));f=S(e+S(S(g-f)*S(.5)));f=S(f+f);f=S(f*f);g=S(e+S(S(l-k)*S(.5)));g=S(g+g);g=S(g*g);P[c+8>>2]=b*S(f+g);e=S(e+S(S(j-i)*S(.5)));e=S(e+e);e=S(e*e);P[c+4>>2]=b*S(f+e);P[c>>2]=b*S(g+e);fa=d+96|0}function JD(a,b,c){a=a|0;b=S(b);c=c|0;var d=0,e=S(0),f=S(0),g=S(0),h=0,i=S(0),j=S(0),k=S(0),l=S(0);d=fa-96|0;fa=d;e=S(ha[L[L[a>>2]+48>>2]](a));L[d+44>>2]=0;L[d+48>>2]=0;L[d+56>>2]=0;L[d+60>>2]=0;L[d+52>>2]=1065353216;h=d- -64|0;L[h>>2]=0;L[h+4>>2]=0;L[d+76>>2]=0;L[d+80>>2]=0;L[d+72>>2]=1065353216;L[d+84>>2]=0;L[d+88>>2]=0;L[d+92>>2]=0;L[d+36>>2]=0;L[d+40>>2]=0;L[d+32>>2]=1065353216;ha[L[L[a>>2]+8>>2]](a,d+32|0,d+16|0,d);i=P[d+24>>2];j=P[d+8>>2];f=P[d+16>>2];g=P[d>>2];k=P[d+20>>2];l=P[d+4>>2];L[c+12>>2]=0;b=S(b*S(.0833333283662796));f=S(e+S(S(g-f)*S(.5)));f=S(f+f);f=S(f*f);g=S(e+S(S(l-k)*S(.5)));g=S(g+g);g=S(g*g);P[c+8>>2]=b*S(f+g);e=S(e+S(S(j-i)*S(.5)));e=S(e+e);e=S(e*e);P[c+4>>2]=b*S(f+e);P[c>>2]=b*S(g+e);fa=d+96|0}function bF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=0,g=0,h=0,i=S(0),j=0,k=S(0),l=0,m=S(0),n=0,o=0,p=S(0);if((d|0)>0){f=fa-16|0;while(1){i=S(P[a+60>>2]*S(.5));j=L[a+64>>2];o=l<<4;g=o+b|0;e=P[g+8>>2];h=L[a+68>>2]<<2;m=S(e*e);e=P[g>>2];k=S(e*e);e=P[g+4>>2];a:{b:{if(P[g+h>>2]>S(P[a+52>>2]*S(_(S(m+S(k+S(e*e))))))){L[(j<<2)+f>>2]=0;P[f+h>>2]=i;j=L[a+72>>2];break b}n=j<<2;e=P[g+n>>2];j=L[a+72>>2];k=P[g+(j<<2)>>2];p=S(_(S(S(e*e)+S(k*k))));if(p>S(1.1920928955078125e-7)){m=e;e=S(P[a+56>>2]/p);P[f+n>>2]=m*e;P[f+h>>2]=-i;i=S(k*e);break a}L[f+n>>2]=0;P[f+h>>2]=-i}i=S(0)}P[(j<<2)+f>>2]=i;h=L[f+12>>2];g=c+o|0;L[g+8>>2]=L[f+8>>2];L[g+12>>2]=h;h=L[f+4>>2];L[g>>2]=L[f>>2];L[g+4>>2]=h;l=l+1|0;if((l|0)!=(d|0)){continue}break}}}function zc(a,b,c){var d=S(0),e=S(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=S(0),o=S(0),p=S(0),q=S(0),r=S(0),s=S(0),t=S(0);h=L[a+4>>2];if(h){rb(h,b,c)}a=L[a>>2];if(a){l=P[a+220>>2];m=P[a+212>>2];n=P[a+216>>2];o=P[a+204>>2];p=P[a+196>>2];q=P[a+200>>2];r=P[a+188>>2];s=P[a+184>>2];t=P[a+180>>2];i=P[c+4>>2];j=P[c+8>>2];k=P[c>>2];d=P[b+8>>2];e=P[b+4>>2];g=P[b>>2];f=P[a+128>>2];P[a+276>>2]=S(g*f)+P[a+276>>2];P[a+280>>2]=S(f*e)+P[a+280>>2];P[a+284>>2]=S(f*d)+P[a+284>>2];L[a+312>>2]=L[a+312>>2]+1;f=S(S(k*e)-S(g*i));e=S(S(i*d)-S(e*j));d=S(S(j*g)-S(d*k));P[a+292>>2]=S(S(r*f)+S(S(t*e)+S(s*d)))+P[a+292>>2];P[a+296>>2]=S(S(o*f)+S(S(p*e)+S(d*q)))+P[a+296>>2];P[a+300>>2]=S(S(l*f)+S(S(m*e)+S(d*n)))+P[a+300>>2]}}function Fw(a){a=a|0;var b=0,c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;a=L[c+12>>2];if(a){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;a:{b:{b=L[a+12>>2];c:{if(!(M[a+16|0]?b:0)){L[a+4>>2]=0;L[a+8>>2]=0;J[a+16|0]=1;break c}if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+16|0]=1;L[a+12>>2]=0;L[a+4>>2]=0;L[a+8>>2]=0;b=L[a+32>>2];if(!b){break c}if(M[a+36|0]){break b}}L[a+32>>2]=0;J[a+36|0]=1;L[a+24>>2]=0;L[a+28>>2]=0;break a}if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+36|0]=1;L[a+32>>2]=0;L[a+24>>2]=0;L[a+28>>2]=0;b=L[a+12>>2];if(!b|!M[a+16|0]){break a}if(b){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;Fc(a)}fa=c+16|0}function MC(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;e=fa-128|0;fa=e;ha[L[L[a>>2]+112>>2]](a);f=L[c+12>>2];L[e+104>>2]=L[c+8>>2];L[e+108>>2]=f;f=L[c+4>>2];L[e+96>>2]=L[c>>2];L[e+100>>2]=f;c=L[d+12>>2];L[e+120>>2]=L[d+8>>2];L[e+124>>2]=c;c=L[d+4>>2];L[e+112>>2]=L[d>>2];L[e+116>>2]=c;L[e+88>>2]=0;J[e+92|0]=1;L[e+80>>2]=0;L[e+84>>2]=0;Sl(a+68|0,e+96|0,e+76|0);c=L[e+80>>2];if(c){d=L[a+172>>2];L[e+68>>2]=1008981770;while(1){c=c-1|0;f=c<<2;g=L[f+L[e+88>>2]>>2];h=ha[L[L[a>>2]+84>>2]](a)|0;i=g;g=e+4|0;ha[L[L[h>>2]+20>>2]](h,i,g);ha[L[L[b>>2]+8>>2]](b,g,d,L[L[e+88>>2]+f>>2]);if(c){continue}break}}ha[L[L[a>>2]+116>>2]](a);a=L[e+88>>2];if(!(a?!a|!M[e+92|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}fa=e+128|0}function xm(a,b,c,d,e,f){var g=S(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=S(0),q=S(0),r=S(0),s=S(0);ha[L[L[a>>2]+8>>2]](a,b,e,f);g=P[d+8>>2];k=P[d>>2];l=P[d+4>>2];m=P[f>>2];n=P[f+4>>2];o=P[f+8>>2];p=P[e>>2];h=P[c>>2];q=P[e+4>>2];i=P[c+4>>2];r=P[e+8>>2];j=P[c+8>>2];s=S(ha[L[L[a>>2]+16>>2]](a));L[e+12>>2]=0;j=S(j*S(1));a=j>S(0);P[e+8>>2]=r+(a?S(-0):j);i=S(i*S(1));b=i>S(0);P[e+4>>2]=q+(b?S(-0):i);h=S(h*S(1));c=h>S(0);P[e>>2]=p+(c?S(-0):h);L[f+12>>2]=0;P[f+8>>2]=o+(a?j:S(-0));P[f+4>>2]=n+(b?i:S(-0));P[f>>2]=m+(c?h:S(-0));g=S(S(s*S(_(S(S(g*g)+S(S(k*k)+S(l*l))))))*S(1));P[e>>2]=P[e>>2]-g;P[e+4>>2]=P[e+4>>2]-g;P[e+8>>2]=P[e+8>>2]-g;P[f>>2]=g+P[f>>2];P[f+4>>2]=g+P[f+4>>2];P[f+8>>2]=g+P[f+8>>2]}function iy(a,b){a=a|0;b=b|0;var c=S(0),d=0,e=0,f=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;b=L[d+8>>2];a=fa-32|0;fa=a;L[a+24>>2]=L[d+12>>2];L[a+20>>2]=b;f=L[a+24>>2];c=S($b(f)*$b(L[a+20>>2]));b=fa-16|0;P[b+12>>2]=c;P[a+16>>2]=_(P[b+12>>2]);a:{if(_b(f,L[a+20>>2])>2]=L[a+20>>2];L[b+24>>2]=L[b+28>>2];e=fa-16|0;L[e+12>>2]=L[b+24>>2];P[b+20>>2]=-P[L[e+12>>2]>>2];L[e+12>>2]=L[b+24>>2];P[b+16>>2]=-P[L[e+12>>2]+4>>2];L[e+12>>2]=L[b+24>>2];P[b+12>>2]=-P[L[e+12>>2]+8>>2];P[b+8>>2]=-P[L[b+24>>2]+12>>2];ie(a,b+20|0,b+16|0,b+12|0,b+8|0);fa=b+32|0;c=uc(S(_b(f,a)/P[a+16>>2]));P[a+28>>2]=c+c;break a}c=uc(S(_b(f,L[a+20>>2])/P[a+16>>2]));P[a+28>>2]=c+c}fa=a+32|0;fa=d+16|0;return S(P[a+28>>2])}function EE(a,b){a=a|0;b=b|0;var c=S(0),d=0,e=S(0),f=S(0);d=fa-96|0;fa=d;c=P[b>>2];e=P[b+4>>2];f=P[b+8>>2];J[a+84|0]=1;L[a+24>>2]=0;P[a+20>>2]=T(f);P[a+16>>2]=T(e);P[a+12>>2]=T(c);if(!M[30304]){L[7553]=0;L[7554]=0;L[7552]=1065353216;L[7555]=0;L[7556]=0;L[7558]=0;L[7559]=0;L[7557]=1065353216;L[7560]=0;L[7561]=0;L[7565]=0;L[7566]=0;L[7564]=-1082130432;L[7562]=1065353216;L[7563]=0;L[7567]=0;L[7568]=0;L[7570]=0;L[7571]=0;L[7569]=-1082130432;L[7572]=0;L[7573]=0;L[7574]=-1082130432;L[7575]=0;J[30304]=1}b=pa(d,0,96);ha[L[L[a>>2]+76>>2]](a,30208,b,6);c=P[a+44>>2];P[a+68>>2]=c+P[b>>2];P[a+52>>2]=P[b+48>>2]-c;P[a+72>>2]=c+P[b+20>>2];P[a+56>>2]=P[b+68>>2]-c;P[a+76>>2]=c+P[b+40>>2];P[a+60>>2]=P[b+88>>2]-c;fa=b+96|0}function pa(a,b,c){var d=0,e=0,f=0,g=0;a:{if(!c){break a}J[a|0]=b;d=a+c|0;J[d-1|0]=b;if(c>>>0<3){break a}J[a+2|0]=b;J[a+1|0]=b;J[d-3|0]=b;J[d-2|0]=b;if(c>>>0<7){break a}J[a+3|0]=b;J[d-4|0]=b;if(c>>>0<9){break a}d=0-a&3;e=d+a|0;b=R(b&255,16843009);L[e>>2]=b;d=c-d&-4;c=d+e|0;L[c-4>>2]=b;if(d>>>0<9){break a}L[e+8>>2]=b;L[e+4>>2]=b;L[c-8>>2]=b;L[c-12>>2]=b;if(d>>>0<25){break a}L[e+24>>2]=b;L[e+20>>2]=b;L[e+16>>2]=b;L[e+12>>2]=b;L[c-16>>2]=b;L[c-20>>2]=b;L[c-24>>2]=b;L[c-28>>2]=b;g=e&4|24;c=d-g|0;if(c>>>0<32){break a}d=mI(b,0,1,1);f=ga;b=e+g|0;while(1){L[b+24>>2]=d;L[b+28>>2]=f;L[b+16>>2]=d;L[b+20>>2]=f;L[b+8>>2]=d;L[b+12>>2]=f;L[b>>2]=d;L[b+4>>2]=f;b=b+32|0;c=c-32|0;if(c>>>0>31){continue}break}}return a}function fH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;c=fa-96|0;fa=c;b=L[b>>2];a:{if((b|0)==L[a+4>>2]){break a}d=L[a+12>>2];if(!(ha[L[L[d>>2]+8>>2]](d,L[b+188>>2])|0)){break a}d=L[a+4>>2];e=L[d+192>>2];L[c+88>>2]=-1;L[c+92>>2]=-1;L[c+84>>2]=d+4;L[c+80>>2]=d;L[c+76>>2]=e;L[c+72>>2]=0;d=L[b+192>>2];L[c+64>>2]=-1;L[c+68>>2]=-1;L[c+60>>2]=b+4;L[c+56>>2]=b;L[c+52>>2]=d;L[c+48>>2]=0;b=L[L[a+8>>2]+24>>2];d=ha[L[L[b>>2]+8>>2]](b,c+72|0,c+48|0,0)|0;if(!d){break a}e=L[a+12>>2];b=c+12|0;f=c+48|0;L[b+12>>2]=f;g=c+72|0;L[b+8>>2]=g;L[b+4>>2]=0;L[b>>2]=11584;L[b+32>>2]=e;L[b>>2]=8520;ha[L[L[d>>2]+8>>2]](d,g,f,L[a+8>>2]+28|0,b);ha[L[L[d>>2]>>2]](d)|0;a=L[L[a+8>>2]+24>>2];ha[L[L[a>>2]+60>>2]](a,d)}fa=c+96|0;return 1}function ok(a,b){var c=0,d=0,e=S(0),f=S(0),g=0;c=fa-32|0;fa=c;d=L[b+388>>2];g=(d&L[a+388>>2]&48)-16|0;a:{if(g){if((g|0)!=16){break a}if(!(d&64)&(a|0)==(b|0)){break a}L[c+20>>2]=0;L[c+4>>2]=1065353216;L[c>>2]=21776;P[c+8>>2]=P[a+456>>2];d=L[a+192>>2];e=S(ha[L[L[d>>2]+48>>2]](d));d=L[b+192>>2];P[c+12>>2]=e+S(ha[L[L[d>>2]+48>>2]](d));e=P[b+316>>2];f=P[a+316>>2];L[c+28>>2]=b;L[c+24>>2]=a;P[c+16>>2]=e>f?f:e;gg(L[a+1048>>2],L[b+1048>>2],c);break a}if((a|0)==(b|0)){break a}L[c>>2]=21860;d=L[a+192>>2];e=S(ha[L[L[d>>2]+48>>2]](d));d=L[b+192>>2];f=S(ha[L[L[d>>2]+48>>2]](d));L[c+8>>2]=b;L[c+4>>2]=a;P[c+12>>2]=e+f;gg(L[a+928>>2],L[b+988>>2],c);L[c+8>>2]=a;L[c+4>>2]=b;gg(L[b+928>>2],L[a+988>>2],c)}fa=c+32|0}function Ht(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;J[f+15|0]=e;c=oa(1388);a=ml(c,L[f+28>>2],L[f+24>>2],L[f+20>>2],L[f+16>>2],J[f+15|0]&1);L[a+4>>2]=9;L[a>>2]=19664;L[a+1364>>2]=1065353216;L[a+1368>>2]=1065353216;b=a+1309|0;J[b|0]=0;J[b+1|0]=0;J[b+2|0]=0;J[b+3|0]=0;b=a+1313|0;J[b|0]=0;J[b+1|0]=0;b=a+1316|0;L[b>>2]=0;L[b+4>>2]=0;b=a+1324|0;L[b>>2]=0;L[b+4>>2]=0;b=a+1332|0;L[b>>2]=0;L[b+4>>2]=0;b=a+1340|0;L[b>>2]=0;L[b+4>>2]=0;b=a+1348|0;L[b>>2]=0;L[b+4>>2]=0;b=a+1356|0;L[b>>2]=0;L[b+4>>2]=0;b=a+1380|0;L[b>>2]=1065353216;L[b+4>>2]=1065353216;a=a+1372|0;L[a>>2]=1065353216;L[a+4>>2]=1065353216;fa=f+32|0;return c|0}function Wg(a){a=a|0;var b=0;L[a>>2]=12192;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]=0;J[a+164|0]=1;L[a+152>>2]=0;L[a+156>>2]=0;b=L[a+136>>2];if(!(b?!b|!M[a+140|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+136>>2]=0;J[a+140|0]=1;L[a+128>>2]=0;L[a+132>>2]=0;b=L[a+116>>2];if(!(b?!b|!M[a+120|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+116>>2]=0;J[a+120|0]=1;L[a+108>>2]=0;L[a+112>>2]=0;b=L[a+96>>2];if(!(b?!b|!M[a+100|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+96>>2]=0;J[a+100|0]=1;L[a+88>>2]=0;L[a+92>>2]=0;b=L[a+76>>2];if(!(b?!b|!M[a+80|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+76>>2]=0;J[a+80|0]=1;L[a+68>>2]=0;L[a+72>>2]=0;return a|0}function Nz(a,b,c){a=a|0;b=S(b);c=S(c);var d=0,e=S(0),f=S(0),g=S(0),h=S(0),i=0,j=0,k=S(0),l=S(0),m=S(0),n=S(0),o=S(0),p=0;j=L[a+732>>2];if((j|0)>0){p=L[a+740>>2];while(1){d=R(i,52)+p|0;e=P[d+24>>2];a:{if(!(e>S(0))){break a}g=P[d+28>>2];a=L[d+12>>2];d=L[d+8>>2];k=P[d+16>>2];c=S(P[a+16>>2]-k);l=P[d+8>>2];f=S(P[a+8>>2]-l);m=P[d+12>>2];h=S(P[a+12>>2]-m);n=S(S(c*c)+S(S(f*f)+S(h*h)));o=S(g+n);if(!(o>S(1.1920928955078125e-7))){break a}g=S(S(S(g-n)/S(e*o))*b);e=S(g*P[d+88>>2]);P[d+16>>2]=k-S(c*e);P[d+12>>2]=m-S(h*e);P[d+8>>2]=l-S(f*e);e=f;f=S(g*P[a+88>>2]);P[a+8>>2]=P[a+8>>2]+S(e*f);P[a+16>>2]=S(c*f)+P[a+16>>2];P[a+12>>2]=S(h*f)+P[a+12>>2]}i=i+1|0;if((j|0)!=(i|0)){continue}break}}}function gI(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=S(0),f=0,g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=S(0);f=L[a- -64>>2];a=L[a+4>>2];a:{if(a){if(f){e=P[a+24>>2];d=P[f+24>>2];g=e>d?e:d;e=P[a+20>>2];d=P[f+20>>2];h=e>d?e:d;e=P[a+8>>2];d=P[f+8>>2];i=e>2];d=P[f+4>>2];j=e>2];d=P[f+16>>2];k=e>d?e:d;d=P[a>>2];e=P[f>>2];d=e>d?d:e;break a}l=P[a+28>>2];g=P[a+24>>2];h=P[a+20>>2];k=P[a+16>>2];e=P[a+12>>2];i=P[a+8>>2];j=P[a+4>>2];d=P[a>>2];break a}d=S(0);if(!f){break a}l=P[f+28>>2];g=P[f+24>>2];h=P[f+20>>2];k=P[f+16>>2];e=P[f+12>>2];i=P[f+8>>2];j=P[f+4>>2];d=P[f>>2]}P[b+12>>2]=e;P[b+8>>2]=i;P[b+4>>2]=j;P[b>>2]=d;P[c+12>>2]=l;P[c+8>>2]=g;P[c+4>>2]=h;P[c>>2]=k}function Cd(a){L[a+188>>2]=0;L[a+192>>2]=0;L[a+180>>2]=0;L[a+184>>2]=1566444395;L[a+164>>2]=1065353216;L[a+168>>2]=1065353216;L[a+244>>2]=1065353216;L[a+236>>2]=1;L[a+240>>2]=0;L[a+228>>2]=0;L[a+232>>2]=0;L[a+220>>2]=0;L[a+224>>2]=1056964608;L[a+212>>2]=-1;L[a+216>>2]=1;L[a+204>>2]=1;L[a+208>>2]=-1;L[a+248>>2]=0;L[a+252>>2]=0;L[a+4>>2]=1065353216;L[a+172>>2]=1065353216;L[a+176>>2]=0;L[a>>2]=6712;L[a+196>>2]=0;L[a+200>>2]=0;L[a+256>>2]=0;L[a+260>>2]=0;L[a+16>>2]=0;L[a+20>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0;L[a+28>>2]=0;L[a+32>>2]=0;L[a+24>>2]=1065353216;L[a+36>>2]=0;L[a+40>>2]=0;L[a+48>>2]=0;L[a+52>>2]=0;L[a+44>>2]=1065353216;L[a+56>>2]=0;L[a+60>>2]=0;L[a- -64>>2]=0;return a}function Lk(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=L[a+8>>2];if((d|0)>0){while(1){c=L[L[a+16>>2]+(e<<2)>>2];if(M[c+236|0]&2){d=(g=b,h=ha[L[L[c>>2]+16>>2]](c)|0,i=1,f=L[L[b>>2]+16>>2],ha[f](g|0,h|0,i|0)|0);i=b,h=d,g=ha[L[L[c>>2]+20>>2]](c,L[d+8>>2],b)|0,j=1497645650,k=c,f=L[L[b>>2]+20>>2],ha[f](i|0,h|0,g|0,j|0,k|0);d=L[a+8>>2]}e=e+1|0;if((d|0)>(e|0)){continue}break}}if(L[a+212>>2]>0){e=0;while(1){c=L[L[a+220>>2]+(e<<2)>>2];d=(k=b,j=ha[L[L[c>>2]+36>>2]](c)|0,g=1,f=L[L[b>>2]+16>>2],ha[f](k|0,j|0,g|0)|0);g=b,j=d,k=ha[L[L[c>>2]+40>>2]](c,L[d+8>>2],b)|0,h=1397641027,i=c,f=L[L[b>>2]+20>>2],ha[f](g|0,j|0,k|0,h|0,i|0);e=e+1|0;if((e|0)>2]){continue}break}}}function Dk(a){a=a|0;var b=0;L[a>>2]=20864;b=L[a+144>>2];if(!(b?!b|!M[a+148|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+144>>2]=0;J[a+148|0]=1;L[a+136>>2]=0;L[a+140>>2]=0;b=L[a+76>>2];if(!(b?!b|!M[a+80|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+76>>2]=0;J[a+80|0]=1;L[a+68>>2]=0;L[a+72>>2]=0;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]=0;J[a+60|0]=1;L[a+48>>2]=0;L[a+52>>2]=0;b=L[a+36>>2];if(!(b?!b|!M[a+40|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+36>>2]=0;J[a+40|0]=1;L[a+28>>2]=0;L[a+32>>2]=0;b=L[a+16>>2];if(!(b?!b|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+16>>2]=0;J[a+20|0]=1;L[a+8>>2]=0;L[a+12>>2]=0;return a|0}function jv(){var a=0;a=oa(772);L[a>>2]=1025;L[a+124>>2]=0;L[a+128>>2]=0;J[a+120|0]=0;L[a+116>>2]=0;L[a+132>>2]=0;L[a+136>>2]=0;L[a+140>>2]=0;L[a+144>>2]=0;L[a+148>>2]=0;L[a+152>>2]=0;L[a+308>>2]=0;L[a+312>>2]=0;J[a+304|0]=0;L[a+300>>2]=0;L[a+316>>2]=0;L[a+320>>2]=0;L[a+324>>2]=0;L[a+328>>2]=0;L[a+332>>2]=0;L[a+336>>2]=0;L[a+492>>2]=0;L[a+496>>2]=0;J[a+488|0]=0;L[a+484>>2]=0;L[a+500>>2]=0;L[a+504>>2]=0;L[a+508>>2]=0;L[a+512>>2]=0;L[a+516>>2]=0;L[a+520>>2]=0;J[a+672|0]=0;L[a+668>>2]=0;L[a+676>>2]=0;L[a+680>>2]=0;L[a+684>>2]=0;L[a+688>>2]=0;L[a+692>>2]=0;L[a+696>>2]=0;L[a+700>>2]=0;L[a+704>>2]=0;L[a+748>>2]=0;L[a+768>>2]=0;L[a+740>>2]=0;L[a+744>>2]=0;return a|0}function jC(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=S(0),l=S(0),m=S(0),n=S(0),o=S(0),p=S(0);a=fa-80|0;fa=a;k=P[e+52>>2];l=P[f+52>>2];m=P[e+56>>2];n=P[f+56>>2];o=P[e+48>>2];p=P[f+48>>2];L[a+76>>2]=0;P[a+64>>2]=p-o;P[a+72>>2]=n-m;P[a+68>>2]=l-k;b=Bg(c,e,d,f,a- -64|0,a+8|0,1);a:{if(!b){if(!Hl(c,e,d,f,a- -64|0,a+8|0)){break a}}c=L[a+16>>2];L[h>>2]=L[a+12>>2];L[h+4>>2]=c;c=L[a+24>>2];L[h+8>>2]=L[a+20>>2];L[h+12>>2]=c;c=L[a+40>>2];L[i+8>>2]=L[a+36>>2];L[i+12>>2]=c;c=L[a+32>>2];L[i>>2]=L[a+28>>2];L[i+4>>2]=c;c=L[a+56>>2];L[g+8>>2]=L[a+52>>2];L[g+12>>2]=c;c=L[a+48>>2];L[g>>2]=L[a+44>>2];L[g+4>>2]=c}fa=a+80|0;return b|0}function Qp(a,b){a=a|0;b=b|0;var c=S(0),d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=0,j=S(0),k=S(0),l=S(0),m=0;i=fa-16|0;fa=i;L[i+12>>2]=a;L[i+8>>2]=b;m=L[i+12>>2];b=L[i+8>>2];a=fa+-64|0;fa=a;L[a+56>>2]=0;L[a+60>>2]=0;L[a+48>>2]=0;L[a+52>>2]=0;e=P[b+12>>2];g=P[b+8>>2];c=P[b>>2];d=P[b+4>>2];L[a+44>>2]=0;L[a+28>>2]=0;j=S(S(2)/S(S(e*e)+S(S(g*g)+S(S(c*c)+S(d*d)))));k=S(g*j);f=S(d*k);h=S(c*j);l=S(e*h);P[a+36>>2]=f+l;P[a+24>>2]=f-l;f=S(c*h);h=d;d=S(d*j);j=S(h*d);P[a+40>>2]=S(1)-S(f+j);g=S(g*k);P[a+20>>2]=S(1)-S(f+g);L[a+12>>2]=0;f=S(c*k);h=S(e*d);P[a+32>>2]=f-h;c=S(c*d);e=S(e*k);P[a+16>>2]=c+e;P[a+8>>2]=f+h;P[a+4>>2]=c-e;P[a>>2]=S(1)-S(j+g);jg(m,a);fa=a- -64|0;fa=i+16|0}function ne(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;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;d=L[e+12>>2];b=L[e+4>>2];h=L[e>>2];a=fa-96|0;fa=a;c=L[e+8>>2];f=L[c+192>>2];L[a+88>>2]=-1;L[a+92>>2]=-1;L[a+84>>2]=c+4;L[a+80>>2]=c;L[a+76>>2]=f;L[a+72>>2]=0;c=L[b+192>>2];L[a+64>>2]=-1;L[a+68>>2]=-1;L[a+60>>2]=b+4;L[a+56>>2]=b;L[a+52>>2]=c;L[a+48>>2]=0;b=L[d+24>>2];c=ha[L[L[b>>2]+8>>2]](b,a+72|0,a+48|0,0)|0;if(c){b=a+12|0;f=a+48|0;L[b+12>>2]=f;g=a+72|0;L[b+8>>2]=g;L[b+4>>2]=0;L[b>>2]=11584;L[b+32>>2]=h;L[b>>2]=8520;ha[L[L[c>>2]+8>>2]](c,g,f,d+28|0,b);ha[L[L[c>>2]>>2]](c)|0;b=L[d+24>>2];ha[L[L[b>>2]+60>>2]](b,c)}fa=a+96|0;fa=e+16|0}function Lm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=S(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=S(0),q=S(0),r=S(0),s=S(0),t=S(0),u=S(0);e=S(ha[L[L[a>>2]+48>>2]](a));j=P[b+52>>2];h=P[b+20>>2];m=P[b+24>>2];k=P[b+56>>2];i=P[b+36>>2];n=P[a+32>>2];f=P[b+40>>2];g=P[a+36>>2];l=P[b+48>>2];o=P[b>>2];p=P[b+4>>2];q=P[b+8>>2];r=P[b+16>>2];s=P[b+32>>2];t=P[a+28>>2];L[c+12>>2]=0;g=S(e+g);u=S(g*S(T(f)));f=S(e+t);e=S(e+n);i=S(u+S(S(f*S(T(s)))+S(e*S(T(i)))));P[c+8>>2]=k-i;h=S(S(g*S(T(m)))+S(S(f*S(T(r)))+S(e*S(T(h)))));P[c+4>>2]=j-h;e=S(S(g*S(T(q)))+S(S(f*S(T(o)))+S(e*S(T(p)))));P[c>>2]=l-e;L[d+12>>2]=0;P[d+8>>2]=k+i;P[d+4>>2]=h+j;P[d>>2]=e+l}function RH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=S(0);d=fa-80|0;fa=d;e=L[L[a>>2]>>2];f=L[L[a+4>>2]>>2];a:{if(!(ha[L[L[b>>2]+24>>2]](b,e,f)|0)){break a}g=L[e+192>>2];L[d+72>>2]=-1;L[d+76>>2]=-1;L[d+68>>2]=e+4;L[d+64>>2]=e;L[d+60>>2]=g;L[d+56>>2]=0;g=L[f+192>>2];L[d+48>>2]=-1;L[d+52>>2]=-1;L[d+44>>2]=f+4;L[d+40>>2]=f;L[d+36>>2]=g;L[d+32>>2]=0;if(!L[a+8>>2]){b=ha[L[L[b>>2]+8>>2]](b,d+56|0,d+32|0,0)|0;L[a+8>>2]=b;if(!b){break a}}L[d+12>>2]=d+32;L[d+8>>2]=d+56;L[d+4>>2]=0;L[d>>2]=11584;a=L[a+8>>2];b=L[a>>2];if(L[c+8>>2]==1){ha[L[b+8>>2]](a,d+56|0,d+32|0,c,d);break a}h=S(ha[L[b+12>>2]](a,e,f,c,d));if(!(h>2])){break a}P[c+12>>2]=h}fa=d+80|0}function wE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=S(0),h=S(0),i=S(0);f=P[a+20>>2];g=P[a+32>>2];h=P[a+24>>2];i=P[a+28>>2];e=S(S(g*P[b+8>>2])+S(S(h*P[b>>2])+S(i*P[b+4>>2])));if(f>2]=e;c=L[b+12>>2];L[a+12>>2]=L[b+8>>2];L[a+16>>2]=c;c=L[b+4>>2];L[a+4>>2]=L[b>>2];L[a+8>>2]=c;f=e}e=S(S(g*P[b+24>>2])+S(S(h*P[b+16>>2])+S(i*P[b+20>>2])));if(e>f){P[a+20>>2]=e;c=L[b+28>>2];L[a+12>>2]=L[b+24>>2];L[a+16>>2]=c;c=L[b+20>>2];L[a+4>>2]=L[b+16>>2];L[a+8>>2]=c}else{e=f}f=S(S(g*P[b+40>>2])+S(S(h*P[b+32>>2])+S(i*P[b+36>>2])));if(e>2]=f;c=L[b+44>>2];L[a+12>>2]=L[b+40>>2];L[a+16>>2]=c;c=L[b+36>>2];L[a+4>>2]=L[b+32>>2];L[a+8>>2]=c}}function sF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=S(0),f=S(0),g=0,h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=S(0),n=S(0);d=fa-96|0;fa=d;L[d+44>>2]=0;L[d+48>>2]=0;L[d+56>>2]=0;L[d+60>>2]=0;L[d+52>>2]=1065353216;g=d- -64|0;L[g>>2]=0;L[g+4>>2]=0;L[d+76>>2]=0;L[d+80>>2]=0;L[d+72>>2]=1065353216;L[d+84>>2]=0;L[d+88>>2]=0;L[d+92>>2]=0;L[d+36>>2]=0;L[d+40>>2]=0;L[d+32>>2]=1065353216;ha[L[L[a>>2]+8>>2]](a,d+32|0,d+16|0,d);h=P[d+8>>2];i=P[d+24>>2];e=S(h-i);m=S(e*e);e=P[d>>2];j=P[d+16>>2];f=S(e-j);n=S(f*f);f=P[d+4>>2];k=P[d+20>>2];l=S(f-k);P[c>>2]=S(_(S(m+S(n+S(l*l)))))*S(.5);L[b+12>>2]=0;P[b+8>>2]=S(h+i)*S(.5);P[b+4>>2]=S(f+k)*S(.5);P[b>>2]=S(e+j)*S(.5);fa=d+96|0}function ZC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=S(0),h=S(0),i=S(0);f=P[a+84>>2];g=P[a+96>>2];h=P[a+88>>2];i=P[a+92>>2];e=S(S(g*P[b+8>>2])+S(S(h*P[b>>2])+S(i*P[b+4>>2])));if(f>2]=e;c=L[b+12>>2];L[a+12>>2]=L[b+8>>2];L[a+16>>2]=c;c=L[b+4>>2];L[a+4>>2]=L[b>>2];L[a+8>>2]=c;f=e}e=S(S(g*P[b+24>>2])+S(S(h*P[b+16>>2])+S(i*P[b+20>>2])));if(e>f){P[a+84>>2]=e;c=L[b+28>>2];L[a+12>>2]=L[b+24>>2];L[a+16>>2]=c;c=L[b+20>>2];L[a+4>>2]=L[b+16>>2];L[a+8>>2]=c}else{e=f}f=S(S(g*P[b+40>>2])+S(S(h*P[b+32>>2])+S(i*P[b+36>>2])));if(e>2]=f;c=L[b+44>>2];L[a+12>>2]=L[b+40>>2];L[a+16>>2]=c;c=L[b+36>>2];L[a+4>>2]=L[b+32>>2];L[a+8>>2]=c}}function zg(a,b,c,d){var e=S(0),f=S(0),g=S(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=S(0);i=P[c+24>>2];e=P[b+24>>2];l=S(i-e);j=P[c+16>>2];g=P[b+16>>2];m=S(j-g);f=P[a+4>>2];o=P[a>>2];k=P[c+20>>2];h=P[b+20>>2];n=S(k-h);p=P[a+8>>2];a=S(S(e*S(S(m*f)-S(o*n)))+S(S(g*S(S(n*p)-S(f*l)))+S(h*S(S(l*o)-S(p*m)))))S(0)){break a}f=S(S(i*i)+S(S(j*j)+S(k*k)));if(S(S(i*l)+S(S(j*m)+S(k*n)))S(0)?e:S(0)}P[d>>2]=_(f)}return a}function Sx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;a=L[e+8>>2];b=fa-32|0;fa=b;L[b+28>>2]=L[e+12>>2];L[b+24>>2]=a;a=b+8|0;f=L[b+28>>2];ua(a,f,L[b+24>>2]+48|0);hb(f+48|0,a);c=L[b+24>>2];a=fa-48|0;fa=a;L[a+44>>2]=f;L[a+40>>2]=c;c=L[a+44>>2];P[a+36>>2]=mc(L[a+40>>2],c);P[a+32>>2]=lc(L[a+40>>2],c);P[a+28>>2]=kc(L[a+40>>2],c);d=c+16|0;P[a+24>>2]=mc(L[a+40>>2],d);P[a+20>>2]=lc(L[a+40>>2],d);P[a+16>>2]=kc(L[a+40>>2],d);d=c+32|0;P[a+12>>2]=mc(L[a+40>>2],d);P[a+8>>2]=lc(L[a+40>>2],d);P[a+4>>2]=kc(L[a+40>>2],d);md(c,a+36|0,a+32|0,a+28|0,a+24|0,a+20|0,a+16|0,a+12|0,a+8|0,a+4|0);fa=a+48|0;fa=b+32|0;fa=e+16|0;return f|0}function em(a){a=a|0;var b=0,c=0,d=0,e=0;L[a>>2]=15788;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]=0;J[a+60|0]=1;L[a+48>>2]=0;L[a+52>>2]=0;e=L[a+28>>2];if((e|0)>0){while(1){b=L[a+36>>2]+R(c,36)|0;d=L[b+12>>2];if(!(d?!d|!M[b+16|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](d)}L[b+12>>2]=0;J[b+16|0]=1;L[b+4>>2]=0;L[b+8>>2]=0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}b=L[a+36>>2];if(!(b?!b|!M[a+40|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+36>>2]=0;J[a+40|0]=1;L[a+28>>2]=0;L[a+32>>2]=0;b=L[a+16>>2];if(!(b?!b|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+16>>2]=0;J[a+20|0]=1;L[a+8>>2]=0;L[a+12>>2]=0;return a|0}function xj(a,b){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;d=fa-96|0;fa=d;L[d+92>>2]=a;L[d+88>>2]=b;m=L[d+88>>2];b=fa-16|0;fa=b;h=d+40|0;L[b+12>>2]=h;L[b+8>>2]=m;e=fa-16|0;c=L[b+8>>2];L[e+12>>2]=c;n=L[e+12>>2];g=fa-16|0;e=c+16|0;L[g+12>>2]=e;o=L[g+12>>2];i=fa-16|0;g=c+32|0;L[i+12>>2]=g;i=L[i+12>>2];j=fa-16|0;L[j+12>>2]=c;j=L[j+12>>2];k=fa-16|0;L[k+12>>2]=e;k=L[k+12>>2];l=fa-16|0;L[l+12>>2]=g;l=L[l+12>>2];f=fa-16|0;L[f+12>>2]=c;c=L[f+12>>2];f=fa-16|0;L[f+12>>2]=e;e=L[f+12>>2];f=fa-16|0;L[f+12>>2]=g;lf(h,n,o,i,j+4|0,k+4|0,l+4|0,c+8|0,e+8|0,L[f+12>>2]+8|0);fa=b+16|0;b=d+8|0;Zb(b,m+48|0);c=d+24|0;ua(c,h,b);Qf(a,h,c);fa=d+96|0}function ny(a){a=a|0;var b=0,c=0,d=0,e=0;b=fa-32|0;fa=b;L[b+28>>2]=a;if(!M[29684]){L[(fa-16|0)+12>>2]=29668;J[29684]=1}d=b+12|0;a=fa-48|0;fa=a;L[a+44>>2]=L[b+28>>2];c=L[a+44>>2];P[a+40>>2]=S(S(-P[c+12>>2])*P[c+12>>2])+S(1);a:{if(P[a+40>>2]>2]=1;P[a+32>>2]=0;P[a+28>>2]=0;la(d,a+36|0,a+32|0,a+28|0);break a}e=fa-16|0;P[e+12>>2]=P[a+40>>2];P[a+24>>2]=S(1)/S(_(P[e+12>>2]));P[a+20>>2]=P[c>>2]*P[a+24>>2];P[a+16>>2]=P[c+4>>2]*P[a+24>>2];P[a+12>>2]=P[c+8>>2]*P[a+24>>2];la(d,a+20|0,a+16|0,a+12|0)}fa=a+48|0;a=L[b+16>>2];L[7417]=L[b+12>>2];L[7418]=a;a=L[b+24>>2];L[7419]=L[b+20>>2];L[7420]=a;fa=b+32|0;return 29668}function Bo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-32|0;fa=d;L[d+28>>2]=a;L[d+24>>2]=b;J[d+23|0]=c;a=L[d+28>>2];P[a+4>>2]=P[L[d+24>>2]+40>>2];L[a+76>>2]=L[L[d+24>>2]>>2];a:{if(J[d+23|0]&1){b=L[d+24>>2];c=L[b+12>>2];L[a+44>>2]=L[b+8>>2];L[a+48>>2]=c;c=L[b+20>>2];L[a+52>>2]=L[b+16>>2];L[a+56>>2]=c;break a}b=fa-16|0;L[b+12>>2]=L[a+76>>2];L[b+12>>2]=L[b+12>>2]+4;ua(d+4|0,L[b+12>>2],L[d+24>>2]+8|0);b=L[d+8>>2];L[a+44>>2]=L[d+4>>2];L[a+48>>2]=b;b=L[d+16>>2];L[a+52>>2]=L[d+12>>2];L[a+56>>2]=b}b=L[d+24>>2];c=L[b+28>>2];L[a+60>>2]=L[b+24>>2];L[a+64>>2]=c;c=L[b+36>>2];L[a+68>>2]=L[b+32>>2];L[a+72>>2]=c;fa=d+32|0;return S(P[L[d+24>>2]+40>>2])}function Ml(a){a=a|0;var b=0,c=0,d=0;L[a>>2]=18076;c=L[a+152>>2];b=c;a:{if(!b){break a}b:{if(!(c&1)){break b}b=c-1|0;d=L[L[a+160>>2]+(b<<2)>>2];if(!d){break b}ha[L[L[d>>2]+4>>2]](d)}if((c|0)==1){break a}while(1){c=L[(L[a+160>>2]+(b<<2)|0)-4>>2];if(c){ha[L[L[c>>2]+4>>2]](c)}b=b-2|0;c=L[L[a+160>>2]+(b<<2)>>2];if(c){ha[L[L[c>>2]+4>>2]](c)}if(b){continue}break}}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]=0;J[a+164|0]=1;L[a+152>>2]=0;L[a+156>>2]=0;L[a>>2]=4720;b=L[a+84>>2];if(!(b?!b|!M[a+88|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+84>>2]=0;J[a+88|0]=1;L[a+76>>2]=0;L[a+80>>2]=0;return a|0}function Kd(a,b,c,d){var e=S(0),f=S(0),g=S(0),h=S(0);g=S(P[c+8>>2]-P[a+16>>2]);h=P[a+48>>2];f=S(S(P[c+4>>2]-P[a+12>>2])*P[a+44>>2]);e=S(S(P[c>>2]-P[a+8>>2])*P[a+40>>2]);c=d;a:{if(e<=S(0)){break a}c=N[a+6>>1];if(e>=S(c>>>0)){c=c&N[a+4>>1]|d;break a}if(e=S(0)){c=~~e>>>0}else{c=0}c=c&N[a+4>>1]|d}e=S(g*h);K[b>>1]=c;c=d;b:{if(f<=S(0)){break b}c=N[a+6>>1];if(S(c>>>0)<=f){c=c&N[a+4>>1]|d;break b}if(f=S(0)){c=~~f>>>0}else{c=0}c=c&N[a+4>>1]|d}K[b+2>>1]=c;if(!(e<=S(0))){c=N[a+6>>1];if(e>=S(c>>>0)){K[b+4>>1]=c&N[a+4>>1]|d;return}if(e=S(0)){c=~~e>>>0}else{c=0}d=c&N[a+4>>1]|d}K[b+4>>1]=d}function qk(a,b){a=a|0;b=S(b);var c=0,d=0,e=S(0),f=S(0),g=S(0),h=0,i=0,j=S(0),k=S(0),l=S(0),m=S(0),n=S(0),o=0;i=L[a+732>>2];if((i|0)>0){o=L[a+740>>2];while(1){c=R(h,52)+o|0;d=L[c+8>>2];f=P[d+48>>2];g=P[c+44>>2];a=L[c+12>>2];j=P[c+36>>2];k=P[d+40>>2];l=P[d+44>>2];m=P[c+40>>2];n=S(S(P[c+32>>2]*S(-S(S(g*S(f-P[a+48>>2]))+S(S(j*S(k-P[a+40>>2]))+S(S(l-P[a+44>>2])*m)))))*b);e=S(P[d+88>>2]*n);P[d+48>>2]=f+S(g*e);P[d+44>>2]=l+S(m*e);P[d+40>>2]=k+S(j*e);f=P[c+44>>2];g=P[c+40>>2];e=S(n*P[a+88>>2]);P[a+40>>2]=P[a+40>>2]-S(P[c+36>>2]*e);P[a+44>>2]=P[a+44>>2]-S(e*g);P[a+48>>2]=P[a+48>>2]-S(e*f);h=h+1|0;if((i|0)!=(h|0)){continue}break}}}function It(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;J[d+7|0]=c;c=oa(1388);a=ll(c,L[d+12>>2],L[d+8>>2],J[d+7|0]&1);L[a+4>>2]=9;L[a>>2]=19664;L[a+1364>>2]=1065353216;L[a+1368>>2]=1065353216;b=a+1309|0;J[b|0]=0;J[b+1|0]=0;J[b+2|0]=0;J[b+3|0]=0;b=a+1313|0;J[b|0]=0;J[b+1|0]=0;b=a+1316|0;L[b>>2]=0;L[b+4>>2]=0;b=a+1324|0;L[b>>2]=0;L[b+4>>2]=0;b=a+1332|0;L[b>>2]=0;L[b+4>>2]=0;b=a+1340|0;L[b>>2]=0;L[b+4>>2]=0;b=a+1348|0;L[b>>2]=0;L[b+4>>2]=0;b=a+1356|0;L[b>>2]=0;L[b+4>>2]=0;b=a+1380|0;L[b>>2]=1065353216;L[b+4>>2]=1065353216;a=a+1372|0;L[a>>2]=1065353216;L[a+4>>2]=1065353216;fa=d+16|0;return c|0}function mF(a){a=a|0;var b=S(0),c=0,d=0,e=0,f=0;c=fa-32|0;fa=c;L[a+48>>2]=-581039253;L[a+52>>2]=-581039253;L[a+32>>2]=1566444395;L[a+36>>2]=1566444395;L[a+56>>2]=-581039253;L[a+60>>2]=0;L[a+40>>2]=1566444395;L[a+44>>2]=0;if(L[a+16>>2]>0){while(1){e=L[a+24>>2]+R(d,80)|0;f=L[e+64>>2];ha[L[L[f>>2]+8>>2]](f,e,c+16|0,c);b=P[c+16>>2];if(b>2]){P[a+32>>2]=b}b=P[c>>2];if(b>P[a+48>>2]){P[a+48>>2]=b}b=P[c+20>>2];if(b>2]){P[a+36>>2]=b}b=P[c+4>>2];if(b>P[a+52>>2]){P[a+52>>2]=b}b=P[c+24>>2];if(b>2]){P[a+40>>2]=b}b=P[c+8>>2];if(b>P[a+56>>2]){P[a+56>>2]=b}d=d+1|0;if((d|0)>2]){continue}break}}fa=c+32|0}function _z(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=S(0),i=S(0),j=S(0);c=fa-48|0;fa=c;if(L[a+136>>2]>0){while(1){g=R(f,284);d=g+L[a+144>>2]|0;e=M[d+84|0];L[c+44>>2]=0;L[c+36>>2]=0;L[c+40>>2]=1065353216;P[c+32>>2]=e?S(0):S(1);e=L[d+152>>2];L[c+24>>2]=L[d+148>>2];L[c+28>>2]=e;e=L[d+144>>2];L[c+16>>2]=L[d+140>>2];L[c+20>>2]=e;d=d+(L[a+120>>2]<<2)|0;h=P[d+92>>2];i=P[d+108>>2];j=P[d+124>>2];L[c+12>>2]=0;P[c+8>>2]=j+P[c+24>>2];P[c+4>>2]=i+P[c+20>>2];P[c>>2]=h+P[c+16>>2];d=c+16|0;e=c+32|0;ha[L[L[b>>2]+8>>2]](b,d,c,e);ha[L[L[b>>2]+8>>2]](b,d,(L[a+144>>2]+g|0)+16|0,e);f=f+1|0;if((f|0)>2]){continue}break}}fa=c+48|0}function eo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-48|0;fa=e;L[e+44>>2]=a;L[e+40>>2]=b;L[e+36>>2]=c;L[e+32>>2]=d;a=L[e+44>>2]+16|0;b=fa-16|0;L[b+12>>2]=e;L[b+8>>2]=a;c=L[b+8>>2];d=L[c+4>>2];a=L[b+12>>2];L[a>>2]=L[c>>2];L[a+4>>2]=d;d=L[c+12>>2];L[a+8>>2]=L[c+8>>2];L[a+12>>2]=d;b=L[b+8>>2];c=L[b+20>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=c;c=L[b+28>>2];L[a+24>>2]=L[b+24>>2];L[a+28>>2]=c;Mh(e,L[e+40>>2]);b=L[e+4>>2];a=L[e+36>>2];L[a>>2]=L[e>>2];L[a+4>>2]=b;b=L[e+12>>2];L[a+8>>2]=L[e+8>>2];L[a+12>>2]=b;b=L[e+20>>2];a=L[e+32>>2];L[a>>2]=L[e+16>>2];L[a+4>>2]=b;b=L[e+28>>2];L[a+8>>2]=L[e+24>>2];L[a+12>>2]=b;fa=e+48|0}function pl(a,b,c,d){var e=S(0),f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=S(0);f=Fa(c);e=P[b+444>>2];c=Ea(c);a:{if(!(S(T(f))>S(1.1920928955078125e-7))){h=S(f*f);break a}h=S(f*f);g=S(S(c*c)/h);i=S(g/S(e*e));e=P[b+448>>2];e=S(_(S(S(g+S(1))/S(i+S(S(1)/S(e*e))))))}L[a+12>>2]=0;e=S(e*S(.5));g=S(Ea(e)/S(_(S(S(c*c)+S(h+S(0))))));c=S(g*S(-c));e=Fa(e);i=S(e*S(0));h=S(g*S(0));j=S(h*S(0));k=S(S(i+S(c*d))-j);f=S(f*g);g=S(S(i+j)-S(f*d));j=S(c*S(-0));i=S(j+S(S(f*S(-0))-S(h*d)));d=S(j+S(S(e*d)+S(f*S(0))));P[a+8>>2]=S(k*h)+S(S(S(e*g)-S(i*c))-S(d*f));P[a+4>>2]=S(d*c)+S(S(S(e*k)-S(i*f))-S(g*h));P[a>>2]=S(g*f)+S(S(S(e*d)-S(i*h))-S(k*c))}function kF(a,b,c){a=a|0;b=S(b);c=c|0;var d=0,e=S(0),f=S(0),g=S(0),h=0,i=S(0);d=fa-96|0;fa=d;L[d+44>>2]=0;L[d+48>>2]=0;L[d+56>>2]=0;L[d+60>>2]=0;L[d+52>>2]=1065353216;h=d- -64|0;L[h>>2]=0;L[h+4>>2]=0;L[d+76>>2]=0;L[d+80>>2]=0;L[d+72>>2]=1065353216;L[d+84>>2]=0;L[d+88>>2]=0;L[d+92>>2]=0;L[d+36>>2]=0;L[d+40>>2]=0;L[d+32>>2]=1065353216;ha[L[L[a>>2]+8>>2]](a,d+32|0,d+16|0,d);e=P[d+24>>2];i=P[d+8>>2];b=S(b/S(12));f=S(S(P[d>>2]-P[d+16>>2])*S(.5));f=S(f+f);f=S(f*f);g=S(S(P[d+4>>2]-P[d+20>>2])*S(.5));g=S(g+g);g=S(g*g);P[c+8>>2]=b*S(f+g);e=S(S(i-e)*S(.5));e=S(e+e);e=S(e*e);P[c+4>>2]=b*S(f+e);P[c>>2]=b*S(g+e);fa=d+96|0}function sq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;if(!M[3e4]){mi(29904);J[3e4]=1}b=L[e+8>>2];a=fa-16|0;L[a+12>>2]=L[e+12>>2];L[a+8>>2]=b;b=L[L[a+12>>2]+12>>2]+R(L[a+8>>2],96)|0;fa=a;L[a+12>>2]=29904;L[a+8>>2]=b;c=L[a+8>>2];d=L[c+4>>2];b=L[a+12>>2];L[b>>2]=L[c>>2];L[b+4>>2]=d;L[b+24>>2]=L[c+24>>2];d=L[c+20>>2];L[b+16>>2]=L[c+16>>2];L[b+20>>2]=d;d=L[c+12>>2];L[b+8>>2]=L[c+8>>2];L[b+12>>2]=d;qg(b+28|0,L[a+8>>2]+28|0);c=L[a+8>>2];d=L[c+80>>2];L[b+76>>2]=L[c+76>>2];L[b+80>>2]=d;L[b+92>>2]=L[c+92>>2];d=L[c+88>>2];L[b+84>>2]=L[c+84>>2];L[b+88>>2]=d;fa=a+16|0;fa=e+16|0;return 29904}function ID(a,b){a=a|0;b=b|0;var c=S(0),d=0;d=fa-96|0;fa=d;Ue(a,b);J[a+88|0]=1;if(!M[30416]){L[7581]=0;L[7582]=0;L[7580]=1065353216;L[7583]=0;L[7584]=0;L[7586]=0;L[7587]=0;L[7585]=1065353216;L[7588]=0;L[7589]=0;L[7593]=0;L[7594]=0;L[7592]=-1082130432;L[7590]=1065353216;L[7591]=0;L[7595]=0;L[7596]=0;L[7598]=0;L[7599]=0;L[7597]=-1082130432;L[7600]=0;L[7601]=0;L[7602]=-1082130432;L[7603]=0;J[30416]=1}b=pa(d,0,96);ha[L[L[a>>2]+76>>2]](a,30320,b,6);c=P[a+44>>2];P[a+72>>2]=c+P[b>>2];P[a+56>>2]=P[b+48>>2]-c;P[a+76>>2]=c+P[b+20>>2];P[a+60>>2]=P[b+68>>2]-c;P[a+80>>2]=c+P[b+40>>2];P[a- -64>>2]=P[b+88>>2]-c;fa=b+96|0}function tx(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=S(e);var f=0,g=0,h=0;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;P[f+12>>2]=e;d=sa(44);b=L[f+28>>2];c=L[f+24>>2];g=L[f+20>>2];h=L[f+16>>2];e=P[f+12>>2];a=fa-32|0;L[a+28>>2]=d;L[a+24>>2]=b;L[a+20>>2]=c;L[a+16>>2]=g;L[a+12>>2]=h;P[a+8>>2]=e;b=L[a+28>>2];L[b>>2]=L[a+24>>2];L[b+4>>2]=L[a+20>>2];c=L[a+16>>2];g=L[c+4>>2];L[b+8>>2]=L[c>>2];L[b+12>>2]=g;g=L[c+12>>2];L[b+16>>2]=L[c+8>>2];L[b+20>>2]=g;c=L[a+12>>2];g=L[c+4>>2];L[b+24>>2]=L[c>>2];L[b+28>>2]=g;g=L[c+12>>2];L[b+32>>2]=L[c+8>>2];L[b+36>>2]=g;P[b+40>>2]=P[a+8>>2];fa=f+32|0;return d|0}function Dy(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(Wa(a,L[b+8>>2],f)){Wf(b,c,d,e);return}g=M[b+53|0];j=L[a+12>>2];J[b+53|0]=0;h=M[b+52|0];J[b+52|0]=0;m=a+16|0;Vf(m,b,c,d,e,f);k=M[b+53|0];g=g|k;l=M[b+52|0];h=h|l;i=a+24|0;j=(j<<3)+m|0;a:{if(i>>>0>=j>>>0){break a}while(1){h=h&1;g=g&1;if(M[b+54|0]){break a}b:{if(l){if(L[b+24>>2]==1){break a}if(M[a+8|0]&2){break b}break a}if(!k){break b}if(!(J[a+8|0]&1)){break a}}K[b+52>>1]=0;Vf(i,b,c,d,e,f);k=M[b+53|0];g=k|g;l=M[b+52|0];h=l|h;i=i+8|0;if(j>>>0>i>>>0){continue}break}}J[b+53|0]=(g&255)!=0;J[b+52|0]=(h&255)!=0}function fw(a,b){a=a|0;b=S(b);var c=0,d=0,e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;P[e+8>>2]=b;b=P[e+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[e+12>>2];P[a+8>>2]=b;b=P[a+8>>2];c=fa-16|0;d=L[a+12>>2];L[c+12>>2]=d;c=L[c+12>>2];P[c>>2]=P[c>>2]-b;b=P[a+8>>2];c=fa-16|0;L[c+12>>2]=d;c=L[c+12>>2];P[c+4>>2]=P[c+4>>2]-b;b=P[a+8>>2];c=fa-16|0;L[c+12>>2]=d;c=L[c+12>>2];P[c+8>>2]=P[c+8>>2]-b;b=P[a+8>>2];c=fa-16|0;d=d+16|0;L[c+12>>2]=d;c=L[c+12>>2];P[c>>2]=P[c>>2]+b;b=P[a+8>>2];c=fa-16|0;L[c+12>>2]=d;c=L[c+12>>2];P[c+4>>2]=P[c+4>>2]+b;b=P[a+8>>2];c=fa-16|0;L[c+12>>2]=d;d=L[c+12>>2];P[d+8>>2]=P[d+8>>2]+b;fa=a+16|0;fa=e+16|0}function ji(a,b){var c=0,d=0,e=0,f=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=fa-16|0;a=L[c+12>>2];L[b+12>>2]=a;if(L[L[b+12>>2]+8>>2]>2]){d=L[c+8>>2];b=fa-16|0;fa=b;L[b+8>>2]=a;L[b+4>>2]=d;e=L[b+8>>2];a:{if(L[b+4>>2]){f=L[b+4>>2];d=fa-16|0;fa=d;L[d+12>>2]=e;L[d+8>>2]=f;L[d+4>>2]=0;e=R(L[d+8>>2],96);L[8513]=L[8513]+1;e=ha[L[6798]](e,16)|0;fa=d+16|0;L[b+12>>2]=e;break a}L[b+12>>2]=0}fa=b+16|0;L[c+4>>2]=L[b+12>>2];b=fa-16|0;L[b+12>>2]=a;Dh(a,L[L[b+12>>2]+4>>2],L[c+4>>2]);b=fa-16|0;L[b+12>>2]=a;Db(a,L[L[b+12>>2]+4>>2]);jb(a);J[a+16|0]=1;L[a+12>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2]}fa=c+16|0}function Fh(a,b){var c=0,d=0,e=0,f=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=fa-16|0;a=L[c+12>>2];L[b+12>>2]=a;if(L[L[b+12>>2]+8>>2]>2]){d=L[c+8>>2];b=fa-16|0;fa=b;L[b+8>>2]=a;L[b+4>>2]=d;e=L[b+8>>2];a:{if(L[b+4>>2]){f=L[b+4>>2];d=fa-16|0;fa=d;L[d+12>>2]=e;L[d+8>>2]=f;L[d+4>>2]=0;e=R(L[d+8>>2],36);L[8513]=L[8513]+1;e=ha[L[6798]](e,16)|0;fa=d+16|0;L[b+12>>2]=e;break a}L[b+12>>2]=0}fa=b+16|0;L[c+4>>2]=L[b+12>>2];b=fa-16|0;L[b+12>>2]=a;Gh(a,L[L[b+12>>2]+4>>2],L[c+4>>2]);b=fa-16|0;L[b+12>>2]=a;Hh(a,L[L[b+12>>2]+4>>2]);jb(a);J[a+16|0]=1;L[a+12>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2]}fa=c+16|0}function Xh(a,b){var c=0,d=0,e=0,f=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=fa-16|0;a=L[c+12>>2];L[b+12>>2]=a;if(L[L[b+12>>2]+8>>2]>2]){d=L[c+8>>2];b=fa-16|0;fa=b;L[b+8>>2]=a;L[b+4>>2]=d;e=L[b+8>>2];a:{if(L[b+4>>2]){f=L[b+4>>2];d=fa-16|0;fa=d;L[d+12>>2]=e;L[d+8>>2]=f;L[d+4>>2]=0;e=L[d+8>>2]<<4;L[8513]=L[8513]+1;e=ha[L[6798]](e,16)|0;fa=d+16|0;L[b+12>>2]=e;break a}L[b+12>>2]=0}fa=b+16|0;L[c+4>>2]=L[b+12>>2];b=fa-16|0;L[b+12>>2]=a;Uh(a,L[L[b+12>>2]+4>>2],L[c+4>>2]);b=fa-16|0;L[b+12>>2]=a;Db(a,L[L[b+12>>2]+4>>2]);jb(a);J[a+16|0]=1;L[a+12>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2]}fa=c+16|0}function qh(a){var b=0,c=0,d=0,e=0,f=0;J[a+28|0]=0;L[a+24>>2]=0;L[a+72>>2]=0;J[a+20|0]=1;L[a>>2]=6064;L[a+16>>2]=0;J[a+48|0]=1;L[a+8>>2]=0;L[a+12>>2]=0;L[a+44>>2]=0;J[a+68|0]=1;L[a+36>>2]=0;L[a+40>>2]=0;L[a- -64>>2]=0;L[a+56>>2]=0;L[a+60>>2]=0;L[8513]=L[8513]+1;e=ha[L[6798]](32,16)|0;f=L[a+8>>2];if((f|0)>0){while(1){c=d<<4;b=c+e|0;c=c+L[a+16>>2]|0;L[b>>2]=L[c>>2];L[b+4>>2]=L[c+4>>2];L[b+8>>2]=L[c+8>>2];L[b+12>>2]=L[c+12>>2];d=d+1|0;if((f|0)!=(d|0)){continue}break}}b=L[a+16>>2];if(!(b?!b|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+16>>2]=e;J[a+20|0]=1;L[a+12>>2]=2;yn(a);return a}function Sb(a){var b=0,c=S(0);b=fa-96|0;fa=b;J[a+88|0]=1;if(!M[30416]){L[7581]=0;L[7582]=0;L[7580]=1065353216;L[7583]=0;L[7584]=0;L[7586]=0;L[7587]=0;L[7585]=1065353216;L[7588]=0;L[7589]=0;L[7593]=0;L[7594]=0;L[7592]=-1082130432;L[7590]=1065353216;L[7591]=0;L[7595]=0;L[7596]=0;L[7598]=0;L[7599]=0;L[7597]=-1082130432;L[7600]=0;L[7601]=0;L[7602]=-1082130432;L[7603]=0;J[30416]=1}b=pa(b,0,96);ha[L[L[a>>2]+76>>2]](a,30320,b,6);c=P[a+44>>2];P[a+72>>2]=P[b>>2]+c;P[a+56>>2]=P[b+48>>2]-c;P[a+76>>2]=c+P[b+20>>2];P[a+60>>2]=P[b+68>>2]-c;P[a+80>>2]=c+P[b+40>>2];P[a- -64>>2]=P[b+88>>2]-c;fa=b+96|0}function ld(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;b=L[e+8>>2];c=L[e+4>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[e+12>>2];L[a+8>>2]=b;L[a+4>>2]=c;c=L[a+8>>2];d=L[c+4>>2];b=L[a+12>>2];L[b+164>>2]=L[c>>2];L[b+168>>2]=d;d=L[c+12>>2];L[b+172>>2]=L[c+8>>2];L[b+176>>2]=d;d=fa-16|0;L[d+12>>2]=L[a+8>>2];c=1;a:{if(P[L[d+12>>2]>>2]!=S(1)){break a}d=fa-16|0;L[d+12>>2]=L[a+8>>2];c=1;if(P[L[d+12>>2]+4>>2]!=S(1)){break a}c=fa-16|0;L[c+12>>2]=L[a+8>>2];c=P[L[c+12>>2]+8>>2]!=S(1)}J[a+3|0]=c;if(J[a+3|0]&1){c=L[a+4>>2]}else{c=0}L[b+180>>2]=c;fa=a+16|0;fa=e+16|0}function sx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;f=sa(80);a=L[e+12>>2];c=L[e+8>>2];b=fa-16|0;fa=b;L[b+12>>2]=f;L[b+8>>2]=a;L[b+4>>2]=c;c=fa-16|0;a=L[b+12>>2];L[c+12>>2]=a;c=L[c+12>>2];L[c>>2]=2012;P[c+4>>2]=1;K[c+8>>1]=1;K[c+10>>1]=65535;L[a>>2]=1872;c=L[b+8>>2];d=L[c+4>>2];L[a+12>>2]=L[c>>2];L[a+16>>2]=d;d=L[c+12>>2];L[a+20>>2]=L[c+8>>2];L[a+24>>2]=d;c=L[b+4>>2];d=L[c+4>>2];L[a+28>>2]=L[c>>2];L[a+32>>2]=d;d=L[c+12>>2];L[a+36>>2]=L[c+8>>2];L[a+40>>2]=d;L[(fa-16|0)+12>>2]=a+44;L[(fa-16|0)+12>>2]=a+60;L[a+76>>2]=0;fa=b+16|0;fa=e+16|0;return f|0}function mn(a,b,c,d,e){a=a|0;b=b|0;c=S(c);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=S(0),m=S(0),n=S(0),o=S(0),p=S(0),q=S(0),r=S(0);f=fa-48|0;fa=f;L[f+44>>2]=e;L[f+40>>2]=d;j=P[a- -64>>2];k=P[a+60>>2];l=P[a+80>>2];m=P[a+72>>2];n=P[a+76>>2];o=P[a+96>>2];p=P[a+88>>2];q=P[a+92>>2];r=P[a+56>>2];g=P[b+8>>2];h=P[b>>2];i=P[b+4>>2];b=L[a+48>>2];L[f+32>>2]=0;P[f+28>>2]=S(o*g)+S(S(p*h)+S(i*q));P[f+24>>2]=S(l*g)+S(S(m*h)+S(i*n));P[f+36>>2]=c;L[f+12>>2]=b;P[f+20>>2]=S(j*g)+S(S(r*h)+S(k*i));L[f+16>>2]=f+40;a=L[a+44>>2];c=S(ha[L[L[a>>2]+12>>2]](a,f+12|0,1));fa=f+48|0;return S(c)}function eq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;b=0;c=L[e+12>>2];f=L[c+752>>2];if((f|0)>0){a=L[c+720>>2];g=a+R(L[e>>2],104)|0;h=a+R(L[e+4>>2],104)|0;i=a+R(L[e+8>>2],104)|0;c=L[c+760>>2];a=0;b=1;while(1){a:{j=R(a,44)+c|0;d=L[j+8>>2];b:{if(!((d|0)==(g|0)|(d|0)==(i|0))&(d|0)!=(h|0)){break b}d=L[j+12>>2];if(!((d|0)==(g|0)|(d|0)==(i|0))&(d|0)!=(h|0)){break b}d=L[j+16>>2];if((d|0)==(g|0)|(d|0)==(i|0)|(d|0)==(h|0)){break a}}a=a+1|0;b=(f|0)>(a|0);if((a|0)!=(f|0)){continue}}break}}fa=e+16|0;return b&1}function ty(a,b,c){a=a|0;b=b|0;c=S(c);var d=0,e=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;P[d+4>>2]=c;b=L[d+8>>2];a=fa-48|0;fa=a;L[a+44>>2]=L[d+12>>2];L[a+40>>2]=b;L[a+36>>2]=d+4;b=L[a+44>>2];P[a+32>>2]=nf(L[a+40>>2]);P[a+28>>2]=Qa(S(P[L[a+36>>2]>>2]*S(.5)))/P[a+32>>2];e=fa-16|0;L[e+12>>2]=L[a+40>>2];P[a+24>>2]=P[L[e+12>>2]>>2]*P[a+28>>2];e=fa-16|0;L[e+12>>2]=L[a+40>>2];P[a+20>>2]=P[L[e+12>>2]+4>>2]*P[a+28>>2];e=fa-16|0;L[e+12>>2]=L[a+40>>2];P[a+16>>2]=P[L[e+12>>2]+8>>2]*P[a+28>>2];P[a+12>>2]=Ra(S(P[L[a+36>>2]>>2]*S(.5)));vc(b,a+24|0,a+20|0,a+16|0,a+12|0);fa=a+48|0;fa=d+16|0}function _C(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=0,h=S(0),i=S(0),j=0,k=0;a:{e=P[b>>2];f=P[b+16>>2];i=e>2];if(P[a+24>>2]<(h>i?i:h)){break a}g=e>f;if(P[(h<(g?e:f)?!g<<4:32)+b>>2]>2]){break a}e=P[b+8>>2];g=b+24|0;f=P[g>>2];i=e>2];if(P[a+32>>2]<(h>i?i:h)){break a}k=g;g=e>f;if(P[(h<(g?e:f)?g?b+8|0:k:j)>>2]>2]){break a}e=P[b+4>>2];g=b+20|0;f=P[g>>2];i=e>2];if(P[a+28>>2]<(h>i?i:h)){break a}k=g;g=e>f;if(P[(h<(g?e:f)?g?b+4|0:k:j)>>2]>2]){break a}a=L[a+4>>2];ha[L[L[a>>2]+8>>2]](a,b,c,d)}}function vE(a,b,c){a=a|0;b=S(b);c=c|0;var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=S(0);f=P[a+36>>2];d=P[a+32>>2];i=P[a+28>>2];j=S(ha[L[L[a>>2]+48>>2]](a));d=S(d+S(ha[L[L[a>>2]+48>>2]](a)));k=S(ha[L[L[a>>2]+48>>2]](a));e=S(b*S(.5));g=S(b*S(.25));h=S(b/S(12));b=S(j+i);a:{b:{switch(L[a+52>>2]){case 0:f=e;e=S(d*d);d=S(f*e);b=S(S(h*S(b*S(b*S(4))))+S(g*e));e=b;break a;case 2:b=S(b*b);e=S(e*b);d=S(k+f);d=S(S(h*S(d*S(d*S(4))))+S(g*b));b=d;break a;default:break b}}f=e;e=S(b*b);b=S(f*e);d=S(S(h*S(d*S(d*S(4))))+S(g*e));e=d}L[c+12>>2]=0;P[c+8>>2]=e;P[c+4>>2]=b;P[c>>2]=d}function gc(a){var b=0;b=L[a>>2];if(b){Hd(a,b)}b=L[a+4>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+4>>2]=0;L[a+8>>2]=-1;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+16>>2]=0;L[a+24>>2]=0;L[a+28>>2]=0;b=L[a+52>>2];a:{if(!(M[a+56|0]?b:0)){L[a+52>>2]=0;J[a+56|0]=1;L[a+44>>2]=0;L[a+48>>2]=0;break a}if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+56|0]=1;L[a+52>>2]=0;L[a+44>>2]=0;L[a+48>>2]=0;b=L[a+32>>2];if(!b|!M[a+36|0]){break a}if(b){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}function Xi(a,b,c,d,e){var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;P[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;L[f+12>>2]=e;a=L[f+28>>2];P[a>>2]=P[f+24>>2];L[a+4>>2]=L[f+20>>2];d=a+8|0;Pb(d);L[a+72>>2]=L[f+16>>2];c=L[f+12>>2];e=L[c+4>>2];L[a+76>>2]=L[c>>2];L[a+80>>2]=e;e=L[c+12>>2];L[a+84>>2]=L[c+8>>2];L[a+88>>2]=e;P[a+92>>2]=0;P[a+96>>2]=0;P[a+100>>2]=.5;P[a+104>>2]=0;P[a+108>>2]=0;P[a+112>>2]=.800000011920929;P[a+116>>2]=1;J[a+120|0]=0;P[a+124>>2]=.004999999888241291;P[a+128>>2]=.009999999776482582;P[a+132>>2]=.009999999776482582;P[a+136>>2]=.009999999776482582;ee(d);fa=f+32|0}function Ho(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-32|0;fa=d;L[d+28>>2]=a;L[d+24>>2]=b;J[d+23|0]=c;a=L[d+28>>2];P[a+4>>2]=P[L[d+24>>2]+24>>2];L[a+8>>2]=L[L[d+24>>2]>>2];a:{if(J[d+23|0]&1){b=L[d+24>>2];c=L[b+12>>2];L[a+52>>2]=L[b+8>>2];L[a+56>>2]=c;c=L[b+20>>2];L[a+60>>2]=L[b+16>>2];L[a+64>>2]=c;break a}b=fa-16|0;L[b+12>>2]=L[a+8>>2];L[b+12>>2]=L[b+12>>2]+4;ua(d+4|0,L[b+12>>2],L[d+24>>2]+8|0);b=L[d+8>>2];L[a+52>>2]=L[d+4>>2];L[a+56>>2]=b;b=L[d+16>>2];L[a+60>>2]=L[d+12>>2];L[a+64>>2]=b}ai(a+68|0,a+20|0,a+36|0,P[L[d+24>>2]+24>>2]);fa=d+32|0;return S(P[L[d+24>>2]+24>>2])}function bw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;b=L[d+8>>2];a=fa+-64|0;fa=a;L[a+60>>2]=L[d+12>>2];L[a+56>>2]=b;b=L[a+60>>2];tb(a+40|0,L[a+56>>2],b+56|0);c=L[a+44>>2];L[b+56>>2]=L[a+40>>2];L[b+60>>2]=c;c=L[a+52>>2];L[b+64>>2]=L[a+48>>2];L[b+68>>2]=c;c=b+56|0;tb(a+24|0,L[a+56>>2],c+16|0);e=L[a+28>>2];L[b+72>>2]=L[a+24>>2];L[b+76>>2]=e;e=L[a+36>>2];L[b+80>>2]=L[a+32>>2];L[b+84>>2]=e;tb(a+8|0,L[a+56>>2],c+32|0);c=L[a+12>>2];L[b+88>>2]=L[a+8>>2];L[b+92>>2]=c;c=L[a+20>>2];L[b+96>>2]=L[a+16>>2];L[b+100>>2]=c;fa=a- -64|0;fa=d+16|0}function Xl(a){a=a|0;var b=0;L[a>>2]=16836;b=L[a+156>>2];if(!(b?!b|!M[a+160|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+156>>2]=0;J[a+160|0]=1;L[a+148>>2]=0;L[a+152>>2]=0;b=L[a+136>>2];if(!(b?!b|!M[a+140|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+136>>2]=0;J[a+140|0]=1;L[a+128>>2]=0;L[a+132>>2]=0;b=L[a+116>>2];if(!(b?!b|!M[a+120|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+116>>2]=0;J[a+120|0]=1;L[a+108>>2]=0;L[a+112>>2]=0;b=L[a+96>>2];if(!(b?!b|!M[a+100|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+96>>2]=0;J[a+100|0]=1;L[a+88>>2]=0;L[a+92>>2]=0;return Lg(a)|0}function fq(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;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;fa=d+16|0;a=1;e=L[d+12>>2];g=L[e+732>>2];b=0;a:{if((g|0)<=0){break a}b=L[e+720>>2];c=b+R(L[d+4>>2],104)|0;h=L[e+740>>2];f=L[h+12>>2];i=L[h+8>>2];e=R(L[d+8>>2],104)+b|0;b:{if((i|0)==(e|0)&(c|0)==(f|0)){break b}b=0;if((c|0)==(i|0)&(e|0)==(f|0)){break b}while(1){c:{b=b+1|0;if((g|0)==(b|0)){break c}f=R(b,52)+h|0;a=L[f+12>>2];f=L[f+8>>2];if((f|0)==(e|0)&(a|0)==(c|0)){break c}if((c|0)!=(f|0)|(a|0)!=(e|0)){continue}}break}a=(b|0)<(g|0)}b=a}return b&1}function zh(a){a=a|0;var b=0;L[a>>2]=5520;if(L[a+108>>2]){b=L[a+112>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+112>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+108>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+108>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}b=L[a+88>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+84>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+80>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+60>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}if(M[a+100|0]){b=L[a+92>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+92>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}return a|0}function ev(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;f=fa-16|0;fa=f;L[f+12>>2]=a;a=sa(5260);b=L[f+12>>2];L[a+4>>2]=2;L[a+5256>>2]=b;L[a+60>>2]=232;J[a+24|0]=1;L[a>>2]=6544;L[a+20>>2]=0;L[a+28>>2]=11584;L[a+12>>2]=0;L[a+16>>2]=0;L[a+64>>2]=ha[L[L[b>>2]+12>>2]](b);L[a+68>>2]=ha[L[L[b>>2]+8>>2]](b);while(1){b=0;while(1){d=(a+R(c,144)|0)+72|0;e=L[a+5256>>2];L[d+(b<<2)>>2]=ha[L[L[e>>2]+16>>2]](e,c,b);e=b|1;g=d+(e<<2)|0;d=L[a+5256>>2];L[g>>2]=ha[L[L[d>>2]+16>>2]](d,c,e);b=b+2|0;if((b|0)!=36){continue}break}c=c+1|0;if((c|0)!=36){continue}break}fa=f+16|0;return a|0}function Jp(a,b){a=a|0;b=S(b);var c=S(0),d=0,e=S(0),f=0,g=0,h=0,i=0,j=0,k=0;f=fa-16|0;fa=f;L[f+12>>2]=a;P[f+8>>2]=b;b=P[f+8>>2];a=0;g=L[f+12>>2];h=L[g+732>>2];a:{if((h|0)<=0){break a}i=L[g+740>>2];c=P[g+1228>>2];if((h|0)!=1){k=h&-2;while(1){d=R(a,52)+i|0;e=S(S(P[d+16>>2]/c)*b);P[d+16>>2]=e;P[d+28>>2]=e*e;d=R(a|1,52)+i|0;e=S(S(P[d+16>>2]/c)*b);P[d+16>>2]=e;P[d+28>>2]=e*e;a=a+2|0;j=j+2|0;if((k|0)!=(j|0)){continue}break}}if(!(h&1)){break a}a=R(a,52)+i|0;c=S(S(P[a+16>>2]/c)*b);P[a+16>>2]=c;P[a+28>>2]=c*c}P[g+1228>>2]=b;if(L[g+216>>2]==2){ib(g,0)}fa=f+16|0}function Sv(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;d=fa-16|0;fa=d;L[d+12>>2]=a;f=sa(68);a=L[d+12>>2];b=fa-16|0;fa=b;L[b+12>>2]=f;L[b+8>>2]=a;a=L[b+12>>2];L[a>>2]=0;c=fa-16|0;L[c+12>>2]=a;L[L[c+12>>2]>>2]=5048;L[a>>2]=5080;L[(fa-16|0)+12>>2]=a+12;L[a+8>>2]=L[L[b+8>>2]+8>>2];L[a+28>>2]=L[L[b+8>>2]+28>>2];P[a+4>>2]=P[L[b+8>>2]+4>>2];c=L[b+8>>2];e=L[c+16>>2];L[a+12>>2]=L[c+12>>2];L[a+16>>2]=e;e=L[c+24>>2];L[a+20>>2]=L[c+20>>2];L[a+24>>2]=e;L[a+32>>2]=0;L[a+36>>2]=0;L[a+40>>2]=0;L[a+48>>2]=0;L[a+52>>2]=0;L[a+56>>2]=0;L[a+60>>2]=0;fa=b+16|0;fa=d+16|0;return f|0}function Fy(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Wa(a,L[b+8>>2],e)){if(!(L[b+28>>2]==1|L[b+4>>2]!=(c|0))){L[b+28>>2]=d}return}a:{if(Wa(a,L[b>>2],e)){if(!(L[b+16>>2]!=(c|0)&L[b+20>>2]!=(c|0))){if((d|0)!=1){break a}L[b+32>>2]=1;return}L[b+32>>2]=d;b:{if(L[b+44>>2]==4){break b}K[b+52>>1]=0;a=L[a+8>>2];ha[L[L[a>>2]+20>>2]](a,b,c,c,1,e);if(M[b+53|0]){L[b+44>>2]=3;if(!M[b+52|0]){break b}break a}L[b+44>>2]=4}L[b+20>>2]=c;L[b+40>>2]=L[b+40>>2]+1;if(L[b+36>>2]!=1|L[b+24>>2]!=2){break a}J[b+54|0]=1;return}a=L[a+8>>2];ha[L[L[a>>2]+24>>2]](a,b,c,d,e)}}function mE(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=0,f=S(0),g=S(0),h=0,i=S(0),j=S(0);e=fa-16|0;fa=e;ha[L[L[b>>2]+68>>2]](e,b,c);h=L[e+12>>2];L[a+8>>2]=L[e+8>>2];L[a+12>>2]=h;h=L[e+4>>2];L[a>>2]=L[e>>2];L[a+4>>2]=h;if(S(ha[L[L[b>>2]+48>>2]](b))!=S(0)){f=P[c+4>>2];d=P[c>>2];g=P[c+8>>2];i=S(ha[L[L[b>>2]+48>>2]](b));b=S(S(g*g)+S(S(d*d)+S(f*f)))>2]=P[a>>2]+S(i*S(j*d));P[a+4>>2]=P[a+4>>2]+S(i*S(f*d));P[a+8>>2]=P[a+8>>2]+S(i*S(g*d))}fa=e+16|0}function Vm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=(b|0)!=8;if(!(d|(c|0)!=8)){return L[a+60>>2]}if(!((c|0)!=1|d)){return L[a+76>>2]}if(!((b|0)!=1|(c|0)!=8)){return L[a+80>>2]}if(!(b|c)){return L[a+72>>2]}if(!((c|0)!=28|(b|0)>19)){return L[a+88>>2]}if(!((b|0)!=28|(c|0)>19)){return L[a+84>>2]}a:{if((b|0)<=19){if((c|0)<=19){return L[a+32>>2]}if(c-21>>>0>8){break a}return L[a+36>>2]}if(!((c|0)>19|b-21>>>0>8)){return L[a+40>>2]}if((b|0)!=31){break a}if((c|0)==31){return L[a+48>>2]}return L[a+44>>2]}if((c|0)==31){return L[a+52>>2]}return L[a+56>>2]}function cF(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=S(0),f=S(0),g=0,h=0,i=0,j=S(0),k=S(0);e=S(P[b+60>>2]*S(.5));g=L[b+64>>2];i=L[b+68>>2];h=i<<2;d=P[c+8>>2];j=S(d*d);d=P[c>>2];f=S(d*d);d=P[c+4>>2];a:{b:{if(P[h+c>>2]>S(P[b+52>>2]*S(_(S(j+S(f+S(d*d))))))){L[(g<<2)+a>>2]=0;P[a+h>>2]=e;c=L[b+72>>2];break b}d=P[(g<<2)+c>>2];h=c;c=L[b+72>>2];f=P[h+(c<<2)>>2];k=S(_(S(S(d*d)+S(f*f))));if(k>S(1.1920928955078125e-7)){j=d;d=S(P[b+56>>2]/k);P[(g<<2)+a>>2]=j*d;P[(i<<2)+a>>2]=-e;e=S(f*d);break a}L[(g<<2)+a>>2]=0;P[(i<<2)+a>>2]=-e}e=S(0)}P[(c<<2)+a>>2]=e}function mr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=sa(152);b=L[d+8>>2];c=L[d+4>>2];L[a+104>>2]=0;L[a+100>>2]=c;J[a+20|0]=1;L[a>>2]=20864;L[a+16>>2]=0;J[a+40|0]=1;L[a+8>>2]=0;L[a+12>>2]=0;L[a+36>>2]=0;J[a+60|0]=1;L[a+28>>2]=0;L[a+32>>2]=0;L[a+56>>2]=0;J[a+80|0]=1;L[a+48>>2]=0;L[a+52>>2]=0;L[a+76>>2]=0;J[a+148|0]=1;L[a+68>>2]=0;L[a+72>>2]=0;L[a+144>>2]=0;L[a+136>>2]=0;L[a+140>>2]=0;L[a+128>>2]=1;L[a+120>>2]=0;L[a+124>>2]=2;L[a+116>>2]=b;L[a+108>>2]=0;L[a+112>>2]=0;fa=d+16|0;return a|0}function Ih(a,b,c){var d=0;d=fa-32|0;fa=d;L[d+28>>2]=a;L[d+24>>2]=b;L[d+20>>2]=c;b=fa-16|0;a=L[d+28>>2];L[b+12>>2]=a;L[d+16>>2]=L[L[b+12>>2]+4>>2];a:{if(L[d+24>>2]>2]){L[d+12>>2]=L[d+24>>2];while(1){if(L[d+12>>2]>2]){L[d+12>>2]=L[d+12>>2]+1;continue}break}break a}b=L[d+24>>2];c=fa-16|0;L[c+12>>2]=a;if(L[L[c+12>>2]+4>>2]<(b|0)){Yh(a,L[d+24>>2])}L[d+8>>2]=L[d+16>>2];while(1){if(L[d+8>>2]>2]){L[L[a+12>>2]+(L[d+8>>2]<<2)>>2]=L[L[d+20>>2]>>2];L[d+8>>2]=L[d+8>>2]+1;continue}break}}L[a+4>>2]=L[d+24>>2];fa=d+32|0}function XA(a,b,c,d){a=a|0;b=b|0;c=S(c);d=d|0;a:{b:{c:{switch(b-2|0){case 0:if((d|0)<=0){d=a+232|0;b=512;break b}if(d>>>0<=2){d=a+264|0;b=32;break b}if((d|0)==3){d=a+248|0;b=2048;break b}if(d>>>0>5){break a}d=a+280|0;b=128;break b;case 1:if((d|0)<=0){d=a+212|0;b=1;break b}if((d|0)!=3){break a}d=a+228|0;b=4;break b;case 2:break c;default:break a}}if((d|0)<=0){d=a+244|0;b=256;break b}if(d>>>0<=2){d=a+276|0;b=16;break b}if((d|0)==3){d=a+260|0;b=1024;break b}if(d>>>0>5){break a}d=a+292|0;b=64}P[d>>2]=c;L[a+300>>2]=b|L[a+300>>2]}} function dl(a){J[a+20|0]=1;L[a>>2]=19944;L[a+16>>2]=0;J[a+40|0]=1;L[a+8>>2]=0;L[a+12>>2]=0;L[a+36>>2]=0;J[a+60|0]=1;L[a+28>>2]=0;L[a+32>>2]=0;L[a+56>>2]=0;J[a+80|0]=1;L[a+48>>2]=0;L[a+52>>2]=0;L[a+76>>2]=0;J[a+100|0]=1;L[a+68>>2]=0;L[a+72>>2]=0;L[a+96>>2]=0;J[a+120|0]=1;L[a+88>>2]=0;L[a+92>>2]=0;L[a+116>>2]=0;J[a+140|0]=1;L[a+108>>2]=0;L[a+112>>2]=0;L[a+136>>2]=0;L[a+128>>2]=0;L[a+132>>2]=0;J[a+160|0]=1;L[a+156>>2]=0;L[a+148>>2]=0;L[a+152>>2]=0;J[a+180|0]=1;L[a+192>>2]=0;L[a+176>>2]=0;L[a+168>>2]=0;L[a+172>>2]=0;return a}function _h(a,b){var c=0,d=0,e=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;b=fa-16|0;a=L[d+12>>2];L[b+12>>2]=a;L[d+4>>2]=L[L[b+12>>2]+4>>2];b=L[d+4>>2];c=fa-16|0;L[c+12>>2]=a;if(L[L[c+12>>2]+8>>2]==(b|0)){b=fa-16|0;L[b+12>>2]=a;c=L[L[b+12>>2]+4>>2];L[b+12>>2]=a;L[b+8>>2]=c;if(L[b+8>>2]){b=L[b+8>>2]<<1}else{b=1}Xh(a,b)}c=L[a+12>>2]+(L[a+4>>2]<<4)|0;b=fa-16|0;L[b+12>>2]=16;L[b+8>>2]=c;c=L[d+8>>2];e=L[c+4>>2];b=L[b+8>>2];L[b>>2]=L[c>>2];L[b+4>>2]=e;e=L[c+12>>2];L[b+8>>2]=L[c+8>>2];L[b+12>>2]=e;L[a+4>>2]=L[a+4>>2]+1;fa=d+16|0}function Mn(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;e=L[a+108>>2];if(!e){g=N[a+56>>1];if(g){e=1;h=1;while(1){f=L[a+68>>2]+(e<<2)|0;a:{if(!(J[f|0]&1)){break a}f=L[a+60>>2]+(N[f+2>>1]<<6)|0;e=0;b:{if(P[b>>2]>P[f+32>>2]){break b}e=0;if(P[c>>2]>2]){break b}e=1}if((P[c+8>>2]>2]|P[b+8>>2]>P[f+40>>2]?i:e)^1|P[c+4>>2]>2]|P[b+4>>2]>P[f+36>>2]){break a}ha[L[L[d>>2]+8>>2]](d,f)|0;g=N[a+56>>1]}h=h+1|0;e=h&65535;if(e>>>0<(g<<1|1)>>>0){continue}break}}return}ha[L[L[e>>2]+28>>2]](e,b,c,d)}function Bb(a,b,c){var d=0;d=L[a+4>>2];a:{if(d){L[a+4>>2]=0;break a}L[8513]=L[8513]+1;d=ha[L[6798]](44,16)|0;L[d>>2]=0;L[d+4>>2]=0;L[d+40>>2]=0;L[d+32>>2]=0;L[d+36>>2]=0;L[d+24>>2]=0;L[d+28>>2]=0;L[d+16>>2]=0;L[d+20>>2]=0;L[d+8>>2]=0;L[d+12>>2]=0}L[d+36>>2]=c;L[d+32>>2]=0;L[d+40>>2]=0;c=L[b+4>>2];L[d>>2]=L[b>>2];L[d+4>>2]=c;c=L[b+12>>2];L[d+8>>2]=L[b+8>>2];L[d+12>>2]=c;c=L[b+20>>2];L[d+16>>2]=L[b+16>>2];L[d+20>>2]=c;c=L[b+28>>2];L[d+24>>2]=L[b+24>>2];L[d+28>>2]=c;Ed(a,L[a>>2],d);L[a+12>>2]=L[a+12>>2]+1;return d}function jk(a){var b=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;b=L[a+72>>2];if(!(b?!b|!M[a+76|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+72>>2]=0;J[a+76|0]=1;a=a- -64|0;L[a>>2]=0;L[a+4>>2]=0}function _x(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;g=sa(64);a=L[e+12>>2];b=L[e+8>>2];c=fa-16|0;fa=c;L[c+12>>2]=g;L[c+8>>2]=a;L[c+4>>2]=b;a=L[c+8>>2];d=fa-16|0;fa=d;f=L[c+12>>2];L[d+8>>2]=f;L[d+4>>2]=a;a=L[d+8>>2];L[d+12>>2]=a;h=a+48|0;b=a;while(1){L[(fa-16|0)+12>>2]=b;b=b+16|0;if((h|0)!=(b|0)){continue}break}yj(a,L[d+4>>2]);fa=d+16|0;a=L[c+4>>2];b=L[a+4>>2];L[f+48>>2]=L[a>>2];L[f+52>>2]=b;b=L[a+12>>2];L[f+56>>2]=L[a+8>>2];L[f+60>>2]=b;fa=c+16|0;fa=e+16|0;return g|0}function WA(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0);d=S(34028234663852886e22);a:{b:{switch(b-2|0){case 0:if((c|0)<=0){return S(P[a+232>>2])}if(c>>>0<=2){return S(P[a+264>>2])}if((c|0)==3){return S(P[a+248>>2])}if(c>>>0>5){break a}return S(P[a+280>>2]);case 1:if((c|0)<=0){return S(P[a+212>>2])}if((c|0)!=3){break a}return S(P[a+228>>2]);case 2:break b;default:break a}}if((c|0)<=0){return S(P[a+244>>2])}if(c>>>0<=2){return S(P[a+276>>2])}if((c|0)==3){return S(P[a+260>>2])}if(c>>>0>5){break a}d=P[a+292>>2]}return S(d)}function ED(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=0,f=S(0),g=S(0),h=0,i=S(0),j=S(0);e=fa-16|0;fa=e;ha[L[L[b>>2]+68>>2]](e,b,c);h=L[e+12>>2];L[a+8>>2]=L[e+8>>2];L[a+12>>2]=h;h=L[e+4>>2];L[a>>2]=L[e>>2];L[a+4>>2]=h;f=P[c+4>>2];d=P[c>>2];g=P[c+8>>2];i=S(ha[L[L[b>>2]+48>>2]](b));b=S(S(g*g)+S(S(d*d)+S(f*f)))>2]=P[a>>2]+S(i*S(j*d));P[a+4>>2]=P[a+4>>2]+S(i*S(f*d));P[a+8>>2]=P[a+8>>2]+S(i*S(g*d));fa=e+16|0}function Jm(a){J[a+60|0]=0;L[a+52>>2]=282;L[a+144>>2]=0;J[a+80|0]=1;L[a>>2]=12192;L[a+76>>2]=0;J[a+100|0]=1;L[a+68>>2]=0;L[a+72>>2]=0;L[a+96>>2]=0;J[a+120|0]=1;L[a+88>>2]=0;L[a+92>>2]=0;L[a+116>>2]=0;J[a+140|0]=1;L[a+108>>2]=0;L[a+112>>2]=0;L[a+136>>2]=0;J[a+164|0]=1;L[a+128>>2]=0;L[a+132>>2]=0;L[a+160>>2]=0;L[a+168>>2]=0;L[a+152>>2]=0;L[a+156>>2]=0;L[a+4>>2]=-8388609;L[a+8>>2]=-8388609;L[a+12>>2]=-8388609;L[a+16>>2]=0;L[a+20>>2]=2139095039;L[a+24>>2]=2139095039;L[a+28>>2]=2139095039;L[a+32>>2]=0;return a}function Ah(a,b,c){var d=0,e=0;d=fa-32|0;L[d+28>>2]=a;L[d+24>>2]=0;L[d+20>>2]=b;L[d+16>>2]=c;c=L[d+28>>2];L[d+12>>2]=L[d+24>>2];while(1){if(L[d+12>>2]>2]){a=R(L[d+12>>2],44);b=a+L[d+16>>2]|0;a=a+L[c+12>>2]|0;e=L[a+4>>2];L[b>>2]=L[a>>2];L[b+4>>2]=e;L[b+40>>2]=L[a+40>>2];e=L[a+36>>2];L[b+32>>2]=L[a+32>>2];L[b+36>>2]=e;e=L[a+28>>2];L[b+24>>2]=L[a+24>>2];L[b+28>>2]=e;e=L[a+20>>2];L[b+16>>2]=L[a+16>>2];L[b+20>>2]=e;e=L[a+12>>2];L[b+8>>2]=L[a+8>>2];L[b+12>>2]=e;L[d+12>>2]=L[d+12>>2]+1;continue}break}}function hk(a){a=a|0;var b=0;L[a>>2]=22296;b=L[a+92>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+92>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+96>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+96>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+100>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+100>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+104>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+104>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}b=L[a+108>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+108>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}return fh(a)|0}function mf(a,b){var c=0,d=0;d=fa-16|0;fa=d;L[d+8>>2]=a;L[d+4>>2]=b;a=L[d+8>>2];L[d+12>>2]=a;c=a+48|0;b=a;while(1){L[(fa-16|0)+12>>2]=b;b=b+16|0;if((c|0)!=(b|0)){continue}break}b=L[d+4>>2];c=L[b+4>>2];L[a>>2]=L[b>>2];L[a+4>>2]=c;c=L[b+12>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=c;b=L[d+4>>2];c=L[b+20>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=c;c=L[b+28>>2];L[a+24>>2]=L[b+24>>2];L[a+28>>2]=c;b=L[d+4>>2];c=L[b+36>>2];L[a+32>>2]=L[b+32>>2];L[a+36>>2]=c;c=L[b+44>>2];L[a+40>>2]=L[b+40>>2];L[a+44>>2]=c;fa=d+16|0}function EB(a,b){a=a|0;b=b|0;var c=0,d=0;if(M[a+1308|0]){L[b>>2]=0;L[b+4>>2]=0;return}qd(a,L[a+28>>2]+4|0,L[a+32>>2]+4|0);L[b>>2]=0;L[b+4>>2]=6;a:{if(!(L[a+856>>2]|M[a+788|0])){c=6;d=0;break a}L[b>>2]=1;L[b+4>>2]=5;c=5;d=1}if(L[a+860>>2]|M[a+789|0]){c=c-1|0;L[b+4>>2]=c;d=d+1|0;L[b>>2]=d}if(L[a+864>>2]|M[a+790|0]){L[b+4>>2]=c-1;L[b>>2]=d+1}if(De(a,0)){L[b>>2]=L[b>>2]+1;L[b+4>>2]=L[b+4>>2]-1}if(De(a,1)){L[b>>2]=L[b>>2]+1;L[b+4>>2]=L[b+4>>2]-1}if(De(a,2)){L[b>>2]=L[b>>2]+1;L[b+4>>2]=L[b+4>>2]-1}}function Zk(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;while(1){k=c;l=L[L[a+12>>2]+((c+d|0)/2<<3)>>2];e=d;while(1){g=L[a+12>>2];h=c;while(1){c=h;h=c+1|0;f=(c<<3)+g|0;if(L[f>>2]<(l|0)){continue}break}i=e;while(1){e=i;i=e-1|0;m=e<<3;j=m+g|0;if(L[j>>2]>(l|0)){continue}break}if((c|0)<=(e|0)){c=L[f>>2];e=L[f+4>>2];g=L[j+4>>2];L[f>>2]=L[j>>2];L[f+4>>2]=g;f=L[a+12>>2]+m|0;L[f>>2]=c;L[f+4>>2]=e;e=i;c=h}if((c|0)<=(e|0)){continue}break}if((e|0)>(k|0)){Zk(a,b,k,e)}if((c|0)<(d|0)){continue}break}}function ZH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0;L[7539]=L[7539]+1;d=L[b+12>>2]>L[c+12>>2];e=L[(d?b:c)+12>>2];d=L[(d?c:b)+12>>2];b=e<<16|d;b=(b<<15^-1)+b|0;b=R(b>>10^b,9);b=b>>6^b;b=(b<<11^-1)+b|0;b=L[a+12>>2]-1&(b>>16^b);a:{b:{if((b|0)>=L[a+36>>2]){break b}c=L[L[a+44>>2]+(b<<2)>>2];if((c|0)==-1){break b}g=L[a- -64>>2];a=L[a+16>>2];while(1){f=c<<4;b=a+f|0;if((d|0)==L[L[b>>2]+12>>2]&L[L[(a+f|0)+4>>2]+12>>2]==(e|0)){break a}c=L[(c<<2)+g>>2];if((c|0)!=-1){continue}break}}b=0}return b|0}function Ot(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;f=fa-16|0;fa=f;L[f+12>>2]=a;L[f+8>>2]=b;L[f+4>>2]=c;L[f>>2]=d;d=oa(360);b=L[f+4>>2];a=L[f>>2];e=ub(d,3,L[f+12>>2],L[f+8>>2]);L[e>>2]=19852;c=L[b+4>>2];L[e+300>>2]=L[b>>2];L[e+304>>2]=c;c=L[b+12>>2];L[e+308>>2]=L[b+8>>2];L[e+312>>2]=c;b=L[a+4>>2];L[e+316>>2]=L[a>>2];L[e+320>>2]=b;b=L[a+12>>2];L[e+324>>2]=L[a+8>>2];L[e+328>>2]=b;L[e+356>>2]=0;L[e+348>>2]=1050253722;L[e+352>>2]=1065353216;J[e+344|0]=0;L[e+332>>2]=0;fa=f+16|0;return d|0}function Kx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;f=sa(84);a=L[e+12>>2];c=L[e+8>>2];b=fa-16|0;fa=b;L[b+12>>2]=f;L[b+8>>2]=a;L[b+4>>2]=c;a=L[b+12>>2];wj(a);L[a>>2]=1476;c=L[b+8>>2];d=L[c+4>>2];L[a+20>>2]=L[c>>2];L[a+24>>2]=d;d=L[c+12>>2];L[a+28>>2]=L[c+8>>2];L[a+32>>2]=d;c=L[b+4>>2];d=L[c+4>>2];L[a+36>>2]=L[c>>2];L[a+40>>2]=d;d=L[c+12>>2];L[a+44>>2]=L[c+8>>2];L[a+48>>2]=d;L[(fa-16|0)+12>>2]=a+52;L[(fa-16|0)+12>>2]=a+68;fa=b+16|0;fa=e+16|0;return f|0}function Bl(a,b,c,d){var e=0,f=0;e=L[b+4>>2];L[a+292>>2]=L[b>>2];L[a+296>>2]=e;e=L[b+12>>2];L[a+300>>2]=L[b+8>>2];L[a+304>>2]=e;J[a+356|0]=1;f=L[b+4>>2];e=a+(L[a>>2]<<4)|0;L[e+4>>2]=L[b>>2];L[e+8>>2]=f;f=L[b+12>>2];L[e+12>>2]=L[b+8>>2];L[e+16>>2]=f;e=L[c+12>>2];b=(L[a>>2]<<4)+a|0;L[b+92>>2]=L[c+8>>2];L[b+96>>2]=e;e=L[c+4>>2];L[b+84>>2]=L[c>>2];L[b+88>>2]=e;c=L[d+12>>2];b=(L[a>>2]<<4)+a|0;L[b+172>>2]=L[d+8>>2];L[b+176>>2]=c;c=L[d+4>>2];L[b+164>>2]=L[d>>2];L[b+168>>2]=c;L[a>>2]=L[a>>2]+1}function Ix(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;f=sa(132);a=L[e+12>>2];c=L[e+8>>2];b=fa-16|0;fa=b;L[b+12>>2]=f;L[b+8>>2]=a;L[b+4>>2]=c;a=L[b+12>>2];wj(a);L[a>>2]=1632;Mb(a+20|0);c=L[b+8>>2];d=L[c+4>>2];L[a+40>>2]=L[c>>2];L[a+44>>2]=d;d=L[c+12>>2];L[a+48>>2]=L[c+8>>2];L[a+52>>2]=d;c=L[b+4>>2];d=L[c+4>>2];L[a+56>>2]=L[c>>2];L[a+60>>2]=d;d=L[c+12>>2];L[a+64>>2]=L[c+8>>2];L[a+68>>2]=d;Mb(a+72|0);Mb(a+92|0);Mb(a+112|0);fa=b+16|0;fa=e+16|0;return f|0}function TG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=S(d);var e=0,f=S(0),g=0,h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=S(0);e=fa-16|0;fa=e;P[a+32>>2]=d;g=L[b+4>>2];L[a+8>>2]=L[b>>2];L[a+12>>2]=g;g=L[b+12>>2];L[a+16>>2]=L[b+8>>2];L[a+20>>2]=g;h=P[b+8>>2];i=P[c>>2];j=P[b>>2];k=P[c+4>>2];l=P[b+4>>2];m=P[c+8>>2];f=P[a+28>>2];L[e+12>>2]=0;P[e+8>>2]=m-S(f*h);P[e+4>>2]=k-S(f*l);P[e>>2]=i-S(j*f);d=S(S(f+P[a+24>>2])+d);P[a+32>>2]=d;if(d>2];ha[L[L[a>>2]+16>>2]](a,b,e,d);fa=e+16|0}function cC(a,b,c){a=a|0;b=b|0;c=S(c);var d=S(0),e=S(0),f=S(0),g=S(0),h=0;J[a+171|0]=0;h=L[b+4>>2];L[a+60>>2]=L[b>>2];L[a+64>>2]=h;h=L[b+12>>2];L[a+68>>2]=L[b+8>>2];L[a+72>>2]=h;d=P[a+68>>2];e=P[a+60>>2];g=P[a- -64>>2];f=S(S(1)/S(_(S(S(d*d)+S(S(e*e)+S(g*g))))));d=S(d*f);e=S(e*f);f=S(g*f);g=P[a+72>>2];a:{if(!(S(_(S(S(d*d)+S(S(e*e)+S(f*f)))))>2]=e;P[a+88>>2]=g;P[a+84>>2]=d;P[a+80>>2]=f;P[a+172>>2]=P[a+172>>2]+c}function zo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=fa-96|0;fa=e;L[e+92>>2]=a;L[e+88>>2]=b;L[e+84>>2]=c;L[e+80>>2]=d;b=e- -64|0;a=L[e+92>>2];tb(b,L[e+88>>2],a+56|0);c=e+48|0;d=a+56|0;tb(c,L[e+88>>2],d+16|0);f=e+32|0;tb(f,L[e+88>>2],d+32|0);gj(e,b,c,f,P[a+44>>2]);b=L[e+4>>2];a=L[e+84>>2];L[a>>2]=L[e>>2];L[a+4>>2]=b;b=L[e+12>>2];L[a+8>>2]=L[e+8>>2];L[a+12>>2]=b;b=L[e+20>>2];a=L[e+80>>2];L[a>>2]=L[e+16>>2];L[a+4>>2]=b;b=L[e+28>>2];L[a+8>>2]=L[e+24>>2];L[a+12>>2]=b;fa=e+96|0}function Do(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;i=fa-80|0;fa=i;L[i+76>>2]=a;L[i+72>>2]=b;L[i+68>>2]=c;L[i+64>>2]=d;L[i+60>>2]=e;L[i+56>>2]=f;L[i+52>>2]=g;L[i+48>>2]=h;a=L[i+76>>2];L[i+44>>2]=29214;b=L[i+44>>2];c=L[i+72>>2];d=L[i+68>>2];e=L[i+64>>2];f=L[i+60>>2];g=L[i+56>>2];h=L[i+52>>2];L[i+28>>2]=L[i+48>>2];L[i+24>>2]=h;L[i+20>>2]=g;L[i+16>>2]=f;L[i+12>>2]=e;L[i+8>>2]=d;L[i+4>>2]=c;L[i>>2]=a;j=+ea(b|0,1852,i|0);fa=i+80|0;return S(S(j))}function wh(a,b,c,d){var e=0,f=0,g=0;e=fa-144|0;fa=e;L[e+140>>2]=b;L[e+136>>2]=c;P[e+132>>2]=d;f=L[e+136>>2];b=L[e+140>>2];P[e+112>>2]=Sa(f,b);c=e+116|0;Ga(c,f,e+112|0);f=e+96|0;La(f,b,c);g=e+80|0;L[(fa-16|0)+12>>2]=g;Ub(e- -64|0,L[e+136>>2],b);b=L[e+76>>2];L[e+88>>2]=L[e+72>>2];L[e+92>>2]=b;b=L[e+68>>2];L[e+80>>2]=L[e+64>>2];L[e+84>>2]=b;P[e+28>>2]=Ra(P[e+132>>2]);b=e+32|0;Ga(b,f,e+28|0);f=e+48|0;ta(f,c,b);P[e+8>>2]=Qa(P[e+132>>2]);b=e+12|0;Ga(b,g,e+8|0);ta(a,f,b);fa=e+144|0}function ve(a,b,c){var d=S(0),e=0,f=S(0),g=S(0);e=L[a+204>>2];a:{if(b==S(0)){L[a+204>>2]=e|1;break a}L[a+204>>2]=e&-2;d=S(S(1)/b)}P[a+344>>2]=d;L[a+376>>2]=0;P[a+364>>2]=P[a+380>>2]*b;P[a+372>>2]=P[a+388>>2]*b;P[a+368>>2]=P[a+384>>2]*b;b=P[c+8>>2];f=P[c+4>>2];g=P[c>>2];P[a+560>>2]=P[a+348>>2]*d;P[a+564>>2]=d*P[a+352>>2];P[a+568>>2]=d*P[a+356>>2];L[a+572>>2]=0;L[a+408>>2]=0;P[a+396>>2]=g!=S(0)?S(S(1)/g):S(0);P[a+400>>2]=f!=S(0)?S(S(1)/f):S(0);P[a+404>>2]=b!=S(0)?S(S(1)/b):S(0)}function tv(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;e=fa-16|0;fa=e;L[e+12>>2]=a;f=oa(168);a=L[e+12>>2];b=fa-16|0;fa=b;L[b+12>>2]=f;L[b+8>>2]=a;c=L[b+12>>2];If(c);L[c>>2]=18076;Mb(c+148|0);L[c+144>>2]=L[b+8>>2];d=L[b+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=c;L[a+8>>2]=d;c=L[a+12>>2];L[a+4>>2]=0;while(1){d=L[a+8>>2];if(L[a+4>>2]<(ha[L[L[d>>2]+28>>2]](d)|0)){d=oa(212);Yi(d,L[a+8>>2],L[a+4>>2]);L[a>>2]=d;Hf(c+148|0,a);L[a+4>>2]=L[a+4>>2]+1;continue}break}fa=a+16|0;fa=b+16|0;fa=e+16|0;return f|0}function bB(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;wa(2692);ha[L[L[a>>2]+32>>2]](a,b,c,d,e,f,g,h,i);j=L[a+184>>2];k=L[h+20>>2];k=(j|0)>(k|0)?j:k;a:{if((k|0)<=0){break a}j=0;if((k|0)!=1){m=k&-2;while(1){S(ha[L[L[a>>2]+40>>2]](a,j,b,c,d,e,f,g,h,i));S(ha[L[L[a>>2]+40>>2]](a,j|1,b,c,d,e,f,g,h,i));j=j+2|0;l=l+2|0;if((m|0)!=(l|0)){continue}break}}if(!(k&1)){break a}S(ha[L[L[a>>2]+40>>2]](a,j,b,c,d,e,f,g,h,i))}va();return S(S(0))}function $m(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;L[a>>2]=9916;b=L[a+8>>2];e=L[b+8>>2];if((e|0)>0){while(1){c=L[(L[b+16>>2]+R(d,12)|0)+8>>2];if(c){ha[L[L[c>>2]>>2]](c)|0;f=L[a+4>>2];ha[L[L[f>>2]+60>>2]](f,c)}d=d+1|0;if((e|0)!=(d|0)){continue}break}b=L[a+8>>2]}Pm(b);b=L[a+8>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+8>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}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;return a|0}function yF(a,b,c){a=a|0;b=S(b);c=c|0;var d=S(0),e=S(0),f=S(0),g=0,h=0,i=0;h=a+28|0;g=L[a+52>>2];d=P[h+((g+2|0)%3<<2)>>2];a=fa-16|0;L[a+12>>2]=0;P[a+8>>2]=d;P[a+4>>2]=d;P[a>>2]=d;g=g<<2;i=g+a|0;P[i>>2]=P[g+h>>2]+P[i>>2];d=P[a+8>>2];b=S(b*S(.0833333283662796));e=S(P[a>>2]+S(.03999999910593033));e=S(e+e);e=S(e*e);f=S(P[a+4>>2]+S(.03999999910593033));f=S(f+f);f=S(f*f);P[c+8>>2]=b*S(e+f);d=S(d+S(.03999999910593033));d=S(d+d);d=S(d*d);P[c+4>>2]=b*S(e+d);P[c>>2]=b*S(f+d)}function Si(a,b,c,d,e,f){var g=0;g=fa-32|0;fa=g;L[g+28>>2]=a;P[g+24>>2]=b;P[g+20>>2]=c;P[g+16>>2]=d;P[g+12>>2]=e;P[g+8>>2]=f;c=P[g+16>>2];d=P[g+12>>2];e=P[g+8>>2];a=L[g+28>>2];b=P[g+24>>2];f=S(S(P[g+20>>2]-b)*S(.5));P[a+692>>2]=f;b=Na(S(f+b),S(6.2831854820251465));a:{if(bS(3.1415927410125732))){break a}b=S(b+S(-6.2831854820251465))}P[a+704>>2]=e;P[a+700>>2]=d;P[a+696>>2]=c;P[a+688>>2]=b;fa=g+32|0}function Yn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=fa+-64|0;fa=f;L[f+60>>2]=a;L[f+56>>2]=b;L[f+52>>2]=c;L[f+48>>2]=d;L[f+44>>2]=e;b=L[f+60>>2];a=f+12|0;Od(a);b=ha[L[L[b>>2]+84>>2]](b)|0;ha[L[L[b>>2]+16>>2]](b,L[f+56>>2],a);Mh(a,L[f+52>>2]);c=L[a+4>>2];b=L[f+48>>2];L[b>>2]=L[a>>2];L[b+4>>2]=c;c=L[a+12>>2];L[b+8>>2]=L[a+8>>2];L[b+12>>2]=c;c=L[a+20>>2];b=L[f+44>>2];L[b>>2]=L[a+16>>2];L[b+4>>2]=c;c=L[a+28>>2];L[b+8>>2]=L[a+24>>2];L[b+12>>2]=c;fa=f- -64|0}function If(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];L[a+12>>2]=0;L[a+4>>2]=35;L[a+8>>2]=0;L[a>>2]=13384;L[a>>2]=4720;f=a+16|0;Od(f);g=a+52|0;L[(fa-16|0)+12>>2]=g;c=fa-16|0;fa=c;L[c+12>>2]=a+68;d=fa-16|0;fa=d;h=L[c+12>>2];L[d+12>>2]=h;e=L[d+12>>2];rf(e+4|0);Od(e+24|0);L[(fa-16|0)+12>>2]=e+56;L[e>>2]=0;fa=d+16|0;L[h+72>>2]=0;fa=c+16|0;L[a+4>>2]=25;fj(f);J[a+48|0]=1;P[b+8>>2]=1;P[b+4>>2]=1;P[b>>2]=1;la(g,b+8|0,b+4|0,b);fa=b+16|0}function CC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=L[c+4>>2];b=L[a+164>>2]+(b<<6)|0;L[b>>2]=L[c>>2];L[b+4>>2]=d;d=L[c+12>>2];L[b+8>>2]=L[c+8>>2];L[b+12>>2]=d;d=L[c+28>>2];L[b+24>>2]=L[c+24>>2];L[b+28>>2]=d;d=L[c+20>>2];L[b+16>>2]=L[c+16>>2];L[b+20>>2]=d;d=L[c+44>>2];L[b+40>>2]=L[c+40>>2];L[b+44>>2]=d;d=L[c+36>>2];L[b+32>>2]=L[c+32>>2];L[b+36>>2]=d;d=L[c+52>>2];L[b+48>>2]=L[c+48>>2];L[b+52>>2]=d;d=L[c+60>>2];L[b+56>>2]=L[c+56>>2];L[b+60>>2]=d;ha[L[L[a>>2]+72>>2]](a)}function fj(a){var b=0,c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;b=fa-16|0;a=L[c+12>>2];L[b+12>>2]=a;P[L[b+12>>2]>>2]=34028234663852886e22;b=fa-16|0;L[b+12>>2]=a;P[L[b+12>>2]+4>>2]=34028234663852886e22;b=fa-16|0;L[b+12>>2]=a;P[L[b+12>>2]+8>>2]=34028234663852886e22;b=fa-16|0;a=a+16|0;L[b+12>>2]=a;P[L[b+12>>2]>>2]=-34028234663852886e22;b=fa-16|0;L[b+12>>2]=a;P[L[b+12>>2]+4>>2]=-34028234663852886e22;b=fa-16|0;L[b+12>>2]=a;P[L[b+12>>2]+8>>2]=-34028234663852886e22;fa=c+16|0}function CB(a,b,c,d){a=a|0;b=b|0;c=S(c);d=d|0;var e=0;a:{b:{c:{if(d>>>0<=2){d:{switch(b-2|0){case 0:b=((d<<2)+a|0)+756|0;e=4;break b;case 2:b=((d<<2)+a|0)+772|0;e=2;break b;case 1:break d;default:break a}}b=((d<<2)+a|0)+740|0;break c}e=d-3|0;if(e>>>0>2){break a}e:{switch(b-2|0){case 0:b=((e<<6)+a|0)+900|0;e=4;break b;case 2:b=((e<<6)+a|0)+904|0;e=2;break b;case 1:break e;default:break a}}b=((e<<6)+a|0)+896|0}e=1}P[b>>2]=c;L[a+1304>>2]=L[a+1304>>2]|e<>2]=a;P[c+8>>2]=b;a=oa(84);d=L[c+12>>2];e=P[c+8>>2];L[a+12>>2]=0;L[a+4>>2]=35;L[a+8>>2]=0;L[a>>2]=13384;L[a>>2]=16320;b=P[d+8>>2];f=P[d>>2];g=P[d+4>>2];h=P[d+12>>2];L[a+68>>2]=0;L[a+72>>2]=0;P[a+64>>2]=e;P[a+60>>2]=h;L[a+76>>2]=0;L[a+80>>2]=0;L[a+4>>2]=28;e=b;b=S(S(1)/S(_(S(S(b*b)+S(S(f*f)+S(g*g))))));P[a+56>>2]=e*b;P[a+52>>2]=g*b;P[a+48>>2]=f*b;fa=c+16|0;return a|0}function nh(a){a=a|0;var b=0,c=0,d=0,e=0;L[a>>2]=6776;b=L[a+8>>2];if((b|0)>0){while(1){e=L[L[a+16>>2]+(c<<2)>>2];d=L[e+188>>2];if(d){b=L[a+68>>2];b=ha[L[L[b>>2]+36>>2]](b)|0;ha[L[L[b>>2]+40>>2]](b,d,L[a+24>>2]);b=L[a+68>>2];ha[L[L[b>>2]+12>>2]](b,d,L[a+24>>2]);L[e+188>>2]=0;b=L[a+8>>2]}c=c+1|0;if((c|0)<(b|0)){continue}break}}b=L[a+16>>2];if(!(b?!b|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+16>>2]=0;J[a+20|0]=1;L[a+8>>2]=0;L[a+12>>2]=0;return a|0}function jD(a,b){a=S(a);b=S(b);var c=0,d=0;d=fa-16|0;fa=d;P[d+12>>2]=a;P[d+8>>2]=b;c=oa(76);a=P[d+12>>2];b=P[d+8>>2];L[c+4>>2]=35;L[c+8>>2]=0;L[c>>2]=14328;L[c+44>>2]=1025758986;L[c+12>>2]=1065353216;L[c+16>>2]=1065353216;L[c>>2]=14044;L[c+20>>2]=1065353216;L[c+24>>2]=0;P[c+60>>2]=b;P[c+56>>2]=a;L[c>>2]=13492;L[c+64>>2]=0;L[c+68>>2]=1;L[c+4>>2]=11;P[c+28>>2]=a;L[c+72>>2]=2;P[c+36>>2]=a;P[c+32>>2]=b;P[c+52>>2]=a/S(_(S(S(a*a)+S(b*b))));fa=d+16|0;return c|0}function ax(a,b){a=S(a);b=S(b);var c=0,d=0;d=fa-16|0;fa=d;P[d+12>>2]=a;P[d+8>>2]=b;c=oa(76);a=P[d+12>>2];b=P[d+8>>2];L[c+4>>2]=35;L[c+8>>2]=0;L[c>>2]=14328;L[c+44>>2]=1025758986;L[c+12>>2]=1065353216;L[c+16>>2]=1065353216;L[c>>2]=14044;L[c+20>>2]=1065353216;L[c+24>>2]=0;P[c+60>>2]=b;P[c+56>>2]=a;L[c+4>>2]=11;L[c+64>>2]=1;L[c+68>>2]=0;L[c>>2]=13692;P[c+28>>2]=b;L[c+72>>2]=2;P[c+32>>2]=a;P[c+36>>2]=a;P[c+52>>2]=a/S(_(S(S(a*a)+S(b*b))));fa=d+16|0;return c|0}function XC(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;f=L[a+12>>2];if(f){g=L[a+4>>2];ha[L[L[g>>2]+16>>2]](g,f);L[a+12>>2]=0}f=L[a+8>>2];if(f){ha[L[L[f>>2]>>2]](f)|0;f=L[a+4>>2];ha[L[L[f>>2]+60>>2]](f,L[a+8>>2]);L[a+8>>2]=0}L[a+24>>2]=-1;L[a+28>>2]=-1;L[a+20>>2]=d;L[a+16>>2]=e;L[a+32>>2]=-1;L[a+36>>2]=-1;d=L[c+4>>2];f=L[d+4>>2];e=L[b+4>>2];if(L[e+4>>2]==25){if((f|0)==25){Hg(a,b,c,e,d);return}vd(a,b,c,e,d,0);return}if((f|0)==25){vd(a,c,b,d,e,1)}}function $w(a,b){a=S(a);b=S(b);var c=0,d=0;d=fa-16|0;fa=d;P[d+12>>2]=a;P[d+8>>2]=b;c=oa(76);a=P[d+12>>2];b=P[d+8>>2];L[c+4>>2]=35;L[c+8>>2]=0;L[c>>2]=14328;L[c+44>>2]=1025758986;L[c+12>>2]=1065353216;L[c+16>>2]=1065353216;L[c>>2]=14044;L[c+20>>2]=1065353216;L[c+24>>2]=0;P[c+60>>2]=b;P[c+56>>2]=a;L[c+4>>2]=11;L[c+64>>2]=0;L[c+68>>2]=2;L[c>>2]=13592;P[c+28>>2]=a;L[c+72>>2]=1;P[c+36>>2]=b;P[c+32>>2]=a;P[c+52>>2]=a/S(_(S(S(a*a)+S(b*b))));fa=d+16|0;return c|0}function cx(a){a=S(a);var b=0,c=0,d=0,e=0,f=0;d=fa-16|0;fa=d;P[d+12>>2]=a;f=oa(52);a=P[d+12>>2];c=fa-16|0;fa=c;L[c+12>>2]=f;P[c+8>>2]=a;b=L[c+12>>2];L[b+4>>2]=35;L[b+8>>2]=0;L[b>>2]=14328;L[b+44>>2]=1025758986;L[b+12>>2]=1065353216;L[b+16>>2]=1065353216;L[b>>2]=14044;L[b+20>>2]=1065353216;L[b+24>>2]=0;L[b>>2]=16192;L[b+4>>2]=8;a=P[c+8>>2];e=fa-16|0;L[e+12>>2]=b+28;P[e+8>>2]=a;P[L[e+12>>2]>>2]=P[e+8>>2];P[b+44>>2]=P[c+8>>2];fa=c+16|0;fa=d+16|0;return f|0}function Ux(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+8>>2];b=fa-16|0;fa=b;L[b+12>>2]=L[c+12>>2];L[b+8>>2]=a;d=L[b+8>>2];a=fa-16|0;fa=a;f=L[b+12>>2];L[a+12>>2]=f;L[a+8>>2]=d;d=L[a+12>>2];e=L[a+8>>2];la(d,e,e+16|0,e+32|0);la(d+16|0,L[a+8>>2]+4|0,L[a+8>>2]+20|0,L[a+8>>2]+36|0);la(d+32|0,L[a+8>>2]+8|0,L[a+8>>2]+24|0,L[a+8>>2]+40|0);fa=a+16|0;la(f+48|0,L[b+8>>2]+48|0,L[b+8>>2]+52|0,L[b+8>>2]+56|0);fa=b+16|0;fa=c+16|0}function aC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=L[b+12>>2];c=fa-16|0;d=c+8|0;L[d>>2]=L[b+8>>2];L[d+4>>2]=e;d=L[b+4>>2];L[c>>2]=L[b>>2];L[c+4>>2]=d;a=L[a+8>>2];L[a+4>>2]=1065353216;L[a+44>>2]=1065353216;L[a+48>>2]=0;L[a+36>>2]=0;L[a+40>>2]=0;L[a+28>>2]=0;L[a+32>>2]=0;L[a+24>>2]=1065353216;L[a+16>>2]=0;L[a+20>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0;L[a+260>>2]=L[a+260>>2]+1;b=L[c+4>>2];L[a+52>>2]=L[c>>2];L[a+56>>2]=b;b=L[c+12>>2];L[a+60>>2]=L[c+8>>2];L[a+64>>2]=b}function ul(a,b,c,d,e){L[a+176>>2]=e;L[a+60>>2]=0;L[a+64>>2]=0;L[a+56>>2]=1017370378;P[a+52>>2]=d;L[a+8>>2]=b;L[a+168>>2]=16842752;L[a+172>>2]=0;L[a+12>>2]=c;L[a+44>>2]=1105933107;L[a+48>>2]=0;L[a+16>>2]=0;L[a+20>>2]=0;J[a+180|0]=1;L[a+24>>2]=1113325568;L[a+28>>2]=1092616192;J[a+181|0]=0;J[a+182|0]=0;L[a+36>>2]=1061752795;L[a+40>>2]=1060439283;L[a+108>>2]=0;J[a+144|0]=1;L[a>>2]=19124;L[a+140>>2]=0;L[a+132>>2]=0;L[a+136>>2]=0;L[a+68>>2]=0;L[a+72>>2]=0}function bj(a){var b=0,c=0;b=fa-32|0;fa=b;L[b+28>>2]=a;c=fa-16|0;a=L[b+28>>2];L[c+12>>2]=a;L[L[c+12>>2]>>2]=5048;L[a>>2]=5080;L[c+12>>2]=a+12;L[a+8>>2]=0;L[a+28>>2]=0;P[a+4>>2]=.009999999776482582;P[b+8>>2]=1;P[b+4>>2]=1;P[b>>2]=1;la(b+12|0,b+8|0,b+4|0,b);c=L[b+16>>2];L[a+12>>2]=L[b+12>>2];L[a+16>>2]=c;c=L[b+24>>2];L[a+20>>2]=L[b+20>>2];L[a+24>>2]=c;L[a+32>>2]=0;L[a+36>>2]=0;L[a+40>>2]=0;L[a+48>>2]=0;L[a+52>>2]=0;L[a+56>>2]=0;L[a+60>>2]=0;fa=b+32|0}function Vp(a){a=a|0;var b=S(0),c=0,d=S(0),e=0,f=0,g=0,h=0;e=fa-16|0;fa=e;L[e+12>>2]=a;c=L[e+12>>2];a=L[c+712>>2];if((a|0)>0){g=a&1;c=L[c+720>>2];a:{if((a|0)==1){a=0;break a}h=a&-2;a=0;while(1){d=b;b=P[(c+R(a,104)|0)+88>>2];d=S(d+(b>S(0)?S(S(1)/b):S(0)));b=P[(c+R(a|1,104)|0)+88>>2];b=S(d+(b>S(0)?S(S(1)/b):S(0)));a=a+2|0;f=f+2|0;if((h|0)!=(f|0)){continue}break}}if(g){d=b;b=P[(c+R(a,104)|0)+88>>2];b=S(d+(b>S(0)?S(S(1)/b):S(0)))}}fa=e+16|0;return S(b)}function QA(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;h=L[b+8>>2];if((h|0)>0){d=L[a+16>>2];j=L[b+16>>2];a=0;while(1){c=L[(e<<2)+j>>2];a:{if(!(M[c+204|0]&3)){b=a;i=b<<3;f=i+d|0;g=L[f>>2];if((b|0)!=(g|0)){while(1){b=(g<<3)+d|0;L[f>>2]=L[b>>2];b=L[b>>2];f=(b<<3)+d|0;g=L[f>>2];if((b|0)!=(g|0)){continue}break}}L[c+208>>2]=b;L[(d+i|0)+4>>2]=e;L[c+212>>2]=-1;a=a+1|0;break a}L[c+208>>2]=-1;L[c+212>>2]=-2}e=e+1|0;if((h|0)!=(e|0)){continue}break}}}function so(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-48|0;fa=e;L[e+44>>2]=a;L[e+40>>2]=b;L[e+36>>2]=c;L[e+32>>2]=d;c=L[e+44>>2];L[e+28>>2]=0;while(1){if(L[e+28>>2]>2]){L[e+24>>2]=L[e+40>>2]+(L[e+28>>2]<<4);b=e+8|0;a=c+56|0;Vd(b,L[e+24>>2],a,a+16|0,a+32|0);a=a+(Rh(b)<<4)|0;d=L[a+4>>2];b=L[e+36>>2]+(L[e+28>>2]<<4)|0;L[b>>2]=L[a>>2];L[b+4>>2]=d;d=L[a+12>>2];L[b+8>>2]=L[a+8>>2];L[b+12>>2]=d;L[e+28>>2]=L[e+28>>2]+1;continue}break}fa=e+48|0}function $B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;J[a+148|0]=0;a:{if(!rd(a,b)){break a}J[a+148|0]=1;if(!rd(a,b)){break a}J[a+148|0]=1;if(!rd(a,b)){break a}J[a+148|0]=1;if(!rd(a,b)){break a}J[a+148|0]=1;if(!rd(a,b)){break a}J[a+148|0]=1}b=L[a+8>>2];c=b+52|0;d=L[c+4>>2];L[a+92>>2]=L[c>>2];L[a+96>>2]=d;c=L[b+64>>2];L[a+100>>2]=L[b+60>>2];L[a+104>>2]=c;c=L[b+52>>2];d=L[b+56>>2];e=L[b+64>>2];L[a+120>>2]=L[b+60>>2];L[a+124>>2]=e;L[a+112>>2]=c;L[a+116>>2]=d}function dC(a,b){a=a|0;b=b|0;var c=S(0),d=S(0),e=S(0),f=S(0),g=0;J[a+171|0]=1;g=L[b+4>>2];L[a+60>>2]=L[b>>2];L[a+64>>2]=g;g=L[b+12>>2];L[a+68>>2]=L[b+8>>2];L[a+72>>2]=g;c=P[a+68>>2];d=P[a+60>>2];f=P[a- -64>>2];e=S(S(1)/S(_(S(S(c*c)+S(S(d*d)+S(f*f))))));c=S(c*e);d=S(d*e);e=S(f*e);f=P[a+72>>2];a:{if(!(S(_(S(S(c*c)+S(S(d*d)+S(e*e)))))>2]=d;P[a+88>>2]=f;P[a+84>>2]=c;P[a+80>>2]=e}function NH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;L[7540]=L[7540]-1;ha[L[L[a>>2]+20>>2]](a,b);c=L[b+768>>2];e=c<<2;f=L[a+20>>2];d=e+f|0;h=L[d>>2];i=d;d=L[a+12>>2]-1|0;g=d<<2;L[i>>2]=L[f+g>>2];L[L[a+20>>2]+g>>2]=h;L[L[L[a+20>>2]+e>>2]+768>>2]=c;L[a+12>>2]=d;a=L[a+68>>2];c=L[a+16>>2];if(!(c>>>0>b>>>0|c+R(L[a>>2],L[a+4>>2])>>>0<=b>>>0)){L[b>>2]=L[a+12>>2];L[a+12>>2]=b;L[a+8>>2]=L[a+8>>2]+1;return}if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}function Gf(a,b,c,d,e){var f=0;f=fa-32|0;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;L[f+12>>2]=e;a=L[f+28>>2];a:{if(L[a+64>>2]==3){L[f+8>>2]=L[a+52>>2]+R(L[f+24>>2],L[a+56>>2]);L[L[f+20>>2]>>2]=N[L[f+8>>2]>>1];L[L[f+16>>2]>>2]=N[L[f+8>>2]+2>>1];L[L[f+12>>2]>>2]=N[L[f+8>>2]+4>>1];break a}L[f+4>>2]=L[a+52>>2]+R(L[f+24>>2],L[a+56>>2]);L[L[f+20>>2]>>2]=L[L[f+4>>2]>>2];L[L[f+16>>2]>>2]=L[L[f+4>>2]+4>>2];L[L[f+12>>2]>>2]=L[L[f+4>>2]+8>>2]}}function Ql(a){a=a|0;var b=0;L[a>>2]=17684;b=L[a+184>>2];if(!(b?!b|!M[a+188|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+184>>2]=0;J[a+188|0]=1;L[a+176>>2]=0;L[a+180>>2]=0;b=L[a+164>>2];if(!(b?!b|!M[a+168|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+164>>2]=0;J[a+168|0]=1;L[a+156>>2]=0;L[a+160>>2]=0;L[a>>2]=4720;b=L[a+84>>2];if(!(b?!b|!M[a+88|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+84>>2]=0;J[a+88|0]=1;L[a+76>>2]=0;L[a+80>>2]=0;return a|0}function IF(a,b){a=a|0;b=b|0;var c=S(0),d=0,e=S(0),f=S(0);d=ha[L[L[a>>2]+28>>2]](a)|0;c=S(P[d+8>>2]-P[b+8>>2]);e=S(c*c);c=S(P[d>>2]-P[b>>2]);f=S(c*c);c=S(P[d+4>>2]-P[b+4>>2]);if(S(e+S(f+S(c*c)))>S(1.1920928955078125e-7)){Vl(a,b);if(M[a+61|0]){b=L[a+52>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+52>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}L[8513]=L[8513]+1;b=gm(ha[L[6798]](172,16)|0);L[a+52>>2]=b;fm(b,L[a+48>>2],M[a+60|0],a+16|0,a+32|0);J[a+61|0]=1}}function Bd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=L[b+188>>2];if(d){c=L[a+68>>2];c=ha[L[L[c>>2]+36>>2]](c)|0;ha[L[L[c>>2]+40>>2]](c,d,L[a+24>>2]);c=L[a+68>>2];ha[L[L[c>>2]+12>>2]](c,d,L[a+24>>2]);L[b+188>>2]=0}c=L[a+8>>2];a:{if((c|0)<=0){break a}e=L[a+16>>2];d=0;while(1){f=(d<<2)+e|0;if(L[f>>2]!=(b|0)){d=d+1|0;if((c|0)!=(d|0)){continue}break a}break}if((c|0)<=(d|0)){break a}d=c-1|0;c=d<<2;L[f>>2]=L[c+e>>2];L[c+L[a+16>>2]>>2]=b;L[a+8>>2]=d}}function wm(a,b){L[a+4>>2]=31;L[a+8>>2]=0;L[a+72>>2]=0;L[a+76>>2]=1065353216;L[a+64>>2]=0;L[a+68>>2]=1;L[a+48>>2]=-581039253;L[a+52>>2]=-581039253;L[a+32>>2]=1566444395;L[a+36>>2]=1566444395;J[a+28|0]=1;L[a>>2]=13272;L[a+24>>2]=0;L[a+88>>2]=0;L[a+80>>2]=1065353216;L[a+84>>2]=1065353216;L[a+56>>2]=-581039253;L[a+60>>2]=0;L[a+40>>2]=1566444395;L[a+44>>2]=0;L[a+16>>2]=0;L[a+20>>2]=0;if(b){L[8513]=L[8513]+1;L[a+64>>2]=hc(ha[L[6798]](60,16)|0)}}function bC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;L[a+172>>2]=0;K[a+168>>1]=0;L[a+16>>2]=0;L[a+20>>2]=0;L[a+60>>2]=0;L[a+64>>2]=0;L[a+68>>2]=0;L[a+72>>2]=0;a=L[L[a+8>>2]+284>>2];if(L[(ha[L[L[a>>2]+28>>2]](a)|0)+4>>2]>0){while(1){d=a,e=L[L[(ha[L[L[a>>2]+28>>2]](a)|0)+12>>2]>>2],f=L[L[(ha[L[L[a>>2]+28>>2]](a)|0)+12>>2]+4>>2],g=L[b+24>>2],c=L[L[a>>2]+12>>2],ha[c](d|0,e|0,f|0,g|0)|0;if(L[(ha[L[L[a>>2]+28>>2]](a)|0)+4>>2]>0){continue}break}}}function aw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;b=L[d+8>>2];a=fa+-64|0;fa=a;L[a+60>>2]=L[d+12>>2];L[a+56>>2]=b;b=L[a+60>>2];e=b+56|0;f=a+24|0;La(f,b+72|0,e);c=a+8|0;La(c,e+32|0,e);b=a+40|0;Ub(b,f,c);Nd(b);f=L[a+56>>2];c=fa-16|0;L[c+12>>2]=b;c=L[c+12>>2];g=fa-16|0;L[g+12>>2]=b;g=L[g+12>>2]+4|0;h=fa-16|0;L[h+12>>2]=b;h=L[h+12>>2]+8|0;P[a+4>>2]=Sa(e,b);vc(f,c,g,h,a+4|0);fa=a- -64|0;fa=d+16|0}function lH(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=S(d);e=e|0;f=f|0;var g=0;g=fa+-64|0;fa=g;L[g+60>>2]=f;L[g+56>>2]=e;e=L[a+212>>2];if(P[e+4>>2]>=d){L[g+12>>2]=L[a+216>>2];L[g+16>>2]=g+56;a=L[b+12>>2];L[g+28>>2]=L[b+8>>2];L[g+32>>2]=a;a=L[b+4>>2];L[g+20>>2]=L[b>>2];L[g+24>>2]=a;a=L[c+12>>2];L[g+44>>2]=L[c+8>>2];L[g+48>>2]=a;a=L[c+4>>2];L[g+36>>2]=L[c>>2];L[g+40>>2]=a;P[g+52>>2]=d;d=S(ha[L[L[e>>2]+12>>2]](e,g+12|0,1))}fa=g- -64|0;return S(d)}function kH(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=S(d);e=e|0;f=f|0;var g=0;g=fa+-64|0;fa=g;L[g+60>>2]=f;L[g+56>>2]=e;e=L[a+212>>2];if(P[e+4>>2]>=d){L[g+12>>2]=L[a+216>>2];L[g+16>>2]=g+56;a=L[b+12>>2];L[g+28>>2]=L[b+8>>2];L[g+32>>2]=a;a=L[b+4>>2];L[g+20>>2]=L[b>>2];L[g+24>>2]=a;a=L[c+12>>2];L[g+44>>2]=L[c+8>>2];L[g+48>>2]=a;a=L[c+4>>2];L[g+36>>2]=L[c>>2];L[g+40>>2]=a;P[g+52>>2]=d;d=S(ha[L[L[e>>2]+12>>2]](e,g+12|0,0))}fa=g- -64|0;return S(d)}function lk(a,b,c,d,e){var f=0;L[a>>2]=8684;L[a+4>>2]=L[b>>2];J[a+8|0]=e;L[a>>2]=21960;f=L[b>>2];b=a+12|0;L[b+52>>2]=0;L[b+48>>2]=f;J[b+76|0]=1;L[b>>2]=21988;L[b+72>>2]=0;J[b+96|0]=1;f=b- -64|0;L[f>>2]=0;L[f+4>>2]=0;L[b+92>>2]=0;J[b+116|0]=1;L[b+84>>2]=0;L[b+88>>2]=0;L[b+112>>2]=0;J[b+136|0]=1;L[b+104>>2]=0;L[b+108>>2]=0;L[b+132>>2]=0;L[b+124>>2]=0;L[b+128>>2]=0;L[b+4>>2]=L[(e?d:c)+8>>2];L[b+8>>2]=L[(e?c:d)+8>>2];jk(b+60|0);return a}function Ug(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0);ha[L[L[b>>2]+68>>2]](a,b,c);if(S(ha[L[L[b>>2]+48>>2]](b))!=S(0)){e=P[c+4>>2];d=P[c>>2];f=P[c+8>>2];g=S(ha[L[L[b>>2]+48>>2]](b));b=S(S(f*f)+S(S(d*d)+S(e*e)))>2]=P[a>>2]+S(g*S(h*d));P[a+4>>2]=P[a+4>>2]+S(g*S(e*d));P[a+8>>2]=P[a+8>>2]+S(g*S(f*d))}}function DC(a,b,c){a=a|0;b=b|0;c=c|0;b=L[b+164>>2]+(c<<6)|0;c=L[b+4>>2];L[a>>2]=L[b>>2];L[a+4>>2]=c;c=L[b+12>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=c;c=L[b+28>>2];L[a+24>>2]=L[b+24>>2];L[a+28>>2]=c;c=L[b+20>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=c;c=L[b+36>>2];L[a+32>>2]=L[b+32>>2];L[a+36>>2]=c;c=L[b+44>>2];L[a+40>>2]=L[b+40>>2];L[a+44>>2]=c;c=L[b+60>>2];L[a+56>>2]=L[b+56>>2];L[a+60>>2]=c;c=L[b+52>>2];L[a+48>>2]=L[b+48>>2];L[a+52>>2]=c}function OE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=0;l=L[a+96>>2];e=L[a+104>>2]+((b|0)%(l|0)<<4)|0;f=P[e>>2];g=P[e+4>>2];h=P[e+8>>2];i=P[a+16>>2];j=P[a+20>>2];k=P[a+12>>2];L[c+12>>2]=0;P[c+8>>2]=h*j;P[c+4>>2]=g*i;P[c>>2]=f*k;b=L[a+104>>2]+((b+1|0)%(l|0)<<4)|0;f=P[b>>2];g=P[b+4>>2];h=P[b+8>>2];i=P[a+16>>2];j=P[a+20>>2];k=P[a+12>>2];L[d+12>>2]=0;P[d+8>>2]=h*j;P[d+4>>2]=g*i;P[d>>2]=f*k}function lc(a,b){var c=0,d=S(0),e=S(0),f=S(0);c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=fa-16|0;a=L[c+12>>2];L[b+12>>2]=a;d=P[L[b+12>>2]+4>>2];b=fa-16|0;L[b+12>>2]=L[c+8>>2];e=P[L[b+12>>2]>>2];b=fa-16|0;L[b+12>>2]=a+16;f=P[L[b+12>>2]+4>>2];b=fa-16|0;L[b+12>>2]=L[c+8>>2];d=S(S(d*e)+S(f*P[L[b+12>>2]+4>>2]));b=fa-16|0;L[b+12>>2]=a+32;e=P[L[b+12>>2]+4>>2];a=fa-16|0;L[a+12>>2]=L[c+8>>2];fa=c+16|0;return S(S(e*P[L[a+12>>2]+8>>2])+d)}function kc(a,b){var c=0,d=S(0),e=S(0),f=S(0);c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=fa-16|0;a=L[c+12>>2];L[b+12>>2]=a;d=P[L[b+12>>2]+8>>2];b=fa-16|0;L[b+12>>2]=L[c+8>>2];e=P[L[b+12>>2]>>2];b=fa-16|0;L[b+12>>2]=a+16;f=P[L[b+12>>2]+8>>2];b=fa-16|0;L[b+12>>2]=L[c+8>>2];d=S(S(d*e)+S(f*P[L[b+12>>2]+4>>2]));b=fa-16|0;L[b+12>>2]=a+32;e=P[L[b+12>>2]+8>>2];a=fa-16|0;L[a+12>>2]=L[c+8>>2];fa=c+16|0;return S(S(e*P[L[a+12>>2]+8>>2])+d)}function hy(a,b){a=a|0;b=b|0;var c=0,d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;a=L[d+8>>2];b=fa-16|0;fa=b;L[b+12>>2]=L[d+12>>2];L[b+8>>2]=a;a=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[b+8>>2];P[a>>2]=P[a>>2]+P[L[c+12>>2]>>2];c=fa-16|0;L[c+12>>2]=L[b+8>>2];P[a+4>>2]=P[a+4>>2]+P[L[c+12>>2]+4>>2];c=fa-16|0;L[c+12>>2]=L[b+8>>2];P[a+8>>2]=P[a+8>>2]+P[L[c+12>>2]+8>>2];P[a+12>>2]=P[a+12>>2]+P[L[b+8>>2]+12>>2];fa=b+16|0;fa=d+16|0;return a|0}function gy(a,b){a=a|0;b=b|0;var c=0,d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;a=L[d+8>>2];b=fa-16|0;fa=b;L[b+12>>2]=L[d+12>>2];L[b+8>>2]=a;a=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[b+8>>2];P[a>>2]=P[a>>2]-P[L[c+12>>2]>>2];c=fa-16|0;L[c+12>>2]=L[b+8>>2];P[a+4>>2]=P[a+4>>2]-P[L[c+12>>2]+4>>2];c=fa-16|0;L[c+12>>2]=L[b+8>>2];P[a+8>>2]=P[a+8>>2]-P[L[c+12>>2]+8>>2];P[a+12>>2]=P[a+12>>2]-P[L[b+8>>2]+12>>2];fa=b+16|0;fa=d+16|0;return a|0}function yl(a,b){var c=0,d=S(0),e=0,f=0,g=S(0),h=S(0),i=S(0),j=S(0),k=0,l=S(0),m=S(0);f=L[a>>2];if((f|0)>0){g=P[a+308>>2];h=P[b+8>>2];i=P[b+4>>2];j=P[b>>2];while(1){k=c;c=(e<<4)+a|0;d=S(h-P[c+12>>2]);l=S(d*d);d=S(j-P[c+4>>2]);m=S(d*d);d=S(i-P[c+8>>2]);c=k|S(l+S(m+S(d*d)))<=g;e=e+1|0;if((f|0)!=(e|0)){continue}break}}if(!(P[b+12>>2]!=P[a+304>>2]|P[b+8>>2]!=P[a+300>>2]|P[b+4>>2]!=P[a+296>>2])){c=P[b>>2]==P[a+292>>2]|c}return c&1}function $a(){var a=0,b=0;b=fa-32|0;fa=b;if(!(J[30088]&1)){a=fa-48|0;fa=a;if(!(J[30140]&1)){P[a+44>>2]=1;P[a+40>>2]=0;P[a+36>>2]=0;P[a+32>>2]=0;P[a+28>>2]=1;P[a+24>>2]=0;P[a+20>>2]=0;P[a+16>>2]=0;P[a+12>>2]=1;lf(30092,a+44|0,a+40|0,a+36|0,a+32|0,a+28|0,a+24|0,a+20|0,a+16|0,a+12|0);J[30140]=1}fa=a+48|0;P[b+12>>2]=0;P[b+8>>2]=0;P[b+4>>2]=0;a=b+16|0;la(a,b+12|0,b+8|0,b+4|0);Qf(30024,30092,a);J[30088]=1}fa=b+32|0;return 30024}function pC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=L[b+4>>2];L[a+52>>2]=L[b>>2];L[a+56>>2]=c;c=L[b+12>>2];L[a+60>>2]=L[b+8>>2];L[a+64>>2]=c;d=L[a+152>>2];c=d;a:{if(!d){break a}if(d&1){c=d-1|0;e=L[L[a+160>>2]+(c<<2)>>2];ha[L[L[e>>2]+24>>2]](e,b)}if((d|0)==1){break a}while(1){d=L[(L[a+160>>2]+(c<<2)|0)-4>>2];ha[L[L[d>>2]+24>>2]](d,b);c=c-2|0;d=L[L[a+160>>2]+(c<<2)>>2];ha[L[L[d>>2]+24>>2]](d,b);if(c){continue}break}}J[a+48|0]=1}function mc(a,b){var c=0,d=S(0),e=S(0),f=S(0);c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=fa-16|0;a=L[c+12>>2];L[b+12>>2]=a;d=P[L[b+12>>2]>>2];b=fa-16|0;L[b+12>>2]=L[c+8>>2];e=P[L[b+12>>2]>>2];b=fa-16|0;L[b+12>>2]=a+16;f=P[L[b+12>>2]>>2];b=fa-16|0;L[b+12>>2]=L[c+8>>2];d=S(S(d*e)+S(f*P[L[b+12>>2]+4>>2]));b=fa-16|0;L[b+12>>2]=a+32;e=P[L[b+12>>2]>>2];a=fa-16|0;L[a+12>>2]=L[c+8>>2];fa=c+16|0;return S(S(e*P[L[a+12>>2]+8>>2])+d)}function Rp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;e=L[c+12>>2];b=L[c+8>>2];a=fa+-64|0;fa=a;L[a+12>>2]=0;L[a+16>>2]=0;L[a+24>>2]=0;L[a+28>>2]=0;L[a+20>>2]=1065353216;L[a+32>>2]=0;L[a+36>>2]=0;L[a+40>>2]=1065353216;L[a+44>>2]=0;L[a+4>>2]=0;L[a+8>>2]=0;L[a>>2]=1065353216;d=L[b+12>>2];L[a+56>>2]=L[b+8>>2];L[a+60>>2]=d;d=L[b+4>>2];L[a+48>>2]=L[b>>2];L[a+52>>2]=d;jg(e,a);fa=a- -64|0;fa=c+16|0}function pA(a){a=a|0;var b=0;L[a>>2]=20608;b=L[a+80>>2];if(!(b?!b|!M[a+84|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+80>>2]=0;J[a+84|0]=1;L[a+72>>2]=0;L[a+76>>2]=0;b=L[a+60>>2];if(!(b?!b|!M[a- -64|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+60>>2]=0;J[a+64|0]=1;L[a+52>>2]=0;L[a+56>>2]=0;b=L[a+40>>2];if(!(b?!b|!M[a+44|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+40>>2]=0;J[a+44|0]=1;L[a+32>>2]=0;L[a+36>>2]=0;return a|0}function Qm(a){a=a|0;var b=0;L[a>>2]=11520;b=L[a+60>>2];if(!(b?!b|!M[a- -64|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+60>>2]=0;J[a+64|0]=1;L[a+52>>2]=0;L[a+56>>2]=0;b=L[a+40>>2];if(!(b?!b|!M[a+44|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+40>>2]=0;J[a+44|0]=1;L[a+32>>2]=0;L[a+36>>2]=0;b=L[a+16>>2];if(!(b?!b|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+16>>2]=0;J[a+20|0]=1;L[a+8>>2]=0;L[a+12>>2]=0;return a|0}function xn(a){a=a|0;var b=0;L[a>>2]=6064;b=L[a- -64>>2];if(!(b?!b|!M[a+68|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+64>>2]=0;J[a+68|0]=1;L[a+56>>2]=0;L[a+60>>2]=0;b=L[a+44>>2];if(!(b?!b|!M[a+48|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+44>>2]=0;J[a+48|0]=1;L[a+36>>2]=0;L[a+40>>2]=0;b=L[a+16>>2];if(!(b?!b|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+16>>2]=0;J[a+20|0]=1;L[a+8>>2]=0;L[a+12>>2]=0;return a|0}function fk(a){a=a|0;var b=0;L[a>>2]=22792;if(M[a+456|0]){b=L[a+452>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+452>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}b=L[a+420>>2];if(!(b?!b|!M[a+424|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+420>>2]=0;J[a+424|0]=1;L[a+412>>2]=0;L[a+416>>2]=0;b=L[a+336>>2];if(!(b?!b|!M[a+340|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+336>>2]=0;J[a+340|0]=1;L[a+328>>2]=0;L[a+332>>2]=0;return pg(a)|0}function Yk(a){a=a|0;var b=0;L[a>>2]=20292;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]=0;J[a+60|0]=1;L[a+48>>2]=0;L[a+52>>2]=0;b=L[a+36>>2];if(!(b?!b|!M[a+40|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+36>>2]=0;J[a+40|0]=1;L[a+28>>2]=0;L[a+32>>2]=0;b=L[a+16>>2];if(!(b?!b|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+16>>2]=0;J[a+20|0]=1;L[a+8>>2]=0;L[a+12>>2]=0;return a|0}function nG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=L[b>>2];e=ha[L[L[e>>2]+56>>2]](e,28)|0;f=M[a+4|0];g=L[a+8>>2];a=L[a+12>>2];L[e>>2]=8684;L[e+4>>2]=L[b>>2];L[e+24>>2]=a;L[e+20>>2]=g;J[e+16|0]=f;L[e+12>>2]=0;J[e+8|0]=0;L[e>>2]=10252;a=L[e+4>>2];b=f?d:c;c=f?c:d;if(ha[L[L[a>>2]+24>>2]](a,L[b+8>>2],L[c+8>>2])|0){a=L[e+4>>2];a=ha[L[L[a>>2]+12>>2]](a,L[b+8>>2],L[c+8>>2])|0;J[e+8|0]=1;L[e+12>>2]=a}return e|0}function Ig(a,b,c){var d=0,e=0;d=L[a+12>>2];if(!d){d=L[a+4>>2];d=ha[L[L[d>>2]+12>>2]](d,L[b+8>>2],L[c+8>>2])|0;L[a+12>>2]=d}L[L[a+16>>2]+4>>2]=d;e=L[a+4>>2];d=ha[L[L[e>>2]+8>>2]](e,b,c,d)|0;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]);ha[L[L[d>>2]+8>>2]](d,b,c,L[a+20>>2],L[a+16>>2]);ha[L[L[d>>2]>>2]](d)|0;a=L[a+4>>2];ha[L[L[a>>2]+60>>2]](a,d)}function qf(a,b){var c=0,d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;b=L[d+8>>2];c=L[b+4>>2];a=L[d+12>>2];L[a>>2]=L[b>>2];L[a+4>>2]=c;L[a+24>>2]=L[b+24>>2];c=L[b+20>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=c;c=L[b+12>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=c;mf(a+28|0,L[d+8>>2]+28|0);b=L[d+8>>2];c=L[b+80>>2];L[a+76>>2]=L[b+76>>2];L[a+80>>2]=c;L[a+92>>2]=L[b+92>>2];c=L[b+88>>2];L[a+84>>2]=L[b+84>>2];L[a+88>>2]=c;fa=d+16|0}function ou(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;b=L[d+8>>2];a=fa-32|0;fa=a;L[a+28>>2]=L[d+12>>2];L[a+24>>2]=b;c=L[a+24>>2];e=L[c+4>>2];b=L[a+28>>2];L[b+348>>2]=L[c>>2];L[b+352>>2]=e;e=L[c+12>>2];L[b+356>>2]=L[c+8>>2];L[b+360>>2]=e;Ga(a+8|0,b+348|0,b+344|0);c=L[a+12>>2];L[b+560>>2]=L[a+8>>2];L[b+564>>2]=c;c=L[a+20>>2];L[b+568>>2]=L[a+16>>2];L[b+572>>2]=c;fa=a+32|0;fa=d+16|0}function _k(a,b){var c=S(0);L[a+20>>2]=0;L[a+24>>2]=0;J[a+28|0]=0;c=P[a+4>>2];a:{if(!(c>=S(0))){break a}b=Na(S(b-P[a>>2]),S(6.2831854820251465));b:{if(bS(3.1415927410125732))){break b}b=S(b+S(-6.2831854820251465))}c:{if(S(-c)>b){J[a+28|0]=1;b=S(-S(c+b));c=S(1);break c}if(!(b>c)){break a}J[a+28|0]=1;b=S(c-b);c=S(-1)}P[a+24>>2]=c;P[a+20>>2]=b}}function Uh(a,b,c){var d=0,e=0;d=fa-32|0;fa=d;L[d+28>>2]=a;L[d+24>>2]=0;L[d+20>>2]=b;L[d+16>>2]=c;c=L[d+28>>2];L[d+12>>2]=L[d+24>>2];while(1){if(L[d+12>>2]>2]){b=L[d+16>>2]+(L[d+12>>2]<<4)|0;a=fa-16|0;L[a+12>>2]=16;L[a+8>>2]=b;b=L[c+12>>2]+(L[d+12>>2]<<4)|0;e=L[b+4>>2];a=L[a+8>>2];L[a>>2]=L[b>>2];L[a+4>>2]=e;e=L[b+12>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=e;L[d+12>>2]=L[d+12>>2]+1;continue}break}fa=d+32|0}function BB(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0);a:{b:{if(c>>>0<=2){c:{switch(b-2|0){case 0:a=((c<<2)+a|0)+756|0;break b;case 2:a=((c<<2)+a|0)+772|0;break b;case 1:break c;default:break a}}a=((c<<2)+a|0)+740|0;break b}c=c-3|0;if(c>>>0>2){break a}d:{switch(b-2|0){case 0:a=((c<<6)+a|0)+900|0;break b;case 2:a=((c<<6)+a|0)+904|0;break b;case 1:break d;default:break a}}a=((c<<6)+a|0)+896|0}d=P[a>>2]}return S(d)}function lf(a,b,c,d,e,f,g,h,i,j){var k=0;k=fa-48|0;fa=k;L[k+40>>2]=a;L[k+36>>2]=b;L[k+32>>2]=c;L[k+28>>2]=d;L[k+24>>2]=e;L[k+20>>2]=f;L[k+16>>2]=g;L[k+12>>2]=h;L[k+8>>2]=i;L[k+4>>2]=j;a=L[k+40>>2];L[k+44>>2]=a;c=a+48|0;b=a;while(1){L[(fa-16|0)+12>>2]=b;b=b+16|0;if((c|0)!=(b|0)){continue}break}md(a,L[k+36>>2],L[k+32>>2],L[k+28>>2],L[k+24>>2],L[k+20>>2],L[k+16>>2],L[k+12>>2],L[k+8>>2],L[k+4>>2]);fa=k+48|0}function Uq(a,b){a=a|0;b=S(b);var c=0,d=0,e=0,f=S(0);c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;d=L[c+12>>2];if(L[d+136>>2]>0){f=S(S(1)/P[L[d+116>>2]+344>>2]);while(1){b=S(0);a=L[d+144>>2]+R(e,284)|0;if(M[a+84|0]){b=P[a+272>>2];b=S(f*S(S(S(P[a+216>>2]*S(P[a+204>>2]-P[a+32>>2]))*P[a+268>>2])-S(P[a+(b>2]*b)));b=b>2]=b;e=e+1|0;if((e|0)>2]){continue}break}}fa=c+16|0}function TB(a,b){a=a|0;b=b|0;var c=0,d=0,e=S(0);a:{b:{if(M[a+527|0]){L[b>>2]=0;a=0;break b}L[b>>2]=3;L[b+4>>2]=3;c=L[a+28>>2];d=L[a+32>>2];wg(a,c+4|0,d+4|0,c+264|0,d+264|0);c:{if(!M[a+526|0]){break c}c=L[b>>2];L[b>>2]=c+1;d=L[b+4>>2];L[b+4>>2]=d-1;e=P[a+456>>2];if(!(e>P[a+444>>2])|!(P[a+448>>2]>2]=d-2;L[b>>2]=c+2}if(!M[a+525|0]){break a}L[b>>2]=L[b>>2]+1;a=L[b+4>>2]-1|0}L[b+4>>2]=a}}function th(a,b){var c=0;L[a>>2]=5728;hc(a+4|0);hc(a- -64|0);c=!b;J[a+192|0]=c;J[a+193|0]=0;J[a+194|0]=1;L[a+164>>2]=0;L[a+140>>2]=0;L[a+144>>2]=0;L[a+176>>2]=0;L[a+168>>2]=0;L[a+172>>2]=0;L[a+156>>2]=10;L[a+160>>2]=1;L[a+148>>2]=1;L[a+152>>2]=0;if(c){L[8513]=L[8513]+1;b=qh(ha[L[6798]](76,16)|0)}L[a+188>>2]=0;L[a+136>>2]=b;L[a+180>>2]=0;L[a+184>>2]=0;L[a+124>>2]=0;L[a+128>>2]=0;L[a+132>>2]=0;return a}function Sn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-32|0;fa=e;L[e+28>>2]=a;L[e+24>>2]=b;L[e+20>>2]=c;L[e+16>>2]=d;L[e+12>>2]=L[L[e+24>>2]>>2];L[e+8>>2]=L[L[e+20>>2]>>2];L[e+4>>2]=Md(L[e+12>>2]);L[e>>2]=Md(L[e+8>>2]);if(L[e+4>>2]){a=L[e+4>>2];ha[L[L[a>>2]+32>>2]](a,L[e+20>>2],L[e+16>>2],L[e+24>>2])}if(L[e>>2]){a=L[e>>2];ha[L[L[a>>2]+32>>2]](a,L[e+24>>2],L[e+16>>2],L[e+20>>2])}fa=e+32|0;return 0}function Gc(a,b,c){var d=0,e=0,f=0,g=0;e=Fd(a,b);a:{if(!e){e=0;break a}f=L[a+8>>2];if((f|0)>=0){if(!f){break a}while(1){d=L[e+32>>2];if(!d){break a}e=d;g=g+1|0;if((f|0)!=(g|0)){continue}break}break a}e=L[a>>2]}d=L[c+4>>2];L[b>>2]=L[c>>2];L[b+4>>2]=d;d=L[c+28>>2];L[b+24>>2]=L[c+24>>2];L[b+28>>2]=d;d=L[c+20>>2];L[b+16>>2]=L[c+16>>2];L[b+20>>2]=d;d=L[c+12>>2];L[b+8>>2]=L[c+8>>2];L[b+12>>2]=d;Ed(a,e,b)}function Jh(a,b,c,d){var e=0;e=fa-32|0;fa=e;L[e+28>>2]=b;L[e+24>>2]=c;L[e+20>>2]=d;b=fa-16|0;L[b+12>>2]=a;c=N[L[e+28>>2]>>1];L[b+12>>2]=L[e+20>>2];P[e+16>>2]=S(c>>>0)/P[L[b+12>>2]>>2];c=N[L[e+28>>2]+2>>1];L[b+12>>2]=L[e+20>>2];P[e+12>>2]=S(c>>>0)/P[L[b+12>>2]+4>>2];c=N[L[e+28>>2]+4>>1];L[b+12>>2]=L[e+20>>2];P[e+8>>2]=S(c>>>0)/P[L[b+12>>2]+8>>2];la(a,e+16|0,e+12|0,e+8|0);hb(a,L[e+24>>2]);fa=e+32|0}function ua(a,b,c){var d=0;d=fa-32|0;fa=d;L[d+28>>2]=b;L[d+24>>2]=c;b=fa-16|0;L[b+12>>2]=L[d+28>>2];L[b+8>>2]=0;P[d+20>>2]=Sa(L[b+12>>2]+(L[b+8>>2]<<4)|0,L[d+24>>2]);b=fa-16|0;L[b+12>>2]=L[d+28>>2];L[b+8>>2]=1;P[d+16>>2]=Sa(L[b+12>>2]+(L[b+8>>2]<<4)|0,L[d+24>>2]);b=fa-16|0;L[b+12>>2]=L[d+28>>2];L[b+8>>2]=2;P[d+12>>2]=Sa(L[b+12>>2]+(L[b+8>>2]<<4)|0,L[d+24>>2]);la(a,d+20|0,d+16|0,d+12|0);fa=d+32|0}function $g(a,b){a=a|0;b=b|0;var 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);c=S(ha[L[L[a>>2]+48>>2]](a));d=S(ha[L[L[a>>2]+48>>2]](a));e=S(ha[L[L[a>>2]+48>>2]](a));f=P[a+16>>2];g=P[a+32>>2];h=P[a+20>>2];i=P[a+36>>2];j=P[a+12>>2];k=P[a+28>>2];Ue(a,b);L[a+40>>2]=0;P[a+36>>2]=S(S(S(e+i)/h)*P[a+20>>2])-e;P[a+32>>2]=S(S(S(d+g)/f)*P[a+16>>2])-d;P[a+28>>2]=S(S(S(c+k)/j)*P[a+12>>2])-c}function rE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=S(0),g=S(0),h=S(0),i=0,j=S(0),k=0,l=S(0);if((d|0)>0){while(1){f=P[a+32>>2];g=P[a+28>>2];k=i<<4;e=k+b|0;j=P[e>>2];h=P[e+8>>2];l=S(_(S(S(j*j)+S(h*h))));a:{if(l!=S(0)){g=S(g/l);h=S(h*g);g=S(j*g);f=P[e+4>>2]>2]>2]=h;P[e+4>>2]=f;P[e>>2]=g;i=i+1|0;if((i|0)!=(d|0)){continue}break}}}function qE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=S(0),g=S(0),h=S(0),i=0,j=S(0),k=0,l=S(0);if((d|0)>0){while(1){f=P[a+36>>2];g=P[a+28>>2];k=i<<4;e=k+b|0;j=P[e>>2];h=P[e+4>>2];l=S(_(S(S(j*j)+S(h*h))));a:{if(l!=S(0)){g=S(g/l);h=S(h*g);g=S(j*g);f=P[e+8>>2]>2]>2]=f;P[e+4>>2]=h;P[e>>2]=g;i=i+1|0;if((i|0)!=(d|0)){continue}break}}}function pe(a){var b=0,c=0;b=fa-16|0;fa=b;P[b+8>>2]=a;c=fa-16|0;fa=c;P[c+12>>2]=P[b+8>>2];P[c+8>>2]=6.2831854820251465;a=Na(P[c+12>>2],P[c+8>>2]);fa=c+16|0;P[b+8>>2]=a;a:{if(P[b+8>>2]>2]=P[b+8>>2]+S(6.2831854820251465);break a}if(P[b+8>>2]>S(3.1415927410125732)){P[b+12>>2]=P[b+8>>2]+S(-6.2831854820251465);break a}P[b+12>>2]=P[b+8>>2]}fa=b+16|0;return P[b+12>>2]}function Wn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-144|0;fa=d;L[d+140>>2]=a;L[d+136>>2]=b;L[d+132>>2]=c;a=L[d+140>>2];Pb(d+68|0);b=L[a+4>>2];a:{if(ha[L[L[b>>2]+92>>2]](b)&1){b=d+4|0;c=L[a+4>>2];ha[L[L[c>>2]+132>>2]](b,c,L[d+136>>2]);sb(d+68|0,b);break a}ee(d+68|0)}a=L[a+4>>2];L[d>>2]=ha[L[L[a>>2]+124>>2]](a,L[d+136>>2]);a=L[d>>2];b=L[d+132>>2];ha[L[L[a>>2]+8>>2]](a,d+68|0,b,b+16|0);fa=d+144|0}function wa(a){var b=0,c=0,d=0;d=fa-16|0;fa=d;c=L[6803];a:{if(L[c>>2]==(a|0)){b=c;break a}b=L[c+24>>2];b:{if(b){while(1){if(L[b>>2]==(a|0)){break b}b=L[b+28>>2];if(b){continue}break}}b=sa(36);Vj(b,a,c);L[b+28>>2]=L[c+24>>2];L[c+24>>2]=b}L[6803]=b}L[b+4>>2]=L[b+4>>2]+1;a=L[b+16>>2];L[b+16>>2]=a+1;if(!a){xc(d);c=L[8515];a=L[d>>2]-L[c>>2]|0;L[b+12>>2]=(L[d+8>>2]-L[c+8>>2]|0)+R(a,1e6)}fa=d+16|0}function pE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=S(0),g=S(0),h=S(0),i=0,j=S(0),k=0,l=S(0);if((d|0)>0){while(1){f=P[a+28>>2];g=P[a+32>>2];k=i<<4;e=k+b|0;j=P[e+4>>2];h=P[e+8>>2];l=S(_(S(S(j*j)+S(h*h))));a:{if(l!=S(0)){g=S(g/l);h=S(h*g);g=S(j*g);f=P[e>>2]>2]>2]=h;P[e+4>>2]=g;P[e>>2]=f;i=i+1|0;if((i|0)!=(d|0)){continue}break}}}function Hf(a,b){var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=fa-16|0;a=L[c+12>>2];L[b+12>>2]=a;L[c+4>>2]=L[L[b+12>>2]+4>>2];b=L[c+4>>2];d=fa-16|0;L[d+12>>2]=a;if(L[L[d+12>>2]+8>>2]==(b|0)){b=fa-16|0;L[b+12>>2]=a;d=L[L[b+12>>2]+4>>2];L[b+12>>2]=a;L[b+8>>2]=d;if(L[b+8>>2]){b=L[b+8>>2]<<1}else{b=1}Yh(a,b)}L[L[a+12>>2]+(L[a+4>>2]<<2)>>2]=L[L[c+8>>2]>>2];L[a+4>>2]=L[a+4>>2]+1;fa=c+16|0}function QF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=S(0),g=S(0),h=S(0);e=fa-48|0;fa=e;ha[L[L[a>>2]+124>>2]](a,e+32|0,d);f=P[e+32>>2];g=P[e+36>>2];h=P[e+40>>2];L[b+12>>2]=0;P[b+8>>2]=h;P[b+4>>2]=g;P[b>>2]=f;L[e+12>>2]=0;P[e+8>>2]=-h;P[e+4>>2]=-g;P[e>>2]=-f;ha[L[L[a>>2]+64>>2]](e+16|0,a,e);a=L[e+28>>2];L[c+8>>2]=L[e+24>>2];L[c+12>>2]=a;a=L[e+20>>2];L[c>>2]=L[e+16>>2];L[c+4>>2]=a;fa=e+48|0}function Og(a){var b=0;L[a+4>>2]=35;L[a+8>>2]=0;L[a>>2]=14328;L[a+44>>2]=1025758986;L[a+12>>2]=1065353216;L[a+16>>2]=1065353216;L[a>>2]=14044;L[a+20>>2]=1065353216;L[a+24>>2]=0;J[a+88|0]=0;L[a+72>>2]=-1082130432;L[a+76>>2]=-1082130432;L[a+56>>2]=1065353216;L[a+60>>2]=1065353216;L[a>>2]=15968;L[a+52>>2]=0;L[a+80>>2]=-1082130432;L[a+84>>2]=0;b=a- -64|0;L[b>>2]=1065353216;L[b+4>>2]=0;return a}function qg(a,b){var c=0,d=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];d=L[b+4>>2];a=L[c+12>>2];L[a>>2]=L[b>>2];L[a+4>>2]=d;d=L[b+12>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=d;b=L[c+8>>2];d=L[b+20>>2];L[a+16>>2]=L[b+16>>2];L[a+20>>2]=d;d=L[b+28>>2];L[a+24>>2]=L[b+24>>2];L[a+28>>2]=d;b=L[c+8>>2];c=L[b+36>>2];L[a+32>>2]=L[b+32>>2];L[a+36>>2]=c;c=L[b+44>>2];L[a+40>>2]=L[b+40>>2];L[a+44>>2]=c}function gx(a,b){a=S(a);b=S(b);var c=0,d=0;d=fa-16|0;fa=d;P[d+12>>2]=a;P[d+8>>2]=b;c=oa(56);a=P[d+12>>2];b=P[d+8>>2];L[c+4>>2]=35;L[c+8>>2]=0;L[c>>2]=14328;L[c+44>>2]=1025758986;L[c+12>>2]=1065353216;L[c+16>>2]=1065353216;L[c>>2]=14044;L[c+20>>2]=1065353216;L[c+24>>2]=0;L[c+52>>2]=0;L[c>>2]=12948;L[c+4>>2]=10;P[c+28>>2]=b*S(.5);L[c+40>>2]=0;P[c+36>>2]=a;P[c+32>>2]=a;fa=d+16|0;return c|0}function fx(a,b){a=S(a);b=S(b);var c=0,d=0;d=fa-16|0;fa=d;P[d+12>>2]=a;P[d+8>>2]=b;c=oa(56);a=P[d+12>>2];b=P[d+8>>2];L[c+4>>2]=35;L[c+8>>2]=0;L[c>>2]=14328;L[c+44>>2]=1025758986;L[c+12>>2]=1065353216;L[c+16>>2]=1065353216;L[c>>2]=14044;L[c+20>>2]=1065353216;L[c+24>>2]=0;L[c+52>>2]=2;L[c>>2]=13048;L[c+4>>2]=10;P[c+28>>2]=a;L[c+40>>2]=0;P[c+36>>2]=b*S(.5);P[c+32>>2]=a;fa=d+16|0;return c|0}function RD(a,b){a=S(a);b=S(b);var c=0,d=0;d=fa-16|0;fa=d;P[d+12>>2]=a;P[d+8>>2]=b;c=oa(56);a=P[d+12>>2];b=P[d+8>>2];L[c+4>>2]=35;L[c+8>>2]=0;L[c>>2]=14328;L[c+44>>2]=1025758986;L[c+12>>2]=1065353216;L[c+16>>2]=1065353216;L[c>>2]=14044;L[c+20>>2]=1065353216;L[c+24>>2]=0;L[c+52>>2]=1;L[c+4>>2]=10;L[c>>2]=12848;P[c+28>>2]=a;L[c+40>>2]=0;P[c+36>>2]=a;P[c+32>>2]=b*S(.5);fa=d+16|0;return c|0}function rg(a,b,c){var d=0;d=fa-16|0;fa=d;L[a+28>>2]=c;L[a+24>>2]=-1;K[a+20>>1]=1;L[a+16>>2]=2139095039;L[a+8>>2]=-1;L[a+12>>2]=-1;L[a+4>>2]=b;L[a>>2]=20172;if(!M[33152]){L[d+8>>2]=0;L[d+12>>2]=0;L[d>>2]=0;L[d+4>>2]=0;ng(32536,d);J[33152]=1}L[d+8>>2]=0;L[d+12>>2]=0;L[d>>2]=0;L[d+4>>2]=0;ve(32536,S(0),d);L[a+44>>2]=0;L[a+36>>2]=0;L[a+40>>2]=1050253722;L[a+32>>2]=32536;fa=d+16|0;return a}function ki(a,b){var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=fa-16|0;a=L[c+12>>2];L[b+12>>2]=a;L[c+4>>2]=L[L[b+12>>2]+4>>2];b=L[c+4>>2];d=fa-16|0;L[d+12>>2]=a;if(L[L[d+12>>2]+8>>2]==(b|0)){b=fa-16|0;L[b+12>>2]=a;d=L[L[b+12>>2]+4>>2];L[b+12>>2]=a;L[b+8>>2]=d;if(L[b+8>>2]){b=L[b+8>>2]<<1}else{b=1}ji(a,b)}qf(L[a+12>>2]+R(L[a+4>>2],96)|0,L[c+8>>2]);L[a+4>>2]=L[a+4>>2]+1;fa=c+16|0}function _g(a,b){a=a|0;b=S(b);var c=S(0),d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0),j=S(0);c=S(ha[L[L[a>>2]+48>>2]](a));d=S(ha[L[L[a>>2]+48>>2]](a));e=S(ha[L[L[a>>2]+48>>2]](a));P[a+44>>2]=b;b=P[a+36>>2];f=P[a+32>>2];g=P[a+28>>2];h=S(ha[L[L[a>>2]+48>>2]](a));i=S(ha[L[L[a>>2]+48>>2]](a));j=S(ha[L[L[a>>2]+48>>2]](a));L[a+40>>2]=0;P[a+32>>2]=S(d+f)-i;P[a+28>>2]=S(c+g)-h;P[a+36>>2]=S(e+b)-j}function gH(a,b){a=a|0;b=b|0;var c=0,d=0,e=S(0),f=S(0),g=0,h=0;c=fa-32|0;fa=c;d=L[a+184>>2];e=P[d+4>>2];a:{if(e==S(0)){break a}b=L[b>>2];if(!(ha[L[L[d>>2]+8>>2]](d,L[b+188>>2])|0)){break a}f=P[a+188>>2];d=L[a+184>>2];g=L[a+192>>2];h=L[b+192>>2];L[c+24>>2]=-1;L[c+28>>2]=-1;L[c+20>>2]=b+4;L[c+16>>2]=b;L[c+12>>2]=h;L[c+8>>2]=0;kh(g,a+36|0,a+100|0,c+8|0,d,f)}fa=c+32|0;return e!=S(0)|0}function OF(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0);g=P[a+36>>2];h=P[a+32>>2];d=P[a+28>>2];e=S(1);a:{b:{c:{d:{e:{switch(c|0){case 1:e=S(-1);break b;case 2:f=S(1);break c;case 3:f=S(-1);break c;case 4:d=S(1);break d;case 0:break b;case 5:break e;default:break a}}d=S(-1)}i=d;e=S(0);d=g;break b}e=S(0);d=h}P[b+8>>2]=i;P[b+4>>2]=f;P[b>>2]=e;P[b+12>>2]=-d}}function ac(a){var b=0,c=0,d=0,e=0,f=S(0);b=fa-16|0;fa=b;d=L[a+8>>2];e=L[a+12>>2];a:{if((e|0)>0|(e|0)>=0){f=S(S(S(+(d>>>0)+ +(e>>>0)*4294967296)*S(0x10000000000000000))+S(+O[a>>2]+ +O[a+4>>2]*4294967296));break a}c=L[a>>2];a=L[a+4>>2];L[b>>2]=0-c;L[b+4>>2]=0-(a+((c|0)!=0)|0);a=!(a|c);c=d^-1;d=a+c|0;a=e^-1;L[b+8>>2]=d;L[b+12>>2]=d>>>0>>0?a+1|0:a;f=S(-ac(b))}fa=b+16|0;return f}function YF(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0),j=S(0),k=S(0),l=S(0);d=P[b+32>>2];e=P[b+36>>2];f=P[b+28>>2];g=S(ha[L[L[b>>2]+48>>2]](b));h=S(ha[L[L[b>>2]+48>>2]](b));i=S(ha[L[L[b>>2]+48>>2]](b));j=P[c>>2];k=P[c+4>>2];l=P[c+8>>2];L[a+12>>2]=0;e=S(e+i);P[a+8>>2]=l>=S(0)?e:S(-e);d=S(d+h);P[a+4>>2]=k>=S(0)?d:S(-d);d=S(f+g);P[a>>2]=j>=S(0)?d:S(-d)}function RF(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0);e=P[a+36>>2];d=P[a+32>>2];f=P[a+28>>2];g=S(ha[L[L[a>>2]+48>>2]](a));h=S(ha[L[L[a>>2]+48>>2]](a));i=S(ha[L[L[a>>2]+48>>2]](a));L[c+12>>2]=0;d=S(d+h);a=b>>>1&1;P[c+4>>2]=S(d*S(!a|0))-S(S(a|0)*d);d=S(f+g);a=b&1;P[c>>2]=S(d*S(!a|0))-S(S(a|0)*d);e=S(e+i);a=b>>>2&1;P[c+8>>2]=S(e*S(!a|0))-S(S(a|0)*e)}function ie(a,b,c,d,e){var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;L[f+12>>2]=e;b=L[f+24>>2];c=L[f+20>>2];d=L[f+16>>2];e=L[f+12>>2];a=fa-32|0;L[a+28>>2]=L[f+28>>2];L[a+24>>2]=b;L[a+20>>2]=c;L[a+16>>2]=d;L[a+12>>2]=e;b=L[a+28>>2];P[b>>2]=P[L[a+24>>2]>>2];P[b+4>>2]=P[L[a+20>>2]>>2];P[b+8>>2]=P[L[a+16>>2]>>2];P[b+12>>2]=P[L[a+12>>2]>>2];fa=f+32|0}function ee(a){var b=0,c=0,d=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-48|0;fa=a;c=L[b+12>>2];L[a+44>>2]=c;d=L[a+44>>2];P[a+40>>2]=1;P[a+36>>2]=0;P[a+32>>2]=0;P[a+28>>2]=0;P[a+24>>2]=1;P[a+20>>2]=0;P[a+16>>2]=0;P[a+12>>2]=0;P[a+8>>2]=1;md(d,a+40|0,a+36|0,a+32|0,a+28|0,a+24|0,a+20|0,a+16|0,a+12|0,a+8|0);fa=a+48|0;P[b+8>>2]=0;P[b+4>>2]=0;P[b>>2]=0;la(c+48|0,b+8|0,b+4|0,b);fa=b+16|0}function sp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;e=L[d+8>>2];a=0;b=L[d+12>>2];c=L[b+328>>2];a:{if((c|0)<=0){break a}f=L[b+336>>2];while(1){g=(a<<2)+f|0;if(L[g>>2]!=(e|0)){a=a+1|0;if((c|0)!=(a|0)){continue}break a}break}if((a|0)>=(c|0)){break a}a=c-1|0;c=a<<2;L[g>>2]=L[c+f>>2];L[c+L[b+336>>2]>>2]=e;L[b+328>>2]=a}Bd(b,e);fa=d+16|0}function bn(a){a=a|0;var b=0,c=0,d=0,e=0;L[a>>2]=9768;d=L[a+12>>2];if((d|0)>0){while(1){e=b<<2;c=L[e+L[a+20>>2]>>2];if(c){ha[L[L[c>>2]>>2]](c)|0;c=L[a+4>>2];ha[L[L[c>>2]+60>>2]](c,L[L[a+20>>2]+e>>2])}b=b+1|0;if((d|0)!=(b|0)){continue}break}}b=L[a+20>>2];if(!(b?!b|!M[a+24|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+20>>2]=0;J[a+24|0]=1;L[a+12>>2]=0;L[a+16>>2]=0;return a|0}function _F(a,b,c){a=a|0;b=S(b);c=c|0;var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0);d=P[a+36>>2];e=P[a+32>>2];f=P[a+28>>2];g=S(ha[L[L[a>>2]+48>>2]](a));h=S(ha[L[L[a>>2]+48>>2]](a));i=S(ha[L[L[a>>2]+48>>2]](a));L[c+12>>2]=0;b=S(b/S(12));f=S(f+g);f=S(f+f);f=S(f*f);e=S(e+h);e=S(e+e);e=S(e*e);P[c+8>>2]=b*S(f+e);d=S(d+i);d=S(d+d);d=S(d*d);P[c+4>>2]=b*S(f+d);P[c>>2]=b*S(e+d)}function ap(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=S(d);e=e|0;f=f|0;var g=0;g=fa+-64|0;fa=g;L[g+60>>2]=a;L[g+56>>2]=b;L[g+52>>2]=c;P[g+48>>2]=d;L[g+44>>2]=e;L[g+40>>2]=f;a=L[g+60>>2];L[g+36>>2]=27558;b=L[g+36>>2];c=L[g+56>>2];e=L[g+52>>2];d=P[g+48>>2];f=L[g+44>>2];L[g+28>>2]=L[g+40>>2];L[g+24>>2]=f;Q[g+16>>3]=d;L[g+8>>2]=e;L[g+4>>2]=c;L[g>>2]=a;$(b|0,1281,g|0)|0;fa=g- -64|0}function Tn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-32|0;fa=d;L[d+28>>2]=a;L[d+24>>2]=b;L[d+20>>2]=c;L[d+16>>2]=L[L[d+24>>2]>>2];L[d+12>>2]=L[L[d+20>>2]>>2];L[d+8>>2]=Md(L[d+16>>2]);L[d+4>>2]=Md(L[d+12>>2]);if(L[d+8>>2]){a=L[d+8>>2];ha[L[L[a>>2]+28>>2]](a,L[d+20>>2],L[d+24>>2])}if(L[d+4>>2]){a=L[d+4>>2];ha[L[L[a>>2]+28>>2]](a,L[d+24>>2],L[d+20>>2])}fa=d+32|0;return 0}function nA(a){a=a|0;var b=0;L[a>>2]=20608;b=L[a+80>>2];if(!(b?!b|!M[a+84|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+80>>2]=0;J[a+84|0]=1;L[a+72>>2]=0;L[a+76>>2]=0;b=L[a+60>>2];if(!(b?!b|!M[a- -64|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+60>>2]=0;J[a+64|0]=1;L[a+52>>2]=0;L[a+56>>2]=0;b=L[a+40>>2];if(!(b?!b|!M[a+44|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}ra(a)}function mk(a,b){a=a|0;b=b|0;var c=0,d=0,e=S(0);c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;b=L[a+12>>2];L[a+4>>2]=0;while(1){if(L[a+4>>2]<3){d=fa-16|0;L[d+12>>2]=L[a+8>>2];e=pe(P[L[d+12>>2]+(L[a+4>>2]<<2)>>2]);P[((b+868|0)+(L[a+4>>2]<<6)|0)+4>>2]=e;L[a+4>>2]=L[a+4>>2]+1;continue}break}fa=a+16|0;fa=c+16|0}function xc(a){var b=0,c=0,d=0,e=0;d=+ca();b=d/1e3;a:{if(T(b)<0x8000000000000000){e=~~b>>>0;c=T(b)>=1?~~(b>0?V(X(b*2.3283064365386963e-10),4294967295):Y((b-+(~~b>>>0>>>0))*2.3283064365386963e-10))>>>0:0;break a}c=-2147483648}L[a>>2]=e;L[a+4>>2]=c;b=(d-(+(mI(e,c,1e3,0)>>>0)+ +(ga|0)*4294967296))*1e3;b:{if(T(b)<2147483648){c=~~b;break b}c=-2147483648}L[a+8>>2]=c}function _b(a,b){var c=0,d=S(0),e=S(0),f=S(0);c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];d=P[a>>2];b=fa-16|0;L[b+12>>2]=L[c+8>>2];e=P[L[b+12>>2]>>2];f=P[a+4>>2];b=fa-16|0;L[b+12>>2]=L[c+8>>2];d=S(S(d*e)+S(f*P[L[b+12>>2]+4>>2]));e=P[a+8>>2];b=fa-16|0;L[b+12>>2]=L[c+8>>2];fa=c+16|0;return S(S(P[a+12>>2]*P[L[c+8>>2]+12>>2])+S(S(e*P[L[b+12>>2]+8>>2])+d))}function km(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=S(0),f=S(0),g=S(0),h=S(0),i=S(0),j=S(0);h=S(ha[L[L[a>>2]+48>>2]](a));i=S(ha[L[L[a>>2]+48>>2]](a));j=S(ha[L[L[a>>2]+48>>2]](a));e=P[b+52>>2];f=P[b+56>>2];g=P[b+48>>2];L[c+12>>2]=0;P[c+8>>2]=f-j;P[c+4>>2]=e-i;P[c>>2]=g-h;e=P[b+52>>2];f=P[b+56>>2];g=P[b+48>>2];L[d+12>>2]=0;P[d+8>>2]=j+f;P[d+4>>2]=i+e;P[d>>2]=h+g}function Ey(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(Wa(a,L[b+8>>2],e)){if(!(L[b+28>>2]==1|L[b+4>>2]!=(c|0))){L[b+28>>2]=d}return}a:{if(!Wa(a,L[b>>2],e)){break a}if(!(L[b+16>>2]!=(c|0)&L[b+20>>2]!=(c|0))){if((d|0)!=1){break a}L[b+32>>2]=1;return}L[b+20>>2]=c;L[b+32>>2]=d;L[b+40>>2]=L[b+40>>2]+1;if(!(L[b+36>>2]!=1|L[b+24>>2]!=2)){J[b+54|0]=1}L[b+44>>2]=4}}function hG(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;a:{e=L[a+268>>2];if((e|0)<=0){break a}h=d?d:L[a+188>>2];i=L[b>>2];f=L[a+276>>2];d=0;while(1){g=(d<<2)+f|0;if(L[g>>2]!=(i|0)){d=d+1|0;if((e|0)!=(d|0)){continue}break a}break}if((d|0)>=(e|0)){break a}d=e-1|0;L[g>>2]=L[(d<<2)+f>>2];L[a+268>>2]=d;a=L[a+284>>2];ha[L[L[a>>2]+12>>2]](a,h,b,c)|0}}function JA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=L[b+4>>2];L[a+248>>2]=L[b>>2];L[a+252>>2]=c;c=L[b+12>>2];L[a+256>>2]=L[b+8>>2];L[a+260>>2]=c;c=L[a+232>>2];if((c|0)>0){while(1){a:{b:{e=L[L[a+240>>2]+(d<<2)>>2];switch(L[e+216>>2]-2|0){case 0:case 3:break a;default:break b}}if(J[e+504|0]&1){break a}te(e,b);c=L[a+232>>2]}d=d+1|0;if((c|0)>(d|0)){continue}break}}}function pk(a,b){a=a|0;b=b|0;var c=0,d=0,e=S(0);c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;b=L[a+12>>2];L[a+4>>2]=0;while(1){if(L[a+4>>2]<3){d=fa-16|0;L[d+12>>2]=L[a+8>>2];e=pe(P[L[d+12>>2]+(L[a+4>>2]<<2)>>2]);P[(b+868|0)+(L[a+4>>2]<<6)>>2]=e;L[a+4>>2]=L[a+4>>2]+1;continue}break}fa=a+16|0;fa=c+16|0}function jI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-48|0;fa=e;L[e+44>>2]=d;L[e+40>>2]=5992;d=L[b+12>>2];L[e+16>>2]=L[b+8>>2];L[e+20>>2]=d;d=L[b+4>>2];L[e+8>>2]=L[b>>2];L[e+12>>2]=d;b=L[c+12>>2];L[e+32>>2]=L[c+8>>2];L[e+36>>2]=b;b=L[c+4>>2];L[e+24>>2]=L[c>>2];L[e+28>>2]=b;b=e+8|0;c=e+40|0;Vb(a+4|0,L[a+4>>2],b,c);a=a- -64|0;Vb(a,L[a>>2],b,c);fa=e+48|0}function xt(a,b,c){a=a|0;b=b|0;c=S(c);var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;P[d+4>>2]=c;b=L[d+8>>2];c=P[d+4>>2];a=fa-16|0;L[a+12>>2]=L[d+12>>2];L[a+8>>2]=b;P[a+4>>2]=c;b=L[a+12>>2];a:{b:{switch(L[a+8>>2]-3|0){case 0:P[b+452>>2]=P[a+4>>2];break a;case 1:P[b+448>>2]=P[a+4>>2];break a;case 2:break b;default:break a}}P[b+444>>2]=P[a+4>>2]}fa=d+16|0}function dj(a,b){var c=0,d=0,e=0,f=0;c=fa-16|0;fa=c;L[c+12>>2]=a;J[c+11|0]=b;a=L[c+12>>2];If(a);L[a>>2]=17684;b=fa-16|0;fa=b;e=a+144|0;L[b+12>>2]=e;f=fa-16|0;d=L[b+12>>2];L[f+12>>2]=d;L[L[f+12>>2]>>2]=5048;L[d>>2]=4916;L[d+4>>2]=0;fa=b+16|0;Mb(a+152|0);Mb(a+172|0);L[a+148>>2]=a;b=fa-16|0;L[b+12>>2]=a+68;L[b+8>>2]=e;L[L[b+12>>2]+72>>2]=L[b+8>>2];fa=c+16|0}function my(a){a=a|0;var b=0,c=0;b=fa-32|0;fa=b;L[b+28>>2]=a;if(!M[29704]){Ka(29688);J[29704]=1}a=fa-16|0;fa=a;L[a+12>>2]=L[b+28>>2];c=L[a+12>>2];P[a+8>>2]=-P[c>>2];P[a+4>>2]=-P[c+4>>2];P[a>>2]=-P[c+8>>2];ie(b+12|0,a+8|0,a+4|0,a,c+12|0);fa=a+16|0;a=L[b+16>>2];L[7422]=L[b+12>>2];L[7423]=a;a=L[b+24>>2];L[7424]=L[b+20>>2];L[7425]=a;fa=b+32|0;return 29688}function KC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{e=L[a+152>>2];f=e;if(!e){break a}if(e&1){f=e-1|0;g=L[L[a+160>>2]+(f<<2)>>2];ha[L[L[g>>2]+144>>2]](g,b,c,d)}if((e|0)==1){break a}while(1){e=L[(L[a+160>>2]+(f<<2)|0)-4>>2];ha[L[L[e>>2]+144>>2]](e,b,c,d);f=f-2|0;e=L[L[a+160>>2]+(f<<2)>>2];ha[L[L[e>>2]+144>>2]](e,b,c,d);if(f){continue}break}}}function bp(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=S(f);var g=0;g=fa-32|0;fa=g;L[g+28>>2]=a;L[g+24>>2]=b;L[g+20>>2]=c;L[g+16>>2]=d;L[g+12>>2]=e;P[g+8>>2]=f;a=L[g+28>>2];ha[L[L[a>>2]+8>>2]](a,L[g+24>>2],L[g+20>>2],L[g+12>>2]);ha[L[L[a>>2]+8>>2]](a,L[g+20>>2],L[g+16>>2],L[g+12>>2]);ha[L[L[a>>2]+8>>2]](a,L[g+16>>2],L[g+24>>2],L[g+12>>2]);fa=g+32|0}function ai(a,b,c,d){var e=0;e=fa-32|0;L[e+28>>2]=a;L[e+24>>2]=b;L[e+20>>2]=c;P[e+16>>2]=d;a=L[e+28>>2];P[e+12>>2]=S(1)-P[e+16>>2];P[a>>2]=S(P[e+12>>2]*P[L[e+24>>2]>>2])+S(P[e+16>>2]*P[L[e+20>>2]>>2]);P[a+4>>2]=S(P[e+12>>2]*P[L[e+24>>2]+4>>2])+S(P[e+16>>2]*P[L[e+20>>2]+4>>2]);P[a+8>>2]=S(P[e+12>>2]*P[L[e+24>>2]+8>>2])+S(P[e+16>>2]*P[L[e+20>>2]+8>>2])}function XD(a,b,c){a=a|0;b=S(b);c=c|0;var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0);d=P[a+76>>2];g=P[a+60>>2];e=P[a+72>>2];h=P[a+56>>2];f=P[a+68>>2];i=P[a+52>>2];L[c+12>>2]=0;b=S(b/S(12));f=S(S(f-i)*S(.5));f=S(f+f);f=S(f*f);e=S(S(e-h)*S(.5));e=S(e+e);e=S(e*e);P[c+8>>2]=b*S(f+e);d=S(S(d-g)*S(.5));d=S(d+d);d=S(d*d);P[c+4>>2]=b*S(f+d);P[c>>2]=b*S(e+d)}function WF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=S(0),i=S(0),j=S(0),k=S(0),l=S(0),m=S(0);if((d|0)>0){while(1){g=f<<4;e=g+b|0;k=P[e>>2];l=P[e+4>>2];m=P[e+8>>2];h=P[a+28>>2];i=P[a+32>>2];j=P[a+36>>2];e=c+g|0;L[e+12>>2]=0;P[e+8>>2]=m>=S(0)?j:S(-j);P[e+4>>2]=l>=S(0)?i:S(-i);P[e>>2]=k>=S(0)?h:S(-h);f=f+1|0;if((f|0)!=(d|0)){continue}break}}}function LC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a:{e=L[a+152>>2];f=e;if(!e){break a}if(e&1){f=e-1|0;g=L[L[a+160>>2]+(f<<2)>>2];ha[L[L[g>>2]+64>>2]](g,b,c,d)}if((e|0)==1){break a}while(1){e=L[(L[a+160>>2]+(f<<2)|0)-4>>2];ha[L[L[e>>2]+64>>2]](e,b,c,d);f=f-2|0;e=L[L[a+160>>2]+(f<<2)>>2];ha[L[L[e>>2]+64>>2]](e,b,c,d);if(f){continue}break}}}function Gm(a,b,c,d,e){var f=0,g=0;while(1){a:{b:{if(N[e>>1]>1]|N[d>>1]>N[b+6>>1]|(N[e+4>>1]>1]|N[d+4>>1]>N[b+10>>1])){break b}if(N[e+2>>1]>1]|N[d+2>>1]>N[b+8>>1]){break b}f=L[b+12>>2];if((f|0)<0){break a}ha[L[L[c>>2]+8>>2]](c,f>>>21|0,f&2097151)}return}f=b+16|0;Gm(a,f,c,d,e);g=f;f=L[b+28>>2];b=(f|0)<0?g-(f<<4)|0:b+32|0;continue}}function nC(a,b){a=a|0;b=S(b);var c=0,d=0,e=0;P[a+12>>2]=b;c=L[a+152>>2];d=c;a:{if(!c){break a}if(c&1){d=c-1|0;e=L[L[a+160>>2]+(d<<2)>>2];ha[L[L[e>>2]+44>>2]](e,b)}if((c|0)==1){break a}while(1){c=L[(L[a+160>>2]+(d<<2)|0)-4>>2];ha[L[L[c>>2]+44>>2]](c,b);d=d-2|0;c=L[L[a+160>>2]+(d<<2)>>2];ha[L[L[c>>2]+44>>2]](c,b);if(d){continue}break}}J[a+48|0]=1}function Zp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=L[c+12>>2];e=L[a+712>>2];if((e|0)>0){f=L[a+720>>2];while(1){a=R(d,104)+f|0;if(P[a+88>>2]>S(0)){P[a+56>>2]=P[b>>2]+P[a+56>>2];P[a+60>>2]=P[b+4>>2]+P[a+60>>2];a=a- -64|0;P[a>>2]=P[b+8>>2]+P[a>>2]}d=d+1|0;if((e|0)!=(d|0)){continue}break}}fa=c+16|0}function Wf(a,b,c,d){J[a+53|0]=1;a:{if(L[a+4>>2]!=(c|0)){break a}J[a+52|0]=1;c=L[a+16>>2];b:{if(!c){L[a+36>>2]=1;L[a+24>>2]=d;L[a+16>>2]=b;if((d|0)!=1){break a}if(L[a+48>>2]==1){break b}break a}if((b|0)==(c|0)){c=L[a+24>>2];if((c|0)==2){L[a+24>>2]=d;c=d}if(L[a+48>>2]!=1){break a}if((c|0)==1){break b}break a}L[a+36>>2]=L[a+36>>2]+1}J[a+54|0]=1}}function Hq(){var a=0,b=0,c=0;c=sa(100);a=fa-32|0;fa=a;L[a+28>>2]=c;b=L[a+28>>2];P[b>>2]=1.2000000476837158;P[b+4>>2]=0;P[b+8>>2]=0;P[b+12>>2]=1e3;P[a+24>>2]=0;P[a+20>>2]=0;P[a+16>>2]=0;la(b+16|0,a+24|0,a+20|0,a+16|0);L[b+32>>2]=0;L[b+36>>2]=0;P[a+12>>2]=0;P[a+8>>2]=-10;P[a+4>>2]=0;la(b+40|0,a+12|0,a+8|0,a+4|0);rf(b+56|0);fa=a+32|0;return c|0}function ke(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;b=L[d+12>>2];h=L[d+4>>2];a=fa-48|0;fa=a;c=L[d+8>>2];e=L[c+192>>2];f=a+32|0;g=a+16|0;ha[L[L[e>>2]+8>>2]](e,c+4|0,f,g);L[a+12>>2]=h;L[a+4>>2]=c;L[a>>2]=8460;L[a+8>>2]=b;b=L[b+68>>2];ha[L[L[b>>2]+28>>2]](b,f,g,a);fa=a+48|0;fa=d+16|0}function rm(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=S(0);i=fa-32|0;fa=i;L[i+28>>2]=a;L[i+24>>2]=b;L[i+20>>2]=c;L[i+16>>2]=d;L[i+12>>2]=e;L[i+8>>2]=f;L[i+4>>2]=g;L[i>>2]=h;a=L[i+28>>2];j=S(ha[L[L[a>>2]+12>>2]](a,L[i+24>>2],L[i+20>>2],L[i+16>>2],L[i+12>>2],L[i+8>>2],L[i+4>>2],L[i>>2]));fa=i+32|0;return S(j)}function hH(a,b){a=a|0;b=b|0;var c=0,d=0,e=S(0),f=0;c=fa-32|0;fa=c;d=L[a+216>>2];e=P[d+4>>2];a:{if(e==S(0)){break a}b=L[b>>2];if(!(ha[L[L[d>>2]+8>>2]](d,L[b+188>>2])|0)){break a}d=L[a+216>>2];f=L[b+192>>2];L[c+24>>2]=-1;L[c+28>>2]=-1;L[c+20>>2]=b+4;L[c+16>>2]=b;L[c+12>>2]=f;L[c+8>>2]=0;Ze(a+68|0,a+132|0,c+8|0,d)}fa=c+32|0;return e!=S(0)|0}function tb(a,b,c){var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=fa-32|0;fa=d;L[d+28>>2]=b;L[d+24>>2]=c;f=L[d+24>>2];b=fa-16|0;c=L[d+28>>2];L[b+12>>2]=c;L[b+8>>2]=0;g=L[b+12>>2];h=L[b+8>>2]<<4;L[b+12>>2]=c;L[b+8>>2]=1;i=L[b+12>>2];j=L[b+8>>2]<<4;L[b+12>>2]=c;L[b+8>>2]=2;e=d+8|0;Vd(e,f,g+h|0,i+j|0,L[b+12>>2]+(L[b+8>>2]<<4)|0);ta(a,e,c+48|0);fa=d+32|0}function me(a,b){a:{if((b|0)>=1024){a=a*898846567431158e293;if(b>>>0<2047){b=b-1023|0;break a}a=a*898846567431158e293;b=((b|0)>=3069?3069:b)-2046|0;break a}if((b|0)>-1023){break a}a=a*2004168360008973e-307;if(b>>>0>4294965304){b=b+969|0;break a}a=a*2004168360008973e-307;b=((b|0)<=-2960?-2960:b)+1938|0}z(0,0);z(1,b+1023<<20);return a*+B()}function yg(a,b,c,d,e){var f=S(0);L[a+32>>2]=c;L[a+28>>2]=b;L[a+24>>2]=d;L[a+20>>2]=e;L[a+4>>2]=0;L[a+8>>2]=1065353216;L[a+12>>2]=0;L[a+16>>2]=0;L[a>>2]=18600;L[a+36>>2]=L[b+4>>2];L[a+40>>2]=L[c+4>>2];P[a+44>>2]=ha[L[L[b>>2]+48>>2]](b);f=S(ha[L[L[c>>2]+48>>2]](c));L[a+72>>2]=1;L[a+76>>2]=1;L[a+60>>2]=-1;J[a+52|0]=0;P[a+48>>2]=f;return a}function xy(a,b,c,d){a=S(a);b=S(b);c=S(c);d=S(d);var e=0,f=0,g=0,h=0;f=fa-16|0;fa=f;P[f+12>>2]=a;P[f+8>>2]=b;P[f+4>>2]=c;P[f>>2]=d;g=oa(16);e=fa-32|0;fa=e;L[e+28>>2]=g;L[e+24>>2]=f+12;L[e+20>>2]=f+8;L[e+16>>2]=f+4;L[e+12>>2]=f;h=L[e+28>>2];la(h,L[e+24>>2],L[e+20>>2],L[e+16>>2]);P[h+12>>2]=P[L[e+12>>2]>>2];fa=e+32|0;fa=f+16|0;return g|0}function OC(a,b,c){a=a|0;b=S(b);c=c|0;var d=0,e=0,f=0;d=fa-16|0;fa=d;L[c>>2]=0;L[c+4>>2]=0;L[c+8>>2]=0;L[c+12>>2]=0;e=L[a+152>>2];if(e){b=S(b/S(e|0));while(1){e=e-1|0;f=L[L[a+160>>2]+(e<<2)>>2];ha[L[L[f>>2]+32>>2]](f,b,d);P[c>>2]=P[d>>2]+P[c>>2];P[c+4>>2]=P[d+4>>2]+P[c+4>>2];P[c+8>>2]=P[d+8>>2]+P[c+8>>2];if(e){continue}break}}fa=d+16|0}function UD(a){a=a|0;var b=0;L[a>>2]=15324;b=L[a+120>>2];if(!(b?!b|!M[a+124|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+120>>2]=0;J[a+124|0]=1;L[a+112>>2]=0;L[a+116>>2]=0;b=L[a+100>>2];if(!(b?!b|!M[a+104|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+100>>2]=0;J[a+104|0]=1;L[a+92>>2]=0;L[a+96>>2]=0;if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function bD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-48|0;fa=e;L[e+12>>2]=b;L[e+8>>2]=17056;b=L[c+12>>2];L[e+24>>2]=L[c+8>>2];L[e+28>>2]=b;b=L[c+4>>2];L[e+16>>2]=L[c>>2];L[e+20>>2]=b;b=L[d+12>>2];L[e+40>>2]=L[d+8>>2];L[e+44>>2]=b;b=L[d+4>>2];L[e+32>>2]=L[d>>2];L[e+36>>2]=b;a=L[a+48>>2];ha[L[L[a>>2]+8>>2]](a,e+8|0,c,d);fa=e+48|0}function Yh(a,b){var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=fa-16|0;a=L[c+12>>2];L[b+12>>2]=a;if(L[L[b+12>>2]+8>>2]>2]){L[c+4>>2]=Vh(a,L[c+8>>2]);b=fa-16|0;L[b+12>>2]=a;kf(a,L[L[b+12>>2]+4>>2],L[c+4>>2]);b=fa-16|0;L[b+12>>2]=a;Db(a,L[L[b+12>>2]+4>>2]);jb(a);J[a+16|0]=1;L[a+12>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2]}fa=c+16|0}function Wh(a,b){var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=fa-16|0;a=L[c+12>>2];L[b+12>>2]=a;if(L[L[b+12>>2]+8>>2]>2]){L[c+4>>2]=Vh(a,L[c+8>>2]);b=fa-16|0;L[b+12>>2]=a;Th(a,L[L[b+12>>2]+4>>2],L[c+4>>2]);b=fa-16|0;L[b+12>>2]=a;Db(a,L[L[b+12>>2]+4>>2]);jb(a);J[a+16|0]=1;L[a+12>>2]=L[c+4>>2];L[a+8>>2]=L[c+8>>2]}fa=c+16|0}function md(a,b,c,d,e,f,g,h,i,j){var k=0;k=fa-48|0;fa=k;L[k+44>>2]=a;L[k+40>>2]=b;L[k+36>>2]=c;L[k+32>>2]=d;L[k+28>>2]=e;L[k+24>>2]=f;L[k+20>>2]=g;L[k+16>>2]=h;L[k+12>>2]=i;L[k+8>>2]=j;a=L[k+44>>2];la(a,L[k+40>>2],L[k+36>>2],L[k+32>>2]);la(a+16|0,L[k+28>>2],L[k+24>>2],L[k+20>>2]);la(a+32|0,L[k+16>>2],L[k+12>>2],L[k+8>>2]);fa=k+48|0}function Zq(a){a=a|0;var b=0,c=0,d=0,e=S(0);b=fa-16|0;fa=b;L[b+12>>2]=a;c=L[b+12>>2];if(L[c+136>>2]>0){while(1){a=L[c+144>>2]+R(d,284)|0;e=P[a+204>>2];L[a+268>>2]=1065353216;L[a+272>>2]=0;P[a+32>>2]=e;L[a+12>>2]=0;P[a+8>>2]=-P[a+60>>2];P[a+4>>2]=-P[a+56>>2];P[a>>2]=-P[a+52>>2];d=d+1|0;if((d|0)>2]){continue}break}}fa=b+16|0}function Nn(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0;g=L[a+108>>2];if(!g){e=N[a+56>>1];if(e){b=1;f=1;while(1){b=L[a+68>>2]+(b<<2)|0;if(J[b|0]&1){ha[L[L[d>>2]+8>>2]](d,L[a+60>>2]+(N[b+2>>1]<<6)|0)|0;e=N[a+56>>1]}f=f+1|0;b=f&65535;if(b>>>0<((e&65535)<<1|1)>>>0){continue}break}}return}ha[L[L[g>>2]+24>>2]](g,b,c,d,e,f)}function hz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;if(!(!b|L[b+236>>2]!=8)){c=L[a+328>>2];a:{if((c|0)<=0){break a}e=L[a+336>>2];while(1){f=(d<<2)+e|0;if(L[f>>2]!=(b|0)){d=d+1|0;if((c|0)!=(d|0)){continue}break a}break}if((c|0)<=(d|0)){break a}c=c-1|0;d=c<<2;L[f>>2]=L[d+e>>2];L[d+L[a+336>>2]>>2]=b;L[a+328>>2]=c}Bd(a,b);return}Sk(a,b)}function Ub(a,b,c){var d=0;d=fa-32|0;fa=d;L[d+28>>2]=b;L[d+24>>2]=c;b=L[d+28>>2];c=L[d+24>>2];P[d+20>>2]=S(P[b+4>>2]*P[c+8>>2])-S(P[b+8>>2]*P[c+4>>2]);P[d+16>>2]=S(P[b+8>>2]*P[L[d+24>>2]>>2])-S(P[b>>2]*P[L[d+24>>2]+8>>2]);P[d+12>>2]=S(P[b>>2]*P[L[d+24>>2]+4>>2])-S(P[b+4>>2]*P[L[d+24>>2]>>2]);la(a,d+20|0,d+16|0,d+12|0);fa=d+32|0}function cp(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=S(i);var j=0;j=fa-48|0;fa=j;L[j+44>>2]=a;L[j+40>>2]=b;L[j+36>>2]=c;L[j+32>>2]=d;L[j+28>>2]=e;L[j+24>>2]=f;L[j+20>>2]=g;L[j+16>>2]=h;P[j+12>>2]=i;a=L[j+44>>2];ha[L[L[a>>2]+28>>2]](a,L[j+40>>2],L[j+36>>2],L[j+32>>2],L[j+16>>2],P[j+12>>2]);fa=j+48|0}function oG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=L[b>>2];a=ha[L[L[a>>2]+56>>2]](a,16)|0;L[a>>2]=8684;L[a+4>>2]=L[b>>2];L[a>>2]=8712;L[a+12>>2]=0;J[a+8|0]=0;L[a>>2]=10180;b=L[a+4>>2];if(ha[L[L[b>>2]+24>>2]](b,L[c+8>>2],L[d+8>>2])|0){b=L[a+4>>2];b=ha[L[L[b>>2]+12>>2]](b,L[c+8>>2],L[d+8>>2])|0;J[a+8|0]=1;L[a+12>>2]=b}return a|0}function fI(a,b){a=a|0;b=b|0;if(L[a+16>>2]==(0-L[a+76>>2]|0)){Gd(a+4|0);Gd(a- -64|0);L[a+164>>2]=0;L[a+144>>2]=0;J[a+193|0]=0;J[a+194|0]=1;L[a+156>>2]=10;L[a+160>>2]=1;L[a+148>>2]=1;L[a+152>>2]=0;L[a+124>>2]=0;L[a+128>>2]=0;L[a+132>>2]=0;L[a+168>>2]=0;L[a+172>>2]=0;L[a+176>>2]=0;L[a+180>>2]=0;L[a+184>>2]=0;L[a+188>>2]=0}}function $j(a){var b=0;if(L[a+12>>2]){L[a+4>>2]=0;b=L[a+20>>2];if(!(b?!b|!M[a+24|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+20>>2]=0;J[a+24|0]=1;L[a+12>>2]=0;L[a+16>>2]=0}if(L[a+40>>2]){L[a+32>>2]=0;b=L[a+48>>2];if(!(b?!b|!M[a+52|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+48>>2]=0;J[a+52|0]=1;L[a+40>>2]=0;L[a+44>>2]=0}}function mz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;a=M[a+16|0];d=a?b:c;a=L[(a?c:b)+8>>2];c=L[a+268>>2];a:{b:{if((c|0)<=0){break b}e=L[d+8>>2];f=L[a+276>>2];b=0;while(1){if(L[(b<<2)+f>>2]!=(e|0)){b=b+1|0;if((c|0)!=(b|0)){continue}break b}break}if((b|0)!=(c|0)){break a}}b=L[a+284>>2];ha[L[L[b>>2]+36>>2]](b,a,d)}}function VG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;c=L[b>>2];c=ha[L[L[c>>2]+56>>2]](c,36)|0;e=L[b+4>>2];f=L[a+12>>2];d=L[a+8>>2];g=L[a+16>>2];a=L[a+20>>2];L[c>>2]=8684;L[c+4>>2]=L[b>>2];L[c>>2]=8712;L[c+32>>2]=a;L[c+28>>2]=g;J[c+24|0]=0;L[c+20>>2]=e;J[c+16|0]=0;L[c+12>>2]=d;L[c+8>>2]=f;L[c>>2]=8836;return c|0}function lC(a){a=a|0;var b=0,c=0,d=0;b=L[a+152>>2];c=b;a:{if(!b){break a}if(b&1){c=b-1|0;d=L[L[a+160>>2]+(c<<2)>>2];ha[L[L[d>>2]+72>>2]](d)}if((b|0)==1){break a}while(1){b=L[(L[a+160>>2]+(c<<2)|0)-4>>2];ha[L[L[b>>2]+72>>2]](b);c=c-2|0;b=L[L[a+160>>2]+(c<<2)>>2];ha[L[L[b>>2]+72>>2]](b);if(c){continue}break}}J[a+48|0]=1}function AA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=L[a+212>>2];a:{if((c|0)<=0){break a}e=L[a+220>>2];while(1){f=(d<<2)+e|0;if(L[f>>2]!=(b|0)){d=d+1|0;if((c|0)!=(d|0)){continue}break a}break}if((c|0)<=(d|0)){break a}c=c-1|0;d=c<<2;L[f>>2]=L[d+e>>2];L[d+L[a+220>>2]>>2]=b;L[a+212>>2]=c}Ek(L[b+28>>2],b);Ek(L[b+32>>2],b)}function pG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=L[b>>2];e=ha[L[L[e>>2]+56>>2]](e,20)|0;f=L[b+4>>2];a=M[a+4|0];L[e>>2]=8684;L[e+4>>2]=L[b>>2];L[e>>2]=8712;J[e+16|0]=a;L[e+12>>2]=f;J[e+8|0]=0;L[e>>2]=11720;if(!f){a=L[e+4>>2];a=ha[L[L[a>>2]+12>>2]](a,L[c+8>>2],L[d+8>>2])|0;J[e+8|0]=1;L[e+12>>2]=a}return e|0}function lu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;b=L[d+8>>2];c=L[d+4>>2];a=fa-48|0;fa=a;L[a+44>>2]=L[d+12>>2];L[a+40>>2]=b;L[a+36>>2]=c;b=L[a+44>>2];Vi(b,L[a+40>>2]);c=L[a+36>>2];e=a+4|0;Kb(e,L[a+40>>2],b+348|0);f=a+20|0;Ub(f,c,e);Wi(b,f);fa=a+48|0;fa=d+16|0}function bo(a,b){a=a|0;b=S(b);var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;a=L[c+12>>2];P[a+12>>2]=P[c+8>>2];L[c+4>>2]=ha[L[L[a>>2]+88>>2]](a);while(1){d=L[c+4>>2];L[c+4>>2]=d-1;if(d){L[c>>2]=ha[L[L[a>>2]+124>>2]](a,L[c+4>>2]);d=L[c>>2];ha[L[L[d>>2]+44>>2]](d,P[c+8>>2]);continue}break}J[a+48|0]=1;fa=c+16|0}function ay(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;if(!M[29724]){L[(fa-16|0)+12>>2]=29708;J[29724]=1}b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;a=L[a+12>>2]+(L[a+8>>2]<<4)|0;b=L[a+4>>2];L[7427]=L[a>>2];L[7428]=b;b=L[a+12>>2];L[7429]=L[a+8>>2];L[7430]=b;fa=c+16|0;return 29708}function rz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=(b|0)!=32;if(!(d|(c|0)!=32)){return L[a+92>>2]}a:{b:{c:{if(!d){if((c|0)>19){break c}return L[a+96>>2]}if((c|0)!=32|(b|0)>19){break b}return L[a+100>>2]}if(c-21>>>0>8){break a}return L[a+104>>2]}if((c|0)!=32|b-21>>>0>8){break a}return L[a+108>>2]}return Vm(a,b,c)|0}function vf(a,b,c,d){var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;J[e+3|0]=d;b=L[e+8>>2];c=L[e+4>>2];d=J[e+3|0]&1;a=fa-16|0;L[a+12>>2]=L[e+12>>2];L[a+8>>2]=b;L[a+4>>2]=c;J[a+3|0]=d;b=L[a+12>>2];a:{if(J[a+3|0]&1){L[b+84>>2]=L[a+8>>2];break a}L[b+80>>2]=L[a+8>>2]}L[b+88>>2]=L[a+4>>2];fa=e+16|0}function VD(a){a=a|0;var b=0;L[a>>2]=15324;b=L[a+120>>2];if(!(b?!b|!M[a+124|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+120>>2]=0;J[a+124|0]=1;L[a+112>>2]=0;L[a+116>>2]=0;b=L[a+100>>2];if(!(b?!b|!M[a+104|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+100>>2]=0;J[a+104|0]=1;L[a+92>>2]=0;L[a+96>>2]=0;return a|0}function gt(a,b,c,d){a=a|0;b=b|0;c=S(c);d=S(d);var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;J[e+11|0]=b;P[e+4>>2]=c;P[e>>2]=d;b=J[e+11|0]&1;c=P[e+4>>2];d=P[e>>2];a=fa-16|0;L[a+12>>2]=L[e+12>>2];J[a+11|0]=b;P[a+4>>2]=c;P[a>>2]=d;b=L[a+12>>2];J[b+737|0]=J[a+11|0]&1;P[b+680>>2]=P[a+4>>2];P[b+684>>2]=P[a>>2];fa=e+16|0}function $E(a,b){a=a|0;b=b|0;var c=S(0),d=0,e=0,f=S(0);e=L[a+68>>2]<<2;c=P[e+b>>2];d=e;e=a+12|0;f=S(P[a+60>>2]*S(c/P[d+e>>2]));P[a+60>>2]=f;d=L[a+64>>2]<<2;c=S(P[d+b>>2]/P[e+d>>2]);d=L[a+72>>2]<<2;c=S(P[a+56>>2]*S(S(c+S(P[d+b>>2]/P[e+d>>2]))*S(.5)));P[a+56>>2]=c;P[a+52>>2]=c/S(_(S(S(c*c)+S(f*f))));Ue(a,b)}function Rv(a){a=a|0;var b=0,c=0,d=0;b=fa-16|0;fa=b;L[b+12>>2]=a;c=fa-16|0;fa=c;L[c+12>>2]=L[b+12>>2];a=L[c+12>>2];a:{if(L[a+32>>2]>0){L[a+32>>2]=L[a+32>>2]+1;break a}d=L[a+8>>2];ha[L[L[d>>2]+16>>2]](d,a+36|0,a+40|0,a+44|0,a+48|0,a+52|0,a+56|0,a+60|0,a- -64|0,L[a+28>>2]);L[a+32>>2]=1}fa=c+16|0;fa=b+16|0}function gn(a,b,c,d,e){var f=0;L[a>>2]=8684;L[a+4>>2]=L[b>>2];L[a>>2]=8712;J[a+8|0]=e;L[a>>2]=9440;b=L[b>>2];L[a+64>>2]=0;L[a+60>>2]=b;L[a+12>>2]=9468;f=e?c:d;L[a+20>>2]=f;c=e?d:c;L[a+16>>2]=c;b=ha[L[L[b>>2]+12>>2]](b,L[c+8>>2],L[f+8>>2])|0;L[a+76>>2]=b;c=L[a+60>>2];ha[L[L[c>>2]+20>>2]](c,b);return a}function jy(a,b){a=a|0;b=b|0;var c=0,d=S(0),e=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;b=L[a+12>>2];d=S($b(b)*$b(L[a+8>>2]));e=fa-16|0;P[e+12>>2]=d;P[a+4>>2]=_(P[e+12>>2]);d=uc(S(_b(b,L[a+8>>2])/P[a+4>>2]));fa=a+16|0;fa=c+16|0;return S(d)}function cE(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0);a:{switch(L[a+96>>2]){case 0:return S(P[L[a+92>>2]+(R(L[a+64>>2],c)+b<<2)>>2]);case 5:return S(S(P[a+88>>2]*S(M[L[a+92>>2]+(R(L[a+64>>2],c)+b|0)|0])));case 3:d=S(P[a+88>>2]*S(K[L[a+92>>2]+(R(L[a+64>>2],c)+b<<1)>>1]));break;default:break a}}return S(d)}function Rm(a){a=a|0;var b=0;L[a>>2]=11408;b=L[a+284>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+284>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a>>2]=11364;b=L[a+276>>2];if(!(b?!b|!M[a+280|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+276>>2]=0;J[a+280|0]=1;L[a+268>>2]=0;L[a+272>>2]=0;L[a>>2]=6712;return a|0}function wy(a,b,c){a=a|0;b=b|0;c=S(c);var d=0;d=fa-32|0;fa=d;L[d+28>>2]=a;L[d+24>>2]=b;P[d+20>>2]=c;if(!M[29644]){L[(fa-16|0)+12>>2]=29628;J[29644]=1}wh(d+4|0,L[d+28>>2],L[d+24>>2],P[d+20>>2]);a=L[d+8>>2];L[7407]=L[d+4>>2];L[7408]=a;a=L[d+16>>2];L[7409]=L[d+12>>2];L[7410]=a;fa=d+32|0;return 29628}function Rn(a,b,c){a=a|0;b=b|0;c=S(c);var d=0;d=fa-32|0;fa=d;L[d+28>>2]=a;L[d+24>>2]=b;P[d+20>>2]=c;if(!M[29536]){L[(fa-16|0)+12>>2]=29520;J[29536]=1}wh(d+4|0,L[d+28>>2],L[d+24>>2],P[d+20>>2]);a=L[d+8>>2];L[7380]=L[d+4>>2];L[7381]=a;a=L[d+16>>2];L[7382]=L[d+12>>2];L[7383]=a;fa=d+32|0;return 29520}function GF(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;c=L[a+52>>2];if(c){c=(f=b,g=ha[L[L[c>>2]+12>>2]](c)|0,h=1,e=L[L[b>>2]+16>>2],ha[e](f|0,g|0,h|0)|0);d=L[a+52>>2];h=b,g=c,f=ha[L[L[d>>2]+16>>2]](d,L[c+8>>2],b)|0,i=1213612625,j=L[a+52>>2],e=L[L[b>>2]+20>>2],ha[e](h|0,g|0,f|0,i|0,j|0)}}function jA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=1;a:{if(!(M[b+236|0]&2)|!b){break a}d=L[a+488>>2];if((d|0)<=0){break a}f=L[a+496>>2];c=0;a=0;while(1){e=L[(a<<2)+f>>2];if(L[e+28>>2]==(b|0)|L[e+32>>2]==(b|0)?M[e+20|0]:0){break a}a=a+1|0;c=(d|0)<=(a|0);if((a|0)!=(d|0)){continue}break}}return c|0}function FF(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;c=L[a+56>>2];if(c){c=(f=b,g=ha[L[L[c>>2]+8>>2]](c)|0,h=1,e=L[L[b>>2]+16>>2],ha[e](f|0,g|0,h|0)|0);d=L[a+56>>2];h=b,g=c,f=ha[L[L[d>>2]+12>>2]](d,L[c+8>>2],b)|0,i=1346456916,j=L[a+56>>2],e=L[L[b>>2]+20>>2],ha[e](h|0,g|0,f|0,i|0,j|0)}}function PB(a,b,c,d){a=a|0;b=b|0;c=S(c);d=d|0;a:{switch(b-1|0){case 0:case 1:if(d>>>0<=2){P[a+600>>2]=c;L[a+592>>2]=L[a+592>>2]|2;return}P[a+432>>2]=c;return;case 2:case 3:if(d>>>0<=2){P[a+596>>2]=c;L[a+592>>2]=L[a+592>>2]|1;return}P[a+604>>2]=c;L[a+592>>2]=L[a+592>>2]|4;break;default:break a}}}function kt(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=fa-32|0;fa=h;L[h+28>>2]=a;L[h+24>>2]=b;L[h+20>>2]=c;L[h+16>>2]=d;L[h+12>>2]=e;L[h+8>>2]=f;J[h+7|0]=g;a=oa(764);hl(a,L[h+28>>2],L[h+24>>2],L[h+20>>2],L[h+16>>2],L[h+12>>2],L[h+8>>2],J[h+7|0]&1);fa=h+32|0;return a|0}function cu(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+8>>2];b=fa-16|0;L[b+12>>2]=L[c+12>>2];L[b+8>>2]=a;a=L[b+12>>2];L[a+260>>2]=L[a+260>>2]+1;b=L[b+8>>2];d=L[b+4>>2];L[a+312>>2]=L[b>>2];L[a+316>>2]=d;d=L[b+12>>2];L[a+320>>2]=L[b+8>>2];L[a+324>>2]=d;fa=c+16|0}function bu(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+8>>2];b=fa-16|0;L[b+12>>2]=L[c+12>>2];L[b+8>>2]=a;a=L[b+12>>2];L[a+260>>2]=L[a+260>>2]+1;b=L[b+8>>2];d=L[b+4>>2];L[a+328>>2]=L[b>>2];L[a+332>>2]=d;d=L[b+12>>2];L[a+336>>2]=L[b+8>>2];L[a+340>>2]=d;fa=c+16|0}function Zt(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+8>>2];b=fa-16|0;L[b+12>>2]=L[c+12>>2];L[b+8>>2]=a;a=L[b+12>>2];L[a+260>>2]=L[a+260>>2]+1;b=L[b+8>>2];d=L[b+4>>2];L[a+544>>2]=L[b>>2];L[a+548>>2]=d;d=L[b+12>>2];L[a+552>>2]=L[b+8>>2];L[a+556>>2]=d;fa=c+16|0}function GA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=L[a+232>>2];a:{if((c|0)<=0){break a}e=L[a+240>>2];while(1){f=(d<<2)+e|0;if(L[f>>2]!=(b|0)){d=d+1|0;if((c|0)!=(d|0)){continue}break a}break}if((c|0)<=(d|0)){break a}c=c-1|0;d=c<<2;L[f>>2]=L[d+e>>2];L[d+L[a+240>>2]>>2]=b;L[a+232>>2]=c}Bd(a,b)}function Ek(a,b){var c=0,d=0,e=0,f=0;c=L[a+488>>2];a:{if((c|0)<=0){break a}e=L[a+496>>2];while(1){f=(d<<2)+e|0;if(L[f>>2]!=(b|0)){d=d+1|0;if((d|0)!=(c|0)){continue}break a}break}if((c|0)<=(d|0)){break a}c=c-1|0;d=c<<2;L[f>>2]=L[d+e>>2];L[d+L[a+496>>2]>>2]=b;L[a+488>>2]=c}L[a+256>>2]=(c|0)>0}function DB(a){a=a|0;var b=S(0),c=S(0);b=S(1);c=P[L[a+32>>2]+344>>2];if(c!=S(0)){b=P[L[a+28>>2]+344>>2];b=S(b/S(c+b))}L[a+1296>>2]=0;c=S(S(1)-b);P[a+1292>>2]=S(b*P[a+1120>>2])+S(c*P[a+1184>>2]);P[a+1288>>2]=S(b*P[a+1116>>2])+S(c*P[a+1180>>2]);P[a+1284>>2]=S(b*P[a+1112>>2])+S(c*P[a+1176>>2])}function tE(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0);d=P[b+36>>2];e=P[b+28>>2];f=P[c>>2];g=P[c+4>>2];h=S(_(S(S(f*f)+S(g*g))));a:{if(h!=S(0)){e=S(e/h);i=S(g*e);e=S(f*e);d=P[c+8>>2]>2]>2]=d;P[a>>2]=e;P[a+4>>2]=i}function sc(a,b){var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;b=L[a+12>>2];d=fa-16|0;L[d+12>>2]=L[a+8>>2];L[a+4>>2]=L[L[d+12>>2]+4>>2];d=L[a+4>>2];L[a>>2]=0;Ih(b,d,a);kf(L[a+8>>2],L[a+4>>2],L[b+12>>2]);fa=a+16|0;fa=c+16|0}function sE(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0);d=P[b+32>>2];e=P[b+28>>2];f=P[c>>2];g=P[c+8>>2];h=S(_(S(S(f*f)+S(g*g))));a:{if(h!=S(0)){e=S(e/h);i=S(g*e);e=S(f*e);d=P[c+4>>2]>2]>2]=i;P[a+4>>2]=d;P[a>>2]=e}function Wx(a){a=a|0;var b=0,c=0,d=0;b=fa-32|0;fa=b;L[b+28>>2]=a;if(!M[29744]){Ka(29728);J[29744]=1}a=fa-16|0;fa=a;L[a+12>>2]=L[b+28>>2];d=L[a+12>>2];c=b+12|0;Ka(c);Ma(d,c);fa=a+16|0;a=L[b+16>>2];L[7432]=L[b+12>>2];L[7433]=a;a=L[b+24>>2];L[7434]=L[b+20>>2];L[7435]=a;fa=b+32|0;return 29728}function aj(a,b,c){var d=0;d=fa-32|0;fa=d;L[d+28>>2]=a;L[d+24>>2]=b;L[d+20>>2]=c;a=L[d+28>>2];b=d+8|0;Gf(a,L[d+24>>2],b,b+4|0,b+8|0);Lb(a,L[d+8>>2],L[d+20>>2]+56|0);Lb(a,L[d+12>>2],L[d+20>>2]+72|0);Lb(a,L[d+16>>2],L[d+20>>2]+88|0);b=L[d+20>>2];ha[L[L[b>>2]+44>>2]](b,P[a+4>>2]);fa=d+32|0} function Dn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;fc((L[b+60>>2]==2?64:4)+a|0,L[b+48>>2]);d=L[b+52>>2];L[(d?d+56|0:((L[b+60>>2]<<2)+a|0)+124|0)>>2]=L[b+56>>2];d=L[b+56>>2];if(d){L[d+52>>2]=L[b+52>>2]}d=L[a+136>>2];ha[L[L[d>>2]+16>>2]](d,b,c);if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}J[a+194|0]=1}function uE(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0);e=P[b+32>>2];d=P[b+28>>2];f=P[c+4>>2];g=P[c+8>>2];h=S(_(S(S(f*f)+S(g*g))));a:{if(h!=S(0)){e=S(e/h);i=S(g*e);e=S(f*e);d=P[c>>2]>2]>2]=i;P[a>>2]=d;P[a+4>>2]=e}function Vh(a,b){var c=0,d=0;c=fa-16|0;fa=c;L[c+8>>2]=a;L[c+4>>2]=b;b=L[c+8>>2];a:{if(L[c+4>>2]){d=L[c+4>>2];a=fa-16|0;fa=a;L[a+12>>2]=b;L[a+8>>2]=d;L[a+4>>2]=0;b=L[a+8>>2]<<2;L[8513]=L[8513]+1;b=ha[L[6798]](b,16)|0;fa=a+16|0;L[c+12>>2]=b;break a}L[c+12>>2]=0}fa=c+16|0;return L[c+12>>2]}function gf(a,b){var c=0,d=0;c=fa+-64|0;fa=c;L[c+60>>2]=a;L[c+56>>2]=b;b=L[c+60>>2];a=b+56|0;d=c+24|0;La(d,b+72|0,a);b=c+8|0;La(b,a+32|0,a);Ub(c+40|0,d,b);b=L[c+44>>2];a=L[c+56>>2];L[a>>2]=L[c+40>>2];L[a+4>>2]=b;b=L[c+52>>2];L[a+8>>2]=L[c+48>>2];L[a+12>>2]=b;Nd(L[c+56>>2]);fa=c- -64|0}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;a:{c=L[a+280>>2];if((c|0)<=0){break a}e=L[a+288>>2];while(1){f=(d<<2)+e|0;if(L[f>>2]!=(b|0)){d=d+1|0;if((c|0)!=(d|0)){continue}break a}break}if((c|0)<=(d|0)){break a}c=c-1|0;d=c<<2;L[f>>2]=L[d+e>>2];L[d+L[a+288>>2]>>2]=b;L[a+280>>2]=c}}function Un(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-32|0;fa=d;L[d+28>>2]=a;L[d+24>>2]=b;L[d+20>>2]=c;a=L[d+28>>2];b=d+8|0;Gf(a,L[d+24>>2],b,b+4|0,b+8|0);Lb(a,L[d+8>>2],L[d+20>>2]);Lb(a,L[d+12>>2],L[d+20>>2]+16|0);Lb(a,L[d+16>>2],L[d+20>>2]+32|0);P[L[d+20>>2]+64>>2]=P[a+4>>2];fa=d+32|0}function Qv(a){a=a|0;var b=0,c=0,d=0;b=fa-16|0;fa=b;L[b+12>>2]=a;c=fa-16|0;fa=c;L[c+12>>2]=L[b+12>>2];a=L[c+12>>2];a:{if(!L[a+32>>2]){break a}if(L[a+32>>2]>1){L[a+32>>2]=L[a+32>>2]-1;break a}d=L[a+8>>2];ha[L[L[d>>2]+24>>2]](d,L[a+28>>2]);L[a+36>>2]=0;L[a+32>>2]=0}fa=c+16|0;fa=b+16|0}function nc(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=fa-16|0;fa=d;L[d+12>>2]=b;L[d+8>>2]=c;c=fa-16|0;b=L[d+12>>2];L[c+12>>2]=b;c=L[c+12>>2];g=L[d+8>>2]<<2;e=fa-16|0;L[e+12>>2]=b+16;e=L[e+12>>2];h=L[d+8>>2]<<2;f=fa-16|0;L[f+12>>2]=b+32;la(a,c+g|0,e+h|0,L[f+12>>2]+(L[d+8>>2]<<2)|0);fa=d+16|0}function kG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;a:{c=L[a+268>>2];if((c|0)<=0){break a}f=L[b>>2];d=L[a+276>>2];b=0;while(1){e=(b<<2)+d|0;if(L[e>>2]!=(f|0)){b=b+1|0;if((c|0)!=(b|0)){continue}break a}break}if((b|0)>=(c|0)){break a}b=c-1|0;L[e>>2]=L[(b<<2)+d>>2];L[a+268>>2]=b}}function Ul(a){a=a|0;var b=0,c=0;L[a>>2]=17248;b=L[a+12>>2];if(b){c=L[a+4>>2];ha[L[L[c>>2]+16>>2]](c,b);L[a+12>>2]=0}b=L[a+8>>2];if(b){ha[L[L[b>>2]>>2]](b)|0;b=L[a+4>>2];ha[L[L[b>>2]+60>>2]](b,L[a+8>>2]);L[a+8>>2]=0}L[a+24>>2]=-1;L[a+28>>2]=-1;L[a+32>>2]=-1;L[a+36>>2]=-1;return a|0}function OB(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0);a:{b:{switch(b-1|0){case 0:case 1:if(c>>>0<=2){return S(P[a+600>>2])}if(c-3>>>0>2){break a}return S(P[a+432>>2]);case 2:case 3:break b;default:break a}}if(c>>>0<=2){return S(P[a+596>>2])}if(c-3>>>0>2){break a}d=P[a+604>>2]}return S(d)}function te(a,b){var c=S(0),d=0,e=S(0),f=S(0),g=S(0);c=P[a+344>>2];if(c!=S(0)){e=P[b>>2];f=P[b+4>>2];g=P[b+8>>2];L[a+376>>2]=0;c=S(S(1)/c);P[a+372>>2]=g*c;P[a+368>>2]=c*f;P[a+364>>2]=c*e}d=L[b+4>>2];L[a+380>>2]=L[b>>2];L[a+384>>2]=d;d=L[b+12>>2];L[a+388>>2]=L[b+8>>2];L[a+392>>2]=d}function mu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-48|0;fa=a;L[a+44>>2]=L[c+12>>2];L[a+40>>2]=b;d=fa-16|0;b=L[a+44>>2];L[d+12>>2]=b+4;e=a+8|0;ua(e,L[d+12>>2],L[a+40>>2]);d=a+24|0;Kb(d,e,b+544|0);hb(b+428|0,d);fa=a+48|0;fa=c+16|0}function ju(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-48|0;fa=a;L[a+44>>2]=L[c+12>>2];L[a+40>>2]=b;d=fa-16|0;b=L[a+44>>2];L[d+12>>2]=b+4;e=a+8|0;ua(e,L[d+12>>2],L[a+40>>2]);d=a+24|0;Kb(d,e,b+348|0);hb(b+412|0,d);fa=a+48|0;fa=c+16|0}function Yp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;b=L[d+8>>2];a=L[L[d+12>>2]+720>>2]+R(L[d+4>>2],104)|0;if(P[a+88>>2]>S(0)){P[a+56>>2]=P[b>>2]+P[a+56>>2];P[a+60>>2]=P[b+4>>2]+P[a+60>>2];a=a- -64|0;P[a>>2]=P[b+8>>2]+P[a>>2]}fa=d+16|0}function vF(a,b,c){a=a|0;b=b|0;c=c|0;db(a,b,c);P[b+28>>2]=P[a+28>>2];P[b+32>>2]=P[a+32>>2];P[b+36>>2]=P[a+36>>2];P[b+40>>2]=P[a+40>>2];P[b+12>>2]=P[a+12>>2];P[b+16>>2]=P[a+16>>2];P[b+20>>2]=P[a+20>>2];P[b+24>>2]=P[a+24>>2];P[b+44>>2]=P[a+44>>2];L[b+52>>2]=L[a+52>>2];return 4019}function nE(a,b,c){a=a|0;b=b|0;c=c|0;db(a,b,c);P[b+28>>2]=P[a+28>>2];P[b+32>>2]=P[a+32>>2];P[b+36>>2]=P[a+36>>2];P[b+40>>2]=P[a+40>>2];P[b+12>>2]=P[a+12>>2];P[b+16>>2]=P[a+16>>2];P[b+20>>2]=P[a+20>>2];P[b+24>>2]=P[a+24>>2];P[b+44>>2]=P[a+44>>2];L[b+52>>2]=L[a+52>>2];return 3821}function WE(a,b,c){a=a|0;b=b|0;c=c|0;db(a,b,c);P[b+28>>2]=P[a+28>>2];P[b+32>>2]=P[a+32>>2];P[b+36>>2]=P[a+36>>2];P[b+40>>2]=P[a+40>>2];P[b+12>>2]=P[a+12>>2];P[b+16>>2]=P[a+16>>2];P[b+20>>2]=P[a+20>>2];P[b+24>>2]=P[a+24>>2];P[b+44>>2]=P[a+44>>2];L[b+52>>2]=L[a+68>>2];return 3980}function Hp(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[c+12>>2]+288;L[a+8>>2]=b;b=L[a+12>>2];qa(b,L[a+8>>2],104);sc(b+104|0,L[a+8>>2]+104|0);sc(b+124|0,L[a+8>>2]+124|0);sc(b+144|0,L[a+8>>2]+144|0);fa=a+16|0;fa=c+16|0}function zw(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;d=L[a+8>>2];b=fa-16|0;L[b+12>>2]=L[a+12>>2]+12;L[b+8>>2]=d;fa=a+16|0;fa=c+16|0;return L[(L[L[b+12>>2]+12>>2]+R(L[b+8>>2],80)|0)+64>>2]}function kC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=S(d);var e=0;if(P[a+36>>2]>d){J[a+40|0]=1;e=L[b+4>>2];L[a+4>>2]=L[b>>2];L[a+8>>2]=e;e=L[b+12>>2];L[a+12>>2]=L[b+8>>2];L[a+16>>2]=e;b=L[c+4>>2];L[a+20>>2]=L[c>>2];L[a+24>>2]=b;b=L[c+12>>2];L[a+28>>2]=L[c+8>>2];L[a+32>>2]=b;P[a+36>>2]=d}}function ln(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+8>>2];b=fa-16|0;L[b+12>>2]=L[c+12>>2];L[b+8>>2]=a;a=L[b+12>>2];P[a>>2]=P[a>>2]-P[L[b+8>>2]>>2];P[a+4>>2]=P[a+4>>2]-P[L[b+8>>2]+4>>2];P[a+8>>2]=P[a+8>>2]-P[L[b+8>>2]+8>>2];fa=c+16|0;return a|0}function Wa(a,b,c){var d=0;if(!c){return L[a+4>>2]==L[b+4>>2]}if((a|0)==(b|0)){return 1}d=L[a+4>>2];a=M[d|0];c=L[b+4>>2];b=M[c|0];a:{if(!a|(b|0)!=(a|0)){break a}while(1){b=M[c+1|0];a=M[d+1|0];if(!a){break a}c=c+1|0;d=d+1|0;if((a|0)==(b|0)){continue}break}}return(a|0)==(b|0)}function Dt(a){a=a|0;var b=0,c=0,d=0,e=0;c=fa-16|0;fa=c;L[c+12>>2]=a;a=L[c+12>>2];vg(a);P[a+1316>>2]=P[a+1256>>2];d=a+1260|0;e=L[d+4>>2];b=a+1320|0;L[b>>2]=L[d>>2];L[b+4>>2]=e;P[a+1328>>2]=P[a+1192>>2];b=a+1332|0;a=a+1196|0;d=L[a+4>>2];L[b>>2]=L[a>>2];L[b+4>>2]=d;fa=c+16|0}function gp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-48|0;fa=e;L[e+44>>2]=a;L[e+40>>2]=b;L[e+36>>2]=c;L[e+32>>2]=d;a=L[e+44>>2];L[e+28>>2]=27338;b=L[e+28>>2];c=L[e+40>>2];d=L[e+36>>2];L[e+12>>2]=L[e+32>>2];L[e+8>>2]=d;L[e+4>>2]=c;L[e>>2]=a;$(b|0,1276,e|0)|0;fa=e+48|0}function PF(a,b,c){a=a|0;b=b|0;c=S(c);var d=S(0),e=S(0),f=0;d=P[b>>2];e=P[a+28>>2];a:{if(!(d<=S(e+c))|!(d>=S(S(-e)-c))){break a}d=P[b+4>>2];e=P[a+32>>2];if(!(d<=S(e+c))|!(d>=S(S(-e)-c))){break a}d=P[b+8>>2];e=P[a+36>>2];if(!(d<=S(e+c))){break a}f=d>=S(S(-e)-c)}return f|0}function va(){var a=0,b=0,c=0;c=fa-16|0;fa=c;a=L[6803];b=L[a+16>>2]-1|0;L[a+16>>2]=b;if(!(!L[a+4>>2]|b)){xc(c);b=L[8515];P[a+8>>2]=P[a+8>>2]+S(S(L[c+8>>2]+R(L[c>>2]-L[b>>2]|0,1e6)-(L[b+8>>2]+L[a+12>>2])>>>0)/S(1e3));b=L[a+16>>2]}if(!b){L[6803]=L[L[6803]+20>>2]}fa=c+16|0}function to(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=fa-32|0;fa=d;L[d+28>>2]=b;L[d+24>>2]=c;c=L[d+28>>2];b=c+56|0;e=d+8|0;Vd(e,L[d+24>>2],c+56|0,b+16|0,b+32|0);b=b+(Rh(e)<<4)|0;c=L[b+4>>2];L[a>>2]=L[b>>2];L[a+4>>2]=c;c=L[b+12>>2];L[a+8>>2]=L[b+8>>2];L[a+12>>2]=c;fa=d+32|0}function Tt(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-32|0;fa=a;L[a+28>>2]=L[b+12>>2];c=L[a+28>>2];P[a+24>>2]=0;P[a+20>>2]=0;P[a+16>>2]=0;la(c+412|0,a+24|0,a+20|0,a+16|0);P[a+12>>2]=0;P[a+8>>2]=0;P[a+4>>2]=0;la(c+428|0,a+12|0,a+8|0,a+4|0);fa=a+32|0;fa=b+16|0}function Ch(a,b,c){var d=0;d=fa-32|0;fa=d;L[d+28>>2]=a;L[d+24>>2]=0;L[d+20>>2]=b;L[d+16>>2]=c;a=L[d+28>>2];L[d+12>>2]=L[d+24>>2];while(1){if(L[d+12>>2]>2]){b=R(L[d+12>>2],104);qa(b+L[d+16>>2]|0,b+L[a+12>>2]|0,104);L[d+12>>2]=L[d+12>>2]+1;continue}break}fa=d+32|0}function qv(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;d=L[a+8>>2];b=fa-16|0;L[b+12>>2]=L[a+12>>2]+148;L[b+8>>2]=d;fa=a+16|0;fa=c+16|0;return L[L[L[b+12>>2]+12>>2]+(L[b+8>>2]<<2)>>2]}function Cj(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;d=L[a+8>>2];b=fa-16|0;L[b+12>>2]=L[a+12>>2]+264;L[b+8>>2]=d;fa=a+16|0;fa=c+16|0;return L[L[L[b+12>>2]+12>>2]+(L[b+8>>2]<<2)>>2]}function zk(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;b=L[a+12>>2];a=L[a+8>>2];d=L[a+4>>2];L[b+680>>2]=L[a>>2];L[b+684>>2]=d;d=L[a+12>>2];L[b+688>>2]=L[a+8>>2];L[b+692>>2]=d;fa=c+16|0}function xg(a,b,c,d){var e=0;L[a>>2]=18932;e=L[b+4>>2];L[a+4>>2]=L[b>>2];L[a+8>>2]=e;e=L[b+12>>2];L[a+12>>2]=L[b+8>>2];L[a+16>>2]=e;b=L[c+4>>2];L[a+20>>2]=L[c>>2];L[a+24>>2]=b;b=L[c+12>>2];L[a+28>>2]=L[c+8>>2];L[a+32>>2]=b;L[a+40>>2]=1065353216;L[a+36>>2]=d;return a}function rk(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;b=L[a+12>>2];a=L[a+8>>2];d=L[a+4>>2];L[b+696>>2]=L[a>>2];L[b+700>>2]=d;d=L[a+12>>2];L[b+704>>2]=L[a+8>>2];L[b+708>>2]=d;fa=c+16|0}function Nt(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;b=L[a+12>>2];a=L[a+8>>2];d=L[a+4>>2];L[b+300>>2]=L[a>>2];L[b+304>>2]=d;d=L[a+12>>2];L[b+308>>2]=L[a+8>>2];L[b+312>>2]=d;fa=c+16|0}function Mt(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;b=L[a+12>>2];a=L[a+8>>2];d=L[a+4>>2];L[b+316>>2]=L[a>>2];L[b+320>>2]=d;d=L[a+12>>2];L[b+324>>2]=L[a+8>>2];L[b+328>>2]=d;fa=c+16|0}function rB(a,b,c,d){a=a|0;b=b|0;c=S(c);d=d|0;a:{b:{switch(d+1|0){case 0:case 6:break b;default:break a}}c:{d:{switch(b-2|0){case 0:d=a+760|0;b=2;break c;case 2:d=a+756|0;b=1;break c;case 1:break d;default:break a}}d=a+752|0;b=4}P[d>>2]=c;L[a+748>>2]=b|L[a+748>>2]}}function Uw(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;b=fa-16|0;fa=b;L[b+12>>2]=a;e=L[b+12>>2];if(e){a=fa-16|0;fa=a;L[a+12>>2]=e;c=fa-16|0;fa=c;L[c+12>>2]=L[a+12>>2];f=fa-16|0;d=L[c+12>>2];L[f+12>>2]=d;Hh(d,L[L[f+12>>2]+4>>2]);jb(d);Zd(d);fa=c+16|0;fa=a+16|0;ra(e)}fa=b+16|0}function Gh(a,b,c){var d=0;d=fa-32|0;fa=d;L[d+28>>2]=a;L[d+24>>2]=0;L[d+20>>2]=b;L[d+16>>2]=c;a=L[d+28>>2];L[d+12>>2]=L[d+24>>2];while(1){if(L[d+12>>2]>2]){b=R(L[d+12>>2],36);Eh(b+L[d+16>>2]|0,b+L[a+12>>2]|0);L[d+12>>2]=L[d+12>>2]+1;continue}break}fa=d+32|0}function Dh(a,b,c){var d=0;d=fa-32|0;fa=d;L[d+28>>2]=a;L[d+24>>2]=0;L[d+20>>2]=b;L[d+16>>2]=c;a=L[d+28>>2];L[d+12>>2]=L[d+24>>2];while(1){if(L[d+12>>2]>2]){b=R(L[d+12>>2],96);qf(b+L[d+16>>2]|0,b+L[a+12>>2]|0);L[d+12>>2]=L[d+12>>2]+1;continue}break}fa=d+32|0}function lt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0;g=fa-32|0;fa=g;L[g+28>>2]=a;L[g+24>>2]=b;L[g+20>>2]=c;L[g+16>>2]=d;L[g+12>>2]=e;L[g+8>>2]=f;a=oa(764);hl(a,L[g+28>>2],L[g+24>>2],L[g+20>>2],L[g+16>>2],L[g+12>>2],L[g+8>>2],0);fa=g+32|0;return a|0}function Vu(a,b,c){a=S(a);b=b|0;c=c|0;var d=0,e=0,f=0;d=fa-48|0;fa=d;P[d+44>>2]=a;L[d+40>>2]=b;L[d+36>>2]=c;b=sa(140);a=P[d+44>>2];c=L[d+40>>2];f=L[d+36>>2];P[d+16>>2]=0;P[d+12>>2]=0;P[d+8>>2]=0;e=d+20|0;la(e,d+16|0,d+12|0,d+8|0);Xi(b,a,c,f,e);fa=d+48|0;return b|0}function pd(a,b,c,d,e){var f=S(0);f=S(1);a:{if(b>c){break a}f=S(0);if(b==c){break a}d=S(d/e);if(d=b)|!(S(b-d)>a))){return S(S(b-a)/d)}return aS(0))){break a}if(!(!(a<=c)|!(S(c-d)c?S(0):S(1)}return f}function Hy(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;if(Wa(a,L[b+8>>2],0)){Xf(b,c,d);return}e=L[a+12>>2];f=a+16|0;Oj(f,b,c,d);a=a+24|0;e=(e<<3)+f|0;a:{if(a>>>0>=e>>>0){break a}while(1){Oj(a,b,c,d);if(M[b+54|0]){break a}a=a+8|0;if(e>>>0>a>>>0){continue}break}}}function rb(a,b,c){var d=0,e=0;d=fa-48|0;fa=d;L[d+44>>2]=a;L[d+40>>2]=b;L[d+36>>2]=c;a=L[d+44>>2];if(P[a+344>>2]!=S(0)){Ti(a,L[d+40>>2]);b=fa-16|0;L[b+12>>2]=a+544;if(L[b+12>>2]){b=L[d+36>>2];c=d+4|0;Kb(c,L[d+40>>2],a+348|0);e=d+20|0;Ub(e,b,c);Ui(a,e)}}fa=d+48|0}function qi(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=S(d);e=e|0;f=f|0;var g=0;g=fa-32|0;fa=g;L[g+28>>2]=a;L[g+24>>2]=b;L[g+20>>2]=c;P[g+16>>2]=d;L[g+12>>2]=e;L[g+8>>2]=f;a=L[g+28>>2];ha[L[L[a>>2]+32>>2]](a,L[g+24>>2],L[g+20>>2],P[g+16>>2],L[g+12>>2],L[g+8>>2]);fa=g+32|0}function qG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=L[b>>2];a=ha[L[L[a>>2]+56>>2]](a,16)|0;L[a>>2]=8684;L[a+4>>2]=L[b>>2];L[a>>2]=8712;L[a+12>>2]=0;J[a+8|0]=0;L[a>>2]=11644;b=L[a+4>>2];b=ha[L[L[b>>2]+12>>2]](b,L[c+8>>2],L[d+8>>2])|0;J[a+8|0]=1;L[a+12>>2]=b;return a|0}function JC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;db(a,b,c);d=L[a+144>>2];ha[L[L[d>>2]+56>>2]](d,b+12|0,c)|0;P[b+56>>2]=P[a+12>>2];P[b+40>>2]=P[a+52>>2];P[b+44>>2]=P[a+56>>2];P[b+48>>2]=P[a+60>>2];P[b+52>>2]=P[a- -64>>2];L[b+60>>2]=ha[L[L[a>>2]+80>>2]](a);return 3910}function Zl(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;a=L[a+32>>2]+(j<<5)|0;L[c>>2]=L[a+12>>2];L[b>>2]=L[a+16>>2];L[d>>2]=L[a+28>>2];L[e>>2]=L[a+20>>2];L[h>>2]=L[a>>2];L[f>>2]=L[a+4>>2];L[g>>2]=L[a+8>>2];L[i>>2]=L[a+24>>2]}function wH(a){a=a|0;var b=0,c=0,d=0;wa(2870);b=L[a+8>>2];if((b|0)>0){while(1){d=L[L[a+16>>2]+(c<<2)>>2];a:{b:{if(M[a+76|0]){break b}switch(L[d+216>>2]-2|0){case 0:case 3:break a;default:break b}}rn(a,d);b=L[a+8>>2]}c=c+1|0;if((b|0)>(c|0)){continue}break}}va()}function df(a,b){var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=b;d=fa-16|0;b=L[c+12>>2];P[d+12>>2]=P[b>>2];P[c+8>>2]=T(P[d+12>>2]);d=fa-16|0;P[d+12>>2]=P[b+4>>2];P[c+4>>2]=T(P[d+12>>2]);d=fa-16|0;P[d+12>>2]=P[b+8>>2];P[c>>2]=T(P[d+12>>2]);la(a,c+8|0,c+4|0,c);fa=c+16|0}function Wl(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;b=L[a+12>>2];a=L[a+8>>2];d=L[a+4>>2];L[b+4>>2]=L[a>>2];L[b+8>>2]=d;d=L[a+12>>2];L[b+12>>2]=L[a+8>>2];L[b+16>>2]=d;fa=c+16|0}function hC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=S(d);var e=0;e=L[b+4>>2];L[a+4>>2]=L[b>>2];L[a+8>>2]=e;e=L[b+12>>2];L[a+12>>2]=L[b+8>>2];L[a+16>>2]=e;b=L[c+4>>2];L[a+20>>2]=L[c>>2];L[a+24>>2]=b;b=L[c+12>>2];L[a+28>>2]=L[c+8>>2];L[a+32>>2]=b;J[a+40|0]=1;P[a+36>>2]=d}function pp(a){a=a|0;var b=0;b=fa-32|0;fa=b;L[b+28>>2]=a;if(!M[30020]){L[(fa-16|0)+12>>2]=30004;J[30020]=1}a=L[b+28>>2];ha[L[L[a>>2]+76>>2]](b+12|0,a);a=L[b+16>>2];L[7501]=L[b+12>>2];L[7502]=a;a=L[b+24>>2];L[7503]=L[b+20>>2];L[7504]=a;fa=b+32|0;return 30004}function Oy(a){a=a|0;var b=0;b=fa-32|0;fa=b;L[b+28>>2]=a;if(!M[29624]){L[(fa-16|0)+12>>2]=29608;J[29624]=1}a=L[b+28>>2];ha[L[L[a>>2]+76>>2]](b+12|0,a);a=L[b+16>>2];L[7402]=L[b+12>>2];L[7403]=a;a=L[b+24>>2];L[7404]=L[b+20>>2];L[7405]=a;fa=b+32|0;return 29608}function Gd(a){var b=0;b=L[a>>2];if(b){Hd(a,b)}b=L[a+4>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+4>>2]=0;L[a+8>>2]=-1;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+16>>2]=0;L[a+24>>2]=0;L[a+28>>2]=0}function vD(a,b,c){a=a|0;b=b|0;c=c|0;db(a,b,c);P[b+12>>2]=P[a+68>>2];P[b+16>>2]=P[a+72>>2];P[b+20>>2]=P[a+76>>2];P[b+24>>2]=P[a+80>>2];P[b+28>>2]=P[a+48>>2];P[b+32>>2]=P[a+52>>2];P[b+36>>2]=P[a+56>>2];P[b+40>>2]=P[a+60>>2];P[b+44>>2]=P[a+64>>2];return 3996}function uH(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;wa(2986);ha[L[L[a>>2]+8>>2]](a);ha[L[L[a>>2]+12>>2]](a);b=L[a+24>>2];wa(2597);if(b){c=L[a+68>>2];e=b,f=ha[L[L[c>>2]+36>>2]](c)|0,g=a+28|0,h=L[a+24>>2],d=L[L[b>>2]+32>>2],ha[d](e|0,f|0,g|0,h|0)}va();va()}function lo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;a=L[e+12>>2];gf(a,L[e+4>>2]);c=L[a+60>>2];b=L[e>>2];L[b>>2]=L[a+56>>2];L[b+4>>2]=c;c=L[a+68>>2];L[b+8>>2]=L[a+64>>2];L[b+12>>2]=c;fa=e+16|0}function vm(a){a=a|0;var b=0;L[a>>2]=13272;b=L[a+64>>2];if(b){gc(b);b=L[a+64>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}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;return a|0}function Lp(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=fa-16|0;fa=a;L[a+8>>2]=L[c+8>>2];b=fa-16|0;L[b+12>>2]=L[a+8>>2];a:{if(L[L[b+12>>2]+236>>2]==8){L[a+12>>2]=L[a+8>>2];break a}L[a+12>>2]=0}fa=a+16|0;fa=c+16|0;return L[a+12>>2]}function $t(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;b=L[a+12>>2];L[b+480>>2]=L[a+8>>2];if(L[b+480>>2]){d=L[a+8>>2];ha[L[L[d>>2]+8>>2]](d,b+4|0)}fa=a+16|0;fa=c+16|0}function kf(a,b,c){var d=0;d=fa-32|0;L[d+28>>2]=a;L[d+24>>2]=0;L[d+20>>2]=b;L[d+16>>2]=c;a=L[d+28>>2];L[d+12>>2]=L[d+24>>2];while(1){if(L[d+12>>2]>2]){b=L[d+12>>2]<<2;L[b+L[d+16>>2]>>2]=L[b+L[a+12>>2]>>2];L[d+12>>2]=L[d+12>>2]+1;continue}break}}function Yt(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=fa-16|0;fa=a;L[a+8>>2]=L[c+8>>2];b=fa-16|0;L[b+12>>2]=L[a+8>>2];a:{if(L[L[b+12>>2]+236>>2]&2){L[a+12>>2]=L[a+8>>2];break a}L[a+12>>2]=0}fa=a+16|0;fa=c+16|0;return L[a+12>>2]}function Th(a,b,c){var d=0;d=fa-32|0;L[d+28>>2]=a;L[d+24>>2]=0;L[d+20>>2]=b;L[d+16>>2]=c;a=L[d+28>>2];L[d+12>>2]=L[d+24>>2];while(1){if(L[d+12>>2]>2]){b=L[d+12>>2]<<2;P[b+L[d+16>>2]>>2]=P[b+L[a+12>>2]>>2];L[d+12>>2]=L[d+12>>2]+1;continue}break}}function Ds(a){a=a|0;var b=0,c=0,d=0,e=0;c=fa-16|0;fa=c;L[c+12>>2]=a;d=sa(8);b=L[c+12>>2];a=fa-16|0;fa=a;L[a+12>>2]=d;L[a+8>>2]=b;e=fa-16|0;b=L[a+12>>2];L[e+12>>2]=b;L[L[e+12>>2]>>2]=5176;L[b>>2]=20900;L[b+4>>2]=L[a+8>>2];fa=a+16|0;fa=c+16|0;return d|0}function pF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=(e=b,f=ha[L[L[a>>2]+52>>2]](a)|0,g=1,d=L[L[b>>2]+16>>2],ha[d](e|0,f|0,g|0)|0);g=b,f=c,e=ha[L[L[a>>2]+56>>2]](a,L[c+8>>2],b)|0,h=1346455635,i=a,d=L[L[b>>2]+20>>2],ha[d](g|0,f|0,e|0,h|0,i|0)}function ky(a){a=a|0;var b=S(0),c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[c+12>>2];d=L[a+12>>2];a:{if(_b(d,d)>2]);P[a+8>>2]=b+b;break a}b=uc(S(-P[d+12>>2]));P[a+8>>2]=b+b}fa=a+16|0;fa=c+16|0;return S(P[a+8>>2])}function gA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=(e=b,f=ha[L[L[a>>2]+16>>2]](a)|0,g=1,d=L[L[b>>2]+16>>2],ha[d](e|0,f|0,g|0)|0);g=b,f=c,e=ha[L[L[a>>2]+20>>2]](a,L[c+8>>2],b)|0,h=1497645650,i=a,d=L[L[b>>2]+20>>2],ha[d](g|0,f|0,e|0,h|0,i|0)}function AH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0;c=(e=b,f=ha[L[L[a>>2]+16>>2]](a)|0,g=1,d=L[L[b>>2]+16>>2],ha[d](e|0,f|0,g|0)|0);g=b,f=c,e=ha[L[L[a>>2]+20>>2]](a,L[c+8>>2],b)|0,h=1245859651,i=a,d=L[L[b>>2]+20>>2],ha[d](g|0,f|0,e|0,h|0,i|0)}function vu(a,b,c){a=a|0;b=S(b);c=S(c);var d=0,e=0;d=fa-16|0;fa=d;L[d+12>>2]=a;P[d+8>>2]=b;P[d+4>>2]=c;b=P[d+8>>2];c=P[d+4>>2];a=fa-16|0;L[a+12>>2]=L[d+12>>2];P[a+8>>2]=b;P[a+4>>2]=c;e=L[a+12>>2];P[e+472>>2]=P[a+8>>2];P[e+476>>2]=P[a+4>>2];fa=d+16|0}function uo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=L[d+12>>2];L[d>>2]=L[d+8>>2];db(a,L[d>>2],L[d+4>>2]);Sh(a+28|0,L[d>>2]+28|0);Sh(a+12|0,L[d>>2]+12|0);P[L[d>>2]+44>>2]=P[a+44>>2];fa=d+16|0;return 3884}function ad(a){a=a|0;var b=0,c=0,d=0,e=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];d=fa-16|0;e=L[a+12>>2];L[d+12>>2]=e;if(L[L[d+12>>2]+216>>2]!=2){c=fa-16|0;L[c+12>>2]=e;c=L[L[c+12>>2]+216>>2]!=5}fa=a+16|0;fa=b+16|0;return c|0}function Yi(a,b,c){var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=L[d+12>>2];If(a);L[a>>2]=17880;c=a+144|0;bj(c);L[a+152>>2]=L[d+8>>2];L[a+172>>2]=L[d+4>>2];b=fa-16|0;L[b+12>>2]=a+68;L[b+8>>2]=c;L[L[b+12>>2]+72>>2]=L[b+8>>2];fa=d+16|0}function ta(a,b,c){var d=0;d=fa-32|0;fa=d;L[d+28>>2]=b;L[d+24>>2]=c;P[d+20>>2]=P[L[d+28>>2]>>2]+P[L[d+24>>2]>>2];P[d+16>>2]=P[L[d+28>>2]+4>>2]+P[L[d+24>>2]+4>>2];P[d+12>>2]=P[L[d+28>>2]+8>>2]+P[L[d+24>>2]+8>>2];la(a,d+20|0,d+16|0,d+12|0);fa=d+32|0}function La(a,b,c){var d=0;d=fa-32|0;fa=d;L[d+28>>2]=b;L[d+24>>2]=c;P[d+20>>2]=P[L[d+28>>2]>>2]-P[L[d+24>>2]>>2];P[d+16>>2]=P[L[d+28>>2]+4>>2]-P[L[d+24>>2]+4>>2];P[d+12>>2]=P[L[d+28>>2]+8>>2]-P[L[d+24>>2]+8>>2];la(a,d+20|0,d+16|0,d+12|0);fa=d+32|0}function Kb(a,b,c){var d=0;d=fa-32|0;fa=d;L[d+28>>2]=b;L[d+24>>2]=c;P[d+20>>2]=P[L[d+28>>2]>>2]*P[L[d+24>>2]>>2];P[d+16>>2]=P[L[d+28>>2]+4>>2]*P[L[d+24>>2]+4>>2];P[d+12>>2]=P[L[d+28>>2]+8>>2]*P[L[d+24>>2]+8>>2];la(a,d+20|0,d+16|0,d+12|0);fa=d+32|0}function XH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if(L[a+8>>2]>0){while(1){e=L[a+16>>2]+(d<<4)|0;a:{if(ha[L[L[b>>2]+8>>2]](b,e)|0){ha[L[L[a>>2]+12>>2]](a,L[e>>2],L[e+4>>2],c)|0;L[7536]=L[7536]-1;break a}d=d+1|0}if(L[a+8>>2]>(d|0)){continue}break}}}function kl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=L[a+32>>2];e=c+328|0;d=L[a+28>>2];f=d+328|0;g=c+312|0;h=d+312|0;c=c+4|0;d=d+4|0;if(M[a+1301|0]){il(a,b,jl(a,b,0,d,c,h,g,f,e),d,c,h,g,f,e);return}jl(a,b,il(a,b,0,d,c,h,g,f,e),d,c,h,g,f,e)}function kI(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;c=fa-16|0;fa=c;L[c+8>>2]=5920;L[c+12>>2]=d;g=d+4|0;h=d+20|0;i=c+8|0;Bn(a+4|0,L[a+4>>2],b,g,h,P[d+32>>2],e,f,i);a=a- -64|0;Bn(a,L[a>>2],b,g,h,P[d+32>>2],e,f,i);fa=c+16|0}function NA(a){a=a|0;var b=0,c=0;if(L[a+232>>2]>0){while(1){b=L[L[a+240>>2]+(c<<2)>>2];L[b+412>>2]=0;L[b+416>>2]=0;L[b+436>>2]=0;L[b+440>>2]=0;L[b+428>>2]=0;L[b+432>>2]=0;L[b+420>>2]=0;L[b+424>>2]=0;c=c+1|0;if((c|0)>2]){continue}break}}}function iB(a,b,c){a=a|0;b=b|0;c=c|0;cc(a,b,c);P[b+52>>2]=P[a+300>>2];P[b+56>>2]=P[a+304>>2];P[b+60>>2]=P[a+308>>2];P[b- -64>>2]=P[a+312>>2];P[b+68>>2]=P[a+316>>2];P[b+72>>2]=P[a+320>>2];P[b+76>>2]=P[a+324>>2];P[b+80>>2]=P[a+328>>2];return 3523}function ht(a,b,c,d,e,f){a=a|0;b=S(b);c=S(c);d=S(d);e=S(e);f=S(f);var g=0;g=fa-32|0;fa=g;L[g+28>>2]=a;P[g+24>>2]=b;P[g+20>>2]=c;P[g+16>>2]=d;P[g+12>>2]=e;P[g+8>>2]=f;Si(L[g+28>>2],P[g+24>>2],P[g+20>>2],P[g+16>>2],P[g+12>>2],P[g+8>>2]);fa=g+32|0}function XF(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0);d=P[b+32>>2];e=P[b+36>>2];g=P[c+4>>2];h=P[c+8>>2];f=P[b+28>>2];i=P[c>>2];L[a+12>>2]=0;P[a>>2]=i>=S(0)?f:S(-f);P[a+8>>2]=h>=S(0)?e:S(-e);P[a+4>>2]=g>=S(0)?d:S(-d)}function Ga(a,b,c){var d=0;d=fa-32|0;fa=d;L[d+28>>2]=b;L[d+24>>2]=c;P[d+20>>2]=P[L[d+28>>2]>>2]*P[L[d+24>>2]>>2];P[d+16>>2]=P[L[d+28>>2]+4>>2]*P[L[d+24>>2]>>2];P[d+12>>2]=P[L[d+28>>2]+8>>2]*P[L[d+24>>2]>>2];la(a,d+20|0,d+16|0,d+12|0);fa=d+32|0}function vv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;b=L[d+8>>2];c=L[d+4>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[d+12>>2];L[a+8>>2]=b;L[a+4>>2]=c;Lb(L[a+12>>2]+144|0,L[a+8>>2],L[a+4>>2]);fa=a+16|0;fa=d+16|0}function Jc(a,b){var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];L[(fa-16|0)+12>>2]=a;Zd(a);b=fa-16|0;L[b+12>>2]=L[c+8>>2];L[c+4>>2]=L[L[b+12>>2]+4>>2];b=L[c+4>>2];L[c>>2]=0;Ih(a,b,c);kf(L[c+8>>2],L[c+4>>2],L[a+12>>2]);fa=c+16|0}function re(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=S(f);var g=0;g=fa-32|0;fa=g;L[g+28>>2]=a;L[g+24>>2]=b;L[g+20>>2]=c;L[g+16>>2]=d;L[g+12>>2]=e;P[g+8>>2]=f;Ab(L[g+28>>2],L[g+24>>2],L[g+20>>2],L[g+16>>2],L[g+12>>2],P[g+8>>2]);fa=g+32|0}function $A(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;wa(2911);S(ha[L[L[a>>2]+44>>2]](a,b,c,d,e,f,g,h,i));S(ha[L[L[a>>2]+48>>2]](a,b,c,d,e,f,g,h,i));S(ha[L[L[a>>2]+36>>2]](a,b,c,h));va();return S(S(0))}function qB(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0);a:{b:{switch(c+1|0){case 0:case 6:break b;default:break a}}c:{switch(b-2|0){case 0:return S(P[a+760>>2]);case 2:return S(P[a+756>>2]);case 1:break c;default:break a}}d=P[a+752>>2]}return S(d)}function kD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=L[b+4>>2];L[a+52>>2]=L[b>>2];L[a+56>>2]=d;d=L[b+12>>2];L[a+60>>2]=L[b+8>>2];L[a+64>>2]=d;b=L[c+4>>2];L[a+68>>2]=L[c>>2];L[a+72>>2]=b;b=L[c+12>>2];L[a+76>>2]=L[c+8>>2];L[a+80>>2]=b;L[a+48>>2]=1}function jb(a){var b=0,c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;a=L[c+12>>2];if(L[a+12>>2]){if(J[a+16|0]&1){d=L[a+12>>2];b=fa-16|0;fa=b;L[b+12>>2]=a;L[b+8>>2]=d;d=L[b+8>>2];if(d){L[8514]=L[8514]+1;ha[L[6799]](d)}fa=b+16|0}L[a+12>>2]=0}fa=c+16|0}function KH(a,b,c){a=a|0;b=b|0;c=c|0;a:{b:{c:{switch(L[b+216>>2]-2|0){case 0:case 3:break c;default:break b}}a=0;switch(L[c+216>>2]-2|0){case 0:case 3:break a;default:break b}}if(!L[b+256>>2]){return 1}a=ha[L[L[b>>2]>>2]](b,c)|0}return a|0}function HH(a,b){a=a|0;b=b|0;var c=0;a:{if(!b){break a}a=L[a+64>>2];c=L[a+16>>2];if(c>>>0>b>>>0|R(L[a>>2],L[a+4>>2])+c>>>0<=b>>>0){break a}L[b>>2]=L[a+12>>2];L[a+12>>2]=b;L[a+8>>2]=L[a+8>>2]+1;return}if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}function $u(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;J[f+15|0]=e;a=oa(116);Ld(a,L[f+28>>2],L[f+24>>2],L[f+20>>2]&65535,L[f+16>>2],J[f+15|0]&1);fa=f+32|0;return a|0}function Pf(a,b,c){var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;b=fa-16|0;a=L[d+12>>2];L[b+12>>2]=a;L[L[b+12>>2]>>2]=1384;L[a>>2]=1416;Yb(a+4|0,L[d+8>>2]);Yb(a+68|0,L[d+4>>2]);Yb(a+132|0,L[d+8>>2]);L[a+196>>2]=0;fa=d+16|0}function po(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;a=L[e+12>>2];ha[L[L[a>>2]+108>>2]](a,L[e+8>>2],L[e+4>>2]);ha[L[L[a>>2]+108>>2]](a,(L[e+8>>2]+1|0)%3|0,L[e>>2]);fa=e+16|0}function dn(a,b,c,d,e){L[a>>2]=8684;L[a+4>>2]=L[b>>2];L[a>>2]=8712;L[a>>2]=9768;J[a+28|0]=e;J[a+24|0]=1;L[a+20>>2]=0;L[a+12>>2]=0;L[a+16>>2]=0;b=L[b+4>>2];J[a+36|0]=0;L[a+32>>2]=b;L[a+40>>2]=L[L[(e?d:c)+4>>2]+68>>2];cn(a,c,d);return a}function OH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if(L[b+748>>2]>0){a=0;while(1){c=R(a,184)+b|0;d=L[c+116>>2];a:{if(!d){break a}e=L[8113];if(!e){break a}ha[e|0](d)|0;L[c+116>>2]=0}a=a+1|0;if((a|0)>2]){continue}break}}L[b+748>>2]=0}function Kz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=L[a+896>>2];L[b>>2]=L[a+892>>2];L[b+4>>2]=d;d=L[a+904>>2];L[b+8>>2]=L[a+900>>2];L[b+12>>2]=d;b=L[a+920>>2];L[c+8>>2]=L[a+916>>2];L[c+12>>2]=b;b=L[a+912>>2];L[c>>2]=L[a+908>>2];L[c+4>>2]=b}function Yz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;J[f+15|0]=e;a=oa(1312);ml(a,L[f+28>>2],L[f+24>>2],L[f+20>>2],L[f+16>>2],J[f+15|0]&1);fa=f+32|0;return a|0}function Er(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;b=L[a+12>>2];if(L[a+8>>2]<0){L[a+8>>2]=0}if(L[a+8>>2]>2){L[a+8>>2]=2}L[b+176>>2]=L[a+8>>2];fa=c+16|0}function mt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;J[f+15|0]=e;a=oa(764);gl(a,L[f+28>>2],L[f+24>>2],L[f+20>>2],L[f+16>>2],J[f+15|0]&1);fa=f+32|0;return a|0}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;L[f+12>>2]=e;a=L[f+28>>2];ha[L[L[a>>2]+120>>2]](a,L[f+24>>2],L[f+20>>2],L[f+16>>2],L[f+12>>2]);fa=f+32|0}function mH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=S(0);d=fa-16|0;fa=d;L[d+8>>2]=-1;L[d+12>>2]=L[a+24>>2];if(!L[b+4>>2]){L[b+4>>2]=d+8}e=L[a+20>>2];f=S(ha[L[L[e>>2]+12>>2]](e,b,c));P[a+4>>2]=P[L[a+20>>2]+4>>2];fa=d+16|0;return S(f)}function iH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=S(0);d=fa-16|0;fa=d;L[d+8>>2]=-1;L[d+12>>2]=L[a+16>>2];if(!L[b+4>>2]){L[b+4>>2]=d+8}e=L[a+12>>2];f=S(ha[L[L[e>>2]+12>>2]](e,b,c));P[a+4>>2]=P[L[a+12>>2]+4>>2];fa=d+16|0;return S(f)}function Rz(a,b){a=a|0;b=S(b);var c=0,d=S(0),e=S(0);c=fa-16|0;fa=c;if(P[a+68>>2]>S(0)){b=P[a+92>>2];d=P[a+96>>2];e=P[a+88>>2];L[c+12>>2]=0;P[c>>2]=-e;P[c+8>>2]=-d;P[c+4>>2]=-b;zc(a+4|0,c,a+164|0);zc(a+16|0,a+88|0,a+180|0)}fa=c+16|0}function Ng(a){a=a|0;var b=0,c=0,d=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];c=L[a+12>>2];L[a+8>>2]=(L[c+52>>2]+2|0)%3;d=fa-16|0;L[d+12>>2]=c+28;fa=a+16|0;fa=b+16|0;return S(P[L[d+12>>2]+(L[a+8>>2]<<2)>>2])}function NE(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0),e=S(0),f=S(0),g=S(0),h=S(0),i=S(0);b=L[a+104>>2]+(b<<4)|0;d=P[b>>2];e=P[b+4>>2];f=P[b+8>>2];g=P[a+16>>2];h=P[a+20>>2];i=P[a+12>>2];L[c+12>>2]=0;P[c+8>>2]=f*h;P[c+4>>2]=e*g;P[c>>2]=d*i}function Io(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];J[c+7|0]=(N[L[c+8>>2]+4>>1]<<16>>16&N[a+14>>1]<<16>>16)!=0;J[c+7|0]=J[c+7|0]&1&(N[a+12>>1]<<16>>16&N[L[c+8>>2]+6>>1]<<16>>16)!=0;return J[c+7|0]&1}function co(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];d=L[b+4>>2];a=L[c+12>>2];L[a+52>>2]=L[b>>2];L[a+56>>2]=d;d=L[b+12>>2];L[a+60>>2]=L[b+8>>2];L[a+64>>2]=d;ha[L[L[a>>2]+72>>2]](a);fa=c+16|0}function Gt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;J[d+7|0]=c;c=L[d+12>>2];a=L[d+8>>2];e=c+a|0;b=J[d+7|0]&1;J[e+1309|0]=b;a:{if((a|0)<=2){J[e+788|0]=b;break a}J[(c+(a<<6)|0)+720|0]=b}fa=d+16|0}function Co(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];J[c+7|0]=(N[L[c+8>>2]+4>>1]<<16>>16&N[a+10>>1]<<16>>16)!=0;J[c+7|0]=J[c+7|0]&1&(N[a+8>>1]<<16>>16&N[L[c+8>>2]+6>>1]<<16>>16)!=0;return J[c+7|0]&1}function Jw(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=oa(48);c=L[b+12>>2];J[a+16|0]=1;L[a+44>>2]=c;L[a+12>>2]=0;L[a+4>>2]=0;L[a+8>>2]=0;L[a+40>>2]=0;J[a+36|0]=1;L[a+32>>2]=0;L[a+24>>2]=0;L[a+28>>2]=0;fa=b+16|0;return a|0}function Eo(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];J[c+7|0]=(N[L[c+8>>2]+4>>1]<<16>>16&N[a+6>>1]<<16>>16)!=0;J[c+7|0]=J[c+7|0]&1&(N[a+4>>1]<<16>>16&N[L[c+8>>2]+6>>1]<<16>>16)!=0;return J[c+7|0]&1}function MA(a){a=a|0;var b=0,c=0,d=0;b=L[a+232>>2];if((b|0)>0){while(1){a:{b:{d=L[L[a+240>>2]+(c<<2)>>2];switch(L[d+216>>2]-2|0){case 0:case 3:break a;default:break b}}Jk(d);b=L[a+232>>2]}c=c+1|0;if((b|0)>(c|0)){continue}break}}}function He(a){J[a+356|0]=1;L[a>>2]=0;J[a+312|0]=0;L[a+292>>2]=1566444395;L[a+296>>2]=1566444395;L[a+336>>2]=0;L[a+340>>2]=0;L[a+300>>2]=1566444395;L[a+304>>2]=0;L[a+344>>2]=0;L[a+348>>2]=0;J[a+352|0]=0;J[a+332|0]=M[a+332|0]&240}function Vd(a,b,c,d,e){var f=0;f=fa-32|0;fa=f;L[f+28>>2]=b;L[f+24>>2]=c;L[f+20>>2]=d;L[f+16>>2]=e;b=L[f+28>>2];P[f+12>>2]=Sa(b,L[f+24>>2]);P[f+8>>2]=Sa(b,L[f+20>>2]);P[f+4>>2]=Sa(b,L[f+16>>2]);la(a,f+12|0,f+8|0,f+4|0);fa=f+32|0}function xh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=L[b+20>>2];L[c>>2]=L[b+16>>2];L[c+4>>2]=a;a=L[b+28>>2];L[c+8>>2]=L[b+24>>2];L[c+12>>2]=a;a=L[b+44>>2];L[d+8>>2]=L[b+40>>2];L[d+12>>2]=a;a=L[b+36>>2];L[d>>2]=L[b+32>>2];L[d+4>>2]=a}function oo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=(L[d+12>>2]+56|0)+(L[d+8>>2]<<4)|0;c=L[a+4>>2];b=L[d+4>>2];L[b>>2]=L[a>>2];L[b+4>>2]=c;c=L[a+12>>2];L[b+8>>2]=L[a+8>>2];L[b+12>>2]=c}function iD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=L[a+56>>2];L[b>>2]=L[a+52>>2];L[b+4>>2]=d;d=L[a+64>>2];L[b+8>>2]=L[a+60>>2];L[b+12>>2]=d;b=L[a+80>>2];L[c+8>>2]=L[a+76>>2];L[c+12>>2]=b;b=L[a+72>>2];L[c>>2]=L[a+68>>2];L[c+4>>2]=b}function vc(a,b,c,d,e){var f=0;f=fa-32|0;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;L[f+12>>2]=e;a=L[f+28>>2];P[a>>2]=P[L[f+24>>2]>>2];P[a+4>>2]=P[L[f+20>>2]>>2];P[a+8>>2]=P[L[f+16>>2]>>2];P[a+12>>2]=P[L[f+12>>2]>>2]}function _o(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-32|0;fa=d;L[d+28>>2]=a;L[d+24>>2]=b;L[d+20>>2]=c;a=L[d+28>>2];L[d+16>>2]=28052;b=L[d+16>>2];c=L[d+24>>2];L[d+8>>2]=L[d+20>>2];L[d+4>>2]=c;L[d>>2]=a;$(b|0,1291,d|0)|0;fa=d+32|0}function Zy(a){a=a|0;var b=0,c=0,d=0;b=L[a+24>>2];if((b|0)>0){while(1){a:{b:{d=L[L[a+32>>2]+(c<<2)>>2];switch(L[d+216>>2]-2|0){case 0:case 3:break a;default:break b}}ig(d);b=L[a+24>>2]}c=c+1|0;if((c|0)<(b|0)){continue}break}}}function Kn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=L[a+12>>2];L[b>>2]=L[a+8>>2];L[b+4>>2]=d;d=L[a+20>>2];L[b+8>>2]=L[a+16>>2];L[b+12>>2]=d;b=L[a+36>>2];L[c+8>>2]=L[a+32>>2];L[c+12>>2]=b;b=L[a+28>>2];L[c>>2]=L[a+24>>2];L[c+4>>2]=b}function Jn(a,b){a=a|0;b=b|0;var c=0,d=0;if(!N[a+56>>1]){b=1;K[a+64>>1]=1;d=L[a+60>>2];c=N[a+58>>1];if(c>>>0>1){while(1){c=(b<<6)+d|0;b=b+1|0;K[c+48>>1]=b;c=N[a+58>>1];if(c>>>0>b>>>0){continue}break}}K[((c<<6)+d|0)-16>>1]=0}}function zj(a,b){var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];P[a>>2]=P[a>>2]*P[L[c+8>>2]>>2];P[a+4>>2]=P[a+4>>2]*P[L[c+8>>2]>>2];P[a+8>>2]=P[a+8>>2]*P[L[c+8>>2]>>2];P[a+12>>2]=P[a+12>>2]*P[L[c+8>>2]>>2];return a}function eA(a){a=a|0;var b=0;L[a>>2]=20800;b=L[a+496>>2];if(!(b?!b|!M[a+500|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+496>>2]=0;J[a+500|0]=1;L[a+488>>2]=0;L[a+492>>2]=0;L[a>>2]=6712;if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function xl(a,b,c){var d=0;Al(a);d=L[a+248>>2];L[b>>2]=L[a+244>>2];L[b+4>>2]=d;d=L[a+256>>2];L[b+8>>2]=L[a+252>>2];L[b+12>>2]=d;b=L[a+272>>2];L[c+8>>2]=L[a+268>>2];L[c+12>>2]=b;b=L[a+264>>2];L[c>>2]=L[a+260>>2];L[c+4>>2]=b}function mv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=sa(40);b=L[d+12>>2];L[a>>2]=8684;L[a+4>>2]=L[b>>2];L[a>>2]=8712;L[a>>2]=17248;L[a+8>>2]=0;L[a+12>>2]=0;fa=d+16|0;return a|0}function su(a,b,c){a=a|0;b=S(b);c=S(c);var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;P[d+8>>2]=b;P[d+4>>2]=c;b=P[d+8>>2];a=L[d+12>>2];c=P[d+4>>2];P[a+448>>2]=cS(1)?S(1):c;P[a+444>>2]=bS(1)?S(1):b;fa=d+16|0}function dp(a,b,c,d){a=a|0;b=b|0;c=S(c);d=d|0;var e=0;e=fa-80|0;fa=e;L[e+76>>2]=a;L[e+72>>2]=b;P[e+68>>2]=c;L[e+64>>2]=d;a=L[e+76>>2];Pb(e);ee(e);Rf(e,L[e+72>>2]);ha[L[L[a>>2]+16>>2]](a,P[e+68>>2],e,L[e+64>>2]);fa=e+80|0}function Qf(a,b,c){var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=L[d+12>>2];mf(a,L[d+8>>2]);b=L[d+4>>2];c=L[b+4>>2];L[a+48>>2]=L[b>>2];L[a+52>>2]=c;c=L[b+12>>2];L[a+56>>2]=L[b+8>>2];L[a+60>>2]=c;fa=d+16|0}function fp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;L[f+12>>2]=e;a=L[f+28>>2];ha[L[L[a>>2]+8>>2]](a,L[f+24>>2],L[f+20>>2],L[f+16>>2]);fa=f+32|0}function MH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=d;L[e+8>>2]=a;a=L[((R(L[L[b+4>>2]+4>>2],144)+a|0)+(L[L[c+4>>2]+4>>2]<<2)|0)+72>>2];a=ha[L[L[a>>2]+8>>2]](a,e+8|0,b,c)|0;fa=e+16|0;return a|0}function it(a,b,c,d,e){a=a|0;b=S(b);c=S(c);d=S(d);e=S(e);var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;P[f+24>>2]=b;P[f+20>>2]=c;P[f+16>>2]=d;P[f+12>>2]=e;Si(L[f+28>>2],P[f+24>>2],P[f+20>>2],P[f+16>>2],P[f+12>>2],S(1));fa=f+32|0}function fo(a){a=a|0;var b=0,c=0,d=0;b=fa-16|0;fa=b;L[b+12>>2]=a;d=L[b+12>>2];L[d>>2]=4720;a=fa-16|0;fa=a;L[a+12>>2]=d+68;c=fa-16|0;fa=c;L[c+12>>2]=L[a+12>>2];rc(L[c+12>>2]+4|0);fa=c+16|0;fa=a+16|0;fa=b+16|0;return d|0}function ej(a){var b=0,c=0,d=0;b=fa-16|0;fa=b;L[b+8>>2]=a;a=L[b+8>>2];L[b+12>>2]=a;d=a+48|0;c=a;while(1){L[(fa-16|0)+12>>2]=c;c=c+16|0;if((d|0)!=(c|0)){continue}break}Ka(a+48|0);P[a+64>>2]=.009999999776482582;fa=b+16|0}function JE(a){a=a|0;var b=0;L[a>>2]=13876;b=L[a+104>>2];if(!(b?!b|!M[a+108|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+104>>2]=0;J[a+108|0]=1;L[a+96>>2]=0;L[a+100>>2]=0;a=Oa(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function qF(a){a=a|0;var b=0,c=S(0),d=S(0),e=S(0);b=fa-32|0;fa=b;ha[L[L[a>>2]+12>>2]](a,b+16|0,b+12|0);fa=b+32|0;c=P[b+24>>2];d=S(c*c);c=P[b+16>>2];e=S(c*c);c=P[b+20>>2];return S(S(P[b+12>>2]+S(_(S(d+S(e+S(c*c)))))))}function kB(a,b,c,d){a=a|0;b=b|0;c=S(c);d=d|0;a:{if((d|0)!=-1){break a}b:{c:{switch(b-1|0){case 0:case 1:d=a+336|0;b=1;break b;case 2:case 3:break c;default:break a}}d=a+340|0;b=2}P[d>>2]=c;L[a+332>>2]=b|L[a+332>>2]}}function jB(a,b,c){a=a|0;b=b|0;c=c|0;var d=S(0);d=S(34028234663852886e22);a:{if((c|0)!=-1){break a}b:{switch(b-1|0){case 0:case 1:return S(P[a+336>>2]);case 2:case 3:break b;default:break a}}d=P[a+340>>2]}return S(d)}function Qc(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;b=L[a+12>>2];L[b+260>>2]=L[b+260>>2]+1;sb(b+4|0,L[a+8>>2]);fa=a+16|0;fa=c+16|0}function ux(){var a=0,b=0,c=0,d=0;b=sa(8);L[b>>2]=0;L[b+4>>2]=0;c=fa-16|0;fa=c;L[c+12>>2]=b;a=fa-16|0;d=L[c+12>>2];L[a+12>>2]=d;a=L[a+12>>2];L[a>>2]=1836;K[a+4>>1]=1;K[a+6>>1]=65535;L[d>>2]=1716;fa=c+16|0;return b|0}function sb(a,b){var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];qg(a,L[c+8>>2]);b=L[c+8>>2];d=L[b+52>>2];L[a+48>>2]=L[b+48>>2];L[a+52>>2]=d;d=L[b+60>>2];L[a+56>>2]=L[b+56>>2];L[a+60>>2]=d;fa=c+16|0}function mI(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;e=c>>>16|0;f=a>>>16|0;j=R(e,f);g=c&65535;h=a&65535;i=R(g,h);f=(i>>>16|0)+R(f,g)|0;e=(f&65535)+R(e,h)|0;ga=(R(b,c)+j|0)+R(a,d)+(f>>>16)+(e>>>16)|0;return i&65535|e<<16}function Yb(a,b){var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];mf(a,L[c+8>>2]);b=L[c+8>>2];d=L[b+52>>2];L[a+48>>2]=L[b+48>>2];L[a+52>>2]=d;d=L[b+60>>2];L[a+56>>2]=L[b+56>>2];L[a+60>>2]=d;fa=c+16|0}function Eh(a,b){var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];Jc(a,L[c+8>>2]);b=L[c+8>>2];d=L[b+24>>2];L[a+20>>2]=L[b+20>>2];L[a+24>>2]=d;d=L[b+32>>2];L[a+28>>2]=L[b+28>>2];L[a+32>>2]=d;fa=c+16|0}function nv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=sa(8);d=L[c+12>>2];e=L[c+8>>2];a=fa-16|0;L[a+12>>2]=b;L[a+8>>2]=d;L[a+4>>2]=e;L[L[a+12>>2]>>2]=L[a+8>>2];fa=c+16|0;return b|0}function Hh(a,b){var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=0;L[c+4>>2]=b;a=L[c+12>>2];L[c>>2]=L[c+8>>2];while(1){if(L[c>>2]>2]){rc(L[a+12>>2]+R(L[c>>2],36)|0);L[c>>2]=L[c>>2]+1;continue}break}fa=c+16|0}function ip(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;J[f+15|0]=e;a=fg(L[f+24>>2],L[f+20>>2],L[f+16>>2],J[f+15|0]&1);fa=f+32|0;return a|0}function FG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=L[a+8>>2];d=L[c+8>>2];if((d|0)>0){a=0;while(1){e=L[(L[c+16>>2]+R(a,12)|0)+8>>2];if(e){ha[L[L[e>>2]+16>>2]](e,b);d=L[c+8>>2]}a=a+1|0;if((d|0)>(a|0)){continue}break}}}function rw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;J[f+15|0]=e;Yl(L[f+28>>2],L[f+24>>2],L[f+20>>2],L[f+16>>2],J[f+15|0]&1);fa=f+32|0}function bq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;J[f+15|0]=e;Ha(L[f+28>>2],L[f+24>>2],L[f+20>>2],L[f+16>>2],J[f+15|0]&1);fa=f+32|0}function aq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;L[f+12>>2]=e;pb(L[f+28>>2],L[f+24>>2],L[f+20>>2],L[f+16>>2],L[f+12>>2]);fa=f+32|0}function Uz(a,b){a=a|0;b=b|0;var c=S(0);b=L[b+36>>2];c=uk(a+4|0,a+36|0,L[b+8>>2]+8|0,L[b+12>>2]+8|0,L[b+16>>2]+8|0,P[a+52>>2]);if(!(!(c>S(0))|!(P[a+52>>2]>c))){L[a+56>>2]=b;P[a+52>>2]=c}L[a+60>>2]=L[a+60>>2]+1}function Uj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;K[e+6>>1]=c;K[e+4>>1]=d;a=L[e+12>>2];ha[L[L[a>>2]+88>>2]](a,L[e+8>>2],N[e+6>>1]<<16>>16,N[e+4>>1]<<16>>16);fa=e+16|0}function Tp(a,b,c){a=a|0;b=b|0;c=S(c);var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;P[d+4>>2]=c;a=L[d+12>>2];c=P[d+4>>2];P[(L[a+720>>2]+R(L[d+8>>2],104)|0)+88>>2]=c>S(0)?S(S(1)/c):S(0);J[a+924|0]=1;fa=d+16|0}function Oe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;K[e+6>>1]=c;K[e+4>>1]=d;a=L[e+12>>2];ha[L[L[a>>2]+36>>2]](a,L[e+8>>2],N[e+6>>1]<<16>>16,N[e+4>>1]<<16>>16);fa=e+16|0}function Es(){var a=0,b=0;b=sa(24);a=fa-16|0;L[a+12>>2]=b;a=L[a+12>>2];P[a>>2]=5.880000114440918;P[a+4>>2]=.8299999833106995;P[a+8>>2]=.8799999952316284;P[a+12>>2]=500;P[a+16>>2]=10.5;P[a+20>>2]=6e3;return b|0}function Xf(a,b,c){var d=0;d=L[a+16>>2];if(!d){L[a+36>>2]=1;L[a+24>>2]=c;L[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(L[a+24>>2]!=2){break a}L[a+24>>2]=c;return}J[a+54|0]=1;L[a+24>>2]=2;L[a+36>>2]=L[a+36>>2]+1}}function Vc(a,b){a=a|0;b=S(b);var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;d=L[a+12>>2];L[d+260>>2]=L[d+260>>2]+1;P[d+228>>2]=P[a+8>>2];fa=c+16|0}function Uc(a,b){a=a|0;b=S(b);var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;d=L[a+12>>2];L[d+260>>2]=L[d+260>>2]+1;P[d+224>>2]=P[a+8>>2];fa=c+16|0}function Tc(a,b){a=a|0;b=S(b);var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;d=L[a+12>>2];L[d+260>>2]=L[d+260>>2]+1;P[d+232>>2]=P[a+8>>2];fa=c+16|0}function sC(a){a=a|0;var b=0;a=L[a+140>>2];b=L[a+32>>2];if((b|0)>0){L[a+32>>2]=b+1;return}b=L[a+8>>2];ha[L[L[b>>2]+16>>2]](b,a+36|0,a+40|0,a+44|0,a+48|0,a+52|0,a+56|0,a+60|0,a- -64|0,L[a+28>>2]);L[a+32>>2]=1}function al(){var a=0;a=fa-16|0;fa=a;if(!M[33152]){L[a+8>>2]=0;L[a+12>>2]=0;L[a>>2]=0;L[a+4>>2]=0;ng(32536,a);J[33152]=1}L[a+8>>2]=0;L[a+12>>2]=0;L[a>>2]=0;L[a+4>>2]=0;ve(32536,S(0),a);fa=a+16|0;return 32536}function gB(a,b){a=a|0;b=b|0;var c=0;c=fa-80|0;fa=c;L[c+76>>2]=a;L[c+72>>2]=b;if(!M[29604]){Pb(29540);J[29604]=1}a=c+8|0;b=L[c+76>>2];ha[L[L[b>>2]+132>>2]](a,b,L[c+72>>2]);sb(29540,a);fa=c+80|0;return 29540}function Uv(a,b){a=a|0;b=b|0;var c=0;c=fa-80|0;fa=c;L[c+76>>2]=a;L[c+72>>2]=b;if(!M[29880]){Pb(29816);J[29880]=1}a=c+8|0;b=L[c+76>>2];ha[L[L[b>>2]+132>>2]](a,b,L[c+72>>2]);sb(29816,a);fa=c+80|0;return 29816}function Kj(a,b,c,d){a=a|0;b=S(b);c=c|0;d=S(d);var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;P[e+8>>2]=b;L[e+4>>2]=c;P[e>>2]=d;a=L[e+12>>2];a=ha[L[L[a>>2]+52>>2]](a,P[e+8>>2],L[e+4>>2],P[e>>2])|0;fa=e+16|0;return a|0}function ub(a,b,c,d){L[a+44>>2]=0;L[a+36>>2]=0;L[a+40>>2]=1050253722;L[a+32>>2]=d;L[a+28>>2]=c;L[a+24>>2]=-1;K[a+20>>1]=1;L[a+16>>2]=2139095039;L[a+8>>2]=-1;L[a+12>>2]=-1;L[a+4>>2]=b;L[a>>2]=20172;return a}function Gw(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[a+12>>2];L[c+8>>2]=0;fa=a+16|0;fa=b+16|0;return L[L[c+12>>2]+12>>2]+(L[c+8>>2]<<4)|0}function yb(a){L[a+4>>2]=35;L[a+8>>2]=0;L[a>>2]=14328;L[a+44>>2]=1025758986;L[a+12>>2]=1065353216;L[a+16>>2]=1065353216;L[a>>2]=14044;L[a+20>>2]=1065353216;L[a+24>>2]=0;L[a+52>>2]=0;L[a>>2]=15836;return a}function Mg(a){a=a|0;var b=0,c=0,d=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];c=fa-16|0;d=L[a+12>>2];L[c+12>>2]=d+28;fa=a+16|0;fa=b+16|0;return S(P[L[c+12>>2]+(L[d+52>>2]<<2)>>2])}function AC(a){a=a|0;var b=0;L[a>>2]=4720;b=L[a+84>>2];if(!(b?!b|!M[a+88|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+84>>2]=0;J[a+88|0]=1;L[a+76>>2]=0;L[a+80>>2]=0;if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function Nd(a){var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;c=L[b+12>>2];P[b+8>>2]=nf(c);a=fa-16|0;fa=a;L[a+12>>2]=c;L[a+8>>2]=b+8;c=L[a+12>>2];P[a+4>>2]=S(1)/P[L[a+8>>2]>>2];mh(c,a+4|0);fa=a+16|0;fa=b+16|0}function Lj(a,b,c){a=a|0;b=S(b);c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;P[d+8>>2]=b;L[d+4>>2]=c;a=L[d+12>>2];a=ha[L[L[a>>2]+52>>2]](a,P[d+8>>2],L[d+4>>2],S(.01666666753590107))|0;fa=d+16|0;return a|0}function xe(a){var b=S(0);b=Na(S(P[a>>2]+P[a+4>>2]),S(6.2831854820251465));if(bS(3.1415927410125732)?S(b+S(-6.2831854820251465)):b}function we(a){var b=S(0);b=Na(S(P[a>>2]-P[a+4>>2]),S(6.2831854820251465));if(bS(3.1415927410125732)?S(b+S(-6.2831854820251465)):b}function av(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;a=oa(116);Ld(a,L[e+12>>2],L[e+8>>2],L[e+4>>2]&65535,L[e>>2],0);fa=e+16|0;return a|0}function DD(a,b,c){a=a|0;b=S(b);c=c|0;var d=S(0),e=S(0);d=S(ha[L[L[a>>2]+48>>2]](a));e=S(ha[L[L[a>>2]+48>>2]](a));L[c+12>>2]=0;b=S(e*S(d*S(b*S(.4000000059604645))));P[c+8>>2]=b;P[c+4>>2]=b;P[c>>2]=b}function Nv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;L[f+24>>2]=b;L[f+20>>2]=c;L[f+16>>2]=d;L[f+12>>2]=e;Gf(L[f+28>>2],L[f+24>>2],f+20|0,f+16|0,f+12|0);fa=f+32|0}function Bj(a,b,c,d,e){a=a|0;b=S(b);c=S(c);d=S(d);e=S(e);var f=0;f=fa-32|0;fa=f;L[f+28>>2]=a;P[f+24>>2]=b;P[f+20>>2]=c;P[f+16>>2]=d;P[f+12>>2]=e;vc(L[f+28>>2],f+24|0,f+20|0,f+16|0,f+12|0);fa=f+32|0}function tt(a,b){a=a|0;b=S(b);var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;d=L[a+12>>2];P[d+572>>2]=P[a+8>>2];J[d+553|0]=0;fa=c+16|0}function st(a,b){a=a|0;b=S(b);var c=0,d=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;d=L[a+12>>2];P[d+572>>2]=P[a+8>>2];J[d+553|0]=1;fa=c+16|0}function Dc(a){a:{switch(L[a+4>>2]){case 8:return S(P[a+28>>2]*P[a+12>>2]);case 0:case 1:case 4:case 5:case 10:case 11:case 13:return P[a+44>>2];default:break a}}return S(ha[L[L[a>>2]+48>>2]](a))}function mb(a){a=a|0;var b=0,c=0,d=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];d=fa-16|0;c=L[a+12>>2];L[d+12>>2]=c;Db(c,L[L[d+12>>2]+4>>2]);jb(c);Zd(c);fa=a+16|0;fa=b+16|0}function fA(a){a=a|0;var b=0;L[a>>2]=20800;b=L[a+496>>2];if(!(b?!b|!M[a+500|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+496>>2]=0;J[a+500|0]=1;L[a+488>>2]=0;L[a+492>>2]=0;L[a>>2]=6712;return a|0}function Sm(a){a=a|0;var b=0;L[a>>2]=11364;b=L[a+276>>2];if(!(b?!b|!M[a+280|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+276>>2]=0;J[a+280|0]=1;L[a+268>>2]=0;L[a+272>>2]=0;L[a>>2]=6712;return a|0}function xu(a){a=a|0;var b=0,c=0,d=0;b=fa-16|0;fa=b;L[b+12>>2]=a;c=oa(616);d=L[b+12>>2];a=Cd(c);L[a>>2]=20800;J[a+500|0]=1;L[a+496>>2]=0;L[a+488>>2]=0;L[a+492>>2]=0;Kk(a,d);fa=b+16|0;return c|0}function Ys(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+192>>2]=pe(P[a+8>>2]);fa=a+16|0;fa=c+16|0}function Xs(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+196>>2]=pe(P[a+8>>2]);fa=a+16|0;fa=c+16|0}function Jx(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;fa=c+16|0;return S(P[L[L[a+12>>2]+12>>2]+(L[a+8>>2]<<2)>>2])}function nt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;a=oa(764);gl(a,L[e+12>>2],L[e+8>>2],L[e+4>>2],L[e>>2],0);fa=e+16|0;return a|0}function lA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=L[b>>2];d=L[a+80>>2];if(!(!(N[b+6>>1]&N[a+8>>1])|(!(N[a+10>>1]&N[b+4>>1])|(c|0)==(d|0)))){a=L[a+92>>2];e=ha[L[L[a>>2]+28>>2]](a,d,c)|0}return e|0}function Jq(){var a=0,b=0;b=oa(288);a=Cd(b);L[a+236>>2]=4;L[a>>2]=11408;L[a+276>>2]=0;J[a+280|0]=1;L[a+268>>2]=0;L[a+272>>2]=0;L[8513]=L[8513]+1;L[a+284>>2]=qh(ha[L[6798]](76,16)|0);return b|0}function AD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L[c+8>>2]=-581039253;L[c+12>>2]=0;L[c>>2]=-581039253;L[c+4>>2]=-581039253;L[d+8>>2]=1566444395;L[d+12>>2]=0;L[d>>2]=1566444395;L[d+4>>2]=1566444395}function gq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;a=oa(1252);Ac(a,L[e+12>>2],L[e+8>>2],L[e+4>>2],L[e>>2]);fa=e+16|0;return a|0}function Yr(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+156>>2]=L[a>>2];L[b+160>>2]=c;c=L[a+12>>2];L[b+164>>2]=L[a+8>>2];L[b+168>>2]=c}function Vr(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+172>>2]=L[a>>2];L[b+176>>2]=c;c=L[a+12>>2];L[b+180>>2]=L[a+8>>2];L[b+184>>2]=c}function Uu(a,b,c,d){a=S(a);b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;P[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;b=sa(140);Xi(b,P[e+12>>2],L[e+8>>2],L[e+4>>2],L[e>>2]);fa=e+16|0;return b|0}function Tr(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+188>>2]=L[a>>2];L[b+192>>2]=c;c=L[a+12>>2];L[b+196>>2]=L[a+8>>2];L[b+200>>2]=c}function Fr(a,b,c,d){a=a|0;b=b|0;c=S(c);d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;P[e+4>>2]=c;L[e>>2]=d;a=oa(184);ul(a,L[e+12>>2],L[e+8>>2],P[e+4>>2],L[e>>2]);fa=e+16|0;return a|0}function no(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;a=L[e+12>>2];ha[L[L[a>>2]+124>>2]](a,L[e>>2],L[e+8>>2],L[e+4>>2]);fa=e+16|0}function hw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=S(d);var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;P[e>>2]=d;a=sa(32);gj(a,L[e+12>>2],L[e+8>>2],L[e+4>>2],P[e>>2]);fa=e+16|0;return a|0}function de(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;fa=c+16|0;return L[L[L[a+12>>2]+12>>2]+(L[a+8>>2]<<2)>>2]}function Sh(a,b){var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];L[c+4>>2]=0;while(1){if(L[c+4>>2]<4){b=L[c+4>>2]<<2;P[b+L[c+8>>2]>>2]=P[a+b>>2];L[c+4>>2]=L[c+4>>2]+1;continue}break}}function IG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=L[a+12>>2];if((c|0)>0){while(1){e=L[L[a+20>>2]+(d<<2)>>2];if(e){ha[L[L[e>>2]+16>>2]](e,b);c=L[a+12>>2]}d=d+1|0;if((c|0)>(d|0)){continue}break}}}function Ej(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;a=L[e+12>>2];ha[L[L[a>>2]+8>>2]](a,L[e+8>>2],L[e+4>>2],L[e>>2])|0;fa=e+16|0}function Eb(a,b,c,d){a=a|0;b=b|0;c=S(c);d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;P[e+4>>2]=c;L[e>>2]=d;a=L[e+12>>2];ha[L[L[a>>2]+28>>2]](a,L[e+8>>2],P[e+4>>2],L[e>>2]);fa=e+16|0}function nf(a){var b=0,c=0,d=S(0);b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];c=L[a+12>>2];d=Sa(c,c);fa=a+16|0;a=fa-16|0;P[a+12>>2]=d;fa=b+16|0;return S(_(P[a+12>>2]))} function jo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;a=L[e+12>>2];ha[L[L[a>>2]+80>>2]](a,L[e+8>>2],L[e+4>>2],L[e>>2]);fa=e+16|0}function hb(a,b){var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];P[a>>2]=P[a>>2]+P[L[c+8>>2]>>2];P[a+4>>2]=P[a+4>>2]+P[L[c+8>>2]+4>>2];P[a+8>>2]=P[a+8>>2]+P[L[c+8>>2]+8>>2];return a}function fe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;a=L[e+12>>2];ha[L[L[a>>2]+28>>2]](a,L[e+8>>2],L[e+4>>2],L[e>>2]);fa=e+16|0}function cr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;a=L[e+12>>2];ha[L[L[a>>2]+24>>2]](a,L[e+8>>2],L[e+4>>2],L[e>>2]);fa=e+16|0}function Yd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;a=L[e+12>>2];ha[L[L[a>>2]+32>>2]](a,L[e+8>>2],L[e+4>>2],L[e>>2]);fa=e+16|0}function xq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;fa=c+16|0;return L[L[a+12>>2]+12>>2]+R(L[a+8>>2],104)|0}function sf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;a=L[e+12>>2];ha[L[L[a>>2]+8>>2]](a,L[e+8>>2],L[e+4>>2],L[e>>2]);fa=e+16|0}function Jk(a){if(!(M[a+204|0]&3)){P[a+412>>2]=S(P[a+364>>2]*P[a+348>>2])+P[a+412>>2];P[a+416>>2]=S(P[a+368>>2]*P[a+352>>2])+P[a+416>>2];P[a+420>>2]=S(P[a+372>>2]*P[a+356>>2])+P[a+420>>2]}}function xx(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+64>>2]=L[a>>2];L[b+68>>2]=c;c=L[a+12>>2];L[b+72>>2]=L[a+8>>2];L[b+76>>2]=c}function vj(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+20>>2]=L[a>>2];L[b+24>>2]=c;c=L[a+12>>2];L[b+28>>2]=L[a+8>>2];L[b+32>>2]=c}function tq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+76>>2]=L[a>>2];L[b+80>>2]=c;c=L[a+12>>2];L[b+84>>2]=L[a+8>>2];L[b+88>>2]=c}function tj(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+36>>2]=L[a>>2];L[b+40>>2]=c;c=L[a+12>>2];L[b+44>>2]=L[a+8>>2];L[b+48>>2]=c}function sj(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+52>>2]=L[a>>2];L[b+56>>2]=c;c=L[a+12>>2];L[b+60>>2]=L[a+8>>2];L[b+64>>2]=c}function qj(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+68>>2]=L[a>>2];L[b+72>>2]=c;c=L[a+12>>2];L[b+76>>2]=L[a+8>>2];L[b+80>>2]=c}function px(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+12>>2]=L[a>>2];L[b+16>>2]=c;c=L[a+12>>2];L[b+20>>2]=L[a+8>>2];L[b+24>>2]=c}function ox(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+28>>2]=L[a>>2];L[b+32>>2]=c;c=L[a+12>>2];L[b+36>>2]=L[a+8>>2];L[b+40>>2]=c}function oj(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+56>>2]=L[a>>2];L[b+60>>2]=c;c=L[a+12>>2];L[b+64>>2]=L[a+8>>2];L[b+68>>2]=c}function mx(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+44>>2]=L[a>>2];L[b+48>>2]=c;c=L[a+12>>2];L[b+52>>2]=L[a+8>>2];L[b+56>>2]=c}function lj(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+32>>2]=L[a>>2];L[b+36>>2]=c;c=L[a+12>>2];L[b+40>>2]=L[a+8>>2];L[b+44>>2]=c}function kx(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+60>>2]=L[a>>2];L[b+64>>2]=c;c=L[a+12>>2];L[b+68>>2]=L[a+8>>2];L[b+72>>2]=c}function jj(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+24>>2]=L[a>>2];L[b+28>>2]=c;c=L[a+12>>2];L[b+32>>2]=L[a+8>>2];L[b+36>>2]=c}function gd(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+16>>2]=L[a>>2];L[b+20>>2]=c;c=L[a+12>>2];L[b+24>>2]=L[a+8>>2];L[b+28>>2]=c}function Vw(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;fa=c+16|0;return L[L[a+12>>2]+12>>2]+R(L[a+8>>2],36)|0}function Rf(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+48>>2]=L[a>>2];L[b+52>>2]=c;c=L[a+12>>2];L[b+56>>2]=L[a+8>>2];L[b+60>>2]=c}function Lf(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+40>>2]=L[a>>2];L[b+44>>2]=c;c=L[a+12>>2];L[b+48>>2]=L[a+8>>2];L[b+52>>2]=c}function Fb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=S(0);d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=L[d+12>>2];e=S(ha[L[L[a>>2]+32>>2]](a,L[d+8>>2],L[d+4>>2]));fa=d+16|0;return S(e)}function Bq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;fa=c+16|0;return L[L[a+12>>2]+12>>2]+R(L[a+8>>2],44)|0}function Aq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+72>>2]=L[a>>2];L[b+76>>2]=c;c=L[a+12>>2];L[b+80>>2]=L[a+8>>2];L[b+84>>2]=c}function yo(a,b,c){a=a|0;b=S(b);c=c|0;var d=0;d=fa-32|0;fa=d;L[d+28>>2]=a;P[d+24>>2]=b;L[d+20>>2]=c;a=L[d+20>>2];P[d+16>>2]=0;P[d+12>>2]=0;P[d+8>>2]=0;la(a,d+16|0,d+12|0,d+8|0);fa=d+32|0}function ww(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;fa=c+16|0;return L[L[a+12>>2]+12>>2]+(L[a+8>>2]<<5)|0}function kj(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+8>>2]=L[a>>2];L[b+12>>2]=c;c=L[a+12>>2];L[b+16>>2]=L[a+8>>2];L[b+20>>2]=c}function hq(a){a=a|0;var b=0,c=0,d=0;b=fa-16|0;fa=b;L[b+12>>2]=a;c=L[b+12>>2];if(c){a=fa-16|0;fa=a;L[a+12>>2]=c;d=L[a+12>>2];mb(d+144|0);mb(d+124|0);mb(d+104|0);fa=a+16|0;ra(c)}fa=b+16|0}function hc(a){L[a+16>>2]=0;L[a+8>>2]=-1;L[a+12>>2]=0;L[a>>2]=0;L[a+4>>2]=0;L[a+32>>2]=0;J[a+36|0]=1;J[a+56|0]=1;L[a+24>>2]=0;L[a+28>>2]=0;L[a+52>>2]=0;L[a+44>>2]=0;L[a+48>>2]=0;return a}function Ww(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;fa=c+16|0;return L[L[a+12>>2]+12>>2]+(L[a+8>>2]<<4)|0}function wq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b+4>>2]=L[a>>2];L[b+8>>2]=c;c=L[a+12>>2];L[b+12>>2]=L[a+8>>2];L[b+16>>2]=c}function mh(a,b){var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];P[a>>2]=P[a>>2]*P[L[c+8>>2]>>2];P[a+4>>2]=P[a+4>>2]*P[L[c+8>>2]>>2];P[a+8>>2]=P[a+8>>2]*P[L[c+8>>2]>>2];return a}function la(a,b,c,d){var e=0;e=fa-16|0;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;a=L[e+12>>2];P[a>>2]=P[L[e+8>>2]>>2];P[a+4>>2]=P[L[e+4>>2]>>2];P[a+8>>2]=P[L[e>>2]>>2];P[a+12>>2]=0}function fv(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;fa=c+16|0;return(L[a+12>>2]+4|0)+R(L[a+8>>2],184)|0}function KE(a){a=a|0;var b=0;L[a>>2]=13876;b=L[a+104>>2];if(!(b?!b|!M[a+108|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+104>>2]=0;J[a+108|0]=1;L[a+96>>2]=0;L[a+100>>2]=0;return Oa(a)|0}function qA(a,b){a=a|0;b=S(b);var c=0,d=0;wa(2678);if(L[a+280>>2]>0){while(1){d=L[L[a+288>>2]+(c<<2)>>2];ha[L[L[d>>2]+8>>2]](d,a,b);c=c+1|0;if((c|0)>2]){continue}break}}va()}function db(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=ha[L[L[c>>2]+40>>2]](c,a)|0;e=ha[L[L[c>>2]+28>>2]](c,d)|0;L[b>>2]=e;if(e){ha[L[L[c>>2]+48>>2]](c,d)}L[b+4>>2]=L[a+4>>2];return 3841}function ce(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+12>>2];a=L[c+8>>2];c=L[a+4>>2];L[b>>2]=L[a>>2];L[b+4>>2]=c;c=L[a+12>>2];L[b+8>>2]=L[a+8>>2];L[b+12>>2]=c}function bz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;a=oa(324);Wk(a,L[e+12>>2],L[e+8>>2],L[e+4>>2]);fa=e+16|0;return a|0}function Xx(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;fa=a;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;yj(L[a+12>>2],L[a+8>>2]);fa=a+16|0;fa=c+16|0}function Xt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=L[d+12>>2];b=L[a+192>>2];ha[L[L[b>>2]+8>>2]](b,a+4|0,L[d+8>>2],L[d+4>>2]);fa=d+16|0}function Ne(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];c=L[a+12>>2];if(J[c+48|0]&1){ha[L[L[c>>2]+68>>2]](c);J[c+48|0]=0}fa=a+16|0;fa=b+16|0}function tl(a){a=a|0;var b=0;L[a>>2]=19124;b=L[a+140>>2];if(!(b?!b|!M[a+144|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+140>>2]=0;J[a+144|0]=1;L[a+132>>2]=0;L[a+136>>2]=0;return a|0}function sh(a){a=a|0;var b=0;L[a>>2]=5728;if(M[a+192|0]){b=L[a+136>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+136>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}gc(a- -64|0);gc(a+4|0);return a|0}function Md(a){var b=0;b=fa-16|0;fa=b;L[b+8>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+8>>2];a:{if(L[L[a+12>>2]+236>>2]==4){L[b+12>>2]=L[b+8>>2];break a}L[b+12>>2]=0}fa=b+16|0;return L[b+12>>2]}function wv(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[a+12>>2]+144;fa=a+16|0;fa=b+16|0;return L[L[c+12>>2]+40>>2]}function ly(a){a=a|0;var b=0,c=S(0);b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];c=uc(P[L[a+12>>2]+12>>2]);P[a+8>>2]=c+c;fa=a+16|0;fa=b+16|0;return S(P[a+8>>2])}function vy(a,b,c,d){a=S(a);b=S(b);c=S(c);d=S(d);var e=0,f=0;e=fa-16|0;fa=e;P[e+12>>2]=a;P[e+8>>2]=b;P[e+4>>2]=c;P[e>>2]=d;f=sa(16);ie(f,e+12|0,e+8|0,e+4|0,e);fa=e+16|0;return f|0}function rv(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[a+12>>2]+148;fa=a+16|0;fa=b+16|0;return L[L[c+12>>2]+4>>2]}function gr(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[a+12>>2]+132;fa=a+16|0;fa=b+16|0;return L[L[c+12>>2]+4>>2]}function Zo(a,b){a=a|0;b=b|0;var c=0;c=fa-32|0;fa=c;L[c+28>>2]=a;L[c+24>>2]=b;a=L[c+28>>2];L[c+20>>2]=28275;b=L[c+20>>2];L[c+4>>2]=L[c+24>>2];L[c>>2]=a;$(b|0,1295,c|0)|0;fa=c+32|0}function RC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=L[b>>2];a=ha[L[L[a>>2]+56>>2]](a,40)|0;L[a>>2]=8684;L[a+4>>2]=L[b>>2];L[a>>2]=8712;L[a>>2]=17248;L[a+8>>2]=0;L[a+12>>2]=0;return a|0}function No(a,b){a=a|0;b=b|0;var c=0;c=fa-32|0;fa=c;L[c+28>>2]=a;L[c+24>>2]=b;a=L[c+28>>2];L[c+20>>2]=28732;b=L[c+20>>2];L[c+4>>2]=L[c+24>>2];L[c>>2]=a;$(b|0,1400,c|0)|0;fa=c+32|0}function Mo(a,b){a=a|0;b=b|0;var c=0;c=fa-32|0;fa=c;L[c+28>>2]=a;L[c+24>>2]=b;a=L[c+28>>2];L[c+20>>2]=28973;b=L[c+20>>2];L[c+4>>2]=L[c+24>>2];L[c>>2]=a;$(b|0,1403,c|0)|0;fa=c+32|0}function Dj(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[a+12>>2]+264;fa=a+16|0;fa=b+16|0;return L[L[c+12>>2]+4>>2]}function $o(a,b){a=a|0;b=b|0;var c=0;c=fa-32|0;fa=c;L[c+28>>2]=a;L[c+24>>2]=b;a=L[c+28>>2];L[c+20>>2]=27808;b=L[c+20>>2];L[c+4>>2]=L[c+24>>2];L[c>>2]=a;$(b|0,1288,c|0)|0;fa=c+32|0}function Rd(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];c=L[L[a+12>>2]+68>>2];c=ha[L[L[c>>2]+36>>2]](c)|0;fa=a+16|0;fa=b+16|0;return c|0}function Aw(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];c=fa-16|0;L[c+12>>2]=L[a+12>>2]+12;fa=a+16|0;fa=b+16|0;return L[L[c+12>>2]+4>>2]}function Ws(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;J[c+11|0]=b;b=J[c+11|0]&1;a=fa-16|0;L[a+12>>2]=L[c+12>>2];J[a+11|0]=b;J[L[a+12>>2]+1096|0]=J[a+11|0]&1;fa=c+16|0}function IH(a,b){a=a|0;b=b|0;var c=0,d=0;a=L[a+64>>2];c=L[a+8>>2];if(c){b=L[a+12>>2];d=L[b>>2];L[a+8>>2]=c-1;L[a+12>>2]=d;return b|0}L[8513]=L[8513]+1;return ha[L[6798]](b,16)|0}function wt(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;J[c+11|0]=b;b=J[c+11|0]&1;a=fa-16|0;L[a+12>>2]=L[c+12>>2];J[a+11|0]=b;J[L[a+12>>2]+524|0]=J[a+11|0]&1;fa=c+16|0}function ut(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;J[c+11|0]=b;b=J[c+11|0]&1;a=fa-16|0;L[a+12>>2]=L[c+12>>2];J[a+11|0]=b;J[L[a+12>>2]+552|0]=J[a+11|0]&1;fa=c+16|0}function pr(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;J[c+11|0]=b;b=J[c+11|0]&1;a=fa-16|0;L[a+12>>2]=L[c+12>>2];J[a+11|0]=b;J[L[a+12>>2]+170|0]=J[a+11|0]&1;fa=c+16|0}function ft(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;J[c+11|0]=b;b=J[c+11|0]&1;a=fa-16|0;L[a+12>>2]=L[c+12>>2];J[a+11|0]=b;J[L[a+12>>2]+736|0]=J[a+11|0]&1;fa=c+16|0}function et(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;J[c+11|0]=b;b=J[c+11|0]&1;a=fa-16|0;L[a+12>>2]=L[c+12>>2];J[a+11|0]=b;J[L[a+12>>2]+737|0]=J[a+11|0]&1;fa=c+16|0}function dk(a){a=a|0;var b=0;L[a>>2]=23152;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;return a|0}function Vs(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+1104>>2]=P[a+8>>2];fa=c+16|0}function Us(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+1100>>2]=P[a+8>>2];fa=c+16|0}function Lg(a){a=a|0;var b=0;L[a>>2]=16724;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;return a|0}function Ib(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;J[c+11|0]=b;b=J[c+11|0]&1;a=fa-16|0;L[a+12>>2]=L[c+12>>2];J[a+11|0]=b;J[L[a+12>>2]+21|0]=J[a+11|0]&1;fa=c+16|0}function vt(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+440>>2]=P[a+8>>2];fa=c+16|0}function vn(a){a=a|0;var b=0;L[a>>2]=6544;b=L[a+20>>2];if(!(b?!b|!M[a+24|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+20>>2]=0;J[a+24|0]=1;L[a+12>>2]=0;L[a+16>>2]=0;return a|0}function tc(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+184>>2]=P[a+8>>2];fa=c+16|0}function om(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;K[d+6>>1]=c;a=L[d+12>>2];ha[L[L[a>>2]+36>>2]](a,L[d+8>>2],N[d+6>>1]<<16>>16,-1);fa=d+16|0}function dt(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+684>>2]=P[a+8>>2];fa=c+16|0}function bv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=oa(116);Ld(a,L[d+12>>2],L[d+8>>2],L[d+4>>2]&65535,0,0);fa=d+16|0;return a|0}function Zs(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+188>>2]=P[a+8>>2];fa=c+16|0}function Vq(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+104>>2]=P[a+8>>2];fa=c+16|0}function Pc(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+252>>2]=P[a+8>>2];fa=c+16|0}function Mc(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+248>>2]=P[a+8>>2];fa=c+16|0}function Fj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;K[d+6>>1]=c;a=L[d+12>>2];ha[L[L[a>>2]+36>>2]](a,L[d+8>>2],N[d+6>>1]<<16>>16,-3);fa=d+16|0}function BC(a){a=a|0;var b=0;L[a>>2]=4720;b=L[a+84>>2];if(!(b?!b|!M[a+88|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+84>>2]=0;J[a+88|0]=1;L[a+76>>2]=0;L[a+80>>2]=0;return a|0}function wc(a){var b=0,c=0;b=L[6804];c=a+7&-8;a=b+c|0;a:{if(a>>>0<=b>>>0?c:0){break a}if(a>>>0>ia()<<16>>>0){if(!(ba(a|0)|0)){break a}}L[6804]=a;return b}L[8527]=48;return-1}function kb(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;L[L[a+12>>2]+240>>2]=L[a+8>>2];fa=c+16|0}function Wm(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+12>>2]=P[a+8>>2];fa=c+16|0}function St(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;L[L[a+12>>2]+504>>2]=L[a+8>>2];fa=c+16|0}function Rc(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;L[L[a+12>>2]+204>>2]=L[a+8>>2];fa=c+16|0}function Mj(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;a=L[c+12>>2];a=ha[L[L[a>>2]+52>>2]](a,P[c+8>>2],1,S(.01666666753590107))|0;fa=c+16|0;return a|0}function In(a){a=a|0;var b=0;L[a>>2]=5584;b=L[a+16>>2];if(!(b?!b|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}L[a+16>>2]=0;J[a+20|0]=1;L[a+8>>2]=0;L[a+12>>2]=0;return a|0}function Gb(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+16>>2]=P[a+8>>2];fa=c+16|0}function qo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;gf(L[d+12>>2],L[d+4>>2]);if(L[d+8>>2]){P[d>>2]=-1;mh(L[d+4>>2],d)}fa=d+16|0}function SF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(b>>>0<=11){b=b<<2;e=L[b+12136>>2];b=L[b+12088>>2]}else{b=0}ha[L[L[a>>2]+108>>2]](a,b,c);ha[L[L[a>>2]+108>>2]](a,e,d)}function Qd(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+4>>2]=P[a+8>>2];fa=c+16|0}function Pd(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]+8>>2]=P[a+8>>2];fa=c+16|0}function Mq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;L[L[a+12>>2]+84>>2]=L[a+8>>2];fa=c+16|0}function Lq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;L[L[a+12>>2]+88>>2]=L[a+8>>2];fa=c+16|0}function zy(){var a=0,b=0,c=0,d=0;b=sa(4);L[b>>2]=0;a=fa-16|0;fa=a;L[a+12>>2]=b;c=fa-16|0;d=L[a+12>>2];L[c+12>>2]=d;L[L[c+12>>2]>>2]=1184;L[d>>2]=1032;fa=a+16|0;return b|0}function xw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;J[e+3|0]=d;um(L[e+12>>2],L[e+8>>2],L[e+4>>2],J[e+3|0]&1);fa=e+16|0}function tf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;J[e+3|0]=d;vf(L[e+12>>2],L[e+8>>2],L[e+4>>2],J[e+3|0]&1);fa=e+16|0}function Rx(){var a=0,b=0,c=0,d=0;b=sa(4);L[b>>2]=0;a=fa-16|0;fa=a;L[a+12>>2]=b;c=fa-16|0;d=L[a+12>>2];L[c+12>>2]=d;L[L[c+12>>2]>>2]=1384;L[d>>2]=1308;fa=a+16|0;return b|0}function Ko(a,b){a=a|0;b=b|0;var c=0,d=0;c=fa-144|0;fa=c;L[c+140>>2]=a;L[c+136>>2]=b;a=c+8|0;b=L[c+140>>2];xj(a,b+68|0);d=c+72|0;Td(d,a,b+4|0);sb(L[c+136>>2],d);fa=c+144|0}function Ct(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+8>>2];b=L[c+12>>2];vg(b);b=b+(a<<2)|0;P[b+1316>>2]=P[b+((a|0)<3?1256:1180)>>2];fa=c+16|0}function Sd(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;b=P[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];P[a+8>>2]=b;P[L[a+12>>2]>>2]=P[a+8>>2];fa=c+16|0}function sw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d;Yl(L[e+12>>2],L[e+8>>2],L[e+4>>2],L[e>>2],0);fa=e+16|0}function lr(a,b,c){a=a|0;b=S(b);c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;P[d+8>>2]=b;L[d+4>>2]=c;P[(L[L[d+12>>2]+144>>2]+R(L[d+4>>2],284)|0)+252>>2]=P[d+8>>2];fa=d+16|0}function kr(a,b,c){a=a|0;b=S(b);c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;P[d+8>>2]=b;L[d+4>>2]=c;P[(L[L[d+12>>2]+144>>2]+R(L[d+4>>2],284)|0)+232>>2]=P[d+8>>2];fa=d+16|0}function eI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((b|0)!=(c|0)){d=L[L[a+4>>2]+136>>2];ha[L[L[d>>2]+8>>2]](d,L[b+36>>2],L[c+36>>2])|0;a=L[a+4>>2];L[a+160>>2]=L[a+160>>2]+1}}function dr(a,b,c){a=a|0;b=S(b);c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;P[d+8>>2]=b;L[d+4>>2]=c;P[(L[L[d+12>>2]+144>>2]+R(L[d+4>>2],284)|0)+256>>2]=P[d+8>>2];fa=d+16|0}function $h(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];L[a>>2]=1632;mb(a+112|0);mb(a+92|0);mb(a+72|0);mb(a+20|0);L[(fa-16|0)+12>>2]=a;fa=b+16|0;return a|0}function Zb(a,b){var c=0;c=fa-16|0;fa=c;L[c+12>>2]=b;P[c+8>>2]=-P[L[c+12>>2]>>2];P[c+4>>2]=-P[L[c+12>>2]+4>>2];P[c>>2]=-P[L[c+12>>2]+8>>2];la(a,c+8|0,c+4|0,c);fa=c+16|0}function $k(a){var b=0,c=0;b=fa-16|0;fa=b;L[b+8>>2]=a;a=L[b+8>>2];L[b+12>>2]=a;c=a+48|0;while(1){L[(fa-16|0)+12>>2]=a;a=a+16|0;if((c|0)!=(a|0)){continue}break}fa=b+16|0}function jw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;J[d+11|0]=b;J[d+10|0]=c;a=oa(76);Bm(a,L[d+12>>2],J[d+11|0]&1,J[d+10|0]&1);fa=d+16|0;return a|0}function Gr(a,b,c){a=a|0;b=b|0;c=S(c);var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;P[d+4>>2]=c;a=oa(184);ul(a,L[d+12>>2],L[d+8>>2],P[d+4>>2],1);fa=d+16|0;return a|0}function rC(a){a=a|0;var b=0;a=L[a+140>>2];b=L[a+32>>2];if(b){if((b|0)>=2){b=b-1|0}else{b=L[a+8>>2];ha[L[L[b>>2]+24>>2]](b,L[a+28>>2]);L[a+36>>2]=0;b=0}L[a+32>>2]=b}}function dA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;J[d+7|0]=c;a=oa(1312);ll(a,L[d+12>>2],L[d+8>>2],J[d+7|0]&1);fa=d+16|0;return a|0}function Hd(a,b){var c=0;if(L[b+40>>2]){Hd(a,L[b+36>>2]);Hd(a,L[b+40>>2])}if(L[a>>2]==(b|0)){L[a>>2]=0}c=L[a+4>>2];if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}L[a+4>>2]=b}function pz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=L[b>>2];c=ha[L[L[c>>2]+56>>2]](c,20)|0;d=M[a+4|0];L[c>>2]=8684;L[c+4>>2]=L[b>>2];J[c+16|0]=d;L[c>>2]=22720;return c|0}function ot(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;J[d+7|0]=c;a=oa(764);fl(a,L[d+12>>2],L[d+8>>2],J[d+7|0]&1);fa=d+16|0;return a|0}function Uk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=L[d+12>>2];ha[L[L[a>>2]+136>>2]](a,L[d+8>>2],L[d+4>>2]);fa=d+16|0}function Ui(a,b){var c=0,d=0;c=fa-48|0;fa=c;L[c+44>>2]=a;L[c+40>>2]=b;b=c+8|0;a=L[c+44>>2];ua(b,a+264|0,L[c+40>>2]);d=c+24|0;Kb(d,b,a+544|0);hb(a+328|0,d);fa=c+48|0}function Ti(a,b){var c=0,d=0;c=fa-48|0;fa=c;L[c+44>>2]=a;L[c+40>>2]=b;b=c+8|0;a=L[c+44>>2];Kb(b,L[c+40>>2],a+348|0);d=c+24|0;Ga(d,b,a+344|0);hb(a+312|0,d);fa=c+48|0}function Jt(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];b=L[c+8>>2];c=L[b+4>>2];L[a+348>>2]=L[b>>2];L[a+352>>2]=c;L[a+356>>2]=L[b+8>>2]}function Dr(a,b,c){a=a|0;b=b|0;c=S(c);var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;P[d+4>>2]=c;a=L[d+12>>2];ha[L[L[a>>2]+20>>2]](a,L[d+8>>2],P[d+4>>2]);fa=d+16|0}function Ca(a,b,c){a=a|0;b=S(b);c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;P[d+8>>2]=b;L[d+4>>2]=c;a=L[d+12>>2];ha[L[L[a>>2]+32>>2]](a,P[d+8>>2],L[d+4>>2]);fa=d+16|0}function Be(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=L[d+12>>2];ha[L[L[a>>2]+104>>2]](a,L[d+8>>2],L[d+4>>2]);fa=d+16|0}function Ar(a,b,c){a=a|0;b=b|0;c=S(c);var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;P[d+4>>2]=c;a=L[d+12>>2];ha[L[L[a>>2]+36>>2]](a,L[d+8>>2],P[d+4>>2]);fa=d+16|0}function Ae(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=L[d+12>>2];ha[L[L[a>>2]+108>>2]](a,L[d+8>>2],L[d+4>>2]);fa=d+16|0}function li(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=L[d+12>>2];ha[L[L[a>>2]+40>>2]](a,L[d+8>>2],L[d+4>>2]);fa=d+16|0}function Tf(a,b,c){a=a|0;b=b|0;c=S(c);var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;P[d+4>>2]=c;a=L[d+12>>2];ha[L[L[a>>2]+8>>2]](a,L[d+8>>2],P[d+4>>2]);fa=d+16|0}function Rl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=L[d+12>>2];ha[L[L[a>>2]+16>>2]](a,L[d+8>>2],L[d+4>>2]);fa=d+16|0}function Nl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=L[d+12>>2];ha[L[L[a>>2]+20>>2]](a,L[d+8>>2],L[d+4>>2]);fa=d+16|0}function Nj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;J[d+7|0]=c;a=L[d+12>>2];ha[L[L[a>>2]+56>>2]](a,L[d+8>>2],J[d+7|0]&1);fa=d+16|0}function Sa(a,b){var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];b=L[c+8>>2];return S(S(P[a+8>>2]*P[b+8>>2])+S(S(P[a>>2]*P[b>>2])+S(P[a+4>>2]*P[b+4>>2])))}function Iq(){var a=0,b=0,c=0,d=0;b=sa(4);a=fa-16|0;fa=a;L[a+12>>2]=b;c=fa-16|0;d=L[a+12>>2];L[c+12>>2]=d;L[L[c+12>>2]>>2]=5328;L[d>>2]=5228;fa=a+16|0;return b|0}function Oj(a,b,c,d){var e=0,f=0;e=L[a+4>>2];f=L[a>>2];a=0;a:{if(!c){break a}a=e>>8;if(!(e&1)){break a}a=L[a+L[c>>2]>>2]}ha[L[L[f>>2]+28>>2]](f,b,a+c|0,e&2?d:2)}function Jj(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;L[7547]=L[a+8>>2];fa=c+16|0}function Ij(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;L[8114]=L[a+8>>2];fa=c+16|0}function Hj(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;b=L[c+8>>2];a=fa-16|0;L[a+12>>2]=L[c+12>>2];L[a+8>>2]=b;L[8113]=L[a+8>>2];fa=c+16|0}function sy(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;fa=a;L[a+12>>2]=L[b+12>>2];c=L[a+12>>2];P[a+8>>2]=Sf(c);Aj(c,a+8|0);fa=a+16|0;fa=b+16|0}function Ft(a,b,c){a=a|0;b=b|0;c=S(c);var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;P[d+4>>2]=c;P[(L[d+12>>2]+(L[d+8>>2]<<2)|0)+1340>>2]=P[d+4>>2];fa=d+16|0}function Et(a,b,c){a=a|0;b=b|0;c=S(c);var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;P[d+4>>2]=c;P[(L[d+12>>2]+(L[d+8>>2]<<2)|0)+1364>>2]=P[d+4>>2];fa=d+16|0}function Bt(a,b,c){a=a|0;b=b|0;c=S(c);var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;P[d+4>>2]=c;P[(L[d+12>>2]+(L[d+8>>2]<<2)|0)+1316>>2]=P[d+4>>2];fa=d+16|0}function Bp(a,b,c){a=S(a);b=S(b);c=S(c);var d=0,e=0;d=fa-16|0;fa=d;P[d+12>>2]=a;P[d+8>>2]=b;P[d+4>>2]=c;e=oa(16);la(e,d+12|0,d+8|0,d+4|0);fa=d+16|0;return e|0}function go(a,b,c,d){a=a|0;b=S(b);c=S(c);d=S(d);var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;P[e+8>>2]=b;P[e+4>>2]=c;P[e>>2]=d;la(L[e+12>>2],e+8|0,e+4|0,e);fa=e+16|0}function Am(a){a=a|0;var b=0;L[a>>2]=12256;if(M[a+61|0]){b=L[a+52>>2];ha[L[L[b>>2]>>2]](b)|0;b=L[a+52>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}return a|0}function zC(a,b){a=a|0;b=b|0;var c=0;c=L[b+4>>2];L[a+156>>2]=L[b>>2];L[a+160>>2]=c;c=L[b+12>>2];L[a+164>>2]=L[b+8>>2];L[a+168>>2]=c;ha[L[L[a>>2]+72>>2]](a)}function cA(a){a=a|0;L[8292]=20800;a=L[8416];if(!(a?!a|!M[33668]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}J[33668]=1;L[8414]=0;L[8415]=0;L[8416]=0;L[8292]=6712}function TA(a){a=a|0;L[8134]=20800;a=L[8258];if(!(a?!a|!M[33036]:1)){L[8514]=L[8514]+1;ha[L[6799]](a)}J[33036]=1;L[8256]=0;L[8257]=0;L[8258]=0;L[8134]=6712}function uc(a){var b=0;b=fa-16|0;fa=b;P[b+12>>2]=a;if(P[b+12>>2]>2]=-1}if(P[b+12>>2]>S(1)){P[b+12>>2]=1}a=ob(P[b+12>>2]);fa=b+16|0;return a}function uA(a,b){a=a|0;b=b|0;var c=0;if(M[a+273|0]){c=L[a+200>>2];if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}}L[a+200>>2]=b;J[a+273|0]=0;L[L[a+196>>2]+8>>2]=b}function qw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;J[d+7|0]=c;a=Pe(L[d+12>>2],L[d+8>>2],J[d+7|0]&1);fa=d+16|0;return a|0}function ab(a){var b=0,c=0;b=a*a;c=b*a;return S(c*(b*b)*(b*2718311493989822e-21+-.00019839334836096632)+(c*(b*.008333329385889463+-.16666666641626524)+a))}function Np(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;a=xk(L[d+12>>2],L[d+8>>2],L[d+4>>2]);fa=d+16|0;return a|0}function Db(a,b){var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=0;L[c+4>>2]=b;L[c>>2]=L[c+8>>2];while(1){if(L[c>>2]>2]){L[c>>2]=L[c>>2]+1;continue}break}}function Eq(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;c=L[b+12>>2];if(c){a=fa-16|0;fa=a;L[a+12>>2]=c;rc(L[a+12>>2]+56|0);fa=a+16|0;ra(c)}fa=b+16|0}function Yo(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];L[b+8>>2]=28501;c=L[b+8>>2];L[b>>2]=a;a=$(c|0,1298,b|0)|0;fa=b+16|0;return a|0}function Tx(a){a=a|0;var b=0;b=fa-80|0;fa=b;L[b+76>>2]=a;if(!M[29812]){Pb(29748);J[29812]=1}a=b+12|0;xj(a,L[b+76>>2]);sb(29748,a);fa=b+80|0;return 29748}function lm(a){a=a|0;var b=S(0),c=S(0);b=P[a+28>>2];c=S(ha[L[L[a>>2]+48>>2]](a));S(ha[L[L[a>>2]+48>>2]](a));S(ha[L[L[a>>2]+48>>2]](a));return S(S(b+c))}function kE(a){a=a|0;var b=S(0),c=S(0);b=P[a+32>>2];S(ha[L[L[a>>2]+48>>2]](a));c=S(ha[L[L[a>>2]+48>>2]](a));S(ha[L[L[a>>2]+48>>2]](a));return S(S(b+c))}function aI(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(!c){break a}a=L[b+8>>2];if(!a){break a}ha[L[L[a>>2]>>2]](a)|0;ha[L[L[c>>2]+60>>2]](c,L[b+8>>2]);L[b+8>>2]=0}}function Rh(a){var b=0;b=fa-16|0;L[b+12>>2]=a;a=L[b+12>>2];a:{if(P[a>>2]>2]){a=P[a+4>>2]>2]?2:1;break a}a=P[a>>2]>2]?2:0}return a}function jd(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+8>>2];b=L[c+12>>2];if((L[b+216>>2]&-2)!=4){L[b+216>>2]=a}fa=c+16|0}function el(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];a=ha[L[L[a>>2]+124>>2]](a,L[c+8>>2])|0;fa=c+16|0;return a|0}function JH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;fa=e;L[e+12>>2]=a;L[e+8>>2]=c;L[e+4>>2]=6652;ha[L[L[b>>2]+48>>2]](b,e+4|0,d);fa=e+16|0}function zE(a,b){a=a|0;b=b|0;var c=0,d=0;d=L[b+4>>2];c=L[a+92>>2];L[c+4>>2]=L[b>>2];L[c+8>>2]=d;d=L[b+12>>2];L[c+12>>2]=L[b+8>>2];L[c+16>>2]=d;Sb(a)}function kn(a){a=a|0;var b=0,c=0;L[a>>2]=8836;a:{if(!M[a+16|0]){break a}b=L[a+20>>2];if(!b){break a}c=L[a+4>>2];ha[L[L[c>>2]+16>>2]](c,b)}return a|0}function ih(a){a=a|0;var b=0;L[a>>2]=9468;b=L[a+48>>2];ha[L[L[b>>2]+20>>2]](b,L[a+64>>2]);b=L[a+48>>2];ha[L[L[b>>2]+16>>2]](b,L[a+64>>2]);return a|0}function Yq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;fa=c+16|0;return S(P[(L[L[c+12>>2]+144>>2]+R(L[c+8>>2],284)|0)+232>>2])}function Ym(a){a=a|0;var b=0,c=0;L[a>>2]=10180;a:{if(!M[a+8|0]){break a}b=L[a+12>>2];if(!b){break a}c=L[a+4>>2];ha[L[L[c>>2]+16>>2]](c,b)}return a|0}function Xm(a){a=a|0;var b=0,c=0;L[a>>2]=10252;a:{if(!M[a+8|0]){break a}b=L[a+12>>2];if(!b){break a}c=L[a+4>>2];ha[L[L[c>>2]+16>>2]](c,b)}return a|0}function Ue(a,b){a=a|0;b=b|0;var c=S(0),d=S(0),e=S(0);c=P[b>>2];d=P[b+4>>2];e=P[b+8>>2];L[a+24>>2]=0;P[a+20>>2]=T(e);P[a+16>>2]=T(d);P[a+12>>2]=T(c)}function Om(a){a=a|0;var b=0,c=0;L[a>>2]=11644;a:{if(!M[a+8|0]){break a}b=L[a+12>>2];if(!b){break a}c=L[a+4>>2];ha[L[L[c>>2]+16>>2]](c,b)}return a|0}function Oa(a){a=a|0;var b=0;L[a>>2]=15836;b=L[a+52>>2];if(b){ha[L[L[b>>2]>>2]](b)|0;b=L[a+52>>2];if(b){L[8514]=L[8514]+1;ha[L[6799]](b)}}return a|0}function Nm(a){a=a|0;var b=0,c=0;L[a>>2]=11720;a:{if(!M[a+8|0]){break a}b=L[a+12>>2];if(!b){break a}c=L[a+4>>2];ha[L[L[c>>2]+16>>2]](c,b)}return a|0}function Lw(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];a=ha[L[L[a>>2]+92>>2]](a,L[c+8>>2])&1;fa=c+16|0;return a|0}function Ik(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];a=ha[L[L[a>>2]+40>>2]](a,L[c+8>>2])|0;fa=c+16|0;return a|0}function Gs(a){a=a|0;var b=0,c=S(0);b=fa-16|0;L[b+12>>2]=a;c=P[L[b+12>>2]+48>>2];a:{if(S(T(c))>2],f)){Wf(b,c,d,e);return}a=L[a+8>>2];ha[L[L[a>>2]+20>>2]](a,b,c,d,e,f)}function $H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=c;L[d+8>>2]=a;L[d+4>>2]=b;L[d>>2]=6184;ha[L[L[a>>2]+48>>2]](a,d,c);fa=d+16|0}function ek(a){L[a+12>>2]=1065353216;L[a+4>>2]=5;L[a+8>>2]=0;J[a+16|0]=1;J[a+36|0]=1;L[a>>2]=23152;L[a+32>>2]=0;L[a+24>>2]=0;L[a+28>>2]=0;return a}function Qj(a){var b=0,c=0;c=a>>>23&255;b=0;a:{if(c>>>0<127){break a}b=2;if(c>>>0>150){break a}c=1<<150-c;b=0;if(c-1&a){break a}b=a&c?1:2}return b}function TH(a,b){a=a|0;b=b|0;var c=0;c=L[a+4>>2];if(!((c|0)!=L[b>>2]&(c|0)!=L[b+4>>2])){c=L[a+8>>2];ha[L[L[c>>2]+32>>2]](c,b,L[a+12>>2])}return 0}function cv(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=oa(116);Ld(a,L[c+12>>2],L[c+8>>2],16384,0,0);fa=c+16|0;return a|0}function Jo(a,b){a=a|0;b=b|0;var c=0;c=fa-80|0;fa=c;L[c+76>>2]=a;L[c+72>>2]=b;a=c+8|0;b=L[c+76>>2];Td(a,L[c+72>>2],b+68|0);sb(b+4|0,a);fa=c+80|0}function yw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;um(L[d+12>>2],L[d+8>>2],L[d+4>>2],1);fa=d+16|0}function uf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;vf(L[d+12>>2],L[d+8>>2],L[d+4>>2],0);fa=d+16|0}function qD(a,b,c){a=a|0;b=b|0;c=c|0;a=(b<<4)+a|0;b=L[a+108>>2];L[c+8>>2]=L[a+104>>2];L[c+12>>2]=b;b=L[a+100>>2];L[c>>2]=L[a+96>>2];L[c+4>>2]=b}function LH(a,b,c){a=a|0;b=b|0;c=c|0;a=0;b=L[b+204>>2];a:{if(b&4){break a}c=L[c+204>>2];if(c&4){break a}if(!(b&3)){return 1}a=!(c&3)}return a|0}function sr(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;a=L[c+12>>2];b=P[c+8>>2];P[a+36>>2]=b;P[a+40>>2]=Fa(b);fa=c+16|0}function ru(a,b,c){a=a|0;b=S(b);c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;P[d+8>>2]=b;L[d+4>>2]=c;ve(L[d+12>>2],P[d+8>>2],L[d+4>>2]);fa=d+16|0}function qz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=L[b>>2];a=ha[L[L[a>>2]+56>>2]](a,24)|0;L[a>>2]=8684;L[a+4>>2]=L[b>>2];L[a>>2]=23080;return a|0}function ir(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;J[d+7|0]=c;mg(L[d+12>>2],L[d+8>>2],J[d+7|0]&1);fa=d+16|0}function hu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;rb(L[d+12>>2],L[d+8>>2],L[d+4>>2]);fa=d+16|0}function bb(a){var b=0;a=a*a;b=a*a;return S(a*b*(a*2439044879627741e-20+-.001388676377460993)+(b*.04166662332373906+(a*-.499999997251031+1)))}function Yw(a,b,c){a=a|0;b=b|0;c=S(c);var d=0;d=fa-16|0;L[d+12>>2]=a;L[d+8>>2]=b;P[d+4>>2]=c;P[(L[d+12>>2]+20|0)+(L[d+8>>2]<<2)>>2]=P[d+4>>2]}function Xp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;se(L[d+12>>2],L[d+8>>2],L[d+4>>2]);fa=d+16|0}function Wq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;J[d+7|0]=c;lg(L[d+12>>2],L[d+8>>2],J[d+7|0]&1);fa=d+16|0}function Nw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;J[d+7|0]=c;tm(L[d+12>>2],L[d+8>>2],J[d+7|0]&1);fa=d+16|0}function Mv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;Lb(L[d+12>>2],L[d+8>>2],L[d+4>>2]);fa=d+16|0}function Lv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;aj(L[d+12>>2],L[d+8>>2],L[d+4>>2]);fa=d+16|0}function Aj(a,b){var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];P[c+4>>2]=S(1)/P[L[c+8>>2]>>2];a=zj(a,c+4|0);fa=c+16|0;return a}function zl(a,b){var c=0,d=0;d=Al(a);c=L[a+288>>2];L[b+8>>2]=L[a+284>>2];L[b+12>>2]=c;c=L[a+280>>2];L[b>>2]=L[a+276>>2];L[b+4>>2]=c;return d}function rG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=L[b>>2];a=ha[L[L[a>>2]+56>>2]](a,8)|0;L[a>>2]=8684;L[a+4>>2]=L[b>>2];L[a>>2]=11304;return a|0}function VF(a,b,c){a=a|0;b=b|0;c=c|0;if(b>>>0<=5){L[c+12>>2]=0;a=b<<2;P[c+8>>2]=P[a+12064>>2];P[c+4>>2]=P[a+12040>>2];P[c>>2]=P[a+12016>>2]}}function jr(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;fa=c+16|0;return(L[L[c+12>>2]+144>>2]+R(L[c+8>>2],284)|0)+92|0}function Cq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c;L[(L[d+12>>2]+8|0)+(L[d+8>>2]<<2)>>2]=L[d+4>>2]}function wj(a){var b=0;b=fa-16|0;L[b+12>>2]=a;a=L[b+12>>2];L[a>>2]=1608;P[a+4>>2]=1;L[a+8>>2]=0;K[a+12>>1]=1;K[a+14>>1]=65535;L[a+16>>2]=0}function Im(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+36>>2]](a,L[c+8>>2],1,-1);fa=c+16|0}function Gj(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+36>>2]](a,L[c+8>>2],2,-3);fa=c+16|0}function og(a){var b=0;b=fa-16|0;L[b+12>>2]=a;a=L[b+12>>2];L[a>>2]=0;L[a+4>>2]=0;L[a+8>>2]=4096;L[a+12>>2]=4096;L[a+16>>2]=0;L[a+20>>2]=1}function lw(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;J[c+11|0]=b;a=oa(76);Bm(a,L[c+12>>2],J[c+11|0]&1,1);fa=c+16|0;return a|0}function Ay(){var a=0,b=0;b=oa(284);a=Cd(b);L[a>>2]=11364;L[a+236>>2]=4;J[a+280|0]=1;L[a+276>>2]=0;L[a+268>>2]=0;L[a+272>>2]=0;return b|0}function tw(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;J[c+15|0]=a;J[c+14|0]=b;a=oa(172);Kg(a,J[c+15|0]&1,J[c+14|0]&1);fa=c+16|0;return a|0}function pt(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=oa(764);fl(a,L[c+12>>2],L[c+8>>2],0);fa=c+16|0;return a|0}function ex(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=oa(56);c=Sg(a,L[b+12>>2]);L[c+52>>2]=0;L[c>>2]=14796;fa=b+16|0;return a|0}function dx(a){a=a|0;var b=0,c=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=oa(56);c=Sg(a,L[b+12>>2]);L[c+52>>2]=2;L[c>>2]=14900;fa=b+16|0;return a|0}function Vj(a,b,c){L[a+4>>2]=0;L[a+8>>2]=0;L[a>>2]=b;L[a+32>>2]=0;L[a+24>>2]=0;L[a+28>>2]=0;L[a+20>>2]=c;L[a+12>>2]=0;L[a+16>>2]=0;$f(a)}function nr(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;J[c+11|0]=b;a=L[c+12>>2];ha[L[L[a>>2]+52>>2]](a,J[c+11|0]&1);fa=c+16|0}function ix(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;J[c+11|0]=b;a=oa(96);pm(a,L[c+12>>2],J[c+11|0]&1);fa=c+16|0;return a|0}function Wi(a,b){var c=0;c=fa-32|0;fa=c;L[c+28>>2]=a;L[c+24>>2]=b;a=c+8|0;b=L[c+28>>2];Kb(a,L[c+24>>2],b+544|0);hb(b+428|0,a);fa=c+32|0}function Vi(a,b){var c=0;c=fa-32|0;fa=c;L[c+28>>2]=a;L[c+24>>2]=b;a=c+8|0;b=L[c+28>>2];Kb(a,L[c+24>>2],b+348|0);hb(b+412|0,a);fa=c+32|0}function Vf(a,b,c,d,e,f){var g=0,h=0;g=L[a+4>>2];h=g>>8;a=L[a>>2];if(g&1){h=L[L[d>>2]+h>>2]}ha[L[L[a>>2]+20>>2]](a,b,c,d+h|0,g&2?e:2,f)}function Pj(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+56>>2]](a,L[c+8>>2],0);fa=c+16|0}function xv(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=oa(212);Yi(a,L[c+12>>2],L[c+8>>2]);fa=c+16|0;return a|0}function _q(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+16>>2]](a,P[c+8>>2]);fa=c+16|0}function Zc(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return(L[L[a+12>>2]+204>>2]&3)!=0|0}function Ua(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+44>>2]](a,P[c+8>>2]);fa=c+16|0}function Tq(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+20>>2]](a,P[c+8>>2]);fa=c+16|0}function Pw(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=oa(112);We(a,L[c+12>>2],L[c+8>>2]);fa=c+16|0;return a|0}function Ox(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=oa(200);Pf(a,L[c+12>>2],L[c+8>>2]);fa=c+16|0;return a|0}function $c(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return(L[L[a+12>>2]+204>>2]&2)!=0|0}function za(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+24>>2]](a,L[c+8>>2]);fa=c+16|0}function yf(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+68>>2]](a,L[c+8>>2]);fa=c+16|0}function qq(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];a=L[a+12>>2];L[a+4>>2]=L[a+4>>2]-1;fa=b+16|0}function pi(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+36>>2]](a,L[c+8>>2]);fa=c+16|0}function nd(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+16>>2]](a,L[c+8>>2]);fa=c+16|0}function gi(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+44>>2]](a,L[c+8>>2]);fa=c+16|0}function er(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;fa=c+16|0;return L[L[c+12>>2]+144>>2]+R(L[c+8>>2],284)|0}function ck(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+72>>2]](a,L[c+8>>2]);fa=c+16|0}function Xj(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+84>>2]](a,L[c+8>>2]);fa=c+16|0}function Uf(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+60>>2]](a,L[c+8>>2]);fa=c+16|0}function Rj(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+92>>2]](a,L[c+8>>2]);fa=c+16|0}function RE(a,b){a=a|0;b=b|0;var c=0;c=L[b+4>>2];L[a+12>>2]=L[b>>2];L[a+16>>2]=c;c=L[b+12>>2];L[a+20>>2]=L[b+8>>2];L[a+24>>2]=c;Sb(a)}function Jb(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+12>>2]](a,L[c+8>>2]);fa=c+16|0}function Ge(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+40>>2]](a,L[c+8>>2]);fa=c+16|0}function Cr(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+28>>2]](a,L[c+8>>2]);fa=c+16|0}function Br(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+32>>2]](a,L[c+8>>2]);fa=c+16|0}function $v(){var a=0,b=0,c=0;c=oa(160);a=fa-16|0;fa=a;L[a+12>>2]=c;b=L[a+12>>2];Re(b);L[b>>2]=4548;L[b+92>>2]=4;fa=a+16|0;return c|0}function $d(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+64>>2]](a,L[c+8>>2]);fa=c+16|0}function un(a,b){a=a|0;b=b|0;var c=0,d=S(0);c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;d=Sa(L[c+12>>2],L[c+8>>2]);fa=c+16|0;return S(d)}function py(a,b){a=a|0;b=b|0;var c=0,d=S(0);c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;d=_b(L[c+12>>2],L[c+8>>2]);fa=c+16|0;return S(d)}function eh(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=L[c+12>>2];ha[L[L[a>>2]+8>>2]](a,L[c+8>>2]);fa=c+16|0}function Qt(){var a=0,b=0;b=sa(12);a=fa-16|0;L[a+12>>2]=b;a=L[a+12>>2];P[a>>2]=.30000001192092896;P[a+4>>2]=1;P[a+8>>2]=0;return b|0}function $q(a,b){a=a|0;b=b|0;var c=0,d=S(0);c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;d=Ck(L[c+12>>2],L[c+8>>2]);fa=c+16|0;return S(d)}function qm(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return P[L[a+12>>2]+4>>2]>2]=a;a=L[b+12>>2];L[(fa-16|0)+12>>2]=a+4;$k(a+28|0);L[(fa-16|0)+12>>2]=a+76;fa=b+16|0}function le(a,b,c,d,e){var f=0,g=0;f=L[a+4>>2];g=f>>8;a=L[a>>2];if(f&1){g=L[L[c>>2]+g>>2]}ha[L[L[a>>2]+24>>2]](a,b,c+g|0,f&2?d:2,e)}function aE(a,b){a=a|0;b=b|0;var c=0;c=L[b+4>>2];L[a+108>>2]=L[b>>2];L[a+112>>2]=c;c=L[b+12>>2];L[a+116>>2]=L[b+8>>2];L[a+120>>2]=c}function Sf(a){var b=0,c=S(0);b=fa-16|0;fa=b;L[b+12>>2]=a;c=$b(L[b+12>>2]);a=fa-16|0;P[a+12>>2]=c;fa=b+16|0;return S(_(P[a+12>>2]))}function IA(a,b){a=a|0;b=b|0;var c=0;c=L[b+252>>2];L[a>>2]=L[b+248>>2];L[a+4>>2]=c;c=L[b+260>>2];L[a+8>>2]=L[b+256>>2];L[a+12>>2]=c}function sa(a){var b=0;a=a>>>0<=1?1:a;a:{while(1){b=Yf(a);if(b){break a}b=L[8654];if(b){ha[b|0]();continue}break}aa();D()}return b}function _s(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return S(P[L[a+12>>2]+1084>>2])}function $s(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return S(P[L[a+12>>2]+1080>>2])}function uu(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return S(P[L[a+12>>2]+444>>2])}function tu(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return S(P[L[a+12>>2]+448>>2])}function ch(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+8>>2]!=0|0}function br(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return S(P[L[a+12>>2]+112>>2])}function _H(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;fa=d;L[d+12>>2]=b;L[d+8>>2]=6356;ha[L[L[a>>2]+48>>2]](a,d+8|0,c);fa=d+16|0}function Yc(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return S(P[L[a+12>>2]+228>>2])}function Xc(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return S(P[L[a+12>>2]+224>>2])}function Wc(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return S(P[L[a+12>>2]+232>>2])}function Op(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=xk(L[c+12>>2],L[c+8>>2],8192);fa=c+16|0;return a|0}function Iz(a){a=a|0;if(!(J[33804]&1)){L[8449]=1065353216;L[8450]=0;L[8447]=1065353216;L[8448]=1065353216;J[33804]=1}return 33788}function wo(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=b;P[c+8>>2]=1;P[c+4>>2]=1;P[c>>2]=1;la(a,c+8|0,c+4|0,c);fa=c+16|0}function hh(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return S(P[L[a+12>>2]+12>>2])}function _c(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+204>>2]&1}function Hb(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return S(P[L[a+12>>2]+16>>2])}function yD(a,b){a=a|0;b=b|0;var c=0;c=L[b+4>>2];L[a+68>>2]=L[b>>2];L[a+72>>2]=c;c=L[b+12>>2];L[a+76>>2]=L[b+8>>2];L[a+80>>2]=c}function iE(a,b){a=a|0;b=b|0;var c=0;c=L[b+4>>2];L[a+16>>2]=L[b>>2];L[a+20>>2]=c;c=L[b+12>>2];L[a+24>>2]=L[b+8>>2];L[a+28>>2]=c}function Wd(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return S(P[L[a+12>>2]+4>>2])}function Ud(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return S(P[L[a+12>>2]+8>>2])}function Ta(a){a=a|0;var b=0,c=S(0);b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];c=S(ha[L[L[a>>2]+48>>2]](a));fa=b+16|0;return S(c)}function uv(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+172>>2]}function sv(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+144>>2]}function pc(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+188>>2]}function lb(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+240>>2]}function kd(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+192>>2]}function iv(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+740>>2]}function hv(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+744>>2]}function gv(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+748>>2]}function fr(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+116>>2]}function au(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+480>>2]}function Xn(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[L[b+12>>2]+4>>2];a=ha[L[L[a>>2]+88>>2]](a)|0;fa=b+16|0;return a|0}function Sq(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+120>>2]}function Sc(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+204>>2]}function Rt(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+504>>2]}function Rq(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+124>>2]}function Qq(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+128>>2]}function Bx(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return+P[L[a+12>>2]+120>>2]}function ye(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+68>>2]}function _d(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+24>>2]}function Xd(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return S(P[L[a+12>>2]>>2])}function Se(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+52>>2]}function Pv(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+40>>2]}function Oq(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+84>>2]}function Mx(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+12>>2]}function Kq(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+88>>2]}function Iy(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Wa(a,L[b+8>>2],0)){Xf(b,c,d);return}a=L[a+8>>2];ha[L[L[a>>2]+28>>2]](a,b,c,d)}function Ax(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return+P[L[a+12>>2]+80>>2]}function pn(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;a=hb(L[c+12>>2],L[c+8>>2]);fa=c+16|0;return a|0}function dv(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+36>>2]](a)|0;fa=b+16|0;return S(S(a|0))}function Ya(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+4>>2]}function Lx(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[L[a+12>>2]+8>>2]}function rp(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+352|0}function qu(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+348|0}function qp(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+324|0}function oa(a){var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];L[8513]=L[8513]+1;a=ha[L[6798]](a,16)|0;fa=b+16|0;return a}function eu(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+312|0}function du(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+328|0}function cj(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+144|0}function _t(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+544|0}function Vt(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+380|0}function Lt(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+300|0}function Kt(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+316|0}function xf(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+92|0}function sn(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;a=mh(L[c+12>>2],c+8|0);fa=c+16|0;return a|0}function ow(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+20|0}function oe(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+48|0}function fy(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;a=zj(L[c+12>>2],c+8|0);fa=c+16|0;return a|0}function dy(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;a=Aj(L[c+12>>2],c+8|0);fa=c+16|0;return a|0}function Cx(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+32|0}function $e(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+28|0}function qc(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]+4|0}function nw(){var a=0;a=oa(32);L[a+12>>2]=0;L[a+4>>2]=35;L[a+8>>2]=0;L[a>>2]=13384;L[a+4>>2]=27;L[a>>2]=15100;return a|0}function Zw(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;return S(P[(L[c+12>>2]+20|0)+(L[c+8>>2]<<2)>>2])}function TC(a,b){a=a|0;b=b|0;var c=0,d=0;c=L[a+4>>2];d=L[c>>2];ha[L[L[d>>2]+108>>2]](d,b,c+108|0);return L[a+4>>2]+108|0}function vl(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+84>>2]](a)|0;fa=b+16|0;return a|0} function fc(a,b){var c=0;Fd(a,b);c=L[a+4>>2];if(c){L[8514]=L[8514]+1;ha[L[6799]](c)}L[a+4>>2]=b;L[a+12>>2]=L[a+12>>2]-1}function Ee(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+100>>2]](a)&1;fa=b+16|0;return a|0}function ya(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+28>>2]](a)|0;fa=b+16|0;return a|0}function wr(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+40>>2]](a)&1;fa=b+16|0;return a|0}function td(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+36>>2]](a)|0;fa=b+16|0;return a|0}function rl(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+88>>2]](a)|0;fa=b+16|0;return a|0}function ql(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+92>>2]](a)&1;fa=b+16|0;return a|0}function pv(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+52>>2]](a)|0;fa=b+16|0;return a|0}function or(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+48>>2]](a)&1;fa=b+16|0;return a|0}function he(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+20>>2]](a)|0;fa=b+16|0;return a|0}function fi(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+48>>2]](a)|0;fa=b+16|0;return a|0}function Tl(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+12>>2]](a)|0;fa=b+16|0;return a|0}function Od(a){var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];L[(fa-16|0)+12>>2]=a;L[(fa-16|0)+12>>2]=a+16;fa=b+16|0}function Mw(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+96>>2]](a)|0;fa=b+16|0;return a|0}function Le(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+76>>2]](a)|0;fa=b+16|0;return a|0}function Hn(a){a=a|0;var b=0;L[a>>2]=5584;b=L[a+16>>2];if(!(b?!b|!M[a+20|0]:1)){L[8514]=L[8514]+1;ha[L[6799]](b)}ra(a)}function Fe(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+96>>2]](a)&1;fa=b+16|0;return a|0}function Dl(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+80>>2]](a)|0;fa=b+16|0;return a|0}function zr(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+24>>2]=P[c+8>>2];fa=c+16|0}function yr(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+28>>2]=P[c+8>>2];fa=c+16|0}function xr(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+32>>2]=P[c+8>>2];fa=c+16|0}function ur(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+44>>2]=P[c+8>>2];fa=c+16|0}function id(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+216>>2]=L[c+8>>2];fa=c+16|0}function Jg(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];a=ha[L[L[a>>2]+8>>2]](a)&1;fa=b+16|0;return a|0}function HG(a,b){a=a|0;b=b|0;var c=0,d=0;c=a;d=L[L[L[a+4>>2]+4>>2]+24>>2];a=L[b+36>>2];an(c,L[(d+R(a,80)|0)+64>>2],a)}function Ap(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;sc(L[c+12>>2]+868|0,L[c+8>>2]);fa=c+16|0}function vq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;qg(L[c+12>>2]+28|0,L[c+8>>2]);fa=c+16|0}function Xr(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;sb(L[c+12>>2]+92|0,L[c+8>>2]);fa=c+16|0}function Vx(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];fa=b+16|0;return L[a+12>>2]}function UC(a,b){a=a|0;b=b|0;var c=0,d=0;c=L[a+4>>2];d=L[c>>2];ha[L[L[d>>2]+104>>2]](d,b,c+4|0);return L[a+4>>2]+4|0}function Hx(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;sc(L[c+12>>2]+20|0,L[c+8>>2]);fa=c+16|0}function Gx(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;Kf(L[c+12>>2]+72|0,L[c+8>>2]);fa=c+16|0}function Fx(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;Kf(L[c+12>>2]+92|0,L[c+8>>2]);fa=c+16|0}function Dq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;return L[(L[c+12>>2]+8|0)+(L[c+8>>2]<<2)>>2]}function wf(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;vf(L[c+12>>2],L[c+8>>2],0,0);fa=c+16|0}function Tw(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;Kf(L[c+12>>2]+4|0,L[c+8>>2]);fa=c+16|0}function Nx(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;sb(L[c+12>>2]+4|0,L[c+8>>2]);fa=c+16|0}function $f(a){var b=0;while(1){L[a+4>>2]=0;L[a+8>>2]=0;b=L[a+24>>2];if(b){$f(b)}a=L[a+28>>2];if(a){continue}break}}function az(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=L[b+8>>2];b=L[a+284>>2];ha[L[L[b>>2]+40>>2]](b,a,L[c+8>>2])}function _r(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;qa(L[c+12>>2],L[c+8>>2],92);fa=c+16|0}function bd(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;J[c+11|0]=b;ib(L[c+12>>2],J[c+11|0]&1);fa=c+16|0}function Xq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;lg(L[c+12>>2],L[c+8>>2],1);fa=c+16|0}function Ow(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;tm(L[c+12>>2],L[c+8>>2],1);fa=c+16|0}function Fc(a){var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}fa=b+16|0}function wu(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;Gk(L[c+12>>2],L[c+8>>2]);fa=c+16|0}function rq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;ki(L[c+12>>2],L[c+8>>2]);fa=c+16|0}function qt(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;ol(L[c+12>>2],L[c+8>>2]);fa=c+16|0}function pw(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;Qe(L[c+12>>2],L[c+8>>2]);fa=c+16|0}function nu(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;Wi(L[c+12>>2],L[c+8>>2]);fa=c+16|0}function ku(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;Vi(L[c+12>>2],L[c+8>>2]);fa=c+16|0}function je(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;rn(L[c+12>>2],L[c+8>>2]);fa=c+16|0}function iu(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;Ui(L[c+12>>2],L[c+8>>2]);fa=c+16|0}function gu(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;Ti(L[c+12>>2],L[c+8>>2]);fa=c+16|0}function by(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;Ma(L[c+12>>2],L[c+8>>2]);fa=c+16|0}function _w(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;sc(L[c+12>>2],L[c+8>>2]);fa=c+16|0}function Yx(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;Rf(L[c+12>>2],L[c+8>>2]);fa=c+16|0}function Ut(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;te(L[c+12>>2],L[c+8>>2]);fa=c+16|0}function Sp(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;fa=c;L[c+12>>2]=a;L[c+8>>2]=b;jg(L[c+12>>2],L[c+8>>2]);fa=c+16|0}function Ka(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];L[(fa-16|0)+12>>2]=a;fa=b+16|0;return a|0}function Bh(a){var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=fa-16|0;L[a+12>>2]=L[b+12>>2];L[L[a+12>>2]>>2]=0;fa=b+16|0}function ym(a,b){a=a|0;b=b|0;L[a>>2]=0;L[a+4>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0;L[a+(L[b+52>>2]<<2)>>2]=1065353216}function Qy(a,b){a=a|0;b=b|0;var c=0;a=ha[L[6800]]((a+b|0)+3|0)|0;if(a){c=(a+b|0)+3&0-b;L[c-4>>2]=a}return c|0}function ef(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=fa-16|0;L[e+12>>2]=a;L[e+8>>2]=b;L[e+4>>2]=c;L[e>>2]=d}function Yl(a,b,c,d,e){var f=0;f=L[a+32>>2];L[f>>2]=L[f>>2]+1;Qe(a,Pe(a,b,e));Qe(a,Pe(a,c,e));Qe(a,Pe(a,d,e))}function Px(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=oa(200);Pf(a,L[b+12>>2],$a());fa=b+16|0;return a|0}function ma(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];if(a){ha[L[L[a>>2]+4>>2]](a)}fa=b+16|0}function Lc(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];if(a){ha[L[L[a>>2]+8>>2]](a)}fa=b+16|0}function Zd(a){var b=0;b=fa-16|0;L[b+12>>2]=a;a=L[b+12>>2];J[a+16|0]=1;L[a+12>>2]=0;L[a+4>>2]=0;L[a+8>>2]=0}function uw(a){a=a|0;var b=0;b=fa-16|0;fa=b;J[b+15|0]=a;a=oa(172);Kg(a,J[b+15|0]&1,1);fa=b+16|0;return a|0}function Qw(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=oa(112);We(a,L[b+12>>2],0);fa=b+16|0;return a|0}function oz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=L[b>>2];return lk(ha[L[L[a>>2]+56>>2]](a,156)|0,b,c,d,0)|0}function nz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=L[b>>2];return lk(ha[L[L[a>>2]+56>>2]](a,156)|0,b,c,d,1)|0}function jx(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=oa(96);pm(a,L[b+12>>2],1);fa=b+16|0;return a|0}function wp(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=sa(112);ik(a,L[b+12>>2]);fa=b+16|0;return a|0}function wG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=L[b>>2];return gn(ha[L[L[a>>2]+56>>2]](a,80)|0,b,c,d,0)|0}function vG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=L[b>>2];return gn(ha[L[L[a>>2]+56>>2]](a,80)|0,b,c,d,1)|0}function uG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=L[b>>2];return dn(ha[L[L[a>>2]+56>>2]](a,44)|0,b,c,d,0)|0}function sG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=L[b>>2];return dn(ha[L[L[a>>2]+56>>2]](a,44)|0,b,c,d,1)|0}function Yv(a){a=a|0;var b=0;b=fa-16|0;fa=b;J[b+15|0]=a;a=oa(192);dj(a,J[b+15|0]&1);fa=b+16|0;return a|0}function yu(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+136>>2]=P[c+8>>2]}function xa(a,b,c){var d=0;d=fa-16|0;fa=d;L[d+12>>2]=b;L[d+8>>2]=c;tb(a,L[d+12>>2],L[d+8>>2]);fa=d+16|0}function vr(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];ha[L[L[a>>2]+44>>2]](a);fa=b+16|0}function us(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+216>>2]=P[c+8>>2]}function ts(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+228>>2]=P[c+8>>2]}function rs(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+252>>2]=P[c+8>>2]}function rD(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=oa(56);Sg(a,L[b+12>>2]);fa=b+16|0;return a|0}function ps(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+244>>2]=P[c+8>>2]}function oA(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=sa(92);gh(a,L[b+12>>2]);fa=b+16|0;return a|0}function ns(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+204>>2]=P[c+8>>2]}function ls(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+212>>2]=P[c+8>>2]}function js(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+220>>2]=P[c+8>>2]}function is(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+224>>2]=P[c+8>>2]}function im(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;K[c+10>>1]=b;K[L[c+12>>2]+10>>1]=N[c+10>>1]}function hs(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+232>>2]=P[c+8>>2]}function ge(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];ha[L[L[a>>2]+24>>2]](a);fa=b+16|0}function fs(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+248>>2]=P[c+8>>2]}function ds(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+208>>2]=P[c+8>>2]}function bs(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+276>>2]=P[c+8>>2]}function Zg(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;K[c+10>>1]=b;K[L[c+12>>2]+12>>1]=N[c+10>>1]}function Xb(a,b,c){var d=0;d=fa-16|0;fa=d;L[d+12>>2]=b;L[d+8>>2]=c;Ga(a,L[d+8>>2],L[d+12>>2]);fa=d+16|0}function Vg(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;K[c+10>>1]=b;K[L[c+12>>2]+14>>1]=N[c+10>>1]}function Rr(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+236>>2]=P[c+8>>2]}function Qu(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+100>>2]=P[c+8>>2]}function Pr(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+240>>2]=P[c+8>>2]}function Pb(a){var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];$k(a);L[(fa-16|0)+12>>2]=a+48;fa=b+16|0}function Ou(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+104>>2]=P[c+8>>2]}function Nr(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+256>>2]=P[c+8>>2]}function Mu(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+108>>2]=P[c+8>>2]}function Me(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];ha[L[L[a>>2]+72>>2]](a);fa=b+16|0}function Lr(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+268>>2]=P[c+8>>2]}function Ku(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+112>>2]=P[c+8>>2]}function Jr(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+272>>2]=P[c+8>>2]}function Iu(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+116>>2]=P[c+8>>2]}function Hs(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;J[c+11|0]=b;L[L[c+12>>2]+44>>2]=J[c+11|0]&1}function Hr(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+280>>2]=P[c+8>>2]}function Gu(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;J[c+11|0]=b;J[L[c+12>>2]+120|0]=J[c+11|0]&1}function Eu(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+124>>2]=P[c+8>>2]}function Dw(a){a=a|0;var b=0;b=fa-16|0;fa=b;J[b+15|0]=a;a=oa(92);wm(a,J[b+15|0]&1);fa=b+16|0;return a|0}function Cu(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+128>>2]=P[c+8>>2]}function Au(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+132>>2]=P[c+8>>2]}function $r(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;J[c+11|0]=b;J[L[c+12>>2]+260|0]=J[c+11|0]&1}function zs(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;J[c+11|0]=b;J[L[c+12>>2]+80|0]=J[c+11|0]&1}function zf(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+32>>2]=P[c+8>>2]}function yq(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+88>>2]=P[c+8>>2]}function yi(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+64>>2]=P[c+8>>2]}function wi(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+68>>2]=P[c+8>>2]}function vx(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+112>>2]=L[c+8>>2]}function ui(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+72>>2]=P[c+8>>2]}function si(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+76>>2]=P[c+8>>2]}function ry(a){a=a|0;var b=0,c=S(0);b=fa-16|0;fa=b;L[b+12>>2]=a;c=$b(L[b+12>>2]);fa=b+16|0;return S(c)}function qy(a){a=a|0;var b=0,c=S(0);b=fa-16|0;fa=b;L[b+12>>2]=a;c=Sf(L[b+12>>2]);fa=b+16|0;return S(c)}function pq(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+80>>2]=P[c+8>>2]}function ov(){var a=0,b=0;b=sa(8);a=fa-16|0;L[a+12>>2]=b;a=L[a+12>>2];L[a>>2]=0;L[a+4>>2]=0;return b|0}function ni(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+24>>2]=P[c+8>>2]}function mm(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;K[c+10>>1]=b;K[L[c+12>>2]+8>>1]=N[c+10>>1]}function iq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+100>>2]=L[c+8>>2]}function hj(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+40>>2]=P[c+8>>2]}function hi(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+44>>2]=P[c+8>>2]}function di(a){a=a|0;var b=0,c=S(0);b=fa-16|0;fa=b;L[b+12>>2]=a;c=nf(L[b+12>>2]);fa=b+16|0;return S(c)}function Su(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+96>>2]=P[c+8>>2]}function Rs(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;J[c+11|0]=b;J[L[c+12>>2]+16|0]=J[c+11|0]&1}function Qi(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+28>>2]=P[c+8>>2]}function Ps(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;J[c+11|0]=b;J[L[c+12>>2]+24|0]=J[c+11|0]&1}function Ns(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;J[c+11|0]=b;J[L[c+12>>2]+25|0]=J[c+11|0]&1}function Mi(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+16>>2]=P[c+8>>2]}function Ls(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;J[c+11|0]=b;J[L[c+12>>2]+26|0]=J[c+11|0]&1}function Ki(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+20>>2]=P[c+8>>2]}function Kc(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+12>>2]=P[c+8>>2]}function Js(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;J[c+11|0]=b;J[L[c+12>>2]+32|0]=J[c+11|0]&1}function Gi(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+48>>2]=P[c+8>>2]}function Ei(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+52>>2]=P[c+8>>2]}function Ef(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+92>>2]=P[c+8>>2]}function Ci(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+56>>2]=P[c+8>>2]}function Bs(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;J[c+11|0]=b;J[L[c+12>>2]+84|0]=J[c+11|0]&1}function Bf(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+36>>2]=P[c+8>>2]}function Ai(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+60>>2]=P[c+8>>2]}function yv(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+64>>2]=L[c+8>>2]}function qx(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+76>>2]=L[c+8>>2]}function oq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+84>>2]=L[c+8>>2]}function mq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+92>>2]=L[c+8>>2]}function kq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+96>>2]=L[c+8>>2]}function eb(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+4>>2]=P[c+8>>2]}function _i(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+32>>2]=L[c+8>>2]}function Ve(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+16>>2]=L[c+8>>2]}function Ni(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+20>>2]=L[c+8>>2]}function Nc(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]+8>>2]=P[c+8>>2]}function Jv(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+28>>2]=L[c+8>>2]}function Ii(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+88>>2]=L[c+8>>2]}function Hv(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+40>>2]=L[c+8>>2]}function Fv(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+44>>2]=L[c+8>>2]}function Fs(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;P[L[c+12>>2]+48>>2]=L[c+8>>2]}function Fq(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+36>>2]=L[c+8>>2]}function Dv(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+48>>2]=L[c+8>>2]}function Bv(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+56>>2]=L[c+8>>2]}function Av(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+60>>2]=L[c+8>>2]}function xd(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+8>>2]=L[c+8>>2]}function cd(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]+4>>2]=L[c+8>>2]}function Yu(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;K[L[c+12>>2]+4>>1]=L[c+8>>2]}function Wu(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;K[L[c+12>>2]+6>>1]=L[c+8>>2]}function Mb(a){var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];L[(fa-16|0)+12>>2]=a;Zd(a);fa=b+16|0}function ae(a,b){a=a|0;b=S(b);var c=0;c=fa-16|0;L[c+12>>2]=a;P[c+8>>2]=b;P[L[c+12>>2]>>2]=P[c+8>>2]}function $b(a){var b=0,c=S(0);b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];c=_b(a,a);fa=b+16|0;return c}function ed(a,b){a=a|0;b=b|0;var c=0;c=fa-16|0;L[c+12>>2]=a;L[c+8>>2]=b;L[L[c+12>>2]>>2]=L[c+8>>2]}function ar(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;fa=b+16|0;return L[L[b+12>>2]+116>>2]+4|0}function Kp(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;fa=b+16|0;return S(P[L[b+12>>2]+1228>>2])}function xs(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;fa=b+16|0;return S(P[L[b+12>>2]+204>>2])}function xp(){var a=0,b=0,c=0;a=fa-32|0;fa=a;b=sa(112);c=a+8|0;og(c);ik(b,c);fa=a+32|0;return b|0}function nb(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];if(a){mb(a);ra(a)}fa=b+16|0}function Xw(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];if(a){rc(a);ra(a)}fa=b+16|0}function tr(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;fa=b+16|0;return S(P[L[b+12>>2]+44>>2])}function rr(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;fa=b+16|0;return S(P[L[b+12>>2]+36>>2])}function jf(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];hf(a);fa=b+16|0;return a|0}function hf(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];Oa(a);fa=b+16|0;return a|0}function Sk(a,b){a=a|0;b=b|0;if(!(!b|!(L[b+236>>2]&2))){ha[L[L[a>>2]+92>>2]](a,b);return}Bd(a,b)}function Oh(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];jf(a);fa=b+16|0;return a|0}function CA(){var a=0,b=0,c=0;a=fa-32|0;fa=a;b=sa(92);c=a+8|0;og(c);gh(b,c);fa=a+32|0;return b|0}function By(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(Wa(a,L[b+8>>2],f)){Wf(b,c,d,e)}}function dq(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=Bk(L[b+12>>2]);fa=b+16|0;return a|0}function qr(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;fa=b+16|0;return L[L[b+12>>2]+8>>2]}function Hw(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;fa=b+16|0;return L[L[b+12>>2]+4>>2]}function tD(a){a=a|0;a=L[a+92>>2]-2|0;if(a>>>0<=2){a=L[(a<<2)+16592>>2]}else{a=0}return a|0}function ko(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];hf(a);Fc(a);fa=b+16|0}function jz(a,b){a=a|0;b=S(b);Nk(a,b);wa(2370);a=L[a+452>>2];ha[L[L[a>>2]+24>>2]](a,b);va()}function io(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];Oh(a);Fc(a);fa=b+16|0}function ff(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=fa-16|0;L[d+12>>2]=a;L[d+8>>2]=b;L[d+4>>2]=c}function VB(a,b,c){a=a|0;b=b|0;c=S(c);ha[L[L[a>>2]+32>>2]](a,b);ha[L[L[a>>2]+36>>2]](a,b,c)}function Lo(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];Ka(a);Fc(a);fa=b+16|0}function Go(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];$h(a);ra(a);fa=b+16|0}function Da(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];if(a){ra(a)}fa=b+16|0}function DH(a,b){a=a|0;b=b|0;var c=0;c=b;b=L[a+8>>2];ha[L[b+60>>2]](c,b,L[a+4>>2]);return 0}function Cb(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];Ka(a);ra(a);fa=b+16|0}function Ao(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];jf(a);Fc(a);fa=b+16|0}function Ad(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;a=L[b+12>>2];if(a){Fc(a)}fa=b+16|0}function vH(a){a=a|0;var b=0;wa(2623);b=L[a+68>>2];ha[L[L[b>>2]+32>>2]](b,L[a+24>>2]);va()}function ib(a,b){if(M[a+204|0]&3?b:1){if((L[a+216>>2]&-2)!=4){L[a+216>>2]=1}L[a+220>>2]=0}}function Gl(a,b,c,d,e){if(Hl(a,30024,b,c,d,e)){a=1}else{a=Bg(a,30024,b,c,d,e,0)}return a}function jm(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return N[L[b+12>>2]+10>>1]<<16>>16}function bh(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return N[L[b+12>>2]+12>>1]<<16>>16}function Yg(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return N[L[b+12>>2]+14>>1]<<16>>16}function YB(a){a=a|0;if(ha[L[L[a>>2]+40>>2]](a)|0){J[a+169|0]=1;P[a+16>>2]=P[a+28>>2]}}function Wz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L[a+128>>2]=d;L[a+124>>2]=c;L[a+120>>2]=b}function Ra(a){var b=0;b=fa-16|0;fa=b;P[b+12>>2]=a;a=Fa(P[b+12>>2]);fa=b+16|0;return a}function Qa(a){var b=0;b=fa-16|0;fa=b;P[b+12>>2]=a;a=Ea(P[b+12>>2]);fa=b+16|0;return a}function nm(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return N[L[b+12>>2]+8>>1]<<16>>16}function _f(a){var b=0;b=L[a+24>>2];if(b){_f(b);ra(b)}a=L[a+28>>2];if(a){_f(a);ra(a)}}function Zu(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return N[L[b+12>>2]+4>>1]<<16>>16}function Xu(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return N[L[b+12>>2]+6>>1]<<16>>16}function rH(a,b){a=a|0;b=b|0;ha[L[L[b>>2]+32>>2]](b);jh(a,b);ha[L[L[b>>2]+36>>2]](b)}function XE(a,b){a=a|0;b=b|0;L[a+8>>2]=0;L[a+12>>2]=0;L[a>>2]=0;L[a+4>>2]=1065353216}function UE(a,b){a=a|0;b=b|0;L[a+8>>2]=1065353216;L[a+12>>2]=0;L[a>>2]=0;L[a+4>>2]=0}function SE(a,b){a=a|0;b=b|0;L[a+8>>2]=0;L[a+12>>2]=0;L[a>>2]=1065353216;L[a+4>>2]=0}function Qg(a,b,c){a=a|0;b=S(b);c=c|0;L[c>>2]=0;L[c+4>>2]=0;L[c+8>>2]=0;L[c+12>>2]=0}function dd(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;ib(L[b+12>>2],0);fa=b+16|0}function Is(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+44>>2]!=0|0}function GD(a,b,c){a=a|0;b=b|0;c=c|0;L[a>>2]=0;L[a+4>>2]=0;L[a+8>>2]=0;L[a+12>>2]=0}function zu(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+136>>2])}function zH(a,b){a=a|0;b=b|0;L[a+200>>2]=b;L[a+192>>2]=b;L[a+260>>2]=L[a+260>>2]+1}function vs(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+216>>2])}function ss(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+252>>2])}function qs(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+244>>2])}function os(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+204>>2])}function ms(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+212>>2])}function kw(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+228>>2])}function ks(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+220>>2])}function gs(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+248>>2])}function es(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+208>>2])}function cs(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+276>>2])}function Xv(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+224>>2])}function VC(a,b){a=a|0;b=b|0;a=L[L[a+4>>2]>>2];return ha[L[L[a>>2]+128>>2]](a,b)|0}function Sr(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+236>>2])}function Ru(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+100>>2])}function Qr(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+240>>2])}function Pu(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+104>>2])}function Or(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+256>>2])}function Nu(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+108>>2])}function Mr(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+268>>2])}function Lu(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+112>>2])}function Kr(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+272>>2])}function Ju(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+116>>2])}function Iv(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+232>>2])}function Ir(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+280>>2])}function Fu(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+124>>2])}function Du(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+128>>2])}function Bu(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+132>>2])}function zx(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+80>>2])}function zq(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+88>>2])}function zi(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+64>>2])}function xi(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+68>>2])}function vi(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+72>>2])}function ti(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+76>>2])}function oi(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+24>>2])}function oc(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+12>>2])}function ij(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+40>>2])}function ii(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+44>>2])}function gw(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;fj(L[b+12>>2]);fa=b+16|0}function Zx(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;ee(L[b+12>>2]);fa=b+16|0}function ZG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=a-4|0;ha[L[L[a>>2]+8>>2]](a,b,c,d)}function Wt(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;Jk(L[b+12>>2]);fa=b+16|0}function Tu(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+96>>2])}function Ri(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+28>>2])}function Oi(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+16>>2])}function Li(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+20>>2])}function Lh(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;Nd(L[b+12>>2]);fa=b+16|0}function Kw(a){a=a|0;var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;Sb(L[b+12>>2]);fa=b+16|0}function Hi(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+48>>2])}function Fi(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+52>>2])}function Ff(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+92>>2])}function Di(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+56>>2])}function Cf(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+36>>2])}function Bi(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+60>>2])}function Af(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+32>>2])}function fb(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+4>>2])}function as(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return J[L[b+12>>2]+260|0]&1}function Oc(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]+8>>2])}function Hu(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return J[L[b+12>>2]+120|0]&1}function wx(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+112>>2]}function jq(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+100>>2]}function Ss(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return J[L[b+12>>2]+16|0]&1}function Qs(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return J[L[b+12>>2]+24|0]&1}function Os(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return J[L[b+12>>2]+25|0]&1}function Ms(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return J[L[b+12>>2]+26|0]&1}function Ks(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return J[L[b+12>>2]+32|0]&1}function Cs(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return J[L[b+12>>2]+84|0]&1}function As(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return J[L[b+12>>2]+80|0]&1}function zv(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+64>>2]}function rx(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+76>>2]}function pm(a,b,c){a=Og(a);L[a+92>>2]=b;L[a>>2]=14456;L[a+4>>2]=3;if(c){Sb(a)}}function nq(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+92>>2]}function lq(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+96>>2]}function be(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return S(P[L[b+12>>2]>>2])}function Zi(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+60>>2]}function Xe(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+16>>2]}function SH(a,b){a=a|0;b=b|0;a=L[a+4>>2];return(a|0)==L[b>>2]|(a|0)==L[b+4>>2]}function Pi(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+20>>2]}function Ov(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+40>>2]}function Nq(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+84>>2]}function Kv(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+28>>2]}function Ji(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+88>>2]}function Gv(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+44>>2]}function Gq(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+36>>2]}function Ev(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+48>>2]}function Cv(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+56>>2]}function $i(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+32>>2]}function yd(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+8>>2]}function od(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]+4>>2]}function Jy(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Wa(a,L[b+8>>2],0)){Xf(b,c,d)}}function zn(a,b){a=a|0;b=b|0;a=L[a+4>>2];ha[L[L[a>>2]+8>>2]](a,L[b+36>>2])|0}function yx(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]- -64|0}function zp(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+788|0}function rf(a){var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;Mb(L[b+12>>2]);fa=b+16|0}function rc(a){var b=0;b=fa-16|0;fa=b;L[b+12>>2]=a;mb(L[b+12>>2]);fa=b+16|0}function pu(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+348|0}function nH(a,b){a=a|0;b=b|0;a=L[a+20>>2];return ha[L[L[a>>2]+8>>2]](a,b)|0}function jH(a,b){a=a|0;b=b|0;a=L[a+12>>2];return ha[L[L[a>>2]+8>>2]](a,b)|0}function fd(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[L[b+12>>2]>>2]}function Zr(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+156|0}function Wr(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+172|0}function Ur(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+188|0}function Ip(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+288|0}function Gp(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+708|0}function Ex(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+112|0}function Ep(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+748|0}function Cp(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+868|0}function uq(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+76|0}function uj(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+36|0}function rj(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+68|0}function ri(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+92|0}function pj(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+56|0}function nx(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+44|0}function nj(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+72|0}function nI(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<>>a}function mj(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+32|0}function lz(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+48|0}function lx(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+60|0}function jn(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+28|0}function hd(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+16|0}function eE(a){a=a|0;L[a>>2]=15204;if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function dc(a){a=a|0;L[a>>2]=20172;if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function _m(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+12|0}function _E(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ha[L[L[a>>2]+80>>2]](a,b,c,d)}function Of(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+20|0}function Nf(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+52|0}function Mf(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+40|0}function Jf(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+24|0}function aH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ha[L[L[a>>2]+8>>2]](a,b,c,d)}function Zh(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+8|0}function Df(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]+4|0}function BH(a){a=a|0;L[a>>2]=6712;if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function dI(a,b){a=a|0;b=b|0;ha[L[L[a>>2]+8>>2]](a,b,L[L[a+8>>2]+48>>2])}function _n(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;J[L[b+12>>2]+48|0]=1}function rF(a,b){a=a|0;b=S(b);return S(S(S(ha[L[L[a>>2]+16>>2]](a))*b))}function Re(a){a=Og(a);L[a+92>>2]=0;L[a>>2]=16432;L[a+4>>2]=2;return a}function FD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((d|0)>0){pa(c,0,d<<4)}}function Va(a){a=a|0;var b=0;b=fa-16|0;L[b+12>>2]=a;return L[b+12>>2]}function yh(a){a=a|0;a=zh(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function qC(a){a=a|0;a=Ml(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function pD(a){a=a|0;a=L[a+92>>2];return((a|0)==4?4:((a|0)==3)<<1)|0}function fD(a){a=a|0;a=Xl(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function ah(a){a=a|0;a=Oa(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function IC(a){a=a|0;a=Ql(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function wC(a,b){a=a|0;b=S(b);P[a+148>>2]=b;ha[L[L[a>>2]+72>>2]](a)}function mB(a,b){a=a|0;b=b|0;a=M[a+344|0]?0:3;L[b+4>>2]=a;L[b>>2]=a}function Tb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return S(S(1))}function DG(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return S(S(0))}function oF(a){a=a|0;vm(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function mG(a){a=a|0;Sm(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function mD(a){a=a|0;Lg(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function kz(a){a=a|0;fk(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function jG(a){a=a|0;Rm(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function hB(a){a=a|0;cl(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function eC(a){a=a|0;tl(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function Vz(a){a=a|0;Ak(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function PA(a){a=a|0;pg(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function ND(a){a=a|0;em(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function KF(a){a=a|0;Am(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function Hm(a){a=a|0;Wg(a);if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function QD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Dm(a,b,c,d)|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;ha[L[L[b>>2]+68>>2]](a,b,c)}function Bz(a,b,c){a=a|0;b=b|0;c=c|0;ha[L[L[b>>2]+64>>2]](a,b,c)}function cI(a,b,c){a=a|0;b=b|0;c=S(c);ha[L[L[a>>2]+12>>2]](a,b)}function Xz(a,b,c){a=a|0;b=b|0;c=S(c);ha[L[L[a>>2]+16>>2]](a,c)}function Cn(){var a=0;a=sa(16);L[8515]=a;xc(a);Vj(34064,2499,0)}function eH(a,b,c){a=a|0;b=b|0;c=c|0;L[a+24>>2]=c;L[a+16>>2]=b}function dH(a,b,c){a=a|0;b=b|0;c=c|0;L[a+28>>2]=c;L[a+20>>2]=b}function Wp(){var a=0;a=oa(16);L[(fa-16|0)+12>>2]=a;return a|0}function XB(a){a=a|0;return P[a+16>>2]==S(0)&P[a+20>>2]==S(0)}function Pa(a){a=a|0;if(a){L[8514]=L[8514]+1;ha[L[6799]](a)}}function Ol(a,b){a=a|0;b=b|0;return L[L[a+184>>2]+(b<<2)>>2]}function Mk(a,b){a=a|0;b=b|0;return L[L[a+220>>2]+(b<<2)>>2]}function FH(a,b){a=a|0;b=b|0;return L[L[a+20>>2]+(b<<2)>>2]}function Qx(){var a=0;a=oa(200);Pf(a,$a(),$a());return a|0}function Dz(a){a=a|0;return S(S(ha[L[L[a>>2]+48>>2]](a)))}function uD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;bm(a,b,c,d)}function kk(a){a=a|0;L[a>>2]=21960;eg(a+12|0);return a|0}function HA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;lh(a,b,c,d)}function fn(a){a=a|0;L[a>>2]=9440;ih(a+12|0);return a|0}function BD(a){a=a|0;return S(S(P[a+28>>2]*P[a+12>>2]))}function Rk(a,b){a=a|0;b=b|0;ha[L[L[a>>2]+64>>2]](a,b)}function Qk(a,b){a=a|0;b=b|0;ha[L[L[a>>2]+68>>2]](a,b)}function EH(a){a=a|0;return(L[a+12>>2]?L[a+20>>2]:0)|0}function xo(a){a=a|0;L[(fa-16|0)+12>>2]=a;return 3211}function ho(a){a=a|0;L[(fa-16|0)+12>>2]=a;return 4348}function ZB(a){a=a|0;return ha[L[L[a>>2]+48>>2]](a)|0}function MB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=S(e)}function Gn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return 0}function vw(){var a=0;a=oa(172);Kg(a,1,1);return a|0}function tC(a,b,c){a=a|0;b=b|0;c=c|0;aj(a+144|0,b,c)}function Tm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0}function Rw(){var a=0;a=oa(112);We(a,0,0);return a|0}function vo(a){a=a|0;L[(fa-16|0)+12>>2]=a;return 52}function lI(a){if(a){return 31-U(a-1^a)|0}return 32}function ao(a){a=a|0;L[(fa-16|0)+12>>2]=a;return 12}function Zn(a){a=a|0;L[(fa-16|0)+12>>2]=a;return 25}function GB(a,b,c){a=a|0;b=b|0;c=c|0;return S(S(0))}function vg(a){qd(a,L[a+28>>2]+4|0,L[a+32>>2]+4|0)}function ro(a){a=a|0;L[(fa-16|0)+12>>2]=a;return 2}function _u(){var a=0;a=sa(196);th(a,0);return a|0}function Zv(){var a=0;a=oa(192);dj(a,1);return a|0}function Ry(a){a=a|0;if(a){ha[L[6801]](L[a-4>>2])}}function Qh(a){a=a|0;L[(fa-16|0)+12>>2]=a;return 3}function Ph(a){a=a|0;L[(fa-16|0)+12>>2]=a;return 1}function Nh(a){a=a|0;L[(fa-16|0)+12>>2]=a;return 0}function JB(a,b){a=a|0;b=b|0;L[b>>2]=6;L[b+4>>2]=6}function Ew(){var a=0;a=oa(92);wm(a,1);return a|0}function ue(a,b,c){Rb(a+4|0,a+312|0,a+328|0,b,c)}function At(){var a=0;a=oa(196);dl(a);return a|0}function yy(){var a=0;a=oa(16);Ka(a);return a|0}function vp(){var a=0;a=sa(40);ek(a);return a|0}function kv(){var a=0;a=sa(24);og(a);return a|0}function dw(){var a=0;a=sa(72);ej(a);return a|0}function Tv(){var a=0;a=sa(68);bj(a);return a|0}function $x(){var a=0;a=sa(64);Pb(a);return a|0}function Tg(a,b,c){a=a|0;b=b|0;c=S(c);return 0}function vh(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function qb(a){a=a|0;L[(fa-16|0)+12>>2]=a;D()}function nl(a){a=a|0;L[a>>2]=20172;return a|0}function hn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=S(d)}function gm(a){a=Jm(a);L[a>>2]=15460;return a}function fE(a){a=a|0;L[a>>2]=15204;return a|0}function HB(a,b,c,d){a=a|0;b=b|0;c=S(c);d=d|0}function zb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0}function Wy(a,b,c){a=a|0;b=b|0;c=c|0;ok(b,c)}function FC(a){a=a|0;return L[a+156>>2]!=0|0}function CH(a){a=a|0;L[a>>2]=6712;return a|0}function lD(a){a=a|0;return L[a+48>>2]==1|0}function Ny(a){a=a|0;a=L[8515];if(a){ra(a)}}function yE(a){a=a|0;return L[a+92>>2]+4|0}function vC(a){a=a|0;return S(P[a+148>>2])}function fF(a,b){a=a|0;b=S(b);P[a+72>>2]=b}function cD(a){a=a|0;return L[a+48>>2]+4|0}function DF(a,b){a=a|0;b=S(b);P[a+12>>2]=b}function $l(a,b){a=a|0;b=S(b);P[a+44>>2]=b}function wn(a,b){a=a|0;b=b|0;L[a+72>>2]=b}function eF(a){a=a|0;return S(P[a+72>>2])}function WB(a,b){a=a|0;b=b|0;J[a+180|0]=b}function UH(a,b){a=a|0;b=b|0;L[a+24>>2]=b}function Ty(a,b){a=a|0;b=b|0;L[a+4>>2]=b} function Kh(a){a=a|0;L[(fa-16|0)+12>>2]=a}function Sy(a,b){a=a|0;b=b|0;L[a+8>>2]=b}function uC(a){a=a|0;return L[a+204>>2]}function tA(a){a=a|0;return L[a+200>>2]}function sA(a){a=a|0;return L[a+212>>2]}function GC(a){a=a|0;return L[a+176>>2]}function An(a){a=a|0;return L[a+136>>2]}function tn(a){a=a|0;return L[a+68>>2]}function sm(a){a=a|0;return L[a+96>>2]}function qH(a){a=a|0;return L[a+72>>2]}function ic(a){a=a|0;return L[a+16>>2]}function cf(a){a=a|0;return L[a+92>>2]}function Um(a){a=a|0;return L[a+24>>2]}function GH(a){a=a|0;return L[a+12>>2]}function wd(a,b){a=a|0;b=b|0;return 0}function rh(a,b){a=a|0;b=b|0;return 1}function ph(a){a=a|0;return L[a+8>>2]}function Rg(a,b,c){a=a|0;b=S(b);c=c|0}function HD(a){a=a|0;return L[a+4>>2]}function Aa(a,b,c){a=a|0;b=b|0;c=c|0}function yC(a){a=a|0;return a+156|0}function SD(a){a=a|0;return Wg(a)|0}function Py(a){a=a|0;return Yf(a)|0}function Pl(a){a=a|0;return a+144|0}function $D(a){a=a|0;return a+108|0}function xD(a){a=a|0;return a+68|0}function hF(a){a=a|0;return a+76|0}function hE(a){a=a|0;return a+16|0}function _A(a){a=a|0;L[a+192>>2]=0}function uh(a){a=a|0;return a+4|0}function $G(a){a=a|0;return a-4|0}function zG(a){a=a|0;Xm(a);ra(a)}function xz(a){a=a|0;kk(a);ra(a)}function xH(a){a=a|0;nh(a);ra(a)}function xG(a){a=a|0;fh(a);ra(a)}function xE(a){a=a|0;return 3113}function xC(a){a=a|0;return 2478}function wz(a){a=a|0;eg(a);ra(a)}function wF(a){a=a|0;return 3193}function wD(a){a=a|0;return 4324}function uF(a){a=a|0;return 4280}function tF(a){a=a|0;return 4245}function sz(a){a=a|0;hk(a);ra(a)}function oE(a){a=a|0;return 4254}function oC(a){a=a|0;return 3127}function lE(a){a=a|0;return 4264}function jE(a){a=a|0;return 4229}function gG(a){a=a|0;Qm(a);ra(a)}function gF(a){a=a|0;return 3247}function gE(a){a=a|0;return 2364}function cG(a){a=a|0;Om(a);ra(a)}function bI(a){a=a|0;xn(a);ra(a)}function bA(a){a=a|0;Dk(a);ra(a)}function aG(a){a=a|0;Nm(a);ra(a)}function _D(a){a=a|0;return 4336}function ZF(a){a=a|0;return 2404}function YG(a){a=a|0;kn(a);ra(a)}function YE(a){a=a|0;return 3206}function YC(a){a=a|0;Ul(a);ra(a)}function VE(a){a=a|0;return 4239}function TE(a){a=a|0;return 4274}function TD(a){a=a|0;return 3181}function SA(a){a=a|0;Yk(a);ra(a)}function RG(a){a=a|0;fn(a);ra(a)}function QH(a){a=a|0;vn(a);ra(a)}function PG(a){a=a|0;ih(a);ra(a)}function LG(a){a=a|0;bn(a);ra(a)}function IE(a){a=a|0;return 2408}function Hz(a){a=a|0;return 2395}function HC(a){a=a|0;return 3220}function GG(a){a=a|0;$m(a);ra(a)}function Fn(a){a=a|0;sh(a);ra(a)}function Ez(a){a=a|0;return 4289}function EF(a){a=a|0;return 4301}function CD(a){a=a|0;return 4317}function BG(a){a=a|0;Ym(a);ra(a)}function $y(a){a=a|0;dk(a);ra(a)}function $C(a){a=a|0;return 4304}function yH(a){a=a|0;return 256}function wB(a){a=a|0;return 348}function pB(a){a=a|0;return 220}function oI(a,b){ga=a;return b} function iA(a){a=a|0;return 488}function VA(a){a=a|0;return 204}function Mz(a){a=a|0;return 428}function LB(a){a=a|0;return 212}function Ba(a){a=a|0;return a|0}function AB(a){a=a|0;return 252}function hm(a){a=a|0;return 64}function eD(a){a=a|0;return 28}function dF(a){a=a|0;return 24}function _l(a){a=a|0;return 52}function _G(a){a=a|0;ra(a-4|0)}function Ye(a){a=a|0;return 60}function TF(a){a=a|0;return 12}function My(a){a=a|0;_f(34064)}function HE(a){a=a|0;return 68}function Cm(a){a=a|0;return 84}function Az(a){a=a|0;return 32}function pH(a,b){a=a|0;b=S(b)}function dz(a){a=a|0;return 4}function UF(a){a=a|0;return 8}function Km(a){a=a|0;return 6}function Ja(a){a=a|0;return 0}function Ic(a){a=a|0;return 1}function Fg(a){a=a|0;return 2}function op(){return sa(1)|0}function Ia(a,b){a=a|0;b=b|0}function na(a){a=a|0;ra(a)}function gb(a){a=a|0;D()}function Hk(a,b){Gk(a,b)}function pf(){return 1}function of(){return 2}function hp(){return 5}function ei(){return 0}function ci(){return 3}function bi(){return 4}function Ly(){aa();D()}function Wb(a){a=a|0} // EMSCRIPTEN_END_FUNCS g=M;r(s);var ha=e([null,Ka,Cb,gp,fp,ep,dp,cp,bp,ap,$o,_o,Zo,Yo,Xo,Wo,Vo,Uo,To,So,Ro,Qo,Po,Oo,Va,qb,Ly,Ka,Cb,No,Mo,Va,qb,Ka,Lo,Ko,Jo,Ka,Cb,Io,Ho,Va,qb,$h,Go,Fo,Ka,Cb,Eo,Do,Va,qb,Ka,Cb,Co,Bo,Va,qb,jf,Ao,zo,sF,qF,rF,Ue,_m,yo,xo,wo,hi,ii,vo,uo,pF,Ug,to,DE,so,GE,ro,qo,MD,Qh,Qh,po,oo,Ph,no,mo,lo,hf,ko,jo,Oh,io,uD,ID,JD,ho,LD,KD,Nh,ff,cf,tD,sD,qD,pD,zb,Tg,wd,fo,qb,eo,co,Nf,bo,oc,ao,db,ef,$n,_n,Zn,Kh,Kh,Yn,ef,ef,Ka,Cb,Nh,Xn,Wn,ff,Va,qb,Ka,Cb,Ph,Zi,Vn,Un,Va,qb,Ka,Cb,Tn,Sn,ff,Va,qb,zh,yh,Qn,Pn,On,xh,Nn,Mn,Ln,cf,cf,Kn,Jn,Wb,yh,In,Hn,vh,Gn,Aa,ic,ic,uh,Aa,Ja,Aa,Ia,Aa,vh,Ic,Ia,Ia,sh,Fn,En,Dn,iI,xh,kI,jI,hI,An,An,gI,fI,Wb,Ba,na,eI,dI,cI,rh,rh,na,Aa,zn,na,zn,xn,bI,VH,YH,_H,ic,ic,uh,aI,ph,$H,UH,XH,ZH,Ja,wn,WH,Ba,na,TH,na,SH,RH,vn,QH,MH,PH,NH,OH,KH,LH,JH,GH,FH,EH,tn,tn,IH,HH,na,DH,rh,CH,BH,zH,yH,oh,AH,nh,xH,wH,vH,wn,qH,on,sH,tH,lh,Bd,uH,rH,pH,Ia,Aa,Ba,na,Ba,na,gC,mn,na,mn,na,oH,na,nH,mH,na,fC,lH,na,kH,na,jH,iH,Ba,na,hH,na,gH,na,fH,Ba,na,eH,dH,cH,Ba,na,bH,aH,$G,_G,ZG,Ba,gb,Ba,gb,Ba,na,VG,kn,YG,XG,WG,UG,na,Aa,Aa,hn,na,Aa,Aa,TG,na,SG,fn,RG,NG,MG,QG,ih,PG,OG,na,en,bn,LG,KG,JG,IG,na,HG,$m,GG,EG,DG,FG,na,CG,Ia,Ba,na,Zm,Ym,BG,AG,Tb,zd,Xm,zG,yG,Tb,zd,fh,xG,ph,ic,Vm,Um,Ba,na,wG,na,vG,na,uG,na,tG,na,sG,na,rG,na,qG,na,pG,na,oG,na,nG,na,Tm,Tb,Ia,Sm,mG,lG,kG,Rm,jG,iG,hG,Qm,gG,fG,eG,ic,na,dG,Om,cG,bG,Tb,zd,Nm,aG,$F,Tb,zd,na,Mm,Oa,ah,Lm,$g,_F,ZF,_g,YF,XF,WF,Km,VF,UF,TF,SF,RF,Km,QF,PF,OF,Wg,Hm,Dm,Cm,LF,NF,MF,Am,KF,dD,IF,cD,Qg,EF,DF,Ye,HF,JF,aD,CF,GF,FF,Ba,na,zm,na,zm,na,BF,Ba,Pa,xF,$g,yF,wF,ym,_g,Ye,vF,AF,zF,Pa,uF,Pa,tF,vm,oF,lF,jF,hF,kF,gF,fF,eF,dF,iF,nF,mF,Ba,gb,Pa,_E,$E,ZE,YE,XE,Ye,WE,aF,cF,bF,Pa,VE,UE,Pa,TE,SE,KE,JE,bm,RE,IE,HE,ME,Ug,QE,PE,sm,sm,OE,NE,Ja,zb,Tg,LE,gb,gb,FE,EE,gb,ah,zE,yE,xE,Ug,BE,AE,Ja,Ja,zb,Aa,Ja,zb,Tg,Ba,na,wE,Pa,Lm,$g,vE,oE,ym,_g,Ye,nE,mE,sE,rE,lm,Pa,lE,uE,pE,kE,Pa,jE,tE,qE,lm,Ba,Pa,km,iE,hE,Rg,gE,zb,fE,eE,dE,aE,$D,Qg,_D,bE,cE,VD,UD,XD,TD,hm,WD,ZD,YD,SD,Hm,QD,na,PD,na,OD,em,ND,gb,gb,Pa,km,DD,CD,$l,BD,ED,GD,FD,Ba,Pa,AD,yD,xD,Qg,wD,_l,vD,zD,ah,Lg,mD,oD,Zl,Zl,Ia,Ia,Um,Ia,Ia,lD,kD,iD,eD,nD,Xl,fD,hD,gD,Ba,Pa,Vl,$C,bD,na,_C,na,ZC,Ul,YC,XC,Tb,WC,VC,Ba,na,UC,na,TC,na,na,SC,na,RC,Ql,IC,QC,HC,Ja,Pl,GC,FC,Ja,Ja,Aa,Aa,EC,Ol,Ol,DC,CC,BC,AC,zC,yC,PC,xC,wC,vC,MC,Ic,Pl,uC,Ja,Ic,Ja,tC,Aa,sC,rC,wd,wd,Aa,Aa,NC,Ml,qC,pC,OC,oC,nC,hm,JC,LC,mC,lC,Fg,Ja,Ja,Ja,Ja,Ja,Aa,Aa,Wb,Wb,Tm,wd,wd,Aa,Aa,zb,KC,Ba,na,Il,na,Aa,Aa,kC,na,Eg,CE,Te,Ba,na,jC,na,wb,na,iC,na,Aa,Aa,hC,gb,gb,na,Cl,tl,eC,VB,Ia,dC,cC,bC,aC,$B,_B,ZB,YB,XB,WB,na,UB,nl,dc,RB,MB,TB,SB,QB,PB,OB,LB,KB,NB,nl,dc,Wb,JB,IB,hn,HB,GB,_l,cc,dc,FB,EB,kl,CB,BB,AB,zB,DB,dc,yB,wB,vB,xB,dc,uB,tB,sB,rB,qB,pB,oB,dc,nB,mB,lB,kB,jB,Cm,iB,cl,hB,Aa,$A,Aa,_A,Ic,fB,cB,aB,dB,eB,bB,dc,ZA,YA,XA,WA,VA,UA,TA,gb,Yk,SA,RA,QA,pg,PA,Vk,HA,Sk,rA,KA,BA,AA,zA,yA,JA,IA,LA,FA,EA,GA,uA,tA,sA,Mk,Mk,Fg,NA,Rk,Qk,Rk,Qk,Nk,vA,wA,xA,DA,Tk,OA,MA,Ia,qA,pA,nA,mA,na,lA,kA,jA,fA,eA,iA,hA,gA,cA,Dk,bA,Xz,_z,aA,$z,Wz,na,Zz,qk,Ak,Vz,Ia,Mz,Lz,Kz,na,Uz,Ba,na,Tz,Sz,Rz,Fg,Pa,Jz,Ia,Iz,Rg,Hz,zb,na,Gz,na,Fz,Pa,zb,Rg,Ez,$l,Dz,Cz,Bz,zb,Az,na,zz,na,yz,Nz,Qz,Pz,Oz,kk,xz,uz,tz,Ia,eg,wz,vz,na,en,hk,sz,rz,na,qz,na,pz,na,oz,na,nz,Ba,na,mz,Tb,Ia,fk,kz,gz,fz,hz,ez,dz,jz,iz,na,cz,Ba,na,az,Tb,zd,dk,$y,Ja,Ic,_y,Ia,Uy,Yy,Zy,Vy,Wy,Ty,HD,Sy,ph,Xy,Qy,Ry,Py,na,Ny,My,Ba,na,Wb,Wb,Ky,By,Ey,Jy,na,Cy,Fy,Iy,na,Dy,Gy,Hy]);function ia(){return I.byteLength/65536|0}return{"h":Cn,"i":za,"j":ya,"k":Ca,"l":Ua,"m":Ta,"n":ma,"o":_d,"p":Yd,"q":Rd,"r":$e,"s":Im,"t":om,"u":Oe,"v":Ge,"w":ye,"x":re,"y":ne,"z":ke,"A":je,"B":nd,"C":he,"D":ge,"E":fe,"F":ma,"G":ld,"H":kd,"I":tc,"J":jd,"K":id,"L":dd,"M":bd,"N":ad,"O":$c,"P":_c,"Q":Zc,"R":Yc,"S":Xc,"T":Wc,"U":Vc,"V":Uc,"W":Tc,"X":qc,"Y":Sc,"Z":Rc,"_":Qc,"$":Jb,"aa":Pc,"ba":Mc,"ca":lb,"da":kb,"ea":lb,"fa":kb,"ga":pc,"ha":Lc,"ia":za,"ja":ya,"ka":Ca,"la":ma,"ma":ma,"na":Ib,"oa":Hb,"pa":Gb,"qa":Fb,"ra":Eb,"sa":ma,"ta":$d,"ua":yf,"va":xf,"wa":wf,"xa":uf,"ya":tf,"za":_d,"Aa":Yd,"Ba":Rd,"Ca":$e,"Da":Im,"Ea":om,"Fa":Oe,"Ga":Ge,"Ha":ye,"Ia":re,"Ja":ne,"Ka":ke,"La":je,"Ma":nd,"Na":he,"Oa":ge,"Pa":fe,"Qa":ma,"Ra":sf,"Sa":qi,"Ta":pi,"Ua":li,"Va":gi,"Wa":fi,"Xa":ma,"Ya":Wp,"Za":Bp,"_a":di,"$a":Xd,"ab":Wd,"bb":Ud,"cb":Sd,"db":Qd,"eb":Pd,"fb":go,"gb":Lh,"hb":Rn,"ib":un,"jb":sn,"kb":pn,"lb":ln,"mb":Ad,"nb":Xd,"ob":Wd,"pb":Ud,"qb":hh,"rb":Sd,"sb":Qd,"tb":Pd,"ub":Wm,"vb":Da,"wb":eh,"xb":Jb,"yb":ma,"zb":ch,"Ab":bh,"Bb":Zg,"Cb":Yg,"Db":Vg,"Eb":fb,"Fb":eb,"Gb":yd,"Hb":xd,"Ib":Xe,"Jb":Ve,"Kb":ma,"Lb":rm,"Mb":ma,"Nb":qm,"Ob":nm,"Pb":mm,"Qb":jm,"Rb":im,"Sb":fb,"Tb":eb,"Ub":ma,"Vb":za,"Wb":ya,"Xb":Ca,"Yb":Ua,"Zb":Ta,"_b":ma,"$b":RD,"ac":Ua,"bc":Ta,"cc":Se,"dc":Ng,"ec":Mg,"fc":za,"gc":ya,"hc":Ca,"ic":ma,"jc":rD,"kc":Ua,"lc":Ta,"mc":za,"nc":ya,"oc":Ca,"pc":ma,"qc":jD,"rc":za,"sc":ya,"tc":Ca,"uc":ma,"vc":Wl,"wc":ma,"xc":za,"yc":ya,"zc":Ca,"Ac":ma,"Bc":Jg,"Cc":Tl,"Dc":Rl,"Ec":Nl,"Fc":ma,"Gc":Ne,"Hc":Me,"Ic":Le,"Jc":td,"Kc":Dl,"Lc":vl,"Mc":rl,"Nc":ql,"Oc":Fe,"Pc":Ee,"Qc":Be,"Rc":Ae,"Sc":el,"Tc":gB,"Uc":Uk,"Vc":za,"Wc":ya,"Xc":Ca,"Yc":ma,"Zc":ma,"_c":CA,"$c":oA,"ad":ma,"bd":td,"cd":Ik,"dd":ma,"ed":dA,"fd":Yz,"gd":zk,"hd":rk,"id":pk,"jd":mk,"kd":oe,"ld":Ib,"md":Hb,"nd":Gb,"od":Fb,"pd":Eb,"qd":ma,"rd":bz,"sd":ck,"td":Oy,"ud":Xj,"vd":Uj,"wd":Rj,"xd":Pj,"yd":Nj,"zd":Uf,"Ad":Mj,"Bd":Lj,"Cd":Kj,"Dd":Jj,"Ed":Ij,"Fd":Hj,"Gd":_d,"Hd":Yd,"Id":Rd,"Jd":$e,"Kd":Gj,"Ld":Fj,"Md":Oe,"Nd":Ge,"Od":ye,"Pd":re,"Qd":ne,"Rd":ke,"Sd":je,"Td":nd,"Ud":he,"Vd":ge,"Wd":fe,"Xd":$d,"Yd":yf,"Zd":xf,"_d":wf,"$d":uf,"ae":tf,"be":ma,"ce":Ej,"de":ma,"ee":Tf,"fe":ma,"ge":Ay,"he":Dj,"ie":Cj,"je":ld,"ke":kd,"le":tc,"me":jd,"ne":id,"oe":dd,"pe":bd,"qe":ad,"re":$c,"se":_c,"te":Zc,"ue":Yc,"ve":Xc,"we":Wc,"xe":Vc,"ye":Uc,"ze":Tc,"Ae":qc,"Be":Sc,"Ce":Rc,"De":Qc,"Ee":Jb,"Fe":Pc,"Ge":Mc,"He":lb,"Ie":kb,"Je":lb,"Ke":kb,"Le":pc,"Me":Lc,"Ne":ma,"Oe":Da,"Pe":zy,"Qe":sf,"Re":qi,"Se":pi,"Te":li,"Ue":gi,"Ve":fi,"We":ma,"Xe":yy,"Ye":xy,"Ze":hh,"_e":Bj,"$e":di,"af":Xd,"bf":Wd,"cf":Ud,"df":Sd,"ef":Qd,"ff":Pd,"gf":Lh,"hf":wy,"jf":un,"kf":sn,"lf":pn,"mf":ln,"nf":Ad,"of":vy,"pf":Bj,"qf":uy,"rf":ty,"sf":sy,"tf":ry,"uf":qy,"vf":py,"wf":oy,"xf":ny,"yf":my,"zf":ly,"Af":ky,"Bf":jy,"Cf":iy,"Df":hy,"Ef":gy,"Ff":fy,"Gf":ey,"Hf":dy,"If":Xd,"Jf":Wd,"Kf":Ud,"Lf":hh,"Mf":Sd,"Nf":Qd,"Of":Pd,"Pf":Wm,"Qf":Da,"Rf":cy,"Sf":by,"Tf":ay,"Uf":Da,"Vf":$x,"Wf":_x,"Xf":Zx,"Yf":Yx,"Zf":Xx,"_f":oe,"$f":Wx,"ag":Vx,"bg":Ux,"cg":Tx,"dg":Sx,"eg":Da,"fg":Rx,"gg":eh,"hg":Jb,"ig":ma,"jg":Qx,"kg":Px,"lg":Ox,"mg":eh,"ng":Jb,"og":Df,"pg":Nx,"qg":ma,"rg":Mx,"sg":Lx,"tg":Ya,"ug":Kx,"vg":ch,"wg":Of,"xg":vj,"yg":uj,"zg":tj,"Ag":Nf,"Bg":sj,"Cg":rj,"Dg":qj,"Eg":bh,"Fg":Zg,"Gg":Yg,"Hg":Vg,"Ig":fb,"Jg":eb,"Kg":yd,"Lg":xd,"Mg":Xe,"Ng":Ve,"Og":ma,"Pg":Ya,"Qg":de,"Rg":nb,"Sg":Ya,"Tg":Jx,"Ug":nb,"Vg":Ix,"Wg":ch,"Xg":Of,"Yg":Hx,"Zg":Mf,"_g":Lf,"$g":pj,"ah":oj,"bh":nj,"ch":Gx,"dh":ri,"eh":Fx,"fh":Ex,"gh":Dx,"hh":bh,"ih":Zg,"jh":Yg,"kh":Vg,"lh":fb,"mh":eb,"nh":yd,"oh":xd,"ph":Xe,"qh":Ve,"rh":ma,"sh":oe,"th":Cx,"uh":Bx,"vh":Ax,"wh":Va,"xh":ce,"yh":hd,"zh":gd,"Ah":mj,"Bh":lj,"Ch":lz,"Dh":Rf,"Eh":yx,"Fh":xx,"Gh":wx,"Hh":vx,"Ih":Da,"Jh":ux,"Kh":rm,"Lh":ma,"Mh":fd,"Nh":ed,"Oh":od,"Ph":cd,"Qh":Da,"Rh":tx,"Sh":fd,"Th":ed,"Uh":od,"Vh":cd,"Wh":Zh,"Xh":kj,"Yh":Jf,"Zh":jj,"_h":ij,"$h":hj,"ai":Da,"bi":sx,"ci":qm,"di":rx,"ei":qx,"fi":_m,"gi":px,"hi":jn,"ii":ox,"ji":nx,"ki":mx,"li":lx,"mi":kx,"ni":nm,"oi":mm,"pi":jm,"qi":im,"ri":fb,"si":eb,"ti":ma,"ui":jx,"vi":ix,"wi":za,"xi":ya,"yi":Ca,"zi":Ua,"Ai":Ta,"Bi":ma,"Ci":hx,"Di":Ua,"Ei":Ta,"Fi":za,"Gi":ya,"Hi":Ca,"Ii":ma,"Ji":gx,"Ki":Ua,"Li":Ta,"Mi":Se,"Ni":Ng,"Oi":Mg,"Pi":za,"Qi":ya,"Ri":Ca,"Si":ma,"Ti":fx,"Ui":Ua,"Vi":Ta,"Wi":Se,"Xi":Ng,"Yi":Mg,"Zi":za,"_i":ya,"$i":Ca,"aj":ma,"bj":ex,"cj":Ua,"dj":Ta,"ej":za,"fj":ya,"gj":Ca,"hj":ma,"ij":dx,"jj":Ua,"kj":Ta,"lj":za,"mj":ya,"nj":Ca,"oj":ma,"pj":cx,"qj":Ua,"rj":Ta,"sj":za,"tj":ya,"uj":Ca,"vj":ma,"wj":bx,"xj":za,"yj":ya,"zj":Ca,"Aj":ma,"Bj":ax,"Cj":za,"Dj":ya,"Ej":Ca,"Fj":ma,"Gj":$w,"Hj":za,"Ij":ya,"Jj":Ca,"Kj":ma,"Lj":Ya,"Mj":de,"Nj":nb,"Oj":Va,"Pj":_w,"Qj":Zw,"Rj":Yw,"Sj":Xw,"Tj":Ya,"Uj":Ww,"Vj":nb,"Wj":Ya,"Xj":Vw,"Yj":Uw,"Zj":Df,"_j":Tw,"$j":Jf,"ak":Sw,"bk":ma,"ck":Rw,"dk":Qw,"ek":Pw,"fk":Ow,"gk":Nw,"hk":Ua,"ik":Ta,"jk":Mw,"kk":Lw,"lk":Kw,"mk":Se,"nk":za,"ok":ya,"pk":Ca,"qk":ma,"rk":Jw,"sk":Iw,"tk":Hw,"uk":Gw,"vk":Fw,"wk":Ew,"xk":Dw,"yk":Cw,"zk":$d,"Ak":Bw,"Bk":Aw,"Ck":zw,"Dk":yw,"Ek":xw,"Fk":Ua,"Gk":Ta,"Hk":za,"Ik":ya,"Jk":Ca,"Kk":ma,"Lk":fd,"Mk":ed,"Nk":Ad,"Ok":Ya,"Pk":ww,"Qk":nb,"Rk":vw,"Sk":uw,"Tk":tw,"Uk":sw,"Vk":rw,"Wk":qw,"Xk":pw,"Yk":ow,"Zk":Wl,"_k":ma,"$k":nw,"al":za,"bl":ya,"cl":Ca,"dl":ma,"el":mw,"fl":za,"gl":ya,"hl":Ca,"il":ma,"jl":lw,"kl":jw,"ll":za,"ml":ya,"nl":Ca,"ol":ma,"pl":iw,"ql":Ua,"rl":Ta,"sl":za,"tl":ya,"ul":Ca,"vl":ma,"wl":hw,"xl":gw,"yl":fw,"zl":ew,"Al":Da,"Bl":dw,"Cl":Da,"Dl":cw,"El":sf,"Fl":bw,"Gl":aw,"Hl":ma,"Il":$v,"Jl":_v,"Kl":ma,"Ll":Tl,"Ml":Rl,"Nl":Nl,"Ol":Jg,"Pl":od,"Ql":cd,"Rl":ma,"Sl":Zv,"Tl":Yv,"Ul":ql,"Vl":vl,"Wl":cj,"Xl":rl,"Yl":Wv,"Zl":el,"_l":Vv,"$l":Uv,"am":Uk,"bm":Ca,"cm":td,"dm":Dl,"em":za,"fm":ya,"gm":Ne,"hm":Me,"im":Le,"jm":Fe,"km":Ee,"lm":Be,"mm":Ae,"nm":ma,"om":Tv,"pm":Sv,"qm":Rv,"rm":Qv,"sm":Jg,"tm":Pv,"um":Nv,"vm":Mv,"wm":Lv,"xm":fb,"ym":eb,"zm":yd,"Am":xd,"Bm":Kv,"Cm":Jv,"Dm":$i,"Em":_i,"Fm":Ov,"Gm":Hv,"Hm":Gv,"Im":Fv,"Jm":Ev,"Km":Dv,"Lm":Cv,"Mm":Bv,"Nm":Zi,"Om":Av,"Pm":zv,"Qm":yv,"Rm":ma,"Sm":xv,"Tm":cj,"Um":wv,"Vm":vv,"Wm":uv,"Xm":za,"Ym":ya,"Zm":Ne,"_m":Me,"$m":Le,"an":Fe,"bn":Ee,"cn":Be,"dn":Ae,"en":ma,"fn":tv,"gn":sv,"hn":rv,"jn":qv,"kn":pv,"ln":za,"mn":ya,"nn":Ne,"on":Me,"pn":Le,"qn":Fe,"rn":Ee,"sn":Be,"tn":Ae,"un":ma,"vn":ov,"wn":nv,"xn":fd,"yn":ed,"zn":od,"An":cd,"Bn":Da,"Cn":mv,"Dn":lv,"En":ma,"Fn":kv,"Gn":Da,"Hn":jv,"In":iv,"Jn":hv,"Kn":gv,"Ln":fv,"Mn":Ad,"Nn":ev,"On":td,"Pn":Ik,"Qn":ma,"Rn":ma,"Sn":Uf,"Tn":dv,"Un":ma,"Vn":cv,"Wn":bv,"Xn":av,"Yn":$u,"Zn":ma,"_n":td,"$n":ma,"ao":ma,"bo":_u,"co":ma,"eo":Zu,"fo":Yu,"go":Xu,"ho":Wu,"io":Ad,"jo":Vu,"ko":Uu,"lo":Ff,"mo":Ef,"no":Tu,"oo":Su,"po":Ru,"qo":Qu,"ro":Pu,"so":Ou,"to":Nu,"uo":Mu,"vo":Lu,"wo":Ku,"xo":Ju,"yo":Iu,"zo":Hu,"Ao":Gu,"Bo":Fu,"Co":Eu,"Do":Du,"Eo":Cu,"Fo":Bu,"Go":Au,"Ho":zu,"Io":yu,"Jo":Da,"Ko":xu,"Lo":qc,"Mo":wu,"No":vu,"Oo":uu,"Po":tu,"Qo":su,"Ro":ru,"So":qu,"To":ou,"Uo":nu,"Vo":mu,"Wo":lu,"Xo":ku,"Yo":ju,"Zo":iu,"_o":hu,"$o":gu,"ap":fu,"bp":eu,"cp":du,"dp":cu,"ep":bu,"fp":au,"gp":$t,"hp":_t,"ip":Zt,"jp":Yt,"kp":Xt,"lp":Wt,"mp":Vt,"np":Ut,"op":pc,"pp":Tt,"qp":St,"rp":Rt,"sp":ld,"tp":kd,"up":tc,"vp":jd,"wp":id,"xp":dd,"yp":bd,"zp":ad,"Ap":$c,"Bp":_c,"Cp":Zc,"Dp":Yc,"Ep":Xc,"Fp":Wc,"Gp":Vc,"Hp":Uc,"Ip":Tc,"Jp":qc,"Kp":Sc,"Lp":Rc,"Mp":Qc,"Np":Jb,"Op":Pc,"Pp":Mc,"Qp":lb,"Rp":kb,"Sp":lb,"Tp":kb,"Up":pc,"Vp":Lc,"Wp":Qt,"Xp":be,"Yp":ae,"Zp":fb,"_p":eb,"$p":Oc,"aq":Nc,"bq":Da,"cq":Pt,"dq":Ot,"eq":Nt,"fq":Mt,"gq":Lt,"hq":Kt,"iq":Ib,"jq":Hb,"kq":Gb,"lq":Fb,"mq":Eb,"nq":pu,"oq":Jt,"pq":ma,"qq":It,"rq":Ht,"sq":Gt,"tq":Ft,"uq":Et,"vq":Dt,"wq":Ct,"xq":Bt,"yq":zk,"zq":rk,"Aq":pk,"Bq":mk,"Cq":oe,"Dq":Ib,"Eq":Hb,"Fq":Gb,"Gq":Fb,"Hq":Eb,"Iq":ma,"Jq":At,"Kq":ma,"Lq":zt,"Mq":yt,"Nq":xt,"Oq":wt,"Pq":vt,"Qq":ut,"Rq":tt,"Sq":st,"Tq":rt,"Uq":qt,"Vq":Ib,"Wq":Hb,"Xq":Gb,"Yq":Fb,"Zq":Eb,"_q":ma,"$q":pt,"ar":ot,"br":nt,"cr":mt,"dr":lt,"er":kt,"fr":jt,"gr":it,"hr":ht,"ir":gt,"jr":ft,"kr":et,"lr":dt,"mr":ct,"nr":Ib,"or":Hb,"pr":Gb,"qr":Fb,"rr":Eb,"sr":ma,"tr":bt,"ur":at,"vr":$s,"wr":_s,"xr":tc,"yr":Zs,"zr":Ys,"Ar":Xs,"Br":Ws,"Cr":Vs,"Dr":Us,"Er":Ib,"Fr":Hb,"Gr":Gb,"Hr":Fb,"Ir":Eb,"Jr":ma,"Kr":Ts,"Lr":Ib,"Mr":Hb,"Nr":Gb,"Or":Fb,"Pr":Eb,"Qr":ma,"Rr":ma,"Sr":be,"Tr":ae,"Ur":od,"Vr":cd,"Wr":yd,"Xr":xd,"Yr":oc,"Zr":Kc,"_r":Ss,"$r":Rs,"as":Qs,"bs":Ps,"cs":Os,"ds":Ns,"es":Ms,"fs":Ls,"gs":Ri,"hs":Qi,"is":Ks,"js":Js,"ks":Cf,"ls":Bf,"ms":Da,"ns":Is,"os":Hs,"ps":Gs,"qs":Fs,"rs":Pi,"ss":Ni,"ts":Da,"us":Es,"vs":be,"ws":ae,"xs":fb,"ys":eb,"zs":Oc,"As":Nc,"Bs":oc,"Cs":Kc,"Ds":Oi,"Es":Mi,"Fs":Li,"Gs":Ki,"Hs":Va,"Is":ce,"Js":hd,"Ks":gd,"Ls":Af,"Ms":zf,"Ns":Da,"Os":Ds,"Ps":Ej,"Qs":ma,"Rs":Va,"Ss":ce,"Ts":hd,"Us":gd,"Vs":Af,"Ws":zf,"Xs":uj,"Ys":tj,"Zs":Nf,"_s":sj,"$s":rj,"at":qj,"bt":Cs,"ct":Bs,"dt":Ji,"et":Ii,"ft":Da,"gt":Va,"ht":ce,"it":hd,"jt":gd,"kt":mj,"lt":lj,"mt":Hi,"nt":Gi,"ot":Fi,"pt":Ei,"qt":Di,"rt":Ci,"st":Bi,"tt":Ai,"ut":zi,"vt":yi,"wt":xi,"xt":wi,"yt":vi,"zt":ui,"At":ti,"Bt":si,"Ct":As,"Dt":zs,"Et":Da,"Ft":ys,"Gt":xs,"Ht":ws,"It":vs,"Jt":us,"Kt":kw,"Lt":ts,"Mt":ss,"Nt":rs,"Ot":qs,"Pt":ps,"Qt":os,"Rt":ns,"St":ms,"Tt":ls,"Ut":ks,"Vt":js,"Wt":Xv,"Xt":is,"Yt":Iv,"Zt":hs,"_t":gs,"$t":fs,"au":es,"bu":ds,"cu":cs,"du":bs,"eu":as,"fu":$r,"gu":Va,"hu":_r,"iu":Zr,"ju":Yr,"ku":ri,"lu":Xr,"mu":Wr,"nu":Vr,"ou":Ur,"pu":Tr,"qu":Sr,"ru":Rr,"su":Qr,"tu":Pr,"uu":Or,"vu":Nr,"wu":Mr,"xu":Lr,"yu":Kr,"zu":Jr,"Au":Ir,"Bu":Hr,"Cu":Da,"Du":Gr,"Eu":Fr,"Fu":Er,"Gu":nd,"Hu":Dr,"Iu":Cr,"Ju":Br,"Ku":Ar,"Lu":zr,"Mu":yr,"Nu":xr,"Ou":wr,"Pu":vr,"Qu":ur,"Ru":tr,"Su":sr,"Tu":rr,"Uu":qr,"Vu":pr,"Wu":or,"Xu":nr,"Yu":Tf,"Zu":ma,"_u":mr,"$u":lr,"av":kr,"bv":jr,"cv":ir,"dv":hr,"ev":gr,"fv":fr,"gv":er,"hv":dr,"iv":cr,"jv":br,"kv":ar,"lv":$q,"mv":_q,"nv":Zq,"ov":Yq,"pv":Xq,"qv":Wq,"rv":Vq,"sv":Uq,"tv":Tq,"uv":Sq,"vv":Rq,"wv":Qq,"xv":Pq,"yv":Oq,"zv":Mq,"Av":Lq,"Bv":Kq,"Cv":Tf,"Dv":ma,"Ev":Jq,"Fv":ld,"Gv":kd,"Hv":tc,"Iv":jd,"Jv":id,"Kv":dd,"Lv":bd,"Mv":ad,"Nv":$c,"Ov":_c,"Pv":Zc,"Qv":Yc,"Rv":Xc,"Sv":Wc,"Tv":Vc,"Uv":Uc,"Vv":Tc,"Wv":qc,"Xv":Sc,"Yv":Rc,"Zv":Qc,"_v":Jb,"$v":Pc,"aw":Mc,"bw":lb,"cw":kb,"dw":lb,"ew":kb,"fw":pc,"gw":Dj,"hw":Cj,"iw":Lc,"jw":Iq,"kw":ma,"lw":Hq,"mw":be,"nw":ae,"ow":fb,"pw":eb,"qw":Oc,"rw":Nc,"sw":oc,"tw":Kc,"uw":hd,"vw":gd,"ww":$i,"xw":_i,"yw":Gq,"zw":Fq,"Aw":Mf,"Bw":Lf,"Cw":Eq,"Dw":Dq,"Ew":Cq,"Fw":Of,"Gw":vj,"Hw":Cf,"Iw":Bf,"Jw":Da,"Kw":Ya,"Lw":Bq,"Mw":nb,"Nw":Zh,"Ow":kj,"Pw":Jf,"Qw":jj,"Rw":Mf,"Sw":Lf,"Tw":pj,"Uw":oj,"Vw":nj,"Ww":Aq,"Xw":zq,"Yw":yq,"Zw":Ff,"_w":Ef,"$w":Da,"ax":Ya,"bx":xq,"cx":nb,"dx":fb,"ex":eb,"fx":Oc,"gx":Nc,"hx":oc,"ix":Kc,"jx":Xe,"kx":Ve,"lx":Da,"mx":Ya,"nx":de,"ox":nb,"px":fd,"qx":ed,"rx":Df,"sx":wq,"tx":Pi,"ux":Ni,"vx":oi,"wx":ni,"xx":jn,"yx":vq,"zx":uq,"Ax":tq,"Bx":Ff,"Cx":Ef,"Dx":Da,"Ex":Ya,"Fx":sq,"Gx":mb,"Hx":rq,"Ix":qq,"Jx":nb,"Kx":fb,"Lx":eb,"Mx":Oc,"Nx":Nc,"Ox":oc,"Px":Kc,"Qx":Oi,"Rx":Mi,"Sx":Li,"Tx":Ki,"Ux":oi,"Vx":ni,"Wx":Ri,"Xx":Qi,"Yx":Af,"Zx":zf,"_x":Cf,"$x":Bf,"ay":ij,"by":hj,"cy":ii,"dy":hi,"ey":Hi,"fy":Gi,"gy":Fi,"hy":Ei,"iy":Di,"jy":Ci,"ky":Bi,"ly":Ai,"my":zi,"ny":yi,"oy":xi,"py":wi,"qy":vi,"ry":ui,"sy":ti,"ty":si,"uy":zx,"vy":pq,"wy":Nq,"xy":oq,"yy":Ji,"zy":Ii,"Ay":nq,"By":mq,"Cy":lq,"Dy":kq,"Ey":jq,"Fy":iq,"Gy":hq,"Hy":gq,"Iy":fq,"Jy":eq,"Ky":dq,"Ly":cq,"My":bq,"Ny":aq,"Oy":$p,"Py":_p,"Qy":Zp,"Ry":Yp,"Sy":Xp,"Ty":Vp,"Uy":Up,"Vy":Tp,"Wy":Sp,"Xy":Rp,"Yy":Qp,"Zy":Pp,"_y":Op,"$y":Np,"az":Mp,"bz":Lp,"cz":Kp,"dz":Jp,"ez":ld,"fz":kd,"gz":tc,"hz":jd,"iz":id,"jz":dd,"kz":bd,"lz":ad,"mz":$c,"nz":_c,"oz":Zc,"pz":Yc,"qz":Xc,"rz":Wc,"sz":Vc,"tz":Uc,"uz":Tc,"vz":qc,"wz":Sc,"xz":Rc,"yz":Qc,"zz":Jb,"Az":Pc,"Bz":Mc,"Cz":lb,"Dz":kb,"Ez":lb,"Fz":kb,"Gz":pc,"Hz":Ip,"Iz":Hp,"Jz":Gp,"Kz":Fp,"Lz":Ep,"Mz":Dp,"Nz":Cp,"Oz":Ap,"Pz":zp,"Qz":yp,"Rz":Lc,"Sz":xp,"Tz":wp,"Uz":ma,"Vz":vp,"Wz":ma,"Xz":Ya,"Yz":de,"Zz":nb,"_z":up,"$z":tp,"aA":sp,"bA":Ge,"cA":rp,"dA":qp,"eA":_d,"fA":Yd,"gA":Rd,"hA":$e,"iA":Gj,"jA":Fj,"kA":Oe,"lA":ye,"mA":re,"nA":ne,"oA":ke,"pA":je,"qA":nd,"rA":he,"sA":ge,"tA":fe,"uA":ck,"vA":pp,"wA":Xj,"xA":Uj,"yA":Rj,"zA":Pj,"AA":Nj,"BA":Uf,"CA":Mj,"DA":Lj,"EA":Kj,"FA":Jj,"GA":Ij,"HA":Hj,"IA":$d,"JA":yf,"KA":xf,"LA":wf,"MA":uf,"NA":tf,"OA":ma,"PA":op,"QA":np,"RA":mp,"SA":lp,"TA":kp,"UA":jp,"VA":ip,"WA":Da,"XA":ei,"YA":pf,"ZA":of,"_A":ci,"$A":bi,"aB":hp,"bB":ei,"cB":pf,"dB":of,"eB":pf,"fB":of,"gB":ci,"hB":bi,"iB":ha,"jB":Yf}}return ja(ka)} // EMSCRIPTEN_END_ASM )(a)}function Aa(a){return{then:function(c){c({instance:new za(a)})}}}var Ba=Error,WebAssembly={};wa=[];"object"!=typeof WebAssembly&&Ca("no native wasm support detected"); var Da,Ea=!1,Fa="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0; function Ga(a,c){if(a){var d=Ha,e=a+c;for(c=a;d[c]&&!(c>=e);)++c;if(16g?e+=String.fromCharCode(g):(g-=65536,e+=String.fromCharCode(55296|g>>10,56320|g&1023))}}else e+=String.fromCharCode(g)}a=e}}else a="";return a} var Ja,Ha,Ka,La,Ma,ya=b.INITIAL_MEMORY||67108864;65536<=ya||Ca("INITIAL_MEMORY should be larger than STACK_SIZE, was "+ya+"! (STACK_SIZE=65536)");Da=b.wasmMemory?b.wasmMemory:new xa;var Na=Da.buffer;b.HEAP8=Ja=new Int8Array(Na);b.HEAP16=new Int16Array(Na);b.HEAP32=Ka=new Int32Array(Na);b.HEAPU8=Ha=new Uint8Array(Na);b.HEAPU16=new Uint16Array(Na);b.HEAPU32=new Uint32Array(Na);b.HEAPF32=La=new Float32Array(Na);b.HEAPF64=Ma=new Float64Array(Na);ya=Da.buffer.byteLength;var Oa,Pa=[],Qa=[],Ra=[],Sa=!1; function Ta(){var a=b.preRun.shift();Pa.unshift(a)}Math.imul||(Math.imul=function(a,c){var d=a&65535,e=c&65535;return d*e+((a>>>16)*e+d*(c>>>16)<<16)|0});if(!Math.fround){var Ua=new Float32Array(1);Math.fround=function(a){Ua[0]=a;return Ua[0]}}Math.clz32||(Math.clz32=function(a){var c=32,d=a>>16;d&&(c-=16,a=d);if(d=a>>8)c-=8,a=d;if(d=a>>4)c-=4,a=d;if(d=a>>2)c-=2,a=d;return a>>1?c-2:c-a});Math.trunc||(Math.trunc=function(a){return 0>a?Math.ceil(a):Math.floor(a)});var Va=0,Wa=null,Xa=null; function Ca(a){if(b.onAbort)b.onAbort(a);a="Aborted("+a+")";va(a);Ea=!0;a=new Ba(a+". Build with -sASSERTIONS for more info.");ka(a);throw a;}var Ya="data:application/octet-stream;base64,",Za;Za="<<< WASM_BINARY_FILE >>>";if(!Za.startsWith(Ya)){var $a=Za;Za=b.locateFile?b.locateFile($a,pa):pa+$a}function ab(a){try{if(a==Za&&wa)return new Uint8Array(wa);var c=ua(a);if(c)return c;if(sa)return sa(a);throw"both async and sync fetching of the wasm failed";}catch(d){Ca(d)}} function bb(a){if(!wa&&(ma||na)){if("function"==typeof fetch&&!a.startsWith("file://"))return fetch(a,{credentials:"same-origin"}).then(function(c){if(!c.ok)throw"failed to load wasm binary file at '"+a+"'";return c.arrayBuffer()}).catch(function(){return ab(a)});if(ra)return new Promise(function(c,d){ra(a,function(e){c(new Uint8Array(e))},d)})}return Promise.resolve().then(function(){return ab(a)})} function cb(a,c,d){return bb(a).then(function(){return Aa(c)}).then(function(e){return e}).then(d,function(e){va("failed to asynchronously prepare wasm: "+e);Ca(e)})} function db(a,c){var d=Za;return wa||"function"!=typeof WebAssembly.instantiateStreaming||d.startsWith(Ya)||d.startsWith("file://")||oa||"function"!=typeof fetch?cb(d,a,c):fetch(d,{credentials:"same-origin"}).then(function(e){return WebAssembly.instantiateStreaming(e,a).then(c,function(g){va("wasm streaming compile failed: "+g);va("falling back to ArrayBuffer instantiation");return cb(d,a,c)})})} var eb={27338:function(a,c,d,e){a=b.getCache(b.DebugDrawer)[a];if(!a.hasOwnProperty("drawLine"))throw"a JSImplementation must implement all functions, you forgot DebugDrawer::drawLine.";a.drawLine(c,d,e)},27558:function(a,c,d,e,g,m){a=b.getCache(b.DebugDrawer)[a];if(!a.hasOwnProperty("drawContactPoint"))throw"a JSImplementation must implement all functions, you forgot DebugDrawer::drawContactPoint.";a.drawContactPoint(c,d,e,g,m)},27808:function(a,c){a=b.getCache(b.DebugDrawer)[a];if(!a.hasOwnProperty("reportErrorWarning"))throw"a JSImplementation must implement all functions, you forgot DebugDrawer::reportErrorWarning."; a.reportErrorWarning(c)},28052:function(a,c,d){a=b.getCache(b.DebugDrawer)[a];if(!a.hasOwnProperty("draw3dText"))throw"a JSImplementation must implement all functions, you forgot DebugDrawer::draw3dText.";a.draw3dText(c,d)},28275:function(a,c){a=b.getCache(b.DebugDrawer)[a];if(!a.hasOwnProperty("setDebugMode"))throw"a JSImplementation must implement all functions, you forgot DebugDrawer::setDebugMode.";a.setDebugMode(c)},28501:function(a){a=b.getCache(b.DebugDrawer)[a];if(!a.hasOwnProperty("getDebugMode"))throw"a JSImplementation must implement all functions, you forgot DebugDrawer::getDebugMode."; return a.getDebugMode()},28732:function(a,c){a=b.getCache(b.MotionState)[a];if(!a.hasOwnProperty("getWorldTransform"))throw"a JSImplementation must implement all functions, you forgot MotionState::getWorldTransform.";a.getWorldTransform(c)},28973:function(a,c){a=b.getCache(b.MotionState)[a];if(!a.hasOwnProperty("setWorldTransform"))throw"a JSImplementation must implement all functions, you forgot MotionState::setWorldTransform.";a.setWorldTransform(c)},29214:function(a,c,d,e,g,m,y,W){a=b.getCache(b.ConcreteContactResultCallback)[a]; if(!a.hasOwnProperty("addSingleResult"))throw"a JSImplementation must implement all functions, you forgot ConcreteContactResultCallback::addSingleResult.";return a.addSingleResult(c,d,e,g,m,y,W)}};function fb(a){for(;0>=2;e=Ha[c++];)d+=105!=e&d,gb.push(105==e?Ka[d]:Ma[d++>>1]),++d;return eb[a].apply(null,gb)} var ib=[],jb=void 0,kb=[],lb="function"==typeof atob?atob:function(a){var c="",d=0;a=a.replace(/[^A-Za-z0-9\+\/=]/g,"");do{var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));var g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));var m="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));var y="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++)); e=e<<2|g>>4;g=(g&15)<<4|m>>2;var W=(m&3)<<6|y;c+=String.fromCharCode(e);64!==m&&(c+=String.fromCharCode(g));64!==y&&(c+=String.fromCharCode(W))}while(d=ib.length&&(ib.length=e+1),ib[e]=g=Oa.get(e));(e=g)&&jb.set(e,d)}}if(c=jb.get(a)||0)return c;if(kb.length)c=kb.pop();else{try{Oa.grow(1)}catch(m){if(!(m instanceof RangeError))throw m;throw"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH.";}c=Oa.length-1}try{d=c,Oa.set(d,a),ib[d]=Oa.get(d)}catch(m){if(!(m instanceof TypeError))throw m;d=c;Oa.set(d,void 0);ib[d]=Oa.get(d)}jb.set(a, c);return c};var aE;Xa=function bE(){aE||cE();aE||(Xa=bE)}; function cE(){function a(){if(!aE&&(aE=!0,b.calledRun=!0,!Ea)){Sa=!0;fb(Qa);ja(b);if(b.onRuntimeInitialized)b.onRuntimeInitialized();if(b.postRun)for("function"==typeof b.postRun&&(b.postRun=[b.postRun]);b.postRun.length;){var c=b.postRun.shift();Ra.unshift(c)}fb(Ra)}}if(!(0=eE?(0>>=0;switch(c.BYTES_PER_ELEMENT){case 2:d>>>=1;break;case 4:d>>>=2;break;case 8:d>>>=3}for(var e=0;e=e?c++:2047>=e?c+=2:55296<=e&&57343>=e?(c+=4,++d):c+=3}c=Array(c+1);e=c.length;d=0;if(0=m){var y=a.charCodeAt(++g);m=65536+((m&1023)<<10)|y&1023}if(127>=m){if(d>=e)break;c[d++]=m}else{if(2047>=m){if(d+1>=e)break;c[d++]=192|m>>6}else{if(65535>=m){if(d+2>=e)break;c[d++]=224|m>>12}else{if(d+3>=e)break;c[d++]=240|m>>18;c[d++]= 128|m>>12&63}c[d++]=128|m>>6&63}c[d++]=128|m&63}}c[d]=0}a=jE(c,Ja);kE(c,Ja,a);return a}return a}function mE(a){if("object"===typeof a){var c=jE(a,La);kE(a,La,c);return c}return a}function l(){throw"cannot construct a btCollisionShape, no constructor in IDL";}l.prototype=Object.create(f.prototype);l.prototype.constructor=l;l.prototype.lB=l;l.mB={};b.btCollisionShape=l;l.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);nb(c,a)}; l.prototype.getLocalScaling=function(){return k(ob(this.kB),n)};l.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);pb(d,a,c)};l.prototype.setMargin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);qb(c,a)};l.prototype.getMargin=function(){return rb(this.kB)};l.prototype.__destroy__=function(){sb(this.kB)};function nE(){throw"cannot construct a btCollisionWorld, no constructor in IDL";}nE.prototype=Object.create(f.prototype); nE.prototype.constructor=nE;nE.prototype.lB=nE;nE.mB={};b.btCollisionWorld=nE;nE.prototype.getDispatcher=function(){return k(tb(this.kB),oE)};nE.prototype.rayTest=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);ub(e,a,c,d)};nE.prototype.getPairCache=function(){return k(vb(this.kB),pE)};nE.prototype.getDispatchInfo=function(){return k(wb(this.kB),q)}; nE.prototype.addCollisionObject=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);void 0===c?xb(e,a):void 0===d?yb(e,a,c):zb(e,a,c,d)};nE.prototype.removeCollisionObject=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ab(c,a)};nE.prototype.getBroadphase=function(){return k(Bb(this.kB),qE)}; nE.prototype.convexSweepTest=function(a,c,d,e,g){var m=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);Cb(m,a,c,d,e,g)};nE.prototype.contactPairTest=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);Db(e,a,c,d)}; nE.prototype.contactTest=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Fb(d,a,c)};nE.prototype.updateSingleAabb=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Gb(c,a)};nE.prototype.setDebugDrawer=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Hb(c,a)};nE.prototype.getDebugDrawer=function(){return k(Ib(this.kB),rE)};nE.prototype.debugDrawWorld=function(){Jb(this.kB)}; nE.prototype.debugDrawObject=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);Kb(e,a,c,d)};nE.prototype.__destroy__=function(){Lb(this.kB)};function r(){throw"cannot construct a btCollisionObject, no constructor in IDL";}r.prototype=Object.create(f.prototype);r.prototype.constructor=r;r.prototype.lB=r;r.mB={};b.btCollisionObject=r; r.prototype.setAnisotropicFriction=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Mb(d,a,c)};r.prototype.getCollisionShape=function(){return k(Nb(this.kB),l)};r.prototype.setContactProcessingThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ob(c,a)};r.prototype.setActivationState=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Pb(c,a)}; r.prototype.forceActivationState=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Qb(c,a)};r.prototype.activate=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);void 0===a?Rb(c):Sb(c,a)};r.prototype.isActive=function(){return!!Tb(this.kB)};r.prototype.isKinematicObject=function(){return!!Ub(this.kB)};r.prototype.isStaticObject=function(){return!!Vb(this.kB)};r.prototype.isStaticOrKinematicObject=function(){return!!Wb(this.kB)};r.prototype.getRestitution=function(){return Xb(this.kB)}; r.prototype.getFriction=function(){return Yb(this.kB)};r.prototype.getRollingFriction=function(){return Zb(this.kB)};r.prototype.setRestitution=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);$b(c,a)};r.prototype.setFriction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ac(c,a)};r.prototype.setRollingFriction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);bc(c,a)};r.prototype.getWorldTransform=function(){return k(cc(this.kB),t)};r.prototype.getCollisionFlags=function(){return dc(this.kB)}; r.prototype.setCollisionFlags=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ec(c,a)};r.prototype.setWorldTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);gc(c,a)};r.prototype.setCollisionShape=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);hc(c,a)};r.prototype.setCcdMotionThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ic(c,a)};r.prototype.setCcdSweptSphereRadius=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);jc(c,a)}; r.prototype.getUserIndex=function(){return kc(this.kB)};r.prototype.setUserIndex=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);lc(c,a)};r.prototype.getUserPointer=function(){return k(mc(this.kB),sE)};r.prototype.setUserPointer=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);nc(c,a)};r.prototype.getBroadphaseHandle=function(){return k(oc(this.kB),tE)};r.prototype.__destroy__=function(){pc(this.kB)}; function uE(){throw"cannot construct a btConcaveShape, no constructor in IDL";}uE.prototype=Object.create(l.prototype);uE.prototype.constructor=uE;uE.prototype.lB=uE;uE.mB={};b.btConcaveShape=uE;uE.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);qc(c,a)};uE.prototype.getLocalScaling=function(){return k(sc(this.kB),n)};uE.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);tc(d,a,c)}; uE.prototype.__destroy__=function(){uc(this.kB)};function vE(){throw"cannot construct a btCollisionAlgorithm, no constructor in IDL";}vE.prototype=Object.create(f.prototype);vE.prototype.constructor=vE;vE.prototype.lB=vE;vE.mB={};b.btCollisionAlgorithm=vE;vE.prototype.__destroy__=function(){vc(this.kB)};function wE(){throw"cannot construct a btTypedConstraint, no constructor in IDL";}wE.prototype=Object.create(f.prototype);wE.prototype.constructor=wE;wE.prototype.lB=wE;wE.mB={}; b.btTypedConstraint=wE;wE.prototype.enableFeedback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);wc(c,a)};wE.prototype.getBreakingImpulseThreshold=function(){return xc(this.kB)};wE.prototype.setBreakingImpulseThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);yc(c,a)};wE.prototype.getParam=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);return zc(d,a,c)}; wE.prototype.setParam=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);Ac(e,a,c,d)};wE.prototype.__destroy__=function(){Bc(this.kB)};function xE(){throw"cannot construct a btDynamicsWorld, no constructor in IDL";}xE.prototype=Object.create(nE.prototype);xE.prototype.constructor=xE;xE.prototype.lB=xE;xE.mB={};b.btDynamicsWorld=xE;xE.prototype.addAction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Cc(c,a)}; xE.prototype.removeAction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Dc(c,a)};xE.prototype.getSolverInfo=function(){return k(Ec(this.kB),u)};xE.prototype.setInternalTickCallback=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);void 0===c?Fc(e,a):void 0===d?Gc(e,a,c):Ic(e,a,c,d)};xE.prototype.getDispatcher=function(){return k(Jc(this.kB),oE)}; xE.prototype.rayTest=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);Kc(e,a,c,d)};xE.prototype.getPairCache=function(){return k(Lc(this.kB),pE)};xE.prototype.getDispatchInfo=function(){return k(Mc(this.kB),q)}; xE.prototype.addCollisionObject=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);void 0===c?Nc(e,a):void 0===d?Oc(e,a,c):Pc(e,a,c,d)};xE.prototype.removeCollisionObject=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Qc(c,a)};xE.prototype.getBroadphase=function(){return k(Rc(this.kB),qE)}; xE.prototype.convexSweepTest=function(a,c,d,e,g){var m=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);Sc(m,a,c,d,e,g)};xE.prototype.contactPairTest=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);Tc(e,a,c,d)}; xE.prototype.contactTest=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Wc(d,a,c)};xE.prototype.updateSingleAabb=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Xc(c,a)};xE.prototype.setDebugDrawer=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Yc(c,a)};xE.prototype.getDebugDrawer=function(){return k(Zc(this.kB),rE)};xE.prototype.debugDrawWorld=function(){$c(this.kB)}; xE.prototype.debugDrawObject=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);ad(e,a,c,d)};xE.prototype.__destroy__=function(){bd(this.kB)};function rE(){throw"cannot construct a btIDebugDraw, no constructor in IDL";}rE.prototype=Object.create(f.prototype);rE.prototype.constructor=rE;rE.prototype.lB=rE;rE.mB={};b.btIDebugDraw=rE; rE.prototype.drawLine=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);cd(e,a,c,d)};rE.prototype.drawContactPoint=function(a,c,d,e,g){var m=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);dd(m,a,c,d,e,g)}; rE.prototype.reportErrorWarning=function(a){var c=this.kB;iE();a=a&&"object"===typeof a?a.kB:lE(a);ed(c,a)};rE.prototype.draw3dText=function(a,c){var d=this.kB;iE();a&&"object"===typeof a&&(a=a.kB);c=c&&"object"===typeof c?c.kB:lE(c);fd(d,a,c)};rE.prototype.setDebugMode=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);gd(c,a)};rE.prototype.getDebugMode=function(){return hd(this.kB)};rE.prototype.__destroy__=function(){jd(this.kB)}; function n(a,c,d){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);this.kB=void 0===a?kd():void 0===c?_emscripten_bind_btVector3_btVector3_1(a):void 0===d?_emscripten_bind_btVector3_btVector3_2(a,c):ld(a,c,d);h(n)[this.kB]=this}n.prototype=Object.create(f.prototype);n.prototype.constructor=n;n.prototype.lB=n;n.mB={};b.btVector3=n;n.prototype.length=n.prototype.length=function(){return md(this.kB)};n.prototype.x=n.prototype.x=function(){return nd(this.kB)}; n.prototype.y=n.prototype.y=function(){return od(this.kB)};n.prototype.z=n.prototype.z=function(){return pd(this.kB)};n.prototype.setX=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);qd(c,a)};n.prototype.setY=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);rd(c,a)};n.prototype.setZ=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);sd(c,a)}; n.prototype.setValue=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);td(e,a,c,d)};n.prototype.normalize=n.prototype.normalize=function(){ud(this.kB)};n.prototype.rotate=n.prototype.rotate=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);return k(vd(d,a,c),n)};n.prototype.dot=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return wd(c,a)}; n.prototype.op_mul=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(xd(c,a),n)};n.prototype.op_add=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(yd(c,a),n)};n.prototype.op_sub=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(zd(c,a),n)};n.prototype.__destroy__=function(){Ad(this.kB)};function yE(){throw"cannot construct a btQuadWord, no constructor in IDL";}yE.prototype=Object.create(f.prototype);yE.prototype.constructor=yE; yE.prototype.lB=yE;yE.mB={};b.btQuadWord=yE;yE.prototype.x=yE.prototype.x=function(){return Bd(this.kB)};yE.prototype.y=yE.prototype.y=function(){return Cd(this.kB)};yE.prototype.z=yE.prototype.z=function(){return Dd(this.kB)};yE.prototype.w=yE.prototype.w=function(){return Ed(this.kB)};yE.prototype.setX=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Fd(c,a)};yE.prototype.setY=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Gd(c,a)}; yE.prototype.setZ=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Hd(c,a)};yE.prototype.setW=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Id(c,a)};yE.prototype.__destroy__=function(){Jd(this.kB)};function zE(){throw"cannot construct a btMotionState, no constructor in IDL";}zE.prototype=Object.create(f.prototype);zE.prototype.constructor=zE;zE.prototype.lB=zE;zE.mB={};b.btMotionState=zE; zE.prototype.getWorldTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Kd(c,a)};zE.prototype.setWorldTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ld(c,a)};zE.prototype.__destroy__=function(){Md(this.kB)};function v(){throw"cannot construct a RayResultCallback, no constructor in IDL";}v.prototype=Object.create(f.prototype);v.prototype.constructor=v;v.prototype.lB=v;v.mB={};b.RayResultCallback=v;v.prototype.hasHit=function(){return!!Nd(this.kB)}; v.prototype.get_m_collisionFilterGroup=v.prototype.nB=function(){return Od(this.kB)};v.prototype.set_m_collisionFilterGroup=v.prototype.pB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Pd(c,a)};Object.defineProperty(v.prototype,"m_collisionFilterGroup",{get:v.prototype.nB,set:v.prototype.pB});v.prototype.get_m_collisionFilterMask=v.prototype.oB=function(){return Qd(this.kB)}; v.prototype.set_m_collisionFilterMask=v.prototype.qB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Rd(c,a)};Object.defineProperty(v.prototype,"m_collisionFilterMask",{get:v.prototype.oB,set:v.prototype.qB});v.prototype.get_m_closestHitFraction=v.prototype.rB=function(){return Sd(this.kB)};v.prototype.set_m_closestHitFraction=v.prototype.sB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Td(c,a)};Object.defineProperty(v.prototype,"m_closestHitFraction",{get:v.prototype.rB,set:v.prototype.sB}); v.prototype.get_m_collisionObject=v.prototype.yB=function(){return k(Ud(this.kB),r)};v.prototype.set_m_collisionObject=v.prototype.GB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Vd(c,a)};Object.defineProperty(v.prototype,"m_collisionObject",{get:v.prototype.yB,set:v.prototype.GB});v.prototype.get_m_flags=v.prototype.vB=function(){return Wd(this.kB)};v.prototype.set_m_flags=v.prototype.wB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Xd(c,a)}; Object.defineProperty(v.prototype,"m_flags",{get:v.prototype.vB,set:v.prototype.wB});v.prototype.__destroy__=function(){Yd(this.kB)};function AE(){throw"cannot construct a ContactResultCallback, no constructor in IDL";}AE.prototype=Object.create(f.prototype);AE.prototype.constructor=AE;AE.prototype.lB=AE;AE.mB={};b.ContactResultCallback=AE; AE.prototype.addSingleResult=function(a,c,d,e,g,m,y){var W=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);m&&"object"===typeof m&&(m=m.kB);y&&"object"===typeof y&&(y=y.kB);return Zd(W,a,c,d,e,g,m,y)};AE.prototype.__destroy__=function(){$d(this.kB)};function w(){throw"cannot construct a ConvexResultCallback, no constructor in IDL";}w.prototype=Object.create(f.prototype); w.prototype.constructor=w;w.prototype.lB=w;w.mB={};b.ConvexResultCallback=w;w.prototype.hasHit=function(){return!!ae(this.kB)};w.prototype.get_m_collisionFilterGroup=w.prototype.nB=function(){return be(this.kB)};w.prototype.set_m_collisionFilterGroup=w.prototype.pB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ce(c,a)};Object.defineProperty(w.prototype,"m_collisionFilterGroup",{get:w.prototype.nB,set:w.prototype.pB});w.prototype.get_m_collisionFilterMask=w.prototype.oB=function(){return de(this.kB)}; w.prototype.set_m_collisionFilterMask=w.prototype.qB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ee(c,a)};Object.defineProperty(w.prototype,"m_collisionFilterMask",{get:w.prototype.oB,set:w.prototype.qB});w.prototype.get_m_closestHitFraction=w.prototype.rB=function(){return fe(this.kB)};w.prototype.set_m_closestHitFraction=w.prototype.sB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ge(c,a)};Object.defineProperty(w.prototype,"m_closestHitFraction",{get:w.prototype.rB,set:w.prototype.sB}); w.prototype.__destroy__=function(){he(this.kB)};function BE(){throw"cannot construct a btConvexShape, no constructor in IDL";}BE.prototype=Object.create(l.prototype);BE.prototype.constructor=BE;BE.prototype.lB=BE;BE.mB={};b.btConvexShape=BE;BE.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ie(c,a)};BE.prototype.getLocalScaling=function(){return k(je(this.kB),n)}; BE.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);ke(d,a,c)};BE.prototype.setMargin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);le(c,a)};BE.prototype.getMargin=function(){return me(this.kB)};BE.prototype.__destroy__=function(){ne(this.kB)};function CE(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=oe(a,c);h(CE)[this.kB]=this}CE.prototype=Object.create(l.prototype); CE.prototype.constructor=CE;CE.prototype.lB=CE;CE.mB={};b.btCapsuleShape=CE;CE.prototype.setMargin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);pe(c,a)};CE.prototype.getMargin=function(){return qe(this.kB)};CE.prototype.getUpAxis=function(){return re(this.kB)};CE.prototype.getRadius=function(){return se(this.kB)};CE.prototype.getHalfHeight=function(){return te(this.kB)};CE.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ue(c,a)}; CE.prototype.getLocalScaling=function(){return k(ve(this.kB),n)};CE.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);we(d,a,c)};CE.prototype.__destroy__=function(){xe(this.kB)};function DE(a){a&&"object"===typeof a&&(a=a.kB);this.kB=ye(a);h(DE)[this.kB]=this}DE.prototype=Object.create(l.prototype);DE.prototype.constructor=DE;DE.prototype.lB=DE;DE.mB={};b.btCylinderShape=DE; DE.prototype.setMargin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ze(c,a)};DE.prototype.getMargin=function(){return Ae(this.kB)};DE.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Be(c,a)};DE.prototype.getLocalScaling=function(){return k(Ce(this.kB),n)};DE.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);De(d,a,c)};DE.prototype.__destroy__=function(){Ee(this.kB)}; function EE(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=Fe(a,c);h(EE)[this.kB]=this}EE.prototype=Object.create(l.prototype);EE.prototype.constructor=EE;EE.prototype.lB=EE;EE.mB={};b.btConeShape=EE;EE.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ge(c,a)};EE.prototype.getLocalScaling=function(){return k(He(this.kB),n)}; EE.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Ie(d,a,c)};EE.prototype.__destroy__=function(){Je(this.kB)};function FE(){throw"cannot construct a btStridingMeshInterface, no constructor in IDL";}FE.prototype=Object.create(f.prototype);FE.prototype.constructor=FE;FE.prototype.lB=FE;FE.mB={};b.btStridingMeshInterface=FE;FE.prototype.setScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ke(c,a)}; FE.prototype.__destroy__=function(){Le(this.kB)};function GE(){throw"cannot construct a btTriangleMeshShape, no constructor in IDL";}GE.prototype=Object.create(uE.prototype);GE.prototype.constructor=GE;GE.prototype.lB=GE;GE.mB={};b.btTriangleMeshShape=GE;GE.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Me(c,a)};GE.prototype.getLocalScaling=function(){return k(Ne(this.kB),n)}; GE.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Oe(d,a,c)};GE.prototype.__destroy__=function(){Pe(this.kB)};function HE(){throw"cannot construct a btPrimitiveManagerBase, no constructor in IDL";}HE.prototype=Object.create(f.prototype);HE.prototype.constructor=HE;HE.prototype.lB=HE;HE.mB={};b.btPrimitiveManagerBase=HE;HE.prototype.is_trimesh=function(){return!!Qe(this.kB)};HE.prototype.get_primitive_count=function(){return Re(this.kB)}; HE.prototype.get_primitive_box=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Se(d,a,c)};HE.prototype.get_primitive_triangle=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Te(d,a,c)};HE.prototype.__destroy__=function(){Ue(this.kB)};function IE(){throw"cannot construct a btGImpactShapeInterface, no constructor in IDL";}IE.prototype=Object.create(uE.prototype);IE.prototype.constructor=IE;IE.prototype.lB=IE; IE.mB={};b.btGImpactShapeInterface=IE;IE.prototype.updateBound=function(){Ve(this.kB)};IE.prototype.postUpdate=function(){We(this.kB)};IE.prototype.getShapeType=function(){return Xe(this.kB)};IE.prototype.getName=function(){return Ga(Ye(this.kB))};IE.prototype.getGImpactShapeType=function(){return Ze(this.kB)};IE.prototype.getPrimitiveManager=function(){return k($e(this.kB),HE)};IE.prototype.getNumChildShapes=function(){return af(this.kB)};IE.prototype.childrenHasTransform=function(){return!!bf(this.kB)}; IE.prototype.needsRetrieveTriangles=function(){return!!cf(this.kB)};IE.prototype.needsRetrieveTetrahedrons=function(){return!!df(this.kB)};IE.prototype.getBulletTriangle=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);ef(d,a,c)};IE.prototype.getBulletTetrahedron=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);ff(d,a,c)}; IE.prototype.getChildShape=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(gf(c,a),l)};IE.prototype.getChildTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(hf(c,a),t)};IE.prototype.setChildTransform=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);jf(d,a,c)};IE.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);kf(c,a)}; IE.prototype.getLocalScaling=function(){return k(lf(this.kB),n)};IE.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);mf(d,a,c)};IE.prototype.__destroy__=function(){nf(this.kB)};function JE(){throw"cannot construct a btActivatingCollisionAlgorithm, no constructor in IDL";}JE.prototype=Object.create(vE.prototype);JE.prototype.constructor=JE;JE.prototype.lB=JE;JE.mB={};b.btActivatingCollisionAlgorithm=JE; JE.prototype.__destroy__=function(){of(this.kB)};function KE(a){a&&"object"===typeof a&&(a=a.kB);this.kB=void 0===a?pf():qf(a);h(KE)[this.kB]=this}KE.prototype=Object.create(f.prototype);KE.prototype.constructor=KE;KE.prototype.lB=KE;KE.mB={};b.btDefaultCollisionConfiguration=KE;KE.prototype.__destroy__=function(){rf(this.kB)};function oE(){throw"cannot construct a btDispatcher, no constructor in IDL";}oE.prototype=Object.create(f.prototype);oE.prototype.constructor=oE;oE.prototype.lB=oE;oE.mB={}; b.btDispatcher=oE;oE.prototype.getNumManifolds=function(){return sf(this.kB)};oE.prototype.getManifoldByIndexInternal=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(tf(c,a),LE)};oE.prototype.__destroy__=function(){uf(this.kB)}; function ME(a,c,d,e,g){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);this.kB=void 0===e?vf(a,c,d):void 0===g?_emscripten_bind_btGeneric6DofConstraint_btGeneric6DofConstraint_4(a,c,d,e):wf(a,c,d,e,g);h(ME)[this.kB]=this}ME.prototype=Object.create(wE.prototype);ME.prototype.constructor=ME;ME.prototype.lB=ME;ME.mB={};b.btGeneric6DofConstraint=ME; ME.prototype.setLinearLowerLimit=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);xf(c,a)};ME.prototype.setLinearUpperLimit=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);yf(c,a)};ME.prototype.setAngularLowerLimit=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);zf(c,a)};ME.prototype.setAngularUpperLimit=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Af(c,a)};ME.prototype.getFrameOffsetA=function(){return k(Bf(this.kB),t)}; ME.prototype.enableFeedback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Cf(c,a)};ME.prototype.getBreakingImpulseThreshold=function(){return Df(this.kB)};ME.prototype.setBreakingImpulseThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ef(c,a)};ME.prototype.getParam=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);return Ff(d,a,c)}; ME.prototype.setParam=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);Gf(e,a,c,d)};ME.prototype.__destroy__=function(){Hf(this.kB)};function x(a,c,d,e){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);this.kB=If(a,c,d,e);h(x)[this.kB]=this}x.prototype=Object.create(xE.prototype);x.prototype.constructor=x;x.prototype.lB=x;x.mB={}; b.btDiscreteDynamicsWorld=x;x.prototype.setGravity=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Jf(c,a)};x.prototype.getGravity=function(){return k(Kf(this.kB),n)};x.prototype.addRigidBody=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);void 0===c?Lf(e,a):void 0===d?_emscripten_bind_btDiscreteDynamicsWorld_addRigidBody_2(e,a,c):Mf(e,a,c,d)}; x.prototype.removeRigidBody=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Nf(c,a)};x.prototype.addConstraint=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);void 0===c?Of(d,a):Pf(d,a,c)};x.prototype.removeConstraint=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Qf(c,a)}; x.prototype.stepSimulation=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);return void 0===c?Rf(e,a):void 0===d?Sf(e,a,c):Tf(e,a,c,d)};x.prototype.setContactAddedCallback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Uf(c,a)};x.prototype.setContactProcessedCallback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Vf(c,a)}; x.prototype.setContactDestroyedCallback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Wf(c,a)};x.prototype.getDispatcher=function(){return k(Xf(this.kB),oE)};x.prototype.rayTest=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);Yf(e,a,c,d)};x.prototype.getPairCache=function(){return k(Zf(this.kB),pE)};x.prototype.getDispatchInfo=function(){return k($f(this.kB),q)}; x.prototype.addCollisionObject=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);void 0===c?ag(e,a):void 0===d?bg(e,a,c):cg(e,a,c,d)};x.prototype.removeCollisionObject=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);dg(c,a)};x.prototype.getBroadphase=function(){return k(eg(this.kB),qE)}; x.prototype.convexSweepTest=function(a,c,d,e,g){var m=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);fg(m,a,c,d,e,g)};x.prototype.contactPairTest=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);gg(e,a,c,d)}; x.prototype.contactTest=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);hg(d,a,c)};x.prototype.updateSingleAabb=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ig(c,a)};x.prototype.setDebugDrawer=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);jg(c,a)};x.prototype.getDebugDrawer=function(){return k(kg(this.kB),rE)};x.prototype.debugDrawWorld=function(){lg(this.kB)}; x.prototype.debugDrawObject=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);mg(e,a,c,d)};x.prototype.addAction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ng(c,a)};x.prototype.removeAction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);og(c,a)};x.prototype.getSolverInfo=function(){return k(pg(this.kB),u)}; x.prototype.setInternalTickCallback=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);void 0===c?qg(e,a):void 0===d?rg(e,a,c):sg(e,a,c,d)};x.prototype.__destroy__=function(){tg(this.kB)};function NE(){throw"cannot construct a btVehicleRaycaster, no constructor in IDL";}NE.prototype=Object.create(f.prototype);NE.prototype.constructor=NE;NE.prototype.lB=NE;NE.mB={};b.btVehicleRaycaster=NE; NE.prototype.castRay=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);ug(e,a,c,d)};NE.prototype.__destroy__=function(){vg(this.kB)};function OE(){throw"cannot construct a btActionInterface, no constructor in IDL";}OE.prototype=Object.create(f.prototype);OE.prototype.constructor=OE;OE.prototype.lB=OE;OE.mB={};b.btActionInterface=OE; OE.prototype.updateAction=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);wg(d,a,c)};OE.prototype.__destroy__=function(){xg(this.kB)};function z(){this.kB=yg();h(z)[this.kB]=this}z.prototype=Object.create(r.prototype);z.prototype.constructor=z;z.prototype.lB=z;z.mB={};b.btGhostObject=z;z.prototype.getNumOverlappingObjects=function(){return zg(this.kB)}; z.prototype.getOverlappingObject=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Ag(c,a),r)};z.prototype.setAnisotropicFriction=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Bg(d,a,c)};z.prototype.getCollisionShape=function(){return k(Cg(this.kB),l)};z.prototype.setContactProcessingThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Dg(c,a)}; z.prototype.setActivationState=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Eg(c,a)};z.prototype.forceActivationState=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Fg(c,a)};z.prototype.activate=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);void 0===a?Gg(c):Hg(c,a)};z.prototype.isActive=function(){return!!Ig(this.kB)};z.prototype.isKinematicObject=function(){return!!Jg(this.kB)};z.prototype.isStaticObject=function(){return!!Kg(this.kB)}; z.prototype.isStaticOrKinematicObject=function(){return!!Lg(this.kB)};z.prototype.getRestitution=function(){return Mg(this.kB)};z.prototype.getFriction=function(){return Ng(this.kB)};z.prototype.getRollingFriction=function(){return Og(this.kB)};z.prototype.setRestitution=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Pg(c,a)};z.prototype.setFriction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Qg(c,a)}; z.prototype.setRollingFriction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Rg(c,a)};z.prototype.getWorldTransform=function(){return k(Sg(this.kB),t)};z.prototype.getCollisionFlags=function(){return Tg(this.kB)};z.prototype.setCollisionFlags=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ug(c,a)};z.prototype.setWorldTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Vg(c,a)}; z.prototype.setCollisionShape=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Wg(c,a)};z.prototype.setCcdMotionThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Xg(c,a)};z.prototype.setCcdSweptSphereRadius=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Yg(c,a)};z.prototype.getUserIndex=function(){return Zg(this.kB)};z.prototype.setUserIndex=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);$g(c,a)}; z.prototype.getUserPointer=function(){return k(ah(this.kB),sE)};z.prototype.setUserPointer=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);bh(c,a)};z.prototype.getBroadphaseHandle=function(){return k(ch(this.kB),tE)};z.prototype.__destroy__=function(){dh(this.kB)};function PE(){throw"cannot construct a btSoftBodySolver, no constructor in IDL";}PE.prototype=Object.create(f.prototype);PE.prototype.constructor=PE;PE.prototype.lB=PE;PE.mB={};b.btSoftBodySolver=PE;PE.prototype.__destroy__=function(){eh(this.kB)}; function sE(){throw"cannot construct a VoidPtr, no constructor in IDL";}sE.prototype=Object.create(f.prototype);sE.prototype.constructor=sE;sE.prototype.lB=sE;sE.mB={};b.VoidPtr=sE;sE.prototype.__destroy__=function(){fh(this.kB)};function QE(){this.kB=gh();h(QE)[this.kB]=this}QE.prototype=Object.create(rE.prototype);QE.prototype.constructor=QE;QE.prototype.lB=QE;QE.mB={};b.DebugDrawer=QE; QE.prototype.drawLine=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);hh(e,a,c,d)};QE.prototype.drawContactPoint=function(a,c,d,e,g){var m=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);ih(m,a,c,d,e,g)}; QE.prototype.reportErrorWarning=function(a){var c=this.kB;iE();a=a&&"object"===typeof a?a.kB:lE(a);jh(c,a)};QE.prototype.draw3dText=function(a,c){var d=this.kB;iE();a&&"object"===typeof a&&(a=a.kB);c=c&&"object"===typeof c?c.kB:lE(c);kh(d,a,c)};QE.prototype.setDebugMode=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);lh(c,a)};QE.prototype.getDebugMode=function(){return mh(this.kB)};QE.prototype.__destroy__=function(){nh(this.kB)}; function A(a,c,d,e){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);this.kB=void 0===a?oh():void 0===c?_emscripten_bind_btVector4_btVector4_1(a):void 0===d?_emscripten_bind_btVector4_btVector4_2(a,c):void 0===e?_emscripten_bind_btVector4_btVector4_3(a,c,d):ph(a,c,d,e);h(A)[this.kB]=this}A.prototype=Object.create(n.prototype);A.prototype.constructor=A;A.prototype.lB=A;A.mB={};b.btVector4=A; A.prototype.w=A.prototype.w=function(){return qh(this.kB)};A.prototype.setValue=function(a,c,d,e){var g=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);rh(g,a,c,d,e)};A.prototype.length=A.prototype.length=function(){return sh(this.kB)};A.prototype.x=A.prototype.x=function(){return th(this.kB)};A.prototype.y=A.prototype.y=function(){return uh(this.kB)};A.prototype.z=A.prototype.z=function(){return vh(this.kB)}; A.prototype.setX=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);wh(c,a)};A.prototype.setY=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);xh(c,a)};A.prototype.setZ=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);yh(c,a)};A.prototype.normalize=A.prototype.normalize=function(){zh(this.kB)};A.prototype.rotate=A.prototype.rotate=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);return k(Ah(d,a,c),n)}; A.prototype.dot=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return Bh(c,a)};A.prototype.op_mul=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Ch(c,a),n)};A.prototype.op_add=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Dh(c,a),n)};A.prototype.op_sub=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Eh(c,a),n)};A.prototype.__destroy__=function(){Fh(this.kB)}; function B(a,c,d,e){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);this.kB=Gh(a,c,d,e);h(B)[this.kB]=this}B.prototype=Object.create(yE.prototype);B.prototype.constructor=B;B.prototype.lB=B;B.mB={};b.btQuaternion=B;B.prototype.setValue=function(a,c,d,e){var g=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);Hh(g,a,c,d,e)}; B.prototype.setEulerZYX=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);Ih(e,a,c,d)};B.prototype.setRotation=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Jh(d,a,c)};B.prototype.normalize=B.prototype.normalize=function(){Kh(this.kB)};B.prototype.length2=function(){return Lh(this.kB)};B.prototype.length=B.prototype.length=function(){return Mh(this.kB)}; B.prototype.dot=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return Nh(c,a)};B.prototype.normalized=function(){return k(Oh(this.kB),B)};B.prototype.getAxis=function(){return k(Ph(this.kB),n)};B.prototype.inverse=B.prototype.inverse=function(){return k(Qh(this.kB),B)};B.prototype.getAngle=function(){return Rh(this.kB)};B.prototype.getAngleShortestPath=function(){return Sh(this.kB)}; B.prototype.angle=B.prototype.angle=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return Th(c,a)};B.prototype.angleShortestPath=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return Uh(c,a)};B.prototype.op_add=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Vh(c,a),B)};B.prototype.op_sub=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Wh(c,a),B)}; B.prototype.op_mul=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Xh(c,a),B)};B.prototype.op_mulq=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Yh(c,a),B)};B.prototype.op_div=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Zh(c,a),B)};B.prototype.x=B.prototype.x=function(){return $h(this.kB)};B.prototype.y=B.prototype.y=function(){return ai(this.kB)};B.prototype.z=B.prototype.z=function(){return bi(this.kB)}; B.prototype.w=B.prototype.w=function(){return ci(this.kB)};B.prototype.setX=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);di(c,a)};B.prototype.setY=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ei(c,a)};B.prototype.setZ=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);fi(c,a)};B.prototype.setW=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);gi(c,a)};B.prototype.__destroy__=function(){hi(this.kB)}; function RE(){throw"cannot construct a btMatrix3x3, no constructor in IDL";}RE.prototype=Object.create(f.prototype);RE.prototype.constructor=RE;RE.prototype.lB=RE;RE.mB={};b.btMatrix3x3=RE;RE.prototype.setEulerZYX=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);ii(e,a,c,d)};RE.prototype.getRotation=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ji(c,a)}; RE.prototype.getRow=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(ki(c,a),n)};RE.prototype.__destroy__=function(){li(this.kB)};function t(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=void 0===a?mi():void 0===c?_emscripten_bind_btTransform_btTransform_1(a):ni(a,c);h(t)[this.kB]=this}t.prototype=Object.create(f.prototype);t.prototype.constructor=t;t.prototype.lB=t;t.mB={};b.btTransform=t;t.prototype.setIdentity=function(){oi(this.kB)}; t.prototype.setOrigin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);pi(c,a)};t.prototype.setRotation=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);qi(c,a)};t.prototype.getOrigin=function(){return k(ri(this.kB),n)};t.prototype.getRotation=function(){return k(si(this.kB),B)};t.prototype.getBasis=function(){return k(ti(this.kB),RE)};t.prototype.setFromOpenGLMatrix=function(a){var c=this.kB;iE();"object"==typeof a&&(a=mE(a));ui(c,a)}; t.prototype.inverse=t.prototype.inverse=function(){return k(vi(this.kB),t)};t.prototype.op_mul=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(wi(c,a),t)};t.prototype.__destroy__=function(){xi(this.kB)};function SE(){this.kB=yi();h(SE)[this.kB]=this}SE.prototype=Object.create(zE.prototype);SE.prototype.constructor=SE;SE.prototype.lB=SE;SE.mB={};b.MotionState=SE;SE.prototype.getWorldTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);zi(c,a)}; SE.prototype.setWorldTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ai(c,a)};SE.prototype.__destroy__=function(){Bi(this.kB)};function TE(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=void 0===a?Ci():void 0===c?Di(a):Ei(a,c);h(TE)[this.kB]=this}TE.prototype=Object.create(zE.prototype);TE.prototype.constructor=TE;TE.prototype.lB=TE;TE.mB={};b.btDefaultMotionState=TE; TE.prototype.getWorldTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Fi(c,a)};TE.prototype.setWorldTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Gi(c,a)};TE.prototype.get_m_graphicsWorldTrans=TE.prototype.sD=function(){return k(Hi(this.kB),t)};TE.prototype.set_m_graphicsWorldTrans=TE.prototype.lG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ii(c,a)};Object.defineProperty(TE.prototype,"m_graphicsWorldTrans",{get:TE.prototype.sD,set:TE.prototype.lG}); TE.prototype.__destroy__=function(){Ji(this.kB)};function UE(){throw"cannot construct a btCollisionObjectWrapper, no constructor in IDL";}UE.prototype=Object.create(f.prototype);UE.prototype.constructor=UE;UE.prototype.lB=UE;UE.mB={};b.btCollisionObjectWrapper=UE;UE.prototype.getWorldTransform=function(){return k(Ki(this.kB),t)};UE.prototype.getCollisionObject=function(){return k(Li(this.kB),r)};UE.prototype.getCollisionShape=function(){return k(Mi(this.kB),l)}; function C(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=Ni(a,c);h(C)[this.kB]=this}C.prototype=Object.create(v.prototype);C.prototype.constructor=C;C.prototype.lB=C;C.mB={};b.ClosestRayResultCallback=C;C.prototype.hasHit=function(){return!!Oi(this.kB)};C.prototype.get_m_rayFromWorld=C.prototype.RB=function(){return k(Pi(this.kB),n)};C.prototype.set_m_rayFromWorld=C.prototype.aC=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Qi(c,a)}; Object.defineProperty(C.prototype,"m_rayFromWorld",{get:C.prototype.RB,set:C.prototype.aC});C.prototype.get_m_rayToWorld=C.prototype.SB=function(){return k(Ri(this.kB),n)};C.prototype.set_m_rayToWorld=C.prototype.bC=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Si(c,a)};Object.defineProperty(C.prototype,"m_rayToWorld",{get:C.prototype.SB,set:C.prototype.bC});C.prototype.get_m_hitNormalWorld=C.prototype.AB=function(){return k(Ti(this.kB),n)}; C.prototype.set_m_hitNormalWorld=C.prototype.IB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ui(c,a)};Object.defineProperty(C.prototype,"m_hitNormalWorld",{get:C.prototype.AB,set:C.prototype.IB});C.prototype.get_m_hitPointWorld=C.prototype.BB=function(){return k(Vi(this.kB),n)};C.prototype.set_m_hitPointWorld=C.prototype.JB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Wi(c,a)};Object.defineProperty(C.prototype,"m_hitPointWorld",{get:C.prototype.BB,set:C.prototype.JB}); C.prototype.get_m_collisionFilterGroup=C.prototype.nB=function(){return Xi(this.kB)};C.prototype.set_m_collisionFilterGroup=C.prototype.pB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Yi(c,a)};Object.defineProperty(C.prototype,"m_collisionFilterGroup",{get:C.prototype.nB,set:C.prototype.pB});C.prototype.get_m_collisionFilterMask=C.prototype.oB=function(){return Zi(this.kB)}; C.prototype.set_m_collisionFilterMask=C.prototype.qB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);$i(c,a)};Object.defineProperty(C.prototype,"m_collisionFilterMask",{get:C.prototype.oB,set:C.prototype.qB});C.prototype.get_m_closestHitFraction=C.prototype.rB=function(){return aj(this.kB)};C.prototype.set_m_closestHitFraction=C.prototype.sB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);bj(c,a)};Object.defineProperty(C.prototype,"m_closestHitFraction",{get:C.prototype.rB,set:C.prototype.sB}); C.prototype.get_m_collisionObject=C.prototype.yB=function(){return k(cj(this.kB),r)};C.prototype.set_m_collisionObject=C.prototype.GB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);dj(c,a)};Object.defineProperty(C.prototype,"m_collisionObject",{get:C.prototype.yB,set:C.prototype.GB});C.prototype.get_m_flags=C.prototype.vB=function(){return ej(this.kB)};C.prototype.set_m_flags=C.prototype.wB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);fj(c,a)}; Object.defineProperty(C.prototype,"m_flags",{get:C.prototype.vB,set:C.prototype.wB});C.prototype.__destroy__=function(){gj(this.kB)};function VE(){throw"cannot construct a btConstCollisionObjectArray, no constructor in IDL";}VE.prototype=Object.create(f.prototype);VE.prototype.constructor=VE;VE.prototype.lB=VE;VE.mB={};b.btConstCollisionObjectArray=VE;VE.prototype.size=VE.prototype.size=function(){return hj(this.kB)}; VE.prototype.at=VE.prototype.at=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(ij(c,a),r)};VE.prototype.__destroy__=function(){jj(this.kB)};function WE(){throw"cannot construct a btScalarArray, no constructor in IDL";}WE.prototype=Object.create(f.prototype);WE.prototype.constructor=WE;WE.prototype.lB=WE;WE.mB={};b.btScalarArray=WE;WE.prototype.size=WE.prototype.size=function(){return kj(this.kB)}; WE.prototype.at=WE.prototype.at=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return lj(c,a)};WE.prototype.__destroy__=function(){mj(this.kB)};function D(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=nj(a,c);h(D)[this.kB]=this}D.prototype=Object.create(v.prototype);D.prototype.constructor=D;D.prototype.lB=D;D.mB={};b.AllHitsRayResultCallback=D;D.prototype.hasHit=function(){return!!oj(this.kB)}; D.prototype.get_m_collisionObjects=D.prototype.aD=function(){return k(pj(this.kB),VE)};D.prototype.set_m_collisionObjects=D.prototype.UF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);qj(c,a)};Object.defineProperty(D.prototype,"m_collisionObjects",{get:D.prototype.aD,set:D.prototype.UF});D.prototype.get_m_rayFromWorld=D.prototype.RB=function(){return k(rj(this.kB),n)};D.prototype.set_m_rayFromWorld=D.prototype.aC=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);sj(c,a)}; Object.defineProperty(D.prototype,"m_rayFromWorld",{get:D.prototype.RB,set:D.prototype.aC});D.prototype.get_m_rayToWorld=D.prototype.SB=function(){return k(tj(this.kB),n)};D.prototype.set_m_rayToWorld=D.prototype.bC=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);uj(c,a)};Object.defineProperty(D.prototype,"m_rayToWorld",{get:D.prototype.SB,set:D.prototype.bC});D.prototype.get_m_hitNormalWorld=D.prototype.AB=function(){return k(vj(this.kB),XE)}; D.prototype.set_m_hitNormalWorld=D.prototype.IB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);wj(c,a)};Object.defineProperty(D.prototype,"m_hitNormalWorld",{get:D.prototype.AB,set:D.prototype.IB});D.prototype.get_m_hitPointWorld=D.prototype.BB=function(){return k(xj(this.kB),XE)};D.prototype.set_m_hitPointWorld=D.prototype.JB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);yj(c,a)};Object.defineProperty(D.prototype,"m_hitPointWorld",{get:D.prototype.BB,set:D.prototype.JB}); D.prototype.get_m_hitFractions=D.prototype.xD=function(){return k(zj(this.kB),WE)};D.prototype.set_m_hitFractions=D.prototype.qG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Aj(c,a)};Object.defineProperty(D.prototype,"m_hitFractions",{get:D.prototype.xD,set:D.prototype.qG});D.prototype.get_m_collisionFilterGroup=D.prototype.nB=function(){return Bj(this.kB)};D.prototype.set_m_collisionFilterGroup=D.prototype.pB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Cj(c,a)}; Object.defineProperty(D.prototype,"m_collisionFilterGroup",{get:D.prototype.nB,set:D.prototype.pB});D.prototype.get_m_collisionFilterMask=D.prototype.oB=function(){return Dj(this.kB)};D.prototype.set_m_collisionFilterMask=D.prototype.qB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ej(c,a)};Object.defineProperty(D.prototype,"m_collisionFilterMask",{get:D.prototype.oB,set:D.prototype.qB});D.prototype.get_m_closestHitFraction=D.prototype.rB=function(){return Fj(this.kB)}; D.prototype.set_m_closestHitFraction=D.prototype.sB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Gj(c,a)};Object.defineProperty(D.prototype,"m_closestHitFraction",{get:D.prototype.rB,set:D.prototype.sB});D.prototype.get_m_collisionObject=D.prototype.yB=function(){return k(Hj(this.kB),r)};D.prototype.set_m_collisionObject=D.prototype.GB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ij(c,a)};Object.defineProperty(D.prototype,"m_collisionObject",{get:D.prototype.yB,set:D.prototype.GB}); D.prototype.get_m_flags=D.prototype.vB=function(){return Jj(this.kB)};D.prototype.set_m_flags=D.prototype.wB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Kj(c,a)};Object.defineProperty(D.prototype,"m_flags",{get:D.prototype.vB,set:D.prototype.wB});D.prototype.__destroy__=function(){Lj(this.kB)};function F(){throw"cannot construct a btManifoldPoint, no constructor in IDL";}F.prototype=Object.create(f.prototype);F.prototype.constructor=F;F.prototype.lB=F;F.mB={};b.btManifoldPoint=F; F.prototype.getPositionWorldOnA=function(){return k(Mj(this.kB),n)};F.prototype.getPositionWorldOnB=function(){return k(Nj(this.kB),n)};F.prototype.getAppliedImpulse=function(){return Oj(this.kB)};F.prototype.getDistance=function(){return Pj(this.kB)};F.prototype.get_m_localPointA=F.prototype.ND=function(){return k(Qj(this.kB),n)};F.prototype.set_m_localPointA=F.prototype.GG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Rj(c,a)}; Object.defineProperty(F.prototype,"m_localPointA",{get:F.prototype.ND,set:F.prototype.GG});F.prototype.get_m_localPointB=F.prototype.OD=function(){return k(Sj(this.kB),n)};F.prototype.set_m_localPointB=F.prototype.HG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Tj(c,a)};Object.defineProperty(F.prototype,"m_localPointB",{get:F.prototype.OD,set:F.prototype.HG});F.prototype.get_m_positionWorldOnB=F.prototype.eE=function(){return k(Uj(this.kB),n)}; F.prototype.set_m_positionWorldOnB=F.prototype.ZG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Vj(c,a)};Object.defineProperty(F.prototype,"m_positionWorldOnB",{get:F.prototype.eE,set:F.prototype.ZG});F.prototype.get_m_positionWorldOnA=F.prototype.dE=function(){return k(Wj(this.kB),n)};F.prototype.set_m_positionWorldOnA=F.prototype.YG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Xj(c,a)};Object.defineProperty(F.prototype,"m_positionWorldOnA",{get:F.prototype.dE,set:F.prototype.YG}); F.prototype.get_m_normalWorldOnB=F.prototype.ZD=function(){return k(Yj(this.kB),n)};F.prototype.set_m_normalWorldOnB=F.prototype.TG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Zj(c,a)};Object.defineProperty(F.prototype,"m_normalWorldOnB",{get:F.prototype.ZD,set:F.prototype.TG});F.prototype.get_m_userPersistentData=F.prototype.GE=function(){return ak(this.kB)};F.prototype.set_m_userPersistentData=F.prototype.AH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);bk(c,a)}; Object.defineProperty(F.prototype,"m_userPersistentData",{get:F.prototype.GE,set:F.prototype.AH});F.prototype.__destroy__=function(){ck(this.kB)};function YE(){this.kB=dk();h(YE)[this.kB]=this}YE.prototype=Object.create(AE.prototype);YE.prototype.constructor=YE;YE.prototype.lB=YE;YE.mB={};b.ConcreteContactResultCallback=YE; YE.prototype.addSingleResult=function(a,c,d,e,g,m,y){var W=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);m&&"object"===typeof m&&(m=m.kB);y&&"object"===typeof y&&(y=y.kB);return ek(W,a,c,d,e,g,m,y)};YE.prototype.__destroy__=function(){fk(this.kB)};function ZE(){throw"cannot construct a LocalShapeInfo, no constructor in IDL";}ZE.prototype=Object.create(f.prototype); ZE.prototype.constructor=ZE;ZE.prototype.lB=ZE;ZE.mB={};b.LocalShapeInfo=ZE;ZE.prototype.get_m_shapePart=ZE.prototype.nE=function(){return gk(this.kB)};ZE.prototype.set_m_shapePart=ZE.prototype.hH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);hk(c,a)};Object.defineProperty(ZE.prototype,"m_shapePart",{get:ZE.prototype.nE,set:ZE.prototype.hH});ZE.prototype.get_m_triangleIndex=ZE.prototype.CE=function(){return ik(this.kB)}; ZE.prototype.set_m_triangleIndex=ZE.prototype.wH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);jk(c,a)};Object.defineProperty(ZE.prototype,"m_triangleIndex",{get:ZE.prototype.CE,set:ZE.prototype.wH});ZE.prototype.__destroy__=function(){kk(this.kB)};function H(a,c,d,e,g){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);this.kB=lk(a,c,d,e,g);h(H)[this.kB]=this} H.prototype=Object.create(f.prototype);H.prototype.constructor=H;H.prototype.lB=H;H.mB={};b.LocalConvexResult=H;H.prototype.get_m_hitCollisionObject=H.prototype.PB=function(){return k(mk(this.kB),r)};H.prototype.set_m_hitCollisionObject=H.prototype.ZB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);nk(c,a)};Object.defineProperty(H.prototype,"m_hitCollisionObject",{get:H.prototype.PB,set:H.prototype.ZB});H.prototype.get_m_localShapeInfo=H.prototype.PD=function(){return k(ok(this.kB),ZE)}; H.prototype.set_m_localShapeInfo=H.prototype.IG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);pk(c,a)};Object.defineProperty(H.prototype,"m_localShapeInfo",{get:H.prototype.PD,set:H.prototype.IG});H.prototype.get_m_hitNormalLocal=H.prototype.zD=function(){return k(qk(this.kB),n)};H.prototype.set_m_hitNormalLocal=H.prototype.sG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);rk(c,a)};Object.defineProperty(H.prototype,"m_hitNormalLocal",{get:H.prototype.zD,set:H.prototype.sG}); H.prototype.get_m_hitPointLocal=H.prototype.BD=function(){return k(sk(this.kB),n)};H.prototype.set_m_hitPointLocal=H.prototype.uG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);tk(c,a)};Object.defineProperty(H.prototype,"m_hitPointLocal",{get:H.prototype.BD,set:H.prototype.uG});H.prototype.get_m_hitFraction=H.prototype.wD=function(){return uk(this.kB)};H.prototype.set_m_hitFraction=H.prototype.pG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);vk(c,a)}; Object.defineProperty(H.prototype,"m_hitFraction",{get:H.prototype.wD,set:H.prototype.pG});H.prototype.__destroy__=function(){wk(this.kB)};function I(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=xk(a,c);h(I)[this.kB]=this}I.prototype=Object.create(w.prototype);I.prototype.constructor=I;I.prototype.lB=I;I.mB={};b.ClosestConvexResultCallback=I;I.prototype.hasHit=function(){return!!yk(this.kB)}; I.prototype.get_m_hitCollisionObject=I.prototype.PB=function(){return k(zk(this.kB),r)};I.prototype.set_m_hitCollisionObject=I.prototype.ZB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ak(c,a)};Object.defineProperty(I.prototype,"m_hitCollisionObject",{get:I.prototype.PB,set:I.prototype.ZB});I.prototype.get_m_convexFromWorld=I.prototype.fD=function(){return k(Bk(this.kB),n)}; I.prototype.set_m_convexFromWorld=I.prototype.ZF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ck(c,a)};Object.defineProperty(I.prototype,"m_convexFromWorld",{get:I.prototype.fD,set:I.prototype.ZF});I.prototype.get_m_convexToWorld=I.prototype.gD=function(){return k(Dk(this.kB),n)};I.prototype.set_m_convexToWorld=I.prototype.$F=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ek(c,a)};Object.defineProperty(I.prototype,"m_convexToWorld",{get:I.prototype.gD,set:I.prototype.$F}); I.prototype.get_m_hitNormalWorld=I.prototype.AB=function(){return k(Fk(this.kB),n)};I.prototype.set_m_hitNormalWorld=I.prototype.IB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Gk(c,a)};Object.defineProperty(I.prototype,"m_hitNormalWorld",{get:I.prototype.AB,set:I.prototype.IB});I.prototype.get_m_hitPointWorld=I.prototype.BB=function(){return k(Hk(this.kB),n)};I.prototype.set_m_hitPointWorld=I.prototype.JB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ik(c,a)}; Object.defineProperty(I.prototype,"m_hitPointWorld",{get:I.prototype.BB,set:I.prototype.JB});I.prototype.get_m_collisionFilterGroup=I.prototype.nB=function(){return Jk(this.kB)};I.prototype.set_m_collisionFilterGroup=I.prototype.pB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Kk(c,a)};Object.defineProperty(I.prototype,"m_collisionFilterGroup",{get:I.prototype.nB,set:I.prototype.pB});I.prototype.get_m_collisionFilterMask=I.prototype.oB=function(){return Lk(this.kB)}; I.prototype.set_m_collisionFilterMask=I.prototype.qB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Mk(c,a)};Object.defineProperty(I.prototype,"m_collisionFilterMask",{get:I.prototype.oB,set:I.prototype.qB});I.prototype.get_m_closestHitFraction=I.prototype.rB=function(){return Nk(this.kB)};I.prototype.set_m_closestHitFraction=I.prototype.sB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ok(c,a)};Object.defineProperty(I.prototype,"m_closestHitFraction",{get:I.prototype.rB,set:I.prototype.sB}); I.prototype.__destroy__=function(){Pk(this.kB)};function $E(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=void 0===c?Qk(a):Rk(a,c);h($E)[this.kB]=this}$E.prototype=Object.create(BE.prototype);$E.prototype.constructor=$E;$E.prototype.lB=$E;$E.mB={};b.btConvexTriangleMeshShape=$E;$E.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Sk(c,a)};$E.prototype.getLocalScaling=function(){return k(Tk(this.kB),n)}; $E.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Uk(d,a,c)};$E.prototype.setMargin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Vk(c,a)};$E.prototype.getMargin=function(){return Wk(this.kB)};$E.prototype.__destroy__=function(){Xk(this.kB)};function aF(a){a&&"object"===typeof a&&(a=a.kB);this.kB=Yk(a);h(aF)[this.kB]=this}aF.prototype=Object.create(l.prototype);aF.prototype.constructor=aF;aF.prototype.lB=aF; aF.mB={};b.btBoxShape=aF;aF.prototype.setMargin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Zk(c,a)};aF.prototype.getMargin=function(){return $k(this.kB)};aF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);al(c,a)};aF.prototype.getLocalScaling=function(){return k(bl(this.kB),n)};aF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);cl(d,a,c)};aF.prototype.__destroy__=function(){dl(this.kB)}; function bF(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=el(a,c);h(bF)[this.kB]=this}bF.prototype=Object.create(CE.prototype);bF.prototype.constructor=bF;bF.prototype.lB=bF;bF.mB={};b.btCapsuleShapeX=bF;bF.prototype.setMargin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);fl(c,a)};bF.prototype.getMargin=function(){return gl(this.kB)};bF.prototype.getUpAxis=function(){return hl(this.kB)};bF.prototype.getRadius=function(){return il(this.kB)}; bF.prototype.getHalfHeight=function(){return jl(this.kB)};bF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);kl(c,a)};bF.prototype.getLocalScaling=function(){return k(ll(this.kB),n)};bF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);ml(d,a,c)};bF.prototype.__destroy__=function(){nl(this.kB)}; function cF(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=ol(a,c);h(cF)[this.kB]=this}cF.prototype=Object.create(CE.prototype);cF.prototype.constructor=cF;cF.prototype.lB=cF;cF.mB={};b.btCapsuleShapeZ=cF;cF.prototype.setMargin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);pl(c,a)};cF.prototype.getMargin=function(){return ql(this.kB)};cF.prototype.getUpAxis=function(){return rl(this.kB)};cF.prototype.getRadius=function(){return sl(this.kB)}; cF.prototype.getHalfHeight=function(){return tl(this.kB)};cF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ul(c,a)};cF.prototype.getLocalScaling=function(){return k(vl(this.kB),n)};cF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);wl(d,a,c)};cF.prototype.__destroy__=function(){xl(this.kB)};function dF(a){a&&"object"===typeof a&&(a=a.kB);this.kB=yl(a);h(dF)[this.kB]=this} dF.prototype=Object.create(DE.prototype);dF.prototype.constructor=dF;dF.prototype.lB=dF;dF.mB={};b.btCylinderShapeX=dF;dF.prototype.setMargin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);zl(c,a)};dF.prototype.getMargin=function(){return Al(this.kB)};dF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Bl(c,a)};dF.prototype.getLocalScaling=function(){return k(Cl(this.kB),n)}; dF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Dl(d,a,c)};dF.prototype.__destroy__=function(){El(this.kB)};function eF(a){a&&"object"===typeof a&&(a=a.kB);this.kB=Fl(a);h(eF)[this.kB]=this}eF.prototype=Object.create(DE.prototype);eF.prototype.constructor=eF;eF.prototype.lB=eF;eF.mB={};b.btCylinderShapeZ=eF;eF.prototype.setMargin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Gl(c,a)}; eF.prototype.getMargin=function(){return Hl(this.kB)};eF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Il(c,a)};eF.prototype.getLocalScaling=function(){return k(Jl(this.kB),n)};eF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Kl(d,a,c)};eF.prototype.__destroy__=function(){Ll(this.kB)};function fF(a){a&&"object"===typeof a&&(a=a.kB);this.kB=Ml(a);h(fF)[this.kB]=this}fF.prototype=Object.create(l.prototype); fF.prototype.constructor=fF;fF.prototype.lB=fF;fF.mB={};b.btSphereShape=fF;fF.prototype.setMargin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Nl(c,a)};fF.prototype.getMargin=function(){return Ol(this.kB)};fF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Pl(c,a)};fF.prototype.getLocalScaling=function(){return k(Ql(this.kB),n)}; fF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Rl(d,a,c)};fF.prototype.__destroy__=function(){Sl(this.kB)};function gF(a,c,d){iE();a&&"object"===typeof a&&(a=a.kB);"object"==typeof c&&(c=mE(c));d&&"object"===typeof d&&(d=d.kB);this.kB=Tl(a,c,d);h(gF)[this.kB]=this}gF.prototype=Object.create(l.prototype);gF.prototype.constructor=gF;gF.prototype.lB=gF;gF.mB={};b.btMultiSphereShape=gF; gF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ul(c,a)};gF.prototype.getLocalScaling=function(){return k(Vl(this.kB),n)};gF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Wl(d,a,c)};gF.prototype.__destroy__=function(){Xl(this.kB)};function hF(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=Yl(a,c);h(hF)[this.kB]=this}hF.prototype=Object.create(EE.prototype); hF.prototype.constructor=hF;hF.prototype.lB=hF;hF.mB={};b.btConeShapeX=hF;hF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Zl(c,a)};hF.prototype.getLocalScaling=function(){return k($l(this.kB),n)};hF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);am(d,a,c)};hF.prototype.__destroy__=function(){bm(this.kB)}; function iF(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=cm(a,c);h(iF)[this.kB]=this}iF.prototype=Object.create(EE.prototype);iF.prototype.constructor=iF;iF.prototype.lB=iF;iF.mB={};b.btConeShapeZ=iF;iF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);dm(c,a)};iF.prototype.getLocalScaling=function(){return k(em(this.kB),n)}; iF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);fm(d,a,c)};iF.prototype.__destroy__=function(){gm(this.kB)};function jF(){throw"cannot construct a btIntArray, no constructor in IDL";}jF.prototype=Object.create(f.prototype);jF.prototype.constructor=jF;jF.prototype.lB=jF;jF.mB={};b.btIntArray=jF;jF.prototype.size=jF.prototype.size=function(){return hm(this.kB)}; jF.prototype.at=jF.prototype.at=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return im(c,a)};jF.prototype.__destroy__=function(){jm(this.kB)};function kF(){throw"cannot construct a btFace, no constructor in IDL";}kF.prototype=Object.create(f.prototype);kF.prototype.constructor=kF;kF.prototype.lB=kF;kF.mB={};b.btFace=kF;kF.prototype.get_m_indices=kF.prototype.ED=function(){return k(km(this.kB),jF)}; kF.prototype.set_m_indices=kF.prototype.xG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);lm(c,a)};Object.defineProperty(kF.prototype,"m_indices",{get:kF.prototype.ED,set:kF.prototype.xG});kF.prototype.get_m_plane=kF.prototype.cE=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return mm(c,a)};kF.prototype.set_m_plane=kF.prototype.XG=function(a,c){var d=this.kB;iE();a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);nm(d,a,c)}; Object.defineProperty(kF.prototype,"m_plane",{get:kF.prototype.cE,set:kF.prototype.XG});kF.prototype.__destroy__=function(){om(this.kB)};function XE(){throw"cannot construct a btVector3Array, no constructor in IDL";}XE.prototype=Object.create(f.prototype);XE.prototype.constructor=XE;XE.prototype.lB=XE;XE.mB={};b.btVector3Array=XE;XE.prototype.size=XE.prototype.size=function(){return pm(this.kB)}; XE.prototype.at=XE.prototype.at=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(qm(c,a),n)};XE.prototype.__destroy__=function(){rm(this.kB)};function lF(){throw"cannot construct a btFaceArray, no constructor in IDL";}lF.prototype=Object.create(f.prototype);lF.prototype.constructor=lF;lF.prototype.lB=lF;lF.mB={};b.btFaceArray=lF;lF.prototype.size=lF.prototype.size=function(){return sm(this.kB)}; lF.prototype.at=lF.prototype.at=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(tm(c,a),kF)};lF.prototype.__destroy__=function(){um(this.kB)};function mF(){throw"cannot construct a btConvexPolyhedron, no constructor in IDL";}mF.prototype=Object.create(f.prototype);mF.prototype.constructor=mF;mF.prototype.lB=mF;mF.mB={};b.btConvexPolyhedron=mF;mF.prototype.get_m_vertices=mF.prototype.IE=function(){return k(wm(this.kB),XE)}; mF.prototype.set_m_vertices=mF.prototype.CH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);xm(c,a)};Object.defineProperty(mF.prototype,"m_vertices",{get:mF.prototype.IE,set:mF.prototype.CH});mF.prototype.get_m_faces=mF.prototype.OB=function(){return k(ym(this.kB),lF)};mF.prototype.set_m_faces=mF.prototype.YB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);zm(c,a)};Object.defineProperty(mF.prototype,"m_faces",{get:mF.prototype.OB,set:mF.prototype.YB}); mF.prototype.__destroy__=function(){Am(this.kB)};function nF(a,c){iE();"object"==typeof a&&(a=mE(a));c&&"object"===typeof c&&(c=c.kB);this.kB=void 0===a?Bm():void 0===c?Cm(a):Dm(a,c);h(nF)[this.kB]=this}nF.prototype=Object.create(l.prototype);nF.prototype.constructor=nF;nF.prototype.lB=nF;nF.mB={};b.btConvexHullShape=nF;nF.prototype.addPoint=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);void 0===c?Em(d,a):Fm(d,a,c)}; nF.prototype.setMargin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Gm(c,a)};nF.prototype.getMargin=function(){return Hm(this.kB)};nF.prototype.getNumVertices=function(){return Im(this.kB)};nF.prototype.initializePolyhedralFeatures=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return!!Jm(c,a)};nF.prototype.recalcLocalAabb=function(){Km(this.kB)};nF.prototype.getConvexPolyhedron=function(){return k(Lm(this.kB),mF)}; nF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Mm(c,a)};nF.prototype.getLocalScaling=function(){return k(Nm(this.kB),n)};nF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Om(d,a,c)};nF.prototype.__destroy__=function(){Pm(this.kB)};function oF(a){a&&"object"===typeof a&&(a=a.kB);this.kB=Qm(a);h(oF)[this.kB]=this}oF.prototype=Object.create(f.prototype);oF.prototype.constructor=oF; oF.prototype.lB=oF;oF.mB={};b.btShapeHull=oF;oF.prototype.buildHull=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return!!Rm(c,a)};oF.prototype.numVertices=function(){return Sm(this.kB)};oF.prototype.getVertexPointer=function(){return k(Tm(this.kB),n)};oF.prototype.__destroy__=function(){Um(this.kB)};function pF(a){a&&"object"===typeof a&&(a=a.kB);this.kB=void 0===a?Vm():Wm(a);h(pF)[this.kB]=this}pF.prototype=Object.create(l.prototype);pF.prototype.constructor=pF;pF.prototype.lB=pF; pF.mB={};b.btCompoundShape=pF;pF.prototype.addChildShape=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Xm(d,a,c)};pF.prototype.removeChildShape=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ym(c,a)};pF.prototype.removeChildShapeByIndex=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Zm(c,a)};pF.prototype.getNumChildShapes=function(){return $m(this.kB)}; pF.prototype.getChildShape=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(an(c,a),l)};pF.prototype.updateChildTransform=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);void 0===d?bn(e,a,c):cn(e,a,c,d)};pF.prototype.setMargin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);dn(c,a)};pF.prototype.getMargin=function(){return en(this.kB)}; pF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);fn(c,a)};pF.prototype.getLocalScaling=function(){return k(gn(this.kB),n)};pF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);hn(d,a,c)};pF.prototype.__destroy__=function(){jn(this.kB)};function qF(){throw"cannot construct a btIndexedMesh, no constructor in IDL";}qF.prototype=Object.create(f.prototype);qF.prototype.constructor=qF; qF.prototype.lB=qF;qF.mB={};b.btIndexedMesh=qF;qF.prototype.get_m_numTriangles=qF.prototype.aE=function(){return kn(this.kB)};qF.prototype.set_m_numTriangles=qF.prototype.VG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ln(c,a)};Object.defineProperty(qF.prototype,"m_numTriangles",{get:qF.prototype.aE,set:qF.prototype.VG});qF.prototype.__destroy__=function(){mn(this.kB)};function rF(){throw"cannot construct a btIndexedMeshArray, no constructor in IDL";}rF.prototype=Object.create(f.prototype); rF.prototype.constructor=rF;rF.prototype.lB=rF;rF.mB={};b.btIndexedMeshArray=rF;rF.prototype.size=rF.prototype.size=function(){return nn(this.kB)};rF.prototype.at=rF.prototype.at=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(on(c,a),qF)};rF.prototype.__destroy__=function(){pn(this.kB)};function sF(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=void 0===a?qn():void 0===c?rn(a):sn(a,c);h(sF)[this.kB]=this}sF.prototype=Object.create(FE.prototype); sF.prototype.constructor=sF;sF.prototype.lB=sF;sF.mB={};b.btTriangleMesh=sF;sF.prototype.addTriangle=function(a,c,d,e){var g=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);void 0===e?tn(g,a,c,d):un(g,a,c,d,e)};sF.prototype.findOrAddVertex=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);return vn(d,a,c)}; sF.prototype.addIndex=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);wn(c,a)};sF.prototype.getIndexedMeshArray=function(){return k(xn(this.kB),rF)};sF.prototype.setScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);yn(c,a)};sF.prototype.__destroy__=function(){zn(this.kB)};function tF(){this.kB=An();h(tF)[this.kB]=this}tF.prototype=Object.create(uE.prototype);tF.prototype.constructor=tF;tF.prototype.lB=tF;tF.mB={};b.btEmptyShape=tF; tF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Bn(c,a)};tF.prototype.getLocalScaling=function(){return k(Cn(this.kB),n)};tF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Dn(d,a,c)};tF.prototype.__destroy__=function(){En(this.kB)};function uF(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=Fn(a,c);h(uF)[this.kB]=this}uF.prototype=Object.create(uE.prototype); uF.prototype.constructor=uF;uF.prototype.lB=uF;uF.mB={};b.btStaticPlaneShape=uF;uF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Gn(c,a)};uF.prototype.getLocalScaling=function(){return k(Hn(this.kB),n)};uF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);In(d,a,c)};uF.prototype.__destroy__=function(){Jn(this.kB)}; function vF(a,c,d){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);this.kB=void 0===d?Kn(a,c):Ln(a,c,d);h(vF)[this.kB]=this}vF.prototype=Object.create(GE.prototype);vF.prototype.constructor=vF;vF.prototype.lB=vF;vF.mB={};b.btBvhTriangleMeshShape=vF;vF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Mn(c,a)};vF.prototype.getLocalScaling=function(){return k(Nn(this.kB),n)}; vF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);On(d,a,c)};vF.prototype.__destroy__=function(){Pn(this.kB)}; function wF(a,c,d,e,g,m,y,W,E){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);m&&"object"===typeof m&&(m=m.kB);y&&"object"===typeof y&&(y=y.kB);W&&"object"===typeof W&&(W=W.kB);E&&"object"===typeof E&&(E=E.kB);this.kB=Qn(a,c,d,e,g,m,y,W,E);h(wF)[this.kB]=this}wF.prototype=Object.create(uE.prototype);wF.prototype.constructor=wF;wF.prototype.lB=wF;wF.mB={}; b.btHeightfieldTerrainShape=wF;wF.prototype.setMargin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Rn(c,a)};wF.prototype.getMargin=function(){return Sn(this.kB)};wF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Tn(c,a)};wF.prototype.getLocalScaling=function(){return k(Un(this.kB),n)};wF.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Vn(d,a,c)}; wF.prototype.__destroy__=function(){Wn(this.kB)};function xF(a,c,d,e){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);this.kB=Xn(a,c,d,e);h(xF)[this.kB]=this}xF.prototype=Object.create(f.prototype);xF.prototype.constructor=xF;xF.prototype.lB=xF;xF.mB={};b.btAABB=xF;xF.prototype.invalidate=function(){Yn(this.kB)};xF.prototype.increment_margin=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Zn(c,a)}; xF.prototype.copy_with_margin=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);$n(d,a,c)};xF.prototype.__destroy__=function(){ao(this.kB)};function yF(){this.kB=bo();h(yF)[this.kB]=this}yF.prototype=Object.create(f.prototype);yF.prototype.constructor=yF;yF.prototype.lB=yF;yF.mB={};b.btPrimitiveTriangle=yF;yF.prototype.__destroy__=function(){co(this.kB)}; function zF(a,c,d){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);this.kB=eo(a,c,d);h(zF)[this.kB]=this}zF.prototype=Object.create(f.prototype);zF.prototype.constructor=zF;zF.prototype.lB=zF;zF.mB={};b.btTriangleShapeEx=zF;zF.prototype.getAabb=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);fo(e,a,c,d)}; zF.prototype.applyTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);go(c,a)};zF.prototype.buildTriPlane=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ho(c,a)};zF.prototype.__destroy__=function(){io(this.kB)};function AF(){this.kB=jo();h(AF)[this.kB]=this}AF.prototype=Object.create(f.prototype);AF.prototype.constructor=AF;AF.prototype.lB=AF;AF.mB={};b.btTetrahedronShapeEx=AF; AF.prototype.setVertices=function(a,c,d,e){var g=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);ko(g,a,c,d,e)};AF.prototype.__destroy__=function(){lo(this.kB)};function BF(){throw"cannot construct a CompoundPrimitiveManager, no constructor in IDL";}BF.prototype=Object.create(HE.prototype);BF.prototype.constructor=BF;BF.prototype.lB=BF;BF.mB={};b.CompoundPrimitiveManager=BF; BF.prototype.get_primitive_count=function(){return mo(this.kB)};BF.prototype.get_primitive_box=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);no(d,a,c)};BF.prototype.get_primitive_triangle=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);oo(d,a,c)};BF.prototype.is_trimesh=function(){return!!po(this.kB)};BF.prototype.get_m_compoundShape=BF.prototype.bD=function(){return k(qo(this.kB),J)}; BF.prototype.set_m_compoundShape=BF.prototype.VF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ro(c,a)};Object.defineProperty(BF.prototype,"m_compoundShape",{get:BF.prototype.bD,set:BF.prototype.VF});BF.prototype.__destroy__=function(){so(this.kB)};function J(a){a&&"object"===typeof a&&(a=a.kB);this.kB=void 0===a?to():uo(a);h(J)[this.kB]=this}J.prototype=Object.create(IE.prototype);J.prototype.constructor=J;J.prototype.lB=J;J.mB={};b.btGImpactCompoundShape=J; J.prototype.childrenHasTransform=function(){return!!vo(this.kB)};J.prototype.getPrimitiveManager=function(){return k(wo(this.kB),HE)};J.prototype.getCompoundPrimitiveManager=function(){return k(xo(this.kB),BF)};J.prototype.getNumChildShapes=function(){return yo(this.kB)};J.prototype.addChildShape=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);zo(d,a,c)}; J.prototype.getChildShape=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Ao(c,a),l)};J.prototype.getChildAabb=function(a,c,d,e){var g=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);Bo(g,a,c,d,e)};J.prototype.getChildTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Co(c,a),t)}; J.prototype.setChildTransform=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Do(d,a,c)};J.prototype.calculateLocalInertia=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Eo(d,a,c)};J.prototype.getName=function(){return Ga(Fo(this.kB))};J.prototype.getGImpactShapeType=function(){return Go(this.kB)};J.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ho(c,a)}; J.prototype.getLocalScaling=function(){return k(Io(this.kB),n)};J.prototype.updateBound=function(){Jo(this.kB)};J.prototype.postUpdate=function(){Ko(this.kB)};J.prototype.getShapeType=function(){return Lo(this.kB)};J.prototype.needsRetrieveTriangles=function(){return!!Mo(this.kB)};J.prototype.needsRetrieveTetrahedrons=function(){return!!No(this.kB)};J.prototype.getBulletTriangle=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Oo(d,a,c)}; J.prototype.getBulletTetrahedron=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Po(d,a,c)};J.prototype.__destroy__=function(){Qo(this.kB)};function K(a){a&&"object"===typeof a&&(a=a.kB);this.kB=void 0===a?Ro():So(a);h(K)[this.kB]=this}K.prototype=Object.create(HE.prototype);K.prototype.constructor=K;K.prototype.lB=K;K.mB={};b.TrimeshPrimitiveManager=K;K.prototype.lock=K.prototype.lock=function(){To(this.kB)};K.prototype.unlock=K.prototype.unlock=function(){Uo(this.kB)}; K.prototype.is_trimesh=function(){return!!Vo(this.kB)};K.prototype.get_vertex_count=function(){return Wo(this.kB)};K.prototype.get_indices=function(a,c,d,e){var g=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);Xo(g,a,c,d,e)};K.prototype.get_vertex=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Yo(d,a,c)}; K.prototype.get_bullet_triangle=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Zo(d,a,c)};K.prototype.get_m_margin=K.prototype.SD=function(){return $o(this.kB)};K.prototype.set_m_margin=K.prototype.LG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ap(c,a)};Object.defineProperty(K.prototype,"m_margin",{get:K.prototype.SD,set:K.prototype.LG});K.prototype.get_m_meshInterface=K.prototype.VD=function(){return k(bp(this.kB),FE)}; K.prototype.set_m_meshInterface=K.prototype.OG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);cp(c,a)};Object.defineProperty(K.prototype,"m_meshInterface",{get:K.prototype.VD,set:K.prototype.OG});K.prototype.get_m_part=K.prototype.bE=function(){return dp(this.kB)};K.prototype.set_m_part=K.prototype.WG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ep(c,a)};Object.defineProperty(K.prototype,"m_part",{get:K.prototype.bE,set:K.prototype.WG}); K.prototype.get_m_lock_count=K.prototype.QD=function(){return fp(this.kB)};K.prototype.set_m_lock_count=K.prototype.JG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);gp(c,a)};Object.defineProperty(K.prototype,"m_lock_count",{get:K.prototype.QD,set:K.prototype.JG});K.prototype.get_numverts=K.prototype.SE=function(){return hp(this.kB)};K.prototype.set_numverts=K.prototype.MH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ip(c,a)}; Object.defineProperty(K.prototype,"numverts",{get:K.prototype.SE,set:K.prototype.MH});K.prototype.get_type=K.prototype.WE=function(){return jp(this.kB)};K.prototype.set_type=K.prototype.QH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);kp(c,a)};Object.defineProperty(K.prototype,"type",{get:K.prototype.WE,set:K.prototype.QH});K.prototype.get_stride=K.prototype.UE=function(){return lp(this.kB)}; K.prototype.set_stride=K.prototype.OH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);mp(c,a)};Object.defineProperty(K.prototype,"stride",{get:K.prototype.UE,set:K.prototype.OH});K.prototype.get_indexstride=K.prototype.nC=function(){return np(this.kB)};K.prototype.set_indexstride=K.prototype.gF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);op(c,a)};Object.defineProperty(K.prototype,"indexstride",{get:K.prototype.nC,set:K.prototype.gF}); K.prototype.get_numfaces=K.prototype.RE=function(){return pp(this.kB)};K.prototype.set_numfaces=K.prototype.LH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);qp(c,a)};Object.defineProperty(K.prototype,"numfaces",{get:K.prototype.RE,set:K.prototype.LH});K.prototype.get_indicestype=K.prototype.oC=function(){return rp(this.kB)};K.prototype.set_indicestype=K.prototype.hF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);sp(c,a)}; Object.defineProperty(K.prototype,"indicestype",{get:K.prototype.oC,set:K.prototype.hF});K.prototype.__destroy__=function(){tp(this.kB)};function CF(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=up(a,c);h(CF)[this.kB]=this}CF.prototype=Object.create(IE.prototype);CF.prototype.constructor=CF;CF.prototype.lB=CF;CF.mB={};b.btGImpactMeshShapePart=CF;CF.prototype.getTrimeshPrimitiveManager=function(){return k(vp(this.kB),K)};CF.prototype.getVertexCount=function(){return wp(this.kB)}; CF.prototype.getVertex=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);xp(d,a,c)};CF.prototype.getPart=function(){return yp(this.kB)};CF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);zp(c,a)};CF.prototype.getLocalScaling=function(){return k(Ap(this.kB),n)};CF.prototype.updateBound=function(){Bp(this.kB)};CF.prototype.postUpdate=function(){Cp(this.kB)};CF.prototype.getShapeType=function(){return Dp(this.kB)}; CF.prototype.needsRetrieveTriangles=function(){return!!Ep(this.kB)};CF.prototype.needsRetrieveTetrahedrons=function(){return!!Fp(this.kB)};CF.prototype.getBulletTriangle=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Gp(d,a,c)};CF.prototype.getBulletTetrahedron=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Hp(d,a,c)};CF.prototype.__destroy__=function(){Ip(this.kB)}; function DF(a){a&&"object"===typeof a&&(a=a.kB);this.kB=Jp(a);h(DF)[this.kB]=this}DF.prototype=Object.create(IE.prototype);DF.prototype.constructor=DF;DF.prototype.lB=DF;DF.mB={};b.btGImpactMeshShape=DF;DF.prototype.getMeshInterface=function(){return k(Kp(this.kB),FE)};DF.prototype.getMeshPartCount=function(){return Lp(this.kB)};DF.prototype.getMeshPart=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Mp(c,a),CF)};DF.prototype.calculateSerializeBufferSize=function(){return Np(this.kB)}; DF.prototype.setLocalScaling=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Op(c,a)};DF.prototype.getLocalScaling=function(){return k(Pp(this.kB),n)};DF.prototype.updateBound=function(){Qp(this.kB)};DF.prototype.postUpdate=function(){Rp(this.kB)};DF.prototype.getShapeType=function(){return Sp(this.kB)};DF.prototype.needsRetrieveTriangles=function(){return!!Tp(this.kB)};DF.prototype.needsRetrieveTetrahedrons=function(){return!!Up(this.kB)}; DF.prototype.getBulletTriangle=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Vp(d,a,c)};DF.prototype.getBulletTetrahedron=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Wp(d,a,c)};DF.prototype.__destroy__=function(){Xp(this.kB)}; function EF(a,c){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);this.kB=void 0===a?Yp():void 0===c?_emscripten_bind_btCollisionAlgorithmConstructionInfo_btCollisionAlgorithmConstructionInfo_1(a):Zp(a,c);h(EF)[this.kB]=this}EF.prototype=Object.create(f.prototype);EF.prototype.constructor=EF;EF.prototype.lB=EF;EF.mB={};b.btCollisionAlgorithmConstructionInfo=EF;EF.prototype.get_m_dispatcher1=EF.prototype.lD=function(){return k($p(this.kB),oE)}; EF.prototype.set_m_dispatcher1=EF.prototype.eG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);aq(c,a)};Object.defineProperty(EF.prototype,"m_dispatcher1",{get:EF.prototype.lD,set:EF.prototype.eG});EF.prototype.get_m_manifold=EF.prototype.RD=function(){return k(bq(this.kB),LE)};EF.prototype.set_m_manifold=EF.prototype.KG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);cq(c,a)};Object.defineProperty(EF.prototype,"m_manifold",{get:EF.prototype.RD,set:EF.prototype.KG}); EF.prototype.__destroy__=function(){dq(this.kB)};function FF(a,c,d){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);this.kB=eq(a,c,d);h(FF)[this.kB]=this}FF.prototype=Object.create(JE.prototype);FF.prototype.constructor=FF;FF.prototype.lB=FF;FF.mB={};b.btGImpactCollisionAlgorithm=FF;FF.prototype.registerAlgorithm=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);fq(c,a)};FF.prototype.__destroy__=function(){gq(this.kB)}; function GF(){this.kB=hq();h(GF)[this.kB]=this}GF.prototype=Object.create(f.prototype);GF.prototype.constructor=GF;GF.prototype.lB=GF;GF.mB={};b.btDefaultCollisionConstructionInfo=GF;GF.prototype.__destroy__=function(){iq(this.kB)};function LE(){this.kB=jq();h(LE)[this.kB]=this}LE.prototype=Object.create(f.prototype);LE.prototype.constructor=LE;LE.prototype.lB=LE;LE.mB={};b.btPersistentManifold=LE;LE.prototype.getBody0=function(){return k(kq(this.kB),r)}; LE.prototype.getBody1=function(){return k(lq(this.kB),r)};LE.prototype.getNumContacts=function(){return mq(this.kB)};LE.prototype.getContactPoint=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(nq(c,a),F)};LE.prototype.__destroy__=function(){oq(this.kB)};function HF(a){a&&"object"===typeof a&&(a=a.kB);this.kB=pq(a);h(HF)[this.kB]=this}HF.prototype=Object.create(oE.prototype);HF.prototype.constructor=HF;HF.prototype.lB=HF;HF.mB={};b.btCollisionDispatcher=HF; HF.prototype.getNumManifolds=function(){return qq(this.kB)};HF.prototype.getManifoldByIndexInternal=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(rq(c,a),LE)};HF.prototype.__destroy__=function(){sq(this.kB)};function IF(){throw"cannot construct a btOverlappingPairCallback, no constructor in IDL";}IF.prototype=Object.create(f.prototype);IF.prototype.constructor=IF;IF.prototype.lB=IF;IF.mB={};b.btOverlappingPairCallback=IF;IF.prototype.__destroy__=function(){tq(this.kB)}; function pE(){throw"cannot construct a btOverlappingPairCache, no constructor in IDL";}pE.prototype=Object.create(f.prototype);pE.prototype.constructor=pE;pE.prototype.lB=pE;pE.mB={};b.btOverlappingPairCache=pE;pE.prototype.setInternalGhostPairCallback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);uq(c,a)};pE.prototype.getNumOverlappingPairs=function(){return vq(this.kB)};pE.prototype.__destroy__=function(){wq(this.kB)}; function JF(a,c,d,e,g){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);this.kB=void 0===d?xq(a,c):void 0===e?yq(a,c,d):void 0===g?zq(a,c,d,e):Aq(a,c,d,e,g);h(JF)[this.kB]=this}JF.prototype=Object.create(f.prototype);JF.prototype.constructor=JF;JF.prototype.lB=JF;JF.mB={};b.btAxisSweep3=JF;JF.prototype.__destroy__=function(){Bq(this.kB)}; function qE(){throw"cannot construct a btBroadphaseInterface, no constructor in IDL";}qE.prototype=Object.create(f.prototype);qE.prototype.constructor=qE;qE.prototype.lB=qE;qE.mB={};b.btBroadphaseInterface=qE;qE.prototype.getOverlappingPairCache=function(){return k(Cq(this.kB),pE)};qE.prototype.__destroy__=function(){Dq(this.kB)};function KF(){throw"cannot construct a btCollisionConfiguration, no constructor in IDL";}KF.prototype=Object.create(f.prototype);KF.prototype.constructor=KF; KF.prototype.lB=KF;KF.mB={};b.btCollisionConfiguration=KF;KF.prototype.__destroy__=function(){Eq(this.kB)};function LF(){this.kB=Fq();h(LF)[this.kB]=this}LF.prototype=Object.create(f.prototype);LF.prototype.constructor=LF;LF.prototype.lB=LF;LF.mB={};b.btDbvtBroadphase=LF;LF.prototype.__destroy__=function(){Gq(this.kB)};function tE(){throw"cannot construct a btBroadphaseProxy, no constructor in IDL";}tE.prototype=Object.create(f.prototype);tE.prototype.constructor=tE;tE.prototype.lB=tE;tE.mB={}; b.btBroadphaseProxy=tE;tE.prototype.get_m_collisionFilterGroup=tE.prototype.nB=function(){return Hq(this.kB)};tE.prototype.set_m_collisionFilterGroup=tE.prototype.pB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Iq(c,a)};Object.defineProperty(tE.prototype,"m_collisionFilterGroup",{get:tE.prototype.nB,set:tE.prototype.pB});tE.prototype.get_m_collisionFilterMask=tE.prototype.oB=function(){return Jq(this.kB)}; tE.prototype.set_m_collisionFilterMask=tE.prototype.qB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Kq(c,a)};Object.defineProperty(tE.prototype,"m_collisionFilterMask",{get:tE.prototype.oB,set:tE.prototype.qB});tE.prototype.__destroy__=function(){Lq(this.kB)};function L(a,c,d,e){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);this.kB=void 0===e?Mq(a,c,d):Nq(a,c,d,e);h(L)[this.kB]=this}L.prototype=Object.create(f.prototype); L.prototype.constructor=L;L.prototype.lB=L;L.mB={};b.btRigidBodyConstructionInfo=L;L.prototype.get_m_linearDamping=L.prototype.KD=function(){return Oq(this.kB)};L.prototype.set_m_linearDamping=L.prototype.DG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Pq(c,a)};Object.defineProperty(L.prototype,"m_linearDamping",{get:L.prototype.KD,set:L.prototype.DG});L.prototype.get_m_angularDamping=L.prototype.OC=function(){return Qq(this.kB)}; L.prototype.set_m_angularDamping=L.prototype.HF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Rq(c,a)};Object.defineProperty(L.prototype,"m_angularDamping",{get:L.prototype.OC,set:L.prototype.HF});L.prototype.get_m_friction=L.prototype.rD=function(){return Sq(this.kB)};L.prototype.set_m_friction=L.prototype.kG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Tq(c,a)};Object.defineProperty(L.prototype,"m_friction",{get:L.prototype.rD,set:L.prototype.kG}); L.prototype.get_m_rollingFriction=L.prototype.kE=function(){return Uq(this.kB)};L.prototype.set_m_rollingFriction=L.prototype.eH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Vq(c,a)};Object.defineProperty(L.prototype,"m_rollingFriction",{get:L.prototype.kE,set:L.prototype.eH});L.prototype.get_m_restitution=L.prototype.iE=function(){return Wq(this.kB)};L.prototype.set_m_restitution=L.prototype.cH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Xq(c,a)}; Object.defineProperty(L.prototype,"m_restitution",{get:L.prototype.iE,set:L.prototype.cH});L.prototype.get_m_linearSleepingThreshold=L.prototype.LD=function(){return Yq(this.kB)};L.prototype.set_m_linearSleepingThreshold=L.prototype.EG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Zq(c,a)};Object.defineProperty(L.prototype,"m_linearSleepingThreshold",{get:L.prototype.LD,set:L.prototype.EG});L.prototype.get_m_angularSleepingThreshold=L.prototype.PC=function(){return $q(this.kB)}; L.prototype.set_m_angularSleepingThreshold=L.prototype.IF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ar(c,a)};Object.defineProperty(L.prototype,"m_angularSleepingThreshold",{get:L.prototype.PC,set:L.prototype.IF});L.prototype.get_m_additionalDamping=L.prototype.JC=function(){return!!br(this.kB)};L.prototype.set_m_additionalDamping=L.prototype.CF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);cr(c,a)}; Object.defineProperty(L.prototype,"m_additionalDamping",{get:L.prototype.JC,set:L.prototype.CF});L.prototype.get_m_additionalDampingFactor=L.prototype.KC=function(){return dr(this.kB)};L.prototype.set_m_additionalDampingFactor=L.prototype.DF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);er(c,a)};Object.defineProperty(L.prototype,"m_additionalDampingFactor",{get:L.prototype.KC,set:L.prototype.DF});L.prototype.get_m_additionalLinearDampingThresholdSqr=L.prototype.LC=function(){return fr(this.kB)}; L.prototype.set_m_additionalLinearDampingThresholdSqr=L.prototype.EF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);gr(c,a)};Object.defineProperty(L.prototype,"m_additionalLinearDampingThresholdSqr",{get:L.prototype.LC,set:L.prototype.EF});L.prototype.get_m_additionalAngularDampingThresholdSqr=L.prototype.IC=function(){return hr(this.kB)};L.prototype.set_m_additionalAngularDampingThresholdSqr=L.prototype.BF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ir(c,a)}; Object.defineProperty(L.prototype,"m_additionalAngularDampingThresholdSqr",{get:L.prototype.IC,set:L.prototype.BF});L.prototype.get_m_additionalAngularDampingFactor=L.prototype.HC=function(){return jr(this.kB)};L.prototype.set_m_additionalAngularDampingFactor=L.prototype.AF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);kr(c,a)};Object.defineProperty(L.prototype,"m_additionalAngularDampingFactor",{get:L.prototype.HC,set:L.prototype.AF});L.prototype.__destroy__=function(){lr(this.kB)}; function M(a){a&&"object"===typeof a&&(a=a.kB);this.kB=mr(a);h(M)[this.kB]=this}M.prototype=Object.create(r.prototype);M.prototype.constructor=M;M.prototype.lB=M;M.mB={};b.btRigidBody=M;M.prototype.getCenterOfMassTransform=function(){return k(nr(this.kB),t)};M.prototype.setCenterOfMassTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);or(c,a)};M.prototype.setSleepingThresholds=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);pr(d,a,c)}; M.prototype.getLinearDamping=function(){return qr(this.kB)};M.prototype.getAngularDamping=function(){return rr(this.kB)};M.prototype.setDamping=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);sr(d,a,c)};M.prototype.setMassProps=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);tr(d,a,c)};M.prototype.getLinearFactor=function(){return k(ur(this.kB),n)}; M.prototype.setLinearFactor=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);vr(c,a)};M.prototype.applyTorque=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);wr(c,a)};M.prototype.applyLocalTorque=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);xr(c,a)};M.prototype.applyForce=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);yr(d,a,c)}; M.prototype.applyCentralForce=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);zr(c,a)};M.prototype.applyCentralLocalForce=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ar(c,a)};M.prototype.applyTorqueImpulse=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Br(c,a)};M.prototype.applyImpulse=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Cr(d,a,c)}; M.prototype.applyCentralImpulse=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Dr(c,a)};M.prototype.updateInertiaTensor=function(){Er(this.kB)};M.prototype.getLinearVelocity=function(){return k(Fr(this.kB),n)};M.prototype.getAngularVelocity=function(){return k(Gr(this.kB),n)};M.prototype.setLinearVelocity=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Hr(c,a)};M.prototype.setAngularVelocity=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ir(c,a)}; M.prototype.getMotionState=function(){return k(Jr(this.kB),zE)};M.prototype.setMotionState=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Kr(c,a)};M.prototype.getAngularFactor=function(){return k(Lr(this.kB),n)};M.prototype.setAngularFactor=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Mr(c,a)};M.prototype.upcast=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Nr(c,a),M)}; M.prototype.getAabb=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Or(d,a,c)};M.prototype.applyGravity=function(){Pr(this.kB)};M.prototype.getGravity=function(){return k(Qr(this.kB),n)};M.prototype.setGravity=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Rr(c,a)};M.prototype.getBroadphaseProxy=function(){return k(Sr(this.kB),tE)};M.prototype.clearForces=function(){Tr(this.kB)}; M.prototype.setFlags=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ur(c,a)};M.prototype.getFlags=function(){return Vr(this.kB)};M.prototype.setAnisotropicFriction=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Wr(d,a,c)};M.prototype.getCollisionShape=function(){return k(Xr(this.kB),l)};M.prototype.setContactProcessingThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Yr(c,a)}; M.prototype.setActivationState=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Zr(c,a)};M.prototype.forceActivationState=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);$r(c,a)};M.prototype.activate=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);void 0===a?as(c):bs(c,a)};M.prototype.isActive=function(){return!!cs(this.kB)};M.prototype.isKinematicObject=function(){return!!ds(this.kB)};M.prototype.isStaticObject=function(){return!!es(this.kB)}; M.prototype.isStaticOrKinematicObject=function(){return!!gs(this.kB)};M.prototype.getRestitution=function(){return hs(this.kB)};M.prototype.getFriction=function(){return is(this.kB)};M.prototype.getRollingFriction=function(){return js(this.kB)};M.prototype.setRestitution=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ks(c,a)};M.prototype.setFriction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ls(c,a)}; M.prototype.setRollingFriction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ms(c,a)};M.prototype.getWorldTransform=function(){return k(ns(this.kB),t)};M.prototype.getCollisionFlags=function(){return ps(this.kB)};M.prototype.setCollisionFlags=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);qs(c,a)};M.prototype.setWorldTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);rs(c,a)}; M.prototype.setCollisionShape=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ss(c,a)};M.prototype.setCcdMotionThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ts(c,a)};M.prototype.setCcdSweptSphereRadius=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);us(c,a)};M.prototype.getUserIndex=function(){return vs(this.kB)};M.prototype.setUserIndex=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);xs(c,a)}; M.prototype.getUserPointer=function(){return k(ys(this.kB),sE)};M.prototype.setUserPointer=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);zs(c,a)};M.prototype.getBroadphaseHandle=function(){return k(As(this.kB),tE)};M.prototype.__destroy__=function(){Bs(this.kB)};function MF(){this.kB=Cs();h(MF)[this.kB]=this}MF.prototype=Object.create(f.prototype);MF.prototype.constructor=MF;MF.prototype.lB=MF;MF.mB={};b.btConstraintSetting=MF;MF.prototype.get_m_tau=MF.prototype.zE=function(){return Ds(this.kB)}; MF.prototype.set_m_tau=MF.prototype.tH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Es(c,a)};Object.defineProperty(MF.prototype,"m_tau",{get:MF.prototype.zE,set:MF.prototype.tH});MF.prototype.get_m_damping=MF.prototype.hD=function(){return Fs(this.kB)};MF.prototype.set_m_damping=MF.prototype.aG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Gs(c,a)};Object.defineProperty(MF.prototype,"m_damping",{get:MF.prototype.hD,set:MF.prototype.aG}); MF.prototype.get_m_impulseClamp=MF.prototype.DD=function(){return Hs(this.kB)};MF.prototype.set_m_impulseClamp=MF.prototype.wG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Is(c,a)};Object.defineProperty(MF.prototype,"m_impulseClamp",{get:MF.prototype.DD,set:MF.prototype.wG});MF.prototype.__destroy__=function(){Js(this.kB)}; function NF(a,c,d,e){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);this.kB=void 0===d?Ks(a,c):void 0===e?_emscripten_bind_btPoint2PointConstraint_btPoint2PointConstraint_3(a,c,d):Ls(a,c,d,e);h(NF)[this.kB]=this}NF.prototype=Object.create(wE.prototype);NF.prototype.constructor=NF;NF.prototype.lB=NF;NF.mB={};b.btPoint2PointConstraint=NF; NF.prototype.setPivotA=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ms(c,a)};NF.prototype.setPivotB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ns(c,a)};NF.prototype.getPivotInA=function(){return k(Os(this.kB),n)};NF.prototype.getPivotInB=function(){return k(Ps(this.kB),n)};NF.prototype.enableFeedback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Qs(c,a)};NF.prototype.getBreakingImpulseThreshold=function(){return Rs(this.kB)}; NF.prototype.setBreakingImpulseThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ss(c,a)};NF.prototype.getParam=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);return Ts(d,a,c)};NF.prototype.setParam=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);Us(e,a,c,d)};NF.prototype.get_m_setting=NF.prototype.mE=function(){return k(Vs(this.kB),MF)}; NF.prototype.set_m_setting=NF.prototype.gH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ws(c,a)};Object.defineProperty(NF.prototype,"m_setting",{get:NF.prototype.mE,set:NF.prototype.gH});NF.prototype.__destroy__=function(){Xs(this.kB)}; function OF(a,c,d,e,g){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);this.kB=void 0===e?Ys(a,c,d):void 0===g?_emscripten_bind_btGeneric6DofSpringConstraint_btGeneric6DofSpringConstraint_4(a,c,d,e):Zs(a,c,d,e,g);h(OF)[this.kB]=this}OF.prototype=Object.create(ME.prototype);OF.prototype.constructor=OF;OF.prototype.lB=OF;OF.mB={};b.btGeneric6DofSpringConstraint=OF; OF.prototype.enableSpring=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);$s(d,a,c)};OF.prototype.setStiffness=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);at(d,a,c)};OF.prototype.setDamping=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);bt(d,a,c)}; OF.prototype.setEquilibriumPoint=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);void 0===a?ct(d):void 0===c?dt(d,a):et(d,a,c)};OF.prototype.setLinearLowerLimit=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ft(c,a)};OF.prototype.setLinearUpperLimit=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);gt(c,a)};OF.prototype.setAngularLowerLimit=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ht(c,a)}; OF.prototype.setAngularUpperLimit=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);it(c,a)};OF.prototype.getFrameOffsetA=function(){return k(jt(this.kB),t)};OF.prototype.enableFeedback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);kt(c,a)};OF.prototype.getBreakingImpulseThreshold=function(){return lt(this.kB)};OF.prototype.setBreakingImpulseThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);mt(c,a)}; OF.prototype.getParam=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);return nt(d,a,c)};OF.prototype.setParam=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);ot(e,a,c,d)};OF.prototype.__destroy__=function(){pt(this.kB)};function PF(){this.kB=qt();h(PF)[this.kB]=this}PF.prototype=Object.create(f.prototype);PF.prototype.constructor=PF;PF.prototype.lB=PF;PF.mB={}; b.btSequentialImpulseConstraintSolver=PF;PF.prototype.__destroy__=function(){rt(this.kB)};function QF(a,c,d,e){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);this.kB=void 0===d?st(a,c):void 0===e?_emscripten_bind_btConeTwistConstraint_btConeTwistConstraint_3(a,c,d):tt(a,c,d,e);h(QF)[this.kB]=this}QF.prototype=Object.create(wE.prototype);QF.prototype.constructor=QF;QF.prototype.lB=QF;QF.mB={}; b.btConeTwistConstraint=QF;QF.prototype.setLimit=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);ut(d,a,c)};QF.prototype.setAngularOnly=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);vt(c,a)};QF.prototype.setDamping=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);wt(c,a)};QF.prototype.enableMotor=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);xt(c,a)}; QF.prototype.setMaxMotorImpulse=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);yt(c,a)};QF.prototype.setMaxMotorImpulseNormalized=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);zt(c,a)};QF.prototype.setMotorTarget=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);At(c,a)};QF.prototype.setMotorTargetInConstraintSpace=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Bt(c,a)}; QF.prototype.enableFeedback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ct(c,a)};QF.prototype.getBreakingImpulseThreshold=function(){return Dt(this.kB)};QF.prototype.setBreakingImpulseThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Et(c,a)};QF.prototype.getParam=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);return Ft(d,a,c)}; QF.prototype.setParam=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);Gt(e,a,c,d)};QF.prototype.__destroy__=function(){Ht(this.kB)}; function RF(a,c,d,e,g,m,y){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);m&&"object"===typeof m&&(m=m.kB);y&&"object"===typeof y&&(y=y.kB);this.kB=void 0===d?It(a,c):void 0===e?Jt(a,c,d):void 0===g?Kt(a,c,d,e):void 0===m?Lt(a,c,d,e,g):void 0===y?Mt(a,c,d,e,g,m):Nt(a,c,d,e,g,m,y);h(RF)[this.kB]=this}RF.prototype=Object.create(wE.prototype);RF.prototype.constructor=RF; RF.prototype.lB=RF;RF.mB={};b.btHingeConstraint=RF;RF.prototype.getHingeAngle=function(){return Ot(this.kB)};RF.prototype.setLimit=function(a,c,d,e,g){var m=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);void 0===g?Pt(m,a,c,d,e):Qt(m,a,c,d,e,g)}; RF.prototype.enableAngularMotor=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);Rt(e,a,c,d)};RF.prototype.setAngularOnly=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);St(c,a)};RF.prototype.enableMotor=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Tt(c,a)};RF.prototype.setMaxMotorImpulse=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ut(c,a)}; RF.prototype.setMotorTarget=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Vt(d,a,c)};RF.prototype.enableFeedback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Wt(c,a)};RF.prototype.getBreakingImpulseThreshold=function(){return Xt(this.kB)};RF.prototype.setBreakingImpulseThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Yt(c,a)}; RF.prototype.getParam=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);return Zt(d,a,c)};RF.prototype.setParam=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);$t(e,a,c,d)};RF.prototype.__destroy__=function(){au(this.kB)}; function SF(a,c,d,e,g){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);this.kB=void 0===e?bu(a,c,d):void 0===g?_emscripten_bind_btSliderConstraint_btSliderConstraint_4(a,c,d,e):cu(a,c,d,e,g);h(SF)[this.kB]=this}SF.prototype=Object.create(wE.prototype);SF.prototype.constructor=SF;SF.prototype.lB=SF;SF.mB={};b.btSliderConstraint=SF;SF.prototype.getLinearPos=function(){return du(this.kB)}; SF.prototype.getAngularPos=function(){return eu(this.kB)};SF.prototype.setLowerLinLimit=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);fu(c,a)};SF.prototype.setUpperLinLimit=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);gu(c,a)};SF.prototype.setLowerAngLimit=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);hu(c,a)};SF.prototype.setUpperAngLimit=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);iu(c,a)}; SF.prototype.setPoweredLinMotor=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ju(c,a)};SF.prototype.setMaxLinMotorForce=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ku(c,a)};SF.prototype.setTargetLinMotorVelocity=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);lu(c,a)};SF.prototype.enableFeedback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);mu(c,a)};SF.prototype.getBreakingImpulseThreshold=function(){return nu(this.kB)}; SF.prototype.setBreakingImpulseThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ou(c,a)};SF.prototype.getParam=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);return pu(d,a,c)};SF.prototype.setParam=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);qu(e,a,c,d)};SF.prototype.__destroy__=function(){ru(this.kB)}; function TF(a,c,d,e){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);this.kB=su(a,c,d,e);h(TF)[this.kB]=this}TF.prototype=Object.create(wE.prototype);TF.prototype.constructor=TF;TF.prototype.lB=TF;TF.mB={};b.btFixedConstraint=TF;TF.prototype.enableFeedback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);tu(c,a)};TF.prototype.getBreakingImpulseThreshold=function(){return uu(this.kB)}; TF.prototype.setBreakingImpulseThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);vu(c,a)};TF.prototype.getParam=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);return wu(d,a,c)};TF.prototype.setParam=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);xu(e,a,c,d)};TF.prototype.__destroy__=function(){yu(this.kB)}; function UF(){throw"cannot construct a btConstraintSolver, no constructor in IDL";}UF.prototype=Object.create(f.prototype);UF.prototype.constructor=UF;UF.prototype.lB=UF;UF.mB={};b.btConstraintSolver=UF;UF.prototype.__destroy__=function(){zu(this.kB)};function q(){throw"cannot construct a btDispatcherInfo, no constructor in IDL";}q.prototype=Object.create(f.prototype);q.prototype.constructor=q;q.prototype.lB=q;q.mB={};b.btDispatcherInfo=q;q.prototype.get_m_timeStep=q.prototype.BE=function(){return Au(this.kB)}; q.prototype.set_m_timeStep=q.prototype.vH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Bu(c,a)};Object.defineProperty(q.prototype,"m_timeStep",{get:q.prototype.BE,set:q.prototype.vH});q.prototype.get_m_stepCount=q.prototype.sE=function(){return Cu(this.kB)};q.prototype.set_m_stepCount=q.prototype.mH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Du(c,a)};Object.defineProperty(q.prototype,"m_stepCount",{get:q.prototype.sE,set:q.prototype.mH}); q.prototype.get_m_dispatchFunc=q.prototype.jD=function(){return Eu(this.kB)};q.prototype.set_m_dispatchFunc=q.prototype.cG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Fu(c,a)};Object.defineProperty(q.prototype,"m_dispatchFunc",{get:q.prototype.jD,set:q.prototype.cG});q.prototype.get_m_timeOfImpact=q.prototype.AE=function(){return Gu(this.kB)};q.prototype.set_m_timeOfImpact=q.prototype.uH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Hu(c,a)}; Object.defineProperty(q.prototype,"m_timeOfImpact",{get:q.prototype.AE,set:q.prototype.uH});q.prototype.get_m_useContinuous=q.prototype.DE=function(){return!!Iu(this.kB)};q.prototype.set_m_useContinuous=q.prototype.xH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ju(c,a)};Object.defineProperty(q.prototype,"m_useContinuous",{get:q.prototype.DE,set:q.prototype.xH});q.prototype.get_m_enableSatConvex=q.prototype.oD=function(){return!!Ku(this.kB)}; q.prototype.set_m_enableSatConvex=q.prototype.hG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Lu(c,a)};Object.defineProperty(q.prototype,"m_enableSatConvex",{get:q.prototype.oD,set:q.prototype.hG});q.prototype.get_m_enableSPU=q.prototype.nD=function(){return!!Mu(this.kB)};q.prototype.set_m_enableSPU=q.prototype.gG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Nu(c,a)};Object.defineProperty(q.prototype,"m_enableSPU",{get:q.prototype.nD,set:q.prototype.gG}); q.prototype.get_m_useEpa=q.prototype.FE=function(){return!!Ou(this.kB)};q.prototype.set_m_useEpa=q.prototype.zH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Pu(c,a)};Object.defineProperty(q.prototype,"m_useEpa",{get:q.prototype.FE,set:q.prototype.zH});q.prototype.get_m_allowedCcdPenetration=q.prototype.MC=function(){return Qu(this.kB)};q.prototype.set_m_allowedCcdPenetration=q.prototype.FF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ru(c,a)}; Object.defineProperty(q.prototype,"m_allowedCcdPenetration",{get:q.prototype.MC,set:q.prototype.FF});q.prototype.get_m_useConvexConservativeDistanceUtil=q.prototype.EE=function(){return!!Su(this.kB)};q.prototype.set_m_useConvexConservativeDistanceUtil=q.prototype.yH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Tu(c,a)};Object.defineProperty(q.prototype,"m_useConvexConservativeDistanceUtil",{get:q.prototype.EE,set:q.prototype.yH}); q.prototype.get_m_convexConservativeDistanceThreshold=q.prototype.eD=function(){return Uu(this.kB)};q.prototype.set_m_convexConservativeDistanceThreshold=q.prototype.YF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Vu(c,a)};Object.defineProperty(q.prototype,"m_convexConservativeDistanceThreshold",{get:q.prototype.eD,set:q.prototype.YF});q.prototype.__destroy__=function(){Wu(this.kB)};function u(){throw"cannot construct a btContactSolverInfo, no constructor in IDL";}u.prototype=Object.create(f.prototype); u.prototype.constructor=u;u.prototype.lB=u;u.mB={};b.btContactSolverInfo=u;u.prototype.get_m_splitImpulse=u.prototype.pE=function(){return!!Xu(this.kB)};u.prototype.set_m_splitImpulse=u.prototype.jH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Yu(c,a)};Object.defineProperty(u.prototype,"m_splitImpulse",{get:u.prototype.pE,set:u.prototype.jH});u.prototype.get_m_splitImpulsePenetrationThreshold=u.prototype.qE=function(){return Zu(this.kB)}; u.prototype.set_m_splitImpulsePenetrationThreshold=u.prototype.kH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);$u(c,a)};Object.defineProperty(u.prototype,"m_splitImpulsePenetrationThreshold",{get:u.prototype.qE,set:u.prototype.kH});u.prototype.get_m_numIterations=u.prototype.$D=function(){return av(this.kB)};u.prototype.set_m_numIterations=u.prototype.UG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);bv(c,a)}; Object.defineProperty(u.prototype,"m_numIterations",{get:u.prototype.$D,set:u.prototype.UG});u.prototype.__destroy__=function(){cv(this.kB)};function N(){this.kB=dv();h(N)[this.kB]=this}N.prototype=Object.create(f.prototype);N.prototype.constructor=N;N.prototype.lB=N;N.mB={};b.btVehicleTuning=N;N.prototype.get_m_suspensionStiffness=N.prototype.EB=function(){return ev(this.kB)};N.prototype.set_m_suspensionStiffness=N.prototype.MB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);fv(c,a)}; Object.defineProperty(N.prototype,"m_suspensionStiffness",{get:N.prototype.EB,set:N.prototype.MB});N.prototype.get_m_suspensionCompression=N.prototype.tE=function(){return gv(this.kB)};N.prototype.set_m_suspensionCompression=N.prototype.nH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);hv(c,a)};Object.defineProperty(N.prototype,"m_suspensionCompression",{get:N.prototype.tE,set:N.prototype.nH});N.prototype.get_m_suspensionDamping=N.prototype.uE=function(){return iv(this.kB)}; N.prototype.set_m_suspensionDamping=N.prototype.oH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);jv(c,a)};Object.defineProperty(N.prototype,"m_suspensionDamping",{get:N.prototype.uE,set:N.prototype.oH});N.prototype.get_m_maxSuspensionTravelCm=N.prototype.DB=function(){return kv(this.kB)};N.prototype.set_m_maxSuspensionTravelCm=N.prototype.LB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);lv(c,a)}; Object.defineProperty(N.prototype,"m_maxSuspensionTravelCm",{get:N.prototype.DB,set:N.prototype.LB});N.prototype.get_m_frictionSlip=N.prototype.zB=function(){return mv(this.kB)};N.prototype.set_m_frictionSlip=N.prototype.HB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);nv(c,a)};Object.defineProperty(N.prototype,"m_frictionSlip",{get:N.prototype.zB,set:N.prototype.HB});N.prototype.get_m_maxSuspensionForce=N.prototype.CB=function(){return ov(this.kB)}; N.prototype.set_m_maxSuspensionForce=N.prototype.KB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);pv(c,a)};Object.defineProperty(N.prototype,"m_maxSuspensionForce",{get:N.prototype.CB,set:N.prototype.KB});function VF(){throw"cannot construct a btVehicleRaycasterResult, no constructor in IDL";}VF.prototype=Object.create(f.prototype);VF.prototype.constructor=VF;VF.prototype.lB=VF;VF.mB={};b.btVehicleRaycasterResult=VF; VF.prototype.get_m_hitPointInWorld=VF.prototype.AD=function(){return k(qv(this.kB),n)};VF.prototype.set_m_hitPointInWorld=VF.prototype.tG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);rv(c,a)};Object.defineProperty(VF.prototype,"m_hitPointInWorld",{get:VF.prototype.AD,set:VF.prototype.tG});VF.prototype.get_m_hitNormalInWorld=VF.prototype.yD=function(){return k(sv(this.kB),n)}; VF.prototype.set_m_hitNormalInWorld=VF.prototype.rG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);tv(c,a)};Object.defineProperty(VF.prototype,"m_hitNormalInWorld",{get:VF.prototype.yD,set:VF.prototype.rG});VF.prototype.get_m_distFraction=VF.prototype.mD=function(){return uv(this.kB)};VF.prototype.set_m_distFraction=VF.prototype.fG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);vv(c,a)};Object.defineProperty(VF.prototype,"m_distFraction",{get:VF.prototype.mD,set:VF.prototype.fG}); VF.prototype.__destroy__=function(){wv(this.kB)};function WF(a){a&&"object"===typeof a&&(a=a.kB);this.kB=xv(a);h(WF)[this.kB]=this}WF.prototype=Object.create(NE.prototype);WF.prototype.constructor=WF;WF.prototype.lB=WF;WF.mB={};b.btDefaultVehicleRaycaster=WF;WF.prototype.castRay=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);yv(e,a,c,d)};WF.prototype.__destroy__=function(){zv(this.kB)}; function O(){throw"cannot construct a RaycastInfo, no constructor in IDL";}O.prototype=Object.create(f.prototype);O.prototype.constructor=O;O.prototype.lB=O;O.mB={};b.RaycastInfo=O;O.prototype.get_m_contactNormalWS=O.prototype.cD=function(){return k(Av(this.kB),n)};O.prototype.set_m_contactNormalWS=O.prototype.WF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Bv(c,a)};Object.defineProperty(O.prototype,"m_contactNormalWS",{get:O.prototype.cD,set:O.prototype.WF}); O.prototype.get_m_contactPointWS=O.prototype.dD=function(){return k(Cv(this.kB),n)};O.prototype.set_m_contactPointWS=O.prototype.XF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Dv(c,a)};Object.defineProperty(O.prototype,"m_contactPointWS",{get:O.prototype.dD,set:O.prototype.XF});O.prototype.get_m_suspensionLength=O.prototype.vE=function(){return Ev(this.kB)};O.prototype.set_m_suspensionLength=O.prototype.pH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Fv(c,a)}; Object.defineProperty(O.prototype,"m_suspensionLength",{get:O.prototype.vE,set:O.prototype.pH});O.prototype.get_m_hardPointWS=O.prototype.vD=function(){return k(Gv(this.kB),n)};O.prototype.set_m_hardPointWS=O.prototype.oG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Hv(c,a)};Object.defineProperty(O.prototype,"m_hardPointWS",{get:O.prototype.vD,set:O.prototype.oG});O.prototype.get_m_wheelDirectionWS=O.prototype.KE=function(){return k(Iv(this.kB),n)}; O.prototype.set_m_wheelDirectionWS=O.prototype.EH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Jv(c,a)};Object.defineProperty(O.prototype,"m_wheelDirectionWS",{get:O.prototype.KE,set:O.prototype.EH});O.prototype.get_m_wheelAxleWS=O.prototype.JE=function(){return k(Kv(this.kB),n)};O.prototype.set_m_wheelAxleWS=O.prototype.DH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Lv(c,a)};Object.defineProperty(O.prototype,"m_wheelAxleWS",{get:O.prototype.JE,set:O.prototype.DH}); O.prototype.get_m_isInContact=O.prototype.GD=function(){return!!Mv(this.kB)};O.prototype.set_m_isInContact=O.prototype.zG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Nv(c,a)};Object.defineProperty(O.prototype,"m_isInContact",{get:O.prototype.GD,set:O.prototype.zG});O.prototype.get_m_groundObject=O.prototype.uD=function(){return Ov(this.kB)};O.prototype.set_m_groundObject=O.prototype.nG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Pv(c,a)}; Object.defineProperty(O.prototype,"m_groundObject",{get:O.prototype.uD,set:O.prototype.nG});O.prototype.__destroy__=function(){Qv(this.kB)};function P(){throw"cannot construct a btWheelInfoConstructionInfo, no constructor in IDL";}P.prototype=Object.create(f.prototype);P.prototype.constructor=P;P.prototype.lB=P;P.mB={};b.btWheelInfoConstructionInfo=P;P.prototype.get_m_chassisConnectionCS=P.prototype.YC=function(){return k(Rv(this.kB),n)}; P.prototype.set_m_chassisConnectionCS=P.prototype.RF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Sv(c,a)};Object.defineProperty(P.prototype,"m_chassisConnectionCS",{get:P.prototype.YC,set:P.prototype.RF});P.prototype.get_m_wheelDirectionCS=P.prototype.UB=function(){return k(Tv(this.kB),n)};P.prototype.set_m_wheelDirectionCS=P.prototype.dC=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Uv(c,a)};Object.defineProperty(P.prototype,"m_wheelDirectionCS",{get:P.prototype.UB,set:P.prototype.dC}); P.prototype.get_m_wheelAxleCS=P.prototype.TB=function(){return k(Vv(this.kB),n)};P.prototype.set_m_wheelAxleCS=P.prototype.cC=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Wv(c,a)};Object.defineProperty(P.prototype,"m_wheelAxleCS",{get:P.prototype.TB,set:P.prototype.cC});P.prototype.get_m_suspensionRestLength=P.prototype.xE=function(){return Xv(this.kB)};P.prototype.set_m_suspensionRestLength=P.prototype.rH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Yv(c,a)}; Object.defineProperty(P.prototype,"m_suspensionRestLength",{get:P.prototype.xE,set:P.prototype.rH});P.prototype.get_m_maxSuspensionTravelCm=P.prototype.DB=function(){return Zv(this.kB)};P.prototype.set_m_maxSuspensionTravelCm=P.prototype.LB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);$v(c,a)};Object.defineProperty(P.prototype,"m_maxSuspensionTravelCm",{get:P.prototype.DB,set:P.prototype.LB});P.prototype.get_m_wheelRadius=P.prototype.LE=function(){return aw(this.kB)}; P.prototype.set_m_wheelRadius=P.prototype.FH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);bw(c,a)};Object.defineProperty(P.prototype,"m_wheelRadius",{get:P.prototype.LE,set:P.prototype.FH});P.prototype.get_m_suspensionStiffness=P.prototype.EB=function(){return cw(this.kB)};P.prototype.set_m_suspensionStiffness=P.prototype.MB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);dw(c,a)};Object.defineProperty(P.prototype,"m_suspensionStiffness",{get:P.prototype.EB,set:P.prototype.MB}); P.prototype.get_m_wheelsDampingCompression=P.prototype.VB=function(){return ew(this.kB)};P.prototype.set_m_wheelsDampingCompression=P.prototype.eC=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);fw(c,a)};Object.defineProperty(P.prototype,"m_wheelsDampingCompression",{get:P.prototype.VB,set:P.prototype.eC});P.prototype.get_m_wheelsDampingRelaxation=P.prototype.WB=function(){return gw(this.kB)}; P.prototype.set_m_wheelsDampingRelaxation=P.prototype.fC=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);hw(c,a)};Object.defineProperty(P.prototype,"m_wheelsDampingRelaxation",{get:P.prototype.WB,set:P.prototype.fC});P.prototype.get_m_frictionSlip=P.prototype.zB=function(){return iw(this.kB)};P.prototype.set_m_frictionSlip=P.prototype.HB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);jw(c,a)};Object.defineProperty(P.prototype,"m_frictionSlip",{get:P.prototype.zB,set:P.prototype.HB}); P.prototype.get_m_maxSuspensionForce=P.prototype.CB=function(){return kw(this.kB)};P.prototype.set_m_maxSuspensionForce=P.prototype.KB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);lw(c,a)};Object.defineProperty(P.prototype,"m_maxSuspensionForce",{get:P.prototype.CB,set:P.prototype.KB});P.prototype.get_m_bIsFrontWheel=P.prototype.NB=function(){return!!mw(this.kB)};P.prototype.set_m_bIsFrontWheel=P.prototype.XB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);nw(c,a)}; Object.defineProperty(P.prototype,"m_bIsFrontWheel",{get:P.prototype.NB,set:P.prototype.XB});P.prototype.__destroy__=function(){ow(this.kB)};function Q(a){a&&"object"===typeof a&&(a=a.kB);this.kB=pw(a);h(Q)[this.kB]=this}Q.prototype=Object.create(f.prototype);Q.prototype.constructor=Q;Q.prototype.lB=Q;Q.mB={};b.btWheelInfo=Q;Q.prototype.getSuspensionRestLength=function(){return qw(this.kB)}; Q.prototype.updateWheel=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);rw(d,a,c)};Q.prototype.get_m_suspensionStiffness=Q.prototype.EB=function(){return sw(this.kB)};Q.prototype.set_m_suspensionStiffness=Q.prototype.MB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);tw(c,a)};Object.defineProperty(Q.prototype,"m_suspensionStiffness",{get:Q.prototype.EB,set:Q.prototype.MB});Q.prototype.get_m_frictionSlip=Q.prototype.zB=function(){return uw(this.kB)}; Q.prototype.set_m_frictionSlip=Q.prototype.HB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);vw(c,a)};Object.defineProperty(Q.prototype,"m_frictionSlip",{get:Q.prototype.zB,set:Q.prototype.HB});Q.prototype.get_m_engineForce=Q.prototype.pD=function(){return ww(this.kB)};Q.prototype.set_m_engineForce=Q.prototype.iG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);xw(c,a)};Object.defineProperty(Q.prototype,"m_engineForce",{get:Q.prototype.pD,set:Q.prototype.iG}); Q.prototype.get_m_rollInfluence=Q.prototype.jE=function(){return yw(this.kB)};Q.prototype.set_m_rollInfluence=Q.prototype.dH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);zw(c,a)};Object.defineProperty(Q.prototype,"m_rollInfluence",{get:Q.prototype.jE,set:Q.prototype.dH});Q.prototype.get_m_suspensionRestLength1=Q.prototype.yE=function(){return Aw(this.kB)};Q.prototype.set_m_suspensionRestLength1=Q.prototype.sH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Bw(c,a)}; Object.defineProperty(Q.prototype,"m_suspensionRestLength1",{get:Q.prototype.yE,set:Q.prototype.sH});Q.prototype.get_m_wheelsRadius=Q.prototype.ME=function(){return Cw(this.kB)};Q.prototype.set_m_wheelsRadius=Q.prototype.GH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Dw(c,a)};Object.defineProperty(Q.prototype,"m_wheelsRadius",{get:Q.prototype.ME,set:Q.prototype.GH});Q.prototype.get_m_wheelsDampingCompression=Q.prototype.VB=function(){return Ew(this.kB)}; Q.prototype.set_m_wheelsDampingCompression=Q.prototype.eC=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Fw(c,a)};Object.defineProperty(Q.prototype,"m_wheelsDampingCompression",{get:Q.prototype.VB,set:Q.prototype.eC});Q.prototype.get_m_wheelsDampingRelaxation=Q.prototype.WB=function(){return Gw(this.kB)};Q.prototype.set_m_wheelsDampingRelaxation=Q.prototype.fC=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Hw(c,a)}; Object.defineProperty(Q.prototype,"m_wheelsDampingRelaxation",{get:Q.prototype.WB,set:Q.prototype.fC});Q.prototype.get_m_steering=Q.prototype.rE=function(){return Iw(this.kB)};Q.prototype.set_m_steering=Q.prototype.lH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Jw(c,a)};Object.defineProperty(Q.prototype,"m_steering",{get:Q.prototype.rE,set:Q.prototype.lH});Q.prototype.get_m_maxSuspensionForce=Q.prototype.CB=function(){return Kw(this.kB)}; Q.prototype.set_m_maxSuspensionForce=Q.prototype.KB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Lw(c,a)};Object.defineProperty(Q.prototype,"m_maxSuspensionForce",{get:Q.prototype.CB,set:Q.prototype.KB});Q.prototype.get_m_maxSuspensionTravelCm=Q.prototype.DB=function(){return Mw(this.kB)};Q.prototype.set_m_maxSuspensionTravelCm=Q.prototype.LB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Nw(c,a)}; Object.defineProperty(Q.prototype,"m_maxSuspensionTravelCm",{get:Q.prototype.DB,set:Q.prototype.LB});Q.prototype.get_m_wheelsSuspensionForce=Q.prototype.NE=function(){return Ow(this.kB)};Q.prototype.set_m_wheelsSuspensionForce=Q.prototype.HH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Pw(c,a)};Object.defineProperty(Q.prototype,"m_wheelsSuspensionForce",{get:Q.prototype.NE,set:Q.prototype.HH});Q.prototype.get_m_bIsFrontWheel=Q.prototype.NB=function(){return!!Qw(this.kB)}; Q.prototype.set_m_bIsFrontWheel=Q.prototype.XB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Rw(c,a)};Object.defineProperty(Q.prototype,"m_bIsFrontWheel",{get:Q.prototype.NB,set:Q.prototype.XB});Q.prototype.get_m_raycastInfo=Q.prototype.hE=function(){return k(Sw(this.kB),O)};Q.prototype.set_m_raycastInfo=Q.prototype.bH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Tw(c,a)};Object.defineProperty(Q.prototype,"m_raycastInfo",{get:Q.prototype.hE,set:Q.prototype.bH}); Q.prototype.get_m_chassisConnectionPointCS=Q.prototype.ZC=function(){return k(Uw(this.kB),n)};Q.prototype.set_m_chassisConnectionPointCS=Q.prototype.SF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Vw(c,a)};Object.defineProperty(Q.prototype,"m_chassisConnectionPointCS",{get:Q.prototype.ZC,set:Q.prototype.SF});Q.prototype.get_m_worldTransform=Q.prototype.OE=function(){return k(Ww(this.kB),t)}; Q.prototype.set_m_worldTransform=Q.prototype.IH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Xw(c,a)};Object.defineProperty(Q.prototype,"m_worldTransform",{get:Q.prototype.OE,set:Q.prototype.IH});Q.prototype.get_m_wheelDirectionCS=Q.prototype.UB=function(){return k(Yw(this.kB),n)};Q.prototype.set_m_wheelDirectionCS=Q.prototype.dC=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Zw(c,a)};Object.defineProperty(Q.prototype,"m_wheelDirectionCS",{get:Q.prototype.UB,set:Q.prototype.dC}); Q.prototype.get_m_wheelAxleCS=Q.prototype.TB=function(){return k($w(this.kB),n)};Q.prototype.set_m_wheelAxleCS=Q.prototype.cC=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ax(c,a)};Object.defineProperty(Q.prototype,"m_wheelAxleCS",{get:Q.prototype.TB,set:Q.prototype.cC});Q.prototype.get_m_rotation=Q.prototype.lE=function(){return bx(this.kB)};Q.prototype.set_m_rotation=Q.prototype.fH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);cx(c,a)}; Object.defineProperty(Q.prototype,"m_rotation",{get:Q.prototype.lE,set:Q.prototype.fH});Q.prototype.get_m_deltaRotation=Q.prototype.iD=function(){return dx(this.kB)};Q.prototype.set_m_deltaRotation=Q.prototype.bG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ex(c,a)};Object.defineProperty(Q.prototype,"m_deltaRotation",{get:Q.prototype.iD,set:Q.prototype.bG});Q.prototype.get_m_brake=Q.prototype.SC=function(){return fx(this.kB)}; Q.prototype.set_m_brake=Q.prototype.LF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);gx(c,a)};Object.defineProperty(Q.prototype,"m_brake",{get:Q.prototype.SC,set:Q.prototype.LF});Q.prototype.get_m_clippedInvContactDotSuspension=Q.prototype.$C=function(){return hx(this.kB)};Q.prototype.set_m_clippedInvContactDotSuspension=Q.prototype.TF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ix(c,a)}; Object.defineProperty(Q.prototype,"m_clippedInvContactDotSuspension",{get:Q.prototype.$C,set:Q.prototype.TF});Q.prototype.get_m_suspensionRelativeVelocity=Q.prototype.wE=function(){return jx(this.kB)};Q.prototype.set_m_suspensionRelativeVelocity=Q.prototype.qH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);kx(c,a)};Object.defineProperty(Q.prototype,"m_suspensionRelativeVelocity",{get:Q.prototype.wE,set:Q.prototype.qH});Q.prototype.get_m_skidInfo=Q.prototype.oE=function(){return lx(this.kB)}; Q.prototype.set_m_skidInfo=Q.prototype.iH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);mx(c,a)};Object.defineProperty(Q.prototype,"m_skidInfo",{get:Q.prototype.oE,set:Q.prototype.iH});Q.prototype.__destroy__=function(){nx(this.kB)};function YF(a,c,d,e){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);this.kB=void 0===e?ox(a,c,d):px(a,c,d,e);h(YF)[this.kB]=this}YF.prototype=Object.create(OE.prototype); YF.prototype.constructor=YF;YF.prototype.lB=YF;YF.mB={};b.btKinematicCharacterController=YF;YF.prototype.setUpAxis=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);qx(c,a)};YF.prototype.setWalkDirection=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);rx(c,a)};YF.prototype.setVelocityForTimeInterval=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);sx(d,a,c)}; YF.prototype.warp=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);tx(c,a)};YF.prototype.preStep=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ux(c,a)};YF.prototype.playerStep=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);vx(d,a,c)};YF.prototype.setFallSpeed=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);wx(c,a)};YF.prototype.setJumpSpeed=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);xx(c,a)}; YF.prototype.setMaxJumpHeight=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);yx(c,a)};YF.prototype.canJump=function(){return!!zx(this.kB)};YF.prototype.jump=function(){Ax(this.kB)};YF.prototype.setGravity=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Bx(c,a)};YF.prototype.getGravity=function(){return Cx(this.kB)};YF.prototype.setMaxSlope=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Dx(c,a)};YF.prototype.getMaxSlope=function(){return Ex(this.kB)}; YF.prototype.getGhostObject=function(){return k(Fx(this.kB),R)};YF.prototype.setUseGhostSweepTest=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Gx(c,a)};YF.prototype.onGround=function(){return!!Hx(this.kB)};YF.prototype.setUpInterpolate=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ix(c,a)};YF.prototype.updateAction=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Jx(d,a,c)};YF.prototype.__destroy__=function(){Kx(this.kB)}; function S(a,c,d){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);this.kB=Lx(a,c,d);h(S)[this.kB]=this}S.prototype=Object.create(OE.prototype);S.prototype.constructor=S;S.prototype.lB=S;S.mB={};b.btRaycastVehicle=S;S.prototype.applyEngineForce=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Mx(d,a,c)}; S.prototype.setSteeringValue=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Nx(d,a,c)};S.prototype.getWheelTransformWS=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Ox(c,a),t)};S.prototype.updateWheelTransform=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Px(d,a,c)}; S.prototype.addWheel=function(a,c,d,e,g,m,y){var W=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);m&&"object"===typeof m&&(m=m.kB);y&&"object"===typeof y&&(y=y.kB);return k(Qx(W,a,c,d,e,g,m,y),Q)};S.prototype.getNumWheels=function(){return Rx(this.kB)};S.prototype.getRigidBody=function(){return k(Sx(this.kB),M)}; S.prototype.getWheelInfo=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Tx(c,a),Q)};S.prototype.setBrake=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);Ux(d,a,c)};S.prototype.setCoordinateSystem=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);Vx(e,a,c,d)};S.prototype.getCurrentSpeedKmHour=function(){return Wx(this.kB)}; S.prototype.getChassisWorldTransform=function(){return k(Xx(this.kB),t)};S.prototype.rayCast=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return Yx(c,a)};S.prototype.updateVehicle=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Zx(c,a)};S.prototype.resetSuspension=function(){$x(this.kB)};S.prototype.getSteeringValue=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return ay(c,a)}; S.prototype.updateWheelTransformsWS=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);void 0===c?by(d,a):cy(d,a,c)};S.prototype.setPitchControl=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);dy(c,a)};S.prototype.updateSuspension=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ey(c,a)};S.prototype.updateFriction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);fy(c,a)};S.prototype.getRightAxis=function(){return gy(this.kB)}; S.prototype.getUpAxis=function(){return hy(this.kB)};S.prototype.getForwardAxis=function(){return iy(this.kB)};S.prototype.getForwardVector=function(){return k(jy(this.kB),n)};S.prototype.getUserConstraintType=function(){return ky(this.kB)};S.prototype.setUserConstraintType=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ly(c,a)};S.prototype.setUserConstraintId=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);my(c,a)};S.prototype.getUserConstraintId=function(){return ny(this.kB)}; S.prototype.updateAction=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);oy(d,a,c)};S.prototype.__destroy__=function(){py(this.kB)};function R(){this.kB=qy();h(R)[this.kB]=this}R.prototype=Object.create(z.prototype);R.prototype.constructor=R;R.prototype.lB=R;R.mB={};b.btPairCachingGhostObject=R;R.prototype.setAnisotropicFriction=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);ry(d,a,c)}; R.prototype.getCollisionShape=function(){return k(sy(this.kB),l)};R.prototype.setContactProcessingThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ty(c,a)};R.prototype.setActivationState=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);uy(c,a)};R.prototype.forceActivationState=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);vy(c,a)};R.prototype.activate=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);void 0===a?wy(c):xy(c,a)}; R.prototype.isActive=function(){return!!yy(this.kB)};R.prototype.isKinematicObject=function(){return!!zy(this.kB)};R.prototype.isStaticObject=function(){return!!Ay(this.kB)};R.prototype.isStaticOrKinematicObject=function(){return!!By(this.kB)};R.prototype.getRestitution=function(){return Cy(this.kB)};R.prototype.getFriction=function(){return Dy(this.kB)};R.prototype.getRollingFriction=function(){return Ey(this.kB)}; R.prototype.setRestitution=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Fy(c,a)};R.prototype.setFriction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Gy(c,a)};R.prototype.setRollingFriction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Hy(c,a)};R.prototype.getWorldTransform=function(){return k(Iy(this.kB),t)};R.prototype.getCollisionFlags=function(){return Jy(this.kB)}; R.prototype.setCollisionFlags=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ky(c,a)};R.prototype.setWorldTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ly(c,a)};R.prototype.setCollisionShape=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);My(c,a)};R.prototype.setCcdMotionThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Ny(c,a)};R.prototype.setCcdSweptSphereRadius=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Oy(c,a)}; R.prototype.getUserIndex=function(){return Py(this.kB)};R.prototype.setUserIndex=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Qy(c,a)};R.prototype.getUserPointer=function(){return k(Ry(this.kB),sE)};R.prototype.setUserPointer=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Sy(c,a)};R.prototype.getBroadphaseHandle=function(){return k(Ty(this.kB),tE)};R.prototype.getNumOverlappingObjects=function(){return Uy(this.kB)}; R.prototype.getOverlappingObject=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Vy(c,a),r)};R.prototype.__destroy__=function(){Wy(this.kB)};function ZF(){this.kB=Xy();h(ZF)[this.kB]=this}ZF.prototype=Object.create(f.prototype);ZF.prototype.constructor=ZF;ZF.prototype.lB=ZF;ZF.mB={};b.btGhostPairCallback=ZF;ZF.prototype.__destroy__=function(){Yy(this.kB)};function T(){this.kB=Zy();h(T)[this.kB]=this}T.prototype=Object.create(f.prototype);T.prototype.constructor=T; T.prototype.lB=T;T.mB={};b.btSoftBodyWorldInfo=T;T.prototype.get_air_density=T.prototype.jC=function(){return $y(this.kB)};T.prototype.set_air_density=T.prototype.cF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);az(c,a)};Object.defineProperty(T.prototype,"air_density",{get:T.prototype.jC,set:T.prototype.cF});T.prototype.get_water_density=T.prototype.YE=function(){return bz(this.kB)}; T.prototype.set_water_density=T.prototype.SH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);cz(c,a)};Object.defineProperty(T.prototype,"water_density",{get:T.prototype.YE,set:T.prototype.SH});T.prototype.get_water_offset=T.prototype.$E=function(){return dz(this.kB)};T.prototype.set_water_offset=T.prototype.UH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ez(c,a)};Object.defineProperty(T.prototype,"water_offset",{get:T.prototype.$E,set:T.prototype.UH}); T.prototype.get_m_maxDisplacement=T.prototype.UD=function(){return fz(this.kB)};T.prototype.set_m_maxDisplacement=T.prototype.NG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);gz(c,a)};Object.defineProperty(T.prototype,"m_maxDisplacement",{get:T.prototype.UD,set:T.prototype.NG});T.prototype.get_water_normal=T.prototype.ZE=function(){return k(hz(this.kB),n)};T.prototype.set_water_normal=T.prototype.TH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);iz(c,a)}; Object.defineProperty(T.prototype,"water_normal",{get:T.prototype.ZE,set:T.prototype.TH});T.prototype.get_m_broadphase=T.prototype.TC=function(){return k(jz(this.kB),qE)};T.prototype.set_m_broadphase=T.prototype.MF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);kz(c,a)};Object.defineProperty(T.prototype,"m_broadphase",{get:T.prototype.TC,set:T.prototype.MF});T.prototype.get_m_dispatcher=T.prototype.kD=function(){return k(lz(this.kB),oE)}; T.prototype.set_m_dispatcher=T.prototype.dG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);mz(c,a)};Object.defineProperty(T.prototype,"m_dispatcher",{get:T.prototype.kD,set:T.prototype.dG});T.prototype.get_m_gravity=T.prototype.tD=function(){return k(nz(this.kB),n)};T.prototype.set_m_gravity=T.prototype.mG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);oz(c,a)};Object.defineProperty(T.prototype,"m_gravity",{get:T.prototype.tD,set:T.prototype.mG});T.prototype.__destroy__=function(){pz(this.kB)}; function $F(){throw"cannot construct a Face, no constructor in IDL";}$F.prototype=Object.create(f.prototype);$F.prototype.constructor=$F;$F.prototype.lB=$F;$F.mB={};b.Face=$F;$F.prototype.get_m_n=$F.prototype.QB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(qz(c,a),Node)};$F.prototype.set_m_n=$F.prototype.$B=function(a,c){var d=this.kB;iE();a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);rz(d,a,c)}; Object.defineProperty($F.prototype,"m_n",{get:$F.prototype.QB,set:$F.prototype.$B});$F.prototype.get_m_normal=$F.prototype.YD=function(){return k(sz(this.kB),n)};$F.prototype.set_m_normal=$F.prototype.SG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);tz(c,a)};Object.defineProperty($F.prototype,"m_normal",{get:$F.prototype.YD,set:$F.prototype.SG});$F.prototype.get_m_ra=$F.prototype.gE=function(){return uz(this.kB)}; $F.prototype.set_m_ra=$F.prototype.aH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);vz(c,a)};Object.defineProperty($F.prototype,"m_ra",{get:$F.prototype.gE,set:$F.prototype.aH});$F.prototype.__destroy__=function(){wz(this.kB)};function aG(){throw"cannot construct a tFaceArray, no constructor in IDL";}aG.prototype=Object.create(f.prototype);aG.prototype.constructor=aG;aG.prototype.lB=aG;aG.mB={};b.tFaceArray=aG;aG.prototype.size=aG.prototype.size=function(){return xz(this.kB)}; aG.prototype.at=aG.prototype.at=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(yz(c,a),$F)};aG.prototype.__destroy__=function(){zz(this.kB)};function Node(){throw"cannot construct a Node, no constructor in IDL";}Node.prototype=Object.create(f.prototype);Node.prototype.constructor=Node;Node.prototype.lB=Node;Node.mB={};b.Node=Node;Node.prototype.get_m_x=Node.prototype.PE=function(){return k(Az(this.kB),n)}; Node.prototype.set_m_x=Node.prototype.JH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Bz(c,a)};Object.defineProperty(Node.prototype,"m_x",{get:Node.prototype.PE,set:Node.prototype.JH});Node.prototype.get_m_q=Node.prototype.fE=function(){return k(Cz(this.kB),n)};Node.prototype.set_m_q=Node.prototype.$G=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Dz(c,a)};Object.defineProperty(Node.prototype,"m_q",{get:Node.prototype.fE,set:Node.prototype.$G}); Node.prototype.get_m_v=Node.prototype.HE=function(){return k(Ez(this.kB),n)};Node.prototype.set_m_v=Node.prototype.BH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Fz(c,a)};Object.defineProperty(Node.prototype,"m_v",{get:Node.prototype.HE,set:Node.prototype.BH});Node.prototype.get_m_f=Node.prototype.qD=function(){return k(Gz(this.kB),n)};Node.prototype.set_m_f=Node.prototype.jG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Hz(c,a)}; Object.defineProperty(Node.prototype,"m_f",{get:Node.prototype.qD,set:Node.prototype.jG});Node.prototype.get_m_n=Node.prototype.QB=function(){return k(Iz(this.kB),n)};Node.prototype.set_m_n=Node.prototype.$B=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Jz(c,a)};Object.defineProperty(Node.prototype,"m_n",{get:Node.prototype.QB,set:Node.prototype.$B});Node.prototype.get_m_im=Node.prototype.CD=function(){return Kz(this.kB)}; Node.prototype.set_m_im=Node.prototype.vG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Lz(c,a)};Object.defineProperty(Node.prototype,"m_im",{get:Node.prototype.CD,set:Node.prototype.vG});Node.prototype.get_m_area=Node.prototype.QC=function(){return Mz(this.kB)};Node.prototype.set_m_area=Node.prototype.JF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Nz(c,a)};Object.defineProperty(Node.prototype,"m_area",{get:Node.prototype.QC,set:Node.prototype.JF}); Node.prototype.__destroy__=function(){Oz(this.kB)};function bG(){throw"cannot construct a tNodeArray, no constructor in IDL";}bG.prototype=Object.create(f.prototype);bG.prototype.constructor=bG;bG.prototype.lB=bG;bG.mB={};b.tNodeArray=bG;bG.prototype.size=bG.prototype.size=function(){return Pz(this.kB)};bG.prototype.at=bG.prototype.at=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(Qz(c,a),Node)};bG.prototype.__destroy__=function(){Rz(this.kB)}; function U(){throw"cannot construct a Material, no constructor in IDL";}U.prototype=Object.create(f.prototype);U.prototype.constructor=U;U.prototype.lB=U;U.mB={};b.Material=U;U.prototype.get_m_kLST=U.prototype.ID=function(){return Sz(this.kB)};U.prototype.set_m_kLST=U.prototype.BG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Tz(c,a)};Object.defineProperty(U.prototype,"m_kLST",{get:U.prototype.ID,set:U.prototype.BG});U.prototype.get_m_kAST=U.prototype.HD=function(){return Uz(this.kB)}; U.prototype.set_m_kAST=U.prototype.AG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Vz(c,a)};Object.defineProperty(U.prototype,"m_kAST",{get:U.prototype.HD,set:U.prototype.AG});U.prototype.get_m_kVST=U.prototype.JD=function(){return Wz(this.kB)};U.prototype.set_m_kVST=U.prototype.CG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Xz(c,a)};Object.defineProperty(U.prototype,"m_kVST",{get:U.prototype.JD,set:U.prototype.CG});U.prototype.get_m_flags=U.prototype.vB=function(){return Yz(this.kB)}; U.prototype.set_m_flags=U.prototype.wB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);Zz(c,a)};Object.defineProperty(U.prototype,"m_flags",{get:U.prototype.vB,set:U.prototype.wB});U.prototype.__destroy__=function(){$z(this.kB)};function cG(){throw"cannot construct a tMaterialArray, no constructor in IDL";}cG.prototype=Object.create(f.prototype);cG.prototype.constructor=cG;cG.prototype.lB=cG;cG.mB={};b.tMaterialArray=cG;cG.prototype.size=cG.prototype.size=function(){return aA(this.kB)}; cG.prototype.at=cG.prototype.at=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(bA(c,a),U)};cG.prototype.__destroy__=function(){cA(this.kB)};function V(){throw"cannot construct a Anchor, no constructor in IDL";}V.prototype=Object.create(f.prototype);V.prototype.constructor=V;V.prototype.lB=V;V.mB={};b.Anchor=V;V.prototype.get_m_node=V.prototype.WD=function(){return k(dA(this.kB),Node)}; V.prototype.set_m_node=V.prototype.PG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);eA(c,a)};Object.defineProperty(V.prototype,"m_node",{get:V.prototype.WD,set:V.prototype.PG});V.prototype.get_m_local=V.prototype.MD=function(){return k(fA(this.kB),n)};V.prototype.set_m_local=V.prototype.FG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);gA(c,a)};Object.defineProperty(V.prototype,"m_local",{get:V.prototype.MD,set:V.prototype.FG}); V.prototype.get_m_body=V.prototype.RC=function(){return k(hA(this.kB),M)};V.prototype.set_m_body=V.prototype.KF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);iA(c,a)};Object.defineProperty(V.prototype,"m_body",{get:V.prototype.RC,set:V.prototype.KF});V.prototype.get_m_influence=V.prototype.FD=function(){return jA(this.kB)};V.prototype.set_m_influence=V.prototype.yG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);kA(c,a)}; Object.defineProperty(V.prototype,"m_influence",{get:V.prototype.FD,set:V.prototype.yG});V.prototype.get_m_c0=V.prototype.UC=function(){return k(lA(this.kB),RE)};V.prototype.set_m_c0=V.prototype.NF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);mA(c,a)};Object.defineProperty(V.prototype,"m_c0",{get:V.prototype.UC,set:V.prototype.NF});V.prototype.get_m_c1=V.prototype.VC=function(){return k(nA(this.kB),n)}; V.prototype.set_m_c1=V.prototype.OF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);oA(c,a)};Object.defineProperty(V.prototype,"m_c1",{get:V.prototype.VC,set:V.prototype.OF});V.prototype.get_m_c2=V.prototype.WC=function(){return pA(this.kB)};V.prototype.set_m_c2=V.prototype.PF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);qA(c,a)};Object.defineProperty(V.prototype,"m_c2",{get:V.prototype.WC,set:V.prototype.PF});V.prototype.__destroy__=function(){rA(this.kB)}; function dG(){throw"cannot construct a tAnchorArray, no constructor in IDL";}dG.prototype=Object.create(f.prototype);dG.prototype.constructor=dG;dG.prototype.lB=dG;dG.mB={};b.tAnchorArray=dG;dG.prototype.size=dG.prototype.size=function(){return sA(this.kB)};dG.prototype.at=dG.prototype.at=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(tA(c,a),V)};dG.prototype.clear=dG.prototype.clear=function(){uA(this.kB)}; dG.prototype.push_back=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);vA(c,a)};dG.prototype.pop_back=function(){wA(this.kB)};dG.prototype.__destroy__=function(){xA(this.kB)};function X(){throw"cannot construct a Config, no constructor in IDL";}X.prototype=Object.create(f.prototype);X.prototype.constructor=X;X.prototype.lB=X;X.mB={};b.Config=X;X.prototype.get_kVCF=X.prototype.GC=function(){return yA(this.kB)}; X.prototype.set_kVCF=X.prototype.zF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);zA(c,a)};Object.defineProperty(X.prototype,"kVCF",{get:X.prototype.GC,set:X.prototype.zF});X.prototype.get_kDP=X.prototype.tC=function(){return AA(this.kB)};X.prototype.set_kDP=X.prototype.mF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);BA(c,a)};Object.defineProperty(X.prototype,"kDP",{get:X.prototype.tC,set:X.prototype.mF});X.prototype.get_kDG=X.prototype.sC=function(){return CA(this.kB)}; X.prototype.set_kDG=X.prototype.lF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);DA(c,a)};Object.defineProperty(X.prototype,"kDG",{get:X.prototype.sC,set:X.prototype.lF});X.prototype.get_kLF=X.prototype.vC=function(){return EA(this.kB)};X.prototype.set_kLF=X.prototype.oF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);FA(c,a)};Object.defineProperty(X.prototype,"kLF",{get:X.prototype.vC,set:X.prototype.oF});X.prototype.get_kPR=X.prototype.xC=function(){return GA(this.kB)}; X.prototype.set_kPR=X.prototype.qF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);HA(c,a)};Object.defineProperty(X.prototype,"kPR",{get:X.prototype.xC,set:X.prototype.qF});X.prototype.get_kVC=X.prototype.FC=function(){return IA(this.kB)};X.prototype.set_kVC=X.prototype.yF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);JA(c,a)};Object.defineProperty(X.prototype,"kVC",{get:X.prototype.FC,set:X.prototype.yF});X.prototype.get_kDF=X.prototype.rC=function(){return KA(this.kB)}; X.prototype.set_kDF=X.prototype.kF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);LA(c,a)};Object.defineProperty(X.prototype,"kDF",{get:X.prototype.rC,set:X.prototype.kF});X.prototype.get_kMT=X.prototype.wC=function(){return MA(this.kB)};X.prototype.set_kMT=X.prototype.pF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);NA(c,a)};Object.defineProperty(X.prototype,"kMT",{get:X.prototype.wC,set:X.prototype.pF});X.prototype.get_kCHR=X.prototype.qC=function(){return OA(this.kB)}; X.prototype.set_kCHR=X.prototype.jF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);PA(c,a)};Object.defineProperty(X.prototype,"kCHR",{get:X.prototype.qC,set:X.prototype.jF});X.prototype.get_kKHR=X.prototype.uC=function(){return QA(this.kB)};X.prototype.set_kKHR=X.prototype.nF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);RA(c,a)};Object.defineProperty(X.prototype,"kKHR",{get:X.prototype.uC,set:X.prototype.nF});X.prototype.get_kSHR=X.prototype.yC=function(){return SA(this.kB)}; X.prototype.set_kSHR=X.prototype.rF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);TA(c,a)};Object.defineProperty(X.prototype,"kSHR",{get:X.prototype.yC,set:X.prototype.rF});X.prototype.get_kAHR=X.prototype.pC=function(){return UA(this.kB)};X.prototype.set_kAHR=X.prototype.iF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);VA(c,a)};Object.defineProperty(X.prototype,"kAHR",{get:X.prototype.pC,set:X.prototype.iF});X.prototype.get_kSRHR_CL=X.prototype.BC=function(){return WA(this.kB)}; X.prototype.set_kSRHR_CL=X.prototype.uF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);XA(c,a)};Object.defineProperty(X.prototype,"kSRHR_CL",{get:X.prototype.BC,set:X.prototype.uF});X.prototype.get_kSKHR_CL=X.prototype.zC=function(){return YA(this.kB)};X.prototype.set_kSKHR_CL=X.prototype.sF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ZA(c,a)};Object.defineProperty(X.prototype,"kSKHR_CL",{get:X.prototype.zC,set:X.prototype.sF});X.prototype.get_kSSHR_CL=X.prototype.DC=function(){return $A(this.kB)}; X.prototype.set_kSSHR_CL=X.prototype.wF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);aB(c,a)};Object.defineProperty(X.prototype,"kSSHR_CL",{get:X.prototype.DC,set:X.prototype.wF});X.prototype.get_kSR_SPLT_CL=X.prototype.CC=function(){return bB(this.kB)};X.prototype.set_kSR_SPLT_CL=X.prototype.vF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);cB(c,a)};Object.defineProperty(X.prototype,"kSR_SPLT_CL",{get:X.prototype.CC,set:X.prototype.vF}); X.prototype.get_kSK_SPLT_CL=X.prototype.AC=function(){return dB(this.kB)};X.prototype.set_kSK_SPLT_CL=X.prototype.tF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);eB(c,a)};Object.defineProperty(X.prototype,"kSK_SPLT_CL",{get:X.prototype.AC,set:X.prototype.tF});X.prototype.get_kSS_SPLT_CL=X.prototype.EC=function(){return fB(this.kB)};X.prototype.set_kSS_SPLT_CL=X.prototype.xF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);gB(c,a)}; Object.defineProperty(X.prototype,"kSS_SPLT_CL",{get:X.prototype.EC,set:X.prototype.xF});X.prototype.get_maxvolume=X.prototype.QE=function(){return hB(this.kB)};X.prototype.set_maxvolume=X.prototype.KH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);iB(c,a)};Object.defineProperty(X.prototype,"maxvolume",{get:X.prototype.QE,set:X.prototype.KH});X.prototype.get_timescale=X.prototype.VE=function(){return jB(this.kB)}; X.prototype.set_timescale=X.prototype.PH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);kB(c,a)};Object.defineProperty(X.prototype,"timescale",{get:X.prototype.VE,set:X.prototype.PH});X.prototype.get_viterations=X.prototype.XE=function(){return lB(this.kB)};X.prototype.set_viterations=X.prototype.RH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);mB(c,a)};Object.defineProperty(X.prototype,"viterations",{get:X.prototype.XE,set:X.prototype.RH}); X.prototype.get_piterations=X.prototype.TE=function(){return nB(this.kB)};X.prototype.set_piterations=X.prototype.NH=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);oB(c,a)};Object.defineProperty(X.prototype,"piterations",{get:X.prototype.TE,set:X.prototype.NH});X.prototype.get_diterations=X.prototype.mC=function(){return pB(this.kB)};X.prototype.set_diterations=X.prototype.fF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);qB(c,a)}; Object.defineProperty(X.prototype,"diterations",{get:X.prototype.mC,set:X.prototype.fF});X.prototype.get_citerations=X.prototype.kC=function(){return rB(this.kB)};X.prototype.set_citerations=X.prototype.dF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);sB(c,a)};Object.defineProperty(X.prototype,"citerations",{get:X.prototype.kC,set:X.prototype.dF});X.prototype.get_collisions=X.prototype.lC=function(){return tB(this.kB)}; X.prototype.set_collisions=X.prototype.eF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);uB(c,a)};Object.defineProperty(X.prototype,"collisions",{get:X.prototype.lC,set:X.prototype.eF});X.prototype.__destroy__=function(){vB(this.kB)};function Y(a,c,d,e){iE();a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);"object"==typeof e&&(e=mE(e));this.kB=wB(a,c,d,e);h(Y)[this.kB]=this}Y.prototype=Object.create(r.prototype); Y.prototype.constructor=Y;Y.prototype.lB=Y;Y.mB={};b.btSoftBody=Y;Y.prototype.checkLink=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);return!!xB(d,a,c)};Y.prototype.checkFace=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);return!!yB(e,a,c,d)};Y.prototype.appendMaterial=function(){return k(zB(this.kB),U)}; Y.prototype.appendNode=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);AB(d,a,c)};Y.prototype.appendLink=function(a,c,d,e){var g=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);BB(g,a,c,d,e)}; Y.prototype.appendFace=function(a,c,d,e){var g=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);CB(g,a,c,d,e)};Y.prototype.appendTetra=function(a,c,d,e,g){var m=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);DB(m,a,c,d,e,g)}; Y.prototype.appendAnchor=function(a,c,d,e){var g=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);EB(g,a,c,d,e)};Y.prototype.addForce=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);void 0===c?FB(d,a):GB(d,a,c)};Y.prototype.addAeroForceToNode=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);HB(d,a,c)}; Y.prototype.getTotalMass=function(){return IB(this.kB)};Y.prototype.setTotalMass=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);JB(d,a,c)};Y.prototype.setMass=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);KB(d,a,c)};Y.prototype.transform=Y.prototype.transform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);LB(c,a)}; Y.prototype.translate=Y.prototype.translate=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);MB(c,a)};Y.prototype.rotate=Y.prototype.rotate=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);NB(c,a)};Y.prototype.scale=Y.prototype.scale=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);OB(c,a)};Y.prototype.generateClusters=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);return void 0===c?PB(d,a):QB(d,a,c)}; Y.prototype.generateBendingConstraints=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);return RB(d,a,c)};Y.prototype.upcast=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(SB(c,a),Y)};Y.prototype.getRestLengthScale=function(){return TB(this.kB)};Y.prototype.setRestLengthScale=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);UB(c,a)}; Y.prototype.setAnisotropicFriction=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);VB(d,a,c)};Y.prototype.getCollisionShape=function(){return k(WB(this.kB),l)};Y.prototype.setContactProcessingThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);XB(c,a)};Y.prototype.setActivationState=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);YB(c,a)}; Y.prototype.forceActivationState=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);ZB(c,a)};Y.prototype.activate=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);void 0===a?$B(c):aC(c,a)};Y.prototype.isActive=function(){return!!bC(this.kB)};Y.prototype.isKinematicObject=function(){return!!cC(this.kB)};Y.prototype.isStaticObject=function(){return!!dC(this.kB)};Y.prototype.isStaticOrKinematicObject=function(){return!!eC(this.kB)};Y.prototype.getRestitution=function(){return fC(this.kB)}; Y.prototype.getFriction=function(){return gC(this.kB)};Y.prototype.getRollingFriction=function(){return hC(this.kB)};Y.prototype.setRestitution=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);iC(c,a)};Y.prototype.setFriction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);jC(c,a)};Y.prototype.setRollingFriction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);kC(c,a)};Y.prototype.getWorldTransform=function(){return k(lC(this.kB),t)};Y.prototype.getCollisionFlags=function(){return mC(this.kB)}; Y.prototype.setCollisionFlags=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);nC(c,a)};Y.prototype.setWorldTransform=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);oC(c,a)};Y.prototype.setCollisionShape=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);pC(c,a)};Y.prototype.setCcdMotionThreshold=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);qC(c,a)};Y.prototype.setCcdSweptSphereRadius=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);rC(c,a)}; Y.prototype.getUserIndex=function(){return sC(this.kB)};Y.prototype.setUserIndex=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);tC(c,a)};Y.prototype.getUserPointer=function(){return k(uC(this.kB),sE)};Y.prototype.setUserPointer=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);vC(c,a)};Y.prototype.getBroadphaseHandle=function(){return k(wC(this.kB),tE)};Y.prototype.get_m_cfg=Y.prototype.XC=function(){return k(xC(this.kB),X)}; Y.prototype.set_m_cfg=Y.prototype.QF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);yC(c,a)};Object.defineProperty(Y.prototype,"m_cfg",{get:Y.prototype.XC,set:Y.prototype.QF});Y.prototype.get_m_nodes=Y.prototype.XD=function(){return k(zC(this.kB),bG)};Y.prototype.set_m_nodes=Y.prototype.QG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);AC(c,a)};Object.defineProperty(Y.prototype,"m_nodes",{get:Y.prototype.XD,set:Y.prototype.QG}); Y.prototype.get_m_faces=Y.prototype.OB=function(){return k(BC(this.kB),aG)};Y.prototype.set_m_faces=Y.prototype.YB=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);CC(c,a)};Object.defineProperty(Y.prototype,"m_faces",{get:Y.prototype.OB,set:Y.prototype.YB});Y.prototype.get_m_materials=Y.prototype.TD=function(){return k(DC(this.kB),cG)};Y.prototype.set_m_materials=Y.prototype.MG=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);EC(c,a)}; Object.defineProperty(Y.prototype,"m_materials",{get:Y.prototype.TD,set:Y.prototype.MG});Y.prototype.get_m_anchors=Y.prototype.NC=function(){return k(FC(this.kB),dG)};Y.prototype.set_m_anchors=Y.prototype.GF=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);GC(c,a)};Object.defineProperty(Y.prototype,"m_anchors",{get:Y.prototype.NC,set:Y.prototype.GF});Y.prototype.__destroy__=function(){HC(this.kB)}; function eG(a){a&&"object"===typeof a&&(a=a.kB);this.kB=void 0===a?IC():JC(a);h(eG)[this.kB]=this}eG.prototype=Object.create(KE.prototype);eG.prototype.constructor=eG;eG.prototype.lB=eG;eG.mB={};b.btSoftBodyRigidBodyCollisionConfiguration=eG;eG.prototype.__destroy__=function(){KC(this.kB)};function fG(){this.kB=LC();h(fG)[this.kB]=this}fG.prototype=Object.create(PE.prototype);fG.prototype.constructor=fG;fG.prototype.lB=fG;fG.mB={};b.btDefaultSoftBodySolver=fG;fG.prototype.__destroy__=function(){MC(this.kB)}; function gG(){throw"cannot construct a btSoftBodyArray, no constructor in IDL";}gG.prototype=Object.create(f.prototype);gG.prototype.constructor=gG;gG.prototype.lB=gG;gG.mB={};b.btSoftBodyArray=gG;gG.prototype.size=gG.prototype.size=function(){return NC(this.kB)};gG.prototype.at=gG.prototype.at=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);return k(OC(c,a),Y)};gG.prototype.__destroy__=function(){PC(this.kB)}; function Z(a,c,d,e,g){a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);this.kB=QC(a,c,d,e,g);h(Z)[this.kB]=this}Z.prototype=Object.create(x.prototype);Z.prototype.constructor=Z;Z.prototype.lB=Z;Z.mB={};b.btSoftRigidDynamicsWorld=Z; Z.prototype.addSoftBody=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);RC(e,a,c,d)};Z.prototype.removeSoftBody=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);SC(c,a)};Z.prototype.removeCollisionObject=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);TC(c,a)};Z.prototype.getWorldInfo=function(){return k(UC(this.kB),T)};Z.prototype.getSoftBodyArray=function(){return k(VC(this.kB),gG)}; Z.prototype.getDispatcher=function(){return k(WC(this.kB),oE)};Z.prototype.rayTest=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);XC(e,a,c,d)};Z.prototype.getPairCache=function(){return k(YC(this.kB),pE)};Z.prototype.getDispatchInfo=function(){return k(ZC(this.kB),q)}; Z.prototype.addCollisionObject=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);void 0===c?$C(e,a):void 0===d?aD(e,a,c):bD(e,a,c,d)};Z.prototype.getBroadphase=function(){return k(cD(this.kB),qE)}; Z.prototype.convexSweepTest=function(a,c,d,e,g){var m=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);dD(m,a,c,d,e,g)};Z.prototype.contactPairTest=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);eD(e,a,c,d)}; Z.prototype.contactTest=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);fD(d,a,c)};Z.prototype.updateSingleAabb=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);gD(c,a)};Z.prototype.setDebugDrawer=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);hD(c,a)};Z.prototype.getDebugDrawer=function(){return k(iD(this.kB),rE)};Z.prototype.debugDrawWorld=function(){jD(this.kB)}; Z.prototype.debugDrawObject=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);kD(e,a,c,d)};Z.prototype.setGravity=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);lD(c,a)};Z.prototype.getGravity=function(){return k(mD(this.kB),n)}; Z.prototype.addRigidBody=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);void 0===c?nD(e,a):void 0===d?_emscripten_bind_btSoftRigidDynamicsWorld_addRigidBody_2(e,a,c):oD(e,a,c,d)};Z.prototype.removeRigidBody=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);pD(c,a)}; Z.prototype.addConstraint=function(a,c){var d=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);void 0===c?qD(d,a):rD(d,a,c)};Z.prototype.removeConstraint=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);sD(c,a)};Z.prototype.stepSimulation=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);return void 0===c?tD(e,a):void 0===d?uD(e,a,c):vD(e,a,c,d)}; Z.prototype.setContactAddedCallback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);wD(c,a)};Z.prototype.setContactProcessedCallback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);xD(c,a)};Z.prototype.setContactDestroyedCallback=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);yD(c,a)};Z.prototype.addAction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);zD(c,a)};Z.prototype.removeAction=function(a){var c=this.kB;a&&"object"===typeof a&&(a=a.kB);AD(c,a)}; Z.prototype.getSolverInfo=function(){return k(BD(this.kB),u)};Z.prototype.setInternalTickCallback=function(a,c,d){var e=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);void 0===c?CD(e,a):void 0===d?DD(e,a,c):ED(e,a,c,d)};Z.prototype.__destroy__=function(){FD(this.kB)};function hG(){this.kB=GD();h(hG)[this.kB]=this}hG.prototype=Object.create(f.prototype);hG.prototype.constructor=hG;hG.prototype.lB=hG;hG.mB={};b.btSoftBodyHelpers=hG; hG.prototype.CreateRope=function(a,c,d,e,g){var m=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);return k(HD(m,a,c,d,e,g),Y)}; hG.prototype.CreatePatch=function(a,c,d,e,g,m,y,W,E){var p=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);m&&"object"===typeof m&&(m=m.kB);y&&"object"===typeof y&&(y=y.kB);W&&"object"===typeof W&&(W=W.kB);E&&"object"===typeof E&&(E=E.kB);return k(ID(p,a,c,d,e,g,m,y,W,E),Y)}; hG.prototype.CreatePatchUV=function(a,c,d,e,g,m,y,W,E,p){var G=this.kB;iE();a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);m&&"object"===typeof m&&(m=m.kB);y&&"object"===typeof y&&(y=y.kB);W&&"object"===typeof W&&(W=W.kB);E&&"object"===typeof E&&(E=E.kB);"object"==typeof p&&(p=mE(p));return k(JD(G,a,c,d,e,g,m,y,W,E,p),Y)}; hG.prototype.CreateEllipsoid=function(a,c,d,e){var g=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);return k(KD(g,a,c,d,e),Y)}; hG.prototype.CreateFromTriMesh=function(a,c,d,e,g){var m=this.kB;iE();a&&"object"===typeof a&&(a=a.kB);"object"==typeof c&&(c=mE(c));if("object"==typeof d&&"object"===typeof d){var y=jE(d,Ka);kE(d,Ka,y);d=y}e&&"object"===typeof e&&(e=e.kB);g&&"object"===typeof g&&(g=g.kB);return k(LD(m,a,c,d,e,g),Y)}; hG.prototype.CreateFromConvexHull=function(a,c,d,e){var g=this.kB;a&&"object"===typeof a&&(a=a.kB);c&&"object"===typeof c&&(c=c.kB);d&&"object"===typeof d&&(d=d.kB);e&&"object"===typeof e&&(e=e.kB);return k(MD(g,a,c,d,e),Y)};hG.prototype.__destroy__=function(){ND(this.kB)}; (function(){function a(){b.PHY_FLOAT=OD();b.PHY_DOUBLE=PD();b.PHY_INTEGER=QD();b.PHY_SHORT=RD();b.PHY_FIXEDPOINT88=SD();b.PHY_UCHAR=TD();b.CONST_GIMPACT_COMPOUND_SHAPE=UD();b.CONST_GIMPACT_TRIMESH_SHAPE_PART=VD();b.CONST_GIMPACT_TRIMESH_SHAPE=WD();b.BT_CONSTRAINT_ERP=XD();b.BT_CONSTRAINT_STOP_ERP=YD();b.BT_CONSTRAINT_CFM=ZD();b.BT_CONSTRAINT_STOP_CFM=$D()}Sa?a():Qa.unshift(a)})();b.CONTACT_ADDED_CALLBACK_SIGNATURE="iiiiiiii";b.CONTACT_DESTROYED_CALLBACK_SIGNATURE="ii"; b.CONTACT_PROCESSED_CALLBACK_SIGNATURE="iiii";b.INTERNAL_TICK_CALLBACK_SIGNATURE="vif";this.Ammo=b; return Ammo.ready } ); })(); if (typeof exports === 'object' && typeof module === 'object') module.exports = Ammo; else if (typeof define === 'function' && define['amd']) define([], function() { return Ammo; }); else if (typeof exports === 'object') exports["Ammo"] = Ammo;