>3]=y;c=+(t|0);L=h>3]=L;Q=d>Q?d:Q;s[C>>3]=Q;c=B>c?B:c;s[I>>3]=c;a[v>>2]=f;a[v+4>>2]=t;f3(e,110704,v)|0;u=u+1|0;o=y;h=L;d=Q;B=c}t=a[(a[(a[((a[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0;if(!(r[b>>0]|0)){c=+s[t+56>>3];y=+s[t+40>>3];t=Ze(b,n)|0;c=(y+c)*.5}else{c=+s[t+64>>3];y=+s[t+48>>3];t=~~((y+c)*.5);c=+Ie(b,n)}m=~~c;L=+(m|0);s[l>>3]=o >3]=h >3]=d>L?d:L;s[I>>3]=B>y?B:y;a[Z>>2]=m;a[Z+4>>2]=t;f3(e,110718,Z)|0;a[A>>2]=a[l>>2];a[A+4>>2]=a[l+4>>2];a[A+8>>2]=a[l+8>>2];a[A+12>>2]=a[l+12>>2];a[A+16>>2]=a[l+16>>2];a[A+20>>2]=a[l+20>>2];a[A+24>>2]=a[l+24>>2];a[A+28>>2]=a[l+28>>2];k=G;return}function ye(A){A=A|0;var e=0;A=xk(A)|0;while(1){if(!A)break;e=xk(a[A+16>>2]|0)|0;while(1){if(!e)break;a[e+32>>2]=ni(a[e+24>>2]|0)|0;e=a[e>>2]|0}A=a[A>>2]|0}return}function We(A){A=A|0;var e=0;A=xk(A)|0;while(1){if(!A)break;e=xk(a[A+16>>2]|0)|0;while(1){if(!e)break;if(a[e+24>>2]|0)Se(e);e=a[e>>2]|0}A=a[A>>2]|0}return}function ze(A,e){A=A|0;e=e|0;var i=0;i=xk(A)|0;while(1){if(!i)break;A=xk(a[i+16>>2]|0)|0;while(1){if(!A)break;Ve(A,e);A=a[A>>2]|0}i=a[i>>2]|0}return}function Ye(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0;r=xk(A)|0;while(1){if(!r)break;l=r+8|0;f=xk(a[r+16>>2]|0)|0;while(1){if(!f)break;A=f+24|0;A:do{if(a[A>>2]|0){if(a[47323]&8|0)De(f,~~+s[l>>3]);n=f+32|0;bi(a[n>>2]|0);e=a[A>>2]|0;i=f+28|0;A=0;while(1){if((A|0)>=(e|0))break A;a[(a[(a[i>>2]|0)+(A<<2)>>2]|0)+44>>2]=(a[(a[(a[n>>2]|0)+4>>2]|0)+(A*12|0)+4>>2]|0)+1;A=A+1|0}}}while(0);f=a[f>>2]|0}r=a[r>>2]|0}return}function De(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0.0,b=0.0;t=k;k=k+32|0;i=t;n=A+24|0;A:do{if((a[n>>2]|0)>=2){l=a[15712]|0;b=+s[A+8>>3];c=+s[A+16>>3];a[i>>2]=e;s[i+8>>3]=b;s[i+16>>3]=c;f3(l,110739,i)|0;f=A+32|0;A=A+28|0;e=0;while(1){if((e|0)>=(a[n>>2]|0))break A;r=a[(a[(a[f>>2]|0)+4>>2]|0)+(e*12|0)+8>>2]|0;e:do{if(Sk(r)|0){Me(l,a[(a[A>>2]|0)+(e<<2)>>2]|0);Q3(110759,l)|0;i=y5[a[r>>2]&63](r,0,128)|0;while(1){if(!i)break e;Q3(110764,l)|0;Me(l,a[(a[A>>2]|0)+(a[i>>2]<<2)>>2]|0);Q3(153599,l)|0;i=y5[a[r>>2]&63](r,i,8)|0}}}while(0);e=e+1|0}}}while(0);k=t;return}function Me(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0.0,c=0.0,b=0.0;n=k;k=k+80|0;f=n+40|0;i=n;if(!(r[e>>0]|0)){b=+s[e+16>>3];t=+s[e+8>>3];c=+s[e+24>>3];l=Fe(a[e+32>>2]|0)|0;i=Fe(a[e+36>>2]|0)|0;s[f>>3]=b;s[f+8>>3]=t;s[f+16>>3]=c;s[f+24>>3]=t;a[f+32>>2]=l;a[f+36>>2]=i;f3(A,110770,f)|0}else{c=+s[e+8>>3];t=+s[e+16>>3];b=+s[e+24>>3];f=Fe(a[e+32>>2]|0)|0;l=Fe(a[e+36>>2]|0)|0;s[i>>3]=c;s[i+8>>3]=t;s[i+16>>3]=c;s[i+24>>3]=b;a[i+32>>2]=f;a[i+36>>2]=l;f3(A,110770,i)|0}k=n;return}function Fe(A){A=A|0;switch(A|0){case 0:{A=110821;break}case 1:{A=110816;break}case 2:{A=110809;break}case 3:{A=110802;break}case 4:{A=110794;break}default:A=0}return A|0}function Ve(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0;C=k;k=k+16|0;d=C+8|0;g=C;v=a[A+32>>2]|0;E=a[A+28>>2]|0;o=A+24|0;b=d+4|0;u=g+4|0;t=0;A=a[o>>2]|0;A:while(1){h=t+1|0;if((h|0)>=(A|0))break;w=E+(t<<2)|0;c=h;while(1){if((c|0)>=(A|0)){t=h;continue A}e:do{if(((si(v,t,c)|0)==0?(si(v,c,t)|0)==0:0)?(B=E+(c<<2)|0,Je(a[w>>2]|0,a[B>>2]|0)|0):0){f=a[w>>2]|0;A=a[f+48>>2]|0;l=a[B>>2]|0;i=a[l+48>>2]|0;r=(i|0)==0;if(A)if(r)A=1;else A=+s[A+8>>3]!=+s[i+8>>3];else A=r^1;n=A&1;pe(d,f,l,0,n);A=a[d>>2]|0;l=a[b>>2]|0;f=n^1;pe(g,a[w>>2]|0,a[B>>2]|0,1,f);i=a[g>>2]|0;r=a[u>>2]|0;switch(l|0){case-1:{Ne(a[B>>2]|0,a[w>>2]|0,n,0,A,e);Ne(a[B>>2]|0,a[w>>2]|0,f,1,i,e);if((r|0)!=1)break e;Re(a[w>>2]|0,a[B>>2]|0,f,e);break e}case 0:switch(r|0){case-1:{Ne(a[B>>2]|0,a[w>>2]|0,n,0,A,e);Ne(a[B>>2]|0,a[w>>2]|0,f,1,i,e);break e}case 0:{Ne(a[w>>2]|0,a[B>>2]|0,0,n,A,e);Ne(a[w>>2]|0,a[B>>2]|0,1,f,i,e);break e}case 1:{Ne(a[w>>2]|0,a[B>>2]|0,0,n,A,e);Ne(a[w>>2]|0,a[B>>2]|0,1,f,i,e);break e}default:break e}case 1:{Ne(a[w>>2]|0,a[B>>2]|0,0,n,A,e);Ne(a[w>>2]|0,a[B>>2]|0,1,f,i,e);if((r|0)!=-1)break e;Re(a[w>>2]|0,a[B>>2]|0,f,e);break e}default:break e}}}while(0);c=c+1|0;A=a[o>>2]|0}}k=C;return}function Je(A,e){A=A|0;e=e|0;if(!(+s[A+8>>3]==+s[e+8>>3]))gA(110892,110161,843,110923);if((+s[A+16>>3]==+s[e+16>>3]?+s[A+24>>3]==+s[e+24>>3]:0)?(a[A+32>>2]|0)==(a[e+32>>2]|0):0)A=(a[A+36>>2]|0)==(a[e+36>>2]|0)&1;else A=0;return A|0}function pe(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0;n=0;while(1){e=Xe(e,r)|0;if(!e){l=0;break}i=Xe(i,f)|0;if(!i){t=6;break}if(!(Je(e,i)|0)){t=7;break}n=n+1|0}if((t|0)==6)gA(138394,110161,871,110841);else if((t|0)==7)l=Ue(e,He(e,i)|0,n+1|0,1-r|0)|0;a[A>>2]=n;a[A+4>>2]=l;return}function Ne(A,e,i,f,n,l){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;var t=0,c=0,b=0,u=0,w=0,k=0,o=0;k=l+20|0;w=l+24|0;l=Qe(a[((r[A>>0]|0)==0?k:w)>>2]|0,A)|0;ti(a[l+32>>2]|0,a[A+40>>2]|0,a[e+40>>2]|0);c=1;while(1){if((c|0)>(n|0))break;b=Xe(A,i)|0;u=Xe(e,f)|0;do{if(!(r[A>>0]|0)){t=Qe(a[w>>2]|0,b)|0;if(+s[b+8>>3]==+s[A+16>>3]){o=(a[A+32>>2]|0)==1;l=(si(a[l+32>>2]|0,a[A+40>>2]|0,a[e+40>>2]|0)|0)!=0;A=a[t+32>>2]|0;if(o)if(l){ti(A,a[u+40>>2]|0,a[b+40>>2]|0);l=t;break}else{ti(A,a[b+40>>2]|0,a[u+40>>2]|0);l=t;break}else if(l){ti(A,a[b+40>>2]|0,a[u+40>>2]|0);l=t;break}else{ti(A,a[u+40>>2]|0,a[b+40>>2]|0);l=t;break}}else{o=(a[A+36>>2]|0)==1;l=(si(a[l+32>>2]|0,a[A+40>>2]|0,a[e+40>>2]|0)|0)!=0;A=a[t+32>>2]|0;if(o)if(l){ti(A,a[b+40>>2]|0,a[u+40>>2]|0);l=t;break}else{ti(A,a[u+40>>2]|0,a[b+40>>2]|0);l=t;break}else if(l){ti(A,a[u+40>>2]|0,a[b+40>>2]|0);l=t;break}else{ti(A,a[b+40>>2]|0,a[u+40>>2]|0);l=t;break}}}else{t=Qe(a[k>>2]|0,b)|0;if(+s[b+8>>3]==+s[A+16>>3]){o=(a[A+32>>2]|0)==2;l=(si(a[l+32>>2]|0,a[A+40>>2]|0,a[e+40>>2]|0)|0)!=0;A=a[t+32>>2]|0;if(o)if(l){ti(A,a[b+40>>2]|0,a[u+40>>2]|0);l=t;break}else{ti(A,a[u+40>>2]|0,a[b+40>>2]|0);l=t;break}else if(l){ti(A,a[u+40>>2]|0,a[b+40>>2]|0);l=t;break}else{ti(A,a[b+40>>2]|0,a[u+40>>2]|0);l=t;break}}else{o=(a[A+36>>2]|0)==2;l=(si(a[l+32>>2]|0,a[A+40>>2]|0,a[e+40>>2]|0)|0)!=0;A=a[t+32>>2]|0;if(o)if(l){ti(A,a[u+40>>2]|0,a[b+40>>2]|0);l=t;break}else{ti(A,a[b+40>>2]|0,a[u+40>>2]|0);l=t;break}else if(l){ti(A,a[b+40>>2]|0,a[u+40>>2]|0);l=t;break}else{ti(A,a[u+40>>2]|0,a[b+40>>2]|0);l=t;break}}}}while(0);A=b;e=u;c=c+1|0}return}function Re(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0;while(1){if(!(Je(A,e)|0))break;n=Xe(A,1)|0;e=Xe(e,i)|0;A=n}n=a[(Qe(a[((r[A>>0]|0)==0?f+20|0:f+24|0)>>2]|0,A)|0)+32>>2]|0;ci(n,a[A+40>>2]|0,a[e+40>>2]|0);return}function Xe(A,e){A=A|0;e=e|0;if(!A)gA(110828,110161,798,110832);else return a[((e|0)==0?A+48|0:A+52|0)>>2]|0;return 0}function He(A,e){A=A|0;e=e|0;var i=0,f=0,a=0;a=k;k=k+16|0;f=a;i=r[A>>0]|0;if(i<<24>>24==(r[e>>0]|0)?!(+s[A+8>>3]!=+s[e+8>>3]):0){if(!(i<<24>>24))A=xe(A,e,3,1)|0;else A=xe(A,e,4,2)|0;k=a;return A|0}ao(1,110854,f)|0;fe(189296,1);return 0}function Ue(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0;t=1;while(1){if((t|0)>(i|0))break;l=Xe(A,f)|0;n=+s[l+8>>3]==+s[A+16>>3];do{if(!(r[A>>0]|0))if(n){n=(a[A+32>>2]|0)==1;break}else{n=(a[A+36>>2]|0)==3;break}else if(n){n=(a[A+32>>2]|0)==4;break}else{n=(a[A+36>>2]|0)==2;break}}while(0);A=l;t=t+1|0;e=n?0-e|0:e}return e|0}function xe(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0.0,l=0.0,t=0.0,c=0.0,b=0,u=0,w=0,k=0;t=+s[A+24>>3];c=+s[e+16>>3];do{if(!(t >3],l=+s[e+24>>3],!(n>l)):0){if(c >2]|0;return((i|0)==(a[e+32>>2]|0)?0:(i|0)==(r|0)?1:-1)|0}else{i=a[A+32>>2]|0;e=(i|0)==(a[e+36>>2]|0)?0:(i|0)==(r|0)?1:-1;break}if(!(t==l))if(t >2]|0)==(i|0);i=Pe(a[e+32>>2]|0,a[A+32>>2]|0,i,r)|0;return(k?i:0-i|0)|0}else{k=(a[e+36>>2]|0)==(r|0);e=Pe(a[A+32>>2]|0,a[e+32>>2]|0,i,r)|0;e=k?e:0-e|0;break}k=a[A+32>>2]|0;w=a[e+32>>2]|0;if((k|0)==(w|0)){e=a[e+36>>2]|0;if((a[A+36>>2]|0)==(e|0)){e=0;break}}else e=a[e+36>>2]|0;u=(w|0)==(i|0);if((w|0)==(e|0)){if(u){e=1;break}if((w|0)==(r|0)){e=-1;break}if((k|0)!=(i|0)?(a[A+36>>2]|0)!=(i|0):0){e=1;break}if((k|0)!=(r|0)?(a[A+36>>2]|0)!=(r|0):0){e=-1;break}e=0;break}f=(e|0)==(r|0);if(u&f){e=(a[A+36>>2]|0)==(r|0);if((k|0)==(i|0)){if(!e){e=-1;break}}else if(e){e=1;break}e=0;break}b=(e|0)==(i|0);if((w|0)==(r|0)&b){e=(k|0)==(r|0);if((a[A+36>>2]|0)==(i|0)){if(!e){e=-1;break}}else if(e){e=1;break}e=0;break}if(!w){if(b){e=je(k,a[A+36>>2]|0,i)|0;break}if(f){e=0-(je(k,a[A+36>>2]|0,r)|0)|0;break}}f=a[A+36>>2]|0;if(u&(e|0)==0){e=je(f,k,i)|0;break}else{e=0-(je(f,k,r)|0)|0;break}}else e=0}while(0);return e|0}function Te(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0.0,t=0.0;l=+s[A+24>>3];t=+s[e+24>>3];do{if(l >2]|0;if((A|0)==(i|0)?(a[e+32>>2]|0)==(r|0):0){A=-1;break}if((A|0)==(r|0)?(a[e+32>>2]|0)==(i|0):0){A=1;break}A=0}else{f=a[e+32>>2]|0;n=(f|0)==(r|0);if(l==t)if(n){A=Pe(a[A+36>>2]|0,a[e+36>>2]|0,i,r)|0;break}else{A=0-(Pe(a[e+36>>2]|0,a[A+36>>2]|0,i,r)|0)|0;break}if(n?(a[e+36>>2]|0)==(r|0):0){A=-1;break}if((f|0)==(i|0)?(a[e+36>>2]|0)==(i|0):0){A=1;break}A=0}}while(0);return A|0}function je(A,e,i){A=A|0;e=e|0;i=i|0;return((A|0)==(i|0)?((e|0)==(i|0))<<31>>31:1)|0}function Pe(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;if((A|0)==(r|0)){e=(A|0)==0;if(e)return 0;else e=e&1}return((A|0)!=0|(e|0)!=(i|0))<<31>>31|0}function Se(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0;n=a[A+28>>2]|0;l=a[A+24>>2]|0;i=a[A+32>>2]|0;A=0;A:while(1){r=A+1|0;if((r|0)>=(l|0))break;f=n+(A<<2)|0;e=r;while(1){if((e|0)==(l|0)){A=r;continue A}switch(He(a[f>>2]|0,a[n+(e<<2)>>2]|0)|0){case 1:{ti(i,A,e);break}case-1:{ti(i,e,A);break}default:{}}e=e+1|0}}return}function Oe(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;f=A+24|0;r=a[f>>2]|0;i=r+1|0;a[f>>2]=i;a[e+40>>2]=r;r=A+28|0;A=a[r>>2]|0;if(!A)A=$F(i<<2)|0;else A=eV(A,i<<2)|0;a[r>>2]=A;a[A+((a[f>>2]|0)+-1<<2)>>2]=e;return}function Ke(A,e,i){A=A|0;e=e|0;i=+i;var r=0,f=0,n=0;n=k;k=k+16|0;f=n;s[f>>3]=i;r=y5[a[A>>2]&63](A,f,512)|0;if(!r){r=qF(24)|0;s[r+8>>3]=+s[f>>3];a[r+16>>2]=jk(25728,a[4581]|0)|0;y5[a[A>>2]&63](A,r,1)|0}f=a[r+16>>2]|0;y5[a[f>>2]&63](f,e,1)|0;k=n;return}function _e(A,e,i){A=A|0;e=e|0;i=i|0;li(a[e+32>>2]|0);L2(a[e+28>>2]|0);L2(e);return}function qe(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,a=0.0;f=+s[e>>3];a=+s[i>>3];if(!(f>a))if(f>3]>=+s[i+8>>3])<<31>>31;else A=0;else A=!(+s[e+8>>3]<=+s[i+8>>3])&1;return A|0}function $e(A,e,i){A=A|0;e=e|0;i=i|0;Hk(a[e+16>>2]|0)|0;L2(e);return}function Ai(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,a=0.0;a=+s[e>>3];f=+s[i>>3];return(a>f?1:(a >31)|0}function ei(A,e,i){A=A|0;e=e|0;i=i|0;var f=0.0,n=0.0,l=0,t=0;l=(r[e+36>>0]|0)!=0;t=i+40|0;do{if((a[e+24>>2]|0)==(i|0)){f=+s[t>>3];if(l){n=(+s[i+64>>3]+ +s[i+48>>3])*.5;break}else{n=+s[i+48>>3];f=(+s[i+56>>3]+f)*.5;break}}else if(l){n=(+s[i+64>>3]+ +s[i+48>>3])*.5;f=+s[i+56>>3];break}else{n=+s[i+64>>3];f=(+s[i+56>>3]+ +s[t>>3])*.5;break}}while(0);s[A>>3]=f;s[A+8>>3]=n;return}function ii(A,e){A=A|0;e=e|0;var i=0;i=a[A+20>>2]|0;if((i|0)!=(a[e+20>>2]|0)?(i|0)!=(a[e+24>>2]|0):0)i=a[A+24>>2]|0;return i|0}function ri(A,e){A=A|0;e=e|0;var i=0.0;i=(+s[e+64>>3]+ +s[e+48>>3])*.5;s[A>>3]=(+s[e+56>>3]+ +s[e+40>>3])*.5;s[A+8>>3]=i;return}function fi(A,e,i,f,n,l,t){A=A|0;e=e|0;i=+i;f=+f;n=+n;l=l|0;t=t|0;var c=0,b=0;r[A>>0]=e;s[A+8>>3]=i;if(f >3]=f;s[A+16>>3]=i;a[A+36>>2]=e;a[A+32>>2]=b;r[A+1>>0]=c;return}function ai(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=a[e+36>>2]|0;do{if((a[r+4>>2]|0)!=(i|0)){if((a[r+12>>2]|0)==(i|0)){r=~~((+s[e+56>>3]+ +s[e+40>>3])*.5);i=~~+s[e+48>>3];break}if((a[r+8>>2]|0)==(i|0)){r=~~+s[e+40>>3];i=~~((+s[e+64>>3]+ +s[e+48>>3])*.5);break}if((a[r>>2]|0)==(i|0)){r=~~+s[e+56>>3];i=~~((+s[e+64>>3]+ +s[e+48>>3])*.5)}else{r=0;i=0}}else{r=~~((+s[e+56>>3]+ +s[e+40>>3])*.5);i=~~+s[e+64>>3]}}while(0);a[A>>2]=r;a[A+4>>2]=i;return}function ni(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;i=qF(8)|0;a[i>>2]=A;r=i+4|0;a[r>>2]=qF(A*12|0)|0;e=0;while(1){if((e|0)>=(A|0))break;n=Ma()|0;f=a[r>>2]|0;a[f+(e*12|0)+8>>2]=n;a[f+(e*12|0)>>2]=0;e=e+1|0}return i|0}function li(A){A=A|0;var e=0,i=0,r=0;i=A+4|0;e=0;while(1){r=a[i>>2]|0;if((e|0)>=(a[A>>2]|0))break;Hk(a[r+(e*12|0)+8>>2]|0)|0;e=e+1|0}L2(r);L2(A);return}function ti(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;r=k;k=k+16|0;f=r;a[f>>2]=i;i=a[(a[A+4>>2]|0)+(e*12|0)+8>>2]|0;y5[a[i>>2]&63](i,f,1)|0;k=r;return}function ci(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;r=k;k=k+16|0;f=r;a[f>>2]=i;A=A+4|0;n=a[(a[A>>2]|0)+(e*12|0)+8>>2]|0;y5[a[n>>2]&63](n,f,2)|0;a[f>>2]=e;i=a[(a[A>>2]|0)+(i*12|0)+8>>2]|0;y5[a[i>>2]&63](i,f,2)|0;k=r;return}function si(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;r=k;k=k+16|0;f=r;a[f>>2]=i;i=a[(a[A+4>>2]|0)+(e*12|0)+8>>2]|0;i=(y5[a[i>>2]&63](i,f,512)|0)!=0&1;k=r;return i|0}function bi(A){A=A|0;var e=0,i=0,r=0,f=0;e=a[A>>2]|0;switch(e|0){case 0:break;case 1:{a[(a[A+4>>2]|0)+4>>2]=0;break}default:{r=ui(e)|0;f=A+4|0;i=0;e=0;while(1){if((i|0)>=(a[A>>2]|0)){e=0;break}if(!(a[(a[f>>2]|0)+(i*12|0)>>2]|0))e=wi(A,i,e,r)|0;i=i+1|0}while(1){i=ki(r)|0;if((i|0)<=-1)break;a[(a[f>>2]|0)+(i*12|0)+4>>2]=e;e=e+1|0}oi(r)}}return}function ui(A){A=A|0;var e=0;e=qF(8)|0;a[e+4>>2]=qF(A<<2)|0;a[e>>2]=-1;return e|0}function wi(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0;t=A+4|0;n=a[t>>2]|0;c=n+(e*12|0)|0;a[c>>2]=1;n=a[n+(e*12|0)+8>>2]|0;l=n+4|0;i=i+1|0;n=xk(n)|0;while(1){if(!n)break;f=a[(a[l>>2]|0)+8>>2]|0;if((f|0)<0)f=a[n+8>>2]|0;else f=n+(0-f)|0;f=a[f>>2]|0;if(!(a[(a[t>>2]|0)+(f*12|0)>>2]|0))i=wi(A,f,i,r)|0;n=a[n>>2]|0}a[c>>2]=2;hi(r,e);return i+1|0}function ki(A){A=A|0;var e=0,i=0;e=a[A>>2]|0;if((e|0)==-1)A=-1;else{i=a[(a[A+4>>2]|0)+(e<<2)>>2]|0;a[A>>2]=e+-1;A=i}return A|0}function oi(A){A=A|0;L2(a[A+4>>2]|0);L2(A);return}function hi(A,e){A=A|0;e=e|0;var i=0;i=(a[A>>2]|0)+1|0;a[A>>2]=i;a[(a[A+4>>2]|0)+(i<<2)>>2]=e;return}function di(A){A=A|0;var e=0,i=0,r=0;i=a[A>>2]|0;a[A+8>>2]=i;a[A+12>>2]=a[A+4>>2];e=A+16|0;A=0;while(1){if((A|0)>=(i|0))break;r=a[e>>2]|0;f[r+(A*40|0)+18>>1]=f[r+(A*40|0)+16>>1]|0;A=A+1|0}return}function Bi(A){A=A|0;var e=0,i=0,r=0;e=a[A+8>>2]|0;a[A>>2]=e;a[A+4>>2]=a[A+12>>2];i=A+16|0;A=0;while(1){if((A|0)>=(e|0))break;r=a[i>>2]|0;f[r+(A*40|0)+16>>1]=f[r+(A*40|0)+18>>1]|0;A=A+1|0}e=e+2|0;while(1){if((A|0)>=(e|0))break;f[(a[i>>2]|0)+(A*40|0)+16>>1]=0;A=A+1|0}return}function gi(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=qF(((a[A>>2]|0)*6|0)+(e<<1)<<2)|0;a[A+20>>2]=qF((((a[A>>2]|0)*3|0)+e|0)*24|0)|0;r=a[A>>2]|0;f=A+16|0;A=0;while(1){if((A|0)>=(r|0))break;a[(a[f>>2]|0)+(A*40|0)+28>>2]=i;i=i+24|0;A=A+1|0}r=r+2|0;while(1){if((A|0)>=(r|0))break;a[(a[f>>2]|0)+(A*40|0)+28>>2]=i;i=i+(e<<2)|0;A=A+1|0}return}function vi(A){A=A|0;var e=0;e=qF(24)|0;a[e>>2]=0;a[e+16>>2]=qF(A*40|0)|0;return e|0}function Ei(A){A=A|0;var e=0,i=0;i=a[A+16>>2]|0;e=a[A>>2]|0;a[i+(e*40|0)+32>>2]=e;a[A>>2]=e+1;return i+(e*40|0)|0}function Ci(A,e,i,r){A=A|0;e=e|0;i=i|0;r=+r;var f=0,n=0;n=A+4|0;f=a[n>>2]|0;a[n>>2]=f+1;n=a[A+20>>2]|0;A=n+(f*24|0)|0;a[n+(f*24|0)+12>>2]=a[e+32>>2];a[n+(f*24|0)+16>>2]=a[i+32>>2];s[A>>3]=r;a[n+(f*24|0)+8>>2]=0;Ii(e,f);Ii(i,f);return A|0}function Ii(A,e){A=A|0;e=e|0;var i=0,r=0;i=A+16|0;r=f[i>>1]|0;a[(a[A+28>>2]|0)+(r<<16>>16<<2)>>2]=e;f[i>>1]=r+1<<16>>16;return}function Zi(A){A=A|0;var e=0;e=A+16|0;L2(a[(a[e>>2]|0)+28>>2]|0);L2(a[e>>2]|0);L2(a[A+20>>2]|0);L2(A);return}function Gi(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0;n=a[A>>2]|0;l=A+16|0;r=0;while(1){if((r|0)>=(n|0))break;a[(a[l>>2]|0)+(r*40|0)>>2]=-2147483648;r=r+1|0}Ha();A:do{if(!(Ta(e)|0)){a[e+8>>2]=0;a[e>>2]=0;e=A+20|0;e:while(1){n=Pa()|0;if(!n){r=0;break A}a[n>>2]=0-(a[n>>2]|0);if((n|0)==(i|0)){r=0;break A}l=n+16|0;t=n+28|0;r=0;while(1){if((r|0)>=(f[l>>1]|0))continue e;c=(a[e>>2]|0)+((a[(a[t>>2]|0)+(r<<2)>>2]|0)*24|0)|0;b=mi(A,c,n)|0;u=a[b>>2]|0;do{if((u|0)<0){w=~~-(+s[c>>3]+ +(a[n>>2]|0));if((u|0)==-2147483648){a[b>>2]=w;if(Ta(b)|0){r=1;break A}a[b+8>>2]=n;a[b+12>>2]=c;break}else{if((u|0)>=(w|0))break;Sa(b,w);a[b+8>>2]=n;a[b+12>>2]=c;break}}}while(0);r=r+1|0}}}else r=1}while(0);return r|0}function mi(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=a[e+12>>2]|0;if((r|0)==(a[i+32>>2]|0))r=a[e+16>>2]|0;return(a[A+16>>2]|0)+(r*40|0)|0}function Qi(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;n=a[A>>2]|0;Jv(n,3,e)|0;e=a[n+92>>2]|0;do{if(e){i=a[e+16>>2]|0;l=a[i+12>>2]|0;a[A+76>>2]=l;r=a[i+16>>2]|0;a[A+84>>2]=r;f=A+80|0;a[f>>2]=a[i>>2];a[A+88>>2]=a[e+4>>2];i=A+152|0;r=a[i>>2]|a[r>>2];a[i>>2]=r;e=a[n+80>>2]|0;if(!e){a[A+60>>2]=0;e=999;break}else{n=a[e+16>>2]|0;a[A+60>>2]=a[n+12>>2];t=a[n+16>>2]|0;a[A+68>>2]=t;a[A+72>>2]=a[e+4>>2];a[i>>2]=r|a[t>>2];a[A+64>>2]=a[((l|0)==0?f:n)>>2];e=300;break}}else e=999}while(0);return e|0}function Li(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(!(sv(A)|0))if((e|0)!=0?(i=a[e>>2]|0,(i|0)!=0):0){F5[i&127](A);A=0}else A=0;else A=1;return A|0}function yi(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+4>>2]|0,i|0):0)F5[i&127](A);a[(a[A>>2]|0)+24>>2]=0;Bv(A);return}function Wi(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,n=0.0,l=0.0;r=+s[e+504>>3];f=+s[e+512>>3];l=+s[e+352>>3];if(!(a[e+360>>2]|0)){n=+s[i>>3]+r;i=i+8|0;r=f}else n=-(f+ +s[i+8>>3]);f=+s[e+528>>3]*l*(+s[i>>3]+r);s[A>>3]=+s[e+520>>3]*l*n;s[A+8>>3]=f;return}function zi(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,n=0.0,l=0.0,t=0.0,c=0.0;f=+s[A+504>>3];n=+s[A+512>>3];l=+s[A+352>>3];t=+s[A+520>>3]*l;l=+s[A+528>>3]*l;A:do{if(!(a[A+360>>2]|0)){A=0;while(1){if((A|0)>=(r|0))break A;s[i+(A<<4)>>3]=(+s[e+(A<<4)>>3]+f)*t;s[i+(A<<4)+8>>3]=(+s[e+(A<<4)+8>>3]+n)*l;A=A+1|0}}else{A=0;while(1){if((A|0)>=(r|0))break A;c=-(t*(+s[e+(A<<4)+8>>3]+n));s[i+(A<<4)+8>>3]=(+s[e+(A<<4)>>3]+f)*l;s[i+(A<<4)>>3]=c;A=A+1|0}}}while(0);return i|0}function Yi(A,e){A=A|0;e=e|0;var i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+8>>2]|0,i|0):0)F5[i&127](A);return}function Di(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+12>>2]|0,i|0):0)F5[i&127](A);dv(A);return}function Mi(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+24>>2]|0,i|0):0)F5[i&127](A);return}function Fi(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+28>>2]|0,i|0):0)F5[i&127](A);return}function Vi(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+16>>2]|0,i|0):0){e=a[A+160>>2]|0;N5[i&31](A,a[(a[(a[A>>2]|0)+308>>2]|0)+(e<<2)>>2]|0,e,a[A+156>>2]|0)}return}function Ji(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+20>>2]|0,i|0):0)F5[i&127](A);return}function pi(A,e){A=A|0;e=e|0;var i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+32>>2]|0,i|0):0)F5[i&127](A);return}function Ni(A,e){A=A|0;e=e|0;var i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+36>>2]|0,i|0):0)F5[i&127](A);return}function Ri(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+40>>2]|0,i|0):0)F5[i&127](A);return}function Xi(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+44>>2]|0,i|0):0)F5[i&127](A);return}function Hi(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+48>>2]|0,i|0):0)F5[i&127](A);return}function Ui(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+52>>2]|0,i|0):0)F5[i&127](A);return}function xi(A,e){A=A|0;e=e|0;var i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+56>>2]|0,i|0):0)F5[i&127](A);return}function Ti(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+60>>2]|0,i|0):0)F5[i&127](A);return}function ji(A,e){A=A|0;e=e|0;var i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+64>>2]|0,i|0):0)F5[i&127](A);return}function Pi(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+68>>2]|0,i|0):0)F5[i&127](A);return}function Si(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0;n=a[A+60>>2]|0;if(n|0?(l=a[n+72>>2]|0,l|0):0)R5[l&15](A,e,i,r,f);return}function Oi(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+76>>2]|0,i|0):0)F5[i&127](A);return}function Ki(A,e){A=A|0;e=e|0;var i=0,r=0;i=a[A+60>>2]|0;if(i|0?(r=a[i+80>>2]|0,r|0):0)V5[r&63](A,e);return}function _i(A){A=A|0;var e=0,i=0;e=a[A+60>>2]|0;if(e|0?(i=a[e+84>>2]|0,i|0):0)F5[i&127](A);return}function qi(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0;s=k;k=k+48|0;f=s+32|0;l=s;t=s+16|0;c=a[A+60>>2]|0;b=a[i>>2]|0;do{if(b|0?r[b>>0]|0:0){b=a[A+16>>2]|0;if(b|0?(a[b+144>>2]|0)==0:0)break;if(!(a[A+152>>2]&8192)){a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];Wi(t,A,f);a[l>>2]=a[t>>2];a[l+4>>2]=a[t+4>>2];a[l+8>>2]=a[t+8>>2];a[l+12>>2]=a[t+12>>2]}else{a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2]}if(c|0?(n=a[c+88>>2]|0,n|0):0){a[f>>2]=a[l>>2];a[f+4>>2]=a[l+4>>2];a[f+8>>2]=a[l+8>>2];a[f+12>>2]=a[l+12>>2];J5[n&127](A,f,i)}}}while(0);k=s;return}function $i(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0;f=a[A+60>>2]|0;n=(a[A+16>>2]|0)+16|0;t=G1(e,58)|0;l=(t|0)!=0;if(l)r[t>>0]=0;if(f|0?(Ar(a[A+68>>2]|0,e,n),i=a[f+92>>2]|0,i|0):0)V5[i&63](A,n);if(l)r[t>>0]=58;return}function Ar(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+32|0;n=s+16|0;c=s+8|0;t=s;a[i>>2]=e;a[i+32>>2]=5;r=Bf(e)|0;f=a[A+16>>2]|0;if(!((f|0)!=0?(i8(r,f,a[A+20>>2]|0,4,102)|0)!=0:0))l=3;A:do{if((l|0)==3){switch(gf(e,i,a[A+24>>2]|0)|0){case 0:break A;case 1:break;default:{ao(1,111046,n)|0;break A}}A=$F((P2(e)|0)+16|0)|0;a[t>>2]=e;S4(A,111011,t)|0;if(fF(A)|0){a[c>>2]=e;ao(0,111020,c)|0}L2(A)}}while(0);k=s;return}function er(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0;f=a[A+60>>2]|0;n=(a[A+16>>2]|0)+56|0;t=G1(e,58)|0;l=(t|0)!=0;if(l)r[t>>0]=0;if(f|0?(Ar(a[A+68>>2]|0,e,n),i=a[f+92>>2]|0,i|0):0)V5[i&63](A,n);if(l)r[t>>0]=58;return}function ir(A,e,i,r){A=A|0;e=e|0;i=i|0;r=+r;var f=0,n=0,l=0,t=0;n=a[A+60>>2]|0;l=A+16|0;t=(a[l>>2]|0)+96|0;if(n|0?(Ar(a[A+68>>2]|0,e,t),f=a[n+92>>2]|0,f|0):0)V5[f&63](A,t);t=a[l>>2]|0;a[t+136>>2]=i;c[t+140>>2]=r;return}function rr(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,b=0;b=k;k=k+16|0;c=b;t=a[A+60>>2]|0;A=a[A+16>>2]|0;a[A+160>>2]=e;A:do{if((e|0)!=0&(t|0)!=0){t=A+144|0;l=A+152|0;n=A+148|0;A=e;e:while(1){f=A+4|0;A=a[A>>2]|0;if(!A)break A;i:do{switch(r[A>>0]|0){case 115:{if(!(A1(A,111067)|0)){a[t>>2]=3;A=f;continue e}if(!(A1(A,111088)|0)){i=115;while(1){e=A+1|0;if(!(i<<24>>24))break;A=e;i=r[e>>0]|0}s[l>>3]=+$3(e);A=f;continue e}break}case 100:{if(!(A1(A,137327)|0)){a[t>>2]=1;A=f;continue e}if(!(A1(A,137320)|0)){a[t>>2]=2;A=f;continue e}break}case 105:{if(A1(A,134335)|0?A1(A,111073)|0:0)break i;a[t>>2]=0;A=f;continue e}case 98:{if(!(A1(A,111083)|0)){s[l>>3]=2.0;A=f;continue e}break}case 102:{if(!(A1(A,111101)|0)){a[n>>2]=1;A=f;continue e}break}case 117:{if(!(A1(A,111108)|0)){a[n>>2]=0;A=f;continue e}break}case 116:{if(!(A1(A,111117)|0)){A=f;continue e}break}default:{}}}while(0);a[c>>2]=A;ao(0,111125,c)|0;A=f}}}while(0);k=b;return}function fr(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0;t=k;k=k+32|0;n=t;i=a[A+60>>2]|0;if((i|0?(l=i+96|0,f=a[l>>2]|0,f|0):0)?a[(a[A+16>>2]|0)+144>>2]|0:0){i=e+16|0;s[n>>3]=(+s[i>>3]+ +s[e>>3])*.5;s[n+8>>3]=(+s[e+24>>3]+ +s[e+8>>3])*.5;e=n+16|0;a[e>>2]=a[i>>2];a[e+4>>2]=a[i+4>>2];a[e+8>>2]=a[i+8>>2];a[e+12>>2]=a[i+12>>2];if(!(a[A+152>>2]&8192)){zi(A,n,n,2)|0;f=a[l>>2]|0}J5[f&127](A,n,r)}k=t;return}function ar(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;w=k;k=k+48|0;b=w;f=a[A+60>>2]|0;if((f|0?(u=f+100|0,a[u>>2]|0):0)?(s=A+16|0,c=a[s>>2]|0,a[c+144>>2]|0):0){if(!(r&4)){f=r;n=0}else{f=r&-5;r=c+16|0;n=b;l=r;t=n+40|0;do{a[n>>2]=a[l>>2];n=n+4|0;l=l+4|0}while((n|0)<(t|0));n=r;l=c+56|0;t=n+40|0;do{a[n>>2]=a[l>>2];n=n+4|0;l=l+4|0}while((n|0)<(t|0));n=1}if(!(a[A+152>>2]&8192)){r=i+10|0;if((a[47363]|0)<(i|0)){a[47363]=r;r=eV(a[47364]|0,r<<4)|0;a[47364]=r}else r=a[47364]|0;zi(A,e,r,i)|0;N5[a[u>>2]&31](A,r,i,f)}else N5[a[u>>2]&31](A,e,i,f);if(n|0){n=(a[s>>2]|0)+16|0;l=b;t=n+40|0;do{a[n>>2]=a[l>>2];n=n+4|0;l=l+4|0}while((n|0)<(t|0))}}k=w;return}function nr(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;r=k;k=k+64|0;f=r;a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];n=f+32|0;e=e+16|0;a[n>>2]=a[e>>2];a[n+4>>2]=a[e+4>>2];a[n+8>>2]=a[e+8>>2];a[n+12>>2]=a[e+12>>2];s[f+16>>3]=+s[f>>3];s[f+24>>3]=+s[f+40>>3];s[f+48>>3]=+s[n>>3];s[f+56>>3]=+s[f+8>>3];ar(A,f,4,i);k=r;return}function lr(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0;t=a[A+60>>2]|0;do{if((t|0?(c=t+104|0,l=a[c>>2]|0,l|0):0)?a[(a[A+16>>2]|0)+144>>2]|0:0){if(a[A+152>>2]&8192|0){X5[l&15](A,e,i,r,f,n&255);break}l=i+10|0;if((a[47363]|0)<(i|0)){a[47363]=l;l=eV(a[47364]|0,l<<4)|0;a[47364]=l}else l=a[47364]|0;zi(A,e,l,i)|0;X5[a[c>>2]&15](A,l,i,r,f,n&255)}}while(0);return}function tr(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;r=a[A+60>>2]|0;do{if((r|0?(n=r+108|0,f=a[n>>2]|0,f|0):0)?a[(a[A+16>>2]|0)+144>>2]|0:0){if(a[A+152>>2]&8192|0){J5[f&127](A,e,i);break}r=i+10|0;if((a[47363]|0)<(i|0)){a[47363]=r;r=eV(a[47364]|0,r<<4)|0;a[47364]=r}else r=a[47364]|0;zi(A,e,r,i)|0;J5[a[n>>2]&127](A,r,i)}}while(0);return}function cr(A,e){A=A|0;e=e|0;var i=0,f=0;i=a[A+60>>2]|0;if((e|0?!((i|0)==0|(r[e>>0]|0)==0):0)?(f=a[i+112>>2]|0,f|0):0)V5[f&63](A,e);return}function sr(A,e,i,f,n,l){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;var t=0.0,c=0.0,b=0,u=0,w=0.0,o=0.0,h=0.0,d=0.0,B=0,g=0.0,v=0.0,E=0.0,C=0.0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0;z=k;k=k+112|0;Q=z+64|0;W=z;u=z+96|0;I=z+48|0;Z=z+32|0;L=a[A+60>>2]|0;if(!A)gA(111282,111178,691,111189);if(!e)gA(111208,111178,692,111189);if(!(r[e>>0]|0))gA(111213,111178,693,111189);y=Nv(e)|0;if(!y){if((L|0)!=0&(Gp(e)|0)!=0?(b=a[L+116>>2]|0,b|0):0)R5[b&15](A,e,i,f,n&255)}else{B=A+432|0;a[Q>>2]=a[B>>2];a[Q+4>>2]=a[B+4>>2];a[Q+8>>2]=a[B+8>>2];a[Q+12>>2]=a[B+12>>2];Hv(u,y,Q);B=a[u>>2]|0;b=a[u+4>>2]|0;if(!((B|0)<1&(b|0)<1)){u=W+16|0;a[u>>2]=a[i>>2];a[u+4>>2]=a[i+4>>2];a[u+8>>2]=a[i+8>>2];a[u+12>>2]=a[i+12>>2];a[W>>2]=a[i>>2];a[W+4>>2]=a[i+4>>2];a[W+8>>2]=a[i+8>>2];a[W+12>>2]=a[i+12>>2];G=W+8|0;m=W+24|0;e=1;while(1){if((e|0)>=(f|0))break;Y=i+(e<<4)|0;E=+s[Y>>3];s[W>>3]=+s[(+s[W>>3] >3];C=+s[i+(e<<4)+8>>3];s[G>>3]=+s[(+s[G>>3] >3];s[u>>3]=+s[(+s[u>>3]>E?u:Y)>>3];s[m>>3]=+s[(+s[m>>3]>C?u:Y)+8>>3];e=e+1|0}c=+s[u>>3];t=+s[W>>3];g=c-t;v=+s[m>>3];E=+s[G>>3];C=v-E;w=+(b|0);o=+(B|0);h=g/o;d=C/w;A:do{switch(br(l)|0){case 1:if(h >3]=t;c=c-g;s[u>>3]=c}if(w >3]=E+C;s[m>>3]=v-C}if(!(a[A+152>>2]&8192)){a[Q>>2]=a[W>>2];a[Q+4>>2]=a[W+4>>2];a[Q+8>>2]=a[W+8>>2];a[Q+12>>2]=a[W+12>>2];Wi(I,A,Q);a[W>>2]=a[I>>2];a[W+4>>2]=a[I+4>>2];a[W+8>>2]=a[I+8>>2];a[W+12>>2]=a[I+12>>2];a[Q>>2]=a[u>>2];a[Q+4>>2]=a[u+4>>2];a[Q+8>>2]=a[u+8>>2];a[Q+12>>2]=a[u+12>>2];Wi(Z,A,Q);a[u>>2]=a[Z>>2];a[u+4>>2]=a[Z+4>>2];a[u+8>>2]=a[Z+8>>2];a[u+12>>2]=a[Z+12>>2];c=+s[u>>3];t=+s[W>>3]}if(t>c){s[W>>3]=c;s[u>>3]=t}t=+s[G>>3];c=+s[m>>3];if(t>c){s[G>>3]=c;s[m>>3]=t}if(L|0){Y=a[A+72>>2]|0;a[Q>>2]=a[W>>2];a[Q+4>>2]=a[W+4>>2];a[Q+8>>2]=a[W+8>>2];a[Q+12>>2]=a[W+12>>2];a[Q+16>>2]=a[W+16>>2];a[Q+20>>2]=a[W+20>>2];a[Q+24>>2]=a[W+24>>2];a[Q+28>>2]=a[W+28>>2];or(A,y,Q,n,Y)}}}k=z;return}function br(A){A=A|0;if(r[A>>0]|0)if(p1(A,141116)|0)if(p1(A,141048)|0)if(!(p1(A,111221)|0))A=4;else A=(vR(A)|0)<<24>>24!=0&1;else A=3;else A=2;else A=0;return A|0}function ur(A,e){A=A|0;e=+e;if(a[A+60>>2]|0)s[(a[A+16>>2]|0)+152>>3]=e;return}function wr(A,e){A=A|0;e=e|0;e=Jv(A,1,e)|0;if(!e)e=999;else{e=a[e+16>>2]|0;a[A+184>>2]=a[e+4>>2];a[A+172>>2]=a[e+12>>2];a[A+176>>2]=a[e>>2];a[A+180>>2]=a[e+16>>2];e=300}return e|0}function kr(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;f=t;Td(e,137483,280,1)|0;n=e+16|0;a[(a[n>>2]|0)+144>>2]=A;if((Zd(e)|0)!=(e|0))a[(a[(Zd(e)|0)+16>>2]|0)+144>>2]=A;r=Ho(e,111226)|0;i=A+172|0;if((r|0)!=0?(a[i>>2]=0,(wr(A,r)|0)==999):0){i=pv(A,1,r)|0;a[f>>2]=r;a[f+4>>2]=i;ao(1,111233,f)|0;i=-1}else{r=a[i>>2]|0;if(!r)i=-1;else{nF(1);DF(e,a[a[A+180>>2]>>2]&1);i=a[(a[n>>2]|0)+8>>2]|0;a[(a[(Zd(e)|0)+16>>2]|0)+8>>2]=i;oN();i=a[r>>2]|0;if(i|0?(F5[i&127](e),l=a[r+4>>2]|0,l|0):0)a[(a[n>>2]|0)+148>>2]=l;nF(0);i=0}}k=t;return i|0}function or(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0,b=0,u=0;u=k;k=k+176|0;s=u+8|0;c=u;l=u+40|0;if(!A)gA(111282,111286,52,111300);if(!e)gA(111312,111286,53,111300);t=a[e+8>>2]|0;if(!t)gA(111315,111286,54,111300);if(!(r[t>>0]|0))gA(111324,111286,55,111300);$1(l,a[e+28>>2]|0)|0;t=l+(P2(l)|0)|0;r[t>>0]=58;r[t+1>>0]=0;w3(l,n)|0;if((hr(A,l)|0)==999){a[c>>2]=l;ao(0,111336,c)|0}n=a[A+92>>2]|0;if(n|0?(b=a[n>>2]|0,b|0):0){a[s>>2]=a[i>>2];a[s+4>>2]=a[i+4>>2];a[s+8>>2]=a[i+8>>2];a[s+12>>2]=a[i+12>>2];a[s+16>>2]=a[i+16>>2];a[s+20>>2]=a[i+20>>2];a[s+24>>2]=a[i+24>>2];a[s+28>>2]=a[i+28>>2];N5[b&31](A,e,s,f)}k=u;return}function hr(A,e){A=A|0;e=e|0;e=Jv(a[A>>2]|0,4,e)|0;if(!e)e=999;else{e=a[e+16>>2]|0;a[A+92>>2]=a[e+12>>2];a[A+96>>2]=a[e>>2];e=300}return e|0}function dr(A){A=A|0;return 1}function Br(A){A=A|0;var e=0;r[A+536>>0]=0;e=A+336|0;s[e>>3]=+s[e>>3]+10.0/+s[A+352>>3];r[A+537>>0]=1;return 0}function gr(A){A=A|0;var e=0;r[A+536>>0]=0;e=A+336|0;s[e>>3]=+s[e>>3]-10.0/+s[A+352>>3];r[A+537>>0]=1;return 0}function vr(A){A=A|0;var e=0;r[A+536>>0]=0;e=A+344|0;s[e>>3]=+s[e>>3]-10.0/+s[A+352>>3];r[A+537>>0]=1;return 0}function Er(A){A=A|0;var e=0;r[A+536>>0]=0;e=A+344|0;s[e>>3]=+s[e>>3]+10.0/+s[A+352>>3];r[A+537>>0]=1;return 0}function Cr(A){A=A|0;var e=0;r[A+536>>0]=0;e=A+352|0;s[e>>3]=+s[e>>3]*1.1;r[A+537>>0]=1;return 0}function Ir(A){A=A|0;var e=0;r[A+536>>0]=0;e=A+352|0;s[e>>3]=+s[e>>3]*.9090909090909091;r[A+537>>0]=1;return 0}function Zr(A){A=A|0;var e=0,i=0,f=0,n=0.0,l=0.0;i=A+536|0;e=(r[i>>0]|0)==0;r[i>>0]=e&1;if(e){e=a[A+448>>2]|0;i=a[A+452>>2]|0;l=+(e>>>0);n=+(i>>>0);f=l/+(e|0) >3]=(f?l:n)/+((f?e:i)|0);i=A+336|0;a[i>>2]=0;a[i+4>>2]=0;a[i+8>>2]=0;a[i+12>>2]=0;r[A+537>>0]=1}return 0}function Gr(A){A=A|0;var e=0,i=0;e=a[(a[A>>2]|0)+168>>2]|0;i=A+580|0;if(!(a[i>>2]|0)){a[i>>2]=e;i=(a[e+16>>2]|0)+112|0;r[i>>0]=r[i>>0]|2;Xr(A,e)}BI(A,e);r[A+540>>0]=1;return}function mr(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0.0,l=0.0,t=0,c=0;c=k;k=k+16|0;f=c;switch(e|0){case 1:{a[f>>2]=a[i>>2];a[f+4>>2]=a[i+4>>2];a[f+8>>2]=a[i+8>>2];a[f+12>>2]=a[i+12>>2];Mr(A,f);Rr(A);r[A+538>>0]=1;r[A+541>>0]=1;t=13;break}case 2:{r[A+538>>0]=1;r[A+541>>0]=2;t=13;break}case 3:{a[f>>2]=a[i>>2];a[f+4>>2]=a[i+4>>2];a[f+8>>2]=a[i+8>>2];a[f+12>>2]=a[i+12>>2];Mr(A,f);r[A+538>>0]=1;r[A+541>>0]=3;t=13;break}case 4:{r[A+536>>0]=0;if(!(a[A+360>>2]|0)){f=A+352|0;l=+s[f>>3];e=A+336|0;s[e>>3]=(+s[i>>3]-+((a[A+448>>2]|0)>>>0)*.5)*.10000000000000009/(+s[A+520>>3]*l)+ +s[e>>3];n=+s[i+8>>3]-+((a[A+452>>2]|0)>>>0)*.5;e=A+528|0}else{f=A+352|0;l=+s[f>>3];e=A+336|0;s[e>>3]=+s[e>>3]-(+s[i+8>>3]-+((a[A+452>>2]|0)>>>0)*.5)*.10000000000000009/(+s[A+528>>3]*l);n=+s[i>>3]-+((a[A+448>>2]|0)>>>0)*.5;e=A+520|0}t=A+344|0;s[t>>3]=n*.10000000000000009/(+s[e>>3]*l)+ +s[t>>3];s[f>>3]=l*1.1;t=13;break}case 5:{r[A+536>>0]=0;t=A+352|0;l=+s[t>>3]*.9090909090909091;s[t>>3]=l;if(!(a[A+360>>2]|0)){f=A+336|0;s[f>>3]=+s[f>>3]-(+s[i>>3]-+((a[A+448>>2]|0)>>>0)*.5)*.10000000000000009/(+s[A+520>>3]*l);n=+s[i+8>>3]-+((a[A+452>>2]|0)>>>0)*.5;f=A+528|0}else{f=A+336|0;s[f>>3]=(+s[i+8>>3]-+((a[A+452>>2]|0)>>>0)*.5)*.10000000000000009/(+s[A+528>>3]*l)+ +s[f>>3];n=+s[i>>3]-+((a[A+448>>2]|0)>>>0)*.5;f=A+520|0}t=A+344|0;s[t>>3]=+s[t>>3]-n*.10000000000000009/(+s[f>>3]*l);t=13;break}default:{}}if((t|0)==13)r[A+537>>0]=1;A=A+560|0;a[A>>2]=a[i>>2];a[A+4>>2]=a[i+4>>2];a[A+8>>2]=a[i+8>>2];a[A+12>>2]=a[i+12>>2];k=c;return}function Qr(A,e,i){A=A|0;e=e|0;i=i|0;r[A+538>>0]=0;r[A+541>>0]=0;return}function Lr(A,e){A=A|0;e=e|0;var i=0,f=0.0,n=0.0,l=0,t=0.0,c=0;c=k;k=k+16|0;i=c;l=A+560|0;t=(+s[e>>3]-+s[l>>3])/+s[A+520>>3];n=(+s[e+8>>3]-+s[A+568>>3])/+s[A+528>>3];if(!(+W(+t)<.0001&+W(+n)<.0001)){switch(r[A+541>>0]|0){case 0:{a[i>>2]=a[e>>2];a[i+4>>2]=a[e+4>>2];a[i+8>>2]=a[e+8>>2];a[i+12>>2]=a[e+12>>2];Mr(A,i);break}case 2:{f=+s[A+352>>3];if(!(a[A+360>>2]|0)){i=A+336|0;s[i>>3]=+s[i>>3]-t/f;i=A+344|0;s[i>>3]=+s[i>>3]-n/f}else{i=A+336|0;s[i>>3]=+s[i>>3]-n/f;i=A+344|0;s[i>>3]=+s[i>>3]+t/f}r[A+537>>0]=1;break}default:{}}a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2]}k=c;return}function yr(A,e,i){A=A|0;e=e|0;i=i|0;return}function Wr(A){A=A|0;return}function zr(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0;c=a[A>>2]|0;if(e){e=F3(e,138821)|0;if(e|0){t=cv(e,0)|0;h3(e)|0;f=5}}else{t=cv(a[15647]|0,0)|0;f=5}if((f|0)==5?t|0:0){n=c+168|0;e=a[n>>2]|0;if(e|0){f=a[c+172>>2]|0;if((f|0)!=0?(l=a[f+4>>2]|0,(l|0)!=0):0){F5[l&127](e);e=a[n>>2]|0}pF(e);Bh(a[n>>2]|0)|0}Kd(t,0,137483,280,1);Kd(t,1,137447,304,1);Kd(t,2,137460,176,1);a[n>>2]=t;a[(a[t+16>>2]|0)+144>>2]=c;if((wE(c,t,i)|0)!=-1){a[A+580>>2]=0;a[A+576>>2]=0;r[A+537>>0]=1}}return}function Yr(A,e){A=A|0;e=e|0;A=a[A>>2]|0;wE(A,a[A+168>>2]|0,e)|0;return}function Dr(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0;n=a[A>>2]|0;f=n+160|0;r=a[f>>2]|0;if((r|0)!=0?(a[n+164>>2]|0)==0:0){t=n+192|0;l=a[t>>2]|0;a[f>>2]=0;a[t>>2]=0;f=l}else{f=0;r=0}oE(n,a[n+168>>2]|0,e,i)|0;if(r|0){t=a[A>>2]|0;a[t+160>>2]=r;a[t+192>>2]=f}return}function Mr(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0.0,t=0.0,c=0.0,b=0;f=k;k=k+80|0;i=f+48|0;n=f;b=f+32|0;a[i>>2]=a[e>>2];a[i+4>>2]=a[e+4>>2];a[i+8>>2]=a[e+8>>2];a[i+12>>2]=a[e+12>>2];Fr(b,A,i);c=+s[b>>3];t=+s[b+8>>3];l=1.0/+s[A+352>>3];s[n+16>>3]=l+c;s[n+24>>3]=l+t;s[n>>3]=c-l;s[n+8>>3]=t-l;e=a[(a[A>>2]|0)+168>>2]|0;a[i>>2]=a[n>>2];a[i+4>>2]=a[n+4>>2];a[i+8>>2]=a[n+8>>2];a[i+12>>2]=a[n+12>>2];a[i+16>>2]=a[n+16>>2];a[i+20>>2]=a[n+20>>2];a[i+24>>2]=a[n+24>>2];a[i+28>>2]=a[n+28>>2];e=Vr(e,i)|0;i=A+576|0;if((e|0)!=(a[i>>2]|0)){Jr(A);a[i>>2]=e;pr(A);r[A+537>>0]=1}k=f;return}function Fr(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,n=0.0,l=0;if(!(a[e+360>>2]|0)){r=+s[e+352>>3];f=+s[i+8>>3];n=r;l=e+528|0;r=+s[i>>3]/(+s[e+520>>3]*r)-+s[e+504>>3]}else{r=+s[e+352>>3];f=-+s[i>>3];n=r;l=e+520|0;r=+s[i+8>>3]/(+s[e+528>>3]*r)-+s[e+504>>3]}n=f/(+s[l>>3]*n)-+s[e+512>>3];s[A>>3]=r;s[A+8>>3]=n;return}function Vr(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;n=k;k=k+32|0;f=n;r=cd(A)|0;A:while(1){if(!r){r=9;break}i=Oo(A,r)|0;while(1){if(!i)break;a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];a[f+16>>2]=a[e+16>>2];a[f+20>>2]=a[e+20>>2];a[f+24>>2]=a[e+24>>2];a[f+28>>2]=a[e+28>>2];if((mX(i,f)|0)<<24>>24){r=6;break A}i=_o(A,i)|0}r=sd(A,r)|0}do{if((r|0)!=6)if((r|0)==9){i=bd(A)|0;while(1){if(!i)break;a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];a[f+16>>2]=a[e+16>>2];a[f+20>>2]=a[e+20>>2];a[f+24>>2]=a[e+24>>2];a[f+28>>2]=a[e+28>>2];if((IX(i,f)|0)<<24>>24){r=12;break}i=ud(A,i)|0}if((r|0)==12)break;a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];a[f+16>>2]=a[e+16>>2];a[f+20>>2]=a[e+20>>2];a[f+24>>2]=a[e+24>>2];a[f+28>>2]=a[e+28>>2];i=Nr(A,f)|0;if(!i){i=A;break}else break}}while(0);k=n;return i|0}function Jr(A){A=A|0;var e=0;e=a[A+576>>2]|0;A:do{if(e|0)switch(Md(e)|0){case 0:{e=(a[e+16>>2]|0)+112|0;r[e>>0]=r[e>>0]&-2;break A}case 1:{e=(a[e+16>>2]|0)+117|0;r[e>>0]=r[e>>0]&-2;break A}case 2:{e=(a[e+16>>2]|0)+115|0;r[e>>0]=r[e>>0]&-2;break A}default:break A}}while(0);a[A+584>>2]=0;return}function pr(A){A=A|0;var e=0,i=0;i=A+584|0;e=a[i>>2]|0;if(e|0){L2(e);a[i>>2]=0}e=a[A+576>>2]|0;A:do{if(e|0)switch(Md(e)|0){case 0:{A=(a[e+16>>2]|0)+112|0;r[A>>0]=r[A>>0]|1;A=Yo(e,0,141101,0)|0;if(!A)break A;a[i>>2]=PF(Uo(e,A)|0,e)|0;break A}case 1:{A=(a[e+16>>2]|0)+117|0;r[A>>0]=r[A>>0]|1;A=Yo(Id(e)|0,1,141101,0)|0;if(!A)break A;a[i>>2]=PF(Uo(e,A)|0,e)|0;break A}case 2:{A=(a[e+16>>2]|0)+115|0;r[A>>0]=r[A>>0]|1;A=Yo(Id(a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)|0,2,141101,0)|0;if(!A)break A;a[i>>2]=PF(Uo(e,A)|0,e)|0;break A}default:break A}}while(0);return}function Nr(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0.0,w=0.0;b=k;k=k+32|0;r=b;n=a[A+16>>2]|0;l=a[n+180>>2]|0;t=n+184|0;i=1;while(1){if((i|0)>(l|0)){c=4;break}f=a[(a[t>>2]|0)+(i<<2)>>2]|0;a[r>>2]=a[e>>2];a[r+4>>2]=a[e+4>>2];a[r+8>>2]=a[e+8>>2];a[r+12>>2]=a[e+12>>2];a[r+16>>2]=a[e+16>>2];a[r+20>>2]=a[e+20>>2];a[r+24>>2]=a[e+24>>2];a[r+28>>2]=a[e+28>>2];f=Nr(f,r)|0;if(!f)i=i+1|0;else{A=f;break}}do{if((c|0)==4){w=+s[n+24>>3];u=+s[n+40>>3];if(((+s[e+16>>3]>=+s[n+16>>3]?+s[n+32>>3]>=+s[e>>3]:0)?+s[e+24>>3]>=w:0)?u>=+s[e+8>>3]:0)break;A=0}}while(0);k=b;return A|0}function Rr(A){A=A|0;var e=0,i=0,f=0;f=A+580|0;e=a[f>>2]|0;A:do{if(e|0)switch(Md(e)|0){case 0:{i=(a[e+16>>2]|0)+112|0;r[i>>0]=r[i>>0]&-7|4;break A}case 1:{i=(a[e+16>>2]|0)+117|0;r[i>>0]=r[i>>0]&-7|4;break A}case 2:{i=(a[e+16>>2]|0)+115|0;r[i>>0]=r[i>>0]&-7|4;break A}default:break A}}while(0);e=A+588|0;i=a[e>>2]|0;if(i|0){L2(i);a[e>>2]=0}e=a[A+576>>2]|0;a[f>>2]=e;A:do{if(e|0)switch(Md(e)|0){case 0:{f=(a[e+16>>2]|0)+112|0;r[f>>0]=r[f>>0]|2;Xr(A,e);break A}case 1:{f=(a[e+16>>2]|0)+117|0;r[f>>0]=r[f>>0]|2;Hr(A,e);break A}case 2:{f=(a[e+16>>2]|0)+115|0;r[f>>0]=r[f>>0]|2;Ur(A,e);break A}default:break A}}while(0);return}function Xr(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;i=A+592|0;do{if((Zd(e)|0)==(e|0))if(!(Ih(e)|0)){Yv(i,0,111494);break}else{Yv(i,0,111486);break}else Yv(i,0,111500)}while(0);Yv(i,1,Vh(e)|0);a[A+596>>2]=2;f=A+604|0;i=0;r=2;while(1){i=Jo(e,0,i)|0;if(!i)break;Yv(f,r,a[i+8>>2]|0);Yv(f,r+1|0,Uo(e,i)|0);Yv(f,r+2|0,0);r=r+3|0}a[A+608>>2]=r;i=Yo(e,0,141055,0)|0;if(!i){i=Yo(e,0,111477,0)|0;if(i|0)n=11}else n=11;if((n|0)==11)a[A+588>>2]=PF(Uo(e,i)|0,e)|0;return}function Hr(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;f=A+592|0;Yv(f,0,111481);Yv(f,1,Vh(e)|0);a[A+596>>2]=2;f=A+604|0;n=Zd(Id(e)|0)|0;r=2;i=0;while(1){i=Jo(n,1,i)|0;if(!i)break;Yv(f,r,a[i+8>>2]|0);Yv(f,r|1,Uo(e,i)|0);r=r+2|0}a[A+608>>2]=r;i=Yo(Id(e)|0,1,141055,0)|0;if(!i){i=Yo(Id(e)|0,1,111477,0)|0;if(i|0)l=6}else l=6;if((l|0)==6)a[A+588>>2]=PF(Uo(e,i)|0,e)|0;return}function Ur(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;l=A+592|0;Yv(l,0,111450);s=e+48|0;Yv(l,1,Vh(a[((a[e>>2]&3|0)==3?e:s)+40>>2]|0)|0);s=(Ih(Id(a[((a[e>>2]&3|0)==3?e:s)+40>>2]|0)|0)|0)!=0;Yv(l,3,s?137738:141747);s=e+-48|0;Yv(l,4,Vh(a[((a[e>>2]&3|0)==2?e:s)+40>>2]|0)|0);a[A+596>>2]=7;t=A+604|0;c=Zd(Id(a[((a[e>>2]&3|0)==2?e:s)+40>>2]|0)|0)|0;n=7;i=0;A:while(1){while(1){i=Jo(c,2,i)|0;if(!i)break A;r=i+8|0;f=a[r>>2]|0;if(!(A1(f,111455)|0)){b=5;break}if(!(A1(f,111464)|0)){b=7;break}if(A1(f,111473)|0)break;Yv(l,6,Uo(e,i)|0)}if((b|0)==5){b=0;Yv(l,2,Uo(e,i)|0)}else if((b|0)==7){b=0;Yv(l,5,Uo(e,i)|0)}Yv(t,n,a[r>>2]|0);Yv(t,n+1|0,Uo(e,i)|0);n=n+2|0}a[A+608>>2]=n;i=Yo(Id(a[((a[e>>2]&3|0)==2?e:s)+40>>2]|0)|0,2,141055,0)|0;if(!i){i=Yo(Id(a[((a[e>>2]&3|0)==2?e:s)+40>>2]|0)|0,2,111477,0)|0;if(i|0)b=13}else b=13;if((b|0)==13)a[A+588>>2]=PF(Uo(e,i)|0,e)|0;return}function xr(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;n=Tr(A,e,a[i>>2]|0)|0;i=a[i+4>>2]|0;while(1){f=a[i+4>>2]|0;if(!f)break;e=0;while(1){r=a[f+(e*20|0)+4>>2]|0;if(!r)break;Fv(A,a[i>>2]|0,r,a[f+(e*20|0)+8>>2]|0,n,f+(e*20|0)|0)|0;e=e+1|0}i=i+8|0}return}function Tr(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=$F(12)|0;if(!e)e=0;else e=b3(e)|0;a[r+4>>2]=e;a[r+8>>2]=b3(i)|0;i=A+100|0;a[r>>2]=a[i>>2];a[i>>2]=r;return r|0}function jr(A,e){A=A|0;e=e|0;Pr(A);r[A+44>>0]=0;Sr(A)|0;fR(A)|0;return}function Pr(A){A=A|0;var e=0,i=0;e=a[A+32>>2]|0;A:do{if(e|0)while(1){i=a[e>>2]|0;if(!i)break A;if((r[i>>0]|0)==103?N4(i,111509)|0:0)xr(A,0,a[e+4>>2]|0);e=e+8|0}}while(0);return}function Sr(A){A=A|0;var e=0;e=Jv(A,2,111522)|0;if(!e)A=999;else{a[A+148>>2]=a[(a[e+16>>2]|0)+12>>2];A=300}return A|0}function Or(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;A=a[A+148>>2]|0;if((A|0)!=0?(r=a[A>>2]|0,(r|0)!=0):0)A=Q5[r&127](e,i)|0;else A=0;return A|0}function Kr(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;return(a[e>>2]|0)-(a[i>>2]|0)|0}function _r(A){A=A|0;var e=0.0,i=0.0;A=a[A+16>>2]|0;i=+s[A+16>>3];e=+s[A+24>>3];return(qr(~~(i>e?i:e)>>>0)|0)+1|0}function qr(A){A=A|0;var e=0,i=0;if(!A)A=-1;else{i=A>>>0>65535;A=i?A>>>16:A;i=i?16:0;e=A>>>0>255;A=e?A>>>8:A;i=e?i|8:i;e=A>>>0>15;A=e?A>>>4:A;i=e?i|4:i;e=A>>>0>3;A=(e?i|2:i)+((e?A>>>2:A)>>>0>1&1)|0}return A|0}function $r(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0.0,t=0.0,c=0,b=0,u=0,w=0,o=0,h=0,d=0;d=k;k=k+32|0;h=d;o=Af(A,e,i,f,n)|0;i=ef(o)|0;if((i|0)>=0){u=h+16|0;w=h+24|0;b=h+8|0;c=n+32|0;i=0;n=0;while(1){if((n|0)>=(e|0))break;f=A+(n*40|0)+32|0;do{if(a[f>>2]|0){rf(h,o,A+(n*40|0)|0);l=+s[u>>3];t=+s[w>>3];if(!(a[h>>2]|0)){r[(a[f>>2]|0)+36>>0]=1;break}if(+s[b>>3]==0.0){f=a[f>>2]|0;s[f+16>>3]=l;s[f+24>>3]=t;r[f+36>>0]=1;break}if((r[c>>0]|0)==1){f=a[f>>2]|0;s[f+16>>3]=l;s[f+24>>3]=t;r[f+36>>0]=1}else i=1}}while(0);n=n+1|0}ff(o)}k=d;return i|0}function Af(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0;n=qF(28)|0;c=jk(25912,a[4584]|0)|0;l=n+20|0;a[l>>2]=c;do{if(c){c=Nn()|0;a[n+24>>2]=c;if(!c){L3(111740,14,1,a[15712]|0)|0;t=6;break}else{a[n>>2]=A;a[n+4>>2]=e;a[n+8>>2]=i;a[n+12>>2]=r;a[n+16>>2]=f;break}}else{L3(111740,14,1,a[15712]|0)|0;t=6}}while(0);if((t|0)==6){A=a[l>>2]|0;if(A|0)Hk(A)|0;A=a[n+24>>2]|0;if(A|0)Xn(A)|0;L2(n);n=0}return n|0}function ef(A){A=A|0;var e=0;e=wf(A)|0;if((e|0)>=0){kf(A);of(A);e=Hk(a[A+20>>2]|0)|0}return e|0}function rf(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0,n=0,l=0.0,t=0,c=0.0,b=0,u=0,w=0,o=0,h=0.0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0.0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0.0,J=0,p=0;p=k;k=k+464|0;F=p+416|0;J=p+400|0;Y=p+384|0;b=p+352|0;u=p+320|0;w=p+288|0;o=p+256|0;d=p+224|0;B=p+192|0;g=p+160|0;v=p+128|0;E=p+96|0;I=p+64|0;Z=p+32|0;D=p;G=a[i+32>>2]|0;r=+s[G>>3];L=i+16|0;m=(r*2.0+ +s[L>>3])*.125;y=G+8|0;M=i+24|0;l=+s[M>>3];V=(+s[y>>3]*2.0+l)*.5;if(!G)gA(111533,111543,445,111553);f=F;n=f+36|0;do{a[f>>2]=0;f=f+4|0}while((f|0)<(n|0));Q=G+16|0;s[Q>>3]=+s[i>>3]-r;W=i+8|0;z=G+24|0;s[z>>3]=l+ +s[W>>3];af(b,e,i,F);t=a[b>>2]|0;f=a[b+4>>2]|0;r=+s[b+8>>3];b=b+16|0;a[J>>2]=a[b>>2];a[J+4>>2]=a[b+4>>2];a[J+8>>2]=a[b+8>>2];a[J+12>>2]=a[b+12>>2];A:do{if(!t){a[A>>2]=0;a[A+4>>2]=f;s[A+8>>3]=r;A=A+16|0;a[A>>2]=a[J>>2];a[A+4>>2]=a[J+4>>2];a[A+8>>2]=a[J+8>>2];a[A+12>>2]=a[J+12>>2]}else{s[z>>3]=+s[W>>3];af(u,e,i,F);n=a[u>>2]|0;b=a[u+4>>2]|0;l=+s[u+8>>3];u=u+16|0;a[Y>>2]=a[u>>2];a[Y+4>>2]=a[u+4>>2];a[Y+8>>2]=a[u+8>>2];a[Y+12>>2]=a[u+12>>2];if(!n){a[A>>2]=0;a[A+4>>2]=b;s[A+8>>3]=l;A=A+16|0;a[A>>2]=a[Y>>2];a[A+4>>2]=a[Y+4>>2];a[A+8>>2]=a[Y+8>>2];a[A+12>>2]=a[Y+12>>2];break}if(l >2]=a[Y>>2];a[J+4>>2]=a[Y+4>>2];a[J+8>>2]=a[Y+8>>2];a[J+12>>2]=a[Y+12>>2];f=b;r=l}else n=t;s[z>>3]=+s[W>>3]-+s[y>>3];af(w,e,i,F);b=a[w>>2]|0;t=a[w+4>>2]|0;l=+s[w+8>>3];w=w+16|0;a[Y>>2]=a[w>>2];a[Y+4>>2]=a[w+4>>2];a[Y+8>>2]=a[w+8>>2];a[Y+12>>2]=a[w+12>>2];if(!b){a[A>>2]=0;a[A+4>>2]=t;s[A+8>>3]=l;A=A+16|0;a[A>>2]=a[Y>>2];a[A+4>>2]=a[Y+4>>2];a[A+8>>2]=a[Y+8>>2];a[A+12>>2]=a[Y+12>>2];break}if(l >2]=a[Y>>2];a[J+4>>2]=a[Y+4>>2];a[J+8>>2]=a[Y+8>>2];a[J+12>>2]=a[Y+12>>2];f=t;r=l}else b=n;s[Q>>3]=+s[i>>3];s[z>>3]=+s[M>>3]+ +s[W>>3];af(o,e,i,F);n=a[o>>2]|0;t=a[o+4>>2]|0;l=+s[o+8>>3];o=o+16|0;a[Y>>2]=a[o>>2];a[Y+4>>2]=a[o+4>>2];a[Y+8>>2]=a[o+8>>2];a[Y+12>>2]=a[o+12>>2];if(!n){a[A>>2]=0;a[A+4>>2]=t;s[A+8>>3]=l;A=A+16|0;a[A>>2]=a[Y>>2];a[A+4>>2]=a[Y+4>>2];a[A+8>>2]=a[Y+8>>2];a[A+12>>2]=a[Y+12>>2];break}if(l >2]=a[Y>>2];a[J+4>>2]=a[Y+4>>2];a[J+8>>2]=a[Y+8>>2];a[J+12>>2]=a[Y+12>>2];b=n;f=t;r=l}s[z>>3]=+s[W>>3]-+s[y>>3];af(d,e,i,F);n=a[d>>2]|0;t=a[d+4>>2]|0;l=+s[d+8>>3];d=d+16|0;a[Y>>2]=a[d>>2];a[Y+4>>2]=a[d+4>>2];a[Y+8>>2]=a[d+8>>2];a[Y+12>>2]=a[d+12>>2];if(!n){a[A>>2]=0;a[A+4>>2]=t;s[A+8>>3]=l;A=A+16|0;a[A>>2]=a[Y>>2];a[A+4>>2]=a[Y+4>>2];a[A+8>>2]=a[Y+8>>2];a[A+12>>2]=a[Y+12>>2];break}if(l >2]=a[Y>>2];a[J+4>>2]=a[Y+4>>2];a[J+8>>2]=a[Y+8>>2];a[J+12>>2]=a[Y+12>>2];b=n;f=t;r=l}s[Q>>3]=+s[L>>3]+ +s[i>>3];s[z>>3]=+s[M>>3]+ +s[W>>3];af(B,e,i,F);n=a[B>>2]|0;t=a[B+4>>2]|0;l=+s[B+8>>3];B=B+16|0;a[Y>>2]=a[B>>2];a[Y+4>>2]=a[B+4>>2];a[Y+8>>2]=a[B+8>>2];a[Y+12>>2]=a[B+12>>2];if(!n){a[A>>2]=0;a[A+4>>2]=t;s[A+8>>3]=l;A=A+16|0;a[A>>2]=a[Y>>2];a[A+4>>2]=a[Y+4>>2];a[A+8>>2]=a[Y+8>>2];a[A+12>>2]=a[Y+12>>2];break}if(l >2]=a[Y>>2];a[J+4>>2]=a[Y+4>>2];a[J+8>>2]=a[Y+8>>2];a[J+12>>2]=a[Y+12>>2];b=n;f=t;r=l}s[z>>3]=+s[W>>3];af(g,e,i,F);n=a[g>>2]|0;t=a[g+4>>2]|0;l=+s[g+8>>3];g=g+16|0;a[Y>>2]=a[g>>2];a[Y+4>>2]=a[g+4>>2];a[Y+8>>2]=a[g+8>>2];a[Y+12>>2]=a[g+12>>2];if(!n){a[A>>2]=0;a[A+4>>2]=t;s[A+8>>3]=l;A=A+16|0;a[A>>2]=a[Y>>2];a[A+4>>2]=a[Y+4>>2];a[A+8>>2]=a[Y+8>>2];a[A+12>>2]=a[Y+12>>2];break}if(l >2]=a[Y>>2];a[J+4>>2]=a[Y+4>>2];a[J+8>>2]=a[Y+8>>2];a[J+12>>2]=a[Y+12>>2];b=n;f=t;r=l}s[z>>3]=+s[W>>3]-+s[y>>3];af(v,e,i,F);n=a[v>>2]|0;t=a[v+4>>2]|0;l=+s[v+8>>3];v=v+16|0;a[Y>>2]=a[v>>2];a[Y+4>>2]=a[v+4>>2];a[Y+8>>2]=a[v+8>>2];a[Y+12>>2]=a[v+12>>2];if(!n){a[A>>2]=0;a[A+4>>2]=t;s[A+8>>3]=l;A=A+16|0;a[A>>2]=a[Y>>2];a[A+4>>2]=a[Y+4>>2];a[A+8>>2]=a[Y+8>>2];a[A+12>>2]=a[Y+12>>2];break}if(l >2]=a[Y>>2];a[J+4>>2]=a[Y+4>>2];a[J+8>>2]=a[Y+8>>2];a[J+12>>2]=a[Y+12>>2];f=t;r=l}else n=b;t=(a[F+28>>2]|0)==0;do{if(!(a[F+24>>2]|0))if(t){if(a[F+32>>2]|0){C=38;break}if(!((a[F+12>>2]|0)==0&(a[F>>2]|0)==0))C=38}else C=46;else if(t)C=38;else C=46}while(0);e:do{if((C|0)==38)if(!(a[F+32>>2]|0)){s[Q>>3]=+s[i>>3]-+s[G>>3];o=E+4|0;d=E+8|0;B=E+16|0;b=z;t=W;l=+s[M>>3];i:while(1){while(1){s[b>>3]=+s[t>>3]+l;if(!(+s[Q>>3]<=+s[L>>3]+ +s[i>>3])){C=46;break e}af(E,e,i,F);u=a[E>>2]|0;w=a[o>>2]|0;c=+s[d>>3];a[Y>>2]=a[B>>2];a[Y+4>>2]=a[B+4>>2];a[Y+8>>2]=a[B+8>>2];a[Y+12>>2]=a[B+12>>2];if(!u)break i;if(c >2]=a[Y>>2];a[J+4>>2]=a[Y+4>>2];a[J+8>>2]=a[Y+8>>2];a[J+12>>2]=a[Y+12>>2];b=Q;t=Q;l=m;n=u;f=w;r=c}a[A>>2]=0;a[A+4>>2]=w;s[A+8>>3]=c;A=A+16|0;a[A>>2]=a[Y>>2];a[A+4>>2]=a[Y+4>>2];a[A+8>>2]=a[Y+8>>2];a[A+12>>2]=a[Y+12>>2];break A}else C=46}while(0);e:do{if((C|0)==46)if((a[F+12>>2]|0)==0&(a[F>>2]|0)==0){s[Q>>3]=+s[i>>3]-+s[G>>3];c=+s[W>>3];u=I+4|0;w=I+8|0;o=I+16|0;l=c;c=+s[M>>3]+c;while(1){s[z>>3]=c;if(!(c>=l-+s[y>>3]))break e;af(I,e,i,F);t=a[I>>2]|0;b=a[u>>2]|0;l=+s[w>>3];a[Y>>2]=a[o>>2];a[Y+4>>2]=a[o+4>>2];a[Y+8>>2]=a[o+8>>2];a[Y+12>>2]=a[o+12>>2];if(!t)break;if(l >2]=a[Y>>2];a[J+4>>2]=a[Y+4>>2];a[J+8>>2]=a[Y+8>>2];a[J+12>>2]=a[Y+12>>2];n=t;f=b;r=l}l=+s[W>>3];c=+s[z>>3]-V}a[A>>2]=0;a[A+4>>2]=b;s[A+8>>3]=l;A=A+16|0;a[A>>2]=a[Y>>2];a[A+4>>2]=a[Y+4>>2];a[A+8>>2]=a[Y+8>>2];a[A+12>>2]=a[Y+12>>2];break A}}while(0);l=+s[i>>3];c=+s[L>>3]+l;s[Q>>3]=c;h=+s[y>>3];s[z>>3]=+s[W>>3]-h;t=a[F+4>>2]|0;do{if(!(a[F+8>>2]|0)){b=a[F>>2]|0;if(!((t|0)==0&(b|0)==0)){C=59;break}if(a[F+20>>2]|0){t=0;b=0;C=59;break}if(a[F+32>>2]|0){t=0;b=0;C=59}}else{b=a[F>>2]|0;C=59}}while(0);e:do{if((C|0)==59){i:do{if((t|0)==0&(b|0)==0){s[Q>>3]=c;o=Z+4|0;d=Z+8|0;B=Z+16|0;b=z;t=W;l=h;r:while(1){while(1){s[b>>3]=+s[t>>3]-l;l=+s[i>>3];if(!(+s[Q>>3]>=l-+s[G>>3]))break i;af(Z,e,i,F);u=a[Z>>2]|0;w=a[o>>2]|0;c=+s[d>>3];a[Y>>2]=a[B>>2];a[Y+4>>2]=a[B+4>>2];a[Y+8>>2]=a[B+8>>2];a[Y+12>>2]=a[B+12>>2];if(!u)break r;if(c >2]=a[Y>>2];a[J+4>>2]=a[Y+4>>2];a[J+8>>2]=a[Y+8>>2];a[J+12>>2]=a[Y+12>>2];b=Q;t=Q;l=m;n=u;f=w;r=c}a[A>>2]=0;a[A+4>>2]=w;s[A+8>>3]=c;A=A+16|0;a[A>>2]=a[Y>>2];a[A+4>>2]=a[Y+4>>2];a[A+8>>2]=a[Y+8>>2];a[A+12>>2]=a[Y+12>>2];break A}}while(0);if(a[F+20>>2]|0)break;if(a[F+32>>2]|0)break;s[Q>>3]=+s[L>>3]+l;l=+s[W>>3];u=D+4|0;w=D+8|0;o=D+16|0;c=l;l=l-+s[y>>3];while(1){s[z>>3]=l;if(!(l<=+s[M>>3]+c))break e;af(D,e,i,F);t=a[D>>2]|0;b=a[u>>2]|0;l=+s[w>>3];a[Y>>2]=a[o>>2];a[Y+4>>2]=a[o+4>>2];a[Y+8>>2]=a[o+8>>2];a[Y+12>>2]=a[o+12>>2];if(!t)break;if(l >2]=a[Y>>2];a[J+4>>2]=a[Y+4>>2];a[J+8>>2]=a[Y+8>>2];a[J+12>>2]=a[Y+12>>2];n=t;f=b;r=l}c=+s[W>>3];l=+s[z>>3]+V}a[A>>2]=0;a[A+4>>2]=b;s[A+8>>3]=l;A=A+16|0;a[A>>2]=a[Y>>2];a[A+4>>2]=a[Y+4>>2];a[A+8>>2]=a[Y+8>>2];a[A+12>>2]=a[Y+12>>2];break A}}while(0);a[A>>2]=n;a[A+4>>2]=f;s[A+8>>3]=r;A=A+16|0;a[A>>2]=a[J>>2];a[A+4>>2]=a[J+4>>2];a[A+8>>2]=a[J+8>>2];a[A+12>>2]=a[J+12>>2]}}while(0);k=p;return}function ff(A){A=A|0;Xn(a[A+24>>2]|0)|0;L2(A);return}function af(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0.0,t=0,c=0,b=0,u=0.0,w=0,o=0,h=0,d=0.0,B=0,g=0;g=k;k=k+48|0;h=g+32|0;B=g+16|0;o=g;n=a[i+32>>2]|0;if(!n)gA(111533,111543,382,111562);w=n+16|0;a[o>>2]=a[w>>2];a[o+4>>2]=a[w+4>>2];a[o+8>>2]=a[w+8>>2];a[o+12>>2]=a[w+12>>2];w=e+4|0;b=0;n=0;while(1){if((b|0)>=(a[w>>2]|0))break;t=a[e>>2]|0;c=t+(b*40|0)|0;do{if((c|0)!=(i|0)){if(+s[t+(b*40|0)+16>>3]>0.0?+s[t+(b*40|0)+24>>3]>0.0:0)break;n=n+((nf(i,c)|0)!=0&1)|0}}while(0);b=b+1|0}lf(i,h);b=a[e+24>>2]|0;b=Un(b,a[b>>2]|0,h)|0;if(!b){a[A>>2]=n;s[A+8>>3]=0.0;B=A+16|0;a[B>>2]=a[o>>2];a[B+4>>2]=a[o+4>>2];a[B+8>>2]=a[o+8>>2];a[B+12>>2]=a[o+12>>2]}else{c=b;l=0.0;while(1){if(!c)break;t=a[(a[c+4>>2]|0)+16>>2]|0;if((t|0)!=(i|0)){tf(t,B);u=+cf(h,B);if(u>0.0){n=n+1|0;l=+sf(i,t,h,u,f)+l}e=a[t+32>>2]|0;if(((e|0)!=0?(r[e+36>>0]|0)!=0:0)?(lf(t,B),d=+cf(h,B),d>0.0):0){n=n+1|0;l=+bf(i,t,h,d,f)+l}}c=a[c>>2]|0}pn(b);a[A>>2]=n;s[A+8>>3]=l;B=A+16|0;a[B>>2]=a[o>>2];a[B+4>>2]=a[o+4>>2];a[B+8>>2]=a[o+8>>2];a[B+12>>2]=a[o+12>>2]}k=g;return}function nf(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0.0,n=0.0;A=a[A+32>>2]|0;if(+s[e+16>>3]==0.0?+s[e+24>>3]==0.0:0){if((((A|0)!=0?(i=+s[e>>3],r=+s[A+16>>3],i>r):0)?i<+s[A>>3]+r:0)?(f=+s[e+8>>3],n=+s[A+24>>3],f>n):0)A=f<+s[A+8>>3]+n&1;else A=0;return A|0}gA(111599,111543,219,111636);return 0}function lf(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;A=a[A+32>>2]|0;r=+s[A+16>>3];a[e>>2]=~~r;i=+s[A+24>>3];a[e+4>>2]=~~i;a[e+8>>2]=~~(+s[A>>3]+r);a[e+12>>2]=~~(+s[A+8>>3]+i);return}function tf(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;r=+s[A>>3];a[e>>2]=~~r;i=+s[A+8>>3];a[e+4>>2]=~~i;a[e+8>>2]=~~(+s[A+16>>3]+r);a[e+12>>2]=~~(+s[A+24>>3]+i);return}function cf(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;t=a[A+8>>2]|0;c=a[e>>2]|0;if((((t|0)>=(c|0)?(s=a[A>>2]|0,b=a[e+8>>2]|0,(s|0)<=(b|0)):0)?(r=a[A+12>>2]|0,f=a[e+4>>2]|0,(r|0)>=(f|0)):0)?(n=a[A+4>>2]|0,l=a[e+12>>2]|0,(n|0)<=(l|0)):0)i=(+(a[((r|0)<(l|0)?A:e)+12>>2]|0)-+(a[((n|0)>(f|0)?A:e)+4>>2]|0))*(+(a[((t|0)<(b|0)?A:e)+8>>2]|0)-+(a[((s|0)>(c|0)?A:e)>>2]|0));else i=0.0;return+i}function sf(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=+r;f=f|0;var n=0.0,l=0.0,t=0,c=0;c=k;k=k+16|0;t=c;A=uf(A,e)|0;f=f+(((A|0)<0?5:A)<<2)|0;A=a[f>>2]|0;if(!A){a[f>>2]=e;n=r}else{tf(A,t);n=+cf(i,t);n=n>r?n:0.0;A=a[f>>2]|0;if((a[A+32>>2]|0)!=0?(lf(A,t),l=+cf(i,t),l>r):0)n=l>n?l:n;if(!(n>0.0)){a[f>>2]=e;n=r}}k=c;return+n}function bf(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=+r;f=f|0;var n=0.0,l=0.0,t=0,c=0;c=k;k=k+16|0;t=c;A=uf(A,e)|0;f=f+(((A|0)<0?5:A)<<2)|0;A=a[f>>2]|0;if(!A){a[f>>2]=e;n=r}else{tf(A,t);n=+cf(i,t);n=n>r?n:0.0;A=a[f>>2]|0;if((a[A+32>>2]|0)!=0?(lf(A,t),l=+cf(i,t),l>r):0)n=l>n?l:n;if(!(n>0.0)){a[f>>2]=e;n=r}}k=c;return+n}function uf(A,e){A=A|0;e=e|0;var i=0,f=0,n=0.0,l=0.0,t=0.0,c=0.0;i=a[A+32>>2]|0;f=a[e+32>>2]|0;if((i|0)==(f|0))gA(111578,111543,276,111588);do{if((r[i+36>>0]|0)!=0?(r[f+36>>0]|0)!=0:0){t=+s[A>>3];if(t==0.0?+s[A+8>>3]==0.0:0){i=-1;break}c=+s[e>>3];l=+s[e+8>>3];if(!(c==0.0&l==0.0)){n=+s[A+8>>3];if(l t?2:1;break}i=c n){if(i){i=6;break}i=c>t?8:7;break}if(!i)if(c>t)i=5;else i=-1;else i=3}else i=-1}else i=-1}while(0);return i|0}function wf(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;s=k;k=k+32|0;i=s+24|0;r=s+16|0;f=s;n=_r(A)|0;l=A+4|0;t=r+4|0;c=A+20|0;e=0;while(1){if((e|0)>=(a[l>>2]|0)){e=0;break}b=qF(32)|0;w=(a[A>>2]|0)+(e*40|0)|0;u=b+12|0;a[b+28>>2]=w;hf(f,w);a[u>>2]=a[f>>2];a[u+4>>2]=a[f+4>>2];a[u+8>>2]=a[f+8>>2];a[u+12>>2]=a[f+12>>2];u=a[u>>2]|0;a[r>>2]=(((a[b+20>>2]|0)-u|0)/2|0)+u;u=a[b+16>>2]|0;a[t>>2]=(((a[b+24>>2]|0)-u|0)/2|0)+u;a[i>>2]=a[r>>2];a[i+4>>2]=a[r+4>>2];a[b+8>>2]=df(i,n)|0;u=a[c>>2]|0;if(!(y5[a[u>>2]&63](u,b,1)|0)){e=-1;break}else e=e+1|0}k=s;return e|0}function kf(A){A=A|0;var e=0,i=0,r=0;i=A+20|0;r=a[i>>2]|0;e=A+24|0;A=y5[a[r>>2]&63](r,0,128)|0;while(1){if(!A)break;r=a[e>>2]|0;xn(r,A+12|0,a[A+28>>2]|0,r,0)|0;r=a[i>>2]|0;A=y5[a[r>>2]&63](r,A,8)|0}return}function of(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0;r=A+20|0;f=Sk(a[r>>2]|0)|0;i=0;while(1){if(!(Sk(a[r>>2]|0)|0))break;n=a[r>>2]|0;A=a[(a[n+8>>2]|0)+4>>2]|0;if(!A){l=8;break}e=a[(a[n+4>>2]|0)+8>>2]|0;if((e|0)<0)A=a[A+8>>2]|0;else A=A+(0-e)|0;if(!A){l=8;break}y5[a[n>>2]&63](n,A,4096)|0;L2(A);i=i+1|0}if((l|0)==8)gA(111649,111543,616,111652);if((f|0)==(i|0))return;else gA(111664,111543,623,111652)}function hf(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0.0,n=0.0,l=0,t=0,c=0,b=0.0;i=a[e+32>>2]|0;if(!i){r=0.0;f=0.0}else{r=+s[i>>3];f=+s[i+8>>3]}b=+s[e>>3];c=~~+y(+(b-r));n=+s[e+8>>3];t=~~+y(+(n-f));l=~~+H(+(b+r+ +s[e+16>>3]));if((l|0)==2147483647)gA(111676,111543,264,111703);i=~~+H(+(n+f+ +s[e+24>>3]));if((i|0)==2147483647)gA(111713,111543,266,111703);else{a[A>>2]=c;a[A+4>>2]=t;a[A+8>>2]=l;a[A+12>>2]=i;return}}function df(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;f=0;r=a[A>>2]|0;i=a[A+4>>2]|0;while(1){A=e+-1|0;if((e|0)<=0)break;t=r>>>A&1;e=i>>>A&1;n=e+-1|0;l=n&(r^i);n=n&0-t;f=t<<1|f<<2|t^e;e=A;r=l^r^n;i=l^i^n}return f|0}function Bf(A){A=A|0;var e=0,i=0,f=0,n=0;e=P2(A)|0;if(e>>>0>=(a[47365]|0)>>>0){e=e+11|0;a[47365]=e;e=eV(a[47366]|0,e)|0;a[47366]=e;if(!e)e=0;else i=4}else{e=a[47366]|0;i=4}if((i|0)==4){n=e;while(1){i=r[A>>0]|0;if(!(i<<24>>24))break;f=i&255;if(R1(f)|0)i=(N1(f)|0)&255;r[n>>0]=i;n=n+1|0;A=A+1|0}r[n>>0]=0}return e|0}function gf(A,e,i){A=A|0;e=e|0;i=i|0;var f=0.0,l=0,t=0.0,c=0.0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0.0;z=k;k=k+144|0;B=z+96|0;o=z+80|0;E=z+124|0;g=z+72|0;C=z+64|0;I=z+56|0;L=z+48|0;y=z+40|0;W=z+32|0;Z=z+24|0;G=z+16|0;m=z+8|0;Q=z;l=z+120|0;b=z+116|0;u=z+112|0;w=z+108|0;a[e+32>>2]=i;d=A;while(1)if((r[d>>0]|0)==32)d=d+1|0;else break;a[w>>2]=255;A=r[d>>0]|0;A:do{if(A<<24>>24==35){a[o>>2]=l;a[o+4>>2]=b;a[o+8>>2]=u;a[o+12>>2]=w;if((J3(d,111755,o)|0)<=2){A=r[d>>0]|0;h=12;break}switch(i|0){case 0:{Y=+((a[l>>2]|0)>>>0)*.00392156862745098;s[L>>3]=Y;f=+((a[b>>2]|0)>>>0)*.00392156862745098;s[y>>3]=f;t=+((a[u>>2]|0)>>>0)*.00392156862745098;s[W>>3]=t;c=+((a[w>>2]|0)>>>0)*.00392156862745098;vf(Y,f,t,g,C,I);s[e>>3]=+s[g>>3];s[e+8>>3]=+s[C>>3];s[e+16>>3]=+s[I>>3];s[e+24>>3]=c;A=0;break A}case 1:{r[e>>0]=a[l>>2];r[e+1>>0]=a[b>>2];r[e+2>>0]=a[u>>2];r[e+3>>0]=a[w>>2];A=0;break A}case 3:{t=+((a[l>>2]|0)>>>0)*.00392156862745098;s[L>>3]=t;c=+((a[b>>2]|0)>>>0)*.00392156862745098;s[y>>3]=c;Y=+((a[u>>2]|0)>>>0)*.00392156862745098;s[W>>3]=Y;Ef(t,c,Y,Z,G,m,Q);r[e>>0]=~~+s[Z>>3]*255;r[e+1>>0]=~~+s[G>>3]*255;r[e+2>>0]=~~+s[m>>3]*255;r[e+3>>0]=~~+s[Q>>3]*255;A=0;break A}case 2:{a[e>>2]=(((a[l>>2]|0)*65535|0)>>>0)/255|0;a[e+4>>2]=(((a[b>>2]|0)*65535|0)>>>0)/255|0;a[e+8>>2]=(((a[u>>2]|0)*65535|0)>>>0)/255|0;a[e+12>>2]=(((a[w>>2]|0)*65535|0)>>>0)/255|0;A=0;break A}case 4:{s[e>>3]=+((a[l>>2]|0)>>>0)*.00392156862745098;s[e+8>>3]=+((a[b>>2]|0)>>>0)*.00392156862745098;s[e+16>>3]=+((a[u>>2]|0)>>>0)*.00392156862745098;s[e+24>>3]=+((a[w>>2]|0)>>>0)*.00392156862745098;A=0;break A}default:{A=0;break A}}}else h=12}while(0);A:do{if((h|0)==12){if(!(A<<24>>24!=46?((A&255)+-48|0)>>>0>=10:0)){A=P2(d)|0;if(A>>>0>=(a[47367]|0)>>>0){A=A+11|0;a[47367]=A;A=eV(a[47368]|0,A)|0;a[47368]=A;if(!A){A=-1;break}}else A=a[47368]|0;b=A;l=d;e:while(1){u=l+1|0;l=r[l>>0]|0;switch(l<<24>>24){case 0:break e;case 44:{l=32;break}default:{}}r[b>>0]=l;b=b+1|0;l=u}r[b>>0]=0;a[B>>2]=g;a[B+4>>2]=C;a[B+8>>2]=I;if((J3(A,111769,B)|0)==3){c=+s[g>>3];c=c<1.0?c:1.0;c=c>0.0?c:0.0;s[g>>3]=c;t=+s[C>>3];t=t<1.0?t:1.0;t=t>0.0?t:0.0;s[C>>3]=t;f=+s[I>>3];f=f<1.0?f:1.0;f=f>0.0?f:0.0;s[I>>3]=f;switch(i|0){case 0:{s[e>>3]=c;s[e+8>>3]=t;s[e+16>>3]=f;s[e+24>>3]=1.0;A=0;break A}case 1:{Cf(c,t,f,L,y,W);r[e>>0]=~~(+s[L>>3]*255.0);r[e+1>>0]=~~(+s[y>>3]*255.0);r[e+2>>0]=~~(+s[W>>3]*255.0);r[e+3>>0]=-1;A=0;break A}case 3:{Cf(c,t,f,L,y,W);Ef(+s[L>>3],+s[y>>3],+s[W>>3],Z,G,m,Q);r[e>>0]=~~+s[Z>>3]*255;r[e+1>>0]=~~+s[G>>3]*255;r[e+2>>0]=~~+s[m>>3]*255;r[e+3>>0]=~~+s[Q>>3]*255;A=0;break A}case 2:{Cf(c,t,f,L,y,W);a[e>>2]=~~(+s[L>>3]*65535.0);a[e+4>>2]=~~(+s[y>>3]*65535.0);a[e+8>>2]=~~(+s[W>>3]*65535.0);a[e+12>>2]=65535;A=0;break A}case 4:{Cf(c,t,f,L,y,W);s[e>>3]=+s[L>>3];s[e+8>>3]=+s[y>>3];s[e+16>>3]=+s[W>>3];s[e+24>>3]=1.0;A=0;break A}default:{A=0;break A}}}}l=If(d)|0;a[E>>2]=l;if(!l)A=-1;else{A=a[47369]|0;if(!(((A|0)!=0?(v=a[A>>2]|0,(r[v>>0]|0)==(r[l>>0]|0)):0)?(A1(v,l)|0)==0:0)){A=i8(E,25948,2491,12,103)|0;a[47369]=A;if(!A)switch(i|0){case 0:{a[e>>2]=0;a[e+4>>2]=0;a[e+8>>2]=0;a[e+12>>2]=0;a[e+16>>2]=0;a[e+20>>2]=0;s[e+24>>3]=1.0;A=1;break A}case 1:{r[e+2>>0]=0;r[e+1>>0]=0;r[e>>0]=0;r[e+3>>0]=-1;A=1;break A}case 3:{a[e>>2]=0;A=1;break A}case 2:{a[e+8>>2]=0;a[e+4>>2]=0;a[e>>2]=0;a[e+12>>2]=65535;A=1;break A}case 4:{a[e>>2]=0;a[e+4>>2]=0;a[e+8>>2]=0;a[e+12>>2]=0;a[e+16>>2]=0;a[e+20>>2]=0;s[e+24>>3]=1.0;A=1;break A}default:{A=1;break A}}}switch(i|0){case 0:{s[e>>3]=+(n[A+4>>0]|0)*.00392156862745098;s[e+8>>3]=+(n[A+5>>0]|0)*.00392156862745098;s[e+16>>3]=+(n[A+6>>0]|0)*.00392156862745098;s[e+24>>3]=+(n[A+10>>0]|0)*.00392156862745098;A=0;break A}case 1:{r[e>>0]=r[A+7>>0]|0;r[e+1>>0]=r[A+8>>0]|0;r[e+2>>0]=r[A+9>>0]|0;r[e+3>>0]=r[A+10>>0]|0;A=0;break A}case 3:{t=+(n[A+7>>0]|0)*.00392156862745098;s[L>>3]=t;c=+(n[A+8>>0]|0)*.00392156862745098;s[y>>3]=c;Y=+(n[A+9>>0]|0)*.00392156862745098;s[W>>3]=Y;Ef(t,c,Y,Z,G,m,Q);r[e>>0]=~~+s[Z>>3]*255;r[e+1>>0]=~~+s[G>>3]*255;r[e+2>>0]=~~+s[m>>3]*255;r[e+3>>0]=~~+s[Q>>3]*255;A=0;break A}case 2:{a[e>>2]=(n[A+7>>0]|0)*257;a[e+4>>2]=(n[A+8>>0]|0)*257;a[e+8>>2]=(n[A+9>>0]|0)*257;a[e+12>>2]=(n[A+10>>0]|0)*257;A=0;break A}case 4:{s[e>>3]=+(n[A+7>>0]|0)*.00392156862745098;s[e+8>>3]=+(n[A+8>>0]|0)*.00392156862745098;s[e+16>>3]=+(n[A+9>>0]|0)*.00392156862745098;s[e+24>>3]=+(n[A+10>>0]|0)*.00392156862745098;A=0;break A}default:{A=0;break A}}}}}while(0);k=z;return A|0}function vf(A,e,i,r,f,a){A=+A;e=+e;i=+i;r=r|0;f=f|0;a=a|0;var n=0.0,l=0.0,t=0.0,c=0.0,b=0.0,u=0.0;l=ei?e:i;u=uA?A:l);n=l/u;if(u>0.0)if(n>0.0){t=(u-A)/l;c=(u-e)/l;b=(u-i)/l;do{if(!(u==A)){if(u==e){A=t+2.0-b;break}if(u==i)A=c+4.0-t;else A=0.0}else A=(e-i)/l}while(0);A=A*60.0;if(A<0.0)A=A+360.0}else A=0.0;else{n=0.0;A=0.0}s[r>>3]=A*.002777777777777778;s[a>>3]=u;s[f>>3]=n;return}function Ef(A,e,i,r,f,a,n){A=+A;e=+e;i=+i;r=r|0;f=f|0;a=a|0;n=n|0;s[r>>3]=1.0-A;s[f>>3]=1.0-e;s[a>>3]=1.0-i;e=+s[r>>3];i=+s[f>>3];i=e>3]=i;e=+s[a>>3];i=e>3]=i;s[r>>3]=+s[r>>3]-i;s[f>>3]=+s[f>>3]-+s[n>>3];s[a>>3]=+s[a>>3]-+s[n>>3];return}function Cf(A,e,i,r,f,a){A=+A;e=+e;i=+i;r=r|0;f=f|0;a=a|0;var n=0.0,l=0.0,t=0.0,c=0,b=0;A:do{if(!(e<=0.0)){l=!(A>=1.0)?A*6.0:0.0;b=~~l;l=l-+(b|0);A=(1.0-e)*i;t=(1.0-l*e)*i;e=(1.0-(1.0-l)*e)*i;switch(b|0){case 0:{n=A;l=e;A=i;c=8;break A}case 1:{n=A;l=i;A=t;c=8;break A}case 2:{n=e;l=i;c=8;break A}case 3:{n=i;l=t;c=8;break A}case 4:{n=i;l=A;A=e;c=8;break A}case 5:{n=t;l=A;A=i;c=8;break A}default:break A}}else{n=i;l=i;A=i;c=8}}while(0);if((c|0)==8){s[r>>3]=A;s[f>>3]=l;s[a>>3]=n}return}function If(A){A=A|0;var e=0,i=0;e=r[A>>0]|0;if(((e<<24>>24!=98?(i=A+1|0,!(e<<24>>24==119|(Z1(i,137266,4)|0)==0)):0)?!(e<<24>>24==108|(Z1(i,137271,4)|0)==0):0)?(Z1(i,137276,8)|0)!=0:0){do{if(e<<24>>24==47){e=G1(i,47)|0;if(!e)A=i;else{if((r[i>>0]|0)!=47){i=(T1(137285,i,4)|0)==0;A=i?e+1|0:A;break}e=a[47370]|0;if((e|0?r[e>>0]|0:0)?T1(137285,e,3)|0:0){A=Gf(e,A+2|0)|0;break}A=A+2|0}}else{e=a[47370]|0;if(((e|0)!=0?(r[e>>0]|0)!=0:0)?(T1(137285,e,3)|0)!=0:0)A=Gf(e,A)|0}}while(0);A=Bf(A)|0}return A|0}function Zf(A,e){A=A|0;e=e|0;return p1(a[A>>2]|0,a[e>>2]|0)|0}function Gf(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;f=k;k=k+16|0;r=f;n=P2(A)|0;n=(P2(e)|0)+n|0;i=n+13|0;if((n+3|0)>>>0<(a[47371]|0)>>>0)i=a[47372]|0;else{a[47371]=i;i=eV(a[47372]|0,i)|0;a[47372]=i}a[r>>2]=A;a[r+4>>2]=e;S4(i,137290,r)|0;k=f;return a[47372]|0}function mf(A){A=A|0;a[47370]=A;return}function Qf(A,e,i,r,f){A=A|0;e=+e;i=+i;r=+r;f=+f;var a=0,n=0;a=k;k=k+208|0;n=a;Lf(n,+s[A>>3],+s[A+8>>3],e,i,r,f);A=yf(n)|0;k=a;return A|0}function Lf(A,e,i,r,f,a,n){A=A|0;e=+e;i=+i;r=+r;f=+f;a=+a;n=+n;var l=0,t=0;s[A>>3]=e;s[A+8>>3]=i;t=A+16|0;s[t>>3]=r;l=A+24|0;s[l>>3]=f;s[A+32>>3]=0.0;i=+N(+(+M(+a)/f),+(+D(+a)/r));s[A+56>>3]=i;f=+N(+(+M(+n)/f),+(+D(+n)/r));s[A+40>>3]=1.0;s[A+48>>3]=0.0;f=f-+y(+((f-i)*.15915494309189535))*6.283185307179586;s[A+64>>3]=n-a>3.141592653589793&f-i<3.141592653589793?f+6.283185307179586:f;Ff(A);Vf(A);Jf(A);n=+s[t>>3];n=(n-+s[l>>3])/n;s[A+168>>3]=n;s[A+176>>3]=(2.0-n)*n;n=1.0-n;s[A+184>>3]=n;s[A+192>>3]=n*n;return}function yf(A){A=A|0;var e=0,i=0.0,r=0,f=0.0,a=0.0,n=0.0,l=0.0,t=0,c=0,b=0,u=0,w=0.0,k=0.0,o=0,h=0,d=0.0,B=0.0,g=0.0,v=0.0,E=0.0,C=0.0,I=0.0,Z=0.0,G=0.0;h=qF(8)|0;a=+s[A+56>>3];f=+s[A+64>>3]-a;o=1;e=0;while(1){k=f/+(o|0);if(!(e<<24>>24==0&(o|0)<1024))break;A:do{if(!(k<=1.5707963267948966))e=0;else{i=a;r=0;e=1;while(1){if(!(e<<24>>24!=0&(r|0)<(o|0)))break A;w=i+k;e=+Wf(A,i,w)<=1.0e-05&1;i=w;r=r+1|0}}}while(0);o=o<<1}l=+D(+a);v=+M(+a);r=A+16|0;B=+s[r>>3];E=B*l;t=A+24|0;i=+s[t>>3];n=i*v;l=i*l;i=+s[A>>3];c=A+40|0;g=+s[c>>3];b=A+48|0;d=+s[b>>3];f=g*E+i-d*n;u=A+8|0;w=+s[u>>3];n=d*E+g*n+w;B=-(v*B);zf(h,i,w);Yf(h,f,n);w=+F(+(k*.5));w=+M(+k)*.3333333333333333*(+z(+(w*w*3.0+4.0))+-1.0);i=a;a=n;n=d*B+g*l;l=g*B-d*l;e=0;while(1){if((e|0)>=(o|0))break;d=i+k;v=+D(+d);E=+M(+d);I=+s[r>>3];G=I*v;C=+s[t>>3];g=C*E;v=C*v;C=+s[c>>3];Z=+s[b>>3];B=C*G+ +s[A>>3]-Z*g;g=Z*G+C*g+ +s[u>>3];I=-(E*I);E=C*I-Z*v;v=Z*I+C*v;Df(h,f+l*w,a+n*w,B-E*w,g-v*w,B,g);i=d;f=B;a=g;n=v;l=E;e=e+1|0}Mf(h);return h|0}function Wf(A,e,i){A=A|0;e=+e;i=+i;var r=0.0,f=0.0,a=0.0,n=0.0,l=0.0;r=i+e;l=+s[A+16>>3];f=+s[A+24>>3]/l;n=+D(+r);a=+D(+(r*2.0));r=+D(+(r*3.0));A=f<.25?10392:10648;return+(((f*.001+4.98)*f+.207)/(f+.0067)*l*+R(+(((+s[A+32>>3]*f+ +s[A+40>>3])*f+ +s[A+48>>3])/(+s[A+56>>3]+f)*n+((+s[A>>3]*f+ +s[A+8>>3])*f+ +s[A+16>>3])/(+s[A+24>>3]+f)+((+s[A+64>>3]*f+ +s[A+72>>3])*f+ +s[A+80>>3])/(+s[A+88>>3]+f)*a+((+s[A+96>>3]*f+ +s[A+104>>3])*f+ +s[A+112>>3])/(+s[A+120>>3]+f)*r+(((+s[A+160>>3]*f+ +s[A+168>>3])*f+ +s[A+176>>3])/(+s[A+184>>3]+f)*n+((+s[A+128>>3]*f+ +s[A+136>>3])*f+ +s[A+144>>3])/(+s[A+152>>3]+f)+((+s[A+192>>3]*f+ +s[A+200>>3])*f+ +s[A+208>>3])/(+s[A+216>>3]+f)*a+((+s[A+224>>3]*f+ +s[A+232>>3])*f+ +s[A+240>>3])/(+s[A+248>>3]+f)*r)*(i-e))))}function zf(A,e,i){A=A|0;e=+e;i=+i;var r=0;a[47373]=100;r=qF(1600)|0;a[A>>2]=r;s[r>>3]=e;s[r+8>>3]=i;a[A+4>>2]=1;return}function Yf(A,e,i){A=A|0;e=+e;i=+i;var r=0,f=0;f=a[A>>2]|0;r=(a[A+4>>2]|0)+-1|0;Df(A,+s[f+(r<<4)>>3],+s[f+(r<<4)+8>>3],e,i,e,i);return}function Df(A,e,i,r,f,n,l){A=A|0;e=+e;i=+i;r=+r;f=+f;n=+n;l=+l;var t=0,c=0,b=0,u=0;b=A+4|0;t=a[b>>2]|0;c=a[47373]|0;if((t+3|0)<(c|0))A=a[A>>2]|0;else{a[47373]=c<<1;t=W2(a[A>>2]|0,c<<5)|0;a[A>>2]=t;A=t;t=a[b>>2]|0}s[A+(t<<4)>>3]=e;u=t+1|0;s[A+(t<<4)+8>>3]=i;s[A+(u<<4)>>3]=r;c=t+2|0;s[A+(u<<4)+8>>3]=f;s[A+(c<<4)>>3]=n;a[b>>2]=t+3;s[A+(c<<4)+8>>3]=l;return}function Mf(A){A=A|0;var e=0;e=a[A>>2]|0;Yf(A,+s[e>>3],+s[e+8>>3]);a[A>>2]=W2(a[A>>2]|0,a[A+4>>2]<<4)|0;a[47373]=0;return}function Ff(A){A=A|0;var e=0.0,i=0.0,r=0.0,f=0.0;r=+s[A+16>>3];e=+s[A+24>>3];e=+z(+(r*r-e*e));r=e*+s[A+40>>3];e=e*+s[A+48>>3];f=+s[A>>3];s[A+104>>3]=f-r;i=+s[A+8>>3];s[A+112>>3]=i-e;s[A+120>>3]=f+r;s[A+128>>3]=i+e;return}function Vf(A){A=A|0;var e=0.0,i=0.0,r=0.0,f=0.0,a=0.0,n=0.0,l=0.0,t=0.0;r=+s[A+16>>3];l=+s[A+56>>3];t=+D(+l)*r;e=+s[A+24>>3];l=+M(+l)*e;n=+s[A+64>>3];r=+D(+n)*r;e=+M(+n)*e;n=+s[A>>3];i=+s[A+40>>3];f=+s[A+48>>3];s[A+72>>3]=i*t+n-f*l;a=+s[A+8>>3];s[A+80>>3]=f*t+a+i*l;s[A+88>>3]=n+i*r-f*e;s[A+96>>3]=a+f*r+i*e;return}function Jf(A){A=A|0;var e=0.0,i=0.0,r=0.0,f=0.0,a=0.0,n=0.0,l=0.0,t=0.0,c=0.0,b=0.0,u=0.0,w=0;c=+s[A+24>>3];b=+s[A+16>>3];f=c/b;u=+s[A+48>>3];w=+W(+u)<.1;t=+s[A+40>>3];do{if(w){e=u/t;i=+p(+(e*f));r=-i;if(t<0.0){e=+p(+(e/f));f=r;r=3.141592653589793-i;i=4.71238898038469-e;e=1.5707963267948966-e;break}else{e=+p(+(e/f));f=-3.141592653589793-i;i=1.5707963267948966-e;e=-1.5707963267948966-e;break}}else{e=t/u;i=+p(+(e/f));r=i+1.5707963267948966;if(u<0.0){e=+p(+(e*f));f=i+-1.5707963267948966;i=e+3.141592653589793;break}else{e=+p(+(e*f));f=r;r=i+4.71238898038469;i=e;e=e+-3.141592653589793;break}}}while(0);n=+s[A+56>>3];f=f-+y(+((f-n)*.15915494309189535))*6.283185307179586;e=e-+y(+((e-n)*.15915494309189535))*6.283185307179586;a=r-+y(+((r-n)*.15915494309189535))*6.283185307179586;n=i-+y(+((i-n)*.15915494309189535))*6.283185307179586;l=+s[A+64>>3];if(!(f<=l)){f=+s[A+72>>3];i=+s[A+88>>3];i=f>3]-c*+M(+f)*u;s[A+136>>3]=i;if(!(e<=l)){f=+s[A+80>>3];r=+s[A+96>>3];r=f >3]+ +M(+e)*c*t;s[A+144>>3]=r;if(!(a<=l)){a=+s[A+72>>3];e=+s[A+88>>3];e=a>e?a:e}else e=+D(+a)*b*t+ +s[A>>3]-c*+M(+a)*u;s[A+152>>3]=e-i;if(!(n<=l)){u=+s[A+80>>3];e=+s[A+96>>3];e=u>e?u:e}else e=+D(+n)*b*u+ +s[A+8>>3]+ +M(+n)*c*t;s[A+160>>3]=e-r;return}function pf(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0.0,l=0,t=0,c=0.0,b=0,u=0;u=k;k=k+80|0;b=u;Nf(A);c=+s[i+56>>3];n=+s[i+64>>3];switch(r[i+80>>0]|0){case 116:{n=(+s[i+48>>3]-+Rf(e))*.5+n;f=4;break}case 98:{n=n-(+s[i+48>>3]-+Rf(e))*.5;f=4;break}default:{}}if((f|0)==4)n=n+-1.0;s[b>>3]=c;s[b+8>>3]=n;a[b+20>>2]=a[i+8>>2];a[b+16>>2]=a[i+4>>2];s[b+32>>3]=+s[i+16>>3];t=A+16|0;f=Ho(a[(a[t>>2]|0)+8>>2]|0,137297)|0;i=b+56|0;a[i>>2]=f;l=b+60|0;a[l>>2]=a[(a[t>>2]|0)+212>>2];t=b+64|0;r[t>>0]=0;if(!((f|0)!=0?(r[f>>0]|0)!=0:0))a[i>>2]=137308;if((r[e+4>>0]|0)==1){i=a[e>>2]|0;rr(A,a[(a[A>>2]|0)+336>>2]|0);f=a[i+24>>2]|0;if(!f)$i(A,137314);else $i(A,f);Hf(A,i,b);if(r[t>>0]|0)L2(a[l>>2]|0)}else Xf(A,a[e>>2]|0,b);Uf(A);k=u;return}function Nf(A){A=A|0;var e=0,i=0,r=0;e=AI(A)|0;i=a[e>>2]|0;A=a[i+4>>2]|0;a[e+4>>2]=A;a[e+12>>2]=a[i+12>>2];switch(A|0){case 2:{A=i+8|0;r=6;break}case 0:{A=i+8|0;r=6;break}case 1:{A=i+8|0;r=6;break}case 3:{A=i+8|0;r=6;break}default:{}}if((r|0)==6)a[e+8>>2]=a[A>>2];a[e+208>>2]=a[i+208>>2];a[e+228>>2]=a[i+228>>2];a[e+244>>2]=a[i+244>>2];r=e+260|0;f[r>>1]=f[r>>1]&-2|f[i+260>>1]&1;return}function Rf(A){A=A|0;var e=0.0,i=0,f=0;switch(r[A+4>>0]|0){case 1:{i=a[A>>2]|0;A=i+72|0;i=i+56|0;f=5;break}case 3:{i=a[A>>2]|0;A=i+24|0;i=i+8|0;f=5;break}case 2:{i=a[A>>2]|0;A=i+32|0;i=i+16|0;f=5;break}default:e=0.0}if((f|0)==5)e=+s[A>>3]-+s[i>>3];return+e}function Xf(A,e,i){A=A|0;e=e|0;i=i|0;var n=0,l=0,t=0,c=0,b=0,u=0,w=0.0,o=0.0,h=0,d=0,B=0;u=k;k=k+96|0;t=u+64|0;l=u+32|0;n=u+16|0;c=u;b=f[e+4>>1]|0;if(b<<16>>16>=1){d=e+8|0;o=+s[e+24>>3];w=+s[d>>3];s[c>>3]=(w+o)*.5+ +s[i>>3];s[c+8>>3]=(+s[e+16>>3]+ +s[e+32>>3])*.5+ +s[i+8>>3];h=a[e>>2]|0;B=i+16|0;i=r[e+6>>0]|0;a[n>>2]=a[c>>2];a[n+4>>2]=a[c+4>>2];a[n+8>>2]=a[c+8>>2];a[n+12>>2]=a[c+12>>2];a[l>>2]=a[B>>2];a[l+4>>2]=a[B+4>>2];a[l+8>>2]=a[B+8>>2];a[l+12>>2]=a[B+12>>2];a[l+16>>2]=a[B+16>>2];a[l+20>>2]=a[B+20>>2];a[l+24>>2]=a[B+24>>2];a[l+28>>2]=a[B+28>>2];a[t>>2]=a[d>>2];a[t+4>>2]=a[d+4>>2];a[t+8>>2]=a[d+8>>2];a[t+12>>2]=a[d+12>>2];a[t+16>>2]=a[d+16>>2];a[t+20>>2]=a[d+20>>2];a[t+24>>2]=a[d+24>>2];a[t+28>>2]=a[d+28>>2];ea(A,b<<16>>16,h,n,(o-w)*.5,l,t,i)}k=u;return}function Hf(A,e,i){A=A|0;e=e|0;i=i|0;var l=0,t=0,c=0,b=0.0,u=0.0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0;Z=k;k=k+176|0;g=Z+96|0;E=Z+64|0;C=Z+136|0;o=Z;h=Z+128|0;d=e+48|0;a[E>>2]=a[d>>2];a[E+4>>2]=a[d+4>>2];a[E+8>>2]=a[d+8>>2];a[E+12>>2]=a[d+12>>2];a[E+16>>2]=a[d+16>>2];a[E+20>>2]=a[d+20>>2];a[E+24>>2]=a[d+24>>2];a[E+28>>2]=a[d+28>>2];b=+s[i>>3];u=+s[i+8>>3];d=e+84|0;l=a[d>>2]|0;if(!(a[e>>2]|0))I=(a[e+8>>2]|0)!=0;else I=1;v=e+108|0;t=a[v>>2]|0;if(t|0)xf(i,t,186544);s[E>>3]=+s[E>>3]+b;B=E+16|0;s[B>>3]=+s[B>>3]+b;B=E+8|0;s[B>>3]=+s[B>>3]+u;B=E+24|0;s[B>>3]=+s[B>>3]+u;if(I?(a[A+152>>2]&4|0)==0:0){a[g>>2]=a[E>>2];a[g+4>>2]=a[E+4>>2];a[g+8>>2]=a[E+8>>2];a[g+12>>2]=a[E+12>>2];a[g+16>>2]=a[E+16>>2];a[g+20>>2]=a[E+20>>2];a[g+24>>2]=a[E+24>>2];a[g+28>>2]=a[E+28>>2];B=Tf(A,i,e,g,C)|0}else B=0;w=e+42|0;t=f[w>>1]|0;if(!(t&32)){c=a[e+20>>2]|0;if(c){t=jf(A,c,a[e+28>>2]|0,t&65535,h)|0;if(!(f[w>>1]&4)){a[g>>2]=a[E>>2];a[g+4>>2]=a[E+4>>2];a[g+8>>2]=a[E+8>>2];a[g+12>>2]=a[E+12>>2];a[g+16>>2]=a[E+16>>2];a[g+20>>2]=a[E+20>>2];a[g+24>>2]=a[E+24>>2];a[g+28>>2]=a[E+28>>2];nr(A,g,t)}else{w=n[e+33>>0]|0;a[g>>2]=a[E>>2];a[g+4>>2]=a[E+4>>2];a[g+8>>2]=a[E+8>>2];a[g+12>>2]=a[E+12>>2];a[g+16>>2]=a[E+16>>2];a[g+20>>2]=a[E+20>>2];a[g+24>>2]=a[E+24>>2];a[g+28>>2]=a[E+28>>2];tp(A,Pf(o,g,w)|0,4,4,t)}L2(a[h>>2]|0)}while(1){t=a[l>>2]|0;if(!t)break;Sf(A,t,i);l=l+4|0}l=a[d>>2]|0;ur(A,1.0);t=e+24|0;while(1){c=l+4|0;l=a[l>>2]|0;if(!l)break;if(!(r[l+100>>0]|0)){l=c;continue}Of(A,l,i,a[t>>2]|0,a[c>>2]|0);l=c}if(r[e+33>>0]|0){a[g>>2]=a[E>>2];a[g+4>>2]=a[E+4>>2];a[g+8>>2]=a[E+8>>2];a[g+12>>2]=a[E+12>>2];a[g+16>>2]=a[E+16>>2];a[g+20>>2]=a[E+20>>2];a[g+24>>2]=a[E+24>>2];a[g+28>>2]=a[E+28>>2];Kf(A,e,g)}}if(B|0)_f(A,C);if((I?a[A+152>>2]&4|0:0)?(a[g>>2]=a[E>>2],a[g+4>>2]=a[E+4>>2],a[g+8>>2]=a[E+8>>2],a[g+12>>2]=a[E+12>>2],a[g+16>>2]=a[E+16>>2],a[g+20>>2]=a[E+20>>2],a[g+24>>2]=a[E+24>>2],a[g+28>>2]=a[E+28>>2],Tf(A,i,e,g,C)|0):0)_f(A,C);if(a[v>>2]|0)qf(i,186544);k=Z;return}function Uf(A){A=A|0;var e=0;e=a[A+16>>2]|0;a[e+208>>2]=0;a[e+228>>2]=0;a[e+244>>2]=0;a[e+212>>2]=0;eI(A);return}function xf(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0,n=0,l=0;l=A+16|0;f=a[l>>2]|0;if(f|0){if(!(a[e>>2]|0)){f=0;n=i}else{a[i>>2]=f;f=a[e>>2]|0;n=l}a[n>>2]=f}f=a[A+20>>2]|0;if(f|0){n=e+4|0;if(!(a[n>>2]|0)){f=0;n=i}else{a[i+4>>2]=f;f=a[n>>2]|0;n=l}a[n+4>>2]=f}r=+s[A+32>>3];if(r>=0.0){f=e+16|0;if(!(+s[f>>3]>=0.0))r=-1.0;else{s[i+16>>3]=r;r=+s[f>>3];i=l}s[i+16>>3]=r}return}function Tf(A,e,i,n,l){A=A|0;e=e|0;i=i|0;n=n|0;l=l|0;var t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0;v=k;k=k+224|0;u=v+8|0;s=v;g=v+40|0;c=v+184|0;t=v+56|0;b=a[A+16>>2]|0;w=b+208|0;a[l>>2]=a[w>>2];o=b+228|0;a[l+4>>2]=a[o>>2];h=b+244|0;a[l+8>>2]=a[h>>2];d=b+212|0;a[l+12>>2]=a[d>>2];B=b+260|0;r[l+16>>0]=(f[B>>1]<<15&65535)<<16>>16>>15;l=a[i+16>>2]|0;if((l|0)!=0?(r[l>>0]|0)!=0:0)t=0;else{co(g,128,t);t=e+60|0;l=a[t>>2]|0;if(!l){l=b3(rI(A,a[b+8>>2]|0,g)|0)|0;a[t>>2]=l;r[e+64>>0]=1}uo(g,l)|0;t=a[47374]|0;a[47374]=t+1;a[s>>2]=t;S4(c,137391,s)|0;uo(g,c)|0;t=g+4|0;l=a[t>>2]|0;if(l>>>0>=(a[g+8>>2]|0)>>>0){so(g,1)|0;l=a[t>>2]|0}r[l>>0]=0;l=a[g>>2]|0;a[t>>2]=l;t=1}l=iI(A,0,a[i>>2]|0,a[i+12>>2]|0,a[i+8>>2]|0,l,a[b+8>>2]|0)|0;if(t)wo(g);do{if(l|0){if((a[w>>2]|0)==0?(f[B>>1]&1)==0:0)break;a[u>>2]=a[n>>2];a[u+4>>2]=a[n+4>>2];a[u+8>>2]=a[n+8>>2];a[u+12>>2]=a[n+12>>2];a[u+16>>2]=a[n+16>>2];a[u+20>>2]=a[n+20>>2];a[u+24>>2]=a[n+24>>2];a[u+28>>2]=a[n+28>>2];sI(A,u);Si(A,a[w>>2]|0,a[o>>2]|0,a[h>>2]|0,a[d>>2]|0)}}while(0);k=v;return l|0}function jf(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0.0,l=0,t=0;t=k;k=k+16|0;l=t;if(!((qM(e,f,l)|0)<<24>>24)){er(A,e);e=1}else{er(A,a[f>>2]|0);e=a[f+4>>2]|0;n=+c[l>>2];if(!e)ir(A,137314,i,n);else ir(A,e,i,n);e=r>>>1&1|2}$i(A,137379);k=t;return e|0}function Pf(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0.0,n=0.0,l=0.0,t=0.0;a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];r=A+32|0;e=e+16|0;a[r>>2]=a[e>>2];a[r+4>>2]=a[e+4>>2];a[r+8>>2]=a[e+8>>2];a[r+12>>2]=a[e+12>>2];if((i|0)>1){t=+(i|0)*.5;l=+s[A>>3]+t;s[A>>3]=l;i=A+8|0;n=+s[i>>3]+t;s[i>>3]=n;f=+s[r>>3]-t;s[r>>3]=f;r=A+40|0;t=+s[r>>3]-t;s[r>>3]=t}else{f=+s[r>>3];n=+s[A+8>>3];l=+s[A>>3];t=+s[A+40>>3]}s[A+16>>3]=f;s[A+24>>3]=n;s[A+48>>3]=l;s[A+56>>3]=t;return A|0}function Sf(A,e,i){A=A|0;e=e|0;i=i|0;var l=0,t=0.0,c=0.0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0;E=k;k=k+176|0;d=E+96|0;B=E+136|0;g=E+64|0;o=E;h=E+128|0;v=e+48|0;a[g>>2]=a[v>>2];a[g+4>>2]=a[v+4>>2];a[g+8>>2]=a[v+8>>2];a[g+12>>2]=a[v+12>>2];a[g+16>>2]=a[v+16>>2];a[g+20>>2]=a[v+20>>2];a[g+24>>2]=a[v+24>>2];a[g+28>>2]=a[v+28>>2];t=+s[i>>3];c=+s[i+8>>3];if(!(a[e>>2]|0))v=(a[e+8>>2]|0)!=0;else v=1;s[g>>3]=+s[g>>3]+t;w=g+16|0;s[w>>3]=+s[w>>3]+t;w=g+8|0;s[w>>3]=+s[w>>3]+c;w=g+24|0;s[w>>3]=+s[w>>3]+c;if(v?(a[A+152>>2]&4|0)==0:0){a[d>>2]=a[g>>2];a[d+4>>2]=a[g+4>>2];a[d+8>>2]=a[g+8>>2];a[d+12>>2]=a[g+12>>2];a[d+16>>2]=a[g+16>>2];a[d+20>>2]=a[g+20>>2];a[d+24>>2]=a[g+24>>2];a[d+28>>2]=a[g+28>>2];w=Tf(A,i,e,d,B)|0}else w=0;u=e+42|0;l=f[u>>1]|0;A:do{if(!(l&32)){b=a[e+20>>2]|0;if(b|0){l=jf(A,b,a[e+28>>2]|0,l&65535,h)|0;if(!(f[u>>1]&4)){a[d>>2]=a[g>>2];a[d+4>>2]=a[g+4>>2];a[d+8>>2]=a[g+8>>2];a[d+12>>2]=a[g+12>>2];a[d+16>>2]=a[g+16>>2];a[d+20>>2]=a[g+20>>2];a[d+24>>2]=a[g+24>>2];a[d+28>>2]=a[g+28>>2];nr(A,d,l)}else{u=n[e+33>>0]|0;a[d>>2]=a[g>>2];a[d+4>>2]=a[g+4>>2];a[d+8>>2]=a[g+8>>2];a[d+12>>2]=a[g+12>>2];a[d+16>>2]=a[g+16>>2];a[d+20>>2]=a[g+20>>2];a[d+24>>2]=a[g+24>>2];a[d+28>>2]=a[g+28>>2];tp(A,Pf(o,d,u)|0,4,4,l)}L2(a[h>>2]|0)}if(r[e+33>>0]|0){a[d>>2]=a[g>>2];a[d+4>>2]=a[g+4>>2];a[d+8>>2]=a[g+8>>2];a[d+12>>2]=a[g+12>>2];a[d+16>>2]=a[g+16>>2];a[d+20>>2]=a[g+20>>2];a[d+24>>2]=a[g+24>>2];a[d+28>>2]=a[g+28>>2];Kf(A,e,d)}l=e+88|0;switch(r[e+92>>0]|0){case 1:{Hf(A,a[l>>2]|0,i);break A}case 3:{Aa(A,a[l>>2]|0,i);break A}default:{Xf(A,a[l>>2]|0,i);break A}}}}while(0);if(w|0)_f(A,B);if((v?a[A+152>>2]&4|0:0)?(a[d>>2]=a[g>>2],a[d+4>>2]=a[g+4>>2],a[d+8>>2]=a[g+8>>2],a[d+12>>2]=a[g+12>>2],a[d+16>>2]=a[g+16>>2],a[d+20>>2]=a[g+20>>2],a[d+24>>2]=a[g+24>>2],a[d+28>>2]=a[g+28>>2],Tf(A,i,e,d,B)|0):0)_f(A,B);k=E;return}function Of(A,e,i,t,c){A=A|0;e=e|0;i=i|0;t=t|0;c=c|0;var b=0.0,u=0,w=0.0,o=0.0,h=0,d=0.0,B=0.0,g=0.0,v=0.0,E=0,C=0,I=0.0,Z=0,G=0,m=0,Q=0,L=0;m=k;k=k+32|0;Z=m+16|0;G=m;d=+s[i>>3];I=+s[i+8>>3];h=(t|0)==0?137314:t;er(A,h);$i(A,h);g=+s[e+48>>3];w=+s[e+56>>3];v=+s[e+64>>3];o=+s[e+72>>3];B=g+d;d=v+d;I=w+I;h=e+100|0;i=r[h>>0]|0;if((i&1)!=0?(u=a[e+96>>2]|0,((l[e+80>>1]|0)+(l[e+84>>1]|0)|0)<(a[u+104>>2]|0)):0){i=f[e+86>>1]|0;do{if(i<<16>>16)if(((l[e+82>>1]|0)+(i&65535)|0)==(a[u+100>>2]|0)){Q=r[u+32>>0]|0;L=(Q<<24>>24)/2|0;t=(L<<24>>24)+(n[u+33>>0]|0)|0;i=t;t=t&255;b=I-+(L<<24>>24);u=Q;break}else{u=r[u+32>>0]|0;i=0;t=((u<<24>>24)/2|0)<<24>>24;b=I;break}else{L=r[u+32>>0]|0;t=((L<<24>>24)/2|0)<<24>>24;i=t+(n[u+33>>0]|0)|0;b=I;u=L}}while(0);s[G+8>>3]=b-+(t|0);s[G>>3]=d+ +(((u<<24>>24)/2|0)<<24>>24);a[Z>>2]=a[G>>2];a[Z+4>>2]=a[G+4>>2];a[Z+8>>2]=a[G+8>>2];a[Z+12>>2]=a[G+12>>2];$f(A,Z,0.0,o-w+ +(i&255|0)+ +(u<<24>>24));i=r[h>>0]|0}if(i&2?(E=f[e+86>>1]|0,C=a[e+96>>2]|0,((l[e+82>>1]|0)+(E&65535)|0)<(a[C+100>>2]|0)):0){i=f[e+84>>1]|0;do{if(!(i<<16>>16)){i=r[C+32>>0]|0;L=(i<<24>>24)/2|0;u=(L<<24>>24)+(n[C+33>>0]|0)|0;t=u&255;u=u&255;b=+(L<<24>>24);s[G>>3]=B-b-+(u|0);if((a[C+104>>2]|0)==(l[e+80>>1]|0)){t=u<<1&255;break}if((c|0)!=0?(f[c+86>>1]|0)!=E<<16>>16:0)t=~~(+(t&255)-v+ +s[C+64>>3]-b)&255}else{if(((l[e+80>>1]|0)+(i&65535)|0)==(a[C+104>>2]|0)){i=r[C+32>>0]|0;L=(i<<24>>24)/2|0;t=(L&255)+(n[C+33>>0]|0)&255;s[G>>3]=B-+(L<<24>>24);break}i=r[C+32>>0]|0;b=+(((i<<24>>24)/2|0)<<24>>24);s[G>>3]=B-b;if((c|0)!=0?(f[c+86>>1]|0)!=E<<16>>16:0)t=~~(+s[C+64>>3]-v-b)&255;else t=0}}while(0);s[G+8>>3]=I-+(((i<<24>>24)/2|0)<<24>>24);a[Z>>2]=a[G>>2];a[Z+4>>2]=a[G+4>>2];a[Z+8>>2]=a[G+8>>2];a[Z+12>>2]=a[G+12>>2];$f(A,Z,v-g+ +(t&255)+ +(i<<24>>24),0.0)}k=m;return}function Kf(A,e,i){A=A|0;e=e|0;i=i|0;var l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0.0;o=k;k=k+160|0;w=o+112|0;u=o;t=o+144|0;b=a[e+24>>2]|0;$i(A,(b|0)==0?137314:b);b=e+42|0;l=f[b>>1]|0;if(!(l&384))rr(A,a[(a[A>>2]|0)+336>>2]|0);else{a[t+4>>2]=0;a[t>>2]=0;l=l&65535;if(!(l&256)){if(l&128|0){l=137320;c=4}}else{l=137327;c=4}if((c|0)==4)a[t>>2]=l;rr(A,t)}c=e+33|0;ur(A,+(n[c>>0]|0));A:do{if(!(f[b>>1]&4)){l=f[e+36>>1]&15360;if(!(l<<16>>16)){l=r[c>>0]|0;if((l&255)>1){h=+(l&255)*.5;s[i>>3]=+s[i>>3]+h;u=i+8|0;s[u>>3]=+s[u>>3]+h;u=i+16|0;s[u>>3]=+s[u>>3]-h;u=i+24|0;s[u>>3]=+s[u>>3]-h}a[w>>2]=a[i>>2];a[w+4>>2]=a[i+4>>2];a[w+8>>2]=a[i+8>>2];a[w+12>>2]=a[i+12>>2];a[w+16>>2]=a[i+16>>2];a[w+20>>2]=a[i+20>>2];a[w+24>>2]=a[i+24>>2];a[w+28>>2]=a[i+28>>2];nr(A,w,0);break}t=u+16|0;b=n[c>>0]|0;a[w>>2]=a[i>>2];a[w+4>>2]=a[i+4>>2];a[w+8>>2]=a[i+8>>2];a[w+12>>2]=a[i+12>>2];a[w+16>>2]=a[i+16>>2];a[w+20>>2]=a[i+20>>2];a[w+24>>2]=a[i+24>>2];a[w+28>>2]=a[i+28>>2];Pf(t,w,b)|0;do{switch(((l&65535)+-1024|0)>>>10&4194303|0){case 7:{tr(A,t,2);break A}case 3:{tr(A,u+32|0,2);break A}case 1:{tr(A,u+48|0,2);break A}case 0:{i=u+64|0;a[u>>2]=a[i>>2];a[u+4>>2]=a[i+4>>2];a[u+8>>2]=a[i+8>>2];a[u+12>>2]=a[i+12>>2];tr(A,u,2);break A}case 11:{tr(A,t,3);break A}case 5:{tr(A,u+32|0,3);break A}case 2:{i=u+80|0;a[i>>2]=a[t>>2];a[i+4>>2]=a[t+4>>2];a[i+8>>2]=a[t+8>>2];a[i+12>>2]=a[t+12>>2];tr(A,u+48|0,3);break A}case 8:{i=u+64|0;a[u>>2]=a[i>>2];a[u+4>>2]=a[i+4>>2];a[u+8>>2]=a[i+8>>2];a[u+12>>2]=a[i+12>>2];tr(A,u,3);break A}case 13:{tr(A,t,4);break A}case 6:{i=u+80|0;a[i>>2]=a[t>>2];a[i+4>>2]=a[t+4>>2];a[i+8>>2]=a[t+8>>2];a[i+12>>2]=a[t+12>>2];tr(A,u+32|0,4);break A}case 10:{i=u+80|0;a[i>>2]=a[t>>2];a[i+4>>2]=a[t+4>>2];a[i+8>>2]=a[t+8>>2];a[i+12>>2]=a[t+12>>2];i=u+96|0;w=u+32|0;a[i>>2]=a[w>>2];a[i+4>>2]=a[w+4>>2];a[i+8>>2]=a[w+8>>2];a[i+12>>2]=a[w+12>>2];tr(A,u+48|0,4);break A}case 12:{i=u+64|0;a[u>>2]=a[i>>2];a[u+4>>2]=a[i+4>>2];a[u+8>>2]=a[i+8>>2];a[u+12>>2]=a[i+12>>2];tr(A,u,4);break A}case 9:{tr(A,t,2);tr(A,u+48|0,2);break A}case 4:{i=u+64|0;a[u>>2]=a[i>>2];a[u+4>>2]=a[i+4>>2];a[u+8>>2]=a[i+8>>2];a[u+12>>2]=a[i+12>>2];tr(A,u,2);tr(A,u+32|0,2);break A}default:break A}}while(0)}else{b=n[c>>0]|0;a[w>>2]=a[i>>2];a[w+4>>2]=a[i+4>>2];a[w+8>>2]=a[i+8>>2];a[w+12>>2]=a[i+12>>2];a[w+16>>2]=a[i+16>>2];a[w+20>>2]=a[i+20>>2];a[w+24>>2]=a[i+24>>2];a[w+28>>2]=a[i+28>>2];tp(A,Pf(u,w,b)|0,4,4,0)}}while(0);k=o;return}function _f(A,e){A=A|0;e=e|0;var i=0,n=0,l=0;l=a[A+16>>2]|0;i=l+208|0;if((a[i>>2]|0)==0?(f[l+260>>1]&1)==0:0)A=0;else{Oi(A);A=a[i>>2]|0}if((A|0)!=(a[e>>2]|0)){L2(A);a[i>>2]=a[e>>2]}A=l+228|0;i=a[A>>2]|0;n=e+4|0;if((i|0)!=(a[n>>2]|0)){L2(i);a[A>>2]=a[n>>2]}A=l+244|0;i=a[A>>2]|0;n=e+8|0;if((i|0)!=(a[n>>2]|0)){L2(i);a[A>>2]=a[n>>2]}A=l+212|0;i=a[A>>2]|0;n=e+12|0;if((i|0)!=(a[n>>2]|0)){L2(i);a[A>>2]=a[n>>2]}l=l+260|0;f[l>>1]=f[l>>1]&-2|r[e+16>>0]&1;return}function qf(A,e){A=A|0;e=e|0;var i=0.0,r=0;r=a[e>>2]|0;if(r|0)a[A+16>>2]=r;r=a[e+4>>2]|0;if(r|0)a[A+20>>2]=r;i=+s[e+16>>3];if(i>=0.0)s[A+32>>3]=i;return}function $f(A,e,i,r){A=A|0;e=e|0;i=+i;r=+r;var f=0,n=0,l=0;f=k;k=k+64|0;n=f+32|0;l=f;a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2];s[l+16>>3]=+s[e>>3]+i;s[l+24>>3]=+s[e+8>>3]+r;a[n>>2]=a[l>>2];a[n+4>>2]=a[l+4>>2];a[n+8>>2]=a[l+8>>2];a[n+12>>2]=a[l+12>>2];a[n+16>>2]=a[l+16>>2];a[n+20>>2]=a[l+20>>2];a[n+24>>2]=a[l+24>>2];a[n+28>>2]=a[l+28>>2];nr(A,n,1);k=f;return}function Aa(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0.0,c=0.0,b=0.0,u=0.0;l=k;k=k+64|0;n=l;c=+s[i>>3];u=c+ +s[e>>3];b=+s[i+8>>3];t=b+ +s[e+8>>3];c=c+ +s[e+16>>3];b=b+ +s[e+24>>3];s[n>>3]=c;s[n+8>>3]=b;s[n+32>>3]=u;s[n+40>>3]=t;s[n+16>>3]=u;s[n+24>>3]=b;s[n+48>>3]=c;s[n+56>>3]=t;f=a[e+36>>2]|0;if(!f)f=a[i+56>>2]|0;i=a[e+32>>2]|0;if(!i)gA(137334,137342,623,137354);if(!(r[i>>0]|0))gA(137368,137342,624,137354);else{sr(A,i,n,4,1,f);k=l;return}}function ea(A,e,i,n,l,t,c,b){A=A|0;e=e|0;i=i|0;n=n|0;l=+l;t=t|0;c=c|0;b=b|0;var u=0.0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0.0,F=0,V=0,J=0,p=0.0,N=0.0,R=0,X=0,H=0,U=0;U=k;k=k+128|0;V=U+104|0;R=U+48|0;X=U+16|0;J=U;F=J;a[F>>2]=0;a[F+4>>2]=0;p=+s[n>>3];N=p-l;M=p+l;F=J+8|0;s[F>>3]=(+s[c+24>>3]-+s[c+8>>3])*.5+ +s[n+8>>3];Ki(A,1);y=X+16|0;W=X+4|0;z=X+24|0;Y=R+4|0;D=R+16|0;B=(b|0)==0;g=R+24|0;v=R+8|0;E=R+32|0;C=R+40|0;I=R+48|0;Z=t+16|0;G=t+4|0;m=X+8|0;h=0;while(1){if((h|0)>=(e|0))break;switch(r[i+(h*24|0)+6>>0]|0){case 108:{l=N;break}case 114:{l=M-+s[i+(h*24|0)+8>>3];break}default:l=p-+s[i+(h*24|0)+8>>3]*.5}s[n>>3]=l;Q=i+(h*24|0)+16|0;s[F>>3]=+s[F>>3]-+s[Q>>3];L=i+(h*24|0)+4|0;o=a[i+(h*24|0)>>2]|0;d=0;while(1){if((d|0)>=(f[L>>1]|0))break;w=o+4|0;b=a[w>>2]|0;if(b){s[y>>3]=+s[(+s[b+16>>3]>0.0?b:t)+16>>3];a[X>>2]=a[((a[b>>2]|0)==0?t:b)>>2];c=a[((a[b+4>>2]|0)==0?t:b)+4>>2]|0;a[W>>2]=c;b=a[b+24>>2]&127;if(!b)H=12;else b=a[z>>2]&-128|b}else{s[y>>3]=+s[Z>>3];a[X>>2]=a[t>>2];c=a[G>>2]|0;a[W>>2]=c;H=12}if((H|0)==12){H=0;b=a[z>>2]&-128}a[z>>2]=b;$i(A,c);a[R>>2]=a[o>>2];a[Y>>2]=X;s[D>>3]=+s[o+16>>3];if(B)u=1.0;else u=+s[o+24>>3];s[g>>3]=u;a[m>>2]=a[(a[w>>2]|0)+8>>2];a[v>>2]=a[o+8>>2];w=o+32|0;s[E>>3]=+s[w>>3];s[C>>3]=+s[Q>>3];r[I>>0]=108;s[J>>3]=l;a[V>>2]=a[J>>2];a[V+4>>2]=a[J+4>>2];a[V+8>>2]=a[J+8>>2];a[V+12>>2]=a[J+12>>2];qi(A,V,R);u=+s[w>>3]+l;s[n>>3]=u;o=o+56|0;d=d+1|0;l=u}h=h+1|0}_i(A);k=U;return}function ia(A){A=A|0;L2(a[A>>2]|0);L2(a[A+4>>2]|0);L2(a[A+8>>2]|0);L2(a[A+16>>2]|0);L2(a[A+12>>2]|0);L2(a[A+20>>2]|0);L2(a[A+24>>2]|0);return}function ra(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0,c=0,s=0;if(A|0){c=A+4|0;i=0;n=a[A>>2]|0;while(1){if((i|0)>=(f[c>>1]|0))break;s=n+4|0;e=0;r=a[n>>2]|0;while(1){if((e|0)>=(f[s>>1]|0))break;L2(a[r>>2]|0);l=a[r+8>>2]|0;if(l|0?(t=a[r+12>>2]|0,t|0):0)F5[t&127](l);e=e+1|0;r=r+56|0}i=i+1|0;n=n+24|0}e=a[A>>2]|0;if(e|0)L2(e);L2(A)}return}function fa(A){A=A|0;L2(a[A+32>>2]|0);L2(A);return}function aa(A,e){A=A|0;e=e|0;switch(r[A+4>>0]|0){case 1:{na(a[A>>2]|0);break}case 3:{fa(a[A>>2]|0);break}default:ra(a[A>>2]|0)}if(e|0)L2(A);return}function na(A){A=A|0;var e=0,i=0,r=0;r=A+84|0;if((a[A+100>>2]|0)==-1)Hk(a[r>>2]|0)|0;else{e=a[r>>2]|0;L2(a[A+92>>2]|0);L2(a[A+96>>2]|0);while(1){i=a[e>>2]|0;if(!i)break;la(i);e=e+4|0}L2(a[r>>2]|0)}ia(A);L2(A);return}function la(A){A=A|0;aa(A+88|0,0);ia(A);L2(A);return}function ta(A,e,i){A=A|0;e=e|0;i=i|0;var f=0;A=a[(a[(a[A+16>>2]|0)+104>>2]|0)+72>>2]|0;if((r[A+4>>0]|0)!=2?(f=ca(a[A>>2]|0,e)|0,(f|0)!=0):0){a[i>>2]=n[f+35>>0];A=f+48|0}else A=0;return A|0}function ca(A,e){A=A|0;e=e|0;var i=0,r=0;i=a[A+4>>2]|0;if(!((i|0)!=0?(p1(i,e)|0)==0:0))r=3;A:do{if((r|0)==3){i=a[A+84>>2]|0;while(1){A=a[i>>2]|0;if(!A){A=0;break A}A=sa(A,e)|0;if(!A)i=i+4|0;else break}}}while(0);return A|0}function sa(A,e){A=A|0;e=e|0;var i=0;i=a[A+4>>2]|0;if(!((i|0)!=0?(p1(i,e)|0)==0:0))if((r[A+92>>0]|0)==1)A=ca(a[A+88>>2]|0,e)|0;else A=0;return A|0}function ba(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;return 0}function ua(A){A=A|0;var e=0.0,i=0,n=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0;o=A+92|0;a[o>>2]=qF((a[A+100>>2]<<2)+4|0)|0;w=qF((a[A+104>>2]<<2)+4|0)|0;a[A+96>>2]=w;k=A+32|0;u=a[A+84>>2]|0;while(1){b=a[u>>2]|0;if(!b)break;A=f[b+82>>1]|0;e=+s[b+72>>3];if(A<<16>>16==1)n=~~e;else{n=~~((e-+(U((r[k>>0]|0)+-1|0,(A&65535)+-1|0)|0))/+(A&65535));n=(n|0)>1?n:1}t=f[b+80>>1]|0;e=+s[b+64>>3];if(t<<16>>16==1)c=~~e;else{c=~~((e-+(U((r[k>>0]|0)+-1|0,(t&65535)+-1|0)|0))/+(t&65535));c=(c|0)>1?c:1}h=l[b+86>>1]|0;i=(A&65535)+h|0;A=h;while(1){if((A|0)>=(i|0))break;h=(a[o>>2]|0)+(A<<2)|0;d=a[h>>2]|0;a[h>>2]=(d|0)>(n|0)?d:n;A=A+1|0}A=l[b+84>>1]|0;i=(t&65535)+A|0;while(1){if((A|0)>=(i|0))break;d=w+(A<<2)|0;h=a[d>>2]|0;a[d>>2]=(h|0)>(c|0)?h:c;A=A+1|0}u=u+4|0}return}function wa(A){A=A|0;var e=0,i=0;i=k;k=k+16|0;e=i;if(A>>>0<21)A=a[55840+(A<<2)>>2]|0;else{a[e>>2]=A;S4(194959,137395,e)|0;A=194959}k=i;return A|0}function ka(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,t=0,c=0,b=0,u=0,w=0,k=0;c=A+104|0;b=A+100|0;t=i+16|0;r=0;f=0;while(1){if((r|0)>(a[c>>2]|0))break;n=gd(i,wa(r)|0,1)|0;Td(n,137447,304,1)|0;u=n+16|0;a[(a[u>>2]|0)+176>>2]=0;k=qF((a[b>>2]<<2)+4|0)|0;w=a[u>>2]|0;a[w+172>>2]=k;a[w+184>>2]=0;w=qF((a[b>>2]<<2)+4|0)|0;a[(a[u>>2]|0)+180>>2]=w;if(!f)a[(a[t>>2]|0)+192>>2]=n;else a[(a[f+16>>2]|0)+164>>2]=n;r=r+1|0;f=n}t=e+16|0;r=0;f=0;while(1){if((r|0)>(a[b>>2]|0))break;n=gd(e,wa(r)|0,1)|0;Td(n,137447,304,1)|0;k=n+16|0;a[(a[k>>2]|0)+176>>2]=0;u=qF((a[c>>2]<<2)+4|0)|0;w=a[k>>2]|0;a[w+172>>2]=u;a[w+184>>2]=0;w=qF((a[c>>2]<<2)+4|0)|0;a[(a[k>>2]|0)+180>>2]=w;if(!f)a[(a[t>>2]|0)+192>>2]=n;else a[(a[f+16>>2]|0)+164>>2]=n;r=r+1|0;f=n}r=a[A+84>>2]|0;while(1){f=a[r>>2]|0;if(!f)break;k=f+84|0;w=gd(i,wa(l[k>>1]|0)|0,0)|0;k=gd(i,wa((l[f+80>>1]|0)+(l[k>>1]|0)|0)|0,0)|0;oa(i,w,k,~~+s[f+64>>3]);k=f+86|0;w=gd(e,wa(l[k>>1]|0)|0,0)|0;k=gd(e,wa((l[f+82>>1]|0)+(l[k>>1]|0)|0)|0,0)|0;oa(e,w,k,~~+s[f+72>>3]);r=r+4|0}ha(i);ha(e);return}function oa(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var n=0,t=0;n=th(A,e,i,0,0)|0;if(!n){t=th(A,e,i,0,1)|0;Td(t,137460,176,1)|0;f[(a[t+16>>2]|0)+170>>1]=r;e=e+16|0;A=a[e>>2]|0;n=a[A+180>>2]|0;if(!n)A=$F((a[A+184>>2]<<2)+8|0)|0;else A=eV(n,(a[A+184>>2]<<2)+8|0)|0;r=a[e>>2]|0;a[r+180>>2]=A;r=r+184|0;n=a[r>>2]|0;a[r>>2]=n+1;a[A+(n<<2)>>2]=t;e=a[e>>2]|0;a[(a[e+180>>2]|0)+(a[e+184>>2]<<2)>>2]=0;e=i+16|0;A=a[e>>2]|0;n=a[A+172>>2]|0;if(!n)A=$F((a[A+176>>2]<<2)+8|0)|0;else A=eV(n,(a[A+176>>2]<<2)+8|0)|0;r=a[e>>2]|0;a[r+172>>2]=A;r=r+176|0;i=a[r>>2]|0;a[r>>2]=i+1;a[A+(i<<2)>>2]=t;t=a[e>>2]|0;a[(a[t+172>>2]|0)+(a[t+176>>2]<<2)>>2]=0}else{t=(a[n+16>>2]|0)+170|0;i=l[t>>1]|0;f[t>>1]=(i|0)>(r|0)?i:r}return}function ha(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0;e=a[(a[A+16>>2]|0)+192>>2]|0;while(1){r=e+16|0;l=a[(a[r>>2]|0)+164>>2]|0;if(!l)break;if(th(A,e,l,0,0)|0){e=l;continue}n=th(A,e,l,0,1)|0;Td(n,137460,176,1)|0;f[(a[n+16>>2]|0)+170>>1]=0;e=a[r>>2]|0;i=a[e+180>>2]|0;if(!i)e=$F((a[e+184>>2]<<2)+8|0)|0;else e=eV(i,(a[e+184>>2]<<2)+8|0)|0;t=a[r>>2]|0;a[t+180>>2]=e;t=t+184|0;i=a[t>>2]|0;a[t>>2]=i+1;a[e+(i<<2)>>2]=n;r=a[r>>2]|0;a[(a[r+180>>2]|0)+(a[r+184>>2]<<2)>>2]=0;r=l+16|0;e=a[r>>2]|0;i=a[e+172>>2]|0;if(!i)e=$F((a[e+176>>2]<<2)+8|0)|0;else e=eV(i,(a[e+176>>2]<<2)+8|0)|0;i=a[r>>2]|0;a[i+172>>2]=e;i=i+176|0;t=a[i>>2]|0;a[i>>2]=t+1;a[e+(t<<2)>>2]=n;e=a[r>>2]|0;a[(a[e+172>>2]|0)+(a[e+176>>2]<<2)>>2]=0;e=l}return}function da(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;n=A+92|0;r=0;f=0;e=a[(a[(a[e+16>>2]|0)+192>>2]|0)+16>>2]|0;while(1){e=a[e+164>>2]|0;if(!e)break;e=a[e+16>>2]|0;l=e+232|0;a[(a[n>>2]|0)+(f<<2)>>2]=(a[l>>2]|0)-r;r=a[l>>2]|0;f=f+1|0}A=A+96|0;r=0;f=0;e=a[(a[(a[i+16>>2]|0)+192>>2]|0)+16>>2]|0;while(1){e=a[e+164>>2]|0;if(!e)break;e=a[e+16>>2]|0;l=e+232|0;a[(a[A>>2]|0)+(f<<2)>>2]=(a[l>>2]|0)-r;r=a[l>>2]|0;f=f+1|0}return}function Ba(A){A=A|0;var e=0,i=0,f=0,n=0,l=0;l=k;k=k+16|0;n=l+4|0;e=l;a[e>>2]=a[4647];i=a[A+100>>2]|0;if((i|0)!=1?(f=A+104|0,(a[f>>2]|0)!=1):0){a[A+92>>2]=qF((i<<2)+4|0)|0;a[A+96>>2]=qF((a[f>>2]<<2)+4|0)|0;r[n>>0]=r[e>>0]|0;r[n+1>>0]=r[e+1>>0]|0;r[n+2>>0]=r[e+2>>0]|0;r[n+3>>0]=r[e+3>>0]|0;f=kh(137473,n,0)|0;r[n>>0]=r[e>>0]|0;r[n+1>>0]=r[e+1>>0]|0;r[n+2>>0]=r[e+2>>0]|0;r[n+3>>0]=r[e+3>>0]|0;n=kh(137478,n,0)|0;Td(f,137483,280,1)|0;Td(n,137483,280,1)|0;ka(A,f,n);JV(f,2,2147483647)|0;JV(n,2,2147483647)|0;da(A,f,n);ga(f,n)}else ua(A);k=l;return}function ga(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=(a[e+16>>2]|0)+192|0;while(1){i=a[i>>2]|0;if(!i)break;f=i+16|0;i=a[f>>2]|0;r=a[i+172>>2]|0;if(r){L2(r);i=a[f>>2]|0}r=a[i+180>>2]|0;if(r){L2(r);i=a[f>>2]|0}i=i+164|0}Bh(A)|0;Bh(e)|0;return}function va(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0.0,d=0.0;o=k;k=k+272|0;u=o+104|0;w=o+136|0;t=o+72|0;c=o;n=o+144|0;a[c+48>>2]=A;switch(Md(A)|0){case 0:{i=a[A+60>>2]|0;break}case 1:{i=Id(A)|0;break}case 2:{i=Id(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)|0;break}default:{}}l=c+52|0;a[l>>2]=i;b=a[i+60>>2]|0;s[c+32>>3]=+s[e+16>>3];a[c+16>>2]=a[e+4>>2];a[c+20>>2]=a[e+8>>2];a[c+40>>2]=0;f=zl(a[e>>2]|0,w,c)|0;if(!f){co(u,128,n);r[e+82>>0]=0;i=b3(Ea(A,u)|0)|0;a[e>>2]=i;if((a[e+12>>2]|0)==1)i=EX(i)|0;else i=BX(i,a[l>>2]|0)|0;L2(a[e>>2]|0);a[e>>2]=i;RF(a[(a[b+16>>2]|0)+144>>2]|0,e);wo(u);i=a[w>>2]|0}else{i=f+4|0;if((r[i>>0]|0)==1){if((a[(a[f>>2]|0)+24>>2]|0)==0?Ca(A)|0:0){l=b3(Ca(A)|0)|0;a[(a[f>>2]|0)+24>>2]=l}b=Ia(b,a[f>>2]|0,0,c)|0;a[w>>2]=a[w>>2]|b;b=a[f>>2]|0;d=+s[b+64>>3]*.5;h=+s[b+72>>3]*.5;Za(t,-d,-h,d,h);b=a[f>>2]|0;a[u>>2]=a[t>>2];a[u+4>>2]=a[t+4>>2];a[u+8>>2]=a[t+8>>2];a[u+12>>2]=a[t+12>>2];a[u+16>>2]=a[t+16>>2];a[u+20>>2]=a[t+20>>2];a[u+24>>2]=a[t+24>>2];a[u+28>>2]=a[t+28>>2];Ga(b,u,15)}else{ma(a[(a[b+16>>2]|0)+144>>2]|0,a[f>>2]|0,c);u=a[f>>2]|0;h=+s[u+24>>3]*.5;d=+s[u+32>>3]*.5;Za(t,-h,-d,h,d);u=(a[f>>2]|0)+8|0;a[u>>2]=a[t>>2];a[u+4>>2]=a[t+4>>2];a[u+8>>2]=a[t+8>>2];a[u+12>>2]=a[t+12>>2];a[u+16>>2]=a[t+16>>2];a[u+20>>2]=a[t+20>>2];a[u+24>>2]=a[t+24>>2];a[u+28>>2]=a[t+28>>2]}s[e+24>>3]=+s[t+16>>3]-+s[t>>3];s[e+32>>3]=+s[t+24>>3]-+s[t+8>>3];a[e+72>>2]=f;if((r[i>>0]|0)==1){L2(a[e>>2]|0);a[e>>2]=b3(141611)|0}i=a[w>>2]|0}k=o;return i|0}function Ea(A,e){A=A|0;e=e|0;var i=0;A:do{switch(Md(A)|0){case 0:{uo(e,Vh(A)|0)|0;break}case 1:{uo(e,Vh(A)|0)|0;break}case 2:{uo(e,Vh(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)|0)|0;i=A+-48|0;uo(e,Vh(a[((a[A>>2]&3|0)==2?A:i)+40>>2]|0)|0)|0;if(!(Ih(Id(a[((a[A>>2]&3|0)==2?A:i)+40>>2]|0)|0)|0)){uo(e,141747)|0;break A}else{uo(e,137738)|0;break A}}default:{}}}while(0);i=e+4|0;A=a[i>>2]|0;if(A>>>0>=(a[e+8>>2]|0)>>>0){so(e,1)|0;A=a[i>>2]|0}r[A>>0]=0;e=a[e>>2]|0;a[i>>2]=e;return e|0}function Ca(A){A=A|0;var e=0,i=0;e=Ho(A,137729)|0;if(!((e|0)!=0?(r[e>>0]|0)!=0:0))i=3;do{if((i|0)==3){e=Ho(A,140823)|0;if(e|0?r[e>>0]|0:0)break;e=0}}while(0);return e|0}function Ia(A,e,i,t){A=A|0;e=e|0;i=i|0;t=t|0;var c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0;C=k;k=k+16|0;v=C+8|0;g=C;E=e+108|0;c=a[E>>2]|0;if(c|0)xf(t,c,186576);a[e+80>>2]=i;c=Wa(A,e,t)|0;d=e+36|0;A=f[d>>1]|0;if(!(A&128))r[e+32>>0]=2;i=e+33|0;if(!(A&32))r[i>>0]=1;Ba(e);u=a[e+104>>2]|0;o=r[e+32>>0]|0;A=U(u+1|0,o)|0;w=n[i>>0]<<1;h=a[e+100>>2]|0;o=U(h+1|0,o)|0;b=e+96|0;A=w+A|0;i=0;while(1){if((i|0)>=(u|0))break;A=(a[(a[b>>2]|0)+(i<<2)>>2]|0)+A|0;i=i+1|0}u=e+92|0;i=o+w|0;b=0;while(1){if((b|0)>=(h|0))break;i=(a[(a[u>>2]|0)+(b<<2)>>2]|0)+i|0;b=b+1|0}u=e+38|0;do{if(f[d>>1]&1){d=f[u>>1]|0;b=d&65535;if(d<<16>>16?(B=f[e+40>>1]|0,B<<16>>16):0){if(!((A|0)>(b|0)|(i|0)>(B&65535|0))){i=0;A=0;break}ao(0,137529,g)|0;c=1;i=0;A=0;break}ao(0,137563,v)|0;c=1}}while(0);v=l[u>>1]|0;s[e+64>>3]=+(((A|0)>(v|0)?A:v)|0);v=l[e+40>>1]|0;s[e+72>>3]=+(((i|0)>(v|0)?i:v)|0);if(a[E>>2]|0)qf(t,186576);k=C;return c|0}function Za(A,e,i,r,f){A=A|0;e=+e;i=+i;r=+r;f=+f;s[A>>3]=e;s[A+8>>3]=i;s[A+16>>3]=r;s[A+24>>3]=f;return}function Ga(A,e,i){A=A|0;e=e|0;i=i|0;var l=0,t=0,c=0,b=0.0,u=0.0,w=0,o=0,h=0.0,d=0.0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0.0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0.0,V=0;M=k;k=k+64|0;Y=M+32|0;D=M;W=a[A+84>>2]|0;c=a[A+80>>2]|0;if((c|0?(l=a[c+24>>2]|0,l|0):0)?(t=A+24|0,(a[t>>2]|0)==0):0)a[t>>2]=b3(l)|0;z=A+48|0;l=e+16|0;u=+s[l>>3];b=+s[e>>3];c=~~(u-b-+(~~+s[A+64>>3]|0));if((c|0)<=-1)gA(137496,137342,1761,137506);w=e+24|0;Z=+s[w>>3];o=e+8|0;h=+s[o>>3];d=+(~~+s[A+72>>3]|0);B=~~(Z-h-d);if((B|0)<=-1)gA(137519,137342,1764,137506);g=f[A+36>>1]|0;t=g&65535;A:do{if(t&1){e:do{if((c|0)>0)switch(t&6){case 4:{s[l>>3]=b+d;break e}case 2:{F=+(c|0);s[l>>3]=u+F;b=b+F;s[e>>3]=b;break e}default:{F=+(c>>>1|0);b=b+F;s[e>>3]=b;s[l>>3]=u-F;break e}}}while(0);if((B|0)>0)switch(g&24){case 16:{Z=h+d;s[w>>3]=Z;B=0;l=0;break A}case 8:{F=+(B|0);Z=Z+F;s[w>>3]=Z;s[o>>3]=h+F;B=0;l=0;break A}default:{F=+(B>>>1|0);s[o>>3]=h+F;Z=Z-F;s[w>>3]=Z;B=0;l=0;break A}}else{B=0;l=0}}else l=c}while(0);u=+(n[A+33>>0]|0);L=A+32|0;v=r[L>>0]|0;h=+(v<<24>>24);y=A+104|0;c=a[y>>2]|0;g=(l|0)/(c|0)|0;w=l-(U(g,c)|0)|0;w=~~(((w|0)>-1?.5:-.5)+ +(w|0));Q=A+96|0;o=v<<24>>24;l=~~(b+u+h);t=0;while(1){if((t|0)>(c|0))break;m=(a[Q>>2]|0)+(t<<2)|0;c=a[m>>2]|0;a[m>>2]=l;l=l+g+((t|0)<(w|0)&1)+c+o|0;t=t+1|0;c=a[y>>2]|0}m=A+100|0;c=a[m>>2]|0;g=(B|0)/(c|0)|0;o=B-(U(g,c)|0)|0;o=~~(((o|0)>-1?.5:-.5)+ +(o|0));G=A+92|0;w=v<<24>>24;l=~~(Z-u-h);t=0;while(1){if((t|0)>(c|0))break;I=(a[G>>2]|0)+(t<<2)|0;c=a[I>>2]|0;a[I>>2]=l;l=l-g+(((t|0)<(o|0))<<31>>31)-c-w|0;t=t+1|0;c=a[m>>2]|0}v=(i|0)==0;E=D+16|0;C=D+24|0;I=D+8|0;l=W;while(1){w=a[l>>2]|0;if(!w)break;c=f[w+84>>1]|0;if(v){t=0;o=f[w+80>>1]|0;B=f[w+86>>1]|0;g=f[w+82>>1]|0}else{t=c<<16>>16==0?8:0;B=f[w+86>>1]|0;t=B<<16>>16==0?t|4:t;o=f[w+80>>1]|0;g=f[w+82>>1]|0;t=(((o&65535)+(c&65535)|0)==(a[y>>2]|0)?t|2:t)|((g&65535)+(B&65535)|0)==(a[m>>2]|0)}V=a[Q>>2]|0;c=c&65535;s[D>>3]=+(a[V+(c<<2)>>2]|0);W=r[L>>0]|0;s[E>>3]=+((a[V+((o&65535)+c<<2)>>2]|0)-W|0);o=a[G>>2]|0;s[C>>3]=+(a[o+((B&65535)<<2)>>2]|0);s[I>>3]=+((a[o+((g&65535)+(B&65535)<<2)>>2]|0)+W|0);a[Y>>2]=a[D>>2];a[Y+4>>2]=a[D+4>>2];a[Y+8>>2]=a[D+8>>2];a[Y+12>>2]=a[D+12>>2];a[Y+16>>2]=a[D+16>>2];a[Y+20>>2]=a[D+20>>2];a[Y+24>>2]=a[D+24>>2];a[Y+28>>2]=a[D+28>>2];Qa(w,Y,t&i);l=l+4|0}r[A+35>>0]=i;a[z>>2]=a[e>>2];a[z+4>>2]=a[e+4>>2];a[z+8>>2]=a[e+8>>2];a[z+12>>2]=a[e+12>>2];a[z+16>>2]=a[e+16>>2];a[z+20>>2]=a[e+20>>2];a[z+24>>2]=a[e+24>>2];a[z+28>>2]=a[e+28>>2];k=M;return}function ma(A,e,i){A=A|0;e=e|0;i=i|0;var n=0,l=0,t=0.0,c=0.0,b=0,u=0,w=0.0,o=0.0,h=0.0,d=0,B=0.0,g=0.0,v=0.0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0.0,H=0.0,U=0.0;R=k;k=k+112|0;D=R+48|0;M=R+16|0;F=R;a[M>>2]=0;a[M+4>>2]=0;a[M+8>>2]=0;a[M+12>>2]=0;a[M+16>>2]=0;a[M+20>>2]=0;a[M+24>>2]=0;a[M+28>>2]=0;V=e+4|0;J=i+16|0;p=i+32|0;N=M+16|0;d=f[V>>1]|0;u=d<<16>>16;n=0;t=-1.0;b=0;while(1){if((b|0)>=(u|0)){n=1;break}l=a[e>>2]|0;if((f[l+(b*24|0)+4>>1]|0)>1){n=0;break}l=a[(a[l+(b*24|0)>>2]|0)+4>>2]|0;if(!l){c=+s[p>>3];s[N>>3]=c;l=J}else{if(a[l+24>>2]&127|0){n=0;break}c=+s[(+s[l+16>>3]>0.0?l:J)+16>>3];s[N>>3]=c;l=(a[l>>2]|0)==0?J:l}l=a[l>>2]|0;a[M>>2]=l;if(!(t==-1.0)){if(c!=t){n=0;break}}else t=c;if(n){if(A1(l,n)|0){n=0;break}}else n=l;b=b+1|0}r[e+6>>0]=n;W=i+48|0;z=i+20|0;Y=M+4|0;C=i+40|0;I=M+24|0;Z=A+144|0;G=D+4|0;E=F+8|0;m=D+16|0;Q=D+24|0;L=D+8|0;y=D+12|0;i=(n|0)==0;t=0.0;B=0.0;g=0.0;v=0.0;u=0;n=d;while(1){if((u|0)>=(n<<16>>16|0))break;c=0.0;h=0.0;b=0;o=0.0;t=0.0;l=a[e>>2]|0;while(1){if((b|0)>=(f[l+(u*24|0)+4>>1]|0))break;a[D>>2]=PF(a[(a[l+(u*24|0)>>2]|0)+(b*56|0)>>2]|0,a[W>>2]|0)|0;l=(a[e>>2]|0)+(u*24|0)|0;n=a[(a[l>>2]|0)+(b*56|0)+4>>2]|0;if(!n){s[N>>3]=+s[p>>3];a[M>>2]=a[J>>2];a[Y>>2]=a[z>>2];a[I>>2]=a[I>>2]&-128|a[C>>2]&127}else{n=a[n+24>>2]&127;if(!n)n=a[C>>2]&127;a[I>>2]=a[I>>2]&-128|n;d=a[(a[l>>2]|0)+(b*56|0)+4>>2]|0;s[N>>3]=+s[(+s[d+16>>3]>0.0?d:J)+16>>3];a[M>>2]=a[((a[d>>2]|0)==0?J:d)>>2];a[Y>>2]=a[((a[d+4>>2]|0)==0?J:d)+4>>2]}l=a[Z>>2]|0;a[G>>2]=y5[a[l>>2]&63](l,M,1)|0;AR(F,A,D);H=+s[F>>3];w=+s[E>>3];L2(a[(a[(a[e>>2]|0)+(u*24|0)>>2]|0)+(b*56|0)>>2]|0);l=a[e>>2]|0;d=a[l+(u*24|0)>>2]|0;a[d+(b*56|0)>>2]=a[D>>2];s[d+(b*56|0)+32>>3]=H;s[d+(b*56|0)+16>>3]=+s[m>>3];s[d+(b*56|0)+24>>3]=+s[Q>>3];a[d+(b*56|0)+4>>2]=a[G>>2];a[d+(b*56|0)+8>>2]=a[L>>2];a[d+(b*56|0)+12>>2]=a[y>>2];X=+s[N>>3];U=+s[Q>>3];c=U>c?U:c;h=H+h;b=b+1|0;o=X>o?X:o;t=w>t?w:t}s[l+(u*24|0)+8>>3]=h;n=(u|0)==0;do{if(i)if(n){w=o;c=o-c;n=l;break}else{w=o;c=g-v+o-c;n=l+(u*24|0)|0;break}else{w=t;c=n?o:t;n=l+(u*24|0)|0}}while(0);s[n+16>>3]=c;B=h>B?h:B;g=w+g;v=+s[l+(u*24|0)+16>>3]+v;u=u+1|0;n=f[V>>1]|0}s[e+24>>3]=B;s[e+32>>3]=n<<16>>16==1?t:g;k=R;return}function Qa(A,e,i){A=A|0;e=e|0;i=i|0;var l=0,t=0,c=0.0,b=0.0,u=0.0,w=0.0,o=0.0,h=0.0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0.0,m=0.0;Z=k;k=k+64|0;E=Z+32|0;I=Z;t=A+24|0;if((a[t>>2]|0)==0?(l=a[(a[A+96>>2]|0)+24>>2]|0,l|0):0)a[t>>2]=b3(l)|0;g=A+36|0;C=f[g>>1]|0;l=C&65535;A:do{if(l&1){c=+s[A+64>>3];h=+s[A+72>>3];t=e+16|0;b=+s[t>>3];w=+s[e>>3];u=b-w-c;e:do{if(u>0.0)switch(l&6){case 4:{b=w+c;s[t>>3]=b;c=w;break e}case 2:{b=u+b;s[t>>3]=b;c=w+u;s[e>>3]=c;break e}default:{o=u*.5;c=o+w;s[e>>3]=c;b=b-o;s[t>>3]=b;break e}}else c=w}while(0);l=e+24|0;o=+s[l>>3];t=e+8|0;u=+s[t>>3];w=o-u-h;if(w>0.0)switch(C&24){case 16:{w=u+h;s[l>>3]=w;break A}case 8:{h=w+o;s[l>>3]=h;u=u+w;s[t>>3]=u;w=h;break A}default:{w=w*.5;u=w+u;s[t>>3]=u;w=o-w;s[l>>3]=w;break A}}else w=o}else{c=+s[e>>3];u=+s[e+8>>3];b=+s[e+16>>3];w=+s[e+24>>3]}}while(0);B=A+48|0;a[B>>2]=a[e>>2];a[B+4>>2]=a[e+4>>2];a[B+8>>2]=a[e+8>>2];a[B+12>>2]=a[e+12>>2];a[B+16>>2]=a[e+16>>2];a[B+20>>2]=a[e+20>>2];a[B+24>>2]=a[e+24>>2];a[B+28>>2]=a[e+28>>2];r[A+35>>0]=i;m=+(n[A+33>>0]|0);G=+(n[A+34>>0]|0);o=c+m+G;s[I>>3]=o;h=u+m+G;B=I+8|0;s[B>>3]=h;u=b-m-G;e=I+16|0;s[e>>3]=u;w=w-m-G;d=I+24|0;s[d>>3]=w;t=A+88|0;switch(r[A+92>>0]|0){case 1:{C=a[t>>2]|0;a[E>>2]=a[I>>2];a[E+4>>2]=a[I+4>>2];a[E+8>>2]=a[I+8>>2];a[E+12>>2]=a[I+12>>2];a[E+16>>2]=a[I+16>>2];a[E+20>>2]=a[I+20>>2];a[E+24>>2]=a[I+24>>2];a[E+28>>2]=a[I+28>>2];Ga(C,E,i);break}case 3:{l=a[t>>2]|0;c=+s[l+24>>3];b=u-o-+s[l+16>>3];A:do{if(b>0.0)switch(C&6){case 4:{s[e>>3]=u-b;break A}case 2:{s[I>>3]=b+o;break A}default:break A}}while(0);c=w-h-c;A:do{if(c>0.0)switch(C&24){case 16:{s[d>>3]=w-c;break A}case 8:{s[B>>3]=c+h;break A}default:break A}}while(0);a[E>>2]=a[I>>2];a[E+4>>2]=a[I+4>>2];a[E+8>>2]=a[I+8>>2];a[E+12>>2]=a[I+12>>2];a[E+16>>2]=a[I+16>>2];a[E+20>>2]=a[I+20>>2];a[E+24>>2]=a[I+24>>2];a[E+28>>2]=a[I+28>>2];La(l,E);break}default:{l=a[t>>2]|0;c=+s[l+32>>3];b=u-o-+s[l+24>>3];A:do{if(b>0.0?(v=C&6,v<<16>>16!=6):0)switch(v&7){case 4:{s[e>>3]=u-b;break A}case 2:{s[I>>3]=b+o;break A}default:{m=b*.5;s[I>>3]=m+o;s[e>>3]=u-m;break A}}}while(0);c=w-h-c;A:do{if(c>0.0)switch(C&24){case 16:{s[d>>3]=w-c;break A}case 8:{s[B>>3]=c+h;break A}default:{m=c*.5;s[B>>3]=m+h;s[d>>3]=w-m;break A}}}while(0);C=l+8|0;a[C>>2]=a[I>>2];a[C+4>>2]=a[I+4>>2];a[C+8>>2]=a[I+8>>2];a[C+12>>2]=a[I+12>>2];a[C+16>>2]=a[I+16>>2];a[C+20>>2]=a[I+20>>2];a[C+24>>2]=a[I+24>>2];a[C+28>>2]=a[I+28>>2];I=f[g>>1]&768;ya(a[t>>2]|0,(I&1023)==512?108:(I&1023)==256?114:110)}}k=Z;return}function La(A,e){A=A|0;e=e|0;a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];a[A+16>>2]=a[e+16>>2];a[A+20>>2]=a[e+20>>2];a[A+24>>2]=a[e+24>>2];a[A+28>>2]=a[e+28>>2];return}function ya(A,e){A=A|0;e=e|0;var i=0,n=0,l=0;n=f[A+4>>1]|0;i=0;while(1){if((i|0)>=(n|0))break;l=(a[A>>2]|0)+(i*24|0)+6|0;if(!(r[l>>0]|0))r[l>>0]=e;i=i+1|0}return}function Wa(A,e,i){A=A|0;e=e|0;i=i|0;var n=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0;b=e+84|0;g=a[b>>2]|0;v=$V()|0;E=Ma()|0;t=0;n=0;s=xk(g)|0;while(1){if(!s)break;c=xk(a[s+8>>2]|0)|0;while(1){if(!c)break;c=a[c>>2]|0;t=t+1|0}n=n+1|0;if(r[s+12>>0]|0)pa(E,n);s=a[s>>2]|0}n=qF((t<<2)+4|0)|0;a[b>>2]=n;t=0;c=0;s=0;h=0;d=xk(g)|0;while(1){if(!d)break;B=h&65535;o=0;k=xk(a[d+8>>2]|0)|0;while(1){if(!k)break;w=a[k+8>>2]|0;a[n>>2]=w;s=za(A,w,e,i)|0|s;b=Ya(v,h,o,w)|0;f[w+86>>1]=B;f[w+84>>1]=b;b=b+(l[w+80>>1]|0)|0;u=h+(l[w+82>>1]|0)|0;if(Na(E,u)|0){o=w+100|0;r[o>>0]=r[o>>0]|2}o=b;n=n+4|0;k=a[k>>2]|0;t=(b|0)>(t|0)?b:t;c=(u|0)>(c|0)?u:c}h=h+1|0;d=a[d>>2]|0}a[e+100>>2]=c;a[e+104>>2]=t;Hk(g)|0;Hk(E)|0;iJ(v);return s|0}function za(A,e,i,t){A=A|0;e=e|0;i=i|0;t=t|0;var c=0.0,b=0.0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0.0;v=k;k=k+16|0;g=v+8|0;B=v;a[e+96>>2]=i;h=e+36|0;w=f[h>>1]|0;if(!(w&64)){if(!(f[i+36>>1]&64))u=2;else u=r[i+34>>0]|0;r[e+34>>0]=u}if(!(w&32)){u=r[i+88>>0]|0;if(u<<24>>24<=-1)if(!(f[i+36>>1]&32))u=1;else u=r[i+33>>0]|0;r[e+33>>0]=u}u=e+88|0;o=e+92|0;switch(r[o>>0]|0){case 1:{w=Ia(A,a[u>>2]|0,e,t)|0;i=a[u>>2]|0;u=w;w=i+64|0;i=i+72|0;break}case 3:{w=Da(a[u>>2]|0,t)|0;i=a[u>>2]|0;u=w;w=i+16|0;i=i+24|0;break}default:{ma(a[(a[A+16>>2]|0)+144>>2]|0,a[u>>2]|0,t);i=a[u>>2]|0;u=0;w=i+24|0;i=i+32|0}}c=+((n[e+33>>0]|0)+(n[e+34>>0]|0)<<1|0);b=+s[w>>3]+c;c=+s[i>>3]+c;i=e+38|0;do{if(f[h>>1]&1){w=f[i>>1]|0;if(w<<16>>16?(d=f[e+40>>1]|0,d<<16>>16):0){if(!(b>+(w&65535)|c>+(d&65535))){b=0.0;c=0.0;break}if((r[o>>0]|0)==3){b=0.0;c=0.0;break}ao(0,137614,B)|0;u=1;b=0.0;c=0.0;break}ao(0,137647,g)|0;u=1}}while(0);E=+(l[i>>1]|0);s[e+64>>3]=b>E?b:E;b=+(l[e+40>>1]|0);s[e+72>>3]=c>b?c:b;k=v;return u|0}function Ya(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,a=0,n=0,t=0,c=0;c=r+80|0;t=(l[c>>1]|0)+-1|0;n=0;A:while(1){f=i;while(1){if(n)break A;a=t+f|0;while(1){if((a|0)<(f|0)){i=f;n=1;continue A}if(lJ(A,a,e)|0)break;a=a+-1|0}f=a+1|0}}n=r+82|0;f=i;while(1){if((f|0)<(i+(l[c>>1]|0)|0))a=e;else break;while(1){if((a|0)>=((l[n>>1]|0)+e|0))break;aJ(A,f,a);a=a+1|0}f=f+1|0}return i|0}function Da(A,e){A=A|0;e=e|0;var i=0.0,f=0.0,n=0,l=0,t=0,c=0,b=0;b=k;k=k+16|0;t=b;l=b+8|0;e=e+52|0;n=A+32|0;Uv(l,a[e>>2]|0,a[n>>2]|0);c=a[l>>2]|0;l=a[l+4>>2]|0;if((l&c|0)==-1){a[t>>2]=a[n>>2];ao(1,137697,t)|0;e=1;f=0.0;i=0.0}else{r[(a[(a[e>>2]|0)+16>>2]|0)+114>>0]=1;e=0;f=+(l|0);i=+(c|0)}a[A>>2]=0;a[A+4>>2]=0;a[A+8>>2]=0;a[A+12>>2]=0;s[A+16>>3]=i;s[A+24>>3]=f;k=b;return e|0}function Ma(){return jk(55924,a[4581]|0)|0}function Fa(A,e,i){A=A|0;e=e|0;i=i|0;i=qF(12)|0;a[i>>2]=a[e>>2];return i|0}function Va(A,e,i){A=A|0;e=e|0;i=i|0;L2(e);return}function Ja(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;e=a[e>>2]|0;r=a[i>>2]|0;return((e|0)>(r|0)?1:((e|0)<(r|0))<<31>>31)|0}function pa(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+16|0;r=i;a[r>>2]=e;y5[a[A>>2]&63](A,r,1)|0;k=i;return}function Na(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+16|0;r=i;a[r>>2]=e;e=(y5[a[A>>2]&63](A,r,512)|0)!=0&1;k=i;return e|0}function Ra(A){A=A|0;var e=0;if(!(a[47375]|0)){e=qF((A<<2)+4|0)|0;a[47375]=e;a[e>>2]=189504;a[47386]=A}a[47387]=0;return}function Xa(){L2(a[47375]|0);a[47375]=0;a[47387]=0;return}function Ha(){a[47387]=0;return}function Ua(){var A=0,e=0,i=0;e=a[47387]|0;i=a[47375]|0;A=1;while(1){if((A|0)>(e|0)){A=5;break}if((a[(a[i+(A<<2)>>2]|0)+4>>2]|0)==(A|0))A=A+1|0;else{A=4;break}}if((A|0)==4)gA(138394,137741,59,137747);else if((A|0)==5)return}function xa(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0;f=a[47375]|0;n=a[f+(A<<2)>>2]|0;l=a[n>>2]|0;while(1){e=(A|0)/2|0;i=a[f+(e<<2)>>2]|0;r=f+(A<<2)|0;if((a[i>>2]|0)>=(l|0))break;a[r>>2]=i;a[i+4>>2]=A;A=e}a[r>>2]=n;a[n+4>>2]=A;return}function Ta(A){A=A|0;var e=0,i=0;i=k;k=k+16|0;e=a[47387]|0;if((e|0)==(a[47386]|0)){ao(1,137755,i)|0;A=1}else{e=e+1|0;a[47387]=e;a[(a[47375]|0)+(e<<2)>>2]=A;xa(e);Ua();A=0}k=i;return A|0}function ja(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;r=a[47375]|0;f=a[r+(A<<2)>>2]|0;n=a[f>>2]|0;l=a[47387]|0;t=(l|0)/2|0;while(1){if((A|0)>(t|0))break;i=A<<1;e=a[r+(i<<2)>>2]|0;if((i|0)<(l|0)){b=i|1;c=a[r+(b<<2)>>2]|0;s=(a[e>>2]|0)<(a[c>>2]|0);i=s?b:i;e=s?c:e}if((n|0)>=(a[e>>2]|0))break;a[r+(A<<2)>>2]=e;a[e+4>>2]=A;A=i}a[r+(A<<2)>>2]=f;a[f+4>>2]=A;return}function Pa(){var A=0,e=0,i=0,r=0;e=a[47387]|0;if(!e)A=0;else{r=a[47375]|0;i=r+4|0;A=a[i>>2]|0;a[i>>2]=a[r+(e<<2)>>2];e=e+-1|0;a[47387]=e;if(e|0)ja(1);Ua()}return A|0}function Sa(A,e){A=A|0;e=e|0;a[A>>2]=e;xa(a[A+4>>2]|0);Ua();return}function Oa(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0;u=A+16|0;t=a[u>>2]|0;t=(r[t+((a[i+12>>2]|0)*40|0)+36>>0]|0)!=(r[t+((a[i+16>>2]|0)*40|0)+36>>0]|0);c=~~((+s[e+64>>3]+-3.0-+s[e+48>>3])*.5);b=~~((+s[e+56>>3]+-3.0-+s[e+40>>3])*.5);n=(c|0)<(b|0)?c:b;w=e+4|0;f=0;while(1){A=a[w>>2]|0;if((f|0)>=(A|0)){n=f;break}l=a[e+8+(f<<2)>>2]|0;k=a[u>>2]|0;if((r[k+((a[l+12>>2]|0)*40|0)+36>>0]|0)==(r[k+((a[l+16>>2]|0)*40|0)+36>>0]|0)){n=f;break}Ka(l,n);f=f+1|0}while(1){if((n|0)>=(A|0))break;f=a[e+8+(n<<2)>>2]|0;if(t|(f|0)==(i|0)){Ka(f,r[(a[u>>2]|0)+((a[f+12>>2]|0)*40|0)+36>>0]|0?c:b);A=a[w>>2]|0}n=n+1|0}return}function Ka(A,e){A=A|0;e=e|0;var i=0,r=0;i=A+8|0;r=a[i>>2]|0;a[i>>2]=r+1;if((r|0)>=(e|0)){a[i>>2]=0;s[A>>3]=+s[A>>3]+16384.0}return}function _a(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0.0,w=0.0,o=0.0,h=0.0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0.0,G=0.0,m=0.0,Q=0.0,L=0,y=0,W=0.0;I=k;k=k+112|0;v=I+64|0;g=I+96|0;b=I+32|0;E=I;C=qF(28)|0;e=gh(A)|0;B=C+4|0;a[B>>2]=e;e=qF(e*72|0)|0;d=C+12|0;a[d>>2]=e;r=E+8|0;s[r>>3]=1797693134862315708145274.0e284;s[E>>3]=1797693134862315708145274.0e284;f=E+24|0;s[f>>3]=-1797693134862315708145274.0e284;n=E+16|0;s[n>>3]=-1797693134862315708145274.0e284;l=b+16|0;t=b+8|0;c=b+24|0;i=cd(A)|0;u=1797693134862315708145274.0e284;w=1797693134862315708145274.0e284;o=-1797693134862315708145274.0e284;h=-1797693134862315708145274.0e284;while(1){if(!i)break;L=i+16|0;y=a[L>>2]|0;G=(+s[y+96>>3]+ +s[y+88>>3])*.5;G=G<1.0?1.0:G;Z=+s[y+80>>3]*.5;Z=Z<1.0?1.0:Z;W=+s[y+16>>3];Q=W-G;s[b>>3]=Q;G=W+G;s[l>>3]=G;W=+s[y+24>>3];m=W-Z;s[t>>3]=m;Z=W+Z;s[c>>3]=Z;Q=+s[(u >3];s[E>>3]=Q;m=+s[(w>3];s[r>>3]=m;G=+s[(o>G?E:b)+16>>3];s[n>>3]=G;Z=+s[(h>Z?E:b)+24>>3];s[f>>3]=Z;y=e+40|0;a[y>>2]=a[b>>2];a[y+4>>2]=a[b+4>>2];a[y+8>>2]=a[b+8>>2];a[y+12>>2]=a[b+12>>2];a[y+16>>2]=a[b+16>>2];a[y+20>>2]=a[b+20>>2];a[y+24>>2]=a[b+24>>2];a[y+28>>2]=a[b+28>>2];a[e>>2]=a[e>>2]|1;a[(a[L>>2]|0)+112>>2]=e;e=e+72|0;i=sd(A,i)|0;u=Q;w=m;o=G;h=Z}s[E>>3]=u+-36.0;s[r>>3]=w+-36.0;s[n>>3]=o+36.0;s[f>>3]=h+36.0;y=a[d>>2]|0;f=a[B>>2]|0;a[v>>2]=a[E>>2];a[v+4>>2]=a[E+4>>2];a[v+8>>2]=a[E+8>>2];a[v+12>>2]=a[E+12>>2];a[v+16>>2]=a[E+16>>2];a[v+20>>2]=a[E+20>>2];a[v+24>>2]=a[E+24>>2];a[v+28>>2]=a[E+28>>2];f=tn(y,f,g,v)|0;if(a[47323]&1|0){d=a[d>>2]|0;L=a[B>>2]|0;y=a[g>>2]|0;a[v>>2]=a[E>>2];a[v+4>>2]=a[E+4>>2];a[v+8>>2]=a[E+8>>2];a[v+12>>2]=a[E+12>>2];a[v+16>>2]=a[E+16>>2];a[v+20>>2]=a[E+20>>2];a[v+24>>2]=a[E+24>>2];a[v+28>>2]=a[E+28>>2];qa(d,L,v,f,y)}r=C+8|0;a[r>>2]=qF((a[g>>2]|0)*72|0)|0;a[C>>2]=a[g>>2];i=a[g>>2]|0;e=0;while(1){if((e|0)>=(i|0))break;y=(a[r>>2]|0)+(e*72|0)+40|0;L=f+(e<<5)|0;a[y>>2]=a[L>>2];a[y+4>>2]=a[L+4>>2];a[y+8>>2]=a[L+8>>2];a[y+12>>2]=a[L+12>>2];a[y+16>>2]=a[L+16>>2];a[y+20>>2]=a[L+20>>2];a[y+24>>2]=a[L+24>>2];a[y+28>>2]=a[L+28>>2];e=e+1|0}L2(f);a[v>>2]=a[E>>2];a[v+4>>2]=a[E+4>>2];a[v+8>>2]=a[E+8>>2];a[v+12>>2]=a[E+12>>2];a[v+16>>2]=a[E+16>>2];a[v+20>>2]=a[E+20>>2];a[v+24>>2]=a[E+24>>2];a[v+28>>2]=a[E+28>>2];a[C+16>>2]=$a(C,v)|0;k=I;return C|0}function qa(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0.0,l=0,t=0,c=0.0,b=0.0,u=0.0,w=0,o=0,h=0,d=0,B=0,g=0.0,v=0.0,E=0.0;h=k;k=k+128|0;o=h+96|0;w=h+64|0;t=h+32|0;d=h+16|0;B=h;b=+s[i+16>>3];u=+s[i>>3];c=+s[i+24>>3];n=+s[i+8>>3];l=a[15712]|0;Q3(137770,l)|0;a[B>>2]=10;a[B+4>>2]=10;a[B+8>>2]=~~(b+10.0-u);a[B+12>>2]=~~(c+10.0-n);f3(l,138200,B)|0;s[d>>3]=10.0-u;s[d+8>>3]=10.0-n;f3(l,138248,d)|0;Q3(138265,l)|0;i=0;while(1){if((i|0)>=(e|0))break;E=+s[A+(i*72|0)+48>>3];v=+s[A+(i*72|0)+56>>3];g=+s[A+(i*72|0)+64>>3];s[t>>3]=+s[A+(i*72|0)+40>>3];s[t+8>>3]=E;s[t+16>>3]=v;s[t+24>>3]=g;f3(l,138284,t)|0;i=i+1|0}Q3(138302,l)|0;i=0;while(1){if((i|0)>=(f|0))break;g=+s[r+(i<<5)+8>>3];v=+s[r+(i<<5)+16>>3];E=+s[r+(i<<5)+24>>3];s[w>>3]=+s[r+(i<<5)>>3];s[w+8>>3]=g;s[w+16>>3]=v;s[w+24>>3]=E;f3(l,138321,w)|0;i=i+1|0}Q3(138339,l)|0;s[o>>3]=u;s[o+8>>3]=n;s[o+16>>3]=b;s[o+24>>3]=c;f3(l,138321,o)|0;Q3(138086,l)|0;k=h;return}function $a(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0;m=k;k=k+32|0;g=m+16|0;c=m;C=a[A>>2]|0;Z=vi(C<<2|2)|0;G=jk(55960,a[4581]|0)|0;E=jk(55996,a[4581]|0)|0;C=qF(C<<7)|0;f=qF(a[A>>2]<<4)|0;I=A+8|0;n=e+16|0;l=c+8|0;t=e+24|0;b=e+8|0;i=0;while(1){if((i|0)>=(a[A>>2]|0))break;u=a[I>>2]|0;w=u+(i*72|0)|0;a[u+(i*72|0)+32>>2]=4;o=u+(i*72|0)+36|0;a[o>>2]=f+(i<<2<<2);h=u+(i*72|0)+40|0;r=+s[u+(i*72|0)+56>>3];if(r<+s[n>>3]){s[c>>3]=r;s[l>>3]=+s[u+(i*72|0)+48>>3];a[g>>2]=a[c>>2];a[g+4>>2]=a[c+4>>2];a[g+8>>2]=a[c+8>>2];a[g+12>>2]=a[c+12>>2];B=An(Z,G,g,C,1)|0;a[B+20>>2]=w;a[a[o>>2]>>2]=B}r=+s[u+(i*72|0)+64>>3];if(r<+s[t>>3]){s[c>>3]=+s[h>>3];s[l>>3]=r;a[g>>2]=a[c>>2];a[g+4>>2]=a[c+4>>2];a[g+8>>2]=a[c+8>>2];a[g+12>>2]=a[c+12>>2];B=An(Z,E,g,C,0)|0;a[B+20>>2]=w;a[(a[o>>2]|0)+4>>2]=B}if(+s[h>>3]>+s[e>>3]){a[g>>2]=a[h>>2];a[g+4>>2]=a[h+4>>2];a[g+8>>2]=a[h+8>>2];a[g+12>>2]=a[h+12>>2];B=An(Z,G,g,C,1)|0;a[B+24>>2]=w;a[(a[o>>2]|0)+8>>2]=B}if(+s[u+(i*72|0)+48>>3]>+s[b>>3]){a[g>>2]=a[h>>2];a[g+4>>2]=a[h+4>>2];a[g+8>>2]=a[h+8>>2];a[g+12>>2]=a[h+12>>2];B=An(Z,E,g,C,0)|0;a[B+24>>2]=w;a[(a[o>>2]|0)+12>>2]=B}i=i+1|0}w=qF(a[Z>>2]<<2)|0;d=A+4|0;B=A+12|0;o=g+8|0;b=0;h=0;u=0;while(1){i=a[d>>2]|0;if((u|0)>=(i|0)){e=0;break}n=a[B>>2]|0;l=n+(u*72|0)|0;t=n+(u*72|0)+36|0;a[t>>2]=w+(b<<2);e=n+(u*72|0)+40|0;a[g>>2]=a[e>>2];a[g+4>>2]=a[e+4>>2];a[g+8>>2]=a[e+8>>2];a[g+12>>2]=a[e+12>>2];e=n+(u*72|0)+56|0;c=n+(u*72|0)+32|0;i=y5[a[E>>2]&63](E,g,512)|0;while(1){if(!i)break;if(!(+s[i+8>>3]<+s[e>>3]))break;L=a[i>>2]|0;Q=a[t>>2]|0;f=a[c>>2]|0;a[c>>2]=f+1;a[Q+(f<<2)>>2]=L;a[(a[i>>2]|0)+24>>2]=l;i=y5[a[E>>2]&63](E,i,8)|0}f=n+(u*72|0)+64|0;i=y5[a[G>>2]&63](G,g,512)|0;while(1){if(!i){v=20;break}r=+s[f>>3];if(!(+s[i+16>>3] >2]|0;Q=a[t>>2]|0;L=a[c>>2]|0;a[c>>2]=L+1;a[Q+(L<<2)>>2]=e;a[(a[i>>2]|0)+24>>2]=l;i=y5[a[G>>2]&63](G,i,8)|0}if((v|0)==20){v=0;r=+s[f>>3]}s[o>>3]=r;e=n+(u*72|0)+56|0;i=y5[a[E>>2]&63](E,g,512)|0;while(1){if(!i){v=25;break}r=+s[e>>3];if(!(+s[i+8>>3] >2]|0;Q=a[t>>2]|0;L=a[c>>2]|0;a[c>>2]=L+1;a[Q+(L<<2)>>2]=y;a[(a[i>>2]|0)+20>>2]=l;i=y5[a[E>>2]&63](E,i,8)|0}if((v|0)==25){v=0;r=+s[e>>3]}s[g>>3]=r;s[o>>3]=+s[n+(u*72|0)+48>>3];i=y5[a[G>>2]&63](G,g,512)|0;while(1){if(!i)break;if(!(+s[i+16>>3]<+s[f>>3]))break;Q=a[i>>2]|0;L=a[t>>2]|0;y=a[c>>2]|0;a[c>>2]=y+1;a[L+(y<<2)>>2]=Q;a[(a[i>>2]|0)+20>>2]=l;i=y5[a[G>>2]&63](G,i,8)|0}y=a[c>>2]|0;b=y+b|0;h=(y|0)>(h|0)?y:h;u=u+1|0}while(1){if((e|0)>=(i|0))break;en((a[B>>2]|0)+(e*72|0)|0);e=e+1|0;i=a[d>>2]|0}i=a[Z>>2]|0;y=a[Z+16>>2]|0;a[y+(i*40|0)+32>>2]=i;i=i+1|0;a[y+(i*40|0)+32>>2]=i;gi(Z,h);i=0;while(1){if((i|0)>=(a[A>>2]|0))break;rn((a[I>>2]|0)+(i*72|0)|0,Z);i=i+1|0}Hk(G)|0;Hk(E)|0;L2(C);fn(Z);di(Z);k=m;return Z|0}function An(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0;l=y5[a[e>>2]&63](e,i,512)|0;do{if(!l){A=Ei(A)|0;if(!f)gA(138183,138131,291,138190);else{l=a[A+32>>2]|0;t=f+(l<<5)|0;f=f+(l<<5)+8|0;a[f>>2]=a[i>>2];a[f+4>>2]=a[i+4>>2];a[f+8>>2]=a[i+8>>2];a[f+12>>2]=a[i+12>>2];a[t>>2]=A;r[A+36>>0]=n;y5[a[e>>2]&63](e,t,1)|0;break}}else t=l}while(0);return a[t>>2]|0}function en(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;A:do{if((+s[A+64>>3]+-3.0-+s[A+48>>3])*.5<2.0){l=a[A+32>>2]|0;t=A+36|0;n=0;while(1){if((n|0)>=(l|0))break A;e=a[(a[t>>2]|0)+(n<<2)>>2]|0;e:do{if(r[e+36>>0]|0){f=a[e+20>>2]|0;if((f|0)==(A|0)){i=a[e+24>>2]|0;e=i;i=a[i>>2]|0;do{a[e>>2]=i|8;e=a[a[e+36>>2]>>2]|0;if(!e)break e;e=a[e+24>>2]|0;i=a[e>>2]|0}while(!(i&1|0))}else{i=f;e=a[f>>2]|0;do{a[i>>2]=e|8;e=a[(a[i+36>>2]|0)+8>>2]|0;if(!e)break e;i=a[e+20>>2]|0;e=a[i>>2]|0}while(!(e&1|0))}}}while(0);n=n+1|0}}}while(0);A:do{if((+s[A+56>>3]+-3.0-+s[A+40>>3])*.5<2.0){l=a[A+32>>2]|0;t=A+36|0;n=0;while(1){if((n|0)>=(l|0))break A;e=a[(a[t>>2]|0)+(n<<2)>>2]|0;e:do{if(!(r[e+36>>0]|0)){f=a[e+20>>2]|0;if((f|0)==(A|0)){i=a[e+24>>2]|0;e=i;i=a[i>>2]|0;do{a[e>>2]=i|16;e=a[(a[e+36>>2]|0)+4>>2]|0;if(!e)break e;e=a[e+24>>2]|0;i=a[e>>2]|0}while(!(i&1|0))}else{i=f;e=a[f>>2]|0;do{a[i>>2]=e|16;e=a[(a[i+36>>2]|0)+12>>2]|0;if(!e)break e;i=a[e+20>>2]|0;e=a[i>>2]|0}while(!(e&1|0))}}}while(0);n=n+1|0}}}while(0);return}function rn(A,e){A=A|0;e=e|0;var i=0,r=0,f=0.0,n=0.0,l=0.0,t=0,c=0,b=0,u=0,w=0,k=0,o=0.0,h=0;n=+s[A+56>>3]-+s[A+40>>3];l=+s[A+64>>3]-+s[A+48>>3];f=(l+n)*.5+500.0;if((l+-3.0)*.5<2.0){b=(a[A>>2]&8|0)==0;f=b?16384.0:f;o=b?16384.0:n}else o=n;if((n+-3.0)*.5<2.0){b=(a[A>>2]&16|0)==0;l=b?16384.0:l;f=b?16384.0:f}b=A+36|0;i=a[b>>2]|0;r=a[i+8>>2]|0;if((r|0)!=0?(t=a[i+4>>2]|0,(t|0)!=0):0){t=Ci(e,r,t,f)|0;r=A+4|0;i=a[r>>2]|0;a[r>>2]=i+1;a[A+8+(i<<2)>>2]=t;i=a[b>>2]|0}r=a[i+4>>2]|0;if((r|0)!=0?(c=a[i>>2]|0,(c|0)!=0):0){c=Ci(e,r,c,f)|0;t=A+4|0;i=a[t>>2]|0;a[t>>2]=i+1;a[A+8+(i<<2)>>2]=c;i=a[b>>2]|0}r=a[i+8>>2]|0;if((r|0)!=0?(u=a[i+12>>2]|0,(u|0)!=0):0){u=Ci(e,r,u,f)|0;c=A+4|0;i=a[c>>2]|0;a[c>>2]=i+1;a[A+8+(i<<2)>>2]=u;i=a[b>>2]|0}r=a[i+12>>2]|0;if((r|0)!=0?(w=a[i>>2]|0,(w|0)!=0):0){w=Ci(e,r,w,f)|0;u=A+4|0;i=a[u>>2]|0;a[u>>2]=i+1;a[A+8+(i<<2)>>2]=w;i=a[b>>2]|0}r=a[i+4>>2]|0;if((r|0)!=0?(k=a[i+12>>2]|0,(k|0)!=0):0){k=Ci(e,r,k,l)|0;w=A+4|0;i=a[w>>2]|0;a[w>>2]=i+1;a[A+8+(i<<2)>>2]=k;i=a[b>>2]|0}r=a[i+8>>2]|0;if(r|0?(h=a[i>>2]|0,h|0):0){e=Ci(e,r,h,o)|0;k=A+4|0;h=a[k>>2]|0;a[k>>2]=h+1;a[A+8+(h<<2)>>2]=e}return}function fn(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0;c=k;k=k+16|0;t=c+8|0;l=c;f=A+16|0;n=a[15712]|0;r=0;while(1){if((r|0)>=(a[A>>2]|0)){e=10;break}e=a[f>>2]|0;i=e+(r*40|0)+20|0;if((a[i>>2]|0)==0?(a[l>>2]=r,f3(n,138096,l)|0,(a[i>>2]|0)==0):0){e=5;break}e=e+(r*40|0)+24|0;if((a[e>>2]|0)==0?(a[t>>2]=r,f3(n,138148,t)|0,(a[e>>2]|0)==0):0){e=8;break}r=r+1|0}if((e|0)==5)gA(138118,138131,311,138138);else if((e|0)==8)gA(138170,138131,313,138138);else if((e|0)==10){k=c;return}}function an(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,a=0.0;f=+s[e+8>>3];a=+s[i+8>>3];if(!(f>a))if(!(f>3];f=+s[i>>3];if(a>f)A=1;else A=(a >31}else A=-1;else A=1;return A|0}function nn(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,a=0.0;f=+s[e>>3];a=+s[i>>3];if(!(f>a))if(!(f>3];f=+s[i+8>>3];if(a>f)A=1;else A=(a >31}else A=-1;else A=1;return A|0}function ln(A){A=A|0;var e=0,i=0;i=A+8|0;L2(a[(a[i>>2]|0)+36>>2]|0);e=A+12|0;L2(a[(a[e>>2]|0)+36>>2]|0);L2(a[i>>2]|0);L2(a[e>>2]|0);Zi(a[A+16>>2]|0);Hk(a[A+20>>2]|0)|0;Hk(a[A+24>>2]|0)|0;L2(A);return}function tn(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;o=k;k=k+32|0;l=o;t=e<<2;f=t+4|0;t=t+5|0;w=$F(t*56|0)|0;t=qF(t<<2)|0;n=f*5|1;c=$F(n*72|0)|0;b=n<<5;s=qF(b)|0;b=qF(b)|0;a[l>>2]=a[r>>2];a[l+4>>2]=a[r+4>>2];a[l+8>>2]=a[r+8>>2];a[l+12>>2]=a[r+12>>2];a[l+16>>2]=a[r+16>>2];a[l+20>>2]=a[r+20>>2];a[l+24>>2]=a[r+24>>2];a[l+28>>2]=a[r+28>>2];cn(A,e,l,w,0);l8(173);sn(f,t);vn(f,w,t,n,c)|0;u=bn(f,w,c,0,s)|0;a[l>>2]=a[r>>2];a[l+4>>2]=a[r+4>>2];a[l+8>>2]=a[r+8>>2];a[l+12>>2]=a[r+12>>2];a[l+16>>2]=a[r+16>>2];a[l+20>>2]=a[r+20>>2];a[l+24>>2]=a[r+24>>2];a[l+28>>2]=a[r+28>>2];cn(A,e,l,w,1);sn(f,t);vn(f,w,t,n,c)|0;f=bn(f,w,c,1,b)|0;n=qF(U(u<<5,f)|0)|0;e=0;A=0;while(1){if((e|0)>=(f|0))break;l=b+(e<<5)|0;r=0;while(1){if((r|0)>=(u|0))break;h=A+((un(n+(A<<5)|0,l,s+(r<<5)|0)|0)!=0&1)|0;r=r+1|0;A=h}e=e+1|0}h=eV(n,A<<5)|0;L2(w);L2(t);L2(c);L2(s);L2(b);a[i>>2]=A;k=o;return h|0}function cn(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0;c=k;k=k+96|0;l=c+64|0;t=c;a[l>>2]=a[i>>2];a[l+4>>2]=a[i+4>>2];a[l+8>>2]=a[i+8>>2];a[l+12>>2]=a[i+12>>2];a[l+16>>2]=a[i+16>>2];a[l+20>>2]=a[i+20>>2];a[l+24>>2]=a[i+24>>2];a[l+28>>2]=a[i+28>>2];Bn(l,f,1,t);i=gn(r,1,t)|0;n=0;while(1){if((n|0)>=(e|0))break;s=A+(n*72|0)+40|0;a[l>>2]=a[s>>2];a[l+4>>2]=a[s+4>>2];a[l+8>>2]=a[s+8>>2];a[l+12>>2]=a[s+12>>2];a[l+16>>2]=a[s+16>>2];a[l+20>>2]=a[s+20>>2];a[l+24>>2]=a[s+24>>2];a[l+28>>2]=a[s+28>>2];Bn(l,f,0,t);i=gn(r,i,t)|0;n=n+1|0}k=c;return}function sn(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;i=0;while(1){if((i|0)>(A|0))break;a[e+(i<<2)>>2]=i;i=i+1|0}n=A+1|0;i=1;while(1){if((i|0)>(A|0))break;l=~~(+c8()*+(n-i|0)+ +(i|0));r=e+(i<<2)|0;f=e+(l<<2)|0;if((i|0)!=(l|0)){l=a[r>>2]|0;a[r>>2]=a[f>>2];a[f>>2]=l}i=i+1|0}return}function bn(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0;n=A*5|0;c=n+1|0;b=qF(c<<2)|0;a[47388]=qF(c<<4)|0;a[47389]=qF((A*56|0)+56|0)|0;c=qF(A<<2)|0;a[47390]=c;s=0;while(1){if((s|0)>(n|0))break;if(wn(i+(s*72|0)|0,e)|0)break;s=s+1|0}l=a[47388]|0;t=a[47389]|0;n=1;while(1){if((n|0)>(A|0))break;a[l+(n<<4)+8>>2]=a[e+(n*56|0)+48>>2];u=e+(n*56|0)+44|0;a[l+(n<<4)+4>>2]=a[u>>2];a[l+(n<<4)>>2]=n;w=t+(n*56|0)|0;k=e+(n*56|0)|0;a[w>>2]=a[k>>2];a[w+4>>2]=a[k+4>>2];a[w+8>>2]=a[k+8>>2];a[w+12>>2]=a[k+12>>2];a[t+(n*56|0)+16>>2]=a[u>>2];a[t+(n*56|0)+32>>2]=n;a[t+(n*56|0)+48>>2]=1;n=n+1|0}a[47391]=A;a[47392]=0;a[c>>2]=1;n=a[i+(s*72|0)+40>>2]|0;if((n|0)<=0){n=a[i+(s*72|0)+48>>2]|0;if((n|0)>0)n=kn(b,f,0,e,i,0,s,n,r,2)|0;else n=0}else n=kn(b,f,0,e,i,0,s,n,r,1)|0;L2(b);L2(a[47388]|0);L2(a[47389]|0);L2(a[47390]|0);return n|0}function un(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,a=0.0,n=0.0;n=+s[(+s[e>>3]>+s[i>>3]?e:i)>>3];a=+s[(+s[e+16>>3]<+s[i+16>>3]?e:i)+16>>3];s[A+16>>3]=a;s[A>>3]=n;f=+s[(+s[e+8>>3]>+s[i+8>>3]?e:i)+8>>3];r=+s[(+s[e+24>>3]<+s[i+24>>3]?e:i)+24>>3];s[A+24>>3]=r;s[A+8>>3]=f;return!(n>=a)&!(f>=r)&1|0}function wn(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0;f=a[A+4>>2]|0;do{if((a[A+68>>2]|0)!=2?!((f|0)<1|(a[A>>2]|0)<1):0){if(!((a[A+40>>2]|0)<1?(a[A+44>>2]|0)<1:0)){if((a[A+48>>2]|0)>=1){A=0;break}if((a[A+52>>2]|0)>=1){A=0;break}}i=+s[e+(f*56|0)+24>>3];r=+s[e+(f*56|0)+8>>3];if(!(i>r+1.0e-07))if(i >3]>+s[e+(f*56|0)>>3]&1;else A=1}else A=0}while(0);return A|0}function kn(A,e,i,r,f,n,l,t,c,b){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;t=t|0;c=c|0;b=b|0;var u=0,w=0,k=0.0,o=0.0,h=0.0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,z=0,Y=0,D=0,M=0.0,F=0,V=0.0,J=0,p=0,N=0,R=0,X=0;L=(c|0)==0;Q=l;A:while(1){Z=f+(Q*72|0)|0;if((Q|0)<1)break;l=A+(Q<<2)|0;if(a[l>>2]|0)break;a[l>>2]=1;E=f+(Q*72|0)+8|0;g=f+(Q*72|0)+16|0;o=+s[g>>3];C=f+(Q*72|0)+24|0;I=f+(Q*72|0)+32|0;k=+s[I>>3];if((o>k?(m=a[Z>>2]|0,M=+s[r+(m*56|0)>>3],M==+s[r+(m*56|0)+16>>3]):0)?(m=a[f+(Q*72|0)+4>>2]|0,V=+s[r+(m*56|0)>>3],V==+s[r+(m*56|0)+16>>3]):0){l=e+(i<<5)|0;if(L){s[l>>3]=M;h=o;o=V}else{s[l>>3]=k;h=-M;k=-V}s[e+(i<<5)+8>>3]=k;s[e+(i<<5)+16>>3]=o;s[e+(i<<5)+24>>3]=h;i=i+1|0}l=f+(Q*72|0)+40|0;G=a[l>>2]|0;do{if((G|0)<1?(J=f+(Q*72|0)+44|0,(a[J>>2]|0)<1):0){l=f+(Q*72|0)+48|0;w=f+(Q*72|0)+52|0;if((a[l>>2]|0)>0?(p=a[w>>2]|0,(p|0)>0):0){u=a[f+(p*72|0)>>2]|0;b=a[Z>>2]|0;if((p|0)==(t|0)){b=on(n,b,u)|0;i=kn(A,e,i,r,f,n,a[w>>2]|0,Q,c,1)|0;n=b;b=1;break}else{b=on(n,u,b)|0;i=kn(A,e,i,r,f,n,a[l>>2]|0,Q,c,1)|0;n=b;l=w;b=1;break}}i=kn(A,e,i,r,f,n,G,Q,c,2)|0;i=kn(A,e,i,r,f,n,a[J>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,n,a[l>>2]|0,Q,c,1)|0;l=w;b=1}else X=19}while(0);do{if((X|0)==19){X=0;m=f+(Q*72|0)+48|0;d=a[m>>2]|0;if((d|0)<1?(N=f+(Q*72|0)+52|0,(a[N>>2]|0)<1):0){w=f+(Q*72|0)+44|0;if((G|0)>0?(R=a[w>>2]|0,(R|0)>0):0){u=a[f+(Q*72|0)+4>>2]|0;b=a[f+(G*72|0)+4>>2]|0;if((R|0)==(t|0)){b=on(n,b,u)|0;i=kn(A,e,i,r,f,n,a[w>>2]|0,Q,c,2)|0;n=b;b=2;break}else{b=on(n,u,b)|0;i=kn(A,e,i,r,f,n,a[l>>2]|0,Q,c,2)|0;n=b;l=w;b=2;break}}i=kn(A,e,i,r,f,n,G,Q,c,2)|0;i=kn(A,e,i,r,f,n,a[w>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,n,a[m>>2]|0,Q,c,1)|0;l=N;b=1;break}v=f+(Q*72|0)+44|0;B=a[v>>2]|0;u=(B|0)>0;if((G|0)>0){if(u){if((d|0)>0?(y=f+(Q*72|0)+52|0,z=a[y>>2]|0,(z|0)>0):0){w=a[f+(z*72|0)>>2]|0;u=a[f+(G*72|0)+4>>2]|0;if(!((b|0)==2&(z|0)==(t|0))?!((b|0)==1&(B|0)==(t|0)):0){b=on(n,w,u)|0;i=kn(A,e,i,r,f,n,a[l>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,n,a[m>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,b,a[v>>2]|0,Q,c,2)|0;n=b;l=y;b=1;break}b=on(n,u,w)|0;i=kn(A,e,i,r,f,n,a[v>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,n,a[y>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,b,a[l>>2]|0,Q,c,2)|0;n=b;l=m;b=1;break}u=a[Z>>2]|0;if(+W(+(+s[I>>3]-+s[r+(u*56|0)+24>>3]))<=1.0e-07?+W(+(+s[C>>3]-+s[r+(u*56|0)+16>>3]))<=1.0e-07:0){w=a[f+(G*72|0)+4>>2]|0;u=a[r+(u*56|0)+44>>2]|0;if((b|0)==1&(G|0)==(t|0)){b=on(n,u,w)|0;i=kn(A,e,i,r,f,n,a[l>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,b,a[m>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,b,a[v>>2]|0,Q,c,2)|0;n=b;l=f+(Q*72|0)+52|0;b=1;break}else{b=on(n,w,u)|0;i=kn(A,e,i,r,f,n,a[v>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,n,a[m>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,n,a[f+(Q*72|0)+52>>2]|0,Q,c,1)|0;n=b;b=2;break}}w=a[f+(Q*72|0)+4>>2]|0;u=a[f+(G*72|0)+4>>2]|0;if((b|0)==1&(B|0)==(t|0)){b=on(n,u,w)|0;i=kn(A,e,i,r,f,n,a[v>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,b,a[f+(Q*72|0)+52>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,b,a[m>>2]|0,Q,c,1)|0;n=b;b=2;break}else{b=on(n,w,u)|0;i=kn(A,e,i,r,f,n,a[l>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,n,a[m>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,n,a[f+(Q*72|0)+52>>2]|0,Q,c,1)|0;n=b;l=v;b=2;break}}}else if(!u)break A;if((d|0)>0?(Y=f+(Q*72|0)+52|0,D=a[Y>>2]|0,(D|0)>0):0){w=a[Z>>2]|0;if(+W(+(+s[g>>3]-+s[r+(w*56|0)+8>>3]))<=1.0e-07?+W(+(+s[E>>3]-+s[r+(w*56|0)>>3]))<=1.0e-07:0){u=a[f+(D*72|0)>>2]|0;if((b|0)==2&(d|0)==(t|0)){b=on(n,u,w)|0;i=kn(A,e,i,r,f,n,a[m>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,b,a[l>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,b,a[f+(Q*72|0)+44>>2]|0,Q,c,2)|0;n=b;l=Y;b=1;break}else{b=on(n,w,u)|0;i=kn(A,e,i,r,f,n,a[f+(Q*72|0)+44>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,n,a[Y>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,n,a[l>>2]|0,Q,c,2)|0;n=b;l=m;b=1;break}}u=a[f+(D*72|0)>>2]|0;w=a[r+((a[f+(Q*72|0)+4>>2]|0)*56|0)+44>>2]|0;if((b|0)==2&(D|0)==(t|0)){b=on(n,w,u)|0;i=kn(A,e,i,r,f,n,a[Y>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,b,a[f+(Q*72|0)+44>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,b,a[l>>2]|0,Q,c,2)|0;n=b;l=m;b=1;break}else{b=on(n,u,w)|0;i=kn(A,e,i,r,f,n,a[l>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,n,a[m>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,n,a[f+(Q*72|0)+44>>2]|0,Q,c,2)|0;n=b;l=Y;b=1;break}}k=+s[g>>3];w=a[Z>>2]|0;if(((+W(+(k-+s[r+(w*56|0)+8>>3]))<=1.0e-07?+W(+(+s[E>>3]-+s[r+(w*56|0)>>3]))<=1.0e-07:0)?(F=a[f+(Q*72|0)+4>>2]|0,+W(+(+s[I>>3]-+s[r+(F*56|0)+8>>3]))<=1.0e-07):0)?+W(+(+s[C>>3]-+s[r+(F*56|0)>>3]))<=1.0e-07:0)if((b|0)==1){b=on(n,w,F)|0;i=kn(A,e,i,r,f,n,a[l>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,n,a[f+(Q*72|0)+44>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,b,a[f+(Q*72|0)+52>>2]|0,Q,c,1)|0;n=b;l=m;b=1;break}else{b=on(n,F,w)|0;i=kn(A,e,i,r,f,n,a[f+(Q*72|0)+52>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,n,a[m>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,b,a[l>>2]|0,Q,c,2)|0;n=b;l=f+(Q*72|0)+44|0;b=2;break}t=a[f+(Q*72|0)+4>>2]|0;if(((+W(+(k-+s[r+(t*56|0)+24>>3]))<=1.0e-07?+W(+(+s[E>>3]-+s[r+(t*56|0)+16>>3]))<=1.0e-07:0)?+W(+(+s[I>>3]-+s[r+(w*56|0)+24>>3]))<=1.0e-07:0)?+W(+(+s[C>>3]-+s[r+(w*56|0)+16>>3]))<=1.0e-07:0){u=a[r+(t*56|0)+44>>2]|0;t=a[r+(w*56|0)+44>>2]|0;if((b|0)==1){b=on(n,t,u)|0;i=kn(A,e,i,r,f,n,a[l>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,n,a[f+(Q*72|0)+44>>2]|0,Q,c,2)|0;i=kn(A,e,i,r,f,b,a[f+(Q*72|0)+52>>2]|0,Q,c,1)|0;n=b;l=m;b=1;break}else{b=on(n,u,t)|0;i=kn(A,e,i,r,f,n,a[f+(Q*72|0)+52>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,n,a[m>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,b,a[l>>2]|0,Q,c,2)|0;n=b;l=f+(Q*72|0)+44|0;b=2;break}}i=kn(A,e,i,r,f,n,G,Q,c,2)|0;i=kn(A,e,i,r,f,n,a[m>>2]|0,Q,c,1)|0;i=kn(A,e,i,r,f,n,a[f+(Q*72|0)+44>>2]|0,Q,c,2)|0;l=f+(Q*72|0)+52|0;b=1}}while(0);t=Q;Q=a[l>>2]|0}return i|0}function on(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0;f=k;k=k+16|0;d=f+4|0;t=f;r=(a[47392]|0)+1|0;a[47392]=r;b=a[47389]|0;hn(e,i,d,t);d=a[d>>2]|0;l=a[b+(e*56|0)+32+(d<<2)>>2]|0;t=a[b+(i*56|0)+32+(a[t>>2]<<2)>>2]|0;u=a[47391]|0;n=u+1|0;u=u+2|0;a[47391]=u;h=a[47388]|0;a[h+(n<<4)>>2]=e;a[h+(u<<4)>>2]=i;w=h+(l<<4)+4|0;o=h+(n<<4)+4|0;a[o>>2]=a[w>>2];a[h+(a[w>>2]<<4)+8>>2]=n;a[h+(n<<4)+8>>2]=u;a[h+(u<<4)+4>>2]=n;c=h+(t<<4)+8|0;a[h+(u<<4)+8>>2]=a[c>>2];a[h+(a[c>>2]<<4)+4>>2]=u;a[w>>2]=t;a[c>>2]=l;c=b+(e*56|0)+48|0;w=a[c>>2]|0;t=b+(i*56|0)+48|0;s=a[t>>2]|0;a[b+(e*56|0)+16+(d<<2)>>2]=i;a[b+(e*56|0)+32+(w<<2)>>2]=n;a[b+(e*56|0)+16+(w<<2)>>2]=a[h+(a[o>>2]<<4)>>2];a[b+(i*56|0)+32+(s<<2)>>2]=u;a[b+(i*56|0)+16+(s<<2)>>2]=e;a[c>>2]=(a[c>>2]|0)+1;a[t>>2]=(a[t>>2]|0)+1;i=a[47390]|0;a[i+(A<<2)>>2]=l;a[i+(r<<2)>>2]=n;k=f;return r|0}function hn(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0.0,l=0,t=0,c=0.0,s=0.0,b=0,u=0,w=0;b=a[47389]|0;u=b+(A*56|0)|0;w=b+(e*56|0)|0;f=0;n=-4.0;t=0;while(1){if((t|0)==4)break;l=a[b+(A*56|0)+16+(t<<2)>>2]|0;if((l|0)>=1?(c=+dn(u,b+(l*56|0)|0,w),c>n):0){f=t;n=c}t=t+1|0}a[i>>2]=f;f=0;t=0;n=-4.0;while(1){if((t|0)==4)break;l=a[b+(e*56|0)+16+(t<<2)>>2]|0;if((l|0)>=1?(s=+dn(w,b+(l*56|0)|0,u),s>n):0){f=t;n=s}t=t+1|0}a[r>>2]=f;return}function dn(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,a=0.0,n=0.0,l=0.0;n=+s[A>>3];l=+s[e>>3]-n;r=+s[A+8>>3];a=+s[e+8>>3]-r;n=+s[i>>3]-n;r=+s[i+8>>3]-r;f=r*a+n*l;if(!(r*l-n*a>=0.0))r=-f/(+z(+(r*r+n*n))*+z(+(a*a+l*l)))+-2.0;else r=f/(+z(+(r*r+n*n))*+z(+(a*a+l*l)));return+r}function Bn(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0.0,b=0.0;a[r>>2]=a[A>>2];a[r+4>>2]=a[A+4>>2];a[r+8>>2]=a[A+8>>2];a[r+12>>2]=a[A+12>>2];l=r+32|0;t=A+16|0;a[l>>2]=a[t>>2];a[l+4>>2]=a[t+4>>2];a[l+8>>2]=a[t+8>>2];a[l+12>>2]=a[t+12>>2];if(!i){f=A+8|0;n=t;l=A+24|0;i=A}else{f=A+24|0;n=A;l=A+8|0;i=t}c=+s[n>>3];b=+s[l>>3];s[r+16>>3]=+s[i>>3];s[r+24>>3]=b;s[r+48>>3]=c;s[r+56>>3]=+s[f>>3];A:do{if(e|0){i=0;while(1){if((i|0)==4)break A;t=r+(i<<4)+8|0;b=+s[t>>3];e=r+(i<<4)|0;s[t>>3]=+s[e>>3];s[e>>3]=-b;i=i+1|0}}}while(0);return}function gn(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;l=e+3|0;t=e+1|0;c=e+2|0;s=A+(e*56|0)+44|0;b=A+(l*56|0)+44|0;r=0;f=e;while(1){if((f|0)>(l|0))break;do{if((f|0)!=(e|0))if((f|0)==(l|0)){a[b>>2]=e;n=c;break}else{a[A+(f*56|0)+44>>2]=f+1;n=f+-1|0;break}else{a[s>>2]=t;n=l}}while(0);a[A+(f*56|0)+48>>2]=n;a[A+(f*56|0)+32>>2]=0;w=A+(f*56|0)|0;u=i+(r<<4)|0;a[w>>2]=a[u>>2];a[w+4>>2]=a[u+4>>2];a[w+8>>2]=a[u+8>>2];a[w+12>>2]=a[u+12>>2];z6(A+(n*56|0)+16|0,u|0,16)|0;r=r+1|0;f=f+1|0}return e+4|0}function vn(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0;a[47393]=r<<1;a[47394]=r;s=qF(r*80|0)|0;a[47395]=1;a[47396]=1;Y6(f|0,0,r*72|0)|0;n=En(a[i+4>>2]|0,e,f,s)|0;r=1;while(1){if((r|0)>(A|0))break;a[e+(r*56|0)+40>>2]=n;a[e+(r*56|0)+36>>2]=n;r=r+1|0}c=Cn(A)|0;n=2;t=1;while(1){if((t|0)>(c|0))break;r=In(A,t+-1|0)|0;l=In(A,t)|0;while(1){if((r|0)>=(l|0)){r=1;break}Zn(a[i+(n<<2)>>2]|0,e,f,s);r=r+1|0;n=n+1|0}while(1){if((r|0)>(A|0))break;Gn(r,e,f,s);r=r+1|0}t=t+1|0}r=In(A,c)|0;while(1){if((r|0)>=(A|0))break;Zn(a[i+(n<<2)>>2]|0,e,f,s);n=n+1|0;r=r+1|0}L2(s);return a[47395]|0}function En(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0;f=Wn()|0;a[r+(f*40|0)>>2]=2;B=r+(f*40|0)+8|0;c=e+(A*56|0)|0;b=e+(A*56|0)+16|0;Mn(B,c,b);w=Wn()|0;a[r+(f*40|0)+36>>2]=w;a[r+(w*40|0)>>2]=3;a[r+(w*40|0)+28>>2]=f;t=Wn()|0;a[r+(f*40|0)+32>>2]=t;a[r+(t*40|0)>>2]=2;d=r+(t*40|0)+8|0;Fn(d,c,b);a[r+(t*40|0)+28>>2]=f;b=Wn()|0;a[r+(t*40|0)+32>>2]=b;a[r+(b*40|0)>>2]=3;a[r+(b*40|0)+28>>2]=t;c=Wn()|0;a[r+(t*40|0)+36>>2]=c;a[r+(c*40|0)>>2]=1;a[r+(c*40|0)+4>>2]=A;a[r+(c*40|0)+28>>2]=t;t=Wn()|0;a[r+(c*40|0)+32>>2]=t;a[r+(t*40|0)>>2]=3;a[r+(t*40|0)+28>>2]=c;n=Wn()|0;a[r+(c*40|0)+36>>2]=n;a[r+(n*40|0)>>2]=3;a[r+(n*40|0)+28>>2]=c;c=yn(i)|0;l=yn(i)|0;u=yn(i)|0;k=yn(i)|0;o=i+(c*72|0)+8|0;h=i+(l*72|0)+8|0;g=i+(k*72|0)+24|0;a[g>>2]=a[B>>2];a[g+4>>2]=a[B+4>>2];a[g+8>>2]=a[B+8>>2];a[g+12>>2]=a[B+12>>2];z6(h|0,B|0,16)|0;a[o>>2]=a[h>>2];a[o+4>>2]=a[h+4>>2];a[o+8>>2]=a[h+8>>2];a[o+12>>2]=a[h+12>>2];o=i+(c*72|0)+24|0;h=i+(l*72|0)+24|0;B=i+(u*72|0)+8|0;a[B>>2]=a[d>>2];a[B+4>>2]=a[d+4>>2];a[B+8>>2]=a[d+8>>2];a[B+12>>2]=a[d+12>>2];z6(h|0,d|0,16)|0;a[o>>2]=a[h>>2];a[o+4>>2]=a[h+4>>2];a[o+8>>2]=a[h+8>>2];a[o+12>>2]=a[h+12>>2];s[i+(k*72|0)+16>>3]=1073741824.0;s[i+(k*72|0)+8>>3]=1073741824.0;s[i+(u*72|0)+32>>3]=-1073741824.0;s[i+(u*72|0)+24>>3]=-1073741824.0;a[i+(l*72|0)>>2]=A;a[i+(c*72|0)+4>>2]=A;a[i+(l*72|0)+40>>2]=k;a[i+(c*72|0)+40>>2]=k;a[i+(l*72|0)+48>>2]=u;a[i+(c*72|0)+48>>2]=u;a[i+(u*72|0)+40>>2]=c;a[i+(k*72|0)+48>>2]=c;a[i+(u*72|0)+44>>2]=l;a[i+(k*72|0)+52>>2]=l;a[i+(c*72|0)+56>>2]=t;a[i+(l*72|0)+56>>2]=n;a[i+(u*72|0)+56>>2]=b;a[i+(k*72|0)+56>>2]=w;a[i+(l*72|0)+68>>2]=1;a[i+(c*72|0)+68>>2]=1;a[i+(k*72|0)+68>>2]=1;a[i+(u*72|0)+68>>2]=1;a[r+(w*40|0)+24>>2]=k;a[r+(b*40|0)+24>>2]=u;a[r+(t*40|0)+24>>2]=c;a[r+(n*40|0)+24>>2]=l;a[e+(A*56|0)+32>>2]=1;return f|0}function Cn(A){A=A|0;var e=0.0;e=+(A|0);A=0;while(1){if(!(e>=1.0))break;e=+a1(e);A=A+1|0}return A+-1|0}function In(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;r=+(A|0);i=r;A=0;while(1){if((A|0)>=(e|0))break;i=+a1(i);A=A+1|0}return~~+H(+(r/i))|0}function Zn(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0.0,t=0.0,c=0,b=0,u=0,w=0,o=0,h=0.0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,U=0,x=0,T=0,j=0,P=0,S=0,O=0;S=k;k=k+96|0;x=S+32|0;f=S+16|0;T=S;B=x;c=e+(A*56|0)|0;d=B+56|0;do{a[B>>2]=a[c>>2];B=B+4|0;c=c+4|0}while((B|0)<(d|0));j=x+16|0;P=x+24|0;l=+s[P>>3];D=x+8|0;t=+s[D>>3];do{if(!(l>t+1.0e-07)){if(!(l >3]>+s[x>>3]:0){Y=4;break}Y=(Ln(A,e,1)|0)==0;f=a[x+36>>2]|0;if(Y){u=0;Y=7}else{f=mn(x,j,f,e,r)|0;Y=20}}else Y=4}while(0);if((Y|0)==4){a[f>>2]=a[x>>2];a[f+4>>2]=a[x+4>>2];a[f+8>>2]=a[x+8>>2];a[f+12>>2]=a[x+12>>2];a[x>>2]=a[j>>2];a[x+4>>2]=a[j+4>>2];a[x+8>>2]=a[j+8>>2];a[x+12>>2]=a[j+12>>2];a[j>>2]=a[f>>2];a[j+4>>2]=a[f+4>>2];a[j+8>>2]=a[f+8>>2];a[j+12>>2]=a[f+12>>2];y=x+36|0;z=a[y>>2]|0;Y=x+40|0;f=a[Y>>2]|0;a[y>>2]=f;a[Y>>2]=z;if(!(Ln(A,e,2)|0)){u=1;Y=7}else{f=mn(x,j,f,e,r)|0;Y=19}}if((Y|0)==7){b=mn(x,j,f,e,r)|0;f=yn(i)|0;a[i+(f*72|0)+68>>2]=1;B=i+(f*72|0)|0;c=i+(b*72|0)|0;d=B+72|0;do{a[B>>2]=a[c>>2];B=B+4|0;c=c+4|0}while((B|0)<(d|0));h=+s[D>>3];s[i+(f*72|0)+16>>3]=h;s[i+(b*72|0)+32>>3]=h;h=+s[x>>3];s[i+(f*72|0)+8>>3]=h;s[i+(b*72|0)+24>>3]=h;a[i+(b*72|0)+48>>2]=f;a[i+(b*72|0)+52>>2]=0;a[i+(f*72|0)+40>>2]=b;a[i+(f*72|0)+44>>2]=0;n=a[i+(f*72|0)+48>>2]|0;if((n|0)>0){c=i+(n*72|0)+40|0;if((a[c>>2]|0)==(b|0))a[c>>2]=f;n=i+(n*72|0)+44|0;if((a[n>>2]|0)==(b|0))a[n>>2]=f}n=a[i+(f*72|0)+52>>2]|0;if((n|0)>0){c=i+(n*72|0)+40|0;if((a[c>>2]|0)==(b|0))a[c>>2]=f;n=i+(n*72|0)+44|0;if((a[n>>2]|0)==(b|0))a[n>>2]=f}y=Wn()|0;Y=Wn()|0;z=i+(b*72|0)+56|0;L=a[z>>2]|0;a[r+(L*40|0)>>2]=2;Q=r+(L*40|0)+8|0;a[Q>>2]=a[x>>2];a[Q+4>>2]=a[x+4>>2];a[Q+8>>2]=a[x+8>>2];a[Q+12>>2]=a[x+12>>2];a[r+(L*40|0)+4>>2]=A;a[r+(L*40|0)+32>>2]=Y;a[r+(L*40|0)+36>>2]=y;a[r+(y*40|0)>>2]=3;a[r+(y*40|0)+24>>2]=b;a[r+(y*40|0)+28>>2]=L;a[r+(Y*40|0)>>2]=3;a[r+(Y*40|0)+24>>2]=f;a[r+(Y*40|0)+28>>2]=L;a[z>>2]=y;a[i+(f*72|0)+56>>2]=Y;if(u)Y=19;else Y=20}if((Y|0)==19)if(!(Ln(A,e,1)|0)){n=1;Y=21}else{n=1;Y=32}else if((Y|0)==20)if(!(Ln(A,e,2)|0)){n=0;Y=21}else{n=0;Y=32}if((Y|0)==21){w=mn(j,x,a[x+40>>2]|0,e,r)|0;u=yn(i)|0;a[i+(u*72|0)+68>>2]=1;B=i+(u*72|0)|0;c=i+(w*72|0)|0;d=B+72|0;do{a[B>>2]=a[c>>2];B=B+4|0;c=c+4|0}while((B|0)<(d|0));h=+s[P>>3];s[i+(u*72|0)+16>>3]=h;s[i+(w*72|0)+32>>3]=h;h=+s[j>>3];s[i+(u*72|0)+8>>3]=h;s[i+(w*72|0)+24>>3]=h;a[i+(w*72|0)+48>>2]=u;a[i+(w*72|0)+52>>2]=0;a[i+(u*72|0)+40>>2]=w;a[i+(u*72|0)+44>>2]=0;c=a[i+(u*72|0)+48>>2]|0;if((c|0)>0){b=i+(c*72|0)+40|0;if((a[b>>2]|0)==(w|0))a[b>>2]=u;c=i+(c*72|0)+44|0;if((a[c>>2]|0)==(w|0))a[c>>2]=u}c=a[i+(u*72|0)+52>>2]|0;if((c|0)>0){b=i+(c*72|0)+40|0;if((a[b>>2]|0)==(w|0))a[b>>2]=u;c=i+(c*72|0)+44|0;if((a[c>>2]|0)==(w|0))a[c>>2]=u}L=Wn()|0;z=Wn()|0;y=i+(w*72|0)+56|0;Q=a[y>>2]|0;a[r+(Q*40|0)>>2]=2;m=r+(Q*40|0)+8|0;a[m>>2]=a[j>>2];a[m+4>>2]=a[j+4>>2];a[m+8>>2]=a[j+8>>2];a[m+12>>2]=a[j+12>>2];a[r+(Q*40|0)+4>>2]=A;a[r+(Q*40|0)+32>>2]=z;a[r+(Q*40|0)+36>>2]=L;a[r+(L*40|0)>>2]=3;a[r+(L*40|0)+24>>2]=w;a[r+(L*40|0)+28>>2]=Q;a[r+(z*40|0)>>2]=3;a[r+(z*40|0)+24>>2]=u;a[r+(z*40|0)+28>>2]=Q;a[y>>2]=L;a[i+(u*72|0)+56>>2]=z;z=f;f=0}else if((Y|0)==32){z=f;w=mn(j,x,a[x+40>>2]|0,e,r)|0;f=1}A:do{if((z|0)>0){L=i+(w*72|0)+24|0;y=i+(w*72|0)+32|0;Q=(f|0)!=0;Z=n?e+(A*56|0)+48|0:e+(A*56|0)+44|0;G=T+8|0;n=0;f=0;I=z;e:while(1){c=i+(I*72|0)|0;E=i+(I*72|0)+24|0;if(!(zn(E,L)|0))break A;b=i+(I*72|0)+56|0;v=a[b>>2]|0;u=Wn()|0;o=Wn()|0;a[r+(v*40|0)>>2]=1;a[r+(v*40|0)+4>>2]=A;a[r+(v*40|0)+32>>2]=u;a[r+(v*40|0)+36>>2]=o;a[r+(u*40|0)>>2]=3;a[r+(u*40|0)+24>>2]=I;a[r+(u*40|0)+28>>2]=v;a[r+(o*40|0)>>2]=3;C=yn(i)|0;a[r+(o*40|0)+24>>2]=C;m=i+(C*72|0)|0;a[i+(C*72|0)+68>>2]=1;a[r+(o*40|0)+28>>2]=v;n=(I|0)==(z|0)?C:n;v=i+(I*72|0)+32|0;if(+W(+(+s[v>>3]-+s[y>>3]))<=1.0e-07?+W(+(+s[E>>3]-+s[L>>3]))<=1.0e-07:0)f=C;B=m;d=B+72|0;do{a[B>>2]=a[c>>2];B=B+4|0;c=c+4|0}while((B|0)<(d|0));a[b>>2]=u;a[i+(C*72|0)+56>>2]=o;g=i+(I*72|0)+48|0;b=i+(I*72|0)+52|0;c=(a[b>>2]|0)<1;do{if((a[g>>2]|0)<1){if(c)break e;B=i+(I*72|0)+40|0;c=a[B>>2]|0;do{if((c|0)>0?(p=i+(I*72|0)+44|0,N=a[p>>2]|0,(N|0)>0):0){d=i+(I*72|0)+60|0;c=a[d>>2]|0;if((c|0)<=0){a[i+(C*72|0)+40>>2]=N;a[i+(C*72|0)+44>>2]=-1;a[p>>2]=-1;a[i+(N*72|0)+48>>2]=C;break}if((a[i+(I*72|0)+64>>2]|0)==1){a[i+(C*72|0)+40>>2]=N;a[p>>2]=-1;a[i+(C*72|0)+44>>2]=c;a[i+((a[B>>2]|0)*72|0)+48>>2]=I;o=C;u=N}else{a[i+(C*72|0)+44>>2]=-1;g=i+(C*72|0)+40|0;a[g>>2]=a[p>>2];u=a[B>>2]|0;a[p>>2]=u;a[B>>2]=c;a[i+(c*72|0)+48>>2]=I;o=I;c=a[g>>2]|0}a[i+(u*72|0)+48>>2]=o;a[i+(c*72|0)+48>>2]=C;a[i+(C*72|0)+60>>2]=0;a[d>>2]=0}else Y=77}while(0);do{if((Y|0)==77){Y=0;u=i+(c*72|0)+48|0;o=a[u>>2]|0;c=i+(c*72|0)+52|0;if((o|0)>0?(a[c>>2]|0)>0:0){c=a[i+(o*72|0)+4>>2]|0;if((c|0)>0?(Qn(c,e,j)|0)==0:0){a[i+(C*72|0)+44>>2]=-1;a[i+(I*72|0)+44>>2]=-1;a[B>>2]=-1;a[i+((a[i+(C*72|0)+40>>2]|0)*72|0)+52>>2]=C;break}a[i+(I*72|0)+44>>2]=-1;a[i+(C*72|0)+44>>2]=-1;a[i+(C*72|0)+40>>2]=-1;a[i+((a[B>>2]|0)*72|0)+48>>2]=I;break}a[u>>2]=I;a[c>>2]=C}}while(0);if(+W(+(+s[v>>3]-+s[y>>3]))<=1.0e-07?Q&+W(+(+s[E>>3]-+s[L>>3]))<=1.0e-07:0){c=a[Z>>2]|0;if((c|0)>0?(Qn(c,e,x)|0)!=0:0){a[i+((a[b>>2]|0)*72|0)+40>>2]=I;u=i+(C*72|0)+52|0;c=C}else{a[i+((a[i+(C*72|0)+52>>2]|0)*72|0)+44>>2]=C;u=b;c=I}a[u>>2]=-1;a[i+(c*72|0)+48>>2]=-1;c=a[b>>2]|0;break}c=a[b>>2]|0;b=i+(c*72|0)+40|0;u=a[b>>2]|0;o=i+(c*72|0)+44|0;if((u|0)>0?(R=a[o>>2]|0,X=(u|0)==(I|0),(R|0)>0):0){a[i+(c*72|0)+60>>2]=X?R:u;a[i+(c*72|0)+64>>2]=X?1:2}a[b>>2]=I;a[o>>2]=C}else{if(!c){l=+s[v>>3];t=+s[D>>3];h=l-t;if(!(+W(+h)<=1.0e-07)){s[G>>3]=l;l=+s[x>>3];s[T>>3]=(+s[j>>3]-l)*(h/(+s[P>>3]-t))+l;B=(Yn(T,E)|0)!=0}else B=+s[E>>3]>+s[x>>3];d=i+(I*72|0)+40|0;c=a[d>>2]|0;do{if((c|0)>0?(H=i+(I*72|0)+44|0,U=a[H>>2]|0,(U|0)>0):0){o=i+(I*72|0)+60|0;c=a[o>>2]|0;if((c|0)<=0){a[i+(C*72|0)+40>>2]=U;a[i+(C*72|0)+44>>2]=-1;a[H>>2]=-1;a[i+(U*72|0)+48>>2]=C;break}if((a[i+(I*72|0)+64>>2]|0)==1){a[i+(C*72|0)+40>>2]=U;a[H>>2]=-1;a[i+(C*72|0)+44>>2]=c;a[i+((a[d>>2]|0)*72|0)+48>>2]=I;u=C;b=U}else{a[i+(C*72|0)+44>>2]=-1;O=i+(C*72|0)+40|0;a[O>>2]=a[H>>2];b=a[d>>2]|0;a[H>>2]=b;a[d>>2]=c;a[i+(c*72|0)+48>>2]=I;u=I;c=a[O>>2]|0}a[i+(b*72|0)+48>>2]=u;a[i+(c*72|0)+48>>2]=C;a[i+(C*72|0)+60>>2]=0;a[o>>2]=0}else Y=106}while(0);do{if((Y|0)==106){Y=0;b=i+(c*72|0)+48|0;u=a[b>>2]|0;c=i+(c*72|0)+52|0;if((u|0)>0?(a[c>>2]|0)>0:0){c=a[i+(u*72|0)+4>>2]|0;if((c|0)>0?(Qn(c,e,j)|0)==0:0){a[i+(C*72|0)+44>>2]=-1;a[i+(I*72|0)+44>>2]=-1;a[d>>2]=-1;a[i+((a[i+(C*72|0)+40>>2]|0)*72|0)+52>>2]=C;break}a[i+(I*72|0)+44>>2]=-1;a[i+(C*72|0)+44>>2]=-1;a[i+(C*72|0)+40>>2]=-1;a[i+((a[d>>2]|0)*72|0)+48>>2]=I;break}a[b>>2]=I;a[c>>2]=C}}while(0);if(+W(+(+s[v>>3]-+s[y>>3]))<=1.0e-07?Q&+W(+(+s[E>>3]-+s[L>>3]))<=1.0e-07:0){c=a[g>>2]|0;a[i+(c*72|0)+40>>2]=I;a[i+(c*72|0)+44>>2]=-1;c=i+(I*72|0)+52|0;O=a[c>>2]|0;a[i+(O*72|0)+40>>2]=C;a[i+(O*72|0)+44>>2]=-1;a[i+(C*72|0)+48>>2]=O;a[i+(C*72|0)+52>>2]=-1;a[c>>2]=-1;c=-1}else Y=116;do{if((Y|0)==116){Y=0;c=a[g>>2]|0;a[i+(c*72|0)+40>>2]=I;b=i+(c*72|0)+44|0;if(B){a[b>>2]=C;O=i+(I*72|0)+52|0;E=a[O>>2]|0;a[i+(E*72|0)+40>>2]=C;a[i+(E*72|0)+44>>2]=-1;a[O>>2]=-1;break}else{a[b>>2]=-1;c=i+(I*72|0)+52|0;O=a[c>>2]|0;a[i+(O*72|0)+40>>2]=I;a[i+(O*72|0)+44>>2]=C;a[i+(C*72|0)+48>>2]=O;a[i+(C*72|0)+52>>2]=-1;c=a[c>>2]|0;break}}}while(0);break}B=i+(I*72|0)+40|0;c=a[B>>2]|0;do{if((c|0)>0?(M=i+(I*72|0)+44|0,F=a[M>>2]|0,(F|0)>0):0){d=i+(I*72|0)+60|0;c=a[d>>2]|0;if((c|0)<=0){a[i+(C*72|0)+40>>2]=F;a[i+(C*72|0)+44>>2]=-1;a[M>>2]=-1;a[i+(F*72|0)+48>>2]=C;break}if((a[i+(I*72|0)+64>>2]|0)==1){a[i+(C*72|0)+40>>2]=F;a[M>>2]=-1;a[i+(C*72|0)+44>>2]=c;a[i+((a[B>>2]|0)*72|0)+48>>2]=I;o=C;u=F}else{a[i+(C*72|0)+44>>2]=-1;O=i+(C*72|0)+40|0;a[O>>2]=a[M>>2];u=a[B>>2]|0;a[M>>2]=u;a[B>>2]=c;a[i+(c*72|0)+48>>2]=I;o=I;c=a[O>>2]|0}a[i+(u*72|0)+48>>2]=o;a[i+(c*72|0)+48>>2]=C;a[i+(C*72|0)+60>>2]=0;a[d>>2]=0}else Y=51}while(0);do{if((Y|0)==51){Y=0;u=i+(c*72|0)+48|0;o=a[u>>2]|0;c=i+(c*72|0)+52|0;if((o|0)>0?(a[c>>2]|0)>0:0){c=a[i+(o*72|0)+4>>2]|0;if((c|0)>0?(Qn(c,e,j)|0)==0:0){a[i+(C*72|0)+44>>2]=-1;a[i+(I*72|0)+44>>2]=-1;a[B>>2]=-1;a[i+((a[i+(C*72|0)+40>>2]|0)*72|0)+52>>2]=C;break}a[i+(I*72|0)+44>>2]=-1;a[i+(C*72|0)+44>>2]=-1;a[i+(C*72|0)+40>>2]=-1;a[i+((a[B>>2]|0)*72|0)+48>>2]=I;break}a[u>>2]=I;a[c>>2]=C}}while(0);if(+W(+(+s[v>>3]-+s[y>>3]))<=1.0e-07?Q&+W(+(+s[E>>3]-+s[L>>3]))<=1.0e-07:0){c=a[Z>>2]|0;if((c|0)>0?(Qn(c,e,x)|0)!=0:0){a[i+((a[g>>2]|0)*72|0)+40>>2]=I;b=i+(C*72|0)+52|0;c=C}else{a[i+((a[i+(C*72|0)+48>>2]|0)*72|0)+44>>2]=C;c=I}a[b>>2]=-1;a[i+(c*72|0)+48>>2]=-1;c=a[g>>2]|0;break}c=a[g>>2]|0;b=i+(c*72|0)+40|0;u=a[b>>2]|0;o=i+(c*72|0)+44|0;if((u|0)>0?(V=a[o>>2]|0,J=(u|0)==(I|0),(V|0)>0):0){a[i+(c*72|0)+60>>2]=J?V:u;a[i+(c*72|0)+64>>2]=J?1:2}a[b>>2]=I;a[o>>2]=C}}while(0);a[m>>2]=A;a[i+(I*72|0)+4>>2]=A;if((c|0)>0)I=c;else break A}L3(138424,19,1,a[15712]|0)|0}else{n=0;f=0}}while(0);Dn(A,z,w,1,i,r);Dn(A,n,f,2,i,r);a[e+(A*56|0)+32>>2]=1;k=S;return}function Gn(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0;if(!(a[e+(A*56|0)+32>>2]|0)){f=e+(A*56|0)|0;n=e+(A*56|0)+16|0;l=e+(A*56|0)+36|0;a[l>>2]=a[i+((mn(f,n,a[l>>2]|0,e,r)|0)*72|0)+56>>2];A=e+(A*56|0)+40|0;a[A>>2]=a[i+((mn(n,f,a[A>>2]|0,e,r)|0)*72|0)+56>>2]}return}function mn(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0.0,l=0,t=0.0,c=0.0,b=0.0,u=0.0,w=0.0,k=0,o=0.0,h=0,d=0;k=A+8|0;h=e+8|0;A:while(1){e:do{switch(a[f+(i*40|0)>>2]|0){case 3:{d=3;break A}case 2:{n=+s[k>>3];l=f+(i*40|0)+8|0;t=+s[f+(i*40|0)+16>>3];c=t+1.0e-07;do{if(!(n>c)){b=t+-1.0e-07;if(!(n>3]>+s[l>>3]:0)break;if(+W(+(n-t))<=1.0e-07?(u=+s[l>>3],+W(+(+s[A>>3]-u))<=1.0e-07):0){n=+s[h>>3];do{if(!(n>c)){if(!(n>3]>u:0)break;i=f+(i*40|0)+32|0;break e}}while(0);i=f+(i*40|0)+36|0;break e}i=f+(i*40|0)+32|0;break e}}while(0);i=f+(i*40|0)+36|0;break}case 1:{n=+s[k>>3];l=a[f+(i*40|0)+4>>2]|0;if(+W(+(n-+s[r+(l*56|0)+8>>3]))<=1.0e-07?(w=+s[A>>3],+W(+(w-+s[r+(l*56|0)>>3]))<=1.0e-07):0)t=w;else d=19;do{if((d|0)==19){d=0;if(+W(+(n-+s[r+(l*56|0)+24>>3]))<=1.0e-07?(o=+s[A>>3],+W(+(o-+s[r+(l*56|0)+16>>3]))<=1.0e-07):0){t=o;break}if(!(Qn(l,r,A)|0)){i=f+(i*40|0)+36|0;break e}else{i=f+(i*40|0)+32|0;break e}}}while(0);if(!(+W(+(n-+s[h>>3]))<=1.0e-07))if(!(Qn(l,r,e)|0)){i=f+(i*40|0)+36|0;break e}else{i=f+(i*40|0)+32|0;break e}else if(+s[e>>3] >2]|0}if((d|0)==3)return a[f+(i*40|0)+24>>2]|0;else if((d|0)==31){L3(138358,35,1,a[15712]|0)|0;gA(138394,138396,349,138408)}return 0}function Qn(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,a=0,n=0.0,l=0,t=0,c=0.0;a=e+(A*56|0)+16|0;n=+s[e+(A*56|0)+24>>3];l=e+(A*56|0)|0;f=+s[e+(A*56|0)+8>>3];do{if(!(n>f+1.0e-07)){if(!(n >3]>+s[l>>3]:0){t=4;break}r=+s[i+8>>3];if(+W(+(n-r))<=1.0e-07){r=+s[i>>3]<+s[a>>3]?1.0:-1.0;break}if(!(+W(+(f-r))<=1.0e-07)){c=+s[a>>3];r=(+s[l>>3]-c)*(r-n)-(+s[i>>3]-c)*(f-n);break}else{r=+s[i>>3]<+s[l>>3]?1.0:-1.0;break}}else t=4}while(0);do{if((t|0)==4){r=+s[i+8>>3];if(+W(+(n-r))<=1.0e-07){r=+s[i>>3]<+s[a>>3]?1.0:-1.0;break}if(!(+W(+(f-r))<=1.0e-07)){c=+s[l>>3];r=(+s[a>>3]-c)*(r-f)-(+s[i>>3]-c)*(n-f);break}else{r=+s[i>>3]<+s[l>>3]?1.0:-1.0;break}}}while(0);return r>0.0|0}function Ln(A,e,i){A=A|0;e=e|0;i=i|0;return a[e+((a[((i|0)==1?e+(A*56|0)+48|0:e+(A*56|0)+44|0)>>2]|0)*56|0)+32>>2]|0}function yn(A){A=A|0;var e=0,i=0,r=0;r=k;k=k+16|0;i=r;e=a[47395]|0;if((e|0)<(a[47394]|0)){a[A+(e*72|0)>>2]=-1;a[A+(e*72|0)+4>>2]=-1;a[A+(e*72|0)+68>>2]=1;a[47395]=e+1;k=r;return e|0}else{r=a[15712]|0;a[i>>2]=e;f3(r,138483,i)|0;gA(138394,138396,88,138521)}return 0}function Wn(){var A=0;A=a[47396]|0;if((A|0)<(a[47393]|0)){a[47396]=A+1;return A|0}else{L3(138444,30,1,a[15712]|0)|0;gA(138394,138396,72,138475)}return 0}function zn(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;i=+s[A+8>>3];r=+s[e+8>>3];if(!(i>r+1.0e-07))if(i >3]>=+s[e>>3]&1;else A=1;return A|0}function Yn(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;i=+s[A+8>>3];r=+s[e+8>>3];if(!(i r+1.0e-07)A=0;else A=+s[A>>3]<+s[e>>3]&1;else A=1;return A|0}function Dn(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0;h=f+(i*72|0)+24|0;o=(r|0)==1;A:while(1){k=f+(e*72|0)+24|0;c=f+(e*72|0)+48|0;s=f+(e*72|0)+52|0;b=f+(e*72|0)|0;u=f+(e*72|0)+4|0;w=f+(e*72|0)+56|0;if((e|0)<=0)break;while(1){if(!(zn(k,h)|0))break A;i=a[c>>2]|0;r=(i|0)>0;do{if(o){if(r?(a[f+(i*72|0)+4>>2]|0)==(A|0):0)break;i=a[s>>2]|0;if((i|0)<=0){e=i;continue A}if((a[f+(i*72|0)+4>>2]|0)!=(A|0)){e=i;continue A}}else{if(r?(a[f+(i*72|0)>>2]|0)==(A|0):0)break;i=a[s>>2]|0;if((i|0)<=0){e=i;continue A}if((a[f+(i*72|0)>>2]|0)!=(A|0)){e=i;continue A}}}while(0);if((a[b>>2]|0)!=(a[f+(i*72|0)>>2]|0)){e=i;continue A}if((a[u>>2]|0)!=(a[f+(i*72|0)+4>>2]|0)){e=i;continue A}d=a[f+(i*72|0)+56>>2]|0;r=a[n+(d*40|0)+28>>2]|0;l=n+(r*40|0)+32|0;t=a[w>>2]|0;if((a[l>>2]|0)==(d|0))a[l>>2]=t;else a[n+(r*40|0)+36>>2]=t;r=a[f+(i*72|0)+48>>2]|0;a[c>>2]=r;do{if((r|0)>0){l=f+(r*72|0)+40|0;if((a[l>>2]|0)==(i|0)){a[l>>2]=e;break}r=f+(r*72|0)+44|0;if((a[r>>2]|0)==(i|0))a[r>>2]=e}}while(0);r=a[f+(i*72|0)+52>>2]|0;a[s>>2]=r;do{if((r|0)>0){l=f+(r*72|0)+40|0;if((a[l>>2]|0)==(i|0)){a[l>>2]=e;break}r=f+(r*72|0)+44|0;if((a[r>>2]|0)==(i|0))a[r>>2]=e}}while(0);d=f+(i*72|0)+24|0;a[k>>2]=a[d>>2];a[k+4>>2]=a[d+4>>2];a[k+8>>2]=a[d+8>>2];a[k+12>>2]=a[d+12>>2];a[f+(i*72|0)+68>>2]=2}}return}function Mn(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0;r=+s[e+8>>3];f=+s[i+8>>3];do{if(!(r>f+1.0e-07)){if(!(+W(+(r-f))<=1.0e-07)){a[A>>2]=a[i>>2];a[A+4>>2]=a[i+4>>2];a[A+8>>2]=a[i+8>>2];a[A+12>>2]=a[i+12>>2];break}if(+s[e>>3]>+s[i>>3]+1.0e-07){a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];break}else{a[A>>2]=a[i>>2];a[A+4>>2]=a[i+4>>2];a[A+8>>2]=a[i+8>>2];a[A+12>>2]=a[i+12>>2];break}}else{a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2]}}while(0);return}function Fn(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0;r=+s[e+8>>3];f=+s[i+8>>3];do{if(!(r >2]=a[i>>2];a[A+4>>2]=a[i+4>>2];a[A+8>>2]=a[i+8>>2];a[A+12>>2]=a[i+12>>2];break}if(+s[e>>3]<+s[i>>3]){a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];break}else{a[A>>2]=a[i>>2];a[A+4>>2]=a[i+4>>2];a[A+8>>2]=a[i+8>>2];a[A+12>>2]=a[i+12>>2];break}}else{a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2]}}while(0);return}function Vn(A){A=A|0;var e=0;e=qF(8)|0;if(e|0){a[e+4>>2]=A;a[e>>2]=0}return e|0}function Jn(A,e){A=A|0;e=e|0;if(e){e=Vn(e)|0;a[e>>2]=A;A=e}return A|0}function pn(A){A=A|0;var e=0;do{e=A;A=a[A>>2]|0;L2(e)}while((A|0)!=0);return}function Nn(){var A=0;A=qF(1992)|0;if(A|0)a[A>>2]=Rn(A)|0;return A|0}function Rn(A){A=A|0;var e=0;e=jn(A)|0;a[e+4>>2]=0;A=A+1972|0;a[A>>2]=(a[A>>2]|0)+1;return e|0}function Xn(A){A=A|0;Hn(A,a[A>>2]|0);L2(a[A>>2]|0);L2(A);return 0}function Hn(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;n=A+1980|0;l=A+1912|0;t=A+1936|0;A:do{if((a[e+4>>2]|0)>0){i=0;while(1){if((i|0)==64)break A;r=e+8+(i*20|0)+16|0;f=a[r>>2]|0;if(f|0?(Hn(A,f),L2(a[r>>2]|0),qn(e,i),a[n>>2]=(a[n>>2]|0)+-1,a[l>>2]|0):0)a[t>>2]=(a[t>>2]|0)+1;i=i+1|0}}else{i=0;while(1){if((i|0)==64)break A;if(a[e+8+(i*20|0)+16>>2]|0?(qn(e,i),a[n>>2]=(a[n>>2]|0)+-1,a[l>>2]|0):0)a[t>>2]=(a[t>>2]|0)+1;i=i+1|0}}}while(0);return}function Un(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0;if(!e)gA(138879,138529,194,138537);r=a[e+4>>2]|0;if((r|0)<=-1)gA(138549,138529,195,138537);if(!i)gA(138821,138529,196,138537);t=A+1952|0;a[t>>2]=(a[t>>2]|0)+1;A:do{if((r|0)>0){t=0;r=0;while(1){if((t|0)==64)break A;f=e+8+(t*20|0)+16|0;if((a[f>>2]|0)!=0?(rl(i,e+8+(t*20|0)|0)|0)!=0:0){n=Un(A,a[f>>2]|0,i)|0;if(!r)r=n;else{f=r;while(1){l=a[f>>2]|0;if(!l)break;else f=l}a[f>>2]=n}}t=t+1|0}}else{n=0;r=0;while(1){if((n|0)==64)break A;f=e+8+(n*20|0)|0;if((a[e+8+(n*20|0)+16>>2]|0)!=0?(rl(i,f)|0)!=0:0)r=Jn(r,f)|0;n=n+1|0}}}while(0);return r|0}function xn(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;o=k;k=k+64|0;s=o+52|0;b=o+32|0;u=o+16|0;w=o;a[s>>2]=0;if(!((e|0)!=0&(r|0)!=0))gA(138735,138529,247,138563);if((f|0)>-1?(c=a[r>>2]|0,(a[c+4>>2]|0)>=(f|0)):0){n=0;while(1){if((n|0)>=2)break;if((a[e+(n<<2)>>2]|0)>(a[e+(n+2<<2)>>2]|0)){l=8;break}else n=n+1|0}if((l|0)==8)gA(138610,138529,250,138563);t=A+1912|0;n=A+1908|0;l=a[n>>2]|0;if(a[t>>2]|0){h=l|0?A+1924|0:A+1916|0;a[h>>2]=(a[h>>2]|0)+1}if(!l){h=A+1964|0;a[h>>2]=(a[h>>2]|0)+1}if(!(Tn(A,e,i,c,s,f)|0))n=0;else{if(a[t>>2]|0){h=a[n>>2]|0?A+1948|0:A+1944|0;a[h>>2]=(a[h>>2]|0)+1}n=jn(A)|0;h=A+1976|0;a[h>>2]=(a[h>>2]|0)+1;h=a[r>>2]|0;a[n+4>>2]=(a[h+4>>2]|0)+1;On(u,h);a[b>>2]=a[u>>2];a[b+4>>2]=a[u+4>>2];a[b+8>>2]=a[u+8>>2];a[b+12>>2]=a[u+12>>2];h=b+16|0;a[h>>2]=a[r>>2];_n(A,b,n,0)|0;On(w,a[s>>2]|0);a[b>>2]=a[w>>2];a[b+4>>2]=a[w+4>>2];a[b+8>>2]=a[w+8>>2];a[b+12>>2]=a[w+12>>2];a[h>>2]=a[s>>2];_n(A,b,n,0)|0;a[r>>2]=n;n=A+1980|0;a[n>>2]=(a[n>>2]|0)+2;n=1}k=o;return n|0}gA(138575,138529,248,138563);return 0}function Tn(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+80|0;b=h+52|0;u=h+48|0;w=h+32|0;o=h+16|0;s=h;a[u>>2]=0;if(!((e|0)!=0&(r|0)!=0&(f|0)!=0))gA(138653,138529,311,138667);if((n|0)>-1?(t=r+4|0,l=a[t>>2]|0,(l|0)>=(n|0)):0){if(a[A+1912>>2]|0){l=a[A+1908>>2]|0?A+1948|0:A+1944|0;a[l>>2]=(a[l>>2]|0)+1;l=a[t>>2]|0}do{if((l|0)>(n|0)){t=Kn(e,r)|0;l=r+8+(t*20|0)+16|0;t=r+8+(t*20|0)|0;if(!(Tn(A,e,i,a[l>>2]|0,u,n)|0)){il(w,e,t);a[t>>2]=a[w>>2];a[t+4>>2]=a[w+4>>2];a[t+8>>2]=a[w+8>>2];a[t+12>>2]=a[w+12>>2];c=0;break}else{On(o,a[l>>2]|0);a[t>>2]=a[o>>2];a[t+4>>2]=a[o+4>>2];a[t+8>>2]=a[o+8>>2];a[t+12>>2]=a[o+12>>2];c=a[u>>2]|0;a[b+16>>2]=c;On(s,c);a[b>>2]=a[s>>2];a[b+4>>2]=a[s+4>>2];a[b+8>>2]=a[s+8>>2];a[b+12>>2]=a[s+12>>2];c=A+1980|0;a[c>>2]=(a[c>>2]|0)+1;c=_n(A,b,r,f)|0;break}}else if((l|0)==(n|0)){a[b>>2]=a[e>>2];a[b+4>>2]=a[e+4>>2];a[b+8>>2]=a[e+8>>2];a[b+12>>2]=a[e+12>>2];a[b+16>>2]=i;c=A+1980|0;a[c>>2]=(a[c>>2]|0)+1;c=_n(A,b,r,f)|0;break}else gA(138712,138529,341,138667)}while(0);k=h;return c|0}gA(138680,138529,312,138667);return 0}function jn(A){A=A|0;A=A+1968|0;a[A>>2]=(a[A>>2]|0)+1;A=Q2(1288)|0;Pn(A);return A|0}function Pn(A){A=A|0;var e=0;a[A>>2]=0;a[A+4>>2]=-1;e=0;while(1){if((e|0)==64)break;Sn(A+8+(e*20|0)|0);e=e+1|0}return}function Sn(A){A=A|0;$n(A);a[A+16>>2]=0;return}function On(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;t=k;k=k+32|0;n=t+16|0;l=t;if(!e)gA(138879,138718,99,138725);$n(n);i=1;f=0;while(1){if((f|0)==64)break;do{if(a[e+8+(f*20|0)+16>>2]|0){r=e+8+(f*20|0)|0;if(!i){il(l,n,r);a[n>>2]=a[l>>2];a[n+4>>2]=a[l+4>>2];a[n+8>>2]=a[l+8>>2];a[n+12>>2]=a[l+12>>2];i=0;break}else{a[n>>2]=a[r>>2];a[n+4>>2]=a[r+4>>2];a[n+8>>2]=a[r+8>>2];a[n+12>>2]=a[r+12>>2];i=0;break}}}while(0);f=f+1|0}a[A>>2]=a[n>>2];a[A+4>>2]=a[n+4>>2];a[A+8>>2]=a[n+8>>2];a[A+12>>2]=a[n+12>>2];k=t;return}function Kn(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0;s=k;k=k+32|0;t=s+16|0;c=s;if(!((A|0)!=0&(e|0)!=0))gA(138735,138718,125,138742);i=0;r=0;f=0;n=1;l=0;while(1){if((l|0)==64)break;if(a[e+8+(l*20|0)+16>>2]|0){u=e+8+(l*20|0)|0;o=el(u)|0;il(c,A,u);a[t>>2]=a[c>>2];a[t+4>>2]=a[c+4>>2];a[t+8>>2]=a[c+8>>2];a[t+12>>2]=a[c+12>>2];u=(el(t)|0)-o|0;b=(n|0)!=0|(u|0)<(f|0);w=b|(o|0)<(r|0)&(u|0)==(f|0);i=w?l:i;r=w?o:r;f=w?u:f;n=b?0:n}l=l+1|0}k=s;return i|0}function _n(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0;if(!e)gA(138901,138718,167,138753);if(!i)gA(138879,138718,168,138753);do{if((a[i>>2]|0)<64){A=0;while(1){if((A|0)>=64){r=10;break}if(!(a[i+8+(A*20|0)+16>>2]|0)){r=8;break}A=A+1|0}if((r|0)==8){f=i+8+(A*20|0)|0;a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];a[f+16>>2]=a[e+16>>2];f=0;n=i;break}else if((r|0)==10)gA(138763,138718,178,138753)}else{if(a[A+1912>>2]|0){l=a[A+1908>>2]|0?A+1948|0:A+1944|0;a[l>>2]=(a[l>>2]|0)+1}if(!r)gA(138776,138718,187,138753);else{fl(A,i,e,r);f=1;n=(a[i+4>>2]|0)==0?A+1972|0:A+1976|0;break}}}while(0);a[n>>2]=(a[n>>2]|0)+1;return f|0}function qn(A,e){A=A|0;e=e|0;if(!((A|0)!=0&e>>>0<64))gA(138780,138718,201,138808);if(!(a[A+8+(e*20|0)+16>>2]|0))gA(139302,138718,202,138808);else{Sn(A+8+(e*20|0)|0);a[A>>2]=(a[A>>2]|0)+-1;return}}function $n(A){A=A|0;var e=0;e=0;while(1){if((e|0)==4)break;a[A+(e<<2)>>2]=0;e=e+1|0}return}function Al(A){A=A|0;var e=0,i=0,r=0;r=k;k=k+16|0;i=r;a[i>>2]=1;a[i+8>>2]=-1;e=1;while(1){if((e|0)==2)break;a[i+(e+2<<2)>>2]=0;a[i+(e<<2)>>2]=0;e=e+1|0}a[A>>2]=a[i>>2];a[A+4>>2]=a[i+4>>2];a[A+8>>2]=a[i+8>>2];a[A+12>>2]=a[i+12>>2];k=r;return}function el(A){A=A|0;var e=0,i=0,r=0;if(!A)gA(138821,138823,128,138835);A:do{if((a[A>>2]|0)>(a[A+8>>2]|0))e=0;else{e=1;i=0;while(1){if((i|0)==2)break A;r=U(a[A+(i+2<<2)>>2]|0,e)|0;e=r-(a[A+(i<<2)>>2]|0)|0;i=i+1|0}}}while(0);return e|0}function il(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0;n=k;k=k+16|0;f=n;if(!((e|0)!=0&(i|0)!=0))gA(138844,138823,195,138852);do{if((a[e>>2]|0)>(a[e+8>>2]|0)){a[A>>2]=a[i>>2];a[A+4>>2]=a[i+4>>2];a[A+8>>2]=a[i+8>>2];a[A+12>>2]=a[i+12>>2]}else{if((a[i>>2]|0)>(a[i+8>>2]|0)){a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];break}else r=0;while(1){if((r|0)==2)break;c=a[e+(r<<2)>>2]|0;l=a[i+(r<<2)>>2]|0;a[f+(r<<2)>>2]=(c|0)<(l|0)?c:l;l=r+2|0;c=a[e+(l<<2)>>2]|0;t=a[i+(l<<2)>>2]|0;a[f+(l<<2)>>2]=(c|0)>(t|0)?c:t;r=r+1|0}a[A>>2]=a[f>>2];a[A+4>>2]=a[f+4>>2];a[A+8>>2]=a[f+8>>2];a[A+12>>2]=a[f+12>>2]}}while(0);k=n;return}function rl(A,e){A=A|0;e=e|0;var i=0,r=0;if((A|0)!=0&(e|0)!=0)i=0;else gA(138864,138823,216,138871);while(1){if((i|0)>=2){i=1;break}r=i+2|0;if((a[A+(i<<2)>>2]|0)>(a[e+(r<<2)>>2]|0)){i=0;break}if((a[e+(i<<2)>>2]|0)>(a[A+(r<<2)>>2]|0)){i=0;break}else i=i+1|0}return i|0}function fl(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0;if(!e)gA(138879,138881,40,138891);if(!i)gA(138901,138881,41,138891);t=A+1912|0;if(a[t>>2]|0){l=a[A+1908>>2]|0?A+1932|0:A+1928|0;a[l>>2]=(a[l>>2]|0)+1}n=e+4|0;l=a[n>>2]|0;al(A,e,i);i=A+1324|0;nl(A);f=el(A+1852|0)|0;f=(el(A+1868|0)|0)+f|0;if(a[t>>2]|0?(f|0)!=0&(a[A+1908>>2]|0)==0:0){t=A+1960|0;c[t>>2]=+((a[A+1320>>2]|0)>>>0)/+(f|0)+ +c[t>>2]}t=jn(A)|0;a[r>>2]=t;a[n>>2]=l;a[t+4>>2]=l;ll(A,e,t,i);if(((a[a[r>>2]>>2]|0)+(a[e>>2]|0)|0)==65)return;else gA(138903,138881,86,138891)}function al(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0;l=k;k=k+16|0;n=l;if(!e)gA(138879,138881,106,139290);if(!i)gA(138901,138881,107,139290);else r=0;while(1){if((r|0)>=64)break;if(!(a[e+8+(r*20|0)+16>>2]|0)){f=7;break}c=e+8+(r*20|0)|0;t=A+4+(r*20|0)|0;a[t>>2]=a[c>>2];a[t+4>>2]=a[c+4>>2];a[t+8>>2]=a[c+8>>2];a[t+12>>2]=a[c+12>>2];a[t+16>>2]=a[c+16>>2];r=r+1|0}if((f|0)==7)gA(139302,138881,111,139290);r=A+4|0;c=A+1284|0;a[c>>2]=a[i>>2];a[c+4>>2]=a[i+4>>2];a[c+8>>2]=a[i+8>>2];a[c+12>>2]=a[i+12>>2];a[c+16>>2]=a[i+16>>2];i=A+1304|0;a[i>>2]=a[r>>2];a[i+4>>2]=a[r+4>>2];a[i+8>>2]=a[r+8>>2];a[i+12>>2]=a[r+12>>2];r=1;while(1){if((r|0)==65)break;il(n,i,A+4+(r*20|0)|0);a[i>>2]=a[n>>2];a[i+4>>2]=a[n+4>>2];a[i+8>>2]=a[n+8>>2];a[i+12>>2]=a[n+12>>2];r=r+1|0}a[A+1320>>2]=el(i)|0;Pn(e);k=l;return}function nl(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0;v=k;k=k+48|0;t=v+32|0;s=v+16|0;b=v;tl(A);cl(A);h=A+1844|0;B=A+1848|0;g=A+1892|0;u=A+1852|0;w=A+1884|0;o=A+1868|0;c=A+1888|0;f=0;r=0;while(1){i=a[h>>2]|0;e=a[B>>2]|0;if((e+i|0)>=65)break;l=65-(a[g>>2]|0)|0;if((i|0)<(l|0)&(e|0)<(l|0)){n=-1;l=0}else{d=12;break}while(1){if((l|0)==65)break;if(!(a[A+1584+(l<<2)>>2]|0)){E=A+4+(l*20|0)|0;il(s,E,u);a[t>>2]=a[s>>2];a[t+4>>2]=a[s+4>>2];a[t+8>>2]=a[s+8>>2];a[t+12>>2]=a[s+12>>2];e=el(t)|0;i=a[w>>2]|0;il(b,E,o);a[t>>2]=a[b>>2];a[t+4>>2]=a[b+4>>2];a[t+8>>2]=a[b+8>>2];a[t+12>>2]=a[b+12>>2];E=el(t)|0;e=E-(a[c>>2]|0)+(i-e)|0;i=(e|0)>-1;e=i?e:0-e|0;i=(i^1)&1;if((e|0)<=(n|0))if((e|0)==(n|0)){E=(a[A+1844+(i<<2)>>2]|0)<(a[A+1844+(f<<2)>>2]|0);e=n;i=E?i:f;r=E?l:r}else{e=n;i=f}else r=l}else{e=n;i=f}n=e;l=l+1|0;f=i}sl(A,r,f)}if((d|0)==12){e=(i|0)>=(65-(a[g>>2]|0)|0)&1;i=0;while(1){if((i|0)==65)break;if(!(a[A+1584+(i<<2)>>2]|0))sl(A,i,e);i=i+1|0}i=a[h>>2]|0;e=a[B>>2]|0}if((e+i|0)!=65)gA(139046,138881,210,139132);E=a[g>>2]|0;if((i|0)<(E|0)|(e|0)<(E|0))gA(139143,138881,212,139132);else{k=v;return}}function ll(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0;if(!e)gA(138879,138881,297,138943);if(!i)gA(138953,138881,298,138943);if(!r)gA(138955,138881,299,138943);else f=0;while(1){if((f|0)>=65){r=14;break}r=a[A+1324+(f<<2)>>2]|0;if(r>>>0>=2){r=9;break}switch(r|0){case 0:{_n(A,A+4+(f*20|0)|0,e,0)|0;break}case 1:{_n(A,A+4+(f*20|0)|0,i,0)|0;break}default:{}}f=f+1|0}if((r|0)==9)gA(138957,138881,303,138943);else if((r|0)==14)return}function tl(A){A=A|0;var e=0,i=0,r=0,f=0;i=k;k=k+16|0;r=i;a[A+1848>>2]=0;a[A+1844>>2]=0;e=A+1852|0;f=A+1868|0;Al(r);a[f>>2]=a[r>>2];a[f+4>>2]=a[r+4>>2];a[f+8>>2]=a[r+8>>2];a[f+12>>2]=a[r+12>>2];a[e>>2]=a[r>>2];a[e+4>>2]=a[r+4>>2];a[e+8>>2]=a[r+8>>2];a[e+12>>2]=a[r+12>>2];a[A+1888>>2]=0;a[A+1884>>2]=0;e=0;while(1){if((e|0)==65)break;a[A+1584+(e<<2)>>2]=0;a[A+1324+(e<<2)>>2]=-1;e=e+1|0}k=i;return}function cl(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0;w=k;k=k+304|0;s=w+32|0;b=w+16|0;u=w;e=0;while(1){if((e|0)==65)break;a[s+(e<<2)>>2]=el(A+4+(e*20|0)|0)|0;e=e+1|0}e=0;i=0;r=0;n=0;A:while(1){if((n|0)==64)break;t=n+1|0;c=A+4+(n*20|0)|0;l=s+(n<<2)|0;f=t;while(1){if((f|0)==65){n=t;continue A}il(u,c,A+4+(f*20|0)|0);a[b>>2]=a[u>>2];a[b+4>>2]=a[u+4>>2];a[b+8>>2]=a[u+8>>2];a[b+12>>2]=a[u+12>>2];o=el(b)|0;o=o-(a[l>>2]|0)-(a[s+(f<<2)>>2]|0)|0;h=o>>>0>r>>>0;d=h?f:e;f=f+1|0;e=d;i=h?n:i;r=h?o:r}}sl(A,i,0);sl(A,e,1);k=w;return}function sl(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;l=t;r=A+1584+(e<<2)|0;if(a[r>>2]|0)gA(139246,138881,257,139281);a[A+1324+(e<<2)>>2]=i;a[r>>2]=1;n=A+1844+(i<<2)|0;f=A+1852+(i<<4)|0;r=A+4+(e*20|0)|0;if(!(a[n>>2]|0)){a[f>>2]=a[r>>2];a[f+4>>2]=a[r+4>>2];a[f+8>>2]=a[r+8>>2];a[f+12>>2]=a[r+12>>2]}else{il(l,r,f);a[f>>2]=a[l>>2];a[f+4>>2]=a[l+4>>2];a[f+8>>2]=a[l+8>>2];a[f+12>>2]=a[l+12>>2]}a[A+1884+(i<<2)>>2]=el(f)|0;a[n>>2]=(a[n>>2]|0)+1;k=t;return}function bl(){var A=0,e=0,i=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0;g=k;k=k+1200|0;d=g+800|0;i=g;a[47397]=0;a[47398]=-2;e=d;t=200;u=i;o=0;h=0;w=d;A:while(1){f[w>>1]=o;if((e+(t<<1)+-2|0)>>>0>w>>>0)s=t;else{b=w-e>>1;A=b+1|0;if(t>>>0>9999){B=95;break}s=t<<1;s=s>>>0<1e4?s:1e4;l=Q2(s*6|3)|0;if(l){W6(l|0,e|0,A<<1|0)|0;t=l+(s>>>1<<2)|0;W6(t|0,u|0,A<<2|0)|0;if((e|0)==(d|0)){A=0;e=l}else{L2(e);A=0;e=l}}else{A=4;t=u}c=(A|0)==0;l=e+(b<<1)|0;switch((c?(e+(s<<1)+-2|0)>>>0>l>>>0?0:9:A)&15){case 9:{A=1;B=96;break A}case 4:{B=95;break A}case 0:{i=c?t+(b<<2)|0:i;u=t;w=c?l:w;break}default:{A=0;break A}}}if((o|0)==31){A=0;B=96;break}A=f[65534+(o<<1)>>1]|0;c=A<<16>>16;do{if(A<<16>>16!=-82){l=a[47398]|0;if((l|0)==-2){l=mt()|0;a[47398]=l}if((l|0)>=1)if(l>>>0<296)t=n[139321+l>>0]|0;else t=2;else{a[47398]=0;t=0}l=t+c|0;if(l>>>0<=271?(t|0)==(r[139617+l>>0]|0):0){o=r[139889+l>>0]|0;A=o<<24>>24;if(o<<24>>24<1){l=0-A|0;B=23;break}else{a[47398]=-2;i=i+4|0;a[i>>2]=a[47399];c=(h|0)==0?0:h+-1|0;l=w;break}}else B=22}else B=22}while(0);if((B|0)==22){B=0;o=r[140161+o>>0]|0;l=o&255;if(!(o<<24>>24)){l=a[47398]|0;e:do{switch(h|0){case 0:{a[47397]=(a[47397]|0)+1;Yl(143761);l=w;break}case 3:if((l|0)<1)if(!l){A=1;B=96;break A}else{l=w;break e}else{a[47398]=-2;l=w;break e}default:l=w}}while(0);while(1){if(A<<16>>16==8)break;if((l|0)==(e|0)){A=1;B=96;break A}A=l+-2|0;i=i+-4|0;l=A;A=f[65534+(f[A>>1]<<1)>>1]|0}i=i+4|0;a[i>>2]=a[47399];A=1;c=3}else B=23}do{if((B|0)==23){B=0;c=n[140277+l>>0]|0;A=a[i+(1-c<<2)>>2]|0;do{switch(l|0){case 4:{B=26;break A}case 2:{a[47400]=ul(a[i+-4>>2]|0,2)|0;break}case 3:{a[47400]=ul(a[i+-4>>2]|0,1)|0;break}case 5:{A=kl()|0;break}case 8:{ol(a[47401]|0);break}case 9:{hl(a[i>>2]|0);break}case 18:{dl(a[i>>2]|0);break}case 19:{Bl();break}case 20:{dl(a[i>>2]|0);break}case 21:{Bl();break}case 22:{dl(a[i>>2]|0);break}case 23:{Bl();break}case 24:{dl(a[i>>2]|0);break}case 25:{Bl();break}case 26:{dl(a[i>>2]|0);break}case 27:{Bl();break}case 28:{dl(a[i>>2]|0);break}case 29:{Bl();break}case 30:{dl(a[i>>2]|0);break}case 31:{Bl();break}case 32:{dl(a[i>>2]|0);break}case 33:{Bl();break}case 34:{A=a[i+-4>>2]|0;break}case 35:{A=a[i>>2]|0;break}case 38:{A=a[47401]|0;t=a[A+4>>2]|0;if(t>>>0>=(a[A+8>>2]|0)>>>0){so(A,1)|0;t=a[47401]|0;A=t;t=a[t+4>>2]|0}r[t>>0]=0;o=a[A>>2]|0;a[A+4>>2]=o;if(gl(o)|0){B=51;break A}a[(a[i>>2]|0)+80>>2]=a[47402];A=jk(56032,a[4580]|0)|0;a[(a[i>>2]|0)+84>>2]=A;a[47402]=a[i>>2];a[(a[i>>2]|0)+108>>2]=a[a[47403]>>2];A=a[i>>2]|0;break}case 39:{A=a[47401]|0;t=a[A+4>>2]|0;if(t>>>0>=(a[A+8>>2]|0)>>>0){so(A,1)|0;t=a[47401]|0;A=t;t=a[t+4>>2]|0}r[t>>0]=0;o=a[A>>2]|0;a[A+4>>2]=o;if(gl(o)|0){B=56;break A}A=a[47402]|0;a[47402]=a[A+80>>2];break}case 40:{A=a[i>>2]|0;break}case 41:{A=a[i+-4>>2]|0;break}case 42:{A=a[i+-4>>2]|0;break}case 43:{A=a[i+-4>>2]|0;break}case 44:{A=a[i+-4>>2]|0;break}case 45:{A=a[i+-4>>2]|0;break}case 48:{A=a[i>>2]|0;break}case 49:{A=a[i>>2]|0;break}case 50:{r[(a[i+-8>>2]|0)+12>>0]=1;A=a[i>>2]|0;break}case 51:{vl();break}case 52:{A=El()|0;break}case 53:{A=a[i>>2]|0;break}case 54:{A=a[i>>2]|0;break}case 55:{A=(a[i+-8>>2]|0)+100|0;r[A>>0]=r[A>>0]|1;A=a[i>>2]|0;break}case 56:{Cl(a[i+-4>>2]|0,a[i>>2]|0,1);break}case 57:{A=a[i+-12>>2]|0;break}case 58:{Cl(a[i+-4>>2]|0,a[i>>2]|0,2);break}case 59:{A=a[i+-12>>2]|0;break}case 60:{Cl(a[i+-4>>2]|0,a[i>>2]|0,3);break}case 61:{A=a[i+-12>>2]|0;break}case 62:{Cl(a[i>>2]|0,kl()|0,2);break}case 63:{A=a[i+-8>>2]|0;break}case 64:{A=a[i+-4>>2]|0;break}case 65:{A=a[i>>2]|0;break}default:{}}}while(0);t=0-c|0;o=i+(t<<2)|0;t=w+(t<<1)|0;i=o+4|0;a[o+4>>2]=A;A=(n[140449+l>>0]|0)+-41|0;o=f[t>>1]|0;l=o+(f[65766+(A<<1)>>1]|0)|0;if(l>>>0<272?(r[139617+l>>0]|0)==(o|0):0){A=r[139889+l>>0]|0;c=h;l=t;break}A=r[140519+A>>0]|0;c=h;l=t}}while(0);t=s;o=A;h=c;w=l+2|0}if((B|0)==26){wl();A=1;B=96}else if((B|0)==51){Yl(140347);wl();A=1;B=96}else if((B|0)==56){Yl(140398);wl();A=1;B=96}else if((B|0)==95){Yl(140558);A=2;B=96}if((B|0)==96)if((e|0)!=(d|0))L2(e);k=g;return A|0}function ul(A,e){A=A|0;e=e|0;var i=0;i=qF(8)|0;r[i+4>>0]=e;a[i>>2]=A;return i|0}function wl(){var A=0,e=0;A=a[47402]|0;e=a[47400]|0;if(e|0){aa(e,1);a[47400]=0}a[14021]=67;while(1){if(!A)break;e=a[A+80>>2]|0;ml(A);A=e}a[14021]=56;a[14030]=68;e=a[47405]|0;y5[a[e>>2]&63](e,0,64)|0;a[14030]=56;a[14039]=69;e=a[47406]|0;y5[a[e>>2]&63](e,0,64)|0;a[14039]=56;yl();return}function kl(){var A=0,e=0,i=0,r=0,n=0,l=0;i=a[47406]|0;r=qF(40)|0;if(Sk(a[47405]|0)|0)hl(0);A=Sk(i)|0;f[r+4>>1]=A;A:do{if(!A)A=i;else{a[r>>2]=qF(A*24|0)|0;A=0;e=y5[a[i>>2]&63](i,0,128)|0;while(1){if(!e){A=i;break A}n=(a[r>>2]|0)+(A*24|0)|0;l=e+8|0;a[n>>2]=a[l>>2];a[n+4>>2]=a[l+4>>2];a[n+8>>2]=a[l+8>>2];a[n+12>>2]=a[l+12>>2];a[n+16>>2]=a[l+16>>2];a[n+20>>2]=a[l+20>>2];A=A+1|0;e=y5[a[i>>2]&63](i,e,8)|0}}}while(0);y5[a[A>>2]&63](i,0,64)|0;return r|0}function ol(A){A=A|0;var e=0,i=0,f=0;i=qF(64)|0;f=A+4|0;e=a[f>>2]|0;if(e>>>0>=(a[A+8>>2]|0)>>>0){so(A,1)|0;e=a[f>>2]|0}r[e>>0]=0;A=a[A>>2]|0;a[f>>2]=A;a[i+8>>2]=b3(A)|0;a[i+12>>2]=a[a[47403]>>2];f=a[47405]|0;y5[a[f>>2]&63](f,i,1)|0;return}function hl(A){A=A|0;var e=0,i=0,n=0,l=0,t=0,c=0,s=0;t=qF(32)|0;c=a[47405]|0;e=Sk(c)|0;s=t+8|0;r[t+14>>0]=A;A:do{if(!e){a[s>>2]=qF(56)|0;f[t+12>>1]=1;l=b3(195059)|0;s=a[s>>2]|0;a[s>>2]=l;a[s+4>>2]=a[a[47403]>>2]}else{f[t+12>>1]=e;a[s>>2]=qF(e*56|0)|0;A=0;e=xk(c)|0;while(1){if(!e)break A;i=(a[s>>2]|0)+(A*56|0)|0;n=e+8|0;l=i+56|0;do{a[i>>2]=a[n>>2];i=i+4|0;n=n+4|0}while((i|0)<(l|0));A=A+1|0;e=a[e>>2]|0}}}while(0);y5[a[c>>2]&63](c,0,64)|0;s=a[47406]|0;y5[a[s>>2]&63](s,t,1)|0;return}function dl(A){A=A|0;var e=0,i=0.0,r=0,f=0,n=0,l=0,t=0;t=k;k=k+32|0;n=t;l=qF(8)|0;f=a[a[47403]>>2]|0;a[n>>2]=a[A>>2];a[n+4>>2]=a[A+4>>2];a[n+8>>2]=a[A+8>>2];a[n+12>>2]=a[A+12>>2];a[n+16>>2]=a[A+16>>2];a[n+20>>2]=a[A+20>>2];a[n+24>>2]=a[A+24>>2];a[n+28>>2]=a[A+28>>2];if(f|0){A=n+4|0;if((a[A>>2]|0)==0?(e=a[f+4>>2]|0,e|0):0)a[A>>2]=e;A=n+16|0;if(+s[A>>3]<0.0?(i=+s[f+16>>3],i>=0.0):0)s[A>>3]=i;if((a[n>>2]|0)==0?(r=a[f>>2]|0,r|0):0)a[n>>2]=r;A=a[f+24>>2]&127;if(A|0){f=n+24|0;r=a[f>>2]|0;a[f>>2]=r&127|A|r&-128}}f=a[(a[47404]|0)+144>>2]|0;a[l>>2]=y5[a[f>>2]&63](f,n,1)|0;a[l+4>>2]=a[47403];a[47403]=l;k=t;return}function Bl(){var A=0,e=0;e=a[47403]|0;A=a[e+4>>2]|0;L2(e);a[47403]=A;return}function gl(A){A=A|0;var e=0;while(1){e=r[A>>0]|0;if(!(e<<24>>24)){A=0;break}if(e<<24>>24==32)A=A+1|0;else{A=1;break}}return A|0}function vl(){var A=0,e=0,i=0;i=jk(56068,a[4580]|0)|0;A=a[47402]|0;e=qF(16)|0;a[e+8>>2]=i;if(r[A+112>>0]&2)r[e+12>>0]=1;i=a[A+84>>2]|0;y5[a[i>>2]&63](i,e,1)|0;return}function El(){var A=0;A=a[(a[47402]|0)+84>>2]|0;return y5[a[A>>2]&63](A,0,256)|0}function Cl(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0;n=qF(16)|0;f=a[47402]|0;l=a[f+84>>2]|0;l=a[(y5[a[l>>2]&63](l,0,256)|0)+8>>2]|0;a[n+8>>2]=A;y5[a[l>>2]&63](l,n,1)|0;r[A+92>>0]=i;if(r[f+112>>0]&1)r[A+100>>0]=1;a[A+88>>2]=e;return}function Il(A,e,i){A=A|0;e=e|0;i=i|0;L2(e);return}function Zl(A,e,i){A=A|0;e=e|0;i=i|0;Hk(a[e+8>>2]|0)|0;L2(e);return}function Gl(A,e,i){A=A|0;e=e|0;i=i|0;Wl(a[e+8>>2]|0);L2(e);return}function ml(A){A=A|0;Hk(a[A+84>>2]|0)|0;ia(A);L2(A);return}function Ql(A,e,i){A=A|0;e=e|0;i=i|0;L2(a[e+8>>2]|0);L2(e);return}function Ll(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,n=0,l=0;n=e+12|0;A=f[n>>1]|0;if(A<<16>>16){l=e+8|0;i=0;r=a[l>>2]|0;while(1){if((i|0)>=(A<<16>>16|0))break;L2(a[r>>2]|0);i=i+1|0;r=r+56|0;A=f[n>>1]|0}L2(a[l>>2]|0)}L2(e);return}function yl(){var A=0,e=0;A=a[47403]|0;while(1){e=a[A+4>>2]|0;if(!e)break;L2(A);A=e}return}function Wl(A){A=A|0;var e=0;e=A+88|0;switch(r[A+92>>0]|0){case 1:{ml(a[e>>2]|0);break}case 2:{ra(a[e>>2]|0);break}default:{}}ia(A);L2(A);return}function zl(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;f=k;k=k+160|0;r=f+8|0;n=f;a[n>>2]=0;a[n+4>>2]=0;a[47403]=n;a[47402]=0;a[47400]=0;a[47404]=a[(a[(a[i+52>>2]|0)+16>>2]|0)+144>>2];a[47405]=jk(56104,a[4580]|0)|0;a[47406]=jk(56140,a[4580]|0)|0;co(r,128,f+24|0);a[47401]=r;if(!(Fl(A,r,i)|0)){bl()|0;a[e>>2]=Gt()|0;A=a[47400]|0}else{a[e>>2]=2;A=0}Hk(a[47405]|0)|0;Hk(a[47406]|0)|0;a[47405]=0;a[47406]=0;a[47403]=0;wo(r);k=f;return A|0}function Yl(A){A=A|0;var e=0,i=0,f=0;i=k;k=k+16|0;e=i;if(!(r[189661]|0)){r[189661]=1;f=Dl()|0;a[e>>2]=A;a[e+4>>2]=f;ao(1,140575,e)|0;Ml()}k=i;return}function Dl(){return kb(a[47407]|0)|0}function Ml(){var A=0,e=0,i=0,f=0;f=k;k=k+16|0;i=f;A=a[47410]|0;a[A+4>>2]=a[A>>2];e=a[47419]|0;if((e|0)>0){bo(A,a[47417]|0,e)|0;A=a[47410]|0}bo(A,a[47416]|0,a[47418]|0)|0;e=a[47410]|0;A=a[e+4>>2]|0;if(A>>>0>=(a[e+8>>2]|0)>>>0){so(e,1)|0;A=a[47410]|0;e=A;A=a[A+4>>2]|0}a[e+4>>2]=A+1;r[A>>0]=0;A=a[47410]|0;e=a[A>>2]|0;a[A+4>>2]=e;a[i>>2]=e;ao(3,140591,i)|0;k=f;return}function Fl(A,e,i){A=A|0;e=e|0;i=i|0;a[47410]=e;co(189644,128,0);a[47408]=A;r[189663]=0;r[189660]=0;r[189661]=0;a[47418]=0;a[47419]=0;r[189662]=1;i=i+52|0;e=Rc(NF(n[(a[(a[i>>2]|0)+16>>2]|0)+115>>0]|0)|0)|0;a[47407]=e;eb(e,a[(a[(a[i>>2]|0)+16>>2]|0)+144>>2]|0);ib(a[47407]|0,70,27);rb(a[47407]|0,71);return 0}function Vl(A,e,i){A=A|0;e=e|0;i=i|0;do{if(!(p1(e,140603)|0)){a[47399]=Rl(i)|0;r[189662]=0;a[47409]=286}else{if(p1(e,140609)|0?p1(e,140612)|0:0){if(!(p1(e,140615)|0)){r[189662]=1;a[47399]=Xl(i)|0;a[47409]=287;break}if(!(p1(e,140623)|0)){a[47399]=Hl(A,i,0)|0;a[47409]=288;break}if(!(p1(e,140628)|0)){a[47399]=Hl(A,0,1)|0;a[47409]=290;break}if(!(p1(e,140644)|0)){a[47399]=Hl(A,0,32)|0;a[47409]=295;break}if(!(p1(e,140630)|0)){a[47399]=Hl(A,0,4)|0;a[47409]=291;break}if(!(p1(e,140632)|0)){a[47399]=Hl(A,0,64)|0;a[47409]=292;break}if(!(p1(e,140634)|0)){a[47399]=Hl(A,0,2)|0;a[47409]=289;break}if(!(p1(e,140636)|0)){a[47399]=Hl(A,0,8)|0;a[47409]=293;break}if(!(p1(e,140640)|0)){a[47399]=Hl(A,0,16)|0;a[47409]=294;break}if(!(p1(e,140646)|0)){Ul(i);a[47409]=283;break}if(!(p1(e,140649)|0)){a[47409]=277;break}if(!(p1(e,140652)|0)){a[47409]=280;break}if(!(p1(e,140655)|0)){a[47399]=xl(i)|0;a[47409]=285;break}if(!(p1(e,140618)|0)){a[47409]=262;break}else{Nl(e);break}}r[189662]=0;a[47409]=260}}while(0);return}function Jl(A,e){A=A|0;e=e|0;do{if(!(p1(e,140603)|0)){a[47409]=264;r[189662]=1}else{if(p1(e,140609)|0?p1(e,140612)|0:0){if(!(p1(e,140615)|0)){a[47409]=265;r[189662]=0;break}if(!(p1(e,140618)|0)){a[47409]=263;break}if(!(p1(e,140623)|0)){a[47409]=266;break}if(!(p1(e,140628)|0)){a[47409]=270;break}if(!(p1(e,140630)|0)){a[47409]=271;break}if(!(p1(e,140632)|0)){a[47409]=272;break}if(!(p1(e,140634)|0)){a[47409]=269;break}if(!(p1(e,140636)|0)){a[47409]=273;break}if(!(p1(e,140640)|0)){a[47409]=274;break}if(!(p1(e,140644)|0)){a[47409]=275;break}if(!(p1(e,140646)|0)){a[47409]=(a[47409]|0)==283?282:258;break}if(!(p1(e,140649)|0)){a[47409]=(a[47409]|0)==277?276:278;break}if(!(p1(e,140652)|0)){a[47409]=(a[47409]|0)==280?279:281;break}if(!(p1(e,140655)|0)){a[47409]=(a[47409]|0)==285?284:259;break}else{Nl(e);break}}a[47409]=261}}while(0);return}function pl(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0;if(r[189662]|0){A=0;while(1){if(!i)break;l=e+1|0;n=r[e>>0]|0;if((n&255)>31){e=a[47410]|0;f=a[e+4>>2]|0;if(f>>>0>=(a[e+8>>2]|0)>>>0){so(e,1)|0;f=a[47410]|0;e=f;f=a[f+4>>2]|0}a[e+4>>2]=f+1;r[f>>0]=n;A=A+1|0}e=l;i=i+-1|0}if(A|0)a[47409]=267}return}function Nl(A){A=A|0;var e=0,i=0,f=0;e=k;k=k+16|0;i=e;a[47409]=268;r[189661]=1;f=Dl()|0;a[i>>2]=A;a[i+4>>2]=f;ao(1,140659,i)|0;k=e;return}function Rl(A){A=A|0;var e=0;e=qF(120)|0;a[e+100>>2]=-1;r[e+88>>0]=-1;Tl(e,56400,22,A,141611);return e|0}function Xl(A){A=A|0;var e=0;e=qF(104)|0;f[e+80>>1]=1;f[e+82>>1]=1;Tl(e,56224,22,A,140965);return e|0}function Hl(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;f=k;k=k+32|0;r=f;a[r>>2]=0;a[r+4>>2]=0;a[r+8>>2]=0;a[r+12>>2]=0;a[r+16>>2]=0;a[r+20>>2]=0;a[r+24>>2]=0;a[r+28>>2]=0;s[r+16>>3]=-1.0;a[r+24>>2]=i&127;if(e|0)Tl(r,56200,3,e,140816);i=a[A+144>>2]|0;r=y5[a[i>>2]&63](i,r,1)|0;k=f;return r|0}function Ul(A){A=A|0;a[47399]=0;Tl(189596,56192,1,A,140752);return}function xl(A){A=A|0;var e=0;e=qF(40)|0;Tl(e,56176,2,A,140698);return e|0}function Tl(A,e,i,f,l){A=A|0;e=e|0;i=i|0;f=f|0;l=l|0;var t=0,c=0,s=0,b=0,u=0,w=0;w=k;k=k+16|0;u=w;b=w+8|0;while(1){s=a[f>>2]|0;if(!s)break;t=a[f+4>>2]|0;a[b>>2]=s;c=i8(b,e,i,8,104)|0;if(!c){a[u>>2]=s;a[u+4>>2]=l;ao(0,140704,u)|0;t=1}else{t=Q5[a[c+4>>2]&127](A,t)|0;t=(t|(n[189660]|0))&255}r[189660]=t;f=f+8|0}k=w;return}function jl(A,e){A=A|0;e=e|0;return p1(a[A>>2]|0,a[e>>2]|0)|0}function Pl(A,e){A=A|0;e=e|0;a[A+36>>2]=b3(e)|0;return 0}function Sl(A,e){A=A|0;e=e|0;a[A+32>>2]=b3(e)|0;return 0}function Ol(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;n=t;f=(Y4(r[e>>0]|0)|0)<<24>>24;switch(f|0){case 82:{i=e+1|0;if(!(p1(i,140763)|0)){a[A>>2]=114;i=0}else l=5;break}case 76:{l=6;break}default:{i=e+1|0;l=5}}do{if((l|0)==5)if(!(p1(i,140768)|0))l=6;else{if((f|0)!=67?(p1(i,140772)|0)==0:0){a[n>>2]=e;ao(0,140778,n)|0;i=1;break}a[A>>2]=110;i=0}}while(0);if((l|0)==6){a[A>>2]=108;i=0}k=t;return i|0}function Kl(A,e){A=A|0;e=e|0;a[A+4>>2]=e;return 0}function _l(A,e){A=A|0;e=e|0;a[A>>2]=e;return 0}function ql(A,e){A=A|0;e=e|0;var i=0,r=0;r=k;k=k+16|0;i=r;if(!($l(e,140845,0,255,i)|0)){s[A+16>>3]=+(a[i>>2]|0);A=0}else A=1;k=r;return A|0}function $l(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0;s=k;k=k+48|0;c=s+24|0;t=s+8|0;l=s;b=s+36|0;n=n3(A,b,10)|0;do{if((a[b>>2]|0)!=(A|0)){if((n|0)>(r|0)){a[t>>2]=e;a[t+4>>2]=A;a[t+8>>2]=r;ao(0,140887,t)|0;A=1;break}if((n|0)<(i|0)){a[c>>2]=e;a[c+4>>2]=A;a[c+8>>2]=i;ao(0,140926,c)|0;A=1;break}else{a[f>>2]=n;A=0;break}}else{a[l>>2]=e;a[l+4>>2]=A;ao(0,140856,l)|0;A=1}}while(0);k=s;return A|0}function At(A,e){A=A|0;e=e|0;var i=0,n=0,l=0;l=k;k=k+16|0;i=l;switch((Y4(r[e>>0]|0)|0)<<24>>24|0){case 76:{if(!(p1(e+1|0,140768)|0)){A=A+36|0;f[A>>1]=f[A>>1]|4;A=0}else n=9;break}case 82:{if(!(p1(e+1|0,140763)|0)){A=A+36|0;f[A>>1]=f[A>>1]|2;A=0}else n=9;break}case 84:{if(!(p1(e+1|0,141563)|0)){A=A+36|0;f[A>>1]=f[A>>1]|6;A=0}else n=9;break}case 67:{if(!(p1(e+1|0,140772)|0))A=0;else n=9;break}default:n=9}if((n|0)==9){a[i>>2]=e;ao(0,141567,i)|0;A=1}k=l;return A|0}function et(A,e){A=A|0;e=e|0;var i=0,n=0,l=0;l=k;k=k+16|0;i=l;switch((Y4(r[e>>0]|0)|0)<<24>>24|0){case 76:{if(!(p1(e+1|0,140768)|0)){A=A+36|0;f[A>>1]=f[A>>1]|512;A=0}else n=7;break}case 82:{if(!(p1(e+1|0,140763)|0)){A=A+36|0;f[A>>1]=f[A>>1]|256;A=0}else n=7;break}case 67:{if(!(p1(e+1|0,140772)|0))A=0;else n=7;break}default:n=7}if((n|0)==7){a[i>>2]=e;ao(0,141518,i)|0;A=1}k=l;return A|0}function it(A,e){A=A|0;e=e|0;a[A+20>>2]=b3(e)|0;return 0}function rt(A,e){A=A|0;e=e|0;var i=0,n=0;n=k;k=k+16|0;i=n;if(!($l(e,141511,0,255,i)|0)){r[A+33>>0]=a[i>>2];A=A+36|0;f[A>>1]=f[A>>1]|32;A=0}else A=1;k=n;return A|0}function ft(A,e){A=A|0;e=e|0;var i=0,n=0;n=k;k=k+16|0;i=n;if(!($l(e,141499,0,255,i)|0)){r[A+34>>0]=a[i>>2];A=A+36|0;f[A>>1]=f[A>>1]|64;A=0}else A=1;k=n;return A|0}function at(A,e){A=A|0;e=e|0;var i=0,n=0;n=k;k=k+16|0;i=n;if(!($l(e,141487,-128,127,i)|0)){r[A+32>>0]=a[i>>2];A=A+36|0;f[A>>1]=f[A>>1]|128;A=0}else A=1;k=n;return A|0}function nt(A,e){A=A|0;e=e|0;a[A+24>>2]=b3(e)|0;return 0}function lt(A,e){A=A|0;e=e|0;var i=0,r=0,n=0;n=k;k=k+16|0;r=n;i=n+4|0;do{if(!($l(e,141442,0,65535,i)|0)){e=a[i>>2]|0;if(!e){ao(0,141450,r)|0;e=1;break}else{f[A+80>>1]=e;e=0;break}}else e=1}while(0);k=n;return e|0}function tt(A,e){A=A|0;e=e|0;var i=0,r=0,l=0;l=k;k=k+16|0;i=l;switch((Y4(n[e>>0]|0)|0)<<24>>24|0){case 84:{if(!(p1(e+1|0,141391)|0)){A=A+36|0;f[A>>1]=f[A>>1]|1;A=0}else r=5;break}case 70:{if(!(p1(e+1|0,141395)|0))A=0;else r=5;break}default:r=5}if((r|0)==5){a[i>>2]=e;ao(0,141400,i)|0;A=1}k=l;return A|0}function ct(A,e){A=A|0;e=e|0;var i=0,r=0;r=k;k=k+16|0;i=r;if(!($l(e,141377,0,360,i)|0)){a[A+28>>2]=a[i>>2]&65535;A=0}else A=1;k=r;return A|0}function st(A,e){A=A|0;e=e|0;var i=0,r=0;r=k;k=k+16|0;i=r;if(!($l(e,141370,0,65535,i)|0)){f[A+40>>1]=a[i>>2];A=0}else A=1;k=r;return A|0}function bt(A,e){A=A|0;e=e|0;a[A>>2]=b3(e)|0;return 0}function ut(A,e){A=A|0;e=e|0;a[A+16>>2]=b3(e)|0;return 0}function wt(A,e){A=A|0;e=e|0;a[A+4>>2]=b3(e)|0;return 0}function kt(A,e){A=A|0;e=e|0;var i=0,r=0,n=0;n=k;k=k+16|0;r=n;i=n+4|0;do{if(!($l(e,141325,0,65535,i)|0)){e=a[i>>2]|0;if(!e){ao(0,141333,r)|0;e=1;break}else{f[A+82>>1]=e;e=0;break}}else e=1}while(0);k=n;return e|0}function ot(A,e){A=A|0;e=e|0;var i=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+16|0;t=s;l=0;A:while(1){e:while(1){n=e+1|0;e=r[e>>0]|0;if(!(e<<24>>24))break A;e=e<<24>>24;i=(N1(e)|0)+-98|0;switch(i>>>1|i<<31|0){case 5:{c=5;break e}case 9:{i=2048;break e}case 8:{c=6;break e}case 0:{c=7;break e}default:{}}a[t>>2]=e;a[t+4>>2]=e;ao(0,141272,t)|0;e=n}if((c|0)==5){c=0;i=1024}else if((c|0)==6){c=0;i=4096}else if((c|0)==7){c=0;i=8192}e=n;l=l|i}if(l<<16>>16!=15360){c=A+36|0;f[c>>1]=f[c>>1]|l}k=s;return 0}function ht(A,e){A=A|0;e=e|0;var i=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+16|0;c=s+8|0;t=s;l=b3(e)|0;n=A+42|0;i=0;e=l;while(1){A=t3(e,141182)|0;if(!A)break;if(((Y4(r[A>>0]|0)|0)&255|0)==82){e=A+1|0;if(!(p1(e,141185)|0)){f[n>>1]=f[n>>1]|4;A=i;e=0;i=A;continue}if(!(p1(e,141192)|0)){f[n>>1]=f[n>>1]|2;A=i;e=0;i=A;continue}else{a[t>>2]=A;ao(0,141198,t)|0;i=1;e=0;continue}}if(!(p1(A,141236)|0)){f[n>>1]=f[n>>1]&-385;A=i;e=0;i=A;continue}if(p1(A,141242)|0?p1(A,141252)|0:0){if(!(p1(A,141258)|0)){f[n>>1]=f[n>>1]|128;A=i;e=0;i=A;continue}if(!(p1(A,141265)|0)){f[n>>1]=f[n>>1]|256;A=i;e=0;i=A;continue}else{a[c>>2]=A;ao(0,141198,c)|0;i=1;e=0;continue}}f[n>>1]=f[n>>1]|32;A=i;e=0;i=A}L2(l);k=s;return i|0}function dt(A,e){A=A|0;e=e|0;a[A+8>>2]=b3(e)|0;return 0}function Bt(A,e){A=A|0;e=e|0;a[A+12>>2]=b3(e)|0;return 0}function gt(A,e){A=A|0;e=e|0;var i=0,n=0,l=0;l=k;k=k+16|0;i=l;switch((Y4(r[e>>0]|0)|0)<<24>>24|0){case 66:{if(!(p1(e+1|0,141128)|0)){A=A+36|0;f[A>>1]=f[A>>1]|16;A=0}else n=7;break}case 84:{if(!(p1(e+1|0,141134)|0)){A=A+36|0;f[A>>1]=f[A>>1]|8;A=0}else n=7;break}case 77:{if(!(p1(e+1|0,141137)|0))A=0;else n=7;break}default:n=7}if((n|0)==7){a[i>>2]=e;ao(0,141143,i)|0;A=1}k=l;return A|0}function vt(A,e){A=A|0;e=e|0;var i=0,r=0;r=k;k=k+16|0;i=r;if(!($l(e,141122,0,65535,i)|0)){f[A+38>>1]=a[i>>2];A=0}else A=1;k=r;return A|0}function Et(A,e){A=A|0;e=e|0;var i=0,n=0,l=0;l=k;k=k+16|0;i=l;switch((Y4(r[e>>0]|0)|0)<<24>>24|0){case 76:{if(!(p1(e+1|0,140768)|0)){A=A+36|0;f[A>>1]=f[A>>1]|4;A=0}else n=7;break}case 82:{if(!(p1(e+1|0,140763)|0)){A=A+36|0;f[A>>1]=f[A>>1]|2;A=0}else n=7;break}case 67:{if(!(p1(e+1|0,140772)|0))A=0;else n=7;break}default:n=7}if((n|0)==7){a[i>>2]=e;ao(0,140778,i)|0;A=1}k=l;return A|0}function Ct(A,e){A=A|0;e=e|0;var i=0,f=0;f=k;k=k+16|0;i=f;if(!($l(e,141720,0,127,i)|0)){r[A+88>>0]=a[i>>2];A=0}else A=1;k=f;return A|0}function It(A,e){A=A|0;e=e|0;var i=0,f=0;f=k;k=k+16|0;i=f;if((r[e>>0]|0)==42){A=A+112|0;r[A>>0]=r[A>>0]|1;A=0}else{a[i>>2]=e;ao(0,141680,i)|0;A=1}k=f;return A|0}function Zt(A,e){A=A|0;e=e|0;var i=0,f=0;f=k;k=k+16|0;i=f;if((r[e>>0]|0)==42){A=A+112|0;r[A>>0]=r[A>>0]|2;A=0}else{a[i>>2]=e;ao(0,141643,i)|0;A=1}k=f;return A|0}function Gt(){var A=0;A=(r[189661]|r[189660])<<24>>24;jc(a[47407]|0);wo(189644);return A|0}function mt(){var A=0,e=0,i=0,f=0,n=0,l=0,t=0,c=0;c=k;k=k+16|0;t=c;a[47409]=0;e=0;A:do{e:do{switch(r[189663]|0){case 2:{A=-1;break A}case 0:{r[189663]=1;l=6;A=141732;e=0;break}default:{A=a[47408]|0;if(!(r[A>>0]|0)){r[189663]=2;l=7;A=141739;break e}else{e=Qt(A)|0;l=e-A|0;break e}}}}while(0);a[47417]=a[47416];a[47419]=a[47418];a[47416]=A;a[47418]=l;i=a[47412]|0;f=i-(a[47411]|0)|0;n=a[47407]|0;if(!f)A=fb(n,A,l,(l|0)==0&1)|0;else{if(i>>>0<(a[47413]|0)>>>0)A=i;else{so(189644,1)|0;A=a[47412]|0}r[A>>0]=0;A=a[47411]|0;a[47412]=A;A=fb(n,A,f,0)|0}if(!((A|0)!=0|(r[189661]|0)!=0)){n=ob(wb(a[47407]|0)|0)|0;l=Dl()|0;a[t>>2]=n;a[t+4>>2]=l;ao(1,140575,t)|0;Ml();r[189661]=1;a[47409]=268}if(e|0)a[47408]=e;A=a[47409]|0}while((A|0)==0);k=c;return A|0}function Qt(A){A=A|0;var e=0,i=0,f=0,n=0,l=0;l=k;k=k+16|0;f=l;e=A+1|0;i=r[A>>0]|0;A:do{if(i<<24>>24==60){i=r[e>>0]|0;if(i<<24>>24==33)if(!(Z1(A+2|0,141747,2)|0)){i=Lt(A+4|0)|0;e=i;i=r[i>>0]|0;n=8}else{i=e;n=5}else n=6;e:while(1)if((n|0)==5){e=i;i=r[i>>0]|0;n=6;continue}else if((n|0)==6){switch(i<<24>>24){case 62:case 0:{n=8;continue e}default:{}}i=e+1|0;n=5;continue}else if((n|0)==8)if(i<<24>>24==62){n=10;break}else{n=9;break}if((n|0)==9){ao(0,141750,f)|0;r[189660]=1;break}else if((n|0)==10){e=e+1|0;break}}else{e=A;A=i;while(1){switch(A<<24>>24){case 60:case 0:break A;case 38:{i=e+1|0;if((r[i>>0]|0)==35)n=15;else i=hX(i,189644)|0;break}default:n=15}if((n|0)==15){n=0;i=a[47412]|0;if(i>>>0>=(a[47413]|0)>>>0){so(189644,1)|0;i=a[47412]|0}a[47412]=i+1;r[i>>0]=A;i=e+1|0}e=i;A=r[i>>0]|0}}}while(0);k=l;return e|0}function Lt(A){A=A|0;var e=0,i=0,f=0,a=0,n=0,l=0,t=0,c=0;c=k;k=k+16|0;t=c;a=1;e=A;A:while(1){f=(a|0)==0;i=e;e:while(1){if(f)break A;n=i+1|0;switch(r[i>>0]|0){case 0:{e=n;break A}case 60:{l=5;break e}case 62:{e=-1;break e}default:i=n}}if((l|0)==5){l=0;e=1}a=a+e|0;e=n}i=e+-1|0;do{if(r[i>>0]|0){e=e+-3|0;if(e>>>0>=A>>>0?(Z1(e,141747,2)|0)==0:0)break;ao(0,141791,t)|0;r[189660]=1}}while(0);k=c;return i|0}function yt(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0;i=Q2(28)|0;if(!i)i=0;else{r=0;f=0;while(1){if((r|0)>=(e|0))break;d=(a[(a[A+(r<<2)>>2]|0)+4>>2]|0)+f|0;r=r+1|0;f=d}k=i+8|0;a[k>>2]=Wt(f<<4)|0;o=i+12|0;a[o>>2]=Wt((e<<2)+4|0)|0;r=f<<2;h=i+16|0;a[h>>2]=Wt(r)|0;r=Wt(r)|0;d=i+20|0;a[d>>2]=r;a[i+4>>2]=f;a[i>>2]=e;f=0;l=0;while(1){a[(a[o>>2]|0)+(l<<2)>>2]=f;if((l|0)>=(e|0))break;c=A+(l<<2)|0;w=a[c>>2]|0;s=a[w+4>>2]|0;b=f+-1|0;n=0;t=f;u=s;while(1){if((n|0)>=(u|0))break;u=(a[k>>2]|0)+(t<<4)|0;r=(a[w>>2]|0)+(n<<4)|0;a[u>>2]=a[r>>2];a[u+4>>2]=a[r+4>>2];a[u+8>>2]=a[r+8>>2];a[u+12>>2]=a[r+12>>2];u=t+1|0;a[(a[h>>2]|0)+(t<<2)>>2]=u;r=a[d>>2]|0;a[r+(t<<2)>>2]=t+-1;B=a[c>>2]|0;n=n+1|0;t=u;u=a[B+4>>2]|0;w=B}B=b+s|0;a[(a[h>>2]|0)+(B<<2)>>2]=f;a[r+(f<<2)>>2]=B;f=t;l=l+1|0}Wc(i)}return i|0}function Wt(A){A=A|0;if(!A)A=0;else A=Q2(A)|0;return A|0}function zt(A){A=A|0;var e=0,i=0;L2(a[A+8>>2]|0);L2(a[A+12>>2]|0);L2(a[A+16>>2]|0);L2(a[A+20>>2]|0);i=A+24|0;e=a[i>>2]|0;if(e|0){L2(a[e>>2]|0);L2(a[i>>2]|0)}L2(A);return}function Yt(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0;o=k;k=k+32|0;b=o+16|0;c=o;a[b>>2]=a[e>>2];a[b+4>>2]=a[e+4>>2];a[b+8>>2]=a[e+8>>2];a[b+12>>2]=a[e+12>>2];u=Jc(A,i,b)|0;a[b>>2]=a[r>>2];a[b+4>>2]=a[r+4>>2];a[b+8>>2]=a[r+8>>2];a[b+12>>2]=a[r+12>>2];w=Jc(A,f,b)|0;a[c>>2]=a[e>>2];a[c+4>>2]=a[e+4>>2];a[c+8>>2]=a[e+8>>2];a[c+12>>2]=a[e+12>>2];a[b>>2]=a[r>>2];a[b+4>>2]=a[r+4>>2];a[b+8>>2]=a[r+8>>2];a[b+12>>2]=a[r+12>>2];b=vc(c,i,u,b,f,w,A)|0;i=a[A+4>>2]|0;c=i+1|0;f=1;l=i;while(1){l=a[b+(l<<2)>>2]|0;s=f+1|0;if((l|0)==(c|0))break;else f=s}t=Q2(s<<4)|0;l=t+(f<<4)|0;a[l>>2]=a[r>>2];a[l+4>>2]=a[r+4>>2];a[l+8>>2]=a[r+8>>2];a[l+12>>2]=a[r+12>>2];A=A+8|0;while(1){i=a[b+(i<<2)>>2]|0;f=f+-1|0;l=t+(f<<4)|0;if((i|0)==(c|0))break;r=(a[A>>2]|0)+(i<<4)|0;a[l>>2]=a[r>>2];a[l+4>>2]=a[r+4>>2];a[l+8>>2]=a[r+8>>2];a[l+12>>2]=a[r+12>>2]}a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2];if(f|0)gA(141809,141816,148,141822);if(u|0)L2(u);if(w|0)L2(w);a[n+4>>2]=s;a[n>>2]=t;L2(b);k=o;return 1}function Dt(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;c=k;k=k+48|0;l=c+32|0;n=c+16|0;f=c;t=a[A>>2]|0;i=a[A+4>>2]|0;r=i+-1|0;A=0;while(1){if((A|0)>=(i|0)){A=1;break}b=t+(((r+A|0)%(i|0)|0)<<4)|0;s=t+(A<<4)|0;a[f>>2]=a[b>>2];a[f+4>>2]=a[b+4>>2];a[f+8>>2]=a[b+8>>2];a[f+12>>2]=a[b+12>>2];a[n>>2]=a[s>>2];a[n+4>>2]=a[s+4>>2];a[n+8>>2]=a[s+8>>2];a[n+12>>2]=a[s+12>>2];a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2];if((mc(f,n,l)|0)==1){A=0;break}else A=A+1|0}k=c;return A|0}function Mt(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,g=0,v=0;v=k;k=k+64|0;b=v+48|0;s=v+32|0;h=4;c=Q2(40)|0;a[c>>2]=0;u=v+16|0;w=v;o=a[i>>2]|0;t=a[i+4>>2]|0;h=L6(189680,1,c|0,h|0)|0;c=L;d=0;i=d;d=0;if((i|0)!=0&(B|0)!=0){n=y6(a[i>>2]|0,h|0,c|0)|0;if(!n)fe(i|0,B|0);L=B}else n=-1;if((n|0)==1)i=L;else i=0;while(1){if(i|0){i=-1;break}d=0;a[b>>2]=a[r>>2];a[b+4>>2]=a[r+4>>2];a[b+8>>2]=a[r+8>>2];a[b+12>>2]=a[r+12>>2];uA(28,u|0,b|0);i=d;d=0;if((i|0)!=0&(B|0)!=0){n=y6(a[i>>2]|0,h|0,c|0)|0;if(!n)fe(i|0,B|0);L=B}else n=-1;if((n|0)==1){i=L;continue}a[r>>2]=a[u>>2];a[r+4>>2]=a[u+4>>2];a[r+8>>2]=a[u+8>>2];a[r+12>>2]=a[u+12>>2];l=r+16|0;d=0;a[b>>2]=a[l>>2];a[b+4>>2]=a[l+4>>2];a[b+8>>2]=a[l+8>>2];a[b+12>>2]=a[l+12>>2];uA(28,w|0,b|0);i=d;d=0;if((i|0)!=0&(B|0)!=0){n=y6(a[i>>2]|0,h|0,c|0)|0;if(!n)fe(i|0,B|0);L=B}else n=-1;if((n|0)==1){i=L;continue}a[l>>2]=a[w>>2];a[l+4>>2]=a[w+4>>2];a[l+8>>2]=a[w+8>>2];a[l+12>>2]=a[w+12>>2];a[47459]=0;d=0;bA(115,4);i=d;d=0;if((i|0)!=0&(B|0)!=0){n=y6(a[i>>2]|0,h|0,c|0)|0;if(!n)fe(i|0,B|0);L=B}else n=-1;if((n|0)==1){i=L;continue}n=a[47460]|0;i=a[47459]|0;a[47459]=i+1;i=n+(i<<4)|0;a[i>>2]=a[o>>2];a[i+4>>2]=a[o+4>>2];a[i+8>>2]=a[o+8>>2];a[i+12>>2]=a[o+12>>2];d=0;a[s>>2]=a[r>>2];a[s+4>>2]=a[r+4>>2];a[s+8>>2]=a[r+8>>2];a[s+12>>2]=a[r+12>>2];a[b>>2]=a[l>>2];a[b+4>>2]=a[l+4>>2];a[b+8>>2]=a[l+8>>2];a[b+12>>2]=a[l+12>>2];i=tA(1,A|0,e|0,o|0,t|0,s|0,b|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,h|0,c|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1)i=L;else{g=8;break}}if((g|0)==8)if((i|0)==-1)i=-1;else{a[f+4>>2]=a[47459];a[f>>2]=a[47460];i=0}L2(h|0);k=v;return i|0}function Ft(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0.0,n=0.0,l=0.0;i=+s[e>>3];r=e+8|0;f=+s[r>>3];l=f*f+i*i;n=+z(+l);if(l>1.0e-06){s[e>>3]=i/n;s[r>>3]=f/n}a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];return}function Vt(A){A=A|0;var e=0,i=0,r=0,f=0;f=k;k=k+32|0;r=f+16|0;i=f;if((a[47463]|0)<(A|0)){e=a[47460]|0;if(!e){r=Q2(A<<4)|0;a[47460]=r;if(!r){r=a[15712]|0;a[i>>2]=141831;a[i+4>>2]=531;a[i+8>>2]=141966;f3(r,141839,i)|0;fe(189680,1)}}else{i=W2(e,A<<4)|0;a[47460]=i;if(!i){i=a[15712]|0;a[r>>2]=141831;a[r+4>>2]=537;a[r+8>>2]=141984;f3(i,141839,r)|0;fe(189680,1)}}a[47463]=A}k=f;return}function Jt(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0.0,c=0,b=0.0,u=0,w=0.0,o=0.0,h=0,d=0.0,B=0.0,g=0.0,v=0.0,E=0.0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,U=0,x=0,T=0.0,j=0.0,P=0.0,S=0.0;U=k;k=k+336|0;F=U+320|0;M=U+304|0;C=U+144|0;h=U+128|0;Y=U+112|0;D=U+96|0;H=U+80|0;m=U+64|0;L=U+48|0;V=U+32|0;J=U+16|0;p=U;I=U+288|0;Z=U+272|0;G=U+256|0;Q=U+240|0;y=U+224|0;W=U+208|0;N=U+192|0;R=U+176|0;X=U+160|0;l=a[47462]|0;do{if((a[47461]|0)<(r|0)){if(!l){l=Q2(r*40|0)|0;a[47462]=l;if(!l){l=-1;break}}else{l=W2(l,r*40|0)|0;a[47462]=l;if(!l){l=-1;break}}a[47461]=r;c=6}else c=6}while(0);if((c|0)==6){s[l>>3]=0.0;c=1;t=0.0;while(1){if((c|0)>=(r|0))break;u=i+(c<<4)|0;z=i+(c+-1<<4)|0;a[M>>2]=a[u>>2];a[M+4>>2]=a[u+4>>2];a[M+8>>2]=a[u+8>>2];a[M+12>>2]=a[u+12>>2];a[F>>2]=a[z>>2];a[F+4>>2]=a[z+4>>2];a[F+8>>2]=a[z+8>>2];a[F+12>>2]=a[z+12>>2];E=+pt(M,F)+t;s[l+(c*40|0)>>3]=E;c=c+1|0;t=E}z=r+-1|0;u=l+(z*40|0)|0;c=1;while(1){if((c|0)>=(r|0))break;x=l+(c*40|0)|0;s[x>>3]=+s[x>>3]/+s[u>>3];c=c+1|0}c=0;while(1){if((c|0)>=(r|0))break;x=l+(c*40|0)+8|0;u=l+(c*40|0)|0;E=+Nt(+s[u>>3]);a[F>>2]=a[f>>2];a[F+4>>2]=a[f+4>>2];a[F+8>>2]=a[f+8>>2];a[F+12>>2]=a[f+12>>2];Rt(I,F,E);a[x>>2]=a[I>>2];a[x+4>>2]=a[I+4>>2];a[x+8>>2]=a[I+8>>2];a[x+12>>2]=a[I+12>>2];x=l+(c*40|0)+24|0;E=+Xt(+s[u>>3]);a[F>>2]=a[n>>2];a[F+4>>2]=a[n+4>>2];a[F+8>>2]=a[n+8>>2];a[F+12>>2]=a[n+12>>2];Rt(Z,F,E);a[x>>2]=a[Z>>2];a[x+4>>2]=a[Z+4>>2];a[x+8>>2]=a[Z+8>>2];a[x+12>>2]=a[Z+12>>2];c=c+1|0}a[M>>2]=a[f>>2];a[M+4>>2]=a[f+4>>2];a[M+8>>2]=a[f+8>>2];a[M+12>>2]=a[f+12>>2];a[F>>2]=a[n>>2];a[F+4>>2]=a[n+4>>2];a[F+8>>2]=a[n+8>>2];a[F+12>>2]=a[n+12>>2];Ht(i,r,l,M,F,Y,m,D,L);a[h>>2]=a[Y>>2];a[h+4>>2]=a[Y+4>>2];a[h+8>>2]=a[Y+8>>2];a[h+12>>2]=a[Y+12>>2];a[C>>2]=a[m>>2];a[C+4>>2]=a[m+4>>2];a[C+8>>2]=a[m+8>>2];a[C+12>>2]=a[m+12>>2];a[M>>2]=a[D>>2];a[M+4>>2]=a[D+4>>2];a[M+8>>2]=a[D+8>>2];a[M+12>>2]=a[D+12>>2];a[F>>2]=a[L>>2];a[F+4>>2]=a[L+4>>2];a[F+8>>2]=a[L+8>>2];a[F+12>>2]=a[L+12>>2];if(!(Ut(A,e,h,C,M,F,i,r)|0)){a[F>>2]=a[m>>2];a[F+4>>2]=a[m+4>>2];a[F+8>>2]=a[m+8>>2];a[F+12>>2]=a[m+12>>2];Rt(G,F,.3333333333333333);a[M>>2]=a[Y>>2];a[M+4>>2]=a[Y+4>>2];a[M+8>>2]=a[Y+8>>2];a[M+12>>2]=a[Y+12>>2];a[F>>2]=a[G>>2];a[F+4>>2]=a[G+4>>2];a[F+8>>2]=a[G+8>>2];a[F+12>>2]=a[G+12>>2];xt(Q,M,F);E=+s[Q>>3];v=+s[Q+8>>3];a[F>>2]=a[L>>2];a[F+4>>2]=a[L+4>>2];a[F+8>>2]=a[L+8>>2];a[F+12>>2]=a[L+12>>2];Rt(y,F,.3333333333333333);a[M>>2]=a[D>>2];a[M+4>>2]=a[D+4>>2];a[M+8>>2]=a[D+8>>2];a[M+12>>2]=a[D+12>>2];a[F>>2]=a[y>>2];a[F+4>>2]=a[y+4>>2];a[F+8>>2]=a[y+8>>2];a[F+12>>2]=a[y+12>>2];Tt(W,M,F);g=+s[W>>3];o=+s[W+8>>3];h=a[47462]|0;d=+s[Y>>3];B=+s[D>>3];w=+s[Y+8>>3];b=+s[D+8>>3];u=H+8|0;l=-1;t=-1.0;c=1;while(1){if((c|0)>=(z|0))break;T=+s[h+(c*40|0)>>3];j=+jt(T);P=+Nt(T);S=+Xt(T);T=+Pt(T);s[H>>3]=P*E+d*j+S*g+B*T;s[u>>3]=S*o+P*v+w*j+b*T;x=i+(c<<4)|0;a[M>>2]=a[H>>2];a[M+4>>2]=a[H+4>>2];a[M+8>>2]=a[H+8>>2];a[M+12>>2]=a[H+12>>2];a[F>>2]=a[x>>2];a[F+4>>2]=a[x+4>>2];a[F+8>>2]=a[x+8>>2];a[F+12>>2]=a[x+12>>2];T=+pt(M,F);x=T>t;l=x?c:l;t=x?T:t;c=c+1|0}x=i+(l<<4)|0;H=i+(l+-1<<4)|0;a[M>>2]=a[x>>2];a[M+4>>2]=a[x+4>>2];a[M+8>>2]=a[x+8>>2];a[M+12>>2]=a[x+12>>2];a[F>>2]=a[H>>2];a[F+4>>2]=a[H+4>>2];a[F+8>>2]=a[H+8>>2];a[F+12>>2]=a[H+12>>2];Tt(N,M,F);a[F>>2]=a[N>>2];a[F+4>>2]=a[N+4>>2];a[F+8>>2]=a[N+8>>2];a[F+12>>2]=a[N+12>>2];Ft(J,F);H=l+1|0;N=i+(H<<4)|0;a[M>>2]=a[N>>2];a[M+4>>2]=a[N+4>>2];a[M+8>>2]=a[N+8>>2];a[M+12>>2]=a[N+12>>2];a[F>>2]=a[x>>2];a[F+4>>2]=a[x+4>>2];a[F+8>>2]=a[x+8>>2];a[F+12>>2]=a[x+12>>2];Tt(R,M,F);a[F>>2]=a[R>>2];a[F+4>>2]=a[R+4>>2];a[F+8>>2]=a[R+8>>2];a[F+12>>2]=a[R+12>>2];Ft(p,F);a[M>>2]=a[J>>2];a[M+4>>2]=a[J+4>>2];a[M+8>>2]=a[J+8>>2];a[M+12>>2]=a[J+12>>2];a[F>>2]=a[p>>2];a[F+4>>2]=a[p+4>>2];a[F+8>>2]=a[p+8>>2];a[F+12>>2]=a[p+12>>2];xt(X,M,F);a[F>>2]=a[X>>2];a[F+4>>2]=a[X+4>>2];a[F+8>>2]=a[X+8>>2];a[F+12>>2]=a[X+12>>2];Ft(V,F);a[M>>2]=a[f>>2];a[M+4>>2]=a[f+4>>2];a[M+8>>2]=a[f+8>>2];a[M+12>>2]=a[f+12>>2];a[F>>2]=a[V>>2];a[F+4>>2]=a[V+4>>2];a[F+8>>2]=a[V+8>>2];a[F+12>>2]=a[V+12>>2];Jt(A,e,i,H,M,F)|0;a[M>>2]=a[V>>2];a[M+4>>2]=a[V+4>>2];a[M+8>>2]=a[V+8>>2];a[M+12>>2]=a[V+12>>2];a[F>>2]=a[n>>2];a[F+4>>2]=a[n+4>>2];a[F+8>>2]=a[n+8>>2];a[F+12>>2]=a[n+12>>2];Jt(A,e,x,r-l|0,M,F)|0;l=0}else l=0}k=U;return l|0}function pt(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;i=+s[e>>3]-+s[A>>3];r=+s[e+8>>3]-+s[A+8>>3];return+ +z(+(r*r+i*i))}function Nt(A){A=+A;var e=0.0;e=1.0-A;return+(e*e*(A*3.0))}function Rt(A,e,i){A=A|0;e=e|0;i=+i;var r=0;s[e>>3]=+s[e>>3]*i;r=e+8|0;s[r>>3]=+s[r>>3]*i;a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];return}function Xt(A){A=+A;return+(A*A*3.0*(1.0-A))}function Ht(A,e,i,r,f,n,l,t,c){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;t=t|0;c=c|0;var b=0.0,u=0.0,w=0.0,o=0.0,h=0,d=0,B=0,g=0,v=0,E=0,C=0.0,I=0.0,Z=0.0,G=0.0,m=0.0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0.0,M=0.0,F=0,V=0,J=0,p=0;Y=k;k=k+128|0;Q=Y+112|0;E=Y+80|0;v=Y;d=Y+96|0;B=Y+64|0;g=Y+48|0;L=Y+32|0;y=Y+16|0;W=A+(e+-1<<4)|0;h=0;C=0.0;I=0.0;Z=0.0;G=0.0;m=0.0;while(1){if((h|0)>=(e|0))break;V=i+(h*40|0)+8|0;a[E>>2]=a[V>>2];a[E+4>>2]=a[V+4>>2];a[E+8>>2]=a[V+8>>2];a[E+12>>2]=a[V+12>>2];a[Q>>2]=a[V>>2];a[Q+4>>2]=a[V+4>>2];a[Q+8>>2]=a[V+8>>2];a[Q+12>>2]=a[V+12>>2];D=+$t(E,Q)+I;F=i+(h*40|0)+24|0;a[E>>2]=a[V>>2];a[E+4>>2]=a[V+4>>2];a[E+8>>2]=a[V+8>>2];a[E+12>>2]=a[V+12>>2];a[Q>>2]=a[F>>2];a[Q+4>>2]=a[F+4>>2];a[Q+8>>2]=a[F+8>>2];a[Q+12>>2]=a[F+12>>2];o=+$t(E,Q)+m;a[E>>2]=a[F>>2];a[E+4>>2]=a[F+4>>2];a[E+8>>2]=a[F+8>>2];a[E+12>>2]=a[F+12>>2];a[Q>>2]=a[F>>2];a[Q+4>>2]=a[F+4>>2];a[Q+8>>2]=a[F+8>>2];a[Q+12>>2]=a[F+12>>2];w=+$t(E,Q)+Z;J=A+(h<<4)|0;p=i+(h*40|0)|0;M=+Ac(+s[p>>3]);a[Q>>2]=a[A>>2];a[Q+4>>2]=a[A+4>>2];a[Q+8>>2]=a[A+8>>2];a[Q+12>>2]=a[A+12>>2];Rt(B,Q,M);M=+ec(+s[p>>3]);a[Q>>2]=a[W>>2];a[Q+4>>2]=a[W+4>>2];a[Q+8>>2]=a[W+8>>2];a[Q+12>>2]=a[W+12>>2];Rt(g,Q,M);a[E>>2]=a[B>>2];a[E+4>>2]=a[B+4>>2];a[E+8>>2]=a[B+8>>2];a[E+12>>2]=a[B+12>>2];a[Q>>2]=a[g>>2];a[Q+4>>2]=a[g+4>>2];a[Q+8>>2]=a[g+8>>2];a[Q+12>>2]=a[g+12>>2];xt(d,E,Q);a[E>>2]=a[J>>2];a[E+4>>2]=a[J+4>>2];a[E+8>>2]=a[J+8>>2];a[E+12>>2]=a[J+12>>2];a[Q>>2]=a[d>>2];a[Q+4>>2]=a[d+4>>2];a[Q+8>>2]=a[d+8>>2];a[Q+12>>2]=a[d+12>>2];Tt(v,E,Q);a[E>>2]=a[V>>2];a[E+4>>2]=a[V+4>>2];a[E+8>>2]=a[V+8>>2];a[E+12>>2]=a[V+12>>2];a[Q>>2]=a[v>>2];a[Q+4>>2]=a[v+4>>2];a[Q+8>>2]=a[v+8>>2];a[Q+12>>2]=a[v+12>>2];M=+$t(E,Q)+C;a[E>>2]=a[F>>2];a[E+4>>2]=a[F+4>>2];a[E+8>>2]=a[F+8>>2];a[E+12>>2]=a[F+12>>2];a[Q>>2]=a[v>>2];a[Q+4>>2]=a[v+4>>2];a[Q+8>>2]=a[v+8>>2];a[Q+12>>2]=a[v+12>>2];h=h+1|0;C=M;I=D;Z=w;G=+$t(E,Q)+G;m=o}w=Z*I-m*m;o=w>=0.0?w:-w;if(!(o>=1.0e-06?(b=(Z*C-m*G)/w,u=(I*G-m*C)/w,!(o<1.0e-06|b<=0.0|u<=0.0)):0))z=6;if((z|0)==6){a[E>>2]=a[A>>2];a[E+4>>2]=a[A+4>>2];a[E+8>>2]=a[A+8>>2];a[E+12>>2]=a[A+12>>2];a[Q>>2]=a[W>>2];a[Q+4>>2]=a[W+4>>2];a[Q+8>>2]=a[W+8>>2];a[Q+12>>2]=a[W+12>>2];b=+pt(E,Q)*.3333333333333333;u=b}a[n>>2]=a[A>>2];a[n+4>>2]=a[A+4>>2];a[n+8>>2]=a[A+8>>2];a[n+12>>2]=a[A+12>>2];a[Q>>2]=a[r>>2];a[Q+4>>2]=a[r+4>>2];a[Q+8>>2]=a[r+8>>2];a[Q+12>>2]=a[r+12>>2];Rt(L,Q,b);a[l>>2]=a[L>>2];a[l+4>>2]=a[L+4>>2];a[l+8>>2]=a[L+8>>2];a[l+12>>2]=a[L+12>>2];a[t>>2]=a[W>>2];a[t+4>>2]=a[W+4>>2];a[t+8>>2]=a[W+8>>2];a[t+12>>2]=a[W+12>>2];a[Q>>2]=a[f>>2];a[Q+4>>2]=a[f+4>>2];a[Q+8>>2]=a[f+8>>2];a[Q+12>>2]=a[f+12>>2];Rt(y,Q,u);a[c>>2]=a[y>>2];a[c+4>>2]=a[y+4>>2];a[c+8>>2]=a[y+8>>2];a[c+12>>2]=a[y+12>>2];k=Y;return}function Ut(A,e,i,r,f,n,l,t){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;t=t|0;var c=0.0,b=0.0,u=0.0,w=0.0,o=0.0,h=0,d=0.0,B=0.0,g=0,v=0.0,E=0,C=0.0,I=0,Z=0.0,G=0,m=0,Q=0,L=0,y=0.0,W=0;L=k;k=k+64|0;Q=L;G=(t|0)==2;Z=+s[i>>3];v=+s[i+8>>3];E=Q+8|0;C=+s[r>>3];I=Q+16|0;o=+s[r+8>>3];h=Q+24|0;d=+s[f>>3];B=+s[n>>3];g=Q+32|0;w=+s[f+8>>3];u=+s[n+8>>3];r=Q+40|0;f=Q+48|0;n=Q+56|0;i=1;c=4.0;b=4.0;while(1){s[Q>>3]=Z;s[E>>3]=v;y=b*.3333333333333333;s[I>>3]=y*C+Z;s[h>>3]=y*o+v;y=c*.3333333333333333;s[g>>3]=d-y*B;s[r>>3]=w-y*u;s[f>>3]=d;s[n>>3]=w;if(i?(y=+St(Q,4),y<+St(l,t)+-.001):0){i=0;break}if(Ot(A,e,Q)|0){m=5;break}if(b==0.0&c==0.0){m=9;break}W=b>.01;i=0;c=W?c*.5:0.0;b=W?b*.5:0.0}A:do{if((m|0)==5){Vt((a[47459]|0)+4|0);r=a[47460]|0;i=1;while(1){if((i|0)==4){i=1;break A}W=a[47459]|0;s[r+(W<<4)>>3]=+s[Q+(i<<4)>>3];y=+s[Q+(i<<4)+8>>3];a[47459]=W+1;s[r+(W<<4)+8>>3]=y;i=i+1|0}}else if((m|0)==9)if(G){Vt((a[47459]|0)+4|0);r=a[47460]|0;i=1;while(1){if((i|0)==4){i=1;break A}W=a[47459]|0;s[r+(W<<4)>>3]=+s[Q+(i<<4)>>3];y=+s[Q+(i<<4)+8>>3];a[47459]=W+1;s[r+(W<<4)+8>>3]=y;i=i+1|0}}else i=0}while(0);k=L;return i|0}function xt(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;s[e>>3]=+s[e>>3]+ +s[i>>3];r=e+8|0;s[r>>3]=+s[r>>3]+ +s[i+8>>3];a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];return}function Tt(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;s[e>>3]=+s[e>>3]-+s[i>>3];r=e+8|0;s[r>>3]=+s[r>>3]-+s[i+8>>3];a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];return}function jt(A){A=+A;A=1.0-A;return+(A*A*A)}function Pt(A){A=+A;return+(A*A*A)}function St(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0.0,a=0.0,n=0;i=0.0;r=1;while(1){if((r|0)>=(e|0))break;n=r+-1|0;f=+s[A+(r<<4)>>3]-+s[A+(n<<4)>>3];a=+s[A+(r<<4)+8>>3]-+s[A+(n<<4)+8>>3];i=+z(+(a*a+f*f))+i;r=r+1|0}return+i}function Ot(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0.0,o=0.0,h=0.0,d=0.0,B=0.0,g=0,v=0,E=0.0,C=0,I=0.0,Z=0,G=0,m=0,Q=0,L=0,y=0.0,W=0.0;L=k;k=k+64|0;g=L+32|0;v=L;C=v+16|0;Z=i+16|0;G=i+32|0;m=i+48|0;Q=i+8|0;n=i+24|0;l=i+40|0;t=i+56|0;c=v+8|0;b=v+24|0;f=0;A:while(1){if((f|0)>=(e|0)){r=1;break}u=A+(f<<5)|0;a[v>>2]=a[u>>2];a[v+4>>2]=a[u+4>>2];a[v+8>>2]=a[u+8>>2];a[v+12>>2]=a[u+12>>2];u=A+(f<<5)+16|0;a[C>>2]=a[u>>2];a[C+4>>2]=a[u+4>>2];a[C+8>>2]=a[u+8>>2];a[C+12>>2]=a[u+12>>2];u=Kt(i,v,g)|0;e:do{if((u|0)!=4){w=+s[v>>3];o=+s[c>>3];h=+s[C>>3];d=+s[b>>3];r=0;while(1){if((r|0)>=(u|0))break e;B=+s[g+(r<<3)>>3];if((!(B<1.0e-06|B>.999999)?(I=B*B*B,W=B*3.0,y=1.0-B,B=W*B*y,E=y*y,W=E*W,y=E*y,E=+s[Z>>3]*W+ +s[i>>3]*y+ +s[G>>3]*B+ +s[m>>3]*I,I=+s[n>>3]*W+ +s[Q>>3]*y+ +s[l>>3]*B+ +s[t>>3]*I,B=E-w,y=I-o,!(y*y+B*B<.001)):0)?(W=E-h,y=I-d,!(y*y+W*W<.001)):0){r=0;break A}r=r+1|0}}}while(0);f=f+1|0}k=L;return r|0}function Kt(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0.0,l=0,t=0.0,c=0,b=0,u=0,w=0,o=0.0,h=0.0,d=0,B=0,g=0,v=0,E=0;E=k;k=k+96|0;B=E+48|0;g=E+24|0;c=E;v=E+80|0;o=+s[e>>3];n=+s[e+16>>3]-o;h=+s[e+8>>3];t=+s[e+24>>3]-h;a[v>>2]=0;A:do{if(!(n==0.0)){t=t/n;b=A+16|0;u=A+32|0;w=A+48|0;_t(+s[A+8>>3]-+s[A>>3]*t,+s[A+24>>3]-+s[b>>3]*t,+s[A+40>>3]-+s[u>>3]*t,+s[A+56>>3]-+s[w>>3]*t,B);s[B>>3]=t*o-h+ +s[B>>3];r=Ec(B,g)|0;if((r|0)==4)e=4;else{f=B+8|0;l=B+16|0;c=B+24|0;n=1.0/n;e=0;while(1){if((e|0)>=(r|0))break;t=+s[g+(e<<3)>>3];if(t>=0.0&t<=1.0?(_t(+s[A>>3],+s[b>>3],+s[u>>3],+s[w>>3],B),h=(+s[B>>3]-o+((+s[c>>3]*t+ +s[l>>3])*t+ +s[f>>3])*t)*n,h>=0.0&h<=1.0):0)qt(t,i,v);e=e+1|0}e=a[v>>2]|0}}else{_t(+s[A>>3],+s[A+16>>3],+s[A+32>>3],+s[A+48>>3],B);s[B>>3]=+s[B>>3]-o;d=Ec(B,g)|0;if(!(t==0.0)){if((d|0)==4){e=4;break}b=A+8|0;u=A+24|0;w=A+40|0;r=A+56|0;f=B+8|0;l=B+16|0;c=B+24|0;n=1.0/t;e=0;while(1){if((e|0)>=(d|0))break;t=+s[g+(e<<3)>>3];if(t>=0.0&t<=1.0?(_t(+s[b>>3],+s[u>>3],+s[w>>3],+s[r>>3],B),o=(+s[B>>3]-h+((+s[c>>3]*t+ +s[l>>3])*t+ +s[f>>3])*t)*n,o>=0.0&o<=1.0):0)qt(t,i,v);e=e+1|0}e=a[v>>2]|0;break}_t(+s[A+8>>3],+s[A+24>>3],+s[A+40>>3],+s[A+56>>3],B);s[B>>3]=+s[B>>3]-h;l=Ec(B,c)|0;e=(l|0)==4;e:do{if((d|0)==4){if(e){e=4;break A}else e=0;while(1){if((e|0)>=(l|0))break e;qt(+s[c+(e<<3)>>3],i,v);e=e+1|0}}else{if(e){e=0;while(1){if((e|0)>=(d|0))break e;qt(+s[g+(e<<3)>>3],i,v);e=e+1|0}}else r=0;while(1){if((r|0)>=(d|0))break e;f=g+(r<<3)|0;e=0;while(1){if((e|0)>=(l|0))break;n=+s[f>>3];if(n==+s[c+(e<<3)>>3])qt(n,i,v);e=e+1|0}r=r+1|0}}}while(0);e=a[v>>2]|0}}while(0);k=E;return e|0}function _t(A,e,i,r,f){A=+A;e=+e;i=+i;r=+r;f=f|0;s[f+24>>3]=r-A+(e-i)*3.0;s[f+16>>3]=(i+A)*3.0-e*6.0;s[f+8>>3]=(e-A)*3.0;s[f>>3]=A;return}function qt(A,e,i){A=+A;e=e|0;i=i|0;var r=0;if(A>=0.0&A<=1.0){r=a[i>>2]|0;s[e+(r<<3)>>3]=A;a[i>>2]=r+1}return}function $t(A,e){A=A|0;e=e|0;return+(+s[e+8>>3]*+s[A+8>>3]+ +s[e>>3]*+s[A>>3])}function Ac(A){A=+A;var e=0.0;e=1.0-A;return+(e*e*(e+A*3.0))}function ec(A){A=+A;return+(A*A*((1.0-A)*3.0+A))}function ic(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0.0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,g=0,v=0,E=0,I=0,Z=0,G=0,m=0,Q=0,y=0,W=0,z=0,Y=0,D=0,M=0.0;D=k;k=k+112|0;W=D+80|0;y=D+64|0;Q=D+48|0;Y=4;z=Q2(40)|0;a[z>>2]=0;E=D+32|0;I=D+16|0;Z=D;G=D+96|0;Y=L6(189856,1,z|0,Y|0)|0;z=L;d=0;r=d;d=0;if((r|0)!=0&(B|0)!=0){f=y6(a[r>>2]|0,Y|0,z|0)|0;if(!f)fe(r|0,B|0);L=B}else f=-1;if((f|0)==1)r=L;else r=0;A:while(1){if(r|0){r=-2;break}n=A+4|0;d=0;bA(116,a[n>>2]|0);r=d;d=0;if((r|0)!=0&(B|0)!=0){f=y6(a[r>>2]|0,Y|0,z|0)|0;if(!f)fe(r|0,B|0);L=B}else f=-1;if((f|0)==1){r=L;continue}a[47503]=0;a[47504]=0;d=0;bA(117,a[n>>2]<<1|0);r=d;d=0;if((r|0)!=0&(B|0)!=0){f=y6(a[r>>2]|0,Y|0,z|0)|0;if(!f)fe(r|0,B|0);L=B}else f=-1;if((f|0)==1){r=L;continue}b=(a[47506]|0)/2|0;a[47507]=b;a[47508]=b+-1;b=a[n>>2]|0;n=a[A>>2]|0;r=0;f=-1;l=C;while(1){if((r|0)>=(b|0))break;M=+s[n+(r<<4)>>3];v=l>M;g=v?r:f;r=r+1|0;f=g;l=v?M:l}v=n+(f<<4)|0;a[I>>2]=a[v>>2];a[I+4>>2]=a[v+4>>2];a[I+8>>2]=a[v+8>>2];a[I+12>>2]=a[v+12>>2];v=n+(((f|0)==0?b:f)+-1<<4)|0;a[E>>2]=a[v>>2];a[E+4>>2]=a[v+4>>2];a[E+8>>2]=a[v+8>>2];a[E+12>>2]=a[v+12>>2];v=n+(((f|0)==(b+-1|0)?0:f+1|0)<<4)|0;a[Z>>2]=a[v>>2];a[Z+4>>2]=a[v+4>>2];a[Z+8>>2]=a[v+8>>2];a[Z+12>>2]=a[v+12>>2];M=+s[I>>3];if((+s[E>>3]==M?M==+s[Z>>3]:0)?+s[Z+8>>3]>+s[I+8>>3]:0)v=15;else v=12;e:do{if((v|0)==12){v=0;d=0;r=aA(36,E|0,I|0,Z|0)|0;f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,Y|0,z|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){r=L;continue A}if((r|0)==1){n=a[47510]|0;r=a[47511]|0;f=0;while(1){if((f|0)>=(b|0))break e;t=a[A>>2]|0;if(!(((f|0)>0?(m=f+-1|0,+s[t+(f<<4)>>3]==+s[t+(m<<4)>>3]):0)?+s[t+(f<<4)+8>>3]==+s[t+(m<<4)+8>>3]:0)){g=a[47503]|0;a[n+(g<<3)>>2]=t+(f<<4);a[n+(g<<3)+4>>2]=n+(((g|0)%(b|0)|0)<<3);a[r+(g<<2)>>2]=n+(g<<3);a[47503]=g+1}f=f+1|0}}else v=15}}while(0);e:do{if((v|0)==15){v=0;t=a[47510]|0;r=a[47511]|0;n=b;while(1){f=n+-1|0;if((n|0)<=0)break e;c=a[A>>2]|0;if(((n|0)<(b|0)?+s[c+(f<<4)>>3]==+s[c+(n<<4)>>3]:0)?+s[c+(f<<4)+8>>3]==+s[c+(n<<4)+8>>3]:0){n=f;continue}n=a[47503]|0;a[t+(n<<3)>>2]=c+(f<<4);a[t+(n<<3)+4>>2]=t+(((n|0)%(b|0)|0)<<3);a[r+(n<<2)>>2]=t+(n<<3);a[47503]=n+1;n=f}}}while(0);d=0;uA(29,r|0,a[47503]|0);r=d;d=0;if((r|0)!=0&(B|0)!=0){f=y6(a[r>>2]|0,Y|0,z|0)|0;if(!f)fe(r|0,B|0);L=B}else f=-1;if((f|0)==1){r=L;continue}t=0;r=a[47504]|0;e:while(1){if((t|0)>=(r|0)){h=0;break}c=t+1|0;n=c;while(1){if((n|0)>=(r|0)){t=c;continue e}d=0;uA(30,t|0,n|0);r=d;d=0;if((r|0)!=0&(B|0)!=0){f=y6(a[r>>2]|0,Y|0,z|0)|0;if(!f)fe(r|0,B|0);L=B}else f=-1;if((f|0)==1){r=L;continue A}n=n+1|0;r=a[47504]|0}}while(1){if((h|0)>=(r|0))break;d=0;f=rA(105,h|0,e|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){t=y6(a[n>>2]|0,Y|0,z|0)|0;if(!t)fe(n|0,B|0);L=B}else t=-1;if((t|0)==1){r=L;continue A}if(f|0)break;h=h+1|0}if((h|0)==(r|0)){r=a[15712]|0;d=0;a[Q>>2]=141858;a[Q+4>>2]=192;a[Q+8>>2]=141869;aA(32,r|0,141839,Q|0)|0;r=d;d=0;if((r|0)!=0&(B|0)!=0){f=y6(a[r>>2]|0,Y|0,z|0)|0;if(!f)fe(r|0,B|0);L=B}else f=-1;if((f|0)==1){r=L;continue}else{v=41;break}}g=e+16|0;c=0;while(1){if((c|0)>=(r|0))break;d=0;f=rA(105,c|0,g|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){t=y6(a[n>>2]|0,Y|0,z|0)|0;if(!t)fe(n|0,B|0);L=B}else t=-1;if((t|0)==1){r=L;continue A}if(f|0)break;c=c+1|0}if((c|0)==(r|0)){r=a[15712]|0;d=0;a[y>>2]=141858;a[y+4>>2]=200;a[y+8>>2]=141902;aA(32,r|0,141839,y|0)|0;r=d;d=0;if((r|0)!=0&(B|0)!=0){f=y6(a[r>>2]|0,Y|0,z|0)|0;if(!f)fe(r|0,B|0);L=B}else f=-1;if((f|0)==1){r=L;continue}else{v=48;break}}d=0;r=rA(106,h|0,c|0)|0;f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,Y|0,z|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){r=L;continue}if(!r){r=a[15712]|0;d=0;a[W>>2]=141858;a[W+4>>2]=207;a[W+8>>2]=141940;aA(32,r|0,141839,W|0)|0;r=d;d=0;if((r|0)!=0&(B|0)!=0){f=y6(a[r>>2]|0,Y|0,z|0)|0;if(!f)fe(r|0,B|0);L=B}else f=-1;if((f|0)==1){r=L;continue}d=0;bA(118,2);r=d;d=0;if((r|0)!=0&(B|0)!=0){f=y6(a[r>>2]|0,Y|0,z|0)|0;if(!f)fe(r|0,B|0);L=B}else f=-1;if((f|0)==1){r=L;continue}else{v=53;break}}if((h|0)==(c|0)){d=0;bA(118,2);r=d;d=0;if((r|0)!=0&(B|0)!=0){f=y6(a[r>>2]|0,Y|0,z|0)|0;if(!f)fe(r|0,B|0);L=B}else f=-1;if((f|0)==1){r=L;continue}else{v=56;break}}a[G>>2]=e;a[G+4>>2]=0;f=G+8|0;a[f>>2]=g;a[G+12>>2]=0;d=0;uA(31,1,G|0);r=d;d=0;if((r|0)!=0&(B|0)!=0){n=y6(a[r>>2]|0,Y|0,z|0)|0;if(!n)fe(r|0,B|0);L=B}else n=-1;if((n|0)==1){r=L;continue}a[47509]=a[47507];w=h;e:while(1){if((w|0)==-1){n=f;r=0;break}o=a[47513]|0;a[o+(w*52|0)>>2]=2;r=0;while(1){if((r|0)>=3){v=65;break}v=a[o+(w*52|0)+4+(r<<4)+12>>2]|0;if(v|0?(a[v>>2]|0)==1:0){v=68;break}r=r+1|0}if((v|0)==65){v=0;if((r|0)==3){r=a[47505]|0;c=a[r+(a[47508]<<2)>>2]|0;d=0;r=aA(36,g|0,a[a[r+(a[47507]<<2)>>2]>>2]|0,a[c>>2]|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){t=y6(a[n>>2]|0,Y|0,z|0)|0;if(!t)fe(n|0,B|0);L=B}else t=-1;if((t|0)==1){r=L;continue A}t=(r|0)==1;u=t?f:c;t=t?c:f}else v=68}if((v|0)==68){v=0;c=a[o+(w*52|0)+4+(r<<4)>>2]|0;b=a[o+(w*52|0)+4+(r<<4)+4>>2]|0;d=0;r=aA(36,a[c>>2]|0,a[a[o+(w*52|0)+4+(((r+1|0)%3|0)<<4)+4>>2]>>2]|0,a[b>>2]|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){t=y6(a[n>>2]|0,Y|0,z|0)|0;if(!t)fe(n|0,B|0);L=B}else t=-1;if((t|0)==1){r=L;continue A}t=(r|0)==1;u=t?c:b;t=t?b:c}do{if((w|0)==(h|0)){d=0;uA(31,2,t|0);r=d;d=0;if((r|0)!=0&(B|0)!=0){n=y6(a[r>>2]|0,Y|0,z|0)|0;if(!n)fe(r|0,B|0);L=B}else n=-1;if((n|0)==1){r=L;continue A}d=0;uA(31,1,u|0);r=d;d=0;if((r|0)!=0&(B|0)!=0){n=y6(a[r>>2]|0,Y|0,z|0)|0;if(!n)fe(r|0,B|0);L=B}else n=-1;if((n|0)==1){r=L;continue A}r=0}else{b=a[47505]|0;if((a[b+(a[47507]<<2)>>2]|0)!=(u|0)?(a[b+(a[47508]<<2)>>2]|0)!=(u|0):0){d=0;t=iA(34,u|0)|0;r=d;d=0;if((r|0)!=0&(B|0)!=0){n=y6(a[r>>2]|0,Y|0,z|0)|0;if(!n)fe(r|0,B|0);L=B}else n=-1;if((n|0)==1){r=L;continue A}d=0;uA(32,2,t|0);r=d;d=0;if((r|0)!=0&(B|0)!=0){n=y6(a[r>>2]|0,Y|0,z|0)|0;if(!n)fe(r|0,B|0);L=B}else n=-1;if((n|0)==1){r=L;continue A}d=0;uA(31,1,u|0);r=d;d=0;if((r|0)!=0&(B|0)!=0){n=y6(a[r>>2]|0,Y|0,z|0)|0;if(!n)fe(r|0,B|0);L=B}else n=-1;if((n|0)==1){r=L;continue A}if((t|0)<=(a[47509]|0)){r=0;break}a[47509]=t;r=0;break}d=0;c=iA(34,t|0)|0;r=d;d=0;if((r|0)!=0&(B|0)!=0){n=y6(a[r>>2]|0,Y|0,z|0)|0;if(!n)fe(r|0,B|0);L=B}else n=-1;if((n|0)==1){r=L;continue A}d=0;uA(32,1,c|0);r=d;d=0;if((r|0)!=0&(B|0)!=0){n=y6(a[r>>2]|0,Y|0,z|0)|0;if(!n)fe(r|0,B|0);L=B}else n=-1;if((n|0)==1){r=L;continue A}d=0;uA(31,2,t|0);r=d;d=0;if((r|0)!=0&(B|0)!=0){n=y6(a[r>>2]|0,Y|0,z|0)|0;if(!n)fe(r|0,B|0);L=B}else n=-1;if((n|0)==1){r=L;continue A}if((c|0)>=(a[47509]|0)){r=0;break}a[47509]=c;r=0}}while(0);while(1){if((r|0)>=3){w=-1;continue e}n=a[o+(w*52|0)+4+(r<<4)+12>>2]|0;if(n|0?(a[n>>2]|0)==1:0)break;r=r+1|0}w=(n-(a[47513]|0)|0)/52|0}while(1){if(!n)break;n=a[n+4>>2]|0;r=r+1|0}d=0;bA(118,r|0);n=d;d=0;if((n|0)!=0&(B|0)!=0){t=y6(a[n>>2]|0,Y|0,z|0)|0;if(!t)fe(n|0,B|0);L=B}else t=-1;if((t|0)==1)r=L;else{v=94;break}}if((v|0)==41)r=-1;else if((v|0)==48)r=-1;else if((v|0)==53){a[i+4>>2]=2;r=a[47512]|0;a[r>>2]=a[e>>2];a[r+4>>2]=a[e+4>>2];a[r+8>>2]=a[e+8>>2];a[r+12>>2]=a[e+12>>2];z=r+16|0;a[z>>2]=a[g>>2];a[z+4>>2]=a[g+4>>2];a[z+8>>2]=a[g+8>>2];a[z+12>>2]=a[g+12>>2];a[i>>2]=r;r=0}else if((v|0)==56){a[i+4>>2]=2;r=a[47512]|0;a[r>>2]=a[e>>2];a[r+4>>2]=a[e+4>>2];a[r+8>>2]=a[e+8>>2];a[r+12>>2]=a[e+12>>2];z=r+16|0;a[z>>2]=a[g>>2];a[z+4>>2]=a[g+4>>2];a[z+8>>2]=a[g+8>>2];a[z+12>>2]=a[g+12>>2];a[i>>2]=r;r=0}else if((v|0)==94){a[i+4>>2]=r;n=a[47512]|0;while(1){r=r+-1|0;if(!f)break;z=n+(r<<4)|0;W=a[f>>2]|0;a[z>>2]=a[W>>2];a[z+4>>2]=a[W+4>>2];a[z+8>>2]=a[W+8>>2];a[z+12>>2]=a[W+12>>2];f=a[f+4>>2]|0}a[i>>2]=n;r=0}L2(Y|0);k=D;return r|0}function rc(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0;l=k;k=k+64|0;r=l+48|0;n=l+32|0;f=l+16|0;i=l;if((a[47516]|0)<(A|0)){e=a[47510]|0;if(!e){n=Q2(A<<3)|0;a[47510]=n;if(!n){n=a[15712]|0;a[i>>2]=141858;a[i+4>>2]=523;a[i+8>>2]=142108;f3(n,141839,i)|0;fe(189856,1)}n=Q2(A<<2)|0;a[47511]=n;if(!n){n=a[15712]|0;a[f>>2]=141858;a[f+4>>2]=527;a[f+8>>2]=142127;f3(n,141839,f)|0;fe(189856,1)}}else{f=W2(e,A<<3)|0;a[47510]=f;if(!f){f=a[15712]|0;a[n>>2]=141858;a[n+4>>2]=533;a[n+8>>2]=142147;f3(f,141839,n)|0;fe(189856,1)}n=W2(a[47511]|0,A<<2)|0;a[47511]=n;if(!n){n=a[15712]|0;a[r>>2]=141858;a[r+4>>2]=539;a[r+8>>2]=142167;f3(n,141839,r)|0;fe(189856,1)}}a[47516]=A}k=l;return}function fc(A){A=A|0;var e=0,i=0,r=0,f=0;f=k;k=k+32|0;r=f+16|0;i=f;if((a[47506]|0)<(A|0)){e=a[47505]|0;if(!e){r=Q2(A<<2)|0;a[47505]=r;if(!r){r=a[15712]|0;a[i>>2]=141858;a[i+4>>2]=573;a[i+8>>2]=142063;f3(r,141839,i)|0;fe(189856,1)}}else{i=W2(e,A<<2)|0;a[47505]=i;if(!i){i=a[15712]|0;a[r>>2]=141858;a[r+4>>2]=580;a[r+8>>2]=142085;f3(i,141839,r)|0;fe(189856,1)}}a[47506]=A}k=f;return}function ac(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0;r=+s[e+8>>3];f=+s[e>>3];r=(+s[i>>3]-f)*(+s[A+8>>3]-r)-(+s[A>>3]-f)*(+s[i+8>>3]-r);return(r>0.0?1:r<0.0?2:3)|0}function nc(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;l=t;A:while(1){if((e|0)>3)r=0;else{e=9;break}while(1){if((r|0)>=(e|0)){e=8;break A}f=r+1|0;i=(f|0)%(e|0)|0;n=(r+2|0)%(e|0)|0;if(!(kc(r,n,A,e)|0))r=f;else break}oc(a[A+(r<<2)>>2]|0,a[A+(i<<2)>>2]|0,a[A+(n<<2)>>2]|0);e=e+-1|0;while(1){if((i|0)>=(e|0))continue A;n=i+1|0;a[A+(i<<2)>>2]=a[A+(n<<2)>>2];i=n}}if((e|0)==8){A=a[15712]|0;a[l>>2]=141858;a[l+4>>2]=324;a[l+8>>2]=142003;f3(A,141839,l)|0}else if((e|0)==9)oc(a[A>>2]|0,a[A+4>>2]|0,a[A+8>>2]|0);k=t;return}function lc(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0;t=a[47513]|0;c=t+(A*52|0)|0;s=t+(e*52|0)|0;n=0;while(1){if((n|0)==3)break;b=t+(A*52|0)+4+(n<<4)|0;u=t+(A*52|0)+4+(n<<4)+4|0;w=t+(A*52|0)+4+(n<<4)+12|0;f=0;while(1){if((f|0)==3)break;k=a[a[b>>2]>>2]|0;l=a[a[t+(e*52|0)+4+(f<<4)>>2]>>2]|0;if((k|0)==(l|0)){i=a[a[t+(e*52|0)+4+(f<<4)+4>>2]>>2]|0;if((a[a[u>>2]>>2]|0)==(i|0))r=10;else r=8}else{i=a[a[t+(e*52|0)+4+(f<<4)+4>>2]>>2]|0;r=8}if(((r|0)==8?(r=0,(k|0)==(i|0)):0)?(a[a[u>>2]>>2]|0)==(l|0):0)r=10;if((r|0)==10){a[w>>2]=s;a[t+(e*52|0)+4+(f<<4)+12>>2]=c}f=f+1|0}n=n+1|0}return}function tc(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;f=a[47513]|0;i=0;r=0;while(1){if((r|0)==3)break;i=i+((ac(a[a[f+(A*52|0)+4+(r<<4)>>2]>>2]|0,a[a[f+(A*52|0)+4+(r<<4)+4>>2]>>2]|0,e)|0)!=2&1)|0;r=r+1|0}return((i|0)==3|(i|0)==0)&1|0}function cc(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=a[47513]|0;r=i+(A*52|0)|0;A:do{if(!(a[r>>2]|0)){a[r>>2]=1;if((A|0)==(e|0))i=1;else{f=0;while(1){if((f|0)>=3)break;r=a[i+(A*52|0)+4+(f<<4)+12>>2]|0;if(r){if(cc((r-i|0)/52|0,e)|0){i=1;break A}i=a[47513]|0}f=f+1|0}a[i+(A*52|0)>>2]=0;i=0}}else i=0}while(0);return i|0}function sc(A){A=A|0;var e=0,i=0,r=0,f=0;f=k;k=k+32|0;r=f+16|0;i=f;if((a[47514]|0)<(A|0)){e=a[47512]|0;if(!e){r=Q2(A<<4)|0;a[47512]=r;if(!r){r=a[15712]|0;a[i>>2]=141858;a[i+4>>2]=593;a[i+8>>2]=141966;f3(r,141839,i)|0;fe(189856,1)}}else{i=W2(e,A<<4)|0;a[47512]=i;if(!i){i=a[15712]|0;a[r>>2]=141858;a[r+4>>2]=599;a[r+8>>2]=141984;f3(i,141839,r)|0;fe(189856,1)}}a[47514]=A}k=f;return}function bc(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=a[47508]|0;r=a[47507]|0;f=(i|0)>=(r|0);if((A|0)==1)if(f){a[e+4>>2]=a[(a[47505]|0)+(r<<2)>>2];A=190028;i=-1}else{A=190028;i=-1}else if(f){a[e+4>>2]=a[(a[47505]|0)+(i<<2)>>2];A=190032;i=1}else{A=190032;i=1}f=(a[A>>2]|0)+i|0;a[A>>2]=f;a[(a[47505]|0)+(f<<2)>>2]=e;return}function uc(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;f=a[47509]|0;n=a[47505]|0;e=a[47507]|0;while(1){if((e|0)>=(f|0)){r=4;break}i=e+1|0;if((ac(a[a[n+(i<<2)>>2]>>2]|0,a[a[n+(e<<2)>>2]>>2]|0,a[A>>2]|0)|0)==1)break;else e=i}A:do{if((r|0)==4){e=a[47508]|0;while(1){if((e|0)<=(f|0)){e=f;break A}i=e+-1|0;if((ac(a[a[n+(i<<2)>>2]>>2]|0,a[a[n+(e<<2)>>2]>>2]|0,a[A>>2]|0)|0)==2)break;else e=i}}}while(0);return e|0}function wc(A,e){A=A|0;e=e|0;a[((A|0)==1?190032:190028)>>2]=e;return}function kc(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,s=0;f=a[a[i+(((A+-1+r|0)%(r|0)|0)<<2)>>2]>>2]|0;t=a[a[i+(A<<2)>>2]>>2]|0;n=a[a[i+(((A+1|0)%(r|0)|0)<<2)>>2]>>2]|0;s=(ac(f,t,n)|0)==1;c=a[a[i+(e<<2)>>2]>>2]|0;if(s)if((ac(t,c,f)|0)==1){f=ac(c,t,n)|0;n=1;l=5}else f=0;else{f=ac(t,c,n)|0;n=2;l=5}A:do{if((l|0)==5)if((f|0)==(n|0)){f=0;while(1){if((f|0)>=(r|0)){f=1;break A}n=f;f=f+1|0;l=(f|0)%(r|0)|0;if((l|0)==(e|0)|((n|0)==(e|0)|((n|0)==(A|0)|(l|0)==(A|0))))continue;if(dc(t,c,a[a[i+(n<<2)>>2]>>2]|0,a[a[i+(l<<2)>>2]>>2]|0)|0){f=0;break}}}else f=0}while(0);return f|0}function oc(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;r=a[47504]|0;f=a[47515]|0;if((r|0)<(f|0))l=r;else{hc(f+20|0);l=a[47504]|0}n=a[47513]|0;a[47504]=l+1;f=n+(l*52|0)|0;a[f>>2]=0;a[n+(l*52|0)+4>>2]=A;a[n+(l*52|0)+8>>2]=e;a[n+(l*52|0)+16>>2]=0;a[n+(l*52|0)+20>>2]=e;a[n+(l*52|0)+24>>2]=i;a[n+(l*52|0)+32>>2]=0;a[n+(l*52|0)+36>>2]=i;a[n+(l*52|0)+40>>2]=A;a[n+(l*52|0)+48>>2]=0;r=0;while(1){if((r|0)==3)break;a[n+(l*52|0)+4+(r<<4)+8>>2]=f;r=r+1|0}return}function hc(A){A=A|0;var e=0,i=0,r=0,f=0;f=k;k=k+32|0;r=f+16|0;i=f;if((a[47515]|0)<(A|0)){e=a[47513]|0;if(!e){r=Q2(A*52|0)|0;a[47513]=r;if(!r){r=a[15712]|0;a[i>>2]=141858;a[i+4>>2]=552;a[i+8>>2]=142024;f3(r,141839,i)|0;fe(189856,1)}}else{i=W2(e,A*52|0)|0;a[47513]=i;if(!i){i=a[15712]|0;a[r>>2]=141858;a[r+4>>2]=558;a[r+8>>2]=142043;f3(i,141839,r)|0;fe(189856,1)}}a[47515]=A}k=f;return}function dc(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,a=0,n=0,l=0;a=ac(A,e,i)|0;if((((a|0)!=3?(n=ac(A,e,r)|0,(n|0)!=3):0)?(l=ac(i,r,A)|0,(l|0)!=3):0)?(f=ac(i,r,e)|0,(f|0)!=3):0)return((a|0)==1^(n|0)==1)&((l|0)==1^(f|0)==1)&1|0;if(((Bc(A,e,i)|0)==0?(Bc(A,e,r)|0)==0:0)?(Bc(i,r,A)|0)==0:0)return(Bc(i,r,e)|0)!=0|0;return 1}function Bc(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,a=0.0,n=0.0;f=+s[A>>3];n=+s[e>>3]-f;a=+s[A+8>>3];r=+s[e+8>>3]-a;f=+s[i>>3]-f;a=+s[i+8>>3]-a;if((ac(A,e,i)|0)==3?a*r+f*n>=0.0:0)A=a*a+f*f<=r*r+n*n&1;else A=0;return A|0}function gc(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0.0,l=0,t=0.0,c=0,b=0,u=0,w=0,k=0,o=0.0,h=0;u=Q2(i<<2)|0;w=Q2((i<<3)+8|0)|0;k=w+8|0;f=0;while(1){if((f|0)>=(i|0))break;a[u+(f<<2)>>2]=-1;s[k+(f<<3)>>3]=-2147483647.0;f=f+1|0}s[w>>3]=-2147483648.0;A:while(1){if((A|0)==(e|0))break;b=k+(A<<3)|0;t=+s[b>>3];s[b>>3]=t==-2147483647.0?0.0:-t;c=0;f=-1;while(1){if((c|0)>=(i|0)){A=f;continue A}l=k+(c<<3)|0;n=+s[l>>3];if(n<0.0){h=(A|0)<(c|0);o=+s[(a[r+((h?c:A)<<2)>>2]|0)+((h?A:c)<<3)>>3];t=-(o+ +s[b>>3]);if(o!=0.0&n >3]=t;a[u+(c<<2)>>2]=A;n=t}f=n>+s[k+(f<<3)>>3]?c:f}c=c+1|0}}L2(w);return u|0}function vc(A,e,i,r,f,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;var t=0,c=0,s=0,b=0;c=k;k=k+32|0;s=c+16|0;b=c;t=a[l+4>>2]|0;a[b>>2]=a[A>>2];a[b+4>>2]=a[A+4>>2];a[b+8>>2]=a[A+8>>2];a[b+12>>2]=a[A+12>>2];a[s>>2]=a[r>>2];a[s+4>>2]=a[r+4>>2];a[s+8>>2]=a[r+8>>2];a[s+12>>2]=a[r+12>>2];if(!(Nc(b,e,s,f,l)|0)){A=a[l+24>>2]|0;a[A+(t<<2)>>2]=n;b=t+1|0;a[A+(b<<2)>>2]=i;A=gc(b,t,t+2|0,A)|0}else{A=Q2((t<<2)+8|0)|0;b=t+1|0;a[A+(t<<2)>>2]=b;a[A+(b<<2)>>2]=-1}k=c;return A|0}function Ec(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0.0,a=0.0,n=0.0,l=0.0,t=0;r=+s[A+24>>3];A:do{if(r<1.0e-07&r>-1.0e-07)A=Cc(A,e)|0;else{n=+s[A+16>>3]/(r*3.0);a=+s[A+8>>3]/r;f=n*n;r=n*2.0*f-n*a+ +s[A>>3]/r;f=a*.3333333333333333-f;f=f*f*4.0*f;a=r*r+f;if(!(a<0.0)){l=(+z(+a)-r)*.5;f=+u1(l);r=+u1(-r-l)+f;s[e>>3]=r;if(a>0.0)A=1;else{r=r*-.5;s[e+16>>3]=r;A=1;i=7}}else{l=+N(+ +z(+-a),+-r);r=+u1(+z(+-f)*.5)*2.0;s[e>>3]=r*+D(+(l*.3333333333333333));s[e+8>>3]=+D(+((l+6.283185307179586)*.3333333333333333))*r;r=+D(+((l+-6.283185307179586)*.3333333333333333))*r;A=2;i=7}if((i|0)==7){s[e+(A<<3)>>3]=r;A=3}i=0;while(1){if((i|0)>=(A|0))break A;t=e+(i<<3)|0;s[t>>3]=+s[t>>3]-n;i=i+1|0}}}while(0);return A|0}function Cc(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;i=+s[A+16>>3];do{if(!(i<1.0e-07&i>-1.0e-07)){r=+s[A+8>>3]/(i*2.0);i=r*r-+s[A>>3]/i;if(!(i<0.0))if(i==0.0){s[e>>3]=-r;A=1;break}else{i=+z(+i)-r;s[e>>3]=i;s[e+8>>3]=r*-2.0-i;A=2;break}else A=0}else A=Ic(A,e)|0}while(0);return A|0}function Ic(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;r=+s[A+8>>3];i=+s[A>>3];if(r<1.0e-07&r>-1.0e-07)A=i<1.0e-07&i>-1.0e-07?4:0;else{s[e>>3]=-i/r;A=1}return A|0}function Zc(A){A=A|0;L2(a[A>>2]|0);L2(A);return}function Gc(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;r=a[A+4>>2]|0;t=(r*3|0)+-2|0;i=a[47518]|0;if((t|0)>(a[47517]|0)){if(!i)i=Q2(t<<4)|0;else i=W2(i,t<<4)|0;a[47518]=i;a[47517]=t;l=i;n=i}else{l=i;n=i}f=a[A>>2]|0;a[l>>2]=a[f>>2];a[l+4>>2]=a[f+4>>2];a[l+8>>2]=a[f+8>>2];a[l+12>>2]=a[f+12>>2];z6(l+16|0,f|0,16)|0;r=r+-1|0;i=1;A=2;while(1){if((i|0)>=(r|0))break;c=l+(A+2<<4)|0;s=l+(A+1<<4)|0;u=l+(A<<4)|0;b=f+(i<<4)|0;a[u>>2]=a[b>>2];a[u+4>>2]=a[b+4>>2];a[u+8>>2]=a[b+8>>2];a[u+12>>2]=a[b+12>>2];z6(s|0,b|0,16)|0;a[c>>2]=a[s>>2];a[c+4>>2]=a[s+4>>2];a[c+8>>2]=a[s+8>>2];a[c+12>>2]=a[s+12>>2];i=i+1|0;A=A+3|0}b=l+(A<<4)|0;u=f+(i<<4)|0;a[b>>2]=a[u>>2];a[b+4>>2]=a[u+4>>2];a[b+8>>2]=a[u+8>>2];a[b+12>>2]=a[u+12>>2];z6(l+(A+1<<4)|0,u|0,16)|0;a[e+4>>2]=t;a[e>>2]=n;return}function mc(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0;r=+s[e+8>>3];f=+s[e>>3];r=(+s[i>>3]-f)*(+s[A+8>>3]-r)-(+s[A>>3]-f)*(+s[i+8>>3]-r);return(r>.0001?1:(r<-.0001)<<31>>31)|0}function Qc(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,a=0.0;f=+s[A>>3];a=+s[e>>3];if(f!=a){r=+s[i>>3];if(!(f >3];f=+s[i+8>>3];r=+s[e+8>>3];if(!(a >2]=a[A>>2];a[n+4>>2]=a[A+4>>2];a[n+8>>2]=a[A+8>>2];a[n+12>>2]=a[A+12>>2];a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2];a[t>>2]=a[i>>2];a[t+4>>2]=a[i+4>>2];a[t+8>>2]=a[i+8>>2];a[t+12>>2]=a[i+12>>2];c=mc(n,l,t)|0;if((c|0)==0?(a[n>>2]=a[A>>2],a[n+4>>2]=a[A+4>>2],a[n+8>>2]=a[A+8>>2],a[n+12>>2]=a[A+12>>2],a[l>>2]=a[e>>2],a[l+4>>2]=a[e+4>>2],a[l+8>>2]=a[e+8>>2],a[l+12>>2]=a[e+12>>2],a[t>>2]=a[i>>2],a[t+4>>2]=a[i+4>>2],a[t+8>>2]=a[i+8>>2],a[t+12>>2]=a[i+12>>2],(Qc(n,l,t)|0)!=0):0)f=1;else s=3;do{if((s|0)==3){a[n>>2]=a[A>>2];a[n+4>>2]=a[A+4>>2];a[n+8>>2]=a[A+8>>2];a[n+12>>2]=a[A+12>>2];a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2];a[t>>2]=a[r>>2];a[t+4>>2]=a[r+4>>2];a[t+8>>2]=a[r+8>>2];a[t+12>>2]=a[r+12>>2];f=mc(n,l,t)|0;if((f|0)==0?(a[n>>2]=a[A>>2],a[n+4>>2]=a[A+4>>2],a[n+8>>2]=a[A+8>>2],a[n+12>>2]=a[A+12>>2],a[l>>2]=a[e>>2],a[l+4>>2]=a[e+4>>2],a[l+8>>2]=a[e+8>>2],a[l+12>>2]=a[e+12>>2],a[t>>2]=a[r>>2],a[t+4>>2]=a[r+4>>2],a[t+8>>2]=a[r+8>>2],a[t+12>>2]=a[r+12>>2],Qc(n,l,t)|0):0){f=1;break}a[n>>2]=a[i>>2];a[n+4>>2]=a[i+4>>2];a[n+8>>2]=a[i+8>>2];a[n+12>>2]=a[i+12>>2];a[l>>2]=a[r>>2];a[l+4>>2]=a[r+4>>2];a[l+8>>2]=a[r+8>>2];a[l+12>>2]=a[r+12>>2];a[t>>2]=a[A>>2];a[t+4>>2]=a[A+4>>2];a[t+8>>2]=a[A+8>>2];a[t+12>>2]=a[A+12>>2];A=mc(n,l,t)|0;a[n>>2]=a[i>>2];a[n+4>>2]=a[i+4>>2];a[n+8>>2]=a[i+8>>2];a[n+12>>2]=a[i+12>>2];a[l>>2]=a[r>>2];a[l+4>>2]=a[r+4>>2];a[l+8>>2]=a[r+8>>2];a[l+12>>2]=a[r+12>>2];a[t>>2]=a[e>>2];a[t+4>>2]=a[e+4>>2];a[t+8>>2]=a[e+8>>2];a[t+12>>2]=a[e+12>>2];s=(U(f,c)|0)<0;f=(U(mc(n,l,t)|0,A)|0)>>>31;f=s?f:0}}while(0);k=b;return f|0}function yc(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;i=+s[A>>3]-+s[e>>3];r=+s[A+8>>3]-+s[e+8>>3];return+(r*r+i*i)}function Wc(A){A=A|0;a[A+24>>2]=zc(a[A+4>>2]|0)|0;Yc(A);return}function zc(A){A=A|0;var e=0,i=0,r=0,f=0;r=A+2|0;f=Q2(r<<2)|0;e=y2(U(A,A)|0,8)|0;i=0;while(1){if((i|0)>=(A|0))break;a[f+(i<<2)>>2]=e;e=e+(A<<3)|0;i=i+1|0}while(1){if((A|0)>=(r|0))break;a[f+(A<<2)>>2]=0;A=A+1|0}return f|0}function Yc(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0.0;o=k;k=k+32|0;l=o+16|0;n=o;t=a[A+4>>2]|0;b=a[A+8>>2]|0;u=a[A+16>>2]|0;w=a[A+20>>2]|0;i=a[A+24>>2]|0;e=0;while(1){if((e|0)>=(t|0))break;h=a[w+(e<<2)>>2]|0;r=b+(e<<4)|0;f=b+(h<<4)|0;a[n>>2]=a[r>>2];a[n+4>>2]=a[r+4>>2];a[n+8>>2]=a[r+8>>2];a[n+12>>2]=a[r+12>>2];a[l>>2]=a[f>>2];a[l+4>>2]=a[f+4>>2];a[l+8>>2]=a[f+8>>2];a[l+12>>2]=a[f+12>>2];d=+Dc(n,l);f=a[i+(e<<2)>>2]|0;s[f+(h<<3)>>3]=d;s[(a[i+(h<<2)>>2]|0)+(e<<3)>>3]=d;A=e+-1|0;A=(h|0)==(A|0)?e+-2|0:A;while(1){if((A|0)<=-1)break;if((Mc(e,A,b,u,w)|0?Mc(A,e,b,u,w)|0:0)?(c=b+(A<<4)|0,a[n>>2]=a[r>>2],a[n+4>>2]=a[r+4>>2],a[n+8>>2]=a[r+8>>2],a[n+12>>2]=a[r+12>>2],a[l>>2]=a[c>>2],a[l+4>>2]=a[c+4>>2],a[l+8>>2]=a[c+8>>2],a[l+12>>2]=a[c+12>>2],Fc(n,l,t,t,t,b,u)|0):0){a[n>>2]=a[r>>2];a[n+4>>2]=a[r+4>>2];a[n+8>>2]=a[r+8>>2];a[n+12>>2]=a[r+12>>2];a[l>>2]=a[c>>2];a[l+4>>2]=a[c+4>>2];a[l+8>>2]=a[c+8>>2];a[l+12>>2]=a[c+12>>2];d=+Dc(n,l);s[f+(A<<3)>>3]=d;s[(a[i+(A<<2)>>2]|0)+(e<<3)>>3]=d}A=A+-1|0}e=e+1|0}k=o;return}function Dc(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0,n=0;r=k;k=k+32|0;f=r+16|0;n=r;a[n>>2]=a[A>>2];a[n+4>>2]=a[A+4>>2];a[n+8>>2]=a[A+8>>2];a[n+12>>2]=a[A+12>>2];a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];i=+z(+ +yc(n,f));k=r;return+i}function Mc(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0;n=k;k=k+64|0;l=n+48|0;t=n+32|0;c=n+16|0;s=n;u=i+(a[f+(A<<2)>>2]<<4)|0;b=i+(A<<4)|0;r=i+(a[r+(A<<2)>>2]<<4)|0;f=i+(e<<4)|0;a[s>>2]=a[u>>2];a[s+4>>2]=a[u+4>>2];a[s+8>>2]=a[u+8>>2];a[s+12>>2]=a[u+12>>2];a[c>>2]=a[b>>2];a[c+4>>2]=a[b+4>>2];a[c+8>>2]=a[b+8>>2];a[c+12>>2]=a[b+12>>2];a[t>>2]=a[r>>2];a[t+4>>2]=a[r+4>>2];a[t+8>>2]=a[r+8>>2];a[t+12>>2]=a[r+12>>2];a[l>>2]=a[f>>2];a[l+4>>2]=a[f+4>>2];a[l+8>>2]=a[f+8>>2];a[l+12>>2]=a[f+12>>2];f=Vc(s,c,t,l)|0;k=n;return f|0}function Fc(A,e,i,r,f,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;var t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0;o=k;k=k+64|0;u=o+48|0;b=o+32|0;s=o+16|0;c=o;t=0;while(1){if((t|0)>=(i|0)){w=4;break}d=n+(t<<4)|0;h=n+(a[l+(t<<2)>>2]<<4)|0;a[c>>2]=a[A>>2];a[c+4>>2]=a[A+4>>2];a[c+8>>2]=a[A+8>>2];a[c+12>>2]=a[A+12>>2];a[s>>2]=a[e>>2];a[s+4>>2]=a[e+4>>2];a[s+8>>2]=a[e+8>>2];a[s+12>>2]=a[e+12>>2];a[b>>2]=a[d>>2];a[b+4>>2]=a[d+4>>2];a[b+8>>2]=a[d+8>>2];a[b+12>>2]=a[d+12>>2];a[u>>2]=a[h>>2];a[u+4>>2]=a[h+4>>2];a[u+8>>2]=a[h+8>>2];a[u+12>>2]=a[h+12>>2];if(!(Lc(c,s,b,u)|0))t=t+1|0;else{r=0;break}}A:do{if((w|0)==4)while(1){if((r|0)>=(f|0)){r=1;break A}h=n+(r<<4)|0;d=n+(a[l+(r<<2)>>2]<<4)|0;a[c>>2]=a[A>>2];a[c+4>>2]=a[A+4>>2];a[c+8>>2]=a[A+8>>2];a[c+12>>2]=a[A+12>>2];a[s>>2]=a[e>>2];a[s+4>>2]=a[e+4>>2];a[s+8>>2]=a[e+8>>2];a[s+12>>2]=a[e+12>>2];a[b>>2]=a[h>>2];a[b+4>>2]=a[h+4>>2];a[b+8>>2]=a[h+8>>2];a[b+12>>2]=a[h+12>>2];a[u>>2]=a[d>>2];a[u+4>>2]=a[d+4>>2];a[u+8>>2]=a[d+8>>2];a[u+12>>2]=a[d+12>>2];if(!(Lc(c,s,b,u)|0)){r=r+1|0;w=4}else{r=0;break}}}while(0);k=o;return r|0}function Vc(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0;n=k;k=k+48|0;l=n+32|0;t=n+16|0;c=n;a[c>>2]=a[r>>2];a[c+4>>2]=a[r+4>>2];a[c+8>>2]=a[r+8>>2];a[c+12>>2]=a[r+12>>2];a[t>>2]=a[A>>2];a[t+4>>2]=a[A+4>>2];a[t+8>>2]=a[A+8>>2];a[t+12>>2]=a[A+12>>2];a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2];f=mc(c,t,l)|0;a[c>>2]=a[r>>2];a[c+4>>2]=a[r+4>>2];a[c+8>>2]=a[r+8>>2];a[c+12>>2]=a[r+12>>2];a[t>>2]=a[e>>2];a[t+4>>2]=a[e+4>>2];a[t+8>>2]=a[e+8>>2];a[t+12>>2]=a[e+12>>2];a[l>>2]=a[i>>2];a[l+4>>2]=a[i+4>>2];a[l+8>>2]=a[i+8>>2];a[l+12>>2]=a[i+12>>2];r=mc(c,t,l)|0;a[c>>2]=a[A>>2];a[c+4>>2]=a[A+4>>2];a[c+8>>2]=a[A+8>>2];a[c+12>>2]=a[A+12>>2];a[t>>2]=a[e>>2];a[t+4>>2]=a[e+4>>2];a[t+8>>2]=a[e+8>>2];a[t+12>>2]=a[e+12>>2];a[l>>2]=a[i>>2];a[l+4>>2]=a[i+4>>2];a[l+8>>2]=a[i+8>>2];a[l+12>>2]=a[i+12>>2];i=(mc(c,t,l)|0)>0;k=n;return(i?r|f:r&f)>>>31^1|0}function Jc(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0;B=k;k=k+80|0;t=B+64|0;l=B+48|0;n=B+32|0;c=B+16|0;w=B;o=a[A+4>>2]|0;h=a[A+8>>2]|0;d=a[A+16>>2]|0;b=a[A+20>>2]|0;u=Q2((o<<3)+16|0)|0;if((e|0)==-2222){a[t>>2]=a[i>>2];a[t+4>>2]=a[i+4>>2];a[t+8>>2]=a[i+8>>2];a[t+12>>2]=a[i+12>>2];e=pc(A,t)|0}if((e|0)>-1){A=a[A+12>>2]|0;f=a[A+(e+1<<2)>>2]|0;A=a[A+(e<<2)>>2]|0}else{f=o;A=o}e=0;while(1){if((e|0)>=(A|0)){e=A;break}v=h+(e<<4)|0;a[w>>2]=a[v>>2];a[w+4>>2]=a[v+4>>2];a[w+8>>2]=a[v+8>>2];a[w+12>>2]=a[v+12>>2];v=h+(a[b+(e<<2)>>2]<<4)|0;g=h+(a[d+(e<<2)>>2]<<4)|0;a[c>>2]=a[v>>2];a[c+4>>2]=a[v+4>>2];a[c+8>>2]=a[v+8>>2];a[c+12>>2]=a[v+12>>2];a[n>>2]=a[w>>2];a[n+4>>2]=a[w+4>>2];a[n+8>>2]=a[w+8>>2];a[n+12>>2]=a[w+12>>2];a[l>>2]=a[g>>2];a[l+4>>2]=a[g+4>>2];a[l+8>>2]=a[g+8>>2];a[l+12>>2]=a[g+12>>2];a[t>>2]=a[i>>2];a[t+4>>2]=a[i+4>>2];a[t+8>>2]=a[i+8>>2];a[t+12>>2]=a[i+12>>2];if((Vc(c,n,l,t)|0)!=0?(a[l>>2]=a[i>>2],a[l+4>>2]=a[i+4>>2],a[l+8>>2]=a[i+8>>2],a[l+12>>2]=a[i+12>>2],a[t>>2]=a[w>>2],a[t+4>>2]=a[w+4>>2],a[t+8>>2]=a[w+8>>2],a[t+12>>2]=a[w+12>>2],(Fc(l,t,A,f,o,h,d)|0)!=0):0){a[l>>2]=a[i>>2];a[l+4>>2]=a[i+4>>2];a[l+8>>2]=a[i+8>>2];a[l+12>>2]=a[i+12>>2];a[t>>2]=a[w>>2];a[t+4>>2]=a[w+4>>2];a[t+8>>2]=a[w+8>>2];a[t+12>>2]=a[w+12>>2];r=+Dc(l,t)}else r=0.0;s[u+(e<<3)>>3]=r;e=e+1|0}while(1){if((e|0)>=(f|0)){e=f;break}s[u+(e<<3)>>3]=0.0;e=e+1|0}while(1){if((e|0)>=(o|0))break;g=h+(e<<4)|0;a[w>>2]=a[g>>2];a[w+4>>2]=a[g+4>>2];a[w+8>>2]=a[g+8>>2];a[w+12>>2]=a[g+12>>2];g=h+(a[b+(e<<2)>>2]<<4)|0;v=h+(a[d+(e<<2)>>2]<<4)|0;a[c>>2]=a[g>>2];a[c+4>>2]=a[g+4>>2];a[c+8>>2]=a[g+8>>2];a[c+12>>2]=a[g+12>>2];a[n>>2]=a[w>>2];a[n+4>>2]=a[w+4>>2];a[n+8>>2]=a[w+8>>2];a[n+12>>2]=a[w+12>>2];a[l>>2]=a[v>>2];a[l+4>>2]=a[v+4>>2];a[l+8>>2]=a[v+8>>2];a[l+12>>2]=a[v+12>>2];a[t>>2]=a[i>>2];a[t+4>>2]=a[i+4>>2];a[t+8>>2]=a[i+8>>2];a[t+12>>2]=a[i+12>>2];if((Vc(c,n,l,t)|0)!=0?(a[l>>2]=a[i>>2],a[l+4>>2]=a[i+4>>2],a[l+8>>2]=a[i+8>>2],a[l+12>>2]=a[i+12>>2],a[t>>2]=a[w>>2],a[t+4>>2]=a[w+4>>2],a[t+8>>2]=a[w+8>>2],a[t+12>>2]=a[w+12>>2],(Fc(l,t,A,f,o,h,d)|0)!=0):0){a[l>>2]=a[i>>2];a[l+4>>2]=a[i+4>>2];a[l+8>>2]=a[i+8>>2];a[l+12>>2]=a[i+12>>2];a[t>>2]=a[w>>2];a[t+4>>2]=a[w+4>>2];a[t+8>>2]=a[w+8>>2];a[t+12>>2]=a[w+12>>2];r=+Dc(l,t)}else r=0.0;s[u+(e<<3)>>3]=r;e=e+1|0}s[u+(o<<3)>>3]=0.0;s[u+(o+1<<3)>>3]=0.0;k=B;return u|0}function pc(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;b=k;k=k+32|0;f=b+8|0;r=b;l=b+24|0;t=A+8|0;c=A+12|0;s=l+4|0;i=0;while(1){if((i|0)>=(a[A>>2]|0)){i=-1111;break}w=a[c>>2]|0;u=a[w+(i<<2)>>2]|0;a[l>>2]=(a[t>>2]|0)+(u<<4);n=i+1|0;a[s>>2]=(a[w+(n<<2)>>2]|0)-u;a[r>>2]=a[l>>2];a[r+4>>2]=a[l+4>>2];a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];if(!(Dt(r,f)|0))i=n;else break}k=b;return i|0}function Nc(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0;g=k;k=k+64|0;u=g+48|0;b=g+32|0;o=g+16|0;w=g;d=a[f+4>>2]|0;B=a[f+8>>2]|0;h=a[f+16>>2]|0;n=(r|0)<0;do{if((e|0)<0)if(n){n=0;t=0;f=0;l=0}else{e=a[f+12>>2]|0;f=0;l=0;t=r;c=e;e=e+(r<<2)|0;s=9}else{if(n){s=a[f+12>>2]|0;f=0;l=0;t=e;c=s;e=s+(e<<2)|0;s=9;break}n=a[f+12>>2]|0;if((e|0)>(r|0)){f=a[n+(r+1<<2)>>2]|0;l=a[n+(r<<2)>>2]|0;t=e;c=n;e=n+(e<<2)|0;s=9;break}else{f=a[n+(e+1<<2)>>2]|0;l=a[n+(e<<2)>>2]|0;t=r;c=n;e=n+(r<<2)|0;s=9;break}}}while(0);if((s|0)==9){n=a[c+(t+1<<2)>>2]|0;t=a[e>>2]|0}e=0;while(1){if((e|0)>=(l|0)){s=13;break}c=B+(e<<4)|0;r=B+(a[h+(e<<2)>>2]<<4)|0;a[w>>2]=a[A>>2];a[w+4>>2]=a[A+4>>2];a[w+8>>2]=a[A+8>>2];a[w+12>>2]=a[A+12>>2];a[o>>2]=a[i>>2];a[o+4>>2]=a[i+4>>2];a[o+8>>2]=a[i+8>>2];a[o+12>>2]=a[i+12>>2];a[b>>2]=a[c>>2];a[b+4>>2]=a[c+4>>2];a[b+8>>2]=a[c+8>>2];a[b+12>>2]=a[c+12>>2];a[u>>2]=a[r>>2];a[u+4>>2]=a[r+4>>2];a[u+8>>2]=a[r+8>>2];a[u+12>>2]=a[r+12>>2];if(!(Lc(w,o,b,u)|0))e=e+1|0;else{n=0;break}}A:do{if((s|0)==13){while(1){if((f|0)>=(t|0))break;r=B+(f<<4)|0;s=B+(a[h+(f<<2)>>2]<<4)|0;a[w>>2]=a[A>>2];a[w+4>>2]=a[A+4>>2];a[w+8>>2]=a[A+8>>2];a[w+12>>2]=a[A+12>>2];a[o>>2]=a[i>>2];a[o+4>>2]=a[i+4>>2];a[o+8>>2]=a[i+8>>2];a[o+12>>2]=a[i+12>>2];a[b>>2]=a[r>>2];a[b+4>>2]=a[r+4>>2];a[b+8>>2]=a[r+8>>2];a[b+12>>2]=a[r+12>>2];a[u>>2]=a[s>>2];a[u+4>>2]=a[s+4>>2];a[u+8>>2]=a[s+8>>2];a[u+12>>2]=a[s+12>>2];if(!(Lc(w,o,b,u)|0)){f=f+1|0;s=13}else{n=0;break A}}while(1){if((n|0)>=(d|0)){n=1;break A}r=B+(n<<4)|0;s=B+(a[h+(n<<2)>>2]<<4)|0;a[w>>2]=a[A>>2];a[w+4>>2]=a[A+4>>2];a[w+8>>2]=a[A+8>>2];a[w+12>>2]=a[A+12>>2];a[o>>2]=a[i>>2];a[o+4>>2]=a[i+4>>2];a[o+8>>2]=a[i+8>>2];a[o+12>>2]=a[i+12>>2];a[b>>2]=a[r>>2];a[b+4>>2]=a[r+4>>2];a[b+8>>2]=a[r+8>>2];a[b+12>>2]=a[r+12>>2];a[u>>2]=a[s>>2];a[u+4>>2]=a[s+4>>2];a[u+8>>2]=a[s+8>>2];a[u+12>>2]=a[s+12>>2];if(!(Lc(w,o,b,u)|0))n=n+1|0;else{n=0;break}}}}while(0);k=g;return n|0}function Rc(A){A=A|0;return Xc(A,0,0)|0}function Xc(A,e,i){A=A|0;e=e|0;i=i|0;return Hc(A,e,i,0)|0}function Hc(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0;if(!e){n=Q2(496)|0;if(!n)n=0;else{a[n+12>>2]=35;a[n+16>>2]=107;a[n+20>>2]=105;e=35;l=6}}else{n=m5[a[e>>2]&63](496)|0;if(!n)n=0;else{l=a[e>>2]|0;a[n+12>>2]=l;a[n+16>>2]=a[e+4>>2];a[n+20>>2]=a[e+8>>2];e=l;l=6}}do{if((l|0)==6){a[n+8>>2]=0;a[n+32>>2]=0;a[n+376>>2]=16;c=n+12|0;t=m5[e&63](256)|0;e=n+388|0;a[e>>2]=t;if(!t){F5[a[n+20>>2]&127](n);n=0;break}l=m5[a[c>>2]&63](1024)|0;t=n+44|0;a[t>>2]=l;if(!l){i=n+20|0;F5[a[i>>2]&127](a[e>>2]|0);F5[a[i>>2]&127](n);n=0;break}a[n+48>>2]=l+1024;if(!f){f=Uc(c)|0;a[n+352>>2]=f;if(!f){i=n+20|0;F5[a[i>>2]&127](a[t>>2]|0);F5[a[i>>2]&127](a[e>>2]|0);F5[a[i>>2]&127](n);n=0;break}}else a[n+352>>2]=f;a[n+372>>2]=0;a[n+364>>2]=0;a[n+300>>2]=0;a[n+464>>2]=0;a[n+460>>2]=0;a[n+124>>2]=0;a[n+244>>2]=0;e=n+468|0;r[e>>0]=33;l=n+232|0;r[l>>0]=0;r[n+233>>0]=0;a[n+392>>2]=0;a[n+396>>2]=0;r[n+400>>0]=0;f=n+228|0;a[f>>2]=0;xc(n+412|0,c);xc(n+436|0,c);Tc(n,A);if(A|0?(a[f>>2]|0)==0:0){jc(n);n=0;break}if(!i){a[n+224>>2]=xq()|0;break}else{r[l>>0]=1;a[n+224>>2]=C0()|0;r[e>>0]=r[i>>0]|0;break}}}while(0);return n|0}function Uc(A){A=A|0;var e=0;e=m5[a[A>>2]&63](188)|0;if(e|0){xc(e+80|0,A);xc(e+104|0,A);$s(e,A);$s(e+20|0,A);$s(e+40|0,A);$s(e+60|0,A);r[e+131>>0]=0;$s(e+132|0,A);a[e+152>>2]=0;a[e+156>>2]=0;r[e+160>>0]=0;A=e+164|0;a[A>>2]=0;a[A+4>>2]=0;a[A+8>>2]=0;a[A+12>>2]=0;a[A+16>>2]=0;a[A+20>>2]=0;r[e+128>>0]=1;r[e+129>>0]=0;r[e+130>>0]=0}return e|0}function xc(A,e){A=A|0;e=e|0;a[A>>2]=0;a[A+4>>2]=0;a[A+8>>2]=0;a[A+12>>2]=0;a[A+16>>2]=0;a[A+20>>2]=e;return}function Tc(A,e){A=A|0;e=e|0;var i=0,n=0,l=0;a[A+276>>2]=56;y0(A+252|0);if(e|0)a[A+228>>2]=As(e,A+12|0)|0;a[A+356>>2]=0;Y$(A+148|0,A+144|0,0)|0;a[A>>2]=0;a[A+4>>2]=0;e=A+116|0;n=A+52|0;l=n+64|0;do{a[n>>2]=0;n=n+4|0}while((n|0)<(l|0));a[e>>2]=A;a[A+120>>2]=0;e=A+128|0;a[e>>2]=0;a[e+4>>2]=0;a[e+8>>2]=0;a[e+12>>2]=0;e=a[A+8>>2]|0;a[A+24>>2]=e;a[A+28>>2]=e;a[A+36>>2]=0;a[A+40>>2]=0;e=A+312|0;n=A+404|0;a[n>>2]=0;a[n+4>>2]=0;n=A+280|0;i=A+304|0;a[n>>2]=0;a[n+4>>2]=0;a[n+8>>2]=0;a[n+12>>2]=0;a[n+16>>2]=0;n=e;l=n+36|0;do{a[n>>2]=0;n=n+4|0}while((n|0)<(l|0));f[e+36>>1]=0;r[i>>0]=1;a[A+308>>2]=0;a[A+360>>2]=0;a[A+368>>2]=0;a[A+380>>2]=0;a[A+236>>2]=0;a[A+248>>2]=0;a[A+240>>2]=0;a[A+472>>2]=0;a[A+476>>2]=0;r[A+484>>0]=0;r[A+485>>0]=0;a[A+488>>2]=0;a[A+492>>2]=0;return}function jc(A){A=A|0;var e=0,i=0,f=0,n=0,l=0;if(A|0){i=A+364|0;n=A+20|0;e=a[A+360>>2]|0;while(1){if(!e){e=a[i>>2]|0;if(!e)break;a[i>>2]=0}l=a[e>>2]|0;F5[a[n>>2]&127](a[e+36>>2]|0);Pc(a[e+44>>2]|0,A);F5[a[n>>2]&127](e);e=l}i=A+300|0;e=a[A+296>>2]|0;while(1){if(!e){e=a[i>>2]|0;if(!e)break;a[i>>2]=0}l=a[e+8>>2]|0;F5[a[n>>2]&127](e);e=l}Pc(a[A+372>>2]|0,A);Pc(a[A+368>>2]|0,A);Sc(A+412|0);Sc(A+436|0);e=A+12|0;F5[a[n>>2]&127](a[A+228>>2]|0);if((r[A+484>>0]|0)==0?(f=a[A+352>>2]|0,f|0):0)Oc(f,(a[A+472>>2]|0)==0&1,e);F5[a[n>>2]&127](a[A+388>>2]|0);F5[a[n>>2]&127](a[A+460>>2]|0);F5[a[n>>2]&127](a[A+8>>2]|0);F5[a[n>>2]&127](a[A+44>>2]|0);F5[a[n>>2]&127](a[A+392>>2]|0);F5[a[n>>2]&127](a[A+236>>2]|0);e=a[A+248>>2]|0;if(e|0)F5[e&127](a[A+240>>2]|0);F5[a[n>>2]&127](A)}return}function Pc(A,e){A=A|0;e=e|0;var i=0;e=e+20|0;while(1){if(!A)break;i=a[A+4>>2]|0;F5[a[e>>2]&127](a[A+16>>2]|0);F5[a[e>>2]&127](A);A=i}return}function Sc(A){A=A|0;var e=0,i=0,r=0;i=A+20|0;e=a[A>>2]|0;while(1){if(!e)break;r=a[e>>2]|0;F5[a[(a[i>>2]|0)+8>>2]&127](e);e=r}e=a[A+4>>2]|0;while(1){if(!e)break;r=a[e>>2]|0;F5[a[(a[i>>2]|0)+8>>2]&127](e);e=r}return}function Oc(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;l=k;k=k+16|0;f=l;n=A+20|0;Kc(f,n);i=i+8|0;while(1){r=_c(f)|0;if(!r)break;if(!(a[r+16>>2]|0))continue;F5[a[i>>2]&127](a[r+20>>2]|0)}qc(A);qc(A+132|0);qc(n);qc(A+40|0);qc(A+60|0);Sc(A+80|0);Sc(A+104|0);if(e<<24>>24){F5[a[i>>2]&127](a[A+184>>2]|0);F5[a[i>>2]&127](a[A+164>>2]|0)}F5[a[i>>2]&127](A);k=l;return}function Kc(A,e){A=A|0;e=e|0;var i=0;i=a[e>>2]|0;a[A>>2]=i;a[A+4>>2]=i+(a[e+8>>2]<<2);return}function _c(A){A=A|0;var e=0,i=0,r=0;i=a[A+4>>2]|0;r=a[A>>2]|0;do{if((r|0)==(i|0)){e=0;break}e=r;r=r+4|0;a[A>>2]=r;e=a[e>>2]|0}while(!(e|0));return e|0}function qc(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;i=A+8|0;r=A+16|0;e=0;while(1){f=a[(a[r>>2]|0)+8>>2]|0;n=a[A>>2]|0;if(e>>>0>=(a[i>>2]|0)>>>0)break;F5[f&127](a[n+(e<<2)>>2]|0);e=e+1|0}F5[f&127](n);return}function $c(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0;f=es(A)|0;if(!f){a[A+276>>2]=57;f=is(A,e,i,r)|0}return f|0}function As(A,e){A=A|0;e=e|0;var i=0,f=0;i=0;do{f=i;i=i+1|0}while((r[A+f>>0]|0)!=0);e=m5[a[e>>2]&63](i)|0;if(!e)e=0;else W6(e|0,A|0,i|0)|0;return e|0}function es(A){A=A|0;var e=0;e=A+228|0;if(!(y5[(r[A+232>>0]<<24>>24?38:37)&63](A+148|0,A+144|0,a[e>>2]|0)|0))A=qs(A,a[e>>2]|0)|0;else A=0;return A|0}function is(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0;n=k;k=k+16|0;l=n;a[l>>2]=e;c=A+144|0;t=a[c>>2]|0;t=W5[a[t>>2]&127](t,e,i,l)|0;f=rs(A,a[c>>2]|0,e,i,t,a[l>>2]|0,f,(r[A+480>>0]|0)==0&1)|0;k=n;return f|0}function rs(A,e,i,f,l,t,c,s){A=A|0;e=e|0;i=i|0;f=f|0;l=l|0;t=t|0;c=c|0;s=s|0;var b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,U=0,x=0,T=0,j=0,P=0,S=0,O=0,K=0,_=0,q=0,$=0,AA=0,eA=0,iA=0,rA=0,fA=0,aA=0,nA=0,lA=0,tA=0,cA=0,sA=0,bA=0,uA=0,wA=0,kA=0,oA=0,hA=0,dA=0,BA=0,gA=0,vA=0,EA=0,CA=0,IA=0,ZA=0,GA=0,mA=0,QA=0,LA=0,yA=0,WA=0,zA=0,YA=0;YA=k;k=k+16|0;yA=YA;a[yA>>2]=t;d=a[A+352>>2]|0;B=A+144|0;if((a[B>>2]|0)==(e|0)){o=A+284|0;h=A+288|0;wA=A+296|0}else{wA=A+296|0;h=a[wA>>2]|0;o=h;h=h+4|0}g=s<<24>>24!=0;oA=A+252|0;v=A+80|0;E=A+476|0;C=A+84|0;I=A+320|0;Z=A+412|0;G=A+316|0;m=A+424|0;Q=A+428|0;L=A+324|0;dA=A+4|0;y=A+485|0;W=d+132|0;z=A+312|0;gA=d+129|0;Y=d+128|0;D=d+80|0;M=d+92|0;F=d+96|0;V=A+136|0;J=A+88|0;p=A+488|0;EA=A+112|0;CA=d+131|0;IA=A+116|0;ZA=d+130|0;GA=A+108|0;mA=A+356|0;N=A+340|0;R=A+132|0;X=A+344|0;H=A+348|0;U=A+328|0;x=A+349|0;T=A+420|0;j=d+120|0;P=d+116|0;S=A+92|0;O=A+472|0;K=A+336|0;_=A+332|0;q=A+96|0;$=A+256|0;AA=A+464|0;eA=A+460|0;iA=d+160|0;rA=d+184|0;fA=d+180|0;aA=d+164|0;nA=A+128|0;lA=A+12|0;tA=A+16|0;cA=A+268|0;sA=A+120|0;bA=d+176|0;uA=d+168|0;w=e;u=i;e=l;A:while(1){a[o>>2]=u;i=a[yA>>2]|0;a[h>>2]=i;t=i;e:do{if((e|0)<1){if(g&(e|0)!=0){b=7;break A}switch(e|0){case-1:{t=5;b=280;break A}case 0:{b=9;break A}case-2:{t=6;break A}case-4:{b=10;break A}case-15:{e=15;break e}default:{}}a[yA>>2]=f;e=0-e|0;t=f}}while(0);l=z5[a[oA>>2]&127](oA,e,u,t,w)|0;e:do{switch(l|0){case 2:{b=58;break A}case-1:{b=184;break A}case 1:{t=fs(A,0,u,a[yA>>2]|0)|0;if(t|0){b=280;break A}t=a[B>>2]|0;break}case 4:{if(!(a[C>>2]|0))t=1;else{b=as(Z,w,u,a[yA>>2]|0)|0;a[G>>2]=b;if(!b){t=1;b=280;break A}a[Q>>2]=a[m>>2];a[L>>2]=0;t=0}a[I>>2]=0;b=274;break}case 7:{t=a[C>>2]|0;if(!t)b=275;else{R5[t&15](a[dA>>2]|0,a[G>>2]|0,a[I>>2]|0,a[L>>2]|0,1);a[G>>2]=0;ns(Z);t=w}break}case 57:{t=fs(A,1,u,a[yA>>2]|0)|0;if(t|0){b=280;break A}t=a[B>>2]|0;break}case 6:{r[y>>0]=0;b=ls(A,W,75395,36)|0;a[z>>2]=b;if(!b){t=1;b=280;break A}r[gA>>0]=1;if(!(a[C>>2]|0))b=33;else{if(!(W5[a[w+52>>2]&127](w,u,a[yA>>2]|0,o)|0)){t=32;b=280;break A}t=a[w+64>>2]|0;t=as(Z,w,u+t|0,(a[yA>>2]|0)+(0-t)|0)|0;if(!t){t=1;b=280;break A}ts(t);a[Q>>2]=a[m>>2];a[L>>2]=t;t=0;b=34}break}case 14:{b=33;break}case 8:{t=a[G>>2]|0;if(!t)t=1;else{R5[a[C>>2]&15](a[dA>>2]|0,t,a[I>>2]|0,a[L>>2]|0,0);ns(Z);t=0}if(!((a[I>>2]|0)==0?!(r[y>>0]|0):0)){i=r[gA>>0]|0;r[gA>>0]=1;do{if(a[p>>2]|0?a[EA>>2]|0:0){l=ls(A,W,75395,36)|0;if(!l){t=1;b=280;break A}if(!(r[y>>0]|0))e=l+20|0;else{e=l+20|0;a[e>>2]=a[mA>>2]}r[CA>>0]=0;if(!(z5[a[EA>>2]&127](a[IA>>2]|0,0,a[e>>2]|0,a[l+16>>2]|0,a[l+24>>2]|0)|0)){t=21;b=280;break A}if(!(r[CA>>0]|0)){if(a[I>>2]|0)break;r[gA>>0]=i;break}if(((r[ZA>>0]|0)==0?(kA=a[GA>>2]|0,kA|0):0)?(m5[kA&63](a[dA>>2]|0)|0)==0:0){t=22;b=280;break A}}}while(0);r[y>>0]=0}e=a[J>>2]|0;if(!e)b=274;else{F5[e&127](a[dA>>2]|0);t=w}break}case 34:{b=ss(A,w,u,a[yA>>2]|0)|0;a[N>>2]=b;if(!b){t=1;b=280;break A}else b=80;break}case 22:{b=bs(A,w,u,a[yA>>2]|0)|0;a[X>>2]=b;if(!b){t=1;b=280;break A}r[H>>0]=0;a[U>>2]=0;r[x>>0]=0;b=80;break}case 23:{r[H>>0]=1;a[U>>2]=142188;b=80;break}case 24:{r[x>>0]=1;a[U>>2]=142194;b=80;break}case 25:{a[U>>2]=142197;b=80;break}case 26:{a[U>>2]=142203;b=80;break}case 27:{a[U>>2]=142210;b=80;break}case 28:{a[U>>2]=142217;b=80;break}case 29:{a[U>>2]=142226;b=80;break}case 30:{a[U>>2]=142234;b=80;break}case 32:case 31:{if((r[Y>>0]|0)!=0?(a[R>>2]|0)!=0:0){if(!(us(Z,(a[U>>2]|0)==0?(l|0)==32?142243:142253:142255)|0)){t=1;b=280;break A}if(!(ws(Z,w,u,a[yA>>2]|0)|0)){t=1;b=280;break A}a[U>>2]=a[Q>>2];t=w}else b=275;break}case 36:case 35:{if(r[Y>>0]|0){if(!(ks(a[N>>2]|0,a[X>>2]|0,r[H>>0]|0,r[x>>0]|0,0,A)|0)){t=1;b=280;break A}if((a[R>>2]|0)!=0?(hA=a[U>>2]|0,(hA|0)!=0):0){switch(r[hA>>0]|0){case 40:{b=93;break}case 78:{if((r[hA+1>>0]|0)==79)b=93;break}default:{}}if((b|0)==93){b=0;t=a[m>>2]|0;if((t|0)==(a[T>>2]|0)){if(!((os(Z)|0)<<24>>24)){t=1;b=280;break A}t=a[m>>2]|0}a[m>>2]=t+1;r[t>>0]=41;t=a[m>>2]|0;if((t|0)==(a[T>>2]|0)){if(!((os(Z)|0)<<24>>24)){t=1;b=280;break A}t=a[m>>2]|0}a[m>>2]=t+1;r[t>>0]=0;a[U>>2]=a[Q>>2];a[Q>>2]=a[m>>2]}a[h>>2]=u;X5[a[R>>2]&15](a[dA>>2]|0,a[a[N>>2]>>2]|0,a[a[X>>2]>>2]|0,a[U>>2]|0,0,(l|0)==36&1);ns(Z);t=w}else b=275}else b=275;break}case 38:case 37:{if(r[Y>>0]|0){t=a[w+64>>2]|0;t=hs(A,w,r[H>>0]|0,u+t|0,(a[yA>>2]|0)+(0-t)|0,D)|0;if(t|0){b=280;break A}e=a[F>>2]|0;a[F>>2]=a[M>>2];if(!(ks(a[N>>2]|0,a[X>>2]|0,r[H>>0]|0,0,e,A)|0)){t=1;b=280;break A}if((a[R>>2]|0)!=0?(BA=a[U>>2]|0,(BA|0)!=0):0){switch(r[BA>>0]|0){case 40:{b=108;break}case 78:{if((r[BA+1>>0]|0)==79)b=108;break}default:{}}if((b|0)==108){b=0;t=a[m>>2]|0;if((t|0)==(a[T>>2]|0)){if(!((os(Z)|0)<<24>>24)){t=1;b=280;break A}t=a[m>>2]|0}a[m>>2]=t+1;r[t>>0]=41;t=a[m>>2]|0;if((t|0)==(a[T>>2]|0)){if(!((os(Z)|0)<<24>>24)){t=1;b=280;break A}t=a[m>>2]|0}a[m>>2]=t+1;r[t>>0]=0;a[U>>2]=a[Q>>2];a[Q>>2]=a[m>>2]}a[h>>2]=u;X5[a[R>>2]&15](a[dA>>2]|0,a[a[N>>2]>>2]|0,a[a[X>>2]>>2]|0,a[U>>2]|0,e,(l|0)==38&1);ns(Z);t=w}else b=275}else b=275;break}case 12:{if(r[Y>>0]|0){t=a[w+64>>2]|0;t=ds(A,w,u+t|0,(a[yA>>2]|0)+(0-t)|0)|0;e=a[z>>2]|0;i=a[j>>2]|0;if(e){a[e+4>>2]=i;a[(a[z>>2]|0)+8>>2]=(a[P>>2]|0)-(a[j>>2]|0);a[j>>2]=a[P>>2];if(!(a[V>>2]|0))e=1;else{a[h>>2]=u;e=a[z>>2]|0;H5[a[V>>2]&0](a[dA>>2]|0,a[e>>2]|0,n[e+33>>0]|0,a[e+4>>2]|0,a[e+8>>2]|0,a[mA>>2]|0,0,0,0);e=0}}else{a[P>>2]=i;e=1}if(!t){t=e;b=274}else{b=280;break A}}else b=275;break}case 5:{r[y>>0]=0;r[gA>>0]=1;if(!(a[C>>2]|0)){a[I>>2]=75395;t=1}else{b=a[w+64>>2]|0;b=as(Z,w,u+b|0,(a[yA>>2]|0)+(0-b)|0)|0;a[I>>2]=b;if(!b){t=1;b=280;break A}a[Q>>2]=a[m>>2];t=0}if((((r[ZA>>0]|0)==0?(a[p>>2]|0)==0:0)?(vA=a[GA>>2]|0,vA|0):0)?(m5[vA&63](a[dA>>2]|0)|0)==0:0){t=22;b=280;break A}if(!(a[z>>2]|0)){e=ls(A,W,75395,36)|0;a[z>>2]=e;if(!e){t=1;b=280;break A}a[e+24>>2]=0;b=133}else b=133;break}case 13:{t=1;b=133;break}case 15:{if(((r[Y>>0]|0)!=0?(a[z>>2]|0)!=0:0)?(a[V>>2]|0)!=0:0){a[h>>2]=u;t=a[z>>2]|0;H5[a[V>>2]&0](a[dA>>2]|0,a[t>>2]|0,n[t+33>>0]|0,0,0,a[t+20>>2]|0,a[t+16>>2]|0,a[t+24>>2]|0,0);t=w}else b=275;break}case 16:{if((r[Y>>0]|0)!=0?(a[z>>2]|0)!=0:0){l=as(D,w,u,a[yA>>2]|0)|0;a[(a[z>>2]|0)+28>>2]=l;if(!(a[(a[z>>2]|0)+28>>2]|0)){t=1;b=280;break A}a[F>>2]=a[M>>2];if(a[S>>2]|0){a[h>>2]=u;t=a[z>>2]|0;X5[a[S>>2]&15](a[dA>>2]|0,a[t>>2]|0,a[t+20>>2]|0,a[t+16>>2]|0,a[t+24>>2]|0,a[t+28>>2]|0);t=w;break e}if(a[V>>2]|0){a[h>>2]=u;t=a[z>>2]|0;H5[a[V>>2]&0](a[dA>>2]|0,a[t>>2]|0,0,0,0,a[t+20>>2]|0,a[t+16>>2]|0,a[t+24>>2]|0,a[t+28>>2]|0);t=w}else b=275}else b=275;break}case 9:{if(y5[a[w+44>>2]&63](w,u,a[yA>>2]|0)|0){a[z>>2]=0;b=275;break e}if(!(r[Y>>0]|0)){a[M>>2]=a[F>>2];a[z>>2]=0;b=275;break e}t=as(D,w,u,a[yA>>2]|0)|0;if(!t){t=1;b=280;break A}e=ls(A,d,t,36)|0;a[z>>2]=e;if(!e){t=1;b=280;break A}if((a[e>>2]|0)!=(t|0)){a[M>>2]=a[F>>2];a[z>>2]=0;b=275;break e}a[F>>2]=a[M>>2];a[(a[z>>2]|0)+24>>2]=0;r[(a[z>>2]|0)+33>>0]=0;if(!(a[O>>2]|0))t=(a[wA>>2]|0)!=0;else t=1;r[(a[z>>2]|0)+34>>0]=(t^1)&1;if(!(a[V>>2]|0))b=275;else t=w;break}case 10:{if(!(r[Y>>0]|0)){a[M>>2]=a[F>>2];a[z>>2]=0;b=275;break e}t=as(D,w,u,a[yA>>2]|0)|0;if(!t){t=1;b=280;break A}e=ls(A,W,t,36)|0;a[z>>2]=e;if(!e){t=1;b=280;break A}if((a[e>>2]|0)!=(t|0)){a[M>>2]=a[F>>2];a[z>>2]=0;b=275;break e}a[F>>2]=a[M>>2];a[(a[z>>2]|0)+24>>2]=0;r[(a[z>>2]|0)+33>>0]=1;if(!(a[O>>2]|0))t=(a[wA>>2]|0)!=0;else t=1;r[(a[z>>2]|0)+34>>0]=(t^1)&1;if(!(a[V>>2]|0))b=275;else t=w;break}case 18:{a[K>>2]=0;a[_>>2]=0;if(!(a[q>>2]|0))b=275;else{u=as(Z,w,u,a[yA>>2]|0)|0;a[_>>2]=u;if(!u){t=1;b=280;break A}a[Q>>2]=a[m>>2];t=w}break}case 21:{if(!(W5[a[w+52>>2]&127](w,u,a[yA>>2]|0,o)|0)){t=32;b=280;break A}if(!(a[_>>2]|0))b=275;else{t=a[w+64>>2]|0;t=as(Z,w,u+t|0,(a[yA>>2]|0)+(0-t)|0)|0;if(!t){t=1;b=280;break A}ts(t);a[K>>2]=t;a[Q>>2]=a[m>>2];t=w}break}case 19:{if((a[_>>2]|0)!=0?(a[q>>2]|0)!=0:0){t=a[w+64>>2]|0;t=as(Z,w,u+t|0,(a[yA>>2]|0)+(0-t)|0)|0;if(!t){t=1;b=280;break A}a[h>>2]=u;R5[a[q>>2]&15](a[dA>>2]|0,a[_>>2]|0,a[mA>>2]|0,t,a[K>>2]|0);t=0}else t=1;ns(Z);b=274;break}case 20:{if((a[K>>2]|0)!=0?(a[q>>2]|0)!=0:0){a[h>>2]=u;R5[a[q>>2]&15](a[dA>>2]|0,a[_>>2]|0,a[mA>>2]|0,0,a[K>>2]|0);t=0}else t=1;ns(Z);b=274;break}case 58:{if(a[v>>2]|0)Bs(A,w,u,a[yA>>2]|0);t=gs(A,w,yA,f,c,s)|0;if(t|0){b=280;break A}if(!(a[yA>>2]|0)){b=189;break A}else t=w;break}case 44:{t=a[AA>>2]|0;do{if((a[$>>2]|0)>>>0>=t>>>0){if(!t){l=a[lA>>2]|0;a[AA>>2]=32;l=m5[l&63](32)|0;a[eA>>2]=l;if(!l){b=198;break A}else break}i=a[tA>>2]|0;l=a[eA>>2]|0;t=t<<1;a[AA>>2]=t;t=Q5[i&127](l,t)|0;if(!t){b=193;break A}a[eA>>2]=t;t=a[rA>>2]|0;if(t|0){t=Q5[a[tA>>2]&127](t,a[AA>>2]<<2)|0;if(!t){t=1;b=280;break A}a[rA>>2]=t}}}while(0);r[(a[eA>>2]|0)+(a[$>>2]|0)>>0]=0;if(r[iA>>0]|0){t=Es(A)|0;if((t|0)<0){t=1;b=280;break A}a[(a[rA>>2]|0)+(a[fA>>2]<<2)>>2]=t;a[fA>>2]=(a[fA>>2]|0)+1;a[(a[aA>>2]|0)+(t*28|0)>>2]=6;if(a[nA>>2]|0)t=w;else b=275}else b=275;break}case 50:{t=(a[eA>>2]|0)+(a[$>>2]|0)|0;if((r[t>>0]|0)==124){t=2;b=280;break A}r[t>>0]=44;if((r[iA>>0]|0)!=0?(a[nA>>2]|0)!=0:0)t=w;else b=275;break}case 49:{i=a[eA>>2]|0;e=a[$>>2]|0;t=r[i+e>>0]|0;if(t<<24>>24==44){t=2;b=280;break A}if(t<<24>>24==0&(r[iA>>0]|0)!=0?(QA=(a[aA>>2]|0)+((a[(a[rA>>2]|0)+((a[fA>>2]|0)+-1<<2)>>2]|0)*28|0)|0,(a[QA>>2]|0)!=3):0){a[QA>>2]=5;t=(a[nA>>2]|0)==0&1;i=a[eA>>2]|0;e=a[$>>2]|0}else t=1;r[i+e>>0]=124;b=274;break}case 59:case 60:{r[gA>>0]=1;if(a[p>>2]|0){e=a[w+64>>2]|0;e=as(D,w,u+e|0,(a[yA>>2]|0)+(0-e)|0)|0;if(!e){t=1;b=280;break A}i=ls(A,W,e,0)|0;a[M>>2]=a[F>>2];do{if(a[cA>>2]|0){if(!(r[ZA>>0]|0)){if(r[gA>>0]|0){b=219;break}}else if(a[wA>>2]|0){b=219;break}if(!i){t=11;b=280;break A}if(!(r[i+34>>0]|0)){t=24;b=280;break A}}else b=219}while(0);if((b|0)==219?(b=0,(i|0)==0):0){r[Y>>0]=r[ZA>>0]|0;if((l|0)!=60){b=275;break e}t=a[sA>>2]|0;if(!t){b=275;break e}J5[t&127](a[dA>>2]|0,e,1);t=w;break e}t=i+32|0;if(r[t>>0]|0){t=12;b=280;break A}if(a[i+4>>2]|0){t=Cs(A,i,(l|0)==60&1)|0;e=(t|0)==0;if(e){t=(e^1)&1;b=274;break e}else{b=280;break A}}if(!(a[EA>>2]|0)){r[Y>>0]=r[ZA>>0]|0;b=275;break e}r[CA>>0]=0;r[t>>0]=1;l=(z5[a[EA>>2]&127](a[IA>>2]|0,0,a[i+20>>2]|0,a[i+16>>2]|0,a[i+24>>2]|0)|0)==0;r[t>>0]=0;if(l){t=21;b=280;break A}e=r[ZA>>0]|0;if(!(r[CA>>0]|0)){r[Y>>0]=e;t=w;break e}else t=0}else{e=r[ZA>>0]|0;r[Y>>0]=e;t=1}if((e<<24>>24==0?(LA=a[GA>>2]|0,(LA|0)!=0):0)?(m5[LA&63](a[dA>>2]|0)|0)==0:0){t=22;b=280;break A}else b=274;break}case 40:{if(!(a[nA>>2]|0))b=275;else{u=ss(A,w,u,a[yA>>2]|0)|0;a[N>>2]=u;if(!u){t=1;b=280;break A}a[fA>>2]=0;a[bA>>2]=0;r[iA>>0]=1;t=w}break}case 42:case 41:{if(!(r[iA>>0]|0))b=275;else{if(!(a[nA>>2]|0))t=1;else{t=m5[a[lA>>2]&63](20)|0;if(!t){t=1;b=280;break A}b=t+4|0;a[b>>2]=0;a[b+4>>2]=0;a[b+8>>2]=0;a[b+12>>2]=0;a[t>>2]=(l|0)==41?2:1;a[h>>2]=u;J5[a[nA>>2]&127](a[dA>>2]|0,a[a[N>>2]>>2]|0,t);t=0}r[iA>>0]=0;b=274}break}case 43:{if((r[iA>>0]|0)!=0?(a[(a[aA>>2]|0)+((a[(a[rA>>2]|0)+((a[fA>>2]|0)+-1<<2)>>2]|0)*28|0)>>2]=3,(a[nA>>2]|0)!=0):0)t=w;else b=275;break}case 51:{e=0;b=247;break}case 53:{e=1;b=247;break}case 52:{e=2;b=247;break}case 54:{e=3;b=247;break}case 45:{i=0;b=258;break}case 47:{i=1;b=258;break}case 46:{i=2;b=258;break}case 48:{i=3;b=258;break}case 55:{if(!(Zs(A,w,u,a[yA>>2]|0)|0)){t=1;b=280;break A}else t=w;break}case 56:{if(!(Gs(A,w,u,a[yA>>2]|0)|0)){t=1;b=280;break A}else t=w;break}case 0:{if((e|0)==14)t=w;else b=275;break}case 3:{if(!(a[C>>2]|0))b=275;else t=w;break}case 11:{if((r[Y>>0]|0)!=0?(a[V>>2]|0)!=0:0)t=w;else b=275;break}case 17:{if(!(a[q>>2]|0))b=275;else t=w;break}case 33:{if((r[Y>>0]|0)!=0?(a[R>>2]|0)!=0:0)t=w;else b=275;break}case 39:{if(!(a[nA>>2]|0))b=275;else t=w;break}default:b=275}}while(0);if((b|0)==33)if(!(W5[a[w+52>>2]&127](w,u,a[yA>>2]|0,o)|0)){t=32;b=280;break}else{t=1;b=34}else if((b|0)==80){b=0;if((r[Y>>0]|0)!=0?(a[R>>2]|0)!=0:0)t=w;else b=275}else if((b|0)==133){b=0;if((r[Y>>0]|0)!=0?(a[z>>2]|0)!=0:0){e=a[w+64>>2]|0;e=as(D,w,u+e|0,(a[yA>>2]|0)+(0-e)|0)|0;a[(a[z>>2]|0)+16>>2]=e;e=a[z>>2]|0;if(!(a[e+16>>2]|0)){t=1;b=280;break}a[e+20>>2]=a[mA>>2];a[F>>2]=a[M>>2];if((l|0)==13&(a[V>>2]|0)!=0)t=w;else b=274}else b=274}else if((b|0)==247){b=0;if(r[iA>>0]|0){t=a[yA>>2]|0;if(e)t=t+(0-(a[w+64>>2]|0))|0;i=Es(A)|0;if((i|0)<0){t=1;b=280;break}a[(a[aA>>2]|0)+(i*28|0)>>2]=4;a[(a[aA>>2]|0)+(i*28|0)+4>>2]=e;t=ss(A,w,u,t)|0;if(!t){t=1;b=280;break}e=a[t>>2]|0;a[(a[aA>>2]|0)+(i*28|0)+8>>2]=e;t=0;do{l=t;t=t+1|0}while((r[e+l>>0]|0)!=0);a[uA>>2]=(a[uA>>2]|0)+t;if(a[nA>>2]|0)t=w;else b=275}else b=275}else if((b|0)==258)if(r[iA>>0]|0){e=(a[nA>>2]|0)==0;t=e&1;b=(a[fA>>2]|0)+-1|0;a[fA>>2]=b;a[(a[aA>>2]|0)+((a[(a[rA>>2]|0)+(b<<2)>>2]|0)*28|0)+4>>2]=i;if(!(a[fA>>2]|0)){if(!e){e=Is(A)|0;if(!e){t=1;b=280;break}a[h>>2]=u;J5[a[nA>>2]&127](a[dA>>2]|0,a[a[N>>2]>>2]|0,e)}r[iA>>0]=0;a[uA>>2]=0;b=274}else b=274}else b=275;if((b|0)==34){b=0;if((r[Y>>0]|0)!=0?(a[z>>2]|0)!=0:0){e=a[w+64>>2]|0;e=as(D,w,u+e|0,(a[yA>>2]|0)+(0-e)|0)|0;if(!e){t=1;b=280;break}ts(e);a[(a[z>>2]|0)+24>>2]=e;a[F>>2]=a[M>>2];if((l|0)==14&(a[V>>2]|0)!=0)t=w;else b=274}else b=274}if((b|0)==274){b=0;if(!(t<<24>>24))t=w;else b=275}if((b|0)==275){b=0;if(!(a[v>>2]|0))t=w;else{Bs(A,w,u,a[yA>>2]|0);t=w}}switch(a[E>>2]|0){case 3:{b=278;break A}case 2:{t=35;b=280;break A}default:{}}e=a[yA>>2]|0;w=t;u=e;e=W5[a[t>>2]&127](t,e,f,yA)|0}A:switch(b|0){case 7:{a[c>>2]=u;t=0;break}case 9:{a[o>>2]=i;t=4;break}case 10:{t=(w|0)==(a[B>>2]|0);if(!t?(r[(a[wA>>2]|0)+20>>0]|0)==0:0){a[c>>2]=u;t=0;break}if((r[A+484>>0]|0)!=0|t^1)if((z5[a[oA>>2]&127](oA,-4,f,f,w)|0)==-1)t=29;else{a[c>>2]=u;t=0}else t=3;break}case 58:{do{if((r[y>>0]|0?(WA=r[gA>>0]|0,r[gA>>0]=1,a[p>>2]|0):0)?a[EA>>2]|0:0){t=ls(A,W,75395,36)|0;if(!t){t=1;break A}yA=t+20|0;a[yA>>2]=a[mA>>2];r[CA>>0]=0;if(!(z5[a[EA>>2]&127](a[IA>>2]|0,0,a[yA>>2]|0,a[t+16>>2]|0,a[t+24>>2]|0)|0)){t=21;break A}if(!(r[CA>>0]|0)){r[gA>>0]=WA;break}if(((r[ZA>>0]|0)==0?(zA=a[GA>>2]|0,zA|0):0)?(m5[zA&63](a[dA>>2]|0)|0)==0:0){t=22;break A}}}while(0);a[A+276>>2]=58;t=cs(A,u,f,c)|0;break}case 184:{t=(e|0)==28?10:(e|0)==12?17:2;break}case 189:{a[A+276>>2]=59;t=0;break}case 193:{a[AA>>2]=(a[AA>>2]|0)>>>1;t=1;break}case 198:{a[AA>>2]=0;t=1;break}case 278:{a[c>>2]=a[yA>>2];t=0;break}case 280:break}k=YA;return t|0}function fs(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+32|0;o=h+16|0;b=h+12|0;t=h+8|0;c=h+4|0;s=h;a[o>>2]=0;a[b>>2]=0;a[t>>2]=0;a[s>>2]=-1;u=A+144|0;w=A+284|0;n=(e|0)!=0;A:do{if(D5[(r[A+232>>0]<<24>>24?2:1)&3](e,a[u>>2]|0,i,f,w,t,c,o,b,s)|0){if((a[s>>2]|0)==1&(n^1)?(r[(a[A+352>>2]|0)+130>>0]=1,l=A+488|0,(a[l>>2]|0)==1):0)a[l>>2]=0;l=A+140|0;if(!(a[l>>2]|0))if(!(a[A+80>>2]|0)){i=0;e=0}else{Bs(A,a[u>>2]|0,i,f);i=0;e=0}else{e=a[o>>2]|0;if(!e)e=0;else{f=a[u>>2]|0;e=as(A+436|0,f,e,e+(Q5[a[f+28>>2]&127](f,e)|0)|0)|0;if(!e){e=1;break}a[A+452>>2]=a[A+448>>2]}n=a[t>>2]|0;if(n){t=a[u>>2]|0;n=as(A+436|0,t,n,(a[c>>2]|0)+(0-(a[t+64>>2]|0))|0)|0;if(!n){e=1;break}}else n=0;N5[a[l>>2]&31](a[A+4>>2]|0,n,e,a[s>>2]|0);i=n}do{if(!(a[A+228>>2]|0)){n=a[b>>2]|0;l=n;if(n|0){s=a[n+64>>2]|0;b=a[u>>2]|0;if((s|0)==(a[b+64>>2]|0)?(s|0)!=2|(n|0)==(b|0):0){a[u>>2]=l;break}a[w>>2]=a[o>>2];e=19;break A}n=a[o>>2]|0;if(n|0){l=A+436|0;if(!e){e=a[u>>2]|0;e=as(l,e,n,n+(Q5[a[e+28>>2]&127](e,n)|0)|0)|0;if(!e){e=1;break A}}e=qs(A,e)|0;ns(l);if((e|0)!=18)break A;a[w>>2]=a[o>>2];e=18;break A}}}while(0);if((e|0)!=0|(i|0)!=0){ns(A+436|0);e=0}else e=0}else e=n?31:30}while(0);k=h;return e|0}function as(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;do{if(!(ws(A,e,i,f)|0))e=0;else{i=A+12|0;e=a[i>>2]|0;if((e|0)==(a[A+8>>2]|0)){if(!((os(A)|0)<<24>>24)){e=0;break}e=a[i>>2]|0}a[i>>2]=e+1;r[e>>0]=0;e=a[A+16>>2]|0}}while(0);return e|0}function ns(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;r=A+4|0;e=a[r>>2]|0;A:do{if(!e){a[r>>2]=a[A>>2];e=A}else{i=a[A>>2]|0;while(1){if(!i){e=A;break A}n=a[i>>2]|0;a[i>>2]=e;a[r>>2]=i;f=i;i=n;e=f}}}while(0);a[e>>2]=0;a[A+16>>2]=0;a[A+12>>2]=0;a[A+8>>2]=0;return}function ls(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0;C=e+8|0;A:do{if(!(a[C>>2]|0))if(f){r[e+4>>0]=6;a[C>>2]=64;l=e+16|0;t=m5[a[a[l>>2]>>2]&63](256)|0;a[e>>2]=t;if(!t){a[C>>2]=0;l=0;break}else{Y6(t|0,0,256)|0;c=Ks(A,i)|0;c=(a[C>>2]|0)+-1&c;t=e;k=27;break}}else l=0;else{E=Ks(A,i)|0;s=a[C>>2]|0;c=s+-1|0;b=a[e>>2]|0;u=E&0-s;v=e+4|0;w=c>>>2;t=0;c=c&E;while(1){l=a[b+(c<<2)>>2]|0;if(!l)break;if((_s(i,a[l>>2]|0)|0)<<24>>24)break A;if(!(t<<24>>24))l=(u>>>((n[v>>0]|0)+-1|0)&w|1)&255;else l=t;g=l&255;t=l;c=c-g+(c>>>0 >>0?s:0)|0}if(f){t=r[v>>0]|0;l=t&255;if(!((a[e+12>>2]|0)>>>(l+-1|0))){l=e+16|0;t=e;k=27;break}h=l+1&255;c=t+1&255;B=1< >2]>>2]&63](t)|0;if(g){Y6(g|0,0,t|0)|0;o=0-B|0;w=c+-1|0;k=d>>>2;u=0;while(1){if(u>>>0>=(a[C>>2]|0)>>>0)break;t=a[(a[e>>2]|0)+(u<<2)>>2]|0;if(t|0){t=Ks(A,a[t>>2]|0)|0;s=((t&o)>>>w&k|1)&255;t=t&d;c=0;while(1){b=g+(t<<2)|0;if(!(a[b>>2]|0))break;b=c<<24>>24==0?s:c;I=b&255;t=t+(t>>>0>>0?B:0)-I|0;c=b}a[b>>2]=a[(a[e>>2]|0)+(u<<2)>>2]}u=u+1|0}F5[a[(a[l>>2]|0)+8>>2]&127](a[e>>2]|0);a[e>>2]=g;r[v>>0]=h;a[C>>2]=B;s=((E&o)>>>w&k|1)&255;t=d&E;c=0;while(1){if(!(a[g+(t<<2)>>2]|0)){c=t;t=e;k=27;break A}I=c<<24>>24==0?s:c;C=I&255;t=t+(t>>>0 >>0?B:0)-C|0;c=I}}else l=0}else l=0}}while(0);if((k|0)==27){l=m5[a[a[l>>2]>>2]&63](f)|0;a[(a[t>>2]|0)+(c<<2)>>2]=l;l=a[(a[t>>2]|0)+(c<<2)>>2]|0;if(!l)l=0;else{Y6(l|0,0,f|0)|0;a[a[(a[t>>2]|0)+(c<<2)>>2]>>2]=i;l=e+12|0;a[l>>2]=(a[l>>2]|0)+1;l=a[(a[t>>2]|0)+(c<<2)>>2]|0}}return l|0}function ts(A){A=A|0;var e=0,i=0,f=0;f=A;e=A;while(1){i=r[f>>0]|0;if(!(i<<24>>24))break;switch(i<<24>>24|0){case 10:case 13:case 32:{if((e|0)!=(A|0)){if((r[e+-1>>0]|0)!=32){r[e>>0]=32;e=e+1|0}}else e=A;break}default:{r[e>>0]=i;e=e+1|0}}f=f+1|0}if((e|0)!=(A|0)){A=e+-1|0;A=(r[A>>0]|0)==32?A:e}r[A>>0]=0;return}function cs(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;e=Ls(A,0,a[A+144>>2]|0,e,i,f,(r[A+480>>0]|0)==0&1)|0;if((e|0)==0?(Js(A)|0)<<24>>24==0:0)e=1;return e|0}function ss(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0;n=a[A+352>>2]|0;e=as(n+80|0,e,i,r)|0;do{if((e|0)!=0?(f=ls(A,n+20|0,e,24)|0,(f|0)!=0):0)if((a[f>>2]|0)==(e|0)){a[n+96>>2]=a[n+92>>2];if(!(Ns(A,f)|0)){f=0;break}}else a[n+92>>2]=a[n+96>>2];else f=0}while(0);return f|0}function bs(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;u=a[A+352>>2]|0;s=u+80|0;w=u+92|0;l=a[w>>2]|0;b=u+88|0;if((l|0)==(a[b>>2]|0))if(!((os(s)|0)<<24>>24))n=0;else{l=a[w>>2]|0;t=4}else t=4;A:do{if((t|0)==4){a[w>>2]=l+1;r[l>>0]=0;e=as(s,e,i,f)|0;if((e|0)!=0?(c=e+1|0,n=ls(A,u+40|0,c,12)|0,(n|0)!=0):0){if((a[n>>2]|0)!=(c|0)){a[w>>2]=a[u+96>>2];break}l=a[w>>2]|0;t=u+96|0;a[t>>2]=l;if(r[A+232>>0]|0){i=r[c>>0]|0;e:do{if(i<<24>>24==120)if((((r[e+2>>0]|0)==109?(r[e+3>>0]|0)==108:0)?(r[e+4>>0]|0)==110:0)?(r[e+5>>0]|0)==115:0){switch(r[e+6>>0]|0){case 0:{l=u+152|0;break}case 58:{l=ls(A,u+60|0,e+7|0,8)|0;break}default:{f=0;e=120;break e}}a[n+4>>2]=l;r[n+9>>0]=1;break A}else{f=0;e=120}else{f=0;e=i}}while(0);e:while(1){switch(e<<24>>24){case 0:break A;case 58:{i=0;break e}default:{}}e=f+1|0;f=e;e=r[c+e>>0]|0}while(1){e=(l|0)==(a[b>>2]|0);if((i|0)>=(f|0))break;if(e){if(!((os(s)|0)<<24>>24)){n=0;break A}l=a[w>>2]|0}e=r[c+i>>0]|0;a[w>>2]=l+1;r[l>>0]=e;i=i+1|0;l=a[w>>2]|0}if(e){if(!((os(s)|0)<<24>>24)){n=0;break}l=a[w>>2]|0}a[w>>2]=l+1;r[l>>0]=0;l=ls(A,u+60|0,a[t>>2]|0,8)|0;a[n+4>>2]=l;if(l){e=a[t>>2]|0;if((a[l>>2]|0)==(e|0)){a[t>>2]=a[w>>2];break}else{a[w>>2]=e;break}}else n=0}}else n=0}}while(0);return n|0}function us(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0;n=A+12|0;l=A+8|0;while(1){i=r[e>>0]|0;if(!(i<<24>>24)){t=7;break}f=a[n>>2]|0;if((f|0)==(a[l>>2]|0)){if(!((os(A)|0)<<24>>24)){e=0;break}f=a[n>>2]|0;i=r[e>>0]|0}a[n>>2]=f+1;r[f>>0]=i;e=e+1|0}if((t|0)==7)e=a[A+16>>2]|0;return e|0}function ws(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0;t=k;k=k+16|0;l=t;a[l>>2]=i;n=A+12|0;if((a[n>>2]|0)==0?(os(A)|0)<<24>>24==0:0)i=0;else f=3;A:do{if((f|0)==3){i=e+56|0;f=A+8|0;while(1){if((z5[a[i>>2]&127](e,l,r,n,a[f>>2]|0)|0)>>>0<2)break;if(!((os(A)|0)<<24>>24)){i=0;break A}}i=a[A+16>>2]|0}}while(0);k=t;return i|0}function ks(A,e,i,f,n,l){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;var t=0,c=0,s=0,b=0,u=0,w=0;t=f<<24>>24==0;w=A+12|0;u=a[w>>2]|0;A:do{if(!(t&(n|0)==0)){c=A+20|0;f=0;while(1){if((f|0)>=(u|0))break;if((a[(a[c>>2]|0)+(f*12|0)>>2]|0)==(e|0)){f=1;break A}else f=f+1|0}if((!t?(s=A+8|0,(a[s>>2]|0)==0):0)?(r[e+9>>0]|0)==0:0){a[s>>2]=e;b=9}else b=9}else b=9}while(0);A:do{if((b|0)==9){c=A+16|0;do{if((u|0)==(a[c>>2]|0))if(!u){a[c>>2]=8;f=m5[a[l+12>>2]&63](96)|0;a[A+20>>2]=f;if(f|0)break;a[c>>2]=0;f=0;break A}else{t=A+20|0;f=Q5[a[l+16>>2]&127](a[t>>2]|0,u*24|0)|0;if(!f){f=0;break A}a[c>>2]=u<<1;a[t>>2]=f;break}else f=a[A+20>>2]|0}while(0);l=a[w>>2]|0;a[f+(l*12|0)>>2]=e;a[f+(l*12|0)+8>>2]=n;r[f+(l*12|0)+4>>0]=i;if(!(i<<24>>24))r[e+8>>0]=1;a[w>>2]=(a[w>>2]|0)+1;f=1}}while(0);return f|0}function os(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;e=A+4|0;r=a[e>>2]|0;do{if(r){f=A+16|0;n=a[f>>2]|0;if(!n){a[A>>2]=r;a[e>>2]=a[r>>2];a[r>>2]=0;b=a[A>>2]|0;e=b+8|0;a[f>>2]=e;a[A+8>>2]=(a[b+4>>2]|0)+(b+8);a[A+12>>2]=e;e=1;break}i=A+8|0;if(((a[i>>2]|0)-n|0)<(a[r+4>>2]|0)){s=a[r>>2]|0;a[r>>2]=a[A>>2];b=a[e>>2]|0;a[A>>2]=b;a[e>>2]=s;e=a[f>>2]|0;W6(b+8|0,e|0,(a[i>>2]|0)-e|0)|0;e=a[A>>2]|0;b=A+12|0;a[b>>2]=(a[b>>2]|0)-(a[f>>2]|0)+(e+8);a[f>>2]=e+8;a[i>>2]=(a[e+4>>2]|0)+(e+8);e=1}else l=6}else l=6}while(0);A:do{if((l|0)==6){r=a[A>>2]|0;s=A+16|0;do{if(!r){t=s;e=a[s>>2]|0}else{c=a[s>>2]|0;e=c;if((c|0)!=(r+8|0)){t=s;break}f=A+8|0;n=(a[f>>2]|0)-e<<1;l=A+12|0;i=(a[l>>2]|0)-e|0;if((n|0)<0){e=0;break A}e=Os(n)|0;if(!e){e=0;break A}e=Q5[a[(a[A+20>>2]|0)+4>>2]&127](r,e)|0;if(!e){e=0;break A}a[A>>2]=e;a[e+4>>2]=n;e=a[A>>2]|0;a[l>>2]=e+8+i;a[s>>2]=e+8;a[f>>2]=e+8+n;e=1;break A}}while(0);c=A+8|0;e=(a[c>>2]|0)-e|0;if((e|0)>=0){if((e|0)>=1024){e=e<<1;if((e|0)<0){e=0;break}}else e=1024;i=Os(e)|0;if((i|0)!=0?(b=m5[a[a[A+20>>2]>>2]&63](i)|0,(b|0)!=0):0){a[b+4>>2]=e;a[b>>2]=a[A>>2];a[A>>2]=b;l=A+12|0;A=a[l>>2]|0;r=a[s>>2]|0;i=A;f=r;if((A|0)==(r|0)){n=b+8|0;r=f}else{n=b+8|0;W6(n|0,r|0,i-f|0)|0;r=a[t>>2]|0;i=a[l>>2]|0}a[l>>2]=b+8+(i-r);a[s>>2]=n;a[c>>2]=b+8+e;e=1}else e=0}else e=0}}while(0);return e|0}function hs(A,e,i,f,n,l){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;var t=0;A=Ss(A,e,i,f,n,l)|0;do{if(!A){e=l+12|0;A=a[e>>2]|0;if((i<<24>>24==0?(a[l+16>>2]|0)!=(A|0):0)?(t=A+-1|0,(r[t>>0]|0)==32):0){a[e>>2]=t;A=t}if((A|0)==(a[l+8>>2]|0)){if(!((os(l)|0)<<24>>24)){A=1;break}A=a[e>>2]|0}a[e>>2]=A+1;r[A>>0]=0;A=0}}while(0);return A|0}function ds(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0;D=k;k=k+16|0;Q=D;L=D+4|0;n=a[A+352>>2]|0;y=n+104|0;z=A+272|0;W=a[z>>2]|0;a[z>>2]=1;if((a[y>>2]|0)==0?(os(y)|0)<<24>>24==0:0)n=1;else{u=e+20|0;w=A+484|0;o=A+144|0;h=A+412|0;d=e+64|0;B=n+132|0;g=A+428|0;v=A+424|0;E=A+224|0;C=A+112|0;b=n+130|0;I=n+128|0;Z=n+131|0;G=A+116|0;m=n+112|0;c=n+116|0;s=e+40|0;A:while(1){e:do{switch(W5[a[u>>2]&127](e,i,f,Q)|0){case-4:{n=0;break A}case-1:{Y=37;break A}case 0:{Y=39;break A}case 28:{if((r[w>>0]|0)==0?(a[o>>2]|0)==(e|0):0){Y=19;break A}n=a[d>>2]|0;n=as(h,e,i+n|0,(a[Q>>2]|0)+(0-n)|0)|0;if(!n){n=1;break A}l=ls(A,B,n,0)|0;a[v>>2]=a[g>>2];if(!l){Y=9;break A}t=l+32|0;if(r[t>>0]|0){Y=11;break A}n=l+16|0;if(!(a[n>>2]|0)){r[t>>0]=1;n=a[l+4>>2]|0;n=ds(A,a[E>>2]|0,n,n+(a[l+8>>2]|0)|0)|0;r[t>>0]=0;if(!n)break e;else break A}if(a[C>>2]|0){r[Z>>0]=0;r[t>>0]=1;l=(z5[a[C>>2]&127](a[G>>2]|0,0,a[l+20>>2]|0,a[n>>2]|0,a[l+24>>2]|0)|0)==0;r[t>>0]=0;if(l){n=21;break A}if(r[Z>>0]|0)break e}r[I>>0]=r[b>>0]|0;break}case 6:case 9:{if(!(ws(y,e,i,a[Q>>2]|0)|0)){n=1;break A}break}case-3:{a[Q>>2]=i+(a[d>>2]|0);Y=22;break}case 7:{Y=22;break}case 10:{n=Q5[a[s>>2]&127](e,i)|0;if((n|0)<0){Y=27;break A}l=db(n,L)|0;i=0;while(1){if((i|0)>=(l|0))break;n=a[c>>2]|0;if((a[m>>2]|0)==(n|0)){if(!((os(y)|0)<<24>>24)){n=1;Y=35;break A}n=a[c>>2]|0}t=r[L+i>>0]|0;a[c>>2]=n+1;r[n>>0]=t;i=i+1|0}break}default:{Y=41;break A}}}while(0);if((Y|0)==22){Y=0;n=a[c>>2]|0;if((a[m>>2]|0)==(n|0)){if(!((os(y)|0)<<24>>24)){n=1;break}n=a[c>>2]|0}a[c>>2]=n+1;r[n>>0]=10}i=a[Q>>2]|0}if((Y|0)==9){r[I>>0]=r[b>>0]|0;n=0}else if((Y|0)==11)if((a[o>>2]|0)==(e|0)){a[A+284>>2]=i;n=12}else n=12;else if((Y|0)==19){a[A+284>>2]=i;n=10}else if((Y|0)==27)if((a[o>>2]|0)==(e|0)){a[A+284>>2]=i;n=14;Y=35}else{n=14;Y=35}else if((Y|0)==37)if((a[o>>2]|0)==(e|0)){a[A+284>>2]=i;n=4}else n=4;else if((Y|0)==39)if((a[o>>2]|0)==(e|0)){a[A+284>>2]=a[Q>>2];n=4}else n=4;else if((Y|0)==41)if((a[o>>2]|0)==(e|0)){a[A+284>>2]=i;n=23}else n=23;a[z>>2]=W}k=D;return n|0}function Bs(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;o=k;k=k+16|0;u=o;w=o+4|0;a[u>>2]=i;if(!(r[e+68>>0]|0)){if((a[A+144>>2]|0)==(e|0)){n=A+288|0;l=A+284|0}else{l=a[A+296>>2]|0;n=l+4|0}t=A+44|0;c=e+56|0;s=A+48|0;b=A+80|0;i=A+4|0;do{a[w>>2]=a[t>>2];A=z5[a[c>>2]&127](e,u,f,w,a[s>>2]|0)|0;a[n>>2]=a[u>>2];h=a[t>>2]|0;J5[a[b>>2]&127](a[i>>2]|0,h,(a[w>>2]|0)-h|0);a[l>>2]=a[u>>2]}while(A>>>0>1)}else J5[a[A+80>>2]&127](a[A+4>>2]|0,i,f-i|0);k=o;return}function gs(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0,b=0,u=0;b=k;k=k+16|0;c=b;s=a[i>>2]|0;if((a[A+144>>2]|0)==(e|0)){t=A+284|0;a[t>>2]=s;l=A+288|0}else{t=a[A+296>>2]|0;l=t+4|0}a[t>>2]=s;a[i>>2]=0;u=W5[a[e+12>>2]&127](e,s,r,c)|0;r=a[c>>2]|0;a[l>>2]=r;switch(u|0){case 42:{if(a[A+80>>2]|0){Bs(A,e,s,r);r=a[c>>2]|0}a[i>>2]=r;a[f>>2]=r;r=(a[A+476>>2]|0)==2?35:0;break}case 0:{a[t>>2]=r;r=4;break}case-2:{if(!(n<<24>>24))r=6;else{a[f>>2]=s;r=0}break}case-4:case-1:{if(!(n<<24>>24))r=2;else{a[f>>2]=s;r=0}break}default:{a[t>>2]=r;r=23}}k=b;return r|0}function vs(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0;l=k;k=k+16|0;n=l;a[n>>2]=e;e=gs(A,a[A+144>>2]|0,n,i,f,(r[A+480>>0]|0)==0&1)|0;n=a[n>>2]|0;if(!((e|0)!=0|(n|0)==0)){a[A+276>>2]=57;e=is(A,n,i,f)|0}k=l;return e|0}function Es(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0;t=a[A+352>>2]|0;c=t+184|0;if(!(a[c>>2]|0)){e=m5[a[A+12>>2]&63](a[A+464>>2]<<2)|0;a[c>>2]=e;if(!e)e=-1;else{a[e>>2]=0;i=4}}else i=4;do{if((i|0)==4){l=t+176|0;e=a[l>>2]|0;n=t+172|0;i=a[n>>2]|0;f=t+164|0;r=a[f>>2]|0;if(e>>>0>>0)n=r;else{if(!r){e=m5[a[A+12>>2]&63](896)|0;if(!e){e=-1;break}else{i=e;e=32}}else{e=Q5[a[A+16>>2]&127](r,i*56|0)|0;if(!e){e=-1;break}i=e;e=a[n>>2]<<1}a[n>>2]=e;a[f>>2]=i;e=a[l>>2]|0;n=i}a[l>>2]=e+1;i=a[t+180>>2]|0;if(i|0){A=a[(a[c>>2]|0)+(i+-1<<2)>>2]|0;f=n+(A*28|0)+16|0;i=a[f>>2]|0;if(i|0)a[n+(i*28|0)+24>>2]=e;i=n+(A*28|0)+20|0;r=a[i>>2]|0;if(!r)a[n+(A*28|0)+12>>2]=e;a[f>>2]=e;a[i>>2]=r+1}c=n+(e*28|0)+12|0;a[c>>2]=0;a[c+4>>2]=0;a[c+8>>2]=0;a[c+12>>2]=0}}while(0);return e|0}function Cs(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0;o=k;k=k+16|0;u=o;w=A+300|0;f=a[w>>2]|0;if(!f){f=m5[a[A+12>>2]&63](24)|0;if(!f)f=1;else{b=f;n=4}}else{a[w>>2]=a[f+8>>2];b=f;n=4}do{if((n|0)==4){l=e+32|0;r[l>>0]=1;t=e+12|0;a[t>>2]=0;c=A+296|0;s=b+8|0;a[s>>2]=a[c>>2];a[c>>2]=b;a[b+12>>2]=e;f=A+308|0;a[b+16>>2]=a[f>>2];r[b+20>>0]=i;a[b>>2]=0;a[b+4>>2]=0;n=a[e+4>>2]|0;i=n+(a[e+8>>2]|0)|0;a[u>>2]=n;if(!(r[e+33>>0]|0))f=Ls(A,a[f>>2]|0,a[A+224>>2]|0,n,i,u,0)|0;else{e=A+224|0;f=a[e>>2]|0;f=W5[a[f>>2]&127](f,n,i,u)|0;f=rs(A,a[e>>2]|0,n,i,f,a[u>>2]|0,u,0)|0}if(!f){f=a[u>>2]|0;if((i|0)!=(f|0)?(a[A+476>>2]|0)==3:0){a[t>>2]=f-n;a[A+276>>2]=60;f=0;break}r[l>>0]=0;a[c>>2]=a[s>>2];a[s>>2]=a[w>>2];a[w>>2]=b;f=0}}}while(0);k=o;return f|0}function Is(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;n=k;k=k+16|0;i=n+4|0;r=n;e=a[A+352>>2]|0;f=e+176|0;e=m5[a[A+12>>2]&63](((a[f>>2]|0)*20|0)+(a[e+168>>2]|0)|0)|0;if(!e)e=0;else{a[r>>2]=e+((a[f>>2]|0)*20|0);a[i>>2]=e+20;Qs(A,0,e,i,r)}k=n;return e|0}function Zs(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0;c=A+64|0;if(!(a[c>>2]|0))if(!(a[A+80>>2]|0))i=1;else{Bs(A,e,i,r);i=1}else{l=e+64|0;n=i+(a[l>>2]<<1)|0;i=n+(Q5[a[e+28>>2]&127](e,n)|0)|0;f=A+412|0;n=as(f,e,n,i)|0;if((n|0)!=0?(a[A+428>>2]=a[A+424>>2],t=Q5[a[e+32>>2]&127](e,i)|0,t=as(f,e,t,r+(0-(a[l>>2]<<1))|0)|0,(t|0)!=0):0){ms(t);J5[a[c>>2]&127](a[A+4>>2]|0,n,t);ns(f);i=1}else i=0}return i|0}function Gs(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0;n=A+68|0;if(!(a[n>>2]|0))if(!(a[A+80>>2]|0))e=1;else{Bs(A,e,i,r);e=1}else{f=A+412|0;l=a[e+64>>2]|0;e=as(f,e,i+(l<<2)|0,r+(U(l,-3)|0)|0)|0;if(!e)e=0;else{ms(e);V5[a[n>>2]&63](a[A+4>>2]|0,e);ns(f);e=1}}return e|0}function ms(A){A=A|0;var e=0,i=0,f=0;A:while(1){switch(r[A>>0]|0){case 0:break A;case 13:{i=A;e=13;f=4;break A}default:{}}A=A+1|0}if((f|0)==4){while(1){if(e<<24>>24==13){r[i>>0]=10;f=A+1|0;A=(r[f>>0]|0)==10?A+2|0:f}else{r[i>>0]=e;A=A+1|0}i=i+1|0;e=r[A>>0]|0;if(!(e<<24>>24))break;else f=4}r[i>>0]=0}return}function Qs(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0;s=(a[A+352>>2]|0)+164|0;c=a[(a[s>>2]|0)+(e*28|0)>>2]|0;a[i>>2]=c;a[i+4>>2]=a[(a[s>>2]|0)+(e*28|0)+4>>2];if((c|0)==4){a[i+8>>2]=a[n>>2];e=a[(a[s>>2]|0)+(e*28|0)+8>>2]|0;while(1){c=r[e>>0]|0;s=a[n>>2]|0;a[n>>2]=s+1;r[s>>0]=c;if(!(r[e>>0]|0))break;else e=e+1|0}a[i+12>>2]=0;a[i+16>>2]=0}else{l=a[(a[s>>2]|0)+(e*28|0)+20>>2]|0;t=i+12|0;a[t>>2]=l;c=i+16|0;a[c>>2]=a[f>>2];a[f>>2]=(a[f>>2]|0)+(l*20|0);e=(a[s>>2]|0)+(e*28|0)+12|0;l=0;while(1){e=a[e>>2]|0;if(l>>>0>=(a[t>>2]|0)>>>0)break;Qs(A,e,(a[c>>2]|0)+(l*20|0)|0,f,n);e=(a[s>>2]|0)+(e*28|0)+24|0;l=l+1|0}a[i+8>>2]=0}return}function Ls(A,e,i,f,n,l,t){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;t=t|0;var c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,U=0,x=0,T=0,j=0,P=0,S=0,O=0,K=0,_=0,q=0,$=0,AA=0,eA=0,iA=0,rA=0,fA=0,aA=0,nA=0,lA=0,tA=0,cA=0,sA=0,bA=0,uA=0,wA=0;uA=k;k=k+48|0;cA=uA+28|0;fA=uA+32|0;sA=uA+24|0;_=uA;a[cA>>2]=f;q=a[A+352>>2]|0;if((a[A+144>>2]|0)==(i|0)){aA=A+284|0;K=A+288|0}else{K=a[A+296>>2]|0;aA=K;K=K+4|0}a[aA>>2]=f;g=i+4|0;nA=A+80|0;v=A+476|0;E=i+44|0;C=i+64|0;I=q+80|0;Z=q+96|0;G=q+92|0;m=q+129|0;Q=A+112|0;L=A+116|0;y=A+428|0;W=A+424|0;z=A+304|0;Y=A+120|0;lA=A+4|0;D=q+130|0;$=A+60|0;M=A+364|0;F=A+12|0;V=A+360|0;J=i+28|0;tA=A+308|0;AA=i+56|0;p=A+16|0;N=A+52|0;R=A+412|0;X=A+388|0;H=A+56|0;U=A+232|0;x=A+233|0;T=A+468|0;j=A+104|0;P=A+372|0;S=i+40|0;O=A+72|0;eA=i+68|0;iA=A+44|0;rA=A+48|0;A:while(1){B=a[cA>>2]|0;a[fA>>2]=B;B=W5[a[g>>2]&127](i,B,n,fA)|0;f=a[fA>>2]|0;a[K>>2]=f;s=f;e:do{switch(B|0){case-3:{bA=6;break A}case-4:{bA=15;break A}case 0:{bA=20;break A}case-1:{bA=21;break A}case-2:{bA=23;break A}case 12:{f=17;break A}case-5:{bA=134;break A}case 9:{B=a[C>>2]|0;B=(y5[a[E>>2]&63](i,(a[cA>>2]|0)+B|0,s+(0-B)|0)|0)&255;r[sA>>0]=B;do{if(B<<24>>24){f=a[$>>2]|0;if(f|0){J5[f&127](a[lA>>2]|0,sA,1);break}if(a[nA>>2]|0)Bs(A,i,a[cA>>2]|0,a[fA>>2]|0)}else{c=a[C>>2]|0;c=as(I,i,(a[cA>>2]|0)+c|0,(a[fA>>2]|0)+(0-c)|0)|0;if(!c){f=1;bA=56;break A}s=ls(A,q,c,0)|0;a[G>>2]=a[Z>>2];if((r[m>>0]|0)!=0?(r[D>>0]|0)==0:0){if(!s){f=a[Y>>2]|0;if(f|0){J5[f&127](a[lA>>2]|0,c,0);break}if(!(a[nA>>2]|0))break;Bs(A,i,a[cA>>2]|0,a[fA>>2]|0);break}}else{if(!s){f=11;bA=56;break A}if(!(r[s+34>>0]|0)){f=24;bA=56;break A}}f=s+32|0;if(r[f>>0]|0){f=12;bA=56;break A}if(a[s+28>>2]|0){f=15;bA=56;break A}if(!(a[s+4>>2]|0)){if(!(a[Q>>2]|0)){if(!(a[nA>>2]|0))break;Bs(A,i,a[cA>>2]|0,a[fA>>2]|0);break}r[f>>0]=1;c=Ws(A)|0;r[f>>0]=0;if(!c){f=1;bA=56;break A}if(!(z5[a[Q>>2]&127](a[L>>2]|0,c,a[s+20>>2]|0,a[s+16>>2]|0,a[s+24>>2]|0)|0)){f=21;bA=56;break A}a[W>>2]=a[y>>2];break}if(r[z>>0]|0){f=Cs(A,s,0)|0;if(!f)break;else{bA=58;break A}}f=a[Y>>2]|0;if(!f){if(a[nA>>2]|0)Bs(A,i,a[cA>>2]|0,a[fA>>2]|0)}else J5[f&127](a[lA>>2]|0,a[s>>2]|0,0);break e}}while(0);break}case 1:case 2:{f=a[M>>2]|0;if(!f){f=m5[a[F>>2]&63](48)|0;if(!f){f=1;bA=75;break A}c=m5[a[F>>2]&63](32)|0;a[f+36>>2]=c;if(!c){bA=63;break A}a[f+40>>2]=c+32}else a[M>>2]=a[f>>2];w=f+44|0;a[w>>2]=0;a[f>>2]=a[V>>2];a[V>>2]=f;B=f+12|0;a[f+16>>2]=0;a[f+20>>2]=0;d=(a[cA>>2]|0)+(a[C>>2]|0)|0;h=f+4|0;a[h>>2]=d;o=f+8|0;a[o>>2]=Q5[a[J>>2]&127](i,d)|0;a[tA>>2]=(a[tA>>2]|0)+1;h=a[h>>2]|0;o=h+(a[o>>2]|0)|0;a[_>>2]=h;h=f+36|0;a[sA>>2]=a[h>>2];d=f+40|0;c=a[d>>2]|0;while(1){wA=z5[a[AA>>2]&127](i,_,o,sA,c+-1|0)|0;c=a[sA>>2]|0;b=a[h>>2]|0;s=b;u=c-s|0;if((wA|0)==1?1:(a[_>>2]|0)>>>0>=o>>>0)break;s=(a[d>>2]|0)-s<<1;c=Q5[a[p>>2]&127](b,s)|0;if(!c){bA=69;break A}a[h>>2]=c;wA=c+s|0;a[d>>2]=wA;a[sA>>2]=c+u;c=wA}a[f+24>>2]=u;a[B>>2]=s;r[c>>0]=0;f=zs(A,i,a[cA>>2]|0,B,w)|0;if(f|0){bA=75;break A}f=a[N>>2]|0;if(!f){if(a[nA>>2]|0)Bs(A,i,a[cA>>2]|0,a[fA>>2]|0)}else J5[f&127](a[lA>>2]|0,a[B>>2]|0,a[X>>2]|0);ns(R);break}case 3:case 4:{wA=(a[cA>>2]|0)+(a[C>>2]|0)|0;a[sA>>2]=0;wA=as(R,i,wA,wA+(Q5[a[J>>2]&127](i,wA)|0)|0)|0;a[_>>2]=wA;if(!wA){f=1;bA=89;break A}a[y>>2]=a[W>>2];f=zs(A,i,a[cA>>2]|0,_,sA)|0;if(f|0){bA=79;break A}a[y>>2]=a[W>>2];f=a[N>>2]|0;if(!f)c=1;else{J5[f&127](a[lA>>2]|0,a[_>>2]|0,a[X>>2]|0);c=0}f=a[H>>2]|0;if(!f){if(c|0?a[nA>>2]|0:0)Bs(A,i,a[cA>>2]|0,a[fA>>2]|0)}else{if(a[N>>2]|0){a[aA>>2]=a[K>>2];f=a[H>>2]|0}V5[f&63](a[lA>>2]|0,a[_>>2]|0)}ns(R);Ys(A,a[sA>>2]|0);if((a[tA>>2]|0)==0?(a[v>>2]&-2|0)!=2:0){bA=92;break A}break}case 5:{if((a[tA>>2]|0)==(e|0)){f=13;break A}u=a[V>>2]|0;a[V>>2]=a[u>>2];a[u>>2]=a[M>>2];a[M>>2]=u;f=(a[cA>>2]|0)+(a[C>>2]<<1)|0;c=Q5[a[J>>2]&127](i,f)|0;if((c|0)!=(a[u+8>>2]|0)){bA=96;break A}if(F4(a[u+4>>2]|0,f,c)|0){bA=96;break A}a[tA>>2]=(a[tA>>2]|0)+-1;f=a[H>>2]|0;if(!f){if(a[nA>>2]|0)Bs(A,i,a[cA>>2]|0,a[fA>>2]|0)}else{c=a[u+16>>2]|0;b=u+12|0;if((c|0)!=0&(r[U>>0]|0)!=0){f=(a[b>>2]|0)+(a[u+28>>2]|0)|0;while(1){s=r[c>>0]|0;if(!(s<<24>>24))break;r[f>>0]=s;f=f+1|0;c=c+1|0}c=a[u+20>>2]|0;i:do{if((c|0)!=0&(r[x>>0]|0)!=0){r[f>>0]=r[T>>0]|0;while(1){f=f+1|0;s=r[c>>0]|0;if(!(s<<24>>24))break i;r[f>>0]=s;c=c+1|0}}}while(0);r[f>>0]=0;f=a[H>>2]|0}V5[f&63](a[lA>>2]|0,a[b>>2]|0)}s=u+44|0;while(1){b=a[s>>2]|0;if(!b)break;f=a[j>>2]|0;if(!f){f=b;c=b}else{V5[f&63](a[lA>>2]|0,a[a[b>>2]>>2]|0);f=b;c=a[s>>2]|0}a[s>>2]=a[c+4>>2];a[b+4>>2]=a[P>>2];a[P>>2]=b;a[(a[f>>2]|0)+4>>2]=a[b+8>>2]}if(!(a[tA>>2]|0)){bA=117;break A}break}case 10:{f=Q5[a[S>>2]&127](i,a[cA>>2]|0)|0;if((f|0)<0){f=14;break A}c=a[$>>2]|0;if(c|0){B=a[lA>>2]|0;wA=db(f,sA)|0;J5[c&127](B,sA,wA);break e}if(a[nA>>2]|0)Bs(A,i,a[cA>>2]|0,a[fA>>2]|0);break}case 7:{f=a[$>>2]|0;if(f|0){r[sA>>0]=10;J5[f&127](a[lA>>2]|0,sA,1);break e}if(a[nA>>2]|0)Bs(A,i,a[cA>>2]|0,s);break}case 8:{f=a[O>>2]|0;if(!f){if(a[nA>>2]|0)Bs(A,i,a[cA>>2]|0,s)}else F5[f&127](a[lA>>2]|0);f=Ms(A,i,fA,n,l,t)|0;if(f|0)break A;if(!(a[fA>>2]|0)){bA=133;break A}break}case 6:{c=a[$>>2]|0;if(!c){if(!(a[nA>>2]|0))break e;Bs(A,i,a[cA>>2]|0,s);break e}if(!(r[eA>>0]|0))f=s;else{wA=a[cA>>2]|0;J5[c&127](a[lA>>2]|0,wA,f-wA|0);break e}while(1){a[sA>>2]=a[iA>>2];wA=z5[a[AA>>2]&127](i,cA,f,sA,a[rA>>2]|0)|0;a[K>>2]=a[cA>>2];B=a[iA>>2]|0;J5[c&127](a[lA>>2]|0,B,(a[sA>>2]|0)-B|0);if(wA>>>0<2)break;a[aA>>2]=a[cA>>2];f=a[fA>>2]|0}break}case 11:{if(!(Zs(A,i,a[cA>>2]|0,s)|0)){f=1;break A}break}case 13:{if(!(Gs(A,i,a[cA>>2]|0,s)|0)){f=1;break A}break}default:if(a[nA>>2]|0)Bs(A,i,a[cA>>2]|0,s)}}while(0);wA=a[fA>>2]|0;a[cA>>2]=wA;a[aA>>2]=wA;switch(a[v>>2]|0){case 2:{f=35;break A}case 3:{bA=160;break A}default:{}}}switch(bA|0){case 6:{if(t<<24>>24){a[l>>2]=a[cA>>2];f=0;break}a[K>>2]=n;f=a[$>>2]|0;if(!f){if(a[nA>>2]|0)Bs(A,i,a[cA>>2]|0,n)}else{r[sA>>0]=10;J5[f&127](a[lA>>2]|0,sA,1)}if(e)if((a[tA>>2]|0)==(e|0)){a[l>>2]=n;f=0}else f=13;else f=3;break}case 15:{if(t<<24>>24){a[l>>2]=a[cA>>2];f=0;break}if((e|0)>0)if((a[tA>>2]|0)==(e|0)){a[l>>2]=a[cA>>2];f=0}else f=13;else f=3;break}case 20:{a[aA>>2]=f;f=4;break}case 21:{if(!(t<<24>>24))f=5;else{a[l>>2]=a[cA>>2];f=0}break}case 23:{if(!(t<<24>>24))f=6;else{a[l>>2]=a[cA>>2];f=0}break}case 56:break;case 58:break;case 63:{F5[a[A+20>>2]&127](f);f=1;bA=75;break}case 69:{f=1;bA=75;break}case 79:{Ys(A,a[sA>>2]|0);bA=89;break}case 92:{f=Ds(A,a[fA>>2]|0,n,l)|0;break}case 96:{a[aA>>2]=f;f=7;break}case 117:{f=Ds(A,a[fA>>2]|0,n,l)|0;break}case 133:{a[A+276>>2]=61;f=0;break}case 134:{if(t<<24>>24){a[l>>2]=a[cA>>2];f=0;break}f=a[$>>2]|0;do{if(!f){if(a[nA>>2]|0)Bs(A,i,a[cA>>2]|0,n)}else if(!(r[eA>>0]|0)){a[sA>>2]=a[iA>>2];z5[a[AA>>2]&127](i,cA,n,sA,a[rA>>2]|0)|0;wA=a[iA>>2]|0;J5[a[$>>2]&127](a[lA>>2]|0,wA,(a[sA>>2]|0)-wA|0);break}else{wA=a[cA>>2]|0;J5[f&127](a[lA>>2]|0,wA,n-wA|0);break}}while(0);if(!e){a[aA>>2]=n;f=3;break}if((a[tA>>2]|0)==(e|0)){a[l>>2]=n;f=0;break}else{a[aA>>2]=n;f=13;break}}case 160:{a[l>>2]=a[fA>>2];f=0;break}}k=uA;return f|0}function ys(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0;h=k;k=k+16|0;o=h;s=A+296|0;b=a[s>>2]|0;do{if(b){u=a[b+12>>2]|0;l=u+4|0;c=a[l>>2]|0;t=u+12|0;n=c+(a[t>>2]|0)|0;c=c+(a[u+8>>2]|0)|0;a[o>>2]=n;w=u+33|0;if(!(r[w>>0]|0))n=Ls(A,a[b+16>>2]|0,a[A+224>>2]|0,n,c,o,0)|0;else{B=A+224|0;d=a[B>>2]|0;d=W5[a[d>>2]&127](d,n,c,o)|0;n=rs(A,a[B>>2]|0,n,c,d,a[o>>2]|0,o,0)|0}if(!n){n=a[o>>2]|0;if((c|0)!=(n|0)?(a[A+476>>2]|0)==3:0){a[t>>2]=n-(a[l>>2]|0);n=0;break}r[u+32>>0]=0;B=b+8|0;a[s>>2]=a[B>>2];n=A+300|0;a[B>>2]=a[n>>2];a[n>>2]=b;n=A+276|0;if(!(r[w>>0]|0)){a[n>>2]=58;n=Ls(A,(a[A+472>>2]|0)!=0&1,a[A+144>>2]|0,e,i,f,(r[A+480>>0]|0)==0&1)|0;break}else{a[n>>2]=57;B=A+144|0;n=a[B>>2]|0;n=W5[a[n>>2]&127](n,e,i,o)|0;n=rs(A,a[B>>2]|0,e,i,n,a[o>>2]|0,f,(r[A+480>>0]|0)==0&1)|0;break}}}else n=23}while(0);k=h;return n|0}function Ws(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+16|0;u=h;b=a[A+352>>2]|0;l=b+156|0;w=A+412|0;o=A+424|0;A:do{if(!(a[l>>2]|0)){e=0;t=A+420|0;s=A+468|0;c=12}else{e=a[o>>2]|0;t=A+420|0;if((e|0)==(a[t>>2]|0)){if(!((os(w)|0)<<24>>24)){e=0;break}e=a[o>>2]|0}a[o>>2]=e+1;r[e>>0]=61;n=A+468|0;i=(a[(a[l>>2]|0)+20>>2]|0)+(((r[n>>0]|0)!=0)<<31>>31)|0;f=0;while(1){if((f|0)>=(i|0)){e=1;s=n;c=12;break A}e=a[o>>2]|0;if((e|0)==(a[t>>2]|0)){if(!((os(w)|0)<<24>>24)){e=0;break A}e=a[o>>2]|0}s=r[(a[(a[l>>2]|0)+16>>2]|0)+f>>0]|0;a[o>>2]=e+1;r[e>>0]=s;f=f+1|0}}}while(0);A:do{if((c|0)==12){Kc(u,b+60|0);e:while(1){do{i=_c(u)|0;if(!i)break e;l=i+4|0}while(!(a[l>>2]|0));if(e<<24>>24){e=a[o>>2]|0;if((e|0)==(a[t>>2]|0)){if(!((os(w)|0)<<24>>24)){e=0;break A}e=a[o>>2]|0}a[o>>2]=e+1;r[e>>0]=12}n=a[i>>2]|0;while(1){i=r[n>>0]|0;e=a[o>>2]|0;f=(e|0)==(a[t>>2]|0);if(!(i<<24>>24))break;if(f){if(!((os(w)|0)<<24>>24)){e=0;break A}e=a[o>>2]|0;i=r[n>>0]|0}a[o>>2]=e+1;r[e>>0]=i;n=n+1|0}if(f){if(!((os(w)|0)<<24>>24)){e=0;break A}e=a[o>>2]|0}a[o>>2]=e+1;r[e>>0]=61;f=(a[(a[l>>2]|0)+20>>2]|0)+(((r[s>>0]|0)!=0)<<31>>31)|0;i=0;while(1){if((i|0)>=(f|0)){e=1;continue e}e=a[o>>2]|0;if((e|0)==(a[t>>2]|0)){if(!((os(w)|0)<<24>>24)){e=0;break A}e=a[o>>2]|0}c=r[(a[(a[l>>2]|0)+16>>2]|0)+i>>0]|0;a[o>>2]=e+1;r[e>>0]=c;i=i+1|0}}Kc(u,b);e:while(1){do{i=_c(u)|0;if(!i)break e}while(!(r[i+32>>0]|0));if(e<<24>>24){e=a[o>>2]|0;if((e|0)==(a[t>>2]|0)){if(!((os(w)|0)<<24>>24)){e=0;break A}e=a[o>>2]|0}a[o>>2]=e+1;r[e>>0]=12}f=a[i>>2]|0;while(1){i=r[f>>0]|0;if(!(i<<24>>24)){e=1;continue e}e=a[o>>2]|0;if((e|0)==(a[t>>2]|0)){if(!((os(w)|0)<<24>>24)){e=0;break A}e=a[o>>2]|0;i=r[f>>0]|0}a[o>>2]=e+1;r[e>>0]=i;f=f+1|0}}e=a[o>>2]|0;if((e|0)==(a[t>>2]|0)){if(!((os(w)|0)<<24>>24)){e=0;break}e=a[o>>2]|0}a[o>>2]=e+1;r[e>>0]=0;e=a[A+428>>2]|0}}while(0);k=h;return e|0}function zs(A,e,i,f,l){A=A|0;e=e|0;i=i|0;f=f|0;l=l|0;var t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0;R=k;k=k+80|0;V=R+16|0;J=R;p=a[A+352>>2]|0;s=p+20|0;t=ls(A,s,a[f>>2]|0,0)|0;if(!t){t=ps(p+80|0,a[f>>2]|0)|0;if((t|0)!=0?(c=ls(A,s,t,24)|0,(c|0)!=0):0)if((r[A+232>>0]|0)!=0?(Ns(A,c)|0)==0:0)t=1;else m=6;else t=1}else{c=t;m=6}A:do{if((m|0)==6){I=a[c+12>>2]|0;s=e+36|0;b=A+376|0;g=A+388|0;v=W5[a[s>>2]&127](e,i,a[b>>2]|0,a[g>>2]|0)|0;t=v+I|0;u=a[b>>2]|0;if((t|0)>(u|0)){t=t+16|0;a[b>>2]=t;t=Q5[a[A+16>>2]&127](a[g>>2]|0,t<<4)|0;if(!t){a[b>>2]=u;t=1;break}a[g>>2]=t;if((v|0)>(u|0))W5[a[s>>2]&127](e,i,v,t)|0}F=a[g>>2]|0;d=e+28|0;D=A+412|0;M=A+428|0;C=c+20|0;h=A+424|0;B=0;o=0;s=0;while(1){if((o|0)>=(v|0))break;w=a[(a[g>>2]|0)+(o<<4)>>2]|0;w=bs(A,e,w,w+(Q5[a[d>>2]&127](e,w)|0)|0)|0;if(!w){t=1;break A}t=(a[w>>2]|0)+-1|0;if(r[t>>0]|0){m=15;break}r[t>>0]=1;i=B+1|0;a[F+(B<<2)>>2]=a[w>>2];u=a[g>>2]|0;if(r[u+(o<<4)+12>>0]|0){Y=as(D,e,a[u+(o<<4)+4>>2]|0,a[u+(o<<4)+8>>2]|0)|0;a[F+(i<<2)>>2]=Y;if(!Y){t=1;break A}}else{e:do{if(!(r[w+8>>0]|0))t=1;else{t=0;while(1){if((t|0)>=(I|0)){t=1;break e}b=a[C>>2]|0;if((w|0)==(a[b+(t*12|0)>>2]|0))break;t=t+1|0}t=r[b+(t*12|0)+4>>0]|0}}while(0);t=hs(A,e,t,a[u+(o<<4)+4>>2]|0,a[u+(o<<4)+8>>2]|0,D)|0;if(t|0)break A;a[F+(i<<2)>>2]=a[M>>2]}a[M>>2]=a[h>>2];t=a[w+4>>2]|0;do{if(t)if(r[w+9>>0]|0){t=Rs(A,t,w,a[F+(i<<2)>>2]|0,l)|0;if(!t){t=B;break}else break A}else{r[(a[w>>2]|0)+-1>>0]=2;s=s+1|0;t=B+2|0;break}else t=B+2|0}while(0);B=t;o=o+1|0}if((m|0)==15){if((a[A+144>>2]|0)!=(e|0)){t=8;break}a[A+284>>2]=a[(a[g>>2]|0)+(o<<4)>>2];t=8;break}a[A+380>>2]=B;t=a[c+8>>2]|0;e:do{if((t|0)!=0?(E=a[t>>2]|0,(r[E+-1>>0]|0)!=0):0){t=0;while(1){if((t|0)>=(B|0)){i=0;o=s;Y=B;break e}if((a[F+(t<<2)>>2]|0)==(E|0)){m=37;break e}t=t+2|0}}else{t=-1;m=37}}while(0);if((m|0)==37){a[A+384>>2]=t;i=0;o=s;Y=B}while(1){if((i|0)>=(I|0))break;t=a[C>>2]|0;u=t+(i*12|0)|0;s=a[u>>2]|0;b=(a[s>>2]|0)+-1|0;e:do{if((r[b>>0]|0)==0?(Z=t+(i*12|0)+8|0,G=a[Z>>2]|0,(G|0)!=0):0){t=a[s+4>>2]|0;do{if(t)if(r[s+9>>0]|0){t=Rs(A,t,s,G,l)|0;if(!t){t=o;s=Y;break e}else break A}else{r[b>>0]=2;t=o+1|0;break}else{r[b>>0]=1;t=o}}while(0);a[F+(Y<<2)>>2]=a[a[u>>2]>>2];a[F+(Y+1<<2)>>2]=a[Z>>2];s=Y+2|0}else{t=o;s=Y}}while(0);i=i+1|0;o=t;Y=s}a[F+(Y<<2)>>2]=0;e:do{if(!o)t=0;else{w=A+396|0;u=a[w>>2]|0;z=A+400|0;i=r[z>>0]|0;t=i&255;do{if(!(o<<1>>t)){t=1< >24}while((o>>(W&255)|0)!=0);t=(t&255)>3?t:3;r[z>>0]=t;t=t&255;b=A+392|0;s=Q5[a[A+16>>2]&127](a[b>>2]|0,12< >0]=i;t=1;break A}else{a[b>>2]=s;s=1< >2]|0)+(W*12|0)>>2]=-1;t=W}}}while(0);W=t+-1|0;a[w>>2]=W;C=p+40|0;I=A+424|0;Z=A+420|0;G=s+-1|0;m=0-s|0;Q=G>>>2;L=A+233|0;y=A+468|0;t=0;E=o;i:while(1){while(1){if((t|0)>=(Y|0))break e;e=F+(t<<2)|0;u=a[e>>2]|0;i=u+-1|0;if((r[i>>0]|0)==2)break;r[i>>0]=0;t=t+2|0}Xs(A,J);Hs(V,J);r[i>>0]=0;i=ls(A,C,u,0)|0;if(!i){t=1;break}i=a[i+4>>2]|0;if(!i){t=1;break}v=a[i+4>>2]|0;if(!v){t=27;break}h=v+20|0;d=v+16|0;o=0;while(1){i=a[h>>2]|0;w=a[d>>2]|0;if((o|0)>=(i|0))break;w=r[w+o>>0]|0;i=a[I>>2]|0;if((i|0)==(a[Z>>2]|0)){if(!((os(D)|0)<<24>>24)){t=1;break i}i=a[I>>2]|0}a[I>>2]=i+1;r[i>>0]=w;o=o+1|0}Us(V,w,i);do{g=u;u=u+1|0}while((r[g>>0]|0)!=58);Us(V,u,xs(u)|0);while(1){i=a[I>>2]|0;if((i|0)==(a[Z>>2]|0)){if(!((os(D)|0)<<24>>24)){t=1;break i}i=a[I>>2]|0}g=r[u>>0]|0;a[I>>2]=i+1;r[i>>0]=g;if(!(r[u>>0]|0))break;else u=u+1|0}g=Ts(V)|0;h=a[b>>2]|0;d=g&m;u=0;B=G&g;while(1){if((a[h+(B*12|0)>>2]|0)!=(W|0))break;if((a[h+(B*12|0)+4>>2]|0)==(g|0)){i=a[h+(B*12|0)+8>>2]|0;w=a[M>>2]|0;while(1){X=r[w>>0]|0;o=X<<24>>24==0;if(o|X<<24>>24!=(r[i>>0]|0))break;i=i+1|0;w=w+1|0}if(o){t=8;break i}}if(!(u<<24>>24))u=(d>>>((n[z>>0]|0)+-1|0)&Q|1)&255;X=u&255;B=B+((B|0)<(X|0)?s:0)-X|0}if(r[L>>0]|0){r[(a[I>>2]|0)+-1>>0]=r[y>>0]|0;i=a[a[v>>2]>>2]|0;while(1){u=a[I>>2]|0;if((u|0)==(a[Z>>2]|0)){if(!((os(D)|0)<<24>>24)){t=1;break i}u=a[I>>2]|0}X=r[i>>0]|0;a[I>>2]=u+1;r[u>>0]=X;if(!(r[i>>0]|0))break;else i=i+1|0}}X=a[M>>2]|0;a[M>>2]=a[I>>2];a[e>>2]=X;a[(a[b>>2]|0)+(B*12|0)>>2]=W;a[(a[b>>2]|0)+(B*12|0)+4>>2]=g;a[(a[b>>2]|0)+(B*12|0)+8>>2]=X;E=E+-1|0;t=t+2|0;if(!E)break e}break A}}while(0);while(1){if((t|0)>=(Y|0)){t=l;break}r[(a[F+(t<<2)>>2]|0)+-1>>0]=0;t=t+2|0}while(1){t=a[t>>2]|0;if(!t)break;r[(a[a[t+12>>2]>>2]|0)+-1>>0]=0;t=t+4|0}if(!(r[A+232>>0]|0))t=0;else{t=a[c+4>>2]|0;if(!t){t=a[p+156>>2]|0;if(!t){t=0;break}s=a[f>>2]|0}else{t=a[t+4>>2]|0;if(!t){t=27;break}c=a[f>>2]|0;while(1){s=c+1|0;if((r[c>>0]|0)==58)break;else c=s}}if((r[A+233>>0]|0)!=0?(N=a[a[t>>2]>>2]|0,(N|0)!=0):0){c=0;while(1){b=c+1|0;if(!(r[N+c>>0]|0))break;else c=b}}else b=0;a[f+4>>2]=s;o=t+20|0;a[f+16>>2]=a[o>>2];a[f+8>>2]=a[a[t>>2]>>2];a[f+20>>2]=b;h=0;while(1){d=h+1|0;if(!(r[s+h>>0]|0))break;else h=d}c=a[o>>2]|0;u=d+b+c|0;i=t+24|0;if((u|0)>(a[i>>2]|0)){c=u+24|0;w=m5[a[A+12>>2]&63](c)|0;if(!w){t=1;break}a[i>>2]=c;i=t+16|0;W6(w|0,a[i>>2]|0,a[o>>2]|0)|0;c=A+360|0;while(1){c=a[c>>2]|0;if(!c)break;u=c+12|0;if((a[u>>2]|0)==(a[i>>2]|0))a[u>>2]=w}F5[a[A+20>>2]&127](a[i>>2]|0);a[i>>2]=w;u=w;c=a[o>>2]|0}else{u=t+16|0;i=u;u=a[u>>2]|0}c=u+c|0;W6(c|0,s|0,d|0)|0;if(b|0){X=c+h|0;r[X>>0]=r[A+468>>0]|0;W6(X+1|0,a[a[t>>2]>>2]|0,b|0)|0}a[f>>2]=a[i>>2];t=0}}}while(0);k=R;return t|0}function Ys(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;r=A+104|0;f=A+372|0;i=A+4|0;while(1){if(!e)break;A=a[r>>2]|0;if(!A)A=e;else{V5[A&63](a[i>>2]|0,a[a[e>>2]>>2]|0);A=e}l=e+4|0;n=a[l>>2]|0;a[l>>2]=a[f>>2];a[f>>2]=e;a[(a[A>>2]|0)+4>>2]=a[e+8>>2];e=n}return}function Ds(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0;h=k;k=k+16|0;c=h;a[A+276>>2]=62;s=A+284|0;a[s>>2]=e;b=A+144|0;u=A+288|0;w=A+80|0;t=A+476|0;n=e;A:while(1){a[c>>2]=0;d=a[b>>2]|0;d=W5[a[d>>2]&127](d,n,i,c)|0;e=a[c>>2]|0;a[u>>2]=e;l=e;switch(d|0){case-15:{o=3;break A}case-4:{o=7;break A}case 0:{o=12;break A}case-1:{o=13;break A}case-2:{o=15;break A}case 15:{if(a[w>>2]|0)Bs(A,a[b>>2]|0,n,l);break}case 11:{if(!(Zs(A,a[b>>2]|0,n,l)|0)){e=1;break A}break}case 13:{if(!(Gs(A,a[b>>2]|0,n,l)|0)){e=1;break A}break}default:{e=9;break A}}e=a[c>>2]|0;a[s>>2]=e;switch(a[t>>2]|0){case 2:{e=35;break A}case 3:{o=18;break A}default:{}}n=e}do{if((o|0)==3){if(a[w>>2]|0){Bs(A,a[b>>2]|0,n,l);if((a[t>>2]|0)==2){e=35;break}e=a[c>>2]|0}a[f>>2]=e;e=0}else if((o|0)==7){a[f>>2]=n;e=0}else if((o|0)==12){a[s>>2]=e;e=4}else if((o|0)==13)if(!(r[A+480>>0]|0)){a[f>>2]=n;e=0}else e=5;else if((o|0)==15)if(!(r[A+480>>0]|0)){a[f>>2]=n;e=0}else e=6;else if((o|0)==18){a[f>>2]=e;e=0}}while(0);k=h;return e|0}function Ms(A,e,i,f,n,l){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;var t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0;Q=k;k=k+16|0;Z=Q+8|0;G=Q+4|0;I=Q;t=a[i>>2]|0;a[Z>>2]=t;if((a[A+144>>2]|0)==(e|0)){B=A+284|0;a[B>>2]=t;g=A+288|0}else{g=a[A+296>>2]|0;B=g;g=g+4|0}a[B>>2]=t;a[i>>2]=0;s=e+8|0;b=A+60|0;v=A+80|0;E=A+4|0;C=A+476|0;u=e+68|0;w=A+44|0;o=e+56|0;h=A+48|0;A:while(1){c=W5[a[s>>2]&127](e,a[Z>>2]|0,f,G)|0;t=a[G>>2]|0;a[g>>2]=t;d=t;e:do{switch(c|0){case 40:{m=6;break A}case 0:{m=23;break A}case-2:{m=24;break A}case-4:case-1:{m=26;break A}case 7:{t=a[b>>2]|0;if(t|0){r[I>>0]=10;J5[t&127](a[E>>2]|0,I,1);break e}if(a[v>>2]|0)Bs(A,e,a[Z>>2]|0,d);break}case 6:{c=a[b>>2]|0;if(!c){if(!(a[v>>2]|0))break e;Bs(A,e,a[Z>>2]|0,d);break e}if(!(r[u>>0]|0))t=d;else{d=a[Z>>2]|0;J5[c&127](a[E>>2]|0,d,t-d|0);break e}while(1){a[I>>2]=a[w>>2];d=z5[a[o>>2]&127](e,Z,t,I,a[h>>2]|0)|0;a[g>>2]=a[G>>2];t=a[w>>2]|0;J5[c&127](a[E>>2]|0,t,(a[I>>2]|0)-t|0);if(d>>>0<2)break;a[B>>2]=a[Z>>2];t=a[G>>2]|0}break}default:{m=28;break A}}}while(0);d=a[G>>2]|0;a[Z>>2]=d;a[B>>2]=d;switch(a[C>>2]|0){case 3:{m=30;break A}case 2:{t=35;break A}default:{}}}if((m|0)==6){t=a[A+76>>2]|0;if(!t){if(a[v>>2]|0)Bs(A,e,a[Z>>2]|0,d)}else F5[t&127](a[E>>2]|0);t=a[G>>2]|0;a[i>>2]=t;a[n>>2]=t;t=(a[C>>2]|0)==2?35:0}else if((m|0)==23){a[B>>2]=t;t=4}else if((m|0)==24)if(!(l<<24>>24))t=6;else{a[n>>2]=a[Z>>2];t=0}else if((m|0)==26)if(!(l<<24>>24))t=20;else{a[n>>2]=a[Z>>2];t=0}else if((m|0)==28){a[B>>2]=t;t=23}else if((m|0)==30){a[n>>2]=a[G>>2];t=0}k=Q;return t|0}function Fs(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0;l=k;k=k+16|0;n=l;a[n>>2]=e;e=Ms(A,a[A+144>>2]|0,n,i,f,(r[A+480>>0]|0)==0&1)|0;n=a[n>>2]|0;do{if(!((e|0)!=0|(n|0)==0)){e=A+276|0;if(!(a[A+472>>2]|0)){a[e>>2]=58;e=cs(A,n,i,f)|0;break}else{a[e>>2]=63;e=Vs(A,n,i,f)|0;break}}}while(0);k=l;return e|0}function Vs(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;e=Ls(A,1,a[A+144>>2]|0,e,i,f,(r[A+480>>0]|0)==0&1)|0;if((e|0)==0?(Js(A)|0)<<24>>24==0:0)e=1;return e|0}function Js(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;u=A+16|0;A=A+360|0;while(1){A=a[A>>2]|0;if(!A){A=1;break}t=(a[A+24>>2]|0)+1|0;c=A+36|0;f=a[c>>2]|0;r=f+t|0;b=A+4|0;i=a[b>>2]|0;if((i|0)==(r|0)){A=1;break}s=A+8|0;e=a[s>>2]|0;n=e+t|0;l=A+40|0;if((n|0)>((a[l>>2]|0)-f|0)){r=Q5[a[u>>2]&127](f,n)|0;if(!r){A=0;break}e=A+12|0;f=a[c>>2]|0;if((a[e>>2]|0)==(f|0))a[e>>2]=r;e=A+16|0;i=a[e>>2]|0;if(i|0)a[e>>2]=r+(i-f);a[c>>2]=r;a[l>>2]=r+n;r=r+t|0;i=a[b>>2]|0;e=a[s>>2]|0}W6(r|0,i|0,e|0)|0;a[b>>2]=r}return A|0}function ps(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0;f=A+12|0;n=A+8|0;while(1){i=a[f>>2]|0;if((i|0)==(a[n>>2]|0)){if(!((os(A)|0)<<24>>24)){e=0;break}i=a[f>>2]|0}t=r[e>>0]|0;a[f>>2]=i+1;r[i>>0]=t;if(!(r[e>>0]|0)){l=6;break}else e=e+1|0}if((l|0)==6){t=A+16|0;e=a[t>>2]|0;a[t>>2]=a[f>>2]}return e|0}function Ns(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;w=a[A+352>>2]|0;c=w+80|0;s=w+92|0;b=w+88|0;u=w+60|0;w=w+96|0;t=e+4|0;l=a[e>>2]|0;A:while(1){switch(r[l>>0]|0){case 0:{i=1;break A}case 58:{n=a[e>>2]|0;while(1){i=a[s>>2]|0;f=(i|0)==(a[b>>2]|0);if((n|0)==(l|0))break;if(f){if(!((os(c)|0)<<24>>24)){i=0;break A}i=a[s>>2]|0}f=r[n>>0]|0;a[s>>2]=i+1;r[i>>0]=f;n=n+1|0}if(f){if(!((os(c)|0)<<24>>24)){i=0;break A}i=a[s>>2]|0}a[s>>2]=i+1;r[i>>0]=0;i=ls(A,u,a[w>>2]|0,8)|0;if(!i){i=0;break A}f=a[w>>2]|0;if((a[i>>2]|0)==(f|0))a[w>>2]=a[s>>2];else a[s>>2]=f;a[t>>2]=i;break}default:{}}l=l+1|0}return i|0}function Rs(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0;s=r[f>>0]|0;t=a[e>>2]|0;l=(t|0)==0;do{if(!(s<<24>>24))if(l){u=0;c=11}else l=28;else if(((!l?(r[t>>0]|0)==120:0)?(r[t+1>>0]|0)==109:0)?(r[t+2>>0]|0)==108:0){l=r[t+3>>0]|0;if((l<<24>>24==110?(r[t+4>>0]|0)==115:0)?(r[t+5>>0]|0)==0:0){l=39;break}u=l<<24>>24==0&1;c=11}else{u=0;c=11}}while(0);A:do{if((c|0)==11){b=u<<24>>24!=0;l=1;t=1;w=0;while(1){c=t<<24>>24!=0;if(!(s<<24>>24))break;do{if(c){if((w|0)<=36?s<<24>>24==(r[142257+w>>0]|0):0)break;t=0}else t=0}while(0);do{if(!(b|l<<24>>24==0)){if((w|0)<=29?s<<24>>24==(r[142294+w>>0]|0):0)break;l=0}}while(0);s=w+1|0;w=s;s=r[f+s>>0]|0}if((u&255|0)!=(c&(w|0)==36&1|0)){l=b?38:40;break}if(!(l<<24>>24!=0&(w|0)==29)){k=A+468|0;w=w+((r[k>>0]|0)!=0&1)|0;l=A+372|0;c=a[l>>2]|0;do{if(!c){l=A+12|0;t=m5[a[l>>2]&63](28)|0;if(!t){l=1;break A}c=w+24|0;u=m5[a[l>>2]&63](c)|0;a[t+16>>2]=u;if(!u){F5[a[A+20>>2]&127](t);l=1;break A}else{a[t+24>>2]=c;c=t;break}}else{t=c+24|0;if((w|0)>(a[t>>2]|0)){s=c+16|0;b=w+24|0;u=Q5[a[A+16>>2]&127](a[s>>2]|0,b)|0;if(!u){l=1;break A}a[s>>2]=u;a[t>>2]=b}a[l>>2]=a[c+4>>2]}}while(0);a[c+20>>2]=w;t=c+16|0;W6(a[t>>2]|0,f|0,w|0)|0;l=r[k>>0]|0;if(l<<24>>24)r[(a[t>>2]|0)+(w+-1)>>0]=l;a[c>>2]=e;a[c+12>>2]=i;t=e+4|0;a[c+8>>2]=a[t>>2];if((r[f>>0]|0)==0?((a[A+352>>2]|0)+152|0)==(e|0):0)l=0;else l=c;a[t>>2]=l;a[c+4>>2]=a[n>>2];a[n>>2]=c;if((i|0)!=0?(o=a[A+100>>2]|0,(o|0)!=0):0){J5[o&127](a[A+4>>2]|0,a[e>>2]|0,a[t>>2]|0?f:0);l=0}else l=0}else l=40}}while(0);return l|0}function Xs(A,e){A=A|0;e=e|0;var i=0;i=e;a[i>>2]=0;a[i+4>>2]=0;e=e+8|0;a[e>>2]=Ps(A)|0;a[e+4>>2]=0;return}function Hs(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;i=e;n=a[i+4>>2]^1936682341;r=A;a[r>>2]=a[i>>2]^1886610805;a[r+4>>2]=n;r=e+8|0;n=r;i=a[n+4>>2]^1685025377;f=A+8|0;a[f>>2]=a[n>>2]^1852075885;a[f+4>>2]=i;f=e;e=a[f+4>>2]^1819895653;i=A+16|0;a[i>>2]=a[f>>2]^1852142177;a[i+4>>2]=e;i=a[r+4>>2]^1952801890;e=A+24|0;a[e>>2]=a[r>>2]^2037671283;a[e+4>>2]=i;a[A+40>>2]=A+32;e=A+48|0;a[e>>2]=0;a[e+4>>2]=0;return}function Us(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0;w=e+i|0;k=A+40|0;o=A+40|0;h=A+32|0;d=A+33|0;B=A+34|0;g=A+35|0;l=A+36|0;t=A+37|0;c=A+38|0;s=A+39|0;b=A+24|0;u=A+48|0;i=e;do{while(1){f=a[k>>2]|0;if(i>>>0>=w>>>0){e=0;break}if(f>>>0>=o>>>0){e=1;break}e=r[i>>0]|0;a[k>>2]=f+1;r[f>>0]=e;i=i+1|0}if(f>>>0 >>0)break;G=n[h>>0]|0;m=G6(n[d>>0]|0|0,0,8)|0;f=L;Z=G6(n[B>>0]|0|0,0,16)|0;f=f|L;C=G6(n[g>>0]|0|0,0,24)|0;f=f|L|(n[l>>0]|0);v=G6(n[t>>0]|0|0,0,40)|0;f=f|L;I=G6(n[c>>0]|0|0,0,48)|0;f=f|L;E=G6(n[s>>0]|0|0,0,56)|0;E=m|G|Z|C|v|I|E;f=f|L;I=b;v=f^a[I+4>>2];C=b;a[C>>2]=E^a[I>>2];a[C+4>>2]=v;js(A,2);C=A;f=a[C+4>>2]^f;v=A;a[v>>2]=a[C>>2]^E;a[v+4>>2]=f;a[k>>2]=h;v=u;v=d6(a[v>>2]|0,a[v+4>>2]|0,8,0)|0;f=u;a[f>>2]=v;a[f+4>>2]=L}while(e);return}function xs(A){A=A|0;var e=0;e=0;while(1){if(!(r[A>>0]|0))break;e=e+1|0;A=A+1|0}return e|0}function Ts(A){A=A|0;var e=0,i=0,r=0,f=0,l=0,t=0;r=A+32|0;l=(a[A+40>>2]|0)-r|0;i=A+48|0;i=d6(a[i>>2]|0,a[i+4>>2]|0,l|0,0)|0;i=G6(i|0,L|0,56)|0;e=L;switch(l<<24>>24|0){case 7:{i=G6(n[A+38>>0]|0|0,0,48)|0|i;e=L|e;f=3;break}case 6:{f=3;break}case 5:{f=4;break}case 4:{f=5;break}case 3:{f=6;break}case 2:{f=7;break}case 1:{f=8;break}default:{}}if((f|0)==3){l=G6(n[A+37>>0]|0|0,0,40)|0;i=l|i;e=L|e;f=4}if((f|0)==4){e=n[A+36>>0]|0|e;f=5}if((f|0)==5){l=G6(n[A+35>>0]|0|0,0,24)|0;i=l|i;e=L|e;f=6}if((f|0)==6){l=G6(n[A+34>>0]|0|0,0,16)|0;i=l|i;e=L|e;f=7}if((f|0)==7){l=G6(n[A+33>>0]|0|0,0,8)|0;e=L|e;i=l|i;f=8}if((f|0)==8)i=i|(n[r>>0]|0);l=A+24|0;t=l;f=a[t+4>>2]^e;r=l;a[r>>2]=a[t>>2]^i;a[r+4>>2]=f;js(A,2);r=A;e=a[r+4>>2]^e;f=A;a[f>>2]=a[r>>2]^i;a[f+4>>2]=e;f=A+16|0;e=f;i=a[e+4>>2]|0;r=f;a[r>>2]=a[e>>2]^255;a[r+4>>2]=i;js(A,4);r=A;A=A+8|0;L=a[A+4>>2]^a[r+4>>2]^a[f+4>>2]^a[l+4>>2];return a[A>>2]^a[r>>2]^a[f>>2]^a[l>>2]|0}function js(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0;r=A+8|0;f=A+24|0;n=A+16|0;i=0;while(1){if((i|0)>=(e|0))break;l=r;w=a[l>>2]|0;l=a[l+4>>2]|0;k=A;k=d6(a[k>>2]|0,a[k+4>>2]|0,w|0,l|0)|0;s=L;u=G6(w|0,l|0,13)|0;b=L;l=Z6(w|0,l|0,51)|0;l=(u|l)^k;b=(b|L)^s;u=f;w=a[u>>2]|0;u=a[u+4>>2]|0;c=n;c=d6(a[c>>2]|0,a[c+4>>2]|0,w|0,u|0)|0;t=L;h=G6(w|0,u|0,16)|0;o=L;u=Z6(w|0,u|0,48)|0;u=(h|u)^c;o=(o|L)^t;k=d6(s|0,k|0,u|0,o|0)|0;s=L;h=A;a[h>>2]=k;a[h+4>>2]=s;h=G6(u|0,o|0,21)|0;w=L;o=Z6(u|0,o|0,43)|0;u=f;a[u>>2]=(h|o)^k;a[u+4>>2]=(w|L)^s;t=d6(c|0,t|0,l|0,b|0)|0;c=L;u=G6(l|0,b|0,17)|0;s=L;b=Z6(l|0,b|0,47)|0;l=r;a[l>>2]=(u|b)^t;a[l+4>>2]=(s|L)^c;l=n;a[l>>2]=c;a[l+4>>2]=t;i=i+1|0}return}function Ps(A){A=A|0;var e=0;while(1){e=a[A+472>>2]|0;if(!e)break;else A=e}return a[A+492>>2]|0}function Ss(A,e,i,f,n,l){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;var t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0;J=k;k=k+16|0;M=J;F=J+4|0;V=a[A+352>>2]|0;w=e+16|0;o=e+40|0;h=A+144|0;d=A+284|0;B=i<<24>>24==0;g=l+12|0;E=l+16|0;C=l+8|0;I=e+44|0;Z=e+64|0;G=A+436|0;m=A+452|0;Q=A+448|0;L=(V+80|0)==(l|0);y=A+268|0;W=V+130|0;z=V+129|0;Y=A+296|0;D=A+224|0;t=0;A:while(1){e:while(1){switch(W5[a[w>>2]&127](e,f,n,M)|0){case-4:{t=0;u=61;break A}case 0:{u=4;break A}case-1:{u=6;break A}case 6:{u=21;break e}case-3:{u=22;break e}case 7:case 39:{u=23;break e}case 10:{c=Q5[a[o>>2]&127](e,f)|0;i:do{if((c|0)<0)if((a[h>>2]|0)==(e|0)){a[d>>2]=f;c=1;t=14}else{c=1;t=14}else{if(B&(c|0)==32){s=a[g>>2]|0;if((a[E>>2]|0)==(s|0)){c=4;break}if((r[s+-1>>0]|0)==32){c=4;break}}b=db(c,F)|0;s=0;while(1){if((s|0)>=(b|0)){c=0;break i}c=a[g>>2]|0;if((c|0)==(a[C>>2]|0)){if(!((os(l)|0)<<24>>24)){c=1;t=1;break i}c=a[g>>2]|0}p=r[F+s>>0]|0;a[g>>2]=c+1;r[c>>0]=p;s=s+1|0}}}while(0);switch(c&7){case 4:case 0:break e;default:{}}break}case 9:{c=a[Z>>2]|0;c=(y5[a[I>>2]&63](e,f+c|0,(a[M>>2]|0)+(0-c)|0)|0)&255;if(c<<24>>24){u=31;break e}c=a[Z>>2]|0;c=as(G,e,f+c|0,(a[M>>2]|0)+(0-c)|0)|0;if(!c){t=1;u=61;break A}b=ls(A,V,c,0)|0;a[Q>>2]=a[m>>2];do{if(L){if(!(a[y>>2]|0))if(!b)break e;else break;if(!(r[W>>0]|0)){c=(b|0)!=0;if(!(r[z>>0]|0)){u=45;break}else{v=c;u=47;break}}else{c=(b|0)!=0;if(!(a[Y>>2]|0)){u=45;break}else{v=c;u=47;break}}}else if(!(r[z>>0]|0))if(!b){t=11;u=61;break A}else{u=46;break}else{c=(b|0)!=0;if(!(r[W>>0]|0)){v=c;u=47;break}else{u=45;break}}}while(0);if((u|0)==45)if(c)u=46;else{t=11;u=61;break A}else if((u|0)==47?(u=0,!v):0)break e;if((u|0)==46?(u=0,(r[b+34>>0]|0)==0):0){t=24;u=61;break A}s=b+32|0;if(r[s>>0]|0){u=49;break A}if(a[b+28>>2]|0){u=52;break A}c=a[b+4>>2]|0;if(!c){u=55;break A}b=c+(a[b+8>>2]|0)|0;r[s>>0]=1;b=Ss(A,a[D>>2]|0,i,c,b,l)|0;r[s>>0]=0;c=(b|0)==0;if(c)break e;else{c=(c^1)&1;t=b}break}default:{u=58;break A}}if(c)break A}if((u|0)==21){u=0;if(!(ws(l,e,f,a[M>>2]|0)|0)){t=1;u=61;break}}else if((u|0)==22){a[M>>2]=f+(a[Z>>2]|0);u=23}else if((u|0)==31){u=0;f=a[g>>2]|0;if((f|0)==(a[C>>2]|0)){if(!((os(l)|0)<<24>>24)){t=1;u=61;break}f=a[g>>2]|0}a[g>>2]=f+1;r[f>>0]=c}do{if((u|0)==23){u=0;f=a[g>>2]|0;if(B){if((a[E>>2]|0)==(f|0))break;if((r[f+-1>>0]|0)==32)break}if((f|0)==(a[C>>2]|0)){if(!((os(l)|0)<<24>>24)){t=1;u=61;break A}f=a[g>>2]|0}a[g>>2]=f+1;r[f>>0]=32}}while(0);f=a[M>>2]|0}if((u|0)==4)if((a[h>>2]|0)==(e|0)){a[d>>2]=a[M>>2];t=4;u=61}else{t=4;u=61}else if((u|0)==6)if((a[h>>2]|0)==(e|0)){a[d>>2]=f;t=4;u=61}else{t=4;u=61}else if((u|0)==49)if((a[h>>2]|0)==(e|0)){a[d>>2]=f;t=12;u=61}else{t=12;u=61}else if((u|0)==52)if((a[h>>2]|0)==(e|0)){a[d>>2]=f;t=15;u=61}else{t=15;u=61}else if((u|0)==55)if((a[h>>2]|0)==(e|0)){a[d>>2]=f;t=16;u=61}else{t=16;u=61}else if((u|0)==58)if((a[h>>2]|0)==(e|0)){a[d>>2]=f;t=23;u=61}else{t=23;u=61}k=J;return t|0}function Os(A){A=A|0;var e=0;e=A+8|0;return((A|0)<1?0:(e|0)>0?e:0)|0}function Ks(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=k;k=k+80|0;r=i+16|0;f=i;Xs(A,f);Hs(r,f);Us(r,e,xs(e)|0);e=Ts(r)|0;k=i;return e|0}function _s(A,e){A=A|0;e=e|0;var i=0;while(1){i=r[A>>0]|0;if(i<<24>>24!=(r[e>>0]|0)){e=0;break}if(!(i<<24>>24)){e=1;break}e=e+1|0;A=A+1|0}return e|0}function qs(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+1040|0;t=s;f=a[A+124>>2]|0;A:do{if(!f)i=18;else{i=0;while(1){if((i|0)==256)break;a[t+(i<<2)>>2]=-1;i=i+1|0}n=t+1028|0;a[n>>2]=0;c=t+1024|0;a[c>>2]=0;l=t+1032|0;a[l>>2]=0;do{if(y5[f&63](a[A+244>>2]|0,e,t)|0){f=a[A+12>>2]|0;i=Bb()|0;i=m5[f&63](i)|0;a[A+236>>2]=i;if(!i){i=a[l>>2]|0;if(!i)i=1;else{F5[i&127](a[c>>2]|0);i=1}}else{i=W5[(r[A+232>>0]<<24>>24?65:64)&127](i,t,a[n>>2]|0,a[c>>2]|0)|0;if(!i)break;a[A+240>>2]=a[c>>2];a[A+248>>2]=a[l>>2];a[A+144>>2]=i;i=0}break A}}while(0);i=a[l>>2]|0;if(i|0)F5[i&127](a[c>>2]|0);i=18}}while(0);k=s;return i|0}function $s(A,e){A=A|0;e=e|0;r[A+4>>0]=0;a[A+8>>2]=0;a[A+12>>2]=0;a[A>>2]=0;a[A+16>>2]=e;return}function Ab(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0;b=a[A+352>>2]|0;u=A+424|0;w=A+420|0;k=A+412|0;o=A+428|0;h=b+152|0;d=A+368|0;c=b+60|0;s=b+80|0;A:while(1){l=e;e:while(1){if(!(r[e>>0]|0)){e=1;break A}f=r[l>>0]|0;switch(f<<24>>24){case 0:case 12:{B=5;break e}case 61:break e;default:{}}i=a[u>>2]|0;if((i|0)==(a[w>>2]|0)){if(!((os(k)|0)<<24>>24)){e=0;break A}i=a[u>>2]|0;f=r[l>>0]|0}a[u>>2]=i+1;r[i>>0]=f;l=l+1|0}if((B|0)==5){B=0;e=a[u>>2]|0;if((e|0)==(a[w>>2]|0)){if(!((os(k)|0)<<24>>24)){e=0;break}e=a[u>>2]|0}a[u>>2]=e+1;r[e>>0]=0;e=ls(A,b,a[o>>2]|0,0)|0;if(e|0)r[e+32>>0]=1;e=(r[l>>0]|0)==0?l:l+1|0;a[u>>2]=a[o>>2];continue}e=a[u>>2]|0;if((a[o>>2]|0)==(e|0))f=h;else{if((e|0)==(a[w>>2]|0)){if(!((os(k)|0)<<24>>24)){e=0;break}e=a[u>>2]|0}a[u>>2]=e+1;r[e>>0]=0;f=ls(A,c,a[o>>2]|0,8)|0;if(!f){e=0;break}i=a[f>>2]|0;t=a[o>>2]|0;e=t;if((i|0)==(t|0)){t=ps(s,i)|0;a[f>>2]=t;if(!t){e=0;break}e=a[o>>2]|0}a[u>>2]=e}e:while(1){t=l+1|0;i=r[t>>0]|0;n=(e|0)==(a[w>>2]|0);switch(i<<24>>24){case 0:case 12:break e;default:{}}if(n){if(!((os(k)|0)<<24>>24)){e=0;break A}e=a[u>>2]|0;i=r[t>>0]|0}a[u>>2]=e+1;r[e>>0]=i;l=t;e=a[u>>2]|0}if(n){if(!((os(k)|0)<<24>>24)){e=0;break}e=a[u>>2]|0}a[u>>2]=e+1;r[e>>0]=0;if(Rs(A,f,0,a[o>>2]|0,d)|0){e=0;break}a[u>>2]=a[o>>2];e=(r[t>>0]|0)==0?t:l+2|0}return e|0}function eb(A,e){A=A|0;e=e|0;var i=0,r=0;if(A|0?(i=A+4|0,r=(a[i>>2]|0)==(a[A>>2]|0),a[A>>2]=e,r):0)a[i>>2]=e;return}function ib(A,e,i){A=A|0;e=e|0;i=i|0;if(A|0){a[A+52>>2]=e;a[A+56>>2]=i}return}function rb(A,e){A=A|0;e=e|0;if(A|0)a[A+60>>2]=e;return}function fb(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0;n=(A|0)==0;A:do{if(!(n|(i|0)<0)?!((e|0)==0&(i|0)!=0):0){l=A+476|0;switch(a[l>>2]|0){case 3:{a[A+280>>2]=33;n=0;break A}case 2:{a[A+280>>2]=36;n=0;break A}case 0:{if((a[A+472>>2]|0)==0?(ab(A)|0)<<24>>24==0:0){a[A+280>>2]=1;n=0;break A}break}default:{}}a[l>>2]=1;if(i|0){n=lb(A,i)|0;if(!n){n=0;break}W6(n|0,e|0,i|0)|0;n=tb(A,i,f)|0;break}r[A+480>>0]=f;if(!f)n=1;else{n=A+24|0;c=a[n>>2]|0;e=A+292|0;a[e>>2]=c;f=a[A+28>>2]|0;a[A+40>>2]=f;i=A+276|0;f=W5[a[i>>2]&127](A,c,f,n)|0;a[A+280>>2]=f;if(f|0){a[A+288>>2]=a[A+284>>2];a[i>>2]=66;n=0;break}switch(a[l>>2]|0){case 3:{c=a[A+144>>2]|0;N5[a[c+48>>2]&31](c,a[e>>2]|0,a[n>>2]|0,A+404|0);a[e>>2]=a[n>>2];n=2;break A}case 1:case 0:{a[l>>2]=2;n=1;break A}default:{n=1;break A}}}}else t=3}while(0);if((t|0)==3)if(n)n=0;else{a[A+280>>2]=41;n=0}return n|0}function ab(A){A=A|0;var e=0;e=A+492|0;if(!(a[e>>2]|0))a[e>>2]=cb()|0;if(!(r[A+232>>0]|0))A=1;else A=Ab(A,142324)|0;return A|0}function nb(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;return a[A+280>>2]|0}function lb(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0;A:do{if(!A)i=0;else{if((e|0)<0){a[A+280>>2]=1;i=0;break}switch(a[A+476>>2]|0){case 3:{a[A+280>>2]=33;i=0;break A}case 2:{a[A+280>>2]=36;i=0;break A}default:{u=A+32|0;c=a[u>>2]|0;w=A+28|0;r=a[w>>2]|0;i=r;if((c-r|0)>=(e|0))break A;o=A+24|0;s=a[o>>2]|0;t=r-s|0;r=t+e|0;if((r|0)<0){a[A+280>>2]=1;i=0;break A}b=A+8|0;f=a[b>>2]|0;h=f;n=s-h|0;l=(n|0)>1024;e=l?1024:n;r=e+r|0;do{if((r|0)>(c-h|0)){i=c-s|0;i=(i|0)==0?1024:i;do{i=i<<1}while((i|0)<(r|0)&(i|0)>0);if((i|0)<1){a[A+280>>2]=1;i=0;break A}r=m5[a[A+12>>2]&63](i)|0;if(!r){a[A+280>>2]=1;i=0;break A}a[u>>2]=r+i;i=a[o>>2]|0;if(!i){i=r+(a[w>>2]|0)|0;a[w>>2]=i;a[b>>2]=r;k=22;break}else{h=i;k=h-(a[b>>2]|0)|0;k=(k|0)<1024?k:1024;W6(r|0,i+(0-k)|0,(a[w>>2]|0)-h+k|0)|0;F5[a[A+20>>2]&127](a[b>>2]|0);a[b>>2]=r;i=r+((a[w>>2]|0)-(a[o>>2]|0))+k|0;a[w>>2]=i;r=r+k|0;k=22;break}}else if(l){r=n-e|0;z6(f|0,f+r|0,e+t|0)|0;r=0-r|0;i=(a[w>>2]|0)+r|0;a[w>>2]=i;r=(a[o>>2]|0)+r|0;k=22}}while(0);if((k|0)==22)a[o>>2]=r;a[A+288>>2]=0;a[A+284>>2]=0;a[A+292>>2]=0;break A}}}}while(0);return i|0}function tb(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0;A:do{if(!A)e=0;else{f=A+476|0;switch(a[f>>2]|0){case 3:{a[A+280>>2]=33;e=0;break A}case 2:{a[A+280>>2]=36;e=0;break A}case 0:{if((a[A+472>>2]|0)==0?(ab(A)|0)<<24>>24==0:0){a[A+280>>2]=1;e=0;break A}break}default:{}}a[f>>2]=1;n=A+24|0;c=a[n>>2]|0;l=A+292|0;a[l>>2]=c;s=A+28|0;t=(a[s>>2]|0)+e|0;a[s>>2]=t;a[A+40>>2]=t;s=A+36|0;a[s>>2]=(a[s>>2]|0)+e;r[A+480>>0]=i;e=A+276|0;t=W5[a[e>>2]&127](A,c,t,n)|0;a[A+280>>2]=t;if(t|0){a[A+288>>2]=a[A+284>>2];a[e>>2]=66;e=0;break}switch(a[f>>2]|0){case 3:{e=2;break}case 1:case 0:{if(!i)e=1;else{a[f>>2]=2;e=1;break A}break}default:e=1}s=a[A+144>>2]|0;N5[a[s+48>>2]&31](s,a[l>>2]|0,a[n>>2]|0,A+404|0);a[l>>2]=a[n>>2]}}while(0);return e|0}function cb(){var A=0,e=0,i=0;e=k;k=k+16|0;A=e;if(!(sb(A)|0)){i=ub()|0;i=(z3()|0)^i;a[A>>2]=i;A=bb(142378,U(i,2147483647)|0)|0}else A=bb(142365,a[A>>2]|0)|0;k=e;return A|0}function sb(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;f=k;k=k+16|0;r=S2(142365,0,f)|0;if((r|0)<0)e=0;else{e=0;while(1){n=W3(r,A+e|0,4-e|0)|0;i=n+e|0;if((n|0)>0)if(i>>>0<4)e=i;else{e=1;break}if((a[(N2()|0)>>2]|0)!=4){e=0;break}}P4(r)|0}k=f;return e|0}function bb(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;f=k;k=k+16|0;r=f;i=SA(142443)|0;if(i|0?(A1(i,142463)|0)==0:0){i=a[15712]|0;a[r>>2]=A;a[r+4>>2]=8;a[r+8>>2]=e;a[r+12>>2]=4;f3(i,142465,r)|0}k=f;return e|0}function ub(){var A=0,e=0;e=k;k=k+16|0;A=e;if(!(OA(A|0,0)|0)){k=e;return a[A+4>>2]|0}else gA(142390,142412,819,142423);return 0}function wb(A){A=A|0;if(!A)A=41;else A=a[A+280>>2]|0;return A|0}function kb(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;if(!A)A=0;else{e=A+284|0;i=a[e>>2]|0;if(i|0?(r=A+292|0,f=a[r>>2]|0,i>>>0>=f>>>0):0){n=a[A+144>>2]|0;N5[a[n+48>>2]&31](n,f,i,A+404|0);a[r>>2]=a[e>>2]}A=(a[A+404>>2]|0)+1|0}return A|0}function ob(A){A=A|0;do{switch(A|0){case 41:{A=142502;break}case 1:{A=143774;break}case 2:{A=143761;break}case 3:{A=143744;break}case 4:{A=143712;break}case 5:{A=143697;break}case 6:{A=143679;break}case 7:{A=143664;break}case 8:{A=143644;break}case 9:{A=143616;break}case 10:{A=143581;break}case 11:{A=143564;break}case 12:{A=143537;break}case 13:{A=143517;break}case 14:{A=143479;break}case 15:{A=143452;break}case 16:{A=143410;break}case 17:{A=143363;break}case 18:{A=143346;break}case 19:{A=143295;break}case 20:{A=143272;break}case 21:{A=143226;break}case 22:{A=143199;break}case 23:{A=143148;break}case 24:{A=143112;break}case 25:{A=143060;break}case 26:{A=143015;break}case 27:{A=143e3;break}case 28:{A=142974;break}case 29:{A=142936;break}case 30:{A=142904;break}case 31:{A=142871;break}case 32:{A=142837;break}case 33:{A=142820;break}case 34:{A=142799;break}case 35:{A=142783;break}case 36:{A=142766;break}case 37:{A=142722;break}case 38:{A=142642;break}case 39:{A=142583;break}case 40:{A=142519;break}default:A=0}}while(0);return A|0}function hb(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,l=0,t=0;i=a[e>>2]|0;r=0;A:while(1){if(i>>>0<=A>>>0)break;l=i+-1|0;f=n[l>>0]|0;do{if((f&248|0)==240)if((r+1|0)>>>0>3){t=5;break A}else r=0;else{if((f&240|0)==224)if((r+1|0)>>>0>2){t=8;break A}else{r=0;break}if((f&224|0)==192)if((r+1|0)>>>0>1){t=11;break A}else{r=0;break}else if(!(f&128))break A;else break}}while(0);i=l;r=r+1|0}if((t|0)==5)i=i+3|0;else if((t|0)==8)i=i+2|0;else if((t|0)==11)i=i+1|0;a[e>>2]=i;return}function db(A,e){A=A|0;e=e|0;do{if((A|0)>=0){if((A|0)<128){r[e>>0]=A;A=1;break}if((A|0)<2048){r[e>>0]=A>>>6|192;r[e+1>>0]=A&63|128;A=2;break}if((A|0)<65536){r[e>>0]=A>>>12|224;r[e+1>>0]=A>>>6&63|128;r[e+2>>0]=A&63|128;A=3;break}if((A|0)<1114112){r[e>>0]=A>>>18|240;r[e+1>>0]=A>>>12&63|128;r[e+2>>0]=A>>>6&63|128;r[e+3>>0]=A&63|128;A=4}else A=0}else A=0}while(0);return A|0}function Bb(){return 1908}function gb(A,e,i,l){A=A|0;e=e|0;i=i|0;l=l|0;var t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0;t=0;while(1){if((t|0)==364){t=0;break}r[A+t>>0]=r[56576+t>>0]|0;t=t+1|0}A:while(1){if((t|0)>=128){c=5;break}switch(r[56648+t>>0]|0){case 0:case 28:break;default:if((a[e+(t<<2)>>2]|0)!=(t|0)){A=0;break A}}t=t+1|0}A:do{if((c|0)==5){h=A+72|0;u=A+372|0;w=A+884|0;k=(i|0)==0;b=0;while(1){if((b|0)>=256)break;o=a[e+(b<<2)>>2]|0;do{if((o|0)==-1){r[h+b>>0]=1;f[u+(b<<1)>>1]=-1;r[w+(b<<2)>>0]=1;r[w+(b<<2)+1>>0]=0}else{if((o|0)<0){if(k|(o|0)<-4){A=0;break A}r[h+b>>0]=3-o;r[w+(b<<2)>>0]=0;f[u+(b<<1)>>1]=0;break}if((o|0)<128){t=r[56648+o>>0]|0;switch(t<<24>>24){case 0:case 28:break;default:if((o|0)!=(b|0)){A=0;break A}}r[h+b>>0]=t;r[w+(b<<2)>>0]=1;r[w+(b<<2)+1>>0]=o;f[u+(b<<1)>>1]=(o|0)==0?-1:o&65535;break}if((vb(o)|0)<0){r[h+b>>0]=0;f[u+(b<<1)>>1]=-1;r[w+(b<<2)>>0]=1;r[w+(b<<2)+1>>0]=0;break}if((o|0)>65535){A=0;break A}t=o>>>8;c=o>>>5&7;s=1<<(o&31);if(!(a[56940+((n[143788+t>>0]<<3|c)<<2)>>2]&s))r[h+b>>0]=a[56940+((n[144044+t>>0]<<3|c)<<2)>>2]&s|0?26:28;else r[h+b>>0]=22;r[w+(b<<2)>>0]=db(o,w+(b<<2)+1|0)|0;f[u+(b<<1)>>1]=o}}while(0);b=b+1|0}a[A+368>>2]=l;a[A+364>>2]=i;if(!k){a[A+328>>2]=108;a[A+332>>2]=108;a[A+336>>2]=108;a[A+340>>2]=109;a[A+344>>2]=109;a[A+348>>2]=109;a[A+352>>2]=110;a[A+356>>2]=110;a[A+360>>2]=110}a[A+56>>2]=13;a[A+60>>2]=14}}while(0);return A|0}function vb(A){A=A|0;var e=0;switch(A>>8|0){case 223:case 222:case 221:case 220:case 219:case 218:case 217:case 216:{A=-1;break}case 0:{if(!(r[56648+A>>0]|0))A=-1;else e=4;break}case 255:{if((A|1|0)==65535)A=-1;else e=4;break}default:e=4}return A|0}function Eb(A,e){A=A|0;e=e|0;A=Q5[a[A+364>>2]&127](a[A+368>>2]|0,e)|0;if(A>>>0>65535)A=0;else A=a[56940+(((n[144044+(A>>>8)>>0]|0)<<3|A>>>5&7)<<2)>>2]&1<<(A&31);return A|0}function Cb(A,e){A=A|0;e=e|0;A=Q5[a[A+364>>2]&127](a[A+368>>2]|0,e)|0;if(A>>>0>65535)A=0;else A=a[56940+(((n[143788+(A>>>8)>>0]|0)<<3|A>>>5&7)<<2)>>2]&1<<(A&31);return A|0}function Ib(A,e){A=A|0;e=e|0;A=Q5[a[A+364>>2]&127](a[A+368>>2]|0,e)|0;if(A>>>0>65535)A=1;else A=(vb(A)|0)>>>31;return A|0}function Zb(A,e,i,f,l){A=A|0;e=e|0;i=i|0;f=f|0;l=l|0;var t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0;h=k;k=k+16|0;b=h;u=A+364|0;w=A+884|0;o=A+368|0;s=A+72|0;while(1){t=a[e>>2]|0;if((t|0)==(i|0)){l=0;break}d=n[t>>0]|0;c=w+(d<<2)+1|0;d=r[w+(d<<2)>>0]|0;A=d<<24>>24;if(!(d<<24>>24)){A=db(Q5[a[u>>2]&127](a[o>>2]|0,t)|0,b)|0;if((A|0)>(l-(a[f>>2]|0)|0)){l=2;break}t=a[e>>2]|0;c=b;t=t+((n[s+(n[t>>0]|0)>>0]|0)+-3)|0}else{if((l-(a[f>>2]|0)|0)<(A|0)){l=2;break}t=t+1|0}a[e>>2]=t;W6(a[f>>2]|0,c|0,A|0)|0;a[f>>2]=(a[f>>2]|0)+A}k=h;return l|0}function Gb(A,e,i,r,l){A=A|0;e=e|0;i=i|0;r=r|0;l=l|0;var t=0,c=0,s=0,b=0,u=0,w=0,k=0;u=A+372|0;w=A+364|0;k=A+368|0;b=A+72|0;while(1){s=a[e>>2]|0;A=s>>>0>>0;t=a[r>>2]|0;if(!(A&t>>>0 >>0))break;A=f[u+((n[s>>0]|0)<<1)>>1]|0;if(!(A<<16>>16)){A=(Q5[a[w>>2]&127](a[k>>2]|0,s)|0)&65535;t=a[e>>2]|0;c=(n[b+(n[t>>0]|0)>>0]|0)+-3|0}else{c=1;t=s}a[e>>2]=t+c;s=a[r>>2]|0;a[r>>2]=s+2;f[s>>1]=A}return((t|0)!=(l|0)|A^1?0:2)|0}function mb(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var l=0,t=0,c=0,s=0,b=0,u=0,w=0;A:do{if(e>>>0>>0){w=A+72|0;do{switch(r[w+(n[e>>0]|0)>>0]|0){case 12:{l=Xq(12,A,e+1|0,i,f)|0;break A}case 13:{l=Xq(13,A,e+1|0,i,f)|0;break A}case 2:{l=e+1|0;if((i-l|0)<=0){l=-1;break A}switch(r[w+(n[l>>0]|0)>>0]|0){case 16:{l=Hq(A,e+2|0,i,f)|0;break A}case 15:{l=Jq(A,e+2|0,i,f)|0;break A}case 7:case 6:case 5:case 29:case 24:case 22:{a[f>>2]=e;l=29;break A}default:{a[f>>2]=l;l=0;break A}}}case 9:{if((e+1|0)==(i|0)){a[f>>2]=i;l=-15;break A}else s=3;break}case 10:case 21:{s=3;break}case 30:{l=zq(A,e+1|0,i,f)|0;break A}case 35:{a[f>>2]=e+1;l=38;break A}case 20:{a[f>>2]=e+1;l=25;break A}case 4:{t=e+1|0;l=i-t|0;if((l|0)<=0){l=-26;break A}if((r[t>>0]|0)==93){if((l|0)<=1){l=-1;break A}if((r[e+2>>0]|0)==62){a[f>>2]=e+3;l=34;break A}}a[f>>2]=t;l=26;break A}case 31:{a[f>>2]=e+1;l=23;break A}case 32:{l=e+1|0;if((i-l|0)<=0){l=-24;break A}switch(r[w+(n[l>>0]|0)>>0]|0){case 33:{a[f>>2]=e+2;l=36;break A}case 15:{a[f>>2]=e+2;l=35;break A}case 34:{a[f>>2]=e+2;l=37;break A}case 32:case 36:case 35:case 11:case 21:case 10:case 9:{a[f>>2]=l;l=24;break A}default:{a[f>>2]=l;l=0;break A}}}case 36:{a[f>>2]=e+1;l=21;break A}case 11:{a[f>>2]=e+1;l=17;break A}case 19:{l=Uq(A,e+1|0,i,f)|0;break A}case 5:{if((i-e|0)<2){l=-2;break A}if(!(Q5[a[A+340>>2]&127](A,e)|0))if(!(Q5[a[A+328>>2]&127](A,e)|0)){a[f>>2]=e;l=0;break A}else{l=19;t=2}else{l=18;t=2}break}case 6:{if((i-e|0)<3){l=-2;break A}if(!(Q5[a[A+344>>2]&127](A,e)|0))if(!(Q5[a[A+332>>2]&127](A,e)|0)){a[f>>2]=e;l=0;break A}else{l=19;t=3}else{l=18;t=3}break}case 7:{if((i-e|0)<4){l=-2;break A}if(!(Q5[a[A+348>>2]&127](A,e)|0))if(!(Q5[a[A+336>>2]&127](A,e)|0)){a[f>>2]=e;l=0;break A}else{l=19;t=4}else{l=18;t=4}break}case 24:case 22:{l=18;t=1;break}case 23:case 27:case 26:case 25:{l=19;t=1;break}default:{a[f>>2]=e;l=0;break A}}}while(0);if((s|0)==3){c=i;t=e;e:while(1){l=t;t=t+1|0;if((c-t|0)<=0){s=18;break}switch(r[w+(n[t>>0]|0)>>0]|0){case 10:case 21:continue e;case 9:break;default:{s=17;break e}}if((l+2|0)==(i|0)){s=17;break}}if((s|0)==17){a[f>>2]=t;l=15;break}else if((s|0)==18){a[f>>2]=t;l=15;break}}s=A+328|0;b=A+332|0;u=A+336|0;c=e+t|0;e:while(1){t=i-c|0;if((t|0)<=0){s=99;break}switch(r[w+(n[c>>0]|0)>>0]|0){case 29:{s=56;break e}case 10:case 9:case 21:case 30:case 20:case 36:case 35:case 32:case 11:{s=70;break e}case 34:{s=89;break e}case 33:{s=92;break e}case 15:{s=95;break e}case 27:case 26:case 25:case 24:case 22:{e=l;c=c+1|0;l=e;continue e}case 5:{if((t|0)<2){l=-2;break A}if(!(Q5[a[s>>2]&127](A,c)|0)){s=60;break e}e=l;c=c+2|0;l=e;continue e}case 6:{if((t|0)<3){l=-2;break A}if(!(Q5[a[b>>2]&127](A,c)|0)){s=64;break e}e=l;c=c+3|0;l=e;continue e}case 7:{if((t|0)<4){l=-2;break A}if(!(Q5[a[u>>2]&127](A,c)|0)){s=68;break e}e=l;c=c+4|0;l=e;continue e}case 23:{t=c+1|0;switch(l&63){case 18:break;case 41:{l=19;c=t;continue e}default:{e=l;c=t;l=e;continue e}}l=i-t|0;if((l|0)<=0){l=-1;break A}switch(r[w+(n[t>>0]|0)>>0]|0){case 29:{s=74;break e}case 27:case 26:case 25:case 24:case 22:{l=41;c=c+2|0;continue e}case 5:{if((l|0)<2){l=-2;break A}if(!(Q5[a[s>>2]&127](A,t)|0)){s=78;break e}l=41;c=c+3|0;continue e}case 6:{if((l|0)<3){l=-2;break A}if(!(Q5[a[b>>2]&127](A,t)|0)){s=82;break e}l=41;c=c+4|0;continue e}case 7:{if((l|0)<4){l=-2;break A}if(!(Q5[a[u>>2]&127](A,t)|0)){s=86;break e}l=41;c=c+5|0;continue e}default:{l=19;c=t;continue e}}}default:{s=98;break e}}}switch(s|0){case 56:{a[f>>2]=c;l=0;break A}case 60:{a[f>>2]=c;l=0;break A}case 64:{a[f>>2]=c;l=0;break A}case 68:{a[f>>2]=c;l=0;break A}case 70:{a[f>>2]=c;break A}case 74:{a[f>>2]=t;l=0;break A}case 78:{a[f>>2]=t;l=0;break A}case 82:{a[f>>2]=t;l=0;break A}case 86:{a[f>>2]=t;l=0;break A}case 89:if((l|0)==19){a[f>>2]=c;l=0;break A}else{a[f>>2]=c+1;l=32;break A}case 92:if((l|0)==19){a[f>>2]=c;l=0;break A}else{a[f>>2]=c+1;l=31;break A}case 95:if((l|0)==19){a[f>>2]=c;l=0;break A}else{a[f>>2]=c+1;l=30;break A}case 98:{a[f>>2]=c;l=0;break A}case 99:{l=0-l|0;break A}}}else l=-4}while(0);return l|0}function Qb(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var l=0,t=0,c=0,s=0,b=0,u=0;A:do{if(e>>>0>>0){u=A+72|0;e:do{switch(r[u+(n[e>>0]|0)>>0]|0){case 2:{l=Mq(A,e+1|0,i,f)|0;break A}case 3:{l=Wq(A,e+1|0,i,f)|0;break A}case 9:{l=e+1|0;if((i-l|0)<=0){l=-3;break A}a[f>>2]=(r[u+(n[l>>0]|0)>>0]|0)==10?e+2|0:l;l=7;break A}case 10:{a[f>>2]=e+1;l=7;break A}case 4:{t=e+1|0;if((i-t|0)<=0){l=-5;break A}if((r[t>>0]|0)==93){l=e+2|0;if((i-l|0)<=0){l=-5;break A}if((r[l>>0]|0)==62){a[f>>2]=l;l=0;break A}else l=i}else l=i;break}case 5:{l=i;if((l-e|0)<2){l=-2;break A}if(!(Q5[a[A+352>>2]&127](A,e)|0)){t=e+2|0;break e}else{a[f>>2]=e;l=0;break A}}case 6:{l=i;if((l-e|0)<3){l=-2;break A}if(!(Q5[a[A+356>>2]&127](A,e)|0)){t=e+3|0;break e}else{a[f>>2]=e;l=0;break A}}case 7:{l=i;if((l-e|0)<4){l=-2;break A}if(!(Q5[a[A+360>>2]&127](A,e)|0)){t=e+4|0;break e}else{a[f>>2]=e;l=0;break A}}case 8:case 1:case 0:{a[f>>2]=e;l=0;break A}default:{t=e+1|0;l=i}}}while(0);c=A+352|0;s=A+356|0;b=A+360|0;e:while(1){i=l-t|0;if((i|0)<=0){i=49;break}switch(r[u+(n[t>>0]|0)>>0]|0){case 10:case 9:case 8:case 1:case 0:case 2:case 3:{i=47;break e}case 5:{if((i|0)<2){i=32;break e}if(Q5[a[c>>2]&127](A,t)|0){i=32;break e}t=t+2|0;continue e}case 6:{if((i|0)<3){i=36;break e}if(Q5[a[s>>2]&127](A,t)|0){i=36;break e}t=t+3|0;continue e}case 7:{if((i|0)<4){i=40;break e}if(Q5[a[b>>2]&127](A,t)|0){i=40;break e}t=t+4|0;continue e}case 4:{if((i|0)<=1){i=47;break e}e=t+1|0;if((r[e>>0]|0)!=93){t=e;continue e}if((i|0)<=2){i=47;break e}t=t+2|0;if((r[t>>0]|0)==62){i=46;break e}else{t=e;continue e}}default:{t=t+1|0;continue e}}}if((i|0)==32){a[f>>2]=t;l=6;break}else if((i|0)==36){a[f>>2]=t;l=6;break}else if((i|0)==40){a[f>>2]=t;l=6;break}else if((i|0)==46){a[f>>2]=t;l=0;break}else if((i|0)==47){a[f>>2]=t;l=6;break}else if((i|0)==49){a[f>>2]=t;l=6;break}}else l=-4}while(0);return l|0}function Lb(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var l=0,t=0,c=0,s=0,b=0;A:do{if(e>>>0>>0){b=A+72|0;e:do{switch(r[b+(n[e>>0]|0)>>0]|0){case 4:{t=e+1|0;l=i;if((l-t|0)<=0){l=-1;break A}if((r[t>>0]|0)==93){i=e+2|0;if((l-i|0)<=0){l=-1;break A}if((r[i>>0]|0)==62){a[f>>2]=e+3;l=40;break A}}break}case 9:{l=e+1|0;if((i-l|0)<=0){l=-1;break A}a[f>>2]=(r[b+(n[l>>0]|0)>>0]|0)==10?e+2|0:l;l=7;break A}case 10:{a[f>>2]=e+1;l=7;break A}case 5:{l=i;if((l-e|0)<2){l=-2;break A}if(!(Q5[a[A+352>>2]&127](A,e)|0)){t=e+2|0;break e}else{a[f>>2]=e;l=0;break A}}case 6:{l=i;if((l-e|0)<3){l=-2;break A}if(!(Q5[a[A+356>>2]&127](A,e)|0)){t=e+3|0;break e}else{a[f>>2]=e;l=0;break A}}case 7:{l=i;if((l-e|0)<4){l=-2;break A}if(!(Q5[a[A+360>>2]&127](A,e)|0)){t=e+4|0;break e}else{a[f>>2]=e;l=0;break A}}case 8:case 1:case 0:{a[f>>2]=e;l=0;break A}default:{t=e+1|0;l=i}}}while(0);e=A+352|0;c=A+356|0;s=A+360|0;e:while(1){i=l-t|0;if((i|0)<=0){i=39;break}switch(r[b+(n[t>>0]|0)>>0]|0){case 4:case 10:case 9:case 8:case 1:case 0:{i=37;break e}case 5:{if((i|0)<2){i=30;break e}if(!(Q5[a[e>>2]&127](A,t)|0))i=2;else{i=30;break e}break}case 6:{if((i|0)<3){i=33;break e}if(!(Q5[a[c>>2]&127](A,t)|0))i=3;else{i=33;break e}break}case 7:{if((i|0)<4){i=36;break e}if(!(Q5[a[s>>2]&127](A,t)|0))i=4;else{i=36;break e}break}default:i=1}t=t+i|0}if((i|0)==30){a[f>>2]=t;l=6;break}else if((i|0)==33){a[f>>2]=t;l=6;break}else if((i|0)==36){a[f>>2]=t;l=6;break}else if((i|0)==37){a[f>>2]=t;l=6;break}else if((i|0)==39){a[f>>2]=t;l=6;break}}else l=-4}while(0);return l|0}function yb(A,e,i,r,f,n,l,t,c){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;t=t|0;c=c|0;var b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0;if(!((A|0)>-1&((e|0)>0&(i|0)>0)))gA(95162,94943,843,95188);t=uq(e,i,A,l,t,1)|0;if(!t)gA(95233,94943,847,95188);v=a[t+20>>2]|0;g=a[t+24>>2]|0;u=e+1|0;b=0;while(1){if((b|0)==(u|0))break;a[v+(b<<2)>>2]=0;b=b+1|0}A:do{switch(l|0){case 1:{l=a[t+28>>2]|0;b=0;while(1){if((b|0)>=(A|0)){h=0;break}u=a[r+(b<<2)>>2]|0;if(!((u|0)>-1&(u|0)<(e|0))){B=13;break}d=a[f+(b<<2)>>2]|0;if(!((d|0)>-1&(d|0)<(i|0))){B=13;break}d=v+(u+1<<2)|0;a[d>>2]=(a[d>>2]|0)+1;b=b+1|0}if((B|0)==13)gA(138394,94943,862,95188);while(1){if((h|0)==(e|0)){b=0;break}B=h+1|0;i=v+(B<<2)|0;a[i>>2]=(a[i>>2]|0)+(a[v+(h<<2)>>2]|0);h=B}while(1){if((b|0)==(A|0))break;d=v+(a[r+(b<<2)>>2]<<2)|0;B=a[d>>2]|0;s[l+(B<<3)>>3]=+s[n+(b<<3)>>3];i=a[f+(b<<2)>>2]|0;a[d>>2]=B+1;a[g+(B<<2)>>2]=i;b=b+1|0}while(1){if((e|0)<=0)break A;f=e+-1|0;a[v+(e<<2)>>2]=a[v+(f<<2)>>2];e=f}}case 2:{l=a[t+28>>2]|0;b=0;while(1){if((b|0)>=(A|0)){d=0;break}u=a[r+(b<<2)>>2]|0;if(!((u|0)>-1&(u|0)<(e|0))){B=25;break}h=a[f+(b<<2)>>2]|0;if(!((h|0)>-1&(h|0)<(i|0))){B=25;break}h=v+(u+1<<2)|0;a[h>>2]=(a[h>>2]|0)+1;b=b+1|0}if((B|0)==25)gA(138394,94943,880,95188);while(1){if((d|0)==(e|0)){b=0;break}B=d+1|0;i=v+(B<<2)|0;a[i>>2]=(a[i>>2]|0)+(a[v+(d<<2)>>2]|0);d=B}while(1){if((b|0)==(A|0))break;d=v+(a[r+(b<<2)>>2]<<2)|0;B=a[d>>2]|0;i=B<<1;s[l+(i<<3)>>3]=+s[n>>3];s[l+((i|1)<<3)>>3]=+s[n+8>>3];i=a[f+(b<<2)>>2]|0;a[d>>2]=B+1;a[g+(B<<2)>>2]=i;n=n+16|0;b=b+1|0}while(1){if((e|0)<=0)break A;f=e+-1|0;a[v+(e<<2)>>2]=a[v+(f<<2)>>2];e=f}}case 4:{l=a[t+28>>2]|0;b=0;while(1){if((b|0)>=(A|0)){o=0;break}u=a[r+(b<<2)>>2]|0;if(!((u|0)>-1&(u|0)<(e|0))){B=37;break}d=a[f+(b<<2)>>2]|0;if(!((d|0)>-1&(d|0)<(i|0))){B=37;break}d=v+(u+1<<2)|0;a[d>>2]=(a[d>>2]|0)+1;b=b+1|0}if((B|0)==37)gA(138394,94943,899,95188);while(1){if((o|0)==(e|0)){b=0;break}B=o+1|0;i=v+(B<<2)|0;a[i>>2]=(a[i>>2]|0)+(a[v+(o<<2)>>2]|0);o=B}while(1){if((b|0)==(A|0))break;d=r+(b<<2)|0;a[l+(a[v+(a[d>>2]<<2)>>2]<<2)>>2]=a[n+(b<<2)>>2];i=a[f+(b<<2)>>2]|0;d=v+(a[d>>2]<<2)|0;B=a[d>>2]|0;a[d>>2]=B+1;a[g+(B<<2)>>2]=i;b=b+1|0}while(1){if((e|0)<=0)break A;f=e+-1|0;a[v+(e<<2)>>2]=a[v+(f<<2)>>2];e=f}}case 8:{n=0;while(1){if((n|0)>=(A|0)){w=0;break}b=a[r+(n<<2)>>2]|0;if(!((b|0)>-1&(b|0)<(e|0))){B=48;break}d=a[f+(n<<2)>>2]|0;if(!((d|0)>-1&(d|0)<(i|0))){B=48;break}d=v+(b+1<<2)|0;a[d>>2]=(a[d>>2]|0)+1;n=n+1|0}if((B|0)==48)gA(138394,94943,915,95188);while(1){if((w|0)==(e|0)){n=0;break}B=w+1|0;i=v+(B<<2)|0;a[i>>2]=(a[i>>2]|0)+(a[v+(w<<2)>>2]|0);w=B}while(1){if((n|0)==(A|0))break;i=a[f+(n<<2)>>2]|0;d=v+(a[r+(n<<2)>>2]<<2)|0;B=a[d>>2]|0;a[d>>2]=B+1;a[g+(B<<2)>>2]=i;n=n+1|0}while(1){if((e|0)<=0)break A;f=e+-1|0;a[v+(e<<2)>>2]=a[v+(f<<2)>>2];e=f}}case 16:{b=0;while(1){if((b|0)>=(A|0)){k=0;break}u=a[r+(b<<2)>>2]|0;if(!((u|0)>-1&(u|0)<(e|0))){B=59;break}d=a[f+(b<<2)>>2]|0;if(!((d|0)>-1&(d|0)<(i|0))){B=59;break}d=v+(u+1<<2)|0;a[d>>2]=(a[d>>2]|0)+1;b=b+1|0}if((B|0)==59)gA(138394,94943,930,95188);while(1){if((k|0)==(e|0))break;B=k+1|0;i=v+(B<<2)|0;a[i>>2]=(a[i>>2]|0)+(a[v+(k<<2)>>2]|0);k=B}W6(a[t+28>>2]|0,n|0,U(a[t+40>>2]|0,A)|0)|0;n=0;while(1){if((n|0)==(A|0))break;i=a[f+(n<<2)>>2]|0;d=v+(a[r+(n<<2)>>2]<<2)|0;B=a[d>>2]|0;a[d>>2]=B+1;a[g+(B<<2)>>2]=i;n=n+1|0}while(1){if((e|0)<=0)break A;f=e+-1|0;a[v+(e<<2)>>2]=a[v+(f<<2)>>2];e=f}}default:gA(138394,94943,944,95188)}}while(0);a[v>>2]=0;a[t+8>>2]=A;if(c)t=Wb(t,c)|0;return t|0}function Wb(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0.0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0;g=a[A+20>>2]|0;v=a[A+24>>2]|0;r=a[A+16>>2]|0;d=a[A+4>>2]|0;A:do{if(e){u=d<<2;w=$F(u)|0;i=0;while(1){if((i|0)>=(d|0))break;a[w+(i<<2)>>2]=-1;i=i+1|0}e:do{switch(r|0){case 1:{c=a[A+28>>2]|0;f=0;r=a[g>>2]|0;i=0;i:while(1){if((i|0)>=(a[A>>2]|0)){E=f;C=w;break e}b=i+1|0;u=g+(b<<2)|0;l=g+(i<<2)|0;i=f;while(1){e=a[u>>2]|0;if((r|0)>=(e|0))break;e=v+(r<<2)|0;f=a[e>>2]|0;n=a[w+(f<<2)>>2]|0;if((n|0)<(a[l>>2]|0)){a[v+(i<<2)>>2]=f;s[c+(i<<3)>>3]=+s[c+(r<<3)>>3];a[w+(a[e>>2]<<2)>>2]=i;i=i+1|0}else{if((a[v+(n<<2)>>2]|0)!=(f|0))break i;B=c+(n<<3)|0;s[B>>3]=+s[B>>3]+ +s[c+(r<<3)>>3]}r=r+1|0}a[u>>2]=i;f=i;r=e;i=b}gA(95235,94943,1792,95260);break}case 2:{B=a[A+28>>2]|0;switch(e|0){case 1:{e=a[g>>2]|0;r=0;i=0;i:while(1){if((r|0)>=(a[A>>2]|0)){E=i;C=w;break e}c=r+1|0;b=g+(c<<2)|0;l=g+(r<<2)|0;while(1){r=a[b>>2]|0;if((e|0)>=(r|0))break;r=v+(e<<2)|0;f=a[r>>2]|0;n=a[w+(f<<2)>>2]|0;if((n|0)<(a[l>>2]|0)){a[v+(i<<2)>>2]=f;h=e<<1;d=i<<1;s[B+(d<<3)>>3]=+s[B+(h<<3)>>3];s[B+((d|1)<<3)>>3]=+s[B+((h|1)<<3)>>3];a[w+(a[r>>2]<<2)>>2]=i;i=i+1|0}else{if((a[v+(n<<2)>>2]|0)!=(f|0))break i;h=e<<1;d=n<<1;o=B+(d<<3)|0;s[o>>3]=+s[o>>3]+ +s[B+(h<<3)>>3];d=B+((d|1)<<3)|0;s[d>>3]=+s[d>>3]+ +s[B+((h|1)<<3)>>3]}e=e+1|0}a[b>>2]=i;e=r;r=c}gA(95235,94943,1815,95260);break}case 4:{e=a[g>>2]|0;r=0;i=0;i:while(1){if((r|0)>=(a[A>>2]|0)){E=i;C=w;break e}b=r+1|0;c=g+(b<<2)|0;l=g+(r<<2)|0;while(1){r=a[c>>2]|0;if((e|0)>=(r|0))break;r=v+(e<<2)|0;f=a[r>>2]|0;n=a[w+(f<<2)>>2]|0;if((n|0)<(a[l>>2]|0)){a[v+(i<<2)>>2]=f;h=e<<1;d=i<<1;s[B+(d<<3)>>3]=+s[B+(h<<3)>>3];s[B+((d|1)<<3)>>3]=+s[B+((h|1)<<3)>>3];a[w+(a[r>>2]<<2)>>2]=i;i=i+1|0}else{if((a[v+(n<<2)>>2]|0)!=(f|0))break i;h=e<<1;d=n<<1;o=B+(d<<3)|0;s[o>>3]=+s[o>>3]+ +s[B+(h<<3)>>3];s[B+((d|1)<<3)>>3]=+s[B+((h|1)<<3)>>3]}e=e+1|0}a[c>>2]=i;e=r;r=b}gA(95235,94943,1835,95260);break}case 2:{h=~~+s[B+8>>3];l=a[A>>2]|0;r=h;n=0;i=0;i:while(1){if((n|0)>=(l|0))break;c=n+1|0;b=a[g+(c<<2)>>2]|0;f=i;e=h;i=a[g+(n<<2)>>2]|0;while(1){if((i|0)>=(b|0)){h=e;n=c;i=f;continue i}h=~~+s[B+((f<<1|1)<<3)>>3];f=f+1|0;r=(r|0)>(h|0)?r:h;e=(e|0)<(h|0)?e:h;i=i+1|0}}L2(w);o=r-h+1|0;k=$F(U(o,u)|0)|0;o=U(o,d)|0;i=0;while(1){if((i|0)>=(o|0))break;a[k+(i<<2)>>2]=-1;i=i+1|0}i=0;e=a[g>>2]|0;r=0;i:while(1){if((r|0)>=(a[A>>2]|0)){E=i;C=k;break e}u=r+1|0;w=g+(u<<2)|0;b=g+(r<<2)|0;while(1){r=a[w>>2]|0;if((e|0)>=(r|0))break;r=a[v+(e<<2)>>2]|0;f=e<<1;t=+s[B+((f|1)<<3)>>3];n=(U(~~t-h|0,d)|0)+r|0;l=k+(n<<2)|0;c=a[l>>2]|0;if((c|0)<(a[b>>2]|0)){a[v+(i<<2)>>2]=r;c=i<<1;s[B+(c<<3)>>3]=+s[B+(f<<3)>>3];s[B+((c|1)<<3)>>3]=t;a[l>>2]=i;i=i+1|0}else{if((n|0)>=(o|0)){i=55;break i}if((a[v+(c<<2)>>2]|0)!=(r|0)){i=57;break i}c=c<<1;l=B+(c<<3)|0;s[l>>3]=+s[l>>3]+ +s[B+(f<<3)>>3];s[B+((c|1)<<3)>>3]=t}e=e+1|0}a[w>>2]=i;e=r;r=u}if((i|0)==55)gA(95292,94943,1869,95260);else if((i|0)==57)gA(95313,94943,1870,95260);break}case 3:{f=~~+s[B+8>>3];l=a[A>>2]|0;i=f;r=0;n=0;i:while(1){if((n|0)>=(l|0))break;c=n+1|0;b=a[g+(c<<2)>>2]|0;e=i;i=a[g+(n<<2)>>2]|0;while(1){if((i|0)>=(b|0)){i=e;n=c;continue i}h=~~+s[B+(r<<1<<3)>>3];e=(e|0)>(h|0)?e:h;f=(f|0)>(h|0)?f:h;r=r+1|0;i=i+1|0}}L2(w);r=i-f+1|0;k=$F(U(r,u)|0)|0;r=U(r,d)|0;i=0;while(1){if((i|0)>=(r|0))break;a[k+(i<<2)>>2]=-1;i=i+1|0}i=0;e=a[g>>2]|0;r=0;i:while(1){if((r|0)>=(a[A>>2]|0)){E=i;C=k;break e}u=r+1|0;w=g+(u<<2)|0;b=g+(r<<2)|0;while(1){r=a[w>>2]|0;if((e|0)>=(r|0))break;r=a[v+(e<<2)>>2]|0;n=e<<1;t=+s[B+(n<<3)>>3];l=k+((U(~~t-f|0,d)|0)+r<<2)|0;c=a[l>>2]|0;if((c|0)<(a[b>>2]|0)){a[v+(i<<2)>>2]=r;h=i<<1;s[B+(h<<3)>>3]=t;s[B+((h|1)<<3)>>3]=+s[B+((n|1)<<3)>>3];a[l>>2]=i;i=i+1|0}else{if((a[v+(c<<2)>>2]|0)!=(r|0))break i;h=c<<1;s[B+(h<<3)>>3]=t;h=B+((h|1)<<3)|0;s[h>>3]=+s[h>>3]+ +s[B+((n|1)<<3)>>3]}e=e+1|0}a[w>>2]=i;e=r;r=u}gA(95313,94943,1905,95260);break}default:{E=0;C=w;break e}}break}case 4:{c=a[A+28>>2]|0;r=0;i=0;e=a[g>>2]|0;i:while(1){if((r|0)>=(a[A>>2]|0)){E=i;C=w;break e}b=r+1|0;u=g+(b<<2)|0;l=g+(r<<2)|0;while(1){f=a[u>>2]|0;if((e|0)>=(f|0))break;r=v+(e<<2)|0;f=a[r>>2]|0;n=a[w+(f<<2)>>2]|0;if((n|0)<(a[l>>2]|0)){a[v+(i<<2)>>2]=f;a[c+(i<<2)>>2]=a[c+(e<<2)>>2];a[w+(a[r>>2]<<2)>>2]=i;i=i+1|0}else{if((a[v+(n<<2)>>2]|0)!=(f|0))break i;B=c+(n<<2)|0;a[B>>2]=(a[B>>2]|0)+(a[c+(e<<2)>>2]|0)}e=e+1|0}a[u>>2]=i;r=b;e=f}gA(95235,94943,1929,95260);break}case 8:{r=0;i=0;e=a[g>>2]|0;i:while(1){if((r|0)>=(a[A>>2]|0)){E=i;C=w;break e}c=r+1|0;b=g+(c<<2)|0;l=g+(r<<2)|0;while(1){f=a[b>>2]|0;if((e|0)>=(f|0))break;r=v+(e<<2)|0;f=a[r>>2]|0;n=a[w+(f<<2)>>2]|0;if((n|0)>=(a[l>>2]|0)){if((a[v+(n<<2)>>2]|0)!=(f|0))break i}else{a[v+(i<<2)>>2]=f;a[w+(a[r>>2]<<2)>>2]=i;i=i+1|0}e=e+1|0}a[b>>2]=i;r=c;e=f}gA(95235,94943,1948,95260);break}default:{A=0;break A}}}while(0);a[A+8>>2]=E;L2(C)}}while(0);return A|0}function zb(A,e,i,r,f,a,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;n=n|0;if(!r)Yb(A,i,f,n,e,a);else Db(A,i,f,n,e,a);return}function Yb(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0.0,v=0;if((a[A+32>>2]|0)!=1)gA(94919,94943,1121,95483);if((a[A+16>>2]|0)!=1)gA(95364,94943,1122,95483);o=a[A+28>>2]|0;h=a[A+20>>2]|0;d=a[A+24>>2]|0;B=a[A>>2]|0;k=a[A+4>>2]|0;A=a[i>>2]|0;l=(A|0)!=0;if(!f){if(!l)A=$F(U(r<<3,B)|0)|0;f=0;A:while(1){if((f|0)>=(B|0))break;w=U(f,r)|0;l=0;while(1){if((l|0)>=(r|0))break;s[A+(l+w<<3)>>3]=0.0;l=l+1|0}b=f+1|0;u=a[h+(b<<2)>>2]|0;l=a[h+(f<<2)>>2]|0;while(1){if((l|0)>=(u|0)){f=b;continue A}t=o+(l<<3)|0;c=d+(l<<2)|0;f=0;while(1){if((f|0)>=(r|0))break;g=+s[e+((U(a[c>>2]|0,r)|0)+f<<3)>>3]*+s[t>>3];k=A+(f+w<<3)|0;s[k>>3]=+s[k>>3]+g;f=f+1|0}l=l+1|0}}if(n)Fb(A,B,r)}else{if(!l)A=$F(U(r<<3,k)|0)|0;f=U(k,r)|0;l=0;while(1){if((l|0)>=(f|0)){l=0;break}s[A+(l<<3)>>3]=0.0;l=l+1|0}A:while(1){if((l|0)>=(B|0))break;b=l+1|0;u=a[h+(b<<2)>>2]|0;w=U(l,r)|0;l=a[h+(l<<2)>>2]|0;while(1){if((l|0)>=(u|0)){l=b;continue A}t=o+(l<<3)|0;c=d+(l<<2)|0;f=0;while(1){if((f|0)>=(r|0))break;v=A+((U(a[c>>2]|0,r)|0)+f<<3)|0;s[v>>3]=+s[v>>3]+ +s[e+(f+w<<3)>>3]*+s[t>>3];f=f+1|0}l=l+1|0}}if(n)Fb(A,k,r)}a[i>>2]=A;return}function Db(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0,b=0,u=0;u=k;k=k+16|0;b=u;if((a[A+32>>2]|0)!=1)gA(94919,94943,1163,95335);if((a[A+16>>2]|0)!=1)gA(95364,94943,1164,95335);l=a[i>>2]|0;c=a[A>>2]|0;s=a[A+4>>2]|0;t=(l|0)!=0;if(!f){if(!t)l=$F(U(r<<3,c)|0)|0;t=0;while(1){if((t|0)>=(r|0))break;a[b>>2]=l+((U(t,c)|0)<<3);Mb(A,e+((U(t,s)|0)<<3)|0,b,0);t=t+1|0}if(!n)Fb(l,r,c)}else{if(!t)l=$F(U(r<<3,s)|0)|0;t=0;while(1){if((t|0)>=(r|0))break;a[b>>2]=l+((U(t,s)|0)<<3);Mb(A,e+((U(t,c)|0)<<3)|0,b,f);t=t+1|0}if(!n)Fb(l,r,s)}a[i>>2]=l;k=u;return}function Mb(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0.0,l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0.0;if((a[A+32>>2]|0)!=1)gA(94919,94943,1222,95392);l=a[A+16>>2]|0;switch(l|0){case 4:case 1:break;default:gA(95421,94943,1223,95392)}w=a[A+20>>2]|0;u=a[A+24>>2]|0;k=a[A>>2]|0;c=a[A+4>>2]|0;t=a[i>>2]|0;A:do{switch(l|0){case 1:{b=a[A+28>>2]|0;A=(r|0)!=0;f=(t|0)!=0;if(!e){if(!A){if(f)f=t;else f=$F(k<<3)|0;A=0;e:while(1){if((A|0)>=(k|0))break A;l=f+(A<<3)|0;s[l>>3]=0.0;t=A+1|0;r=a[w+(t<<2)>>2]|0;A=a[w+(A<<2)>>2]|0;n=0.0;while(1){if((A|0)>=(r|0)){A=t;continue e}o=n+ +s[b+(A<<3)>>3];s[l>>3]=o;A=A+1|0;n=o}}}if(!f)t=$F(c<<3)|0;A=0;while(1){if((A|0)>=(c|0)){A=0;break}s[t+(A<<3)>>3]=0.0;A=A+1|0}e:while(1){if((A|0)>=(k|0)){f=t;break A}f=A+1|0;l=a[w+(f<<2)>>2]|0;A=a[w+(A<<2)>>2]|0;while(1){if((A|0)>=(l|0)){A=f;continue e}e=t+(a[u+(A<<2)>>2]<<3)|0;s[e>>3]=+s[e>>3]+ +s[b+(A<<3)>>3];A=A+1|0}}}else{if(!A){if(f)f=t;else f=$F(k<<3)|0;A=0;e:while(1){if((A|0)>=(k|0))break A;l=f+(A<<3)|0;s[l>>3]=0.0;t=A+1|0;r=a[w+(t<<2)>>2]|0;A=a[w+(A<<2)>>2]|0;n=0.0;while(1){if((A|0)>=(r|0)){A=t;continue e}o=n+ +s[e+(a[u+(A<<2)>>2]<<3)>>3]*+s[b+(A<<3)>>3];s[l>>3]=o;A=A+1|0;n=o}}}if(f)f=t;else f=$F(c<<3)|0;A=0;while(1){if((A|0)>=(c|0)){A=0;break}s[f+(A<<3)>>3]=0.0;A=A+1|0}e:while(1){if((A|0)>=(k|0))break A;l=A+1|0;t=a[w+(l<<2)>>2]|0;r=e+(A<<3)|0;A=a[w+(A<<2)>>2]|0;while(1){if((A|0)>=(t|0)){A=l;continue e}c=f+(a[u+(A<<2)>>2]<<3)|0;s[c>>3]=+s[c>>3]+ +s[r>>3]*+s[b+(A<<3)>>3];A=A+1|0}}}}case 4:{b=a[A+28>>2]|0;A=(r|0)!=0;f=(t|0)!=0;if(!e){if(!A){if(f)f=t;else f=$F(k<<3)|0;A=0;e:while(1){if((A|0)>=(k|0))break A;l=f+(A<<3)|0;s[l>>3]=0.0;t=A+1|0;r=a[w+(t<<2)>>2]|0;A=a[w+(A<<2)>>2]|0;n=0.0;while(1){if((A|0)>=(r|0)){A=t;continue e}o=n+ +(a[b+(A<<2)>>2]|0);s[l>>3]=o;A=A+1|0;n=o}}}if(!f)t=$F(c<<3)|0;A=0;while(1){if((A|0)>=(c|0)){A=0;break}s[t+(A<<3)>>3]=0.0;A=A+1|0}e:while(1){if((A|0)>=(k|0)){f=t;break A}f=A+1|0;l=a[w+(f<<2)>>2]|0;A=a[w+(A<<2)>>2]|0;while(1){if((A|0)>=(l|0)){A=f;continue e}e=t+(a[u+(A<<2)>>2]<<3)|0;s[e>>3]=+s[e>>3]+ +(a[b+(A<<2)>>2]|0);A=A+1|0}}}else{if(!A){if(f)f=t;else f=$F(k<<3)|0;A=0;e:while(1){if((A|0)>=(k|0))break A;l=f+(A<<3)|0;s[l>>3]=0.0;t=A+1|0;r=a[w+(t<<2)>>2]|0;A=a[w+(A<<2)>>2]|0;n=0.0;while(1){if((A|0)>=(r|0)){A=t;continue e}o=n+ +s[e+(a[u+(A<<2)>>2]<<3)>>3]*+(a[b+(A<<2)>>2]|0);s[l>>3]=o;A=A+1|0;n=o}}}if(f)f=t;else f=$F(c<<3)|0;A=0;while(1){if((A|0)>=(c|0)){A=0;break}s[f+(A<<3)>>3]=0.0;A=A+1|0}e:while(1){if((A|0)>=(k|0))break A;l=A+1|0;t=a[w+(l<<2)>>2]|0;r=e+(A<<3)|0;A=a[w+(A<<2)>>2]|0;while(1){if((A|0)>=(t|0)){A=l;continue e}c=f+(a[u+(A<<2)>>2]<<3)|0;s[c>>3]=+s[c>>3]+ +s[r>>3]*+(a[b+(A<<2)>>2]|0);A=A+1|0}}}}default:gA(138394,94943,1315,95392)}}while(0);a[i>>2]=f;return}function Fb(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,a=0,n=0;r=U(e<<3,i)|0;a=$F(r)|0;W6(a|0,A|0,r|0)|0;r=0;while(1){if((r|0)>=(e|0))break;n=U(r,i)|0;f=0;while(1){if((f|0)>=(i|0))break;s[A+((U(f,e)|0)+r<<3)>>3]=+s[a+(f+n<<3)>>3];f=f+1|0}r=r+1|0}L2(a);return}function Vb(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0;I=a[A+20>>2]|0;Z=a[A+24>>2]|0;G=a[e+20>>2]|0;m=a[e+24>>2]|0;C=a[A+32>>2]|0;if(!((C|0)==1?(C|0)==(a[e+32>>2]|0):0))gA(95005,94943,1408,95512);C=a[A>>2]|0;if(((a[A+4>>2]|0)==(a[e>>2]|0)?(w=a[A+16>>2]|0,(w|0)==(a[e+16>>2]|0)):0)?(u=e+4|0,Q=$F(a[u>>2]<<2)|0,(Q|0)!=0):0){i=0;while(1){if((i|0)>=(a[u>>2]|0)){r=0;i=0;break}a[Q+(i<<2)>>2]=-1;i=i+1|0}A:while(1){if((i|0)>=(C|0))break;t=i+1|0;c=I+(t<<2)|0;b=-2-i|0;l=a[I+(i<<2)>>2]|0;while(1){if((l|0)>=(a[c>>2]|0)){i=t;continue A}f=a[Z+(l<<2)>>2]|0;n=G+(f+1<<2)|0;f=a[G+(f<<2)>>2]|0;while(1){if((f|0)>=(a[n>>2]|0))break;i=Q+(a[m+(f<<2)>>2]<<2)|0;if((a[i>>2]|0)!=(b|0)){a[i>>2]=b;r=r+1|0}f=f+1|0}l=l+1|0}}i=fq(C,a[u>>2]|0,r,w,1)|0;A:do{if(!i)i=0;else{g=a[i+20>>2]|0;v=a[i+24>>2]|0;e:do{switch(w|0){case 1:{d=a[A+28>>2]|0;w=a[e+28>>2]|0;e=a[i+28>>2]|0;a[g>>2]=0;r=0;f=0;i:while(1){if((r|0)>=(C|0)){E=f;break e}k=r+1|0;o=I+(k<<2)|0;h=g+(r<<2)|0;A=a[I+(r<<2)>>2]|0;while(1){if((A|0)>=(a[o>>2]|0))break;c=a[Z+(A<<2)>>2]|0;b=G+(c+1<<2)|0;u=d+(A<<3)|0;c=a[G+(c<<2)>>2]|0;while(1){if((c|0)>=(a[b>>2]|0))break;r=m+(c<<2)|0;n=a[r>>2]|0;l=Q+(n<<2)|0;t=a[l>>2]|0;if((t|0)<(a[h>>2]|0)){a[l>>2]=f;a[v+(f<<2)>>2]=a[r>>2];s[e+(f<<3)>>3]=+s[w+(c<<3)>>3]*+s[u>>3];f=f+1|0}else{if((a[v+(t<<2)>>2]|0)!=(n|0))break i;B=e+(t<<3)|0;s[B>>3]=+s[B>>3]+ +s[w+(c<<3)>>3]*+s[u>>3]}c=c+1|0}A=A+1|0}a[g+(k<<2)>>2]=f;r=k}gA(95534,94943,1468,95512);break}case 2:{B=a[A+28>>2]|0;e=a[e+28>>2]|0;k=a[i+28>>2]|0;a[g>>2]=0;r=0;f=0;i:while(1){if((r|0)>=(C|0)){E=f;break e}o=r+1|0;h=I+(o<<2)|0;d=g+(r<<2)|0;w=a[I+(r<<2)>>2]|0;while(1){if((w|0)>=(a[h>>2]|0))break;c=a[Z+(w<<2)>>2]|0;b=G+(c+1<<2)|0;A=w<<1;u=B+(A<<3)|0;A=B+((A|1)<<3)|0;c=a[G+(c<<2)>>2]|0;while(1){if((c|0)>=(a[b>>2]|0))break;r=m+(c<<2)|0;n=a[r>>2]|0;l=Q+(n<<2)|0;t=a[l>>2]|0;if((t|0)<(a[d>>2]|0)){a[l>>2]=f;a[v+(f<<2)>>2]=a[r>>2];l=c<<1;n=e+(l<<3)|0;l=e+((l|1)<<3)|0;t=f<<1;s[k+(t<<3)>>3]=+s[n>>3]*+s[u>>3]-+s[l>>3]*+s[A>>3];s[k+((t|1)<<3)>>3]=+s[n>>3]*+s[A>>3]+ +s[l>>3]*+s[u>>3];f=f+1|0}else{if((a[v+(t<<2)>>2]|0)!=(n|0))break i;l=c<<1;n=e+(l<<3)|0;l=e+((l|1)<<3)|0;t=t<<1;r=k+(t<<3)|0;s[r>>3]=+s[r>>3]+ +s[n>>3]*+s[u>>3]-+s[l>>3]*+s[A>>3];t=k+((t|1)<<3)|0;s[t>>3]=+s[n>>3]*+s[A>>3]+ +s[l>>3]*+s[u>>3]+ +s[t>>3]}c=c+1|0}w=w+1|0}a[g+(o<<2)>>2]=f;r=o}gA(95534,94943,1497,95512);break}case 4:{d=a[A+28>>2]|0;w=a[e+28>>2]|0;e=a[i+28>>2]|0;a[g>>2]=0;r=0;f=0;i:while(1){if((f|0)>=(C|0)){E=r;break e}k=f+1|0;o=I+(k<<2)|0;h=g+(f<<2)|0;b=a[I+(f<<2)>>2]|0;while(1){if((b|0)>=(a[o>>2]|0))break;c=a[Z+(b<<2)>>2]|0;u=G+(c+1<<2)|0;A=d+(b<<2)|0;c=a[G+(c<<2)>>2]|0;while(1){if((c|0)>=(a[u>>2]|0))break;f=m+(c<<2)|0;n=a[f>>2]|0;l=Q+(n<<2)|0;t=a[l>>2]|0;if((t|0)<(a[h>>2]|0)){a[l>>2]=r;a[v+(r<<2)>>2]=a[f>>2];a[e+(r<<2)>>2]=U(a[w+(c<<2)>>2]|0,a[A>>2]|0)|0;r=r+1|0}else{if((a[v+(t<<2)>>2]|0)!=(n|0))break i;l=U(a[w+(c<<2)>>2]|0,a[A>>2]|0)|0;B=e+(t<<2)|0;a[B>>2]=(a[B>>2]|0)+l}c=c+1|0}b=b+1|0}a[g+(k<<2)>>2]=r;f=k}gA(95534,94943,1523,95512);break}case 8:{a[g>>2]=0;r=0;f=0;i:while(1){if((f|0)>=(C|0)){E=r;break e}A=f+1|0;w=I+(A<<2)|0;e=g+(f<<2)|0;b=a[I+(f<<2)>>2]|0;while(1){if((b|0)>=(a[w>>2]|0))break;c=a[Z+(b<<2)>>2]|0;u=G+(c+1<<2)|0;c=a[G+(c<<2)>>2]|0;while(1){if((c|0)>=(a[u>>2]|0))break;f=m+(c<<2)|0;n=a[f>>2]|0;l=Q+(n<<2)|0;t=a[l>>2]|0;if((t|0)>=(a[e>>2]|0)){if((a[v+(t<<2)>>2]|0)!=(n|0))break i}else{a[l>>2]=r;a[v+(r<<2)>>2]=a[f>>2];r=r+1|0}c=c+1|0}b=b+1|0}a[g+(A<<2)>>2]=r;f=A}gA(95534,94943,1543,95512);break}default:{rq(i);i=0;break A}}}while(0);a[i+8>>2]=E}}while(0);L2(Q)}else i=0;return i|0}function Jb(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0.0,V=0.0,J=0.0,p=0.0;z=a[A+20>>2]|0;Y=a[A+24>>2]|0;D=a[e+20>>2]|0;Q=a[e+24>>2]|0;L=a[i+20>>2]|0;y=a[i+24>>2]|0;W=a[A+32>>2]|0;if(!((W|0)==1?(W|0)==(a[e+32>>2]|0):0))gA(95005,94943,1574,95559);W=a[A>>2]|0;if(((((a[A+4>>2]|0)==(a[e>>2]|0)?(a[e+4>>2]|0)==(a[i>>2]|0):0)?(h=a[A+16>>2]|0,(h|0)==(a[e+16>>2]|0)):0)?(h|0)==(a[i+16>>2]|0):0)?(o=i+4|0,M=$F(a[o>>2]<<2)|0,(M|0)!=0):0){r=0;while(1){if((r|0)>=(a[o>>2]|0)){f=0;r=0;break}a[M+(r<<2)>>2]=-1;r=r+1|0}A:while(1){if((r|0)>=(W|0))break;u=r+1|0;w=z+(u<<2)|0;k=-2-r|0;b=a[z+(r<<2)>>2]|0;while(1){if((b|0)>=(a[w>>2]|0)){r=u;continue A}t=a[Y+(b<<2)>>2]|0;c=D+(t+1<<2)|0;t=a[D+(t<<2)>>2]|0;while(1){if((t|0)>=(a[c>>2]|0))break;n=a[Q+(t<<2)>>2]|0;l=L+(n+1<<2)|0;n=a[L+(n<<2)>>2]|0;while(1){if((n|0)>=(a[l>>2]|0))break;r=M+(a[y+(n<<2)>>2]<<2)|0;if((a[r>>2]|0)!=(k|0)){a[r>>2]=k;f=f+1|0}n=n+1|0}t=t+1|0}b=b+1|0}}r=fq(W,a[o>>2]|0,f,h,1)|0;A:do{if(!r)r=0;else{Z=a[r+20>>2]|0;G=a[r+24>>2]|0;e:do{switch(h|0){case 1:{E=a[A+28>>2]|0;v=a[e+28>>2]|0;i=a[i+28>>2]|0;d=a[r+28>>2]|0;a[Z>>2]=0;f=0;n=0;i:while(1){if((f|0)>=(W|0)){m=n;break e}B=f+1|0;g=z+(B<<2)|0;e=Z+(f<<2)|0;h=a[z+(f<<2)>>2]|0;while(1){if((h|0)>=(a[g>>2]|0))break;k=a[Y+(h<<2)>>2]|0;o=D+(k+1<<2)|0;A=E+(h<<3)|0;k=a[D+(k<<2)>>2]|0;while(1){if((k|0)>=(a[o>>2]|0))break;b=a[Q+(k<<2)>>2]|0;u=L+(b+1<<2)|0;w=v+(k<<3)|0;b=a[L+(b<<2)>>2]|0;while(1){if((b|0)>=(a[u>>2]|0))break;f=y+(b<<2)|0;l=a[f>>2]|0;t=M+(l<<2)|0;c=a[t>>2]|0;if((c|0)<(a[e>>2]|0)){a[t>>2]=n;a[G+(n<<2)>>2]=a[f>>2];s[d+(n<<3)>>3]=+s[w>>3]*+s[A>>3]*+s[i+(b<<3)>>3];n=n+1|0}else{if((a[G+(c<<2)>>2]|0)!=(l|0))break i;I=d+(c<<3)|0;s[I>>3]=+s[I>>3]+ +s[w>>3]*+s[A>>3]*+s[i+(b<<3)>>3]}b=b+1|0}k=k+1|0}h=h+1|0}a[Z+(B<<2)>>2]=n;f=B}gA(95582,94943,1642,95559);break}case 2:{I=a[A+28>>2]|0;C=a[e+28>>2]|0;d=a[i+28>>2]|0;B=a[r+28>>2]|0;a[Z>>2]=0;f=0;n=0;i:while(1){if((n|0)>=(W|0)){m=f;break e}g=n+1|0;v=z+(g<<2)|0;E=Z+(n<<2)|0;A=a[z+(n<<2)>>2]|0;while(1){if((A|0)>=(a[v>>2]|0))break;u=a[Y+(A<<2)>>2]|0;h=D+(u+1<<2)|0;i=A<<1;e=I+(i<<3)|0;i=I+((i|1)<<3)|0;u=a[D+(u<<2)>>2]|0;while(1){if((u|0)>=(a[h>>2]|0))break;b=a[Q+(u<<2)>>2]|0;w=L+(b+1<<2)|0;o=u<<1;k=C+(o<<3)|0;o=C+((o|1)<<3)|0;b=a[L+(b<<2)>>2]|0;while(1){if((b|0)>=(a[w>>2]|0))break;n=y+(b<<2)|0;l=a[n>>2]|0;t=M+(l<<2)|0;c=a[t>>2]|0;if((c|0)<(a[E>>2]|0)){a[t>>2]=f;a[G+(f<<2)>>2]=a[n>>2];V=+s[e>>3];J=+s[k>>3];F=+s[i>>3];p=+s[o>>3];t=b<<1;l=d+(t<<3)|0;t=d+((t|1)<<3)|0;c=f<<1;s[B+(c<<3)>>3]=(J*V-p*F)*+s[l>>3]-(p*V+F*J)*+s[t>>3];J=+s[e>>3];F=+s[o>>3];V=+s[i>>3];p=+s[k>>3];s[B+((c|1)<<3)>>3]=(p*V+F*J)*+s[l>>3]+(p*J-V*F)*+s[t>>3];f=f+1|0}else{if((a[G+(c<<2)>>2]|0)!=(l|0))break i;J=+s[e>>3];V=+s[k>>3];p=+s[i>>3];F=+s[o>>3];t=b<<1;l=d+(t<<3)|0;t=d+((t|1)<<3)|0;c=c<<1;n=B+(c<<3)|0;s[n>>3]=+s[n>>3]+(V*J-F*p)*+s[l>>3]-(F*J+p*V)*+s[t>>3];V=+s[e>>3];p=+s[o>>3];J=+s[i>>3];F=+s[k>>3];c=B+((c|1)<<3)|0;s[c>>3]=(F*J+p*V)*+s[l>>3]+(F*V-J*p)*+s[t>>3]+ +s[c>>3]}b=b+1|0}u=u+1|0}A=A+1|0}a[Z+(g<<2)>>2]=f;n=g}gA(95582,94943,1674,95559);break}case 4:{E=a[A+28>>2]|0;v=a[e+28>>2]|0;e=a[i+28>>2]|0;i=a[r+28>>2]|0;a[Z>>2]=0;f=0;n=0;i:while(1){if((n|0)>=(W|0)){m=f;break e}d=n+1|0;B=z+(d<<2)|0;g=Z+(n<<2)|0;o=a[z+(n<<2)>>2]|0;while(1){if((o|0)>=(a[B>>2]|0))break;u=a[Y+(o<<2)>>2]|0;A=D+(u+1<<2)|0;h=E+(o<<2)|0;u=a[D+(u<<2)>>2]|0;while(1){if((u|0)>=(a[A>>2]|0))break;b=a[Q+(u<<2)>>2]|0;w=L+(b+1<<2)|0;k=v+(u<<2)|0;b=a[L+(b<<2)>>2]|0;while(1){if((b|0)>=(a[w>>2]|0))break;n=y+(b<<2)|0;l=a[n>>2]|0;t=M+(l<<2)|0;c=a[t>>2]|0;if((c|0)<(a[g>>2]|0)){a[t>>2]=f;a[G+(f<<2)>>2]=a[n>>2];C=U(a[k>>2]|0,a[h>>2]|0)|0;C=U(C,a[e+(b<<2)>>2]|0)|0;I=i+(f<<2)|0;a[I>>2]=(a[I>>2]|0)+C;f=f+1|0}else{if((a[G+(c<<2)>>2]|0)!=(l|0))break i;C=U(a[k>>2]|0,a[h>>2]|0)|0;C=U(C,a[e+(b<<2)>>2]|0)|0;I=i+(c<<2)|0;a[I>>2]=(a[I>>2]|0)+C}b=b+1|0}u=u+1|0}o=o+1|0}a[Z+(d<<2)>>2]=f;n=d}gA(95582,94943,1706,95559);break}case 8:{a[Z>>2]=0;f=0;n=0;i:while(1){if((n|0)>=(W|0)){m=f;break e}A=n+1|0;h=z+(A<<2)|0;e=Z+(n<<2)|0;k=a[z+(n<<2)>>2]|0;while(1){if((k|0)>=(a[h>>2]|0))break;u=a[Y+(k<<2)>>2]|0;o=D+(u+1<<2)|0;u=a[D+(u<<2)>>2]|0;while(1){if((u|0)>=(a[o>>2]|0))break;b=a[Q+(u<<2)>>2]|0;w=L+(b+1<<2)|0;b=a[L+(b<<2)>>2]|0;while(1){if((b|0)>=(a[w>>2]|0))break;n=y+(b<<2)|0;l=a[n>>2]|0;t=M+(l<<2)|0;c=a[t>>2]|0;if((c|0)>=(a[e>>2]|0)){if((a[G+(c<<2)>>2]|0)!=(l|0))break i}else{a[t>>2]=f;a[G+(f<<2)>>2]=a[n>>2];f=f+1|0}b=b+1|0}u=u+1|0}k=k+1|0}a[Z+(A<<2)>>2]=f;n=A}gA(95582,94943,1729,95559);break}default:{rq(r);r=0;break A}}}while(0);a[r+8>>2]=m}}while(0);L2(M)}else r=0;return r|0}function pb(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0;if((a[A+32>>2]|0)!=2)gA(95100,94943,1971,95607);if((e|0)>=1){l=a[A+8>>2]|0;n=l+e|0;if((n|0)>=(a[A+12>>2]|0))Nb(A,n+10|0)|0;t=l<<2;n=e<<2;W6((a[A+20>>2]|0)+t|0,i|0,n|0)|0;W6((a[A+24>>2]|0)+t|0,r|0,n|0)|0;n=a[A+40>>2]|0;if(n|0){t=U(n,e)|0;l=U(n,l)|0;W6((a[A+28>>2]|0)+l|0,f|0,t|0)|0}f=A+4|0;l=0;while(1){if((l|0)>=(e|0))break;n=a[i+(l<<2)>>2]|0;if((n|0)>=(a[A>>2]|0))a[A>>2]=n+1;n=a[r+(l<<2)>>2]|0;if((n|0)>=(a[f>>2]|0))a[f>>2]=n+1;l=l+1|0}t=A+8|0;a[t>>2]=(a[t>>2]|0)+e}return A|0}function Nb(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;if((a[A+32>>2]|0)==2){i=A+20|0;f=e<<2;a[i>>2]=eV(a[i>>2]|0,f)|0;i=A+24|0;a[i>>2]=eV(a[i>>2]|0,f)|0;i=a[A+40>>2]|0;if((i|0)>0){f=A+28|0;r=a[f>>2]|0;i=U(i,e)|0;if(!r)i=$F(i)|0;else i=eV(r,i)|0;a[f>>2]=i}}else{i=A+24|0;a[i>>2]=eV(a[i>>2]|0,e<<2)|0;i=a[A+40>>2]|0;if((i|0)>0){f=A+28|0;r=a[f>>2]|0;i=U(i,e)|0;if(!r)i=$F(i)|0;else i=eV(r,i)|0;a[f>>2]=i}}a[A+12>>2]=e;return A|0}function Rb(A){A=A|0;var e=0,i=0.0,r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0;A:do{if(!A)A=0;else{b=a[A+20>>2]|0;c=a[A+24>>2]|0;e:do{switch(a[A+16>>2]|0){case 1:{l=a[A+28>>2]|0;r=a[A>>2]|0;e=0;i:while(1){if((e|0)>=(r|0))break e;f=e+1|0;n=a[b+(f<<2)>>2]|0;e=a[b+(e<<2)>>2]|0;i=1.0/+(n-e|0);while(1){if((e|0)>=(n|0)){e=f;continue i}c=l+(e<<3)|0;s[c>>3]=+s[c>>3]*i;e=e+1|0}}}case 2:{f=a[A+28>>2]|0;n=a[A>>2]|0;e=0;i:while(1){if((e|0)>=(n|0))break e;l=e+1|0;t=a[b+(l<<2)>>2]|0;r=a[b+(e<<2)>>2]|0;i=1.0/+(t-r|0);while(1){if((r|0)>=(t|0)){e=l;continue i}if((a[c+(r<<2)>>2]|0)!=(e|0)){u=r<<1;w=f+(u<<3)|0;s[w>>3]=+s[w>>3]*i;u=f+((u|1)<<3)|0;s[u>>3]=+s[u>>3]*i}r=r+1|0}}}case 4:{gA(138394,94943,2192,95648);break}case 8:break;default:{A=0;break A}}}while(0)}}while(0);return A|0}function Xb(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;if((A|0)!=0?(e=A+8|0,i=a[e>>2]|0,r=a[A+4>>2]|0,(r|0)==(a[A>>2]|0)):0){n=a[A+24>>2]|0;A=a[A+20>>2]|0;f=fq(r,r,i,8,1)|0;W6(a[f+20>>2]|0,A|0,(r<<2)+4|0)|0;W6(a[f+24>>2]|0,n|0,i<<2|0)|0;a[f+8>>2]=a[e>>2];A=tq(f,1)|0;rq(f);A=kq(A)|0;r=A+8|0;i=$F(a[r>>2]<<3)|0;a[A+28>>2]=i;r=a[r>>2]|0;e=0;while(1){if((e|0)>=(r|0))break;s[i+(e<<3)>>3]=1.0;e=e+1|0}a[A+16>>2]=1;a[A+40>>2]=8}else A=0;return A|0}function Hb(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0;o=a[A+20>>2]|0;h=a[A+24>>2]|0;E=a[A+4>>2]|0;w=a[A>>2]|0;d=E<<2;B=$F(d)|0;g=$F(d+4|0)|0;v=$F(d)|0;d=$F(d)|0;k=g+4|0;A=0;while(1){if((A|0)>=(E|0))break;a[B+(A<<2)>>2]=0;A=A+1|0}a[k>>2]=E;A=0;while(1){if((A|0)>=(E|0)){l=1;s=0;break}a[v+(A<<2)>>2]=-1;A=A+1|0}A:while(1){if((s|0)>=(w|0))break;n=o+(s<<2)|0;b=s+1|0;u=o+(b<<2)|0;A=a[n>>2]|0;while(1){f=a[u>>2]|0;if((A|0)>=(f|0))break;c=k+(a[B+(a[h+(A<<2)>>2]<<2)>>2]<<2)|0;a[c>>2]=(a[c>>2]|0)+-1;A=A+1|0}A=l;c=a[n>>2]|0;while(1){if((c|0)>=(f|0)){l=A;s=b;continue A}l=h+(c<<2)|0;f=B+(a[l>>2]<<2)|0;t=a[f>>2]|0;n=v+(t<<2)|0;if((a[n>>2]|0)<(s|0)){a[n>>2]=s;f=k+(t<<2)|0;if(!(a[f>>2]|0)){a[f>>2]=1;n=A;A=t;f=d+(t<<2)|0}else{a[d+(t<<2)>>2]=A;a[k+(A<<2)>>2]=1;n=A+1|0;f=B+(a[l>>2]<<2)|0}a[f>>2]=A;A=n}else{t=d+(t<<2)|0;a[f>>2]=a[t>>2];t=k+(a[t>>2]<<2)|0;a[t>>2]=(a[t>>2]|0)+1}c=c+1|0;f=a[u>>2]|0}}a[g>>2]=0;A=0;f=0;while(1){if((A|0)>=(l|0))break;o=A+1|0;k=g+(o<<2)|0;h=(a[k>>2]|0)+f|0;a[k>>2]=h;A=o;f=h}a[i>>2]=d;A=0;while(1){if((A|0)>=(E|0)){A=l;break}h=g+(a[B+(A<<2)>>2]<<2)|0;i=a[h>>2]|0;a[h>>2]=i+1;a[d+(i<<2)>>2]=A;A=A+1|0}while(1){if((A|0)<=0)break;E=A+-1|0;a[g+(A<<2)>>2]=a[g+(E<<2)>>2];A=E}a[g>>2]=0;a[r>>2]=g;a[e>>2]=l;L2(v);L2(B);return}function Ub(){return+(+(a8()|0)*4.656612875245797e-10)}function xb(A){A=A|0;if((A|0)>1)return(a8()|0)%(A|0)|0|0;else gA(95682,95688,58,95698);return 0}function Tb(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;A:do{if((A|0)<1)e=0;else{e=$F(A<<2)|0;i=0;while(1){if((i|0)==(A|0))break;a[e+(i<<2)>>2]=i;i=i+1|0}while(1){if((A|0)<=1)break A;r=xb(A)|0;i=A+-1|0;n=e+(i<<2)|0;f=a[n>>2]|0;r=e+(r<<2)|0;a[n>>2]=a[r>>2];a[r>>2]=f;A=i}}}while(0);return e|0}function jb(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;r=0;while(1){if((r|0)>=(A|0))break;f=i+(r<<3)|0;s[f>>3]=+s[e+(r<<3)>>3]-+s[f>>3];r=r+1|0}return i|0}function Pb(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0.0,a=0.0;r=0;f=0.0;while(1){if((r|0)>=(A|0))break;a=+s[i+(r<<3)>>3]*+s[e+(r<<3)>>3]+f;r=r+1|0;f=a}return+f}function Sb(A,e,i,r){A=A|0;e=e|0;i=i|0;r=+r;var f=0,a=0;f=0;while(1){if((f|0)>=(A|0))break;a=i+(f<<3)|0;s[a>>3]=+s[a>>3]*r+ +s[e+(f<<3)>>3];f=f+1|0}return i|0}function Ob(A,e,i,r){A=A|0;e=e|0;i=i|0;r=+r;var f=0,a=0;f=0;while(1){if((f|0)>=(A|0))break;a=e+(f<<3)|0;s[a>>3]=+s[i+(f<<3)>>3]*r+ +s[a>>3];f=f+1|0}return e|0}function Kb(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,a=0,n=0.0;a=U(i,e)|0;r=U(r,e)|0;f=0.0;i=0;while(1){if((i|0)>=(e|0))break;n=+s[A+(i+a<<3)>>3]-+s[A+(i+r<<3)>>3];f=n*n+f;i=i+1|0}n=+z(+f);return+(n>1.0e-15?n:1.0e-15)}function _b(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,a=0,n=0.0;a=U(i,e)|0;r=U(r,e)|0;f=0.0;i=0;while(1){if((i|0)>=(e|0))break;n=+s[A+(i+a<<3)>>3]-+s[A+(i+r<<3)>>3];f=n*n+f;i=i+1|0}return+ +z(+f)}function qb(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0,a=0.0;r=0.0;f=0;while(1){if((f|0)>=(i|0))break;a=+s[A+(f<<3)>>3]-+s[e+(f<<3)>>3];r=a*a+r;f=f+1|0}return+ +z(+r)}function $b(A,e,i,r,f,a,n){A=+A;e=+e;i=+i;r=+r;f=f|0;a=a|0;n=n|0;var l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0.0,d=0,B=0.0;o=k;k=k+80|0;u=o+48|0;b=o+24|0;w=o;l=0;while(1){if((l|0)>=(a|0)){t=0;break}h=+s[n+(l<<3)>>3];s[u+(l<<3)>>3]=h;s[b+(l<<3)>>3]=h;l=l+1|0}while(1){if((t|0)>=(f|0))break;c=U(t,a)|0;l=0;while(1){if((l|0)>=(a|0))break;B=+s[n+(l+c<<3)>>3];d=u+(l<<3)|0;h=+s[d>>3];s[d>>3]=B >3];s[d>>3]=B>h?B:h;l=l+1|0}t=t+1|0}h=+s[b>>3]-+s[u>>3];i=h!=0.0?(i-A)/h:1.0;h=+s[b+8>>3]-+s[u+8>>3];B=(r-e)/h;i=h!=0.0?i>3]=A;s[w+8>>3]=e;s[w+16>>3]=0.0;t=0;while(1){if((t|0)>=(f|0))break;c=U(t,a)|0;l=0;while(1){if((l|0)>=(a|0))break;d=n+(l+c<<3)|0;s[d>>3]=(+s[d>>3]-+s[u+(l<<3)>>3])*i+ +s[w+(l<<3)>>3];l=l+1|0}t=t+1|0}k=o;return}function Au(A,e){A=A|0;e=e|0;if((gh(A)|0)==1){A=a[(a[(cd(A)|0)+16>>2]|0)+132>>2]|0;a[A>>2]=0;a[A+4>>2]=0;a[A+8>>2]=0;a[A+12>>2]=0}else{eu(A);if(!((vR(Ho(e,95704)|0)|0)<<24>>24))e=Jw(A,186208)|0;else e=iu(A)|0;jw(A,e,186208);ru(e)}return}function eu(A){A=A|0;var e=0;e=Id(a[a[(a[(cd(A)|0)+16>>2]|0)+112>>2]>>2]|0)|0;A=a[46925]|0;if((e|0)!=(A|0)){a[46555]=0;a[46925]=e;a[46926]=Yo(e,0,95713,0)|0;a[46927]=Yo(a[46925]|0,1,95721,0)|0;a[46928]=Yo(a[46925]|0,1,95738,0)|0;A=a[46925]|0}a[46929]=Ho(A,95738)|0;zw(186208);a[46554]=1;s[23280]=+oR(a[46925]|0,a[46926]|0,1.0,0.0);a[46556]=a[46927];a[46557]=a[46928];a[46558]=a[46929];return}function iu(A){A=A|0;var e=0,i=0,r=0,f=0;f=k;k=k+144|0;r=f;i=f+8|0;e=a[46555]|0;a[46555]=e+1;a[r>>2]=e;S4(i,96234,r)|0;i=Yw(NB(A,i,1)|0)|0;r=i+8|0;e=cd(A)|0;while(1){if(!e)break;kd(a[r>>2]|0,e,1)|0;a[(a[(a[e+16>>2]|0)+112>>2]|0)+12>>2]=i;e=sd(A,e)|0}k=f;return i|0}function ru(A){A=A|0;Tw(A);return}function fu(A,e){A=A|0;e=e|0;var i=0;i=$F(32)|0;a[i>>2]=4;s[i+8>>3]=.75;a[i+16>>2]=1073741824;a[i+20>>2]=1;a[i+24>>2]=A;a[i+28>>2]=e;return i|0}function au(A){A=A|0;L2(A);return}function nu(A){A=A|0;var e=0,i=0;if(!A)return;i=a[A+8>>2]|0;do{if(i|0){if(a[A>>2]|0){rq(i);e=a[A+12>>2]|0;if(!e)break;rq(e);break}if(a[A+36>>2]|0?(rq(i),e=a[A+12>>2]|0,e|0):0)rq(e)}}while(0);rq(a[A+16>>2]|0);rq(a[A+20>>2]|0);e=a[A+24>>2]|0;if(e|0?(a[A>>2]|0)>0:0)L2(e);nu(a[A+28>>2]|0);L2(A);return}function lu(A,e,i,r,f,n,l,t,c,b){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;t=t|0;c=c|0;b=b|0;var u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0.0,E=0;E=k;k=k+32|0;u=E+16|0;w=E+12|0;o=E+8|0;h=E+4|0;d=E;a[u>>2]=A;a[w>>2]=0;a[o>>2]=0;a[h>>2]=0;a[d>>2]=0;a[l>>2]=0;a[t>>2]=0;a[e>>2]=0;a[n>>2]=0;a[r>>2]=0;B=c+28|0;g=c+8|0;v=+(a[A+4>>2]|0);f=i;do{tu(A,u,f,w,0,d,o,h,c,b);f=a[u>>2]|0;if(!f)break;i=a[f+4>>2]|0;f=a[l>>2]|0;if(!f){a[l>>2]=a[o>>2];a[t>>2]=a[h>>2]}else{A=Vb(f,a[o>>2]|0)|0;rq(a[l>>2]|0);rq(a[o>>2]|0);a[l>>2]=A;A=Vb(a[h>>2]|0,a[t>>2]|0)|0;rq(a[t>>2]|0);rq(a[h>>2]|0);a[t>>2]=A}f=a[e>>2]|0;if(f|0)rq(f);a[e>>2]=a[u>>2];f=a[r>>2]|0;if(f|0)rq(f);f=a[w>>2]|0;a[r>>2]=f;A=a[n>>2]|0;if(A){L2(A);f=a[w>>2]|0}a[n>>2]=a[d>>2];A=a[u>>2]|0;a[d>>2]=0;if(!(+s[g>>3]*v<+(i|0)))break}while((a[B>>2]|0)==1);k=E;return}function tu(A,e,i,r,f,n,l,t,c,b){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;t=t|0;c=c|0;b=b|0;var u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0.0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0;D=k;k=k+32|0;y=D+28|0;h=D+24|0;Q=D+20|0;W=D+16|0;w=D+12|0;z=D+8|0;Y=D+4|0;E=D;a[y>>2]=0;a[h>>2]=0;a[W>>2]=0;a[z>>2]=0;a[Y>>2]=0;a[e>>2]=0;a[r>>2]=0;a[l>>2]=0;a[t>>2]=0;L=a[A>>2]|0;o=c+24|0;a[b>>2]=a[o>>2];u=a[o>>2]|0;A:do{switch(u|0){case 12:{a[o>>2]=3;a[b>>2]=3;tu(A,e,i,r,f,n,l,t,c,b);if((((a[e>>2]|0)==0?(a[o>>2]=4,a[b>>2]=4,tu(A,e,i,r,f,n,l,t,c,b),(a[e>>2]|0)==0):0)?(a[o>>2]=6,a[b>>2]=6,tu(A,e,i,r,f,n,l,t,c,b),(a[e>>2]|0)==0):0)?(a[o>>2]=9,a[b>>2]=9,tu(A,e,i,r,f,n,l,t,c,b),(a[e>>2]|0)==0):0){a[o>>2]=2;a[b>>2]=2;tu(A,e,i,r,f,n,l,t,c,b)}a[o>>2]=12;o=0;h=0;c=0;w=0;u=0;b=0;break}case 9:case 10:{i=a[c+20>>2]|0;if((u|0)==9)ou(A,i,W,w,Q);else hu(A,i,W,w,Q);v=a[A+20>>2]|0;E=a[A+24>>2]|0;g=a[w>>2]|0;if(!(a[c+28>>2]|0)){if((g|0)==(L|0)?1:+s[c+8>>3]*+(L|0)<+(g|0)){o=0;h=0;c=0;w=0;u=0;b=0;break A}}else if((g|0)==(L|0)){o=0;h=0;c=0;w=0;u=0;b=0;break A}if((g|0)>=(a[c>>2]|0)){G=a[Q>>2]|0;Z=G<<2;I=$F(Z)|0;Z=$F(Z)|0;G=$F(G<<3)|0;a[Q>>2]=0;B=a[W>>2]|0;d=0;w=0;e:while(1){if((d|0)>=(L|0))break;i=B+(d<<2)|0;if((a[i>>2]|0)!=-1){a[I+(w<<2)>>2]=d;a[Z+(a[Q>>2]<<2)>>2]=a[i>>2];h=a[Q>>2]|0;c=h+1|0;a[Q>>2]=c;s[G+(h<<3)>>3]=1.0;d=d+1|0;w=c;continue}u=a[v+(d<<2)>>2]|0;h=d+1|0;c=v+(h<<2)|0;o=a[c>>2]|0;i=0;b=u;while(1){if((b|0)>=(o|0))break;i=((a[B+(a[E+(b<<2)>>2]<<2)>>2]|0)>>>31^1)+i|0;b=b+1|0}C=1.0/+(i|0);i=o;while(1){if((u|0)>=(i|0)){d=h;continue e}b=E+(u<<2)|0;if((a[B+(a[b>>2]<<2)>>2]|0)>-1){a[I+(w<<2)>>2]=d;a[Z+(a[Q>>2]<<2)>>2]=a[B+(a[b>>2]<<2)>>2];i=a[Q>>2]|0;b=i+1|0;a[Q>>2]=b;s[G+(i<<3)>>3]=C;i=a[c>>2]|0}else b=w;u=u+1|0;w=b}}L=hq(w,L,g,I,Z,G,1,8)|0;a[l>>2]=L;L=iq(L)|0;a[t>>2]=L;l=Jb(L,A,a[l>>2]|0)|0;a[e>>2]=l;if(!l){o=G;h=Z;c=I;w=I;u=Z;b=G}else{Mb(a[t>>2]|0,f,n,0);o=a[e>>2]|0;h=o+36|0;a[h>>2]=a[h>>2]|3;a[e>>2]=kq(o)|0;a[r>>2]=0;o=G;h=Z;c=I;w=I;u=Z;b=G}}else{o=0;h=0;c=0;w=0;u=0;b=0}break}case 5:{m=26;break}case 1:{b=c+20|0;uu(A,a[b>>2]|0,y,h);i=a[o>>2]|0;if((i|0)==2){i=b;m=24}else m=25;break}case 2:{i=c+20|0;m=24;break}case 3:{cu(A,a[c+20>>2]|0,z,Y,E);m=12;break}case 4:{su(A,a[c+20>>2]|0,z,Y,E);m=12;break}case 6:{bu(A,z,Y,E);m=12;break}default:{o=0;h=0;c=0;w=0;u=0;b=0}}}while(0);do{if((m|0)==12){d=a[E>>2]|0;if(!(a[c+28>>2]|0)){if((d|0)==(L|0)?1:+s[c+8>>3]*+(L|0)<+(d|0)){o=0;h=0;c=0;w=0;u=0;b=0;break}}else if((d|0)==(L|0)){o=0;h=0;c=0;w=0;u=0;b=0;break}if((d|0)>=(a[c>>2]|0)){g=L<<2;B=$F(g)|0;g=$F(g)|0;v=$F(L<<3)|0;a[Q>>2]=0;w=a[Y>>2]|0;o=a[z>>2]|0;u=0;i=0;A:while(1){if((u|0)>=(a[E>>2]|0))break;h=u+1|0;c=w+(h<<2)|0;b=a[w+(u<<2)>>2]|0;while(1){if((b|0)>=(a[c>>2]|0)){u=h;continue A}a[B+(i<<2)>>2]=a[o+(b<<2)>>2];a[g+(a[Q>>2]<<2)>>2]=u;Z=a[Q>>2]|0;G=Z+1|0;a[Q>>2]=G;s[v+(Z<<3)>>3]=1.0;b=b+1|0;i=G}}L=hq(i,L,d,B,g,v,1,8)|0;a[l>>2]=L;a[t>>2]=iq(L)|0;a[r>>2]=0;l=Jb(a[t>>2]|0,A,a[l>>2]|0)|0;a[e>>2]=l;if(!l){o=v;h=g;c=B;w=B;u=g;b=v}else{Mb(a[t>>2]|0,f,n,0);a[t>>2]=Rb(a[t>>2]|0)|0;o=a[e>>2]|0;h=o+36|0;a[h>>2]=a[h>>2]|3;a[e>>2]=kq(o)|0;o=v;h=g;c=B;w=B;u=g;b=v}}else{o=0;h=0;c=0;w=0;u=0;b=0}}else if((m|0)==24){wu(A,a[i>>2]|0,y,h);i=a[o>>2]|0;m=25}}while(0);if((m|0)==25)if((i|0)==5)m=26;else m=27;if((m|0)==26){ku(A,a[c+20>>2]|0,y,h);m=27}do{if((m|0)==27){i=a[h>>2]|0;if(!(a[c+28>>2]|0)){if((i|0)==(L|0)?1:+s[c+8>>3]*+(L|0)<+(i|0)){o=0;h=0;c=0;w=0;u=0;b=0;break}}else if((i|0)==(L|0)){o=0;h=0;c=0;w=0;u=0;b=0;break}if((i|0)>=(a[c>>2]|0)){B=L<<2;d=$F(B)|0;B=$F(B)|0;g=$F(L<<3)|0;a[Q>>2]=0;h=a[y>>2]|0;i=0;o=0;while(1){if((o|0)>=(L|0))break;b=h+(o<<2)|0;u=a[b>>2]|0;if((u|0)>-1){a[d+(a[Q>>2]<<2)>>2]=o;a[B+(a[Q>>2]<<2)>>2]=i;m=a[Q>>2]|0;w=m+1|0;a[Q>>2]=w;s[g+(m<<3)>>3]=1.0;if((u|0)!=(o|0)){a[d+(w<<2)>>2]=a[b>>2];a[B+(a[Q>>2]<<2)>>2]=i;m=a[Q>>2]|0;a[Q>>2]=m+1;s[g+(m<<3)>>3]=1.0;a[h+(a[b>>2]<<2)>>2]=-1}a[b>>2]=-1;i=i+1|0}o=o+1|0}L=hq(a[Q>>2]|0,L,i,d,B,g,1,8)|0;a[l>>2]=L;L=iq(L)|0;a[t>>2]=L;l=Jb(L,A,a[l>>2]|0)|0;a[e>>2]=l;if(!l){o=g;h=B;c=d;w=d;u=B;b=g}else{Mb(a[t>>2]|0,f,n,0);a[t>>2]=Rb(a[t>>2]|0)|0;o=a[e>>2]|0;h=o+36|0;a[h>>2]=a[h>>2]|3;a[e>>2]=kq(o)|0;a[r>>2]=0;o=g;h=B;c=d;w=d;u=B;b=g}}else{o=0;h=0;c=0;w=0;u=0;b=0}}}while(0);i=a[y>>2]|0;if(i|0)L2(i);i=a[W>>2]|0;if(i|0)L2(i);if(c|0)L2(w);if(h|0)L2(u);if(o|0)L2(b);i=a[z>>2]|0;if(i|0)L2(i);i=a[Y>>2]|0;if(i|0)L2(i);k=D;return}function cu(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0.0,c=0,b=0,u=0,w=0,k=0.0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0;g=a[A+20>>2]|0;v=a[A+24>>2]|0;C=a[A>>2]|0;E=C<<2;a[i>>2]=$F(E)|0;a[r>>2]=$F(E+4|0)|0;E=$F(E)|0;n=0;while(1){if((n|0)>=(C|0))break;a[E+(n<<2)>>2]=n;n=n+1|0}a[f>>2]=0;d=a[r>>2]|0;a[d>>2]=0;B=a[A+28>>2]|0;A:do{if(!e){n=0;A=0;e:while(1){while(1){if((A|0)>=(C|0)){A=0;t=0.0;e=0;break e}e=A;A=A+1|0;if((a[E+(e<<2)>>2]|0)==-1)continue;e=a[g+(e<<2)>>2]|0;if(((a[g+(A<<2)>>2]|0)-e|0)==1)break}b=a[v+(e<<2)>>2]|0;a[E+(b<<2)>>2]=-1;u=a[i>>2]|0;a[u+(n<<2)>>2]=b;w=g+(b+1<<2)|0;c=a[g+(b<<2)>>2]|0;n=n+1|0;while(1){if((c|0)>=(a[w>>2]|0))break;e=v+(c<<2)|0;l=a[e>>2]|0;if((b|0)!=(l|0)?((a[g+(l+1<<2)>>2]|0)-(a[g+(l<<2)>>2]|0)|0)==1:0){a[E+(l<<2)>>2]=-1;a[u+(n<<2)>>2]=a[e>>2];n=n+1|0}c=c+1|0}e=a[f>>2]|0;l=a[d+(e<<2)>>2]|0;if((n-l|0)<5){r=e+1|0;a[f>>2]=r;a[d+(r<<2)>>2]=n;continue}l=l+1|0;e=e+1|0;a[f>>2]=e;a[d+(e<<2)>>2]=l;e=l;while(1){if(!((l|0)<(n|0)&(e|0)<(n|0)))continue e;r=l+3|0;r=(n|0)<(r|0)?n:r;h=(a[f>>2]|0)+1|0;a[f>>2]=h;a[d+(h<<2)>>2]=r;e=e+1|0;l=r}}e:while(1){do{w=e;while(1){if((w|0)>=(C|0)){A=0;break e}o=E+(w<<2)|0;l=a[o>>2]|0;if((l|0)!=-1)break;w=w+1|0}e=w+1|0;h=a[g+(e<<2)>>2]|0;b=1;u=a[g+(w<<2)>>2]|0;while(1){if((u|0)>=(h|0))break;c=a[v+(u<<2)>>2]|0;if((w|0)!=(c|0)?(a[E+(c<<2)>>2]|0)!=-1:0)if((l|0)!=-1){k=+s[B+(u<<3)>>3];if((b|0)==0?!(k>t):0)b=0;else{b=0;A=c;t=k}}else l=-1;u=u+1|0}}while((b|0)!=0);a[E+(A<<2)>>2]=-1;a[o>>2]=-1;h=a[i>>2]|0;a[h+(n<<2)>>2]=w;r=n+2|0;a[h+(n+1<<2)>>2]=A;h=(a[f>>2]|0)+1|0;a[f>>2]=h;a[d+(h<<2)>>2]=r;n=r}while(1){if((A|0)>=(C|0))break A;if((a[E+(A<<2)>>2]|0)==(A|0)){v=n+1|0;a[(a[i>>2]|0)+(n<<2)>>2]=A;n=(a[f>>2]|0)+1|0;a[f>>2]=n;a[d+(n<<2)>>2]=v;n=v}A=A+1|0}}else{d=Tb(C)|0;w=0;n=0;while(1){if((w|0)>=(C|0)){h=0;A=0;t=0.0;break}A=a[d+(w<<2)>>2]|0;e:do{if((a[E+(A<<2)>>2]|0)!=-1?(o=a[g+(A<<2)>>2]|0,((a[g+(A+1<<2)>>2]|0)-o|0)==1):0){c=a[v+(o<<2)>>2]|0;a[E+(c<<2)>>2]=-1;b=a[i>>2]|0;a[b+(n<<2)>>2]=c;u=g+(c+1<<2)|0;l=a[g+(c<<2)>>2]|0;n=n+1|0;while(1){if((l|0)>=(a[u>>2]|0))break;A=v+(l<<2)|0;e=a[A>>2]|0;if((c|0)!=(e|0)?((a[g+(e+1<<2)>>2]|0)-(a[g+(e<<2)>>2]|0)|0)==1:0){a[E+(e<<2)>>2]=-1;a[b+(n<<2)>>2]=a[A>>2];n=n+1|0}l=l+1|0}l=a[r>>2]|0;A=a[f>>2]|0;e=a[l+(A<<2)>>2]|0;if((n-e|0)<5){h=A+1|0;a[f>>2]=h;a[l+(h<<2)>>2]=n;break}e=e+1|0;A=A+1|0;a[f>>2]=A;a[l+(A<<2)>>2]=e;A=e;while(1){if(!((e|0)<(n|0)&(A|0)<(n|0)))break e;h=e+3|0;h=(n|0)<(h|0)?n:h;u=(a[f>>2]|0)+1|0;a[f>>2]=u;a[l+(u<<2)>>2]=h;A=A+1|0;e=h}}}while(0);w=w+1|0}while(1){if((h|0)>=(C|0)){A=0;break}u=a[d+(h<<2)>>2]|0;w=E+(u<<2)|0;e=a[w>>2]|0;if((e|0)!=-1){o=a[g+(u+1<<2)>>2]|0;c=1;b=a[g+(u<<2)>>2]|0;while(1){if((b|0)>=(o|0))break;l=a[v+(b<<2)>>2]|0;if((u|0)!=(l|0)?(a[E+(l<<2)>>2]|0)!=-1:0)if((e|0)!=-1){k=+s[B+(b<<3)>>3];if((c|0)==0?!(k>t):0)c=0;else{c=0;A=l;t=k}}else e=-1;b=b+1|0}if(!c){a[E+(A<<2)>>2]=-1;a[w>>2]=-1;w=a[i>>2]|0;a[w+(n<<2)>>2]=u;o=n+2|0;a[w+(n+1<<2)>>2]=A;w=a[r>>2]|0;n=(a[f>>2]|0)+1|0;a[f>>2]=n;a[w+(n<<2)>>2]=o;n=o}}h=h+1|0}while(1){if((A|0)>=(C|0))break;if((a[E+(A<<2)>>2]|0)==(A|0)){v=n+1|0;a[(a[i>>2]|0)+(n<<2)>>2]=A;g=a[r>>2]|0;n=(a[f>>2]|0)+1|0;a[f>>2]=n;a[g+(n<<2)>>2]=v;n=v}A=A+1|0}L2(d)}}while(0);L2(E);return}function su(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0.0,t=0,c=0,b=0,u=0,w=0.0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0;m=k;k=k+16|0;h=m+8|0;Z=m+4|0;G=m;a[Z>>2]=0;a[G>>2]=0;E=a[A+20>>2]|0;v=a[A+24>>2]|0;C=a[A>>2]|0;I=C<<2;a[i>>2]=$F(I)|0;a[r>>2]=$F(I+4|0)|0;I=$F(I)|0;n=0;while(1){if((n|0)>=(C|0))break;a[I+(n<<2)>>2]=n;n=n+1|0}Hb(A,h,Z,G);a[f>>2]=0;B=a[r>>2]|0;a[B>>2]=0;g=a[A+28>>2]|0;n=0;A=0;A:while(1){c=a[h>>2]|0;b=a[G>>2]|0;do{if((A|0)>=(c|0))break A;u=A;A=A+1|0;o=b+(A<<2)|0;t=a[o>>2]|0;u=a[b+(u<<2)>>2]|0}while((t-u|0)<2);b=a[Z>>2]|0;c=a[B+(a[f>>2]<<2)>>2]|0;while(1){if((u|0)>=(t|0))break;d=b+(u<<2)|0;a[I+(a[d>>2]<<2)>>2]=-1;t=n+1|0;a[(a[i>>2]|0)+(n<<2)>>2]=a[d>>2];if((t-c|0)>3){n=(a[f>>2]|0)+1|0;a[f>>2]=n;a[B+(n<<2)>>2]=t;n=t}else n=c;c=n;u=u+1|0;n=t;t=a[o>>2]|0}if((n|0)<=(c|0))continue;d=(a[f>>2]|0)+1|0;a[f>>2]=d;a[B+(d<<2)>>2]=n}A:do{if(!e){A=0;l=0.0;t=0;e:while(1){do{e=t;while(1){if((e|0)>=(C|0)){A=0;break e}h=I+(e<<2)|0;c=a[h>>2]|0;if((c|0)!=-1)break;e=e+1|0}t=e+1|0;d=a[E+(t<<2)>>2]|0;u=1;o=a[E+(e<<2)>>2]|0;while(1){if((o|0)>=(d|0))break;b=a[v+(o<<2)>>2]|0;if((e|0)!=(b|0)?(a[I+(b<<2)>>2]|0)!=-1:0)if((c|0)!=-1){w=+s[g+(o<<3)>>3];if((u|0)==0?!(w>l):0)u=0;else{u=0;A=b;l=w}}else c=-1;o=o+1|0}}while((u|0)!=0);a[I+(A<<2)>>2]=-1;a[h>>2]=-1;d=a[i>>2]|0;a[d+(n<<2)>>2]=e;r=n+2|0;a[d+(n+1<<2)>>2]=A;d=(a[f>>2]|0)+1|0;a[f>>2]=d;a[B+(d<<2)>>2]=r;n=r}while(1){if((A|0)>=(C|0))break A;if((a[I+(A<<2)>>2]|0)==(A|0)){E=n+1|0;a[(a[i>>2]|0)+(n<<2)>>2]=A;n=(a[f>>2]|0)+1|0;a[f>>2]=n;a[B+(n<<2)>>2]=E;n=E}A=A+1|0}}else{B=Tb(C)|0;d=0;A=0;l=0.0;while(1){if((d|0)>=(C|0)){A=0;break}o=a[B+(d<<2)>>2]|0;e=I+(o<<2)|0;t=a[e>>2]|0;if((t|0)!=-1){h=a[E+(o+1<<2)>>2]|0;b=1;u=a[E+(o<<2)>>2]|0;while(1){if((u|0)>=(h|0))break;c=a[v+(u<<2)>>2]|0;if((o|0)!=(c|0)?(a[I+(c<<2)>>2]|0)!=-1:0)if((t|0)!=-1){w=+s[g+(u<<3)>>3];if((b|0)==0?!(w>l):0)b=0;else{b=0;A=c;l=w}}else t=-1;u=u+1|0}if(!b){a[I+(A<<2)>>2]=-1;a[e>>2]=-1;e=a[i>>2]|0;a[e+(n<<2)>>2]=o;h=n+2|0;a[e+(n+1<<2)>>2]=A;e=a[r>>2]|0;n=(a[f>>2]|0)+1|0;a[f>>2]=n;a[e+(n<<2)>>2]=h;n=h}}d=d+1|0}while(1){if((A|0)>=(C|0))break;if((a[I+(A<<2)>>2]|0)==(A|0)){E=n+1|0;a[(a[i>>2]|0)+(n<<2)>>2]=A;v=a[r>>2]|0;n=(a[f>>2]|0)+1|0;a[f>>2]=n;a[v+(n<<2)>>2]=E;n=E}A=A+1|0}L2(B)}}while(0);L2(a[Z>>2]|0);L2(a[G>>2]|0);L2(I);k=m;return}function bu(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0;d=a[A+20>>2]|0;B=a[A+24>>2]|0;E=a[A>>2]|0;v=E<<2;a[e>>2]=$F(v)|0;a[i>>2]=$F(v+4|0)|0;v=$F(v)|0;h=$F(E<<4)|0;f=0;while(1){if((f|0)>=(E|0))break;a[v+(f<<2)>>2]=f;f=f+1|0}a[r>>2]=0;a[a[i>>2]>>2]=0;o=a[A+28>>2]|0;g=Tb(E)|0;f=0;u=0;while(1){if((u|0)>=(E|0)){k=0;break}A=a[g+(u<<2)>>2]|0;A:do{if((a[v+(A<<2)>>2]|0)!=-1?(w=a[d+(A<<2)>>2]|0,((a[d+(A+1<<2)>>2]|0)-w|0)==1):0){t=a[B+(w<<2)>>2]|0;a[v+(t<<2)>>2]=-1;c=a[e>>2]|0;a[c+(f<<2)>>2]=t;b=d+(t+1<<2)|0;l=a[d+(t<<2)>>2]|0;f=f+1|0;while(1){if((l|0)>=(a[b>>2]|0))break;A=B+(l<<2)|0;n=a[A>>2]|0;if((t|0)!=(n|0)?((a[d+(n+1<<2)>>2]|0)-(a[d+(n<<2)>>2]|0)|0)==1:0){a[v+(n<<2)>>2]=-1;a[c+(f<<2)>>2]=a[A>>2];f=f+1|0}l=l+1|0}l=a[i>>2]|0;A=a[r>>2]|0;n=a[l+(A<<2)>>2]|0;if((f-n|0)<5){k=A+1|0;a[r>>2]=k;a[l+(k<<2)>>2]=f;break}n=n+1|0;A=A+1|0;a[r>>2]=A;a[l+(A<<2)>>2]=n;A=n;while(1){if(!((n|0)<(f|0)&(A|0)<(f|0)))break A;k=n+3|0;k=(f|0)<(k|0)?f:k;b=(a[r>>2]|0)+1|0;a[r>>2]=b;a[l+(b<<2)>>2]=k;A=A+1|0;n=k}}}while(0);u=u+1|0}while(1){if((k|0)>=(E|0)){A=0;break}u=a[g+(k<<2)>>2]|0;w=v+(u<<2)|0;A=a[w>>2]|0;if((A|0)!=-1){b=a[d+(u+1<<2)>>2]|0;n=0;c=a[d+(u<<2)>>2]|0;while(1){if((c|0)>=(b|0))break;t=a[B+(c<<2)>>2]|0;if((u|0)!=(t|0)?(a[v+(t<<2)>>2]|0)!=-1:0){l=n<<1;if((A|0)==-1)A=-1;else{s[h+(l<<3)>>3]=+(t|0);s[h+((l|1)<<3)>>3]=+s[o+(c<<3)>>3];n=n+1|0}}c=c+1|0}if((n|0)>0){K4(h,n,16,81);n=(n|0)<3?n:3;A=0;while(1){if((A|0)>=(n|0))break;b=~~+s[h+(A<<1<<3)>>3];a[v+(b<<2)>>2]=-1;a[(a[e>>2]|0)+(f<<2)>>2]=b;A=A+1|0;f=f+1|0}a[w>>2]=-1;w=f+1|0;a[(a[e>>2]|0)+(f<<2)>>2]=u;u=a[i>>2]|0;f=(a[r>>2]|0)+1|0;a[r>>2]=f;a[u+(f<<2)>>2]=w;f=w}}k=k+1|0}while(1){if((A|0)>=(E|0))break;if((a[v+(A<<2)>>2]|0)==(A|0)){B=f+1|0;a[(a[e>>2]|0)+(f<<2)>>2]=A;d=a[i>>2]|0;f=(a[r>>2]|0)+1|0;a[r>>2]=f;a[d+(f<<2)>>2]=B;f=B}A=A+1|0}L2(g);L2(v);return}function uu(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0;o=a[A+20>>2]|0;h=a[A+24>>2]|0;d=a[A>>2]|0;f=a[A+4>>2]|0;s=$F(d<<2)|0;a[i>>2]=s;A=0;while(1){if((A|0)>=(d|0))break;a[s+(A<<2)>>2]=A;A=A+1|0}a[r>>2]=f;A:do{if(!e){f=0;e:while(1){if((f|0)>=(d|0))break A;e=f+1|0;n=o+(e<<2)|0;l=s+(f<<2)|0;t=s+(f<<2)|0;A=a[o+(f<<2)>>2]|0;while(1){if((A|0)>=(a[n>>2]|0)){f=e;continue e}c=h+(A<<2)|0;i=a[c>>2]|0;if(((f|0)!=(i|0)?(k=s+(i<<2)|0,(a[k>>2]|0)==(i|0)):0)?(a[l>>2]|0)==(f|0):0){a[k>>2]=f;a[t>>2]=a[c>>2];a[r>>2]=(a[r>>2]|0)+-1}A=A+1|0}}}else{e=Tb(d)|0;A=0;while(1){if((A|0)>=(d|0))break;n=a[e+(A<<2)>>2]|0;l=o+(n+1<<2)|0;f=a[o+(n<<2)>>2]|0;while(1){if((f|0)>=(a[l>>2]|0))break;t=h+(f<<2)|0;c=a[t>>2]|0;if(((n|0)!=(c|0)?(b=a[i>>2]|0,u=b+(c<<2)|0,(a[u>>2]|0)==(c|0)):0)?(w=b+(n<<2)|0,(a[w>>2]|0)==(n|0)):0){a[u>>2]=n;a[w>>2]=a[t>>2];a[r>>2]=(a[r>>2]|0)+-1}f=f+1|0}A=A+1|0}L2(e)}}while(0);return}function wu(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0.0,t=0.0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0;d=a[A+20>>2]|0;B=a[A+24>>2]|0;g=a[A>>2]|0;n=a[A+4>>2]|0;k=$F(g<<2)|0;a[i>>2]=k;f=0;while(1){if((f|0)>=(g|0))break;a[k+(f<<2)>>2]=f;f=f+1|0}a[r>>2]=n;h=a[A+28>>2]|0;A:do{if(!e){f=0;l=0.0;c=0;while(1){if((c|0)>=(g|0))break A;b=c+1|0;u=a[d+(b<<2)>>2]|0;w=k+(c<<2)|0;n=1;e=a[d+(c<<2)>>2]|0;while(1){if((e|0)>=(u|0))break;A=a[B+(e<<2)>>2]|0;if(((c|0)!=(A|0)?(a[k+(A<<2)>>2]|0)==(A|0):0)?(a[w>>2]|0)==(c|0):0){t=+s[h+(e<<3)>>3];if((n|0)==0?!(t>l):0)n=0;else{n=0;f=A;l=t}}e=e+1|0}if(n|0){c=b;continue}a[k+(f<<2)>>2]=c;a[k+(c<<2)>>2]=f;a[r>>2]=(a[r>>2]|0)+-1;c=b}}else{o=Tb(g)|0;k=0;f=0;l=0.0;while(1){if((k|0)>=(g|0))break;c=a[o+(k<<2)>>2]|0;b=a[i>>2]|0;u=b+(c<<2)|0;if((a[u>>2]|0)==(c|0)){w=a[d+(c+1<<2)>>2]|0;e=a[d+(c<<2)>>2]|0;n=1;while(1){if((e|0)>=(w|0))break;A=a[B+(e<<2)>>2]|0;if((c|0)!=(A|0)?(a[b+(A<<2)>>2]|0)==(A|0):0){t=+s[h+(e<<3)>>3];if((n|0)==0?!(t>l):0)n=0;else{n=0;f=A;l=t}}e=e+1|0}if(!n){a[b+(f<<2)>>2]=c;a[u>>2]=f;a[r>>2]=(a[r>>2]|0)+-1}}k=k+1|0}L2(o)}}while(0);return}function ku(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0.0,t=0.0,c=0,b=0,u=0,w=0,k=0.0,o=0,h=0,d=0,B=0,g=0,v=0;B=a[A+20>>2]|0;g=a[A+24>>2]|0;v=a[A>>2]|0;n=a[A+4>>2]|0;o=$F(v<<2)|0;a[i>>2]=o;f=0;while(1){if((f|0)>=(v|0))break;a[o+(f<<2)>>2]=f;f=f+1|0}a[r>>2]=n;d=a[A+28>>2]|0;A:do{if(!e){f=0;l=0.0;c=0;while(1){if((c|0)>=(v|0))break A;e=a[B+(c<<2)>>2]|0;b=c+1|0;u=a[B+(b<<2)>>2]|0;w=o+(c<<2)|0;k=+(u-e|0);n=1;while(1){if((e|0)>=(u|0))break;A=a[g+(e<<2)>>2]|0;if(((c|0)!=(A|0)?(a[o+(A<<2)>>2]|0)==(A|0):0)?(a[w>>2]|0)==(c|0):0){t=+s[d+(e<<3)>>3]/(+((a[B+(A+1<<2)>>2]|0)-(a[B+(A<<2)>>2]|0)|0)*k);if((n|0)==0?!(t>l):0)n=0;else{n=0;f=A;l=t}}e=e+1|0}if(n|0){c=b;continue}a[o+(f<<2)>>2]=c;a[o+(c<<2)>>2]=f;a[r>>2]=(a[r>>2]|0)+-1;c=b}}else{h=Tb(v)|0;o=0;f=0;l=0.0;while(1){if((o|0)>=(v|0))break;c=a[h+(o<<2)>>2]|0;b=a[i>>2]|0;u=b+(c<<2)|0;if((a[u>>2]|0)==(c|0)){e=a[B+(c<<2)>>2]|0;w=a[B+(c+1<<2)>>2]|0;k=+(w-e|0);n=1;while(1){if((e|0)>=(w|0))break;A=a[g+(e<<2)>>2]|0;if((c|0)!=(A|0)?(a[b+(A<<2)>>2]|0)==(A|0):0){t=+s[d+(e<<3)>>3]/(+((a[B+(A+1<<2)>>2]|0)-(a[B+(A<<2)>>2]|0)|0)*k);if((n|0)==0?!(t>l):0)n=0;else{n=0;f=A;l=t}}e=e+1|0}if(!n){a[b+(f<<2)>>2]=c;a[u>>2]=f;a[r>>2]=(a[r>>2]|0)+-1}}o=o+1|0}L2(h)}}while(0);return}function ou(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;u=a[A+20>>2]|0;w=a[A+24>>2]|0;b=a[A>>2]|0;c=$F(b<<2)|0;a[i>>2]=c;A=0;while(1){if((A|0)>=(b|0))break;a[c+(A<<2)>>2]=-100;A=A+1|0}a[r>>2]=0;a[f>>2]=0;A:do{if(!e){e=0;e:while(1){if((e|0)>=(b|0))break A;if((a[c+(e<<2)>>2]|0)!=-100){e=e+1|0;continue}n=a[r>>2]|0;a[r>>2]=n+1;a[c+(e<<2)>>2]=n;n=e+1|0;l=u+(n<<2)|0;A=a[u+(e<<2)>>2]|0;while(1){if((A|0)>=(a[l>>2]|0)){e=n;continue e}t=a[w+(A<<2)>>2]|0;if((e|0)!=(t|0)){a[c+(t<<2)>>2]=-1;a[f>>2]=(a[f>>2]|0)+1}A=A+1|0}}}else{t=Tb(b)|0;l=0;while(1){if((l|0)>=(b|0))break;c=a[t+(l<<2)>>2]|0;s=a[i>>2]|0;A=s+(c<<2)|0;e:do{if((a[A>>2]|0)==-100){e=a[r>>2]|0;a[r>>2]=e+1;a[A>>2]=e;e=u+(c+1<<2)|0;A=a[u+(c<<2)>>2]|0;while(1){if((A|0)>=(a[e>>2]|0))break e;n=a[w+(A<<2)>>2]|0;if((c|0)!=(n|0)){a[s+(n<<2)>>2]=-1;a[f>>2]=(a[f>>2]|0)+1}A=A+1|0}}}while(0);l=l+1|0}L2(t)}}while(0);a[f>>2]=(a[f>>2]|0)+(a[r>>2]|0);return}function hu(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+16|0;u=h+4|0;w=h;o=a[A+20>>2]|0;b=a[A+24>>2]|0;l=a[A>>2]|0;A=$F(l<<2)|0;a[i>>2]=A;n=0;while(1){a[u>>2]=n;if((n|0)>=(l|0))break;a[A+(n<<2)>>2]=-100;n=(a[u>>2]|0)+1|0}a[r>>2]=0;a[f>>2]=0;s=Cu(l,(l<<1)+-2|0)|0;A:do{if(!e){A=0;while(1){a[u>>2]=A;if((A|0)>=(l|0))break A;c=A+1|0;Zu(s,A,(a[o+(c<<2)>>2]|0)-(a[o+(A<<2)>>2]|0)|0)|0;A=c}}else{n=Tb(l)|0;A=0;while(1){if((A|0)>=(l|0))break;c=a[n+(A<<2)>>2]|0;a[u>>2]=c;Zu(s,c,(a[o+(c+1<<2)>>2]|0)-(a[o+(c<<2)>>2]|0)|0)|0;A=A+1|0}L2(n)}}while(0);A:while(1){c=(Gu(s,u,w)|0)==0;A=a[r>>2]|0;if(c)break;a[r>>2]=A+1;a[(a[i>>2]|0)+(a[u>>2]<<2)>>2]=A;A=a[u>>2]|0;c=a[o+(A<<2)>>2]|0;while(1){if((c|0)>=(a[o+(A+1<<2)>>2]|0))continue A;t=a[b+(c<<2)>>2]|0;if((A|0)!=(t|0)){e:do{if((a[(a[i>>2]|0)+(t<<2)>>2]|0)==-100){Qu(s,t)|0;a[(a[i>>2]|0)+(t<<2)>>2]=-1;n=o+(t+1<<2)|0;A=a[o+(t<<2)>>2]|0;while(1){if((A|0)>=(a[n>>2]|0))break e;e=b+(A<<2)|0;l=a[e>>2]|0;if((t|0)!=(l|0)?(a[(a[i>>2]|0)+(l<<2)>>2]|0)==-100:0){l=mu(s,l)|0;a[w>>2]=l;Zu(s,a[e>>2]|0,l+1|0)|0}A=A+1|0}}}while(0);a[f>>2]=(a[f>>2]|0)+1;A=a[u>>2]|0}c=c+1|0}}a[f>>2]=(a[f>>2]|0)+A;Iu(s);k=h;return}function du(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;r=+s[A+8>>3];i=+s[e+8>>3];return(r>i?-1:r>2]|0)==1:0)f=A;else f=Xb(A)|0;do{if(!e)e=0;else{if(cq(e,0)|0?(a[e+16>>2]|0)==1:0)break;e=wq(e,0)|0}}while(0);i=gu(f,e,i)|0;e=vu(i,r)|0;if((f|0)!=(A|0))a[i+36>>2]=1;return e|0}function gu(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;if(!A)A=0;else{r=$F(44)|0;a[r>>2]=0;a[r+4>>2]=a[A+4>>2];a[r+8>>2]=A;a[r+12>>2]=e;a[r+16>>2]=0;a[r+20>>2]=0;a[r+24>>2]=i;a[r+28>>2]=0;a[r+32>>2]=0;a[r+36>>2]=0;A=r}return A|0}function vu(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+32|0;r=s+20|0;f=s+16|0;n=s+12|0;l=s+8|0;t=s+4|0;c=s;a[f>>2]=0;if((a[A>>2]|0)<((a[e+16>>2]|0)+-1|0)?(lu(a[A+8>>2]|0,t,a[A+12>>2]|0,c,0,f,n,l,e,r),i=a[t>>2]|0,i|0):0){t=a[c>>2]|0;c=gu(i,t,a[f>>2]|0)|0;a[A+28>>2]=c;a[c+40>>2]=a[r>>2];a[c>>2]=(a[A>>2]|0)+1;a[c+4>>2]=a[i>>2];a[c+8>>2]=i;a[c+12>>2]=t;a[c+16>>2]=a[n>>2];a[A+20>>2]=a[l>>2];a[c+32>>2]=A;vu(c,e)|0}k=s;return A|0}function Eu(A){A=A|0;var e=0;while(1){e=a[A+28>>2]|0;if(!e)break;else A=e}return A|0}function Cu(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;f=$F(28)|0;a[f>>2]=0;a[f+4>>2]=A;a[f+8>>2]=e;a[f+12>>2]=-1;r=f+16|0;a[r>>2]=$F((e<<2)+4|0)|0;i=0;while(1){if((i|0)>(e|0))break;a[(a[r>>2]|0)+(i<<2)>>2]=0;i=i+1|0}e=(A<<2)+4|0;r=f+20|0;a[r>>2]=$F(e)|0;i=0;while(1){if((i|0)>(A|0))break;a[(a[r>>2]|0)+(i<<2)>>2]=0;i=i+1|0}e=$F(e)|0;a[f+24>>2]=e;i=0;while(1){if((i|0)>(A|0))break;a[e+(i<<2)>>2]=-999;i=i+1|0}return f|0}function Iu(A){A=A|0;var e=0,i=0,r=0,f=0;if(A|0){r=A+16|0;e=a[r>>2]|0;if(e|0){f=A+8|0;i=0;while(1){if((i|0)>(a[f>>2]|0))break;Qw(a[e+(i<<2)>>2]|0,105);i=i+1|0;e=a[r>>2]|0}L2(e)}e=a[A+20>>2]|0;if(e|0)L2(e);L2(a[A+24>>2]|0);L2(A)}return}function Zu(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;n=A+8|0;c=A+20|0;t=A+24|0;s=A+16|0;if(!A)gA(138953,95743,69,95759);while(1){if((a[n>>2]|0)<(i|0)){l=4;break}r=(a[c>>2]|0)+(e<<2)|0;f=a[r>>2]|0;if(!f)break;b=a[(a[t>>2]|0)+(e<<2)>>2]|0;a[r>>2]=0;a[A>>2]=(a[A>>2]|0)+-1;Ww(f,105,(a[s>>2]|0)+(b<<2)|0)}if((l|0)==4)gA(95778,95743,70,95759);a[A>>2]=(a[A>>2]|0)+1;r=A+12|0;if((a[r>>2]|0)<(i|0))a[r>>2]=i;a[(a[t>>2]|0)+(e<<2)>>2]=i;r=$F(4)|0;a[r>>2]=e;f=a[(a[s>>2]|0)+(i<<2)>>2]|0;if(!f)r=mw(r)|0;else r=Lw(f,r)|0;a[(a[c>>2]|0)+(e<<2)>>2]=r;a[(a[s>>2]|0)+(i<<2)>>2]=r;return A|0}function Gu(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;if((A|0)!=0?(a[A>>2]|0)>=1:0){f=A+12|0;r=a[f>>2]|0;a[i>>2]=r;a[A>>2]=(a[A>>2]|0)+-1;i=A+16|0;n=a[(a[i>>2]|0)+(r<<2)>>2]|0;a[e>>2]=a[(yw(n)|0)>>2];Ww(n,105,(a[i>>2]|0)+(r<<2)|0);i=a[i>>2]|0;if(!(a[i+(r<<2)>>2]|0)){while(1){if((r|0)<=-1)break;if(a[i+(r<<2)>>2]|0)break;r=r+-1|0}a[f>>2]=r}r=a[e>>2]|0;a[(a[A+20>>2]|0)+(r<<2)>>2]=0;a[(a[A+24>>2]|0)+(r<<2)>>2]=-999;r=1}else r=0;return r|0}function mu(A,e){A=A|0;e=e|0;return a[(a[A+24>>2]|0)+(e<<2)>>2]|0}function Qu(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;if((A|0)!=0?(r=a[A>>2]|0,(r|0)>=1):0){l=A+24|0;i=a[(a[l>>2]|0)+(e<<2)>>2]|0;a[A>>2]=r+-1;f=A+20|0;r=A+16|0;Ww(a[(a[f>>2]|0)+(e<<2)>>2]|0,105,(a[r>>2]|0)+(i<<2)|0);A=A+12|0;if((i|0)==(a[A>>2]|0)?(n=a[r>>2]|0,(a[n+(i<<2)>>2]|0)==0):0){while(1){if((i|0)<=-1)break;if(a[n+(i<<2)>>2]|0)break;i=i+-1|0}a[A>>2]=i}a[(a[f>>2]|0)+(e<<2)>>2]=0;a[(a[l>>2]|0)+(e<<2)>>2]=-999;i=1}else i=0;return i|0}function Lu(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0.0,l=0,t=0,c=0.0,b=0.0,u=0,w=0.0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0;if(!(cq(A,0)|0))gA(95795,95831,260,95846);C=sq(A)|0;I=a[C+20>>2]|0;Z=a[C+24>>2]|0;r=C+16|0;A=C+28|0;if((a[r>>2]|0)==1)E=a[A>>2]|0;else{L2(a[A>>2]|0);a[r>>2]=1;E=$F(a[C+8>>2]<<3)|0;a[A>>2]=E}d=$F(a[C>>2]<<2)|0;A=0;while(1){r=a[C>>2]|0;if((A|0)>=(r|0)){h=0;A=r;break}a[d+(A<<2)>>2]=-1;A=A+1|0}A:while(1){if((h|0)>=(A|0)){n=0.0;c=0.0;f=0;v=0;g=A;break}o=h+1|0;l=I+(o<<2)|0;u=I+(h<<2)|0;t=(a[l>>2]|0)-(a[u>>2]|0)|0;a[d+(h<<2)>>2]=h;r=a[u>>2]|0;while(1){k=a[l>>2]|0;if((r|0)>=(k|0))break;A=a[Z+(r<<2)>>2]|0;if((h|0)!=(A|0))a[d+(A<<2)>>2]=h;r=r+1|0}w=+(t|0);r=a[u>>2]|0;while(1){if((r|0)>=(k|0))break;A=a[Z+(r<<2)>>2]|0;if((h|0)!=(A|0)){l=a[I+(A+1<<2)>>2]|0;A=a[I+(A<<2)>>2]|0;b=+(l-A|0)+w;while(1){if((A|0)>=(l|0))break;b=(a[d+(a[Z+(A<<2)>>2]<<2)>>2]|0)==(h|0)?b+-1.0:b;A=A+1|0}s[E+(r<<3)>>3]=b;if(!(b>0.0)){B=23;break A}}r=r+1|0}h=o;A=a[C>>2]|0}if((B|0)==23)gA(95868,95831,290,95846);while(1){if((v|0)>=(g|0))break;l=v+1|0;t=I+(l<<2)|0;r=a[I+(v<<2)>>2]|0;while(1){if((r|0)>=(a[t>>2]|0))break;A=a[Z+(r<<2)>>2]|0;if((v|0)==(A|0))A=f;else{c=+_b(i,e,v,A)+c;n=+s[E+(r<<3)>>3]+n;A=f+1|0}f=A;r=r+1|0}v=l;g=a[C>>2]|0}w=+(f|0);n=c/(n/w*w);A=0;A:while(1){if((A|0)>=(g|0))break;l=A+1|0;t=a[I+(l<<2)>>2]|0;r=a[I+(A<<2)>>2]|0;while(1){if((r|0)>=(t|0)){A=l;continue A}f=E+(r<<3)|0;if((A|0)!=(a[Z+(r<<2)>>2]|0))s[f>>3]=+s[f>>3]*n;r=r+1|0}}return C|0}function yu(A,e,i,r,f){A=A|0;e=e|0;i=+i;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0.0,o=0,h=0.0,d=0.0,B=0.0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,U=0.0,x=0.0;J=a[A>>2]|0;p=a[A+20>>2]|0;N=a[A+24>>2]|0;if(!(cq(A,0)|0))gA(95795,95831,333,95876);R=Lu(A,e,r)|0;X=$F(56)|0;H=X+32|0;s[H>>3]=1.0;a[X+20>>2]=0;a[X+24>>2]=0;s[X+40>>3]=.01;a[X+48>>2]=~~+z(+ +(a[A>>2]|0));n=J<<3;M=$F(n)|0;a[X+12>>2]=M;A=0;while(1){if((A|0)>=(J|0))break;s[M+(A<<3)>>3]=i;A=A+1|0}F=$F(J<<2)|0;D=$F(n)|0;t=0;while(1){if((t|0)>=(J|0)){w=0;break}c=D+(t<<3)|0;s[c>>3]=0.0;b=t+1|0;u=p+(b<<2)|0;l=a[p+(t<<2)>>2]|0;A=0;i=0.0;while(1){if((l|0)>=(a[u>>2]|0))break;n=a[N+(l<<2)>>2]|0;if((t|0)!=(n|0)){i=+_b(r,e,t,n);i=+s[c>>3]+i;s[c>>3]=i;A=A+1|0}l=l+1|0}if((A|0)<=0){o=14;break}s[c>>3]=i/+(A|0);t=b}if((o|0)==14)gA(95908,95831,358,95876);while(1){if((w|0)>=(J|0)){A=0;b=0;break}a[F+(w<<2)>>2]=-1;w=w+1|0}A:while(1){if((b|0)>=(J|0))break;a[F+(b<<2)>>2]=b;t=p+(b<<2)|0;u=b+1|0;w=p+(u<<2)|0;l=a[t>>2]|0;while(1){n=a[w>>2]|0;if((l|0)>=(n|0))break;n=F+(a[N+(l<<2)>>2]<<2)|0;if((a[n>>2]|0)!=(b|0)){a[n>>2]=b;A=A+1|0}l=l+1|0}c=a[t>>2]|0;while(1){if((c|0)>=(n|0)){b=u;continue A}l=a[N+(c<<2)>>2]|0;t=p+(l+1<<2)|0;l=a[p+(l<<2)>>2]|0;while(1){if((l|0)>=(a[t>>2]|0))break;n=F+(a[N+(l<<2)>>2]<<2)|0;if((a[n>>2]|0)!=(b|0)){a[n>>2]=b;A=A+1|0}l=l+1|0}c=c+1|0;n=a[w>>2]|0}}n=A+J|0;y=X+4|0;a[y>>2]=fq(J,J,n,1,1)|0;n=fq(J,J,n,1,1)|0;W=X+8|0;a[W>>2]=n;A=a[y>>2]|0;do{if(!((n|0)==0|(A|0)==0)){Q=a[A+20>>2]|0;m=a[A+24>>2]|0;Z=a[A+28>>2]|0;L=a[n+28>>2]|0;G=a[n+20>>2]|0;g=a[n+24>>2]|0;a[G>>2]=0;a[Q>>2]=0;i=0.0;k=0.0;o=0;l=0;A:while(1){if((o|0)>=(J|0)){o=58;break}v=o+J|0;a[F+(o<<2)>>2]=v;c=p+(o<<2)|0;E=o+1|0;C=p+(E<<2)|0;I=D+(o<<3)|0;h=0.0;d=0.0;t=a[c>>2]|0;while(1){A=a[C>>2]|0;if((t|0)>=(A|0))break;n=a[N+(t<<2)>>2]|0;A=F+(n<<2)|0;if((a[A>>2]|0)!=(v|0)){a[A>>2]=v;a[m+(l<<2)>>2]=n;switch(f|0){case 0:{B=1.0;break}case 1:{B=(+s[D+(n<<3)>>3]+ +s[I>>3])*.5;break}case 2:{B=+Y(+ +Kb(r,e,o,n),.4);break}default:{o=42;break A}}x=-1.0/(B*B);s[Z+(l<<3)>>3]=x;a[g+(l<<2)>>2]=n;U=x*B;w=L+(l<<3)|0;s[w>>3]=U;k=+_b(r,e,o,n)*U+k;U=+s[w>>3];l=l+1|0;h=x+h;d=U+d;i=U*B+i}t=t+1|0}w=a[c>>2]|0;while(1){if((w|0)>=(A|0))break;c=a[N+(w<<2)>>2]|0;b=p+(c+1<<2)|0;u=D+(c<<3)|0;t=a[p+(c<<2)>>2]|0;while(1){if((t|0)>=(a[b>>2]|0))break;n=N+(t<<2)|0;A=F+(a[n>>2]<<2)|0;if((a[A>>2]|0)!=(v|0)){a[A>>2]=v;switch(f|0){case 0:{B=2.0;break}case 1:{B=(+s[u>>3]*2.0+ +s[I>>3]+ +s[D+(a[n>>2]<<3)>>3])*.5;break}case 2:{B=+Y(+ +Kb(r,e,o,a[n>>2]|0),.4);break}default:{o=53;break A}}a[m+(l<<2)>>2]=a[n>>2];U=-1.0/(B*B);s[Z+(l<<3)>>3]=U;a[g+(l<<2)>>2]=a[n>>2];x=U*B;A=L+(l<<3)|0;s[A>>3]=x;k=+_b(r,e,a[n>>2]|0,c)*x+k;x=+s[A>>3];l=l+1|0;h=U+h;d=x+d;i=x*B+i}t=t+1|0}w=w+1|0;A=a[C>>2]|0}a[m+(l<<2)>>2]=o;I=M+(o<<3)|0;x=-(h*+s[I>>3]);s[I>>3]=x;s[Z+(l<<3)>>3]=x-h;a[g+(l<<2)>>2]=o;s[L+(l<<3)>>3]=-d;l=l+1|0;a[Q+(E<<2)>>2]=l;a[G+(E<<2)>>2]=l;o=E}if((o|0)==42){L3(95915,29,1,a[15712]|0)|0;gA(138394,95831,418,95876)}else if((o|0)==53){L3(95915,29,1,a[15712]|0)|0;gA(138394,95831,460,95876)}else if((o|0)==58){i=k/i;A=0;while(1){if((A|0)>=(l|0))break;N=L+(A<<3)|0;s[N>>3]=+s[N>>3]*i;A=A+1|0}s[H>>3]=i;a[(a[y>>2]|0)+8>>2]=l;a[(a[W>>2]|0)+8>>2]=l;L2(F);L2(D);rq(R);V=X;break}}else{Wu(X);V=0}}while(0);return V|0}function Wu(A){A=A|0;var e=0;if(A|0){e=a[A+4>>2]|0;if(e|0)rq(e);e=a[A+8>>2]|0;if(e|0)rq(e);e=a[A+12>>2]|0;if(e|0)L2(e);e=a[A+20>>2]|0;if(e|0)F5[a[A+16>>2]&127](e);L2(A)}return}function zu(A,e,i,r,f,n){A=A|0;e=e|0;i=+i;r=r|0;f=f|0;n=n|0;var l=0,t=0.0,c=0,b=0.0,u=0.0,w=0.0,k=0.0,o=0.0,h=0.0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0.0,N=0;V=a[A>>2]|0;if(cq(A,0)|0?(a[A+16>>2]|0)==1:0){c=U(V,e)|0;t=0.0;l=0;while(1){if((l|0)>=(c|0))break;h=+s[r+(l<<3)>>3];t=h*h+t;l=l+1|0}A:do{if(t==0.0){l=0;while(1){if((l|0)>=(c|0))break A;s[r+(l<<3)>>3]=+Ub()*72.0;l=l+1|0}}}while(0);W=a[A+20>>2]|0;Y=a[A+24>>2]|0;D=a[A+28>>2]|0;l=$F(56)|0;F=l+32|0;s[F>>3]=1.0;a[l+20>>2]=0;a[l+24>>2]=0;a[l>>2]=A;s[l+40>>3]=.01;a[l+48>>2]=~~+z(+ +(a[A>>2]|0));M=$F(V<<3)|0;a[l+12>>2]=M;c=0;while(1){if((c|0)>=(V|0))break;s[M+(c<<3)>>3]=i;c=c+1|0}A=(a[A+8>>2]|0)+V|0;L=l+4|0;a[L>>2]=fq(V,V,A,1,1)|0;A=fq(V,V,A,1,1)|0;y=l+8|0;a[y>>2]=A;c=a[L>>2]|0;if(!((A|0)==0|(c|0)==0)){I=a[c+20>>2]|0;Z=a[c+24>>2]|0;G=a[A+20>>2]|0;m=a[A+24>>2]|0;E=a[c+28>>2]|0;Q=a[A+28>>2]|0;a[G>>2]=0;a[I>>2]=0;o=0.0;h=0.0;C=0;B=0;A:while(1){if((B|0)>=(V|0))break;g=B+1|0;v=W+(g<<2)|0;b=0.0;u=0.0;d=a[W+(B<<2)>>2]|0;k=o;i=h;A=C;while(1){if((d|0)>=(a[v>>2]|0))break;c=a[Y+(d<<2)>>2]|0;if((c|0)==(B|0)){t=k;c=A}else{a[Z+(A<<2)>>2]=c;w=+s[D+(d<<3)>>3];switch(f|0){case 2:{t=w*w;t=t==0.0?-1.0e5:-1.0/t;break}case 1:{t=w*w==0.0?-1.0e5:-1.0/w;break}case 0:{t=-1.0;break}default:{J=23;break A}}s[E+(A<<3)>>3]=t;a[m+(A<<2)>>2]=c;p=t*w;N=Q+(A<<3)|0;s[N>>3]=p;i=+_b(r,e,B,c)*p+i;p=+s[N>>3];b=t+b;u=p+u;t=p*w+k;c=A+1|0}d=d+1|0;k=t;A=c}a[Z+(A<<2)>>2]=B;C=M+(B<<3)|0;o=-(b*+s[C>>3]);s[C>>3]=o;s[E+(A<<3)>>3]=o-b;a[m+(A<<2)>>2]=B;s[Q+(A<<3)>>3]=-u;C=A+1|0;a[I+(g<<2)>>2]=C;a[G+(g<<2)>>2]=C;o=k;h=i;B=g}if((J|0)==23)gA(138394,95831,591,96012);t=(n|0)==0?1.0:h/o;if(t==0.0)l=0;else{c=0;while(1){if((c|0)>=(C|0))break;N=Q+(c<<3)|0;s[N>>3]=+s[N>>3]*t;c=c+1|0}s[F>>3]=t;a[(a[L>>2]|0)+8>>2]=C;a[(a[y>>2]|0)+8>>2]=C}}else{Wu(l);l=0}return l|0}gA(95945,95831,525,96012);return 0}function Yu(A){A=A|0;Wu(A);return}function Du(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=+f;return+ +Mu(A,e,i,r,f)}function Mu(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=+f;var n=0,l=0,t=0.0,c=0,b=0,u=0,w=0,o=0.0,h=0,d=0.0,B=0.0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0.0,Q=0.0,L=0,y=0,W=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,x=0,T=0,j=0;T=k;k=k+16|0;X=T+12|0;x=T+8|0;u=T+4|0;c=T;b=a[A+4>>2]|0;l=a[A+8>>2]|0;a[X>>2]=0;a[x>>2]=0;a[u>>2]=0;V=a[A+12>>2]|0;a[c>>2]=0;J=sq(l)|0;p=a[b>>2]|0;N=U(p,e)|0;n=N<<3;H=$F(n)|0;if((H|0)!=0?(R=U(e<<3,p)|0,W6(H|0,i|0,R|0)|0,F=$F(n)|0,a[x>>2]=F,(F|0)!=0):0){M=a[l+20>>2]|0;F=a[l+24>>2]|0;y=a[l+28>>2]|0;W=a[J+28>>2]|0;Y=a[b+28>>2]|0;D=A+24|0;switch(a[D>>2]|0){case 1:{Fu(a[A+20>>2]|0,p,e,i,c,u);n=a[c>>2]|0;if(!n){m=0.0;Q=0.0;n=0}else{b=bq(b,n)|0;m=0.0;Q=0.0}break}case 2:{n=a[A+20>>2]|0;m=+s[n+8>>3];Q=+s[n>>3];n=0;break}default:{m=0.0;Q=0.0;n=0}}Z=(V|0)==0;G=A+40|0;I=A+48|0;l=a[u>>2]|0;t=1.0;c=0;A:while(1){C=c+1|0;if(!((c|0)<(r|0)&t>f))break;e:do{if((a[D>>2]|0)==4){u=a[x>>2]|0;c=0;while(1){if((c|0)>=(p|0))break e;w=U(c,e)|0;A=0;while(1){if((A|0)>=(e|0))break;s[u+(A+w<<3)>>3]=0.0;A=A+1|0}c=c+1|0}}else{h=0;while(1){if((h|0)>=(p|0))break;v=h+1|0;E=M+(v<<2)|0;o=0.0;g=a[M+(h<<2)>>2]|0;c=-1;while(1){if((g|0)>=(a[E>>2]|0))break;u=F+(g<<2)|0;A=a[u>>2]|0;if((h|0)==(A|0))c=g;else{B=+_b(i,e,h,A);w=y+(g<<3)|0;d=+s[w>>3];if(d==0.0)d=0.0;else{if(B==0.0){d=d/+s[Y+(g<<3)>>3]*.0001;A=0;while(1){if((A|0)>=(e|0))break;B=d*(+Ub()+.0001);j=i+((U(a[u>>2]|0,e)|0)+A<<3)|0;s[j>>3]=B+ +s[j>>3];A=A+1|0}B=+_b(i,e,h,a[u>>2]|0);d=+s[w>>3]}d=d/B}s[W+(g<<3)>>3]=d;o=d+o}g=g+1|0}if((c|0)<=-1){L=25;break A}s[W+(c<<3)>>3]=-o;h=v}zb(J,0,i,0,x,0,e)}}while(0);e:do{if(!Z){u=a[x>>2]|0;c=0;while(1){if((c|0)>=(p|0))break e;w=V+(c<<3)|0;h=U(c,e)|0;A=0;while(1){if((A|0)>=(e|0))break;E=A+h|0;j=u+(E<<3)|0;s[j>>3]=+s[j>>3]+ +s[H+(E<<3)>>3]*+s[w>>3];A=A+1|0}c=c+1|0}}}while(0);e:do{switch(a[D>>2]|0){case 1:{c=a[x>>2]|0;A=0;while(1){if((A|0)>=(p|0)){L=50;break e}w=U(A,e)|0;u=0;while(1){if((u|0)>=(e|0))break;L=u+w|0;j=c+(L<<3)|0;s[j>>3]=+s[j>>3]+ +s[l+(L<<3)>>3];u=u+1|0}A=A+1|0}}case 2:{Vu(p,e,i,a[x>>2]|0,Q,m);c=a[x>>2]|0;o=+s[G>>3];A=a[I>>2]|0;if((a[D>>2]|0)==2)Ju(b,Q,e,i,c,o,A,X);else L=51;break}default:{c=a[x>>2]|0;L=50}}}while(0);if((L|0)==50){o=+s[G>>3];A=a[I>>2]|0;L=51}if((L|0)==51){L=0;+fw(b,e,i,c,o,A,0,X)}if(a[X>>2]|0)break;t=+pu(p,e,i,a[x>>2]|0);t=t/+z(+ +Pb(N,i,i));W6(i|0,a[x>>2]|0,R|0)|0;c=C}if((L|0)==25)gA(96049,95831,895,96060);rq(J);if(n){rq(n);rq(b)}}else{rq(J);t=1.0;l=0}L2(H);n=a[x>>2]|0;if(n|0)L2(n);if(l|0)L2(l);k=T;return+t}function Fu(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0.0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0.0,g=0,v=0,E=0,C=0.0,I=0,Z=0,G=0,m=0,Q=0.0;o=a[A+8>>2]|0;m=a[A+12>>2]|0;I=a[A+16>>2]|0;G=a[A+32>>2]|0;Z=a[G+20>>2]|0;G=a[G+24>>2]|0;b=A+20|0;d=a[b>>2]|0;u=A+24|0;h=a[u>>2]|0;w=A+28|0;k=a[w>>2]|0;C=+s[A>>3];A:do{if((o|2|0)==3){if(!d){if((h|0)!=0|(k|0)!=0)gA(96094,95831,692,96111);else{l=0;t=0}while(1){if((l|0)>=(m|0))break;E=a[I+(l<<2)>>2]|0;B=+((a[Z+(E+1<<2)>>2]|0)-(a[Z+(E<<2)>>2]|0)|0)+1.0;l=l+1|0;t=t+~~(B*B)|0}h=t<<2;d=$F(h)|0;a[b>>2]=d;h=$F(h)|0;a[u>>2]=h;k=$F(t<<3)|0;a[w>>2]=k}v=0;A=0;while(1){if((v|0)>=(m|0))break;o=a[I+(v<<2)>>2]|0;g=Z+(o<<2)|0;t=a[g>>2]|0;l=a[G+(t<<2)>>2]|0;t=a[G+(t+1<<2)>>2]|0;e:do{if((l|0)!=(t|0)){Q=+Kb(r,i,l,t);Q=Q*Q;w=Z+(o+1<<2)|0;B=+((a[w>>2]|0)-(a[g>>2]|0)|0);a[d+(A<<2)>>2]=o;a[h+(A<<2)>>2]=o;s[k+(A<<3)>>3]=C/Q;c=B*B*Q;B=-(C/(Q*B));t=a[g>>2]|0;while(1){A=A+1|0;l=a[w>>2]|0;if((t|0)>=(l|0))break;a[d+(A<<2)>>2]=o;a[h+(A<<2)>>2]=a[G+(t<<2)>>2];s[k+(A<<3)>>3]=B;t=t+1|0}c=C/c;u=a[g>>2]|0;while(1){if((u|0)>=(l|0))break e;b=a[G+(u<<2)>>2]|0;a[d+(A<<2)>>2]=b;a[h+(A<<2)>>2]=o;s[k+(A<<3)>>3]=B;t=a[g>>2]|0;while(1){A=A+1|0;l=a[w>>2]|0;if((t|0)>=(l|0))break;E=a[G+(t<<2)>>2]|0;a[d+(A<<2)>>2]=b;a[h+(A<<2)>>2]=E;s[k+(A<<3)>>3]=c;t=t+1|0}u=u+1|0}}}while(0);v=v+1|0}l=hq(A,e,e,d,h,k,1,8)|0;A=0}else{switch(o|0){case 2:case 4:break;default:{l=0;A=0;break A}}do{if(!d)if((h|0)!=0|(k|0)!=0)gA(96094,95831,734,96111);else{v=m<<2;E=$F(v)|0;a[b>>2]=E;v=$F(v)|0;a[u>>2]=v;g=$F(m<<3)|0;a[w>>2]=g;break}else{g=k;v=h;E=d}}while(0);A=$F(U(e<<3,i)|0)|0;t=U(i,e)|0;l=0;while(1){if((l|0)>=(t|0)){k=0;break}s[A+(l<<3)>>3]=0.0;l=l+1|0}while(1){if((k|0)>=(m|0))break;o=a[I+(k<<2)>>2]|0;b=Z+(o<<2)|0;u=a[b>>2]|0;c=+Kb(r,i,a[G+(u<<2)>>2]|0,a[G+(u+1<<2)>>2]|0);a[E+(k<<2)>>2]=o;a[v+(k<<2)>>2]=o;c=C/c;s[g+(k<<3)>>3]=c;b=a[b>>2]|0;u=a[Z+(o+1<<2)>>2]|0;o=U(o,i)|0;t=b;while(1){if((t|0)>=(u|0))break;w=U(a[G+(t<<2)>>2]|0,i)|0;l=0;while(1){if((l|0)>=(i|0))break;d=A+(l+o<<3)|0;s[d>>3]=+s[d>>3]+ +s[r+(l+w<<3)>>3];l=l+1|0}t=t+1|0}c=c*(1.0/+(u-b|0));l=0;while(1){if((l|0)>=(i|0))break;d=A+(l+o<<3)|0;s[d>>3]=c*+s[d>>3];l=l+1|0}k=k+1|0}l=hq(k,e,e,E,v,g,1,8)|0}}while(0);a[f>>2]=l;a[n>>2]=A;return}function Vu(A,e,i,r,f,a){A=A|0;e=e|0;i=i|0;r=r|0;f=+f;a=+a;var n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0.0,o=0;a=a*f;n=0;A:while(1){if((n|0)>=(A|0))break;b=n+1|0;u=U(n,e)|0;l=b;while(1){if((l|0)==(A|0)){n=b;continue A}c=U(l,e)|0;f=1.0/+Kb(i,e,n,l);t=0;while(1){if((t|0)>=(e|0))break;o=t+u|0;w=t+c|0;k=a*((+s[i+(o<<3)>>3]-+s[i+(w<<3)>>3])*f);o=r+(o<<3)|0;s[o>>3]=k+ +s[o>>3];w=r+(w<<3)|0;s[w>>3]=+s[w>>3]-k;t=t+1|0}l=l+1|0}}return}function Ju(A,e,i,r,f,n,l,t){A=A|0;e=+e;i=i|0;r=r|0;f=f|0;n=+n;l=l|0;t=t|0;var c=0,s=0;s=Pu(A,e)|0;c=qu(A,e)|0;+ew(s,c,a[A>>2]|0,i,r,f,n,l,t);return}function pu(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,a=0,n=0.0,l=0.0,t=0,c=0.0,b=0;a=0;l=0.0;while(1){if((a|0)>=(A|0))break;t=U(a,e)|0;f=0;n=0.0;while(1){if((f|0)>=(e|0))break;b=f+t|0;c=+s[r+(b<<3)>>3]-+s[i+(b<<3)>>3];f=f+1|0;n=c*c+n}a=a+1|0;l=+z(+n)+l}return+l}function Nu(A,e,i,r,f){A=A|0;e=e|0;i=+i;r=r|0;f=f|0;var n=0,l=0,t=0,c=0.0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0.0,g=0.0,v=0.0,E=0.0,C=0.0,I=0,Z=0,G=0,m=0,Q=0,L=0.0,y=0.0;m=a[A>>2]|0;o=a[A+20>>2]|0;h=a[A+24>>2]|0;if(!(cq(A,0)|0))gA(95795,95831,1034,96133);d=m<<3;Q=$F(d)|0;t=0;while(1){if((t|0)>=(m|0))break;u=Q+(t<<3)|0;s[u>>3]=0.0;w=t+1|0;k=o+(w<<2)|0;b=a[o+(t<<2)>>2]|0;n=0;c=0.0;while(1){if((b|0)>=(a[k>>2]|0))break;l=a[h+(b<<2)>>2]|0;if((t|0)!=(l|0)){c=+_b(r,e,t,l);c=+s[u>>3]+c;s[u>>3]=c;n=n+1|0}b=b+1|0}if((n|0)<=0){G=11;break}s[u>>3]=c/+(n|0);t=w}if((G|0)==11)gA(95908,95831,1046,96133);n=$F(56)|0;Z=n+32|0;s[Z>>3]=1.0;a[n+20>>2]=0;a[n+24>>2]=0;s[n+40>>3]=.01;a[n+48>>2]=~~+z(+ +(a[A>>2]|0));I=$F(d)|0;a[n+12>>2]=I;l=0;while(1){if((l|0)>=(m|0))break;s[I+(l<<3)>>3]=i;l=l+1|0}do{if((m|0)>2)if(!f){l=nw(m,e,r)|0;break}else{l=aw(m,e,r)|0;break}else l=sq(A)|0}while(0);f=n+4|0;a[f>>2]=bq(A,l)|0;rq(l);t=sq(a[f>>2]|0)|0;a[n+8>>2]=t;l=a[f>>2]|0;if((t|0)==0|(l|0)==0){Ru(n);n=0}else{d=a[l+20>>2]|0;h=a[l+24>>2]|0;o=a[l+28>>2]|0;f=a[t+28>>2]|0;E=0.0;C=0.0;u=0;while(1){if((u|0)>=(m|0))break;k=u+1|0;w=d+(k<<2)|0;v=0.0;i=0.0;t=-1;B=E;g=C;b=a[d+(u<<2)>>2]|0;while(1){if((b|0)>=(a[w>>2]|0))break;l=a[h+(b<<2)>>2]|0;if((l|0)==(u|0)){c=v;l=b}else{L=+Y(+ +Kb(r,e,u,l),.6);c=1.0/(L*L);s[o+(b<<3)>>3]=c;y=c*L;A=f+(b<<3)|0;s[A>>3]=y;g=y*+_b(r,e,u,l)+g;y=+s[A>>3];c=c+v;i=y+i;l=t;B=y*L+B}v=c;t=l;b=b+1|0}A=I+(u<<3)|0;c=-(v*+s[A>>3]);s[A>>3]=c;if((t|0)<=-1){G=31;break}s[o+(t<<3)>>3]=c-v;s[f+(t<<3)>>3]=-i;E=B;C=g;u=k}if((G|0)==31)gA(96154,95831,1112,96133);c=C/E;t=a[d+(m<<2)>>2]|0;l=0;while(1){if((l|0)>=(t|0))break;m=f+(l<<3)|0;s[m>>3]=+s[m>>3]*c;l=l+1|0}s[Z>>3]=c;L2(Q)}return n|0}function Ru(A){A=A|0;Wu(A);return}function Xu(A,e,i){A=A|0;e=e|0;i=i|0;+Mu(A,e,i,50,.001);return}function Hu(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0.0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0;G=a[A>>2]|0;m=a[A+20>>2]|0;Q=a[A+24>>2]|0;if(!(cq(A,0)|0))gA(95795,95831,1149,96165);E=Lu(A,e,r)|0;C=a[E+28>>2]|0;A=$F(8)|0;I=$F(G<<2)|0;Z=$F(G<<3)|0;l=0;while(1){if((l|0)>=(G|0)){k=0;break}b=Z+(l<<3)|0;s[b>>3]=0.0;u=l+1|0;w=m+(u<<2)|0;t=a[m+(l<<2)>>2]|0;f=0;c=0.0;while(1){if((t|0)>=(a[w>>2]|0))break;n=a[Q+(t<<2)>>2]|0;if((l|0)!=(n|0)){c=+_b(r,e,l,n);c=+s[b>>3]+c;s[b>>3]=c;f=f+1|0}t=t+1|0}if((f|0)<=0){o=11;break}s[b>>3]=c/+(f|0);l=u}if((o|0)==11)gA(95908,95831,1167,96165);while(1){if((k|0)>=(G|0)){u=0;f=0;break}a[I+(k<<2)>>2]=-1;k=k+1|0}A:while(1){if((u|0)>=(G|0))break;a[I+(u<<2)>>2]=u;t=m+(u<<2)|0;w=u+1|0;k=m+(w<<2)|0;l=a[t>>2]|0;while(1){n=a[k>>2]|0;if((l|0)>=(n|0))break;n=I+(a[Q+(l<<2)>>2]<<2)|0;if((a[n>>2]|0)!=(u|0)){a[n>>2]=u;f=f+1|0}l=l+1|0}b=a[t>>2]|0;while(1){if((b|0)>=(n|0)){u=w;continue A}l=a[Q+(b<<2)>>2]|0;t=m+(l+1<<2)|0;l=a[m+(l<<2)>>2]|0;while(1){if((l|0)>=(a[t>>2]|0))break;n=I+(a[Q+(l<<2)>>2]<<2)|0;if((a[n>>2]|0)!=(u|0)){a[n>>2]=u;f=f+1|0}l=l+1|0}b=b+1|0;n=a[k>>2]|0}}r=fq(G,G,f,1,1)|0;a[A>>2]=r;if(!r){Uu(A);A=0}else{o=a[r+20>>2]|0;h=a[r+24>>2]|0;d=a[r+28>>2]|0;a[o>>2]=0;n=0;f=0;while(1){if((n|0)>=(G|0))break;B=n+G|0;a[I+(n<<2)>>2]=B;b=m+(n<<2)|0;g=n+1|0;v=m+(g<<2)|0;e=Z+(n<<3)|0;t=a[b>>2]|0;while(1){n=a[v>>2]|0;if((t|0)>=(n|0))break;n=a[Q+(t<<2)>>2]|0;l=I+(n<<2)|0;if((a[l>>2]|0)!=(B|0)){a[l>>2]=B;a[h+(f<<2)>>2]=n;k=d+(f<<3)|0;s[k>>3]=(+s[Z+(n<<3)>>3]+ +s[e>>3])*.5;s[k>>3]=+s[C+(t<<3)>>3];f=f+1|0}t=t+1|0}k=a[b>>2]|0;while(1){if((k|0)>=(n|0))break;t=a[Q+(k<<2)>>2]|0;b=m+(t+1<<2)|0;u=Z+(t<<3)|0;w=C+(k<<3)|0;t=a[m+(t<<2)>>2]|0;while(1){if((t|0)>=(a[b>>2]|0))break;n=Q+(t<<2)|0;l=I+(a[n>>2]<<2)|0;if((a[l>>2]|0)!=(B|0)){a[l>>2]=B;a[h+(f<<2)>>2]=a[n>>2];l=d+(f<<3)|0;s[l>>3]=(+s[u>>3]*2.0+ +s[e>>3]+ +s[Z+(a[n>>2]<<3)>>3])*.5;s[l>>3]=+s[C+(t<<3)>>3]+ +s[w>>3];f=f+1|0}t=t+1|0}k=k+1|0;n=a[v>>2]|0}a[o+(g<<2)>>2]=f;n=g}a[r+8>>2]=f;m=JT()|0;Q=A+4|0;a[Q>>2]=m;W6(m|0,i|0,168)|0;Q=a[Q>>2]|0;a[Q+16>>2]=0;a[Q+40>>2]=1;m=Q+96|0;s[m>>3]=+s[m>>3]*.5;a[Q+80>>2]=20;L2(I);L2(Z);rq(E)}return A|0}function Uu(A){A=A|0;var e=0;if(A|0){e=a[A>>2]|0;if(e|0)rq(e);A=a[A+4>>2]|0;if(A|0)pT(A)}return}function xu(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0;n=k;k=k+16|0;l=n;a[l>>2]=0;aj(r,e,a[A>>2]|0,a[A+4>>2]|0,i,f,l);if(!(a[l>>2]|0)){k=n;return}else gA(96184,95831,1262,96190)}function Tu(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0;a[n>>2]=0;n=a[i+120>>2]|0;A:do{switch(n|0){case 5:case 6:{if((a[e>>2]|0)>2){e=Nu(e,A,0.0,f,(n|0)!=6&1)|0;Xu(e,A,f);Ru(e)}break}case 4:{n=0;while(1){if((n|0)==1)break A;t=Hu(e,A,i,f)|0;xu(t,e,r,A,f);Uu(t);n=n+1|0}}case 1:{i=0;l=6;break}case 2:{i=1;l=6;break}case 3:{i=2;l=6;break}default:{}}}while(0);A:do{if((l|0)==6){n=0;while(1){if((n|0)==1)break A;t=yu(e,A,.05,f,i)|0;+Mu(t,A,f,50,.001);Wu(t);n=n+1|0}}}while(0);return}function ju(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,n=0,l=0.0,t=0,c=0;c=k;k=k+16|0;n=c;a[n>>2]=i;t=a[A>>2]|0;A=a[t+8>>2]|0;l=+s[t>>3];t=a[A>>2]|0;Mb(A,e,n,0);A=0;f=0.0;while(1){if((A|0)>=(t|0))break;r=+s[e+(A<<3)>>3]+f;A=A+1|0;f=r}r=+(t|0);i=a[n>>2]|0;A=0;while(1){if((A|0)>=(t|0))break;n=i+(A<<3)|0;s[n>>3]=(+s[e+(A<<3)>>3]*r-f)*l+ +s[n>>3];A=A+1|0}k=c;return i|0}function Pu(A,e){A=A|0;e=+e;var i=0,r=0;i=$F(8)|0;r=$F(16)|0;a[i>>2]=r;s[r>>3]=e;a[r+8>>2]=A;a[i+4>>2]=25;return i|0}function Su(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;f=k;k=k+16|0;r=f;a[r>>2]=i;Mb(a[A>>2]|0,e,r,0);k=f;return a[r>>2]|0}function Ou(A){A=A|0;var e=0;e=$F(8)|0;a[e>>2]=A;a[e+4>>2]=26;return e|0}function Ku(A){A=A|0;if(A|0)L2(A);return}function _u(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;f=a[A>>2]|0;r=~~+s[f>>3];f=f+8|0;A=0;while(1){if((A|0)>=(r|0))break;s[i+(A<<3)>>3]=+s[f+(A<<3)>>3]*+s[e+(A<<3)>>3];A=A+1|0}return i|0}function qu(A,e){A=A|0;e=+e;var i=0,r=0,f=0,n=0,l=0,t=0.0,c=0,b=0,u=0,w=0.0,k=0,o=0,h=0.0;u=a[A>>2]|0;k=a[A+20>>2]|0;o=a[A+24>>2]|0;c=a[A+28>>2]|0;b=$F(8)|0;l=$F((u<<3)+8|0)|0;a[b>>2]=l;s[l>>3]=+(u|0);l=l+8|0;h=+(u+-1|0);t=1.0/h;e=h*e;A=0;A:while(1){if((A|0)>=(u|0))break;r=l+(A<<3)|0;s[r>>3]=t;f=A+1|0;n=a[k+(f<<2)>>2]|0;i=a[k+(A<<2)>>2]|0;while(1){if((i|0)>=(n|0)){A=f;continue A}if((A|0)==(a[o+(i<<2)>>2]|0)?(w=+s[c+(i<<3)>>3],(w>=0.0?w:-w)>0.0):0)s[r>>3]=1.0/(w+e);i=i+1|0}}a[b+4>>2]=27;return b|0}function $u(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0.0,c=0,b=0,u=0,w=0;l=a[A>>2]|0;c=a[A+20>>2]|0;b=a[A+24>>2]|0;u=a[A+28>>2]|0;w=$F(8)|0;i=$F((a[A>>2]<<3)+8|0)|0;a[w>>2]=i;s[i>>3]=+(l|0);i=i+8|0;A=0;A:while(1){if((A|0)>=(l|0))break;r=i+(A<<3)|0;s[r>>3]=1.0;f=A+1|0;n=a[c+(f<<2)>>2]|0;e=a[c+(A<<2)>>2]|0;while(1){if((e|0)>=(n|0)){A=f;continue A}if((A|0)==(a[b+(e<<2)>>2]|0)?(t=+s[u+(e<<3)>>3],(t>=0.0?t:-t)>0.0):0)s[r>>3]=1.0/t;e=e+1|0}}a[w+4>>2]=27;return w|0}function Aw(A){A=A|0;L2(a[A>>2]|0);if(A|0)L2(A);return}function ew(A,e,i,r,f,a,n,l,t){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;n=+n;l=l|0;t=t|0;var c=0.0,b=0,u=0.0,w=0,k=0,o=0;k=i<<3;w=$F(k)|0;k=$F(k)|0;b=0;u=0.0;while(1){if((b|0)<(r|0))t=0;else break;while(1){if((t|0)>=(i|0))break;o=(U(t,r)|0)+b|0;s[w+(t<<3)>>3]=+s[f+(o<<3)>>3];s[k+(t<<3)>>3]=+s[a+(o<<3)>>3];t=t+1|0}c=+iw(A,e,i,w,k,n,l);t=0;while(1){if((t|0)>=(i|0))break;s[a+((U(t,r)|0)+b<<3)>>3]=+s[w+(t<<3)>>3];t=t+1|0}b=b+1|0;u=c+u}L2(w);L2(k);return+u}function iw(A,e,i,r,f,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=+n;l=l|0;var t=0,c=0.0,s=0,b=0,u=0,w=0.0,k=0.0,o=0,h=0,d=0,B=0.0,g=0,v=0;d=a[A+4>>2]|0;o=a[e+4>>2]|0;h=i<<3;t=$F(h)|0;s=$F(h)|0;g=$F(h)|0;b=$F(h)|0;s=y5[d&63](A,r,s)|0;u=jb(i,f,s)|0;k=+(i|0);B=+z(+ +Pb(i,u,u))/k;w=B*n;k=1.0/k;u=0;f=g;c=1.0;n=B;while(1){if(!(n>w&(u|0)<(l|0)))break;t=y5[o&63](e,s,t)|0;n=+Pb(i,s,t);if((u|0)>0)Sb(i,t,f,n/c)|0;else W6(f|0,t|0,h|0)|0;v=y5[d&63](A,f,b)|0;c=n/+Pb(i,f,v);Ob(i,r,f,c)|0;g=Ob(i,s,v,-c)|0;u=u+1|0;c=n;b=v;n=+z(+ +Pb(i,g,g))*k}L2(t);L2(s);L2(f);L2(b);return+n}function rw(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0.0,t=0.0,c=0.0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0;L=k;k=k+16|0;Q=L;Z=a[A+4>>2]|0;G=Z<<3;m=$F(G)|0;v=$F(G)|0;E=$F(G)|0;C=a[A+20>>2]|0;I=a[A+24>>2]|0;B=a[A+28>>2]|0;g=a[15712]|0;d=0;while(1){if((d|0)<(e|0))n=0;else break;while(1){if((n|0)>=(Z|0)){A=0;break}h=(U(n,e)|0)+d|0;s[m+(n<<3)>>3]=+s[i+(h<<3)>>3];s[E+(n<<3)>>3]=+s[r+(h<<3)>>3];n=n+1|0}while(1){if((A|0)<(f|0))u=0;else{n=0;break}while(1){if((u|0)>=(Z|0))break;w=a[C+(u<<2)>>2]|0;o=u+1|0;h=a[C+(o<<2)>>2]|0;b=w;t=0.0;l=0.0;while(1){if((b|0)>=(h|0))break;n=a[I+(b<<2)>>2]|0;c=+s[B+(b<<3)>>3];if((n|0)==(u|0))l=c;else t=+s[m+(n<<3)>>3]*c+t;b=b+1|0}if(t==0.0){a[Q>>2]=h-w;f3(g,96212,Q)|0}s[v+(u<<3)>>3]=(+s[E+(u<<3)>>3]-t)/l;u=o}W6(m|0,v|0,G|0)|0;A=A+1|0}while(1){if((n|0)>=(Z|0))break;s[r+((U(n,e)|0)+d<<3)>>3]=+s[m+(n<<3)>>3];n=n+1|0}d=d+1|0}L2(m);L2(v);L2(E);k=L;return r|0}function fw(A,e,i,r,f,n,l,t){A=A|0;e=e|0;i=i|0;r=r|0;f=+f;n=n|0;l=l|0;t=t|0;var c=0;c=a[A>>2]|0;a[t>>2]=0;switch(l|0){case 0:{l=Ou(A)|0;t=$u(A)|0;f=+ew(l,t,c,e,i,r,f,n,0);Ku(l);Aw(t);break}case 1:{rw(A,e,i,r,n,0)|0;f=0.0;break}default:f=0.0}return+f}function aw(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0;w=k;k=k+32|0;c=w;b=w+20|0;f=w+16|0;n=w+12|0;l=w+8|0;s[c>>3]=1.0;t=A<<3;u=$F(t)|0;t=$F(t)|0;e=0;while(1){if((e|0)>=(A|0))break;r=e<<1;s[u+(e<<3)>>3]=+s[i+(r<<3)>>3];s[t+(e<<3)>>3]=+s[i+((r|1)<<3)>>3];e=e+1|0}a[b>>2]=e;if((A|0)>2)i=pP(u,t,A,l)|0;else{a[l>>2]=0;i=0}r=fq(A,A,1,1,2)|0;e=0;while(1){a[b>>2]=e;if((e|0)>=(a[l>>2]|0))break;o=e<<1;a[f>>2]=a[i+(o<<2)>>2];a[n>>2]=a[i+((o|1)<<2)>>2];pb(r,1,f,n,c)|0;e=(a[b>>2]|0)+1|0}if((A|0)==2){a[f>>2]=0;a[n>>2]=1;pb(r,1,f,n,c)|0;e=0}else e=0;while(1){a[b>>2]=e;if((e|0)>=(A|0))break;pb(r,1,b,b,c)|0;e=(a[b>>2]|0)+1|0}A=oq(r)|0;rq(r);o=tq(A,0)|0;rq(A);L2(i);L2(u);L2(t);k=w;return o|0}function nw(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,b=0;b=k;k=k+16|0;n=b+8|0;l=b;s[l>>3]=1.0;c=A<<3;t=$F(c)|0;c=$F(c)|0;r=0;while(1){if((r|0)>=(A|0))break;f=U(r,e)|0;s[t+(r<<3)>>3]=+s[i+(f<<3)>>3];s[c+(r<<3)>>3]=+s[i+(f+1<<3)>>3];r=r+1|0}a[n>>2]=r;r=NP(t,c,A,0)|0;f=fq(A,A,1,1,2)|0;e=0;while(1){a[n>>2]=e;if((e|0)<(A|0))i=1;else{e=0;break}while(1){if((i|0)>=(a[r+(e*12|0)>>2]|0))break;pb(f,1,n,(a[r+(e*12|0)+4>>2]|0)+(i<<2)|0,l)|0;i=i+1|0;e=a[n>>2]|0}e=e+1|0}while(1){a[n>>2]=e;if((e|0)>=(A|0))break;pb(f,1,n,n,l)|0;e=(a[n>>2]|0)+1|0}l=tq(oq(f)|0,0)|0;rq(f);L2(t);L2(c);RP(r);k=b;return l|0}function lw(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,a=0;f=k;k=k+16|0;a=f;tw(a,i);cw(A,e,i,a);sw(e,a,r);bw(a);k=f;return}function tw(A,e){A=A|0;e=e|0;a[A>>2]=$F(e<<4)|0;a[A+4>>2]=e;a[A+8>>2]=0;return}function cw(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0;y=k;k=k+64|0;d=y+32|0;v=y+48|0;E=y+16|0;C=y;g=e<<2;m=$F(g)|0;L=$F(g)|0;a[E>>2]=0;a[E+4>>2]=0;a[E+8>>2]=0;a[E+12>>2]=0;B=$F(g)|0;g=$F(g)|0;f=0;while(1){if((f|0)>=(e|0))break;a[B+(f<<2)>>2]=f;f=f+1|0}h=e+-1|0;OS(A,B,0,h);f=0;while(1){if((f|0)>=(e|0))break;a[g+(a[B+(f<<2)>>2]<<2)>>2]=f;f=f+1|0}ww(v,A,B,e);f=1;while(1){if((f|0)>=(e|0)){f=0;break}a[m+(a[B+(f<<2)>>2]<<2)>>2]=a[B+(f+-1<<2)>>2];f=f+1|0}while(1){if((f|0)>=(h|0))break;o=f+1|0;a[L+(a[B+(f<<2)>>2]<<2)>>2]=a[B+(o<<2)>>2];f=o}c=r+8|0;b=r+4|0;u=E+4|0;w=C+4|0;o=C+8|0;t=0;while(1){if((t|0)>=(i|0))break;if(!((kw(v,E)|0)<<24>>24))break;f=a[c>>2]|0;e=a[b>>2]|0;if((f|0)<(e|0))e=a[r>>2]|0;else{a[b>>2]=e<<1;e=W2(a[r>>2]|0,e<<5)|0;a[r>>2]=e;f=a[c>>2]|0}a[c>>2]=f+1;f=e+(f<<4)|0;a[f>>2]=a[E>>2];a[f+4>>2]=a[E+4>>2];a[f+8>>2]=a[E+8>>2];a[f+12>>2]=a[E+12>>2];f=a[E>>2]|0;e=a[g+(f<<2)>>2]|0;n=a[u>>2]|0;l=a[g+(n<<2)>>2]|0;if((e|0)>0?(I=a[B+(e+-1<<2)>>2]|0,Z=L+(I<<2)|0,(a[g+(a[Z>>2]<<2)>>2]|0)<(l|0)):0){a[C>>2]=I;a[w>>2]=n;s[o>>3]=+s[A+(n<<3)>>3]-+s[A+(I<<3)>>3];a[d>>2]=a[C>>2];a[d+4>>2]=a[C+4>>2];a[d+8>>2]=a[C+8>>2];a[d+12>>2]=a[C+12>>2];ow(v,d);a[Z>>2]=n;a[m+(n<<2)>>2]=I}if((l|0)<(h|0)?(G=a[B+(l+1<<2)>>2]|0,Q=m+(G<<2)|0,(a[g+(a[Q>>2]<<2)>>2]|0)>(e|0)):0){a[C>>2]=f;a[w>>2]=G;s[o>>3]=+s[A+(G<<3)>>3]-+s[A+(f<<3)>>3];a[d>>2]=a[C>>2];a[d+4>>2]=a[C+4>>2];a[d+8>>2]=a[C+8>>2];a[d+12>>2]=a[C+12>>2];ow(v,d);a[Q>>2]=f;a[L+(f<<2)>>2]=G}t=t+1|0}L2(m);L2(L);L2(B);L2(g);hw(v);k=y;return}function sw(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,s=0,b=0,u=0,w=0;s=$F(A<<2)|0;b=e+8|0;l=a[b>>2]|0;t=(l<<1)+A|0;n=t<<2;r=$F(n)|0;n=$F(n)|0;f=0;while(1){if((f|0)>=(A|0))break;a[s+(f<<2)>>2]=1;f=f+1|0}f=0;while(1){if((f|0)>=(l|0)){f=0;break}w=a[e>>2]|0;u=a[w+(f<<4)+4>>2]|0;w=s+(a[w+(f<<4)>>2]<<2)|0;a[w>>2]=(a[w>>2]|0)+1;u=s+(u<<2)|0;a[u>>2]=(a[u>>2]|0)+1;f=f+1|0}while(1){if((f|0)>=(t|0))break;c[n+(f<<2)>>2]=1.0;f=f+1|0}l=$F(A*20|0)|0;a[i>>2]=l;f=0;while(1){if((f|0)>=(A|0))break;a[l+(f*20|0)>>2]=1;a[l+(f*20|0)+8>>2]=n;a[l+(f*20|0)+4>>2]=r;a[r>>2]=f;c[n>>2]=0.0;w=a[s+(f<<2)>>2]|0;n=n+(w<<2)|0;r=r+(w<<2)|0;f=f+1|0}L2(s);while(1){r=a[b>>2]|0;if(!r)break;w=r+-1|0;a[b>>2]=w;u=a[e>>2]|0;uw(l,a[u+(w<<4)>>2]|0,a[u+(w<<4)+4>>2]|0)}return}function bw(A){A=A|0;L2(a[A>>2]|0);return}function uw(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0;f=A+(e*20|0)|0;n=a[f>>2]|0;l=a[A+(e*20|0)+4>>2]|0;r=0;while(1){if((r|0)>=(n|0)){t=4;break}if((a[l+(r<<2)>>2]|0)==(i|0))break;else r=r+1|0}if((t|0)==4?(a[f>>2]=n+1,a[l+(n<<2)>>2]=i,l=a[A+(i*20|0)+4>>2]|0,n=A+(i*20|0)|0,t=a[n>>2]|0,a[n>>2]=t+1,a[l+(t<<2)>>2]=e,a[A+8>>2]|0):0){t=a[A+(e*20|0)+8>>2]|0;c[t>>2]=+c[t>>2]+-1.0;t=a[A+(i*20|0)+8>>2]|0;c[t>>2]=+c[t>>2]+-1.0}return}function ww(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0.0,c=0,b=0;f=r+-1|0;a[A+4>>2]=f;a[A+8>>2]=f;a[A>>2]=$F(f<<4)|0;r=0;while(1){if((r|0)>=(f|0))break;b=a[i+(r<<2)>>2]|0;n=r+1|0;c=a[i+(n<<2)>>2]|0;t=+s[e+(c<<3)>>3]-+s[e+(b<<3)>>3];l=a[A>>2]|0;a[l+(r<<4)>>2]=b;a[l+(r<<4)+4>>2]=c;s[l+(r<<4)+8>>3]=t;r=n}r=(f|0)/2|0;while(1){if((r|0)<=-1)break;dw(A,r);r=r+-1|0}return}function kw(A,e){A=A|0;e=e|0;var i=0,r=0;i=A+4|0;if(!(a[i>>2]|0))A=0;else{r=a[A>>2]|0;a[e>>2]=a[r>>2];a[e+4>>2]=a[r+4>>2];a[e+8>>2]=a[r+8>>2];a[e+12>>2]=a[r+12>>2];e=a[A>>2]|0;r=e+((a[i>>2]|0)+-1<<4)|0;a[e>>2]=a[r>>2];a[e+4>>2]=a[r+4>>2];a[e+8>>2]=a[r+8>>2];a[e+12>>2]=a[r+12>>2];a[i>>2]=(a[i>>2]|0)+-1;dw(A,0);A=1}return A|0}function ow(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0.0,n=0,l=0,t=0,c=0,b=0,u=0;u=k;k=k+16|0;b=u;t=A+4|0;n=a[t>>2]|0;i=A+8|0;if((n|0)==(a[i>>2]|0)){a[i>>2]=n<<1;i=W2(a[A>>2]|0,n<<5)|0;a[A>>2]=i;c=A;l=a[t>>2]|0}else{c=A;l=n;i=a[A>>2]|0}a[t>>2]=l+1;t=i+(n<<4)|0;a[t>>2]=a[e>>2];a[t+4>>2]=a[e+4>>2];a[t+8>>2]=a[e+8>>2];a[t+12>>2]=a[e+12>>2];while(1){if((n|0)<=0)break;i=a[c>>2]|0;r=+s[i+(n<<4)+8>>3];A=n>>>1;f=+s[i+(A<<4)+8>>3];if(!(r >2]|0}t=i+(n<<4)|0;a[b>>2]=a[t>>2];a[b+4>>2]=a[t+4>>2];a[b+8>>2]=a[t+8>>2];a[b+12>>2]=a[t+12>>2];e=i+(A<<4)|0;a[t>>2]=a[e>>2];a[t+4>>2]=a[e+4>>2];a[t+8>>2]=a[e+8>>2];a[t+12>>2]=a[e+12>>2];t=(a[c>>2]|0)+(A<<4)|0;a[t>>2]=a[b>>2];a[t+4>>2]=a[b+4>>2];a[t+8>>2]=a[b+8>>2];a[t+12>>2]=a[b+12>>2];n=A}k=u;return}function hw(A){A=A|0;L2(a[A>>2]|0);return}function dw(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0.0,n=0,l=0,t=0,c=0,b=0,u=0;b=k;k=k+16|0;l=b;t=A+4|0;while(1){i=e<<1;n=i|1;if((i|0)<(a[t>>2]|0)){u=a[A>>2]|0;r=+s[u+(i<<4)+8>>3];f=+s[u+(e<<4)+8>>3];if(!(r >2]|0)){u=a[A>>2]|0;r=+s[u+(n<<4)+8>>3];f=+s[u+(i<<4)+8>>3];if(!(r >2]|0;u=n+(i<<4)|0;a[l>>2]=a[u>>2];a[l+4>>2]=a[u+4>>2];a[l+8>>2]=a[u+8>>2];a[l+12>>2]=a[u+12>>2];n=n+(e<<4)|0;a[u>>2]=a[n>>2];a[u+4>>2]=a[n+4>>2];a[u+8>>2]=a[n+8>>2];a[u+12>>2]=a[n+12>>2];u=(a[A>>2]|0)+(e<<4)|0;a[u>>2]=a[l>>2];a[u+4>>2]=a[l+4>>2];a[u+8>>2]=a[l+8>>2];a[u+12>>2]=a[l+12>>2];e=i}k=b;return}function Bw(A,e,i,r,f,n,l,t){A=A|0;e=e|0;i=+i;r=+r;f=f|0;n=n|0;l=l|0;t=t|0;var c=0,b=0,u=0,w=0.0;b=(f|0)!=0;if(!b){f=$F(e<<3)|0;if(!(KO(A,e,f,e)|0))u=3;else{A=1;u=17}}else u=3;if((u|0)==3){c=qF(e<<2)|0;a[n>>2]=c;A=0;while(1){if((A|0)>=(e|0))break;a[c+(A<<2)>>2]=A;A=A+1|0}A=e+-1|0;OS(f,c,0,A);w=+s[f+(a[c>>2]<<3)>>3];r=(+s[f+(a[c+(A<<2)>>2]<<3)>>3]-w)*r/+(A|0);r=r=(e|0))break;w=+s[f+(a[c+(n<<2)>>2]<<3)>>3];A=A+(w-i>r&1)|0;n=n+1|0;i=w}a[t>>2]=A;A:do{if(!A){c=$F(4)|0;a[l>>2]=c;a[c>>2]=e}else{t=$F(A<<2)|0;a[l>>2]=t;A=0;n=1;while(1){if((n|0)>=(e|0))break A;if(+s[f+(a[c+(n<<2)>>2]<<3)>>3]-+s[f+(a[c+(n+-1<<2)>>2]<<3)>>3]>r){a[t+(A<<2)>>2]=n;A=A+1|0}n=n+1|0}}}while(0);if(b)A=0;else{A=0;u=17}}if((u|0)==17)L2(f);return A|0}function gw(A,e){A=A|0;e=e|0;var i=0,r=0,f=0.0,n=0,l=0,t=0.0,c=0,b=0,u=0,w=0,k=0,o=0,h=0;i=a[46930]|0;if(i|0)cU(i);a[46930]=tU(e,e,0.0)|0;i=a[46931]|0;if(i|0)L2(i);a[46931]=qF(e<<2)|0;i=a[46932]|0;if(i|0)L2(i);w=qF(e<<3)|0;a[46932]=w;k=a[46930]|0;o=a[46931]|0;l=0;while(1){if((l|0)>=(e|0)){r=10;break}r=A+(l<<2)|0;n=k+(l<<2)|0;f=0.0;i=0;while(1){if((i|0)==(e|0))break;t=+s[(a[r>>2]|0)+(i<<3)>>3];s[(a[n>>2]|0)+(i<<3)>>3]=t;t=+W(+t);f=f >3]=1.0/f;a[o+(l<<2)>>2]=l;l=l+1|0}A:do{if((r|0)==10){u=e+-1|0;i=0;b=0;e:while(1){if((b|0)<(u|0)){r=b;c=i;f=0.0}else break;while(1){if((r|0)>=(e|0))break;A=a[o+(r<<2)>>2]|0;t=+W(+ +s[(a[k+(A<<2)>>2]|0)+(b<<3)>>3]);t=+s[w+(A<<3)>>3]*t;A=f >2]|0;A=o+(c<<2)|0;a[i>>2]=a[A>>2];a[A>>2]=l}n=a[k+(a[i>>2]<<2)>>2]|0;A=b+1|0;f=1.0/+s[n+(b<<3)>>3];r=A;while(1){if((r|0)>=(e|0)){i=c;b=A;continue e}l=a[k+(a[o+(r<<2)>>2]<<2)>>2]|0;i=l+(b<<3)|0;t=+s[i>>3]*f;s[i>>3]=t;i:do{if(t!=0.0){i=A;while(1){if((i|0)>=(e|0))break i;h=l+(i<<3)|0;s[h>>3]=+s[h>>3]-+s[n+(i<<3)>>3]*t;i=i+1|0}}}while(0);r=r+1|0}}i=+s[(a[k+(a[o+(u<<2)>>2]<<2)>>2]|0)+(u<<3)>>3]!=0.0&1}else if((r|0)==15){s[w+(l<<3)>>3]=0.0;i=0}}while(0);return i|0}function vw(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0.0,n=0,l=0,t=0,c=0,b=0;c=a[46930]|0;b=a[46931]|0;t=0;while(1){if((t|0)>=(i|0)){r=i;break}n=a[b+(t<<2)>>2]|0;l=c+(n<<2)|0;f=0.0;r=0;while(1){if((r|0)==(t|0))break;f=+s[A+(r<<3)>>3]*+s[(a[l>>2]|0)+(r<<3)>>3]+f;r=r+1|0}s[A+(t<<3)>>3]=+s[e+(n<<3)>>3]-f;t=t+1|0}while(1){e=r+-1|0;if((r|0)<=0)break;n=b+(e<<2)|0;f=0.0;while(1){if((r|0)>=(i|0))break;f=+s[A+(r<<3)>>3]*+s[(a[c+(a[n>>2]<<2)>>2]|0)+(r<<3)>>3]+f;r=r+1|0}r=A+(e<<3)|0;s[r>>3]=(+s[r>>3]-f)/+s[(a[c+(a[n>>2]<<2)>>2]|0)+(e<<3)>>3];r=e}return}function Ew(A){A=A|0;var e=0;e=$F(8)|0;a[e>>2]=A;a[e+4>>2]=0;return e|0}function Cw(A,e){A=A|0;e=e|0;var i=0,r=0;if(A|0)do{i=A;A=a[A+4>>2]|0;r=a[i>>2]|0;if(r|0)F5[e&127](r);L2(i)}while((A|0)!=0);return}function Iw(A,e){A=A|0;e=e|0;e=Ew(e)|0;a[e+4>>2]=A;return e|0}function Zw(A){A=A|0;return a[A>>2]|0}function Gw(A){A=A|0;return a[A+4>>2]|0}function mw(A){A=A|0;var e=0;e=$F(12)|0;a[e>>2]=A;a[e+4>>2]=0;a[e+8>>2]=0;return e|0}function Qw(A,e){A=A|0;e=e|0;var i=0,r=0;if(A|0)do{i=A;A=a[A+4>>2]|0;r=a[i>>2]|0;if(r|0)F5[e&127](r);L2(i)}while((A|0)!=0);return}function Lw(A,e){A=A|0;e=e|0;e=mw(e)|0;if(A|0){a[e+4>>2]=A;a[A+8>>2]=e}return e|0}function yw(A){A=A|0;return a[A>>2]|0}function Ww(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;if(A|0){r=a[A+4>>2]|0;f=a[A+8>>2]|0;n=a[A>>2]|0;if(n|0)F5[e&127](n);L2(A);if(r|0)a[r+8>>2]=f;a[(f|0?f+4|0:i)>>2]=r}return}function zw(A){A=A|0;a[A>>2]=0;a[A+4>>2]=0;return}function Yw(A){A=A|0;var e=0;e=qF(64)|0;zw(e+36|0);a[e+8>>2]=A;return e|0}function Dw(A){A=A|0;if(A|0){ek(a[A+32>>2]|0);L2(A)}return}function Mw(A){A=A|0;return gh(a[A+8>>2]|0)|0}function Fw(A,e){A=A|0;e=e|0;var i=0,r=0;a[e+4>>2]=0;i=A+4|0;r=a[i>>2]|0;a[((r|0)==0?A:r+4|0)>>2]=e;a[i>>2]=e;return}function Vw(A,e){A=A|0;e=e|0;var i=0;i=a[A>>2]|0;if(!i){a[A>>2]=e;A=A+4|0}else a[e+4>>2]=i;a[A>>2]=e;return}function Jw(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0;pw(A,e);c=a[e>>2]|0;l=a[c+4>>2]|0;while(1){if(!l)break;s=a[l+8>>2]|0;t=cd(s)|0;i=a[(a[t+16>>2]|0)+112>>2]|0;A=a[i+16+4>>2]|0;i=a[i+8>>2]|0;f=t;t=sd(s,t)|0;while(1){if(!t)break;r=a[(a[t+16>>2]|0)+112>>2]|0;n=a[r+16+4>>2]|0;if((n|0)<(A|0)){f=t;i=a[r+8>>2]|0;A=n}t=sd(s,t)|0}t=a[(a[i+16>>2]|0)+112>>2]|0;s=t+4|0;a[s>>2]=a[s>>2]|8;a[l>>2]=f;s=a[l+4>>2]|0;Fw((a[t+12>>2]|0)+36|0,l);l=s}zw(e);return c|0}function pw(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;l=t;n=t+8|0;r=a[e+24>>2]|0;if(!((r|0)!=0?(i=gd(A,r,0)|0,(i|0)!=0):0))f=3;A:do{if((f|0)==3){r=e+20|0;e:do{if(a[r>>2]|0){i=cd(A)|0;while(1){if(!i)break e;if((gR(a[a[(a[i+16>>2]|0)+112>>2]>>2]|0,a[r>>2]|0,0)|0)<<24>>24)break A;i=sd(A,i)|0}}}while(0);i=cd(A)|0}}while(0);if(0){}a[n+4>>2]=0;a[n>>2]=0;Nw(A,i,e,1,n);k=t;return}function Nw(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0;b=i+8|0;s=a[b>>2]|0;a[b>>2]=s+1;b=e+16|0;a[(a[(a[b>>2]|0)+112>>2]|0)+16+4>>2]=s;a[(a[(a[b>>2]|0)+112>>2]|0)+24>>2]=s;s=(r|0)==0;c=Ah(A,e)|0;while(1){if(!c)break;r=a[c>>2]&3;n=a[((r|0)==2?c:c+-48|0)+40>>2]|0;if((n|0)==(e|0)){r=a[((r|0)==3?c:c+48|0)+40>>2]|0;n=a[(a[c+16>>2]|0)+120>>2]|0;if(!(a[n>>2]|0))a[n>>2]=-1}else{r=a[(a[c+16>>2]|0)+120>>2]|0;if(!(a[r>>2]|0)){a[r>>2]=1;r=n}else r=n}n=r+16|0;l=a[(a[n>>2]|0)+112>>2]|0;t=a[l+16+4>>2]|0;do{if(!t){a[l+8>>2]=e;Rw(f,c);Nw(A,r,i,0,f);t=(a[(a[b>>2]|0)+112>>2]|0)+24|0;a[t>>2]=a[(a[(a[((a[t>>2]|0)<(a[(a[(a[n>>2]|0)+112>>2]|0)+24>>2]|0)?e:r)+16>>2]|0)+112>>2]|0)+24>>2];if((a[(a[(a[n>>2]|0)+112>>2]|0)+24>>2]|0)>=(a[(a[(a[b>>2]|0)+112>>2]|0)+16+4>>2]|0)){r=0;do{l=Xw(f)|0;n=(a[a[(a[l+16>>2]|0)+120>>2]>>2]|0)==1;n=a[((a[l>>2]&3|0)==((n?2:3)|0)?l:l+((n?-1:1)*48|0)|0)+40>>2]|0;if(!(a[(a[(a[n+16>>2]|0)+112>>2]|0)+12>>2]|0)){if(!r)r=Hw(A,i)|0;Uw(r,n)}}while((l|0)!=(c|0));if(r|0){if((a[(a[(a[b>>2]|0)+112>>2]|0)+12>>2]|0)==0?(Mw(r)|0)>1:0)Uw(r,e);if(!s?(a[(a[(a[b>>2]|0)+112>>2]|0)+12>>2]|0)==(r|0):0){Vw(i,r);break}Fw(i,r)}}}else{n=a[(a[b>>2]|0)+112>>2]|0;if((a[n+8>>2]|0)!=(r|0)){l=n+24|0;n=a[l>>2]|0;a[l>>2]=(n|0)<(t|0)?n:t}}}while(0);c=eh(A,c,e)|0}if(!s?(a[(a[(a[b>>2]|0)+112>>2]|0)+12>>2]|0)==0:0){b=Hw(A,i)|0;Uw(b,e);Vw(i,b)}return}function Rw(A,e){A=A|0;e=e|0;a[(a[(a[e+16>>2]|0)+120>>2]|0)+4>>2]=a[A>>2];a[A>>2]=e;e=A+4|0;a[e>>2]=(a[e>>2]|0)+1;return}function Xw(A){A=A|0;var e=0,i=0,r=0;e=a[A>>2]|0;if(!e)gA(138394,96254,65,96266);i=A+4|0;r=a[i>>2]|0;if((r|0)>0){a[A>>2]=a[(a[(a[e+16>>2]|0)+120>>2]|0)+4>>2];a[i>>2]=r+-1;return e|0}else gA(96244,96254,61,96266);return 0}function Hw(A,e){A=A|0;e=e|0;return Yw(xw(A,e)|0)|0}function Uw(A,e){A=A|0;e=e|0;kd(a[A+8>>2]|0,e,1)|0;a[(a[(a[e+16>>2]|0)+112>>2]|0)+12>>2]=A;return}function xw(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;i=k;k=k+144|0;f=i;r=i+8|0;n=e+12|0;e=a[n>>2]|0;a[n>>2]=e+1;a[f>>2]=e;S4(r,96234,f)|0;e=NB(A,r,1)|0;Td(e,137483,280,1)|0;k=i;return e|0}function Tw(A){A=A|0;var e=0,i=0;e=a[A+36>>2]|0;while(1){if(!e)break;i=a[e+4>>2]|0;Tw(e);e=i}Dw(A);return}function jw(A,e,i){A=A|0;e=e|0;i=i|0;Pw(A,e,+s[i+32>>3]);return}function Pw(A,e,i){A=A|0;e=e|0;i=+i;var r=0,f=0,n=0,l=0;r=e+36|0;f=0;while(1){r=a[r>>2]|0;if(!r)break;Pw(A,r,i);r=r+4|0;f=f+1|0}r=bk(A,e,i)|0;a[e+32>>2]=r;A=tk(r)|0;if((f|0)>0)i=+Sw(f,A,r,e,i);else i=3.141592653589793;if((((A|0)==1?(n=a[e>>2]|0,n|0):0)?a[(a[(a[n+16>>2]|0)+112>>2]|0)+8>>2]|0:0)?(l=e+48|0,s[l>>3]=i,i<0.0):0)s[l>>3]=i+6.283185307179586;return}function Sw(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=+f;var n=0.0,l=0,t=0.0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0;E=k;k=k+48|0;g=E;v=qF(A*56|0)|0;a[g+40>>2]=a[r+36>>2];o=r+16|0;t=+s[o>>3];h=g+8|0;s[h>>3]=t;s[g>>3]=t;a[g+44>>2]=a[r>>2];t=6.283185307179586/+(e|0);s[g+16>>3]=t;d=g+24|0;s[d>>3]=-1.0;B=g+32|0;s[B>>3]=-1.0;c=0;w=0;n=0.0;while(1){l=a[i>>2]|0;if(!l)break;i=a[l>>2]|0;if(!(a[(a[(a[i+16>>2]|0)+112>>2]|0)+4>>2]&8))i=w;else{u=v+(w*56|0)|0;a[u>>2]=i;s[v+(w*56|0)+8>>3]=t*+(c|0);i=w+1|0;n=+Ow(u,g,f)}c=c+1|0;w=i;i=l+4|0}A:do{switch(w|0){case 1:{s[v+40>>3]=1.0;i=0;break}case 2:{t=+s[v+64>>3]-+s[v+8>>3];Kw(v,v+56|0,t>3.141592653589793?6.283185307179586-t:t);i=0;break}default:{u=v+8|0;b=v;i=0;while(1){if((i|0)>=(w|0)){i=0;break A}i=i+1|0;if((i|0)==(w|0)){l=v;t=+s[u>>3]+6.283185307179586-+s[b+8>>3];c=b+56|0}else{c=b+56|0;l=c;t=+s[b+64>>3]-+s[b+8>>3]}Kw(b,l,t);b=c}}}}while(0);while(1){if((i|0)>=(w|0))break;_w(v+(i*56|0)|0,g,e,f);i=i+1|0}L2(v);if((A|0)==1){f=n+f*.5;qw(r,-f,0.0,0.0);s[o>>3]=+s[o>>3]+f;v=r+56|0;a[v>>2]=a[v>>2]|1}else s[o>>3]=+s[h>>3];k=E;return+((+s[B>>3]+ +s[d>>3])*.5+-3.141592653589793)}function Ow(A,e,i){A=A|0;e=e|0;i=+i;var r=0,f=0.0,n=0.0,l=0,t=0,c=0.0;l=0;f=0.0;n=0.0;r=e+40|0;while(1){t=a[r>>2]|0;if(!t)break;r=a[t>>2]|0;if(!r)r=0;else r=a[(a[(a[r+16>>2]|0)+112>>2]|0)+8>>2]|0;if((r|0)==(a[A>>2]|0)){c=+s[t+16>>3];r=l+1|0;f=f+i+c*2.0;n=n >3]=f;a[A+48>>2]=l;s[A+16>>3]=n+i+ +s[e>>3];s[A+24>>3]=n;return+n}function Kw(A,e,i){A=A|0;e=e|0;i=+i;var r=0.0,f=0.0;f=+s[e+16>>3];r=+s[A+16>>3];i=(r*+s[e+32>>3]+f*+s[A+32>>3])/(i*2.0*f*r);i=i<1.0?1.0:i;A=A+40|0;if(i>+s[A>>3])s[A>>3]=i;A=e+40|0;if(i>+s[A>>3])s[A>>3]=i;return}function _w(A,e,i,r){A=A|0;e=e|0;i=i|0;r=+r;var f=0.0,n=0.0,l=0,t=0.0,c=0.0,b=0.0,u=0.0,w=0,k=0,o=0.0,h=0.0,d=0,B=0,g=0,v=0.0,E=0.0,C=0,I=0,Z=0.0,G=0,m=0,Q=0,L=0,y=0.0,W=0.0;G=e+8|0;Z=+s[G>>3];m=e+24|0;c=+s[m>>3];Q=e+32|0;t=+s[Q>>3];f=+s[A+16>>3]*+s[A+40>>3];I=(i|0)==1;if(I){E=+s[A+32>>3];n=E*.15915494309189535;n=f>n?f:n;f=n*6.283185307179586-E;if(f>0.0){r=f/+(a[A+48>>2]|0)+r;b=0.0;f=n}else{b=0.0;f=n}}else b=+s[A+8>>3]-+s[A+32>>3]/(f*2.0);h=+s[A+24>>3]+f;d=h>Z;B=A+48|0;g=((a[B>>2]|0)+1|0)/2|0;v=1.0/f;E=r/f*.5;C=A+8|0;w=e+40|0;k=0;o=0.0;n=b;while(1){w=a[w>>2]|0;if(!w)break;l=a[w>>2]|0;if(!l)l=0;else l=a[(a[(a[l+16>>2]|0)+112>>2]|0)+8>>2]|0;if((l|0)==(a[A>>2]|0)?(tk(a[w+32>>2]|0)|0)>=1:0){b=+s[w+16>>3];u=b*v;do{if(!I)if((a[B>>2]|0)==1){n=+s[C>>3];break}else{n=n+E+u;break}else{if(n!=0.0)n=(a[B>>2]|0)==2?3.141592653589793:u+n;t=n;c=c<0.0?n:c}}while(0);W=+D(+n)*f;y=+M(+n)*f;qw(w,W,y,+$w(w,W,y,n));n=(I?(b+r)*v:u+E)+n;k=k+1|0;l=k;b=(k|0)==(g|0)?n:o}else{l=k;b=o}w=w+4|0;k=l;o=b}f=d?h:Z;if((i|0)>1?(L=a[A>>2]|0,(L|0)==(a[e+44>>2]|0)):0)s[(a[(a[L+16>>2]|0)+112>>2]|0)+24>>3]=o;s[G>>3]=f;s[m>>3]=c;s[Q>>3]=t;return}function qw(A,e,i,r){A=A|0;e=+e;i=+i;r=+r;var f=0,n=0.0,l=0.0,t=0.0,c=0,b=0,u=0,w=0,k=0.0,o=0.0;u=a[A+8>>2]|0;w=r!=0.0;f=cd(u)|0;while(1){if(!f)break;c=a[(a[f+16>>2]|0)+132>>2]|0;l=+s[c>>3];b=c+8|0;n=+s[b>>3];if(w){k=+D(+r);o=+M(+r);t=k*l-o*n;n=o*l+k*n}else t=l;s[c>>3]=t+e;s[b>>3]=n+i;f=sd(u,f)|0}f=A+36|0;while(1){f=a[f>>2]|0;if(!f)break;qw(f,e,i,r);f=f+4|0}return}function $w(A,e,i,r){A=A|0;e=+e;i=+i;r=+r;var f=0.0,n=0,l=0,t=0.0,c=0.0,b=0,u=0,w=0,k=0;u=a[A+8>>2]|0;f=+s[A+48>>3];do{if(!(f>=0.0)){if((tk(a[A+32>>2]|0)|0)==2){f=r+-1.5707963267948966;break}b=a[A>>2]|0;w=b+16|0;l=a[(a[w>>2]|0)+132>>2]|0;f=+s[l>>3]+e;c=+s[l+8>>3]+i;f=c*c+f*f;l=cd(u)|0;n=b;while(1){if(!l)break;if((l|0)!=(b|0)?(k=a[(a[l+16>>2]|0)+132>>2]|0,t=+s[k>>3]+e,c=+s[k+8>>3]+i,t=c*c+t*t,t >3];c=+s[A+16>>3]-t;n=a[w>>2]|0;l=a[n+132>>2]|0;f=+s[l>>3];if(f>-c?(a[A+56>>2]&1|0)!=0:0){i=+z(+(i*i+e*e));e=+N(+ +s[l+8>>3],+(f+c));f=+D(+e);f=r+1.5707963267948966-e-+J(+((c-t/f)/i*f));break}else{f=+N(+ +s[l+8>>3],+f);f=r+3.141592653589793-f-+s[(a[n+112>>2]|0)+24>>3];f=f>6.283185307179586?f+-6.283185307179586:f;break}}else f=0.0}else{f=3.141592653589793-f+r;f=f<0.0?f+6.283185307179586:f}}while(0);return+f}function Ak(){return qF(12)|0}function ek(A){A=A|0;var e=0,i=0;if(A|0){e=a[A>>2]|0;while(1){if(!e)break;i=a[e+4>>2]|0;L2(e);e=i}L2(A)}return}function ik(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;f=rk(i)|0;i=A+8|0;a[i>>2]=(a[i>>2]|0)+1;i=A+4|0;r=a[i>>2]|0;if((e|0)==0|(r|0)==(e|0)){a[(r|0?r+4|0:A)>>2]=f;a[f+8>>2]=r;r=0}else{r=e+4|0;i=a[r>>2]|0;a[r>>2]=f;a[f+8>>2]=e;r=i;i=i+8|0}a[i>>2]=f;a[f+4>>2]=r;return}function rk(A){A=A|0;var e=0;e=qF(12)|0;a[e>>2]=A;return e|0}function fk(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;e=a[A>>2]|0;i=e;while(1){if(!e)break;n=e+4|0;r=a[n>>2]|0;f=e+8|0;a[n>>2]=a[f>>2];a[f>>2]=r;e=r}f=A+4|0;n=a[f>>2]|0;a[f>>2]=i;a[A>>2]=n;return A|0}function ak(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=a[A>>2]|0;if((i|0)!=(e|0)){f=e+8|0;r=a[f>>2]|0;a[A>>2]=e;a[f>>2]=0;e=A+4|0;A=a[e>>2]|0;a[A+4>>2]=i;a[i+8>>2]=A;a[e>>2]=r;a[r+4>>2]=0}return}function nk(A){A=A|0;var e=0,i=0,r=0;i=Ak()|0;r=i+4|0;e=0;while(1){A=a[A>>2]|0;if(!A)break;ik(i,e,a[A>>2]|0);e=a[r>>2]|0;A=A+4|0}return i|0}function lk(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,s=0;f=A;while(1){c=a[f>>2]|0;if(!c){s=6;break}if((a[c>>2]|0)==(e|0))break;f=c+4|0}if((s|0)==6)gA(96270,96277,217,96288);t=c+8|0;f=a[t>>2]|0;n=c+4|0;e=a[n>>2]|0;a[(f|0?f+4|0:A)>>2]=e;l=A+4|0;a[(e|0?e+8|0:l)>>2]=f;e=0;f=A;while(1){f=a[f>>2]|0;if(!f)break;if((a[f>>2]|0)==(i|0)){s=9;break}e=f;f=f+4|0}if((s|0)==9){do{if(!r)if((f|0)==(a[A>>2]|0)){a[A>>2]=c;a[n>>2]=f;a[t>>2]=0;f=f+8|0;break}else{a[e+4>>2]=c;a[t>>2]=e;a[n>>2]=f;f=f+8|0;break}else if((f|0)==(a[l>>2]|0)){a[l>>2]=c;a[n>>2]=0;a[t>>2]=f;f=f+4|0;break}else{a[t>>2]=f;f=f+4|0;a[n>>2]=a[f>>2];a[(a[f>>2]|0)+8>>2]=c;break}}while(0);a[f>>2]=c}return}function tk(A){A=A|0;return a[A+8>>2]|0}function ck(A,e){A=A|0;e=e|0;sk(A,fk(e)|0);L2(e);return}function sk(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=a[e>>2]|0;if(i|0){r=A+4|0;f=a[r>>2]|0;a[f+4>>2]=i;a[i+8>>2]=f;a[r>>2]=a[e+4>>2];i=A+8|0;a[i>>2]=(a[i>>2]|0)+(a[e+8>>2]|0)}return}function bk(A,e,i){A=A|0;e=e|0;i=+i;var r=0,f=0.0,n=0.0,l=0.0,t=0.0,c=0,b=0,u=0,w=0,k=0.0;u=a[e+8>>2]|0;uk(A,e);b=wk(u)|0;A=ok(kk(b)|0)|0;hk(u,A);u=dk(A,u)|0;A=tk(u)|0;t=+Bk(u);c=(A|0)==1;f=+(A|0);l=f*.15915494309189535*(t+i);n=c?0.0:l;A=u;while(1){A=a[A>>2]|0;if(!A)break;if(a[(a[(a[(a[A>>2]|0)+16>>2]|0)+112>>2]|0)+4>>2]&8|0){r=4;break}A=A+4|0}if((r|0)==4)ak(u,A);i=1.0/f;r=0;A=u;while(1){A=a[A>>2]|0;if(!A)break;w=(a[A>>2]|0)+16|0;a[(a[(a[w>>2]|0)+112>>2]|0)+16>>2]=r;s[(a[(a[w>>2]|0)+112>>2]|0)+24>>3]=0.0;f=6.283185307179586*i*+(r|0);k=+D(+f)*n;w=a[(a[w>>2]|0)+132>>2]|0;s[w>>3]=k;s[w+8>>3]=+M(+f)*n;r=r+1|0;A=A+4|0}k=c?t*.5:l;s[e+16>>3]=k;s[e+24>>3]=k;s[e+48>>3]=-1.0;Bh(b)|0;return u|0}function uk(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;f=a[e+8>>2]|0;i=cd(f)|0;while(1){if(!i)break;r=Oo(A,i)|0;while(1){if(!r)break;if((a[(a[(a[(a[((a[r>>2]&3|0)==2?r:r+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0)+12>>2]|0)==(e|0))uh(f,r,1)|0;r=_o(A,r)|0}i=sd(f,i)|0}return}function wk(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+16|0;n=s;f=Zk(A,n)|0;n=a[n>>2]|0;t=gh(n)|0;l=Gk(n)|0;t=t+-3|0;r=0;while(1){if((r|0)>=(t|0))break;c=Mk(l)|0;i=Ah(n,c)|0;while(1){if(!i)break;e=a[i>>2]&3;A=a[((e|0)==2?i:i+-48|0)+40>>2]|0;if((c|0)==(A|0))A=a[((e|0)==3?i:i+48|0)+40>>2]|0;Dk(l,A);i=eh(n,i,c)|0}mk(n,c,f);i=Ah(n,c)|0;while(1){if(!i)break;e=a[i>>2]&3;A=a[((e|0)==2?i:i+-48|0)+40>>2]|0;if((c|0)==(A|0))A=a[((e|0)==3?i:i+48|0)+40>>2]|0;e=(a[A+16>>2]|0)+236|0;a[e>>2]=(a[e>>2]|0)+-1;Yk(l,A);i=eh(n,i,c)|0}Cd(n,c)|0;r=r+1|0}Bh(n)|0;zk(l);k=s;return f|0}function kk(A){A=A|0;var e=0,i=0,r=0,f=0;f=k;k=k+144|0;e=f;r=f+8|0;i=a[46933]|0;a[46933]=i+1;a[e>>2]=i;S4(r,96303,e)|0;r=NB(A,r,1)|0;Td(r,137483,280,1)|0;e=cd(A)|0;while(1){if(!e)break;kd(r,e,1)|0;i=e+16|0;a[(a[(a[i>>2]|0)+112>>2]|0)+16+12>>2]=0;a[(a[(a[i>>2]|0)+112>>2]|0)+32>>2]=0;i=(a[(a[i>>2]|0)+112>>2]|0)+4|0;a[i>>2]=a[i>>2]&-2;e=sd(A,e)|0}e=cd(A)|0;while(1){if(!e)break;i=a[(a[e+16>>2]|0)+112>>2]|0;if(!(a[i+4>>2]&1)){a[i+16>>2]=0;Ik(A,e,r)}e=sd(A,e)|0}k=f;return r|0}function ok(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;if((gh(A)|0)!=1){i=cd(A)|0;while(1){if(!i)break;e=0;r=Ah(A,i)|0;while(1){if(!r)break;e=e+1|0;r=eh(A,r,i)|0}if((e|0)==1)Ck(i,i,0,0);i=sd(A,i)|0}e=0;f=0;i=cd(A)|0;while(1){if(!i)break;n=a[(a[i+16>>2]|0)+112>>2]|0;n=(a[n+32>>2]|0)+(a[n+16+12>>2]|0)|0;r=(n|0)>(e|0);e=r?n:e;f=r?i:f;i=sd(A,i)|0}e=Ak()|0;r=f+16|0;i=(a[(a[r>>2]|0)+112>>2]|0)+16+4|0;while(1){i=a[i>>2]|0;if((i|0)==(f|0))break;ik(e,0,i);i=a[(a[i+16>>2]|0)+112>>2]|0;n=i+4|0;a[n>>2]=a[n>>2]|16;i=i+16|0}ik(e,0,f);n=a[(a[r>>2]|0)+112>>2]|0;A=n+4|0;a[A>>2]=a[A>>2]|16;if(a[n+32>>2]|0){A=Ak()|0;i=(a[(a[r>>2]|0)+112>>2]|0)+24|0;while(1){i=a[i>>2]|0;if((i|0)==(f|0))break;ik(A,0,i);i=a[(a[i+16>>2]|0)+112>>2]|0;n=i+4|0;a[n>>2]=a[n>>2]|16;i=i+16|0}ck(e,A)}}else{e=Ak()|0;n=cd(A)|0;ik(e,0,n);n=(a[(a[n+16>>2]|0)+112>>2]|0)+4|0;a[n>>2]=a[n>>2]|16}return e|0}function hk(A,e){A=A|0;e=e|0;var i=0;i=cd(A)|0;while(1){if(!i)break;if(!(a[(a[(a[i+16>>2]|0)+112>>2]|0)+4>>2]&16))Ek(A,i,e);i=sd(A,i)|0}return}function dk(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;n=k;k=k+16|0;f=n;i=gk(A,e)|0;a[f>>2]=i;A:do{if(i){r=0;while(1){if((r|0)>=10)break A;A=vk(A,e,f)|0;l=i;i=a[f>>2]|0;if((l|0)==(i|0)|(i|0)==0)break;else r=r+1|0}}}while(0);k=n;return A|0}function Bk(A){A=A|0;var e=0.0,i=0.0,r=0.0,f=0;e=0.0;while(1){A=a[A>>2]|0;if(!A)break;f=a[(a[a[(a[(a[A>>2]|0)+16>>2]|0)+112>>2]>>2]|0)+16>>2]|0;i=+s[f+32>>3];i=i>e?i:e;r=+s[f+40>>3];e=r>i?r:i;A=A+4|0}return+e}function gk(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;s=Fk()|0;r=cd(e)|0;while(1){if(!r)break;i=Oo(e,r)|0;while(1){if(!i)break;a[a[(a[i+16>>2]|0)+120>>2]>>2]=0;i=_o(e,i)|0}r=sd(e,r)|0}c=1;i=0;while(1){l=a[A>>2]|0;if(!l)break;t=a[l>>2]|0;n=Ah(e,t)|0;while(1){if(!n)break;f=n+16|0;if((a[a[(a[f>>2]|0)+120>>2]>>2]|0)>0){A=y5[a[s>>2]&63](s,0,128)|0;while(1){if(!A)break;r=a[A+8>>2]|0;if((a[a[(a[r+16>>2]|0)+120>>2]>>2]|0)>(a[a[(a[f>>2]|0)+120>>2]>>2]|0)?(b=a[r>>2]&3,(a[((b|0)==2?r:r+-48|0)+40>>2]|0)!=(t|0)):0)i=i+((a[((b|0)==3?r:r+48|0)+40>>2]|0)!=(t|0)&1)|0;A=y5[a[s>>2]&63](s,A,8)|0}Xk(s,n)}n=eh(e,n,t)|0}r=Ah(e,t)|0;while(1){if(!r)break;A=a[(a[r+16>>2]|0)+120>>2]|0;if(!(a[A>>2]|0)){a[A>>2]=c;Rk(s,r)}r=eh(e,r,t)|0}A=l+4|0;c=c+1|0}Nk(s);return i|0}function vk(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0;r=a[i>>2]|0;s=cd(e)|0;A:while(1){if(!s)break;c=Ah(e,s)|0;while(1){if(!c)break;n=a[c>>2]&3;f=a[((n|0)==3?c:c+48|0)+40>>2]|0;if((f|0)==(s|0))f=a[((n|0)==2?c:c+-48|0)+40>>2]|0;t=0;while(1){if((t|0)>=2)break;l=nk(A)|0;lk(A,s,f,t);n=gk(A,e)|0;if((n|0)<(r|0)){ek(l);if(!n){r=0;break A}else r=n}else{ek(A);A=l}t=t+1|0}c=eh(e,c,s)|0}s=sd(e,s)|0}a[i>>2]=r;return A|0}function Ek(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;l=Ak()|0;r=Oo(A,e)|0;while(1){if(!r)break;f=r+-48|0;ik(l,0,a[((a[r>>2]&3|0)==2?r:f)+40>>2]|0);f=(a[(a[(a[((a[r>>2]&3|0)==2?r:f)+40>>2]|0)+16>>2]|0)+112>>2]|0)+4|0;a[f>>2]=a[f>>2]|32;r=_o(A,r)|0}r=qo(A,e)|0;while(1){if(!r)break;f=r+48|0;ik(l,0,a[((a[r>>2]&3|0)==3?r:f)+40>>2]|0);f=(a[(a[(a[((a[r>>2]&3|0)==3?r:f)+40>>2]|0)+16>>2]|0)+112>>2]|0)+4|0;a[f>>2]=a[f>>2]|32;r=$o(A,r)|0}A:do{if((tk(l)|0)>1){f=i+4|0;A=i;while(1){r=a[A>>2]|0;if(!r){n=13;break A}A=r+4|0;if(!(a[(a[(a[(a[r>>2]|0)+16>>2]|0)+112>>2]|0)+4>>2]&32))continue;if(a[(a[(a[(a[a[((r|0)==(a[f>>2]|0)?i:A)>>2]>>2]|0)+16>>2]|0)+112>>2]|0)+4>>2]&32|0)break}ik(i,r,e)}else n=13}while(0);A:do{if((n|0)==13){e:do{if((tk(l)|0)>0){r=i;while(1){r=a[r>>2]|0;if(!r)break e;if(a[(a[(a[(a[r>>2]|0)+16>>2]|0)+112>>2]|0)+4>>2]&32|0)break;r=r+4|0}ik(i,r,e);break A}}while(0);ik(i,0,e)}}while(0);r=l;while(1){r=a[r>>2]|0;if(!r)break;i=(a[(a[(a[r>>2]|0)+16>>2]|0)+112>>2]|0)+4|0;a[i>>2]=a[i>>2]&-33;r=r+4|0}ek(l);return}function Ck(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,s=0;while(1){n=a[(a[(a[e+16>>2]|0)+112>>2]|0)+16>>2]|0;if(!n)break;l=i+1|0;t=n+16|0;c=a[(a[t>>2]|0)+112>>2]|0;e=c+16|0;f=a[e+12>>2]|0;if(f){if((f|0)>(i|0)){s=11;break}e=a[e+4>>2]|0;f=e;if((e|0)==(r|0))e=c;else{i=c+24|0;if(!((a[c+32>>2]|0)!=0?(a[i>>2]|0)==(r|0):0))r=e;a[i>>2]=f;e=a[(a[t>>2]|0)+112>>2]|0;a[e+32>>2]=a[e+16+12>>2];e=a[(a[t>>2]|0)+112>>2]|0}e=e+16|0}a[e+4>>2]=A;a[(a[(a[t>>2]|0)+112>>2]|0)+16+12>>2]=l;e=n;i=l}if((s|0)==11?(a[c+32>>2]|0)<=(i|0):0){a[c+24>>2]=A;a[(a[(a[t>>2]|0)+112>>2]|0)+32>>2]=l}return}function Ik(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;n=(a[(a[e+16>>2]|0)+112>>2]|0)+4|0;a[n>>2]=a[n>>2]|1;n=Ah(A,e)|0;while(1){if(!n)break;f=a[n>>2]&3;r=a[((f|0)==2?n:n+-48|0)+40>>2]|0;if((r|0)==(e|0))r=a[((f|0)==3?n:n+48|0)+40>>2]|0;f=r+16|0;if(!(a[(a[(a[f>>2]|0)+112>>2]|0)+4>>2]&1)){uh(i,n,1)|0;a[(a[(a[f>>2]|0)+112>>2]|0)+16>>2]=e;Ik(A,r,i)}n=eh(A,n,e)|0}return}function Zk(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;s=k;k=k+144|0;c=s+8|0;t=s;i=s+16|0;l=a[46934]|0;a[46934]=l+1;a[t>>2]=l;S4(i,96312,t)|0;t=NB(A,i,1)|0;Td(t,137483,280,1)|0;l=a[46934]|0;a[46934]=l+1;a[c>>2]=l;S4(i,96312,c)|0;l=A+24|0;r[c>>0]=r[l>>0]|0;r[c+1>>0]=r[l+1>>0]|0;r[c+2>>0]=r[l+2>>0]|0;r[c+3>>0]=r[l+3>>0]|0;c=kh(i,c,0)|0;i=cd(A)|0;while(1){if(!i)break;kd(t,i,1)|0;l=gd(c,Vh(i)|0,1)|0;Td(l,137447,304,1)|0;a[(a[(a[i+16>>2]|0)+112>>2]|0)+16>>2]=l;i=sd(A,i)|0}f=cd(A)|0;while(1){if(!f)break;n=a[(a[(a[f+16>>2]|0)+112>>2]|0)+16>>2]|0;l=n+16|0;i=Oo(A,f)|0;while(1){if(!i)break;uh(t,i,1)|0;b=a[(a[(a[(a[((a[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0)+16>>2]|0;u=th(c,n,b,0,1)|0;Td(u,137460,176,1)|0;a[(a[u+16>>2]|0)+116>>2]=i;u=(a[l>>2]|0)+236|0;a[u>>2]=(a[u>>2]|0)+1;b=(a[b+16>>2]|0)+236|0;a[b>>2]=(a[b>>2]|0)+1;i=_o(A,i)|0}f=sd(A,f)|0}a[e>>2]=c;k=s;return t|0}function Gk(A){A=A|0;var e=0,i=0;i=Qk()|0;e=cd(A)|0;while(1){if(!e)break;Yk(i,e);e=sd(A,e)|0}return i|0}function mk(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0;u=a[(a[e+16>>2]|0)+236>>2]|0;o=u<<2;k=$F(o)|0;o=$F(o)|0;t=0;b=Ah(A,e)|0;w=0;f=0;while(1){if(!b)break;r=a[b>>2]&3;n=a[((r|0)==2?b:b+-48|0)+40>>2]|0;if((n|0)==(e|0))n=a[((r|0)==3?b:b+48|0)+40>>2]|0;l=0;s=Ah(A,e)|0;c=t;while(1){if(!s)break;if((s|0)!=(b|0)){t=a[s>>2]&3;r=a[((t|0)==2?s:s+-48|0)+40>>2]|0;if((r|0)==(e|0))r=a[((t|0)==3?s:s+48|0)+40>>2]|0;t=th(A,n,r,0,0)|0;if(t)if(n>>>0 >>0){r=c+1|0;l=t+16|0;t=a[(a[l>>2]|0)+116>>2]|0;if(!t)l=1;else{Cd(i,t)|0;a[(a[l>>2]|0)+116>>2]=0;l=1}}else{l=1;r=c}else r=c}else r=c;s=eh(A,s,e)|0;c=r}if(!l){a[o+(w<<2)>>2]=n;r=w+1|0}else{a[k+(f<<2)>>2]=n;r=w;f=f+1|0}t=c;b=eh(A,b,e)|0;w=r}r=u+-1-t|0;A:do{if((r|0)>0){if((r|0)<(w|0))n=0;else{if((r|0)!=(w|0))break;f=a[k>>2]|0;n=f+16|0;r=0;while(1){if((r|0)>=(w|0))break A;u=a[o+(r<<2)>>2]|0;Td(th(A,f,u,0,1)|0,137460,176,1)|0;i=(a[n>>2]|0)+236|0;a[i>>2]=(a[i>>2]|0)+1;u=(a[u+16>>2]|0)+236|0;a[u>>2]=(a[u>>2]|0)+1;r=r+1|0}}while(1){if((n|0)>=(w|0)){f=2;break}f=n|1;if((f|0)>=(w|0)){f=2;break}i=a[o+(n<<2)>>2]|0;u=a[o+(f<<2)>>2]|0;Td(th(A,i,u,0,1)|0,137460,176,1)|0;i=(a[i+16>>2]|0)+236|0;a[i>>2]=(a[i>>2]|0)+1;u=(a[u+16>>2]|0)+236|0;a[u>>2]=(a[u>>2]|0)+1;n=n+2|0;r=r+-1|0}while(1){if((r|0)<=0)break A;u=a[o>>2]|0;w=a[o+(f<<2)>>2]|0;Td(th(A,u,w,0,1)|0,137460,176,1)|0;u=(a[u+16>>2]|0)+236|0;a[u>>2]=(a[u>>2]|0)+1;w=(a[w+16>>2]|0)+236|0;a[w>>2]=(a[w>>2]|0)+1;f=f+1|0;r=r+-1|0}}}while(0);L2(o);L2(k);return}function Qk(){return jk(18240,a[4581]|0)|0}function Lk(A,e,i){A=A|0;e=e|0;i=i|0;i=$F(16)|0;a[i+12>>2]=0;a[i+8>>2]=a[e+8>>2];return i|0}function yk(A,e,i){A=A|0;e=e|0;i=i|0;L2(e);return}function Wk(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;e=a[e>>2]|0;r=a[i>>2]|0;return((e|0)<(r|0)?-1:(e|0)>(r|0)&1)|0}function zk(A){A=A|0;Hk(A)|0;return}function Yk(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=k;k=k+16|0;f=i;r=e+16|0;a[f+8>>2]=a[(a[r>>2]|0)+236>>2];A=(y5[a[A>>2]&63](A,f,1)|0)+12|0;a[(a[r>>2]|0)+164>>2]=a[A>>2];a[A>>2]=e;k=i;return}function Dk(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;l=k;k=k+16|0;n=l;f=e+16|0;a[n+8>>2]=a[(a[f>>2]|0)+236>>2];n=y5[a[A>>2]&63](A,n,4)|0;if(!n)gA(96322,96325,107,96335);r=n+12|0;i=a[r>>2]|0;if((i|0)==(e|0)){e=a[(a[f>>2]|0)+164>>2]|0;a[r>>2]=e;if(!e)y5[a[A>>2]&63](A,n,2)|0}else{do{A=(a[i+16>>2]|0)+164|0;i=a[A>>2]|0;r=(i|0)!=0}while(r&(i|0)!=(e|0));if(r)a[A>>2]=a[(a[i+16>>2]|0)+164>>2]}k=l;return}function Mk(A){A=A|0;var e=0,i=0,r=0,f=0;i=y5[a[A>>2]&63](A,0,128)|0;if(i){f=i+12|0;e=a[f>>2]|0;r=a[(a[e+16>>2]|0)+164>>2]|0;a[f>>2]=r;if(!r)y5[a[A>>2]&63](A,i,2)|0}else e=0;return e|0}function Fk(){return jk(18276,a[4581]|0)|0}function Vk(A,e,i){A=A|0;e=e|0;i=i|0;i=$F(12)|0;a[i+8>>2]=a[e+8>>2];return i|0}function Jk(A,e,i){A=A|0;e=e|0;i=i|0;L2(e);return}function pk(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;e=a[e>>2]|0;r=a[i>>2]|0;return(e>>>0>r>>>0?1:(e>>>0 >>0)<<31>>31)|0}function Nk(A){A=A|0;Hk(A)|0;return}function Rk(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+16|0;r=i;a[r+8>>2]=e;y5[a[A>>2]&63](A,r,1)|0;k=i;return}function Xk(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+16|0;r=i;a[r+8>>2]=e;y5[a[A>>2]&63](A,r,2)|0;k=i;return}function Hk(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0;do{if((A|0)!=0?(a[A+24>>2]|0)<=0:0){l=a[A+4>>2]|0;n=l+32|0;e=a[n>>2]|0;if(e){e=W5[e&127](A,2,0,l)|0;if((e|0)<0){e=-1;break}}else e=0;if(a[A+28>>2]|0)_k(A,0)|0;f=(e|0)==0;if(f){y5[a[a[A+16>>2]>>2]&63](A,0,64)|0;if((Sk(A)|0)>0){e=-1;break}i=A+8|0;e=a[i>>2]|0;if((a[e+12>>2]|0)>0){r=A+12|0;W5[a[r>>2]&127](A,a[e+8>>2]|0,0,l)|0;e=a[i>>2]|0}else r=A+12|0;W5[a[r>>2]&127](A,e,0,l)|0}e=a[A+20>>2]|0;if(e){if(f&(e|0)==1)W5[a[A+12>>2]&127](A,A,0,l)|0}else L2(A);e=a[n>>2]|0;if(!e)e=0;else{W5[e&127](A,6,0,l)|0;e=0}}else e=-1}while(0);return e|0}function Uk(A){A=A|0;var e=0,i=0,r=0;r=A+8|0;e=a[r>>2]|0;i=a[e>>2]|0;A:do{if(!(i&12)){if(!(i&3)){i=e+8|0;A=a[i>>2]|0;a[i>>2]=0;break}A=xk(A)|0;i=a[r>>2]|0;e=a[i+8>>2]|0;i=e+(a[i+12>>2]<<2)|0;while(1){if(e>>>0>=i>>>0)break A;a[e>>2]=0;e=e+4|0}}else A=a[e+4>>2]|0}while(0);r=a[r>>2]|0;a[r>>2]=a[r>>2]&-4097;a[r+16>>2]=0;a[r+4>>2]=0;return A|0}function xk(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;n=A+8|0;A=a[n>>2]|0;e=a[A>>2]|0;if(!(e&4096)){A:do{if(!(e&3)){if(e&112|0){A=a[A+8>>2]|0;break}A=a[A+4>>2]|0;if(!A)A=0;else{while(1){e=A+4|0;i=a[e>>2]|0;if(!i){r=A;break}a[e>>2]=a[i>>2];a[i>>2]=A;A=i}while(1){e=a[r>>2]|0;if(!e)break A;i=a[e+4>>2]|0;if(!i){r=e;continue}while(1){a[e+4>>2]=a[i>>2];a[i>>2]=e;e=a[i+4>>2]|0;if(!e)break;else{f=i;i=e;e=f}}a[r>>2]=i;r=i}}}else{r=a[A+8>>2]|0;f=r+(a[A+12>>2]<<2)|0;e=0;A=0;while(1){if(r>>>0>=f>>>0)break A;i=a[r>>2]|0;if(i){if(!e){e=i;A=i}else a[e>>2]=i;while(1){i=a[e>>2]|0;if(!i)break;else e=i}a[r>>2]=e}r=r+4|0}}}while(0);n=a[n>>2]|0;a[n+4>>2]=A;a[n>>2]=a[n>>2]|4096}else A=a[A+4>>2]|0;return A|0}function Tk(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0;B=A+8|0;if(a[a[B>>2]>>2]&4096|0)Pk(A,0)|0;d=a[A+4>>2]|0;u=a[d>>2]|0;w=a[d+4>>2]|0;h=d+8|0;v=a[h>>2]|0;k=a[d+20>>2]|0;o=A+20|0;f=a[o>>2]&-32769;a[o>>2]=f;A:do{if(!e){if(i&384|0){f=a[B>>2]|0;r=a[f+8>>2]|0;if(!r){r=0;break}if(i&256){r=a[r+4>>2]|0;a[f+4>>2]=r;if(!r){r=0;break}}else a[f+4>>2]=r;if((v|0)<0){r=a[r+8>>2]|0;break}else{r=r+(0-v)|0;break}}if(i&4098|0){r=a[B>>2]|0;if(a[r>>2]&144|0){r=0;break}r=a[r+8>>2]|0;if(!r){r=0;break}else{l=r;g=84;break}}if(!(i&64))r=0;else{t=d+16|0;e:do{if((a[t>>2]|0)!=0|(v|0)<0){c=A+12|0;s=(v|0)<0;f=0-v|0;r=a[(a[B>>2]|0)+8>>2]|0;while(1){if(!r)break e;n=a[r>>2]|0;l=a[t>>2]|0;if(l|0){if(s)e=a[r+8>>2]|0;else e=r+f|0;J5[l&127](A,e,d)}if((a[h>>2]|0)>=0){r=n;continue}W5[a[c>>2]&127](A,r,0,d)|0;r=n}}}while(0);r=a[B>>2]|0;a[r+4>>2]=0;a[r+8>>2]=0;a[(a[B>>2]|0)+16>>2]=0;r=0}}else{if(i&2049|0){n=d+12|0;r=a[n>>2]|0;l=(i&1|0)==0;if(!(l|(r|0)==0)){r=y5[r&63](A,e,d)|0;if(!r){r=0;break}else f=r}else f=e;do{if((v|0)>-1)l=f+v|0;else{r=W5[a[A+12>>2]&127](A,0,12,d)|0;if(r|0){a[r+8>>2]=f;l=r;break}if(!(a[n>>2]|0)){r=0;break A}r=a[d+16>>2]|0;if(l|(r|0)==0){r=0;break A}J5[r&127](A,f,d);r=0;break A}}while(0);n=a[B>>2]|0;r=a[n>>2]|0;do{if(!(r&128)){if(!(r&16))if(!(r&32)){g=51;break}else{g=48;break}f=a[n+4>>2]|0;r=(f|0)!=0;if(!(i&8192)){if(!r){g=48;break}if((f|0)==(a[n+8>>2]|0)){g=48;break}d=f+4|0;A=a[d>>2]|0;a[l+4>>2]=A;a[A>>2]=l;a[l>>2]=f;a[d>>2]=l;break}else{if(!r){g=51;break}r=a[f>>2]|0;if(!r){g=51;break}a[l>>2]=r;a[r+4>>2]=l;a[l+4>>2]=f;a[f>>2]=l;break}}else if(!(i&8192))g=48;else g=51}while(0);if((g|0)==48){r=a[n+8>>2]|0;a[l>>2]=r;if(!r)r=l;else a[l+4>>2]=a[r+4>>2];a[r+4>>2]=l;a[(a[B>>2]|0)+8>>2]=l}else if((g|0)==51){f=n+8|0;r=a[f>>2]|0;if(!r){a[f>>2]=l;r=l}else{d=r+4|0;a[a[d>>2]>>2]=l;a[l+4>>2]=a[d>>2]}a[r+4>>2]=l;a[l>>2]=0}r=a[B>>2]|0;f=r+16|0;n=a[f>>2]|0;if((n|0)>-1)a[f>>2]=n+1;a[r+4>>2]=l;if((v|0)<0){r=a[l+8>>2]|0;break}else{r=l+(0-v)|0;break}}l=a[B>>2]|0;do{if(!(i&512)){r=a[l+4>>2]|0;if(r|0){if((v|0)<0)n=a[r+8>>2]|0;else n=r+(0-v)|0;if((n|0)==(e|0))break}r=e+u|0;if((w|0)<0){e=a[r>>2]|0;g=68}else{e=r;g=68}}else g=68}while(0);if((g|0)==68){n=(v|0)<0;t=(w|0)<0;c=(k|0)==0;s=(w|0)<1;b=0-v|0;r=l+8|0;do{r=a[r>>2]|0;if(!r){r=0;break A}if(n)f=a[r+8>>2]|0;else f=r+b|0;f=f+u|0;if(t)f=a[f>>2]|0;do{if(c)if(s){f=A1(e,f)|0;break}else{f=F4(e,f,w)|0;break}else f=W5[k&127](A,e,f,d)|0}while(0)}while((f|0)!=0);f=a[o>>2]|0}a[o>>2]=f|32768;if(!(i&4098)){do{if(!(i&8)){f=a[B>>2]|0;if(!(i&16)){a[f+4>>2]=r;break}if((r|0)==(a[f+8>>2]|0)){a[f+4>>2]=0;r=0;break A}else{r=r+4|0;g=108;break}}else{f=a[B>>2]|0;g=108}}while(0);if((g|0)==108){r=a[r>>2]|0;a[f+4>>2]=r;if(!r){r=0;break}}if((v|0)<0){r=a[r+8>>2]|0;break}else{r=r+(0-v)|0;break}}else{l=r;g=84}}}while(0);if((g|0)==84){r=a[l>>2]|0;if(r){a[r+4>>2]=a[l+4>>2];r=a[l>>2]|0}f=(a[B>>2]|0)+8|0;n=a[f>>2]|0;if((l|0)==(n|0)){a[f>>2]=r;r=a[(a[B>>2]|0)+8>>2]|0;if(r|0)a[r+4>>2]=a[l+4>>2]}else{f=l+4|0;a[a[f>>2]>>2]=r;r=n+4|0;if((l|0)==(a[r>>2]|0))a[r>>2]=a[f>>2]}r=a[B>>2]|0;f=r+4|0;if((l|0)==(a[f>>2]|0))n=a[l>>2]|0;else n=0;a[f>>2]=n;g=r+16|0;a[g>>2]=(a[g>>2]|0)+-1;if((v|0)<0)r=a[l+8>>2]|0;else r=l+(0-v)|0;f=a[d+16>>2]|0;if(!((i&2|0)==0|(f|0)==0))J5[f&127](A,r,d);if((a[h>>2]|0)<0)W5[a[A+12>>2]&127](A,l,0,d)|0}return r|0}function jk(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0;c=k;k=k+16|0;n=c;A:do{if((A|0)!=0&(e|0)!=0?(f=Q2(40)|0,(f|0)!=0):0){a[f>>2]=0;a[f+16>>2]=0;a[f+4>>2]=0;Ao(f,A,0)|0;i=f+20|0;t=A+32|0;a[i>>2]=0;a[i+4>>2]=0;a[i+8>>2]=0;a[i+12>>2]=0;a[i+16>>2]=0;i=a[t>>2]|0;do{if(i){a[n>>2]=0;i=W5[i&127](f,1,n,A)|0;if((i|0)>=0)if(i){r=a[n>>2]|0;if(r|0)if(!(a[e+4>>2]&a[r>>2])){i=f;l=12;break}else{i=f;break}i=A+28|0;if(!(a[i>>2]|0)){i=f;l=12}else{L2(f);r=W5[a[i>>2]&127](0,0,40,A)|0;if(!r){i=0;break A}a[r>>2]=0;a[r+16>>2]=0;a[r+4>>2]=0;Ao(r,A,0)|0;a[r+20>>2]=1;a[r+24>>2]=0;a[r+32>>2]=0;a[r+28>>2]=0;i=r;f=r;l=11}}else{i=f;l=11}else{i=f;l=12}}else{i=f;l=11}}while(0);if((l|0)==11){r=W5[a[i+12>>2]&127](i,0,28,A)|0;a[n>>2]=r;if(!r){i=f;l=12}else{a[r>>2]=a[e+4>>2];n=r+4|0;a[n>>2]=0;a[n+4>>2]=0;a[n+8>>2]=0;a[n+12>>2]=0;a[n+16>>2]=0;a[n+20>>2]=0}}if((l|0)==12){L2(i);i=0;break}a[i+8>>2]=r;a[i>>2]=a[e>>2];a[i+16>>2]=e;r=a[t>>2]|0;if(r)W5[r&127](i,5,f,A)|0}else i=0}while(0);k=c;return i|0}function Pk(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0;f=a[a[A+16>>2]>>2]|0;c=A+8|0;n=a[c>>2]|0;l=a[n>>2]|0;i=l&4096;if(!e)if(!i)e=-1;else{r=i;e=a[n+4>>2]|0;t=5}else if(!(a[n+16>>2]|0)){r=0;t=5}else e=-1;A:do{if((t|0)==5){a[n>>2]=l&-4097;if(!(l&3)){i=n+4|0;if(!(l&12)){a[i>>2]=0;i=n+8|0}a[i>>2]=e;if(r|0){e=0;break}a[(a[c>>2]|0)+16>>2]=-1;e=0;break}a[n+4>>2]=0;if(!r){a[n+16>>2]=0;while(1){if(!e){e=0;break A}c=a[e>>2]|0;y5[f&63](A,e,32)|0;e=c}}r=a[n+8>>2]|0;A=r+(a[n+12>>2]<<2)|0;while(1){if(r>>>0>=A>>>0){e=0;break A}i=a[r>>2]|0;if(i){a[r>>2]=e;e=a[i>>2]|0;a[i>>2]=0}r=r+4|0}}}while(0);return e|0}function Sk(A){A=A|0;var e=0,i=0,r=0;e=A+8|0;i=a[e>>2]|0;if(a[i>>2]&4096){Pk(A,0)|0;i=a[e>>2]|0}r=i+16|0;A=a[r>>2]|0;do{if((A|0)<0){e=a[i>>2]|0;if(e&12|0){A=Ok(a[i+4>>2]|0)|0;a[r>>2]=A;break}if(e&112){A=0;e=i+8|0;while(1){e=a[e>>2]|0;if(!e)break;A=A+1|0}a[r>>2]=A}}}while(0);return A|0}function Ok(A){A=A|0;var e=0;if(!A)return 0;else{e=Ok(a[A+4>>2]|0)|0;return e+1+(Ok(a[A>>2]|0)|0)|0}return 0}function Kk(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0;Y=k;k=k+128|0;G=Y+120|0;d=Y;z=A+8|0;r=a[z>>2]|0;if(a[r>>2]&4096){Pk(A,0)|0;r=a[z>>2]|0}W=a[A+4>>2]|0;m=a[W>>2]|0;Q=a[W+4>>2]|0;I=W+8|0;y=a[I>>2]|0;L=a[W+20>>2]|0;g=A+20|0;a[g>>2]=a[g>>2]&-32769;l=a[r+4>>2]|0;A:do{if(!e)if((i&448|0)==0|(l|0)==0)r=0;else{if(!(i&64)){e:do{if(!(i&256)){r=l;while(1){f=r+4|0;n=a[f>>2]|0;if(!n)break e;a[f>>2]=a[n>>2];a[n>>2]=r;r=n}}else{r=l;while(1){f=a[r>>2]|0;if(!f)break e;A=f+4|0;a[r>>2]=a[A>>2];a[A>>2]=r;r=f}}}while(0);a[(a[z>>2]|0)+4>>2]=r;if((y|0)<0){r=a[r+8>>2]|0;break}else{r=r+(0-y)|0;break}}e=W+16|0;if((a[e>>2]|0)!=0|(y|0)<0){c=A+12|0;s=(y|0)<0;t=0-y|0;r=l;do{l=r;while(1){r=l+4|0;f=a[r>>2]|0;if(!f)break;a[r>>2]=a[f>>2];a[f>>2]=l;l=f}r=a[l>>2]|0;f=a[e>>2]|0;if(f|0){if(s)n=a[l+8>>2]|0;else n=l+t|0;J5[f&127](A,n,W)}if((a[I>>2]|0)<0)W5[a[c>>2]&127](A,l,0,W)|0}while((r|0)!=0);r=a[z>>2]|0}a[r+16>>2]=0;a[r+4>>2]=0;r=0}else{Z=A+16|0;v=(i&4098|0)==0;e:do{if(v|(a[(a[Z>>2]|0)+4>>2]|0)!=8)E=45;else{s=(Q|0)<0;r=e+m|0;if(s)r=a[r>>2]|0;t=(L|0)==0;c=(Q|0)<1;n=y5[a[A>>2]&63](A,e,4)|0;while(1){if(!n){E=45;break e}f=n+m|0;if(s)f=a[f>>2]|0;do{if(t)if(c){f=A1(r,f)|0;break}else{f=F4(r,f,Q)|0;break}else f=W5[L&127](A,r,f,W)|0}while(0);if(f|0){E=45;break e}if((n|0)==(e|0))break;n=y5[a[A>>2]&63](A,n,8)|0}l=a[(a[z>>2]|0)+4>>2]|0;a[G>>2]=a[l+4>>2];a[G+4>>2]=a[l>>2];r=G;E=180}}while(0);e:do{if((E|0)==45){do{if(!(i&2565)){if(i&32|0){if((y|0)<0)n=a[e+8>>2]|0;else n=e+(0-y)|0;r=n+m|0;if((Q|0)<0)f=a[r>>2]|0;else f=r;if(!l){r=e;f=G;l=G;E=198;break}else{r=e;B=f;c=e;E=64;break}}if(l){if((y|0)<0)r=a[l+8>>2]|0;else r=l+(0-y)|0;if((r|0)!=(e|0)){f=e+m|0;if((Q|0)<0){n=e;r=0;B=a[f>>2]|0;c=0;E=64}else{n=e;r=0;B=f;c=0;E=64}}else{r=0;n=e;f=G;s=G;c=0;E=141}}else{r=0;n=e;f=G;l=G;E=198}}else{if(!(i&512)){r=e+m|0;if((Q|0)<0)f=a[r>>2]|0;else f=r}else f=e;if(!l){r=0;n=e;f=G;l=G;E=198}else{n=e;r=0;B=f;c=0;E=64}}}while(0);i:do{if((E|0)==64){r:do{if((a[(a[Z>>2]|0)+4>>2]|0)==4?(h=a[(a[z>>2]|0)+24>>2]|0,!((i&516|0)==0|(h|0)==0)):0){e=(y|0)<0;b=(Q|0)<0;u=(L|0)==0;w=(Q|0)<1;o=0-y|0;s=0;f=l;while(1){if((s|0)>=(h|0)){f=G;s=G;b=0;break}if(e)t=a[f+8>>2]|0;else t=f+o|0;t=t+m|0;if(b)t=a[t>>2]|0;do{if(u)if(w){t=A1(B,t)|0;break}else{t=F4(B,t,Q)|0;break}else t=W5[L&127](A,B,t,W)|0}while(0);if(!t){E=80;break}a[d+(s<<2)>>2]=t;f=a[((t|0)<0?f+4|0:f)>>2]|0;if(!f){r=0;break A}else s=s+1|0}if((E|0)==80)if(e){r=a[f+8>>2]|0;break A}else{r=f+o|0;break A}while(1){if((b|0)>=(h|0))break r;do{if((a[d+(b<<2)>>2]|0)<0){t=l+4|0;e=a[t>>2]|0;if((a[d+((b|1)<<2)>>2]|0)<0){a[t>>2]=a[e>>2];a[e>>2]=l;a[f+4>>2]=e;f=e;l=s;t=e+4|0;break}else{a[s>>2]=e;a[f+4>>2]=l;f=l;l=e;t=e;break}}else{t=a[l>>2]|0;if((a[d+((b|1)<<2)>>2]|0)>0){o=t+4|0;a[l>>2]=a[o>>2];a[o>>2]=l;a[s>>2]=t;l=t;break}else{a[f+4>>2]=t;a[s>>2]=l;f=t;t=t+4|0;break}}}while(0);s=l;b=b+2|0;l=a[t>>2]|0}}else{f=G;s=G}}while(0);u=(y|0)<0;w=(Q|0)<0;o=(L|0)!=0;h=(Q|0)<1;d=0-y|0;t=l;r:while(1){l=t;while(1){if(u)t=a[l+8>>2]|0;else t=l+d|0;t=t+m|0;if(w)t=a[t>>2]|0;do{if(!o)if(h){t=A1(B,t)|0;break}else{t=F4(B,t,Q)|0;break}else t=W5[L&127](A,B,t,W)|0}while(0);if(!t){E=140;break r}if((t|0)>=0)break;e=l+4|0;b=a[e>>2]|0;if(!b){E=121;break r}if(u)t=a[b+8>>2]|0;else t=b+d|0;t=t+m|0;if(w)t=a[t>>2]|0;do{if(!o)if(h){t=A1(B,t)|0;break}else{t=F4(B,t,Q)|0;break}else t=W5[L&127](A,B,t,W)|0}while(0);if((t|0)>=0){E=118;break}a[e>>2]=a[b>>2];a[b>>2]=l;a[f+4>>2]=b;l=a[b+4>>2]|0;if(!l){f=b;l=s;E=198;break i}else f=b}if((E|0)==118){E=0;if(!t){E=119;break}a[s>>2]=b;a[f+4>>2]=l;t=a[b>>2]|0;if(!t){f=l;l=b;E=198;break i}else{f=l;s=b;continue}}e=a[l>>2]|0;if(!e){E=139;break}if(u)t=a[e+8>>2]|0;else t=e+d|0;t=t+m|0;if(w)t=a[t>>2]|0;do{if(!o)if(h){t=A1(B,t)|0;break}else{t=F4(B,t,Q)|0;break}else t=W5[L&127](A,B,t,W)|0}while(0);if((t|0)>0){t=e+4|0;a[l>>2]=a[t>>2];a[t>>2]=l;a[s>>2]=e;t=a[e>>2]|0;if(!t){l=e;E=198;break i}else{s=e;continue}}if(!t){E=137;break}a[f+4>>2]=e;a[s>>2]=l;t=a[e+4>>2]|0;if(!t){f=e;E=198;break i}else{f=e;s=l}}if((E|0)==119){a[f+4>>2]=l;f=l;l=b;E=141;break}else if((E|0)==121){a[f+4>>2]=l;f=l;l=s;E=198;break}else if((E|0)==137){a[s>>2]=l;s=l;l=e;E=141;break}else if((E|0)==139){a[s>>2]=l;E=198;break}else if((E|0)==140)if(!l){l=s;E=198;break}else{E=141;break}}}while(0);do{if((E|0)==141){a[g>>2]=a[g>>2]|32768;t=l+4|0;a[s>>2]=a[t>>2];a[f+4>>2]=a[l>>2];if(!(i&516)){if(i&8|0){a[t>>2]=a[G>>2];a[l>>2]=0;a[G>>2]=l;E=169;break}if(i&16|0){E=G+4|0;a[l>>2]=a[E>>2];a[t>>2]=0;a[E>>2]=l;E=175;break}if(!v){r=f;E=180;break e}if(i&2049|0){if(a[(a[Z>>2]|0)+4>>2]&4|0){r=l;break}a[t>>2]=0;r=G+4|0;a[l>>2]=a[r>>2];a[r>>2]=l;r=l;E=205;break}if(!(i&32)){r=0;break A}if(!(a[(a[Z>>2]|0)+4>>2]&4)){a[r+4>>2]=0;I=G+4|0;a[r>>2]=a[I>>2];a[I>>2]=c;r=(a[z>>2]|0)+16|0;a[r>>2]=(a[r>>2]|0)+1;r=l;break}r=a[W+16>>2]|0;if(r|0)J5[r&127](A,n,W);if((a[I>>2]|0)<0){W5[a[A+12>>2]&127](A,c,0,W)|0;r=l}else r=l}else r=l}else if((E|0)==198){a[f+4>>2]=0;a[l>>2]=0;if(!(i&8))if(!(i&16)){if(i&516|0){r=f;break e}if(!(i&2049)){if(!(i&32)){n=0;r=f;break e}I=(a[z>>2]|0)+16|0;a[I>>2]=(a[I>>2]|0)+1}else{r=0;E=205}}else E=175;else E=169}}while(0);if((E|0)==169){l=G+4|0;r=a[l>>2]|0;if(!r){r=f;break}while(1){f=r+4|0;n=a[f>>2]|0;if(!n)break;a[f>>2]=a[n>>2];a[n>>2]=r;r=n}a[l>>2]=a[r>>2]}else if((E|0)==175){r=a[G>>2]|0;if(!r){r=f;break}while(1){f=a[r>>2]|0;if(!f)break;I=f+4|0;a[r>>2]=a[I>>2];a[I>>2]=r;r=f}a[G>>2]=a[r+4>>2]}else if((E|0)==205){t=W+12|0;l=a[t>>2]|0;c=(i&1|0)==0;if(!(c|(l|0)==0))n=y5[l&63](A,n,W)|0;do{if(n){if((y|0)>-1){r=n+y|0;E=215;break}r=W5[a[A+12>>2]&127](A,0,12,W)|0;if(r|0){a[r+8>>2]=n;break}if((a[t>>2]|0)!=0?(C=a[W+16>>2]|0,!(c|(C|0)==0)):0){J5[C&127](A,n,W);E=215}else E=215}else E=215}while(0);if((E|0)==215)if(!r){r=f;break}f=(a[z>>2]|0)+16|0;n=a[f>>2]|0;if((n|0)>-1)a[f>>2]=n+1}a[r+4>>2]=a[G>>2];a[r>>2]=a[G+4>>2];i:do{if(!((i&516|0)==0?1:(a[(a[Z>>2]|0)+4>>2]&8|0)==0)){b=(y|0)<0;if(b)f=a[r+8>>2]|0;else f=r+(0-y)|0;u=(Q|0)<0;f=f+m|0;if(u)f=a[f>>2]|0;c=(L|0)==0;s=(Q|0)<1;e=0-y|0;while(1){t=r+4|0;n=a[t>>2]|0;if(!n)break i;while(1){l=a[n>>2]|0;if(!l)break;G=l+4|0;a[n>>2]=a[G>>2];a[G>>2]=n;n=l}a[t>>2]=n;if(b)l=a[n+8>>2]|0;else l=n+e|0;l=l+m|0;if(u)l=a[l>>2]|0;do{if(c)if(s){l=A1(f,l)|0;break}else{l=F4(f,l,Q)|0;break}else l=W5[L&127](A,f,l,W)|0}while(0);if(l|0)break i;a[t>>2]=a[n>>2];a[n>>2]=r;r=n}}}while(0);a[(a[z>>2]|0)+4>>2]=r;if((y|0)<0){r=a[r+8>>2]|0;break A}else{r=r+(0-y)|0;break A}}}while(0);if((E|0)==180){if((y|0)<0)n=a[l+8>>2]|0;else n=l+(0-y)|0;f=a[W+16>>2]|0;if(!((i&2|0)==0|(f|0)==0))J5[f&127](A,n,W);if((a[I>>2]|0)<0)W5[a[A+12>>2]&127](A,l,0,W)|0;A=(a[z>>2]|0)+16|0;W=a[A>>2]|0;a[A>>2]=(W|0)<1?-1:W+-1|0}do{f=r+4|0;r=a[f>>2]|0}while((r|0)!=0);a[f>>2]=a[G>>2];a[(a[z>>2]|0)+4>>2]=a[G+4>>2];r=i&2|0?n:0}}while(0);k=Y;return r|0}function _k(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;if(a[a[A+8>>2]>>2]&4096|0)Pk(A,0)|0;f=(e|0)!=0;if(f){if(a[a[e+8>>2]>>2]&4096|0)Pk(e,0)|0;if((a[e+16>>2]|0)==(a[A+16>>2]|0)){i=e;r=7}else e=0}else{i=0;r=7}A:do{if((r|0)==7){while(1){if(!i)break;if((i|0)==(A|0)){e=0;break A}i=a[i+28>>2]|0;r=7}i=A+28|0;r=a[i>>2]|0;if(r|0){n=r+24|0;a[n>>2]=(a[n>>2]|0)+-1}a[A+32>>2]=0;a[i>>2]=0;if(f){a[i>>2]=e;a[A>>2]=28;n=e+24|0;a[n>>2]=(a[n>>2]|0)+1;break}else{a[A>>2]=a[a[A+16>>2]>>2];e=r;break}}}while(0);return e|0}function qk(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0;A:do{if(!(i&99)){if((i&516|0)==0?(r=a[(a[A+16>>2]|0)+4>>2]|0,!((i&384|0)!=0&(r&12|0)==0)):0){if(r&12|0){if(!(i&408)){r=0;break}k=(i&136|0)!=0;o=(i&272|0)!=0;b=0;f=0;r=0;w=A;while(1){if(!w)break;u=y5[a[a[w+16>>2]>>2]&63](w,e,i)|0;do{if(!u)n=b;else{l=a[w+4>>2]|0;t=a[l+4>>2]|0;c=a[l+20>>2]|0;n=u+(a[l>>2]|0)|0;if((t|0)<0)s=a[n>>2]|0;else s=n;if(r|0){do{if(!c)if((t|0)<1){n=A1(s,f)|0;break}else{n=F4(s,f,t)|0;break}else n=W5[c&127](w,s,f,l)|0}while(0);if(!(k&(n|0)<0|o&(n|0)>0)){n=b;break}}n=w;f=s;r=u}}while(0);b=n;w=a[w+28>>2]|0}a[A+32>>2]=b;break}if(!(i&24)){r=0;break}c=A+32|0;f=a[c>>2]|0;if(f){r=a[(a[f+4>>2]|0)+8>>2]|0;n=a[(a[f+8>>2]|0)+4>>2]|0;if((r|0)<0)r=a[n+8>>2]|0;else r=n+(0-r)|0;if((r|0)==(e|0))r=e;else{f=A;l=32}}else{f=A;l=32}do{if((l|0)==32){while(1){if(!f){l=33;break}r=y5[a[a[f+16>>2]>>2]&63](f,e,4)|0;if(r|0){l=36;break}f=a[f+28>>2]|0;l=32}if((l|0)==33){a[c>>2]=0;r=0;break A}else if((l|0)==36){a[c>>2]=f;break}}}while(0);t=(i<<4&128^128)+128|0;r=y5[a[a[f+16>>2]>>2]&63](f,r,i)|0;while(1){l=f+16|0;while(1){if(!r)break;else n=A;while(1){if((n|0)==(f|0))break A;if(y5[a[a[n+16>>2]>>2]&63](n,r,4)|0)break;n=a[n+28>>2]|0}r=y5[a[a[l>>2]>>2]&63](f,r,i)|0}f=a[f+28>>2]|0;a[c>>2]=f;if(!f){r=0;break A}r=y5[a[a[f+16>>2]>>2]&63](f,0,t)|0}}else f=A;while(1){if(!f){f=0;r=0;break}r=y5[a[a[f+16>>2]>>2]&63](f,e,i)|0;if(r|0)break;f=a[f+28>>2]|0}a[A+32>>2]=f}else r=y5[a[a[A+16>>2]>>2]&63](A,e,i)|0}while(0);return r|0}function $k(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;n=A+32|0;f=y5[a[A>>2]&63](A,0,128)|0;do{if(!f){r=0;break}l=a[n>>2]|0;r=f;f=y5[a[A>>2]&63](A,f,8)|0;r=y5[e&63]((l|0)==0?A:l,r,i)|0}while((r|0)>=0);return r|0}function Ao(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;f=A+4|0;w=a[f>>2]|0;A:do{if(w)if(e){u=a[a[A+16>>2]>>2]|0;n=A+8|0;if(a[a[n>>2]>>2]&4096|0)Pk(A,0)|0;r=a[w+32>>2]|0;if(r|0?(W5[r&127](A,3,e,w)|0)<0:0){e=0;break}a[f>>2]=e;r=a[e+28>>2]|0;a[A+12>>2]=(r|0)==0?52:r;r=a[a[n>>2]>>2]|0;if(!(r&112)){do{if(!(r&2))if(!(r&3))if(!(i&1))break;else{e=w;break A}else if((i&3|0)==3){e=w;break A}else break;else if(i&2|0){e=w;break A}}while(0);l=xk(A)|0;r=a[n>>2]|0;b=a[r>>2]|0;a[r>>2]=b&-4097;a[r+4>>2]=0;a[r+16>>2]=0;e:do{if(b&3|0){b=a[r+8>>2]|0;f=b+(a[r+12>>2]<<2)|0;r=b;while(1){if(r>>>0>=f>>>0)break e;a[r>>2]=0;r=r+4|0}}}while(0);t=(i&2|0)==0;c=e+8|0;s=e+4|0;b=e+24|0;while(1){if(!l){e=w;break A}i=a[l>>2]|0;if(t){r=a[c>>2]|0;if((r|0)<0)r=a[l+8>>2]|0;else r=l+(0-r)|0;n=a[s>>2]|0;r=r+(a[e>>2]|0)|0;if((n|0)<0)r=a[r>>2]|0;f=a[b>>2]|0;if(!f)r=io(0,r,n)|0;else r=y5[f&63](A,r,e)|0;a[l+4>>2]=r}y5[u&63](A,l,32)|0;l=i}}else e=w}else e=w;else{a[f>>2]=e;w=a[e+28>>2]|0;a[A+12>>2]=(w|0)==0?52:w}}while(0);return e|0}function eo(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;A=(i|0)==0;do{if(!e)if(A)A=0;else A=Q2(i)|0;else if(A){L2(e);A=0;break}else{A=W2(e,i)|0;break}}while(0);return A|0}function io(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,a=0,l=0;a=e;if((i|0)>=1){l=e+i+-1|0;a=(l>>>0 >>0?e:l)+(1-a)&-2;f=e;while(1){if(f>>>0>=l>>>0)break;A=U(((n[f>>0]|0)<<8)+A+(n[f+1>>0]|0)|0,17109811)|0;f=f+2|0}f=e+a|0;if(f>>>0>l>>>0)e=i;else{e=i;A=U(((n[f>>0]|0)<<8)+A|0,17109811)|0}}else{while(1){f=r[e>>0]|0;if(!(f<<24>>24))break;l=r[e+1>>0]|0;i=U(((f&255)<<8)+A+(l&255)|0,17109811)|0;A=i;e=e+(l<<24>>24?2:1)|0}e=e-a|0}return U(A+e|0,17109811)|0}function ro(A){A=A|0;var e=0;e=a[46935]|0;a[46935]=A;return e|0}function fo(A){A=A|0;var e=0;e=a[46936]|0;a[46936]=A;return e|0}function ao(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;r=k;k=k+16|0;f=r;a[f>>2]=i;i=no(A,e,f)|0;k=r;return i|0}function no(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0;n=k;k=k+16|0;r=n;f=(A|0)==3;l=f?a[46938]|0:(A|0)==2?1:A;a[46938]=l;t=a[46939]|0;a[46939]=t>>>0>l>>>0?t:l;do{if(l>>>0<(a[46936]|0)>>>0){A=a[46937]|0;if(!A){A=s6()|0;a[46937]=A;if(!A){A=1;break}}if(!f){w6(A)|0;A=a[46937]|0}o4(A,e,i)|0;A=0}else{if(a[46935]|0){lo(A,e,i);A=0;break}if(f)A=a[15712]|0;else{t=a[15712]|0;a[r>>2]=(A|0)==1?96349:96355;f3(t,96363,r)|0;A=t}o4(A,e,i)|0;A=0}}while(0);k=n;return A|0}function lo(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;if((a[46940]|0)==0?(f=Q2(a[4590]|0)|0,a[46940]=f,(f|0)==0):0)Q3(96368,a[15712]|0)|0;else r=4;do{if((r|0)==4){if((A|0)!=3){m5[a[46935]&63]((A|0)==1?96349:96355)|0;m5[a[46935]&63](97027)|0}while(1){A=k4(a[46940]|0,a[4590]|0,e,i)|0;r=a[4590]|0;if((A|0)>-1&(A|0)<(r|0)){r=7;break}r=r<<1;f=A+1|0;f=(r|0)>(f|0)?r:f;a[4590]=f;if(!(W2(a[46940]|0,f)|0)){r=9;break}}if((r|0)==7){m5[a[46935]&63](a[46940]|0)|0;break}else if((r|0)==9){Q3(96368,a[15712]|0)|0;break}}}while(0);return}function to(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+16|0;r=i;a[r>>2]=e;no(1,A,r)|0;k=i;return}function co(A,e,i){A=A|0;e=e|0;i=i|0;var f=0;if(!i){i=(e|0)==0?1024:e;e=i;i=Q2(i)|0;f=1}else f=0;a[A+12>>2]=f;a[A>>2]=i;a[A+8>>2]=i+e;a[A+4>>2]=i;r[i>>0]=0;return}function so(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;l=A+8|0;f=a[A>>2]|0;n=(a[l>>2]|0)-f|0;r=n<<1;n=n+e|0;r=n>>>0>r>>>0?n:r;n=A+4|0;e=f;f=(a[n>>2]|0)-f|0;i=A+12|0;if(!(a[i>>2]|0)){t=Q2(r)|0;W6(t|0,e|0,f|0)|0;a[i>>2]=1;e=t}else e=W2(e,r)|0;a[A>>2]=e;a[n>>2]=e+f;a[l>>2]=e+r;return 0}function bo(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;f=A+4|0;r=a[f>>2]|0;if((r+i|0)>>>0>(a[A+8>>2]|0)>>>0){so(A,i)|0;r=a[f>>2]|0}W6(r|0,e|0,i|0)|0;a[f>>2]=(a[f>>2]|0)+i;return i|0}function uo(A,e){A=A|0;e=e|0;return bo(A,e,P2(e)|0)|0}function wo(A){A=A|0;if(a[A+12>>2]|0)L2(a[A>>2]|0);return}function ko(A){A=A|0;var e=0,i=0;e=A+4|0;i=a[e>>2]|0;if(i>>>0>(a[A>>2]|0)>>>0){a[e>>2]=i+-1;A=n[i>>0]|0}else A=-1;return A|0}function oo(A,e,i){A=A|0;e=e|0;i=i|0;lB(a[46942]|0,a[e+8>>2]|0)|0;lB(a[46942]|0,a[e+12>>2]|0)|0;fd(a[46942]|0,e);return}function ho(A,e){A=A|0;e=e|0;var i=0;i=Ud(A,96416,0)|0;if((e|0)!=0&(i|0)==0){Bo(A);i=Ud(A,96416,0)|0}return i|0}function Bo(A){A=A|0;var e=0,i=0,r=0;r=Zd(A)|0;Qg(r,r,107,0,1)|0;i=cd(r)|0;while(1){if(!i)break;vo(A,i);e=Oo(r,i)|0;while(1){if(!e)break;Eo(A,e);e=_o(r,e)|0}i=sd(r,i)|0}return}function go(A){A=A|0;var e=0;e=A+24|0;r[e>>0]=r[e>>0]|64;mo(A);e=HB(A)|0;Io((e|0)==0?A:e,A);return}function vo(A,e){A=A|0;e=e|0;var i=0;i=Co(e)|0;if(!((i|0)!=0?(a[i+8>>2]|0)!=0:0))Io(A,e);return}function Eo(A,e){A=A|0;e=e|0;var i=0;i=Co(e)|0;if(!((i|0)!=0?(a[i+8>>2]|0)!=0:0))Io(A,e);return}function Co(A){A=A|0;return Ud(A,96404,0)|0}function Io(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=Td(e,96404,16,0)|0;f=Zo(A,a[e>>2]&3)|0;r=i+8|0;A:do{if(!(a[r>>2]|0)){A=Zd(A)|0;a[r>>2]=Zo(A,a[e>>2]&3)|0;A=Go(e)|0;i=i+12|0;a[i>>2]=rd(Id(e)|0,((A|0)>4?A:4)<<2)|0;A=y5[a[f>>2]&63](f,0,128)|0;while(1){if(!A)break A;r=Id(e)|0;r=aB(r,a[A+12>>2]|0)|0;a[(a[i>>2]|0)+(a[A+16>>2]<<2)>>2]=r;A=y5[a[f>>2]&63](f,A,8)|0}}}while(0);return}function Zo(A,e){A=A|0;e=e|0;var i=0,r=0;r=k;k=k+16|0;i=r;A=ho(A,0)|0;A:do{if(!A)A=0;else switch(e|0){case 0:{A=a[A+16>>2]|0;break A}case 1:{A=a[A+8>>2]|0;break A}case 2:case 3:{A=a[A+12>>2]|0;break A}default:{a[i>>2]=e;ao(1,96429,i)|0;A=0;break A}}}while(0);k=r;return A|0}function Go(A){A=A|0;var e=0;e=Zd(Id(A)|0)|0;A=Zo(e,a[A>>2]&3)|0;if(!A)A=0;else A=Sk(A)|0;return A|0}function mo(A){A=A|0;var e=0,i=0,r=0,f=0;i=Td(A,96416,20,0)|0;r=i+8|0;a[r>>2]=jB(A,18364,a[4589]|0)|0;f=i+12|0;a[f>>2]=jB(A,18364,a[4589]|0)|0;i=i+16|0;a[i>>2]=jB(A,18364,a[4589]|0)|0;e=HB(A)|0;if(!e){e=a[46941]|0;if(!((e|0)==0|(e|0)==(A|0))){e=ho(e,0)|0;Qo(a[e+8>>2]|0,a[r>>2]|0,A,1);Qo(a[e+12>>2]|0,a[f>>2]|0,A,2);Qo(a[e+16>>2]|0,a[i>>2]|0,A,0)}}else{A=ho(e,0)|0;_k(a[r>>2]|0,a[A+8>>2]|0)|0;_k(a[f>>2]|0,a[A+12>>2]|0)|0;_k(a[i>>2]|0,a[A+16>>2]|0)|0}return}function Qo(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0;n=y5[a[A>>2]&63](A,0,128)|0;while(1){if(!n)break;l=Lo(i,a[n+8>>2]|0,a[n+12>>2]|0,a[n+16>>2]|0,f)|0;r[l+22>>0]=r[n+22>>0]|0;r[l+21>>0]=r[n+21>>0]|0;y5[a[e>>2]&63](e,l,1)|0;n=y5[a[A>>2]&63](A,n,8)|0}return}function Lo(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0;l=rd(A,24)|0;r[l+20>>0]=n;a[l+8>>2]=aB(A,e)|0;a[l+12>>2]=aB(A,i)|0;a[l+16>>2]=f;return l|0}function yo(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+32|0;r=i;a[r+8>>2]=e;e=y5[a[A>>2]&63](A,r,4)|0;k=i;return e|0}function Wo(A,e){A=A|0;e=e|0;var i=0;i=_k(A,0)|0;e=yo(A,e)|0;_k(A,i)|0;return e|0}function zo(A,e){A=A|0;e=e|0;A=Co(A)|0;if(!A)A=0;else A=yo(a[A+8>>2]|0,e)|0;return A|0}function Yo(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0;l=k;k=k+16|0;n=l;if(!A){A=a[46941]|0;if(!A){r[n>>0]=r[18400]|0;r[n+1>>0]=r[18401]|0;r[n+2>>0]=r[18402]|0;r[n+3>>0]=r[18403]|0;A=kh(0,n,0)|0;a[46941]=A}}if(!f)A=Mo(A,e,i)|0;else A=Do(A,e,i,f)|0;k=l;return A|0}function Do(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0;t=Zd(A)|0;ho(A,1)|0;n=Zo(A,e)|0;f=Wo(n,i)|0;A:do{if(!f){f=yo(n,i)|0;if(f|0){f=Lo(A,i,r,a[f+16>>2]|0,e)|0;y5[a[n>>2]&63](n,f,1)|0;l=16;break}n=Zo(t,e)|0;f=Lo(A,i,r,Sk(n)|0,e)|0;y5[a[n>>2]&63](n,f,1)|0;switch(e|0){case 0:{Qg(t,t,57,f,1)|0;l=16;break A}case 1:{i=cd(t)|0;while(1){if(!i){l=16;break A}Fo(A,i,f);i=sd(t,i)|0}}case 2:case 3:{n=cd(t)|0;while(1){if(!n){l=16;break A}i=Oo(t,n)|0;while(1){if(!i)break;Fo(A,i,f);i=_o(t,i)|0}n=sd(t,n)|0}}default:break A}}else{l=f+12|0;lB(A,a[l>>2]|0)|0;a[l>>2]=aB(A,r)|0;l=16}}while(0);if((l|0)==16)if((e|0)==0&(f|0)!=0)Vo(A,f,r)|0;Qd(A,A,f);return f|0}function Mo(A,e,i){A=A|0;e=e|0;i=i|0;A=Zo(A,e)|0;if(!A)A=0;else A=yo(A,i)|0;return A|0}function Fo(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;e=Co(e)|0;f=i+16|0;r=a[f>>2]|0;if((r|0)>3){n=a[A+64>>2]|0;e=e+12|0;r=r<<2;a[e>>2]=W5[a[(a[n>>2]|0)+8>>2]&127](a[n+12>>2]|0,a[e>>2]|0,r,r+4|0)|0}else e=e+12|0;n=aB(A,a[i+12>>2]|0)|0;a[(a[e>>2]|0)+(a[f>>2]<<2)>>2]=n;return}function Vo(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0;l=Id(A)|0;n=(Co(A)|0)+12|0;t=e+16|0;lB(l,a[(a[n>>2]|0)+(a[t>>2]<<2)>>2]|0)|0;f=aB(l,i)|0;a[(a[n>>2]|0)+(a[t>>2]<<2)>>2]=f;do{if(!(a[A>>2]&3)){r=a[(ho(l,0)|0)+16>>2]|0;f=e+8|0;n=Wo(r,a[f>>2]|0)|0;if(!n){t=Lo(l,a[f>>2]|0,i,a[t>>2]|0,a[A>>2]&3)|0;y5[a[r>>2]&63](r,t,1)|0;break}else{t=n+12|0;lB(l,a[t>>2]|0)|0;a[t>>2]=aB(l,i)|0;break}}}while(0);Qd(l,A,e);return 0}function Jo(A,e,i){A=A|0;e=e|0;i=i|0;A=Zo(A,e)|0;do{if(A){e=a[A>>2]|0;if(!i){A=y5[e&63](A,0,128)|0;break}else{A=y5[e&63](A,i,8)|0;break}}else A=0}while(0);return A|0}function po(A){A=A|0;var e=0;a[46942]=A;e=Co(A)|0;if(e|0){No(A,e);Pd(A,a[e>>2]|0)|0}e=ho(A,0)|0;if(e)if(((SB(A,a[e+8>>2]|0)|0)==0?(SB(A,a[e+12>>2]|0)|0)==0:0)?(SB(A,a[e+16>>2]|0)|0)==0:0){Pd(A,a[e>>2]|0)|0;e=0}else e=1;else e=0;return e|0}function No(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;f=Id(A)|0;r=Go(A)|0;e=e+12|0;A=0;while(1){i=a[e>>2]|0;if((A|0)>=(r|0))break;lB(f,a[i+(A<<2)>>2]|0)|0;A=A+1|0}fd(f,i);return}function Ro(A){A=A|0;var e=0;e=Co(A)|0;if(e|0){No(A,e);Pd(A,96404)|0}return}function Xo(A){A=A|0;var e=0;e=Co(A)|0;if(e|0){No(A,e);Pd(A,96404)|0}return}function Ho(A,e){A=A|0;e=e|0;e=zo(A,e)|0;if(!e)e=0;else{A=a[(Co(A)|0)+12>>2]|0;e=a[A+(a[e+16>>2]<<2)>>2]|0}return e|0}function Uo(A,e){A=A|0;e=e|0;A=a[(Co(A)|0)+12>>2]|0;return a[A+(a[e+16>>2]<<2)>>2]|0}function xo(A,e,i){A=A|0;e=e|0;i=i|0;e=zo(A,e)|0;if(!e)e=-1;else{Vo(A,e,i)|0;e=0}return e|0}function To(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0;f=Id(A)|0;f=Yo(f,a[A>>2]&3,e,0)|0;if(!f){f=Id(A)|0;f=Yo(f,a[A>>2]&3,e,r)|0}Vo(A,f,i)|0;return 0}function jo(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;n=Id(A)|0;f=a[A>>2]|0;A:do{if(!((a[e>>2]^f)&3)){i=1;r=0;while(1){r=Jo(n,f&3,r)|0;if(!r)break A;i=zo(e,a[r+8>>2]|0)|0;if(!i){i=1;break A}f=Uo(A,r)|0;Vo(e,i,f)|0;if(tB(f)|0)cB(Uo(e,i)|0);i=0;f=a[A>>2]|0}}else i=1}while(0);return i|0}function Po(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0;A=a[e+40>>2]|0;f=a[i+40>>2]|0;if((A|0)==(f|0)){r=(a[e>>2]|0)>>>4;A=(a[i>>2]|0)>>>4;if(r>>>0>=A>>>0)if(r>>>0>A>>>0)A=1;else n=6;else A=-1}else{r=(a[A>>2]|0)>>>4;A=(a[f>>2]|0)>>>4;if(r>>>0>=A>>>0)if(r>>>0>A>>>0)A=1;else n=6;else A=-1}if((n|0)==6)A=0;return A|0}function So(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0;A=(a[e+40>>2]|0)+8|0;n=a[A>>2]|0;A=a[A+4>>2]|0;f=(a[i+40>>2]|0)+8|0;r=a[f>>2]|0;f=a[f+4>>2]|0;do{if(!(A>>>0 >>0|(A|0)==(f|0)&n>>>0 >>0))if(A>>>0>f>>>0|(A|0)==(f|0)&n>>>0>r>>>0)A=1;else{r=e+8|0;A=a[r>>2]|0;r=a[r+4>>2]|0;if(!((A|0)==0&(r|0)==0)?(t=i+8|0,l=a[t>>2]|0,t=a[t+4>>2]|0,!((l|0)==0&(t|0)==0)):0){if(r>>>0 >>0|(r|0)==(t|0)&A>>>0 >>0){A=-1;break}if(r>>>0>t>>>0|(r|0)==(t|0)&A>>>0>l>>>0){A=1;break}}A=0}else A=-1}while(0);return A|0}function Oo(A,e){A=A|0;e=e|0;var i=0;e=Ko(A,e)|0;if(!e)e=0;else{i=A+44|0;A=e+32|0;Pk(a[i>>2]|0,a[A>>2]|0)|0;e=a[i>>2]|0;e=y5[a[e>>2]&63](e,0,128)|0;a[A>>2]=Uk(a[i>>2]|0)|0}return e|0}function Ko(A,e){A=A|0;e=e|0;var i=0,r=0;r=k;k=k+48|0;i=r;if((a[e+24>>2]|0)==(A|0))A=e+28|0;else{a[i+16>>2]=e;A=a[A+40>>2]|0;A=y5[a[A>>2]&63](A,i,4)|0}k=r;return A|0}function _o(A,e){A=A|0;e=e|0;var i=0,r=0;i=Ko(A,a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0;if(!i)A=0;else{r=A+44|0;i=i+32|0;Pk(a[r>>2]|0,a[i>>2]|0)|0;A=a[r>>2]|0;A=y5[a[A>>2]&63](A,e,8)|0;a[i>>2]=Uk(a[r>>2]|0)|0}return A|0}function qo(A,e){A=A|0;e=e|0;var i=0;e=Ko(A,e)|0;if(!e)e=0;else{i=A+44|0;A=e+28|0;Pk(a[i>>2]|0,a[A>>2]|0)|0;e=a[i>>2]|0;e=y5[a[e>>2]&63](e,0,128)|0;a[A>>2]=Uk(a[i>>2]|0)|0}return e|0}function $o(A,e){A=A|0;e=e|0;var i=0,r=0;i=Ko(A,a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)|0;if(!i)A=0;else{r=A+44|0;i=i+28|0;Pk(a[r>>2]|0,a[i>>2]|0)|0;A=a[r>>2]|0;A=y5[a[A>>2]&63](A,e,8)|0;a[i>>2]=Uk(a[r>>2]|0)|0}return A|0}function Ah(A,e){A=A|0;e=e|0;var i=0;i=Oo(A,e)|0;if(!i)i=qo(A,e)|0;return i|0}function eh(A,e,i){A=A|0;e=e|0;i=i|0;A:do{if((a[e>>2]&3|0)==2){e=_o(A,e)|0;if(!e){e=0;do{if(!e)e=qo(A,i)|0;else e=$o(A,e)|0;if(!e){e=0;break A}}while((a[e+40>>2]|0)==(i|0))}}else do{e=$o(A,e)|0;if(!e){e=0;break A}}while((a[e+40>>2]|0)==(i|0))}while(0);return e|0}function ih(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,l=0;l=k;k=k+32|0;r=l+16|0;f=l;if((Gh(A)|0)!=0?(a[f>>2]=0,a[f+4>>2]=0,a[f+8>>2]=0,a[f+12>>2]=0,a[r>>2]=a[f>>2],a[r+4>>2]=a[f+4>>2],a[r+8>>2]=a[f+8>>2],a[r+12>>2]=a[f+12>>2],(nh(A,e,i,r)|0)!=0):0)r=0;else r=((n[A+24>>0]|0)>>>2&1^1)&255|(e|0)!=(i|0);k=l;return r|0}function rh(A,e){A=A|0;e=e|0;ah(A,e);return}function fh(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0,b=0,u=0;kd(A,e,1)|0;kd(A,i,1)|0;l=rd(A,96)|0;t=l+48|0;b=dh(A,2)|0;c=a[t>>2]|0;s=a[l>>2]|0;u=l+8|0;a[u>>2]=f;a[u+4>>2]=n;u=l+56|0;a[u>>2]=f;a[u+4>>2]=n;n=b<<4;a[l>>2]=s&12|n|2;a[t>>2]=c&12|n|3;a[l+88>>2]=e;a[l+40>>2]=i;ah(A,l);if(r[A+24>>0]&64){Td(l,96404,16,0)|0;Eo(A,l)}Gd(A,l);return l|0}function ah(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;t=k;k=k+16|0;i=t;l=a[e>>2]&3;n=(l|0)==2?e:e+-48|0;l=(l|0)==3?e:e+48|0;r=a[l+40>>2]|0;f=a[n+40>>2]|0;while(1){if(!A)break;a[i>>2]=a[e>>2];a[i+4>>2]=a[e+4>>2];a[i+8>>2]=a[e+8>>2];a[i+12>>2]=a[e+12>>2];if(nh(A,r,f,i)|0)break;c=Ko(A,r)|0;b=A+44|0;lh(a[b>>2]|0,c+32|0,n);s=A+48|0;lh(a[s>>2]|0,c+24|0,n);c=Ko(A,f)|0;lh(a[b>>2]|0,c+28|0,l);lh(a[s>>2]|0,c+20|0,l);A=HB(A)|0}k=t;return}function nh(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0;l=k;k=k+48|0;f=l;if(!((e|0)==0|(i|0)==0)?(a[f>>2]=a[r>>2],a[f+4>>2]=a[r+4>>2],a[f+8>>2]=a[r+8>>2],a[f+12>>2]=a[r+12>>2],a[f+40>>2]=e,n=Ko(A,i)|0,(n|0)!=0):0){r=A+48|0;n=n+20|0;Pk(a[r>>2]|0,a[n>>2]|0)|0;A=a[r>>2]|0;A=y5[a[A>>2]&63](A,f,4)|0;a[n>>2]=Uk(a[r>>2]|0)|0}else A=0;k=l;return A|0}function lh(A,e,i){A=A|0;e=e|0;i=i|0;Pk(A,a[e>>2]|0)|0;y5[a[A>>2]&63](A,i,1)|0;a[e>>2]=Uk(A)|0;return}function th(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;u=k;k=k+48|0;t=u+24|0;s=u+16|0;c=u;do{if(!(Dh(A,2,r,s,0)|0))if(!r){if(f|0?(Gh(A)|0)==0:0){b=18;break}a[c>>2]=0;a[c+4>>2]=0;a[c+8>>2]=0;a[c+12>>2]=0;b=7}else b=17;else{w=c;a[w>>2]=0;a[w+4>>2]=0;w=s;n=a[w+4>>2]|0;b=c+8|0;a[b>>2]=a[w>>2];a[b+4>>2]=n;a[c>>2]=2;b=7}}while(0);A:do{if((b|0)==7){a[t>>2]=a[c>>2];a[t+4>>2]=a[c+4>>2];a[t+8>>2]=a[c+8>>2];a[t+12>>2]=a[c+12>>2];n=nh(A,e,i,t)|0;e:do{if(!n){if(Zh(A)|0?(a[t>>2]=a[c>>2],a[t+4>>2]=a[c+4>>2],a[t+8>>2]=a[c+8>>2],a[t+12>>2]=a[c+12>>2],l=nh(A,i,e,t)|0,l|0):0){n=l;break}do{if(f|0){n=Zd(A)|0;a[t>>2]=a[c>>2];a[t+4>>2]=a[c+4>>2];a[t+8>>2]=a[c+8>>2];a[t+12>>2]=a[c+12>>2];n=nh(n,e,i,t)|0;if(!n){if(!(Zh(A)|0))break;n=Zd(A)|0;a[t>>2]=a[c>>2];a[t+4>>2]=a[c+4>>2];a[t+8>>2]=a[c+8>>2];a[t+12>>2]=a[c+12>>2];n=nh(n,i,e,t)|0;if(!n)break}rh(A,n);break e}}while(0);b=17;break A}}while(0)}}while(0);if((b|0)==17)if(!f)n=0;else b=18;if((b|0)==18)if((ih(A,e,i)|0)!=0?(Dh(A,2,r,s,1)|0)!=0:0){n=s;n=fh(A,e,i,a[n>>2]|0,a[n+4>>2]|0)|0;Jh(A,2,n)}else n=0;k=u;return n|0}function ch(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;i=(a[e>>2]&3|0)==3;n=i?e+-48|0:e;i=i?e:e+48|0;e=a[n+40>>2]|0;l=Ko(A,a[i+40>>2]|0)|0;f=A+44|0;sh(a[f>>2]|0,l+32|0,n);r=A+48|0;sh(a[r>>2]|0,l+24|0,n);e=Ko(A,e)|0;sh(a[f>>2]|0,e+28|0,i);sh(a[r>>2]|0,e+20|0,i);return}function sh(A,e,i){A=A|0;e=e|0;i=i|0;Pk(A,a[e>>2]|0)|0;y5[a[A>>2]&63](A,i,2)|0;a[e>>2]=Uk(A)|0;return}function bh(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0;i=k;k=k+16|0;f=i;e=(a[e>>2]&3|0)==2?e:e+-48|0;n=a[e>>2]&3;l=a[((n|0)==3?e:e+48|0)+40>>2]|0;n=a[((n|0)==2?e:e+-48|0)+40>>2]|0;a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];if(nh(A,l,n,f)|0){if((Zd(A)|0)==(A|0)){if(r[A+24>>0]&64)Xo(e);yd(A,e);$d(e);l=e+8|0;Fh(A,2,a[l>>2]|0,a[l+4>>2]|0)}if(!(Qg(A,e,58,0,0)|0))if((Zd(A)|0)==(A|0)){fd(A,e);e=0}else e=0;else e=-1}else e=-1;k=i;return e|0}function uh(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;l=k;k=k+16|0;r=l;f=kd(A,a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0,i)|0;n=kd(A,a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,i)|0;do{if((f|0)!=0&(n|0)!=0){a[r>>2]=a[e>>2];a[r+4>>2]=a[e+4>>2];a[r+8>>2]=a[e+8>>2];a[r+12>>2]=a[e+12>>2];r=nh(A,f,n,r)|0;f=(r|0)==0;if(!((i|0)!=0&f)){if(f)break}else{ah(A,e);r=e}i=a[r>>2]&3;k=l;return((i|0)==(a[e>>2]&3|0)?r:r+(((i|0)==3?-1:1)*48|0)|0)|0}}while(0);k=l;return 0}function wh(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;e=e+8|0;r=i+8|0;r=B6(a[e>>2]|0,a[e+4>>2]|0,a[r>>2]|0,a[r+4>>2]|0)|0;return((r|0)==0?0:r>>31|1)|0}function kh(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0;l=k;k=k+16|0;n=l;c=oh(i)|0;f=Q5[a[(a[c>>2]|0)+4>>2]&127](a[c+12>>2]|0,72)|0;a[f>>2]=a[f>>2]&-4;t=f+64|0;a[t>>2]=c;s=f+24|0;e=a[e>>2]|0;a[s>>2]=e;r[s>>0]=e&255|8;a[f+60>>2]=f;i=Q5[a[a[c+4>>2]>>2]&127](f,i)|0;a[(a[t>>2]|0)+16>>2]=i;if(Dh(f,0,A,n,1)|0){t=n;c=a[t+4>>2]|0;s=f+8|0;a[s>>2]=a[t>>2];a[s+4>>2]=c}s=hh(f)|0;Jh(s,0,f);k=l;return s|0}function oh(A){A=A|0;var e=0,i=0,f=0,n=0;e=(A|0)!=0;if(e){i=a[A>>2]|0;i=(i|0)==0?18736:i}else i=18736;n=m5[a[i>>2]&63](A)|0;f=Q5[a[i+4>>2]&127](n,80)|0;a[f>>2]=i;a[f+12>>2]=n;if(e){n=a[A+4>>2]|0;a[f+4>>2]=(n|0)==0?18612:n;A=a[A+8>>2]|0;A=(A|0)==0?18712:A}else{a[f+4>>2]=18612;A=18712}a[f+8>>2]=A;r[f+52>>0]=1;return f|0}function hh(A){A=A|0;var e=0,i=0;a[A+36>>2]=jB(A,18792,a[4589]|0)|0;a[A+40>>2]=jB(A,18756,a[4589]|0)|0;e=(Zd(A)|0)==(A|0);a[A+44>>2]=jB(A,e?18404:18440,a[4589]|0)|0;e=(Zd(A)|0)==(A|0);a[A+48>>2]=jB(A,e?18476:18512,a[4589]|0)|0;a[A+52>>2]=jB(A,18548,a[4589]|0)|0;e=HB(A)|0;if(!((e|0)!=0?(i=dh(e,0)|0,a[A>>2]=a[A>>2]&15|i<<4,i=a[e+52>>2]|0,y5[a[i>>2]&63](i,A,1)|0,!(r[e+24>>0]&64)):0))go(A);Gd(A,A);return A|0}function dh(A,e){A=A|0;e=e|0;var i=0;i=(a[A+64>>2]|0)+24+(e<<3)|0;e=i;e=d6(a[e>>2]|0,a[e+4>>2]|0,1,0)|0;A=L;a[i>>2]=e;a[i+4>>2]=A;L=A;return e|0}function Bh(A){A=A|0;var e=0,i=0,f=0,n=0;f=HB(A)|0;n=(f|0)==0;if(n?(e=A+64|0,(a[(a[a[e>>2]>>2]|0)+16>>2]|0)!=0):0){yd(A,A);n=A+8|0;Fh(A,0,a[n>>2]|0,a[n+4>>2]|0);e=a[e>>2]|0;F5[a[(a[e>>2]|0)+16>>2]&127](a[e+12>>2]|0);e=0}else i=4;do{if((i|0)==4){e=RB(A)|0;while(1){if(!e)break;i=XB(e)|0;Bh(e)|0;e=i}e=cd(A)|0;while(1){if(!e)break;i=sd(A,e)|0;Ed(A,e)|0;e=i}jh(A);yd(A,A);if(((((SB(A,a[A+40>>2]|0)|0)==0?(SB(A,a[A+36>>2]|0)|0)==0:0)?(SB(A,a[A+48>>2]|0)|0)==0:0)?(SB(A,a[A+44>>2]|0)|0)==0:0)?(SB(A,a[A+52>>2]|0)|0)==0:0){if(r[A+24>>0]&64?po(A)|0:0){e=-1;break}$d(A);i=A+8|0;Fh(A,0,a[i>>2]|0,a[i+4>>2]|0);if(!n){UB(f,A)|0;fd(f,A);e=0;break}e=A+64|0;while(1){i=a[e>>2]|0;f=a[i+48>>2]|0;if(!f)break;Yd(A,a[f>>2]|0)|0}F5[a[(a[i+4>>2]|0)+20>>2]&127](a[i+16>>2]|0);if(!(AB(A)|0)){e=a[e>>2]|0;n=a[e+12>>2]|0;f=(a[e>>2]|0)+12|0;V5[a[f>>2]&63](n,A);V5[a[f>>2]&63](n,e);e=0}else e=-1}else e=-1}}while(0);return e|0}function gh(A){A=A|0;return Sk(a[A+40>>2]|0)|0}function vh(A){A=A|0;var e=0,i=0,r=0;e=0;i=cd(A)|0;while(1){if(!i)break;r=(Eh(A,i,0,1)|0)+e|0;e=r;i=sd(A,i)|0}return e|0}function Eh(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0;f=Ko(A,e)|0;if(f){if(!r)e=0;else e=Ch(a[A+44>>2]|0,f+32|0)|0;if(i)e=(Ch(a[A+44>>2]|0,f+28|0)|0)+e|0}else e=0;return e|0}function Ch(A,e){A=A|0;e=e|0;var i=0;Pk(A,a[e>>2]|0)|0;i=Sk(A)|0;a[e>>2]=Uk(A)|0;return i|0}function Ih(A){A=A|0;return r[A+24>>0]&1|0}function Zh(A){A=A|0;return(Ih(A)|0)==0|0}function Gh(A){A=A|0;return(n[A+24>>0]|0)>>>1&1|0}function mh(A,e){A=A|0;e=e|0;return A|0}function Qh(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;if(!i){f=1392;i=a[f>>2]|0;f=a[f+4>>2]|0;a[r>>2]=i;a[r+4>>2]=f;f=d6(i|0,f|0,2,0)|0;r=1392;a[r>>2]=f;a[r+4>>2]=L}else{if(!f)A=iB(A,i)|0;else A=aB(A,i)|0;a[r>>2]=A;a[r+4>>2]=0}return 1}function Lh(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;return 0}function yh(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;if((i&1|0)==0&0==0)lB(A,i)|0;return}function Wh(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;return((i&1|0)==0&0==0?i:0)|0}function zh(A){A=A|0;return}function Yh(A,e,i){A=A|0;e=e|0;i=i|0;return}function Dh(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0;t=(i|0)!=0;do{if(t){if((r[i>>0]|0)!=37?(l=a[A+64>>2]|0,l=z5[a[(a[l+4>>2]|0)+4>>2]&127](a[l+16>>2]|0,e,i,f,n)|0,l|0):0)break;l=ph(A,e,i,f)|0;if(!l)c=5}else c=5}while(0);if((c|0)==5)if(n){l=a[A+64>>2]|0;l=z5[a[(a[l+4>>2]|0)+4>>2]&127](a[l+16>>2]|0,e,0,f,n)|0;if(t&(l|0)!=0){c=f;Nh(A,e,i,a[c>>2]|0,a[c+4>>2]|0)}}else l=0;return l|0}function Mh(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;A=a[A+64>>2]|0;return W5[a[(a[A+4>>2]|0)+8>>2]&127](a[A+16>>2]|0,e,i,r)|0}function Fh(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;xh(A,e,i,r)|0;A=a[A+64>>2]|0;N5[a[(a[A+4>>2]|0)+12>>2]&31](a[A+16>>2]|0,e,i,r);return}function Vh(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0;l=k;k=k+16|0;n=l;i=Id(A)|0;f=A+8|0;e=f;e=Hh(i,a[A>>2]&3,a[e>>2]|0,a[e+4>>2]|0)|0;do{if(!e){e=a[i+64>>2]|0;i=a[(a[e+4>>2]|0)+16>>2]|0;if(i|0?(r=f,r=W5[i&127](a[e+16>>2]|0,a[A>>2]&3,a[r>>2]|0,a[r+4>>2]|0)|0,r|0):0){e=r;break}if((a[A>>2]&3|0)==2)e=0;else{r=a[f>>2]|0;f=a[f+4>>2]|0;a[n>>2]=37;e=n+8|0;a[e>>2]=r;a[e+4>>2]=f;S4(194773,96456,n)|0;e=194773}}}while(0);k=l;return e|0}function Jh(A,e,i){A=A|0;e=e|0;i=i|0;A=a[A+64>>2]|0;J5[a[(a[A+4>>2]|0)+24>>2]&127](a[A+16>>2]|0,e,i);return}function ph(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0;t=k;k=k+32|0;l=t;e=a[(a[A+64>>2]|0)+56+(((e|0)==3?2:e)<<2)>>2]|0;if(((e|0)!=0?(f=iB(A,i)|0,(f|0)!=0):0)?(a[l+24>>2]=f,n=y5[a[e>>2]&63](e,l,4)|0,(n|0)!=0):0){i=n+16|0;l=a[i+4>>2]|0;e=r;a[e>>2]=a[i>>2];a[e+4>>2]=l;e=1}else e=0;k=t;return e|0}function Nh(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0;l=rd(A,32)|0;n=l+16|0;a[n>>2]=r;a[n+4>>2]=f;a[l+24>>2]=aB(A,i)|0;r=(e|0)==3?2:e;n=A+64|0;i=a[n>>2]|0;e=a[i+56+(r<<2)>>2]|0;if(!e){f=jB(A,18640,a[4589]|0)|0;a[(a[n>>2]|0)+56+(r<<2)>>2]=f;e=a[n>>2]|0}else{f=e;e=i}e=a[e+68+(r<<2)>>2]|0;if(!e){e=jB(A,18676,a[4589]|0)|0;a[(a[n>>2]|0)+68+(r<<2)>>2]=e}y5[a[f>>2]&63](f,l,1)|0;y5[a[e>>2]&63](e,l,1)|0;return}function Rh(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;A=e+16|0;e=a[A>>2]|0;A=a[A+4>>2]|0;i=i+16|0;r=a[i>>2]|0;i=a[i+4>>2]|0;return(A>>>0>i>>>0|(A|0)==(i|0)&e>>>0>r>>>0?1:(A>>>0>>0|(A|0)==(i|0)&e>>>0 >>0)<<31>>31)|0}function Xh(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;e=a[e+24>>2]|0;r=a[i+24>>2]|0;return(e>>>0>r>>>0?1:(e>>>0 >>0)<<31>>31)|0}function Hh(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;A=Uh(A,e,i,r)|0;if(!A)A=0;else A=a[A+24>>2]|0;return A|0}function Uh(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0;n=k;k=k+32|0;f=n;A=a[(a[A+64>>2]|0)+68+(((e|0)==3?2:e)<<2)>>2]|0;if(!A)A=0;else{e=f+16|0;a[e>>2]=i;a[e+4>>2]=r;A=y5[a[A>>2]&63](A,f,4)|0}k=n;return A|0}function xh(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0;f=(e|0)==3?2:e;e=Uh(A,f,i,r)|0;if(!e)e=0;else{r=A+64|0;i=a[(a[r>>2]|0)+56+(f<<2)>>2]|0;y5[a[i>>2]&63](i,e,2)|0;r=a[(a[r>>2]|0)+68+(f<<2)>>2]|0;y5[a[r>>2]&63](r,e,2)|0;lB(A,a[e+24>>2]|0)|0;fd(A,e);e=1}return e|0}function Th(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;a[46942]=A;n=a[A+64>>2]|0;f=0;while(1){if((f|0)==3)break;l=n+56+(f<<2)|0;e=a[l>>2]|0;A:do{if(e|0){e=y5[a[e>>2]&63](e,0,128)|0;while(1){if(!e)break A;i=a[l>>2]|0;i=y5[a[i>>2]&63](i,e,8)|0;if((r[a[e+24>>2]>>0]|0)!=37){e=i;continue}t=e+16|0;xh(A,f,a[t>>2]|0,a[t+4>>2]|0)|0;e=i}}}while(0);f=f+1|0}return}function jh(A){A=A|0;a[46942]=A;A=A+64|0;Ph((a[A>>2]|0)+56|0);Ph((a[A>>2]|0)+68|0);return}function Ph(A){A=A|0;var e=0,i=0,r=0;e=0;while(1){if((e|0)==3)break;i=A+(e<<2)|0;r=a[i>>2]|0;if(r|0){Hk(r)|0;a[i>>2]=0}e=e+1|0}return}function Sh(A,e,i){A=A|0;e=e|0;i=i|0;if(!(p4(e,i,A)|0))A=0;else A=P2(e)|0;return A|0}function Oh(A,e){A=A|0;e=e|0;return Q3(e,A)|0}function Kh(A){A=A|0;return v3(A)|0}function _h(A){A=A|0;var e=0,i=0,r=0;e=k;k=k+32|0;r=e+12|0;i=e;a[4682]=a[4679];a[4683]=a[4680];a[r>>2]=A;a[r+4>>2]=P2(A)|0;a[r+8>>2]=0;a[i>>2]=18736;a[i+4>>2]=18612;a[i+8>>2]=18724;A=cv(r,i)|0;sB(0);k=e;return A|0}function qh(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0;if((i|0)!=0?(l=A+8|0,f=a[l>>2]|0,(f|0)<(a[A+4>>2]|0)):0){t=(a[A>>2]|0)+f|0;A=0;n=r[t>>0]|0;f=e;e=t;while(1){e=e+1|0;r[f>>0]=n;A=A+1|0;if(!(n<<24>>24!=10&(A|0)<(i|0)))break;n=r[e>>0]|0;if(!(n<<24>>24))break;else f=f+1|0}a[l>>2]=(a[l>>2]|0)+A}else A=0;return A|0}function $h(A){A=A|0;return 0}function Ad(A,e){A=A|0;e=e|0;A=Q2(e)|0;Y6(A|0,0,e|0)|0;return A|0}function ed(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;A=W2(e,r)|0;if(r>>>0>i>>>0)Y6(A+i|0,0,r-i|0)|0;return A|0}function id(A,e){A=A|0;e=e|0;L2(e);return}function rd(A,e){A=A|0;e=e|0;var i=0;i=k;k=k+16|0;A=a[A+64>>2]|0;A=Q5[a[(a[A>>2]|0)+4>>2]&127](a[A+12>>2]|0,e)|0;if(!A)ao(1,96462,i)|0;k=i;return A|0}function fd(A,e){A=A|0;e=e|0;if(e|0){A=a[A+64>>2]|0;V5[a[(a[A>>2]|0)+12>>2]&63](a[A+12>>2]|0,e)}return}function ad(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;A=(a[e+16>>2]|0)+8|0;e=a[A>>2]|0;A=a[A+4>>2]|0;i=(a[i+16>>2]|0)+8|0;r=a[i>>2]|0;i=a[i+4>>2]|0;return(A>>>0>>0|(A|0)==(i|0)&e>>>0 >>0?-1:(A>>>0>i>>>0|(A|0)==(i|0)&e>>>0>r>>>0)&1)|0}function nd(A,e,i){A=A|0;e=e|0;i=i|0;A=a[e+16>>2]|0;if((A+28|0)!=(e|0))fd(a[A+24>>2]|0,e);return}function ld(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;e=(a[a[e+16>>2]>>2]|0)>>>4;r=(a[a[i+16>>2]>>2]|0)>>>4;return(e>>>0 >>0?-1:e>>>0>r>>>0&1)|0}function td(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=186256;a[r>>2]=e;a[r+4>>2]=i;a[46947]=186248;A=a[A+40>>2]|0;A=y5[a[A>>2]&63](A,187772,4)|0;if(!A)A=0;else A=a[A+16>>2]|0;return A|0}function cd(A){A=A|0;A=a[A+36>>2]|0;A=y5[a[A>>2]&63](A,0,128)|0;if(!A)A=0;else A=a[A+16>>2]|0;return A|0}function sd(A,e){A=A|0;e=e|0;var i=0;e=Ko(A,e)|0;if((e|0)!=0?(i=a[A+36>>2]|0,i=y5[a[i>>2]&63](i,e,8)|0,(i|0)!=0):0)e=a[i+16>>2]|0;else e=0;return e|0}function bd(A){A=A|0;A=a[A+36>>2]|0;A=y5[a[A>>2]&63](A,0,256)|0;if(!A)A=0;else A=a[A+16>>2]|0;return A|0}function ud(A,e){A=A|0;e=e|0;var i=0;e=Ko(A,e)|0;if((e|0)!=0?(i=a[A+36>>2]|0,i=y5[a[i>>2]&63](i,e,16)|0,(i|0)!=0):0)e=a[i+16>>2]|0;else e=0;return e|0}function wd(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,a=0;f=td(A,e,i)|0;do{if((r|0)!=0&(f|0)==0){f=Zd(A)|0;if((f|0)!=(A|0)?(a=td(f,e,i)|0,a|0):0){kd(A,a,1)|0;f=a;break}if(!(Mh(A,1,e,i)|0))f=0;else{f=dh(A,1)|0;f=od(A,e,i,f,L)|0;hd(A,f);dd(A,f)}}}while(0);return f|0}function kd(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=Zd(A)|0;if((r|0)==(a[e+24>>2]|0)){r=e+8|0;r=td(A,a[r>>2]|0,a[r+4>>2]|0)|0;if((i|0)!=0&(r|0)==0){r=HB(A)|0;if(!r)r=0;else{i=kd(r,e,i)|0;Bd(A,i);return i|0}}}else r=0;return r|0}function od(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0;n=rd(A,64)|0;l=a[n>>2]|0;t=n+8|0;a[t>>2]=e;a[t+4>>2]=i;a[n>>2]=l&12|f<<4|1;a[n+24>>2]=Zd(A)|0;if(r[(Zd(A)|0)+24>>0]&64)Td(n,96404,16,0)|0;return n|0}function hd(A,e){A=A|0;e=e|0;do{Bd(A,e);A=HB(A)|0}while((A|0)!=0);return}function dd(A,e){A=A|0;e=e|0;if(r[(Zd(A)|0)+24>>0]&64)vo(A,e);Gd(A,e);return}function Bd(A,e){A=A|0;e=e|0;var i=0,r=0;r=A+40|0;Sk(a[r>>2]|0)|0;if((Zd(A)|0)==(A|0))i=e+28|0;else i=rd(A,36)|0;a[i+16>>2]=e;r=a[r>>2]|0;y5[a[r>>2]&63](r,i,1)|0;r=a[A+36>>2]|0;y5[a[r>>2]&63](r,i,1)|0;return}function gd(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0;c=k;k=k+16|0;n=c;l=Zd(A)|0;if(Dh(A,1,e,n,0)|0){r=n;r=td(A,a[r>>2]|0,a[r+4>>2]|0)|0;if(!r)if(!((i|0)==0|(l|0)==(A|0))?(f=n,f=td(l,a[f>>2]|0,a[f+4>>2]|0)|0,(f|0)!=0):0)r=kd(A,f,1)|0;else t=6}else t=6;if((t|0)==6)if((i|0)!=0?(Dh(A,1,e,n,1)|0)!=0:0){t=n;l=a[t>>2]|0;t=a[t+4>>2]|0;r=dh(A,1)|0;r=od(A,l,t,r,L)|0;hd(A,r);dd(A,r);Jh(A,1,r)}else r=0;k=c;return r|0}function vd(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;a[46956]=e;i=Ah(A,e)|0;while(1){if(!i)break;r=eh(A,i,e)|0;ch(A,i,0);i=r}r=a[A+40>>2]|0;y5[a[r>>2]&63](r,187808,2)|0;r=a[A+36>>2]|0;y5[a[r>>2]&63](r,187808,2)|0;return}function Ed(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;f=e+8|0;i=f;if(td(A,a[i>>2]|0,a[i+4>>2]|0)|0){if((Zd(A)|0)==(A|0)){i=Ah(A,e)|0;while(1){if(!i)break;n=eh(A,i,e)|0;bh(A,i)|0;i=n}if(r[A+24>>0]&64)Ro(e);yd(A,e);$d(e);n=f;Fh(A,1,a[n>>2]|0,a[n+4>>2]|0)}if(!(Qg(A,e,59,0,0)|0))if((Zd(A)|0)==(A|0)){fd(A,e);i=0}else i=0;else i=-1}else i=-1;return i|0}function Cd(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;l=k;k=k+16|0;r=l;i=a[e>>2]|0;do{if(!(i&3))if((HB(e)|0)==(A|0)){i=a[e>>2]|0;n=5;break}else{ao(1,96488,r)|0;f=-1;break}else n=5}while(0);A:do{if((n|0)==5)switch(i&3){case 1:{f=Ed(A,e)|0;break A}case 2:case 3:{f=bh(A,e)|0;break A}case 0:{f=Bh(e)|0;break A}default:{}}}while(0);k=l;return f|0}function Id(A){A=A|0;var e=0;switch(a[A>>2]&3){case 2:case 3:{e=a[(a[A+40>>2]|0)+24>>2]|0;break}case 1:{e=a[A+24>>2]|0;break}case 0:{e=A;break}default:{}}return e|0}function Zd(A){A=A|0;var e=0;switch(a[A>>2]&3){case 2:case 3:{e=(a[A+40>>2]|0)+24|0;break}case 1:{e=A+24|0;break}case 0:{e=A+60|0;break}default:{}}return a[e>>2]|0}function Gd(A,e){A=A|0;e=e|0;var i=0;i=a[A+64>>2]|0;if(!(r[i+52>>0]|0))Fd(A,e,100,0);else md(A,e,a[i+48>>2]|0);return}function md(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;A:do{if(i|0){md(A,e,a[i+8>>2]|0);switch(a[e>>2]&3){case 0:{r=a[i>>2]|0;break}case 1:{r=(a[i>>2]|0)+12|0;break}case 2:{r=(a[i>>2]|0)+24|0;break}default:break A}r=a[r>>2]|0;if(r|0)J5[r&127](A,e,a[i+4>>2]|0)}}while(0);return}function Qd(A,e,i){A=A|0;e=e|0;i=i|0;var f=0;f=a[A+64>>2]|0;if(!(r[f+52>>0]|0))Fd(A,e,101,i);else Ld(A,e,i,a[f+48>>2]|0);return}function Ld(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0;A:do{if(r|0){Ld(A,e,i,a[r+8>>2]|0);switch(a[e>>2]&3){case 0:{f=(a[r>>2]|0)+4|0;break}case 1:{f=(a[r>>2]|0)+16|0;break}case 2:{f=(a[r>>2]|0)+28|0;break}default:break A}f=a[f>>2]|0;if(f|0)N5[f&31](A,e,a[r+4>>2]|0,i)}}while(0);return}function yd(A,e){A=A|0;e=e|0;var i=0;i=a[A+64>>2]|0;if(!(r[i+52>>0]|0))Fd(A,e,102,0);else Wd(A,e,a[i+48>>2]|0);return}function Wd(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;A:do{if(i|0){Wd(A,e,a[i+8>>2]|0);switch(a[e>>2]&3){case 0:{r=(a[i>>2]|0)+8|0;break}case 1:{r=(a[i>>2]|0)+20|0;break}case 2:{r=(a[i>>2]|0)+32|0;break}default:break A}r=a[r>>2]|0;if(r|0)J5[r&127](A,e,a[i+4>>2]|0)}}while(0);return}function zd(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=rd(A,12)|0;a[r>>2]=e;a[r+4>>2]=i;i=(a[A+64>>2]|0)+48|0;a[r+8>>2]=a[i>>2];a[i>>2]=r;return}function Yd(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;r=(a[A+64>>2]|0)+48|0;i=a[r>>2]|0;A:do{if(!i)i=-1;else{if((a[i>>2]|0)!=(e|0)){while(1){if(!i){i=-1;break A}r=i+8|0;f=a[r>>2]|0;if((a[f>>2]|0)==(e|0))break;else i=f}if(f)a[r>>2]=a[f+8>>2]}else a[r>>2]=a[i+8>>2];fd(A,i);i=0}}while(0);return i|0}function Dd(A,e){A=A|0;e=e|0;var i=0;i=Zd(A)|0;A:do{if((i|0)==(Zd(e)|0))switch(a[e>>2]&3){case 0:{while(1){if((e|0)==(A|0)){e=1;break A}e=HB(e)|0;if(!e){e=0;break}}break}case 1:{e=e+8|0;e=(wd(A,a[e>>2]|0,a[e+4>>2]|0,0)|0)!=0;break A}default:{e=(uh(A,e,0)|0)!=0;break A}}else e=0}while(0);return e&1|0}function Md(A){A=A|0;return a[A>>2]&3|0}function Fd(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,a=0,n=0,l=0;l=k;k=k+16|0;n=l;a=Td(A,96512,44,0)|0;switch(i|0){case 100:{f=Vd(a,e,100)|0;if(!(Jd(f,e)|0))pd(f,A,e,r)|0;break}case 101:{if(((Jd(Vd(a,e,100)|0,e)|0)==0?(Jd(Vd(a,e,102)|0,e)|0)==0:0)?(f=Vd(a,e,101)|0,(Jd(f,e)|0)==0):0)pd(f,A,e,r)|0;break}case 102:{Nd(Vd(a,e,100)|0,e);Nd(Vd(a,e,101)|0,e);f=Vd(a,e,102)|0;if(!(Jd(f,e)|0))pd(f,A,e,r)|0;break}default:ao(1,96524,n)|0}k=l;return}function Vd(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;n=k;k=k+16|0;r=n;A:do{switch(a[e>>2]&3){case 0:switch(i|0){case 100:{i=A+8|0;break A}case 101:{i=A+20|0;break A}case 102:{i=A+32|0;break A}default:{f=14;break A}}case 1:switch(i|0){case 100:{i=A+12|0;break A}case 101:{i=A+24|0;break A}case 102:{i=A+36|0;break A}default:{f=14;break A}}case 2:switch(i|0){case 100:{i=A+16|0;break A}case 101:{i=A+28|0;break A}case 102:{i=A+40|0;break A}default:{f=14;break A}}default:f=14}}while(0);if((f|0)==14){ao(1,96558,r)|0;i=0}A=a[i>>2]|0;if(!A){A=Id(e)|0;A=jB(A,18828,a[4589]|0)|0;a[i>>2]=A}k=n;return A|0}function Jd(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=k;k=k+32|0;r=i;f=Rd(e)|0;e=r+8|0;a[e>>2]=f;a[e+4>>2]=L;e=y5[a[A>>2]&63](A,r,4)|0;k=i;return e|0}function pd(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0;f=rd(Id(i)|0,32)|0;a[f+20>>2]=i;n=Rd(i)|0;i=f+8|0;a[i>>2]=n;a[i+4>>2]=L;a[f+16>>2]=e;if(r|0){n=rd(e,8)|0;a[f+24>>2]=n;a[n>>2]=r}y5[a[A>>2]&63](A,f,1)|0;return f|0}function Nd(A,e){A=A|0;e=e|0;e=Jd(A,e)|0;if(e|0)y5[a[A>>2]&63](A,e,2)|0;return}function Rd(A){A=A|0;A=A+8|0;L=a[A+4>>2]|0;return a[A>>2]|0}function Xd(A,e,i){A=A|0;e=e|0;i=i|0;Hd(e);fd(a[e+16>>2]|0,e);return}function Hd(A){A=A|0;var e=0,i=0;e=A+16|0;A=a[A+24>>2]|0;while(1){if(!A)break;i=a[A+4>>2]|0;fd(a[e>>2]|0,A);A=i}return}function Ud(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+16|0;t=s;l=a[A+16>>2]|0;f=l;while(1){if(!f){f=0;break}n=a[f>>2]|0;if((n|0)==(e|0)){c=7;break}if((r[e>>0]|0)==(r[n>>0]|0)?(A1(e,n)|0)==0:0){c=7;break}f=a[f+4>>2]|0;if((f|0)==(l|0)){f=0;break}}do{if((c|0)==7){if(!(a[A>>2]&4)){if((f|0)==(l|0)&(i|0)==0){f=l;break}xd(A,f,i);break}if(i)if((l|0)==(f|0))f=l;else ao(1,96583,t)|0}}while(0);k=s;return f|0}function xd(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;a[A+16>>2]=e;r=a[A>>2]|0;i=i<<2&4;a[A>>2]=r&-5|i;if(r&2|0){r=(r&3|0)==3?-1:1;a[A+(r*48|0)+16>>2]=e;r=A+(r*48|0)|0;a[r>>2]=a[r>>2]&-5|i}return}function Td(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0;l=Id(A)|0;f=Ud(A,e,0)|0;A:do{if((i|0)!=0&(f|0)==0){i=rd(l,i)|0;a[i>>2]=aB(l,e)|0;switch(a[A>>2]&3){case 0:{jd(A,i);n=i;break A}case 1:{jd(A,i);n=i;break A}case 2:case 3:{jd(A,i);n=i;break A}default:{}}}else n=f}while(0);if(r|0)Ud(A,e,1)|0;return n|0}function jd(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=a[A+16>>2]|0;do{if(i){r=i+4|0;f=a[r>>2]|0;if((f|0)==(i|0)){a[r>>2]=e;r=i;i=e;break}else{a[e+4>>2]=f;r=e;break}}else{r=e;i=e}}while(0);a[i+4>>2]=r;if(!(a[A>>2]&4))xd(A,e,0);return}function Pd(A,e){A=A|0;e=e|0;var i=0,r=0;r=Id(A)|0;i=Ud(A,e,0)|0;if(!i)e=-1;else{Sd(A,i);if(!(a[A>>2]&3)){Od(r,A,i);e=i}else{Qg(Zd(r)|0,A,60,i,0)|0;e=i}lB(r,a[i>>2]|0)|0;fd(r,e);e=0}return e|0}function Sd(A,e){A=A|0;e=e|0;var i=0;A=a[A+16>>2]|0;do{i=A+4|0;A=a[i>>2]|0}while((A|0)!=(e|0));a[i>>2]=a[e+4>>2];return}function Od(A,e,i){A=A|0;e=e|0;i=i|0;if((a[e+16>>2]|0)==(i|0)){A=a[i+4>>2]|0;xd(e,(A|0)==(i|0)?0:A,0)}return}function Kd(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var a=0,n=0;a=(r|0)>-1;n=a?r:0-r|0;A:do{switch(e|0){case 0:{Td(A,i,n,f)|0;if(!a){e=RB(A)|0;while(1){if(!e)break A;Kd(e,0,i,r,f);e=XB(e)|0}}break}case 3:case 2:case 1:{r=(e|0)==1;e=cd(A)|0;while(1){if(!e)break A;e:do{if(r)Td(e,i,n,f)|0;else{a=Oo(A,e)|0;while(1){if(!a)break e;Td(a,i,n,f)|0;a=_o(A,a)|0}}}while(0);e=sd(A,e)|0}}default:{}}}while(0);return}function _d(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;A:do{switch(e|0){case 0:{Qg(A,A,61,i,1)|0;break}case 3:case 2:case 1:{f=(e|0)==1;r=cd(A)|0;while(1){if(!r)break A;e:do{if(f)Pd(r,i)|0;else{e=Oo(A,r)|0;while(1){if(!e)break e;Pd(e,i)|0;e=_o(A,e)|0}}}while(0);r=sd(A,r)|0}}default:{}}}while(0);return}function qd(A,e,i){A=A|0;e=e|0;i=i|0;Pd(e,i)|0;return}function $d(A){A=A|0;var e=0,i=0,r=0;i=Id(A)|0;e=A+16|0;A=a[e>>2]|0;if(A|0)do{r=A;A=a[A+4>>2]|0;lB(i,a[r>>2]|0)|0;fd(i,r)}while((A|0)!=(a[e>>2]|0));a[e>>2]=0;return}function AB(A){A=A|0;return SB(A,eB(A)|0)|0}function eB(A){A=A|0;var e=0,i=0;if(!A)i=187844;else i=(a[A+64>>2]|0)+20|0;e=a[i>>2]|0;if(!e){e=jB(A,18864,a[4589]|0)|0;a[i>>2]=e;A=186312;a[A>>2]=-2147483648;a[A+4>>2]=0;A=186320;a[A>>2]=2147483647;a[A+4>>2]=-1}return e|0}function iB(A,e){A=A|0;e=e|0;return rB(eB(A)|0,e)|0}function rB(A,e){A=A|0;e=e|0;A=fB(A,e)|0;if(!A)A=0;else A=a[A+16>>2]|0;return A|0}function fB(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+32|0;r=i;a[r+16>>2]=e;e=y5[a[A>>2]&63](A,r,4)|0;k=i;return e|0}function aB(A,e){A=A|0;e=e|0;var i=0,r=0;if(!e)i=0;else{r=eB(A)|0;i=fB(r,e)|0;if(!i){i=(P2(e)|0)+24|0;if(!A)i=Q2(i)|0;else i=rd(A,i)|0;A=i+8|0;a[A>>2]=1;a[A+4>>2]=0;A=i+20|0;$1(A,e)|0;a[i+16>>2]=A;y5[a[r>>2]&63](r,i,1)|0}else{r=i+8|0;e=r;e=d6(a[e>>2]|0,a[e+4>>2]|0,1,0)|0;a[r>>2]=e;a[r+4>>2]=L}i=a[i+16>>2]|0}return i|0}function nB(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;if(!e)i=0;else{r=eB(A)|0;i=fB(r,e)|0;if(!i){i=(P2(e)|0)+24|0;if(!A)i=Q2(i)|0;else i=rd(A,i)|0;n=186312;f=a[n+4>>2]|0;A=i+8|0;a[A>>2]=a[n>>2]|1;a[A+4>>2]=f;A=i+20|0;$1(A,e)|0;a[i+16>>2]=A;y5[a[r>>2]&63](r,i,1)|0}else{n=i+8|0;f=n;f=d6(a[f>>2]|0,a[f+4>>2]|0,1,0)|0;a[n>>2]=f;a[n+4>>2]=L}i=a[i+16>>2]|0}return i|0}function lB(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;if((e|0)!=0?(i=eB(A)|0,r=fB(i,e)|0,(r|0)!=0):0)if((a[r+16>>2]|0)==(e|0)?(e=r+8|0,n=e,n=d6(a[n>>2]|0,a[n+4>>2]|0,-1,-1)|0,f=L,e,a[e>>2]=n,a[e+4>>2]=f,e=186320,(n|0)==0&(f|0)==0|(a[e>>2]|0)==0&(a[e+4>>2]|0)==0):0){PB(A,i,r)|0;A=0}else A=0;else A=-1;return A|0}function tB(A){A=A|0;var e=0;if(!A)A=0;else{A=A+-12|0;e=186312;A=a[e>>2]&a[A>>2]}return A|0}function cB(A){A=A|0;var e=0,i=0,r=0;if(A|0){i=186312;A=A+-12|0;r=A;e=a[r+4>>2]|a[i+4>>2];a[A>>2]=a[r>>2]|a[i>>2];a[A+4>>2]=e}return}function sB(A){A=A|0;a[46966]=A;a[4725]=1;return}function bB(A,e){A=A|0;e=e|0;a[46967]=A;a[46968]=e;a[46969]=0;return}function uB(){var A=0,e=0,i=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;if(!(a[46970]|0)){a[46970]=1;if(!(a[46971]|0))a[46971]=1;if(!(a[46962]|0))a[46962]=a[15647];if(!(a[46963]|0))a[46963]=a[15679];s=a[46972]|0;if(!((s|0)!=0?(a[s>>2]|0)!=0:0)){wB();s=kB(a[46962]|0,16384)|0;a[a[46972]>>2]=s}oB()}A:while(1){c=a[46973]|0;r[c>>0]=r[194805]|0;A=(a[(a[a[46972]>>2]|0)+28>>2]|0)+(a[46971]|0)|0;e=c;e:while(1){l=e;while(1){e=a[18904+(n[l>>0]<<2)>>2]|0;if(f[63856+(A<<1)>>1]|0){a[46974]=A;a[46975]=l}i:while(1){i=e&255;do{e=i+(f[64042+(A<<1)>>1]|0)|0;if((A|0)==(f[64252+(e<<1)>>1]|0))break i;s=f[64788+(A<<1)>>1]|0;A=s<<16>>16}while(s<<16>>16<=92);e=a[19928+(i<<2)>>2]|0}A=f[64998+(e<<1)>>1]|0;e=l+1|0;if((f[64042+(A<<1)>>1]|0)==219)break;else l=e}i:while(1){s=c;r:while(1){A=f[63856+(A<<1)>>1]|0;if(!(A<<16>>16)){A=f[63856+(a[46974]<<1)>>1]|0;e=a[46975]|0}else A=A<<16>>16;a[46964]=c;t=e;a[46965]=t-s;r[194805]=r[e>>0]|0;r[e>>0]=0;a[46973]=e;f:while(1){switch(A|0){case 1:{u=27;break A}case 12:{u=53;break A}case 13:{u=55;break A}case 14:{u=57;break A}case 15:{u=61;break A}case 16:{u=65;break A}case 17:{u=67;break A}case 18:{u=69;break A}case 19:{u=72;break A}case 20:{u=75;break A}case 21:{u=78;break A}case 23:{u=86;break A}case 33:{u=118;break A}case 39:case 38:case 37:case 36:{b=0;break A}case 2:{u=29;break e}case 3:{u=32;break e}case 4:{u=35;break e}case 5:{u=37;break e}case 6:{u=39;break e}case 7:{u=42;break e}case 8:{u=44;break e}case 9:{u=47;break e}case 10:{u=49;break e}case 11:{u=51;break e}case 22:{u=83;break e}case 24:{u=89;break e}case 25:{u=92;break e}case 26:{u=95;break e}case 27:{u=98;break e}case 28:{u=101;break e}case 29:{u=104;break e}case 30:{u=109;break e}case 31:{u=112;break e}case 32:{u=115;break e}case 34:{u=121;break e}case 0:break f;case 35:break;default:{u=134;break A}}l=a[46964]|0;r[e>>0]=r[194805]|0;A=a[46972]|0;i=a[A>>2]|0;if(!(a[i+44>>2]|0)){w=a[i+16>>2]|0;a[46977]=w;a[i>>2]=a[46962];i=a[A>>2]|0;a[i+44>>2]=1;A=w}else A=a[46977]|0;if((a[46973]|0)>>>0<=((a[i+4>>2]|0)+A|0)>>>0){u=128;break r}switch(ZB()|0){case 0:{u=132;break i}case 2:{u=133;break r}case 1:break;default:continue A}a[46973]=a[46964];A=(((a[46971]|0)+-1|0)/2|0)+36|0}r[e>>0]=r[194805]|0;e=a[46975]|0;A=a[46974]|0}if((u|0)==128){u=0;i=t-l|0;l=a[46964]|0;e=l+(i+-1)|0;a[46973]=e;A=CB()|0;t=IB(A)|0;c=a[46964]|0;if(!t)continue;else{u=129;break}}else if((u|0)==133){u=0;e=(a[(a[a[46972]>>2]|0)+4>>2]|0)+(a[46977]|0)|0;a[46973]=e;A=CB()|0;c=a[46964]|0;continue}}if((u|0)==129){u=0;e=l+i|0;a[46973]=e;A=t;continue}else if((u|0)==132){u=0;e=(a[46964]|0)+(t-l+-1)|0;a[46973]=e;A=CB()|0;c=a[46964]|0;continue}}switch(u|0){case 29:{u=0;A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;a[4725]=(a[4725]|0)+1;continue A}case 32:{u=0;A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;a[46971]=3;continue A}case 35:{u=0;A=a[46965]|0;if(!A)continue A;a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;continue A}case 37:{u=0;A=a[46965]|0;if(!A)continue A;a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;continue A}case 39:{u=0;A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;a[46971]=1;continue A}case 42:{u=0;A=a[46965]|0;if(!A)continue A;a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;continue A}case 44:{u=0;A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;hB();continue A}case 47:{u=0;A=a[46965]|0;if(!A)continue A;a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;continue A}case 49:{u=0;A=a[46965]|0;if(!A)continue A;a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;continue A}case 51:{u=0;A=a[46965]|0;if(!A)continue A;a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;continue A}case 83:{u=0;A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;a[46971]=5;BB();continue A}case 89:{u=0;A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;vB(98744);continue A}case 92:{u=0;A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;vB(96616);continue A}case 95:{u=0;A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;a[4725]=(a[4725]|0)+1;continue A}case 98:{u=0;e=a[46965]|0;A=a[46964]|0;if(e|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[A+(e+-1)>>0]|0)==10&1;vB(A);continue A}case 101:{u=0;A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;a[46971]=7;a[46976]=1;BB();continue A}case 104:{u=0;A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;w=(a[46976]|0)+-1|0;a[46976]=w;if(!w){u=108;break A}vB(a[46964]|0);continue A}case 109:{u=0;e=a[46965]|0;A=a[46964]|0;if(e|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[A+(e+-1)>>0]|0)==10&1;a[46976]=(a[46976]|0)+1;vB(A);continue A}case 112:{u=0;e=a[46965]|0;A=a[46964]|0;if(e|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[A+(e+-1)>>0]|0)==10&1;vB(A);a[4725]=(a[4725]|0)+1;continue A}case 115:{u=0;e=a[46965]|0;A=a[46964]|0;if(e|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[A+(e+-1)>>0]|0)==10&1;vB(A);continue A}case 121:{u=0;e=a[46965]|0;A=a[46964]|0;if(e|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[A+(e+-1)>>0]|0)==10&1;L3(A,e,1,a[46963]|0)|0;continue A}}}switch(u|0){case 27:{A=a[46965]|0;if(!A)b=-1;else{a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;b=-1}break}case 53:{A=a[46965]|0;if(!A)b=259;else{a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;b=259}break}case 55:{A=a[46965]|0;if(!A)b=260;else{a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;b=260}break}case 57:{A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;if(!(a[46969]|0)){a[46969]=258;b=258}else b=258;break}case 61:{A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;if(!(a[46969]|0)){a[46969]=261;b=261}else b=261;break}case 65:{A=a[46965]|0;if(!A)b=263;else{a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;b=263}break}case 67:{A=a[46965]|0;if(!A)b=262;else{a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;b=262}break}case 69:{A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;b=(a[46969]|0)==261?264:45;break}case 72:{A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;b=(a[46969]|0)==258?264:45;break}case 75:{e=a[46965]|0;A=a[46964]|0;if(e|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[A+(e+-1)>>0]|0)==10&1;a[46992]=aB(a[46942]|0,A)|0;b=267;break}case 78:{A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;if(dB()|0){u=(a[46965]|0)+-1|0;r[e>>0]=r[194805]|0;w=c+u|0;a[46973]=w;a[46964]=c;a[46965]=u;r[194805]=r[w>>0]|0;r[w>>0]=0;a[46973]=w}a[46992]=aB(a[46942]|0,a[46964]|0)|0;b=267;break}case 86:{A=a[46965]|0;if(A|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[(a[46964]|0)+(A+-1)>>0]|0)==10&1;a[46971]=1;gB();b=268;break}case 108:{a[46971]=1;EB();b=268;break}case 118:{e=a[46965]|0;A=a[46964]|0;if(e|0)a[(a[a[46972]>>2]|0)+28>>2]=(r[A+(e+-1)>>0]|0)==10&1;b=r[A>>0]|0;break}case 134:{GB(96619);break}}return b|0}function wB(){var A=0,e=0,i=0;e=a[46972]|0;do{if(!e){A=YB(4)|0;a[46972]=A;if(!A)GB(96977);else{a[A>>2]=0;A=1;i=9;break}}else{A=a[46983]|0;if(0>=(A+-1|0)>>>0){A=A+8|0;e=mB(e,A<<2)|0;a[46972]=e;if(!e)GB(96977);else{i=e+(a[46983]<<2)|0;a[i>>2]=0;a[i+4>>2]=0;a[i+8>>2]=0;a[i+12>>2]=0;a[i+16>>2]=0;a[i+20>>2]=0;a[i+24>>2]=0;a[i+28>>2]=0;i=9;break}}}}while(0);if((i|0)==9)a[46983]=A;return}function kB(A,e){A=A|0;e=e|0;var i=0;i=YB(48)|0;if(!i)GB(96932);a[i+12>>2]=e;e=YB(e+2|0)|0;a[i+4>>2]=e;if(!e)GB(96932);else{a[i+20>>2]=1;LB(i,A);return i|0}return 0}function oB(){var A=0,e=0;e=a[46972]|0;A=a[e>>2]|0;a[46977]=a[A+16>>2];A=a[A+8>>2]|0;a[46973]=A;a[46964]=A;a[46962]=a[a[e>>2]>>2];r[194805]=r[A>>0]|0;return}function hB(){var A=0,e=0,i=0,f=0,n=0,l=0,t=0;n=k;k=k+32|0;f=n;e=n+16|0;i=n+12|0;l=a[46964]|0;A=l+1|0;t=(Z1(A,96916,4)|0)==0;A=t?l+5|0:A;a[f>>2]=i;a[f+4>>2]=n+20;a[f+8>>2]=e;f=J3(A,96921,f)|0;if((f|0)>0?(a[4725]=(a[i>>2]|0)+-1,(f|0)!=1):0){e=A+(a[e>>2]|0)|0;A=e;A:while(1){i=r[A>>0]|0;switch(i<<24>>24){case 0:case 34:break A;default:{}}A=A+1|0}if((A|0)!=(e|0)&i<<24>>24==34){r[A>>0]=0;zB(e,A-e|0)}}k=n;return}function dB(){var A=0,e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0;c=k;k=k+2080|0;t=c+8|0;f=c;A=c+1056|0;e=c+32|0;l=c+16|0;s=r[(a[46964]|0)+((a[46965]|0)+-1)>>0]|0;i=s<<24>>24==46;if(i|((s&255)+-48|0)>>>0<10)if(i?(WB()|0)!=0:0)n=4;else A=0;else n=4;if((n|0)==4){s=a[46966]|0;co(l,1024,A);uo(l,96827)|0;uo(l,a[46964]|0)|0;a[f>>2]=a[4725];S4(e,96871,f)|0;uo(l,e)|0;uo(l,(s|0)==0?96821:s)|0;uo(l,96888)|0;e=l+4|0;A=a[e>>2]|0;if(A>>>0>=(a[l+8>>2]|0)>>>0){so(l,1)|0;A=a[e>>2]|0}r[A>>0]=0;A=a[l>>2]|0;a[e>>2]=A;a[t>>2]=A;ao(0,96913,t)|0;wo(l);A=1}k=c;return A|0}function BB(){var A=0;A=a[46978]|0;if(!A){A=Q2(1024)|0;a[46978]=A;a[46980]=A+1024}a[46979]=A;r[A>>0]=0;return}function gB(){a[46992]=aB(a[46942]|0,a[46978]|0)|0;r[a[46978]>>0]=0;return}function vB(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;i=a[46979]|0;e=a[46978]|0;if(i>>>0>e>>>0){i=i+-1|0;f=3}A:while(1){if((f|0)==3)a[46979]=i;f=a[46980]|0;n=f;do{l=A;A=A+1|0;l=r[l>>0]|0;t=i;i=i+1|0;r[t>>0]=l;if(!(l<<24>>24))break A}while(i>>>0 >>0);a[46979]=i;f=e;t=n-f<<1;e=W2(e,t)|0;a[46978]=e;a[46980]=e+t;i=e+(i-f)|0;f=3}a[46979]=i;return}function EB(){a[46992]=nB(a[46942]|0,a[46978]|0)|0;r[a[46978]>>0]=0;return}function CB(){var A=0,e=0,i=0,n=0,l=0;l=a[46973]|0;n=a[46964]|0;e=(a[(a[a[46972]>>2]|0)+28>>2]|0)+(a[46971]|0)|0;while(1){if(n>>>0>=l>>>0)break;A=r[n>>0]|0;if(!(A<<24>>24))A=1;else A=a[18904+((A&255)<<2)>>2]|0;if(f[63856+(e<<1)>>1]|0){a[46974]=e;a[46975]=n}A:while(1){i=A&255;do{A=i+(f[64042+(e<<1)>>1]|0)|0;if((e|0)==(f[64252+(A<<1)>>1]|0))break A;A=f[64788+(e<<1)>>1]|0;e=A<<16>>16}while(A<<16>>16<=92);A=a[19928+(i<<2)>>2]|0}n=n+1|0;e=f[64998+(A<<1)>>1]|0}return e|0}function IB(A){A=A|0;var e=0;if(f[63856+(A<<1)>>1]|0){e=a[46973]|0;a[46974]=A;a[46975]=e}while(1){e=(f[64042+(A<<1)>>1]|0)+1|0;if((A|0)==(f[64252+(e<<1)>>1]|0))break;A=f[64788+(A<<1)>>1]|0}e=f[64998+(e<<1)>>1]|0;return(e<<16>>16==92?0:e<<16>>16)|0}function ZB(){var A=0,e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0;c=a[46972]|0;n=a[c>>2]|0;t=a[n+4>>2]|0;f=a[46964]|0;b=a[46973]|0;s=b;if(b>>>0>(t+((a[46977]|0)+1)|0)>>>0)GB(96674);l=s-f|0;if(!(a[n+40>>2]|0))A=(l|0)==1?1:2;else{b=l+-1|0;l=t;n=0;while(1){if((n|0)>=(b|0))break;r[l>>0]=r[f>>0]|0;l=l+1|0;f=f+1|0;n=n+1|0}f=a[c>>2]|0;do{if((a[f+44>>2]|0)==2){a[46977]=0;a[f+16>>2]=0;i=f;u=17}else{while(1){t=f+12|0;l=a[t>>2]|0;n=l-b+-1|0;if(n|0){u=16;break}n=f+4|0;c=a[n>>2]|0;if(!(a[f+20>>2]|0)){u=12;break}f=l<<1;f=(f|0)==0?(l>>>3)+l|0:f;a[t>>2]=f;f=mB(c,f+2|0)|0;a[n>>2]=f;if(!f)break;c=f+(s-c)|0;a[46973]=c;f=a[a[46972]>>2]|0;s=c}if((u|0)==12)a[n>>2]=0;else if((u|0)==16){e=y5[a[a[(a[46967]|0)+8>>2]>>2]&63](a[46968]|0,(a[f+4>>2]|0)+b|0,n>>>0<8192?n:8192)|0;i=a[a[46972]>>2]|0;a[46977]=e;a[i+16>>2]=e;if(!e){u=17;break}else{A=0;break}}GB(96730)}}while(0);do{if((u|0)==17)if(!b){QB(a[46962]|0);A=1;e=a[46977]|0;i=a[a[46972]>>2]|0;break}else{a[i+44>>2]=2;A=2;e=0;break}}while(0);f=e+b|0;do{if(f>>>0>(a[i+12>>2]|0)>>>0){u=mB(a[i+4>>2]|0,f+(e>>>1)|0)|0;e=a[46972]|0;a[(a[e>>2]|0)+4>>2]=u;e=a[(a[e>>2]|0)+4>>2]|0;if(!e)GB(96774);else{w=a[46977]|0;k=e;break}}else{w=e;k=a[i+4>>2]|0}}while(0);w=w+b|0;a[46977]=w;r[k+w>>0]=0;k=a[46972]|0;r[(a[(a[k>>2]|0)+4>>2]|0)+((a[46977]|0)+1)>>0]=0;a[46964]=a[(a[k>>2]|0)+4>>2]}return A|0}function GB(A){A=A|0;var e=0,i=0;e=k;k=k+16|0;i=a[15712]|0;a[e>>2]=A;f3(i,96670,e)|0;PA(2)}function mB(A,e){A=A|0;e=e|0;return W2(A,e)|0}function QB(A){A=A|0;var e=0,i=0,r=0;i=a[46972]|0;if((i|0)!=0?(e=a[i>>2]|0,(e|0)!=0):0)r=4;else{wB();e=kB(a[46962]|0,16384)|0;i=a[46972]|0;a[i>>2]=e;if(!i)e=0;else r=4}LB(e,A);oB();return}function LB(A,e){A=A|0;e=e|0;var i=0;i=a[(N2()|0)>>2]|0;yB(A);a[A>>2]=e;a[A+40>>2]=1;e=a[46972]|0;if(!e)e=0;else e=a[e>>2]|0;if((e|0)!=(A|0)){a[A+32>>2]=1;a[A+36>>2]=0}a[A+24>>2]=0;a[(N2()|0)>>2]=i;return}function yB(A){A=A|0;var e=0;if(A|0){a[A+16>>2]=0;e=A+4|0;r[a[e>>2]>>0]=0;r[(a[e>>2]|0)+1>>0]=0;a[A+8>>2]=a[e>>2];a[A+28>>2]=1;a[A+44>>2]=0;e=a[46972]|0;if(!e)e=0;else e=a[e>>2]|0;if((e|0)==(A|0))oB()}return}function WB(){var A=0,e=0;e=a[46964]|0;A=(a[46965]|0)+-2|0;while(1){if((A|0)<=-1){A=0;break}if((r[e+A>>0]|0)==46){A=1;break}else A=A+-1|0}return A|0}function zB(A,e){A=A|0;e=e|0;var i=0;i=a[46981]|0;if((i|0)<(e|0)){if(!i)i=Q2(e+1|0)|0;else i=W2(a[46982]|0,e+1|0)|0;a[46982]=i;a[46981]=e}else i=a[46982]|0;$1(i,A)|0;a[46966]=a[46982];return}function YB(A){A=A|0;return Q2(A)|0}function DB(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;b=k;k=k+2112|0;s=b+32|0;t=b+24|0;l=b+16|0;n=b+8|0;f=b;e=b+56|0;c=b+40|0;co(c,1024,b+1080|0);i=a[46966]|0;if(i|0){uo(c,i)|0;uo(c,97027)|0}uo(c,A)|0;a[f>>2]=a[4725];S4(e,97030,f)|0;uo(c,e)|0;A:do{if(!(r[a[46964]>>0]|0))switch(((a[46971]|0)+-1|0)/2|0|0){case 2:{a[n>>2]=16384;S4(e,97050,n)|0;uo(c,e)|0;A=a[46978]|0;if(!(r[A>>0]|0))break A;t=P2(A)|0;uo(c,97112)|0;A=a[46978]|0;if((t|0)>80)r[A+80>>0]=0;uo(c,A)|0;break A}case 3:{a[l>>2]=16384;S4(e,97131,l)|0;uo(c,e)|0;A=a[46978]|0;if(!(r[A>>0]|0))break A;t=P2(A)|0;uo(c,97199)|0;A=a[46978]|0;if((t|0)>80)r[A+80>>0]=0;uo(c,A)|0;break A}case 1:{a[t>>2]=16384;S4(e,97218,t)|0;uo(c,e)|0;break A}default:break A}else{uo(c,97042)|0;uo(c,a[46964]|0)|0;e=c+4|0;A=a[e>>2]|0;if(A>>>0>=(a[c+8>>2]|0)>>>0){so(c,1)|0;A=a[e>>2]|0}a[e>>2]=A+1;r[A>>0]=39}}while(0);i=c+4|0;A=a[i>>2]|0;e=c+8|0;if(A>>>0>=(a[e>>2]|0)>>>0){so(c,1)|0;A=a[i>>2]|0}a[i>>2]=A+1;r[A>>0]=10;A=a[i>>2]|0;if(A>>>0>=(a[e>>2]|0)>>>0){so(c,1)|0;A=a[i>>2]|0}r[A>>0]=0;t=a[c>>2]|0;a[i>>2]=t;a[s>>2]=t;ao(1,96913,s)|0;wo(c);k=b;return}function MB(){FB(a[46964]|0);return}function FB(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;c=a[46973]|0;r[c>>0]=r[194805]|0;t=a[46972]|0;i=a[t>>2]|0;e=a[i+4>>2]|0;if(c>>>0<(e+2|0)>>>0){f=e+((a[46977]|0)+2)|0;n=e+((a[i+12>>2]|0)+2)|0;s=e;l=i;while(1){if(f>>>0<=s>>>0)break;i=f+-1|0;s=n+-1|0;r[s>>0]=r[i>>0]|0;l=a[t>>2]|0;f=i;n=s;s=a[l+4>>2]|0}i=n-f|0;e=c+i|0;c=a[l+12>>2]|0;a[46977]=c;a[l+16>>2]=c;if(e>>>0<(s+2|0)>>>0)GB(97277);else{b=A+i|0;u=e}}else{b=A;u=c}A=u+-1|0;r[A>>0]=64;a[46964]=b;r[194805]=r[A>>0]|0;a[46973]=A;return}function VB(){var A=0;A=a[46972]|0;if(!A)A=0;else A=a[A>>2]|0;yB(A);return}function JB(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;r=k;k=k+80|0;f=r;n=A+52|0;OB(A,a[n>>2]|0,18548);A=f+8|0;a[A>>2]=e;a[A+4>>2]=i;i=a[n>>2]|0;i=y5[a[i>>2]&63](i,f,4)|0;k=r;return i|0}function pB(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0;f=JB(A,e,i)|0;if(!f){f=rd(A,72)|0;a[f+64>>2]=a[A+64>>2];n=f+24|0;l=a[A+24>>2]|0;a[n>>2]=l;r[n>>0]=l&255&-9;a[f+56>>2]=A;a[f+60>>2]=a[A+60>>2];A=f+8|0;a[A>>2]=e;a[A+4>>2]=i;hh(f)|0}return f|0}function NB(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;n=k;k=k+16|0;f=n;if(!(((e|0)!=0?(Dh(A,0,e,f,0)|0)!=0:0)?(r=f,r=JB(A,a[r>>2]|0,a[r+4>>2]|0)|0,(r|0)!=0):0))if((i|0)!=0?(Dh(A,0,e,f,1)|0)!=0:0){r=f;r=pB(A,a[r>>2]|0,a[r+4>>2]|0)|0;Jh(A,0,r)}else r=0;k=n;return r|0}function RB(A){A=A|0;A=a[A+52>>2]|0;return y5[a[A>>2]&63](A,0,128)|0}function XB(A){A=A|0;var e=0;e=HB(A)|0;if(!e)A=0;else{e=a[e+52>>2]|0;A=y5[a[e>>2]&63](e,A,8)|0}return A|0}function HB(A){A=A|0;return a[A+56>>2]|0}function UB(A,e){A=A|0;e=e|0;A=a[A+52>>2]|0;return y5[a[A>>2]&63](A,e,2)|0}function xB(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;A=a[46984]|0;r=(e|0)!=0;do{if(!A)if(r){L2(e);A=0;break}else{A=Q2(i)|0;break}else if(r){fd(A,e);A=0;break}else{A=rd(A,i)|0;break}}while(0);return A|0}function TB(A,e,i){A=A|0;e=e|0;i=i|0;A=a[46984]|0;if(!A)L2(e);else fd(A,e);return}function jB(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;r=e+28|0;f=a[r>>2]|0;a[r>>2]=7;a[46984]=A;i=jk(e,i)|0;a[r>>2]=f;a[46984]=0;return i|0}function PB(A,e,i){A=A|0;e=e|0;i=i|0;a[46984]=A;return y5[a[e>>2]&63](e,i,2)|0}function SB(A,e){A=A|0;e=e|0;var i=0,r=0;i=(Ao(e,0,0)|0)+28|0;r=a[i>>2]|0;a[i>>2]=7;a[46984]=A;if(!(Hk(e)|0)){a[i>>2]=r;a[46984]=0;A=0}else A=1;return A|0}function OB(A,e,i){A=A|0;e=e|0;i=i|0;if(i|0?(Ao(e,0,0)|0)!=(i|0):0)Ao(e,i,0)|0;return}function KB(A,e){A=A|0;e=e|0;if(!(tB(A)|0))e=qB(A,e)|0;else _B(A,e)|0;return e|0}function _B(A,e){A=A|0;e=e|0;var i=0,f=0,a=0;r[e>>0]=60;f=e;while(1){i=f+1|0;a=r[A>>0]|0;if(!(a<<24>>24))break;r[i>>0]=a;A=A+1|0;f=i}r[i>>0]=62;r[f+2>>0]=0;return e|0}function qB(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0;A:do{if((A|0)!=0?(r[A>>0]|0)!=0:0){r[e>>0]=34;b=r[A>>0]|0;h=0;n=((b+-45&255)<2|((b&255)+-48|0)>>>0<10)&1;l=0;t=0;c=0;i=e+1|0;f=A+1|0;e:while(1){s=i;while(1){if(!(b<<24>>24))break e;i=b&255;i:do{if(b<<24>>24==34){r[s>>0]=92;u=n;w=1;s=s+1|0}else{if(!n){w=b<<24>>24>-1&(b<<24>>24!=95&(V1(i)|0)==0);u=0;w=w?1:l;break}switch(b<<24>>24){case 45:{w=(c|0)==0;u=w?n:0;w=w?l:1;break i}case 46:{w=(t|0)==0;u=w?n:0;w=w?l:1;t=t+1|0;break i}default:{w=(i+-48|0)>>>0<10;u=w?n:0;w=w?l:1;break i}}}}while(0);i=s+1|0;r[s>>0]=b;o=f+1|0;k=r[f>>0]|0;c=c+1|0;f=a[5031]|0;if(!f){n=u;l=w;s=i;f=o;b=k;continue}n=k&255;l=k<<24>>24!=0;if((h&l?!(b<<24>>24==92|b<<24>>24>-1&((b+-45&255)>1&(V1(b<<24>>24)|0)==0)^1):0)?!(k<<24>>24>-1&((k+-45&255)>1&(V1(n)|0)==0)):0)break;if((c|0)<(f|0)|l^1){n=u;l=w;s=i;f=o;b=k;continue}if(b<<24>>24==92|b<<24>>24>-1&((V1(b<<24>>24)|0)==0&(b+-45&255)>1)^1){h=1;n=u;l=w;b=k;f=o;continue e}if(k<<24>>24>-1&((k+-45&255)>1&(V1(n)|0)==0)){h=1;n=u;l=w;b=k;f=o;continue e}r[i>>0]=92;r[s+2>>0]=10;n=u;l=1;c=0;s=s+3|0;f=o;b=k}r[i>>0]=92;r[s+2>>0]=10;h=0;n=u;l=1;c=0;b=k;i=s+3|0;f=o}r[s>>0]=34;r[s+1>>0]=0;if(!l){if((c|0)==1?((r[A>>0]|0)+-45&255)<2:0){A=e;break}else i=20128;while(1){f=a[i>>2]|0;if(!f)break A;if(!(p1(f,A)|0)){A=e;break}else i=i+4|0}}else A=e}else A=97309}while(0);return A|0}function $B(A){A=A|0;return KB(A,Ag(A)|0)|0}function Ag(A){A=A|0;var e=0;e=((P2(A)|0)<<1)+2|0;e=e>>>0>1024?e:1024;A=a[46986]|0;if(e>>>0>(a[46985]|0)>>>0){if(!A)A=Q2(e)|0;else A=W2(A,e)|0;a[46986]=A;a[46985]=e}return A|0}function eg(A,e){A=A|0;e=e|0;A=RB(A)|0;while(1){if(!A){A=0;break}if((ig(A)|0)==0?kd(A,e,0)|0:0){A=1;break}A=XB(A)|0}return A|0}function ig(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;l=Vh(A)|0;if((l|0)!=0?(r[l>>0]|0)!=37:0)e=0;else i=3;A:do{if((i|0)==3){e=Co(A)|0;e:do{if(e|0?(f=Co(HB(A)|0)|0,f|0):0){l=Sk(a[(Co(Zd(A)|0)|0)+8>>2]|0)|0;n=e+12|0;i=f+12|0;e=0;while(1){if((e|0)>=(l|0))break e;f=a[(a[n>>2]|0)+(e<<2)>>2]|0;if((f|0?(t=a[(a[i>>2]|0)+(e<<2)>>2]|0,t|0):0)?A1(f,t)|0:0){e=0;break A}e=e+1|0}}}while(0);e=ho(A,0)|0;if(e)if((Sk(a[e+8>>2]|0)|0)>0)e=0;else return(Sk(a[e+12>>2]|0)|0)<1|0;else e=1}}while(0);return e|0}function rg(A,e){A=A|0;e=e|0;var i=0,f=0;a[46987]=0;i=Ho(A,97319)|0;if((i|0?((r[i>>0]|0)+-48|0)>>>0<10:0)?(f=n3(i,0,10)|0,(f|0)==0|(f|0)>59):0)a[5031]=f;fg(A,1);if(((ag(A,e,1)|0)!=-1?(ng(A,e)|0)!=-1:0)?(lg(A,e)|0)!=-1:0){a[5031]=128;A=m5[a[(a[(a[A+64>>2]|0)+8>>2]|0)+8>>2]&63](e)|0}else A=-1;return A|0}function fg(A,e){A=A|0;e=e|0;var i=0;a[A>>2]=a[A>>2]&-9;i=RB(A)|0;while(1){if(!i)break;fg(i,0);i=XB(i)|0}A:do{if(e|0){e=cd(A)|0;while(1){if(!e)break A;a[e>>2]=a[e>>2]&-9;i=Oo(A,e)|0;while(1){if(!i)break;a[i>>2]=a[i>>2]&-9;i=_o(A,i)|0}e=sd(A,e)|0}}}while(0);return}function ag(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0;if((i|0)==0?(HB(A)|0)!=0:0){t=0;n=195059;s=109514}else{s=(r[A+24>>0]&1)==0?195059:97363;n=(Gh(A)|0)==0;a[46988]=Yo(A,2,111455,0)|0;a[46989]=Yo(A,2,111464,0)|0;t=1;n=n?195059:97366}f=Vh(A)|0;if((f|0)!=0?(r[f>>0]|0)!=37:0){l=1;c=102604}else{l=0;c=195059;f=195059}do{if((tg(A,e)|0)!=-1?(cg(A,e,n)|0)!=-1:0){n=(l|0)==0;if(l|t|0){if((cg(A,e,s)|0)==-1){f=-1;break}if((cg(A,e,102597)|0)==-1){f=-1;break}}if(!n?(vg(A,e,f)|0)==-1:0){f=-1;break}if(((cg(A,e,c)|0)!=-1?(cg(A,e,97374)|0)!=-1:0)?(a[46987]=(a[46987]|0)+1,(Gg(A,e,i)|0)!=-1):0){a[A>>2]=a[A>>2]|8;f=0}else f=-1}else f=-1}while(0);return f|0}function ng(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0;A:do{if((sg(A,e)|0)==-1)i=-1;else{s=ho(Zd(A)|0,0)|0;t=(s|0)==0;c=s+12|0;s=s+8|0;l=cd(A)|0;while(1){if(!l){i=0;break A}if(bg(A,l,(a[l>>2]|0)>>>4,0)|0){if(t)i=0;else i=a[s>>2]|0;if((ug(l,e,i)|0)==-1){i=-1;break A}}n=Oo(A,l)|0;i=l;while(1){if(!n)break;f=n+-48|0;r=a[((a[n>>2]&3|0)==2?n:f)+40>>2]|0;if((i|0)!=(r|0)?(bg(A,r,(a[l>>2]|0)>>>4,0)|0)!=0:0){if(t)i=0;else i=a[s>>2]|0;if((ug(a[((a[n>>2]&3|0)==2?n:f)+40>>2]|0,e,i)|0)==-1){i=-1;break A}i=a[((a[n>>2]&3|0)==2?n:f)+40>>2]|0}if(wg(A,n)|0){if(t)r=0;else r=a[c>>2]|0;if((kg(n,e,r)|0)==-1){i=-1;break A}}n=_o(A,n)|0}l=sd(A,l)|0}}}while(0);return i|0}function lg(A,e){A=A|0;e=e|0;a[46987]=(a[46987]|0)+-1;if((tg(A,e)|0)==-1)A=-1;else A=((cg(A,e,111008)|0)==-1)<<31>>31;return A|0}function tg(A,e){A=A|0;e=e|0;var i=0;i=a[46987]|0;while(1){if((i|0)<=0){i=0;break}if((cg(A,e,153597)|0)==-1){i=-1;break}else i=i+-1|0}return i|0}function cg(A,e,i){A=A|0;e=e|0;i=i|0;return Q5[a[(a[(a[A+64>>2]|0)+8>>2]|0)+4>>2]&127](e,i)|0}function sg(A,e){A=A|0;e=e|0;A=RB(A)|0;while(1){if(!A){A=0;break}if(!(ig(A)|0)){if((ag(A,e,0)|0)==-1){A=-1;break}if((ng(A,e)|0)==-1){A=-1;break}if((lg(A,e)|0)==-1){A=-1;break}}else sg(A,e)|0;A=XB(A)|0}return A|0}function bg(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0;if((eg(A,e)|0)==0?(Cg(A,e,i,r)|0)!=0:0)if((Ig(A,e)|0)==0?(Zg(e)|0)==0:0)f=5;else A=1;else f=5;if((f|0)==5)A=0;return A|0}function ug(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=Id(A)|0;do{if((tg(r,e)|0)!=-1?(og(A,e)|0)!=-1:0){if((dg(A)|0)==0?(Bg(A,e,i)|0)==-1:0){A=-1;break}A=cg(r,e,97330)|0}else A=-1}while(0);return A|0}function wg(A,e){A=A|0;e=e|0;A=RB(A)|0;while(1){if(!A){A=1;break}if((ig(A)|0)==0?uh(A,e,0)|0:0){A=0;break}A=XB(A)|0}return A|0}function kg(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;r=a[A>>2]&3;n=a[((r|0)==3?A:A+48|0)+40>>2]|0;r=a[((r|0)==2?A:A+-48|0)+40>>2]|0;f=Id(n)|0;do{if((((((tg(f,e)|0)!=-1?(og(n,e)|0)!=-1:0)?(hg(A,e,a[46988]|0)|0)!=-1:0)?(n=(Ih(Id(n)|0)|0)!=0,(cg(f,e,n?100079:100084)|0)!=-1):0)?(og(r,e)|0)!=-1:0)?(hg(A,e,a[46989]|0)|0)!=-1:0){if(!(dg(A)|0)){if((Bg(A,e,i)|0)==-1){A=-1;break}}else if((gg(A,e,1)|0)==-1){A=-1;break}A=cg(f,e,97330)|0}else A=-1}while(0);return A|0}function og(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0;t=k;k=k+32|0;n=t;i=t+8|0;r=Vh(A)|0;f=Id(A)|0;if(!r){c=A+8|0;A=a[c+4>>2]|0;r=n;a[r>>2]=a[c>>2];a[r+4>>2]=A;S4(i,97350,n)|0;if((cg(f,e,i)|0)==-1)A=-1;else l=4}else if((vg(f,e,r)|0)==-1)A=-1;else l=4;if((l|0)==4)A=0;k=t;return A|0}function hg(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,a=0;A:do{if((i|0)!=0?(f=Id(A)|0,a=Uo(A,i)|0,(r[a>>0]|0)!=0):0)if((cg(f,e,107984)|0)==-1)A=-1;else{do{if(tB(a)|0){if((vg(f,e,a)|0)==-1){A=-1;break A}}else{A=G1(a,58)|0;if(!A)if((Eg(f,e,a,0)|0)==-1){A=-1;break A}else break;r[A>>0]=0;if((Eg(f,e,a,0)|0)==-1){A=-1;break A}if((cg(f,e,107984)|0)==-1){A=-1;break A}if((Eg(f,e,A+1|0,0)|0)==-1){A=-1;break A}r[A>>0]=58}}while(0);A=0}else A=0}while(0);return A|0}function dg(A){A=A|0;return(a[A>>2]|0)>>>3&1|0}function Bg(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0;A:do{if(!(a[A>>2]&2)){r=0;s=4}else{switch(gg(A,e,0)|0){case-1:{r=-1;break A}case 0:{r=0;s=4;break A}default:{}}r=1;s=4}}while(0);A:do{if((s|0)==4){f=Co(A)|0;c=Id(A)|0;e:do{if(f){t=f+12|0;l=y5[a[i>>2]&63](i,0,128)|0;while(1){if(!l)break e;do{if(a[A>>2]&2){n=a[46988]|0;if(n|0?(a[l+16>>2]|0)==(a[n+16>>2]|0):0)break;n=a[46989]|0;if(!((n|0)!=0?(a[l+16>>2]|0)==(a[n+16>>2]|0):0))s=12}else s=12}while(0);if((s|0)==12){s=0;f=l+16|0;if((a[(a[t>>2]|0)+(a[f>>2]<<2)>>2]|0)!=(a[l+12>>2]|0)){n=r+1|0;if(r){if((cg(c,e,97345)|0)==-1){r=-1;break A}if((tg(c,e)|0)==-1){r=-1;break A}}else{if((tg(c,e)|0)==-1){r=-1;break A}if((cg(c,e,97342)|0)==-1){r=-1;break A}a[46987]=(a[46987]|0)+1}if((vg(c,e,a[l+8>>2]|0)|0)==-1){r=-1;break A}if((cg(c,e,97348)|0)==-1){r=-1;break A}if((vg(c,e,a[(a[t>>2]|0)+(a[f>>2]<<2)>>2]|0)|0)==-1){r=-1;break A}else r=n}}l=y5[a[i>>2]&63](i,l,8)|0}}}while(0);if((r|0)>0){if((cg(c,e,97340)|0)==-1){r=-1;break}a[46987]=(a[46987]|0)+-1}a[A>>2]=a[A>>2]|8;r=0}}while(0);return r|0}function gg(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,a=0;f=Vh(A)|0;A=Id(A)|0;if((f|0)!=0?(r[f>>0]|0)!=0:0)if((cg(A,e,97333)|0)!=-1?(vg(A,e,f)|0)!=-1:0)if((i|0)!=0?(cg(A,e,97340)|0)==-1:0)A=-1;else{A=1;a=7}else A=-1;else{A=0;a=7}return A|0}function vg(A,e,i){A=A|0;e=e|0;i=i|0;return Eg(A,e,i,1)|0}function Eg(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;if(!r)i=qB(i,Ag(i)|0)|0;else i=$B(i)|0;return cg(A,e,i)|0}function Cg(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;A:do{if(0 >>0|(0==(r|0)?(a[e>>2]|0)>>>4>>>0>>0:0))e=0;else{e=qo(A,e)|0;while(1){if(!e){e=1;break A}if(0 >>0|(0==(r|0)?(a[a[e+40>>2]>>2]|0)>>>4>>>0>>0:0)){e=0;break A}e=$o(A,e)|0}}}while(0);return e|0}function Ig(A,e){A=A|0;e=e|0;if(!(qo(A,e)|0))A=(Oo(A,e)|0)==0&1;else A=0;return A|0}function Zg(A){A=A|0;var e=0,i=0,r=0;A=Co(A)|0;A:do{if(!A)A=0;else{i=A+8|0;r=a[i>>2]|0;e=A+12|0;A=y5[a[r>>2]&63](r,0,128)|0;while(1){if(!A){A=0;break A}if((a[(a[e>>2]|0)+(a[A+16>>2]<<2)>>2]|0)!=(a[A+12>>2]|0)){A=1;break A}r=a[i>>2]|0;A=y5[a[r>>2]&63](r,A,8)|0}}}while(0);return A|0}function Gg(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;r=ho(A,0)|0;if(r)if(((mg(A,e,111494,a[r+16>>2]|0,i)|0)!=-1?(mg(A,e,111481,a[r+8>>2]|0,i)|0)!=-1:0)?(mg(A,e,111450,a[r+12>>2]|0,i)|0)!=-1:0)f=5;else A=-1;else f=5;if((f|0)==5)A=0;return A|0}function mg(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0;u=(n|0)!=0;if(u)b=0;else b=_k(f,0)|0;s=(b|0)==0;c=y5[a[f>>2]&63](f,0,128)|0;n=0;while(1){if(!c){w=23;break}t=c+12|0;w=a[t>>2]|0;if((w|0)!=0?(r[w>>0]|0)!=0:0)w=12;else w=7;do{if((w|0)==7){w=0;if(!(r[c+22>>0]|0)){if(!s){l=y5[a[b>>2]&63](b,c,4)|0;k=a[l+12>>2]|0;if(k|0?r[k>>0]|0:0){w=12;break}if(!(r[l+22>>0]|0))w=12}}else w=12}}while(0);if((w|0)==12){w=0;l=n+1|0;if(n){if((cg(A,e,97345)|0)==-1){n=-1;break}if((tg(A,e)|0)==-1){n=-1;break}}else{if((tg(A,e)|0)==-1){n=-1;break}if((cg(A,e,i)|0)==-1){n=-1;break}if((cg(A,e,97342)|0)==-1){n=-1;break}a[46987]=(a[46987]|0)+1}if((vg(A,e,a[c+8>>2]|0)|0)==-1){n=-1;break}if((cg(A,e,97348)|0)==-1){n=-1;break}if((vg(A,e,a[t>>2]|0)|0)==-1){n=-1;break}else n=l}c=y5[a[f>>2]&63](f,c,8)|0}do{if((w|0)==23){if((n|0)>0){a[46987]=(a[46987]|0)+-1;if((n|0)!=1){if((cg(A,e,153599)|0)==-1){n=-1;break}if((tg(A,e)|0)==-1){n=-1;break}}n=(cg(A,e,97377)|0)==-1;if(u|n){n=n<<31>>31;break}}else if(u){n=0;break}_k(f,b)|0;n=0}}while(0);return n|0}function Qg(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0;switch(a[e>>2]&3){case 0:{n=82;break}case 1:{n=83;break}case 3:case 2:{n=84;break}default:{}}e=Q5[n&127](A,e)|0;if(!e)e=-1;else{zg(A,e,i,r,n,f);e=0}return e|0}function Lg(A,e){A=A|0;e=e|0;if((Id(e)|0)!=(A|0))e=uh(A,e,0)|0;return e|0}function yg(A,e){A=A|0;e=e|0;if((Id(e)|0)!=(A|0))e=kd(A,e,0)|0;return e|0}function Wg(A,e){A=A|0;e=e|0;return A|0}function zg(A,e,i,r,f,a){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;var n=0,l=0,t=0;l=(a|0)!=0;if(l)J5[i&127](A,e,r);n=RB(A)|0;while(1){if(!n)break;t=Q5[f&127](n,e)|0;if(t|0)zg(n,t,i,r,f,a);n=XB(n)|0}if(!l)J5[i&127](A,e,r);return}function Yg(){var A=0,e=0,i=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0;g=k;k=k+1200|0;d=g+800|0;i=g;a[46990]=0;a[46991]=-2;e=d;t=200;u=i;o=0;h=0;w=d;A:while(1){f[w>>1]=o;if((e+(t<<1)+-2|0)>>>0>w>>>0)s=t;else{b=w-e>>1;A=b+1|0;if(t>>>0>9999){B=75;break}s=t<<1;s=s>>>0<1e4?s:1e4;l=Q2(s*6|3)|0;if(l){W6(l|0,e|0,A<<1|0)|0;t=l+(s>>>1<<2)|0;W6(t|0,u|0,A<<2|0)|0;if((e|0)==(d|0)){A=0;e=l}else{L2(e);A=0;e=l}}else{A=4;t=u}c=(A|0)==0;l=e+(b<<1)|0;switch((c?(e+(s<<1)+-2|0)>>>0>l>>>0?0:9:A)&15){case 9:{A=1;B=76;break A}case 4:{B=75;break A}case 0:{i=c?t+(b<<2)|0:i;u=t;w=c?l:w;break}default:{A=0;break A}}}if((o|0)==6){A=0;B=76;break}A=r[97381+o>>0]|0;c=A<<24>>24;do{if(A<<24>>24!=-18){l=a[46991]|0;if((l|0)==-2){l=uB()|0;a[46991]=l}if((l|0)>=1)if(l>>>0<269)t=n[97461+l>>0]|0;else t=2;else{a[46991]=0;t=0}l=t+c|0;if(l>>>0<=59?(t|0)==(n[97730+l>>0]|0):0){o=r[97790+l>>0]|0;A=o<<24>>24;if(o<<24>>24<1){l=0-A|0;B=23;break}else{a[46991]=-2;i=i+4|0;a[i>>2]=a[46992];c=(h|0)==0?0:h+-1|0;l=w;break}}else B=22}else B=22}while(0);if((B|0)==22){B=0;o=r[97850+o>>0]|0;l=o&255;if(!(o<<24>>24)){l=a[46991]|0;e:do{switch(h|0){case 0:{a[46990]=(a[46990]|0)+1;DB(143761);l=w;break}case 3:if((l|0)<1)if(!l){A=1;B=76;break A}else{l=w;break e}else{a[46991]=-2;l=w;break e}default:l=w}}while(0);while(1){if(A<<24>>24==18)break;if((l|0)==(e|0)){A=1;B=76;break A}A=l+-2|0;i=i+-4|0;l=A;A=r[97381+(f[A>>1]|0)>>0]|0}i=i+4|0;a[i>>2]=a[46992];A=1;c=3}else B=23}do{if((B|0)==23){B=0;t=n[97930+l>>0]|0;A=a[i+(1-t<<2)>>2]|0;e:do{switch(l|0){case 2:{Dg();Mg();break}case 3:{if(a[46993]|0){Dg();Mg();Bh(a[46993]|0)|0;a[46942]=0;a[46993]=0}break}case 6:{Fg(a[i>>2]|0,a[i+-4>>2]|0,a[i+-8>>2]|0);break}case 7:{A=a[i>>2]|0;break}case 8:{A=0;break}case 9:{A=1;break}case 10:{A=0;break}case 11:{A=0;break}case 12:{A=1;break}case 21:if(!(a[i+-4>>2]|0)){Jg();break e}else{Vg();break e}case 24:{pg();break}case 25:{pg();break}case 26:{A=1;break}case 27:{A=0;break}case 30:{Ng(a[i>>2]|0,0,0);break}case 31:{Ng(a[i+-8>>2]|0,a[i>>2]|0,0);break}case 32:{Ng(a[i+-16>>2]|0,a[i+-8>>2]|0,a[i>>2]|0);break}case 33:{Rg(a[i+-8>>2]|0,a[i+-4>>2]|0);break}case 34:{Rg(258,0);break}case 35:{A=258;break}case 36:{A=259;break}case 37:{A=260;break}case 38:{A=a[i+-4>>2]|0;break}case 39:{A=0;break}case 48:{Xg(a[i+-8>>2]|0,a[i>>2]|0);break}case 49:{Xg(a[i>>2]|0,0);break}case 51:{Hg(a[i>>2]|0);break}case 52:{Ug();break}case 53:{A=a[i>>2]|0;break}case 54:{A=0;break}case 55:{A=0;break}case 59:{A=a[i>>2]|0;break}case 60:{A=a[i>>2]|0;break}case 61:{A=a[i>>2]|0;break}case 62:{A=xg(a[i+-8>>2]|0,a[i>>2]|0)|0;break}default:{}}}while(0);t=0-t|0;o=i+(t<<2)|0;t=w+(t<<1)|0;i=o+4|0;a[o+4>>2]=A;A=(n[97993+l>>0]|0)+-24|0;o=f[t>>1]|0;l=o+(r[98056+A>>0]|0)|0;if(l>>>0<60?(n[97730+l>>0]|0)==(o|0):0){A=r[97790+l>>0]|0;c=h;l=t;break}A=r[98091+A>>0]|0;c=h;l=t}}while(0);t=s;o=A;h=c;w=l+2|0}if((B|0)==75){DB(140558);A=2;B=76}if((B|0)==76)if((e|0)!=(d|0))L2(e);k=g;return A|0}function Dg(){var A=0,e=0;A=a[46994]|0;while(1){if(!A)break;qg(A+8|0);qg((a[46994]|0)+24|0);qg((a[46994]|0)+16|0);e=Tg(a[46994]|0)|0;a[46994]=e;A=e}return}function Mg(){MB();Th(a[46993]|0);return}function Fg(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0;l=k;k=k+16|0;n=l;f=a[46993]|0;if(!f){r[187980]=e&1|(i&255)<<1&2|r[187980]&-12|8;f=a[46996]|0;r[n>>0]=r[187980]|0;r[n+1>>0]=r[187981]|0;r[n+2>>0]=r[187982]|0;r[n+3>>0]=r[187983]|0;f=kh(A,n,f)|0;a[46993]=f}a[46942]=f;a[46994]=jg(a[46994]|0,f)|0;lB(0,A)|0;k=l;return}function Vg(){var A=0,e=0,i=0,f=0,n=0,l=0;_g(2);i=a[46994]|0;f=r[98126]|0;l=0;A=i+24|0;while(1){e=a[A>>2]|0;if(!e)break;if(((a[e>>2]|0)==267?(n=a[e+4>>2]|0,(r[n>>0]|0)==f<<24>>24):0)?(A1(n,98126)|0)==0:0)A=a[e+8>>2]|0;else A=l;l=A;A=e+12|0}A=i+16|0;A:while(1){i=a[A>>2]|0;A=i+12|0;if(!(a[A>>2]|0))break;e=i+4|0;if((a[i>>2]|0)==262){i=a[e>>2]|0;e=cd(i)|0;while(1){if(!e)continue A;n=kd(a[a[46994]>>2]|0,e,0)|0;av(n,0,a[A>>2]|0,l);e=sd(i,e)|0}}else while(1){e=a[e>>2]|0;if(!e)continue A;av(a[e+4>>2]|0,a[e+8>>2]|0,a[A>>2]|0,l);e=e+12|0}}qg((a[46994]|0)+8|0);qg((a[46994]|0)+16|0);qg((a[46994]|0)+24|0);a[(a[46994]|0)+4>>2]=0;return}function Jg(){var A=0;_g(1);A=(a[46994]|0)+8|0;while(1){A=a[A>>2]|0;if(!A)break;fv(a[A+4>>2]|0);A=A+12|0}qg((a[46994]|0)+8|0);qg((a[46994]|0)+24|0);qg((a[46994]|0)+16|0);a[(a[46994]|0)+4>>2]=0;return}function pg(){var A=0,e=0;A=a[46994]|0;e=a[A+8>>2]|0;if(!e){e=a[A+4>>2]|0;if(!e)e=0;else{e=rv(e)|0;A=a[46994]|0}a[A+4>>2]=0}else{e=iv(e)|0;A=a[46994]|0;a[A+12>>2]=0;a[A+8>>2]=0}if(e|0)Sg(A+16|0,e);return}function Ng(A,e,i){A=A|0;e=e|0;i=i|0;if(i)e=Av(e,i)|0;i=ev(gd(a[a[46994]>>2]|0,A,1)|0,e)|0;Sg((a[46994]|0)+8|0,i);lB(a[46993]|0,A)|0;return}function Rg(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;if(e|0)Kg();e=(a[46994]|0)+24|0;while(1){e=a[e>>2]|0;if(!e)break;if(!(a[e+8>>2]|0))Kg();e=e+12|0}n=(A|0)==260?2:(A|0)==259&1;_g(n);A=a[46994]|0;e=A+24|0;while(1){f=a[e>>2]|0;if(!f)break;do{if((a[f>>2]|0)!=267){e=a[f+4>>2]|0;i=a[A>>2]|0;if(!((r[e+21>>0]|0)!=0&(i|0)==(a[46993]|0))){e=Yo(i,n,a[e+8>>2]|0,a[f+8>>2]|0)|0;A=a[46994]|0;if((a[A>>2]|0)!=(a[46993]|0))break}r[e+22>>0]=1}}while(0);e=f+12|0}qg(A+24|0);return}function Xg(A,e){A=A|0;e=e|0;e=Pg(A,e)|0;Sg((a[46994]|0)+24|0,e);return}function Hg(A){A=A|0;var e=0;e=a[46994]|0;a[46994]=jg(e,NB(a[e>>2]|0,A,1)|0)|0;lB(a[46993]|0,A)|0;return}function Ug(){var A=0,e=0;A=a[46994]|0;e=a[A>>2]|0;A=Tg(A)|0;a[46994]=A;a[A+4>>2]=e;return}function xg(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;n=k;k=k+1024|0;f=n;i=P2(A)|0;i=i+1+(P2(e)|0)|0;if(i>>>0<1025)i=f;else i=Q2(i)|0;$1(i,A)|0;w3(i,e)|0;r=aB(a[46993]|0,i)|0;lB(a[46993]|0,A)|0;lB(a[46993]|0,e)|0;if((i|0)!=(f|0))L2(i);k=n;return r|0}function Tg(A){A=A|0;var e=0;e=a[(a[46994]|0)+32>>2]|0;fd(a[46993]|0,A);return e|0}function jg(A,e){A=A|0;e=e|0;var i=0;i=rd(a[46993]|0,36)|0;a[i+32>>2]=A;a[i>>2]=e;return i|0}function Pg(A,e){A=A|0;e=e|0;return Og(267,A,e)|0}function Sg(A,e){A=A|0;e=e|0;var i=0,r=0;i=A+4|0;r=a[i>>2]|0;if(r|0)a[r+12>>2]=e;a[i>>2]=e;if(!(a[A>>2]|0))a[A>>2]=e;return}function Og(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=rd(a[46993]|0,16)|0;a[r>>2]=A;a[r+4>>2]=e;a[r+8>>2]=i;return r|0}function Kg(){var A=0;A=k;k=k+16|0;ao(0,98130,A)|0;k=A;return}function _g(A){A=A|0;var e=0,i=0,f=0,n=0,l=0;n=(A|0)==2;e=(a[46994]|0)+24|0;while(1){e=a[e>>2]|0;if(!e)break;i=e+4|0;f=a[i>>2]|0;if(!((n?(r[f>>0]|0)==(r[98126]|0):0)?!(A1(f,98126)|0):0)){l=Yo(a[a[46994]>>2]|0,A,f,0)|0;a[i>>2]=l;if(!l)a[i>>2]=Yo(a[a[46994]>>2]|0,A,f,195059)|0;a[e>>2]=266;lB(a[46993]|0,f)|0}e=e+12|0}return}function qg(A){A=A|0;$g(a[A>>2]|0);a[A+4>>2]=0;a[A>>2]=0;return}function $g(A){A=A|0;var e=0;while(1){if(!A)break;e=a[A+12>>2]|0;switch(a[A>>2]|0){case 265:{$g(a[A+4>>2]|0);break}case 266:case 267:{lB(a[46993]|0,a[A+8>>2]|0)|0;break}default:{}}fd(a[46993]|0,A);A=e}return}function Av(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;l=k;k=k+1040|0;f=l;n=l+8|0;i=P2(A)|0;i=i+2+(P2(e)|0)|0;if(i>>>0<1025)r=n;else r=Q2(i)|0;a[f>>2]=A;a[f+4>>2]=e;S4(r,98163,f)|0;i=aB(a[46993]|0,r)|0;lB(a[46993]|0,A)|0;lB(a[46993]|0,e)|0;if((r|0)!=(n|0))L2(r);k=l;return i|0}function ev(A,e){A=A|0;e=e|0;return Og(259,A,e)|0}function iv(A){A=A|0;return Og(265,A,0)|0}function rv(A){A=A|0;return Og(262,A,0)|0}function fv(A){A=A|0;var e=0,i=0;e=(a[46994]|0)+24|0;while(1){e=a[e>>2]|0;if(!e)break;if((a[e>>2]|0)==266?(i=a[e+4>>2]|0,i|0):0)Vo(A,i,a[e+8>>2]|0)|0;e=e+12|0}return}function av(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0;f=i+4|0;A:do{if((a[i>>2]|0)==262){i=a[f>>2]|0;f=cd(i)|0;while(1){if(!f)break A;nv(A,e,kd(a[a[46994]>>2]|0,f,0)|0,0,r);f=sd(i,f)|0}}else while(1){f=a[f>>2]|0;if(!f)break A;i=kd(a[a[46994]>>2]|0,a[f+4>>2]|0,0)|0;nv(A,e,i,a[f+8>>2]|0,r);f=f+12|0}}while(0);return}function nv(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0;i=th(a[a[46994]>>2]|0,A,i,f,1)|0;if(i|0){n=a[i>>2]&3;f=a[((n|0)==2?i:i+-48|0)+40>>2]|0;A=(f|0)==(A|0)?(a[((n|0)==3?i:i+48|0)+40>>2]|0)!=(f|0):0;lv(i,111455,A?r:e);lv(i,111464,A?e:r);fv(i)}return}function lv(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;if(i|0){r=Yo(a[a[46994]>>2]|0,2,e,0)|0;if(!r)r=Yo(a[a[46994]>>2]|0,2,e,195059)|0;Vo(A,r,i)|0}return}function tv(A,e,i){A=A|0;e=e|0;i=i|0;a[46962]=e;a[46993]=A;a[46942]=0;A=i|0?i:18600;a[46996]=A;bB(A,e);Yg()|0;A=a[46942]|0;if(!A){VB();A=a[46942]|0}return A|0}function cv(A,e){A=A|0;e=e|0;return tv(0,A,e)|0}function sv(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+16|0;c=s+8|0;t=s;e=a[A+76>>2]|0;f=a[A>>2]|0;if((e|0)!=0?(i=a[e>>2]|0,(i|0)!=0):0){F5[i&127](A);n=12}else n=4;do{if((n|0)==4)if((a[A+40>>2]|0)==0?(l=A+36|0,(a[l>>2]|0)==0):0){if(r[f+13>>0]|0)bv(A);e=A+32|0;i=a[e>>2]|0;if(!i){a[l>>2]=a[15679];n=12;break}f=F3(i,106512)|0;a[l>>2]=f;if(!f){c=a[(a[A+12>>2]|0)+16>>2]|0;l=a[e>>2]|0;e=e1(a[(N2()|0)>>2]|0)|0;a[t>>2]=l;a[t+4>>2]=e;V5[c&63](98169,t);e=1}else n=12}else n=12}while(0);if((n|0)==12)if(!(a[A+152>>2]&1024))e=0;else{V5[a[(a[A+12>>2]|0)+16>>2]&63](98207,c);e=1}k=s;return e|0}function bv(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;l=k;k=k+112|0;i=l;n=l+4|0;e=a[A+24>>2]|0;if(!e)r[n>>0]=0;else{a[i>>2]=e+1;S4(n,98225,i)|0}i=a[A+20>>2]|0;i=i|0?i:98229;e=P2(i)|0;t=P2(n)|0;f=A+52|0;t=e+1+t+(P2(a[f>>2]|0)|0)|0;e=t+11|0;if((a[46997]|0)>>>0<(t+1|0)>>>0){a[46997]=e;e=W2(a[46998]|0,e)|0;a[46998]=e}else e=a[46998]|0;$1(e,i)|0;w3(a[46998]|0,n)|0;e=a[46998]|0;e=e+(P2(e)|0)|0;r[e>>0]=46;r[e+1>>0]=0;e=b3(a[f>>2]|0)|0;f=a[46998]|0;while(1){i=u3(e,58)|0;if(!i)break;w3(f,i+1|0)|0;t=a[46998]|0;n=t+(P2(t)|0)|0;r[n>>0]=46;r[n+1>>0]=0;r[i>>0]=0;f=t}w3(f,e)|0;L2(e);a[A+32>>2]=a[46998];k=l;return}function uv(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;l=k;k=k+16|0;n=l+8|0;f=l;if((e|0)!=0&(i|0)!=0){if(a[A+152>>2]&1024|0){V5[a[(a[A+12>>2]|0)+16>>2]&63](98207,f);PA(1)}if((wv(A,e,i)|0)==(i|0))r=i;else{f=a[(a[A+12>>2]|0)+16>>2]|0;a[n>>2]=i;V5[f&63](98239,n);PA(1)}}else r=0;k=l;return r|0}function wv(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;w=k;k=k+16|0;u=w;f=a[(a[A>>2]|0)+104>>2]|0;do{if(!f){c=A+40|0;l=a[c>>2]|0;if(!l){i=L3(e,1,i,a[A+36>>2]|0)|0;break}f=A+44|0;t=A+48|0;n=a[t>>2]|0;do{if(((a[f>>2]|0)+-1-n|0)>>>0>>0){n=i+4096+n&-4096;a[f>>2]=n;f=W2(l,n)|0;a[c>>2]=f;if(!f){V5[a[(a[A+12>>2]|0)+16>>2]&63](98264,u);PA(1)}else{s=f;b=a[t>>2]|0;break}}else{s=l;b=n}}while(0);W6(s+b|0,e|0,i|0)|0;u=(a[t>>2]|0)+i|0;a[t>>2]=u;r[(a[c>>2]|0)+u>>0]=0}else i=y5[f&63](A,e,i)|0}while(0);k=w;return i|0}function kv(A,e){A=A|0;e=e|0;var i=0;i=P2(e)|0;e=(uv(A,e,i)|0)==(i|0);return(e?1:-1)|0}function ov(A,e){A=A|0;e=e|0;var i=0,f=0;i=k;k=k+16|0;f=i;r[f>>0]=e;A=(uv(A,f,1)|0)==1;k=i;return(A?e:-1)|0}function hv(A){A=A|0;var e=0;e=a[A+36>>2]|0;if(((e|0)!=0?(r[A+144>>0]|0)==0:0)?(a[(a[A>>2]|0)+104>>2]|0)==0:0)A=v3(e)|0;else A=0;return A|0}function dv(A){A=A|0;var e=0,i=0;e=a[A+76>>2]|0;if(e|0?(i=a[e+4>>2]|0,i|0):0)F5[i&127](A);hv(A)|0;return}function Bv(A){A=A|0;var e=0,i=0,r=0;r=k;k=k+16|0;i=a[A+76>>2]|0;if(a[A+152>>2]&1024|0){V5[a[(a[A+12>>2]|0)+16>>2]&63](98291,r);PA(1)}if((i|0)!=0?(e=a[i+8>>2]|0,(e|0)!=0):0)F5[e&127](A);else{hv(A)|0;gv(A)}k=r;return}function gv(A){A=A|0;var e=0,i=0,f=0;e=A+32|0;if((a[e>>2]|0?(i=A+36|0,f=a[i>>2]|0,(f|0)!=(a[15679]|0)):0)?(r[A+144>>0]|0)==0:0){if(f|0){h3(f)|0;a[i>>2]=0}a[e>>2]=0}return}function vv(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0;t=k;k=k+1056|0;f=t;l=t+24|0;n=t+8|0;a[n>>2]=i;r=k4(l,1024,e,n)|0;if((r|0)>=0){if((r|0)>1023){r=$F(r+1|0)|0;a[n>>2]=i;f=r;r=O4(r,e,n)|0}else f=l;uv(A,f,r)|0;if((f|0)!=(l|0))L2(f)}else{a[f>>2]=e1(a[(N2()|0)>>2]|0)|0;ao(1,98308,f)|0}k=t;return}function Ev(A,e){A=A|0;e=+e;var i=0,r=0,f=0;i=k;k=k+16|0;r=i;f=Cv(r,e)|0;uv(A,f,a[r>>2]|0)|0;k=i;return}function Cv(A,e){A=A|0;e=+e;var i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;if(!(e<-1.0e15))if(!(e>1.0e15)){e=e*1.0e4;f=~~((e<0.0?-.5:.5)+e);if(!f){f=138394;i=1}else{b=(f|0)<0;s=4;t=0;i=194826;f=b?0-f|0:f;while(1){if(!((f|0)!=0|(s|0)>0))break;n=(f|0)%10|0;c=(f|0)/10|0;l=i+-1|0;if((n|0)==0&t<<24>>24==0)f=0;else{r[l>>0]=n|48;f=1;i=l}if((s|0)==1)if(!(f<<24>>24))f=1;else{i=i+-1|0;r[i>>0]=46;f=1}s=s+-1|0;t=f;f=c}if(b){i=i+-1|0;r[i>>0]=45}f=i;i=194826-i|0}}else{f=98323;i=18}else{f=98322;i=19}a[A>>2]=i;return f|0}function Iv(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=k;k=k+16|0;r=i;f=Cv(r,+s[e>>3])|0;uv(A,f,a[r>>2]|0)|0;uv(A,102604,1)|0;e=Cv(r,+s[e+8>>3])|0;uv(A,e,a[r>>2]|0)|0;k=i;return}function Zv(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;n=k;k=k+16|0;f=n;r=0;while(1){l=e+(r<<4)|0;a[f>>2]=a[l>>2];a[f+4>>2]=a[l+4>>2];a[f+8>>2]=a[l+8>>2];a[f+12>>2]=a[l+12>>2];Iv(A,f);r=r+1|0;if((r|0)>=(i|0))break;uv(A,102604,1)|0}k=n;return}function Gv(A,e){A=A|0;e=e|0;var i=0;i=qF(392)|0;if(i|0){a[i>>2]=20156;a[i+16>>2]=23;a[i+32>>2]=A;a[i+36>>2]=e}return i|0}function mv(A){A=A|0;var e=0,i=0,r=0,f=0;e=qF(392)|0;i=e;r=A;f=i+40|0;do{a[i>>2]=a[r>>2];i=i+4|0;r=r+4|0}while((i|0)<(f|0));f=e+60|0;r=A+60|0;a[f>>2]=a[r>>2];a[f+4>>2]=a[r+4>>2];a[f+8>>2]=a[r+8>>2];a[f+12>>2]=a[r+12>>2];a[f+16>>2]=a[r+16>>2];f=e+80|0;r=A+80|0;a[f>>2]=a[r>>2];a[f+4>>2]=a[r+4>>2];a[f+8>>2]=a[r+8>>2];a[f+12>>2]=a[r+12>>2];a[f+16>>2]=a[r+16>>2];return e|0}function Qv(A){A=A|0;Mv(A);L2(A);return}function Lv(A,e){A=A|0;e=e|0;var i=0,r=0;r=A+160|0;i=a[r>>2]|0;if(i){r=a[46999]|0;if(r){i=a[r+4>>2]|0;if(!i){i=qF(632)|0;a[(a[46999]|0)+4>>2]=i}}}else{i=qF(632)|0;a[r>>2]=i;a[A+164>>2]=i}a[46999]=i;a[i+32>>2]=e;a[i>>2]=A;return}function yv(A,e){A=A|0;e=e|0;var i=0,r=0;r=A+160|0;i=a[r>>2]|0;if(i){r=a[47e3]|0;if(r){i=a[r+4>>2]|0;if(!i){i=qF(632)|0;a[(a[47e3]|0)+4>>2]=i}}}else{i=qF(632)|0;a[r>>2]=i;a[A+164>>2]=i}a[47e3]=i;a[i+52>>2]=e;a[i>>2]=A;return(Jv(A,3,e)|0)!=0|0}function Wv(A){A=A|0;var e=0;e=a[A+160>>2]|0;a[A+164>>2]=e;return e|0}function zv(A){A=A|0;var e=0,i=0,r=0;A=A+164|0;e=a[A>>2]|0;i=a[e+4>>2]|0;if(i|0?(r=i+52|0,(a[r>>2]|0)==0):0)a[r>>2]=a[e+52>>2];a[A>>2]=i;return i|0}function Yv(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;r=A+8|0;f=e+10|0;if((a[r>>2]|0)>(e|0))A=a[A>>2]|0;else{a[r>>2]=f;f=eV(a[A>>2]|0,f<<2)|0;a[A>>2]=f;A=f}a[A+(e<<2)>>2]=i;return}function Dv(A){A=A|0;var e=0;e=a[A>>2]|0;if(e|0)L2(e);a[A>>2]=0;a[A+8>>2]=0;a[A+4>>2]=0;return}function Mv(A){A=A|0;var e=0,i=0,r=0;i=A+160|0;e=a[i>>2]|0;while(1){if(!e)break;r=a[e+4>>2]|0;Dv(e+604|0);Dv(e+592|0);L2(a[e+584>>2]|0);L2(a[e+588>>2]|0);L2(e);e=r}a[47e3]=0;a[46999]=0;a[A+192>>2]=0;a[A+164>>2]=0;a[i>>2]=0;a[A+28>>2]=0;return}function Fv(A,e,i,f,n,l){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;var t=0,c=0,s=0,b=0,u=0;u=k;k=k+128|0;s=u+64|0;b=u;x4(s,i,63)|0;t=G1(s,58)|0;if(t|0)r[t>>0]=0;A=A+60+(e<<2)|0;while(1){e=a[A>>2]|0;if(!e){e=A;A=0;break}x4(b,a[e+4>>2]|0,63)|0;e=G1(b,58)|0;if(e|0)r[e>>0]=0;if((A1(s,b)|0)<1){c=9;break}A=a[A>>2]|0}while(1){if((c|0)==9){e=A;A=a[A>>2]|0}if(!A)break;x4(b,a[A+4>>2]|0,63)|0;A=G1(b,58)|0;if(A|0)r[A>>0]=0;if(A1(s,b)|0)break;A=a[e>>2]|0;if((a[A+8>>2]|0)<=(f|0))break;c=9}b=$F(20)|0;a[b>>2]=a[e>>2];a[e>>2]=b;a[b+4>>2]=i;a[b+8>>2]=f;a[b+12>>2]=n;a[b+16>>2]=l;k=u;return 1}function Vv(A,e){A=A|0;e=e|0;e=k;k=k+16|0;ao(1,98396,e)|0;k=e;return 0}function Jv(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0;B=k;k=k+144|0;d=B;w=B+80|0;o=B+16|0;u=(e+-3|0)>>>0<2?0:e;x4(w,i,63)|0;i=G1(w,58)|0;if(i){f=i+1|0;r[i>>0]=0;i=G1(f,58)|0;if(!i)b=0;else{r[i>>0]=0;b=i+1|0}}else{b=0;f=0}t=(f|0)!=0;c=(b|0)==0;s=(u|0)==(e|0);l=A+60+(e<<2)|0;A:while(1){i=a[l>>2]|0;if(!i){i=0;break}x4(o,a[i+4>>2]|0,63)|0;i=G1(o,58)|0;if(!i)i=0;else{r[i>>0]=0;i=i+1|0}do{if(!(A1(o,w)|0)){n=(i|0)!=0;if(t&n?A1(i,f)|0:0)break;if(!c?A1(b,a[(a[(a[l>>2]|0)+12>>2]|0)+8>>2]|0)|0:0)break;if(s|n^1){h=16;break A}if(Jv(A,u,i)|0){h=16;break A}}}while(0);l=a[l>>2]|0}do{if((h|0)==16){i=a[l>>2]|0;if(i){f=i+16|0;if((a[f>>2]|0)==0?(Vv(0,0)|0,(a[f>>2]|0)==0):0){i=0;break}if((a[A+8>>2]|0)>0){h=a[15712]|0;w=a[i+4>>2]|0;o=a[(a[i+12>>2]|0)+8>>2]|0;a[d>>2]=a[20168+(e<<2)>>2];a[d+4>>2]=w;a[d+8>>2]=o;f3(h,98427,d)|0}}else i=0}}while(0);a[A+80+(e<<2)>>2]=i;k=B;return i|0}function pv(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0;do{if(!i)i=0;else{if(a[5047]|0){co(188004,0,0);a[5047]=0}l=b3(i)|0;i=G1(l,58)|0;if(i){r[i>>0]=0;f=A+60+(e<<2)|0;i=1;n=f;while(1){A=a[n>>2]|0;if(!A)break;e=b3(a[A+4>>2]|0)|0;A=G1(e,58)|0;if(A|0)r[A>>0]=0;if(!((r[l>>0]|0)!=0?(p1(l,e)|0)!=0:0)){i=a[47002]|0;if(i>>>0>=(a[47003]|0)>>>0){so(188004,1)|0;i=a[47002]|0}a[47002]=i+1;r[i>>0]=32;uo(188004,a[(a[n>>2]|0)+4>>2]|0)|0;i=a[47002]|0;if(i>>>0>=(a[47003]|0)>>>0){so(188004,1)|0;i=a[47002]|0}a[47002]=i+1;r[i>>0]=58;uo(188004,a[(a[(a[n>>2]|0)+12>>2]|0)+8>>2]|0)|0;i=0}L2(e);n=a[n>>2]|0}L2(l);if(i<<24>>24){n=0;t=19}}else{L2(l);n=0;f=A+60+(e<<2)|0;i=1;t=19}if((t|0)==19){while(1){A=a[f>>2]|0;if(!A)break;e=b3(a[A+4>>2]|0)|0;A=G1(e,58)|0;if(A|0)r[A>>0]=0;if(!((n|0)!=0?(p1(n,e)|0)==0:0)){i=a[47002]|0;if(i>>>0>=(a[47003]|0)>>>0){so(188004,1)|0;i=a[47002]|0}a[47002]=i+1;r[i>>0]=32;uo(188004,e)|0;i=0}n=e;f=a[f>>2]|0;t=19}if(i<<24>>24){i=195059;break}}i=a[47002]|0;if(i>>>0>=(a[47003]|0)>>>0){so(188004,1)|0;i=a[47002]|0}r[i>>0]=0;i=a[47001]|0;a[47002]=i}}while(0);return i|0}function Nv(A){A=A|0;var e=0;if(!A)gA(111208,98444,573,98458);if(!(r[A>>0]|0))gA(111213,98444,574,98458);e=a[47005]|0;if(!e)A=0;else A=y5[a[e>>2]&63](e,A,512)|0;return A|0}function Rv(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+16|0;c=s+8|0;t=s;if(!A)gA(111312,98444,589,98475);n=A+8|0;i=a[n>>2]|0;if(!i)gA(111315,98444,590,98475);if(!(r[i>>0]|0))gA(111324,98444,591,98475);l=A+20|0;f=a[l>>2]|0;do{if(!f){e=yR(i)|0;if(!e){a[t>>2]=a[n>>2];ao(0,98499,t)|0;e=0;break}t=F3(e,138821)|0;a[l>>2]=t;if(!t){a[c>>2]=e1(a[(N2()|0)>>2]|0)|0;a[c+4>>2]=e;ao(0,98524,c)|0;e=0;break}e=a[47006]|0;if((e|0)>49){r[A+17>>0]=1;e=1;break}else{a[47006]=e+1;e=1;break}}else{O3(f,0,0)|0;if(!(a[l>>2]|0))gA(98545,98444,614,98475);else e=1}}while(0);k=s;return e|0}function Xv(A){A=A|0;var e=0,i=0;if(r[A+17>>0]|0?(e=A+20|0,i=a[e>>2]|0,i|0):0){h3(i)|0;a[e>>2]=0}return}function Hv(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0.0,n=0.0;if(!e){r=-1;i=-1}else{r=a[e+48>>2]|0;f=+(r|0);if(!r){n=+s[i>>3];f=+s[i+8>>3]}else{s[i+8>>3]=f;s[i>>3]=f;n=f}r=~~(+((a[e+40>>2]|0)*72|0)/n);i=~~(+((a[e+44>>2]|0)*72|0)/f)}a[A>>2]=r;a[A+4>>2]=i;return}function Uv(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0.0;b=k;k=k+48|0;f=b+16|0;t=b;c=b+32|0;if((i|0)!=0?(r[i>>0]|0)!=0:0){if((true?(n=a[47133]|0,(a[47007]|0)!=(n|0)):undefined)?(a[47007]=n,l=a[47005]|0,l|0):0){Hk(l)|0;a[47005]=0}u=+s[(a[(a[e+16>>2]|0)+8>>2]|0)+24>>3];u=!(u>=1.0)?96.0:u;s[t+8>>3]=u;s[t>>3]=u;e=xv(i)|0;a[f>>2]=a[t>>2];a[f+4>>2]=a[t+4>>2];a[f+8>>2]=a[t+8>>2];a[f+12>>2]=a[t+12>>2];Hv(c,e,f);e=a[c>>2]|0;f=a[c+4>>2]|0}else{e=-1;f=-1}a[A>>2]=e;a[A+4>>2]=f;k=b;return}function xv(A){A=A|0;var e=0,i=0,r=0,f=0;f=k;k=k+16|0;r=f;if(!A)gA(111208,98444,638,98551);if(!(a[47005]|0))a[47005]=jk(20192,a[4589]|0)|0;e=Nv(A)|0;A:do{if(!e){e=qF(64)|0;if(!e)e=0;else{i=e+8|0;a[i>>2]=aB(0,A)|0;if(!((Rv(e)|0)<<24>>24)){Tv(e);e=0;break}if(!(a[e+20>>2]|0))gA(98545,98444,653,98551);do{switch(jv(e)|0){case 0:{A=Gp(a[i>>2]|0)|0;a[e+52>>2]=A;if(!A){a[r>>2]=a[i>>2];ao(0,98568,r)|0;Tv(e);e=0;break A}break}case 2:{Pv(e);break}case 3:{Sv(e);break}case 1:{Ov(e);break}case 4:{Kv(e);break}case 6:{_v(e);break}case 11:{qv(e);break}case 8:{$v(e);break}case 5:{AE(e);break}case 12:{eE(e);break}default:{}}}while(0);Xv(e);r=a[47005]|0;y5[a[r>>2]&63](r,e,1)|0}}else Xv(e)}while(0);k=f;return e|0}function Tv(A){A=A|0;var e=0;e=a[A+8>>2]|0;if(e|0)lB(0,e)|0;L2(A);return}function jv(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0;c=k;k=k+224|0;f=c+200|0;n=c;l=A+20|0;e=a[l>>2]|0;A:do{if((e|0)!=0?(a6(f,1,20,e)|0)==20:0){i=0;while(1){if(i>>>0>=10){t=13;break A}if(!(F4(f,a[20228+(i<<4)>>2]|0,a[20228+(i<<4)+4>>2]|0)|0))break;i=i+1|0}r=A+28|0;a[r>>2]=a[20228+(i<<4)+12>>2];e=a[20228+(i<<4)+8>>2]|0;A=A+24|0;a[A>>2]=e;switch(i|0){case 7:break;case 8:{if(F4(f+8|0,98784,4)|0)break A;a[r>>2]=98789;a[A>>2]=11;e=11;break A}default:break A}while(1){if(!(p4(n,200,a[l>>2]|0)|0)){t=11;break}if(!(F4(n,98779,4)|0)){t=8;break}}if((t|0)==8){a[r>>2]=101803;a[A>>2]=8;e=8;break}else if((t|0)==11){e=a[A>>2]|0;break}}else t=13}while(0);if((t|0)==13){a[A+28>>2]=98794;a[A+24>>2]=0;e=0}k=c;return e|0}function Pv(A){A=A|0;var e=0,i=0,r=0,f=0;f=k;k=k+16|0;e=f+4|0;i=f;a[A+48>>2]=0;r=A+20|0;O3(a[r>>2]|0,6,0)|0;if((sE(a[r>>2]|0,2,e)|0)<<24>>24?(sE(a[r>>2]|0,2,i)|0)<<24>>24:0){a[A+40>>2]=a[e>>2];a[A+44>>2]=a[i>>2]}k=f;return}function Sv(A){A=A|0;var e=0,i=0,r=0,f=0;f=k;k=k+16|0;e=f+4|0;i=f;a[A+48>>2]=0;r=A+20|0;O3(a[r>>2]|0,16,0)|0;if((iE(a[r>>2]|0,4,e)|0)<<24>>24?(iE(a[r>>2]|0,4,i)|0)<<24>>24:0){a[A+40>>2]=a[e>>2];a[A+44>>2]=a[i>>2]}k=f;return}function Ov(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0;l=k;k=k+16|0;e=l+12|0;i=l+8|0;r=l+4|0;f=l;a[A+48>>2]=0;n=A+20|0;O3(a[n>>2]|0,16,0)|0;if((((sE(a[n>>2]|0,2,e)|0)<<24>>24?(sE(a[n>>2]|0,2,i)|0)<<24>>24:0)?(sE(a[n>>2]|0,2,r)|0)<<24>>24:0)?(sE(a[n>>2]|0,2,f)|0)<<24>>24:0){a[A+40>>2]=a[e>>2]<<16|a[i>>2];a[A+44>>2]=a[r>>2]<<16|a[f>>2]}k=l;return}function Kv(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;b=k;k=k+32|0;e=b+16|0;r=b+12|0;f=b+8|0;l=b+4|0;t=b;a[A+48>>2]=0;c=A+20|0;while(1){if(!((iE(a[c>>2]|0,1,e)|0)<<24>>24))break;i=a[e>>2]|0;if((i|0)==255)continue;if(G1(98767,i)|0)continue;if((i|0)==192){s=6;break}n=a[c>>2]|0;if((i|0)==194){s=11;break}if(!((iE(n,2,r)|0)<<24>>24))break;O3(a[c>>2]|0,(a[r>>2]|0)+-2|0,1)|0}if((s|0)==6){if(((iE(a[c>>2]|0,3,t)|0)<<24>>24?(iE(a[c>>2]|0,2,f)|0)<<24>>24:0)?(iE(a[c>>2]|0,2,l)|0)<<24>>24:0){a[A+44>>2]=a[f>>2];a[A+40>>2]=a[l>>2]}}else if((((s|0)==11?(iE(n,3,t)|0)<<24>>24:0)?(iE(a[c>>2]|0,2,f)|0)<<24>>24:0)?(iE(a[c>>2]|0,2,l)|0)<<24>>24:0){a[A+44>>2]=a[f>>2];a[A+40>>2]=a[l>>2]}k=b;return}function _v(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;b=k;k=k+1056|0;c=b;e=b+32|0;r=b+28|0;f=b+24|0;n=b+20|0;l=b+16|0;a[A+48>>2]=72;t=A+20|0;O3(a[t>>2]|0,0,0)|0;while(1){if(!(p4(e,1024,a[t>>2]|0)|0))break;i=N4(e,98752)|0;if(!i)continue;a[c>>2]=r;a[c+4>>2]=f;a[c+8>>2]=n;a[c+12>>2]=l;if((J3(i,104311,c)|0)==4){s=5;break}}if((s|0)==5){c=a[r>>2]|0;a[A+32>>2]=c;s=a[f>>2]|0;a[A+36>>2]=s;a[A+40>>2]=(a[n>>2]|0)-c;a[A+44>>2]=(a[l>>2]|0)-s}k=b;return}function qv(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0;n=k;k=k+16|0;e=n+4|0;i=n;a[A+48>>2]=0;r=A+20|0;O3(a[r>>2]|0,15,0)|0;l=(b6(a[r>>2]|0)|0)==88;f=a[r>>2]|0;if(l){O3(f,24,0)|0;if((sE(a[r>>2]|0,4,e)|0)<<24>>24?(sE(a[r>>2]|0,4,i)|0)<<24>>24:0){a[A+40>>2]=a[e>>2];a[A+44>>2]=a[i>>2]}}else{O3(f,26,0)|0;if((sE(a[r>>2]|0,2,e)|0)<<24>>24?(sE(a[r>>2]|0,2,i)|0)<<24>>24:0){a[A+40>>2]=a[e>>2];a[A+44>>2]=a[i>>2]}}k=n;return}function $v(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0;z=k;k=k+352|0;L=z+80|0;Q=z+72|0;W=z+64|0;y=z+56|0;m=z+48|0;e=z+40|0;B=z+32|0;g=z+24|0;v=z+16|0;E=z+8|0;C=z;I=z+328|0;Z=z+128|0;G=z+96|0;if(!(a[47008]|0)){if(w8(188036,98637,1)|0){a[e>>2]=98637;ao(1,98664,e)|0}a[47008]=188036}b=A+20|0;O3(a[b>>2]|0,0,0)|0;u=G+12|0;w=G+20|0;o=G+8|0;h=G+16|0;d=G+4|0;e=0;n=0;f=0;i=0;A:while(1){if(!(p4(Z,200,a[b>>2]|0)|0))break;if(n<<24>>24==0|e<<24>>24==0){l=Z;c=i}else break;e:while(1){t=f;i:while(1){while(1){if($8(188036,l,4,G,0)|0){f=t;i=c;continue A}r[l+(a[u>>2]|0)>>0]=0;r[l+(a[w>>2]|0)>>0]=0;i=l+(a[o>>2]|0)|0;f=l+(a[h>>2]|0)|0;l=l+((a[d>>2]|0)+1)|0;if(!(A1(i,141116)|0))break;if(!(A1(i,141048)|0))break i;if(A1(i,98711)|0)continue;a[L>>2]=g;a[L+4>>2]=v;a[L+8>>2]=E;a[L+12>>2]=C;if((J3(f,98719,L)|0)==4)break e}a[m>>2]=B;a[m+4>>2]=I;if((J3(f,98701,m)|0)!=2){a[y>>2]=B;if((J3(f,101209,y)|0)==1){i=1;f=cE(+s[B>>3],98708)|0}else{i=n;f=t}}else{i=1;f=cE(+s[B>>3],I)|0}if(!(e<<24>>24)){e=0;n=i;t=f}else{n=i;i=c;continue A}}a[W>>2]=B;a[W+4>>2]=I;if((J3(f,98701,W)|0)!=2){a[Q>>2]=B;if((J3(f,101209,Q)|0)==1){e=1;i=cE(+s[B>>3],98708)|0}else i=c}else{e=1;i=cE(+s[B>>3],I)|0}if(!(n<<24>>24)){n=0;f=t;c=i}else{f=t;continue A}}e=1;n=1;f=~~(+s[E>>3]+1.0-+s[g>>3])>>>0;i=~~(+s[C>>3]+1.0-+s[v>>3])>>>0}a[A+48>>2]=0;a[A+40>>2]=f;a[A+44>>2]=i;k=z;return}function AE(A){A=A|0;var e=0,i=0,r=0,f=0.0,n=0.0;i=k;k=k+32|0;e=i;a[A+48>>2]=0;r=A+20|0;O3(a[r>>2]|0,0,0)|0;if(!(rE(a[r>>2]|0,e)|0)){n=+s[e>>3];a[A+32>>2]=~~n;f=+s[e+8>>3];a[A+36>>2]=~~f;a[A+40>>2]=~~(+s[e+16>>3]-n);a[A+44>>2]=~~(+s[e+24>>3]-f)}k=i;return}function eE(A){A=A|0;var e=0,i=0,r=0,f=0;f=k;k=k+16|0;e=f+4|0;i=f;a[A+48>>2]=0;r=A+20|0;O3(a[r>>2]|0,6,0)|0;if((iE(a[r>>2]|0,1,e)|0)<<24>>24?(iE(a[r>>2]|0,1,i)|0)<<24>>24:0){a[A+40>>2]=a[e>>2];a[A+44>>2]=a[i>>2]}k=f;return}function iE(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;a[i>>2]=0;r=0;while(1){if(r>>>0>=e>>>0){r=1;break}f=b6(A)|0;if(o3(A)|0){r=0;break}a[i>>2]=a[i>>2]<<8|f;r=r+1|0}return r|0}function rE(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;l=k;k=k+1040|0;i=l;r=l+16|0;while(1){if(!(p4(r,1024,A)|0)){A=1;break}f=N4(r,98627)|0;if(f|0){n=4;break}}if((n|0)==4){a[i+4>>2]=r;a[i>>2]=f+9;a[i+8>>2]=A;A=fE(i,e)|0}k=l;return A|0}function fE(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;n=k;k=k+1024|0;f=n;aE(A);i=r[a[A>>2]>>0]|0;if(!(i<<24>>24))i=(nE(A)|0)&255;else i=i<<24>>24;if((((i|0)==91?(a[A>>2]=(a[A>>2]|0)+1,lE(A,f),(tE(f,e)|0)==0):0)?(lE(A,f),(tE(f,e+8|0)|0)==0):0)?(lE(A,f),(tE(f,e+16|0)|0)==0):0){lE(A,f);i=(tE(f,e+24|0)|0)!=0&1}else i=1;k=n;return i|0}function aE(A){A=A|0;var e=0;e=a[A>>2]|0;while(1){e=r[e>>0]|0;if(!(e<<24>>24))e=(nE(A)|0)&255;else e=e<<24>>24;if(!((e&255)<<24>>24))break;if(!(m1(e&255)|0))break;e=(a[A>>2]|0)+1|0;a[A>>2]=e}return}function nE(A){A=A|0;var e=0;e=A+4|0;if(!(p4(a[e>>2]|0,1024,a[A+8>>2]|0)|0))A=0;else{e=a[e>>2]|0;a[A>>2]=e;A=r[e>>0]|0}return A|0}function lE(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;aE(A);i=0;f=a[A>>2]|0;while(1){f=r[f>>0]|0;if(!(f<<24>>24))n=(nE(A)|0)&255;else n=f<<24>>24;f=n<<24>>24;if(!f)break;if(!((f|0)==46|(f+-48|0)>>>0<10))break;r[e+i>>0]=n;i=i+1|0;f=(a[A>>2]|0)+1|0;a[A>>2]=f;if((i|0)==1023){i=1023;break}}r[e+i>>0]=0;return}function tE(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0;r=k;k=k+16|0;f=r;i=+A8(A,f);if((a[f>>2]|0)==(A|0))A=1;else{s[e>>3]=i;A=0}k=r;return A|0}function cE(A,e){A=+A;e=e|0;var i=0.0;do{if(!(A1(e,98735)|0)){A=A*72.0;i=A;A=A>=0.0?.5:-.5}else{if(!(A1(e,98738)|0)){A=A*.75;i=A;A=A>=0.0?.5:-.5;break}if(!(A1(e,98741)|0)){A=A*12.0;i=A;A=A>=0.0?.5:-.5;break}if(A1(e,98708)|0?A1(e,98744)|0:0)if(!(A1(e,98746)|0)){A=A*28.346456664;i=A;A=A>=0.0?.5:-.5;break}else{e=(A1(e,98749)|0)==0;i=A*2.8346456663999997;return(e?~~(i+(i>=0.0?.5:-.5)):0)|0}i=A>=0.0?.5:-.5}}while(0);return~~(A+i)|0}function sE(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;a[i>>2]=0;r=0;while(1){if(r>>>0>=e>>>0){r=1;break}f=b6(A)|0;if(o3(A)|0){r=0;break}a[i>>2]=a[i>>2]|f<<(r<<3);r=r+1|0}return r|0}function bE(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;A=a[e+20>>2]|0;if(A|0)h3(A)|0;if(a[e+52>>2]|0?(r=a[e+60>>2]|0,r|0):0)F5[r&127](e);L2(e);return}function uE(){var A=0;Yo(0,1,108224,105493)|0;A=Gv(0,1)|0;jr(A,0);return A|0}function wE(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,b=0.0,u=0.0,w=0.0,o=0.0;c=k;k=k+304|0;t=c+24|0;l=c+8|0;f=c;n=c+40|0;if((wr(A,i)|0)!=999)if((kr(A,e)|0)==-1)A=-1;else{A=a[e+16>>2]|0;i=A+16|0;if(!(r[(a[A+8>>2]|0)+81>>0]|0)){o=+s[i>>3];w=+s[A+24>>3];u=+s[A+32>>3];b=+s[A+40>>3];a[t>>2]=~~(o+(o>=0.0?.5:-.5));a[t+4>>2]=~~(w+(w>=0.0?.5:-.5));a[t+8>>2]=~~(u+(u>=0.0?.5:-.5));a[t+12>>2]=~~(b+(b>=0.0?.5:-.5));S4(n,98899,t)|0}else{b=+s[A+24>>3];u=+s[i>>3];w=+s[A+40>>3];o=+s[A+32>>3];a[l>>2]=~~(b+(b>=0.0?.5:-.5));a[l+4>>2]=~~(u+(u>=0.0?.5:-.5));a[l+8>>2]=~~(w+(w>=0.0?.5:-.5));a[l+12>>2]=~~(o+(o>=0.0?.5:-.5));S4(n,98899,l)|0}To(e,102671,n,195059)|0;A=0}else{A=pv(A,1,i)|0;a[f>>2]=i;a[f+4>>2]=A;ao(1,111233,f)|0;A=-1}k=c;return A|0}function kE(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0;t=k;k=k+16|0;n=t;f=a[e+60>>2]|0;yv(A,i)|0;e=a[A+164>>2]|0;a[e+56>>2]=Qi(e,a[e+52>>2]|0)|0;if((Td(f,137483,0,1)|0)!=0?(a[(a[f+16>>2]|0)+8>>2]|0)!=0:0)l=5;else if(!(a[e+152>>2]&67108864)){to(98911,n);e=-1}else l=5;if((l|0)==5){a[e+36>>2]=r;if(!r){l=e+152|0;a[l>>2]=a[l>>2]|134217728}l=lF(A,f)|0;yi(e);Mv(A);e=l}k=t;return e|0}function oE(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0;t=k;k=k+16|0;n=t;f=a[e+60>>2]|0;yv(A,i)|0;e=a[A+164>>2]|0;a[e+56>>2]=Qi(e,a[e+52>>2]|0)|0;if((Td(f,137483,0,1)|0)!=0?(a[(a[f+16>>2]|0)+8>>2]|0)!=0:0)l=5;else if(!(a[e+152>>2]&67108864)){to(98911,n);e=-1}else l=5;if((l|0)==5){Lv(A,r);l=lF(A,f)|0;yi(e);Bv(e);Mv(A);e=l}k=t;return e|0}function hE(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0;b=k;k=k+16|0;l=b+8|0;n=b;e=a[e+60>>2]|0;yv(A,i)|0;c=a[A+164>>2]|0;a[c+56>>2]=Qi(c,a[c+52>>2]|0)|0;if((Td(e,137483,0,1)|0)!=0?(a[(a[e+16>>2]|0)+8>>2]|0)!=0:0)s=5;else if(!(a[c+152>>2]&67108864)){to(98911,n);e=-1}else s=5;do{if((s|0)==5){if(r|0?(t=Q2(4096)|0,a[r>>2]=t,t|0):0){n=c+40|0;a[n>>2]=t;a[c+44>>2]=4096;i=c+48|0;a[i>>2]=0;e=lF(A,e)|0;yi(c);if(!e){a[r>>2]=a[n>>2];a[f>>2]=a[i>>2]}Mv(A);break}ao(1,98932,l)|0;e=-1}}while(0);k=b;return e|0}function dE(A,e){A=A|0;e=e|0;xr(A,0,e);return}function BE(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,y=0,W=0,z=0,Y=0,D=0;D=k;k=k+4288|0;W=D+8|0;y=D;z=4;Y=Q2(40)|0;a[Y>>2]=0;G=D+4152|0;m=D+4148|0;Q=D+4128|0;c=D+4112|0;s=D+16|0;d=0;t=iA(24,A|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;A:do{if((l|0)!=1){if(!t){a[e>>2]=0;n=0;break}d=0;u=aA(29,i|0,m|0,G|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)!=1){d=0;b=iA(23,40)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)!=1){d=0;hA(7,Q|0,c|0,s|0,24,85);n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)!=1){d=0;i=iA(25,A|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)!=1){c=Q+16|0;t=a[c>>2]|0;n=i;while(1){if(!n)break;d=0;rA(t|0,n|0,0)|0;l=d;d=0;if((l|0)!=0&(B|0)!=0){i=y6(a[l>>2]|0,Y|0,z|0)|0;if(!i)fe(l|0,B|0);L=B}else i=-1;if((i|0)==1){Z=0;I=c;C=b;E=u;n=L;b=15;break A}d=0;n=rA(86,A|0,n|0)|0;l=d;d=0;if((l|0)!=0&(B|0)!=0){i=y6(a[l>>2]|0,Y|0,z|0)|0;if(!i)fe(l|0,B|0);L=B}else i=-1;if((i|0)==1){Z=0;I=c;C=b;E=u;n=L;b=15;break A}}Y=L6(188068,1,Y|0,z|0)|0;z=L;d=0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){Z=b;I=c;C=b;E=u;n=L;b=15}else{Z=b;I=c;C=b;E=u;n=0;b=15}}else{Z=0;I=0;C=b;E=u;n=L;b=15}}else{Z=0;I=0;C=b;E=u;n=L;b=15}}else{Z=0;I=0;C=b;E=u;n=L;b=15}}else{Z=0;I=0;C=0;E=u;n=L;b=15}}else{Z=0;I=0;C=0;E=0;n=L;b=15}}while(0);do{if((b|0)==15){A:while(1){e:do{if(!n){d=0;i=iA(25,A|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}v=E+(a[m>>2]|0)|0;s=0;b=0;c=0;while(1){if(!i)break;d=0;n=rA(a[I>>2]|0,i|0,-1)|0;l=d;d=0;if((l|0)!=0&(B|0)!=0){t=y6(a[l>>2]|0,Y|0,z|0)|0;if(!t)fe(l|0,B|0);L=B}else t=-1;if((t|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}if((n|0)==0?(r[(a[i+16>>2]|0)+119>>0]|0)==3:0){if(!b){d=0;a[y>>2]=c;aA(30,v|0,137395,y|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}d=0;t=aA(31,A|0,E|0,1)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}d=0;nA(53,t|0,137483,280,1)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}a[Z+(c<<2)>>2]=t;s=1;c=c+1|0}else t=b;d=0;nA(54,A|0,i|0,t|0,Q|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}}else t=b;d=0;i=rA(86,A|0,i|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}b=t}d=0;i=iA(25,A|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}t=10;u=Z;w=C;o=C;g=C;while(1){if(!i){b=0;t=o;i=g;break e}d=0;n=rA(a[I>>2]|0,i|0,-1)|0;l=d;d=0;if((l|0)!=0&(B|0)!=0){b=y6(a[l>>2]|0,Y|0,z|0)|0;if(!b)fe(l|0,B|0);L=B}else b=-1;if((b|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}if(!n){d=0;a[W>>2]=c;aA(30,v|0,137395,W|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}d=0;h=aA(31,A|0,E|0,1)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}d=0;nA(53,h|0,137483,280,1)|0;l=d;d=0;if((l|0)!=0&(B|0)!=0){n=y6(a[l>>2]|0,Y|0,z|0)|0;if(!n)fe(l|0,B|0);L=B}else n=-1;if((n|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}d=0;nA(54,A|0,i|0,h|0,Q|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}if((c|0)==(t|0)){t=c<<1;d=0;b=rA(87,w|0,c<<3|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}n=b;w=b;o=b;l=b}else{n=u;l=g}a[n+(c<<2)>>2]=h;u=n;c=c+1|0;b=l}else b=g;d=0;i=rA(86,A|0,i|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}g=b}}else{b=1;s=0;u=Z;c=0;t=C;i=C}}while(0);d=0;bA(108,Q|0);n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue}if((E|0)!=(G|0)){d=0;bA(105,E|0);n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue}}if(!b){d=0;n=rA(87,i|0,c<<2|0)|0;l=d;d=0;if((l|0)!=0&(B|0)!=0){i=y6(a[l>>2]|0,Y|0,z|0)|0;if(!i)fe(l|0,B|0);L=B}else i=-1;if((i|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue}else{b=58;break}}a[e>>2]=0;n=0;while(1){if((n|0)>=(c|0))break;d=0;iA(26,a[u+(n<<2)>>2]|0)|0;l=d;d=0;if((l|0)!=0&(B|0)!=0){i=y6(a[l>>2]|0,Y|0,z|0)|0;if(!i)fe(l|0,B|0);L=B}else i=-1;if((i|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15;continue A}n=n+1|0}d=0;bA(105,t|0);n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,Y|0,z|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){h=E;g=C;v=I;b=Z;n=L;E=h;C=g;I=v;Z=b;b=15}else{b=56;break}}if((b|0)==56){n=0;break}else if((b|0)==58){a[e>>2]=c;r[f>>0]=s;break}}}while(0);L2(Y|0);k=D;return n|0}function gE(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;if(!((A|0)!=0?(LE(A)|0)!=0:0))A=98988;r=P2(A)|0;if((r|0)>=104){i=$F(r+25|0)|0;if(!i)i=0;else f=6}else f=6;if((f|0)==6){$1(i,A)|0;a[e>>2]=r}return i|0}function vE(A,e){A=A|0;e=e|0;kd(e,A,1)|0;return}function EE(A,e){A=A|0;e=e|0;var i=0;A=(a[A+16>>2]|0)+157|0;i=r[A>>0]|0;if((e|0)>=0)r[A>>0]=e;return i|0}function CE(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;a[e>>2]=i;a[e+4>>2]=i+4096;a[e+12>>2]=0;a[e+8>>2]=0;a[A>>2]=e;a[A+4>>2]=e;a[A+8>>2]=i;a[A+12>>2]=r;a[A+16>>2]=f;return}function IE(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,s=0;mE(r,e);t=r+12|0;c=r+16|0;e=0;A:while(1){s=QE(r)|0;if(!s)break;e=e+1|0;f=a[t>>2]|0;if(f|0)V5[f&63](s,i);l=Ah(A,s)|0;while(1){if(!l)continue A;n=a[l>>2]&3;f=a[((n|0)==3?l:l+48|0)+40>>2]|0;if((f|0)==(s|0))f=a[((n|0)==2?l:l+-48|0)+40>>2]|0;if(!(Q5[a[c>>2]&127](f,-1)|0))mE(r,f);l=eh(A,l,s)|0}}return e|0}function ZE(A){A=A|0;var e=0;A=a[(a[A>>2]|0)+12>>2]|0;while(1){if(!A)break;e=a[A+12>>2]|0;GE(A);A=e}return}function GE(A){A=A|0;L2(a[A>>2]|0);L2(A);return}function mE(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+16|0;c=s+8|0;f=s;n=A+8|0;t=A+4|0;i=a[t>>2]|0;if((a[n>>2]|0)==(a[i+4>>2]|0)){i=a[i+12>>2]|0;do{if(!i){r=$F(16)|0;if(!r){ao(1,98969,f)|0;fe(188068,1)}a[r+8>>2]=a[t>>2];a[r+12>>2]=0;i=$F(4e6)|0;a[r>>2]=i;if(!i){ao(1,98969,c)|0;fe(188068,1)}else{a[r+4>>2]=i+4e6;a[(a[t>>2]|0)+12>>2]=r;l=r;break}}else l=i}while(0);a[t>>2]=l;a[n>>2]=a[l>>2]}Q5[a[A+16>>2]&127](e,1)|0;c=a[n>>2]|0;a[n>>2]=c+4;a[c>>2]=e;k=s;return}function QE(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;f=A+8|0;e=a[f>>2]|0;i=A+4|0;r=a[i>>2]|0;if((e|0)==(a[r>>2]|0))if((r|0)==(a[A>>2]|0))e=0;else{e=a[r+8>>2]|0;a[i>>2]=e;e=a[e+4>>2]|0;a[f>>2]=e;n=4}else n=4;if((n|0)==4){e=e+-4|0;a[f>>2]=e;e=a[e>>2]|0}return e|0}function LE(A){A=A|0;var e=0;A:while(1){e=A;A=A+1|0;e=r[e>>0]|0;switch(e<<24>>24){case 95:continue A;case 0:{A=1;break A}default:{}}if(!(V1(e&255)|0)){A=0;break}}return A|0}function yE(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0;m=k;k=k+4272|0;I=m;Z=4;G=Q2(40)|0;a[G>>2]=0;v=m+4144|0;E=m+4140|0;C=m+4120|0;l=m+4104|0;t=m+8|0;d=0;f=iA(24,A|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){r=y6(a[n>>2]|0,G|0,Z|0)|0;if(!r)fe(n|0,B|0);L=B}else r=-1;A:do{if((r|0)!=1)if(f){d=0;s=aA(29,i|0,E|0,v|0)|0;r=d;d=0;if((r|0)!=0&(B|0)!=0){i=y6(a[r>>2]|0,G|0,Z|0)|0;if(!i)fe(r|0,B|0);L=B}else i=-1;if((i|0)!=1){d=0;c=iA(23,40)|0;r=d;d=0;if((r|0)!=0&(B|0)!=0){i=y6(a[r>>2]|0,G|0,Z|0)|0;if(!i)fe(r|0,B|0);L=B}else i=-1;if((i|0)!=1){d=0;hA(7,C|0,l|0,t|0,24,85);r=d;d=0;if((r|0)!=0&(B|0)!=0){i=y6(a[r>>2]|0,G|0,Z|0)|0;if(!i)fe(r|0,B|0);L=B}else i=-1;if((i|0)!=1){d=0;f=iA(25,A|0)|0;r=d;d=0;if((r|0)!=0&(B|0)!=0){i=y6(a[r>>2]|0,G|0,Z|0)|0;if(!i)fe(r|0,B|0);L=B}else i=-1;if((i|0)!=1){l=C+16|0;n=a[l>>2]|0;r=f;while(1){if(!r)break;d=0;rA(n|0,r|0,0)|0;i=d;d=0;if((i|0)!=0&(B|0)!=0){f=y6(a[i>>2]|0,G|0,Z|0)|0;if(!f)fe(i|0,B|0);L=B}else f=-1;if((f|0)==1){g=l;h=c;o=s;r=L;c=14;break A}d=0;r=rA(86,A|0,r|0)|0;i=d;d=0;if((i|0)!=0&(B|0)!=0){f=y6(a[i>>2]|0,G|0,Z|0)|0;if(!f)fe(i|0,B|0);L=B}else f=-1;if((f|0)==1){g=l;h=c;o=s;r=L;c=14;break A}}G=L6(188068,1,G|0,Z|0)|0;Z=L;d=0;r=d;d=0;if((r|0)!=0&(B|0)!=0){i=y6(a[r>>2]|0,G|0,Z|0)|0;if(!i)fe(r|0,B|0);L=B}else i=-1;if((i|0)==1){g=l;h=c;o=s;r=L;c=14}else{g=l;h=c;o=s;r=0;c=14}}else{g=0;h=c;o=s;r=L;c=14}}else{g=0;h=c;o=s;r=L;c=14}}else{g=0;h=c;o=s;r=L;c=14}}else{g=0;h=0;o=s;r=L;c=14}}else{i=0;r=0}else{g=0;h=0;o=0;r=L;c=14}}while(0);A:do{if((c|0)==14){e:while(1){if(r|0){d=0;bA(108,C|0);r=d;d=0;if((r|0)!=0&(B|0)!=0){i=y6(a[r>>2]|0,G|0,Z|0)|0;if(!i)fe(r|0,B|0);L=B}else i=-1;if((i|0)==1){u=o;w=h;c=g;r=L;o=u;h=w;g=c;c=14;continue}d=0;bA(105,h|0);r=d;d=0;if((r|0)!=0&(B|0)!=0){i=y6(a[r>>2]|0,G|0,Z|0)|0;if(!i)fe(r|0,B|0);L=B}else i=-1;if((i|0)==1){u=o;w=h;c=g;r=L;o=u;h=w;g=c;c=14;continue}if((o|0)==(v|0)){i=0;r=0;break A}d=0;bA(105,o|0);r=d;d=0;if((r|0)!=0&(B|0)!=0){i=y6(a[r>>2]|0,G|0,Z|0)|0;if(!i)fe(r|0,B|0);L=B}else i=-1;if((i|0)==1){u=o;w=h;c=g;r=L;o=u;h=w;g=c;c=14;continue}else{c=19;break}}d=0;f=iA(25,A|0)|0;r=d;d=0;if((r|0)!=0&(B|0)!=0){i=y6(a[r>>2]|0,G|0,Z|0)|0;if(!i)fe(r|0,B|0);L=B}else i=-1;if((i|0)==1){u=o;w=h;c=g;r=L;o=u;h=w;g=c;c=14;continue}w=o+(a[E>>2]|0)|0;l=10;s=h;r=0;c=h;u=h;while(1){if(!f)break;d=0;i=rA(a[g>>2]|0,f|0,-1)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){t=y6(a[n>>2]|0,G|0,Z|0)|0;if(!t)fe(n|0,B|0);L=B}else t=-1;if((t|0)==1){u=o;w=h;c=g;r=L;o=u;h=w;g=c;c=14;continue e}if(!i){d=0;a[I>>2]=r;aA(30,w|0,137395,I|0)|0;i=d;d=0;if((i|0)!=0&(B|0)!=0){n=y6(a[i>>2]|0,G|0,Z|0)|0;if(!n)fe(i|0,B|0);L=B}else n=-1;if((n|0)==1){u=o;w=h;c=g;r=L;o=u;h=w;g=c;c=14;continue e}d=0;b=aA(31,A|0,o|0,1)|0;i=d;d=0;if((i|0)!=0&(B|0)!=0){n=y6(a[i>>2]|0,G|0,Z|0)|0;if(!n)fe(i|0,B|0);L=B}else n=-1;if((n|0)==1){u=o;w=h;c=g;r=L;o=u;h=w;g=c;c=14;continue e}d=0;nA(53,b|0,137483,280,1)|0;i=d;d=0;if((i|0)!=0&(B|0)!=0){n=y6(a[i>>2]|0,G|0,Z|0)|0;if(!n)fe(i|0,B|0);L=B}else n=-1;if((n|0)==1){u=o;w=h;c=g;r=L;o=u;h=w;g=c;c=14;continue e}d=0;nA(54,A|0,f|0,b|0,C|0)|0;i=d;d=0;if((i|0)!=0&(B|0)!=0){n=y6(a[i>>2]|0,G|0,Z|0)|0;if(!n)fe(i|0,B|0);L=B}else n=-1;if((n|0)==1){u=o;w=h;c=g;r=L;o=u;h=w;g=c;c=14;continue e}if((r|0)==(l|0)){l=r<<1;d=0;t=rA(87,c|0,r<<3|0)|0;i=d;d=0;if((i|0)!=0&(B|0)!=0){n=y6(a[i>>2]|0,G|0,Z|0)|0;if(!n)fe(i|0,B|0);L=B}else n=-1;if((n|0)==1){u=o;w=h;c=g;r=L;o=u;h=w;g=c;c=14;continue e}n=t;c=t;i=t}else{n=s;i=u}a[n+(r<<2)>>2]=b;r=r+1|0;s=n;t=i}else t=u;d=0;f=rA(86,A|0,f|0)|0;i=d;d=0;if((i|0)!=0&(B|0)!=0){n=y6(a[i>>2]|0,G|0,Z|0)|0;if(!n)fe(i|0,B|0);L=B}else n=-1;if((n|0)==1){u=o;w=h;c=g;r=L;o=u;h=w;g=c;c=14;continue e}u=t}d=0;bA(108,C|0);i=d;d=0;if((i|0)!=0&(B|0)!=0){f=y6(a[i>>2]|0,G|0,Z|0)|0;if(!f)fe(i|0,B|0);L=B}else f=-1;if((f|0)==1){u=o;w=h;c=g;r=L;o=u;h=w;g=c;c=14;continue}d=0;i=rA(87,u|0,r<<2|0)|0;f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,G|0,Z|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){u=o;w=h;c=g;r=L;o=u;h=w;g=c;c=14;continue}if((o|0)==(v|0))break A;d=0;bA(105,o|0);f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,G|0,Z|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){u=o;w=h;c=g;r=L;o=u;h=w;g=c;c=14}else{c=39;break}}if((c|0)==19){i=0;r=0;break}else if((c|0)==39)break}}while(0);a[e>>2]=r;L2(G|0);k=m;return i|0}function WE(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=0;f=cd(A)|0;while(1){if(!f)break;r=Oo(e,f)|0;while(1){if(!r)break;if(kd(A,a[((a[r>>2]&3|0)==2?r:r+-48|0)+40>>2]|0,0)|0){uh(A,r,1)|0;i=i+1|0}r=_o(e,r)|0}f=sd(A,f)|0}return i|0}function zE(A){A=A|0;A=Ud(A,98993,0)|0;if(!A)gA(98998,99001,529,99010);else return a[A+8>>2]|0;return 0}function YE(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0;v=k;k=k+4320|0;B=v+24|0;d=v+8|0;h=v;g=v+4184|0;o=v+4160|0;f=v+40|0;if(gh(A)|0){Kd(A,0,99019,-12,0);Kd(A,1,99031,16,0);w=gE(i,f,g)|0;s=DE(A)|0;b=$F((gh(s)|0)<<2)|0;CE(o,v+4144|0,v+48|0,24,88);l=cd(s)|0;u=o+16|0;t=w+(a[f>>2]|0)|0;c=a[15712]|0;i=0;while(1){if(!l)break;if(!(Q5[a[u>>2]&127](l,-1)|0)){a[h>>2]=i;S4(t,99933,h)|0;E=NB(s,w,1)|0;C=NB(A,w,1)|0;Td(C,99019,12,0)|0;r[(Ud(C,99019,0)|0)+8>>0]=1;f=IE(s,l,E,o)|0;FE(E,C);n=VE(C)|0;JE(A,C);a[b+(i<<2)>>2]=C;Cd(s,E)|0;if(0){}i=i+1|0}l=sd(s,l)|0}if(0){}Bh(s)|0;_d(A,0,99019);_d(A,1,99031);ZE(o);f=eV(b,i<<2)|0;if((w|0)!=(g|0))L2(w)}else{f=0;i=0}a[e>>2]=i;k=v;return f|0}function DE(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;l=t;r[l>>0]=r[18596]|0;r[l+1>>0]=r[18597]|0;r[l+2>>0]=r[18598]|0;r[l+3>>0]=r[18599]|0;l=kh(99120,l,0)|0;RE(l,A);e=cd(A)|0;while(1){if(!e)break;if(!(a[(Ud(e,99031,0)|0)+12>>2]|0)){n=gd(l,Vh(e)|0,1)|0;Td(n,99031,16,1)|0;a[(a[n+16>>2]|0)+12>>2]=e;a[(Ud(e,99031,0)|0)+12>>2]=n}e=sd(A,e)|0}i=cd(A)|0;while(1){if(!i)break;f=a[(Ud(i,99031,0)|0)+12>>2]|0;e=Oo(A,i)|0;while(1){if(!e)break;n=a[(Ud(a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,99031,0)|0)+12>>2]|0;do{if((n|0)!=(f|0))if(n>>>0>f>>>0){th(l,f,n,0,1)|0;break}else{th(l,n,f,0,1)|0;break}}while(0);e=_o(A,e)|0}i=sd(A,i)|0}k=t;return l|0}function ME(A,e){A=A|0;e=e|0;var i=0;A=(a[A+16>>2]|0)+8|0;i=r[A>>0]|0;if((e|0)>=0)r[A>>0]=e;return i|0}function FE(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;r=cd(A)|0;while(1){if(!r)break;f=a[(a[r+16>>2]|0)+12>>2]|0;A:do{if((a[f>>2]&3|0)==1)kd(e,f,1)|0;else{i=cd(f)|0;while(1){if(!i)break A;kd(e,i,1)|0;i=sd(f,i)|0}}}while(0);r=sd(A,r)|0}return}function VE(A){A=A|0;return WE(A,a[A+60>>2]|0)|0}function JE(A,e){A=A|0;e=e|0;pE(A,e,0);return}function pE(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,a=0,n=0;n=(i|0)==0;A=RB(A)|0;while(1){if(!A)break;if((r[(Ud(A,99019,0)|0)+8>>0]|0)==0?(a=NE(A,e,i)|0,a|0):0){if(n)f=(Z1(Vh(A)|0,108006,7)|0)==0;else f=1;pE(A,a,f&1)}A=XB(A)|0}return}function NE(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;r=0;n=cd(A)|0;while(1){if(!n)break;f=gd(e,Vh(n)|0,0)|0;if(f){if(!r)r=NB(e,Vh(A)|0,1)|0;kd(r,f,1)|0}n=sd(A,n)|0}if((i|0)!=0&(r|0)==0)r=NB(e,Vh(A)|0,1)|0;if(r|0?(WE(r,A)|0,jo(A,r)|0,(Z1(Vh(r)|0,108006,7)|0)==0):0)a[(Td(r,98993,12,0)|0)+8>>2]=A;return r|0}function RE(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0;l=k;k=k+16|0;n=l;i=RB(e)|0;r=a[15712]|0;while(1){if(!i)break;A:do{if(!(Z1(Vh(i)|0,108006,7)|0)){f=gd(A,Vh(i)|0,1)|0;Td(f,99031,16,1)|0;a[(a[f+16>>2]|0)+12>>2]=i;e=cd(i)|0;while(1){if(!e)break A;if(a[(Ud(e,99031,0)|0)+12>>2]|0){s=Vh(e)|0;c=Vh(i)|0;t=Vh(a[(Ud(e,99031,0)|0)+12>>2]|0)|0;a[n>>2]=s;a[n+4>>2]=c;a[n+8>>2]=t;f3(r,99123,n)|0}a[(Ud(e,99031,0)|0)+12>>2]=f;e=sd(i,e)|0}}else RE(A,i)}while(0);i=XB(i)|0}k=l;return}function XE(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,a=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0.0;w=+s[A>>3];t=~~(w+(w>=0.0?.5:-.5));w=+s[A+8>>3];A=~~(w+(w>=0.0?.5:-.5));w=+s[e>>3];n=~~(w+(w>=0.0?.5:-.5));w=+s[e+8>>3];a=~~(w+(w>=0.0?.5:-.5));b=n-t|0;l=((b|0)>-1?b:0-b|0)<<1;b=b>>31|1;u=a-A|0;c=((u|0)>-1?u:0-u|0)<<1;u=u>>31|1;A:do{if((l|0)>(c|0)){f=0-l|0;r=c-(l>>1)|0;e=t;while(1){aJ(i,e,A);if((e|0)==(n|0))break A;t=(r|0)>-1;r=r+c+(t?f:0)|0;e=e+b|0;A=(t?u:0)+A|0}}else{f=0-c|0;r=t;e=l-(c>>1)|0;while(1){aJ(i,r,A);if((A|0)==(a|0))break A;c=(e|0)>-1;r=(c?b:0)+r|0;e=e+l+(c?f:0)|0;A=A+u|0}}}while(0);return}function HE(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;u=k;k=k+16|0;s=u;c=u+4|0;do{if((A|0)<1)i=0;else{f=r+16|0;if((a[f>>2]|0)>>>0<4){i=UE(A,e,i,r)|0;break}b=$F(A<<5)|0;i=0;while(1){if((i|0)==(A|0))break;n=a[e+(i<<2)>>2]|0;xR(n);l=b+(i<<5)|0;n=(a[n+16>>2]|0)+16|0;a[l>>2]=a[n>>2];a[l+4>>2]=a[n+4>>2];a[l+8>>2]=a[n+8>>2];a[l+12>>2]=a[n+12>>2];a[l+16>>2]=a[n+16>>2];a[l+20>>2]=a[n+20>>2];a[l+24>>2]=a[n+24>>2];a[l+28>>2]=a[n+28>>2];i=i+1|0}if((a[f>>2]|0)==4){l=r+28|0;A:do{if(a[l>>2]&2|0){f=r+24|0;a[f>>2]=qF(A<<2)|0;i=0;while(1){if((i|0)==(A|0))break A;n=Ho(a[e+(i<<2)>>2]|0,99190)|0;if(n|0?(a[s>>2]=c,n=(J3(n,137395,s)|0)>0,t=a[c>>2]|0,n&(t|0)>-1):0)a[(a[f>>2]|0)+(i<<2)>>2]=t;i=i+1|0}}}while(0);i=xE(A,b,r)|0;if(a[l>>2]&2)L2(a[r+24>>2]|0)}else i=0;L2(b)}}while(0);k=u;return i|0}function UE(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0.0,M=0.0,F=0.0,V=0.0;Y=k;k=k+144|0;Q=Y+136|0;m=Y+64|0;z=Y+48|0;E=Y+40|0;v=Y;g=Y+120|0;I=Y+104|0;L=Y+96|0;y=a[f+20>>2]|0;a[I>>2]=0;a[I+4>>2]=0;a[I+8>>2]=0;a[I+12>>2]=0;A:do{if((A|0)>=1){w=(y|0)==0;W=a[15712]|0;o=g+4|0;h=g+8|0;d=g+12|0;Z=I+4|0;C=I+8|0;G=I+12|0;u=0;n=0;while(1){if((u|0)==(A|0))break;B=a[e+(u<<2)>>2]|0;xR(B);if(!w?(r[y+u>>0]|0)!=0:0){b=a[B+16>>2]|0;D=+s[b+16>>3];l=~~(D+(D>=0.0?.5:-.5));a[g>>2]=l;D=+s[b+24>>3];t=~~(D+(D>=0.0?.5:-.5));a[o>>2]=t;D=+s[b+32>>3];c=~~(D+(D>=0.0?.5:-.5));a[h>>2]=c;D=+s[b+40>>3];b=~~(D+(D>=0.0?.5:-.5));a[d>>2]=b;if(!n){a[I>>2]=a[g>>2];a[I+4>>2]=a[g+4>>2];a[I+8>>2]=a[g+8>>2];a[I+12>>2]=a[g+12>>2]}else{a[I>>2]=a[((a[I>>2]|0)>(l|0)?g:I)>>2];a[Z>>2]=a[((a[Z>>2]|0)>(t|0)?g:I)+4>>2];a[C>>2]=a[((a[C>>2]|0)<(c|0)?g:I)+8>>2];a[G>>2]=a[((a[G>>2]|0)<(b|0)?g:I)+12>>2]}n=n+1|0}if(0>2){b=Vh(B)|0;B=a[B+16>>2]|0;V=+s[B+16>>3];F=+s[B+24>>3];M=+s[B+32>>3];D=+s[B+40>>3];a[v>>2]=b;s[v+8>>3]=V;s[v+16>>3]=F;s[v+24>>3]=M;s[v+32>>3]=D;f3(W,99257,v)|0}u=u+1|0}h=$F(A<<5)|0;n=0;while(1){if((n|0)==(A|0))break;v=h+(n<<5)|0;g=(a[(a[e+(n<<2)>>2]|0)+16>>2]|0)+16|0;a[v>>2]=a[g>>2];a[v+4>>2]=a[g+4>>2];a[v+8>>2]=a[g+8>>2];a[v+12>>2]=a[g+12>>2];a[v+16>>2]=a[g+16>>2];a[v+20>>2]=a[g+20>>2];a[v+24>>2]=a[g+24>>2];a[v+28>>2]=a[g+28>>2];n=n+1|0}w=f+8|0;o=PE(A,h,a[w>>2]|0)|0;if(0){}if((o|0)>=1){u=(y|0)!=0;if(u){l=((a[C>>2]|0)+(a[I>>2]|0)|0)/2|0;n=((a[G>>2]|0)+(a[Z>>2]|0)|0)/2|0}else{l=0;n=0}a[L+4>>2]=n;a[L>>2]=l;b=qF(A<<4)|0;c=f+16|0;n=0;while(1){if((n|0)>=(A|0))break;l=a[e+(n<<2)>>2]|0;t=b+(n<<4)|0;a[b+(n<<4)+12>>2]=n;if((a[c>>2]|0)==3){I=(a[l+16>>2]|0)+16|0;Z=a[w>>2]|0;G=Vh(l)|0;a[m>>2]=a[I>>2];a[m+4>>2]=a[I+4>>2];a[m+8>>2]=a[I+8>>2];a[m+12>>2]=a[I+12>>2];a[m+16>>2]=a[I+16>>2];a[m+20>>2]=a[I+20>>2];a[m+24>>2]=a[I+24>>2];a[m+28>>2]=a[I+28>>2];a[Q>>2]=a[L>>2];a[Q+4>>2]=a[L+4>>2];SE(m,t,o,Z,Q,G)}else{a[Q>>2]=a[L>>2];a[Q+4>>2]=a[L+4>>2];OE(i,l,t,o,f,Q)}n=n+1|0}t=qF(A<<2)|0;n=0;while(1){if((n|0)>=(A|0))break;a[t+(n<<2)>>2]=b+(n<<4);n=n+1|0}K4(t,A,4,89);c=$V()|0;n=qF(A<<3)|0;e:do{if(u){l=0;while(1){if((l|0)>=(A|0)){l=0;break}if(r[y+l>>0]|0){i=a[t+(l<<2)>>2]|0;f=n+(a[i+12>>2]<<3)|0;a[Q>>2]=a[L>>2];a[Q+4>>2]=a[L+4>>2];_E(i,c,f,Q)}l=l+1|0}while(1){if((l|0)>=(A|0))break e;if(!(r[y+l>>0]|0)){L=a[t+(l<<2)>>2]|0;qE(l,L,c,n+(a[L+12>>2]<<3)|0,o,a[w>>2]|0,h)}l=l+1|0}}else{l=0;while(1){if((l|0)>=(A|0))break e;y=a[t+(l<<2)>>2]|0;qE(l,y,c,n+(a[y+12>>2]<<3)|0,o,a[w>>2]|0,h);l=l+1|0}}}while(0);L2(t);l=0;while(1){if((l|0)>=(A|0))break;L2(a[b+(l<<4)+4>>2]|0);l=l+1|0}L2(b);iJ(c);L2(h);if(0>1){l=0;while(1){if((l|0)>=(A|0))break A;L=a[n+(l<<3)>>2]|0;y=a[n+(l<<3)+4>>2]|0;a[z>>2]=l;a[z+4>>2]=L;a[z+8>>2]=y;f3(W,99301,z)|0;l=l+1|0}}}else n=0}else n=0}while(0);k=Y;return n|0}function xE(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0.0,t=0,c=0,b=0.0,u=0.0,w=0.0,o=0.0,h=0.0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0;G=k;k=k+16|0;n=G;I=qF(A<<3)|0;f=a[i+4>>2]|0;Z=i+28|0;r=(f|0)>0;do{if(!(a[Z>>2]&1))if(r){c=1;C=(A+-1+f|0)/(f|0)|0;break}else{f=~~+H(+ +z(+ +(A|0)));c=1;C=(A+-1+f|0)/(f|0)|0;break}else if(r){c=0;C=f;f=(A+-1+f|0)/(f|0)|0;break}else{f=~~+H(+ +z(+ +(A|0)));c=0;C=f;f=(A+-1+f|0)/(f|0)|0;break}}while(0);if(0){}g=qF((f<<3)+8|0)|0;v=qF((C<<3)+8|0)|0;E=qF(A*24|0)|0;t=i+8|0;r=0;n=E;while(1){if((r|0)>=(A|0))break;o=+s[e+(r<<5)+8>>3];w=+s[e+(r<<5)+24>>3];h=+((a[t>>2]|0)>>>0);s[n>>3]=+s[e+(r<<5)+16>>3]-+s[e+(r<<5)>>3]+h;s[n+8>>3]=w-o+h;a[n+16>>2]=r;r=r+1|0;n=n+24|0}B=qF(A<<2)|0;r=0;while(1){if((r|0)>=(A|0))break;a[B+(r<<2)>>2]=E+(r*24|0);r=r+1|0}r=a[i+24>>2]|0;if(!r){if(!(a[Z>>2]&64))K4(B,A,4,91)}else{a[47056]=r;K4(B,A,4,90)}d=(c|0)==0;r=0;n=0;t=0;while(1){if((t|0)>=(A|0)){l=0.0;r=0;break}c=a[B+(t<<2)>>2]|0;i=g+(n<<3)|0;h=+s[i>>3];o=+s[c>>3];s[i>>3]=h>o?h:o;i=v+(r<<3)|0;o=+s[i>>3];h=+s[c+8>>3];s[i>>3]=o>h?o:h;if(d){r=r+1|0;i=(r|0)==(C|0);r=i?0:r;n=n+(i&1)|0}else{n=n+1|0;i=(n|0)==(f|0);r=r+(i&1)|0;n=i?0:n}t=t+1|0}while(1){if((r|0)>(f|0)){l=0.0;r=C;break}i=g+(r<<3)|0;h=+s[i>>3];s[i>>3]=l;l=h+l;r=r+1|0}while(1){if((r|0)<=0)break;i=r+-1|0;h=+s[v+(i<<3)>>3];s[v+(r<<3)>>3]=l;l=h+l;r=i}s[v>>3]=l;r=0;n=0;i=0;while(1){if((i|0)>=(A|0))break;c=a[(a[B+(i<<2)>>2]|0)+16>>2]|0;l=+s[e+(c<<5)>>3];b=-l;o=+s[e+(c<<5)+8>>3];h=-o;u=+s[e+(c<<5)+16>>3];w=+s[e+(c<<5)+24>>3];t=a[Z>>2]|0;do{if(!(t&4))if(!(t&8)){l=(b-u+ +s[g+(n<<3)>>3]+ +s[g+(n+1<<3)>>3])*.5;break}else{l=l-u+ +s[g+(n+1<<3)>>3];break}else l=+s[g+(n<<3)>>3]}while(0);a[I+(c<<3)>>2]=~~l;do{if(!(t&16))if(!(t&32)){l=(h-w+ +s[v+(r<<3)>>3]+ +s[v+(r+1<<3)>>3])*.5;break}else{l=+s[v+(r+1<<3)>>3];break}else l=o-w+ +s[v+(r<<3)>>3]}while(0);a[I+(c<<3)+4>>2]=~~l;if(d){r=r+1|0;c=(r|0)==(C|0);r=c?0:r;n=n+(c&1)|0}else{n=n+1|0;c=(n|0)==(f|0);r=r+(c&1)|0;n=c?0:n}i=i+1|0}L2(E);L2(B);L2(g);L2(v);k=G;return I|0}function TE(A,e){A=A|0;e=e|0;var i=0;i=a[47056]|0;A=a[i+(a[(a[A>>2]|0)+16>>2]<<2)>>2]|0;e=a[i+(a[(a[e>>2]|0)+16>>2]<<2)>>2]|0;return((A|0)>(e|0)?1:((A|0)<(e|0))<<31>>31)|0}function jE(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;A=a[A>>2]|0;e=a[e>>2]|0;r=+s[A>>3]+ +s[A+8>>3];i=+s[e>>3]+ +s[e+8>>3];return(ri)<<31>>31)|0}function PE(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,n=0.0,l=0.0,t=0.0,c=0,b=0,u=0.0,w=0.0,o=0,h=0,d=0,B=0;B=k;k=k+96|0;h=B+80|0;d=B+48|0;o=B+8|0;b=B;c=(A*100|0)+-1|0;r=+(i<<1|0);u=0.0;w=0.0;i=0;while(1){if((i|0)>=(A|0))break;t=+s[e+(i<<5)+16>>3]-+s[e+(i<<5)>>3]+r;l=+s[e+(i<<5)+24>>3]-+s[e+(i<<5)+8>>3]+r;u=u-t-l;w=w-l*t;i=i+1|0}l=+(c|0);t=u*u-l*4.0*w;if(!(t<0.0)){r=+z(+t);n=l*2.0;f=(r-u)/n;n=(-u-r)/n;i=~~f;i=(i|0)==0?1:i;if(0>2){b=a[15712]|0;L3(99444,27,1,b)|0;s[o>>3]=l;s[o+8>>3]=u;s[o+16>>3]=w;s[o+24>>3]=t;s[o+32>>3]=r;f3(b,99472,o)|0;a[d>>2]=i;s[d+8>>3]=f;a[d+16>>2]=~~n;s[d+24>>3]=n;f3(b,99498,d)|0;s[h>>3]=(f*l+u)*f+w;s[h+8>>3]=(n*l+u)*n+w;f3(b,99520,h)|0}}else{s[b>>3]=t;ao(1,99417,b)|0;i=-1}k=B;return i|0}function SE(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,b=0,u=0.0,w=0.0,o=0.0,h=0.0,d=0,B=0,g=0,v=0,E=0.0,C=0.0;v=k;k=k+32|0;g=v+16|0;B=v;o=+s[A>>3];h=+s[A+8>>3];u=+s[A+16>>3];w=+s[A+24>>3];d=$V()|0;t=a[f>>2]|0;A=t-r|0;c=a[f+4>>2]|0;l=c-r|0;t=r-~~(o+(o>=0.0?.5:-.5))+t+~~(u+(u>=0.0?.5:-.5))|0;c=r-~~(h+(h>=0.0?.5:-.5))+c+~~(w+(w>=0.0?.5:-.5))|0;if((A|0)>-1)f=(A|0)/(i|0)|0;else f=((A+1|0)/(i|0)|0)+-1|0;if((l|0)>-1)b=(l|0)/(i|0)|0;else b=((l+1|0)/(i|0)|0)+-1|0;if((t|0)>-1)t=(t|0)/(i|0)|0;else t=((t+1|0)/(i|0)|0)+-1|0;if((c|0)>-1)l=(c|0)/(i|0)|0;else l=((c+1|0)/(i|0)|0)+-1|0;while(1){if((f|0)>(t|0))break;else A=b;while(1){if((A|0)>(l|0))break;aJ(d,f,A);A=A+1|0}f=f+1|0}c=e+4|0;a[c>>2]=cJ(d)|0;t=tJ(d)|0;b=e+8|0;a[b>>2]=t;C=+(r<<1|0);E=+(i|0);l=~~+H(+((u+C-o)/E));A=~~+H(+((w+C-h)/E));a[e>>2]=A+l;A:do{if(0>2){f=a[15712]|0;a[B>>2]=n;a[B+4>>2]=t;a[B+8>>2]=l;a[B+12>>2]=A;f3(f,99376,B)|0;A=0;while(1){if((A|0)>=(a[b>>2]|0))break A;n=a[c>>2]|0;B=a[n+(A<<3)+4>>2]|0;a[g>>2]=a[n+(A<<3)>>2];a[g+4>>2]=B;f3(f,99403,g)|0;A=A+1|0}}}while(0);iJ(d);k=v;return}function OE(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0.0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0.0,U=0.0;R=k;k=k+128|0;z=R+112|0;W=R+104|0;N=R+16|0;p=R;D=R+64|0;M=R+56|0;G=R+40|0;m=R+96|0;Z=R+88|0;E=R+24|0;C=R+80|0;I=R+72|0;V=a[f+8>>2]|0;Y=a[f+12>>2]|0;L=(A|0)==0?e:A;J=$V()|0;F=e+16|0;Q=a[F>>2]|0;g=+s[Q+16>>3];y=(a[n>>2]|0)-~~(g+(g>=0.0?.5:-.5))|0;g=+s[Q+24>>3];Q=(a[n+4>>2]|0)-~~(g+(g>=0.0?.5:-.5))|0;A:do{if((a[f+16>>2]|0)==1){E=$F((gh(e)|0)<<2)|0;A=0;n=cd(e)|0;while(1){if(!n)break;I=n+16|0;a[E+(A<<2)>>2]=a[(a[I>>2]|0)+112>>2];a[(a[I>>2]|0)+112>>2]=0;A=A+1|0;n=sd(e,n)|0}w=y-V|0;o=Q-V|0;h=y+V|0;d=Q+V|0;u=1;while(1){A=a[F>>2]|0;if((u|0)>(a[A+180>>2]|0))break;b=a[(a[A+184>>2]|0)+(u<<2)>>2]|0;l=a[b+16>>2]|0;g=+s[l+16>>3];A=~~(g+(g>=0.0?.5:-.5));g=+s[l+24>>3];n=~~(g+(g>=0.0?.5:-.5));g=+s[l+32>>3];f=~~(g+(g>=0.0?.5:-.5));g=+s[l+40>>3];l=~~(g+(g>=0.0?.5:-.5));e:do{if((f|0)>(A|0)&(l|0)>(n|0)){A=w+A|0;t=o+n|0;f=h+f|0;c=d+l|0;if((A|0)>-1)n=(A|0)/(r|0)|0;else n=((A+1|0)/(r|0)|0)+-1|0;if((t|0)>-1)t=(t|0)/(r|0)|0;else t=((t+1|0)/(r|0)|0)+-1|0;if((f|0)>-1)l=(f|0)/(r|0)|0;else l=((f+1|0)/(r|0)|0)+-1|0;if((c|0)>-1)f=(c|0)/(r|0)|0;else f=((c+1|0)/(r|0)|0)+-1|0;while(1){if((n|0)>(l|0))break;else A=t;while(1){if((A|0)>(f|0))break;aJ(J,n,A);A=A+1|0}n=n+1|0}A=cd(b)|0;while(1){if(!A)break e;a[(a[A+16>>2]|0)+212>>2]=b;A=sd(b,A)|0}}}while(0);u=u+1|0}d=G+8|0;B=D+4|0;g=+(V|0);v=M+4|0;h=m+4|0;o=Z+4|0;w=cd(e)|0;while(1){if(!w)break;mR(G,w);U=+s[G>>3];X=+s[d>>3];b=y+~~(U+(U>=0.0?.5:-.5))|0;a[D>>2]=b;u=Q+~~(X+(X>=0.0?.5:-.5))|0;a[B>>2]=u;n=w+16|0;A=a[n>>2]|0;e:do{if(!(a[A+212>>2]|0)){a[M>>2]=~~((+s[A+96>>3]+ +s[A+88>>3])*.5+g);a[v>>2]=~~(+s[A+80>>3]*.5+g);a[W>>2]=a[D>>2];a[W+4>>2]=a[D+4>>2];a[z>>2]=a[M>>2];a[z+4>>2]=a[M+4>>2];AC(m,W,z);A=a[m>>2]|0;f=a[h>>2]|0;a[W>>2]=a[D>>2];a[W+4>>2]=a[D+4>>2];a[z>>2]=a[M>>2];a[z+4>>2]=a[M+4>>2];eC(Z,W,z);l=a[Z>>2]|0;t=a[o>>2]|0;if((A|0)>-1)n=(A|0)/(r|0)|0;else n=((A+1|0)/(r|0)|0)+-1|0;if((f|0)>-1)c=(f|0)/(r|0)|0;else c=((f+1|0)/(r|0)|0)+-1|0;if((l|0)>-1)l=(l|0)/(r|0)|0;else l=((l+1|0)/(r|0)|0)+-1|0;if((t|0)>-1)f=(t|0)/(r|0)|0;else f=((t+1|0)/(r|0)|0)+-1|0;while(1){if((n|0)>(l|0))break;else A=c;while(1){if((A|0)>(f|0))break;aJ(J,n,A);A=A+1|0}n=n+1|0}if((b|0)>-1)A=(b|0)/(r|0)|0;else A=((b+1|0)/(r|0)|0)+-1|0;a[D>>2]=A;if((u|0)>-1)A=(u|0)/(r|0)|0;else A=((u+1|0)/(r|0)|0)+-1|0;a[B>>2]=A;A=Oo(L,w)|0;while(1){if(!A)break e;a[z>>2]=a[D>>2];a[z+4>>2]=a[D+4>>2];iC(A,z,J,y,Q,r,Y);A=_o(L,A)|0}}else{if((b|0)>-1)A=(b|0)/(r|0)|0;else A=((b+1|0)/(r|0)|0)+-1|0;a[D>>2]=A;if((u|0)>-1)A=(u|0)/(r|0)|0;else A=((u+1|0)/(r|0)|0)+-1|0;a[B>>2]=A;A=Oo(L,w)|0;while(1){if(!A)break e;if((a[(a[n>>2]|0)+212>>2]|0)!=(a[(a[(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0)){a[z>>2]=a[D>>2];a[z+4>>2]=a[D+4>>2];iC(A,z,J,y,Q,r,Y)}A=_o(L,A)|0}}}while(0);w=sd(e,w)|0}A=0;n=cd(e)|0;while(1){if(!n)break;a[(a[n+16>>2]|0)+112>>2]=a[E+(A<<2)>>2];A=A+1|0;n=sd(e,n)|0}L2(E)}else{d=E+8|0;B=D+4|0;g=+(V|0);v=M+4|0;h=C+4|0;o=I+4|0;w=cd(e)|0;while(1){if(!w)break A;mR(E,w);X=+s[E>>3];U=+s[d>>3];b=y+~~(X+(X>=0.0?.5:-.5))|0;a[D>>2]=b;u=Q+~~(U+(U>=0.0?.5:-.5))|0;a[B>>2]=u;A=a[w+16>>2]|0;a[M>>2]=~~((+s[A+96>>3]+ +s[A+88>>3])*.5+g);a[v>>2]=~~(+s[A+80>>3]*.5+g);a[W>>2]=a[D>>2];a[W+4>>2]=a[D+4>>2];a[z>>2]=a[M>>2];a[z+4>>2]=a[M+4>>2];AC(C,W,z);A=a[C>>2]|0;f=a[h>>2]|0;a[W>>2]=a[D>>2];a[W+4>>2]=a[D+4>>2];a[z>>2]=a[M>>2];a[z+4>>2]=a[M+4>>2];eC(I,W,z);l=a[I>>2]|0;t=a[o>>2]|0;if((A|0)>-1)n=(A|0)/(r|0)|0;else n=((A+1|0)/(r|0)|0)+-1|0;if((f|0)>-1)c=(f|0)/(r|0)|0;else c=((f+1|0)/(r|0)|0)+-1|0;if((l|0)>-1)l=(l|0)/(r|0)|0;else l=((l+1|0)/(r|0)|0)+-1|0;if((t|0)>-1)f=(t|0)/(r|0)|0;else f=((t+1|0)/(r|0)|0)+-1|0;while(1){if((n|0)>(l|0))break;else A=c;while(1){if((A|0)>(f|0))break;aJ(J,n,A);A=A+1|0}n=n+1|0}if((b|0)>-1)A=(b|0)/(r|0)|0;else A=((b+1|0)/(r|0)|0)+-1|0;a[D>>2]=A;if((u|0)>-1)A=(u|0)/(r|0)|0;else A=((u+1|0)/(r|0)|0)+-1|0;a[B>>2]=A;A=Oo(L,w)|0;while(1){if(!A)break;a[z>>2]=a[D>>2];a[z+4>>2]=a[D+4>>2];iC(A,z,J,y,Q,r,Y);A=_o(L,A)|0}w=sd(e,w)|0}}}while(0);l=i+4|0;a[l>>2]=cJ(J)|0;t=i+8|0;a[t>>2]=tJ(J)|0;n=a[F>>2]|0;X=+(V<<1|0);U=+(r|0);A=~~+H(+((+s[n+32>>3]+X-+s[n+16>>3])/U));n=~~+H(+((+s[n+40>>3]+X-+s[n+24>>3])/U));a[i>>2]=n+A;A:do{if(0>2){f=a[15712]|0;i=Vh(e)|0;e=a[t>>2]|0;a[p>>2]=i;a[p+4>>2]=e;a[p+8>>2]=A;a[p+12>>2]=n;f3(f,99376,p)|0;A=0;while(1){if((A|0)>=(a[t>>2]|0))break A;e=a[l>>2]|0;p=a[e+(A<<3)+4>>2]|0;a[N>>2]=a[e+(A<<3)>>2];a[N+4>>2]=p;f3(f,99403,N)|0;A=A+1|0}}}while(0);iJ(J);k=R;return}function KE(A,e){A=A|0;e=e|0;return(a[a[e>>2]>>2]|0)-(a[a[A>>2]>>2]|0)|0}function _E(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,s=0;c=k;k=k+32|0;l=c+16|0;t=c;s=a[A+4>>2]|0;n=a[A+8>>2]|0;a[i>>2]=0-(a[r>>2]|0);f=i+4|0;a[f>>2]=0-(a[r+4>>2]|0);A=0;r=s;while(1){if((A|0)>=(n|0))break;a[l>>2]=a[r>>2];a[l+4>>2]=a[r+4>>2];rJ(e,l);A=A+1|0;r=r+8|0}if(0>1){s=a[15712]|0;e=a[i>>2]|0;i=a[f>>2]|0;a[t>>2]=n;a[t+4>>2]=e;a[t+8>>2]=i;f3(s,99350,t)|0}k=c;return}function qE(A,e,i,r,f,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;var t=0,c=0,b=0.0,u=0.0,w=0.0,k=0.0,o=0.0,h=0.0;c=a[e+12>>2]|0;b=+s[l+(c<<5)>>3];u=+s[l+(c<<5)+8>>3];w=+s[l+(c<<5)+16>>3];k=+s[l+(c<<5)+24>>3];if(!((A|0)==0?(h=+(n<<1|0),o=+(f|0),($E((~~+H(+((h-b+w)/o))|0)/-2|0,(~~+H(+((h-u+k)/o))|0)/-2|0,e,i,r,f,l)|0)!=0):0))t=3;A:do{if((t|0)==3?($E(0,0,e,i,r,f,l)|0)==0:0)if((~~+H(+(w-b))|0)<(~~+H(+(k-u))|0)){c=1;while(1){t=0-c|0;A=0;while(1){if((A|0)<=(t|0)){n=t;break}if($E(t,A,e,i,r,f,l)|0)break A;A=A+-1|0}while(1){if((n|0)>=(c|0))break;if($E(n,A,e,i,r,f,l)|0)break A;n=n+1|0}while(1){if((A|0)>=(c|0))break;if($E(n,A,e,i,r,f,l)|0)break A;A=A+1|0}while(1){if((n|0)<=(t|0))break;if($E(n,A,e,i,r,f,l)|0)break A;n=n+-1|0}while(1){if((A|0)<=0)break;if(!($E(n,A,e,i,r,f,l)|0))A=A+-1|0;else break A}c=c+1|0}}else{c=1;while(1){t=0-c|0;A=0;while(1){if((A|0)>=(c|0)){n=t;break}if($E(A,t,e,i,r,f,l)|0)break A;A=A+1|0}while(1){if((n|0)>=(c|0))break;if($E(A,n,e,i,r,f,l)|0)break A;n=n+1|0}while(1){if((A|0)<=(t|0))break;if($E(A,n,e,i,r,f,l)|0)break A;A=A+-1|0}while(1){if((n|0)<=(t|0))break;if($E(A,n,e,i,r,f,l)|0)break A;n=n+-1|0}while(1){if((A|0)>=0)break;if(!($E(A,n,e,i,r,f,l)|0))A=A+1|0;else break A}c=c+1|0}}}while(0);return}function $E(A,e,i,r,f,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;var t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0.0,I=0.0;g=k;k=k+48|0;d=g+32|0;B=g+8|0;h=g;b=i+4|0;w=a[i+8>>2]|0;o=h+4|0;t=a[b>>2]|0;c=0;while(1){if((c|0)>=(w|0)){u=5;break}E=t;v=a[E+4>>2]|0;a[h>>2]=(a[E>>2]|0)+A;a[o>>2]=v+e;a[d>>2]=a[h>>2];a[d+4>>2]=a[h+4>>2];if(nJ(r,d)|0){t=0;break}t=t+8|0;c=c+1|0}if((u|0)==5){i=a[i+12>>2]|0;I=+s[l+(i<<5)>>3];C=+s[l+(i<<5)+8>>3];a[f>>2]=(U(n,A)|0)-~~(I+(I>=0.0?.5:-.5));i=f+4|0;a[i>>2]=(U(n,e)|0)-~~(C+(C>=0.0?.5:-.5));t=a[b>>2]|0;c=0;while(1){if((c|0)>=(w|0))break;v=t;E=a[v+4>>2]|0;a[h>>2]=(a[v>>2]|0)+A;a[o>>2]=E+e;a[d>>2]=a[h>>2];a[d+4>>2]=a[h+4>>2];rJ(r,d);t=t+8|0;c=c+1|0}if(0>1){t=a[15712]|0;v=a[f>>2]|0;E=a[i>>2]|0;a[B>>2]=w;a[B+4>>2]=A;a[B+8>>2]=e;a[B+12>>2]=v;a[B+16>>2]=E;f3(t,99316,B)|0;t=1}else t=1}k=g;return t|0}function AC(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=(a[e+4>>2]|0)-(a[i+4>>2]|0)|0;a[A>>2]=(a[e>>2]|0)-(a[i>>2]|0);a[A+4>>2]=r;return}function eC(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=(a[i+4>>2]|0)+(a[e+4>>2]|0)|0;a[A>>2]=(a[i>>2]|0)+(a[e>>2]|0);a[A+4>>2]=r;return}function iC(A,e,i,r,f,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;var t=0.0,c=0.0,b=0,u=0,w=0.0,o=0.0,h=0.0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0;m=k;k=k+112|0;I=m+96|0;C=m+80|0;d=m+48|0;B=m+32|0;Z=m+16|0;G=m;u=m+64|0;s[Z>>3]=+(a[e>>2]|0);g=Z+8|0;s[g>>3]=+(a[e+4>>2]|0);A:do{if((l|0)!=0?(v=A+16|0,b=a[(a[v>>2]|0)+8>>2]|0,(b|0)!=0):0){h=+(r|0);o=+(f|0);w=1.0/+(n|0);u=G+8|0;l=0;while(1){if((l|0)>=(a[b+4>>2]|0))break A;f=a[b>>2]|0;A=a[f+(l*48|0)>>2]|0;e=a[f+(l*48|0)+4>>2]|0;n=a[f+(l*48|0)+8>>2]|0;r=a[f+(l*48|0)+12>>2]|0;b=f+(l*48|0)+16|0;a[d>>2]=a[b>>2];a[d+4>>2]=a[b+4>>2];a[d+8>>2]=a[b+8>>2];a[d+12>>2]=a[b+12>>2];f=f+(l*48|0)+32|0;a[B>>2]=a[f>>2];a[B+4>>2]=a[f+4>>2];a[B+8>>2]=a[f+8>>2];a[B+12>>2]=a[f+12>>2];if(!n){a[Z>>2]=a[A>>2];a[Z+4>>2]=a[A+4>>2];a[Z+8>>2]=a[A+8>>2];a[Z+12>>2]=a[A+12>>2];b=A+16|0;a[G>>2]=a[b>>2];a[G+4>>2]=a[b+4>>2];a[G+8>>2]=a[b+8>>2];a[G+12>>2]=a[b+12>>2];b=2}else{a[Z>>2]=a[d>>2];a[Z+4>>2]=a[d+4>>2];a[Z+8>>2]=a[d+8>>2];a[Z+12>>2]=a[d+12>>2];a[G>>2]=a[A>>2];a[G+4>>2]=a[A+4>>2];a[G+8>>2]=a[A+8>>2];a[G+12>>2]=a[A+12>>2];b=1}t=+s[Z>>3]+h;s[Z>>3]=t;c=+s[g>>3]+o;s[g>>3]=c;if(!(t>=0.0))t=(t+1.0)*w+-1.0;else t=t*w;s[Z>>3]=t;if(!(c>=0.0))t=(c+1.0)*w+-1.0;else t=c*w;s[g>>3]=t;t=+s[G>>3]+h;s[G>>3]=t;c=+s[u>>3]+o;s[u>>3]=c;if(!(t>=0.0))t=(t+1.0)*w+-1.0;else t=t*w;s[G>>3]=t;if(!(c>=0.0))t=(c+1.0)*w+-1.0;else t=c*w;s[u>>3]=t;a[C>>2]=a[Z>>2];a[C+4>>2]=a[Z+4>>2];a[C+8>>2]=a[Z+8>>2];a[C+12>>2]=a[Z+12>>2];a[I>>2]=a[G>>2];a[I+4>>2]=a[G+4>>2];a[I+8>>2]=a[G+8>>2];a[I+12>>2]=a[G+12>>2];XE(C,I,i);while(1){if((b|0)>=(e|0))break;a[Z>>2]=a[G>>2];a[Z+4>>2]=a[G+4>>2];a[Z+8>>2]=a[G+8>>2];a[Z+12>>2]=a[G+12>>2];n=A+(b<<4)|0;a[G>>2]=a[n>>2];a[G+4>>2]=a[n+4>>2];a[G+8>>2]=a[n+8>>2];a[G+12>>2]=a[n+12>>2];t=+s[G>>3]+h;s[G>>3]=t;c=+s[u>>3]+o;s[u>>3]=c;if(!(t>=0.0))t=(t+1.0)*w+-1.0;else t=t*w;s[G>>3]=t;if(!(c>=0.0))t=(c+1.0)*w+-1.0;else t=c*w;s[u>>3]=t;a[C>>2]=a[Z>>2];a[C+4>>2]=a[Z+4>>2];a[C+8>>2]=a[Z+8>>2];a[C+12>>2]=a[Z+12>>2];a[I>>2]=a[G>>2];a[I+4>>2]=a[G+4>>2];a[I+8>>2]=a[G+8>>2];a[I+12>>2]=a[G+12>>2];XE(C,I,i);b=b+1|0}if(r|0){a[Z>>2]=a[G>>2];a[Z+4>>2]=a[G+4>>2];a[Z+8>>2]=a[G+8>>2];a[Z+12>>2]=a[G+12>>2];a[G>>2]=a[B>>2];a[G+4>>2]=a[B+4>>2];a[G+8>>2]=a[B+8>>2];a[G+12>>2]=a[B+12>>2];t=+s[G>>3]+h;s[G>>3]=t;c=+s[u>>3]+o;s[u>>3]=c;if(!(t>=0.0))t=(t+1.0)*w+-1.0;else t=t*w;s[G>>3]=t;if(!(c>=0.0))t=(c+1.0)*w+-1.0;else t=c*w;s[u>>3]=t;a[C>>2]=a[Z>>2];a[C+4>>2]=a[Z+4>>2];a[C+8>>2]=a[Z+8>>2];a[C+12>>2]=a[Z+12>>2];a[I>>2]=a[G>>2];a[I+4>>2]=a[G+4>>2];a[I+8>>2]=a[G+8>>2];a[I+12>>2]=a[G+12>>2];XE(C,I,i)}l=l+1|0;b=a[(a[v>>2]|0)+8>>2]|0}}else E=4}while(0);if((E|0)==4){mR(u,a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0);a[G>>2]=a[u>>2];a[G+4>>2]=a[u+4>>2];a[G+8>>2]=a[u+8>>2];a[G+12>>2]=a[u+12>>2];t=+s[G>>3]+ +(r|0);s[G>>3]=t;b=G+8|0;c=+s[b>>3]+ +(f|0);s[b>>3]=c;if(!(t>=0.0))t=(t+1.0)/+(n|0)+-1.0;else t=t/+(n|0);s[G>>3]=t;if(!(c>=0.0))t=(c+1.0)/+(n|0)+-1.0;else t=c/+(n|0);s[b>>3]=t;a[C>>2]=a[Z>>2];a[C+4>>2]=a[Z+4>>2];a[C+8>>2]=a[Z+8>>2];a[C+12>>2]=a[Z+12>>2];a[I>>2]=a[G>>2];a[I+4>>2]=a[G+4>>2];a[I+8>>2]=a[G+8>>2];a[I+12>>2]=a[G+12>>2];XE(C,I,i)}k=m;return}function rC(A,e,i){A=A|0;e=e|0;i=i|0;A:do{if((A|0)<1)A=0;else switch(a[i+16>>2]|0){case 4:{A=xE(A,e,i)|0;break A}case 3:{A=fC(A,e,i)|0;break A}default:{A=0;break A}}}while(0);return A|0}function fC(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;u=k;k=k+80|0;n=u+64|0;f=u+24|0;b=u+8|0;r=u;l=u+56|0;c=i+8|0;s=PE(A,e,a[c>>2]|0)|0;if(0){}A:do{if((s|0)>=1){a[l+4>>2]=0;a[l>>2]=0;t=qF(A<<4)|0;i=0;while(1){if((i|0)>=(A|0))break;a[t+(i<<4)+12>>2]=i;w=e+(i<<5)|0;r=a[c>>2]|0;a[f>>2]=a[w>>2];a[f+4>>2]=a[w+4>>2];a[f+8>>2]=a[w+8>>2];a[f+12>>2]=a[w+12>>2];a[f+16>>2]=a[w+16>>2];a[f+20>>2]=a[w+20>>2];a[f+24>>2]=a[w+24>>2];a[f+28>>2]=a[w+28>>2];a[n>>2]=a[l>>2];a[n+4>>2]=a[l+4>>2];SE(f,t+(i<<4)|0,s,r,n,195059);i=i+1|0}f=qF(A<<2)|0;i=0;while(1){if((i|0)>=(A|0))break;a[f+(i<<2)>>2]=t+(i<<4);i=i+1|0}K4(f,A,4,89);n=$V()|0;i=qF(A<<3)|0;r=0;while(1){if((r|0)>=(A|0))break;w=a[f+(r<<2)>>2]|0;qE(r,w,n,i+(a[w+12>>2]<<3)|0,s,a[c>>2]|0,e);r=r+1|0}L2(f);r=0;while(1){if((r|0)>=(A|0))break;L2(a[t+(r<<4)+4>>2]|0);r=r+1|0}L2(t);iJ(n);if(0>1){f=a[15712]|0;r=0;while(1){if((r|0)>=(A|0))break A;e=a[i+(r<<3)>>2]|0;w=a[i+(r<<3)+4>>2]|0;a[b>>2]=r;a[b+4>>2]=e;a[b+8>>2]=w;f3(f,99301,b)|0;r=r+1|0}}}else i=0}while(0);k=u;return i|0}function aC(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,b=0,u=0.0,w=0.0,k=0.0,o=0.0,h=0,d=0,B=0,g=0;A:do{if((A|0)<1)f=0-A|0;else{B=(r|0)==0;h=(f|0)==0;t=0;while(1){if((t|0)==(A|0)){f=0;break A}d=a[e+(t<<2)>>2]|0;n=B?d:r;c=a[i+(t<<3)>>2]|0;b=a[i+(t<<3)+4>>2]|0;u=+(c|0);w=u*.013888888888888888;k=+(b|0);o=k*.013888888888888888;l=cd(d)|0;while(1){if(!l)break;f=a[l+16>>2]|0;g=a[f+132>>2]|0;s[g>>3]=+s[g>>3]+w;g=g+8|0;s[g>>3]=+s[g>>3]+o;g=f+16|0;s[g>>3]=+s[g>>3]+u;g=f+24|0;s[g>>3]=+s[g>>3]+k;f=a[f+108>>2]|0;if(f|0){g=f+56|0;s[g>>3]=+s[g>>3]+u;g=f+64|0;s[g>>3]=+s[g>>3]+k}e:do{if(!h){f=Oo(n,l)|0;while(1){if(!f)break e;nC(f,c,b);f=_o(n,f)|0}}}while(0);l=sd(d,l)|0}lC(d,c,b);t=t+1|0}}}while(0);return f|0}function nC(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0.0,c=0,b=0.0,u=0,w=0;r=a[A+16>>2]|0;A=a[r+96>>2]|0;if(A|0){u=A+56|0;s[u>>3]=+s[u>>3]+ +(e|0);u=A+64|0;s[u>>3]=+s[u>>3]+ +(i|0)}A=a[r+108>>2]|0;if(A|0){u=A+56|0;s[u>>3]=+s[u>>3]+ +(e|0);u=A+64|0;s[u>>3]=+s[u>>3]+ +(i|0)}A=a[r+100>>2]|0;if(A|0){u=A+56|0;s[u>>3]=+s[u>>3]+ +(e|0);u=A+64|0;s[u>>3]=+s[u>>3]+ +(i|0)}A=a[r+104>>2]|0;if(A|0){u=A+56|0;s[u>>3]=+s[u>>3]+ +(e|0);u=A+64|0;s[u>>3]=+s[u>>3]+ +(i|0)}u=a[r+8>>2]|0;A:do{if(u|0){b=+(e|0);t=+(i|0);e=a[u+4>>2]|0;A=0;while(1){if((A|0)>=(e|0))break A;c=a[u>>2]|0;i=a[c+(A*48|0)>>2]|0;f=a[c+(A*48|0)+4>>2]|0;n=a[c+(A*48|0)+8>>2]|0;l=a[c+(A*48|0)+12>>2]|0;r=0;while(1){if((r|0)>=(f|0))break;w=i+(r<<4)|0;s[w>>3]=+s[w>>3]+b;w=i+(r<<4)+8|0;s[w>>3]=+s[w>>3]+t;r=r+1|0}if(n|0){w=c+(A*48|0)+16|0;s[w>>3]=+s[w>>3]+b;w=c+(A*48|0)+24|0;s[w>>3]=+s[w>>3]+t}if(l|0){w=c+(A*48|0)+32|0;s[w>>3]=+s[w>>3]+b;w=c+(A*48|0)+40|0;s[w>>3]=+s[w>>3]+t}A=A+1|0}}}while(0);return}function lC(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0.0,l=0.0,t=0,c=0.0,b=0.0,u=0,w=0.0,k=0;t=A+16|0;A=a[t>>2]|0;k=A+16|0;u=A+24|0;f=A+32|0;A=A+40|0;n=+(e|0);b=+s[f>>3]+n;l=+(i|0);w=+s[u>>3]+l;c=+s[A>>3]+l;s[k>>3]=+s[k>>3]+n;s[u>>3]=w;s[f>>3]=b;s[A>>3]=c;A=a[t>>2]|0;f=a[A+12>>2]|0;if((f|0)!=0?(r[f+81>>0]|0)!=0:0){k=f+56|0;s[k>>3]=+s[k>>3]+n;f=f+64|0;s[f>>3]=+s[f>>3]+l;f=1}else f=1;while(1){if((f|0)>(a[A+180>>2]|0))break;lC(a[(a[A+184>>2]|0)+(f<<2)>>2]|0,e,i);f=f+1|0;A=a[t>>2]|0}return}function tC(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0;f=HE(A,e,i,r)|0;if(!f)A=1;else{A=aC(A,e,f,i,a[r+12>>2]|0)|0;L2(f)}return A|0}function cC(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0;o=k;k=k+32|0;w=o;u=tC(A,e,i,r)|0;if(!u){xR(i);b=(a[i+16>>2]|0)+16|0;a[w>>2]=a[b>>2];a[w+4>>2]=a[b+4>>2];a[w+8>>2]=a[b+8>>2];a[w+12>>2]=a[b+12>>2];a[w+16>>2]=a[b+16>>2];a[w+20>>2]=a[b+20>>2];a[w+24>>2]=a[b+24>>2];a[w+28>>2]=a[b+28>>2];f=w+8|0;n=w+16|0;l=w+24|0;r=0;while(1){if((r|0)>=(A|0))break;c=a[(a[e+(r<<2)>>2]|0)+16>>2]|0;t=a[c+180>>2]|0;c=c+184|0;i=1;while(1){if((i|0)>(t|0))break;d=(a[(a[(a[c>>2]|0)+(i<<2)>>2]|0)+16>>2]|0)+16|0;s[w>>3]=+s[(+s[w>>3]<+s[d>>3]?w:d)>>3];d=a[(a[(a[c>>2]|0)+(i<<2)>>2]|0)+16>>2]|0;h=d+16|0;s[f>>3]=+s[(+s[f>>3]<+s[d+24>>3]?w:h)+8>>3];s[n>>3]=+s[(+s[n>>3]>+s[d+32>>3]?w:h)+16>>3];s[l>>3]=+s[(+s[l>>3]>+s[d+40>>3]?w:h)+24>>3];i=i+1|0}r=r+1|0}a[b>>2]=a[w>>2];a[b+4>>2]=a[w+4>>2];a[b+8>>2]=a[w+8>>2];a[b+12>>2]=a[w+12>>2];a[b+16>>2]=a[w+16>>2];a[b+20>>2]=a[w+20>>2];a[b+24>>2]=a[w+24>>2];a[b+28>>2]=a[w+28>>2]}k=o;return u|0}function sC(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0;n=k;k=k+16|0;f=n;if(!r)gA(99534,99540,1400,99547);i=bC(A,i,i)|0;a[r+8>>2]=i;if(0){}a[r+12>>2]=0;a[r+20>>2]=0;uC(A,e,r)|0;k=n;return a[r+16>>2]|0}function bC(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0;t=k;k=k+16|0;l=t;f=t+4|0;n=Ho(A,99689)|0;A:do{if(n){a[l>>2]=f;l=(J3(n,137395,l)|0)==1;A=a[f>>2]|0;if(l&(A|0)>-1)e=A;else{switch(r[n>>0]|0){case 84:case 116:break;default:break A}e=i}}}while(0);k=t;return e|0}function uC(A,e,i){A=A|0;e=e|0;i=i|0;return wC(Ho(A,99572)|0,e,i)|0}function wC(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0.0;g=k;k=k+64|0;h=g+40|0;o=g+32|0;B=g+24|0;d=g+16|0;s=g+8|0;t=g;n=g+48|0;l=g+44|0;if(!i)gA(99534,99540,1292,99581);u=i+28|0;a[u>>2]=0;w=i+16|0;a[w>>2]=e;b=i+4|0;a[b>>2]=0;a[i+24>>2]=0;A:do{if(A|0?(f=r[A>>0]|0,f<<24>>24):0)switch(f<<24>>24|0){case 97:if(!(Z1(A,99599,5)|0)){a[w>>2]=4;s=kC(A+5|0,i)|0;a[t>>2]=l;s=(J3(s,137395,t)|0)>0;e=a[l>>2]|0;if(!(s&(e|0)>0))break A;a[b>>2]=e;break A}else{if(Z1(A,99605,6)|0)break A;a[w>>2]=5;a[s>>2]=n;s=(J3(A+5|0,99612,s)|0)>0;v=+c[n>>2];c[i>>2]=s&v>0.0?v:1.0;break A}case 99:{if(f<<24>>24!=99)break A;if(A1(A,108006)|0)break A;a[w>>2]=1;break A}case 103:{if(f<<24>>24!=103)break A;if(A1(A,111494)|0)break A;a[w>>2]=3;break A}case 110:{if(f<<24>>24!=110)break A;if(A1(A,111481)|0)break A;a[w>>2]=2;break A}default:break A}}while(0);if(0){}k=g;return a[w>>2]|0}function kC(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;A:do{if((r[A>>0]|0)==95){f=e+28|0;i=1;while(1){A=A+1|0;e:while(1){if(!i)break A;e=r[A>>0]|0;if(!(e<<24>>24))break A;switch(e<<24>>24|0){case 99:{n=10;break e}case 105:{n=9;break e}case 117:{n=11;break e}case 116:{n=12;break e}case 98:{e=32;break e}case 108:{n=7;break e}case 114:{n=8;break e}default:i=0}}if((n|0)==7){n=0;e=4}else if((n|0)==8){n=0;e=8}else if((n|0)==9){n=0;e=64}else if((n|0)==10){n=0;e=1}else if((n|0)==11){n=0;e=2}else if((n|0)==12){n=0;e=16}a[f>>2]=a[f>>2]|e}}}while(0);return A|0}function oC(A){A|0;switch(A|0){case 1:{108006;break}case 2:{111481;break}case 3:{111494;break}case 4:{99599;break}case 5:{99605;break}default:99679}return A|0}function hC(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;u=k;k=k+96|0;s=u;b=u+80|0;do{if(A){if(!r){r=y2(1,20)|0;a[r+4>>2]=i>>>0>80?i:80}i=a[r>>2]|0;c=a[r+4>>2]|0;if(!i){l=100;i=A;t=y2(100,c)|0}else{l=i+100|0;t=W2(a[r+8>>2]|0,U(l,c)|0)|0;Y6(t+(U(c,i)|0)|0,0,c*100|0)|0;i=A}while(1){i=dC(s,i,e,b)|0;if(!i)break;A=a[r>>2]|0;f=l<<1;n=U(l,c)|0;if((A|0)==(l|0)){t=W2(t,U(f,c)|0)|0;Y6(t+n|0,0,n|0)|0;A=a[r>>2]|0}else f=l;A=t+(U(A,c)|0)|0;n=s;l=A+80|0;do{a[A>>2]=a[n>>2];A=A+4|0;n=n+4|0}while((A|0)<(l|0));a[r>>2]=(a[r>>2]|0)+1;l=f}if(a[b>>2]|0){b=r+16|0;a[b>>2]=a[b>>2]|1}i=a[r>>2]|0;if(!i){L2(t);L2(r);r=0;break}else{a[r+8>>2]=W2(t,U(i,c)|0)|0;break}}}while(0);k=u;return r|0}function dC(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0;c=k;k=k+80|0;l=c+64|0;t=c;a[f>>2]=0;do{n=r[e>>0]|0;e=e+1|0}while((m1(n)|0)!=0);A:do{switch(n|0){case 69:{a[A>>2]=0;e=BC(e,A+8|0)|0;if(!e){a[f>>2]=1;e=0;break A}if(i)a[A+72>>2]=a[i>>2];break}case 101:{a[A>>2]=1;e=BC(e,A+8|0)|0;if(!e){a[f>>2]=1;e=0;break A}if(i)a[A+72>>2]=a[i>>2];break}case 80:{a[A>>2]=2;e=gC(e,A+8|0)|0;if(!e){a[f>>2]=1;e=0;break A}if(i)a[A+72>>2]=a[i+4>>2];break}case 112:{a[A>>2]=3;e=gC(e,A+8|0)|0;if(!e){a[f>>2]=1;e=0;break A}if(i)a[A+72>>2]=a[i+4>>2];break}case 98:{a[A>>2]=4;e=gC(e,A+8|0)|0;if(!e){a[f>>2]=1;e=0;break A}if(i)a[A+72>>2]=a[i+8>>2];break}case 66:{a[A>>2]=5;e=gC(e,A+8|0)|0;if(!e){a[f>>2]=1;e=0;break A}if(i)a[A+72>>2]=a[i+8>>2];break}case 99:{e=vC(e,l)|0;if(!e){a[f>>2]=1;e=0;break A}n=EC(a[l>>2]|0,t)|0;a[l>>2]=n;if(!n){a[f>>2]=1;e=0;break A}if(!(a[t>>2]|0)){a[A>>2]=9;a[A+8>>2]=a[t+8>>2];if(!i)break A;a[A+72>>2]=a[i+24>>2];break A}else{a[A>>2]=14;f=A+8|0;n=t;l=f+64|0;do{a[f>>2]=a[n>>2];f=f+4|0;n=n+4|0}while((f|0)<(l|0));if(!i)break A;a[A+72>>2]=a[i+40>>2];break A}}case 67:{e=vC(e,l)|0;if(!e){a[f>>2]=1;e=0;break A}n=EC(a[l>>2]|0,t)|0;a[l>>2]=n;if(!n){a[f>>2]=1;e=0;break A}if(!(a[t>>2]|0)){a[A>>2]=8;a[A+8>>2]=a[t+8>>2];if(!i)break A;a[A+72>>2]=a[i+20>>2];break A}else{a[A>>2]=13;f=A+8|0;n=t;l=f+64|0;do{a[f>>2]=a[n>>2];f=f+4|0;n=n+4|0}while((f|0)<(l|0));if(!i)break A;a[A+72>>2]=a[i+40>>2];break A}}case 76:{a[A>>2]=6;e=gC(e,A+8|0)|0;if(!e){a[f>>2]=1;e=0;break A}if(i)a[A+72>>2]=a[i+12>>2];break}case 84:{a[A>>2]=7;e=CC(e,A+8|0)|0;if(!e){a[f>>2]=1;e=0;break A}e=CC(e,A+16|0)|0;if(!e){a[f>>2]=1;e=0;break A}e=IC(e,A+24|0)|0;if(!e){a[f>>2]=1;e=0;break A}e=CC(e,A+32|0)|0;if(!e){a[f>>2]=1;e=0;break A}e=vC(e,A+40|0)|0;if(!e){a[f>>2]=1;e=0;break A}if(i)a[A+72>>2]=a[i+16>>2];break}case 70:{a[A>>2]=10;e=CC(e,A+8|0)|0;if(!e){a[f>>2]=1;e=0;break A}e=vC(e,A+16|0)|0;if(!e){a[f>>2]=1;e=0;break A}if(i)a[A+72>>2]=a[i+28>>2];break}case 83:{a[A>>2]=11;e=vC(e,A+8|0)|0;if(!e){a[f>>2]=1;e=0;break A}if(i)a[A+72>>2]=a[i+32>>2];break}case 73:{a[A>>2]=12;e=BC(e,A+8|0)|0;if(!e){a[f>>2]=1;e=0;break A}e=vC(e,A+40|0)|0;if(!e){a[f>>2]=1;e=0;break A}if(i)a[A+72>>2]=a[i+36>>2];break}case 116:{a[A>>2]=15;e=ZC(e,A+8|0)|0;if(!e){a[f>>2]=1;e=0;break A}if(i)a[A+72>>2]=a[i+44>>2];break}case 0:{e=0;break}default:{a[f>>2]=1;e=0}}}while(0);k=c;return e|0}function BC(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;l=k;k=k+16|0;r=l;s[e>>3]=+A8(A,r);f=a[r>>2]|0;if(((f|0)!=(A|0)?(s[e+8>>3]=+A8(f,r),n=a[r>>2]|0,(f|0)!=(n|0)):0)?(s[e+16>>3]=+A8(n,r),i=a[r>>2]|0,(n|0)!=(i|0)):0){s[e+24>>3]=+A8(i,r);A=a[r>>2]|0;A=(i|0)==(A|0)?0:A}else A=0;k=l;return A|0}function gC(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0;c=k;k=k+16|0;t=c+4|0;n=c;A=GC(A,t)|0;do{if(A){i=a[t>>2]|0;l=y2(i,24)|0;a[e>>2]=i;r=l;f=0;while(1){if((f|0)>=(i|0)){i=9;break}s[r>>3]=+A8(A,n);i=a[n>>2]|0;if((A|0)==(i|0)){i=5;break}s[r+8>>3]=+A8(i,n);A=a[n>>2]|0;if((i|0)==(A|0)){i=7;break}s[r+16>>3]=0.0;r=r+24|0;i=a[e>>2]|0;f=f+1|0}if((i|0)==5){a[t>>2]=f;L2(l);A=0;break}else if((i|0)==7){a[t>>2]=f;L2(l);A=0;break}else if((i|0)==9){a[t>>2]=f;a[e+4>>2]=l;break}}else A=0}while(0);k=c;return A|0}function vC(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0;c=k;k=k+16|0;t=c;A=GC(A,t)|0;f=a[t>>2]|0;do{if(!((A|0)==0|(f|0)<1)){while(1){l=r[A>>0]|0;i=l<<24>>24==0;if(i^l<<24>>24!=45)A=A+1|0;else break}if(!i){l=y2(f+1|0,1)|0;n=l;i=f;while(1){A=A+1|0;if((i|0)<=0){i=9;break}i=r[A>>0]|0;if(!(i<<24>>24)){i=8;break}r[n>>0]=i;i=(a[t>>2]|0)+-1|0;a[t>>2]=i;n=n+1|0}if((i|0)==8){L2(l);A=0;break}else if((i|0)==9){r[n>>0]=0;a[e>>2]=l;break}}else A=0}else A=0}while(0);k=c;return A|0}function EC(A,e){A=A|0;e=e|0;var i=0;i=r[A>>0]|0;switch(i|0){case 91:{A=mC(A+1|0,e)|0;break}case 40:{A=QC(A+1|0,e)|0;break}case 47:case 35:{a[e>>2]=0;a[e+8>>2]=A;break}default:if(!(V1(i)|0))A=0;else{a[e>>2]=0;a[e+8>>2]=A}}return A|0}function CC(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0;f=k;k=k+16|0;i=f;r=+A8(A,i);i=a[i>>2]|0;if((i|0)==(A|0))i=0;else s[e>>3]=r;k=f;return i|0}function IC(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+16|0;r=i;A=GC(A,r)|0;r=a[r>>2]|0;a[e>>2]=(r|0)<0?0:r|0?2:1;k=i;return A|0}function ZC(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+16|0;r=i;a[e>>2]=Q1(A,r,10)|0;e=a[r>>2]|0;k=i;return((e|0)==(A|0)?0:e)|0}function GC(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+16|0;r=i;a[e>>2]=n3(A,r,10)|0;e=a[r>>2]|0;k=i;return((e|0)==(A|0)?0:e)|0}function mC(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,b=0,u=0,w=0;w=k;k=k+16|0;b=w;a[e>>2]=1;u=e+8|0;n=CC(A,u)|0;do{if(((((n|0)!=0?(l=CC(n,e+16|0)|0,(l|0)!=0):0)?(r=CC(l,e+24|0)|0,(r|0)!=0):0)?(f=CC(r,e+32|0)|0,(f|0)!=0):0)?(t=e+40|0,i=GC(f,t)|0,(i|0)!=0):0){e=a[t>>2]|0;f=y2(e,8)|0;r=0;while(1){if((r|0)>=(e|0)){i=13;break}i=CC(i,b)|0;if(!i){i=9;break}c[f+(r<<3)>>2]=+s[b>>3];i=vC(i,f+(r<<3)+4|0)|0;if(!i){i=12;break}r=r+1|0;e=a[t>>2]|0}if((i|0)==9){L2(f);A=0;break}else if((i|0)==12){L2(f);A=0;break}else if((i|0)==13){a[u+36>>2]=f;break}}else A=0}while(0);k=w;return A|0}function QC(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,b=0,u=0,w=0,o=0;o=k;k=k+16|0;u=o;a[e>>2]=2;t=CC(A,e+8|0)|0;do{if(((((((t|0)!=0?(b=CC(t,e+16|0)|0,(b|0)!=0):0)?(r=CC(b,e+24|0)|0,(r|0)!=0):0)?(f=CC(r,e+32|0)|0,(f|0)!=0):0)?(n=CC(f,e+40|0)|0,(n|0)!=0):0)?(l=CC(n,e+48|0)|0,(l|0)!=0):0)?(w=e+56|0,i=GC(l,w)|0,(i|0)!=0):0){r=a[w>>2]|0;n=y2(r,8)|0;f=0;while(1){if((f|0)>=(r|0)){i=15;break}i=CC(i,u)|0;if(!i){i=11;break}c[n+(f<<3)>>2]=+s[u>>3];i=vC(i,n+(f<<3)+4|0)|0;if(!i){i=14;break}f=f+1|0;r=a[w>>2]|0}if((i|0)==11){L2(n);A=0;break}else if((i|0)==14){L2(n);A=0;break}else if((i|0)==15){a[e+60>>2]=n;break}}else A=0}while(0);k=o;return A|0}function LC(A,e,i){A=A|0;e=e|0;i=i|0;return hC(A,e,i,0)|0}function yC(A){A=A|0;return LC(A,0,0)|0}function WC(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0;r=a[A+12>>2]|0;if(A|0){f=a[A+8>>2]|0;n=A+4|0;l=(r|0)==0;e=0;while(1){if((e|0)>=(a[A>>2]|0))break;i=f+(U(a[n>>2]|0,e)|0)|0;if(!l)F5[r&127](i);zC(i);e=e+1|0}L2(f);L2(A)}return}function zC(A){A=A|0;switch(a[A>>2]|0){case 3:case 2:{L2(a[A+8+4>>2]|0);break}case 5:case 4:{L2(a[A+8+4>>2]|0);break}case 6:{L2(a[A+8+4>>2]|0);break}case 7:{L2(a[A+40>>2]|0);break}case 9:case 8:{L2(a[A+8>>2]|0);break}case 14:case 13:{YC(A+8|0);break}case 10:{L2(a[A+16>>2]|0);break}case 11:{L2(a[A+8>>2]|0);break}case 12:{L2(a[A+40>>2]|0);break}default:{}}return}function YC(A){A=A|0;var e=0,i=0,r=0;switch(a[A>>2]|0){case 1:{r=A+40|0;e=A+8+36|0;A=0;while(1){i=a[e>>2]|0;if((A|0)>=(a[r>>2]|0))break;L2(a[i+(A<<3)+4>>2]|0);A=A+1|0}L2(i);break}case 2:{r=A+56|0;i=A+60|0;A=0;while(1){e=a[i>>2]|0;if((A|0)>=(a[r>>2]|0))break;L2(a[e+(A<<3)+4>>2]|0);A=A+1|0}L2(e);break}default:{}}return}function DC(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;w=k;k=k+16|0;s=w+4|0;u=w;a[e>>2]=0;a[i>>2]=(Ih(Id(A)|0)|0)!=0&1;f=a[47184]|0;A:do{if(f|0?(l=Uo(A,f)|0,t=r[l>>0]|0,t<<24>>24):0){f=20388;while(1){n=a[f>>2]|0;if(!n)break A;if(t<<24>>24==(r[n>>0]|0)?(A1(l,n)|0)==0:0)break;f=f+12|0}a[e>>2]=a[f+4>>2];a[i>>2]=a[f+8>>2]}}while(0);f=a[47195]|0;if((f|0?(a[i>>2]|0)==1:0)?(c=Uo(A,f)|0,r[c>>0]|0):0)MC(c,i);f=a[47196]|0;if((f|0?(a[e>>2]|0)==1:0)?(b=Uo(A,f)|0,r[b>>0]|0):0)MC(b,e);if(r[(a[A+16>>2]|0)+153>>0]|0){c=A+-48|0;t=Id(a[((a[A>>2]&3|0)==2?A:c)+40>>2]|0)|0;b=a[A>>2]&3;DC(th(t,a[((b|0)==2?A:c)+40>>2]|0,a[((b|0)==3?A:A+48|0)+40>>2]|0,0,0)|0,s,u);a[i>>2]=a[s>>2]|a[i>>2];a[e>>2]=a[u>>2]|a[e>>2]}k=w;return}function MC(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;w=k;k=k+16|0;b=w;s=w+4|0;c=0;i=0;A:while(1){a[e>>2]=i;n=(c|0)<4;l=(c|0)==3;t=(c|0)==0;while(1){if(!(n&(r[A>>0]|0)!=0))break A;a[s>>2]=0;f=FC(A,s)|0;i=a[s>>2]|0;if(!i){u=5;break A}A=(i|0)==8;if(!(l&A)){if(!(t&A))break;if(r[f>>0]|0)break}a[s>>2]=0;A=f}i=a[e>>2]|i<<(c<<3);c=c+1|0;A=f}if((u|0)==5){a[b>>2]=A;ao(0,99694,b)|0}k=w;return}function FC(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;f=k;k=k+16|0;r=f;a[r>>2]=0;i=VC(A,20448,r)|0;if((i|0)==(A|0)){while(1){i=VC(A,20464,r)|0;if((A|0)==(i|0))break;else A=i}i=VC(A,20512,r)|0}A=a[r>>2]|0;if((A|0)!=0&(A&15|0)==0){A=A|1;a[r>>2]=A}a[e>>2]=a[e>>2]|A;k=f;return i|0}function VC(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;while(1){r=a[e>>2]|0;if(!r)break;f=P2(r)|0;if(!(Z1(A,r,f)|0)){n=4;break}e=e+8|0}if((n|0)==4){a[i>>2]=a[i>>2]|a[e+4>>2];A=A+f|0}return A|0}function JC(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0,n=0,l=0;n=0;i=0.0;while(1){if((n|0)==4)break;f=e>>(n<<3)&15;r=1400;while(1){if(!(a[r+16>>2]|0))break;if((f|0)==(a[r>>2]|0)){l=6;break}r=r+24|0}if((l|0)==6){l=0;i=+s[r+8>>3]+i}n=n+1|0}return+(i*10.0*+oR(A,a[47188]|0,1.0,0.0))}function pC(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=+r;f=+f;n=n|0;var l=0.0,t=0.0,c=0.0,b=0,u=0.0,w=0,o=0;o=k;k=k+96|0;b=o+80|0;w=o;c=f>4.0?f*.0875:.35;l=+s[i+8>>3];u=l*c;t=+s[i>>3];c=t*c;r=+s[e>>3];t=r+t;s[b>>3]=t;f=+s[e+8>>3];l=l+f;s[b+8>>3]=l;i=w+64|0;if(!(n&32)){a[i>>2]=a[b>>2];a[i+4>>2]=a[b+4>>2];a[i+8>>2]=a[b+8>>2];a[i+12>>2]=a[b+12>>2];a[w>>2]=a[b>>2];a[w+4>>2]=a[b+4>>2];a[w+8>>2]=a[b+8>>2];a[w+12>>2]=a[b+12>>2];b=w+32|0;a[b>>2]=a[e>>2];a[b+4>>2]=a[e+4>>2];a[b+8>>2]=a[e+8>>2];a[b+12>>2]=a[e+12>>2];f=l;r=t}else{a[i>>2]=a[e>>2];a[i+4>>2]=a[e+4>>2];a[i+8>>2]=a[e+8>>2];a[i+12>>2]=a[e+12>>2];a[w>>2]=a[e>>2];a[w+4>>2]=a[e+4>>2];a[w+8>>2]=a[e+8>>2];a[w+12>>2]=a[e+12>>2];e=w+32|0;a[e>>2]=a[b>>2];a[e+4>>2]=a[b+4>>2];a[e+8>>2]=a[b+8>>2];a[e+12>>2]=a[b+12>>2]}s[w+16>>3]=r+u;s[w+24>>3]=f-c;s[w+48>>3]=r-u;s[w+56>>3]=f+c;do{if(!(n&64))if(!(n&128)){ar(A,w+16|0,3,n>>>4&1^1);break}else{ar(A,w+32|0,3,n>>>4&1^1);break}else ar(A,w,3,n>>>4&1^1)}while(0);k=o;return}function NC(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=+r;f=+f;n=n|0;var l=0.0,t=0.0,c=0.0,b=0.0,u=0,w=0.0,o=0.0,h=0.0,d=0.0,B=0.0,g=0.0,v=0.0,E=0.0,C=0,I=0,Z=0;I=k;k=k+160|0;u=I+144|0;C=I;h=r*4.0;Z=(n&32|0)==0;h=!(h 1.0)|Z?0.0:(f+-1.0)*.05/r;v=+s[i+8>>3];d=-v;E=h*d;g=+s[i>>3];h=g*h;d=B*d;B=g*B;o=+s[e>>3];r=o+g;s[u>>3]=r;w=+s[e+8>>3];f=v+w;s[u+8>>3]=f;g=g*.5+o;v=v*.5+w;i=C+128|0;if(Z){a[i>>2]=a[u>>2];a[i+4>>2]=a[u+4>>2];a[i+8>>2]=a[u+8>>2];a[i+12>>2]=a[u+12>>2];a[C>>2]=a[u>>2];a[C+4>>2]=a[u+4>>2];a[C+8>>2]=a[u+8>>2];a[C+12>>2]=a[u+12>>2];Z=C+64|0;a[Z>>2]=a[e>>2];a[Z+4>>2]=a[e+4>>2];a[Z+8>>2]=a[e+8>>2];a[Z+12>>2]=a[e+12>>2];l=w;t=o;c=w;b=o;f=w;r=o}else{a[i>>2]=a[e>>2];a[i+4>>2]=a[e+4>>2];a[i+8>>2]=a[e+8>>2];a[i+12>>2]=a[e+12>>2];a[C>>2]=a[e>>2];a[C+4>>2]=a[e+4>>2];a[C+8>>2]=a[e+8>>2];a[C+12>>2]=a[e+12>>2];Z=C+64|0;a[Z>>2]=a[u>>2];a[Z+4>>2]=a[u+4>>2];a[Z+8>>2]=a[u+8>>2];a[Z+12>>2]=a[u+12>>2];l=f+B;t=r+d;c=f-B;b=r-d}s[C+16>>3]=r-E;s[C+24>>3]=f-h;s[C+32>>3]=g-d;s[C+40>>3]=v-B;s[C+48>>3]=b;s[C+56>>3]=c;s[C+80>>3]=t;s[C+88>>3]=l;s[C+96>>3]=g+d;s[C+104>>3]=v+B;s[C+112>>3]=r+E;s[C+120>>3]=f+h;do{if(!(n&64))if(!(n&128)){ar(A,C,9,1);break}else{ar(A,C+48|0,6,1);break}else ar(A,C,6,1)}while(0);k=I;return}function RC(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=+r;f=+f;n=n|0;var l=0.0,t=0.0,c=0.0,b=0.0,u=0,w=0,o=0,h=0,d=0,B=0.0,g=0.0;h=k;k=k+64|0;o=h;g=+s[i+8>>3];B=+s[i>>3];c=+s[e>>3];r=c+B;b=+s[e+8>>3];f=b+g;l=c+B*.2;t=b+g*.2;c=c+B*.6;b=b+g*.6;s[o>>3]=l-g;s[o+8>>3]=t+B;u=o+16|0;s[u>>3]=l+g;w=o+24|0;s[w>>3]=t-B;s[o+32>>3]=c+g;s[o+40>>3]=b-B;s[o+48>>3]=c-g;s[o+56>>3]=b+B;if(!(n&64)){if(n&128|0){i=2;n=1;d=3}}else{i=3;n=0;d=3}if((d|0)==3){s[o+(n<<4)>>3]=l;s[o+(n<<4)+8>>3]=t;s[o+(i<<4)>>3]=c;s[o+(i<<4)+8>>3]=b}ar(A,o,4,1);a[o>>2]=a[e>>2];a[o+4>>2]=a[e+4>>2];a[o+8>>2]=a[e+8>>2];a[o+12>>2]=a[e+12>>2];s[u>>3]=r;s[w>>3]=f;tr(A,o,2);k=h;return}function XC(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=+r;f=+f;n=n|0;var l=0.0,t=0.0,c=0,b=0,u=0,w=0,o=0,h=0.0,d=0.0,B=0.0,g=0.0;w=k;k=k+64|0;u=w;t=+s[i+8>>3];d=t*-.4;l=+s[i>>3];h=l*.4;g=+s[e>>3];r=g+l*.8;B=+s[e+8>>3];f=B+t*.8;l=g+l;t=B+t;s[u>>3]=g+d;c=u+8|0;s[c>>3]=B+h;i=u+16|0;s[i>>3]=g-d;b=u+24|0;s[b>>3]=B-h;s[u+32>>3]=r-d;s[u+40>>3]=f-h;s[u+48>>3]=r+d;s[u+56>>3]=f+h;if(!(n&64)){if(n&128|0){a[i>>2]=a[e>>2];a[i+4>>2]=a[e+4>>2];a[i+8>>2]=a[e+8>>2];a[i+12>>2]=a[e+12>>2];i=2;o=5}}else{a[u>>2]=a[e>>2];a[u+4>>2]=a[e+4>>2];a[u+8>>2]=a[e+8>>2];a[u+12>>2]=a[e+12>>2];i=3;o=5}if((o|0)==5){s[u+(i<<4)>>3]=r;s[u+(i<<4)+8>>3]=f}ar(A,u,4,n>>>4&1^1);s[u>>3]=r;s[c>>3]=f;s[u+16>>3]=l;s[b>>3]=t;tr(A,u,2);k=w;return}function HC(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=+r;f=+f;n=n|0;var l=0,t=0,c=0.0,b=0.0,u=0.0,w=0.0,o=0.0,h=0.0;t=k;k=k+80|0;l=t;u=+s[i+8>>3];c=u*-.3333333333333333;o=+s[i>>3];f=o*.3333333333333333;h=+s[e>>3];b=h+o*.5;w=+s[e+8>>3];r=w+u*.5;i=l+64|0;s[l+64>>3]=h+o;s[l+72>>3]=w+u;a[l>>2]=a[i>>2];a[l+4>>2]=a[i+4>>2];a[l+8>>2]=a[i+8>>2];a[l+12>>2]=a[i+12>>2];s[l+16>>3]=b+c;s[l+24>>3]=r+f;i=l+32|0;a[i>>2]=a[e>>2];a[i+4>>2]=a[e+4>>2];a[i+8>>2]=a[e+8>>2];a[i+12>>2]=a[e+12>>2];s[l+48>>3]=b-c;s[l+56>>3]=r-f;do{if(!(n&64)){i=n>>>4&1^1;if(!(n&128)){ar(A,l,4,i);break}else{ar(A,l,3,i);break}}else ar(A,i,3,n>>>4&1^1)}while(0);k=t;return}function UC(A,e,i,r,f,a){A=A|0;e=e|0;i=i|0;r=+r;f=+f;a=a|0;var n=0,l=0,t=0.0,c=0.0,b=0.0;n=k;k=k+32|0;l=n;c=+s[i>>3];f=+s[i+8>>3];r=+z(+(f*f+c*c))*.5;b=+s[e>>3];c=c*.5;s[l>>3]=b+c-r;t=+s[e+8>>3];f=f*.5;s[l+8>>3]=t-r+f;s[l+16>>3]=b+r+c;s[l+24>>3]=t+r+f;fr(A,l,2,a>>>4&1^1);k=n;return}function xC(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=+r;f=+f;n=n|0;var l=0.0,t=0.0,c=0.0,b=0.0,u=0.0,w=0.0,o=0.0,h=0,d=0,B=0,g=0;g=k;k=k+112|0;h=g+48|0;d=g+16|0;B=g;u=f>4.0?f*.125:.5;o=+s[e>>3];w=+s[i>>3];l=+s[e+8>>3];b=+s[i+8>>3];r=b*u;f=w*u;a[d>>2]=a[e>>2];a[d+4>>2]=a[e+4>>2];a[d+8>>2]=a[e+8>>2];a[d+12>>2]=a[e+12>>2];s[d+16>>3]=w+o;s[d+24>>3]=b+l;s[h>>3]=u*(w-b)+o;t=u*(b+w);c=t+l;s[h+8>>3]=c;s[h+48>>3]=t+o;l=u*(b-w)+l;s[h+56>>3]=l;w=r*-.95;b=w+f+o;u=f*1.3333333333333333;if(!(n&32)){r=r*1.3333333333333333;t=f*-.33333333333333326;l=l-r;f=c-r;r=b-u}else{r=r*1.3333333333333333;t=f*2.333333333333333;l=l+r;f=c+r;r=b+u}s[h+16>>3]=r;s[h+24>>3]=f;s[h+32>>3]=t-w+o;s[h+40>>3]=l;tr(A,d,2);if(!(n&64)){if(n&128|0)QR(B,h,3,.5,h,0)}else QR(B,h,3,.5,0,h);lr(A,h,4,0,0,0);k=g;return}function TC(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=+r;f=+f;n=n|0;var l=0;n=k;k=k+32|0;l=n;r=+s[i>>3]+ +s[e>>3];f=+s[i+8>>3]+ +s[e+8>>3];a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2];s[l+16>>3]=r;s[l+24>>3]=f;tr(A,l,2);k=n;return}function jC(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0.0,t=0,c=0,b=0,u=0,w=0.0,o=0.0,h=0,d=0,B=0;u=k;k=k+80|0;t=u+72|0;c=u+8|0;b=u;l=+JC(A,n);l=l*l;s[b>>3]=l;a[f+12>>2]=n;n=f+32|0;A=r+3|0;f=e+(A<<4)|0;a[n>>2]=a[f>>2];a[n+4>>2]=a[f+4>>2];a[n+8>>2]=a[f+8>>2];a[n+12>>2]=a[f+12>>2];if((r|0)>(i|0)?(w=+s[e+(r<<4)>>3]-+s[f>>3],o=+s[e+(r<<4)+8>>3]-+s[e+(A<<4)+8>>3],o*o+w*w >2]=a[d>>2];a[B+4>>2]=a[d+4>>2];a[B+8>>2]=a[d+8>>2];a[B+12>>2]=a[d+12>>2];h=c+32|0;A=e+(r+1<<4)|0;a[h>>2]=a[A>>2];a[h+4>>2]=a[A+4>>2];a[h+8>>2]=a[A+8>>2];a[h+12>>2]=a[A+12>>2];f=c+16|0;i=e+(r+2<<4)|0;a[f>>2]=a[i>>2];a[f+4>>2]=a[i+4>>2];a[f+8>>2]=a[i+8>>2];a[f+12>>2]=a[i+12>>2];a[c>>2]=a[n>>2];a[c+4>>2]=a[n+4>>2];a[c+8>>2]=a[n+8>>2];a[c+12>>2]=a[n+12>>2];a[t>>2]=c;a[t+4>>2]=b;hN(t,92,c,1);a[d>>2]=a[B>>2];a[d+4>>2]=a[B+4>>2];a[d+8>>2]=a[B+8>>2];a[d+12>>2]=a[B+12>>2];a[A>>2]=a[h>>2];a[A+4>>2]=a[h+4>>2];a[A+8>>2]=a[h+8>>2];a[A+12>>2]=a[h+12>>2];a[i>>2]=a[f>>2];a[i+4>>2]=a[f+4>>2];a[i+8>>2]=a[f+8>>2];a[i+12>>2]=a[f+12>>2];b=e+(r+3<<4)|0;a[b>>2]=a[c>>2];a[b+4>>2]=a[c+4>>2];a[b+8>>2]=a[c+8>>2];a[b+12>>2]=a[c+12>>2];k=u;return r|0}function PC(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0;f=a[A>>2]|0;i=+s[e>>3]-+s[f>>3];r=+s[e+8>>3]-+s[f+8>>3];return r*r+i*i<=+s[a[A+4>>2]>>3]|0}function SC(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0.0,c=0,b=0,u=0,w=0,o=0.0,h=0.0,d=0,B=0;w=k;k=k+80|0;c=w+72|0;b=w+8|0;u=w;t=+JC(A,n);t=t*t;s[u>>3]=t;a[f+8>>2]=n;f=f+16|0;A=e+(i<<4)|0;a[f>>2]=a[A>>2];a[f+4>>2]=a[A+4>>2];a[f+8>>2]=a[A+8>>2];a[f+12>>2]=a[A+12>>2];if(!((r|0)>(i|0)?(l=i+3|0,o=+s[A>>3]-+s[e+(l<<4)>>3],h=+s[e+(i<<4)+8>>3]-+s[e+(l<<4)+8>>3],h*h+o*o >2]=a[r>>2];a[b+4>>2]=a[r+4>>2];a[b+8>>2]=a[r+8>>2];a[b+12>>2]=a[r+12>>2];n=b+16|0;i=e+(l+2<<4)|0;a[n>>2]=a[i>>2];a[n+4>>2]=a[i+4>>2];a[n+8>>2]=a[i+8>>2];a[n+12>>2]=a[i+12>>2];d=b+32|0;A=e+(l+1<<4)|0;a[d>>2]=a[A>>2];a[d+4>>2]=a[A+4>>2];a[d+8>>2]=a[A+8>>2];a[d+12>>2]=a[A+12>>2];B=b+48|0;a[B>>2]=a[f>>2];a[B+4>>2]=a[f+4>>2];a[B+8>>2]=a[f+8>>2];a[B+12>>2]=a[f+12>>2];a[c>>2]=B;a[c+4>>2]=u;hN(c,92,b,0);u=e+(l<<4)|0;a[u>>2]=a[B>>2];a[u+4>>2]=a[B+4>>2];a[u+8>>2]=a[B+8>>2];a[u+12>>2]=a[B+12>>2];a[A>>2]=a[d>>2];a[A+4>>2]=a[d+4>>2];a[A+8>>2]=a[d+8>>2];a[A+12>>2]=a[d+12>>2];a[i>>2]=a[n>>2];a[i+4>>2]=a[n+4>>2];a[i+8>>2]=a[n+8>>2];a[i+12>>2]=a[n+12>>2];a[r>>2]=a[b>>2];a[r+4>>2]=a[b+4>>2];a[r+8>>2]=a[b+8>>2];a[r+12>>2]=a[b+12>>2];k=w;return l|0}function OC(A,e,i,r,f,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;var t=0.0,c=0.0,b=0,u=0.0,w=0.0,k=0.0,o=0.0,h=0.0,d=0,B=0.0,g=0.0,v=0,E=0,C=0;v=(n|0)!=0;b=(l|0)!=0;if(!((r|0)==(i|0)&(v&b))){if(b){t=+JC(A,l);c=+s[e+(r<<4)>>3];o=+s[e+(r<<4)+8>>3];b=r+3|0;d=e+(b<<4)|0;w=+s[d>>3];b=e+(b<<4)+8|0;k=+s[b>>3];g=c-w;B=o-k;g=+z(+(B*B+g*g))*.9;t=t>=g?g:t;if(o==k){u=(c >3]=c;s[e+(C<<4)+8>>3]=o;r=e+(r+2<<4)|0;s[d>>3]=u;s[b>>3]=t;a[r>>2]=a[d>>2];a[r+4>>2]=a[d+4>>2];a[r+8>>2]=a[d+8>>2];a[r+12>>2]=a[d+12>>2];a[f+12>>2]=l;s[f+32>>3]=w;s[f+40>>3]=k}if(v){u=+JC(A,n);b=e+(i<<4)|0;c=+s[b>>3];t=+s[e+(i<<4)+8>>3];C=i+3|0;k=+s[e+(C<<4)>>3];o=+s[e+(C<<4)+8>>3];g=c-k;B=t-o;g=+z(+(B*B+g*g))*.9;u=u>=g?g:u;if(t==o){w=(c >3]=w;s[e+(C<<4)+8>>3]=u;a[b>>2]=a[E>>2];a[b+4>>2]=a[E+4>>2];a[b+8>>2]=a[E+8>>2];a[b+12>>2]=a[E+12>>2];E=i+2|0;s[e+(E<<4)>>3]=k;s[e+(E<<4)+8>>3]=o;E=16}}else{d=e+(r<<4)|0;B=+s[d>>3];g=+s[e+(r<<4)+8>>3];b=r+3|0;v=e+(b<<4)|0;c=+s[v>>3];b=e+(b<<4)+8|0;t=+s[b>>3];u=+JC(A,n);h=+JC(A,l);w=B-c;o=g-t;w=+z(+(o*o+w*w));C=!(h+u>=w);w=w*.3333333333333333;u=C?u:w;w=C?h:w;if(g==t){C=B >3]=h;s[e+(C<<4)+8>>3]=k;a[d>>2]=a[E>>2];a[d+4>>2]=a[E+4>>2];a[d+8>>2]=a[E+8>>2];a[d+12>>2]=a[E+12>>2];E=e+(r+2<<4)|0;s[v>>3]=o;s[b>>3]=u;a[E>>2]=a[v>>2];a[E+4>>2]=a[v+4>>2];a[E+8>>2]=a[v+8>>2];a[E+12>>2]=a[v+12>>2];a[f+12>>2]=l;s[f+32>>3]=B;s[f+40>>3]=g;E=16}if((E|0)==16){a[f+8>>2]=n;s[f+16>>3]=c;s[f+24>>3]=t}return}function KC(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=+r;f=f|0;var a=0.0,n=0.0,l=0.0,t=0.0,c=0.0,b=0.0,u=0.0,w=0.0,k=0.0;w=+s[e>>3];c=+s[i>>3]-w;k=+s[e+8>>3];b=+s[i+8>>3]-k;t=r*10.0/(+z(+(c*c+b*b))+.0001);c=t*((c>=0.0?.0001:-.0001)+c);t=((b>=0.0?.0001:-.0001)+b)*t;b=c*.5;u=t*.5;l=w-u;a=k-b;w=u+w;b=k+b;k=l+c;u=a+t;c=w+c;t=b+t;n=k>c?k:c;n=w>n?w:n;r=u>t?u:t;r=b>r?b:r;c=k >3]=l >3]=a >3]=l>n?l:n;s[A+24>>3]=a>r?a:r;return}function _C(A,e,i,r,f,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=+f;n=+n;l=l|0;var t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0.0,B=0.0,g=0.0;h=k;k=k+48|0;b=h+32|0;c=h+16|0;o=h;u=(a[A+16>>2]|0)+12|0;w=a[u>>2]|0;a[u>>2]=e;rr(A,a[(a[A>>2]|0)+336>>2]|0);ur(A,n);g=+s[r>>3]-+s[i>>3];e=r+8|0;B=+s[e>>3]-+s[i+8>>3];d=10.0/(+z(+(g*g+B*B))+.0001);s[r>>3]=d*((g>=0.0?.0001:-.0001)+g);s[e>>3]=((B>=0.0?.0001:-.0001)+B)*d;e=0;while(1){if((e|0)>=4)break;t=l>>(e<<3)&255;if(!t)break;a[c>>2]=a[i>>2];a[c+4>>2]=a[i+4>>2];a[c+8>>2]=a[i+8>>2];a[c+12>>2]=a[i+12>>2];a[b>>2]=a[r>>2];a[b+4>>2]=a[r+4>>2];a[b+8>>2]=a[r+8>>2];a[b+12>>2]=a[r+12>>2];qC(o,A,c,b,f,n,t);a[i>>2]=a[o>>2];a[i+4>>2]=a[o+4>>2];a[i+8>>2]=a[o+8>>2];a[i+12>>2]=a[o+12>>2];e=e+1|0}a[u>>2]=w;k=h;return}function qC(A,e,i,r,f,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=+f;n=+n;l=l|0;var t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0.0;h=k;k=k+32|0;b=h+16|0;c=h;u=l&15;t=1400;while(1){w=a[t>>2]|0;if(!w)break;if((u|0)==(w|0)){o=4;break}t=t+24|0}if((o|0)==4){d=+s[t+8>>3]*f;s[r>>3]=d*+s[r>>3];w=r+8|0;s[w>>3]=d*+s[w>>3];o=a[t+16>>2]|0;a[c>>2]=a[i>>2];a[c+4>>2]=a[i+4>>2];a[c+8>>2]=a[i+8>>2];a[c+12>>2]=a[i+12>>2];a[b>>2]=a[r>>2];a[b+4>>2]=a[r+4>>2];a[b+8>>2]=a[r+8>>2];a[b+12>>2]=a[r+12>>2];p5[o&15](e,c,b,f,n,l);s[i>>3]=+s[r>>3]+ +s[i>>3];o=i+8|0;s[o>>3]=+s[w>>3]+ +s[o>>3]}a[A>>2]=a[i>>2];a[A+4>>2]=a[i+4>>2];a[A+8>>2]=a[i+8>>2];a[A+12>>2]=a[i+12>>2];k=h;return}function $C(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;n=t+8|0;f=t;e=Ho(A,99796)|0;if((e|0)!=0?(r[e>>0]|0)!=0:0){i=e;l=5}else{e=Ho(A,99808)|0;if((e|0)!=0?(r[e>>0]|0)!=0:0){i=e;l=5}else e=0}if((l|0)==5){e=LC(i,0,120)|0;if(!e){a[f>>2]=Vh(A)|0;ao(0,99815,f)|0;a[n>>2]=i;ao(3,99868,n)|0}}k=t;return e|0}function AI(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;n=k;k=k+16|0;f=qF(304)|0;if(!f)ao(1,99876,n)|0;r=A+16|0;A=a[r>>2]|0;a[f>>2]=A;a[r>>2]=f;if(!A){a[f+144>>2]=3;a[f+148>>2]=0;s[f+152>>3]=1.0}else{e=f+16|0;i=A+16|0;r=e+40|0;do{a[e>>2]=a[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(r|0));e=f+56|0;i=A+56|0;r=e+40|0;do{a[e>>2]=a[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(r|0));a[f+144>>2]=a[A+144>>2];a[f+148>>2]=a[A+148>>2];s[f+152>>3]=+s[A+152>>3];a[f+136>>2]=a[A+136>>2];e=f+96|0;i=A+96|0;r=e+40|0;do{a[e>>2]=a[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(r|0))}k=n;return f|0}function eI(A){A=A|0;var e=0;A=A+16|0;e=a[A>>2]|0;if(!e)gA(99902,99906,117,99913);else{L2(a[e+212>>2]|0);L2(a[e+208>>2]|0);L2(a[e+216>>2]|0);L2(a[e+220>>2]|0);L2(a[e+224>>2]|0);L2(a[e+228>>2]|0);L2(a[e+232>>2]|0);L2(a[e+236>>2]|0);L2(a[e+240>>2]|0);L2(a[e+244>>2]|0);L2(a[e+248>>2]|0);L2(a[e+252>>2]|0);L2(a[e+256>>2]|0);L2(a[e+272>>2]|0);L2(a[e+284>>2]|0);L2(a[e+280>>2]|0);a[A>>2]=a[e>>2];L2(e);return}}function iI(A,e,i,n,l,t,c){A=A|0;e=e|0;i=i|0;n=n|0;l=l|0;t=t|0;c=c|0;var s=0,b=0;b=a[A+16>>2]|0;s=a[A+152>>2]|0;if((e|0)!=0&(s&32768|0)!=0)a[b+192>>2]=e;if(((s&65536|0)!=0?(a[b+212>>2]=PF(t,c)|0,(i|0)!=0):0)?(r[i>>0]|0)!=0:0){a[b+208>>2]=PF(i,c)|0;A=1}else A=0;do{if(s&4194304){if(n|0?r[n>>0]|0:0){a[b+228>>2]=PF(n,c)|0;A=b+260|0;f[A>>1]=f[A>>1]|1;A=1;break}e=a[b+192>>2]|0;if(e){a[b+228>>2]=b3(e)|0;A=1}}}while(0);if((l|0)!=0&(s&8388608|0)!=0?(r[l>>0]|0)!=0:0){a[b+244>>2]=PF(l,c)|0;A=1}return A|0}function rI(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0;c=k;k=k+80|0;t=c;l=c+8|0;n=a[(a[A>>2]|0)+168>>2]|0;f=a[(a[(a[n+16>>2]|0)+8>>2]|0)+92>>2]|0;fI(A,i);A=Ho(e,141060)|0;if((A|0)!=0?(r[A>>0]|0)!=0:0){uo(i,A)|0;f=i+4|0;A=a[f>>2]|0;if(A>>>0>=(a[i+8>>2]|0)>>>0){so(i,1)|0;A=a[f>>2]|0}r[A>>0]=0;A=a[i>>2]|0;a[f>>2]=A}else{if((n|0)!=(e|0)&(f|0)!=0){uo(i,f)|0;f=i+4|0;A=a[f>>2]|0;if(A>>>0>=(a[i+8>>2]|0)>>>0){so(i,1)|0;A=a[f>>2]|0}a[f>>2]=A+1;r[A>>0]=95}switch(Md(e)|0){case 0:{f=(n|0)==(e|0)?111494:99927;A=(a[e>>2]|0)>>>4;break}case 1:{f=111481;A=(a[e>>2]|0)>>>4;break}case 2:{f=111450;A=(a[e>>2]|0)>>>4;break}default:{f=0;A=0}}uo(i,f)|0;a[t>>2]=A;S4(l,99933,t)|0;uo(i,l)|0;f=i+4|0;A=a[f>>2]|0;if(A>>>0>=(a[i+8>>2]|0)>>>0){so(i,1)|0;A=a[f>>2]|0}r[A>>0]=0;A=a[i>>2]|0;a[f>>2]=A}k=c;return A|0}function fI(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0;t=k;k=k+144|0;l=t;n=t+8|0;i=a[A+160>>2]|0;if((i|0)>1?a[A+152>>2]&64|0:0){uo(e,a[(a[(a[A>>2]|0)+308>>2]|0)+(i<<2)>>2]|0)|0;f=e+4|0;i=a[f>>2]|0;if(i>>>0>=(a[e+8>>2]|0)>>>0){so(e,1)|0;i=a[f>>2]|0}a[f>>2]=i+1;r[i>>0]=95}f=a[A+196>>2]|0;i=a[A+200>>2]|0;if((f|0)>0|(i|0)>0){a[l>>2]=f;a[l+4>>2]=i;S4(n,99937,l)|0;uo(e,n)|0}k=t;return}function aI(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0,n=0.0,l=0,t=0.0,b=0.0,u=0,w=0,o=0,h=0,d=0.0,B=0;B=k;k=k+48|0;o=B+16|0;f=B+32|0;h=B;d=+s[(a[A+16>>2]|0)+152>>3];w=nI(i,0,f)|0;if((w+-1|0)>>>0>=2){r=+s[e+16>>3];t=(r+ +s[e>>3])*.5;s[h>>3]=t;n=+s[e+24>>3];b=(n+ +s[e+8>>3])*.5;s[h+8>>3]=b;t=r-t;b=n-b;u=d>.5;if(u)ur(A,.5);l=a[f>>2]|0;n=0.0;f=a[l+8>>2]|0;while(1){i=a[f>>2]|0;if(!i)break;e=f+4|0;if(+c[e>>2]==0.0)r=n;else{er(A,i);if(!(a[f+12>>2]|0))r=6.283185307179586;else r=+c[e>>2]*6.283185307179586+n;a[o>>2]=a[h>>2];a[o+4>>2]=a[h+4>>2];a[o+8>>2]=a[h+8>>2];a[o+12>>2]=a[h+12>>2];e=Qf(o,t,b,n,r)|0;lr(A,a[e>>2]|0,a[e+4>>2]|0,0,0,1);Zc(e)}n=r;f=f+12|0}if(u)ur(A,d);lI(l)}k=B;return w|0}function nI(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0.0,s=0.0,b=0.0,u=0,w=0,o=0,h=0,d=0;d=k;k=k+16|0;w=d+8|0;u=d;h=qF(12)|0;l=b3(A)|0;A:do{if(!e){e=1;f=l;while(1){switch(r[f>>0]|0){case 0:break A;case 58:{e=e+1|0;break}default:{}}f=f+1|0}}}while(0);a[h+4>>2]=l;o=qF((e*12|0)+12|0)|0;a[h+8>>2]=o;b=1.0;n=0;e=0;f=l;while(1){f=t3(f,107984)|0;if(!f){f=20;break}t=+tI(f);if(!(t>=0.0)){f=17;break}s=t-b;if(s>0.0)if((a[5156]|0)!=0?!(s<1.0e-05&s>-1.0e-05):0){a[u>>2]=A;ao(0,99948,u)|0;a[5156]=0;t=b;e=3}else t=b;s=b-t;if(t>0.0)r[o+(n*12|0)+8>>0]=1;if(r[f>>0]|0)a[o+(n*12|0)>>2]=f;f=n+1|0;c[o+(n*12|0)+4>>2]=t;if(s<1.0e-05&s>-1.0e-05){n=f;f=30;break}else{b=s;n=f;f=0}}A:do{if((f|0)==17){if(!(a[5156]|0))e=1;else{a[w>>2]=A;ao(1,99983,w)|0;a[5156]=0;e=2}lI(h)}else if((f|0)==20)if(b>0.0){f=0;l=0;while(1){if((f|0)>=(n|0))break;w=l+(+c[o+(f*12|0)+4>>2]==0.0&1)|0;f=f+1|0;l=w}if((l|0)<=0){f=o+((n+-1|0)*12|0)+4|0;c[f>>2]=b+ +c[f>>2];f=30;break}t=b/+(l|0);f=0;while(1){if((f|0)>=(n|0)){f=30;break A}l=o+(f*12|0)+4|0;if(+c[l>>2]==0.0)c[l>>2]=t;f=f+1|0}}else f=30}while(0);if((f|0)==30){while(1){f=n+-1|0;if((n|0)<=0)break;if(+c[o+(f*12|0)+4>>2]>0.0)break;else n=f}a[o+(n*12|0)>>2]=0;a[h>>2]=n;a[i>>2]=h}k=d;return e|0}function lI(A){A=A|0;L2(a[A+4>>2]|0);L2(a[A+8>>2]|0);L2(A);return}function tI(A){A=A|0;var e=0.0,i=0,f=0,n=0;f=k;k=k+16|0;i=f;A=G1(A,59)|0;if(!A)e=0.0;else{n=A+1|0;r[A>>0]=0;e=+A8(n,i);e=(e>=0.0?(a[i>>2]|0)!=(n|0):0)?e:-1.0}k=f;return+e}function cI(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,n=0,l=0,t=0,b=0.0,u=0.0,w=0,o=0,h=0,d=0,B=0.0,g=0;g=k;k=k+80|0;n=g+64|0;d=g;B=+s[(a[A+16>>2]|0)+152>>3];h=nI(i,0,n)|0;if((h+-1|0)>>>0>=2){if(!r){a[d>>2]=a[e>>2];a[d+4>>2]=a[e+4>>2];a[d+8>>2]=a[e+8>>2];a[d+12>>2]=a[e+12>>2];o=d+16|0;w=e+16|0;a[o>>2]=a[w>>2];a[o+4>>2]=a[w+4>>2];a[o+8>>2]=a[w+8>>2];a[o+12>>2]=a[w+12>>2];o=d+32|0;w=e+32|0;a[o>>2]=a[w>>2];a[o+4>>2]=a[w+4>>2];a[o+8>>2]=a[w+8>>2];a[o+12>>2]=a[w+12>>2];o=d+48|0;w=e+48|0;a[o>>2]=a[w>>2];a[o+4>>2]=a[w+4>>2];a[o+8>>2]=a[w+8>>2];a[o+12>>2]=a[w+12>>2]}else{o=e+32|0;a[d>>2]=a[o>>2];a[d+4>>2]=a[o+4>>2];a[d+8>>2]=a[o+8>>2];a[d+12>>2]=a[o+12>>2];o=d+16|0;w=e+48|0;a[o>>2]=a[w>>2];a[o+4>>2]=a[w+4>>2];a[o+8>>2]=a[w+8>>2];a[o+12>>2]=a[w+12>>2];o=d+32|0;a[o>>2]=a[e>>2];a[o+4>>2]=a[e+4>>2];a[o+8>>2]=a[e+8>>2];a[o+12>>2]=a[e+12>>2];o=d+48|0;w=e+16|0;a[o>>2]=a[w>>2];a[o+4>>2]=a[w+4>>2];a[o+8>>2]=a[w+8>>2];a[o+12>>2]=a[w+12>>2]}t=d+16|0;b=+s[t>>3];f=+s[d>>3];u=b-f;w=d+32|0;s[w>>3]=f;s[t>>3]=f;o=B>.5;if(o)ur(A,.5);n=a[n>>2]|0;l=d+48|0;r=a[n+8>>2]|0;while(1){i=a[r>>2]|0;if(!i)break;e=r+4|0;if(!(+c[e>>2]==0.0)){er(A,i);if(!(a[r+12>>2]|0))f=b;else f=u*+c[e>>2]+ +s[d>>3];s[w>>3]=f;s[t>>3]=f;ar(A,d,4,1);f=+s[t>>3];s[l>>3]=f;s[d>>3]=f}r=r+12|0}if(o)ur(A,B);lI(n)}k=g;return h|0}function sI(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;i=a[A+16>>2]|0;r=a[A+152>>2]|0;if(r&4259840|0){f=r&131072;n=f>>>16^2;a[i+264>>2]=n;l=i+268|0;a[l>>2]=n+2;n=i+272|0;L2(a[n>>2]|0);i=qF(a[l>>2]<<4)|0;a[n>>2]=i;a[i>>2]=a[e>>2];a[i+4>>2]=a[e+4>>2];a[i+8>>2]=a[e+8>>2];a[i+12>>2]=a[e+12>>2];n=i+16|0;e=e+16|0;a[n>>2]=a[e>>2];a[n+4>>2]=a[e+4>>2];a[n+8>>2]=a[e+8>>2];a[n+12>>2]=a[e+12>>2];if(!(r&8192))zi(A,i,i,2)|0;if(!f)mF(i)}return}function bI(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0,a=0,n=0,l=0.0,t=0.0,c=0.0,b=0.0,u=0.0,w=0,o=0,h=0;h=k;k=k+144|0;i=h+80|0;f=h+16|0;a=h;c=+s[e>>3];w=A+16|0;b=+s[w>>3];if(!(((((((((!(c>b)?(u=+s[A>>3],!(c>3],l=+s[A+24>>3],!(r>l)):0)?(t=+s[A+8>>3],!(r >3],!(c>b|c>3],!(c>l|c >3],!(c>b|c>3],!(c>l|c >3],!(c>b|c>3],!(u>l|u >3];if(!(r>+s[w>>3])){if(r<+s[A>>3]){i=A;o=16}}else{i=w;o=16}if((o|0)==16){o=0;s[i>>3]=r}r=+s[e+(f<<4)+8>>3];if(!(r>+s[a>>3])){if(r<+s[n>>3]){i=A;o=19}}else{i=w;o=19}if((o|0)==19){o=0;s[i+8>>3]=r}f=f+1|0}}}while(0);k=h;return}function uI(A){A=A|0;var e=0,i=0,r=0,f=0,n=0.0,l=0,t=0;e=k;k=k+48|0;i=e+32|0;r=e+16|0;f=e;t=A+48|0;l=A+16|0;a[f>>2]=a[A>>2];a[f+4>>2]=a[A+4>>2];a[f+8>>2]=a[A+8>>2];a[f+12>>2]=a[A+12>>2];a[r>>2]=a[t>>2];a[r+4>>2]=a[t+4>>2];a[r+8>>2]=a[t+8>>2];a[r+12>>2]=a[t+12>>2];a[i>>2]=a[l>>2];a[i+4>>2]=a[l+4>>2];a[i+8>>2]=a[l+8>>2];a[i+12>>2]=a[l+12>>2];n=+zF(f,r,i);l=A+32|0;a[f>>2]=a[A>>2];a[f+4>>2]=a[A+4>>2];a[f+8>>2]=a[A+8>>2];a[f+12>>2]=a[A+12>>2];a[r>>2]=a[t>>2];a[r+4>>2]=a[t+4>>2];a[r+8>>2]=a[t+8>>2];a[r+12>>2]=a[t+12>>2];a[i>>2]=a[l>>2];a[i+4>>2]=a[l+4>>2];a[i+8>>2]=a[l+8>>2];a[i+12>>2]=a[l+12>>2];A=n<4.0&+zF(f,r,i)<4.0&1;k=e;return A|0}function wI(A,e){A=A|0;e=e|0;var i=0,f=0,n=0.0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0.0,Y=0.0,D=0.0,M=0.0,F=0,V=0;y=k;k=k+272|0;v=y+256|0;E=y+224|0;C=y+192|0;I=y+128|0;Z=y+64|0;G=y;m=y+160|0;Q=y+96|0;L=y+32|0;g=a[e+16>>2]|0;B=a[g+144>>2]|0;d=g+16|0;a[I>>2]=a[d>>2];a[I+4>>2]=a[d+4>>2];a[I+8>>2]=a[d+8>>2];a[I+12>>2]=a[d+12>>2];a[I+16>>2]=a[d+16>>2];a[I+20>>2]=a[d+20>>2];a[I+24>>2]=a[d+24>>2];a[I+28>>2]=a[d+28>>2];g=a[(a[g+8>>2]|0)+88>>2]|0;a[G>>2]=0;a[G+4>>2]=0;a[G+8>>2]=0;a[G+12>>2]=0;a[G+16>>2]=0;a[G+20>>2]=0;a[G+24>>2]=0;a[G+28>>2]=0;if(!g){a[A>>2]=a[I>>2];a[A+4>>2]=a[I+4>>2];a[A+8>>2]=a[I+8>>2];a[A+12>>2]=a[I+12>>2];a[A+16>>2]=a[I+16>>2];a[A+20>>2]=a[I+20>>2];a[A+24>>2]=a[I+24>>2];a[A+28>>2]=a[I+28>>2]}else{e=I+16|0;if(+s[I>>3]==+s[e>>3]?(i=I+8|0,f=I+24|0,+s[i>>3]==+s[f>>3]):0){s[i>>3]=1797693134862315708145274.0e284;s[I>>3]=1797693134862315708145274.0e284;s[f>>3]=-1797693134862315708145274.0e284;s[e>>3]=-1797693134862315708145274.0e284}t=E+8|0;c=E+16|0;b=E+24|0;u=Z+16|0;w=Z+24|0;o=B+144|0;h=C+16|0;d=g+12|0;e=0;f=a[g+8>>2]|0;i=0;n=0.0;l=0;while(1){if((l|0)>=(a[g>>2]|0))break;a[Z>>2]=a[G>>2];a[Z+4>>2]=a[G+4>>2];a[Z+8>>2]=a[G+8>>2];a[Z+12>>2]=a[G+12>>2];a[Z+16>>2]=a[G+16>>2];a[Z+20>>2]=a[G+20>>2];a[Z+24>>2]=a[G+24>>2];a[Z+28>>2]=a[G+28>>2];switch(a[f>>2]|0){case 1:case 0:{D=+s[f+8>>3];M=+s[f+24>>3];s[E>>3]=D-M;z=+s[f+16>>3];Y=+s[f+32>>3];s[t>>3]=z-Y;s[c>>3]=M+D;s[b>>3]=Y+z;W=f+80|0;a[W>>2]=a[E>>2];a[W+4>>2]=a[E+4>>2];a[W+8>>2]=a[E+8>>2];a[W+12>>2]=a[E+12>>2];W=f+96|0;a[W>>2]=a[c>>2];a[W+4>>2]=a[c+4>>2];a[W+8>>2]=a[c+8>>2];a[W+12>>2]=a[c+12>>2];a[v>>2]=a[E>>2];a[v+4>>2]=a[E+4>>2];a[v+8>>2]=a[E+8>>2];a[v+12>>2]=a[E+12>>2];kI(I,v);a[v>>2]=a[c>>2];a[v+4>>2]=a[c+4>>2];a[v+8>>2]=a[c+8>>2];a[v+12>>2]=a[c+12>>2];kI(I,v);break}case 3:case 2:{W=f+80|0;F=f+8|0;oI(m,a[F+4>>2]|0,a[F>>2]|0,I);a[W>>2]=a[m>>2];a[W+4>>2]=a[m+4>>2];a[W+8>>2]=a[m+8>>2];a[W+12>>2]=a[m+12>>2];a[W+16>>2]=a[m+16>>2];a[W+20>>2]=a[m+20>>2];a[W+24>>2]=a[m+24>>2];a[W+28>>2]=a[m+28>>2];break}case 5:case 4:{F=f+80|0;W=f+8|0;oI(Q,a[W+4>>2]|0,a[W>>2]|0,I);a[F>>2]=a[Q>>2];a[F+4>>2]=a[Q+4>>2];a[F+8>>2]=a[Q+8>>2];a[F+12>>2]=a[Q+12>>2];a[F+16>>2]=a[Q+16>>2];a[F+20>>2]=a[Q+20>>2];a[F+24>>2]=a[Q+24>>2];a[F+28>>2]=a[Q+28>>2];break}case 6:{F=f+80|0;W=f+8|0;oI(L,a[W+4>>2]|0,a[W>>2]|0,I);a[F>>2]=a[L>>2];a[F+4>>2]=a[L+4>>2];a[F+8>>2]=a[L+8>>2];a[F+12>>2]=a[L+12>>2];a[F+16>>2]=a[L+16>>2];a[F+20>>2]=a[L+20>>2];a[F+24>>2]=a[L+24>>2];a[F+28>>2]=a[L+28>>2];break}case 7:{F=f+112|0;a[F>>2]=qF(56)|0;W=b3(a[f+40>>2]|0)|0;V=a[F>>2]|0;a[V>>2]=W;r[V+48>>0]=r[100029+(a[f+24>>2]|0)>>0]|0;a[Z>>2]=i;s[u>>3]=n;a[w>>2]=a[w>>2]&-128|e&127;V=a[o>>2]|0;V=y5[a[V>>2]&63](V,Z,1)|0;W=a[F>>2]|0;a[W+4>>2]=V;AR(v,B,W);hI(C,+s[f+8>>3],+s[f+16>>3],a[F>>2]|0);F=f+80|0;a[F>>2]=a[C>>2];a[F+4>>2]=a[C+4>>2];a[F+8>>2]=a[C+8>>2];a[F+12>>2]=a[C+12>>2];a[F+16>>2]=a[C+16>>2];a[F+20>>2]=a[C+20>>2];a[F+24>>2]=a[C+24>>2];a[F+28>>2]=a[C+28>>2];a[v>>2]=a[C>>2];a[v+4>>2]=a[C+4>>2];a[v+8>>2]=a[C+8>>2];a[v+12>>2]=a[C+12>>2];kI(I,v);a[v>>2]=a[h>>2];a[v+4>>2]=a[h+4>>2];a[v+8>>2]=a[h+8>>2];a[v+12>>2]=a[h+12>>2];kI(I,v);if(!(a[d>>2]|0))a[d>>2]=109;break}case 10:{i=a[f+16>>2]|0;n=+s[f+8>>3];break}case 15:{e=a[f+8>>2]|0;break}default:{}}f=f+120|0;l=l+1|0}a[A>>2]=a[I>>2];a[A+4>>2]=a[I+4>>2];a[A+8>>2]=a[I+8>>2];a[A+12>>2]=a[I+12>>2];a[A+16>>2]=a[I+16>>2];a[A+20>>2]=a[I+20>>2];a[A+24>>2]=a[I+24>>2];a[A+28>>2]=a[I+28>>2]}k=y;return}function kI(A,e){A=A|0;e=e|0;var i=0.0,r=0;i=+s[e>>3];r=A+16|0;if(i>+s[r>>3])s[r>>3]=i;if(i<+s[A>>3])s[A>>3]=i;i=+s[e+8>>3];e=A+24|0;if(i>+s[e>>3])s[e>>3]=i;e=A+8|0;if(i<+s[e>>3])s[e>>3]=i;return}function oI(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0;d=k;k=k+48|0;c=d+32|0;u=d;f=+s[e>>3];w=u+16|0;s[w>>3]=f;s[u>>3]=f;f=+s[e+8>>3];o=u+24|0;s[o>>3]=f;b=u+8|0;s[b>>3]=f;t=1;while(1){if((t|0)>=(i|0))break;l=e+24|0;f=+s[l>>3];if(!(f<+s[u>>3])){if(f>+s[w>>3]){n=w;h=5}}else{n=u;h=5}if((h|0)==5){h=0;s[n>>3]=f}f=+s[e+32>>3];if(!(f<+s[b>>3])){if(f>+s[o>>3]){e=w;h=8}}else{e=u;h=8}if((h|0)==8){h=0;s[e+8>>3]=f}t=t+1|0;e=l}a[c>>2]=a[u>>2];a[c+4>>2]=a[u+4>>2];a[c+8>>2]=a[u+8>>2];a[c+12>>2]=a[u+12>>2];kI(r,c);a[c>>2]=a[w>>2];a[c+4>>2]=a[w+4>>2];a[c+8>>2]=a[w+8>>2];a[c+12>>2]=a[w+12>>2];kI(r,c);a[A>>2]=a[u>>2];a[A+4>>2]=a[u+4>>2];a[A+8>>2]=a[u+8>>2];a[A+12>>2]=a[u+12>>2];a[A+16>>2]=a[u+16>>2];a[A+20>>2]=a[u+20>>2];a[A+24>>2]=a[u+24>>2];a[A+28>>2]=a[u+28>>2];k=d;return}function hI(A,e,i,f){A=A|0;e=+e;i=+i;f=f|0;var a=0.0,n=0,l=0,t=0,c=0.0,b=0,u=0;u=k;k=k+16|0;l=u+8|0;t=u;a=+s[f+32>>3];c=+s[f+40>>3];switch(r[f+48>>0]|0){case 108:{s[l>>3]=e;a=a+e;n=t;b=5;break}case 110:{a=a*.5;s[l>>3]=e-a;a=a+e;n=t;b=5;break}case 114:{s[t>>3]=e;a=e-a;n=l;b=5;break}default:{e=0.0;a=0.0}}if((b|0)==5){s[n>>3]=a;e=+s[l>>3];a=+s[t>>3]}i=+s[f+16>>3]+i;s[A>>3]=e;s[A+8>>3]=i-c;s[A+16>>3]=a;s[A+24>>3]=i;k=u;return}function dI(A){A=A|0;if((a[A>>2]|0)==7)xF(a[A+112>>2]|0,1);return}function BI(A,e){A=A|0;e=e|0;var i=0,f=0.0,n=0.0,l=0.0,t=0,c=0,b=0,u=0.0;b=k;k=k+16|0;c=b;t=a[A+152>>2]|0;u=+s[A+432>>3];l=+s[A+352>>3]*.013888888888888888;f=l*u;s[A+488>>3]=f;n=+s[A+440>>3];l=l*n;s[A+496>>3]=l;s[A+520>>3]=u*.013888888888888888;i=A+528|0;s[i>>3]=n*.013888888888888888;if(t&4096|0)s[i>>3]=n*-.013888888888888888;i=(a[A+360>>2]|0)==0;u=+((a[A+448>>2]|0)>>>0);n=+((a[A+452>>2]|0)>>>0);s[A+368>>3]=(i?u:n)/f;s[A+376>>3]=(i?n:u)/l;cr(A,dR(e,Yo(e,0,101522,0)|0,195059)|0);a[A+160>>2]=0;gI(A,e);if(t&2|0)vI(A,e);i=cd(e)|0;while(1){if(!i)break;r[(a[i+16>>2]|0)+116>>0]=0;i=sd(e,i)|0}EI(A,c);while(1){if(!((CI(A)|0)<<24>>24))break;if((II(A)|0)>1)Vi(A);ZI(A);while(1){if(!((GI(A)|0)<<24>>24))break;mI(A,e);QI(A)}if((II(A)|0)>1)Ji(A);LI(A,c)}yI(A);k=b;return}function gI(A,e){A=A|0;e=e|0;var i=0;i=AI(A)|0;a[i+4>>2]=0;a[i+8>>2]=e;a[i+12>>2]=0;TM(A,a[(a[e+16>>2]|0)+12>>2]|0,e);Yi(A,e);return}function vI(A,e){A=A|0;e=e|0;var i=0,f=0,a=0,n=0;er(A,134800);i=Ho(e,140977)|0;if(i|0?r[i>>0]|0:0)er(A,i);i=Ho(e,101446)|0;if(i|0?r[i>>0]|0:0)$i(A,i);rF(A,e);n=cd(e)|0;while(1){if(!n)break;i=Ho(n,140823)|0;if(i|0?r[i>>0]|0:0)$i(A,i);i=Ho(n,137729)|0;if(i|0?r[i>>0]|0:0)er(A,i);i=Ho(n,101418)|0;do{if(i|0?r[i>>0]|0:0){if(!(G1(i,58)|0)){$i(A,i);break}f=b3(i)|0;i=f;while(1){i=t3(i,107984)|0;if(!i)break;if(!(r[i>>0]|0)){i=0;continue}$i(A,i);i=0}L2(f)}}while(0);i=Ho(n,101446)|0;if(i|0?r[i>>0]|0:0)$i(A,i);a=Oo(e,n)|0;while(1){if(!a)break;i=Ho(a,140823)|0;do{if(i|0?r[i>>0]|0:0){if(!(G1(i,58)|0)){$i(A,i);break}f=b3(i)|0;i=f;while(1){i=t3(i,107984)|0;if(!i)break;if(!(r[i>>0]|0)){i=0;continue}$i(A,i);i=0}L2(f)}}while(0);i=Ho(a,101446)|0;if(i|0?r[i>>0]|0:0)$i(A,i);a=_o(e,a)|0}n=sd(e,n)|0}return}function EI(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;r=t+8|0;n=t;l=a[A>>2]|0;i=a[l+312>>2]|0;f=A+156|0;a[f>>2]=i;l=a[l+316>>2]|0;if(!l)if((i|0)>1?(a[A+152>>2]&64|0)==0:0){a[r>>2]=a[A+52>>2];ao(0,100567,r)|0;a[f>>2]=1;r=1;i=0}else{r=1;i=0}else{i=l+4|0;if((a[l>>2]|0)>1?(a[A+152>>2]&64|0)==0:0){a[n>>2]=a[A+52>>2];ao(0,100567,n)|0;a[l+8>>2]=(a[f>>2]|0)+1}r=a[i>>2]|0;i=l+8|0}a[A+160>>2]=r;a[e>>2]=i;k=t;return}function CI(A){A=A|0;return(a[A+160>>2]|0)<=(a[A+156>>2]|0)|0}function II(A){A=A|0;var e=0;e=a[(a[A>>2]|0)+316>>2]|0;return a[((e|0)==0?A+156|0:e)>>2]|0}function ZI(A){A=A|0;var e=0,i=0;i=A+172|0;e=a[i+4>>2]|0;A=A+196|0;a[A>>2]=a[i>>2];a[A+4>>2]=e;return}function GI(A){A=A|0;var e=0,i=0;i=a[A+196>>2]|0;if(((i|0)>-1?(i|0)<(a[A+164>>2]|0):0)?(e=a[A+200>>2]|0,(e|0)>-1):0)A=(e|0)<(a[A+168>>2]|0)&1;else A=0;return A|0}function mI(A,e){A=A|0;e=e|0;var i=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;o=k;k=k+176|0;s=o;i=o+48|0;b=o+32|0;u=a[A+16>>2]|0;w=a[A+152>>2]|0;if((a[A+160>>2]|0)<=1?(a[A+196>>2]|0)<=0:0)l=0;else{co(b,128,i);n=u+212|0;l=a[n>>2]|0;fI(A,b);uo(b,l)|0;t=b+4|0;i=a[t>>2]|0;if(i>>>0>=(a[b+8>>2]|0)>>>0){so(b,1)|0;i=a[t>>2]|0}r[i>>0]=0;i=a[b>>2]|0;a[t>>2]=i;a[n>>2]=i}mf(Ho(e,100032)|0);zI(A);Mi(A);$i(A,137314);er(A,134800);do{if(w&4259840|0){if((a[u+208>>2]|0)==0?(f[u+260>>1]&1)==0:0)break;if(w&655360){t=w&131072;a[u+264>>2]=t>>>16^2;i=qF((t>>>12^32)+32|0)|0;n=A+288|0;a[i>>2]=a[n>>2];a[i+4>>2]=a[n+4>>2];a[i+8>>2]=a[n+8>>2];a[i+12>>2]=a[n+12>>2];n=i+16|0;h=A+304|0;a[n>>2]=a[h>>2];a[n+4>>2]=a[h+4>>2];a[n+8>>2]=a[h+8>>2];a[n+12>>2]=a[h+12>>2];if(!t){mF(i);n=4}else n=2}else{i=0;n=0}if(!(w&8192))zi(A,i,i,n)|0;a[u+272>>2]=i;a[u+268>>2]=n}}while(0);if(w&32768|0?(c=a[(a[e+16>>2]|0)+12>>2]|0,c|0):0)a[u+192>>2]=a[c>>2];n=(w&4|0)!=0;do{if(!n){i=u+208|0;if((a[i>>2]|0)==0?(f[u+260>>1]&1)==0:0)break;h=A+256|0;a[s>>2]=a[h>>2];a[s+4>>2]=a[h+4>>2];a[s+8>>2]=a[h+8>>2];a[s+12>>2]=a[h+12>>2];a[s+16>>2]=a[h+16>>2];a[s+20>>2]=a[h+20>>2];a[s+24>>2]=a[h+24>>2];a[s+28>>2]=a[h+28>>2];sI(A,s);Si(A,a[i>>2]|0,a[u+228>>2]|0,a[u+244>>2]|0,a[u+212>>2]|0)}}while(0);YI(A,e);i=a[(a[e+16>>2]|0)+12>>2]|0;if(i|0)jF(A,4,i);do{if(!n){if((a[u+208>>2]|0)==0?(f[u+260>>1]&1)==0:0)break;Oi(A)}}while(0);DI(A,e,w);Fi(A);if(l|0){wo(b);a[u+212>>2]=l}k=o;return}function QI(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0;l=k;k=k+32|0;i=l+24|0;e=l+16|0;c=l+8|0;f=l;n=A+196|0;t=A+188|0;a[e>>2]=a[n>>2];a[e+4>>2]=a[n+4>>2];a[i>>2]=a[t>>2];a[i+4>>2]=a[t+4>>2];WI(c,e,i);t=a[c+4>>2]|0;r=n;a[r>>2]=a[c>>2];a[r+4>>2]=t;if(!((GI(A)|0)<<24>>24)){r=A+180|0;if(!(a[A+184>>2]|0))a[A+200>>2]=a[A+176>>2];else a[n>>2]=a[A+172>>2];a[e>>2]=a[n>>2];a[e+4>>2]=a[n+4>>2];a[i>>2]=a[r>>2];a[i+4>>2]=a[r+4>>2];WI(f,e,i);t=a[f+4>>2]|0;c=n;a[c>>2]=a[f>>2];a[c+4>>2]=t}k=l;return}function LI(A,e){A=A|0;e=e|0;var i=0;i=a[e>>2]|0;if(!i){i=A+160|0;a[i>>2]=(a[i>>2]|0)+1}else{a[A+160>>2]=a[i>>2];a[e>>2]=i+4}return}function yI(A){A=A|0;Di(A);eI(A);return}function WI(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=(a[i+4>>2]|0)+(a[e+4>>2]|0)|0;a[A>>2]=(a[i>>2]|0)+(a[e>>2]|0);a[A+4>>2]=r;return}function zI(A){A=A|0;var e=0.0,i=0.0,r=0.0,f=0,n=0.0,l=0,t=0,c=0,b=0,u=0,w=0.0,o=0,h=0,d=0,B=0,g=0,v=0.0;g=k;k=k+48|0;u=g+32|0;f=g+24|0;t=g+8|0;c=g+16|0;b=g;d=A+196|0;h=a[d>>2]|0;d=a[d+4>>2]|0;o=f;a[o>>2]=h;a[o+4>>2]=d;o=A+164|0;l=a[o>>2]|0;o=a[o+4>>2]|0;B=t;a[B>>2]=l;a[B+4>>2]=o;B=A+360|0;if(!(a[B>>2]|0)){c=h;t=d}else{a[u>>2]=a[f>>2];a[u+4>>2]=a[f+4>>2];iF(c,u);d=c;c=a[d>>2]|0;d=a[d+4>>2]|0;o=f;a[o>>2]=c;a[o+4>>2]=d;a[u>>2]=a[t>>2];a[u+4>>2]=a[t+4>>2];iF(b,u);o=b;l=a[o>>2]|0;o=a[o+4>>2]|0;a[t>>2]=l;a[t+4>>2]=o;t=d}i=+s[A+320>>3];n=i*+(c|0)-+s[A+240>>3];s[A+288>>3]=n;r=+s[A+328>>3];w=r*+(t|0)-+s[A+248>>3];s[A+296>>3]=w;s[A+304>>3]=i+n;s[A+312>>3]=r+w;f=A+472|0;if(!(a[(a[A+12>>2]|0)+28>>2]|0)){d=A+456|0;a[f>>2]=a[d>>2];a[f+4>>2]=a[d+4>>2];a[f+8>>2]=a[d+8>>2];a[f+12>>2]=a[d+12>>2]}else{h=A+456|0;a[f>>2]=a[((a[f>>2]|0)<(a[h>>2]|0)?f:h)>>2];d=A+476|0;a[d>>2]=a[((a[d>>2]|0)<(a[A+460>>2]|0)?f:h)+4>>2];d=A+480|0;a[d>>2]=a[((a[d>>2]|0)>(a[A+464>>2]|0)?f:h)+8>>2];d=A+484|0;a[d>>2]=a[((a[d>>2]|0)>(a[A+468>>2]|0)?f:h)+12>>2]}b=a[A+152>>2]|0;e=+s[A+336>>3];if(!(b&128)){e=(+(c|0)-+(l|0)*.5)*i+e;s[A+256>>3]=e;n=(+(t|0)-+(o|0)*.5)*r+ +s[A+344>>3];w=n;i=i+e;n=n+r}else{i=+s[A+368>>3]*.5;r=e-i;s[A+256>>3]=r;n=+s[A+344>>3];v=+s[A+376>>3]*.5;w=n-v;i=i+e;n=v+n;e=r}s[A+264>>3]=w;s[A+272>>3]=i;s[A+280>>3]=n;if(!(a[B>>2]|0)){r=+s[A+352>>3];s[A+504>>3]=+s[A+384>>3]/r-e;if(!(b&4096)){i=+s[A+392>>3]/r;e=w}else{i=-n;e=+s[A+392>>3]/r}s[A+512>>3]=i-e}else{f=A+384|0;r=+s[A+352>>3];s[A+512>>3]=-n-+s[A+392>>3]/r;if(!(b&4096))i=+s[f>>3]/r;else{i=-i;e=+s[f>>3]/r}s[A+504>>3]=i-e}k=g;return}function YI(A,e){A=A|0;e=e|0;var i=0,f=0.0,n=0,l=0,t=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0;B=k;k=k+48|0;h=B;w=B+40|0;o=B+36|0;d=B+32|0;i=Ho(e,140977)|0;if(!i){t=1;i=137198}else{l=(r[i>>0]|0)==0;t=l&1;i=l?137198:i}n=a[A+152>>2]|0;l=(r[i>>0]|0)==116;if(!(n&256))if(l){b=(A1(i,137379)|0)==0;s=b?137198:i;b=b?1:t;u=8}else{s=i;b=t;u=8}else if(!(l?!(A1(i,137379)|0):0)){s=i;b=t;u=8}if((u|0)==8?!((b|0)!=0&(n&33554432|0)!=0):0)if(!((qM(s,w,o)|0)<<24>>24)){er(A,s);$i(A,137379);d=A+256|0;a[h>>2]=a[d>>2];a[h+4>>2]=a[d+4>>2];a[h+8>>2]=a[d+8>>2];a[h+12>>2]=a[d+12>>2];a[h+16>>2]=a[d+16>>2];a[h+20>>2]=a[d+20>>2];a[h+24>>2]=a[d+24>>2];a[h+28>>2]=a[d+28>>2];nr(A,h,1)}else{a[d>>2]=0;l=a[w>>2]|0;er(A,l);$i(A,137379);_M(e,d)|0;i=a[w+4>>2]|0;n=kR(e,a[47143]|0,0,0)|0;f=+c[o>>2];if(!i)ir(A,137314,n,f);else ir(A,i,n,f);d=(a[d>>2]|0)>>>1&1|2;o=A+256|0;a[h>>2]=a[o>>2];a[h+4>>2]=a[o+4>>2];a[h+8>>2]=a[o+8>>2];a[h+12>>2]=a[o+12>>2];a[h+16>>2]=a[o+16>>2];a[h+20>>2]=a[o+20>>2];a[h+24>>2]=a[o+24>>2];a[h+28>>2]=a[o+28>>2];nr(A,h,d);L2(l)}i=a[(a[(a[e+16>>2]|0)+8>>2]|0)+88>>2]|0;if(i|0)AF(A,i);k=B;return}function DI(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;n=(a[A>>2]|0)+28|0;a[n>>2]=(a[n>>2]|0)+1;n=(i&4|0)!=0;if(!n)MI(A,e,i);A:do{if(!(i&1)){if(i&16|0){Hi(A);f=cd(e)|0;while(1){if(!f)break;r=Oo(e,f)|0;while(1){if(!r)break;VI(A,r);r=_o(e,r)|0}f=sd(e,f)|0}Ui(A);Ri(A);r=cd(e)|0;while(1){if(!r)break;FI(A,r);r=sd(e,r)|0}Xi(A);break}if(!(i&8)){f=cd(e)|0;while(1){if(!f)break A;FI(A,f);r=Oo(e,f)|0;while(1){if(!r)break;FI(A,a[((a[r>>2]&3|0)==2?r:r+-48|0)+40>>2]|0);VI(A,r);r=_o(e,r)|0}f=sd(e,f)|0}}Ri(A);r=cd(e)|0;while(1){if(!r)break;if((JI(e,r)|0)<<24>>24)FI(A,r);r=sd(e,r)|0}Xi(A);Hi(A);f=cd(e)|0;while(1){if(!f)break;r=Oo(e,f)|0;while(1){if(!r)break;if((pI(e,r)|0)<<24>>24)VI(A,r);r=_o(e,r)|0}f=sd(e,f)|0}Ui(A)}else{Ri(A);r=cd(e)|0;while(1){if(!r)break;FI(A,r);r=sd(e,r)|0}Xi(A);Hi(A);f=cd(e)|0;while(1){if(!f)break;r=Oo(e,f)|0;while(1){if(!r)break;VI(A,r);r=_o(e,r)|0}f=sd(e,f)|0}Ui(A)}}while(0);if(n)MI(A,e,i);return}function MI(A,e,i){A=A|0;e=e|0;i=i|0;var l=0,t=0,b=0,u=0,w=0.0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0;X=k;k=k+128|0;C=X+72|0;N=X+64|0;D=X+112|0;M=X;F=X+104|0;V=e+16|0;J=(i&4|0)!=0;p=A+16|0;I=M+32|0;Z=M+16|0;m=M+8|0;Q=M+24|0;L=M+48|0;y=M+40|0;W=M+56|0;z=(i&8|0)==0;Y=F+4|0;E=1;while(1){l=a[V>>2]|0;if((E|0)>(a[l+180>>2]|0))break;v=a[(a[l+184>>2]|0)+(E<<2)>>2]|0;if((OM(A,v)|0)<<24>>24){if(J)MI(A,v,i);KM(A,v);d=a[p>>2]|0;B=d+208|0;if(!(a[B>>2]|0))g=(f[d+260>>1]&1)!=0;else g=1;mf(Ho(v,100032)|0);if(!(J|g^1)){h=(a[v+16>>2]|0)+16|0;a[C>>2]=a[h>>2];a[C+4>>2]=a[h+4>>2];a[C+8>>2]=a[h+8>>2];a[C+12>>2]=a[h+12>>2];a[C+16>>2]=a[h+16>>2];a[C+20>>2]=a[h+20>>2];a[C+24>>2]=a[h+24>>2];a[C+28>>2]=a[h+28>>2];sI(A,C);Si(A,a[B>>2]|0,a[d+228>>2]|0,a[d+244>>2]|0,a[d+212>>2]|0)}a[D>>2]=0;l=_M(v,D)|0;if(!l)o=0;else{rr(A,l);o=a[D>>2]&1}h=v+16|0;l=n[(a[h>>2]|0)+112>>0]|0;do{if(!(l&1)){if(l&2|0){l=BR(v,0,106256)|0;t=BR(v,0,106264)|0;R=29;break}if(l&8|0){l=BR(v,0,106272)|0;t=BR(v,0,106280)|0;R=29;break}if(l&4|0){l=BR(v,0,106288)|0;t=BR(v,0,106296)|0;R=29;break}l=Ho(v,140823)|0;if(!l)t=0;else t=(r[l>>0]|0)==0?0:l;l=Ho(v,137729)|0;if(!l)l=t;else l=(r[l>>0]|0)==0?t:l;b=Ho(v,101418)|0;if(b)t=(r[b>>0]|0)==0?t:b;if(!((o|0)!=0&(t|0)!=0)){b=Ho(v,140977)|0;if(b|0?r[b>>0]|0:0){t=b;R=29;break}l=(l|0)==0?137314:l;u=(t|0)==0?134800:t;a[F>>2]=0;if(!o)t=0;else R=31}else R=29}else{l=BR(v,0,106240)|0;t=BR(v,0,106248)|0;R=29}}while(0);if((R|0)==29){a[F>>2]=0;l=(l|0)==0?137314:l;u=(t|0)==0?134800:t;R=31}if((R|0)==31){R=0;if(!((qM(u,F,C)|0)<<24>>24)){er(A,u);t=1}else{er(A,a[F>>2]|0);t=a[Y>>2]|0;b=kR(v,a[47143]|0,0,0)|0;w=+c[C>>2];if(!t)ir(A,137314,b,w);else ir(A,t,b,w);t=(a[D>>2]|0)>>>1&1|2}}b=a[47142]|0;if((b|0?(G=Uo(v,b)|0,G|0):0)?r[G>>0]|0:0)ur(A,+oR(v,a[47142]|0,1.0,0.0));o=a[D>>2]|0;do{if(o&4){b=kR(v,a[47141]|0,1,0)|0;if(b|t|0){u=a[h>>2]|0;H=u+16|0;a[M>>2]=a[H>>2];a[M+4>>2]=a[H+4>>2];a[M+8>>2]=a[H+8>>2];a[M+12>>2]=a[H+12>>2];u=u+32|0;a[I>>2]=a[u>>2];a[I+4>>2]=a[u+4>>2];a[I+8>>2]=a[u+8>>2];a[I+12>>2]=a[u+12>>2];s[Z>>3]=+s[I>>3];s[Q>>3]=+s[m>>3];s[L>>3]=+s[M>>3];s[W>>3]=+s[y>>3];if(!b)$i(A,137379);else $i(A,l);tp(A,M,4,o,t)}}else{if(!(o&64)){if(kR(v,a[47141]|0,1,0)|0){$i(A,l);H=(a[h>>2]|0)+16|0;a[C>>2]=a[H>>2];a[C+4>>2]=a[H+4>>2];a[C+8>>2]=a[H+8>>2];a[C+12>>2]=a[H+12>>2];a[C+16>>2]=a[H+16>>2];a[C+20>>2]=a[H+20>>2];a[C+24>>2]=a[H+24>>2];a[C+28>>2]=a[H+28>>2];nr(A,C,t);break}if(!t)break;$i(A,137379);H=(a[h>>2]|0)+16|0;a[C>>2]=a[H>>2];a[C+4>>2]=a[H+4>>2];a[C+8>>2]=a[H+8>>2];a[C+12>>2]=a[H+12>>2];a[C+16>>2]=a[H+16>>2];a[C+20>>2]=a[H+20>>2];a[C+24>>2]=a[H+24>>2];a[C+28>>2]=a[H+28>>2];nr(A,C,t);break}H=a[h>>2]|0;o=H+16|0;a[M>>2]=a[o>>2];a[M+4>>2]=a[o+4>>2];a[M+8>>2]=a[o+8>>2];a[M+12>>2]=a[o+12>>2];H=H+32|0;a[I>>2]=a[H>>2];a[I+4>>2]=a[H+4>>2];a[I+8>>2]=a[H+8>>2];a[I+12>>2]=a[H+12>>2];s[Z>>3]=+s[I>>3];s[Q>>3]=+s[m>>3];s[L>>3]=+s[M>>3];s[W>>3]=+s[y>>3];if(!(kR(v,a[47141]|0,1,0)|0))$i(A,137379);else $i(A,l);if((cI(A,M,u,0)|0)>1){a[N>>2]=Vh(v)|0;ao(3,100400,N)|0}H=(a[h>>2]|0)+16|0;a[C>>2]=a[H>>2];a[C+4>>2]=a[H+4>>2];a[C+8>>2]=a[H+8>>2];a[C+12>>2]=a[H+12>>2];a[C+16>>2]=a[H+16>>2];a[C+20>>2]=a[H+20>>2];a[C+24>>2]=a[H+24>>2];a[C+28>>2]=a[H+28>>2];nr(A,C,0)}}while(0);L2(a[F>>2]|0);l=a[(a[h>>2]|0)+12>>2]|0;if(l|0)jF(A,5,l);if(g){if(J){H=(a[h>>2]|0)+16|0;a[C>>2]=a[H>>2];a[C+4>>2]=a[H+4>>2];a[C+8>>2]=a[H+8>>2];a[C+12>>2]=a[H+12>>2];a[C+16>>2]=a[H+16>>2];a[C+20>>2]=a[H+20>>2];a[C+24>>2]=a[H+24>>2];a[C+28>>2]=a[H+28>>2];sI(A,C);Si(A,a[B>>2]|0,a[d+228>>2]|0,a[d+244>>2]|0,a[d+212>>2]|0)}Oi(A)}A:do{if(!z){t=cd(v)|0;while(1){if(!t)break A;FI(A,t);l=Oo(v,t)|0;while(1){if(!l)break;VI(A,l);l=_o(v,l)|0}t=sd(v,t)|0}}}while(0);$M(A,e);if(!J)MI(A,v,i)}E=E+1|0}k=X;return}function FI(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0;c=k;k=k+32|0;i=c;l=a[A>>2]|0;t=e+16|0;A:do{if(((a[(a[t>>2]|0)+8>>2]|0?(XM(A,Id(e)|0,e)|0)<<24>>24:0)?(s=A+256|0,a[i>>2]=a[s>>2],a[i+4>>2]=a[s+4>>2],a[i+8>>2]=a[s+8>>2],a[i+12>>2]=a[s+12>>2],a[i+16>>2]=a[s+16>>2],a[i+20>>2]=a[s+20>>2],a[i+24>>2]=a[s+24>>2],a[i+28>>2]=a[s+28>>2],(HM(e,i)|0)<<24>>24):0)?(f=(a[t>>2]|0)+116|0,n=a[l+28>>2]|0,(n|0)!=(r[f>>0]|0)):0){r[f>>0]=n;cr(A,Vh(e)|0);i=dR(e,a[47169]|0,195059)|0;if(r[i>>0]|0)cr(A,i);i=dR(e,a[47157]|0,195059)|0;e:do{if(r[i>>0]|0){XI(i)|0;i=188228;while(1){f=i;i=i+4|0;f=a[f>>2]|0;if(!f)break e;if((r[f>>0]|0)!=105)continue;if(!(A1(f,134335)|0))break A}}}while(0);UM(A,e);V5[a[(a[(a[(a[t>>2]|0)+8>>2]|0)+4>>2]|0)+20>>2]&63](A,e);i=a[(a[t>>2]|0)+108>>2]|0;if(i|0?r[i+81>>0]|0:0)jF(A,10,i);xM(A)}}while(0);k=c;return}function VI(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0;l=k;k=k+32|0;n=l;i=A+256|0;a[n>>2]=a[i>>2];a[n+4>>2]=a[i+4>>2];a[n+8>>2]=a[i+8>>2];a[n+12>>2]=a[i+12>>2];a[n+16>>2]=a[i+16>>2];a[n+20>>2]=a[i+20>>2];a[n+24>>2]=a[i+24>>2];a[n+28>>2]=a[i+28>>2];A:do{if((NI(e,n)|0)<<24>>24?(f=e+-48|0,(RI(A,e)|0)<<24>>24):0){t=e+48|0;i=P2(Vh(a[((a[e>>2]&3|0)==3?e:t)+40>>2]|0)|0)|0;i=Q2(i+3+(P2(Vh(a[((a[e>>2]&3|0)==2?e:f)+40>>2]|0)|0)|0)|0)|0;$1(i,Vh(a[((a[e>>2]&3|0)==3?e:t)+40>>2]|0)|0)|0;t=(Ih(Id(a[((a[e>>2]&3|0)==2?e:f)+40>>2]|0)|0)|0)==0;n=i+(P2(i)|0)|0;if(t){r[n>>0]=r[141747]|0;r[n+1>>0]=r[141748]|0;r[n+2>>0]=r[141749]|0}else{r[n>>0]=r[137738]|0;r[n+1>>0]=r[137739]|0;r[n+2>>0]=r[137740]|0}w3(i,Vh(a[((a[e>>2]&3|0)==2?e:f)+40>>2]|0)|0)|0;cr(A,i);L2(i);i=dR(e,a[47191]|0,195059)|0;if(r[i>>0]|0)cr(A,i);i=dR(e,a[47185]|0,195059)|0;e:do{if(!(r[i>>0]|0))i=0;else{XI(i)|0;i=188228;while(1){f=i;i=i+4|0;f=a[f>>2]|0;if(!f){i=188228;break e}if((r[f>>0]|0)!=105)continue;if(!(A1(f,134335)|0))break A}}}while(0);aM(A,e,i);nM(A,e,i);lM(A)}}while(0);k=l;return}function JI(A,e){A=A|0;e=e|0;var i=0,r=0;i=A+16|0;A=1;while(1){r=a[i>>2]|0;if((A|0)>(a[r+180>>2]|0)){A=1;break}if(!(Dd(a[(a[r+184>>2]|0)+(A<<2)>>2]|0,e)|0))A=A+1|0;else{A=0;break}}return A|0}function pI(A,e){A=A|0;e=e|0;var i=0,r=0;i=A+16|0;A=1;while(1){r=a[i>>2]|0;if((A|0)>(a[r+180>>2]|0)){A=1;break}if(!(Dd(a[(a[r+184>>2]|0)+(A<<2)>>2]|0,e)|0))A=A+1|0;else{A=0;break}}return A|0}function NI(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0;c=k;k=k+64|0;t=c+32|0;f=c;n=A+16|0;A=a[n>>2]|0;i=a[A+8>>2]|0;if((i|0)!=0?(i=i+8|0,a[f>>2]=a[i>>2],a[f+4>>2]=a[i+4>>2],a[f+8>>2]=a[i+8>>2],a[f+12>>2]=a[i+12>>2],a[f+16>>2]=a[i+16>>2],a[f+20>>2]=a[i+20>>2],a[f+24>>2]=a[i+24>>2],a[f+28>>2]=a[i+28>>2],a[t>>2]=a[e>>2],a[t+4>>2]=a[e+4>>2],a[t+8>>2]=a[e+8>>2],a[t+12>>2]=a[e+12>>2],a[t+16>>2]=a[e+16>>2],a[t+20>>2]=a[e+20>>2],a[t+24>>2]=a[e+24>>2],a[t+28>>2]=a[e+28>>2],(RM(f,t)|0)!=0):0)A=1;else l=3;do{if((l|0)==3){i=a[A+96>>2]|0;if(i){a[t>>2]=a[e>>2];a[t+4>>2]=a[e+4>>2];a[t+8>>2]=a[e+8>>2];a[t+12>>2]=a[e+12>>2];a[t+16>>2]=a[e+16>>2];a[t+20>>2]=a[e+20>>2];a[t+24>>2]=a[e+24>>2];a[t+28>>2]=a[e+28>>2];if((GX(i,t)|0)<<24>>24){A=1;break}A=a[n>>2]|0}A=a[A+108>>2]|0;if((A|0?r[A+81>>0]|0:0)?(a[t>>2]=a[e>>2],a[t+4>>2]=a[e+4>>2],a[t+8>>2]=a[e+8>>2],a[t+12>>2]=a[e+12>>2],a[t+16>>2]=a[e+16>>2],a[t+20>>2]=a[e+20>>2],a[t+24>>2]=a[e+24>>2],a[t+28>>2]=a[e+28>>2],(GX(A,t)|0)<<24>>24):0){A=1;break}A=0}}while(0);k=c;return A|0}function RI(A,e){A=A|0;e=e|0;var i=0,f=0;A:do{if((a[A+156>>2]|0)>=2?(i=dR(e,a[47190]|0,195059)|0,(VM(A,i)|0)<<24>>24==0):0)if(!(r[i>>0]|0)){i=0;while(1){if((i|0)>=2){i=0;break A}f=(i|0)==1;f=dR(a[((a[e>>2]&3|0)==((f?2:3)|0)?e:e+((f?-1:1)*48|0)|0)+40>>2]|0,a[47167]|0,195059)|0;if(!(r[f>>0]|0)){i=1;break A}if(!((VM(A,f)|0)<<24>>24))i=i+1|0;else{i=1;break}}}else i=0;else i=1}while(0);return i|0}function XI(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0;o=k;k=k+192|0;w=o+24|0;u=o+16|0;b=o+8|0;s=o;n=o+48|0;c=o+32|0;if(r[100282]|0){co(188492,128,194826);r[100282]=0}co(c,128,o+56|0);a[n>>2]=A;l=c+4|0;t=c+8|0;e=0;i=0;A:while(1){f=e;e:while(1)switch(MM(n,c)|0){case 0:{e=21;break A}case 40:if(!(f<<24>>24)){f=1;continue e}else{e=7;break A}case 41:if(!(f<<24>>24)){e=9;break A}else{f=0;continue e}default:break e}if(!(f<<24>>24)){if((i|0)==63){e=12;break}e=a[47124]|0;if(e>>>0>=(a[47125]|0)>>>0){so(188492,1)|0;e=a[47124]|0}a[47124]=e+1;r[e>>0]=0;a[188228+(i<<2)>>2]=a[47124];i=i+1|0}e=a[l>>2]|0;if(e>>>0>=(a[t>>2]|0)>>>0){so(c,1)|0;e=a[l>>2]|0}r[e>>0]=0;e=a[c>>2]|0;a[l>>2]=e;uo(188492,e)|0;e=a[47124]|0;if(e>>>0>=(a[47125]|0)>>>0){so(188492,1)|0;e=a[47124]|0}a[47124]=e+1;r[e>>0]=0;e=f}do{if((e|0)==7){a[s>>2]=A;ao(1,100283,s)|0;a[47057]=0;wo(c)}else if((e|0)==9){a[b>>2]=A;ao(1,100317,b)|0;a[47057]=0;wo(c)}else if((e|0)==12){a[u>>2]=A;ao(0,100345,u)|0;a[47120]=0;wo(c)}else if((e|0)==21){if(f<<24>>24){a[w>>2]=A;ao(1,100368,w)|0;a[47057]=0;wo(c);break}a[188228+(i<<2)>>2]=0;wo(c);e=a[47124]|0;if(e>>>0>=(a[47125]|0)>>>0){so(188492,1)|0;e=a[47124]|0}r[e>>0]=0;a[47124]=a[47123]}}while(0);k=o;return 188228}function HI(A){A=A|0;var e=0;e=k;k=k+A|0;k=k+15&-16;return e|0}function UI(){return k|0}function xI(A){A=A|0;k=A}function TI(A,e){A=A|0;e=e|0;k=A;o=e}function jI(A,e){A=A|0;e=e|0;if(!d){d=A;B=e}}function PI(A){A=A|0;L=A}function SI(){return L|0}function OI(A){A=A|0;a[46654]=A;return 0}function KI(){return a[46654]|0}function _I(A,e){A=A|0;e=e|0;UA(0,A|0,e|0)|0;return}function qI(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;f=t+4|0;n=t;a[f>>2]=0;l=uE()|0;dE(l,10976);dE(l,17220);dE(l,17440);fo(1)|0;ro(18)|0;while(1){A=_h(A)|0;r=a[f>>2]|0;if(!A)break;if(r|0){A=195059;continue}wE(l,A,i)|0;hE(l,A,e,f,n)|0;A=195059}k=t;return r|0}function $I(A){A=A|0;var e=0,i=0,r=0,n=0;n=k;k=k+16|0;e=n+4|0;i=n;r=a[(a[A+16>>2]|0)+8>>2]|0;A=A+64|0;switch(a[A>>2]|0){case 0:{qV(r);break}case 1:{if(f[(a[r+16>>2]|0)+136>>1]&1)cX(r);break}case 4:case 5:case 6:{OV(r,i,e);iZ(r,a[i>>2]|0,a[e>>2]|0,a[A>>2]|0);break}default:{}}k=n;return}function AZ(A){A=A|0;var e=0,i=0,r=0,f=0;i=a[(a[A+16>>2]|0)+8>>2]|0;if(!(a[46655]|0)){a[46655]=a[4678];a[46656]=57;a[46657]=19}r=i+64|0;f=(a[r>>2]|0)+8|0;e=a[f>>2]|0;a[f>>2]=186620;switch(a[A+64>>2]|0){case 2:{NV(A,i,A,0);break}case 3:{NV(A,i,A,1);break}case 1:case 0:{if(!(a[A+152>>2]&134217728))rg(i,A)|0;break}case 6:case 5:case 4:{eZ(i);if(!(a[A+152>>2]&134217728))rg(i,A)|0;break}default:{}}a[(a[r>>2]|0)+8>>2]=e;return}function eZ(A){A=A|0;var e=0,i=0;e=a[46659]|0;if((e|0)!=(a[46658]|0)){i=a[a[46690]>>2]|0;if(!i){i=oX(A,0,99808,195059)|0;a[a[46690]>>2]=i;e=a[46659]|0}if(e>>>0>=(a[46660]|0)>>>0){so(186632,1)|0;e=a[46659]|0}r[e>>0]=0;e=a[46658]|0;a[46659]=e;Vo(A,i,e)|0}if(a[(a[A+16>>2]|0)+12>>2]|0){i=a[(a[46690]|0)+4>>2]|0;e=a[46675]|0;if(e>>>0>=(a[46676]|0)>>>0){so(186696,1)|0;e=a[46675]|0}r[e>>0]=0;e=a[46674]|0;a[46675]=e;Vo(A,i,e)|0}To(A,66753,a[(a[46690]|0)+8236>>2]|0,195059)|0;e=0;while(1){if((e|0)==8)break;wo(186632+(e<<4)|0);e=e+1|0}L2(a[46690]|0);s[1]=1.0;s[5]=1.0;a[46691]=0;a[46695]=0;return}function iZ(A,e,i,n){A=A|0;e=e|0;i=i|0;n=n|0;var l=0,t=0,c=0;t=Q2(8240)|0;a[46690]=t;A:do{switch(n|0){case 6:{f[t+8232>>1]=14;n=66769;break}case 5:{f[t+8232>>1]=12;n=66773;break}default:{n=Ho(A,66753)|0;if((n|0?r[n>>0]|0:0)?(l=rZ(n)|0,(l&65535)>10):0){t=a[46690]|0;f[t+8232>>1]=l;break A}n=rZ(66765)|0;t=a[46690]|0;f[t+8232>>1]=n;n=66765}}}while(0);a[t+8236>>2]=n;c=A+16|0;n=a[c>>2]|0;if(!(a[n+180>>2]|0))l=0;else{l=oX(A,0,99808,195059)|0;t=a[46690]|0;n=a[c>>2]|0}a[t>>2]=l;if(!(r[n+113>>0]&8))n=0;else n=oX(A,0,66777,195059)|0;a[(a[46690]|0)+4>>2]=n;t=oX(A,1,99808,195059)|0;a[(a[46690]|0)+8>>2]=t;t=oX(A,1,66777,195059)|0;a[(a[46690]|0)+12>>2]=t;t=oX(A,2,99808,195059)|0;n=a[46690]|0;a[n+16>>2]=t;if(!i)l=0;else{l=oX(A,2,66785,195059)|0;n=a[46690]|0}a[n+20>>2]=l;if(!e)l=0;else{l=oX(A,2,66793,195059)|0;n=a[46690]|0}a[n+24>>2]=l;l=r[(a[c>>2]|0)+113>>0]|0;if(!(l&33))t=0;else{t=oX(A,2,66777,195059)|0;n=a[46690]|0;l=r[(a[c>>2]|0)+113>>0]|0}a[n+28>>2]=t;if(!(l&2))t=0;else{t=oX(A,2,66801,195059)|0;n=a[46690]|0;l=r[(a[c>>2]|0)+113>>0]|0}a[n+32>>2]=t;if(!(l&4))l=0;else{l=oX(A,2,66810,195059)|0;n=a[46690]|0}a[n+36>>2]=l;n=0;while(1){if((n|0)==8)break;co(186632+(n<<4)|0,1024,(a[46690]|0)+40+(n<<10)|0);n=n+1|0}return}function rZ(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0;c=k;k=k+1040|0;l=c;n=c+8|0;f=0;e=A;A:while(1){do{i=e;e=e+1|0;i=r[i>>0]|0;if(!(i<<24>>24))break A}while(((i<<24>>24)+-48|0)>>>0>=10);if((f|0)>=1023){t=7;break}r[n+f>>0]=i;f=f+1|0}if((t|0)==7){a[l>>2]=A;ao(0,66819,l)|0}r[n+f>>0]=0;t=(q3(n)|0)&65535;k=c;return t|0}function fZ(A){A=A|0;var e=0,i=0;i=a[(a[A+16>>2]|0)+8>>2]|0;e=a[a[46690]>>2]|0;A=a[46663]|0;if(A>>>0>=(a[46664]|0)>>>0){so(186648,1)|0;A=a[46663]|0}r[A>>0]=0;A=a[46662]|0;a[46663]=A;Vo(i,e,A)|0;if(a[(a[i+16>>2]|0)+12>>2]|0){e=a[(a[46690]|0)+4>>2]|0;A=a[46679]|0;if(A>>>0>=(a[46680]|0)>>>0){so(186712,1)|0;A=a[46679]|0}r[A>>0]=0;A=a[46678]|0;a[46679]=A;Vo(i,e,A)|0}s[2]=1.0;s[6]=1.0;a[46692]=0;a[46696]=0;return}function aZ(A){A=A|0;var e=0,i=0;i=a[(a[A+16>>2]|0)+8>>2]|0;A=a[46663]|0;if((a[46662]|0)!=(A|0)){e=a[(a[46690]|0)+8>>2]|0;if(A>>>0>=(a[46664]|0)>>>0){so(186648,1)|0;A=a[46663]|0}r[A>>0]=0;A=a[46662]|0;a[46663]=A;Vo(i,e,A)|0}A=a[46679]|0;if((a[46678]|0)!=(A|0)){e=a[(a[46690]|0)+12>>2]|0;if(A>>>0>=(a[46680]|0)>>>0){so(186712,1)|0;A=a[46679]|0}r[A>>0]=0;A=a[46678]|0;a[46679]=A;Vo(i,e,A)|0}s[9]=1.0;s[11]=1.0;a[46699]=0;a[46701]=0;return}function nZ(A){A=A|0;var e=0,i=0;i=a[(a[A+16>>2]|0)+8>>2]|0;A=a[46663]|0;if((a[46662]|0)!=(A|0)){e=a[(a[46690]|0)+16>>2]|0;if(A>>>0>=(a[46664]|0)>>>0){so(186648,1)|0;A=a[46663]|0}r[A>>0]=0;A=a[46662]|0;a[46663]=A;Vo(i,e,A)|0}A=a[46667]|0;if((a[46666]|0)!=(A|0)){e=a[(a[46690]|0)+24>>2]|0;if(A>>>0>=(a[46668]|0)>>>0){so(186664,1)|0;A=a[46667]|0}r[A>>0]=0;A=a[46666]|0;a[46667]=A;Vo(i,e,A)|0}A=a[46671]|0;if((a[46670]|0)!=(A|0)){e=a[(a[46690]|0)+20>>2]|0;if(A>>>0>=(a[46672]|0)>>>0){so(186680,1)|0;A=a[46671]|0}r[A>>0]=0;A=a[46670]|0;a[46671]=A;Vo(i,e,A)|0}A=a[46679]|0;if((a[46678]|0)!=(A|0)){e=a[(a[46690]|0)+28>>2]|0;if(A>>>0>=(a[46680]|0)>>>0){so(186712,1)|0;A=a[46679]|0}r[A>>0]=0;A=a[46678]|0;a[46679]=A;Vo(i,e,A)|0}A=a[46683]|0;if((a[46682]|0)!=(A|0)){e=a[(a[46690]|0)+36>>2]|0;if(A>>>0>=(a[46684]|0)>>>0){so(186728,1)|0;A=a[46683]|0}r[A>>0]=0;A=a[46682]|0;a[46683]=A;Vo(i,e,A)|0}A=a[46687]|0;if((a[46686]|0)!=(A|0)){e=a[(a[46690]|0)+32>>2]|0;if(A>>>0>=(a[46688]|0)>>>0){so(186744,1)|0;A=a[46687]|0}r[A>>0]=0;A=a[46686]|0;a[46687]=A;Vo(i,e,A)|0}s[10]=1.0;s[12]=1.0;s[3]=1.0;s[4]=1.0;s[7]=1.0;s[8]=1.0;a[46700]=0;a[46702]=0;a[46693]=0;a[46694]=0;a[46697]=0;a[46698]=0;return}function lZ(A,e,i){A=A|0;e=e|0;i=i|0;var n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0;g=k;k=k+1056|0;t=g+16|0;B=g+8|0;d=g;c=g+32|0;w=a[(a[A+16>>2]|0)+12>>2]|0;o=a[11416+(w<<2)>>2]|0;uo(o,66916)|0;n=i+4|0;hZ(c,+s[(a[n>>2]|0)+16>>3]);uo(o,c)|0;gZ(A,195059,a[a[n>>2]>>2]|0);wZ(A);h=r[i+48>>0]|0;h=h<<24>>24==108?-1:h<<24>>24==114&1;n=a[n>>2]|0;if(!n)n=0;else n=a[n+24>>2]&127;l=f[(a[46690]|0)+8232>>1]|0;if((l&65535)>14?(b=a[11464+((l&65535)+-15<<2)>>2]&n,u=186764+(w<<2)|0,(a[u>>2]|0)!=(b|0)):0){a[d>>2]=b;S4(c,66919,d)|0;uo(o,c)|0;a[u>>2]=b}d=e+8|0;s[d>>3]=+s[d>>3]+ +s[i+24>>3];uo(o,66925)|0;a[t>>2]=a[e>>2];a[t+4>>2]=a[e+4>>2];a[t+8>>2]=a[e+8>>2];a[t+12>>2]=a[e+12>>2];oZ(o,t);a[B>>2]=h;S4(c,102220,B)|0;uo(o,c)|0;hZ(c,+s[i+32>>3]);uo(o,c)|0;gZ(A,195059,a[i>>2]|0);k=g;return}function tZ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;l=k;k=k+1040|0;f=l;n=l+16|0;r=a[(a[A+16>>2]|0)+12>>2]|0;uZ(A);wZ(A);if(!i){A=a[11416+(r<<2)>>2]|0;uo(A,66913)|0}else{if((i|1|0)==3)EZ(A,i,e,2);else CZ(A);A=a[11416+(r<<2)>>2]|0;uo(A,66910)|0}a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];oZ(A,f);hZ(n,+s[e+16>>3]-+s[e>>3]);uo(A,n)|0;hZ(n,+s[e+24>>3]-+s[e+8>>3]);uo(A,n)|0;k=l;return}function cZ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;uZ(A);wZ(A);if(!r)kZ(A,112,e,i);else{if((r|1|0)==3)EZ(A,r,e,i);else CZ(A);kZ(A,80,e,i)}return}function sZ(A,e,i,r,f,a){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;uZ(A);wZ(A);if(!a)kZ(A,66,e,i);else{if((a|1|0)==3)EZ(A,a,e,i);else CZ(A);kZ(A,98,e,i)}return}function bZ(A,e,i){A=A|0;e=e|0;i=i|0;uZ(A);wZ(A);kZ(A,76,e,i);return}function uZ(A){A=A|0;var e=0,i=0,f=0,n=0.0,l=0,t=0,c=0,b=0,u=0;u=k;k=k+1184|0;l=u;f=u+24|0;b=u+8|0;co(b,1024,u+152|0);t=A+16|0;e=a[t>>2]|0;n=+s[e+152>>3];i=8+(a[e+12>>2]<<3)|0;if(n!=+s[i>>3]){s[i>>3]=n;uo(b,66882)|0;s[l>>3]=+s[(a[t>>2]|0)+152>>3];S4(f,66896,l)|0;dZ(f,0);uo(b,f)|0;f=b+4|0;e=a[f>>2]|0;i=b+8|0;if(e>>>0>=(a[i>>2]|0)>>>0){so(b,1)|0;e=a[f>>2]|0}a[f>>2]=e+1;r[e>>0]=41;e=a[f>>2]|0;if(e>>>0>=(a[i>>2]|0)>>>0){so(b,1)|0;e=a[f>>2]|0}r[e>>0]=0;e=a[b>>2]|0;a[f>>2]=e;gZ(A,66901,e);e=a[t>>2]|0}e=a[e+160>>2]|0;if(e|0){t=b+4|0;c=b+8|0;A:while(1){l=e+4|0;e=a[e>>2]|0;if(!e)break;switch(r[e>>0]|0){case 102:{if(!(A1(e,111101)|0)){e=l;continue A}break}case 98:{if(!(A1(e,111083)|0)){e=l;continue A}break}case 115:{if(!(A1(e,111088)|0)){e=l;continue A}break}default:{}}uo(b,e)|0;do{f=e;e=e+1|0}while((r[f>>0]|0)!=0);if(r[e>>0]|0){i=a[t>>2]|0;if(i>>>0>=(a[c>>2]|0)>>>0){so(b,1)|0;i=a[t>>2]|0}a[t>>2]=i+1;r[i>>0]=40;f=0;while(1){if(!(r[e>>0]|0))break;if(f|0){i=a[t>>2]|0;if(i>>>0>=(a[c>>2]|0)>>>0){so(b,1)|0;i=a[t>>2]|0}a[t>>2]=i+1;r[i>>0]=44}uo(b,e)|0;do{i=e;e=e+1|0}while((r[i>>0]|0)!=0);f=f+1|0}e=a[t>>2]|0;if(e>>>0>=(a[c>>2]|0)>>>0){so(b,1)|0;e=a[t>>2]|0}a[t>>2]=e+1;r[e>>0]=41}e=a[t>>2]|0;if(e>>>0>=(a[c>>2]|0)>>>0){so(b,1)|0;e=a[t>>2]|0}r[e>>0]=0;e=a[b>>2]|0;a[t>>2]=e;gZ(A,66901,e);e=l}wo(b)}k=u;return}function wZ(A){A=A|0;BZ((a[A+16>>2]|0)+16|0);gZ(A,75834,193758);return}function kZ(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0;s=k;k=k+1040|0;c=s;t=s+16|0;l=a[11416+(a[(a[A+16>>2]|0)+12>>2]<<2)>>2]|0;n=l+4|0;A=a[n>>2]|0;if(A>>>0>=(a[l+8>>2]|0)>>>0){so(l,1)|0;A=a[n>>2]|0}a[n>>2]=A+1;r[A>>0]=e;a[c>>2]=f;S4(t,66846,c)|0;uo(l,t)|0;A=0;while(1){if((A|0)>=(f|0))break;t=i+(A<<4)|0;a[c>>2]=a[t>>2];a[c+4>>2]=a[t+4>>2];a[c+8>>2]=a[t+8>>2];a[c+12>>2]=a[t+12>>2];oZ(l,c);A=A+1|0}k=s;return}function oZ(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+1024|0;r=i;hZ(r,+s[e>>3]);uo(A,r)|0;hZ(r,+pV(+s[e+8>>3]));uo(A,r)|0;k=i;return}function hZ(A,e){A=A|0;e=+e;var i=0,r=0;i=k;k=k+16|0;r=i;s[r>>3]=e>-1.0e-08&e<1.0e-08?0.0:e;S4(A,66851,r)|0;dZ(A,1);k=i;return}function dZ(A,e){A=A|0;e=e|0;var i=0,f=0;i=G1(A,46)|0;if(!i){if(e|0){i=A+(P2(A)|0)|0;f=10}}else{while(1){A=i+1|0;if(!(r[A>>0]|0))break;else i=A}A:while(1){switch(r[i>>0]|0){case 46:{f=5;break A}case 48:break;default:{f=6;break A}}r[i>>0]=0;i=i+-1|0}if((f|0)==5)r[i>>0]=0;else if((f|0)==6)i=i+1|0;if(e|0)f=10}if((f|0)==10){r[i>>0]=32;r[i+1>>0]=0}return}function BZ(A){A=A|0;var e=0,i=0,f=0,l=0,t=0,c=0;c=k;k=k+32|0;t=c+16|0;l=c;e=r[A+3>>0]|0;i=n[A>>0]|0;f=n[A+1>>0]|0;A=n[A+2>>0]|0;if(e<<24>>24==-1){a[l>>2]=i;a[l+4>>2]=f;a[l+8>>2]=A;S4(193758,75714,l)|0}else{a[t>>2]=i;a[t+4>>2]=f;a[t+8>>2]=A;a[t+12>>2]=e&255;S4(193758,66864,t)|0}k=c;return}function gZ(A,e,i){A=A|0;e=e|0;i=i|0;vZ(a[11416+(a[(a[A+16>>2]|0)+12>>2]<<2)>>2]|0,e,i);return}function vZ(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0;f=k;k=k+1040|0;l=f;n=f+8|0;t=P2(i)|0;a[l>>2]=e;a[l+4>>2]=t;S4(n,66857,l)|0;uo(A,n)|0;uo(A,i)|0;i=A+4|0;e=a[i>>2]|0;if(e>>>0>=(a[A+8>>2]|0)>>>0){so(A,1)|0;e=a[i>>2]|0}a[i>>2]=e+1;r[e>>0]=32;k=f;return}function EZ(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0.0,t=0,b=0.0,u=0.0,w=0.0,o=0.0,h=0.0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0.0;I=k;k=k+1120|0;g=I+64|0;C=I+80|0;t=I+32|0;d=I+16|0;B=I;v=a[A+16>>2]|0;n=+(a[v+136>>2]|0)*.017453292519943295;if((l[(a[46690]|0)+8232>>1]|0)<14)CZ(A);else{co(C,1024,I+96|0);E=(e|0)==2;if(E){YX(i,t,f,n,2);i=C+4|0;e=a[i>>2]|0;if(e>>>0>=(a[C+8>>2]|0)>>>0){so(C,1)|0;e=a[i>>2]|0}a[i>>2]=e+1;r[e>>0]=91;a[g>>2]=a[t>>2];a[g+4>>2]=a[t+4>>2];a[g+8>>2]=a[t+8>>2];a[g+12>>2]=a[t+12>>2];oZ(C,g);B=t+16|0;a[g>>2]=a[B>>2];a[g+4>>2]=a[B+4>>2];a[g+8>>2]=a[B+8>>2];a[g+12>>2]=a[B+12>>2];oZ(C,g)}else{YX(i,t,f,0.0,3);h=+s[t+24>>3];w=+s[t>>3];if(n==0.0){u=+s[t+8>>3];o=h*.25;n=u;b=w}else{o=h*.25;Z=o;b=+D(+n)*Z+w;u=+s[t+8>>3];n=+M(+n)*Z+u}s[d>>3]=b;s[d+8>>3]=n;s[B>>3]=w;s[B+8>>3]=u;i=C+4|0;e=a[i>>2]|0;if(e>>>0>=(a[C+8>>2]|0)>>>0){so(C,1)|0;e=a[i>>2]|0}a[i>>2]=e+1;r[e>>0]=40;a[g>>2]=a[d>>2];a[g+4>>2]=a[d+4>>2];a[g+8>>2]=a[d+8>>2];a[g+12>>2]=a[d+12>>2];oZ(C,g);IZ(C,o);a[g>>2]=a[B>>2];a[g+4>>2]=a[B+4>>2];a[g+8>>2]=a[B+8>>2];a[g+12>>2]=a[B+12>>2];oZ(C,g);IZ(C,h)}uo(C,66907)|0;e=v+140|0;n=+c[e>>2];i=v+56|0;if(n>0.0){ZZ(C,n,i);ZZ(C,+c[e>>2],v+96|0)}else{ZZ(C,0.0,i);ZZ(C,1.0,v+96|0)}ko(C)|0;t=C+4|0;e=a[t>>2]|0;f=C+8|0;i=e>>>0>=(a[f>>2]|0)>>>0;if(E){if(i){so(C,1)|0;e=a[t>>2]|0}a[t>>2]=e+1;r[e>>0]=93}else{if(i){so(C,1)|0;e=a[t>>2]|0}a[t>>2]=e+1;r[e>>0]=41}e=a[t>>2]|0;if(e>>>0>=(a[f>>2]|0)>>>0){so(C,1)|0;e=a[t>>2]|0}r[e>>0]=0;E=a[C>>2]|0;a[t>>2]=E;gZ(A,66904,E);wo(C)}k=I;return}function CZ(A){A=A|0;BZ((a[A+16>>2]|0)+56|0);gZ(A,66904,193758);return}function IZ(A,e){A=A|0;e=+e;var i=0,r=0;i=k;k=k+1024|0;r=i;hZ(r,e);uo(A,r)|0;k=i;return}function ZZ(A,e,i){A=A|0;e=+e;i=i|0;var r=0,f=0,a=0;r=k;k=k+1040|0;a=r;f=r+8|0;s[a>>3]=e;S4(f,94168,a)|0;dZ(f,1);BZ(i);vZ(A,f,193758);k=r;return}function GZ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0;r=k;k=k+1040|0;l=r;f=r+16|0;n=a[11416+(a[(a[A+16>>2]|0)+12>>2]<<2)>>2]|0;uo(n,67013)|0;a[l>>2]=a[i>>2];a[l+4>>2]=a[i+4>>2];a[l+8>>2]=a[i+8>>2];a[l+12>>2]=a[i+12>>2];oZ(n,l);hZ(f,+s[i+16>>3]-+s[i>>3]);uo(n,f)|0;hZ(f,+s[i+24>>3]-+s[i+8>>3]);uo(n,f)|0;gZ(A,195059,a[e+8>>2]|0);k=r;return}function mZ(A){A=A|0;var e=0;switch(a[A+64>>2]|0){case 0:{e=mv(a[A>>2]|0)|0;kE(e,a[(a[A+16>>2]|0)+8>>2]|0,67797,0)|0;Qv(e);break}case 1:{qV(a[(a[A>>2]|0)+168>>2]|0);break}default:{}}return}function QZ(A){A=A|0;var e=0,i=0,f=0,n=0;f=k;k=k+16|0;e=f;i=a[(a[A+16>>2]|0)+8>>2]|0;if(!(a[46703]|0)){a[46703]=a[4678];a[46704]=57;a[46705]=19}a[(a[i+64>>2]|0)+8>>2]=186812;LZ(i,1);a[e>>2]=0;r[e+4>>0]=(r[(a[i+16>>2]|0)+115>>0]|0)==1&1;n=a[A+64>>2]|0;r[e+5>>0]=((n|0)==0|(n|0)==3)&1;r[e+6>>0]=0;yZ(i,A,1,e);k=f;return}function LZ(A,e){A=A|0;e=e|0;var i=0;a[A>>2]=a[A>>2]&-9;i=RB(A)|0;while(1){if(!i)break;LZ(i,0);i=XB(i)|0}A:do{if(e|0){e=cd(A)|0;while(1){if(!e)break A;a[e>>2]=a[e>>2]&-9;i=Oo(A,e)|0;while(1){if(!i)break;a[i>>2]=a[i>>2]&-9;i=_o(A,i)|0}e=sd(A,e)|0}}}while(0);return}function yZ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+16|0;o=h+8|0;w=h;u=(i|0)!=0;if(u){b=jk(11836,a[4581]|0)|0;Kd(A,1,141060,12,0);Kd(A,2,141060,12,0);Kd(A,0,141060,-12,0);f=WZ(A,0,b)|0;c=cd(A)|0;t=0;n=0;while(1){if(!c)break;if(!(Z1(Vh(c)|0,108006,7)|0)){s=n;n=zZ(b,Vh(c)|0)|0}else{s=n+1|0;n=n+f|0}a[(Ud(c,141060,0)|0)+8>>2]=n;l=Oo(A,c)|0;n=t;while(1){if(!l)break;a[(Ud(l,141060,0)|0)+8>>2]=n;l=_o(A,l)|0;n=n+1|0}c=sd(A,c)|0;t=n;n=s}Hk(b)|0}else f=0;b=a[r>>2]|0;a[r>>2]=b+1;YZ(e,b);kv(e,97374)|0;DZ(A,e,i,r);MZ(A,e,r);kv(e,97345)|0;YZ(e,a[r>>2]|0);if(u){a[w>>2]=f;vv(e,67016,w)}else{a[o>>2]=a[(Ud(A,141060,0)|0)+8>>2];vv(e,67036,o)}VZ(A,e,i,FZ(A,e,i,r)|0,r);JZ(A,e,i,r);kv(e,153599)|0;o=(a[r>>2]|0)+-1|0;a[r>>2]=o;YZ(e,o);if(u)kv(e,111008)|0;else kv(e,75357)|0;k=h;return}function WZ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;if((Zd(A)|0)!=(A|0)){r=e+1|0;a[(Ud(A,141060,0)|0)+8>>2]=e;if(!(Z1(Vh(A)|0,108006,7)|0)){e=Vh(A)|0;OZ(i,e,a[(Ud(A,141060,0)|0)+8>>2]|0);e=r}else e=r}r=RB(A)|0;while(1){if(!r)break;A=WZ(r,e,i)|0;r=XB(r)|0;e=A}return e|0}function zZ(A,e){A=A|0;e=e|0;A=y5[a[A>>2]&63](A,e,512)|0;if(!A)A=-1;else A=a[A+12>>2]|0;return A|0}function YZ(A,e){A=A|0;e=e|0;while(1){if((e|0)<=0)break;kv(A,90574)|0;e=e+-1|0}return}function DZ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0;l=k;k=k+32|0;n=l+16|0;f=l+8|0;t=l;c=Vh(A)|0;YZ(e,a[r>>2]|0);a[t>>2]=RZ(c,r)|0;vv(e,67124,t);if(i|0){kv(e,97345)|0;YZ(e,a[r>>2]|0);c=(Ih(A)|0)!=0;a[f>>2]=c?107652:137308;vv(e,67738,f);YZ(e,a[r>>2]|0);c=(Gh(A)|0)!=0;a[n>>2]=c?107652:137308;vv(e,67755,n)}k=l;return}function MZ(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;w=k;k=k+16|0;u=w+8|0;b=w;t=Zd(A)|0;c=a[A>>2]&3;f=Jo(t,c,0)|0;A:do{if(f|0){s=i+5|0;while(1){if(!f)break A;n=Uo(A,f)|0;do{if(n|0){l=f+8|0;if(!(r[n>>0]|0)){n=a[l>>2]|0;if((r[n>>0]|0)!=108)break;if(A1(n,108224)|0)break}kv(e,97345)|0;YZ(e,a[i>>2]|0);a[b>>2]=RZ(a[l>>2]|0,i)|0;vv(e,67174,b);if(r[s>>0]|0?HZ(a[l>>2]|0)|0:0){UZ(Uo(A,f)|0,e,i);break}a[u>>2]=RZ(Uo(A,f)|0,i)|0;vv(e,67181,u)}}while(0);f=Jo(t,c,f)|0}}}while(0);k=w;return}function FZ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0;t=k;k=k+16|0;l=t;f=RB(A)|0;if(f){kv(e,97345)|0;n=a[r>>2]|0;a[r>>2]=n+1;YZ(e,n);n=(i|0)!=0;if(n){kv(e,67098)|0;A=0;i=f}else{kv(e,67158)|0;YZ(e,a[r>>2]|0);A=0;i=f}while(1){if(!i)break;if(!A)A=1;else kv(e,97345)|0;if(n)XZ(i,e,r);else{a[l>>2]=a[(Ud(i,141060,0)|0)+8>>2];vv(e,137395,l)}i=XB(i)|0}if(n)A=1;else{a[r>>2]=(a[r>>2]|0)+-1;kv(e,153599)|0;YZ(e,a[r>>2]|0);kv(e,97340)|0;A=1}}else A=0;k=t;return A|0}function VZ(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0;n=cd(A)|0;if(!n){if((i|0)!=0&(r|0)!=0){a[f>>2]=(a[f>>2]|0)+-1;kv(e,153599)|0;YZ(e,a[f>>2]|0);kv(e,97340)|0}}else{kv(e,97345)|0;l=(i|0)!=0;if(l)if(!r){r=a[f>>2]|0;a[f>>2]=r+1;YZ(e,r);kv(e,67098)|0;r=0}else r=0;else{r=a[f>>2]|0;a[f>>2]=r+1;YZ(e,r);kv(e,67112)|0;YZ(e,a[f>>2]|0);r=0}while(1){if(!n)break;if(Z1(Vh(n)|0,108006,7)|0){do{if(r)if(l){kv(e,97345)|0;break}else{kv(e,100999)|0;break}else r=1}while(0);NZ(n,e,i,f)}n=sd(A,n)|0}a[f>>2]=(a[f>>2]|0)+-1;kv(e,153599)|0;YZ(e,a[f>>2]|0);kv(e,97340)|0}return}function JZ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0;f=cd(A)|0;A:do{if(f|0){while(1){if(!f)break A;if(Oo(A,f)|0)break;f=sd(A,f)|0}kv(e,97345)|0;t=a[r>>2]|0;a[r>>2]=t+1;YZ(e,t);kv(e,67048)|0;t=(i|0)!=0;if(t)n=0;else{YZ(e,a[r>>2]|0);n=0}while(1){if(!f)break;l=Oo(A,f)|0;while(1){if(!l)break;do{if(n)if(t){kv(e,97345)|0;break}else{kv(e,100999)|0;break}else n=1}while(0);pZ(l,e,i,r);l=_o(A,l)|0}f=sd(A,f)|0}a[r>>2]=(a[r>>2]|0)+-1;kv(e,153599)|0;YZ(e,a[r>>2]|0);kv(e,97340)|0}}while(0);return}function pZ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0;c=k;k=k+32|0;t=c+24|0;l=c+16|0;n=c+8|0;f=c;if(!i){a[t>>2]=a[(Ud(A,141060,0)|0)+8>>2];vv(e,137395,t)}else{t=a[r>>2]|0;a[r>>2]=t+1;YZ(e,t);kv(e,97374)|0;YZ(e,a[r>>2]|0);a[f>>2]=a[(Ud(A,141060,0)|0)+8>>2];vv(e,67060,f);YZ(e,a[r>>2]|0);a[n>>2]=a[(Ud(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0,141060,0)|0)+8>>2];vv(e,67074,n);YZ(e,a[r>>2]|0);a[l>>2]=a[(Ud(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0,141060,0)|0)+8>>2];vv(e,67087,l);MZ(A,e,r);kv(e,153599)|0;t=(a[r>>2]|0)+-1|0;a[r>>2]=t;YZ(e,t);kv(e,75357)|0}k=c;return}function NZ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0;t=k;k=k+32|0;l=t+16|0;n=t+8|0;f=t;if(!i){a[l>>2]=a[(Ud(A,141060,0)|0)+8>>2];vv(e,137395,l)}else{l=a[r>>2]|0;a[r>>2]=l+1;YZ(e,l);kv(e,97374)|0;YZ(e,a[r>>2]|0);a[f>>2]=a[(Ud(A,141060,0)|0)+8>>2];vv(e,67060,f);YZ(e,a[r>>2]|0);a[n>>2]=RZ(Vh(A)|0,r)|0;vv(e,67124,n);MZ(A,e,r);kv(e,153599)|0;l=(a[r>>2]|0)+-1|0;a[r>>2]=l;YZ(e,l);kv(e,75357)|0}k=t;return}function RZ(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;n=e+4|0;if(r[n>>0]|0)A=EX(A)|0;if(!(a[46706]|0)){co(186824,1024,0);i=A}else i=A;A:while(1){f=r[i>>0]|0;switch(f<<24>>24){case 0:break A;case 34:{uo(186824,67137)|0;break}case 92:{uo(186824,96616)|0;break}case 47:{uo(186824,67140)|0;break}case 8:{uo(186824,67143)|0;break}case 12:{uo(186824,67146)|0;break}case 10:{uo(186824,67149)|0;break}case 13:{uo(186824,67152)|0;break}case 9:{uo(186824,67155)|0;break}default:{e=a[46707]|0;if(e>>>0>=(a[46708]|0)>>>0){so(186824,1)|0;e=a[46707]|0}a[46707]=e+1;r[e>>0]=f}}i=i+1|0}e=a[46707]|0;if(e>>>0>=(a[46708]|0)>>>0){so(186824,1)|0;e=a[46707]|0}r[e>>0]=0;e=a[46706]|0;a[46707]=e;if(r[n>>0]|0)L2(A);return e|0}function XZ(A,e,i){A=A|0;e=e|0;i=i|0;yZ(A,e,0,i);A=RB(A)|0;while(1){if(!A)break;kv(e,97345)|0;XZ(A,e,i);A=XB(A)|0}return}function HZ(A){A=A|0;var e=0;e=A+1|0;A:do{if((r[A>>0]|0)==95){A=(r[e>>0]|0)+-100<<24>>24;switch(((A&255)>>>2|A<<6&255)<<24>>24){case 0:{if(!(A1(e,67695)|0)){A=1;break A}break}case 2:{if(!(A1(e,67701)|0)){A=1;break A}break}case 1:{if(!(A1(e,67708)|0)){A=1;break A}return(A1(e,67722)|0)==0|0}case 4:{if(!(A1(e,67715)|0)){A=1;break A}A=(A1(e,67730)|0)==0&1;break A}default:{A=0;break A}}A=0}else A=0}while(0);return A|0}function UZ(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0;t=k;k=k+16|0;f=t;do{if(A|0?r[A>>0]|0:0){l=yC(A)|0;if(!l){a[f>>2]=A;ao(0,67186,f)|0;break}kv(e,153599)|0;n=a[i>>2]|0;a[i>>2]=n+1;YZ(e,n);kv(e,67213)|0;n=l+8|0;A=0;f=0;while(1){if((f|0)>=(a[l>>2]|0))break;if(!A)A=1;else kv(e,97345)|0;xZ((a[n>>2]|0)+(f*80|0)|0,e,i);f=f+1|0}a[i>>2]=(a[i>>2]|0)+-1;kv(e,153599)|0;YZ(e,a[i>>2]|0);kv(e,97340)|0;WC(l)}}while(0);k=t;return}function xZ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0.0,L=0.0,y=0.0;m=k;k=k+240|0;Z=m+224|0;I=m+216|0;C=m+208|0;E=m+200|0;v=m+192|0;g=m+184|0;B=m+176|0;d=m+152|0;h=m+136|0;o=m+128|0;w=m+112|0;u=m+104|0;b=m+96|0;c=m+88|0;t=m+72|0;l=m+48|0;G=m+40|0;n=m+8|0;f=m;r=a[i>>2]|0;a[i>>2]=r+1;YZ(e,r);kv(e,97374)|0;YZ(e,a[i>>2]|0);r=a[A>>2]|0;A:do{switch(r|0){case 1:case 0:{a[f>>2]=(r|0)==0?69:101;vv(e,67216,f);YZ(e,a[i>>2]|0);y=+s[A+16>>3];L=+s[A+24>>3];Q=+s[A+32>>3];s[n>>3]=+s[A+8>>3];s[n+8>>3]=y;s[n+16>>3]=L;s[n+24>>3]=Q;vv(e,67229,n);break}case 3:case 2:{a[G>>2]=(r|0)==2?80:112;vv(e,67216,G);YZ(e,a[i>>2]|0);TZ(e,A+8|0);break}case 5:case 4:{a[l>>2]=(r|0)==4?66:98;vv(e,67216,l);YZ(e,a[i>>2]|0);TZ(e,A+8|0);break}case 6:{vv(e,67264,m+56|0);YZ(e,a[i>>2]|0);TZ(e,A+8|0);break}case 7:{vv(e,67276,m+64|0);YZ(e,a[i>>2]|0);y=+s[A+16>>3];s[t>>3]=+s[A+8>>3];s[t+8>>3]=y;vv(e,67288,t);YZ(e,a[i>>2]|0);G=a[A+24>>2]|0;a[c>>2]=(G|0)==0?108:(G|0)==1?99:114;vv(e,67310,c);YZ(e,a[i>>2]|0);s[b>>3]=+s[A+32>>3];vv(e,67326,b);YZ(e,a[i>>2]|0);a[u>>2]=RZ(a[A+40>>2]|0,i)|0;vv(e,67343,u);break}case 9:case 8:{a[w>>2]=(r|0)==8?67:99;vv(e,67216,w);YZ(e,a[i>>2]|0);vv(e,67357,m+120|0);YZ(e,a[i>>2]|0);a[o>>2]=RZ(a[A+8>>2]|0,i)|0;vv(e,67374,o);break}case 13:case 14:{a[h>>2]=(r|0)==13?67:99;vv(e,67216,h);YZ(e,a[i>>2]|0);switch(a[A+8>>2]|0){case 0:{vv(e,67357,m+144|0);YZ(e,a[i>>2]|0);a[d>>2]=RZ(a[A+16>>2]|0,i)|0;vv(e,67374,d);break A}case 1:{vv(e,67389,m+160|0);YZ(e,a[i>>2]|0);jZ(e,A+16|0,i);break A}default:{vv(e,67408,m+168|0);YZ(e,a[i>>2]|0);PZ(e,A+16|0,i);break A}}}case 10:{vv(e,67427,B);YZ(e,a[i>>2]|0);s[g>>3]=+s[A+8>>3];vv(e,67439,g);YZ(e,a[i>>2]|0);a[v>>2]=RZ(a[A+16>>2]|0,i)|0;vv(e,67455,v);break}case 11:{vv(e,67469,E);YZ(e,a[i>>2]|0);a[C>>2]=RZ(a[A+8>>2]|0,i)|0;vv(e,67481,C);break}case 15:{vv(e,67496,I);YZ(e,a[i>>2]|0);a[Z>>2]=a[A+8>>2];vv(e,67508,Z);break}default:{}}}while(0);G=(a[i>>2]|0)+-1|0;a[i>>2]=G;YZ(e,G);kv(e,75357)|0;k=m;return}function TZ(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0.0;t=k;k=k+48|0;l=t+32|0;n=t+16|0;f=t+8|0;r=a[e>>2]|0;i=a[e+4>>2]|0;vv(A,67669,t);e=0;while(1){if((e|0)>=(r|0))break;if((e|0)>0)vv(A,100999,f);c=+s[i+(e*24|0)+8>>3];s[n>>3]=+s[i+(e*24|0)>>3];s[n+8>>3]=c;vv(A,67681,n);e=e+1|0}vv(A,67622,l);k=t;return}function jZ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0.0,l=0;r=k;k=k+32|0;f=r+16|0;l=r;YZ(A,a[i>>2]|0);n=+s[e+8>>3];s[l>>3]=+s[e>>3];s[l+8>>3]=n;vv(A,67625,l);YZ(A,a[i>>2]|0);n=+s[e+24>>3];s[f>>3]=+s[e+16>>3];s[f+8>>3]=n;vv(A,67647,f);YZ(A,a[i>>2]|0);SZ(A,a[e+32>>2]|0,a[e+36>>2]|0,i);k=r;return}function PZ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0.0,l=0.0,t=0;r=k;k=k+48|0;f=r+24|0;t=r;YZ(A,a[i>>2]|0);n=+s[e+8>>3];l=+s[e+16>>3];s[t>>3]=+s[e>>3];s[t+8>>3]=n;s[t+16>>3]=l;vv(A,67524,t);YZ(A,a[i>>2]|0);l=+s[e+32>>3];n=+s[e+40>>3];s[f>>3]=+s[e+24>>3];s[f+8>>3]=l;s[f+16>>3]=n;vv(A,67552,f);YZ(A,a[i>>2]|0);SZ(A,a[e+48>>2]|0,a[e+52>>2]|0,i);k=r;return}function SZ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,b=0,u=0,w=0.0;b=k;k=k+48|0;t=b+32|0;l=b+16|0;n=b+8|0;vv(A,67580,b);f=0;while(1){if((f|0)>=(e|0))break;if((f|0)>0)vv(A,100999,n);w=+c[i+(f<<3)>>2];u=RZ(a[i+(f<<3)+4>>2]|0,r)|0;s[l>>3]=w;a[l+8>>2]=u;vv(A,67591,l);f=f+1|0}vv(A,67622,t);k=b;return}function OZ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;n=k;k=k+16|0;f=n;r=y5[a[A>>2]&63](A,e,512)|0;if(r){if((a[r+12>>2]|0)!=(i|0)){a[f>>2]=e;ao(0,67768,f)|0}}else{f=y2(1,16)|0;a[f+8>>2]=b3(e)|0;a[f+12>>2]=i;y5[a[A>>2]&63](A,f,1)|0}k=n;return}function KZ(A,e,i){A=A|0;e=e|0;i=i|0;L2(a[e+8>>2]|0);L2(e);return}function _Z(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0;e=k;k=k+32|0;i=e+24|0;r=e+16|0;n=e;f=a[A+16>>2]|0;kv(A,68623)|0;c=a[a[A+12>>2]>>2]|0;t=a[c+4>>2]|0;l=a[c+8>>2]|0;a[n>>2]=a[c>>2];a[n+4>>2]=t;a[n+8>>2]=l;vv(A,68633,n);a[r>>2]=Vh(a[f+8>>2]|0)|0;vv(A,68668,r);a[i>>2]=U(a[A+168>>2]|0,a[A+164>>2]|0)|0;vv(A,68681,i);kv(A,68694)|0;kv(A,68704)|0;kv(A,68712)|0;kv(A,68720)|0;kv(A,68728)|0;kv(A,68736)|0;kv(A,68744)|0;kv(A,68748)|0;kv(A,68753)|0;k=e;return}function qZ(A){A=A|0;kv(A,68604)|0;return}function $Z(A){A=A|0;a[46710]=2;return}function AG(A){A=A|0;a[46710]=1;return}function eG(A){A=A|0;a[46710]=2;return}function iG(A){A=A|0;a[46710]=0;return}function rG(A){A=A|0;a[46710]=2;return}function fG(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0.0,l=0.0,t=0,c=0.0,b=0,u=0,w=0,o=0,h=0.0,d=0.0,B=0;o=k;k=k+80|0;w=o;b=a[(a[A+16>>2]|0)+16>>2]|0;u=a[46710]|0;f=a[i+4>>2]|0;n=+s[A+352>>3]*+s[f+16>>3];l=a[A+360>>2]|0?1.5707963267948966:0.0;t=a[i>>2]|0;c=n*.3333333333333333*+((P2(t)|0)>>>0);f=a[f+8>>2]|0;if(!f)f=-1;else f=a[f+20>>2]|0;B=r[i+48>>0]|0;d=+s[e>>3];h=+s[e+8>>3];i=kG(t)|0;a[w>>2]=4;a[w+4>>2]=B<<24>>24==108?0:B<<24>>24==114?2:1;a[w+8>>2]=b;a[w+12>>2]=u;a[w+16>>2]=0;a[w+20>>2]=f;s[w+24>>3]=n;s[w+32>>3]=l;a[w+40>>2]=6;s[w+48>>3]=n;s[w+56>>3]=c;a[w+64>>2]=~~(d+(d>=0.0?.5:-.5));a[w+68>>2]=~~(h+(h+-72.0>=0.0?-71.5:-72.5));a[w+72>>2]=i;vv(A,68549,w);k=o;return}function aG(A,e){A=A|0;e=e|0;var i=0,f=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;u=k;k=k+32|0;c=u;t=u+20|0;b=e+32|0;A:do{switch(a[b>>2]|0){case 5:{i=0;while(1){f=a[12724+(i<<2)>>2]|0;if((i|0)==8)break A;l=a[e>>2]|0;if((r[f>>0]|0)==(r[l>>0]|0)?(A1(f,l)|0)==0:0){s=10;break A}i=i+1|0}}case 1:{f=e+1|0;l=e+2|0;i=(wG(t,n[e>>0]|0,n[f>>0]|0,n[l>>0]|0)|0)+32|0;if(!(a[t>>2]|0))s=10;else{w=n[e>>0]|0;t=n[f>>0]|0;s=n[l>>0]|0;a[c>>2]=0;a[c+4>>2]=i;a[c+8>>2]=w;a[c+12>>2]=t;a[c+16>>2]=s;vv(A,68492,c);s=10}break}default:gA(138394,67889,163,67920)}}while(0);if((s|0)==10)a[e>>2]=i;a[b>>2]=6;k=u;return}function nG(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0.0,l=0.0,t=0,c=0,b=0.0,u=0.0,w=0.0,o=0,h=0,d=0,B=0,g=0,v=0;r=k;k=k+112|0;f=r+8|0;v=r+104|0;g=r;c=a[A+16>>2]|0;B=~~+s[c+152>>3];d=a[c+16>>2]|0;h=a[c+56>>2]|0;o=a[46710]|0;bG(c,v,g);u=+s[e>>3];c=~~(u+(u>=0.0?.5:-.5));b=+s[e+8>>3];t=~~(b+(b>=0.0?.5:-.5));l=+s[e+16>>3];u=l-u;n=+s[e+24>>3];b=n-b;e=a[v>>2]|0;w=+s[g>>3];a[f>>2]=1;a[f+4>>2]=1;a[f+8>>2]=e;a[f+12>>2]=B;a[f+16>>2]=d;a[f+20>>2]=h;a[f+24>>2]=o;a[f+28>>2]=0;a[f+32>>2]=i|0?20:-1;s[f+40>>3]=w;a[f+48>>2]=0;s[f+56>>3]=0.0;a[f+64>>2]=c;a[f+68>>2]=t;a[f+72>>2]=~~(u+(u>=0.0?.5:-.5));a[f+76>>2]=~~(b+(b>=0.0?.5:-.5));a[f+80>>2]=c;a[f+84>>2]=t;a[f+88>>2]=~~(l+(l>=0.0?.5:-.5));a[f+92>>2]=~~(n+(n>=0.0?.5:-.5));vv(A,68427,f);k=r;return}function lG(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0.0,t=0,c=0,b=0,u=0,w=0,o=0,h=0;f=k;k=k+96|0;n=f+8|0;w=f+80|0;o=f;h=a[A+16>>2]|0;u=~~+s[h+152>>3];b=a[h+16>>2]|0;c=a[h+56>>2]|0;t=a[46710]|0;bG(h,w,o);w=a[w>>2]|0;l=+s[o>>3];a[n>>2]=2;a[n+4>>2]=3;a[n+8>>2]=w;a[n+12>>2]=u;a[n+16>>2]=b;a[n+20>>2]=c;a[n+24>>2]=t;a[n+28>>2]=0;a[n+32>>2]=r|0?20:-1;s[n+40>>3]=l;a[n+48>>2]=0;a[n+52>>2]=0;a[n+56>>2]=0;a[n+60>>2]=0;a[n+64>>2]=0;a[n+68>>2]=i+1;vv(A,68331,n);uG(A,e,i,1);k=f;return}function tG(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0.0,W=0.0,z=0;L=k;k=k+192|0;Q=L+176|0;G=L+168|0;m=L+104|0;Z=L+96|0;l=L+88|0;v=L+180|0;E=L+80|0;C=L+16|0;I=L;f=A+16|0;r=a[f>>2]|0;h=~~+s[r+152>>3];d=a[r+16>>2]|0;B=a[46710]|0;if((i|0)<=3)gA(67882,67889,360,67909);g=Q2((i*140|0)+140|0)|0;bG(r,v,E);if(!n){w=4;t=0;c=-1}else{w=5;t=a[(a[f>>2]|0)+56>>2]|0;c=20}W=+s[e>>3];u=C+48|0;s[u>>3]=W;y=+s[e+8>>3];s[C+56>>3]=y;a[l>>2]=~~(W+(W>=0.0?.5:-.5));a[l+4>>2]=~~(y+(y>=0.0?.5:-.5));b=I+8|0;r=g+(S4(g,81099,l)|0)|0;o=1;n=0;while(1){l=n+3|0;if((l|0)>=(i|0))break;a[C>>2]=a[u>>2];a[C+4>>2]=a[u+4>>2];a[C+8>>2]=a[u+8>>2];a[C+12>>2]=a[u+12>>2];f=1;while(1){if((f|0)==4){f=1;break}z=f+n|0;s[C+(f<<4)>>3]=+s[e+(z<<4)>>3];s[C+(f<<4)+8>>3]=+s[e+(z<<4)+8>>3];f=f+1|0}while(1){if((f|0)==7)break;QR(I,C,3,+(f|0)*.16666666666666666,0,0);y=+s[I>>3];W=+s[b>>3];a[Z>>2]=~~(y+(y>=0.0?.5:-.5));a[Z+4>>2]=~~(W+(W>=0.0?.5:-.5));f=f+1|0;r=r+(S4(r,81099,Z)|0)|0}o=o+6|0;n=l}f=a[v>>2]|0;W=+s[E>>3];a[m>>2]=3;a[m+4>>2]=w;a[m+8>>2]=f;a[m+12>>2]=h;a[m+16>>2]=d;a[m+20>>2]=t;a[m+24>>2]=B;a[m+28>>2]=0;a[m+32>>2]=c;s[m+40>>3]=W;a[m+48>>2]=0;a[m+52>>2]=0;a[m+56>>2]=0;a[m+60>>2]=o;vv(A,68382,m);a[G>>2]=g;vv(A,81106,G);L2(g);f=o+-1|0;r=0;while(1){if((r|0)>=(o|0))break;a[Q>>2]=((r|0)%(f|0)|0|0)!=0&1;vv(A,81111,Q);r=r+1|0}kv(A,153599)|0;k=L;return}function cG(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0.0,l=0,t=0,c=0,b=0,u=0,w=0;r=k;k=k+96|0;f=r+8|0;b=r+80|0;u=r;w=a[A+16>>2]|0;c=~~+s[w+152>>3];t=a[w+16>>2]|0;l=a[46710]|0;bG(w,b,u);b=a[b>>2]|0;n=+s[u>>3];a[f>>2]=2;a[f+4>>2]=1;a[f+8>>2]=b;a[f+12>>2]=c;a[f+16>>2]=t;a[f+20>>2]=0;a[f+24>>2]=l;a[f+28>>2]=0;a[f+32>>2]=0;s[f+40>>3]=n;a[f+48>>2]=0;a[f+52>>2]=0;a[f+56>>2]=0;a[f+60>>2]=0;a[f+64>>2]=0;a[f+68>>2]=i;vv(A,68331,f);uG(A,e,i,0);k=r;return}function sG(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+16|0;r=i;a[r>>2]=e;vv(A,68325,r);k=i;return}function bG(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;switch(a[A+144>>2]|0){case 1:{r=10.0;A=1;break}case 2:{r=10.0;A=2;break}default:{r=0.0;A=0}}a[e>>2]=A;s[i>>3]=r;return}function uG(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0.0,b=0.0;t=k;k=k+16|0;l=t+8|0;n=t;f=0;while(1){if((f|0)>=(i|0))break;b=+s[e+(f<<4)>>3];c=+s[e+(f<<4)+8>>3];a[n>>2]=~~(b+(b>=0.0?.5:-.5));a[n+4>>2]=~~(c+(c>=0.0?.5:-.5));vv(A,81099,n);f=f+1|0}if(r|0){c=+s[e>>3];b=+s[e+8>>3];a[l>>2]=~~(c+(c>=0.0?.5:-.5));a[l+4>>2]=~~(b+(b>=0.0?.5:-.5));vv(A,81099,l)}kv(A,153599)|0;k=t;return}function wG(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;a[A>>2]=0;s=a[46711]|0;l=195075;n=0;t=-1;while(1){if((n|0)>=(s|0)){b=6;break}u=(f[190680+(n<<1)>>1]|0)-e|0;w=(f[191192+(n<<1)>>1]|0)-i|0;c=(f[191704+(n<<1)>>1]|0)-r|0;c=(U(w,w)|0)+(U(u,u)|0)+(U(c,c)|0)|0;if((c|0)<(l|0))if(!c)break;else{l=c;t=n}n=n+1|0}if((b|0)==6){a[46711]=s+1;if((s|0)==256)n=t;else{f[190680+(n<<1)>>1]=e;f[191192+(n<<1)>>1]=i;f[191704+(n<<1)>>1]=r;a[A>>2]=1}}return n|0}function kG(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;l=t;e=a[46712]|0;if(!e){a[46713]=64;e=Q2(64)|0;a[46712]=e;i=0}else i=0;while(1){n=A+1|0;f=r[A>>0]|0;if(!(f<<24>>24))break;A=a[46713]|0;if((i|0)>(A+-8|0)){e=A<<1;a[46713]=e;e=W2(a[46712]|0,e)|0;a[46712]=e;e=e+i|0}if(f<<24>>24<=-1){r[e>>0]=92;a[l>>2]=f&255;S4(e+1|0,81224,l)|0;A=n;e=e+4|0;i=i+4|0;continue}if(f<<24>>24==92){r[e>>0]=92;i=i+1|0;e=e+1|0}r[e>>0]=f;A=n;e=e+1|0;i=i+1|0}r[e>>0]=0;k=t;return a[46712]|0}function oG(A){A=A|0;var e=0,i=0,f=0;i=a[A+16>>2]|0;switch(a[A+64>>2]|0){case 0:{kv(A,68220)|0;e=i+208|0;i=a[e>>2]|0;if(i|0?r[i>>0]|0:0){kv(A,68234)|0;kv(A,SF(a[e>>2]|0)|0)|0;kv(A,153599)|0}break}case 1:{e=i+208|0;f=a[e>>2]|0;if(f|0?r[f>>0]|0:0){kv(A,68234)|0;kv(A,SF(a[e>>2]|0)|0)|0;kv(A,102604)|0;kv(A,SF(Vh(a[i+8>>2]|0)|0)|0)|0;kv(A,153599)|0}break}case 3:{f=SF(Vh(a[i+8>>2]|0)|0)|0;kv(A,68243)|0;kv(A,f)|0;kv(A,68253)|0;kv(A,f)|0;kv(A,68208)|0;break}default:{}}return}function hG(A){A=A|0;var e=0;e=a[A+16>>2]|0;switch(a[A+64>>2]|0){case 2:{BG(A,a[e+264>>2]|0,a[e+272>>2]|0,a[e+268>>2]|0,a[e+208>>2]|0,a[e+228>>2]|0,a[e+244>>2]|0,a[e+212>>2]|0);break}case 3:{BG(A,a[e+264>>2]|0,a[e+272>>2]|0,a[e+268>>2]|0,a[e+208>>2]|0,a[e+228>>2]|0,a[e+244>>2]|0,a[e+212>>2]|0);kv(A,68212)|0;break}default:{}}return}function dG(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0;n=a[A+16>>2]|0;BG(A,a[n+264>>2]|0,a[n+272>>2]|0,a[n+268>>2]|0,e,i,r,f);return}function BG(A,e,i,f,n,l,t,c){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;t=t|0;c=c|0;var b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0.0;Z=k;k=k+128|0;I=Z+120|0;v=Z+112|0;g=Z+96|0;B=Z+80|0;d=Z+56|0;C=Z+48|0;h=Z+40|0;E=Z+24|0;o=Z;A:do{if((i|0)!=0&(f|0)!=0){b=f+10|0;if((a[46714]|0)<(f|0)){a[46714]=b;w=W2(a[46715]|0,b<<3)|0;a[46715]=w}else w=a[46715]|0;b=0;while(1){if((b|0)>=(f|0))break;G=+s[i+(b<<4)>>3];a[w+(b<<3)>>2]=~~(G+(G>=0.0?.5:-.5));G=+s[i+(b<<4)+8>>3];a[w+(b<<3)+4>>2]=~~(G+(G>=0.0?.5:-.5));b=b+1|0}u=A+64|0;b=a[u>>2]|0;i=(n|0)!=0;if(i&(b|0)==0){if(!(r[n>>0]|0))break;switch(e|0){case 0:{E=a[w>>2]|0;C=a[w+12>>2]|0;I=a[w+8>>2]|0;f=a[w+4>>2]|0;a[o>>2]=n;a[o+4>>2]=E;a[o+8>>2]=C;a[o+12>>2]=I;a[o+16>>2]=f;vv(A,67954,o);break A}case 1:{C=a[w>>2]|0;I=a[w+4>>2]|0;f=(a[w+8>>2]|0)-C|0;a[E>>2]=n;a[E+4>>2]=C;a[E+8>>2]=I;a[E+12>>2]=f;vv(A,67975,E);break A}case 2:{a[h>>2]=n;vv(A,67995,h);b=0;while(1){if((b|0)>=(f|0))break;E=a[46715]|0;I=a[E+(b<<3)+4>>2]|0;a[C>>2]=a[E+(b<<3)>>2];a[C+4>>2]=I;vv(A,68003,C);b=b+1|0}kv(A,153599)|0;break A}default:gA(138394,68010,63,68030)}}if(i&(b|0)==1){if(!(r[n>>0]|0))break;if(!e){C=a[w+12>>2]|0;I=a[w+8>>2]|0;f=a[w+4>>2]|0;a[d>>2]=a[w>>2];a[d+4>>2]=C;a[d+8>>2]=I;a[d+12>>2]=f;a[d+16>>2]=n;a[d+20>>2]=l;vv(A,68047,d);break}else gA(138394,68010,75,68030)}if((b&-2|0)==2){switch(e|0){case 1:{kv(A,68080)|0;break}case 0:{kv(A,68101)|0;break}case 2:{kv(A,68120)|0;break}default:gA(138394,68010,91,68030)}if(c|0?r[c>>0]|0:0){kv(A,73600)|0;kv(A,_F(c)|0)|0;kv(A,98744)|0}if(i?r[n>>0]|0:0){kv(A,68139)|0;kv(A,_F(n)|0)|0;kv(A,98744)|0}if(t|0?r[t>>0]|0:0){kv(A,74559)|0;kv(A,SF(t)|0)|0;kv(A,98744)|0}if(l|0?r[l>>0]|0:0){kv(A,68147)|0;kv(A,SF(l)|0)|0;kv(A,98744)|0}kv(A,68156)|0;kv(A,68164)|0;e:do{switch(e|0){case 1:{f=a[46715]|0;C=a[f>>2]|0;I=a[f+4>>2]|0;f=(a[f+8>>2]|0)-C|0;a[B>>2]=C;a[B+4>>2]=I;a[B+8>>2]=f;vv(A,68174,B);break}case 0:{E=a[46715]|0;C=a[E+12>>2]|0;I=a[E+8>>2]|0;f=a[E+4>>2]|0;a[g>>2]=a[E>>2];a[g+4>>2]=C;a[g+8>>2]=I;a[g+12>>2]=f;vv(A,68183,g);break}case 2:{C=a[46715]|0;b=a[C+4>>2]|0;a[v>>2]=a[C>>2];a[v+4>>2]=b;vv(A,68195,v);b=1;while(1){if((b|0)>=(f|0))break e;E=a[46715]|0;C=a[E+(b<<3)+4>>2]|0;a[I>>2]=a[E+(b<<3)>>2];a[I+4>>2]=C;vv(A,68201,I);b=b+1|0}}default:{}}}while(0);if((a[u>>2]|0)==3){kv(A,73424)|0;break}else{kv(A,68208)|0;break}}}}while(0);k=Z;return}function gG(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0;e=k;k=k+32|0;i=e+24|0;r=e+16|0;n=e;f=a[A+16>>2]|0;kv(A,68623)|0;c=a[a[A+12>>2]>>2]|0;t=a[c+4>>2]|0;l=a[c+8>>2]|0;a[n>>2]=a[c>>2];a[n+4>>2]=t;a[n+8>>2]=l;vv(A,68633,n);a[r>>2]=Vh(a[f+8>>2]|0)|0;vv(A,68668,r);a[i>>2]=U(a[A+168>>2]|0,a[A+164>>2]|0)|0;vv(A,68681,i);kv(A,68694)|0;kv(A,68704)|0;kv(A,68712)|0;kv(A,68720)|0;kv(A,68728)|0;kv(A,68736)|0;kv(A,68744)|0;kv(A,68748)|0;kv(A,68753)|0;k=e;return}function vG(A){A=A|0;kv(A,68604)|0;return}function EG(A){A=A|0;a[46716]=2;return}function CG(A){A=A|0;a[46716]=1;return}function IG(A){A=A|0;a[46716]=2;return}function ZG(A){A=A|0;a[46716]=0;return}function GG(A){A=A|0;a[46716]=2;return}function mG(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0.0,l=0.0,t=0,c=0,b=0,u=0,w=0.0,o=0.0,h=0;u=k;k=k+80|0;b=u;t=a[(a[A+16>>2]|0)+16>>2]|0;c=a[46716]|0;f=a[i+4>>2]|0;n=+s[A+352>>3]*+s[f+16>>3];l=a[A+360>>2]|0?1.5707963267948966:0.0;f=a[f+8>>2]|0;if(!f)f=-1;else f=a[f+20>>2]|0;h=r[i+48>>0]|0;o=+s[e>>3];w=+s[e+8>>3];i=VG(a[i>>2]|0)|0;a[b>>2]=4;a[b+4>>2]=h<<24>>24==108?0:h<<24>>24==114?2:1;a[b+8>>2]=t;a[b+12>>2]=c;a[b+16>>2]=0;a[b+20>>2]=f;s[b+24>>3]=n;s[b+32>>3]=l;a[b+40>>2]=4;s[b+48>>3]=0.0;s[b+56>>3]=0.0;a[b+64>>2]=~~(o+(o>=0.0?.5:-.5));a[b+68>>2]=~~(w+(w>=0.0?.5:-.5));a[b+72>>2]=i;vv(A,68549,b);k=u;return}function QG(A,e){A=A|0;e=e|0;var i=0,f=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;u=k;k=k+32|0;c=u;t=u+20|0;b=e+32|0;A:do{switch(a[b>>2]|0){case 5:{i=0;while(1){f=a[12724+(i<<2)>>2]|0;if((i|0)==8)break A;l=a[e>>2]|0;if((r[f>>0]|0)==(r[l>>0]|0)?(A1(f,l)|0)==0:0){s=10;break A}i=i+1|0}}case 1:{f=e+1|0;l=e+2|0;i=(FG(t,n[e>>0]|0,n[f>>0]|0,n[l>>0]|0)|0)+32|0;if(!(a[t>>2]|0))s=10;else{w=n[e>>0]|0;t=n[f>>0]|0;s=n[l>>0]|0;a[c>>2]=0;a[c+4>>2]=i;a[c+8>>2]=w;a[c+12>>2]=t;a[c+16>>2]=s;vv(A,68492,c);s=10}break}case 0:{i=0;s=10;break}default:gA(138394,68513,168,68532)}}while(0);if((s|0)==10)a[e>>2]=i;a[b>>2]=6;k=u;return}function LG(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0.0,l=0.0,t=0,c=0,b=0.0,u=0.0,w=0.0,o=0,h=0,d=0,B=0,g=0,v=0;r=k;k=k+112|0;f=r+8|0;v=r+104|0;g=r;c=a[A+16>>2]|0;B=~~+s[c+152>>3];d=a[c+16>>2]|0;h=a[c+56>>2]|0;o=a[46716]|0;DG(c,v,g);u=+s[e>>3];c=~~(u+(u>=0.0?.5:-.5));b=+s[e+8>>3];t=~~(b+(b>=0.0?.5:-.5));l=+s[e+16>>3];u=l-u;n=+s[e+24>>3];b=n-b;e=a[v>>2]|0;w=+s[g>>3];a[f>>2]=1;a[f+4>>2]=1;a[f+8>>2]=e;a[f+12>>2]=B;a[f+16>>2]=d;a[f+20>>2]=h;a[f+24>>2]=o;a[f+28>>2]=0;a[f+32>>2]=i|0?20:-1;s[f+40>>3]=w;a[f+48>>2]=0;s[f+56>>3]=0.0;a[f+64>>2]=c;a[f+68>>2]=t;a[f+72>>2]=~~(u+(u>=0.0?.5:-.5));a[f+76>>2]=~~(b+(b>=0.0?.5:-.5));a[f+80>>2]=c;a[f+84>>2]=t;a[f+88>>2]=~~(l+(l>=0.0?.5:-.5));a[f+92>>2]=~~(n+(n>=0.0?.5:-.5));vv(A,68427,f);k=r;return}function yG(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0.0,t=0,c=0,b=0,u=0,w=0,o=0,h=0;f=k;k=k+96|0;n=f+8|0;w=f+80|0;o=f;h=a[A+16>>2]|0;u=~~+s[h+152>>3];b=a[h+16>>2]|0;c=a[h+56>>2]|0;t=a[46716]|0;DG(h,w,o);w=a[w>>2]|0;l=+s[o>>3];a[n>>2]=2;a[n+4>>2]=3;a[n+8>>2]=w;a[n+12>>2]=u;a[n+16>>2]=b;a[n+20>>2]=c;a[n+24>>2]=t;a[n+28>>2]=0;a[n+32>>2]=r|0?20:-1;s[n+40>>3]=l;a[n+48>>2]=0;a[n+52>>2]=0;a[n+56>>2]=0;a[n+60>>2]=0;a[n+64>>2]=0;a[n+68>>2]=i+1;vv(A,68331,n);MG(A,e,i,1);k=f;return}function WG(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0.0,W=0.0,z=0;L=k;k=k+192|0;Q=L+176|0;G=L+168|0;m=L+104|0;Z=L+96|0;f=L+88|0;v=L+180|0;E=L+80|0;C=L+16|0;I=L;r=A+16|0;o=a[r>>2]|0;h=~~+s[o+152>>3];d=a[o+16>>2]|0;B=a[46716]|0;g=Q2((i*140|0)+140|0)|0;DG(o,v,E);if(!n){w=4;t=0;c=-1}else{w=5;t=a[(a[r>>2]|0)+56>>2]|0;c=20}W=+s[e>>3];u=C+48|0;s[u>>3]=W;y=+s[e+8>>3];s[C+56>>3]=y;a[f>>2]=~~(W+(W>=0.0?.5:-.5));a[f+4>>2]=~~(y+(y>=0.0?.5:-.5));b=I+8|0;r=g+(S4(g,81099,f)|0)|0;o=1;n=0;while(1){l=n+3|0;if((l|0)>=(i|0))break;a[C>>2]=a[u>>2];a[C+4>>2]=a[u+4>>2];a[C+8>>2]=a[u+8>>2];a[C+12>>2]=a[u+12>>2];f=1;while(1){if((f|0)==4){f=1;break}z=f+n|0;s[C+(f<<4)>>3]=+s[e+(z<<4)>>3];s[C+(f<<4)+8>>3]=+s[e+(z<<4)+8>>3];f=f+1|0}while(1){if((f|0)==7)break;QR(I,C,3,+(f|0)*.16666666666666666,0,0);y=+s[I>>3];W=+s[b>>3];a[Z>>2]=~~(y+(y>=0.0?.5:-.5));a[Z+4>>2]=~~(W+(W>=0.0?.5:-.5));f=f+1|0;r=r+(S4(r,81099,Z)|0)|0}o=o+6|0;n=l}f=a[v>>2]|0;W=+s[E>>3];a[m>>2]=3;a[m+4>>2]=w;a[m+8>>2]=f;a[m+12>>2]=h;a[m+16>>2]=d;a[m+20>>2]=t;a[m+24>>2]=B;a[m+28>>2]=0;a[m+32>>2]=c;s[m+40>>3]=W;a[m+48>>2]=0;a[m+52>>2]=0;a[m+56>>2]=0;a[m+60>>2]=o;vv(A,68382,m);a[G>>2]=g;vv(A,81106,G);L2(g);f=o+-1|0;r=0;while(1){if((r|0)>=(o|0))break;a[Q>>2]=((r|0)%(f|0)|0|0)!=0&1;vv(A,81111,Q);r=r+1|0}kv(A,153599)|0;k=L;return}function zG(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0.0,l=0,t=0,c=0,b=0,u=0,w=0;r=k;k=k+96|0;f=r+8|0;b=r+80|0;u=r;w=a[A+16>>2]|0;c=~~+s[w+152>>3];t=a[w+16>>2]|0;l=a[46716]|0;DG(w,b,u);b=a[b>>2]|0;n=+s[u>>3];a[f>>2]=2;a[f+4>>2]=1;a[f+8>>2]=b;a[f+12>>2]=c;a[f+16>>2]=t;a[f+20>>2]=0;a[f+24>>2]=l;a[f+28>>2]=0;a[f+32>>2]=0;s[f+40>>3]=n;a[f+48>>2]=0;a[f+52>>2]=0;a[f+56>>2]=0;a[f+60>>2]=0;a[f+64>>2]=0;a[f+68>>2]=i;vv(A,68331,f);MG(A,e,i,0);k=r;return}function YG(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+16|0;r=i;a[r>>2]=e;vv(A,68325,r);k=i;return}function DG(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;switch(a[A+144>>2]|0){case 1:{r=10.0;A=1;break}case 2:{r=10.0;A=2;break}default:{r=0.0;A=0}}a[e>>2]=A;s[i>>3]=r;return}function MG(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0.0,b=0.0;t=k;k=k+16|0;l=t+8|0;n=t;f=0;while(1){if((f|0)>=(i|0))break;b=+s[e+(f<<4)>>3];c=+s[e+(f<<4)+8>>3];a[n>>2]=~~(b+(b>=0.0?.5:-.5));a[n+4>>2]=~~(c+(c>=0.0?.5:-.5));vv(A,81099,n);f=f+1|0}if(r|0){c=+s[e>>3];b=+s[e+8>>3];a[l>>2]=~~(c+(c>=0.0?.5:-.5));a[l+4>>2]=~~(b+(b>=0.0?.5:-.5));vv(A,81099,l)}kv(A,153599)|0;k=t;return}function FG(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;a[A>>2]=0;s=a[46717]|0;l=195075;n=0;t=-1;while(1){if((n|0)>=(s|0)){b=6;break}u=(f[192216+(n<<1)>>1]|0)-e|0;w=(f[192728+(n<<1)>>1]|0)-i|0;c=(f[193240+(n<<1)>>1]|0)-r|0;c=(U(w,w)|0)+(U(u,u)|0)+(U(c,c)|0)|0;if((c|0)<(l|0))if(!c)break;else{l=c;t=n}n=n+1|0}if((b|0)==6){a[46717]=s+1;if((s|0)==256)n=t;else{f[192216+(n<<1)>>1]=e;f[192728+(n<<1)>>1]=i;f[193240+(n<<1)>>1]=r;a[A>>2]=1}}return n|0}function VG(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;l=t;e=a[46718]|0;if(!e){a[46719]=64;e=Q2(64)|0;a[46718]=e;i=0}else i=0;while(1){n=A+1|0;f=r[A>>0]|0;if(!(f<<24>>24))break;A=a[46719]|0;if((i|0)>(A+-8|0)){e=A<<1;a[46719]=e;e=W2(a[46718]|0,e)|0;a[46718]=e;e=e+i|0}if(f<<24>>24<=-1){r[e>>0]=92;a[l>>2]=f&255;S4(e+1|0,81224,l)|0;A=n;e=e+4|0;i=i+4|0;continue}if(f<<24>>24==92){r[e>>0]=92;i=i+1|0;e=e+1|0}r[e>>0]=f;A=n;e=e+1|0;i=i+1|0}r[e>>0]=0;k=t;return a[46718]|0}function JG(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;i=k;k=k+16|0;e=i;kv(A,73332)|0;if((a[A+64>>2]|0)==2)kv(A,73347)|0;else kv(A,153599)|0;n=a[a[A+12>>2]>>2]|0;f=a[n+4>>2]|0;r=a[n+8>>2]|0;a[e>>2]=a[n>>2];a[e+4>>2]=f;a[e+8>>2]=r;vv(A,73358,e);k=i;return}function pG(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;n=k;k=k+32|0;f=n+8|0;r=n;kv(A,73286)|0;i=A+64|0;e=A+12|0;if((a[i>>2]|0)!=2){a[r>>2]=a[(a[e>>2]|0)+28>>2];vv(A,73297,r)}if((a[(a[e>>2]|0)+20>>2]|0)==0?(a[i>>2]|0)!=2:0){e=a[A+476>>2]|0;i=a[A+480>>2]|0;r=a[A+484>>2]|0;a[f>>2]=a[A+472>>2];a[f+4>>2]=e;a[f+8>>2]=i;a[f+12>>2]=r;vv(A,69666,f)}kv(A,73312)|0;kv(A,73325)|0;k=n;return}function NG(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;s=k;k=k+32|0;c=s+24|0;f=s+8|0;t=s;n=a[A+16>>2]|0;r[193768]=0;i=A+12|0;l=n+8|0;if(!(a[(a[i>>2]|0)+28>>2]|0)){a[t>>2]=Vh(a[l>>2]|0)|0;vv(A,69597,t);e=A+64|0;if((a[e>>2]|0)==2)kv(A,69630)|0;else kv(A,69612)|0;do{if(!(a[(a[i>>2]|0)+20>>2]|0))if((a[e>>2]|0)==2){u=a[A+460>>2]|0;b=a[A+464>>2]|0;e=a[A+468>>2]|0;a[f>>2]=a[A+456>>2];a[f+4>>2]=u;a[f+8>>2]=b;a[f+12>>2]=e;vv(A,69666,f);break}else{kv(A,69642)|0;break}}while(0);kv(A,69696)|0;XJ(A,a[(a[i>>2]|0)+24>>2]|0,13e3);UJ(A);e=a[(a[i>>2]|0)+20>>2]|0;if(e|0){a[t>>2]=a[e>>2];a[t+4>>2]=0;XJ(A,0,t)}}a[46720]=(r[(a[(a[l>>2]|0)+16>>2]|0)+115>>0]|0)==1?1:-1;if(!(r[193768]|0)){kv(A,69716)|0;r[193768]=1}e=a[n+208>>2]|0;if(e|0){a[c>>2]=xJ(e,a[46720]|0)|0;vv(A,69729,c)}k=s;return}function RG(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0;e=k;k=k+16|0;f=e;a[f>>2]=i;a[f+4>>2]=r;vv(A,69581,f);k=e;return}function XG(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0.0,E=0.0,C=0.0;B=k;k=k+144|0;d=B+128|0;h=B+112|0;o=B+72|0;w=B+56|0;u=B+40|0;b=B+32|0;r=B+24|0;e=B+8|0;i=B;f=a[A+456>>2]|0;t=a[A+460>>2]|0;n=a[A+464>>2]|0;l=a[A+468>>2]|0;c=A+12|0;g=(a[(a[c>>2]|0)+28>>2]|0)+1|0;a[i>>2]=g;a[i+4>>2]=g;vv(A,69208,i);if(!(a[(a[c>>2]|0)+20>>2]|0)){a[e>>2]=f;a[e+4>>2]=t;a[e+8>>2]=n;a[e+12>>2]=l;vv(A,69225,e)}i=A+360|0;a[r>>2]=a[i>>2]|0?69259:69269;vv(A,69278,r);e=A+64|0;if((a[e>>2]|0)==1){a[b>>2]=n;a[b+4>>2]=l;vv(A,69303,b)}b=a[A+200>>2]|0;g=a[A+204>>2]|0;a[u>>2]=a[A+196>>2];a[u+4>>2]=b;a[u+8>>2]=g;vv(A,69342,u);if(!(a[(a[c>>2]|0)+20>>2]|0)){a[w>>2]=f;a[w+4>>2]=t;a[w+8>>2]=n-f;a[w+12>>2]=l-t;vv(A,69362,w)}C=+s[A+496>>3];g=a[i>>2]|0;E=+s[A+504>>3];v=+s[A+512>>3];s[o>>3]=+s[A+488>>3];s[o+8>>3]=C;a[o+16>>2]=g;s[o+24>>3]=E;s[o+32>>3]=v;vv(A,69402,o);if((a[e>>2]|0)==1){if((n|0)>14399|(l|0)>14399){g=a[(a[c>>2]|0)+16>>2]|0;a[h>>2]=n;a[h+4>>2]=l;a[h+8>>2]=14400;V5[g&63](69445,h)}a[d>>2]=f;a[d+4>>2]=t;a[d+8>>2]=n;a[d+12>>2]=l;vv(A,69540,d)}k=B;return}function HG(A){A=A|0;var e=0,i=0,r=0;r=k;k=k+16|0;i=r;e=A+12|0;if(a[(a[e>>2]|0)+20>>2]|0){kv(A,69132)|0;XJ(A,0,(a[(a[e>>2]|0)+20>>2]|0)+4|0)}kv(A,69149)|0;kv(A,69176)|0;a[i>>2]=a[(a[e>>2]|0)+28>>2];vv(A,69191,i);k=r;return}function UG(A){A=A|0;var e=0,i=0;e=k;k=k+16|0;i=e;a[i>>2]=Vh(a[(a[A+16>>2]|0)+8>>2]|0)|0;vv(A,69125,i);kv(A,69118)|0;k=e;return}function xG(A){A=A|0;kv(A,84552)|0;return}function TG(A){A=A|0;kv(A,69118)|0;return}function jG(A){A=A|0;kv(A,84552)|0;return}function PG(A){A=A|0;kv(A,69118)|0;return}function SG(A){A=A|0;kv(A,84552)|0;return}function OG(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0;r=k;k=k+16|0;i=r;if(e|0?(n=(a[A+16>>2]|0)+272|0,a[n>>2]|0):0){kv(A,69014)|0;Zv(A,a[n>>2]|0,2);kv(A,69025)|0;a[i>>2]=xJ(e,a[46720]|0)|0;vv(A,69029,i)}k=r;return}function KG(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0.0,l=0,t=0,c=0,b=0,u=0;b=k;k=k+32|0;t=b+8|0;c=b;f=a[A+16>>2]|0;if(!(+s[f+40>>3]<.5)){rm(A,f+16|0);l=i+4|0;Ev(A,+s[(a[l>>2]|0)+16>>3]);a[t>>2]=a[a[l>>2]>>2];vv(A,68973,t);l=xJ(a[i>>2]|0,a[46720]|0)|0;switch(r[i+48>>0]|0){case 114:{u=i+32|0;f=u;n=+s[u>>3];break}case 108:{f=i+32|0;n=0.0;break}default:{u=i+32|0;f=u;n=+s[u>>3]*.5}}s[e>>3]=+s[e>>3]-n;u=e+8|0;s[u>>3]=+s[u>>3]+ +s[i+24>>3];a[t>>2]=a[e>>2];a[t+4>>2]=a[e+4>>2];a[t+8>>2]=a[e+8>>2];a[t+12>>2]=a[e+12>>2];Iv(A,t);kv(A,68988)|0;Ev(A,+s[f>>3]);a[c>>2]=l;vv(A,68997,c)}k=b;return}function _G(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;n=k;k=k+32|0;f=n;a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];s[f+16>>3]=+s[e+16>>3]-+s[e>>3];s[f+24>>3]=+s[e+24>>3]-+s[e+8>>3];e=A+16|0;if(i|0?(r=a[e>>2]|0,+s[r+80>>3]>.5):0){rm(A,r+56|0);Zv(A,f,2);kv(A,68931)|0}if(+s[(a[e>>2]|0)+40>>3]>.5){fm(A);rm(A,(a[e>>2]|0)+16|0);Zv(A,f,2);kv(A,68951)|0}k=n;return}function qG(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0;t=k;k=k+16|0;l=t;n=A+16|0;if(r|0?(f=a[n>>2]|0,+s[f+80>>3]>.5):0){rm(A,f+56|0);kv(A,68852)|0;a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2];Iv(A,l);kv(A,68861)|0;r=1;while(1){if((r|0)>=(i|0))break;f=e+(r<<4)|0;a[l>>2]=a[f>>2];a[l+4>>2]=a[f+4>>2];a[l+8>>2]=a[f+8>>2];a[l+12>>2]=a[f+12>>2];Iv(A,l);kv(A,68870)|0;r=r+1|0}kv(A,68897)|0}if(+s[(a[n>>2]|0)+40>>3]>.5){fm(A);rm(A,(a[n>>2]|0)+16|0);kv(A,68852)|0;a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2];Iv(A,l);kv(A,68861)|0;r=1;while(1){if((r|0)>=(i|0))break;n=e+(r<<4)|0;a[l>>2]=a[n>>2];a[l+4>>2]=a[n+4>>2];a[l+8>>2]=a[n+8>>2];a[l+12>>2]=a[n+12>>2];Iv(A,l);kv(A,68870)|0;r=r+1|0}kv(A,68913)|0}k=t;return}function $G(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0;c=k;k=k+16|0;f=c;l=A+16|0;if(n|0?(t=a[l>>2]|0,+s[t+80>>3]>.5):0){rm(A,t+56|0);kv(A,68852)|0;a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];Iv(A,f);kv(A,68861)|0;r=1;while(1){if((r|0)>=(i|0))break;Zv(A,e+(r<<4)|0,3);kv(A,68887)|0;r=r+3|0}kv(A,68897)|0}if(+s[(a[l>>2]|0)+40>>3]>.5){fm(A);rm(A,(a[l>>2]|0)+16|0);kv(A,68852)|0;a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];Iv(A,f);kv(A,68861)|0;r=1;while(1){if((r|0)>=(i|0))break;Zv(A,e+(r<<4)|0,3);kv(A,68887)|0;r=r+3|0}kv(A,68879)|0}k=c;return}function Am(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;n=k;k=k+16|0;f=n;r=A+16|0;if(+s[(a[r>>2]|0)+40>>3]>.5){fm(A);rm(A,(a[r>>2]|0)+16|0);kv(A,68852)|0;a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];Iv(A,f);kv(A,68861)|0;r=1;while(1){if((r|0)>=(i|0))break;l=e+(r<<4)|0;a[f>>2]=a[l>>2];a[f+4>>2]=a[l+4>>2];a[f+8>>2]=a[l+8>>2];a[f+12>>2]=a[l+12>>2];Iv(A,f);kv(A,68870)|0;r=r+1|0}kv(A,68879)|0}k=n;return}function em(A,e){A=A|0;e=e|0;kv(A,68849)|0;kv(A,e)|0;kv(A,153599)|0;return}function im(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,b=0,u=0;u=k;k=k+32|0;n=u+16|0;b=u+8|0;c=u;l=A+16|0;if(f|0?(t=a[l>>2]|0,+s[t+80>>3]>.5):0){rm(A,t+56|0);kv(A,84447)|0;Zv(A,i,r);kv(A,102604)|0;a[n>>2]=a[i>>2];a[n+4>>2]=a[i+4>>2];a[n+8>>2]=a[i+8>>2];a[n+12>>2]=a[i+12>>2];Iv(A,n);a[c>>2]=r;a[c+4>>2]=e;vv(A,68766,c)}if(+s[(a[l>>2]|0)+40>>3]>.5){fm(A);rm(A,(a[l>>2]|0)+16|0);kv(A,84447)|0;Zv(A,i,r);kv(A,102604)|0;a[n>>2]=a[i>>2];a[n+4>>2]=a[i+4>>2];a[n+8>>2]=a[i+8>>2];a[n+12>>2]=a[i+12>>2];Iv(A,n);a[b>>2]=r;a[b+4>>2]=e;vv(A,68782,b)}k=u;return}function rm(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0.0,l=0.0;f=k;k=k+32|0;r=f;if(e|0){switch(a[(a[A+16>>2]|0)+4>>2]|0){case 1:case 0:{i=111494;break}case 2:{i=111481;break}case 3:{i=111450;break}default:i=68818}l=+s[e+8>>3];n=+s[e+16>>3];s[r>>3]=+s[e>>3];s[r+8>>3]=l;s[r+16>>3]=n;a[r+24>>2]=i;vv(A,68825,r)}k=f;return}function fm(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,b=0;b=k;k=k+16|0;c=b+8|0;t=b;n=A+16|0;l=a[n>>2]|0;e=a[l+160>>2]|0;Ev(A,+s[l+152>>3]);kv(A,68799)|0;while(1){if(!e)break;l=e+4|0;f=a[e>>2]|0;if(!f)break;if(!(A1(f,111088)|0)){e=l;continue}else i=f;while(1){e=i+1|0;if(!(r[i>>0]|0))break;else i=e}A:while(1){if(!(r[e>>0]|0))break;a[t>>2]=e;vv(A,68814,t);while(1){i=e+1|0;if(!(r[e>>0]|0)){e=i;continue A}else e=i}}if(!(A1(f,134335)|0))s[(a[n>>2]|0)+152>>3]=0.0;a[c>>2]=f;vv(A,96670,c);e=l}k=b;return}function am(A){A=A|0;var e=0;kv(A,74838)|0;e=Ho(a[(a[A>>2]|0)+168>>2]|0,74894)|0;if(e|0?r[e>>0]|0:0){kv(A,74905)|0;kv(A,e)|0;kv(A,74929)|0}kv(A,74950)|0;kv(A,74998)|0;kv(A,75052)|0;e=A+12|0;kv(A,SF(a[a[a[e>>2]>>2]>>2]|0)|0)|0;kv(A,78181)|0;kv(A,SF(a[(a[a[e>>2]>>2]|0)+4>>2]|0)|0)|0;kv(A,78191)|0;kv(A,SF(a[(a[a[e>>2]>>2]|0)+8>>2]|0)|0)|0;kv(A,75434)|0;kv(A,75458)|0;return}function nm(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0.0,c=0.0,b=0.0;l=k;k=k+48|0;n=l+16|0;f=l+8|0;i=l;e=a[A+16>>2]|0;kv(A,74673)|0;e=e+8|0;if(r[(Vh(a[e>>2]|0)|0)>>0]|0){kv(A,75397)|0;kv(A,SF(Vh(a[e>>2]|0)|0)|0)|0}a[i>>2]=U(a[A+168>>2]|0,a[A+164>>2]|0)|0;vv(A,74678,i);i=a[A+452>>2]|0;a[f>>2]=a[A+448>>2];a[f+4>>2]=i;vv(A,74694,f);b=+s[A+392>>3];c=+s[A+400>>3];t=+s[A+408>>3];s[n>>3]=+s[A+384>>3];s[n+8>>3]=b;s[n+16>>3]=c;s[n+24>>3]=t;vv(A,74727,n);kv(A,74758)|0;kv(A,74794)|0;kv(A,76388)|0;k=l;return}function lm(A){A=A|0;kv(A,74665)|0;return}function tm(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;zm(A,e,0,101510,a[(a[A+16>>2]|0)+8>>2]|0);kv(A,76388)|0;return}function cm(A){A=A|0;kv(A,74513)|0;return}function sm(A){A=A|0;var e=0,i=0,f=0,n=0;i=k;k=k+16|0;f=i;n=a[A+16>>2]|0;e=n+8|0;zm(A,a[n+212>>2]|0,0,111494,a[e>>2]|0);kv(A,74617)|0;Ev(A,+s[A+488>>3]);kv(A,102604)|0;Ev(A,+s[A+496>>3]);a[f>>2]=0-(a[A+360>>2]|0);vv(A,74636,f);Ev(A,+s[A+504>>3]);kv(A,102604)|0;Ev(A,-+s[A+512>>3]);kv(A,74660)|0;if(r[(Vh(a[e>>2]|0)|0)>>0]|0){kv(A,74569)|0;kv(A,SF(Vh(a[e>>2]|0)|0)|0)|0;kv(A,74577)|0}k=i;return}function bm(A){A=A|0;kv(A,74513)|0;return}function um(A){A=A|0;var e=0,i=0;i=a[A+16>>2]|0;e=i+8|0;zm(A,a[i+212>>2]|0,0,108006,a[e>>2]|0);kv(A,76388)|0;kv(A,74569)|0;kv(A,SF(Vh(a[e>>2]|0)|0)|0)|0;kv(A,74577)|0;return}function wm(A){A=A|0;kv(A,74513)|0;return}function km(A){A=A|0;var e=0,i=0,r=0;i=a[A+16>>2]|0;e=a[A+160>>2]|0;if((e|0)>1)e=a[(a[(a[A>>2]|0)+308>>2]|0)+(e<<2)>>2]|0;else e=0;r=i+8|0;zm(A,a[i+212>>2]|0,e,111481,a[r>>2]|0);kv(A,76388)|0;kv(A,74569)|0;kv(A,SF(Vh(a[r>>2]|0)|0)|0)|0;kv(A,74577)|0;return}function om(A){A=A|0;kv(A,74513)|0;return}function hm(A){A=A|0;var e=0,i=0;i=a[A+16>>2]|0;e=i+8|0;zm(A,a[i+212>>2]|0,0,111450,a[e>>2]|0);kv(A,76388)|0;kv(A,74569)|0;e=PF(102095,a[e>>2]|0)|0;kv(A,SF(e)|0)|0;L2(e);kv(A,74577)|0;return}function dm(A){A=A|0;kv(A,74513)|0;return}function Bm(A,e,i,f,a){A=A|0;e=e|0;i=i|0;f=f|0;a=a|0;kv(A,74519)|0;if(a|0){kv(A,74522)|0;kv(A,SF(a)|0)|0;kv(A,98744)|0}kv(A,74412)|0;kv(A,76349)|0;if(e|0?r[e>>0]|0:0){kv(A,74530)|0;kv(A,e)|0;kv(A,98744)|0}if(i|0?r[i>>0]|0:0){kv(A,74544)|0;kv(A,OF(i,1)|0)|0;kv(A,98744)|0}if(f|0?r[f>>0]|0:0){kv(A,74559)|0;kv(A,SF(f)|0)|0;kv(A,98744)|0}kv(A,76388)|0;return}function gm(A){A=A|0;kv(A,76343)|0;kv(A,74513)|0;return}function vm(A,e,i){A=A|0;e=e|0;i=i|0;var l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0.0,D=0,M=0,F=0,V=0,J=0,p=0;p=k;k=k+176|0;J=p+160|0;V=p+152|0;z=p+136|0;F=p+128|0;W=p+120|0;y=p+112|0;L=p+104|0;Q=p+96|0;m=p+88|0;Z=p+80|0;C=p+72|0;E=p+64|0;v=p+56|0;g=p+48|0;l=p+40|0;h=p+32|0;B=p+24|0;d=p+16|0;o=p+8|0;w=p;M=a[A+16>>2]|0;kv(A,74044)|0;switch(r[i+48>>0]|0){case 108:{kv(A,74050)|0;break}case 114:{kv(A,74071)|0;break}default:kv(A,74090)|0}D=e+8|0;Y=+s[D>>3]+ +s[i+24>>3];s[D>>3]=Y;D=M+260|0;if(!(f[D>>1]&512)){kv(A,74112)|0;Ev(A,+s[e>>3]);kv(A,74117)|0;Ev(A,-Y);kv(A,98744)|0}I=i+4|0;e=a[I>>2]|0;u=a[e+8>>2]|0;if(u){switch(a[(a[(a[(a[A>>2]|0)+168>>2]|0)+16>>2]|0)+244>>2]|0){case 1:{b=u;e=u+16|0;l=u+8|0;break}case 2:{b=u+24|0;e=u+32|0;l=u+28|0;break}default:{b=u+4|0;e=u+16|0;l=u+8|0}}t=a[e>>2]|0;e=a[l>>2]|0;c=a[u+12>>2]|0;a[w>>2]=a[b>>2];vv(A,74123,w);l=a[u+24>>2]|0;if(l|0){a[o>>2]=l;vv(A,74140,o)}kv(A,98744)|0;if(e|0){a[d>>2]=e;vv(A,74144,d)}if(c|0){a[B>>2]=c;vv(A,74162,B)}if(!t)t=0;else{a[h>>2]=t;vv(A,74181,h)}}else{a[l>>2]=a[e>>2];vv(A,74198,l);t=0;e=0}l=a[I>>2]|0;if(l|0?(G=a[l+24>>2]|0,G&127|0):0){if(!((e|0)!=0|(G&1|0)==0))vv(A,74216,g);if(!((t|0)!=0|(G&2|0)==0))vv(A,74236,v);if(G&100|0){vv(A,74257,E);if(!(G&4))e=0;else{vv(A,105986,C);e=1}if(G&64){a[Z>>2]=e|0?100999:195059;vv(A,74276,Z);e=1}if(G&32|0){a[m>>2]=e|0?100999:195059;vv(A,74287,m)}vv(A,98744,Q)}if(G&8|0)vv(A,74302,L);if(G&16|0)vv(A,74326,y)}s[W>>3]=+s[(a[I>>2]|0)+16>>3];vv(A,74348,W);e=M+16|0;switch(a[M+48>>2]|0){case 5:{e=a[e>>2]|0;if(p1(e,137314)|0){a[F>>2]=e;vv(A,74366,F)}break}case 1:{W=n[e+1>>0]|0;F=n[e+2>>0]|0;a[z>>2]=n[e>>0];a[z+4>>2]=W;a[z+8>>2]=F;vv(A,74377,z);break}default:gA(138394,73558,486,74399)}kv(A,74412)|0;if(f[D>>1]&512){a[V>>2]=SF(a[M+212>>2]|0)|0;vv(A,74414,V);kv(A,74463)|0;Ev(A,-Y);kv(A,74481)|0}kv(A,OF(a[i>>2]|0,1)|0)|0;if(f[D>>1]&512)vv(A,74484,J);kv(A,74504)|0;k=p;return}function Em(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;switch(i|0){case 2:{r=Lm(A,e,2)|0;break}case 3:{r=ym(A)|0;break}default:r=0}kv(A,74008)|0;mm(A,i,r);kv(A,74017)|0;Ev(A,+s[e>>3]);kv(A,74023)|0;i=e+8|0;Ev(A,-+s[i>>3]);kv(A,74030)|0;Ev(A,+s[e+16>>3]-+s[e>>3]);kv(A,74037)|0;Ev(A,+s[e+24>>3]-+s[i>>3]);kv(A,73424)|0;return}function Cm(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0;switch(r|0){case 2:{f=Lm(A,e,i)|0;break}case 3:{f=ym(A)|0;break}default:f=0}kv(A,73999)|0;mm(A,r,f);kv(A,73414)|0;f=0;while(1){if((f|0)>=(i|0))break;Ev(A,+s[e+(f<<4)>>3]);kv(A,100999)|0;Ev(A,-+s[e+(f<<4)+8>>3]);kv(A,102604)|0;f=f+1|0}Ev(A,+s[e>>3]);kv(A,100999)|0;Ev(A,-+s[e+8>>3]);kv(A,73424)|0;return}function Im(A,e,i,r,n,l){A=A|0;e=e|0;i=i|0;r=r|0;n=n|0;l=l|0;n=a[A+16>>2]|0;switch(l|0){case 2:{r=Lm(A,e,i)|0;break}case 3:{r=ym(A)|0;break}default:r=0}kv(A,73594)|0;if(f[n+260>>1]&512){kv(A,73600)|0;kv(A,SF(a[n+212>>2]|0)|0)|0;kv(A,73606)|0}mm(A,l,r);kv(A,73611)|0;Wm(A,e,i);kv(A,73424)|0;return}function Zm(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;kv(A,73404)|0;mm(A,0,0);kv(A,73414)|0;r=0;while(1){if((r|0)>=(i|0))break;Ev(A,+s[e+(r<<4)>>3]);kv(A,100999)|0;Ev(A,-+s[e+(r<<4)+8>>3]);kv(A,102604)|0;r=r+1|0}kv(A,73424)|0;return}function Gm(A,e){A=A|0;e=e|0;kv(A,73398)|0;kv(A,SF(e)|0)|0;kv(A,75458)|0;return}function mm(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+96|0;c=h+48|0;o=h+40|0;u=h+32|0;w=h+24|0;t=h+16|0;n=h+8|0;f=h;b=a[A+16>>2]|0;kv(A,73429)|0;A:do{switch(e|0){case 2:{a[f>>2]=i;vv(A,73437,f);break}case 3:{a[n>>2]=i;vv(A,73448,n);break}case 0:{kv(A,135709)|0;break}default:{e=b+56|0;f=c;n=e;l=f+40|0;do{a[f>>2]=a[n>>2];f=f+4|0;n=n+4|0}while((f|0)<(l|0));Qm(A,c);if((a[b+88>>2]|0)==1){e=r[e+3>>0]|0;switch(e<<24>>24){case-1:case 0:break A;default:{}}s[t>>3]=+(e&255)*.00392156862745098;vv(A,73459,t)}}}}while(0);kv(A,73478)|0;i=b+16|0;f=c;n=i;l=f+40|0;do{a[f>>2]=a[n>>2];f=f+4|0;n=n+4|0}while((f|0)<(l|0));Qm(A,c);e=b+152|0;if(+s[e>>3]!=1.0){kv(A,73489)|0;Ev(A,+s[e>>3])}switch(a[b+144>>2]|0){case 1:{a[w>>2]=73529;vv(A,73506,w);break}case 2:{a[u>>2]=73533;vv(A,73506,u);break}default:{}}A:do{if((a[b+48>>2]|0)==1){e=r[i+3>>0]|0;switch(e<<24>>24){case-1:case 0:break A;default:{}}s[o>>3]=+(e&255)*.00392156862745098;vv(A,73537,o)}}while(0);kv(A,98744)|0;k=h;return}function Qm(A,e){A=A|0;e=e|0;var i=0,f=0,l=0,t=0;f=k;k=k+16|0;i=f;A:do{switch(a[e+32>>2]|0){case 5:{kv(A,a[e>>2]|0)|0;break}case 1:if(!(r[e+3>>0]|0)){kv(A,137379)|0;break A}else{t=n[e+1>>0]|0;l=n[e+2>>0]|0;a[i>>2]=n[e>>0];a[i+4>>2]=t;a[i+8>>2]=l;vv(A,75714,i);break A}default:gA(138394,73558,117,73578)}}while(0);k=f;return}function Lm(A,e,i){A=A|0;e=e|0;i=i|0;var f=0.0,n=0,l=0,t=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0;g=k;k=k+112|0;w=g+64|0;d=g+56|0;u=g+48|0;b=g+40|0;n=g+32|0;t=g;h=a[46722]|0;a[46722]=h+1;o=a[A+16>>2]|0;f=+(a[o+136>>2]|0)*.017453292519943295;a[t>>2]=0;a[t+4>>2]=0;a[t+8>>2]=0;a[t+12>>2]=0;a[t+16>>2]=0;a[t+20>>2]=0;a[t+24>>2]=0;a[t+28>>2]=0;YX(e,t,i,f,0);a[w>>2]=h;vv(A,73831,w);kv(A,73896)|0;Ev(A,+s[t>>3]);kv(A,73901)|0;Ev(A,+s[t+8>>3]);kv(A,73908)|0;Ev(A,+s[t+16>>3]);kv(A,73915)|0;Ev(A,+s[t+24>>3]);kv(A,73922)|0;t=o+140|0;f=+c[t>>2];if(f>0.0){s[n>>3]=f+-.001;vv(A,73927,n)}else kv(A,73703)|0;e=o+56|0;i=w;n=e;l=i+40|0;do{a[i>>2]=a[n>>2];i=i+4|0;n=n+4|0}while((i|0)<(l|0));Qm(A,w);kv(A,73739)|0;A:do{if((a[o+88>>2]|0)==1){e=r[e+3>>0]|0;switch(e<<24>>24){case-1:case 0:{B=7;break A}default:{}}s[b>>3]=+(e&255)*.00392156862745098;vv(A,99612,b)}else B=7}while(0);if((B|0)==7)kv(A,73754)|0;kv(A,73757)|0;f=+c[t>>2];if(f>0.0){s[u>>3]=f;vv(A,73927,u)}else kv(A,73763)|0;e=o+96|0;i=w;n=e;l=i+40|0;do{a[i>>2]=a[n>>2];i=i+4|0;n=n+4|0}while((i|0)<(l|0));Qm(A,w);kv(A,73739)|0;A:do{if((a[o+128>>2]|0)==1){e=r[e+3>>0]|0;switch(e<<24>>24){case-1:case 0:{B=14;break A}default:{}}s[d>>3]=+(e&255)*.00392156862745098;vv(A,99612,d)}else B=14}while(0);if((B|0)==14)kv(A,73754)|0;kv(A,73967)|0;k=g;return h|0}function ym(A){A=A|0;var e=0,i=0.0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0.0;h=k;k=k+64|0;c=h+16|0;w=h+8|0;t=h;u=a[46721]|0;a[46721]=u+1;b=a[A+16>>2]|0;d=+(a[b+136>>2]|0)*.017453292519943295;i=d;if(d==0.0){f=50;e=50}else{f=~~((+D(+i)+1.0)*50.0);e=~~((1.0-+M(+i))*50.0)}a[c>>2]=u;a[c+4>>2]=f;a[c+8>>2]=e;vv(A,73619,c);kv(A,73703)|0;e=b+56|0;f=c;n=e;l=f+40|0;do{a[f>>2]=a[n>>2];f=f+4|0;n=n+4|0}while((f|0)<(l|0));Qm(A,c);kv(A,73739)|0;A:do{if((a[b+88>>2]|0)==1){e=r[e+3>>0]|0;switch(e<<24>>24){case-1:case 0:{o=6;break A}default:{}}s[t>>3]=+(e&255)*.00392156862745098;vv(A,99612,t)}else o=6}while(0);if((o|0)==6)kv(A,73754)|0;kv(A,73757)|0;kv(A,73763)|0;e=b+96|0;f=c;n=e;l=f+40|0;do{a[f>>2]=a[n>>2];f=f+4|0;n=n+4|0}while((f|0)<(l|0));Qm(A,c);kv(A,73739)|0;A:do{if((a[b+128>>2]|0)==1){e=r[e+3>>0]|0;switch(e<<24>>24){case-1:case 0:{o=10;break A}default:{}}s[w>>3]=+(e&255)*.00392156862745098;vv(A,99612,w)}else o=10}while(0);if((o|0)==10)kv(A,73754)|0;kv(A,73799)|0;k=h;return u|0}function Wm(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;l=k;k=k+16|0;n=l;r=77;f=0;while(1){if((f|0)>=(i|0))break;a[n>>2]=r;vv(A,73616,n);Ev(A,+s[e+(f<<4)>>3]);kv(A,100999)|0;Ev(A,-+s[e+(f<<4)+8>>3]);r=(f|0)==0?67:32;f=f+1|0}k=l;return}function zm(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0;c=k;k=k+16|0;t=c+8|0;l=c;kv(A,74587)|0;kv(A,SF(e)|0)|0;if(i|0){a[l>>2]=SF(i)|0;vv(A,74595,l)}a[t>>2]=f;vv(A,74599,t);e=Ho(n,74611)|0;if(e|0?r[e>>0]|0:0){kv(A,102604)|0;kv(A,SF(e)|0)|0}kv(A,98744)|0;k=c;return}function Ym(A){A=A|0;var e=0;kv(A,75418)|0;e=A+12|0;kv(A,Hm(a[a[a[e>>2]>>2]>>2]|0)|0)|0;kv(A,78181)|0;kv(A,Hm(a[(a[a[e>>2]>>2]|0)+4>>2]|0)|0)|0;kv(A,78191)|0;kv(A,Hm(a[(a[a[e>>2]>>2]|0)+8>>2]|0)|0)|0;kv(A,75434)|0;return}function Dm(A){A=A|0;var e=0,i=0,f=0;f=k;k=k+16|0;i=f;e=a[A+16>>2]|0;kv(A,75395)|0;e=e+8|0;if(r[(Vh(a[e>>2]|0)|0)>>0]|0){kv(A,75397)|0;kv(A,Hm(Vh(a[e>>2]|0)|0)|0)|0}a[i>>2]=U(a[A+168>>2]|0,a[A+164>>2]|0)|0;vv(A,75406,i);a[46723]=0;k=f;return}function Mm(A){A=A|0;a[46723]=1;return}function Fm(A){A=A|0;a[46723]=-1;return}function Vm(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0;u=k;k=k+48|0;l=u+8|0;b=u;f=a[A+16>>2]|0;if(a[f+144>>2]|0?(c=i+4|0,t=~~(+s[A+352>>3]*+s[(a[c>>2]|0)+16>>3]),t|0):0){Um(A);kv(A,75334)|0;n=e+8|0;s[n>>3]=+s[n>>3]-+(t|0)*.55;a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2];Iv(A,l);kv(A,75348)|0;kv(A,a[i>>2]|0)|0;kv(A,75357)|0;kv(A,75155)|0;n=l;e=f+16|0;f=n+40|0;do{a[n>>2]=a[e>>2];n=n+4|0;e=e+4|0}while((n|0)<(f|0));xm(A,l);kv(A,75359)|0;l=a[c>>2]|0;c=a[l+8>>2]|0;c=a[((c|0)==0?l:c+4|0)>>2]|0;kv(A,98744)|0;kv(A,c)|0;kv(A,98744)|0;a[b>>2]=t;vv(A,75368,b);switch(r[i+48>>0]|0){case 108:{kv(A,75373)|0;break}case 114:{kv(A,75384)|0;break}default:{}}Tm(A);kv(A,153599)|0}k=u;return}function Jm(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0.0,b=0.0,u=0.0;t=k;k=k+48|0;f=t;n=a[A+16>>2]|0;l=n+144|0;if(a[l>>2]|0){u=+s[e>>3];b=+s[e+24>>3];r=e+8|0;c=+s[r>>3];s[e>>3]=u-+s[e+16>>3]+u;s[r>>3]=c-b+c;Um(A);kv(A,75320)|0;Zv(A,e,2);kv(A,75155)|0;do{if(!i)if(!(a[46723]|0)){kv(A,97309)|0;break}else{kv(A,137198)|0;break}else{e=f;i=n+56|0;r=e+40|0;do{a[e>>2]=a[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(r|0));xm(A,f)}}while(0);if((a[46723]|0)==1)a[46723]=0;kv(A,75266)|0;Ev(A,+s[n+152>>3]);kv(A,75309)|0;e=f;i=n+16|0;r=e+40|0;do{a[e>>2]=a[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(r|0));xm(A,f);e=a[l>>2]|0;if((e|0)==1){kv(A,75163)|0;e=a[l>>2]|0}if((e|0)==2)kv(A,75172)|0;Tm(A);kv(A,153599)|0}k=t;return}function pm(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0;t=k;k=k+48|0;f=t;n=a[A+16>>2]|0;l=n+144|0;if(a[l>>2]|0){Um(A);kv(A,75292)|0;Zv(A,e,i);kv(A,75155)|0;do{if(!r)if(!(a[46723]|0)){kv(A,97309)|0;break}else{kv(A,137198)|0;break}else{e=f;i=n+56|0;r=e+40|0;do{a[e>>2]=a[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(r|0));xm(A,f)}}while(0);if((a[46723]|0)==1)a[46723]=0;kv(A,75266)|0;Ev(A,+s[n+152>>3]);kv(A,75309)|0;e=f;i=n+16|0;r=e+40|0;do{a[e>>2]=a[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(r|0));xm(A,f);e=a[l>>2]|0;if((e|0)==1){kv(A,75163)|0;e=a[l>>2]|0}if((e|0)==2)kv(A,75172)|0;Tm(A);kv(A,153599)|0}k=t;return}function Nm(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,b=0;b=k;k=k+48|0;l=b;t=a[A+16>>2]|0;c=t+144|0;if(a[c>>2]|0){Um(A);kv(A,75141)|0;Zv(A,e,i);kv(A,75155)|0;r=l;f=t+16|0;n=r+40|0;do{a[r>>2]=a[f>>2];r=r+4|0;f=f+4|0}while((r|0)<(n|0));xm(A,l);kv(A,75266)|0;Ev(A,+s[t+152>>3]);r=a[c>>2]|0;if((r|0)==1){kv(A,75163)|0;r=a[c>>2]|0}if((r|0)==2)kv(A,75172)|0;kv(A,75275)|0;Tm(A);kv(A,153599)|0}k=b;return}function Rm(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0;t=k;k=k+48|0;n=t;r=a[A+16>>2]|0;l=r+144|0;if(a[l>>2]|0){Um(A);kv(A,75141)|0;Zv(A,e,i);kv(A,75155)|0;f=n;e=r+16|0;i=f+40|0;do{a[f>>2]=a[e>>2];f=f+4|0;e=e+4|0}while((f|0)<(i|0));xm(A,n);e=a[l>>2]|0;if((e|0)==1){kv(A,75163)|0;e=a[l>>2]|0}if((e|0)==2)kv(A,75172)|0;Tm(A);kv(A,153599)|0}k=t;return}function Xm(A,e){A=A|0;e=e|0;kv(A,75138)|0;kv(A,Hm(e)|0)|0;kv(A,153599)|0;return}function Hm(A){A=A|0;return A|0}function Um(A){A=A|0;if(!(r[A+144>>0]|0))kv(A,75263)|0;else kv(A,a[A+148>>2]|0)|0;return}function xm(A,e){A=A|0;e=e|0;var i=0,f=0,l=0,t=0;f=k;k=k+16|0;i=f;A:do{switch(a[e+32>>2]|0){case 5:{kv(A,a[e>>2]|0)|0;break}case 1:if(!(r[e+3>>0]|0)){kv(A,97309)|0;break A}else{t=n[e+1>>0]|0;l=n[e+2>>0]|0;a[i>>2]=n[e>>0];a[i+4>>2]=t;a[i+8>>2]=l;vv(A,75714,i);break A}default:gA(138394,75181,49,75245)}}while(0);k=f;return}function Tm(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0;l=k;k=k+16|0;n=l;f=a[A+16>>2]|0;switch(a[f+12>>2]|0){case 8:{e=1;i=111481;r=f+8|0;break}case 10:{e=0;i=111481;r=f+8|0;break}case 3:case 2:case 9:{e=1;i=111450;r=f+8|0;break}case 7:case 6:case 11:{e=0;i=111450;r=f+8|0;break}case 0:{e=1;i=111494;r=f+8|0;break}case 4:{e=0;i=75217;r=f+8|0;break}case 1:{e=1;i=111494;r=f+8|0;break}case 5:{e=0;i=111494;r=f+8|0;break}default:gA(138394,75181,106,75200)}f=a[(a[r>>2]|0)+8>>2]|0;a[n>>2]=e;a[n+4>>2]=i;a[n+8>>2]=f;vv(A,75229,n);k=l;return}function jm(A){A=A|0;var e=0;kv(A,78153)|0;kv(A,78161)|0;e=A+12|0;kv(A,rQ(a[a[a[e>>2]>>2]>>2]|0)|0)|0;kv(A,78181)|0;kv(A,rQ(a[(a[a[e>>2]>>2]|0)+4>>2]|0)|0)|0;kv(A,78191)|0;kv(A,rQ(a[(a[a[e>>2]>>2]|0)+8>>2]|0)|0)|0;kv(A,78194)|0;return}function Pm(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;t=k;k=k+32|0;l=t+24|0;n=t+16|0;f=t+8|0;i=t;e=a[A+16>>2]|0;a[46727]=~~(+s[A+232>>3]-+s[A+216>>3]);a[46726]=~~(+s[A+224>>3]-+s[A+208>>3]);kv(A,76840)|0;kv(A,76847)|0;e=Vh(a[e+8>>2]|0)|0;if(r[e>>0]|0){kv(A,76916)|0;kv(A,rQ(e)|0)|0;kv(A,76924)|0}a[i>>2]=U(a[A+168>>2]|0,a[A+164>>2]|0)|0;vv(A,76933,i);kv(A,76953)|0;kv(A,76988)|0;kv(A,77016)|0;kv(A,77022)|0;kv(A,77065)|0;kv(A,77106)|0;kv(A,77125)|0;kv(A,77142)|0;kv(A,77190)|0;kv(A,77243)|0;kv(A,77319)|0;kv(A,77395)|0;kv(A,77404)|0;kv(A,77427)|0;kv(A,77454)|0;kv(A,77507)|0;kv(A,77529)|0;kv(A,77574)|0;kv(A,77586)|0;kv(A,77596)|0;kv(A,77622)|0;kv(A,77507)|0;kv(A,77674)|0;kv(A,77574)|0;kv(A,77586)|0;kv(A,77718)|0;kv(A,77427)|0;kv(A,77454)|0;kv(A,77507)|0;kv(A,77674)|0;kv(A,77574)|0;kv(A,77586)|0;kv(A,77596)|0;kv(A,77622)|0;kv(A,77507)|0;kv(A,77529)|0;kv(A,77574)|0;kv(A,77586)|0;kv(A,77731)|0;kv(A,77739)|0;kv(A,77745)|0;kv(A,77759)|0;kv(A,77767)|0;kv(A,77800)|0;i=(a[46727]|0)+10|0;a[f>>2]=a[46726];a[f+4>>2]=i;vv(A,77877,f);kv(A,77907)|0;kv(A,77916)|0;kv(A,77974)|0;kv(A,77984)|0;kv(A,78049)|0;f=a[46727]|0;a[n>>2]=a[46726];a[n+4>>2]=f;vv(A,78086,n);n=a[46727]|0;a[l>>2]=a[46726];a[l+4>>2]=n;vv(A,78114,l);k=t;return}function Sm(A){A=A|0;kv(A,76391)|0;kv(A,76403)|0;kv(A,76411)|0;kv(A,76474)|0;kv(A,76403)|0;kv(A,76519)|0;kv(A,76568)|0;kv(A,76622)|0;kv(A,76403)|0;kv(A,76722)|0;kv(A,76771)|0;kv(A,76403)|0;kv(A,76823)|0;return}function Om(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0;c=k;k=k+32|0;t=c+16|0;l=c+8|0;n=c;kv(A,76349)|0;if(e|0?r[e>>0]|0:0){a[n>>2]=rQ(e)|0;vv(A,76352,n)}if(i|0?r[i>>0]|0:0){a[l>>2]=rQ(i)|0;vv(A,76363,l)}if(f|0?r[f>>0]|0:0){a[t>>2]=rQ(f)|0;vv(A,76375,t)}kv(A,76388)|0;k=c;return}function Km(A){A=A|0;kv(A,76343)|0;return}function _m(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,l=0.0,t=0.0,c=0.0,b=0.0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0.0;m=k;k=k+112|0;Z=m+96|0;G=m+88|0;C=m+80|0;h=m+72|0;E=m+64|0;g=m+56|0;B=m+48|0;d=m+40|0;o=m+24|0;w=m+8|0;u=m;I=a[A+16>>2]|0;switch(r[i+48>>0]|0){case 108:{t=+s[e>>3];b=+s[i+32>>3];break}case 114:{b=+s[i+32>>3];t=+s[e>>3]-b;break}default:{b=+s[i+32>>3];t=+s[e>>3]-b*.5}}f=i+40|0;l=+s[f>>3];v=i+4|0;c=+s[(a[v>>2]|0)+16>>3];if(l >3]=l}Q=t+-8.0;c=+((a[46727]|0)>>>0)-+s[e+8>>3]-l+c*.2+(c<12.0?1.4:2.0);vv(A,76005,u);s[w>>3]=Q;s[w+8>>3]=c;vv(A,75942,w);s[o>>3]=t+8.0+b-Q;s[o+8>>3]=l;vv(A,75966,o);kv(A,76040)|0;kv(A,76074)|0;f=a[v>>2]|0;e=a[f+8>>2]|0;if(e){a[d>>2]=a[e+4>>2];vv(A,76164,d);f=a[e+8>>2]|0;if(f|0){a[B>>2]=f;vv(A,76183,B)}f=a[e+12>>2]|0;if(f|0){a[g>>2]=f;vv(A,76200,g)}f=a[e+16>>2]|0;if(f|0){a[E>>2]=f;vv(A,76218,E)}}else{a[h>>2]=a[f>>2];vv(A,76164,h)}s[C>>3]=+s[(a[v>>2]|0)+16>>3];vv(A,76234,C);f=I+16|0;switch(a[I+48>>2]|0){case 5:{f=a[f>>2]|0;if(p1(f,137314)|0){a[G>>2]=f;vv(A,76254,G)}break}case 1:{I=n[f+1>>0]|0;G=n[f+2>>0]|0;a[Z>>2]=n[f>>0];a[Z+4>>2]=I;a[Z+8>>2]=G;vv(A,76264,Z);break}default:gA(138394,75728,438,76285)}kv(A,76298)|0;kv(A,rQ(a[i>>2]|0)|0)|0;kv(A,76309)|0;kv(A,76332)|0;k=m;return}function qm(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0.0,l=0.0,t=0,c=0.0,b=0.0;r=k;k=k+32|0;f=r+16|0;t=r;kv(A,75906)|0;b=+s[e>>3];l=+s[e+16>>3]-b;c=+s[e+24>>3];n=c-+s[e+8>>3];c=+((a[46727]|0)>>>0)-c;s[t>>3]=b-l;s[t+8>>3]=c;vv(A,75942,t);s[f>>3]=l*2.0;s[f+8>>3]=n*2.0;vv(A,75966,f);lQ(A,i);kv(A,75788)|0;aQ(A);kv(A,75994)|0;k=r;return}function $m(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,n=0,l=0.0,t=0,c=0,b=0,u=0;b=k;k=k+48|0;c=b+24|0;t=b+8|0;n=b;kv(A,75511)|0;u=a[46727]|0;a[n>>2]=a[46726];a[n+4>>2]=u;vv(A,75764,n);lQ(A,r);kv(A,75788)|0;aQ(A);kv(A,75791)|0;n=i+-1|0;r=0;while(1){if((r|0)>=(i|0))break;l=+s[e+(r<<4)>>3];f=+((a[46727]|0)>>>0)-+s[e+(r<<4)+8>>3];if(!r){kv(A,75818)|0;s[t>>3]=l;s[t+8>>3]=f;vv(A,75884,t);kv(A,75895)|0}else{s[c>>3]=l;s[c+8>>3]=f;vv(A,75884,c)}if((r|0)==(n|0))kv(A,75898)|0;r=r+1|0}kv(A,75627)|0;k=b;return}function AQ(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0;f=k;k=k+16|0;r=f;kv(A,75511)|0;l=a[46727]|0;a[r>>2]=a[46726];a[r+4>>2]=l;vv(A,75764,r);lQ(A,n);kv(A,75788)|0;aQ(A);kv(A,75791)|0;tQ(A,e,i);kv(A,75804)|0;k=f;return}function eQ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,b=0.0;c=k;k=k+48|0;t=c+24|0;l=c+8|0;f=c;kv(A,75511)|0;n=a[46727]|0;a[f>>2]=a[46726];a[f+4>>2]=n;vv(A,75548,f);kv(A,75588)|0;f=i+-1|0;n=e+8|0;r=0;while(1){if((r|0)>=(i|0))break;if(!r){kv(A,75600)|0;b=+((a[46727]|0)>>>0)-+s[n>>3];s[l>>3]=+s[e>>3];s[l+8>>3]=b;vv(A,75604,l);kv(A,75615)|0}else{b=+((a[46727]|0)>>>0)-+s[e+(r<<4)+8>>3];s[t>>3]=+s[e+(r<<4)>>3];s[t+8>>3]=b;vv(A,75604,t)}if((r|0)==(f|0))kv(A,75619)|0;r=r+1|0}kv(A,75623)|0;aQ(A);kv(A,75627)|0;k=c;return}function iQ(A,e){A=A|0;e=e|0;kv(A,75446)|0;kv(A,rQ(e)|0)|0;kv(A,75458)|0;return}function rQ(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0;v=k;k=k+16|0;i=v;e=a[46724]|0;if(!e){a[46725]=64;e=$F(64)|0;a[46724]=e}B=i+15|0;d=i+14|0;n=0;h=0;w=0;i=0;f=0;A:while(1){u=(w|0)!=0;s=n;o=A;c=i;e:while(1){if(!o){g=32;break A}i=r[o>>0]|0;if(!(i<<24>>24)){g=32;break A}A=a[46725]|0;if((h|0)>(A+-8|0)){e=A<<1;a[46725]=e;e=eV(a[46724]|0,e)|0;a[46724]=e;e=e+h|0;i=r[o>>0]|0}switch(i<<24>>24){case 60:{i=4;A=102153;g=26;break e}case 62:{i=4;A=102136;g=27;break e}case 38:{g=10;break e}case 45:{i=5;A=102147;t=c;break e}default:{}}if(u&i<<24>>24==32){g=12;break}switch(i<<24>>24){case 34:{i=6;A=102116;g=26;break e}case 39:{i=5;A=102141;g=27;break e}default:{}}if(i<<24>>24<0){t=127;A=0}else{i=1;A=o;g=26;break}while(1){n=t&255;l=i&255;if(n>>>0>=l>>>0)break;i=t&l&255;t=n>>>1;A=A+1|0}if((A|0)<=1){n=G6(c|0,f|0,6)|0;n=d6(n|0,L|0,i&255|0,0)|0;f=L;b=s+-1|0;if((s|0)>1){A=b;i=n}else{g=21;break}}else{A=A+-1|0;i=i&255;f=0}s=A;o=o+1|0;c=i}if((g|0)==10){g=0;A=(fQ(o)|0)==0;i=A?5:1;A=A?102130:o;t=c}else if((g|0)==12){g=0;A=(r[w>>0]|0)==32;i=A?6:1;A=A?102123:o;t=c}else if((g|0)==21){g=0;r[B>>0]=59;i=3;l=d;t=n;c=f;while(1){A=C6(t|0,c|0,10,0)|0;n=l+-1|0;r[l>>0]=A|48;A=t;t=E6(t|0,c|0,10,0)|0;f=c;c=L;w=i;i=i+1|0;if((w|0)>11){g=23;break A}if(!(f>>>0>0|(f|0)==0&A>>>0>9))break;else l=n}A=l+-2|0;r[n>>0]=35;r[A>>0]=38;s=b;f=c}else if((g|0)==26){g=0;t=c}else if((g|0)==27){g=0;t=c}l=e+i|0;n=i;while(1){if(!n)break;r[e>>0]=r[A>>0]|0;n=n+-1|0;A=A+1|0;e=e+1|0}n=s;A=o+1|0;h=i+h|0;w=o;e=l;i=t}if((g|0)==23){L3(75464,46,1,a[15712]|0)|0;PA(1)}else if((g|0)==32){r[e>>0]=0;k=v;return a[46724]|0}return 0}function fQ(A){A=A|0;var e=0,i=0;i=A+1|0;e=r[i>>0]|0;A:do{if(e<<24>>24==35){i=A+2|0;e=r[i>>0]|0;switch(e<<24>>24){case 88:case 120:break;default:{A=i;while(1){i=A+1|0;if((e+-48&255)>=10)break A;A=i;e=r[i>>0]|0}}}i=A+3|0;while(1){e=r[i>>0]|0;if((e+-48&255)>=10)switch(e<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:break A}i=i+1|0}}else while(1){A=i+1|0;if(((e&-33)+-65&255)>=26)break A;i=A;e=r[A>>0]|0}}while(0);return e<<24>>24==59|0}function aQ(A){A=A|0;var e=0.0,i=0,r=0,f=0,n=0,l=0,t=0,c=0;c=k;k=k+48|0;i=c+8|0;t=c;l=a[A+16>>2]|0;kv(A,75639)|0;r=i;f=l+16|0;n=r+40|0;do{a[r>>2]=a[f>>2];r=r+4|0;f=f+4|0}while((r|0)<(n|0));nQ(A,i);e=+s[l+152>>3];if(e!=1.0){s[t>>3]=e;vv(A,75657,t)}switch(a[l+144>>2]|0){case 1:{kv(A,75674)|0;break}case 2:{kv(A,75692)|0;break}default:{}}kv(A,75709)|0;k=c;return}function nQ(A,e){A=A|0;e=e|0;var i=0,f=0,l=0,t=0;f=k;k=k+16|0;i=f;A:do{switch(a[e+32>>2]|0){case 5:{kv(A,a[e>>2]|0)|0;break}case 1:if(!(r[e+3>>0]|0)){kv(A,135709)|0;break A}else{t=n[e+1>>0]|0;l=n[e+2>>0]|0;a[i>>2]=n[e>>0];a[i+4>>2]=t;a[i+8>>2]=l;vv(A,75714,i);break A}default:gA(138394,75728,94,75748)}}while(0);k=f;return}function lQ(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;n=k;k=k+48|0;f=n;if(!e)kv(A,75867)|0;else{i=a[A+16>>2]|0;kv(A,75837)|0;e=f;i=i+56|0;r=e+40|0;do{a[e>>2]=a[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(r|0));nQ(A,f);kv(A,75864)|0}k=n;return}function tQ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0.0,c=0.0;l=k;k=k+32|0;n=l;r=75818;f=0;while(1){if((f|0)>=(i|0))break;c=+s[e+(f<<4)>>3];t=+((a[46727]|0)>>>0)-+s[e+(f<<4)+8>>3];a[n>>2]=r;s[n+8>>3]=c;s[n+16>>3]=t;vv(A,75821,n);r=(f|0)==0?75834:195059;f=f+1|0}kv(A,98744)|0;k=l;return}function cQ(A){A=A|0;var e=0,i=0,r=0;e=k;k=k+16|0;i=e+8|0;r=e;kv(A,80451)|0;kv(A,80466)|0;kv(A,80505)|0;kv(A,80554)|0;a[r>>2]=137314;a[r+4>>2]=80642;vv(A,80623,r);a[i>>2]=137198;a[i+4>>2]=80648;vv(A,80623,i);k=e;return}function sQ(A){A=A|0;var e=0,i=0,r=0.0,f=0.0,n=0.0,l=0.0,t=0;e=k;k=k+64|0;i=e+8|0;t=e;a[t>>2]=Vh(a[(a[A+16>>2]|0)+8>>2]|0)|0;vv(A,79404,t);l=+s[A+368>>3]*.5*+s[A+488>>3];n=+s[A+376>>3]*.5*+s[A+496>>3];f=+p(+(l*2.0000000949949026e-03))*180.0*.6366197723675814;r=+p(+(n*2.0000000949949026e-03))*180.0*.6366197723675814;s[i>>3]=l;s[i+8>>3]=n;s[i+16>>3]=-500.0;s[i+24>>3]=l;s[i+32>>3]=n;s[i+40>>3]=0.0;s[i+48>>3]=(f>r?f:r)*1.2;vv(A,79426,i);kv(A,79573)|0;kv(A,80403)|0;k=e;return}function bQ(A){A=A|0;kv(A,79387)|0;return}function uQ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0;f=k;k=k+16|0;n=f;a[n>>2]=e;a[n+4>>2]=i;a[n+8>>2]=r;vv(A,79357,n);c[46728]=+(U(i,-10)|0);k=f;return}function wQ(A){A=A|0;kv(A,79340)|0;return}function kQ(A){A=A|0;kv(A,79322)|0;return}function oQ(A){A=A|0;kv(A,79306)|0;return}function hQ(A){A=A|0;kv(A,79285)|0;c[46728]=+c[46728]+-2.0;return}function dQ(A){A=A|0;kv(A,79266)|0;return}function BQ(A){A=A|0;var e=0,i=0;e=k;k=k+16|0;i=e;a[i>>2]=Vh(a[(a[A+16>>2]|0)+8>>2]|0)|0;vv(A,79244,i);k=e;return}function gQ(A){A=A|0;kv(A,79228)|0;return}function vQ(A){A=A|0;kv(A,79210)|0;c[46728]=+c[46728]+-5.0;return}function EQ(A){A=A|0;kv(A,79194)|0;c[46728]=+c[46728]+5.0;return}function CQ(A,e,i){A=A|0;e=e|0;i=i|0;var f=0.0,n=0,l=0,t=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0.0,g=0.0,v=0.0;d=k;k=k+144|0;w=d+104|0;h=d+56|0;b=d+32|0;l=d+24|0;u=d;o=i+4|0;n=a[o>>2]|0;f=+s[n+16>>3];n=a[n>>2]|0;a[u>>2]=a[i>>2];s[u+8>>3]=f;a[u+16>>2]=n;vv(A,79040,u);c[46729]=+c[46728]+-9.0;switch(r[i+48>>0]|0){case 108:{f=+s[e>>3];break}case 114:{n=e;f=+s[e>>3]-+s[i+32>>3];t=5;break}default:{n=e;f=+s[e>>3]-+s[i+32>>3]*.5;t=5}}if((t|0)==5)s[n>>3]=f;v=+s[A+488>>3];g=(+s[A+504>>3]+f)*v;B=(+s[A+512>>3]+ +s[e+8>>3])*+s[A+496>>3];s[l>>3]=+s[(a[o>>2]|0)+16>>3]*v;u=LQ(A,79092,l)|0;f=+(a[A+360>>2]|0);s[b>>3]=0.0;s[b+8>>3]=0.0;s[b+16>>3]=f;n=LQ(A,78309,b)|0;f=+c[46729];s[w>>3]=g;s[w+8>>3]=B;s[w+16>>3]=f;e=LQ(A,78341,w)|0;l=w;t=(a[A+16>>2]|0)+16|0;b=l+40|0;do{a[l>>2]=a[t>>2];l=l+4|0;t=t+4|0}while((l|0)<(b|0));w=yQ(A,w,0.0)|0;i=a[i>>2]|0;a[h>>2]=a[a[o>>2]>>2];s[h+8>>3]=.25;s[h+16>>3]=0.0;a[h+24>>2]=i;a[h+28>>2]=79179;a[h+32>>2]=u;a[h+36>>2]=n;a[h+40>>2]=e;a[h+44>>2]=w;h=LQ(A,79104,h)|0;kv(A,h)|0;L2(h);L2(n);L2(w);L2(e);L2(u);k=d;return}function IQ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0.0,l=0.0,t=0.0,b=0,u=0,w=0,o=0.0,h=0.0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0.0;G=k;k=k+240|0;I=G+192|0;Z=G+152|0;g=G+128|0;d=G+104|0;w=G+80|0;u=G+48|0;r=G+24|0;b=G;kv(A,78917)|0;c[46729]=+c[46728]+-6.0;n=+s[e>>3];l=+s[A+488>>3];o=(+s[A+504>>3]+n)*l;m=+s[e+8>>3];t=+s[A+496>>3];h=(+s[A+512>>3]+m)*t;l=(+s[e+16>>3]-n)*l;t=(+s[e+24>>3]-m)*t;B=A+16|0;m=t+l;n=+s[(a[B>>2]|0)+152>>3]/m*2.5;s[b>>3]=l;s[b+8>>3]=m*.25;s[b+16>>3]=t;e=LQ(A,78277,b)|0;b=A+360|0;m=+(a[b>>2]|0);s[r>>3]=90.0;s[r+8>>3]=0.0;s[r+16>>3]=m;r=LQ(A,78309,r)|0;m=+c[46729];s[I>>3]=o;s[I+8>>3]=h;s[I+16>>3]=m;f=LQ(A,78341,I)|0;v=I;E=(a[B>>2]|0)+16|0;C=v+40|0;do{a[v>>2]=a[E>>2];v=v+4|0;E=E+4|0}while((v|0)<(C|0));E=yQ(A,I,0.0)|0;s[u>>3]=1.0;s[u+8>>3]=n;a[u+16>>2]=e;a[u+20>>2]=r;a[u+24>>2]=f;a[u+28>>2]=E;C=LQ(A,78932,u)|0;kv(A,C)|0;L2(e);L2(r);L2(f);L2(E);L2(C);if(i|0){s[w>>3]=l;s[w+8>>3]=t;s[w+16>>3]=1.0;f=LQ(A,78277,w)|0;m=+(a[b>>2]|0);s[d>>3]=0.0;s[d+8>>3]=0.0;s[d+16>>3]=m;r=LQ(A,78309,d)|0;m=+c[46729];s[g>>3]=o;s[g+8>>3]=h;s[g+16>>3]=m;e=LQ(A,78341,g)|0;v=I;E=(a[B>>2]|0)+56|0;C=v+40|0;do{a[v>>2]=a[E>>2];v=v+4|0;E=E+4|0}while((v|0)<(C|0));I=yQ(A,I,0.0)|0;s[Z>>3]=0.0;s[Z+8>>3]=0.0;s[Z+16>>3]=0.0;a[Z+24>>2]=f;a[Z+28>>2]=r;a[Z+32>>2]=e;a[Z+36>>2]=I;Z=LQ(A,78978,Z)|0;kv(A,Z)|0;L2(f);L2(r);L2(e);L2(I);L2(Z)}k=G;return}function ZQ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0.0,p=0,N=0.0;V=k;k=k+336|0;Q=V+296|0;F=V+288|0;M=V+272|0;D=V+264|0;Y=V+240|0;y=V+232|0;m=V+208|0;G=V+184|0;C=V+160|0;E=V+152|0;v=V+136|0;g=V+128|0;B=V+96|0;d=V+88|0;h=V+56|0;f=V+48|0;b=V+24|0;t=V;kv(A,78782)|0;c[46729]=+c[46728]+-2.0;w=A+488|0;o=A+496|0;J=+s[o>>3];s[t>>3]=+s[w>>3];s[t+8>>3]=J;s[t+16>>3]=1.0;t=LQ(A,78277,t)|0;Z=A+360|0;J=+(a[Z>>2]|0);s[b>>3]=0.0;s[b+8>>3]=0.0;s[b+16>>3]=J;b=LQ(A,78309,b)|0;J=+c[46729]+-2.0;s[Q>>3]=0.0;s[Q+8>>3]=0.0;s[Q+16>>3]=J;u=LQ(A,78341,Q)|0;L=A+16|0;n=Q;l=(a[L>>2]|0)+16|0;I=n+40|0;do{a[n>>2]=a[l>>2];n=n+4|0;l=l+4|0}while((n|0)<(I|0));l=yQ(A,Q,0.0)|0;a[f>>2]=78404;a[f+4>>2]=i+1;W=A+504|0;z=A+512|0;n=0;f=LQ(A,78373,f)|0;while(1){if((n|0)>=(i|0))break;N=+s[z>>3]+ +s[e+(n<<4)+8>>3];J=+s[(a[L>>2]|0)+152>>3];s[h>>3]=+s[W>>3]+ +s[e+(n<<4)>>3];s[h+8>>3]=N;s[h+16>>3]=0.0;s[h+24>>3]=J;p=LQ(A,78418,h)|0;a[d>>2]=f;a[d+4>>2]=p;I=LQ(A,78447,d)|0;L2(p);L2(f);n=n+1|0;f=I}J=+s[z>>3]+ +s[e+8>>3];N=+s[(a[L>>2]|0)+152>>3];s[B>>3]=+s[W>>3]+ +s[e>>3];s[B+8>>3]=J;s[B+16>>3]=0.0;s[B+24>>3]=N;I=LQ(A,78418,B)|0;a[g>>2]=f;a[g+4>>2]=I;p=LQ(A,78447,g)|0;L2(I);L2(f);a[v>>2]=t;a[v+4>>2]=b;a[v+8>>2]=u;a[v+12>>2]=l;I=LQ(A,78797,v)|0;a[E>>2]=p;a[E+4>>2]=I;p=LQ(A,78502,E)|0;L2(I);kv(A,p)|0;L2(t);L2(b);L2(u);L2(l);L2(p);if(r|0){N=+s[o>>3];s[C>>3]=+s[w>>3];s[C+8>>3]=N;s[C+16>>3]=1.0;u=LQ(A,78277,C)|0;N=+(a[Z>>2]|0);s[G>>3]=0.0;s[G+8>>3]=0.0;s[G+16>>3]=N;b=LQ(A,78309,G)|0;N=+c[46729]+-2.0;s[m>>3]=0.0;s[m+8>>3]=0.0;s[m+16>>3]=N;t=LQ(A,78341,m)|0;n=Q;l=(a[L>>2]|0)+56|0;I=n+40|0;do{a[n>>2]=a[l>>2];n=n+4|0;l=l+4|0}while((n|0)<(I|0));l=yQ(A,Q,.25)|0;a[y>>2]=i;n=0;f=LQ(A,78842,y)|0;while(1){if((n|0)>=(i|0))break;N=+s[z>>3]+ +s[e+(n<<4)+8>>3];s[Y>>3]=+s[W>>3]+ +s[e+(n<<4)>>3];s[Y+8>>3]=N;s[Y+16>>3]=0.0;y=LQ(A,78857,Y)|0;a[D>>2]=f;a[D+4>>2]=y;p=LQ(A,78879,D)|0;L2(y);L2(f);n=n+1|0;f=p}a[M>>2]=u;a[M+4>>2]=b;a[M+8>>2]=t;a[M+12>>2]=l;M=LQ(A,78889,M)|0;a[F>>2]=f;a[F+4>>2]=M;p=LQ(A,78502,F)|0;L2(M);kv(A,p)|0;L2(u);L2(b);L2(t);L2(l);L2(p)}k=V;return}function GQ(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0.0,y=0.0;Q=k;k=k+208|0;r=Q+160|0;m=Q+152|0;G=Q+136|0;Z=Q+128|0;I=Q+96|0;C=Q+88|0;E=Q+56|0;t=Q+48|0;B=Q+24|0;d=Q;kv(A,78709)|0;c[46729]=+c[46728]+-4.0;L=+s[A+496>>3];s[d>>3]=+s[A+488>>3];s[d+8>>3]=L;s[d+16>>3]=1.0;d=LQ(A,78277,d)|0;L=+(a[A+360>>2]|0);s[B>>3]=0.0;s[B+8>>3]=0.0;s[B+16>>3]=L;B=LQ(A,78309,B)|0;L=+c[46729]+-2.0;s[r>>3]=0.0;s[r+8>>3]=0.0;s[r+16>>3]=L;g=LQ(A,78341,r)|0;v=A+16|0;f=r;n=(a[v>>2]|0)+56|0;l=f+40|0;do{a[f>>2]=a[n>>2];f=f+4|0;n=n+4|0}while((f|0)<(l|0));u=yQ(A,r,0.0)|0;a[t>>2]=78723;a[t+4>>2]=i+2;w=A+504|0;o=A+512|0;h=i+-1|0;b=0;r=LQ(A,78373,t)|0;while(1){if((b|0)>=(i|0))break;f=e+(b<<4)|0;n=e+(b<<4)+8|0;y=+s[o>>3]+ +s[n>>3];L=+s[(a[v>>2]|0)+152>>3];s[E>>3]=+s[w>>3]+ +s[f>>3];s[E+8>>3]=y;s[E+16>>3]=0.0;s[E+24>>3]=L;t=LQ(A,78418,E)|0;a[C>>2]=r;a[C+4>>2]=t;l=LQ(A,78447,C)|0;L2(t);L2(r);if((b|0)==0|(b|0)==(h|0)){L=+s[o>>3]+ +s[n>>3];y=+s[(a[v>>2]|0)+152>>3];s[I>>3]=+s[w>>3]+ +s[f>>3];s[I+8>>3]=L;s[I+16>>3]=0.0;s[I+24>>3]=y;t=LQ(A,78418,I)|0;a[Z>>2]=l;a[Z+4>>2]=t;r=LQ(A,78447,Z)|0;L2(t);L2(l)}else r=l;b=b+1|0}a[G>>2]=d;a[G+4>>2]=B;a[G+8>>2]=g;a[G+12>>2]=u;e=LQ(A,78732,G)|0;a[m>>2]=r;a[m+4>>2]=e;i=LQ(A,78502,m)|0;L2(e);kv(A,i)|0;L2(d);L2(B);L2(g);L2(u);L2(i);k=Q;return}function mQ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0.0,I=0,Z=0.0;E=k;k=k+160|0;r=E+120|0;v=E+112|0;g=E+96|0;B=E+88|0;d=E+56|0;b=E+48|0;u=E+24|0;h=E;kv(A,78261)|0;c[46729]=+c[46728]+-6.0;C=+s[A+496>>3];s[h>>3]=+s[A+488>>3];s[h+8>>3]=C;s[h+16>>3]=1.0;h=LQ(A,78277,h)|0;C=+(a[A+360>>2]|0);s[u>>3]=0.0;s[u+8>>3]=0.0;s[u+16>>3]=C;u=LQ(A,78309,u)|0;C=+c[46729];s[r>>3]=0.0;s[r+8>>3]=0.0;s[r+16>>3]=C;w=LQ(A,78341,r)|0;o=A+16|0;f=r;n=(a[o>>2]|0)+16|0;l=f+40|0;do{a[f>>2]=a[n>>2];f=f+4|0;n=n+4|0}while((f|0)<(l|0));n=yQ(A,r,0.0)|0;a[b>>2]=78404;a[b+4>>2]=i;l=A+504|0;t=A+512|0;f=0;r=LQ(A,78373,b)|0;while(1){if((f|0)>=(i|0))break;Z=+s[t>>3]+ +s[e+(f<<4)+8>>3];C=+s[(a[o>>2]|0)+152>>3];s[d>>3]=+s[l>>3]+ +s[e+(f<<4)>>3];s[d+8>>3]=Z;s[d+16>>3]=0.0;s[d+24>>3]=C;I=LQ(A,78418,d)|0;a[B>>2]=r;a[B+4>>2]=I;b=LQ(A,78447,B)|0;L2(I);L2(r);f=f+1|0;r=b}a[g>>2]=h;a[g+4>>2]=u;a[g+8>>2]=w;a[g+12>>2]=n;g=LQ(A,78456,g)|0;a[v>>2]=r;a[v+4>>2]=g;I=LQ(A,78502,v)|0;L2(g);kv(A,I)|0;L2(h);L2(u);L2(w);L2(n);L2(I);k=E;return}function QQ(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+16|0;r=i;a[r>>2]=e;vv(A,78242,r);k=i;return}function LQ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0;t=k;k=k+1056|0;l=t;r=t+24|0;f=t+8|0;a[f>>2]=i;n=k4(r,1024,e,f)|0;do{if((n|0)>=0)if((n|0)>1023){A=Q2(n+1|0)|0;a[f>>2]=i;O4(A,e,f)|0;break}else{A=b3(r)|0;break}else{A=a[(a[A+12>>2]|0)+16>>2]|0;a[l>>2]=e1(a[(N2()|0)>>2]|0)|0;V5[A&63](78687,l);A=b3(195059)|0}}while(0);k=t;return A|0}function yQ(A,e,i){A=A|0;e=e|0;i=+i;var r=0,f=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0.0,B=0.0;h=k;k=k+112|0;w=h+104|0;t=h+96|0;l=h+64|0;u=h+48|0;o=h+32|0;b=h+16|0;c=h;f=a[e+32>>2]|0;A:do{switch(f|0){case 5:{r=a[e>>2]|0;if(!(A1(r,136302)|0)){a[c>>2]=78524;s[c+8>>3]=i;r=LQ(A,78507,c)|0;break A}if(!(A1(r,133432)|0)){a[b>>2]=78528;s[b+8>>3]=i;r=LQ(A,78507,b)|0;break A}if(!(A1(r,131431)|0)){a[o>>2]=78534;s[o+8>>3]=i;r=LQ(A,78507,o)|0;break A}else{a[u>>2]=r;s[u+8>>3]=i;r=LQ(A,78507,u)|0;break A}}case 1:{B=+(n[e+1>>0]|0)*.00390625;d=+(n[e+2>>0]|0)*.00390625;s[l>>3]=+(n[e>>0]|0)*.00390625;s[l+8>>3]=B;s[l+16>>3]=d;s[l+24>>3]=i;r=LQ(A,78539,l)|0;break}default:{o=a[15712]|0;u=a[e>>2]|0;a[t>>2]=f;a[t+4>>2]=u;f3(o,78578,t)|0;gA(138394,78628,436,78648)}}}while(0);a[w>>2]=r;o=LQ(A,78665,w)|0;L2(r);k=h;return o|0}function WQ(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0;e=k;k=k+32|0;i=e+24|0;r=e+16|0;n=e;f=a[A+16>>2]|0;l=a[a[A+12>>2]>>2]|0;c=a[l>>2]|0;t=a[l+4>>2]|0;l=a[l+8>>2]|0;a[n>>2]=81094;a[n+4>>2]=c;a[n+8>>2]=t;a[n+12>>2]=l;vv(A,83704,n);f=Vh(a[f+8>>2]|0)|0;a[r>>2]=81094;a[r+4>>2]=f;vv(A,83736,r);a[i>>2]=81094;vv(A,83750,i);k=e;return}function zQ(A){A=A|0;var e=0,i=0;e=k;k=k+16|0;i=e;a[i>>2]=81094;vv(A,83652,i);k=e;return}function YQ(A){A=A|0;var e=0.0,i=0.0,r=0.0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,U=0,x=0,T=0,j=0,P=0,S=0;S=k;k=k+304|0;P=S+296|0;j=S+288|0;T=S+272|0;U=S+264|0;H=S+256|0;X=S+248|0;R=S+240|0;N=S+232|0;p=S+224|0;J=S+216|0;V=S+208|0;F=S+200|0;M=S+192|0;D=S+184|0;z=S+176|0;W=S+168|0;y=S+160|0;L=S+152|0;m=S+144|0;G=S+136|0;Z=S+128|0;I=S+120|0;C=S+112|0;E=S+104|0;v=S+96|0;g=S+88|0;B=S+80|0;d=S+72|0;h=S+64|0;o=S+56|0;w=S+48|0;x=S+40|0;Q=S+24|0;u=S+16|0;b=S;n=a[A+456>>2]|0;l=a[A+460>>2]|0;t=a[A+464>>2]|0;c=a[A+468>>2]|0;f=A+360|0;A:do{if(a[4025]|0){switch(a[f>>2]|0){case 90:case 0:break A;default:{}}xQ();a[4025]=0}}while(0);r=(+(c|0)-+(l|0))*.013888888888888888;e=(+(t|0)-+(n|0))*.013888888888888888;c=(a[f>>2]|0)==90;i=c?r:e;r=c?e:r;s[b>>3]=i;s[b+8>>3]=r;vv(A,81281,b);a[u>>2]=81094;vv(A,81296,u);if(i>0.0){e=+t1(i);s[19214]=e;e=e+3.0-+(~~e|0)}else e=3.0;e=+Y(10.0,+e);s[19214]=e;s[Q>>3]=e;s[Q+8>>3]=e;vv(A,81465,Q);a[x>>2]=81094;vv(A,81500,x);a[w>>2]=81094;vv(A,81558,w);a[o>>2]=81094;vv(A,81618,o);a[h>>2]=81094;vv(A,81667,h);a[d>>2]=81094;vv(A,81706,d);a[B>>2]=81094;vv(A,81757,B);a[g>>2]=81094;vv(A,81819,g);a[v>>2]=81094;vv(A,81929,v);a[E>>2]=81094;vv(A,82020,E);a[C>>2]=81094;vv(A,82074,C);a[I>>2]=81094;vv(A,82143,I);vv(A,82179,Z);a[G>>2]=81094;vv(A,82304,G);a[m>>2]=81094;vv(A,82333,m);vv(A,82373,L);a[y>>2]=81094;vv(A,82466,y);a[W>>2]=81094;vv(A,82525,W);a[z>>2]=81094;vv(A,82606,z);vv(A,82676,D);a[M>>2]=81094;vv(A,82765,M);a[F>>2]=81094;vv(A,82870,F);a[V>>2]=81094;vv(A,82946,V);a[J>>2]=81094;vv(A,82985,J);a[p>>2]=81094;vv(A,83084,p);a[N>>2]=81094;vv(A,83130,N);vv(A,83219,R);a[X>>2]=81094;vv(A,83260,X);a[H>>2]=81094;vv(A,83343,H);a[U>>2]=81094;vv(A,83444,U);s[T>>3]=r;s[T+8>>3]=i;vv(A,83508,T);vv(A,83536,j);vv(A,83544,P);k=S;return}function DQ(A){A=A|0;var e=0;e=k;k=k+16|0;vv(A,81274,e);k=e;return}function MQ(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0.0,l=0.0,t=0.0,c=0,b=0,u=0.0,w=0,o=0,h=0,d=0;d=k;k=k+48|0;h=d+24|0;o=d+8|0;w=d;switch(r[i+48>>0]|0){case 108:{c=e;l=+s[i+32>>3];t=+s[e>>3];break}case 114:{l=+s[i+32>>3];n=l;f=5;break}default:{l=+s[i+32>>3];n=l*.5;f=5}}if((f|0)==5){t=+s[e>>3]-n;s[e>>3]=t;c=e}b=i+4|0;f=a[b>>2]|0;n=+s[f+16>>3];e=e+8|0;u=+s[e>>3]+n*.004629629629629629;s[e>>3]=u;l=t+l*.006944444444444444;s[c>>3]=l;f=a[f>>2]|0;do{if(f){e=a[46730]|0;if(e|0?(A1(e,f)|0)==0:0)break;a[w>>2]=HQ(f)|0;vv(A,81173,w);w=a[b>>2]|0;a[46730]=a[w>>2];n=+s[w+16>>3]}}while(0);f=~~n;f=(f|0)>1?f:1;if((f|0)!=(a[46731]|0)){t=+s[19214];a[o>>2]=f;s[o+8>>3]=t;vv(A,81181,o);a[46731]=f}a[h>>2]=UQ(a[i>>2]|0)|0;s[h+8>>3]=l;s[h+16>>3]=u;vv(A,81202,h);k=d;return}function FQ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0.0,l=0.0,t=0.0,c=0.0;r=k;k=k+48|0;f=r;l=+s[e>>3];c=(+s[e+16>>3]-l)*.027777777777777776;n=+s[e+8>>3];t=(+s[e+24>>3]-n)*.027777777777777776;a[f>>2]=1;a[f+4>>2]=i|0?81115:195059;s[f+8>>3]=c;s[f+16>>3]=t;s[f+24>>3]=l*.013888888888888888;s[f+32>>3]=n*.013888888888888888;vv(A,81121,f);k=r;return}function VQ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;r=k;k=k+16|0;RQ(a[A+16>>2]|0,r+8|0,r);XQ(A,e,i,1);k=r;return}function JQ(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0.0,E=0.0,C=0;g=k;k=k+128|0;B=g+112|0;h=g+104|0;o=g+96|0;r=g+88|0;u=g+16|0;w=g;c=a[A+16>>2]|0;t=Q2((i*140|0)+140|0)|0;RQ(c,g+116|0,g+80|0);E=+s[e>>3];c=u+48|0;s[c>>3]=E;v=+s[e+8>>3];s[u+56>>3]=v;a[r>>2]=~~(E+(E>=0.0?.5:-.5));a[r+4>>2]=~~(v+(v>=0.0?.5:-.5));l=w+8|0;r=t+(S4(t,81099,r)|0)|0;d=1;n=0;while(1){b=n+3|0;if((b|0)>=(i|0))break;a[u>>2]=a[c>>2];a[u+4>>2]=a[c+4>>2];a[u+8>>2]=a[c+8>>2];a[u+12>>2]=a[c+12>>2];f=1;while(1){if((f|0)==4){f=1;break}C=f+n|0;s[u+(f<<4)>>3]=+s[e+(C<<4)>>3];s[u+(f<<4)+8>>3]=+s[e+(C<<4)+8>>3];f=f+1|0}while(1){if((f|0)==7)break;QR(w,u,3,+(f|0)*.16666666666666666,0,0);v=+s[w>>3];E=+s[l>>3];a[o>>2]=~~(v+(v>=0.0?.5:-.5));a[o+4>>2]=~~(E+(E>=0.0?.5:-.5));f=f+1|0;r=r+(S4(r,81099,o)|0)|0}d=d+6|0;n=b}a[h>>2]=t;vv(A,81106,h);L2(t);f=d+-1|0;r=0;while(1){if((r|0)>=(d|0))break;a[B>>2]=((r|0)%(f|0)|0|0)!=0&1;vv(A,81111,B);r=r+1|0}kv(A,153599)|0;k=g;return}function pQ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=k;k=k+16|0;RQ(a[A+16>>2]|0,r+8|0,r);XQ(A,e,i,0);k=r;return}function NQ(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+16|0;r=i;a[r>>2]=81094;a[r+4>>2]=e;vv(A,81087,r);k=i;return}function RQ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;switch(a[A+144>>2]|0){case 1:{r=10.0;A=1;break}case 2:{r=10.0;A=2;break}default:{r=0.0;A=0}}a[e>>2]=A;s[i>>3]=r;return}function XQ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0.0,b=0.0;t=k;k=k+16|0;l=t+8|0;n=t;f=0;while(1){if((f|0)>=(i|0))break;b=+s[e+(f<<4)>>3];c=+s[e+(f<<4)+8>>3];a[n>>2]=~~(b+(b>=0.0?.5:-.5));a[n+4>>2]=~~(c+(c>=0.0?.5:-.5));vv(A,81099,n);f=f+1|0}if(r|0){c=+s[e>>3];b=+s[e+8>>3];a[l>>2]=~~(c+(c>=0.0?.5:-.5));a[l+4>>2]=~~(b+(b>=0.0?.5:-.5));vv(A,81099,l)}kv(A,153599)|0;k=t;return}function HQ(A){A=A|0;var e=0,i=0,f=0,n=0,l=0;l=k;k=k+16|0;f=l;A:while(1){e=15828;while(1){i=a[e+4>>2]|0;if(!i)break;if(!(A1(i,A)|0)){n=6;break A}e=e+8|0}a[f>>2]=81255;a[f+4>>2]=A;ao(1,81229,f)|0;e=u3(A,45)|0;if(!e){e=81272;break}r[e>>0]=0}k=l;return e|0}function UQ(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;l=t;e=a[46732]|0;if(!e){a[46733]=64;e=Q2(64)|0;a[46732]=e;i=0}else i=0;while(1){n=A+1|0;f=r[A>>0]|0;if(!(f<<24>>24))break;A=a[46733]|0;if((i|0)>(A+-8|0)){e=A<<1;a[46733]=e;e=W2(a[46732]|0,e)|0;a[46732]=e;e=e+i|0}if(f<<24>>24<=-1){r[e>>0]=92;a[l>>2]=f&255;S4(e+1|0,81224,l)|0;A=n;e=e+4|0;i=i+4|0;continue}if(f<<24>>24==92){r[e>>0]=92;i=i+1|0;e=e+1|0}r[e>>0]=f;A=n;e=e+1|0;i=i+1|0}r[e>>0]=0;k=t;return a[46732]|0}function xQ(){var A=0,e=0;A=k;k=k+16|0;e=A;a[e>>2]=81255;a[e+4>>2]=91269;ao(0,83634,e)|0;k=A;return}function TQ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0.0,l=0.0,t=0,c=0;r=k;k=k+32|0;f=r+8|0;t=r;e=e+8|0;c=a[e>>2]|0;a[t>>2]=c;a[t+4>>2]=c;vv(A,84223,t);l=(+s[i>>3]+ +s[i+16>>3])*.5;n=(+s[i+8>>3]+ +s[i+24>>3])*.5;a[f>>2]=a[e>>2];s[f+8>>3]=l;s[f+16>>3]=n;vv(A,84265,f);k=r;return}function jQ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0.0,l=0.0,t=0.0,c=0.0;r=k;k=k+48|0;f=r;l=+s[i>>3];c=+s[i+16>>3]-l;n=+s[i+24>>3];t=n-+s[i+8>>3];n=+(~~(+s[A+232>>3]-+s[A+216>>3])>>>0)-n;a[f>>2]=a[e+8>>2];s[f+8>>3]=c;s[f+16>>3]=t;s[f+24>>3]=l;s[f+32>>3]=n;vv(A,84310,f);kv(A,84402)|0;k=r;return}function PQ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;return}function SQ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,n=0.0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0.0;g=k;k=k+160|0;B=g+152|0;d=g+136|0;h=g+120|0;c=g+112|0;u=g+104|0;b=g+88|0;t=g+72|0;l=g+64|0;w=g;if(!A)gA(111282,84407,212,84426);if(!e)gA(111312,84407,213,84426);o=e+8|0;if(!(a[o>>2]|0))gA(111315,84407,214,84426);if(a[e+52>>2]|0){a[w>>2]=a[i>>2];a[w+4>>2]=a[i+4>>2];a[w+8>>2]=a[i+8>>2];a[w+12>>2]=a[i+12>>2];e=w+32|0;i=i+16|0;a[e>>2]=a[i>>2];a[e+4>>2]=a[i+4>>2];a[e+8>>2]=a[i+8>>2];a[e+12>>2]=a[i+12>>2];f=+s[w>>3];s[w+16>>3]=f;s[w+24>>3]=+s[w+40>>3];s[w+48>>3]=+s[e>>3];n=+s[w+8>>3];s[w+56>>3]=n;if(r<<24>>24){vv(A,84447,l);e=0;while(1){if((e|0)==4)break;v=+s[w+(e<<4)+8>>3];s[t>>3]=+s[w+(e<<4)>>3];s[t+8>>3]=v;vv(A,84450,t);e=e+1|0}s[b>>3]=f;s[b+8>>3]=n;vv(A,84450,b);b=a[o>>2]|0;a[u>>2]=4;a[u+4>>2]=b;vv(A,84457,u)}vv(A,84447,c);e=0;while(1){if((e|0)==4)break;v=+s[w+(e<<4)+8>>3];s[h>>3]=+s[w+(e<<4)>>3];s[h+8>>3]=v;vv(A,84450,h);e=e+1|0}s[d>>3]=f;s[d+8>>3]=n;vv(A,84450,d);d=a[o>>2]|0;a[B>>2]=4;a[B+4>>2]=d;vv(A,84472,B)}k=g;return}function OQ(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0.0;w=k;k=k+112|0;u=w+24|0;b=w+16|0;c=w;l=w+28|0;if(!A)gA(111282,84407,153,84488);if(!e)gA(111312,84407,154,84488);if(!(a[e+8>>2]|0))gA(111315,84407,155,84488);t=e+52|0;if(a[t>>2]|0){f=e+60|0;n=a[f>>2]|0;if((n|0)==100)n=18;else{F5[n&127](e);a[t>>2]=0;a[f>>2]=0;a[e+56>>2]=0;n=10}}else n=10;do{if((n|0)==10){if(!((Rv(e)|0)<<24>>24))break;f=t6(a[e+20>>2]|0)|0;if((a[e+24>>2]&-2|0)==6){D3(f,l)|0;l=a[l+36>>2]|0;a[e+56>>2]=l;f=T2(0,l,1,1,f,0)|0;a[t>>2]=f;r[e+16>>0]=1}else f=a[t>>2]|0;if(f|0)a[e+60>>2]=100;Xv(e);if(a[t>>2]|0)n=18}}while(0);if((n|0)==18){o=+s[i+8>>3]-+(a[e+36>>2]|0);s[c>>3]=+s[i>>3]-+(a[e+32>>2]|0);s[c+8>>3]=o;vv(A,84506,c);if(!(r[e+16>>0]|0)){a[b>>2]=a[e+12>>2];vv(A,84537,b)}else HJ(A,e);vv(A,84552,u)}k=w;return}function KQ(A){A=A|0;U2(a[A+52>>2]|0,a[A+56>>2]|0)|0;return}function _Q(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0;n=k;k=k+80|0;f=n+48|0;if(!A)gA(111282,84407,121,84562);r=a[A+16>>2]|0;if(!r)gA(99902,84407,123,84562);if(!e)gA(111312,84407,124,84562);i=e+8|0;if(!(a[i>>2]|0))gA(111315,84407,125,84562);if(!(a[r+8>>2]|0))gA(138879,84407,128,84562);else{vv(A,84582,n);vv(A,84591,n+8|0);vv(A,84618,n+16|0);vv(A,84643,n+24|0);vv(A,84672,n+32|0);vv(A,84700,n+40|0);a[f>>2]=a[i>>2];vv(A,84707,f);vv(A,84746,n+56|0);vv(A,111008,n+64|0);k=n;return}}function qQ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,b=0.0;l=k;k=k+128|0;n=l+80|0;f=l;if(!A)gA(111282,84407,97,84751);if(!e)gA(111312,84407,98,84751);r=a[e+8>>2]|0;if(!r)gA(111315,84407,99,84751);else{b=+s[i>>3];t=~~(b+(b>=0.0?.5:-.5));b=+s[i+8>>3];e=~~(b+(b>=0.0?.5:-.5));b=+s[i+16>>3];c=~~(b+(b>=0.0?.5:-.5));b=+s[i+24>>3];i=~~(b+(b>=0.0?.5:-.5));a[f>>2]=2;a[f+4>>2]=5;a[f+8>>2]=0;a[f+12>>2]=0;a[f+16>>2]=0;a[f+20>>2]=-1;a[f+24>>2]=1;a[f+28>>2]=-1;a[f+32>>2]=0;s[f+40>>3]=0.0;a[f+48>>2]=0;a[f+52>>2]=0;a[f+56>>2]=0;a[f+60>>2]=0;a[f+64>>2]=0;a[f+68>>2]=5;a[f+72>>2]=0;a[f+76>>2]=r;vv(A,84770,f);a[n>>2]=t;a[n+4>>2]=e;a[n+8>>2]=t;a[n+12>>2]=i;a[n+16>>2]=c;a[n+20>>2]=i;a[n+24>>2]=c;a[n+28>>2]=e;a[n+32>>2]=t;a[n+36>>2]=e;vv(A,84828,n);k=l;return}}function $Q(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,n=0.0,l=0.0,t=0.0,c=0,b=0,u=0,w=0;w=k;k=k+96|0;u=w+56|0;b=w+32|0;c=w;l=+s[i>>3];t=+s[i+16>>3]-l;f=+s[i+24>>3];n=f-+s[i+8>>3];if(!A)gA(111282,84407,53,84860);if(!e)gA(111312,84407,54,84860);r=e+8|0;if(!(a[r>>2]|0))gA(111315,84407,55,84860);kv(A,84879)|0;kv(A,a[r>>2]|0)|0;r=A+360|0;f=-f;if(!(a[r>>2]|0)){s[u>>3]=t;s[u+8>>3]=n;s[u+16>>3]=l;s[u+24>>3]=f;vv(A,85008,u)}else{s[c>>3]=n;s[c+8>>3]=t;s[c+16>>3]=l;s[c+24>>3]=f;vv(A,84899,c);a[b>>2]=a[r>>2];s[b+8>>3]=l;s[b+16>>3]=f;vv(A,84978,b)}kv(A,85087)|0;k=w;return}function AL(A){A=A|0;var e=0,i=0;e=cd(A)|0;while(1){if(!e)break;eL(e);e=sd(A,e)|0}i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;iL(e);e=_o(A,e)|0}i=sd(A,i)|0}return}function eL(A){A=A|0;var e=0,i=0;Td(A,137447,304,1)|0;FR(A);DX(A,a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&1);A=A+16|0;a[(a[A>>2]|0)+176>>2]=0;e=qF(20)|0;i=a[A>>2]|0;a[i+172>>2]=e;a[i+184>>2]=0;i=qF(20)|0;e=a[A>>2]|0;a[e+180>>2]=i;a[e+200>>2]=0;e=qF(12)|0;i=a[A>>2]|0;a[i+196>>2]=e;a[i+192>>2]=0;i=qF(12)|0;e=a[A>>2]|0;a[e+188>>2]=i;a[e+208>>2]=0;e=qF(12)|0;A=a[A>>2]|0;a[A+204>>2]=e;a[A+216>>2]=1;return}function iL(A){A=A|0;var e=0,i=0,n=0,l=0,t=0;Td(A,137460,176,1)|0;VR(A)|0;l=kR(A,a[47174]|0,1,0)|0;n=A+16|0;a[(a[n>>2]|0)+156>>2]=l;l=dR(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0,a[47168]|0,195059)|0;t=dR(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0,a[47168]|0,195059)|0;e=a[n>>2]|0;i=e+154|0;f[i>>1]=1;f[e+168>>1]=1;if((l|0)==(t|0)&(r[l>>0]|0)!=0){f[i>>1]=1e3;t=e+156|0;a[t>>2]=(a[t>>2]|0)*100}if(qY(A)|0){t=a[n>>2]|0;f[t+154>>1]=0;a[t+156>>2]=0}t=(kR(A,a[47187]|0,0,0)|0)&255;r[(a[n>>2]|0)+152>>0]=t;t=(kR(A,a[47175]|0,1,0)|0)&65535;f[(a[n>>2]|0)+170>>1]=t;return}function rL(A){A=A|0;var e=0,i=0;fL(a[(a[A+16>>2]|0)+192>>2]|0);i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;wX(e);e=_o(A,e)|0}aL(i);i=sd(A,i)|0}nL(A);return}function fL(A){A=A|0;var e=0,i=0,f=0,n=0;while(1){if(!A)break;f=A+16|0;n=a[(a[f>>2]|0)+164>>2]|0;lL(A);e=a[f>>2]|0;if((r[e+156>>0]|0)!=1){A=n;continue}i=a[e+180>>2]|0;if(i){L2(i);e=a[f>>2]|0}i=a[e+172>>2]|0;if(i){L2(i);e=a[f>>2]|0}L2(e);L2(A);A=n}return}function aL(A){A=A|0;var e=0,i=0,r=0;r=A+16|0;e=a[r>>2]|0;i=a[e+172>>2]|0;if(i){L2(i);e=a[r>>2]|0}i=a[e+180>>2]|0;if(i){L2(i);e=a[r>>2]|0}i=a[e+188>>2]|0;if(i){L2(i);e=a[r>>2]|0}i=a[e+196>>2]|0;if(i){L2(i);e=a[r>>2]|0}i=a[e+204>>2]|0;if(i){L2(i);e=a[r>>2]|0}TF(a[e+104>>2]|0);TF(a[(a[r>>2]|0)+108>>2]|0);e=a[(a[r>>2]|0)+8>>2]|0;if(e|0)F5[a[(a[e+4>>2]|0)+4>>2]&127](A);Pd(A,137447)|0;return}function nL(A){A=A|0;var e=0,i=0,r=0;e=RB(A)|0;while(1){if(!e)break;nL(e);e=XB(e)|0}if(Td(A,137483,0,1)|0){r=A+16|0;e=a[r>>2]|0;i=a[e+184>>2]|0;if(i){L2(i);e=a[r>>2]|0}i=a[e+268>>2]|0;if(i){L2(i);e=a[r>>2]|0}i=a[e+216>>2]|0;if(i){L2(i);e=a[r>>2]|0}do{if(a[e+196>>2]|0){i=f[e+236>>1]|0;while(1){if((i|0)>(f[e+238>>1]|0))break;L2(a[(a[e+196>>2]|0)+(i<<6)+12>>2]|0);i=i+1|0;e=a[r>>2]|0}i=a[e+196>>2]|0;if((f[e+236>>1]|0)==-1){L2(i+-64|0);break}else{L2(i);break}}}while(0);if((Zd(A)|0)!=(A|0)){TF(a[(a[r>>2]|0)+12>>2]|0);Pd(A,137483)|0}}return}function lL(A){A=A|0;var e=0,i=0,r=0;r=A+16|0;i=a[r>>2]|0;e=a[i+176>>2]|0;while(1){A=e+-1|0;if((e|0)<=0)break;e=a[(a[i+172>>2]|0)+(A<<2)>>2]|0;Cy(e);L2(a[e+16>>2]|0);L2(e);e=A;i=a[r>>2]|0}e=a[i+184>>2]|0;while(1){A=e+-1|0;if((e|0)<=0)break;e=a[(a[(a[r>>2]|0)+180>>2]|0)+(A<<2)>>2]|0;Cy(e);L2(a[e+16>>2]|0);L2(e);e=A}return}function tL(A){A=A|0;if(gh(A)|0)cL(A);VJ(A);return}function cL(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0;l=k;k=k+48|0;n=l+32|0;f=l;e=bC(A,-1,8)|0;i=uC(A,0,f)|0;sC(A,2,8,f)|0;i=(i|0)==0;r=(e|0)<0;if(r&i)sL(A);else{if(i)a[f+16>>2]=3;else e=r?8:e;a[f+8>>2]=e;a[f+20>>2]=0;r=YE(A,n,0)|0;e=a[n>>2]|0;do{if((e|0)==1){sL(A);e=0}else{if(a[(a[(a[A+16>>2]|0)+8>>2]|0)+84>>2]|0){sL(A);e=0;break}a[f+12>>2]=1;i=0;while(1){if((i|0)>=(e|0))break;e=a[r+(i<<2)>>2]|0;bL(e,A);sL(e);i=i+1|0;e=a[n>>2]|0}uL(A);cC(a[n>>2]|0,r,A,f)|0;wL(A);kL(a[n>>2]|0,r,A);e=0}}while(0);while(1){if((e|0)>=(a[n>>2]|0))break;f=r+(e<<2)|0;L2(a[(a[(a[f>>2]|0)+16>>2]|0)+8>>2]|0);nL(a[f>>2]|0);Cd(A,a[f>>2]|0)|0;e=e+1|0}L2(r)}k=l;return}function sL(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;b=k;k=k+48|0;s=b+40|0;i=b;t=kR(A,Yo(A,0,85102,0)|0,-1,1)|0;zX(A,10);e=_Y(A,i)|0;hL(A,A);AL(A);r=(t|0)==1;n=i+32|0;l=(t|0)==2;t=(t|0)==3;c=i+28|0;i=i+24|0;while(1){Jz(A,e);if(r){e=3;break}if(a[n>>2]|0){ao(0,85108,s)|0;a[i>>2]=0;e=0}Py(A,(e|0)!=0&1);if(l){e=7;break}KW(A,e);if(t){e=9;break}u=(a[c>>2]|0)+-1|0;a[c>>2]=u;if(!((u|0)!=0&(a[i>>2]|0)!=0)){e=11;break}}if((e|0)==3)dL(A,1);else if((e|0)==7)dL(A,2);else if((e|0)==9)dL(A,2);else if((e|0)==11){if(f[(a[A+16>>2]|0)+136>>1]&16)BL(A);zY(A);CL(A);if((vR(Ho(A,85199)|0)|0)<<24>>24)GD(A)}k=b;return}function bL(A,e){A=A|0;e=e|0;var i=0,f=0;Td(A,137483,280,1)|0;i=qF(96)|0;A=a[A+16>>2]|0;a[A+8>>2]=i;e=a[e+16>>2]|0;f=a[e+8>>2]|0;s[i>>3]=+s[f>>3];s[i+24>>3]=+s[f+24>>3];a[A+144>>2]=a[e+144>>2];r[A+115>>0]=r[e+115>>0]|0;a[A+116>>2]=a[e+116>>2];a[A+248>>2]=a[e+248>>2];a[A+252>>2]=a[e+252>>2];a[A+244>>2]=a[e+244>>2];return}function uL(A){A=A|0;var e=0,i=0,r=0;e=qF((gh(A)|0)<<4)|0;i=cd(A)|0;while(1){if(!i)break;r=a[i+16>>2]|0;a[r+132>>2]=e;s[e>>3]=+s[r+16>>3]*.013888888888888888;s[e+8>>3]=+s[r+24>>3]*.013888888888888888;e=e+16|0;i=sd(A,i)|0}return}function wL(A){A=A|0;var e=0,i=0,r=0,f=0;r=a[(a[(cd(A)|0)+16>>2]|0)+132>>2]|0;e=r;i=cd(A)|0;while(1){if(!i)break;f=a[i+16>>2]|0;a[f+132>>2]=0;s[f+16>>3]=+s[e>>3]*72.0;s[f+24>>3]=+s[e+8>>3]*72.0;e=e+16|0;i=sd(A,i)|0}L2(r);return}function kL(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0;r=0;f=0;while(1){if((r|0)>=(A|0))break;t=(a[(a[(a[e+(r<<2)>>2]|0)+16>>2]|0)+180>>2]|0)+f|0;r=r+1|0;f=t}t=i+16|0;a[(a[t>>2]|0)+180>>2]=f;n=qF((f<<2)+4|0)|0;a[(a[t>>2]|0)+184>>2]=n;n=0;r=1;while(1){if((n|0)>=(A|0))break;l=(a[e+(n<<2)>>2]|0)+16|0;f=1;while(1){i=a[l>>2]|0;if((f|0)>(a[i+180>>2]|0))break;i=zE(a[(a[i+184>>2]|0)+(f<<2)>>2]|0)|0;a[(a[(a[t>>2]|0)+184>>2]|0)+(r<<2)>>2]=i;oL(a[(a[(a[l>>2]|0)+184>>2]|0)+(f<<2)>>2]|0,i);f=f+1|0;r=r+1|0}n=n+1|0}return}function oL(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;Td(e,137483,280,1)|0;n=e+16|0;e=(a[n>>2]|0)+16|0;f=A+16|0;A=(a[f>>2]|0)+16|0;a[e>>2]=a[A>>2];a[e+4>>2]=a[A+4>>2];a[e+8>>2]=a[A+8>>2];a[e+12>>2]=a[A+12>>2];a[e+16>>2]=a[A+16>>2];a[e+20>>2]=a[A+20>>2];a[e+24>>2]=a[A+24>>2];a[e+28>>2]=a[A+28>>2];A=a[f>>2]|0;e=a[n>>2]|0;r[e+275>>0]=r[A+275>>0]|0;e=e+48|0;A=A+48|0;i=e+64|0;do{a[e>>2]=a[A>>2];e=e+4|0;A=A+4|0}while((e|0)<(i|0));A=a[(a[f>>2]|0)+180>>2]|0;a[(a[n>>2]|0)+180>>2]=A;e=qF((A<<2)+4|0)|0;a[(a[n>>2]|0)+184>>2]=e;e=1;while(1){i=a[f>>2]|0;if((e|0)>(A|0))break;i=zE(a[(a[i+184>>2]|0)+(e<<2)>>2]|0)|0;a[(a[(a[n>>2]|0)+184>>2]|0)+(e<<2)>>2]=i;oL(a[(a[(a[f>>2]|0)+184>>2]|0)+(e<<2)>>2]|0,i);e=e+1|0}f=i+12|0;a[(a[n>>2]|0)+12>>2]=a[f>>2];a[f>>2]=0;return}function hL(A,e){A=A|0;e=e|0;if((Zd(A)|0)!=(A|0))Td(A,137483,280,1)|0;if((A|0)==(e|0))a[(a[(Zd(A)|0)+16>>2]|0)+188>>2]=A;A=RB(A)|0;while(1){if(!A)break;hL(A,e);A=XB(A)|0}return}function dL(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;b=k;k=k+1040|0;s=b+8|0;c=b;r=b+16|0;f=Yo(A,1,87171,195059)|0;n=Yo(A,1,85242,195059)|0;l=(e|0)>0;i=(e|0)==1;e=cd(A)|0;while(1){if(!e)break;if(l?(t=e+16|0,a[c>>2]=a[(a[t>>2]|0)+232>>2],S4(r,137395,c)|0,Vo(e,f,r)|0,!i):0){a[s>>2]=a[(a[t>>2]|0)+236>>2];S4(r,137395,s)|0;Vo(e,n,r)|0}e=sd(A,e)|0}k=b;return}function BL(A){A=A|0;var e=0,i=0,r=0;i=NB(A,86675,0)|0;if(i|0){e=cd(i)|0;while(1){if(!e)break;r=sd(i,e)|0;Wy(A,e);gL(A,e);aL(e);Ed(A,e)|0;e=r}UB(A,i)|0}return}function gL(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0;c=a[(a[e+16>>2]|0)+232>>2]|0;t=A+16|0;A=a[(a[t>>2]|0)+196>>2]|0;i=a[A+(c<<6)>>2]|0;l=A+(c<<6)+4|0;n=0;r=0;while(1){if((r|0)>=(i|0)){f=7;break}f=a[(a[l>>2]|0)+(r<<2)>>2]|0;r=r+1|0;if((f|0)==(e|0)){f=4;break}else n=f}if((f|0)==4){while(1){if((r|0)>=(i|0))break;f=a[A+(c<<6)+4>>2]|0;a[f+(r+-1<<2)>>2]=a[f+(r<<2)>>2];f=a[(a[t>>2]|0)+196>>2]|0;r=r+1|0;i=a[f+(c<<6)>>2]|0;A=f;f=4}a[A+(c<<6)>>2]=i+-1}else if((f|0)==7?(n|0)!=(e|0):0)gA(85208,85215,248,85225);return}function vL(A){A=A|0;return a[(a[(Zd(A)|0)+16>>2]|0)+188>>2]|0}function EL(A,e){A=A|0;e=e|0;var i=0;i=r[A+28>>0]|0;if(r[e+28>>0]|0)if(i<<24>>24){i=~~(+s[A>>3]-+s[e>>3]);if(!i)i=~~(+s[A+8>>3]-+s[e+8>>3])}else i=-1;else i=i<<24>>24!=0&1;return i|0}function CL(A){A=A|0;IL(A,1);return}function IL(A,e){A=A|0;e=e|0;var i=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0.0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,U=0,x=0,T=0,j=0,P=0,S=0,O=0,K=0,_=0,q=0.0;_=k;k=k+656|0;R=_+592|0;N=_+552|0;i=_+544|0;T=_+96|0;j=_;K=_+632|0;P=A+16|0;O=f[(a[P>>2]|0)+136>>1]&14;X=O&65535;H=T+16|0;a[H>>2]=_+368;U=j+16|0;a[U>>2]=_+192;do{if(O<<16>>16){x=O<<16>>16==4;do{if(x){ZL(A);if(!(r[(a[(a[A+60>>2]|0)+16>>2]|0)+113>>0]&1))m=9;else{ao(0,85248,i)|0;m=9}}else if(O<<16>>16==8){ZL(A);if(!(r[(a[(a[A+60>>2]|0)+16>>2]|0)+113>>0]&1)){ce(A,0);u=0;b=0;c=0;break}else{GL(A);ce(A,1);u=0;b=0;c=0;break}}else m=9}while(0);if((m|0)==9){ID(A);if(SJ()|0)break;S=qF(96)|0;V=a[(a[P>>2]|0)+248>>2]|0;a[K+8>>2]=(V|0)/4|0;a[K+12>>2]=V;c=qF(512)|0;z=K+4|0;a[z>>2]=0;a[K>>2]=0;t=a[P>>2]|0;L=f[t+236>>1]|0;y=0;J=0;p=c;W=c;b=c;u=c;w=c;D=0;M=0;A:while(1){if((L|0)>(f[t+238>>1]|0))break;o=a[t+196>>2]|0;l=a[o+(L<<6)>>2]|0;Y=l+y|0;n=a[o+(L<<6)+4>>2]|0;i=a[n>>2]|0;if(!i)i=D;else{q=+(D|0);i=a[i+16>>2]|0;Z=+s[i+16>>3]-+s[i+88>>3];i=~~(Z>q?q:Z)}if((l|0)!=0?(F=a[n+(l+-1<<2)>>2]|0,(F|0)!=0):0){Z=+(M|0);n=a[F+16>>2]|0;q=+s[n+96>>3]+ +s[n+16>>3];n=~~(q =(l|0))break;c=a[(a[i+(L<<6)+4>>2]|0)+(I<<2)>>2]|0;C=c+16|0;i=a[C>>2]|0;l=a[i+112>>2]|0;if(l){l=l+16|0;t=a[(a[l>>2]|0)+96>>2]|0;if(!t){m=21;break A}B=t+56|0;i=i+16|0;a[B>>2]=a[i>>2];a[B+4>>2]=a[i+4>>2];a[B+8>>2]=a[i+8>>2];a[B+12>>2]=a[i+12>>2];r[(a[(a[l>>2]|0)+96>>2]|0)+81>>0]=1;i=a[C>>2]|0}if((r[i+156>>0]|0)!=0?(m5[a[17300>>2]&63](c)|0)<<24>>24==0:0){h=g;i=d;t=v;c=E;l=w}else{B=0;h=g;t=v;c=E;m=25}e:do{if((m|0)==25){while(1){m=0;o=a[C>>2]|0;l=a[(a[o+180>>2]|0)+(B<<2)>>2]|0;if(!l)break;switch(r[(a[l+16>>2]|0)+112>>0]|0){case 6:case 4:{i=h;l=d;break}default:{mL(l,1,16,64);i=h+1|0;a[d+(h<<2)>>2]=l;if(!(i&127)){n=eV(n,(h<<2)+516|0)|0;l=n;t=n;c=n;u=n;w=n}else l=d}}B=B+1|0;h=i;d=l;m=25}i=a[o+188>>2]|0;i:do{if(!i)l=w;else{B=0;l=w;while(1){i=a[i+(B<<2)>>2]|0;if(!i)break i;mL(i,2,0,128);w=h+1|0;a[d+(h<<2)>>2]=i;if(!(w&127)){n=eV(l,(h<<2)+516|0)|0;i=n;t=n;c=n;u=n;l=n}else i=d;o=a[C>>2]|0;B=B+1|0;h=w;d=i;i=a[o+188>>2]|0}}}while(0);i=a[o+204>>2]|0;if(!i)i=d;else{if(!(r[o+156>>0]|0)){E=o+96|0;q=+s[E>>3];B=o+240|0;s[E>>3]=+s[B>>3];s[B>>3]=q;B=0;o=d}else{B=0;o=d}while(1){i=a[i+(B<<2)>>2]|0;if(!i){i=o;break e}mL(i,0,0,128);w=h+1|0;a[o+(h<<2)>>2]=i;if(!(w&127)){n=eV(u,(h<<2)+516|0)|0;i=n;t=n;c=n;u=n;l=n}else i=o;B=B+1|0;h=w;o=i;i=a[(a[C>>2]|0)+204>>2]|0}}}}while(0);v=a[P>>2]|0;C=a[v+196>>2]|0;I=I+1|0;g=h;d=i;h=v;v=t;E=c;w=l;l=a[C+(L<<6)>>2]|0;i=C}L=L+1|0;y=Y;J=g;p=d;W=v;t=h;b=E;c=n;D=Q;M=G}if((m|0)==21)gA(85316,85329,313,85342);a[K>>2]=D;a[z>>2]=M;K4(W,J,4,58);a[S+84>>2]=qF((y<<5)+11520|0)|0;a[K+16>>2]=qF(L<<5)|0;A:do{if(O<<16>>16==2){i=(a[P>>2]|0)+192|0;while(1){n=a[i>>2]|0;if(!n)break A;l=n+16|0;i=a[l>>2]|0;if((r[i+156>>0]|0)==1?(a[i+104>>2]|0)!=0:0){LL(n);i=a[l>>2]|0}i=i+164|0}}}while(0);G=j+48|0;m=j+-48|0;Q=T+48|0;L=T+-48|0;Z=+(V|0);I=0;A:while(1){if((I|0)>=(J|0))break;E=p+(I<<2)|0;d=a[E>>2]|0;B=yL(d)|0;g=d+16|0;n=a[g>>2]|0;if(!(r[n+44>>0]|0)){n=(r[n+84>>0]|0)==0?B:d;i=n;n=a[n+16>>2]|0}else i=d;l=i+16|0;if(a[n+164>>2]&32){n=a[H>>2]|0;W6(n|0,a[l>>2]|0,176)|0;u=T;w=i;o=u+48|0;do{a[u>>2]=a[w>>2];u=u+4|0;w=w+4|0}while((u|0)<(o|0));a[H>>2]=n;w=a[i>>2]&3;u=a[T>>2]&3;a[((u|0)==3?T:Q)+40>>2]=a[((w|0)==2?i:i+-48|0)+40>>2];a[((u|0)==2?T:L)+40>>2]=a[((w|0)==3?i:i+48|0)+40>>2];u=n+16|0;w=(a[l>>2]|0)+56|0;o=u+40|0;do{a[u>>2]=a[w>>2];u=u+4|0;w=w+4|0}while((u|0)<(o|0));u=n+56|0;w=(a[l>>2]|0)+16|0;o=u+40|0;do{a[u>>2]=a[w>>2];u=u+4|0;w=w+4|0}while((u|0)<(o|0));r[n+112>>0]=1;a[n+116>>2]=i;i=T}h=i+16|0;C=1;i=I;while(1){v=i+1|0;if((v|0)>=(J|0))break;t=p+(v<<2)|0;i=a[t>>2]|0;if((B|0)!=(yL(i)|0))break;if(!(r[(a[g>>2]|0)+113>>0]|0)){c=i+16|0;n=a[c>>2]|0;if(!(r[n+44>>0]|0)){n=(r[n+84>>0]|0)==0?B:i;i=n;n=a[n+16>>2]|0}l=i+16|0;if(a[n+164>>2]&32){n=a[U>>2]|0;W6(n|0,a[l>>2]|0,176)|0;u=j;w=i;o=u+48|0;do{a[u>>2]=a[w>>2];u=u+4|0;w=w+4|0}while((u|0)<(o|0));a[U>>2]=n;w=a[i>>2]&3;u=a[j>>2]&3;a[((u|0)==3?j:G)+40>>2]=a[((w|0)==2?i:i+-48|0)+40>>2];a[((u|0)==2?j:m)+40>>2]=a[((w|0)==3?i:i+48|0)+40>>2];u=n+16|0;w=(a[l>>2]|0)+56|0;o=u+40|0;do{a[u>>2]=a[w>>2];u=u+4|0;w=w+4|0}while((u|0)<(o|0));u=n+56|0;w=(a[l>>2]|0)+16|0;o=u+40|0;do{a[u>>2]=a[w>>2];u=u+4|0;w=w+4|0}while((u|0)<(o|0));r[n+112>>0]=1;a[n+116>>2]=i}l=a[h>>2]|0;i=n+16|0;u=N;w=l+16|0;o=u+40|0;do{a[u>>2]=a[w>>2];u=u+4|0;w=w+4|0}while((u|0)<(o|0));u=R;w=i;o=u+40|0;do{a[u>>2]=a[w>>2];u=u+4|0;w=w+4|0}while((u|0)<(o|0));if(EL(N,R)|0)break;i=n+56|0;u=N;w=l+56|0;o=u+40|0;do{a[u>>2]=a[w>>2];u=u+4|0;w=w+4|0}while((u|0)<(o|0));u=R;w=i;o=u+40|0;do{a[u>>2]=a[w>>2];u=u+4|0;w=w+4|0}while((u|0)<(o|0));if(EL(N,R)|0)break;V=a[g>>2]|0;if((a[V+164>>2]&15|0)==2?(a[V+96>>2]|0)!=(a[(a[c>>2]|0)+96>>2]|0):0)break;if(a[(a[(a[t>>2]|0)+16>>2]|0)+164>>2]&64|0)break}C=C+1|0;i=v}if(x){if((C|0)==1)i=R;else i=qF(C<<2)|0;a[i>>2]=yL(a[E>>2]|0)|0;n=1;while(1){if((n|0)>=(C|0))break;a[i+(n<<2)>>2]=a[E+(n<<2)>>2];n=n+1|0}fp(A,i,C,X,17296);if((C|0)>1)L2(i);I=v;continue}i=a[d>>2]&3;V=a[((i|0)==3?d:d+48|0)+40>>2]|0;i=a[((i|0)==2?d:d+-48|0)+40>>2]|0;n=a[V+16>>2]|0;l=a[n+232>>2]|0;if((V|0)!=(i|0))if((l|0)==(a[(a[i+16>>2]|0)+232>>2]|0)){WL(A,K,S,p,I,C,X);I=v;continue}else{zL(A,K,S,p,I,C,X);I=v;continue}i=a[P>>2]|0;do{if((l|0)==(f[i+238>>1]|0))if((l|0)>0){i=~~(+s[(a[(a[a[(a[i+196>>2]|0)+(l+-1<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+s[n+24>>3]);break}else{i=~~+s[n+80>>3];break}else if((l|0)==(f[i+236>>1]|0)){i=~~(+s[n+24>>3]-+s[(a[(a[a[(a[i+196>>2]|0)+(l+1<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]);break}else{i=a[i+196>>2]|0;q=+s[n+24>>3];V=~~(+s[(a[(a[a[i+(l+-1<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-q);i=~~(q-+s[(a[(a[a[i+(l+1<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]);i=(V|0)<(i|0)?V:i;break}}while(0);LN(S,p,I,C,Z,+((i|0)/2|0|0),17296);i=0;while(1){if((i|0)>=(C|0)){I=v;continue A}n=a[(a[(a[p+(i+I<<2)>>2]|0)+16>>2]|0)+96>>2]|0;if(n|0)HR(A,n);i=i+1|0}}i=(a[P>>2]|0)+192|0;while(1){n=a[i>>2]|0;if(!n)break;l=n+16|0;i=a[l>>2]|0;if((r[i+156>>0]|0)==1?(a[i+104>>2]|0)!=0:0){LL(n);HR(A,a[(a[l>>2]|0)+104>>2]|0);i=a[l>>2]|0}i=i+164|0}if(!e){u=S;c=S}else{YL(A);u=S;c=S}}A:do{if((a[47197]|0)!=0|(a[47198]|0)!=0?(a[47203]|0)!=0|(a[47202]|0)!=0:0){t=cd(A)|0;while(1){if(!t)break A;e:do{if(a[47197]|0){i=qo(A,t)|0;while(1){if(!i)break e;n=i+-48|0;l=(a[i>>2]&3|0)==2?i:n;if(a[(a[l+16>>2]|0)+100>>2]|0){VN(l,1)|0;HR(A,a[(a[((a[i>>2]&3|0)==2?i:n)+16>>2]|0)+100>>2]|0)}i=$o(A,i)|0}}}while(0);e:do{if(a[47198]|0){i=Oo(A,t)|0;while(1){if(!i)break e;n=i+16|0;if(a[(a[n>>2]|0)+104>>2]|0?VN(i,0)|0:0)HR(A,a[(a[n>>2]|0)+104>>2]|0);i=_o(A,i)|0}}}while(0);t=sd(A,t)|0}}}while(0);switch(O&15){case 4:case 8:break;default:{L2(b);L2(a[u+84>>2]|0);L2(c);L2(a[K+16>>2]|0);OJ()}}a[47138]=1;a[47139]=1}}while(0);k=_;return}function ZL(A){A=A|0;var e=0,i=0,r=0.0,f=0;e=cd(A)|0;while(1){if(!e)break;i=a[e+16>>2]|0;if(a[i+204>>2]|0){f=i+96|0;r=+s[f>>3];i=i+240|0;s[f>>3]=+s[i>>3];s[i>>3]=r}e=sd(A,e)|0}return}function GL(A){A=A|0;var e=0,i=0,f=0,n=0;e=(a[A+16>>2]|0)+192|0;A:while(1){f=a[e>>2]|0;if(!f){e=12;break}n=f+16|0;e=a[n>>2]|0;do{if((r[e+156>>0]|0)==1){i=a[e+112>>2]|0;if(!i){i=a[e+104>>2]|0;if(!i)break;LL(f);e=i}else{i=a[(a[i+16>>2]|0)+96>>2]|0;if(!i){e=6;break A}f=i+56|0;e=e+16|0;a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];r[i+81>>0]=1;e=i}HR(A,e);e=a[n>>2]|0}}while(0);e=e+164|0}if((e|0)==6)gA(85516,85329,234,85535);else if((e|0)==12)return}function mL(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0;do{if(!e){n=a[A>>2]&3;e=a[((n|0)==3?A:A+48|0)+40>>2]|0;n=a[((n|0)==2?A:A+-48|0)+40>>2]|0;if((e|0)!=(n|0)){e=(a[(a[e+16>>2]|0)+232>>2]|0)==(a[(a[n+16>>2]|0)+232>>2]|0)?2:1;break}e=a[A+16>>2]|0;if(!(r[e+44>>0]|0))e=(r[e+84>>0]|0)==0?8:4;else e=4}}while(0);A:do{if(!i)switch(e|0){case 1:{i=a[A>>2]&3;i=(a[(a[(a[((i|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)<(a[(a[(a[((i|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)?16:32;break A}case 2:{i=a[A>>2]&3;i=(a[(a[(a[((i|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)<(a[(a[(a[((i|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)?16:32;break A}default:{i=16;break A}}}while(0);a[(a[A+16>>2]|0)+164>>2]=e|f|i;return}function QL(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0;y=k;k=k+624|0;G=y+584|0;Z=y+544|0;B=y+368|0;i=y+192|0;g=y+96|0;E=y;v=g+16|0;a[v>>2]=B;C=E+16|0;a[C>>2]=i;L=a[A>>2]|0;Q=a[e>>2]|0;I=L+16|0;h=a[I>>2]|0;e=a[h+164>>2]|0;f=e&15;m=Q+16|0;A=a[m>>2]|0;n=a[A+164>>2]&15;do{if((n|0)==(f|0)){o=yL(L)|0;d=yL(Q)|0;u=a[o>>2]|0;n=u&3;f=a[(a[((n|0)==3?o:o+48|0)+40>>2]|0)+16>>2]|0;n=a[(a[((n|0)==2?o:o+-48|0)+40>>2]|0)+16>>2]|0;l=(a[f+232>>2]|0)-(a[n+232>>2]|0)|0;w=a[d>>2]|0;b=w&3;c=a[(a[((b|0)==3?d:d+48|0)+40>>2]|0)+16>>2]|0;b=a[(a[((b|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0;t=(a[c+232>>2]|0)-(a[b+232>>2]|0)|0;l=(l|0)>-1?l:0-l|0;t=(t|0)>-1?t:0-t|0;if((l|0)!=(t|0)){A=l-t|0;break}n=~~(+s[f+16>>3]-+s[n+16>>3]);n=(n|0)>-1?n:0-n|0;f=~~(+s[c+16>>3]-+s[b+16>>3]);f=(f|0)>-1?f:0-f|0;if((n|0)!=(f|0)){A=n-f|0;break}n=u>>>4;f=w>>>4;if((n|0)!=(f|0)){A=n-f|0;break}if(!(r[h+44>>0]|0)){e=(r[h+84>>0]|0)==0?o:L;n=e;e=a[(a[e+16>>2]|0)+164>>2]|0}else n=L;f=n+16|0;if(e&32){W6(B|0,a[f>>2]|0,176)|0;l=g;t=n;c=l+48|0;do{a[l>>2]=a[t>>2];l=l+4|0;t=t+4|0}while((l|0)<(c|0));a[v>>2]=B;t=a[n>>2]&3;l=a[g>>2]&3;a[((l|0)==3?g:g+48|0)+40>>2]=a[((t|0)==2?n:n+-48|0)+40>>2];a[((l|0)==2?g:g+-48|0)+40>>2]=a[((t|0)==3?n:n+48|0)+40>>2];l=B+16|0;t=(a[f>>2]|0)+56|0;c=l+40|0;do{a[l>>2]=a[t>>2];l=l+4|0;t=t+4|0}while((l|0)<(c|0));l=B+56|0;t=(a[f>>2]|0)+16|0;c=l+40|0;do{a[l>>2]=a[t>>2];l=l+4|0;t=t+4|0}while((l|0)<(c|0));r[B+112>>0]=1;a[B+116>>2]=n;n=g;A=a[m>>2]|0}if(!(r[A+44>>0]|0)){A=(r[A+84>>0]|0)==0?d:Q;f=A;A=a[A+16>>2]|0}else f=Q;e=f+16|0;if(!(a[A+164>>2]&32))i=A;else{W6(i|0,a[e>>2]|0,176)|0;l=E;t=f;c=l+48|0;do{a[l>>2]=a[t>>2];l=l+4|0;t=t+4|0}while((l|0)<(c|0));a[C>>2]=i;t=a[f>>2]&3;l=a[E>>2]&3;a[((l|0)==3?E:E+48|0)+40>>2]=a[((t|0)==2?f:f+-48|0)+40>>2];a[((l|0)==2?E:E+-48|0)+40>>2]=a[((t|0)==3?f:f+48|0)+40>>2];l=i+16|0;t=(a[e>>2]|0)+56|0;c=l+40|0;do{a[l>>2]=a[t>>2];l=l+4|0;t=t+4|0}while((l|0)<(c|0));l=i+56|0;t=(a[e>>2]|0)+16|0;c=l+40|0;do{a[l>>2]=a[t>>2];l=l+4|0;t=t+4|0}while((l|0)<(c|0));r[i+112>>0]=1;a[i+116>>2]=f}e=a[n+16>>2]|0;A=i+16|0;l=Z;t=e+16|0;c=l+40|0;do{a[l>>2]=a[t>>2];l=l+4|0;t=t+4|0}while((l|0)<(c|0));l=G;t=A;c=l+40|0;do{a[l>>2]=a[t>>2];l=l+4|0;t=t+4|0}while((l|0)<(c|0));A=EL(Z,G)|0;if(!A){A=i+56|0;l=Z;t=e+56|0;c=l+40|0;do{a[l>>2]=a[t>>2];l=l+4|0;t=t+4|0}while((l|0)<(c|0));l=G;t=A;c=l+40|0;do{a[l>>2]=a[t>>2];l=l+4|0;t=t+4|0}while((l|0)<(c|0));A=EL(Z,G)|0;if(!A){e=a[(a[I>>2]|0)+164>>2]&192;A=a[(a[m>>2]|0)+164>>2]&192;if((e|0)==(A|0)){A=((a[L>>2]|0)>>>4)-((a[Q>>2]|0)>>>4)|0;break}else{A=e-A|0;break}}}}else A=n-f|0}while(0);k=y;return A|0}function LL(A){A=A|0;var e=0,i=0,f=0,n=0.0,l=0.0;f=A+16|0;e=a[f>>2]|0;if(a[e+176>>2]|0){e=a[e+180>>2]|0;while(1){e=(a[e>>2]|0)+16|0;i=a[e>>2]|0;if(!(r[i+112>>0]|0))break;else e=i+116|0}i=a[i+96>>2]|0;n=+s[i+24>>3];l=+s[i+32>>3];i=(a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&1|0)!=0;A=a[f>>2]|0;f=a[(a[e>>2]|0)+96>>2]|0;s[f+56>>3]=(i?l:n)*.5+ +s[A+16>>3];s[f+64>>3]=+s[A+24>>3];r[f+81>>0]=1}return}function yL(A){A=A|0;var e=0,i=0;while(1){e=a[A+16>>2]|0;i=a[e+172>>2]|0;if(!i)break;else A=i}while(1){e=a[e+116>>2]|0;if(!e)break;A=e;e=a[e+16>>2]|0}return A|0}function WL(A,e,i,f,n,l,t){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;t=t|0;var c=0,b=0.0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0.0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0.0,y=0.0,W=0.0,z=0.0,Y=0.0;Q=k;k=k+1712|0;I=Q+1664|0;B=Q+1488|0;g=Q+1392|0;m=Q+1696|0;Z=Q+696|0;G=Q;o=g+16|0;a[o>>2]=B;h=a[f+(n<<2)>>2]|0;d=h+16|0;c=a[d>>2]|0;v=r[c+113>>0]|0;if(a[c+164>>2]&32){W6(B|0,c|0,176)|0;c=g;u=h;w=c+48|0;do{a[c>>2]=a[u>>2];c=c+4|0;u=u+4|0}while((c|0)<(w|0));a[o>>2]=B;c=a[g>>2]&3;a[((c|0)==3?g:g+48|0)+40>>2]=a[((a[h>>2]&3|0)==2?h:h+-48|0)+40>>2];a[((c|0)==2?g:g+-48|0)+40>>2]=a[((a[h>>2]&3|0)==3?h:h+48|0)+40>>2];c=B+16|0;u=(a[d>>2]|0)+56|0;w=c+40|0;do{a[c>>2]=a[u>>2];c=c+4|0;u=u+4|0}while((c|0)<(w|0));c=B+56|0;u=(a[d>>2]|0)+16|0;w=c+40|0;do{a[c>>2]=a[u>>2];c=c+4|0;u=u+4|0}while((c|0)<(w|0));r[B+112>>0]=1;a[B+116>>2]=h;h=g}c=1;while(1){if((c|0)>=(l|0)){C=6;break}if(!(r[(a[(a[f+(c+n<<2)>>2]|0)+16>>2]|0)+113>>0]|0))c=c+1|0;else{C=7;break}}A:do{if((C|0)==6)if(!(v<<24>>24)){c=a[h+16>>2]|0;if(a[c+96>>2]|0){iy(A,e,i,h,t);break}if((t|0)==2){m=a[h>>2]&3;ry(a[((m|0)==3?h:h+48|0)+40>>2]|0,a[((m|0)==2?h:h+-48|0)+40>>2]|0,f,n,l,2);break}g=r[c+49>>0]|0;v=r[c+89>>0]|0;if(!(g<<24>>24==1&v<<24>>24!=4)?!(g<<24>>24!=4&v<<24>>24==1):0){o=a[h>>2]&3;w=a[((o|0)==3?h:h+48|0)+40>>2]|0;o=a[((o|0)==2?h:h+-48|0)+40>>2]|0;c=a[w+16>>2]|0;u=a[c+232>>2]|0;if((u|0)>0){v=a[(a[A+16>>2]|0)+196>>2]|0;g=u+~(r[(a[(a[A+60>>2]|0)+16>>2]|0)+113>>0]&1)|0;b=+s[(a[(a[a[v+(g<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+s[v+(g<<6)+16>>3]-+s[c+24>>3]-+s[v+(u<<6)+24>>3]}else b=+(a[(a[A+16>>2]|0)+252>>2]|0);L=+(l+1|0);E=+(a[e+12>>2]|0)/L;b=b/L;ay(A,e,i,w,h,Z,1);ay(A,e,i,o,h,G,0);B=Z+52|0;g=G+52|0;o=(t|0)==10;h=i+80|0;c=0;while(1){if((c|0)>=(l|0))break A;d=a[f+(c+n<<2)>>2]|0;w=a[B>>2]|0;u=w+-1|0;Y=+s[Z+56+(u<<5)>>3];z=+s[Z+56+(u<<5)+16>>3];W=+s[Z+56+(u<<5)+24>>3];s[19215]=Y;s[19216]=W;c=c+1|0;L=+(c|0);y=E*L;s[19217]=z+y;L=W+b*L;s[19218]=L;s[19219]=Y;s[19220]=L;u=(a[g>>2]|0)+-1|0;Y=+s[G+56+(u<<5)+16>>3];s[19221]=Y;s[19222]=L+b;W=+s[G+56+(u<<5)>>3];z=+s[G+56+(u<<5)+24>>3];s[19225]=Y;s[19224]=z;s[19223]=W-y;s[19226]=L;u=0;while(1){if((u|0)>=(w|0)){u=0;break}w=Z+56+(u<<5)|0;a[I>>2]=a[w>>2];a[I+4>>2]=a[w+4>>2];a[I+8>>2]=a[w+8>>2];a[I+12>>2]=a[w+12>>2];a[I+16>>2]=a[w+16>>2];a[I+20>>2]=a[w+20>>2];a[I+24>>2]=a[w+24>>2];a[I+28>>2]=a[w+28>>2];CN(i,I);u=u+1|0;w=a[B>>2]|0}while(1){if((u|0)==3)break;t=153720+(u<<5)|0;a[I>>2]=a[t>>2];a[I+4>>2]=a[t+4>>2];a[I+8>>2]=a[t+8>>2];a[I+12>>2]=a[t+12>>2];a[I+16>>2]=a[t+16>>2];a[I+20>>2]=a[t+20>>2];a[I+24>>2]=a[t+24>>2];a[I+28>>2]=a[t+28>>2];CN(i,I);u=u+1|0}w=a[g>>2]|0;while(1){u=w+-1|0;if((w|0)<=0)break;w=G+56+(u<<5)|0;a[I>>2]=a[w>>2];a[I+4>>2]=a[w+4>>2];a[I+8>>2]=a[w+8>>2];a[I+12>>2]=a[w+12>>2];a[I+16>>2]=a[w+16>>2];a[I+20>>2]=a[w+20>>2];a[I+24>>2]=a[w+24>>2];a[I+28>>2]=a[w+28>>2];CN(i,I);w=u}if(o)u=KJ(i,m)|0;else u=ip(i,m)|0;w=a[m>>2]|0;if(!w)break A;vN(d,a[((a[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0,u,w,17296);a[h>>2]=0}}fy(A,e,i,f,n,l,h,(t|0)==10&1)}else C=7}while(0);if((C|0)==7)ey(A,f,n,l,h,t);k=Q;return}function zL(A,e,i,f,n,l,t){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;t=t|0;var c=0,b=0.0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,x=0,T=0,j=0,P=0,S=0,O=0,K=0,_=0,q=0,$=0,AA=0,eA=0,iA=0;eA=k;k=k+2576|0;x=eA+2528|0;q=eA+2568|0;c=eA+2352|0;u=eA+2176|0;g=eA+1904|0;K=eA+1808|0;$=eA+1712|0;T=eA+1016|0;j=eA+320|0;P=eA+256|0;O=eA+2564|0;_=eA+2560|0;G=eA+288|0;m=eA+224|0;J=eA+192|0;p=eA+160|0;N=eA+128|0;R=eA+96|0;X=eA+64|0;H=eA+32|0;S=eA;B=g+16|0;a[B>>2]=c;w=K+16|0;a[w>>2]=u;AA=$+16|0;a[AA>>2]=eA+2e3;if(!(a[46734]|0)){a[46734]=$F(32e3)|0;a[46735]=$F(32e3)|0;a[46736]=2e3;a[46737]=2e3}v=a[f+(n<<2)>>2]|0;V=a[v>>2]&3;o=v+48|0;h=v+-48|0;V=(a[(a[(a[((V|0)==3?v:o)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(a[(a[(a[((V|0)==2?v:h)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0;d=v+16|0;if((((V|0)>-1?V:0-V|0)|0)<=1){c=a[d>>2]|0;if(!(a[c+164>>2]&32)){V=v;u=0}else{u=a[B>>2]|0;W6(u|0,c|0,176)|0;C=g;I=v;Z=C+48|0;do{a[C>>2]=a[I>>2];C=C+4|0;I=I+4|0}while((C|0)<(Z|0));a[B>>2]=u;C=a[g>>2]&3;a[((C|0)==3?g:g+48|0)+40>>2]=a[((a[v>>2]&3|0)==2?v:h)+40>>2];a[((C|0)==2?g:g+-48|0)+40>>2]=a[((a[v>>2]&3|0)==3?v:o)+40>>2];C=u+16|0;I=(a[d>>2]|0)+56|0;Z=C+40|0;do{a[C>>2]=a[I>>2];C=C+4|0;I=I+4|0}while((C|0)<(Z|0));c=a[B>>2]|0;C=c+56|0;I=(a[d>>2]|0)+16|0;Z=C+40|0;do{a[C>>2]=a[I>>2];C=C+4|0;I=I+4|0}while((C|0)<(Z|0));r[c+112>>0]=1;u=0;F=12}}else{W6(c|0,a[d>>2]|0,176)|0;C=g;I=v;Z=C+48|0;do{a[C>>2]=a[I>>2];C=C+4|0;I=I+4|0}while((C|0)<(Z|0));C=g+48|0;I=o;Z=C+48|0;do{a[C>>2]=a[I>>2];C=C+4|0;I=I+4|0}while((C|0)<(Z|0));a[B>>2]=c;c=a[d>>2]|0;if(!(a[c+164>>2]&32)){W6(u|0,c|0,176)|0;C=K;I=v;Z=C+48|0;do{a[C>>2]=a[I>>2];C=C+4|0;I=I+4|0}while((C|0)<(Z|0));a[w>>2]=u;w=a[g>>2]|0;a[((w&3|0)==3?g:g+48|0)+40>>2]=a[((a[v>>2]&3|0)==3?v:o)+40>>2];C=K+48|0;I=o;Z=C+48|0;do{a[C>>2]=a[I>>2];C=C+4|0;I=I+4|0}while((C|0)<(Z|0))}else{u=a[w>>2]|0;W6(u|0,c|0,176)|0;C=K;I=v;Z=C+48|0;do{a[C>>2]=a[I>>2];C=C+4|0;I=I+4|0}while((C|0)<(Z|0));a[w>>2]=u;C=a[K>>2]&3;a[((C|0)==3?K:K+48|0)+40>>2]=a[((a[v>>2]&3|0)==2?v:h)+40>>2];a[((C|0)==2?K:K+-48|0)+40>>2]=a[((a[v>>2]&3|0)==3?v:o)+40>>2];C=u+16|0;I=(a[d>>2]|0)+56|0;Z=C+40|0;do{a[C>>2]=a[I>>2];C=C+4|0;I=I+4|0}while((C|0)<(Z|0));c=a[w>>2]|0;C=c+56|0;I=(a[d>>2]|0)+16|0;Z=C+40|0;do{a[C>>2]=a[I>>2];C=C+4|0;I=I+4|0}while((C|0)<(Z|0));r[c+112>>0]=1;a[c+116>>2]=v;w=a[g>>2]|0;a[((w&3|0)==3?g:g+48|0)+40>>2]=a[((a[v>>2]&3|0)==2?v:h)+40>>2];C=(a[B>>2]|0)+16|0;I=(a[d>>2]|0)+56|0;Z=C+40|0;do{a[C>>2]=a[I>>2];C=C+4|0;I=I+4|0}while((C|0)<(Z|0))}c=yL(v)|0;while(1){u=a[(a[c+16>>2]|0)+172>>2]|0;if(!u)break;else c=u}a[((w&3|0)==2?g:g+-48|0)+40>>2]=a[((a[c>>2]&3|0)==2?c:c+-48|0)+40>>2];c=a[B>>2]|0;r[c+84>>0]=0;r[c+112>>0]=1;u=c+56|0;a[u>>2]=0;a[u+4>>2]=0;a[u+8>>2]=0;a[u+12>>2]=0;u=1;F=12}if((F|0)==12){a[c+116>>2]=v;V=g}D=(t|0)==2;if(D?(E=FL(A,V,a[46734]|0,q)|0,a[_>>2]=E,(E|0)!=0):0)F=63;else F=15;A:do{if((F|0)==15){Y=(t|0)==10;a[_>>2]=0;w=a[V>>2]&3;c=a[((w|0)==3?V:V+48|0)+40>>2]|0;w=a[((w|0)==2?V:V+-48|0)+40>>2]|0;a[q>>2]=w;VL(G,A,e,c,0,V);a[T>>2]=a[G>>2];a[T+4>>2]=a[G+4>>2];a[T+8>>2]=a[G+8>>2];a[T+12>>2]=a[G+12>>2];a[T+16>>2]=a[G+16>>2];a[T+20>>2]=a[G+20>>2];a[T+24>>2]=a[G+24>>2];a[T+28>>2]=a[G+28>>2];a[P>>2]=a[G>>2];a[P+4>>2]=a[G+4>>2];a[P+8>>2]=a[G+8>>2];a[P+12>>2]=a[G+12>>2];a[P+16>>2]=a[G+16>>2];a[P+20>>2]=a[G+20>>2];IN(i,V,1,T,JL(c)|0);Q=T+52|0;M=(a[Q>>2]|0)+-1|0;y=P+24|0;s[y>>3]=+s[T+56+(M<<5)+24>>3];W=P+8|0;s[W>>3]=+s[T+56+(M<<5)+8>>3];M=a[c+16>>2]|0;z=A+16|0;b=+s[M+24>>3]-+s[(a[(a[z>>2]|0)+196>>2]|0)+(a[M+232>>2]<<6)+16>>3];a[x>>2]=a[P>>2];a[x+4>>2]=a[P+4>>2];a[x+8>>2]=a[P+8>>2];a[x+12>>2]=a[P+12>>2];a[x+16>>2]=a[P+16>>2];a[x+20>>2]=a[P+20>>2];a[x+24>>2]=a[P+24>>2];a[x+28>>2]=a[P+28>>2];pL(m,x,1,b);a[P>>2]=a[m>>2];a[P+4>>2]=a[m+4>>2];a[P+8>>2]=a[m+8>>2];a[P+12>>2]=a[m+12>>2];a[P+16>>2]=a[m+16>>2];a[P+20>>2]=a[m+20>>2];a[P+24>>2]=a[m+24>>2];a[P+28>>2]=a[m+28>>2];m=P+16|0;if(+s[P>>3]<+s[m>>3]?+s[W>>3]<+s[y>>3]:0){M=a[Q>>2]|0;a[Q>>2]=M+1;M=T+56+(M<<5)|0;a[M>>2]=a[P>>2];a[M+4>>2]=a[P+4>>2];a[M+8>>2]=a[P+8>>2];a[M+12>>2]=a[P+12>>2];a[M+16>>2]=a[P+16>>2];a[M+20>>2]=a[P+20>>2];a[M+24>>2]=a[P+24>>2];a[M+28>>2]=a[P+28>>2]}C=A+60|0;L=j+52|0;I=i+56|0;Z=i+69|0;t=i+16|0;G=i+29|0;M=V;h=0;d=-1;e:while(1){B=c;g=0;c=0;v=M;while(1){o=w;E=w;if((r[(a[o+16>>2]|0)+156>>0]|0)!=1)break e;if((m5[a[17300>>2]&63](o)|0)<<24>>24)break e;w=g|1;iA=153720+(g<<5)|0;NL(J,e,A,a[(a[B+16>>2]|0)+232>>2]|0);a[iA>>2]=a[J>>2];a[iA+4>>2]=a[J+4>>2];a[iA+8>>2]=a[J+8>>2];a[iA+12>>2]=a[J+12>>2];a[iA+16>>2]=a[J+16>>2];a[iA+20>>2]=a[J+20>>2];a[iA+24>>2]=a[J+24>>2];a[iA+28>>2]=a[J+28>>2];if(!c){h=RL(o)|0;c=(h|0)<((r[(a[(a[C>>2]|0)+16>>2]|0)+113>>0]<<1&2)+3&255|0);h=c?h:h+-2|0;d=c?d:1;c=(c^1)&1}if(!((c|0)==0|(d|0)>0))break;iA=153720+(w<<5)|0;VL(p,A,e,o,v,a[a[(a[o+16>>2]|0)+180>>2]>>2]|0);a[iA>>2]=a[p>>2];a[iA+4>>2]=a[p+4>>2];a[iA+8>>2]=a[p+8>>2];a[iA+12>>2]=a[p+12>>2];a[iA+16>>2]=a[p+16>>2];a[iA+20>>2]=a[p+20>>2];a[iA+24>>2]=a[p+24>>2];a[iA+28>>2]=a[p+28>>2];iA=a[a[(a[E+16>>2]|0)+180>>2]>>2]|0;w=a[iA>>2]&3;B=a[((w|0)==3?iA:iA+48|0)+40>>2]|0;w=a[((w|0)==2?iA:iA+-48|0)+40>>2]|0;a[q>>2]=w;g=g+2|0;d=d+-1|0;v=iA}VL(N,A,e,o,v,a[a[(a[o+16>>2]|0)+180>>2]>>2]|0);a[j>>2]=a[N>>2];a[j+4>>2]=a[N+4>>2];a[j+8>>2]=a[N+8>>2];a[j+12>>2]=a[N+12>>2];a[j+16>>2]=a[N+16>>2];a[j+20>>2]=a[N+20>>2];a[j+24>>2]=a[N+24>>2];a[j+28>>2]=a[N+28>>2];mN(i,v,1,j,JL(a[((a[v>>2]&3|0)==2?v:v+-48|0)+40>>2]|0)|0);iA=j+56+((a[L>>2]|0)+-1<<5)|0;g=a[E+16>>2]|0;b=+s[(a[(a[z>>2]|0)+196>>2]|0)+(a[g+232>>2]<<6)+24>>3]+ +s[g+24>>3];a[x>>2]=a[iA>>2];a[x+4>>2]=a[iA+4>>2];a[x+8>>2]=a[iA+8>>2];a[x+12>>2]=a[iA+12>>2];a[x+16>>2]=a[iA+16>>2];a[x+20>>2]=a[iA+20>>2];a[x+24>>2]=a[iA+24>>2];a[x+28>>2]=a[iA+28>>2];pL(P,x,4,b);if(+s[P>>3]<+s[m>>3]?+s[W>>3]<+s[y>>3]:0){iA=a[L>>2]|0;a[L>>2]=iA+1;iA=j+56+(iA<<5)|0;a[iA>>2]=a[P>>2];a[iA+4>>2]=a[P+4>>2];a[iA+8>>2]=a[P+8>>2];a[iA+12>>2]=a[P+12>>2];a[iA+16>>2]=a[P+16>>2];a[iA+20>>2]=a[P+20>>2];a[iA+24>>2]=a[P+24>>2];a[iA+28>>2]=a[P+28>>2]}s[I>>3]=1.5707963267948966;r[Z>>0]=1;XL(i,M,v,T,j,w);if(!Y){c=ip(i,O)|0;w=a[O>>2]|0;if(D&(w|0)>4){iA=c+16|0;a[iA>>2]=a[c>>2];a[iA+4>>2]=a[c+4>>2];a[iA+8>>2]=a[c+8>>2];a[iA+12>>2]=a[c+12>>2];iA=c+32|0;w=c+(w+-1<<4)|0;a[iA>>2]=a[w>>2];a[iA+4>>2]=a[w+4>>2];a[iA+8>>2]=a[w+8>>2];a[iA+12>>2]=a[w+12>>2];z6(c+48|0,w|0,16)|0;a[O>>2]=4;w=4}else F=33}else{c=KJ(i,O)|0;w=a[O>>2]|0;F=33}if((F|0)==33){F=0;if(!w)break A}v=a[_>>2]|0;o=v+w|0;if((o|0)>(a[46736]|0)){a[46736]=o<<1;g=eV(a[46734]|0,o<<5)|0;a[46734]=g;w=a[O>>2]|0}else g=a[46734]|0;B=0;o=v;while(1){if((B|0)>=(w|0))break;iA=g+(o<<4)|0;v=c+(B<<4)|0;a[iA>>2]=a[v>>2];a[iA+4>>2]=a[v+4>>2];a[iA+8>>2]=a[v+8>>2];a[iA+12>>2]=a[v+12>>2];B=B+1|0;o=o+1|0}a[_>>2]=o;w=HL(a[a[(a[E+16>>2]|0)+180>>2]>>2]|0,h,g,_)|0;UL(M,i);o=a[w>>2]&3;c=a[((o|0)==3?w:w+48|0)+40>>2]|0;o=a[((o|0)==2?w:w+-48|0)+40>>2]|0;a[q>>2]=o;M=c+16|0;VL(R,A,e,c,a[a[(a[M>>2]|0)+172>>2]>>2]|0,w);a[T>>2]=a[R>>2];a[T+4>>2]=a[R+4>>2];a[T+8>>2]=a[R+8>>2];a[T+12>>2]=a[R+12>>2];a[T+16>>2]=a[R+16>>2];a[T+20>>2]=a[R+20>>2];a[T+24>>2]=a[R+24>>2];a[T+28>>2]=a[R+28>>2];IN(i,w,1,T,JL(c)|0);iA=T+56+((a[Q>>2]|0)+-1<<5)|0;M=a[M>>2]|0;b=+s[M+24>>3]-+s[(a[(a[z>>2]|0)+196>>2]|0)+(a[M+232>>2]<<6)+16>>3];a[x>>2]=a[iA>>2];a[x+4>>2]=a[iA+4>>2];a[x+8>>2]=a[iA+8>>2];a[x+12>>2]=a[iA+12>>2];a[x+16>>2]=a[iA+16>>2];a[x+20>>2]=a[iA+20>>2];a[x+24>>2]=a[iA+24>>2];a[x+28>>2]=a[iA+28>>2];pL(P,x,1,b);if(+s[P>>3]<+s[m>>3]?+s[W>>3]<+s[y>>3]:0){iA=a[Q>>2]|0;a[Q>>2]=iA+1;iA=T+56+(iA<<5)|0;a[iA>>2]=a[P>>2];a[iA+4>>2]=a[P+4>>2];a[iA+8>>2]=a[P+8>>2];a[iA+12>>2]=a[P+12>>2];a[iA+16>>2]=a[P+16>>2];a[iA+20>>2]=a[P+20>>2];a[iA+24>>2]=a[P+24>>2];a[iA+28>>2]=a[P+28>>2]}s[t>>3]=-1.5707963267948966;r[G>>0]=1;M=w;w=o}c=g|1;d=153720+(g<<5)|0;NL(X,e,A,a[(a[B+16>>2]|0)+232>>2]|0);a[d>>2]=a[X>>2];a[d+4>>2]=a[X+4>>2];a[d+8>>2]=a[X+8>>2];a[d+12>>2]=a[X+12>>2];a[d+16>>2]=a[X+16>>2];a[d+20>>2]=a[X+20>>2];a[d+24>>2]=a[X+24>>2];a[d+28>>2]=a[X+28>>2];VL(H,A,e,o,v,0);a[j>>2]=a[H>>2];a[j+4>>2]=a[H+4>>2];a[j+8>>2]=a[H+8>>2];a[j+12>>2]=a[H+12>>2];a[j+16>>2]=a[H+16>>2];a[j+20>>2]=a[H+20>>2];a[j+24>>2]=a[H+24>>2];a[j+28>>2]=a[H+28>>2];a[P>>2]=a[H>>2];a[P+4>>2]=a[H+4>>2];a[P+8>>2]=a[H+8>>2];a[P+12>>2]=a[H+12>>2];a[P+16>>2]=a[H+16>>2];a[P+20>>2]=a[H+20>>2];a[P+24>>2]=a[H+24>>2];a[P+28>>2]=a[H+28>>2];d=(u|0)!=0;B=v+-48|0;mN(i,d?K:v,1,j,JL(a[((a[v>>2]&3|0)==2?v:B)+40>>2]|0)|0);iA=(a[L>>2]|0)+-1|0;s[y>>3]=+s[j+56+(iA<<5)+24>>3];s[W>>3]=+s[j+56+(iA<<5)+8>>3];iA=a[E+16>>2]|0;b=+s[(a[(a[z>>2]|0)+196>>2]|0)+(a[iA+232>>2]<<6)+24>>3]+ +s[iA+24>>3];a[x>>2]=a[P>>2];a[x+4>>2]=a[P+4>>2];a[x+8>>2]=a[P+8>>2];a[x+12>>2]=a[P+12>>2];a[x+16>>2]=a[P+16>>2];a[x+20>>2]=a[P+20>>2];a[x+24>>2]=a[P+24>>2];a[x+28>>2]=a[P+28>>2];pL(S,x,4,b);a[P>>2]=a[S>>2];a[P+4>>2]=a[S+4>>2];a[P+8>>2]=a[S+8>>2];a[P+12>>2]=a[S+12>>2];a[P+16>>2]=a[S+16>>2];a[P+20>>2]=a[S+20>>2];a[P+24>>2]=a[S+24>>2];a[P+28>>2]=a[S+28>>2];if(+s[P>>3]<+s[m>>3]?+s[W>>3]<+s[y>>3]:0){iA=a[L>>2]|0;a[L>>2]=iA+1;iA=j+56+(iA<<5)|0;a[iA>>2]=a[P>>2];a[iA+4>>2]=a[P+4>>2];a[iA+8>>2]=a[P+8>>2];a[iA+12>>2]=a[P+12>>2];a[iA+16>>2]=a[P+16>>2];a[iA+20>>2]=a[P+20>>2];a[iA+24>>2]=a[P+24>>2];a[iA+28>>2]=a[P+28>>2]}XL(i,M,v,T,j,c);if(Y)h=KJ(i,O)|0;else h=ip(i,O)|0;c=a[O>>2]|0;if(!(D&(c|0)>4)){if(!c)break}else{iA=h+16|0;a[iA>>2]=a[h>>2];a[iA+4>>2]=a[h+4>>2];a[iA+8>>2]=a[h+8>>2];a[iA+12>>2]=a[h+12>>2];iA=h+32|0;c=h+(c+-1<<4)|0;a[iA>>2]=a[c>>2];a[iA+4>>2]=a[c+4>>2];a[iA+8>>2]=a[c+8>>2];a[iA+12>>2]=a[c+12>>2];z6(h+48|0,c|0,16)|0;a[O>>2]=4;c=4}w=a[_>>2]|0;u=w+c|0;if((u|0)>(a[46736]|0)){a[46736]=u<<1;o=eV(a[46734]|0,u<<5)|0;a[46734]=o;c=a[O>>2]|0}else o=a[46734]|0;u=0;while(1){if((u|0)>=(c|0))break;iA=o+(w<<4)|0;O=h+(u<<4)|0;a[iA>>2]=a[O>>2];a[iA+4>>2]=a[O+4>>2];a[iA+8>>2]=a[O+8>>2];a[iA+12>>2]=a[O+12>>2];u=u+1|0;w=w+1|0}a[_>>2]=w;UL(M,i);if(d)c=(a[K>>2]&3|0)==2?K:K+-48|0;else c=(a[v>>2]&3|0)==2?v:B;a[q>>2]=a[c+40>>2];E=w;F=63}}while(0);A:do{if((F|0)==63){if((l|0)==1){vN(V,a[q>>2]|0,a[46734]|0,E,17296);break}g=e+12|0;v=E+-1|0;b=+((U(a[g>>2]|0,l+-1|0)|0)/2|0|0);u=a[46734]|0;c=1;while(1){if((c|0)>=(v|0))break;iA=u+(c<<4)|0;s[iA>>3]=+s[iA>>3]-b;c=c+1|0}c=a[46736]|0;if((c|0)>(a[46737]|0)){a[46737]=c;w=eV(a[46735]|0,c<<4)|0;a[46735]=w;u=a[46734]|0}else w=a[46735]|0;c=0;while(1){if((c|0)>=(E|0))break;iA=w+(c<<4)|0;e=u+(c<<4)|0;a[iA>>2]=a[e>>2];a[iA+4>>2]=a[e+4>>2];a[iA+8>>2]=a[e+8>>2];a[iA+12>>2]=a[e+12>>2];c=c+1|0}vN(V,a[q>>2]|0,w,E,17296);d=$+48|0;B=$+-48|0;h=1;while(1){if((h|0)>=(l|0))break A;w=a[f+(h+n<<2)>>2]|0;o=w+16|0;c=a[o>>2]|0;if(a[c+164>>2]&32){u=a[AA>>2]|0;W6(u|0,c|0,176)|0;C=$;I=w;Z=C+48|0;do{a[C>>2]=a[I>>2];C=C+4|0;I=I+4|0}while((C|0)<(Z|0));a[AA>>2]=u;C=a[$>>2]&3;a[((C|0)==3?$:d)+40>>2]=a[((a[w>>2]&3|0)==2?w:w+-48|0)+40>>2];a[((C|0)==2?$:B)+40>>2]=a[((a[w>>2]&3|0)==3?w:w+48|0)+40>>2];C=u+16|0;I=(a[o>>2]|0)+56|0;Z=C+40|0;do{a[C>>2]=a[I>>2];C=C+4|0;I=I+4|0}while((C|0)<(Z|0));c=a[AA>>2]|0;C=c+56|0;I=(a[o>>2]|0)+16|0;Z=C+40|0;do{a[C>>2]=a[I>>2];C=C+4|0;I=I+4|0}while((C|0)<(Z|0));r[c+112>>0]=1;a[c+116>>2]=w;w=$}o=a[46734]|0;c=1;while(1){if((c|0)>=(v|0))break;iA=o+(c<<4)|0;s[iA>>3]=+s[iA>>3]+ +(a[g>>2]|0);c=c+1|0}u=a[46735]|0;c=0;while(1){if((c|0)>=(E|0))break;iA=u+(c<<4)|0;q=o+(c<<4)|0;a[iA>>2]=a[q>>2];a[iA+4>>2]=a[q+4>>2];a[iA+8>>2]=a[q+8>>2];a[iA+12>>2]=a[q+12>>2];c=c+1|0}vN(w,a[((a[w>>2]&3|0)==2?w:w+-48|0)+40>>2]|0,u,E,17296);h=h+1|0}}}while(0);k=eA;return}function YL(A){A=A|0;var e=0,i=0,r=0;e=cd(A)|0;while(1){if(!e)break;i=Oo(A,e)|0;while(1){if(!i)break;if((m5[a[4324]&63](i)|0)<<24>>24?(r=a[(a[i+16>>2]|0)+8>>2]|0,r|0):0)DL(r);i=_o(A,i)|0}e=sd(A,e)|0}return}function DL(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;f=a[A+4>>2]|0;n=$F(f*48|0)|0;e=n;i=0;r=(a[A>>2]|0)+((f+-1|0)*48|0)|0;while(1){if((i|0)>=(f|0)){e=0;break}ML(r,e);e=e+48|0;i=i+1|0;r=r+-48|0}while(1){i=a[A>>2]|0;if((e|0)>=(f|0))break;L2(a[i+(e*48|0)>>2]|0);e=e+1|0}L2(i);a[A>>2]=n;return}function ML(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;n=a[A+4>>2]|0;l=$F(n<<4)|0;i=l;r=0;f=(a[A>>2]|0)+(n+-1<<4)|0;while(1){if((r|0)>=(n|0))break;a[i>>2]=a[f>>2];a[i+4>>2]=a[f+4>>2];a[i+8>>2]=a[f+8>>2];a[i+12>>2]=a[f+12>>2];i=i+16|0;r=r+1|0;f=f+-16|0}a[e>>2]=l;a[e+4>>2]=n;a[e+8>>2]=a[A+12>>2];a[e+12>>2]=a[A+8>>2];l=e+16|0;n=A+32|0;a[l>>2]=a[n>>2];a[l+4>>2]=a[n+4>>2];a[l+8>>2]=a[n+8>>2];a[l+12>>2]=a[n+12>>2];l=e+32|0;n=A+16|0;a[l>>2]=a[n>>2];a[l+4>>2]=a[n+4>>2];a[l+8>>2]=a[n+8>>2];a[l+12>>2]=a[n+12>>2];return}function FL(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0.0,t=0.0,c=0.0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0;I=k;k=k+96|0;h=I+80|0;B=I+64|0;d=I+48|0;v=I+32|0;E=I+16|0;C=I;b=e;while(1){g=b+16|0;n=a[g>>2]|0;if(!(r[n+112>>0]|0))break;b=a[n+116>>2]|0}n=a[b>>2]&3;w=a[((n|0)==2?b:b+-48|0)+40>>2]|0;n=a[((n|0)==3?b:b+48|0)+40>>2]|0;b=w+16|0;u=n+16|0;Z=(a[(a[b>>2]|0)+232>>2]|0)-(a[(a[u>>2]|0)+232>>2]|0)|0;switch(((Z|0)>-1?Z:0-Z|0)|0){case 1:{n=0;break}case 2:{if(!(r[(a[(a[A+60>>2]|0)+16>>2]|0)+113>>0]&1))o=6;else n=0;break}default:o=6}do{if((o|0)==6){if((a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)==(n|0)){a[f>>2]=w;Z=(a[u>>2]|0)+16|0;o=(a[g>>2]|0)+16|0;a[B>>2]=a[Z>>2];a[B+4>>2]=a[Z+4>>2];a[B+8>>2]=a[Z+8>>2];a[B+12>>2]=a[Z+12>>2];a[h>>2]=a[o>>2];a[h+4>>2]=a[o+4>>2];a[h+8>>2]=a[o+8>>2];a[h+12>>2]=a[o+12>>2];$L(v,B,h);o=(a[b>>2]|0)+16|0;Z=(a[g>>2]|0)+56|0;a[B>>2]=a[o>>2];a[B+4>>2]=a[o+4>>2];a[B+8>>2]=a[o+8>>2];a[B+12>>2]=a[o+12>>2];a[h>>2]=a[Z>>2];a[h+4>>2]=a[Z+4>>2];a[h+8>>2]=a[Z+8>>2];a[h+12>>2]=a[Z+12>>2];$L(E,B,h)}else{a[f>>2]=n;Z=(a[b>>2]|0)+16|0;o=(a[g>>2]|0)+56|0;a[B>>2]=a[Z>>2];a[B+4>>2]=a[Z+4>>2];a[B+8>>2]=a[Z+8>>2];a[B+12>>2]=a[Z+12>>2];a[h>>2]=a[o>>2];a[h+4>>2]=a[o+4>>2];a[h+8>>2]=a[o+8>>2];a[h+12>>2]=a[o+12>>2];$L(v,B,h);o=(a[u>>2]|0)+16|0;Z=(a[g>>2]|0)+16|0;a[B>>2]=a[o>>2];a[B+4>>2]=a[o+4>>2];a[B+8>>2]=a[o+8>>2];a[B+12>>2]=a[o+12>>2];a[h>>2]=a[Z>>2];a[h+4>>2]=a[Z+4>>2];a[h+8>>2]=a[Z+8>>2];a[h+12>>2]=a[Z+12>>2];$L(E,B,h)}n=a[(a[g>>2]|0)+96>>2]|0;if(!n){n=i+16|0;a[i>>2]=a[v>>2];a[i+4>>2]=a[v+4>>2];a[i+8>>2]=a[v+8>>2];a[i+12>>2]=a[v+12>>2];a[n>>2]=a[v>>2];a[n+4>>2]=a[v+4>>2];a[n+8>>2]=a[v+8>>2];a[n+12>>2]=a[v+12>>2];n=i+48|0;Z=i+32|0;a[Z>>2]=a[E>>2];a[Z+4>>2]=a[E+4>>2];a[Z+8>>2]=a[E+8>>2];a[Z+12>>2]=a[E+12>>2];a[n>>2]=a[E>>2];a[n+4>>2]=a[E+4>>2];a[n+8>>2]=a[E+8>>2];a[n+12>>2]=a[E+12>>2];n=4;break}t=+s[n+24>>3];l=+s[n+32>>3];o=(a[(a[(Id(w)|0)+16>>2]|0)+116>>2]&1|0)==0;c=o?l:t;Z=(a[(a[g>>2]|0)+96>>2]|0)+56|0;a[C>>2]=a[Z>>2];a[C+4>>2]=a[Z+4>>2];a[C+8>>2]=a[Z+8>>2];a[C+12>>2]=a[Z+12>>2];a[d>>2]=a[E>>2];a[d+4>>2]=a[E+4>>2];a[d+8>>2]=a[E+8>>2];a[d+12>>2]=a[E+12>>2];a[B>>2]=a[v>>2];a[B+4>>2]=a[v+4>>2];a[B+8>>2]=a[v+8>>2];a[B+12>>2]=a[v+12>>2];a[h>>2]=a[Z>>2];a[h+4>>2]=a[Z+4>>2];a[h+8>>2]=a[Z+8>>2];a[h+12>>2]=a[Z+12>>2];Z=(Ay(d,B,h)|0)==0;l=(o?t:l)*.5;t=+s[C>>3];if(Z){s[C>>3]=t-l;Z=C+8|0;s[Z>>3]=+s[Z>>3]+c*.5}else{s[C>>3]=t+l;Z=C+8|0;s[Z>>3]=+s[Z>>3]-c*.5}n=i+16|0;a[i>>2]=a[v>>2];a[i+4>>2]=a[v+4>>2];a[i+8>>2]=a[v+8>>2];a[i+12>>2]=a[v+12>>2];a[n>>2]=a[v>>2];a[n+4>>2]=a[v+4>>2];a[n+8>>2]=a[v+8>>2];a[n+12>>2]=a[v+12>>2];n=i+32|0;Z=i+48|0;v=i+64|0;a[v>>2]=a[C>>2];a[v+4>>2]=a[C+4>>2];a[v+8>>2]=a[C+8>>2];a[v+12>>2]=a[C+12>>2];a[Z>>2]=a[C>>2];a[Z+4>>2]=a[C+4>>2];a[Z+8>>2]=a[C+8>>2];a[Z+12>>2]=a[C+12>>2];a[n>>2]=a[C>>2];a[n+4>>2]=a[C+4>>2];a[n+8>>2]=a[C+8>>2];a[n+12>>2]=a[C+12>>2];n=i+80|0;Z=i+96|0;a[Z>>2]=a[E>>2];a[Z+4>>2]=a[E+4>>2];a[Z+8>>2]=a[E+8>>2];a[Z+12>>2]=a[E+12>>2];a[n>>2]=a[E>>2];a[n+4>>2]=a[E+4>>2];a[n+8>>2]=a[E+8>>2];a[n+12>>2]=a[E+12>>2];n=7}}while(0);k=I;return n|0}function VL(A,e,i,f,n,l){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;var t=0.0,c=0,b=0,u=0.0,w=0,k=0.0,o=0.0,h=0;h=a[f+16>>2]|0;o=+s[h+16>>3];t=o-+s[h+88>>3];u=t+-4.0;b=OL(e,f,n,l,-1)|0;if(!b){w=~~(t+(u>=0.0?-3.5:-4.5));c=a[i>>2]|0;c=(c|0)>(w|0)?w:c}else{c=KL(e,f,b)|0;do{if(!c){w=a[b+16>>2]|0;t=+s[w+240>>3]+ +s[w+16>>3];if(!(r[w+156>>0]|0)){t=+(a[(a[e+16>>2]|0)+248>>2]|0)*.5+t;break}else{t=t+ +(a[i+8>>2]|0);break}}else t=+s[(a[c+16>>2]|0)+32>>3]+ +(a[i+8>>2]|0)}while(0);k=t=0.0?.5:-.5))}k=+(c|0);w=(r[h+156>>0]|0)==1;if(w?(a[h+104>>2]|0)!=0:0)u=o+10.0;else u=o+4.0+ +s[h+96>>3];b=OL(e,f,n,l,1)|0;if(!b){f=~~(u+(u>=0.0?.5:-.5));c=a[i+4>>2]|0;c=(c|0)<(f|0)?f:c}else{c=KL(e,f,b)|0;do{if(!c){f=a[b+16>>2]|0;t=+s[f+16>>3]-+s[f+88>>3];if(!(r[f+156>>0]|0)){t=t-+(a[(a[e+16>>2]|0)+248>>2]|0)*.5;break}else{t=t-+(a[i+8>>2]|0);break}}else t=+s[(a[c+16>>2]|0)+16>>3]-+(a[i+8>>2]|0)}while(0);u=t>u?t:u;c=~~(u+(u>=0.0?.5:-.5))}t=+(c|0);if(w?(a[h+104>>2]|0)!=0:0){t=t-+s[h+96>>3];if(t >3];e=a[(a[e+16>>2]|0)+196>>2]|0;h=a[h+232>>2]|0;u=o-+s[e+(h<<6)+16>>3];o=+s[e+(h<<6)+24>>3]+o;s[A>>3]=k;s[A+8>>3]=u;s[A+16>>3]=t;s[A+24>>3]=o;return}function JL(A){A=A|0;A=a[A+16>>2]|0;if((r[A+156>>0]|0)==1)if((a[A+176>>2]|0)>1)A=1;else A=(a[A+184>>2]|0)>1&1;else A=0;return A|0}function pL(A,e,i,r){A=A|0;e=e|0;i=i|0;r=+r;var f=0,n=0;n=k;k=k+32|0;f=n;switch(i|0){case 1:{SL(f,+s[e>>3],r,+s[e+16>>3],+s[e+8>>3]);break}case 4:{SL(f,+s[e>>3],+s[e+24>>3],+s[e+16>>3],r);break}default:{}}a[A>>2]=a[f>>2];a[A+4>>2]=a[f+4>>2];a[A+8>>2]=a[f+8>>2];a[A+12>>2]=a[f+12>>2];a[A+16>>2]=a[f+16>>2];a[A+20>>2]=a[f+20>>2];a[A+24>>2]=a[f+24>>2];a[A+28>>2]=a[f+28>>2];k=n;return}function NL(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,n=0.0,l=0.0,t=0.0,c=0,b=0,u=0,w=0,k=0;b=a[e+16>>2]|0;c=b+(r<<5)|0;t=+s[c>>3];u=b+(r<<5)+8|0;n=+s[u>>3];w=b+(r<<5)+16|0;f=+s[w>>3];b=b+(r<<5)+24|0;l=+s[b>>3];if(t==f){i=a[(a[i+16>>2]|0)+196>>2]|0;k=r+1|0;t=+(a[e>>2]|0);n=+s[i+(k<<6)+24>>3]+ +s[(a[(a[a[i+(k<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];f=+(a[e+4>>2]|0);l=+s[(a[(a[a[i+(r<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+s[i+(r<<6)+16>>3];s[c>>3]=t;s[u>>3]=n;s[w>>3]=f;s[b>>3]=l}s[A>>3]=t;s[A+8>>3]=n;s[A+16>>3]=f;s[A+24>>3]=l;return}function RL(A){A=A|0;var e=0,i=0;A=a[A+16>>2]|0;i=A+16|0;e=0;while(1){A=a[a[A+180>>2]>>2]|0;A=a[(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0;if((r[A+156>>0]|0)!=1)break;if((a[A+184>>2]|0)!=1)break;if((a[A+176>>2]|0)!=1)break;if(+s[A+16>>3]!=+s[i>>3])break;e=e+1|0}return e|0}function XL(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0;s=k;k=k+32|0;c=s;l=TL(e,-1)|0;e=TL(e,1)|0;if(!((l|0)!=0?!(JN(l)|0):0))t=3;do{if((t|0)==3){if(e|0?(JN(e)|0)==0:0)break;l=jL(i,-1)|0;e=jL(i,1)|0;if(l|0?(JN(l)|0)==0:0)break;if(e|0?(JN(e)|0)==0:0)break;l=r+52|0;e=0;while(1){if((e|0)>=(a[l>>2]|0))break;i=r+56+(e<<5)|0;a[c>>2]=a[i>>2];a[c+4>>2]=a[i+4>>2];a[c+8>>2]=a[i+8>>2];a[c+12>>2]=a[i+12>>2];a[c+16>>2]=a[i+16>>2];a[c+20>>2]=a[i+20>>2];a[c+24>>2]=a[i+24>>2];a[c+28>>2]=a[i+28>>2];CN(A,c);e=e+1|0}l=a[A+80>>2]|0;t=n+-3|0;e=0;while(1){if((e|0)>=(n|0))break;r=153720+(e<<5)|0;a[c>>2]=a[r>>2];a[c+4>>2]=a[r+4>>2];a[c+8>>2]=a[r+8>>2];a[c+12>>2]=a[r+12>>2];a[c+16>>2]=a[r+16>>2];a[c+20>>2]=a[r+20>>2];a[c+24>>2]=a[r+24>>2];a[c+28>>2]=a[r+28>>2];CN(A,c);e=e+1|0}i=l+1|0;t=t+i|0;l=a[f+52>>2]|0;while(1){e=l+-1|0;if((l|0)<=0)break;l=f+56+(e<<5)|0;a[c>>2]=a[l>>2];a[c+4>>2]=a[l+4>>2];a[c+8>>2]=a[l+8>>2];a[c+12>>2]=a[l+12>>2];a[c+16>>2]=a[l+16>>2];a[c+20>>2]=a[l+20>>2];a[c+24>>2]=a[l+24>>2];a[c+28>>2]=a[l+28>>2];CN(A,c);l=e}PL(A,i,t)}}while(0);k=s;return}function HL(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0;f=a[r>>2]|0;while(1){if(!e)break;A=a[a[(a[(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0;e=e+-1|0}a[r>>2]=f+1;n=i+(f<<4)|0;e=i+(f+-1<<4)|0;a[n>>2]=a[e>>2];a[n+4>>2]=a[e+4>>2];a[n+8>>2]=a[e+8>>2];a[n+12>>2]=a[e+12>>2];f=a[r>>2]|0;a[r>>2]=f+1;f=i+(f<<4)|0;a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];f=i+(a[r>>2]<<4)|0;r=(a[(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+16|0;a[f>>2]=a[r>>2];a[f+4>>2]=a[r+4>>2];a[f+8>>2]=a[r+8>>2];a[f+12>>2]=a[r+12>>2];return A|0}function UL(A,e){A=A|0;e=e|0;var i=0,f=0.0,n=0.0,l=0,t=0,c=0,b=0,u=0;u=e+84|0;b=e+80|0;i=0;e=A;A:while(1){t=a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0;c=t+16|0;if((r[(a[c>>2]|0)+156>>0]|0)!=1)break;if((m5[a[17300>>2]&63](t)|0)<<24>>24)break;e=a[b>>2]|0;while(1){if((i|0)>=(e|0))break A;if(!(+s[(a[u>>2]|0)+(i<<5)+8>>3]>+s[(a[c>>2]|0)+24>>3]))break;i=i+1|0}e=a[u>>2]|0;A=a[c>>2]|0;do{if(!(+s[e+(i<<5)+24>>3]<+s[A+24>>3])){n=+s[e+(i<<5)>>3];l=~~n;f=+s[e+(i<<5)+16>>3];if(!(a[A+104>>2]|0)){xL(t,l,~~((f+n)*.5),~~f);break}else{xL(t,l,~~f,~~(+s[A+96>>3]+f));break}}}while(0);e=a[a[(a[c>>2]|0)+180>>2]>>2]|0}return}function xL(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;A=a[A+16>>2]|0;s[A+16>>3]=+(i|0);s[A+88>>3]=+(i-e|0);s[A+96>>3]=+(r-i|0);return}function TL(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;l=a[A>>2]&3;t=a[(a[(a[((l|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+180>>2]|0;l=((l|0)==2?A:A+-48|0)+40|0;n=0;A=0;while(1){r=a[t+(n<<2)>>2]|0;if(!r)break;f=a[(a[(a[((a[r>>2]&3|0)==2?r:r+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;do{if((U(f-(a[(a[(a[l>>2]|0)+16>>2]|0)+236>>2]|0)|0,e)|0)>=1){i=a[r+16>>2]|0;if(!(a[i+8>>2]|0)){i=a[i+116>>2]|0;if(!i)break;if(!(a[(a[i+16>>2]|0)+8>>2]|0))break}if(A|0?(U((a[(a[(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-f|0,e)|0)<=0:0)break;A=r}}while(0);n=n+1|0}return A|0}function jL(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;l=a[A>>2]&3;t=a[(a[(a[((l|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+172>>2]|0;l=((l|0)==3?A:A+48|0)+40|0;n=0;A=0;while(1){r=a[t+(n<<2)>>2]|0;if(!r)break;f=a[(a[(a[((a[r>>2]&3|0)==3?r:r+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;do{if((U(f-(a[(a[(a[l>>2]|0)+16>>2]|0)+236>>2]|0)|0,e)|0)>=1){i=a[r+16>>2]|0;if(!(a[i+8>>2]|0)){i=a[i+116>>2]|0;if(!i)break;if(!(a[(a[i+16>>2]|0)+8>>2]|0))break}if(A|0?(U((a[(a[(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-f|0,e)|0)<=0:0)break;A=r}}while(0);n=n+1|0}return A|0}function PL(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0,n=0,l=0,t=0,c=0,b=0,u=0.0;b=A+84|0;l=e+-1|0;while(1){if((l|0)>(i|0))break;f=a[b>>2]|0;t=f+(l<<5)|0;r=+s[t>>3];if(!(l-e&1)){f=f+(l<<5)+16|0;u=+s[f>>3];n=~~((u+r)*.5);if(r>=u){s[t>>3]=+(n+-8|0);s[f>>3]=+(n+8|0)}}else{f=f+(l<<5)+16|0;u=+s[f>>3];n=~~((u+r)*.5);if(r+16.0>u){s[t>>3]=+(n+-8|0);s[f>>3]=+(n+8|0)}}l=l+1|0}c=(a[A+80>>2]|0)+-1|0;n=0;while(1){if((n|0)>=(c|0))break;l=a[b>>2]|0;f=l+(n<<5)|0;t=n+1|0;A=l+(t<<5)|0;if(!((n|0)<(e|0)|(n|0)>(i|0))?(n-e&1|0)==0:0){r=+s[f>>3]+16.0;f=l+(t<<5)+16|0;if(r>+s[f>>3])s[f>>3]=r;r=+s[l+(n<<5)+16>>3]+-16.0;if(!(r<+s[A>>3])){n=t;continue}s[A>>3]=r;n=t;continue}if(!((n|0)<(i|0)&(t|0)>=(e|0))){n=t;continue}if(t-e&1|0){n=t;continue}r=+s[l+(t<<5)+16>>3];if(+s[f>>3]+16.0>r)s[f>>3]=r+-16.0;f=l+(n<<5)+16|0;r=+s[A>>3];if(!(+s[f>>3]+-16.0 >3]=r+16.0;n=t}return}function SL(A,e,i,r,f){A=A|0;e=+e;i=+i;r=+r;f=+f;s[A>>3]=e;s[A+8>>3]=i;s[A+16>>3]=r;s[A+24>>3]=f;return}function OL(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0;s=a[(a[A+16>>2]|0)+196>>2]|0;l=a[e+16>>2]|0;c=a[l+232>>2]|0;t=s+(c<<6)|0;c=s+(c<<6)+4|0;l=a[l+236>>2]|0;A:do{l=l+n|0;if((l|0)<=-1){A=0;break}if((l|0)>=(a[t>>2]|0)){A=0;break}A=a[(a[c>>2]|0)+(l<<2)>>2]|0;s=a[A+16>>2]|0;switch(r[s+156>>0]|0){case 0:break A;case 1:{if(a[s+104>>2]|0)break A;break}default:{}}}while((qL(A,e,i,f)|0)<<24>>24!=0);return A|0}function KL(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0;e=a[e+16>>2]|0;if(!(r[e+156>>0]|0)){t=a[e+212>>2]|0;l=t}else{t=a[(a[(a[a[e+180>>2]>>2]|0)+16>>2]|0)+116>>2]|0;n=a[t>>2]&3;l=a[(a[(a[((n|0)==2?t:t+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;t=a[(a[(a[((n|0)==3?t:t+48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0}e=a[i+16>>2]|0;if(!(r[e+156>>0]|0)){i=a[e+212>>2]|0;i=(i|0)==(A|0)?0:i;return((i|0)==(l|0)|((i|0)==0|(i|0)==(t|0))?0:i)|0}f=a[(a[(a[a[e+180>>2]>>2]|0)+16>>2]|0)+116>>2]|0;n=a[f>>2]&3;e=a[(a[(a[((n|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;e=(e|0)==(A|0)?0:e;if(!(!((e|0)==(l|0)|((e|0)==0|(e|0)==(t|0)))?(_L(e,i)|0)!=0:0)){e=a[(a[(a[((n|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;e=(e|0)==(A|0)?0:e;if((e|0)==(l|0)|((e|0)==0|(e|0)==(t|0)))e=0;else{i=(_L(e,i)|0)==0;return(i?0:e)|0}}return e|0}function _L(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0.0;i=a[A+16>>2]|0;A=a[e+16>>2]|0;f=+s[A+16>>3];if((+s[i+16>>3]<=f?f<=+s[i+32>>3]:0)?(r=+s[A+24>>3],+s[i+24>>3]<=r):0)A=r<=+s[i+40>>3]&1;else A=0;return A|0}function qL(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0;t=a[A+16>>2]|0;c=(a[t+236>>2]|0)>(a[(a[e+16>>2]|0)+236>>2]|0);A:do{if((a[t+184>>2]|0)==1){e:do{if(f|0){l=0;A=a[a[t+180>>2]>>2]|0;while(1){if((l|0)>=2)break e;A=a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0;e=a[((a[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;if((A|0)==(e|0))break e;n=a[A+16>>2]|0;A=a[e+16>>2]|0;if(c^(a[n+236>>2]|0)>(a[A+236>>2]|0)){A=1;break A}if((a[n+184>>2]|0)!=1)break e;if(!(r[n+156>>0]|0))break e;if((a[A+184>>2]|0)!=1)break e;if(!(r[A+156>>0]|0))break e;l=l+1|0;f=a[a[A+180>>2]>>2]|0;A=a[a[n+180>>2]>>2]|0}}}while(0);if(i|0?(a[t+176>>2]|0)==1:0){n=0;e=i;A=a[a[t+172>>2]>>2]|0;while(1){if((n|0)>=2){A=0;break A}A=a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0;e=a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0;if((A|0)==(e|0)){A=0;break A}f=a[A+16>>2]|0;A=a[e+16>>2]|0;if(c^(a[f+236>>2]|0)>(a[A+236>>2]|0)){A=1;break A}if((a[f+176>>2]|0)!=1){A=0;break A}if(!(r[f+156>>0]|0)){A=0;break A}if((a[A+176>>2]|0)!=1){A=0;break A}if(!(r[A+156>>0]|0)){A=0;break A}n=n+1|0;e=a[a[A+172>>2]>>2]|0;A=a[a[f+172>>2]>>2]|0}}else A=0}else A=0}while(0);return A|0}function $L(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;r=+s[i+8>>3]+ +s[e+8>>3];s[A>>3]=+s[i>>3]+ +s[e>>3];s[A+8>>3]=r;return}function Ay(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0;r=+s[e+8>>3];f=+s[e>>3];return(~~((+s[i>>3]-f)*(+s[A+8>>3]-r)-(+s[A>>3]-f)*(+s[i+8>>3]-r))|0)>0|0}function ey(A,e,i,f,n,l){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;var t=0,c=0,b=0.0,u=0,w=0,o=0,h=0,d=0,B=0.0,g=0,v=0,E=0.0,C=0.0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,U=0,x=0,T=0;U=k;k=k+256|0;y=U+232|0;L=U+216|0;X=U+88|0;R=U+80|0;V=U+64|0;J=U+200|0;p=U+184|0;N=U;W=U+168|0;z=U+152|0;Y=U+136|0;D=U+120|0;M=U+104|0;Q=a[n>>2]&3;F=a[((Q|0)==3?n:n+48|0)+40>>2]|0;Q=a[((Q|0)==2?n:n+-48|0)+40>>2]|0;do{if((bp(F)|0)!=2?(bp(Q)|0)!=2:0){n=0;t=0;c=0;while(1){if((c|0)>=(f|0))break;m=a[(a[e+(c+i<<2)>>2]|0)+16>>2]|0;n=n+((a[m+96>>2]|0)!=0&1)|0;if(!((r[m+44>>0]|0)==0?(r[m+84>>0]|0)==0:0))t=1;c=c+1|0}if(!t)if(!n){ry(F,Q,e,i,f,l);break}else{ty(F,Q,e,i,f,l,n);break}Z=qF(156)|0;G=cy(A,Z)|0;g=NB(G,85478,1)|0;Td(g,137483,280,1)|0;xo(g,87171,87185)|0;b=+s[(a[Q+16>>2]|0)+16>>3];B=+s[(a[F+16>>2]|0)+16>>3];m=A+16|0;h=(a[(a[m>>2]|0)+116>>2]&1|0)==0;d=h?Q:F;h=h?F:Q;g=sy(g,h)|0;v=sy(G,d)|0;n=0;o=0;while(1){if((o|0)>=(f|0))break;t=e+(o+i<<2)|0;while(1){w=a[t>>2]|0;u=w+16|0;t=a[u>>2]|0;if(!(r[t+112>>0]|0))break;else t=t+116|0}if((a[((a[w>>2]&3|0)==3?w:w+48|0)+40>>2]|0)==(h|0))c=by(G,g,v,w)|0;else c=by(G,v,g,w)|0;t=a[u>>2]|0;a[t+120>>2]=c;if(!n)if((r[t+44>>0]|0)==0?(r[t+84>>0]|0)==0:0){a[(a[c+16>>2]|0)+120>>2]=w;n=c}else n=0;o=o+1|0}if(!n)I=th(G,g,v,0,1)|0;else I=n;Vo(I,a[47174]|0,85482)|0;n=G+16|0;u=a[n>>2]|0;a[u+144>>2]=a[(a[m>>2]|0)+144>>2];a[u+188>>2]=G;zX(G,l);AL(G);Jz(G,0);Py(G,0);KW(G,0);h=h+16|0;l=a[h>>2]|0;u=a[d+16>>2]|0;d=g+16|0;w=a[d>>2]|0;o=w+16|0;E=+(~~b|0);C=+(~~((+s[(a[v+16>>2]|0)+16>>3]+ +s[o>>3])*.5)|0);b=+(~~B|0);B=+(~~((+s[l+16>>3]-+s[l+96>>3]+ +s[u+16>>3]+ +s[u+88>>3])*.5)|0);u=w+24|0;n=(a[n>>2]|0)+192|0;while(1){t=a[n>>2]|0;if(!t)break;do{if((t|0)!=(g|0)){n=a[t+16>>2]|0;c=n+24|0;if((t|0)==(v|0)){s[c>>3]=b;s[n+16>>3]=C;break}else{s[c>>3]=B;break}}else{s[u>>3]=E;s[o>>3]=C;n=w}}while(0);n=n+164|0}zY(G);IL(G,0);VJ(G);c=a[h>>2]|0;n=a[d>>2]|0;if(!(a[(a[m>>2]|0)+116>>2]&1)){t=n+16|0;b=+s[c+24>>3]-+s[n+24>>3]}else{t=n+24|0;b=+s[n+16>>3]+ +s[c+24>>3]}s[V>>3]=+s[c+16>>3]-+s[t>>3];s[V+8>>3]=b;l=N+16|0;g=N+32|0;v=N+48|0;d=0;while(1){if((d|0)>=(f|0))break;n=e+(d+i<<2)|0;while(1){t=a[n>>2]|0;h=t+16|0;n=a[h>>2]|0;if(!(r[n+112>>0]|0))break;else n=n+116|0}w=a[n+120>>2]|0;o=w+16|0;n=a[o>>2]|0;if(!((w|0)==(I|0)&(a[n+120>>2]|0)==0)){u=a[a[n+8>>2]>>2]|0;w=u+4|0;t=gN(t,a[w>>2]|0)|0;a[t+8>>2]=a[u+8>>2];n=t+16|0;c=u+16|0;x=a[(a[m>>2]|0)+116>>2]&1;a[L>>2]=a[c>>2];a[L+4>>2]=a[c+4>>2];a[L+8>>2]=a[c+8>>2];a[L+12>>2]=a[c+12>>2];a[y>>2]=a[V>>2];a[y+4>>2]=a[V+4>>2];a[y+8>>2]=a[V+8>>2];a[y+12>>2]=a[V+12>>2];uy(J,L,y,x);a[n>>2]=a[J>>2];a[n+4>>2]=a[J+4>>2];a[n+8>>2]=a[J+8>>2];a[n+12>>2]=a[J+12>>2];a[t+12>>2]=a[u+12>>2];n=t+32|0;x=u+32|0;c=a[(a[m>>2]|0)+116>>2]&1;a[L>>2]=a[x>>2];a[L+4>>2]=a[x+4>>2];a[L+8>>2]=a[x+8>>2];a[L+12>>2]=a[x+12>>2];a[y>>2]=a[V>>2];a[y+4>>2]=a[V+4>>2];a[y+8>>2]=a[V+8>>2];a[y+12>>2]=a[V+12>>2];uy(p,L,y,c);a[n>>2]=a[p>>2];a[n+4>>2]=a[p+4>>2];a[n+8>>2]=a[p+8>>2];a[n+12>>2]=a[p+12>>2];n=0;while(1){if((n|0)>=(a[w>>2]|0))break;c=(a[t>>2]|0)+(n<<4)|0;T=(a[u>>2]|0)+(n<<4)|0;x=a[(a[m>>2]|0)+116>>2]&1;a[L>>2]=a[T>>2];a[L+4>>2]=a[T+4>>2];a[L+8>>2]=a[T+8>>2];a[L+12>>2]=a[T+12>>2];a[y>>2]=a[V>>2];a[y+4>>2]=a[V+4>>2];a[y+8>>2]=a[V+8>>2];a[y+12>>2]=a[V+12>>2];uy(W,L,y,x);a[c>>2]=a[W>>2];a[c+4>>2]=a[W+4>>2];a[c+8>>2]=a[W+8>>2];a[c+12>>2]=a[W+12>>2];a[N>>2]=a[W>>2];a[N+4>>2]=a[W+4>>2];a[N+8>>2]=a[W+8>>2];a[N+12>>2]=a[W+12>>2];c=n+1|0;if((c|0)>=(a[w>>2]|0)){H=48;break}x=(a[t>>2]|0)+(c<<4)|0;c=(a[u>>2]|0)+(c<<4)|0;T=a[(a[m>>2]|0)+116>>2]&1;a[L>>2]=a[c>>2];a[L+4>>2]=a[c+4>>2];a[L+8>>2]=a[c+8>>2];a[L+12>>2]=a[c+12>>2];a[y>>2]=a[V>>2];a[y+4>>2]=a[V+4>>2];a[y+8>>2]=a[V+8>>2];a[y+12>>2]=a[V+12>>2];uy(z,L,y,T);a[x>>2]=a[z>>2];a[x+4>>2]=a[z+4>>2];a[x+8>>2]=a[z+8>>2];a[x+12>>2]=a[z+12>>2];a[l>>2]=a[z>>2];a[l+4>>2]=a[z+4>>2];a[l+8>>2]=a[z+8>>2];a[l+12>>2]=a[z+12>>2];x=n+2|0;T=(a[t>>2]|0)+(x<<4)|0;x=(a[u>>2]|0)+(x<<4)|0;c=a[(a[m>>2]|0)+116>>2]&1;a[L>>2]=a[x>>2];a[L+4>>2]=a[x+4>>2];a[L+8>>2]=a[x+8>>2];a[L+12>>2]=a[x+12>>2];a[y>>2]=a[V>>2];a[y+4>>2]=a[V+4>>2];a[y+8>>2]=a[V+8>>2];a[y+12>>2]=a[V+12>>2];uy(Y,L,y,c);a[T>>2]=a[Y>>2];a[T+4>>2]=a[Y+4>>2];a[T+8>>2]=a[Y+8>>2];a[T+12>>2]=a[Y+12>>2];a[g>>2]=a[Y>>2];a[g+4>>2]=a[Y+4>>2];a[g+8>>2]=a[Y+8>>2];a[g+12>>2]=a[Y+12>>2];T=n+3|0;c=(a[u>>2]|0)+(T<<4)|0;x=a[(a[m>>2]|0)+116>>2]&1;a[L>>2]=a[c>>2];a[L+4>>2]=a[c+4>>2];a[L+8>>2]=a[c+8>>2];a[L+12>>2]=a[c+12>>2];a[y>>2]=a[V>>2];a[y+4>>2]=a[V+4>>2];a[y+8>>2]=a[V+8>>2];a[y+12>>2]=a[V+12>>2];uy(D,L,y,x);a[v>>2]=a[D>>2];a[v+4>>2]=a[D+4>>2];a[v+8>>2]=a[D+8>>2];a[v+12>>2]=a[D+12>>2];bI((a[m>>2]|0)+16|0,N);n=T}if((H|0)==48)H=0;n=a[(a[h>>2]|0)+96>>2]|0;if(n|0){T=n+56|0;o=(a[(a[o>>2]|0)+96>>2]|0)+56|0;x=a[(a[m>>2]|0)+116>>2]&1;a[L>>2]=a[o>>2];a[L+4>>2]=a[o+4>>2];a[L+8>>2]=a[o+8>>2];a[L+12>>2]=a[o+12>>2];a[y>>2]=a[V>>2];a[y+4>>2]=a[V+4>>2];a[y+8>>2]=a[V+8>>2];a[y+12>>2]=a[V+12>>2];uy(M,L,y,x);a[T>>2]=a[M>>2];a[T+4>>2]=a[M+4>>2];a[T+8>>2]=a[M+8>>2];a[T+12>>2]=a[M+12>>2];T=a[(a[h>>2]|0)+96>>2]|0;r[T+81>>0]=1;HR(A,T)}}d=d+1|0}wy(G,Z)}else H=3}while(0);if((H|0)==3?(a[46738]|0)==0:0){a[46738]=1;ao(0,85355,R)|0;H=Vh(F)|0;x=(Ih(A)|0)!=0;T=Vh(Q)|0;a[X>>2]=H;a[X+4>>2]=x?137738:141747;a[X+8>>2]=T;ao(3,85461,X)|0}k=U;return}function iy(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0.0,Q=0.0,L=0.0,y=0.0,W=0.0;G=k;k=k+1600|0;v=G+1552|0;u=G+1536|0;g=G+840|0;E=G+144|0;C=G+1584|0;t=G+32|0;B=G+16|0;w=G;h=a[f>>2]&3;o=a[((h|0)==3?f:f+48|0)+40>>2]|0;I=f+-48|0;h=a[((h|0)==2?f:I)+40>>2]|0;d=f+16|0;c=a[d>>2]|0;l=a[c+172>>2]|0;while(1){b=a[(a[l+16>>2]|0)+172>>2]|0;if(!b)break;else l=b}c=(a[c+96>>2]|0)+56|0;l=(a[((a[l>>2]&3|0)==3?l:l+48|0)+40>>2]|0)+16|0;b=(a[l>>2]|0)+16|0;a[c>>2]=a[b>>2];a[c+4>>2]=a[b+4>>2];a[c+8>>2]=a[b+8>>2];a[c+12>>2]=a[b+12>>2];c=a[d>>2]|0;r[(a[c+96>>2]|0)+81>>0]=1;if((n|0)!=2){c=a[l>>2]|0;L=+s[c+16>>3];W=L-+s[c+88>>3];L=+s[c+96>>3]+L;Q=+s[c+24>>3];y=+s[c+80>>3]*.5+Q;c=a[(a[A+16>>2]|0)+196>>2]|0;b=a[o+16>>2]|0;t=a[b+232>>2]|0;Q=+(~~(+(~~(Q-+s[c+(t<<6)+16>>3]-+s[b+24>>3]+ +s[c+(t<<6)+24>>3])|0)*.16666666666666666)|0);Q=y-(Q<5.0?5.0:Q);ay(A,e,i,o,f,g,1);ay(A,e,i,h,f,E,0);t=g+52|0;c=a[t>>2]|0;b=c+-1|0;m=+s[g+56+(b<<5)>>3];s[19215]=m;s[19216]=+s[g+56+(b<<5)+24>>3];s[19217]=W;s[19218]=Q;s[19219]=m;s[19220]=Q;b=E+52|0;l=(a[b>>2]|0)+-1|0;m=+s[E+56+(l<<5)+16>>3];s[19221]=m;s[19222]=y;s[19223]=L;s[19226]=Q;s[19224]=+s[E+56+(l<<5)+24>>3];s[19225]=m;l=0;while(1){if((l|0)>=(c|0)){l=0;break}c=g+56+(l<<5)|0;a[v>>2]=a[c>>2];a[v+4>>2]=a[c+4>>2];a[v+8>>2]=a[c+8>>2];a[v+12>>2]=a[c+12>>2];a[v+16>>2]=a[c+16>>2];a[v+20>>2]=a[c+20>>2];a[v+24>>2]=a[c+24>>2];a[v+28>>2]=a[c+28>>2];CN(i,v);l=l+1|0;c=a[t>>2]|0}while(1){if((l|0)==3)break;g=153720+(l<<5)|0;a[v>>2]=a[g>>2];a[v+4>>2]=a[g+4>>2];a[v+8>>2]=a[g+8>>2];a[v+12>>2]=a[g+12>>2];a[v+16>>2]=a[g+16>>2];a[v+20>>2]=a[g+20>>2];a[v+24>>2]=a[g+24>>2];a[v+28>>2]=a[g+28>>2];CN(i,v);l=l+1|0}t=a[b>>2]|0;while(1){l=t+-1|0;if((t|0)<=0)break;t=E+56+(l<<5)|0;a[v>>2]=a[t>>2];a[v+4>>2]=a[t+4>>2];a[v+8>>2]=a[t+8>>2];a[v+12>>2]=a[t+12>>2];a[v+16>>2]=a[t+16>>2];a[v+20>>2]=a[t+20>>2];a[v+24>>2]=a[t+24>>2];a[v+28>>2]=a[t+28>>2];CN(i,v);t=l}if((n|0)==10)t=KJ(i,C)|0;else t=ip(i,C)|0;l=a[C>>2]|0;if(l|0)Z=17}else{l=(a[o+16>>2]|0)+16|0;E=c+16|0;a[u>>2]=a[l>>2];a[u+4>>2]=a[l+4>>2];a[u+8>>2]=a[l+8>>2];a[u+12>>2]=a[l+12>>2];a[v>>2]=a[E>>2];a[v+4>>2]=a[E+4>>2];a[v+8>>2]=a[E+8>>2];a[v+12>>2]=a[E+12>>2];$L(B,u,v);E=(a[h+16>>2]|0)+16|0;l=(a[d>>2]|0)+56|0;a[u>>2]=a[E>>2];a[u+4>>2]=a[E+4>>2];a[u+8>>2]=a[E+8>>2];a[u+12>>2]=a[E+12>>2];a[v>>2]=a[l>>2];a[v+4>>2]=a[l+4>>2];a[v+8>>2]=a[l+8>>2];a[v+12>>2]=a[l+12>>2];$L(w,u,v);l=a[(a[d>>2]|0)+96>>2]|0;y=+s[l+56>>3];W=+s[l+64>>3]-+s[l+32>>3]*.5;l=t+16|0;a[t>>2]=a[B>>2];a[t+4>>2]=a[B+4>>2];a[t+8>>2]=a[B+8>>2];a[t+12>>2]=a[B+12>>2];a[l>>2]=a[B>>2];a[l+4>>2]=a[B+4>>2];a[l+8>>2]=a[B+8>>2];a[l+12>>2]=a[B+12>>2];l=t+32|0;E=t+48|0;Z=t+64|0;s[t+64>>3]=y;s[t+72>>3]=W;a[E>>2]=a[Z>>2];a[E+4>>2]=a[Z+4>>2];a[E+8>>2]=a[Z+8>>2];a[E+12>>2]=a[Z+12>>2];a[l>>2]=a[Z>>2];a[l+4>>2]=a[Z+4>>2];a[l+8>>2]=a[Z+8>>2];a[l+12>>2]=a[Z+12>>2];l=t+80|0;Z=t+96|0;a[Z>>2]=a[w>>2];a[Z+4>>2]=a[w+4>>2];a[Z+8>>2]=a[w+8>>2];a[Z+12>>2]=a[w+12>>2];a[l>>2]=a[w>>2];a[l+4>>2]=a[w+4>>2];a[l+8>>2]=a[w+8>>2];a[l+12>>2]=a[w+12>>2];a[C>>2]=7;l=7;Z=17}if((Z|0)==17)vN(f,a[((a[f>>2]&3|0)==2?f:I)+40>>2]|0,t,l,17296);k=G;return}function ry(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0.0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0.0,B=0,g=0.0,v=0,E=0,C=0,I=0,Z=0,G=0.0,m=0.0,Q=0.0,L=0.0,y=0.0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0;N=k;k=k+352|0;I=N+336|0;C=N+320|0;J=N+128|0;v=N+304|0;Z=N+288|0;p=N+112|0;W=N+96|0;z=N+80|0;Y=N+64|0;D=N+48|0;M=N+32|0;F=N+16|0;V=N;A=A+16|0;h=(a[A>>2]|0)+16|0;E=(a[i+(r<<2)>>2]|0)+16|0;B=(a[E>>2]|0)+16|0;a[C>>2]=a[h>>2];a[C+4>>2]=a[h+4>>2];a[C+8>>2]=a[h+8>>2];a[C+12>>2]=a[h+12>>2];a[I>>2]=a[B>>2];a[I+4>>2]=a[B+4>>2];a[I+8>>2]=a[B+8>>2];a[I+12>>2]=a[B+12>>2];$L(v,C,I);L=+s[v>>3];y=+s[v+8>>3];v=(a[e+16>>2]|0)+16|0;E=(a[E>>2]|0)+56|0;a[C>>2]=a[v>>2];a[C+4>>2]=a[v+4>>2];a[C+8>>2]=a[v+8>>2];a[C+12>>2]=a[v+12>>2];a[I>>2]=a[E>>2];a[I+4>>2]=a[E+4>>2];a[I+8>>2]=a[E+8>>2];a[I+12>>2]=a[E+12>>2];$L(Z,C,I);m=+s[Z>>3];Q=+s[Z+8>>3];if((f|0)>1){G=+s[(a[A>>2]|0)+80>>3];l=G*.5;G=G/+(f+-1|0)}else{l=0.0;G=0.0}o=(n|8|0)==10;b=J+8|0;h=J+16|0;d=(m+L*2.0)*.3333333333333333;B=J+32|0;g=(m*2.0+L)*.3333333333333333;u=J+24|0;v=J+48|0;E=J+64|0;C=J+80|0;I=J+96|0;Z=J+112|0;c=J+128|0;w=J+136|0;l=y-l;e=0;while(1){if((e|0)>=(f|0))break;t=a[i+(e+r<<2)>>2]|0;s[J>>3]=L;s[b>>3]=y;if(o){ly(p,d,l);a[h>>2]=a[p>>2];a[h+4>>2]=a[p+4>>2];a[h+8>>2]=a[p+8>>2];a[h+12>>2]=a[p+12>>2];ly(W,g,l);a[B>>2]=a[W>>2];a[B+4>>2]=a[W+4>>2];a[B+8>>2]=a[W+8>>2];a[B+12>>2]=a[W+12>>2];A=4;n=3}else{s[h>>3]=L;s[u>>3]=y;ly(z,d,l);a[B>>2]=a[z>>2];a[B+4>>2]=a[z+4>>2];a[B+8>>2]=a[z+8>>2];a[B+12>>2]=a[z+12>>2];ly(Y,d,l);a[v>>2]=a[Y>>2];a[v+4>>2]=a[Y+4>>2];a[v+8>>2]=a[Y+8>>2];a[v+12>>2]=a[Y+12>>2];ly(D,d,l);a[E>>2]=a[D>>2];a[E+4>>2]=a[D+4>>2];a[E+8>>2]=a[D+8>>2];a[E+12>>2]=a[D+12>>2];ly(M,g,l);a[C>>2]=a[M>>2];a[C+4>>2]=a[M+4>>2];a[C+8>>2]=a[M+8>>2];a[C+12>>2]=a[M+12>>2];ly(F,g,l);a[I>>2]=a[F>>2];a[I+4>>2]=a[F+4>>2];a[I+8>>2]=a[F+8>>2];a[I+12>>2]=a[F+12>>2];ly(V,g,l);a[Z>>2]=a[V>>2];a[Z+4>>2]=a[V+4>>2];a[Z+8>>2]=a[V+8>>2];a[Z+12>>2]=a[V+12>>2];s[c>>3]=m;s[w>>3]=Q;A=10;n=9}s[J+(n<<4)>>3]=m;s[J+(n<<4)+8>>3]=Q;vN(t,a[((a[t>>2]&3|0)==2?t:t+-48|0)+40>>2]|0,J,A,17296);l=l+G;e=e+1|0}k=N;return}function fy(A,e,i,r,n,l,t,c){A=A|0;e=e|0;i=i|0;r=r|0;n=n|0;l=l|0;t=t|0;c=c|0;var b=0,u=0.0,w=0,o=0,h=0,d=0,B=0.0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0.0,m=0.0,Q=0.0,L=0.0,y=0.0;I=k;k=k+1440|0;g=I+1392|0;E=I+1424|0;C=I+696|0;v=I;d=a[t>>2]&3;h=a[((d|0)==3?t:t+48|0)+40>>2]|0;d=a[((d|0)==2?t:t+-48|0)+40>>2]|0;b=a[h+16>>2]|0;w=a[b+232>>2]|0;o=a[A+16>>2]|0;if((w|0)<(f[o+238>>1]|0)){Z=a[o+196>>2]|0;o=w+1|0;u=+s[b+24>>3]-+s[Z+(w<<6)+32>>3]-+s[(a[(a[a[Z+(o<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+s[Z+(o<<6)+40>>3]}else u=+(a[o+252>>2]|0);G=+(l+1|0);B=+(a[e+12>>2]|0)/G;u=u/G;ny(A,e,i,h,t,C,1);ny(A,e,i,d,t,v,0);d=C+52|0;t=v+52|0;A=(c|0)==0;e=i+80|0;b=0;while(1){if((b|0)>=(l|0))break;h=a[r+(b+n<<2)>>2]|0;o=a[d>>2]|0;w=o+-1|0;y=+s[C+56+(w<<5)>>3];Q=+s[C+56+(w<<5)+8>>3];L=+s[C+56+(w<<5)+16>>3];s[19215]=y;s[19218]=Q;b=b+1|0;G=+(b|0);m=B*G;s[19217]=L+m;G=Q-u*G;s[19216]=G;s[19219]=y;s[19222]=G;w=(a[t>>2]|0)+-1|0;y=+s[v+56+(w<<5)+16>>3];s[19221]=y;s[19220]=G-u;Q=+s[v+56+(w<<5)>>3];L=+s[v+56+(w<<5)+8>>3];s[19225]=y;s[19226]=L;s[19223]=Q-m;s[19224]=G;w=0;while(1){if((w|0)>=(o|0)){w=0;break}o=C+56+(w<<5)|0;a[g>>2]=a[o>>2];a[g+4>>2]=a[o+4>>2];a[g+8>>2]=a[o+8>>2];a[g+12>>2]=a[o+12>>2];a[g+16>>2]=a[o+16>>2];a[g+20>>2]=a[o+20>>2];a[g+24>>2]=a[o+24>>2];a[g+28>>2]=a[o+28>>2];CN(i,g);w=w+1|0;o=a[d>>2]|0}while(1){if((w|0)==3)break;Z=153720+(w<<5)|0;a[g>>2]=a[Z>>2];a[g+4>>2]=a[Z+4>>2];a[g+8>>2]=a[Z+8>>2];a[g+12>>2]=a[Z+12>>2];a[g+16>>2]=a[Z+16>>2];a[g+20>>2]=a[Z+20>>2];a[g+24>>2]=a[Z+24>>2];a[g+28>>2]=a[Z+28>>2];CN(i,g);w=w+1|0}o=a[t>>2]|0;while(1){w=o+-1|0;if((o|0)<=0)break;o=v+56+(w<<5)|0;a[g>>2]=a[o>>2];a[g+4>>2]=a[o+4>>2];a[g+8>>2]=a[o+8>>2];a[g+12>>2]=a[o+12>>2];a[g+16>>2]=a[o+16>>2];a[g+20>>2]=a[o+20>>2];a[g+24>>2]=a[o+24>>2];a[g+28>>2]=a[o+28>>2];CN(i,g);o=w}if(A)w=ip(i,E)|0;else w=KJ(i,E)|0;o=a[E>>2]|0;if(!o)break;vN(h,a[((a[h>>2]&3|0)==2?h:h+-48|0)+40>>2]|0,w,o,17296);a[e>>2]=0}k=I;return}function ay(A,e,i,r,f,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;var t=0,c=0,b=0,u=0,w=0,o=0.0;u=k;k=k+128|0;t=u+96|0;c=u+64|0;w=u+32|0;b=u;VL(w,A,e,r,0,f);a[n>>2]=a[w>>2];a[n+4>>2]=a[w+4>>2];a[n+8>>2]=a[w+8>>2];a[n+12>>2]=a[w+12>>2];a[n+16>>2]=a[w+16>>2];a[n+20>>2]=a[w+20>>2];a[n+24>>2]=a[w+24>>2];a[n+28>>2]=a[w+28>>2];a[c>>2]=a[w>>2];a[c+4>>2]=a[w+4>>2];a[c+8>>2]=a[w+8>>2];a[c+12>>2]=a[w+12>>2];a[c+16>>2]=a[w+16>>2];a[c+20>>2]=a[w+20>>2];a[c+24>>2]=a[w+24>>2];a[c+28>>2]=a[w+28>>2];a[n+48>>2]=4;if(!(l<<24>>24))mN(i,f,2,n,0);else IN(i,f,2,n,0);e=n+52|0;f=(a[e>>2]|0)+-1|0;w=c+24|0;s[w>>3]=+s[n+56+(f<<5)+24>>3];l=c+8|0;s[l>>3]=+s[n+56+(f<<5)+8>>3];r=a[r+16>>2]|0;o=+s[(a[(a[A+16>>2]|0)+196>>2]|0)+(a[r+232>>2]<<6)+24>>3]+ +s[r+24>>3];a[t>>2]=a[c>>2];a[t+4>>2]=a[c+4>>2];a[t+8>>2]=a[c+8>>2];a[t+12>>2]=a[c+12>>2];a[t+16>>2]=a[c+16>>2];a[t+20>>2]=a[c+20>>2];a[t+24>>2]=a[c+24>>2];a[t+28>>2]=a[c+28>>2];pL(b,t,4,o);a[c>>2]=a[b>>2];a[c+4>>2]=a[b+4>>2];a[c+8>>2]=a[b+8>>2];a[c+12>>2]=a[b+12>>2];a[c+16>>2]=a[b+16>>2];a[c+20>>2]=a[b+20>>2];a[c+24>>2]=a[b+24>>2];a[c+28>>2]=a[b+28>>2];if(+s[c>>3]<+s[c+16>>3]?+s[l>>3]<+s[w>>3]:0){w=a[e>>2]|0;a[e>>2]=w+1;w=n+56+(w<<5)|0;a[w>>2]=a[c>>2];a[w+4>>2]=a[c+4>>2];a[w+8>>2]=a[c+8>>2];a[w+12>>2]=a[c+12>>2];a[w+16>>2]=a[c+16>>2];a[w+20>>2]=a[c+20>>2];a[w+24>>2]=a[c+24>>2];a[w+28>>2]=a[c+28>>2]}k=u;return}function ny(A,e,i,r,f,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;var t=0,c=0,b=0,u=0,w=0,o=0.0;u=k;k=k+128|0;t=u+96|0;c=u+64|0;w=u+32|0;b=u;VL(w,A,e,r,0,f);a[n>>2]=a[w>>2];a[n+4>>2]=a[w+4>>2];a[n+8>>2]=a[w+8>>2];a[n+12>>2]=a[w+12>>2];a[n+16>>2]=a[w+16>>2];a[n+20>>2]=a[w+20>>2];a[n+24>>2]=a[w+24>>2];a[n+28>>2]=a[w+28>>2];a[c>>2]=a[w>>2];a[c+4>>2]=a[w+4>>2];a[c+8>>2]=a[w+8>>2];a[c+12>>2]=a[w+12>>2];a[c+16>>2]=a[w+16>>2];a[c+20>>2]=a[w+20>>2];a[c+24>>2]=a[w+24>>2];a[c+28>>2]=a[w+28>>2];a[n+48>>2]=1;if(!(l<<24>>24))mN(i,f,2,n,0);else IN(i,f,2,n,0);e=n+52|0;f=(a[e>>2]|0)+-1|0;w=c+24|0;s[w>>3]=+s[n+56+(f<<5)+24>>3];l=c+8|0;s[l>>3]=+s[n+56+(f<<5)+8>>3];r=a[r+16>>2]|0;o=+s[r+24>>3]-+s[(a[(a[A+16>>2]|0)+196>>2]|0)+(a[r+232>>2]<<6)+24>>3];a[t>>2]=a[c>>2];a[t+4>>2]=a[c+4>>2];a[t+8>>2]=a[c+8>>2];a[t+12>>2]=a[c+12>>2];a[t+16>>2]=a[c+16>>2];a[t+20>>2]=a[c+20>>2];a[t+24>>2]=a[c+24>>2];a[t+28>>2]=a[c+28>>2];pL(b,t,1,o);a[c>>2]=a[b>>2];a[c+4>>2]=a[b+4>>2];a[c+8>>2]=a[b+8>>2];a[c+12>>2]=a[b+12>>2];a[c+16>>2]=a[b+16>>2];a[c+20>>2]=a[b+20>>2];a[c+24>>2]=a[b+24>>2];a[c+28>>2]=a[b+28>>2];if(+s[c>>3]<+s[c+16>>3]?+s[l>>3]<+s[w>>3]:0){w=a[e>>2]|0;a[e>>2]=w+1;w=n+56+(w<<5)|0;a[w>>2]=a[c>>2];a[w+4>>2]=a[c+4>>2];a[w+8>>2]=a[c+8>>2];a[w+12>>2]=a[c+12>>2];a[w+16>>2]=a[c+16>>2];a[w+20>>2]=a[c+20>>2];a[w+24>>2]=a[c+24>>2];a[w+28>>2]=a[c+28>>2]}k=u;return}function ly(A,e,i){A=A|0;e=+e;i=+i;s[A>>3]=e;s[A+8>>3]=i;return}function ty(A,e,i,f,n,l,t){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;t=t|0;var c=0,b=0,u=0,w=0,o=0.0,h=0.0,d=0.0,B=0.0,g=0.0,v=0.0,E=0.0,C=0.0,I=0.0,Z=0,G=0,m=0.0,Q=0.0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,U=0,x=0,T=0,j=0,P=0,S=0,O=0,K=0,_=0.0;K=k;k=k+288|0;U=K+256|0;H=K+240|0;X=K+224|0;P=K+280|0;S=K+272|0;O=K+32|0;x=K+16|0;T=K;b=K+208|0;u=K+192|0;w=a[i+(f<<2)>>2]|0;j=qF(n<<2)|0;c=0;while(1){if((c|0)>=(n|0))break;a[j+(c<<2)>>2]=a[i+(c+f<<2)>>2];c=c+1|0}K4(j,n,4,59);i=A+16|0;f=(a[i>>2]|0)+16|0;w=w+16|0;L=(a[w>>2]|0)+16|0;a[H>>2]=a[f>>2];a[H+4>>2]=a[f+4>>2];a[H+8>>2]=a[f+8>>2];a[H+12>>2]=a[f+12>>2];a[U>>2]=a[L>>2];a[U+4>>2]=a[L+4>>2];a[U+8>>2]=a[L+8>>2];a[U+12>>2]=a[L+12>>2];$L(b,H,U);a[x>>2]=a[b>>2];a[x+4>>2]=a[b+4>>2];a[x+8>>2]=a[b+8>>2];a[x+12>>2]=a[b+12>>2];L=e+16|0;f=(a[L>>2]|0)+16|0;w=(a[w>>2]|0)+56|0;a[H>>2]=a[f>>2];a[H+4>>2]=a[f+4>>2];a[H+8>>2]=a[f+8>>2];a[H+12>>2]=a[f+12>>2];a[U>>2]=a[w>>2];a[U+4>>2]=a[w+4>>2];a[U+8>>2]=a[w+8>>2];a[U+12>>2]=a[w+12>>2];$L(u,H,U);a[T>>2]=a[u>>2];a[T+4>>2]=a[u+4>>2];a[T+8>>2]=a[u+8>>2];a[T+12>>2]=a[u+12>>2];C=+s[(a[i>>2]|0)+96>>3]+ +s[x>>3];I=+s[T>>3]-+s[(a[L>>2]|0)+88>>3];v=I+C;E=v*.5;L=a[j>>2]|0;a[O>>2]=a[x>>2];a[O+4>>2]=a[x+4>>2];a[O+8>>2]=a[x+8>>2];a[O+12>>2]=a[x+12>>2];w=O+16|0;a[w>>2]=a[x>>2];a[w+4>>2]=a[x+4>>2];a[w+8>>2]=a[x+8>>2];a[w+12>>2]=a[x+12>>2];i=O+32|0;a[i>>2]=a[T>>2];a[i+4>>2]=a[T+4>>2];a[i+8>>2]=a[T+8>>2];a[i+12>>2]=a[T+12>>2];f=O+48|0;a[f>>2]=a[T>>2];a[f+4>>2]=a[T+4>>2];a[f+8>>2]=a[T+8>>2];a[f+12>>2]=a[T+12>>2];vN(L,a[((a[L>>2]&3|0)==2?L:L+-48|0)+40>>2]|0,O,4,17296);L=a[(a[L+16>>2]|0)+96>>2]|0;s[L+56>>3]=E;G=x+8|0;d=+s[G>>3];B=+s[L+32>>3];s[L+64>>3]=(B+6.0)*.5+d;r[L+81>>0]=1;d=d+3.0;Q=+s[L+24>>3];m=(v-Q)*.5;Q=(Q+v)*.5;L=O+24|0;y=O+40|0;W=O+56|0;z=O+64|0;Y=T+8|0;D=O+72|0;M=O+80|0;F=O+88|0;V=O+96|0;J=O+104|0;p=O+112|0;N=O+120|0;R=P+4|0;u=(l|0)==6&1;h=0.0;o=0.0;B=B+d;b=1;while(1){if((b|0)>=(t|0)){Z=6;break}e=a[j+(b<<2)>>2]|0;if(!(b&1)){a[O>>2]=a[x>>2];a[O+4>>2]=a[x+4>>2];a[O+8>>2]=a[x+8>>2];a[O+12>>2]=a[x+12>>2];s[w>>3]=m;s[L>>3]=+s[G>>3];s[i>>3]=m;s[y>>3]=B;s[f>>3]=Q;s[W>>3]=B;s[z>>3]=Q;g=+s[Y>>3];s[D>>3]=g;_=+s[T>>3];s[M>>3]=_;s[F>>3]=g;s[V>>3]=_;_=B+6.0;s[J>>3]=_;s[p>>3]=+s[x>>3];s[N>>3]=_;B=+s[(a[(a[e+16>>2]|0)+96>>2]|0)+32>>3];g=_+B*.5;B=_+B}else{c=e+16|0;A=a[(a[c>>2]|0)+96>>2]|0;if((b|0)==1){o=+s[A+24>>3];h=(o+v)*.5;o=(v-o)*.5}d=d+-6.0-+s[A+32>>3];a[O>>2]=a[x>>2];a[O+4>>2]=a[x+4>>2];a[O+8>>2]=a[x+8>>2];a[O+12>>2]=a[x+12>>2];s[w>>3]=+s[x>>3];g=d+-6.0;s[L>>3]=g;s[i>>3]=+s[T>>3];s[y>>3]=g;a[f>>2]=a[T>>2];a[f+4>>2]=a[T+4>>2];a[f+8>>2]=a[T+8>>2];a[f+12>>2]=a[T+12>>2];s[z>>3]=h;s[D>>3]=+s[Y>>3];s[M>>3]=h;s[F>>3]=d;s[V>>3]=o;s[J>>3]=d;s[p>>3]=o;s[N>>3]=+s[G>>3];g=+s[(a[(a[c>>2]|0)+96>>2]|0)+32>>3]*.5+d}a[R>>2]=8;a[P>>2]=O;a[X>>2]=a[x>>2];a[X+4>>2]=a[x+4>>2];a[X+8>>2]=a[x+8>>2];a[X+12>>2]=a[x+12>>2];a[H>>2]=a[T>>2];a[H+4>>2]=a[T+4>>2];a[H+8>>2]=a[T+8>>2];a[H+12>>2]=a[T+12>>2];a[U>>2]=a[P>>2];a[U+4>>2]=a[P+4>>2];c=jJ(X,H,U,S,u)|0;A=a[S>>2]|0;if(!A)break;l=a[(a[e+16>>2]|0)+96>>2]|0;s[l+56>>3]=E;s[l+64>>3]=g;r[l+81>>0]=1;vN(e,a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,c,A,17296);b=b+1|0}A:do{if((Z|0)==6){E=(I+C*2.0)*.3333333333333333;v=(I*2.0+C)*.3333333333333333;while(1){if((b|0)>=(n|0))break;e=a[j+(b<<2)>>2]|0;if(!(b&1)){a[O>>2]=a[x>>2];a[O+4>>2]=a[x+4>>2];a[O+8>>2]=a[x+8>>2];a[O+12>>2]=a[x+12>>2];s[w>>3]=m;s[L>>3]=+s[G>>3];s[i>>3]=m;s[y>>3]=B;s[f>>3]=Q;s[W>>3]=B;s[z>>3]=Q;g=+s[Y>>3];s[D>>3]=g;_=+s[T>>3];s[M>>3]=_;s[F>>3]=g;s[V>>3]=_;_=B+6.0;s[J>>3]=_;s[p>>3]=+s[x>>3];B=_;g=o;o=_}else{Z=(b|0)==1;g=Z?E:o;h=Z?v:h;o=d+-6.0;a[O>>2]=a[x>>2];a[O+4>>2]=a[x+4>>2];a[O+8>>2]=a[x+8>>2];a[O+12>>2]=a[x+12>>2];s[w>>3]=+s[x>>3];d=d+-12.0;s[L>>3]=d;s[i>>3]=+s[T>>3];s[y>>3]=d;a[f>>2]=a[T>>2];a[f+4>>2]=a[T+4>>2];a[f+8>>2]=a[T+8>>2];a[f+12>>2]=a[T+12>>2];s[z>>3]=h;s[D>>3]=+s[Y>>3];s[M>>3]=h;s[F>>3]=o;s[V>>3]=g;s[J>>3]=o;s[p>>3]=g;d=o;o=+s[G>>3]}s[N>>3]=o;a[R>>2]=8;a[P>>2]=O;a[X>>2]=a[x>>2];a[X+4>>2]=a[x+4>>2];a[X+8>>2]=a[x+8>>2];a[X+12>>2]=a[x+12>>2];a[H>>2]=a[T>>2];a[H+4>>2]=a[T+4>>2];a[H+8>>2]=a[T+8>>2];a[H+12>>2]=a[T+12>>2];a[U>>2]=a[P>>2];a[U+4>>2]=a[P+4>>2];c=jJ(X,H,U,S,u)|0;A=a[S>>2]|0;if(!A)break A;vN(e,a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,c,A,17296);b=b+1|0;o=g}L2(j)}}while(0);k=K;return}function cy(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0;n=k;k=k+16|0;f=n;t=(Ih(A)|0)==0;t=t?18592:18584;r[f>>0]=r[t>>0]|0;r[f+1>>0]=r[t+1>>0]|0;r[f+2>>0]=r[t+2>>0]|0;r[f+3>>0]=r[t+3>>0]|0;f=kh(85493,f,0)|0;Td(f,137483,280,1)|0;Yo(f,0,87171,195059)|0;t=qF(96)|0;i=a[f+16>>2]|0;a[i+8>>2]=t;l=a[A+16>>2]|0;c=a[l+8>>2]|0;s[t>>3]=+s[c>>3];s[t+24>>3]=+s[c+24>>3];r[i+115>>0]=r[l+115>>0]|0;a[i+116>>2]=a[l+116>>2]&1^1;a[i+248>>2]=a[l+248>>2];a[i+252>>2]=a[l+252>>2];i=Jo(Zd(A)|0,1,0)|0;while(1){if(!i)break;Yo(f,1,a[i+8>>2]|0,a[i+12>>2]|0)|0;i=Jo(Zd(A)|0,1,i)|0}i=Jo(Zd(A)|0,2,0)|0;while(1){if(!i)break;Yo(f,2,a[i+8>>2]|0,a[i+12>>2]|0)|0;i=Jo(Zd(A)|0,2,i)|0}if(!(Yo(f,2,111464,0)|0))Yo(f,2,111464,195059)|0;if(!(Yo(f,2,111455,0)|0))Yo(f,2,111455,195059)|0;ky(f,e);k=n;return f|0}function sy(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;r=k;k=k+16|0;i=r;A=gd(A,Vh(e)|0,1)|0;Td(A,137447,304,1)|0;jo(e,A)|0;if((bp(e)|0)==2){f=e+16|0;e=$F((P2(a[a[(a[f>>2]|0)+104>>2]>>2]|0)|0)+3|0)|0;a[i>>2]=a[a[(a[f>>2]|0)+104>>2]>>2];S4(e,85488,i)|0;xo(A,108224,e)|0}k=r;return A|0}function by(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;i=th(A,e,i,0,1)|0;Td(i,137460,176,1)|0;jo(r,i)|0;return i|0}function uy(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0.0;l=k;k=k+32|0;n=l+16|0;f=l;if(r|0){t=+s[e>>3];r=e+8|0;s[e>>3]=+s[r>>3];s[r>>3]=-t}a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];a[n>>2]=a[i>>2];a[n+4>>2]=a[i+4>>2];a[n+8>>2]=a[i+8>>2];a[n+12>>2]=a[i+12>>2];$L(A,f,n);k=l;return}function wy(A,e){A=A|0;e=e|0;a[47189]=a[e>>2];a[47193]=a[e+4>>2];a[47194]=a[e+8>>2];a[47174]=a[e+12>>2];a[47175]=a[e+16>>2];a[47181]=a[e+20>>2];a[47180]=a[e+24>>2];a[47179]=a[e+28>>2];a[47205]=a[e+32>>2];a[47197]=a[e+36>>2];a[47182]=a[e+40>>2];a[47192]=a[e+44>>2];a[47201]=a[e+48>>2];a[47200]=a[e+52>>2];a[47199]=a[e+56>>2];a[47204]=a[e+60>>2];a[47198]=a[e+64>>2];a[47183]=a[e+68>>2];a[47145]=a[e+72>>2];a[47146]=a[e+76>>2];a[47147]=a[e+80>>2];a[47157]=a[e+84>>2];a[47150]=a[e+88>>2];a[47151]=a[e+92>>2];a[47152]=a[e+96>>2];a[47154]=a[e+100>>2];a[47155]=a[e+104>>2];a[47158]=a[e+108>>2];a[47161]=a[e+112>>2];a[47159]=a[e+116>>2];a[47160]=a[e+120>>2];a[47163]=a[e+124>>2];a[47162]=a[e+128>>2];a[47164]=a[e+132>>2];a[47165]=a[e+136>>2];a[47156]=a[e+140>>2];a[47168]=a[e+144>>2];a[47140]=a[e+148>>2];a[47138]=a[e+152>>2];L2(e);rL(A);Bh(A)|0;return}function ky(A,e){A=A|0;e=e|0;a[e>>2]=a[47189];a[e+4>>2]=a[47193];a[e+8>>2]=a[47194];a[e+12>>2]=a[47174];a[e+16>>2]=a[47175];a[e+20>>2]=a[47181];a[e+24>>2]=a[47180];a[e+28>>2]=a[47179];a[e+32>>2]=a[47205];a[e+36>>2]=a[47197];a[e+40>>2]=a[47182];a[e+44>>2]=a[47192];a[e+48>>2]=a[47201];a[e+52>>2]=a[47200];a[e+56>>2]=a[47199];a[e+60>>2]=a[47204];a[e+64>>2]=a[47198];a[e+68>>2]=a[47183];a[e+72>>2]=a[47145];a[e+76>>2]=a[47146];a[e+80>>2]=a[47147];a[e+84>>2]=a[47157];a[e+88>>2]=a[47150];a[e+92>>2]=a[47151];a[e+96>>2]=a[47152];a[e+100>>2]=a[47154];a[e+104>>2]=a[47155];a[e+108>>2]=a[47158];a[e+112>>2]=a[47161];a[e+116>>2]=a[47159];a[e+120>>2]=a[47160];a[e+124>>2]=a[47163];a[e+128>>2]=a[47162];a[e+132>>2]=a[47164];a[e+136>>2]=a[47165];a[e+140>>2]=a[47156];a[e+144>>2]=a[47168];a[e+152>>2]=a[47138];a[e+148>>2]=a[47140];a[47189]=0;a[47193]=Yo(A,2,87412,0)|0;a[47194]=Yo(A,2,87421,0)|0;e=Yo(A,2,101541,0)|0;a[47174]=e;if(!e)a[47174]=Yo(A,2,101541,195059)|0;a[47175]=0;a[47181]=0;a[47180]=Yo(A,2,101437,0)|0;a[47179]=Yo(A,2,101428,0)|0;a[47205]=Yo(A,2,101717,0)|0;a[47197]=0;a[47182]=Yo(A,2,108224,0)|0;a[47192]=Yo(A,2,85498,0)|0;a[47201]=0;a[47200]=Yo(A,2,101617,0)|0;a[47199]=Yo(A,2,101603,0)|0;a[47204]=Yo(A,2,101708,0)|0;a[47198]=0;a[47183]=0;a[47145]=Yo(A,1,141048,0)|0;a[47146]=Yo(A,1,141116,0)|0;a[47147]=Yo(A,1,108230,0)|0;a[47157]=0;a[47150]=Yo(A,1,101428,0)|0;a[47151]=Yo(A,1,101437,0)|0;a[47152]=0;a[47154]=Yo(A,1,108224,0)|0;a[47155]=0;a[47158]=0;a[47161]=Yo(A,1,101409,0)|0;a[47159]=Yo(A,1,141076,0)|0;a[47160]=Yo(A,1,101472,0)|0;a[47163]=Yo(A,1,101484,0)|0;a[47162]=Yo(A,1,101348,0)|0;a[47164]=Yo(A,1,101489,0)|0;a[47165]=Yo(A,1,85510,0)|0;a[47156]=0;a[47168]=0;a[47140]=Yo(A,0,101409,0)|0;return}function oy(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0.0,n=0.0,l=0.0;i=a[(a[(a[A>>2]|0)+16>>2]|0)+96>>2]|0;A=a[(a[(a[e>>2]|0)+16>>2]|0)+96>>2]|0;e=(A|0)!=0;if(i)if(e?(f=+s[i+24>>3],l=+s[i+32>>3],r=+s[A+24>>3],n=+s[A+32>>3],!(f>r)):0)if(!(f n)A=-1;else A=l >2]|0)+116>>2]|0;if(!e)break;else A=e}e=a[A>>2]&3;i=a[(a[((e|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0;r=a[i+232>>2]|0;A=a[(a[((e|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0;e=a[A+232>>2]|0;if((r|0)<=(e|0))if((r|0)<(e|0))A=1;else A=(a[i+236>>2]|0)<(a[A+236>>2]|0)&1;else A=0;return A|0}function dy(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;i=k;k=k+16|0;r=i+8|0;f=i;l=(a[A+16>>2]|0)+180|0;n=(a[e+16>>2]|0)+172|0;a[f>>2]=a[l>>2];a[f+4>>2]=a[l+4>>2];a[r>>2]=a[n>>2];a[r+4>>2]=a[n+4>>2];e=By(A,f,e,r)|0;k=i;return e|0}function By(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0;f=a[e+4>>2]|0;A:do{if((f|0)>0?(n=a[r+4>>2]|0,(n|0)>0):0)if((f|0)<(n|0)){f=a[e>>2]|0;r=0;while(1){e=a[f+(r<<2)>>2]|0;if(!e){e=0;break A}if((a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)==(i|0))break;else r=r+1|0}}else{f=a[r>>2]|0;r=0;while(1){e=a[f+(r<<2)>>2]|0;if(!e){e=0;break A}if((a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)==(A|0))break;else r=r+1|0}}else e=0}while(0);return e|0}function gy(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;i=k;k=k+16|0;r=i+8|0;f=i;l=(a[A+16>>2]|0)+188|0;n=(a[e+16>>2]|0)+196|0;a[f>>2]=a[l>>2];a[f+4>>2]=a[l+4>>2];a[r>>2]=a[n>>2];a[r+4>>2]=a[n+4>>2];e=By(A,f,e,r)|0;k=i;return e|0}function vy(A){A=A|0;var e=0,i=0,r=0,f=0;r=A+48|0;i=a[(a[((a[A>>2]&3|0)==3?A:r)+40>>2]|0)+16>>2]|0;e=a[i+180>>2]|0;if(!e)e=$F((a[i+184>>2]<<2)+8|0)|0;else e=eV(e,(a[i+184>>2]<<2)+8|0)|0;a[(a[(a[((a[A>>2]&3|0)==3?A:r)+40>>2]|0)+16>>2]|0)+180>>2]=e;f=a[(a[((a[A>>2]&3|0)==3?A:r)+40>>2]|0)+16>>2]|0;i=a[f+180>>2]|0;f=f+184|0;e=a[f>>2]|0;a[f>>2]=e+1;a[i+(e<<2)>>2]=A;r=a[(a[((a[A>>2]&3|0)==3?A:r)+40>>2]|0)+16>>2]|0;a[(a[r+180>>2]|0)+(a[r+184>>2]<<2)>>2]=0;r=A+-48|0;e=a[(a[((a[A>>2]&3|0)==2?A:r)+40>>2]|0)+16>>2]|0;i=a[e+172>>2]|0;if(!i)e=$F((a[e+176>>2]<<2)+8|0)|0;else e=eV(i,(a[e+176>>2]<<2)+8|0)|0;a[(a[(a[((a[A>>2]&3|0)==2?A:r)+40>>2]|0)+16>>2]|0)+172>>2]=e;e=a[(a[((a[A>>2]&3|0)==2?A:r)+40>>2]|0)+16>>2]|0;i=a[e+172>>2]|0;e=e+176|0;f=a[e>>2]|0;a[e>>2]=f+1;a[i+(f<<2)>>2]=A;f=a[(a[((a[A>>2]&3|0)==2?A:r)+40>>2]|0)+16>>2]|0;a[(a[f+172>>2]|0)+(a[f+176>>2]<<2)>>2]=0;return A|0}function Ey(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;r=A+4|0;f=a[r>>2]|0;i=0;while(1){if((i|0)>=(f|0))break;n=a[A>>2]|0;l=n+(i<<2)|0;if((a[l>>2]|0)==(e|0)){t=4;break}else i=i+1|0}if((t|0)==4){t=f+-1|0;a[r>>2]=t;a[l>>2]=a[n+(t<<2)>>2];a[(a[A>>2]|0)+(t<<2)>>2]=0}return}function Cy(A){A=A|0;if(!A)gA(85551,85561,117,85570);else{Ey((a[(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+180|0,A);Ey((a[(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+172|0,A);return}}function Iy(A){A=A|0;var e=0,i=0,r=0,f=0;r=A+48|0;i=a[(a[((a[A>>2]&3|0)==3?A:r)+40>>2]|0)+16>>2]|0;e=a[i+204>>2]|0;if(!e)e=$F((a[i+208>>2]<<2)+8|0)|0;else e=eV(e,(a[i+208>>2]<<2)+8|0)|0;a[(a[(a[((a[A>>2]&3|0)==3?A:r)+40>>2]|0)+16>>2]|0)+204>>2]=e;f=a[(a[((a[A>>2]&3|0)==3?A:r)+40>>2]|0)+16>>2]|0;e=a[f+204>>2]|0;f=f+208|0;i=a[f>>2]|0;a[f>>2]=i+1;a[e+(i<<2)>>2]=A;r=a[(a[((a[A>>2]&3|0)==3?A:r)+40>>2]|0)+16>>2]|0;a[(a[r+204>>2]|0)+(a[r+208>>2]<<2)>>2]=0;return}function Zy(A){A=A|0;Gy(A,(a[(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+204|0);return}function Gy(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;l=e+4|0;r=a[l>>2]|0;f=a[e>>2]|0;i=0;while(1){if((i|0)>=(r|0)){n=4;break}if((a[f+(i<<2)>>2]|0)==(A|0))break;else i=i+1|0}if((n|0)==4){if(!f)i=$F((r<<2)+8|0)|0;else i=eV(f,(r<<2)+8|0)|0;a[e>>2]=i;f=a[l>>2]|0;n=f+1|0;a[l>>2]=n;a[i+(f<<2)>>2]=A;a[(a[e>>2]|0)+(n<<2)>>2]=0}return}function my(A,e,i){A=A|0;e=e|0;i=i|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;w=qF(96)|0;n=w+48|0;a[n>>2]=a[n>>2]|3;a[w>>2]=a[w>>2]&-4|2;l=qF(176)|0;u=w+16|0;a[u>>2]=l;a[((a[w>>2]&3|0)==3?w:n)+40>>2]=A;c=w+-48|0;a[((a[w>>2]&3|0)==2?w:c)+40>>2]=e;r[l+112>>0]=1;if(!i){a[l+156>>2]=1;f[l+154>>1]=1;f[l+168>>1]=1;f[l+170>>1]=1}else{a[w>>2]=a[w>>2]&15|a[i>>2]&-16;a[n>>2]=a[n>>2]&15|a[i>>2]&-16;b=i+16|0;t=a[b>>2]|0;f[l+168>>1]=f[t+168>>1]|0;f[l+154>>1]=f[t+154>>1]|0;a[l+156>>2]=a[t+156>>2];f[l+170>>1]=f[t+170>>1]|0;A=a[((a[w>>2]&3|0)==3?w:n)+40>>2]|0;e=a[i>>2]&3;s=i+48|0;if((A|0)!=(a[((e|0)==3?i:s)+40>>2]|0)){n=i+-48|0;if((A|0)==(a[((e|0)==2?i:n)+40>>2]|0)){l=l+16|0;A=t+56|0;e=l+40|0;do{a[l>>2]=a[A>>2];l=l+4|0;A=A+4|0}while((l|0)<(e|0))}}else{l=l+16|0;A=t+16|0;e=l+40|0;do{a[l>>2]=a[A>>2];l=l+4|0;A=A+4|0}while((l|0)<(e|0));n=i+-48|0}A=a[((a[w>>2]&3|0)==2?w:c)+40>>2]|0;e=a[i>>2]&3;if((A|0)!=(a[((e|0)==2?i:n)+40>>2]|0)){if((A|0)==(a[((e|0)==3?i:s)+40>>2]|0)){l=(a[u>>2]|0)+56|0;A=(a[b>>2]|0)+16|0;e=l+40|0;do{a[l>>2]=a[A>>2];l=l+4|0;A=A+4|0}while((l|0)<(e|0))}}else{l=(a[u>>2]|0)+56|0;A=(a[b>>2]|0)+56|0;e=l+40|0;do{a[l>>2]=a[A>>2];l=l+4|0;A=A+4|0}while((l|0)<(e|0))}A=(a[b>>2]|0)+172|0;if(!(a[A>>2]|0))a[A>>2]=w;a[(a[u>>2]|0)+116>>2]=i}return w|0}function Qy(A,e,i){A=A|0;e=e|0;i=i|0;return vy(my(A,e,i)|0)|0}function Ly(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;A=(a[A+16>>2]|0)+192|0;f=a[A>>2]|0;i=a[e+16>>2]|0;a[i+164>>2]=f;r=f;if(f|0)a[(a[r+16>>2]|0)+168>>2]=e;a[A>>2]=e;a[i+168>>2]=0;if((r|0)==(e|0))gA(85587,85561,215,85603);else return}function yy(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;if((A|0)==(e|0))gA(85613,85561,220,85620);f=a[e+16>>2]|0;i=f+164|0;if(a[i>>2]|0)gA(85633,85561,221,85620);r=(a[A+16>>2]|0)+164|0;a[i>>2]=a[r>>2];i=a[r>>2]|0;if(i|0)a[(a[i+16>>2]|0)+168>>2]=e;a[f+168>>2]=A;a[r>>2]=e;return}function Wy(A,e){A=A|0;e=e|0;var i=0,r=0;if(!(zy(A,e)|0))gA(85652,85561,231,85673);e=a[e+16>>2]|0;i=a[e+164>>2]|0;r=i;e=e+168|0;if(i|0)a[(a[i+16>>2]|0)+168>>2]=a[e>>2];e=a[e>>2]|0;if(!e)a[(a[A+16>>2]|0)+192>>2]=r;else a[(a[e+16>>2]|0)+164>>2]=r;return}function zy(A,e){A=A|0;e=e|0;A=(a[A+16>>2]|0)+192|0;while(1){A=a[A>>2]|0;if((A|0)==0|(A|0)==(e|0))break;A=(a[A+16>>2]|0)+164|0}return A|0}function Yy(A){A=A|0;var e=0,i=0,f=0,n=0;e=qF(64)|0;a[e>>2]=a[e>>2]&-4|1;i=e+16|0;a[i>>2]=qF(304)|0;a[e+24>>2]=Zd(A)|0;n=a[i>>2]|0;r[n+156>>0]=1;s[n+96>>3]=1.0;s[n+88>>3]=1.0;s[n+80>>3]=1.0;a[n+216>>2]=1;a[n+176>>2]=0;n=qF(20)|0;f=a[i>>2]|0;a[f+172>>2]=n;a[f+184>>2]=0;f=qF(20)|0;a[(a[i>>2]|0)+180>>2]=f;Ly(A,e);A=(a[A+16>>2]|0)+232|0;a[A>>2]=(a[A>>2]|0)+1;return e|0}function Dy(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0;n=e+48|0;i=a[(a[((a[e>>2]&3|0)==3?e:n)+40>>2]|0)+16>>2]|0;f=a[i+188>>2]|0;if(!f)i=$F((a[i+192>>2]<<2)+8|0)|0;else i=eV(f,(a[i+192>>2]<<2)+8|0)|0;a[(a[(a[((a[e>>2]&3|0)==3?e:n)+40>>2]|0)+16>>2]|0)+188>>2]=i;l=a[(a[((a[e>>2]&3|0)==3?e:n)+40>>2]|0)+16>>2]|0;f=a[l+188>>2]|0;l=l+192|0;i=a[l>>2]|0;a[l>>2]=i+1;a[f+(i<<2)>>2]=e;n=a[(a[((a[e>>2]&3|0)==3?e:n)+40>>2]|0)+16>>2]|0;a[(a[n+188>>2]|0)+(a[n+192>>2]<<2)>>2]=0;n=e+-48|0;i=a[(a[((a[e>>2]&3|0)==2?e:n)+40>>2]|0)+16>>2]|0;f=a[i+196>>2]|0;if(!f)i=$F((a[i+200>>2]<<2)+8|0)|0;else i=eV(f,(a[i+200>>2]<<2)+8|0)|0;a[(a[(a[((a[e>>2]&3|0)==2?e:n)+40>>2]|0)+16>>2]|0)+196>>2]=i;i=a[(a[((a[e>>2]&3|0)==2?e:n)+40>>2]|0)+16>>2]|0;f=a[i+196>>2]|0;i=i+200|0;l=a[i>>2]|0;a[i>>2]=l+1;a[f+(l<<2)>>2]=e;l=a[(a[((a[e>>2]&3|0)==2?e:n)+40>>2]|0)+16>>2]|0;a[(a[l+196>>2]|0)+(a[l+200>>2]<<2)>>2]=0;r[(a[A+16>>2]|0)+240>>0]=1;r[(a[(vL(A)|0)+16>>2]|0)+240>>0]=1;return}function My(A){A=A|0;var e=0,i=0;if(!A)gA(85551,85561,269,85690);e=a[(a[A+16>>2]|0)+116>>2]|0;if(e|0?(i=(a[e+16>>2]|0)+172|0,(a[i>>2]|0)==(A|0)):0)a[i>>2]=0;Ey((a[(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+188|0,A);Ey((a[(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+196|0,A);return}function Fy(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;f=k;k=k+16|0;i=(a[A+16>>2]|0)+172|0;r=a[i>>2]|0;do{if((r|0)!=(e|0))if(!r){a[i>>2]=e;Vy(A,e);break}else gA(87593,85561,340,85728);else ao(0,85707,f)|0}while(0);k=f;return}function Vy(A,e){A=A|0;e=e|0;var i=0,r=0,n=0,t=0;i=(a[e+16>>2]|0)+170|0;t=a[A+16>>2]|0;A=f[t+170>>1]|0;if((l[i>>1]|0)<(A&65535))f[i>>1]=A;r=t+168|0;n=t+154|0;i=t+156|0;A=e;while(1){if(!A)break;e=a[A+16>>2]|0;t=e+168|0;f[t>>1]=(l[t>>1]|0)+(l[r>>1]|0);t=e+154|0;f[t>>1]=(l[t>>1]|0)+(l[n>>1]|0);t=e+156|0;a[t>>2]=(a[t>>2]|0)+(a[i>>2]|0);A=a[e+172>>2]|0}return}function Jy(A){A=A|0;var e=0,i=0,n=0,l=0;i=A+16|0;e=a[(a[i>>2]|0)+172>>2]|0;A:while(1){if(!e)break;py(e,A);l=a[e+16>>2]|0;n=a[l+172>>2]|0;if(!(f[l+168>>1]|0))Ny(e);while(1){if((r[(a[e+16>>2]|0)+112>>0]|0)!=1){e=n;continue A}e=a[(a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0;if((r[e+156>>0]|0)!=1){e=n;continue A}if((a[e+184>>2]|0)!=1){e=n;continue A}e=a[a[e+180>>2]>>2]|0;py(e,A)}}a[(a[i>>2]|0)+172>>2]=0;return}function py(A,e){A=A|0;e=e|0;var i=0;i=a[e+16>>2]|0;e=a[A+16>>2]|0;A=e+168|0;f[A>>1]=(l[A>>1]|0)-(l[i+168>>1]|0);A=e+154|0;f[A>>1]=(l[A>>1]|0)-(l[i+154>>1]|0);e=e+156|0;a[e>>2]=(a[e>>2]|0)-(a[i+156>>2]|0);return}function Ny(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;if(!A)gA(85551,85561,128,85741);n=A+48|0;i=0;while(1){e=a[A>>2]|0;r=(a[(a[((e&3|0)==3?A:n)+40>>2]|0)+16>>2]|0)+180|0;f=a[(a[r>>2]|0)+(i<<2)>>2]|0;if(!f)break;if((f|0)==(A|0))Ey(r,A);i=i+1|0}n=A+-48|0;f=0;while(1){i=(a[(a[((e&3|0)==2?A:n)+40>>2]|0)+16>>2]|0)+172|0;r=a[(a[i>>2]|0)+(f<<2)>>2]|0;if(!r)break;if((r|0)==(A|0)){Ey(i,A);e=a[A>>2]|0}f=f+1|0}return}function Ry(A){A=A|0;var e=0,i=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0;o=k;k=k+1040|0;u=o+1032|0;w=o;b=o+8|0;s=A+16|0;A=a[s>>2]|0;c=f[A+236>>1]|0;while(1){if((c|0)>(f[A+238>>1]|0))break;t=a[A+196>>2]|0;l=t+(c<<6)|0;t=t+(c<<6)+4|0;n=0;A=0;while(1){if((n|0)>=(a[l>>2]|0))break;e=a[(a[t>>2]|0)+(n<<2)>>2]|0;i=e+16|0;if(a[(a[i>>2]|0)+112>>2]|0){if(!A){r[u>>0]=r[18588]|0;r[u+1>>0]=r[18589]|0;r[u+2>>0]=r[18590]|0;r[u+3>>0]=r[18591]|0;A=kh(85763,u,0)|0}a[w>>2]=n;S4(b,137395,w)|0;g=gd(A,b,1)|0;Td(g,91164,24,1)|0;h=a[(a[i>>2]|0)+180>>2]|0;d=a[h>>2]|0;d=a[(a[(a[((a[d>>2]&3|0)==2?d:d+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;h=a[h+4>>2]|0;h=a[(a[(a[((a[h>>2]&3|0)==2?h:h+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;B=(d|0)>(h|0);i=a[g+16>>2]|0;a[i+12>>2]=B?h:d;a[i+16>>2]=B?d:h;a[i+20>>2]=e}n=n+1|0}if(A|0){if((gh(A)|0)>1)Xy(A,l);Bh(A)|0}c=c+1|0;A=a[s>>2]|0}k=o;return}function Xy(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0;i=0;l=cd(A)|0;A:while(1){if(!l)break;t=sd(A,l)|0;c=l+16|0;n=t;while(1){if(!n){l=t;continue A}f=a[n+16>>2]|0;r=a[c>>2]|0;if((a[f+16>>2]|0)>(a[r+12>>2]|0)){if((a[r+16>>2]|0)<=(a[f+12>>2]|0))th(A,l,n,0,1)|0}else{th(A,n,l,0,1)|0;i=1}n=sd(A,n)|0}}do{if(i|0){l=NB(A,85766,1)|0;c=qF((gh(A)|0)<<2)|0;t=qF((gh(A)|0)<<2)|0;f=e+4|0;r=cd(A)|0;A:while(1){if(!r){i=23;break}if((a[(a[r+16>>2]|0)+8>>2]|0)==0?Eh(A,r,1,1)|0:0){e:do{if(Hy(A,r,l,t)|0){n=gh(l)|0;if((Uy(A,l,c)|0)!=(n|0)){i=17;break A}K4(t,n,4,60);i=0;while(1){if((i|0)>=(n|0))break e;e=t+(i<<2)|0;s=a[c+(i<<2)>>2]|0;a[(a[s+16>>2]|0)+236>>2]=a[e>>2];a[(a[f>>2]|0)+(a[e>>2]<<2)>>2]=s;i=i+1|0}}}while(0);Ty(l)}r=sd(A,r)|0}if((i|0)==17)gA(85771,85781,265,85792);else if((i|0)==23){L2(c);break}}}while(0);return}function Hy(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0;l=a[e+16>>2]|0;a[l+8>>2]=1;l=a[(a[(a[l+20>>2]|0)+16>>2]|0)+236>>2]|0;a[r+((gh(i)|0)<<2)>>2]=l;kd(i,e,1)|0;l=Oo(A,e)|0;f=0;while(1){if(!l)break;c=a[l>>2]&3;n=a[((c|0)==2?l:l+-48|0)+40>>2]|0;t=a[n+16>>2]|0;f=f+((a[(a[(a[t+20>>2]|0)+16>>2]|0)+236>>2]|0)>(a[(a[(a[(a[(a[((c|0)==3?l:l+48|0)+40>>2]|0)+16>>2]|0)+20>>2]|0)+16>>2]|0)+236>>2]|0)&1)|0;if(!(a[t+8>>2]|0))f=(Hy(A,n,i,r)|0)+f|0;l=_o(A,l)|0}l=qo(A,e)|0;while(1){if(!l)break;t=a[l>>2]&3;n=a[((t|0)==3?l:l+48|0)+40>>2]|0;c=a[n+16>>2]|0;f=f+((a[(a[(a[(a[(a[((t|0)==2?l:l+-48|0)+40>>2]|0)+16>>2]|0)+20>>2]|0)+16>>2]|0)+236>>2]|0)>(a[(a[(a[c+20>>2]|0)+16>>2]|0)+236>>2]|0)&1)|0;if(!(a[c+8>>2]|0))f=(Hy(A,n,i,r)|0)+f|0;l=$o(A,l)|0}return f|0}function Uy(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;f=0;while(1){r=jy(A,e)|0;if(!r)break;a[i+(f<<2)>>2]=a[(a[r+16>>2]|0)+20>>2];Ed(e,r)|0;r=Oo(A,r)|0;while(1){if(!r)break;n=_o(A,r)|0;bh(A,r)|0;r=n}f=f+1|0}return f|0}function xy(A,e){A=A|0;e=e|0;return(a[A>>2]|0)-(a[e>>2]|0)|0}function Ty(A){A=A|0;var e=0,i=0;e=cd(A)|0;while(1){if(!e)break;i=sd(A,e)|0;Ed(A,e)|0;e=i}return}function jy(A,e){A=A|0;e=e|0;var i=0;i=cd(e)|0;while(1){if(!i){i=0;break}if(!(Eh(A,i,1,0)|0))break;i=sd(e,i)|0}return i|0}function Py(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0;Sy(A);t=A+16|0;f=0;i=0;while(1){if((f|0)>=(a[(a[t>>2]|0)+220>>2]|0))break;Oy(A,f);f=f+1|0;i=(Ky(A,0,e)|0)+i|0}_y(A);l=1;while(1){f=a[t>>2]|0;n=a[f+180>>2]|0;if((l|0)>(n|0))break;n=(qy(a[(a[f+184>>2]|0)+(l<<2)>>2]|0,e)|0)+i|0;l=l+1|0;i=n}do{if((n|0)>0){f=Ho(A,85806)|0;if(f|0?(vR(f)|0)<<24>>24==0:0)break;ID(A);r[193769]=1;i=Ky(A,2,e)|0}}while(0);$y(A,i);return}function Sy(A){A=A|0;var e=0;if(0){}r[193769]=0;a[46741]=A;e=((vh(vL(A)|0)|0)<<2)+4|0;a[46740]=qF(e)|0;a[46739]=qF(e)|0;UW(A);e=A+16|0;if(f[(a[e>>2]|0)+136>>1]&16)xW(A);fD(A);jD(A,1);TW(A);nW(A);e=a[e>>2]|0;a[46742]=f[e+236>>1];a[46743]=f[e+238>>1];return}function Oy(A,e){A=A|0;e=e|0;var i=0,r=0,n=0;A=a[A+16>>2]|0;a[A+192>>2]=a[(a[A+216>>2]|0)+(e<<2)>>2];A:do{if((e|0)>0){e=f[A+238>>1]|0;i=A+196|0;A=f[A+236>>1]|0;while(1){if((A|0)>(e|0))break A;r=a[i>>2]|0;n=r+(A<<6)+4|0;r=r+(A<<6)|0;a[n>>2]=(a[n>>2]|0)+(a[r>>2]<<2);a[r>>2]=0;A=A+1|0}}}while(0);return}function Ky(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0;w=k;k=k+32|0;u=w;if((e|0)>1){r=CW(0)|0;IW(A)}else r=2147483647;b=a[15712]|0;c=e;f=0;e=r;while(1){if((c|0)>=3)break;f=a[47136]|0;if((c|0)==2)if((r|0)>(e|0)){GW(A);r=e}else r=e;else{r=(f|0)<4?f:4;if((vL(A)|0)==(A|0))ZW(A,c);if(!c)lW(A);tW(A);n=CW(0)|0;if((n|0)>(e|0)){f=r;r=n}else{IW(A);f=r;r=n;e=n}}n=0;t=0;while(1){if((t|0)>=(f|0))break;if(0){}l=n+1|0;if((r|0)==0|(n|0)>=(a[46744]|0))break;mW(A,t);r=CW(0)|0;if((r|0)>(e|0))n=l;else{IW(A);n=+s[23215]*+(e|0)>+(r|0)?0:l;e=r}t=t+1|0}if(!r){r=0;break}else c=c+1|0}if((r|0)>(e|0))GW(A);if((e|0)>0){QW(A,0);r=CW(0)|0}else r=e;A:do{if(i|0){e=0;while(1){if((e|0)>=(f|0))break A;LW(A);e=e+1|0}}}while(0);k=w;return r|0}function _y(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0;o=k;k=k+16|0;u=o;EW(A);s=A+16|0;e=a[s>>2]|0;b=a[15712]|0;c=f[e+236>>1]|0;while(1){if((c|0)>(f[e+238>>1]|0))break;i=a[e+196>>2]|0;r=a[i+(c<<6)+8>>2]|0;a[i+(c<<6)>>2]=r;n=a[i+(c<<6)+12>>2]|0;a[i+(c<<6)+4>>2]=n;t=0;while(1){if((t|0)>=(r|0))break;l=a[n+(t<<2)>>2]|0;if(!l){w=6;break}a[(a[l+16>>2]|0)+236>>2]=t;t=t+1|0}if((w|0)==6){w=0;if(0){}a[i+(c<<6)>>2]=t}c=c+1|0}k=o;return}function qy(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;dD(A);nW(A);lW(A);tW(A);f=A+16|0;i=Ky(A,2,e)|0;r=1;while(1){n=a[f>>2]|0;if((r|0)>(a[n+180>>2]|0))break;i=(qy(a[(a[n+184>>2]|0)+(r<<2)>>2]|0,e)|0)+i|0;r=r+1|0}cW(A);return i|0}function $y(A,e){A=A|0;e=e|0;var i=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0.0;o=k;k=k+16|0;w=o;i=a[46739]|0;if(i|0){L2(i);a[46739]=0}i=a[46740]|0;if(i|0){L2(i);a[46740]=0}u=A+16|0;i=1;while(1){n=a[u>>2]|0;if((i|0)>(a[n+180>>2]|0))break;AW(a[(a[n+184>>2]|0)+(i<<2)>>2]|0);i=i+1|0}b=f[n+236>>1]|0;i=n;while(1){if((b|0)>(f[i+238>>1]|0))break;else s=0;while(1){i=a[i+196>>2]|0;if((s|0)>=(a[i+(b<<6)>>2]|0))break;c=(a[(a[i+(b<<6)+4>>2]|0)+(s<<2)>>2]|0)+16|0;i=a[c>>2]|0;a[i+236>>2]=s;i=a[i+188>>2]|0;A:do{if(i|0){n=0;while(1){l=a[i+(n<<2)>>2]|0;if(!l)break A;t=l+16|0;if((r[(a[t>>2]|0)+112>>0]|0)==4){My(l);L2(a[t>>2]|0);L2(l);n=n+-1|0;i=a[(a[c>>2]|0)+188>>2]|0}n=n+1|0}}}while(0);s=s+1|0;i=a[u>>2]|0}eW(a[i+(b<<6)+56>>2]|0);b=b+1|0;i=a[u>>2]|0}if(0){}k=o;return}function AW(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0,c=0,s=0;n=A+16|0;e=1;while(1){r=a[n>>2]|0;if((e|0)>(a[r+180>>2]|0))break;AW(a[(a[r+184>>2]|0)+(e<<2)>>2]|0);e=e+1|0}A:do{if(a[r+268>>2]|0){i=f[r+236>>1]|0;e=r;while(1){if((i|0)>(f[e+238>>1]|0))break A;c=a[(a[e+268>>2]|0)+(i<<2)>>2]|0;t=iW(A,c,-1)|0;c=iW(A,c,1)|0;a[(a[(a[n>>2]|0)+268>>2]|0)+(i<<2)>>2]=t;s=a[(a[(a[(vL(A)|0)+16>>2]|0)+196>>2]|0)+(i<<6)+4>>2]|0;t=a[(a[t+16>>2]|0)+236>>2]|0;r=a[n>>2]|0;l=a[r+196>>2]|0;a[l+(i<<6)+4>>2]=s+(t<<2);a[l+(i<<6)>>2]=(a[(a[c+16>>2]|0)+236>>2]|0)+1-t;i=i+1|0;e=r}}}while(0);return}function eW(A){A=A|0;if(A|0){L2(a[A+8>>2]|0);L2(A)}return}function iW(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;r=e;while(1){e=rW(e,i)|0;if(!e)break;if(fW(A,e)|0){r=e;continue}f=(aW(A,e)|0)==0;r=f?r:e}return r|0}function rW(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;if(!A)gA(85856,85781,1023,85858);if((e|0)<0){A=a[A+16>>2]|0;r=a[A+236>>2]|0;if((r|0)>0){A=(a[(a[(a[46741]|0)+16>>2]|0)+196>>2]|0)+(a[A+232>>2]<<6)+4|0;i=r+-1|0;f=7}else n=0}else{A=a[A+16>>2]|0;r=a[A+236>>2]|0;A=(a[(a[(a[46741]|0)+16>>2]|0)+196>>2]|0)+(a[A+232>>2]<<6)+4|0;i=r+1|0;f=7}if((f|0)==7){A=a[(a[A>>2]|0)+(i<<2)>>2]|0;if(A)if((U((a[(a[A+16>>2]|0)+236>>2]|0)-r|0,e)|0)>0)n=A;else gA(85867,85781,1029,85858);else n=0}return n|0}function fW(A,e){A=A|0;e=e|0;if(!(r[(a[e+16>>2]|0)+156>>0]|0))A=(Dd(A,e)|0)!=0&1;else A=0;return A|0}function aW(A,e){A=A|0;e=e|0;var i=0,f=0;e=a[e+16>>2]|0;if(((r[e+156>>0]|0)==1?(a[e+176>>2]|0)==1:0)?(a[e+184>>2]|0)==1:0){e=a[e+180>>2]|0;while(1){e=a[e>>2]|0;i=a[e+16>>2]|0;if(!(r[i+112>>0]|0))break;else e=i+116|0}if(Dd(A,e)|0)e=1;else f=7}else f=7;if((f|0)==7)e=0;return e|0}function nW(A){A=A|0;var e=0,i=0,f=0;f=k;k=k+16|0;i=f;e=a[47140]|0;A:do{if((e|0)!=0|(a[47161]|0)!=0){e=dR(A,e,0)|0;if(e|0){switch(r[e>>0]|0){case 0:break A;case 111:{if(!(A1(e,86069)|0)){hW(A,1);break A}break}case 105:{if(!(A1(e,98735)|0)){hW(A,0);break A}break}default:{}}a[i>>2]=e;ao(1,86073,i)|0;break}e=RB(A)|0;while(1){if(!e)break;if(!(eY(e)|0))nW(e);e=XB(e)|0}if(a[47161]|0)dW(A)}}while(0);k=f;return}function lW(A){A=A|0;var e=0,i=0,n=0,l=0,t=0,c=0,s=0;s=A+16|0;e=a[s>>2]|0;c=f[e+236>>1]|0;while(1){if((c|0)>(f[e+238>>1]|0))break;else{i=0;t=0}while(1){n=a[e+196>>2]|0;l=a[n+(c<<6)>>2]|0;if((t|0)>=(l|0))break;n=a[(a[(a[n+(c<<6)+4>>2]|0)+(t<<2)>>2]|0)+16>>2]|0;r[n+158>>0]=0;r[n+157>>0]=0;a[n+284>>2]=t;if((i|0)==0&(a[n+192>>2]|0)>0){i=kW(l,l)|0;e=a[s>>2]|0;a[(a[e+196>>2]|0)+(c<<6)+56>>2]=i;i=1}t=t+1|0}A:do{if(i){t=0;i=l;while(1){if((t|0)>=(i|0))break A;l=a[(a[n+(c<<6)+4>>2]|0)+(t<<2)>>2]|0;if(!(r[(a[l+16>>2]|0)+157>>0]|0)){oW(A,l);e=a[s>>2]|0;i=a[e+196>>2]|0;n=i;i=a[i+(c<<6)>>2]|0}t=t+1|0}}}while(0);c=c+1|0}return}function tW(A){A=A|0;var e=0,i=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0;B=A+16|0;e=a[B>>2]|0;if(r[e+240>>0]|0){l=0;d=f[e+236>>1]|0;h=0;t=0;A:while(1){if((d|0)>(f[e+238>>1]|0))break;i=a[e+196>>2]|0;n=a[i+(d<<6)>>2]|0;if(!n){n=h;i=t}else{i=a[i+(d<<6)+4>>2]|0;k=a[(a[(a[i>>2]|0)+16>>2]|0)+236>>2]|0;e=0;while(1){if((e|0)>=(n|0))break;r[(a[(a[i+(e<<2)>>2]|0)+16>>2]|0)+157>>0]=0;e=e+1|0}e=(e<<2)+4|0;if(!l)o=$F(e)|0;else o=eV(t,e)|0;u=0;w=0;while(1){e=a[B>>2]|0;i=a[e+196>>2]|0;n=a[i+(d<<6)>>2]|0;if((n|0)<=(w|0))break;c=a[(a[i+(d<<6)+4>>2]|0)+(((a[e+116>>2]&1|0)==0?n+~w|0:w)<<2)>>2]|0;b=c+16|0;e=0;s=0;while(1){t=a[b>>2]|0;if((e|0)>=(a[t+200>>2]|0)){i=0;n=0;e=t;break}t=s+((sW(A,a[(a[t+196>>2]|0)+(e<<2)>>2]|0)|0)!=0&1)|0;e=e+1|0;s=t}while(1){if((n|0)>=(a[e+192>>2]|0))break;t=i+((sW(A,a[(a[e+188>>2]|0)+(n<<2)>>2]|0)|0)!=0&1)|0;i=t;n=n+1|0;e=a[b>>2]|0}if(i|s)if((s|0)==0&(r[e+157>>0]|0)==0)e=(bW(A,c,o+(u<<2)|0,d)|0)+u|0;else e=u;else{a[o+(u<<2)>>2]=c;e=u+1|0}u=e;w=w+1|0}e:do{if(u){i:do{if(!(a[e+116>>2]&1)){i=o;e=o+(u<<2)|0;while(1){e=e+-4|0;if(i>>>0>=e>>>0){n=0;break i}w=a[i>>2]|0;a[i>>2]=a[e>>2];a[e>>2]=w;i=i+4|0}}else n=0}while(0);while(1){e=a[B>>2]|0;t=a[e+196>>2]|0;i=a[t+(d<<6)>>2]|0;if((n|0)>=(i|0)){u=0;n=t;break}w=a[o+(n<<2)>>2]|0;a[(a[t+(d<<6)+4>>2]|0)+(n<<2)>>2]=w;a[(a[w+16>>2]|0)+236>>2]=n+k;n=n+1|0}while(1){if((u|0)>=(i|0))break e;b=(a[(a[n+(d<<6)+4>>2]|0)+(u<<2)>>2]|0)+16|0;t=a[(a[b>>2]|0)+188>>2]|0;if(t){s=0;i=t;while(1){n=a[i+(s<<2)>>2]|0;e=a[B>>2]|0;if(!n)break;c=a[n>>2]&3;t=a[(a[(a[((c|0)==2?n:n+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;c=a[(a[(a[((c|0)==3?n:n+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;if(!(a[e+116>>2]&1))if((t|0)<(c|0))g=36;else e=s;else if((t|0)>(c|0))g=36;else e=s;if((g|0)==36){g=0;if(sW(A,n)|0){g=37;break A}My(n);uW(A,n);e=s+-1|0;i=a[(a[b>>2]|0)+188>>2]|0}s=e+1|0}i=a[e+196>>2]|0;n=i;i=a[i+(d<<6)>>2]|0}u=u+1|0}}}while(0);r[(a[(a[(a[46741]|0)+16>>2]|0)+196>>2]|0)+(d<<6)+49>>0]=0;l=o;n=o;i=o}d=d+1|0;h=n;t=i}if((g|0)==37)gA(85915,85781,1561,85954);if(l|0)L2(h)}return}function cW(A){A=A|0;var e=0,i=0;i=A+16|0;A=a[i>>2]|0;A:do{if(a[A+268>>2]|0){e=f[A+236>>1]|0;while(1){if((e|0)>(f[A+238>>1]|0))break A;a[(a[A+268>>2]|0)+(e<<2)>>2]=a[a[(a[A+196>>2]|0)+(e<<6)+4>>2]>>2];e=e+1|0;A=a[i>>2]|0}}}while(0);return}function sW(A,e){A=A|0;e=e|0;if((a[(a[e+16>>2]|0)+156>>2]|0)!=0?(wW(A,a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0)!=0:0)A=(wW(A,a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)|0)!=0&1;else A=0;return A|0}function bW(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0;b=e+16|0;n=a[b>>2]|0;r[n+157>>0]=1;A:do{if((a[n+192>>2]|0)>0){l=0;c=0;while(1){t=a[(a[n+188>>2]|0)+(c<<2)>>2]|0;if(!t)break A;if((sW(A,t)|0)!=0?(s=a[((a[t>>2]&3|0)==2?t:t+-48|0)+40>>2]|0,(r[(a[s+16>>2]|0)+157>>0]|0)==0):0)l=(bW(A,s,i+(l<<2)|0,f)|0)+l|0;c=c+1|0;n=a[b>>2]|0}}else l=0}while(0);if((a[n+232>>2]|0)==(f|0)){a[i+(l<<2)>>2]=e;return l+1|0}else gA(85967,85781,1490,85983);return 0}function uW(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;t=a[e>>2]&3;c=a[((t|0)==2?e:e+-48|0)+40>>2]|0;f=a[(a[c+16>>2]|0)+188>>2]|0;A:do{if(!f){i=e+48|0;u=15}else{b=e+48|0;n=((t|0)==3?e:b)+40|0;i=0;while(1){l=a[f+(i<<2)>>2]|0;if(!l){i=b;u=15;break A}if((a[((a[l>>2]&3|0)==2?l:l+-48|0)+40>>2]|0)==(a[n>>2]|0))break;else i=i+1|0}Fy(e,l);i=(a[e+16>>2]|0)+172|0;if(!(a[i>>2]|0))a[i>>2]=l;i=a[l+16>>2]|0;if((r[i+112>>0]|0)==4?(s=i+116|0,(a[s>>2]|0)==0):0)a[s>>2]=e;i=a[(a[((a[e>>2]&3|0)==3?e:b)+40>>2]|0)+16>>2]|0;f=a[i+204>>2]|0;if(!f)i=$F((a[i+208>>2]<<2)+8|0)|0;else i=eV(f,(a[i+208>>2]<<2)+8|0)|0;a[(a[(a[((a[e>>2]&3|0)==3?e:b)+40>>2]|0)+16>>2]|0)+204>>2]=i;t=a[(a[((a[e>>2]&3|0)==3?e:b)+40>>2]|0)+16>>2]|0;c=a[t+204>>2]|0;t=t+208|0;s=a[t>>2]|0;a[t>>2]=s+1;a[c+(s<<2)>>2]=e;e=a[(a[((a[e>>2]&3|0)==3?e:b)+40>>2]|0)+16>>2]|0;a[(a[e+204>>2]|0)+(a[e+208>>2]<<2)>>2]=0}}while(0);if((u|0)==15){u=my(c,a[((t|0)==3?e:i)+40>>2]|0,e)|0;b=a[e+16>>2]|0;e=a[u+16>>2]|0;r[e+112>>0]=(r[b+112>>0]|0)==4?4:3;a[e+96>>2]=a[b+96>>2];Dy(A,u)}return}function wW(A,e){A=A|0;e=e|0;var i=0;i=fW(A,e)|0;return aW(A,e)|0|i|0}function kW(A,e){A=A|0;e=e|0;var i=0;i=qF(12)|0;a[i>>2]=A;a[i+4>>2]=e;a[i+8>>2]=qF(U(e,A)|0)|0;return i|0}function oW(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0;k=e+16|0;b=a[k>>2]|0;s=a[(a[(a[A+16>>2]|0)+196>>2]|0)+(a[b+232>>2]<<6)+56>>2]|0;r[b+157>>0]=1;r[b+158>>0]=1;b=(a[(a[(vL(A)|0)+16>>2]|0)+180>>2]|0)>0;i=a[k>>2]|0;f=a[i+188>>2]|0;A:do{if(f){u=s+4|0;w=s+8|0;e=0;e:while(1){c=a[f+(e<<2)>>2]|0;if(!c){o=i;break A}if(b){if((Dd(A,a[((a[c>>2]&3|0)==3?c:c+48|0)+40>>2]|0)|0)!=0?(Dd(A,a[((a[c>>2]&3|0)==2?c:c+-48|0)+40>>2]|0)|0)!=0:0)h=7}else h=7;do{if((h|0)==7){h=0;l=c+16|0;if(a[(a[l>>2]|0)+156>>2]|0){i=a[c>>2]&3;n=c+-48|0;d=a[(a[((i|0)==2?c:n)+40>>2]|0)+16>>2]|0;t=a[d+284>>2]|0;f=(t|0)<(a[s>>2]|0);if((r[d+158>>0]|0)==1){if(!f){h=10;break e}i=a[(a[(a[((i|0)==3?c:c+48|0)+40>>2]|0)+16>>2]|0)+284>>2]|0;f=a[u>>2]|0;if((i|0)>=(f|0)){h=12;break e}r[(a[w>>2]|0)+((U(f,t)|0)+i)>>0]=1;My(c);e=e+-1|0;if((r[(a[l>>2]|0)+112>>0]|0)==4)break;uW(A,c);break}else{if(!f){h=16;break e}i=a[(a[(a[((i|0)==3?c:c+48|0)+40>>2]|0)+16>>2]|0)+284>>2]|0;f=a[u>>2]|0;if((i|0)>=(f|0)){h=18;break e}r[(a[w>>2]|0)+((U(f,i)|0)+t)>>0]=1;i=a[((a[c>>2]&3|0)==2?c:n)+40>>2]|0;if(r[(a[i+16>>2]|0)+157>>0]|0)break;oW(A,i);break}}}}while(0);f=a[k>>2]|0;e=e+1|0;i=f;f=a[f+188>>2]|0}if((h|0)==10)gA(85993,85781,1251,86025);else if((h|0)==12)gA(86037,85781,1252,86025);else if((h|0)==16)gA(85993,85781,1260,86025);else if((h|0)==18)gA(86037,85781,1261,86025)}else o=i}while(0);r[o+158>>0]=0;return}function hW(A,e){A=A|0;e=e|0;var i=0;i=cd(A)|0;while(1){if(!i)break;BW(A,i,e);i=sd(A,i)|0}return}function dW(A){A=A|0;var e=0,i=0,f=0,n=0,l=0;n=k;k=k+16|0;f=n;e=cd(A)|0;while(1){if(!e)break;i=dR(e,a[47161]|0,0)|0;A:do{if(i|0){switch(r[i>>0]|0){case 0:break A;case 111:{if(!(A1(i,86069)|0)){BW(A,e,1);break A}break}case 105:{if(!(A1(i,98735)|0)){BW(A,e,0);break A}break}default:{}}l=Vh(e)|0;a[f>>2]=i;a[f+4>>2]=l;ao(1,86104,f)|0}}while(0);e=sd(A,e)|0}k=n;return}function BW(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0;c=a[46740]|0;l=e+16|0;f=a[l>>2]|0;A:do{if(!(a[f+212>>2]|0)){t=(i|0)!=0;e:do{if(t){n=0;e=0;i=f;while(1){f=a[(a[i+180>>2]|0)+(n<<2)>>2]|0;if(!f)break e;if(!(gW(f)|0)){a[c+(e<<2)>>2]=f;e=e+1|0;i=a[l>>2]|0}n=n+1|0}}else{n=0;e=0;i=f;while(1){f=a[(a[i+172>>2]|0)+(n<<2)>>2]|0;if(!f)break e;if(!(gW(f)|0)){a[c+(e<<2)>>2]=f;e=e+1|0;i=a[l>>2]|0}n=n+1|0}}}while(0);if((e|0)>=2){a[c+(e<<2)>>2]=0;K4(c,e,4,61);l=t?2:3;n=t?-1:1;f=1;while(1){e=a[c+(f<<2)>>2]|0;if(!e)break A;i=a[c+(f+-1<<2)>>2]|0;i=a[((a[i>>2]&3|0)==(l|0)?i:i+(n*48|0)|0)+40>>2]|0;e=a[((a[e>>2]&3|0)==(l|0)?e:e+(n*48|0)|0)+40>>2]|0;if(gy(i,e)|0)break A;t=my(i,e,0)|0;r[(a[t+16>>2]|0)+112>>0]=4;Dy(A,t);f=f+1|0}}}}while(0);return}function gW(A){A=A|0;var e=0;while(1){e=a[(a[A+16>>2]|0)+116>>2]|0;if(!e)break;else A=e}e=a[A>>2]&3;return(a[(a[(a[((e|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0)!=(a[(a[(a[((e|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0)|0}function vW(A,e){A=A|0;e=e|0;return((a[a[A>>2]>>2]|0)>>>4)-((a[a[e>>2]>>2]|0)>>>4)|0}function EW(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0,c=0;r=a[A+16>>2]|0;n=r+220|0;l=a[n>>2]|0;if((l|0)>=2){t=r+216|0;A=0;i=0;while(1){if((i|0)>=(l|0))break;e=a[(a[t>>2]|0)+(i<<2)>>2]|0;if(A|0)a[(a[A+16>>2]|0)+164>>2]=e;c=a[e+16>>2]|0;a[c+168>>2]=A;A=e;e=c;while(1){e=a[e+164>>2]|0;if(!e)break;A=e;e=a[e+16>>2]|0}i=i+1|0}a[n>>2]=1;a[r+192>>2]=a[a[r+216>>2]>>2];f[r+236>>1]=a[46742];f[r+238>>1]=a[46743]}return}function CW(A){A=A|0;var e=0,i=0,n=0,l=0,t=0,c=0;t=a[46741]|0;c=t+16|0;i=a[c>>2]|0;n=0;l=f[i+236>>1]|0;while(1){if((l|0)>=(f[i+238>>1]|0))break;A=a[i+196>>2]|0;if(!(r[A+(l<<6)+49>>0]|0)){e=XW(t,l)|0;A=a[c>>2]|0;i=a[A+196>>2]|0;a[i+(l<<6)+52>>2]=e;r[i+(l<<6)+49>>0]=1}else{e=a[A+(l<<6)+52>>2]|0;A=i}n=e+n|0;l=l+1|0;i=A}return n|0}function IW(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0;A=a[A+16>>2]|0;n=f[A+238>>1]|0;l=A+196|0;A=f[A+236>>1]|0;while(1){if((A|0)>(n|0))break;r=a[l>>2]|0;i=a[r+(A<<6)>>2]|0;r=r+(A<<6)+4|0;e=0;while(1){if((e|0)>=(i|0))break;t=a[(a[(a[r>>2]|0)+(e<<2)>>2]|0)+16>>2]|0;s[t+16>>3]=+(a[t+236>>2]|0);e=e+1|0}A=A+1|0}return}function ZW(A,e){A=A|0;e=e|0;var i=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0;d=k;k=k+16|0;b=d;u=A+16|0;w=sR(a[(a[u>>2]|0)+232>>2]|0)|0;c=a[u>>2]|0;i=c+192|0;n=i;while(1){n=a[n>>2]|0;if(!n)break;n=a[n+16>>2]|0;r[n+157>>0]=0;n=n+164|0}l=f[c+238>>1]|0;t=c+196|0;n=f[c+236>>1]|0;while(1){if((n|0)>(l|0))break;a[(a[t>>2]|0)+(n<<6)>>2]=0;n=n+1|0}t=(e|0)==0;while(1){n=a[i>>2]|0;if(!n)break;l=n+16|0;i=a[l>>2]|0;if((a[a[(t?i+172|0:i+180|0)>>2]>>2]|0)==0?(s=i+157|0,(r[s>>0]|0)==0):0){r[s>>0]=1;uR(w,n);while(1){i=wR(w)|0;if(!i)break;if((r[(a[i+16>>2]|0)+159>>0]|0)==7){CD(A,i,e,w);continue}else{NW(A,i);RW(w,i,e);continue}}i=a[l>>2]|0}i=i+164|0}if(wR(w)|0)ao(1,86312,b)|0;i=a[u>>2]|0;c=f[i+236>>1]|0;while(1){if((c|0)>(f[i+238>>1]|0))break;r[(a[(a[(a[46741]|0)+16>>2]|0)+196>>2]|0)+(c<<6)+49>>0]=0;if((a[i+116>>2]&1|0)!=0?(o=a[i+196>>2]|0,h=a[o+(c<<6)>>2]|0,(h|0)>0):0){n=a[o+(c<<6)+4>>2]|0;l=h+-1|0;t=(l|0)/2|0;i=0;while(1){if((i|0)>(t|0))break;DW(a[n+(i<<2)>>2]|0,a[n+(l-i<<2)>>2]|0);i=i+1|0}i=a[u>>2]|0}c=c+1|0}if((vL(A)|0)==(A|0)?(CW(0)|0)>0:0)QW(A,0);bR(w);k=d;return}function GW(A){A=A|0;var e=0,i=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0;w=A+16|0;A=a[w>>2]|0;i=f[A+236>>1]|0;e=f[A+238>>1]|0;b=e<<16>>16;u=A+196|0;n=i;while(1){if((n|0)>(b|0))break;c=a[u>>2]|0;t=a[c+(n<<6)>>2]|0;c=c+(n<<6)+4|0;l=0;while(1){if((l|0)>=(t|0))break;k=a[(a[(a[c>>2]|0)+(l<<2)>>2]|0)+16>>2]|0;a[k+236>>2]=~~+s[k+16>>3];l=l+1|0}n=n+1|0}while(1){if((i|0)>(e<<16>>16|0))break;r[(a[(a[(a[46741]|0)+16>>2]|0)+196>>2]|0)+(i<<6)+49>>0]=0;k=a[A+196>>2]|0;K4(a[k+(i<<6)+4>>2]|0,a[k+(i<<6)>>2]|0,4,62);k=a[w>>2]|0;i=i+1|0;e=f[k+238>>1]|0;A=k}return}function mW(A,e){A=A|0;e=e|0;var i=0,r=0,n=0;n=((e|0)%4|0|0)<2&1;i=a[A+16>>2]|0;if(!(e&1)){e=f[i+236>>1]|0;r=1;i=f[i+238>>1]|0;e=(e<<16>>16<=(f[(a[(a[46741]|0)+16>>2]|0)+236>>1]|0)&1)+(e<<16>>16)|0}else{e=f[i+238>>1]|0;r=-1;i=f[i+236>>1]|0;e=((e<<16>>16>=(f[(a[(a[46741]|0)+16>>2]|0)+238>>1]|0))<<31>>31)+(e<<16>>16)|0}i=r+i|0;while(1){if((e|0)==(i|0))break;VW(A,e,n,(FW(A,e,e-r|0)|0)&255);e=e+r|0}QW(A,n^1);return}function QW(A,e){A=A|0;e=e|0;var i=0,n=0,l=0,t=0,c=0,s=0;s=A+16|0;n=a[s>>2]|0;t=f[n+236>>1]|0;c=f[n+238>>1]|0;l=n+196|0;i=t<<16>>16;while(1){if((i|0)>(c|0)){l=t;break}r[(a[l>>2]|0)+(i<<6)+48>>0]=1;i=i+1|0}while(1){i=0;l=l<<16>>16;while(1){if((l|0)>(f[n+238>>1]|0))break;if(r[(a[n+196>>2]|0)+(l<<6)+48>>0]|0){i=(MW(A,l,e)|0)+i|0;n=a[s>>2]|0}l=l+1|0}if((i|0)<=0)break;l=f[n+236>>1]|0}return}function LW(A){A=A|0;var e=0,i=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0;k=A+16|0;e=a[k>>2]|0;w=f[e+238>>1]|0;A:while(1){if((w|0)<(f[e+236>>1]|0)){e=16;break}i=a[e+196>>2]|0;r[i+(w<<6)+48>>0]=0;o=(w|0)>0;h=w+1|0;n=0;e:while(1){b=(a[i+(w<<6)>>2]|0)+-1|0;u=i+(w<<6)+4|0;s=i+(h<<6)|0;while(1){if((n|0)>=(b|0))break e;c=a[u>>2]|0;t=a[c+(n<<2)>>2]|0;n=n+1|0;c=a[c+(n<<2)>>2]|0;if((a[(a[t+16>>2]|0)+236>>2]|0)>=(a[(a[c+16>>2]|0)+236>>2]|0)){e=7;break A}if(yW(A,t,c)|0)continue;if(o){i=WW(t,c)|0;l=WW(c,t)|0}else{i=0;l=0}if((a[s>>2]|0)>0){i=(zW(t,c)|0)+i|0;l=(zW(c,t)|0)+l|0}if((l|0)<=(i|0))break}YW(A,w,t,c);e=a[k>>2]|0;i=a[e+196>>2]|0}w=w+-1|0}if((e|0)==7)gA(86263,85781,721,86289);else if((e|0)==16)return}function yW(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0;c=a[e+16>>2]|0;t=a[c+212>>2]|0;f=a[i+16>>2]|0;n=a[f+212>>2]|0;l=(t|0)!=(n|0);do{if(!(r[193769]|0))if((n|0)==0|((t|0)==0|l^1))s=9;else{if((r[c+159>>0]|0)==7?(r[c+156>>0]|0)==1:0){A=0;break}if((r[f+159>>0]|0)==7?(r[f+156>>0]|0)==1:0){A=0;break}A=1}else if(l)A=1;else s=9}while(0);if((s|0)==9){f=a[A+16>>2]|0;A=a[(a[f+196>>2]|0)+(a[c+232>>2]<<6)+56>>2]|0;if(!A)A=0;else{c=(a[f+116>>2]&1|0)==0;s=U(a[A+4>>2]|0,a[(a[(c?e:i)+16>>2]|0)+284>>2]|0)|0;A=r[(a[A+8>>2]|0)+((a[(a[(c?i:e)+16>>2]|0)+284>>2]|0)+s)>>0]|0}}return A|0}function WW(A,e){A=A|0;e=e|0;var i=0,r=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0;b=A+16|0;t=a[(a[e+16>>2]|0)+172>>2]|0;e=0;while(1){A=a[t>>2]|0;if(!A)break;l=a[A+16>>2]|0;c=f[l+154>>1]|0;n=a[(a[(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;l=l+16|0;r=a[(a[b>>2]|0)+172>>2]|0;A=e;while(1){e=a[r>>2]|0;if(!e)break;i=(a[(a[(a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-n|0;if((i|0)<=0){if((i|0)==0?(u=a[e+16>>2]|0,+s[u+16>>3]>+s[l>>3]):0){e=u;w=9}}else{e=a[e+16>>2]|0;w=9}if((w|0)==9){w=0;A=(U(f[e+154>>1]|0,c)|0)+A|0}r=r+4|0}t=t+4|0;e=A}return e|0}function zW(A,e){A=A|0;e=e|0;var i=0,r=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0;b=A+16|0;t=a[(a[e+16>>2]|0)+180>>2]|0;e=0;while(1){A=a[t>>2]|0;if(!A)break;l=a[A+16>>2]|0;c=f[l+154>>1]|0;n=a[(a[(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;l=l+56|0;r=a[(a[b>>2]|0)+180>>2]|0;A=e;while(1){e=a[r>>2]|0;if(!e)break;i=(a[(a[(a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-n|0;if((i|0)<=0){if((i|0)==0?(u=a[e+16>>2]|0,+s[u+56>>3]>+s[l>>3]):0){e=u;w=9}}else{e=a[e+16>>2]|0;w=9}if((w|0)==9){w=0;A=(U(f[e+154>>1]|0,c)|0)+A|0}r=r+4|0}t=t+4|0;e=A}return e|0}function YW(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0;t=r[(a[i+16>>2]|0)+156>>0]|0;if(t<<24>>24!=(r[(a[f+16>>2]|0)+156>>0]|0)){c=A+16|0;b=a[(a[c>>2]|0)+196>>2]|0;s=a[b+(e<<6)>>2]|0;b=b+(e<<6)+4|0;A=0;n=0;l=0;while(1){if((A|0)>=(s|0))break;k=(r[(a[(a[(a[b>>2]|0)+(A<<2)>>2]|0)+16>>2]|0)+156>>0]|0)==0;A=A+1|0;n=n+(k&1)|0;l=l+((k^1)&1)|0}t=t<<24>>24==0;l=(n|0)<(l|0)?t?i:f:t?f:i;t=0;A=0;while(1){if((A|0)>=(s|0))break;t=(a[(a[b>>2]|0)+(A<<2)>>2]|0)==(l|0)?A:t;A=A+1|0}k=(r[(a[l+16>>2]|0)+156>>0]|0)==0&1;w=0;n=t;while(1){A=n+-1|0;if((n|0)<=0){u=0;A=t;break}if((r[(a[(a[(a[b>>2]|0)+(A<<2)>>2]|0)+16>>2]|0)+156>>0]|0)!=(k|0)){u=0;A=t;break}w=w+1|0;n=A}while(1){A=A+1|0;if((A|0)>=(s|0))break;if((r[(a[(a[(a[b>>2]|0)+(A<<2)>>2]|0)+16>>2]|0)+156>>0]|0)!=(k|0))break;u=u+1|0}DW(i,f);c=a[(a[c>>2]|0)+196>>2]|0;s=a[c+(e<<6)>>2]|0;c=c+(e<<6)+4|0;A=0;while(1){if((A|0)>=(s|0)){l=0;n=t;break}t=(a[(a[c>>2]|0)+(A<<2)>>2]|0)==(l|0)?A:t;A=A+1|0}while(1){A=n+-1|0;if((n|0)<=0){n=0;A=t;break}if((r[(a[(a[(a[c>>2]|0)+(A<<2)>>2]|0)+16>>2]|0)+156>>0]|0)!=(k|0)){n=0;A=t;break}l=l+1|0;n=A}while(1){A=A+1|0;if((A|0)>=(s|0))break;if((r[(a[(a[(a[c>>2]|0)+(A<<2)>>2]|0)+16>>2]|0)+156>>0]|0)!=(k|0))break;n=n+1|0}e=l-n|0;k=w-u|0;if((((e|0)>-1?e:0-e|0)|0)>(((k|0)>-1?k:0-k|0)|0))DW(i,f)}return}function DW(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;f=a[A+16>>2]|0;r=a[f+232>>2]|0;f=f+236|0;i=a[f>>2]|0;n=e+16|0;l=a[(a[n>>2]|0)+236>>2]|0;a[f>>2]=l;f=(a[46741]|0)+16|0;a[(a[(a[(a[f>>2]|0)+196>>2]|0)+(r<<6)+4>>2]|0)+(l<<2)>>2]=A;a[(a[n>>2]|0)+236>>2]=i;a[(a[(a[(a[f>>2]|0)+196>>2]|0)+(r<<6)+4>>2]|0)+(i<<2)>>2]=e;return}function MW(A,e,i){A=A|0;e=e|0;i=i|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0;h=A+16|0;w=a[(a[h>>2]|0)+196>>2]|0;r[w+(e<<6)+48>>0]=0;d=(e|0)>0;B=e+1|0;k=(i|0)!=0;o=e+-1|0;n=0;t=0;i=w;A:while(1){b=(a[i+(e<<6)>>2]|0)+-1|0;u=i+(e<<6)+4|0;l=i+(B<<6)|0;w=n;while(1){if((w|0)>=(b|0)){i=17;break A}s=a[u>>2]|0;c=a[s+(w<<2)>>2]|0;w=w+1|0;s=a[s+(w<<2)>>2]|0;if((a[(a[c+16>>2]|0)+236>>2]|0)>=(a[(a[s+16>>2]|0)+236>>2]|0)){i=5;break A}if(yW(A,c,s)|0)continue;if(d){i=WW(c,s)|0;n=WW(s,c)|0}else{i=0;n=0}if((a[l>>2]|0)>0){i=(zW(c,s)|0)+i|0;n=(zW(s,c)|0)+n|0}if((i|0)>(n|0))break;if((i|0)==(n|0)&(k&(i|0)>0)){i=n;break}}DW(c,s);t=i-n+t|0;n=a[(a[(a[46741]|0)+16>>2]|0)+196>>2]|0;r[n+(e<<6)+49>>0]=0;l=a[h>>2]|0;i=a[l+196>>2]|0;r[i+(e<<6)+48>>0]=1;if((f[l+236>>1]|0)<(e|0)){r[n+(o<<6)+49>>0]=0;r[i+(o<<6)+48>>0]=1}if((f[l+238>>1]|0)<=(e|0)){n=w;continue}r[n+(B<<6)+49>>0]=0;r[i+(B<<6)+48>>0]=1;n=w}if((i|0)==5)gA(86263,85781,770,86297);else if((i|0)==17)return t|0;return 0}function FW(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,l=0.0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0;o=a[46739]|0;h=A+16|0;A=a[(a[h>>2]|0)+196>>2]|0;d=a[A+(e<<6)+4>>2]|0;w=(i|0)>(e|0);k=o+4|0;u=0;while(1){i=a[A+(e<<6)>>2]|0;if((u|0)>=(i|0)){A=0;t=0;break}b=(a[d+(u<<2)>>2]|0)+16|0;A=a[b>>2]|0;A:do{if(w){c=a[A+180>>2]|0;A=0;t=0;while(1){i=a[c+(t<<2)>>2]|0;if(!i)break A;r=a[i+16>>2]|0;if((f[r+154>>1]|0)>0){a[o+(A<<2)>>2]=a[(a[(a[((a[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]<<8|n[r+88>>0];A=A+1|0}t=t+1|0}}else{c=a[A+172>>2]|0;t=0;A=0;while(1){i=a[c+(t<<2)>>2]|0;if(!i)break A;r=a[i+16>>2]|0;if((f[r+154>>1]|0)>0){a[o+(A<<2)>>2]=a[(a[(a[((a[i>>2]&3|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+236>>2]<<8|n[r+48>>0];A=A+1|0}t=t+1|0}}}while(0);A:do{switch(A|0){case 0:{l=-1.0;break}case 1:{l=+(a[o>>2]|0);break}case 2:{l=+(((a[k>>2]|0)+(a[o>>2]|0)|0)/2|0|0);break}default:{K4(o,A,4,60);i=(A|0)/2|0;if(A&1|0){l=+(a[o+(i<<2)>>2]|0);break A}t=a[o+(i<<2)>>2]|0;r=(a[o+(A+-1<<2)>>2]|0)-t|0;A=a[o+(i+-1<<2)>>2]|0;i=A-(a[o>>2]|0)|0;if((i|0)==(r|0)){l=+((A+t|0)/2|0|0);break A}else{l=+(((U(i,t)|0)+(U(A,r)|0)|0)/(i+r|0)|0|0);break A}}}}while(0);s[(a[b>>2]|0)+240>>3]=l;u=u+1|0;A=a[(a[h>>2]|0)+196>>2]|0}while(1){if((t|0)>=(i|0))break;r=a[d+(t<<2)>>2]|0;o=a[r+16>>2]|0;if((a[o+184>>2]|0)==0?(a[o+176>>2]|0)==0:0){A=(JW(r)|0|A&255)&255;i=a[(a[(a[h>>2]|0)+196>>2]|0)+(e<<6)>>2]|0}t=t+1|0}return A|0}function VW(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,b=0,u=0.0,w=0,k=0,o=0,h=0,d=0,B=0;k=a[(a[A+16>>2]|0)+196>>2]|0;B=a[k+(e<<6)+4>>2]|0;k=a[k+(e<<6)>>2]|0;h=(i|0)!=0;o=(f|i|0)==0;f=0;i=k;k=B+(k<<2)|0;while(1){w=i+-1|0;if((i|0)>0)i=B;else break;A:while(1){e:while(1){if(i>>>0>=k>>>0)break A;while(1){if(i>>>0>=k>>>0)break A;b=a[i>>2]|0;u=+s[(a[b+16>>2]|0)+240>>3];if(!(u<0.0))break;i=i+4|0}c=0;while(1){n=c<<24>>24==0;while(1){i=i+4|0;if(i>>>0>=k>>>0)break A;if(n){n=11;break}l=a[i>>2]|0;if(!(a[(a[l+16>>2]|0)+212>>2]|0)){n=13;break}}if((n|0)==11){l=a[i>>2]|0;t=l}else if((n|0)==13)t=l;if(yW(A,b,t)|0)continue e;n=a[l+16>>2]|0;if(+s[n+240>>3]>=0.0)break;c=(a[n+212>>2]|0)==0?c:1}n=~~u;c=~~+s[(a[l+16>>2]|0)+240>>3];if((n|0)>(c|0)|h&(n|0)==(c|0))break}DW(b,t);f=f+1|0}i=w;k=o?k+-4|0:k}if(f|0?(d=a[(a[(a[46741]|0)+16>>2]|0)+196>>2]|0,r[d+(e<<6)+49>>0]=0,(e|0)>0):0)r[d+(e+-1<<6)+49>>0]=0;return}function JW(A){A=A|0;var e=0.0,i=0,r=0,f=0,n=0;n=a[A+16>>2]|0;if((a[n+200>>2]|0)>0){f=a[n+196>>2]|0;A=a[f>>2]|0;A=a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0;i=1;while(1){r=a[f+(i<<2)>>2]|0;if(!r)break;r=a[((a[r>>2]&3|0)==3?r:r+48|0)+40>>2]|0;A=(a[(a[r+16>>2]|0)+236>>2]|0)>(a[(a[A+16>>2]|0)+236>>2]|0)?r:A;i=i+1|0}e=+s[(a[A+16>>2]|0)+240>>3];if(!(e>=0.0))A=1;else{s[n+240>>3]=e+1.0;A=0}}else if((a[n+192>>2]|0)>0){r=a[n+188>>2]|0;i=a[r>>2]|0;A=1;i=a[((a[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0;while(1){f=a[r+(A<<2)>>2]|0;if(!f)break;f=a[((a[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;A=A+1|0;i=(a[(a[f+16>>2]|0)+236>>2]|0)<(a[(a[i+16>>2]|0)+236>>2]|0)?f:i}e=+s[(a[i+16>>2]|0)+240>>3];if(e>0.0){s[n+240>>3]=e+-1.0;A=0}else A=1}else A=1;return A|0}function pW(A,e){A=A|0;e=e|0;return(a[(a[(a[A>>2]|0)+16>>2]|0)+236>>2]|0)-(a[(a[(a[e>>2]|0)+16>>2]|0)+236>>2]|0)|0}function NW(A,e){A=A|0;e=e|0;var i=0,r=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0;o=k;k=k+96|0;w=o+64|0;u=o+48|0;l=o+24|0;r=o;c=e+16|0;s=a[(a[c>>2]|0)+232>>2]|0;b=A+16|0;i=a[(a[b>>2]|0)+196>>2]|0;t=a[i+(s<<6)>>2]|0;do{if((a[i+(s<<6)+8>>2]|0)>=1){a[(a[i+(s<<6)+4>>2]|0)+(t<<2)>>2]=e;a[(a[c>>2]|0)+236>>2]=t;A=a[b>>2]|0;r=a[A+196>>2]|0;i=r+(s<<6)|0;n=a[i>>2]|0;a[i>>2]=n+1;if((n|0)>=(a[r+(s<<6)+8>>2]|0))gA(86377,85781,1346,86413);n=a[(a[(a[(a[46741]|0)+16>>2]|0)+196>>2]|0)+(s<<6)+8>>2]|0;if((t|0)>(n|0)){b=Vh(e)|0;u=a[(a[c>>2]|0)+236>>2]|0;w=a[(a[(a[(a[46741]|0)+16>>2]|0)+196>>2]|0)+(s<<6)+8>>2]|0;a[l>>2]=1359;a[l+4>>2]=b;a[l+8>>2]=u;a[l+12>>2]=s;a[l+16>>2]=w;ao(1,86429,l)|0;break}i=f[A+236>>1]|0;A=f[A+238>>1]|0;if((s|0)<(i|0)|(s|0)>(A<<16>>16|0)){a[u>>2]=1364;a[u+4>>2]=s;a[u+8>>2]=i;a[u+12>>2]=A<<16>>16;ao(1,86502,u)|0;break}if(((a[r+(s<<6)+4>>2]|0)+(t<<2)|0)>>>0>((a[r+(s<<6)+12>>2]|0)+(n<<2)|0)>>>0){t=Vh(e)|0;u=a[(a[b>>2]|0)+196>>2]|0;b=(a[u+(s<<6)+4>>2]|0)+(a[(a[c>>2]|0)+236>>2]<<2)|0;u=(a[u+(s<<6)+12>>2]|0)+(a[(a[(a[(a[46741]|0)+16>>2]|0)+196>>2]|0)+(s<<6)+8>>2]<<2)|0;a[w>>2]=1370;a[w+4>>2]=s;a[w+8>>2]=t;a[w+12>>2]=b;a[w+16>>2]=s;a[w+20>>2]=s;a[w+24>>2]=u;ao(1,86563,w)|0}}else{u=Vh(A)|0;w=Vh(e)|0;a[r>>2]=1339;a[r+4>>2]=u;a[r+8>>2]=w;a[r+12>>2]=s;a[r+16>>2]=t;ao(1,86322,r)|0}}while(0);k=o;return}function RW(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0;l=e+16|0;A:do{if(!i){n=0;while(1){e=a[l>>2]|0;if((n|0)>=(a[e+184>>2]|0))break A;e=a[(a[e+180>>2]|0)+(n<<2)>>2]|0;i=e+-48|0;f=(a[(a[((a[e>>2]&3|0)==2?e:i)+40>>2]|0)+16>>2]|0)+157|0;if(!(r[f>>0]|0)){r[f>>0]=1;uR(A,a[((a[e>>2]&3|0)==2?e:i)+40>>2]|0)}n=n+1|0}}else{n=0;while(1){e=a[l>>2]|0;if((n|0)>=(a[e+176>>2]|0))break A;e=a[(a[e+172>>2]|0)+(n<<2)>>2]|0;i=e+48|0;f=(a[(a[((a[e>>2]&3|0)==3?e:i)+40>>2]|0)+16>>2]|0)+157|0;if(!(r[f>>0]|0)){r[f>>0]=1;uR(A,a[((a[e>>2]&3|0)==3?e:i)+40>>2]|0)}n=n+1|0}}}while(0);return}function XW(A,e){A=A|0;e=e|0;var i=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0;E=k;k=k+16|0;v=E;n=A+16|0;i=a[(a[n>>2]|0)+196>>2]|0;B=a[i+(e<<6)+4>>2]|0;g=e+1|0;A=a[(a[(a[(a[46741]|0)+16>>2]|0)+196>>2]|0)+(g<<6)>>2]|0;if((a[46745]|0)>(A|0))h=a[46746]|0;else{A=A+1|0;a[46745]=A;i=a[46746]|0;if(!i)A=$F(A<<2)|0;else A=eV(i,A<<2)|0;a[46746]=A;i=a[(a[n>>2]|0)+196>>2]|0;h=A}d=i+(g<<6)|0;A=0;while(1){if((A|0)>=(a[d>>2]|0))break;a[h+(A<<2)>>2]=0;A=A+1|0}o=i+(e<<6)|0;w=0;l=0;A=0;c=h;while(1){s=a[o>>2]|0;if((w|0)>=(s|0))break;u=a[(a[(a[B+(w<<2)>>2]|0)+16>>2]|0)+180>>2]|0;A:do{if((l|0)>0){b=0;while(1){n=a[u+(b<<2)>>2]|0;if(!n)break A;s=n+16|0;t=a[(a[(a[((a[n>>2]&3|0)==2?n:n+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;while(1){n=t+1|0;if((t|0)>=(l|0))break;t=n;A=(U(a[c+(n<<2)>>2]|0,f[(a[s>>2]|0)+154>>1]|0)|0)+A|0}b=b+1|0}}}while(0);t=0;while(1){n=a[u+(t<<2)>>2]|0;if(!n)break;c=a[(a[(a[((a[n>>2]&3|0)==2?n:n+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;b=h+(c<<2)|0;a[b>>2]=(a[b>>2]|0)+(f[(a[n+16>>2]|0)+154>>1]|0);l=(c|0)>(l|0)?c:l;t=t+1|0;c=h}w=w+1|0}t=i+(e<<6)+4|0;l=0;while(1){if((l|0)>=(s|0))break;n=a[(a[(a[t>>2]|0)+(l<<2)>>2]|0)+16>>2]|0;if(r[n+145>>0]|0){e=n+180|0;a[v>>2]=a[e>>2];a[v+4>>2]=a[e+4>>2];A=(HW(v,1)|0)+A|0}l=l+1|0}t=a[d>>2]|0;l=i+(g<<6)+4|0;n=0;while(1){if((n|0)>=(t|0))break;i=a[(a[(a[l>>2]|0)+(n<<2)>>2]|0)+16>>2]|0;if(r[i+145>>0]|0){g=i+172|0;a[v>>2]=a[g>>2];a[v+4>>2]=a[g+4>>2];A=(HW(v,-1)|0)+A|0}n=n+1|0}k=E;return A|0}function HW(A,e){A=A|0;e=e|0;var i=0,r=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0;w=(e|0)<1;b=a[A>>2]|0;e=0;A=0;A:while(1){u=a[b+(e<<2)>>2]|0;if(!u)break;e=e+1|0;if(w){t=u+48|0;c=u+16|0;l=e;while(1){i=a[b+(l<<2)>>2]|0;if(!i)continue A;r=a[i+16>>2]|0;n=a[c>>2]|0;if((+s[r+56>>3]-+s[n+56>>3])*+((a[(a[(a[((a[i>>2]&3|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-(a[(a[(a[((a[u>>2]&3|0)==3?u:t)+40>>2]|0)+16>>2]|0)+236>>2]|0)|0)<0.0)A=(U(f[r+154>>1]|0,f[n+154>>1]|0)|0)+A|0;l=l+1|0}}else{t=u+-48|0;c=u+16|0;l=e;while(1){i=a[b+(l<<2)>>2]|0;if(!i)continue A;r=a[i+16>>2]|0;n=a[c>>2]|0;if((+s[r+16>>3]-+s[n+16>>3])*+((a[(a[(a[((a[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)-(a[(a[(a[((a[u>>2]&3|0)==2?u:t)+40>>2]|0)+16>>2]|0)+236>>2]|0)|0)<0.0)A=(U(f[r+154>>1]|0,f[n+154>>1]|0)|0)+A|0;l=l+1|0}}}return A|0}function UW(A){A=A|0;var e=0.0,i=0.0;a[46744]=8;a[47136]=24;s[23215]=.995;A=Ho(A,86685)|0;if(A|0?(e=+$3(A),e>0.0):0){i=e*+(a[46744]|0);a[46744]=~~(i>1.0?i:1.0);e=e*+(a[47136]|0);a[47136]=~~(e>1.0?e:1.0)}return}function xW(A){A=A|0;var e=0,i=0;i=(f[(a[A+16>>2]|0)+238>>1]|0)+2|0;e=qF(i<<2)|0;jW(A,e,i,0)|0;L2(e);return}function TW(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0,c=0,s=0;l=A+16|0;t=qF((f[(a[l>>2]|0)+238>>1]<<2)+8|0)|0;n=cd(A)|0;while(1){if(!n)break;r=t+(a[(a[n+16>>2]|0)+232>>2]<<2)|0;a[r>>2]=(a[r>>2]|0)+1;r=Oo(A,n)|0;while(1){if(!r)break;c=a[r>>2]&3;e=a[(a[(a[((c|0)==3?r:r+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;c=a[(a[(a[((c|0)==2?r:r+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;s=(e|0)>(c|0);i=s?e:c;e=s?c:e;while(1){e=e+1|0;if((e|0)>=(i|0))break;s=t+(e<<2)|0;a[s>>2]=(a[s>>2]|0)+1}r=_o(A,r)|0}n=sd(A,n)|0}r=qF((f[(a[l>>2]|0)+238>>1]<<6)+128|0)|0;i=a[l>>2]|0;a[i+196>>2]=r;e=f[i+236>>1]|0;while(1){if((e|0)>(f[i+238>>1]|0))break;c=t+(e<<2)|0;i=a[c>>2]|0;a[r+(e<<6)>>2]=i;a[r+(e<<6)+8>>2]=i;c=qF((a[c>>2]<<2)+4|0)|0;i=a[l>>2]|0;s=a[i+196>>2]|0;a[s+(e<<6)+4>>2]=c;a[s+(e<<6)+12>>2]=c;e=e+1|0;r=s}L2(t);return}function jW(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var n=0,l=0,t=0,c=0,b=0,u=0;u=A+16|0;l=1;while(1){n=a[u>>2]|0;if((l|0)>(a[n+180>>2]|0))break;b=jW(a[(a[n+184>>2]|0)+(l<<2)>>2]|0,e,i,r)|0;l=l+1|0;r=b}A:do{if((vL(A)|0)!=(A|0)){Y6(e|0,0,i<<2|0)|0;n=cd(A)|0;while(1){if(!n)break;c=n+16|0;a[e+(a[(a[c>>2]|0)+232>>2]<<2)>>2]=1;l=Oo(A,n)|0;while(1){if(!l)break;b=l+-48|0;t=a[(a[c>>2]|0)+232>>2]|0;while(1){i=t+1|0;if((t|0)>=(a[(a[(a[((a[l>>2]&3|0)==2?l:b)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;a[e+(i<<2)>>2]=1;t=i}l=_o(A,l)|0}n=sd(A,n)|0}n=a[u>>2]|0;l=f[n+236>>1]|0;while(1){if((l|0)>(f[n+238>>1]|0))break A;if(!(a[e+(l<<2)>>2]|0)){if(!r)r=NB(vL(A)|0,86675,1)|0;n=gd(r,0,1)|0;Td(n,137447,304,1)|0;b=n+16|0;t=a[b>>2]|0;a[t+232>>2]=l;s[t+96>>3]=.5;s[t+88>>3]=.5;s[t+80>>3]=1.0;a[t+216>>2]=1;a[t+176>>2]=0;t=qF(20)|0;c=a[b>>2]|0;a[c+172>>2]=t;a[c+184>>2]=0;c=qF(20)|0;a[(a[b>>2]|0)+180>>2]=c;kd(A,n,1)|0;n=a[u>>2]|0}l=l+1|0}}}while(0);return r|0}function PW(A){A=A|0;var e=0,i=0;cW(A);e=A+16|0;A=1;while(1){i=a[e>>2]|0;if((A|0)>(a[i+180>>2]|0))break;PW(a[(a[i+184>>2]|0)+(A<<2)>>2]|0);A=A+1|0}return}function SW(A){A=A|0;var e=0,i=0;e=a[A>>2]&3;i=OW(a[((e|0)==3?A:A+48|0)+40>>2]|0)|0;e=a[17308+(i*12|0)+((OW(a[((e|0)==2?A:A+-48|0)+40>>2]|0)|0)<<2)>>2]|0;A=(a[A+16>>2]|0)+156|0;a[A>>2]=U(a[A>>2]|0,e)|0;return}function OW(A){A=A|0;A=a[A+16>>2]|0;if((r[A+156>>0]|0)==1)A=2;else A=(r[A+160>>0]|0)<2&1;return A|0}function KW(A,e){A=A|0;e=e|0;if(a[(a[A+16>>2]|0)+192>>2]|0){ID(A);_W(A);if(r[194954]|0)JD(A);qW(A);if(eM(A)|0)_W(A);$W(A);if(JV(A,2,Az(A)|0)|0?(ez(A),JV(A,2,Az(A)|0)|0):0)gA(86693,86721,134,86732);iz(A);rz(A,e);fz(A)}return}function _W(A){A=A|0;var e=0,i=0,n=0,l=0,t=0.0,c=0.0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0.0,G=0.0;E=A+16|0;e=a[E>>2]|0;C=a[e+196>>2]|0;g=f[e+236>>1]|0;while(1){if((g|0)>(f[e+238>>1]|0))break;w=C+(g<<6)|0;k=C+(g<<6)+4|0;o=C+(g<<6)+40|0;h=C+(g<<6)+24|0;d=C+(g<<6)+32|0;B=C+(g<<6)+16|0;u=0;while(1){if((u|0)>=(a[w>>2]|0))break;b=(a[(a[k>>2]|0)+(u<<2)>>2]|0)+16|0;e=a[b>>2]|0;t=+s[e+80>>3]*.5;l=a[e+204>>2]|0;A:do{if(l){n=0;while(1){i=a[l+(n<<2)>>2]|0;if(!i)break A;I=a[i>>2]&3;if((a[((I|0)==3?i:i+48|0)+40>>2]|0)==(a[((I|0)==2?i:i+-48|0)+40>>2]|0)?(v=a[(a[i+16>>2]|0)+96>>2]|0,(v|0)!=0):0){c=+s[v+32>>3]*.5;t=t>c?t:c}n=n+1|0}}}while(0);if(+s[o>>3] >3]=t;s[o>>3]=t}if(+s[d>>3] >3]=t;s[d>>3]=t}i=a[e+212>>2]|0;if(i|0){if((i|0)==(A|0))n=0;else{n=kR(i,a[47144]|0,8,0)|0;e=a[b>>2]|0}l=a[e+232>>2]|0;i=a[i+16>>2]|0;e=i+128|0;t=t+ +(n|0);if((l|0)==(f[i+236>>1]|0)){c=+s[e>>3];s[e>>3]=c>t?c:t}e=i+120|0;if((l|0)==(f[i+238>>1]|0)){c=+s[e>>3];s[e>>3]=c>t?c:t}}u=u+1|0}g=g+1|0;e=a[E>>2]|0}u=zz(A)|0;n=a[E>>2]|0;e=f[n+238>>1]|0;s[(a[(a[a[C+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]=+s[C+(e<<6)+16>>3];i=f[n+236>>1]|0;l=n+252|0;c=0.0;while(1){b=e+-1|0;if((e|0)<=(i|0))break;Z=+s[C+(b<<6)+32>>3]+ +s[C+(e<<6)+40>>3]+ +(a[l>>2]|0);t=+s[C+(e<<6)+24>>3]+8.0+ +s[C+(b<<6)+16>>3];t=Z>t?Z:t;if((a[C+(b<<6)>>2]|0)>0)s[(a[(a[a[C+(b<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]=+s[(a[(a[a[C+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]+t;c=c>t?c:t;e=b}A:do{if((u|0)!=0?(a[n+116>>2]&1|0)!=0:0){Yz(A,0);n=a[E>>2]|0;if(r[n+276>>0]|0){e=f[n+238>>1]|0;i=f[n+236>>1]|0;t=+s[(a[(a[a[C+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];c=0.0;while(1){l=e+-1|0;if((e|0)<=(i|0))break A;G=+s[(a[(a[a[C+(l<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];Z=G-t;t=G;c=c>Z?c:Z;e=l}}}}while(0);A:do{if(r[n+276>>0]|0){l=f[n+236>>1]|0;i=f[n+238>>1]|0;while(1){e=i+-1|0;if((i|0)<=(l|0))break A;if((a[C+(e<<6)>>2]|0)<=0){i=e;continue}s[(a[(a[a[C+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]=+s[(a[(a[a[C+(i<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]+c;i=e}}}while(0);e=n+192|0;while(1){e=a[e>>2]|0;if(!e)break;e=a[e+16>>2]|0;s[e+24>>3]=+s[(a[(a[a[C+(a[e+232>>2]<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];e=e+164|0}return}function qW(A){A=A|0;var e=0,i=0,r=0;Qz(A);e=(a[A+16>>2]|0)+192|0;while(1){e=a[e>>2]|0;if(!e)break;r=e+16|0;e=a[r>>2]|0;i=a[e+224>>2]|0;if(i){Lz(A,i);e=a[r>>2]|0}i=a[e+228>>2]|0;if(!i)i=e;else{Lz(A,i);i=a[r>>2]|0}r=a[i+204>>2]|0;if(r|0){e=0;while(1)if(!(a[r+(e<<2)>>2]|0))break;else e=e+1|0}e=i+164|0}return}function $W(A){A=A|0;wz(A);kz(A);oz(A);hz(A);dz(A);return}function Az(A){A=A|0;var e=0,i=0.0;e=Ho(A,86921)|0;if(!e)A=2147483647;else{i=+$3(e);A=~~(i*+(gh(A)|0))}return A|0}function ez(A){A=A|0;var e=0,i=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0;d=A+16|0;e=a[d>>2]|0;h=f[e+236>>1]|0;while(1){o=f[e+238>>1]|0;if((h|0)>(o|0)){B=19;break}w=a[e+196>>2]|0;k=w+(h<<6)|0;u=a[k>>2]|0;w=w+(h<<6)+4|0;b=0;i=0;A:while(1){if((b|0)>=(u|0)){B=14;break}i=a[(a[w>>2]|0)+(b<<2)>>2]|0;l=a[i+16>>2]|0;t=a[l+256>>2]|0;e:do{if(t|0){n=0;while(1){c=a[t+(n<<2)>>2]|0;if(!c)break e;s=a[c>>2]&3;if((a[(a[(a[((s|0)==2?c:c+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(h|0))break A;if((a[(a[(a[((s|0)==3?c:c+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(h|0))break A;else n=n+1|0}}}while(0);l=a[l+248>>2]|0;e:do{if(l|0){n=0;while(1){t=a[l+(n<<2)>>2]|0;if(!t)break e;c=a[t>>2]&3;if((a[(a[(a[((c|0)==3?t:t+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(h|0))break A;if((a[(a[(a[((c|0)==2?t:t+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(h|0))break A;else n=n+1|0}}}while(0);b=b+1|0}if((B|0)==14){B=0;if(i){i=a[a[w>>2]>>2]|0;e=a[a[k+(((h|0)<(o|0)?1:-1)<<6)+4>>2]>>2]|0;if(!e){B=16;break}k=Yy(A)|0;o=k+16|0;r[(a[o>>2]|0)+156>>0]=2;bz(k,i,0.0,0)|0;bz(k,e,0.0,0)|0;a[(a[o>>2]|0)+232>>2]=a[(a[((a[(a[i+16>>2]|0)+232>>2]|0)<(a[(a[e+16>>2]|0)+232>>2]|0)?i:e)+16>>2]|0)+232>>2];e=a[d>>2]|0}}h=h+1|0}if((B|0)==16)gA(86829,86721,111,86832);else if((B|0)==19)return}function iz(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0,c=0;A=a[A+16>>2]|0;l=a[A+196>>2]|0;i=f[A+238>>1]|0;A=f[A+236>>1]|0;while(1){if((A|0)>(i|0))break;r=a[l+(A<<6)>>2]|0;n=l+(A<<6)+4|0;e=0;while(1){if((e|0)>=(r|0))break;c=a[(a[(a[n>>2]|0)+(e<<2)>>2]|0)+16>>2]|0;t=c+232|0;s[c+16>>3]=+(a[t>>2]|0);a[t>>2]=A;e=e+1|0}A=A+1|0}return}function rz(A,e){A=A|0;e=e|0;var i=0,r=0.0,n=0,l=0.0,t=0,c=0,b=0.0,u=0,w=0,k=0,o=0;az(A,A);n=A+16|0;c=a[n>>2]|0;A:do{if((f[c+238>>1]|0)>0?(t=a[c+8>>2]|0,i=a[t+84>>2]|0,i|0):0){k=~~(+s[c+32>>3]-+s[c+16>>3]);u=~~(+s[c+40>>3]-+s[c+24>>3]);o=(a[c+116>>2]&1|0)==0;w=o?u:k;u=o?k:u;if((i|0)==4){i=nz(A)|0;c=a[n>>2]|0;t=a[c+8>>2]|0}else i=(i|0)==2&1;e:do{if(!(i<<24>>24)){switch(a[t+84>>2]|0){case 5:{r=+s[t+64>>3];if(r<=0.0)break A;l=r/+s[c+32>>3];b=+s[t+72>>3]/+s[c+40>>3];r=l1.0&b>1.0){b=r;break e}else break A}case 1:break;default:break A}l=+s[t+16>>3];r=+(w|0)/+(u|0);if(r >3];if(r<=0.0)break A;l=r/+(u|0);r=+s[t+72>>3]/+(w|0);if(l<1.0|r<1.0)if(l >2]&1|0)==0;l=i?r:b;r=i?b:r;i=c+192|0;while(1){i=a[i>>2]|0;if(!i)break;i=a[i+16>>2]|0;o=i+16|0;b=+s[o>>3]*r;s[o>>3]=+(~~(b+(b>=0.0?.5:-.5))|0);o=i+24|0;b=+s[o>>3]*l;s[o>>3]=+(~~(b+(b>=0.0?.5:-.5))|0);i=i+164|0}lz(A,r,l)}}while(0);if(e|0)tz(A,e);return}function fz(A){A=A|0;var e=0,i=0,f=0,n=0,l=0;l=A+16|0;A=(a[l>>2]|0)+192|0;while(1){A=a[A>>2]|0;if(!A)break;n=A+16|0;e=0;while(1){A=a[n>>2]|0;f=a[A+180>>2]|0;i=a[f+(e<<2)>>2]|0;if(!i)break;L2(a[i+16>>2]|0);L2(i);e=e+1|0}if(f){L2(f);A=a[n>>2]|0}e=a[A+172>>2]|0;if(e){L2(e);A=a[n>>2]|0}f=A+256|0;i=a[f+4>>2]|0;A=A+180|0;a[A>>2]=a[f>>2];a[A+4>>2]=i;A=a[n>>2]|0;i=A+248|0;f=a[i+4>>2]|0;A=A+172|0;a[A>>2]=a[i>>2];a[A+4>>2]=f;A=(a[n>>2]|0)+164|0}A=0;e=a[(a[l>>2]|0)+192>>2]|0;A:while(1){n=(A|0)==0;f=A+16|0;A=e;while(1){if(!A)break A;i=a[A+16>>2]|0;e=a[i+164>>2]|0;if((r[i+156>>0]|0)!=2)continue A;if(n)a[(a[l>>2]|0)+192>>2]=e;else a[(a[f>>2]|0)+164>>2]=e;L2(i);L2(A);A=e}}a[(a[(a[(a[l>>2]|0)+192>>2]|0)+16>>2]|0)+168>>2]=0;return}function az(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;r=A+16|0;i=1;while(1){f=a[r>>2]|0;if((i|0)>(a[f+180>>2]|0))break;az(a[(a[f+184>>2]|0)+(i<<2)>>2]|0,e);i=i+1|0}sz(A,e);return}function nz(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0.0,c=0.0,b=0,u=0.0,w=0.0,o=0.0,h=0.0,d=0,B=0,g=0;B=k;k=k+80|0;r=B+64|0;i=B+48|0;f=B+16|0;b=B;d=B+32|0;A=A+16|0;e=a[(a[A>>2]|0)+8>>2]|0;g=e+48|0;a[f>>2]=a[g>>2];a[f+4>>2]=a[g+4>>2];a[f+8>>2]=a[g+8>>2];a[f+12>>2]=a[g+12>>2];if((!(+s[f>>3]<.001)?(n=f+8|0,!(+s[n>>3]<.001)):0)?(l=e+32|0,a[b>>2]=a[l>>2],a[b+4>>2]=a[l+4>>2],a[b+8>>2]=a[l+8>>2],a[b+12>>2]=a[l+12>>2],a[i>>2]=a[f>>2],a[i+4>>2]=a[f+4>>2],a[i+8>>2]=a[f+8>>2],a[i+12>>2]=a[f+12>>2],a[r>>2]=a[l>>2],a[r+4>>2]=a[l+4>>2],a[r+8>>2]=a[l+8>>2],a[r+12>>2]=a[l+12>>2],cz(d,i,r),a[f>>2]=a[d>>2],a[f+4>>2]=a[d+4>>2],a[f+8>>2]=a[d+8>>2],a[f+12>>2]=a[d+12>>2],a[i>>2]=a[d>>2],a[i+4>>2]=a[d+4>>2],a[i+8>>2]=a[d+8>>2],a[i+12>>2]=a[d+12>>2],a[r>>2]=a[b>>2],a[r+4>>2]=a[b+4>>2],a[r+8>>2]=a[b+8>>2],a[r+12>>2]=a[b+12>>2],cz(f,i,r),l=a[A>>2]|0,t=+s[l+32>>3],c=+s[l+40>>3],u=+s[f>>3],w=u/t,o=+s[n>>3],h=o/c,!(w>=1.0&h>=1.0)):0){w=w .5?w:.5;h=+H(+(w*c/o))*o/c;o=+H(+(w*t/u))*u/t*t;A=a[l+8>>2]|0;s[A+64>>3]=o;s[A+72>>3]=h*c;A=1}else A=0;k=B;return A|0}function lz(A,e,i){A=A|0;e=+e;i=+i;var r=0,f=0;r=A+16|0;A=1;while(1){f=a[r>>2]|0;if((A|0)>(a[f+180>>2]|0))break;lz(a[(a[f+184>>2]|0)+(A<<2)>>2]|0,e,i);A=A+1|0}r=f+16|0;s[r>>3]=+s[r>>3]*e;r=f+24|0;s[r>>3]=+s[r>>3]*i;r=f+32|0;s[r>>3]=+s[r>>3]*e;f=f+40|0;s[f>>3]=+s[f>>3]*i;return}function tz(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0,n=0,l=0.0,t=0,c=0,b=0,u=0;b=k;k=k+32|0;t=b+24|0;n=b+16|0;f=b;u=a[A+16>>2]|0;r=+s[u+32>>3]-+s[u+16>>3];i=+s[u+40>>3]-+s[u+24>>3];l=r/i;if(0){}i=+s[e>>3];do{if(!(l>i*1.1)){A=e+24|0;if(!(l<=i*.8)){a[A>>2]=0;c=9;break}a[A>>2]=-1;if(0){}}else{a[e+24>>2]=~~(i*+((a[e+20>>2]|0)-(a[e+16>>2]|0)|0)/l);c=9}}while(0);if((c|0)==9?0:0){u=a[15712]|0;a[t>>2]=a[e+24>>2];f3(u,86815,t)|0}k=b;return}function cz(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;r=+s[e+8>>3]-+s[i+8>>3];s[A>>3]=+s[e>>3]-+s[i>>3];s[A+8>>3]=r;return}function sz(A,e){A=A|0;e=e|0;var i=0,n=0.0,l=0.0,t=0,c=0,b=0,u=0.0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0.0;B=(vL(A)|0)==(A|0);E=A+16|0;C=a[E>>2]|0;A:do{if(B){i=f[C+236>>1]|0;A=f[C+238>>1]|0;h=A<<16>>16;d=C+196|0;B=C+196|0;o=i<<16>>16;l=-2147483647.0;n=2147483647.0;while(1){if((o|0)>(h|0))break;t=a[d>>2]|0;k=a[t+(o<<6)>>2]|0;if((k|0)!=0?(g=a[t+(o<<6)+4>>2]|0,v=a[g>>2]|0,(v|0)!=0):0){b=1;t=v;while(1){t=a[t+16>>2]|0;c=r[t+156>>0]|0;if(!((b|0)<(k|0)&c<<24>>24!=0))break;t=a[g+(b<<2)>>2]|0;b=b+1|0}if(!(c<<24>>24)){u=+s[t+16>>3]-+s[t+88>>3];w=n>2]|0)+(o<<6)+4>>2]|0;c=k+-2|0;t=k+-1|0;while(1){t=a[(a[b+(t<<2)>>2]|0)+16>>2]|0;if(!(r[t+156>>0]|0))break;else{t=c;c=c+-1|0}}I=+s[t+96>>3]+ +s[t+16>>3];l=l>I?l:I;n=w?n:u}}o=o+1|0}c=a[C+180>>2]|0;b=C+184|0;t=1;while(1){if((t|0)>(c|0))break A;v=a[(a[(a[b>>2]|0)+(t<<2)>>2]|0)+16>>2]|0;I=+s[v+16>>3]+-8.0;u=+s[v+32>>3]+8.0;t=t+1|0;l=l>u?l:u;n=n>2]|0)+16>>2]|0)+232>>2]|0);n=+(a[(a[(a[C+256>>2]|0)+16>>2]|0)+232>>2]|0);i=f[C+236>>1]|0;A=f[C+238>>1]|0}}while(0);e=a[(a[e+16>>2]|0)+196>>2]|0;u=+s[(a[(a[a[e+(A<<16>>16<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]-+s[C+120>>3];I=+s[C+128>>3]+ +s[(a[(a[a[e+(i<<16>>16<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3];s[C+16>>3]=n;s[C+24>>3]=u;e=a[E>>2]|0;s[e+32>>3]=l;s[e+40>>3]=I;return}function bz(A,e,i,r){A=A|0;e=e|0;i=+i;r=r|0;var n=0,l=0,t=0,c=0;t=qF(96)|0;c=t+48|0;a[c>>2]=a[c>>2]|3;a[t>>2]=a[t>>2]&-4|2;n=qF(176)|0;l=t+16|0;a[l>>2]=n;a[((a[t>>2]&3|0)==3?t:c)+40>>2]=A;a[((a[t>>2]&3|0)==2?t:t+-48|0)+40>>2]=e;if(i>65535.0){uz(i);i=65535.0;n=a[l>>2]|0}f[n+170>>1]=~~(i+(i>=0.0?.5:-.5));a[n+156>>2]=r;vy(t)|0;return t|0}function uz(A){A=+A;var e=0,i=0;e=k;k=k+16|0;i=e;s[i>>3]=A;a[i+8>>2]=65535;ao(1,86845,i)|0;k=e;return}function wz(A){A=A|0;var e=0,i=0,r=0,f=0;A=(a[A+16>>2]|0)+192|0;while(1){A=a[A>>2]|0;if(!A)break;f=A+16|0;r=a[f>>2]|0;A=r+172|0;i=a[A+4>>2]|0;r=r+248|0;a[r>>2]=a[A>>2];a[r+4>>2]=i;r=a[f>>2]|0;i=r+180|0;A=a[i+4>>2]|0;r=r+256|0;a[r>>2]=a[i>>2];a[r+4>>2]=A;r=a[f>>2]|0;A=a[r+180>>2]|0;i=0;while(1)if(!(a[A+(i<<2)>>2]|0))break;else i=i+1|0;e=a[r+172>>2]|0;A=0;while(1)if(!(a[e+(A<<2)>>2]|0))break;else A=A+1|0;a[r+176>>2]=0;A=qF((A+i<<2)+16|0)|0;r=a[f>>2]|0;a[r+172>>2]=A;a[r+184>>2]=0;r=qF(16)|0;A=a[f>>2]|0;a[A+180>>2]=r;A=A+164|0}return}function kz(A){A=A|0;var e=0,i=0,n=0.0,t=0,c=0,b=0,u=0,w=0,o=0.0,h=0,d=0,B=0,g=0.0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0.0,Q=0.0;G=k;k=k+16|0;C=G;I=A+16|0;v=a[I>>2]|0;Z=a[v+196>>2]|0;A=(r[(a[(a[A+60>>2]|0)+16>>2]|0)+113>>0]&1)!=0;E=a[v+248>>2]|0;a[C>>2]=E;a[C+4>>2]=A?5:E;E=f[v+236>>1]|0;A=v;while(1){if((E|0)>(f[A+238>>1]|0))break;d=Z+(E<<6)+4|0;a[(a[(a[a[d>>2]>>2]|0)+16>>2]|0)+232>>2]=0;B=Z+(E<<6)|0;g=+(a[C+((E&1)<<2)>>2]|0);o=0.0;c=0;A:while(1){if((c|0)>=(a[B>>2]|0))break;e=a[d>>2]|0;b=a[e+(c<<2)>>2]|0;v=b+16|0;A=a[v>>2]|0;n=+s[A+96>>3];s[A+240>>3]=n;if((a[A+208>>2]|0)>0){t=0;e=0;while(1){i=a[(a[A+204>>2]|0)+(t<<2)>>2]|0;if(!i)break;h=a[i>>2]&3;if((a[((h|0)==3?i:i+48|0)+40>>2]|0)==(a[((h|0)==2?i:i+-48|0)+40>>2]|0)){e=(QN(i)|0)+e|0;A=a[v>>2]|0}t=t+1|0}h=A+96|0;n=+s[h>>3]+ +(e|0);s[h>>3]=n;e=a[d>>2]|0}h=c+1|0;e=a[e+(h<<2)>>2]|0;if(e){w=e+16|0;n=n+g+ +s[(a[w>>2]|0)+88>>3];bz(b,e,n,0)|0;A=~~(n+o);a[(a[w>>2]|0)+232>>2]=A;o=+(A|0);A=a[v>>2]|0}e=a[A+112>>2]|0;if(e){t=a[A+256>>2]|0;c=a[t>>2]|0;t=a[t+4>>2]|0;A=(a[(a[(a[((a[c>>2]&3|0)==2?c:c+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0)>(a[(a[(a[((a[t>>2]&3|0)==2?t:t+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0);i=A?t:c;t=A?c:t;c=e+16|0;A=a[c>>2]|0;n=+((U(a[(a[I>>2]|0)+248>>2]|0,l[A+170>>1]|0)|0)/2|0|0);w=a[i>>2]&3;e=a[((w|0)==2?i:i+-48|0)+40>>2]|0;i=a[((w|0)==3?i:i+48|0)+40>>2]|0;if(!(Gz(i,e)|0))bz(e,i,+(~~(+s[(a[e+16>>2]|0)+96>>3]+n+ +s[(a[i+16>>2]|0)+88>>3])|0),a[A+156>>2]|0)|0;A=a[t>>2]&3;e=a[((A|0)==3?t:t+48|0)+40>>2]|0;A=a[((A|0)==2?t:t+-48|0)+40>>2]|0;if(!(Gz(A,e)|0)){bz(e,A,+(~~(+s[(a[e+16>>2]|0)+96>>3]+n+ +s[(a[A+16>>2]|0)+88>>3])|0),a[(a[c>>2]|0)+156>>2]|0)|0;w=0}else w=0}else w=0;while(1){A=a[v>>2]|0;if((w|0)>=(a[A+192>>2]|0)){c=h;continue A}b=a[(a[A+188>>2]|0)+(w<<2)>>2]|0;c=a[b>>2]&3;i=a[((c|0)==3?b:b+48|0)+40>>2]|0;c=a[((c|0)==2?b:b+-48|0)+40>>2]|0;t=(a[(a[i+16>>2]|0)+236>>2]|0)<(a[(a[c+16>>2]|0)+236>>2]|0);e=t?i:c;i=t?c:i;n=+s[(a[i+16>>2]|0)+88>>3]+ +s[(a[e+16>>2]|0)+96>>3];c=b+16|0;t=~~(n+ +(U(a[(a[I>>2]|0)+248>>2]|0,l[(a[c>>2]|0)+170>>1]|0)|0));u=dy(e,i)|0;if(!u){A=a[c>>2]|0;if(!(a[A+96>>2]|0))bz(e,i,+(t|0),a[A+156>>2]|0)|0}else{m=+(t|0);A=a[c>>2]|0;Q=+s[A+136>>3];n=n+ +(a[(a[I>>2]|0)+248>>2]|0)+ +(~~(Q+(Q>=0.0?.5:-.5))|0);e=~~(n 65535){uz(+(e|0));e=65535;A=a[c>>2]|0}c=a[u+16>>2]|0;t=c+170|0;i=l[t>>1]|0;f[t>>1]=(e|0)<(i|0)?i:e;c=c+156|0;a[c>>2]=a[(a[((a[c>>2]|0)>(a[A+156>>2]|0)?u:b)+16>>2]|0)+156>>2]}w=w+1|0}}E=E+1|0;A=a[I>>2]|0}k=G;return}function oz(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0;e=(a[A+16>>2]|0)+192|0;while(1){e=a[e>>2]|0;if(!e)break;n=e+16|0;e=a[n>>2]|0;i=a[e+256>>2]|0;A:do{if(i){f=0;while(1){i=a[i+(f<<2)>>2]|0;if(!i)break A;w=Yy(A)|0;e=w+16|0;r[(a[e>>2]|0)+156>>0]=2;b=i+16|0;c=a[b>>2]|0;l=~~(+s[c+56>>3]-+s[c+16>>3]);u=(l|0)>0;t=u?0:0-l|0;l=u?l:0;u=i+48|0;bz(w,a[((a[i>>2]&3|0)==3?i:u)+40>>2]|0,+(l+1|0),a[c+156>>2]|0)|0;c=i+-48|0;bz(w,a[((a[i>>2]&3|0)==2?i:c)+40>>2]|0,+(t+1|0),a[(a[b>>2]|0)+156>>2]|0)|0;b=a[i>>2]&3;l=(a[(a[(a[((b|0)==3?i:u)+40>>2]|0)+16>>2]|0)+232>>2]|0)-l|0;i=(a[(a[(a[((b|0)==2?i:c)+40>>2]|0)+16>>2]|0)+232>>2]|0)-t|0;a[(a[e>>2]|0)+232>>2]=((l|0)<(i|0)?l:i)+-1;e=a[n>>2]|0;f=f+1|0;i=a[e+256>>2]|0}}}while(0);e=e+164|0}return}function hz(A){A=A|0;if((a[(a[A+16>>2]|0)+180>>2]|0)>0){vz(A);Ez(A);Cz(A);Iz(A)}return}function dz(A){A=A|0;var e=0.0,i=0.0,r=0,f=0;r=A+16|0;f=a[(a[r>>2]|0)+8>>2]|0;if((a[f+84>>2]|0)==3?(e=+s[f+64>>3],i=+s[f+72>>3],!(i*e<=1.0)):0){Bz(A);f=a[r>>2]|0;i=(a[f+116>>2]&1|0)==0?e:i;bz(a[f+256>>2]|0,a[f+260>>2]|0,i<65535.0?i:65535.0,1e3)|0}return}function Bz(A){A=A|0;var e=0,i=0,r=0.0,n=0,l=0,t=0,c=0,b=0,u=0;u=k;k=k+16|0;b=u;i=kR(A,a[47144]|0,8,0)|0;gz(A);l=A+16|0;n=a[l>>2]|0;t=a[n+256>>2]|0;c=a[n+260>>2]|0;r=+(i|0);i=f[n+236>>1]|0;while(1){if((i|0)>(f[n+238>>1]|0))break;e=a[n+196>>2]|0;do{if(a[e+(i<<6)>>2]|0){e=a[a[e+(i<<6)+4>>2]>>2]|0;if(!e){a[b>>2]=Vh(A)|0;a[b+4>>2]=i;ao(1,86929,b)|0;break}else{bz(t,e,+s[(a[e+16>>2]|0)+88>>3]+r+ +s[n+96>>3],0)|0;n=a[l>>2]|0;e=a[n+196>>2]|0;e=a[(a[e+(i<<6)+4>>2]|0)+((a[e+(i<<6)>>2]|0)+-1<<2)>>2]|0;bz(e,c,+s[(a[e+16>>2]|0)+96>>3]+r+ +s[n+64>>3],0)|0;break}}}while(0);i=i+1|0;n=a[l>>2]|0}k=u;return}function gz(A){A=A|0;var e=0,i=0,f=0;e=A+16|0;if(!(a[(a[e>>2]|0)+256>>2]|0)){f=Yy(vL(A)|0)|0;r[(a[f+16>>2]|0)+156>>0]=2;i=Yy(vL(A)|0)|0;r[(a[i+16>>2]|0)+156>>0]=2;if((a[(a[e>>2]|0)+12>>2]|0?(vL(A)|0)!=(A|0):0)?(a[(a[(Zd(A)|0)+16>>2]|0)+116>>2]&1|0)==0:0){A=a[e>>2]|0;bz(f,i,+(~~+s[A+48+((+s[A+48>>3]>+s[A+80>>3]?0:2)<<4)>>3]|0),0)|0}e=a[e>>2]|0;a[e+256>>2]=f;a[e+260>>2]=i}return}function vz(A){A=A|0;var e=0,i=0;do{if((vL(A)|0)!=(A|0)){Bz(A);A=A+16|0;e=a[A>>2]|0;e=dy(a[e+256>>2]|0,a[e+260>>2]|0)|0;if(!e){i=a[A>>2]|0;bz(a[i+256>>2]|0,a[i+260>>2]|0,1.0,128)|0;break}else{i=(a[e+16>>2]|0)+156|0;a[i>>2]=(a[i>>2]|0)+128;break}}else A=A+16|0}while(0);e=1;while(1){i=a[A>>2]|0;if((e|0)>(a[i+180>>2]|0))break;vz(a[(a[i+184>>2]|0)+(e<<2)>>2]|0);e=e+1|0}return}function Ez(A){A=A|0;var e=0,i=0,n=0,l=0,t=0,c=0,b=0,u=0.0,w=0,k=0;c=kR(A,a[47144]|0,8,0)|0;k=A+16|0;e=a[k>>2]|0;u=+(c|0);c=f[e+236>>1]|0;while(1){if((c|0)>(f[e+238>>1]|0)){i=1;break}e=a[e+196>>2]|0;A:do{if(a[e+(c<<6)>>2]|0?(b=a[a[e+(c<<6)+4>>2]>>2]|0,b|0):0){l=b+16|0;i=a[(a[l>>2]|0)+236>>2]|0;while(1){if((i|0)<=0)break;i=i+-1|0;t=a[(a[(a[(a[(vL(A)|0)+16>>2]|0)+196>>2]|0)+(c<<6)+4>>2]|0)+(i<<2)>>2]|0;n=t+16|0;e=a[n>>2]|0;if(!(r[e+156>>0]|0)){w=10;break}if(Zz(A,t)|0){w=9;break}}if((w|0)==9){e=a[n>>2]|0;w=10}if((w|0)==10){w=0;bz(t,a[(a[k>>2]|0)+256>>2]|0,+s[e+96>>3]+u,0)|0}i=(a[(a[(a[k>>2]|0)+196>>2]|0)+(c<<6)>>2]|0)+(a[(a[l>>2]|0)+236>>2]|0)|0;while(1){if((i|0)>=(a[(a[(a[(vL(A)|0)+16>>2]|0)+196>>2]|0)+(c<<6)>>2]|0))break A;l=a[(a[(a[(a[(vL(A)|0)+16>>2]|0)+196>>2]|0)+(c<<6)+4>>2]|0)+(i<<2)>>2]|0;n=l+16|0;e=a[n>>2]|0;if(!(r[e+156>>0]|0))break;if(!(Zz(A,l)|0))i=i+1|0;else{w=15;break}}if((w|0)==15){w=0;e=a[n>>2]|0}bz(a[(a[k>>2]|0)+260>>2]|0,l,+s[e+88>>3]+u,0)|0}}while(0);c=c+1|0;e=a[k>>2]|0}while(1){if((i|0)>(a[e+180>>2]|0))break;Ez(a[(a[e+184>>2]|0)+(i<<2)>>2]|0);i=i+1|0;e=a[k>>2]|0}return}function Cz(A){A=A|0;var e=0,i=0.0,r=0,f=0,n=0;r=kR(A,a[47144]|0,8,0)|0;gz(A);e=A+16|0;i=+(r|0);A=1;while(1){r=a[e>>2]|0;if((A|0)>(a[r+180>>2]|0))break;r=a[(a[r+184>>2]|0)+(A<<2)>>2]|0;gz(r);f=a[e>>2]|0;n=r+16|0;bz(a[f+256>>2]|0,a[(a[n>>2]|0)+256>>2]|0,+s[f+96>>3]+i,0)|0;f=a[e>>2]|0;bz(a[(a[n>>2]|0)+260>>2]|0,a[f+260>>2]|0,+s[f+64>>3]+i,0)|0;Cz(r);A=A+1|0}return}function Iz(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0.0,w=0,k=0;e=kR(A,a[47144]|0,8,0)|0;w=A+16|0;A=1;while(1){r=a[w>>2]|0;i=a[r+180>>2]|0;if((A|0)>(i|0))break;gz(a[(a[r+184>>2]|0)+(A<<2)>>2]|0);A=A+1|0}u=+(e|0);b=1;A=i;e=r;while(1){if((b|0)>(A|0))break;s=b+1|0;c=s;while(1){i=a[e+184>>2]|0;r=a[i+(b<<2)>>2]|0;if((c|0)>(A|0))break;i=a[i+(c<<2)>>2]|0;n=(f[(a[r+16>>2]|0)+236>>1]|0)>(f[(a[i+16>>2]|0)+236>>1]|0);t=n?i:r;i=n?r:i;r=a[t+16>>2]|0;n=a[i+16>>2]|0;k=f[n+236>>1]|0;l=k<<16>>16;if((f[r+238>>1]|0)>=k<<16>>16){A=(a[(a[(a[a[(a[r+196>>2]|0)+(l<<6)+4>>2]>>2]|0)+16>>2]|0)+236>>2]|0)<(a[(a[(a[a[(a[n+196>>2]|0)+(l<<6)+4>>2]>>2]|0)+16>>2]|0)+236>>2]|0);bz(a[(a[(A?t:i)+16>>2]|0)+260>>2]|0,a[(a[(A?i:t)+16>>2]|0)+256>>2]|0,u,0)|0;A=a[w>>2]|0;e=A;A=a[A+180>>2]|0}c=c+1|0}Iz(r);e=a[w>>2]|0;b=s;A=a[e+180>>2]|0}return}function Zz(A,e){A=A|0;e=e|0;var i=0;e=a[e+16>>2]|0;if((r[e+156>>0]|0)==1){e=a[a[e+256>>2]>>2]|0;while(1){i=a[(a[e+16>>2]|0)+116>>2]|0;if(!i)break;else e=i}if(!(Dd(A,a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0))e=(Dd(A,a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)|0)==0&1;else e=0}else e=0;return e|0}function Gz(A,e){A=A|0;e=e|0;return mz(A,e)|0}function mz(A,e){A=A|0;e=e|0;var i=0,r=0;A:do{if((A|0)==(e|0))A=1;else{i=a[(a[A+16>>2]|0)+180>>2]|0;A=0;while(1){r=a[i+(A<<2)>>2]|0;if(!r){A=0;break A}if(!(mz(a[((a[r>>2]&3|0)==2?r:r+-48|0)+40>>2]|0,e)|0))A=A+1|0;else{A=1;break}}}}while(0);return A|0}function Qz(A){A=A|0;var e=0,i=0,n=0,l=0,t=0,c=0,s=0;s=A+16|0;A=a[s>>2]|0;c=f[A+236>>1]|0;while(1){if((c|0)>(f[A+238>>1]|0))break;l=a[A+196>>2]|0;n=a[l+(c<<6)>>2]|0;l=l+(c<<6)+4|0;t=0;i=0;while(1){if((i|0)>=(n|0))break;e=a[(a[(a[l>>2]|0)+(i<<2)>>2]|0)+16>>2]|0;a[e+236>>2]=t;if((r[e+159>>0]|0)==6)e=a[e+216>>2]|0;else e=1;t=e+t|0;i=i+1|0}if((t|0)>(n|0)){A=a[l>>2]|0;if(!A)A=$F((t<<2)+4|0)|0;else A=eV(A,(t<<2)+4|0)|0;i=a[(a[s>>2]|0)+196>>2]|0;a[i+(c<<6)+4>>2]=A;e=a[i+(c<<6)>>2]|0;while(1){A=e+-1|0;if((e|0)<=0)break;l=a[i+(c<<6)+4>>2]|0;e=a[l+(A<<2)>>2]|0;a[l+(a[(a[e+16>>2]|0)+236>>2]<<2)>>2]=e;e=A;i=a[(a[s>>2]|0)+196>>2]|0}a[i+(c<<6)>>2]=t;a[(a[i+(c<<6)+4>>2]|0)+(t<<2)>>2]=0;A=a[s>>2]|0}c=c+1|0}return}function Lz(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0;w=k;k=k+48|0;u=w+32|0;b=w+8|0;i=w+24|0;c=w+16|0;t=w;r=e+16|0;f=a[r>>2]|0;A:do{if((a[f+216>>2]|0)>=2){a[b>>2]=~~(+s[f+16>>3]-+s[f+88>>3]);a[b+4>>2]=~~+s[f+24>>3];a[u>>2]=a[b>>2];a[u+4>>2]=a[b+4>>2];yz(i,e,u);n=i;l=a[n+4>>2]|0;i=b;a[i>>2]=a[n>>2];a[i+4>>2]=l;i=a[r>>2]|0;if((a[i+184>>2]|0)>0){t=a[a[i+180>>2]>>2]|0;i=(a[i+236>>2]|0)+1|0;t=qo(A,a[((a[t>>2]&3|0)==2?t:t+-48|0)+40>>2]|0)|0;while(1){if(!t)break A;l=(a[t>>2]&3|0)==2?t:t+-48|0;r=l+48|0;f=a[((a[l>>2]&3|0)==3?l:r)+40>>2]|0;if((f|0)!=(e|0)?(CR(f)|0)==(e|0):0){f=a[((a[l>>2]&3|0)==3?l:r)+40>>2]|0;a[u>>2]=a[b>>2];a[u+4>>2]=a[b+4>>2];Wz(c,A,f,u,i);f=c;r=a[f+4>>2]|0;n=b;a[n>>2]=a[f>>2];a[n+4>>2]=r;Jy(l);n=l+-48|0;r=a[(a[((a[l>>2]&3|0)==2?l:n)+40>>2]|0)+16>>2]|0;f=a[r+172>>2]|0;if(!f)r=$F((a[r+176>>2]<<2)+8|0)|0;else r=eV(f,(a[r+176>>2]<<2)+8|0)|0;a[(a[(a[((a[l>>2]&3|0)==2?l:n)+40>>2]|0)+16>>2]|0)+172>>2]=r;o=a[(a[((a[l>>2]&3|0)==2?l:n)+40>>2]|0)+16>>2]|0;r=a[o+172>>2]|0;o=o+176|0;f=a[o>>2]|0;a[o>>2]=f+1;a[r+(f<<2)>>2]=l;l=a[(a[((a[l>>2]&3|0)==2?l:n)+40>>2]|0)+16>>2]|0;a[(a[l+172>>2]|0)+(a[l+176>>2]<<2)>>2]=0;i=i+1|0}t=$o(A,t)|0}}else{l=a[a[i+172>>2]>>2]|0;i=(a[i+236>>2]|0)+1|0;l=Oo(A,a[((a[l>>2]&3|0)==3?l:l+48|0)+40>>2]|0)|0;while(1){if(!l)break A;r=l+-48|0;f=a[((a[l>>2]&3|0)==2?l:r)+40>>2]|0;if((f|0)!=(e|0)?(CR(f)|0)==(e|0):0){f=a[((a[l>>2]&3|0)==2?l:r)+40>>2]|0;a[u>>2]=a[b>>2];a[u+4>>2]=a[b+4>>2];Wz(t,A,f,u,i);f=t;r=a[f+4>>2]|0;n=b;a[n>>2]=a[f>>2];a[n+4>>2]=r;Jy(l);n=l+48|0;r=a[(a[((a[l>>2]&3|0)==3?l:n)+40>>2]|0)+16>>2]|0;f=a[r+180>>2]|0;if(!f)r=$F((a[r+184>>2]<<2)+8|0)|0;else r=eV(f,(a[r+184>>2]<<2)+8|0)|0;a[(a[(a[((a[l>>2]&3|0)==3?l:n)+40>>2]|0)+16>>2]|0)+180>>2]=r;f=a[(a[((a[l>>2]&3|0)==3?l:n)+40>>2]|0)+16>>2]|0;c=a[f+180>>2]|0;f=f+184|0;o=a[f>>2]|0;a[f>>2]=o+1;a[c+(o<<2)>>2]=l;o=a[(a[((a[l>>2]&3|0)==3?l:n)+40>>2]|0)+16>>2]|0;a[(a[o+180>>2]|0)+(a[o+184>>2]<<2)>>2]=0;i=i+1|0}l=_o(A,l)|0}}}}while(0);k=w;return}function yz(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0.0;DX(e,a[(a[(Id(e)|0)+16>>2]|0)+116>>2]&1);r=a[e+16>>2]|0;s[r+24>>3]=+(a[i+4>>2]|0);f=+s[r+88>>3]+ +(a[i>>2]|0);s[r+16>>3]=f;f=f+ +s[r+96>>3];a[i>>2]=~~(f+ +(a[(a[(Id(e)|0)+16>>2]|0)+248>>2]|0));r=i;e=a[r+4>>2]|0;i=A;a[i>>2]=a[r>>2];a[i+4>>2]=e;return}function Wz(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0;t=k;k=k+16|0;l=t;e=vL(e)|0;n=CR(i)|0;if((n|0)!=(i|0))yy(n,i);c=a[i+16>>2]|0;a[c+236>>2]=f;n=a[(a[n+16>>2]|0)+232>>2]|0;a[c+232>>2]=n;a[(a[(a[(a[e+16>>2]|0)+196>>2]|0)+(n<<6)+4>>2]|0)+(f<<2)>>2]=i;a[l>>2]=a[r>>2];a[l+4>>2]=a[r+4>>2];yz(A,i,l);k=t;return}function zz(A){A=A|0;var e=0.0,i=0.0,r=0,n=0,l=0,t=0.0,c=0,b=0,u=0,w=0.0;u=a[(a[(vL(A)|0)+16>>2]|0)+196>>2]|0;if((vL(A)|0)==(A|0))t=8.0;else t=+(kR(A,a[47144]|0,8,0)|0);b=A+16|0;n=a[b>>2]|0;r=0;c=1;i=+s[n+120>>3];e=+s[n+128>>3];while(1){if((c|0)>(a[n+180>>2]|0))break;l=a[(a[n+184>>2]|0)+(c<<2)>>2]|0;r=zz(l)|0|r;l=a[l+16>>2]|0;n=a[b>>2]|0;if((f[l+238>>1]|0)==(f[n+238>>1]|0)){w=+s[l+120>>3]+t;i=i>w?i:w}if((f[l+236>>1]|0)==(f[n+236>>1]|0)){w=+s[l+128>>3]+t;e=e>w?e:w}c=c+1|0}if((vL(A)|0)!=(A|0)?(a[(a[b>>2]|0)+12>>2]|0)!=0:0)if(!(a[(a[(Zd(A)|0)+16>>2]|0)+116>>2]&1)){c=a[b>>2]|0;r=1;i=+s[c+56>>3]+i;e=+s[c+88>>3]+e}else r=1;c=a[b>>2]|0;s[c+120>>3]=i;s[c+128>>3]=e;if((vL(A)|0)!=(A|0)){b=a[b>>2]|0;A=u+(f[b+236>>1]<<6)+24|0;w=+s[A>>3];s[A>>3]=w>e?w:e;u=u+(f[b+238>>1]<<6)+16|0;w=+s[u>>3];s[u>>3]=w>i?w:i}return r|0}function Yz(A,e){A=A|0;e=e|0;var i=0,r=0.0,n=0.0,l=0,t=0,c=0.0,b=0,u=0,w=0,k=0,o=0.0,h=0.0;k=a[(a[(vL(A)|0)+16>>2]|0)+196>>2]|0;if((vL(A)|0)==(A|0))i=0;else i=kR(A,a[47144]|0,8,0)|0;b=A+16|0;l=a[b>>2]|0;u=i+e|0;c=+(i|0);t=1;r=+s[l+128>>3];n=+s[l+120>>3];i=l;while(1){if((t|0)>(a[i+180>>2]|0))break;l=a[(a[i+184>>2]|0)+(t<<2)>>2]|0;Yz(l,u);l=a[l+16>>2]|0;i=a[b>>2]|0;if((f[l+238>>1]|0)==(f[i+238>>1]|0)){h=+s[l+120>>3]+c;n=n>h?n:h}if((f[l+236>>1]|0)==(f[i+236>>1]|0)){h=+s[l+128>>3]+c;r=r>h?r:h}t=t+1|0}s[i+120>>3]=n;s[i+128>>3]=r;if(((vL(A)|0)!=(A|0)?(w=a[b>>2]|0,a[w+12>>2]|0):0)?(o=-n-r+ +s[w+48+((+s[w+104>>3]>+s[w+72>>3]?3:1)<<4)+8>>3]-+s[(a[(a[a[k+(f[w+236>>1]<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]+ +s[(a[(a[a[k+(f[w+238>>1]<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3],o>0.0):0)Dz(A,~~o,e);if((vL(A)|0)!=(A|0)){w=a[b>>2]|0;u=k+(f[w+236>>1]<<6)+24|0;h=+s[u>>3];o=+s[w+128>>3];s[u>>3]=h>o?h:o;k=k+(f[w+238>>1]<<6)+16|0;o=+s[k>>3];h=+s[w+120>>3];s[k>>3]=o>h?o:h}return}function Dz(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,n=0.0,l=0.0,t=0.0,c=0,b=0,u=0,w=0.0,k=0.0,o=0,h=0,d=0;c=a[(vL(A)|0)+16>>2]|0;h=a[c+196>>2]|0;o=a[A+16>>2]|0;A=f[o+238>>1]|0;r=f[o+236>>1]|0;b=(e+1|0)/2|0;u=o+120|0;w=+s[u>>3];k=+(b|0);l=+(i|0);i=~~(k+l+w-+s[h+(A<<6)+16>>3]);if((i|0)>0){n=+(i|0);while(1){if((A|0)<(r|0))break;if((a[h+(A<<6)>>2]|0)>0){d=(a[(a[a[h+(A<<6)+4>>2]>>2]|0)+16>>2]|0)+24|0;s[d>>3]=+s[d>>3]+n}A=A+-1|0}t=+s[o+128>>3];A=i;n=t+ +(e-b|0)}else{t=+s[o+128>>3];A=e-b|0;n=t}A=~~(+(A|0)+l+n-+s[h+(r<<6)+24>>3]);A:do{if((A|0)>0){i=f[c+236>>1]|0;n=+(A|0);while(1){A=r+-1|0;if((r|0)<=(i|0))break A;if((a[h+(A<<6)>>2]|0)<=0){r=A;continue}r=(a[(a[a[h+(A<<6)+4>>2]>>2]|0)+16>>2]|0)+24|0;s[r>>3]=+s[r>>3]+n;r=A}}}while(0);s[o+128>>3]=t+ +(e-b|0);s[u>>3]=w+k;return}function Mz(A,e){A=A|0;e=e|0;var i=0,f=0;i=a[A+16>>2]|0;f=r[i+84>>0]|0;A=a[e+16>>2]|0;do{if(f<<24>>24==(r[A+84>>0]|0)){if(+s[i+56>>3]==+s[A+56>>3]){if(!(f<<24>>24==0?1:+s[i+64>>3]==+s[A+64>>3])){A=0;break}}else if(f<<24>>24){A=0;break}if(+s[i+16>>3]==+s[A+16>>3]?+s[i+24>>3]==+s[A+24>>3]:0){A=1;break}A=(r[i+44>>0]|0)==0&1}else A=0}while(0);return A|0}function Fz(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0;t=A+16|0;e=a[t>>2]|0;f[e+236>>1]=32767;f[e+238>>1]=-1;e=0;l=cd(A)|0;while(1){i=a[t>>2]|0;if(!l)break;r=i+238|0;n=a[(a[l+16>>2]|0)+232>>2]|0;if((n|0)>(f[r>>1]|0))f[r>>1]=n;i=i+236|0;if((n|0)<(f[i>>1]|0))f[i>>1]=n;if(!e)e=l;else e=(n|0)<(a[(a[e+16>>2]|0)+232>>2]|0)?l:e;l=sd(A,l)|0}a[i+264>>2]=e;return}function Vz(A){A=A|0;var e=0,i=0,r=0,f=0,n=0.0;e=Ho(A,86974)|0;if(!e)e=2147483647;else{n=+$3(e);e=~~(n*+(gh(A)|0))}r=A+16|0;i=0;while(1){f=a[r>>2]|0;if((i|0)>=(a[f+220>>2]|0))break;a[f+192>>2]=a[(a[f+216>>2]|0)+(i<<2)>>2];JV(A,(a[f+180>>2]|0)==0&1,e)|0;i=i+1|0}return}function Jz(A,e){A=A|0;e=e|0;var i=0,r=0,n=0;r=k;k=k+16|0;i=r;if(!(Ho(A,86983)|0))Nz(A,e);else{n=(a[A+16>>2]|0)+136|0;f[n>>1]=f[n>>1]|16;pz(A,e)}if(0){}k=r;return}function pz(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0.0;t=k;k=k+16|0;l=t;a[46747]=0;r[l>>0]=r[18588]|0;r[l+1>>0]=r[18589]|0;r[l+2>>0]=r[18590]|0;r[l+3>>0]=r[18591]|0;l=kh(87201,l,0)|0;Td(l,87230,280,1)|0;zd(l,17404,17344);Rz(A);i=Ho(A,86974)|0;if(!i)f=2147483647;else{c=+$3(i);f=~~(c*+(gh(A)|0))}iY(A,0);rY(A,l);fY(A,l);aY(A,l,0,0);nY(l);n=lY(l)|0;tY(l);if(e|0){KY(l);pY(l)}i=Ho(A,102586)|0;if(!i)i=-1;else i=q3(i)|0;iV(l,1,f,i)|0;cY(A,l,n);Bh(l)|0;k=t;return}function Nz(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;n=k;k=k+32|0;f=n+16|0;r=n+8|0;i=n;Rz(A);do{if(!e){Xz(A,A);$Y(A);Hz(i,A);l=i;i=a[l+4>>2]|0;e=r;a[e>>2]=a[l>>2];a[e+4>>2]=i;jD(A,0);e=0}else{KY(A);pY(A);Xz(A,A);$Y(A);Hz(i,A);t=i;i=a[t+4>>2]|0;l=r;a[l>>2]=a[t>>2];a[l+4>>2]=i;jD(A,0);l=a[A+16>>2]|0;if((a[l+220>>2]|0)<=1?(a[l+180>>2]|0)<=0:0)break;a[e+32>>2]=1;e=0}}while(0);FY(A);a[f>>2]=a[r>>2];a[f+4>>2]=a[r+4>>2];if(Uz(A,f)|0)jD(A,0);if(!e)Vz(A);else NY(A,e);xz(A,e);Tz(A);k=n;return}function Rz(A){A=A|0;var e=0,i=0,n=0;if(r[(a[(a[A+60>>2]|0)+16>>2]|0)+113>>0]&1){i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;n=(a[e+16>>2]|0)+170|0;f[n>>1]=(l[n>>1]|0)<<1;e=_o(A,e)|0}i=sd(A,i)|0}n=(a[A+16>>2]|0)+252|0;a[n>>2]=((a[n>>2]|0)+1|0)/2|0}return}function Xz(A,e){A=A|0;e=e|0;var i=0;e=RB(e)|0;while(1){if(!e)break;i=$z(e)|0;do{if(i)if((i|0)==7&(a[47135]|0)==100){Oz(A,e);break}else{AY(A,e,i);break}else Xz(A,e)}while(0);e=XB(e)|0}return}function Hz(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0;t=e+16|0;i=a[t>>2]|0;e=a[i+228>>2]|0;i=a[i+224>>2]|0;f=(i|0)==0;if(!e)if(f){c=0;s=0}else n=4;else if(f)n=5;else n=4;if((n|0)==4){e=CR(i)|0;i=a[t>>2]|0;a[i+224>>2]=e;e=a[i+228>>2]|0;if(!e){l=0;e=i;n=12}else n=5}do{if((n|0)==5){e=CR(e)|0;i=a[t>>2]|0;a[i+228>>2]=e;if(e){i=e+16|0;e=a[i>>2]|0;f=(r[e+159>>0]|0)==5&1;while(1){e=a[a[e+180>>2]>>2]|0;if(!e){n=11;break}l=a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0;if((l|0)!=(CR(l)|0)){n=9;break}MY(e);e=a[i>>2]|0}if((n|0)==9)gA(87094,87034,346,87126);else if((n|0)==11){l=f;e=a[t>>2]|0;n=12;break}}else{l=0;e=i;n=12}}}while(0);A:do{if((n|0)==12){e=a[e+224>>2]|0;if(!e){c=0;s=l}else{i=e+16|0;e=a[i>>2]|0;f=(r[e+159>>0]|0)==3&1;while(1){e=a[a[e+172>>2]>>2]|0;if(!e){c=f;s=l;break A}t=a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0;if((t|0)!=(CR(t)|0))break;MY(e);e=a[i>>2]|0}gA(87139,87034,353,87126)}}}while(0);a[A>>2]=c;a[A+4>>2]=s;return}function Uz(A,e){A=A|0;e=e|0;var i=0,r=0,n=0,l=0,t=0,c=0,s=0,b=0;c=A+16|0;t=a[c>>2]|0;if((a[t+228>>2]|0)==0?(a[t+224>>2]|0)==0:0)e=0;else i=3;A:do{if((i|0)==3){n=cd(A)|0;t=e+4|0;l=a[e>>2]&65535;e=0;while(1){if(!n)break A;if((n|0)==(CR(n)|0)){r=n+16|0;i=a[r>>2]|0;if((a[i+184>>2]|0)==0?(s=a[(a[c>>2]|0)+228>>2]|0,!((s|0)==0|(n|0)==(s|0))):0){e=Qy(n,s,0)|0;i=a[e+16>>2]|0;f[i+170>>1]=a[t>>2];a[i+156>>2]=0;i=a[r>>2]|0}if((a[i+176>>2]|0)==0?(b=a[(a[c>>2]|0)+224>>2]|0,!((b|0)==0|(n|0)==(b|0))):0){e=Qy(b,n,0)|0;r=a[e+16>>2]|0;f[r+170>>1]=l;a[r+156>>2]=0}}n=sd(A,n)|0}}}while(0);return(e|0)!=0|0}function xz(A,e){A=A|0;e=e|0;var i=0,n=0,l=0,t=0,c=0,s=0;n=cd(A)|0;s=A+16|0;i=a[s>>2]|0;A:do{if(n){f[i+236>>1]=32767;f[i+238>>1]=-1;c=(e|0)==0;while(1){if(!n)break;i=CR(n)|0;t=a[n+16>>2]|0;e=a[t+232>>2]|0;do{if((i|0)!=(n|0)){if(!c)if(!e)e=0;else break;e=e+(a[(a[i+16>>2]|0)+232>>2]|0)|0;a[t+232>>2]=e}}while(0);i=a[s>>2]|0;l=i+238|0;if((e|0)>(f[l>>1]|0))f[l>>1]=e;i=i+236|0;if((e|0)<(f[i>>1]|0))f[i>>1]=e;switch(r[t+159>>0]|0){case 6:case 0:break;default:ZR(n)}n=sd(A,n)|0}if((vL(A)|0)==(A|0)){if((a[47135]|0)==100)e=1;else{Sz(A);break}while(1){i=a[s>>2]|0;if((e|0)>(a[i+180>>2]|0))break A;Pz(a[(a[i+184>>2]|0)+(e<<2)>>2]|0);e=e+1|0}}}else{f[i+238>>1]=0;f[i+236>>1]=0}}while(0);return}function Tz(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;c=A+16|0;i=0;while(1){e=a[c>>2]|0;if((i|0)>=(a[e+220>>2]|0))break;t=a[(a[e+216>>2]|0)+(i<<2)>>2]|0;a[e+192>>2]=t;e=t;while(1){if(!e)break;t=e+16|0;jz((a[t>>2]|0)+172|0);jz((a[t>>2]|0)+180|0);t=a[t>>2]|0;r[t+157>>0]=0;e=a[t+164>>2]|0}i=i+1|0}t=cd(A)|0;while(1){if(!t)break;l=Oo(A,t)|0;while(1){if(!l)break;f=l+16|0;e=a[f>>2]|0;n=a[e+172>>2]|0;if((n|0)!=0?(s=n+16|0,(l|0)==(a[(a[s>>2]|0)+116>>2]|0)):0){e=cd(A)|0;while(1){if(!e)break;i=Oo(A,e)|0;while(1){if(!i)break;if((l|0)!=(i|0)?(b=(a[i+16>>2]|0)+172|0,u=a[b>>2]|0,(u|0)!=0&(n|0)==(u|0)):0)a[b>>2]=0;i=_o(A,i)|0}e=sd(A,e)|0}L2(a[s>>2]|0);L2(n);e=a[f>>2]|0}a[e+172>>2]=0;l=_o(A,l)|0}t=sd(A,t)|0}L2(a[(a[c>>2]|0)+216>>2]|0);u=a[c>>2]|0;a[u+216>>2]=0;a[u+220>>2]=0;return}function jz(A){A=A|0;var e=0,i=0;i=A+4|0;e=a[i>>2]|0;while(1){if((e|0)<=-1)break;a[(a[A>>2]|0)+(e<<2)>>2]=0;e=e+-1|0}a[i>>2]=0;return}function Pz(A){A=A|0;var e=0,i=0,r=0;e=A+16|0;i=a[e>>2]|0;r=a[(a[(a[i+264>>2]|0)+16>>2]|0)+232>>2]|0;A=i+236|0;f[A>>1]=r+(l[A>>1]|0);A=i+238|0;f[A>>1]=r+(l[A>>1]|0);A=1;while(1){if((A|0)>(a[i+180>>2]|0))break;Pz(a[(a[i+184>>2]|0)+(A<<2)>>2]|0);A=A+1|0;i=a[e>>2]|0}return}function Sz(A){A=A|0;var e=0;e=RB(vL(A)|0)|0;while(1){if(!e)break;if((r[(a[e+16>>2]|0)+274>>0]|0)==7)Oz(A,e);e=XB(e)|0}return}function Oz(A,e){A=A|0;e=e|0;var i=0;i=(a[e+16>>2]|0)+200|0;do{if((a[i>>2]|0)==0?(a[i>>2]=A,Kz(A,e),cd(e)|0):0){_z(A,e);if((a[47135]|0)==100){Nz(e,0);qz(e);break}else{Fz(e);break}}}while(0);return}function Kz(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0;l=A+16|0;n=cd(e)|0;while(1){if(!n)break;t=sd(e,n)|0;c=n+16|0;if(!(r[(a[c>>2]|0)+159>>0]|0))f=1;else{Cd(e,n)|0;n=t;continue}while(1){i=a[l>>2]|0;A=a[i+180>>2]|0;if((f|0)>=(A|0))break;if(Dd(a[(a[i+184>>2]|0)+(f<<2)>>2]|0,n)|0){s=7;break}f=f+1|0}if((s|0)==7){s=0;A=a[(a[l>>2]|0)+180>>2]|0}if((f|0)<(A|0))Cd(e,n)|0;a[(a[c>>2]|0)+212>>2]=0;n=t}i=cd(e)|0;while(1){if(!i)break;A=Oo(vL(e)|0,i)|0;while(1){if(!A)break;if(Dd(e,a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)|0)uh(e,A,1)|0;A=_o(vL(e)|0,A)|0}i=sd(e,i)|0}return}function _z(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;r=A+16|0;i=a[r>>2]|0;n=i+180|0;A=a[n>>2]|0;f=A+1|0;a[n>>2]=f;i=a[i+184>>2]|0;if(!i)A=qF((A<<2)+8|0)|0;else A=AV(i,A+2|0,4,f)|0;a[(a[r>>2]|0)+184>>2]=A;a[A+(f<<2)>>2]=e;JF(e);return}function qz(A){A=A|0;var e=0,i=0,f=0,n=0,l=0;n=a[A+16>>2]|0;e=n+192|0;l=0;while(1){e=a[e>>2]|0;if(!e)break;f=a[e+16>>2]|0;if(!(a[f+232>>2]|0))i=(r[f+156>>0]|0)==0?e:l;else i=l;e=f+164|0;l=i}if(!l)gA(87019,87034,238,87041);a[n+264>>2]=l;e=cd(A)|0;while(1){if(!e){e=13;break}i=e+16|0;if(!((e|0)==(l|0)?1:(a[(a[i>>2]|0)+216>>2]|0)<2)){e=11;break}IR(e,l)|0;r[(a[i>>2]|0)+159>>0]=7;e=sd(A,e)|0}if((e|0)==11)gA(87056,87034,242,87041);else if((e|0)==13)return}function $z(A){A=A|0;var e=0;if(!(eY(A)|0)){e=YR(Ho(A,87171)|0,17356,17380)|0;r[(a[A+16>>2]|0)+274>>0]=e;A=e}else A=7;return A|0}function AY(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0;n=cd(e)|0;A:do{if(n|0){c=i&255;t=n+16|0;f=n;l=c;while(1){r[(a[f+16>>2]|0)+159>>0]=l;f=sd(e,f)|0;if(!f)break;IR(n,f)|0;l=r[(a[t>>2]|0)+159>>0]|0}switch(i|0){case 3:case 2:{A=A+16|0;f=a[A>>2]|0;l=a[f+224>>2]|0;if(l){n=IR(l,n)|0;f=a[A>>2]|0}a[f+224>>2]=n;break}case 5:case 4:{A=A+16|0;f=a[A>>2]|0;l=a[f+228>>2]|0;if(l){n=IR(l,n)|0;f=a[A>>2]|0}a[f+228>>2]=n;break}default:break A}switch(i|0){case 3:{f=f+224|0;break}case 5:{f=f+228|0;break}default:break A}r[(a[(a[f>>2]|0)+16>>2]|0)+159>>0]=c}}while(0);return}function eY(A){A=A|0;return(Z1(Vh(A)|0,108006,7)|0)==0|0}function iY(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;b=k;k=k+16|0;n=b;if(!(IY(A)|0)){do{if(SR(A)|0)if(!e){a[(a[A+16>>2]|0)+204>>2]=0;e=A;break}else{a[(a[A+16>>2]|0)+204>>2]=(a[(a[e+16>>2]|0)+204>>2]|0)+1;ZY(A,e);e=A;break}}while(0);i=RB(A)|0;while(1){if(!i)break;iY(i,e);i=XB(i)|0}A:do{if(SR(A)|0){i=cd(A)|0;while(1){if(!i)break A;f=(a[i+16>>2]|0)+212|0;if(!(a[f>>2]|0))a[f>>2]=A;i=sd(A,i)|0}}}while(0);switch(GY(A)|0){case 3:{e=e+16|0;r[(a[e>>2]|0)+241>>0]=1;s=19;break}case 2:{e=e+16|0;s=19;break}case 5:{e=e+16|0;r[(a[e>>2]|0)+242>>0]=1;s=21;break}case 4:{e=e+16|0;s=21;break}case 1:{mY(A)|0;break}case 6:break;default:{i=Vh(A)|0;f=Ho(A,87171)|0;a[n>>2]=i;a[n+4>>2]=f;ao(0,87354,n)|0}}if((s|0)==19){s=mY(A)|0;s=QY(s,a[(a[e>>2]|0)+208>>2]|0)|0;a[(a[e>>2]|0)+208>>2]=s}else if((s|0)==21){s=mY(A)|0;s=QY(s,a[(a[e>>2]|0)+212>>2]|0)|0;a[(a[e>>2]|0)+212>>2]=s}if((SR(A)|0?(l=A+16|0,t=a[l>>2]|0,c=a[t+208>>2]|0,c|0):0)?(c|0)==(a[t+212>>2]|0):0){c=mY(A)|0;s=a[l>>2]|0;a[s+208>>2]=c;a[s+212>>2]=c}}k=b;return}function rY(A,e){A=A|0;e=e|0;var i=0,r=0;a[46747]=0;i=cd(A)|0;while(1){if(!i)break;if((sY(i)|0)==(i|0)){r=wY(e,Vh(i)|0)|0;a[(a[i+16>>2]|0)+148>>2]=r}i=sd(A,i)|0}i=cd(A)|0;while(1){if(!i)break;e=i+16|0;if(!(a[(a[e>>2]|0)+148>>2]|0)){r=a[(a[(sY(i)|0)+16>>2]|0)+148>>2]|0;a[(a[e>>2]|0)+148>>2]=r}i=sd(A,i)|0}return}function fY(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0;l=cd(A)|0;while(1){if(!l)break;i=a[(a[l+16>>2]|0)+148>>2]|0;t=Oo(A,l)|0;while(1){if(!t)break;do{if((BY(t)|0)==0?(c=t+-48|0,s=a[(a[(sY(a[((a[t>>2]&3|0)==2?t:c)+40>>2]|0)|0)+16>>2]|0)+148>>2]|0,(i|0)!=(s|0)):0){f=a[t>>2]&3;n=t+48|0;r=((f|0)==3?t:n)+40|0;f=a[(a[(a[((f|0)==2?t:c)+40>>2]|0)+16>>2]|0)+212>>2]|0;if(!(gY(t)|0)){if((dY(a[(a[(a[r>>2]|0)+16>>2]|0)+212>>2]|0)|0)==0?(dY(f)|0)==0:0){vY(e,i,s,t);break}EY(e,i,s,t);break}else{f=sY(a[r>>2]|0)|0;r=a[t>>2]&3;if((f|0)!=(a[(a[(a[(a[(a[((r|0)==3?t:n)+40>>2]|0)+16>>2]|0)+212>>2]|0)+16>>2]|0)+212>>2]|0)?(n=sY(a[((r|0)==2?t:c)+40>>2]|0)|0,(n|0)!=(a[(a[(a[(a[(a[((a[t>>2]&3|0)==2?t:c)+40>>2]|0)+16>>2]|0)+212>>2]|0)+16>>2]|0)+208>>2]|0)):0)r=s;else{r=i;i=s}vY(e,i,r,t);break}}}while(0);t=_o(A,t)|0}l=sd(A,l)|0}return}function aY(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0;if((SR(A)|0)!=0?(dY(A)|0)!=0:0){n=cd(A)|0;while(1){if(!n)break;if(!(qo(A,n)|0)){f=a[(a[(sY(n)|0)+16>>2]|0)+148>>2]|0;if(!i)i=wY(e,87252)|0;th(e,i,f,0,1)|0}if(!(Oo(A,n)|0)){f=a[(a[(sY(n)|0)+16>>2]|0)+148>>2]|0;if(!r)r=wY(e,87257)|0;th(e,f,r,0,1)|0}n=sd(A,n)|0}if((r|0)!=0&(i|0)!=0){hY(th(e,i,r,0,1)|0,0,1e3);f=i}else f=i}else f=i;i=RB(A)|0;while(1){if(!i)break;aY(i,e,f,r);i=XB(i)|0}return}function nY(A){A=A|0;var e=0,i=0;e=cd(A)|0;while(1){if(!e)break;i=a[e+16>>2]|0;r[i+158>>0]=0;r[i+157>>0]=0;e=sd(A,e)|0}e=cd(A)|0;while(1){if(!e)break;kY(A,e);e=sd(A,e)|0}return}function lY(A){A=A|0;var e=0,i=0,r=0,f=0;e=cd(A)|0;while(1){if(!e)break;a[(a[e+16>>2]|0)+128>>2]=0;e=sd(A,e)|0}e=0;r=cd(A)|0;while(1){if(!r)break;i=e+1|0;if(!(a[(a[r+16>>2]|0)+128>>2]|0)){uY(A,r,i);e=i}r=sd(A,r)|0}A:do{if((e|0)>1){f=wY(A,87246)|0;i=1;r=cd(A)|0;while(1){if(!r)break A;if((a[(a[r+16>>2]|0)+128>>2]|0)==(i|0)){th(A,f,r,0,1)|0;i=i+1|0}r=sd(A,r)|0}}}while(0);return e|0}function tY(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0;n=cd(A)|0;while(1){if(!n)break;l=n+16|0;f=Oo(A,n)|0;while(1){if(!f)break;e=a[l>>2]|0;i=a[e+180>>2]|0;if(!i)e=$F((a[e+184>>2]<<2)+8|0)|0;else e=eV(i,(a[e+184>>2]<<2)+8|0)|0;i=a[l>>2]|0;a[i+180>>2]=e;i=i+184|0;r=a[i>>2]|0;a[i>>2]=r+1;a[e+(r<<2)>>2]=f;r=a[l>>2]|0;a[(a[r+180>>2]|0)+(a[r+184>>2]<<2)>>2]=0;r=f+-48|0;e=a[(a[((a[f>>2]&3|0)==2?f:r)+40>>2]|0)+16>>2]|0;i=a[e+172>>2]|0;if(!i)e=$F((a[e+176>>2]<<2)+8|0)|0;else e=eV(i,(a[e+176>>2]<<2)+8|0)|0;a[(a[(a[((a[f>>2]&3|0)==2?f:r)+40>>2]|0)+16>>2]|0)+172>>2]=e;t=a[(a[((a[f>>2]&3|0)==2?f:r)+40>>2]|0)+16>>2]|0;e=a[t+172>>2]|0;t=t+176|0;i=a[t>>2]|0;a[t>>2]=i+1;a[e+(i<<2)>>2]=f;r=a[(a[((a[f>>2]&3|0)==2?f:r)+40>>2]|0)+16>>2]|0;a[(a[r+172>>2]|0)+(a[r+176>>2]<<2)>>2]=0;f=_o(A,f)|0}n=sd(A,n)|0}return}function cY(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,n=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0;w=A+16|0;k=a[w>>2]|0;f[k+236>>1]=32767;f[k+238>>1]=-1;A:do{if((i|0)>1){n=qF((i<<2)+4|0)|0;r=i+1|0;i=1;while(1){if((i|0)==(r|0)){u=n;k=n;break A}a[n+(i<<2)>>2]=32767;i=i+1|0}}else{u=0;k=0}}while(0);t=(u|0)==0;n=cd(A)|0;while(1){if(!n)break;c=a[(a[(a[(sY(n)|0)+16>>2]|0)+148>>2]|0)+16>>2]|0;s=a[c+232>>2]|0;b=a[n+16>>2]|0;a[b+232>>2]=s;i=a[w>>2]|0;r=i+238|0;if((s|0)>(f[r>>1]|0))f[r>>1]=s;i=i+236|0;if((s|0)<(f[i>>1]|0))f[i>>1]=s;if(!t){c=a[c+128>>2]|0;a[b+128>>2]=c;b=u+(c<<2)|0;c=a[b>>2]|0;a[b>>2]=(c|0)<(s|0)?c:s}n=sd(A,n)|0}c=(u|0)!=0;A:do{if(!c){u=f[(a[w>>2]|0)+236>>1]|0;r=u<<16>>16;if(u<<16>>16>0){i=cd(A)|0;while(1){if(!i)break;u=(a[i+16>>2]|0)+232|0;a[u>>2]=(a[u>>2]|0)-r;i=sd(A,i)|0}i=a[w>>2]|0;w=i+236|0;f[w>>1]=(l[w>>1]|0)-r;i=i+238|0;f[i>>1]=(l[i>>1]|0)-r;i=0}else i=0}else{i=cd(A)|0;while(1){if(!i){i=1;break A}b=a[i+16>>2]|0;w=b+232|0;a[w>>2]=(a[w>>2]|0)-(a[u+(a[b+128>>2]<<2)>>2]|0);i=sd(A,i)|0}}}while(0);bY(A,i);t=cd(e)|0;while(1){if(!t)break;r=t+16|0;i=a[r>>2]|0;n=a[i+172>>2]|0;if(n){L2(n);i=a[r>>2]|0}i=a[i+180>>2]|0;if(i|0)L2(i);t=sd(e,t)|0}L2(a[(a[(cd(A)|0)+16>>2]|0)+112>>2]|0);i=cd(A)|0;while(1){if(!i)break;a[(a[i+16>>2]|0)+112>>2]=0;i=sd(A,i)|0}if(c)L2(k);return}function sY(A){A=A|0;var e=0,i=0,r=0;e=A+16|0;i=(a[e>>2]|0)+152|0;r=a[i>>2]|0;if(r){if((r|0)!=(A|0)){r=sY(r)|0;a[(a[e>>2]|0)+152>>2]=r;return r|0}}else a[i>>2]=A;return A|0}function bY(A,e){A=A|0;e=e|0;var i=0,r=0,n=0,l=0,t=0;t=A+16|0;i=1;while(1){r=a[t>>2]|0;if((i|0)>(a[r+180>>2]|0))break;bY(a[(a[r+184>>2]|0)+(i<<2)>>2]|0,0);i=i+1|0}if((e|0)!=0|(a[r+200>>2]|0)!=0){f[r+236>>1]=32767;f[r+238>>1]=-1;i=0;l=cd(A)|0;while(1){if(!l)break;n=a[(a[l+16>>2]|0)+232>>2]|0;e=a[t>>2]|0;r=e+238|0;if((n|0)>(f[r>>1]|0))f[r>>1]=n;e=e+236|0;if((n|0)<(f[e>>1]|0)){f[e>>1]=n;i=l}l=sd(A,l)|0}a[(a[t>>2]|0)+264>>2]=i}return}function uY(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=(a[e+16>>2]|0)+128|0;A:do{if(!(a[r>>2]|0)){a[r>>2]=i;r=Oo(A,e)|0;while(1){if(!r)break;uY(A,a[((a[r>>2]&3|0)==2?r:r+-48|0)+40>>2]|0,i);r=_o(A,r)|0}r=qo(A,e)|0;while(1){if(!r)break A;uY(A,a[((a[r>>2]&3|0)==3?r:r+48|0)+40>>2]|0,i);r=$o(A,r)|0}}}while(0);return}function wY(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;f=gd(A,e,1)|0;e=f+16|0;a[(a[e>>2]|0)+176>>2]=0;r=qF(20)|0;i=a[e>>2]|0;a[i+172>>2]=r;a[i+184>>2]=0;i=qF(20)|0;e=a[e>>2]|0;a[e+180>>2]=i;i=a[46747]|0;r=e+168|0;if(!i){a[r>>2]=0;a[(a[A+16>>2]|0)+192>>2]=f}else{a[r>>2]=i;a[(a[i+16>>2]|0)+164>>2]=f}a[46747]=f;a[e+164>>2]=0;return f|0}function kY(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0;l=e+16|0;i=a[l>>2]|0;f=i+157|0;if(!(r[f>>0]|0)){r[f>>0]=1;r[i+158>>0]=1;e=Oo(A,e)|0;while(1){if(!e)break;i=_o(A,e)|0;f=a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0;n=a[f+16>>2]|0;if(r[n+158>>0]|0){oY(A,e);e=i;continue}if(r[n+157>>0]|0){e=i;continue}kY(A,f);e=i}r[(a[l>>2]|0)+158>>0]=0}return}function oY(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=a[e>>2]&3;f=e+-48|0;r=e+48|0;i=th(A,a[((i|0)==2?e:f)+40>>2]|0,a[((i|0)==3?e:r)+40>>2]|0,0,0)|0;if(!i){i=a[e>>2]&3;i=th(A,a[((i|0)==2?e:f)+40>>2]|0,a[((i|0)==3?e:r)+40>>2]|0,0,1)|0}f=a[e+16>>2]|0;hY(i,l[f+170>>1]|0,a[f+156>>2]|0);Cd(A,e)|0;return}function hY(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,n=0;A=a[A+16>>2]|0;r=A+170|0;n=l[r>>1]|0;f[r>>1]=(n|0)>(e|0)?n:e;e=A+156|0;a[e>>2]=(a[e>>2]|0)+i;return}function dY(A){A=A|0;return(ER(Ho(A,87262)|0,0)|0)&255|0}function BY(A){A=A|0;var e=0,i=0;e=a[47189]|0;if((((e|0)!=0?(i=Uo(A,e)|0,(i|0)!=0):0)?(r[i>>0]|0)!=0:0)?(vR(i)|0)<<24>>24==0:0)A=1;else A=0;return A|0}function gY(A){A=A|0;var e=0,i=0;i=a[A>>2]&3;e=a[(a[(a[((i|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;A=a[(a[(a[((i|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+212>>2]|0;if((e|0)==(A|0))return 1;else{i=CY(e,A)|0;return((i|0)==(e|0)|(i|0)==(A|0))&1|0}return 0}function vY(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,t=0,c=0;c=k;k=k+16|0;n=c;f=th(A,e,i,0,0)|0;if(!f){f=th(A,i,e,0,0)|0;if(!f){f=th(A,e,i,0,1)|0;if(!f){e=Vh(e)|0;r=Vh(i)|0;a[n>>2]=e;a[n+4>>2]=r;ao(1,87279,n)|0}else t=4}else t=4}else t=4;if((t|0)==4){t=a[r+16>>2]|0;hY(f,l[t+170>>1]|0,a[t+156>>2]|0)}k=c;return}function EY(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var n=0,t=0,c=0,s=0,b=0,u=0;b=k;k=k+112|0;c=b;t=b+4|0;n=qo(A,e)|0;while(1){if(!n){s=6;break}u=Oo(A,a[((a[n>>2]&3|0)==3?n:n+48|0)+40>>2]|0)|0;if(u|0?(a[((a[u>>2]&3|0)==2?u:u+-48|0)+40>>2]|0)==(i|0):0)break;n=$o(A,n)|0}if((s|0)==6){u=a[46748]|0;a[46748]=u+1;a[c>>2]=u;S4(t,87270,c)|0;t=wY(A,t)|0;u=th(A,t,e,0,1)|0;t=th(A,t,i,0,1)|0;i=a[r+16>>2]|0;s=i+156|0;u=(a[u+16>>2]|0)+156|0;a[u>>2]=(a[u>>2]|0)+((a[s>>2]|0)*1e3|0);u=a[t+16>>2]|0;c=u+170|0;f[c>>1]=f[(a[((l[c>>1]|0)>(l[i+170>>1]|0)?t:r)+16>>2]|0)+170>>1]|0;u=u+156|0;a[u>>2]=(a[u>>2]|0)+(a[s>>2]|0)}k=b;return}function CY(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;A:while(1){r=A+16|0;while(1){if((A|0)==(e|0))break A;f=a[r>>2]|0;i=a[e+16>>2]|0;if((a[f+204>>2]|0)>=(a[i+204>>2]|0))break;e=a[i+200>>2]|0}A=a[f+200>>2]|0}return A|0}function IY(A){A=A|0;return(cd(A)|0)==0|0}function ZY(A,e){A=A|0;e=e|0;a[(a[A+16>>2]|0)+200>>2]=e;_z(e,A);Kz(e,A);return}function GY(A){A=A|0;var e=0;A=Ho(A,87171)|0;if((A|0)!=0?(r[A>>0]|0)!=0:0)if(A1(A,87181)|0)if(A1(A,87185)|0)if(A1(A,87192)|0)if(A1(A,87196)|0)if(!(A1(A,87176)|0))A=1;else e=8;else A=5;else A=4;else A=3;else A=2;else e=8;if((e|0)==8)A=6;return A|0}function mY(A){A=A|0;var e=0,i=0;i=cd(A)|0;A:do{if(!i)e=0;else{e=sY(i)|0;while(1){i=sd(A,i)|0;if(!i)break A;QY(e,i)|0}}}while(0);return e|0}function QY(A,e){A=A|0;e=e|0;if(e){A=sY(A)|0;a[(a[(sY(e)|0)+16>>2]|0)+152>>2]=A}return A|0}function LY(A,e,i){A=A|0;e=e|0;i=i|0;Td(e,87230,a[i>>2]|0,1)|0;return}function yY(A,e,i){A=A|0;e=e|0;i=i|0;Td(e,87397,a[i+4>>2]|0,1)|0;return}function WY(A,e,i){A=A|0;e=e|0;i=i|0;Td(e,87382,a[i+8>>2]|0,1)|0;return}function zY(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0;o=k;k=k+240|0;b=o+120|0;u=o;a[47193]=Yo(A,2,87412,0)|0;s=Yo(A,2,87421,0)|0;a[47194]=s;A:do{if((s|0)!=0|(a[47193]|0)!=0){s=cd(A)|0;while(1){if(!s)break A;c=0;e=0;t=Ah(A,s)|0;while(1){if(!t){f=0;break}i=a[t>>2]|0;n=i&3;f=a[((n|0)==2?t:t+-48|0)+40>>2]|0;l=t+48|0;e:do{if((f|0)!=(a[((n|0)==3?t:l)+40>>2]|0)){n=a[47193]|0;do{if((f|0)==(s|0)&(n|0)!=0){f=Uo(t,n)|0;if(!(r[f>>0]|0)){i=a[t>>2]|0;break}else{i=c;e=YY(b,e,s,t,f)|0;break e}}}while(0);f=a[47194]|0;if((f|0?(a[((i&3|0)==3?t:l)+40>>2]|0)==(s|0):0)?(w=Uo(t,f)|0,(r[w>>0]|0)!=0):0)i=YY(u,c,s,t,w)|0;else i=c}else i=c}while(0);c=i;t=eh(A,t,s)|0}while(1){if((f|0)>=(e|0)){i=0;break}i=b+(f*24|0)+4|0;if((a[b+(f*24|0)+8>>2]|0)>1)DY(s,i);i=a[i>>2]|0;if(i|0)L2(i);f=f+1|0}while(1){if((i|0)>=(c|0))break;e=u+(i*24|0)+4|0;if((a[u+(i*24|0)+8>>2]|0)>1)DY(s,e);e=a[e>>2]|0;if(e|0)L2(e);i=i+1|0}s=sd(A,s)|0}}}while(0);k=o;return}function YY(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0.0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0;o=k;k=k+16|0;c=o;b=o+12|0;u=o+8|0;w=0;while(1){if((w|0)>=(e|0)){t=10;break}t=a[A+(w*24|0)>>2]|0;if((r[t>>0]|0)==(r[n>>0]|0)?(A1(t,n)|0)==0:0){t=5;break}w=w+1|0}do{if((t|0)==5){c=A+(w*24|0)+4|0;t=a[c>>2]|0;if(!t){t=A+(w*24|0)+8|0;n=t;t=$F((a[t>>2]<<2)+8|0)|0}else{h=A+(w*24|0)+8|0;n=h;t=eV(t,(a[h>>2]<<2)+8|0)|0}a[c>>2]=t;d=a[n>>2]|0;h=d+1|0;a[n>>2]=h;a[t+(d<<2)>>2]=f;a[(a[c>>2]|0)+(h<<2)>>2]=0;t=13}else if((t|0)==10)if((e|0)>4){d=Vh(i)|0;a[c>>2]=5;a[c+4>>2]=d;ao(1,87430,c)|0;break}else{B=A+(w*24|0)+8|0;a[B>>2]=0;c=qF(8)|0;d=A+(w*24|0)+4|0;a[d>>2]=c;h=a[B>>2]|0;t=h+1|0;a[B>>2]=t;a[c+(h<<2)>>2]=f;a[(a[d>>2]|0)+(t<<2)>>2]=0;a[A+(w*24|0)>>2]=n;a[A+(w*24|0)+12>>2]=0;s[A+(w*24|0)+16>>3]=0.0;e=e+1|0;t=13;break}}while(0);if((t|0)==13){DC(f,b,u);t=(a[((a[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0)==(i|0)?a[u>>2]|0:a[b>>2]|0;if(t){d=A+(w*24|0)+12|0;B=a[d>>2]|0;a[d>>2]=B+1;if(!B)l=+JC(f,t);else l=0.0;s[A+(w*24|0)+16>>3]=l}}k=o;return e|0}function DY(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0.0,c=0.0,b=0.0,u=0,w=0.0,o=0.0,h=0.0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0.0;I=k;k=k+80|0;g=I+68|0;v=I+64|0;d=I;E=e+4|0;u=a[E>>2]|0;C=A+16|0;l=0;o=0.0;h=0.0;while(1){if((l|0)>=(u|0))break;f=a[(a[e>>2]|0)+(l<<2)>>2]|0;n=a[f>>2]&3;i=a[((n|0)==2?f:f+-48|0)+40>>2]|0;if((i|0)==(A|0))i=a[((n|0)==3?f:f+48|0)+40>>2]|0;n=a[i+16>>2]|0;B=a[C>>2]|0;c=+s[n+16>>3]-+s[B+16>>3];b=+s[n+24>>3]-+s[B+24>>3];w=+g1(c,b);l=l+1|0;o=c/w+o;h=b/w+h}t=+g1(o,h);B=a[C>>2]|0;c=+s[B+16>>3];b=+s[B+24>>3];Z=+s[B+96>>3]+ +s[B+88>>3];w=+s[B+80>>3];B=Z>w+ +(a[(a[(Id(A)|0)+16>>2]|0)+252>>2]|0);i=a[C>>2]|0;if(B)w=+s[i+96>>3]+ +s[i+88>>3];else{w=+s[i+80>>3];w=w+ +(a[(a[(Id(A)|0)+16>>2]|0)+252>>2]|0);i=a[C>>2]|0}Z=+s[i+16>>3]+w*(o/t);t=+s[i+24>>3]+w*(h/t);s[d>>3]=c;u=d+8|0;s[u>>3]=b;s[d+16>>3]=(Z+c*2.0)*.3333333333333333;s[d+24>>3]=(t+b*2.0)*.3333333333333333;s[d+32>>3]=(Z*2.0+c)*.3333333333333333;s[d+40>>3]=(t*2.0+b)*.3333333333333333;s[d+48>>3]=Z;s[d+56>>3]=t;dN(A,d);B=a[C>>2]|0;t=+s[d>>3]-+s[B+16>>3];c=+s[u>>3]-+s[B+24>>3];t=+(~~(t+(t>=0.0?.5:-.5))|0);c=+(~~(c+(c>=0.0?.5:-.5))|0);Z=+s[B+88>>3];B=~~((Z+t)*256.0/(+s[B+96>>3]+Z))&255;d=0;while(1){if((d|0)>=(a[E>>2]|0))break;u=a[(a[e>>2]|0)+(d<<2)>>2]|0;DC(u,g,v);while(1){if(!u)break;else n=u;while(1){if(!n){l=u;break}i=a[n>>2]|0;l=n+-48|0;if((a[((i&3|0)==2?n:l)+40>>2]|0)==(A|0)){i=a[n+16>>2]|0;s[i+56>>3]=t;s[i+64>>3]=c;s[i+72>>3]=0.0;a[i+80>>2]=0;r[i+84>>0]=1;r[i+85>>0]=0;r[i+86>>0]=0;r[i+87>>0]=0;r[i+88>>0]=B;r[i+89>>0]=0;a[i+92>>2]=0;i=a[n>>2]|0}f=n+16|0;if((a[((i&3|0)==3?n:n+48|0)+40>>2]|0)==(A|0)){i=a[f>>2]|0;s[i+16>>3]=t;s[i+24>>3]=c;s[i+32>>3]=0.0;a[i+40>>2]=0;r[i+44>>0]=1;r[i+45>>0]=0;r[i+46>>0]=0;r[i+47>>0]=0;r[i+48>>0]=B;r[i+49>>0]=0;a[i+52>>2]=0}if((r[(a[f>>2]|0)+112>>0]|0)!=1){n=0;continue}i=a[(a[((a[n>>2]&3|0)==2?n:l)+40>>2]|0)+16>>2]|0;if((r[i+156>>0]|0)!=1){n=0;continue}if((a[i+184>>2]|0)!=1){n=0;continue}n=a[a[i+180>>2]>>2]|0}while(1){if(!l)break;i=a[l>>2]|0;if((a[((i&3|0)==2?l:l+-48|0)+40>>2]|0)==(A|0)){i=a[l+16>>2]|0;s[i+56>>3]=t;s[i+64>>3]=c;s[i+72>>3]=0.0;a[i+80>>2]=0;r[i+84>>0]=1;r[i+85>>0]=0;r[i+86>>0]=0;r[i+87>>0]=0;r[i+88>>0]=B;r[i+89>>0]=0;a[i+92>>2]=0;i=a[l>>2]|0}f=l+48|0;n=l+16|0;if((a[((i&3|0)==3?l:f)+40>>2]|0)==(A|0)){i=a[n>>2]|0;s[i+16>>3]=t;s[i+24>>3]=c;s[i+32>>3]=0.0;a[i+40>>2]=0;r[i+44>>0]=1;r[i+45>>0]=0;r[i+46>>0]=0;r[i+47>>0]=0;r[i+48>>0]=B;r[i+49>>0]=0;a[i+52>>2]=0}if((r[(a[n>>2]|0)+112>>0]|0)!=1){l=0;continue}i=a[(a[((a[l>>2]&3|0)==3?l:f)+40>>2]|0)+16>>2]|0;if((r[i+156>>0]|0)!=1){l=0;continue}if((a[i+176>>2]|0)!=1){l=0;continue}l=a[a[i+172>>2]>>2]|0}u=a[(a[u+16>>2]|0)+172>>2]|0}d=d+1|0}r[(a[C>>2]|0)+145>>0]=1;k=I;return}function MY(A){A=A|0;var e=0,i=0,r=0;Cy(A);e=a[A>>2]&3;i=A+-48|0;r=A+48|0;e=dy(a[((e|0)==2?A:i)+40>>2]|0,a[((e|0)==3?A:r)+40>>2]|0)|0;if(!e){e=a[A>>2]&3;Qy(a[((e|0)==2?A:i)+40>>2]|0,a[((e|0)==3?A:r)+40>>2]|0,A)|0}else Fy(A,e);return}function FY(A){A=A|0;var e=0,i=0,f=0,n=0;f=A+16|0;i=0;while(1){A=a[f>>2]|0;if((i|0)>=(a[A+220>>2]|0))break;e=a[(a[A+216>>2]|0)+(i<<2)>>2]|0;a[A+192>>2]=e;A=e;e=A;while(1){if(!e)break;n=a[e+16>>2]|0;r[n+157>>0]=0;e=a[n+164>>2]|0}while(1){if(!A)break;VY(A);A=a[(a[A+16>>2]|0)+164>>2]|0}i=i+1|0}return}function VY(A){A=A|0;var e=0,i=0,f=0,n=0;n=A+16|0;e=a[n>>2]|0;A=e+157|0;if(!(r[A>>0]|0)){r[A>>0]=1;r[e+158>>0]=1;A=0;while(1){f=a[(a[e+180>>2]|0)+(A<<2)>>2]|0;if(!f)break;e=a[((a[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;i=a[e+16>>2]|0;if(!(r[i+158>>0]|0)){if(!(r[i+157>>0]|0))VY(e)}else{MY(f);A=A+-1|0}A=A+1|0;e=a[n>>2]|0}r[e+158>>0]=0}return}function JY(A){A|0;var e=0,i=0,r=0,f=0,n=0,l=0;cd(A)|0;0;while(1){if(!r)break;Oo(A,r)|0;while(1){if(!i)break;a[i>>2]&3;a[(a[(a[((n|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;a[(a[(a[((n|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;l-n|0;_o(A,i)|0;((l|0)==(n|0)?0:((f|0)>-1?f:0-f|0)+-1|0)+e|0}sd(A,r)|0}return e|0}function pY(A){A=A|0;var e=0,i=0,f=0,n=0;i=cd(A)|0;while(1){if(!i)break;n=a[i+16>>2]|0;f=a[n+176>>2]|0;n=n+172|0;e=0;while(1){if((e|0)>=(f|0))break;r[(a[(a[(a[n>>2]|0)+(e<<2)>>2]|0)+16>>2]|0)+112>>0]=0;e=e+1|0}i=sd(A,i)|0}return}function NY(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0.0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+16|0;w=h;t=a[e+24>>2]|0;RY(A);c=(t|0)==-1;b=e+8|0;l=c^1;u=a[15712]|0;f=1797693134862315708145274.0e284;n=0;while(1){if(!(c|(n|0)<(t|0)))break;i=cd(A)|0;while(1){if(!i)break;a[(a[i+16>>2]|0)+232>>2]=0;i=sd(A,i)|0}Vz(A);r=+XY(A);s[b>>3]=r;if(0){}if(!(!(r<=+s[e>>3])&(!(f<=r)|l))){o=9;break}HY(A);f=r;n=n+1|0}if((o|0)==9){o=e+20|0;a[e+16>>2]=a[o>>2];a[o>>2]=n}Vz(A);UY(A);xY();s[b>>3]=+XY(A);k=h;return}function RY(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0.0,u=0.0,w=0;a[46752]=$F((gh(A)|0)*24|0)|0;a[46751]=0;e=cd(A)|0;while(1){if(!e)break;a[(a[e+16>>2]|0)+120>>2]=-1;e=sd(A,e)|0}l=cd(A)|0;while(1){if(!l)break;t=l+16|0;do{if(!(a[(a[t>>2]|0)+216>>2]|0)){f=qF(4)|0;n=a[46752]|0;c=a[46751]|0;a[n+(c*24|0)>>2]=f;a[f>>2]=l;a[n+(c*24|0)+4>>2]=1;t=a[t>>2]|0;s[n+(c*24|0)+8>>3]=+s[t+32>>3];s[n+(c*24|0)+16>>3]=+s[t+40>>3];a[t+120>>2]=c;a[46751]=c+1}else{n=CR(l)|0;c=n+16|0;e=a[c>>2]|0;i=a[e+120>>2]|0;if((i|0)>-1){n=a[46752]|0;f=a[n+(i*24|0)>>2]|0;r=n+(i*24|0)+4|0;c=a[r>>2]|0;a[r>>2]=c+1;a[f+(c<<2)>>2]=l;c=a[t>>2]|0;t=n+(i*24|0)+8|0;s[t>>3]=+s[t>>3]+ +s[c+32>>3];t=n+(i*24|0)+16|0;b=+s[t>>3];u=+s[c+40>>3];s[t>>3]=b>2]=i;break}i=qF(a[e+216>>2]<<2)|0;r=a[46752]|0;f=a[46751]|0;e=r+(f*24|0)|0;a[e>>2]=i;a[i>>2]=n;if((n|0)==(l|0)){s[r+(f*24|0)+8>>3]=+s[(a[c>>2]|0)+32>>3];i=1;e=l}else{a[(a[e>>2]|0)+4>>2]=l;w=a[c>>2]|0;e=a[t>>2]|0;s[r+(f*24|0)+8>>3]=+s[e+32>>3]+ +s[w+32>>3];i=2;e=+s[w+40>>3]<+s[e+40>>3]?l:n}a[r+(f*24|0)+4>>2]=i;s[r+(f*24|0)+16>>3]=+s[(a[e+16>>2]|0)+40>>3];a[(a[c>>2]|0)+120>>2]=f;a[(a[t>>2]|0)+120>>2]=f;a[46751]=f+1}}while(0);l=sd(A,l)|0}return}function XY(A){A=A|0;var e=0.0,i=0.0,r=0,f=0,n=0,l=0.0,t=0.0;UY(A);n=a[46749]|0;r=a[A+16>>2]|0;e=+(U(a[r+252>>2]|0,n+-1|0)|0);f=a[46750]|0;r=r+248|0;A=0;i=0.0;while(1){if((A|0)>=(n|0))break;l=+s[f+(A*40|0)+24>>3]+ +(U(a[r>>2]|0,a[f+(A*40|0)+16>>2]|0)|0);t=+s[f+(A*40|0)+32>>3]+e;A=A+1|0;e=t;i=i =(gh(A)|0))break;a[(a[46753]|0)+(e<<2)>>2]=e;e=e+1|0}UY(A);TY(A);jY(A);return}function UY(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0.0,c=0,b=0;a[46749]=0;e=a[46750]|0;if(e|0){r=0;while(1){if((r|0)>=(a[46751]|0))break;i=a[e+(r*40|0)+4>>2]|0;if(i){L2(i);e=a[46750]|0}i=a[e+(r*40|0)+8>>2]|0;if(i){L2(i);e=a[46750]|0}r=r+1|0}L2(e)}a[46750]=qF((a[46751]|0)*40|0)|0;e=0;while(1){i=a[46751]|0;if((e|0)>=(i|0))break;c=qF(i<<2)|0;a[(a[46750]|0)+(e*40|0)+4>>2]=c;c=qF(a[46751]<<2)|0;b=a[46750]|0;a[b+(e*40|0)+8>>2]=c;a[b+(e*40|0)>>2]=e;a[b+(e*40|0)+12>>2]=0;a[b+(e*40|0)+16>>2]=0;b=b+(e*40|0)+24|0;a[b>>2]=0;a[b+4>>2]=0;a[b+8>>2]=0;a[b+12>>2]=0;e=e+1|0}r=cd(A)|0;while(1){if(!r)break;i=Oo(A,r)|0;while(1){if(!i)break;l=a[i>>2]|0;f=i+-48|0;n=a[46750]|0;e=a[(a[(a[((l&3|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;while(1){e=e+1|0;if((e|0)>=(a[(a[(a[((l&3|0)==2?i:f)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;l=n+(e*40|0)+16|0;a[l>>2]=(a[l>>2]|0)+1;l=a[i>>2]|0}i=_o(A,i)|0}r=sd(A,r)|0}l=a[46751]|0;c=a[46752]|0;b=a[46750]|0;i=A+16|0;e=0;while(1){if((e|0)>=(l|0))break;r=(a[a[c+(e*24|0)>>2]>>2]|0)+16|0;f=a[(a[r>>2]|0)+232>>2]|0;if((f|0)>=(a[46749]|0))a[46749]=f+1;n=b+(f*40|0)+24|0;t=+s[n>>3];s[n>>3]=t+ +s[c+(e*24|0)+8>>3]*72.0+(t>0.0?+(a[(a[i>>2]|0)+248>>2]|0):0.0);n=b+(f*40|0)+32|0;t=+s[c+(e*24|0)+16>>3]*72.0;if(+s[n>>3] >3]=t;a[(a[b+(f*40|0)+4>>2]|0)+(a[b+(f*40|0)+12>>2]<<2)>>2]=c+(e*24|0);A=b+((a[(a[r>>2]|0)+232>>2]|0)*40|0)+12|0;a[A>>2]=(a[A>>2]|0)+1;e=e+1|0}return}function xY(){var A=0,e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;s=a[46749]|0;b=a[46750]|0;c=0;e=0;A=0;while(1){if((c|0)>=(s|0))break;i=b+(c*40|0)|0;t=a[b+(c*40|0)+12>>2]|0;r=(e|0)==0;A:do{if(t)if(!r){if((a[i>>2]|0)>(A|0)){f=b+(c*40|0)+4|0;i=0;while(1){if((i|0)>=(t|0))break A;n=a[(a[f>>2]|0)+(i<<2)>>2]|0;l=a[n+4>>2]|0;r=0;while(1){if((r|0)>=(l|0))break;u=(a[(a[(a[n>>2]|0)+(r<<2)>>2]|0)+16>>2]|0)+232|0;a[u>>2]=(a[u>>2]|0)-e;r=r+1|0}i=i+1|0}}}else e=0;else{if(r)A=a[i>>2]|0;e=e+1|0}}while(0);c=c+1|0}return}function TY(A){A=A|0;var e=0;e=a[46753]|0;K4(e,gh(A)|0,4,63);return}function jY(A){A=A|0;var e=0.0,i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0.0,w=0,k=0,o=0,h=0,d=0.0,B=0;t=a[46749]|0;c=a[46750]|0;n=a[46753]|0;l=0;while(1){if((l|0)>=(t|0)){i=0;e=0.0;break}i=a[n+(l<<2)>>2]|0;f=l+1|0;if((a[c+(i*40|0)+12>>2]|0)<2)l=f;else{b=4;break}}if((b|0)==4)if((t|0)>(f|0))e=+s[c+((a[n+(f<<2)>>2]|0)*40|0)+24>>3];else e=0.0;A:do{if((l|0)!=(t|0)){K4(a[c+(i*40|0)+4>>2]|0,a[c+(i*40|0)+12>>2]|0,4,64);n=a[46750]|0;d=+s[n+(i*40|0)+24>>3];d=!(e<=d*.25)&!(e>=d*.75)?e:d*.5;B=a[n+(i*40|0)+12>>2]|0;h=A+16|0;w=0;k=0;e=0.0;f=0;o=0;while(1){if((o|0)>=(f+B|0))break A;do{if(!(a[(a[n+(i*40|0)+8>>2]|0)+(o<<2)>>2]|0)){b=a[(a[n+(i*40|0)+4>>2]|0)+(o<<2)>>2]|0;A=b+8|0;u=+s[A>>3]*72.0+e+(e>0.0?+(a[(a[h>>2]|0)+248>>2]|0):0.0);l=(k|0)!=0;if(!(l&!(u<=d))){t=l?w:b;l=l?k:1;e=u;break}t=w+4|0;c=b+4|0;l=0;while(1){if((l|0)<(a[t>>2]|0))n=0;else break;while(1){if((n|0)>=(a[c>>2]|0))break;r[(a[(Qy(a[(a[w>>2]|0)+(l<<2)>>2]|0,a[(a[b>>2]|0)+(n<<2)>>2]|0,0)|0)+16>>2]|0)+112>>0]=1;n=n+1|0}l=l+1|0}n=a[46750]|0;a[(a[n+(i*40|0)+8>>2]|0)+(o<<2)>>2]=1;t=n+(i*40|0)+12|0;a[t>>2]=(a[t>>2]|0)+-1;t=n+(i*40|0)+16|0;a[t>>2]=(a[t>>2]|0)+1;t=n+(i*40|0)+24|0;s[t>>3]=+s[A>>3]*-72.0-+(a[(a[h>>2]|0)+248>>2]|0)+ +s[t>>3];t=w;l=k}else{t=w;l=k;f=f+1|0}}while(0);w=t;k=l;o=o+1|0}}}while(0);return}function PY(A,e){A=A|0;e=e|0;A=SY(a[A>>2]|0)|0;e=SY(a[e>>2]|0)|0;return((e|0)<(A|0)&1)-((e|0)>(A|0)&1)|0}function SY(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;f=A+4|0;i=0;e=0;while(1){if((i|0)>=(a[f>>2]|0))break;r=a[(a[A>>2]|0)+(i<<2)>>2]|0;n=Id(r)|0;r=Oo(n,r)|0;while(1){if(!r)break;r=_o(n,r)|0;e=e+1|0}i=i+1|0}return e|0}function OY(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0;f=a[46750]|0;r=+s[f+((a[e>>2]|0)*40|0)+24>>3];i=+s[f+((a[A>>2]|0)*40|0)+24>>3];return(r>i&1)-(r>2]|0)+216>>2]=0;e=sd(A,e)|0}return}function _Y(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;n=k;k=k+32|0;f=n+16|0;r=n+8|0;i=n+20|0;a[i>>2]=5;A=Ho(A,99605)|0;if(A|0?(a[r>>2]=n,a[r+4>>2]=i,(J3(A,87497,r)|0)>=1):0)ao(0,87504,f)|0;a[e+24>>2]=0;a[e+32>>2]=0;k=n;return 0}function qY(A){A=A|0;var e=0,i=0;e=a[47189]|0;if((((e|0)!=0?(i=Uo(A,e)|0,(i|0)!=0):0)?(r[i>>0]|0)!=0:0)?(vR(i)|0)<<24>>24==0:0)A=1;else A=0;return A|0}function $Y(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0;vD(A);e=cd(A)|0;while(1){if(!e)break;i=Oo(A,e)|0;while(1){if(!i)break;do{if(((a[(a[i+16>>2]|0)+172>>2]|0)==0?(qY(i)|0)==0:0)?(r=i+48|0,f=CR(a[((a[i>>2]&3|0)==3?i:r)+40>>2]|0)|0,n=i+-48|0,l=CR(a[((a[i>>2]&3|0)==2?i:n)+40>>2]|0)|0,(f|0)!=(l|0)):0){if((a[(a[f+16>>2]|0)+212>>2]|0)==0?(a[(a[l+16>>2]|0)+212>>2]|0)==0:0){t=dy(f,l)|0;if(!t){Qy(f,l,i)|0;break}else{Fy(i,t);break}}t=a[i>>2]&3;AD(A,a[((t|0)==3?i:r)+40>>2]|0,a[((t|0)==2?i:n)+40>>2]|0,i)}}while(0);i=_o(A,i)|0}e=sd(A,e)|0}return}function AD(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,t=0,c=0,s=0;c=a[f>>2]&3;n=a[(a[((c|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0;t=a[n+212>>2]|0;if(!t)s=0;else s=(a[n+232>>2]|0)-(a[(a[(a[(a[t+16>>2]|0)+264>>2]|0)+16>>2]|0)+232>>2]|0)|0;n=a[(a[((c|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0;t=a[n+212>>2]|0;if(!t)n=0;else n=(a[(a[(a[(a[t+16>>2]|0)+264>>2]|0)+16>>2]|0)+232>>2]|0)-(a[n+232>>2]|0)|0;c=f+16|0;s=n+s+(l[(a[c>>2]|0)+170>>1]|0)|0;A=Yy(A)|0;r[(a[A+16>>2]|0)+156>>0]=2;t=CR(e)|0;e=CR(i)|0;i=bz(A,t,(s|0)>0?0.0:+(0-s|0),(a[(a[c>>2]|0)+156>>2]|0)*10|0)|0;a[(a[(bz(A,e,+(((s|0)>0?s:0)|0),a[(a[c>>2]|0)+156>>2]|0)|0)+16>>2]|0)+116>>2]=f;a[(a[i+16>>2]|0)+116>>2]=f;return}function eD(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var n=0,t=0,c=0,s=0;c=a[e>>2]&3;t=(c|0)==3?e:e+48|0;c=(c|0)==2?e:e+-48|0;c=a[(a[(a[((a[(a[(a[t+40>>2]|0)+16>>2]|0)+232>>2]|0)>(a[(a[(a[c+40>>2]|0)+16>>2]|0)+232>>2]|0)?t:c)+40>>2]|0)+16>>2]|0)+232>>2]|0;t=e+16|0;e=(a[t>>2]|0)+172|0;if(a[e>>2]|0)gA(87593,87615,148,87624);a[e>>2]=i;n=(r|0)==0;do{e=a[t>>2]|0;if(n)r=a[i+16>>2]|0;else{r=a[i+16>>2]|0;s=r+168|0;f[s>>1]=(l[s>>1]|0)+(l[e+168>>1]|0)}s=r+154|0;f[s>>1]=(l[s>>1]|0)+(l[e+154>>1]|0);r=r+156|0;a[r>>2]=(a[r>>2]|0)+(a[e+156>>2]|0);e=i+-48|0;r=a[((a[i>>2]&3|0)==2?i:e)+40>>2]|0;if((a[(a[r+16>>2]|0)+232>>2]|0)==(c|0))break;iD(A,r);i=a[a[(a[(a[((a[i>>2]&3|0)==2?i:e)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}while((i|0)!=0);return}function iD(A,e){A=A|0;e=e|0;var i=0.0;i=+((a[(a[A+16>>2]|0)+248>>2]|0)/2|0|0);e=a[e+16>>2]|0;A=e+88|0;s[A>>3]=+s[A>>3]+i;e=e+96|0;s[e>>3]=+s[e>>3]+i;return}function rD(A,e){A=A|0;e=e|0;var i=0,r=0;if(((((A|0)!=0&(e|0)!=0?(r=a[A>>2]&3,i=a[e>>2]&3,(a[((r|0)==3?A:A+48|0)+40>>2]|0)==(a[((i|0)==3?e:e+48|0)+40>>2]|0)):0)?(a[((r|0)==2?A:A+-48|0)+40>>2]|0)==(a[((i|0)==2?e:e+-48|0)+40>>2]|0):0)?(a[(a[A+16>>2]|0)+96>>2]|0)==(a[(a[e+16>>2]|0)+96>>2]|0):0)?(Mz(A,e)|0)!=0:0)A=1;else A=0;return A|0}function fD(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0;d=A+16|0;e=a[d>>2]|0;a[e+192>>2]=0;a[e+232>>2]=0;vD(A);e=1;while(1){i=a[d>>2]|0;if((e|0)>(a[i+180>>2]|0))break;ED(A,a[(a[i+184>>2]|0)+(e<<2)>>2]|0);e=e+1|0}l=cd(A)|0;while(1){if(!l)break;n=Oo(A,l)|0;while(1){if(!n)break;e=a[n>>2]|0;i=(a[(a[((e&3|0)==2?n:n+-48|0)+40>>2]|0)+16>>2]|0)+160|0;f=r[i>>0]|0;if(f<<24>>24<3){r[i>>0]=f+1<<24>>24;e=a[n>>2]|0}e=(a[(a[((e&3|0)==3?n:n+48|0)+40>>2]|0)+16>>2]|0)+160|0;i=r[e>>0]|0;if(i<<24>>24<3)r[e>>0]=i+1<<24>>24;n=_o(A,n)|0}l=sd(A,l)|0}u=cd(A)|0;while(1){if(!u)break;if((a[(a[u+16>>2]|0)+212>>2]|0)==0?(u|0)==(CR(u)|0):0){Ly(A,u);b=(a[d>>2]|0)+232|0;a[b>>2]=(a[b>>2]|0)+1}e=0;b=Oo(A,u)|0;while(1){if(!b)break;s=b+16|0;l=a[s>>2]|0;A:do{if(!(a[l+172>>2]|0)){if(aD(b)|0){if(!(rD(e,b)|0)){nD(A,b);e=b;break}i=a[(a[e+16>>2]|0)+172>>2]|0;if(i|0){eD(A,b,i,0);Iy(b);break}s=a[b>>2]&3;if((a[(a[(a[((s|0)==3?b:b+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)!=(a[(a[(a[((s|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;Fy(b,e);Iy(b);break}if(e){t=a[b>>2]&3;i=b+48|0;f=a[((t|0)==3?b:i)+40>>2]|0;n=a[e>>2]&3;if((f|0)==(a[((n|0)==3?e:e+48|0)+40>>2]|0)?(w=a[((t|0)==2?b:b+-48|0)+40>>2]|0,(w|0)==(a[((n|0)==2?e:e+-48|0)+40>>2]|0)):0){if((a[(a[f+16>>2]|0)+232>>2]|0)==(a[(a[w+16>>2]|0)+232>>2]|0)){Fy(b,e);Iy(b);break}if(((a[l+96>>2]|0)==0?(k=e+16|0,(a[(a[k>>2]|0)+96>>2]|0)==0):0)?(Mz(b,e)|0)!=0:0)if(!(r[194954]|0)){eD(A,b,a[(a[k>>2]|0)+172>>2]|0,1);Iy(b);break}else{r[(a[s>>2]|0)+112>>0]=6;break}else t=i}else t=i}else t=b+48|0;l=a[b>>2]&3;i=a[((l|0)==3?b:t)+40>>2]|0;c=b+-48|0;if((i|0)==(a[((l|0)==2?b:c)+40>>2]|0)){Iy(b);e=b;break}i=CR(i)|0;f=CR(a[((a[b>>2]&3|0)==2?b:c)+40>>2]|0)|0;l=a[b>>2]&3;if((a[((l|0)==3?b:t)+40>>2]|0)==(i|0)?(a[((l|0)==2?b:c)+40>>2]|0)==(f|0):0){n=a[(a[i+16>>2]|0)+232>>2]|0;l=a[(a[f+16>>2]|0)+232>>2]|0;if((n|0)==(l|0)){Dy(A,b);e=b;break}if((l|0)>(n|0)){lD(A,i,f,b);e=b;break}i=th(A,f,i,0,0)|0;do{if(i|0?(o=a[i>>2]&3,h=a[((o|0)==2?i:i+-48|0)+40>>2]|0,(h|0)!=(a[((a[b>>2]&3|0)==2?b:c)+40>>2]|0)):0){f=i+16|0;if(!(a[(a[f>>2]|0)+172>>2]|0))lD(A,a[((o|0)==3?i:i+48|0)+40>>2]|0,h,i);if((a[(a[s>>2]|0)+96>>2]|0)==0?(a[(a[f>>2]|0)+96>>2]|0)==0:0){if(!(Mz(b,i)|0))break;if(!(r[194954]|0)){Iy(b);eD(A,b,a[(a[f>>2]|0)+172>>2]|0,1);break A}else{r[(a[s>>2]|0)+112>>0]=6;r[(a[f>>2]|0)+153>>0]=1;break A}}}}while(0);e=a[b>>2]&3;lD(A,a[((e|0)==2?b:c)+40>>2]|0,a[((e|0)==3?b:t)+40>>2]|0,b);e=b}}else e=b}while(0);b=_o(A,b)|0}u=sd(A,u)|0}if((vL(A)|0)!=(A|0)){e=a[(a[d>>2]|0)+216>>2]|0;if(!e)e=$F(4)|0;else e=eV(e,4)|0;d=a[d>>2]|0;a[d+216>>2]=e;a[e>>2]=a[d+192>>2]}return}function aD(A){A=A|0;var e=0;e=a[A>>2]&3;if((r[(a[(a[((e|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+159>>0]|0)==7)A=1;else A=(r[(a[(a[((e|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+159>>0]|0)==7&1;return A|0}function nD(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0;f=sD(a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0;n=sD(a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)|0;t=(a[(a[f+16>>2]|0)+232>>2]|0)>(a[(a[n+16>>2]|0)+232>>2]|0);i=t?f:n;f=t?n:f;n=f+16|0;t=i+16|0;A:do{if((a[(a[n>>2]|0)+212>>2]|0)!=(a[(a[t>>2]|0)+212>>2]|0)){l=dy(f,i)|0;if(l|0){eD(A,e,l,1);break}if((a[(a[n>>2]|0)+232>>2]|0)!=(a[(a[t>>2]|0)+232>>2]|0)){lD(A,f,i,e);i=(a[e+16>>2]|0)+172|0;while(1){i=a[i>>2]|0;if(!i)break A;f=i+-48|0;if((a[(a[(a[((a[i>>2]&3|0)==2?i:f)+40>>2]|0)+16>>2]|0)+232>>2]|0)>(a[(a[t>>2]|0)+232>>2]|0))break A;r[(a[i+16>>2]|0)+112>>0]=5;i=a[(a[(a[((a[i>>2]&3|0)==2?i:f)+40>>2]|0)+16>>2]|0)+180>>2]|0}}}}while(0);return}function lD(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,s=0;s=r+16|0;f=a[s>>2]|0;if(!(a[f+96>>2]|0))c=-1;else c=((a[(a[i+16>>2]|0)+232>>2]|0)+(a[(a[e+16>>2]|0)+232>>2]|0)|0)/2|0;if(a[f+172>>2]|0)gA(87636,87615,89,87661);t=i+16|0;l=a[(a[e+16>>2]|0)+232>>2]|0;while(1){n=l+1|0;f=a[(a[t>>2]|0)+232>>2]|0;if((l|0)>=(f|0))break;if((n|0)<(f|0)){if((n|0)==(c|0))f=tD(A,r)|0;else f=cD(A)|0;a[(a[f+16>>2]|0)+232>>2]=n}else f=i;SW(Qy(e,f,r)|0);l=n;e=f}if(!(a[(a[s>>2]|0)+172>>2]|0))gA(87672,87615,103,87661);else return}function tD(A,e){A=A|0;e=e|0;var i=0.0,f=0.0,n=0,l=0,t=0.0;l=e+16|0;n=a[(a[l>>2]|0)+96>>2]|0;i=+s[n+24>>3];f=+s[n+32>>3];n=Yy(A)|0;e=n+16|0;a[(a[e>>2]|0)+104>>2]=a[(a[l>>2]|0)+96>>2];t=+(a[(a[(Zd(n)|0)+16>>2]|0)+248>>2]|0);s[(a[e>>2]|0)+88>>3]=t;if(!(r[(a[l>>2]|0)+114>>0]|0)){A=(a[(a[(Zd(A)|0)+16>>2]|0)+116>>2]&1|0)==0;l=a[e>>2]|0;s[l+80>>3]=A?f:i;s[l+96>>3]=A?i:f}return n|0}function cD(A){A=A|0;var e=0;e=Yy(A)|0;iD(A,e);return e|0}function sD(A){A=A|0;var e=0;e=a[A+16>>2]|0;if((r[e+159>>0]|0)==7)A=a[(a[(a[(a[e+212>>2]|0)+16>>2]|0)+268>>2]|0)+(a[e+232>>2]<<2)>>2]|0;else A=CR(A)|0;return A|0}function bD(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;c=vL(A)|0;l=cd(A)|0;while(1){if(!l)break;e=Ah(c,l)|0;t=0;while(1){if(!e)break;b=eh(c,e,l)|0;if(Dd(A,e)|0){s=t;e=b;t=s;continue}s=(a[e>>2]&3|0)==2?e:e+-48|0;u=(rD(t,s)|0)==0;r=a[s>>2]&3;e=a[((r|0)==3?s:s+48|0)+40>>2]|0;i=a[(a[e+16>>2]|0)+232>>2]|0;r=a[((r|0)==2?s:s+-48|0)+40>>2]|0;f=a[(a[r+16>>2]|0)+232>>2]|0;n=(i|0)==(f|0);if(!u){a[(a[s+16>>2]|0)+172>>2]=n?t:0;e=a[(a[t+16>>2]|0)+172>>2]|0;if(!e){u=t;e=b;t=u;continue}eD(A,s,e,0);Zy(s);u=t;e=b;t=u;continue}if(!n)if((f|0)>(i|0)){uD(e,r,s);e=b;t=s;continue}else{uD(r,e,s);e=b;t=s;continue}e=gy(e,r)|0;if(!e){Dy(c,s);e=b;t=s;continue}if((s|0)==(e|0)){u=t;e=b;t=u;continue}Zy(s);if(a[(a[s+16>>2]|0)+172>>2]|0){u=t;e=b;t=u;continue}Fy(s,e);u=t;e=b;t=u}l=sd(A,l)|0}return}function uD(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;f=wD(A)|0;r=wD(e)|0;kD(f,r,i,a[(a[i+16>>2]|0)+172>>2]|0,(f|0)==(A|0)&(r|0)==(e|0)?1:5);return}function wD(A){A=A|0;var e=0,i=0,f=0;e=a[A+16>>2]|0;i=a[e+212>>2]|0;if((i|0)!=0?(f=a[i+16>>2]|0,(r[f+272>>0]|0)==0):0)A=a[(a[f+268>>2]|0)+(a[e+232>>2]<<2)>>2]|0;return A|0}function kD(A,e,i,n,l){A=A|0;e=e|0;i=i|0;n=n|0;l=l|0;var t=0,c=0,s=0,b=0,u=0,w=0,k=0;w=A+16|0;s=a[(a[w>>2]|0)+232>>2]|0;k=e+16|0;t=a[(a[k>>2]|0)+232>>2]|0;if((t|0)<=(s|0))gA(87697,87725,81,87735);u=a[n>>2]&3;if(!((a[((u|0)==3?n:n+48|0)+40>>2]|0)==(A|0)?(a[((u|0)==2?n:n+-48|0)+40>>2]|0)==(e|0):0))b=5;A:do{if((b|0)==5){if((f[(a[n+16>>2]|0)+168>>1]|0)>1){a[(a[i+16>>2]|0)+172>>2]=0;if(((t-s|0)==1?(c=dy(A,e)|0,c|0):0)?Mz(i,c)|0:0){Fy(i,c);if(r[(a[w>>2]|0)+156>>0]|0)break;if(r[(a[k>>2]|0)+156>>0]|0)break;Iy(i);break}u=l&255;l=A;b=a[(a[w>>2]|0)+232>>2]|0;while(1){t=a[(a[k>>2]|0)+232>>2]|0;if((b|0)>=(t|0))break A;if((b|0)<(t+-1|0)){t=vL(A)|0;c=n+-48|0;t=oD(t,a[((a[n>>2]&3|0)==2?n:c)+40>>2]|0)|0;s=n}else{t=e;c=n+-48|0;s=n}r[(a[(Qy(l,t,i)|0)+16>>2]|0)+112>>0]=u;w=(a[n+16>>2]|0)+168|0;f[w>>1]=(f[w>>1]|0)+-1<<16>>16;l=t;b=b+1|0;n=a[a[(a[(a[((a[s>>2]&3|0)==2?n:c)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}}do{if((t-s|0)==1){n=dy(A,e)|0;if(n|0?Mz(i,n)|0:0){a[(a[i+16>>2]|0)+172>>2]=n;u=a[n+16>>2]|0;r[u+112>>0]=l;u=u+168|0;f[u>>1]=(f[u>>1]|0)+1<<16>>16;if(r[(a[w>>2]|0)+156>>0]|0)break;if(r[(a[k>>2]|0)+156>>0]|0)break;Iy(i);break}a[(a[i+16>>2]|0)+172>>2]=0;n=Qy(A,e,i)|0;r[(a[n+16>>2]|0)+112>>0]=l}}while(0);t=a[(a[k>>2]|0)+232>>2]|0;if((t-(a[(a[w>>2]|0)+232>>2]|0)|0)>1){if((a[((a[n>>2]&3|0)==3?n:n+48|0)+40>>2]|0)==(A|0))b=t;else{w=i+16|0;a[(a[w>>2]|0)+172>>2]=0;b=Qy(A,a[((a[n>>2]&3|0)==2?n:n+-48|0)+40>>2]|0,i)|0;a[(a[w>>2]|0)+172>>2]=b;Cy(n);n=b;b=a[(a[k>>2]|0)+232>>2]|0}while(1){t=a[n>>2]&3;c=a[((t|0)==2?n:n+-48|0)+40>>2]|0;s=a[c+16>>2]|0;if((a[s+232>>2]|0)==(b|0))break;n=a[a[s+180>>2]>>2]|0}if((c|0)!=(e|0)){r[(a[(Qy(a[((t|0)==3?n:n+48|0)+40>>2]|0,e,i)|0)+16>>2]|0)+112>>0]=l;Cy(n)}}}}while(0);return}function oD(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=e+16|0;e=a[i>>2]|0;r=a[e+232>>2]|0;hD(A,r,a[e+236>>2]|0,2);e=Yy(A)|0;i=a[i>>2]|0;f=a[e+16>>2]|0;s[f+88>>3]=+s[i+88>>3];s[f+96>>3]=+s[i+96>>3];a[f+232>>2]=a[i+232>>2];i=(a[i+236>>2]|0)+1|0;a[f+236>>2]=i;a[(a[(a[(a[A+16>>2]|0)+196>>2]|0)+(r<<6)+4>>2]|0)+(i<<2)>>2]=e;return e|0}function hD(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0;l=A+16|0;f=a[(a[l>>2]|0)+196>>2]|0;t=a[f+(e<<6)+4>>2]|0;A:do{if((r|0)<1){i=i-r|0;while(1){n=i+1|0;A=a[f+(e<<6)>>2]|0;if((n|0)>=(A|0))break;A=a[t+(n<<2)>>2]|0;f=i+r|0;a[(a[A+16>>2]|0)+236>>2]=f;a[t+(f<<2)>>2]=A;i=n;f=a[(a[l>>2]|0)+196>>2]|0}n=r+-1|0;i=n+A|0;while(1){if((i|0)>=(A|0))break A;a[t+(i<<2)>>2]=0;f=a[(a[l>>2]|0)+196>>2]|0;i=i+1|0;A=a[f+(e<<6)>>2]|0}}else{n=r+-1|0;A=a[f+(e<<6)>>2]|0;while(1){A=A+-1|0;if((A|0)<=(i|0))break;c=a[t+(A<<2)>>2]|0;f=n+A|0;a[(a[c+16>>2]|0)+236>>2]=f;a[t+(f<<2)>>2]=c}f=r+i|0;A=i;while(1){A=A+1|0;if((A|0)>=(f|0))break;a[t+(A<<2)>>2]=0}A=a[(a[l>>2]|0)+196>>2]|0;f=A;A=a[A+(e<<6)>>2]|0}}while(0);a[f+(e<<6)>>2]=n+A;return}function dD(A){A=A|0;var e=0;fD(A);e=a[A+16>>2]|0;a[e+220>>2]=1;a[a[e+216>>2]>>2]=a[e+192>>2];TW(A);ZW(A,0);BD(A);bD(A);gD(A);return}function BD(A){A=A|0;var e=0,i=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;s=vL(A)|0;b=A+16|0;i=a[b>>2]|0;c=f[i+236>>1]|0;e=c<<16>>16;u=s+16|0;if(c<<16>>16>0)r[(a[(a[u>>2]|0)+196>>2]|0)+(e+-1<<6)+49>>0]=0;c=e;while(1){if((c|0)>(f[i+238>>1]|0))break;t=a[(a[(a[(a[i+268>>2]|0)+(c<<2)>>2]|0)+16>>2]|0)+236>>2]|0;hD(s,c,t,a[(a[i+196>>2]|0)+(c<<6)>>2]|0);n=0;l=t;while(1){i=a[b>>2]|0;e=a[i+196>>2]|0;if((n|0)>=(a[e+(c<<6)>>2]|0))break;e=a[(a[e+(c<<6)+4>>2]|0)+(n<<2)>>2]|0;a[(a[(a[(a[u>>2]|0)+196>>2]|0)+(c<<6)+4>>2]|0)+(l<<2)>>2]=e;i=a[e+16>>2]|0;a[i+236>>2]=l;if((r[i+156>>0]|0)==1)a[e+24>>2]=Zd(s)|0;Wy(A,e);Ly(s,e);i=(a[u>>2]|0)+232|0;a[i>>2]=(a[i>>2]|0)+1;n=n+1|0;l=l+1|0}l=a[(a[u>>2]|0)+196>>2]|0;a[e+(c<<6)+4>>2]=(a[l+(c<<6)+4>>2]|0)+(t<<2);r[l+(c<<6)+49>>0]=0;c=c+1|0}e=a[u>>2]|0;if((c|0)<(f[e+238>>1]|0))r[(a[e+196>>2]|0)+(c<<6)+49>>0]=0;r[i+272>>0]=1;return}function gD(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0;t=A+16|0;e=a[t>>2]|0;l=f[e+236>>1]|0;while(1){if((l|0)>(f[e+238>>1]|0))break;r=a[(a[e+268>>2]|0)+(l<<2)>>2]|0;n=r+16|0;while(1){e=a[n>>2]|0;i=a[a[e+180>>2]>>2]|0;if(!i)break;Cy(i)}while(1){e=a[a[e+172>>2]>>2]|0;if(!e)break;Cy(e);e=a[n>>2]|0}Wy(vL(A)|0,r);a[(a[(a[t>>2]|0)+268>>2]|0)+(l<<2)>>2]=0;l=l+1|0;e=a[t>>2]|0}return}function vD(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;w=k;k=k+16|0;u=w;f=cd(A)|0;while(1){if(!f)break;i=f+16|0;e=a[i>>2]|0;if((r[e+159>>0]|0)==7){ZR(f);e=a[i>>2]|0}a[e+212>>2]=0;f=sd(A,f)|0}b=A+16|0;s=1;while(1){e=a[b>>2]|0;if((s|0)>(a[e+180>>2]|0))break;l=a[(a[e+184>>2]|0)+(s<<2)>>2]|0;t=l+16|0;e=cd(l)|0;A:while(1){if(!e)break;c=sd(l,e)|0;i=e+16|0;if(r[(a[i>>2]|0)+159>>0]|0){f=Vh(e)|0;n=Vh(A)|0;a[u>>2]=f;a[u+4>>2]=n;ao(0,87744,u)|0;Cd(l,e)|0;e=c;continue}GR(e,a[(a[t>>2]|0)+264>>2]|0);n=a[i>>2]|0;a[n+212>>2]=l;r[n+159>>0]=7;n=Oo(l,e)|0;while(1){if(!n){e=c;continue A}e=a[(a[n+16>>2]|0)+172>>2]|0;e:do{if(e|0)do{i=e+-48|0;f=a[(a[((a[e>>2]&3|0)==2?e:i)+40>>2]|0)+16>>2]|0;if((r[f+156>>0]|0)!=1)break e;a[f+212>>2]=l;e=a[a[(a[(a[((a[e>>2]&3|0)==2?e:i)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}while((e|0)!=0)}while(0);n=_o(l,n)|0}}s=s+1|0}k=w;return}function ED(A,e){A=A|0;e=e|0;var i=0,n=0,l=0,t=0,c=0,s=0;s=e+16|0;n=qF((f[(a[s>>2]|0)+238>>1]<<2)+8|0)|0;i=a[s>>2]|0;a[i+268>>2]=n;n=0;l=f[i+236>>1]|0;while(1){if((l|0)>(f[i+238>>1]|0))break;i=Yy(A)|0;a[(a[(a[s>>2]|0)+268>>2]|0)+(l<<2)>>2]=i;c=a[i+16>>2]|0;a[c+232>>2]=l;r[c+159>>0]=7;a[c+212>>2]=e;if(n|0){c=(a[(Qy(n,i,0)|0)+16>>2]|0)+154|0;f[c>>1]=(f[c>>1]|0)*1e3}n=i;l=l+1|0;i=a[s>>2]|0}c=cd(e)|0;while(1){i=a[s>>2]|0;if(!c)break;l=(a[(a[i+268>>2]|0)+(a[(a[c+16>>2]|0)+232>>2]<<2)>>2]|0)+16|0;i=(a[l>>2]|0)+216|0;a[i>>2]=(a[i>>2]|0)+1;i=Oo(e,c)|0;while(1){if(!i)break;t=a[i>>2]|0;A=i+-48|0;n=a[(a[(a[((t&3|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0;while(1){if((n|0)>=(a[(a[(a[((t&3|0)==2?i:A)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;t=(a[(a[a[(a[l>>2]|0)+180>>2]>>2]|0)+16>>2]|0)+168|0;f[t>>1]=(f[t>>1]|0)+1<<16>>16;n=n+1|0;t=a[i>>2]|0}i=_o(e,i)|0}c=sd(e,c)|0}A=f[i+238>>1]|0;t=i+268|0;i=f[i+236>>1]|0;while(1){if((i|0)>(A|0))break;n=(a[(a[(a[t>>2]|0)+(i<<2)>>2]|0)+16>>2]|0)+216|0;l=a[n>>2]|0;if((l|0)>1)a[n>>2]=l+-1;i=i+1|0}return}function CD(A,e,i,n){A=A|0;e=e|0;i=i|0;n=n|0;var l=0,t=0,c=0,s=0;s=(a[(a[e+16>>2]|0)+212>>2]|0)+16|0;e=a[s>>2]|0;c=i+1|0;if((c|0)!=(r[e+273>>0]|0)){t=f[e+236>>1]|0;while(1){l=f[e+238>>1]|0;if((t|0)>(l<<16>>16|0))break;NW(A,a[(a[e+268>>2]|0)+(t<<2)>>2]|0);t=t+1|0;e=a[s>>2]|0}t=f[e+236>>1]|0;while(1){if((t|0)>(l<<16>>16|0))break;RW(n,a[(a[e+268>>2]|0)+(t<<2)>>2]|0,i);A=a[s>>2]|0;t=t+1|0;l=f[A+238>>1]|0;e=A}r[e+273>>0]=c}return}function ID(A){A=A|0;var e=0,i=0,f=0,n=0,l=0;l=cd(A)|0;while(1){if(!l)break;a[(a[l+16>>2]|0)+212>>2]=0;n=Oo(A,l)|0;while(1){if(!n)break;e=a[(a[n+16>>2]|0)+172>>2]|0;A:do{if(e|0)do{i=e+-48|0;f=a[(a[((a[e>>2]&3|0)==2?e:i)+40>>2]|0)+16>>2]|0;if((r[f+156>>0]|0)!=1)break A;a[f+212>>2]=0;e=a[a[(a[(a[((a[e>>2]&3|0)==2?e:i)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}while((e|0)!=0)}while(0);n=_o(A,n)|0}l=sd(A,l)|0}ZD(A);return}function ZD(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;i=A+16|0;e=1;while(1){f=a[i>>2]|0;if((e|0)>(a[f+180>>2]|0))break;ZD(a[(a[f+184>>2]|0)+(e<<2)>>2]|0);e=e+1|0}t=cd(A)|0;while(1){if(!t)break;e=(a[t+16>>2]|0)+212|0;if(!(a[e>>2]|0))a[e>>2]=A;l=Oo(A,t)|0;while(1){if(!l)break;e=a[(a[l+16>>2]|0)+172>>2]|0;A:do{if(e|0)do{i=a[e>>2]|0;n=e+-48|0;f=a[(a[((i&3|0)==2?e:n)+40>>2]|0)+16>>2]|0;if((r[f+156>>0]|0)!=1)break A;f=f+212|0;if(!(a[f>>2]|0)){a[f>>2]=A;i=a[e>>2]|0}e=a[a[(a[(a[((i&3|0)==2?e:n)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}while((e|0)!=0)}while(0);l=_o(A,l)|0}t=sd(A,t)|0}return}function GD(A){A=A|0;var e=0,i=0,r=0;r=_R(A)|0;i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;mD(e,r);e=_o(A,e)|0}i=sd(A,i)|0}Hk(r)|0;return}function mD(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0;p=k;k=k+320|0;D=p+296|0;Y=p+280|0;I=p+136|0;C=p+120|0;u=p+104|0;t=p+88|0;f=p+80|0;W=p+16|0;G=p;c=p+264|0;s=p+248|0;b=p+232|0;w=p+216|0;m=p+200|0;Q=p+184|0;Z=p+168|0;y=p+152|0;n=QD(Ho(A,87798)|0,e)|0;h=QD(Ho(A,87804)|0,e)|0;d=(h|0)!=0;e=(n|0)!=0;do{if(e|d?(J=A+16|0,r=a[(a[J>>2]|0)+8>>2]|0,r|0):0){if((a[r+4>>2]|0)>1){V=Vh(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)|0;J=Vh(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)|0;a[f>>2]=V;a[f+4>>2]=J;ao(0,87810,f)|0;break}M=a[r>>2]|0;r=a[M+4>>2]|0;o=a[A>>2]&3;B=A+-48|0;g=a[((o|0)==2?A:B)+40>>2]|0;v=A+48|0;o=a[((o|0)==3?A:v)+40>>2]|0;F=$F(48)|0;E=M+12|0;a[F+12>>2]=a[E>>2];L=M+8|0;a[F+8>>2]=a[L>>2];do{if(e){l=(a[n+16>>2]|0)+16|0;n=(a[g+16>>2]|0)+16|0;a[D>>2]=a[n>>2];a[D+4>>2]=a[n+4>>2];a[D+8>>2]=a[n+8>>2];a[D+12>>2]=a[n+12>>2];if(!(LD(D,l)|0)){w=Vh(a[((a[A>>2]&3|0)==3?A:v)+40>>2]|0)|0;z=Vh(a[((a[A>>2]&3|0)==2?A:B)+40>>2]|0)|0;V=Ho(A,87798)|0;a[t>>2]=w;a[t+4>>2]=z;a[t+8>>2]=V;ao(0,87851,t)|0;V=26;break}e=a[M>>2]|0;a[D>>2]=a[e>>2];a[D+4>>2]=a[e+4>>2];a[D+8>>2]=a[e+8>>2];a[D+12>>2]=a[e+12>>2];if(LD(D,l)|0){z=(a[o+16>>2]|0)+16|0;a[D>>2]=a[z>>2];a[D+4>>2]=a[z+4>>2];a[D+8>>2]=a[z+8>>2];a[D+12>>2]=a[z+12>>2];if(LD(D,l)|0){w=Vh(a[((a[A>>2]&3|0)==3?A:v)+40>>2]|0)|0;z=Vh(a[((a[A>>2]&3|0)==2?A:B)+40>>2]|0)|0;V=Ho(A,87798)|0;a[u>>2]=w;a[u+4>>2]=z;a[u+8>>2]=V;ao(0,87894,u)|0;V=26;break}if(!(a[L>>2]|0))gA(87936,87947,369,87958);w=M+16|0;a[Y>>2]=a[e>>2];a[Y+4>>2]=a[e+4>>2];a[Y+8>>2]=a[e+8>>2];a[Y+12>>2]=a[e+12>>2];a[D>>2]=a[w>>2];a[D+4>>2]=a[w+4>>2];a[D+8>>2]=a[w+8>>2];a[D+12>>2]=a[w+12>>2];yD(G,Y,D,l);z=(a[M>>2]|0)+48|0;a[z>>2]=a[G>>2];a[z+4>>2]=a[G+4>>2];a[z+8>>2]=a[G+8>>2];a[z+12>>2]=a[G+12>>2];z=(a[M>>2]|0)+16|0;a[Y>>2]=a[G>>2];a[Y+4>>2]=a[G+4>>2];a[Y+8>>2]=a[G+8>>2];a[Y+12>>2]=a[G+12>>2];a[D>>2]=a[w>>2];a[D+4>>2]=a[w+4>>2];a[D+8>>2]=a[w+8>>2];a[D+12>>2]=a[w+12>>2];WD(c,Y,D);a[z>>2]=a[c>>2];a[z+4>>2]=a[c+4>>2];a[z+8>>2]=a[c+8>>2];a[z+12>>2]=a[c+12>>2];z=a[M>>2]|0;e=z+16|0;a[Y>>2]=a[e>>2];a[Y+4>>2]=a[e+4>>2];a[Y+8>>2]=a[e+8>>2];a[Y+12>>2]=a[e+12>>2];a[D>>2]=a[w>>2];a[D+4>>2]=a[w+4>>2];a[D+8>>2]=a[w+8>>2];a[D+12>>2]=a[w+12>>2];WD(s,Y,D);a[z>>2]=a[s>>2];a[z+4>>2]=a[s+4>>2];a[z+8>>2]=a[s+8>>2];a[z+12>>2]=a[s+12>>2];z=a[M>>2]|0;e=z+32|0;z=z+16|0;a[Y>>2]=a[z>>2];a[Y+4>>2]=a[z+4>>2];a[Y+8>>2]=a[z+8>>2];a[Y+12>>2]=a[z+12>>2];a[D>>2]=a[G>>2];a[D+4>>2]=a[G+4>>2];a[D+8>>2]=a[G+8>>2];a[D+12>>2]=a[G+12>>2];WD(b,Y,D);a[e>>2]=a[b>>2];a[e+4>>2]=a[b+4>>2];a[e+8>>2]=a[b+8>>2];a[e+12>>2]=a[b+12>>2];e=a[E>>2]|0;if(!e){z=3;break}z=(jC(A,a[M>>2]|0,0,0,F,e)|0)+3|0;break}n=r+-1|0;e=0;while(1){if((e|0)>=(n|0))break;if(zD((a[M>>2]|0)+(e<<4)|0,l)|0)break;e=e+3|0}r=a[E>>2]|0;f=(r|0)!=0;if((e|0)==(n|0))if(f){z=F+32|0;b=M+32|0;u=(a[M>>2]|0)+(n<<4)|0;a[Y>>2]=a[b>>2];a[Y+4>>2]=a[b+4>>2];a[Y+8>>2]=a[b+8>>2];a[Y+12>>2]=a[b+12>>2];a[D>>2]=a[u>>2];a[D+4>>2]=a[u+4>>2];a[D+8>>2]=a[u+8>>2];a[D+12>>2]=a[u+12>>2];yD(w,Y,D,l);a[z>>2]=a[w>>2];a[z+4>>2]=a[w+4>>2];a[z+8>>2]=a[w+8>>2];a[z+12>>2]=a[w+12>>2];z=n;break}else gA(87975,87947,387,87958);else{if(f)e=jC(A,a[M>>2]|0,0,e,F,r)|0;z=e+3|0;break}}else V=26}while(0);if((V|0)==26){e=r+-1|0;if(!(a[E>>2]|0))z=e;else{z=F+32|0;w=M+32|0;a[z>>2]=a[w>>2];a[z+4>>2]=a[w+4>>2];a[z+8>>2]=a[w+8>>2];a[z+12>>2]=a[w+12>>2];z=e}}do{if(d){f=(a[h+16>>2]|0)+16|0;d=(a[o+16>>2]|0)+16|0;a[D>>2]=a[d>>2];a[D+4>>2]=a[d+4>>2];a[D+8>>2]=a[d+8>>2];a[D+12>>2]=a[d+12>>2];if(!(LD(D,f)|0)){Y=Vh(a[((a[A>>2]&3|0)==3?A:v)+40>>2]|0)|0;D=Vh(a[((a[A>>2]&3|0)==2?A:B)+40>>2]|0)|0;V=Ho(A,87804)|0;a[C>>2]=Y;a[C+4>>2]=D;a[C+8>>2]=V;ao(0,87986,C)|0;V=52;break}e=(a[M>>2]|0)+(z<<4)|0;a[D>>2]=a[e>>2];a[D+4>>2]=a[e+4>>2];a[D+8>>2]=a[e+8>>2];a[D+12>>2]=a[e+12>>2];if(LD(D,f)|0){W=(a[g+16>>2]|0)+16|0;a[D>>2]=a[W>>2];a[D+4>>2]=a[W+4>>2];a[D+8>>2]=a[W+8>>2];a[D+12>>2]=a[W+12>>2];if(LD(D,f)|0){Y=Vh(a[((a[A>>2]&3|0)==3?A:v)+40>>2]|0)|0;D=Vh(a[((a[A>>2]&3|0)==2?A:B)+40>>2]|0)|0;V=Ho(A,87804)|0;a[I>>2]=Y;a[I+4>>2]=D;a[I+8>>2]=V;ao(0,88029,I)|0;V=52;break}if(!(a[E>>2]|0))gA(87975,87947,429,87958);I=F+32|0;a[Y>>2]=a[e>>2];a[Y+4>>2]=a[e+4>>2];a[Y+8>>2]=a[e+8>>2];a[Y+12>>2]=a[e+12>>2];a[D>>2]=a[I>>2];a[D+4>>2]=a[I+4>>2];a[D+8>>2]=a[I+8>>2];a[D+12>>2]=a[I+12>>2];yD(G,Y,D,f);i=z+-3|0;W=(a[M>>2]|0)+(i<<4)|0;a[W>>2]=a[G>>2];a[W+4>>2]=a[G+4>>2];a[W+8>>2]=a[G+8>>2];a[W+12>>2]=a[G+12>>2];W=z+-1|0;e=(a[M>>2]|0)+(W<<4)|0;a[Y>>2]=a[G>>2];a[Y+4>>2]=a[G+4>>2];a[Y+8>>2]=a[G+8>>2];a[Y+12>>2]=a[G+12>>2];a[D>>2]=a[I>>2];a[D+4>>2]=a[I+4>>2];a[D+8>>2]=a[I+8>>2];a[D+12>>2]=a[I+12>>2];WD(m,Y,D);a[e>>2]=a[m>>2];a[e+4>>2]=a[m+4>>2];a[e+8>>2]=a[m+8>>2];a[e+12>>2]=a[m+12>>2];e=a[M>>2]|0;y=e+(z<<4)|0;e=e+(W<<4)|0;a[Y>>2]=a[e>>2];a[Y+4>>2]=a[e+4>>2];a[Y+8>>2]=a[e+8>>2];a[Y+12>>2]=a[e+12>>2];a[D>>2]=a[I>>2];a[D+4>>2]=a[I+4>>2];a[D+8>>2]=a[I+8>>2];a[D+12>>2]=a[I+12>>2];WD(Q,Y,D);a[y>>2]=a[Q>>2];a[y+4>>2]=a[Q+4>>2];a[y+8>>2]=a[Q+8>>2];a[y+12>>2]=a[Q+12>>2];y=a[M>>2]|0;e=y+(z+-2<<4)|0;W=y+(W<<4)|0;a[Y>>2]=a[W>>2];a[Y+4>>2]=a[W+4>>2];a[Y+8>>2]=a[W+8>>2];a[Y+12>>2]=a[W+12>>2];a[D>>2]=a[G>>2];a[D+4>>2]=a[G+4>>2];a[D+8>>2]=a[G+8>>2];a[D+12>>2]=a[G+12>>2];WD(Z,Y,D);a[e>>2]=a[Z>>2];a[e+4>>2]=a[Z+4>>2];a[e+8>>2]=a[Z+8>>2];a[e+12>>2]=a[Z+12>>2];e=a[L>>2]|0;if(!e)break;i=SC(A,a[M>>2]|0,i,i,F,e)|0;break}r=z;while(1){if((r|0)>0)e=0;else break;while(1){if((e|0)==4)break;Q=W+(e<<4)|0;m=(a[M>>2]|0)+(r-e<<4)|0;a[Q>>2]=a[m>>2];a[Q+4>>2]=a[m+4>>2];a[Q+8>>2]=a[m+8>>2];a[Q+12>>2]=a[m+12>>2];e=e+1|0}if(zD(W,f)|0){e=0;V=43;break}r=r+-3|0}A:do{if((V|0)==43)while(1){V=0;if((e|0)==4)break A;V=(a[M>>2]|0)+(r-e<<4)|0;Q=W+(e<<4)|0;a[V>>2]=a[Q>>2];a[V+4>>2]=a[Q+4>>2];a[V+8>>2]=a[Q+8>>2];a[V+12>>2]=a[Q+12>>2];e=e+1|0;V=43}}while(0);if(r|0){i=r+-3|0;e=a[L>>2]|0;if(!e)break;i=SC(A,a[M>>2]|0,i,z+-3|0,F,e)|0;break}if(!(a[L>>2]|0))gA(87936,87947,452,87958);else{i=F+16|0;W=M+16|0;A=a[M>>2]|0;a[Y>>2]=a[W>>2];a[Y+4>>2]=a[W+4>>2];a[Y+8>>2]=a[W+8>>2];a[Y+12>>2]=a[W+12>>2];a[D>>2]=a[A>>2];a[D+4>>2]=a[A+4>>2];a[D+8>>2]=a[A+8>>2];a[D+12>>2]=a[A+12>>2];yD(y,Y,D,f);a[i>>2]=a[y>>2];a[i+4>>2]=a[y+4>>2];a[i+8>>2]=a[y+8>>2];a[i+12>>2]=a[y+12>>2];i=0;break}}else V=52}while(0);if((V|0)==52)if(!(a[L>>2]|0))i=0;else{i=F+16|0;V=M+16|0;a[i>>2]=a[V>>2];a[i+4>>2]=a[V+4>>2];a[i+8>>2]=a[V+8>>2];a[i+12>>2]=a[V+12>>2];i=0}e=z-i+1|0;r=F+4|0;a[r>>2]=e;a[F>>2]=$F(e<<4)|0;e=0;while(1){if((e|0)>=(a[r>>2]|0))break;V=(a[F>>2]|0)+(e<<4)|0;A=(a[M>>2]|0)+(i<<4)|0;a[V>>2]=a[A>>2];a[V+4>>2]=a[A+4>>2];a[V+8>>2]=a[A+8>>2];a[V+12>>2]=a[A+12>>2];i=i+1|0;e=e+1|0}L2(a[M>>2]|0);L2(M);a[a[(a[J>>2]|0)+8>>2]>>2]=F}}while(0);k=p;return}function QD(A,e){A=A|0;e=e|0;var i=0,f=0;f=k;k=k+16|0;i=f;if((A|0)!=0?(r[A>>0]|0)!=0:0){e=$R(e,A)|0;if(!e){a[i>>2]=A;ao(0,88149,i)|0;e=0}}else e=0;k=f;return e|0}function LD(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;r=+s[A>>3];if((+s[e>>3]<=r?r<=+s[e+16>>3]:0)?(i=+s[A+8>>3],+s[e+8>>3]<=i):0)A=i<=+s[e+24>>3]&1;else A=0;return A|0}function yD(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,n=0.0,l=0,t=0.0,c=0.0,b=0.0,u=0,w=0.0,o=0.0,h=0.0,d=0.0,B=0.0,g=0.0,v=0,E=0,C=0,I=0,Z=0.0,G=0,m=0,Q=0,L=0;L=k;k=k+464|0;u=L+48|0;Q=L+32|0;v=L+16|0;E=L;C=L+364|0;I=L+264|0;G=L+164|0;m=L+64|0;h=+s[e>>3];d=+s[e+8>>3];B=+s[i>>3];g=+s[i+8>>3];a[v>>2]=a[r>>2];a[v+4>>2]=a[r+4>>2];a[v+8>>2]=a[r+8>>2];a[v+12>>2]=a[r+12>>2];r=r+16|0;a[E>>2]=a[r>>2];a[E+4>>2]=a[r+4>>2];a[E+8>>2]=a[r+8>>2];a[E+12>>2]=a[r+12>>2];c=+s[v>>3];if((B =+s[v+8>>3]):0)?f<=+s[E+8>>3]:0){w=f;o=c}else l=4;do{if((l|0)==4){t=+s[E>>3];if(B>t){n=d+ +(~~((t-h)*(d-g)/(h-B))|0);f=+s[v+8>>3];if(n>=f?n<=+s[E+8>>3]:0){w=n;o=t;break}}else f=+s[v+8>>3];if(g =c)|!(b<=t))):0){w=f;o=b;break}f=+s[E+8>>3];if(g>f?(Z=h+ +(~~((f-d)*(h-B)/(d-g))|0),!(!(Z>=c)|!(Z<=t))):0){w=f;o=Z;break}a[u>>2]=a[e>>2];a[u+4>>2]=a[e+4>>2];a[u+8>>2]=a[e+8>>2];a[u+12>>2]=a[e+12>>2];C=VD(u,C)|0;a[u>>2]=a[i>>2];a[u+4>>2]=a[i+4>>2];a[u+8>>2]=a[i+8>>2];a[u+12>>2]=a[i+12>>2];I=VD(u,I)|0;a[u>>2]=a[v>>2];a[u+4>>2]=a[v+4>>2];a[u+8>>2]=a[v+8>>2];a[u+12>>2]=a[v+12>>2];G=VD(u,G)|0;a[u>>2]=a[E>>2];a[u+4>>2]=a[E+4>>2];a[u+8>>2]=a[E+8>>2];a[u+12>>2]=a[E+12>>2];m=VD(u,m)|0;a[Q>>2]=C;a[Q+4>>2]=I;a[Q+8>>2]=G;a[Q+12>>2]=m;ao(1,88071,Q)|0;gA(138394,87947,78,88123)}}while(0);s[A>>3]=o;s[A+8>>3]=w;k=L;return}function WD(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;r=(+s[i+8>>3]+ +s[e+8>>3])*.5;s[A>>3]=(+s[i>>3]+ +s[e>>3])*.5;s[A+8>>3]=r;return}function zD(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0.0,n=0,l=0,t=0,c=0,b=0;b=k;k=k+80|0;t=b+16|0;c=b;r=0;while(1){if((r|0)==4)break;l=t+(r<<4)|0;n=A+(r<<4)|0;a[l>>2]=a[n>>2];a[l+4>>2]=a[n+4>>2];a[l+8>>2]=a[n+8>>2];a[l+12>>2]=a[n+12>>2];r=r+1|0}r=e+8|0;l=e+24|0;i=+YD(A,0.0,1.0,+s[e>>3],+s[r>>3],+s[l>>3]);if(i>=0.0&i<2.0)QR(c,t,3,i,A,0);else i=2.0;n=e+16|0;f=+YD(A,0.0,i>1.0?1.0:i,+s[n>>3],+s[r>>3],+s[l>>3]);if(f>=0.0&f1.0?1.0:i,+s[r>>3],+s[e>>3],+s[n>>3]);if(f>=0.0&f1.0?1.0:i,+s[l>>3],+s[e>>3],+s[n>>3]);if(f>=0.0&f>3]-r))<=.005){e=+s[A+56>>3];e=!(e>=f)|!(e<=a)?-1.0:i;break A}break}default:{}}QR(l,A,3,.5,t,c);n=(i+e)*.5;e=+YD(t,e,n,r,f,a);if(!(e>=0.0))e=+YD(c,n,i,r,f,a)}}while(0);k=b;return+e}function DD(A,e,i,r,f,a){A=A|0;e=+e;i=+i;r=+r;f=+f;a=+a;var n=0.0,l=0,t=0,c=0,b=0;b=k;k=k+144|0;t=b+80|0;c=b+16|0;l=b;A:do{if(!(e==i)){switch(MD(A,r)|0){case 0:{e=-1.0;break A}case 1:{if(+W(+(+s[A+56>>3]-r))<=.005){e=+s[A+48>>3];e=!(e>=f)|!(e<=a)?-1.0:i;break A}break}default:{}}QR(l,A,3,.5,t,c);n=(i+e)*.5;e=+DD(t,e,n,r,f,a);if(!(e>=0.0))e=+DD(c,n,i,r,f,a)}}while(0);k=b;return+e}function MD(A,e){A=A|0;e=+e;var i=0,r=0,f=0,a=0.0,n=0,l=0;a=+s[A+8>>3];f=a e&1;i=1;r=f;f=(f|0)==0&1;while(1){if((i|0)==4)break;a=+s[A+(i<<4)+8>>3];l=a e&1;n=f+((r|0)!=0&(l|0)!=(r|0)&1)|0;i=i+1|0;r=l;f=n}return f|0}function FD(A,e){A=A|0;e=+e;var i=0,r=0,f=0,a=0.0,n=0,l=0;a=+s[A>>3];f=a e&1;i=1;r=f;f=(f|0)==0&1;while(1){if((i|0)==4)break;a=+s[A+(i<<4)>>3];l=a e&1;n=f+((r|0)!=0&(l|0)!=(r|0)&1)|0;i=i+1|0;r=l;f=n}return f|0}function VD(A,e){A=A|0;e=e|0;var i=0,r=0,f=0.0;i=k;k=k+16|0;r=i;f=+s[A+8>>3];s[r>>3]=+s[A>>3];s[r+8>>3]=f;S4(e,88137,r)|0;k=i;return e|0}function JD(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,g=0,v=0,E=0;E=k;k=k+16|0;h=E;v=4;g=Q2(40)|0;a[g>>2]=0;o=A+16|0;i=a[o>>2]|0;A:do{if(((f[i+238>>1]|0)-(f[i+236>>1]|0)|0)>=2){b=1;e=i;i=a[i+196>>2]|0;e:while(1){u=b+1|0;if(!(a[i+(u<<6)>>2]|0)){w=15;break}else s=0;while(1){l=a[i+(b<<6)>>2]|0;if((s|0)>=(l|0)){b=u;continue e}c=a[(a[i+(b<<6)+4>>2]|0)+(s<<2)>>2]|0;d=0;e=iA(20,c|0)|0;r=d;d=0;if((r|0)!=0&(B|0)!=0){n=y6(a[r>>2]|0,g|0,v|0)|0;if(!n)fe(r|0,B|0);L=B}else n=-1;if((n|0)==1){e=L;break e}if(e<<24>>24){t=s;e=l;while(1){n=t+1|0;if((n|0)>=(e|0))break;d=0;e=rA(65,c|0,a[(a[i+(b<<6)+4>>2]|0)+(n<<2)>>2]|0)|0;i=d;d=0;if((i|0)!=0&(B|0)!=0){r=y6(a[i>>2]|0,g|0,v|0)|0;if(!r)fe(i|0,B|0);L=B}else r=-1;if((r|0)==1){e=L;break e}if(!(e<<24>>24))break;e=a[(a[o>>2]|0)+196>>2]|0;t=n;i=e;e=a[e+(b<<6)>>2]|0}if((n-s|0)>1){d=0;hA(6,A|0,b|0,s|0,t|0,1);e=d;d=0;if((e|0)!=0&(B|0)!=0){i=y6(a[e>>2]|0,g|0,v|0)|0;if(!i)fe(e|0,B|0);L=B}else i=-1;if((i|0)==1){e=L;break e}}}i=a[o>>2]|0;s=s+1|0;e=i;i=a[i+196>>2]|0}}e:do{if((w|0)==15){while(1){if((b|0)>0)s=0;else break;while(1){i=a[e+196>>2]|0;l=a[i+(b<<6)>>2]|0;if((s|0)>=(l|0))break;c=a[(a[i+(b<<6)+4>>2]|0)+(s<<2)>>2]|0;d=0;e=iA(21,c|0)|0;r=d;d=0;if((r|0)!=0&(B|0)!=0){n=y6(a[r>>2]|0,g|0,v|0)|0;if(!n)fe(r|0,B|0);L=B}else n=-1;if((n|0)==1){e=L;break e}if(e<<24>>24){t=s;e=l;while(1){n=t+1|0;if((n|0)>=(e|0))break;d=0;e=rA(66,c|0,a[(a[i+(b<<6)+4>>2]|0)+(n<<2)>>2]|0)|0;i=d;d=0;if((i|0)!=0&(B|0)!=0){r=y6(a[i>>2]|0,g|0,v|0)|0;if(!r)fe(i|0,B|0);L=B}else r=-1;if((r|0)==1){e=L;break e}if(!(e<<24>>24))break;e=a[(a[o>>2]|0)+196>>2]|0;t=n;i=e;e=a[e+(b<<6)>>2]|0}if((n-s|0)>1){d=0;hA(6,A|0,b|0,s|0,t|0,0);e=d;d=0;if((e|0)!=0&(B|0)!=0){i=y6(a[e>>2]|0,g|0,v|0)|0;if(!i)fe(e|0,B|0);L=B}else i=-1;if((i|0)==1){e=L;break e}}}s=s+1|0;e=a[o>>2]|0}b=b+-1|0;w=15}g=L6(187016,1,g|0,v|0)|0;v=L;d=0;e=d;d=0;if((e|0)!=0&(B|0)!=0){i=y6(a[e>>2]|0,g|0,v|0)|0;if(!i)fe(e|0,B|0);L=B}else i=-1;if((i|0)==1)e=L;else e=0}}while(0);e:while(1){if(e){d=0;aA(20,3,88177,h|0)|0;e=d;d=0;if((e|0)!=0&(B|0)!=0){i=y6(a[e>>2]|0,g|0,v|0)|0;if(!i)fe(e|0,B|0);L=B}else i=-1;if((i|0)==1){e=L;continue}else break}else r=1;while(1){e=a[o>>2]|0;if((r|0)>(a[e+180>>2]|0))break A;d=0;bA(101,a[(a[e+184>>2]|0)+(r<<2)>>2]|0);e=d;d=0;if((e|0)!=0&(B|0)!=0){i=y6(a[e>>2]|0,g|0,v|0)|0;if(!i)fe(e|0,B|0);L=B}else i=-1;if((i|0)==1){e=L;continue e}r=r+1|0}}}}while(0);L2(g|0);k=E;return}function pD(A){A=A|0;A=a[A+16>>2]|0;if(((r[A+156>>0]|0)==1?(a[A+176>>2]|0)==1:0)?(a[A+184>>2]|0)==1:0)A=(a[A+104>>2]|0)==0&1;else A=0;return A|0}function ND(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;t=k;k=k+80|0;l=t+40|0;n=t;r=a[a[(a[A+16>>2]|0)+172>>2]>>2]|0;A=a[a[(a[e+16>>2]|0)+172>>2]>>2]|0;if(((pD(e)|0)<<24>>24!=0?(a[((a[r>>2]&3|0)==3?r:r+48|0)+40>>2]|0)==(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0):0)?(TD(r,A)|0)<<24>>24!=0:0){i=(a[A+16>>2]|0)+16|0;f=n;A=(a[r+16>>2]|0)+16|0;e=f+40|0;do{a[f>>2]=a[A>>2];f=f+4|0;A=A+4|0}while((f|0)<(e|0));f=l;A=i;e=f+40|0;do{a[f>>2]=a[A>>2];f=f+4|0;A=A+4|0}while((f|0)<(e|0));A=(EL(n,l)|0)==0&1}else A=0;k=t;return A|0}function RD(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0;g=A+16|0;h=a[(a[(a[(a[g>>2]|0)+196>>2]|0)+(e<<6)+4>>2]|0)+(i<<2)>>2]|0;o=i+1|0;u=(f|0)==1;w=h+16|0;b=o;while(1){if((b|0)>(r|0)){n=r;B=o;break}k=a[(a[(a[(a[g>>2]|0)+196>>2]|0)+(e<<6)+4>>2]|0)+(b<<2)>>2]|0;s=k+16|0;A:do{if(u)while(1){i=a[s>>2]|0;c=a[a[i+180>>2]>>2]|0;if(!c)break A;l=a[(a[w>>2]|0)+180>>2]|0;t=c+-48|0;f=0;while(1){i=a[l+(f<<2)>>2]|0;if(!i){d=8;break}if((a[((a[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0)==(a[((a[c>>2]&3|0)==2?c:t)+40>>2]|0))break;else f=f+1|0}if((d|0)==8){d=0;i=Qy(h,a[((a[c>>2]&3|0)==2?c:t)+40>>2]|0,c)|0}while(1){f=a[a[(a[s>>2]|0)+172>>2]>>2]|0;if(!f)break;Fy(f,i);Cy(f)}Cy(c)}else while(1){i=a[s>>2]|0;c=a[a[i+172>>2]>>2]|0;if(!c)break A;l=a[(a[w>>2]|0)+172>>2]|0;t=c+48|0;f=0;while(1){i=a[l+(f<<2)>>2]|0;if(!i){d=17;break}if((a[((a[i>>2]&3|0)==3?i:i+48|0)+40>>2]|0)==(a[((a[c>>2]&3|0)==3?c:t)+40>>2]|0))break;else f=f+1|0}if((d|0)==17){d=0;i=Qy(a[((a[c>>2]&3|0)==3?c:t)+40>>2]|0,h,c)|0}while(1){f=a[a[(a[s>>2]|0)+180>>2]>>2]|0;if(!f)break;Fy(f,i);Cy(f)}Cy(c)}}while(0);if((a[i+176>>2]|0)!=(0-(a[i+184>>2]|0)|0)){d=23;break}Wy(A,k);b=b+1|0}if((d|0)==23)gA(88313,88357,115,88364);while(1){n=n+1|0;i=a[(a[g>>2]|0)+196>>2]|0;f=i+(e<<6)|0;if((n|0)>=(a[f>>2]|0))break;r=a[i+(e<<6)+4>>2]|0;d=a[r+(n<<2)>>2]|0;a[r+(B<<2)>>2]=d;a[(a[d+16>>2]|0)+236>>2]=B;B=B+1|0}a[f>>2]=B;a[(a[i+(e<<6)+4>>2]|0)+(B<<2)>>2]=0;return}function XD(A){A=A|0;A=a[A+16>>2]|0;if(((r[A+156>>0]|0)==1?(a[A+184>>2]|0)==1:0)?(a[A+176>>2]|0)==1:0)A=(a[A+104>>2]|0)==0&1;else A=0;return A|0}function HD(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;t=k;k=k+80|0;l=t+40|0;n=t;r=a[a[(a[A+16>>2]|0)+180>>2]>>2]|0;A=a[a[(a[e+16>>2]|0)+180>>2]>>2]|0;if(((XD(e)|0)<<24>>24!=0?(a[((a[r>>2]&3|0)==2?r:r+-48|0)+40>>2]|0)==(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0):0)?(TD(r,A)|0)<<24>>24!=0:0){i=(a[A+16>>2]|0)+56|0;f=n;A=(a[r+16>>2]|0)+56|0;e=f+40|0;do{a[f>>2]=a[A>>2];f=f+4|0;A=A+4|0}while((f|0)<(e|0));f=l;A=i;e=f+40|0;do{a[f>>2]=a[A>>2];f=f+4|0;A=A+4|0}while((f|0)<(e|0));A=(EL(n,l)|0)==0&1}else A=0;k=t;return A|0}function UD(A){A=A|0;var e=0,i=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0;d=k;k=k+32|0;o=d+16|0;w=d;b=A+16|0;i=a[b>>2]|0;e=f[i+236>>1]|0;while(1){if((e|0)>(f[i+238>>1]|0))break;a[(a[i+268>>2]|0)+(e<<2)>>2]=0;e=e+1|0;i=a[b>>2]|0}Fz(A);c=cd(A)|0;while(1){if(!c)break;xD(A,c);t=Oo(A,c)|0;while(1){if(!t)break;else i=t;while(1){e=a[(a[i+16>>2]|0)+172>>2]|0;if(!e)break;else i=e}l=t+-48|0;while(1){e=i+-48|0;n=a[((a[i>>2]&3|0)==2?i:e)+40>>2]|0;if((a[(a[n+16>>2]|0)+232>>2]|0)>=(a[(a[(a[((a[t>>2]&3|0)==2?t:l)+40>>2]|0)+16>>2]|0)+232>>2]|0))break;xD(A,n);i=a[a[(a[(a[((a[i>>2]&3|0)==2?i:e)+40>>2]|0)+16>>2]|0)+180>>2]>>2]|0}t=_o(A,t)|0}c=sd(A,c)|0}e=a[b>>2]|0;t=f[e+236>>1]|0;while(1){if((t|0)>(f[e+238>>1]|0)){s=1;u=e;break}e=a[(a[e+268>>2]|0)+(t<<2)>>2]|0;c=a[(a[(a[(vL(A)|0)+16>>2]|0)+196>>2]|0)+(t<<6)+4>>2]|0;i=e+16|0;if((a[c+(a[(a[i>>2]|0)+236>>2]<<2)>>2]|0)!=(e|0)){h=17;break}l=a[(a[(a[(vL(A)|0)+16>>2]|0)+196>>2]|0)+(t<<6)+4>>2]|0;e=a[b>>2]|0;i=a[e+196>>2]|0;a[i+(t<<6)+4>>2]=l+(a[(a[(a[(a[e+268>>2]|0)+(t<<2)>>2]|0)+16>>2]|0)+236>>2]<<2);e=-1;l=0;A:while(1){if((l|0)>=(a[i+(t<<6)>>2]|0))break;i=a[(a[i+(t<<6)+4>>2]|0)+(l<<2)>>2]|0;if(!i)break;n=a[i+16>>2]|0;e:do{if(!(r[n+156>>0]|0))if(!(Dd(A,i)|0))break A;else e=l;else{i=a[a[n+172>>2]>>2]|0;while(1){if(!i)break e;n=a[(a[i+16>>2]|0)+116>>2]|0;if(!n)break;else i=n}if(Dd(A,a[((a[i>>2]&3|0)==3?i:i+48|0)+40>>2]|0)|0){c=(Dd(A,a[((a[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0)|0)==0;e=c?e:l}}}while(0);l=l+1|0;i=a[(a[b>>2]|0)+196>>2]|0}if((e|0)==-1){a[o>>2]=Vh(A)|0;a[o+4>>2]=t;ao(0,88277,o)|0}c=a[b>>2]|0;a[(a[c+196>>2]|0)+(t<<6)>>2]=e+1;t=t+1|0;e=c}if((h|0)==17){o=Vh(e)|0;h=a[(a[i>>2]|0)+236>>2]|0;a[w>>2]=o;a[w+4>>2]=h;a[w+8>>2]=t;ao(1,88219,w)|0;fe(187016,1)}while(1){if((s|0)>(a[u+180>>2]|0))break;UD(a[(a[u+184>>2]|0)+(s<<2)>>2]|0);s=s+1|0;u=a[b>>2]|0}k=d;return}function xD(A,e){A=A|0;e=e|0;var i=0,r=0;i=a[e+16>>2]|0;A=(a[(a[A+16>>2]|0)+268>>2]|0)+(a[i+232>>2]<<2)|0;r=a[A>>2]|0;if(!((r|0)!=0?(a[(a[r+16>>2]|0)+236>>2]|0)<=(a[i+236>>2]|0):0))a[A>>2]=e;return}function TD(A,e){A=A|0;e=e|0;var i=0,f=0;while(1){f=a[A+16>>2]|0;if(!(r[f+112>>0]|0))break;A=a[f+116>>2]|0}while(1){i=a[e+16>>2]|0;if(!(r[i+112>>0]|0))break;e=a[i+116>>2]|0}if((r[f+153>>0]|0)==0?(r[i+153>>0]|0)==0:0){f=a[e>>2]&3;i=a[A>>2]&3;A=(U((a[(a[(a[((i|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(a[(a[(a[((i|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0,(a[(a[(a[((f|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(a[(a[(a[((f|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0)|0)>0&1}else A=0;return A|0}function jD(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+544|0;c=s+528|0;PD(c,s+512|0,s);i=(r[193770]|0)+1<<24>>24;r[193770]=i<<24>>24==0?1:i;i=a[A+16>>2]|0;a[i+220>>2]=0;a[i+232>>2]=0;i=(e|0)>0;e=cd(A)|0;while(1){if(!e)break;if(i?(l=a[e+16>>2]|0,t=a[l+212>>2]|0,(t|0)!=0):0){n=a[(a[(a[t+16>>2]|0)+268>>2]|0)+(a[l+232>>2]<<2)>>2]|0;f=7}else f=6;if((f|0)==6?(f=0,(e|0)==(CR(e)|0)):0){n=e;f=7}if((f|0)==7?(0,(r[(a[n+16>>2]|0)+157>>0]|0)!=(r[193770]|0)):0){SD(A);OD(c,A,n);KD(A)}e=sd(A,e)|0}_D(c);k=s;return}function PD(A,e,i){A=A|0;e=e|0;i=i|0;a[e>>2]=i;a[e+4>>2]=i+512;a[e+12>>2]=0;a[e+8>>2]=0;a[A>>2]=e;a[A+4>>2]=e;a[A+8>>2]=i;return}function SD(A){A=A|0;a[(a[A+16>>2]|0)+192>>2]=0;a[46793]=0;return}function OD(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+32|0;o=h;qD(A,i);s=o+8|0;b=o+16|0;u=o+24|0;A:while(1){w=$D(A)|0;if(!w)break;i=w+16|0;if((r[(a[i>>2]|0)+157>>0]|0)==(r[193770]|0))continue;AM(e,w);l=a[i>>2]|0;n=l+180|0;c=a[n+4>>2]|0;t=o;a[t>>2]=a[n>>2];a[t+4>>2]=c;t=l+172|0;c=a[t+4>>2]|0;n=s;a[n>>2]=a[t>>2];a[n+4>>2]=c;n=l+188|0;c=a[n+4>>2]|0;t=b;a[t>>2]=a[n>>2];a[t+4>>2]=c;l=l+196|0;t=a[l+4>>2]|0;c=u;a[c>>2]=a[l>>2];a[c+4>>2]=t;c=3;while(1){if((c|0)<=-1)continue A;i=a[o+(c<<3)>>2]|0;e:do{if(i|0){t=(a[o+(c<<3)+4>>2]|0)+-1|0;l=i+(t<<2)|0;while(1){if((t|0)<=-1)break e;f=a[l>>2]|0;n=a[f>>2]&3;i=a[((n|0)==2?f:f+-48|0)+40>>2]|0;if((i|0)==(w|0))i=a[((n|0)==3?f:f+48|0)+40>>2]|0;if((r[(a[i+16>>2]|0)+157>>0]|0)!=(r[193770]|0)?(i|0)==(CR(i)|0):0)qD(A,i);l=l+-4|0;t=t+-1|0}}}while(0);c=c+-1|0}}k=h;return}function KD(A){A=A|0;var e=0,i=0,r=0,f=0;i=A+16|0;e=a[i>>2]|0;f=e+220|0;r=a[f>>2]|0;A=r+1|0;a[f>>2]=A;e=a[e+216>>2]|0;if(!e)A=$F(A<<2)|0;else A=eV(e,A<<2)|0;f=a[i>>2]|0;a[f+216>>2]=A;a[A+(r<<2)>>2]=a[f+192>>2];return}function _D(A){A=A|0;var e=0;A=a[(a[A>>2]|0)+12>>2]|0;while(1){if(!A)break;e=a[A+12>>2]|0;L2(a[A>>2]|0);L2(A);A=e}return}function qD(A,e){A=A|0;e=e|0;var i=0,f=0,l=0,t=0,c=0,s=0;s=k;k=k+16|0;l=s+8|0;f=s;c=A+8|0;i=a[c>>2]|0;t=A+4|0;A=a[t>>2]|0;if((i|0)==(a[A+4>>2]|0)){i=a[A+12>>2]|0;if(!i){i=qF(16)|0;if(!i)ao(1,98969,f)|0;a[i+8>>2]=a[t>>2];a[i+12>>2]=0;A=qF(4e6)|0;a[i>>2]=A;if(!A){ao(1,88377,l)|0;A=a[i>>2]|0}a[i+4>>2]=A+4e6;a[(a[t>>2]|0)+12>>2]=i}a[t>>2]=i;i=a[i>>2]|0;a[c>>2]=i}r[(a[e+16>>2]|0)+157>>0]=(n[193770]|0)+1;a[c>>2]=i+4;a[i>>2]=e;k=s;return}function $D(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;f=A+8|0;e=a[f>>2]|0;i=A+4|0;r=a[i>>2]|0;if((e|0)==(a[r>>2]|0))if((r|0)==(a[A>>2]|0))e=0;else{e=a[r+8>>2]|0;a[i>>2]=e;e=a[e+4>>2]|0;a[f>>2]=e;n=4}else n=4;if((n|0)==4){e=e+-4|0;a[f>>2]=e;e=a[e>>2]|0}return e|0}function AM(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;f=a[A+16>>2]|0;n=f+232|0;a[n>>2]=(a[n>>2]|0)+1;n=a[e+16>>2]|0;r[n+157>>0]=r[193770]|0;A=a[46793]|0;i=n+168|0;if(!A){a[i>>2]=0;a[f+192>>2]=e}else{a[i>>2]=A;a[(a[A+16>>2]|0)+164>>2]=e}a[46793]=e;a[n+164>>2]=0;return}function eM(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0.0,k=0.0;u=A+16|0;e=(a[u>>2]|0)+192|0;while(1){e=a[e>>2]|0;if(!e)break;n=e+16|0;e=a[n>>2]|0;i=a[e+188>>2]|0;A:do{if(!i)f=0;else{f=0;while(1){i=a[i+(f<<2)>>2]|0;if(!i){f=0;break A}iM(i);e=a[n>>2]|0;f=f+1|0;i=a[e+188>>2]|0}}}while(0);while(1){if((f|0)>=(a[e+208>>2]|0))break;i=a[(a[e+204>>2]|0)+(f<<2)>>2]|0;b=a[i>>2]&3;if((a[(a[(a[((b|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)==(a[(a[(a[((b|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)){iM(i);e=a[n>>2]|0}f=f+1|0}e=e+164|0}b=a[u>>2]|0;e=a[b+196>>2]|0;if(!((a[e+56>>2]|0)==0?(a[b+180>>2]|0)<=0:0))l=13;A:do{if((l|0)==13){l=a[e+4>>2]|0;n=0;e:while(1){e=a[l+(n<<2)>>2]|0;if(!e)break A;i=a[(a[e+16>>2]|0)+196>>2]|0;e=0;while(1){f=a[i+(e<<2)>>2]|0;if(!f)break;b=a[f+16>>2]|0;if(a[b+96>>2]|0?(r[b+113>>0]|0)==0:0)break e;e=e+1|0}n=n+1|0}rM(A)}}while(0);PW(A);i=0;e=(a[u>>2]|0)+192|0;while(1){e=a[e>>2]|0;if(!e)break;b=e+16|0;e=a[b>>2]|0;f=a[e+188>>2]|0;A:do{if(f){c=0;while(1){n=a[f+(c<<2)>>2]|0;if(!n){c=0;break}l=a[n+16>>2]|0;t=a[l+96>>2]|0;do{if(t)if(!(r[l+113>>0]|0)){fM(n);f=a[b>>2]|0;i=1;e=f;f=a[f+188>>2]|0;break}else{s[l+136>>3]=+s[((a[(a[u>>2]|0)+116>>2]&1|0)==0?t+24|0:t+32|0)>>3];break}}while(0);c=c+1|0}while(1){if((c|0)>=(a[e+208>>2]|0))break A;l=a[(a[e+204>>2]|0)+(c<<2)>>2]|0;t=a[l>>2]&3;n=a[((t|0)==3?l:l+48|0)+40>>2]|0;t=a[((t|0)==2?l:l+-48|0)+40>>2]|0;do{if(!((n|0)==(t|0)?1:(a[(a[n+16>>2]|0)+232>>2]|0)!=(a[(a[t+16>>2]|0)+232>>2]|0))){f=l;do{t=a[f+16>>2]|0;f=a[t+172>>2]|0}while((f|0)!=0);f=r[t+113>>0]|0;n=a[l+16>>2]|0;r[n+113>>0]=f;n=a[n+96>>2]|0;if(n)if(!(f<<24>>24)){fM(l);i=1;e=a[b>>2]|0;break}else{k=+s[((a[(a[u>>2]|0)+116>>2]&1|0)==0?n+24|0:n+32|0)>>3];t=t+136|0;w=+s[t>>3];s[t>>3]=k>w?k:w;break}}}while(0);c=c+1|0}}}while(0);e=e+164|0}if(i|0){Ry(A);AW(A)}return i|0}function iM(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;e=a[A>>2]&3;t=a[((e|0)==3?A:A+48|0)+40>>2]|0;f=t+16|0;n=a[(a[f>>2]|0)+236>>2]|0;e=a[(a[(a[((e|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;l=(n|0)<(e|0);i=l?e:n;t=a[(a[(vL(t)|0)+16>>2]|0)+196>>2]|0;f=t+(a[(a[f>>2]|0)+232>>2]<<6)+4|0;e=l?n:e;A:while(1){e=e+1|0;if((e|0)>=(i|0))break;n=a[(a[(a[f>>2]|0)+(e<<2)>>2]|0)+16>>2]|0;switch(r[n+156>>0]|0){case 0:break A;case 1:break;default:continue A}if(a[n+104>>2]|0)break}if((e|0)==(i|0))do{t=a[A+16>>2]|0;r[t+113>>0]=1;A=a[t+172>>2]|0}while((A|0)!=0);return}function rM(A){A=A|0;var e=0,i=0,r=0,n=0;n=A+16|0;A=a[n>>2]|0;if(f[A+236>>1]|0)gA(88434,88417,190,88453);e=(f[A+238>>1]|0)+3|0;A=a[A+196>>2]|0;if(!A)A=$F(e<<6)|0;else A=eV(A,e<<6)|0;e=A+64|0;A=a[n>>2]|0;a[A+196>>2]=e;A=f[A+238>>1]|0;while(1){if((A|0)<=-1)break;r=A+-1|0;i=e+(A<<6)|0;A=e+(r<<6)|0;e=i+64|0;do{a[i>>2]=a[A>>2];i=i+4|0;A=A+4|0}while((i|0)<(e|0));A=r;e=a[(a[n>>2]|0)+196>>2]|0}a[e+(A<<6)+8>>2]=0;a[e+(A<<6)>>2]=0;i=qF(8)|0;n=a[n>>2]|0;r=a[n+196>>2]|0;a[r+(A<<6)+12>>2]=i;a[r+(A<<6)+4>>2]=i;a[r+(A<<6)+56>>2]=0;s[r+(A<<6)+24>>3]=1.0;s[r+(A<<6)+16>>3]=1.0;s[r+(A<<6)+40>>3]=1.0;s[r+(A<<6)+32>>3]=1.0;n=n+236|0;f[n>>1]=(f[n>>1]|0)+-1<<16>>16;return}function fM(A){A=A|0;var e=0,i=0,f=0.0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0.0,h=0.0,d=0.0;t=A+16|0;if(a[(a[t>>2]|0)+96>>2]|0){u=A+48|0;c=vL(a[((a[A>>2]&3|0)==3?A:u)+40>>2]|0)|0;e=a[(a[(a[((a[A>>2]&3|0)==3?A:u)+40>>2]|0)+16>>2]|0)+232>>2]|0;b=MX(c,A)|0;w=c+16|0;i=a[w>>2]|0;n=a[i+196>>2]|0;k=e+-1|0;l=a[a[n+(k<<6)+4>>2]>>2]|0;if(!l)f=+s[n+(e<<6)+24>>3]+ +s[(a[(a[a[n+(e<<6)+4>>2]>>2]|0)+16>>2]|0)+24>>3]+ +(a[i+252>>2]|0);else f=+s[(a[l+16>>2]|0)+24>>3]-+s[n+(k<<6)+16>>3];e=FX(c,k,b)|0;c=a[(a[t>>2]|0)+96>>2]|0;h=+s[c+24>>3];o=+s[c+32>>3];t=(a[(a[w>>2]|0)+116>>2]&1|0)==0;d=t?o:h;n=e+16|0;i=a[n>>2]|0;s[i+80>>3]=d;b=~~(d*.5);o=(t?h:o)*.5;s[i+96>>3]=o;s[i+88>>3]=o;a[i+104>>2]=c;s[i+24>>3]=+(b+~~f|0);i=Qy(e,a[((a[A>>2]&3|0)==3?A:u)+40>>2]|0,A)|0;i=a[i+16>>2]|0;s[i+16>>3]=-+s[(a[n>>2]|0)+88>>3];s[i+56>>3]=+s[(a[(a[((a[A>>2]&3|0)==3?A:u)+40>>2]|0)+16>>2]|0)+96>>3];r[i+112>>0]=4;i=A+-48|0;e=Qy(e,a[((a[A>>2]&3|0)==2?A:i)+40>>2]|0,A)|0;n=a[n>>2]|0;e=a[e+16>>2]|0;s[e+16>>3]=+s[n+96>>3];s[e+56>>3]=+s[(a[(a[((a[A>>2]&3|0)==2?A:i)+40>>2]|0)+16>>2]|0)+88>>3];r[e+112>>0]=4;e=a[(a[w>>2]|0)+196>>2]|0;i=e+(k<<6)+16|0;f=+(b|0);if(+s[i>>3] >3]=f;e=e+(k<<6)+24|0;if(+s[e>>3] >3]=f;a[n+112>>2]=A}return}function aM(A,e,i){A=A|0;e=e|0;i=i|0;var n=0,t=0,c=0,b=0.0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0;m=k;k=k+160|0;Z=m+24|0;C=m+20|0;E=m+16|0;w=m;o=m+32|0;I=a[A+152>>2]|0;a[Z>>2]=0;a[C>>2]=0;a[E>>2]=0;G=AI(A)|0;a[G+4>>2]=3;a[G+8>>2]=e;a[G+12>>2]=9;g=e+16|0;u=a[(a[g>>2]|0)+96>>2]|0;if((u|0?(r[u+82>>0]|0)==0:0)?(ER(Ho(e,100105)|0,0)|0)<<24>>24:0){u=G+260|0;f[u>>1]=f[u>>1]|512}if(i|0?a[(a[g>>2]|0)+8>>2]|0:0)rr(A,i);i=a[47206]|0;if((i|0?(n=Uo(e,i)|0,n|0):0)?r[n>>0]|0:0)ur(A,+oR(e,a[47206]|0,1.0,0.0));do{if(I&16777216|0){i=e+48|0;if((l[(a[(Id(a[((a[e>>2]&3|0)==3?e:i)+40>>2]|0)|0)+16>>2]|0)+178>>1]|0)>2){b=+s[(a[(a[(a[((a[e>>2]&3|0)==3?e:i)+40>>2]|0)+16>>2]|0)+132>>2]|0)+16>>3]*72.0;s[G+176>>3]=+(~~(b+(b>=0.0?.5:-.5))|0);b=+s[(a[(a[(a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0)+16>>3]*72.0;s[G+184>>3]=+(~~(b+(b>=0.0?.5:-.5))|0);break}else{u=G+176|0;a[u>>2]=0;a[u+4>>2]=0;a[u+8>>2]=0;a[u+12>>2]=0;break}}}while(0);if(I&32768|0){u=a[g>>2]|0;i=a[u+96>>2]|0;if(!i)i=a[G+192>>2]|0;else{i=a[i>>2]|0;a[G+192>>2]=i}n=G+196|0;a[n>>2]=i;c=G+204|0;a[c>>2]=i;t=G+200|0;a[t>>2]=i;i=a[u+108>>2]|0;if(i|0)a[n>>2]=a[i>>2];i=a[u+104>>2]|0;if(i|0)a[t>>2]=a[i>>2];i=a[u+100>>2]|0;if(i|0)a[c>>2]=a[i>>2]}if(!(I&65536))t=0;else{co(w,128,o);a[G+212>>2]=PF(rI(A,e,w)|0,e)|0;wo(w);i=Ho(e,141055)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0)h=31;else{i=Ho(e,111477)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0)h=31;else n=0}if((h|0)==31)n=PF(i,e)|0;i=Ho(e,100118)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0)h=36;else h=34;do{if((h|0)==34){i=Ho(e,100127)|0;if(i|0?r[i>>0]|0:0){h=36;break}if(n|0){i=b3(n)|0;h=39}}}while(0);if((h|0)==36){i=PF(i,e)|0;h=39}if((h|0)==39)a[G+208>>2]=i;i=Ho(e,100135)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0)h=44;else h=42;do{if((h|0)==42){i=Ho(e,100145)|0;if(i|0?r[i>>0]|0:0){h=44;break}if(n|0){i=b3(n)|0;h=47}}}while(0);if((h|0)==44){i=PF(i,e)|0;h=47}if((h|0)==47)a[G+216>>2]=i;i=Ho(e,100154)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0)h=52;else h=50;do{if((h|0)==50){i=Ho(e,100163)|0;if(i|0?r[i>>0]|0:0){h=52;break}if(n|0)a[G+220>>2]=b3(n)|0}}while(0);if((h|0)==52){a[G+220>>2]=PF(i,e)|0;h=G+260|0;f[h>>1]=f[h>>1]|128}i=Ho(e,100171)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0)h=59;else h=57;do{if((h|0)==57){i=Ho(e,100180)|0;if(i|0?r[i>>0]|0:0){h=59;break}if(n|0)a[G+224>>2]=b3(n)|0}}while(0);if((h|0)==59){a[G+224>>2]=PF(i,e)|0;h=G+260|0;f[h>>1]=f[h>>1]|256}t=n}do{if(I&8388608){i=Ho(e,141088)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0)n=PF(i,e)|0;else n=0;i=Ho(e,100188)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0){h=G+260|0;f[h>>1]=f[h>>1]|64;i=PF(i,e)|0;h=72}else h=70;if((h|0)==70?n|0:0){i=b3(n)|0;h=72}if((h|0)==72)a[G+244>>2]=i;i=Ho(e,100199)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0){i=PF(i,e)|0;h=78}else h=76;if((h|0)==76?n|0:0){i=b3(n)|0;h=78}if((h|0)==78)a[G+248>>2]=i;i=Ho(e,100211)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0){a[G+252>>2]=PF(i,e)|0;o=G+260|0;f[o>>1]=f[o>>1]|16}else h=82;if((h|0)==82?n|0:0)a[G+252>>2]=b3(n)|0;i=Ho(e,100222)|0;if(i|0?r[i>>0]|0:0){h=G+260|0;f[h>>1]=f[h>>1]|32;a[G+256>>2]=PF(i,e)|0;break}if(n)a[G+256>>2]=b3(n)|0;else n=0}else n=0}while(0);do{if(I&4194304|0){i=Ho(e,141101)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0)h=94;else h=92;do{if((h|0)==92){i=Ho(e,100233)|0;if(i|0?r[i>>0]|0:0){h=94;break}i=a[G+192>>2]|0;if(i|0)a[G+228>>2]=b3(i)|0}}while(0);if((h|0)==94){o=mM(i,e)|0;a[G+228>>2]=PF(o,e)|0;L2(o);o=G+260|0;f[o>>1]=f[o>>1]|1}i=Ho(e,100245)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0){o=mM(i,e)|0;a[G+232>>2]=PF(o,e)|0;L2(o);o=G+260|0;f[o>>1]=f[o>>1]|8}else h=100;if((h|0)==100?(d=a[G+192>>2]|0,d|0):0)a[G+232>>2]=b3(d)|0;i=Ho(e,100258)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0){d=mM(i,e)|0;a[G+236>>2]=PF(d,e)|0;L2(d);d=G+260|0;f[d>>1]=f[d>>1]|2}else h=105;if((h|0)==105?(B=a[G+200>>2]|0,B|0):0)a[G+236>>2]=b3(B)|0;i=Ho(e,100270)|0;if(i|0?r[i>>0]|0:0){B=mM(i,e)|0;a[G+240>>2]=PF(B,e)|0;L2(B);B=G+260|0;f[B>>1]=f[B>>1]|4;break}i=a[G+204>>2]|0;if(i|0)a[G+240>>2]=b3(i)|0}}while(0);L2(t);L2(n);do{if(I&4259840|0?(v=a[(a[g>>2]|0)+8>>2]|0,v|0):0){if(!(a[G+208>>2]|0)){if((I&524288|0)==0|(a[G+228>>2]|0)==0)break}else if(!(I&524288))break;b=+s[(a[A+16>>2]|0)+152>>3]*.5;b=b>2.0?b:2.0;n=a[v+4>>2]|0;i=0;while(1){if((i|0)>=(n|0))break;QM(Z,C,E,(a[v>>2]|0)+(i*48|0)|0,b);i=i+1|0}t=a[E>>2]|0;a[G+276>>2]=t;c=a[C>>2]|0;a[G+280>>2]=c;if(!(I&8192)){i=0;n=0;while(1){if((n|0)>=(t|0))break;i=(a[c+(n<<2)>>2]|0)+i|0;n=n+1|0}Z=a[Z>>2]|0;zi(A,Z,Z,i)|0;i=Z}else i=a[Z>>2]|0;a[G+284>>2]=i;a[G+264>>2]=2;a[G+272>>2]=i;a[G+268>>2]=a[c>>2]}}while(0);ji(A,e);i=a[G+208>>2]|0;if(!((i|0)==0?!(f[G+260>>1]&1):0))Si(A,i,a[G+228>>2]|0,a[G+244>>2]|0,a[G+212>>2]|0);k=m;return}function nM(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0.0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0.0,N=0.0,R=0,X=0,H=0,U=0,x=0;X=k;k=k+240|0;J=X+224|0;V=X+208|0;I=X+128|0;C=X+112|0;R=X+64|0;L=X+48|0;y=X+32|0;W=X+16|0;z=X;Y=X+192|0;D=X+176|0;Z=X+160|0;Q=X+144|0;a[W>>2]=0;a[W+4>>2]=0;a[W+8>>2]=0;a[W+12>>2]=0;p=+s[(a[A+16>>2]|0)+152>>3];mf(Ho(e,100032)|0);F=e+16|0;A:do{if(a[(a[F>>2]|0)+8>>2]|0){N=+oR(e,a[47188]|0,1.0,0.0);c=dR(e,a[47176]|0,195059)|0;E=(i|0)!=0;e:do{if(E){f=i;while(1){l=f;f=f+4|0;l=a[l>>2]|0;if(!l){w=0;break e}if((r[l>>0]|0)!=116)continue;if(!(A1(l,111117)|0)){w=1;break}}}else w=0}while(0);t=c;h=0;l=0;e:while(1){switch(r[t>>0]|0){case 0:break e;case 58:{f=h+1|0;break}case 59:{f=h;l=l+1|0;break}default:f=h}t=t+1|0;h=f}u=(h|0)!=0;if((l|0)!=0&u)if(!(kM(A,e,i,c,h+1|0,N,p)|0))break;else b=137314;else b=c;f=n[(a[F>>2]|0)+115>>0]|0;if(!(f&1))if(!(f&2))if(!(f&8))if(!(f&4)){l=b;t=BR(e,a[47177]|0,b)|0}else{t=106296;f=106288;c=188712;l=188712;o=18}else{t=106280;f=106272;c=188712;l=188712;o=18}else{t=106264;f=106256;c=188712;l=188712;o=18}else{t=106248;f=106240;c=188712;l=188712;o=18}if((o|0)==18){l=a[l>>2]|0;l=BR(e,l,oM(b,f)|0)|0;f=BR(e,a[c>>2]|0,t)|0;if((l|0)==(b|0)){l=b;t=f}else{$i(A,l);t=f}}if((t|0)!=(b|0))er(A,t);if(w<<24>>24){l=(r[l>>0]|0)==0?137314:l;f=(r[t>>0]|0)==0?137314:t;$i(A,137379);er(A,l);v=R;d=a[a[(a[F>>2]|0)+8>>2]>>2]|0;B=v+48|0;do{a[v>>2]=a[d>>2];v=v+4|0;d=d+4|0}while((v|0)<(B|0));F=HN(R,hM(e)|0,p,0,0)|0;ar(A,a[F+8>>2]|0,a[F>>2]|0,1);dM(F);$i(A,l);if((f|0)!=(l|0))er(A,f);f=a[R+8>>2]|0;if(f|0){M=R+16|0;F=a[R>>2]|0;a[V>>2]=a[M>>2];a[V+4>>2]=a[M+4>>2];a[V+8>>2]=a[M+8>>2];a[V+12>>2]=a[M+12>>2];a[J>>2]=a[F>>2];a[J+4>>2]=a[F+4>>2];a[J+8>>2]=a[F+8>>2];a[J+12>>2]=a[F+12>>2];_C(A,2,V,J,N,p,f)}f=a[R+12>>2]|0;if(!f)break;F=R+32|0;R=(a[R>>2]|0)+((a[R+4>>2]|0)+-1<<4)|0;a[V>>2]=a[F>>2];a[V+4>>2]=a[F+4>>2];a[V+8>>2]=a[F+8>>2];a[V+12>>2]=a[F+12>>2];a[J>>2]=a[R>>2];a[J+4>>2]=a[R+4>>2];a[J+8>>2]=a[R+8>>2];a[J+12>>2]=a[R+12>>2];_C(A,3,V,J,N,p,f);break}f=a[F>>2]|0;if(!u){do{if(!(r[f+115>>0]&3)){if(r[l>>0]|0){$i(A,l);er(A,t);break}$i(A,137314);if(!(r[t>>0]|0)){er(A,137314);break}else{er(A,t);break}}}while(0);c=A+152|0;b=R+4|0;u=R+8|0;w=R+12|0;o=R+32|0;h=R+16|0;t=0;while(1){f=a[(a[F>>2]|0)+8>>2]|0;if((t|0)>=(a[f+4>>2]|0))break A;v=R;d=(a[f>>2]|0)+(t*48|0)|0;B=v+48|0;do{a[v>>2]=a[d>>2];v=v+4|0;d=d+4|0}while((v|0)<(B|0));f=a[R>>2]|0;l=a[b>>2]|0;do{if(!(a[c>>2]&16384)){lr(A,f,l,0,0,0);f=a[u>>2]|0;if(f|0){M=a[R>>2]|0;a[V>>2]=a[h>>2];a[V+4>>2]=a[h+4>>2];a[V+8>>2]=a[h+8>>2];a[V+12>>2]=a[h+12>>2];a[J>>2]=a[M>>2];a[J+4>>2]=a[M+4>>2];a[J+8>>2]=a[M+8>>2];a[J+12>>2]=a[M+12>>2];_C(A,2,V,J,N,p,f)}f=a[w>>2]|0;if(f|0){M=(a[R>>2]|0)+((a[b>>2]|0)+-1<<4)|0;a[V>>2]=a[o>>2];a[V+4>>2]=a[o+4>>2];a[V+8>>2]=a[o+8>>2];a[V+12>>2]=a[o+12>>2];a[J>>2]=a[M>>2];a[J+4>>2]=a[M+4>>2];a[J+8>>2]=a[M+8>>2];a[J+12>>2]=a[M+12>>2];_C(A,3,V,J,N,p,f)}if((a[(a[(a[F>>2]|0)+8>>2]|0)+4>>2]|0)>1){if(!(a[u>>2]|0)){if(!(E&(a[w>>2]|0)!=0))break}else if(!E)break;rr(A,i)}}else lr(A,f,l,a[u>>2]|0,a[w>>2]|0,0)}while(0);t=t+1|0}}M=a[(a[f+8>>2]|0)+4>>2]|0;m=M*48|0;G=Q2(m)|0;m=Q2(m)|0;g=+(h+2|0)*.5;E=R+4|0;o=L+8|0;h=y+8|0;e=W+8|0;i=z+8|0;w=0;while(1){if((w|0)>=(M|0))break;v=R;d=(a[a[(a[F>>2]|0)+8>>2]>>2]|0)+(w*48|0)|0;B=v+48|0;do{a[v>>2]=a[d>>2];v=v+4|0;d=d+4|0}while((v|0)<(B|0));f=a[E>>2]|0;a[G+(w*48|0)+4>>2]=f;a[m+(w*48|0)+4>>2]=f;u=f<<4;b=Q2(u)|0;a[G+(w*48|0)>>2]=b;u=Q2(u)|0;a[m+(w*48|0)>>2]=u;c=a[R>>2]|0;a[z>>2]=a[c>>2];a[z+4>>2]=a[c+4>>2];a[z+8>>2]=a[c+8>>2];a[z+12>>2]=a[c+12>>2];c=0;while(1){if((c|0)>=(f+-1|0))break;a[L>>2]=a[z>>2];a[L+4>>2]=a[z+4>>2];a[L+8>>2]=a[z+8>>2];a[L+12>>2]=a[z+12>>2];f=c+1|0;t=(a[R>>2]|0)+(f<<4)|0;a[y>>2]=a[t>>2];a[y+4>>2]=a[t+4>>2];a[y+8>>2]=a[t+8>>2];a[y+12>>2]=a[t+12>>2];t=b+(c<<4)|0;if(!c){a[V>>2]=a[L>>2];a[V+4>>2]=a[L+4>>2];a[V+8>>2]=a[L+8>>2];a[V+12>>2]=a[L+12>>2];a[J>>2]=a[y>>2];a[J+4>>2]=a[y+4>>2];a[J+8>>2]=a[y+8>>2];a[J+12>>2]=a[y+12>>2];BM(Y,V,J);a[t>>2]=a[Y>>2];a[t+4>>2]=a[Y+4>>2];a[t+8>>2]=a[Y+8>>2];a[t+12>>2]=a[Y+12>>2]}else{a[V>>2]=a[W>>2];a[V+4>>2]=a[W+4>>2];a[V+8>>2]=a[W+8>>2];a[V+12>>2]=a[W+12>>2];a[J>>2]=a[y>>2];a[J+4>>2]=a[y+4>>2];a[J+8>>2]=a[y+8>>2];a[J+12>>2]=a[y+12>>2];BM(D,V,J);a[t>>2]=a[D>>2];a[t+4>>2]=a[D+4>>2];a[t+8>>2]=a[D+8>>2];a[t+12>>2]=a[D+12>>2]}U=a[R>>2]|0;B=c+2|0;x=U+(B<<4)|0;a[W>>2]=a[x>>2];a[W+4>>2]=a[x+4>>2];a[W+8>>2]=a[x+8>>2];a[W+12>>2]=a[x+12>>2];v=c+3|0;U=U+(v<<4)|0;a[z>>2]=a[U>>2];a[z+4>>2]=a[U+4>>2];a[z+8>>2]=a[U+8>>2];a[z+12>>2]=a[U+12>>2];H=b+(f<<4)|0;d=b+(B<<4)|0;a[C>>2]=a[L>>2];a[C+4>>2]=a[L+4>>2];a[C+8>>2]=a[L+8>>2];a[C+12>>2]=a[L+12>>2];a[I>>2]=a[y>>2];a[I+4>>2]=a[y+4>>2];a[I+8>>2]=a[y+8>>2];a[I+12>>2]=a[y+12>>2];a[V>>2]=a[x>>2];a[V+4>>2]=a[x+4>>2];a[V+8>>2]=a[x+8>>2];a[V+12>>2]=a[x+12>>2];a[J>>2]=a[U>>2];a[J+4>>2]=a[U+4>>2];a[J+8>>2]=a[U+8>>2];a[J+12>>2]=a[U+12>>2];gM(Z,C,I,V,J);a[d>>2]=a[Z>>2];a[d+4>>2]=a[Z+4>>2];a[d+8>>2]=a[Z+8>>2];a[d+12>>2]=a[Z+12>>2];a[H>>2]=a[Z>>2];a[H+4>>2]=a[Z+4>>2];a[H+8>>2]=a[Z+8>>2];a[H+12>>2]=a[Z+12>>2];s[u+(c<<4)>>3]=+s[L>>3]-+s[t>>3]*g;s[u+(c<<4)+8>>3]=+s[o>>3]-+s[b+(c<<4)+8>>3]*g;s[u+(f<<4)>>3]=+s[y>>3]-+s[H>>3]*g;s[u+(f<<4)+8>>3]=+s[h>>3]-+s[b+(f<<4)+8>>3]*g;s[u+(B<<4)>>3]=+s[W>>3]-+s[d>>3]*g;s[u+(B<<4)+8>>3]=+s[e>>3]-+s[b+(B<<4)+8>>3]*g;c=v;f=a[E>>2]|0}x=b+(c<<4)|0;a[V>>2]=a[W>>2];a[V+4>>2]=a[W+4>>2];a[V+8>>2]=a[W+8>>2];a[V+12>>2]=a[W+12>>2];a[J>>2]=a[z>>2];a[J+4>>2]=a[z+4>>2];a[J+8>>2]=a[z+8>>2];a[J+12>>2]=a[z+12>>2];BM(Q,V,J);a[x>>2]=a[Q>>2];a[x+4>>2]=a[Q+4>>2];a[x+8>>2]=a[Q+8>>2];a[x+12>>2]=a[Q+12>>2];s[u+(c<<4)>>3]=+s[z>>3]-+s[x>>3]*g;s[u+(c<<4)+8>>3]=+s[i>>3]-+s[b+(c<<4)+8>>3]*g;w=w+1|0}B=b3(l)|0;i=0;d=l;f=l;t=l;l=B;while(1){l=t3(l,107984)|0;if(!l)break;e=(r[l>>0]|0)==0?137314:l;if((e|0)!=(t|0))if(!(r[(a[F>>2]|0)+115>>0]&3)){$i(A,e);er(A,e);t=e}else t=e;b=(i|0)==0;u=i>>>0<2;l=0;while(1){if((l|0)>=(M|0))break;w=a[m+(l*48|0)>>2]|0;o=a[G+(l*48|0)>>2]|0;h=a[m+(l*48|0)+4>>2]|0;c=0;while(1){if((c|0)>=(h|0))break;x=w+(c<<4)|0;s[x>>3]=+s[x>>3]+ +s[o+(c<<4)>>3];x=w+(c<<4)+8|0;s[x>>3]=+s[x>>3]+ +s[o+(c<<4)+8>>3];c=c+1|0}lr(A,w,h,0,0,0);l=l+1|0}i=i+1|0;d=b?e:d;f=u?e:f;l=0}l=a[R+8>>2]|0;if(!l)l=0;else{if(f){if(!(r[(a[F>>2]|0)+115>>0]&3)){$i(A,f);er(A,f)}}else f=0;U=R+16|0;x=a[R>>2]|0;a[V>>2]=a[U>>2];a[V+4>>2]=a[U+4>>2];a[V+8>>2]=a[U+8>>2];a[V+12>>2]=a[U+12>>2];a[J>>2]=a[x>>2];a[J+4>>2]=a[x+4>>2];a[J+8>>2]=a[x+8>>2];a[J+12>>2]=a[x+12>>2];_C(A,2,V,J,N,p,l);l=f}t=R+12|0;f=a[t>>2]|0;if(f|0){if((l|0)!=(d|0)?(r[(a[F>>2]|0)+115>>0]&3)==0:0){$i(A,d);er(A,d);f=a[t>>2]|0}U=R+32|0;x=(a[R>>2]|0)+((a[E>>2]|0)+-1<<4)|0;a[V>>2]=a[U>>2];a[V+4>>2]=a[U+4>>2];a[V+8>>2]=a[U+8>>2];a[V+12>>2]=a[U+12>>2];a[J>>2]=a[x>>2];a[J+4>>2]=a[x+4>>2];a[J+8>>2]=a[x+8>>2];a[J+12>>2]=a[x+12>>2];_C(A,3,V,J,N,p,f)}L2(B);f=0;while(1){if((f|0)>=(M|0))break;L2(a[G+(f*48|0)>>2]|0);L2(a[m+(f*48|0)>>2]|0);f=f+1|0}L2(G);L2(m)}}while(0);k=X;return}function lM(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0;I=k;k=k+64|0;d=I+48|0;v=I+32|0;g=I+16|0;B=I;C=a[A+16>>2]|0;E=a[C+8>>2]|0;h=C+208|0;if(!((a[h>>2]|0)==0?!(f[C+260>>1]&1):0))e=3;A:do{if((e|0)==3?(Oi(A),o=C+276|0,i=a[o>>2]|0,i|0):0){l=C+280|0;e=a[l>>2]|0;t=C+268|0;c=C+284|0;s=C+272|0;b=C+228|0;u=C+244|0;w=C+212|0;r=a[e>>2]|0;n=1;while(1){if((n|0)>=(i|0))break A;a[t>>2]=a[e+(n<<2)>>2];a[s>>2]=(a[c>>2]|0)+(r<<4);Si(A,a[h>>2]|0,a[b>>2]|0,a[u>>2]|0,a[w>>2]|0);Oi(A);Z=a[l>>2]|0;r=(a[Z+(n<<2)>>2]|0)+r|0;n=n+1|0;i=a[o>>2]|0;e=Z}}}while(0);a[C+268>>2]=0;a[C+272>>2]=0;h=E+16|0;e=a[h>>2]|0;i=a[e+8>>2]|0;if(!i)r=C+260|0;else{o=a[i>>2]|0;e=a[o>>2]|0;Z=a[o+8>>2]|0;w=o+16|0;a[g>>2]=a[w>>2];a[g+4>>2]=a[w+4>>2];a[g+8>>2]=a[w+8>>2];a[g+12>>2]=a[w+12>>2];o=o+32|0;a[B>>2]=a[o>>2];a[B+4>>2]=a[o+4>>2];a[B+8>>2]=a[o+8>>2];a[B+12>>2]=a[o+12>>2];if(!Z){a[v>>2]=a[e>>2];a[v+4>>2]=a[e+4>>2];a[v+8>>2]=a[e+8>>2];a[v+12>>2]=a[e+12>>2]}else{a[v>>2]=a[g>>2];a[v+4>>2]=a[g+4>>2];a[v+8>>2]=a[g+8>>2];a[v+12>>2]=a[g+12>>2]}r=C+260|0;o=f[r>>1]|0;w=a[C+220>>2]|0;a[d>>2]=a[v>>2];a[d+4>>2]=a[v+4>>2];a[d+8>>2]=a[v+8>>2];a[d+12>>2]=a[v+12>>2];tM(A,d,(o<<8&65535)<<16>>16>>15&255,w,(o<<14&65535)<<16>>16>>15&255);o=a[(a[h>>2]|0)+8>>2]|0;w=a[o>>2]|0;o=(a[o+4>>2]|0)+-1|0;e=a[w+(o*48|0)>>2]|0;i=a[w+(o*48|0)+4>>2]|0;Z=a[w+(o*48|0)+12>>2]|0;u=w+(o*48|0)+16|0;a[g>>2]=a[u>>2];a[g+4>>2]=a[u+4>>2];a[g+8>>2]=a[u+8>>2];a[g+12>>2]=a[u+12>>2];g=w+(o*48|0)+32|0;a[B>>2]=a[g>>2];a[B+4>>2]=a[g+4>>2];a[B+8>>2]=a[g+8>>2];a[B+12>>2]=a[g+12>>2];if(!Z){Z=e+(i+-1<<4)|0;a[v>>2]=a[Z>>2];a[v+4>>2]=a[Z+4>>2];a[v+8>>2]=a[Z+8>>2];a[v+12>>2]=a[Z+12>>2]}else{a[v>>2]=a[B>>2];a[v+4>>2]=a[B+4>>2];a[v+8>>2]=a[B+8>>2];a[v+12>>2]=a[B+12>>2]}e=f[r>>1]|0;Z=a[C+224>>2]|0;a[d>>2]=a[v>>2];a[d+4>>2]=a[v+4>>2];a[d+8>>2]=a[v+8>>2];a[d+12>>2]=a[v+12>>2];tM(A,d,(e<<7&65535)<<16>>16>>15&255,Z,(e<<13&65535)<<16>>16>>15&255);e=a[h>>2]|0}i=a[e+96>>2]|0;n=(f[r>>1]<<12&65535)<<16>>16>>15<<16>>16;b=C+216|0;l=a[b>>2]|0;u=C+232|0;t=a[u>>2]|0;w=C+248|0;c=a[w>>2]|0;o=C+212|0;s=a[o>>2]|0;if(!((vR(dR(E,a[47186]|0,137308)|0)|0)<<24>>24))e=0;else e=a[(a[h>>2]|0)+8>>2]|0;cM(A,i,11,n,l,t,c,s,e);c=a[(a[h>>2]|0)+108>>2]|0;s=(f[r>>1]<<12&65535)<<16>>16>>15<<16>>16;t=a[b>>2]|0;l=a[u>>2]|0;i=a[w>>2]|0;n=a[o>>2]|0;if(!((vR(dR(E,a[47186]|0,137308)|0)|0)<<24>>24))e=0;else e=a[(a[h>>2]|0)+8>>2]|0;cM(A,c,11,s,t,l,i,n,e);cM(A,a[(a[h>>2]|0)+100>>2]|0,7,(f[r>>1]<<13&65535)<<16>>16>>15<<16>>16,a[C+224>>2]|0,a[C+240>>2]|0,a[C+256>>2]|0,a[o>>2]|0,0);cM(A,a[(a[h>>2]|0)+104>>2]|0,6,(f[r>>1]<<14&65535)<<16>>16>>15<<16>>16,a[C+220>>2]|0,a[C+236>>2]|0,a[C+252>>2]|0,a[o>>2]|0,0);Pi(A);eI(A);k=I;return}function tM(A,e,i,r,n){A=A|0;e=e|0;i=i|0;r=r|0;n=n|0;var l=0,t=0,c=0;c=k;k=k+16|0;l=c;t=a[A+16>>2]|0;if(!(i<<24>>24))r=a[t+208>>2]|0;if(!(n<<24>>24==0?(r|0)==0?(f[t+260>>1]&1)==0:0:0)){a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2];wM(A,l)}k=c;return}function cM(A,e,i,f,n,l,t,c,s){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;t=t|0;c=c|0;s=s|0;var b=0,u=0,w=0,o=0,h=0,d=0;d=k;k=k+16|0;w=d;h=a[A+152>>2]|0;if(e|0?r[e+81>>0]|0:0){if(!c)u=0;else{u=qF((P2(c)|0)+11|0)|0;switch(i|0){case 11:{b=108224;break}case 7:{b=101583;break}case 6:{b=101593;break}default:gA(138394,99906,2730,100044)}a[w>>2]=c;a[w+4>>2]=b;S4(u,100060,w)|0}w=A+16|0;c=(a[w>>2]|0)+12|0;o=a[c>>2]|0;a[c>>2]=i;c=(f|0)!=0|(n|0)!=0;b=(h&4|0)==0;if(c&b){sM(A,e);Si(A,n,l,t,u)}jF(A,i,e);if(s|0)bM(A,e,s);if(c){if(!b){sM(A,e);Si(A,n,l,t,u)}Oi(A)}L2(u);a[(a[w>>2]|0)+12>>2]=o}k=d;return}function sM(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;i=a[A+16>>2]|0;r=a[A+152>>2]|0;if(r&4259840|0){f=r&131072;l=f>>>16^2;a[i+264>>2]=l;t=i+268|0;a[t>>2]=l+2;l=i+272|0;L2(a[l>>2]|0);i=qF(a[t>>2]<<4)|0;a[l>>2]=i;l=e+56|0;t=e+24|0;s[i>>3]=+s[l>>3]-+s[t>>3]*.5;n=e+64|0;e=e+32|0;s[i+8>>3]=+s[n>>3]-+s[e>>3]*.5;s[i+16>>3]=+s[t>>3]*.5+ +s[l>>3];s[i+24>>3]=+s[e>>3]*.5+ +s[n>>3];if(!(r&8192))zi(A,i,i,2)|0;if(!f)mF(i)}return}function bM(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0.0;w=k;k=k+96|0;n=w+80|0;l=w+32|0;t=w+16|0;c=w;f=a[e>>2]|0;while(1){b=r[f>>0]|0;if(!(b<<24>>24))break;if(!(m1(b&255)|0)){u=4;break}else f=f+1|0}if((u|0)==4){o=+s[e+24>>3];b=e+56|0;uM(l,+s[b>>3]+o*.5,+s[e+64>>3]-+s[e+32>>3]*.5);u=l+16|0;uM(t,+s[l>>3]-o,+s[l+8>>3]);a[u>>2]=a[t>>2];a[u+4>>2]=a[t+4>>2];a[u+8>>2]=a[t+8>>2];a[u+12>>2]=a[t+12>>2];u=l+32|0;a[n>>2]=a[b>>2];a[n+4>>2]=a[b+4>>2];a[n+8>>2]=a[b+8>>2];a[n+12>>2]=a[b+12>>2];DR(c,i,n);a[u>>2]=a[c>>2];a[u+4>>2]=a[c+4>>2];a[u+8>>2]=a[c+8>>2];a[u+12>>2]=a[c+12>>2];rr(A,a[(a[A>>2]|0)+336>>2]|0);$i(A,a[e+8>>2]|0);tr(A,l,3)}k=w;return}function uM(A,e,i){A=A|0;e=+e;i=+i;s[A>>3]=e;s[A+8>>3]=i;return}function wM(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0.0,l=0.0,t=0,c=0;i=a[A+16>>2]|0;r=a[A+152>>2]|0;if(r&4259840|0){f=r&131072;t=f>>>16^2;a[i+264>>2]=t;c=i+268|0;a[c>>2]=t+2;t=i+272|0;L2(a[t>>2]|0);i=qF(a[c>>2]<<4)|0;a[t>>2]=i;l=+s[e>>3];s[i>>3]=l+-3.0;n=+s[e+8>>3];s[i+8>>3]=n+-3.0;s[i+16>>3]=l+3.0;s[i+24>>3]=n+3.0;if(!(r&8192))zi(A,i,i,2)|0;if(!f)mF(i)}return}function kM(A,e,i,r,f,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=+n;l=+l;var t=0,s=0,b=0.0,u=0.0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0;F=k;k=k+256|0;y=F+224|0;L=F+208|0;t=F+192|0;z=F+144|0;Y=F+96|0;D=F+48|0;W=F;s=F+240|0;r=nI(r,f,s)|0;if((r|0)>1){G=e+48|0;m=Id(a[((a[e>>2]&3|0)==3?e:G)+40>>2]|0)|0;G=Vh(a[((a[e>>2]&3|0)==3?e:G)+40>>2]|0)|0;m=(Ih(m)|0)!=0;Q=Vh(a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)|0;a[t>>2]=G;a[t+4>>2]=m?100079:100084;a[t+8>>2]=Q;ao(3,100089,t)|0;if((r|0)==2)r=1;else M=4}else if((r|0)==1)r=1;else M=4;if((M|0)==4){Q=e+16|0;d=a[s>>2]|0;B=d+8|0;g=D+4|0;v=z+8|0;E=z+12|0;C=(i|0)!=0;h=(i|0)==0;I=z+32|0;Z=z+4|0;G=z+16|0;m=W+4|0;r=0;o=0;while(1){f=a[(a[Q>>2]|0)+8>>2]|0;if((o|0)>=(a[f+4>>2]|0))break;t=z;f=(a[f>>2]|0)+(o*48|0)|0;e=t+48|0;do{a[t>>2]=a[f>>2];t=t+4|0;f=f+4|0}while((t|0)<(e|0));e=1;b=1.0;w=a[B>>2]|0;A:while(1){f=a[w>>2]|0;if(!f)break;s=w+4|0;u=+c[s>>2];do{if(u<1.0e-05&u>-1.0e-05)f=e;else{$i(A,f);u=+c[s>>2];b=b-u;r=a[w>>2]|0;if(e|0){ZM(z,u,D,W);s=a[D>>2]|0;lr(A,s,a[g>>2]|0,0,0,0);L2(s);if(b<1.0e-05&b>-1.0e-05){M=11;break A}else{f=0;break}}if(b<1.0e-05&b>-1.0e-05){M=13;break A}t=Y;f=W;e=t+48|0;do{a[t>>2]=a[f>>2];t=t+4|0;f=f+4|0}while((t|0)<(e|0));u=+c[s>>2];ZM(Y,u/(b+u),D,W);L2(a[Y>>2]|0);f=a[D>>2]|0;lr(A,f,a[g>>2]|0,0,0,0);L2(f);f=0}}while(0);e=f;w=w+12|0}if((M|0)==11){M=0;L2(a[W>>2]|0)}else if((M|0)==13){M=0;w=a[W>>2]|0;lr(A,w,a[m>>2]|0,0,0,0);L2(w)}if(a[v>>2]|0){$i(A,a[a[B>>2]>>2]|0);er(A,a[a[B>>2]>>2]|0);s=a[z>>2]|0;w=a[v>>2]|0;a[L>>2]=a[G>>2];a[L+4>>2]=a[G+4>>2];a[L+8>>2]=a[G+8>>2];a[L+12>>2]=a[G+12>>2];a[y>>2]=a[s>>2];a[y+4>>2]=a[s+4>>2];a[y+8>>2]=a[s+8>>2];a[y+12>>2]=a[s+12>>2];_C(A,2,L,y,n,l,w)}if(a[E>>2]|0){$i(A,r);er(A,r);s=(a[z>>2]|0)+((a[Z>>2]|0)+-1<<4)|0;w=a[E>>2]|0;a[L>>2]=a[I>>2];a[L+4>>2]=a[I+4>>2];a[L+8>>2]=a[I+8>>2];a[L+12>>2]=a[I+12>>2];a[y>>2]=a[s>>2];a[y+4>>2]=a[s+4>>2];a[y+8>>2]=a[s+8>>2];a[y+12>>2]=a[s+12>>2];_C(A,3,L,y,n,l,w)}do{if((a[(a[(a[Q>>2]|0)+8>>2]|0)+4>>2]|0)>1){if(!(a[v>>2]|0)){if(!(C&(a[E>>2]|0)!=0))break}else if(h)break;rr(A,i)}}while(0);o=o+1|0}lI(d);r=0}k=F;return r|0}function oM(A,e){A=A|0;e=e|0;var i=0,f=0;i=1;A:while(1){switch(r[A>>0]|0){case 0:break A;case 58:{i=i+1|0;break}default:{}}A=A+1|0}f=U((P2(e)|0)+1|0,i)|0;A=f+10|0;if((a[47121]|0)<(f|0)){a[47121]=A;A=W2(a[47122]|0,A)|0;a[47122]=A}else A=a[47122]|0;$1(A,e)|0;while(1){i=i+-1|0;A=a[47122]|0;if(!i)break;f=A+(P2(A)|0)|0;r[f>>0]=58;r[f+1>>0]=0;w3(A,e)|0}return A|0}function hM(A){A=A|0;var e=0,i=0;e=a[47184]|0;A:do{if(!e)i=7;else{e=Uo(A,e)|0;switch(r[e>>0]|0){case 110:if(!(A1(e,135709)|0)){e=1;break A}else{i=7;break A}case 102:if(!(A1(e,100066)|0)){e=2;break A}else{i=7;break A}case 98:{if(!(A1(e,100074)|0)){e=3;break A}if(!(A1(e,111221)|0)){e=4;break A}else{i=7;break A}}default:{i=7;break A}}}}while(0);if((i|0)==7){e=(Ih(Id(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)|0)|0)!=0;e=e?2:1}return e|0}function dM(A){A=A|0;if(A|0){L2(a[A+8>>2]|0);L2(A)}return}function BM(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,a=0.0;f=+s[e>>3]-+s[i>>3];a=+s[e+8>>3]-+s[i+8>>3];r=2.0/+z(+(f*f+.0001+a*a));s[A>>3]=r*a;s[A+8>>3]=-(f*r);return}function gM(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var a=0.0,n=0.0,l=0.0,t=0.0;n=+s[i>>3]-+s[r>>3];l=+s[i+8>>3]-+s[r+8>>3];a=+z(+(l*l+n*n));if(a<.0001){t=+s[e>>3]-+s[f>>3];a=+s[e+8>>3]-+s[f+8>>3];l=a;n=t;a=+z(+(t*t+.0001+a*a))}t=2.0/a;s[A>>3]=l*t;s[A+8>>3]=-(t*n);return}function vM(A,e,i){A=+A;e=+e;i=+i;return+(i*.5*(1.0-A/e))}function EM(A,e,i){A=+A;e=+e;i=+i;return+(i*.5)}function CM(A,e,i){A=+A;e=+e;i=+i;return+(i*.5*(A/e))}function IM(A,e,i){A=+A;e=+e;i=+i;e=A/e;return+((!(e<=.5)?1.0-e:e)*i)}function ZM(A,e,i,r){A=A|0;e=+e;i=i|0;r=r|0;var f=0.0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0.0,d=0,B=0;o=k;k=k+16|0;w=o;u=a[A+4>>2]|0;t=(u+-1|0)/3|0;if((u+-4|0)>>>0<3){a[i+4>>2]=4;a[i>>2]=qF(64)|0;a[r+4>>2]=4;u=qF(64)|0;a[r>>2]=u;QR(w,a[A>>2]|0,3,e,a[i>>2]|0,u)}else{u=qF(t<<3)|0;n=0;l=a[A>>2]|0;f=0.0;while(1){if((n|0)>=(t|0))break;h=+GM(l);s[u+(n<<3)>>3]=h;n=n+1|0;l=l+48|0;f=h+f}e=f*e;b=0;f=0.0;while(1){if((t|0)<=(b|0))break;f=+s[u+(b<<3)>>3]+f;if(f>=e)break;b=b+1|0}c=b*3|0;n=c+4|0;l=i+4|0;a[l>>2]=n;a[i>>2]=qF(n<<4)|0;n=((t-b|0)*3|0)+1|0;t=r+4|0;a[t>>2]=n;a[r>>2]=qF(n<<4)|0;n=0;while(1){if((n|0)>=(a[l>>2]|0))break;d=(a[i>>2]|0)+(n<<4)|0;B=(a[A>>2]|0)+(n<<4)|0;a[d>>2]=a[B>>2];a[d+4>>2]=a[B+4>>2];a[d+8>>2]=a[B+8>>2];a[d+12>>2]=a[B+12>>2];n=n+1|0}n=n+-4|0;l=0;while(1){if((l|0)>=(a[t>>2]|0))break;B=(a[r>>2]|0)+(l<<4)|0;d=(a[A>>2]|0)+(n<<4)|0;a[B>>2]=a[d>>2];a[B+4>>2]=a[d+4>>2];a[B+8>>2]=a[d+8>>2];a[B+12>>2]=a[d+12>>2];n=n+1|0;l=l+1|0}h=+s[u+(b<<3)>>3];QR(w,(a[A>>2]|0)+(c<<4)|0,3,(e-f+h)/h,(a[i>>2]|0)+(c<<4)|0,a[r>>2]|0);L2(u)}k=o;return}function GM(A){A=A|0;var e=0.0,i=0.0,r=0.0,f=0.0,a=0.0;f=+s[A+16>>3];r=+s[A>>3]-f;a=+s[A+24>>3];e=+s[A+8>>3]-a;r=+z(+(e*e+r*r));e=+s[A+32>>3];f=f-e;i=+s[A+40>>3];a=a-i;r=+z(+(a*a+f*f))+r;e=e-+s[A+48>>3];i=i-+s[A+56>>3];return+(r+ +z(+(i*i+e*e)))}function mM(A,e){A=A|0;e=e|0;e=Zd(e)|0;if((r[(a[e+16>>2]|0)+115>>0]|0)==1)e=EX(A)|0;else e=BX(A,e)|0;return DM(e)|0}function QM(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=+f;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0;h=k;k=k+1664|0;b=h+1600|0;u=h+800|0;w=h;o=$F(24)|0;a[o+16>>2]=1;c=((a[r+4>>2]|0)+-1|0)/3|0;l=0;t=o;while(1){if((l|0)>=(c|0))break;s=l*3|0;n=0;while(1){if((n|0)==4)break;d=b+(n<<4)|0;B=(a[r>>2]|0)+(n+s<<4)|0;a[d>>2]=a[B>>2];a[d+4>>2]=a[B+4>>2];a[d+8>>2]=a[B+8>>2];a[d+12>>2]=a[B+12>>2];n=n+1|0}l=l+1|0;t=LM(b,t)|0}n=0;l=0;t=o;while(1){if(!t){l=o;n=o;break}c=a[t+16>>2]|0;s=u+(n<<4)|0;r=w+(n<<4)|0;yM(l,t,c,s,r,f);n=n+1|0;if(!((n|0)==50|(c|0)==0)){l=t;t=c;continue}WM(A,e,i,n,u,w);a[u>>2]=a[s>>2];a[u+4>>2]=a[s+4>>2];a[u+8>>2]=a[s+8>>2];a[u+12>>2]=a[s+12>>2];a[w>>2]=a[r>>2];a[w+4>>2]=a[r+4>>2];a[w+8>>2]=a[r+8>>2];a[w+12>>2]=a[r+12>>2];l=t;n=1;t=c}while(1){if(!l)break;B=a[l+16>>2]|0;L2(n);l=B;n=B}k=h;return}function LM(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;n=k;k=k+144|0;f=n+128|0;i=n+64|0;r=n;if(!(uI(A)|0)){QR(f,A,3,.5,i,r);i=LM(r,LM(i,e)|0)|0}else{i=e+16|0;if((a[i>>2]|0)==1){a[i>>2]=0;a[e>>2]=a[A>>2];a[e+4>>2]=a[A+4>>2];a[e+8>>2]=a[A+8>>2];a[e+12>>2]=a[A+12>>2]}i=A+48|0;a[f>>2]=a[i>>2];a[f+4>>2]=a[i+4>>2];a[f+8>>2]=a[i+8>>2];a[f+12>>2]=a[i+12>>2];i=YM(f,e)|0}k=n;return i|0}function yM(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=+n;var l=0.0,t=0.0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0.0,g=0.0;d=k;k=k+96|0;u=d+80|0;b=d+64|0;c=d+48|0;w=d+32|0;o=d+16|0;h=d;a[w>>2]=a[e>>2];a[w+4>>2]=a[e+4>>2];a[w+8>>2]=a[e+8>>2];a[w+12>>2]=a[e+12>>2];do{if(A){a[o>>2]=a[A>>2];a[o+4>>2]=a[A+4>>2];a[o+8>>2]=a[A+8>>2];a[o+12>>2]=a[A+12>>2];if(!i){l=+s[w>>3];s[h>>3]=l*2.0-+s[o>>3];t=+s[w+8>>3];s[h+8>>3]=t*2.0-+s[o+8>>3];break}else{a[h>>2]=a[i>>2];a[h+4>>2]=a[i+4>>2];a[h+8>>2]=a[i+8>>2];a[h+12>>2]=a[i+12>>2];l=+s[w>>3];t=+s[w+8>>3];break}}else{a[h>>2]=a[i>>2];a[h+4>>2]=a[i+4>>2];a[h+8>>2]=a[i+8>>2];a[h+12>>2]=a[i+12>>2];l=+s[w>>3];s[o>>3]=l*2.0-+s[h>>3];t=+s[w+8>>3];s[o+8>>3]=t*2.0-+s[h+8>>3]}}while(0);a[c>>2]=a[o>>2];a[c+4>>2]=a[o+4>>2];a[c+8>>2]=a[o+8>>2];a[c+12>>2]=a[o+12>>2];a[b>>2]=a[w>>2];a[b+4>>2]=a[w+4>>2];a[b+8>>2]=a[w+8>>2];a[b+12>>2]=a[w+12>>2];a[u>>2]=a[h>>2];a[u+4>>2]=a[h+4>>2];a[u+8>>2]=a[h+8>>2];a[u+12>>2]=a[h+12>>2];g=+zM(c,b,u);B=+D(+g)*n;n=+M(+g)*n;s[r>>3]=l+B;s[r+8>>3]=t+n;s[f>>3]=l-B;s[f+8>>3]=t-n;k=d;return}function WM(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0,b=0;t=r<<1;c=a[i>>2]|0;l=0;s=0;while(1){if((l|0)>=(c|0))break;b=(a[(a[e>>2]|0)+(l<<2)>>2]|0)+s|0;l=l+1|0;s=b}b=c+1|0;a[i>>2]=b;b=eV(a[e>>2]|0,b<<2)|0;a[e>>2]=b;a[b+(l<<2)>>2]=t;a[A>>2]=eV(a[A>>2]|0,s+t<<4)|0;e=t+-1+s|0;l=0;while(1){if((l|0)>=(r|0))break;b=(a[A>>2]|0)+(l+s<<4)|0;c=f+(l<<4)|0;a[b>>2]=a[c>>2];a[b+4>>2]=a[c+4>>2];a[b+8>>2]=a[c+8>>2];a[b+12>>2]=a[c+12>>2];b=(a[A>>2]|0)+(e-l<<4)|0;c=n+(l<<4)|0;a[b>>2]=a[c>>2];a[b+4>>2]=a[c+4>>2];a[b+8>>2]=a[c+8>>2];a[b+12>>2]=a[c+12>>2];l=l+1|0}return}function zM(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,a=0.0;a=+s[e+8>>3];r=+s[e>>3];f=+N(+(+s[i+8>>3]-a),+(+s[i>>3]-r));r=+N(+(+s[A+8>>3]-a),+(+s[A>>3]-r));f=f-r;return+((f>0.0?f+-6.283185307179586:f)*.5+r)}function YM(A,e){A=A|0;e=e|0;var i=0;i=$F(24)|0;a[i+16>>2]=0;a[i>>2]=a[A>>2];a[i+4>>2]=a[A+4>>2];a[i+8>>2]=a[A+8>>2];a[i+12>>2]=a[A+12>>2];a[e+16>>2]=i;return i|0}function DM(A){A=A|0;var e=0,i=0,f=0,a=0,n=0;e=A;a=A;A:while(1){f=0;while(1){i=e;e=e+1|0;i=r[i>>0]|0;if(!(i<<24>>24))break A;if(f<<24>>24){n=5;break}if(i<<24>>24!=92)break;else f=1}e:do{if((n|0)==5){n=0;switch(i<<24>>24|0){case 114:{i=13;break e}case 108:case 110:{i=10;break e}default:break e}}}while(0);r[a>>0]=i;a=a+1|0}r[a>>0]=0;return A|0}function MM(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0;i=a[A>>2]|0;while(1){n=r[i>>0]|0;if(!(n<<24>>24)){f=0;break}f=n<<24>>24;if(!(n<<24>>24==44|(m1(f)|0)!=0)){l=5;break}i=i+1|0}A:do{if((l|0)==5){switch(f|0){case 0:{f=0;break A}case 41:case 40:{i=i+1|0;break A}default:{}}l=e+4|0;t=e+8|0;while(1){if((FM(n<<24>>24)|0)<<24>>24){f=1;break A}f=a[l>>2]|0;if(f>>>0>=(a[t>>2]|0)>>>0){so(e,1)|0;f=a[l>>2]|0}a[l>>2]=f+1;r[f>>0]=n;f=i+1|0;i=f;n=r[f>>0]|0}}}while(0);a[A>>2]=i;return f|0}function FM(A){A=A|0;switch(A|0){case 0:case 44:case 41:case 40:{A=1;break}default:A=0}return A|0}function VM(A,e){A=A|0;e=e|0;return JM(a[A>>2]|0,a[A+160>>2]|0,a[A+156>>2]|0,e)|0}function JM(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;w=k;k=k+160|0;s=w+20|0;b=w+16|0;u=w;a[s>>2]=0;a[b>>2]=0;co(u,128,w+24|0);uo(u,f)|0;n=u+4|0;f=a[n>>2]|0;if(f>>>0>=(a[u+8>>2]|0)>>>0){so(u,1)|0;f=a[n>>2]|0}r[f>>0]=0;l=a[u>>2]|0;a[n>>2]=l;t=A+300|0;c=A+296|0;f=0;n=l;A:while(1){if(f){f=1;break}f=s3(n,a[t>>2]|0,s)|0;if(!f){f=0;break}n=s3(f,a[c>>2]|0,b)|0;l=(n|0)!=0;if(l)f=s3(0,a[c>>2]|0,b)|0;else f=0;switch(((f|0)!=0&1)+(l&1)&3){case 2:{n=pM(A,n,0)|0;f=pM(A,f,i)|0;l=(n|0)>(f|0);f=(f&n|0)>-1&(((l?n:f)|0)>=(e|0)&((l?f:n)|0)<=(e|0));n=0;continue A}case 1:{f=(pM(A,n,e)|0)==(e|0);n=0;continue A}default:{f=0;n=0;continue A}}}wo(u);k=w;return f|0}function pM(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0;l=r[e>>0]|0;if(!(l<<24>>24==97?(A1(e,100396)|0)==0:0))f=3;A:do{if((f|0)==3){if((NM(e)|0)<<24>>24){i=q3(e)|0;break}n=a[A+308>>2]|0;if(!n)i=-1;else{A=a[A+312>>2]|0;i=1;while(1){if((i|0)>(A|0)){i=-1;break A}f=a[n+(i<<2)>>2]|0;if(l<<24>>24==(r[f>>0]|0)?(A1(e,f)|0)==0:0)break A;i=i+1|0}}}}while(0);return i|0}function NM(A){A=A|0;var e=0;while(1){e=r[A>>0]|0;if(!(e<<24>>24)){A=1;break}if(((e&255)+-48|0)>>>0<10)A=A+1|0;else{A=0;break}}return A|0}function RM(A,e){A=A|0;e=e|0;if((+s[A+16>>3]>=+s[e>>3]?+s[e+16>>3]>=+s[A>>3]:0)?+s[A+24>>3]>=+s[e+8>>3]:0)A=+s[e+24>>3]>=+s[A+8>>3]&1;else A=0;return A|0}function XM(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0;A:do{if((a[A+156>>2]|0)>=2?(f=dR(i,a[47167]|0,195059)|0,(VM(A,f)|0)<<24>>24==0):0)if(!(r[f>>0]|0))if(!(Ah(e,i)|0))f=1;else{f=Ah(e,i)|0;while(1){if(!f){f=0;break A}n=dR(f,a[47190]|0,195059)|0;if(!(r[n>>0]|0)){f=1;break A}if((VM(A,n)|0)<<24>>24){f=1;break A}f=eh(e,f,i)|0}}else f=0;else f=1}while(0);return f|0}function HM(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=k;k=k+64|0;r=i+32|0;f=i;A=(a[A+16>>2]|0)+48|0;a[f>>2]=a[A>>2];a[f+4>>2]=a[A+4>>2];a[f+8>>2]=a[A+8>>2];a[f+12>>2]=a[A+12>>2];a[f+16>>2]=a[A+16>>2];a[f+20>>2]=a[A+20>>2];a[f+24>>2]=a[A+24>>2];a[f+28>>2]=a[A+28>>2];a[r>>2]=a[e>>2];a[r+4>>2]=a[e+4>>2];a[r+8>>2]=a[e+8>>2];a[r+12>>2]=a[e+12>>2];a[r+16>>2]=a[e+16>>2];a[r+20>>2]=a[e+20>>2];a[r+24>>2]=a[e+24>>2];a[r+28>>2]=a[e+28>>2];e=(RM(f,r)|0)&255;k=i;return e|0}function UM(A,e){A=A|0;e=e|0;var i=0.0,r=0,n=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0.0,d=0,B=0,g=0,v=0.0,E=0.0;d=a[A+152>>2]|0;B=AI(A)|0;a[B+4>>2]=2;a[B+8>>2]=e;a[B+12>>2]=8;if(d&16777216|0){if((l[(a[(Id(e)|0)+16>>2]|0)+178>>1]|0)>2){i=+s[(a[(a[e+16>>2]|0)+132>>2]|0)+16>>3]*72.0;i=+(~~(i+(i>=0.0?.5:-.5))|0)}else i=0.0;s[B+168>>3]=i}c=e+16|0;TM(A,a[(a[c>>2]|0)+104>>2]|0,e);do{if(d&4259840|0){if((a[B+208>>2]|0)==0?(f[B+260>>1]&1)==0:0)break;o=bp(e)|0;b=a[c>>2]|0;i=+s[b+16>>3];h=+s[b+24>>3];b=jM(e)|0;A:do{if((o|2|0)==3){w=a[(a[c>>2]|0)+12>>2]|0;if(!((PM(w)|0)<<24>>24))r=0;else r=(a[w+4>>2]|b|0)!=0;if(!((d&524288|0)==0|((w|0)==0|r))){n=w+8|0;k=a[n>>2]|0;k=(k|0)<3?1:k;t=w+4|0;u=a[t>>2]|0;u=(u|0)>1?u:1;o=a[w+44>>2]|0;r=Ho(e,102705)|0;if(!r)r=0;else r=q3(r)|0;r=(r+-4|0)>>>0>56?20:r;if(!(a[t>>2]|b)){a[B+264>>2]=0;n=qF(32)|0;r=a[c>>2]|0;E=+s[r+88>>3];s[n>>3]=i-E;v=+s[r+80>>3]*.5;s[n+8>>3]=h-v;s[n+16>>3]=E+i;s[n+24>>3]=v+h;r=2;break}n=a[n>>2]|0;if(((n|0)<3?+s[w+32>>3]==0.0:0)?+s[w+24>>3]==0.0:0){n=B+264|0;if(a[w>>2]|0){a[n>>2]=1;n=qF(32)|0;s[n>>3]=i;s[n+8>>3]=h;r=(u<<1)+-1|0;s[n+16>>3]=+s[o+(r<<4)>>3]+i;s[n+24>>3]=+s[o+(r<<4)+8>>3]+h;r=2;break}a[n>>2]=2;n=(u<<1)+-1|0;n=SM(+s[o+(n<<4)>>3],+s[o+(n<<4)+8>>3],r)|0;t=0;while(1){if((t|0)>=(r|0))break A;o=n+(t<<4)|0;s[o>>3]=+s[o>>3]+i;o=n+(t<<4)+8|0;s[o>>3]=+s[o>>3]+h;t=t+1|0}}u=U(n,u+-1|0)|0;a[B+264>>2]=2;if((n|0)<(r|0)){n=qF(k<<4)|0;r=0;while(1){if((r|0)>=(k|0)){r=k;break A}w=r+u|0;s[n+(r<<4)>>3]=+s[o+(w<<4)>>3]+i;s[n+(r<<4)+8>>3]=+s[o+(w<<4)+8>>3]+h;r=r+1|0}}else{b=(n|0)/(r|0)|0;n=qF(r<<4)|0;t=0;c=0;while(1){if((t|0)>=(r|0))break A;k=c+u|0;s[n+(t<<4)>>3]=+s[o+(k<<4)>>3]+i;s[n+(t<<4)+8>>3]=+s[o+(k<<4)+8>>3]+h;t=t+1|0;c=c+b|0}}}else g=31}else g=31}while(0);if((g|0)==31){a[B+264>>2]=0;n=qF(32)|0;r=a[c>>2]|0;s[n>>3]=i-+s[r+88>>3];E=+s[r+80>>3]*.5;s[n+8>>3]=h-E;s[n+16>>3]=+s[r+96>>3]+i;s[n+24>>3]=E+h;r=2}if(!(d&8192))zi(A,n,n,r)|0;a[B+272>>2]=n;a[B+268>>2]=r}}while(0);mf(Ho(e,100032)|0);xi(A,e);return}function xM(A){A=A|0;Ti(A);eI(A);return}function TM(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0;b=k;k=k+144|0;c=b;f=Ho(i,141055)|0;t=Ho(i,141101)|0;s=Ho(i,141088)|0;co(c,128,b+16|0);if(!e)l=0;else l=a[e>>2]|0;if(!((f|0)!=0?(r[f>>0]|0)!=0:0))f=Ho(i,111477)|0;n=rI(A,i,c)|0;if(!t)e=0;else e=mM(t,i)|0;iI(A,l,f,e,s,n,i)|0;L2(e);wo(c);k=b;return}function jM(A){A=A|0;var e=0,i=0;A=BR(A,a[47157]|0,195059)|0;A:do{if(!(r[A>>0]|0))A=0;else{XI(A)|0;A=0;e=188228;while(1){i=a[e>>2]|0;if(!i)break A;i=(A1(i,111101)|0)==0;A=i?1:A;e=e+4|0}}}while(0);return A|0}function PM(A){A=A|0;var e=0.0;if(((a[A+8>>2]|0)==4?(e=+s[A+16>>3],((~~(e+(e>=0.0?.5:-.5))|0)%90|0|0)==0):0)?+s[A+24>>3]==0.0:0)A=+s[A+32>>3]==0.0&1;else A=0;return A|0}function SM(A,e,i){A=+A;e=+e;i=i|0;var r=0.0,f=0,a=0.0,n=0;a=6.283185307179586/+(i|0);n=qF(i<<4)|0;r=0.0;f=0;while(1){if((f|0)>=(i|0))break;s[n+(f<<4)>>3]=+D(+r)*A;s[n+(f<<4)+8>>3]=+M(+r)*e;r=r+a;f=f+1|0}return n|0}function OM(A,e){A=A|0;e=e|0;var i=0;A:do{if((a[A+156>>2]|0)>=2?(i=dR(e,Yo(e,0,101510,0)|0,195059)|0,(VM(A,i)|0)<<24>>24==0):0)if(!(r[i>>0]|0)){i=cd(e)|0;while(1){if(!i){i=0;break A}if((XM(A,e,i)|0)<<24>>24){i=1;break A}i=sd(e,i)|0}}else i=0;else i=1}while(0);return i|0}function KM(A,e){A=A|0;e=e|0;var i=0;i=AI(A)|0;a[i+4>>2]=1;a[i+8>>2]=e;a[i+12>>2]=1;TM(A,a[(a[e+16>>2]|0)+12>>2]|0,e);pi(A,e);return}function _M(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0;A=Ho(A,141082)|0;A:do{if((A|0)!=0?(r[A>>0]|0)!=0:0){XI(A)|0;i=188228;A=0;while(1){while(1){f=a[i>>2]|0;if(!f){i=188228;break A}if(!(A1(f,111101)|0)){n=10;break}if(!(A1(f,106334)|0)){f=i;n=12;break}if(!(A1(f,106341)|0)){f=i;n=14;break}if(!(A1(f,106316)|0)){f=i;n=16;break}i=i+4|0}if((n|0)==10){i=i+4|0;A=A|1;continue}else if((n|0)==12){while(1){l=f;f=f+4|0;n=a[f>>2]|0;a[l>>2]=n;if(!n)break;else n=12}A=A|3;continue}else if((n|0)==14){while(1){n=f;f=f+4|0;l=a[f>>2]|0;a[n>>2]=l;if(!l)break;else n=14}A=A|64;continue}else if((n|0)==16){while(1){n=f;f=f+4|0;l=a[f>>2]|0;a[n>>2]=l;if(!l)break;else n=16}A=A|4;continue}}}else{i=0;A=0}}while(0);a[e>>2]=A;return i|0}function qM(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,s=0,b=0;s=k;k=k+16|0;l=s;t=s+4|0;a[t>>2]=0;b=(nI(A,0,t)|0)==0;t=a[t>>2]|0;if((b?(f=a[t>>2]|0,(f|0)>=2):0)?(n=t+8|0,(a[a[n>>2]>>2]|0)!=0):0){if((f|0)>2)ao(0,100415,l)|0;b=$F((P2(A)|0)+1|0)|0;a[e>>2]=b;$1(b,a[a[n>>2]>>2]|0)|0;if(!(a[(a[n>>2]|0)+12>>2]|0))a[e+4>>2]=0;else{b=a[e>>2]|0;b=b+((P2(b)|0)+1)|0;a[e+4>>2]=b;$1(b,a[(a[n>>2]|0)+12>>2]|0)|0}A=a[n>>2]|0;do{if(!(r[A+8>>0]|0))if(!(r[A+20>>0]|0)){c[i>>2]=0.0;break}else{c[i>>2]=1.0-+c[A+16>>2];break}else a[i>>2]=a[A+4>>2]}while(0);lI(t);A=1}else{a[e>>2]=0;lI(t);A=0}k=s;return A|0}function $M(A,e){A=A|0;e=e|0;Ni(A,e);eI(A);return}function AF(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0.0,b=0.0,u=0,w=0.0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0;I=k;k=k+96|0;o=I+48|0;B=I+16|0;C=I+8|0;E=I;g=I+80|0;a[g>>2]=1e3;f=$F(16e3)|0;v=A+256|0;r=1;l=1;n=0;h=0;d=a[e+8>>2]|0;while(1){if((h|0)>=(a[e>>2]|0))break;i=a[d>>2]|0;A:do{switch(i|0){case 1:case 0:{u=d+80|0;a[B>>2]=a[u>>2];a[B+4>>2]=a[u+4>>2];a[B+8>>2]=a[u+8>>2];a[B+12>>2]=a[u+12>>2];a[B+16>>2]=a[u+16>>2];a[B+20>>2]=a[u+20>>2];a[B+24>>2]=a[u+24>>2];a[B+28>>2]=a[u+28>>2];a[o>>2]=a[v>>2];a[o+4>>2]=a[v+4>>2];a[o+8>>2]=a[v+8>>2];a[o+12>>2]=a[v+12>>2];a[o+16>>2]=a[v+16>>2];a[o+20>>2]=a[v+20>>2];a[o+24>>2]=a[v+24>>2];a[o+28>>2]=a[v+28>>2];if(!(RM(B,o)|0))i=l;else{G=d+8|0;m=d+24|0;s[f>>3]=+s[G>>3]-+s[m>>3];u=d+16|0;Z=d+32|0;s[f+8>>3]=+s[u>>3]-+s[Z>>3];s[f+16>>3]=+s[m>>3]+ +s[G>>3];s[f+24>>3]=+s[Z>>3]+ +s[u>>3];fr(A,f,2,(i|0)==0?l:0);i=l}break}case 3:case 2:{m=d+80|0;a[B>>2]=a[m>>2];a[B+4>>2]=a[m+4>>2];a[B+8>>2]=a[m+8>>2];a[B+12>>2]=a[m+12>>2];a[B+16>>2]=a[m+16>>2];a[B+20>>2]=a[m+20>>2];a[B+24>>2]=a[m+24>>2];a[B+28>>2]=a[m+28>>2];a[o>>2]=a[v>>2];a[o+4>>2]=a[v+4>>2];a[o+8>>2]=a[v+8>>2];a[o+12>>2]=a[v+12>>2];a[o+16>>2]=a[v+16>>2];a[o+20>>2]=a[v+20>>2];a[o+24>>2]=a[v+24>>2];a[o+28>>2]=a[v+28>>2];if(!(RM(B,o)|0))i=l;else{i=d+8|0;f=eF(f,g,a[i+4>>2]|0,a[i>>2]|0)|0;ar(A,f,a[i>>2]|0,(a[d>>2]|0)==2?l:0);i=l}break}case 5:case 4:{m=d+80|0;a[B>>2]=a[m>>2];a[B+4>>2]=a[m+4>>2];a[B+8>>2]=a[m+8>>2];a[B+12>>2]=a[m+12>>2];a[B+16>>2]=a[m+16>>2];a[B+20>>2]=a[m+20>>2];a[B+24>>2]=a[m+24>>2];a[B+28>>2]=a[m+28>>2];a[o>>2]=a[v>>2];a[o+4>>2]=a[v+4>>2];a[o+8>>2]=a[v+8>>2];a[o+12>>2]=a[v+12>>2];a[o+16>>2]=a[v+16>>2];a[o+20>>2]=a[v+20>>2];a[o+24>>2]=a[v+24>>2];a[o+28>>2]=a[v+28>>2];if(!(RM(B,o)|0))i=l;else{i=d+8|0;f=eF(f,g,a[i+4>>2]|0,a[i>>2]|0)|0;lr(A,f,a[i>>2]|0,0,0,(a[d>>2]|0)==4?l&255:0);i=l}break}case 6:{m=d+80|0;a[B>>2]=a[m>>2];a[B+4>>2]=a[m+4>>2];a[B+8>>2]=a[m+8>>2];a[B+12>>2]=a[m+12>>2];a[B+16>>2]=a[m+16>>2];a[B+20>>2]=a[m+20>>2];a[B+24>>2]=a[m+24>>2];a[B+28>>2]=a[m+28>>2];a[o>>2]=a[v>>2];a[o+4>>2]=a[v+4>>2];a[o+8>>2]=a[v+8>>2];a[o+12>>2]=a[v+12>>2];a[o+16>>2]=a[v+16>>2];a[o+20>>2]=a[v+20>>2];a[o+24>>2]=a[v+24>>2];a[o+28>>2]=a[v+28>>2];if(!(RM(B,o)|0))i=l;else{i=d+8|0;f=eF(f,g,a[i+4>>2]|0,a[i>>2]|0)|0;tr(A,f,a[i>>2]|0);i=l}break}case 7:{m=d+80|0;a[B>>2]=a[m>>2];a[B+4>>2]=a[m+4>>2];a[B+8>>2]=a[m+8>>2];a[B+12>>2]=a[m+12>>2];a[B+16>>2]=a[m+16>>2];a[B+20>>2]=a[m+20>>2];a[B+24>>2]=a[m+24>>2];a[B+28>>2]=a[m+28>>2];a[o>>2]=a[v>>2];a[o+4>>2]=a[v+4>>2];a[o+8>>2]=a[v+8>>2];a[o+12>>2]=a[v+12>>2];a[o+16>>2]=a[v+16>>2];a[o+20>>2]=a[v+20>>2];a[o+24>>2]=a[v+24>>2];a[o+28>>2]=a[v+28>>2];if(!(RM(B,o)|0))i=l;else{s[f>>3]=+s[d+8>>3];s[f+8>>3]=+s[d+16>>3];i=a[d+112>>2]|0;a[o>>2]=a[f>>2];a[o+4>>2]=a[f+4>>2];a[o+8>>2]=a[f+8>>2];a[o+12>>2]=a[f+12>>2];qi(A,o,i);i=l}break}case 8:{er(A,a[d+8>>2]|0);i=1;break}case 9:{$i(A,a[d+8>>2]|0);i=1;break}case 13:{if((a[d+8>>2]|0)!=2){i=d+16|0;G=a[i+36>>2]|0;m=a[G+12>>2]|0;w=+c[G+8>>2];i=~~(+N(+(+s[d+40>>3]-+s[d+24>>3]),+(+s[d+32>>3]-+s[i>>3]))*57.29577951308232);er(A,a[G+4>>2]|0);ir(A,m,i,w);i=2;break A}m=a[d+68>>2]|0;l=a[m+4>>2]|0;u=a[m+12>>2]|0;w=+c[m+8>>2];t=+s[d+40>>3];b=+s[d+16>>3];if(t==b?+s[d+48>>3]==+s[d+24>>3]:0)i=0;else i=~~(+V(+((b-t)/+s[d+32>>3]))*57.29577951308232);er(A,l);ir(A,u,i,w);i=3;break}case 14:{ao(0,100481,E)|0;i=l;break}case 12:{if(!r){r=0;i=l}else{ao(0,100521,C)|0;r=0;i=l}break}case 11:{XI(a[d+8>>2]|0)|0;rr(A,188228);n=188228;i=l;break}default:i=l}}while(0);l=i;h=h+1|0;d=d+120|0}if(n|0)rr(A,a[(a[A>>2]|0)+336>>2]|0);L2(f);k=I;return}function eF(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0;n=a[e>>2]|0;f=n<<1;f=(f|0)>(r|0)?f:r;if((n|0)<(r|0)){A=eV(A,f<<4)|0;a[e>>2]=f}e=0;while(1){if((e|0)>=(r|0))break;s[A+(e<<4)>>3]=+s[i+(e*24|0)>>3];s[A+(e<<4)+8>>3]=+s[i+(e*24|0)+8>>3];e=e+1|0}return A|0}function iF(A,e){A=A|0;e=e|0;var i=0;i=a[e>>2]|0;a[A>>2]=a[e+4>>2];a[A+4>>2]=i;return}function rF(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;n=e+16|0;f=1;while(1){e=a[n>>2]|0;if((f|0)>(a[e+180>>2]|0))break;i=a[(a[e+184>>2]|0)+(f<<2)>>2]|0;rF(A,i);e=Ho(i,140823)|0;if(e|0?r[e>>0]|0:0)$i(A,e);e=Ho(i,137729)|0;if(e|0?r[e>>0]|0:0)$i(A,e);e=Ho(i,140977)|0;if(e|0?r[e>>0]|0:0)$i(A,e);e=Ho(i,101418)|0;if(e|0?r[e>>0]|0:0)er(A,e);e=Ho(i,101446)|0;if(e|0?r[e>>0]|0:0)$i(A,e);f=f+1|0}return}function fF(A){A=A|0;var e=0,i=0,r=0;e=a[47127]|0;if(!e){e=jk(20628,a[4581]|0)|0;a[47127]=e}if(!(y5[a[e>>2]&63](e,A,4)|0)){i=a[47127]|0;r=a[i>>2]|0;e=b3(A)|0;y5[r&63](i,e,1)|0;e=1}else e=0;return e|0}function aF(A,e,i){A=A|0;e=e|0;i=i|0;L2(e);return}function nF(A){A=A|0;var e=0;e=a[47128]|0;if(!A){if((e|0)>0?(e=e+-1|0,a[47128]=e,(e|0)==0):0){D4(1,a[47129]|0)|0;L2(a[47129]|0)}}else{a[47128]=e+1;if(!e){a[47129]=b3(D4(1,0)|0)|0;D4(1,153563)|0}}return}function lF(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0.0;v=k;k=k+96|0;d=v+72|0;h=v+56|0;o=v+48|0;g=v+32|0;B=v+24|0;r=v+8|0;i=v;if(0){}do{if((Td(e,137483,0,1)|0)!=0?(w=e+16|0,(a[(a[w>>2]|0)+8>>2]|0)!=0):0){tF(e);cF(A,e);sF(A,e);nF(1);t=A+56|0;c=A+184|0;b=A+192|0;u=A+28|0;l=Wv(A)|0;A:while(1){if(!l){n=33;break}i=a[t>>2]|0;if(!i){a[l+20>>2]=0;i=0}else{a[l+20>>2]=a[i+8>>2];i=a[i+12>>2]|0}a[l+24>>2]=i;a[l+12>>2]=A;a[l+28>>2]=a[c>>2];a[l+620>>2]=25764;a[l+624>>2]=14;if(!(a[(a[w>>2]|0)+8>>2]|0)){n=13;break}r=l+52|0;n=Qi(l,a[r>>2]|0)|0;a[l+56>>2]=n;switch(n|0){case 999:{n=16;break A}case 21:{i=1;break}case 24:{i=520;break}default:i=bF(e)|0}f=l+152|0;a[f>>2]=a[f>>2]|i;i=a[b>>2]|0;do{if(!i)n=24;else{if(a[i+152>>2]&32|0?(A1(a[r>>2]|0,a[i+52>>2]|0)|0)==0:0){i=a[47130]|0;if(!i){n=27;break}a[i+8>>2]=l;a[l+36>>2]=a[i+36>>2];n=29;break}yi(i);a[b>>2]=0;a[u>>2]=0;n=24}}while(0);if((n|0)==24){a[47130]=0;n=27}if((n|0)==27?(n=0,(Li(l)|0)==0):0){a[b>>2]=l;n=29}if((n|0)==29){a[l+8>>2]=0;a[l+104>>2]=25876;uF(l);wF(l);kF(l,e);oF(l,e);hF(l,e);if(!(a[f>>2]&128))BI(l,e);a[47130]=l}l=zv(A)|0}if((n|0)==13){ao(1,100679,B)|0;nF(0);if(true){i=-1;break}i=a[15712]|0;B=Vh(e)|0;E=+cR();a[g>>2]=B;s[g+8>>3]=E;f3(i,100650,g)|0;i=-1;break}else if((n|0)==16){a[o>>2]=a[r>>2];ao(1,100700,o)|0;nF(0);if(true){i=-1;break}i=a[15712]|0;g=Vh(e)|0;E=+cR();a[h>>2]=g;s[h+8>>3]=E;f3(i,100650,h)|0;i=-1;break}else if((n|0)==33){nF(0);if(true){i=0;break}i=a[15712]|0;g=Vh(e)|0;E=+cR();a[d>>2]=g;s[d+8>>3]=E;f3(i,100650,d)|0;i=0;break}}else n=5}while(0);if((n|0)==5){ao(1,100602,i)|0;if(true)i=-1;else{}}k=v;return i|0}function tF(A){A=A|0;var e=0;e=cd(A)|0;while(1){if(!e)break;EF(A,e);e=sd(A,e)|0}return}function cF(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0.0;w=k;k=k+32|0;c=w+24|0;f=w+16|0;t=w+8|0;u=w;a[A+168>>2]=e;n=A+293|0;r[n>>0]=0;i=Ho(e,105496)|0;if(i|0?(a[f>>2]=t,a[f+4>>2]=u,l=J3(i,105503,f)|0,(l|0)>0):0){o=+s[t>>3]*72.0;i=A+208|0;s[i>>3]=o;s[A+200>>3]=o;if((l|0)!=1)s[i>>3]=+s[u>>3]*72.0;r[n>>0]=1}f=A+292|0;r[f>>0]=0;i=Ho(e,101102)|0;if(i|0?(a[c>>2]=t,a[c+4>>2]=u,b=J3(i,105503,c)|0,(b|0)>0):0){o=+s[t>>3]*72.0;i=A+224|0;s[i>>3]=o;s[A+216>>3]=o;if((b|0)!=1)s[i>>3]=+s[u>>3]*72.0;r[f>>0]=1}i=A+294|0;r[i>>0]=0;f=A+232|0;n=e+16|0;u=(a[(a[n>>2]|0)+8>>2]|0)+48|0;a[f>>2]=a[u>>2];a[f+4>>2]=a[u+4>>2];a[f+8>>2]=a[u+8>>2];a[f+12>>2]=a[u+12>>2];f=a[(a[n>>2]|0)+8>>2]|0;if(+s[f+48>>3]>.001?+s[f+56>>3]>.001:0)r[i>>0]=1;a[A+288>>2]=r[f+81>>0]|0?90:0;i=A+196|0;a[i>>2]=101106;f=Ho(e,101109)|0;if(f|0?r[f>>0]|0:0)a[i>>2]=f;u=A+256|0;b=(a[n>>2]|0)+16|0;a[u>>2]=a[b>>2];a[u+4>>2]=a[b+4>>2];a[u+8>>2]=a[b+8>>2];a[u+12>>2]=a[b+12>>2];a[u+16>>2]=a[b+16>>2];a[u+20>>2]=a[b+20>>2];a[u+24>>2]=a[b+24>>2];a[u+28>>2]=a[b+28>>2];a[47141]=Yo(e,0,101472,0)|0;a[47142]=Yo(e,0,101463,0)|0;a[A+320>>2]=BR(0,a[47151]|0,107994)|0;s[A+328>>3]=+oR(0,a[47150]|0,14.0,1.0);a[A+336>>2]=20664;a[A+188>>2]=Vh(e)|0;k=w;return}function sF(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;i=A+304|0;f=a[i>>2]|0;if(f|0){L2(f);a[i>>2]=0}f=A+308|0;i=a[f>>2]|0;if(i|0){L2(i);a[f>>2]=0}n=A+316|0;i=a[n>>2]|0;if(i|0){L2(i);a[n>>2]=0}i=Ho(e,100853)|0;if(i){a[A+312>>2]=gF(A,e,i)|0;i=Ho(e,100860)|0;if(i|0?r[i>>0]|0:0)a[n>>2]=vF(A,i)|0}else{a[f>>2]=0;a[A+312>>2]=1}return}function bF(A){A=A|0;A=Ho(A,100821)|0;A:do{if(!A)A=0;else switch(r[A>>0]|0){case 110:{if(!(A1(A+1|0,100833)|0))A=1;else{A=0;break A}break}case 101:{if(!(A1(A+1|0,100843)|0))A=16;else{A=0;break A}break}default:{A=0;break A}}}while(0);return A|0}function uF(A){A=A|0;var e=0.0,i=0;i=a[A>>2]|0;if(!(r[i+292>>0]|0)){if((a[A+56>>2]|0)==300)e=+s[(a[A+68>>2]|0)+8>>3];else e=4.0;s[A+248>>3]=e;s[A+240>>3]=e}else{A=A+240|0;i=i+216|0;a[A>>2]=a[i>>2];a[A+4>>2]=a[i+4>>2];a[A+8>>2]=a[i+8>>2];a[A+12>>2]=a[i+12>>2]}return}function wF(A){A=A|0;var e=0;e=a[A>>2]|0;A:do{if(!(r[e+293>>0]|0))switch(a[A+56>>2]|0){case 300:{e=A+416|0;A=(a[A+84>>2]|0)+8|0;a[e>>2]=a[A>>2];a[e+4>>2]=a[A+4>>2];a[e+8>>2]=a[A+8>>2];a[e+12>>2]=a[A+12>>2];break A}case 30:case 21:case 22:case 4:case 3:case 2:{s[A+424>>3]=36.0;s[A+416>>3]=36.0;break A}default:{e=A+416|0;a[e>>2]=0;a[e+4>>2]=0;a[e+8>>2]=0;a[e+12>>2]=0;break A}}else{A=A+416|0;e=e+200|0;a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2]}}while(0);return}function kF(A,e){A=A|0;e=e|0;var i=0.0,f=0;f=a[(a[A>>2]|0)+192>>2]|0;i=+s[(a[(a[e+16>>2]|0)+8>>2]|0)+24>>3];do{if(!(i!=0.0)){if(f|0?r[f+128>>0]|0:0){A=A+432|0;f=f+112|0;a[A>>2]=a[f>>2];a[A+4>>2]=a[f+4>>2];a[A+8>>2]=a[f+8>>2];a[A+12>>2]=a[f+12>>2];break}e=A+432|0;if((a[A+56>>2]|0)==300){A=(a[A+84>>2]|0)+40|0;a[e>>2]=a[A>>2];a[e+4>>2]=a[A+4>>2];a[e+8>>2]=a[A+8>>2];a[e+12>>2]=a[A+12>>2];break}else{s[A+440>>3]=96.0;s[e>>3]=96.0;break}}else{s[A+440>>3]=i;s[A+432>>3]=i}}while(0);return}function oF(A,e){A=A|0;e=e|0;var i=0.0,f=0.0,n=0,l=0.0,t=0.0,c=0.0,b=0,u=0,w=0.0,o=0.0,h=0.0,d=0.0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0;m=k;k=k+112|0;g=m+80|0;v=m+56|0;B=m+40|0;E=m+32|0;C=m+24|0;I=m+16|0;Z=m+8|0;G=m;b=a[A>>2]|0;w=+s[b+272>>3];h=+s[b+280>>3];o=+s[b+256>>3];d=+s[b+264>>3];f=+s[A+240>>3];i=o-f;s[A+208>>3]=i;l=+s[A+248>>3];t=d-l;s[A+216>>3]=t;f=f+w;s[A+224>>3]=f;l=l+h;s[A+232>>3]=l;i=f-i;t=l-t;s[I>>3]=1.0;n=a[(a[e+16>>2]|0)+8>>2]|0;l=+s[n+64>>3];do{if(l>.001?(c=+s[n+72>>3],c>.001):0){i=i==0.0?l:i;f=t==0.0?c:t;if(!(lf&(l>i&(r[n+80>>0]|0)!=0)):0){c=i;t=f;l=1.0;break}u=l/i >3]=l;c=i;t=f}else{c=i;l=1.0}}while(0);f=(o+w)*.5;s[Z>>3]=f;i=(d+h)*.5;s[G>>3]=i;a[A+360>>2]=a[b+288>>2];c=l*c;s[E>>3]=c;t=l*t;s[C>>3]=t;n=Ho(e,100752)|0;if(n){b=Q2((P2(n)|0)+1|0)|0;u=Q2((P2(n)|0)+1|0)|0;a[B>>2]=E;a[B+4>>2]=C;a[B+8>>2]=I;a[B+12>>2]=b;do{if((J3(n,100761,B)|0)==4){n=gd(a[e+60>>2]|0,b,0)|0;if(n|0){v=a[n+16>>2]|0;s[Z>>3]=+s[v+16>>3];s[G>>3]=+s[v+24>>3]}}else{a[v>>2]=E;a[v+4>>2]=C;a[v+8>>2]=I;a[v+12>>2]=b;a[v+16>>2]=u;if((J3(n,100781,v)|0)!=4){a[g>>2]=E;a[g+4>>2]=C;a[g+8>>2]=I;a[g+12>>2]=Z;a[g+16>>2]=G;J3(n,100801,g)|0;break}n=gd(a[e+60>>2]|0,b,0)|0;if(n|0){v=a[n+16>>2]|0;s[Z>>3]=+s[v+16>>3];s[G>>3]=+s[v+24>>3]}}}while(0);L2(b);L2(u);c=+s[E>>3];t=+s[C>>3];l=+s[I>>3];f=+s[Z>>3];i=+s[G>>3]}s[A+368>>3]=c;s[A+376>>3]=t;s[A+352>>3]=l;s[A+336>>3]=f;s[A+344>>3]=i;k=m;return}function hF(A,e){A=A|0;e=e|0;var i=0,f=0,n=0.0,l=0.0,t=0,c=0.0,b=0.0,u=0.0,w=0.0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0.0,R=0.0,X=0.0;p=k;k=k+224|0;F=p+200|0;G=p+168|0;W=p+144|0;M=p+120|0;z=p+96|0;Y=p+64|0;i=p+184|0;E=p+176|0;C=p+160|0;Z=p+136|0;I=p+112|0;m=p+80|0;Q=p+48|0;L=p+32|0;y=p+16|0;V=p+8|0;J=p;v=a[A>>2]|0;a[Y>>2]=0;a[Y+4>>2]=0;a[Y+8>>2]=0;a[Y+12>>2]=0;D=A+368|0;a[M>>2]=a[D>>2];a[M+4>>2]=a[D+4>>2];a[M+8>>2]=a[D+8>>2];a[M+12>>2]=a[D+12>>2];D=A+360|0;if(a[D>>2]|0){a[F>>2]=a[M>>2];a[F+4>>2]=a[M+4>>2];a[F+8>>2]=a[M+8>>2];a[F+12>>2]=a[M+12>>2];dF(i,F);a[M>>2]=a[i>>2];a[M+4>>2]=a[i+4>>2];a[M+8>>2]=a[i+8>>2];a[M+12>>2]=a[i+12>>2]}g=A+416|0;a[z>>2]=a[g>>2];a[z+4>>2]=a[g+4>>2];a[z+8>>2]=a[g+8>>2];a[z+12>>2]=a[g+12>>2];if((r[v+294>>0]|0)!=0?(a[A+152>>2]&32|0)!=0:0){l=+s[v+232>>3]-+s[z>>3]*2.0;s[W>>3]=l;c=+s[v+240>>3]-+s[z+8>>3]*2.0;o=W+8|0;s[o>>3]=c;if(!(l<.0001)){w=+s[M>>3];i=~~(w/l);f=A+164|0;a[f>>2]=i;if(w-l*+(i|0)>.0001){i=i+1|0;a[f>>2]=i}}else{a[A+164>>2]=1;i=1}if(!(c<.0001)){n=+s[M+8>>3];f=~~(n/c);t=A+168|0;a[t>>2]=f;if(n-c*+(f|0)>.0001){f=f+1|0;a[t>>2]=f}}else{a[A+168>>2]=1;f=1;n=+s[M+8>>3]}a[A+204>>2]=U(f,i)|0;w=+s[(+s[M>>3] >3];s[M>>3]=w;i=o;f=M;b=+s[(n >3];n=w;t=21}else{if(a[A+68>>2]|0){i=a[A+84>>2]|0;l=+s[i+24>>3]-+s[z>>3]*2.0;l=l<0.0?0.0:l;s[W>>3]=l;w=+s[i+32>>3]-+s[z+8>>3]*2.0;i=W+8|0;s[i>>3]=w;if(w<0.0){f=W;t=17}else i=W}else{s[W+8>>3]=0.0;f=W;i=W;t=17}if((t|0)==17){s[i>>3]=0.0;i=f;l=+s[f>>3]}a[A+204>>2]=1;a[A+168>>2]=1;a[A+164>>2]=1;n=+s[M>>3];if(l >3]=n;l=n}i=W+8|0;c=+s[i>>3];b=+s[M+8>>3];if(c>3]=b;d=i;b=+s[i>>3]}u=+s[z>>3];B=A+432|0;c=+s[B>>3]*.013888888888888888*(u*2.0+l);a[A+448>>2]=~~(c+(c>=0.0?.5:-.5));h=z+8|0;c=+s[h>>3];g=A+440|0;w=+s[g>>3]*.013888888888888888*(c*2.0+b);a[A+452>>2]=~~(w+(w>=0.0?.5:-.5));t=A+188|0;o=A+180|0;i=A+172|0;f=v+196|0;a[i>>2]=0;a[i+4>>2]=0;a[i+8>>2]=0;a[i+12>>2]=0;a[i+16>>2]=0;a[i+20>>2]=0;BF(E,A,r[a[f>>2]>>0]|0);v=E;E=a[v+4>>2]|0;i=o;a[i>>2]=a[v>>2];a[i+4>>2]=E;BF(C,A,r[(a[f>>2]|0)+1>>0]|0);i=C;C=a[i>>2]|0;i=a[i+4>>2]|0;E=t;a[E>>2]=C;a[E+4>>2]=i;C=(a[o>>2]|0)+C|0;if(!((((C|0)>-1?C:0-C|0)|0)==1?(C=(a[A+184>>2]|0)+i|0,(((C|0)>-1?C:0-C|0)|0)==1):0)){BF(Z,A,66);E=Z;Z=a[E+4>>2]|0;C=o;a[C>>2]=a[E>>2];a[C+4>>2]=Z;BF(I,A,76);C=I;I=a[C+4>>2]|0;Z=t;a[Z>>2]=a[C>>2];a[Z+4>>2]=I;a[G>>2]=a[f>>2];ao(0,100732,G)|0}if(r[(a[(a[e+16>>2]|0)+8>>2]|0)+82>>0]|0){if(l>n){b=(l-n)*.5;s[Y>>3]=b}else b=0.0;l=+s[d>>3];w=+s[M+8>>3];if(l>w){l=(l-w)*.5;s[Y+8>>3]=l}else l=0.0}else{l=0.0;b=0.0}if(!(a[D>>2]|0))t=1;else{a[F>>2]=a[M>>2];a[F+4>>2]=a[M+4>>2];a[F+8>>2]=a[M+8>>2];a[F+12>>2]=a[M+12>>2];dF(m,F);a[M>>2]=a[m>>2];a[M+4>>2]=a[m+4>>2];a[M+8>>2]=a[m+8>>2];a[M+12>>2]=a[m+12>>2];a[F>>2]=a[W>>2];a[F+4>>2]=a[W+4>>2];a[F+8>>2]=a[W+8>>2];a[F+12>>2]=a[W+12>>2];dF(Q,F);a[W>>2]=a[Q>>2];a[W+4>>2]=a[Q+4>>2];a[W+8>>2]=a[Q+8>>2];a[W+12>>2]=a[Q+12>>2];a[F>>2]=a[z>>2];a[F+4>>2]=a[z+4>>2];a[F+8>>2]=a[z+8>>2];a[F+12>>2]=a[z+12>>2];dF(L,F);a[z>>2]=a[L>>2];a[z+4>>2]=a[L+4>>2];a[z+8>>2]=a[L+8>>2];a[z+12>>2]=a[L+12>>2];a[F>>2]=a[Y>>2];a[F+4>>2]=a[Y+4>>2];a[F+8>>2]=a[Y+8>>2];a[F+12>>2]=a[Y+12>>2];dF(y,F);a[Y>>2]=a[y>>2];a[Y+4>>2]=a[y+4>>2];a[Y+8>>2]=a[y+8>>2];a[Y+12>>2]=a[y+12>>2];u=+s[z>>3];b=+s[Y>>3];c=+s[h>>3];l=+s[Y+8>>3];n=+s[M>>3];t=(a[D>>2]|0)==0}w=b+u;s[A+384>>3]=w;R=l+c;s[A+392>>3]=R;N=b+u+n;s[A+400>>3]=N;X=+s[M+8>>3];u=l+c+X;s[A+408>>3]=u;b=+s[A+352>>3];s[A+320>>3]=n/b;s[A+328>>3]=X/b;b=+s[B>>3];w=w*.013888888888888888*b;f=A+456|0;a[f>>2]=~~(w+(w>=0.0?.5:-.5));w=+s[g>>3];c=R*.013888888888888888*w;a[A+460>>2]=~~(c+(c>=0.0?.5:-.5));b=N*.013888888888888888*b;i=A+464|0;a[i>>2]=~~(b+(b>=0.0?.5:-.5));w=u*.013888888888888888*w;a[A+468>>2]=~~(w+(w>=0.0?.5:-.5));if(!t){a[F>>2]=a[f>>2];a[F+4>>2]=a[f+4>>2];iF(V,F);M=V;V=a[M+4>>2]|0;A=f;a[A>>2]=a[M>>2];a[A+4>>2]=V;a[F>>2]=a[i>>2];a[F+4>>2]=a[i+4>>2];iF(J,F);A=J;V=a[A+4>>2]|0;J=i;a[J>>2]=a[A>>2];a[J+4>>2]=V}k=p;return}function dF(A,e){A=A|0;e=e|0;var i=0.0;i=+s[e>>3];s[A>>3]=+s[e+8>>3];s[A+8>>3]=i;return}function BF(A,e,i){A=A|0;e=e|0;i=i|0;i=(i<<24>>24)+-66|0;switch(i>>>1|i<<31|0){case 9:{a[e+176>>2]=(a[e+168>>2]|0)+-1;e=0;i=-1;break}case 0:{e=0;i=1;break}case 5:{e=1;i=0;break}case 8:{a[e+172>>2]=(a[e+164>>2]|0)+-1;e=-1;i=0;break}default:{e=0;i=0}}a[A>>2]=e;a[A+4>>2]=i;return}function gF(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0;c=k;k=k+16|0;n=c;f=Ho(e,100973)|0;t=A+296|0;a[t>>2]=(f|0)==0?100982:f;e=Ho(e,100986)|0;f=A+300|0;e=(e|0)==0?100999:e;a[f>>2]=e;e=k3(a[t>>2]|0,e)|0;if(e|0){a[n>>2]=r[e>>0];ao(0,101001,n)|0;a[f>>2]=195059}e=b3(i)|0;a[A+304>>2]=e;l=A+308|0;f=0;A=0;while(1){i=t3(e,a[t>>2]|0)|0;if(!i)break;n=A+1|0;if((A|0)<(f|0))e=a[l>>2]|0;else{f=f+128|0;e=a[l>>2]|0;if(!e)e=$F(f<<2)|0;else e=eV(e,f<<2)|0;a[l>>2]=e}a[e+(n<<2)>>2]=i;A=n;e=0}if(A|0){t=eV(a[l>>2]|0,(A<<2)+8|0)|0;a[l>>2]=t;a[t>>2]=0;a[(a[l>>2]|0)+(A+1<<2)>>2]=0}k=c;return A|0}function vF(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+16|0;c=s;t=A+312|0;i=$F((a[t>>2]<<2)+8|0)|0;r=0;l=1;while(1){n=a[t>>2]|0;if((l|0)>(n|0))break;f=r+1|0;if((JM(A,l,n,e)|0)<<24>>24){a[i+(f<<2)>>2]=l;r=f}l=l+1|0}if(!r){a[c>>2]=e;ao(0,100872,c)|0;L2(i);i=0}else{a[i>>2]=r;a[i+(r+1<<2)>>2]=(a[t>>2]|0)+1}k=s;return i|0}function EF(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0.0,n=0.0;i=a[e+16>>2]|0;n=+s[i+16>>3];s[i+48>>3]=n-+s[i+88>>3];r=+s[i+24>>3];f=+s[i+80>>3]*.5;s[i+56>>3]=r-f;s[i+64>>3]=+s[i+96>>3]+n;s[i+72>>3]=f+r;e=Oo(A,e)|0;while(1){if(!e)break;CF(e);e=_o(A,e)|0}return}function CF(A){A=A|0;A=a[(a[A+16>>2]|0)+8>>2]|0;if(A|0)IF(A);return}function IF(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0;L=k;k=k+240|0;E=L+192|0;v=L+176|0;C=L+64|0;I=L+32|0;Z=L;G=L+144|0;m=L+112|0;Q=A+4|0;if((a[Q>>2]|0)<=0)gA(101140,99906,3994,101154);e=a[A>>2]|0;i=C;r=e;f=i+48|0;do{a[i>>2]=a[r>>2];i=i+4|0;r=r+4|0}while((i|0)<(f|0));i=E;r=e;f=i+48|0;do{a[i>>2]=a[r>>2];i=i+4|0;r=r+4|0}while((i|0)<(f|0));ZF(I,E);l=I+8|0;t=Z+8|0;c=I+16|0;b=Z+16|0;u=I+24|0;w=Z+24|0;o=C+8|0;h=C+12|0;d=C+32|0;B=C+4|0;g=C+16|0;n=0;while(1){if((n|0)>=(a[Q>>2]|0))break;if((n|0)>0){e=(a[A>>2]|0)+(n*48|0)|0;i=C;r=e;f=i+48|0;do{a[i>>2]=a[r>>2];i=i+4|0;r=r+4|0}while((i|0)<(f|0));i=E;r=e;f=i+48|0;do{a[i>>2]=a[r>>2];i=i+4|0;r=r+4|0}while((i|0)<(f|0));ZF(Z,E);s[I>>3]=+s[(+s[I>>3]<+s[Z>>3]?I:Z)>>3];s[l>>3]=+s[(+s[l>>3]<+s[t>>3]?I:Z)+8>>3];s[c>>3]=+s[(+s[c>>3]>+s[b>>3]?I:Z)+16>>3];s[u>>3]=+s[(+s[u>>3]>+s[w>>3]?I:Z)+24>>3]}e=a[o>>2]|0;if(e|0){f=a[C>>2]|0;a[v>>2]=a[g>>2];a[v+4>>2]=a[g+4>>2];a[v+8>>2]=a[g+8>>2];a[v+12>>2]=a[g+12>>2];a[E>>2]=a[f>>2];a[E+4>>2]=a[f+4>>2];a[E+8>>2]=a[f+8>>2];a[E+12>>2]=a[f+12>>2];KC(G,v,E,1.0,e);a[Z>>2]=a[G>>2];a[Z+4>>2]=a[G+4>>2];a[Z+8>>2]=a[G+8>>2];a[Z+12>>2]=a[G+12>>2];a[Z+16>>2]=a[G+16>>2];a[Z+20>>2]=a[G+20>>2];a[Z+24>>2]=a[G+24>>2];a[Z+28>>2]=a[G+28>>2];s[I>>3]=+s[(+s[I>>3]<+s[Z>>3]?I:Z)>>3];s[l>>3]=+s[(+s[l>>3]<+s[t>>3]?I:Z)+8>>3];s[c>>3]=+s[(+s[c>>3]>+s[b>>3]?I:Z)+16>>3];s[u>>3]=+s[(+s[u>>3]>+s[w>>3]?I:Z)+24>>3]}e=a[h>>2]|0;if(e|0){f=(a[C>>2]|0)+((a[B>>2]|0)+-1<<4)|0;a[v>>2]=a[d>>2];a[v+4>>2]=a[d+4>>2];a[v+8>>2]=a[d+8>>2];a[v+12>>2]=a[d+12>>2];a[E>>2]=a[f>>2];a[E+4>>2]=a[f+4>>2];a[E+8>>2]=a[f+8>>2];a[E+12>>2]=a[f+12>>2];KC(m,v,E,1.0,e);a[Z>>2]=a[m>>2];a[Z+4>>2]=a[m+4>>2];a[Z+8>>2]=a[m+8>>2];a[Z+12>>2]=a[m+12>>2];a[Z+16>>2]=a[m+16>>2];a[Z+20>>2]=a[m+20>>2];a[Z+24>>2]=a[m+24>>2];a[Z+28>>2]=a[m+28>>2];s[I>>3]=+s[(+s[I>>3]<+s[Z>>3]?I:Z)>>3];s[l>>3]=+s[(+s[l>>3]<+s[t>>3]?I:Z)+8>>3];s[c>>3]=+s[(+s[c>>3]>+s[b>>3]?I:Z)+16>>3];s[u>>3]=+s[(+s[u>>3]>+s[w>>3]?I:Z)+24>>3]}n=n+1|0}Q=A+8|0;a[Q>>2]=a[I>>2];a[Q+4>>2]=a[I+4>>2];a[Q+8>>2]=a[I+8>>2];a[Q+12>>2]=a[I+12>>2];a[Q+16>>2]=a[I+16>>2];a[Q+20>>2]=a[I+20>>2];a[Q+24>>2]=a[I+24>>2];a[Q+28>>2]=a[I+28>>2];k=L;return}function ZF(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0.0,o=0.0,h=0.0,d=0.0,B=0.0,g=0;u=k;k=k+48|0;l=u+32|0;t=u;c=a[e+4>>2]|0;if((c|0)<=0)gA(101170,99906,3968,101182);if(((c>>>0)%3|0|0)!=1)gA(101192,99906,3969,101182);b=t+16|0;i=a[e>>2]|0;a[b>>2]=a[i>>2];a[b+4>>2]=a[i+4>>2];a[b+8>>2]=a[i+8>>2];a[b+12>>2]=a[i+12>>2];a[t>>2]=a[i>>2];a[t+4>>2]=a[i+4>>2];a[t+8>>2]=a[i+8>>2];a[t+12>>2]=a[i+12>>2];r=l+8|0;f=t+8|0;n=t+24|0;e=1;while(1){if((e|0)>=(c|0))break;o=+s[i+(e<<4)+8>>3];g=e+1|0;w=+s[i+(g<<4)+8>>3];d=(+s[i+(g<<4)>>3]+ +s[i+(e<<4)>>3])*.5;s[l>>3]=d;o=(w+o)*.5;s[r>>3]=o;w=+s[(+s[t>>3] >3];s[t>>3]=w;B=+s[(+s[f>>3] >3];s[f>>3]=B;d=+s[(+s[b>>3]>d?b:l)>>3];s[b>>3]=d;o=+s[(+s[n>>3]>o?b:l)+8>>3];s[n>>3]=o;g=i+(e+2<<4)|0;a[l>>2]=a[g>>2];a[l+4>>2]=a[g+4>>2];a[l+8>>2]=a[g+8>>2];a[l+12>>2]=a[g+12>>2];h=+s[l>>3];s[t>>3]=+s[(w >3];w=+s[r>>3];s[f>>3]=+s[(B >3];s[b>>3]=+s[(d>h?b:l)>>3];s[n>>3]=+s[(o>w?b:l)+8>>3];e=e+3|0}a[A>>2]=a[t>>2];a[A+4>>2]=a[t+4>>2];a[A+8>>2]=a[t+8>>2];a[A+12>>2]=a[t+12>>2];a[A+16>>2]=a[t+16>>2];a[A+20>>2]=a[t+20>>2];a[A+24>>2]=a[t+24>>2];a[A+28>>2]=a[t+28>>2];k=u;return}function GF(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0.0,a=0.0,n=0.0,l=0,t=0.0,c=0,b=0,u=0.0,w=0.0,k=0.0,o=0.0,h=0.0,d=0.0;h=+s[A>>3];d=+s[i>>3];c=!(h>=d);if((!c?h<=+s[i+16>>3]:0)?(f=+s[A+8>>3],f>=+s[i+8>>3]):0)l=f<=+s[i+24>>3];else l=0;f=+s[e>>3];if((f>=d?f<=+s[i+16>>3]:0)?(a=+s[e+8>>3],a>=+s[i+8>>3]):0){r=a<=+s[i+24>>3];if(!(l^r))if(l&r)r=1;else b=11;else r=0}else if(l)r=0;else b=11;A:do{if((b|0)==11){o=+s[A+8>>3];do{if(h==f){d=+s[i+8>>3];if(!(c|o>=d^+s[e+8>>3]>=d^1)?h<=+s[i+16>>3]:0){r=0;break A}}else{t=+s[e+8>>3];if(o==t){if(!(h>=d^f>=d))break;if(!(o>=+s[i+8>>3]))break;if(!(o<=+s[i+24>>3]))break;else{r=0;break A}}k=(t-o)/(f-h);b=h >3];if(!(!(d>=n)|!(d<=f)|!(a>=u))?a<=+s[i+24>>3]:0){r=0;break A}w=+s[i+16>>3];a=(w-d)*k+a;if(a>=u?!(!(w<=f)|(w>=n?!(a<=+s[i+24>>3]):1)):0){r=0;break A}b=o =d?!(!(u<=a)|(!(u>=n)|!(f<=w))):0){r=0;break A}o=+s[i+24>>3];h=(o-u)/k+f;if(h>=d?!(!(o<=a)|(!(o>=n)|!(h<=w))):0){r=0;break A}}}while(0);r=-1}}while(0);return r|0}function mF(A){A=A|0;var e=0,i=0.0;e=A+16|0;i=+s[e>>3];s[A+32>>3]=i;s[A+48>>3]=i;s[A+40>>3]=+s[A+24>>3];s[A+56>>3]=+s[A+8>>3];s[e>>3]=+s[A>>3];return}function QF(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,n=0.0,l=0.0;if((a[47131]|0)!=(i|0)){E1(+(i|0)*.15915494309189535,186328,186336);a[47131]=i}n=+s[e>>3];r=+s[23292];f=+s[e+8>>3];l=+s[23291];s[A>>3]=r*n-l*f;s[A+8>>3]=l*n+f*r;return}function LF(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0,n=0.0,l=0,t=0,c=0;c=k;k=k+16|0;f=c;r=+s[e>>3];l=e+8|0;n=+s[l>>3];A:do{switch(i|0){case 0:{t=11;break}case 90:{s[e>>3]=n;r=-r;t=10;break}case 180:{r=-n;t=10;break}case 270:{s[e>>3]=n;t=10;break}default:{if((i|0)<0){a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];yF(A,f,0-i|0);break A}if((i|0)>360){a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];LF(A,f,(i>>>0)%360|0);break A}else{a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];QF(A,f,i);break A}}}}while(0);if((t|0)==10){s[l>>3]=r;t=11}if((t|0)==11){a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2]}k=c;return}function yF(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0,n=0.0,l=0,t=0,c=0;c=k;k=k+16|0;f=c;r=+s[e>>3];l=e+8|0;n=+s[l>>3];A:do{switch(i|0){case 0:{t=11;break}case 90:{s[e>>3]=-n;t=10;break}case 180:{r=-n;t=10;break}case 270:{s[e>>3]=n;t=10;break}default:{if((i|0)<0){a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];LF(A,f,0-i|0);break A}if((i|0)>360){a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];yF(A,f,(i>>>0)%360|0);break A}else{a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];QF(A,f,360-i|0);break A}}}}while(0);if((t|0)==10){s[l>>3]=r;t=11}if((t|0)==11){a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2]}k=c;return}function WF(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,a=0.0,n=0.0;n=+s[i>>3];r=+s[i+8>>3];a=r+ +s[e>>3];f=n+ +s[e+24>>3];r=r+ +s[e+16>>3];s[A>>3]=n+ +s[e+8>>3];s[A+8>>3]=a;s[A+16>>3]=f;s[A+24>>3]=r;return}function zF(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,a=0.0,n=0.0;a=+s[A>>3];r=+s[e>>3]-a;n=+s[A+8>>3];f=+s[e+8>>3]-n;a=(+s[i+8>>3]-n)*r-(+s[i>>3]-a)*f;a=a*a;return+(a<1.0e-10?0.0:a/(f*f+r*r))}function YF(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;n=k;k=k+16|0;f=n+8|0;r=n;A=Ho(A,e)|0;if(A|0?(a[f>>2]=r,(J3(A,101209,f)|0)>0):0)s[i>>3]=+s[r>>3];k=n;return}function DF(A,e){A=A|0;e=e|0;var i=0,f=0.0,n=0,l=0,t=0,c=0,b=0,u=0;u=k;k=k+16|0;n=u+8|0;l=u;i=qF(96)|0;b=A+16|0;a[(a[b>>2]|0)+8>>2]=i;i=Ho(A,101213)|0;if(!i){i=SA(101222)|0;if(i|0)c=3}else c=3;if((c|0)==3)ae(101234,i|0,1)|0;i=(MF(A)|0)&255;r[(a[b>>2]|0)+115>>0]=i;if(true?(i=Ho(A,101245)|0,a[47133]=i,(i|0)==0):undefined)a[47133]=a[47132];f=+oR(A,Yo(A,0,101255,0)|0,0.0,0.0);s[a[(a[b>>2]|0)+8>>2]>>3]=f;i=Ho(A,101263)|0;A:do{if(!i)i=0;else{switch(r[i>>0]|0){case 76:{if(!(A1(i,101271)|0)){i=1;break A}break}case 66:{if(!(A1(i,101274)|0)){i=2;break A}break}case 82:{i=(A1(i,101277)|0)==0;i=i?3:0;break A}default:{i=0;break A}}i=0}}while(0);a[(a[b>>2]|0)+116>>2]=i<<2|(e<<24>>24==0?0:i);f=+oR(A,Yo(A,0,101280,0)|0,.25,.02);s[l>>3]=f;f=f*72.0;a[(a[b>>2]|0)+248>>2]=~~(f+(f>=0.0?.5:-.5));i=dR(A,Yo(A,0,101288,0)|0,0)|0;if(i){a[n>>2]=l;if(J3(i,101209,n)|0){f=+s[l>>3];if(f<.02){s[l>>3]=.02;f=.02}}else{s[l>>3]=.5;f=.5}if(N4(i,101296)|0)r[(a[b>>2]|0)+276>>0]=1}else{s[l>>3]=.5;f=.5}f=f*72.0;a[(a[b>>2]|0)+252>>2]=~~(f+(f>=0.0?.5:-.5));l=(kR(A,Yo(A,0,101304,0)|0,0,0)|0)&255;r[(a[b>>2]|0)+243>>0]=l;l=YR(dR(A,Yo(A,0,101314,0)|0,0)|0,20676,20692)|0;a[(a[b>>2]|0)+244>>2]=l;FF(A);l=VF(A,101324,(a[(a[b>>2]|0)+8>>2]|0)+64|0)|0;i=a[(a[b>>2]|0)+8>>2]|0;r[i+80>>0]=l;VF(A,101329,i+48|0)|0;i=vR(Ho(A,101334)|0)|0;r[(a[(a[b>>2]|0)+8>>2]|0)+82>>0]=i;i=Ho(A,101341)|0;do{if(!i){i=Ho(A,101348)|0;if(i|0){i=(r[i>>0]|32)<<24>>24==108&1;c=27;break}i=Ho(A,101360)|0;if(i|0){i=vR(i)|0;c=27}}else{i=(q3(i)|0)==90&1;c=27}}while(0);if((c|0)==27)r[(a[(a[b>>2]|0)+8>>2]|0)+81>>0]=i;a[47135]=YR(Ho(A,101370)|0,20708,20724)|0;r[194954]=vR(Ho(A,101382)|0)|0;a[47138]=0;a[47139]=0;s[(a[(a[b>>2]|0)+8>>2]|0)+24>>3]=0.0;i=Ho(A,101394)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0)c=32;else c=30;if(((c|0)==30?(t=Ho(A,101398)|0,t|0):0)?r[t>>0]|0:0){i=t;c=32}if((c|0)==32){f=+$3(i);s[(a[(a[b>>2]|0)+8>>2]|0)+24>>3]=f}JF(A);s[23295]=1.e+37;a[47140]=Yo(A,0,101409,0)|0;a[47143]=Yo(A,0,141034,0)|0;a[47144]=Yo(A,0,105496,0)|0;a[47145]=Yo(A,1,141048,0)|0;a[47146]=Yo(A,1,141116,0)|0;a[47147]=Yo(A,1,108230,0)|0;a[47148]=Yo(A,1,140823,0)|0;a[47149]=Yo(A,1,101418,0)|0;a[47157]=Yo(A,1,141082,0)|0;a[47150]=Yo(A,1,101428,0)|0;a[47151]=Yo(A,1,101437,0)|0;a[47152]=Yo(A,1,101446,0)|0;c=Yo(A,1,108224,0)|0;a[47154]=c;if(!c)a[47154]=Yo(A,1,108224,105493)|0;a[47155]=Yo(A,1,101456,0)|0;a[47158]=Yo(A,1,101304,0)|0;a[47172]=Yo(A,1,101463,0)|0;a[47161]=Yo(A,1,101409,0)|0;a[47153]=Yo(A,1,105496,0)|0;a[47159]=Yo(A,1,141076,0)|0;a[47160]=Yo(A,1,101472,0)|0;a[47163]=Yo(A,1,101484,0)|0;a[47162]=Yo(A,1,101348,0)|0;a[47164]=Yo(A,1,101489,0)|0;a[47165]=Yo(A,1,141024,0)|0;a[47166]=Yo(A,1,137297,0)|0;a[47156]=Yo(A,1,101500,0)|0;a[47167]=Yo(A,1,101510,0)|0;a[47168]=Yo(A,1,101516,0)|0;a[47169]=Yo(A,1,101522,0)|0;a[47170]=Yo(A,1,101530,0)|0;a[47171]=Yo(A,1,101539,0)|0;a[47173]=Yo(A,1,141034,0)|0;a[47174]=Yo(A,2,101541,0)|0;a[47176]=Yo(A,2,140823,0)|0;a[47177]=Yo(A,2,101418,0)|0;a[47179]=Yo(A,2,101428,0)|0;a[47180]=Yo(A,2,101437,0)|0;a[47181]=Yo(A,2,101446,0)|0;a[47182]=Yo(A,2,108224,0)|0;a[47183]=Yo(A,2,101456,0)|0;a[47192]=Yo(A,2,101548,0)|0;a[47184]=Yo(A,2,101559,0)|0;a[47195]=Yo(A,2,101563,0)|0;a[47196]=Yo(A,2,101573,0)|0;a[47197]=Yo(A,2,101583,0)|0;a[47198]=Yo(A,2,101593,0)|0;a[47199]=Yo(A,2,101603,0)|0;a[47200]=Yo(A,2,101617,0)|0;a[47201]=Yo(A,2,101631,0)|0;a[47202]=Yo(A,2,101646,0)|0;a[47203]=Yo(A,2,101660,0)|0;a[47175]=Yo(A,2,101671,0)|0;a[47187]=Yo(A,2,101304,0)|0;a[47185]=Yo(A,2,141082,0)|0;a[47186]=Yo(A,2,101678,0)|0;a[47188]=Yo(A,2,101687,0)|0;a[47189]=Yo(A,2,101697,0)|0;a[47190]=Yo(A,2,101510,0)|0;a[47191]=Yo(A,2,101522,0)|0;a[47204]=Yo(A,2,101708,0)|0;a[47205]=Yo(A,2,101717,0)|0;a[47206]=Yo(A,2,101463,0)|0;i=$C(A)|0;a[(a[(a[b>>2]|0)+8>>2]|0)+88>>2]=i;i=Ho(A,141060)|0;if(i|0?r[i>>0]|0:0){A=PF(i,A)|0;a[(a[(a[b>>2]|0)+8>>2]|0)+92>>2]=A}k=u;return}function MF(A){A=A|0;var e=0,i=0;i=k;k=k+16|0;e=i;A=BR(A,Yo(A,0,101807,0)|0,101815)|0;if(((((((p1(A,101821)|0)!=0?(p1(A,101829)|0)!=0:0)?(p1(A,101836)|0)!=0:0)?(p1(A,101839)|0)!=0:0)?(p1(A,101850)|0)!=0:0)?(p1(A,101861)|0)!=0:0)?(p1(A,101871)|0)!=0:0)if((p1(A,101882)|0)!=0?(p1(A,101888)|0)!=0:0)if((p1(A,101815)|0)!=0?(p1(A,101893)|0)!=0:0){a[e>>2]=A;ao(0,101898,e)|0;A=0}else A=0;else A=2;else A=1;k=i;return A|0}function FF(A){A=A|0;var e=0.0,i=0,f=0;i=Ho(A,101765)|0;A:do{if(i|0?(f=r[i>>0]|0,f<<24>>24):0)switch(f<<24>>24|0){case 97:{if(f<<24>>24!=97)break A;if(A1(i,101771)|0)break A;a[(a[(a[A+16>>2]|0)+8>>2]|0)+84>>2]=4;break A}case 99:{if(f<<24>>24!=99)break A;if(A1(i,101776)|0)break A;a[(a[(a[A+16>>2]|0)+8>>2]|0)+84>>2]=3;break A}case 101:{if(f<<24>>24!=101)break A;if(A1(i,101785)|0)break A;a[(a[(a[A+16>>2]|0)+8>>2]|0)+84>>2]=5;break A}case 102:{if(f<<24>>24!=102)break A;if(A1(i,101792)|0)break A;a[(a[(a[A+16>>2]|0)+8>>2]|0)+84>>2]=2;break A}default:{e=+$3(i);if(!(e>0.0))break A;A=a[(a[A+16>>2]|0)+8>>2]|0;a[A+84>>2]=1;s[A+16>>3]=e;break A}}}while(0);return}function VF(A,e,i){A=A|0;e=e|0;i=i|0;var f=0.0,n=0.0,l=0,t=0,c=0,b=0,u=0,w=0;w=k;k=k+48|0;b=w+32|0;l=w+16|0;c=w+8|0;t=w;u=w+40|0;r[u>>0]=0;A=Ho(A,e)|0;do{if(A){a[l>>2]=c;a[l+4>>2]=t;a[l+8>>2]=u;l=(J3(A,101749,l)|0)>1;n=+s[c>>3];f=+s[t>>3];if(l&n>0.0&f>0.0){n=n*72.0;s[i>>3]=+(~~(n+(n>=0.0?.5:-.5))|0);n=f*72.0;s[i+8>>3]=+(~~(n+(n>=0.0?.5:-.5))|0);A=(r[u>>0]|0)==33;break}r[u>>0]=0;a[b>>2]=c;a[b+4>>2]=u;b=(J3(A,101759,b)|0)>0;f=+s[c>>3];if(b&f>0.0){n=f*72.0;n=+(~~(n+(n>=0.0?.5:-.5))|0);s[i>>3]=n;s[i+8>>3]=n;A=(r[u>>0]|0)==33}else A=0}else A=0}while(0);k=w;return A&1|0}function JF(A){A=A|0;var e=0,i=0,f=0.0,n=0.0,l=0;e=Ho(A,108224)|0;do{if(e|0?r[e>>0]|0:0){i=(a[(a[A+60>>2]|0)+16>>2]|0)+113|0;r[i>>0]=r[i>>0]|8;i=(tB(e)|0)!=0;n=+oR(A,Yo(A,0,101428,0)|0,14.0,1.0);l=BR(A,Yo(A,0,101437,0)|0,107994)|0;e=HF(A,e,i?2:0,n,l,BR(A,Yo(A,0,101446,0)|0,137314)|0)|0;l=A+16|0;a[(a[l>>2]|0)+12>>2]=e;e=Ho(A,105628)|0;i=(e|0)!=0;do{if((Zd(A)|0)==(A|0)){if(i?(r[e>>0]|0)==116:0){e=1;break}e=0}else{if(i?(r[e>>0]|0)==98:0){e=0;break}e=1}}while(0);i=Ho(A,101726)|0;A:do{if(i)switch(r[i>>0]|0){case 108:{e=e|2;break A}case 114:{e=e|4;break A}default:break A}}while(0);r[(a[l>>2]|0)+275>>0]=e;if((Zd(A)|0)!=(A|0)){e=a[(a[l>>2]|0)+12>>2]|0;f=+s[e+24>>3]+16.0;n=+s[e+32>>3]+8.0;A=(a[(a[(Zd(A)|0)+16>>2]|0)+116>>2]&1|0)==0;e=a[l>>2]|0;i=r[e+275>>0]<<1&2;if(A){A=i&255;s[e+48+(A<<4)>>3]=f;s[e+48+(A<<4)+8>>3]=n;break}else{A=(i^3)&255;s[e+48+(A<<4)>>3]=n;s[e+48+(A<<4)+8>>3]=f;break}}}}while(0);return}function pF(A){A=A|0;var e=0,i=0,r=0;r=A+16|0;i=a[r>>2]|0;e=a[i+8>>2]|0;do{if(!e)e=i;else{i=a[e+88>>2]|0;if(i){WC(i);i=a[r>>2]|0;e=a[i+8>>2]|0;if(!e){e=i;break}}L2(a[e+92>>2]|0);e=a[r>>2]|0}}while(0);L2(a[e+8>>2]|0);r=a[r>>2]|0;a[r+8>>2]=0;TF(a[r+12>>2]|0);_d(A,0,137483);return}function NF(A){A=A|0;var e=0,i=0;i=k;k=k+16|0;e=i;switch(A|0){case 0:{A=101971;break}case 1:{A=101839;break}case 2:{A=101977;break}default:{a[e>>2]=A;ao(1,101941,e)|0;A=101971}}k=i;return A|0}function RF(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;f=a[e>>2]|0;b=e+24|0;a[b>>2]=0;a[b+4>>2]=0;a[b+8>>2]=0;a[b+12>>2]=0;if(r[f>>0]|0){t=$F((P2(f)|0)+1|0)|0;r[t>>0]=0;c=e+12|0;i=t;A:while(1){e:while(1){l=f+1|0;n=r[f>>0]|0;if(!(n<<24>>24))break A;if(!(n<<24>>24==-1|((n&255)<161|(a[c>>2]|0)!=2))){r[i>>0]=n;l=r[l>>0]|0;n=i+2|0;r[i+1>>0]=l;if(!(l<<24>>24)){i=n;break A}else{i=n;f=f+2|0;continue}}switch(n<<24>>24){case 92:break e;case 10:{s=12;break e}default:{}}r[i>>0]=n;i=i+1|0;f=l}if((s|0)==12){s=0;f=i+1|0;r[i>>0]=0;XF(A,e,t,110);i=f;t=f;f=l;continue}n=r[l>>0]|0;switch(n<<24>>24|0){case 114:case 108:case 110:{n=i+1|0;r[i>>0]=0;XF(A,e,t,r[l>>0]|0);i=n;break}default:{r[i>>0]=n;i=i+1|0;n=t}}t=n;f=(r[l>>0]|0)==0?l:f+2|0}if((t|0)!=(i|0)){r[i>>0]=0;XF(A,e,t,110)}e=e+40|0;a[e>>2]=a[b>>2];a[e+4>>2]=a[b+4>>2];a[e+8>>2]=a[b+8>>2];a[e+12>>2]=a[b+12>>2]}return}function XF(A,e,i,n){A=A|0;e=e|0;i=i|0;n=n|0;var l=0.0,t=0.0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0;B=k;k=k+32|0;h=B+16|0;o=B;d=e+76|0;c=f[d>>1]|0;w=e+72|0;b=a[w>>2]|0;if(!b)u=qF((c*56|0)+112|0)|0;else u=AV(b,c+2|0,56,c+1|0)|0;a[w>>2]=u;c=f[d>>1]|0;b=u+(c*56|0)|0;a[b>>2]=i;r[u+(c*56|0)+48>>0]=n;if((i|0)!=0?(r[i>>0]|0)!=0:0){a[46594]=a[e+4>>2];s[23299]=+s[e+16>>3];n=a[A+144>>2]|0;a[u+(c*56|0)+4>>2]=y5[a[n>>2]&63](n,186376,1)|0;AR(o,A,b);t=+s[o>>3];s[h>>3]=t;l=+s[o+8>>3]}else{s[h>>3]=0.0;l=+(~~(+s[e+16>>3]*1.2)|0);s[u+(c*56|0)+40>>3]=l;t=0.0}f[d>>1]=(f[d>>1]|0)+1<<16>>16;d=e+24|0;s[d>>3]=+s[(+s[d>>3]>t?d:h)>>3];d=e+32|0;s[d>>3]=+s[d>>3]+l;k=B;return}function HF(A,e,i,f,l,t){A=A|0;e=e|0;i=i|0;f=+f;l=l|0;t=t|0;var c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0;v=k;k=k+32|0;d=v+16|0;h=v+8|0;o=v;g=qF(88)|0;switch(Md(A)|0){case 0:{b=0;B=a[A+60>>2]|0;u=A;w=0;break}case 1:{b=0;B=Zd(Id(A)|0)|0;u=0;w=A;break}case 2:{b=A;B=Zd(Id(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)|0)|0;u=0;w=0;break}default:{b=0;B=0;u=0;w=0}}a[g+4>>2]=l;a[g+8>>2]=t;s[g+16>>3]=f;c=B+16|0;t=g+12|0;a[t>>2]=n[(a[c>>2]|0)+115>>0];A:do{if(i&4){a[g>>2]=b3(e)|0;if(i&2|0)r[g+82>>0]=1}else switch(i|0){case 2:{a[g>>2]=b3(e)|0;r[g+82>>0]=1;if(!(va(A,g)|0))break A;switch(Md(A)|0){case 0:{a[o>>2]=Vh(u)|0;ao(3,101983,o)|0;break A}case 1:{a[h>>2]=Vh(w)|0;ao(3,102005,h)|0;break A}case 2:{o=Vh(a[((a[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;h=(Ih(B)|0)!=0;B=Vh(a[((a[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)|0;a[d>>2]=o;a[d+4>>2]=h?137738:141747;a[d+8>>2]=B;ao(3,102026,d)|0;break A}default:break A}}case 0:{l=UF(e,A,0)|0;a[g>>2]=l;if((a[t>>2]|0)==1)l=EX(l)|0;else l=BX(l,B)|0;L2(a[g>>2]|0);a[g>>2]=l;RF(a[(a[c>>2]|0)+144>>2]|0,g);break A}default:gA(102053,102069,166,102078)}}while(0);k=v;return g|0}function UF(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0;switch(Md(e)|0){case 0:{t=Vh(e)|0;n=P2(t)|0;f=a[(a[e+16>>2]|0)+12>>2]|0;if(f){f=a[f>>2]|0;if(!A){E=0;g=2;v=2;B=2;l=2;Z=102101;u=102098;c=105493;k=195059;h=195059;o=0;d=0;w=2;C=f;I=102095}else{E=0;g=2;v=2;B=2;l=2;Z=102101;u=102098;c=105493;k=195059;h=195059;o=0;d=0;w=P2(f)|0;C=f;I=102095}}else{E=0;g=2;v=2;B=2;l=2;Z=102101;u=102098;c=105493;k=195059;h=195059;o=0;d=0;w=2;C=102089;I=102095}break}case 1:{t=Vh(Id(e)|0)|0;n=P2(t)|0;c=Vh(e)|0;l=P2(c)|0;f=a[(a[e+16>>2]|0)+104>>2]|0;if(f){f=a[f>>2]|0;if(!A){E=0;g=2;v=2;B=2;Z=102101;u=102098;k=195059;h=195059;o=0;d=0;w=2;C=f;I=102095}else{E=0;g=2;v=2;B=2;Z=102101;u=102098;k=195059;h=195059;o=0;d=0;w=P2(f)|0;C=f;I=102095}}else{E=0;g=2;v=2;B=2;Z=102101;u=102098;k=195059;h=195059;o=0;d=0;w=2;C=102089;I=102095}break}case 2:{l=e+48|0;t=Vh(Zd(Id(a[((a[e>>2]&3|0)==3?e:l)+40>>2]|0)|0)|0)|0;n=P2(t)|0;b=Vh(a[((a[e>>2]&3|0)==3?e:l)+40>>2]|0)|0;s=P2(b)|0;f=e+16|0;h=a[(a[f>>2]|0)+52>>2]|0;if(!h)d=0;else d=P2(h)|0;u=Vh(a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)|0;f=a[f>>2]|0;k=a[f+92>>2]|0;if(!k)o=0;else o=P2(k)|0;c=P2(u)|0;f=a[f+96>>2]|0;if(f){f=a[f>>2]|0;if(!A)w=2;else w=P2(f)|0}else{w=2;f=102089}I=(Ih(Zd(Id(a[((a[e>>2]&3|0)==3?e:l)+40>>2]|0)|0)|0)|0)==0;E=1;g=s;v=c;B=s+2+(d|0?d+1|0:0)+c+(o|0?o+1|0:0)|0;l=2;Z=b;c=105493;C=f;I=I?141747:137738;break}default:{E=0;g=2;v=2;B=2;l=2;n=2;Z=102101;u=102098;c=105493;t=102092;k=195059;h=195059;o=0;d=0;w=2;C=102089;I=102095}}i=(i|0)==0;b=0;f=A;A:while(1){e=f+1|0;e:do{switch(r[f>>0]|0){case 0:break A;case 92:{f=f+2|0;switch(r[e>>0]|0){case 78:{s=l;break e}case 71:{s=n;break e}case 69:{s=B;break e}case 72:{s=v;break e}case 84:{s=g;break e}case 76:{s=w;break e}case 92:{if(!i){s=1;break e}break}default:{}}s=2;break}default:{s=1;f=e}}}while(0);b=b+s|0}B=$F(b+1|0)|0;w=(E|0)==0;b=(d|0)==0;e=(o|0)==0;f=B;n=A;A:while(1){s=n+1|0;l=r[n>>0]|0;switch(l<<24>>24){case 0:break A;case 92:break;default:{r[f>>0]=l;f=f+1|0;n=s;continue A}}l=n+2|0;n=r[s>>0]|0;switch(n<<24>>24|0){case 71:{n=t;while(1){A=r[n>>0]|0;r[f>>0]=A;if(!(A<<24>>24)){n=l;continue A}n=n+1|0;f=f+1|0}}case 78:{n=c;while(1){A=r[n>>0]|0;r[f>>0]=A;if(!(A<<24>>24)){n=l;continue A}n=n+1|0;f=f+1|0}}case 69:{if(w){n=l;continue A}else n=Z;while(1){A=r[n>>0]|0;r[f>>0]=A;if(!(A<<24>>24))break;n=n+1|0;f=f+1|0}if(b)n=I;else{r[f>>0]=58;n=h;while(1){f=f+1|0;A=r[n>>0]|0;r[f>>0]=A;if(!(A<<24>>24)){n=I;break}else n=n+1|0}}while(1){A=r[n>>0]|0;r[f>>0]=A;if(!(A<<24>>24)){n=u;break}n=n+1|0;f=f+1|0}while(1){A=r[n>>0]|0;r[f>>0]=A;if(!(A<<24>>24))break;n=n+1|0;f=f+1|0}if(e){n=l;continue A}r[f>>0]=58;n=k;while(1){f=f+1|0;A=r[n>>0]|0;r[f>>0]=A;if(!(A<<24>>24)){n=l;continue A}else n=n+1|0}}case 84:{n=Z;while(1){A=r[n>>0]|0;r[f>>0]=A;if(!(A<<24>>24)){n=l;continue A}n=n+1|0;f=f+1|0}}case 72:{n=u;while(1){A=r[n>>0]|0;r[f>>0]=A;if(!(A<<24>>24)){n=l;continue A}f=f+1|0;n=n+1|0}}case 76:{n=C;while(1){A=r[n>>0]|0;r[f>>0]=A;if(!(A<<24>>24)){n=l;continue A}f=f+1|0;n=n+1|0}}case 92:{if(!i){r[f>>0]=92;f=f+1|0;n=l;continue A}break}default:{}}r[f>>0]=92;r[f+1>>0]=n;f=f+2|0;n=l}r[f>>0]=0;return B|0}function xF(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;if(A|0){i=A;r=0;while(1){if((r|0)>=(e|0))break;if(!r)L2(a[i>>2]|0);n=a[i+8>>2]|0;if(n|0?(f=a[i+12>>2]|0,f|0):0)F5[f&127](n);i=i+56|0;r=r+1|0}L2(A)}return}function TF(A){A=A|0;var e=0;if(A|0){L2(a[A>>2]|0);e=A+72|0;if(r[A+82>>0]|0){e=a[e>>2]|0;if(e|0)aa(e,1)}else xF(a[e>>2]|0,f[A+76>>1]|0);L2(A)}return}function jF(A,e,i){A=A|0;e=e|0;i=i|0;var n=0.0,l=0,t=0.0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0;v=k;k=k+32|0;h=v+16|0;d=v;c=a[A+16>>2]|0;B=c+12|0;g=a[B>>2]|0;a[B>>2]=e;if(!(r[i+82>>0]|0)){o=i+76|0;if((f[o>>1]|0)>=1){Ki(A,0);$i(A,a[i+8>>2]|0);switch(r[i+80>>0]|0){case 116:{t=+s[i+64>>3];n=+s[i+48>>3]*.5+t;break}case 98:{t=+s[i+64>>3];n=+s[i+48>>3]*-.5+t+ +s[i+32>>3];break}default:{t=+s[i+64>>3];n=+s[i+32>>3]*.5+t}}n=n-+s[i+16>>3];w=d+8|0;s[w>>3]=n;if(f[c+260>>1]&512)s[w>>3]=n-t;b=i+72|0;u=i+56|0;l=i+40|0;e=0;while(1){if((e|0)>=(f[o>>1]|0))break;c=a[b>>2]|0;switch(r[c+(e*56|0)+48>>0]|0){case 108:{n=+s[u>>3]-+s[l>>3]*.5;break}case 114:{n=+s[l>>3]*.5+ +s[u>>3];break}default:n=+s[u>>3]}s[d>>3]=n;a[h>>2]=a[d>>2];a[h+4>>2]=a[d+4>>2];a[h+8>>2]=a[d+8>>2];a[h+12>>2]=a[d+12>>2];qi(A,h,c+(e*56|0)|0);s[w>>3]=+s[w>>3]-+s[(a[b>>2]|0)+(e*56|0)+40>>3];e=e+1|0}_i(A);l=18}}else{pf(A,a[i+72>>2]|0,i);l=18}if((l|0)==18)a[B>>2]=g;k=v;return}function PF(A,e){A=A|0;e=e|0;return UF(A,e,1)|0}function SF(A){A=A|0;return OF(A,0)|0}function OF(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0;i=a[47207]|0;if(!i){a[47208]=64;i=$F(64)|0;a[47207]=i}c=e<<24>>24==0;t=0;f=0;l=A;while(1){if(!l)break;e=r[l>>0]|0;if(!(e<<24>>24))break;A=a[47208]|0;if((t|0)>(A+-8|0)){i=A<<1;a[47208]=i;i=eV(a[47207]|0,i)|0;a[47207]=i;i=i+t|0;e=r[l>>0]|0}A:do{switch(e<<24>>24){case 38:{if(c?(KF(l)|0)!=0:0)s=18;else{f=5;e=102130}break}case 60:{f=4;e=102153;break}case 62:{f=4;e=102136;break}case 45:{f=5;e=102147;break}default:{if((f|0)!=0&e<<24>>24==32)if((r[f>>0]|0)==32){f=6;e=102123;break A}else{s=18;break A}switch(e<<24>>24){case 34:{f=6;e=102116;break A}case 39:{f=5;e=102141;break A}case 10:if(c){s=18;break A}else{f=5;e=102110;break A}default:{s=18;break A}}}}}while(0);if((s|0)==18){s=0;e=c|e<<24>>24!=13;f=e?1:5;e=e?l:102104}n=i+f|0;A=f;while(1){if(!A)break;r[i>>0]=r[e>>0]|0;A=A+-1|0;e=e+1|0;i=i+1|0}A=l;t=f+t|0;i=n;l=l+1|0;f=A}r[i>>0]=0;return a[47207]|0}function KF(A){A=A|0;var e=0,i=0;i=A+1|0;e=r[i>>0]|0;A:do{if(e<<24>>24==35){i=A+2|0;e=r[i>>0]|0;switch(e<<24>>24){case 88:case 120:break;default:{A=i;while(1){i=A+1|0;if((e+-48&255)>=10)break A;A=i;e=r[i>>0]|0}}}i=A+3|0;while(1){e=r[i>>0]|0;if((e+-48&255)>=10)switch(e<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:break A}i=i+1|0}}else while(1){A=i+1|0;if(((e&-33)+-65&255)>=26)break A;i=A;e=r[A>>0]|0}}while(0);return e<<24>>24==59|0}function _F(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0;e=a[47209]|0;if(!e){a[47210]=64;e=$F(64)|0;a[47209]=e;t=0}else t=0;while(1){if(!A)break;i=r[A>>0]|0;if(!(i<<24>>24))break;f=a[47210]|0;if((t|0)>(f+-8|0)){e=f<<1;a[47210]=e;e=eV(a[47209]|0,e)|0;a[47209]=e;e=e+t|0;i=r[A>>0]|0}switch(i<<24>>24){case 38:{if(!(KF(A)|0)){n=5;i=102130}else c=12;break}case 60:{n=4;i=102153;break}case 62:{n=4;i=102136;break}case 34:{n=6;i=102116;break}case 39:{n=5;i=102141;break}default:c=12}if((c|0)==12){c=0;n=1;i=A}l=e+n|0;f=n;while(1){if(!f)break;r[e>>0]=r[i>>0]|0;f=f+-1|0;i=i+1|0;e=e+1|0}t=n+t|0;e=l;A=A+1|0}r[e>>0]=0;return a[47209]|0}function qF(A){A=A|0;var e=0;if(!A)A=0;else{e=$F(A)|0;Y6(e|0,0,A|0)|0;A=e}return A|0}function $F(A){A=A|0;if(A){A=Q2(A)|0;if(!A){L3(111740,14,1,a[15712]|0)|0;A=0}}else A=0;return A|0}function AV(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;A=W2(A,U(i,e)|0)|0;if(!((e|0)!=0&(A|0)==0)){if(e>>>0>r>>>0)Y6(A+(U(r,i)|0)|0,0,U(e-r|0,i)|0)|0}else L3(111740,14,1,a[15712]|0)|0;return A|0}function eV(A,e){A=A|0;e=e|0;A=W2(A,e)|0;if((e|0)!=0&(A|0)==0)L3(111740,14,1,a[15712]|0)|0;return A|0}function iV(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0.0,b=0,u=0,w=0,o=0,h=0,g=0,v=0;v=k;k=k+80|0;o=v+40|0;w=v+32|0;u=v+24|0;b=v;h=4;g=Q2(40)|0;a[g>>2]=0;f=v+68|0;n=v+64|0;if(0){}else t=6;do{if((t|0)==6){d=0;f=iA(27,A|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,g|0,h|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)!=1){if(!f){d=0;sA(2);f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15;break}}if((i|0)<1){d=0;sA(3);f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15;break}f=0;break}else{a[47211]=(r|0)>-1?r:30;g=L6(188848,1,g|0,h|0)|0;h=L;d=0;f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15;break}f=0;t=15;break}}else{f=L;t=15}}}while(0);A:do{if((t|0)==15){e:while(1){if(f|0){f=2;break A}d=0;sA(4);f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15;continue}A=a[15712]|0;b=0;while(1){d=0;t=eA(2)|0;f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15;continue e}if(!t)break;d=0;f=iA(28,t|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,g|0,h|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){f=L;t=15;continue e}d=0;uA(25,t|0,f|0);f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15;continue e}b=b+1|0;do{if(((b|0)%100|0|0)==0&0!=0){f=(b|0)%1e3|0;if((f|0)==100){d=0;rA(93,102202,A|0)|0;f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15;continue e}d=0;a[u>>2]=b;aA(32,A|0,102220,u|0)|0;f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15;continue e}break}d=0;a[w>>2]=b;aA(32,A|0,102220,w|0)|0;n=d;d=0;if((n|0)!=0&(B|0)!=0){l=y6(a[n>>2]|0,g|0,h|0)|0;if(!l)fe(n|0,B|0);L=B}else l=-1;if((l|0)==1){f=L;t=15;continue e}if(!f){d=0;rA(94,10,A|0)|0;f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15;continue e}}}}while(0);if((b|0)>=(i|0))break}switch(e|0){case 1:{d=0;sA(5);f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15;continue e}break}case 2:{d=0;sA(6);f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15;continue e}break}default:{d=0;sA(7);f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15;continue e}d=0;sA(3);f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15;continue e}}}if(true){f=0;break A}if((b|0)>99){d=0;rA(94,10,A|0)|0;f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15;continue}}f=a[47251]|0;n=a[47252]|0;d=0;c=+q(1);l=d;d=0;if((l|0)!=0&(B|0)!=0){t=y6(a[l>>2]|0,g|0,h|0)|0;if(!t)fe(l|0,B|0);L=B}else t=-1;if((t|0)==1){f=L;t=15;continue}d=0;a[o>>2]=102202;a[o+4>>2]=f;a[o+8>>2]=n;a[o+12>>2]=b;s[o+16>>3]=c;aA(32,A|0,102224,o|0)|0;f=d;d=0;if((f|0)!=0&(B|0)!=0){n=y6(a[f>>2]|0,g|0,h|0)|0;if(!n)fe(f|0,B|0);L=B}else n=-1;if((n|0)==1){f=L;t=15}else break}f=0}}while(0);L2(g|0);k=v;return f|0}function rV(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;A=(a[A+16>>2]|0)+192|0;r=0;l=0;while(1){A=a[A>>2]|0;if(!A)break;n=a[A+16>>2]|0;f=a[n+180>>2]|0;A=0;while(1){if(!(a[f+(A<<2)>>2]|0))break;A=A+1|0;r=r+1|0}A=n+164|0;l=l+1|0}a[e>>2]=l;a[i>>2]=r;return}function fV(A){A=A|0;var e=0,i=0,f=0,n=0,t=0,c=0,s=0,b=0;a[47254]=A;a[47261]=0;a[47252]=0;a[47251]=0;t=A+16|0;A=(a[t>>2]|0)+192|0;n=0;i=0;while(1){A=a[A>>2]|0;if(!A)break;f=a[A+16>>2]|0;r[f+157>>0]=0;n=n+1|0;a[47251]=n;e=a[f+180>>2]|0;A=0;while(1){if(!(a[e+(A<<2)>>2]|0))break;s=i+1|0;a[47252]=s;A=A+1|0;i=s}A=f+164|0}A=a[47262]|0;if(!A)A=$F(n<<2)|0;else A=eV(A,n<<2)|0;a[47262]=A;a[47263]=0;A=a[47256]|0;if(!A)A=$F(a[47251]<<2)|0;else A=eV(A,a[47251]<<2)|0;a[47256]=A;a[47255]=0;e=1;A=(a[t>>2]|0)+192|0;while(1){A=a[A>>2]|0;if(!A)break;s=A+16|0;t=a[s>>2]|0;c=t+292|0;a[c>>2]=0;t=a[t+172>>2]|0;n=e;f=0;A=0;while(1){e=a[t+(f<<2)>>2]|0;if(!e)break;i=A+1|0;a[c>>2]=i;A=a[e+16>>2]|0;a[A+160>>2]=0;a[A+164>>2]=-1;if(!n)A=0;else{b=a[e>>2]&3;A=((a[(a[(a[((b|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(a[(a[(a[((b|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0)<(l[A+170>>1]|0|0)?0:n}n=A;f=f+1|0;A=i}A=qF((f<<2)+4|0)|0;e=a[s>>2]|0;a[e+264>>2]=A;a[e+268>>2]=0;e=a[e+180>>2]|0;A=0;do{b=A;A=A+1|0}while((a[e+(b<<2)>>2]|0)!=0);e=qF(A<<2)|0;A=a[s>>2]|0;a[A+272>>2]=e;a[A+276>>2]=0;e=n;A=A+164|0}return e|0}function aV(){var A=0,e=0,i=0,r=0,f=0,n=0,t=0,c=0,s=0,b=0,u=0,w=0;w=k;k=k+16|0;u=w+8|0;s=w;b=sR(a[47251]|0)|0;A=(a[(a[47254]|0)+16>>2]|0)+192|0;while(1){e=a[A>>2]|0;if(!e){c=0;break}i=e+16|0;A=a[i>>2]|0;if(!(a[A+292>>2]|0)){uR(b,e);A=a[i>>2]|0}A=A+164|0}while(1){A=wR(b)|0;if(!A)break;t=A+16|0;A=a[t>>2]|0;r=A+232|0;a[r>>2]=0;i=a[A+172>>2]|0;e=0;n=0;while(1){f=a[i+(e<<2)>>2]|0;if(!f){r=0;break}f=(a[(a[(a[((a[f>>2]&3|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)+(l[(a[f+16>>2]|0)+170>>1]|0)|0;f=(n|0)>(f|0)?n:f;a[r>>2]=f;e=e+1|0;n=f}while(1){e=a[(a[A+180>>2]|0)+(r<<2)>>2]|0;if(!e)break;i=e+-48|0;f=(a[(a[((a[e>>2]&3|0)==2?e:i)+40>>2]|0)+16>>2]|0)+292|0;n=a[f>>2]|0;a[f>>2]=n+-1;if((n|0)<2){uR(b,a[((a[e>>2]&3|0)==2?e:i)+40>>2]|0);A=a[t>>2]|0}r=r+1|0}c=c+1|0}A:do{if((c|0)!=(a[47251]|0)){ao(1,102556,s)|0;A=(a[(a[47254]|0)+16>>2]|0)+192|0;while(1){e=a[A>>2]|0;if(!e)break A;i=e+16|0;A=a[i>>2]|0;if(a[A+292>>2]|0){s=Vh(e)|0;A=a[(a[i>>2]|0)+292>>2]|0;a[u>>2]=s;a[u+4>>2]=A;ao(3,102578,u)|0;A=a[i>>2]|0}A=A+164|0}}}while(0);bR(b);k=w;return}function nV(){var A=0,e=0,i=0;A=(a[(a[47254]|0)+16>>2]|0)+192|0;while(1){A=a[A>>2]|0;if(!A)break;i=A+16|0;A=a[i>>2]|0;e=a[A+264>>2]|0;if(e){L2(e);A=a[i>>2]|0}e=a[A+272>>2]|0;if(e){L2(e);A=a[i>>2]|0}r[A+157>>0]=0;A=A+164|0}return}function lV(){var A=0,e=0,i=0,r=0,f=0;A=(a[(a[47254]|0)+16>>2]|0)+192|0;while(1){A=a[A>>2]|0;if(!A)break;A=a[A+16>>2]|0;a[A+280>>2]=0;A=A+164|0}f=qF(a[47251]<<2)|0;r=0;A=(a[(a[47254]|0)+16>>2]|0)+192|0;while(1){e=a[A>>2]|0;if(!e)break;i=e+16|0;A=a[i>>2]|0;if(!(a[A+280>>2]|0)){a[f+(r<<2)>>2]=vV(e)|0;e=r+1|0;A=a[i>>2]|0}else e=r;r=e;A=A+164|0}A=EV(f,r)|0;while(1){if((CV(A)|0)<=1)break;mV(A,a[(GV(ZV(IV(A)|0)|0)|0)+8>>2]|0)}L2(A);A=0;while(1){if((A|0)>=(r|0))break;L2(a[f+(A<<2)>>2]|0);A=A+1|0}L2(f);if((a[47255]|0)==((a[47251]|0)+-1|0)){QV();return}else gA(102301,102331,523,102336)}function tV(){var A=0,e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0;t=a[47261]|0;f=a[47255]|0;c=a[47256]|0;s=a[47211]|0;e=0;A=0;n=t;while(1){if((n|0)>=(f|0)){l=8;break}r=a[c+(n<<2)>>2]|0;i=a[(a[r+16>>2]|0)+160>>2]|0;if((i|0)<0){if(!A)A=r;else A=(a[(a[A+16>>2]|0)+160>>2]|0)>(i|0)?r:A;e=e+1|0;if((e|0)>=(s|0))break}r=n+1|0;a[47261]=r;n=r}if((l|0)==8)if((t|0)>0){f=0;while(1){if((f|0)>=(t|0))break;i=a[c+(f<<2)>>2]|0;r=a[(a[i+16>>2]|0)+160>>2]|0;if((r|0)<0){if(!A)A=i;else A=(a[(a[A+16>>2]|0)+160>>2]|0)>(r|0)?i:A;e=e+1|0;if((e|0)>=(s|0))break}f=f+1|0}a[47261]=f}return A|0}function cV(A){A=A|0;var e=0,i=0;e=a[A>>2]&3;i=a[((e|0)==3?A:A+48|0)+40>>2]|0;A=a[((e|0)==2?A:A+-48|0)+40>>2]|0;e=(a[(a[i+16>>2]|0)+288>>2]|0)<(a[(a[A+16>>2]|0)+288>>2]|0);A=e?i:A;a[47257]=0;a[47258]=2147483647;i=a[A+16>>2]|0;a[47259]=a[i+284>>2];a[47260]=a[i+288>>2];if(e)gV(A);else BV(A);return a[47257]|0}function sV(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,t=0,c=0,s=0,b=0,u=0,w=0;w=k;k=k+16|0;u=w;f=a[e>>2]&3;b=e+-48|0;c=e+48|0;s=e+16|0;f=(a[(a[(a[((f|0)==2?e:b)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(a[(a[(a[((f|0)==3?e:c)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(l[(a[s>>2]|0)+170>>1]|0)|0;do{if((f|0)>0){i=a[A>>2]&3;n=a[((i|0)==3?A:A+48|0)+40>>2]|0;t=a[n+16>>2]|0;if(((a[t+276>>2]|0)+(a[t+268>>2]|0)|0)==1){kV(n,f);break}i=a[((i|0)==2?A:A+-48|0)+40>>2]|0;r=a[i+16>>2]|0;if(((a[r+276>>2]|0)+(a[r+268>>2]|0)|0)==1){kV(i,0-f|0);break}if((a[t+288>>2]|0)<(a[r+288>>2]|0)){kV(n,f);break}else{kV(i,0-f|0);break}}}while(0);i=A+16|0;r=a[(a[i>>2]|0)+160>>2]|0;f=a[e>>2]&3;f=oV(a[((f|0)==3?e:c)+40>>2]|0,a[((f|0)==2?e:b)+40>>2]|0,r,1)|0;t=a[e>>2]&3;if((oV(a[((t|0)==2?e:b)+40>>2]|0,a[((t|0)==3?e:c)+40>>2]|0,r,0)|0)==(f|0)){a[(a[s>>2]|0)+160>>2]=0-r;a[(a[i>>2]|0)+160>>2]=0;hV(A,e);u=a[f+16>>2]|0;dV(f,a[u+280>>2]|0,a[u+284>>2]|0)|0;k=w;return}else{ao(1,102262,u)|0;fe(188848,1)}}function bV(){var A=0,e=0,i=0,f=0,n=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0;wV();u=qF((a[47253]<<2)+4|0)|0;e=a[47253]|0;A=0;while(1){if((A|0)>(e|0))break;a[u+(A<<2)>>2]=0;A=A+1|0}A=(a[(a[47254]|0)+16>>2]|0)+192|0;e=A;while(1){e=a[e>>2]|0;if(!e)break;e=a[e+16>>2]|0;if(!(r[e+156>>0]|0)){b=u+(a[e+232>>2]<<2)|0;a[b>>2]=(a[b>>2]|0)+1}e=e+164|0}while(1){A=a[A>>2]|0;if(!A)break;b=A+16|0;A=a[b>>2]|0;if(!(r[A+156>>0]|0)){n=a[47253]|0;i=a[A+172>>2]|0;s=0;c=0;e=0;while(1){f=a[i+(e<<2)>>2]|0;if(!f)break;w=a[f+16>>2]|0;t=(a[(a[(a[((a[f>>2]&3|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)+(l[w+170>>1]|0)|0;s=(a[w+156>>2]|0)+s|0;c=(c|0)>(t|0)?c:t;e=e+1|0}f=a[A+180>>2]|0;t=0;e=0;while(1){i=a[f+(e<<2)>>2]|0;if(!i)break;k=a[i+16>>2]|0;w=(a[(a[(a[((a[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(l[k+170>>1]|0)|0;t=(a[k+156>>2]|0)+t|0;n=(n|0)<(w|0)?n:w;e=e+1|0}e=(c|0)>0?c:0;if((s|0)==(t|0)){f=e;i=e;while(1){e=i+1|0;if((i|0)>=(n|0))break;f=(a[u+(e<<2)>>2]|0)<(a[u+(f<<2)>>2]|0)?e:f;i=e}k=A+232|0;w=u+(a[k>>2]<<2)|0;a[w>>2]=(a[w>>2]|0)+-1;w=u+(f<<2)|0;a[w>>2]=(a[w>>2]|0)+1;a[k>>2]=f}e=a[A+264>>2]|0;if(e){L2(e);A=a[b>>2]|0}e=a[A+272>>2]|0;if(e){L2(e);A=a[b>>2]|0}r[A+157>>0]=0}A=A+164|0}L2(u);return}function uV(){var A=0,e=0,i=0,r=0,f=0,n=0;e=0;while(1){if((e|0)>=(a[47255]|0))break;A=a[(a[47256]|0)+(e<<2)>>2]|0;do{if(((a[(a[A+16>>2]|0)+160>>2]|0)==0?(i=cV(A)|0,i|0):0)?(r=a[i>>2]&3,r=(a[(a[(a[((r|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(a[(a[(a[((r|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(l[(a[i+16>>2]|0)+170>>1]|0)|0,(r|0)>=2):0){n=a[A>>2]&3;f=a[((n|0)==3?A:A+48|0)+40>>2]|0;A=a[((n|0)==2?A:A+-48|0)+40>>2]|0;if((a[(a[f+16>>2]|0)+288>>2]|0)<(a[(a[A+16>>2]|0)+288>>2]|0)){kV(f,r>>>1);break}else{kV(A,(r|0)/-2|0);break}}}while(0);e=e+1|0}nV();return}function wV(){var A=0,e=0,i=0,f=0,n=0,l=0,t=0,c=0;t=k;k=k+16|0;l=t;a[l>>2]=0;a[l>>2]=2147483647;a[47253]=-2147483647;A=(a[(a[47254]|0)+16>>2]|0)+192|0;i=A;n=2147483647;f=-2147483647;while(1){e=a[i>>2]|0;if(!e)break;i=a[e+16>>2]|0;if(!(r[i+156>>0]|0)){c=a[i+232>>2]|0;e=(n|0)<(c|0)?n:c;a[l>>2]=e;f=(f|0)>(c|0)?f:c;a[47253]=f}else e=n;i=i+164|0;n=e}if(n|0){while(1){A=a[A>>2]|0;if(!A)break;A=a[A+16>>2]|0;c=A+232|0;a[c>>2]=(a[c>>2]|0)-n;A=A+164|0}a[47253]=f-n;a[l>>2]=0}k=t;return}function kV(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;f=A+16|0;A=a[f>>2]|0;r=A+232|0;a[r>>2]=(a[r>>2]|0)-e;r=0;while(1){i=a[(a[A+272>>2]|0)+(r<<2)>>2]|0;if(!i){r=0;break}if((i|0)!=(a[A+280>>2]|0)){kV(a[((a[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0,e);A=a[f>>2]|0}r=r+1|0}while(1){i=a[(a[A+264>>2]|0)+(r<<2)>>2]|0;if(!i)break;if((i|0)!=(a[A+280>>2]|0)){kV(a[((a[i>>2]&3|0)==3?i:i+48|0)+40>>2]|0,e);A=a[f>>2]|0}r=r+1|0}return}function oV(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0;n=(r|0)==0&1;l=0-i|0;f=a[(a[e+16>>2]|0)+288>>2]|0;e=A;while(1){A=a[e+16>>2]|0;if((a[A+284>>2]|0)<=(f|0)?(f|0)<=(a[A+288>>2]|0):0)break;A=a[A+280>>2]|0;t=A+48|0;c=(a[A+16>>2]|0)+160|0;a[c>>2]=(((e|0)==(a[((a[A>>2]&3|0)==3?A:t)+40>>2]|0)?r:n)|0?i:l)+(a[c>>2]|0);c=a[A>>2]&3;t=a[((c|0)==3?A:t)+40>>2]|0;A=a[((c|0)==2?A:A+-48|0)+40>>2]|0;e=(a[(a[t+16>>2]|0)+288>>2]|0)>(a[(a[A+16>>2]|0)+288>>2]|0)?t:A}return e|0}function hV(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0;t=A+16|0;r=(a[t>>2]|0)+164|0;a[(a[e+16>>2]|0)+164>>2]=a[r>>2];a[(a[47256]|0)+(a[r>>2]<<2)>>2]=e;a[(a[t>>2]|0)+164>>2]=-1;t=(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)+16|0;r=a[t>>2]|0;n=r+276|0;f=a[n>>2]|0;c=f+-1|0;a[n>>2]=c;n=r+272|0;l=0;while(1){if((l|0)>=(f|0)){s=3;break}i=a[n>>2]|0;if((a[i+(l<<2)>>2]|0)==(A|0))break;l=l+1|0}if((s|0)==3)i=a[r+272>>2]|0;a[i+(l<<2)>>2]=a[i+(c<<2)>>2];a[(a[(a[t>>2]|0)+272>>2]|0)+(c<<2)>>2]=0;t=(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)+16|0;r=a[t>>2]|0;n=r+268|0;f=a[n>>2]|0;c=f+-1|0;a[n>>2]=c;n=r+264|0;l=0;while(1){if((l|0)>=(f|0)){s=8;break}i=a[n>>2]|0;if((a[i+(l<<2)>>2]|0)==(A|0))break;l=l+1|0}if((s|0)==8)i=a[r+264>>2]|0;a[i+(l<<2)>>2]=a[i+(c<<2)>>2];a[(a[(a[t>>2]|0)+264>>2]|0)+(c<<2)>>2]=0;s=(a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)+16|0;A=a[s>>2]|0;c=a[A+272>>2]|0;A=A+276|0;t=a[A>>2]|0;a[A>>2]=t+1;a[c+(t<<2)>>2]=e;s=a[s>>2]|0;a[(a[s+272>>2]|0)+(a[s+276>>2]<<2)>>2]=0;s=(a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)+16|0;t=a[s>>2]|0;c=a[t+264>>2]|0;t=t+268|0;A=a[t>>2]|0;a[t>>2]=A+1;a[c+(A<<2)>>2]=e;s=a[s>>2]|0;a[(a[s+264>>2]|0)+(a[s+268>>2]<<2)>>2]=0;return}function dV(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;n=A+16|0;A=a[n>>2]|0;a[A+280>>2]=e;a[A+284>>2]=i;f=0;while(1){r=a[(a[A+272>>2]|0)+(f<<2)>>2]|0;if(!r){f=0;break}if((r|0)!=(e|0)){i=dV(a[((a[r>>2]&3|0)==2?r:r+-48|0)+40>>2]|0,r,i)|0;A=a[n>>2]|0}f=f+1|0}while(1){r=a[(a[A+264>>2]|0)+(f<<2)>>2]|0;if(!r)break;if((r|0)!=(e|0)){i=dV(a[((a[r>>2]&3|0)==3?r:r+48|0)+40>>2]|0,r,i)|0;A=a[n>>2]|0}f=f+1|0}a[A+288>>2]=i;return i+1|0}function BV(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,t=0,c=0;t=A+16|0;f=0;while(1){A=a[t>>2]|0;i=a[(a[A+180>>2]|0)+(f<<2)>>2]|0;if(!i){i=0;break}r=a[i+16>>2]|0;if((a[r+164>>2]|0)<0){A=a[i>>2]&3;e=a[(a[((A|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0;c=a[e+288>>2]|0;if((a[47259]|0)>(c|0)|(c|0)>(a[47260]|0)?(n=(a[e+232>>2]|0)-(a[(a[(a[((A|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(l[r+170>>1]|0)|0,(n|0)<(a[47258]|0)|(a[47257]|0)==0):0){a[47257]=i;a[47258]=n}}else{e=a[((a[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0;if((a[(a[e+16>>2]|0)+288>>2]|0)<(a[A+288>>2]|0))BV(e)}f=f+1|0}while(1){e=a[(a[A+264>>2]|0)+(i<<2)>>2]|0;if(!((e|0)!=0&(a[47258]|0)>0))break;e=a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0;if((a[(a[e+16>>2]|0)+288>>2]|0)<(a[A+288>>2]|0)){BV(e);A=a[t>>2]|0}i=i+1|0}return}function gV(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,t=0,c=0;t=A+16|0;f=0;while(1){A=a[t>>2]|0;i=a[(a[A+172>>2]|0)+(f<<2)>>2]|0;if(!i){i=0;break}r=a[i+16>>2]|0;if((a[r+164>>2]|0)<0){A=a[i>>2]&3;e=a[(a[((A|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0;c=a[e+288>>2]|0;if((a[47259]|0)>(c|0)|(c|0)>(a[47260]|0)?(n=(a[(a[(a[((A|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(a[e+232>>2]|0)-(l[r+170>>1]|0)|0,(n|0)<(a[47258]|0)|(a[47257]|0)==0):0){a[47257]=i;a[47258]=n}}else{e=a[((a[i>>2]&3|0)==3?i:i+48|0)+40>>2]|0;if((a[(a[e+16>>2]|0)+288>>2]|0)<(a[A+288>>2]|0))gV(e)}f=f+1|0}while(1){e=a[(a[A+272>>2]|0)+(i<<2)>>2]|0;if(!((e|0)!=0&(a[47258]|0)>0))break;e=a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0;if((a[(a[e+16>>2]|0)+288>>2]|0)<(a[A+288>>2]|0)){gV(e);A=a[t>>2]|0}i=i+1|0}return}function vV(A){A=A|0;var e=0;e=qF(16)|0;a[e>>2]=A;a[e+4>>2]=VV(A,e)|0;a[e+12>>2]=e;return e|0}function EV(A,e){A=A|0;e=e|0;var i=0,r=0;r=qF(8)|0;a[r>>2]=A;a[r+4>>2]=e;i=0;while(1){if((i|0)>=(e|0))break;a[(a[A+(i<<2)>>2]|0)+8>>2]=i;i=i+1|0}i=(e|0)/2|0;while(1){if((i|0)<=-1)break;mV(r,i);i=i+-1|0}return r|0}function CV(A){A=A|0;return a[A+4>>2]|0}function IV(A){A=A|0;var e=0,i=0,r=0,f=0;f=a[A>>2]|0;e=a[f>>2]|0;a[e+8>>2]=-1;i=A+4|0;r=(a[i>>2]|0)+-1|0;a[f>>2]=a[f+(r<<2)>>2];f=a[A>>2]|0;a[(a[f>>2]|0)+8>>2]=0;a[f+(r<<2)>>2]=e;a[i>>2]=r;mV(A,0);return e|0}function ZV(A){A=A|0;return FV(a[A>>2]|0,0,0)|0}function GV(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,t=0;e=A+16|0;if((a[(a[e>>2]|0)+164>>2]|0)>-1)gA(102350,102331,463,102364);f=A+48|0;i=zV(a[((a[A>>2]&3|0)==3?A:f)+40>>2]|0)|0;t=A+-48|0;r=zV(a[((a[A>>2]&3|0)==2?A:t)+40>>2]|0)|0;n=a[A>>2]&3;e=(a[(a[(a[((n|0)==2?A:t)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(a[(a[(a[((n|0)==3?A:f)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(l[(a[e>>2]|0)+170>>1]|0)|0;if((a[i+8>>2]|0)==-1)YV(a[i>>2]|0,0,e);else YV(a[r>>2]|0,0,0-e|0);DV(A);return MV(i,r)|0}function mV(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;l=a[A>>2]|0;n=a[A+4>>2]|0;while(1){A=e<<1;f=A+2|0;A=A|1;if(!((A|0)<(n|0)?(a[(a[l+(A<<2)>>2]|0)+4>>2]|0)<(a[(a[l+(e<<2)>>2]|0)+4>>2]|0):0))A=e;if((f|0)>=(n|0))break;i=l+(f<<2)|0;r=a[i>>2]|0;if((f|0)==(e|0)?1:(a[r+4>>2]|0)>=(a[(a[l+(A<<2)>>2]|0)+4>>2]|0))break;t=l+(e<<2)|0;A=a[t>>2]|0;a[t>>2]=r;a[i>>2]=A;a[(a[t>>2]|0)+8>>2]=e;a[A+8>>2]=f;e=f}return}function QV(){dV(a[(a[(a[47254]|0)+16>>2]|0)+192>>2]|0,0,1)|0;LV(a[(a[(a[47254]|0)+16>>2]|0)+192>>2]|0,0);return}function LV(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;f=A+16|0;i=0;while(1){A=a[f>>2]|0;r=a[(a[A+272>>2]|0)+(i<<2)>>2]|0;if(!r){r=0;break}if((r|0)!=(e|0))LV(a[((a[r>>2]&3|0)==2?r:r+-48|0)+40>>2]|0,r);i=i+1|0}while(1){i=a[(a[A+264>>2]|0)+(r<<2)>>2]|0;if(!i)break;if((i|0)!=(e|0)){LV(a[((a[i>>2]&3|0)==3?i:i+48|0)+40>>2]|0,i);A=a[f>>2]|0}r=r+1|0}if(e|0)yV(e);return}function yV(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0;e=a[A>>2]&3;i=a[((e|0)==3?A:A+48|0)+40>>2]|0;r=a[i+16>>2]|0;if((a[r+280>>2]|0)==(A|0))t=1;else{r=a[((e|0)==2?A:A+-48|0)+40>>2]|0;t=-1;i=r;r=a[r+16>>2]|0}n=a[r+180>>2]|0;e=0;f=0;while(1){l=a[n+(f<<2)>>2]|0;if(!l)break;e=(WV(l,i,t)|0)+e|0;f=f+1|0}n=a[r+172>>2]|0;r=0;while(1){f=a[n+(r<<2)>>2]|0;if(!f)break;e=(WV(f,i,t)|0)+e|0;r=r+1|0}a[(a[A+16>>2]|0)+160>>2]=e;return}function WV(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0;l=a[A>>2]&3;t=(l|0)==3?A:A+48|0;r=a[t+40>>2]|0;if((r|0)==(e|0))r=a[((l|0)==2?A:A+-48|0)+40>>2]|0;n=a[e+16>>2]|0;f=a[(a[r+16>>2]|0)+288>>2]|0;if((a[n+284>>2]|0)<=(f|0)?(f|0)<=(a[n+288>>2]|0):0){f=a[A+16>>2]|0;if((a[f+164>>2]|0)>-1)r=a[f+160>>2]|0;else r=0;n=1;r=r-(a[f+156>>2]|0)|0}else{n=0;r=a[(a[A+16>>2]|0)+156>>2]|0}t=(a[((i|0)>0?(l|0)==2?A:A+-48|0:t)+40>>2]|0)==(e|0)?1:-1;return(((n?t:0-t|0)|0)<0?0-r|0:r)|0}function zV(A){A=A|0;var e=0,i=0;A=a[(a[A+16>>2]|0)+280>>2]|0;while(1){e=A+12|0;i=a[e>>2]|0;if(!((i|0)!=(A|0)&(i|0)!=0))break;A=a[i+12>>2]|0;if(!A){A=i;continue}a[e>>2]=A}return A|0}function YV(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;l=A+16|0;r=a[l>>2]|0;n=r+232|0;a[n>>2]=(a[n>>2]|0)+i;n=0;while(1){f=a[(a[r+264>>2]|0)+(n<<2)>>2]|0;if(!f){n=0;break}f=a[((a[f>>2]&3|0)==3?f:f+48|0)+40>>2]|0;if((f|0)!=(e|0)){YV(f,A,i);r=a[l>>2]|0}n=n+1|0}while(1){f=a[(a[r+272>>2]|0)+(n<<2)>>2]|0;if(!f)break;f=a[((a[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;if((f|0)!=(e|0)){YV(f,A,i);r=a[l>>2]|0}n=n+1|0}return}function DV(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;l=k;k=k+32|0;e=(a[A+16>>2]|0)+164|0;if((a[e>>2]|0)>-1){ao(1,102453,l)|0;fe(188848,1)}n=a[47255]|0;a[e>>2]=n;e=a[47256]|0;a[47255]=n+1;a[e+(n<<2)>>2]=A;e=a[A>>2]|0;n=A+48|0;i=a[((e&3|0)==3?A:n)+40>>2]|0;if(!(r[(a[i+16>>2]|0)+157>>0]|0)){f=a[47262]|0;e=a[47263]|0;a[47263]=e+1;a[f+(e<<2)>>2]=i;e=a[A>>2]|0}f=A+-48|0;i=a[((e&3|0)==2?A:f)+40>>2]|0;if(!(r[(a[i+16>>2]|0)+157>>0]|0)){t=a[47262]|0;e=a[47263]|0;a[47263]=e+1;a[t+(e<<2)>>2]=i;e=a[A>>2]|0}t=(a[((e&3|0)==3?A:n)+40>>2]|0)+16|0;e=a[t>>2]|0;r[e+157>>0]=1;i=a[e+272>>2]|0;e=e+276|0;n=a[e>>2]|0;a[e>>2]=n+1;a[i+(n<<2)>>2]=A;n=a[t>>2]|0;a[(a[n+272>>2]|0)+(a[n+276>>2]<<2)>>2]=0;t=a[t>>2]|0;if(!(a[(a[t+180>>2]|0)+((a[t+276>>2]|0)+-1<<2)>>2]|0)){ao(1,102487,l+8|0)|0;fe(188848,1)}t=(a[((a[A>>2]&3|0)==2?A:f)+40>>2]|0)+16|0;i=a[t>>2]|0;r[i+157>>0]=1;f=a[i+264>>2]|0;i=i+268|0;n=a[i>>2]|0;a[i>>2]=n+1;a[f+(n<<2)>>2]=A;A=a[t>>2]|0;a[(a[A+264>>2]|0)+(a[A+268>>2]<<2)>>2]=0;t=a[t>>2]|0;if(!(a[(a[t+172>>2]|0)+((a[t+268>>2]|0)+-1<<2)>>2]|0)){ao(1,102522,l+16|0)|0;fe(188848,1)}else{k=l;return}}function MV(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0;while(1){n=A+12|0;i=a[n>>2]|0;if((i|0)==0|(i|0)==(A|0))break;else A=i}while(1){f=e+12|0;i=a[f>>2]|0;if((i|0)==0|(i|0)==(e|0))break;else e=i}if((A|0)!=(e|0)){r=a[A+8>>2]|0;i=a[e+8>>2]|0;do{if((r|0)>-1)if((i|0)==-1)l=A;else c=10;else if((i|0)>-1)if((r|0)==-1){l=e;break}else{c=10;break}else gA(102376,102331,327,102423)}while(0);if((c|0)==10)l=(a[e+4>>2]|0)<(a[A+4>>2]|0)?A:e;a[f>>2]=l;a[n>>2]=l;a[l+4>>2]=(a[e+4>>2]|0)+(a[A+4>>2]|0);if((a[l+8>>2]|0)>-1)t=l;else gA(102434,102331,335,102423)}else t=A;return t|0}function FV(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,t=0,c=0,s=0,b=0,u=0;b=zV(A)|0;if(i){s=a[i>>2]&3;if(((a[(a[(a[((s|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(a[(a[(a[((s|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0)!=(l[(a[i+16>>2]|0)+170>>1]|0|0))r=3}else{i=0;r=3}A:do{if((r|0)==3){s=A+16|0;c=0;while(1){r=a[s>>2]|0;t=a[(a[r+180>>2]|0)+(c<<2)>>2]|0;if(!t){c=0;break}r=t+16|0;f=t+-48|0;n=a[((a[t>>2]&3|0)==2?t:f)+40>>2]|0;do{if((a[(a[r>>2]|0)+164>>2]|0)>-1){if((n|0)!=(e|0))i=FV(n,A,i)|0}else if((zV(n)|0)!=(b|0)){if(i|0?(u=a[t>>2]&3,n=a[i>>2]&3,((a[(a[(a[((u|0)==2?t:f)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(a[(a[(a[((u|0)==3?t:t+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(l[(a[r>>2]|0)+170>>1]|0)|0)>=((a[(a[(a[((n|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(a[(a[(a[((n|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(l[(a[i+16>>2]|0)+170>>1]|0)|0)):0)break;i=t}}while(0);c=c+1|0}while(1){r=a[(a[r+172>>2]|0)+(c<<2)>>2]|0;if(!r)break A;f=r+16|0;n=r+48|0;t=a[((a[r>>2]&3|0)==3?r:n)+40>>2]|0;do{if((a[(a[f>>2]|0)+164>>2]|0)>-1){if((t|0)!=(e|0))i=FV(t,A,i)|0}else if((zV(t)|0)!=(b|0)){if(i|0?(t=a[r>>2]&3,u=a[i>>2]&3,((a[(a[(a[((t|0)==2?r:r+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(a[(a[(a[((t|0)==3?r:n)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(l[(a[f>>2]|0)+170>>1]|0)|0)>=((a[(a[(a[((u|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(a[(a[(a[((u|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(l[(a[i+16>>2]|0)+170>>1]|0)|0)):0)break;i=r}}while(0);c=c+1|0;r=a[s>>2]|0}}}while(0);return i|0}function VV(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0;b=A+16|0;i=a[b>>2]|0;a[i+280>>2]=e;A=1;n=0;while(1){f=a[(a[i+172>>2]|0)+(n<<2)>>2]|0;if(!f){n=0;break}r=a[f+16>>2]|0;if(((a[r+164>>2]|0)<=-1?(t=a[f>>2]&3,c=f+48|0,s=a[(a[((t|0)==3?f:c)+40>>2]|0)+16>>2]|0,(a[s+280>>2]|0)==0):0)?((a[(a[(a[((t|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)-(a[s+232>>2]|0)|0)==(l[r+170>>1]|0|0):0){DV(f);A=(VV(a[((a[f>>2]&3|0)==3?f:c)+40>>2]|0,e)|0)+A|0;i=a[b>>2]|0}n=n+1|0}while(1){r=a[(a[i+180>>2]|0)+(n<<2)>>2]|0;if(!r)break;f=a[r+16>>2]|0;if(((a[f+164>>2]|0)<=-1?(u=a[r>>2]&3,w=r+-48|0,k=a[(a[((u|0)==2?r:w)+40>>2]|0)+16>>2]|0,(a[k+280>>2]|0)==0):0)?((a[k+232>>2]|0)-(a[(a[(a[((u|0)==3?r:r+48|0)+40>>2]|0)+16>>2]|0)+232>>2]|0)|0)==(l[f+170>>1]|0|0):0){DV(r);A=(VV(a[((a[r>>2]&3|0)==2?r:w)+40>>2]|0,e)|0)+A|0;i=a[b>>2]|0}n=n+1|0}return A|0}function JV(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=Ho(A,102586)|0;if(!r)r=30;else r=q3(r)|0;return iV(A,e,i,r)|0}function pV(A){A=+A;return+(true?A:undefined)}function NV(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0.0,g=0.0,v=0;d=k;k=k+16|0;h=d;a[47264]=a[(a[(a[e+64>>2]|0)+8>>2]|0)+4>>2];RV(e);l=a[e+16>>2]|0;g=+s[l+32>>3];B=+s[l+40>>3];XV(i,102597,+s[A+352>>3]);XV(i,102604,g*.013888888888888888);XV(i,102604,B*.013888888888888888);HV(i);l=cd(e)|0;while(1){if(!l)break;n=l+16|0;if(!(r[(a[n>>2]|0)+118>>0]|0)){UV(i,102606,$B(Vh(l)|0)|0);o=(a[n>>2]|0)+16|0;a[h>>2]=a[o>>2];a[h+4>>2]=a[o+4>>2];a[h+8>>2]=a[o+8>>2];a[h+12>>2]=a[o+12>>2];xV(i,h);if(!(r[(a[(a[n>>2]|0)+104>>2]|0)+82>>0]|0)){A=Id(l)|0;A=TV(A,a[a[(a[n>>2]|0)+104>>2]>>2]|0)|0}else A=$B(Uo(l,a[47154]|0)|0)|0;XV(i,102604,+s[(a[n>>2]|0)+32>>3]);XV(i,102604,+s[(a[n>>2]|0)+40>>3]);UV(i,102604,A);UV(i,102604,BR(l,a[47157]|0,111067)|0);UV(i,102604,a[a[(a[n>>2]|0)+8>>2]>>2]|0);UV(i,102604,BR(l,a[47148]|0,137314)|0);A=BR(l,a[47149]|0,195059)|0;if(!(r[A>>0]|0))A=BR(l,a[47148]|0,134800)|0;UV(i,102604,A);HV(i)}l=sd(e,l)|0}w=f<<24>>24==0;u=cd(e)|0;while(1){if(!u)break;b=Oo(e,u)|0;while(1){if(!b)break;if(w){f=195059;t=195059}else{t=Ho(b,111455)|0;f=Ho(b,111464)|0;f=f|0?f:195059;t=t|0?t:195059}o=b+16|0;A=a[o>>2]|0;c=a[A+8>>2]|0;A:do{if(c){l=a[c+4>>2]|0;A=0;n=0;while(1){if((A|0)>=(l|0))break;v=(a[(a[c>>2]|0)+(A*48|0)+4>>2]|0)+n|0;A=A+1|0;n=v}UV(i,0,111450);jV(i,a[((a[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0,t);jV(i,a[((a[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0,f);PV(i,n);f=0;while(1){A=a[o>>2]|0;n=a[A+8>>2]|0;if((f|0)>=(a[n+4>>2]|0))break A;l=a[n>>2]|0;n=a[l+(f*48|0)>>2]|0;l=a[l+(f*48|0)+4>>2]|0;A=0;while(1){if((A|0)>=(l|0))break;v=n+(A<<4)|0;a[h>>2]=a[v>>2];a[h+4>>2]=a[v+4>>2];a[h+8>>2]=a[v+8>>2];a[h+12>>2]=a[v+12>>2];xV(i,h);A=A+1|0}f=f+1|0}}}while(0);if(a[A+96>>2]|0){v=Id(a[((a[b>>2]&3|0)==3?b:b+48|0)+40>>2]|0)|0;UV(i,102604,TV(v,a[a[(a[o>>2]|0)+96>>2]>>2]|0)|0);v=(a[(a[o>>2]|0)+96>>2]|0)+56|0;a[h>>2]=a[v>>2];a[h+4>>2]=a[v+4>>2];a[h+8>>2]=a[v+8>>2];a[h+12>>2]=a[v+12>>2];xV(i,h)}UV(i,102604,BR(b,a[47185]|0,111067)|0);UV(i,102604,BR(b,a[47176]|0,137314)|0);HV(i);b=_o(e,b)|0}u=sd(e,u)|0}SV(102612,i);k=d;return}function RV(A){A=A|0;var e=0.0;if(0){}return}function XV(A,e,i){A=A|0;e=e|0;i=+i;var r=0,f=0,a=0;a=k;k=k+1040|0;f=a;r=a+8|0;if(e|0)SV(e,A);s[f>>3]=i;S4(r,102618,f)|0;SV(r,A);k=a;return}function HV(A){A=A|0;r[194955]=10;Q5[a[47264]&127](A,194955)|0;return}function UV(A,e,i){A=A|0;e=e|0;i=i|0;if(e|0)SV(e,A);SV(i,A);return}function xV(A,e){A=A|0;e=e|0;var i=0.0;XV(A,102604,+s[e>>3]*.013888888888888888);if(true)i=+s[e+8>>3];else{}XV(A,102604,i*.013888888888888888);return}function TV(A,e){A=A|0;e=e|0;var i=0;i=aB(A,e)|0;e=$B(i)|0;lB(A,i)|0;return e|0}function jV(A,e,i){A=A|0;e=e|0;i=i|0;var f=0;if(!(r[(a[e+16>>2]|0)+118>>0]|0))e=$B(Vh(e)|0)|0;else{f=Id(e)|0;e=TV(f,(G1(Vh(e)|0,58)|0)+1|0)|0}UV(A,102604,e);if(i|0?r[i>>0]|0:0)UV(A,107984,$B(i)|0);return}function PV(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=k;k=k+1040|0;f=i;r=i+8|0;SV(102604,A);a[f>>2]=e;S4(r,137395,f)|0;SV(r,A);k=i;return}function SV(A,e){A=A|0;e=e|0;Q5[a[47264]&127](e,A)|0;return}function OV(A,e,i){A=A|0;e=e|0;i=i|0;var n=0,t=0,c=0,b=0.0,u=0,w=0.0,o=0,h=0.0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,U=0,x=0,T=0,j=0,P=0,S=0,O=0,K=0;K=k;k=k+2288|0;S=K+208|0;P=K+192|0;j=K+176|0;T=K+160|0;x=K+144|0;U=K+128|0;X=K+112|0;R=K+96|0;N=K+80|0;p=K+64|0;J=K+56|0;V=K+48|0;O=K+32|0;H=K+24|0;F=K;W=K+1264|0;z=K+224|0;Y=A+16|0;L=(l[(a[Y>>2]|0)+178>>1]|0)>2;nF(1);RV(A);co(z,1024,K+240|0);oX(A,1,102623,195059)|0;oX(A,1,102627,195059)|0;a[47146]=oX(A,1,141116,195059)|0;a[47145]=oX(A,1,141048,195059)|0;oX(A,2,102623,195059)|0;n=r[(a[Y>>2]|0)+113>>0]|0;if(n&16){oX(A,1,102633,195059)|0;n=r[(a[Y>>2]|0)+113>>0]|0}if(n&1){oX(A,2,102637,195059)|0;n=r[(a[Y>>2]|0)+113>>0]|0}if(n&32){oX(A,2,102633,195059)|0;n=r[(a[Y>>2]|0)+113>>0]|0}if(n&2){oX(A,2,102640,195059)|0;n=r[(a[Y>>2]|0)+113>>0]|0}if(n&4){oX(A,2,102648,195059)|0;n=r[(a[Y>>2]|0)+113>>0]|0}if(!(n&8)){E=0;C=0;I=0}else{I=oX(A,0,102637,195059)|0;C=oX(A,0,102656,195059)|0;E=oX(A,0,102663,195059)|0}G=oX(A,0,102671,195059)|0;m=z+4|0;Q=z+8|0;v=0;n=0;Z=cd(A)|0;while(1){if(!Z)break;g=Z+16|0;c=a[g>>2]|0;w=+s[c+16>>3];t=0==0;if(L){if(t)b=+s[c+24>>3];else b=+s[23301]-+s[c+24>>3];h=+s[(a[c+132>>2]|0)+16>>3]*72.0;s[F>>3]=w;s[F+8>>3]=b;s[F+16>>3]=h;S4(W,102674,F)|0;uo(z,W)|0;t=3;while(1){if((t|0)>=(l[(a[Y>>2]|0)+178>>1]|0))break;s[H>>3]=+s[(a[(a[g>>2]|0)+132>>2]|0)+(t<<3)>>3]*72.0;S4(W,102689,H)|0;uo(z,W)|0;t=t+1|0}t=a[m>>2]|0;if(t>>>0>=(a[Q>>2]|0)>>>0){so(z,1)|0;t=a[m>>2]|0}r[t>>0]=0;B=a[z>>2]|0;a[m>>2]=B;xo(Z,102623,B)|0;B=Z}else{if(t)b=+s[c+24>>3];else b=+s[23301]-+s[c+24>>3];s[O>>3]=w;s[O+8>>3]=b;S4(W,102695,O)|0;xo(Z,102623,W)|0;B=Z}s[V>>3]=+s[(a[g>>2]|0)+80>>3]*.013888888888888888;S4(W,102618,V)|0;Vo(B,a[47145]|0,W)|0;t=a[g>>2]|0;s[J>>3]=(+s[t+96>>3]+ +s[t+88>>3])*.013888888888888888;S4(W,102618,J)|0;Vo(B,a[47146]|0,W)|0;t=a[g>>2]|0;c=a[t+108>>2]|0;if((c|0)!=0?(r[c+81>>0]|0)!=0:0){h=+s[c+64>>3];h=true?h:undefined;s[p>>3]=+s[c+56>>3];s[p+8>>3]=h;S4(W,102695,p)|0;xo(B,102633,W)|0;t=a[g>>2]|0}if(A1(a[a[t+8>>2]>>2]|0,106220)|0){if(a[47170]|0?(Zp(Z)|0)<<24>>24:0){c=a[(a[g>>2]|0)+12>>2]|0;d=c+8|0;t=a[d>>2]|0;if((t|0)<3){t=Ho(B,102705)|0;if(!t)t=8;else t=q3(t)|0;t=(t|0)<3?8:t}o=c+44|0;h=1.0/+(t|0);u=0;while(1){if((u|0)>=(t|0))break;if((u|0)>0){c=a[m>>2]|0;if(c>>>0>=(a[Q>>2]|0)>>>0){so(z,1)|0;c=a[m>>2]|0}a[m>>2]=c+1;r[c>>0]=32}if((a[d>>2]|0)>2){c=a[o>>2]|0;if(true)b=+s[c+(u<<4)+8>>3]*.013888888888888888;else{}s[N>>3]=+s[c+(u<<4)>>3]*.013888888888888888;s[N+8>>3]=b;S4(W,102718,N)|0}else{c=a[g>>2]|0;b=h*+(u|0)*6.283185307179586;w=+s[c+32>>3]*.5*+D(+b);if(true)b=+s[c+40>>3]*.5*+M(+b);else{}s[R>>3]=w;s[R+8>>3]=b;S4(W,102718,R)|0}uo(z,W)|0;u=u+1|0}c=a[47170]|0;t=a[m>>2]|0;if(t>>>0>=(a[Q>>2]|0)>>>0){so(z,1)|0;t=a[m>>2]|0}r[t>>0]=0;g=a[z>>2]|0;a[m>>2]=g;Vo(B,c,g)|0}}else{KV(Z,a[t+12>>2]|0,z);ko(z)|0;t=a[m>>2]|0;if(t>>>0>=(a[Q>>2]|0)>>>0){so(z,1)|0;t=a[m>>2]|0}r[t>>0]=0;g=a[z>>2]|0;a[m>>2]=g;xo(B,102627,g)|0}A:do{if((a[47138]|0)>0){g=Oo(A,Z)|0;t=v;while(1){if(!g)break A;B=g+16|0;c=a[B>>2]|0;do{if((r[c+112>>0]|0)!=6?(y=a[c+8>>2]|0,(y|0)!=0):0){d=0;c=y;while(1){if((d|0)>=(a[c+4>>2]|0))break;if((d|0)>0){c=a[m>>2]|0;if(c>>>0>=(a[Q>>2]|0)>>>0){so(z,1)|0;c=a[m>>2]|0}a[m>>2]=c+1;r[c>>0]=59;c=a[(a[B>>2]|0)+8>>2]|0}c=a[c>>2]|0;if(a[c+(d*48|0)+8>>2]|0){if(true)b=+s[c+(d*48|0)+24>>3];else{}s[X>>3]=+s[c+(d*48|0)+16>>3];s[X+8>>3]=b;S4(W,102728,X)|0;uo(z,W)|0;n=1;c=a[a[(a[B>>2]|0)+8>>2]>>2]|0}if(a[c+(d*48|0)+12>>2]|0){if(true)b=+s[c+(d*48|0)+40>>3];else{}s[U>>3]=+s[c+(d*48|0)+32>>3];s[U+8>>3]=b;S4(W,102741,U)|0;uo(z,W)|0;t=1}o=0;while(1){c=a[(a[B>>2]|0)+8>>2]|0;u=a[c>>2]|0;if((o|0)>=(a[u+(d*48|0)+4>>2]|0))break;if((o|0)>0){c=a[m>>2]|0;if(c>>>0>=(a[Q>>2]|0)>>>0){so(z,1)|0;c=a[m>>2]|0}a[m>>2]=c+1;r[c>>0]=32;c=a[a[(a[B>>2]|0)+8>>2]>>2]|0}else c=u;v=a[c+(d*48|0)>>2]|0;h=+s[v+(o<<4)+8>>3];h=true?h:undefined;s[x>>3]=+s[v+(o<<4)>>3];s[x+8>>3]=h;S4(W,102695,x)|0;uo(z,W)|0;o=o+1|0}d=d+1|0}c=a[m>>2]|0;if(c>>>0>=(a[Q>>2]|0)>>>0){so(z,1)|0;c=a[m>>2]|0}r[c>>0]=0;c=a[z>>2]|0;a[m>>2]=c;xo(g,102623,c)|0;c=a[B>>2]|0;u=a[c+96>>2]|0;if(u){h=+s[u+64>>3];h=true?h:undefined;s[T>>3]=+s[u+56>>3];s[T+8>>3]=h;S4(W,102695,T)|0;xo(g,102637,W)|0;c=a[B>>2]|0}u=a[c+108>>2]|0;do{if(u){if(!(r[u+81>>0]|0))break;h=+s[u+64>>3];h=true?h:undefined;s[j>>3]=+s[u+56>>3];s[j+8>>3]=h;S4(W,102695,j)|0;xo(g,102633,W)|0;c=a[B>>2]|0}}while(0);u=a[c+100>>2]|0;if(u){h=+s[u+64>>3];h=true?h:undefined;s[P>>3]=+s[u+56>>3];s[P+8>>3]=h;S4(W,102695,P)|0;xo(g,102640,W)|0;c=a[B>>2]|0}c=a[c+104>>2]|0;if(!c)break;h=+s[c+64>>3];h=true?h:undefined;s[S>>3]=+s[c+56>>3];s[S+8>>3]=h;S4(W,102695,S)|0;xo(g,102648,W)|0}}while(0);g=_o(A,g)|0}}else t=v}while(0);v=t;Z=sd(A,Z)|0}_V(A,G,I,C,E);wo(z);if(f[(a[Y>>2]|0)+136>>1]&1)cX(A);a[e>>2]=n;a[i>>2]=v;nF(0);k=K;return}function KV(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0.0,n=0.0,l=0.0,t=0,c=0,b=0,u=0,w=0.0;u=k;k=k+1056|0;c=u;t=u+32|0;b=e+48|0;if(!(a[b>>2]|0)){r=a[A+16>>2]|0;l=+s[r+16>>3];if(true){n=+s[r+24>>3];f=n+ +s[e+24>>3];n=n+ +s[e+40>>3]}else{}w=l+ +s[e+32>>3];s[c>>3]=l+ +s[e+16>>3];s[c+8>>3]=f;s[c+16>>3]=w;s[c+24>>3]=n;S4(t,102779,c)|0;uo(i,t)|0}e=e+56|0;r=0;while(1){if((r|0)>=(a[b>>2]|0))break;KV(A,a[(a[e>>2]|0)+(r<<2)>>2]|0,i);r=r+1|0}k=u;return}function _V(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0.0,b=0.0,u=0,w=0,o=0,h=0,d=0,B=0,g=0.0;B=k;k=k+1088|0;w=B+56|0;h=B+48|0;o=B+32|0;t=B;u=B+64|0;d=A+16|0;l=a[d>>2]|0;if(true){c=+s[l+24>>3];b=+s[l+40>>3]}else{}g=+s[l+32>>3];s[t>>3]=+s[l+16>>3];s[t+8>>3]=c;s[t+16>>3]=g;s[t+24>>3]=b;S4(u,102754,t)|0;Vo(A,e,u)|0;l=a[(a[d>>2]|0)+12>>2]|0;if((l|0)!=0?(r[a[l>>2]>>0]|0)!=0:0){g=+s[l+64>>3];g=true?g:undefined;s[o>>3]=+s[l+56>>3];s[o+8>>3]=g;S4(u,102695,o)|0;Vo(A,i,u)|0;l=a[(a[d>>2]|0)+12>>2]|0;g=+s[l+32>>3];s[h>>3]=+s[l+24>>3]*.013888888888888888;S4(u,102774,h)|0;Vo(A,f,u)|0;s[w>>3]=g*.013888888888888888;S4(u,102774,w)|0;Vo(A,n,u)|0;l=1}else l=1;while(1){t=a[d>>2]|0;if((l|0)>(a[t+180>>2]|0))break;_V(a[(a[t+184>>2]|0)+(l<<2)>>2]|0,e,i,f,n);l=l+1|0}k=B;return}function qV(A){A=A|0;var e=0;e=k;k=k+16|0;OV(A,e,e+4|0);k=e;return}function $V(){return jk(20740,a[4581]|0)|0}function AJ(A,e,i){A=A|0;e=e|0;i=i|0;L2(e);return}function eJ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;A=a[e>>2]|0;r=a[i>>2]|0;if((A|0)<=(r|0))if((A|0)<(r|0))A=-1;else{e=a[e+4>>2]|0;i=a[i+4>>2]|0;return((e|0)>(i|0)?1:((e|0)<(i|0))<<31>>31)|0}else A=1;return A|0}function iJ(A){A=A|0;Hk(A)|0;return}function rJ(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+16|0;r=i;a[r>>2]=a[e>>2];a[r+4>>2]=a[e+4>>2];e=fJ(r)|0;if((y5[a[A>>2]&63](A,e,1)|0)!=(e|0))L2(e);k=i;return}function fJ(A){A=A|0;var e=0,i=0,r=0;e=qF(16)|0;r=A;i=a[r+4>>2]|0;A=e+8|0;a[A>>2]=a[r>>2];a[A+4>>2]=i;return e|0}function aJ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;r=k;k=k+16|0;f=r+8|0;n=r;a[n>>2]=e;a[n+4>>2]=i;a[f>>2]=a[n>>2];a[f+4>>2]=a[n+4>>2];e=fJ(f)|0;if((y5[a[A>>2]&63](A,e,1)|0)!=(e|0))L2(e);k=r;return}function nJ(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;i=k;k=k+16|0;r=i;n=e;f=a[n+4>>2]|0;e=r+8|0;a[e>>2]=a[n>>2];a[e+4>>2]=f;e=(y5[a[A>>2]&63](A,r,4)|0)!=0&1;k=i;return e|0}function lJ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;r=k;k=k+16|0;f=r;a[f+8>>2]=e;a[f+12>>2]=i;i=(y5[a[A>>2]&63](A,f,4)|0)!=0&1;k=r;return i|0}function tJ(A){A=A|0;return Sk(A)|0}function cJ(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;i=qF((Sk(A)|0)<<3)|0;e=i;A=xk(A)|0;while(1){if(!A)break;n=A+8|0;f=a[n+4>>2]|0;r=e;a[r>>2]=a[n>>2];a[r+4>>2]=f;e=e+8|0;A=a[A>>2]|0}return i|0}function sJ(){var A=0,e=0,i=0,r=0;A=$F(40)|0;e=A;i=20776;r=e+36|0;do{a[e>>2]=a[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(r|0));a[A+36>>2]=0;return jk(A,a[4581]|0)|0}function bJ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;i=i+36|0;A=a[i>>2]|0;if(!A)A=$F(20)|0;else a[i>>2]=a[A>>2];f=e+8|0;r=a[f+4>>2]|0;i=A+8|0;a[i>>2]=a[f>>2];a[i+4>>2]=r;a[A+16>>2]=a[e+16>>2];return A|0}function uJ(A,e,i){A=A|0;e=e|0;i=i|0;i=i+36|0;a[e>>2]=a[i>>2];a[i>>2]=e;return}function wJ(A){A=A|0;y5[a[A>>2]&63](A,0,64)|0;return}function kJ(A){A=A|0;var e=0,i=0;e=a[A+4>>2]|0;Hk(A)|0;A=a[e+36>>2]|0;while(1){if(!A)break;i=a[A>>2]|0;L2(A);A=i}L2(e);return}function oJ(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0;f=k;k=k+32|0;n=f;a[n+8>>2]=e;a[n+12>>2]=i;a[n+16>>2]=r;r=a[(y5[a[A>>2]&63](A,n,1)|0)+16>>2]|0;k=f;return r|0}function hJ(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0.0,n=0.0,l=0.0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0;g=k;k=k+160|0;h=g+144|0;i=g+48|0;t=g+128|0;c=g+112|0;b=g+96|0;u=g+80|0;w=g+32|0;o=g+16|0;d=g;B=A+16|0;A=a[B>>2]|0;r=+s[A+16>>3];f=+s[A+24>>3];n=+s[A+32>>3];l=+s[A+40>>3];if((e+-1|0)>>>0<2){dJ(t,r,l);a[h>>2]=a[t>>2];a[h+4>>2]=a[t+4>>2];a[h+8>>2]=a[t+8>>2];a[h+12>>2]=a[t+12>>2];BJ(i,h);o=i+16|0;dJ(c,n,f);a[h>>2]=a[c>>2];a[h+4>>2]=a[c+4>>2];a[h+8>>2]=a[c+8>>2];a[h+12>>2]=a[c+12>>2];BJ(b,h);a[o>>2]=a[b>>2];a[o+4>>2]=a[b+4>>2];a[o+8>>2]=a[b+8>>2];a[o+12>>2]=a[b+12>>2]}else{dJ(u,r,f);a[h>>2]=a[u>>2];a[h+4>>2]=a[u+4>>2];a[h+8>>2]=a[u+8>>2];a[h+12>>2]=a[u+12>>2];BJ(i,h);u=i+16|0;dJ(w,n,l);a[h>>2]=a[w>>2];a[h+4>>2]=a[w+4>>2];a[h+8>>2]=a[w+8>>2];a[h+12>>2]=a[w+12>>2];BJ(o,h);a[u>>2]=a[o>>2];a[u+4>>2]=a[o+4>>2];a[u+8>>2]=a[o+8>>2];a[u+12>>2]=a[o+12>>2]}A=(a[B>>2]|0)+16|0;a[A>>2]=a[i>>2];a[A+4>>2]=a[i+4>>2];a[A+8>>2]=a[i+8>>2];a[A+12>>2]=a[i+12>>2];a[A+16>>2]=a[i+16>>2];a[A+20>>2]=a[i+20>>2];a[A+24>>2]=a[i+24>>2];a[A+28>>2]=a[i+28>>2];A=a[(a[B>>2]|0)+12>>2]|0;if(!A)A=1;else{A=A+56|0;a[h>>2]=a[A>>2];a[h+4>>2]=a[A+4>>2];a[h+8>>2]=a[A+8>>2];a[h+12>>2]=a[A+12>>2];BJ(d,h);a[A>>2]=a[d>>2];a[A+4>>2]=a[d+4>>2];a[A+8>>2]=a[d+8>>2];a[A+12>>2]=a[d+12>>2];A=1}while(1){i=a[B>>2]|0;if((A|0)>(a[i+180>>2]|0))break;hJ(a[(a[i+184>>2]|0)+(A<<2)>>2]|0,e);A=A+1|0}k=g;return}function dJ(A,e,i){A=A|0;e=+e;i=+i;s[A>>3]=e;s[A+8>>3]=i;return}function BJ(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;i=k;k=k+32|0;n=i+16|0;r=i;f=(a[47265]|0)*90|0;a[n>>2]=a[e>>2];a[n+4>>2]=a[e+4>>2];a[n+8>>2]=a[e+8>>2];a[n+12>>2]=a[e+12>>2];yF(r,n,f);a[e>>2]=a[r>>2];a[e+4>>2]=a[r+4>>2];a[e+8>>2]=a[r+8>>2];a[e+12>>2]=a[r+12>>2];s[e>>3]=+s[e>>3]-+s[23303];r=e+8|0;s[r>>3]=+s[r>>3]-+s[23304];a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];k=i;return}function gJ(A,e){A=A|0;e=e|0;var i=0,f=0.0,n=0,l=0,t=0.0,c=0.0,b=0,u=0.0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0;C=k;k=k+1168|0;B=C+144|0;E=C+96|0;v=C+64|0;g=C+48|0;w=C+32|0;o=C+16|0;h=C;a[g>>2]=0;a[g+4>>2]=0;a[g+8>>2]=0;a[g+12>>2]=0;d=A+16|0;b=a[(a[d>>2]|0)+116>>2]|0;a[47265]=b&3;b=b&1;r[194957]=b;if(!(b<<24>>24))EJ(A);else vJ(A);CJ(A);b=a[d>>2]|0;i=a[b+12>>2]|0;do{if(i|0?(r[i+81>>0]|0)==0:0){n=i+24|0;a[g>>2]=a[n>>2];a[g+4>>2]=a[n+4>>2];a[g+8>>2]=a[n+8>>2];a[g+12>>2]=a[n+12>>2];u=+s[g>>3]+16.0;s[g>>3]=u;n=g+8|0;f=+s[n>>3]+8.0;s[n>>3]=f;n=(r[b+275>>0]&1)!=0;if(r[194957]|0){if(n){l=b+32|0;s[l>>3]=+s[l>>3]+f}else{l=b+16|0;s[l>>3]=+s[l>>3]-f}n=b+40|0;f=+s[n>>3];l=b+24|0;t=+s[l>>3];c=f-t;if(!(u>c))break;u=(u-c)*.5;s[l>>3]=t-u;s[n>>3]=f+u;break}l=(a[47265]|0)==0;do{if(n)if(l){l=b+40|0;s[l>>3]=+s[l>>3]+f;break}else{l=b+24|0;s[l>>3]=+s[l>>3]-f;break}else if(l){l=b+24|0;s[l>>3]=+s[l>>3]-f;break}else{l=b+40|0;s[l>>3]=+s[l>>3]+f;break}}while(0);n=b+32|0;f=+s[n>>3];l=b+16|0;t=+s[l>>3];c=f-t;if(u>c){u=(u-c)*.5;s[l>>3]=t-u;s[n>>3]=f+u}}}while(0);if(e){switch(a[47265]|0){case 0:{h=b+16|0;a[46606]=a[h>>2];a[46607]=a[h+4>>2];a[46608]=a[h+8>>2];a[46609]=a[h+12>>2];break}case 1:{dJ(w,-+s[b+40>>3],+s[b+16>>3]);a[46606]=a[w>>2];a[46607]=a[w+4>>2];a[46608]=a[w+8>>2];a[46609]=a[w+12>>2];break}case 2:{dJ(o,+s[b+16>>3],-+s[b+40>>3]);a[46606]=a[o>>2];a[46607]=a[o+4>>2];a[46608]=a[o+8>>2];a[46609]=a[o+12>>2];break}case 3:{dJ(h,+s[b+24>>3],+s[b+16>>3]);a[46606]=a[h>>2];a[46607]=a[h+4>>2];a[46608]=a[h+8>>2];a[46609]=a[h+12>>2];break}default:{}}IJ(A);i=a[(a[d>>2]|0)+12>>2]|0}if(i|0?(r[i+81>>0]|0)==0:0){a[B>>2]=a[g>>2];a[B+4>>2]=a[g+4>>2];a[B+8>>2]=a[g+8>>2];a[B+12>>2]=a[g+12>>2];ZJ(A,B)}if(true){k=C;return}if(!(r[194957]|0)){u=+s[23304];c=+s[23303];s[E>>3]=u;s[E+8>>3]=c;s[E+16>>3]=u;s[E+24>>3]=c;s[E+32>>3]=-c;s[E+40>>3]=-u;S4(B,103015,E)|0}else{c=+s[23303];u=+s[23304];s[v>>3]=c;s[v+8>>3]=u;s[v+16>>3]=c;s[v+24>>3]=u;S4(B,102800,v)|0}b3(B)|0;re()}function vJ(A){A=A|0;var e=0,i=0.0,f=0.0,n=0,l=0,t=0;t=A+16|0;if(((Zd(A)|0)!=(A|0)?(n=a[t>>2]|0,l=a[n+12>>2]|0,(l|0)!=0):0)?(r[l+81>>0]|0)==0:0){e=r[n+275>>0]|0;if(!(e&1)){f=+s[n+16>>3]+ +s[n+96>>3]*.5;A=n+104|0}else{f=+s[n+32>>3]-+s[n+64>>3]*.5;A=n+72|0}i=+s[A>>3];A=e<<24>>24;do{if(!(A&4))if(!(A&2)){i=(+s[n+40>>3]+ +s[n+24>>3])*.5;break}else{i=+s[n+40>>3]-i*.5;break}else i=+s[n+24>>3]+i*.5}while(0);s[l+56>>3]=f;s[l+64>>3]=i;r[(a[(a[t>>2]|0)+12>>2]|0)+81>>0]=1;A=1}else A=1;while(1){e=a[t>>2]|0;if((A|0)>(a[e+180>>2]|0))break;vJ(a[(a[e+184>>2]|0)+(A<<2)>>2]|0);A=A+1|0}return}function EJ(A){A=A|0;var e=0,i=0.0,f=0.0,n=0.0,l=0,t=0,c=0;c=A+16|0;if(((Zd(A)|0)!=(A|0)?(l=a[c>>2]|0,t=a[l+12>>2]|0,(t|0)!=0):0)?(r[t+81>>0]|0)==0:0){e=r[l+275>>0]|0;if(!(e&1)){n=+s[l+24>>3]+ +s[l+56>>3]*.5;A=l+48|0}else{n=+s[l+40>>3]-+s[l+88>>3]*.5;A=l+80|0}f=+s[A>>3];A=e<<24>>24;do{if(!(A&4)){i=+s[l+16>>3];if(!(A&2)){i=(+s[l+32>>3]+i)*.5;break}else{i=i+f*.5;break}}else i=+s[l+32>>3]-f*.5}while(0);s[t+56>>3]=i;s[t+64>>3]=n;r[(a[(a[c>>2]|0)+12>>2]|0)+81>>0]=1;A=1}else A=1;while(1){e=a[c>>2]|0;if((A|0)>(a[e+180>>2]|0))break;EJ(a[(a[e+184>>2]|0)+(A<<2)>>2]|0);A=A+1|0}return}function CJ(A){A=A|0;var e=0,i=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,U=0,x=0;x=k;k=k+544|0;J=x+504|0;U=x+416|0;H=x+376|0;V=x+352|0;F=x+312|0;M=x+288|0;D=x+248|0;p=x+200|0;Q=x+152|0;R=x+96|0;o=x+488|0;L=x+456|0;y=x+424|0;W=x+384|0;z=x+360|0;Y=x+320|0;C=x+296|0;I=x+256|0;Z=x+232|0;G=x+168|0;m=x+136|0;e=x+56|0;N=x+16|0;X=x;w=A+16|0;v=a[w>>2]|0;i=f[v+136>>1]&14;v=n[v+113>>0]|0;if(!((v&54|0)==0?(v&1|0)==0|(a[47139]|0)!=0:0)){v=i<<16>>16==0;u=cd(A)|0;l=0;c=0;t=0;while(1){if(!u)break;i=a[(a[u+16>>2]|0)+108>>2]|0;do{if(i)if(!(r[i+81>>0]|0)){t=t+1|0;break}else{l=l+1|0;break}}while(0);b=Oo(A,u)|0;i=c;while(1){if(!b)break;s=a[b+16>>2]|0;c=a[s+108>>2]|0;do{if(c){if(r[c+81>>0]|0){l=l+1|0;break}if(!v)i=i+((a[s+8>>2]|0)!=0&1)|0}}while(0);c=a[s+100>>2]|0;do{if(c){if(r[c+81>>0]|0){l=l+1|0;break}if(!v)i=i+((a[s+8>>2]|0)!=0&1)|0}}while(0);c=a[s+104>>2]|0;do{if(c){if(r[c+81>>0]|0){l=l+1|0;break}if(!v)i=i+((a[s+8>>2]|0)!=0&1)|0}}while(0);c=a[s+96>>2]|0;do{if(c){if(r[c+81>>0]|0){l=l+1|0;break}if(!v)i=i+((a[s+8>>2]|0)!=0&1)|0}}while(0);b=_o(A,b)|0}u=sd(A,u)|0;c=i}if(!(r[(a[w>>2]|0)+113>>0]&8))w=0;else w=mJ(A)|0;g=c+t|0;if(g|0){h=l+c+w+(gh(A)|0)|0;d=qF(h*40|0)|0;B=qF(g*40|0)|0;dJ(p,2147483647.0,2147483647.0);i=p+16|0;dJ(o,-2147483647.0,-2147483647.0);a[i>>2]=a[o>>2];a[i+4>>2]=a[o+4>>2];a[i+8>>2]=a[o+8>>2];a[i+12>>2]=a[o+12>>2];i=B;t=d;u=cd(A)|0;while(1){if(!u)break;a[J>>2]=a[p>>2];a[J+4>>2]=a[p+4>>2];a[J+8>>2]=a[p+8>>2];a[J+12>>2]=a[p+12>>2];a[J+16>>2]=a[p+16>>2];a[J+20>>2]=a[p+20>>2];a[J+24>>2]=a[p+24>>2];a[J+28>>2]=a[p+28>>2];QJ(L,u,t,J);a[p>>2]=a[L>>2];a[p+4>>2]=a[L+4>>2];a[p+8>>2]=a[L+8>>2];a[p+12>>2]=a[L+12>>2];a[p+16>>2]=a[L+16>>2];a[p+20>>2]=a[L+20>>2];a[p+24>>2]=a[L+24>>2];a[p+28>>2]=a[L+28>>2];l=a[(a[u+16>>2]|0)+108>>2]|0;do{if(l)if(!(r[l+81>>0]|0)){a[J>>2]=a[Q>>2];a[J+4>>2]=a[Q+4>>2];a[J+8>>2]=a[Q+8>>2];a[J+12>>2]=a[Q+12>>2];yJ(l,t,i,0,J);i=i+40|0;break}else{t=t+40|0;a[J>>2]=a[p>>2];a[J+4>>2]=a[p+4>>2];a[J+8>>2]=a[p+8>>2];a[J+12>>2]=a[p+12>>2];a[J+16>>2]=a[p+16>>2];a[J+20>>2]=a[p+20>>2];a[J+24>>2]=a[p+24>>2];a[J+28>>2]=a[p+28>>2];LJ(y,l,t,J);a[p>>2]=a[y>>2];a[p+4>>2]=a[y+4>>2];a[p+8>>2]=a[y+8>>2];a[p+12>>2]=a[y+12>>2];a[p+16>>2]=a[y+16>>2];a[p+20>>2]=a[y+20>>2];a[p+24>>2]=a[y+24>>2];a[p+28>>2]=a[y+28>>2];break}}while(0);b=Oo(A,u)|0;t=t+40|0;while(1){if(!b)break;s=b+16|0;l=a[s>>2]|0;c=a[l+96>>2]|0;A:do{if(!c)E=52;else{do{if(!(r[c+81>>0]|0)){if(!v?a[l+8>>2]|0:0){pN(z,A,b);a[J>>2]=a[z>>2];a[J+4>>2]=a[z+4>>2];a[J+8>>2]=a[z+8>>2];a[J+12>>2]=a[z+12>>2];yJ(c,t,i,1,J);i=i+40|0;break}a[D>>2]=a[c>>2];ao(0,103827,D)|0;break A}else{a[J>>2]=a[p>>2];a[J+4>>2]=a[p+4>>2];a[J+8>>2]=a[p+8>>2];a[J+12>>2]=a[p+12>>2];a[J+16>>2]=a[p+16>>2];a[J+20>>2]=a[p+20>>2];a[J+24>>2]=a[p+24>>2];a[J+28>>2]=a[p+28>>2];LJ(W,c,t,J);a[p>>2]=a[W>>2];a[p+4>>2]=a[W+4>>2];a[p+8>>2]=a[W+8>>2];a[p+12>>2]=a[W+12>>2];a[p+16>>2]=a[W+16>>2];a[p+20>>2]=a[W+20>>2];a[p+24>>2]=a[W+24>>2];a[p+28>>2]=a[W+28>>2]}}while(0);t=t+40|0;l=a[s>>2]|0;E=52}}while(0);A:do{if((E|0)==52){E=0;c=a[l+104>>2]|0;if(c){do{if(!(r[c+81>>0]|0)){if(!v?a[l+8>>2]|0:0){WJ(C,b);a[J>>2]=a[C>>2];a[J+4>>2]=a[C+4>>2];a[J+8>>2]=a[C+8>>2];a[J+12>>2]=a[C+12>>2];yJ(c,t,i,1,J);i=i+40|0;break}a[M>>2]=a[c>>2];ao(0,103862,M)|0;break A}else{a[J>>2]=a[p>>2];a[J+4>>2]=a[p+4>>2];a[J+8>>2]=a[p+8>>2];a[J+12>>2]=a[p+12>>2];a[J+16>>2]=a[p+16>>2];a[J+20>>2]=a[p+20>>2];a[J+24>>2]=a[p+24>>2];a[J+28>>2]=a[p+28>>2];LJ(Y,c,t,J);a[p>>2]=a[Y>>2];a[p+4>>2]=a[Y+4>>2];a[p+8>>2]=a[Y+8>>2];a[p+12>>2]=a[Y+12>>2];a[p+16>>2]=a[Y+16>>2];a[p+20>>2]=a[Y+20>>2];a[p+24>>2]=a[Y+24>>2];a[p+28>>2]=a[Y+28>>2]}}while(0);t=t+40|0;l=a[s>>2]|0}c=a[l+100>>2]|0;if(c){do{if(!(r[c+81>>0]|0)){if(!v?a[l+8>>2]|0:0){zJ(Z,b);a[J>>2]=a[Z>>2];a[J+4>>2]=a[Z+4>>2];a[J+8>>2]=a[Z+8>>2];a[J+12>>2]=a[Z+12>>2];yJ(c,t,i,1,J);i=i+40|0;break}a[F>>2]=a[c>>2];ao(0,103902,F)|0;break A}else{a[J>>2]=a[p>>2];a[J+4>>2]=a[p+4>>2];a[J+8>>2]=a[p+8>>2];a[J+12>>2]=a[p+12>>2];a[J+16>>2]=a[p+16>>2];a[J+20>>2]=a[p+20>>2];a[J+24>>2]=a[p+24>>2];a[J+28>>2]=a[p+28>>2];LJ(I,c,t,J);a[p>>2]=a[I>>2];a[p+4>>2]=a[I+4>>2];a[p+8>>2]=a[I+8>>2];a[p+12>>2]=a[I+12>>2];a[p+16>>2]=a[I+16>>2];a[p+20>>2]=a[I+20>>2];a[p+24>>2]=a[I+24>>2];a[p+28>>2]=a[I+28>>2]}}while(0);t=t+40|0;l=a[s>>2]|0}c=a[l+108>>2]|0;if(c){do{if(!(r[c+81>>0]|0)){if(!v?a[l+8>>2]|0:0){pN(m,A,b);a[J>>2]=a[m>>2];a[J+4>>2]=a[m+4>>2];a[J+8>>2]=a[m+8>>2];a[J+12>>2]=a[m+12>>2];yJ(c,t,i,1,J);i=i+40|0;break}a[V>>2]=a[c>>2];ao(0,103942,V)|0;break A}else{a[J>>2]=a[p>>2];a[J+4>>2]=a[p+4>>2];a[J+8>>2]=a[p+8>>2];a[J+12>>2]=a[p+12>>2];a[J+16>>2]=a[p+16>>2];a[J+20>>2]=a[p+20>>2];a[J+24>>2]=a[p+24>>2];a[J+28>>2]=a[p+28>>2];LJ(G,c,t,J);a[p>>2]=a[G>>2];a[p+4>>2]=a[G+4>>2];a[p+8>>2]=a[G+8>>2];a[p+12>>2]=a[G+12>>2];a[p+16>>2]=a[G+16>>2];a[p+20>>2]=a[G+20>>2];a[p+24>>2]=a[G+24>>2];a[p+28>>2]=a[G+28>>2]}}while(0);t=t+40|0}}}while(0);b=_o(A,b)|0}u=sd(A,u)|0}if(w|0){a[e>>2]=a[p>>2];a[e+4>>2]=a[p+4>>2];a[e+8>>2]=a[p+8>>2];a[e+12>>2]=a[p+12>>2];a[e+16>>2]=a[p+16>>2];a[e+20>>2]=a[p+20>>2];a[e+24>>2]=a[p+24>>2];a[e+28>>2]=a[p+28>>2];a[e+32>>2]=t;l=J;i=l+40|0;do{a[l>>2]=a[e>>2];l=l+4|0;e=e+4|0}while((l|0)<(i|0));YJ(N,A,J);a[p>>2]=a[N>>2];a[p+4>>2]=a[N+4>>2];a[p+8>>2]=a[N+8>>2];a[p+12>>2]=a[N+12>>2];a[p+16>>2]=a[N+16>>2];a[p+20>>2]=a[N+20>>2];a[p+24>>2]=a[N+24>>2];a[p+28>>2]=a[N+28>>2]}r[R+32>>0]=gR(A,Yo(A,0,103978,0)|0,1)|0;a[R>>2]=a[p>>2];a[R+4>>2]=a[p+4>>2];a[R+8>>2]=a[p+8>>2];a[R+12>>2]=a[p+12>>2];a[R+16>>2]=a[p+16>>2];a[R+20>>2]=a[p+20>>2];a[R+24>>2]=a[p+24>>2];a[R+28>>2]=a[p+28>>2];$r(d,h,B,g,R)|0;if(0){}e=0;i=0;l=B;while(1){if((i|0)>=(g|0))break;if(r[l+36>>0]|0){R=a[l+32>>2]|0;r[R+81>>0]=1;N=R+56|0;MJ(X,l);a[N>>2]=a[X>>2];a[N+4>>2]=a[X+4>>2];a[N+8>>2]=a[X+8>>2];a[N+12>>2]=a[X+12>>2];HR(A,R);e=e+1|0}i=i+1|0;l=l+40|0}if(true){if((e|0)!=(g|0)){a[U>>2]=e;a[U+4>>2]=g;ao(0,104023,U)|0}}else{}L2(d);L2(B)}}k=x;return}function IJ(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0;l=k;k=k+48|0;r=l+32|0;f=l+16|0;n=l;if(+s[23303]!=0.0|+s[23304]!=0.0|(a[47265]|0)!=0){i=cd(A)|0;while(1){if(!i)break;if(a[47265]|0)DX(i,0);e=i+16|0;t=(a[e>>2]|0)+16|0;a[r>>2]=a[t>>2];a[r+4>>2]=a[t+4>>2];a[r+8>>2]=a[t+8>>2];a[r+12>>2]=a[t+12>>2];BJ(f,r);a[t>>2]=a[f>>2];a[t+4>>2]=a[f+4>>2];a[t+8>>2]=a[f+8>>2];a[t+12>>2]=a[f+12>>2];e=a[(a[e>>2]|0)+108>>2]|0;if(e|0){t=e+56|0;a[r>>2]=a[t>>2];a[r+4>>2]=a[t+4>>2];a[r+8>>2]=a[t+8>>2];a[r+12>>2]=a[t+12>>2];BJ(n,r);a[t>>2]=a[n>>2];a[t+4>>2]=a[n+4>>2];a[t+8>>2]=a[n+8>>2];a[t+12>>2]=a[n+12>>2]}A:do{if((a[47138]|0)==1){e=Oo(A,i)|0;while(1){if(!e)break A;GJ(e);e=_o(A,e)|0}}}while(0);i=sd(A,i)|0}hJ(A,a[(a[A+16>>2]|0)+116>>2]&3)}k=l;return}function ZJ(A,e){A=A|0;e=e|0;var i=0.0,f=0.0,n=0,l=0,t=0;l=A+16|0;t=a[l>>2]|0;n=r[t+275>>0]|0;A=n<<24>>24;do{if(!(A&4)){i=+s[t+16>>3];if(!(A&2)){f=(+s[t+32>>3]+i)*.5;break}else{f=+s[e>>3]*.5+i;break}}else f=+s[t+32>>3]-+s[e>>3]*.5}while(0);if(!(n&1))i=+s[e+8>>3]*.5+ +s[t+24>>3];else i=+s[t+40>>3]-+s[e+8>>3]*.5;t=a[t+12>>2]|0;s[t+56>>3]=f;s[t+64>>3]=i;r[(a[(a[l>>2]|0)+12>>2]|0)+81>>0]=1;return}function GJ(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0;B=k;k=k+144|0;h=B+120|0;i=B+16|0;t=B+104|0;c=B+88|0;s=B+72|0;b=B+56|0;u=B+40|0;w=B+24|0;d=B;o=A+16|0;e=a[o>>2]|0;f=a[e+8>>2]|0;if(!f){if((r[194954]|0)==0?(r[e+112>>0]|0)!=6:0){h=Vh(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)|0;d=Vh(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)|0;a[i>>2]=h;a[i+4>>2]=d;ao(1,103810,i)|0}}else{l=0;A=f;while(1){if((l|0)>=(a[A+4>>2]|0))break;n=a[A>>2]|0;A=a[n+(l*48|0)>>2]|0;i=a[n+(l*48|0)+4>>2]|0;f=a[n+(l*48|0)+8>>2]|0;n=a[n+(l*48|0)+12>>2]|0;e=0;while(1){if((e|0)>=(i|0))break;g=A+(e<<4)|0;a[h>>2]=a[g>>2];a[h+4>>2]=a[g+4>>2];a[h+8>>2]=a[g+8>>2];a[h+12>>2]=a[g+12>>2];BJ(t,h);a[g>>2]=a[t>>2];a[g+4>>2]=a[t+4>>2];a[g+8>>2]=a[t+8>>2];a[g+12>>2]=a[t+12>>2];e=e+1|0}if(f|0){g=(a[a[(a[o>>2]|0)+8>>2]>>2]|0)+(l*48|0)+16|0;a[h>>2]=a[g>>2];a[h+4>>2]=a[g+4>>2];a[h+8>>2]=a[g+8>>2];a[h+12>>2]=a[g+12>>2];BJ(c,h);a[g>>2]=a[c>>2];a[g+4>>2]=a[c+4>>2];a[g+8>>2]=a[c+8>>2];a[g+12>>2]=a[c+12>>2]}if(n|0){g=(a[a[(a[o>>2]|0)+8>>2]>>2]|0)+(l*48|0)+32|0;a[h>>2]=a[g>>2];a[h+4>>2]=a[g+4>>2];a[h+8>>2]=a[g+8>>2];a[h+12>>2]=a[g+12>>2];BJ(s,h);a[g>>2]=a[s>>2];a[g+4>>2]=a[s+4>>2];a[g+8>>2]=a[s+8>>2];a[g+12>>2]=a[s+12>>2]}e=a[o>>2]|0;l=l+1|0;A=a[e+8>>2]|0}A=a[e+96>>2]|0;if(A){e=A+56|0;a[h>>2]=a[e>>2];a[h+4>>2]=a[e+4>>2];a[h+8>>2]=a[e+8>>2];a[h+12>>2]=a[e+12>>2];BJ(b,h);a[e>>2]=a[b>>2];a[e+4>>2]=a[b+4>>2];a[e+8>>2]=a[b+8>>2];a[e+12>>2]=a[b+12>>2];e=a[o>>2]|0}A=a[e+108>>2]|0;if(A){e=A+56|0;a[h>>2]=a[e>>2];a[h+4>>2]=a[e+4>>2];a[h+8>>2]=a[e+8>>2];a[h+12>>2]=a[e+12>>2];BJ(u,h);a[e>>2]=a[u>>2];a[e+4>>2]=a[u+4>>2];a[e+8>>2]=a[u+8>>2];a[e+12>>2]=a[u+12>>2];e=a[o>>2]|0}A=a[e+100>>2]|0;if(A){e=A+56|0;a[h>>2]=a[e>>2];a[h+4>>2]=a[e+4>>2];a[h+8>>2]=a[e+8>>2];a[h+12>>2]=a[e+12>>2];BJ(w,h);a[e>>2]=a[w>>2];a[e+4>>2]=a[w+4>>2];a[e+8>>2]=a[w+8>>2];a[e+12>>2]=a[w+12>>2];e=a[o>>2]|0}e=a[e+104>>2]|0;if(e|0){g=e+56|0;a[h>>2]=a[g>>2];a[h+4>>2]=a[g+4>>2];a[h+8>>2]=a[g+8>>2];a[h+12>>2]=a[g+12>>2];BJ(d,h);a[g>>2]=a[d>>2];a[g+4>>2]=a[d+4>>2];a[g+8>>2]=a[d+8>>2];a[g+12>>2]=a[d+12>>2]}}k=B;return}function mJ(A){A=A|0;var e=0,i=0,f=0;f=A+16|0;if((Zd(A)|0)!=(A|0)?(e=a[(a[f>>2]|0)+12>>2]|0,(e|0)!=0):0){i=1;A=(r[e+81>>0]|0)!=0&1}else{i=1;A=0}while(1){e=a[f>>2]|0;if((i|0)>(a[e+180>>2]|0))break;e=(mJ(a[(a[e+184>>2]|0)+(i<<2)>>2]|0)|0)+A|0;i=i+1|0;A=e}return A|0}function QJ(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0.0,c=0.0,b=0,u=0;n=k;k=k+32|0;l=n;u=(r[194957]|0)==0;e=e+16|0;b=a[e>>2]|0;c=+s[(u?b+32|0:b+40|0)>>3];s[i+16>>3]=c*72.0;t=+s[(u?b+40|0:b+32|0)>>3];s[i+24>>3]=t*72.0;e=(a[e>>2]|0)+16|0;a[i>>2]=a[e>>2];a[i+4>>2]=a[e+4>>2];a[i+8>>2]=a[e+8>>2];a[i+12>>2]=a[e+12>>2];s[i>>3]=+s[i>>3]-c*36.0;e=i+8|0;s[e>>3]=+s[e>>3]-t*36.0;a[l>>2]=a[f>>2];a[l+4>>2]=a[f+4>>2];a[l+8>>2]=a[f+8>>2];a[l+12>>2]=a[f+12>>2];a[l+16>>2]=a[f+16>>2];a[l+20>>2]=a[f+20>>2];a[l+24>>2]=a[f+24>>2];a[l+28>>2]=a[f+28>>2];FJ(A,i,l);k=n;return}function LJ(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0.0,c=0.0,b=0,u=0;n=k;k=k+32|0;l=n;u=(r[194957]|0)==0;b=e+24|0;c=+s[(u?b:e+32|0)>>3];s[i+16>>3]=c;t=+s[(u?e+32|0:b)>>3];s[i+24>>3]=t;e=e+56|0;a[i>>2]=a[e>>2];a[i+4>>2]=a[e+4>>2];a[i+8>>2]=a[e+8>>2];a[i+12>>2]=a[e+12>>2];s[i>>3]=+s[i>>3]-c*.5;e=i+8|0;s[e>>3]=+s[e>>3]-t*.5;a[l>>2]=a[f>>2];a[l+4>>2]=a[f+4>>2];a[l+8>>2]=a[f+8>>2];a[l+12>>2]=a[f+12>>2];a[l+16>>2]=a[f+16>>2];a[l+20>>2]=a[f+20>>2];a[l+24>>2]=a[f+24>>2];a[l+28>>2]=a[f+28>>2];FJ(A,i,l);k=n;return}function yJ(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;if(f|0){f=e+16|0;a[f>>2]=0;a[f+4>>2]=0;a[f+8>>2]=0;a[f+12>>2]=0;a[e>>2]=a[n>>2];a[e+4>>2]=a[n+4>>2];a[e+8>>2]=a[n+8>>2];a[e+12>>2]=a[n+12>>2]}if(!(r[194957]|0)){n=A+24|0;a[i>>2]=a[n>>2];a[i+4>>2]=a[n+4>>2];a[i+8>>2]=a[n+8>>2];a[i+12>>2]=a[n+12>>2]}else{s[i>>3]=+s[A+32>>3];s[i+8>>3]=+s[A+24>>3]}a[i+32>>2]=A;r[i+36>>0]=0;a[e+32>>2]=i;return}function WJ(A,e){A=A|0;e=e|0;e=JN(e)|0;do{if(e){e=a[e>>2]|0;if(!(a[e+8>>2]|0)){e=a[e>>2]|0;a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];break}else{e=e+16|0;a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];break}}else{a[A>>2]=0;a[A+4>>2]=0;a[A+8>>2]=0;a[A+12>>2]=0}}while(0);return}function zJ(A,e){A=A|0;e=e|0;var i=0;e=JN(e)|0;do{if(e){i=a[e>>2]|0;e=(a[e+4>>2]|0)+-1|0;if(!(a[i+(e*48|0)+12>>2]|0)){i=(a[i+(e*48|0)>>2]|0)+((a[i+(e*48|0)+4>>2]|0)+-1<<4)|0;a[A>>2]=a[i>>2];a[A+4>>2]=a[i+4>>2];a[A+8>>2]=a[i+8>>2];a[A+12>>2]=a[i+12>>2];break}else{i=i+(e*48|0)+32|0;a[A>>2]=a[i>>2];a[A+4>>2]=a[i+4>>2];a[A+8>>2]=a[i+8>>2];a[A+12>>2]=a[i+12>>2];break}}else{a[A>>2]=0;a[A+4>>2]=0;a[A+8>>2]=0;a[A+12>>2]=0}}while(0);return}function YJ(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+112|0;s=h+72|0;u=h+32|0;w=h;o=e+16|0;c=1;while(1){f=a[o>>2]|0;if((c|0)>(a[f+180>>2]|0))break;f=a[(a[f+184>>2]|0)+(c<<2)>>2]|0;n=s;l=i;t=n+40|0;do{a[n>>2]=a[l>>2];n=n+4|0;l=l+4|0}while((n|0)<(t|0));YJ(u,f,s);n=i;l=u;t=n+40|0;do{a[n>>2]=a[l>>2];n=n+4|0;l=l+4|0}while((n|0)<(t|0));c=c+1|0}if(((Zd(e)|0)!=(e|0)?(b=a[(a[o>>2]|0)+12>>2]|0,b|0):0)?r[b+81>>0]|0:0){o=i+32|0;u=a[o>>2]|0;a[s>>2]=a[i>>2];a[s+4>>2]=a[i+4>>2];a[s+8>>2]=a[i+8>>2];a[s+12>>2]=a[i+12>>2];a[s+16>>2]=a[i+16>>2];a[s+20>>2]=a[i+20>>2];a[s+24>>2]=a[i+24>>2];a[s+28>>2]=a[i+28>>2];LJ(w,b,u,s);a[i>>2]=a[w>>2];a[i+4>>2]=a[w+4>>2];a[i+8>>2]=a[w+8>>2];a[i+12>>2]=a[w+12>>2];a[i+16>>2]=a[w+16>>2];a[i+20>>2]=a[w+20>>2];a[i+24>>2]=a[w+24>>2];a[i+28>>2]=a[w+28>>2];a[o>>2]=(a[o>>2]|0)+40}n=A;l=i;t=n+40|0;do{a[n>>2]=a[l>>2];n=n+4|0;l=l+4|0}while((n|0)<(t|0));k=h;return}function DJ(A,e,i,r,f){A|0;e|0;i|0;r|0;f|0;var l=0.0,t=0.0,c=0.0,b=0.0,u=0,w=0,o=0,h=0,d=0,B=0;k;k=k+160|0;B+96|0;B+48|0;B;a[15712]|0;n[f+32>>0]|0;+s[f>>3];+s[f+8>>3];+s[f+16>>3];+s[f+24>>3];a[w>>2]=e;a[w+4>>2]=r;a[w+8>>2]=u;s[w+16>>3]=l;s[w+24>>3]=t;s[w+32>>3]=c;s[w+40>>3]=b;f3(h,104065,w)|0;A:do{if(0>=2){L3(104125,8,1,h)|0;0;while(1){if((w|0)>=(e|0))break;a[A+32>>2]|0;+s[A>>3];+s[A+8>>3];+s[A+16>>3];+s[A+24>>3];if(!f)195059;else a[a[f+32>>2]>>2]|0;a[o>>2]=w;s[o+8>>3]=l;s[o+16>>3]=t;s[o+24>>3]=c;s[o+32>>3]=b;a[o+40>>2]=f;a[o+44>>2]=u;f3(h,104134,o)|0;w+1|0;A+40|0}L3(104177,8,1,h)|0;0;while(1){if((f|0)>=(r|0))break A;n[i+36>>0]|0;+s[i+16>>3];+s[i+24>>3];+s[i>>3];+s[i+8>>3];a[a[i+32>>2]>>2]|0;a[d>>2]=f;a[d+4>>2]=i;a[d+8>>2]=e;s[d+16>>3]=l;s[d+24>>3]=t;s[d+32>>3]=c;s[d+40>>3]=b;a[d+48>>2]=o;f3(h,104186,d)|0;i+40|0;f+1|0}}}while(0);k=B;return}function MJ(A,e){A=A|0;e=e|0;var i=0.0;i=+s[e+8>>3]*.5+ +s[e+24>>3];s[A>>3]=+s[e>>3]*.5+ +s[e+16>>3];s[A+8>>3]=i;return}function FJ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0.0,t=0.0;r=k;k=k+16|0;f=r;t=+s[e>>3];s[i>>3]=+s[(+s[i>>3] >3];n=i+8|0;l=+s[e+8>>3];s[n>>3]=+s[(+s[n>>3] >3];t=+s[e+16>>3]+t;s[f>>3]=t;l=+s[e+24>>3]+l;s[f+8>>3]=l;n=i+16|0;s[n>>3]=+s[(+s[n>>3]>t?n:f)>>3];e=i+24|0;s[e>>3]=+s[(+s[e>>3]>l?n:f)+8>>3];a[A>>2]=a[i>>2];a[A+4>>2]=a[i+4>>2];a[A+8>>2]=a[i+8>>2];a[A+12>>2]=a[i+12>>2];a[A+16>>2]=a[i+16>>2];a[A+20>>2]=a[i+20>>2];a[A+24>>2]=a[i+24>>2];a[A+28>>2]=a[i+28>>2];k=r;return}function VJ(A){A=A|0;gJ(A,1);return}function JJ(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;r=k;k=k+16|0;i=r;e=yR(Ho(A,105526)|0)|0;if(e){e=pJ(e)|0;if(e|0){f=a[e+40>>2]|0;i=a[e+44>>2]|0;n=A+16|0;A=a[n>>2]|0;s[A+32>>3]=+(f|0)*.013888888888888888;s[A+40>>3]=+(i|0)*.013888888888888888;A=qF(12)|0;a[(a[n>>2]|0)+12>>2]=A;a[A>>2]=a[e+12>>2];a[A+4>>2]=((f|0)/-2|0)-(a[e+32>>2]|0);a[A+8>>2]=((i|0)/-2|0)-(a[e+36>>2]|0)}}else{a[i>>2]=Vh(A)|0;ao(0,104234,i)|0}k=r;return}function pJ(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;o=k;k=k+1152|0;t=o+24|0;l=o+8|0;i=o;f=o+120|0;c=o+44|0;s=o+40|0;b=o+36|0;u=o+32|0;w=o+28|0;e=a[47266]|0;if(!e){e=jk(20812,a[4581]|0)|0;a[47266]=e}e=y5[a[e>>2]&63](e,A,512)|0;do{if(!e){n=F3(A,138821)|0;if(!n){a[i>>2]=A;ao(0,104283,i)|0;e=0;break}else{e=0;i=0}while(1){if(!(p4(f,1024,n)|0)){f=11;break}a[l>>2]=s;a[l+4>>2]=b;a[l+8>>2]=u;a[l+12>>2]=w;h=(J3(f,104311,l)|0)==4;i=h?1:i;if((r[f>>0]|0)!=37){h=(N4(f,104340)|0)==0;e=h?e:1}if((i|0)!=0&(e|0)!=0){f=12;break}}if((f|0)==11)if(!i){a[t>>2]=A;ao(0,104345,t)|0;e=0}else f=12;if((f|0)==12){h=$F(64)|0;s=a[s>>2]|0;a[h+32>>2]=s;b=a[b>>2]|0;a[h+40>>2]=(a[u>>2]|0)-s;a[h+36>>2]=(a[w>>2]|0)-b;a[h+8>>2]=A;w=a[47267]|0;a[47267]=w+1;a[h+12>>2]=w;D3(t6(n)|0,c)|0;w=a[c+36>>2]|0;u=$F(w+1|0)|0;a[h+52>>2]=u;O3(n,0,0)|0;a6(u,w,1,n)|0;r[u+w>>0]=0;w=a[47266]|0;y5[a[w>>2]&63](w,h,1)|0;r[h+16>>0]=e;e=h}h3(n)|0}}while(0);k=o;return e|0}function NJ(A,e,i){A=A|0;e=e|0;i=i|0;L2(a[e+52>>2]|0);return}function RJ(A){A=A|0;L2(a[(a[A+16>>2]|0)+12>>2]|0);return}function XJ(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;u=k;k=k+16|0;b=u+8|0;s=u;c=(e|0)!=0;A:do{if(c){l=0;f=0;e:while(1)while(1){if(l)break A;n=a[e+(f<<2)>>2]|0;if(!n){t=6;break A}f=f+1|0;if(!(r[n>>0]|0)){l=1;continue e}}}else t=6}while(0);A:do{if((t|0)==6)while(1){f=a[i>>2]|0;if(!f)break A;kv(A,f)|0;kv(A,153599)|0;i=i+4|0;t=6}}while(0);A:do{if(c){l=0;while(1){f=a[e+(l<<2)>>2]|0;if(!f)break A;do{if(r[f>>0]|0){i=yR(f)|0;if(!i){a[s>>2]=f;ao(0,104384,s)|0;break}n=F3(i,138821)|0;if(!n){a[b>>2]=i;ao(0,104412,b)|0;break}while(1){f=LR(n)|0;if(!f)break;kv(A,f)|0}kv(A,153599)|0;h3(n)|0}}while(0);l=l+1|0}}}while(0);k=u;return}function HJ(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;e=a[e+52>>2]|0;A:while(1){i=r[e>>0]|0;e:do{switch(i<<24>>24){case 0:break A;case 37:{if((r[e+1>>0]|0)==37){i=e+2|0;if((((T1(i,104440,3)|0)!=0?(T1(i,104444,5)|0)!=0:0)?(T1(i,104450,3)|0)!=0:0)?(T1(i,104454,7)|0)!=0:0){i=37;break e}else n=37;i:while(1){switch(n<<24>>24){case 13:{f=10;break i}case 10:case 0:{f=12;break i}default:{}}n=e+1|0;e=n;n=r[n>>0]|0}if((f|0)==10){i=e+1|0;if((r[i>>0]|0)==10){e=e+2|0;continue A}}else if((f|0)==12)i=e+1|0;e=n<<24>>24==0?e:i;continue A}else i=37;break}default:{}}}while(0);e:while(1){switch(i<<24>>24){case 10:case 13:case 0:break e;default:{}}ov(A,i<<24>>24)|0;n=e+1|0;e=n;i=r[n>>0]|0}f=e+1|0;if(i<<24>>24==13?(r[f>>0]|0)==10:0)e=e+2|0;else e=i<<24>>24==0?e:f;ov(A,10)|0}return}function UJ(A){A=A|0;var e=0,i=0,f=0,n=0;f=k;k=k+16|0;i=f;e=a[47266]|0;A:do{if(e|0){e=y5[a[e>>2]&63](e,0,128)|0;while(1){if(!e)break A;if(!(r[e+16>>0]|0)){a[i>>2]=a[e+12>>2];vv(A,104462,i);kv(A,104480)|0;HJ(A,e);kv(A,104498)|0;kv(A,104513)|0}n=a[47266]|0;e=y5[a[n>>2]&63](n,e,8)|0}}}while(0);k=f;return}function xJ(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0;n=k;k=k+16|0;i=n;A:do{switch(e|0){case 0:{f=A;break}case 1:{f=CX(A)|0;break}default:{switch(TJ(A)|0){case 2:break;case 1:{f=CX(A)|0;break A}default:{f=A;break A}}if(!(a[47268]|0)){ao(0,104525,i)|0;a[47268]=1;f=A}else f=A}}}while(0);if(!(a[47269]|0))co(189076,0,0);e=a[47270]|0;if(e>>>0>=(a[47271]|0)>>>0){so(189076,1)|0;e=a[47270]|0}a[47270]=e+1;r[e>>0]=40;i=f;A:while(1){switch(r[i>>0]|0){case 0:break A;case 92:case 41:case 40:{e=a[47270]|0;if(e>>>0>=(a[47271]|0)>>>0){so(189076,1)|0;e=a[47270]|0}a[47270]=e+1;r[e>>0]=92;break}default:{}}e=a[47270]|0;if(e>>>0>=(a[47271]|0)>>>0){so(189076,1)|0;e=a[47270]|0}l=r[i>>0]|0;a[47270]=e+1;r[e>>0]=l;i=i+1|0}e=a[47270]|0;if(e>>>0>=(a[47271]|0)>>>0){so(189076,1)|0;e=a[47270]|0}a[47270]=e+1;r[e>>0]=41;if((f|0)!=(A|0))L2(f);e=a[47270]|0;if(e>>>0>=(a[47271]|0)>>>0){so(189076,1)|0;e=a[47270]|0}r[e>>0]=0;l=a[47269]|0;a[47270]=l;k=n;return l|0}function TJ(A){A=A|0;var e=0,i=0;e=0;A:while(1){while(1){i=r[A>>0]|0;if(!(i<<24>>24))break A;if((i&255)<127)A=A+1|0;else break}if((i&-4)<<24>>24==-64){e=1;A=A+2|0}else{e=2;break}}return e|0}function jJ(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0;u=k;k=k+96|0;l=u+80|0;t=u+72|0;b=u+64|0;n=u+32|0;c=u;s[n>>3]=+s[A>>3];s[n+8>>3]=+s[A+8>>3];s[n+16>>3]=+s[e>>3];s[n+24>>3]=+s[e+8>>3];do{if((ic(i,n,t)|0)>=0){if(!f){e=i+4|0;A=a[e>>2]|0;f=a[47274]|0;if((A|0)>(a[47273]|0)){if(!f)A=$F(A<<5)|0;else A=eV(f,A<<5)|0;a[47274]=A;n=a[e>>2]|0;a[47273]=n;f=A}else n=A;e=a[i>>2]|0;A=0;while(1){if((A|0)>=(n|0))break;w=f+(A<<5)|0;i=e+(A<<4)|0;a[w>>2]=a[i>>2];a[w+4>>2]=a[i+4>>2];a[w+8>>2]=a[i+8>>2];a[w+12>>2]=a[i+12>>2];w=f+(A<<5)+16|0;i=A+1|0;o=e+(((i|0)%(n|0)|0)<<4)|0;a[w>>2]=a[o>>2];a[w+4>>2]=a[o+4>>2];a[w+8>>2]=a[o+8>>2];a[w+12>>2]=a[o+12>>2];A=i}a[c>>2]=0;a[c+4>>2]=0;a[c+8>>2]=0;a[c+12>>2]=0;a[c+16>>2]=0;a[c+20>>2]=0;a[c+24>>2]=0;a[c+28>>2]=0;a[l>>2]=a[t>>2];a[l+4>>2]=a[t+4>>2];if((Mt(f,n,l,c,b)|0)<0){A=0;break}}else{a[l>>2]=a[t>>2];a[l+4>>2]=a[t+4>>2];Gc(l,b)}A=b+4|0;if(!(PJ(a[A>>2]|0)|0)){n=a[A>>2]|0;A=a[47275]|0;f=a[b>>2]|0;e=0;while(1){if((e|0)>=(n|0))break;o=A+(e<<4)|0;w=f+(e<<4)|0;a[o>>2]=a[w>>2];a[o+4>>2]=a[w+4>>2];a[o+8>>2]=a[w+8>>2];a[o+12>>2]=a[w+12>>2];e=e+1|0}a[r>>2]=n}else A=0}else A=0}while(0);k=u;return A|0}function PJ(A){A=A|0;var e=0,i=0,r=0;r=k;k=k+16|0;i=r;e=a[47276]|0;do{if((e|0)<(A|0)){A=A+300-((A|0)%300|0)+e|0;e=eV(a[47275]|0,A<<4)|0;a[47275]=e;if(!e){ao(1,104615,i)|0;A=1;break}else{a[47276]=A;A=0;break}}else A=0}while(0);k=r;return A|0}function SJ(){var A=0,e=0,i=0;e=k;k=k+16|0;A=e;i=a[47277]|0;a[47277]=i+1;do{if((i|0)<=0){i=$F(4800)|0;a[47275]=i;if(!i){ao(1,104638,A)|0;A=1;break}a[47276]=300;a[47278]=0;a[47279]=0;if(0){}else A=0}else A=0}while(0);k=e;return A|0}function OJ(){var A=0,e=0,i=0,r=0.0,f=0,n=0;e=k;k=k+16|0;A=e;i=a[47277]|0;a[47277]=i+-1;if((i|0)<=1?(L2(a[47275]|0),0):0){i=a[15712]|0;n=a[47278]|0;f=a[47279]|0;r=+cR();a[A>>2]=n;a[A+4>>2]=f;s[A+8>>3]=r;f3(i,104676,A)|0}k=e;return}function KJ(A,e){A=A|0;e=e|0;return _J(A,e,0)|0}function _J(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0.0,b=0.0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,F=0,V=0,J=0,p=0,N=0;J=k;k=k+176|0;W=J+168|0;V=J+128|0;I=J+120|0;E=J+112|0;l=J+104|0;B=J+88|0;u=J+72|0;n=J+64|0;g=J+160|0;Y=J+152|0;Z=J+144|0;v=J+32|0;C=J;F=J+136|0;a[47278]=(a[47278]|0)+1;z=a[A+80>>2]|0;a[47279]=(a[47279]|0)+z;f=A+88|0;while(1){L=a[f>>2]|0;if(!L){y=4;break}f=a[L+16>>2]|0;if(!(r[f+112>>0]|0)){y=5;break}else f=f+116|0}do{if((y|0)==4){ao(1,104719,n)|0;f=0}else if((y|0)==5){Q=a[A+84>>2]|0;if(!(qJ(z,Q,A)|0)){n=z<<3;if((n|0)>(a[47280]|0)){f=a[47281]|0;if(!f)f=$F(z<<7)|0;else f=eV(f,z<<7)|0;a[47281]=f;a[47280]=n}A:do{if((z|0)>1?+s[Q+8>>3]>+s[Q+40>>3]:0){f=0;while(1){if((f|0)==(z|0)){o=1;break A}G=Q+(f<<5)+24|0;b=+s[G>>3];m=Q+(f<<5)+8|0;s[G>>3]=-+s[m>>3];s[m>>3]=-b;f=f+1|0}}else o=0}while(0);d=a[L>>2]&3;G=L+48|0;f=a[((d|0)==3?L:G)+40>>2]|0;m=L+-48|0;if((f|0)==(a[((d|0)==2?L:m)+40>>2]|0)){a[l>>2]=Vh(f)|0;ao(1,104826,l)|0;f=0;break}w=z+-1|0;h=a[47281]|0;d=h;f=0;t=0;A:while(1){if((t|0)>=(z|0)){t=w;u=f;break}if((t|0)>0)n=+s[Q+(t<<5)+8>>3]>+s[Q+(t+-1<<5)+8>>3]?-1:1;else n=0;if((t|0)<(w|0))l=+s[Q+(t+1<<5)+8>>3]>+s[Q+(t<<5)+8>>3]?1:-1;else l=0;e:do{if((n|0)!=(l|0))if((n|0)==1|(l|0)==-1){n=Q+(t<<5)|0;s[h+(f<<4)>>3]=+s[n>>3];l=f+1|0;s[h+(f<<4)+8>>3]=+s[Q+(t<<5)+24>>3];s[h+(l<<4)>>3]=+s[n>>3];n=Q+(t<<5)+8|0;y=29;break}else{n=Q+(t<<5)+16|0;s[h+(f<<4)>>3]=+s[n>>3];l=f+1|0;s[h+(f<<4)+8>>3]=+s[Q+(t<<5)+8>>3];s[h+(l<<4)>>3]=+s[n>>3];n=Q+(t<<5)+24|0;y=29;break}else{switch(n|0){case-1:break e;case 0:break;default:{y=28;break A}}n=Q+(t<<5)|0;s[h+(f<<4)>>3]=+s[n>>3];l=f+1|0;s[h+(f<<4)+8>>3]=+s[Q+(t<<5)+24>>3];s[h+(l<<4)>>3]=+s[n>>3];n=Q+(t<<5)+8|0;y=29}}while(0);if((y|0)==29){y=0;s[h+(l<<4)+8>>3]=+s[n>>3];f=f+2|0}t=t+1|0}if((y|0)==28){a[u>>2]=n;a[u+4>>2]=n;a[u+8>>2]=480;ao(1,104761,u)|0;f=0;break}A:while(1){if((t|0)<=-1)break;if((t|0)<(w|0))f=+s[Q+(t<<5)+8>>3]>+s[Q+(t+1<<5)+8>>3]?-1:1;else f=0;if((t|0)>0)n=+s[Q+(t+-1<<5)+8>>3]>+s[Q+(t<<5)+8>>3]?1:-1;else n=0;e:do{if((f|0)!=(n|0))if((f|0)==1|(n|0)==-1){f=Q+(t<<5)|0;s[h+(u<<4)>>3]=+s[f>>3];n=u+1|0;s[h+(u<<4)+8>>3]=+s[Q+(t<<5)+24>>3];s[h+(n<<4)>>3]=+s[f>>3];f=Q+(t<<5)+8|0;l=2;break}else{f=Q+(t<<5)+16|0;s[h+(u<<4)>>3]=+s[f>>3];n=u+1|0;s[h+(u<<4)+8>>3]=+s[Q+(t<<5)+8>>3];s[h+(n<<4)>>3]=+s[f>>3];f=Q+(t<<5)+24|0;l=2;break}else switch(f|0){case 0:{f=Q+(t<<5)+16|0;s[h+(u<<4)>>3]=+s[f>>3];n=u+1|0;s[h+(u<<4)+8>>3]=+s[Q+(t<<5)+8>>3];s[h+(n<<4)>>3]=+s[f>>3];f=Q+(t<<5)+24|0;l=2;break e}case-1:{N=Q+(t<<5)+16|0;s[h+(u<<4)>>3]=+s[N>>3];f=Q+(t<<5)+8|0;l=u+1|0;s[h+(u<<4)+8>>3]=+s[f>>3];s[h+(l<<4)>>3]=+s[N>>3];N=Q+(t<<5)+24|0;p=u+2|0;s[h+(l<<4)+8>>3]=+s[N>>3];l=Q+(t<<5)|0;s[h+(p<<4)>>3]=+s[l>>3];n=u+3|0;s[h+(p<<4)+8>>3]=+s[N>>3];s[h+(n<<4)>>3]=+s[l>>3];l=4;break e}default:{y=42;break A}}}while(0);s[h+(n<<4)+8>>3]=+s[f>>3];t=t+-1|0;u=u+l|0}if((y|0)==42){a[B>>2]=f;a[B+4>>2]=f;a[B+8>>2]=513;ao(1,104761,B)|0;f=0;break}A:do{if(!o)f=0;else{f=0;while(1){if((f|0)>=(z|0)){f=0;break}p=Q+(f<<5)+24|0;b=+s[p>>3];N=Q+(f<<5)+8|0;s[p>>3]=-+s[N>>3];s[N>>3]=-b;f=f+1|0}while(1){if((f|0)>=(u|0)){f=0;break A}N=h+(f<<4)+8|0;s[N>>3]=-+s[N>>3];f=f+1|0}}}while(0);while(1){if((f|0)>=(z|0))break;s[Q+(f<<5)>>3]=2147483647.0;s[Q+(f<<5)+16>>3]=-2147483648.0;f=f+1|0}a[g>>2]=d;l=g+4|0;a[l>>2]=u;s[v>>3]=+s[A>>3];s[v+8>>3]=+s[A+8>>3];s[v+16>>3]=+s[A+40>>3];s[v+24>>3]=+s[A+48>>3];if((ic(g,v,Y)|0)<0){ao(1,104865,E)|0;f=0;break}if(!i){n=a[l>>2]|0;f=a[47274]|0;if((n|0)>(a[47273]|0)){if(!f)f=$F(n<<5)|0;else f=eV(f,n<<5)|0;a[47274]=f;n=a[l>>2]|0;a[47273]=n}t=a[47281]|0;l=0;while(1){if((l|0)>=(n|0))break;p=f+(l<<5)|0;N=t+(l<<4)|0;a[p>>2]=a[N>>2];a[p+4>>2]=a[N+4>>2];a[p+8>>2]=a[N+8>>2];a[p+12>>2]=a[N+12>>2];p=f+(l<<5)+16|0;N=l+1|0;E=t+(((N|0)%(n|0)|0)<<4)|0;a[p>>2]=a[E>>2];a[p+4>>2]=a[E+4>>2];a[p+8>>2]=a[E+8>>2];a[p+12>>2]=a[E+12>>2];l=N}if(!(r[A+29>>0]|0)){c=0.0;b=0.0}else{b=+s[A+16>>3];c=+D(+b);b=+M(+b)}s[C+8>>3]=b;s[C>>3]=c;if(!(r[A+69>>0]|0)){c=0.0;b=0.0}else{b=+s[A+56>>3];c=-+D(+b);b=-+M(+b)}s[C+24>>3]=b;s[C+16>>3]=c;a[W>>2]=a[Y>>2];a[W+4>>2]=a[Y+4>>2];if((Mt(f,n,W,C,Z)|0)<0){ao(1,104904,I)|0;f=0;break}}else{a[W>>2]=a[Y>>2];a[W+4>>2]=a[Y+4>>2];Gc(W,Z)}u=Z+4|0;if(!(PJ(a[u>>2]|0)|0)){f=0;while(1){if((f|0)>=(z|0))break;s[Q+(f<<5)>>3]=2147483647.0;s[Q+(f<<5)+16>>3]=-2147483648.0;f=f+1|0}l=a[u>>2]|0;t=a[47275]|0;n=a[Z>>2]|0;f=0;while(1){if((f|0)>=(l|0)){l=1;f=10;n=0;break}N=t+(f<<4)|0;p=n+(f<<4)|0;a[N>>2]=a[p>>2];a[N+4>>2]=a[p+4>>2];a[N+8>>2]=a[p+8>>2];a[N+12>>2]=a[p+12>>2];f=f+1|0}while(1){if(!((n|0)<15&l<<24>>24!=0))break;$J(Q,z,a[47275]|0,a[u>>2]|0,f);t=0;while(1){if((t|0)>=(z|0))break;if(+s[Q+(t<<5)>>3]==2147483647.0){y=82;break}if(+s[Q+(t<<5)+16>>3]==-2147483648.0){y=82;break}t=t+1|0}if((y|0)==82){y=0;N=f<<1;f=N;n=(N|0)>(2147483647/(z|0)|0|0)?15:n}l=(t|0)==(z|0)?0:l;n=n+1|0}if(l<<24>>24){p=Vh(a[((a[L>>2]&3|0)==3?L:G)+40>>2]|0)|0;N=Vh(a[((a[L>>2]&3|0)==2?L:m)+40>>2]|0)|0;a[V>>2]=p;a[V+4>>2]=N;ao(0,104942,V)|0;a[W>>2]=a[Y>>2];a[W+4>>2]=a[Y+4>>2];Gc(W,F);$J(Q,z,a[F>>2]|0,a[F+4>>2]|0,10);L2(a[F>>2]|0)}a[e>>2]=a[u>>2];f=a[47275]|0}else f=0}else f=0}}while(0);k=J;return f|0}function qJ(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0.0,n=0.0,l=0,t=0,c=0,b=0.0,u=0.0,w=0,o=0.0,h=0.0,d=0.0,B=0.0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0.0,J=0,p=0,N=0,R=0.0,X=0,H=0,U=0;U=k;k=k+32|0;M=U+16|0;D=U+8|0;c=U;r=0;t=0;while(1){if((t|0)>=(A|0))break;l=e+(t<<5)|0;B=+s[e+(t<<5)+8>>3]-+s[e+(t<<5)+24>>3];if(!((B>=0.0?B:-B)<.01)?(B=+s[l>>3]-+s[e+(t<<5)+16>>3],!((B>=0.0?B:-B)<.01)):0){if((r|0)!=(t|0)){X=e+(r<<5)|0;a[X>>2]=a[l>>2];a[X+4>>2]=a[l+4>>2];a[X+8>>2]=a[l+8>>2];a[X+12>>2]=a[l+12>>2];a[X+16>>2]=a[l+16>>2];a[X+20>>2]=a[l+20>>2];a[X+24>>2]=a[l+24>>2];a[X+28>>2]=a[l+28>>2]}r=r+1|0}t=t+1|0}F=e+16|0;do{if(!(+s[e>>3]>+s[F>>3])?(J=e+8|0,N=e+24|0,!(+s[J>>3]>+s[N>>3])):0){X=r+-1|0;p=a[15712]|0;C=0;while(1){if((C|0)>=(X|0))break;y=C+1|0;W=e+(y<<5)|0;f=+s[W>>3];z=e+(y<<5)+16|0;n=+s[z>>3];if(f>n){H=16;break}m=e+(y<<5)+8|0;b=+s[m>>3];Q=e+(y<<5)+24|0;u=+s[Q>>3];if(b>u){H=16;break}Y=e+(C<<5)+16|0;E=+s[Y>>3] >3]>n;A=v&1;G=e+(C<<5)+24|0;g=+s[G>>3]>3]>u;l=c&1;I=A+r+t+l|0;w=(I|0)!=0;if(!(0==0|w^1)){a[M>>2]=C;a[M+4>>2]=y;f3(p,105142,M)|0;Ap(i)}A:do{if(w){if(!E)if(!v)if(!g){if(c){c=0;w=r;r=Q;l=Z;H=24}}else{c=l;t=0;w=r;r=m;l=G;H=24}else{c=l;A=0;w=r;r=z;l=L;H=24}else{c=l;w=0;r=W;l=Y;H=24}if((H|0)==24){H=0;C=~~+s[l>>3];s[l>>3]=+s[r>>3];s[r>>3]=+(C|0);l=c;r=w}w=I+-1|0;c=0;while(1){if((c|0)>=(w|0))break A;do{if((r|0)!=1){if((A|0)==1){B=+(~~((+s[z>>3]+ +s[L>>3])*.5+.5)|0);s[z>>3]=B;s[L>>3]=B;A=0;break}if((t|0)==1){B=+(~~((+s[m>>3]+ +s[G>>3])*.5+.5)|0);s[m>>3]=B;s[G>>3]=B;t=0;break}if((l|0)==1){B=+(~~((+s[Q>>3]+ +s[Z>>3])*.5+.5)|0);s[Q>>3]=B;s[Z>>3]=B;l=0}}else{B=+(~~((+s[W>>3]+ +s[Y>>3])*.5+.5)|0);s[W>>3]=B;s[Y>>3]=B;r=0}}while(0);c=c+1|0}}}while(0);o=+s[L>>3];h=+s[Y>>3];d=+s[W>>3];B=+s[z>>3];l=ep(~~o,~~h,~~d,~~B)|0;u=+s[Z>>3];b=+s[G>>3];n=+s[m>>3];f=+s[Q>>3];r=ep(~~u,~~b,~~n,~~f)|0;if(!((l|0)!=0&(r|0)!=0)){C=y;continue}if((l|0)<(r|0)){Q=h-o>B-d;C=h>3]=Q?C?d:B:C?h:o;C=y;continue}else{Q=b-u>f-n;C=b >3]=Q?C?n:f:C?b:u;C=y;continue}}if((H|0)==16){a[D>>2]=y;ao(1,105096,D)|0;Ap(i);r=1;break}f=+s[i>>3];n=+s[e>>3];if(!(((!(f +s[F>>3]):0)?(V=+s[i+8>>3],!(V<+s[J>>3])):0)?!(V>+s[N>>3]):0)){if(0){}if(f >3]=n;else n=f;f=+s[F>>3];if(n>f)s[i>>3]=f;r=i+8|0;n=+s[r>>3];f=+s[J>>3];if(n >3]=f;n=f}f=+s[N>>3];if(n>f)s[r>>3]=f}l=i+40|0;f=+s[l>>3];r=e+(X<<5)|0;n=+s[r>>3];if(((!(f +s[e+(X<<5)+16>>3]):0)?(R=+s[i+48>>3],!(R<+s[e+(X<<5)+8>>3])):0)?!(R>+s[e+(X<<5)+24>>3]):0){r=0;break}if(0){}if(f >3]=n;f=n}n=+s[e+(X<<5)+16>>3];if(f>n)s[l>>3]=n;r=i+48|0;f=+s[r>>3];n=+s[e+(X<<5)+8>>3];if(f >3]=n;else n=f;f=+s[e+(X<<5)+24>>3];if(n>f){s[r>>3]=f;r=0}else r=0}else H=12}while(0);if((H|0)==12){ao(1,105051,c)|0;Ap(i);r=1}k=U;return r|0}function $J(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var a=0,n=0,l=0,t=0,c=0,b=0,u=0.0,w=0.0,k=0,o=0,h=0,d=0,B=0,g=0.0,v=0,E=0.0,C=0.0,I=0.0,Z=0.0,G=0.0;B=U(f,e)|0;g=1.0/+(B|0);f=0;A:while(1){v=f+3|0;if((v|0)>=(r|0))break;k=i+(f<<4)|0;o=i+(f<<4)+8|0;d=f+1|0;h=i+(d<<4)|0;d=i+(d<<4)+8|0;t=f+2|0;l=i+(t<<4)|0;t=i+(t<<4)+8|0;c=i+(v<<4)|0;b=i+(v<<4)+8|0;n=0;while(1){if((n|0)>(B|0)){f=v;continue A}E=g*+(n|0);u=+s[k>>3];w=+s[o>>3];Z=+s[h>>3];C=+s[d>>3];G=+s[l>>3];I=+s[t>>3];u=(Z-u)*E+u;w=(C-w)*E+w;Z=(G-Z)*E+Z;C=(I-C)*E+C;u=(Z-u)*E+u;w=(C-w)*E+w;u=((G-Z+(+s[c>>3]-G)*E)*E+Z-u)*E+u;w=((I-C+(+s[b>>3]-I)*E)*E+C-w)*E+w;a=0;while(1){if((a|0)>=(e|0))break;if(w<=+s[A+(a<<5)+24>>3]+.0001?w>=+s[A+(a<<5)+8>>3]+-.0001:0){f=A+(a<<5)|0;if(+s[f>>3]>u)s[f>>3]=u;f=A+(a<<5)+16|0;if(+s[f>>3]>3]=u}a=a+1|0}n=n+1|0}}return}function Ap(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0.0,w=0.0,o=0.0,h=0.0,d=0;b=k;k=k+112|0;t=b+80|0;c=b+48|0;l=b+8|0;n=b;i=a[15712]|0;f=A+80|0;a[n>>2]=a[f>>2];f3(i,105268,n)|0;n=A+84|0;e=0;while(1){if((e|0)>=(a[f>>2]|0))break;d=a[n>>2]|0;h=+s[d+(e<<5)>>3];o=+s[d+(e<<5)+8>>3];w=+s[d+(e<<5)+16>>3];u=+s[d+(e<<5)+24>>3];a[l>>2]=e;s[l+8>>3]=h;s[l+16>>3]=o;s[l+24>>3]=w;s[l+32>>3]=u;f3(i,105279,l)|0;e=e+1|0}h=+s[A+8>>3];o=+s[A+16>>3];d=r[A+29>>0]|0?105310:105322;s[c>>3]=+s[A>>3];s[c+8>>3]=h;s[c+16>>3]=o;a[c+24>>2]=d;f3(i,105338,c)|0;o=+s[A+48>>3];h=+s[A+56>>3];d=r[A+69>>0]|0?105310:105322;s[t>>3]=+s[A+40>>3];s[t+8>>3]=o;s[t+16>>3]=h;a[t+24>>2]=d;f3(i,105389,t)|0;k=b;return}function ep(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;do{if((e|0)>(i|0)&(r|0)>(A|0)){if(!((i|0)>(A|0)|(r|0)<(A|0))){A=r-A|0;break}if((e|0)<(i|0)|(e|0)>(r|0)){e=e-A|0;A=r-i|0;A=(e|0)<(A|0)?e:A;break}else{A=e-i|0;break}}else A=0}while(0);return A|0}function ip(A,e){A=A|0;e=e|0;return _J(A,e,1)|0}function rp(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0;c=k;k=k+80|0;n=c;t=1;f=e;while(1){l=f;f=a[(a[f+16>>2]|0)+172>>2]|0;if(!((f|0)!=0&(l|0)!=(f|0)))break;else t=t+1|0}if((t|0)>=21)n=qF(t<<2)|0;l=0;f=e;while(1){if((l|0)>=(t|0))break;a[n+(l<<2)>>2]=f;l=l+1|0;f=a[(a[f+16>>2]|0)+172>>2]|0}fp(A,n,t,i,r);if((t|0)>20)L2(n);k=c;return}function fp(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0,b=0.0,u=0.0,w=0.0,o=0.0,h=0.0,d=0,B=0.0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,Y=0,D=0,M=0,F=0,V=0,J=0.0,p=0.0,N=0.0,R=0,X=0;V=k;k=k+304|0;m=V+272|0;G=V+208|0;Y=V+96|0;D=V+32|0;M=V+16|0;F=V;d=V+192|0;Z=V+176|0;l=V+160|0;Q=V+296|0;L=V+288|0;t=a[e>>2]|0;C=a[t>>2]&3;c=t+-48|0;y=a[((C|0)==2?t:c)+40>>2]|0;g=Y+16|0;C=(a[(a[((C|0)==3?t:t+48|0)+40>>2]|0)+16>>2]|0)+16|0;I=t+16|0;W=(a[I>>2]|0)+16|0;a[G>>2]=a[C>>2];a[G+4>>2]=a[C+4>>2];a[G+8>>2]=a[C+8>>2];a[G+12>>2]=a[C+12>>2];a[m>>2]=a[W>>2];a[m+4>>2]=a[W+4>>2];a[m+8>>2]=a[W+8>>2];a[m+12>>2]=a[W+12>>2];ap(d,G,m);a[Y>>2]=a[d>>2];a[Y+4>>2]=a[d+4>>2];a[Y+8>>2]=a[d+8>>2];a[Y+12>>2]=a[d+12>>2];a[g>>2]=a[d>>2];a[g+4>>2]=a[d+4>>2];a[g+8>>2]=a[d+8>>2];a[g+12>>2]=a[d+12>>2];a[M>>2]=a[d>>2];a[M+4>>2]=a[d+4>>2];a[M+8>>2]=a[d+8>>2];a[M+12>>2]=a[d+12>>2];d=Y+32|0;W=Y+48|0;C=(a[y+16>>2]|0)+16|0;I=(a[I>>2]|0)+56|0;a[G>>2]=a[C>>2];a[G+4>>2]=a[C+4>>2];a[G+8>>2]=a[C+8>>2];a[G+12>>2]=a[C+12>>2];a[m>>2]=a[I>>2];a[m+4>>2]=a[I+4>>2];a[m+8>>2]=a[I+8>>2];a[m+12>>2]=a[I+12>>2];ap(Z,G,m);a[W>>2]=a[Z>>2];a[W+4>>2]=a[Z+4>>2];a[W+8>>2]=a[Z+8>>2];a[W+12>>2]=a[Z+12>>2];a[d>>2]=a[Z>>2];a[d+4>>2]=a[Z+4>>2];a[d+8>>2]=a[Z+8>>2];a[d+12>>2]=a[Z+12>>2];a[F>>2]=a[Z>>2];a[F+4>>2]=a[Z+4>>2];a[F+8>>2]=a[Z+8>>2];a[F+12>>2]=a[Z+12>>2];A:do{if((i|0)!=1&(r[194954]|0)==0){b=+s[Y>>3];u=+s[W>>3];J=b-u;w=+s[Y+8>>3];o=+s[Y+56>>3];B=w-o;h=B*B;if(h+J*J<1.0e-06){a[g>>2]=a[Y>>2];a[g+4>>2]=a[Y+4>>2];a[g+8>>2]=a[Y+8>>2];a[g+12>>2]=a[Y+12>>2];a[d>>2]=a[W>>2];a[d+4>>2]=a[W+4>>2];a[d+8>>2]=a[W+8>>2];a[d+12>>2]=a[W+12>>2];Z=Y+24|0;I=Y+40|0;u=0.0;b=0.0}else{p=u-b;J=+z(+(h+p*p));C=a[(a[(a[A+60>>2]|0)+16>>2]|0)+248>>2]|0;N=+((U(C,i+-1|0)|0)/2|0|0);h=B*N/J;s[g>>3]=h+b;b=p*N/J;Z=Y+24|0;s[Z>>3]=b+w;s[d>>3]=h+u;I=Y+40|0;s[I>>3]=o+b;b=+(0-C|0);u=p*b/J;b=B*b/J}f=(f|0)==6;v=L+4|0;E=Q+4|0;t=0;while(1){if((t|0)>=(i|0))break A;C=a[e+(t<<2)>>2]|0;c=C+-48|0;e:do{if((a[((a[C>>2]&3|0)==2?C:c)+40>>2]|0)==(y|0)){a[M>>2]=a[Y>>2];a[M+4>>2]=a[Y+4>>2];a[M+8>>2]=a[Y+8>>2];a[M+12>>2]=a[Y+12>>2];a[F>>2]=a[W>>2];a[F+4>>2]=a[W+4>>2];a[F+8>>2]=a[W+8>>2];a[F+12>>2]=a[W+12>>2];l=0;while(1){if((l|0)==4)break e;R=D+(l<<4)|0;X=Y+(l<<4)|0;a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];l=l+1|0}}else{a[M>>2]=a[W>>2];a[M+4>>2]=a[W+4>>2];a[M+8>>2]=a[W+8>>2];a[M+12>>2]=a[W+12>>2];a[F>>2]=a[Y>>2];a[F+4>>2]=a[Y+4>>2];a[F+8>>2]=a[Y+8>>2];a[F+12>>2]=a[Y+12>>2];l=0;while(1){if((l|0)==4)break e;X=D+(3-l<<4)|0;R=Y+(l<<4)|0;a[X>>2]=a[R>>2];a[X+4>>2]=a[R+4>>2];a[X+8>>2]=a[R+8>>2];a[X+12>>2]=a[R+12>>2];l=l+1|0}}}while(0);if(f){a[v>>2]=4;a[L>>2]=G;l=0;while(1){if((l|0)==4)break;X=G+(l<<4)|0;R=D+(l<<4)|0;a[X>>2]=a[R>>2];a[X+4>>2]=a[R+4>>2];a[X+8>>2]=a[R+8>>2];a[X+12>>2]=a[R+12>>2];l=l+1|0}a[m>>2]=a[L>>2];a[m+4>>2]=a[L+4>>2];Gc(m,Q);vN(C,a[((a[C>>2]&3|0)==2?C:c)+40>>2]|0,a[Q>>2]|0,a[E>>2]|0,n)}else vN(C,a[((a[C>>2]&3|0)==2?C:c)+40>>2]|0,D,4,n);a[G>>2]=a[M>>2];a[G+4>>2]=a[M+4>>2];a[G+8>>2]=a[M+8>>2];a[G+12>>2]=a[M+12>>2];a[m>>2]=a[F>>2];a[m+4>>2]=a[F+4>>2];a[m+8>>2]=a[F+8>>2];a[m+12>>2]=a[F+12>>2];XN(A,C,G,m);s[g>>3]=+s[g>>3]+b;s[Z>>3]=+s[Z>>3]+u;s[d>>3]=+s[d>>3]+b;s[I>>3]=+s[I>>3]+u;t=t+1|0}}else{if((f|0)==4){np(l,A);a[m>>2]=a[l>>2];a[m+4>>2]=a[l+4>>2];a[m+8>>2]=a[l+8>>2];a[m+12>>2]=a[l+12>>2];lp(Y,m)}vN(t,a[((a[t>>2]&3|0)==2?t:c)+40>>2]|0,Y,4,n);a[G>>2]=a[M>>2];a[G+4>>2]=a[M+4>>2];a[G+8>>2]=a[M+8>>2];a[G+12>>2]=a[M+12>>2];a[m>>2]=a[F>>2];a[m+4>>2]=a[F+4>>2];a[m+8>>2]=a[F+8>>2];a[m+12>>2]=a[F+12>>2];XN(A,t,G,m)}}while(0);k=V;return}function ap(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;r=+s[i+8>>3]+ +s[e+8>>3];s[A>>3]=+s[i>>3]+ +s[e>>3];s[A+8>>3]=r;return}function np(A,e){A=A|0;e=e|0;e=a[e+16>>2]|0;s[23305]=(+s[e+32>>3]+ +s[e+16>>3])*.5;s[23306]=(+s[e+40>>3]+ +s[e+24>>3])*.5;a[A>>2]=a[46610];a[A+4>>2]=a[46611];a[A+8>>2]=a[46612];a[A+12>>2]=a[46613];return}function lp(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0.0,a=0.0,n=0.0,l=0.0;a=+s[A>>3];r=+s[A+48>>3];l=(r+a)*.5;n=+s[A+8>>3];i=+s[A+56>>3];f=(i+n)*.5;a=r-a;n=i-n;a=+z(+(n*n+a*a))*.2;n=+s[e>>3]-l;i=+s[e+8>>3]-f;r=+z(+(i*i+n*n));if(!(r==0.0)){n=l-n/r*a;l=f-i/r*a;s[A+32>>3]=n;s[A+16>>3]=n;s[A+40>>3]=l;s[A+24>>3]=l}return}function tp(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,b=0.0,u=0,w=0.0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0.0,Y=0,D=0.0,M=0.0,F=0.0;y=k;k=k+208|0;g=y+192|0;B=y+176|0;Q=y+32|0;C=y+16|0;I=y;Z=y+160|0;G=y+144|0;v=y+128|0;E=y+112|0;n=r&2130706432;m=(r&8|0)==0?(n|0)==0?4:n:8;if((m|0)==436207616)cp(A,e,i,f);else{L=qF((i<<6)+64|0)|0;o=i+-1|0;h=I+8|0;d=C+8|0;w=12.0;r=0;while(1){if((r|0)>=(i|0))break;u=e+(r<<4)|0;a[C>>2]=a[u>>2];a[C+4>>2]=a[u+4>>2];a[C+8>>2]=a[u+8>>2];a[C+12>>2]=a[u+12>>2];if((r|0)<(o|0)){r=r+1|0;u=e+(r<<4)|0;a[I>>2]=a[u>>2];a[I+4>>2]=a[u+4>>2];a[I+8>>2]=a[u+8>>2];a[I+12>>2]=a[u+12>>2]}else{a[I>>2]=a[e>>2];a[I+4>>2]=a[e+4>>2];a[I+8>>2]=a[e+8>>2];a[I+12>>2]=a[e+12>>2];r=r+1|0}b=+s[I>>3]-+s[C>>3];W=+s[h>>3]-+s[d>>3];b=+z(+(W*W+b*b))*.3333333333333333;w=w=(i|0))break;n=e+(l<<4)|0;a[C>>2]=a[n>>2];a[C+4>>2]=a[n+4>>2];a[C+8>>2]=a[n+8>>2];a[C+12>>2]=a[n+12>>2];if((l|0)<(o|0)){n=e+(l+1<<4)|0;a[I>>2]=a[n>>2];a[I+4>>2]=a[n+4>>2];a[I+8>>2]=a[n+8>>2];a[I+12>>2]=a[n+12>>2]}else{a[I>>2]=a[e>>2];a[I+4>>2]=a[e+4>>2];a[I+8>>2]=a[e+8>>2];a[I+12>>2]=a[e+12>>2]}b=+s[I>>3]-+s[C>>3];W=+s[h>>3]-+s[d>>3];b=w/+z(+(W*W+b*b));b=c?b*.3333333333333333:t?b*.5:b;n=L+(r<<4)|0;if(u){a[B>>2]=a[C>>2];a[B+4>>2]=a[C+4>>2];a[B+8>>2]=a[C+8>>2];a[B+12>>2]=a[C+12>>2];a[g>>2]=a[I>>2];a[g+4>>2]=a[I+4>>2];a[g+8>>2]=a[I+8>>2];a[g+12>>2]=a[I+12>>2];sp(Z,b*.5,B,g);a[n>>2]=a[Z>>2];a[n+4>>2]=a[Z+4>>2];a[n+8>>2]=a[Z+8>>2];a[n+12>>2]=a[Z+12>>2]}else{a[n>>2]=a[C>>2];a[n+4>>2]=a[C+4>>2];a[n+8>>2]=a[C+8>>2];a[n+12>>2]=a[C+12>>2]}n=L+(r+1<<4)|0;a[B>>2]=a[C>>2];a[B+4>>2]=a[C+4>>2];a[B+8>>2]=a[C+8>>2];a[B+12>>2]=a[C+12>>2];a[g>>2]=a[I>>2];a[g+4>>2]=a[I+4>>2];a[g+8>>2]=a[I+8>>2];a[g+12>>2]=a[I+12>>2];sp(G,b,B,g);a[n>>2]=a[G>>2];a[n+4>>2]=a[G+4>>2];a[n+8>>2]=a[G+8>>2];a[n+12>>2]=a[G+12>>2];n=r+3|0;Y=L+(r+2<<4)|0;a[B>>2]=a[C>>2];a[B+4>>2]=a[C+4>>2];a[B+8>>2]=a[C+8>>2];a[B+12>>2]=a[C+12>>2];a[g>>2]=a[I>>2];a[g+4>>2]=a[I+4>>2];a[g+8>>2]=a[I+8>>2];a[g+12>>2]=a[I+12>>2];sp(v,1.0-b,B,g);a[Y>>2]=a[v>>2];a[Y+4>>2]=a[v+4>>2];a[Y+8>>2]=a[v+8>>2];a[Y+12>>2]=a[v+12>>2];if(u){Y=L+(n<<4)|0;a[B>>2]=a[C>>2];a[B+4>>2]=a[C+4>>2];a[B+8>>2]=a[C+8>>2];a[B+12>>2]=a[C+12>>2];a[g>>2]=a[I>>2];a[g+4>>2]=a[I+4>>2];a[g+8>>2]=a[I+8>>2];a[g+12>>2]=a[I+12>>2];sp(E,1.0-b*.5,B,g);a[Y>>2]=a[E>>2];a[Y+4>>2]=a[E+4>>2];a[Y+8>>2]=a[E+8>>2];a[Y+12>>2]=a[E+12>>2];r=r+4|0}else r=n;l=l+1|0}c=L+(r<<4)|0;a[c>>2]=a[L>>2];a[c+4>>2]=a[L+4>>2];a[c+8>>2]=a[L+8>>2];a[c+12>>2]=a[L+12>>2];c=L+(r+1<<4)|0;t=L+16|0;a[c>>2]=a[t>>2];a[c+4>>2]=a[t+4>>2];a[c+8>>2]=a[t+8>>2];a[c+12>>2]=a[t+12>>2];r=L+(r+2<<4)|0;c=L+32|0;a[r>>2]=a[c>>2];a[r+4>>2]=a[c+4>>2];a[r+8>>2]=a[c+8>>2];a[r+12>>2]=a[c+12>>2];r=m&2147483647;A:do{if((r|0)<201326592){if((r|0)>=83886080){if((r|0)<134217728){if((r|0)<100663296){switch(r|0){case 83886080:break;default:break A}if((i|0)==4){Y=qF(192)|0;a[Y>>2]=a[e>>2];a[Y+4>>2]=a[e+4>>2];a[Y+8>>2]=a[e+8>>2];a[Y+12>>2]=a[e+12>>2];o=Y+16|0;g=e+16|0;a[o>>2]=a[g>>2];a[o+4>>2]=a[g+4>>2];a[o+8>>2]=a[g+8>>2];a[o+12>>2]=a[g+12>>2];o=L+48|0;g=L+64|0;w=+s[g>>3];u=Y+32|0;s[u>>3]=w;h=L+56|0;d=L+72|0;D=+s[d>>3];G=Y+40|0;s[G>>3]=D;W=+s[o>>3]+w-+s[c>>3];v=Y+48|0;s[v>>3]=W;F=+s[h>>3]+D-+s[L+40>>3];I=Y+56|0;s[I>>3]=F;M=+s[g>>3]+W-+s[o>>3];o=Y+64|0;s[o>>3]=M;b=+s[d>>3]+F-+s[h>>3];h=Y+72|0;s[h>>3]=b;d=Y+80|0;s[d>>3]=w+M-W;s[Y+88>>3]=D+b-F;g=L+96|0;E=L+80|0;F=+s[E>>3];i=Y+144|0;s[i>>3]=F;C=L+104|0;B=L+88|0;b=+s[B>>3];s[Y+152>>3]=b;D=+s[g>>3]+F-+s[L+112>>3];Z=Y+128|0;s[Z>>3]=D;W=+s[C>>3]+b-+s[L+120>>3];m=Y+136|0;s[m>>3]=W;M=+s[E>>3]+D-+s[g>>3];g=Y+112|0;s[g>>3]=M;w=+s[B>>3]+W-+s[C>>3];C=Y+120|0;s[C>>3]=w;B=Y+96|0;s[B>>3]=F+M-D;E=Y+104|0;s[E>>3]=b+w-W;c=Y+160|0;t=e+32|0;a[c>>2]=a[t>>2];a[c+4>>2]=a[t+4>>2];a[c+8>>2]=a[t+8>>2];a[c+12>>2]=a[t+12>>2];c=Y+176|0;e=e+48|0;a[c>>2]=a[e>>2];a[c+4>>2]=a[e+4>>2];a[c+8>>2]=a[e+8>>2];a[c+12>>2]=a[e+12>>2];ar(A,Y,12,f);a[Q>>2]=a[u>>2];a[Q+4>>2]=a[u+4>>2];a[Q+8>>2]=a[u+8>>2];a[Q+12>>2]=a[u+12>>2];W=+s[u>>3];w=+s[v>>3];W=W+W-w;v=Q+16|0;s[v>>3]=W;b=+s[G>>3];D=+s[I>>3];b=b+b-D;I=Q+24|0;s[I>>3]=b;G=Q+32|0;s[G>>3]=+s[o>>3]+W-w;e=Q+40|0;s[e>>3]=+s[h>>3]+b-D;f=Q+48|0;a[f>>2]=a[d>>2];a[f+4>>2]=a[d+4>>2];a[f+8>>2]=a[d+8>>2];a[f+12>>2]=a[d+12>>2];tr(A,Q,4);a[Q>>2]=a[B>>2];a[Q+4>>2]=a[B+4>>2];a[Q+8>>2]=a[B+8>>2];a[Q+12>>2]=a[B+12>>2];D=+s[B>>3];b=+s[g>>3];D=D-(b-D);s[v>>3]=D;w=+s[E>>3];W=+s[C>>3];w=w-(W-w);s[I>>3]=w;s[G>>3]=+s[Z>>3]+D-b;s[e>>3]=+s[m>>3]+w-W;a[f>>2]=a[i>>2];a[f+4>>2]=a[i+4>>2];a[f+8>>2]=a[i+8>>2];a[f+12>>2]=a[i+12>>2];tr(A,Q,4);L2(Y);break}else gA(105438,105449,737,105458)}if((r|0)<117440512){switch(r|0){case 100663296:break;default:break A}Z=i+5|0;Y=qF(Z<<4)|0;G=e+16|0;D=+s[G>>3];D=(+s[e>>3]-D)*.625+D;s[Y>>3]=D;m=e+40|0;F=+s[m>>3];i=e+24|0;E=L+48|0;C=L+56|0;I=L+72|0;F=(+s[i>>3]-F)*.5+F+(+s[C>>3]-+s[I>>3])*1.5;s[Y+8>>3]=F;M=+s[G>>3];M=(+s[e>>3]-M)*.25+M;s[Y+16>>3]=M;s[Y+24>>3]=F;s[Y+32>>3]=M;W=+s[m>>3];s[Y+40>>3]=(+s[i>>3]-W)*.5+W;M=(+s[c>>3]-+s[E>>3])*.5+M;s[Y+48>>3]=M;W=+s[m>>3];s[Y+56>>3]=(+s[i>>3]-W)*.5+W;s[Y+64>>3]=M;M=+s[m>>3];M=(+s[i>>3]-M)*.5+M+(+s[C>>3]-+s[I>>3]);s[Y+72>>3]=M;s[Y+80>>3]=D;s[Y+88>>3]=M;s[Y+96>>3]=D;M=M-(+s[C>>3]-+s[I>>3])*.25;s[Y+104>>3]=M;s[Y+112>>3]=+s[c>>3]+D-+s[E>>3];s[Y+120>>3]=(+s[C>>3]-+s[I>>3])*.5+M;s[Y+128>>3]=+s[Y>>3];s[Y+136>>3]=(+s[C>>3]-+s[I>>3])*.25+F;ar(A,Y,Z,f);s[Q>>3]=+s[G>>3];F=+s[m>>3];s[Q+8>>3]=(+s[i>>3]-F)*.5+F;s[Q+16>>3]=+s[e>>3];s[Q+24>>3]=(+s[e+8>>3]-+s[e+56>>3])*.5+F;tr(A,Q,2);L2(Y);break}else{switch(r|0){case 117440512:break;default:break A}i=i+1|0;Y=qF(i<<4)|0;s[Y>>3]=+s[t>>3];G=L+56|0;m=L+72|0;s[Y+8>>3]=+s[L+24>>3]-(+s[G>>3]-+s[m>>3])*.5;s[Y+16>>3]=+s[L+48>>3];F=+s[G>>3];s[Y+24>>3]=F-(F-+s[m>>3])*.5;s[Y+32>>3]=+s[e+32>>3];Q=e+40|0;s[Y+40>>3]=(+s[G>>3]-+s[m>>3])*.5+ +s[Q>>3];s[Y+48>>3]=+s[t>>3];s[Y+56>>3]=(+s[G>>3]-+s[m>>3])*.5+ +s[Q>>3];F=+s[e+8>>3];s[Y+72>>3]=F-(F-+s[e+56>>3])*.5;s[Y+64>>3]=+s[e>>3];ar(A,Y,i,f);L2(Y);break}}if((r|0)<167772160)if((r|0)<150994944){switch(r|0){case 134217728:break;default:break A}Z=i+4|0;Y=qF(Z<<4)|0;G=e+16|0;W=+s[G>>3];I=L+48|0;W=(+s[e>>3]-W)*.5+W+(+s[c>>3]-+s[I>>3])*.25;s[Y>>3]=W;m=e+40|0;F=+s[m>>3];i=e+24|0;F=(+s[i>>3]-F)*.5+F;s[Y+8>>3]=F;s[Y+16>>3]=W;E=L+56|0;C=L+72|0;D=(+s[E>>3]-+s[C>>3])*.5+F;s[Y+24>>3]=D;W=(+s[c>>3]-+s[I>>3])*.5+W;s[Y+32>>3]=W;s[Y+40>>3]=D;s[Y+48>>3]=W;W=(+s[E>>3]-+s[C>>3])*.5+D;s[Y+56>>3]=W;M=+s[G>>3];M=(+s[e>>3]-M)*.5+M+(+s[c>>3]-+s[I>>3])*-.75;s[Y+64>>3]=M;s[Y+72>>3]=W;s[Y+80>>3]=M;s[Y+88>>3]=D;M=+s[G>>3];M=(+s[e>>3]-M)*.5+M+(+s[c>>3]-+s[I>>3])*-.25;s[Y+96>>3]=M;s[Y+104>>3]=D;s[Y+112>>3]=M;s[Y+120>>3]=F;ar(A,Y,Z,f);s[Q>>3]=+s[G>>3];F=+s[m>>3];s[Q+8>>3]=(+s[i>>3]-F)*.5+F;s[Q+16>>3]=+s[e>>3];s[Q+24>>3]=(+s[e+8>>3]-+s[e+56>>3])*.5+F;tr(A,Q,2);L2(Y);break}else{switch(r|0){case 150994944:break;default:break A}Z=i+2|0;Y=qF(Z<<4)|0;G=e+16|0;D=+s[G>>3];I=L+48|0;D=(+s[e>>3]-D)*.5+D+(+s[c>>3]-+s[I>>3])*.75;s[Y>>3]=D;m=e+40|0;F=+s[m>>3];i=e+24|0;F=(+s[i>>3]-F)*.5+F;s[Y+8>>3]=F;s[Y+16>>3]=D;E=L+56|0;C=L+72|0;D=(+s[E>>3]-+s[C>>3])*.25+F;s[Y+24>>3]=D;M=+s[G>>3];s[Y+32>>3]=(+s[e>>3]-M)*.5+M+(+s[c>>3]-+s[I>>3])*.25;M=(+s[E>>3]-+s[C>>3])*.5+D;s[Y+40>>3]=M;W=+s[G>>3];s[Y+48>>3]=(+s[e>>3]-W)*.5+W+(+s[c>>3]-+s[I>>3])*-.25;s[Y+56>>3]=M;M=+s[G>>3];M=(+s[e>>3]-M)*.5+M+(+s[c>>3]-+s[I>>3])*-.75;s[Y+64>>3]=M;s[Y+72>>3]=D;s[Y+80>>3]=M;s[Y+88>>3]=F;ar(A,Y,Z,f);s[Q>>3]=+s[G>>3];F=+s[m>>3];s[Q+8>>3]=(+s[i>>3]-F)*.5+F;s[Q+16>>3]=+s[e>>3];s[Q+24>>3]=(+s[e+8>>3]-+s[e+56>>3])*.5+F;tr(A,Q,2);L2(Y);break}else if((r|0)<184549376){switch(r|0){case 167772160:break;default:break A}Z=i+1|0;Y=qF(Z<<4)|0;G=e+16|0;D=+s[G>>3];E=L+48|0;D=+s[c>>3]+D+(+s[e>>3]-D)*.5-+s[E>>3];s[Y>>3]=D;m=e+40|0;F=+s[m>>3];i=e+24|0;C=L+56|0;I=L+72|0;F=(+s[i>>3]-F)*.5+F+(+s[C>>3]-+s[I>>3])*.25;s[Y+8>>3]=F;D=D-+s[c>>3]+ +s[E>>3];s[Y+16>>3]=D;s[Y+24>>3]=+s[C>>3]+F-+s[I>>3];s[Y+32>>3]=D;D=(+s[C>>3]-+s[I>>3])*.5+F;s[Y+40>>3]=D;M=+s[G>>3];M=(+s[e>>3]-M)*.25+M;s[Y+48>>3]=M;s[Y+56>>3]=D;s[Y+64>>3]=M;s[Y+72>>3]=F;ar(A,Y,Z,f);s[Q>>3]=+s[G>>3];F=+s[m>>3];s[Q+8>>3]=(+s[i>>3]-F)*.5+F;s[Q+16>>3]=+s[e>>3];s[Q+24>>3]=(+s[e+8>>3]-+s[e+56>>3])*.5+F;tr(A,Q,2);L2(Y);break}else{switch(r|0){case 184549376:break;default:break A}G=i+4|0;Y=qF(G<<4)|0;Z=e+16|0;D=+s[Z>>3];M=+s[e>>3]-D;v=L+48|0;M=M*.125+D+(+s[c>>3]-+s[v>>3]+M)*.5;s[Y>>3]=M;C=e+40|0;D=+s[C>>3];I=e+24|0;i=L+56|0;E=L+72|0;D=(+s[I>>3]-D)*.5+D+(+s[i>>3]-+s[E>>3])*.25;s[Y+8>>3]=D;F=+s[Z>>3];F=(+s[e>>3]-F)*.375+F;s[Y+16>>3]=F;s[Y+24>>3]=D;s[Y+32>>3]=F;D=(+s[i>>3]-+s[E>>3])*.5+D;s[Y+40>>3]=D;F=F-(+s[c>>3]-+s[v>>3])*.5;s[Y+48>>3]=F;s[Y+56>>3]=D;m=Y+64|0;s[m>>3]=F;F=+s[C>>3];F=(+s[I>>3]-F)*.5+F+(+s[i>>3]-+s[E>>3])*-.25;s[Y+72>>3]=F;D=M-(+s[c>>3]-+s[v>>3])*.5;s[Y+80>>3]=D;s[Y+88>>3]=F;s[Y+96>>3]=D;F=F-(+s[i>>3]-+s[E>>3])*.5;s[Y+104>>3]=F;E=Y+112|0;s[E>>3]=M;s[Y+120>>3]=F;ar(A,Y,G,f);s[Q>>3]=+s[Z>>3];F=+s[C>>3];Z=Q+8|0;s[Z>>3]=(+s[I>>3]-F)*.5+F;G=Q+16|0;s[G>>3]=+s[m>>3];m=e+8|0;i=e+56|0;f=Q+24|0;s[f>>3]=(+s[m>>3]-+s[i>>3])*.5+F;tr(A,Q,2);s[Q>>3]=+s[E>>3];F=+s[C>>3];s[Z>>3]=(+s[I>>3]-F)*.5+F;s[G>>3]=+s[e>>3];s[f>>3]=(+s[m>>3]-+s[i>>3])*.5+F;tr(A,Q,2);L2(Y);break}}if((r|0)<33554432){if((r|0)<8){switch(r|0){case 4:break;default:break A}l=$F((i*96|0)+32|0)|0;r=0;n=0;while(1){t=n|1;c=l+(n<<4)|0;if((r|0)>=(i|0))break;e=r<<2;Y=L+(e<<4)|0;a[c>>2]=a[Y>>2];a[c+4>>2]=a[Y+4>>2];a[c+8>>2]=a[Y+8>>2];a[c+12>>2]=a[Y+12>>2];Y=l+(t<<4)|0;Q=L+((e|1)<<4)|0;a[Y>>2]=a[Q>>2];a[Y+4>>2]=a[Q+4>>2];a[Y+8>>2]=a[Q+8>>2];a[Y+12>>2]=a[Q+12>>2];Y=l+(n+2<<4)|0;a[Y>>2]=a[Q>>2];a[Y+4>>2]=a[Q+4>>2];a[Y+8>>2]=a[Q+8>>2];a[Y+12>>2]=a[Q+12>>2];Y=l+(n+3<<4)|0;Q=L+((e|2)<<4)|0;a[Y>>2]=a[Q>>2];a[Y+4>>2]=a[Q+4>>2];a[Y+8>>2]=a[Q+8>>2];a[Y+12>>2]=a[Q+12>>2];Y=l+(n+4<<4)|0;a[Y>>2]=a[Q>>2];a[Y+4>>2]=a[Q+4>>2];a[Y+8>>2]=a[Q+8>>2];a[Y+12>>2]=a[Q+12>>2];Y=l+(n+5<<4)|0;e=L+((e|3)<<4)|0;a[Y>>2]=a[e>>2];a[Y+4>>2]=a[e+4>>2];a[Y+8>>2]=a[e+8>>2];a[Y+12>>2]=a[e+12>>2];r=r+1|0;n=n+6|0}a[c>>2]=a[l>>2];a[c+4>>2]=a[l+4>>2];a[c+8>>2]=a[l+8>>2];a[c+12>>2]=a[l+12>>2];i=l+(t<<4)|0;Y=l+16|0;a[i>>2]=a[Y>>2];a[i+4>>2]=a[Y+4>>2];a[i+8>>2]=a[Y+8>>2];a[i+12>>2]=a[Y+12>>2];lr(A,Y,t,0,0,f&255);L2(l);break}if((r|0)<16777216){switch(r|0){case 8:break;default:break A}ar(A,e,i,f);n=Q+16|0;r=0;while(1){if((r|0)>=(i|0))break A;Y=r*3|0;f=L+(Y+2<<4)|0;a[Q>>2]=a[f>>2];a[Q+4>>2]=a[f+4>>2];a[Q+8>>2]=a[f+8>>2];a[Q+12>>2]=a[f+12>>2];Y=L+(Y+4<<4)|0;a[n>>2]=a[Y>>2];a[n+4>>2]=a[Y+4>>2];a[n+8>>2]=a[Y+8>>2];a[n+12>>2]=a[Y+12>>2];tr(A,Q,2);r=r+1|0}}switch(r|0){case 16777216:break;default:break A}n=i+1|0;l=qF(n<<4)|0;r=1;while(1){if((r|0)>=(i|0))break;Y=l+(r<<4)|0;m=e+(r<<4)|0;a[Y>>2]=a[m>>2];a[Y+4>>2]=a[m+4>>2];a[Y+8>>2]=a[m+8>>2];a[Y+12>>2]=a[m+12>>2];r=r+1|0}e=i*3|0;m=L+(e+1<<4)|0;a[l>>2]=a[m>>2];a[l+4>>2]=a[m+4>>2];a[l+8>>2]=a[m+8>>2];a[l+12>>2]=a[m+12>>2];i=l+(i<<4)|0;Y=L+(e+-1<<4)|0;a[i>>2]=a[Y>>2];a[i+4>>2]=a[Y+4>>2];a[i+8>>2]=a[Y+8>>2];a[i+12>>2]=a[Y+12>>2];ar(A,l,n,f);L2(l);a[Q>>2]=a[Y>>2];a[Q+4>>2]=a[Y+4>>2];a[Q+8>>2]=a[Y+8>>2];a[Q+12>>2]=a[Y+12>>2];Y=Q+16|0;a[Y>>2]=a[m>>2];a[Y+4>>2]=a[m+4>>2];a[Y+8>>2]=a[m+8>>2];a[Y+12>>2]=a[m+12>>2];f=Q+32|0;s[f>>3]=+s[Q>>3]+ +s[Y>>3]-+s[L+(e<<4)>>3];s[Q+40>>3]=+s[Q+8>>3]+ +s[Q+24>>3]-+s[L+(e<<4)+8>>3];tr(A,Y,2);a[Y>>2]=a[f>>2];a[Y+4>>2]=a[f+4>>2];a[Y+8>>2]=a[f+8>>2];a[Y+12>>2]=a[f+12>>2];tr(A,Q,2);break}else{if((r|0)<50331648){switch(r|0){case 33554432:break;default:break A}n=i+2|0;l=qF(n<<4)|0;a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2];t=l+16|0;a[t>>2]=a[c>>2];a[t+4>>2]=a[c+4>>2];a[t+8>>2]=a[c+8>>2];a[t+12>>2]=a[c+12>>2];t=L+48|0;i=L+64|0;s[l+32>>3]=(+s[t>>3]-+s[i>>3])*.3333333333333333+ +s[c>>3];Y=L+56|0;r=L+72|0;s[l+40>>3]=(+s[Y>>3]-+s[r>>3])*.3333333333333333+ +s[L+40>>3];F=+s[t>>3];s[l+48>>3]=(F-+s[i>>3])*.3333333333333333+F;F=+s[Y>>3];s[l+56>>3]=(F-+s[r>>3])*.3333333333333333+F;r=4;while(1){if((r|0)>=(n|0))break;Y=l+(r<<4)|0;i=e+(r+-2<<4)|0;a[Y>>2]=a[i>>2];a[Y+4>>2]=a[i+4>>2];a[Y+8>>2]=a[i+8>>2];a[Y+12>>2]=a[i+12>>2];r=r+1|0}ar(A,l,n,f);L2(l);a[Q>>2]=a[t>>2];a[Q+4>>2]=a[t+4>>2];a[Q+8>>2]=a[t+8>>2];a[Q+12>>2]=a[t+12>>2];Y=Q+16|0;a[Y>>2]=a[c>>2];a[Y+4>>2]=a[c+4>>2];a[Y+8>>2]=a[c+8>>2];a[Y+12>>2]=a[c+12>>2];tr(A,Q,2);break}if((r|0)>=67108864){switch(r|0){case 67108864:break;default:break A}if((i|0)==4){Y=qF(96)|0;a[Y>>2]=a[e>>2];a[Y+4>>2]=a[e+4>>2];a[Y+8>>2]=a[e+8>>2];a[Y+12>>2]=a[e+12>>2];i=Y+16|0;a[i>>2]=a[c>>2];a[i+4>>2]=a[c+4>>2];a[i+8>>2]=a[c+8>>2];a[i+12>>2]=a[c+12>>2];i=Y+32|0;m=L+64|0;a[i>>2]=a[m>>2];a[i+4>>2]=a[m+4>>2];a[i+8>>2]=a[m+8>>2];a[i+12>>2]=a[m+12>>2];i=Y+48|0;e=e+32|0;a[i>>2]=a[e>>2];a[i+4>>2]=a[e+4>>2];a[i+8>>2]=a[e+8>>2];a[i+12>>2]=a[e+12>>2];e=Y+64|0;i=L+128|0;a[e>>2]=a[i>>2];a[e+4>>2]=a[i+4>>2];a[e+8>>2]=a[i+8>>2];a[e+12>>2]=a[i+12>>2];e=Y+80|0;G=L+160|0;a[e>>2]=a[G>>2];a[e+4>>2]=a[G+4>>2];a[e+8>>2]=a[G+8>>2];a[e+12>>2]=a[G+12>>2];ar(A,Y,6,f);L2(Y);s[Q>>3]=+s[L+176>>3]+ +s[t>>3]-+s[L>>3];s[Q+8>>3]=+s[L+184>>3]+ +s[L+24>>3]-+s[L+8>>3];Y=Q+16|0;a[Y>>2]=a[m>>2];a[Y+4>>2]=a[m+4>>2];a[Y+8>>2]=a[m+8>>2];a[Y+12>>2]=a[m+12>>2];tr(A,Q,2);a[Y>>2]=a[i>>2];a[Y+4>>2]=a[i+4>>2];a[Y+8>>2]=a[i+8>>2];a[Y+12>>2]=a[i+12>>2];tr(A,Q,2);a[Y>>2]=a[L>>2];a[Y+4>>2]=a[L+4>>2];a[Y+8>>2]=a[L+8>>2];a[Y+12>>2]=a[L+12>>2];tr(A,Q,2);break}else gA(105438,105449,714,105458)}switch(r|0){case 50331648:break;default:break A}n=i+3|0;l=qF(n<<4)|0;a[l>>2]=a[e>>2];a[l+4>>2]=a[e+4>>2];a[l+8>>2]=a[e+8>>2];a[l+12>>2]=a[e+12>>2];F=+s[e>>3];s[l+16>>3]=F-(F-+s[t>>3])*.25;r=L+56|0;F=(+s[r>>3]-+s[L+72>>3])*.3333333333333333+ +s[e+8>>3];s[l+24>>3]=F;M=+s[e>>3];s[l+32>>3]=M-(M-+s[t>>3])*2.0;s[l+40>>3]=F;F=+s[e>>3];s[l+48>>3]=F-(F-+s[t>>3])*2.25;s[l+56>>3]=+s[r>>3];s[l+64>>3]=+s[L+48>>3];s[l+72>>3]=+s[r>>3];r=4;while(1){if((r|0)>=(n|0))break;Y=l+(r<<4)|0;i=e+(r+-3<<4)|0;a[Y>>2]=a[i>>2];a[Y+4>>2]=a[i+4>>2];a[Y+8>>2]=a[i+8>>2];a[Y+12>>2]=a[i+12>>2];r=r+1|0}ar(A,l,n,f);L2(l);break}}else if((r|0)<318767104){if((r|0)<251658240){if((r|0)<218103808){switch(r|0){case 201326592:break;default:break A}Y=i<<4;v=qF(Y)|0;E=e+16|0;F=+s[E>>3];s[v>>3]=F;G=e+40|0;M=+s[G>>3];m=e+24|0;Z=L+48|0;C=L+56|0;I=L+72|0;M=(+s[m>>3]-M)*.5+M+(+s[C>>3]-+s[I>>3])*.125;s[v+8>>3]=M;D=(+s[c>>3]-+s[Z>>3])*2.0+F;s[v+16>>3]=D;s[v+24>>3]=M;s[v+32>>3]=D;M=(+s[C>>3]-+s[I>>3])*.5+M;s[v+40>>3]=M;s[v+48>>3]=F;s[v+56>>3]=M;ar(A,v,i,f);L2(v);Y=qF(Y)|0;M=+s[c>>3]+ +s[E>>3]-+s[Z>>3];s[Y>>3]=M;F=+s[G>>3];F=(+s[m>>3]-F)*.5+F+(+s[C>>3]-+s[I>>3])*-.625;s[Y+8>>3]=F;D=+s[c>>3]-+s[Z>>3]+M;Z=Y+16|0;s[Z>>3]=D;s[Y+24>>3]=F;s[Y+32>>3]=D;F=(+s[C>>3]-+s[I>>3])*.5+F;s[Y+40>>3]=F;s[Y+48>>3]=M;s[Y+56>>3]=F;ar(A,Y,i,f);s[Q>>3]=+s[Z>>3];F=+s[G>>3];s[Q+8>>3]=(+s[m>>3]-F)*.5+F;s[Q+16>>3]=+s[e>>3];s[Q+24>>3]=(+s[e+8>>3]-+s[e+56>>3])*.5+F;tr(A,Q,2);L2(Y);break}if((r|0)<234881024){switch(r|0){case 218103808:break;default:break A}Y=i<<4;C=qF(Y)|0;F=+s[e>>3];s[C>>3]=F;Z=e+40|0;M=+s[Z>>3];G=e+24|0;I=L+56|0;m=L+72|0;M=(+s[G>>3]-M)*.5+M+(+s[I>>3]-+s[m>>3])*.125;s[C+8>>3]=M;s[C+16>>3]=F;D=(+s[I>>3]-+s[m>>3])*.5+M;s[C+24>>3]=D;F=F-(+s[I>>3]-+s[m>>3])*2.0;s[C+32>>3]=F;s[C+40>>3]=D;s[C+48>>3]=F;s[C+56>>3]=M;ar(A,C,i,f);L2(C);Y=qF(Y)|0;M=+s[e>>3]-+s[c>>3]+ +s[L+48>>3];s[Y>>3]=M;F=+s[Z>>3];F=(+s[G>>3]-F)*.5+F+(+s[I>>3]-+s[m>>3])*-.625;s[Y+8>>3]=F;s[Y+16>>3]=M;D=(+s[I>>3]-+s[m>>3])*.5+F;s[Y+24>>3]=D;M=M-(+s[I>>3]-+s[m>>3]);s[Y+32>>3]=M;s[Y+40>>3]=D;m=Y+48|0;s[m>>3]=M;s[Y+56>>3]=F;ar(A,Y,i,f);s[Q>>3]=+s[e+16>>3];F=+s[Z>>3];s[Q+8>>3]=(+s[G>>3]-F)*.5+F;s[Q+16>>3]=+s[m>>3];s[Q+24>>3]=(+s[e+8>>3]-+s[e+56>>3])*.5+F;tr(A,Q,2);L2(Y);break}else{switch(r|0){case 234881024:break;default:break A}Y=i<<4;Z=qF(Y)|0;v=e+16|0;M=+s[v>>3];E=L+48|0;M=(+s[e>>3]-M)*.5+M+(+s[c>>3]-+s[E>>3])*-1.125;s[Z>>3]=M;C=e+40|0;F=+s[C>>3];I=e+24|0;m=L+56|0;G=L+72|0;F=(+s[I>>3]-F)*.5+F+(+s[m>>3]-+s[G>>3])*.125;s[Z+8>>3]=F;D=+s[c>>3]-+s[E>>3]+M;s[Z+16>>3]=D;s[Z+24>>3]=F;s[Z+32>>3]=D;F=(+s[m>>3]-+s[G>>3])*.5+F;s[Z+40>>3]=F;s[Z+48>>3]=M;s[Z+56>>3]=F;ar(A,Z,i,f);L2(Z);Z=qF(Y)|0;F=+s[v>>3];F=(+s[e>>3]-F)*.5+F+(+s[c>>3]-+s[E>>3])*-1.125;s[Z>>3]=F;M=+s[C>>3];M=(+s[I>>3]-M)*.5+M+(+s[m>>3]-+s[G>>3])*-.625;s[Z+8>>3]=M;D=+s[c>>3]-+s[E>>3]+F;s[Z+16>>3]=D;s[Z+24>>3]=M;s[Z+32>>3]=D;M=(+s[m>>3]-+s[G>>3])*.5+M;s[Z+40>>3]=M;s[Z+48>>3]=F;s[Z+56>>3]=M;ar(A,Z,i,f);L2(Z);Z=qF(Y)|0;M=+s[v>>3];M=(+s[e>>3]-M)*.5+M+(+s[c>>3]-+s[E>>3])*.125;s[Z>>3]=M;F=+s[C>>3];F=(+s[I>>3]-F)*.5+F+(+s[m>>3]-+s[G>>3])*-.625;s[Z+8>>3]=F;D=+s[c>>3]-+s[E>>3]+M;s[Z+16>>3]=D;s[Z+24>>3]=F;s[Z+32>>3]=D;F=(+s[m>>3]-+s[G>>3])*.5+F;s[Z+40>>3]=F;s[Z+48>>3]=M;s[Z+56>>3]=F;ar(A,Z,i,f);L2(Z);Y=qF(Y)|0;F=+s[v>>3];F=(+s[e>>3]-F)*.5+F+(+s[c>>3]-+s[E>>3])*.125;s[Y>>3]=F;M=+s[C>>3];M=(+s[I>>3]-M)*.5+M+(+s[m>>3]-+s[G>>3])*.125;s[Y+8>>3]=M;D=+s[c>>3]-+s[E>>3]+F;Z=Y+16|0;s[Z>>3]=D;s[Y+24>>3]=M;s[Y+32>>3]=D;M=(+s[m>>3]-+s[G>>3])*.5+M;s[Y+40>>3]=M;s[Y+48>>3]=F;s[Y+56>>3]=M;ar(A,Y,i,f);s[Q>>3]=+s[Z>>3];M=+s[C>>3];Z=Q+8|0;s[Z>>3]=(+s[I>>3]-M)*.5+M;G=Q+16|0;s[G>>3]=+s[e>>3];m=e+8|0;i=e+56|0;f=Q+24|0;s[f>>3]=(+s[m>>3]-+s[i>>3])*.5+M;tr(A,Q,2);M=+s[v>>3];s[Q>>3]=(+s[e>>3]-M)*.5+M+(+s[c>>3]-+s[E>>3])*-1.125;F=+s[C>>3];s[Z>>3]=(+s[I>>3]-F)*.5+F;s[G>>3]=M;s[f>>3]=(+s[m>>3]-+s[i>>3])*.5+F;tr(A,Q,2);L2(Y);break}}if((r|0)<285212672)if((r|0)<268435456){switch(r|0){case 251658240:break;default:break A}Y=i<<4;v=qF(Y)|0;E=e+16|0;F=+s[E>>3];Z=L+48|0;F=F-+s[c>>3]+(+s[e>>3]-F)*.5+ +s[Z>>3];s[v>>3]=F;C=e+40|0;M=+s[C>>3];I=e+24|0;m=L+56|0;G=L+72|0;M=(+s[I>>3]-M)*.5+M+(+s[m>>3]-+s[G>>3])*.125;s[v+8>>3]=M;D=(+s[c>>3]-+s[Z>>3])*2.0+F;s[v+16>>3]=D;s[v+24>>3]=M;s[v+32>>3]=D;M=(+s[m>>3]-+s[G>>3])*.5+M;s[v+40>>3]=M;s[v+48>>3]=F;s[v+56>>3]=M;ar(A,v,i,f);L2(v);Y=qF(Y)|0;M=+s[E>>3];M=M-+s[c>>3]+(+s[e>>3]-M)*.5+ +s[Z>>3];s[Y>>3]=M;F=+s[C>>3];F=(+s[I>>3]-F)*.5+F+(+s[m>>3]-+s[G>>3])*-.625;s[Y+8>>3]=F;D=(+s[c>>3]-+s[Z>>3])*2.0+M;Z=Y+16|0;s[Z>>3]=D;s[Y+24>>3]=F;s[Y+32>>3]=D;F=(+s[m>>3]-+s[G>>3])*.5+F;s[Y+40>>3]=F;s[Y+48>>3]=M;s[Y+56>>3]=F;ar(A,Y,i,f);s[Q>>3]=+s[Z>>3];F=+s[C>>3];Z=Q+8|0;s[Z>>3]=(+s[I>>3]-F)*.5+F;G=Q+16|0;s[G>>3]=+s[e>>3];m=e+8|0;i=e+56|0;f=Q+24|0;s[f>>3]=(+s[m>>3]-+s[i>>3])*.5+F;tr(A,Q,2);s[Q>>3]=+s[E>>3];F=+s[C>>3];s[Z>>3]=(+s[I>>3]-F)*.5+F;s[G>>3]=+s[Y>>3];s[f>>3]=(+s[m>>3]-+s[i>>3])*.5+F;tr(A,Q,2);L2(Y);break}else{switch(r|0){case 268435456:break;default:break A}Y=qF(i<<4)|0;s[Y>>3]=+s[e>>3];E=L+48|0;I=L+56|0;Z=L+72|0;s[Y+8>>3]=+s[L+24>>3]-(+s[I>>3]-+s[Z>>3])*.5;s[Y+16>>3]=+s[E>>3];F=+s[I>>3];s[Y+24>>3]=F-(F-+s[Z>>3])*.5;s[Y+32>>3]=+s[e+32>>3];G=e+40|0;s[Y+40>>3]=(+s[I>>3]-+s[Z>>3])*.5+ +s[G>>3];s[Y+48>>3]=+s[e>>3];s[Y+56>>3]=(+s[I>>3]-+s[Z>>3])*.5+ +s[G>>3];ar(A,Y,i,f);C=e+16|0;F=(+s[c>>3]-+s[E>>3])*.25;M=F+ +s[C>>3];s[Q>>3]=M;D=+s[G>>3];v=e+24|0;W=+s[I>>3]-+s[Z>>3];D=(+s[v>>3]-D)*.5+D+W*.125;m=Q+8|0;s[m>>3]=D;i=Q+16|0;s[i>>3]=F+M;f=Q+24|0;s[f>>3]=D-W*.25;tr(A,Q,2);W=(+s[c>>3]-+s[E>>3])*.25;D=W+ +s[C>>3];s[Q>>3]=D;M=+s[G>>3];F=+s[I>>3]-+s[Z>>3];M=(+s[v>>3]-M)*.5+M+F*-.125;s[m>>3]=M;s[i>>3]=W+D;s[f>>3]=F*.25+M;tr(A,Q,2);M=(+s[c>>3]-+s[E>>3])*.25;s[Q>>3]=M+ +s[C>>3];F=(+s[I>>3]-+s[Z>>3])*.75+ +s[G>>3];s[m>>3]=F;s[i>>3]=+s[e>>3]-M;s[f>>3]=F;tr(A,Q,2);L2(Y);break}else if((r|0)<301989888){switch(r|0){case 285212672:break;default:break A}Z=qF(i<<4)|0;E=e+16|0;M=+s[E>>3];G=L+48|0;M=(+s[c>>3]-+s[G>>3]+(+s[e>>3]-M))*.5+M;s[Z>>3]=M;C=e+40|0;W=+s[C>>3];I=e+24|0;W=(+s[c>>3]-+s[G>>3]+(+s[I>>3]-W))*.5+W;s[Z+8>>3]=W;s[Z+16>>3]=M;M=+s[C>>3];w=+s[c>>3]-+s[G>>3];M=(+s[I>>3]-M-w)*.5+M;s[Z+24>>3]=M;F=+s[E>>3];F=(+s[e>>3]-F-w)*.5+F;s[Z+32>>3]=F;s[Z+40>>3]=M;s[Z+48>>3]=F;s[Z+56>>3]=W;ar(A,Z,i,f);L2(Z);W=+s[E>>3];W=(+s[e>>3]-W)*.5+W;F=+s[c>>3]-+s[G>>3];M=F*.75;w=W+M;s[Q>>3]=w;D=+s[C>>3];D=(+s[I>>3]-D)*.5+D;M=D+M;Z=Q+8|0;s[Z>>3]=M;m=Q+16|0;s[m>>3]=w;F=F*-.75;D=D+F;Y=Q+24|0;s[Y>>3]=D;F=W+F;s[Q+32>>3]=F;s[Q+40>>3]=D;s[Q+48>>3]=F;s[Q+56>>3]=M;i=Q+64|0;a[i>>2]=a[Q>>2];a[i+4>>2]=a[Q+4>>2];a[i+8>>2]=a[Q+8>>2];a[i+12>>2]=a[Q+12>>2];tr(A,Q,5);M=+s[E>>3];F=+s[e>>3];s[Q>>3]=(F-M)*.5+M+(+s[c>>3]-+s[G>>3])*.75;M=+s[C>>3];s[Z>>3]=(+s[I>>3]-M)*.5+M;s[m>>3]=F;i=e+8|0;f=e+56|0;s[Y>>3]=(+s[i>>3]-+s[f>>3])*.5+M;tr(A,Q,2);M=+s[E>>3];s[Q>>3]=M;F=+s[C>>3];s[Z>>3]=(+s[I>>3]-F)*.5+F;s[m>>3]=(+s[e>>3]-M)*.5+M+(+s[c>>3]-+s[G>>3])*-.75;s[Y>>3]=(+s[i>>3]-+s[f>>3])*.5+F;tr(A,Q,2);break}else{switch(r|0){case 301989888:break;default:break A}m=i+12|0;Y=qF(m<<4)|0;I=e+16|0;b=+s[I>>3];B=L+48|0;b=(+s[e>>3]-b)*.5+b+(+s[c>>3]-+s[B>>3])*.25;s[Y>>3]=b;Z=e+40|0;W=+s[Z>>3];G=e+24|0;E=L+56|0;C=L+72|0;W=(+s[E>>3]-+s[C>>3]+(+s[G>>3]-W))*.5+W;v=Y+8|0;s[v>>3]=W;s[Y+16>>3]=b;W=(+s[E>>3]-+s[C>>3])*.125+W;g=Y+24|0;s[g>>3]=W;D=b-(+s[c>>3]-+s[B>>3])*.125;i=Y+32|0;s[i>>3]=D;w=(+s[E>>3]-+s[C>>3])*.125+W;s[Y+40>>3]=w;s[Y+48>>3]=b;M=(+s[E>>3]-+s[C>>3])*.125+w;s[Y+56>>3]=M;s[Y+64>>3]=b;b=(+s[E>>3]-+s[C>>3])*.125+M;s[Y+72>>3]=b;s[Y+80>>3]=D;s[Y+88>>3]=b;D=+s[I>>3];D=(+s[e>>3]-D)*.5+D;s[Y+96>>3]=D;s[Y+104>>3]=M;F=D-(+s[c>>3]-+s[B>>3])*.125;s[Y+112>>3]=F;s[Y+120>>3]=b;F=F-(+s[c>>3]-+s[B>>3])*.125;s[Y+128>>3]=F;s[Y+136>>3]=b;s[Y+144>>3]=F;s[Y+152>>3]=M;M=(+s[c>>3]-+s[B>>3])*.125+F;s[Y+160>>3]=M;s[Y+168>>3]=w;s[Y+176>>3]=F;s[Y+184>>3]=W;s[Y+192>>3]=F;F=+s[v>>3];s[Y+200>>3]=F;s[Y+208>>3]=M;s[Y+216>>3]=F;v=Y+224|0;s[v>>3]=D;s[Y+232>>3]=+s[g>>3];s[Y+240>>3]=+s[i>>3];s[Y+248>>3]=F;ar(A,Y,m,f);F=+s[v>>3];s[Q>>3]=F;D=+s[Z>>3];D=(+s[G>>3]-D)*.5+D;m=Q+8|0;s[m>>3]=D;i=Q+16|0;s[i>>3]=F;f=Q+24|0;s[f>>3]=(+s[E>>3]-+s[C>>3])*.125+D;tr(A,Q,2);D=+s[v>>3];s[Q>>3]=D;F=+s[Z>>3];M=+s[E>>3]-+s[C>>3];F=(+s[G>>3]-F)*.5+F+M*.25;s[m>>3]=F;s[i>>3]=D;s[f>>3]=M*.125+F;tr(A,Q,2);s[Q>>3]=+s[I>>3];F=+s[Z>>3];s[m>>3]=(+s[G>>3]-F)*.5+F;s[i>>3]=+s[e>>3];s[f>>3]=(+s[e+8>>3]-+s[e+56>>3])*.5+F;tr(A,Q,2);L2(Y);break}}else{if((r|0)<369098752){if((r|0)<335544320){switch(r|0){case 318767104:break;default:break A}m=i+4|0;Y=qF(m<<4)|0;I=e+16|0;D=+s[I>>3];i=L+48|0;D=(+s[e>>3]-D)*.5+D+(+s[c>>3]-+s[i>>3])*.125;s[Y>>3]=D;Z=e+40|0;F=+s[Z>>3];G=e+24|0;E=L+56|0;C=L+72|0;F=(+s[E>>3]-+s[C>>3]+(+s[G>>3]-F))*.5+F;s[Y+8>>3]=F;w=(+s[c>>3]-+s[i>>3])*.125+D;s[Y+16>>3]=w;M=(+s[E>>3]-+s[C>>3])*.125+F;s[Y+24>>3]=M;s[Y+32>>3]=w;w=(+s[E>>3]-+s[C>>3])*.25+M;s[Y+40>>3]=w;s[Y+48>>3]=D;W=(+s[E>>3]-+s[C>>3])*.125+w;s[Y+56>>3]=W;D=D-(+s[c>>3]-+s[i>>3])*.25;s[Y+64>>3]=D;s[Y+72>>3]=W;W=D-(+s[c>>3]-+s[i>>3])*.125;s[Y+80>>3]=W;s[Y+88>>3]=w;s[Y+96>>3]=W;s[Y+104>>3]=M;s[Y+112>>3]=D;s[Y+120>>3]=F;ar(A,Y,m,f);F=+s[I>>3];F=(+s[e>>3]-F)*.5+F;s[Q>>3]=F;D=+s[Z>>3];D=(+s[G>>3]-D)*.5+D;m=Q+8|0;s[m>>3]=D;i=Q+16|0;s[i>>3]=F;f=Q+24|0;s[f>>3]=(+s[E>>3]-+s[C>>3])*.125+D;tr(A,Q,2);D=+s[I>>3];D=(+s[e>>3]-D)*.5+D;s[Q>>3]=D;F=+s[Z>>3];M=+s[E>>3]-+s[C>>3];F=(+s[G>>3]-F)*.5+F+M*.25;s[m>>3]=F;s[i>>3]=D;s[f>>3]=M*.125+F;tr(A,Q,2);s[Q>>3]=+s[I>>3];F=+s[Z>>3];s[m>>3]=(+s[G>>3]-F)*.5+F;s[i>>3]=+s[e>>3];s[f>>3]=(+s[e+8>>3]-+s[e+56>>3])*.5+F;tr(A,Q,2);L2(Y);break}if((r|0)<352321536){switch(r|0){case 335544320:break;default:break A}I=i+12|0;Y=qF(I<<4)|0;Z=e+16|0;b=+s[Z>>3];v=L+48|0;b=(+s[e>>3]-b)*.5+b+(+s[c>>3]-+s[v>>3])*.25;s[Y>>3]=b;G=e+40|0;W=+s[G>>3];m=e+24|0;B=L+56|0;g=L+72|0;W=(+s[B>>3]-+s[g>>3]+(+s[m>>3]-W))*.5+W;i=Y+8|0;s[i>>3]=W;s[Y+16>>3]=b;W=(+s[B>>3]-+s[g>>3])*.125+W;E=Y+24|0;s[E>>3]=W;M=b-(+s[c>>3]-+s[v>>3])*.125;C=Y+32|0;s[C>>3]=M;w=(+s[B>>3]-+s[g>>3])*.125+W;s[Y+40>>3]=w;s[Y+48>>3]=b;D=(+s[B>>3]-+s[g>>3])*.125+w;s[Y+56>>3]=D;s[Y+64>>3]=b;b=(+s[B>>3]-+s[g>>3])*.125+D;s[Y+72>>3]=b;s[Y+80>>3]=M;s[Y+88>>3]=b;M=+s[Z>>3];M=(+s[e>>3]-M)*.5+M;s[Y+96>>3]=M;s[Y+104>>3]=D;F=M-(+s[c>>3]-+s[v>>3])*.125;s[Y+112>>3]=F;s[Y+120>>3]=b;F=F-(+s[c>>3]-+s[v>>3])*.125;s[Y+128>>3]=F;s[Y+136>>3]=b;s[Y+144>>3]=F;s[Y+152>>3]=D;D=(+s[c>>3]-+s[v>>3])*.125+F;s[Y+160>>3]=D;s[Y+168>>3]=w;s[Y+176>>3]=F;s[Y+184>>3]=W;s[Y+192>>3]=F;F=+s[i>>3];s[Y+200>>3]=F;s[Y+208>>3]=D;s[Y+216>>3]=F;i=Y+224|0;s[i>>3]=M;s[Y+232>>3]=+s[E>>3];s[Y+240>>3]=+s[C>>3];s[Y+248>>3]=F;ar(A,Y,I,f);a[Q>>2]=a[i>>2];a[Q+4>>2]=a[i+4>>2];a[Q+8>>2]=a[i+8>>2];a[Q+12>>2]=a[i+12>>2];i=Q+16|0;s[i>>3]=+s[Q>>3];F=+s[G>>3];f=Q+24|0;s[f>>3]=(+s[m>>3]-F)*.5+F;tr(A,Q,2);s[Q>>3]=+s[Z>>3];F=+s[G>>3];s[Q+8>>3]=(+s[m>>3]-F)*.5+F;s[i>>3]=+s[e>>3];s[f>>3]=(+s[e+8>>3]-+s[e+56>>3])*.5+F;tr(A,Q,2);L2(Y);break}else{switch(r|0){case 352321536:break;default:break A}m=i+4|0;Y=qF(m<<4)|0;I=e+16|0;M=+s[I>>3];C=L+48|0;M=(+s[e>>3]-M)*.5+M+(+s[c>>3]-+s[C>>3])*.125;s[Y>>3]=M;Z=e+40|0;F=+s[Z>>3];G=e+24|0;v=L+56|0;E=L+72|0;F=(+s[v>>3]-+s[E>>3]+(+s[G>>3]-F))*.5+F;i=Y+8|0;s[i>>3]=F;w=(+s[c>>3]-+s[C>>3])*.125+M;s[Y+16>>3]=w;D=(+s[v>>3]-+s[E>>3])*.125+F;s[Y+24>>3]=D;s[Y+32>>3]=w;w=(+s[v>>3]-+s[E>>3])*.25+D;s[Y+40>>3]=w;s[Y+48>>3]=M;W=(+s[v>>3]-+s[E>>3])*.125+w;s[Y+56>>3]=W;M=M-(+s[c>>3]-+s[C>>3])*.25;s[Y+64>>3]=M;s[Y+72>>3]=W;W=M-(+s[c>>3]-+s[C>>3])*.125;s[Y+80>>3]=W;s[Y+88>>3]=w;s[Y+96>>3]=W;s[Y+104>>3]=D;s[Y+112>>3]=M;s[Y+120>>3]=F;ar(A,Y,m,f);F=+s[I>>3];F=(+s[e>>3]-F)*.5+F;s[Q>>3]=F;m=Q+8|0;s[m>>3]=+s[i>>3];i=Q+16|0;s[i>>3]=F;F=+s[Z>>3];f=Q+24|0;s[f>>3]=(+s[G>>3]-F)*.5+F;tr(A,Q,2);s[Q>>3]=+s[I>>3];F=+s[Z>>3];s[m>>3]=(+s[G>>3]-F)*.5+F;s[i>>3]=+s[e>>3];s[f>>3]=(+s[e+8>>3]-+s[e+56>>3])*.5+F;tr(A,Q,2);L2(Y);break}}if((r|0)<402653184)if((r|0)<385875968){switch(r|0){case 369098752:break;default:break A}i=i+5|0;Y=qF(i<<4)|0;Q=L+48|0;s[Y>>3]=+s[t>>3]-(+s[c>>3]-+s[Q>>3])*.5;Z=L+56|0;m=L+72|0;s[Y+8>>3]=+s[L+24>>3]-(+s[Z>>3]-+s[m>>3])*.5;s[Y+16>>3]=+s[Q>>3];F=+s[Z>>3];s[Y+24>>3]=F-(F-+s[m>>3])*.5;s[Y+32>>3]=+s[e+32>>3];G=e+40|0;s[Y+40>>3]=+s[G>>3];F=+s[c>>3];s[Y+48>>3]=(F-+s[Q>>3])*.5+F;s[Y+56>>3]=+s[G>>3];F=+s[c>>3];s[Y+64>>3]=(F-+s[Q>>3])*.5+F;s[Y+72>>3]=(+s[Z>>3]-+s[m>>3])*.5+ +s[G>>3];s[Y+80>>3]=+s[t>>3]-(+s[c>>3]-+s[Q>>3])*.5;s[Y+88>>3]=(+s[Z>>3]-+s[m>>3])*.5+ +s[G>>3];s[Y+96>>3]=+s[t>>3]-(+s[c>>3]-+s[Q>>3])*.5;G=e+56|0;s[Y+104>>3]=+s[G>>3];m=e+8|0;F=+s[m>>3];s[Y+120>>3]=F-(F-+s[G>>3])*.5;s[Y+112>>3]=+s[e>>3];s[Y+136>>3]=+s[m>>3];s[Y+128>>3]=+s[t>>3]-(+s[c>>3]-+s[Q>>3])*.5;ar(A,Y,i,f);L2(Y);break}else{switch(r|0){case 385875968:break;default:break A}i=i+3|0;Y=qF(i<<4)|0;Q=L+48|0;s[Y>>3]=+s[t>>3]-(+s[c>>3]-+s[Q>>3])*.5;Z=L+56|0;m=L+72|0;s[Y+8>>3]=+s[L+24>>3]-(+s[Z>>3]-+s[m>>3])*.5;s[Y+16>>3]=+s[Q>>3];F=+s[Z>>3];s[Y+24>>3]=F-(F-+s[m>>3])*.5;s[Y+32>>3]=+s[e+32>>3];G=e+40|0;s[Y+40>>3]=(+s[Z>>3]-+s[m>>3])*.5+ +s[G>>3];s[Y+48>>3]=+s[t>>3]-(+s[c>>3]-+s[Q>>3])*.5;s[Y+56>>3]=(+s[Z>>3]-+s[m>>3])*.5+ +s[G>>3];s[Y+64>>3]=+s[t>>3]-(+s[c>>3]-+s[Q>>3])*.5;G=e+56|0;s[Y+72>>3]=+s[G>>3];m=e+8|0;F=+s[m>>3];s[Y+88>>3]=F-(F-+s[G>>3])*.5;s[Y+80>>3]=+s[e>>3];s[Y+104>>3]=+s[m>>3];s[Y+96>>3]=+s[t>>3]-(+s[c>>3]-+s[Q>>3])*.5;ar(A,Y,i,f);L2(Y);break}else if((r|0)<419430400){switch(r|0){case 402653184:break;default:break A}i=i+3|0;Y=qF(i<<4)|0;s[Y>>3]=+s[e>>3];Z=e+8|0;G=L+48|0;m=L+56|0;Q=L+72|0;s[Y+8>>3]=+s[Z>>3]-(+s[m>>3]-+s[Q>>3])*.5;F=+s[c>>3];s[Y+16>>3]=(F-+s[G>>3])*.5+F;s[Y+24>>3]=+s[Z>>3]-(+s[m>>3]-+s[Q>>3])*.5;F=+s[c>>3];s[Y+32>>3]=(F-+s[G>>3])*.5+F;s[Y+40>>3]=+s[L+40>>3];s[Y+48>>3]=+s[e+16>>3];F=+s[e+24>>3];Z=e+40|0;s[Y+56>>3]=F-(F-+s[Z>>3])*.5;F=+s[c>>3];s[Y+64>>3]=(F-+s[G>>3])*.5+F;s[Y+72>>3]=+s[Z>>3];s[Y+88>>3]=(+s[m>>3]-+s[Q>>3])*.5+ +s[Z>>3];F=+s[c>>3];s[Y+80>>3]=(F-+s[G>>3])*.5+F;s[Y+104>>3]=(+s[m>>3]-+s[Q>>3])*.5+ +s[e+56>>3];s[Y+96>>3]=+s[e>>3];ar(A,Y,i,f);L2(Y);break}else{switch(r|0){case 419430400:break;default:break A}i=i+5|0;Y=qF(i<<4)|0;s[Y>>3]=+s[e>>3];Q=e+8|0;m=L+48|0;Z=L+56|0;G=L+72|0;s[Y+8>>3]=+s[Q>>3]-(+s[Z>>3]-+s[G>>3])*.5;F=+s[c>>3];s[Y+16>>3]=(F-+s[m>>3])*.5+F;s[Y+24>>3]=+s[Q>>3]-(+s[Z>>3]-+s[G>>3])*.5;F=+s[c>>3];s[Y+32>>3]=(F-+s[m>>3])*.5+F;s[Y+40>>3]=+s[L+40>>3];s[Y+48>>3]=+s[e+16>>3];F=+s[e+24>>3];Q=e+40|0;s[Y+56>>3]=F-(F-+s[Q>>3])*.5;F=+s[c>>3];s[Y+64>>3]=(F-+s[m>>3])*.5+F;s[Y+72>>3]=+s[Q>>3];s[Y+88>>3]=(+s[Z>>3]-+s[G>>3])*.5+ +s[Q>>3];F=+s[c>>3];s[Y+80>>3]=(F-+s[m>>3])*.5+F;Q=e+56|0;s[Y+104>>3]=(+s[Z>>3]-+s[G>>3])*.5+ +s[Q>>3];s[Y+96>>3]=+s[t>>3]-(+s[c>>3]-+s[m>>3])*.5;s[Y+112>>3]=+s[t>>3]-(+s[c>>3]-+s[m>>3])*.5;s[Y+120>>3]=+s[Q>>3];s[Y+128>>3]=+s[e+48>>3];s[Y+136>>3]=+s[Q>>3];ar(A,Y,i,f);L2(Y);break}}}while(0);L2(L)}k=y;return}function cp(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0.0;f=k;k=k+112|0;n=f;c=+s[e+8>>3]*2.0;a[n>>2]=a[e>>2];a[n+4>>2]=a[e+4>>2];a[n+8>>2]=a[e+8>>2];a[n+12>>2]=a[e+12>>2];s[n+16>>3]=+s[e+16>>3];s[n+24>>3]=c-+s[e+24>>3];s[n+32>>3]=+s[e+32>>3];s[n+40>>3]=c-+s[e+40>>3];s[n+48>>3]=+s[e+48>>3];s[n+56>>3]=c-+s[e+56>>3];s[n+64>>3]=+s[e+64>>3];s[n+72>>3]=c-+s[e+72>>3];s[n+80>>3]=+s[e+80>>3];s[n+88>>3]=c-+s[e+88>>3];l=n+96|0;t=e+96|0;a[l>>2]=a[t>>2];a[l+4>>2]=a[t+4>>2];a[l+8>>2]=a[t+8>>2];a[l+12>>2]=a[t+12>>2];lr(A,e,i,0,0,r&255);lr(A,n,7,0,0,0);k=f;return}function sp(A,e,i,r){A=A|0;e=+e;i=i|0;r=r|0;var f=0.0,a=0.0;a=+s[i>>3];f=+s[i+8>>3];f=(+s[r+8>>3]-f)*e+f;s[A>>3]=(+s[r>>3]-a)*e+a;s[A+8>>3]=f;return}function bp(A){A=A|0;A=a[(a[A+16>>2]|0)+8>>2]|0;if(A){A=a[a[A+4>>2]>>2]|0;if((A|0)!=91)if((A|0)==94)A=2;else return((A|0)==93?3:(A|0)==96?4:0)|0;else A=1}else A=0;return A|0}function up(A){A=A|0;var e=0,i=0,f=0.0,n=0,l=0,t=0,c=0.0,b=0.0,u=0.0,w=0.0,o=0,h=0.0,d=0.0,B=0.0,g=0.0,v=0.0,E=0.0,C=0.0,I=0.0,Z=0.0,G=0.0,m=0,Q=0,L=0,y=0,Y=0,F=0,V=0,J=0,p=0,R=0.0,X=0.0,H=0,x=0,T=0.0,j=0.0,P=0.0,S=0,O=0,K=0,_=0,q=0,$=0,AA=0,eA=0.0;AA=k;k=k+144|0;F=AA+112|0;p=AA+104|0;L=AA+96|0;y=AA+88|0;l=AA+80|0;K=AA+64|0;q=AA+48|0;H=AA+40|0;x=AA+32|0;t=AA+24|0;o=AA+16|0;Q=AA+136|0;m=AA+128|0;V=AA;$=qF(48)|0;_=A+16|0;S=a[(a[(a[_>>2]|0)+8>>2]|0)+8>>2]|0;n=(S|0)==1616;O=a[S>>2]|0;e=a[S+4>>2]|0;i=a[S+8>>2]|0;b=+s[S+16>>3];u=+s[S+32>>3];w=+s[S+24>>3];O=O|(vR(Ho(A,105511)|0)|0)&255;do{if(!n){if(!O){S=a[_>>2]|0;c=+s[S+32>>3]*72.0;f=+s[S+40>>3]*72.0;f=+(~~(f+(f>=0.0?.5:-.5))|0);c=+(~~(c+(c>=0.0?.5:-.5))|0);break}c=+Cp(A);if(c>0.0)f=c;else{S=a[_>>2]|0;f=+s[S+32>>3];c=+s[S+40>>3];c=(f =0.0?.5:-.5))|0);f=c}}else{f=0.0;c=0.0}}while(0);S=kR(A,a[47160]|0,e,0)|0;P=+oR(A,a[47162]|0,0.0,-360.0)+b;if(!i){j=+oR(A,a[47163]|0,0.0,-100.0);Y=kR(A,a[47159]|0,4,0)|0;T=+oR(A,a[47164]|0,0.0,-100.0)}else{Y=i;j=u;T=w}e=a[(a[_>>2]|0)+104>>2]|0;i=e+24|0;a[K>>2]=a[i>>2];a[K+4>>2]=a[i+4>>2];a[K+8>>2]=a[i+8>>2];a[K+12>>2]=a[i+12>>2];h=+s[K>>3];if(h>0.0){if(!n)J=11}else if(!(n|!(+s[K+8>>3]>0.0)))J=11;if((J|0)==11){e=Ho(A,105496)|0;do{if(e){s[o>>3]=0.0;s[t>>3]=0.0;a[l>>2]=t;a[l+4>>2]=o;e=J3(e,105503,l)|0;b=+s[t>>3];if(b<0.0){s[t>>3]=0.0;b=0.0}u=+s[o>>3];if(u<0.0){s[o>>3]=0.0;w=0.0}else w=u;if((e|0)<=0){u=h+16.0;s[K>>3]=u;b=8.0;break}b=b*72.0;b=+(~~(b+(b>=0.0?.5:-.5))<<1|0);u=h+b;s[K>>3]=u;if((e|0)!=1){b=w*72.0;b=+(~~(b+(b>=0.0?.5:-.5))<<1|0)}}else{u=h+16.0;s[K>>3]=u;b=8.0}}while(0);e=K+8|0;s[e>>3]=+s[e>>3]+b;e=a[(a[_>>2]|0)+104>>2]|0;h=u}B=+s[e+24>>3];b=+s[a[(a[(Id(A)|0)+16>>2]|0)+8>>2]>>3];if(b>0.0){R=b*72.0;R=+(~~(R+(R>=0.0?.5:-.5))|0);X=+Ip(h,R);s[K>>3]=X;o=K+8|0;s[o>>3]=+Ip(+s[o>>3],R)}else X=h;e=a[(a[_>>2]|0)+8>>2]|0;do{if(!(r[e+12>>0]|0)){i=Ho(A,109025)|0;if((i|0)!=0?(r[i>>0]|0)!=0:0){Uv(m,Id(A)|0,i);e=a[m>>2]|0;n=a[m+4>>2]|0;if((n&e|0)==-1){e=Vh(A)|0;a[L>>2]=i;a[L+4>>2]=e;ao(0,105587,L)|0;i=0;e=0;break}else{r[(a[(Id(A)|0)+16>>2]|0)+114>>0]=1;i=e+2|0;e=n+2|0;break}}else{i=0;e=0}}else{e=a[e>>2]|0;if((r[e>>0]|0)==99?(A1(e,105519)|0)==0:0){i=Ho(A,105526)|0;Uv(Q,Id(A)|0,i);e=a[Q>>2]|0;n=a[Q+4>>2]|0;if((n&e|0)==-1){e=Vh(A)|0;a[y>>2]=i|0?i:105536;a[y+4>>2]=e;ao(0,105542,y)|0;i=0;e=0;break}else{r[(a[(Id(A)|0)+16>>2]|0)+114>>0]=1;i=e+2|0;e=n+2|0;break}}else{i=0;e=0}}}while(0);R=+(i|0);s[q>>3]=X>R?X:R;R=+s[K+8>>3];d=+(e|0);e=q+8|0;s[e>>3]=R>d?R:d;i=(Y|0)<3&(T!=0.0|j!=0.0)?120:Y;n=Ho(A,105628)|0;if(!n)l=99;else{l=r[n>>0]|0;l=l<<24>>24==116?116:l<<24>>24==98?98:99}n=a[_>>2]|0;r[(a[n+104>>2]|0)+80>>0]=l;if((i|0)==4?(T==0.0?((~~(P+(P>=0.0?.5:-.5))|0)%90|0|0)==0:0)&j==0.0:0)o=1;else J=39;do{if((J|0)==39){n=a[(a[(a[n+8>>2]|0)+8>>2]|0)+44>>2]|0;if(n|0){o=a[n>>2]|0;a[F>>2]=a[q>>2];a[F+4>>2]=a[q+4>>2];a[F+8>>2]=a[q+8>>2];a[F+12>>2]=a[q+12>>2];V5[o&63](V,F);a[q>>2]=a[V>>2];a[q+4>>2]=a[V+4>>2];a[q+8>>2]=a[V+8>>2];a[q+12>>2]=a[V+12>>2];o=0;break}b=+s[e>>3];u=b*1.4142135623730951;if(f>u&l<<24>>24==99){w=b/f;w=+z(+(1.0/(1.0-w*w)));w=+s[q>>3]*w;s[q>>3]=w}else{w=+s[q>>3]*1.4142135623730951;s[q>>3]=w;s[e>>3]=u;b=u}if((i|0)>2){G=+D(+(3.141592653589793/+(i|0)));s[q>>3]=w/G;s[e>>3]=b/G;o=0}else o=0}}while(0);b=+s[e>>3];n=dR(A,a[47165]|0,137308)|0;if((r[n>>0]|0)==115?(A1(n,108230)|0)==0:0){s[q>>3]=c;s[e>>3]=f;p=$+40|0;a[p>>2]=a[p>>2]|2048}else{if(!((vR(n)|0)<<24>>24)){G=+s[q>>3];c=c>G?c:G;s[q>>3]=c;G=+s[e>>3];f=f>G?f:G}else{J=a[(a[_>>2]|0)+104>>2]|0;if(!(!(c<+s[J+24>>3])?!(f<+s[J+32>>3]):0)){V=Vh(A)|0;J=Vh(Id(A)|0)|0;a[p>>2]=V;a[p+4>>2]=J;ao(0,105637,p)|0}s[q>>3]=c}s[e>>3]=f}if(!O){G=f;Z=c}else{Z=c>f?c:f;s[e>>3]=Z;s[q>>3]=Z;G=Z}do{if(!((vR(dR(A,a[47156]|0,137308)|0)|0)<<24>>24)){if(o){f=+s[(X>+s[q>>3]?K:q)>>3];break}f=+s[e>>3];if(R >3]*+z(+(1.0-R*R/(f*f)));f=X>f?X:f}else f=X}else f=X}while(0);n=a[(a[_>>2]|0)+104>>2]|0;s[n+40>>3]=B-h+f;m=$+40|0;if(!(a[m>>2]&2048)){I=+s[e>>3]-b;s[n+48>>3]=(R 1;n=t?S:1;A:do{if((i|0)<3){n=qF(n<<5)|0;c=+s[q>>3]*.5;f=+s[e>>3]*.5;s[n>>3]=-c;s[n+8>>3]=-f;s[n+16>>3]=c;s[n+24>>3]=f;if(t){i=1;l=2;while(1){if((i|0)==(S|0))break;Z=c+4.0;G=f+4.0;s[n+(l<<4)>>3]=-Z;s[n+(l<<4)+8>>3]=-G;x=l|1;s[n+(x<<4)>>3]=Z;s[n+(x<<4)+8>>3]=G;i=i+1|0;l=l+2|0;c=Z;f=G}s[q>>3]=c*2.0;s[e>>3]=f*2.0;i=2}else i=2}else{n=qF(U(n<<4,i)|0)|0;l=a[(a[(a[(a[_>>2]|0)+8>>2]|0)+8>>2]|0)+44>>2]|0;e:do{if(!l){h=6.283185307179586/+(i|0);g=h*.5;d=+M(+g);B=+g1(+W(+j)+ +W(+T),1.0);g=T*1.4142135623730951/+D(+g);v=j*.5;E1((h+-3.141592653589793)*.5,H,x);E=P*.017453292519943295;c=0.0;f=0.0;b=0.0;l=0;u=+s[x>>3]*.5;w=+s[H>>3]*.5;while(1){if((l|0)>=(i|0))break e;b=b+h;E1(b,H,x);u=+s[x>>3]*d+u;w=+s[H>>3]*d+w;I=(w*g+B)*u+v*w;E1(+N(+w,+I)+E,H,x);I=+g1(I,w);C=+s[x>>3]*I*+s[q>>3];I=+s[H>>3]*I*+s[e>>3];eA=+W(+C);f=eA>f?eA:f;eA=+W(+I);c=eA>c?eA:c;s[n+(l<<4)>>3]=C;s[n+(l<<4)+8>>3]=I;if(o)break;else l=l+1|0}eA=-C;s[n+16>>3]=eA;s[n+24>>3]=I;s[n+32>>3]=eA;eA=-I;s[n+40>>3]=eA;s[n+48>>3]=C;s[n+56>>3]=eA}else{V5[a[l+4>>2]&63](n,q);c=+s[e>>3]*.5;f=+s[q>>3]*.5}}while(0);f=f*2.0;c=c*2.0;Z=Z>f?Z:f;s[q>>3]=Z;eA=G>c?G:c;s[e>>3]=eA;f=Z/f;c=eA/c;l=0;while(1){if((l|0)>=(i|0))break;p=n+(l<<4)|0;A=n+(l<<4)+8|0;eA=+s[A>>3]*c;s[p>>3]=+s[p>>3]*f;s[A>>3]=eA;l=l+1|0}if(t){t=i+-1|0;c=+s[n>>3];b=+s[n+8>>3];f=+N(+(b-+s[n+(t<<4)+8>>3]),+(c-+s[n+(t<<4)>>3]));t=0;e:while(1){if((t|0)>=(i|0))break;o=t+1|0;l=(o|0)%(i|0)|0;u=+s[n+(l<<4)>>3];w=+s[n+(l<<4)+8>>3];h=+N(+(w-b),+(u-c));G=(f+3.141592653589793-h)*.5;eA=4.0/+M(+G);E1(f-G,H,x);s[H>>3]=+s[H>>3]*eA;s[x>>3]=+s[x>>3]*eA;l=1;f=b;while(1){if((l|0)==(S|0)){f=h;t=o;c=u;b=w;continue e}G=+s[x>>3]+c;eA=+s[H>>3]+f;A=(U(l,i)|0)+t|0;s[n+(A<<4)>>3]=G;s[n+(A<<4)+8>>3]=eA;l=l+1|0;c=G;f=eA}}t=U(i,S+-1|0)|0;l=0;while(1){if((l|0)>=(i|0))break A;x=l+t|0;G=+s[n+(x<<4)+8>>3];Z=+W(+ +s[n+(x<<4)>>3])*2.0;eA=+s[q>>3];s[q>>3]=Z>eA?Z:eA;G=+W(+G)*2.0;eA=+s[e>>3];s[e>>3]=G>eA?G:eA;l=l+1|0}}}}while(0);a[$>>2]=O;a[$+4>>2]=S;a[$+8>>2]=i;s[$+16>>3]=P;s[$+32>>3]=j;s[$+24>>3]=T;a[$+44>>2]=n;f=+s[q>>3];if(!(a[m>>2]&2048)){i=a[_>>2]|0;s[i+32>>3]=f*.013888888888888888}else{i=a[_>>2]|0;s[i+32>>3]=+s[(X>f?K:q)>>3]*.013888888888888888;e=(R>+s[e>>3]?K:q)+8|0}s[i+40>>3]=+s[e>>3]*.013888888888888888;a[i+12>>2]=$;k=AA;return}function wp(A){A=A|0;var e=0,i=0,r=0,f=0,n=0.0,l=0.0,t=0,c=0,b=0,u=0,w=0;w=k;k=k+64|0;t=w+40|0;r=w+32|0;c=w+16|0;u=w;i=(a[(a[(Id(A)|0)+16>>2]|0)+116>>2]|0)>>>2&1^1;b=A+16|0;f=a[a[(a[b>>2]|0)+104>>2]>>2]|0;a[47282]=f;f=P2(f)|0;f=qF(((f|0)>1?f:1)+1|0)|0;e=op(A,i,1,f)|0;if(!e){a[r>>2]=a[a[(a[b>>2]|0)+104>>2]>>2];ao(1,105472,r)|0;a[47282]=105493;e=op(A,i,1,f)|0}L2(f);hp(t,A,e);i=a[b>>2]|0;l=+s[i+32>>3]*72.0;l=+(~~(l+(l>=0.0?.5:-.5))|0);s[u>>3]=l;n=+s[i+40>>3]*72.0;n=+(~~(n+(n>=0.0?.5:-.5))|0);i=u+8|0;s[i>>3]=n;if(!((vR(dR(A,a[47165]|0,137308)|0)|0)<<24>>24)){l=+s[(+s[e>>3]>l?e:u)>>3];s[u>>3]=l;r=e+8|0;n=+s[(+s[r>>3]>n?e:u)+8>>3];s[i>>3]=n;i=r;r=e}else{i=e+8|0;r=e}A=(vR(dR(A,a[47156]|0,137308)|0)|0)&255;a[t>>2]=a[u>>2];a[t+4>>2]=a[u+4>>2];a[t+8>>2]=a[u+8>>2];a[t+12>>2]=a[u+12>>2];dp(e,t,A);Bp(c,l*-.5,n*.5);a[t>>2]=a[c>>2];a[t+4>>2]=a[c+4>>2];a[t+8>>2]=a[c+8>>2];a[t+12>>2]=a[c+12>>2];gp(e,t,15);u=a[b>>2]|0;s[u+32>>3]=+s[r>>3]*.013888888888888888;s[u+40>>3]=(+s[i>>3]+1.0)*.013888888888888888;a[u+12>>2]=e;k=w;return}function kp(A){A=A|0;var e=0.0,i=0,r=0.0,f=0.0,n=0,l=0,t=0,c=0,b=0.0,u=0;t=qF(48)|0;c=A+16|0;n=a[(a[(a[(a[c>>2]|0)+8>>2]|0)+8>>2]|0)+4>>2]|0;f=+oR(A,a[47146]|0,1797693134862315708145274.0e284,0.0);e=+oR(A,a[47145]|0,1797693134862315708145274.0e284,0.0);f=f 0.0?f>.0003?f:.0003:f;l=a[c>>2]|0;s[l+40>>3]=f;s[l+32>>3]=f;e=f*72.0;n=kR(A,a[47160]|0,n,0)|0;l=qF((n|0)<1?32:n<<5)|0;f=f*36.0;r=-f;s[l>>3]=r;s[l+8>>3]=r;s[l+16>>3]=f;s[l+24>>3]=f;if((n|0)>1){A=1;i=2;r=f;e=f;while(1){if((A|0)==(n|0))break;b=r+4.0;f=e+4.0;s[l+(i<<4)>>3]=-b;s[l+(i<<4)+8>>3]=-f;u=i|1;s[l+(u<<4)>>3]=b;s[l+(u<<4)+8>>3]=f;A=A+1|0;i=i+2|0;r=b;e=f}e=r*2.0}a[t>>2]=1;a[t+4>>2]=n;a[t+8>>2]=2;u=t+16|0;a[u>>2]=0;a[u+4>>2]=0;a[u+8>>2]=0;a[u+12>>2]=0;a[u+16>>2]=0;a[u+20>>2]=0;a[t+44>>2]=l;b=e*.013888888888888888;u=a[c>>2]|0;s[u+32>>3]=b;s[u+40>>3]=b;a[u+12>>2]=t;return}function op(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0;n=qF(72)|0;w=a[(a[A+16>>2]|0)+104>>2]|0;u=0;l=1;t=a[47282]|0;A:while(1){c=r[t>>0]|0;switch(c<<24>>24){case 0:break A;case 92:{t=t+1|0;c=r[t>>0]|0;switch(c<<24>>24){case 124:case 125:case 123:case 92:{b=u;break}default:W=4}break}default:W=4}if((W|0)==4){W=0;switch(c<<24>>24){case 123:{b=u+1|0;break}case 125:{b=u+-1|0;break}default:{b=u;l=l+((u|0)==0&c<<24>>24==124&1)|0}}if((b|0)<0)break}u=b;t=t+1|0}Q=n+56|0;a[Q>>2]=qF(l<<2)|0;r[n+64>>0]=e;Z=(e|0)==0&1;G=w+82|0;m=f+1|0;E=(i|0)!=0;C=w+16|0;I=w+4|0;v=w+8|0;c=0;u=0;e=0;g=0;b=0;i=0;w=f;l=0;t=0;A:while(1){o=c;c=0;e:while(1){i:while(1){B=i;r:while(1){d=c;k=l;f:while(1){h=u;a:while(1){while(1){if(g){W=78;break A}u=a[47282]|0;l=r[u>>0]|0;if((l+-1&255)>=31)break;a[47282]=u+1}switch(l<<24>>24|0){case 92:{W=53;break i}case 0:case 124:case 125:break r;case 60:break f;case 62:break a;case 123:break;default:{c=e;l=u;break i}}l=u+1|0;a[47282]=l;if(b|0){W=34;break A}if(!(r[l>>0]|0)){W=34;break A}i=op(A,Z,0,f)|0;a[(a[Q>>2]|0)+(h<<2)>>2]=i;if(!i){W=36;break A}else{h=h+1|0;b=4}}if(r[G>>0]|0){c=e;l=u;break i}if(!(b&16)){W=27;break A}if(k>>>0>m>>>0?(L=k+-1|0,(L|0)!=(B|0)):0)l=(r[L>>0]|0)==32?L:k;else l=k;r[l>>0]=0;d=b3(f)|0;a[47282]=(a[47282]|0)+1;u=h;b=b&-17;k=l}if(b&6|0){W=22;break A}if(r[G>>0]|0){c=e;l=u;break i}a[47282]=u+1;u=h;b=b|18;c=d;B=f;l=f}if(!((b&16|0)==0&(E|l<<24>>24!=0))){W=38;break A}if(!(b&4)){c=qF(72)|0;a[(a[Q>>2]|0)+(h<<2)>>2]=c;u=h+1|0}else{c=o;u=h}if(d|0)a[c+60>>2]=d;if(!(b&5)){r[f+t>>0]=32;b=b|1;t=t+1|0}l=f+t|0;if(b&1){if((t|0)>1?(y=l+-1|0,(y|0)!=(w|0)):0)l=(r[y>>0]|0)==32?y:l;r[l>>0]=0;w=b3(f)|0;a[c+52>>2]=HF(A,w,r[G>>0]|0?2:0,+s[C>>3],a[I>>2]|0,a[v>>2]|0)|0;r[c+64>>0]=1;w=f;t=0}l=a[47282]|0;switch(r[l>>0]|0){case 0:{g=1;i=B;l=k;continue A}case 125:{W=51;break A}default:{}}a[47282]=l+1;o=c;b=0;c=0;i=B;l=k}i:do{if((W|0)==53){W=0;c=f+t|0;l=u+1|0;switch(r[l>>0]|0){case 0:{c=e;l=u;break i}case 62:case 60:case 124:case 125:case 123:{c=e;break}case 32:{if(!(r[G>>0]|0))c=1;else W=55;break}default:W=55}if((W|0)==55){W=0;r[c>>0]=92;c=e;b=b|9;t=t+1|0}a[47282]=l}}while(0);e=f+t|0;if(b&4|0?(r[l>>0]|0)!=32:0){W=59;break A}if(!(b&24))b=(r[l>>0]|0)==32?b:b|9;if(!(b&8))if(!(b&16))i=B;else{u=r[l>>0]|0;e=(c|0)!=0;if(!(e|u<<24>>24!=32))if((k|0)!=(f|0))if((r[k+-1>>0]|0)==32)u=k;else W=73;else u=f;else W=73;if((W|0)==73){W=0;r[k>>0]=u;u=k+1|0;l=a[47282]|0}i=e?u+-1|0:B;k=u}else{u=r[l>>0]|0;i=(c|0)!=0;if(!((!(i|u<<24>>24!=32)?(r[e+-1>>0]|0)==32:0)?(r[G>>0]|0)==0:0)){r[e>>0]=u;t=t+1|0}if(i){i=B;w=f+t+-1|0}else i=B}l=l+1|0;a[47282]=l;while(1){if((r[l>>0]|0)>=0){u=h;e=c;c=d;l=k;continue e}B=l+1|0;a[47282]=B;r[f+t>>0]=r[l>>0]|0;t=t+1|0;l=B}}}if((W|0)==22){vp(n,d);n=0}else if((W|0)==27){vp(n,d);n=0}else if((W|0)==34){vp(n,d);n=0}else if((W|0)==36){vp(n,d);n=0}else if((W|0)==38){vp(n,d);n=0}else if((W|0)==51){a[47282]=l+1;a[n+48>>2]=u}else if((W|0)==59){vp(n,d);n=0}else if((W|0)==78)a[n+48>>2]=h;return n|0}function hp(A,e,i){A=A|0;e=e|0;i=i|0;var f=0.0,n=0.0,l=0.0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0;v=k;k=k+64|0;c=v+48|0;b=v+40|0;u=v+32|0;g=v+16|0;B=v;t=a[i+52>>2]|0;A:do{if(!t){u=g+8|0;w=i+48|0;o=i+56|0;h=i+64|0;d=B+8|0;a[g>>2]=0;a[g+4>>2]=0;a[g+8>>2]=0;a[g+12>>2]=0;t=0;while(1){if((t|0)>=(a[w>>2]|0))break A;hp(B,e,a[(a[o>>2]|0)+(t<<2)>>2]|0);if(!(r[h>>0]|0)){s[u>>3]=+s[u>>3]+ +s[d>>3];c=g;b=+s[g>>3]>+s[B>>3]?g:B}else{s[g>>3]=+s[g>>3]+ +s[B>>3];c=u;b=(+s[u>>3]>+s[d>>3]?g:B)+8|0}s[c>>3]=+s[b>>3];t=t+1|0}}else{n=+s[t+24>>3];f=+s[t+32>>3];if(n>0.0|f>0.0){t=Ho(e,105496)|0;do{if(t){a[c>>2]=b;a[c+4>>2]=u;t=J3(t,105503,c)|0;if((t|0)<=0){l=8.0;n=n+16.0;break}l=+s[b>>3]*72.0;l=+(~~(l+(l>=0.0?.5:-.5))<<1|0);n=n+l;if((t|0)!=1){l=+s[u>>3]*72.0;l=+(~~(l+(l>=0.0?.5:-.5))<<1|0)}}else{l=8.0;n=n+16.0}}while(0);f=l+f}s[g>>3]=n;s[g+8>>3]=f}}while(0);a[i>>2]=a[g>>2];a[i+4>>2]=a[g+4>>2];a[i+8>>2]=a[g+8>>2];a[i+12>>2]=a[g+12>>2];a[A>>2]=a[g>>2];a[A+4>>2]=a[g+4>>2];a[A+8>>2]=a[g+8>>2];a[A+12>>2]=a[g+12>>2];k=v;return}function dp(A,e,i){A=A|0;e=e|0;i=i|0;var f=0.0,n=0,l=0.0,t=0,c=0,b=0,u=0,w=0,o=0,h=0.0,d=0.0,B=0;B=k;k=k+32|0;w=B+16|0;o=B;h=+s[e>>3];l=h-+s[A>>3];d=+s[e+8>>3];f=d-+s[A+8>>3];a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];e=a[A+52>>2]|0;if(!((i|0)!=0|(e|0)==0)){u=e+40|0;s[u>>3]=+s[u>>3]+l;u=e+48|0;s[u>>3]=+s[u>>3]+f}b=A+48|0;e=a[b>>2]|0;A:do{if(e|0){u=A+64|0;f=((r[u>>0]|0)==0?f:l)/+(e|0);c=A+56|0;t=0;while(1){if((t|0)>=(e|0))break A;A=a[(a[c>>2]|0)+(t<<2)>>2]|0;n=t+1|0;e=~~(f*+(n|0))-~~(f*+(t|0))|0;if(!(r[u>>0]|0))Bp(o,h,+s[A+8>>3]+ +(e|0));else Bp(o,+s[A>>3]+ +(e|0),d);a[w>>2]=a[o>>2];a[w+4>>2]=a[o+4>>2];a[w+8>>2]=a[o+8>>2];a[w+12>>2]=a[o+12>>2];dp(A,w,i);t=n;e=a[b>>2]|0}}}while(0);k=B;return}function Bp(A,e,i){A=A|0;e=+e;i=+i;s[A>>3]=e;s[A+8>>3]=i;return}function gp(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0.0,B=0.0;h=k;k=k+48|0;t=h+32|0;u=h+16|0;b=h;r[A+65>>0]=i;c=A+16|0;B=+s[e>>3];o=e+8|0;d=+s[o>>3];Bp(u,B,d-+s[A+8>>3]);a[c>>2]=a[u>>2];a[c+4>>2]=a[u+4>>2];a[c+8>>2]=a[u+8>>2];a[c+12>>2]=a[u+12>>2];c=A+32|0;Bp(b,+s[A>>3]+B,d);a[c>>2]=a[b>>2];a[c+4>>2]=a[b+4>>2];a[c+8>>2]=a[b+8>>2];a[c+12>>2]=a[b+12>>2];c=a[A+48>>2]|0;b=c+-1|0;u=(i|0)==0;w=A+56|0;l=A+64|0;n=0;while(1){if((n|0)>=(c|0))break;do{if(!u){A=(n|0)==0;f=(n|0)==(b|0);if(!(r[l>>0]|0))if(A){A=f?15:14;break}else{A=f?11:10;break}else if(A){A=f?15:13;break}else{A=f?7:5;break}}else A=0}while(0);f=a[(a[w>>2]|0)+(n<<2)>>2]|0;a[t>>2]=a[e>>2];a[t+4>>2]=a[e+4>>2];a[t+8>>2]=a[e+8>>2];a[t+12>>2]=a[e+12>>2];gp(f,t,A&i);if(!(r[l>>0]|0))s[o>>3]=+s[o>>3]-+s[(a[(a[w>>2]|0)+(n<<2)>>2]|0)+8>>3];else s[e>>3]=+s[a[(a[w>>2]|0)+(n<<2)>>2]>>3]+ +s[e>>3];n=n+1|0}k=h;return}function vp(A,e){A=A|0;e=e|0;Ep(A);L2(e);return}function Ep(A){A=A|0;var e=0,i=0,r=0;i=A+48|0;r=A+56|0;e=0;while(1){if((e|0)>=(a[i>>2]|0))break;Ep(a[(a[r>>2]|0)+(e<<2)>>2]|0);e=e+1|0}L2(a[A+60>>2]|0);TF(a[A+52>>2]|0);L2(a[r>>2]|0);L2(A);return}function Cp(A){A=A|0;var e=0.0,i=0.0;i=+oR(A,a[47146]|0,0.0,.01);e=+oR(A,a[47145]|0,0.0,.02);e=(i>e?i:e)*72.0;return+ +(~~(e+(e>=0.0?.5:-.5))|0)}function Ip(A,e){A=+A;e=+e;var i=0;i=~~(A/e);return+(+((+(i|0)*e+1.0e-05>2]|0)+8>>2]|0;if(!A)A=0;else A=(a[a[A+4>>2]>>2]|0)==91&1;return A|0}function Gp(A){A=A|0;var e=0,i=0,f=0,n=0,l=0;f=a[47283]|0;A:do{if(!f)e=0;else{n=a[47284]|0;i=0;while(1){if((i|0)>=(n|0)){e=0;break A}e=a[f+(i<<2)>>2]|0;l=a[e>>2]|0;if((r[l>>0]|0)==(r[A>>0]|0)?(A1(l,A)|0)==0:0)break A;i=i+1|0}}}while(0);return e|0}function mp(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;if(yR(Ho(e,105526)|0)|0)if((r[A>>0]|0)==101?(A1(A,105685)|0)==0:0){e=101;n=6}else{A=105519;n=4}else n=4;if((n|0)==4){e=r[A>>0]|0;if(e<<24>>24==99)if(!(A1(A,105519)|0))n=11;else{e=99;n=6}else n=6}A:do{if((n|0)==6){i=20848;while(1){f=a[i>>2]|0;if(!f){n=11;break A}if((r[f>>0]|0)==e<<24>>24?(A1(f,A)|0)==0:0){A=i;break A}i=i+16|0}}}while(0);if((n|0)==11)A=Qp(A)|0;return A|0}function Qp(A){A=A|0;var e=0,i=0,f=0,n=0,l=0;l=k;k=k+16|0;n=l;e=Gp(A)|0;if(!e){f=a[47284]|0;e=f+1|0;a[47284]=e;i=a[47283]|0;if(!i)e=$F(e<<2)|0;else e=eV(i,e<<2)|0;a[47283]=e;e=qF(16)|0;a[(a[47283]|0)+(f<<2)>>2]=e;a[e>>2]=a[5212];a[e+4>>2]=a[5213];a[e+8>>2]=a[5214];a[e+12>>2]=a[5215];i=b3(A)|0;a[e>>2]=i;do{if(true){if((r[A>>0]|0)==99?(A1(A,105519)|0)==0:0){i=1;break}a[n>>2]=a[5212];a[n+4>>2]=i;ao(0,105690,n)|0;i=0}else{}}while(0);r[e+12>>0]=i}k=l;return e|0}function Lp(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;r=+s[e>>3]*.5257311121191336;i=+s[e+8>>3]*.8944271909999159;i=r>i?r:i;s[A>>3]=i*4.97979656976556;s[A+8>>3]=i*4.73606797749979;return}function yp(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0.0,a=0,n=0.0,l=0.0,t=0.0,c=0,b=0,u=0.0;r=+s[e>>3];c=e+8|0;f=+s[c>>3];i=f/r;if(!(i>.9510565162951536))if(i<.9510565162951536){t=r;f=r*.9510565162951536}else t=r;else t=f*1.0514622242382672;r=t*.5257311121191336;n=t*.20081141588622725;l=t*.05020285397155681;i=.3141592653589793;a=0;while(1){if((a|0)>=10)break;s[A+(a<<4)>>3]=+D(+i)*r;s[A+(a<<4)+8>>3]=+M(+i)*r-l;u=i+.6283185307179586;b=a|1;s[A+(b<<4)>>3]=+D(+u)*n;s[A+(b<<4)+8>>3]=+M(+u)*n-l;i=i+1.2566370614359172;a=a+2|0}s[e>>3]=t;s[c>>3]=f;return}function Wp(A){A=A|0;A=a[(a[A+16>>2]|0)+12>>2]|0;if(A|0){L2(a[A+44>>2]|0);L2(A)}return}function zp(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;w=k;k=k+80|0;s=w+40|0;n=w;u=w+64|0;l=w+56|0;if(!(r[i>>0]|0)){n=4208;l=A+40|0;do{a[A>>2]=a[n>>2];A=A+4|0;n=n+4|0}while((A|0)<(l|0))}else{t=(f|0)==0?106356:f;a[u>>2]=15;c=e+16|0;f=a[c>>2]|0;do{if(r[(a[f+104>>2]|0)+82>>0]|0){f=ta(e,i,u)|0;if(!f){f=a[c>>2]|0;b=8;break}if(Tp(e,f,n,t,a[u>>2]|0,0)|0){a[s>>2]=Vh(e)|0;a[s+4>>2]=i;a[s+8>>2]=t;ao(0,106358,s)|0}}else b=8}while(0);if((b|0)==8){if((a[(a[f+8>>2]|0)+8>>2]|0)==1664)l=0;else{a[l>>2]=e;a[l+4>>2]=0}if(Tp(e,0,n,i,a[u>>2]|0,l)|0)jp(e,i)}a[n+36>>2]=0;l=A+40|0;do{a[A>>2]=a[n>>2];A=A+4|0;n=n+4|0}while((A|0)<(l|0))}k=w;return}function Yp(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0,n=0,l=0,t=0.0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0.0,g=0;d=k;k=k+112|0;u=d+96|0;b=d+80|0;o=d+64|0;c=d+48|0;h=d+32|0;w=d;f=d+16|0;if(!A){a[47287]=0;A=0}else{n=a[A+4>>2]|0;A=a[A>>2]|0;l=(a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&3)*90|0;a[u>>2]=a[e>>2];a[u+4>>2]=a[e+4>>2];a[u+8>>2]=a[e+8>>2];a[u+12>>2]=a[e+12>>2];yF(f,u,l);a[h>>2]=a[f>>2];a[h+4>>2]=a[f+4>>2];a[h+8>>2]=a[f+8>>2];a[h+12>>2]=a[f+12>>2];A:do{if(n){i=+s[n+8>>3];r=+s[n+24>>3];B=+s[h>>3];if((+s[n>>3]<=B?B<=+s[n+16>>3]:0)?(t=+s[h+8>>3],i<=t):0)A=t<=r&1;else A=0}else{if((A|0)==(a[47287]|0)){f=a[47288]|0;n=a[47290]|0;l=a[47289]|0}else{n=a[(a[A+16>>2]|0)+12>>2]|0;a[47291]=n;l=a[n+44>>2]|0;a[47289]=l;f=a[n+8>>2]|0;a[47288]=f;n=U((a[n+4>>2]|0)+-1|0,f)|0;n=(n|0)>0?n:0;a[47290]=n;a[47287]=A}A=0;e=0;while(1){if((A|0)>=(f|0)){A=1;break A}g=l+(n+A<<4)|0;a[w>>2]=a[g>>2];a[w+4>>2]=a[g+4>>2];a[w+8>>2]=a[g+8>>2];a[w+12>>2]=a[g+12>>2];g=l+(n+((A+4|0)%(f|0)|0)<<4)|0;a[c>>2]=a[h>>2];a[c+4>>2]=a[h+4>>2];a[c+8>>2]=a[h+8>>2];a[c+12>>2]=a[h+12>>2];a[o>>2]=a[46614];a[o+4>>2]=a[46615];a[o+8>>2]=a[46616];a[o+12>>2]=a[46617];a[b>>2]=a[w>>2];a[b+4>>2]=a[w+4>>2];a[b+8>>2]=a[w+8>>2];a[b+12>>2]=a[w+12>>2];a[u>>2]=a[g>>2];a[u+4>>2]=a[g+4>>2];a[u+8>>2]=a[g+8>>2];a[u+12>>2]=a[g+12>>2];e=e+((xp(c,o,b,u)|0)==0&1)|0;if((e|0)==2){A=0;break}else A=A+2|0}}}while(0)}k=d;return A|0}function Dp(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;i=a[A+16>>2]|0;if((r[(a[i+104>>2]|0)+82>>0]|0)!=0?(r[i+145>>0]|0)!=0:0)A=ba(A,e,0,f,n)|0;else A=0;return A|0}function Mp(A,e){A=A|0;e=e|0;var i=0,l=0,t=0.0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0.0,L=0.0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0;R=k;k=k+48|0;D=R+24|0;Y=R+16|0;m=R+8|0;G=R;J=R+32|0;u=R+28|0;p=a[A+16>>2]|0;N=p+208|0;i=a[N>>2]|0;if((i|0)==0?(f[p+260>>1]&1)==0:0)F=0;else W=4;if((W|0)==4)if(!(a[A+152>>2]&4)){Si(A,i,a[p+228>>2]|0,a[p+244>>2]|0,a[p+212>>2]|0);F=1}else F=1;M=e+16|0;i=a[M>>2]|0;d=a[i+12>>2]|0;z=a[d+44>>2]|0;V=a[d+8>>2]|0;d=a[d+4>>2]|0;if((a[47285]|0)<(V|0)){i=V+5|0;a[47285]=i;l=a[47286]|0;if(!l)i=$F(i<<4)|0;else i=eV(l,i<<4)|0;a[47286]=i;i=a[M>>2]|0}y=(a[i+104>>2]|0)+56|0;i=i+16|0;a[y>>2]=a[i>>2];a[y+4>>2]=a[i+4>>2];a[y+8>>2]=a[i+8>>2];a[y+12>>2]=a[i+12>>2];y=a[M>>2]|0;Q=+s[y+32>>3]*72.0;Q=(+s[y+96>>3]+ +s[y+88>>3])/+(~~(Q+(Q>=0.0?.5:-.5))|0);L=+s[y+40>>3]*72.0;L=+s[y+80>>3]/+(~~(L+(L>=0.0?.5:-.5))|0);y=Fp(A,e)|0;a[J>>2]=0;i=n[(a[M>>2]|0)+117>>0]|0;do{if(!(i&1)){if(i&2|0){B=BR(e,0,106256)|0;$i(A,B);er(A,BR(e,0,106264)|0);l=0;i=1;break}if(i&8|0){B=BR(e,0,106272)|0;$i(A,B);er(A,BR(e,0,106280)|0);l=0;i=1;break}if(i&4|0){B=BR(e,0,106288)|0;$i(A,B);er(A,BR(e,0,106296)|0);l=0;i=1;break}if(!(y&1))if(!(y&576)){l=0;i=0}else{l=Vp(e)|0;i=1}else{l=Vp(e)|0;if(!((qM(l,J,u)|0)<<24>>24)){er(A,l);i=1}else{er(A,a[J>>2]|0);i=a[J+4>>2]|0;b=kR(e,a[47173]|0,0,0)|0;t=+c[u>>2];if(!i)ir(A,137314,b,t);else ir(A,i,b,t);i=(y&2)>>>1|2}}B=Jp(A,e)|0}else{B=BR(e,0,106240)|0;$i(A,B);er(A,BR(e,0,106248)|0);l=0;i=1}}while(0);b=a[(a[M>>2]|0)+8>>2]|0;if(r[b+12>>0]|0){b=a[b>>2]|0;if((r[b>>0]|0)==99){b=(A1(b,105519)|0)==0;W=33}else v=1}else{b=1;W=33}if((W|0)==33){b=b^1;if((d|0)!=0|i<<24>>24==0|b)v=b;else{$i(A,137379);d=1;v=0}}E=(V|0)<3;C=(y&512|0)!=0;Z=(y&8|0)==0;I=(y&64|0)==0;o=(y&1024|0)==0;h=(y&2130706444|0)==0;g=0;while(1){if((g|0)>=(d|0))break;u=U(g,V)|0;w=a[47286]|0;b=0;while(1){if((b|0)>=(V|0))break;H=b+u|0;t=+s[z+(H<<4)+8>>3];X=a[M>>2]|0;s[w+(b<<4)>>3]=+s[X+16>>3]+ +s[z+(H<<4)>>3]*Q;s[w+(b<<4)+8>>3]=+s[X+24>>3]+t*L;b=b+1|0}do{if(E){if(C&(g|0)==0?(G1(l,58)|0)!=0:0)if((aI(A,w,l)|0)>1){a[G>>2]=Vh(e)|0;ao(3,106304,G)|0;i=0}else i=0;fr(A,a[47286]|0,V,i&255);if(!Z)pp(A,e)}else{if(!I){if((g|0)==0?(cI(A,w,l,1)|0)>1:0){a[m>>2]=Vh(e)|0;ao(3,106304,m)|0}ar(A,a[47286]|0,V,0);break}if(!o){$i(A,137379);ar(A,a[47286]|0,V,i&255);$i(A,B);tr(A,(a[47286]|0)+32|0,2);break}i=i&255;if(h){ar(A,w,V,i);break}else{tp(A,w,V,y,i);break}}}while(0);g=g+1|0;i=0}b=a[(a[M>>2]|0)+8>>2]|0;if(!(r[b+12>>0]|0)){b=Ho(e,109025)|0;if(b|0?r[b>>0]|0:0){w=b;W=65}}else{b=a[b>>2]|0;if((r[b>>0]|0)==99?(A1(b,105519)|0)==0:0){b=Ho(e,105526)|0;if(b|0?r[b>>0]|0:0){w=b;W=65}}else{w=b;W=65}}if((W|0)==65){u=a[47286]|0;b=0;while(1){if((b|0)>=(V|0))break;t=+s[z+(b<<4)+8>>3];H=a[M>>2]|0;s[u+(b<<4)>>3]=+s[H+16>>3]+ +s[z+(b<<4)>>3]*Q;s[u+(b<<4)+8>>3]=+s[H+24>>3]+t*L;b=b+1|0}b=i&255;do{if(!(v|i<<24>>24==0)){if(E){if(C&(g|0)==0?(G1(l,58)|0)!=0:0)if((aI(A,u,l)|0)>1){a[Y>>2]=Vh(e)|0;ao(3,106304,Y)|0;i=0}else i=0;fr(A,a[47286]|0,V,i&255);if(Z)break;pp(A,e);break}if(I)if(!(y&12)){ar(A,u,V,b);break}else{tp(A,u,V,y,b);break}else{if((cI(A,u,l,1)|0)>1){a[D>>2]=Vh(e)|0;ao(3,106304,D)|0}ar(A,a[47286]|0,V,0);break}}}while(0);H=a[47286]|0;sr(A,w,H,V,i,dR(e,a[47166]|0,137308)|0)}L2(a[J>>2]|0);jF(A,10,a[(a[M>>2]|0)+104>>2]|0);if(F){if(a[A+152>>2]&4|0)Si(A,a[N>>2]|0,a[p+228>>2]|0,a[p+244>>2]|0,a[p+212>>2]|0);Oi(A)}k=R;return}function Fp(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0;l=k;k=k+16|0;f=l;i=Xp(e,f)|0;if(i|0)rr(A,i);i=a[47172]|0;if((i|0?(n=Uo(e,i)|0,n|0):0)?r[n>>0]|0:0)ur(A,+oR(e,a[47172]|0,1.0,0.0));k=l;return a[f>>2]|0}function Vp(A){A=A|0;return Rp(A,134800)|0}function Jp(A,e){A=A|0;e=e|0;e=BR(e,a[47148]|0,195059)|0;e=r[e>>0]|0?e:137314;$i(A,e);return e|0}function pp(A,e){A=A|0;e=e|0;var i=0,r=0,f=0.0,n=0,l=0.0,t=0,c=0,b=0;i=k;k=k+96|0;t=i+80|0;c=i+64|0;r=i+32|0;b=i+16|0;n=i;e=a[e+16>>2]|0;f=+s[e+80>>3];s[b+8>>3]=f*.375;l=+s[e+96>>3];s[b>>3]=l*.6614;e=e+16|0;a[c>>2]=a[b>>2];a[c+4>>2]=a[b+4>>2];a[c+8>>2]=a[b+8>>2];a[c+12>>2]=a[b+12>>2];a[t>>2]=a[e>>2];a[t+4>>2]=a[e+4>>2];a[t+8>>2]=a[e+8>>2];a[t+12>>2]=a[e+12>>2];Np(n,c,t);a[r>>2]=a[n>>2];a[r+4>>2]=a[n+4>>2];a[r+8>>2]=a[n+8>>2];a[r+12>>2]=a[n+12>>2];n=r+8|0;e=r+24|0;s[e>>3]=+s[n>>3];s[r+16>>3]=+s[r>>3]-l*1.3228;tr(A,r,2);f=+s[n>>3]-f*.75;s[n>>3]=f;s[e>>3]=f;tr(A,r,2);k=i;return}function Np(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;r=+s[i+8>>3]+ +s[e+8>>3];s[A>>3]=+s[i>>3]+ +s[e>>3];s[A+8>>3]=r;return}function Rp(A,e){A=A|0;e=e|0;var i=0;i=BR(A,a[47149]|0,195059)|0;if(!(r[i>>0]|0)){i=BR(A,a[47148]|0,195059)|0;return((r[i>>0]|0)==0?e:i)|0}else return i|0;return 0}function Xp(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0;i=BR(A,a[47157]|0,195059)|0;A:do{if(!(r[i>>0]|0)){n=0;i=0}else{n=XI(i)|0;l=n;i=0;e:while(1){f=a[l>>2]|0;if(!f)break A;switch(r[f>>0]|0){case 102:{if(!(A1(f,111101)|0)){l=l+4|0;i=i|1;continue e}break}case 114:{if(!(A1(f,106316)|0)){f=l;do{c=f;f=f+4|0;t=a[f>>2]|0;a[c>>2]=t}while((t|0)!=0);c=l;i=i|4;l=c;continue e}if(!(A1(f,106334)|0)){f=l;do{t=f;f=f+4|0;c=a[f>>2]|0;a[t>>2]=c}while((c|0)!=0);c=l;i=i|3;l=c;continue e}break}case 100:{if(!(A1(f,106324)|0)){f=l;do{t=f;f=f+4|0;c=a[f>>2]|0;a[t>>2]=c}while((c|0)!=0);c=l;i=i|8;l=c;continue e}break}case 105:{if(!(A1(f,134335)|0)){l=l+4|0;i=i|32;continue e}break}case 115:{if((A1(f,106341)|0)==0?Hp(A)|0:0){f=l;do{t=f;f=f+4|0;c=a[f>>2]|0;a[t>>2]=c}while((c|0)!=0);c=l;i=i|64;l=c;continue e}break}case 119:{if((A1(f,106349)|0)==0?Up(A)|0:0){f=l;do{t=f;f=f+4|0;c=a[f>>2]|0;a[t>>2]=c}while((c|0)!=0);c=l;i=i|512;l=c;continue e}break}default:{}}l=l+4|0}}}while(0);f=a[(a[(a[A+16>>2]|0)+8>>2]|0)+8>>2]|0;if(f)i=a[f+40>>2]|i;a[e>>2]=i;return n|0}function Hp(A){A=A|0;var e=0.0;A=a[(a[(a[A+16>>2]|0)+8>>2]|0)+8>>2]|0;if((((A|0)!=0?(a[A+8>>2]|0)==4:0)?(e=+s[A+16>>3],((~~(e+(e>=0.0?.5:-.5))|0)%90|0|0)==0):0)?+s[A+24>>3]==0.0:0)A=+s[A+32>>3]==0.0&1;else A=0;return A|0}function Up(A){A=A|0;A=a[(a[(a[A+16>>2]|0)+8>>2]|0)+8>>2]|0;if(!A)A=0;else A=(a[A+8>>2]|0)<3&1;return A|0}function xp(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,a=0.0,n=0.0,l=0.0;l=+s[i+8>>3];n=-(+s[r+8>>3]-l);a=+s[i>>3];f=+s[r>>3]-a;a=f*l+a*n;return(+s[A+8>>3]*f+ +s[A>>3]*n-a>=0.0^+s[e>>3]*n-a+ +s[e+8>>3]*f>=0.0^1)&1|0}function Tp(A,e,i,f,n,l){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;var t=0.0,c=0.0,b=0,u=0,w=0,o=0,h=0.0,d=0.0,B=0.0,g=0.0,v=0.0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0;Y=k;k=k+192|0;Q=Y+176|0;W=Y+160|0;b=Y+144|0;G=Y+128|0;m=Y+112|0;u=Y+96|0;w=Y+80|0;o=Y+64|0;E=Y+48|0;C=Y+32|0;I=Y+16|0;y=Y;if(!e){a[W>>2]=0;a[W+4>>2]=0;a[W+8>>2]=0;a[W+12>>2]=0;b=(a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&1|0)==0;L=a[A+16>>2]|0;h=+s[L+80>>3]*.5;t=+s[L+88>>3];g=b?h:t;h=b?t:h;b=0;L=W;t=0.0;c=-h;d=g;z=W+8|0;B=0.0;g=-g}else{c=+s[e>>3];g=+s[e+8>>3];h=+s[e+16>>3];d=+s[e+24>>3];Bp(b,(h+c)*.5,(d+g)*.5);a[W>>2]=a[b>>2];a[W+4>>2]=a[b+4>>2];a[W+8>>2]=a[b+8>>2];a[W+12>>2]=a[b+12>>2];D=W+8|0;b=1;L=W;t=+s[W>>3];z=D;B=+s[D>>3]}v=(h>d?h:d)*4.0;A:do{if((f|0)!=0?(Z=r[f>>0]|0,Z<<24>>24!=0):0){f=f+1|0;switch(Z<<24>>24|0){case 99:{o=1;n=0;f=0;u=0;t=0.0;w=0;break A}case 101:{if(r[f>>0]|0){o=1;n=0;f=0;u=0;t=0.0;w=1;break A}if(!l)s[L>>3]=h;else{Pp(G,l,B,v);a[W>>2]=a[G>>2];a[W+4>>2]=a[G+4>>2];a[W+8>>2]=a[G+8>>2];a[W+12>>2]=a[G+12>>2]}o=0;n=n&2;f=0;u=1;t=0.0;w=0;b=1;break A}case 115:{s[z>>3]=g;switch(r[f>>0]|0){case 0:{if(!l)s[L>>3]=t;else{Pp(m,l,-v,t);a[W>>2]=a[m>>2];a[W+4>>2]=a[m+4>>2];a[W+8>>2]=a[m+8>>2];a[W+12>>2]=a[m+12>>2]}o=0;n=n&1;f=0;u=1;t=-1.5707963267948966;w=0;b=1;break A}case 101:{if(!l)s[L>>3]=h;else{Pp(u,l,-v,v);a[W>>2]=a[u>>2];a[W+4>>2]=a[u+4>>2];a[W+8>>2]=a[u+8>>2];a[W+12>>2]=a[u+12>>2]}o=0;n=n&3;f=0;u=1;t=-.7853981633974483;w=0;b=1;break A}case 119:{if(!l)s[L>>3]=c;else{v=-v;Pp(w,l,v,v);a[W>>2]=a[w>>2];a[W+4>>2]=a[w+4>>2];a[W+8>>2]=a[w+8>>2];a[W+12>>2]=a[w+12>>2]}o=0;n=n&9;f=0;u=1;t=-2.356194490192345;w=0;b=1;break A}default:{s[z>>3]=B;o=1;n=0;f=0;u=0;t=0.0;w=1;break A}}}case 119:{if(r[f>>0]|0){o=1;n=0;f=0;u=0;t=0.0;w=1;break A}if(!l)s[L>>3]=c;else{Pp(o,l,B,-v);a[W>>2]=a[o>>2];a[W+4>>2]=a[o+4>>2];a[W+8>>2]=a[o+8>>2];a[W+12>>2]=a[o+12>>2]}o=0;n=n&8;f=0;u=1;t=3.141592653589793;w=0;b=1;break A}case 110:{s[z>>3]=d;switch(r[f>>0]|0){case 0:{if(!l)s[L>>3]=t;else{Pp(E,l,v,t);a[W>>2]=a[E>>2];a[W+4>>2]=a[E+4>>2];a[W+8>>2]=a[E+8>>2];a[W+12>>2]=a[E+12>>2]}o=0;n=n&4;f=0;u=1;t=1.5707963267948966;w=0;b=1;break A}case 101:{if(!l)s[L>>3]=h;else{Pp(C,l,v,v);a[W>>2]=a[C>>2];a[W+4>>2]=a[C+4>>2];a[W+8>>2]=a[C+8>>2];a[W+12>>2]=a[C+12>>2]}o=0;n=n&6;f=0;u=1;t=.7853981633974483;w=0;b=1;break A}case 119:{if(!l)s[L>>3]=c;else{Pp(I,l,v,-v);a[W>>2]=a[I>>2];a[W+4>>2]=a[I+4>>2];a[W+8>>2]=a[I+8>>2];a[W+12>>2]=a[I+12>>2]}o=0;n=n&12;f=0;u=1;t=2.356194490192345;w=0;b=1;break A}default:{s[z>>3]=B;o=1;n=0;f=0;u=0;t=0.0;w=1;break A}}}case 95:{o=1;f=1;u=0;t=0.0;w=0;break A}default:{o=1;n=0;f=0;u=0;t=0.0;w=1;break A}}}else{o=1;n=0;f=0;u=0;t=0.0;w=0}}while(0);D=(a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&3)*90|0;a[Q>>2]=a[W>>2];a[Q+4>>2]=a[W+4>>2];a[Q+8>>2]=a[W+8>>2];a[Q+12>>2]=a[W+12>>2];LF(y,Q,D);a[W>>2]=a[y>>2];a[W+4>>2]=a[y+4>>2];a[W+8>>2]=a[y+8>>2];a[W+12>>2]=a[y+12>>2];if(!(f<<24>>24))n=Sp(n,a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&3)|0;r[i+33>>0]=n;a[i+24>>2]=e;c=+s[L>>3];s[i>>3]=+(~~(c+(c>=0.0?.5:-.5))|0);c=+s[z>>3];s[i+8>>3]=+(~~(c+(c>=0.0?.5:-.5))|0);s[i+16>>3]=+Op(t,a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&3);c=+s[L>>3];t=+s[z>>3];if(c==0.0&t==0.0)n=-128;else{v=+N(+t,+c);g=v+4.71238898038469;n=~~((!(g>=6.283185307179586)?g:v+-1.5707963267948966)*40.74366543152521)&255}r[i+32>>0]=n;r[i+29>>0]=u;r[i+28>>0]=b;r[i+30>>0]=o;r[i+31>>0]=f;k=Y;return w|0}function jp(A,e){A=A|0;e=e|0;var i=0,r=0;i=k;k=k+16|0;r=i;a[r>>2]=Vh(A)|0;a[r+4>>2]=e;ao(0,106419,r)|0;k=i;return}function Pp(A,e,i,r){A=A|0;e=e|0;i=+i;r=+r;var f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0;o=k;k=k+128|0;n=o+112|0;t=o+48|0;c=o+16|0;b=o+32|0;u=o;w=a[e>>2]|0;l=a[(a[(Id(w)|0)+16>>2]|0)+116>>2]&3;s[c>>3]=r;s[c+8>>3]=i;f=(l|0)!=0;if(f){a[n>>2]=a[c>>2];a[n+4>>2]=a[c+4>>2];a[n+8>>2]=a[c+8>>2];a[n+12>>2]=a[c+12>>2];LF(b,n,l*90|0);a[c>>2]=a[b>>2];a[c+4>>2]=a[b+4>>2];a[c+8>>2]=a[b+8>>2];a[c+12>>2]=a[b+12>>2]}b=t+48|0;h=t+32|0;a[t>>2]=0;a[t+4>>2]=0;a[t+8>>2]=0;a[t+12>>2]=0;a[t+16>>2]=0;a[t+20>>2]=0;a[t+24>>2]=0;a[t+28>>2]=0;a[h>>2]=a[c>>2];a[h+4>>2]=a[c+4>>2];a[h+8>>2]=a[c+8>>2];a[h+12>>2]=a[c+12>>2];a[b>>2]=a[c>>2];a[b+4>>2]=a[c+4>>2];a[b+8>>2]=a[c+8>>2];a[b+12>>2]=a[c+12>>2];hN(e,a[(a[(a[(a[w+16>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0,t,1);if(f){a[n>>2]=a[t>>2];a[n+4>>2]=a[t+4>>2];a[n+8>>2]=a[t+8>>2];a[n+12>>2]=a[t+12>>2];yF(u,n,l*90|0);a[t>>2]=a[u>>2];a[t+4>>2]=a[u+4>>2];a[t+8>>2]=a[u+8>>2];a[t+12>>2]=a[u+12>>2]}a[A>>2]=a[t>>2];a[A+4>>2]=a[t+4>>2];a[A+8>>2]=a[t+8>>2];a[A+12>>2]=a[t+12>>2];k=o;return}function Sp(A,e){A=A|0;e=e|0;A:do{switch(e|0){case 3:switch(A|0){case 4:{A=2;break A}case 1:{A=8;break A}case 8:{A=1;break A}case 2:{A=4;break A}default:break A}case 2:switch(A|0){case 4:{A=1;break A}case 1:{A=4;break A}default:break A}case 1:switch(A|0){case 4:{A=2;break A}case 1:{A=8;break A}case 8:{A=4;break A}case 2:{A=1;break A}default:break A}default:{}}}while(0);return A|0}function Op(A,e){A=+A;e=e|0;switch(e|0){case 3:{if(!(A==3.141592653589793))if(!(A==2.356194490192345))if(!(A==1.5707963267948966))if(!(A==0.0))if(!(A==-.7853981633974483)){if(A==-1.5707963267948966)A=3.141592653589793}else A=2.356194490192345;else A=1.5707963267948966;else A=0.0;else A=-.7853981633974483;else A=-1.5707963267948966;break}case 2:{A=-A;break}case 1:{A=A+-1.5707963267948966;break}default:{}}return+A}function Kp(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0.0,n=0.0,l=0,t=0,c=0;r=k;k=k+32|0;c=r+16|0;l=r;A=a[A>>2]|0;t=(a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&3)*90|0;a[c>>2]=a[e>>2];a[c+4>>2]=a[e+4>>2];a[c+8>>2]=a[e+8>>2];a[c+12>>2]=a[e+12>>2];yF(l,c,t);i=+s[l>>3];n=+s[l+8>>3];A=a[A+16>>2]|0;f=+s[A+80>>3]*.5;if(!(!(n>=-f)|!(n<=f))?i>=-+s[A+88>>3]:0)A=i<=+s[A+96>>3]&1;else A=0;k=r;return A|0}function _p(A,e){A=A|0;e=e|0;var i=0,r=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0.0;u=k;k=k+32|0;b=u;l=a[A+16>>2]|0;t=l+208|0;n=a[t>>2]|0;if(!n)c=(f[l+260>>1]&1)!=0;else c=1;i=e+16|0;e=a[i>>2]|0;r=a[e+12>>2]|0;if(r|0){if(c?(a[A+152>>2]&4|0)==0:0){Si(A,n,a[l+228>>2]|0,a[l+244>>2]|0,a[l+212>>2]|0);e=a[i>>2]|0}n=a[A+36>>2]|0;o=+s[e+24>>3]+ +(a[r+8>>2]|0);w=a[r>>2]|0;s[b>>3]=+s[e+16>>3]+ +(a[r+4>>2]|0);s[b+8>>3]=o;a[b+16>>2]=w;f3(n,106450,b)|0;n=a[i>>2]|0;b=(a[n+104>>2]|0)+56|0;n=n+16|0;a[b>>2]=a[n>>2];a[b+4>>2]=a[n+4>>2];a[b+8>>2]=a[n+8>>2];a[b+12>>2]=a[n+12>>2];jF(A,10,a[(a[i>>2]|0)+104>>2]|0);if(c){if(a[A+152>>2]&4|0)Si(A,a[t>>2]|0,a[l+228>>2]|0,a[l+244>>2]|0,a[l+212>>2]|0);Oi(A)}}k=u;return}function qp(A){A=A|0;Ep(a[(a[A+16>>2]|0)+12>>2]|0);return}function $p(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var l=0,t=0,c=0,s=0,b=0;b=k;k=k+64|0;s=b+40|0;l=b;if(!(r[i>>0]|0)){l=4208;f=A+40|0;do{a[A>>2]=a[l>>2];A=A+4|0;l=l+4|0}while((A|0)<(f|0))}else{f=(f|0)==0?106356:f;t=a[(a[e+16>>2]|0)+12>>2]|0;c=aN(t,i)|0;if(!c){if(Tp(e,t+16|0,l,i,15,0)|0)jp(e,i)}else if(Tp(e,c+16|0,l,f,n[c+65>>0]|0,0)|0){a[s>>2]=Vh(e)|0;a[s+4>>2]=i;a[s+8>>2]=f;ao(0,106358,s)|0}f=A+40|0;do{a[A>>2]=a[l>>2];A=A+4|0;l=l+4|0}while((A|0)<(f|0))}k=b;return}function AN(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0,n=0,l=0,t=0.0,c=0,b=0,u=0.0;c=k;k=k+32|0;b=c+16|0;l=c;f=a[A+4>>2]|0;A=a[A>>2]|0;n=(a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&3)*90|0;a[b>>2]=a[e>>2];a[b+4>>2]=a[e+4>>2];a[b+8>>2]=a[e+8>>2];a[b+12>>2]=a[e+12>>2];yF(l,b,n);a[e>>2]=a[l>>2];a[e+4>>2]=a[l+4>>2];a[e+8>>2]=a[l+8>>2];a[e+12>>2]=a[l+12>>2];if(!f){f=a[(a[A+16>>2]|0)+12>>2]|0;n=f+16|0;A=f+24|0;l=f+32|0;f=f+40|0}else{n=f;A=f+8|0;l=f+16|0;f=f+24|0}r=+s[A>>3];i=+s[f>>3];u=+s[e>>3];if((+s[n>>3]<=u?u<=+s[l>>3]:0)?(t=+s[e+8>>3],r<=t):0)A=t<=i&1;else A=0;k=c;return A|0}function eN(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0.0,t=0.0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0.0,g=0,v=0,E=0.0;v=k;k=k+80|0;d=v+64|0;h=v+32|0;g=v;A:do{if(!(r[e+28>>0]|0))i=0;else{l=+s[e>>3];o=A+16|0;b=a[(a[o>>2]|0)+12>>2]|0;c=b+48|0;b=b+56|0;e=0;while(1){if((e|0)>=(a[c>>2]|0))break A;u=(a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&1|0)==0;w=a[(a[b>>2]|0)+(e<<2)>>2]|0;t=+(~~+s[(u?w+16|0:w+24|0)>>3]|0);if(l>=t?(B=+(~~+s[(u?w+32|0:w+40|0)>>3]|0),l<=B):0)break;e=e+1|0}if(!(a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&1)){g=a[o>>2]|0;E=+s[g+16>>3];s[f>>3]=E+t;t=+s[g+24>>3];l=+s[g+80>>3];s[f+8>>3]=t-l*.5;s[f+16>>3]=E+B}else{w=(a[(a[b>>2]|0)+(e<<2)>>2]|0)+16|0;A=(a[o>>2]|0)+16|0;a[h>>2]=a[w>>2];a[h+4>>2]=a[w+4>>2];a[h+8>>2]=a[w+8>>2];a[h+12>>2]=a[w+12>>2];a[h+16>>2]=a[w+16>>2];a[h+20>>2]=a[w+20>>2];a[h+24>>2]=a[w+24>>2];a[h+28>>2]=a[w+28>>2];a[d>>2]=a[A>>2];a[d+4>>2]=a[A+4>>2];a[d+8>>2]=a[A+8>>2];a[d+12>>2]=a[A+12>>2];WF(g,h,d);a[f>>2]=a[g>>2];a[f+4>>2]=a[g+4>>2];a[f+8>>2]=a[g+8>>2];a[f+12>>2]=a[g+12>>2];a[f+16>>2]=a[g+16>>2];a[f+20>>2]=a[g+20>>2];a[f+24>>2]=a[g+24>>2];a[f+28>>2]=a[g+28>>2];g=a[o>>2]|0;l=+s[g+80>>3];t=+s[g+24>>3]}s[f+24>>3]=l*.5+t;a[n>>2]=1}}while(0);k=v;return i|0}function iN(A,e){A=A|0;e=e|0;var i=0,n=0,l=0,t=0.0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0.0;C=k;k=k+144|0;u=C+96|0;o=C+64|0;d=C;B=C+128|0;g=a[A+16>>2]|0;v=g+208|0;i=a[v>>2]|0;if(!i)E=(f[g+260>>1]&1)!=0;else E=1;b=e+16|0;h=a[b>>2]|0;w=a[h+12>>2]|0;l=w+16|0;a[o>>2]=a[l>>2];a[o+4>>2]=a[l+4>>2];a[o+8>>2]=a[l+8>>2];a[o+12>>2]=a[l+12>>2];a[o+16>>2]=a[l+16>>2];a[o+20>>2]=a[l+20>>2];a[o+24>>2]=a[l+24>>2];a[o+28>>2]=a[l+28>>2];I=+s[h+16>>3];s[o>>3]=+s[o>>3]+I;t=+s[h+24>>3];h=o+8|0;s[h>>3]=+s[h>>3]+t;h=o+16|0;s[h>>3]=+s[h>>3]+I;l=o+24|0;s[l>>3]=+s[l>>3]+t;if(E?(a[A+152>>2]&4|0)==0:0)Si(A,i,a[g+228>>2]|0,a[g+244>>2]|0,a[g+212>>2]|0);i=Fp(A,e)|0;Jp(A,e)|0;a[B>>2]=0;if(!(i&1))n=0;else{n=Vp(e)|0;if(!((qM(n,B,u)|0)<<24>>24)){er(A,n);n=1}else{er(A,a[B>>2]|0);n=a[B+4>>2]|0;l=kR(e,a[47173]|0,0,0)|0;t=+c[u>>2];if(!n)ir(A,137314,l,t);else ir(A,n,l,t);n=i>>>1&1|2}}l=a[a[(a[b>>2]|0)+8>>2]>>2]|0;if((r[l>>0]|0)==77){b=(A1(l,106227)|0)==0;i=b?i|4:i}if(!(i&2130706444)){a[u>>2]=a[o>>2];a[u+4>>2]=a[o+4>>2];a[u+8>>2]=a[o+8>>2];a[u+12>>2]=a[o+12>>2];a[u+16>>2]=a[o+16>>2];a[u+20>>2]=a[o+20>>2];a[u+24>>2]=a[o+24>>2];a[u+28>>2]=a[o+28>>2];nr(A,u,n)}else{a[d>>2]=a[o>>2];a[d+4>>2]=a[o+4>>2];a[d+8>>2]=a[o+8>>2];a[d+12>>2]=a[o+12>>2];o=d+32|0;a[o>>2]=a[h>>2];a[o+4>>2]=a[h+4>>2];a[o+8>>2]=a[h+8>>2];a[o+12>>2]=a[h+12>>2];s[d+16>>3]=+s[o>>3];s[d+24>>3]=+s[d+8>>3];s[d+48>>3]=+s[d>>3];s[d+56>>3]=+s[d+40>>3];tp(A,d,4,i,n)}rN(A,e,w);L2(a[B>>2]|0);if(E){if(a[A+152>>2]&4|0)Si(A,a[v>>2]|0,a[g+228>>2]|0,a[g+244>>2]|0,a[g+212>>2]|0);Oi(A)}k=C;return}function rN(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0;v=k;k=k+144|0;o=v+128|0;w=v+112|0;h=v+16|0;d=v;n=v+96|0;l=v+80|0;B=v+64|0;g=v+48|0;t=i+52|0;f=a[t>>2]|0;if(!f)f=e+16|0;else{u=f+56|0;b=i+16|0;f=i+32|0;a[w>>2]=a[b>>2];a[w+4>>2]=a[b+4>>2];a[w+8>>2]=a[b+8>>2];a[w+12>>2]=a[b+12>>2];a[o>>2]=a[f>>2];a[o+4>>2]=a[f+4>>2];a[o+8>>2]=a[f+8>>2];a[o+12>>2]=a[f+12>>2];fN(n,w,o);f=e+16|0;b=(a[f>>2]|0)+16|0;a[w>>2]=a[n>>2];a[w+4>>2]=a[n+4>>2];a[w+8>>2]=a[n+8>>2];a[w+12>>2]=a[n+12>>2];a[o>>2]=a[b>>2];a[o+4>>2]=a[b+4>>2];a[o+8>>2]=a[b+8>>2];a[o+12>>2]=a[b+12>>2];Np(l,w,o);a[u>>2]=a[l>>2];a[u+4>>2]=a[l+4>>2];a[u+8>>2]=a[l+8>>2];a[u+12>>2]=a[l+12>>2];jF(A,10,a[t>>2]|0);Jp(A,e)|0}c=(a[f>>2]|0)+16|0;a[d>>2]=a[c>>2];a[d+4>>2]=a[c+4>>2];a[d+8>>2]=a[c+8>>2];a[d+12>>2]=a[c+12>>2];c=i+48|0;b=i+64|0;u=h+16|0;t=i+56|0;i=h+16|0;l=0;while(1){if((l|0)>=(a[c>>2]|0))break;if((l|0)>0){f=(a[t>>2]|0)+(l<<2)|0;n=a[f>>2]|0;if(!(r[b>>0]|0)){n=n+32|0;a[u>>2]=a[n>>2];a[u+4>>2]=a[n+4>>2];a[u+8>>2]=a[n+8>>2];a[u+12>>2]=a[n+12>>2];s[h>>3]=+s[(a[f>>2]|0)+16>>3];f=u;n=0}else{n=n+16|0;a[h>>2]=a[n>>2];a[h+4>>2]=a[n+4>>2];a[h+8>>2]=a[n+8>>2];a[h+12>>2]=a[n+12>>2];s[i>>3]=+s[h>>3];f=(a[f>>2]|0)+32|0;n=1}s[h+(n<<4)+8>>3]=+s[f+8>>3];a[w>>2]=a[h>>2];a[w+4>>2]=a[h+4>>2];a[w+8>>2]=a[h+8>>2];a[w+12>>2]=a[h+12>>2];a[o>>2]=a[d>>2];a[o+4>>2]=a[d+4>>2];a[o+8>>2]=a[d+8>>2];a[o+12>>2]=a[d+12>>2];Np(B,w,o);a[h>>2]=a[B>>2];a[h+4>>2]=a[B+4>>2];a[h+8>>2]=a[B+8>>2];a[h+12>>2]=a[B+12>>2];a[w>>2]=a[u>>2];a[w+4>>2]=a[u+4>>2];a[w+8>>2]=a[u+8>>2];a[w+12>>2]=a[u+12>>2];a[o>>2]=a[d>>2];a[o+4>>2]=a[d+4>>2];a[o+8>>2]=a[d+8>>2];a[o+12>>2]=a[d+12>>2];Np(g,w,o);a[u>>2]=a[g>>2];a[u+4>>2]=a[g+4>>2];a[u+8>>2]=a[g+8>>2];a[u+12>>2]=a[g+12>>2];tr(A,h,2)}rN(A,e,a[(a[t>>2]|0)+(l<<2)>>2]|0);l=l+1|0}k=v;return}function fN(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;r=(+s[i+8>>3]+ +s[e+8>>3])*.5;s[A>>3]=(+s[i>>3]+ +s[e>>3])*.5;s[A+8>>3]=r;return}function aN(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;i=a[A+60>>2]|0;if(!(((i|0)!=0?(r[i>>0]|0)==(r[e>>0]|0):0)?(A1(i,e)|0)==0:0))f=4;A:do{if((f|0)==4){n=A+56|0;f=a[A+48>>2]|0;i=0;while(1){if((i|0)>=(f|0)){A=0;break A}A=aN(a[(a[n>>2]|0)+(i<<2)>>2]|0,e)|0;if(!A)i=i+1|0;else break}}}while(0);return A|0}function nN(A,e){A=A|0;e=e|0;var i=0;i=e+8|0;s[i>>3]=+s[i>>3]*1.375;a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];return}function lN(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0.0,n=0.0,l=0.0,t=0.0,c=0.0,b=0.0,u=0.0;c=+s[e>>3];f=c*.5;u=+s[e+8>>3];l=u*.5;s[A>>3]=f;r=u*.40909090909090906;s[A+8>>3]=r;s[A+16>>3]=f;n=u*.4592530909090909;s[A+24>>3]=n;t=c*.275892;s[A+32>>3]=t;s[A+40>>3]=l;s[A+48>>3]=0.0;s[A+56>>3]=l;c=c*-.275892;s[A+64>>3]=c;s[A+72>>3]=l;b=-f;s[A+80>>3]=b;s[A+88>>3]=n;i=A+96|0;s[i>>3]=b;s[A+104>>3]=r;e=A+112|0;a[e>>2]=a[i>>2];a[e+4>>2]=a[i+4>>2];a[e+8>>2]=a[i+8>>2];a[e+12>>2]=a[i+12>>2];e=A+128|0;s[e>>3]=b;s[A+136>>3]=u*-.40909090909090906;i=A+144|0;a[i>>2]=a[e>>2];a[i+4>>2]=a[e+4>>2];a[i+8>>2]=a[e+8>>2];a[i+12>>2]=a[e+12>>2];s[A+160>>3]=b;n=-n;s[A+168>>3]=n;s[A+176>>3]=c;l=-l;s[A+184>>3]=l;s[A+192>>3]=0.0;s[A+200>>3]=l;s[A+208>>3]=t;s[A+216>>3]=l;s[A+224>>3]=f;s[A+232>>3]=n;i=A+240|0;s[i>>3]=f;s[A+248>>3]=-r;e=A+256|0;a[e>>2]=a[i>>2];a[e+4>>2]=a[i+4>>2];a[e+8>>2]=a[i+8>>2];a[e+12>>2]=a[i+12>>2];e=A+288|0;i=A+272|0;a[i>>2]=a[A>>2];a[i+4>>2]=a[A+4>>2];a[i+8>>2]=a[A+8>>2];a[i+12>>2]=a[A+12>>2];a[e>>2]=a[A>>2];a[e+4>>2]=a[A+4>>2];a[e+8>>2]=a[A+8>>2];a[e+12>>2]=a[A+12>>2];return}function tN(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0.0,n=0,l=0.0,t=0,c=0,b=0,u=0,w=0,o=0.0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0;I=k;k=k+144|0;v=I+112|0;g=I+96|0;E=I+80|0;B=I+64|0;C=I+32|0;h=I+16|0;d=I;n=I+48|0;do{if(A){t=a[A+4>>2]|0;c=a[A>>2]|0;w=(a[(a[(Id(c)|0)+16>>2]|0)+116>>2]&3)*90|0;a[v>>2]=a[e>>2];a[v+4>>2]=a[e+4>>2];a[v+8>>2]=a[e+8>>2];a[v+12>>2]=a[e+12>>2];yF(n,v,w);a[C>>2]=a[n>>2];a[C+4>>2]=a[n+4>>2];a[C+8>>2]=a[n+8>>2];a[C+12>>2]=a[n+12>>2];if(t|0){i=+s[C>>3];if(!(+s[t>>3]<=i)){A=0;break}if(!(i<=+s[t+16>>3])){A=0;break}i=+s[C+8>>3];if(!(+s[t+8>>3]<=i)){A=0;break}A=i<=+s[t+24>>3];break}if((c|0)==(a[47292]|0)){i=+s[23309];r=+s[23310];l=+s[23311]}else{A=c+16|0;e=a[(a[A>>2]|0)+12>>2]|0;a[47293]=e;a[47294]=a[e+44>>2];a[47295]=a[e+8>>2];if(!(a[e+40>>2]&2048)){u=(a[(a[(Id(c)|0)+16>>2]|0)+116>>2]&1|0)==0;w=a[A>>2]|0;s[(u?186496:186504)>>3]=+s[w+96>>3]+ +s[w+88>>3];s[(u?186504:186496)>>3]=+s[w+80>>3];l=+s[w+32>>3]*72.0;f=+s[w+40>>3]*72.0;f=+(~~(f+(f>=0.0?.5:-.5))|0);l=+(~~(l+(l>=0.0?.5:-.5))|0)}else{XR(v,e);l=+s[v+16>>3]-+s[v>>3];f=+s[v+24>>3]-+s[v+8>>3];w=(a[(a[(Id(c)|0)+16>>2]|0)+116>>2]&1|0)==0;s[(w?186496:186504)>>3]=l;s[(w?186504:186496)>>3]=f}i=+s[23312];if(i==0.0){s[23312]=1.0;i=1.0}r=+s[23313];if(r==0.0){s[23313]=1.0;r=1.0}i=l/i;s[23309]=i;r=f/r;s[23310]=r;l=l*.5;s[23311]=l;s[23314]=f*.5;w=U((a[(a[47293]|0)+4>>2]|0)+-1|0,a[47295]|0)|0;a[47296]=(w|0)>0?w:0;a[47292]=c}f=+s[C>>3]*i;s[C>>3]=f;w=C+8|0;i=+s[w>>3]*r;s[w>>3]=i;if(!(+W(+f)>l)?(r=+W(+i),o=+s[23314],!(r>o)):0){w=a[47295]|0;if((w|0)<3){A=+g1(f/l,i/o)<1.0;break}e=(a[47297]|0)%(w|0)|0;A=(e+1|0)%(w|0)|0;c=a[47294]|0;b=a[47296]|0;u=c+(b+e<<4)|0;a[h>>2]=a[u>>2];a[h+4>>2]=a[u+4>>2];a[h+8>>2]=a[u+8>>2];a[h+12>>2]=a[u+12>>2];u=c+(b+A<<4)|0;a[d>>2]=a[u>>2];a[d+4>>2]=a[u+4>>2];a[d+8>>2]=a[u+8>>2];a[d+12>>2]=a[u+12>>2];a[B>>2]=a[C>>2];a[B+4>>2]=a[C+4>>2];a[B+8>>2]=a[C+8>>2];a[B+12>>2]=a[C+12>>2];a[E>>2]=a[46630];a[E+4>>2]=a[46631];a[E+8>>2]=a[46632];a[E+12>>2]=a[46633];a[g>>2]=a[h>>2];a[g+4>>2]=a[h+4>>2];a[g+8>>2]=a[h+8>>2];a[g+12>>2]=a[h+12>>2];a[v>>2]=a[u>>2];a[v+4>>2]=a[u+4>>2];a[v+8>>2]=a[u+8>>2];a[v+12>>2]=a[u+12>>2];if(xp(B,E,g,v)|0){a[B>>2]=a[C>>2];a[B+4>>2]=a[C+4>>2];a[B+8>>2]=a[C+8>>2];a[B+12>>2]=a[C+12>>2];a[E>>2]=a[h>>2];a[E+4>>2]=a[h+4>>2];a[E+8>>2]=a[h+8>>2];a[E+12>>2]=a[h+12>>2];a[g>>2]=a[d>>2];a[g+4>>2]=a[d+4>>2];a[g+8>>2]=a[d+8>>2];a[g+12>>2]=a[d+12>>2];a[v>>2]=a[46630];a[v+4>>2]=a[46631];a[v+8>>2]=a[46632];a[v+12>>2]=a[46633];u=(xp(B,E,g,v)|0)!=0;if(u?(a[B>>2]=a[C>>2],a[B+4>>2]=a[C+4>>2],a[B+8>>2]=a[C+8>>2],a[B+12>>2]=a[C+12>>2],a[E>>2]=a[d>>2],a[E+4>>2]=a[d+4>>2],a[E+8>>2]=a[d+8>>2],a[E+12>>2]=a[d+12>>2],a[g>>2]=a[46630],a[g+4>>2]=a[46631],a[g+8>>2]=a[46632],a[g+12>>2]=a[46633],a[v>>2]=a[h>>2],a[v+4>>2]=a[h+4>>2],a[v+8>>2]=a[h+8>>2],a[v+12>>2]=a[h+12>>2],(xp(B,E,g,v)|0)!=0):0){A=1;break}else{t=e;e=1}while(1){if((e|0)>=(w|0)){e=31;break}if(u){n=A;A=(A+1|0)%(w|0)|0}else{n=(t+-1+w|0)%(w|0)|0;A=t}h=c+(b+n<<4)|0;d=c+(b+A<<4)|0;a[B>>2]=a[C>>2];a[B+4>>2]=a[C+4>>2];a[B+8>>2]=a[C+8>>2];a[B+12>>2]=a[C+12>>2];a[E>>2]=a[46630];a[E+4>>2]=a[46631];a[E+8>>2]=a[46632];a[E+12>>2]=a[46633];a[g>>2]=a[h>>2];a[g+4>>2]=a[h+4>>2];a[g+8>>2]=a[h+8>>2];a[g+12>>2]=a[h+12>>2];a[v>>2]=a[d>>2];a[v+4>>2]=a[d+4>>2];a[v+8>>2]=a[d+8>>2];a[v+12>>2]=a[d+12>>2];if(!(xp(B,E,g,v)|0)){e=30;break}else{t=n;e=e+1|0}}if((e|0)==30){a[47297]=n;A=0;break}else if((e|0)==31){a[47297]=t;A=1;break}}else A=0}else A=0}else{a[47292]=0;A=0}}while(0);k=I;return A&1|0}function cN(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0,n=0.0,l=0,t=0,c=0;t=k;k=k+32|0;f=t+16|0;l=t;if(A){A=a[A>>2]|0;c=(a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&3)*90|0;a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];yF(l,f,c);n=+s[l>>3];r=+s[l+8>>3];if((A|0)==(a[47300]|0))i=+s[23317];else{l=a[(a[A+16>>2]|0)+12>>2]|0;c=(a[l+4>>2]<<1)+-2|0;i=+s[(a[l+44>>2]|0)+((((c|0)>0?c:0)|1)<<4)>>3];s[23317]=i;a[47300]=A}if(+W(+n)>i|+W(+r)>i)A=0;else A=+g1(n,r)<=i&1}else{a[47300]=0;A=0}k=t;return A|0}function sN(A,e){A=A|0;e=e|0;var i=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0.0,E=0,C=0;g=k;k=k+16|0;t=g;d=a[A+16>>2]|0;B=d+208|0;i=a[B>>2]|0;if((i|0)==0?(f[d+260>>1]&1)==0:0)h=0;else if(!(a[A+152>>2]&4)){Si(A,i,a[d+228>>2]|0,a[d+244>>2]|0,a[d+212>>2]|0);h=1}else h=1;u=e+16|0;c=a[(a[u>>2]|0)+12>>2]|0;w=a[c+44>>2]|0;o=a[c+8>>2]|0;c=a[c+4>>2]|0;if((a[47298]|0)<(o|0)){i=o+2|0;a[47298]=i;l=a[47299]|0;if(!l)i=$F(i<<4)|0;else i=eV(l,i<<4)|0;a[47299]=i}Xp(e,t)|0;if(!(a[t>>2]&32))rr(A,22020);else rr(A,22016);i=a[47172]|0;if(i|0)ur(A,+oR(e,i,1.0,0.0));i=n[(a[u>>2]|0)+117>>0]|0;do{if(!(i&1)){if(i&2|0){$i(A,BR(e,0,106256)|0);i=BR(e,0,106264)|0;er(A,i);break}if(i&8|0){$i(A,BR(e,0,106272)|0);i=BR(e,0,106280)|0;er(A,i);break}if(!(i&4)){i=Rp(e,137314)|0;er(A,i);Jp(A,e)|0;break}else{$i(A,BR(e,0,106288)|0);i=BR(e,0,106296)|0;er(A,i);break}}else{$i(A,BR(e,0,106240)|0);i=BR(e,0,106248)|0;er(A,i)}}while(0);if(!c)if(!(r[i>>0]|0))l=1;else{$i(A,i);l=1}else l=c;t=1;e=0;while(1){if((e|0)>=(l|0))break;c=U(e,o)|0;b=a[47299]|0;i=0;while(1){if((i|0)>=(o|0))break;C=i+c|0;v=+s[w+(C<<4)+8>>3];E=a[u>>2]|0;s[b+(i<<4)>>3]=+s[E+16>>3]+ +s[w+(C<<4)>>3];s[b+(i<<4)+8>>3]=+s[E+24>>3]+v;i=i+1|0}fr(A,b,o,t);t=0;e=e+1|0}if(h){if(a[A+152>>2]&4|0)Si(A,a[B>>2]|0,a[d+228>>2]|0,a[d+244>>2]|0,a[d+212>>2]|0);Oi(A)}k=g;return}function bN(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,l=0;f=k;k=k+48|0;l=f;i=uN(e,i,r)|0;a[l+36>>2]=a[r+36>>2];Tp(e,a[r+24>>2]|0,l,i,n[r+33>>0]|0,0)|0;e=l;i=A+40|0;do{a[A>>2]=a[e>>2];A=A+4|0;e=e+4|0}while((A|0)<(i|0));k=f;return}function uN(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0.0,t=0.0,c=0,b=0.0,u=0.0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0.0,Q=0.0,L=0;G=k;k=k+32|0;Z=G;n=G+24|0;c=G+16|0;I=a[(a[(a[(Id(A)|0)+60>>2]|0)+16>>2]|0)+116>>2]&3;f=A+16|0;C=(a[f>>2]|0)+16|0;a[Z>>2]=a[C>>2];a[Z+4>>2]=a[C+4>>2];a[Z+8>>2]=a[C+8>>2];a[Z+12>>2]=a[C+12>>2];wN(n,Z,I);C=(a[e+16>>2]|0)+16|0;a[Z>>2]=a[C>>2];a[Z+4>>2]=a[C+4>>2];a[Z+8>>2]=a[C+8>>2];a[Z+12>>2]=a[C+12>>2];wN(c,Z,I);I=r[i+33>>0]|0;Z=I&255;A:do{switch(I<<24>>24){case 0:case 15:{e=0;break}default:{e=a[i+24>>2]|0;if(!e){I=(a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&1|0)==0;C=a[f>>2]|0;Q=+s[C+80>>3]*.5;m=-Q;b=+s[C+88>>3];t=-b;u=I?t:m;l=I?b:Q;b=I?Q:b;t=I?m:t}else{u=+s[e>>3];l=+s[e+16>>3];b=+s[e+24>>3];t=+s[e+8>>3]}I=a[n>>2]|0;E=a[n+4>>2]|0;C=a[c>>2]|0;B=a[c+4>>2]|0;g=~~t;v=~~((l+u)*.5);d=~~l;h=~~((b+t)*.5);o=~~b;w=~~u;n=0;c=0;e=0;i=0;A=0;while(1){if((c|0)==4)break A;if(1< >2]|0;else f=n}else f=n;n=f;c=c+1|0}}}}while(0);k=G;return e|0}function wN(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0;switch(i|0){case 0:{f=+s[e>>3];r=+s[e+8>>3];break}case 2:{f=+s[e>>3];r=-+s[e+8>>3];break}case 1:{f=-+s[e+8>>3];r=+s[e>>3];break}case 3:{f=+s[e+8>>3];r=+s[e>>3];break}default:{f=0.0;r=0.0}}a[A>>2]=~~(f+(f>=0.0?.5:-.5));a[A+4>>2]=~~(r+(r>=0.0?.5:-.5));return}function kN(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;t=k;k=k+80|0;f=t+40|0;l=t;n=A+16|0;i=a[n>>2]|0;e=i+16|0;if(r[i+47>>0]|0){i=a[A>>2]&3;bN(f,a[((i|0)==3?A:A+48|0)+40>>2]|0,a[((i|0)==2?A:A+-48|0)+40>>2]|0,e);i=f;f=e+40|0;do{a[e>>2]=a[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(f|0));i=a[n>>2]|0}e=i+56|0;if(r[i+87>>0]|0){i=a[A>>2]&3;bN(l,a[((i|0)==2?A:A+-48|0)+40>>2]|0,a[((i|0)==3?A:A+48|0)+40>>2]|0,e);i=l;f=e+40|0;do{a[e>>2]=a[i>>2];e=e+4|0;i=i+4|0}while((e|0)<(f|0))}k=t;return}function oN(){var A=0,e=0,i=0;A=k;k=k+32|0;e=A+16|0;i=A;a[i>>2]=0;a[i+4>>2]=0;a[i+8>>2]=0;a[i+12>>2]=0;a[e>>2]=a[i>>2];a[e+4>>2]=a[i+4>>2];a[e+8>>2]=a[i+8>>2];a[e+12>>2]=a[i+12>>2];tN(0,e)|0;a[e>>2]=a[i>>2];a[e+4>>2]=a[i+4>>2];a[e+8>>2]=a[i+8>>2];a[e+12>>2]=a[i+12>>2];cN(0,e)|0;a[e>>2]=a[i>>2];a[e+4>>2]=a[i+4>>2];a[e+8>>2]=a[i+8>>2];a[e+12>>2]=a[i+12>>2];Yp(0,e)|0;k=A;return}function hN(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,n=0.0,l=0.0,t=0,c=0,b=0,u=0,w=0,o=0.0,h=0,d=0.0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0;G=k;k=k+192|0;B=G+176|0;I=G+112|0;Z=G+48|0;g=G+32|0;v=G+24|0;E=G+16|0;C=G;if(!(r<<24>>24)){c=i+48|0;a[g>>2]=a[c>>2];a[g+4>>2]=a[c+4>>2];a[g+8>>2]=a[c+8>>2];a[g+12>>2]=a[c+12>>2];c=v;b=E;u=I;w=0}else{a[g>>2]=a[i>>2];a[g+4>>2]=a[i+4>>2];a[g+8>>2]=a[i+8>>2];a[g+12>>2]=a[i+12>>2];c=E;b=v;u=0;w=I}s[v>>3]=0.0;s[E>>3]=1.0;h=g+8|0;f=0.0;n=1.0;t=0;o=+s[g>>3];while(1){d=+s[h>>3];f=(f+n)*.5;QR(C,i,3,f,u,w);a[g>>2]=a[C>>2];a[g+4>>2]=a[C+4>>2];a[g+8>>2]=a[C+8>>2];a[g+12>>2]=a[C+12>>2];a[B>>2]=a[C>>2];a[B+4>>2]=a[C+4>>2];a[B+8>>2]=a[C+8>>2];a[B+12>>2]=a[C+12>>2];A:do{if(!((Q5[e&127](A,B)|0)<<24>>24)){r=0;while(1){if((r|0)==4){r=c;t=1;break A}t=Z+(r<<4)|0;m=I+(r<<4)|0;a[t>>2]=a[m>>2];a[t+4>>2]=a[m+4>>2];a[t+8>>2]=a[m+8>>2];a[t+12>>2]=a[m+12>>2];r=r+1|0}}else r=b}while(0);s[r>>3]=f;l=+s[g>>3];o=o-l;if(!((o>=0.0?o:-o)>.5)?(d=d-+s[h>>3],!((d>=0.0?d:-d)>.5)):0)break;f=+s[v>>3];n=+s[E>>3];o=l}A:do{if(!(t<<24>>24)){r=0;while(1){if((r|0)==4)break A;m=i+(r<<4)|0;Z=I+(r<<4)|0;a[m>>2]=a[Z>>2];a[m+4>>2]=a[Z+4>>2];a[m+8>>2]=a[Z+8>>2];a[m+12>>2]=a[Z+12>>2];r=r+1|0}}else{r=0;while(1){if((r|0)==4)break A;m=i+(r<<4)|0;I=Z+(r<<4)|0;a[m>>2]=a[I>>2];a[m+4>>2]=a[I+4>>2];a[m+8>>2]=a[I+8>>2];a[m+12>>2]=a[I+12>>2];r=r+1|0}}}while(0);k=G;return}function dN(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0.0;b=k;k=k+48|0;i=b+16|0;r=b;f=b+32|0;n=A+16|0;l=a[n>>2]|0;t=a[l+8>>2]|0;if(t|0?(c=t+4|0,a[(a[c>>2]|0)+12>>2]|0):0){a[f>>2]=A;a[f+4>>2]=0;u=+s[l+96>>3];s[r>>3]=+s[e>>3]-+s[l+16>>3];s[r+8>>3]=+s[e+8>>3]-+s[l+24>>3];c=a[(a[c>>2]|0)+12>>2]|0;a[i>>2]=a[r>>2];a[i+4>>2]=a[r+4>>2];a[i+8>>2]=a[r+8>>2];a[i+12>>2]=a[r+12>>2];c=Q5[c&127](f,i)|0;s[(a[n>>2]|0)+96>>3]=u;BN(f,A,e,c)}k=b;return}function BN(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0.0,b=0,u=0;u=k;k=k+64|0;b=u;t=e+16|0;n=a[t>>2]|0;c=+s[n+96>>3];l=n+16|0;f=n+24|0;e=0;while(1){if((e|0)==4)break;s[b+(e<<4)>>3]=+s[i+(e<<4)>>3]-+s[l>>3];s[b+(e<<4)+8>>3]=+s[i+(e<<4)+8>>3]-+s[f>>3];e=e+1|0}hN(A,a[(a[(a[n+8>>2]|0)+4>>2]|0)+12>>2]|0,b,r);e=0;while(1){if((e|0)==4)break;r=a[t>>2]|0;s[i+(e<<4)>>3]=+s[r+16>>3]+ +s[b+(e<<4)>>3];s[i+(e<<4)+8>>3]=+s[r+24>>3]+ +s[b+(e<<4)+8>>3];e=e+1|0}s[(a[t>>2]|0)+96>>3]=c;k=u;return}function gN(A,e){A=A|0;e=e|0;var i=0,f=0;while(1){f=A+16|0;A=a[f>>2]|0;if(!(r[A+112>>0]|0))break;A=a[A+116>>2]|0}A=a[A+8>>2]|0;if(!A){A=qF(40)|0;a[(a[f>>2]|0)+8>>2]=A}i=a[A>>2]|0;if(!i)A=$F(((a[A+4>>2]|0)*48|0)+48|0)|0;else A=eV(i,((a[A+4>>2]|0)*48|0)+48|0)|0;f=a[(a[f>>2]|0)+8>>2]|0;a[f>>2]=A;f=f+4|0;i=a[f>>2]|0;a[f>>2]=i+1;f=A+(i*48|0)|0;a[f>>2]=qF(e<<4)|0;a[A+(i*48|0)+4>>2]=e;A=A+(i*48|0)+8|0;i=A+40|0;do{a[A>>2]=0;A=A+4|0}while((A|0)<(i|0));return f|0}function vN(A,e,i,f,l){A=A|0;e=e|0;i=i|0;f=f|0;l=l|0;var t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0.0,z=0.0;y=k;k=k+96|0;m=y+16|0;v=y;I=y+92|0;Z=y+88|0;E=y+80|0;b=a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0;G=Id(b)|0;Q=gN(A,f)|0;u=A;while(1){w=a[u+16>>2]|0;if(!(r[w+112>>0]|0))break;u=a[w+116>>2]|0}if((r[l+8>>0]|0)==0?(t=a[b+16>>2]|0,c=a[e+16>>2]|0,(a[t+232>>2]|0)==(a[c+232>>2]|0)):0){o=(a[t+236>>2]|0)>(a[c+236>>2]|0);C=o?b:e;b=o?e:b}else C=e;if((b|0)==(a[((a[u>>2]&3|0)==3?u:u+48|0)+40>>2]|0)){t=w+80|0;c=w+40|0;o=n[w+86>>0]|0;e=n[w+46>>0]|0}else{t=w+40|0;c=w+80|0;o=n[w+46>>0]|0;e=n[w+86>>0]|0}w=a[t>>2]|0;t=a[c>>2]|0;if(((e|0)!=0?(d=b+16|0,h=a[(a[d>>2]|0)+8>>2]|0,(h|0)!=0):0)?(a[(a[h+4>>2]|0)+12>>2]|0)!=0:0){a[E>>2]=b;a[E+4>>2]=t;t=f+-4|0;e=v+8|0;c=0;while(1){if((c|0)>=(t|0))break;u=c+3|0;h=a[d>>2]|0;s[v>>3]=+s[i+(u<<4)>>3]-+s[h+16>>3];s[e>>3]=+s[i+(u<<4)+8>>3]-+s[h+24>>3];h=a[(a[(a[h+8>>2]|0)+4>>2]|0)+12>>2]|0;a[m>>2]=a[v>>2];a[m+4>>2]=a[v+4>>2];a[m+8>>2]=a[v+8>>2];a[m+12>>2]=a[v+12>>2];if(!((Q5[h&127](E,m)|0)<<24>>24))break;else c=u}a[I>>2]=c;BN(E,b,i+(c<<4)|0,1)}else{a[I>>2]=0;c=0}if(((o|0)!=0?(g=C+16|0,B=a[(a[g>>2]|0)+8>>2]|0,(B|0)!=0):0)?(a[(a[B+4>>2]|0)+12>>2]|0)!=0:0){a[E>>2]=C;a[E+4>>2]=w;b=f+-4|0;e=v+8|0;t=b;while(1){if((t|0)<=0)break;f=a[g>>2]|0;s[v>>3]=+s[i+(t<<4)>>3]-+s[f+16>>3];s[e>>3]=+s[i+(t<<4)+8>>3]-+s[f+24>>3];f=a[(a[(a[f+8>>2]|0)+4>>2]|0)+12>>2]|0;a[m>>2]=a[v>>2];a[m+4>>2]=a[v+4>>2];a[m+8>>2]=a[v+8>>2];a[m+12>>2]=a[v+12>>2];if(!((Q5[f&127](E,m)|0)<<24>>24))break;t=t+-3|0}a[Z>>2]=t;BN(E,C,i+(t<<4)|0,0)}else{b=f+-4|0;a[Z>>2]=b;t=b}while(1){if((c|0)>=(b|0))break;e=c+3|0;W=+s[i+(c<<4)>>3]-+s[i+(e<<4)>>3];z=+s[i+(c<<4)+8>>3]-+s[i+(e<<4)+8>>3];if(z*z+W*W<1.0e-06)c=e;else break}a[I>>2]=c;while(1){if((t|0)<=0)break;E=t+3|0;z=+s[i+(t<<4)>>3]-+s[i+(E<<4)>>3];W=+s[i+(t<<4)+8>>3]-+s[i+(E<<4)+8>>3];if(!(W*W+z*z<1.0e-06))break;t=t+-3|0}a[Z>>2]=t;EN(A,C,i,I,Z,Q,l);d=a[I>>2]|0;u=a[Z>>2]|0;b=u+4|0;u=u+3|0;w=m+16|0;o=m+32|0;h=m+48|0;c=G+16|0;t=d;while(1){if((t|0)>=(b|0))break;G=(a[Q>>2]|0)+(t-d<<4)|0;e=i+(t<<4)|0;a[G>>2]=a[e>>2];a[G+4>>2]=a[e+4>>2];a[G+8>>2]=a[e+8>>2];a[G+12>>2]=a[e+12>>2];a[m>>2]=a[e>>2];a[m+4>>2]=a[e+4>>2];a[m+8>>2]=a[e+8>>2];a[m+12>>2]=a[e+12>>2];e=t+1|0;if((t|0)>=(u|0)){L=38;break}Z=(a[Q>>2]|0)+(e-d<<4)|0;G=i+(e<<4)|0;a[Z>>2]=a[G>>2];a[Z+4>>2]=a[G+4>>2];a[Z+8>>2]=a[G+8>>2];a[Z+12>>2]=a[G+12>>2];a[w>>2]=a[G>>2];a[w+4>>2]=a[G+4>>2];a[w+8>>2]=a[G+8>>2];a[w+12>>2]=a[G+12>>2];G=t+2|0;Z=(a[Q>>2]|0)+(G-d<<4)|0;G=i+(G<<4)|0;a[Z>>2]=a[G>>2];a[Z+4>>2]=a[G+4>>2];a[Z+8>>2]=a[G+8>>2];a[Z+12>>2]=a[G+12>>2];a[o>>2]=a[G>>2];a[o+4>>2]=a[G+4>>2];a[o+8>>2]=a[G+8>>2];a[o+12>>2]=a[G+12>>2];G=t+3|0;Z=i+(G<<4)|0;a[h>>2]=a[Z>>2];a[h+4>>2]=a[Z+4>>2];a[h+8>>2]=a[Z+8>>2];a[h+12>>2]=a[Z+12>>2];bI((a[c>>2]|0)+16|0,m);t=G}a[Q+4>>2]=b-d;k=y;return}function EN(A,e,i,f,n,l,t){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;t=t|0;var c=0,s=0,b=0,u=0,w=0,o=0;o=k;k=k+16|0;b=o+4|0;u=o;w=A;while(1){c=a[(a[w+16>>2]|0)+116>>2]|0;if(!c)break;else w=c}if(!(r[t+8>>0]|0))c=(m5[a[t>>2]&63](w)|0)&255;else c=0;DC(w,b,u);s=t+4|0;if((m5[a[s>>2]&63](e)|0)<<24>>24)a[u>>2]=0;if((m5[a[s>>2]&63](a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)|0)<<24>>24)a[b>>2]=0;if(c|0){e=a[b>>2]|0;a[b>>2]=a[u>>2];a[u>>2]=e}if(!(r[t+9>>0]|0)){c=a[b>>2]|0;if(c|0)a[f>>2]=SC(w,i,a[f>>2]|0,a[n>>2]|0,l,c)|0;c=a[u>>2]|0;if(c|0)a[n>>2]=jC(w,i,a[f>>2]|0,a[n>>2]|0,l,c)|0}else{s=a[u>>2]|0;c=a[b>>2]|0;if(c|s|0)OC(w,i,a[f>>2]|0,a[n>>2]|0,l,c,s)}k=o;return}function CN(A,e){A=A|0;e=e|0;var i=0,r=0;if(+s[e>>3]<+s[e+16>>3]?+s[e+8>>3]<+s[e+24>>3]:0){i=a[A+84>>2]|0;r=A+80|0;A=a[r>>2]|0;a[r>>2]=A+1;A=i+(A<<5)|0;a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];a[A+16>>2]=a[e+16>>2];a[A+20>>2]=a[e+20>>2];a[A+24>>2]=a[e+24>>2];a[A+28>>2]=a[e+28>>2]}return}function IN(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0.0,b=0.0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0.0,G=0.0;I=k;k=k+112|0;v=I+72|0;w=I+56|0;u=I+16|0;h=I;t=a[e>>2]&3;o=e+48|0;C=a[((t|0)==3?e:o)+40>>2]|0;g=e+16|0;d=a[g>>2]|0;l=d+16|0;if(r[d+47>>0]|0){bN(u,C,a[((t|0)==2?e:e+-48|0)+40>>2]|0,l);t=u;u=l+40|0;do{a[l>>2]=a[t>>2];l=l+4|0;t=t+4|0}while((l|0)<(u|0))}d=C+16|0;t=a[d>>2]|0;l=a[t+8>>2]|0;if(!l)u=0;else u=a[(a[l+4>>2]|0)+16>>2]|0;l=t+16|0;t=(a[g>>2]|0)+16|0;a[w>>2]=a[l>>2];a[w+4>>2]=a[l+4>>2];a[w+8>>2]=a[l+8>>2];a[w+12>>2]=a[l+12>>2];a[v>>2]=a[t>>2];a[v+4>>2]=a[t+4>>2];a[v+8>>2]=a[t+8>>2];a[v+12>>2]=a[t+12>>2];ZN(h,w,v);a[A>>2]=a[h>>2];a[A+4>>2]=a[h+4>>2];a[A+8>>2]=a[h+8>>2];a[A+12>>2]=a[h+12>>2];if(!(n<<24>>24)){l=a[g>>2]|0;if(!(r[l+45>>0]|0))l=0;else{c=+s[l+32>>3];E=9}}else{c=+GN(a[((a[e>>2]&3|0)==3?e:o)+40>>2]|0);E=9}if((E|0)==9){s[A+16>>3]=c;l=1}r[A+29>>0]=l;a[A+80>>2]=0;a[A+88>>2]=e;h=f+32|0;a[h>>2]=a[A>>2];a[h+4>>2]=a[A+4>>2];a[h+8>>2]=a[A+8>>2];a[h+12>>2]=a[A+12>>2];switch(i|0){case 1:{t=a[d>>2]|0;if((r[t+156>>0]|0)==0?(h=r[(a[g>>2]|0)+49>>0]|0,B=h&255,h<<24>>24!=0):0){a[v>>2]=a[f>>2];a[v+4>>2]=a[f+4>>2];a[v+8>>2]=a[f+8>>2];a[v+12>>2]=a[f+12>>2];a[v+16>>2]=a[f+16>>2];a[v+20>>2]=a[f+20>>2];a[v+24>>2]=a[f+24>>2];a[v+28>>2]=a[f+28>>2];do{if(!(B&4)){if(B&1|0){a[f+48>>2]=1;l=v+24|0;s[l>>3]=+s[(+s[l>>3]>+s[A+8>>3]?v+16|0:A)+8>>3];l=f+56|0;a[l>>2]=a[v>>2];a[l+4>>2]=a[v+4>>2];a[l+8>>2]=a[v+8>>2];a[l+12>>2]=a[v+12>>2];a[l+16>>2]=a[v+16>>2];a[l+20>>2]=a[v+20>>2];a[l+24>>2]=a[v+24>>2];a[l+28>>2]=a[v+28>>2];l=1;break}l=f+48|0;if(!(B&8)){a[l>>2]=2;s[v>>3]=+s[A>>3];s[v+8>>3]=+s[t+24>>3]-+s[t+80>>3]*.5;s[v+24>>3]=+s[A+8>>3];l=f+56|0;a[l>>2]=a[v>>2];a[l+4>>2]=a[v+4>>2];a[l+8>>2]=a[v+8>>2];a[l+12>>2]=a[v+12>>2];a[l+16>>2]=a[v+16>>2];a[l+20>>2]=a[v+20>>2];a[l+24>>2]=a[v+24>>2];a[l+28>>2]=a[v+28>>2];l=1;break}else{a[l>>2]=8;s[v+16>>3]=+s[A>>3];s[v+8>>3]=+s[t+24>>3]-+s[t+80>>3]*.5;s[v+24>>3]=+s[A+8>>3];l=f+56|0;a[l>>2]=a[v>>2];a[l+4>>2]=a[v+4>>2];a[l+8>>2]=a[v+8>>2];a[l+12>>2]=a[v+12>>2];a[l+16>>2]=a[v+16>>2];a[l+20>>2]=a[v+20>>2];a[l+24>>2]=a[v+24>>2];a[l+28>>2]=a[v+28>>2];l=1;break}}else{a[f+48>>2]=4;c=+s[v>>3];if(+s[A>>3]<+s[t+16>>3]){G=c+-1.0;Z=+s[A+8>>3];A=v+16|0;c=+s[A>>3];b=+s[t+80>>3]*.5+ +s[t+24>>3];b=b+ +((a[(a[(Id(C)|0)+16>>2]|0)+252>>2]|0)/2|0|0);l=a[d>>2]|0;s[A>>3]=+s[l+16>>3]-+s[l+88>>3];s[v+24>>3]=Z;s[v+8>>3]=+s[l+24>>3]-+s[l+80>>3]*.5;s[v>>3]=G;s[f+56>>3]=G;s[f+64>>3]=Z;s[f+72>>3]=c;s[f+80>>3]=b;l=f+88|0;a[l>>2]=a[v>>2];a[l+4>>2]=a[v+4>>2];a[l+8>>2]=a[v+8>>2];a[l+12>>2]=a[v+12>>2];a[l+16>>2]=a[v+16>>2];a[l+20>>2]=a[v+20>>2];a[l+24>>2]=a[v+24>>2];a[l+28>>2]=a[v+28>>2];l=2;break}else{b=+s[A+8>>3];l=v+16|0;Z=+s[l>>3]+1.0;G=+s[t+80>>3]*.5+ +s[t+24>>3];G=G+ +((a[(a[(Id(C)|0)+16>>2]|0)+252>>2]|0)/2|0|0);A=a[d>>2]|0;s[v>>3]=+s[A+96>>3]+ +s[A+16>>3];s[v+24>>3]=b;s[v+8>>3]=+s[A+24>>3]-+s[A+80>>3]*.5;s[l>>3]=Z;s[f+56>>3]=c;s[f+64>>3]=b;s[f+72>>3]=Z;s[f+80>>3]=G;l=f+88|0;a[l>>2]=a[v>>2];a[l+4>>2]=a[v+4>>2];a[l+8>>2]=a[v+8>>2];a[l+12>>2]=a[v+12>>2];a[l+16>>2]=a[v+16>>2];a[l+20>>2]=a[v+20>>2];a[l+24>>2]=a[v+24>>2];a[l+28>>2]=a[v+28>>2];l=2;break}}}while(0);a[f+52>>2]=l;while(1){l=a[e+16>>2]|0;if(!(r[l+112>>0]|0))break;e=a[l+116>>2]|0}r[((C|0)==(a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)?l+16|0:l+56|0)+30>>0]=0}else{t=1;E=47}break}case 2:{B=r[(a[g>>2]|0)+49>>0]|0;t=B&255;if(!(B<<24>>24))E=46;else{a[v>>2]=a[f>>2];a[v+4>>2]=a[f+4>>2];a[v+8>>2]=a[f+8>>2];a[v+12>>2]=a[f+12>>2];a[v+16>>2]=a[f+16>>2];a[v+20>>2]=a[f+20>>2];a[v+24>>2]=a[f+24>>2];a[v+28>>2]=a[f+28>>2];do{if(!(t&4)){if(t&1|0)if((a[f+48>>2]|0)==4){l=a[d>>2]|0;G=+s[l+24>>3]-+s[l+80>>3]*.5;l=v+16|0;Z=+s[l>>3]+1.0;c=+s[A>>3];b=G-+((a[(a[(Id(C)|0)+16>>2]|0)+252>>2]|0)/2|0|0);A=a[d>>2]|0;s[v>>3]=+s[A+96>>3]+ +s[A+16>>3];s[v+8>>3]=G;s[v+24>>3]=+s[A+80>>3]*.5+ +s[A+24>>3];s[l>>3]=Z;s[f+56>>3]=c;s[f+64>>3]=b;s[f+72>>3]=Z;s[f+80>>3]=G;l=f+88|0;a[l>>2]=a[v>>2];a[l+4>>2]=a[v+4>>2];a[l+8>>2]=a[v+8>>2];a[l+12>>2]=a[v+12>>2];a[l+16>>2]=a[v+16>>2];a[l+20>>2]=a[v+20>>2];a[l+24>>2]=a[v+24>>2];a[l+28>>2]=a[v+28>>2];l=2;break}else{l=v+24|0;s[l>>3]=+s[(+s[l>>3]>+s[A+8>>3]?v+16|0:A)+8>>3];l=f+56|0;a[l>>2]=a[v>>2];a[l+4>>2]=a[v+4>>2];a[l+8>>2]=a[v+8>>2];a[l+12>>2]=a[v+12>>2];a[l+16>>2]=a[v+16>>2];a[l+20>>2]=a[v+20>>2];a[l+24>>2]=a[v+24>>2];a[l+28>>2]=a[v+28>>2];l=1;break}c=+s[A>>3];if(!(t&8)){s[v>>3]=c;i=a[d>>2]|0;c=+s[i+24>>3];b=+s[i+80>>3]*.5;if((a[f+48>>2]|0)==4){s[v+24>>3]=b+c;c=+s[A+8>>3];l=v}else{s[v+8>>3]=c-b;c=+s[A+8>>3]+1.0;l=v+16|0}s[l+8>>3]=c;l=f+56|0;a[l>>2]=a[v>>2];a[l+4>>2]=a[v+4>>2];a[l+8>>2]=a[v+8>>2];a[l+12>>2]=a[v+12>>2];a[l+16>>2]=a[v+16>>2];a[l+20>>2]=a[v+20>>2];a[l+24>>2]=a[v+24>>2];a[l+28>>2]=a[v+28>>2];l=1;break}else{l=v+16|0;s[l>>3]=c+1.0;i=a[d>>2]|0;c=+s[i+24>>3];b=+s[i+80>>3]*.5;if((a[f+48>>2]|0)==4){s[v+24>>3]=b+c;c=+s[A+8>>3]+-1.0;l=v}else{s[v+8>>3]=c-b;c=+s[A+8>>3]+1.0}s[l+8>>3]=c;l=f+56|0;a[l>>2]=a[v>>2];a[l+4>>2]=a[v+4>>2];a[l+8>>2]=a[v+8>>2];a[l+12>>2]=a[v+12>>2];a[l+16>>2]=a[v+16>>2];a[l+20>>2]=a[v+20>>2];a[l+24>>2]=a[v+24>>2];a[l+28>>2]=a[v+28>>2];l=1;break}}else{l=v+8|0;s[l>>3]=+s[(+s[l>>3]<+s[A+8>>3]?v:A)+8>>3];l=f+56|0;a[l>>2]=a[v>>2];a[l+4>>2]=a[v+4>>2];a[l+8>>2]=a[v+8>>2];a[l+12>>2]=a[v+12>>2];a[l+16>>2]=a[v+16>>2];a[l+20>>2]=a[v+20>>2];a[l+24>>2]=a[v+24>>2];a[l+28>>2]=a[v+28>>2];l=1}}while(0);a[f+52>>2]=l;while(1){l=a[e+16>>2]|0;if(!(r[l+112>>0]|0))break;e=a[l+116>>2]|0}r[((C|0)==(a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)?l+16|0:l+56|0)+30>>0]=0;a[f+48>>2]=t}break}default:E=46}if((E|0)==46){t=a[f+48>>2]|0;E=47}A:do{if((E|0)==47){if(u){e=f+56|0;l=f+52|0;t=z5[u&127](C,(a[g>>2]|0)+16|0,t,e,l)|0;if(t){a[f+48>>2]=t;break}}else{l=f+52|0;e=f+56|0}a[e>>2]=a[f>>2];a[e+4>>2]=a[f+4>>2];a[e+8>>2]=a[f+8>>2];a[e+12>>2]=a[f+12>>2];a[e+16>>2]=a[f+16>>2];a[e+20>>2]=a[f+20>>2];a[e+24>>2]=a[f+24>>2];a[e+28>>2]=a[f+28>>2];a[l>>2]=1;switch(i|0){case 8:{gA(138394,106514,569,106524);break}case 2:{s[((a[f+48>>2]|0)==4?f+56|0:f+72|0)+8>>3]=+s[A+8>>3];break A}case 1:{s[f+80>>3]=+s[A+8>>3];a[f+48>>2]=1;break A}default:break A}}}while(0);k=I;return}function ZN(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;r=+s[i+8>>3]+ +s[e+8>>3];s[A>>3]=+s[i>>3]+ +s[e>>3];s[A+8>>3]=r;return}function GN(A){A=A|0;var e=0.0,i=0,r=0,f=0.0,n=0,l=0,t=0,c=0.0,b=0.0;l=a[A+16>>2]|0;t=a[l+172>>2]|0;f=0.0;n=0;while(1){A=a[t+(n<<2)>>2]|0;if(!A)break;f=+s[(a[(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+16>>3]+f;n=n+1|0}r=a[l+180>>2]|0;e=0.0;A=0;while(1){i=a[r+(A<<2)>>2]|0;if(!i)break;e=+s[(a[(a[((a[i>>2]&3|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+16>>3]+e;A=A+1|0}c=+s[l+16>>3];b=+s[l+24>>3];t=a[t>>2]|0;f=+N(+(b-+s[(a[(a[((a[t>>2]&3|0)==3?t:t+48|0)+40>>2]|0)+16>>2]|0)+24>>3]),+(c-f/+(n|0)));t=a[r>>2]|0;return+((+N(+(+s[(a[(a[((a[t>>2]&3|0)==2?t:t+-48|0)+40>>2]|0)+16>>2]|0)+24>>3]-b),+(e/+(A|0)-c))+f)*.5)}function mN(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0.0,b=0.0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0.0,Q=0.0;G=k;k=k+112|0;C=G+72|0;o=G+56|0;u=G+16|0;g=G;t=a[e>>2]&3;d=e+-48|0;Z=a[((t|0)==2?e:d)+40>>2]|0;v=e+16|0;B=a[v>>2]|0;l=B+56|0;if(r[B+87>>0]|0){bN(u,Z,a[((t|0)==3?e:e+48|0)+40>>2]|0,l);t=u;u=l+40|0;do{a[l>>2]=a[t>>2];l=l+4|0;t=t+4|0}while((l|0)<(u|0))}B=Z+16|0;t=a[B>>2]|0;l=a[t+8>>2]|0;if(!l)w=0;else w=a[(a[l+4>>2]|0)+16>>2]|0;u=A+40|0;l=t+16|0;t=(a[v>>2]|0)+56|0;a[o>>2]=a[l>>2];a[o+4>>2]=a[l+4>>2];a[o+8>>2]=a[l+8>>2];a[o+12>>2]=a[l+12>>2];a[C>>2]=a[t>>2];a[C+4>>2]=a[t+4>>2];a[C+8>>2]=a[t+8>>2];a[C+12>>2]=a[t+12>>2];ZN(g,o,C);a[u>>2]=a[g>>2];a[u+4>>2]=a[g+4>>2];a[u+8>>2]=a[g+8>>2];a[u+12>>2]=a[g+12>>2];if(!(n<<24>>24)){l=a[v>>2]|0;if(!(r[l+85>>0]|0))h=0;else{s[A+56>>3]=+s[l+72>>3];h=1}}else{b=+GN(a[((a[e>>2]&3|0)==2?e:d)+40>>2]|0)+3.141592653589793;s[A+56>>3]=b;if(b<6.283185307179586)h=1;else gA(106534,106514,606,106558)}r[A+69>>0]=h;g=f+32|0;a[g>>2]=a[u>>2];a[g+4>>2]=a[u+4>>2];a[g+8>>2]=a[u+8>>2];a[g+12>>2]=a[u+12>>2];switch(i|0){case 1:{t=a[B>>2]|0;if((r[t+156>>0]|0)==0?(g=r[(a[v>>2]|0)+89>>0]|0,E=g&255,g<<24>>24!=0):0){a[C>>2]=a[f>>2];a[C+4>>2]=a[f+4>>2];a[C+8>>2]=a[f+8>>2];a[C+12>>2]=a[f+12>>2];a[C+16>>2]=a[f+16>>2];a[C+20>>2]=a[f+20>>2];a[C+24>>2]=a[f+24>>2];a[C+28>>2]=a[f+28>>2];do{if(!(E&4))if(!(E&1)){l=f+48|0;if(!(E&8)){a[l>>2]=2;s[C>>3]=+s[u>>3];s[C+24>>3]=+s[t+80>>3]*.5+ +s[t+24>>3];s[C+8>>3]=+s[A+48>>3];l=f+56|0;a[l>>2]=a[C>>2];a[l+4>>2]=a[C+4>>2];a[l+8>>2]=a[C+8>>2];a[l+12>>2]=a[C+12>>2];a[l+16>>2]=a[C+16>>2];a[l+20>>2]=a[C+20>>2];a[l+24>>2]=a[C+24>>2];a[l+28>>2]=a[C+28>>2];l=1;break}else{a[l>>2]=8;s[C+16>>3]=+s[u>>3];s[C+24>>3]=+s[t+80>>3]*.5+ +s[t+24>>3];s[C+8>>3]=+s[A+48>>3];l=f+56|0;a[l>>2]=a[C>>2];a[l+4>>2]=a[C+4>>2];a[l+8>>2]=a[C+8>>2];a[l+12>>2]=a[C+12>>2];a[l+16>>2]=a[C+16>>2];a[l+20>>2]=a[C+20>>2];a[l+24>>2]=a[C+24>>2];a[l+28>>2]=a[C+28>>2];l=1;break}}else{a[f+48>>2]=1;c=+s[C>>3];if(+s[u>>3]<+s[t+16>>3]){Q=c+-1.0;b=+s[A+48>>3];A=C+16|0;c=+s[A>>3];m=+s[t+80>>3]*-.5+ +s[t+24>>3];m=m-+((a[(a[(Id(Z)|0)+16>>2]|0)+252>>2]|0)/2|0|0);l=a[B>>2]|0;s[A>>3]=+s[l+16>>3]-+s[l+88>>3];s[C+8>>3]=b;s[C+24>>3]=+s[l+80>>3]*.5+ +s[l+24>>3];s[C>>3]=Q;s[f+56>>3]=Q;s[f+64>>3]=m;s[f+72>>3]=c;s[f+80>>3]=b;l=f+88|0;a[l>>2]=a[C>>2];a[l+4>>2]=a[C+4>>2];a[l+8>>2]=a[C+8>>2];a[l+12>>2]=a[C+12>>2];a[l+16>>2]=a[C+16>>2];a[l+20>>2]=a[C+20>>2];a[l+24>>2]=a[C+24>>2];a[l+28>>2]=a[C+28>>2];l=2;break}else{Q=+s[A+48>>3];l=C+16|0;m=+s[l>>3]+1.0;b=+s[t+80>>3]*-.5+ +s[t+24>>3];b=b-+((a[(a[(Id(Z)|0)+16>>2]|0)+252>>2]|0)/2|0|0);A=a[B>>2]|0;s[C>>3]=+s[A+96>>3]+ +s[A+16>>3];s[C+8>>3]=Q;s[C+24>>3]=+s[A+80>>3]*.5+ +s[A+24>>3];s[l>>3]=m;s[f+56>>3]=c;s[f+64>>3]=b;s[f+72>>3]=m;s[f+80>>3]=Q;l=f+88|0;a[l>>2]=a[C>>2];a[l+4>>2]=a[C+4>>2];a[l+8>>2]=a[C+8>>2];a[l+12>>2]=a[C+12>>2];a[l+16>>2]=a[C+16>>2];a[l+20>>2]=a[C+20>>2];a[l+24>>2]=a[C+24>>2];a[l+28>>2]=a[C+28>>2];l=2;break}}else{a[f+48>>2]=4;l=C+8|0;s[l>>3]=+s[(+s[l>>3]<+s[A+48>>3]?C:u)+8>>3];l=f+56|0;a[l>>2]=a[C>>2];a[l+4>>2]=a[C+4>>2];a[l+8>>2]=a[C+8>>2];a[l+12>>2]=a[C+12>>2];a[l+16>>2]=a[C+16>>2];a[l+20>>2]=a[C+20>>2];a[l+24>>2]=a[C+24>>2];a[l+28>>2]=a[C+28>>2];l=1}}while(0);a[f+52>>2]=l;while(1){l=a[e+16>>2]|0;if(!(r[l+112>>0]|0))break;e=a[l+116>>2]|0}r[((Z|0)==(a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)?l+56|0:l+16|0)+30>>0]=0;a[f+48>>2]=E}else{t=4;I=47}break}case 2:{E=r[(a[v>>2]|0)+89>>0]|0;t=E&255;if(!(E<<24>>24))I=46;else{a[C>>2]=a[f>>2];a[C+4>>2]=a[f+4>>2];a[C+8>>2]=a[f+8>>2];a[C+12>>2]=a[f+12>>2];a[C+16>>2]=a[f+16>>2];a[C+20>>2]=a[f+20>>2];a[C+24>>2]=a[f+24>>2];a[C+28>>2]=a[f+28>>2];do{if(!(t&4)){if(t&1|0)if((a[f+48>>2]|0)==4){c=+s[C>>3]+-1.0;l=a[B>>2]|0;Q=+s[l+24>>3]-+s[l+80>>3]*.5;m=+s[u>>3];b=Q-+((a[(a[(Id(Z)|0)+16>>2]|0)+252>>2]|0)/2|0|0);l=a[B>>2]|0;s[C+16>>3]=+s[l+16>>3]+-2.0-+s[l+88>>3];s[C+8>>3]=Q;s[C+24>>3]=+s[l+80>>3]*.5+ +s[l+24>>3];s[C>>3]=c;s[f+56>>3]=c;s[f+64>>3]=b;s[f+72>>3]=m;s[f+80>>3]=Q;l=f+88|0;a[l>>2]=a[C>>2];a[l+4>>2]=a[C+4>>2];a[l+8>>2]=a[C+8>>2];a[l+12>>2]=a[C+12>>2];a[l+16>>2]=a[C+16>>2];a[l+20>>2]=a[C+20>>2];a[l+24>>2]=a[C+24>>2];a[l+28>>2]=a[C+28>>2];l=2;break}else{l=C+24|0;s[l>>3]=+s[(+s[l>>3]>+s[A+8>>3]?C+16|0:A)+8>>3];l=f+56|0;a[l>>2]=a[C>>2];a[l+4>>2]=a[C+4>>2];a[l+8>>2]=a[C+8>>2];a[l+12>>2]=a[C+12>>2];a[l+16>>2]=a[C+16>>2];a[l+20>>2]=a[C+20>>2];a[l+24>>2]=a[C+24>>2];a[l+28>>2]=a[C+28>>2];l=1;break}c=+s[u>>3];if(!(t&8)){s[C>>3]=c+-1.0;i=a[B>>2]|0;c=+s[i+24>>3];b=+s[i+80>>3]*.5;if((a[f+48>>2]|0)==4){s[C+24>>3]=b+c;c=+s[A+48>>3]+-1.0;l=C}else{s[C+8>>3]=c-b;c=+s[A+48>>3];l=C+16|0}s[l+8>>3]=c;l=f+56|0;a[l>>2]=a[C>>2];a[l+4>>2]=a[C+4>>2];a[l+8>>2]=a[C+8>>2];a[l+12>>2]=a[C+12>>2];a[l+16>>2]=a[C+16>>2];a[l+20>>2]=a[C+20>>2];a[l+24>>2]=a[C+24>>2];a[l+28>>2]=a[C+28>>2];l=1;break}else{l=C+16|0;s[l>>3]=c+1.0;i=a[B>>2]|0;c=+s[i+24>>3];b=+s[i+80>>3]*.5;if((a[f+48>>2]|0)==4){s[C+24>>3]=b+c;c=+s[A+48>>3]+-1.0;l=C}else{s[C+8>>3]=c-b;c=+s[A+48>>3]+1.0}s[l+8>>3]=c;l=f+56|0;a[l>>2]=a[C>>2];a[l+4>>2]=a[C+4>>2];a[l+8>>2]=a[C+8>>2];a[l+12>>2]=a[C+12>>2];a[l+16>>2]=a[C+16>>2];a[l+20>>2]=a[C+20>>2];a[l+24>>2]=a[C+24>>2];a[l+28>>2]=a[C+28>>2];l=1;break}}else{l=C+8|0;s[l>>3]=+s[(+s[l>>3]<+s[A+48>>3]?C:u)+8>>3];l=f+56|0;a[l>>2]=a[C>>2];a[l+4>>2]=a[C+4>>2];a[l+8>>2]=a[C+8>>2];a[l+12>>2]=a[C+12>>2];a[l+16>>2]=a[C+16>>2];a[l+20>>2]=a[C+20>>2];a[l+24>>2]=a[C+24>>2];a[l+28>>2]=a[C+28>>2];l=1}}while(0);a[f+52>>2]=l;while(1){l=a[e+16>>2]|0;if(!(r[l+112>>0]|0))break;e=a[l+116>>2]|0}r[((Z|0)==(a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)?l+56|0:l+16|0)+30>>0]=0;a[f+48>>2]=t}break}default:I=46}if((I|0)==46){t=a[f+48>>2]|0;I=47}A:do{if((I|0)==47){if(w){e=f+56|0;l=f+52|0;t=z5[w&127](Z,(a[v>>2]|0)+56|0,t,e,l)|0;if(t){a[f+48>>2]=t;break}}else{l=f+52|0;e=f+56|0}a[e>>2]=a[f>>2];a[e+4>>2]=a[f+4>>2];a[e+8>>2]=a[f+8>>2];a[e+12>>2]=a[f+12>>2];a[e+16>>2]=a[f+16>>2];a[e+20>>2]=a[f+20>>2];a[e+24>>2]=a[f+24>>2];a[e+28>>2]=a[f+28>>2];a[l>>2]=1;switch(i|0){case 8:{gA(138394,106514,765,106558);break}case 2:{s[((a[f+48>>2]|0)==4?f+56|0:f+72|0)+8>>3]=+s[A+48>>3];break A}case 1:{s[f+64>>3]=+s[A+48>>3];a[f+48>>2]=4;break A}default:break A}}}while(0);k=G;return}function QN(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;n=a[A+16>>2]|0;l=a[n+96>>2]|0;if((r[n+44>>0]|0)==0?(r[n+84>>0]|0)==0:0)t=6;else{e=r[n+49>>0]|0;i=e&255;if(((i&8|0)==0?(f=r[n+89>>0]|0,(f&8)==0):0)?(i&5|0)==0?1:e<<24>>24!=f<<24>>24:0)t=6;else A=0}if((t|0)==6)if(!l)A=18;else{A=(a[(a[(Id(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)!=0;A=~~(+s[(A?l+32|0:l+24|0)>>3]+18.0)}return A|0}function LN(A,e,i,f,n,l,t){A=A|0;e=e|0;i=i|0;f=f|0;n=+n;l=+l;t=t|0;var c=0,s=0,b=0,u=0;A=a[(a[e+(i<<2)>>2]|0)+16>>2]|0;if((r[A+44>>0]|0)==0?(r[A+84>>0]|0)==0:0)b=6;else b=3;do{if((b|0)==3){c=r[A+49>>0]|0;s=c&255;if(!(s&8)){u=r[A+89>>0]|0;if((u&8)==0?(s&5|0)==0?1:c<<24>>24!=u<<24>>24:0){b=6;break}if(!(r[A+89>>0]&8)){if(s&4|0){WN(e,i,f,n,l,t);break}if(!(s&1))gA(138394,106514,1231,106566);else{YN(e,i,f,n,l,t);break}}}if((c&2)==0?(r[A+89>>0]&2)==0:0){zN(e,i,f,n,l,t);break}WN(e,i,f,n,l,t)}}while(0);if((b|0)==6)yN(e,i,f,n,l,t);return}function yN(A,e,i,f,l,t){A=A|0;e=e|0;i=i|0;f=+f;l=+l;t=t|0;var c=0,b=0.0,u=0.0,w=0.0,o=0.0,h=0,d=0,B=0,g=0,v=0,E=0.0,C=0,I=0,Z=0,G=0.0,m=0,Q=0,L=0.0,y=0,W=0.0,z=0.0,Y=0.0,D=0.0,M=0.0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0.0,U=0.0,x=0;X=k;k=k+16080|0;J=X+80|0;p=X+64|0;N=X+48|0;R=X+32|0;F=X+16|0;V=X;Q=a[A+(e<<2)>>2]|0;u=l*.5/+(i|0);u=u>2.0?u:2.0;y=(a[((a[Q>>2]&3|0)==3?Q:Q+48|0)+40>>2]|0)+16|0;m=a[y>>2]|0;L=+s[m+16>>3];D=+s[m+24>>3];Q=a[Q+16>>2]|0;b=+s[Q+16>>3];W=b+L;z=+s[Q+24>>3]+D;l=+s[Q+56>>3];Y=l+L;D=+s[Q+64>>3]+D;c=!(z>=D)?-1:1;o=+s[m+96>>3];switch(DN(n[Q+49>>0]|0,n[Q+89>>0]|0)|0){case 65:case 32:{if(z==D)c=0-c|0;break}default:{}}H=(o-b)*3.0;b=(o-l)*3.0;E=u*+(c|0);v=J+8|0;C=J+16|0;I=J+32|0;Z=J+48|0;G=(D+z)*.5;m=J+64|0;Q=J+80|0;B=J+96|0;g=J+104|0;d=0;w=0.0;l=o;u=o =(i|0))break;h=e+1|0;e=a[A+(e<<2)>>2]|0;o=l+f;u=u+f;b=b+f;w=w+E;s[J>>3]=W;s[v>>3]=z;H=w+z;MN(p,u*.3333333333333333+W,H);a[C>>2]=a[p>>2];a[C+4>>2]=a[p+4>>2];a[C+8>>2]=a[p+8>>2];a[C+12>>2]=a[p+12>>2];U=o+L;MN(N,U,H);a[I>>2]=a[N>>2];a[I+4>>2]=a[N+4>>2];a[I+8>>2]=a[N+8>>2];a[I+12>>2]=a[N+12>>2];MN(R,U,G);a[Z>>2]=a[R>>2];a[Z+4>>2]=a[R+4>>2];a[Z+8>>2]=a[R+8>>2];a[Z+12>>2]=a[R+12>>2];H=D-w;MN(F,U,H);a[m>>2]=a[F>>2];a[m+4>>2]=a[F+4>>2];a[m+8>>2]=a[F+8>>2];a[m+12>>2]=a[F+12>>2];MN(V,b*.3333333333333333+Y,H);a[Q>>2]=a[V>>2];a[Q+4>>2]=a[V+4>>2];a[Q+8>>2]=a[V+8>>2];a[Q+12>>2]=a[V+12>>2];s[B>>3]=Y;s[g>>3]=D;c=e+16|0;if((a[(a[c>>2]|0)+96>>2]|0)!=0?(x=(a[(a[(Id(a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,c=a[(a[c>>2]|0)+96>>2]|0,M=+s[(x?c+24|0:c+32|0)>>3],x=a[y>>2]|0,s[c+56>>3]=M*.5+o+ +s[x+16>>3],s[c+64>>3]=+s[x+24>>3],r[c+81>>0]=1,M>f):0)l=M+l;else l=o;vN(e,a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,J,7,t);e=h;d=d+1|0}k=X;return}function WN(A,e,i,f,l,t){A=A|0;e=e|0;i=i|0;f=+f;l=+l;t=t|0;var c=0.0,b=0,u=0.0,w=0.0,o=0.0,h=0.0,d=0,B=0.0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0.0,Q=0,L=0,y=0.0,W=0,z=0.0,Y=0.0,D=0.0,M=0.0,F=0.0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,U=0.0,x=0;H=k;k=k+16080|0;p=H+80|0;N=H+64|0;R=H+48|0;X=H+32|0;V=H+16|0;J=H;L=a[A+(e<<2)>>2]|0;h=f*.5/+(i|0);h=h>2.0?h:2.0;W=(a[((a[L>>2]&3|0)==3?L:L+48|0)+40>>2]|0)+16|0;b=a[W>>2]|0;D=+s[b+16>>3];y=+s[b+24>>3];L=a[L+16>>2]|0;c=+s[L+16>>3];o=+s[L+24>>3];z=c+D;Y=o+y;f=+s[L+56>>3];w=+s[L+64>>3];D=f+D;M=w+y;u=!(z>=D)?-1.0:1.0;B=+s[b+80>>3]*.5;switch(DN(n[L+49>>0]|0,n[L+89>>0]|0)|0){case 15:{c=(h-f+ +s[b+96>>3])*u;break}case 38:{c=(f+h+ +s[b+88>>3])*u;break}case 41:{c=(h-c+ +s[b+96>>3])*u;break}case 48:{c=(h-c+ +s[b+96>>3])*u;break}case 58:case 57:case 51:case 47:case 37:case 14:{c=u*.3333333333333333*(c-f+ +s[b+88>>3]+ +s[b+96>>3]);break}case 73:{c=(c+h+ +s[b+88>>3])*u;break}case 83:{c=(+s[b+88>>3]+c)*u;break}case 84:{c=((c-f+ +s[b+88>>3]+ +s[b+96>>3])*.5+h)*u;break}case 85:case 75:case 74:{c=((c-f+ +s[b+88>>3]+ +s[b+96>>3])*.5+h*2.0)*u;break}default:c=0.0}o=(B-o)*3.0;w=(B-w)*3.0;h=u*h;C=p+8|0;I=p+16|0;Z=p+32|0;G=p+48|0;m=(D+z)*.5;Q=p+64|0;L=p+80|0;v=p+96|0;E=p+104|0;g=0;f=B;o=B =(i|0))break;d=e+1|0;e=a[A+(e<<2)>>2]|0;w=f+l;o=o+l;u=u+l;c=c+h;s[p>>3]=z;s[C>>3]=Y;B=c+z;MN(N,B,o*.3333333333333333+Y);a[I>>2]=a[N>>2];a[I+4>>2]=a[N+4>>2];a[I+8>>2]=a[N+8>>2];a[I+12>>2]=a[N+12>>2];U=w+y;MN(R,B,U);a[Z>>2]=a[R>>2];a[Z+4>>2]=a[R+4>>2];a[Z+8>>2]=a[R+8>>2];a[Z+12>>2]=a[R+12>>2];MN(X,m,U);a[G>>2]=a[X>>2];a[G+4>>2]=a[X+4>>2];a[G+8>>2]=a[X+8>>2];a[G+12>>2]=a[X+12>>2];B=D-c;MN(V,B,U);a[Q>>2]=a[V>>2];a[Q+4>>2]=a[V+4>>2];a[Q+8>>2]=a[V+8>>2];a[Q+12>>2]=a[V+12>>2];MN(J,B,u*.3333333333333333+M);a[L>>2]=a[J>>2];a[L+4>>2]=a[J+4>>2];a[L+8>>2]=a[J+8>>2];a[L+12>>2]=a[J+12>>2];s[v>>3]=D;s[E>>3]=M;b=e+16|0;if((a[(a[b>>2]|0)+96>>2]|0)!=0?(x=(a[(a[(Id(a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,b=a[(a[b>>2]|0)+96>>2]|0,F=+s[(x?b+32|0:b+24|0)>>3],x=a[W>>2]|0,s[b+64>>3]=F*.5+w+ +s[x+24>>3],s[b+56>>3]=+s[x+16>>3],r[b+81>>0]=1,F>l):0)f=F+f;else f=w;vN(e,a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,p,7,t);e=d;g=g+1|0}k=H;return}function zN(A,e,i,f,l,t){A=A|0;e=e|0;i=i|0;f=+f;l=+l;t=t|0;var c=0,b=0.0,u=0.0,w=0.0,o=0.0,h=0,d=0,B=0,g=0,v=0,E=0.0,C=0,I=0,Z=0,G=0.0,m=0,Q=0,L=0.0,y=0,W=0.0,z=0.0,Y=0.0,D=0.0,M=0.0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0.0,U=0.0,x=0;X=k;k=k+16080|0;J=X+80|0;p=X+64|0;N=X+48|0;R=X+32|0;F=X+16|0;V=X;Q=a[A+(e<<2)>>2]|0;u=l*.5/+(i|0);u=u>2.0?u:2.0;y=(a[((a[Q>>2]&3|0)==3?Q:Q+48|0)+40>>2]|0)+16|0;m=a[y>>2]|0;L=+s[m+16>>3];D=+s[m+24>>3];Q=a[Q+16>>2]|0;b=+s[Q+16>>3];W=b+L;z=+s[Q+24>>3]+D;l=+s[Q+56>>3];Y=l+L;D=+s[Q+64>>3]+D;c=!(z>=D)?-1:1;o=+s[m+88>>3];switch(DN(n[Q+49>>0]|0,n[Q+89>>0]|0)|0){case 67:case 12:{if(z==D)c=0-c|0;break}default:{}}H=(b+o)*3.0;b=(l+o)*3.0;E=u*+(c|0);v=J+8|0;C=J+16|0;I=J+32|0;Z=J+48|0;G=(D+z)*.5;m=J+64|0;Q=J+80|0;B=J+96|0;g=J+104|0;d=0;w=0.0;l=o;u=o =(i|0))break;h=e+1|0;e=a[A+(e<<2)>>2]|0;o=l+f;u=u+f;b=b+f;w=w+E;s[J>>3]=W;s[v>>3]=z;H=w+z;MN(p,W-u*.3333333333333333,H);a[C>>2]=a[p>>2];a[C+4>>2]=a[p+4>>2];a[C+8>>2]=a[p+8>>2];a[C+12>>2]=a[p+12>>2];U=L-o;MN(N,U,H);a[I>>2]=a[N>>2];a[I+4>>2]=a[N+4>>2];a[I+8>>2]=a[N+8>>2];a[I+12>>2]=a[N+12>>2];MN(R,U,G);a[Z>>2]=a[R>>2];a[Z+4>>2]=a[R+4>>2];a[Z+8>>2]=a[R+8>>2];a[Z+12>>2]=a[R+12>>2];H=D-w;MN(F,U,H);a[m>>2]=a[F>>2];a[m+4>>2]=a[F+4>>2];a[m+8>>2]=a[F+8>>2];a[m+12>>2]=a[F+12>>2];MN(V,Y-b*.3333333333333333,H);a[Q>>2]=a[V>>2];a[Q+4>>2]=a[V+4>>2];a[Q+8>>2]=a[V+8>>2];a[Q+12>>2]=a[V+12>>2];s[B>>3]=Y;s[g>>3]=D;c=e+16|0;if((a[(a[c>>2]|0)+96>>2]|0)!=0?(x=(a[(a[(Id(a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,c=a[(a[c>>2]|0)+96>>2]|0,M=+s[(x?c+24|0:c+32|0)>>3],x=a[y>>2]|0,s[c+56>>3]=M*-.5-o+ +s[x+16>>3],s[c+64>>3]=+s[x+24>>3],r[c+81>>0]=1,M>f):0)l=M+l;else l=o;vN(e,a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0,J,7,t);e=h;d=d+1|0}k=X;return}function YN(A,e,i,f,l,t){A=A|0;e=e|0;i=i|0;f=+f;l=+l;t=t|0;var c=0.0,b=0.0,u=0.0,w=0.0,o=0,h=0,d=0,B=0,g=0,v=0,E=0.0,C=0,I=0.0,Z=0.0,G=0.0,m=0.0,Q=0.0,L=0,y=0,W=0,z=0.0,Y=0,D=0,M=0.0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0.0,U=0.0,x=0;X=k;k=k+16080|0;J=X+80|0;p=X+64|0;N=X+48|0;R=X+32|0;F=X+16|0;V=X;L=a[A+(e<<2)>>2]|0;Q=f*.5/+(i|0);C=(a[((a[L>>2]&3|0)==3?L:L+48|0)+40>>2]|0)+16|0;y=a[C>>2]|0;G=+s[y+16>>3];E=+s[y+24>>3];L=a[L+16>>2]|0;b=+s[L+24>>3];I=+s[L+16>>3]+G;Z=b+E;u=+s[L+64>>3];G=+s[L+56>>3]+G;m=u+E;v=!(I>=G)?-1:1;w=+s[y+80>>3]*.5;L=(DN(n[L+49>>0]|0,n[L+89>>0]|0)|0)==67;b=(b+w)*3.0;u=(u+w)*3.0;Q=(Q>2.0?Q:2.0)*+((L?0-v|0:v)|0);v=J+8|0;L=J+16|0;y=J+32|0;W=J+48|0;z=(G+I)*.5;Y=J+64|0;D=J+80|0;B=J+96|0;g=J+104|0;f=w;c=0.0;b=w=(i|0))break;d=e+1|0;o=a[A+(e<<2)>>2]|0;w=f+l;b=b+l;u=u+l;c=c+Q;s[J>>3]=I;s[v>>3]=Z;H=c+I;MN(p,H,Z-b*.3333333333333333);a[L>>2]=a[p>>2];a[L+4>>2]=a[p+4>>2];a[L+8>>2]=a[p+8>>2];a[L+12>>2]=a[p+12>>2];U=E-w;MN(N,H,U);a[y>>2]=a[N>>2];a[y+4>>2]=a[N+4>>2];a[y+8>>2]=a[N+8>>2];a[y+12>>2]=a[N+12>>2];MN(R,z,U);a[W>>2]=a[R>>2];a[W+4>>2]=a[R+4>>2];a[W+8>>2]=a[R+8>>2];a[W+12>>2]=a[R+12>>2];H=G-c;MN(F,H,U);a[Y>>2]=a[F>>2];a[Y+4>>2]=a[F+4>>2];a[Y+8>>2]=a[F+8>>2];a[Y+12>>2]=a[F+12>>2];MN(V,H,m-u*.3333333333333333);a[D>>2]=a[V>>2];a[D+4>>2]=a[V+4>>2];a[D+8>>2]=a[V+8>>2];a[D+12>>2]=a[V+12>>2];s[B>>3]=G;s[g>>3]=m;e=o+16|0;if((a[(a[e>>2]|0)+96>>2]|0)!=0?(x=(a[(a[(Id(a[((a[o>>2]&3|0)==3?o:o+48|0)+40>>2]|0)|0)+16>>2]|0)+116>>2]&1|0)==0,e=a[(a[e>>2]|0)+96>>2]|0,M=+s[(x?e+32|0:e+24|0)>>3],x=a[C>>2]|0,s[e+64>>3]=M*-.5-w+ +s[x+24>>3],s[e+56>>3]=+s[x+16>>3],r[e+81>>0]=1,M>l):0)f=M+f;else f=w;vN(o,a[((a[o>>2]&3|0)==2?o:o+-48|0)+40>>2]|0,J,7,t);e=d;h=h+1|0}k=X;return}function DN(A,e){A=A|0;e=e|0;var i=0;i=0;while(1){if((i|0)>=8){e=-1;break}if((a[22044+(i<<2)>>2]|0)==(e|0)){e=i;break}i=i+1|0}i=0;while(1){if((i|0)>=8){i=-1;break}if((a[22044+(i<<2)>>2]|0)==(A|0))break;i=i+1|0}if((i|e|0)<0)i=0;else i=a[22076+(i<<5)+(e<<2)>>2]|0;return i|0}function MN(A,e,i){A=A|0;e=+e;i=+i;s[A>>3]=e;s[A+8>>3]=i;return}function FN(A){A=A|0;var e=0,i=0;if((a[47203]|0)!=0|(a[47202]|0)!=0){e=A+16|0;i=a[(a[e>>2]|0)+100>>2]|0;if((i|0?(r[i+81>>0]|0)==0:0)?VN(A,1)|0:0){i=Id(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)|0;HR(i,a[(a[e>>2]|0)+100>>2]|0)}i=a[(a[e>>2]|0)+104>>2]|0;if((i|0?(r[i+81>>0]|0)==0:0)?VN(A,0)|0:0){i=Id(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)|0;HR(i,a[(a[e>>2]|0)+104>>2]|0)}}return}function VN(A,e){A=A|0;e=e|0;var i=0,f=0.0,n=0.0,l=0,t=0.0,c=0,b=0,u=0,w=0,o=0,h=0,d=0.0;h=k;k=k+96|0;w=h+32|0;b=h+16|0;u=h;l=A+16|0;do{if((r[(a[l>>2]|0)+112>>0]|0)!=6){i=a[47203]|0;if(!((i|0)!=0?(r[(Uo(A,i)|0)>>0]|0)!=0:0)){i=a[47202]|0;if(!i){i=0;break}if(!(r[(Uo(A,i)|0)>>0]|0)){i=0;break}}e=e<<24>>24==0;o=a[l>>2]|0;o=a[(e?o+104|0:o+100|0)>>2]|0;i=JN(A)|0;if(i){c=a[i>>2]|0;do{if(e){if(a[c+8>>2]|0){i=a[c>>2]|0;t=+s[i>>3];n=+s[c+16>>3];i=i+8|0;f=+s[c+24>>3];break}i=a[c>>2]|0;n=+s[i>>3];f=+s[i+8>>3];i=0;while(1){if((i|0)==4)break;u=w+(i<<4)|0;l=(a[c>>2]|0)+(i<<4)|0;a[u>>2]=a[l>>2];a[u+4>>2]=a[l+4>>2];a[u+8>>2]=a[l+8>>2];a[u+12>>2]=a[l+12>>2];i=i+1|0}QR(b,w,3,.1,0,0);t=+s[b>>3];i=b+8|0}else{e=(a[i+4>>2]|0)+-1|0;l=c+(e*48|0)|0;if(a[c+(e*48|0)+12>>2]|0){w=a[l>>2]|0;i=(a[c+(e*48|0)+4>>2]|0)+-1|0;t=+s[w+(i<<4)>>3];n=+s[c+(e*48|0)+32>>3];i=w+(i<<4)+8|0;f=+s[c+(e*48|0)+40>>3];break}b=a[l>>2]|0;e=c+(e*48|0)+4|0;i=(a[e>>2]|0)+-1|0;n=+s[b+(i<<4)>>3];f=+s[b+(i<<4)+8>>3];i=0;while(1){if((i|0)==4)break;b=w+(i<<4)|0;c=(a[l>>2]|0)+(i+-4+(a[e>>2]|0)<<4)|0;a[b>>2]=a[c>>2];a[b+4>>2]=a[c+4>>2];a[b+8>>2]=a[c+8>>2];a[b+12>>2]=a[c+12>>2];i=i+1|0}QR(u,w,3,.9,0,0);t=+s[u>>3];i=u+8|0}}while(0);d=+N(+(+s[i>>3]-f),+(t-n));d=+oR(A,a[47203]|0,-25.0,-180.0)*.017453292519943295+d;t=+oR(A,a[47202]|0,1.0,0.0)*10.0;s[o+56>>3]=t*+D(+d)+n;s[o+64>>3]=+M(+d)*t+f;r[o+81>>0]=1;i=1}else i=0}else i=0}while(0);k=h;return i|0}function JN(A){A=A|0;var e=0,i=0,f=0,n=0,l=0;l=k;k=k+16|0;f=l;e=A;while(1){i=a[e+16>>2]|0;e=a[i+8>>2]|0;if(e|0)break;if(!(r[i+112>>0]|0)){n=5;break}e=a[i+116>>2]|0}if((n|0)==5){n=Vh(a[((a[A>>2]&3|0)==3?A:A+48|0)+40>>2]|0)|0;e=Vh(a[((a[A>>2]&3|0)==2?A:A+-48|0)+40>>2]|0)|0;a[f>>2]=n;a[f+4>>2]=e;ao(1,106579,f)|0;e=0}k=l;return e|0}function pN(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,n=0.0,l=0.0,t=0.0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0.0,v=0.0;B=k;k=k+96|0;b=B+80|0;u=B+64|0;w=B+48|0;o=B+32|0;h=B+16|0;d=B;c=f[(a[e+16>>2]|0)+136>>1]|0;e=i+16|0;NN(a[(a[e>>2]|0)+8>>2]|0,o,h);r=+s[o>>3];n=+s[h>>3];g=r-n;l=+s[o+8>>3];t=+s[h+8>>3];v=l-t;A:do{if(v*v+g*g<1.0e-06){a[w>>2]=a[o>>2];a[w+4>>2]=a[o+4>>2];a[w+8>>2]=a[o+8>>2];a[w+12>>2]=a[o+12>>2]}else switch(c&14){case 4:case 10:{s[u>>3]=(n+r)*.5;s[u+8>>3]=(t+l)*.5;h=a[(a[e>>2]|0)+8>>2]|0;a[b>>2]=a[u>>2];a[b+4>>2]=a[u+4>>2];a[b+8>>2]=a[u+8>>2];a[b+12>>2]=a[u+12>>2];DR(d,h,b);a[w>>2]=a[d>>2];a[w+4>>2]=a[d+4>>2];a[w+8>>2]=a[d+8>>2];a[w+12>>2]=a[d+12>>2];break A}default:{RN(w,a[(a[e>>2]|0)+8>>2]|0,o,h);break A}}}while(0);a[A>>2]=a[w>>2];a[A+4>>2]=a[w+4>>2];a[A+8>>2]=a[w+8>>2];a[A+12>>2]=a[w+12>>2];k=B;return}function NN(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0;l=k;k=k+32|0;n=l+16|0;f=l;c=a[A>>2]|0;r=a[c>>2]|0;t=a[c+8>>2]|0;s=c+16|0;a[n>>2]=a[s>>2];a[n+4>>2]=a[s+4>>2];a[n+8>>2]=a[s+8>>2];a[n+12>>2]=a[s+12>>2];c=c+32|0;a[f>>2]=a[c>>2];a[f+4>>2]=a[c+4>>2];a[f+8>>2]=a[c+8>>2];a[f+12>>2]=a[c+12>>2];if(!t){a[e>>2]=a[r>>2];a[e+4>>2]=a[r+4>>2];a[e+8>>2]=a[r+8>>2];a[e+12>>2]=a[r+12>>2]}else{a[e>>2]=a[n>>2];a[e+4>>2]=a[n+4>>2];a[e+8>>2]=a[n+8>>2];a[e+12>>2]=a[n+12>>2]}t=a[A>>2]|0;c=(a[A+4>>2]|0)+-1|0;r=a[t+(c*48|0)>>2]|0;A=a[t+(c*48|0)+4>>2]|0;s=a[t+(c*48|0)+12>>2]|0;e=t+(c*48|0)+16|0;a[n>>2]=a[e>>2];a[n+4>>2]=a[e+4>>2];a[n+8>>2]=a[e+8>>2];a[n+12>>2]=a[e+12>>2];c=t+(c*48|0)+32|0;a[f>>2]=a[c>>2];a[f+4>>2]=a[c+4>>2];a[f+8>>2]=a[c+8>>2];a[f+12>>2]=a[c+12>>2];if(!s){s=r+(A+-1<<4)|0;a[i>>2]=a[s>>2];a[i+4>>2]=a[s+4>>2];a[i+8>>2]=a[s+8>>2];a[i+12>>2]=a[s+12>>2]}else{a[i>>2]=a[f>>2];a[i+4>>2]=a[f+4>>2];a[i+8>>2]=a[f+8>>2];a[i+12>>2]=a[f+12>>2]}k=l;return}function RN(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0.0,l=0,t=0,c=0,b=0,u=0.0,w=0.0,k=0.0,o=0.0,h=0.0,d=0,B=0.0;d=a[e+4>>2]|0;n=0.0;f=0;while(1){if((f|0)>=(d|0))break;b=a[e>>2]|0;c=a[b+(f*48|0)>>2]|0;b=a[b+(f*48|0)+4>>2]|0;l=3;t=0;while(1){if((l|0)>=(b|0))break;h=+s[c+(t<<4)>>3]-+s[c+(l<<4)>>3];o=+s[c+(t<<4)+8>>3]-+s[c+(l<<4)+8>>3];l=l+3|0;t=t+3|0;n=+z(+(o*o+h*h))+n}f=f+1|0}b=0;n=n*.5;A:while(1){if((b|0)>=(d|0)){f=15;break}c=a[e>>2]|0;t=a[c+(b*48|0)>>2]|0;c=a[c+(b*48|0)+4>>2]|0;f=3;l=0;while(1){if((f|0)>=(c|0))break;u=+s[t+(l<<4)>>3];o=+s[t+(l<<4)+8>>3];w=+s[t+(f<<4)>>3];k=+s[t+(f<<4)+8>>3];h=u-w;B=o-k;h=+z(+(B*B+h*h));if(h>=n){f=12;break A}f=f+3|0;l=l+3|0;n=n-h}b=b+1|0}if((f|0)==12){s[i>>3]=u;s[i+8>>3]=o;s[r>>3]=w;s[r+8>>3]=k;B=h-n;s[A>>3]=(B*u+w*n)/h;s[A+8>>3]=(B*o+k*n)/h;return}else if((f|0)==15)gA(138712,106514,1316,106641)}function XN(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;FN(e);return}function HN(A,e,i,f,n){A=A|0;e=e|0;i=+i;f=f|0;n=n|0;var l=0.0,t=0.0,c=0.0,b=0.0,u=0.0,w=0,k=0,o=0.0,h=0.0,d=0.0,B=0,g=0.0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0.0,L=0.0,y=0,W=0,z=0,Y=0,F=0,V=0,J=0;F=UN(A)|0;Y=a[F+4>>2]|0;V=a[F>>2]|0;z=Y+-1|0;Q=+s[V+(z<<6)+16>>3];L=+(Y|0);y=(n|0)==2;W=(f|0)!=0;w=0;t=0.0;l=0.0;b=0.0;u=0.0;while(1){if((w|0)>=(Y|0))break;A=~~+xN(+(w+-1|0),L);m=w+1|0;J=~~+xN(+(m|0),L);k=V+(w<<6)|0;u=+s[k>>3];G=V+(w<<6)+8|0;b=+s[G>>3];B=V+(w<<6)+16|0;g=+s[B>>3];v=V+(w<<6)+24|0;E=V+(w<<6)+32|0;C=V+(w<<6)+40|0;I=V+(w<<6)+48|0;Z=V+(w<<6)+56|0;c=+TN(+s[V+(J<<6)+8>>3]-b,+s[V+(J<<6)>>3]-u);h=+TN(+s[V+(A<<6)+8>>3]-b,+s[V+(A<<6)>>3]-u);d=+I5[e&7](g,Q,i);A=(w|0)==0;do{if(A|(w|0)==(z|0))if(A){l=c+1.5707963267948966;if(!y){A=0;o=l;t=d;break}A=0;o=l;t=d;b=b-+M(+c)*d;u=u-+D(+c)*d;break}else{l=h+-1.5707963267948966;if(!y){A=0;o=l;t=d;break}A=0;o=l;t=d;b=b-+M(+h)*d;u=u-+D(+h)*d;break}else{o=c-h;o=1.5707963267948966-(o<0.0?o+6.283185307179586:o)*.5;t=+D(+o);t=t==0.0?0.0:d/t;l=c+1.5707963267948966;c=o+l;if(W|t>d*10.0){h=+xN(h+-1.5707963267948966,6.283185307179586);A=1;o=+xN(l,6.283185307179586);t=d;l=h}else{A=0;o=c;l=c}}}while(0);s[k>>3]=u;s[G>>3]=b;s[B>>3]=g;r[v>>0]=108;s[E>>3]=l;s[C>>3]=t;a[I>>2]=A;s[Z>>3]=o;w=m}k=qF(12)|0;A=0;while(1){if((A|0)>=(Y|0))break;u=+s[V+(A<<6)>>3];b=+s[V+(A<<6)+8>>3];l=+s[V+(A<<6)+32>>3];t=+s[V+(A<<6)+40>>3];J=a[V+(A<<6)+48>>2]|0;c=+s[V+(A<<6)+56>>3];jN(k,+D(+l)*t+u,+M(+l)*t+b);if(J|0)PN(u,b,t,1,l,c,f,k);A=A+1|0}w=(n|0)==1;c=l+3.141592653589793;if(w)SN(k,u,b,t,l,c);else{jN(k,+D(+c)*t+u,+M(+c)*t+b);l=c}A=Y+-2|0;c=u;while(1){if((A|0)<=-1)break;u=+s[V+(A<<6)>>3];b=+s[V+(A<<6)+8>>3];t=+s[V+(A<<6)+40>>3];J=a[V+(A<<6)+48>>2]|0;l=+s[V+(A<<6)+32>>3]+3.141592653589793;c=+s[V+(A<<6)+56>>3]+3.141592653589793;jN(k,+D(+c)*t+u,+M(+c)*t+b);if(J|0)PN(u,b,t,0,l,c,f,k);A=A+-1|0;c=u}if(w)SN(k,c,b,t,l,l+3.141592653589793);ON(F);return k|0}function UN(A){A=A|0;var e=0.0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0.0;h=k;k=k+144|0;t=h+128|0;l=h+112|0;c=h+96|0;s=h+64|0;b=h;u=h+80|0;w=KN()|0;o=a[A+4>>2]|0;f=a[A>>2]|0;a[t>>2]=a[f>>2];a[t+4>>2]=a[f+4>>2];a[t+8>>2]=a[f+8>>2];a[t+12>>2]=a[f+12>>2];_N(w,t,0.0);n=b+48|0;a[n>>2]=a[f>>2];a[n+4>>2]=a[f+4>>2];a[n+8>>2]=a[f+8>>2];a[n+12>>2]=a[f+12>>2];i=0;e=0.0;A:while(1){r=i+3|0;if((r|0)>=(o|0))break;a[b>>2]=a[n>>2];a[b+4>>2]=a[n+4>>2];a[b+8>>2]=a[n+8>>2];a[b+12>>2]=a[n+12>>2];A=1;while(1){if((A|0)==4)break;d=b+(A<<4)|0;B=f+(A+i<<4)|0;a[d>>2]=a[B>>2];a[d+4>>2]=a[B+4>>2];a[d+8>>2]=a[B+8>>2];a[d+12>>2]=a[B+12>>2];A=A+1|0}a[c>>2]=a[b>>2];a[c+4>>2]=a[b+4>>2];a[c+8>>2]=a[b+8>>2];a[c+12>>2]=a[b+12>>2];A=1;while(1){if((A|0)==21){i=r;continue A}QR(u,b,3,+(A|0)*.05,0,0);a[s>>2]=a[u>>2];a[s+4>>2]=a[u+4>>2];a[s+8>>2]=a[u+8>>2];a[s+12>>2]=a[u+12>>2];a[l>>2]=a[c>>2];a[l+4>>2]=a[c+4>>2];a[l+8>>2]=a[c+8>>2];a[l+12>>2]=a[c+12>>2];a[t>>2]=a[u>>2];a[t+4>>2]=a[u+4>>2];a[t+8>>2]=a[u+8>>2];a[t+12>>2]=a[u+12>>2];g=+qN(l,t)+e;a[t>>2]=a[s>>2];a[t+4>>2]=a[s+4>>2];a[t+8>>2]=a[s+8>>2];a[t+12>>2]=a[s+12>>2];_N(w,t,g);a[c>>2]=a[s>>2];a[c+4>>2]=a[s+4>>2];a[c+8>>2]=a[s+8>>2];a[c+12>>2]=a[s+12>>2];A=A+1|0;e=g}}$N(w);k=h;return w|0}function xN(A,e){A=+A;e=+e;var i=0.0;i=A-+y(+(A/e))*e;return+(!(A<0.0)&!(A>=e)?A:i)}function TN(A,e){A=+A;e=+e;if(!(A==0.0&e==0.0)){A=+N(+A,+e);if(!(A>=0.0))A=A+6.283185307179586}else A=0.0;return+A}function jN(A,e,i){A=A|0;e=+e;i=+i;var r=0,f=0;r=a[A>>2]|0;f=A+4|0;if((r|0)<(a[f>>2]|0))f=a[A+8>>2]|0;else{a[f>>2]=2e3;r=A+8|0;f=eV(a[r>>2]|0,32e3)|0;a[r>>2]=f;r=a[A>>2]|0}a[A>>2]=r+1;s[f+(r<<4)>>3]=e;s[f+(r<<4)+8>>3]=i;return}function PN(A,e,i,r,f,a,n,l){A=+A;e=+e;i=+i;r=r|0;f=+f;a=+a;n=n|0;l=l|0;var t=0.0;r=(r|0)==0;t=r?f:a;do{if((n|0)==1){f=(r?a:f)-t;f=!(f<=1.7453292519943296e-03)?f:f+6.283185307179586;if(f<3.141592653589793){SN(l,A,e,i,f+t,t);break}else{jN(l,+D(+t)*i+A,+M(+t)*i+A);break}}else jN(l,+D(+t)*i+A,+M(+t)*i+A)}while(0);return}function SN(A,e,i,r,f,a){A=A|0;e=+e;i=+i;r=+r;f=+f;a=+a;var n=0,l=0.0;jN(A,+D(+f)*r+e,+M(+f)*r+i);A:do{if(!(r==0.0)){while(1){if(!(a>f))break;a=a+-6.283185307179586}a=f-a;while(1){if(!(a>6.283185307179586))break;a=a+-6.283185307179586}a=a*.05263157894736842;n=1;while(1){if((n|0)==20)break A;l=f-a*+(n|0);jN(A,+D(+l)*r+e,+M(+l)*r+i);n=n+1|0}}}while(0);return}function ON(A){A=A|0;L2(a[A>>2]|0);L2(A);return}function KN(){var A=0;A=qF(12)|0;a[A+4>>2]=0;a[A+8>>2]=2e3;a[A>>2]=qF(128e3)|0;return A|0}function _N(A,e,i){A=A|0;e=e|0;i=+i;var r=0,f=0,n=0,l=0;l=A+4|0;r=a[l>>2]|0;f=A+8|0;n=a[f>>2]|0;if((r|0)<(n|0))A=a[A>>2]|0;else{a[f>>2]=n<<1;r=eV(a[A>>2]|0,n<<7)|0;a[A>>2]=r;A=r;r=a[l>>2]|0}s[A+(r<<6)>>3]=+s[e>>3];s[A+(r<<6)+8>>3]=+s[e+8>>3];a[l>>2]=r+1;s[A+(r<<6)+16>>3]=i;return}function qN(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;i=+s[A>>3]-+s[e>>3];r=+s[A+8>>3]-+s[e+8>>3];return+ +z(+(r*r+i*i))}function $N(A){A=A|0;var e=0;e=a[A+4>>2]|0;if((a[A+8>>2]|0)>(e|0))a[A>>2]=eV(a[A>>2]|0,e<<6)|0;return}function AR(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+16|0;c=s+8|0;t=s;n=s+12|0;a[n>>2]=0;l=a[i+4>>2]|0;if(!l)gA(106658,106669,203,106680);r=a[l>>2]|0;if(!r)gA(106694,106669,206,106680);f=l+8|0;if(!(a[f>>2]|0))a[f>>2]=eR(r)|0;if(true)r=0;else{}if(!((Or(e,i,r)|0)<<24>>24))iR(i,r);do{if(r|0){f=a[n>>2]|0;e=a[15712]|0;r=a[l>>2]|0;if(!f){a[c>>2]=r;f3(e,106737,c)|0;break}else{a[t>>2]=r;a[t+4>>2]=f;f3(e,106705,t)|0;break}}}while(0);c=i+32|0;a[A>>2]=a[c>>2];a[A+4>>2]=a[c+4>>2];a[A+8>>2]=a[c+8>>2];a[A+12>>2]=a[c+12>>2];k=s;return}function eR(A){A=A|0;var e=0;e=a[47301]|0;if((e|0)!=0?(p1(e,A)|0)==0:0)A=a[47310]|0;else{L2(e);a[47301]=b3(A)|0;A=i8(189204,22332,35,36,95)|0;a[47310]=A}return A|0}function iR(A,e){A=A|0;e=e|0;var i=0,f=0.0,n=0,l=0.0,t=0,c=0.0;t=a[A+4>>2]|0;i=a[t>>2]|0;l=+s[t+16>>3];t=A+32|0;s[t>>3]=0.0;s[A+40>>3]=l*1.2;s[A+16>>3]=0.0;s[A+24>>3]=l*.1;a[A+8>>2]=0;a[A+12>>2]=0;if(T1(i,106771,4)|0)if((T1(i,106776,5)|0)!=0?(T1(i,106782,9)|0)!=0:0){n=4248;i=106792}else{n=8344;i=106828}else{n=6296;i=106809}if(e|0)a[e>>2]=i;i=a[A>>2]|0;if(i|0){f=0.0;while(1){A=r[i>>0]|0;if(!(A<<24>>24))break;c=f+ +s[n+((A&255)<<3)>>3];s[t>>3]=c;i=i+1|0;f=c}s[t>>3]=f*l}return}function rR(A,e){A=A|0;e=e|0;return p1(a[A>>2]|0,a[e>>2]|0)|0}function fR(A){A=A|0;var e=0;e=A+108|0;a[e>>2]=0;a[A+112>>2]=32;a[A+116>>2]=-1;a[A+120>>2]=33;a[A+124>>2]=63;a[A+128>>2]=55;a[A+132>>2]=0;a[A+136>>2]=0;a[A+140>>2]=0;e=jk(e,a[4581]|0)|0;a[A+144>>2]=e;return e|0}function aR(A,e,i){A=A|0;e=e|0;i=i|0;i=y2(1,32)|0;A=a[e>>2]|0;if(A|0)a[i>>2]=b3(A)|0;A=a[e+4>>2]|0;if(A|0)a[i+4>>2]=b3(A)|0;a[i+24>>2]=a[e+24>>2]&127;s[i+16>>3]=+s[e+16>>3];a[i+8>>2]=a[e+8>>2];return i|0}function nR(A,e,i){A=A|0;e=e|0;i=i|0;L2(a[e>>2]|0);L2(a[e+4>>2]|0);L2(e);return}function lR(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,n=0.0,l=0,t=0;A=a[e>>2]|0;r=a[i>>2]|0;l=(r|0)==0;if(!A)if(l)t=5;else A=-1;else if(!l){A=A1(A,r)|0;if(!A)t=5}else A=1;do{if((t|0)==5){A=a[e+4>>2]|0;r=a[i+4>>2]|0;l=(r|0)==0;if(!A){if(!l){A=-1;break}}else{if(l){A=1;break}A=A1(A,r)|0;if(A|0)break}A=(a[e+24>>2]&127)-(a[i+24>>2]&127)|0;if(!A){n=+s[e+16>>3];f=+s[i+16>>3];if(n f&1}}}while(0);return A|0}function tR(){le(189244)|0;return}function cR(){var A=0,e=0;e=k;k=k+16|0;A=e;le(A|0)|0;k=e;return+(+((a[A+4>>2]|0)+(a[A>>2]|0)-(a[47311]|0)-(a[47312]|0)|0)*.016666666666666666)}function sR(A){A=A|0;var e=0,i=0;e=qF(16)|0;A=(A|0)>2?A:2;i=qF(A<<2)|0;a[e>>2]=i;a[e+12>>2]=i;a[e+8>>2]=i;a[e+4>>2]=i+(A<<2);return e|0}function bR(A){A=A|0;L2(a[A>>2]|0);L2(A);return}function uR(A,e){A=A|0;e=e|0;var i=0,r=0;i=A+12|0;r=a[i>>2]|0;a[i>>2]=r+4;a[r>>2]=e;if((a[i>>2]|0)>>>0>=(a[A+4>>2]|0)>>>0)a[i>>2]=a[A>>2];return}function wR(A){A=A|0;var e=0,i=0,r=0;i=A+8|0;e=a[i>>2]|0;if((e|0)!=(a[A+12>>2]|0)){r=e+4|0;a[i>>2]=r;e=a[e>>2]|0;if(r>>>0>=(a[A+4>>2]|0)>>>0)a[i>>2]=a[A>>2]}else e=0;return e|0}function kR(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0;t=k;k=k+16|0;n=t;if(((e|0)!=0?(l=Uo(A,e)|0,(l|0)!=0):0)?(r[l>>0]|0)!=0:0){e=n3(l,n,10)|0;i=(l|0)==(a[n>>2]|0)?i:(e|0)<(f|0)?f:e}k=t;return i|0}function oR(A,e,i,f){A=A|0;e=e|0;i=+i;f=+f;var n=0,l=0,t=0,c=0.0;t=k;k=k+16|0;n=t;if(((A|0)!=0&(e|0)!=0?(l=Uo(A,e)|0,(l|0)!=0):0)?(r[l>>0]|0)!=0:0){c=+A8(l,n);i=(l|0)==(a[n>>2]|0)?i:c 0.0)){e=+oR(A,Yo(A,0,107638,0)|0,-1.0,0.0);e=e==0.0?72.0:e}return+e}function dR(A,e,i){A=A|0;e=e|0;i=i|0;if((A|0)!=0&(e|0)!=0)i=Uo(A,e)|0;return i|0}function BR(A,e,i){A=A|0;e=e|0;i=i|0;A=dR(A,e,i)|0;if((A|0)!=0?(r[A>>0]|0)!=0:0)i=A;return i|0}function gR(A,e,i){A=A|0;e=e|0;i=i|0;if(!e)A=i&255;else A=vR(Uo(A,e)|0)|0;return A|0}function vR(A){A=A|0;return ER(A,0)|0}function ER(A,e){A=A|0;e=e|0;var i=0;if((A|0)!=0?(i=r[A>>0]|0,i<<24>>24!=0):0)if((p1(A,137308)|0)!=0?(p1(A,107649)|0)!=0:0)if((p1(A,107652)|0)!=0?(p1(A,107657)|0)!=0:0){if(((i<<24>>24)+-48|0)>>>0<10)e=(q3(A)|0)&255}else e=1;else e=0;return e|0}function CR(A){A=A|0;var e=0,i=0;while(1){e=(a[A+16>>2]|0)+220|0;i=a[e>>2]|0;if(!((i|0)!=(A|0)&(i|0)!=0))break;A=a[(a[i+16>>2]|0)+220>>2]|0;if(!A){A=i;continue}a[e>>2]=A}return A|0}function IR(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;if((A|0)!=(e|0)){i=a[A+16>>2]|0;r=i+220|0;if(!(a[r>>2]|0)){a[r>>2]=A;a[i+216>>2]=1}else A=CR(A)|0;i=a[e+16>>2]|0;r=i+220|0;if(!(a[r>>2]|0)){a[r>>2]=e;a[i+216>>2]=1}else{i=CR(e)|0;e=i;i=a[i+16>>2]|0}n=A+16|0;r=a[n>>2]|0;f=e+16|0;l=(a[r+120>>2]|0)>(a[i+120>>2]|0);A=l?e:A;a[(l?r:i)+220>>2]=A;r=(a[(l?f:n)>>2]|0)+216|0;a[r>>2]=(a[r>>2]|0)+(a[(a[(l?n:f)>>2]|0)+216>>2]|0)}return A|0}function ZR(A){A=A|0;A=a[A+16>>2]|0;a[A+216>>2]=1;a[A+220>>2]=0;r[A+159>>0]=0;return}function GR(A,e){A=A|0;e=e|0;if((CR(A)|0)==(A|0)){A=a[A+16>>2]|0;a[A+220>>2]=e;e=(a[e+16>>2]|0)+216|0;a[e>>2]=(a[e>>2]|0)+(a[A+216>>2]|0);return}else gA(107669,107661,194,107685)}function mR(A,e){A=A|0;e=e|0;var i=0.0;e=a[(a[e+16>>2]|0)+132>>2]|0;i=+s[e+8>>3]*72.0;s[A>>3]=+s[e>>3]*72.0;s[A+8>>3]=i;return}function QR(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=+r;f=f|0;n=n|0;var l=0,t=0,c=0,b=0.0,u=0,w=0,o=0;w=k;k=k+576|0;u=w;l=0;while(1){if((l|0)>(i|0))break;c=u+(l<<4)|0;t=e+(l<<4)|0;a[c>>2]=a[t>>2];a[c+4>>2]=a[t+4>>2];a[c+8>>2]=a[t+8>>2];a[c+12>>2]=a[t+12>>2];l=l+1|0}b=1.0-r;l=1;while(1){if((l|0)>(i|0))break;t=i-l|0;c=l+-1|0;e=0;while(1){if((e|0)>(t|0))break;o=e+1|0;s[u+(l*96|0)+(e<<4)>>3]=+s[u+(c*96|0)+(o<<4)>>3]*r+ +s[u+(c*96|0)+(e<<4)>>3]*b;s[u+(l*96|0)+(e<<4)+8>>3]=+s[u+(c*96|0)+(o<<4)+8>>3]*r+ +s[u+(c*96|0)+(e<<4)+8>>3]*b;e=o}l=l+1|0}A:do{if(f|0){l=0;while(1){if((l|0)>(i|0))break A;o=f+(l<<4)|0;c=u+(l*96|0)|0;a[o>>2]=a[c>>2];a[o+4>>2]=a[c+4>>2];a[o+8>>2]=a[c+8>>2];a[o+12>>2]=a[c+12>>2];l=l+1|0}}}while(0);A:do{if(n|0){l=0;while(1){if((l|0)>(i|0))break A;o=n+(l<<4)|0;f=u+((i-l|0)*96|0)+(l<<4)|0;a[o>>2]=a[f>>2];a[o+4>>2]=a[f+4>>2];a[o+8>>2]=a[f+8>>2];a[o+12>>2]=a[f+12>>2];l=l+1|0}}}while(0);o=u+(i*96|0)|0;a[A>>2]=a[o>>2];a[A+4>>2]=a[o+4>>2];a[A+8>>2]=a[o+8>>2];a[A+12>>2]=a[o+12>>2];k=w;return}function LR(A){A=A|0;var e=0,i=0,f=0,n=0;i=0;do{e=a[47315]|0;f=e+1024|0;if((e-i|0)<1024){a[47315]=f;f=eV(a[47316]|0,f)|0;a[47316]=f;e=a[47315]|0}else f=a[47316]|0;e=p4(f+i|0,e-i|0,A)|0;if(!e){n=6;break}i=(P2(e)|0)+i|0;e=a[47316]|0}while((r[e+(i+-1)>>0]|0)!=10);if((n|0)==6)e=a[47316]|0;return((i|0)>0?e:0)|0}function yR(A){A=A|0;var e=0,i=0,f=0;f=k;k=k+16|0;do{if((A|0)!=0?(r[A>>0]|0)!=0:0)if(true){e=a[47133]|0;i=a[47318]|0;if((a[47317]|0)==(e|0))e=i;else{if(i){L2(a[i>>2]|0);L2(a[47318]|0);a[47318]=0;e=a[47133]|0}a[47317]=e;if(!e)break;if(!(r[e>>0]|0))break;e=WR(e)|0;a[47318]=e}if(!((r[A>>0]|0)!=47&(e|0)!=0))break;A=zR(e,a[47319]|0,A)|0;break}else{}else A=0}while(0);k=f;return A|0}function WR(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;r=0;f=0;n=0;e=b3(A)|0;i=0;while(1){e=t3(e,107984)|0;if(!e)break;A=(n<<2)+8|0;if(!f)A=$F(A)|0;else A=eV(i,A)|0;a[A+(n<<2)>>2]=e;f=P2(e)|0;r=r>>>0>f>>>0?r:f;f=A;n=n+1|0;e=0;i=A}a[f+(n<<2)>>2]=0;a[47319]=r;return f|0}function zR(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;n=k;k=k+16|0;r=n;l=a[47320]|0;a[47320]=W2(l,e+2+(P2(i)|0)|0)|0;while(1){e=a[A>>2]|0;if(!e){A=0;break}l=a[47320]|0;a[r>>2]=e;a[r+4>>2]=107982;a[r+8>>2]=i;S4(l,107975,r)|0;if(!(M3(a[47320]|0,4)|0)){f=4;break}else A=A+4|0}if((f|0)==4)A=a[47320]|0;k=n;return A|0}function YR(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0;n=(A|0)==0;f=0;while(1){l=a[e+(f<<2)>>2]|0;if(!l)break;if((!n?(r[A>>0]|0)==(r[l>>0]|0):0)?(A1(A,l)|0)==0:0)break;f=f+1|0}return a[i+(f<<2)>>2]|0}function DR(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0.0,l=0.0,t=0.0,c=0.0,b=0.0,u=0.0,w=0.0,o=0.0,h=0.0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0;G=k;k=k+80|0;I=G+16|0;Z=G;v=a[e+4>>2]|0;E=a[e>>2]|0;C=i+8|0;f=0;r=-1;n=1.e+38;e=-1;while(1){if((f|0)>=(v|0))break;B=a[E+(f*48|0)>>2]|0;g=a[E+(f*48|0)+4>>2]|0;d=0;while(1){if((d|0)>=(g|0))break;h=+s[B+(d<<4)>>3]-+s[i>>3];o=+s[B+(d<<4)+8>>3]-+s[C>>3];h=o*o+h*h;m=(r|0)==-1|h >2]|0;r=r+(((r|0)==((a[E+(e*48|0)+4>>2]|0)+-1|0))<<31>>31)|0;r=r-((r|0)%3|0)|0;e=0;while(1){if((e|0)==4)break;Q=e+r|0;s[I+(e<<4)>>3]=+s[f+(Q<<4)>>3];s[I+(e<<4)+8>>3]=+s[f+(Q<<4)+8>>3];e=e+1|0}h=+s[i>>3];c=+s[I>>3]-h;w=+s[C>>3];o=+s[I+8>>3]-w;t=+s[I+48>>3]-h;u=+s[I+56>>3]-w;e=Z+8|0;n=1.0;l=0.0;t=u*u+t*t;c=o*o+c*c;while(1){o=(n+l)*.5;QR(Z,I,3,o,0,0);b=+s[Z>>3];u=+s[e>>3];if(+W(+(c-t))<1.0)break;if(+W(+(n-l))<1.0e-05)break;Q=c >3]=b;s[A+8>>3]=u;k=G;return}function MR(){return 0}function FR(A){A=A|0;var e=0.0,i=0,f=0,n=0,l=0,t=0,c=0,b=0;e=+oR(A,a[47146]|0,.75,.01);n=A+16|0;s[(a[n>>2]|0)+32>>3]=e;e=+oR(A,a[47145]|0,.5,.02);s[(a[n>>2]|0)+40>>3]=e;b=mp(BR(A,a[47147]|0,107986)|0,A)|0;a[(a[n>>2]|0)+8>>2]=b;b=Uo(A,a[47154]|0)|0;e=+oR(A,a[47150]|0,14.0,1.0);i=BR(A,a[47151]|0,107994)|0;f=BR(A,a[47152]|0,137314)|0;l=(tB(b)|0)!=0;c=(bp(A)|0)==2;l=HF(A,b,(c?4:0)|(l?2:0),e,i,f)|0;a[(a[n>>2]|0)+104>>2]=l;l=a[47155]|0;if((l|0?(t=Uo(A,l)|0,t|0):0)?r[t>>0]|0:0){b=(tB(t)|0)!=0;b=HF(A,t,b?2:0,e,i,f)|0;a[(a[n>>2]|0)+108>>2]=b;b=(a[(Id(A)|0)+16>>2]|0)+113|0;r[b>>0]=r[b>>0]|16}c=(kR(A,a[47158]|0,0,0)|0)&255;b=a[n>>2]|0;r[b+144>>0]=c;F5[a[a[(a[b+8>>2]|0)+4>>2]>>2]&127](A);return}function VR(A){A=A|0;var e=0,i=0,f=0,n=0,l=0.0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0;E=k;k=k+112|0;b=E+96|0;u=E+80|0;B=E+40|0;v=E;d=A+48|0;o=Id(a[((a[A>>2]&3|0)==3?A:d)+40>>2]|0)|0;n=b+8|0;a[n>>2]=0;w=u+8|0;a[w>>2]=0;e=a[47182]|0;if(((e|0)!=0?(i=Uo(A,e)|0,(i|0)!=0):0)?(r[i>>0]|0)!=0:0){JR(A,b);g=(tB(i)|0)!=0;l=+s[b>>3];f=a[n>>2]|0;e=a[b+12>>2]|0;i=HF(A,i,g?2:0,l,f,e)|0;g=A+16|0;a[(a[g>>2]|0)+96>>2]=i;i=(a[o+16>>2]|0)+113|0;r[i>>0]=r[i>>0]|1;i=vR(dR(A,a[47192]|0,137308)|0)|0;r[(a[g>>2]|0)+114>>0]=i;g=1;i=f}else{g=0;e=0;l=0.0;i=0}f=a[47183]|0;if((f|0?(t=Uo(A,f)|0,t|0):0)?r[t>>0]|0:0){if(!i){JR(A,b);l=+s[b>>3];i=a[n>>2]|0;e=a[b+12>>2]|0}n=(tB(t)|0)!=0;t=HF(A,t,n?2:0,l,i,e)|0;a[(a[A+16>>2]|0)+108>>2]=t;t=(a[o+16>>2]|0)+113|0;r[t>>0]=r[t>>0]|32}e=a[47197]|0;if(((e|0)!=0?(c=Uo(A,e)|0,(c|0)!=0):0)?(r[c>>0]|0)!=0:0){pR(A,b,u);t=(tB(c)|0)!=0;l=+s[u>>3];e=a[w>>2]|0;i=a[u+12>>2]|0;c=HF(A,c,t?2:0,l,e,i)|0;a[(a[A+16>>2]|0)+100>>2]=c;c=(a[o+16>>2]|0)+113|0;r[c>>0]=r[c>>0]|2}else{i=0;l=0.0;e=0}f=a[47198]|0;if((f|0?(h=Uo(A,f)|0,h|0):0)?r[h>>0]|0:0){if(!e){pR(A,b,u);i=a[u+12>>2]|0;l=+s[u>>3];e=a[w>>2]|0}w=(tB(h)|0)!=0;h=HF(A,h,w?2:0,l,e,i)|0;a[(a[A+16>>2]|0)+104>>2]=h;h=(a[o+16>>2]|0)+113|0;r[h>>0]=r[h>>0]|4}e=Ho(A,111455)|0;e=e|0?e:195059;if(r[e>>0]|0)r[(a[(a[((a[A>>2]&3|0)==3?A:d)+40>>2]|0)+16>>2]|0)+145>>0]=1;n=A+16|0;f=(a[n>>2]|0)+16|0;i=a[((a[A>>2]&3|0)==3?A:d)+40>>2]|0;NR(B,a[(a[(a[(a[i+16>>2]|0)+8>>2]|0)+4>>2]|0)+8>>2]|0,i,e);e=B;i=f+40|0;do{a[f>>2]=a[e>>2];f=f+4|0;e=e+4|0}while((f|0)<(i|0));if((RR(A,a[47204]|0)|0)<<24>>24)r[(a[n>>2]|0)+46>>0]=0;e=Ho(A,111464)|0;e=e|0?e:195059;if(!(r[e>>0]|0))i=A+-48|0;else{i=A+-48|0;r[(a[(a[((a[A>>2]&3|0)==2?A:i)+40>>2]|0)+16>>2]|0)+145>>0]=1}f=(a[n>>2]|0)+56|0;i=a[((a[A>>2]&3|0)==2?A:i)+40>>2]|0;NR(v,a[(a[(a[(a[i+16>>2]|0)+8>>2]|0)+4>>2]|0)+8>>2]|0,i,e);e=v;i=f+40|0;do{a[f>>2]=a[e>>2];f=f+4|0;e=e+4|0}while((f|0)<(i|0));if((RR(A,a[47205]|0)|0)<<24>>24)r[(a[n>>2]|0)+86>>0]=0;k=E;return g|0}function JR(A,e){A=A|0;e=e|0;s[e>>3]=+oR(A,a[47179]|0,14.0,1.0);a[e+8>>2]=BR(A,a[47180]|0,107994)|0;a[e+12>>2]=BR(A,a[47181]|0,137314)|0;return}function pR(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=e+8|0;if(!(a[r>>2]|0))JR(A,e);s[i>>3]=+oR(A,a[47199]|0,+s[e>>3],1.0);a[i+8>>2]=BR(A,a[47200]|0,a[r>>2]|0)|0;a[i+12>>2]=BR(A,a[47201]|0,a[e+12>>2]|0)|0;return}function NR(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0;b=k;k=k+128|0;s=b+80|0;l=b+40|0;n=b;if((f|0)!=0?(c=G1(f,58)|0,(c|0)!=0):0){r[c>>0]=0;t=c+1|0;N5[e&31](l,i,f,t);i=s;n=l;e=i+36|0;do{a[i>>2]=a[n>>2];i=i+4|0;n=n+4|0}while((i|0)<(e|0));r[c>>0]=58;f=t}else{N5[e&31](n,i,f,0);i=s;e=i+36|0;do{a[i>>2]=a[n>>2];i=i+4|0;n=n+4|0}while((i|0)<(e|0))}i=A;n=s;e=i+36|0;do{a[i>>2]=a[n>>2];i=i+4|0;n=n+4|0}while((i|0)<(e|0));a[A+36>>2]=f;k=b;return}function RR(A,e){A=A|0;e=e|0;var i=0;if(((e|0)!=0?(i=Uo(A,e)|0,(i|0)!=0):0)?(r[i>>0]|0)!=0:0)A=(vR(i)|0)<<24>>24==0&1;else A=0;return A|0}function XR(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0.0,w=0.0;c=k;k=k+32|0;l=c;t=a[e+8>>2]|0;i=a[e+4>>2]|0;i=(a[e+44>>2]|0)+((U((i|0)>1?i+-1|0:0,t)|0)<<4)|0;r=l+16|0;a[r>>2]=a[i>>2];a[r+4>>2]=a[i+4>>2];a[r+8>>2]=a[i+8>>2];a[r+12>>2]=a[i+12>>2];a[l>>2]=a[i>>2];a[l+4>>2]=a[i+4>>2];a[l+8>>2]=a[i+8>>2];a[l+12>>2]=a[i+12>>2];f=l+8|0;n=l+24|0;e=1;while(1){if((e|0)>=(t|0))break;b=i+(e<<4)|0;w=+s[b>>3];s[l>>3]=+s[(+s[l>>3] >3];u=+s[b+8>>3];s[f>>3]=+s[(+s[f>>3]>3];s[r>>3]=+s[(+s[r>>3]>w?r:b)>>3];s[n>>3]=+s[(+s[n>>3]>u?r:b)+8>>3];e=e+1|0}a[A>>2]=a[l>>2];a[A+4>>2]=a[l+4>>2];a[A+8>>2]=a[l+8>>2];a[A+12>>2]=a[l+12>>2];a[A+16>>2]=a[l+16>>2];a[A+20>>2]=a[l+20>>2];a[A+24>>2]=a[l+24>>2];a[A+28>>2]=a[l+28>>2];k=c;return}function HR(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;i=k;k=k+64|0;n=i+32|0;r=i;f=a[A+16>>2]|0;A=f+16|0;f=a[f+116>>2]&1;a[n>>2]=a[A>>2];a[n+4>>2]=a[A+4>>2];a[n+8>>2]=a[A+8>>2];a[n+12>>2]=a[A+12>>2];a[n+16>>2]=a[A+16>>2];a[n+20>>2]=a[A+20>>2];a[n+24>>2]=a[A+24>>2];a[n+28>>2]=a[A+28>>2];UR(r,n,e,f);a[A>>2]=a[r>>2];a[A+4>>2]=a[r+4>>2];a[A+8>>2]=a[r+8>>2];a[A+12>>2]=a[r+12>>2];a[A+16>>2]=a[r+16>>2];a[A+20>>2]=a[r+20>>2];a[A+24>>2]=a[r+24>>2];a[A+28>>2]=a[r+28>>2];k=i;return}function UR(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,n=0.0,l=0.0,t=0,c=0.0,b=0.0,u=0.0;n=+s[i+56>>3];b=+s[i+64>>3];t=r<<24>>24==0;c=+s[i+24>>3];l=+s[i+32>>3];u=(t?c:l)*.5;f=n-u;n=u+n;if(f<+s[e>>3])s[e>>3]=f;r=e+16|0;if(n>+s[r>>3])s[r>>3]=n;n=(t?l:c)*.5;f=b-n;n=n+b;r=e+8|0;if(f<+s[r>>3])s[r>>3]=f;r=e+24|0;if(n>+s[r>>3])s[r>>3]=n;a[A>>2]=a[e>>2];a[A+4>>2]=a[e+4>>2];a[A+8>>2]=a[e+8>>2];a[A+12>>2]=a[e+12>>2];a[A+16>>2]=a[e+16>>2];a[A+20>>2]=a[e+20>>2];a[A+24>>2]=a[e+24>>2];a[A+28>>2]=a[e+28>>2];return}function xR(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0.0,N=0.0,R=0.0,X=0.0;J=k;k=k+448|0;D=J+416|0;g=J+384|0;v=J+304|0;V=J+256|0;Y=J+192|0;Q=J+144|0;L=J+96|0;e=J+400|0;i=J+368|0;f=J+352|0;n=J+336|0;E=J+288|0;C=J+224|0;I=J+160|0;Z=J+112|0;G=J+64|0;m=J+32|0;M=J;F=A+16|0;if((gh(A)|0)==0?(a[(a[F>>2]|0)+180>>2]|0)==0:0){TR(e,0.0,0.0);a[V>>2]=a[e>>2];a[V+4>>2]=a[e+4>>2];a[V+8>>2]=a[e+8>>2];a[V+12>>2]=a[e+12>>2];V=V+16|0;TR(i,0.0,0.0);a[V>>2]=a[i>>2];a[V+4>>2]=a[i+4>>2];a[V+8>>2]=a[i+8>>2];a[V+12>>2]=a[i+12>>2]}else{TR(f,2147483647.0,2147483647.0);a[V>>2]=a[f>>2];a[V+4>>2]=a[f+4>>2];a[V+8>>2]=a[f+8>>2];a[V+12>>2]=a[f+12>>2];z=V+16|0;TR(n,-2147483647.0,-2147483647.0);a[z>>2]=a[n>>2];a[z+4>>2]=a[n+4>>2];a[z+8>>2]=a[n+8>>2];a[z+12>>2]=a[n+12>>2];w=L+8|0;o=v+16|0;y=V+8|0;h=v+8|0;W=V+24|0;d=v+24|0;B=Q+8|0;u=cd(A)|0;while(1){if(!u)break;mR(Q,u);e=u+16|0;b=a[e>>2]|0;s[L>>3]=(+s[b+96>>3]+ +s[b+88>>3])*.5;s[w>>3]=+s[b+80>>3]*.5;a[g>>2]=a[Q>>2];a[g+4>>2]=a[Q+4>>2];a[g+8>>2]=a[Q+8>>2];a[g+12>>2]=a[Q+12>>2];a[D>>2]=a[L>>2];a[D+4>>2]=a[L+4>>2];a[D+8>>2]=a[L+8>>2];a[D+12>>2]=a[L+12>>2];jR(v,g,D);a[g>>2]=a[Q>>2];a[g+4>>2]=a[Q+4>>2];a[g+8>>2]=a[Q+8>>2];a[g+12>>2]=a[Q+12>>2];a[D>>2]=a[L>>2];a[D+4>>2]=a[L+4>>2];a[D+8>>2]=a[L+8>>2];a[D+12>>2]=a[L+12>>2];PR(E,g,D);a[o>>2]=a[E>>2];a[o+4>>2]=a[E+4>>2];a[o+8>>2]=a[E+8>>2];a[o+12>>2]=a[E+12>>2];s[V>>3]=+s[(+s[V>>3]<+s[v>>3]?V:v)>>3];s[y>>3]=+s[(+s[y>>3]<+s[h>>3]?V:v)+8>>3];s[z>>3]=+s[(+s[z>>3]>+s[o>>3]?V:v)+16>>3];s[W>>3]=+s[(+s[W>>3]>+s[d>>3]?V:v)+24>>3];e=a[(a[e>>2]|0)+108>>2]|0;if(e|0?r[e+81>>0]|0:0){b=a[(a[F>>2]|0)+116>>2]&1;a[D>>2]=a[V>>2];a[D+4>>2]=a[V+4>>2];a[D+8>>2]=a[V+8>>2];a[D+12>>2]=a[V+12>>2];a[D+16>>2]=a[V+16>>2];a[D+20>>2]=a[V+20>>2];a[D+24>>2]=a[V+24>>2];a[D+28>>2]=a[V+28>>2];UR(C,D,e,b);a[V>>2]=a[C>>2];a[V+4>>2]=a[C+4>>2];a[V+8>>2]=a[C+8>>2];a[V+12>>2]=a[C+12>>2];a[V+16>>2]=a[C+16>>2];a[V+20>>2]=a[C+20>>2];a[V+24>>2]=a[C+24>>2];a[V+28>>2]=a[C+28>>2]}b=Oo(A,u)|0;while(1){if(!b)break;c=b+16|0;e=a[c>>2]|0;t=e+8|0;i=a[t>>2]|0;if(i|0){l=0;while(1){if((l|0)<(a[i+4>>2]|0))n=0;else break;while(1){f=a[i>>2]|0;if((n|0)>=(a[f+(l*48|0)+4>>2]|0))break;i=(a[f+(l*48|0)>>2]|0)+(n<<4)|0;a[Q>>2]=a[i>>2];a[Q+4>>2]=a[i+4>>2];a[Q+8>>2]=a[i+8>>2];a[Q+12>>2]=a[i+12>>2];N=+s[Q>>3];s[V>>3]=+s[(+s[V>>3] >3];p=+s[B>>3];s[y>>3]=+s[(+s[y>>3] >3];s[z>>3]=+s[(+s[z>>3]>N?z:Q)>>3];s[W>>3]=+s[(+s[W>>3]>p?z:Q)+8>>3];n=n+1|0;i=a[t>>2]|0}l=l+1|0}i=a[e+96>>2]|0;if((i|0)!=0?(r[i+81>>0]|0)!=0:0){e=a[(a[F>>2]|0)+116>>2]&1;a[D>>2]=a[V>>2];a[D+4>>2]=a[V+4>>2];a[D+8>>2]=a[V+8>>2];a[D+12>>2]=a[V+12>>2];a[D+16>>2]=a[V+16>>2];a[D+20>>2]=a[V+20>>2];a[D+24>>2]=a[V+24>>2];a[D+28>>2]=a[V+28>>2];UR(I,D,i,e);a[V>>2]=a[I>>2];a[V+4>>2]=a[I+4>>2];a[V+8>>2]=a[I+8>>2];a[V+12>>2]=a[I+12>>2];a[V+16>>2]=a[I+16>>2];a[V+20>>2]=a[I+20>>2];a[V+24>>2]=a[I+24>>2];a[V+28>>2]=a[I+28>>2];e=a[c>>2]|0}i=a[e+100>>2]|0;if((i|0)!=0?(r[i+81>>0]|0)!=0:0){e=a[(a[F>>2]|0)+116>>2]&1;a[D>>2]=a[V>>2];a[D+4>>2]=a[V+4>>2];a[D+8>>2]=a[V+8>>2];a[D+12>>2]=a[V+12>>2];a[D+16>>2]=a[V+16>>2];a[D+20>>2]=a[V+20>>2];a[D+24>>2]=a[V+24>>2];a[D+28>>2]=a[V+28>>2];UR(Z,D,i,e);a[V>>2]=a[Z>>2];a[V+4>>2]=a[Z+4>>2];a[V+8>>2]=a[Z+8>>2];a[V+12>>2]=a[Z+12>>2];a[V+16>>2]=a[Z+16>>2];a[V+20>>2]=a[Z+20>>2];a[V+24>>2]=a[Z+24>>2];a[V+28>>2]=a[Z+28>>2];e=a[c>>2]|0}i=a[e+104>>2]|0;if((i|0)!=0?(r[i+81>>0]|0)!=0:0){e=a[(a[F>>2]|0)+116>>2]&1;a[D>>2]=a[V>>2];a[D+4>>2]=a[V+4>>2];a[D+8>>2]=a[V+8>>2];a[D+12>>2]=a[V+12>>2];a[D+16>>2]=a[V+16>>2];a[D+20>>2]=a[V+20>>2];a[D+24>>2]=a[V+24>>2];a[D+28>>2]=a[V+28>>2];UR(G,D,i,e);a[V>>2]=a[G>>2];a[V+4>>2]=a[G+4>>2];a[V+8>>2]=a[G+8>>2];a[V+12>>2]=a[G+12>>2];a[V+16>>2]=a[G+16>>2];a[V+20>>2]=a[G+20>>2];a[V+24>>2]=a[G+24>>2];a[V+28>>2]=a[G+28>>2];e=a[c>>2]|0}e=a[e+108>>2]|0;if(e|0?r[e+81>>0]|0:0){c=a[(a[F>>2]|0)+116>>2]&1;a[D>>2]=a[V>>2];a[D+4>>2]=a[V+4>>2];a[D+8>>2]=a[V+8>>2];a[D+12>>2]=a[V+12>>2];a[D+16>>2]=a[V+16>>2];a[D+20>>2]=a[V+20>>2];a[D+24>>2]=a[V+24>>2];a[D+28>>2]=a[V+28>>2];UR(m,D,e,c);a[V>>2]=a[m>>2];a[V+4>>2]=a[m+4>>2];a[V+8>>2]=a[m+8>>2];a[V+12>>2]=a[m+12>>2];a[V+16>>2]=a[m+16>>2];a[V+20>>2]=a[m+20>>2];a[V+24>>2]=a[m+24>>2];a[V+28>>2]=a[m+28>>2]}}b=_o(A,b)|0}u=sd(A,u)|0}e=a[F>>2]|0;f=a[e+180>>2]|0;n=e+184|0;l=Y+8|0;t=Y+16|0;c=Y+24|0;i=1;while(1){if((i|0)>(f|0))break;X=+s[(a[(a[(a[n>>2]|0)+(i<<2)>>2]|0)+16>>2]|0)+16>>3];s[Y>>3]=X;L=a[(a[(a[n>>2]|0)+(i<<2)>>2]|0)+16>>2]|0;R=+s[L+24>>3];s[l>>3]=R;p=+s[L+32>>3];s[t>>3]=p;N=+s[L+40>>3];s[c>>3]=N;s[V>>3]=+s[(+s[V>>3]
>3];s[y>>3]=+s[(+s[y>>3] >3];s[z>>3]=+s[(+s[z>>3]>p?V:Y)+16>>3];s[W>>3]=+s[(+s[W>>3]>N?V:Y)+24>>3];i=i+1|0}i=a[e+12>>2]|0;if((i|0)!=0?(r[i+81>>0]|0)!=0:0){e=a[e+116>>2]&1;a[D>>2]=a[V>>2];a[D+4>>2]=a[V+4>>2];a[D+8>>2]=a[V+8>>2];a[D+12>>2]=a[V+12>>2];a[D+16>>2]=a[V+16>>2];a[D+20>>2]=a[V+20>>2];a[D+24>>2]=a[V+24>>2];a[D+28>>2]=a[V+28>>2];UR(M,D,i,e);a[V>>2]=a[M>>2];a[V+4>>2]=a[M+4>>2];a[V+8>>2]=a[M+8>>2];a[V+12>>2]=a[M+12>>2];a[V+16>>2]=a[M+16>>2];a[V+20>>2]=a[M+20>>2];a[V+24>>2]=a[M+24>>2];a[V+28>>2]=a[M+28>>2];e=a[F>>2]|0}F=e+16|0;a[F>>2]=a[V>>2];a[F+4>>2]=a[V+4>>2];a[F+8>>2]=a[V+8>>2];a[F+12>>2]=a[V+12>>2];a[F+16>>2]=a[V+16>>2];a[F+20>>2]=a[V+20>>2];a[F+24>>2]=a[V+24>>2];a[F+28>>2]=a[V+28>>2]}k=J;return}function TR(A,e,i){A=A|0;e=+e;i=+i;s[A>>3]=e;s[A+8>>3]=i;return}function jR(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;r=+s[e+8>>3]-+s[i+8>>3];s[A>>3]=+s[e>>3]-+s[i>>3];s[A+8>>3]=r;return}function PR(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;r=+s[i+8>>3]+ +s[e+8>>3];s[A>>3]=+s[i>>3]+ +s[e>>3];s[A+8>>3]=r;return}function SR(A){A=A|0;if((a[A+60>>2]|0)==(A|0))A=1;else A=(T1(Vh(A)|0,108006,7)|0)==0&1;return A|0}function OR(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;A:do{if(!f)switch(Md(e)|0){case 0:{f=Yo(A,0,i,195059)|0;break A}case 1:{f=Yo(A,1,i,195059)|0;break A}case 2:{f=Yo(A,2,i,195059)|0;break A}default:{f=0;break A}}}while(0);Vo(e,f,r)|0;return f|0}function KR(A){A=A|0;var e=0,i=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+144|0;n=s;t=_R(A)|0;l=jk(23592,a[4581]|0)|0;c=NB(A,108014,1)|0;Td(c,137483,280,1)|0;co(n,128,s+16|0);e=cd(A)|0;while(1){if(!e)break;A:do{if(!(r[(a[e+16>>2]|0)+118>>0]|0)){i=Oo(A,e)|0;while(1){if(!i)break A;qR(i,c,n,l,t);i=_o(A,i)|0}}}while(0);e=sd(A,e)|0}wo(n);Hk(l)|0;i=gh(c)|0;e=cd(c)|0;while(1){if(!e)break;l=sd(c,e)|0;Cd(A,e)|0;e=l}Bh(c)|0;if(i|0){c=(a[A+16>>2]|0)+136|0;f[c>>1]=f[c>>1]|1}Hk(t)|0;k=s;return i|0}function _R(A){A=A|0;var e=0;e=jk(23628,a[4581]|0)|0;lX(A,e);return e|0}function qR(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0;g=k;k=k+48|0;h=g+32|0;o=g+24|0;B=g+16|0;d=g+8|0;s=g;u=a[A>>2]&3;b=a[((u|0)==3?A:A+48|0)+40>>2]|0;u=a[((u|0)==2?A:A+-48|0)+40>>2]|0;do{if(!(r[(a[u+16>>2]|0)+118>>0]|0)){if(!(Z1(Vh(b)|0,108006,7)|0))w=$R(n,Vh(b)|0)|0;else w=0;if(!(Z1(Vh(u)|0,108006,7)|0))t=$R(n,Vh(u)|0)|0;else t=0;l=(w|0)!=0;c=(t|0)!=0;if(l|c){if((w|0)==(t|0)){d=Vh(b)|0;B=Vh(b)|0;a[s>>2]=d;a[s+4>>2]=B;ao(0,108029,s)|0;break}n=AX(f,A)|0;if(n|0){eX(A,a[n+16>>2]|0,a[n+20>>2]|0)|0;break}if(!c)if(!(Dd(w,u)|0)){rX(f,b,u,eX(A,iX(b,w,i,e)|0,u)|0);break}else{d=Vh(u)|0;B=Vh(w)|0;a[h>>2]=d;a[h+4>>2]=B;ao(0,108184,h)|0;break}if(!l)if(!(Dd(t,b)|0)){rX(f,b,u,eX(A,b,iX(u,t,i,e)|0)|0);break}else{d=Vh(b)|0;B=Vh(t)|0;a[o>>2]=d;a[o+4>>2]=B;ao(0,108147,o)|0;break}if(Dd(t,w)|0){h=Vh(w)|0;B=Vh(t)|0;a[d>>2]=h;a[d+4>>2]=B;ao(0,108067,d)|0;break}if(!(Dd(w,t)|0)){B=iX(b,w,i,e)|0;rX(f,b,u,eX(A,B,iX(u,t,i,e)|0)|0);break}else{h=Vh(t)|0;d=Vh(w)|0;a[B>>2]=h;a[B+4>>2]=d;ao(0,108107,B)|0;break}}}}while(0);k=g;return}function $R(A,e){A=A|0;e=e|0;A=y5[a[A>>2]&63](A,e,512)|0;if(!A)A=0;else A=a[A+12>>2]|0;return A|0}function AX(A,e){A=A|0;e=e|0;var i=0,r=0,f=0;i=k;k=k+16|0;r=i;f=a[e>>2]&3;a[r>>2]=a[((f|0)==3?e:e+48|0)+40>>2];a[r+4>>2]=a[((f|0)==2?e:e+-48|0)+40>>2];e=y5[a[A>>2]&63](A,r,512)|0;k=i;return e|0}function eX(A,e,i){A=A|0;e=e|0;i=i|0;i=th(Id(e)|0,e,i,0,1)|0;Td(i,137460,176,1)|0;jo(A,i)|0;return i|0}function iX(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0;s=k;k=k+112|0;n=s;c=s+4|0;uo(i,108221)|0;t=a[47321]|0;a[47321]=t+1;a[n>>2]=t;S4(c,137395,n)|0;uo(i,c)|0;c=i+4|0;n=a[c>>2]|0;t=i+8|0;if(n>>>0>=(a[t>>2]|0)>>>0){so(i,1)|0;n=a[c>>2]|0}a[c>>2]=n+1;r[n>>0]=58;uo(i,Vh(e)|0)|0;l=Zd(e)|0;n=a[c>>2]|0;if(n>>>0>=(a[t>>2]|0)>>>0){so(i,1)|0;n=a[c>>2]|0}r[n>>0]=0;i=a[i>>2]|0;a[c>>2]=i;c=gd(l,i,1)|0;Td(c,137447,304,1)|0;r[(a[c+16>>2]|0)+118>>0]=1;kd(e,c,1)|0;kd(f,A,1)|0;f=Id(c)|0;a[47154]=OR(f,c,108224,195059,a[47154]|0)|0;f=Id(c)|0;a[47157]=OR(f,c,141082,134335,a[47157]|0)|0;f=Id(c)|0;a[47147]=OR(f,c,108230,108236,a[47147]|0)|0;k=s;return c|0}function rX(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;f=k;k=k+32|0;n=f;u=n+8|0;a[u>>2]=e;b=n+12|0;a[b>>2]=i;w=a[r>>2]&3;t=r+48|0;c=n+16|0;a[c>>2]=a[((w|0)==3?r:t)+40>>2];s=r+-48|0;l=n+20|0;a[l>>2]=a[((w|0)==2?r:s)+40>>2];y5[a[A>>2]&63](A,n,1)|0;a[u>>2]=i;a[b>>2]=e;i=a[r>>2]&3;a[c>>2]=a[((i|0)==2?r:s)+40>>2];a[l>>2]=a[((i|0)==3?r:t)+40>>2];y5[a[A>>2]&63](A,n,1)|0;k=f;return}function fX(A,e,i){A=A|0;e=e|0;i=i|0;i=qF(24)|0;a[i+8>>2]=a[e+8>>2];a[i+12>>2]=a[e+12>>2];a[i+16>>2]=a[e+16>>2];a[i+20>>2]=a[e+20>>2];return i|0}function aX(A,e,i){A=A|0;e=e|0;i=i|0;L2(e);return}function nX(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;A=a[e>>2]|0;r=a[i>>2]|0;if(A>>>0>=r>>>0)if(A>>>0>r>>>0)A=1;else{e=a[e+4>>2]|0;i=a[i+4>>2]|0;return(e>>>0>>0?-1:e>>>0>i>>>0&1)|0}else A=-1;return A|0}function lX(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;l=k;k=k+16|0;n=l;f=A+16|0;r=1;while(1){A=a[f>>2]|0;if((r|0)>(a[A+180>>2]|0))break;A=a[(a[A+184>>2]|0)+(r<<2)>>2]|0;i=Vh(A)|0;if(!(y5[a[e>>2]&63](e,i,512)|0)){t=qF(16)|0;a[t+8>>2]=i;a[t+12>>2]=A;y5[a[e>>2]&63](e,t,1)|0}else{a[n>>2]=i;ao(0,108240,n)|0}lX(A,e);r=r+1|0}k=l;return}function tX(A,e,i){A=A|0;e=e|0;i=i|0;L2(e);return}function cX(A){A=A|0;var e=0,i=0,r=0;r=NB(A,108014,1)|0;Td(r,137483,280,1)|0;e=cd(A)|0;while(1){if(!e)break;i=Oo(A,e)|0;while(1){if(!i)break;sX(i,r);i=_o(A,i)|0}e=sd(A,e)|0}e=cd(r)|0;while(1){if(!e)break;i=sd(r,e)|0;bX(e);Cd(A,e)|0;e=i}Bh(r)|0;return}function sX(A,e){A=A|0;e=e|0;var i=0,f=0;i=a[A>>2]&3;f=a[((i|0)==3?A:A+48|0)+40>>2]|0;i=a[((i|0)==2?A:A+-48|0)+40>>2]|0;if(!((r[(a[f+16>>2]|0)+118>>0]|0)==0?!(r[(a[i+16>>2]|0)+118>>0]|0):0)){f=uX(f,e)|0;i=eX(A,f,uX(i,e)|0)|0;f=a[A+16>>2]|0;e=f+8|0;i=a[i+16>>2]|0;a[i+8>>2]=a[e>>2];a[e>>2]=0;e=f+96|0;a[i+96>>2]=a[e>>2];a[e>>2]=0;e=f+108|0;a[i+108>>2]=a[e>>2];a[e>>2]=0;e=f+100|0;a[i+100>>2]=a[e>>2];a[e>>2]=0;f=f+104|0;a[i+104>>2]=a[f>>2];a[f>>2]=0;wX(A)}return}function bX(A){A=A|0;var e=0,i=0,r=0;r=A+16|0;e=a[r>>2]|0;i=a[e+132>>2]|0;if(i){L2(i);e=a[r>>2]|0}i=a[e+8>>2]|0;if(i){F5[a[(a[i+4>>2]|0)+4>>2]&127](A);e=a[r>>2]|0}TF(a[e+104>>2]|0);TF(a[(a[r>>2]|0)+108>>2]|0);Pd(A,137447)|0;return}function uX(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;f=Id(A)|0;A:do{if(r[(a[A+16>>2]|0)+118>>0]|0){kd(e,A,1)|0;A=G1(Vh(A)|0,58)|0;if(!A)gA(111208,107661,1225,108292);e=A+1|0;A=gd(f,e,0)|0;if(!A){A=gd(f,e,1)|0;Td(A,137447,304,1)|0;e=Jo(f,1,0)|0;while(1){if(!e)break A;n=Uo(A,e)|0;i=a[e+12>>2]|0;if((n|0)!=(i|0))Vo(A,e,i)|0;e=Jo(f,1,e)|0}}}}while(0);return A|0}function wX(A){A=A|0;var e=0;e=A+16|0;L2(a[(a[e>>2]|0)+144>>2]|0);kX(A);TF(a[(a[e>>2]|0)+96>>2]|0);TF(a[(a[e>>2]|0)+108>>2]|0);TF(a[(a[e>>2]|0)+100>>2]|0);TF(a[(a[e>>2]|0)+104>>2]|0);Pd(A,137460)|0;return}function kX(A){A=A|0;var e=0,i=0,r=0;r=A+16|0;A=a[r>>2]|0;e=a[A+8>>2]|0;if(e){i=0;while(1){A=a[e>>2]|0;if((i|0)>=(a[e+4>>2]|0))break;L2(a[A+(i*48|0)>>2]|0);i=i+1|0;e=a[(a[r>>2]|0)+8>>2]|0}L2(A);L2(a[(a[r>>2]|0)+8>>2]|0);A=a[r>>2]|0}a[A+8>>2]=0;return}function oX(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0;f=Yo(A,e,i,0)|0;if(!f)f=Yo(A,e,i,r)|0;return f|0}function hX(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;w=k;k=k+32|0;t=w;l=w+8|0;c=w+16|0;b=G1(A,59)|0;u=e+4|0;i=a[u>>2]|0;s=e+8|0;if(i>>>0>=(a[s>>2]|0)>>>0){so(e,1)|0;i=a[u>>2]|0}a[u>>2]=i+1;r[i>>0]=38;if(((b|0)!=0?(f=b-A|0,(f+-2|0)>>>0<=6):0)?(x4(c,A,f)|0,r[c+f>>0]=0,a[l>>2]=c,n=i8(l,23664,252,8,96)|0,(n|0)!=0):0){a[t>>2]=a[n+4>>2];S4(c,137395,t)|0;A=a[u>>2]|0;if(A>>>0>=(a[s>>2]|0)>>>0){so(e,1)|0;A=a[u>>2]|0}a[u>>2]=A+1;r[A>>0]=35;uo(e,c)|0;A=a[u>>2]|0;if(A>>>0>=(a[s>>2]|0)>>>0){so(e,1)|0;A=a[u>>2]|0}a[u>>2]=A+1;r[A>>0]=59;A=b+1|0}k=w;return A|0}function dX(A,e){A=A|0;e=e|0;return A1(a[A>>2]|0,a[e>>2]|0)|0}function BX(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+1072|0;s=h+8|0;c=h;t=h+16|0;w=h+24|0;a[t>>2]=A;if((a[47322]|0)!=(e|0)){a[47322]=e;r[194958]=0}co(w,1024,h+40|0);o=w+4|0;u=w+8|0;while(1){f=A+1|0;a[t>>2]=f;i=r[A>>0]|0;if(!(i<<24>>24))break;do{if((i&255)<192)if(i<<24>>24==38){f=vX(t)|0;if(!f)i=38;else{if(f>>>0<127){i=f&255;break}A=a[o>>2]|0;i=A>>>0>=(a[u>>2]|0)>>>0;if(f>>>0<2047){if(i){so(w,1)|0;A=a[o>>2]|0}a[o>>2]=A+1;r[A>>0]=f>>>6|192;i=(f&63|128)&255;break}if(i){so(w,1)|0;A=a[o>>2]|0}a[o>>2]=A+1;r[A>>0]=f>>>12|224;A=a[o>>2]|0;if(A>>>0>=(a[u>>2]|0)>>>0){so(w,1)|0;A=a[o>>2]|0}a[o>>2]=A+1;r[A>>0]=f>>>6&63|128;i=(f&63|128)&255}}else{l=0;b=9}else if((i&255)>=224)if((i&255)>=240)if((i&255)<248){l=3;b=9}else{if(!(r[194958]|0)){a[c>>2]=Vh(e)|0;ao(0,109707,c)|0;r[194958]=1}l=-1;i=gX(i,w)|0;b=9}else{l=2;b=9}else{l=1;b=9}}while(0);do{if((b|0)==9){b=0;n=0;while(1){if((n|0)>=(l|0)){b=34;break}if((r[f>>0]&-64)<<24>>24!=-128)break;A=a[o>>2]|0;if(A>>>0>=(a[u>>2]|0)>>>0){so(w,1)|0;A=a[o>>2]|0}a[o>>2]=A+1;r[A>>0]=i;n=n+1|0;i=r[f>>0]|0;f=f+1|0}if((b|0)==34){b=0;a[t>>2]=f;break}a[t>>2]=f;if(!(r[194958]|0)){n=Vh(e)|0;a[s>>2]=l+1;a[s+4>>2]=n;ao(0,109828,s)|0;r[194958]=1}i=gX(i,w)|0}}while(0);A=a[o>>2]|0;if(A>>>0>=(a[u>>2]|0)>>>0){so(w,1)|0;A=a[o>>2]|0}a[o>>2]=A+1;r[A>>0]=i;A=a[t>>2]|0}A=a[o>>2]|0;if(A>>>0>=(a[u>>2]|0)>>>0){so(w,1)|0;A=a[o>>2]|0}r[A>>0]=0;u=a[w>>2]|0;a[o>>2]=u;o=b3(u)|0;wo(w);k=h;return o|0}function gX(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0;c=k;k=k+16|0;n=c;r[n>>0]=A;r[n+1>>0]=0;n=EX(n)|0;l=e+4|0;t=e+8|0;i=P2(n)|0;f=n;while(1){if((i|0)<=1)break;A=a[l>>2]|0;if(A>>>0>=(a[t>>2]|0)>>>0){so(e,1)|0;A=a[l>>2]|0}s=r[f>>0]|0;a[l>>2]=A+1;r[A>>0]=s;i=i+-1|0;f=f+1|0}s=r[f>>0]|0;L2(n);k=c;return s|0}function vX(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;t=k;k=k+32|0;l=t;e=t+8|0;i=a[A>>2]|0;A:do{if((r[i>>0]|0)!=35){a[l>>2]=e;n=0;e:while(1){if((n|0)>=8){e=0;break A}f=r[i+n>>0]|0;switch(f<<24>>24){case 0:{e=0;break A}case 59:break e;default:{}}r[e>>0]=f;e=e+1|0;n=n+1|0}r[e>>0]=0;e=i8(l,23664,252,8,96)|0;if(!e)e=0;else{i=i+(n+1)|0;e=a[e+4>>2]|0}}else{l=r[i+1>>0]|0;e=l&255;e:do{if((l|32)<<24>>24==120){l=0;n=2;while(1){if((n|0)>=8){f=l;break e}f=r[i+n>>0]|0;e=f&255;if((f+-65&255)>=6)if((f+-97&255)>=6)if((f+-48&255)<10)f=-48;else{f=l;break e}else f=-87;else f=-55;e=f+e|0;l=e+(l<<4)|0;n=n+1|0}}else{f=0;n=1;while(1){if((n|0)>=8)break e;l=r[i+n>>0]|0;e=l&255;if((l+-48&255)>=10)break e;f=(f*10|0)+-48+e|0;n=n+1|0}}}while(0);e=(e|0)==59;i=e?i+(n+1)|0:i;e=e?f:0}}while(0);a[A>>2]=i;k=t;return e|0}function EX(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,s=0;s=k;k=k+1056|0;n=s;t=s+8|0;a[n>>2]=A;co(t,1024,s+24|0);c=t+4|0;l=t+8|0;while(1){a[n>>2]=A+1;e=r[A>>0]|0;if(!(e<<24>>24))break;A=e&255;if(e<<24>>24==38){A=vX(n)|0;if(!A){A=38;f=6}else f=5}else f=5;do{if((f|0)==5){f=0;if(A>>>0<127)f=6;else{e=a[c>>2]|0;i=e>>>0>=(a[l>>2]|0)>>>0;if(A>>>0<2047){if(i){so(t,1)|0;e=a[c>>2]|0}a[c>>2]=e+1;r[e>>0]=A>>>6|192;e=a[c>>2]|0;if(e>>>0>=(a[l>>2]|0)>>>0){so(t,1)|0;e=a[c>>2]|0}A=A&63|128;break}if(i){so(t,1)|0;e=a[c>>2]|0}a[c>>2]=e+1;r[e>>0]=A>>>12|224;e=a[c>>2]|0;if(e>>>0>=(a[l>>2]|0)>>>0){so(t,1)|0;e=a[c>>2]|0}a[c>>2]=e+1;r[e>>0]=A>>>6&63|128;e=a[c>>2]|0;if(e>>>0>=(a[l>>2]|0)>>>0){so(t,1)|0;e=a[c>>2]|0}A=A&63|128}}}while(0);if((f|0)==6){e=a[c>>2]|0;if(e>>>0>=(a[l>>2]|0)>>>0){so(t,1)|0;e=a[c>>2]|0}}a[c>>2]=e+1;r[e>>0]=A;A=a[n>>2]|0}A=a[c>>2]|0;if(A>>>0>=(a[l>>2]|0)>>>0){so(t,1)|0;A=a[c>>2]|0}r[A>>0]=0;l=a[t>>2]|0;a[c>>2]=l;c=b3(l)|0;wo(t);k=s;return c|0}function CX(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;t=k;k=k+1040|0;n=t;co(n,1024,t+16|0);l=n+4|0;f=n+8|0;while(1){e=A+1|0;i=r[A>>0]|0;if(!(i<<24>>24))break;if((i&255)<127){A=a[l>>2]|0;if(A>>>0>=(a[f>>2]|0)>>>0){so(n,1)|0;A=a[l>>2]|0}a[l>>2]=A+1;r[A>>0]=i;A=e;continue}else{i=r[e>>0]&63|i<<6&255;e=a[l>>2]|0;if(e>>>0>=(a[f>>2]|0)>>>0){so(n,1)|0;e=a[l>>2]|0}a[l>>2]=e+1;r[e>>0]=i;A=A+2|0;continue}}A=a[l>>2]|0;if(A>>>0>=(a[f>>2]|0)>>>0){so(n,1)|0;A=a[l>>2]|0}r[A>>0]=0;f=a[n>>2]|0;a[l>>2]=f;l=b3(f)|0;wo(n);k=t;return l|0}function IX(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0;u=k;k=k+80|0;r=u+48|0;i=u+32|0;f=u+64|0;n=u+16|0;l=u;t=e+16|0;c=A+16|0;b=a[c>>2]|0;if(((+s[t>>3]>=+s[b+48>>3]?+s[b+64>>3]>=+s[e>>3]:0)?+s[e+24>>3]>=+s[b+56>>3]:0)?+s[b+72>>3]>=+s[e+8>>3]:0){b=b+16|0;a[i>>2]=a[t>>2];a[i+4>>2]=a[t+4>>2];a[i+8>>2]=a[t+8>>2];a[i+12>>2]=a[t+12>>2];a[r>>2]=a[e>>2];a[r+4>>2]=a[e+4>>2];a[r+8>>2]=a[e+8>>2];a[r+12>>2]=a[e+12>>2];ZX(n,i,r);a[i>>2]=a[b>>2];a[i+4>>2]=a[b+4>>2];a[i+8>>2]=a[b+8>>2];a[i+12>>2]=a[b+12>>2];a[r>>2]=a[n>>2];a[r+4>>2]=a[n+4>>2];a[r+8>>2]=a[n+8>>2];a[r+12>>2]=a[n+12>>2];jR(l,i,r);a[f>>2]=A;a[f+4>>2]=0;i=a[(a[(a[(a[c>>2]|0)+8>>2]|0)+4>>2]|0)+12>>2]|0;a[r>>2]=a[l>>2];a[r+4>>2]=a[l+4>>2];a[r+8>>2]=a[l+8>>2];a[r+12>>2]=a[l+12>>2];i=Q5[i&127](f,r)|0}else i=0;k=u;return i|0}function ZX(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;r=(+s[i+8>>3]+ +s[e+8>>3])*.5;s[A>>3]=(+s[i>>3]+ +s[e>>3])*.5;s[A+8>>3]=r;return}function GX(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0.0,n=0,l=0.0,t=0,c=0,b=0,u=0;r=k;k=k+80|0;t=r+64|0;c=r+48|0;b=r;u=r+32|0;n=r+16|0;s[b>>3]=+s[A+24>>3]*.5;s[b+8>>3]=+s[A+32>>3]*.5;A=A+56|0;a[c>>2]=a[A>>2];a[c+4>>2]=a[A+4>>2];a[c+8>>2]=a[A+8>>2];a[c+12>>2]=a[A+12>>2];a[t>>2]=a[b>>2];a[t+4>>2]=a[b+4>>2];a[t+8>>2]=a[b+8>>2];a[t+12>>2]=a[b+12>>2];jR(u,c,t);l=+s[u>>3];f=+s[u+8>>3];a[c>>2]=a[A>>2];a[c+4>>2]=a[A+4>>2];a[c+8>>2]=a[A+8>>2];a[c+12>>2]=a[A+12>>2];a[t>>2]=a[b>>2];a[t+4>>2]=a[b+4>>2];a[t+8>>2]=a[b+8>>2];a[t+12>>2]=a[b+12>>2];PR(n,c,t);i=+s[n+8>>3];if((+s[e+16>>3]>=l?+s[n>>3]>=+s[e>>3]:0)?+s[e+24>>3]>=f:0)A=i>=+s[e+8>>3]&1;else A=0;k=r;return A|0}function mX(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;u=k;k=k+80|0;s=u+48|0;c=u;l=A+16|0;A=a[l>>2]|0;t=a[A+8>>2]|0;A:do{if((t|0)!=0?(n=t+8|0,a[c>>2]=a[n>>2],a[c+4>>2]=a[n+4>>2],a[c+8>>2]=a[n+8>>2],a[c+12>>2]=a[n+12>>2],a[c+16>>2]=a[n+16>>2],a[c+20>>2]=a[n+20>>2],a[c+24>>2]=a[n+24>>2],a[c+28>>2]=a[n+28>>2],a[s>>2]=a[e>>2],a[s+4>>2]=a[e+4>>2],a[s+8>>2]=a[e+8>>2],a[s+12>>2]=a[e+12>>2],a[s+16>>2]=a[e+16>>2],a[s+20>>2]=a[e+20>>2],a[s+24>>2]=a[e+24>>2],a[s+28>>2]=a[e+28>>2],(QX(c,s)|0)!=0):0){i=t+4|0;A=0;while(1){if((A|0)>=(a[i>>2]|0))break;r=c;f=(a[t>>2]|0)+(A*48|0)|0;n=r+48|0;do{a[r>>2]=a[f>>2];r=r+4|0;f=f+4|0}while((r|0)<(n|0));a[s>>2]=a[e>>2];a[s+4>>2]=a[e+4>>2];a[s+8>>2]=a[e+8>>2];a[s+12>>2]=a[e+12>>2];a[s+16>>2]=a[e+16>>2];a[s+20>>2]=a[e+20>>2];a[s+24>>2]=a[e+24>>2];a[s+28>>2]=a[e+28>>2];if(!((LX(c,s)|0)<<24>>24))A=A+1|0;else{A=1;break A}}A=a[l>>2]|0;b=7}else b=7}while(0);do{if((b|0)==7){A=a[A+96>>2]|0;if(A|0?(a[s>>2]=a[e>>2],a[s+4>>2]=a[e+4>>2],a[s+8>>2]=a[e+8>>2],a[s+12>>2]=a[e+12>>2],a[s+16>>2]=a[e+16>>2],a[s+20>>2]=a[e+20>>2],a[s+24>>2]=a[e+24>>2],a[s+28>>2]=a[e+28>>2],(GX(A,s)|0)<<24>>24):0){A=1;break}A=0}}while(0);k=u;return A|0}function QX(A,e){A=A|0;e=e|0;if((+s[A+16>>3]>=+s[e>>3]?+s[e+16>>3]>=+s[A>>3]:0)?+s[A+24>>3]>=+s[e+8>>3]:0)A=+s[e+24>>3]>=+s[A+8>>3]&1;else A=0;return A|0}function LX(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;u=k;k=k+96|0;s=u+64|0;c=u+48|0;t=u+32|0;f=u+16|0;n=u;b=A+4|0;i=a[b>>2]|0;if(!i)gA(109937,107661,1637,109945);r=a[A>>2]|0;a[n>>2]=a[r>>2];a[n+4>>2]=a[r+4>>2];a[n+8>>2]=a[r+8>>2];a[n+12>>2]=a[r+12>>2];r=1;while(1){if((r|0)>=(i|0)){l=7;break}i=(a[A>>2]|0)+(r<<4)|0;a[f>>2]=a[i>>2];a[f+4>>2]=a[i+4>>2];a[f+8>>2]=a[i+8>>2];a[f+12>>2]=a[i+12>>2];a[t>>2]=a[i>>2];a[t+4>>2]=a[i+4>>2];a[t+8>>2]=a[i+8>>2];a[t+12>>2]=a[i+12>>2];a[c>>2]=a[n>>2];a[c+4>>2]=a[n+4>>2];a[c+8>>2]=a[n+8>>2];a[c+12>>2]=a[n+12>>2];a[s>>2]=a[e>>2];a[s+4>>2]=a[e+4>>2];a[s+8>>2]=a[e+8>>2];a[s+12>>2]=a[e+12>>2];a[s+16>>2]=a[e+16>>2];a[s+20>>2]=a[e+20>>2];a[s+24>>2]=a[e+24>>2];a[s+28>>2]=a[e+28>>2];if((GF(t,c,s)|0)!=-1){i=1;break}a[n>>2]=a[f>>2];a[n+4>>2]=a[f+4>>2];a[n+8>>2]=a[f+8>>2];a[n+12>>2]=a[f+12>>2];r=r+1|0;i=a[b>>2]|0}do{if((l|0)==7){i=a[A+8>>2]|0;if(i|0?(n=A+16|0,l=a[A>>2]|0,a[t>>2]=a[n>>2],a[t+4>>2]=a[n+4>>2],a[t+8>>2]=a[n+8>>2],a[t+12>>2]=a[n+12>>2],a[c>>2]=a[l>>2],a[c+4>>2]=a[l+4>>2],a[c+8>>2]=a[l+8>>2],a[c+12>>2]=a[l+12>>2],a[s>>2]=a[e>>2],a[s+4>>2]=a[e+4>>2],a[s+8>>2]=a[e+8>>2],a[s+12>>2]=a[e+12>>2],a[s+16>>2]=a[e+16>>2],a[s+20>>2]=a[e+20>>2],a[s+24>>2]=a[e+24>>2],a[s+28>>2]=a[e+28>>2],(yX(t,c,i,s)|0)<<24>>24):0){i=1;break}i=a[A+12>>2]|0;if(i|0?(l=A+32|0,b=(a[A>>2]|0)+((a[b>>2]|0)+-1<<4)|0,a[t>>2]=a[l>>2],a[t+4>>2]=a[l+4>>2],a[t+8>>2]=a[l+8>>2],a[t+12>>2]=a[l+12>>2],a[c>>2]=a[b>>2],a[c+4>>2]=a[b+4>>2],a[c+8>>2]=a[b+8>>2],a[c+12>>2]=a[b+12>>2],a[s>>2]=a[e>>2],a[s+4>>2]=a[e+4>>2],a[s+8>>2]=a[e+8>>2],a[s+12>>2]=a[e+12>>2],a[s+16>>2]=a[e+16>>2],a[s+20>>2]=a[e+20>>2],a[s+24>>2]=a[e+24>>2],a[s+28>>2]=a[e+28>>2],(yX(t,c,i,s)|0)<<24>>24):0){i=1;break}i=0}}while(0);k=u;return i|0}function yX(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0.0;b=k;k=k+160|0;n=b+144|0;f=b+128|0;u=b+96|0;l=b+64|0;t=b+32|0;c=b;w=+s[r+16>>3];a[f>>2]=a[A>>2];a[f+4>>2]=a[A+4>>2];a[f+8>>2]=a[A+8>>2];a[f+12>>2]=a[A+12>>2];a[n>>2]=a[e>>2];a[n+4>>2]=a[e+4>>2];a[n+8>>2]=a[e+8>>2];a[n+12>>2]=a[e+12>>2];KC(u,f,n,1.0,i);if(((w>=+s[u>>3]?(a[f>>2]=a[A>>2],a[f+4>>2]=a[A+4>>2],a[f+8>>2]=a[A+8>>2],a[f+12>>2]=a[A+12>>2],a[n>>2]=a[e>>2],a[n+4>>2]=a[e+4>>2],a[n+8>>2]=a[e+8>>2],a[n+12>>2]=a[e+12>>2],KC(l,f,n,1.0,i),+s[l+16>>3]>=+s[r>>3]):0)?(w=+s[r+24>>3],a[f>>2]=a[A>>2],a[f+4>>2]=a[A+4>>2],a[f+8>>2]=a[A+8>>2],a[f+12>>2]=a[A+12>>2],a[n>>2]=a[e>>2],a[n+4>>2]=a[e+4>>2],a[n+8>>2]=a[e+8>>2],a[n+12>>2]=a[e+12>>2],KC(t,f,n,1.0,i),w>=+s[t+8>>3]):0)?(a[f>>2]=a[A>>2],a[f+4>>2]=a[A+4>>2],a[f+8>>2]=a[A+8>>2],a[f+12>>2]=a[A+12>>2],a[n>>2]=a[e>>2],a[n+4>>2]=a[e+4>>2],a[n+8>>2]=a[e+8>>2],a[n+12>>2]=a[e+12>>2],KC(c,f,n,1.0,i),+s[c+24>>3]>=+s[r+8>>3]):0)f=1;else f=0;k=b;return f|0}function WX(A,e){A=A|0;e=e|0;var i=0,f=0,n=0;n=k;k=k+16|0;f=n;A:do{if((A|0)!=0?(i=r[A>>0]|0,i<<24>>24!=0):0){do{switch(i<<24>>24|0){case 48:{e=2;break A}case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:{e=10;break A}case 67:case 99:{i=A+1|0;if(!(p1(i,109960)|0)){e=4;break A}if(!(p1(i,109966)|0)){e=12;break A}break}case 70:case 102:{if(!(p1(A+1|0,109974)|0)){e=2;break A}break}case 76:case 108:{if(!(p1(A+1|0,109979)|0)){e=2;break A}break}case 78:case 110:{i=A+1|0;if(!(p1(i,109983)|0)){e=0;break A}if(!(p1(i,109987)|0)){e=2;break A}break}case 79:case 111:{if(!(p1(A+1|0,109989)|0)){e=8;break A}break}case 80:case 112:{if(!(p1(A+1|0,109994)|0)){e=6;break A}break}case 83:case 115:{if(!(p1(A+1|0,110002)|0)){e=10;break A}break}case 84:case 116:{if(!(p1(A+1|0,110008)|0)){e=10;break A}break}case 89:case 121:{if(!(p1(A+1|0,110012)|0)){e=10;break A}break}default:{}}}while(0);a[f>>2]=A;ao(0,110015,f)|0}}while(0);k=n;return e|0}function zX(A,e){A=A|0;e=e|0;var i=0;i=Ho(A,110056)|0;if(i)if(!(r[i>>0]|0))e=0;else e=WX(i,e)|0;A=(a[A+16>>2]|0)+136|0;f[A>>1]=e|l[A>>1];return}function YX(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=+r;f=f|0;var a=0.0,n=0.0,l=0.0,t=0.0,c=0.0,b=0,u=0,w=0.0,o=0,h=0.0,d=0,B=0.0,g=0,v=0,E=0,C=0;E=k;k=k+32|0;o=E+16|0;d=E;g=f&1;v=f&2;A:do{if((i|0)==2){B=+s[A+16>>3];a=+s[A>>3];t=+s[A+24>>3];l=+s[A+8>>3];a=a-(B-a);s[o>>3]=a;s[d>>3]=B;l=l-(t-l);s[o+8>>3]=l;s[d+8>>3]=t}else{n=+s[A>>3];s[d>>3]=n;s[o>>3]=n;t=+s[A+8>>3];b=d+8|0;s[b>>3]=t;u=o+8|0;s[u>>3]=t;f=0;a=n;l=t;while(1){if((f|0)>=(i|0)){B=n;break A}C=A+(f<<4)|0;h=+s[C>>3];c=+s[(h>3];s[o>>3]=c;B=+s[A+(f<<4)+8>>3];w=+s[(B >3];s[u>>3]=w;h=+s[(h>n?C:d)>>3];s[d>>3]=h;B=+s[(B>t?C:d)+8>>3];s[b>>3]=B;f=f+1|0;a=c;l=w;n=h;t=B}}}while(0);n=(B-a)*.5;h=n+a;w=(t-l)*.5;c=w+l;if(!g){a=t-c;t=r;l=+M(+t);t=+D(+t);if(!v){n=l*a-c;a=-c-w*l}else{a=l*a;n=c-a;a=a+c}s[e+8>>3]=n;s[e+24>>3]=a;r=t*(B-h);s[e>>3]=h-r;s[e+16>>3]=r+h}else{r=+z(+(w*w+n*n));s[e+8>>3]=v|0?c:-c;s[e>>3]=h;s[e+16>>3]=r*.25;s[e+24>>3]=r}k=E;return}function DX(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0;r=A+16|0;f=a[r>>2]|0;if(!(e<<24>>24)){i=+s[f+32>>3]*36.0;s[f+88>>3]=i;A=f+40|0}else{i=+s[f+40>>3]*36.0;s[f+88>>3]=i;A=f+32|0}s[f+96>>3]=i;s[(a[r>>2]|0)+80>>3]=+s[A>>3]*72.0;return}function MX(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;u=k;k=k+32|0;c=u+8|0;f=u+4|0;n=u;i=a[e>>2]&3;r=a[((i|0)==3?e:e+48|0)+40>>2]|0;s=(a[(a[r+16>>2]|0)+232>>2]|0)+-1|0;A=a[(a[A+16>>2]|0)+196>>2]|0;l=a[A+(s<<6)+4>>2]|0;A=a[A+(s<<6)>>2]|0;s=c+8|0;a[s>>2]=-1;a[c>>2]=-1;b=c+12|0;a[b>>2]=A;t=c+4|0;a[t>>2]=A;VX(r,a[((i|0)==2?e:e+-48|0)+40>>2]|0,f,n);f=a[f>>2]|0;n=a[n>>2]|0;i=0;r=A;e=-1;while(1){if((i|0)>=(r|0))break;r=r+-1|0;JX(a[l+(i<<2)>>2]|0,c,f,n);if((i|0)!=(r|0))JX(a[l+(r<<2)>>2]|0,c,f,n);A=a[t>>2]|0;e=a[c>>2]|0;if((A-e|0)<2)break;else i=i+1|0}if((e|0)>(A|0))A=(a[b>>2]|0)+(a[s>>2]|0)|0;else A=A+e|0;k=u;return(A+1|0)/2|0|0}function FX(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0;n=A+16|0;f=a[(a[n>>2]|0)+196>>2]|0;r=f+(e<<6)|0;f=a[f+(e<<6)+4>>2]|0;if(!f)f=$F((a[r>>2]<<2)+8|0)|0;else f=eV(f,(a[r>>2]<<2)+8|0)|0;r=a[(a[n>>2]|0)+196>>2]|0;a[r+(e<<6)+4>>2]=f;r=a[r+(e<<6)>>2]|0;while(1){if((r|0)<=(i|0))break;l=r+-1|0;t=a[f+(l<<2)>>2]|0;a[f+(r<<2)>>2]=t;t=(a[t+16>>2]|0)+236|0;a[t>>2]=(a[t>>2]|0)+1;r=l}l=Yy(A)|0;t=f+(i<<2)|0;a[t>>2]=l;l=a[l+16>>2]|0;a[l+236>>2]=i;a[l+232>>2]=e;n=(a[(a[n>>2]|0)+196>>2]|0)+(e<<6)|0;l=(a[n>>2]|0)+1|0;a[n>>2]=l;a[f+(l<<2)>>2]=0;return a[t>>2]|0}function VX(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0;A=a[(a[A+16>>2]|0)+236>>2]|0;e=a[(a[e+16>>2]|0)+236>>2]|0;f=(A|0)>(e|0);a[i>>2]=f?e:A;a[r>>2]=f?A:e;return}function JX(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0;b=k;k=k+16|0;l=b+4|0;n=b;A=a[A+16>>2]|0;do{if((r[A+156>>0]|0)==1){s=a[A+236>>2]|0;if(a[A+176>>2]|0){t=a[A+180>>2]|0;A=0;n=0;l=0;while(1){c=a[t+(l<<2)>>2]|0;if(!c)break;u=a[(a[(a[((a[c>>2]&3|0)==2?c:c+-48|0)+40>>2]|0)+16>>2]|0)+236>>2]|0;c=(u|0)>(i|0);A=c?(u|0)<(f|0)?A:1:A;n=c?n:1;l=l+1|0}if(n<<24>>24!=0&A<<24>>24==0){a[e>>2]=s+1;break}if(!(n<<24>>24==0&A<<24>>24!=0))break;a[e+4>>2]=s+-1;break}if((a[A+184>>2]|0)!=2)gA(88397,88417,63,88424);t=a[A+180>>2]|0;u=a[t>>2]|0;t=a[t+4>>2]|0;VX(a[((a[u>>2]&3|0)==2?u:u+-48|0)+40>>2]|0,a[((a[t>>2]&3|0)==2?t:t+-48|0)+40>>2]|0,l,n);t=a[n>>2]|0;if((t|0)<=(i|0)){a[e>>2]=s;a[e+8>>2]=s;break}A=a[l>>2]|0;if((A|0)>=(f|0)){a[e+4>>2]=s;a[e+12>>2]=s;break}n=(A|0)<(i|0);l=(t|0)>(f|0);if(!(l&n)){if(!(!n?!((t|0)<(f|0)&(A|0)==(i|0)):0))a[e+8>>2]=s;if(!l?!((t|0)==(f|0)&(A|0)>(i|0)):0)break;a[e+12>>2]=s}}}while(0);k=b;return}function pX(A){A=A|0;a[47134]=1;fH(A);a[47134]=0;return}function NX(A){A=A|0;a[47134]=2;fH(A);a[47134]=0;return}function RX(A){A=A|0;var e=0;Td(A,137447,304,1)|0;FR(A);e=qF((l[(a[(Id(A)|0)+16>>2]|0)+176>>1]|0)<<3)|0;a[(a[A+16>>2]|0)+132>>2]=e;DX(A,a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&1);return}function XX(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0.0,v=0.0;B=k;k=k+64|0;t=B+48|0;w=B+40|0;c=B+24|0;l=B+8|0;h=B+56|0;b=B;do{if((A|0)!=0?(d=i+16|0,o=a[(a[d>>2]|0)+132>>2]|0,n=Uo(i,A)|0,(r[n>>0]|0)!=0):0){r[h>>0]=0;A=o+8|0;if((a[47137]|0)>2?(a[l>>2]=o,a[l+4>>2]=A,a[l+8>>2]=o+16,a[l+12>>2]=h,(J3(n,88535,l)|0)>2):0){r[(a[d>>2]|0)+119>>0]=1;n=a[47137]|0;A:do{if(+s[23293]>0.0){A=0;while(1){if((A|0)>=(n|0))break A;w=o+(A<<3)|0;s[w>>3]=+s[w>>3]/+s[23293];A=A+1|0}}}while(0);if((n|0)>3)gU(i,f,3);if((r[h>>0]|0)!=33){if(!e){A=1;break}if(!((vR(Uo(i,e)|0)|0)<<24>>24)){A=1;break}}r[(a[d>>2]|0)+119>>0]=3;A=1;break}a[c>>2]=o;a[c+4>>2]=A;a[c+8>>2]=h;if((J3(n,101749,c)|0)<=1){a[t>>2]=Vh(i)|0;a[t+4>>2]=n;ao(1,88549,t)|0;A=0;break}r[(a[d>>2]|0)+119>>0]=1;n=a[47137]|0;A:do{if(+s[23293]>0.0){A=0;while(1){if((A|0)>=(n|0))break A;c=o+(A<<3)|0;s[c>>3]=+s[c>>3]/+s[23293];A=A+1|0}}}while(0);do{if((n|0)>2){A=a[47171]|0;if((A|0?(u=Uo(i,A)|0,u|0):0)?(a[w>>2]=b,(J3(u,101209,w)|0)==1):0){v=+s[23293];g=+s[b>>3];s[o+16>>3]=v>0.0?g/v:g;gU(i,f,3);break}vU(i,f)}}while(0);if((r[h>>0]|0)!=33){if(!e){A=1;break}if(!((vR(Uo(i,e)|0)|0)<<24>>24)){A=1;break}}r[(a[d>>2]|0)+119>>0]=3;A=1}else A=0}while(0);k=B;return A|0}function HX(A){A=A|0;var e=0,i=0;i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;wX(e);e=_o(A,e)|0}bX(i);i=sd(A,i)|0}UX(A);return}function UX(A){A=A|0;if((a[47134]|0)!=0|(a[46795]|0)<0)dU(A);if((Zd(A)|0)!=(A|0))_d(A,0,137483);return}function xX(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+48|0;b=h+32|0;w=h;c=Yo(A,0,102637,0)|0;i=Yo(A,0,102671,0)|0;o=(ER(Ho(A,88593)|0,0)|0)<<24>>24!=0;if(!i)i=Yo(A,0,102671,195059)|0;hU(A)|0;u=A+16|0;l=0;while(1){t=a[(a[(a[u>>2]|0)+152>>2]|0)+(l<<2)>>2]|0;if(!t){f=12;break}n=t+16|0;f=a[n>>2]|0;if(!(r[f+119>>0]|0)){if(Z1(Vh(t)|0,108006,7)|0){f=8;break}f=a[n>>2]|0}f=a[f+108>>2]|0;if(f|0)TX(t,f,102633);l=l+1|0}A:do{if((f|0)==8){o=Vh(t)|0;i=Vh(A)|0;a[b>>2]=o;a[b+4>>2]=i;ao(1,88605,b)|0;i=-1}else if((f|0)==12){jX(A,c,i);t=PX(A)|0;i=a[(a[u>>2]|0)+8>>2]|0;if(!(a[i+88>>2]|0))i=0;else{a[i+84>>2]=0;i=1}n=(e|0)!=0;l=(i|0)!=0;if(!(l|n&(a[47134]|0)==1^1)?(eP(A)|0)!=0:0){f=a[(a[u>>2]|0)+12>>2]|0;if(!f)f=1;else{r[f+81>>0]=0;f=1}}else f=0;xR(A);if(l){e=(a[u>>2]|0)+16|0;wI(w,A);a[e>>2]=a[w>>2];a[e+4>>2]=a[w+4>>2];a[e+8>>2]=a[w+8>>2];a[e+12>>2]=a[w+12>>2];a[e+16>>2]=a[w+16>>2];a[e+20>>2]=a[w+20>>2];a[e+24>>2]=a[w+24>>2];a[e+28>>2]=a[w+28>>2]}if(!n){a[47138]=1;f=cd(A)|0;while(1){if(!f)break A;o=a[f+16>>2]|0;w=a[o+132>>2]|0;s[o+16>>3]=+s[w>>3]*72.0;s[o+24>>3]=+s[w+8>>3]*72.0;f=sd(A,f)|0}}do{if(!(o|l)){o=a[u>>2]|0;if(!(+s[o+16>>3]!=0.0)?!(+s[o+24>>3]!=0.0):0)break;UH(A)}}while(0);if(!((t|0)!=0&(f|(XH(A)|0)<<24>>24!=0))){if((t|0)==2){a[47138]=1;break}}else SX(A);RH(A,0)}}while(0);k=h;return i|0}function TX(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0;c=k;k=k+48|0;t=c+32|0;f=c+24|0;n=c+16|0;l=c;A=Ho(A,i)|0;if(A|0?(a[t>>2]=f,a[t+4>>2]=n,(J3(A,105503,t)|0)==2):0){t=e+56|0;_X(l,+s[f>>3],+s[n>>3]);a[t>>2]=a[l>>2];a[t+4>>2]=a[l+4>>2];a[t+8>>2]=a[l+8>>2];a[t+12>>2]=a[l+12>>2];r[e+81>>0]=1}k=c;return}function jX(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0;b=k;k=k+48|0;c=b+32|0;f=b+24|0;n=b+16|0;l=b;t=A+16|0;if((e|0?(a[(a[t>>2]|0)+12>>2]|0)!=0:0)?(u=Uo(A,e)|0,a[c>>2]=f,a[c+4>>2]=n,(J3(u,105503,c)|0)==2):0){u=(a[(a[t>>2]|0)+12>>2]|0)+56|0;_X(l,+s[f>>3],+s[n>>3]);a[u>>2]=a[l>>2];a[u+4>>2]=a[l+4>>2];a[u+8>>2]=a[l+8>>2];a[u+12>>2]=a[l+12>>2];r[(a[(a[t>>2]|0)+12>>2]|0)+81>>0]=1}A:do{if(i|0){f=RB(A)|0;while(1){if(!f)break A;qX(f,A,e,i);f=XB(f)|0}}}while(0);k=b;return}function PX(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;if(vh(A)|0){f=Yo(A,2,102623,0)|0;if(!((f|0)==0|(a[47134]|0)<2)){e=0;r=cd(A)|0;while(1){if(!r)break;i=Oo(A,r)|0;while(1){if(!i)break;n=e+((OX(f,i)|0)!=0&1)|0;i=_o(A,i)|0;e=n}r=sd(A,r)|0}if(e){e=(e|0)==(vh(A)|0);e=e?2:1}else e=0}else e=0}else e=2;return e|0}function SX(A){A=A|0;var e=0,i=0,r=0;i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;kX(e);r=e+16|0;TF(a[(a[r>>2]|0)+96>>2]|0);TF(a[(a[r>>2]|0)+108>>2]|0);TF(a[(a[r>>2]|0)+100>>2]|0);TF(a[(a[r>>2]|0)+104>>2]|0);e=_o(A,e)|0}i=sd(A,i)|0}return}function OX(A,e){A=A|0;e=e|0;var i=0,f=0,n=0.0,l=0.0,t=0.0,c=0.0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0;Q=k;k=k+96|0;G=Q+72|0;I=Q+56|0;m=Q+48|0;Z=Q+32|0;C=Q+16|0;d=Q+88|0;B=Q+8|0;g=Q;v=Q+84|0;E=Q+80|0;A=Uo(e,A)|0;do{if(r[A>>0]|0){DC(e,v,E);h=1;f=0;i=0;t=0.0;l=0.0;c=0.0;n=0.0;A:while(1){a[C>>2]=B;a[C+4>>2]=g;a[C+8>>2]=d;if((J3(A,88642,C)|0)==2){o=1;A=A+(a[d>>2]|0)|0;l=+s[B>>3];n=+s[g>>3]}else o=i;a[Z>>2]=B;a[Z+4>>2]=g;a[Z+8>>2]=d;if((J3(A,88654,Z)|0)==2){w=1;A=A+(a[d>>2]|0)|0;t=+s[B>>3];c=+s[g>>3]}else w=f;b=KX(A)|0;if(!((b|0)>3&((b|0)%3|0|0)==1)){i=8;break}u=$F(b<<4)|0;i=u;f=b;while(1){if(!f)break;a[I>>2]=B;a[I+4>>2]=g;a[I+8>>2]=d;if((J3(A,88724,I)|0)<2){i=13;break A}L=A+(a[d>>2]|0)|0;s[i>>3]=+s[B>>3];s[i+8>>3]=+s[g>>3];i=i+16|0;f=f+-1|0;A=L}while(1){i=r[A>>0]|0;f=A+1|0;if(!(m1(i<<24>>24)|0))break;else A=f}L=i<<24>>24==0;A=L?A:f;h=L?0:h;f=gN(e,b)|0;if(o|0){a[f+8>>2]=a[v>>2];s[f+16>>3]=l;s[f+24>>3]=n}if(w|0){a[f+12>>2]=a[E>>2];s[f+32>>3]=t;s[f+40>>3]=c}i=0;while(1){if((i|0)>=(b|0))break;L=(a[f>>2]|0)+(i<<4)|0;y=u+(i<<4)|0;a[L>>2]=a[y>>2];a[L+4>>2]=a[y+4>>2];a[L+8>>2]=a[y+8>>2];a[L+12>>2]=a[y+12>>2];i=i+1|0}L2(u);if(!h){i=26;break}else{f=w;i=o}}if((i|0)==8){kX(e);if(r[193771]|0){A=0;break}r[193771]=1;y=Vh(a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0;A=Vh(a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)|0;a[m>>2]=y;a[m+4>>2]=A;ao(0,88667,m)|0;A=0;break}else if((i|0)==13){if(!(r[193771]|0)){r[193771]=1;L=Vh(a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0;y=Vh(a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)|0;a[G>>2]=L;a[G+4>>2]=y;ao(0,88734,G)|0}L2(u);kX(e);A=0;break}else if((i|0)==26){f=e+16|0;A=a[f>>2]|0;i=a[A+96>>2]|0;if(i){TX(e,i,102637);A=a[f>>2]|0}i=a[A+108>>2]|0;if(i){TX(e,i,102633);A=a[f>>2]|0}i=a[A+100>>2]|0;if(i){TX(e,i,102640);A=a[f>>2]|0}A=a[A+104>>2]|0;if(!A){A=1;break}TX(e,A,102648);A=1;break}}else A=0}while(0);k=Q;return A|0}function KX(A){A=A|0;var e=0,i=0;i=0;do{while(1){e=r[A>>0]|0;if(!(m1(e&255)|0))break;else A=A+1|0}A:do{if(!(e<<24>>24))e=0;else{i=i+1|0;while(1){if(!(e<<24>>24)){e=0;break A}if(e<<24>>24==59|(m1(e&255)|0)!=0)break A;e=A+1|0;A=e;e=r[e>>0]|0}}}while(0)}while((m1(e&255)|0)!=0);return i|0}function _X(A,e,i){A=A|0;e=+e;i=+i;s[A>>3]=e;s[A+8>>3]=i;return}function qX(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0;l=k;k=k+32|0;f=l;if((Z1(Vh(A)|0,108006,7)|0)==0?($X(A,r,f)|0)!=0:0){Td(A,137483,280,1)|0;t=(a[A+16>>2]|0)+16|0;a[t>>2]=a[f>>2];a[t+4>>2]=a[f+4>>2];a[t+8>>2]=a[f+8>>2];a[t+12>>2]=a[f+12>>2];a[t+16>>2]=a[f+16>>2];a[t+20>>2]=a[f+20>>2];a[t+24>>2]=a[f+24>>2];a[t+28>>2]=a[f+28>>2];AH(e,A);jX(A,i,r)}else n=4;A:do{if((n|0)==4){A=RB(A)|0;while(1){if(!A)break A;qX(A,e,i,r);A=XB(A)|0}}}while(0);k=l;return}function $X(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,n=0,l=0,t=0,c=0;l=k;k=k+48|0;t=l+32|0;n=l;c=Uo(A,e)|0;A=n+8|0;e=n+24|0;a[t>>2]=n;a[t+4>>2]=A;a[t+8>>2]=n+16;a[t+12>>2]=e;if((J3(c,88782,t)|0)==4){r=+s[A>>3];f=+s[e>>3];if(r>f){s[A>>3]=f;s[e>>3]=r}a[i>>2]=a[n>>2];a[i+4>>2]=a[n+4>>2];a[i+8>>2]=a[n+8>>2];a[i+12>>2]=a[n+12>>2];a[i+16>>2]=a[n+16>>2];a[i+20>>2]=a[n+20>>2];a[i+24>>2]=a[n+24>>2];a[i+28>>2]=a[n+28>>2];A=1}else A=0;k=l;return A|0}function AH(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;r=A+16|0;i=a[r>>2]|0;n=i+180|0;A=a[n>>2]|0;f=A+1|0;a[n>>2]=f;i=a[i+184>>2]|0;if(!i)A=qF((A<<2)+8|0)|0;else A=AV(i,A+2|0,4,f)|0;a[(a[r>>2]|0)+184>>2]=A;a[A+(f<<2)>>2]=e;JF(e);return}function eH(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,l=0,t=0,c=0,s=0,b=0,u=0;u=k;k=k+48|0;b=u+8|0;s=u;t=u+16|0;c=u+12|0;l=Ho(A,88798)|0;do{if((l|0)!=0?(f=r[l>>0]|0,f<<24>>24!=0):0){f=f&255;if(!(J1(f)|0))if((e|0)==2|(f+-48|0)>>>0<10)e=l;else break;else{if(!(Z1(l,88804,4)|0)){e=0;break}if(!(Z1(l,105511,7)|0)){e=1;break}if(Z1(l,88809,6)|0)if((e|0)==2)e=l;else break;else e=l+6|0}if(!(((n[e>>0]|0)+-48|0)>>>0<10?(a[s>>2]=c,(J3(e,99933,s)|0)>=1):0)){s=z3()|0;s=(ne(0)|0)^s;a[c>>2]=s;a[b>>2]=s;S4(t,99933,b)|0;xo(A,88798,t)|0}a[i>>2]=a[c>>2];e=2}}while(0);k=u;return e|0}function iH(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;f=k;k=k+16|0;r=f+4|0;a[r>>2]=1;i=eH(A,i,r)|0;if((i|0)!=2&(a[46796]|0)!=0)ao(0,88816,f)|0;if((i|0)==1)rH(A,e);l8(a[r>>2]|0);k=f;return i|0}function rH(A,e){A=A|0;e=e|0;var i=0,f=0.0,n=0.0,l=0.0,t=0,c=0,b=0.0;n=+(e|0);l=6.283185307179586/n;i=cd(A)|0;f=0.0;while(1){if(!i)break;b=+D(+f)*n;t=a[i+16>>2]|0;c=a[t+132>>2]|0;s[c>>3]=b;s[c+8>>3]=+M(+f)*n;r[t+119>>0]=1;if((a[47137]|0)>2)vU(i,e);i=sd(A,i)|0;f=f+l}return}function fH(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0.0,d=0;d=k;k=k+80|0;e=d+24|0;u=d+32|0;c=d;o=d+28|0;b=d+64|0;h=+s[23293];do{if(a[47134]|0){s[23293]=72.0;aH(A);nH(A);if((xX(A,1)|0)<0){ao(3,88864,e)|0;break}else{gJ(A,0);f=32;break}}else{w=ER(Ho(A,88593)|0,0)|0;s[23293]=+hR(A);aH(A);n=lH(A)|0;mj(A,c,0)|0;l=tH(A)|0;t=uC(A,0,u)|0;e=bC(A,-1,8)|0;a[46795]=e;i=(e|0)<0;do{if(!t){if((n|0)!=0&i){a[46795]=8;a[u+16>>2]=2;f=11;break}a[u+16>>2]=2;if((e|0)<=-1){cH(A,n,l);yj(A,c)|0;nH(A);if(!(w<<24>>24)){SH(A);break}else{sH(A);break}}else f=11}else if(i){a[46795]=8;f=11}else f=11}while(0);if((f|0)==11){t=BE(A,o,88892,b)|0;e=a[o>>2]|0;do{if((e|0)<=1){cH(A,n,l);yj(A,c)|0;if(!(w<<24>>24)){SH(A);break}else{sH(A);break}}else{f=w<<24>>24==0;i=0;while(1){if((i|0)>=(e|0))break;e=a[t+(i<<2)>>2]|0;VE(e)|0;cH(e,n,l);yj(e,c)|0;zX(e,2);if(f)SH(e);else sH(e);i=i+1|0;e=a[o>>2]|0}if(!(r[b>>0]|0))i=0;else{i=qF(e)|0;r[i>>0]=1;e=a[o>>2]|0}a[u+8>>2]=a[46795];a[u+20>>2]=i;a[u+12>>2]=1;tC(e,t,A,u)|0;L2(i)}}while(0);xR(A);nH(A);e=0;while(1){if((e|0)>=(a[o>>2]|0))break;u=a[t+(e<<2)>>2]|0;dU(u);Pd(u,137483)|0;Cd(A,u)|0;e=e+1|0}L2(t)}gJ(A,w<<24>>24==0&1);f=32}}while(0);if((f|0)==32)s[23293]=h;k=d;return}function aH(A){A=A|0;var e=0,i=0,r=0,n=0;zX(A,2);r=kR(A,Yo(A,0,91368,0)|0,2,2)|0;e=(kR(A,Yo(A,0,91374,0)|0,r,2)|0)&65535;f[(a[(Zd(A)|0)+16>>2]|0)+176>>1]=e;e=a[(a[A+60>>2]|0)+16>>2]|0;n=e+176|0;i=f[n>>1]|0;i=(i&65535)<10?i:10;f[n>>1]=i;i=i&65535;a[47137]=i;f[e+178>>1]=(r|0)<(i|0)?r:i;vH(A);return}function nH(A){A=A|0;var e=0,i=0,r=0,f=0;f=k;k=k+1040|0;r=f;i=f+8|0;A:do{if((a[47137]|0)>2&(a[47171]|0)!=0){e=cd(A)|0;while(1){if(!e)break A;s[r>>3]=+s[(a[(a[e+16>>2]|0)+132>>2]|0)+16>>3]*72.0;S4(i,101209,r)|0;Vo(e,a[47171]|0,i)|0;e=sd(A,e)|0}}}while(0);k=f;return}function lH(A){A=A|0;var e=0,i=0,f=0;f=k;k=k+16|0;i=f;e=Ho(A,89577)|0;A:do{if(!e)A=1;else{switch(r[e>>0]|0){case 0:{A=1;break A}case 75:{if(!(A1(e,89582)|0)){A=0;break A}break}case 109:{if(!(A1(e,89585)|0)){A=1;break A}break}case 104:{if(!(A1(e,89591)|0)){A=2;break A}break}default:{}}A=Vh(A)|0;a[i>>2]=e;a[i+4>>2]=A;ao(0,89596,i)|0;A=1}}while(0);k=f;return A|0}function tH(A){A=A|0;var e=0,i=0,f=0,n=0,l=0;l=k;k=k+32|0;n=l+16|0;f=l+8|0;i=l;e=Ho(A,89360)|0;A:do{if(!e)A=0;else{switch(r[e>>0]|0){case 0:{A=0;break A}case 99:{if(!(A1(e,89366)|0)){A=1;break A}break}case 115:{if(!(A1(e,89374)|0)){A=2;break A}if(!(A1(e,89381)|0)){A=0;break A}break}case 109:{if(!(A1(e,89391)|0)){if(Yo(A,2,92493,0)|0){A=3;break A}a[i>>2]=Vh(A)|0;ao(0,89395,i)|0;ao(3,89458,f)|0;A=0;break A}break}default:{}}A=Vh(A)|0;a[n>>2]=e;a[n+4>>2]=A;ao(0,89515,n)|0;A=0}}while(0);k=l;return A|0}function cH(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=Ho(A,91061)|0;if(!r)if((e|0)==1)r=200;else r=(gh(A)|0)*100|0;else r=q3(r)|0;a[47136]=r;r=sU(A,e)|0;do{if(!((r|0)<2|(a[47136]|0)<0))if(!e){uH(A,r,i);break}else{bH(A,r,e,i,a[47137]|0);break}}while(0);return}function sH(A){A=A|0;xR(A);RH(A,1);return}function bH(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,b=0.0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0;v=k;k=k+64|0;d=v+40|0;w=v+24|0;u=v;o=v+48|0;g=v+44|0;h=(i|0)==2;l=iH(A,e,h?0:2)|0;t=gH(A)|0;c=t|4;B=$F(f<<2)|0;a[B>>2]=$F(U(e<<3,f)|0)|0;n=a[47137]|0;f=1;while(1){if((f|0)>=(n|0))break;a[B+(f<<2)>>2]=(a[B>>2]|0)+((U(f,e)|0)<<3);f=f+1|0}n=(l|0)==0;f=n?c:t;if(0){}u=oH(A,e,o,i,r,g)|0;if(0){}if((i|0)!=1){b=+oR(A,Yo(A,0,89279,0)|0,0.0,-1797693134862315708145274.0e284);if(h){f=kP(u,e,a[o>>2]|0,B,a[g>>2]|0,a[47137]|0,f,r,a[47136]|0,b)|0;n=12}else n=14}else{f=iU(u,e,a[o>>2]|0,B,a[g>>2]|0,a[47137]|0,f,r,a[47136]|0)|0;n=12}if((n|0)==12)if((f|0)<0)ao(3,89289,d)|0;else n=14;A:do{if((n|0)==14){n=cd(A)|0;while(1){if(!n)break A;c=a[n+16>>2]|0;l=a[c+120>>2]|0;t=a[47137]|0;c=c+132|0;f=0;while(1){if((f|0)>=(t|0))break;s[(a[c>>2]|0)+(f<<3)>>3]=+s[(a[B+(f<<2)>>2]|0)+(l<<3)>>3];f=f+1|0}n=sd(A,n)|0}}}while(0);XP(u);L2(a[B>>2]|0);L2(B);L2(a[g>>2]|0);k=v;return}function uH(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0.0,t=0;n=k;k=k+48|0;f=n+32|0;r=n;switch(i|0){case 2:{wH(A,e);break}case 1:{if(!(sP(A,e)|0)){a[r>>2]=Vh(A)|0;ao(0,88902,r)|0;ao(3,93364,n+8|0)|0;ao(3,88954,n+16|0)|0;ao(3,89026,n+24|0)|0;MU(A,e)}break}default:{MU(A,e);if((i|0)==3)kH(A)}}CU(A,e);IU(A,e);if(0){}ZU(A,e);k=n;return}function wH(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;n=oH(A,e,t,0,2,0)|0;l=US(n,e)|0;r=A+16|0;A=0;while(1){if((A|0)>=(e|0))break;f=l+(A<<2)|0;i=0;while(1){if((i|0)==(e|0))break;s[(a[(a[(a[r>>2]|0)+160>>2]|0)+(A<<2)>>2]|0)+(i<<3)>>3]=+(a[(a[f>>2]|0)+(i<<2)>>2]|0);i=i+1|0}A=A+1|0}L2(a[l>>2]|0);L2(l);XP(n);k=t;return}function kH(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0.0;f=A+16|0;i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;n=a[e>>2]&3;r=(a[a[((n|0)==3?e:e+48|0)+40>>2]>>2]|0)>>>4;n=(a[a[((n|0)==2?e:e+-48|0)+40>>2]>>2]|0)>>>4;if((r|0)!=(n|0)){t=+s[(a[e+16>>2]|0)+136>>3];l=a[(a[f>>2]|0)+160>>2]|0;s[(a[l+(n<<2)>>2]|0)+(r<<3)>>3]=t;s[(a[l+(r<<2)>>2]|0)+(n<<3)>>3]=t}e=_o(A,e)|0}i=sd(A,i)|0}return}function oH(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,b=0,u=0,w=0,k=0.0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0.0,M=0;l=vh(A)|0;Y=sJ()|0;if((f|0)==2){t=0;y=0}else{y=Yo(A,2,92493,0)|0;t=(a[47174]|0)!=0&1;y=(y|0)!=0}m=(r|1|0)==3;W=$F(e*20|0)|0;z=$F(e<<2)|0;b=(l<<1)+e<<2;u=$F(b)|0;G=m|y;if(G)f=$F(b)|0;else f=0;L=(t|0)!=0;if(L)l=$F(b)|0;else l=0;if(m)t=$F(b)|0;else t=0;b=0;I=cd(A)|0;Z=0;while(1){if(!I)break;wJ(Y);if((a[(a[I+16>>2]|0)+120>>2]|0)!=(Z|0)){Q=12;break}a[z+(Z<<2)>>2]=I;v=W+(Z*20|0)+4|0;a[v>>2]=u;E=W+(Z*20|0)+8|0;a[E>>2]=G?f:0;C=W+(Z*20|0)+12|0;a[C>>2]=L?l:0;a[W+(Z*20|0)+16>>2]=m?t:0;d=1;g=Ah(A,I)|0;B=1;h=b;u=u+4|0;f=G?f+4|0:f;l=L?l+4|0:l;t=m?t+4|0:t;while(1){if(!g)break;w=a[g>>2]&3;o=g+-48|0;b=g+48|0;do{if((a[((w|0)==2?g:o)+40>>2]|0)==(a[((w|0)==3?g:b)+40>>2]|0)){w=d;o=B;b=h}else{w=hH(Y,g,d)|0;if((w|0)!=(d|0)){if(L){o=(a[C>>2]|0)+(w<<2)|0;c[o>>2]=+s[(a[g+16>>2]|0)+128>>3]+ +c[o>>2]}if(!y){w=d;o=B;b=h;break}w=(a[E>>2]|0)+(w<<2)|0;D=+s[(a[g+16>>2]|0)+136>>3];k=+(~~+c[w>>2]|0);c[w>>2]=D>k?D:k;w=d;o=B;b=h;break}M=a[g>>2]&3;b=(M|0)==3?g:b;h=h+1|0;w=d+1|0;d=u+4|0;a[u>>2]=a[(a[(a[((a[b+40>>2]|0)==(I|0)?(M|0)==2?g:o:b)+40>>2]|0)+16>>2]|0)+120>>2];if(L){c[l>>2]=+s[(a[g+16>>2]|0)+128>>3];l=l+4|0}if(y){b=f+4|0;c[f>>2]=+s[(a[g+16>>2]|0)+136>>3];if(m){f=b;Q=27}else f=b}else if(m){c[f>>2]=1.0;f=f+4|0;Q=27}if((Q|0)==27){Q=0;b=Ho(g,101559)|0;if((b|0)!=0?(Z1(b,135709,4)|0)==0:0)k=0.0;else k=(I|0)==(a[((a[g>>2]&3|0)==2?g:o)+40>>2]|0)?1.0:-1.0;c[t>>2]=k;t=t+4|0}o=B+1|0;b=h;u=d}}while(0);d=w;g=eh(A,g,I)|0;B=o;h=b}a[W+(Z*20|0)>>2]=B;a[a[v>>2]>>2]=Z;b=h;I=sd(A,I)|0;Z=Z+1|0}if((Q|0)==12)gA(89103,89118,819,89130);if(m)dH(W,e,r,z);w=(b|0)/2|0;A:do{if((w|0)!=(vh(A)|0)){b=(w<<1)+e<<2;t=eV(a[W+4>>2]|0,b)|0;if(y)f=eV(a[W+8>>2]|0,b)|0;if(L){u=0;l=eV(a[W+12>>2]|0,b)|0}else u=0;while(1){if((u|0)>=(e|0))break A;b=a[W+(u*20|0)>>2]|0;a[W+(u*20|0)+4>>2]=t;if(y){a[W+(u*20|0)+8>>2]=f;f=f+(b<<2)|0}if(L){a[W+(u*20|0)+12>>2]=l;l=l+(b<<2)|0}u=u+1|0;t=t+(b<<2)|0}}}while(0);a[i>>2]=w;if(!n)L2(z);else a[n>>2]=z;kJ(Y);return W|0}function hH(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0;f=a[e>>2]&3;r=a[(a[(a[((f|0)==3?e:e+48|0)+40>>2]|0)+16>>2]|0)+120>>2]|0;e=a[(a[(a[((f|0)==2?e:e+-48|0)+40>>2]|0)+16>>2]|0)+120>>2]|0;f=(r|0)>(e|0);return oJ(A,f?e:r,f?r:e,i)|0}function dH(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0;n=0;while(1){if((n|0)>=(e|0)){n=0;break}l=a[(a[f+(n<<2)>>2]|0)+16>>2]|0;r[l+157>>0]=0;r[l+158>>0]=0;n=n+1|0}while(1){if((n|0)>=(e|0))break;if(!(r[(a[(a[f+(n<<2)>>2]|0)+16>>2]|0)+157>>0]|0))BH(A,n,i,f);n=n+1|0}return}function BH(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0,l=0,t=0,s=0,b=0,u=0,w=0,k=0.0,o=0,h=0;h=(a[f+(e<<2)>>2]|0)+16|0;b=a[h>>2]|0;r[b+157>>0]=1;r[b+158>>0]=1;b=A+(e*20|0)|0;u=A+(e*20|0)+16|0;w=A+(e*20|0)+4|0;k=(i|0)==3?-1.0:1.0;s=1;A:while(1){if((s|0)>=(a[b>>2]|0)){n=14;break}n=(a[u>>2]|0)+(s<<2)|0;do{if(!(+c[n>>2]==1.0)){o=a[(a[w>>2]|0)+(s<<2)>>2]|0;l=a[(a[f+(o<<2)>>2]|0)+16>>2]|0;if(!(r[l+158>>0]|0)){if(r[l+157>>0]|0)break;BH(A,o,i,f);break}c[n>>2]=k;l=A+(o*20|0)+4|0;t=a[A+(o*20|0)>>2]|0;n=1;while(1){if((n|0)>=(t|0)){n=9;break A}if((a[(a[l>>2]|0)+(n<<2)>>2]|0)==(e|0))break;n=n+1|0}c[(a[A+(o*20|0)+16>>2]|0)+(n<<2)>>2]=-1.0}}while(0);s=s+1|0}if((n|0)==9)gA(89144,89118,721,89164);else if((n|0)==14){r[(a[h>>2]|0)+158>>0]=0;return}}function gH(A){A=A|0;var e=0,i=0;i=k;k=k+16|0;e=i;A=kR(A,Yo(A,0,89305,0)|0,2,0)|0;if((A|0)==0|(A|0)>2){a[e>>2]=89305;ao(0,89314,e)|0;A=2}k=i;return A|0}function vH(A){A=A|0;var e=0,i=0,r=0;i=gh(A)|0;a[46796]=Yo(A,1,102623,0)|0;r=Yo(A,1,90660,0)|0;e=cd(A)|0;while(1){if(!e)break;RX(e);XX(a[46796]|0,r,e,i)|0;e=sd(A,e)|0}i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;EH(e);e=_o(A,e)|0}i=sd(A,i)|0}return}function EH(A){A=A|0;var e=0.0;Td(A,137460,176,1)|0;VR(A)|0;e=+oR(A,a[47174]|0,1.0,1.0);s[(a[A+16>>2]|0)+128>>3]=e;return}function CH(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,n=0;A=qF(64)|0;i=A+8|0;r=e+8|0;n=i+48|0;do{a[i>>2]=a[r>>2];i=i+4|0;r=r+4|0}while((i|0)<(n|0));e=a[e+56>>2]|0;a[A+56>>2]=e;f[(a[e+16>>2]|0)+168>>1]=1;return A|0}function IH(A,e,i){A=A|0;e=e|0;i=i|0;L2(e);return}function ZH(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;A=a[e>>2]|0;r=a[i>>2]|0;if(A>>>0<=r>>>0)if(A>>>0>=r>>>0){r=a[e+24>>2]|0;A=a[i+24>>2]|0;if(r>>>0<=A>>>0)if(r>>>0>=A>>>0){A=~~(+s[e+8>>3]-+s[i+8>>3]);if(!A){A=~~(+s[e+16>>3]-+s[i+16>>3]);if(!A){A=~~(+s[e+32>>3]-+s[i+32>>3]);if(!A)A=~~(+s[e+40>>3]-+s[i+40>>3])}}}else A=-1;else A=1}else A=-1;else A=1;return A|0}function GH(A,e,i){A=A|0;e=e|0;i=i|0;var n=0,l=0,t=0,c=0,s=0,b=0.0;s=k;k=k+16|0;n=s;l=e+16|0;t=f[(a[l>>2]|0)+168>>1]|0;c=t<<16>>16;if(t<<16>>16!=1&(r[194954]|0)==0){t=$F(c<<2)|0;n=0;while(1){if((n|0)>=(c|0))break;a[t+(n<<2)>>2]=e;e=a[(a[e+16>>2]|0)+172>>2]|0;n=n+1|0}b=+(i|0);LN(A,t,0,c,b,b,17792);e=0;while(1){if((e|0)>=(c|0))break;n=a[t+(e<<2)>>2]|0;l=n+16|0;if(a[(a[l>>2]|0)+96>>2]|0){i=Id(a[((a[n>>2]&3|0)==3?n:n+48|0)+40>>2]|0)|0;HR(i,a[(a[l>>2]|0)+96>>2]|0)}FN(n);e=e+1|0}L2(t)}else{a[n>>2]=e;b=+(i|0);LN(A,n,0,1,b,b,17792);if(a[(a[l>>2]|0)+96>>2]|0){c=Id(a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0;HR(c,a[(a[l>>2]|0)+96>>2]|0)}FN(e)}k=s;return}function mH(A){A=A|0;return 0}function QH(A){A=A|0;return 0}function LH(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0.0,b=0.0,u=0.0,w=0.0,o=0.0,h=0.0,d=0,B=0.0,g=0,v=0,E=0,C=0.0,I=0.0,Z=0.0,G=0,m=0,Q=0,L=0,y=0,W=0,Y=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0;H=k;k=k+384|0;R=H+368|0;X=H+112|0;l=H+32|0;d=H+336|0;V=H+320|0;J=H+304|0;p=H+288|0;N=H+272|0;n=H+256|0;W=H+240|0;Y=H+224|0;F=H+208|0;g=H+192|0;v=H+176|0;E=H+160|0;G=H+144|0;m=H+128|0;Q=H+96|0;L=H+16|0;y=H;A:do{switch(bp(A)|0){case 3:case 1:{f=qF(8)|0;G=A+16|0;A=a[G>>2]|0;n=a[A+12>>2]|0;do{if(!(i<<24>>24)){A=a[n+8>>2]|0;if((A|0)>2){Z=0.0;l=a[n+44>>2]|0;i=0;o=+c[e>>2];h=+c[e+4>>2];break}else{Z=+c8()*.01;A=8;l=0;i=1;o=0.0;h=0.0;break}}else if(!(a[n+40>>2]&2048)){h=+s[A+88>>3];o=-h;Z=+s[A+80>>3];I=Z*-.5;s[l>>3]=o;s[l+8>>3]=I;s[l+16>>3]=h;s[l+24>>3]=I;Z=Z*.5;s[l+32>>3]=h;s[l+40>>3]=Z;s[l+48>>3]=o;s[l+56>>3]=Z;Z=0.0;A=4;i=0;o=0.0;h=0.0;break}else{XR(d,n);o=+s[d>>3];I=+s[d+8>>3];h=+s[d+16>>3];Z=+s[d+24>>3];s[l>>3]=o;s[l+8>>3]=I;s[l+16>>3]=h;s[l+24>>3]=I;s[l+32>>3]=h;s[l+40>>3]=Z;s[l+48>>3]=o;s[l+56>>3]=Z;Z=0.0;A=4;i=0;o=0.0;h=0.0;break}}while(0);a[f+4>>2]=A;d=qF(A<<4)|0;a[f>>2]=d;B=1.0/+(A|0);g=e+8|0;v=e+4|0;E=(A|0)==4;C=-o;I=-h;n=0;while(1){if((A|0)<=(n|0))break A;do{if(i){t=+(n|0)*6.283185307179586*B+Z;b=+D(+t);t=+M(+t);if(!(r[g>>0]|0)){X=a[G>>2]|0;u=t*+c[v>>2]*+s[X+80>>3];t=b*+c[e>>2]*(+s[X+96>>3]+ +s[X+88>>3])}else{X=a[G>>2]|0;u=(+s[X+80>>3]+ +c[v>>2])*t;t=(+s[X+96>>3]+ +s[X+88>>3]+ +c[e>>2])*b}w=t*.5;t=u*.5}else{if(!(r[g>>0]|0)){w=+s[l+(n<<4)>>3]*o;t=+s[l+(n<<4)+8>>3]*h;break}if(!E){w=+s[l+(n<<4)>>3];t=+s[l+(n<<4)+8>>3];u=+z(+(t*t+w*w));w=(o/u+1.0)*w;t=(h/u+1.0)*t;break}switch(n|0){case 0:{b=h;t=o;break}case 1:{b=h;t=C;break}case 2:{b=I;t=C;break}case 3:{b=I;t=o;break}default:{b=0.0;t=0.0}}w=+s[l+(n<<4)>>3]+t;t=+s[l+(n<<4)+8>>3]+b}}while(0);R=a[G>>2]|0;X=A-n+-1|0;s[d+(X<<4)>>3]=+s[R+16>>3]+w;s[d+(X<<4)+8>>3]=+s[R+24>>3]+t;n=n+1|0}}case 2:{y=A+16|0;f=a[(a[y>>2]|0)+12>>2]|0;t=+s[f+16>>3];w=+s[f+24>>3];b=+s[f+32>>3];u=+s[f+40>>3];f=qF(8)|0;a[f+4>>2]=4;A=qF(64)|0;a[f>>2]=A;y=(a[y>>2]|0)+16|0;a[X>>2]=a[y>>2];a[X+4>>2]=a[y+4>>2];a[X+8>>2]=a[y+8>>2];a[X+12>>2]=a[y+12>>2];if(!(r[e+8>>0]|0)){a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];WH(n,t,w,R,e);a[A>>2]=a[n>>2];a[A+4>>2]=a[n+4>>2];a[A+8>>2]=a[n+8>>2];a[A+12>>2]=a[n+12>>2];N=(a[f>>2]|0)+16|0;a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];WH(W,t,u,R,e);a[N>>2]=a[W>>2];a[N+4>>2]=a[W+4>>2];a[N+8>>2]=a[W+8>>2];a[N+12>>2]=a[W+12>>2];N=(a[f>>2]|0)+32|0;a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];WH(Y,b,u,R,e);a[N>>2]=a[Y>>2];a[N+4>>2]=a[Y+4>>2];a[N+8>>2]=a[Y+8>>2];a[N+12>>2]=a[Y+12>>2];N=(a[f>>2]|0)+48|0;a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];WH(F,b,w,R,e);a[N>>2]=a[F>>2];a[N+4>>2]=a[F+4>>2];a[N+8>>2]=a[F+8>>2];a[N+12>>2]=a[F+12>>2];break A}else{Z=t-+c[e>>2];F=e+4|0;I=w-+c[F>>2];a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];yH(V,Z,I,R);a[A>>2]=a[V>>2];a[A+4>>2]=a[V+4>>2];a[A+8>>2]=a[V+8>>2];a[A+12>>2]=a[V+12>>2];V=(a[f>>2]|0)+16|0;I=t-+c[e>>2];Z=u+ +c[F>>2];a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];yH(J,I,Z,R);a[V>>2]=a[J>>2];a[V+4>>2]=a[J+4>>2];a[V+8>>2]=a[J+8>>2];a[V+12>>2]=a[J+12>>2];J=(a[f>>2]|0)+32|0;Z=b+ +c[e>>2];I=u+ +c[F>>2];a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];yH(p,Z,I,R);a[J>>2]=a[p>>2];a[J+4>>2]=a[p+4>>2];a[J+8>>2]=a[p+8>>2];a[J+12>>2]=a[p+12>>2];p=(a[f>>2]|0)+48|0;I=b+ +c[e>>2];Z=w-+c[F>>2];a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];yH(N,I,Z,R);a[p>>2]=a[N>>2];a[p+4>>2]=a[N+4>>2];a[p+8>>2]=a[N+8>>2];a[p+12>>2]=a[N+12>>2];break A}}case 4:{A=A+16|0;f=qF(8)|0;a[f+4>>2]=4;n=qF(64)|0;a[f>>2]=n;l=a[A>>2]|0;N=l+16|0;a[X>>2]=a[N>>2];a[X+4>>2]=a[N+4>>2];a[X+8>>2]=a[N+8>>2];a[X+12>>2]=a[N+12>>2];t=-+s[l+88>>3];if(!(r[e+8>>0]|0)){I=-+s[l+80>>3];a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];WH(m,t,I,R,e);a[n>>2]=a[m>>2];a[n+4>>2]=a[m+4>>2];a[n+8>>2]=a[m+8>>2];a[n+12>>2]=a[m+12>>2];N=(a[f>>2]|0)+16|0;p=a[A>>2]|0;I=-+s[p+88>>3];Z=+s[p+80>>3];a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];WH(Q,I,Z,R,e);a[N>>2]=a[Q>>2];a[N+4>>2]=a[Q+4>>2];a[N+8>>2]=a[Q+8>>2];a[N+12>>2]=a[Q+12>>2];N=(a[f>>2]|0)+32|0;p=a[A>>2]|0;Z=+s[p+96>>3];I=+s[p+80>>3];a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];WH(L,Z,I,R,e);a[N>>2]=a[L>>2];a[N+4>>2]=a[L+4>>2];a[N+8>>2]=a[L+8>>2];a[N+12>>2]=a[L+12>>2];N=(a[f>>2]|0)+48|0;p=a[A>>2]|0;I=+s[p+96>>3];Z=-+s[p+80>>3];a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];WH(y,I,Z,R,e);a[N>>2]=a[y>>2];a[N+4>>2]=a[y+4>>2];a[N+8>>2]=a[y+8>>2];a[N+12>>2]=a[y+12>>2];break A}else{Z=t-+c[e>>2];p=e+4|0;I=-+s[l+80>>3]-+c[p>>2];a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];yH(g,Z,I,R);a[n>>2]=a[g>>2];a[n+4>>2]=a[g+4>>2];a[n+8>>2]=a[g+8>>2];a[n+12>>2]=a[g+12>>2];N=(a[f>>2]|0)+16|0;J=a[A>>2]|0;I=-+s[J+88>>3]-+c[e>>2];Z=+s[J+80>>3]+ +c[p>>2];a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];yH(v,I,Z,R);a[N>>2]=a[v>>2];a[N+4>>2]=a[v+4>>2];a[N+8>>2]=a[v+8>>2];a[N+12>>2]=a[v+12>>2];N=(a[f>>2]|0)+32|0;J=a[A>>2]|0;Z=+s[J+96>>3]+ +c[e>>2];I=+s[J+80>>3]+ +c[p>>2];a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];yH(E,Z,I,R);a[N>>2]=a[E>>2];a[N+4>>2]=a[E+4>>2];a[N+8>>2]=a[E+8>>2];a[N+12>>2]=a[E+12>>2];N=(a[f>>2]|0)+48|0;J=a[A>>2]|0;I=+s[J+96>>3]+ +c[e>>2];Z=-+s[J+80>>3]-+c[p>>2];a[R>>2]=a[X>>2];a[R+4>>2]=a[X+4>>2];a[R+8>>2]=a[X+8>>2];a[R+12>>2]=a[X+12>>2];yH(G,I,Z,R);a[N>>2]=a[G>>2];a[N+4>>2]=a[G+4>>2];a[N+8>>2]=a[G+8>>2];a[N+12>>2]=a[G+12>>2];break A}}default:f=0}}while(0);k=H;return f|0}function yH(A,e,i,r){A=A|0;e=+e;i=+i;r=r|0;i=+s[r+8>>3]+i;s[A>>3]=+s[r>>3]+e;s[A+8>>3]=i;return}function WH(A,e,i,r,f){A=A|0;e=+e;i=+i;r=r|0;f=f|0;i=+c[f+4>>2]*i+ +s[r+8>>3];s[A>>3]=+c[f>>2]*e+ +s[r>>3];s[A+8>>3]=i;return}function zH(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0;w=k;k=k+112|0;c=w+88|0;t=w+72|0;s=w+32|0;b=w+16|0;u=w;f=w+56|0;n=w+40|0;l=e+48|0;d=(a[(a[((a[e>>2]&3|0)==3?e:l)+40>>2]|0)+16>>2]|0)+16|0;o=e+16|0;h=(a[o>>2]|0)+16|0;a[t>>2]=a[d>>2];a[t+4>>2]=a[d+4>>2];a[t+8>>2]=a[d+8>>2];a[t+12>>2]=a[d+12>>2];a[c>>2]=a[h>>2];a[c+4>>2]=a[h+4>>2];a[c+8>>2]=a[h+8>>2];a[c+12>>2]=a[h+12>>2];YH(f,t,c);a[b>>2]=a[f>>2];a[b+4>>2]=a[f+4>>2];a[b+8>>2]=a[f+8>>2];a[b+12>>2]=a[f+12>>2];f=e+-48|0;h=(a[(a[((a[e>>2]&3|0)==2?e:f)+40>>2]|0)+16>>2]|0)+16|0;o=(a[o>>2]|0)+56|0;a[t>>2]=a[h>>2];a[t+4>>2]=a[h+4>>2];a[t+8>>2]=a[h+8>>2];a[t+12>>2]=a[h+12>>2];a[c>>2]=a[o>>2];a[c+4>>2]=a[o+4>>2];a[c+8>>2]=a[o+8>>2];a[c+12>>2]=a[o+12>>2];YH(n,t,c);a[u>>2]=a[n>>2];a[u+4>>2]=a[n+4>>2];a[u+8>>2]=a[n+8>>2];a[u+12>>2]=a[n+12>>2];if(!r){n=-1111;f=-1111}else{d=a[e>>2]&3;n=a[(a[(a[((d|0)==2?e:f)+40>>2]|0)+16>>2]|0)+288>>2]|0;f=a[(a[(a[((d|0)==3?e:l)+40>>2]|0)+16>>2]|0)+288>>2]|0}a[t>>2]=a[b>>2];a[t+4>>2]=a[b+4>>2];a[t+8>>2]=a[b+8>>2];a[t+12>>2]=a[b+12>>2];a[c>>2]=a[u>>2];a[c+4>>2]=a[u+4>>2];a[c+8>>2]=a[u+8>>2];a[c+12>>2]=a[u+12>>2];Yt(i,t,f,c,n,s)|0;o=s;h=a[o+4>>2]|0;d=A;a[d>>2]=a[o>>2];a[d+4>>2]=h;k=w;return}function YH(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;r=+s[i+8>>3]+ +s[e+8>>3];s[A>>3]=+s[i>>3]+ +s[e>>3];s[A+8>>3]=r;return}function DH(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0;v=k;k=k+144|0;o=v+104|0;h=v+88|0;w=v+80|0;u=v+72|0;c=v+64|0;B=v+128|0;s=v+32|0;b=v+124|0;g=v+16|0;d=v;t=v+120|0;l=(a[e+16>>2]|0)+144|0;n=a[l>>2]|0;l=a[l+4>>2]|0;E=c;a[E>>2]=n;a[E+4>>2]=l;E=n;a[g>>2]=a[E>>2];a[g+4>>2]=a[E+4>>2];a[g+8>>2]=a[E+8>>2];a[g+12>>2]=a[E+12>>2];l=n+(l+-1<<4)|0;a[d>>2]=a[l>>2];a[d+4>>2]=a[l+4>>2];a[d+8>>2]=a[l+8>>2];a[d+12>>2]=a[l+12>>2];A:do{if(!(f<<24>>24)){n=-1111;f=-1111}else{n=-1111;f=-1111;l=0;while(1){if((l|0)>=(r|0))break A;if((f|0)==-1111){f=a[i+(l<<2)>>2]|0;a[h>>2]=a[f>>2];a[h+4>>2]=a[f+4>>2];a[o>>2]=a[g>>2];a[o+4>>2]=a[g+4>>2];a[o+8>>2]=a[g+8>>2];a[o+12>>2]=a[g+12>>2];f=(Dt(h,o)|0)==0;f=f?-1111:l}if((n|0)==-1111){n=a[i+(l<<2)>>2]|0;a[h>>2]=a[n>>2];a[h+4>>2]=a[n+4>>2];a[o>>2]=a[d>>2];a[o+4>>2]=a[d+4>>2];a[o+8>>2]=a[d+8>>2];a[o+12>>2]=a[d+12>>2];n=(Dt(h,o)|0)==0;n=n?-1111:l}l=l+1|0}}}while(0);MH(i,r,f,n,t,b);a[s>>2]=0;a[s+4>>2]=0;a[s+8>>2]=0;a[s+12>>2]=0;a[s+16>>2]=0;a[s+20>>2]=0;a[s+24>>2]=0;a[s+28>>2]=0;l=a[t>>2]|0;E=a[b>>2]|0;a[o>>2]=a[c>>2];a[o+4>>2]=a[c+4>>2];if((Mt(l,E,o,s,B)|0)<0){g=Vh(a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0;E=Vh(a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0)|0;a[u>>2]=g;a[u+4>>2]=E;ao(1,89657,u)|0}else{if(0>1){n=a[15712]|0;u=Vh(a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0;f=e+-48|0;E=Vh(a[((a[e>>2]&3|0)==2?e:f)+40>>2]|0)|0;a[w>>2]=u;a[w+4>>2]=E;f3(n,89705,w)|0;n=e}else{f=e+-48|0;n=e}vN(e,a[((a[n>>2]&3|0)==2?e:f)+40>>2]|0,a[B>>2]|0,a[B+4>>2]|0,17792);L2(l);a[h>>2]=a[g>>2];a[h+4>>2]=a[g+4>>2];a[h+8>>2]=a[g+8>>2];a[h+12>>2]=a[g+12>>2];a[o>>2]=a[d>>2];a[o+4>>2]=a[d+4>>2];a[o+8>>2]=a[d+8>>2];a[o+12>>2]=a[d+12>>2];XN(A,e,h,o)}k=v;return}function MH(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0;t=0;l=0;while(1){if((t|0)>=(e|0))break;if(!((t|0)==(i|0)|(t|0)==(r|0)))l=(a[(a[A+(t<<2)>>2]|0)+4>>2]|0)+l|0;t=t+1|0}k=$F(l<<5)|0;t=0;w=0;while(1){if((w|0)>=(e|0))break;A:do{if(!((w|0)==(i|0)|(w|0)==(r|0))){u=A+(w<<2)|0;b=0;while(1){c=a[u>>2]|0;s=a[c+4>>2]|0;if((b|0)>=(s|0))break A;o=b+1|0;h=k+(t<<5)|0;c=(a[c>>2]|0)+(b<<4)|0;a[h>>2]=a[c>>2];a[h+4>>2]=a[c+4>>2];a[h+8>>2]=a[c+8>>2];a[h+12>>2]=a[c+12>>2];c=k+(t<<5)+16|0;s=(a[a[u>>2]>>2]|0)+(((o|0)<(s|0)?o:0)<<4)|0;a[c>>2]=a[s>>2];a[c+4>>2]=a[s+4>>2];a[c+8>>2]=a[s+8>>2];a[c+12>>2]=a[s+12>>2];b=o;t=t+1|0}}}while(0);w=w+1|0}if((t|0)==(l|0)){a[f>>2]=k;a[n>>2]=l;return}else gA(89719,89726,77,89741)}function FH(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0;u=k;k=k+32|0;s=u+12|0;r=u;iP(r,A);a[s>>2]=a[r>>2];a[s+4>>2]=a[r+4>>2];a[s+8>>2]=a[r+8>>2];r=cd(A)|0;while(1){if(!r)break;n=Oo(A,r)|0;while(1){if(!n)break;kN(n);n=_o(A,n)|0}r=sd(A,r)|0}l=jk(17756,a[4581]|0)|0;r=cd(A)|0;while(1){if(!r)break;n=Oo(A,r)|0;while(1){if(!n)break;if((a[47134]|0)>1?(t=a[n+16>>2]|0,(a[t+8>>2]|0)!=0):0){w=t+168|0;f[w>>1]=(f[w>>1]|0)+1<<16>>16}else b=14;if((b|0)==14?(b=0,c=VH(l,n)|0,(c|0)!=(n|0)):0){w=a[c+16>>2]|0;o=w+168|0;f[o>>1]=(f[o>>1]|0)+1<<16>>16;w=w+172|0;a[(a[n+16>>2]|0)+172>>2]=a[w>>2];a[w>>2]=n}n=_o(A,n)|0}r=sd(A,r)|0}Hk(l)|0;if(!(y5[e&63](A,s,i)|0)){a[47138]=1;r=0}else r=1;k=u;return r|0}function VH(A,e){A=A|0;e=e|0;var i=0,r=0,f=0.0,n=0.0,l=0,t=0.0,c=0.0,b=0.0,u=0.0,w=0,o=0,h=0;h=k;k=k+64|0;o=h;r=a[e>>2]&3;l=a[((r|0)==3?e:e+48|0)+40>>2]|0;r=a[((r|0)==2?e:e+-48|0)+40>>2]|0;do{if(l>>>0>=r>>>0){i=e+16|0;if(l>>>0>r>>>0){i=a[i>>2]|0;w=r;r=l;c=+s[i+16>>3];b=+s[i+24>>3];n=+s[i+56>>3];f=+s[i+64>>3];break}w=a[i>>2]|0;t=+s[w+56>>3];u=+s[w+64>>3];n=+s[w+16>>3];f=+s[w+24>>3];if(!(n t)){i=f>u;if(f>2]|0;w=l;c=+s[i+56>>3];b=+s[i+64>>3];n=+s[i+16>>3];f=+s[i+24>>3]}}while(0);a[o+8>>2]=w;s[o+16>>3]=n;s[o+24>>3]=f;a[o+32>>2]=r;s[o+40>>3]=c;s[o+48>>3]=b;a[o+56>>2]=e;o=a[(y5[a[A>>2]&63](A,o,1)|0)+56>>2]|0;k=h;return o|0}function JH(A,e){A=A|0;e=e|0;return FH(A,21,e)|0}function pH(A,e,i){A=A|0;e=e|0;i=i|0;var n=0,l=0,t=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0.0,D=0;z=k;k=k+112|0;Q=z+88|0;m=z+72|0;g=z+40|0;h=z+8|0;o=z;v=z+64|0;L=z+48|0;y=z+24|0;n=(a[47134]|0)>1&1;do{if((i|0)>5){B=qF((gh(A)|0)<<2)|0;w=(i|0)==8;u=w&1;b=cd(A)|0;d=0;while(1){if(!b)break;l=LH(b,e,u)|0;t=(a[b+16>>2]|0)+288|0;if(!l){a[t>>2]=-1111;l=d}else{a[t>>2]=d;a[B+(d<<2)>>2]=l;l=d+1|0}b=sd(A,b)|0;d=l}if(B){l=qS(B,d)|0;if(l|0){if(w){Z=0;G=B;I=B;C=1;break}Z=yt(B,d)|0;G=B;I=B;C=1;break}if(w){ao(0,89755,o)|0;l=0;Z=0;G=B;I=B;C=1;break}else{Y=+c[e+4>>2];s[h>>3]=+c[e>>2];s[h+8>>3]=Y;ao(0,89833,h)|0;l=0;Z=0;G=B;I=B;C=1;break}}else{l=0;Z=0;G=0;I=0;C=0}}else{l=0;Z=0;G=0;d=0;I=0;C=0}}while(0);if(0){}E=(Z|0)!=0;A:do{if(!E){if((i|0)==8&(l|0)!=0){ce(A,0);n=1}}else{t=cd(A)|0;while(1){if(!t)break A;l=Oo(A,t)|0;while(1){if(!l)break;g=(a[l+16>>2]|0)+144|0;zH(v,l,Z,1,0,0);h=v;B=a[h+4>>2]|0;a[g>>2]=a[h>>2];a[g+4>>2]=B;l=_o(A,l)|0}t=sd(A,t)|0}}}while(0);o=(n|0)==0;h=A+60|0;B=(i|0)==10;n=0;w=cd(A)|0;l=0;while(1){if(!w)break;g=w+16|0;e=Oo(A,w)|0;while(1){if(!e)break;u=a[((a[e>>2]&3|0)==2?e:e+-48|0)+40>>2]|0;t=e+16|0;b=a[t>>2]|0;if(!o?(a[b+8>>2]|0)!=0:0){D=(a[g>>2]|0)+16|0;v=b+16|0;a[m>>2]=a[D>>2];a[m+4>>2]=a[D+4>>2];a[m+8>>2]=a[D+8>>2];a[m+12>>2]=a[D+12>>2];a[Q>>2]=a[v>>2];a[Q+4>>2]=a[v+4>>2];a[Q+8>>2]=a[v+8>>2];a[Q+12>>2]=a[v+12>>2];YH(L,m,Q);u=(a[u+16>>2]|0)+16|0;v=(a[t>>2]|0)+56|0;a[m>>2]=a[u>>2];a[m+4>>2]=a[u+4>>2];a[m+8>>2]=a[u+8>>2];a[m+12>>2]=a[u+12>>2];a[Q>>2]=a[v>>2];a[Q+4>>2]=a[v+4>>2];a[Q+8>>2]=a[v+8>>2];a[Q+12>>2]=a[v+12>>2];YH(y,m,Q);a[m>>2]=a[L>>2];a[m+4>>2]=a[L+4>>2];a[m+8>>2]=a[L+8>>2];a[m+12>>2]=a[L+12>>2];a[Q>>2]=a[y>>2];a[Q+4>>2]=a[y+4>>2];a[Q+8>>2]=a[y+8>>2];a[Q+12>>2]=a[y+12>>2];XN(A,e,m,Q)}else W=35;A:do{if((W|0)==35){W=0;D=f[b+168>>1]|0;t=D<<16>>16;if(D<<16>>16){if((w|0)==(u|0)){if(!n){l=qF(96)|0;a[l+84>>2]=qF(((gh(A)|0)<<5)+11520|0)|0;n=l}GH(n,e,a[(a[(a[h>>2]|0)+16>>2]|0)+248>>2]|0);break}if(!E){rp(A,e,i,17792);break}t=r[194954]|0?1:t;b=e;u=0;while(1){if((u|0)>=(t|0))break A;if(B)DH(A,b,G,d,1);else NH(A,b);b=a[(a[b+16>>2]|0)+172>>2]|0;u=u+1|0}}}}while(0);e=_o(A,e)|0}w=sd(A,w)|0}if(E)zt(Z);if(n|0){L2(a[n+84>>2]|0);L2(l)}if(C){n=0;while(1){if((n|0)>=(d|0))break;L2(a[G+(n<<2)>>2]|0);n=n+1|0}L2(I)}k=z;return 0}function NH(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0;s=k;k=k+96|0;n=s+64|0;f=s+48|0;i=s+40|0;l=s+80|0;r=s+32|0;t=s+16|0;c=s;b=(a[e+16>>2]|0)+144|0;u=a[b>>2]|0;b=a[b+4>>2]|0;w=r;a[w>>2]=u;a[w+4>>2]=b;w=u;a[t>>2]=a[w>>2];a[t+4>>2]=a[w+4>>2];a[t+8>>2]=a[w+8>>2];a[t+12>>2]=a[w+12>>2];b=u+(b+-1<<4)|0;a[c>>2]=a[b>>2];a[c+4>>2]=a[b+4>>2];a[c+8>>2]=a[b+8>>2];a[c+12>>2]=a[b+12>>2];a[n>>2]=a[r>>2];a[n+4>>2]=a[r+4>>2];Gc(n,l);if(0>1){w=a[15712]|0;b=Vh(a[((a[e>>2]&3|0)==3?e:e+48|0)+40>>2]|0)|0;r=e+-48|0;u=Vh(a[((a[e>>2]&3|0)==2?e:r)+40>>2]|0)|0;a[i>>2]=b;a[i+4>>2]=u;f3(w,89981,i)|0;i=r;r=e}else{i=e+-48|0;r=e}vN(e,a[((a[r>>2]&3|0)==2?e:i)+40>>2]|0,a[l>>2]|0,a[l+4>>2]|0,17792);a[f>>2]=a[t>>2];a[f+4>>2]=a[t+4>>2];a[f+8>>2]=a[t+8>>2];a[f+12>>2]=a[t+12>>2];a[n>>2]=a[c>>2];a[n+4>>2]=a[c+4>>2];a[n+8>>2]=a[c+8>>2];a[n+12>>2]=a[c+12>>2];XN(A,e,f,n);k=s;return}function RH(A,e){A=A|0;e=e|0;var i=0;i=f[(a[A+16>>2]|0)+136>>1]&14;if(e<<24>>24)XH(A)|0;if(i<<16>>16)JH(A,i&65535)|0;return}function XH(A){A=A|0;var e=0,i=0,r=0,f=0;i=HH(A)|0;e=cd(A)|0;while(1){if(!e)break;r=a[e+16>>2]|0;f=a[r+132>>2]|0;s[r+16>>3]=+s[f>>3]*72.0;s[r+24>>3]=+s[f+8>>3]*72.0;e=sd(A,e)|0}return i|0}function HH(A){A=A|0;var e=0,i=0,r=0,f=0.0,n=0.0,l=0.0,t=0,c=0;A:do{if((a[A+60>>2]|0)==(A|0)?(i=A+16|0,r=a[i>>2]|0,(a[(a[r+8>>2]|0)+84>>2]|0)!=0):0){if(!(+s[r+16>>3]!=0.0)?!(+s[r+24>>3]!=0.0):0)e=0;else{UH(A);e=1;r=a[i>>2]|0}t=(a[r+116>>2]&1|0)==0;if(!t){c=r+32|0;l=+s[c>>3];i=r+40|0;s[c>>3]=+s[i>>3];s[i>>3]=l}i=a[r+8>>2]|0;e:do{switch(a[i+84>>2]|0){case 2:{f=+s[i+64>>3];if(f<=0.0)break A;n=f/+s[r+32>>3];f=+s[i+72>>3]/+s[r+40>>3];if(n<1.0|f<1.0)if(n >3];if(f<=0.0)break A;n=f/+s[r+32>>3];f=+s[i+72>>3]/+s[r+40>>3];if(!(n>1.0&f>1.0))break A;f=n >3];f=+s[r+40>>3]/+s[r+32>>3];if(f 1){i=cd(A)|0;while(1){if(!i)break e;e=Oo(A,i)|0;while(1){if(!e)break;if(a[(a[e+16>>2]|0)+8>>2]|0)xH(e,f,n);e=_o(A,e)|0}i=sd(A,i)|0}}}while(0);e=cd(A)|0;while(1){if(!e)break;c=a[(a[e+16>>2]|0)+132>>2]|0;s[c>>3]=+s[c>>3]*f;c=c+8|0;s[c>>3]=+s[c>>3]*n;e=sd(A,e)|0}TH(A,f,n);e=1}else e=0}while(0);return e|0}function UH(A){A=A|0;var e=0,i=0,f=0.0,n=0.0,l=0.0,t=0.0,c=0,b=0,u=0,w=0;u=k;k=k+32|0;c=u+16|0;b=u;e=(a[A+16>>2]|0)+16|0;a[b>>2]=a[e>>2];a[b+4>>2]=a[e+4>>2];a[b+8>>2]=a[e+8>>2];a[b+12>>2]=a[e+12>>2];f=+s[b>>3];n=f*.013888888888888888;l=+s[b+8>>3];t=l*.013888888888888888;e=cd(A)|0;while(1){if(!e)break;i=a[e+16>>2]|0;w=a[i+132>>2]|0;s[w>>3]=+s[w>>3]-n;w=w+8|0;s[w>>3]=+s[w>>3]-t;i=a[i+108>>2]|0;if(i|0?r[i+81>>0]|0:0){w=i+56|0;s[w>>3]=+s[w>>3]-f;w=i+64|0;s[w>>3]=+s[w>>3]-l}e=sd(A,e)|0}i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;if(a[(a[e+16>>2]|0)+8>>2]|0){a[c>>2]=a[b>>2];a[c+4>>2]=a[b+4>>2];a[c+8>>2]=a[b+8>>2];a[c+12>>2]=a[b+12>>2];jH(e,c)}e=_o(A,e)|0}i=sd(A,i)|0}a[c>>2]=a[b>>2];a[c+4>>2]=a[b+4>>2];a[c+8>>2]=a[b+8>>2];a[c+12>>2]=a[b+12>>2];PH(A,c);k=u;return}function xH(A,e,i){A=A|0;e=+e;i=+i;var f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0.0,o=0,h=0.0,d=0.0,B=0.0,g=0.0,v=0;o=a[A>>2]&3;l=a[(a[(a[((o|0)==2?A:A+-48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;B=(e+-1.0)*72.0;h=B*+s[l>>3];g=(i+-1.0)*72.0;d=g*+s[l+8>>3];o=a[(a[(a[((o|0)==3?A:A+48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;B=B*+s[o>>3];g=g*+s[o+8>>3];o=a[A+16>>2]|0;l=a[o+8>>2]|0;t=a[l+4>>2]|0;c=t+-1|0;A=0;l=a[l>>2]|0;while(1){if((A|0)>=(t|0))break;b=a[l+4>>2]|0;u=b+-1|0;w=(A|0)==(c|0);f=0;n=a[l>>2]|0;while(1){if((f|0)>=(b|0))break;do{if(f|A){k=+s[n>>3];if((f|0)==(u|0)&w){s[n>>3]=k+h;v=n+8|0;s[v>>3]=+s[v>>3]+d;break}else{s[n>>3]=k*e;v=n+8|0;s[v>>3]=+s[v>>3]*i;break}}else{s[n>>3]=+s[n>>3]+B;v=n+8|0;s[v>>3]=+s[v>>3]+g}}while(0);f=f+1|0;n=n+16|0}if(a[l+8>>2]|0){v=l+16|0;s[v>>3]=+s[v>>3]+B;v=l+24|0;s[v>>3]=+s[v>>3]+g}if(a[l+12>>2]|0){v=l+32|0;s[v>>3]=+s[v>>3]+h;v=l+40|0;s[v>>3]=+s[v>>3]+d}A=A+1|0;l=l+48|0}A=a[o+96>>2]|0;if(A|0?r[A+81>>0]|0:0){v=A+56|0;s[v>>3]=+s[v>>3]*e;v=A+64|0;s[v>>3]=+s[v>>3]*i}A=a[o+100>>2]|0;if(A|0?r[A+81>>0]|0:0){v=A+56|0;s[v>>3]=+s[v>>3]+h;v=A+64|0;s[v>>3]=+s[v>>3]+d}A=a[o+104>>2]|0;if(A|0?r[A+81>>0]|0:0){v=A+56|0;s[v>>3]=+s[v>>3]+B;v=A+64|0;s[v>>3]=+s[v>>3]+g}return}function TH(A,e,i){A=A|0;e=+e;i=+i;var f=0,n=0,l=0;l=A+16|0;n=a[l>>2]|0;A=n+32|0;s[A>>3]=+s[A>>3]*e;A=n+40|0;s[A>>3]=+s[A>>3]*i;A=n+16|0;s[A>>3]=+s[A>>3]*e;A=n+24|0;s[A>>3]=+s[A>>3]*i;A=a[n+12>>2]|0;if((A|0)!=0?(r[A+81>>0]|0)!=0:0){f=A+56|0;s[f>>3]=+s[f>>3]*e;f=A+64|0;s[f>>3]=+s[f>>3]*i;f=1;A=n}else{f=1;A=n}while(1){if((f|0)>(a[A+180>>2]|0))break;TH(a[(a[A+184>>2]|0)+(f<<2)>>2]|0,e,i);f=f+1|0;A=a[l>>2]|0}return}function jH(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0;c=a[A+16>>2]|0;A=a[c+8>>2]|0;t=a[A+4>>2]|0;b=e+8|0;A=a[A>>2]|0;n=0;while(1){if((n|0)>=(t|0))break;l=a[A+4>>2]|0;i=a[A>>2]|0;f=0;while(1){if((f|0)>=(l|0))break;s[i>>3]=+s[i>>3]-+s[e>>3];u=i+8|0;s[u>>3]=+s[u>>3]-+s[b>>3];i=i+16|0;f=f+1|0}if(a[A+8>>2]|0){u=A+16|0;s[u>>3]=+s[u>>3]-+s[e>>3];u=A+24|0;s[u>>3]=+s[u>>3]-+s[b>>3]}if(a[A+12>>2]|0){u=A+32|0;s[u>>3]=+s[u>>3]-+s[e>>3];u=A+40|0;s[u>>3]=+s[u>>3]-+s[b>>3]}A=A+48|0;n=n+1|0}A=a[c+96>>2]|0;if(A|0?r[A+81>>0]|0:0){u=A+56|0;s[u>>3]=+s[u>>3]-+s[e>>3];u=A+64|0;s[u>>3]=+s[u>>3]-+s[b>>3]}A=a[c+108>>2]|0;if(A|0?r[A+81>>0]|0:0){u=A+56|0;s[u>>3]=+s[u>>3]-+s[e>>3];u=A+64|0;s[u>>3]=+s[u>>3]-+s[b>>3]}A=a[c+100>>2]|0;if(A|0?r[A+81>>0]|0:0){u=A+56|0;s[u>>3]=+s[u>>3]-+s[e>>3];u=A+64|0;s[u>>3]=+s[u>>3]-+s[b>>3]}A=a[c+104>>2]|0;if(A|0?r[A+81>>0]|0:0){u=A+56|0;s[u>>3]=+s[u>>3]-+s[e>>3];u=A+64|0;s[u>>3]=+s[u>>3]-+s[b>>3]}return}function PH(A,e){A=A|0;e=e|0;var i=0,f=0.0,n=0.0,l=0,t=0,c=0,b=0;c=k;k=k+16|0;t=c;n=+s[e>>3];l=A+16|0;A=a[l>>2]|0;i=A+32|0;s[i>>3]=+s[i>>3]-n;f=+s[e+8>>3];i=A+40|0;s[i>>3]=+s[i>>3]-f;i=A+16|0;s[i>>3]=+s[i>>3]-n;i=A+24|0;s[i>>3]=+s[i>>3]-f;i=a[A+12>>2]|0;if((i|0)!=0?(r[i+81>>0]|0)!=0:0){b=i+56|0;s[b>>3]=+s[b>>3]-n;i=i+64|0;s[i>>3]=+s[i>>3]-f;i=1}else i=1;while(1){if((i|0)>(a[A+180>>2]|0))break;b=a[(a[A+184>>2]|0)+(i<<2)>>2]|0;a[t>>2]=a[e>>2];a[t+4>>2]=a[e+4>>2];a[t+8>>2]=a[e+8>>2];a[t+12>>2]=a[e+12>>2];PH(b,t);i=i+1|0;A=a[l>>2]|0}k=c;return}function SH(A){A=A|0;var e=0,i=0,r=0,f=0.0,n=0.0,l=0,t=0;l=k;k=k+16|0;i=l;xR(A);r=A+16|0;e=a[r>>2]|0;f=+s[e+16>>3]*.013888888888888888;n=+s[e+24>>3]*.013888888888888888;e=cd(A)|0;while(1){if(!e)break;t=a[(a[e+16>>2]|0)+132>>2]|0;s[t>>3]=+s[t>>3]-f;t=t+8|0;s[t>>3]=+s[t>>3]-n;e=sd(A,e)|0}t=(a[r>>2]|0)+16|0;a[i>>2]=a[t>>2];a[i+4>>2]=a[t+4>>2];a[i+8>>2]=a[t+8>>2];a[i+12>>2]=a[t+12>>2];OH(A,i);RH(A,1);k=l;return}function OH(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0.0,t=0.0;n=k;k=k+16|0;f=n;i=A+16|0;A=1;while(1){r=a[i>>2]|0;if((A|0)>(a[r+180>>2]|0))break;r=a[(a[r+184>>2]|0)+(A<<2)>>2]|0;a[f>>2]=a[e>>2];a[f+4>>2]=a[e+4>>2];a[f+8>>2]=a[e+8>>2];a[f+12>>2]=a[e+12>>2];OH(r,f);A=A+1|0}t=+s[e>>3];f=r+32|0;s[f>>3]=+s[f>>3]-t;l=+s[e+8>>3];e=r+40|0;s[e>>3]=+s[e>>3]-l;e=r+16|0;s[e>>3]=+s[e>>3]-t;e=r+24|0;s[e>>3]=+s[e>>3]-l;k=n;return}function KH(A,e,i,f,n){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;var l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0.0;o=(i|0)>2;w=0;k=0;t=a[f+4>>2]|0;A=a[f>>2]|0;while(1){if((k|0)>=(e|0)){A=0;break}l=a[(a[n+(k<<2)>>2]|0)+16>>2]|0;b=r[l+119>>0]|0;A:do{if(!(b<<24>>24)){c=A+8|0;s[A>>3]=+c8();l=t+8|0;s[t>>3]=+c8();if(o){A=2;while(1){if((A|0)==(i|0)){t=w;A=c;break A}h=+c8();s[(a[f+(A<<2)>>2]|0)+(k<<3)>>3]=h;A=A+1|0}}else{t=w;A=c}}else{c=a[l+132>>2]|0;u=A+8|0;s[A>>3]=+s[c>>3];l=t+8|0;s[t>>3]=+s[c+8>>3];e:do{if(o){t=2;A=c+16|0;while(1){if((t|0)==(i|0))break e;s[(a[f+(t<<2)>>2]|0)+(k<<3)>>3]=+s[A>>3];t=t+1|0;A=A+8|0}}}while(0);t=(b&255)>1?1:w;A=u}}while(0);w=t;k=k+1|0;t=l}while(1){if((A|0)>=(i|0))break;vO(e,a[f+(A<<2)>>2]|0);A=A+1|0}return w|0}function _H(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,b=0.0,u=0,w=0,k=0,o=0;i=qF(((U(e+1|0,e)|0)/2|0)<<2)|0;w=tU(e,e,0.0)|0;k=tU(e,e,0.0)|0;A:do{if(!(a[A+8>>2]|0)){r=0;while(1){if((r|0)>=(e|0))break A;n=a[A+(r*20|0)>>2]|0;l=A+(r*20|0)+4|0;t=w+(r<<2)|0;f=1;while(1){if((f|0)>=(n|0))break;u=a[(a[l>>2]|0)+(f<<2)>>2]|0;s[(a[w+(u<<2)>>2]|0)+(r<<3)>>3]=-1.0;s[(a[t>>2]|0)+(u<<3)>>3]=-1.0;f=f+1|0}r=r+1|0}}else{r=0;while(1){if((r|0)>=(e|0))break A;n=a[A+(r*20|0)>>2]|0;l=A+(r*20|0)+4|0;t=A+(r*20|0)+8|0;u=w+(r<<2)|0;f=1;while(1){if((f|0)>=(n|0))break;o=a[(a[l>>2]|0)+(f<<2)>>2]|0;b=-1.0/+c[(a[t>>2]|0)+(f<<2)>>2];s[(a[w+(o<<2)>>2]|0)+(r<<3)>>3]=b;s[(a[u>>2]|0)+(o<<3)>>3]=b;f=f+1|0}r=r+1|0}}}while(0);A:do{if(!(cP(e,w,k)|0)){L2(i);i=0}else{f=0;l=0;u=e;while(1){if((l|0)>=(e|0))break A;t=k+(l<<2)|0;r=l;n=f;while(1){if((r|0)==(e|0))break;if((l|0)==(r|0))b=0.0;else{o=a[t>>2]|0;b=+s[(a[k+(r<<2)>>2]|0)+(r<<3)>>3]+ +s[o+(l<<3)>>3]+ +s[o+(r<<3)>>3]*-2.0}c[i+(n<<2)>>2]=b;r=r+1|0;n=n+1|0}f=f+u|0;l=l+1|0;u=u+-1|0}}}while(0);cU(w);cU(k);return i|0}function qH(A,e){A=A|0;e=e|0;var i=0,r=0,f=0.0,n=0,l=0,t=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0.0;h=k;k=k+16|0;o=h;if(a[A+8>>2]|0){i=$H(A,e)|0;f=0.0;r=0;w=0;while(1){if((w|0)>=(e|0))break;r=r+w|0;u=a[A+(w*20|0)>>2]|0;t=A+(w*20|0)+4|0;s=(U(w,e)|0)-r|0;b=A+(w*20|0)+8|0;l=1;while(1){if((l|0)>=(u|0))break;n=a[(a[t>>2]|0)+(l<<2)>>2]|0;if((n|0)>=(w|0)){n=i+(s+n<<2)|0;d=+c[(a[b>>2]|0)+(l<<2)>>2];f=f+ +W(+(+c[n>>2]-d));c[n>>2]=d}l=l+1|0}w=w+1|0}if(0){}}else i=0;k=h;return i|0}function $H(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0;b=k;k=k+16|0;l=b;t=qF(((U(e+1|0,e)|0)/2|0)<<2)|0;c=qF(e<<2)|0;lP(l,e);i=0;f=0;s=e;while(1){if((i|0)>=(e|0))break;SP(i,A,e,c);r=i;n=f;while(1){if((r|0)==(e|0))break;a[t+(n<<2)>>2]=a[c+(r<<2)>>2];r=r+1|0;n=n+1|0}i=i+1|0;f=f+s|0;s=s+-1|0}L2(c);tP(l);k=b;return t|0}function AU(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,s=0,b=0,u=0;u=k;k=k+16|0;l=u;t=qF(((U(e+1|0,e)|0)/2|0)<<2)|0;s=qF(e<<2)|0;lP(l,e);i=0;f=0;b=e;while(1){if((i|0)>=(e|0))break;rP(i,A,e,s,l);r=i;n=f;while(1){if((r|0)==(e|0))break;c[t+(n<<2)>>2]=+(a[s+(r<<2)>>2]|0);r=r+1|0;n=n+1|0}i=i+1|0;f=f+b|0;b=b+-1|0}L2(s);tP(l);k=u;return t|0}function eU(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,s=0,b=0.0,u=0,w=0,k=0,o=0,h=0,d=0,B=0.0;d=A+8|0;i=a[d>>2]|0;r=0;f=0;while(1){if((f|0)>=(e|0))break;r=(a[A+(f*20|0)>>2]|0)+r|0;f=f+1|0}f=qF(r<<2)|0;h=qF(e<<2)|0;r=0;while(1){if((r|0)>=(e|0))break;a[h+(r<<2)>>2]=0;r=r+1|0}if(!(a[d>>2]|0)){n=0;while(1){if((n|0)>=(e|0))break;a[A+(n*20|0)+8>>2]=f;pS(A,n,h);l=A+(n*20|0)|0;t=a[l>>2]|0;s=A+(n*20|0)+4|0;b=+(t+-1|0);r=1;while(1){if((r|0)>=(t|0))break;o=a[(a[s>>2]|0)+(r<<2)>>2]|0;B=+((a[A+(o*20|0)>>2]|0)+-1|0)+b;c[f+(r<<2)>>2]=B-+((JS(A,n,o,h)|0)<<1|0);r=r+1|0}NS(A,n,h);f=f+(a[l>>2]<<2)|0;n=n+1|0}f=AU(A,e)|0}else{t=0;while(1){if((t|0)>=(e|0))break;pS(A,t,h);s=A+(t*20|0)|0;u=a[s>>2]|0;w=A+(t*20|0)+4|0;k=u+-2|0;o=A+(t*20|0)+8|0;l=1;while(1){if((l|0)>=(u|0))break;r=a[(a[w>>2]|0)+(l<<2)>>2]|0;n=k+(a[A+(r*20|0)>>2]|0)|0;B=+(n-((JS(A,t,r,h)|0)<<1)|0);b=+c[(a[o>>2]|0)+(l<<2)>>2];if(b>2]=b;l=l+1|0}NS(A,t,h);a[o>>2]=f;f=f+(a[s>>2]<<2)|0;t=t+1|0}f=$H(A,e)|0}L2(h);L2(a[d>>2]|0);a[d>>2]=0;A:do{if(i|0){r=0;while(1){if((r|0)>=(e|0))break A;a[A+(r*20|0)+8>>2]=i;i=i+(a[A+(r*20|0)>>2]<<2)|0;r=r+1|0}}}while(0);return f|0}function iU(A,e,i,r,f,l,t,b,u){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;l=l|0;t=t|0;b=b|0;u=u|0;var w=0,o=0,h=0,d=0.0,B=0,g=0,v=0,E=0.0,C=0,I=0.0,Z=0,G=0,m=0,Q=0,L=0,y=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0.0,R=0.0;p=k;k=k+80|0;J=p+56|0;V=p+48|0;m=p+40|0;v=p+32|0;g=p+24|0;B=p+16|0;o=p+8|0;w=p;h=t&4;F=t&3;A:do{if((u|0)<0)i=0;else{if(0){}t=(b|0)==2;e:do{if(t){if(0){}i=eU(A,e)|0;C=14}else{switch(b|0){case 1:{i=_H(A,e)|0;if(i|0){M=i;break e}ao(0,93315,w)|0;ao(3,93364,o)|0;C=15;break e}case 3:break;default:{C=15;break e}}if(0){}i=qH(A,e)|0;C=14}}while(0);if((C|0)==14)if(!i)C=15;else M=i;do{if((C|0)==15){if(0){}if(!(a[A+8>>2]|0)){M=AU(A,e)|0;break}else{M=$H(A,e)|0;break}}}while(0);if(0){}e:do{if((e|0)>1&(h|0)!=0)if((rU(A,e,r,l,h,F,t&1)|0)<0){v=0;g=0;i=-1;A=0;B=0;h=0;o=0;w=0;b=0;t=0}else{t=0;while(1){if((t|0)>=(l|0)){Z=0;C=35;break e}b=r+(t<<2)|0;d=1.0;i=0;while(1){if((i|0)==(e|0))break;I=+W(+ +s[(a[b>>2]|0)+(i<<3)>>3]);d=I>d?I:d;i=i+1|0}d=1.0/d;i=0;while(1){if((i|0)==(e|0)){i=0;break}D=(a[b>>2]|0)+(i<<3)|0;s[D>>3]=+s[D>>3]*d;i=i+1|0}while(1){if((i|0)==(e|0))break;I=(+c8()+-.5)*1.0e-06;D=(a[b>>2]|0)+(i<<3)|0;s[D>>3]=+s[D>>3]+I;i=i+1|0}vO(e,a[b>>2]|0);t=t+1|0}}else{Z=KH(0,e,l,r,f)|0;C=35}}while(0);e:do{if((C|0)==35){if(0){}if((e|0)==1|(u|0)==0){i=0;break A}if(0){}B=l<<2;D=qF(B)|0;g=e<<2;A=U(g,l)|0;Y=qF(A)|0;i=0;while(1){if((i|0)>=(l|0))break;b=Y+((U(i,e)|0)<<2)|0;a[D+(i<<2)>>2]=b;w=r+(i<<2)|0;t=0;while(1){if((t|0)>=(e|0))break;c[b+(t<<2)>>2]=+s[(a[w>>2]|0)+(t<<3)>>3];t=t+1|0}i=i+1|0}i:do{if(!F){o=e+-1|0;i=0;d=0.0;w=0;while(1){if((w|0)>=(o|0))break i;h=e-w|0;b=i;t=1;while(1){i=b+1|0;if((t|0)>=(h|0))break;b=i;d=+c[M+(i<<2)>>2]+d;t=t+1|0}w=w+1|0}}else d=+(e|0)*.5*+(e+-1|0)}while(0);Q=(U(e+1|0,e)|0)/2|0;L=(F|0)==2;if(L)HO(Q,M);UO(Q,M);y=e<<3;b=qF(y)|0;Y6(b|0,0,y|0)|0;z=e+-1|0;i=0;w=0;while(1){if((w|0)>=(z|0)){i=e;t=0;w=0;break}o=e-w|0;E=0.0;t=1;while(1){i=i+1|0;if((t|0)>=(o|0))break;I=+c[M+(i<<2)>>2];G=b+(t+w<<3)|0;s[G>>3]=+s[G>>3]-I;E=E+I;t=t+1|0}G=b+(w<<3)|0;s[G>>3]=+s[G>>3]-E;w=w+1|0}while(1){if((t|0)>=(e|0))break;c[M+(w<<2)>>2]=+s[b+(t<<3)>>3];G=i+w|0;i=i+-1|0;t=t+1|0;w=G}G=qF(B)|0;a[G>>2]=qF(A)|0;i=1;while(1){if((i|0)>=(l|0))break;a[G+(i<<2)>>2]=(a[G>>2]|0)+((U(i,e)|0)<<2);i=i+1|0}o=qF(g)|0;w=qF(g)|0;t=qF(Q<<2)|0;if(0){}C=(Z|0)==0;Z=a[15712]|0;i=0;h=0;I=1797693134862315708145274.0e284;while(1){if(!(h<<24>>24==0&(i|0)<(u|0)))break;Y6(b|0,0,y|0)|0;if(L){xO(Q,M,t);v=0;A=0}else{v=0;A=0}while(1){if((v|0)>=(z|0)){h=e;B=0;A=0;break}g=e-v+-1|0;RO(g,0.0,w);h=0;while(1){if((h|0)>=(l|0))break;m=D+(h<<2)|0;RO(g,+c[(a[m>>2]|0)+(v<<2)>>2],o);FO(g,o,-1.0,(a[m>>2]|0)+(v<<2)+4|0);HO(g,o);MO(g,o,w,w);h=h+1|0}TO(g,w);h=0;while(1){if((h|0)>=(g|0))break;B=w+(h<<2)|0;E=+c[B>>2];if(E>=3402823466385288598117041.0e14|E<0.0)c[B>>2]=0.0;h=h+1|0}h=A+1|0;A=v+1|0;i:do{if(L){E=0.0;B=0;while(1){if((B|0)>=(g|0))break i;m=t+(h<<2)|0;N=+c[m>>2]*+c[w+(B<<2)>>2];c[m>>2]=N;m=b+(A+B<<3)|0;s[m>>3]=+s[m>>3]-N;E=E+N;h=h+1|0;B=B+1|0}}else{E=0.0;B=0;while(1){if((B|0)>=(g|0))break i;N=+c[w+(B<<2)>>2];c[t+(h<<2)>>2]=N;m=b+(A+B<<3)|0;s[m>>3]=+s[m>>3]-N;E=E+N;h=h+1|0;B=B+1|0}}}while(0);m=b+(v<<3)|0;s[m>>3]=+s[m>>3]-E;v=A;A=h}while(1){if((B|0)>=(e|0)){h=0;break}c[t+(A<<2)>>2]=+s[b+(B<<3)>>3];m=h+A|0;h=h+-1|0;B=B+1|0;A=m}while(1){if((h|0)>=(l|0)){E=0.0;h=0;break}YO(t,e,a[D+(h<<2)>>2]|0,a[G+(h<<2)>>2]|0);h=h+1|0}while(1){if((h|0)>=(l|0))break;E=+pO(e,a[D+(h<<2)>>2]|0,a[G+(h<<2)>>2]|0)+E;h=h+1|0}E=E*2.0+d;h=0;while(1){if((h|0)>=(l|0))break;m=D+(h<<2)|0;YO(M,e,a[m>>2]|0,o);E=E-+pO(e,a[m>>2]|0,o);h=h+1|0}R=I-E;N=+s[23294];h=(E =0.0?R:-R)/I =(l|0))break;g=D+(A<<2)|0;B=a[g>>2]|0;i:do{if(C){if((wP(M,B,a[G+(A<<2)>>2]|0,e,.001,e)|0)<0){v=G;g=M;i=-1;A=Y;B=D;h=G;break e}}else{JO(e,B,o);if((wP(M,o,a[G+(A<<2)>>2]|0,e,.001,e)|0)<0){v=G;g=M;i=-1;A=Y;B=D;h=G;break e}else B=0;while(1){if((B|0)>=(e|0))break i;if((n[(a[(a[f+(B<<2)>>2]|0)+16>>2]|0)+119>>0]|0)<=1)a[(a[g>>2]|0)+(B<<2)>>2]=a[o+(B<<2)>>2];B=B+1|0}}}while(0);A=A+1|0}if(((i|0)%5|0|0)==0&0!=0?(s[V>>3]=E,f3(Z,90371,V)|0,((i+5|0)%50|0|0)==0):0)u6(10,Z)|0;i=i+1|0;I=E}if(true)h=0;else{}while(1){if((h|0)>=(l|0)){v=G;g=M;A=Y;B=D;h=G;break e}A=D+(h<<2)|0;g=r+(h<<2)|0;B=0;while(1){if((B|0)>=(e|0))break;s[(a[g>>2]|0)+(B<<3)>>3]=+c[(a[A>>2]|0)+(B<<2)>>2];B=B+1|0}h=h+1|0}}}while(0);L2(A);L2(B);L2(g);if(v|0){L2(a[v>>2]|0);L2(h)}L2(o);L2(w);L2(b);L2(t)}}while(0);k=p;return i|0}function rU(A,e,i,f,n,l,t){A=A|0;e=e|0;i=i|0;f=f|0;n=n|0;l=l|0;t=t|0;var b=0,u=0,w=0,o=0.0,h=0,d=0,B=0.0,g=0,v=0.0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0;H=k;k=k+32|0;w=H+24|0;X=H+8|0;D=H+4|0;N=H;p=(e|0)<50?e:50;R=$F(p<<2)|0;Y=e<<3;u=$F(U(Y,p)|0)|0;b=0;while(1){if((b|0)>=(p|0))break;a[R+(b<<2)>>2]=u+((U(b,e)|0)<<3);b=b+1|0}y=p<<1;y=(y|0)>50?y:50;y=(y|0)>(e|0)?e:y;a[w>>2]=0;fS(A,e,y,w,t);aS(a[w>>2]|0,e,y);$O(a[w>>2]|0,y,e,R,p);L2(a[a[w>>2]>>2]|0);L2(a[w>>2]|0);y=e<<2;J=$F(y)|0;b=0;while(1){if((b|0)>=(e|0))break;a[J+(b<<2)>>2]=-1;b=b+1|0}lP(X,e);F=a[A+8>>2]|0;M=(t|0)!=0;if(M)xS(A,e);Q=$F(y)|0;V=$F(160)|0;u=$F(e*160|0)|0;L=$F(160)|0;b=0;while(1){if((b|0)==40)break;a[L+(b<<2)>>2]=u+((U(b,e)|0)<<2);b=b+1|0}b=(a8()|0)%(e|0)|0;a[J+(b<<2)>>2]=0;a[V>>2]=b;u=a[L>>2]|0;if(M){HP(b,A,e,u);u=0;w=0}else{rP(b,A,e,u,X);u=0;w=0}while(1){if((w|0)>=(e|0)){d=1;break}z=a[(a[L>>2]|0)+(w<<2)>>2]|0;a[Q+(w<<2)>>2]=z;m=(z|0)>(u|0);b=m?w:b;u=m?z:u;w=w+1|0}while(1){if((d|0)==40){b=0;break}a[J+(b<<2)>>2]=d;a[V+(d<<2)>>2]=b;g=L+(d<<2)|0;u=a[g>>2]|0;if(M){HP(b,A,e,u);h=0;u=0}else{rP(b,A,e,u,X);h=0;u=0}while(1){if((h|0)>=(e|0))break;w=Q+(h<<2)|0;z=a[w>>2]|0;t=a[(a[g>>2]|0)+(h<<2)>>2]|0;t=(z|0)<(t|0)?z:t;a[w>>2]=t;if((t|0)<=(u|0)){if((t|0)==(u|0)?((a8()|0)%(h+1|0)|0|0)==0:0){u=a[w>>2]|0;b=h}}else{u=t;b=h}h=h+1|0}d=d+1|0}while(1){if((b|0)>=(e|0))break;a[Q+(b<<2)>>2]=-1;b=b+1|0}C=$F(y)|0;z=$F(e<<4)|0;I=e+-1|0;Z=I<<2;m=0;w=0;t=0;u=0;G=0;while(1){if((G|0)>=(e|0))break;b=J+(G<<2)|0;A:do{if((a[b>>2]|0)>-1){g=z+(G<<4)+4|0;a[g>>2]=$F(Z)|0;E=$F(Z)|0;a[z+(G<<4)+8>>2]=E;a[z+(G<<4)>>2]=I;r[z+(G<<4)+12>>0]=1;d=L+(a[b>>2]<<2)|0;b=0;while(1){if((b|0)==(G|0)){h=G;break}a[(a[g>>2]|0)+(b<<2)>>2]=b;a[E+(b<<2)>>2]=a[(a[d>>2]|0)+(b<<2)>>2];b=b+1|0}while(1){b=h+1|0;if((h|0)==(I|0)){b=I;break A}a[(a[g>>2]|0)+(h<<2)>>2]=b;a[E+(h<<2)>>2]=a[(a[d>>2]|0)+(b<<2)>>2];h=b}}else{if((u|0)<40){t=$F(y)|0;w=$F(y)|0;u=e;b=1}else b=0;r[z+(G<<4)+12>>0]=b;a[z+(G<<4)+4>>2]=t;a[z+(G<<4)+8>>2]=w;a[z+(G<<4)>>2]=40;b=0;while(1){if((b|0)==40)break;a[t+(b<<2)>>2]=a[V+(b<<2)>>2];a[w+(b<<2)>>2]=a[(a[L+(b<<2)>>2]|0)+(G<<2)>>2];b=b+1|0}w=w+160|0;t=t+160|0;u=u+-40|0;b=40}}while(0);m=b+m|0;G=G+1|0}L2(Q);L2(C);if(L|0){L2(a[L>>2]|0);L2(L)}L=$F(e*20|0)|0;h=m+e<<2;d=$F(h)|0;E=(l|0)==2;h=$F(h)|0;g=0;while(1){if((g|0)>=(e|0))break;a[L+(g*20|0)+4>>2]=d;a[L+(g*20|0)+8>>2]=h;b=(a[z+(g<<4)>>2]|0)+1|0;C=L+(g*20|0)|0;a[C>>2]=b;w=(a[z+(g<<4)+8>>2]|0)+-4|0;t=z+(g<<4)+4|0;A:do{if(E){o=0.0;u=1;while(1){if((u|0)>=(b|0))break A;a[d+(u<<2)>>2]=a[(a[t>>2]|0)+(u+-1<<2)>>2];v=+(a[w+(u<<2)>>2]|0);v=-1.0/(v*v);c[h+(u<<2)>>2]=v;o=o-v;u=u+1|0;b=a[C>>2]|0}}else{o=0.0;u=1;while(1){if((u|0)>=(b|0))break A;a[d+(u<<2)>>2]=a[(a[t>>2]|0)+(u+-1<<2)>>2];v=-1.0/+(a[w+(u<<2)>>2]|0);c[h+(u<<2)>>2]=v;o=o-v;u=u+1|0;b=a[C>>2]|0}}}while(0);a[d>>2]=g;c[h>>2]=o;y=a[C>>2]|0;h=h+(y<<2)|0;d=d+(y<<2)|0;g=g+1|0}Q=$F(f<<2)|0;a[Q>>2]=$F(U(f<<3,p)|0)|0;b=1;while(1){if((b|0)>=(f|0))break;a[Q+(b<<2)>>2]=(a[Q>>2]|0)+((U(b,p)|0)<<3);b=b+1|0}A:do{if(n){b=0;while(1){if((b|0)>=(f|0))break;w=Q+(b<<2)|0;u=0;while(1){if((u|0)>=(p|0))break;s[(a[w>>2]|0)+(u<<3)>>3]=0.0;u=u+1|0}b=b+1|0}if((f|0)!=2){b=0;while(1){if((b|0)>=(f|0)){b=0;break A}s[(a[Q+(b<<2)>>2]|0)+(b<<3)>>3]=1.0;b=b+1|0}}s[a[Q>>2]>>3]=1.0;b=Q+4|0;if(!((AK(R,p,e,a[b>>2]|0)|0)<<24>>24)){u=a[b>>2]|0;b=0;while(1){if((b|0)>=(p|0))break;s[u+(b<<3)>>3]=0.0;b=b+1|0}s[u+8>>3]=1.0;b=0}else b=0}else{u=0;while(1){if((u|0)>=(f|0)){b=0;break A}w=Q+(u<<2)|0;b=0;while(1){if((b|0)>=(p|0))break;v=+(a8()|0)*4.656612875245797e-10;s[(a[w>>2]|0)+(b<<3)>>3]=v;b=b+1|0}u=u+1|0}}}while(0);while(1){if((b|0)>=(f|0))break;WO(R,e,p,a[Q+(b<<2)>>2]|0,a[i+(b<<2)>>2]|0);b=b+1|0}a[D>>2]=0;a[N>>2]=0;gO(L,R,e,p,D);dO(R,a[D>>2]|0,p,e,p,N);L2(a[a[D>>2]>>2]|0);L2(a[D>>2]|0);G=$F(Y)|0;m=$F(p<<3)|0;b=0;u=0;o=+aU(i,z,f,e,l);A:while(1){if((u|0)<50&b<<24>>24==0)I=0;else break;while(1){if((I|0)>=(f|0))break;Z=i+(I<<2)|0;w=0;while(1){if((w|0)>=(e|0))break;h=G+(w<<3)|0;s[h>>3]=0.0;d=(a[z+(w<<4)+8>>2]|0)+-4|0;g=a[L+(w*20|0)+4>>2]|0;E=a[L+(w*20|0)+8>>2]|0;C=L+(w*20|0)|0;B=0.0;t=1;while(1){if((t|0)>=(a[C>>2]|0))break;b=a[g+(t<<2)>>2]|0;v=+jS(i,f,w,b);if(v>1.0e-30){v=-(+c[E+(t<<2)>>2]*+(a[d+(t<<2)>>2]|0))/v;s[h>>3]=v*+s[(a[Z>>2]|0)+(b<<3)>>3]+ +s[h>>3];B=B-v}t=t+1|0}s[h>>3]=+s[h>>3]+ +s[(a[Z>>2]|0)+(w<<3)>>3]*B;w=w+1|0}hO(R,p,e,G,m);b=Q+(I<<2)|0;if(uP(a[N>>2]|0,a[b>>2]|0,m,p,.001,p,0)|0){u=-1;break A}WO(R,e,p,a[b>>2]|0,a[Z>>2]|0);I=I+1|0}if(!(u&1)){v=+aU(i,z,f,e,l);o=+W(+(v-o))/(v+1.0e-10);b=o<+s[23294]&1;o=v}else b=0;u=u+1|0}L2(m);L2(G);if(M){TS(A,e,F);b=0}else b=0;while(1){if((b|0)>=(e|0))break;if(r[z+(b<<4)+12>>0]|0){L2(a[z+(b<<4)+4>>2]|0);L2(a[z+(b<<4)+8>>2]|0)}b=b+1|0}L2(z);L2(a[L+4>>2]|0);L2(a[L+8>>2]|0);L2(L);L2(J);L2(V);L2(a[Q>>2]|0);L2(Q);b=a[N>>2]|0;if(b|0){L2(a[b>>2]|0);L2(a[N>>2]|0)}L2(a[R>>2]|0);L2(R);tP(X);k=H;return u|0}function fU(A,e,i,r,f){A|0;e|0;i|0;r|0;f|0;var n=0.0,l=0.0,t=0,s=0,b=0.0,u=0,w=0,k=0,o=0,h=0,d=0;r+-1|0;(f|0)==2;0.0;0;0;while(1){if((u|0)>=(h|0))break;r-u|0;1;while(1){f+1|0;if((w|0)>=(o|0))break;w+u|0;0.0;0;while(1){if((t|0)>=(i|0))break;a[A+(t<<2)>>2]|0;+c[d+(u<<2)>>2]-+c[d+(s<<2)>>2];l+b*b;t+1|0}+z(+l);+c[e+(f<<2)>>2];if(k){1.0/+z(+b)-l;l*l}else{1.0/b-l;l*l}w+1|0;l*b+n}u+1|0}return+n}function aU(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0.0,l=0.0,t=0,c=0,b=0,u=0,w=0,k=0,o=0.0,h=0;A:do{if((f|0)==2){n=0.0;b=0;while(1){if((b|0)>=(r|0))break A;w=a[e+(b<<4)>>2]|0;k=e+(b<<4)+4|0;u=e+(b<<4)+8|0;c=0;while(1){if((c|0)>=(w|0))break;t=a[(a[k>>2]|0)+(c<<2)>>2]|0;if((t|0)>(b|0)){l=0.0;f=0;while(1){if((f|0)>=(i|0))break;h=a[A+(f<<2)>>2]|0;o=+s[h+(b<<3)>>3]-+s[h+(t<<3)>>3];l=o*o+l;f=f+1|0}l=+z(+l);o=+(a[(a[u>>2]|0)+(c<<2)>>2]|0);l=o-l;n=l*l/(o*o)+n}c=c+1|0}b=b+1|0}}else{b=0;n=0.0;while(1){if((b|0)>=(r|0))break A;u=a[e+(b<<4)>>2]|0;w=e+(b<<4)+4|0;k=e+(b<<4)+8|0;c=0;while(1){if((c|0)>=(u|0))break;t=a[(a[w>>2]|0)+(c<<2)>>2]|0;if((t|0)>(b|0)){l=0.0;f=0;while(1){if((f|0)>=(i|0))break;h=a[A+(f<<2)>>2]|0;o=+s[h+(b<<3)>>3]-+s[h+(t<<3)>>3];l=o*o+l;f=f+1|0}l=+z(+l);o=+(a[(a[k>>2]|0)+(c<<2)>>2]|0);l=o-l;n=l*l/o+n}c=c+1|0}b=b+1|0}}}while(0);return+n}function nU(A){A=+A;return+(+z(+A)*A)}function lU(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0,n=0,l=0.0;n=a[47137]|0;r=0.0;f=0;while(1){if((f|0)>=(n|0))break;l=+s[A+(f<<3)>>3]-+s[e+(f<<3)>>3];s[i+(f<<3)>>3]=l;r=l*l+r;f=f+1|0}return+ +z(+r)}function tU(A,e,i){A=A|0;e=e|0;i=+i;var r=0,f=0,n=0,l=0;l=qF(A<<2)|0;f=0;n=qF(U(A<<3,e)|0)|0;while(1){if((f|0)>=(A|0))break;a[l+(f<<2)>>2]=n;r=0;while(1){if((r|0)>=(e|0))break;s[n+(r<<3)>>3]=i;r=r+1|0}f=f+1|0;n=n+(e<<3)|0}return l|0}function cU(A){A=A|0;if(A|0){L2(a[A>>2]|0);L2(A)}return}function sU(A,e){A=A|0;e=e|0;var i=0.0,f=0.0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0;w=k;k=k+16|0;u=gh(A)|0;b=vh(A)|0;c=Yo(A,2,92493,0)|0;A:do{if(!e){s[23294]=+(u|0)*.0001;YF(A,108886,186352);n=Ho(a[A+60>>2]|0,90100)|0;if(!n)i=.99;else i=+$3(n);s[23296]=i;n=qF((u<<2)+4|0)|0;t=A+16|0;a[(a[t>>2]|0)+152>>2]=n;n=0;i=0.0;l=cd(A)|0;while(1){if(!l)break A;a[(a[(a[t>>2]|0)+152>>2]|0)+(n<<2)>>2]=l;o=a[l+16>>2]|0;a[o+120>>2]=n;a[o+124>>2]=-1;f=+wU(A,l,c)+i;n=n+1|0;i=f;l=sd(A,l)|0}}else{s[23294]=.0001;YF(A,108886,186352);n=0;i=0.0;l=cd(A)|0;while(1){if(!l)break A;a[(a[l+16>>2]|0)+120>>2]=n;f=+wU(A,l,c)+i;n=n+1|0;i=f;l=sd(A,l)|0}}}while(0);n=Ho(A,90108)|0;if((n|0)!=0?(r[n>>0]|0)!=0:0){i=+s[23294];f=+$3(n);if(!(i>f))i=f}else i=i/+(((b|0)>1?b:1)|0)*+z(+ +(u|0))+1.0;s[23295]=i;if(!(a[47134]|e)){e=tU(u,u,i)|0;o=A+16|0;a[(a[o>>2]|0)+160>>2]=e;e=tU(u,u,1.0)|0;a[(a[o>>2]|0)+164>>2]=e;e=tU(u,a[47137]|0,1.0)|0;a[(a[o>>2]|0)+168>>2]=e;e=kU(u,u,a[47137]|0)|0;a[(a[o>>2]|0)+172>>2]=e}k=w;return u|0}function bU(A,e,i){A|0;e|0;i|0;var r=0,f=0,n=0,l=0,t=0,c=0;0;0;Ah(A,e)|0;A:while(1){if(!c)break;a[c>>2]&3;a[((l|0)==2?c:c+-48|0)+40>>2]|0;a[((l|0)==3?c:c+48|0)+40>>2]|0;do{if((n|0)!=(l|0)){(l|0)==(e|0);if((r|0)!=1){t?n:l;a[i>>2]=f;r+1|0;break}if(!((n|0)==(f|0)&t)?!((n|0)==(e|0)&(l|0)==(f|0)):0){2;break A}else 1}}while(0);eh(A,c,e)|0}return r|0}function uU(A,e,i){A|0;e|0;i|0;var r=0,f=0,n=0,l=0;k;k=k+16|0;l;A+60|0;A:while(1){e:while(1){if(!e)break A;switch(bU(A,e,f)|0){case 0:{5;break e}case 1:{8;break e}default:0}}if((r|0)==5){if((i|0)==(e|0))sd(A,i)|0;Cd(a[n>>2]|0,e)|0;0;continue}else if((r|0)==8){if((i|0)==(e|0))sd(A,i)|0;Cd(a[n>>2]|0,e)|0;a[f>>2]|0;continue}}k=l;return i|0}function wU(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,n=0,l=0,t=0,c=0;c=k;k=k+32|0;l=c+8|0;n=c;e=Oo(A,e)|0;r=0.0;while(1){if(!e)break;switch(oU(e,i,n)|0){case 0:{f=+s[n>>3];break}case 2:{a[l>>2]=Vh(A)|0;s[l+8>>3]=1.0;ao(3,90120,l)|0;t=6;break}default:t=6}if((t|0)==6){t=0;s[n>>3]=1.0;f=1.0}s[(a[e+16>>2]|0)+136>>3]=f;e=_o(A,e)|0;r=f+r}k=c;return+r}function kU(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,b=0;t=qF((A<<2)+4|0)|0;c=(e<<2)+4|0;b=i<<3;n=0;while(1){if((n|0)>=(A|0))break;l=t+(n<<2)|0;a[l>>2]=qF(c)|0;f=0;while(1){if((f|0)>=(e|0))break;r=qF(b)|0;a[(a[l>>2]|0)+(f<<2)>>2]=r;r=0;while(1){if((r|0)>=(i|0))break;s[(a[(a[l>>2]|0)+(f<<2)>>2]|0)+(r<<3)>>3]=0.0;r=r+1|0}f=f+1|0}a[(a[l>>2]|0)+(f<<2)>>2]=0;n=n+1|0}a[t+(n<<2)>>2]=0;return t|0}function oU(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0.0,l=0,t=0,c=0;c=k;k=k+16|0;t=c+8|0;l=c;do{if((e|0)!=0?(f=Uo(A,e)|0,(r[f>>0]|0)!=0):0){a[l>>2]=i;if(((J3(f,101209,l)|0)>=1?(n=+s[i>>3],!(n<0.0)):0)?n!=0.0|(a[47134]|0)!=0:0){A=0;break}a[t>>2]=f;ao(0,90147,t)|0;A=2}else A=1}while(0);k=c;return A|0}function hU(A){A=A|0;return sU(A,0)|0}function dU(A){A=A|0;A=A+16|0;L2(a[(a[A>>2]|0)+152>>2]|0);if(!(a[47134]|0)){cU(a[(a[A>>2]|0)+160>>2]|0);cU(a[(a[A>>2]|0)+164>>2]|0);cU(a[(a[A>>2]|0)+168>>2]|0);BU(a[(a[A>>2]|0)+172>>2]|0);a[(a[A>>2]|0)+172>>2]=0}return}function BU(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;if(A|0){f=0;while(1){n=A+(f<<2)|0;e=a[n>>2]|0;if(!e)break;else r=0;while(1){i=a[e+(r<<2)>>2]|0;if(!i)break;L2(i);r=r+1|0;e=a[n>>2]|0}L2(e);f=f+1|0}L2(A)}return}function gU(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0;r=+(e|0);e=A+16|0;while(1){if((i|0)>=(a[47137]|0))break;f=+c8()*r;s[(a[(a[e>>2]|0)+132>>2]|0)+(i<<3)>>3]=f;i=i+1|0}return}function vU(A,e){A=A|0;e=e|0;gU(A,e,2);return}function EU(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0.0;r=+(e|0);f=+c8()*r;i=A+16|0;s[a[(a[i>>2]|0)+132>>2]>>3]=f;r=+c8()*r;s[(a[(a[i>>2]|0)+132>>2]|0)+8>>3]=r;if((a[47137]|0)>2)vU(A,e);return}function CU(A,e){A=A|0;e=e|0;var i=0,f=0;f=k;k=k+16|0;i=f;if(0){}e=iH(A,e,2)|0;A:do{if((e|0)!=1){if(!(a[46797]|e)){ao(0,90192,i)|0;a[46797]=1}i=A+16|0;e=0;while(1){A=a[(a[(a[i>>2]|0)+152>>2]|0)+(e<<2)>>2]|0;if(!A)break A;if(!(r[(a[A+16>>2]|0)+119>>0]|0))EU(A,1);e=e+1|0}}}while(0);k=f;return}function IU(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0.0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0.0;h=k;k=k+96|0;o=h+80|0;u=h;if(0){}w=A+16|0;f=a[w>>2]|0;c=a[f+164>>2]|0;f=a[f+160>>2]|0;b=0;while(1){if((b|0)>=(e|0))break;l=f+(b<<2)|0;t=c+(b<<2)|0;r=0;while(1){if((r|0)==(b|0))break;n=+s[(a[l>>2]|0)+(r<<3)>>3];n=1.0/(n*n);i=a[(a[w>>2]|0)+152>>2]|0;i=th(A,a[i+(b<<2)>>2]|0,a[i+(r<<2)>>2]|0,0,0)|0;if(i)n=+s[(a[i+16>>2]|0)+128>>3]*n;s[(a[c+(r<<2)>>2]|0)+(b<<3)>>3]=n;s[(a[t>>2]|0)+(r<<3)>>3]=n;r=r+1|0}b=b+1|0}A=a[47137]|0;r=0;while(1){if((r|0)<(e|0))i=0;else break;while(1){if((i|0)>=(A|0))break;s[(a[(a[(a[w>>2]|0)+168>>2]|0)+(r<<2)>>2]|0)+(i<<3)>>3]=0.0;i=i+1|0}r=r+1|0}l=0;while(1){i=a[(a[(a[w>>2]|0)+152>>2]|0)+(l<<2)>>2]|0;if(!i)break;A=i+16|0;i=0;while(1){if((i|0)>=(e|0))break;A:do{if((l|0)!=(i|0)){n=+lU(a[(a[A>>2]|0)+132>>2]|0,a[(a[(a[(a[(a[w>>2]|0)+152>>2]|0)+(i<<2)>>2]|0)+16>>2]|0)+132>>2]|0,u);f=a[47137]|0;n=1.0/n;r=0;while(1){if((r|0)>=(f|0))break A;b=a[w>>2]|0;d=+s[u+(r<<3)>>3];d=(d-+s[(a[(a[b+160>>2]|0)+(l<<2)>>2]|0)+(i<<3)>>3]*d*n)*+s[(a[(a[b+164>>2]|0)+(l<<2)>>2]|0)+(i<<3)>>3];s[(a[(a[(a[b+172>>2]|0)+(l<<2)>>2]|0)+(i<<2)>>2]|0)+(r<<3)>>3]=d;b=(a[(a[b+168>>2]|0)+(l<<2)>>2]|0)+(r<<3)|0;s[b>>3]=+s[b>>3]+d;r=r+1|0}}}while(0);i=i+1|0}l=l+1|0}if(0){}k=h;return}function ZU(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0.0,c=0;l=k;k=k+32|0;n=l+24|0;f=l+8|0;r=l;t=+s[23294];s[23216]=t*t;while(1){i=GU(A,e)|0;if(!i)break;mU(A,e,i)}if(true)e=A+16|0;else{}e=a[(a[e>>2]|0)+156>>2]|0;if((e|0)==(a[47136]|0)){c=Vh(A)|0;a[n>>2]=e;a[n+4>>2]=c;ao(0,90320,n)|0}k=l;return}function GU(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0,l=0.0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0.0;d=k;k=k+16|0;h=d;w=(a[46799]|0)+1|0;a[46799]=w;A=a[A+16>>2]|0;if((a[A+156>>2]|0)<(a[47136]|0)){b=a[47137]|0;u=A+152|0;c=A+168|0;A=0;i=0.0;t=0;while(1){if((t|0)>=(e|0))break;f=a[(a[u>>2]|0)+(t<<2)>>2]|0;if((n[(a[f+16>>2]|0)+119>>0]|0)<=1){l=0.0;r=0;while(1){if((r|0)>=(b|0))break;B=+s[(a[(a[c>>2]|0)+(t<<2)>>2]|0)+(r<<3)>>3];l=B*B+l;r=r+1|0}if(l>i){A=f;i=l}}t=t+1|0}if(!(i<+s[23216])){if(0!=0&((w|0)%100|0|0)==0?(o=a[15712]|0,s[h>>3]=+z(+i),f3(o,90371,h)|0,((a[46799]|0)%1e3|0|0)==0):0)u6(10,o)|0}else A=0}else A=0;k=d;return A|0}function mU(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0;w=k;k=k+16|0;u=w;c=i+16|0;b=a[(a[c>>2]|0)+120>>2]|0;f=a[46798]|0;if(!f){n=a[47137]|0;n=$F(U(n<<3,n)|0)|0}else{n=a[47137]|0;n=eV(f,U(n<<3,n)|0)|0}a[46798]=n;LU(A,e,b,n);l=a[47137]|0;t=A+16|0;f=0;while(1){if((f|0)>=(l|0))break;s[185736+(f<<3)>>3]=-+s[(a[(a[(a[t>>2]|0)+168>>2]|0)+(b<<2)>>2]|0)+(f<<3)>>3];f=f+1|0}VK(n,185816,185736,l);f=0;while(1){if((f|0)>=(a[47137]|0))break;r=+s[23296];r=(1.0-r)*2.0*+c8()+r;l=185816+(f<<3)|0;r=r*+s[l>>3];s[l>>3]=r;l=(a[(a[c>>2]|0)+132>>2]|0)+(f<<3)|0;s[l>>3]=+s[l>>3]+r;f=f+1|0}c=(a[t>>2]|0)+156|0;a[c>>2]=(a[c>>2]|0)+1;yU(A,e,b);if(MR()|0){n=a[47137]|0;r=0.0;f=0;while(1){if((f|0)>=(n|0))break;r=+W(+ +s[185816+(f<<3)>>3])+r;f=f+1|0}r=+z(+r);b=a[15712]|0;a[u>>2]=Vh(i)|0;s[u+8>>3]=r;f3(b,90362,u)|0}k=w;return}function QU(A,e){A|0;e|0;var i=0.0,r=0.0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0.0;e+-1|0;A+16|0;a[47137]|0;0;0.0;A:while(1){if((n|0)>=(h|0))break;a[w>>2]|0;a[u+152>>2]|0;n+1|0;(a[o+(n<<2)>>2]|0)+16|0;u+164|0;u+160|0;t;while(1){if((l|0)>=(e|0)){t;continue A}(a[o+(l<<2)>>2]|0)+16|0;0;0.0;while(1){if((A|0)>=(k|0))break;+s[(a[(a[c>>2]|0)+132>>2]|0)+(A<<3)>>3]-+s[(a[(a[f>>2]|0)+132>>2]|0)+(A<<3)>>3];A+1|0;d*d+r}+s[(a[(a[u>>2]|0)+(n<<2)>>2]|0)+(l<<3)>>3];((+z(+r)*-2.0+d)*d+r)*+s[(a[(a[b>>2]|0)+(n<<2)>>2]|0)+(l<<3)>>3]+i;l+1|0;d}}return+i}function LU(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0.0,w=0.0,o=0.0,h=0.0,d=0.0,B=0,g=0,v=0,E=0,C=0,I=0;I=k;k=k+80|0;C=I;E=a[A+16>>2]|0;c=a[E+164>>2]|0;b=a[E+160>>2]|0;E=a[E+152>>2]|0;t=a[E+(i<<2)>>2]|0;n=a[47137]|0;A=0;while(1){if((A|0)>=(n|0))break;l=U(n,A)|0;f=0;while(1){if((f|0)==(n|0))break;s[r+(l+f<<3)>>3]=0.0;f=f+1|0}A=A+1|0}v=a[47137]|0;g=t+16|0;B=c+(i<<2)|0;c=b+(i<<2)|0;t=0;while(1){if((t|0)>=(e|0))break;A:do{if((t|0)!=(i|0)){f=(a[E+(t<<2)>>2]|0)+16|0;d=0.0;A=0;while(1){if((A|0)>=(v|0))break;h=+s[(a[(a[g>>2]|0)+132>>2]|0)+(A<<3)>>3]-+s[(a[(a[f>>2]|0)+132>>2]|0)+(A<<3)>>3];s[C+(A<<3)>>3]=h;d=h*h+d;A=A+1|0}u=1.0/+nU(d);l=0;while(1){if((l|0)>=(v|0))break A;f=(a[B>>2]|0)+(t<<3)|0;n=(a[c>>2]|0)+(t<<3)|0;w=+s[C+(l<<3)>>3];A=0;while(1){o=+s[f>>3];h=+s[n>>3];if((A|0)==(l|0))break;b=r+((U(v,A)|0)+l<<3)|0;s[b>>3]=+s[b>>3]+o*u*h*w*+s[C+(A<<3)>>3];A=A+1|0}b=r+((U(v,l)|0)+l<<3)|0;s[b>>3]=(1.0-h*u*(d-w*w))*o+ +s[b>>3];l=l+1|0}}}while(0);t=t+1|0}f=a[47137]|0;l=1;while(1){if((l|0)>=(f|0))break;n=U(f,l)|0;A=0;while(1){if((A|0)==(l|0))break;s[r+(n+A<<3)>>3]=+s[r+((U(f,A)|0)+l<<3)>>3];A=A+1|0}l=l+1|0}k=I;return}function yU(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0.0,t=0,c=0,b=0,u=0,w=0.0,o=0.0,h=0,d=0,B=0;b=k;k=k+80|0;c=b;t=A+16|0;f=a[t>>2]|0;n=a[(a[f+152>>2]|0)+(i<<2)>>2]|0;r=a[47137]|0;f=f+168|0;A=0;while(1){if((A|0)>=(r|0))break;s[(a[(a[f>>2]|0)+(i<<2)>>2]|0)+(A<<3)>>3]=0.0;A=A+1|0}f=n+16|0;A=0;while(1){if((A|0)>=(e|0))break;A:do{if((A|0)!=(i|0)){l=+lU(a[(a[f>>2]|0)+132>>2]|0,a[(a[(a[(a[(a[t>>2]|0)+152>>2]|0)+(A<<2)>>2]|0)+16>>2]|0)+132>>2]|0,c);n=a[47137]|0;l=1.0/l;r=0;while(1){if((r|0)>=(n|0))break A;u=a[t>>2]|0;h=a[u+172>>2]|0;d=(a[(a[h+(i<<2)>>2]|0)+(A<<2)>>2]|0)+(r<<3)|0;w=+s[c+(r<<3)>>3];w=(w-+s[(a[(a[u+160>>2]|0)+(i<<2)>>2]|0)+(A<<3)>>3]*w*l)*+s[(a[(a[u+164>>2]|0)+(i<<2)>>2]|0)+(A<<3)>>3];s[d>>3]=w;u=a[u+168>>2]|0;B=(a[u+(i<<2)>>2]|0)+(r<<3)|0;s[B>>3]=+s[B>>3]+w;h=(a[(a[h+(A<<2)>>2]|0)+(i<<2)>>2]|0)+(r<<3)|0;w=+s[h>>3];o=-+s[d>>3];s[h>>3]=o;u=(a[u+(A<<2)>>2]|0)+(r<<3)|0;s[u>>3]=o-w+ +s[u>>3];r=r+1|0}}}while(0);A=A+1|0}k=b;return}function WU(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0;i=A+16|0;n=a[46800]|0;e=a[(a[i>>2]|0)+124>>2]|0;while(1){if((e|0)<=0)break;l=(e+-1|0)/2|0;t=n+(l<<2)|0;r=a[t>>2]|0;f=r+16|0;if(+s[(a[f>>2]|0)+136>>3]<=+s[(a[i>>2]|0)+136>>3])break;a[t>>2]=A;a[(a[i>>2]|0)+124>>2]=l;a[n+(e<<2)>>2]=r;a[(a[f>>2]|0)+124>>2]=e;e=l}return}function zU(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0;l=A+16|0;t=a[46801]|0;c=a[46800]|0;n=a[(a[l>>2]|0)+124>>2]|0;while(1){r=n<<1|1;if((r|0)>=(t|0))break;i=r+1|0;if((i|0)<(t|0)){f=a[c+(i<<2)>>2]|0;e=a[c+(r<<2)>>2]|0;if(+s[(a[f+16>>2]|0)+136>>3]<+s[(a[e+16>>2]|0)+136>>3]){r=i;e=f}else b=6}else{e=a[c+(r<<2)>>2]|0;b=6}if((b|0)==6)b=0;i=e+16|0;if(+s[(a[l>>2]|0)+136>>3]<=+s[(a[i>>2]|0)+136>>3])break;a[c+(r<<2)>>2]=A;a[(a[l>>2]|0)+124>>2]=r;a[c+(n<<2)>>2]=e;a[(a[i>>2]|0)+124>>2]=n;n=r}return}function YU(A){A=A|0;var e=0,i=0;e=(a[A+16>>2]|0)+124|0;if((a[e>>2]|0)>=0)gA(90377,90397,643,90405);i=a[46801]|0;a[46801]=i+1;a[e>>2]=i;a[(a[46800]|0)+(i<<2)>>2]=A;if((i|0)>0)WU(A);return}function DU(){var A=0,e=0,i=0,r=0;e=a[46801]|0;if(!e)A=0;else{r=a[46800]|0;A=a[r>>2]|0;i=e+-1|0;a[46801]=i;i=a[r+(i<<2)>>2]|0;a[r>>2]=i;a[(a[i+16>>2]|0)+124>>2]=0;if((e|0)>2)zU(i);a[(a[A+16>>2]|0)+124>>2]=-1}return A|0}function MU(A,e){A=A|0;e=e|0;var i=0,r=0;r=k;k=k+16|0;i=r;a[46800]=qF((e<<2)+4|0)|0;if(0){}e=cd(A)|0;while(1){if(!e)break;FU(A,e);e=sd(A,e)|0}if(0){}L2(a[46800]|0);k=r;return}function FU(A,e){A=A|0;e=e|0;var i=0,r=0,f=0.0,n=0,l=0,t=0,c=0;r=a[(a[A+16>>2]|0)+152>>2]|0;f=+s[23295];i=0;while(1){n=a[r+(i<<2)>>2]|0;if(!n)break;s[(a[n+16>>2]|0)+136>>3]=f;i=i+1|0}a[46802]=e;c=a[e+16>>2]|0;s[c+136>>3]=0.0;a[c+128>>2]=0;YU(e);A:while(1){c=DU()|0;if(!c)break;i=a[46802]|0;t=c+16|0;if((c|0)!=(i|0))VU(A,i,c,+s[(a[t>>2]|0)+136>>3]);l=Ah(A,c)|0;while(1){if(!l)continue A;i=a[l>>2]&3;e=a[((i|0)==3?l:l+48|0)+40>>2]|0;if((e|0)==(c|0))e=a[((i|0)==2?l:l+-48|0)+40>>2]|0;i=a[t>>2]|0;f=+s[(a[l+16>>2]|0)+136>>3]+ +s[i+136>>3];r=a[e+16>>2]|0;n=r+136|0;do{if(+s[n>>3]>f){s[n>>3]=f;if((a[r+124>>2]|0)>-1){WU(e);break}else{a[r+128>>2]=(a[i+128>>2]|0)+1;YU(e);break}}}while(0);l=eh(A,l,c)|0}}return}function VU(A,e,i,r){A=A|0;e=e|0;i=i|0;r=+r;e=a[(a[e+16>>2]|0)+120>>2]|0;i=a[(a[i+16>>2]|0)+120>>2]|0;A=a[(a[A+16>>2]|0)+160>>2]|0;s[(a[A+(i<<2)>>2]|0)+(e<<3)>>3]=r;s[(a[A+(e<<2)>>2]|0)+(i<<3)>>3]=r;return}function JU(A){A=A|0;zX(A,2);f[(a[A+16>>2]|0)+176>>1]=2;a[47137]=2;pU(A);return}function pU(A){A=A|0;var e=0,i=0,r=0,f=0;e=gh(A)|0;r=qF(e*56|0)|0;e=qF((e<<2)+4|0)|0;f=A+16|0;a[(a[f>>2]|0)+152>>2]=e;e=cd(A)|0;i=0;while(1){if(!e)break;RX(e);a[(a[e+16>>2]|0)+112>>2]=r+(i*56|0);a[(a[(a[f>>2]|0)+152>>2]|0)+(i<<2)>>2]=e;e=sd(A,e)|0;i=i+1|0}i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;NU(e);e=_o(A,e)|0}i=sd(A,i)|0}return}function NU(A){A=A|0;var e=0.0;Td(A,137460,176,1)|0;VR(A)|0;e=+oR(A,a[47174]|0,1.0,0.0);s[(a[A+16>>2]|0)+128>>3]=e;return}function RU(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0;v=k;k=k+80|0;b=v+32|0;l=v+24|0;n=v+16|0;t=v;g=v+72|0;o=v+40|0;if(gh(A)|0){JU(A);f=Ho(A,95738)|0;if(f)if(r[f>>0]|0){e=gd(A,f,0)|0;if(!e){a[n>>2]=f;ao(0,90448,n)|0;ao(3,90488,l)|0;e=0;B=1}else B=0}else{e=0;B=1}else{e=0;B=0}u=Yo(A,1,95738,0)|0;w=(u|0)!=0;f=Ho(A,140742)|0;if((f|0?r[f>>0]|0:0)?(c=t+8|0,a[b>>2]=t,a[b+4>>2]=c,(J3(f,105503,b)|0)==1):0)s[c>>3]=+s[t>>3];if(gh(A)|0){b=yE(A,g,0)|0;if((a[g>>2]|0)==1){n=(e|0)!=0;do{if(n)i=e;else{if(w?(i=XU(A,u)|0,i|0):0)break;i=0}}while(0);f=pK(A,i)|0;if(!((i|0)!=0|w^1))Vo(f,u,142463)|0;d=(cd(A)|0)+16|0;L2(a[(a[d>>2]|0)+112>>2]|0);a[(a[d>>2]|0)+112>>2]=0;eP(A)|0;SH(A);e=(B|0)==0|n?e:f}else{sC(A,2,8,o)|0;a[o+12>>2]=0;c=(B|0)==0;t=0;while(1){if((t|0)>=(a[g>>2]|0))break;n=a[b+(t<<2)>>2]|0;i=(e|0)!=0;if(i?(Dd(n,e)|0)!=0:0)f=e;else d=23;do{if((d|0)==23){d=0;if(w?(h=XU(n,u)|0,h|0):0){f=h;break}f=0}}while(0);VE(n)|0;l=pK(n,f)|0;e=c|i?e:l;if(w?(f|0)==0|(f|0)==(e|0):0)Vo(l,u,142463)|0;eP(n)|0;t=t+1|0}d=(cd(A)|0)+16|0;L2(a[(a[d>>2]|0)+112>>2]|0);a[(a[d>>2]|0)+112>>2]=0;cC(a[g>>2]|0,b,A,o)|0;SH(A)}i=0;while(1){if((i|0)>=(a[g>>2]|0))break;Cd(A,a[b+(i<<2)>>2]|0)|0;i=i+1|0}L2(b)}if(B|0)xo(A,95738,Vh(e)|0)|0;VJ(A)}k=v;return}function XU(A,e){A=A|0;e=e|0;var i=0;i=cd(A)|0;while(1){if(!i){i=0;break}if((vR(Uo(i,e)|0)|0)<<24>>24)break;i=sd(A,i)|0}return i|0}function HU(A){A=A|0;var e=0,i=0;e=cd(A)|0;if(e|0){while(1){if(!e)break;i=Oo(A,e)|0;while(1){if(!i)break;wX(i);i=_o(A,i)|0}bX(e);e=sd(A,e)|0}UU(A)}return}function UU(A){A=A|0;L2(a[(a[A+16>>2]|0)+152>>2]|0);if((Zd(A)|0)!=(A|0))_d(A,0,137483);return}function xU(A){A=A|0;TU(A);if(!((gh(A)|0)==0?!(a[(a[A+16>>2]|0)+180>>2]|0):0)){A_(A);VJ(A)}return}function TU(A){A=A|0;a[47147]=Yo(A,1,108230,108236)|0;zX(A,2);f[(a[A+16>>2]|0)+176>>1]=2;a[47137]=2;jU(A,0);PU(A);return}function jU(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;n=t;l=(e|0)==0;if(l){KU(n);e=n}i=RB(A)|0;while(1){if(!i)break;if(!(Z1(Vh(i)|0,108006,7)|0)){Td(i,137483,280,1)|0;_U(e,i);jU(i,0)}else jU(i,e);i=XB(i)|0}if(l?(r=a[n+8>>2]|0,f=A+16|0,a[(a[f>>2]|0)+180>>2]=r,r|0):0){l=eV(a[n>>2]|0,(r<<2)+4|0)|0;a[(a[f>>2]|0)+184>>2]=l}k=t;return}function PU(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;f=qF((gh(A)|0)<<2)|0;e=qF(((gh(A)|0)<<2)+4|0)|0;n=A+16|0;a[(a[n>>2]|0)+152>>2]=e;e=cd(A)|0;i=0;while(1){if(!e)break;Td(e,137447,304,1)|0;a[(a[e+16>>2]|0)+112>>2]=f+(i<<2);a[(a[(a[n>>2]|0)+152>>2]|0)+(i<<2)>>2]=e;SU(e);r=Oo(A,e)|0;while(1){if(!r)break;OU(r);r=_o(A,r)|0}e=sd(A,e)|0;i=i+1|0}return}function SU(A){A=A|0;xo(A,108230,108236)|0;return}function OU(A){A=A|0;Td(A,137460,304,1)|0;return}function KU(A){A=A|0;a[A>>2]=0;a[A+4>>2]=0;a[A+8>>2]=0;return}function _U(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;n=A+8|0;i=(a[n>>2]|0)+1|0;a[n>>2]=i;r=A+4|0;l=a[r>>2]|0;f=l+10|0;if((i|0)<(l|0))A=a[A>>2]|0;else{a[r>>2]=f;i=eV(a[A>>2]|0,f<<2)|0;a[A>>2]=i;A=i;i=a[n>>2]|0}a[A+(i<<2)>>2]=e;return}function qU(A){A=A|0;var e=0,i=0;e=cd(A)|0;if(e|0){L2(a[(a[e+16>>2]|0)+112>>2]|0);while(1){if(!e)break;i=Oo(A,e)|0;while(1){if(!i)break;wX(i);i=_o(A,i)|0}bX(e);e=sd(A,e)|0}$U(A)}return}function $U(A){A=A|0;L2(a[(a[A+16>>2]|0)+152>>2]|0);if((Zd(A)|0)!=(A|0))_d(A,0,137483);return}function Ax(A){A=A|0;var e=0,i=0,r=0;ex(A);ix(A,0);rx(A,0);fx(A,0);e=a[A+16>>2]|0;if(!(a[(a[e+8>>2]|0)+84>>2]|0)){e=f[e+136>>1]&14;if(e<<16>>16)JH(A,e&65535)|0}else{e=cd(A)|0;while(1){if(!e)break;r=a[e+16>>2]|0;i=a[r+132>>2]|0;s[i>>3]=+s[r+16>>3]*.013888888888888888;s[i+8>>3]=+s[r+24>>3]*.013888888888888888;e=sd(A,e)|0}RH(A,1)}VJ(A);return}function ex(A){A=A|0;var e=0,i=0;zX(A,2);f[(a[A+16>>2]|0)+176>>1]=2;a[47137]=2;e=cd(A)|0;while(1){if(!e)break;RX(e);e=sd(A,e)|0}i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;Td(e,137460,176,1)|0;VR(e)|0;e=_o(A,e)|0}i=sd(A,i)|0}return}function ix(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;n=t;l=(e|0)==0;if(l){cx(n);e=n}i=RB(A)|0;while(1){if(!i)break;if(!(Z1(Vh(i)|0,108006,7)|0)){Td(i,137483,280,1)|0;JF(i);sx(e,i);ix(i,0)}else ix(i,e);i=XB(i)|0}if(l?(r=a[n+8>>2]|0,f=A+16|0,a[(a[f>>2]|0)+180>>2]=r,r|0):0){l=eV(a[n>>2]|0,(r<<2)+4|0)|0;a[(a[f>>2]|0)+184>>2]=l}k=t;return}function rx(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0.0,t=0.0,c=0.0,b=0.0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0;H=k;k=k+448|0;Y=H+400|0;z=H+384|0;X=H+344|0;R=H+304|0;N=H+248|0;y=H+192|0;I=H+152|0;Z=H+96|0;w=H+72|0;i=H+64|0;M=H+32|0;F=H;Q=H+416|0;v=H+328|0;C=H+288|0;V=H+232|0;J=H+176|0;p=H+136|0;D=H+80|0;u=a[A+60>>2]|0;if(0>1){ax(e);W=a[15712]|0;a[i>>2]=Vh(A)|0;f3(W,90723,i)|0}W=A+16|0;f=e+1|0;i=1;r=0;while(1){n=a[W>>2]|0;if((i|0)>(a[n+180>>2]|0))break;L=a[(a[n+184>>2]|0)+(i<<2)>>2]|0;rx(L,f);i=i+1|0;r=(gh(L)|0)+r|0}o=(gh(A)|0)-r|0;i=a[W>>2]|0;L=(a[i+180>>2]|0)+o|0;E=(L|0)==0;if(E?(a[i+12>>2]|0)==0:0){X=i+16|0;a[X>>2]=0;a[X+4>>2]=0;a[X+8>>2]=0;a[X+12>>2]=0;s[i+40>>3]=18.0;s[i+32>>3]=18.0}else{i=Q+16|0;do{if((sC(A,4,4,Q)|0)>>>0>=3)if((a[i>>2]|0)==4?(a[Q+28>>2]&2|0)!=0:0){r=Yo(u,0,99190,0)|0;i=Yo(u,1,99190,0)|0;if((r|0)!=0|(i|0)!=0){a[Q+24>>2]=qF(L<<2)|0;break}else{a[w>>2]=Vh(A)|0;ao(0,90577,w)|0;i=0;r=0;break}}else{i=0;r=0}else{a[i>>2]=3;i=0;r=0}}while(0);G=qF(L<<5)|0;m=qF(L<<2)|0;B=Q+24|0;u=(r|0)!=0;d=0;n=1;while(1){f=a[W>>2]|0;if((n|0)>(a[f+180>>2]|0))break;f=a[(a[f+184>>2]|0)+(n<<2)>>2]|0;g=G+(d<<5)|0;h=(a[f+16>>2]|0)+16|0;a[g>>2]=a[h>>2];a[g+4>>2]=a[h+4>>2];a[g+8>>2]=a[h+8>>2];a[g+12>>2]=a[h+12>>2];a[g+16>>2]=a[h+16>>2];a[g+20>>2]=a[h+20>>2];a[g+24>>2]=a[h+24>>2];a[g+28>>2]=a[h+28>>2];if(u&(a[B>>2]|0)!=0){g=kR(f,r,0,0)|0;a[(a[B>>2]|0)+(d<<2)>>2]=g}a[m+(d<<2)>>2]=f;d=d+1|0;n=n+1|0}A:do{if((o|0)>0){w=M+16|0;o=M+24|0;h=(i|0)!=0;u=cd(A)|0;r=d;while(1){if(!u)break A;f=a[u+16>>2]|0;n=f+112|0;if(!(a[n>>2]|0)){a[n>>2]=A;a[M>>2]=0;a[M+4>>2]=0;a[M+8>>2]=0;a[M+12>>2]=0;s[w>>3]=+s[f+96>>3]+ +s[f+88>>3];s[o>>3]=+s[f+80>>3];g=G+(r<<5)|0;a[g>>2]=a[M>>2];a[g+4>>2]=a[M+4>>2];a[g+8>>2]=a[M+8>>2];a[g+12>>2]=a[M+12>>2];a[g+16>>2]=a[M+16>>2];a[g+20>>2]=a[M+20>>2];a[g+24>>2]=a[M+24>>2];a[g+28>>2]=a[M+28>>2];if(h&(a[B>>2]|0)!=0){g=kR(u,i,0,0)|0;a[(a[B>>2]|0)+(r<<2)>>2]=g}a[m+(r<<2)>>2]=u;r=r+1|0}u=sd(A,u)|0}}}while(0);g=rC(L,G,Q)|0;i=a[B>>2]|0;if(i|0)L2(i);nx(F,2147483647.0,2147483647.0);B=F+16|0;nx(v,-2147483647.0,-2147483647.0);a[B>>2]=a[v>>2];a[B+4>>2]=a[v+4>>2];a[B+8>>2]=a[v+8>>2];a[B+12>>2]=a[v+12>>2];n=M+16|0;u=M+8|0;w=M+24|0;o=F+8|0;h=F+24|0;d=a[15712]|0;i=0;while(1){if((i|0)>=(L|0))break;t=+(a[g+(i<<3)>>2]|0);b=+(a[g+(i<<3)+4>>2]|0);r=G+(i<<5)|0;a[M>>2]=a[r>>2];a[M+4>>2]=a[r+4>>2];a[M+8>>2]=a[r+8>>2];a[M+12>>2]=a[r+12>>2];a[M+16>>2]=a[r+16>>2];a[M+20>>2]=a[r+20>>2];a[M+24>>2]=a[r+24>>2];a[M+28>>2]=a[r+28>>2];l=+s[M>>3]+t;s[M>>3]=l;t=+s[n>>3]+t;s[n>>3]=t;c=+s[u>>3]+b;s[u>>3]=c;b=+s[w>>3]+b;s[w>>3]=b;s[F>>3]=+s[(+s[F>>3] >3];s[o>>3]=+s[(+s[o>>3] >3];s[B>>3]=+s[(+s[B>>3]>t?F:M)+16>>3];s[h>>3]=+s[(+s[h>>3]>b?F:M)+24>>3];r=a[m+(i<<2)>>2]|0;f=r+16|0;if((i|0)<(a[(a[W>>2]|0)+180>>2]|0)){v=(a[f>>2]|0)+16|0;a[v>>2]=a[M>>2];a[v+4>>2]=a[M+4>>2];a[v+8>>2]=a[M+8>>2];a[v+12>>2]=a[M+12>>2];a[v+16>>2]=a[M+16>>2];a[v+20>>2]=a[M+20>>2];a[v+24>>2]=a[M+24>>2];a[v+28>>2]=a[M+28>>2];if(0>1){ax(e);a[Z>>2]=Vh(r)|0;s[Z+8>>3]=l;s[Z+16>>3]=c;s[Z+24>>3]=t;s[Z+32>>3]=b;f3(d,90556,Z)|0}}else{v=(a[f>>2]|0)+16|0;a[z>>2]=a[M>>2];a[z+4>>2]=a[M+4>>2];a[z+8>>2]=a[M+8>>2];a[z+12>>2]=a[M+12>>2];a[Y>>2]=a[n>>2];a[Y+4>>2]=a[n+4>>2];a[Y+8>>2]=a[n+8>>2];a[Y+12>>2]=a[n+12>>2];lx(C,z,Y);a[v>>2]=a[C>>2];a[v+4>>2]=a[C+4>>2];a[v+8>>2]=a[C+8>>2];a[v+12>>2]=a[C+12>>2];if(0>1){ax(e);v=Vh(r)|0;f=a[f>>2]|0;c=+s[f+16>>3];b=+s[f+24>>3];a[I>>2]=v;s[I+8>>3]=c;s[I+16>>3]=b;f3(d,90544,I)|0}}i=i+1|0}r=a[W>>2]|0;i=a[r+12>>2]|0;if(i|0){l=+s[i+24>>3];if(E){t=+s[i+32>>3];a[F>>2]=0;a[F+4>>2]=0;a[F+8>>2]=0;a[F+12>>2]=0;s[B>>3]=l;s[h>>3]=t;t=0.0;c=l}else{t=+s[F>>3];c=+s[B>>3]}b=l-(c-t);l=b*.5;if(b>0.0){s[F>>3]=t-l;s[B>>3]=c+l}}if((e|0)>0)l=+((a[Q+8>>2]|0)>>>0)*.5;else l=0.0;t=+s[F>>3]-l;s[F>>3]=t;c=+s[B>>3]+l;s[B>>3]=c;b=-l-+s[r+56>>3]+ +s[o>>3];s[o>>3]=b;l=+s[r+88>>3]+l+ +s[h>>3];s[h>>3]=l;if(0>1){ax(e);a[y>>2]=Vh(A)|0;s[y+8>>3]=t;s[y+16>>3]=b;s[y+24>>3]=c;s[y+32>>3]=l;f3(d,90556,y)|0}i=0;while(1){if((i|0)>=(L|0))break;r=a[m+(i<<2)>>2]|0;f=r+16|0;if((i|0)<(a[(a[W>>2]|0)+180>>2]|0)){y=(a[f>>2]|0)+16|0;a[M>>2]=a[y>>2];a[M+4>>2]=a[y+4>>2];a[M+8>>2]=a[y+8>>2];a[M+12>>2]=a[y+12>>2];a[M+16>>2]=a[y+16>>2];a[M+20>>2]=a[y+20>>2];a[M+24>>2]=a[y+24>>2];a[M+28>>2]=a[y+28>>2];a[z>>2]=a[y>>2];a[z+4>>2]=a[y+4>>2];a[z+8>>2]=a[y+8>>2];a[z+12>>2]=a[y+12>>2];a[Y>>2]=a[F>>2];a[Y+4>>2]=a[F+4>>2];a[Y+8>>2]=a[F+8>>2];a[Y+12>>2]=a[F+12>>2];tx(M,z,Y);a[z>>2]=a[n>>2];a[z+4>>2]=a[n+4>>2];a[z+8>>2]=a[n+8>>2];a[z+12>>2]=a[n+12>>2];a[Y>>2]=a[F>>2];a[Y+4>>2]=a[F+4>>2];a[Y+8>>2]=a[F+8>>2];a[Y+12>>2]=a[F+12>>2];tx(V,z,Y);a[n>>2]=a[V>>2];a[n+4>>2]=a[V+4>>2];a[n+8>>2]=a[V+8>>2];a[n+12>>2]=a[V+12>>2];y=(a[f>>2]|0)+16|0;a[y>>2]=a[M>>2];a[y+4>>2]=a[M+4>>2];a[y+8>>2]=a[M+8>>2];a[y+12>>2]=a[M+12>>2];a[y+16>>2]=a[M+16>>2];a[y+20>>2]=a[M+20>>2];a[y+24>>2]=a[M+24>>2];a[y+28>>2]=a[M+28>>2];if(0>1){ax(e);y=Vh(r)|0;l=+s[M>>3];t=+s[u>>3];c=+s[n>>3];b=+s[w>>3];a[N>>2]=y;s[N+8>>3]=l;s[N+16>>3]=t;s[N+24>>3]=c;s[N+32>>3]=b;f3(d,90556,N)|0}}else{y=(a[f>>2]|0)+16|0;a[z>>2]=a[y>>2];a[z+4>>2]=a[y+4>>2];a[z+8>>2]=a[y+8>>2];a[z+12>>2]=a[y+12>>2];a[Y>>2]=a[F>>2];a[Y+4>>2]=a[F+4>>2];a[Y+8>>2]=a[F+8>>2];a[Y+12>>2]=a[F+12>>2];tx(J,z,Y);a[y>>2]=a[J>>2];a[y+4>>2]=a[J+4>>2];a[y+8>>2]=a[J+8>>2];a[y+12>>2]=a[J+12>>2];if(0>1){ax(e);y=Vh(r)|0;Q=a[f>>2]|0;c=+s[Q+16>>3];b=+s[Q+24>>3];a[R>>2]=y;s[R+8>>3]=c;s[R+16>>3]=b;f3(d,90544,R)|0}}i=i+1|0}a[z>>2]=a[B>>2];a[z+4>>2]=a[B+4>>2];a[z+8>>2]=a[B+8>>2];a[z+12>>2]=a[B+12>>2];a[Y>>2]=a[F>>2];a[Y+4>>2]=a[F+4>>2];a[Y+8>>2]=a[F+8>>2];a[Y+12>>2]=a[F+12>>2];tx(p,z,Y);a[B>>2]=a[p>>2];a[B+4>>2]=a[p+4>>2];a[B+8>>2]=a[p+8>>2];a[B+12>>2]=a[p+12>>2];a[z>>2]=a[F>>2];a[z+4>>2]=a[F+4>>2];a[z+8>>2]=a[F+8>>2];a[z+12>>2]=a[F+12>>2];a[Y>>2]=a[F>>2];a[Y+4>>2]=a[F+4>>2];a[Y+8>>2]=a[F+8>>2];a[Y+12>>2]=a[F+12>>2];tx(D,z,Y);a[F>>2]=a[D>>2];a[F+4>>2]=a[D+4>>2];a[F+8>>2]=a[D+8>>2];a[F+12>>2]=a[D+12>>2];R=(a[W>>2]|0)+16|0;a[R>>2]=a[F>>2];a[R+4>>2]=a[F+4>>2];a[R+8>>2]=a[F+8>>2];a[R+12>>2]=a[F+12>>2];a[R+16>>2]=a[F+16>>2];a[R+20>>2]=a[F+20>>2];a[R+24>>2]=a[F+24>>2];a[R+28>>2]=a[F+28>>2];if(0>1){ax(e);R=Vh(A)|0;l=+s[F>>3];t=+s[o>>3];c=+s[B>>3];b=+s[h>>3];a[X>>2]=R;s[X+8>>3]=l;s[X+16>>3]=t;s[X+24>>3]=c;s[X+32>>3]=b;f3(d,90556,X)|0}L2(G);L2(m);L2(g)}k=H;return}function fx(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0.0,c=0.0,b=0.0,u=0.0,w=0,o=0.0,h=0.0,d=0,B=0,g=0,v=0;g=k;k=k+80|0;B=g+32|0;l=g+8|0;i=g;d=A+16|0;w=a[d>>2]|0;o=+s[w+16>>3];h=+s[w+24>>3];if(0>1){ax(e);w=a[15712]|0;a[i>>2]=Vh(A)|0;f3(w,90529,i)|0}w=(e|0)!=0;A:do{if(w){i=cd(A)|0;r=a[15712]|0;while(1){if(!i)break A;f=i+16|0;n=a[f>>2]|0;if((a[n+112>>2]|0)==(A|0)?(v=n+16|0,s[v>>3]=+s[v>>3]+o,n=n+24|0,s[n>>3]=+s[n>>3]+h,0>1):0){ax(e);v=Vh(i)|0;n=a[f>>2]|0;b=+s[n+16>>3];u=+s[n+24>>3];a[l>>2]=v;s[l+8>>3]=b;s[l+16>>3]=u;f3(r,90544,l)|0}i=sd(A,i)|0}}else r=a[15712]|0}while(0);l=e+1|0;A=1;while(1){i=a[d>>2]|0;if((A|0)>(a[i+180>>2]|0))break;n=a[(a[i+184>>2]|0)+(A<<2)>>2]|0;if(w){f=n+16|0;i=a[f>>2]|0;t=+s[i+16>>3]+o;c=+s[i+24>>3]+h;b=+s[i+32>>3]+o;u=+s[i+40>>3]+h;if(0>1){ax(e);a[B>>2]=Vh(n)|0;s[B+8>>3]=t;s[B+16>>3]=c;s[B+24>>3]=b;s[B+32>>3]=u;f3(r,90556,B)|0;i=a[f>>2]|0}s[i+16>>3]=t;s[i+24>>3]=c;s[i+32>>3]=b;s[i+40>>3]=u}fx(n,l);A=A+1|0}k=g;return}function ax(A){A=A|0;var e=0;e=a[15712]|0;while(1){if((A|0)<=0)break;Q3(90574,e)|0;A=A+-1|0}return}function nx(A,e,i){A=A|0;e=+e;i=+i;s[A>>3]=e;s[A+8>>3]=i;return}function lx(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;r=(+s[i+8>>3]+ +s[e+8>>3])*.5;s[A>>3]=(+s[i>>3]+ +s[e>>3])*.5;s[A+8>>3]=r;return}function tx(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0;r=+s[e+8>>3]-+s[i+8>>3];s[A>>3]=+s[e>>3]-+s[i>>3];s[A+8>>3]=r;return}function cx(A){A=A|0;a[A>>2]=0;a[A+4>>2]=0;a[A+8>>2]=0;return}function sx(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;n=A+8|0;i=(a[n>>2]|0)+1|0;a[n>>2]=i;r=A+4|0;l=a[r>>2]|0;f=l+10|0;if((i|0)<(l|0))A=a[A>>2]|0;else{a[r>>2]=f;i=eV(a[A>>2]|0,f<<2)|0;a[A>>2]=i;A=i;i=a[n>>2]|0}a[A+(i<<2)>>2]=e;return}function bx(A){A=A|0;var e=0;e=cd(A)|0;while(1){if(!e)break;bX(e);e=sd(A,e)|0}ux(A);return}function ux(A){A=A|0;var e=0,i=0,r=0;e=A+16|0;A=1;while(1){r=a[e>>2]|0;i=a[r+184>>2]|0;if((A|0)>(a[r+180>>2]|0))break;r=a[i+(A<<2)>>2]|0;TF(a[(a[r+16>>2]|0)+12>>2]|0);ux(r);A=A+1|0}L2(i);return}function wx(A){A=A|0;var e=0,i=0,r=0;Kd(A,1,137447,304,1);KR(A)|0;e=qF(((gh(A)|0)<<2)+4|0)|0;r=A+16|0;a[(a[r>>2]|0)+152>>2]=e;e=0;i=cd(A)|0;while(1){if(!i)break;kx(i);a[(a[(a[r>>2]|0)+152>>2]|0)+(e<<2)>>2]=i;a[(a[i+16>>2]|0)+120>>2]=e;e=e+1|0;i=sd(A,i)|0}r=Yo(A,2,92493,0)|0;i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;ox(e,r);e=_o(A,e)|0}i=sd(A,i)|0}hx(A);return}function kx(A){A=A|0;var e=0;FR(A);e=qF((l[(a[(Id(A)|0)+16>>2]|0)+176>>1]|0)<<3)|0;a[(a[A+16>>2]|0)+132>>2]=e;DX(A,a[(a[(Id(A)|0)+16>>2]|0)+116>>2]&1);return}function ox(A,e){A=A|0;e=e|0;var i=0,r=0.0;Td(A,137460,176,1)|0;r=+oR(A,a[47174]|0,1.0,0.0);i=A+16|0;s[(a[i>>2]|0)+128>>3]=r;r=+oR(A,e,+s[1371],0.0);s[(a[i>>2]|0)+136>>3]=r;VR(A)|0;return}function hx(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0;d=k;k=k+32|0;h=d+16|0;o=d;b=d+24|0;u=Yo(A,1,102623,0)|0;A:do{if(u|0){w=Yo(A,1,90660,0)|0;l=A+16|0;t=(w|0)==0;c=a[15712]|0;n=0;while(1){i=a[(a[(a[l>>2]|0)+152>>2]|0)+(n<<2)>>2]|0;if(!i)break A;A=Uo(i,u)|0;do{if(r[A>>0]|0){f=i+16|0;e=a[(a[f>>2]|0)+132>>2]|0;r[b>>0]=0;a[o>>2]=e;a[o+4>>2]=e+8;a[o+8>>2]=b;if((J3(A,101749,o)|0)<=1){a[h>>2]=Vh(i)|0;a[h+4>>2]=A;f3(c,90664,h)|0;break}e:do{if(+s[23293]>0.0){A=0;while(1){if((A|0)==2)break e;B=e+(A<<3)|0;s[B>>3]=+s[B>>3]/+s[23293];A=A+1|0}}}while(0);A=a[f>>2]|0;r[A+119>>0]=1;if((r[b>>0]|0)!=33){if(t)break;if(!((vR(Uo(i,w)|0)|0)<<24>>24))break;A=a[f>>2]|0}r[A+119>>0]=3}}while(0);n=n+1|0}}}while(0);k=d;return}function dx(A){A=A|0;var e=0,i=0;i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;wX(e);e=_o(A,e)|0}bX(i);i=sd(A,i)|0}Bx(A);return}function Bx(A){A=A|0;gx(A);A=A+16|0;L2(a[(a[A>>2]|0)+152>>2]|0);L2(a[(a[A>>2]|0)+140>>2]|0);return}function gx(A){A=A|0;var e=0,i=0,r=0,f=0,n=0;n=A+16|0;f=1;while(1){r=a[n>>2]|0;e=a[r+184>>2]|0;if((f|0)>(a[r+180>>2]|0))break;r=a[e+(f<<2)>>2]|0;e=r+16|0;TF(a[(a[e>>2]|0)+12>>2]|0);i=a[(a[e>>2]|0)+140>>2]|0;if(i|0){L2(a[i>>2]|0);L2(a[(a[e>>2]|0)+140>>2]|0)}gx(r);f=f+1|0}L2(e);if((Zd(A)|0)!=(A|0))Pd(A,137483)|0;return}function vx(A,e){A=A|0;e=e|0;a[e+4>>2]=Yo(A,0,90716,0)|0;a[e+8>>2]=Yo(A,0,141116,0)|0;a[e+12>>2]=Yo(A,0,141048,0)|0;a[e>>2]=A;a[e+16>>2]=0;a[e+36>>2]=sC(A,2,4,e+20|0)|0;return}function Ex(A){A=A|0;var e=0,i=0;zX(A,2);e=qF(56)|0;i=A+16|0;a[(a[i>>2]|0)+140>>2]=e;e=(kR(A,Yo(A,0,91374,0)|0,2,2)|0)&65535;e=(e&65535)<10?e:10;f[(a[i>>2]|0)+176>>1]=e;a[47137]=e&65535;Cx(A,0,A);jx(A);wx(A);return}function Cx(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0;b=k;k=k+16|0;c=b;s=(e|0)==0;if(s){Ix(c);e=c}n=i+16|0;r=RB(A)|0;while(1){if(!r)break;if(!(Z1(Vh(r)|0,108006,7)|0)){Td(r,137483,280,1)|0;u=qF(56)|0;o=a[r+16>>2]|0;a[o+140>>2]=u;w=a[n>>2]|0;f[o+176>>1]=f[w+176>>1]|0;a[u+44>>2]=(a[(a[w+140>>2]|0)+44>>2]|0)+1;a[u+48>>2]=i;Zx(e,r);Cx(r,0,r)}else Cx(r,e,i);r=XB(r)|0}if(s?(l=a[c+8>>2]|0,t=A+16|0,a[(a[t>>2]|0)+180>>2]=l,l|0):0){o=eV(a[c>>2]|0,(l<<2)+4|0)|0;a[(a[t>>2]|0)+184>>2]=o}k=b;return}function Ix(A){A=A|0;a[A>>2]=0;a[A+4>>2]=0;a[A+8>>2]=0;return}function Zx(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0;n=A+8|0;i=(a[n>>2]|0)+1|0;a[n>>2]=i;r=A+4|0;l=a[r>>2]|0;f=l+10|0;if((i|0)<(l|0))A=a[A>>2]|0;else{a[r>>2]=f;i=eV(a[A>>2]|0,f<<2)|0;a[A>>2]=i;A=i;i=a[n>>2]|0}a[A+(i<<2)>>2]=e;return}function Gx(A){A=A|0;var e=0,i=0;e=k;k=k+64|0;i=e;vx(A,i);mx(A,i);Qx(A);Lx(A,A);yx(A);k=e;return}function mx(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0.0,v=0.0,E=0,C=0.0,I=0.0;B=k;k=k+64|0;d=B+48|0;i=B+40|0;w=B+56|0;u=B+52|0;b=B;if(0){}i=cd(A)|0;while(1){if(!i)break;a[(a[i+16>>2]|0)+164>>2]=0;i=sd(A,i)|0}o=Wx(A,e)|0;h=E_(o,w,u)|0;i=h;while(1){c=i+4|0;f=a[i>>2]|0;if(!f)break;Px(f,b);i=cd(f)|0;while(1){if(!i)break;n=sd(f,i)|0;l=i+16|0;t=a[l>>2]|0;if(a[t+212>>2]|0){E=zx(i,f)|0;mx(E,e);E=a[(a[E+16>>2]|0)+140>>2]|0;v=+s[E+24>>3];t=a[l>>2]|0;s[t+32>>3]=v;g=+s[E+32>>3];s[t+40>>3]=g;v=v*36.0;s[t+88>>3]=v;s[t+96>>3]=v;s[t+80>>3]=g*72.0;i=n;continue}if(a[(a[t+112>>2]|0)+8>>2]|0){i=n;continue}Cd(f,i)|0;i=n}if((gh(f)|0)<=1){i=c;continue}if((a[e>>2]|0)==(A|0))Zj(f)|0;nT(f,b);i=c}i=a[w>>2]|0;if((i|0)<=1)if((i|0)==1){xR(a[h>>2]|0);i=0}else i=0;else{if(!(a[u>>2]|0))f=0;else{f=qF(i)|0;r[f>>0]=1;i=a[w>>2]|0}a[e+40>>2]=f;i=HE(i,h,0,e+20|0)|0;L2(f)}Yx(o,a[w>>2]|0,h,i,A,e);L2(i);f=cd(o)|0;while(1){if(!f)break;n=a[f+16>>2]|0;i=a[n+212>>2]|0;if(!i){i=a[(a[n+112>>2]|0)+8>>2]|0;if(i|0){w=a[n+132>>2]|0;E=a[(a[i+16>>2]|0)+132>>2]|0;s[E>>3]=+s[w>>3];s[E+8>>3]=+s[w+8>>3]}}else{w=a[n+132>>2]|0;I=+s[n+32>>3];C=+s[w>>3]-I*.5;E=a[(a[i+16>>2]|0)+140>>2]|0;s[E+8>>3]=C;g=+s[n+40>>3];v=+s[w+8>>3]-g*.5;s[E+16>>3]=v;s[E+24>>3]=I+C;s[E+32>>3]=g+v}f=sd(o,f)|0}E=(a[(a[A+16>>2]|0)+140>>2]|0)+8|0;w=(a[(a[o+16>>2]|0)+140>>2]|0)+8|0;a[E>>2]=a[w>>2];a[E+4>>2]=a[w+4>>2];a[E+8>>2]=a[w+8>>2];a[E+12>>2]=a[w+12>>2];a[E+16>>2]=a[w+16>>2];a[E+20>>2]=a[w+20>>2];a[E+24>>2]=a[w+24>>2];a[E+28>>2]=a[w+28>>2];Dx(o,h);L2(h);if(0){}k=B;return}function Qx(A){A=A|0;var e=0,i=0,f=0.0,n=0.0,l=0.0,t=0.0,c=0;e=cd(A)|0;while(1){if(!e)break;i=a[e+16>>2]|0;if(r[i+118>>0]|0){c=a[(a[(a[i+212>>2]|0)+16>>2]|0)+140>>2]|0;t=+s[c+24>>3]-+s[c+8>>3];l=+s[c+32>>3]-+s[c+16>>3];n=t*36.0;f=l*36.0;c=a[i+132>>2]|0;s[c>>3]=t*.5;s[c+8>>3]=l*.5;s[i+32>>3]=t;s[i+40>>3]=l;s[i+96>>3]=n;s[i+88>>3]=n;s[i+80>>3]=l*72.0;i=a[(a[i+12>>2]|0)+44>>2]|0;s[i>>3]=n;s[i+8>>3]=f;l=-n;s[i+16>>3]=l;s[i+24>>3]=f;s[i+32>>3]=l;f=-f;s[i+40>>3]=f;s[i+48>>3]=n;s[i+56>>3]=f}e=sd(A,e)|0}return}function Lx(A,e){A=A|0;e=e|0;var i=0,r=0,f=0.0,n=0.0,l=0,t=0,c=0.0,b=0,u=0.0,w=0,k=0.0,o=0;l=A+16|0;t=a[(a[l>>2]|0)+140>>2]|0;f=+s[t+8>>3];n=+s[t+16>>3];t=(A|0)!=(e|0);A:do{if(t){i=cd(A)|0;while(1){if(!i){A=1;break A}r=a[i+16>>2]|0;if((a[r+212>>2]|0)==(A|0)){r=a[r+132>>2]|0;s[r>>3]=+s[r>>3]+f;r=r+8|0;s[r>>3]=+s[r>>3]+n}i=sd(A,i)|0}}else A=1}while(0);while(1){i=a[l>>2]|0;if((A|0)>(a[i+180>>2]|0))break;i=a[(a[i+184>>2]|0)+(A<<2)>>2]|0;if(t){r=a[(a[i+16>>2]|0)+140>>2]|0;o=r+8|0;w=r+16|0;b=r+24|0;r=r+32|0;k=+s[w>>3]+n;u=+s[b>>3]+f;c=+s[r>>3]+n;s[o>>3]=+s[o>>3]+f;s[w>>3]=k;s[b>>3]=u;s[r>>3]=c}Lx(i,e);A=A+1|0}return}function yx(A){A=A|0;var e=0,i=0,r=0.0,f=0.0,n=0.0;e=A+16|0;A=a[e>>2]|0;i=a[A+140>>2]|0;n=+s[i+16>>3]*72.0;f=+s[i+24>>3]*72.0;r=+s[i+32>>3]*72.0;s[A+16>>3]=+s[i+8>>3]*72.0;s[A+24>>3]=n;s[A+32>>3]=f;s[A+40>>3]=r;A=1;while(1){i=a[e>>2]|0;if((A|0)>(a[i+180>>2]|0))break;yx(a[(a[i+184>>2]|0)+(A<<2)>>2]|0);A=A+1|0}return}function Wx(A,e){A=A|0;e=e|0;var i=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0;Z=k;k=k+160|0;B=Z+24|0;g=Z+8|0;n=Z;i=Z+56|0;C=e+16|0;I=a[C>>2]|0;a[C>>2]=I+1;a[B>>2]=I;S4(i,90796,B)|0;if(0>1){I=a[15712]|0;C=Vh(A)|0;a[n>>2]=i;a[n+4>>2]=C;f3(I,90803,n)|0}r[B>>0]=r[18588]|0;r[B+1>>0]=r[18589]|0;r[B+2>>0]=r[18590]|0;r[B+3>>0]=r[18591]|0;I=kh(91156,B,0)|0;Td(I,137483,280,1)|0;E=qF(56)|0;C=I+16|0;w=a[C>>2]|0;a[w+140>>2]=E;E=A+16|0;f[w+176>>1]=f[(a[E>>2]|0)+176>>1]|0;Nx(A,I,92507);Nx(A,I,93112);Nx(A,I,91202);w=e+4|0;o=B+16|0;h=B+8|0;d=B+24|0;t=0;u=1;while(1){i=a[E>>2]|0;if((u|0)>(a[i+180>>2]|0))break;a[B>>2]=a[332];a[B+4>>2]=a[333];a[B+8>>2]=a[334];a[B+12>>2]=a[335];a[B+16>>2]=a[336];a[B+20>>2]=a[337];a[B+24>>2]=a[338];a[B+28>>2]=a[339];n=a[(a[i+184>>2]|0)+(u<<2)>>2]|0;JF(n);l=Rx(I,Vh(n)|0)|0;c=l+16|0;i=a[c>>2]|0;a[i+212>>2]=n;b=t+1|0;a[i+120>>2]=t;if(a[w>>2]|0)Xx(n,l,e,B);i=cd(n)|0;while(1){if(!i)break;a[(a[i+16>>2]|0)+164>>2]=l;i=sd(n,i)|0}i=a[c>>2]|0;if(r[i+119>>0]|0){c=a[i+132>>2]|0;s[c>>3]=(+s[o>>3]+ +s[B>>3])*.5;s[c+8>>3]=(+s[d>>3]+ +s[h>>3])*.5}t=b;u=u+1|0}c=cd(A)|0;while(1){if(!c)break;i=c+16|0;n=a[i>>2]|0;if(!(a[n+164>>2]|0)){l=n+212|0;B=a[l>>2]|0;if(B|0?(B|0)!=(a[(a[(a[E>>2]|0)+140>>2]|0)+48>>2]|0):0){v=18;break}a[l>>2]=A;if(!(r[n+118>>0]|0)){l=Rx(I,Vh(c)|0)|0;n=a[i>>2]|0;a[n+164>>2]=l;l=a[l+16>>2]|0;a[l+120>>2]=t;s[l+32>>3]=+s[n+32>>3];s[l+40>>3]=+s[n+40>>3];s[l+88>>3]=+s[n+88>>3];s[l+96>>3]=+s[n+96>>3];s[l+80>>3]=+s[n+80>>3];a[l+8>>2]=a[n+8>>2];a[l+12>>2]=a[n+12>>2];i=r[n+119>>0]|0;if(i<<24>>24){e=a[n+132>>2]|0;B=a[l+132>>2]|0;s[B>>3]=+s[e>>3];s[B+8>>3]=+s[e+8>>3];r[l+119>>0]=i}a[(a[l+112>>2]|0)+8>>2]=c;i=t+1|0}else i=t}else i=t;c=sd(A,c)|0;t=i}if((v|0)==18){e=Vh(c)|0;B=Vh(A)|0;v=Vh(a[(a[i>>2]|0)+212>>2]|0)|0;a[g>>2]=e;a[g+4>>2]=B;a[g+8>>2]=v;ao(1,90826,g)|0;fe(187212,1)}b=cd(A)|0;while(1){if(!b)break;u=a[(a[b+16>>2]|0)+164>>2]|0;w=u+16|0;l=Oo(A,b)|0;while(1){if(!l)break;i=a[(a[(a[((a[l>>2]&3|0)==2?l:l+-48|0)+40>>2]|0)+16>>2]|0)+164>>2]|0;if((i|0)!=(u|0)){if(i>>>0>u>>>0)c=th(I,u,i,0,1)|0;else c=th(I,i,u,0,1)|0;Td(c,137460,176,1)|0;n=a[l+16>>2]|0;v=a[c+16>>2]|0;s[v+136>>3]=+s[n+136>>3];s[v+128>>3]=+s[n+128>>3];i=a[(a[i+16>>2]|0)+112>>2]|0;n=i+4|0;a[n>>2]=(a[n>>2]|0)+1;n=a[(a[w>>2]|0)+112>>2]|0;g=n+4|0;a[g>>2]=(a[g>>2]|0)+1;if(!(a[v+172>>2]|0)){a[i>>2]=(a[i>>2]|0)+1;a[n>>2]=(a[n>>2]|0)+1}Hx(c,l)}l=_o(A,l)|0}b=sd(A,b)|0}i=a[(a[E>>2]|0)+140>>2]|0;n=a[i>>2]|0;if(n|0){l=qF((a[i+4>>2]<<4)+16|0)|0;a[a[(a[C>>2]|0)+140>>2]>>2]=l;i=0;while(1){if(!(a[n>>2]|0))break;b=a[(a[(a[n+4>>2]|0)+16>>2]|0)+164>>2]|0;if(b){Ux(A,n);u=Rx(I,193772)|0;w=u+16|0;a[(a[w>>2]|0)+120>>2]=t;if(u>>>0>b>>>0)c=th(I,b,u,0,1)|0;else c=th(I,u,b,0,1)|0;Td(c,137460,176,1)|0;v=a[n>>2]|0;g=a[v+16>>2]|0;E=a[c+16>>2]|0;s[E+136>>3]=+s[g+136>>3];s[E+128>>3]=+s[g+128>>3];Hx(c,v);v=a[(a[w>>2]|0)+112>>2]|0;E=v+4|0;a[E>>2]=(a[E>>2]|0)+1;E=a[(a[b+16>>2]|0)+112>>2]|0;g=E+4|0;a[g>>2]=(a[g>>2]|0)+1;a[v>>2]=(a[v>>2]|0)+1;a[E>>2]=(a[E>>2]|0)+1;a[l+4>>2]=u;s[l+8>>3]=+s[n+8>>3];a[l>>2]=c;i=i+1|0;l=l+16|0;t=t+1|0}n=n+16|0}a[(a[(a[C>>2]|0)+140>>2]|0)+4>>2]=i}k=Z;return I|0}function zx(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0,n=0,l=0,t=0,c=0,b=0;b=a[A+16>>2]|0;c=a[b+212>>2]|0;b=a[(a[b+112>>2]|0)+4>>2]|0;do{if(b|0){t=qF((b<<4)+16|0)|0;f=Vx(A,e)|0;n=f+8|0;e=0;r=f;while(1){if(!(a[r>>2]|0))break;l=r+24|0;if(!(a[l>>2]|0))i=+s[n>>3]+6.283185307179586;else i=+s[r+32>>3];e=Jx(A,r,t,e,i)|0;r=l}if((e|0)==(b|0)){A=a[(a[c+16>>2]|0)+140>>2]|0;a[A>>2]=t;a[A+4>>2]=b;L2(f);break}else gA(90742,90752,766,90761)}}while(0);return c|0}function Yx(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0.0,t=0,c=0.0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0.0,D=0.0;Q=k;k=k+32|0;I=Q+16|0;m=Q;b=a[n+8>>2]|0;t=a[n+12>>2]|0;Z=(a[n>>2]|0)==(f|0);G=(e|0)!=0;A:do{if(G){o=a[(a[i>>2]|0)+16>>2]|0;c=+s[o+16>>3];b=~~(c+(c>=0.0?.5:-.5));a[m>>2]=b;c=+s[o+24>>3];n=~~(c+(c>=0.0?.5:-.5));v=m+4|0;a[v>>2]=n;c=+s[o+32>>3];u=~~(c+(c>=0.0?.5:-.5));E=m+8|0;a[E>>2]=u;c=+s[o+40>>3];o=~~(c+(c>=0.0?.5:-.5));C=m+12|0;a[C>>2]=o;if((e|0)>1){h=a[r>>2]|0;g=a[r+4>>2]|0;b=h+b|0;a[m>>2]=b;e=g+n|0;a[v>>2]=e;u=h+u|0;a[E>>2]=u;h=I+4|0;d=I+8|0;B=I+12|0;w=r;n=i;g=g+o|0;o=e;while(1){n=n+4|0;t=w+8|0;a[C>>2]=g;e=a[n>>2]|0;if(!e){t=0;d=o;B=g;break A}W=a[e+16>>2]|0;Y=+s[W+16>>3];l=+s[W+24>>3];c=+s[W+32>>3];D=+s[W+40>>3];W=~~(D+(D>=0.0?.5:-.5));a[B>>2]=W;e=a[t>>2]|0;z=a[w+12>>2]|0;y=e+~~(Y+(Y>=0.0?.5:-.5))|0;a[I>>2]=y;L=z+~~(l+(l>=0.0?.5:-.5))|0;a[h>>2]=L;e=e+~~(c+(c>=0.0?.5:-.5))|0;a[d>>2]=e;W=z+W|0;a[B>>2]=W;y=a[((b|0)<(y|0)?m:I)>>2]|0;a[m>>2]=y;L=a[((o|0)<(L|0)?m:I)+4>>2]|0;a[v>>2]=L;e=a[((u|0)>(e|0)?m:I)+8>>2]|0;a[E>>2]=e;w=t;g=a[((g|0)>(W|0)?m:I)+12>>2]|0;b=y;o=L;u=e}}else{t=0;d=n;B=o}}else{a[m>>2]=0;a[m+4>>2]=0;u=kR(f,b,54,3)|0;a[m+8>>2]=u;B=kR(f,t,36,3)|0;a[m+12>>2]=B;t=1;b=0;d=0}}while(0);e=f+16|0;w=a[e>>2]|0;n=a[w+12>>2]|0;if(n){D=+s[n+24>>3];n=b-u+~~(D+(D>=0.0?.5:-.5))|0;if((n|0)>0){n=n>>>1;b=b-n|0;a[m>>2]=b;u=u+n|0;a[m+8>>2]=u;n=0}else n=0}else n=t;if(Z|(n|0)!=0){t=0;n=w}else{t=kR(A,a[47144]|0,8,0)|0;n=a[e>>2]|0}h=t-b|0;o=~~(+s[n+56>>3]+ +(t-d|0));a[m>>2]=0;a[m+4>>2]=0;w=h+t+u|0;a[m+8>>2]=w;e=~~(+s[n+88>>3]+ +(t+o|0)+ +(B|0));a[m+12>>2]=e;A:do{if(G){n=r;e:while(1){u=i+4|0;t=a[i>>2]|0;if(!t)break A;if(!n){b=0;i=h;n=o}else{b=n+8|0;i=(a[n>>2]|0)+h|0;n=(a[n+4>>2]|0)+o|0}c=+(i|0)*.013888888888888888;l=+(n|0)*.013888888888888888;i=cd(t)|0;while(1){if(!i){i=u;n=b;continue e}z=a[(a[i+16>>2]|0)+132>>2]|0;s[z>>3]=+s[z>>3]+c;z=z+8|0;s[z>>3]=+s[z>>3]+l;i=sd(t,i)|0}}}}while(0);z=a[(a[A+16>>2]|0)+140>>2]|0;W=z+8|0;a[W>>2]=0;a[W+4>>2]=0;a[W+8>>2]=0;a[W+12>>2]=0;s[z+24>>3]=+(w|0)*.013888888888888888;s[z+32>>3]=+(e|0)*.013888888888888888;k=Q;return}function Dx(A,e){A=A|0;e=e|0;var i=0,r=0;while(1){i=a[e>>2]|0;if(!i)break;Mx(i);Pd(i,137483)|0;e=e+4|0}e=a[a[(a[A+16>>2]|0)+140>>2]>>2]|0;if(e|0)L2(e);Mx(A);Pd(A,137483)|0;i=cd(A)|0;while(1){if(!i)break;r=sd(A,i)|0;e=Oo(A,i)|0;while(1){if(!e)break;L2(a[(a[e+16>>2]|0)+172>>2]|0);Pd(e,137460)|0;e=_o(A,e)|0}Fx(i);i=r}Bh(A)|0;return}function Mx(A){A=A|0;L2(a[(a[A+16>>2]|0)+140>>2]|0);return}function Fx(A){A=A|0;var e=0;e=A+16|0;L2(a[(a[e>>2]|0)+112>>2]|0);L2(a[(a[e>>2]|0)+132>>2]|0);Pd(A,137447)|0;return}function Vx(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0,n=0.0,l=0,t=0,c=0,b=0,u=0;c=A+16|0;b=a[a[(a[c>>2]|0)+112>>2]>>2]|0;u=qF((b*24|0)+24|0)|0;l=0;t=Ah(e,A)|0;while(1){if(!t)break;f=a[t>>2]&3;r=a[((f|0)==2?t:t+-48|0)+40>>2]|0;if((r|0)==(A|0))r=a[((f|0)==3?t:t+48|0)+40>>2]|0;r=a[(a[r+16>>2]|0)+132>>2]|0;f=a[(a[c>>2]|0)+132>>2]|0;n=+s[r>>3]-+s[f>>3];i=+s[r+8>>3]-+s[f+8>>3];a[u+(l*24|0)>>2]=t;s[u+(l*24|0)+8>>3]=+N(+i,+n);s[u+(l*24|0)+16>>3]=i*i+n*n;l=l+1|0;t=eh(e,t,A)|0}if((l|0)!=(b|0))gA(90775,90752,642,90784);K4(u,b,24,67);A:do{if((b|0)>1){t=b+-1|0;r=0;e:while(1){if((r|0)>=(t|0))break A;n=+s[u+(r*24|0)+8>>3];f=r+1|0;l=f;while(1){if((l|0)>=(b|0))break;if(!(+s[u+(l*24|0)+8>>3]==n))break;l=l+1|0}if((l|0)==(f|0)){r=f;continue}if((l|0)==(b|0))i=3.141592653589793;else i=+s[u+(l*24|0)+8>>3];i=(i-n)/+(l-r|0);i=i>.03490658503988659?.03490658503988659:i;n=0.0;while(1){if((r|0)>=(l|0))continue e;c=u+(r*24|0)+8|0;s[c>>3]=+s[c>>3]+n;n=n+i;r=r+1|0}}}}while(0);return u|0}function Jx(A,e,i,r,n){A=A|0;e=e|0;i=i|0;r=r|0;n=+n;var l=0,t=0,c=0,b=0.0,u=0,w=0,k=0,o=0.0,h=0;c=a[e>>2]|0;w=a[c+16>>2]|0;u=f[w+168>>1]|0;k=u<<16>>16;t=a[c>>2]&3;l=a[((t|0)==2?c:c+-48|0)+40>>2]|0;if((l|0)==(A|0))l=a[((t|0)==3?c:c+48|0)+40>>2]|0;o=+s[e+8>>3];n=(n-o)/+(u<<16>>16);n=n>.03490658503988659?.03490658503988659:n;u=l>>>0>A>>>0;b=u?n:-n;e=u?1:-1;c=0;l=a[w+172>>2]|0;t=u?r:r+-1+k|0;n=u?o:n*+(k+-1|0)+o;while(1){if((c|0)>=(k|0))break;w=a[l>>2]|0;a[i+(t<<4)>>2]=w;u=a[w>>2]&3;h=(u|0)==3?w:w+48|0;a[i+(t<<4)+4>>2]=a[((a[(a[(a[h+40>>2]|0)+16>>2]|0)+164>>2]|0)==(A|0)?h:(u|0)==2?w:w+-48|0)+40>>2];s[i+(t<<4)+8>>3]=n;c=c+1|0;l=l+4|0;t=t+e|0;n=n+b}return k+r|0}function px(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;i=+s[A+8>>3];r=+s[e+8>>3];if(!(i>r))if(!(i >3];i=+s[e+16>>3];if(r>i)A=1;else A=(r>31}else A=-1;else A=1;return A|0}function Nx(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=Yo(A,0,i,0)|0;do{if(r|0){A=Uo(A,r)|0;r=Yo(e,0,i,0)|0;if(!r){Yo(e,0,i,A)|0;break}else{Vo(e,r,A)|0;break}}}while(0);return}function Rx(A,e){A=A|0;e=e|0;var i=0,r=0;e=gd(A,e,1)|0;Td(e,137447,304,1)|0;r=qF(32)|0;i=e+16|0;a[(a[i>>2]|0)+112>>2]=r;A=$F((l[(a[A+16>>2]|0)+176>>1]|0)<<3)|0;a[(a[i>>2]|0)+132>>2]=A;return e|0}function Xx(A,e,i,f){A=A|0;e=e|0;i=i|0;f=f|0;var n=0.0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+80|0;u=h+56|0;b=h+32|0;o=h;w=h+64|0;l=a[i+4>>2]|0;c=Uo(A,l)|0;do{if(r[c>>0]|0){if((a[i>>2]|0)!=(A|0)){i=Uo(HB(A)|0,l)|0;if((i|0)==(c|0))break;if(!(A1(c,i)|0))break}r[w>>0]=0;i=o+8|0;l=o+16|0;t=o+24|0;a[b>>2]=o;a[b+4>>2]=i;a[b+8>>2]=l;a[b+12>>2]=t;a[b+16>>2]=w;if((J3(c,90937,b)|0)<=3){a[u>>2]=Vh(A)|0;a[u+4>>2]=c;ao(0,90955,u)|0;break}n=+s[23293];if(n>0.0){s[o>>3]=+s[o>>3]/n;s[i>>3]=+s[i>>3]/n;s[l>>3]=+s[l>>3]/n;s[t>>3]=+s[t>>3]/n}i=r[w>>0]|0;if(i<<24>>24==33)r[(a[e+16>>2]|0)+119>>0]=3;else r[(a[e+16>>2]|0)+119>>0]=i<<24>>24==63?2:1;a[f>>2]=a[o>>2];a[f+4>>2]=a[o+4>>2];a[f+8>>2]=a[o+8>>2];a[f+12>>2]=a[o+12>>2];a[f+16>>2]=a[o+16>>2];a[f+20>>2]=a[o+20>>2];a[f+24>>2]=a[o+24>>2];a[f+28>>2]=a[o+28>>2]}}while(0);k=h;return}function Hx(A,e){A=A|0;e=e|0;var i=0,r=0,n=0;n=A+16|0;r=a[n>>2]|0;A=f[r+168>>1]|0;r=a[r+172>>2]|0;if(!r){A=A<<16>>16;i=A;A=$F((A<<2)+4|0)|0}else{A=A<<16>>16;i=A;A=eV(r,(A<<2)+4|0)|0}a[A+(i<<2)>>2]=e;e=a[n>>2]|0;a[e+172>>2]=A;e=e+168|0;f[e>>1]=(f[e>>1]|0)+1<<16>>16;return}function Ux(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0;t=k;k=k+48|0;l=t+24|0;n=t;r=a[e>>2]|0;i=a[r>>2]&3;f=a[((i|0)==2?r:r+-48|0)+40>>2]|0;i=a[((i|0)==3?r:r+48|0)+40>>2]|0;e=P2(Vh(A)|0)|0;c=P2(Vh(f)|0)|0;c=(e+8+c+(P2(Vh(i)|0)|0)|0)>999;e=Vh(A)|0;if(c){i=Vh(i)|0;c=Vh(f)|0;l=(a[r>>2]|0)>>>4;a[n>>2]=e;a[n+4>>2]=i;a[n+8>>2]=c;c=n+16|0;a[c>>2]=l;a[c+4>>2]=0;S4(193772,90895,n)|0}else{i=a[(a[i+16>>2]|0)+120>>2]|0;c=a[(a[f+16>>2]|0)+120>>2]|0;n=(a[r>>2]|0)>>>4;a[l>>2]=e;a[l+4>>2]=i;a[l+8>>2]=c;c=l+16|0;a[c>>2]=n;a[c+4>>2]=0;S4(193772,90914,l)|0}k=t;return}function xx(A){A=A|0;var e=0,i=0,r=0.0,n=0.0,l=0,t=0,c=0;t=4;l=Q2(40)|0;a[l>>2]=0;n=+s[23293];d=0;r=+AA(1,A|0);e=d;d=0;if((e|0)!=0&(B|0)!=0){i=y6(a[e>>2]|0,l|0,t|0)|0;if(!i)fe(e|0,B|0);L=B}else i=-1;if((i|0)!=1){s[23293]=r;d=0;bA(102,A|0);e=d;d=0;if((e|0)!=0&(B|0)!=0){i=y6(a[e>>2]|0,l|0,t|0)|0;if(!i)fe(e|0,B|0);L=B}else i=-1;if((i|0)!=1){l=L6(187212,1,l|0,t|0)|0;t=L;d=0;i=d;d=0;if((i|0)!=0&(B|0)!=0){e=y6(a[i>>2]|0,l|0,t|0)|0;if(!e)fe(i|0,B|0);L=B}else e=-1;if((e|0)!=1)e=0;else e=L}else e=L}else e=L;while(1){if(e|0)break;d=0;bA(103,A|0);e=d;d=0;if((e|0)!=0&(B|0)!=0){i=y6(a[e>>2]|0,l|0,t|0)|0;if(!i)fe(e|0,B|0);L=B}else i=-1;if((i|0)==1){e=L;continue}d=0;iA(22,A|0)|0;e=d;d=0;if((e|0)!=0&(B|0)!=0){i=y6(a[e>>2]|0,l|0,t|0)|0;if(!i)fe(e|0,B|0);L=B}else i=-1;if((i|0)==1){e=L;continue}if(f[(a[A+16>>2]|0)+136>>1]&14){d=0;bA(104,A|0);e=d;d=0;if((e|0)!=0&(B|0)!=0){i=y6(a[e>>2]|0,l|0,t|0)|0;if(!i)fe(e|0,B|0);L=B}else i=-1;if((i|0)==1){e=L;continue}}d=0;uA(22,A|0,0);e=d;d=0;if((e|0)!=0&(B|0)!=0){i=y6(a[e>>2]|0,l|0,t|0)|0;if(!i)fe(e|0,B|0);L=B}else i=-1;if((i|0)==1)e=L;else{c=12;break}}if((c|0)==12)s[23293]=n;L2(l|0);return}function Tx(A){A=A|0;var e=0,i=0,r=0,n=0,l=0,t=0;t=k;k=k+16|0;n=t;i=A+16|0;r=f[(a[i>>2]|0)+136>>1]&14;e=r&65535;if((r&65535)>8){if(r<<16>>16==12){if(FH(A,22,10)|0){a[47134]=2;l=5}}else l=5;do{if((l|0)==5)if(!(f[(a[i>>2]|0)+136>>1]&1)){JH(A,e)|0;break}else{ao(0,90998,n)|0;e=2;break}}while(0);a[47134]=0}if((a[47138]|0)<1)JH(A,e)|0;k=t;return}function jx(A){A=A|0;var e=0.0,i=0.0,r=0;r=k;k=k+16|0;a[46474]=1;a[46475]=1;a[46477]=-1;a[46479]=50;s[23245]=0.0;s[23240]=0.0;s[23241]=1.0;a[46478]=kR(A,Yo(A,0,91061,0)|0,600,0)|0;i=+oR(A,Yo(A,0,91202,0)|0,.3,0.0);s[23242]=i;s[1371]=i;if(-1.0==-1.0)e=+oR(A,Yo(A,0,91069,0)|0,-1.0,0.0);else e=-1.0;s[23243]=e;a[46476]=1;A=eH(A,2,185904)|0;a[46488]=A;if(!A){ao(0,91072,r)|0;a[46476]=2}a[46504]=(U(a[46478]|0,a[46479]|0)|0)/100|0;i=+s[23242];s[23247]=i*i;if(a[46474]|0){e=+s[23245];if(e<=0.0){e=i*3.0;s[23245]=e}s[23246]=e*e}k=r;return}function Px(A,e){A=A|0;e=e|0;var i=0,r=0.0,f=0.0,n=0,l=0,t=0;t=k;k=k+16|0;i=t;n=a[a[(a[A+16>>2]|0)+140>>2]>>2]|0;l=Sx(A,e)|0;Ox(i,A,n);r=+s[i>>3];f=+s[i+8>>3];A:do{if(!(a[46474]|0)){e=0;while(1){if((e|0)>=(a[46505]|0))break A;qx(A,+Kx(e),n);e=e+1|0}}else{i=I_(gh(A)|0)|0;L_(i,gh(A)|0);e=0;while(1){if((e|0)>=(a[46505]|0))break;_x(A,+Kx(e),n,i);e=e+1|0}W_(i)}}while(0);A:do{if(r!=0.0|f!=0.0){e=cd(A)|0;while(1){if(!e)break A;n=a[(a[e+16>>2]|0)+132>>2]|0;s[n>>3]=+s[n>>3]+r;n=n+8|0;s[n>>3]=+s[n>>3]+f;e=sd(A,e)|0}}}while(0);if(l|0)$x();k=t;return}function Sx(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0,n=0,l=0,t=0;if(+s[23243]==-1.0){l=gh(A)|0;i=+s[23242];s[23243]=+s[23241]*.2*i*+z(+ +(l|0));l=1}else{l=0;i=+s[23242]}n=a[46504]|0;s[e+8>>3]=+Kx(n);s[e+16>>3]=i;s[e+24>>3]=+s[23240];r=a[46478]|0;A=r-n|0;a[e>>2]=A;f=a[46477]|0;do{if((f|0)>-1){if((f|0)<=(n|0)){a[46505]=f;A=0;t=10;break}if((f|0)<=(r|0)){a[46505]=n;A=f-n|0;t=10}}else{a[46505]=n;t=10}}while(0);if((t|0)==10)a[e+32>>2]=A;return l|0}function Ox(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0.0,t=0.0,c=0,b=0.0,u=0.0,w=0,k=0.0,o=0.0,h=0,d=0,B=0.0,g=0.0,v=0,E=0,C=0.0,I=0,Z=0,G=0;E=gh(e)|0;I=a[(a[(a[e+16>>2]|0)+140>>2]|0)+4>>2]|0;v=cd(e)|0;h=0;d=0;n=0;c=0;w=0;while(1){if(!v)break;f=a[v+16>>2]|0;if(!(r[f+119>>0]|0))f=d;else{f=a[f+132>>2]|0;l=+s[f>>3];if(!h){c=~~l;n=~~+s[f+8>>3];w=n;f=c}else{o=+(d|0);B=+s[f+8>>3];g=+(n|0);C=+(c|0);k=+(w|0);w=~~(B>k?B:k);f=~~(l C?l:C)}h=h+1|0}v=sd(e,v)|0;d=f}l=+s[23242]*(+z(+ +(E-I|0))+1.0);B=l*.6;s[23249]=B;s[23248]=B;if((h|0)!=1)if((h|0)>1){g=+(c+d|0)*.5;C=+(w+n|0)*.5;k=+(c-d|0);o=k*1.2;b=+(w-n|0);u=b*1.2;l=l*2.4*B;t=u*o/l;do{if(!(t>=1.0)){if(t>0.0){l=+z(+t)*2.0;t=o/l;s[23248]=t;l=u/l;G=20;break}if(o>0.0){t=k*.6;s[23248]=t;l=l/o*.5;G=20;break}if(u>0.0){t=l/u*.5;s[23248]=t;l=b*.6;G=20}else{l=B;t=B}}else{t=k*.6;s[23248]=t;l=b*.6;G=20}}while(0);if((G|0)==20)s[23249]=l;B=+N(+l,+t);t=t/+D(+B);s[23248]=t;l=l/+M(+B);s[23249]=l}else{g=0.0;C=0.0;t=B;l=B}else{g=+(d|0);C=+(n|0);t=B;l=B}s[23250]=t*t;s[23251]=l*l;if((a[46488]|0)==2)f=a[46476]|0;else{f=z3()|0;f=(ne(0)|0)^f}l8(f);A:do{if(!i){i=cd(e)|0;if(!h)while(1){if(!i)break A;B=+s[23248];B=(+c8()*2.0+-1.0)*B;G=i+16|0;s[a[(a[G>>2]|0)+132>>2]>>3]=B;B=+s[23249];B=(+c8()*2.0+-1.0)*B;s[(a[(a[G>>2]|0)+132>>2]|0)+8>>3]=B;i=sd(e,i)|0}while(1){if(!i)break A;f=i+16|0;n=a[f>>2]|0;if(!(r[n+119>>0]|0)){B=+s[23248];B=(+c8()*2.0+-1.0)*B;s[a[(a[f>>2]|0)+132>>2]>>3]=B;B=+s[23249];B=(+c8()*2.0+-1.0)*B;s[(a[(a[f>>2]|0)+132>>2]|0)+8>>3]=B}else{G=a[n+132>>2]|0;s[G>>3]=+s[G>>3]-g;G=G+8|0;s[G>>3]=+s[G>>3]-C}i=sd(e,i)|0}}else{while(1){if(!(a[i>>2]|0))break;v=i+8|0;B=+D(+ +s[v>>3])*+s[23248]+g;I=a[(a[i+4>>2]|0)+16>>2]|0;E=a[I+132>>2]|0;s[E>>3]=B;s[E+8>>3]=+M(+ +s[v>>3])*+s[23249]+C;r[I+119>>0]=1;i=i+16|0}b=g*.1;u=C*.1;d=cd(e)|0;while(1){if(!d)break A;h=d+16|0;i=a[h>>2]|0;if(!((a[(a[i+112>>2]|0)+8>>2]|0)==0?!(a[i+212>>2]|0):0))G=32;do{if((G|0)==32){G=0;if(r[i+119>>0]|0){I=a[i+132>>2]|0;s[I>>3]=+s[I>>3]-g;I=I+8|0;s[I>>3]=+s[I>>3]-C;break}w=Ah(e,d)|0;i=0;t=0.0;l=0.0;while(1){if(!w)break;c=a[w>>2]&3;f=(c|0)==2?w:w+-48|0;n=a[f+40>>2]|0;c=(c|0)==3?w:w+48|0;do{if((n|0)!=(a[c+40>>2]|0)?(Z=a[(a[((n|0)==(d|0)?c:f)+40>>2]|0)+16>>2]|0,(r[Z+119>>0]|0)!=0):0)if(!i){I=a[Z+132>>2]|0;i=1;t=+s[I>>3];l=+s[I+8>>3];break}else{o=+(i|0);I=a[Z+132>>2]|0;i=i+1|0;B=+(i|0);t=(+s[I>>3]+t*o)/B;l=(+s[I+8>>3]+l*o)/B;break}}while(0);w=eh(e,w,d)|0}do{if((i|0)<=1)if((i|0)==1){f=a[h>>2]|0;i=a[f+132>>2]|0;s[i>>3]=t*.98+b;l=l*.9+u;break}else{l=+c8()*6.283185307179586;B=+c8()*.9;o=B*+s[23248]*+D(+l);f=a[h>>2]|0;i=a[f+132>>2]|0;s[i>>3]=o;l=+s[23249]*B*+M(+l);break}else{f=a[h>>2]|0;i=a[f+132>>2]|0;s[i>>3]=t}}while(0);s[i+8>>3]=l;r[f+119>>0]=1}}while(0);d=sd(e,d)|0}}}while(0);s[A>>3]=g;s[A+8>>3]=C;return}function Kx(A){A=A|0;var e=0;e=a[46478]|0;return+(+s[23243]*+(e-A|0)/+(e|0))}function _x(A,e,i,r){A=A|0;e=+e;i=i|0;r=r|0;var f=0,n=0,l=0,t=0.0;if(!(e<=0.0)){y_(r);f=cd(A)|0;while(1){if(!f)break;l=a[f+16>>2]|0;n=(a[l+112>>2]|0)+16|0;a[n>>2]=0;a[n+4>>2]=0;a[n+8>>2]=0;a[n+12>>2]=0;l=a[l+132>>2]|0;t=+s[23245];n=~~+y(+(+s[l>>3]/t));Y_(r,n,~~+y(+(+s[l+8>>3]/t)),f);f=sd(A,f)|0}n=cd(A)|0;while(1){if(!n)break;f=Oo(A,n)|0;while(1){if(!f)break;l=a[((a[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0;if((n|0)!=(l|0))eT(n,l,f);f=_o(A,f)|0}n=sd(A,n)|0}M_(r,23);iT(A,e,i)}return}function qx(A,e,i){A=A|0;e=+e;i=i|0;var r=0,f=0,n=0;if(!(e<=0.0)){r=cd(A)|0;while(1){if(!r)break;n=(a[(a[r+16>>2]|0)+112>>2]|0)+16|0;a[n>>2]=0;a[n+4>>2]=0;a[n+8>>2]=0;a[n+12>>2]=0;r=sd(A,r)|0}n=cd(A)|0;while(1){if(!n)break;else r=n;while(1){r=sd(A,r)|0;if(!r)break;AT(n,r)}r=Oo(A,n)|0;while(1){if(!r)break;f=a[((a[r>>2]&3|0)==2?r:r+-48|0)+40>>2]|0;if((n|0)!=(f|0))eT(n,f,r);r=_o(A,r)|0}n=sd(A,n)|0}iT(A,e,i)}return}function $x(){s[23243]=-1.0;return}function AT(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0,n=0;n=a[(a[e+16>>2]|0)+132>>2]|0;f=a[(a[A+16>>2]|0)+132>>2]|0;i=+s[n>>3]-+s[f>>3];r=+s[n+8>>3]-+s[f+8>>3];rT(A,e,i,r,r*r+i*i);return}function eT(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,n=0.0,l=0.0,t=0,c=0;t=e+16|0;c=a[(a[t>>2]|0)+132>>2]|0;A=A+16|0;e=a[(a[A>>2]|0)+132>>2]|0;r=+s[c>>3]-+s[e>>3];f=+s[c+8>>3]-+s[e+8>>3];n=r;l=f;r=r*r;f=f*f;while(1){r=r+f;if(!(r==0.0))break;r=+(5-((a8()|0)%10|0)|0);f=+(5-((a8()|0)%10|0)|0);n=r;l=f;r=r*r;f=f*f}f=+z(+r);e=a[i+16>>2]|0;r=+s[e+128>>3];if(!(a[46475]|0))r=r*f/+s[e+136>>3];else r=(f-+s[e+136>>3])*r/f;n=r*n;c=a[(a[t>>2]|0)+112>>2]|0;t=c+16|0;s[t>>3]=+s[t>>3]-n;l=r*l;c=c+24|0;s[c>>3]=+s[c>>3]-l;c=a[(a[A>>2]|0)+112>>2]|0;t=c+16|0;s[t>>3]=+s[t>>3]+n;c=c+24|0;s[c>>3]=+s[c>>3]+l;return}function iT(A,e,i){A=A|0;e=+e;i=i|0;var f=0.0,n=0.0,l=0.0,t=0.0,c=0,b=0,u=0,w=0,k=0.0;k=e*e;w=(i|0)==0;u=cd(A)|0;while(1){if(!u)break;b=a[u+16>>2]|0;if(!(r[b+119>>0]&2)){c=a[b+112>>2]|0;f=+s[c+16>>3];l=+s[c+24>>3];n=l*l+f*f;if(n >2]|0;t=+s[i>>3]+f;f=+s[i+8>>3]+l}else{n=e/+z(+n);i=a[b+132>>2]|0;t=+s[i>>3]+n*f;f=+s[i+8>>3]+n*l}do{if(!w){n=+z(+(f*f/+s[23251]+t*t/+s[23250]));if((a[c+8>>2]|0)==0?(a[b+212>>2]|0)==0:0){s[i>>3]=t/n;f=f/n;break}if(!(n>=1.0)){s[i>>3]=t;break}else{s[i>>3]=t*.95/n;f=f*.95/n;break}}else s[i>>3]=t}while(0);s[i+8>>3]=f}u=sd(A,u)|0}return}function rT(A,e,i,r,f){A=A|0;e=e|0;i=+i;r=+r;f=+f;var n=0.0,l=0,t=0;n=i;i=f;while(1){if(!(i==0.0))break;i=+(5-((a8()|0)%10|0)|0);r=+(5-((a8()|0)%10|0)|0);n=i;i=r*r+i*i}if(!(a[46475]|0))i=+s[23247]/i;else{f=+z(+i);i=+s[23247]/(f*i)}t=a[A+16>>2]|0;A=a[t+112>>2]|0;if(((a[A+8>>2]|0)==0?(a[t+212>>2]|0)==0:0)?(l=a[e+16>>2]|0,(a[(a[l+112>>2]|0)+8>>2]|0)==0):0)i=(a[l+212>>2]|0)==0?i*10.0:i;f=i*n;t=a[(a[e+16>>2]|0)+112>>2]|0;e=t+16|0;s[e>>3]=+s[e>>3]+f;n=i*r;t=t+24|0;s[t>>3]=+s[t>>3]+n;t=A+16|0;s[t>>3]=+s[t>>3]-f;t=A+24|0;s[t>>3]=+s[t>>3]-n;return}function fT(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0;f=a[e+8>>2]|0;n=a[e>>2]|0;r=a[e+4>>2]|0;e=f;while(1){if(!e)break;A=f;while(1){if(!A)break;if((e|0)!=(A|0))AT(a[e>>2]|0,a[A>>2]|0);A=a[A+4>>2]|0}e=a[e+4>>2]|0}l=n+-1|0;A=r+-1|0;aT(i,l,A,f);aT(i,l,r,f);e=r+1|0;aT(i,l,e,f);aT(i,n,A,f);aT(i,n,e,f);n=n+1|0;aT(i,n,A,f);aT(i,n,r,f);aT(i,n,e,f);return 0}function aT(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,n=0.0,l=0.0,t=0,c=0,b=0,u=0;A=F_(A,e,i)|0;if((r|0)!=0&(A|0)!=0){c=A+8|0;do{i=a[r>>2]|0;t=i+16|0;A=c;while(1){A=a[A>>2]|0;if(!A)break;e=a[A>>2]|0;u=a[(a[e+16>>2]|0)+132>>2]|0;b=a[(a[t>>2]|0)+132>>2]|0;f=+s[u>>3]-+s[b>>3];n=+s[u+8>>3]-+s[b+8>>3];l=n*n+f*f;if(l<+s[23246])rT(i,e,f,n,l);A=A+4|0}r=a[r+4>>2]|0}while((r|0)!=0)}return}function nT(A,e){A=A|0;e=e|0;var i=0,f=0,a=0,n=0,l=0;n=k;k=k+16|0;a=n;i=Ho(A,92507)|0;if(0){}if(!((i|0)!=0?(r[i>>0]|0)!=0:0))i=91125;f=G1(i,58)|0;do{if(!f)f=0;else{if((f|0)!=(i|0)?((r[i>>0]|0)+-48|0)>>>0>=10:0){f=0;break}l=q3(i)|0;i=f+1|0;f=(l|0)>0?l:0}}while(0);if(0){}if(!((f|0)!=0?!(lT(A,e,f)|0):0))AP(A,i)|0;k=n;return}function lT(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,b=0.0,u=0.0,w=0.0,o=0.0,h=0.0,d=0,B=0,g=0;g=k;k=k+64|0;d=g;l=g+40|0;B=gh(A)|0;t=vh(A)|0;qj(l,A);a[46842]=a[l>>2];a[46843]=a[l+4>>2];a[46844]=a[l+8>>2];if(r[187376]|0){c[46842]=+c[46842]*.013888888888888888;c[46843]=+c[46843]*.013888888888888888}f=tT(A)|0;A:do{if(!f)f=0;else{l=d;n=l+40|0;do{a[l>>2]=a[e>>2];l=l+4|0;e=e+4|0}while((l|0)<(n|0));l=d+16|0;h=+s[l>>3];w=+(t|0)*2.0;o=1.0/+(U(B+-1|0,B)|0);n=0;u=h;while(1){if(!((f|0)!=0&(n|0)<(i|0)))break A;cT(B,d);b=+s[23253]*+s[170];s[23254]=b;s[23255]=w*b*o;e=0;while(1){if((e|0)>=(a[46512]|0))break;b=+sT(e);if(b<=0.0)break;f=bT(A,b)|0;if(!f){f=0;break}else e=e+1|0}b=u+h;s[l>>3]=b;n=n+1|0;u=b}}}while(0);k=g;return f|0}function tT(A){A=A|0;var e=0,i=0,r=0,f=0;e=0;f=cd(A)|0;while(1){if(!f)break;else r=f;while(1){i=sd(A,r)|0;if(!i)break;r=i;e=(kT(f,i)|0)+e|0}f=sd(A,f)|0}return e|0}function cT(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0.0;r=+s[e+16>>3];s[171]=r;a[344]=a[e>>2];f=+s[e+8>>3];s[23257]=f;a[46512]=a[e+32>>2];i=+s[e+24>>3];if(i>0.0)s[170]=i;s[23253]=r*r;if(f==0.0)s[23257]=+z(+ +(A|0))*.2*r;return}function sT(A){A=A|0;var e=0;e=a[344]|0;return+(+s[23257]*+(e-A|0)/+(e|0))}function bT(A,e){A=A|0;e=+e;var i=0,f=0,n=0,l=0.0,t=0,c=0.0,b=0.0,u=0.0;i=cd(A)|0;while(1){if(!i)break;t=(a[(a[i+16>>2]|0)+112>>2]|0)+16|0;a[t>>2]=0;a[t+4>>2]=0;a[t+8>>2]=0;a[t+12>>2]=0;i=sd(A,i)|0}i=0;t=cd(A)|0;while(1){if(!t)break;else n=t;while(1){f=sd(A,n)|0;if(!f)break;n=f;i=(uT(t,f)|0)+i|0}f=Oo(A,t)|0;while(1){if(!f)break;wT(t,a[((a[f>>2]&3|0)==2?f:f+-48|0)+40>>2]|0);f=_o(A,f)|0}t=sd(A,t)|0}A:do{if(!i)i=0;else{u=e*e;n=cd(A)|0;while(1){if(!n)break A;f=a[n+16>>2]|0;if((r[f+119>>0]|0)!=3){t=a[f+112>>2]|0;c=+s[t+16>>3];l=+s[t+24>>3];b=l*l+c*c;if(b>2]|0;s[f>>3]=+s[f>>3]+c}else{b=+z(+b);f=a[f+132>>2]|0;s[f>>3]=+s[f>>3]+c*e/b;l=l*e/b}t=f+8|0;s[t>>3]=+s[t>>3]+l}n=sd(A,n)|0}}}while(0);return i|0}function uT(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0,n=0;n=a[(a[e+16>>2]|0)+132>>2]|0;f=a[(a[A+16>>2]|0)+132>>2]|0;i=+s[n>>3]-+s[f>>3];r=+s[n+8>>3]-+s[f+8>>3];return hT(A,e,i,r,r*r+i*i)|0}function wT(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0,n=0.0,l=0,t=0.0,c=0.0,b=0,u=0;if(!(kT(A,e)|0)){l=a[e+16>>2]|0;u=a[l+132>>2]|0;f=a[A+16>>2]|0;b=a[f+132>>2]|0;r=+s[u>>3]-+s[b>>3];i=+s[u+8>>3]-+s[b+8>>3];n=+z(+(i*i+r*r));t=+oT(A);t=+oT(e)+t;c=n-t;n=c*c/((+s[171]+t)*n);r=n*r;e=a[l+112>>2]|0;A=e+16|0;s[A>>3]=+s[A>>3]-r;i=n*i;e=e+24|0;s[e>>3]=+s[e>>3]-i;e=a[f+112>>2]|0;A=e+16|0;s[A>>3]=+s[A>>3]+r;e=e+24|0;s[e>>3]=+s[e>>3]+i}return}function kT(A,e){A=A|0;e=e|0;var i=0.0,f=0.0,n=0.0,l=0.0,t=0,b=0;t=a[e+16>>2]|0;b=a[t+132>>2]|0;e=a[A+16>>2]|0;A=a[e+132>>2]|0;n=+s[b>>3]-+s[A>>3];l=+s[b+8>>3]-+s[A+8>>3];l=l<0.0?-l:l;A=(r[187376]|0)==0;i=+s[e+32>>3];if(A){f=+c[46842];i=i*.5*f;f=+s[t+32>>3]*.5*f}else{f=+c[46842];i=i*.5+f;f=+s[t+32>>3]*.5+f}if(!((n<0.0?-n:n)<=f+i))e=0;else{i=+s[e+40>>3];if(A){n=+c[46843];f=i*.5*n;i=+s[t+40>>3]*.5*n}else{n=+c[46843];f=i*.5+n;i=+s[t+40>>3]*.5+n}e=l<=i+f&1}return e|0}function oT(A){A=A|0;var e=0.0,i=0.0;A=a[A+16>>2]|0;e=+s[A+32>>3];if(!(r[187376]|0)){i=e*.5*+c[46842];e=+s[A+40>>3]*.5*+c[46843]}else{i=e*.5+ +c[46842];e=+s[A+40>>3]*.5+ +c[46843]}return+ +z(+(e*e+i*i))}function hT(A,e,i,r,f){A=A|0;e=e|0;i=+i;r=+r;f=+f;var n=0,l=0;while(1){if(!(f==0.0))break;f=+(5-((a8()|0)%10|0)|0);r=+(5-((a8()|0)%10|0)|0);i=f;f=r*r+f*f}n=kT(A,e)|0;f=((n|0)==0?+s[23255]:+s[23254])/f;i=f*i;e=a[(a[e+16>>2]|0)+112>>2]|0;l=e+16|0;s[l>>3]=+s[l>>3]+i;f=f*r;e=e+24|0;s[e>>3]=+s[e>>3]+f;e=a[(a[A+16>>2]|0)+112>>2]|0;A=e+16|0;s[A>>3]=+s[A>>3]-i;e=e+24|0;s[e>>3]=+s[e>>3]-f;return n|0}function dT(A){A=A|0;zX(A,2);f[(a[A+16>>2]|0)+176>>1]=2;a[47137]=2;BT(A);return}function BT(A){A=A|0;var e=0,i=0,r=0,f=0;r=qF((gh(A)|0)<<2)|0;e=qF(((gh(A)|0)<<2)+4|0)|0;f=A+16|0;a[(a[f>>2]|0)+152>>2]=e;e=cd(A)|0;i=0;while(1){if(!e)break;RX(e);a[(a[e+16>>2]|0)+112>>2]=r+(i<<2);a[(a[(a[f>>2]|0)+152>>2]|0)+(i<<2)>>2]=e;e=sd(A,e)|0;i=i+1|0}i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;gT(e);e=_o(A,e)|0}i=sd(A,i)|0}return}function gT(A){A=A|0;var e=0.0;Td(A,137460,176,1)|0;VR(A)|0;e=+oR(A,a[47174]|0,1.0,0.0);s[(a[A+16>>2]|0)+128>>3]=e;return}function vT(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0;u=k;k=k+16|0;b=u+4|0;s=u;r[b>>0]=r[18596]|0;r[b+1>>0]=r[18597]|0;r[b+2>>0]=r[18598]|0;r[b+3>>0]=r[18599]|0;b=kh(91156,b,0)|0;Td(b,91164,280,1)|0;a[(a[A+16>>2]|0)+140>>2]=b;i=cd(A)|0;while(1){if(!i)break;f=i+16|0;if(!(a[a[(a[f>>2]|0)+112>>2]>>2]|0)){c=ET(b,Vh(i)|0,i)|0;a[a[(a[f>>2]|0)+112>>2]>>2]=c}i=sd(A,i)|0}f=cd(A)|0;while(1){if(!f)break;i=Oo(A,f)|0;while(1){if(!i)break;l=a[i>>2]&3;n=a[a[(a[(a[((l|0)==3?i:i+48|0)+40>>2]|0)+16>>2]|0)+112>>2]>>2]|0;l=a[a[(a[(a[((l|0)==2?i:i+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]>>2]|0;if((n|0)!=(l|0))Td(th(b,n,l,0,1)|0,137460,176,1)|0;i=_o(A,i)|0}f=sd(A,f)|0}c=yE(b,s,0)|0;f=0;while(1){if((f|0)>=(a[s>>2]|0))break;l=a[c+(f<<2)>>2]|0;i=cd(l)|0;while(1){if(!i)break;n=Oo(A,a[a[(a[i+16>>2]|0)+112>>2]>>2]|0)|0;while(1){if(!n)break;t=a[a[(a[(a[((a[n>>2]&3|0)==2?n:n+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]>>2]|0;if((i|0)!=(t|0)){t=th(b,i,t,0,1)|0;Td(t,137460,176,1)|0;uh(l,t,1)|0}n=_o(A,n)|0}i=sd(l,i)|0}f=f+1|0}i=cd(b)|0;while(1){if(!i)break;f=Oo(b,i)|0;while(1){if(!f)break;A=qF(8)|0;a[(a[f+16>>2]|0)+120>>2]=A;f=_o(b,f)|0}i=sd(b,i)|0}a[e>>2]=a[s>>2];k=u;return c|0}function ET(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;e=gd(A,e,1)|0;Td(e,137447,304,1)|0;r=qF(40)|0;A=e+16|0;a[(a[A>>2]|0)+112>>2]=r;r=qF(a[47137]<<3)|0;A=a[A>>2]|0;a[A+132>>2]=r;r=a[i+16>>2]|0;s[A+88>>3]=+s[r+88>>3];s[A+96>>3]=+s[r+96>>3];s[A+80>>3]=+s[r+80>>3];a[a[A+112>>2]>>2]=i;return e|0}function CT(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0;l=k;k=k+48|0;e=l+32|0;r=l;if(gh(A)|0){n=vT(A,e)|0;f=a[e>>2]|0;e=a[n>>2]|0;if((f|0)==1){Au(e,A);IT(a[n>>2]|0);eP(A)|0}else{i=a[e+60>>2]|0;sC(A,2,8,r)|0;e=0;while(1){if((e|0)>=(f|0))break;t=a[n+(e<<2)>>2]|0;Au(t,A);eP(t)|0;e=e+1|0}cC(f,n,i,r)|0;e=0;while(1){if((e|0)>=(f|0))break;IT(a[n+(e<<2)>>2]|0);e=e+1|0}}L2(n)}k=l;return}function IT(A){A=A|0;var e=0,i=0,r=0;e=cd(A)|0;while(1){if(!e)break;i=a[e+16>>2]|0;r=a[i+132>>2]|0;i=a[(a[(a[a[i+112>>2]>>2]|0)+16>>2]|0)+132>>2]|0;s[i>>3]=+s[r>>3];s[i+8>>3]=+s[r+8>>3];e=sd(A,e)|0}return}function ZT(A){A=A|0;if(gh(A)|0){dT(A);CT(A);L2(a[(a[(cd(A)|0)+16>>2]|0)+112>>2]|0);SH(A);VJ(A)}return}function GT(A){A=A|0;var e=0,i=0,r=0;e=cd(A)|0;if(e|0){r=A+16|0;mT(a[(a[r>>2]|0)+140>>2]|0);while(1){if(!e)break;i=Oo(A,e)|0;while(1){if(!i)break;wX(i);i=_o(A,i)|0}bX(e);e=sd(A,e)|0}L2(a[(a[r>>2]|0)+152>>2]|0);if((Zd(A)|0)!=(A|0))_d(A,0,137483)}return}function mT(A){A=A|0;var e=0,i=0;i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;L2(a[(a[e+16>>2]|0)+120>>2]|0);e=_o(A,e)|0}e=i+16|0;L2(a[(a[e>>2]|0)+112>>2]|0);L2(a[(a[e>>2]|0)+132>>2]|0);i=sd(A,i)|0}Bh(A)|0;return}function QT(A){A=A|0;var e=0,i=0.0,f=0.0,n=0,l=0,t=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0;B=k;k=k+112|0;b=B+40|0;u=B+16|0;d=B+100|0;w=B;l=B+88|0;o=B+56|0;LT(A);n=(a[47137]|0)==2;e=n&1;if(gh(A)|0){h=JT()|0;yT(A,h);mj(A,u,0)|0;if(n&(a[u>>2]|0)==18){a[h+124>>2]=a[u+8>>2];s[h+144>>3]=+s[u+16>>3];qj(l,A);if(!(r[l+8>>0]|0)){f=.05555555555555555;i=.05555555555555555}else{f=+c[l+4>>2]*.013888888888888888;i=+c[l>>2]*.013888888888888888}s[w>>3]=i;s[w+8>>3]=f;e=0}else a[h+124>>2]=-1;if(0){}t=yE(A,d,0)|0;if((a[d>>2]|0)==1){a[b>>2]=a[w>>2];a[b+4>>2]=a[w+4>>2];a[b+8>>2]=a[w+8>>2];a[b+12>>2]=a[w+12>>2];WT(A,h,b);if(e|0)yj(A,u)|0;SH(A);e=0}else{sC(A,2,8,o)|0;a[o+12>>2]=1;l=(e|0)==0;n=0;while(1){e=a[d>>2]|0;if((n|0)>=(e|0))break;e=a[t+(n<<2)>>2]|0;VE(e)|0;a[b>>2]=a[w>>2];a[b+4>>2]=a[w+4>>2];a[b+8>>2]=a[w+8>>2];a[b+12>>2]=a[w+12>>2];WT(e,h,b);if(!l)yj(e,u)|0;zX(e,2);SH(e);n=n+1|0}cC(e,t,A,o)|0;e=0}while(1){if((e|0)>=(a[d>>2]|0))break;Cd(A,a[t+(e<<2)>>2]|0)|0;e=e+1|0}L2(t);pT(h)}VJ(A);k=B;return}function LT(A){A=A|0;var e=0,i=0;zX(A,2);e=kR(A,Yo(A,0,91368,0)|0,2,2)|0;i=(kR(A,Yo(A,0,91374,0)|0,e,2)|0)&65535;f[(a[(Zd(A)|0)+16>>2]|0)+176>>1]=i;if((l[(a[(Zd(A)|0)+16>>2]|0)+176>>1]|0)<10)i=f[(a[(Zd(A)|0)+16>>2]|0)+176>>1]|0;else i=10;f[(a[(Zd(A)|0)+16>>2]|0)+176>>1]=i;i=i&65535;a[47137]=i;f[(a[(Zd(A)|0)+16>>2]|0)+178>>1]=(e|0)<(i|0)?e:i;MT(A);return}function yT(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;n=k;k=k+16|0;f=n+8|0;i=n+12|0;r=e+108|0;a[i>>2]=a[r>>2];if((eH(A,2,i)|0)!=2)ao(0,91169,n)|0;a[r>>2]=a[i>>2];s[e+24>>3]=+oR(A,Yo(A,0,91202,0)|0,-1.0,0.0);s[e>>3]=-+oR(A,Yo(A,0,91204,0)|0,1.0001234,0.0);a[e+40>>2]=kR(A,Yo(A,0,91219,0)|0,2147483647,0)|0;a[e+120>>2]=YT(A,Yo(A,0,91226,0)|0)|0;a[e+132>>2]=DT(A,Yo(A,0,91236,0)|0)|0;a[e+136>>2]=0;a[e+112>>2]=(ER(Ho(A,91245)|0,0)|0)&255;a[e+128>>2]=(ER(Ho(A,91254)|0,1)|0)&255;s[e+152>>3]=+oR(A,Yo(A,0,91269,0)|0,0.0,-1797693134862315708145274.0e284);i=kR(A,Yo(A,0,91278,0)|0,0,0)|0;A=e+160|0;a[A>>2]=i;if((i|0)>4){a[f>>2]=i;ao(0,91291,f)|0;a[A>>2]=0}k=n;return}function WT(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+48|0;f=h;u=h+32|0;t=h+28|0;n=h+24|0;o=h+20|0;w=h+16|0;a[n>>2]=0;a[o>>2]=0;a[w>>2]=0;l=e+136|0;r=a[47137]|0;if((a[l>>2]|0)==1)b=Ij(A,r,w)|0;else b=Ij(A,r,0)|0;do{if((a[e+124>>2]|0)>-1)if((a[e+160>>2]|0)>0){a[f>>2]=a[i>>2];a[f+4>>2]=a[i+4>>2];a[f+8>>2]=a[i+8>>2];a[f+12>>2]=a[i+12>>2];c=Cj(A,f,n,o)|0;break}else{a[f>>2]=a[i>>2];a[f+4>>2]=a[i+4>>2];a[f+8>>2]=a[i+8>>2];a[f+12>>2]=a[i+12>>2];c=Cj(A,f,0,0)|0;break}else c=0}while(0);r=zT(A)|0;a[u>>2]=r;switch(a[l>>2]|0){case 1:case 0:{cj(a[47137]|0,b,a[w>>2]|0,e,0,c,r,a[n>>2]|0,a[o>>2]|0,t);break}case 5:{Ej(a[47137]|0,b,r,t);break}case 4:{r=a[w>>2]|0;if(!r)r=Xb(b)|0;else r=wq(r,0)|0;a[w>>2]=r;hj(a[47137]|0,b,r,u,1,200,.001,t);break}default:{}}r=cd(A)|0;while(1){if(!r)break;i=a[47137]|0;n=a[r+16>>2]|0;e=(a[u>>2]|0)+((U(a[n+120>>2]|0,i)|0)<<3)|0;n=n+132|0;f=0;while(1){if((f|0)>=(i|0))break;s[(a[n>>2]|0)+(f<<3)>>3]=+s[e+(f<<3)>>3];f=f+1|0}r=sd(A,r)|0}L2(c);L2(a[u>>2]|0);rq(b);r=a[w>>2]|0;if(r|0)rq(r);r=a[o>>2]|0;if(r|0)L2(r);k=h;return}function zT(A){A=A|0;var e=0,i=0,f=0,n=0,l=0,t=0;t=a[47137]|0;t=qF(U(t<<3,gh(A)|0)|0)|0;A:do{if(Yo(A,1,102623,0)|0){f=cd(A)|0;while(1){if(!f)break A;e=a[f+16>>2]|0;e:do{if(r[e+119>>0]|0){n=a[47137]|0;l=U(n,a[e+120>>2]|0)|0;i=e+132|0;e=0;while(1){if((e|0)>=(n|0))break e;s[t+(l+e<<3)>>3]=+s[(a[i>>2]|0)+(e<<3)>>3];e=e+1|0}}}while(0);f=sd(A,f)|0}}}while(0);return t|0}function YT(A,e){A=A|0;e=e|0;do{if(e){A=Uo(A,e)|0;e=r[A>>0]|0;if((e+-48|0)>>>0<10){A=q3(A)|0;A=(A|0)<5?A:0;break}if(J1(e)|0)if(p1(A,91330)|0)if(p1(A,91339)|0)if(p1(A,135709)|0)if(!(p1(A,91350)|0))A=3;else{A=(p1(A,91361)|0)==0;A=A?4:0}else A=0;else A=1;else A=2;else A=0}else A=0}while(0);return A|0}function DT(A,e){A=A|0;e=e|0;do{if(e){A=Uo(A,e)|0;e=r[A>>0]|0;if((e+-48|0)>>>0<10){A=q3(A)|0;A=A>>>0<3?A:1;break}if(J1(e)|0)if((p1(A,135709)|0)!=0?(p1(A,137308)|0)!=0:0)if(((p1(A,99730)|0)!=0?(p1(A,107652)|0)!=0:0)?(p1(A,107657)|0)!=0:0){A=(p1(A,91325)|0)==0;A=A?2:1}else A=1;else A=0;else A=1}else A=1}while(0);return A|0}function MT(A){A=A|0;var e=0,i=0;e=cd(A)|0;while(1){if(!e)break;RX(e);e=sd(A,e)|0}i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;FT(e);e=_o(A,e)|0}i=sd(A,i)|0}return}function FT(A){A=A|0;Td(A,137460,176,1)|0;VR(A)|0;return}function VT(A){A=A|0;var e=0,i=0;i=cd(A)|0;while(1){if(!i)break;e=Oo(A,i)|0;while(1){if(!e)break;wX(e);e=_o(A,e)|0}bX(i);i=sd(A,i)|0}return}function JT(){var A=0,e=0;A=$F(168)|0;s[A>>3]=-1.0001234;s[A+8>>3]=1.0;a[A+16>>2]=1;s[A+24>>3]=-1.0;s[A+32>>3]=.2;a[A+40>>2]=0;a[A+44>>2]=4;a[A+48>>2]=1;a[A+52>>2]=45;a[A+56>>2]=10;s[A+64>>3]=.6;s[A+72>>3]=.001;a[A+80>>2]=500;s[A+88>>3]=.9;s[A+96>>3]=.1;a[A+104>>2]=1;a[A+108>>2]=123;e=A+112|0;a[e>>2]=0;a[e+4>>2]=0;a[e+8>>2]=0;a[e+12>>2]=0;a[A+128>>2]=1;a[A+132>>2]=3;a[A+136>>2]=0;s[A+144>>3]=-4.0;s[A+152>>3]=0.0;a[A+160>>2]=0;return A|0}function pT(A){A=A|0;L2(A);return}function NT(A){A|0;var e=0,i=0,r=0,f=0,n=0,l=0.0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0;k;k=k+176|0;e+160|0;e+152|0;e+128|0;e+112|0;e+88|0;e+64|0;e+56|0;e+40|0;e+24|0;e+16|0;e;a[15712]|0;L3(91378,27,1,r)|0;+s[A+8>>3];s[d>>3]=+s[A>>3];s[d+8>>3]=l;f3(r,91406,d)|0;a[A+108>>2]|0;a[o>>2]=a[A+16>>2];a[o+4>>2]=d;f3(r,91457,o)|0;+s[A+32>>3];s[h>>3]=+s[A+24>>3];s[h+8>>3]=l;f3(r,91484,h)|0;a[A+44>>2]|0;a[A+48>>2]|0;a[w>>2]=a[A+40>>2];a[w+4>>2]=h;a[w+8>>2]=o;f3(r,91507,w)|0;a[A+56>>2]|0;a[u>>2]=a[A+52>>2];a[u+4>>2]=w;f3(r,91558,u)|0;+s[A+72>>3];a[A+80>>2]|0;s[b>>3]=+s[A+64>>3];s[b+8>>3]=l;a[b+16>>2]=u;f3(r,91591,b)|0;+s[A+96>>3];a[A+104>>2]|0;s[t>>3]=+s[A+88>>3];s[t+8>>3]=l;a[t+16>>2]=b;f3(r,91649,t)|0;a[A+116>>2]|0;+s[A+152>>3];a[c>>2]=a[A+112>>2];a[c+4>>2]=t;s[c+8>>3]=l;f3(r,91695,c)|0;a[A+124>>2]|0;a[A+128>>2]|0;+s[A+144>>3];a[n>>2]=a[17804+(a[A+120>>2]<<2)>>2];a[n+4>>2]=c;a[n+8>>2]=t;s[n+16>>3]=l;f3(r,91748,n)|0;a[17848+(a[A+136>>2]<<2)>>2]|0;a[f>>2]=a[17832+(a[A+132>>2]<<2)>>2];a[f+4>>2]=n;f3(r,91813,f)|0;a[i>>2]=a[A+160>>2];f3(r,91843,i)|0;k=e;return}function RT(A){A=A|0;L2(A);return}function XT(A){A=A|0;var e=0;e=$F(184)|0;a[e>>2]=A;a[e+176>>2]=0;return e|0}function HT(A,e){A=A|0;e=+e;var i=0,r=0,f=0;r=a[A>>2]|0;s[A+8+(r<<3)>>3]=e;f=A+176|0;A:do{switch(a[f>>2]|0){case 0:{i=a[A>>2]|0;if((i|0)==20){a[f>>2]=-1;i=19}else{a[f>>2]=1;i=(i|0)>19?20:i+1|0}a[A>>2]=i;break}case 1:{i=a[A>>2]|0;if((i|0)<20?+s[A+8+(r+-1<<3)>>3]>e:0){a[A>>2]=i+1;break A}else{a[A>>2]=i+-1;a[f>>2]=-1;break A}}default:{i=a[A>>2]|0;if((i|0)>0?+s[A+8+(r+1<<3)>>3]>e:0){a[A>>2]=i+-1;break A}else{a[A>>2]=i+1;a[f>>2]=1;break A}}}}while(0);return}function UT(A){A=A|0;return a[A>>2]|0}function xT(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0.0;k=a[A+20>>2]|0;o=a[A+24>>2]|0;u=a[A>>2]|0;w=a[k+(u<<2)>>2]|0;if(!w)r=1.0;else{A=0;r=0.0;A:while(1){if((A|0)>=(u|0))break;t=A+1|0;c=a[k+(t<<2)>>2]|0;b=U(A,e)|0;l=a[k+(A<<2)>>2]|0;while(1){if((l|0)>=(c|0)){A=t;continue A}n=o+(l<<2)|0;A=0;f=0.0;while(1){if((A|0)>=(e|0))break;h=+s[i+(A+b<<3)>>3]-+s[i+((U(a[n>>2]|0,e)|0)<<3)>>3];A=A+1|0;f=h*h+f}l=l+1|0;r=+z(+f)+r}}r=r/+(w|0)}return+r}function TT(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=e+10|0;if((a[i>>2]|0)<=(e|0)){a[i>>2]=r;a[A>>2]=eV(a[A>>2]|0,r<<3)|0}return}function jT(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=e+10|0;if((a[i>>2]|0)<=(e|0)){a[i>>2]=r;a[A>>2]=eV(a[A>>2]|0,r<<2)|0}return}function PT(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0.0,a=0.0,n=0.0,l=0,t=0,c=0;c=k;k=k+16|0;t=c;l=U(r,e)|0;e=U(i,e)|0;r=0;while(1){if((r|0)==2)break;s[t+(r<<3)>>3]=+s[A+(r+l<<3)>>3]-+s[A+(r+e<<3)>>3];r=r+1|0}n=+s[t>>3];a=+s[t+8>>3];do{if(!((n>=0.0?n:-n)<=(a>=0.0?a:-a)*1.0e-05)){f=+p(+(a/n));if(n>0.0){if(!(a<0.0))break;f=f+6.283185307179586;break}else{if(!(n<0.0))break;f=f+3.141592653589793;break}}else f=a>0.0?1.5707963267948966:4.71238898038469}while(0);k=c;return+f}function ST(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;r=+s[A>>3];i=+s[e>>3];return(r>i?1:(r>31)|0}function OT(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0.0,c=0,b=0,u=0.0,w=0,o=0.0,h=0.0,d=0,B=0,g=0,v=0,E=0.0,C=0,I=0,Z=0,G=0.0,m=0.0,Q=0,L=0,y=0,W=0,D=0,M=0,F=0,V=0,J=0,p=0.0,N=0,R=0,X=0,H=0.0,x=0,T=0.0,j=0,P=0,S=0,O=0,K=0,_=0,q=0,$=0,AA=0.0;q=k;k=k+80|0;_=q+32|0;K=q;o=+s[i>>3];b=i+24|0;u=+s[b>>3];w=i+32|0;t=+s[w>>3];H=+s[i+72>>3];x=a[i+80>>2]|0;T=+s[i+88>>3];h=+s[i+96>>3];j=a[i+104>>2]|0;P=i+56|0;l=a[P>>2]|0;do{if(!((e|0)==0|(x|0)<1)?(S=a[e+4>>2]|0,!((A|0)<1|(S|0)<1)):0){X=a[e>>2]|0;O=XT(l)|0;a[n>>2]=0;if((X|0)!=(S|0)){a[n>>2]=-100;RT(O);a[P>>2]=l;break}N=tq(e,1)|0;R=a[N+20>>2]|0;X=a[N+24>>2]|0;A:do{if(a[i+16>>2]|0){f8(a[i+108>>2]|0);c=U(S,A)|0;l=0;while(1){if((l|0)>=(c|0))break A;s[f+(l<<3)>>3]=+Ub();l=l+1|0}}}while(0);if(u<0.0){u=+xT(N,A,f);s[b>>3]=u}if(t<0.0){s[w>>3]=.2;t=.2}if(o>=0.0){s[i>>3]=-1.0;o=-1.0}p=+Y(+u,+(1.0-o));m=+Y(+t,+((2.0-o)*.3333333333333333))/u;Q=U(S,A<<3)|0;L=$F(Q)|0;y=$F(Q)|0;W=i+116|0;D=i+64|0;M=a[15712]|0;F=N+8|0;V=K+8|0;J=K+16|0;Z=0;G=0.0;E=h;while(1){W6(L|0,f|0,Q|0)|0;C=UT(O)|0;I=S_(A,S,C,f,(a[W>>2]|0)==0?0:r)|0;U_(I,y,f,+s[D>>3],o,p,K,n);b=0;A:while(1){if((b|0)>=(S|0)){h=0.0;c=0;break}w=U(b,A)|0;d=y+(w<<3)|0;B=b+1|0;g=R+(B<<2)|0;c=a[R+(b<<2)>>2]|0;while(1){if((c|0)>=(a[g>>2]|0)){b=B;continue A}v=X+(c<<2)|0;l=a[v>>2]|0;e:do{if((l|0)!=(b|0)){t=+_b(f,A,b,l)*m;l=0;while(1){if((l|0)>=(A|0))break e;h=t*(+s[f+(l+w<<3)>>3]-+s[f+((U(a[v>>2]|0,A)|0)+l<<3)>>3]);$=d+(l<<3)|0;s[$>>3]=+s[$>>3]-h;l=l+1|0}}}while(0);c=c+1|0}}while(1){if((c|0)>=(S|0))break;b=U(c,A)|0;w=y+(b<<3)|0;t=0.0;l=0;while(1){if((l|0)>=(A|0))break;AA=+s[w+(l<<3)>>3];t=AA*AA+t;l=l+1|0}t=+z(+t);h=t+h;A:do{if(t>0.0){t=1.0/t;l=0;while(1){if((l|0)>=(A|0)){l=0;break A}$=w+(l<<3)|0;s[$>>3]=+s[$>>3]*t;l=l+1|0}}else l=0}while(0);while(1){if((l|0)>=(A|0))break;$=f+(l+b<<3)|0;s[$>>3]=+s[$>>3]+ +s[w+(l<<3)>>3]*E;l=l+1|0}c=c+1|0}Z=Z+1|0;if(!I){if(0){}}else{eq(I);HT(O,+s[V>>3]*.85+ +s[K>>3]+ +s[J>>3]*3.3)}E=+KT(j,E,h,G,T);if(!((Z|0)<(x|0)&E>H))break;else G=h}if(a[i+112>>2]|0)_T(A,N,f);RT(O);a[P>>2]=C;L2(L);if((N|0)!=(e|0))rq(N);L2(y)}}while(0);k=q;return}function KT(A,e,i,r,f){A=A|0;e=+e;i=+i;r=+r;f=+f;do{if(A){if(i>=r){e=f*e;break}if(!(r*.95>2]|0;L=a[e+20>>2]|0;g=a[e+24>>2]|0;a[E>>2]=10;a[m>>2]=10;v=$F(Q<<2)|0;f=$F(80)|0;a[Z>>2]=f;r=$F(40)|0;a[G>>2]=r;e=0;while(1){if((e|0)>=(Q|0)){u=0;d=f;c=r;w=r;b=f;break}a[v+(e<<2)>>2]=0;e=e+1|0}while(1){if((u|0)>=(Q|0))break;e=a[L+(u<<2)>>2]|0;A:do{if((((a[L+(u+1<<2)>>2]|0)-e|0)==1?(a[v+(u<<2)>>2]|0)==0:0)?(C=a[g+(e<<2)>>2]|0,I=v+(C<<2)|0,(a[I>>2]|0)==0):0){a[I>>2]=1;h=L+(C+1<<2)|0;u=0;B=0;n=0.0;o=a[L+(C<<2)>>2]|0;c=w;e=d;while(1){if((o|0)>=(a[h>>2]|0))break;r=g+(o<<2)|0;f=a[r>>2]|0;if(((a[L+(f+1<<2)>>2]|0)-(a[L+(f<<2)>>2]|0)|0)==1){a[v+(f<<2)>>2]=1;jT(G,B,E);n=+_b(i,A,C,a[r>>2]|0)+n;c=a[G>>2]|0;a[c+(B<<2)>>2]=a[r>>2];r=u;f=B+1|0}else{TT(Z,u,m);t=+PT(i,A,C,a[r>>2]|0);e=a[Z>>2]|0;s[e+(u<<3)>>3]=t;r=u+1|0;f=B;b=e}u=r;B=f;o=o+1|0}t=n/+(B|0);if((u|0)>0){qT(u,b);e=b}n=(B|0)>1?6.283185307179586/+(B+-1|0):0.0;r=0;l=0.0;while(1){if((r|0)>=(B|0)){w=c;f=c;break A}$T(i,A,t,l,C,a[c+(r<<2)>>2]|0);r=r+1|0;l=l+n}}else{r=u;f=c;e=d}}while(0);u=r+1|0;d=e;c=f}L2(v);L2(d);L2(c);k=y;return}function qT(A,e){A=A|0;e=e|0;K4(e,A,8,68);return}function $T(A,e,i,r,f,a){A=A|0;e=e|0;i=+i;r=+r;f=f|0;a=a|0;var n=0.0;n=+D(+r)*i;f=U(f,e)|0;a=U(a,e)|0;s[A+(a<<3)>>3]=n+ +s[A+(f<<3)>>3];r=+M(+r)*i;s[A+(a+1<<3)>>3]=r+ +s[A+(f+1<<3)>>3];return}function Aj(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0.0,b=0.0,u=0,w=0,k=0.0,o=0,h=0,d=0.0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0.0,m=0,Q=0.0,L=0.0,y=0,W=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0.0,X=0,H=0.0,x=0,T=0,j=0,P=0,S=0.0;k=+s[i>>3];u=i+24|0;b=+s[u>>3];w=i+32|0;c=+s[w>>3];R=+s[i+72>>3];X=a[i+80>>2]|0;H=+s[i+88>>3];d=+s[i+96>>3];x=a[i+104>>2]|0;l=a[i+56>>2]|0;L3(92198,32,1,a[15712]|0)|0;if(!((e|0)==0|(X|0)<1)?(T=a[e>>2]|0,t=a[e+4>>2]|0,!((A|0)<1|(t|0)<1)):0){o=A<<3;j=$F(U(o,t)|0)|0;if((t|0)<(a[i+52>>2]|0)){M=0;F=0;V=0;J=0;p=0;N=0}else{XT(l)|0;J=$F(A*80|0)|0;p=$F(80)|0;N=$F(80)|0;M=N;F=p;V=J}a[n>>2]=0;if((T|0)==(t|0)){y=tq(e,1)|0;W=a[y+20>>2]|0;D=a[y+24>>2]|0;A:do{if(a[i+16>>2]|0){f8(a[i+108>>2]|0);t=U(T,A)|0;l=0;while(1){if((l|0)>=(t|0))break A;s[f+(l<<3)>>3]=+Ub();l=l+1|0}}}while(0);if(b<0.0){b=+xT(y,A,f);s[u>>3]=b}if(c<0.0){s[w>>3]=.2;c=.2}if(k>=0.0){s[i>>3]=-1.0;k=-1.0}Q=1.0-k;L=+Y(+b,+Q);G=+Y(+c,+((2.0-k)*.3333333333333333))/b;m=$F(o)|0;v=U(T,o)|0;E=$F(v)|0;C=U(T,A)|0;I=i+116|0;Z=(r|0)!=0;g=k==-1.0;B=0;k=0.0;while(1){l=0;while(1){if((l|0)>=(C|0))break;s[j+(l<<3)>>3]=0.0;l=l+1|0}W6(E|0,f|0,v|0)|0;o=0;while(1){if((o|0)<(T|0))l=0;else{w=0;break}while(1){if((l|0)>=(A|0))break;s[m+(l<<3)>>3]=0.0;l=l+1|0}w=U(o,A)|0;A:do{if(Z&(a[I>>2]|0)!=0){l=0;while(1){if((l|0)==(T|0)){l=0;break A}e:do{if((l|0)!=(o|0)){b=+Kb(f,A,o,l);n=r+(l<<3)|0;u=U(l,A)|0;c=+Y(+b,+Q);c=1.0/(g?b*b:c);t=0;while(1){if((t|0)>=(A|0))break e;h=m+(t<<3)|0;s[h>>3]=+s[n>>3]*L*(+s[f+(t+w<<3)>>3]-+s[f+(t+u<<3)>>3])*c+ +s[h>>3];t=t+1|0}}}while(0);l=l+1|0}}else{l=0;while(1){if((l|0)==(T|0)){l=0;break A}e:do{if((l|0)!=(o|0)){b=+Kb(f,A,o,l);n=U(l,A)|0;c=+Y(+b,+Q);c=1.0/(g?b*b:c);t=0;while(1){if((t|0)>=(A|0))break e;h=m+(t<<3)|0;s[h>>3]=(+s[f+(t+w<<3)>>3]-+s[f+(t+n<<3)>>3])*L*c+ +s[h>>3];t=t+1|0}}}while(0);l=l+1|0}}}while(0);while(1){if((l|0)>=(A|0))break;h=j+(l+w<<3)|0;s[h>>3]=+s[h>>3]+ +s[m+(l<<3)>>3];l=l+1|0}o=o+1|0}A:while(1){if((w|0)<(T|0))l=0;else{b=0.0;t=0;break}while(1){if((l|0)>=(A|0))break;s[m+(l<<3)>>3]=0.0;l=l+1|0}o=w+1|0;n=W+(o<<2)|0;h=U(w,A)|0;t=a[W+(w<<2)>>2]|0;while(1){if((t|0)>=(a[n>>2]|0)){l=0;break}u=D+(t<<2)|0;l=a[u>>2]|0;e:do{if((l|0)!=(w|0)){c=+_b(f,A,w,l)*G;l=0;while(1){if((l|0)>=(A|0))break e;b=c*(+s[f+(l+h<<3)>>3]-+s[f+((U(a[u>>2]|0,A)|0)+l<<3)>>3]);P=m+(l<<3)|0;s[P>>3]=+s[P>>3]-b;l=l+1|0}}}while(0);t=t+1|0}while(1){if((l|0)>=(A|0)){w=o;continue A}P=j+(l+h<<3)|0;s[P>>3]=+s[P>>3]+ +s[m+(l<<3)>>3];l=l+1|0}}while(1){if((t|0)>=(T|0))break;n=U(t,A)|0;l=0;while(1){if((l|0)>=(A|0)){c=0.0;l=0;break}s[m+(l<<3)>>3]=+s[j+(l+n<<3)>>3];l=l+1|0}while(1){if((l|0)>=(A|0))break;S=+s[m+(l<<3)>>3];c=S*S+c;l=l+1|0}c=+z(+c);b=c+b;A:do{if(c>0.0){c=1.0/c;l=0;while(1){if((l|0)>=(A|0)){l=0;break A}P=m+(l<<3)|0;s[P>>3]=+s[P>>3]*c;l=l+1|0}}else l=0}while(0);while(1){if((l|0)>=(A|0))break;P=f+(l+n<<3)|0;s[P>>3]=+s[P>>3]+ +s[m+(l<<3)>>3]*d;l=l+1|0}t=t+1|0}B=B+1|0;d=+KT(x,d,b,k,H);if(!((B|0)<(X|0)&d>R))break;else k=b}if(a[i+112>>2]|0)_T(A,y,f);L2(E);if((y|0)!=(e|0))rq(y);L2(m)}else a[n>>2]=-100;if(V|0)L2(J);if(F|0)L2(p);if(M|0)L2(N);L2(j)}return}function ej(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0.0,d=0.0,B=0.0,g=0.0,v=0.0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0.0,y=0,W=0,D=0.0,M=0.0,F=0,V=0,J=0,p=0,N=0.0,R=0.0,X=0,H=0,x=0,T=0,j=0,P=0.0,S=0,O=0.0,K=0,_=0,q=0,$=0,AA=0,eA=0,iA=0,rA=0,fA=0,aA=0,nA=0,lA=0.0,tA=0;nA=k;k=k+32|0;q=nA+24|0;$=nA+20|0;rA=nA+16|0;fA=nA+12|0;aA=nA+8|0;j=nA;B=+s[i>>3];c=i+24|0;d=+s[c>>3];b=i+32|0;h=+s[b>>3];P=+s[i+72>>3];S=a[i+80>>2]|0;O=+s[i+88>>3];g=+s[i+96>>3];K=a[i+104>>2]|0;a[q>>2]=0;a[$>>2]=10;a[rA>>2]=0;a[fA>>2]=0;a[aA>>2]=0;s[j>>3]=0.0;iA=i+56|0;u=a[iA>>2]|0;if(!((e|0)==0|(S|0)<1)?(_=a[e>>2]|0,l=a[e+4>>2]|0,!((A|0)<1|(l|0)<1)):0){if((l|0)<(a[i+52>>2]|0)){eA=0;AA=0}else{eA=XT(u)|0;a[rA>>2]=$F(A*80|0)|0;a[fA>>2]=$F(80)|0;a[aA>>2]=$F(80)|0;AA=1}a[n>>2]=0;A:do{if((_|0)==(l|0)){w=tq(e,1)|0;X=a[w+20>>2]|0;H=a[w+24>>2]|0;e:do{if(a[i+16>>2]|0){f8(a[i+108>>2]|0);t=U(_,A)|0;l=0;while(1){if((l|0)>=(t|0))break e;s[f+(l<<3)>>3]=+Ub();l=l+1|0}}}while(0);if(d<0.0){d=+xT(w,A,f);s[c>>3]=d}if(h<0.0){s[b>>3]=.2;h=.2}if(B>=0.0){s[i>>3]=-1.0;B=-1.0}N=1.0-B;R=+Y(+d,+N);M=+Y(+h,+((2.0-B)*.3333333333333333))/d;F=A<<3;x=$F(F)|0;F=U(_,F)|0;T=$F(F)|0;V=(AA|0)!=0;J=i+116|0;p=i+64|0;y=B==-1.0;W=(r|0)!=0;D=1.0/+(_|0);l=0;Q=0;L=0.0;while(1){Q=Q+1|0;W6(T|0,f|0,F|0)|0;if(V){l=UT(eA)|0;u=l;l=S_(A,_,l,f,(a[J>>2]|0)==0?0:r)|0}v=0.0;B=0.0;E=0;d=0.0;e:while(1){if((E|0)<(_|0))t=0;else break;while(1){if((t|0)>=(A|0))break;s[x+(t<<3)>>3]=0.0;t=t+1|0}G=E+1|0;b=X+(G<<2)|0;m=U(E,A)|0;c=a[X+(E<<2)>>2]|0;while(1){if((c|0)>=(a[b>>2]|0))break;o=H+(c<<2)|0;t=a[o>>2]|0;i:do{if((t|0)!=(E|0)){h=+_b(f,A,E,t)*M;t=0;while(1){if((t|0)>=(A|0))break i;lA=h*(+s[f+(t+m<<3)>>3]-+s[f+((U(a[o>>2]|0,A)|0)+t<<3)>>3]);Z=x+(t<<3)|0;s[Z>>3]=+s[Z>>3]-lA;t=t+1|0}}}while(0);c=c+1|0}i:do{if(!V)if(W&(a[J>>2]|0)!=0){t=0;while(1){if((t|0)==(_|0))break i;r:do{if((t|0)!=(E|0)){lA=+Kb(f,A,E,t);b=r+(t<<3)|0;o=U(t,A)|0;h=+Y(+lA,+N);h=1.0/(y?lA*lA:h);c=0;while(1){if((c|0)>=(A|0))break r;Z=x+(c<<3)|0;s[Z>>3]=+s[b>>3]*R*(+s[f+(c+m<<3)>>3]-+s[f+(c+o<<3)>>3])*h+ +s[Z>>3];c=c+1|0}}}while(0);t=t+1|0}}else{t=0;while(1){if((t|0)==(_|0))break i;r:do{if((t|0)!=(E|0)){lA=+Kb(f,A,E,t);b=U(t,A)|0;h=+Y(+lA,+N);h=1.0/(y?lA*lA:h);c=0;while(1){if((c|0)>=(A|0))break r;Z=x+(c<<3)|0;s[Z>>3]=(+s[f+(c+m<<3)>>3]-+s[f+(c+b<<3)>>3])*R*h+ +s[Z>>3];c=c+1|0}}}while(0);t=t+1|0}}else{H_(l,+s[p>>3],f+(m<<3)|0,E,q,$,rA,fA,aA,j,n);v=+s[j>>3]+v;Z=a[q>>2]|0;B=B+ +(Z|0);if(a[n>>2]|0){b=x;c=T;l=x;t=T;o=67;break A}b=a[aA>>2]|0;o=a[fA>>2]|0;E=a[rA>>2]|0;t=0;while(1){if((t|0)>=(Z|0))break i;lA=+s[b+(t<<3)>>3];lA=lA>1.0e-15?lA:1.0e-15;C=o+(t<<3)|0;I=U(t,A)|0;h=+Y(+lA,+N);h=1.0/(y?lA*lA:h);c=0;while(1){if((c|0)>=(A|0))break;tA=x+(c<<3)|0;s[tA>>3]=+s[C>>3]*R*(+s[f+(c+m<<3)>>3]-+s[E+(c+I<<3)>>3])*h+ +s[tA>>3];c=c+1|0}t=t+1|0}}}while(0);h=0.0;t=0;while(1){if((t|0)>=(A|0))break;lA=+s[x+(t<<3)>>3];h=lA*lA+h;t=t+1|0}h=+z(+h);d=h+d;i:do{if(h>0.0){h=1.0/h;t=0;while(1){if((t|0)>=(A|0)){t=0;break i}tA=x+(t<<3)|0;s[tA>>3]=+s[tA>>3]*h;t=t+1|0}}else t=0}while(0);while(1){if((t|0)>=(A|0)){E=G;continue e}tA=f+(t+m<<3)|0;s[tA>>3]=+s[tA>>3]+ +s[x+(t<<3)>>3]*g;t=t+1|0}}if(l|0){eq(l);HT(eA,B*D*5.0+v*D)}g=+KT(K,g,d,L,O);if(!((Q|0)<(S|0)&g>P))break;else L=d}if(!(a[i+112>>2]|0)){b=x;c=T;t=T;l=x;o=66}else{_T(A,w,f);b=x;c=T;t=T;l=x;o=66}}else{a[n>>2]=-100;w=e;b=0;c=0;t=0;l=0;o=66}}while(0);if((o|0)==66)if(AA)o=67;if((o|0)==67){RT(eA);a[iA>>2]=u}if(c|0)L2(t);if((w|0)!=(e|0))rq(w);if(b|0)L2(l);l=a[rA>>2]|0;if(l|0)L2(l);l=a[fA>>2]|0;if(l|0)L2(l);l=a[aA>>2]|0;if(l|0)L2(l)}k=nA;return}function ij(A,e,i,r,f,n,l,t){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=+l;t=t|0;var c=0,b=0,u=0,w=0,o=0.0,h=0,d=0.0,B=0,g=0.0,v=0.0,E=0.0,C=0,I=0,Z=0.0,G=0,m=0,Q=0.0,L=0,y=0.0,W=0.0,D=0,M=0,F=0,V=0,J=0,p=0,N=0,R=0,X=0,H=0,x=0,T=0,j=0,P=0,S=0,O=0,K=0.0,_=0,q=0.0,$=0,AA=0,eA=0,iA=0,rA=0,fA=0,aA=0,nA=0,lA=0.0,tA=0;nA=k;k=k+48|0;w=nA+8|0;eA=nA+40|0;iA=nA+36|0;S=nA+32|0;fA=nA+28|0;aA=nA+24|0;O=nA;o=+s[r>>3];h=r+32|0;d=+s[h>>3];K=+s[r+72>>3];_=a[r+80>>2]|0;q=+s[r+88>>3];g=+s[r+96>>3];$=a[r+104>>2]|0;a[eA>>2]=0;a[iA>>2]=10;a[S>>2]=0;a[fA>>2]=0;a[aA>>2]=0;s[O>>3]=0.0;if(!((e|0)==0|(_|0)<1)?(AA=a[e>>2]|0,u=a[e+4>>2]|0,!((A|0)<1|(u|0)<1)):0){if((a[r+132>>2]|0)!=0?(u|0)>=(a[r+52>>2]|0):0){b=$F(A*80|0)|0;a[S>>2]=b;a[fA>>2]=$F(80)|0;a[aA>>2]=$F(80)|0;B=1;c=b}else{B=0;c=0;b=0}a[t>>2]=0;if((AA|0)==(u|0)){P=tq(e,1)|0;if(!i){j=0;c=P}else{j=a[i+28>>2]|0;c=i}T=a[c+24>>2]|0;x=a[c+20>>2]|0;if(l<0.0){W=+rj(AA,x,j);y=+(a[x+(AA<<2)>>2]|0);Q=+(AA|0);l=y/(Q*Q-y)*l/+Y(+W,+(o+1.0));H=a[15712]|0;s[w>>3]=W;s[w+8>>3]=l;f3(H,92231,w)|0}A:do{if(a[r+16>>2]|0){L3(92253,24,1,a[15712]|0)|0;f8(a[r+108>>2]|0);b=U(AA,A)|0;c=0;while(1){if((c|0)>=(b|0))break A;s[n+(c<<3)>>3]=+Ub();c=c+1|0}}}while(0);fj(AA,A,n,x,T,j);if(d<0.0)s[h>>3]=.2;if(o>=0.0){s[r>>3]=-1.0;o=-1.0}X=A<<3;R=$F(X)|0;X=U(AA,X)|0;H=$F(X)|0;M=(B|0)!=0;F=r+116|0;V=(j|0)==0;J=r+8|0;p=(f|0)!=0;N=o==-1.0;W=1.0-o;D=r+64|0;c=0;L=0;y=0.0;o=1.0;Q=g;A:while(1){L=L+1|0;W6(H|0,n|0,X|0)|0;if(M)c=S_(A,AA,10,n,(a[F>>2]|0)==0?0:f)|0;B=0;g=0.0;e:while(1){if((B|0)<(AA|0))b=0;else break;while(1){if((b|0)>=(A|0))break;s[R+(b<<3)>>3]=0.0;b=b+1|0}m=B+1|0;h=x+(m<<2)|0;G=U(B,A)|0;w=a[x+(B<<2)>>2]|0;while(1){if((w|0)>=(a[h>>2]|0))break;i=T+(w<<2)|0;b=a[i>>2]|0;i:do{if((b|0)!=(B|0)){Z=+Kb(n,A,B,b);if(!V)o=+s[j+(w<<3)>>3];d=+s[J>>3];r:do{if(!(d==2.0))if(d==1.0){d=(Z-o)*(1.0/(o*o));v=1.0/Z;b=0;while(1){if((b|0)>=(A|0))break r;E=d*(+s[n+(b+G<<3)>>3]-+s[n+((U(a[i>>2]|0,A)|0)+b<<3)>>3])*v;I=R+(b<<3)|0;s[I>>3]=+s[I>>3]-E;b=b+1|0}}else{d=1.0/+Y(+o,+(d+1.0));v=Z-o;E=1.0/Z;b=0;while(1){if((b|0)>=(A|0))break r;lA=+s[n+(b+G<<3)>>3]-+s[n+((U(a[i>>2]|0,A)|0)+b<<3)>>3];lA=d*lA*+Y(+v,+ +s[J>>3])*E;I=R+(b<<3)|0;s[I>>3]=+s[I>>3]-lA;b=b+1|0}}else{d=Z-o;d=d*d*(1.0/(o*o*o));v=1.0/Z;b=0;while(1){if((b|0)>=(A|0))break r;lA=d*(+s[n+(b+G<<3)>>3]-+s[n+((U(a[i>>2]|0,A)|0)+b<<3)>>3])*v;I=R+(b<<3)|0;s[I>>3]=+s[I>>3]-lA;b=b+1|0}}}while(0);if(p&(a[F>>2]|0)!=0){u=f+(w<<3)|0;d=+Y(+Z,+W);d=1.0/(N?Z*Z:d);b=0;while(1){if((b|0)>=(A|0))break i;lA=+s[u>>3]*l*(+s[n+(b+G<<3)>>3]-+s[n+((U(a[i>>2]|0,A)|0)+b<<3)>>3])*d;I=R+(b<<3)|0;s[I>>3]=+s[I>>3]-lA;b=b+1|0}}else{d=+Y(+Z,+W);d=1.0/(N?Z*Z:d);b=0;while(1){if((b|0)>=(A|0))break i;lA=(+s[n+(b+G<<3)>>3]-+s[n+((U(a[i>>2]|0,A)|0)+b<<3)>>3])*l*d;I=R+(b<<3)|0;s[I>>3]=+s[I>>3]-lA;b=b+1|0}}}}while(0);w=w+1|0}i:do{if(!M)if(p&(a[F>>2]|0)!=0){b=0;while(1){if((b|0)==(AA|0)){d=0.0;b=0;break i}r:do{if((b|0)!=(B|0)){lA=+Kb(n,A,B,b);i=f+(b<<3)|0;w=U(b,A)|0;d=+Y(+lA,+W);d=1.0/(N?lA*lA:d);u=0;while(1){if((u|0)>=(A|0))break r;I=R+(u<<3)|0;s[I>>3]=+s[i>>3]*l*(+s[n+(u+G<<3)>>3]-+s[n+(u+w<<3)>>3])*d+ +s[I>>3];u=u+1|0}}}while(0);b=b+1|0}}else{b=0;while(1){if((b|0)==(AA|0)){d=0.0;b=0;break i}r:do{if((b|0)!=(B|0)){lA=+Kb(n,A,B,b);i=U(b,A)|0;d=+Y(+lA,+W);d=1.0/(N?lA*lA:d);u=0;while(1){if((u|0)>=(A|0))break r;I=R+(u<<3)|0;s[I>>3]=(+s[n+(u+G<<3)>>3]-+s[n+(u+i<<3)>>3])*l*d+ +s[I>>3];u=u+1|0}}}while(0);b=b+1|0}}else{H_(c,+s[D>>3],n+(G<<3)|0,B,eA,iA,S,fA,aA,O,t);i=a[eA>>2]|0;if(a[t>>2]|0)break A;w=a[aA>>2]|0;h=a[fA>>2]|0;B=a[S>>2]|0;b=0;while(1){if((b|0)>=(i|0)){d=0.0;b=0;break i}lA=+s[w+(b<<3)>>3];lA=lA>1.0e-15?lA:1.0e-15;C=h+(b<<3)|0;I=U(b,A)|0;d=+Y(+lA,+W);d=1.0/(N?lA*lA:d);u=0;while(1){if((u|0)>=(A|0))break;tA=R+(u<<3)|0;s[tA>>3]=+s[C>>3]*l*(+s[n+(u+G<<3)>>3]-+s[B+(u+I<<3)>>3])*d+ +s[tA>>3];u=u+1|0}b=b+1|0}}}while(0);while(1){if((b|0)>=(A|0))break;lA=+s[R+(b<<3)>>3];d=lA*lA+d;b=b+1|0}d=+z(+d);g=d+g;i:do{if(d>0.0){d=1.0/d;b=0;while(1){if((b|0)>=(A|0)){b=0;break i}tA=R+(b<<3)|0;s[tA>>3]=+s[tA>>3]*d;b=b+1|0}}else b=0}while(0);while(1){if((b|0)>=(A|0)){B=m;continue e}tA=n+(b+G<<3)|0;s[tA>>3]=+s[tA>>3]+ +s[R+(b<<3)>>3]*Q;b=b+1|0}}if(c|0)eq(c);Q=+KT($,Q,g,y,q);if(!((L|0)<(_|0)&Q>K)){rA=83;break}else y=g}if((rA|0)==83?a[r+112>>2]|0:0)_T(A,P,n);L2(H);if((P|0)!=(e|0))rq(P);L2(R);c=a[S>>2]|0;b=c}else a[t>>2]=-100;if(b|0)L2(c);c=a[fA>>2]|0;if(c|0)L2(c);c=a[aA>>2]|0;if(c|0)L2(c)}k=nA;return}function rj(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0,n=0,l=0,t=0.0;if(!i)r=1.0;else{f=0;r=0.0;A:while(1){if((f|0)>=(A|0))break;n=f+1|0;l=a[e+(n<<2)>>2]|0;f=a[e+(f<<2)>>2]|0;while(1){if((f|0)>=(l|0)){f=n;continue A}t=+s[i+(f<<3)>>3]+r;f=f+1|0;r=t}}r=r/+(a[e+(A<<2)>>2]|0)}return+r}function fj(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0.0,b=0.0,u=0.0,w=0.0,o=0.0,h=0,d=0,B=0,g=0,v=0,E=0,C=0.0;E=k;k=k+16|0;v=E;g=(n|0)==0;c=0.0;b=0.0;u=1.0;t=0;A:while(1){if((t|0)>=(A|0))break;d=t+1|0;B=r+(d<<2)|0;h=a[r+(t<<2)>>2]|0;while(1){if((h|0)>=(a[B>>2]|0)){t=d;continue A}l=a[f+(h<<2)>>2]|0;e:do{if((l|0)!=(t|0)){w=+Kb(i,e,t,l);if(!g)u=+s[n+(h<<3)>>3];C=1.0/(u*u);o=u*w*C;w=w*w*C;l=0;while(1){if((l|0)>=(e|0))break e;l=l+1|0;c=c+w;b=b+o}}}while(0);h=h+1|0}}c=b/c;t=U(e,A)|0;l=0;while(1){if((l|0)>=(t|0))break;e=i+(l<<3)|0;s[e>>3]=+s[e>>3]*c;l=l+1|0}i=a[15712]|0;s[v>>3]=c;f3(i,92278,v)|0;k=E;return}function aj(A,e,i,r,f,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;var t=0,c=0,b=0,u=0.0,w=0.0,o=0,h=0,d=0.0,B=0,g=0,v=0,E=0.0,C=0,I=0,Z=0,G=0.0,m=0,Q=0,L=0,y=0,W=0.0,D=0,M=0.0,F=0,V=0,J=0,p=0.0,N=0.0,R=0,X=0,H=0,x=0,T=0,j=0,P=0,S=0.0,O=0,K=0.0,_=0,q=0,$=0,AA=0,eA=0,iA=0,rA=0,fA=0,aA=0,nA=0.0,lA=0.0,tA=0;aA=k;k=k+32|0;$=aA+24|0;AA=aA+20|0;eA=aA+16|0;rA=aA+12|0;fA=aA+8|0;P=aA;d=+s[r>>3];o=r+24|0;w=+s[o>>3];h=r+32|0;u=+s[h>>3];S=+s[r+72>>3];O=a[r+80>>2]|0;K=+s[r+88>>3];E=+s[r+96>>3];_=a[r+104>>2]|0;a[$>>2]=0;a[AA>>2]=10;a[eA>>2]=0;a[rA>>2]=0;a[fA>>2]=0;s[P>>3]=0.0;if(!((e|0)==0|(O|0)<1)?(q=a[e>>2]|0,b=a[e+4>>2]|0,!((A|0)<1|(b|0)<1)):0){if((b|0)<(a[r+52>>2]|0)){B=0;t=0;c=0}else{c=$F(A*80|0)|0;a[eA>>2]=c;a[rA>>2]=$F(80)|0;a[fA>>2]=$F(80)|0;B=1;t=c}a[l>>2]=0;if((q|0)==(b|0)){X=tq(e,1)|0;H=a[X+20>>2]|0;x=a[X+24>>2]|0;T=a[i+20>>2]|0;j=a[i+24>>2]|0;R=a[i+28>>2]|0;A:do{if(a[r+16>>2]|0){f8(a[r+108>>2]|0);c=U(q,A)|0;t=0;while(1){if((t|0)>=(c|0))break A;s[n+(t<<3)>>3]=+Ub();t=t+1|0}}}while(0);if(w<0.0){w=+xT(X,A,n);s[o>>3]=w}if(u<0.0){s[h>>3]=.2;u=.2}if(d>=0.0){s[r>>3]=-1.0;d=-1.0}p=1.0-d;N=+Y(+w,+p);M=+Y(+u,+((2.0-d)*.3333333333333333))/w;V=A<<3;F=$F(V)|0;V=U(q,V)|0;J=$F(V)|0;L=(B|0)!=0;y=r+116|0;W=M*.2;D=r+64|0;m=d==-1.0;Q=(f|0)!=0;t=0;Z=0;G=0.0;A:while(1){Z=Z+1|0;W6(J|0,n|0,V|0)|0;if(L)t=S_(A,q,10,n,(a[y>>2]|0)==0?0:f)|0;B=0;w=0.0;e:while(1){if((B|0)<(q|0))c=0;else break;while(1){if((c|0)>=(A|0))break;s[F+(c<<3)>>3]=0.0;c=c+1|0}C=B+1|0;i=H+(C<<2)|0;I=U(B,A)|0;b=a[H+(B<<2)>>2]|0;while(1){if((b|0)>=(a[i>>2]|0))break;o=x+(b<<2)|0;c=a[o>>2]|0;i:do{if((c|0)!=(B|0)){u=+_b(n,A,B,c)*M;c=0;while(1){if((c|0)>=(A|0))break i;d=u*(+s[n+(c+I<<3)>>3]-+s[n+((U(a[o>>2]|0,A)|0)+c<<3)>>3]);v=F+(c<<3)|0;s[v>>3]=+s[v>>3]-d;c=c+1|0}}}while(0);b=b+1|0}o=T+(C<<2)|0;i=a[T+(B<<2)>>2]|0;while(1){if((i|0)>=(a[o>>2]|0))break;h=j+(i<<2)|0;c=a[h>>2]|0;i:do{if((c|0)!=(B|0)){u=+Kb(n,A,B,c);b=R+(i<<3)|0;d=1.0/u;c=0;while(1){if((c|0)>=(A|0))break i;lA=+s[b>>3];nA=u-lA;nA=nA*nA*W*(+s[n+(c+I<<3)>>3]-+s[n+((U(a[h>>2]|0,A)|0)+c<<3)>>3])*d;v=F+(c<<3)|0;s[v>>3]=(u >3];c=c+1|0}}}while(0);i=i+1|0}i:do{if(!L)if(Q&(a[y>>2]|0)!=0){c=0;while(1){if((c|0)==(q|0)){u=0.0;c=0;break i}r:do{if((c|0)!=(B|0)){lA=+Kb(n,A,B,c);i=f+(c<<3)|0;o=U(c,A)|0;u=+Y(+lA,+p);u=1.0/(m?lA*lA:u);b=0;while(1){if((b|0)>=(A|0))break r;v=F+(b<<3)|0;s[v>>3]=+s[i>>3]*N*(+s[n+(b+I<<3)>>3]-+s[n+(b+o<<3)>>3])*u+ +s[v>>3];b=b+1|0}}}while(0);c=c+1|0}}else{c=0;while(1){if((c|0)==(q|0)){u=0.0;c=0;break i}r:do{if((c|0)!=(B|0)){lA=+Kb(n,A,B,c);i=U(c,A)|0;u=+Y(+lA,+p);u=1.0/(m?lA*lA:u);b=0;while(1){if((b|0)>=(A|0))break r;v=F+(b<<3)|0;s[v>>3]=(+s[n+(b+I<<3)>>3]-+s[n+(b+i<<3)>>3])*N*u+ +s[v>>3];b=b+1|0}}}while(0);c=c+1|0}}else{H_(t,+s[D>>3],n+(I<<3)|0,B,$,AA,eA,rA,fA,P,l);i=a[$>>2]|0;if(a[l>>2]|0)break A;o=a[fA>>2]|0;h=a[rA>>2]|0;B=a[eA>>2]|0;c=0;while(1){if((c|0)>=(i|0)){u=0.0;c=0;break i}lA=+s[o+(c<<3)>>3];lA=lA>1.0e-15?lA:1.0e-15;g=h+(c<<3)|0;v=U(c,A)|0;u=+Y(+lA,+p);u=1.0/(m?lA*lA:u);b=0;while(1){if((b|0)>=(A|0))break;tA=F+(b<<3)|0;s[tA>>3]=+s[g>>3]*N*(+s[n+(b+I<<3)>>3]-+s[B+(b+v<<3)>>3])*u+ +s[tA>>3];b=b+1|0}c=c+1|0}}}while(0);while(1){if((c|0)>=(A|0))break;lA=+s[F+(c<<3)>>3];u=lA*lA+u;c=c+1|0}u=+z(+u);w=u+w;i:do{if(u>0.0){u=1.0/u;c=0;while(1){if((c|0)>=(A|0)){c=0;break i}tA=F+(c<<3)|0;s[tA>>3]=+s[tA>>3]*u;c=c+1|0}}else c=0}while(0);while(1){if((c|0)>=(A|0)){B=C;continue e}tA=n+(c+I<<3)|0;s[tA>>3]=+s[tA>>3]+ +s[F+(c<<3)>>3]*E;c=c+1|0}}if(t|0)eq(t);E=+KT(_,E,w,G,K);if(!((Z|0)<(O|0)&E>S)){iA=70;break}else G=w}if((iA|0)==70?a[r+112>>2]|0:0)_T(A,X,n);L2(J);if((X|0)!=(e|0))rq(X);L2(F);t=a[eA>>2]|0;c=t}else a[l>>2]=-100;if(c|0)L2(t);t=a[rA>>2]|0;if(t|0)L2(t);t=a[fA>>2]|0;if(t|0)L2(t)}k=aA;return}function nj(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0.0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0;w=a[e+20>>2]|0;k=a[e+24>>2]|0;o=$F(A<<3)|0;u=a[e>>2]|0;c=0;A:while(1){if((c|0)<(u|0))e=0;else break;while(1){if((e|0)>=(A|0))break;s[o+(e<<3)>>3]=0.0;e=e+1|0}b=c+1|0;t=a[w+(b<<2)>>2]|0;l=a[w+(c<<2)>>2]|0;e=0;while(1){if((l|0)>=(t|0))break;r=a[k+(l<<2)>>2]|0;if((r|0)!=(c|0)){n=U(r,A)|0;r=0;while(1){if((r|0)>=(A|0))break;h=o+(r<<3)|0;s[h>>3]=+s[h>>3]+ +s[i+(n+r<<3)>>3];r=r+1|0}e=e+1|0}l=l+1|0}if((e|0)<=0){c=b;continue}f=.5/+(e|0);r=U(c,A)|0;e=0;while(1){if((e|0)>=(A|0)){c=b;continue A}h=i+(e+r<<3)|0;s[h>>3]=+s[o+(e<<3)>>3]*f+ +s[h>>3]*.5;e=e+1|0}}L2(o);return}function lj(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0.0;t=a[A+20>>2]|0;c=a[A+24>>2]|0;l=a[A>>2]|0;s=$F((l<<2)+4|0)|0;A=0;while(1){if((A|0)>(l|0)){i=0;r=0;break}a[s+(A<<2)>>2]=0;A=A+1|0}while(1){if((r|0)>=(l|0))break;f=r+1|0;n=a[t+(f<<2)>>2]|0;A=0;e=a[t+(r<<2)>>2]|0;while(1){if((e|0)>=(n|0))break;A=A+((r|0)!=(a[c+(e<<2)>>2]|0)&1)|0;e=e+1|0}n=s+(A<<2)|0;r=(a[n>>2]|0)+1|0;a[n>>2]=r;i=(i|0)>(r|0)?i:r;r=f}b=+(a[s+4>>2]|0);if(+(i|0)*.8=(n|0)){f=0;break}s[u+(f<<3)>>3]=0.0;f=f+1|0}while(1){if((f|0)>=(e|0)){n=0;break}s[t+(f<<3)>>3]=0.0;f=f+1|0}while(1){if((n|0)>=(A|0))break;l=U(n,e)|0;f=0;while(1){if((f|0)>=(e|0))break;b=t+(f<<3)|0;s[b>>3]=+s[b>>3]+ +s[i+(f+l<<3)>>3];f=f+1|0}n=n+1|0}r=1.0/+(A|0);f=0;while(1){if((f|0)>=(e|0)){n=0;break}b=t+(f<<3)|0;s[b>>3]=+s[b>>3]*r;f=f+1|0}while(1){if((n|0)>=(A|0)){l=0;break}l=U(n,e)|0;f=0;while(1){if((f|0)>=(e|0))break;b=i+(f+l<<3)|0;s[b>>3]=+s[b>>3]-+s[t+(f<<3)>>3];f=f+1|0}n=n+1|0}while(1){if((l|0)>=(A|0))break;t=U(l,e)|0;n=0;while(1){if((n|0)>=(e|0))break;c=i+(n+t<<3)|0;b=U(n,e)|0;f=0;while(1){if((f|0)==(e|0))break;o=u+(f+b<<3)|0;s[o>>3]=+s[o>>3]+ +s[i+(f+t<<3)>>3]*+s[c>>3];f=f+1|0}n=n+1|0}l=l+1|0}r=+s[u+8>>3];if(r==0.0)r=0.0;else{h=+s[u>>3];a=+s[u+24>>3];r=-(a-h-+z(+(h*h+r*r*4.0+(h*-2.0+a)*a)))/(r*2.0)}a=+z(+(r*r+1.0));r=r/a;a=1.0/a;f=0;while(1){if((f|0)>=(A|0))break;o=U(f,e)|0;u=i+(o<<3)|0;h=+s[u>>3];o=i+(o+1<<3)|0;d=+s[o>>3];s[u>>3]=d*a+h*r;s[o>>3]=d*r-h*a;f=f+1|0}k=w;return}function cj(A,e,i,r,f,a,n,l,t,c){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;n=n|0;l=l|0;t=t|0;c=c|0;sj(A,e,i,r,f,a,n,l,t,c);return}function sj(A,e,i,r,f,n,l,t,c,b){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;t=t|0;c=c|0;b=b|0;var u=0.0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0,Q=0,L=0,y=0,W=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0;p=k;k=k+192|0;M=p+176|0;D=p+168|0;V=p;W6(V|0,r|0,168)|0;a[b>>2]=0;do{if(e|0?(J=a[e+4>>2]|0,!((A|0)<1|(J|0)<1)):0){if((cq(e,0)|0)!=0?(a[e+16>>2]|0)==1:0){if((a[r+136>>2]|0)==1)w=kq(i)|0;else w=i;F=kq(e)|0}else g=5;do{if((g|0)==5)if((a[r+136>>2]|0)==1){F=wq(e,0)|0;w=wq(i,0)|0;break}else{F=Xb(e)|0;w=i;break}}while(0);Y=r+160|0;o=a[Y>>2]|0;if((o|0)==3){if((t|0)>0)g=14}else if((t|0)>0&(o|0)==4)g=14;if((g|0)==14){i=$F(U(A<<3,a[F>>2]|0)|0)|0;J=bj(F,t,c)|0;cj(A,J,0,r,0,0,i,0,0,b);uj(A,F,t,c,l,i);qO(A,F,l,n,a[r+124>>2]|0,+s[r+144>>3],a[Y>>2]|0,t,c);rq(J);L2(i);if((F|0)==(e|0))break;rq(F);break}W=fu(a[r+44>>2]|0,a[r+48>>2]|0)|0;a[W+16>>2]=a[r+40>>2];z=Bu(F,w,f,W)|0;h=Eu(z)|0;if(!(a[h+32>>2]|0))d=l;else d=$F(U(A<<3,a[h+4>>2]|0)|0)|0;o=lj(F)|0;if(+s[r>>3]==-1.0001234)s[r>>3]=(o|0)==0?-1.0:-1.8;E=r+136|0;C=r+24|0;I=r+16|0;Z=r+104|0;G=r+96|0;m=A<<3;Q=r+132|0;L=a[15712]|0;y=r+80|0;while(1){A:do{switch(a[E>>2]|0){case 0:{switch(a[Q>>2]|0){case 0:{Aj(A,a[h+8>>2]|0,r,a[h+24>>2]|0,d,b);break A}case 2:{o=h+8|0;g=29;break}case 3:{o=h+8|0;B=a[o>>2]|0;if((a[B>>2]|0)>1e4)if(true)g=29;else{}else g=30;break}default:{B=a[h+8>>2]|0;g=30}}if((g|0)==29){OT(A,a[o>>2]|0,r,a[h+24>>2]|0,d,b);break A}else if((g|0)==30){ej(A,B,r,a[h+24>>2]|0,d,b);break A}break}case 1:{s[G>>3]=1.0;a[Z>>2]=1;v=(a[h+28>>2]|0)==0;u=v?.5:.05;a[y>>2]=v?500:100;v=(a[h+32>>2]|0)==0;o=h+8|0;B=h+12|0;g=h+24|0;ij(A,a[o>>2]|0,a[B>>2]|0,r,a[g>>2]|0,d,u,b);if(v){a[I>>2]=0;s[G>>3]=.05;a[Z>>2]=0;ij(A,a[o>>2]|0,a[B>>2]|0,r,a[g>>2]|0,d,u*.5,b);ij(A,a[o>>2]|0,a[B>>2]|0,r,a[g>>2]|0,d,u*.125,b);ij(A,a[o>>2]|0,a[B>>2]|0,r,a[g>>2]|0,d,u*.03125,b)}break}default:{}}}while(0);g=a[h+32>>2]|0;if(!g){g=39;break}if(a[b>>2]|0){g=35;break}v=a[h+16>>2]|0;o=a[h+40>>2]|0;if(!(a[g+32>>2]|0))B=l;else B=$F(U(m,a[g+4>>2]|0)|0)|0;wj(A,a[g+8>>2]|0,v,a[g+20>>2]|0,d,B,o,+s[C>>3]*.001);L2(d);a[I>>2]=0;s[C>>3]=+s[C>>3]*.75;a[Z>>2]=0;s[G>>3]=((a[(a[g+28>>2]|0)+40>>2]|0)+-9|0)>>>0<2?1.0:.1;h=g;d=B}if((g|0)==35)L2(d);else if((g|0)==39){Tu(A,F,r,f,l,b);if(0){}if((A|0)==2)tj(J,2,l);u=+s[r+152>>3];if(u!=0.0)kj(J,A,l,u);qO(A,F,l,n,a[r+124>>2]|0,+s[r+144>>3],a[Y>>2]|0,t,c)}W6(r|0,V|0,168)|0;if((F|0)!=(e|0))rq(F);if(!((w|0)==0|(w|0)==(i|0)))rq(w);au(W);nu(z)}}while(0);k=p;return}function bj(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0;Z=k;k=k+16|0;I=Z;v=a[A+20>>2]|0;E=a[A+24>>2]|0;C=$F(a[A>>2]<<2)|0;r=0;while(1){if((r|0)>=(a[A>>2]|0)){r=0;break}a[C+(r<<2)>>2]=1;r=r+1|0}while(1){if((r|0)>=(e|0)){r=0;i=0;break}a[C+(a[i+(r<<2)>>2]<<2)>>2]=-1;r=r+1|0}while(1){b=a[A>>2]|0;if((i|0)>=(b|0)){i=0;e=0;break}e=C+(i<<2)|0;if((a[e>>2]|0)>0){a[e>>2]=r;r=r+1|0}i=i+1|0}A:while(1){while(1){if((e|0)>=(b|0))break A;if((a[C+(e<<2)>>2]|0)>=0)break;e=e+1|0}c=e+1|0;s=a[v+(c<<2)>>2]|0;t=a[v+(e<<2)>>2]|0;while(1){if((t|0)>=(s|0)){e=c;continue A}f=a[E+(t<<2)>>2]|0;e:do{if((a[C+(f<<2)>>2]|0)>-1)i=i+1|0;else{l=a[v+(f+1<<2)>>2]|0;n=a[v+(f<<2)>>2]|0;while(1){if((n|0)>=(l|0))break e;f=a[E+(n<<2)>>2]|0;if((f|0)!=(e|0))i=((a[C+(f<<2)>>2]|0)>>>31^1)+i|0;n=n+1|0}}}while(0);t=t+1|0}}e=i<<2;if((i|0)>0){d=$F(e)|0;B=$F(e)|0;o=B;h=d}else{o=0;h=0;d=0;B=0}g=a[15712]|0;e=0;f=0;A:while(1){i=a[A>>2]|0;while(1){if((e|0)>=(i|0))break A;w=C+(e<<2)|0;if((a[w>>2]|0)>=0)break;e=e+1|0}b=e+1|0;u=v+(b<<2)|0;s=a[v+(e<<2)>>2]|0;i=f;while(1){if((s|0)>=(a[u>>2]|0)){e=b;f=i;continue A}f=E+(s<<2)|0;n=a[f>>2]|0;e:do{if((a[C+(n<<2)>>2]|0)>-1){a[h+(i<<2)>>2]=a[w>>2];a[o+(i<<2)>>2]=a[C+(a[f>>2]<<2)>>2];i=i+1|0}else{c=v+(n+1<<2)|0;t=a[v+(n<<2)>>2]|0;while(1){if((t|0)>=(a[c>>2]|0))break e;f=E+(t<<2)|0;l=a[f>>2]|0;do{if((l|0)!=(e|0)?(a[C+(l<<2)>>2]|0)>-1:0){a[h+(i<<2)>>2]=a[w>>2];l=i+1|0;a[o+(i<<2)>>2]=a[C+(a[f>>2]<<2)>>2];n=a[w>>2]|0;i=a[C+(a[f>>2]<<2)>>2]|0;if((n|0)!=68)if((i|0)==68)i=68;else{i=l;break}a[I>>2]=n;a[I+4>>2]=i;f3(g,92380,I)|0;i=l}}while(0);t=t+1|0}}}while(0);s=s+1|0}}I=hq(f,r,r,h,o,0,8,8)|0;L2(d);L2(B);L2(C);k=Z;return I|0}function uj(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;var l=0,t=0,c=0.0,b=0,u=0,w=0,k=0,o=0,h=0;o=$F(a[e>>2]<<2)|0;l=0;while(1){if((l|0)>=(a[e>>2]|0)){l=0;break}a[o+(l<<2)>>2]=1;l=l+1|0}while(1){if((l|0)>=(i|0)){l=0;b=0;break}t=a[r+(l<<2)>>2]|0;if((t|0)>-1?(t|0)<(a[e>>2]|0):0)a[o+(t<<2)>>2]=-1;l=l+1|0}while(1){w=a[e>>2]|0;if((b|0)>=(w|0)){b=0;break}t=o+(b<<2)|0;if((a[t>>2]|0)>-1){a[t>>2]=l;l=l+1|0}b=b+1|0}while(1){if((b|0)>=(w|0))break;l=a[o+(b<<2)>>2]|0;A:do{if((l|0)>-1){u=U(b,A)|0;t=U(l,A)|0;l=0;while(1){if((l|0)>=(A|0))break A;s[f+(l+u<<3)>>3]=+s[n+(t+l<<3)>>3];l=l+1|0}}}while(0);b=b+1|0}k=e+20|0;n=e+24|0;w=0;while(1){if((w|0)>=(i|0))break;e=a[r+(w<<2)>>2]|0;l=a[k>>2]|0;b=a[l+(e+1<<2)>>2]|0;l=a[l+(e<<2)>>2]|0;u=b-l|0;e=U(e,A)|0;t=0;while(1){if((t|0)>=(A|0))break;s[f+(t+e<<3)>>3]=0.0;t=t+1|0}while(1){if((l|0)<(b|0))t=0;else break;while(1){if((t|0)>=(A|0))break;c=+s[f+((U(a[(a[n>>2]|0)+(l<<2)>>2]|0,A)|0)+t<<3)>>3];h=f+(t+e<<3)|0;s[h>>3]=+s[h>>3]+c;t=t+1|0}l=l+1|0}c=1.0/+(u|0);l=0;while(1){if((l|0)>=(A|0))break;h=f+(l+e<<3)|0;s[h>>3]=+s[h>>3]*c;l=l+1|0}w=w+1|0}L2(o);return}function wj(A,e,i,r,f,n,l,t){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;t=+t;var c=0,b=0,u=0,w=0,o=0,h=0.0;w=k;k=k+16|0;u=w;a[u>>2]=n;zb(i,0,f,0,u,0,A);A:do{if((l+-1|0)>>>0<6){nj(A,e,a[u>>2]|0);c=a[r>>2]|0;b=a[r+20>>2]|0;n=a[r+24>>2]|0;e=0;e:while(1){if((e|0)>=(c|0))break A;l=e+1|0;r=b+(l<<2)|0;e=a[b+(e<<2)>>2]|0;i:while(1){e=e+1|0;if((e|0)>=(a[r>>2]|0)){e=l;continue e}f=n+(e<<2)|0;i=0;while(1){if((i|0)>=(A|0))continue i;h=(+Ub()+-.5)*t;o=(a[u>>2]|0)+((U(a[f>>2]|0,A)|0)+i<<3)|0;s[o>>3]=+s[o>>3]+h;i=i+1|0}}}}}while(0);k=w;return}function kj(A,e,i,r){A=A|0;e=e|0;i=i|0;r=+r;var f=0,a=0.0,n=0,l=0,t=0,c=0,b=0,u=0.0,w=0.0;c=k;k=k+16|0;t=c;f=0;while(1){if((f|0)>=(e|0)){n=0;break}s[t+(f<<3)>>3]=0.0;f=f+1|0}while(1){if((n|0)>=(A|0))break;l=U(n,e)|0;f=0;while(1){if((f|0)>=(e|0))break;b=t+(f<<3)|0;s[b>>3]=+s[b>>3]+ +s[i+(f+l<<3)>>3];f=f+1|0}n=n+1|0}a=1.0/+(A|0);f=0;while(1){if((f|0)>=(e|0)){n=0;break}b=t+(f<<3)|0;s[b>>3]=+s[b>>3]*a;f=f+1|0}while(1){if((n|0)>=(A|0))break;l=U(n,e)|0;f=0;while(1){if((f|0)>=(e|0))break;b=i+(f+l<<3)|0;s[b>>3]=+s[b>>3]-+s[t+(f<<3)>>3];f=f+1|0}n=n+1|0}r=r*-.017453277777777776;a=+D(+r);r=+M(+r);f=0;while(1){if((f|0)>=(A|0))break;b=U(f,e)|0;t=i+(b<<3)|0;u=+s[t>>3];b=i+(b+1<<3)|0;w=+s[b>>3];s[t>>3]=w*r+u*a;s[b>>3]=w*a-u*r;f=f+1|0}k=c;return}function oj(A,e,i,r,f,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=+n;l=l|0;var t=0,c=0,b=0,u=0;u=(cq(e,0)|0)==0;t=(a[e+16>>2]|0)==1;if(u)if(t)t=kq(tq(e,0)|0)|0;else c=5;else if(t)t=e;else c=5;if((c|0)==5)t=Xb(e)|0;u=kq(t)|0;a[l>>2]=0;t=a[u>>2]|0;if(!i){$F(U(A<<3,t)|0)|0;re()}b=zu(u,A,0.0,a[i>>2]|0,(r|0)==0?0:2,1)|0;if(!b)a[l>>2]=-1;else{s[b+40>>3]=.1;a[b+24>>2]=5;+Du(b,A,a[i>>2]|0,f,n);c=U(t,A)|0;r=b+32|0;t=0;while(1){if((t|0)>=(c|0))break;l=(a[i>>2]|0)+(t<<3)|0;s[l>>3]=+s[l>>3]/+s[r>>3];t=t+1|0}Yu(b)}if((u|0)!=(e|0))rq(u);return}function hj(A,e,i,r,f,a,n,l){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;n=+n;l=l|0;oj(A,i,r,f,a,n,l);return}function dj(A,e,i,r,f,n){A=A|0;e=e|0;i=i|0;r=+r;f=+f;n=n|0;var l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0.0;E=a[e>>2]|0;C=a[e+20>>2]|0;g=a[e+24>>2]|0;v=a[e+28>>2]|0;if(!(cq(e,0)|0))gA(95795,92387,37,92404);A=$F(56)|0;c=A+20|0;a[c>>2]=0;a[A+24>>2]=2;a[A+12>>2]=0;t=$F(16)|0;a[c>>2]=t;s[t>>3]=r;s[t+8>>3]=f;a[A+16>>2]=105;s[A+40>>3]=.01;a[A+48>>2]=~~+z(+ +(a[e>>2]|0));t=e+8|0;c=A+4|0;a[c>>2]=fq(E,E,(a[t>>2]|0)+E|0,1,1)|0;t=fq(E,E,(a[t>>2]|0)+E|0,1,1)|0;a[A+8>>2]=t;c=a[c>>2]|0;b=a[c+28>>2]|0;u=a[t+28>>2]|0;if((t|0)==0|(c|0)==0){Wu(A);A=0}else{w=a[c+20>>2]|0;k=a[c+24>>2]|0;o=a[t+20>>2]|0;h=a[t+24>>2]|0;a[o>>2]=0;a[w>>2]=0;e=0;i=0;while(1){if((e|0)>=(E|0))break;d=e+1|0;B=C+(d<<2)|0;r=0.0;f=0.0;l=a[C+(e<<2)>>2]|0;while(1){if((l|0)>=(a[B>>2]|0))break;n=a[g+(l<<2)>>2]|0;if((n|0)!=(e|0)){I=+s[v+(l<<3)>>3];I=I>=0.0?I:-I;I=I>.01?I:.01;a[k+(i<<2)>>2]=n;a[h+(i<<2)>>2]=n;n=b+(i<<3)|0;s[n>>3]=-1.0;s[u+(i<<3)>>3]=-I;r=+s[n>>3]+r;f=f-I;i=i+1|0}l=l+1|0}a[k+(i<<2)>>2]=e;a[h+(i<<2)>>2]=e;s[b+(i<<3)>>3]=-r;s[u+(i<<3)>>3]=-f;i=i+1|0;a[w+(d<<2)>>2]=i;a[o+(d<<2)>>2]=i;e=d}a[c+8>>2]=i;a[t+8>>2]=i}return A|0}function Bj(A){A=A|0;Wu(A);return}function gj(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;return+ +Mu(A,e,i,r,.001)}function vj(A,e){A=A|0;e=+e;var i=0,r=0,f=0,n=0;if((a[A+16>>2]|0)==1)i=tq(A,0)|0;else i=Xb(A)|0;f=a[i+28>>2]|0;A:do{if(e!=1.0){r=a[i+8>>2]|0;A=0;while(1){if((A|0)>=(r|0))break A;n=f+(A<<3)|0;s[n>>3]=+s[n>>3]*e;A=A+1|0}}}while(0);return i|0}function Ej(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,b=0.0;t=a[e>>2]|0;a[r>>2]=0;c=U(t,A)|0;r=0;while(1){if((r|0)>=(c|0)){r=1;f=1;break}s[i+(r<<3)>>3]=+Ub()*100.0;r=r+1|0}while(1){if((f|0)>=(t|0))break;l=U(f,A)|0;n=0;while(1){if((n|0)>=(A|0))break;b=+s[i+(n<<3)>>3]-+s[i+(n+l<<3)>>3];if((b>=0.0?b:-b)>1.0e-16){r=0;f=t;break}else n=n+1|0}f=f+1|0}A:do{if(r|0){f8(1);r=0;while(1){if((r|0)>=(c|0))break A;s[i+(r<<3)>>3]=+Ub()*100.0;r=r+1|0}}}while(0);r=vj(e,1.0)|0;if(!(cq(r,0)|0))gA(92430,92387,164,92466);else{c=dj(0,r,0,101.0e5,100.0,0)|0;+gj(c,A,i,300);Bj(c);c=dj(0,r,0,101.0e3,100.0,0)|0;+gj(c,A,i,300);Bj(c);c=dj(0,r,0,1010.0,100.0,0)|0;+gj(c,A,i,300);Bj(c);c=dj(0,r,0,10.1,100.0,0)|0;+gj(c,A,i,300);Bj(c);$b(0.0,0.0,490.0,700.0,a[e>>2]|0,A,i);rq(r);return}}function Cj(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;var f=0,n=0,l=0,t=0,c=0,b=0,u=0;c=$F((gh(A)|0)<<4)|0;l=(r|0)!=0;t=e+8|0;n=cd(A)|0;f=0;while(1){if(!n)break;if(l)f=f+((Z1(Vh(n)|0,92481,11)|0)==0&1)|0;u=a[n+16>>2]|0;b=a[u+120>>2]<<1;s[c+(b<<3)>>3]=+s[u+32>>3]*.5+ +s[e>>3];s[c+((b|1)<<3)>>3]=+s[u+40>>3]*.5+ +s[t>>3];n=sd(A,n)|0}if(l&(f|0)!=0){e=$F(f<<2)|0;n=cd(A)|0;f=0;while(1){if(!n)break;if(!(Z1(Vh(n)|0,92481,11)|0)){a[e+(f<<2)>>2]=a[(a[n+16>>2]|0)+120>>2];f=f+1|0}n=sd(A,n)|0}a[r>>2]=e;a[i>>2]=f}return c|0}function Ij(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0.0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0,m=0;G=k;k=k+32|0;C=G+16|0;E=G+8|0;v=G;if(A){I=gh(A)|0;Z=vh(A)|0;e=cd(A)|0;r=0;while(1){if(!e)break;a[(a[e+16>>2]|0)+120>>2]=r;e=sd(A,e)|0;r=r+1|0}d=Z<<2;h=$F(d)|0;d=$F(d)|0;e=Z<<3;B=$F(e)|0;w=Yo(A,2,101541,0)|0;g=(i|0)!=0;if(g){r=Yo(A,2,92493,0)|0;o=qF(e)|0;u=o}else{u=0;r=0;o=0}t=(w|0)==0;c=(r|0)==0;l=cd(A)|0;e=0;while(1){if(!l)break;b=a[(a[l+16>>2]|0)+120>>2]|0;n=Oo(A,l)|0;while(1){if(!n)break;a[h+(e<<2)>>2]=b;a[d+(e<<2)>>2]=a[(a[(a[((a[n>>2]&3|0)==2?n:n+-48|0)+40>>2]|0)+16>>2]|0)+120>>2];if(!t?(m=Uo(n,w)|0,a[E>>2]=v,(J3(m,101209,E)|0)==1):0)f=+s[v>>3];else{s[v>>3]=1.0;f=1.0}s[B+(e<<3)>>3]=f;if(!c){m=Uo(n,r)|0;a[C>>2]=v;if((J3(m,101209,C)|0)==1)f=+s[v>>3];else{s[v>>3]=1.0;f=1.0}s[u+(e<<3)>>3]=f}n=_o(A,n)|0;e=e+1|0}l=sd(A,l)|0}e=hq(Z,I,I,h,d,B,1,8)|0;if(g)a[i>>2]=hq(Z,I,I,h,d,o,1,8)|0;L2(h);L2(d);L2(B);if(u)L2(o)}else e=0;k=G;return e|0}function Zj(A){A=A|0;var e=0,i=0,r=0.0,f=0,n=0.0,l=0.0,t=0.0,c=0,b=0,u=0,w=0.0,o=0.0;b=k;k=k+16|0;c=b;A:do{if(Gj(A,c)|0){e=a[(a[(cd(A)|0)+16>>2]|0)+132>>2]|0;n=+s[e>>3];r=+s[e+8>>3];e=cd(A)|0;while(1){if(!e)break;f=a[(a[e+16>>2]|0)+132>>2]|0;s[f>>3]=+s[f>>3]-n;f=f+8|0;s[f>>3]=+s[f>>3]-r;e=sd(A,e)|0}e=(n!=0.0|r!=0.0)&1;i=cd(A)|0;while(1){if(!i)break A;f=Oo(A,i)|0;if(f|0)break;i=sd(A,i)|0}u=a[f>>2]&3;i=a[(a[(a[((u|0)==2?f:f+-48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;f=a[(a[(a[((u|0)==3?f:f+48|0)+40>>2]|0)+16>>2]|0)+132>>2]|0;l=+s[f+8>>3];t=+s[f>>3];r=+N(+(+s[i+8>>3]-l),+(+s[i>>3]-t));r=+s[c>>3]-r;s[c>>3]=r;if(r!=0.0){n=+D(+r);r=+M(+r);e=cd(A)|0;while(1){if(!e){e=1;break A}c=a[(a[e+16>>2]|0)+132>>2]|0;o=+s[c>>3]-t;u=c+8|0;w=+s[u>>3]-l;s[c>>3]=o*n+t-w*r;s[u>>3]=o*r+l+w*n;e=sd(A,e)|0}}}else e=0}while(0);k=b;return e|0}function Gj(A,e){A=A|0;e=e|0;var i=0.0,f=0,n=0;n=k;k=k+16|0;f=n;A=Ho(A,92497)|0;do{if((A|0)!=0?(r[A>>0]|0)!=0:0){i=+A8(A,f);if((a[f>>2]|0)==(A|0))if(!((vR(A)|0)<<24>>24)){A=0;break}else i=0.0;while(1){if(!(i>180.0))break;i=i+-360.0}while(1){if(!(i<=-180.0))break;i=i+360.0}s[e>>3]=i*.017453292519943295;A=1}else A=0}while(0);k=n;return A|0}function mj(A,e,i){A=A|0;e=e|0;i=i|0;var r=0;r=Ho(A,92507)|0;return Qj(A,(r|0)==0?i|0?i:195059:r,e)|0}function Qj(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0.0;b=k;k=k+32|0;s=b+16|0;t=b+8|0;l=b;if((e|0)!=0?(r[e>>0]|0)!=0:0){f=17896;while(1){n=a[f+4>>2]|0;if(!n)break;if(!(T1(e,n,a[f+8>>2]|0)|0)){c=6;break}f=f+16|0}if((c|0)==6){if(!(a[f+12>>2]|0)){a[l>>2]=n;ao(0,92515,l)|0;f=17896}l=a[f>>2]|0;a[i>>2]=l;a[i+4>>2]=a[f+12>>2];if((l|0)==18)Lj(A,e+(a[f+8>>2]|0)|0,i)}if(!(a[f+4>>2]|0)){f=ER(e,63)|0;if(f<<24>>24==63){a[t>>2]=e;ao(0,92557,t)|0;f=0}else f=f&255;f=(f|0)==0;a[i>>2]=f&1;f=f?92604:135709;c=15}}else{a[i>>2]=0;f=135709;c=15}if((c|0)==15)a[i+4>>2]=f;if(0){}k=b;return i|0}function Lj(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0,n=0;r=k;k=k+16|0;f=r;n=r+4|0;a[f>>2]=n;f=(J3(e,137395,f)|0)>0;e=a[n>>2]|0;a[i+8>>2]=f&(e|0)>-1?e:1e3;s[i+16>>3]=+oR(A,Yo(A,0,92648,0)|0,-4.0,-1.0e10);k=r;return}function yj(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0;l=k;k=k+16|0;n=l+8|0;f=l;do{if((gh(A)|0)>=2){i=Zj(A)|0;i=(Wj(A)|0)+i|0;r=a[e>>2]|0;if(r){if(0){}if(r>>>0>2){switch(r|0){case 3:{r=zP(A,1)|0;break}case 4:{r=zP(A,0)|0;break}case 6:case 5:{r=0;break}case 10:case 9:case 7:case 8:case 14:case 13:case 11:case 12:{oP(A,r)|0;r=0;break}case 15:{r=zP(A,-1)|0;break}default:{a[n>>2]=a[e+4>>2];ao(0,93e3,n)|0;r=0}}i=r+i|0;break}if(zj(A)|0){Yj();L2(a[46845]|0);a[46845]=0;break}Dj(A);if((a[e>>2]|0)==2)r=Mj()|0;else r=Fj()|0;if(r|0)Vj();Yj();L2(a[46845]|0);a[46845]=0;i=r+i|0}}else i=0}while(0);k=l;return i|0}function Wj(A){A=A|0;var e=0,i=0.0,r=0,f=0,n=0.0,l=0,t=0,c=0,b=0;b=k;k=k+48|0;l=b+24|0;f=b+16|0;t=b;e=Ho(A,140742)|0;A:do{if(((e|0)!=0?(c=t+8|0,a[f>>2]=t,a[f+4>>2]=c,r=J3(e,105503,f)|0,(r|0)!=0):0)?(n=+s[t>>3],!(+W(+n)<1.0e-09)):0){if((r|0)!=1){i=+s[c>>3];if(+W(+i)<1.0e-09){e=0;break}}else{s[c>>3]=n;i=n}if(!(i==1.0&n==1.0)){if(0){}e=cd(A)|0;while(1){if(!e){e=1;break A}l=a[(a[e+16>>2]|0)+132>>2]|0;s[l>>3]=+s[l>>3]*+s[t>>3];l=l+8|0;s[l>>3]=+s[l>>3]*+s[c>>3];e=sd(A,e)|0}}else e=0}else e=0}while(0);k=b;return e|0}function zj(A){A=A|0;var e=0,i=0,f=0,n=0.0,l=0.0,t=0,b=0,u=0,w=0;u=k;k=k+16|0;t=u;a[46854]=gh(A)|0;nS();a[46869]=$F((a[46854]|0)*96|0)|0;f=cd(A)|0;e=a[46869]|0;qj(t,A);n=+c[t>>2];l=+c[t+4>>2];t=(r[t+8>>0]|0)==0;l=t?l:l*.013888888888888888;n=t?n:n*.013888888888888888;t=t?2:1;i=0;while(1){if((i|0)>=(a[46854]|0)){e=0;break}w=a[(a[f+16>>2]|0)+132>>2]|0;s[e+8>>3]=+s[w>>3];s[e+16>>3]=+s[w+8>>3];if(L5[t&3](e+40|0,f,n,l)|0){b=4;break}a[e+24>>2]=i;a[e+28>>2]=1;a[e>>2]=f;a[e+88>>2]=0;e=e+96|0;i=i+1|0;f=sd(A,f)|0}if((b|0)==4){L2(a[46869]|0);a[46869]=0;e=1}k=u;return e|0}function Yj(){var A=0,e=0;A=a[46869]|0;e=0;while(1){if((e|0)>=(a[46854]|0))break;iK(A+40|0);A=A+96|0;e=e+1|0}eK();MS();L2(a[46869]|0);return}function Dj(A){A=A|0;var e=0,i=0,f=0,n=0.0,l=0.0,t=0.0,c=0.0,b=0,u=0,w=0,o=0,h=0.0,d=0.0,B=0.0,g=0.0;w=k;k=k+32|0;b=w+16|0;u=w;o=a[46869]|0;l=+s[o+8>>3];c=+s[o+16>>3];f=a[46854]|0;e=o;i=1;n=+s[o+40>>3]+l;l=+s[o+56>>3]+l;t=+s[o+48>>3]+c;c=+s[o+64>>3]+c;while(1){if((i|0)>=(f|0))break;B=+s[e+104>>3];h=+s[e+112>>3];g=+s[e+136>>3]+B;d=+s[e+144>>3]+h;B=+s[e+152>>3]+B;h=+s[e+160>>3]+h;e=e+96|0;i=i+1|0;n=g l?B:l;t=d c?h:c}e=Ho(A,93100)|0;if(e|0?r[e>>0]|0:0)s[173]=+$3(e);B=+s[173];g=B*(c-t);B=B*(l-n);s[b>>3]=n-B;s[b+8>>3]=t-g;s[u>>3]=B+l;s[u+8>>3]=g+c;xj(b,u);k=w;return}function Mj(){var A=0,e=0,i=0,r=0;i=k;k=k+16|0;e=i;if(Jj(0)|0){pj();A=0;do{_j();A=A+1|0}while((Jj(A)|0)!=0);if(true)A=1;else{}}else A=0;k=i;return A|0}function Fj(){var A=0,e=0,i=0,r=0,f=0,n=0,l=0,t=0;t=k;k=k+16|0;l=t+8|0;n=t;e=Jj(0)|0;if(!e)A=0;else{pj();Nj(0);JK(0,1);A=0;r=0;i=0;while(1){Xj();i=i+1|0;f=Jj(i)|0;if(!f)break;e=(f|0)<(e|0)?0:r+1|0;a[46846]=1;if(e){Hj();A=A+1|0}Nj(1);JK(0,1);r=e;e=f}if(0){}Uj();A=1}k=t;return A|0}function Vj(){var A=0,e=0,i=0,r=0;i=a[46854]|0;A=a[46869]|0;e=0;while(1){if((e|0)>=(i|0))break;r=a[(a[(a[A>>2]|0)+16>>2]|0)+132>>2]|0;s[r>>3]=+s[A+8>>3];s[r+8>>3]=+s[A+16>>3];A=A+96|0;e=e+1|0}return}function Jj(A){A=A|0;var e=0,i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+48|0;w=h+24|0;u=h+8|0;o=h;i=a[46869]|0;r=a[46854]|0;e=0;while(1){if((e|0)>=(r|0)){f=0;e=0;break}a[i+(e*96|0)+32>>2]=0;e=e+1|0}A:while(1){if((e|0)>=(r+-1|0))break;b=i+96|0;e=e+1|0;c=i+8|0;s=i+40|0;t=i+32|0;n=b;l=e;while(1){if((l|0)>=(r|0)){i=b;continue A}r=n+8|0;a[u>>2]=a[c>>2];a[u+4>>2]=a[c+4>>2];a[u+8>>2]=a[c+8>>2];a[u+12>>2]=a[c+12>>2];a[w>>2]=a[r>>2];a[w+4>>2]=a[r+4>>2];a[w+8>>2]=a[r+8>>2];a[w+12>>2]=a[r+12>>2];if(!(bK(u,s,w,n+40|0)|0))i=f;else{a[t>>2]=1;a[n+32>>2]=1;i=f+1|0}n=n+96|0;l=l+1|0;f=i;r=a[46854]|0}}if(0>1){w=a[15712]|0;a[o>>2]=A;a[o+4>>2]=f;f3(w,93081,o)|0}k=h;return f|0}function pj(){var A=0,e=0,i=0,r=0.0,f=0,n=0.0,l=0,t=0,c=0,b=0,u=0,w=0;Oj();c=a[46848]|0;b=a[46869]|0;A=a[46845]|0;A:while(1){l=A;if(A>>>0>=c>>>0)break;e=A+4|0;if(e>>>0>=c>>>0){A=e;continue}f=a[e>>2]|0;i=a[A>>2]|0;n=+s[i>>3];if(+s[f>>3]!=n){A=e;continue}r=+s[i+8>>3];if(+s[f+8>>3]!=r){A=e;continue}t=A+8|0;f=2;while(1){if(t>>>0>=c>>>0)break;i=a[t>>2]|0;if(!(+s[i>>3]==n)){u=11;break}if(!(+s[i+8>>3]==r)){u=11;break}t=t+4|0;f=f+1|0}if((u|0)==11){u=0;i=a[t>>2]|0;if(+s[i+8>>3]==r){r=(+s[i>>3]-n)/+(f|0);i=(((t>>>0>e>>>0?t:e)+-1+(0-l)|0)>>>2)+1|0;A=1;while(1){if((A|0)==(i|0)){A=t;continue A}l=a[e>>2]|0;s[l>>3]=+s[l>>3]+r*+(A|0);A=A+1|0;e=e+4|0}}}while(1){if(e>>>0>=t>>>0){A=t;continue A}f=a[A>>2]|0;w=a[f+16>>2]|0;l=a[e>>2]|0;i=a[l+16>>2]|0;s[l>>3]=(+s[b+(w*96|0)+56>>3]-+s[b+(w*96|0)+40>>3]+ +s[b+(i*96|0)+56>>3]-+s[b+(i*96|0)+40>>3])*.5+ +s[f>>3];e=e+4|0;A=A+4|0}}return}function Nj(A){A=A|0;var e=0.0,i=0.0,r=0.0,f=0,n=0.0,l=0,t=0,c=0;if(A|0)Oj();l=a[46845]|0;t=a[l>>2]|0;i=+s[t>>3];s[23272]=i;c=a[46854]|0;f=1;n=+s[t>>3];while(1){if((f|0)>=(c|0))break;A=a[l+(f<<2)>>2]|0;e=+s[A>>3];if(e>3]}else{r=e;e=i}f=f+1|0;i=e;n=r>n?r:n}r=+s[t+8>>3];s[23273]=r;s[23275]=+s[(a[l+(c+-1<<2)>>2]|0)+8>>3]-r;s[23274]=n-i;return}function Rj(){var A=0;A=a[46847]|0;if(A>>>0<(a[46848]|0)>>>0){a[46847]=A+4;A=a[A>>2]|0}else A=0;return A|0}function Xj(){var A=0,e=0,i=0;A=a[46869]|0;Tj();i=(a[46846]|0)==0;e=0;while(1){if((e|0)>=(a[46854]|0))break;if(!(i?!(a[A+32>>2]|0):0))jj(A);A=A+96|0;e=e+1|0}return}function Hj(){var A=0,e=0,i=0,r=0.0,f=0.0,a=0.0,n=0.0,l=0.0,t=0.0;A=k;k=k+32|0;i=A+16|0;e=A;t=+s[23268];l=+s[23266];n=+s[23269];f=+s[23267];r=(l-f)*.05;a=(t-n)*.05;s[e>>3]=a+t;s[e+8>>3]=l+r;s[i>>3]=n-a;s[i+8>>3]=f-r;xj(i,e);k=A;return}function Uj(){gS();ES();IK();$P();return}function xj(A,e){A=A|0;e=e|0;var i=0.0,r=0.0,f=0.0,a=0.0;a=+s[A>>3];s[23269]=a;f=+s[e>>3];s[23268]=f;i=+s[A+8>>3];s[23267]=i;r=+s[e+8>>3];s[23266]=r;s[23258]=a;s[23260]=a;s[23262]=f;s[23264]=f;s[23265]=r;s[23261]=r;s[23263]=i;s[23259]=i;return}function Tj(){var A=0,e=0.0,i=0.0,r=0.0,f=0.0,n=0,l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0.0,B=0.0,g=0.0,v=0.0;u=a[46869]|0;n=u+8|0;f=+lS(n,186064);r=+lS(n,186080);i=+lS(n,186096);A=1;e=+lS(n,186112);n=u;l=u;t=u;c=u;while(1){b=u+96|0;if((A|0)>=(a[46854]|0))break;h=u+104|0;d=+lS(h,186064);w=d >2]|0;w=c+8|0;e=0.0;i=0.0;r=0.0;c=a[c>>2]|0;while(1){f=a[c>>2]|0;if(!f)break;B=c+8|0;d=f+8|0;a[n>>2]=a[w>>2];a[n+4>>2]=a[w+4>>2];a[n+8>>2]=a[w+8>>2];a[n+12>>2]=a[w+12>>2];a[l>>2]=a[B>>2];a[l+4>>2]=a[B+4>>2];a[l+8>>2]=a[B+8>>2];a[l+12>>2]=a[B+12>>2];a[t>>2]=a[d>>2];a[t+4>>2]=a[d+4>>2];a[t+8>>2]=a[d+8>>2];a[t+12>>2]=a[d+12>>2];h=+Pj(n,l,t);a[n>>2]=a[w>>2];a[n+4>>2]=a[w+4>>2];a[n+8>>2]=a[w+8>>2];a[n+12>>2]=a[w+12>>2];a[l>>2]=a[B>>2];a[l+4>>2]=a[B+4>>2];a[l+8>>2]=a[B+8>>2];a[l+12>>2]=a[B+12>>2];a[t>>2]=a[d>>2];a[t+4>>2]=a[d+4>>2];a[t+8>>2]=a[d+8>>2];a[t+12>>2]=a[d+12>>2];Sj(n,l,t,b,u);e=+s[u>>3]*h+e;i=+s[b>>3]*h+i;r=h+r;c=f}s[A+8>>3]=i/r;s[A+16>>3]=e/r;k=o;return}function Pj(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0.0,a=0.0;r=+s[e+8>>3];a=+s[i+8>>3];f=+s[A+8>>3];return+(+W(+((a-f)*+s[e>>3]+(r-a)*+s[A>>3]+ +s[i>>3]*(f-r)))*.5)}function Sj(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;s[r>>3]=(+s[e>>3]+ +s[A>>3]+ +s[i>>3])*.3333333333333333;s[f>>3]=(+s[e+8>>3]+ +s[A+8>>3]+ +s[i+8>>3])*.3333333333333333;return}function Oj(){var A=0,e=0,i=0,r=0;A=a[46845]|0;if(!A){A=$F(a[46854]<<2)|0;a[46845]=A;a[46848]=A+(a[46854]<<2)}i=a[46869]|0;MS();r=a[46854]|0;e=0;while(1){if((e|0)>=(r|0))break;a[A>>2]=i+8;a[i+88>>2]=0;a[i+28>>2]=1;i=i+96|0;A=A+4|0;e=e+1|0}K4(a[46845]|0,r,4,69);a[46847]=a[46845];return}function Kj(A,e){A=A|0;e=e|0;var i=0.0,r=0.0;A=a[A>>2]|0;e=a[e>>2]|0;i=+s[A+8>>3];r=+s[e+8>>3];if(!(i r)){r=+s[A>>3];i=+s[e>>3];if(ri&1}else A=1;else A=-1;return A|0}function _j(){var A=0,e=0,i=0,r=0;i=a[46854]|0;A=0;e=a[46869]|0;while(1){if((A|0)>=(i|0))break;r=e+8|0;s[r>>3]=+s[r>>3]*1.05;r=e+16|0;s[r>>3]=+s[r>>3]*1.05;A=A+1|0;e=e+96|0}return}function qj(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,s=0.0,b=0.0;t=k;k=k+48|0;l=t;n=t+24|0;i=Ho(e,93112)|0;if(!((i|0)!=0?($j(i,n,1.0,0.0)|0)!=0:0))f=3;do{if((f|0)==3){e=Ho(e,93116)|0;if(e|0?$j(e,n,.800000011920929,4.0)|0:0)break;c[n+4>>2]=4.0;c[n>>2]=4.0;r[n+8>>0]=1}}while(0);if(0){}a[A>>2]=a[n>>2];a[A+4>>2]=a[n+4>>2];a[A+8>>2]=a[n+8>>2];k=t;return}function $j(A,e,i,f){A=A|0;e=e|0;i=+i;f=+f;var n=0,l=0,t=0,s=0,b=0,u=0,w=0,o=0,h=0.0;w=k;k=k+16|0;b=w;t=w+12|0;s=w+8|0;while(1){n=r[A>>0]|0;l=A+1|0;if(!(m1(n<<24>>24)|0))break;else A=l}o=n<<24>>24==43;n=e+8|0;r[n>>0]=o&1;a[b>>2]=t;a[b+4>>2]=s;switch(J3(o?l:A,93154,b)|0){case 0:{A=0;break}case 1:{a[s>>2]=a[t>>2];u=5;break}default:u=5}if((u|0)==5){do{if(r[n>>0]|0){if(i>1.0){h=+c[t>>2]/i;c[e>>2]=h>f?f:h;i=+c[s>>2]/i;i=i>f?f:i;break}if(i<1.0){h=+c[t>>2]/i;c[e>>2]=h >2]/i;i=i >2]=a[t>>2];i=+c[s>>2];break}}else{c[e>>2]=+c[t>>2]/i+1.0;i=+c[s>>2]/i+1.0}}while(0);c[e+4>>2]=i;A=1}k=w;return A|0}function AP(A,e){A=A|0;e=e|0;var i=0,r=0;r=k;k=k+32|0;i=r;if((gh(A)|0)<2)A=0;else{Qj(A,e,i)|0;A=yj(A,i)|0}k=r;return A|0}function eP(A){A=A|0;return AP(A,Ho(A,92507)|0)|0}function iP(A,e){A=A|0;e=e|0;var i=0,f=0,n=0,l=0,t=0,s=0.0,b=0.0;t=k;k=k+48|0;l=t;n=t+24|0;i=Ho(e,93116)|0;if(!((i|0)!=0?($j(i,n,1.0,0.0)|0)!=0:0))f=3;do{if((f|0)==3){e=Ho(e,93112)|0;if(e|0?$j(e,n,1.25,3.200000047683716)|0:0)break;c[n+4>>2]=3.200000047683716;c[n>>2]=3.200000047683716;r[n+8>>0]=1}}while(0);if(0){}a[A>>2]=a[n>>2];a[A+4>>2]=a[n+4>>2];a[A+8>>2]=a[n+8>>2];k=t;return}function rP(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0,s=0,b=0,u=0,w=0,o=0;o=k;k=k+16|0;w=o;n=0;while(1){if((n|0)>=(i|0))break;a[r+(n<<2)>>2]=-1;n=n+1|0}a[r+(A<<2)>>2]=0;fP(f,A);A:do{if(!(a[e+8>>2]|0)){n=2147483647;e:while(1){if(!((aP(f,w)|0)<<24>>24))break A;t=a[w>>2]|0;n=a[r+(t<<2)>>2]|0;l=e+(t*20|0)|0;t=e+(t*20|0)+4|0;s=n+1|0;A=1;while(1){if((A|0)>=(a[l>>2]|0))continue e;b=a[(a[t>>2]|0)+(A<<2)>>2]|0;u=r+(b<<2)|0;if((a[u>>2]|0)<0){a[u>>2]=s;nP(f,b)|0}A=A+1|0}}}else{n=2147483647;e:while(1){if(!((aP(f,w)|0)<<24>>24))break A;s=a[w>>2]|0;n=a[r+(s<<2)>>2]|0;l=e+(s*20|0)|0;t=e+(s*20|0)+4|0;s=e+(s*20|0)+8|0;A=1;while(1){if((A|0)>=(a[l>>2]|0))continue e;b=a[(a[t>>2]|0)+(A<<2)>>2]|0;u=r+(b<<2)|0;if((a[u>>2]|0)<0){a[u>>2]=n+~~+c[(a[s>>2]|0)+(A<<2)>>2];nP(f,b)|0}A=A+1|0}}}}while(0);A=n+10|0;n=0;while(1){if((n|0)>=(i|0))break;l=r+(n<<2)|0;if((a[l>>2]|0)<0)a[l>>2]=A;n=n+1|0}k=o;return}function fP(A,e){A=A|0;e=e|0;a[a[A>>2]>>2]=e;a[A+12>>2]=0;a[A+8>>2]=1;return}function aP(A,e){A=A|0;e=e|0;var i=0,r=0;i=A+12|0;r=a[i>>2]|0;if((r|0)<(a[A+8>>2]|0)){A=a[A>>2]|0;a[i>>2]=r+1;a[e>>2]=a[A+(r<<2)>>2];A=1}else A=0;return A|0}function nP(A,e){A=A|0;e=e|0;var i=0,r=0;i=A+8|0;r=a[i>>2]|0;if((r|0)<(a[A+4>>2]|0)){A=a[A>>2]|0;a[i>>2]=r+1;a[A+(r<<2)>>2]=e;A=1}else A=0;return A|0}function lP(A,e){A=A|0;e=e|0;a[A>>2]=$F(e<<2)|0;a[A+4>>2]=e;a[A+8>>2]=0;a[A+12>>2]=0;return}function tP(A){A=A|0;L2(a[A>>2]|0);return}function cP(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0,n=0,l=0;if(true)n=0;else{}while(1){if((n|0)>=(A|0))break;l=e+(n<<2)|0;f=0;r=0.0;while(1){if((f|0)==(A|0))break;if((n|0)!=(f|0))r=+s[(a[l>>2]|0)+(f<<3)>>3]+r;f=f+1|0}s[(a[l>>2]|0)+(n<<3)>>3]=-r;n=n+1|0}return cO(e,i,A+-1|0)|0}function sP(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0.0;t=tU(e,e,0.0)|0;c=tU(e,e,0.0)|0;r=cd(A)|0;while(1){if(!r)break;i=Ah(A,r)|0;while(1){if(!i)break;n=a[i>>2]&3;f=(a[a[((n|0)==3?i:i+48|0)+40>>2]>>2]|0)>>>4;n=(a[a[((n|0)==2?i:i+-48|0)+40>>2]>>2]|0)>>>4;if((f|0)!=(n|0)){b=-1.0/+s[(a[i+16>>2]|0)+136>>3];s[(a[t+(n<<2)>>2]|0)+(f<<3)>>3]=b;s[(a[t+(f<<2)>>2]|0)+(n<<3)>>3]=b}i=eh(A,i,r)|0}r=sd(A,r)|0}l=cP(e,t,c)|0;A:do{if(l|0){f=A+16|0;r=0;while(1){if((r|0)>=(e|0))break A;n=c+(r<<2)|0;i=0;while(1){if((i|0)==(e|0))break;A=a[n>>2]|0;s[(a[(a[(a[f>>2]|0)+160>>2]|0)+(r<<2)>>2]|0)+(i<<3)>>3]=+s[(a[c+(i<<2)>>2]|0)+(i<<3)>>3]+ +s[A+(r<<3)>>3]+ +s[A+(i<<3)>>3]*-2.0;i=i+1|0}r=r+1|0}}}while(0);cU(t);cU(c);return l|0}function bP(A,e,i,r,f,a){A=A|0;e=e|0;i=i|0;r=r|0;f=+f;a=a|0;var n=0.0,l=0.0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0;B=k;k=k+16|0;c=B;u=r<<3;w=$F(u)|0;o=$F(u)|0;h=$F(u)|0;s=$F(u)|0;b=$F(u)|0;u=$F(u)|0;QO(r,i,u);vO(r,u);vO(r,e);CO(A,r,e,s);ZO(r,u,s,w);QO(r,w,o);t=a+-1|0;i=0;n=+LO(r,w,w);while(1){if((i|0)>=(a|0)){i=0;break}if(!(+yO(r,w)>f)){i=0;break}CO(A,r,o,h);l=+LO(r,o,h);if(l==0.0){i=0;break}l=n/l;mO(r,o,l,b);GO(r,e,b,e);if((i|0)<(t|0)){mO(r,h,l,h);ZO(r,w,h,w);l=+LO(r,w,w);if(n==0.0){d=7;break}mO(r,o,l/n,o);GO(r,w,o,o);n=l}i=i+1|0}if((d|0)==7){ao(1,93242,c)|0;i=1}L2(w);L2(o);L2(h);L2(s);L2(b);L2(u);k=B;return i|0}function uP(A,e,i,r,f,a,n){A=A|0;e=e|0;i=i|0;r=r|0;f=+f;a=a|0;n=n|0;var l=0.0,t=0.0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0;B=k;k=k+16|0;c=B;w=r<<3;o=$F(w)|0;h=$F(w)|0;s=$F(w)|0;b=$F(w)|0;u=$F(w)|0;w=$F(w)|0;QO(r,i,w);if(n<<24>>24){vO(r,w);vO(r,e)}IO(A,r,e,b);ZO(r,w,b,o);QO(r,o,h);n=a+-1|0;i=0;l=+LO(r,o,o);while(1){if((i|0)>=(a|0)){i=0;break}if(!(+yO(r,o)>f)){i=0;break}IO(A,r,h,s);t=+LO(r,h,s);if(t==0.0){i=0;break}t=l/t;mO(r,h,t,u);GO(r,e,u,e);if((i|0)<(n|0)){mO(r,s,t,s);ZO(r,o,s,o);t=+LO(r,o,o);if(l==0.0){d=9;break}mO(r,h,t/l,h);GO(r,o,h,h);l=t}i=i+1|0}if((d|0)==9){ao(1,93242,c)|0;i=1}L2(o);L2(h);L2(s);L2(b);L2(u);L2(w);k=B;return i|0}function wP(A,e,i,r,f,a){A=A|0;e=e|0;i=i|0;r=r|0;f=+f;a=a|0;var n=0.0,l=0.0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0;h=k;k=k+16|0;c=h;s=r<<2;b=qF(s)|0;u=qF(s)|0;w=qF(s)|0;s=qF(s)|0;zO(r,e);zO(r,i);YO(A,r,e,s);zO(r,s);DO(r,i,s,b);JO(r,b,u);t=a+-1|0;i=0;n=+pO(r,b,b);while(1){if((i|0)>=(a|0)){i=0;break}if(!(+XO(r,b)>f)){i=0;break}zO(r,u);zO(r,e);zO(r,b);YO(A,r,u,w);zO(r,w);l=+pO(r,u,w);if(l==0.0){i=0;break}l=n/l;FO(r,e,l,u);if((i|0)<(t|0)){FO(r,b,-l,w);l=+pO(r,b,b);if(n==0.0){o=7;break}VO(r,u,l/n,u);MO(r,b,u,u);n=l}i=i+1|0}if((o|0)==7){ao(1,93242,c)|0;i=1}L2(b);L2(u);L2(w);L2(s);k=h;return i|0}function kP(A,e,i,r,f,n,l,t,b,u){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;n=n|0;l=l|0;t=t|0;b=b|0;u=+u;var w=0,o=0,h=0.0,d=0,B=0,g=0,v=0,E=0.0,C=0,I=0,Z=0,G=0,m=0.0,Q=0,L=0,y=0,z=0,Y=0,D=0,M=0,F=0,V=0,J=0,p=0,N=0.0;p=k;k=k+48|0;z=p+24|0;y=p+16|0;L=p+8|0;Q=p;F=p+40|0;V=p+36|0;D=p+32|0;B=l&4;a[F>>2]=0;a[V>>2]=0;A:do{if(a[A+16>>2]|0){o=0;w=0;while(1){if((o|0)>=(e|0))break;g=a[A+(o*20|0)>>2]|0;v=A+(o*20|0)+16|0;d=1;while(1){if((d|0)>=(g|0))break;if(!(w<<24>>24))w=+c[(a[v>>2]|0)+(d<<2)>>2]!=0.0;else w=1;d=d+1|0;w=w&1}o=o+1|0}if(w<<24>>24){G=(B|0)!=0;if(G){d=r+4|0;e:do{if((n|0)>2){w=n+-1|0;if((iU(A,e,i,d,f,w,l,t,15)|0)<0){w=-1;break A}o=r+(w<<2)|0;w=0;while(1){if((w|0)>=(e|0))break e;s[(a[o>>2]|0)+(w<<3)>>3]=+s[(a[d>>2]|0)+(w<<3)>>3];w=w+1|0}}}while(0);Z=a[r>>2]|0;C=a[d>>2]|0;if((KO(A,e,C,e)|0)==0?(Bw(A,e,.01,.1,C,F,V,D)|0)==0:0){I=a[D>>2]|0;if((I|0)<1){w=iU(A,e,i,r,f,n,l,t,b)|0;break}e:do{if(u>0.0){B=a[F>>2]|0;g=a[V>>2]|0;v=I+-1|0;h=0.0;d=0;while(1){if((d|0)>=(I|0))break e;w=a[g+(d<<2)>>2]|0;m=u-h-+s[C+(a[B+(w<<2)>>2]<<3)>>3]+ +s[C+(a[B+(w+-1<<2)>>2]<<3)>>3];h=(m<0.0?0.0:m)+h;if((d|0)<(v|0))o=a[g+(d+1<<2)>>2]|0;else o=e;while(1){if((w|0)>=(o|0))break;M=C+(a[B+(w<<2)>>2]<<3)|0;s[M>>3]=+s[M>>3]+h;w=w+1|0}d=d+1|0}}}while(0);if((n|0)==2?(yK(A,e,C,Z,+s[23294])|0)!=0:0){o=0;w=-1}else J=33}else{o=0;w=-1}}else{KH(A,e,n,r,f)|0;if(!(Bw(A,e,.01,.1,0,F,V,D)|0))J=33;else{o=0;w=-1}}e:do{if((J|0)==33){if((e|0)==1){w=0;break A}M=$F(a[D>>2]<<2)|0;if(!b){w=0;break A}if(0){}switch(t|0){case 2:{if(0){}w=eU(A,e)|0;J=46;break}case 1:{w=_H(A,e)|0;if(!w){ao(0,93315,Q)|0;ao(3,93364,L)|0;J=47}else Y=w;break}case 3:{if(0){}w=qH(A,e)|0;J=46;break}default:J=47}if((J|0)==46)if(!w)J=47;else Y=w;if((J|0)==47){if(0){}Y=AU(A,e)|0}if(0){}A=e+-1|0;Z=(U(A,e)|0)/2|0;y=Z+e|0;i:do{if(!G){h=1.0;o=0;while(1){if((o|0)>=(n|0))break;d=r+(o<<2)|0;w=0;while(1){if((w|0)>=(e|0))break;m=+W(+ +s[(a[d>>2]|0)+(w<<3)>>3]);h=m>h?m:h;w=w+1|0}o=o+1|0}h=1.0/h;o=0;while(1){if((o|0)>=(n|0))break i;d=r+(o<<2)|0;w=0;while(1){if((w|0)>=(e|0))break;L=(a[d>>2]|0)+(w<<3)|0;s[L>>3]=+s[L>>3]*(10.0*h);w=w+1|0}o=o+1|0}}}while(0);i:do{if(u>0.0){E=+(Z|0);w=0;h=0.0;B=0;r:while(1){if((B|0)>=(A|0))break;g=B+1|0;d=w;o=g;while(1){w=d+1|0;if((o|0)>=(e|0)){B=g;continue r}m=+jS(r,n,B,o);d=w;h=m/+c[Y+(w<<2)>>2]+h;o=o+1|0}}h=h/E;w=0;while(1){if((w|0)>=(y|0)){w=0;break i}L=Y+(w<<2)|0;c[L>>2]=+c[L>>2]*h;w=w+1|0}}else w=0}while(0);while(1){if((w|0)>=(n|0))break;vO(e,a[r+(w<<2)>>2]|0);w=w+1|0}o=a[r+4>>2]|0;h=+s[o>>3];w=0;while(1){if((w|0)>=(e|0))break;L=o+(w<<3)|0;s[L>>3]=+s[L>>3]-h;w=w+1|0}v=n<<2;L=$F(v)|0;I=e<<2;C=U(I,n)|0;d=$F(C)|0;w=0;while(1){if((w|0)>=(n|0))break;B=d+((U(w,e)|0)<<2)|0;a[L+(w<<2)>>2]=B;g=r+(w<<2)|0;o=0;while(1){if((o|0)>=(e|0))break;c[B+(o<<2)>>2]=+s[(a[g>>2]|0)+(o<<3)>>3];o=o+1|0}w=w+1|0}E=+(Z|0);if(0){}HO(y,Y);UO(y,Y);Q=$F(e<<3)|0;NO(e,0.0,Q);w=0;d=0;while(1){if((d|0)>=(A|0)){w=e;o=0;d=0;break}B=e-d|0;h=0.0;o=1;while(1){w=w+1|0;if((o|0)>=(B|0))break;m=+c[Y+(w<<2)>>2];z=Q+(o+d<<3)|0;s[z>>3]=+s[z>>3]-m;h=h+m;o=o+1|0}z=Q+(d<<3)|0;s[z>>3]=+s[z>>3]-h;d=d+1|0}while(1){if((o|0)>=(e|0))break;c[Y+(d<<2)>>2]=+s[Q+(o<<3)>>3];z=w+d|0;w=w+-1|0;o=o+1|0;d=z}t=$F(v)|0;a[t>>2]=$F(C)|0;w=1;while(1){if((w|0)>=(n|0))break;a[t+(w<<2)>>2]=(a[t>>2]|0)+((U(w,e)|0)<<2);w=w+1|0}G=$F(I)|0;f=$F(I)|0;l=$F(y<<2)|0;o=dK(Y,e)|0;i=CK(Y,e,a[F>>2]|0,a[V>>2]|0,a[D>>2]|0)|0;Z=t+4|0;d=0;m=1797693134862315708145274.0e284;w=0;while(1){if(!(d<<24>>24==0&(w|0)<(b|0)))break;NO(e,0.0,Q);xO(y,Y,l);C=0;g=0;while(1){if((C|0)>=(A|0)){d=0;B=e;g=0;break}I=e-C+-1|0;RO(e,0.0,f);d=0;while(1){if((d|0)>=(n|0))break;D=L+(d<<2)|0;RO(I,+c[(a[D>>2]|0)+(C<<2)>>2],G);FO(I,G,-1.0,(a[D>>2]|0)+(C<<2)+4|0);HO(I,G);MO(I,G,f,f);d=d+1|0}TO(I,f);d=0;while(1){if((d|0)>=(I|0))break;B=f+(d<<2)|0;h=+c[B>>2];if(h>=3402823466385288598117041.0e14|h<0.0)c[B>>2]=0.0;d=d+1|0}v=C+1|0;h=0.0;d=g;B=0;while(1){d=d+1|0;if((B|0)>=(I|0))break;D=l+(d<<2)|0;N=+c[D>>2]*+c[f+(B<<2)>>2];c[D>>2]=N;D=Q+(v+B<<3)|0;s[D>>3]=+s[D>>3]-N;h=h+N;B=B+1|0}g=Q+(C<<3)|0;s[g>>3]=+s[g>>3]-h;C=v;g=d}while(1){if((d|0)>=(e|0)){d=0;break}c[l+(g<<2)>>2]=+s[Q+(d<<3)>>3];D=B+g|0;d=d+1|0;B=B+-1|0;g=D}while(1){if((d|0)>=(n|0)){h=0.0;d=0;break}YO(l,e,a[L+(d<<2)>>2]|0,a[t+(d<<2)>>2]|0);d=d+1|0}while(1){if((d|0)>=(n|0))break;h=+pO(e,a[L+(d<<2)>>2]|0,a[t+(d<<2)>>2]|0)+h;d=d+1|0}h=h*2.0+E;d=0;while(1){if((d|0)>=(n|0))break;D=L+(d<<2)|0;YO(Y,e,a[D>>2]|0,G);h=h-+pO(e,a[D>>2]|0,G);d=d+1|0}N=+W(+(h-m))/+W(+(m+1.0e-10));d=((w|0)>1&h>m|N<+s[23294])&1;B=0;while(1){if((B|0)>=(n|0))break;if((B|0)!=1){if(wP(Y,a[L+(B<<2)>>2]|0,a[t+(B<<2)>>2]|0,e,.001,e)|0){w=-1;break e}}else BK(i,a[Z>>2]|0,L,n,1,15,M,u)|0;B=B+1|0}m=h;w=w+1|0}L2(M);EK(i);if(L|0){d=0;while(1){if((d|0)>=(n|0))break;g=L+(d<<2)|0;v=r+(d<<2)|0;B=0;while(1){if((B|0)>=(e|0))break;s[(a[v>>2]|0)+(B<<3)>>3]=+c[(a[g>>2]|0)+(B<<2)>>2];B=B+1|0}d=d+1|0}L2(a[L>>2]|0);L2(L)}if(t|0){L2(a[t>>2]|0);L2(t)}L2(G);L2(f);L2(Q);L2(Y);L2(l)}}while(0);L2(a[F>>2]|0);L2(a[V>>2]|0);if(o){L2(a[o>>2]|0);L2(o)}}else J=10}else J=10}while(0);if((J|0)==10)w=iU(A,e,i,r,f,n,l,t,b)|0;k=p;return w|0}function oP(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,b=0;b=k;k=k+48|0;f=b+24|0;n=b+12|0;i=b;l=gh(A)|0;c=$F(l*48|0)|0;qj(i,A);a[n>>2]=a[i>>2];a[n+4>>2]=a[i+4>>2];a[n+8>>2]=a[i+8>>2];i=cd(A)|0;r=c;while(1){if(!i)break;a[f>>2]=a[n>>2];a[f+4>>2]=a[n+4>>2];a[f+8>>2]=a[n+8>>2];hP(i,r,f);i=sd(A,i)|0;r=r+48|0}A:do{if(!(dP(c,l)|0))i=0;else{switch(e|0){case 9:{gP(A,c,l,70,1);EP(A,c,l,71,1);i=0;r=c;break}case 10:{EP(A,c,l,71,1);gP(A,c,l,70,1);i=0;r=c;break}case 7:{gP(A,c,l,72,1);EP(A,c,l,71,1);t=9;break}case 8:{t=9;break}case 13:{t=10;break}case 14:{EP(A,c,l,71,0);gP(A,c,l,70,0);i=0;r=c;break}case 12:{EP(A,c,l,73,0);gP(A,c,l,70,0);i=0;r=c;break}default:{gP(A,c,l,72,0);EP(A,c,l,71,0);i=0;r=c}}if((t|0)==9){EP(A,c,l,73,1);gP(A,c,l,70,1);t=10}if((t|0)==10){gP(A,c,l,70,0);EP(A,c,l,71,0);i=0;r=c}while(1){if((i|0)>=(l|0)){i=1;break A}n=a[r+16>>2]|0;t=a[(a[(a[r+20>>2]|0)+16>>2]|0)+132>>2]|0;s[t>>3]=+(a[r+12>>2]|0)*1.3888888888888887e-03;s[t+8>>3]=+(n|0)*1.3888888888888887e-03;i=i+1|0;r=r+48|0}}}while(0);L2(c);k=b;return i|0}function hP(A,e,i){A=A|0;e=e|0;i=i|0;var f=0,n=0,l=0,t=0,b=0.0,u=0.0;f=a[A+16>>2]|0;t=a[f+132>>2]|0;b=+s[t>>3]*720.0;l=~~(b+(b>=0.0?.5:-.5));b=+s[t+8>>3]*720.0;t=~~(b+(b>=0.0?.5:-.5));if(!(r[i+8>>0]|0)){u=+s[f+32>>3]*72.0*(+c[i>>2]*5.0);b=+s[f+40>>3]*72.0*(+c[i+4>>2]*5.0);n=~~(u+(u>=0.0?.5:-.5));f=~~(b+(b>=0.0?.5:-.5))}else{b=+s[f+32>>3]*36.0;u=+s[f+40>>3]*36.0;n=~~((+c[i>>2]+ +(~~(b+(b>=0.0?.5:-.5))|0))*10.0);f=~~((+c[i+4>>2]+ +(~~(u+(u>=0.0?.5:-.5))|0))*10.0)}a[e+12>>2]=l;a[e+16>>2]=t;a[e+20>>2]=A;a[e+32>>2]=l-n;a[e+36>>2]=t-f;a[e+40>>2]=n+l;a[e+44>>2]=f+t;return}function dP(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0,l=0,t=0,c=0,s=0;s=e+-1|0;i=0;A:while(1){if((i|0)>=(s|0)){A=0;break}c=A+48|0;i=i+1|0;n=A+32|0;l=A+40|0;t=A+36|0;f=A+44|0;A=c;r=i;while(1){if((r|0)>=(e|0)){A=c;continue A}if((((a[n>>2]|0)<=(a[A+40>>2]|0)?(a[A+32>>2]|0)<=(a[l>>2]|0):0)?(a[t>>2]|0)<=(a[A+44>>2]|0):0)?(a[A+36>>2]|0)<=(a[f>>2]|0):0){A=1;break A}A=A+48|0;r=r+1|0}}return A|0}function BP(A,e){A=A|0;e=e|0;if((a[A+36>>2]|0)>(a[e+44>>2]|0))A=0;else A=(a[e+36>>2]|0)<=(a[A+44>>2]|0)&1;return A|0}function gP(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0;t=jk(18168,a[4584]|0)|0;n=e;l=0;while(1){if((l|0)>=(i|0))break;a[n+8>>2]=a[n+12>>2];y5[a[t>>2]&63](t,n,1)|0;n=n+48|0;l=l+1|0}if(!f)l=QP(A,t,r,74)|0;else l=mP(t,r,74)|0;JV(l,2,2147483647)|0;n=0;while(1){if((n|0)>=(i|0))break;f=e+12|0;A=a[(a[(a[e+24>>2]|0)+16>>2]|0)+232>>2]|0;r=A-(a[f>>2]|0)|0;a[f>>2]=A;f=e+32|0;a[f>>2]=(a[f>>2]|0)+r;f=e+40|0;a[f>>2]=(a[f>>2]|0)+r;e=e+48|0;n=n+1|0}LP(l);Hk(t)|0;return}function vP(A,e){A=A|0;e=e|0;if((a[A+32>>2]|0)>(a[e+40>>2]|0))A=0;else A=(a[e+32>>2]|0)<=(a[A+40>>2]|0)&1;return A|0}function EP(A,e,i,r,f){A=A|0;e=e|0;i=i|0;r=r|0;f=f|0;var n=0,l=0,t=0;t=jk(18168,a[4584]|0)|0;n=e;l=0;while(1){if((l|0)>=(i|0))break;a[n+8>>2]=a[n+16>>2];y5[a[t>>2]&63](t,n,1)|0;n=n+48|0;l=l+1|0}if(!f)l=QP(A,t,r,75)|0;else l=mP(t,r,75)|0;JV(l,2,2147483647)|0;n=0;while(1){if((n|0)>=(i|0))break;f=e+16|0;A=a[(a[(a[e+24>>2]|0)+16>>2]|0)+232>>2]|0;r=A-(a[f>>2]|0)|0;a[f>>2]=A;f=e+36|0;a[f>>2]=(a[f>>2]|0)+r;f=e+44|0;a[f>>2]=(a[f>>2]|0)+r;e=e+48|0;n=n+1|0}LP(l);Hk(t)|0;return}function CP(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;i=A+32|0;r=e+32|0;if((a[A+36>>2]|0)<=(a[e+44>>2]|0)?(a[e+36>>2]|0)<=(a[A+44>>2]|0):0)if((a[A+40>>2]|0)<(a[r>>2]|0))A=1;else{n=GP(i,r)|0;n=n-(a[e+12>>2]|0)+(a[A+12>>2]|0)|0;e=a[e+16>>2]|0;A=a[A+16>>2]|0;f=(e|0)<(A|0);r=ZP(i,r)|0;A=(n|0)<=(r-(f?A:e)+(f?e:A)|0)&1}else A=0;return A|0}function IP(A,e){A=A|0;e=e|0;var i=0,r=0,f=0,n=0;i=A+32|0;r=e+32|0;if((a[i>>2]|0)<=(a[e+40>>2]|0)?(a[r>>2]|0)<=(a[A+40>>2]|0):0)if((a[A+44>>2]|0)<(a[e+36>>2]|0))A=1;else{n=ZP(i,r)|0;n=n-(a[e+16>>2]|0)+(a[A+16>>2]|0)|0;e=a[e+12>>2]|0;A=a[A+12>>2]|0;f=(e|0)<(A|0);r=GP(i,r)|0;A=(n|0)<=(r-(f?A:e)+(f?e:A)|0)&1}else A=0;return A|0}function ZP(A,e){A=A|0;e=e|0;return((a[A+12>>2]|0)-(a[A+4>>2]|0)+(a[e+12>>2]|0)-(a[e+4>>2]|0)|0)/2|0|0}function GP(A,e){A=A|0;e=e|0;return((a[A+8>>2]|0)-(a[A>>2]|0)+(a[e+8>>2]|0)-(a[e>>2]|0)|0)/2|0|0}function mP(A,e,i){A=A|0;e=e|0;i=i|0;var n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0;I=k;k=k+16|0;E=I;r[E>>0]=r[18588]|0;r[E+1>>0]=r[18589]|0;r[E+2>>0]=r[18590]|0;r[E+3>>0]=r[18591]|0;C=kh(93515,E,0)|0;Td(C,137483,280,1)|0;n=xk(A)|0;l=-2147483647;v=0;while(1){if(!n)break;B=a[n+8>>2]|0;g=v+((l|0)!=(B|0)&1)|0;n=a[n>>2]|0;l=B;v=g}B=C+16|0;g=(v<<3)+-4|0;u=0;c=0;n=0;l=0;b=0;d=xk(A)|0;t=-2147483647;while(1){if(!d)break;h=a[d+8>>2]|0;if((t|0)!=(h|0)){o=gd(C,Vh(a[d+20>>2]|0)|0,1)|0;Td(o,137447,304,1)|0;w=o+16|0;n=a[w>>2]|0;a[n+112>>2]=d;if(!l){a[(a[B>>2]|0)+192>>2]=o;u=o}else{a[(a[u+16>>2]|0)+164>>2]=o;u=l}a[n+176>>2]=0;s=c+1|0;t=qF(s<<2)|0;a[(a[w>>2]|0)+172>>2]=t;if(!b){c=s;s=o;b=o;n=o;l=u;t=h}else{t=b+16|0;a[(a[t>>2]|0)+184>>2]=0;c=qF((b|0)==(u|0)?g:v-c<<2)|0;a[(a[t>>2]|0)+180>>2]=c;c=th(C,b,o,0,1)|0;Td(c,137460,176,1)|0;n=a[c+16>>2]|0;f[n+170>>1]=10;a[n+156>>2]=1;n=a[t>>2]|0;l=a[n+180>>2]|0;if(!l)n=$F((a[n+184>>2]<<2)+8|0)|0;else n=eV(l,(a[n+184>>2]<<2)+8|0)|0;b=a[t>>2]|0;a[b+180>>2]=n;b=b+184|0;l=a[b>>2]|0;a[b>>2]=l+1;a[n+(l<<2)>>2]=c;n=a[t>>2]|0;a[(a[n+180>>2]|0)+(a[n+184>>2]<<2)>>2]=0;n=a[w>>2]|0;l=a[n+172>>2]|0;if(!l)n=$F((a[n+176>>2]<<2)+8|0)|0;else n=eV(l,(a[n+176>>2]<<2)+8|0)|0;l=a[w>>2]|0;a[l+172>>2]=n;l=l+176|0;b=a[l>>2]|0;a[l>>2]=b+1;a[n+(b<<2)>>2]=c;c=a[w>>2]|0;a[(a[c+172>>2]|0)+(a[c+176>>2]<<2)>>2]=0;c=s;s=o;b=o;n=o;l=u;t=h}}else{s=n;n=u}a[d+24>>2]=s;u=n;n=s;d=a[d>>2]|0}b=b+16|0;a[(a[b>>2]|0)+184>>2]=0;n=qF(4)|0;a[(a[b>>2]|0)+180>>2]=n;r[E>>0]=r[18588]|0;r[E+1>>0]=r[18589]|0;r[E+2>>0]=r[18590]|0;r[E+3>>0]=r[18591]|0;b=kh(93562,E,0)|0;n=xk(A)|0;while(1){if(!n)break;E=gd(b,Vh(a[n+20>>2]|0)|0,1)|0;Td(E,137447,304,1)|0;a[n+28>>2]=E;a[(a[E+16>>2]|0)+112>>2]=n;n=a[n>>2]|0}n=0;s=xk(A)|0;l=-2147483647;A:while(1){if(!s)break;c=a[s+8>>2]|0;e:do{if((l|0)==(c|0))c=l;else{n=s;while(1){n=a[n>>2]|0;if(!n)break A;if((a[n+8>>2]|0)!=(c|0))break e}}}while(0);t=s+28|0;l=n;while(1){if(!l)break;if(Q5[e&127](s,l)|0)th(b,a[t>>2]|0,a[l+28>>2]|0,0,1)|0;l=a[l>>2]|0}s=a[s>>2]|0;l=c}yP(b,C,i);Bh(b)|0;k=I;return C|0}function QP(A,e,i,n){A=A|0;e=e|0;i=i|0;n=n|0;var l=0,t=0,c=0,s=0,b=0,u=0,w=0,o=0,h=0,d=0,B=0,g=0;B=k;k=k+16|0;d=B;r[d>>0]=r[18588]|0;r[d+1>>0]=r[18589]|0;r[d+2>>0]=r[18590]|0;r[d+3>>0]=r[18591]|0;d=kh(93515,d,0)|0;Td(d,137483,280,1)|0;s=d+16|0;l=xk(e)|0;t=0;while(1){if(!l)break;c=gd(d,Vh(a[l+20>>2]|0)|0,1)|0;Td(c,137447,304,1)|0;o=c+16|0;u=a[o>>2]|0;a[u+112>>2]=l;a[l+24>>2]=c;a[u+176>>2]=0;u=qF(4)|0;w=a[o>>2]|0;a[w+172>>2]=u;a[w+184>>2]=0;w=qF(4)|0;a[(a[o>>2]|0)+180>>2]=w;if(!t)a[(a[s>>2]|0)+192>>2]=c;else a[(a[t+16>>2]|0)+164>>2]=c;l=a[l>>2]|0;t=c}b=xk(e)|0;A:while(1){if(!b)break;u=b+32|0;w=b+24|0;o=b+20|0;l=b;while(1){l=a[l>>2]|0;if(!l)break;if(Q5[i&127](b,l)|0){t=Q5[n&127](u,l+32|0)|0;c=th(d,a[w>>2]|0,a[l+24>>2]|0,0,1)|0;Td(c,137460,176,1)|0;if((t|0)>=65536){h=13;break A}s=c+16|0;g=a[s>>2]|0;f[g+170>>1]=t;a[g+156>>2]=1;if(c|0?th(A,a[o>>2]|0,a[l+20>>2]|0,0,0)|0:0)a[(a[s>>2]|0)+156>>2]=100}}b=a[b>>2]|0}if((h|0)==13)gA(93518,93534,254,93547);b=xk(e)|0;while(1){if(!b)break;s=a[b+24>>2]|0;u=s+16|0;s=Oo(d,s)|0;while(1){if(!s)break;l=a[u>>2]|0;t=a[l+180>>2]|0;if(!t)l=$F((a[l+184>>2]<<2)+8|0)|0;else l=eV(t,(a[l+184>>2]<<2)+8|0)|0;t=a[u>>2]|0;a[t+180>>2]=l;t=t+184|0;c=a[t>>2]|0;a[t>>2]=c+1;a[l+(c<<2)>>2]=s;c=a[u>>2]|0;a[(a[c+180>>2]|0)+(a[c+184>>2]<<2)>>2]=0;c=s+-48|0;l=a[(a[((a[s>>2]&3|0)==2?s:c)+40>>2]|0)+16>>2]|0;t=a[l+172>>2]|0;if(!t)l=$F((a[l+176>>2]<<2)+8|0)|0;else l=eV(t,(a[l+176>>2]<<2)+8|0)|0;a[(a[(a[((a[s>>2]&3|0)==2?s:c)+40>>2]|0)+16>>2]|0)+172>>2]=l;n=a[(a[((a[s>>2]&3|0)==2?s:c)+40>>2]|0)+16>>2]|0;h=a[n+172>>2]|0;n=n+176|0;g=a[n>>2]|0;a[n>>2]=g+1;a[h+(g<<2)>>2]=s;g=a[(a[((a[s>>2]&3|0)==2?s:c)+40>>2]|0)+16>>2]|0;a[(a[g+172>>2]|0)+(a[g+176>>2]<<2)>>2]=0;s=_o(d,s)|0}b=a[b>>2]|0}k=B;return d|0}function LP(A){A=A|0;var e=0,i=0,r=0,f=0;f=cd(A)|0;while(1){if(!f)break;i=f+16|0;e=a[i>>2]|0;r=a[e+172>>2]|0;if(r){L2(r);e=a[i>>2]|0}e=a[e+180>>2]|0;if(e|0)L2(e);f=sd(A,f)|0}Bh(A)|0;return}function yP(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,n=0,l=0,t=0,c=0,s=0,b=0,u=0,w=0,k=0,o=0,h=0;s=cd(A)|0;while(1){if(!s)break;w=a[(a[s+16>>2]|0)+112>>2]|0;u=a[w+24>>2]|0;w=w+32|0;k=u+16|0;b=Oo(A,s)|0;while(1){if(!b)break;l=a[(a[(a[((a[b>>2]&3|0)==2?b:b+-48|0)+40>>2]|0)+16>>2]|0)+112>>2]|0;o=Q5[i&127](w,l+32|0)|0;l=a[l+24>>2]|0;t=th(e,u,l,0,1)|0;Td(t,137460,176,1)|0;c=t+16|0;r=a[c>>2]|0;a[r+156>>2]=1;n=f[r+170>>1]|0;if((o|0)>(n&65535|0)){if(!(n<<16>>16)){r=a[k>>2]|0;n=a[r+180>>2]|0;if(!n)r=$F((a[r+184>>2]<<2)+8|0)|0;else r=eV(n,(a[r+184>>2]<<2)+8|0)|0;h=a[k>>2]|0;a[h+180>>2]=r;h=h+184|0;n=a[h>>2]|0;a[h>>2]=n+1;a[r+(n<<2)>>2]=t;r=a[k>>2]|0;a[(a[r+180>>2]|0)+(a[r+184>>2]<<2)>>2]=0;l=l+16|0;r=a[l>>2]|0;n=a[r+172>>2]|0;if(!n)r=$F((a[r+176>>2]<<2)+8|0)|0;else r=eV(n,(a[r+176>>2]<<2)+8|0)|0;n=a[l>>2]|0;a[n+172>>2]=r;n=n+176|0;h=a[n>>2]|0;a[n>>2]=h+1;a[r+(h<<2)>>2]=t;r=a[l>>2]|0;a[(a[r+172>>2]|0)+(a[r+176>>2]<<2)>>2]=0;r=a[c>>2]|0}f[r+170>>1]=o}b=_o(A,b)|0}s=sd(A,s)|0}return}function WP(A,e,i,r){A=A|0;e=e|0;i=i|0;r=r|0;return(a[e>>2]|0)-(a[i>>2]|0)|0}function zP(A,e){A=A|0;e=e|0;var i=0,f=0,n=0.0,l=0.0,t=0.0,b=0.0,u=0.0,w=0.0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,C=0,I=0,Z=0,G=0.0,m=0.0;Z=k;k=k+64|0;v=Z+24|0;B=Z+16|0;d=Z+52|0;h=Z+40|0;g=Z;C=gh(A)|0;I=$F(C*72|0)|0;qj(h,A);t=+c[h>>2];b=+c[h+4>>2];h=(r[h+8>>0]|0)!=0;t=h?t*.013888888888888888:t;b=h?b*.013888888888888888:b;u=t*.5;w=b*.5;i=I;f=cd(A)|0;while(1){if(!f)break;o=a[f+16>>2]|0;n=+s[o+32>>3];if(h){l=+s[o+40>>3]*.5+b;n=n*.5+t}else{l=w*+s[o+40>>3];n=u*n}o=a[o+132>>2]|0;m=+s[o>>3];s[i>>3]=m;G=+s[o+8>>3];s[i+8>>3]=G;s[i+16>>3]=m-n;s[i+24>>3]=G-l;s[i+32>>3]=m+n;s[i+40>>3]=G+l;s[i+48>>3]=n;s[i+56>>3]=l;a[i+64>>2]=f;i=i+72|0;f=sd(A,f)|0}do{if((e|0)<0){n=+YP(I,C);if(n==0.0){L2(I);i=0;break}if(true){t=n;l=n;E=19}else{}}else{f=DP(I,C,d)|0;i=a[d>>2]|0;if(!i){L2(f);L2(I);i=0;break}if(!e){FP(g,f,i);n=+s[g>>3];l=+s[g+8>>3]}else{l=+MP(f,i);n=l}L2(f);if(true){t=n;E=19}else{}}}while(0);if((E|0)==19){i=0;f=I;while(1){if((i|0)>=(C|0))break;E=a[(a[(a[f+64>>2]|0)+16>>2]|0)+132>>2]|0;s[E>>3]=+s[f>>3]*t;s[E+8>>3]=+s[f+8>>3]*l;i=i+1|0;f=f+72|0}L2(I);i=1}k=Z;return i|0}function YP(A,e){A=A|0;e=e|0;var i=0.0,r=0,f=0.0,a=0.0,n=0.0,l=0,t=0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0;i=0.0;r=0;A:while(1){if((r|0)>=(e|0))break;d=A+72|0;r=r+1|0;u=A+16|0;w=A+8|0;k=A+56|0;o=A+48|0;h=A+32|0;c=A+24|0;b=A+40|0;l=r;t=d;while(1){if((l|0)>=(e|0)){A=d;continue A}if(((+s[u>>3]<=+s[t+32>>3]?+s[t+16>>3]<=+s[h>>3]:0)?+s[c>>3]<=+s[t+40>>3]:0)?+s[t+24>>3]<=+s[b>>3]:0){i=0.0;break A}f=+s[A>>3];a=+s[t>>3];if(f==a)n=C;else{n=+W(+(f-a));n=(+s[t+48>>3]+ +s[o>>3])/n}f=+s[w>>3];a=+s[t+8>>3];if(f==a)f=C;else{f=+W(+(f-a));f=(+s[t+56>>3]+ +s[k>>3])/f}n=f i?n:i}}return+i}function DP(A,e,i){A=A|0;e=e|0;i=i|0;var r=0,f=0.0,n=0.0,l=0,t=0.0,c=0,b=0,u=0,w=0,k=0,o=0,h=0,d=0,B=0,g=0,v=0,E=0,I=0,Z=0,G=0,m=0;c=$F((e<<4)+16|0)|0;u=0;r=0;w=c;k=e;l=c;A:while(1){if((r|0)>=(e|0))break;G=A+72|0;r=r+1|0;Z=A+16|0;d=A+32|0;B=A+24|0;g=A+40|0;v=A+8|0;E=A+56|0;I=A+48|0;o=r;h=G;b=l;while(1){if((o|0)==(e|0)){A=G;l=b;continue A}if(((+s[Z>>3]<=+s[h+32>>3]?+s[h+16>>3]<=+s[d>>3]:0)?+s[B>>3]<=+s[h+40>>3]:0)?+s[h+24>>3]<=+s[g>>3]:0){l=k+e|0;if((u|0)==(k|0)){c=eV(c,(l<<4)+16|0)|0;w=c;b=c}else l=k;f=+s[A>>3];n=+s[h>>3];if(!(f==n)){f=(+s[h+48>>3]+ +s[I>>3])/+W(+(f-n));if(f<1.0){f=1.0;m=13}}else{f=C;m=13}if((m|0)==13)m=0;n=+s[v>>3];t=+s[h+8>>3];if(!(n==t)){n=(+s[h+56>>3]+ +s[E>>3])/+W(+(n-t));if(n<1.0){n=1.0;m=16}}else{n=C;m=16}if((m|0)==16)m=0;u=u+1|0;s[w+(u<<4)>>3]=f;s[w+(u<<4)+8>>3]=n}else l=k;o=o+1|0;h=h+72|0;k=l}}m=eV(l,(u<<4)+16|0)|0;a[i>>2]=u;return m|0}function MP(A,e){A=A|0;e=e|0;var i=0,r=0,f=0.0,a=0.0,n=0.0;r=1;f=0.0;while(1){i=A+16|0;if((r|0)>(e|0))break;n=+s[i>>3];a=+s[A+24>>3];a=nf?a:f;A=i}return+f}function FP(A,e,i){A=A|0;e=e|0;i=i|0;var r=0.0,f=0,a=0,n=0,l=0.0;s[e>>3]=1.0;s[e+8>>3]=C;K4(e+16|0,i,16,76);n=$F((i<<4)+16|0)|0;s[n+(i<<4)>>3]=+s[e+(i<<4)>>3];a=i;r=1.0;while(1){s[n+(a<<4)+8>>3]=r;f=a+-1|0;if((a|0)<=0){r=C;f=0;a=0;break}s[n+(f<<4)>>3]=+s[e+(f<<4)>>3];l=+s[(+s[e+(a<<4)+8>>3]>r?e:n)+(a<<4)+8>>3];a=f;r=l}while(1){if((a|0)>(i|0))break;l=+s[n+(a<<4)+8>>3]*+s[n+(a<<4)>>3];e=l