(function(global,factory){if(typeof define==="function"&&define.amd){define("bullet",["exports"],factory)}else if(typeof exports!=="undefined"){factory(exports)}else{var mod={exports:{}};factory(mod.exports);global.bullet=mod.exports}})(typeof globalThis!=="undefined"?globalThis:typeof self!=="undefined"?self:this,function(_exports){"use strict";Object.defineProperty(_exports,"__esModule",{value:true});_exports.default=void 0;//Wed Nov 23 2022 18:46:27 GMT+0800 (China Standard Time) function instantiate(i){for(var a,o=new Uint8Array(123),c=25;0<=c;--c)o[48+c]=52+c,o[65+c]=c,o[97+c]=26+c;function k(A,e,r){for(var f,i,a=0,n=e,b=r.length,t=e+(3*b>>2)-("="==r[b-2])-("="==r[b-1]);a>4,n>2),n>2]))&&(X2[6180]=A,e=-1),0|e},function(A,e,r){A|=0,e|=0;var f,i,a,n=0,b=0,t=0;X2[12+(K2=a=K2-16|0)>>2]=r|=0,X2[8+a>>2]=e,e=X2[A+24>>2],X2[a>>2]=e,e=X2[A+20>>2]-e|0,X2[4+a>>2]=e;A:{if((0|(n=i2(X2[A+56>>(b=2)],a,2)))!=(0|(t=e+r|0)))for(e=a;;){if((0|n)<=-1){if(X2[A+24>>2]=0,X2[A+16>>2]=0,X2[A+20>>2]=0,X2[A>>2]=32|X2[A>>2],2==((A=0)|b))break A;A=r-X2[e+4>>2]|0;break A}if(f=X2[e+4>>2],X2[(e=(i=f>>>0>>0)?e+8|0:e)>>2]=(f=n-(i?f:0)|0)+X2[e>>2],X2[e+4>>2]=X2[e+4>>2]-f,(0|(t=t-n|0))==(0|(n=i2(X2[A+56>>2],e,b=b-i|0))))break}e=X2[A+40>>2],X2[A+24>>2]=e,X2[A+20>>2]=e,X2[A+16>>2]=e+X2[A+44>>2],A=r}return K2=16+a|0,0|A},function(A,e,r,f){var i;return K2=i=K2-16|0,A=(A=0|_(X2[(A|=0)+56>>2],0|(e|=0),0|(r|=0),255&(f|=0),8+i|0))?(X2[6180]=76==(0|A)?70:A,e=-1):(e=X2[12+i>>2],X2[8+i>>2]),K2=16+i|0,H=e,0|A},u2,r,r,Q2,d2,g2,w2,G2,s2,l2,d2,Z2,u2,r,r,d2,h2,d2,Y2,s2,Q2,Q2,Q2,Q2,Q2,W2,W2,Q2,W2,W2,r,function(A){X2[12+(K2-16|0)>>2]=A|=0,U()},T2,T2,f2,w2,x2,w2,y2,w2,y2,w2,x2,w2,function(A,e,r){var f;return e|=0,r|=0,X2[72+(K2=f=K2-80|0)>>2]=A|=0,X2[68+f>>2]=e,X2[64+f>>2]=r,1&b(e=X2[72+f>>2],X2[68+f>>2],0)?S2[79+f|0]=1:(A=(A=X2[68+(r=f)>>2])?t(A,4072,4120,0):0,X2[r+60>>2]=A,X2[60+f>>2]&&(X2[f>>2]=X2[60+f>>2],X2[4+f>>2]=0,X2[8+f>>2]=e,X2[12+f>>2]=-1,X2[16+f>>2]=0,X2[20+f>>2]=0,X2[24+f>>2]=0,X2[28+f>>2]=0,X2[32+f>>2]=0,X2[36+f>>2]=0,X2[40+f>>2]=0,X2[44+f>>2]=0,X2[48+f>>2]=0,S2[52+f|0]=0,S2[53+f|0]=0,S2[54+f|0]=0,X2[48+f>>2]=1,A=X2[60+f>>2],N2[X2[X2[A>>2]+28>>2]](A,f,X2[X2[64+f>>2]>>2],1),1==X2[24+f>>2])?(X2[X2[64+f>>2]>>2]=X2[16+f>>2],S2[79+f|0]=1):S2[79+f|0]=0),K2=80+f|0,1&S2[79+f|0]},function(A,e,r,f,i,a){var n;e|=0,r|=0,f|=0,i|=0,a|=0,X2[28+(K2=n=K2-32|0)>>2]=A|=0,X2[24+n>>2]=e,X2[20+n>>2]=r,X2[16+n>>2]=f,X2[12+n>>2]=i,S2[11+n|0]=a,1&b(A=X2[28+n>>2],X2[X2[24+n>>2]+8>>2],1&S2[11+n|0])&&e0(A,X2[24+n>>2],X2[20+n>>2],X2[16+n>>2],X2[12+n>>2]),K2=32+n|0},function(A,e,r,f,i){var a;e|=0,r|=0,f|=0,i|=0,X2[28+(K2=a=K2-32|0)>>2]=A|=0,X2[24+a>>2]=e,X2[20+a>>2]=r,X2[16+a>>2]=f,S2[15+a|0]=i,1&b(A=X2[28+a>>2],X2[X2[24+a>>2]+8>>2],1&S2[15+a|0])?r0(A,X2[24+a>>2],X2[20+a>>2],X2[16+a>>2]):1&b(A,X2[X2[24+a>>2]>>2],1&S2[15+a|0])&&(X2[20+a>>2]==X2[X2[24+a>>2]+20>>2]||X2[20+a>>2]==X2[X2[24+a>>2]+16>>2]?1==X2[16+a>>2]&&(X2[X2[24+a>>2]+32>>2]=1):(X2[X2[24+a>>2]+32>>2]=X2[16+a>>2],X2[X2[24+a>>2]+20>>2]=X2[20+a>>2],A=X2[24+a>>2],X2[A+40>>2]=X2[A+40>>2]+1,1==X2[X2[24+a>>2]+36>>2]&&2==X2[X2[24+a>>2]+24>>2]&&(S2[X2[24+a>>2]+54|0]=1),X2[X2[24+a>>2]+44>>2]=4)),K2=32+a|0},function(A,e,r,f){var i;e|=0,r|=0,f|=0,X2[12+(K2=i=K2-16|0)>>2]=A|=0,X2[8+i>>2]=e,X2[4+i>>2]=r,X2[i>>2]=f,1&b(A=X2[12+i>>2],X2[X2[8+i>>2]+8>>2],0)&&V2(A,X2[8+i>>2],X2[4+i>>2],X2[i>>2]),K2=16+i|0},I2,function(A,e,r,f,i,a){var n;e|=0,r|=0,f|=0,i|=0,a|=0,X2[28+(K2=n=K2-32|0)>>2]=A|=0,X2[24+n>>2]=e,X2[20+n>>2]=r,X2[16+n>>2]=f,X2[12+n>>2]=i,S2[11+n|0]=a,1&b(A=X2[28+n>>2],X2[X2[24+n>>2]+8>>2],1&S2[11+n|0])?e0(A,X2[24+n>>2],X2[20+n>>2],X2[16+n>>2],X2[12+n>>2]):(A=X2[A+8>>2],N2[X2[X2[A>>2]+20>>2]](A,X2[24+n>>2],X2[20+n>>2],X2[16+n>>2],X2[12+n>>2],1&S2[11+n|0])),K2=32+n|0},function(A,e,r,f,i){var a;e|=0,r|=0,f|=0,i|=0,X2[28+(K2=a=K2-32|0)>>2]=A|=0,X2[24+a>>2]=e,X2[20+a>>2]=r,X2[16+a>>2]=f,S2[15+a|0]=i,1&b(A=X2[28+a>>2],X2[X2[24+a>>2]+8>>2],1&S2[15+a|0])?r0(A,X2[24+a>>2],X2[20+a>>2],X2[16+a>>2]):1&b(A,X2[X2[24+a>>2]>>2],1&S2[15+a|0])?X2[20+a>>2]==X2[X2[24+a>>2]+20>>2]||X2[20+a>>2]==X2[X2[24+a>>2]+16>>2]?1==X2[16+a>>2]&&(X2[X2[24+a>>2]+32>>2]=1):(X2[X2[24+a>>2]+32>>2]=X2[16+a>>2],S2[14+a|0]=0,4!=X2[X2[24+a>>2]+44>>2]&&(S2[13+a|0]=0,S2[X2[24+a>>2]+52|0]=0,S2[X2[24+a>>2]+53|0]=0,A=X2[A+8>>2],N2[X2[X2[A>>2]+20>>2]](A,X2[24+a>>2],X2[20+a>>2],X2[20+a>>2],1,1&S2[15+a|0]),1&S2[X2[24+a>>2]+53|0]&&(S2[13+a|0]=1)&S2[X2[24+a>>2]+52|0]&&(S2[14+a|0]=1),1&S2[13+a|0]?X2[X2[24+a>>2]+44>>2]=3:X2[X2[24+a>>2]+44>>2]=4),1&S2[14+a|0]||(X2[X2[24+a>>2]+20>>2]=X2[20+a>>2],A=X2[24+a>>2],X2[A+40>>2]=X2[A+40>>2]+1,1==X2[X2[24+a>>2]+36>>2]&&2==X2[X2[24+a>>2]+24>>2]&&(S2[X2[24+a>>2]+54|0]=1))):(A=X2[A+8>>2],N2[X2[X2[A>>2]+24>>2]](A,X2[24+a>>2],X2[20+a>>2],X2[16+a>>2],1&S2[15+a|0])),K2=32+a|0},function(A,e,r,f){var i;e|=0,r|=0,f|=0,X2[12+(K2=i=K2-16|0)>>2]=A|=0,X2[8+i>>2]=e,X2[4+i>>2]=r,X2[i>>2]=f,1&b(A=X2[12+i>>2],X2[X2[8+i>>2]+8>>2],0)?V2(A,X2[8+i>>2],X2[4+i>>2],X2[i>>2]):(A=X2[A+8>>2],N2[X2[X2[A>>2]+28>>2]](A,X2[8+i>>2],X2[4+i>>2],X2[i>>2])),K2=16+i|0},I2,function(A,e,r,f,i,a){var n;if(e|=0,r|=0,f|=0,i|=0,a|=0,X2[28+(K2=n=K2-32|0)>>2]=A|=0,X2[24+n>>2]=e,X2[20+n>>2]=r,X2[16+n>>2]=f,X2[12+n>>2]=i,S2[11+n|0]=a,1&b(A=X2[28+n>>2],X2[X2[24+n>>2]+8>>2],1&S2[11+n|0]))e0(A,X2[24+n>>2],X2[20+n>>2],X2[16+n>>2],X2[12+n>>2]);else{if(S2[10+n|0]=1&S2[X2[24+n>>2]+52|0],S2[9+n|0]=1&S2[X2[24+n>>2]+53|0],X2[4+n>>2]=(A+16|0)+(X2[A+12>>2]<<3),X2[n>>2]=A+16,S2[X2[24+n>>2]+52|0]=0,S2[X2[24+n>>2]+53|0]=0,f0(X2[n>>2],X2[24+n>>2],X2[20+n>>2],X2[16+n>>2],X2[12+n>>2],1&S2[11+n|0]),S2[10+n|0]=1&S2[X2[24+n>>2]+52|0]|1&S2[10+n|0],S2[9+n|0]=1&S2[X2[24+n>>2]+53|0]|1&S2[9+n|0],e=X2[n>>2]+8|0,(X2[n>>2]=e)>>>0>2])for(;;){A:if(!(1&S2[X2[24+n>>2]+54|0])){e:{if(1&S2[X2[24+n>>2]+52|0]){if(1==X2[X2[24+n>>2]+24>>2])break A;if(2&X2[A+8>>2])break e;break A}if(!(1&X2[A+8>>2])&&1&S2[X2[24+n>>2]+53|0])break A}if(S2[X2[24+n>>2]+52|0]=0,S2[X2[24+n>>2]+53|0]=0,f0(X2[n>>2],X2[24+n>>2],X2[20+n>>2],X2[16+n>>2],X2[12+n>>2],1&S2[11+n|0]),S2[10+n|0]=1&S2[X2[24+n>>2]+52|0]|1&S2[10+n|0],S2[9+n|0]=1&S2[X2[24+n>>2]+53|0]|1&S2[9+n|0],e=X2[n>>2]+8|0,(X2[n>>2]=e)>>>0>2])continue}break}S2[X2[24+n>>2]+52|0]=1&S2[10+n|0],S2[X2[24+n>>2]+53|0]=1&S2[9+n|0]}K2=32+n|0},function(A,e,r,f,i){var a;if(e|=0,r|=0,f|=0,i|=0,X2[44+(K2=a=K2-48|0)>>2]=A|=0,X2[40+a>>2]=e,X2[36+a>>2]=r,X2[32+a>>2]=f,S2[31+a|0]=i,1&b(A=X2[44+a>>2],X2[X2[40+a>>2]+8>>2],1&S2[31+a|0]))r0(A,X2[40+a>>2],X2[36+a>>2],X2[32+a>>2]);else if(1&b(A,X2[X2[40+a>>2]>>2],1&S2[31+a|0])){if(X2[36+a>>2]==X2[X2[40+a>>2]+20>>2]||X2[36+a>>2]==X2[X2[40+a>>2]+16>>2])1==X2[32+a>>2]&&(X2[X2[40+a>>2]+32>>2]=1);else{if(X2[X2[40+a>>2]+32>>2]=X2[32+a>>2],S2[30+a|0]=0,4!=X2[X2[40+a>>2]+44>>2]){for(S2[29+a|0]=0,X2[24+a>>2]=(A+16|0)+(X2[A+12>>2]<<3),X2[20+a>>2]=A+16;;){A:if(!(X[20+a>>2]>=X[24+a>>2]||(S2[X2[40+a>>2]+52|0]=0,S2[X2[40+a>>2]+53|0]=0,f0(X2[20+a>>2],X2[40+a>>2],X2[36+a>>2],X2[36+a>>2],1,1&S2[31+a|0]),1&S2[X2[40+a>>2]+54|0]))){if(1&S2[X2[40+a>>2]+53|0])e:{if((S2[29+a|0]=1)&S2[X2[40+a>>2]+52|0]){if((S2[30+a|0]=1)==X2[X2[40+a>>2]+24>>2])break A;if(2&X2[A+8>>2])break e;break A}if(!(1&X2[A+8>>2]))break A}X2[20+a>>2]=X2[20+a>>2]+8;continue}break}1&S2[29+a|0]?X2[X2[40+a>>2]+44>>2]=3:X2[X2[40+a>>2]+44>>2]=4}1&S2[30+a|0]||(X2[X2[40+a>>2]+20>>2]=X2[36+a>>2],A=X2[40+a>>2],X2[A+40>>2]=X2[A+40>>2]+1,1==X2[X2[40+a>>2]+36>>2]&&2==X2[X2[40+a>>2]+24>>2]&&(S2[X2[40+a>>2]+54|0]=1))}}else if(X2[16+a>>2]=(A+16|0)+(X2[A+12>>2]<<3),X2[12+a>>2]=A+16,i0(X2[12+a>>2],X2[40+a>>2],X2[36+a>>2],X2[32+a>>2],1&S2[31+a|0]),e=X2[12+a>>2]+8|0,(X2[12+a>>2]=e)>>>0>2])if(1==X2[X2[40+a>>2]+36>>2]||2&X2[A+8>>2]){for(;;)if(1&S2[X2[40+a>>2]+54|0]||(i0(X2[12+a>>2],X2[40+a>>2],X2[36+a>>2],X2[32+a>>2],1&S2[31+a|0]),A=X2[12+a>>2]+8|0,!((X2[12+a>>2]=A)>>>0>2])))break}else if(1&X2[A+8>>2]){for(;;)if(1&S2[X2[40+a>>2]+54|0]||1==X2[X2[40+a>>2]+36>>2]&&1==X2[X2[40+a>>2]+24>>2]||(i0(X2[12+a>>2],X2[40+a>>2],X2[36+a>>2],X2[32+a>>2],1&S2[31+a|0]),A=X2[12+a>>2]+8|0,!((X2[12+a>>2]=A)>>>0>2])))break}else for(;;)if(1&S2[X2[40+a>>2]+54|0]||1==X2[X2[40+a>>2]+36>>2]||(i0(X2[12+a>>2],X2[40+a>>2],X2[36+a>>2],X2[32+a>>2],1&S2[31+a|0]),A=X2[12+a>>2]+8|0,!((X2[12+a>>2]=A)>>>0>2])))break;K2=48+a|0},function(A,e,r,f){var i;if(e|=0,r|=0,f|=0,X2[28+(K2=i=K2-32|0)>>2]=A|=0,X2[24+i>>2]=e,X2[20+i>>2]=r,X2[16+i>>2]=f,1&b(A=X2[28+i>>2],X2[X2[24+i>>2]+8>>2],0))V2(A,X2[24+i>>2],X2[20+i>>2],X2[16+i>>2]);else if(X2[12+i>>2]=(A+16|0)+(X2[A+12>>2]<<3),X2[8+i>>2]=A+16,p2(X2[8+i>>2],X2[24+i>>2],X2[20+i>>2],X2[16+i>>2]),A=X2[8+i>>2]+8|0,(X2[8+i>>2]=A)>>>0>2])for(;;)if(p2(X2[8+i>>2],X2[24+i>>2],X2[20+i>>2],X2[16+i>>2]),1&S2[X2[24+i>>2]+54|0]||(A=X2[8+i>>2]+8|0,!((X2[8+i>>2]=A)>>>0>2])))break;K2=32+i|0},w2,M2,I2,function(A,e,r){e|=0,r|=0;var f,i=0,a=0;return X2[88+(K2=f=K2-96|0)>>2]=A|=0,X2[84+f>>2]=e,X2[80+f>>2]=r,A=X2[88+f>>2],1&b(X2[84+f>>2],4516,0)?(X2[X2[80+f>>2]>>2]=0,S2[95+f|0]=1):1&M2(A,X2[84+f>>2],X2[80+f>>2])?(X2[X2[80+f>>2]>>2]&&(X2[X2[80+f>>2]>>2]=X2[X2[X2[80+f>>2]>>2]>>2]),S2[95+f|0]=1):(e=(e=X2[84+(r=f)>>2])?t(e,4072,4216,0):0,X2[r+76>>2]=e,!X2[76+f>>2]||(X2[X2[80+f>>2]>>2]&&(X2[X2[80+f>>2]>>2]=X2[X2[X2[80+f>>2]>>2]>>2]),X2[X2[76+f>>2]+8>>2]&(-1^X2[A+8>>2])&7||X2[A+8>>2]&(-1^X2[X2[76+f>>2]+8>>2])&96)?S2[95+f|0]=0:1&b(X2[A+12>>2],X2[X2[76+f>>2]+12>>2],0)?S2[95+f|0]=1:1&b(X2[A+12>>2],4464,0)?(A=(A=X2[X2[76+(e=f)>>2]+12>>2])?t(A,4072,4268,0):0,X2[e+72>>2]=A,S2[95+f|0]=!X2[72+f>>2]):(r=f,e=(e=X2[A+12>>2])?t(e,4072,4216,0):0,X2[r+68>>2]=e,X2[68+f>>2]?1&(-1^X2[A+8>>2])?S2[95+f|0]=0:(a=1&function A(e,r){var f=0,i=0,a=0,n=0;f=K2-32|0;K2=f;X2[24+f>>2]=e;X2[20+f>>2]=r;e=X2[24+f>>2];i=f;r=X2[20+f>>2];r=r?t(r,4072,4216,0):0;X2[16+i>>2]=r;!X2[16+f>>2]||X2[X2[16+f>>2]+8>>2]&(-1^X2[e+8>>2])?S2[31+f|0]=0:1&b(X2[e+12>>2],X2[X2[16+f>>2]+12>>2],0)?S2[31+f|0]=1:1&(-1^X2[e+8>>2])?S2[31+f|0]=0:(i=f,r=(r=X2[e+12>>2])?t(r,4072,4216,0):0,X2[12+i>>2]=r,X2[12+f>>2]?(n=1&A(X2[12+(a=f)>>2],X2[X2[16+f>>2]+12>>2]),S2[a+31|0]=n):(r=f,e=(e=X2[e+12>>2])?t(e,4072,4328,0):0,X2[r+8>>2]=e,X2[8+f>>2]?(n=1&A0(X2[8+(a=f)>>2],X2[X2[16+f>>2]+12>>2]),S2[a+31|0]=n):S2[31+f|0]=0));K2=32+f|0;return 1&S2[31+f|0]}(X2[68+(i=f)>>2],X2[X2[76+f>>2]+12>>2]),S2[i+95|0]=a):(r=f,e=(e=X2[A+12>>2])?t(e,4072,4328,0):0,X2[r+64>>2]=e,X2[64+f>>2]?1&(-1^X2[A+8>>2])?S2[95+f|0]=0:(a=1&A0(X2[64+(i=f)>>2],X2[X2[76+f>>2]+12>>2]),S2[i+95|0]=a):(e=f,A=(A=X2[A+12>>2])?t(A,4072,4120,0):0,X2[e+60>>2]=A,X2[60+f>>2]&&(A=(A=X2[X2[76+(e=f)>>2]+12>>2])?t(A,4072,4120,0):0,X2[e+56>>2]=A,X2[56+f>>2]&&(X2[f>>2]=X2[56+f>>2],X2[4+f>>2]=0,X2[8+f>>2]=X2[60+f>>2],X2[12+f>>2]=-1,X2[16+f>>2]=0,X2[20+f>>2]=0,X2[24+f>>2]=0,X2[28+f>>2]=0,X2[32+f>>2]=0,X2[36+f>>2]=0,X2[40+f>>2]=0,X2[44+f>>2]=0,X2[48+f>>2]=0,S2[52+f|0]=0,S2[53+f|0]=0,S2[54+f|0]=0,X2[48+f>>2]=1,A=X2[56+f>>2],N2[X2[X2[A>>2]+28>>2]](A,f,X2[X2[80+f>>2]>>2],1),1==X2[24+f>>2]))?(X2[X2[80+f>>2]>>2]&&(X2[X2[80+f>>2]>>2]=X2[16+f>>2]),S2[95+f|0]=1):S2[95+f|0]=0)))),K2=96+f|0,1&S2[95+f|0]},I2,function(A,e,r){var f;return e|=0,r|=0,X2[24+(K2=f=K2-32|0)>>2]=A|=0,X2[20+f>>2]=e,X2[16+f>>2]=r,A=X2[24+f>>2],1&b(X2[20+f>>2],4516,0)?(A=(A=X2[A+12>>2])?t(A,4072,4268,0):0,X2[X2[16+f>>2]>>2]=A?4340:4348,S2[31+f|0]=1):1&M2(A,X2[20+f>>2],X2[16+f>>2])||(e=(e=X2[20+(r=f)>>2])?t(e,4072,4328,0):0,X2[r+12>>2]=e,X2[12+f>>2]&&!(X2[X2[12+f>>2]+8>>2]&(-1^X2[A+8>>2])&7)&&!(X2[A+8>>2]&(-1^X2[X2[12+f>>2]+8>>2])&96)&&1&b(X2[A+12>>2],X2[X2[12+f>>2]+12>>2],0)&&1&b(X2[A+16>>2],X2[X2[12+f>>2]+16>>2],0))?S2[31+f|0]=1:S2[31+f|0]=0,K2=32+f|0,1&S2[31+f|0]},function(A){X2[6261]=9776},function(A){l0(25140)},function(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n,b=P2(0),t=P2(0),o=P2(0),c=0;P2(0),K2=n=K2-32|0,i=X2[4+(a=r+8|0)>>2],X2[(c=f=24+n|0)>>2]=X2[a>>2],X2[4+c>>2]=i,c=X2[r+4>>2],X2[16+n>>2]=X2[r>>2],X2[20+n>>2]=c,b=U2[16+n>>2],o=U2[20+n>>2],t=U2[f>>2],P2(P2(P2(b*b)+P2(o*o))+P2(t*t))>2]=0,t=P2(-1),o=P2(-1),b=P2(-1)),a=t,t=P2(P2(1)/P2(O2(P2(P2(P2(b*b)+P2(o*o))+P2(t*t))))),U2[24+n>>2]=a*t,U2[20+n>>2]=o*t,U2[16+n>>2]=b*t,w0(n,e,16+n|0);A:{e:switch(X2[e+4>>2]){case 8:b=P2(U2[e+36>>2]*U2[e+20>>2]);break A;case 0:case 1:case 13:case 11:case 10:b=U2[e+52>>2];break A;case 4:case 5:b=U2[e+52>>2];break A;default:break e;}b=P2(N2[X2[X2[e>>2]+48>>2]](e))}X2[A+12>>2]=0,U2[A+8>>2]=P2(b*U2[24+n>>2])+U2[8+n>>2],U2[A+4>>2]=P2(b*U2[20+n>>2])+U2[4+n>>2],U2[A>>2]=P2(b*U2[16+n>>2])+U2[n>>2],K2=32+n|0},w0,function(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n,b=P2(0),t=P2(0),o=P2(0),c=P2(0);return P2(0),P2(0),P2(0),(t=U2[r+128>>2])!=P2(0)&&(X2[6628]=X2[6628]+1,b=U2[r+96>>2],o=P2(t-P2(b*U2[r+116>>2])),c=U2[r+16>>2],f=U2[r+20>>2],i=U2[r+24>>2],t=U2[r+108>>2],t=P2(P2(o-P2(P2(P2(P2(P2(c*U2[A+144>>2])+P2(f*U2[A+148>>2]))+P2(i*U2[A+152>>2]))+P2(P2(P2(U2[r>>2]*U2[A+160>>2])+P2(U2[r+4>>2]*U2[A+164>>2]))+P2(U2[r+8>>2]*U2[A+168>>2])))*t))-P2(t*P2(P2(P2(P2(U2[r+48>>2]*U2[e+144>>2])+P2(U2[r+52>>2]*U2[e+148>>2]))+P2(U2[r+56>>2]*U2[e+152>>2]))+P2(P2(P2(U2[r+32>>2]*U2[e+160>>2])+P2(U2[r+36>>2]*U2[e+164>>2]))+P2(U2[r+40>>2]*U2[e+168>>2]))))),a=P2(b+t),o=U2[r+120>>2],U2[r+96>>2]=(n=a>2]&&(U2[A+144>>2]=P2(U2[A+112>>2]*P2(b*P2(c*U2[A+128>>2])))+U2[A+144>>2],U2[A+148>>2]=P2(P2(b*P2(f*U2[A+132>>2]))*U2[A+116>>2])+U2[A+148>>2],U2[A+152>>2]=P2(P2(b*P2(i*U2[A+136>>2]))*U2[A+120>>2])+U2[A+152>>2],t=U2[r+72>>2],o=U2[r+68>>2],U2[A+160>>2]=P2(P2(b*U2[A+96>>2])*U2[r+64>>2])+U2[A+160>>2],c=U2[A+104>>2],U2[A+164>>2]=P2(o*P2(b*U2[A+100>>2]))+U2[A+164>>2],U2[A+168>>2]=P2(t*P2(b*c))+U2[A+168>>2]),X2[e+240>>2]&&(t=U2[r+56>>2],o=U2[r+52>>2],U2[e+144>>2]=P2(U2[e+112>>2]*P2(b*P2(U2[r+48>>2]*U2[e+128>>2])))+U2[e+144>>2],U2[e+148>>2]=P2(P2(b*P2(o*U2[e+132>>2]))*U2[e+116>>2])+U2[e+148>>2],U2[e+152>>2]=P2(P2(b*P2(t*U2[e+136>>2]))*U2[e+120>>2])+U2[e+152>>2],t=U2[r+88>>2],o=U2[r+84>>2],U2[e+160>>2]=P2(P2(b*U2[e+96>>2])*U2[r+80>>2])+U2[e+160>>2],c=U2[e+104>>2],U2[e+164>>2]=P2(o*P2(b*U2[e+100>>2]))+U2[e+164>>2],U2[e+168>>2]=P2(t*P2(b*c))+U2[e+168>>2])),P2(b)},function(A,e,r){A|=0,e|=0,r|=0,P2(0);var f,i,a=P2(0),n=P2(0),b=P2(0),t=(P2(0),P2(0),P2(0),U2[r+100>>2]),b=U2[r+16>>2],o=U2[r+20>>2],c=U2[r+24>>2],a=U2[r+108>>2];return a=P2(P2(P2(U2[r+112>>2]-P2(t*U2[r+116>>2]))-P2(P2(P2(P2(P2(b*U2[A+64>>2])+P2(o*U2[A+68>>2]))+P2(c*U2[A+72>>2]))+P2(P2(P2(U2[r>>2]*U2[A+80>>2])+P2(U2[r+4>>2]*U2[A+84>>2]))+P2(U2[r+8>>2]*U2[A+88>>2])))*a))-P2(a*P2(P2(P2(P2(U2[r+48>>2]*U2[e+64>>2])+P2(U2[r+52>>2]*U2[e+68>>2]))+P2(U2[r+56>>2]*U2[e+72>>2]))+P2(P2(P2(U2[r+32>>2]*U2[e+80>>2])+P2(U2[r+36>>2]*U2[e+84>>2]))+P2(U2[r+40>>2]*U2[e+88>>2]))))),f=P2(t+a),n=U2[r+120>>2],U2[r+100>>2]=(i=f>2]&&(U2[A+64>>2]=P2(U2[A+112>>2]*P2(t*P2(b*U2[A+128>>2])))+U2[A+64>>2],U2[A+68>>2]=P2(P2(t*P2(o*U2[A+132>>2]))*U2[A+116>>2])+U2[A+68>>2],U2[A+72>>2]=P2(P2(t*P2(c*U2[A+136>>2]))*U2[A+120>>2])+U2[A+72>>2],a=U2[r+72>>2],n=U2[r+68>>2],U2[A+80>>2]=P2(P2(t*U2[A+96>>2])*U2[r+64>>2])+U2[A+80>>2],b=U2[A+104>>2],U2[A+84>>2]=P2(n*P2(t*U2[A+100>>2]))+U2[A+84>>2],U2[A+88>>2]=P2(a*P2(t*b))+U2[A+88>>2]),X2[e+240>>2]&&(a=U2[r+56>>2],n=U2[r+52>>2],U2[e+64>>2]=P2(U2[e+112>>2]*P2(t*P2(U2[r+48>>2]*U2[e+128>>2])))+U2[e+64>>2],U2[e+68>>2]=P2(P2(t*P2(n*U2[e+132>>2]))*U2[e+116>>2])+U2[e+68>>2],U2[e+72>>2]=P2(P2(t*P2(a*U2[e+136>>2]))*U2[e+120>>2])+U2[e+72>>2],a=U2[r+88>>2],n=U2[r+84>>2],U2[e+80>>2]=P2(P2(t*U2[e+96>>2])*U2[r+80>>2])+U2[e+80>>2],b=U2[e+104>>2],U2[e+84>>2]=P2(n*P2(t*U2[e+100>>2]))+U2[e+84>>2],U2[e+88>>2]=P2(a*P2(t*b))+U2[e+88>>2]),P2(t)},function(A,e,r){A|=0,e|=0,r|=0;var f=P2(0),i=P2(0),a=P2(0),n=P2(0),n=(P2(0),P2(0),P2(0),U2[r+100>>2]),b=U2[r+16>>2],t=U2[r+20>>2],o=U2[r+24>>2],i=U2[r+108>>2],f=P2(P2(P2(U2[r+112>>2]-P2(n*U2[r+116>>2]))-P2(P2(P2(P2(P2(b*U2[A+64>>2])+P2(t*U2[A+68>>2]))+P2(o*U2[A+72>>2]))+P2(P2(P2(U2[r>>2]*U2[A+80>>2])+P2(U2[r+4>>2]*U2[A+84>>2]))+P2(U2[r+8>>2]*U2[A+88>>2])))*i))-P2(i*P2(P2(P2(P2(U2[r+48>>2]*U2[e+64>>2])+P2(U2[r+52>>2]*U2[e+68>>2]))+P2(U2[r+56>>2]*U2[e+72>>2]))+P2(P2(P2(U2[r+32>>2]*U2[e+80>>2])+P2(U2[r+36>>2]*U2[e+84>>2]))+P2(U2[r+40>>2]*U2[e+88>>2])))));return((i=P2(n+f))<(a=U2[r+120>>2])||(a=U2[r+124>>2])>2]=i,X2[A+240>>2]&&(U2[A+64>>2]=P2(U2[A+112>>2]*P2(f*P2(b*U2[A+128>>2])))+U2[A+64>>2],U2[A+68>>2]=P2(P2(f*P2(t*U2[A+132>>2]))*U2[A+116>>2])+U2[A+68>>2],U2[A+72>>2]=P2(P2(f*P2(o*U2[A+136>>2]))*U2[A+120>>2])+U2[A+72>>2],i=U2[r+72>>2],a=U2[r+68>>2],U2[A+80>>2]=P2(P2(f*U2[A+96>>2])*U2[r+64>>2])+U2[A+80>>2],n=U2[A+104>>2],U2[A+84>>2]=P2(a*P2(f*U2[A+100>>2]))+U2[A+84>>2],U2[A+88>>2]=P2(i*P2(f*n))+U2[A+88>>2]),X2[e+240>>2]&&(i=U2[r+56>>2],a=U2[r+52>>2],U2[e+64>>2]=P2(U2[e+112>>2]*P2(f*P2(U2[r+48>>2]*U2[e+128>>2])))+U2[e+64>>2],U2[e+68>>2]=P2(P2(f*P2(a*U2[e+132>>2]))*U2[e+116>>2])+U2[e+68>>2],U2[e+72>>2]=P2(P2(f*P2(i*U2[e+136>>2]))*U2[e+120>>2])+U2[e+72>>2],i=U2[r+88>>2],a=U2[r+84>>2],U2[e+80>>2]=P2(P2(f*U2[e+96>>2])*U2[r+80>>2])+U2[e+80>>2],n=U2[e+104>>2],U2[e+84>>2]=P2(a*P2(f*U2[e+100>>2]))+U2[e+84>>2],U2[e+88>>2]=P2(i*P2(f*n))+U2[e+88>>2]),P2(f)},function(A){o4(27204)},function(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n=0;P2(0),K2=a=K2-96|0,f=X2[X2[A>>2]>>2],i=X2[X2[A+4>>2]>>2],0|N2[X2[X2[e>>2]+24>>2]](e,f,i)&&(X2[88+a>>2]=-1,X2[92+a>>2]=-1,X2[72+a>>2]=0,X2[80+a>>2]=f,X2[84+a>>2]=f+4,X2[76+a>>2]=X2[f+192>>2],X2[64+a>>2]=-1,X2[68+a>>2]=-1,X2[48+a>>2]=0,X2[56+a>>2]=i,X2[60+a>>2]=i+4,X2[52+a>>2]=X2[i+192>>2],((n=X2[A+8>>2])||(n=0|N2[X2[X2[e>>2]+8>>2]](e,72+a|0,48+a|0,0,1),X2[A+8>>2]=n))&&(X2[40+a>>2]=0,X2[12+a>>2]=0,X2[8+a>>2]=15188,A=X2[r+8>>2],X2[20+a>>2]=48+a,X2[16+a>>2]=72+a,1==(0|A)?N2[X2[X2[n>>2]+8>>2]](n,72+a|0,48+a|0,r,8+a|0):(e=P2(N2[X2[X2[n>>2]+12>>2]](n,f,i,r,8+a|0)))>2]&&(U2[r+12>>2]=e))),K2=96+a|0},function(A){A|=0,X2[6630]=19804,(A=X2[6769])&&J2[27080]&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2])),S2[27080]=1,X2[6767]=0,X2[6768]=0,X2[6630]=10112,X2[6769]=0,(A=X2[6704])&&J2[26820]&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2])),S2[26820]=1,X2[6702]=0,X2[6703]=0,X2[6704]=0},function(A){return X2[(A|=0)>>2]=9776,0|A},A,function(A,e){var r=0;return X2[(A|=0)+12>>2]&X2[(e|=0)+4>>2]?(r=1,J2[A+88|0]||(A=X2[e>>2])&&(r=!(4&J2[A+204|0])),0|r):0},function(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n,b,t,o,c=0,k=P2(0),u=P2(0),s=0,c=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),X2[e>>2]),s=X2[c+192>>2];return 31==X2[s+4>>2]&&(i=X2[e+4>>2])&&(s=X2[64+(X2[s+32>>2]+H2(X2[i>>2],80)|0)>>2]),X2[A+8>>2]=c,X2[A+84>>2]=X2[s+8>>2],U2[A+4>>2]=U2[e+24>>2],r?(r=X2[e+12>>2],X2[A+52>>2]=X2[e+8>>2],X2[A+56>>2]=r,s=X2[(c=e+16|0)+4>>2],X2[(r=A+60|0)>>2]=X2[c>>2],X2[r+4>>2]=s):(i=U2[c+8>>2],r=U2[c+12>>2],s=U2[c+20>>2],a=U2[c+24>>2],n=U2[c+28>>2],b=U2[c+36>>2],t=U2[c+40>>2],k=U2[e+12>>2],o=U2[c+44>>2],u=U2[e+16>>2],c=U2[c+4>>2],f=U2[e+8>>2],X2[A- -64>>2]=0,U2[A+60>>2]=P2(P2(f*b)+P2(k*t))+P2(u*o),U2[A+56>>2]=P2(P2(f*s)+P2(k*a))+P2(u*n),U2[A+52>>2]=P2(P2(c*f)+P2(i*k))+P2(r*u)),k=U2[e+24>>2],u=P2(P2(1)-k),U2[A+68>>2]=P2(u*U2[A+20>>2])+P2(k*U2[A+36>>2]),U2[A+72>>2]=P2(u*U2[A+24>>2])+P2(k*U2[A+40>>2]),U2[A+76>>2]=P2(u*U2[A+28>>2])+P2(k*U2[A+44>>2]),P2(U2[e+24>>2])},u0,function(A,e){return(A=X2[(A|=0)+12>>2])&X2[(e|=0)+4>>2]?0!=(A&X2[e+8>>2])|0:0},l0,function(A){n(l0(A|=0))},function(A,e){var r=0;return X2[(A|=0)+12>>2]&X2[(e|=0)+4>>2]?(r=1,J2[A+152|0]||(A=X2[e>>2])&&(r=!(4&J2[A+204|0])),0|r):0},function(A,e,r){A|=0,r|=0;var f=0,i=0,a=0,n=0,b=0,t=0,o=0,i=X2[X2[(e|=0)>>2]+192>>2];if(31==X2[i+4>>2]&&(a=X2[e+4>>2])){if(o=X2[X2[64+(X2[i+32>>2]+H2(X2[a>>2],80)|0)>>2]+8>>2],(0|(f=X2[A+136>>2]))==X2[A+140>>2]&&!((0|(n=f?f<<1:1))<=(0|f))){n&&(X2[6258]=X2[6258]+1,(i=L2(19+(n<<2)|0))&&(X2[(b=i+19&-16)-4>>2]=i)),t=X2[A+144>>2];A:{if(1<=(0|f)){for(i=b,a=t;;)if(X2[i>>2]=X2[a>>2],i=i+4|0,a=a+4|0,!(f=f-1|0))break}else if(!t)break A;J2[A+148|0]&&(X2[6259]=X2[6259]+1,q2(X2[t-4>>2])),f=X2[A+136>>2]}X2[A+144>>2]=b,X2[A+140>>2]=n,S2[A+148|0]=1}}else if(o=X2[i+8>>2],(0|(f=X2[A+136>>2]))==X2[A+140>>2]&&!((0|(n=f?f<<1:1))<=(0|f))){n&&(X2[6258]=X2[6258]+1,(i=L2(19+(n<<2)|0))&&(X2[(b=i+19&-16)-4>>2]=i)),t=X2[A+144>>2];A:{if(1<=(0|f)){for(i=b,a=t;;)if(X2[i>>2]=X2[a>>2],i=i+4|0,a=a+4|0,!(f=f-1|0))break}else if(!t)break A;J2[A+148|0]&&(X2[6259]=X2[6259]+1,q2(X2[t-4>>2])),f=X2[A+136>>2]}X2[A+144>>2]=b,X2[A+140>>2]=n,S2[A+148|0]=1}return X2[X2[A+144>>2]+(f<<2)>>2]=o,X2[A+136>>2]=X2[A+136>>2]+1,P2(B0(A,e,r))},function(A){var e;return X2[(A|=0)>>2]=9980,(e=X2[A+124>>2])&&J2[A+128|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+124>>2]=0,S2[A+128|0]=1,X2[(e=A+116|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+104>>2])&&J2[A+108|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+104>>2]=0,S2[A+108|0]=1,X2[(e=A+96|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+84>>2])&&J2[A+88|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+84>>2]=0,S2[A+88|0]=1,X2[(e=A+76|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+32>>2]=0,X2[A>>2]=9776,S2[A+36|0]=1,X2[(e=A+24|0)>>2]=0,(X2[4+e>>2]=0)|A},function(A){var e;X2[(A|=0)>>2]=9980,(e=X2[A+124>>2])&&J2[A+128|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+124>>2]=0,S2[A+128|0]=1,X2[(e=A+116|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+104>>2])&&J2[A+108|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+104>>2]=0,S2[A+108|0]=1,X2[(e=A+96|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+84>>2])&&J2[A+88|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+84>>2]=0,S2[A+88|0]=1,X2[(e=A+76|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),n(A)},B0,function(A){var e;return X2[(A|=0)>>2]=10112,(e=X2[A+296>>2])&&J2[A+300|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+296>>2]=0,S2[A+300|0]=1,X2[(e=A+288|0)>>2]=0,(X2[4+e>>2]=0)|A},function(A){var e;X2[(A|=0)>>2]=10112,(e=X2[A+296>>2])&&J2[A+300|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+296>>2]=0,S2[A+300|0]=1,X2[(e=A+288|0)>>2]=0,X2[4+e>>2]=0,X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},function(A,e){X2[(A|=0)+200>>2]=e|=0,X2[A+192>>2]=e,X2[A+304>>2]=X2[A+304>>2]+1},function(A,e){e|=0;var r,f=0,f=r=X2[(A|=0)+288>>2];A:if(!((0|r)<1)){for(A=X2[A+296>>2],f=0;;){if(X2[A>>2]==(0|e))break A;if(A=A+4|0,(0|r)==(0|(f=f+1|0)))break}f=r}return(0|r)<=(0|f)|0},function(A){return 264},_0,function(A,e){var r,f=0,i=0,i=e|=0,a=0|N2[X2[X2[(A|=0)>>2]+16>>2]](A),n=X2[X2[e>>2]+16>>2],f=0|N2[n](0|i,0|a,1);r=e,i=0|N2[X2[X2[A>>2]+20>>2]](A,X2[8+(a=f)>>2],e),f=A,n=X2[X2[e>>2]+20>>2],N2[n](0|r,0|a,0|i,1245859651,0|f)},C0,function(A){A=C0(A|=0),X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},function(A){var e;return X2[(A|=0)>>2]=10364,(e=X2[A+60>>2])&&(N2[X2[X2[e>>2]>>2]](e),(e=X2[A+60>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]))),0|A},u0,x0,function(A,e,r){var f,i,a,n,b,t,o,c;A|=0,e|=0,r|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),X2[(n=44+(K2=c=K2-96|0)|0)>>2]=0,X2[4+n>>2]=0,X2[(n=56+c|0)>>2]=0,X2[4+n>>2]=0,X2[52+c>>2]=1065353216,X2[(n=c+64|0)>>2]=0,X2[4+n>>2]=0,X2[(n=76+c|0)>>2]=0,X2[4+n>>2]=0,X2[72+c>>2]=1065353216,X2[(n=84+c|0)>>2]=0,X2[4+n>>2]=0,X2[92+c>>2]=0,X2[36+c>>2]=0,X2[40+c>>2]=0,X2[32+c>>2]=1065353216,N2[X2[X2[A>>2]+8>>2]](A,32+c|0,16+c|0,c),n=U2[c>>2],A=U2[16+c>>2],f=P2(n-A),a=P2(f*f),f=U2[4+c>>2],b=U2[20+c>>2],i=P2(f-b),o=P2(a+P2(i*i)),i=U2[8+c>>2],a=U2[24+c>>2],t=P2(i-a),U2[r>>2]=P2(O2(P2(o+P2(t*t))))*P2(.5),X2[e+12>>2]=0,U2[e+8>>2]=P2(i+a)*P2(.5),U2[e+4>>2]=P2(f+b)*P2(.5),U2[e>>2]=P2(n+A)*P2(.5),K2=96+c|0},function(A){var e,r;return A|=0,P2(0),P2(0),K2=r=K2-32|0,N2[X2[X2[A>>2]+12>>2]](A,16+r|0,12+r|0),K2=32+r|0,A=U2[16+r>>2],e=P2(A*A),A=U2[20+r>>2],e=P2(e+P2(A*A)),A=U2[24+r>>2],P2(P2(U2[12+r>>2]+P2(O2(P2(e+P2(A*A))))))},function(A,e){return A|=0,e=P2(e),P2(P2(P2(N2[X2[X2[A>>2]+16>>2]](A))*e))},function(A,e){A|=0,e|=0,P2(0),P2(0),P2(0);var r=U2[e>>2],f=U2[e+4>>2],e=U2[e+8>>2];X2[A+32>>2]=0,U2[A+28>>2]=j2(e),U2[A+24>>2]=j2(f),U2[A+20>>2]=j2(r)},function(A){return(A|=0)+20|0},function(A,e,r){var f,i,a;A|=0,e=P2(e),r|=0,P2(0),P2(0),P2(0),K2=a=K2-96|0,f=P2(N2[X2[X2[A>>2]+48>>2]](A)),X2[(i=44+a|0)>>2]=0,X2[4+i>>2]=0,X2[(i=56+a|0)>>2]=0,X2[4+i>>2]=0,X2[52+a>>2]=1065353216,X2[(i=a+64|0)>>2]=0,X2[4+i>>2]=0,X2[(i=76+a|0)>>2]=0,X2[4+i>>2]=0,X2[72+a>>2]=1065353216,X2[(i=84+a|0)>>2]=0,X2[4+i>>2]=0,X2[92+a>>2]=0,X2[36+a>>2]=0,X2[40+a>>2]=0,X2[32+a>>2]=1065353216,N2[X2[X2[A>>2]+8>>2]](A,32+a|0,16+a|0,a),X2[r+12>>2]=0,e=P2(e*P2(.0833333283662796)),i=P2(f+P2(P2(U2[a>>2]-U2[16+a>>2])*P2(.5))),i=P2(i+i),i=P2(i*i),A=P2(f+P2(P2(U2[4+a>>2]-U2[20+a>>2])*P2(.5))),A=P2(A+A),A=P2(A*A),U2[r+8>>2]=e*P2(i+A),f=P2(f+P2(P2(U2[8+a>>2]-U2[24+a>>2])*P2(.5))),f=P2(f+f),f=P2(f*f),U2[r+4>>2]=e*P2(i+f),U2[r>>2]=e*P2(A+f),K2=96+a|0},function(A,e){X2[(A|=0)+8>>2]=1065353216,X2[A+12>>2]=0,X2[A>>2]=1065353216,X2[A+4>>2]=1065353216},y0,function(A){return P2(U2[(A|=0)+52>>2])},P0,function(A,e,r){e|=0;var f=0|N2[X2[X2[(r|=0)>>2]+40>>2]](r,A|=0),i=0|N2[X2[X2[r>>2]+28>>2]](r,f);return(X2[e>>2]=i)&&N2[X2[X2[r>>2]+48>>2]](r,f),r=X2[A+4>>2],X2[e+8>>2]=0,U2[e+28>>2]=U2[A+36>>2],U2[e+32>>2]=U2[A+40>>2],U2[e+36>>2]=U2[A+44>>2],U2[e+40>>2]=U2[A+48>>2],U2[e+12>>2]=U2[A+20>>2],U2[e+16>>2]=U2[A+24>>2],U2[e+20>>2]=U2[A+28>>2],U2[e+24>>2]=U2[A+32>>2],X2[e+4>>2]=r,U2[e+44>>2]=U2[A+52>>2],X2[e+48>>2]=0,10896},function(A,e){var r,f=0,i=0,i=e|=0,a=0|N2[X2[X2[(A|=0)>>2]+52>>2]](A),n=X2[X2[e>>2]+16>>2],f=0|N2[n](0|i,0|a,1);r=e,i=0|N2[X2[X2[A>>2]+56>>2]](A,X2[8+(a=f)>>2],e),f=A,n=X2[X2[e>>2]+20>>2],N2[n](0|r,0|a,0|i,1346455635,0|f)},G0,function(A,e,r){A|=0,e|=0,r|=0;var f,i=0,a=P2(0),n=P2(0),b=0,t=P2(0),o=P2(0),c=0,k=0,u=0,s=P2(0),l=P2(0),B=P2(0);if(K2=f=K2-2048|0,X2[A>>2]=0,X2[A+4>>2]=0,X2[(i=A+8|0)>>2]=0,X2[i+4>>2]=0,t=U2[r>>2],a=U2[r+4>>2],o=U2[r+8>>2],n=P2(P2(P2(t*t)+P2(a*a))+P2(o*o)),s=P2(1),n>2]+96>>2]](e)))for(o=P2(-0xde0b6b000000000);;){if(c=128,127<((0|N2[X2[X2[e>>2]+96>>2]](e))-k|0)||1<=(0|(c=(0|N2[X2[X2[e>>2]+96>>2]](e))-k|0))){for(r=0,i=f;;)if(N2[X2[X2[e>>2]+108>>2]](e,r,i),i=i+16|0,(0|c)==(0|(r=r+1|0)))break;for(i=0,u=-1,a=P2(-34028234663852886e22),r=f;;)if(a=(b=a<(t=P2(P2(P2(n*U2[r>>2])+P2(B*U2[r+4>>2]))+P2(l*U2[r+8>>2]))))?t:a,u=b?i:u,r=r+16|0,(0|c)==(0|(i=i+1|0)))break}else a=P2(-34028234663852886e22),u=-1;if(o>2],X2[(i=A+8|0)>>2]=X2[b+8>>2],X2[i+4>>2]=r,r=X2[b+4>>2],X2[A>>2]=X2[b>>2],X2[A+4>>2]=r,o=a),k=k+128|0,!((0|N2[X2[X2[e>>2]+96>>2]](e))>(0|k)))break}K2=2048+f|0},function(A,e,r,f,i,a,n){var b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C,h,F,Y,m,N,R,D,T,W,I;A|=0,e|=0,r|=0,f|=0,i|=0,a|=0,n|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),X2[44+(K2=I=K2-48|0)>>2]=0,b=U2[r>>2],t=U2[r+4>>2],o=U2[r+8>>2],U2[32+I>>2]=P2(P2(U2[e>>2]*b)+P2(U2[e+16>>2]*t))+P2(U2[e+32>>2]*o),m=e+24|0,h=e+40|0,U2[40+I>>2]=P2(P2(b*U2[e+8>>2])+P2(t*U2[m>>2]))+P2(o*U2[h>>2]),N=e+20|0,F=e+36|0,U2[36+I>>2]=P2(P2(b*U2[e+4>>2])+P2(t*U2[N>>2]))+P2(o*U2[F>>2]),N2[X2[X2[A>>2]+64>>2]](16+I|0,A,32+I|0),B=U2[(C=e+56|0)>>2],v=U2[h>>2],d=U2[F>>2],s=U2[(Y=e+52|0)>>2],Z=U2[m>>2],_=U2[N>>2],g=U2[e+32>>2],l=U2[e+48>>2],E=U2[e+8>>2],Q=U2[e>>2],w=U2[e+4>>2],G=U2[e+16>>2],b=U2[24+I>>2],t=U2[16+I>>2],o=U2[20+I>>2],X2[12+I>>2]=0,U2[8+I>>2]=-U2[40+I>>2],U2[4+I>>2]=-U2[36+I>>2],U2[I>>2]=-U2[32+I>>2],N2[X2[X2[A>>2]+64>>2]](16+I|0,A,I),A=U2[C>>2],C=U2[h>>2],h=U2[F>>2],F=U2[Y>>2],Y=U2[m>>2],m=U2[N>>2],N=U2[e+32>>2],R=U2[e+48>>2],D=U2[e+8>>2],T=U2[e>>2],W=U2[e+4>>2],e=U2[e+16>>2],c=U2[24+I>>2],k=U2[16+I>>2],u=U2[20+I>>2],l=P2(l+P2(P2(P2(t*Q)+P2(o*w))+P2(b*E))),s=P2(s+P2(P2(P2(t*G)+P2(o*_))+P2(b*Z))),b=P2(B+P2(P2(P2(t*g)+P2(o*d))+P2(b*v))),U2[f>>2]=P2(P2(l*U2[r>>2])+P2(s*U2[r+4>>2]))+P2(b*U2[r+8>>2]),t=P2(R+P2(P2(P2(k*T)+P2(u*W))+P2(c*D))),o=P2(F+P2(P2(P2(k*e)+P2(u*m))+P2(c*Y))),c=P2(A+P2(P2(P2(k*N)+P2(u*h))+P2(c*C))),U2[i>>2]=P2(P2(t*U2[r>>2])+P2(o*U2[r+4>>2]))+P2(c*U2[r+8>>2]),X2[n+12>>2]=0,U2[n+8>>2]=c,U2[n+4>>2]=o,U2[n>>2]=t,X2[a+12>>2]=0,U2[a+8>>2]=b,U2[a+4>>2]=s,U2[a>>2]=l,k=U2[f>>2],(u=U2[i>>2])>2]=u,U2[i>>2]=k,X2[n+12>>2]=0,U2[n+8>>2]=b,U2[n+4>>2]=s,U2[n>>2]=l,X2[a+12>>2]=0,U2[a+8>>2]=c,U2[a+4>>2]=o,U2[a>>2]=t),K2=48+I|0},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n,b,t,o,c,k,u,s,l,B=0,v=0,d=P2(0),Z=0,_=0,g=0,E=0;if(P2(0),P2(0),P2(0),P2(0),K2=l=K2-2048|0,1<=(0|f)){for(v=r+12|0,B=f;;)if(X2[v>>2]=-581039253,v=v+16|0,!(B=B-1|0))break;for(;;){if(1<=(0|N2[X2[X2[A>>2]+96>>2]](A)))for(n=12+(i=(B=E<<4)+r|0)|0,o=8+(a=e+B|0)|0,c=4+a|0,_=0;;){if(g=128,127<((0|N2[X2[X2[A>>2]+96>>2]](A))-_|0)||1<=(0|(g=(0|N2[X2[X2[A>>2]+96>>2]](A))-_|0))){for(v=0,B=l;;)if(N2[X2[X2[A>>2]+108>>2]](A,v,B),B=B+16|0,(0|g)==(0|(v=v+1|0)))break;for(k=U2[o>>2],u=U2[c>>2],s=U2[a>>2],B=0,Z=-1,d=P2(-34028234663852886e22),v=l;;)if(d=(t=d<(b=P2(P2(P2(s*U2[v>>2])+P2(u*U2[v+4>>2]))+P2(k*U2[v+8>>2]))))?b:d,Z=t?B:Z,v=v+16|0,(0|g)==(0|(B=B+1|0)))break}else d=P2(-34028234663852886e22),Z=-1;if(U2[n>>2]>2],X2[(v=8+i|0)>>2]=X2[B+8>>2],X2[v+4>>2]=Z,v=X2[B+4>>2],X2[i>>2]=X2[B>>2],X2[4+i>>2]=v,U2[n>>2]=d),_=_+128|0,!((0|N2[X2[X2[A>>2]+96>>2]](A))>(0|_)))break}if((0|(E=E+1|0))==(0|f))break}}K2=2048+l|0},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0);var i,a,n,b,t,o,c,k=0;for(P2(0),K2=c=K2-80|0,o=P2(N2[X2[X2[A>>2]+48>>2]](A)),t=72+c|0;;)if(X2[t>>2]=0,X2[4+t>>2]=0,X2[64+c>>2]=0,X2[68+c>>2]=0,X2[(b=(c+64|0)+k|0)>>2]=1065353216,X2[44+c>>2]=0,i=U2[64+c>>2],a=U2[68+c>>2],n=U2[t>>2],U2[40+c>>2]=P2(P2(i*U2[e+8>>2])+P2(a*U2[e+24>>2]))+P2(n*U2[e+40>>2]),U2[36+c>>2]=P2(P2(i*U2[e+4>>2])+P2(a*U2[e+20>>2]))+P2(n*U2[e+36>>2]),U2[32+c>>2]=P2(P2(i*U2[e>>2])+P2(a*U2[e+16>>2]))+P2(n*U2[e+32>>2]),N2[X2[X2[A>>2]+64>>2]](48+c|0,A,32+c|0),X2[44+c>>2]=0,i=U2[48+c>>2],a=U2[52+c>>2],n=U2[56+c>>2],U2[40+c>>2]=P2(P2(P2(i*U2[e+32>>2])+P2(a*U2[e+36>>2]))+P2(n*U2[e+40>>2]))+U2[e+56>>2],U2[36+c>>2]=P2(P2(P2(i*U2[e+16>>2])+P2(a*U2[e+20>>2]))+P2(n*U2[e+24>>2]))+U2[e+52>>2],U2[32+c>>2]=P2(P2(P2(i*U2[e>>2])+P2(a*U2[e+4>>2]))+P2(n*U2[e+8>>2]))+U2[e+48>>2],X2[b>>2]=-1082130432,U2[f+k>>2]=o+U2[(b=(32+c|0)+k|0)>>2],X2[12+c>>2]=0,i=U2[64+c>>2],a=U2[68+c>>2],n=U2[t>>2],U2[8+c>>2]=P2(P2(i*U2[e+8>>2])+P2(a*U2[e+24>>2]))+P2(n*U2[e+40>>2]),U2[4+c>>2]=P2(P2(i*U2[e+4>>2])+P2(a*U2[e+20>>2]))+P2(n*U2[e+36>>2]),U2[c>>2]=P2(P2(i*U2[e>>2])+P2(a*U2[e+16>>2]))+P2(n*U2[e+32>>2]),N2[X2[X2[A>>2]+64>>2]](16+c|0,A,c),X2[44+c>>2]=0,i=U2[16+c>>2],a=U2[20+c>>2],n=U2[24+c>>2],U2[40+c>>2]=P2(P2(P2(i*U2[e+32>>2])+P2(a*U2[e+36>>2]))+P2(n*U2[e+40>>2]))+U2[e+56>>2],U2[36+c>>2]=P2(P2(P2(i*U2[e+16>>2])+P2(a*U2[e+20>>2]))+P2(n*U2[e+24>>2]))+U2[e+52>>2],U2[32+c>>2]=P2(P2(P2(i*U2[e>>2])+P2(a*U2[e+4>>2]))+P2(n*U2[e+8>>2]))+U2[e+48>>2],U2[r+k>>2]=U2[b>>2]-o,12==(0|(k=k+4|0)))break;K2=80+c|0},V0,f,function(A,e){A|=0,e|=0;var x,y,V,p,M,r=0,f=0,i=0,a=0,n=0,b=0,t=P2(0),o=0,c=P2(0),k=0,u=P2(0),s=P2(0),l=0,B=0,v=0,d=P2(0),Z=0,_=0,g=0,E=P2(0),Q=P2(0),w=P2(0),G=P2(0),C=0,h=0,F=0,Y=0,m=0,N=0,R=P2(0),D=P2(0),T=0,W=P2(0),S=P2(0),X=0,J=0,I=(P2(0),P2(0),P2(0),K2-208|0);if(K2=I,(f=X2[A+60>>2])&&(N2[X2[X2[f>>2]>>2]](f),(f=X2[A+60>>2])&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2]))),X2[6258]=X2[6258]+1,(f=L2(151))&&(X2[(r=f+19&-16)-4>>2]=f),X2[r>>2]=10316,S2[r+20|0]=1,X2[r+16>>2]=0,S2[r+40|0]=1,X2[r+8>>2]=0,X2[r+12>>2]=0,X2[r+36>>2]=0,S2[r+60|0]=1,X2[r+28>>2]=0,X2[r+32>>2]=0,X2[r+56>>2]=0,X2[r+48>>2]=0,X2[r+52>>2]=0,X2[A+60>>2]=r,!(((r=0)|N2[X2[X2[A>>2]+96>>2]](A))<1)){for(;;){if((0|a)==(0|g)&&!((0|(f=a?a<<1:1))<=(0|a))){n=0,f&&(X2[6258]=X2[6258]+1,(r=L2(19+(f<<4)|0))&&(X2[(n=r+19&-16)-4>>2]=r));A:{if(1<=(0|a)){for(r=n,i=Y;;)if(o=X2[i+4>>2],X2[r>>2]=X2[i>>2],X2[r+4>>2]=o,C=X2[(Z=i+8|0)+4>>2],X2[(o=r+8|0)>>2]=X2[Z>>2],X2[o+4>>2]=C,r=r+16|0,i=i+16|0,!(a=a-1|0))break}else if(!Y)break A;X2[6259]=X2[6259]+1,q2(X2[Y-4>>2])}a=f,Y=n}if(n=X2[108+I>>2],X2[(r=(g<<4)+Y|0)>>2]=X2[104+I>>2],X2[r+4>>2]=n,i=X2[(n=112+I|0)+4>>2],X2[(f=r+8|0)>>2]=X2[n>>2],X2[f+4>>2]=i,N2[X2[X2[A>>2]+108>>2]](A,g,r),g=g+1|0,!((0|N2[X2[X2[A>>2]+96>>2]](A))>(0|g)))break}r=Y}S2[140+I|0]=1,X2[136+I>>2]=0,S2[160+I|0]=1,X2[(f=128+I|0)>>2]=0,X2[f+4>>2]=0,X2[156+I>>2]=0,X2[(f=148+I|0)>>2]=0,X2[f+4>>2]=0,X2[116+I>>2]=0,S2[120+I|0]=1,X2[108+I>>2]=0,X2[112+I>>2]=0;A:{e:{if(!e){I0(104+I|0,r,g);break A}if(!((0|g)<1)){for(h=g-1|0,n=Y+24|0;;){if((k=(e=k)+1|0)>>>0>>0)for(C=(b=(e<<4)+Y|0)+8|0,m=b+4|0,o=k;;){if((0|(o=(e=o)+1|0))<(0|g))for(X=(_=(e<<4)+Y|0)+8|0,N=_+4|0,Z=o;;){for(t=U2[b>>2],c=P2(U2[_>>2]-t),u=U2[m>>2],s=P2(U2[(e=(Z<<4)+Y|0)+4>>2]-u),u=P2(U2[N>>2]-u),t=P2(U2[e>>2]-t),E=P2(P2(c*s)-P2(u*t)),w=U2[C>>2],G=P2(U2[X>>2]-w),d=P2(G*t),t=P2(U2[e+8>>2]-w),w=P2(d-P2(c*t)),G=P2(P2(u*t)-P2(G*s)),c=P2(1),e=1;;){t=P2(E*c),u=P2(G*c),c=P2(w*c);r:if((s=P2(P2(t*t)+P2(P2(u*u)+P2(c*c))))>P2(9999999747378752e-20)){s=P2(P2(1)/P2(O2(s))),t=P2(t*s),c=P2(c*s),u=P2(u*s),a=(0|l)<1;f:if(!a){if(P2(P2(P2(u*U2[B>>2])+P2(c*U2[B+4>>2]))+P2(t*U2[B+8>>2]))>P2(.9990000128746033))break r;for(f=l-1|0,r=B+24|0,i=0;;){if((0|f)==(0|i))break f;if(F=r-4|0,T=r-8|0,s=U2[r>>2],r=r+16|0,i=i+1|0,P2(P2(P2(u*U2[T>>2])+P2(c*U2[F>>2]))+P2(t*s))>P2(.9990000128746033))break}if((0|i)<(0|l))break r}if(s=P2(P2(P2(u*U2[b>>2])+P2(c*U2[m>>2]))+P2(t*U2[C>>2])),!(P2(P2(P2(P2(P2(u*U2[Y>>2])+P2(c*U2[Y+4>>2]))+P2(t*U2[Y+8>>2]))-s)+P2(-.009999999776482582))>P2(0))){d=P2(-s),i=0,r=n;f:{for(;;){if((0|i)==(0|h))break f;if(f=r-4|0,F=r-8|0,Q=U2[r>>2],r=r+16|0,i=i+1|0,P2(P2(P2(P2(P2(u*U2[F>>2])+P2(c*U2[f>>2]))+P2(t*Q))-s)+P2(-.009999999776482582))>P2(0))break}if((0|i)<(0|g))break r}if((0|l)==(0|v))if((0|(v=l?l<<1:1))<=(0|l))v=l;else{f=0,v&&(X2[6258]=X2[6258]+1,(r=L2(19+(v<<4)|0))&&(X2[(f=r+19&-16)-4>>2]=r));f:{if(a){if(!B)break f}else for(r=f,i=B,a=l;;)if(F=X2[i+4>>2],X2[r>>2]=X2[i>>2],X2[r+4>>2]=F,J=X2[(T=i+8|0)+4>>2],X2[(F=r+8|0)>>2]=X2[T>>2],X2[F+4>>2]=J,r=r+16|0,i=i+16|0,!(a=a-1|0))break;X2[6259]=X2[6259]+1,q2(X2[B-4>>2])}B=f}U2[(r=(l<<4)+B|0)+12>>2]=d,U2[r+8>>2]=t,U2[r+4>>2]=c,U2[r>>2]=u,l=l+1|0}}if(r=1&e,c=P2(-1),e=0,!r)break}if(!((0|(Z=Z+1|0))<(0|g)))break}if((0|o)==(0|g))break}if((0|k)==(0|g))break}if((0|l)<1)b=0;else{for(n=e=b=0;;){if(X2[(v=40+I|0)>>2]=X2[(r=(n<<4)+B|0)+8>>2],f=X2[r+4>>2],X2[32+I>>2]=X2[r>>2],X2[36+I>>2]=f,t=P2(U2[r+12>>2]-P2(N2[X2[X2[A>>2]+48>>2]](A))),(0|n)!=(0|(f=e)))f=n;else if((0|(e=f?f<<1:1))<=(0|f))e=f;else{o=0,e&&(X2[6258]=X2[6258]+1,(r=L2(19+(e<<4)|0))&&(X2[(o=r+19&-16)-4>>2]=r));r:{if(1<=(0|f)){for(r=o,i=b,a=f;;)if(k=X2[i+4>>2],X2[r>>2]=X2[i>>2],X2[r+4>>2]=k,g=X2[(Z=i+8|0)+4>>2],X2[(k=r+8|0)>>2]=X2[Z>>2],X2[k+4>>2]=g,r=r+16|0,i=i+16|0,!(a=a-1|0))break}else if(!b)break r;X2[6259]=X2[6259]+1,q2(X2[b-4>>2])}b=o}if(r=(f<<4)+b|0,f=X2[36+I>>2],X2[r>>2]=X2[32+I>>2],X2[r+4>>2]=f,f=X2[v>>2],U2[r+12>>2]=t,X2[r+8>>2]=f,(0|l)==(0|(n=n+1|0)))break}if(!((0|l)<1)){for(k=Z=r=e=0;;){if((k=(f=k)+1|0)>>>0>>0)for(_=(v=(f<<4)+b|0)+12|0,h=v+4|0,X=v+8|0,g=k;;){if((0|(g=(f=g)+1|0))<(0|l))for(N=(m=(f<<4)+b|0)+12|0,F=m+8|0,T=m+4|0,i=g;;){if(f=r,u=U2[(r=(i<<4)+b|0)+4>>2],s=U2[m>>2],E=U2[T>>2],w=U2[r>>2],G=P2(P2(u*s)-P2(E*w)),d=U2[r+8>>2],Q=U2[F>>2],D=P2(P2(E*d)-P2(Q*u)),W=P2(P2(Q*w)-P2(d*s)),P2(P2(G*G)+P2(P2(D*D)+P2(W*W)))>P2(9999999747378752e-20)){if(t=U2[h>>2],c=U2[v>>2],S=P2(P2(w*t)-P2(u*c)),R=u,u=U2[X>>2],R=P2(P2(R*u)-P2(d*t)),w=P2(P2(d*c)-P2(w*u)),P2(P2(S*S)+P2(P2(R*R)+P2(w*w)))>P2(9999999747378752e-20)){if(d=P2(P2(E*c)-P2(s*t)),E=P2(P2(Q*t)-P2(E*u)),s=P2(P2(s*u)-P2(Q*c)),P2(P2(d*d)+P2(P2(E*E)+P2(s*s)))>P2(9999999747378752e-20)){if(t=P2(P2(u*G)+P2(P2(t*W)+P2(D*c))),P2(j2(t))>P2(9.999999974752427e-7)){for(t=P2(P2(-1)/t),c=U2[r+12>>2],u=U2[_>>2],Q=P2(G*u),G=U2[N>>2],d=P2(t*P2(P2(d*c)+P2(Q+P2(S*G)))),s=P2(t*P2(P2(s*c)+P2(P2(W*u)+P2(w*G)))),t=P2(t*P2(P2(E*c)+P2(P2(D*u)+P2(R*G)))),a=0,n=1,r=b;;)if(P2(P2(U2[r+12>>2]+P2(P2(P2(t*U2[r>>2])+P2(s*U2[r+4>>2]))+P2(d*U2[r+8>>2])))+P2(-.009999999776482582))>P2(0)||(r=r+16|0,n=(a=a+1|0)>>>0>>0,(0|a)==(0|l)))break;if(1&n)r=f;else{if((0|f)!=(0|Z))r=f,f=Z;else if((0|(r=f?f<<1:1))<=(0|f))r=f;else{o=0,r&&(X2[6258]=X2[6258]+1,(n=L2(19+(r<<4)|0))&&(X2[(o=n+19&-16)-4>>2]=n));r:{if(1<=(0|f)){for(a=o,n=e,C=f;;)if(J=X2[n+4>>2],X2[a>>2]=X2[n>>2],X2[a+4>>2]=J,y=X2[4+(x=n+8|0)>>2],X2[(J=a+8|0)>>2]=X2[x>>2],X2[J+4>>2]=y,a=a+16|0,n=n+16|0,!(C=C-1|0))break}else if(!e)break r;X2[6259]=X2[6259]+1,q2(X2[e-4>>2])}e=o}X2[(f=(f<<4)+e|0)+12>>2]=0,U2[f+8>>2]=d,U2[f+4>>2]=s,U2[f>>2]=t,Z=Z+1|0}}else r=f;}else r=f;}else r=f;}else r=f;if(!((0|(i=i+1|0))<(0|l)))break}if((0|l)==(0|g))break}if((0|k)==(0|l))break}if(I0(104+I|0,e,Z),!e)break e;X2[6259]=X2[6259]+1,q2(X2[e-4>>2]);break e}}}I0(104+I|0,0,0)}b&&(X2[6259]=X2[6259]+1,q2(X2[b-4>>2])),B&&(X2[6259]=X2[6259]+1,q2(X2[B-4>>2]))}if(1<=((g=0)|(n=X2[148+I>>2])))for(X2[6258]=X2[6258]+1,(e=L2(19+(n<<4)|0))&&(X2[(g=e+19&-16)-4>>2]=e),r=g,i=n;;)if(e=X2[36+I>>2],X2[r>>2]=X2[32+I>>2],X2[r+4>>2]=e,a=X2[(f=40+I|0)+4>>2],X2[(e=r+8|0)>>2]=X2[f>>2],X2[e+4>>2]=a,r=r+16|0,!(i=i-1|0))break;if(X2[92+I>>2]=0,S2[96+I|0]=1,X2[84+I>>2]=0,X2[88+I>>2]=0,S2[0|(e=47+I|0)]=0,S2[e+1|0]=0,S2[e+2|0]=0,S2[e+3|0]=0,X2[(e=40+I|0)>>2]=0,X2[e+4>>2]=0,X2[32+I>>2]=0,-1<((X2[36+I>>2]=0)|n)){if(n)for(p0(80+I|0,n),r=X2[92+I>>2]+20|0,e=32+I|3,a=n;;)if(X2[(f=o=r-16|0)>>2]=0,X2[f+4>>2]=0,S2[r-4|0]=1,f=J2[e+4|0]|J2[e+5|0]<<8|(J2[e+6|0]<<16|J2[e+7|0]<<24),i=J2[0|e]|J2[e+1|0]<<8|(J2[e+2|0]<<16|J2[e+3|0]<<24),S2[0|r]=i,S2[r+1|0]=i>>>8,S2[r+2|0]=i>>>16,S2[r+3|0]=i>>>24,S2[r+4|0]=f,S2[r+5|0]=f>>>8,S2[r+6|0]=f>>>16,S2[r+7|0]=f>>>24,X2[o+8>>2]=0,o=J2[(i=e+8|0)+4|0]|J2[i+5|0]<<8|(J2[i+6|0]<<16|J2[i+7|0]<<24),i=J2[0|i]|J2[i+1|0]<<8|(J2[i+2|0]<<16|J2[i+3|0]<<24),S2[0|(f=r+8|0)]=i,S2[f+1|0]=i>>>8,S2[f+2|0]=i>>>16,S2[f+3|0]=i>>>24,S2[f+4|0]=o,S2[f+5|0]=o>>>8,S2[f+6|0]=o>>>16,S2[f+7|0]=o>>>24,r=r+36|0,!(a=a-1|0))break;if(X2[84+I>>2]=n,i=X2[108+I>>2],o=X2[A+60>>2],(0|(f=X2[o+8>>2]))<(0|i)){if(X2[o+12>>2]<(0|i)){if(e=0,i&&(X2[6258]=X2[6258]+1,(r=L2(19+(i<<4)|0))&&(X2[(e=r+19&-16)-4>>2]=r)),1<=(0|f))for(r=0,a=f;;)if(b=X2[o+16>>2]+r|0,Z=X2[b+4>>2],X2[(k=v=e+r|0)>>2]=X2[b>>2],X2[k+4>>2]=Z,k=X2[(b=b+8|0)+4>>2],X2[(v=v+8|0)>>2]=X2[b>>2],X2[v+4>>2]=k,r=r+16|0,!(a=a-1|0))break;(r=X2[o+16>>2])&&J2[o+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[o+16>>2]=e,X2[o+12>>2]=i,S2[o+20|0]=1}for(r=f<<4,a=i-f|0;;)if(b=X2[36+I>>2],e=X2[o+16>>2]+r|0,X2[e>>2]=X2[32+I>>2],X2[e+4>>2]=b,b=X2[(f=40+I|0)+4>>2],X2[(e=e+8|0)>>2]=X2[f>>2],X2[e+4>>2]=b,r=r+16|0,!(a=a-1|0))break}if(1<=(0|(X2[o+8>>2]=i)))for(r=0;;)if(e=X2[116+I>>2]+r|0,o=X2[e+4>>2],f=X2[X2[A+60>>2]+16>>2]+r|0,X2[f>>2]=X2[e>>2],X2[f+4>>2]=o,a=X2[(e=e+8|0)+4>>2],X2[(f=f+8|0)>>2]=X2[e>>2],X2[f+4>>2]=a,r=r+16|0,!(i=i-1|0))break;if(!((0|n)<1))for(B=0;;){for(e=0,f=_=X2[136+I>>2]+H2(X2[X2[156+I>>2]+(B<<2)>>2],12)|0;;){if(v=(b=(l=H2(B,36))+X2[92+I>>2]|0)+4|0,C=X2[8+(H2(X2[f+4>>2],12)+f|0)>>2],(0|(a=X2[b+4>>2]))==X2[b+8>>2]&&!((0|(Z=a?a<<1:1))<=(0|a))){Z?(k=0,X2[6258]=X2[6258]+1,(r=L2(19+(Z<<2)|0))&&(X2[(k=r+19&-16)-4>>2]=r),a=X2[v>>2]):k=0,h=b+8|0,m=b+12|0,o=X2[b+12>>2];A:{if(1<=(0|a)){for(r=k,i=o;;)if(X2[r>>2]=X2[i>>2],r=r+4|0,i=i+4|0,!(a=a-1|0))break}else if(!o)break A;J2[b+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[o-4>>2])),X2[m>>2]=0,a=X2[v>>2]}X2[m>>2]=k,X2[h>>2]=Z,S2[b+16|0]=1}if(X2[X2[b+12>>2]+(a<<2)>>2]=C,X2[v>>2]=X2[v>>2]+1,e=(0|e)<=1?(i=X2[116+I>>2],t=U2[(r=i+(C<<4)|0)+4>>2],i=i+(X2[f+8>>2]<<4)|0,u=U2[i+4>>2],c=U2[r>>2],s=U2[i>>2],E=U2[r+8>>2],w=U2[i+8>>2],X2[(r=(32+I|0)+(e<<4)|0)+12>>2]=0,c=P2(s-c),u=P2(u-t),s=P2(w-E),t=P2(P2(1)/P2(O2(P2(P2(P2(c*c)+P2(u*u))+P2(s*s))))),U2[r+8>>2]=s*t,U2[r+4>>2]=u*t,U2[r>>2]=c*t,e+1|0):2,r=H2(X2[f+4>>2],12)+f|0,(0|_)==(0|(f=H2(X2[r>>2],12)+r|0)))break}if(2==(0|e)?(t=U2[36+I>>2],c=U2[52+I>>2],u=U2[48+I>>2],s=U2[40+I>>2],E=U2[32+I>>2],w=U2[56+I>>2],X2[(e=(B<<4)+g|0)+12>>2]=0,G=P2(P2(c*E)-P2(t*u)),c=P2(P2(t*w)-P2(s*c)),u=P2(P2(s*u)-P2(w*E)),t=P2(P2(1)/P2(O2(P2(P2(G*G)+P2(P2(c*c)+P2(u*u)))))),U2[e+8>>2]=G*t,U2[e+4>>2]=u*t,t=P2(c*t),U2[e>>2]=t,i=X2[92+I>>2],U2[(r=l+i|0)+20>>2]=t,U2[r+24>>2]=U2[e+4>>2],U2[r+28>>2]=U2[e+8>>2],X2[r+32>>2]=1900671690):(X2[(e=(B<<4)+g|0)>>2]=0,X2[e+4>>2]=0,X2[(e=e+8|0)>>2]=0,X2[e+4>>2]=0,i=X2[92+I>>2]),(0|(f=X2[(e=i+l|0)+4>>2]))<1)c=P2(1.0000000150474662e30);else if(o=X2[X2[A+60>>2]+16>>2],a=X2[e+12>>2],r=o+(X2[a>>2]<<4)|0,t=U2[(i=(B<<4)+g|0)>>2],u=U2[i+4>>2],s=U2[i+8>>2],c=(c=P2(P2(P2(U2[r>>2]*t)+P2(U2[r+4>>2]*u))+P2(U2[r+8>>2]*s)))>2]<<4)|0,c=(E=P2(P2(P2(U2[f>>2]*t)+P2(U2[f+4>>2]*u))+P2(U2[f+8>>2]*s)))>2]=-c,(0|n)==(0|(B=B+1|0)))break}}else U();if(1<=X2[84+I>>2]){for(f=o=Z=0;;){if((0|f)==(0|o))if((f=o?o<<1:1)>>>0<=o>>>0)f=o;else{n=0,X2[6258]=X2[6258]+1,(e=L2(19+(f<<2)|0))&&(X2[(n=e+19&-16)-4>>2]=e);A:{if(o){for(r=n,i=Z,a=o;;)if(X2[r>>2]=X2[i>>2],r=r+4|0,i=i+4|0,!(a=a-1|0))break}else if(!Z){f=1;break A}X2[6259]=X2[6259]+1,q2(X2[Z-4>>2])}Z=n}if(!((0|(o=(X2[(o<<2)+Z>>2]=o)+1|0))>2]))break}for(m=52+I|0;;){e=X2[((f=o-1|0)<<2)+Z>>2],X2[6258]=X2[6258]+1,v=0,(r=L2(23))&&(X2[(v=r+19&-16)-4>>2]=r),X2[v>>2]=e;A:{if((0|o)<2)C=1,o=f;else{for(e=(i=X2[92+I>>2])+H2(e,36)|0,t=U2[e+20>>2],c=U2[e+28>>2],u=U2[e+24>>2],n=o-2|0,e=v,o=f,C=r=1;;){f=X2[(n<<2)+Z>>2],i=H2(f,36)+i|0;e:if(P2(P2(P2(t*U2[i+20>>2])+P2(u*U2[i+24>>2]))+P2(c*U2[i+28>>2]))>P2(.9990000128746033)){r:if((0|r)!=(0|C)||(0|(b=r?r<<1:1))<=(0|r))v=e,b=r;else{if(v=0,b&&(X2[6258]=X2[6258]+1,(i=L2(19+(b<<2)|0))&&(X2[(v=i+19&-16)-4>>2]=i)),1<=(0|r)){for(i=v,a=e;;)if(X2[i>>2]=X2[a>>2],i=i+4|0,a=a+4|0,!(r=r-1|0))break}else if(!e)break r;X2[6259]=X2[6259]+1,q2(X2[e-4>>2])}if(X2[(C<<2)+v>>2]=f,C=C+1|0,!((0|o)<1)){for(i=0,r=Z;;){if((0|f)==X2[r>>2])break;if(r=r+4|0,(0|o)==(0|(i=i+1|0)))break e}(0|o)<=(0|i)||(X2[r>>2]=X2[(e=((o=o-1|0)<<2)+Z|0)>>2],X2[e>>2]=f)}}else v=e,b=r;if(!(1<=(0|n)))break;n=n-1|0,i=X2[92+I>>2],e=v,r=b}if((0|C)<=1){if(e=1!=(0|C),C=1,e)break A}else{for(X2[20+I>>2]=n=0,S2[24+I|0]=1,X2[12+I>>2]=0,X2[16+I>>2]=0,c=P2(0),u=P2(f=0),s=P2(0),a=0;;){if(r=X2[92+I>>2]+H2(X2[(a<<2)+v>>2],36)|0,t=U2[r+20>>2],E=U2[r+28>>2],w=U2[r+24>>2],1<=(0|(e=X2[r+4>>2])))for(h=r+4|0,X=r+12|0,b=0;;){l=X2[X2[X>>2]+(b<<2)>>2],r=X2[X2[A+60>>2]+16>>2]+(l<<4)|0,_=X2[(B=r+8|0)+4>>2],X2[(i=k=176+I|0)>>2]=X2[B>>2],X2[i+4>>2]=_,i=X2[r+4>>2],X2[168+I>>2]=X2[r>>2],X2[172+I>>2]=i;e:{if(1<=(0|f)){for(i=1<(0|n)?n:1,r=X2[20+I>>2]+20|0;;){if((0|l)==X2[r>>2])break e;if(r=r+24|0,!(i=i-1|0))break}f=n}if(r=X2[k+4>>2],X2[(e=_=40+I|0)>>2]=X2[k>>2],X2[e+4>>2]=r,e=X2[172+I>>2],X2[32+I>>2]=X2[168+I>>2],X2[36+I>>2]=e,X2[16+I>>2]!=(0|f))n=f;else if((0|(B=f?f<<1:1))<=(0|f))n=f;else{if(k=0,B&&(X2[6258]=X2[6258]+1,(e=L2(H2(B,24)+19|0))&&(X2[(k=e+19&-16)-4>>2]=e),f=n),e=X2[20+I>>2],1<=(0|f))for(r=k,i=e;;)if(N=X2[i+4>>2],X2[r>>2]=X2[i>>2],X2[r+4>>2]=N,T=X2[(F=i+16|0)+4>>2],X2[(N=r+16|0)>>2]=X2[F>>2],X2[N+4>>2]=T,T=X2[(F=i+8|0)+4>>2],X2[(N=r+8|0)>>2]=X2[F>>2],X2[N+4>>2]=T,r=r+24|0,i=i+24|0,!(f=f-1|0))break;e&&J2[24+I|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]),n=X2[12+I>>2]),X2[20+I>>2]=k,S2[24+I|0]=1,X2[16+I>>2]=B}f=X2[36+I>>2],r=X2[20+I>>2]+H2(n,24)|0,X2[r>>2]=X2[32+I>>2],X2[r+4>>2]=f,X2[r+20>>2]=l,X2[r+16>>2]=X2[48+I>>2],e=r+8|0,r=X2[_+4>>2],X2[e>>2]=X2[_>>2],X2[e+4>>2]=r,n=X2[12+I>>2]+1|0,X2[12+I>>2]=n,e=X2[h>>2]}if(f=n,!((0|(b=b+1|0))<(0|e)))break}if(s=P2(t+s),c=P2(E+c),u=P2(w+u),(0|(a=a+1|0))==(0|C))break}X2[36+I>>2]=0,X2[40+I>>2]=0,e=X2[92+I>>2]+H2(X2[v>>2],36)|0,U2[52+I>>2]=U2[e+20>>2],U2[56+I>>2]=U2[e+24>>2],U2[60+I>>2]=U2[e+28>>2],X2[44+I>>2]=0,U2[64+I>>2]=U2[e+32>>2],t=P2(P2(1)/P2(O2(P2(P2(P2(s*s)+P2(u*u))+P2(c*c))))),E=P2(u*t),w=P2(s*t),S2[48+I|0]=1,G=P2(c*t),t=P2(j2(G))>P2(.7071067690849304)?(c=P2(P2(G*G)+P2(E*E)),t=P2(P2(1)/P2(O2(c))),W=P2(c*t),c=P2(t*P2(-G)),S=P2(w*c),s=P2(0),u=P2(E*t),P2(u*P2(-w))):(c=P2(P2(w*w)+P2(E*E)),t=P2(P2(1)/P2(O2(c))),S=P2(c*t),c=P2(w*t),W=P2(c*P2(-G)),u=P2(0),s=P2(t*P2(-E)),P2(G*s));e:{r:{f:{i:if(2<=(0|n)){for(a=0,r=f=X2[20+I>>2];;)if(e=r+8|0,P2(P2(P2(s*U2[r>>2])+P2(c*U2[r+4>>2]))+P2(u*U2[e>>2]))>2])+P2(c*U2[f+4>>2]))+P2(u*U2[f+8>>2]))&&(k=X2[f>>2],B=X2[f+4>>2],i=X2[r+4>>2],X2[f>>2]=X2[r>>2],X2[f+4>>2]=i,l=X2[(i=f+16|0)>>2],_=X2[i+4>>2],h=X2[(b=r+16|0)+4>>2],X2[i>>2]=X2[b>>2],X2[i+4>>2]=h,h=X2[(i=f+8|0)>>2],X=X2[i+4>>2],N=X2[e+4>>2],X2[i>>2]=X2[e>>2],X2[i+4>>2]=N,X2[r>>2]=k,X2[r+4>>2]=B,X2[b>>2]=l,X2[b+4>>2]=_,X2[e>>2]=h,X2[e+4>>2]=X),r=r+24|0,!((0|(a=a+1|0))<(0|n)))break;if(X2[f+16>>2]=-246811958,2<=(0|n))for(r=f+40|0,a=n-1|0,V=U2[f+8>>2],p=U2[f+4>>2],M=U2[f>>2];;)if(d=P2(U2[(e=r)-16>>2]-M),Q=P2(U2[r-12>>2]-p),R=P2(U2[r-8>>2]-V),D=P2(P2(P2(W*d)+P2(t*Q))+P2(S*R)),d=P2(P2(P2(s*d)+P2(c*Q))+P2(u*R)),d=P2(P2(D*D)+P2(d*d))=P2(0)?(R=P2(.7853981852531433),P2(P2(d-Q)/P2(d+Q))):(R=P2(2.356194496154785),P2(P2(d+Q)/P2(Q-d))),d=P2(R+P2(d*P2(-.7853981852531433))),D>2]=d,r=r+24|0,!(a=a-1|0))break;if(i=X2[(r=f+8|0)+4>>2],X2[(e=176+I|0)>>2]=X2[r>>2],X2[e+4>>2]=i,e=X2[f+4>>2],X2[168+I>>2]=X2[f>>2],X2[172+I>>2]=e,!function A(e,r,f,i){var a=P2(0),n=0,b=0,t=0,o=P2(0),c=0,k=0,u=0,s=0,l=0,B=P2(0),v=0,d=P2(0),Z=P2(0),_=P2(0),g=P2(0),E=0,Q=0,w=0,G=0,C=P2(0),h=P2(0),F=P2(0),Y=0;u=K2-32|0;K2=u;c=X2[e+12>>2];b=c+H2((f+i|0)/2|0,24)|0;G=X2[b+20>>2];d=U2[b+16>>2];C=U2[b+8>>2];h=U2[b+4>>2];F=U2[b>>2];b=f;k=i;for(;;){for(Z=U2[r>>2],o=P2(F-Z),a=P2(o*o),_=U2[r+4>>2],o=P2(h-_),a=P2(a+P2(o*o)),g=U2[r+8>>2],o=P2(C-g),o=P2(a+P2(o*o)),n=20+(H2(b,24)+c|0)|0;;){a:{n:{if((a=U2[n-4>>2])!=d){if(a>2]-Z),B=P2(a*a),a=P2(U2[n-16>>2]-_),B=P2(B+P2(a*a)),a=P2(U2[n-12>>2]-g),1!=(0|((a=P2(B+P2(a*a)))!=o?a>2]<(0|G))))break a}n=n+24|0,b=b+1|0;continue}break}for(s=H2(k,24);;){a:{n:{if((a=U2[(E=(t=s+c|0)+16|0)>>2])!=d){if(d>2]-Z),B=P2(a*a),a=P2(U2[t+4>>2]-_),B=P2(B+P2(a*a)),a=P2(U2[t+8>>2]-g),1!=(0|((a=P2(B+P2(a*a)))!=o?o>2]>(0|G))))break a}s=s-24|0,k=k-1|0;continue}break}if((0|b)<=(0|k)&&(l=X2[4+(v=Q=(n=n-20|0)+16|0)>>2],X2[(c=24+u|0)>>2]=X2[v>>2],X2[c+4>>2]=l,Y=X2[4+(v=n+8|0)>>2],X2[(l=w=16+u|0)>>2]=X2[v>>2],X2[4+l>>2]=Y,l=X2[n+4>>2],X2[8+u>>2]=X2[n>>2],X2[12+u>>2]=l,l=X2[t+4>>2],X2[n>>2]=X2[t>>2],X2[n+4>>2]=l,t=X2[(n=t+8|0)+4>>2],X2[v>>2]=X2[n>>2],X2[4+v>>2]=t,n=X2[E+4>>2],X2[Q>>2]=X2[E>>2],X2[4+Q>>2]=n,n=X2[e+12>>2]+s|0,s=X2[12+u>>2],X2[n>>2]=X2[8+u>>2],X2[n+4>>2]=s,s=X2[c+4>>2],X2[(t=n+16|0)>>2]=X2[c>>2],X2[t+4>>2]=s,t=X2[4+w>>2],X2[(n=n+8|0)>>2]=X2[w>>2],X2[n+4>>2]=t,k=k-1|0,b=b+1|0),!((0|b)<=(0|k)))break;c=X2[e+12>>2]}(0|f)<(0|k)&&A(e,r,f,k);(0|b)<(0|i)&&A(e,r,b,i);K2=32+u|0}(8+I|0,168+I|0,1,n-1|0),b=0,X2[6258]=X2[6258]+1,e=X2[20+I>>2],r=0,(f=L2(43))&&(X2[(r=f+19&-16)-4>>2]=f),i=X2[20+I>>2],f=X2[e+4>>2],X2[r>>2]=X2[e>>2],X2[r+4>>2]=f,k=X2[(a=e+16|0)+4>>2],X2[(f=r+16|0)>>2]=X2[a>>2],X2[f+4>>2]=k,k=X2[(e=e+8|0)+4>>2],X2[(a=n=r+8|0)>>2]=X2[e>>2],X2[a+4>>2]=k,X2[6258]=X2[6258]+1,(e=L2(67))&&(X2[(b=e+19&-16)-4>>2]=e),e=X2[r+4>>2],X2[b>>2]=X2[r>>2],X2[b+4>>2]=e,a=X2[f+4>>2],X2[(e=b+16|0)>>2]=X2[f>>2],X2[e+4>>2]=a,f=X2[n+4>>2],X2[(e=b+8|0)>>2]=X2[n>>2],X2[e+4>>2]=f,X2[6259]=X2[6259]+1,q2(X2[r-4>>2]),n=X2[(f=(e=i+24|0)+16|0)+4>>2],X2[(r=b+40|0)>>2]=X2[f>>2],X2[r+4>>2]=n,n=X2[(f=e+8|0)+4>>2],X2[(r=b+32|0)>>2]=X2[f>>2],X2[r+4>>2]=n,r=X2[e+4>>2],X2[b+24>>2]=X2[e>>2],X2[b+28>>2]=r,2!=X2[12+I>>2]){for(B=i=n=f=2;;){a:{n:{b:if(!((0|i)<2)){for(a=i<<1,r=(H2(i,24)+b|0)-48|0,e=X2[20+I>>2]+H2(B,24)|0,t=U2[e+8>>2],c=U2[e+4>>2],u=U2[e>>2];;){if(s=U2[r>>2],d=P2(s-U2[r+24>>2]),Q=U2[r+4>>2],D=P2(Q-c),Q=P2(Q-U2[r+28>>2]),s=P2(s-u),S=P2(P2(P2(d*D)-P2(Q*s))*G),R=Q,Q=U2[r+8>>2],W=P2(Q-t),Q=P2(Q-U2[r+32>>2]),P2(S+P2(P2(w*P2(P2(R*W)-P2(Q*D)))+P2(E*P2(P2(Q*s)-P2(d*W)))))>P2(0)){if(!((0|a)<=(0|i))&&(0|f)==(0|i)){if(l=0,X2[6258]=X2[6258]+1,(r=L2(H2(f,48)+19|0))&&(X2[(l=r+19&-16)-4>>2]=r),1<=(0|n))for(r=l,i=b,f=n;;)if(k=X2[i+4>>2],X2[r>>2]=X2[i>>2],X2[r+4>>2]=k,h=X2[(_=i+16|0)+4>>2],X2[(k=r+16|0)>>2]=X2[_>>2],X2[k+4>>2]=h,h=X2[(_=i+8|0)+4>>2],X2[(k=r+8|0)>>2]=X2[_>>2],X2[k+4>>2]=h,r=r+24|0,i=i+24|0,!(f=f-1|0))break;X2[6259]=X2[6259]+1,q2(X2[b-4>>2]),f=a,b=l,i=n}a=X2[e+4>>2],r=H2(i,24)+b|0,X2[r>>2]=X2[e>>2],X2[r+4>>2]=a,k=X2[(a=e+16|0)+4>>2],X2[(i=r+16|0)>>2]=X2[a>>2],X2[i+4>>2]=k,i=X2[(e=e+8|0)+4>>2],X2[(r=r+8|0)>>2]=X2[e>>2],X2[r+4>>2]=i,i=n=n+1|0;break b}if(r=r-24|0,a=a-2|0,!(2<((i=n=i-1|0)+1|0)))break}n=1;break n}if(1!=(0|i))break a}if(i=X2[20+I>>2]+H2(B,24)|0,1==(0|f)){e=0,X2[6258]=X2[6258]+1,(r=L2(67))&&(X2[(e=r+19&-16)-4>>2]=r);n:{if(1<=(0|n)){for(r=0,f=n;;)if(h=X2[(k=_=r+b|0)+4>>2],X2[(a=e+r|0)>>2]=X2[k>>2],X2[a+4>>2]=h,h=X2[(k=k+16|0)+4>>2],X2[(l=a+16|0)>>2]=X2[k>>2],X2[l+4>>2]=h,l=X2[(k=_+8|0)+4>>2],X2[(a=a+8|0)>>2]=X2[k>>2],X2[a+4>>2]=l,r=r+24|0,!(f=f-1|0))break}else if(!b)break n;X2[6259]=X2[6259]+1,q2(X2[b-4>>2])}f=2,b=e,e=n}else e=1;a=X2[i+4>>2],e=H2(e,24)+b|0,X2[(r=e)>>2]=X2[i>>2],X2[r+4>>2]=a,k=X2[(a=i+16|0)+4>>2],X2[(r=r+16|0)>>2]=X2[a>>2],X2[r+4>>2]=k,i=X2[(r=i+8|0)+4>>2],X2[(e=e+8|0)>>2]=X2[r>>2],X2[e+4>>2]=i,i=n=n+1|0}if((0|(B=B+1|0))==X2[12+I>>2])break}if(0<(0|n))break i;break f}n=2}else{if(1!=((b=0)|n))break r;X2[6258]=X2[6258]+1,e=X2[20+I>>2],(r=L2(43))&&(X2[(b=r+19&-16)-4>>2]=r),r=X2[e+4>>2],X2[b>>2]=X2[e>>2],X2[b+4>>2]=r,n=X2[(f=e+16|0)+4>>2],X2[(r=b+16|0)>>2]=X2[f>>2],X2[r+4>>2]=n,f=X2[(e=e+8|0)+4>>2],X2[(r=b+8|0)>>2]=X2[e>>2],X2[r+4>>2]=f,n=1}for(a=X2[40+I>>2],k=J2[48+I|(l=0)],e=X2[36+I>>2];;){if(_=20+(H2(l,24)+b|0)|0,(0|e)==(0|a))if((0|(f=a?a<<1:1))<=(0|a))e=a;else{B=0,f&&(X2[6258]=X2[6258]+1,(e=L2(19+(f<<2)|0))&&(X2[(B=e+19&-16)-4>>2]=e)),e=X2[44+I>>2];i:{if(1<=(0|a)){for(r=B,i=e;;)if(X2[r>>2]=X2[i>>2],r=r+4|0,i=i+4|0,!(a=a-1|0))break}else if(!e)break i;k&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),a=X2[36+I>>2]}e=a,X2[40+I>>2]=f,X2[44+I>>2]=B,k=1,a=f}X2[X2[44+I>>2]+(e<<2)>>2]=X2[_>>2],X2[36+I>>2]=e=e+1|0,f=(0|(B=X2[12+I>>2]))<1;i:if(!f){for(r=X2[20+I>>2]+20|0,_=X2[_>>2],i=B;;){if((0|_)==X2[r>>2])break;if(r=r+24|0,!(i=i-1|0))break i}X2[r>>2]=-1}if((0|(l=l+1|0))==(0|n))break}if(S2[48+I|0]=k,f)break r}if(!((0|(n=X2[84+I>>2]))<1))for(k=X2[92+I>>2],l=X2[20+I>>2],B=1<(0|B)?B:1,e=0;;){if(-1!=(0|(_=X2[20+(l+H2(e,24)|0)>>2])))for(a=0;;){r=v,i=C;f:{for(;;){if(X2[r>>2]==(0|a))break f;if(r=r+4|0,!(i=i-1|0))break}if(r=k+H2(a,36)|0,!((0|(i=X2[r+4>>2]))<1))for(r=X2[r+12>>2];;){if(f=1,(0|_)==X2[r>>2])break e;if(r=r+4|0,!(i=i-1|0))break}}if((0|n)==(0|(a=a+1|0)))break}if((0|B)==(0|(e=e+1|0)))break}}M0(X2[A+60>>2]+24|0,32+I|0),f=0}if(b&&(X2[6259]=X2[6259]+1,q2(X2[b-4>>2])),(e=X2[44+I>>2])&&J2[48+I|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),(e=X2[20+I>>2])&&J2[24+I|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),!f)break A}}for(n=0;;){if(X2[44+I>>2]=0,e=X2[(n<<2)+v>>2],X2[40+I>>2]=0,f=X2[92+I>>2]+H2(e,36)|0,a=X2[f+4>>2],(S2[48+I|0]=1)<=(0|a)){for(r=0,X2[6258]=X2[6258]+1,(e=L2((i=a<<2)+19|0))&&(X2[(r=e+19&-16)-4>>2]=e,(e=X2[44+I>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]))),X2[44+I>>2]=r,S2[48+I|0]=1,X2[40+I>>2]=a,v2(r,0,i),X2[36+I>>2]=a,i=X2[f+12>>2];;)if(X2[r>>2]=X2[i>>2],r=r+4|0,i=i+4|0,!(a=a-1|0))break;i=J2[48+I|0],e=X2[44+I>>2]}else X2[36+I>>2]=a,i=1,e=0;if(r=X2[f+24>>2],X2[m>>2]=X2[f+20>>2],X2[m+4>>2]=r,a=X2[(f=f+28|0)+4>>2],X2[(r=m+8|0)>>2]=X2[f>>2],X2[r+4>>2]=a,M0(X2[A+60>>2]+24|0,32+I|0),e&&255&i&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),(0|C)==(0|(n=n+1|0)))break}}if(v&&(X2[6259]=X2[6259]+1,q2(X2[v-4>>2])),!o)break}if(F0(X2[A+60>>2]),Z&&(X2[6259]=X2[6259]+1,q2(X2[Z-4>>2])),!((0|(i=X2[84+I>>2]))<1))for(r=X2[92+I>>2]+8|0;;)if((e=X2[(A=r+4|0)>>2])&&J2[r+8|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A>>2]=0,S2[r+8|0]=1,X2[(A=r-4|0)>>2]=0,r=r+36|(X2[A+4>>2]=0),!(i=i-1|0))break}else F0(X2[A+60>>2]);return(A=X2[92+I>>2])&&J2[96+I|0]&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2])),g&&(X2[6259]=X2[6259]+1,q2(X2[g-4>>2])),(A=X2[156+I>>2])&&J2[160+I|0]&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2])),X2[156+I>>2]=0,S2[160+I|0]=1,X2[148+I>>2]=0,X2[152+I>>2]=0,(A=X2[136+I>>2])&&J2[140+I|0]&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2])),X2[136+I>>2]=0,S2[140+I|0]=1,X2[128+I>>2]=0,X2[132+I>>2]=0,(A=X2[116+I>>2])&&J2[120+I|0]&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2])),Y&&(X2[6259]=X2[6259]+1,q2(X2[Y-4>>2])),K2=208+I|0,1},J0,U0,H0,function(A,e,r){A|=0,e=P2(e),r|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var f=U2[A+44>>2],i=U2[A+40>>2],a=U2[A+36>>2],n=P2(N2[X2[X2[A>>2]+48>>2]](A)),b=P2(N2[X2[X2[A>>2]+48>>2]](A)),A=P2(N2[X2[X2[A>>2]+48>>2]](A));X2[r+12>>2]=0,e=P2(e/P2(12)),a=P2(a+n),a=P2(a+a),a=P2(a*a),i=P2(i+b),i=P2(i+i),i=P2(i*i),U2[r+8>>2]=e*P2(a+i),f=P2(f+A),f=P2(f+f),f=P2(f*f),U2[r+4>>2]=e*P2(a+f),U2[r>>2]=e*P2(i+f)},function(A){return 10922},X0,function(A,e,r){A|=0,e|=0,r|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var f=U2[e+40>>2],i=U2[e+44>>2],a=U2[e+36>>2],n=P2(N2[X2[X2[e>>2]+48>>2]](e)),b=P2(N2[X2[X2[e>>2]+48>>2]](e)),e=P2(N2[X2[X2[e>>2]+48>>2]](e));X2[A+12>>2]=0,i=P2(i+e),U2[A+8>>2]=U2[r+8>>2]>=P2(0)?i:P2(-i),f=P2(f+b),U2[A+4>>2]=U2[r+4>>2]>=P2(0)?f:P2(-f),f=P2(a+n),U2[A>>2]=U2[r>>2]>=P2(0)?f:P2(-f)},function(A,e,r){var f;A|=0,e|=0,r|=0,P2(0),X2[A+12>>2]=0,f=U2[e+36>>2],U2[A>>2]=U2[r>>2]>=P2(0)?f:P2(-f),f=U2[e+44>>2],U2[A+8>>2]=U2[r+8>>2]>=P2(0)?f:P2(-f),f=U2[e+40>>2],U2[A+4>>2]=U2[r+4>>2]>=P2(0)?f:P2(-f)},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n,b,t,o,c,k=0;if(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),1<=(0|f))for(;;)if(t=U2[4+(i=e+k|0)>>2],o=U2[8+i>>2],c=U2[i>>2],a=U2[A+40>>2],n=U2[A+44>>2],b=U2[A+36>>2],X2[12+(i=r+k|0)>>2]=0,U2[i>>2]=c>=P2(0)?b:P2(-b),U2[8+i>>2]=o>=P2(0)?n:P2(-n),U2[4+i>>2]=t>=P2(0)?a:P2(-a),k=k+16|0,!(f=f-1|0))break},j0,function(A,e,r){A|=0,r|=0,(e|=0)>>>0<=5&&(X2[r+12>>2]=0,U2[r+8>>2]=U2[(A=e<<2)+10872>>2],U2[r+4>>2]=U2[A+10848>>2],U2[r>>2]=U2[A+10824>>2])},function(A){return 8},Q0,function(A,e,r,f){f|=0;var i=0,a=0,i=A|=0;e=(e|=0)>>>0<=11?(a=X2[(e<<=2)+10776>>2],X2[e+10728>>2]):0,N2[X2[X2[A>>2]+108>>2]](i,e,r|=0),N2[X2[X2[A>>2]+108>>2]](A,a,f)},function(A,e,r){A|=0,e|=0,r|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var f=U2[A+44>>2],i=U2[A+40>>2],a=U2[A+36>>2],n=P2(N2[X2[X2[A>>2]+48>>2]](A)),b=P2(N2[X2[X2[A>>2]+48>>2]](A)),t=P2(N2[X2[X2[A>>2]+48>>2]](A));X2[r+12>>2]=0,i=P2(i+b),U2[r+4>>2]=P2(i*P2(0|!(A=e>>>1&1)))-P2(i*P2(0|A)),i=P2(a+n),U2[r>>2]=P2(i*P2(0|!(A=1&e)))-P2(i*P2(0|A)),f=P2(f+t),U2[r+8>>2]=P2(f*P2(0|!(A=e>>>2&1)))-P2(f*P2(0|A))},j0,function(A,e,r,f){var i,a,n,b;A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0),K2=b=K2-48|0,N2[X2[X2[A>>2]+124>>2]](A,32+b|0,f),X2[e+12>>2]=0,i=U2[40+b>>2],U2[e+8>>2]=i,a=U2[36+b>>2],U2[e+4>>2]=a,n=U2[32+b>>2],U2[e>>2]=n,X2[12+b>>2]=0,U2[8+b>>2]=-i,U2[4+b>>2]=-a,U2[b>>2]=-n,N2[X2[X2[A>>2]+64>>2]](16+b|0,A,b),f=X2[(e=24+b|0)+4>>2],X2[(A=r+8|0)>>2]=X2[e>>2],X2[A+4>>2]=f,A=X2[20+b>>2],X2[r>>2]=X2[16+b>>2],X2[r+4>>2]=A,K2=48+b|0},function(A,e,r){A|=0,e|=0,r=P2(r),P2(0),P2(0);var f=0,i=U2[e>>2],a=U2[A+36>>2];return i<=P2(a+r)&&i>=P2(P2(-a)-r)&&(i=U2[e+4>>2],a=U2[A+40>>2],i<=P2(a+r)&&i>=P2(P2(-a)-r)&&(i=U2[e+8>>2],a=U2[A+44>>2],i<=P2(a+r)&&(f=i>=P2(P2(-a)-r)))),0|f},function(A,e,r){A|=0,e|=0,r|=0;var f=P2(0),i=P2(0),a=P2(0),n=(P2(0),P2(0),P2(0)),b=U2[A+44>>2],t=U2[A+40>>2],f=U2[A+36>>2],i=P2(1);A:{e:{r:{f:{i:switch(0|r){case 1:i=P2(-1);break e;case 2:a=P2(1);break r;case 3:a=P2(-1);break r;case 4:f=P2(1);break f;case 0:break e;case 5:break i;default:break A;}f=P2(-1)}n=f,i=P2(0),f=b;break e}i=P2(0),f=t}U2[e+8>>2]=n,U2[e+4>>2]=a,U2[e>>2]=i,U2[e+12>>2]=-f}},e,z0,function(A,e,r,f){A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var i,a,n,b,t,o,c,k,u,s,l,B,v=K2-16|0,d=A+36|0;A=X2[A+60>>2],a=U2[d+((A+2|0)%3<<2)>>2],U2[8+v>>2]=a,U2[4+v>>2]=a,U2[v>>2]=a,U2[(A<<=2)+v>>2]=a+U2[A+d>>2],a=U2[e+56>>2],A=U2[e+40>>2],d=U2[e+36>>2],o=U2[e+52>>2],b=U2[e+24>>2],k=U2[e+20>>2],u=U2[e+32>>2],s=U2[e+16>>2],c=U2[e+48>>2],n=U2[e+8>>2],i=U2[e>>2],e=U2[e+4>>2],X2[r+12>>2]=0,t=P2(j2(i)),i=U2[v>>2],l=P2(j2(e)),e=U2[4+v>>2],B=P2(j2(n)),n=U2[8+v>>2],t=P2(P2(P2(t*i)+P2(l*e))+P2(B*n)),U2[r>>2]=c-t,b=P2(P2(P2(i*P2(j2(s)))+P2(e*P2(j2(k))))+P2(n*P2(j2(b)))),U2[r+4>>2]=o-b,i=P2(P2(P2(i*P2(j2(u)))+P2(e*P2(j2(d))))+P2(n*P2(j2(A)))),U2[r+8>>2]=a-i,U2[f>>2]=c+t,U2[f+4>>2]=o+b,U2[f+8>>2]=a+i,X2[f+12>>2]=0},function(A,e){A|=0,e|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var r,f,i,a=U2[e>>2],n=U2[e+4>>2],b=U2[e+8>>2];X2[A+32>>2]=0,r=U2[(f=A+28|0)>>2],U2[f>>2]=j2(b),b=U2[(f=A+24|0)>>2],U2[f>>2]=j2(n),n=U2[A+20>>2],U2[A+20>>2]=j2(a),a=U2[e+8>>2],f=U2[e+4>>2],i=U2[e>>2],X2[A+48>>2]=0,U2[A+36>>2]=i*P2(U2[A+36>>2]/n),U2[(e=A+40|0)>>2]=f*P2(U2[e>>2]/b),U2[(e=A+44|0)>>2]=a*P2(U2[e>>2]/r),U2[A+52>>2]=U2[(A+36|0)+((X2[A+60>>2]+2|0)%3<<2)>>2]},function(A,e,r){A|=0,e=P2(e),r|=0,P2(0),P2(0);var f,i,a=0,a=(P2(0),X2[A+60>>2]),n=U2[(i=A+36|0)+((a+2|0)%3<<2)>>2];X2[(A=K2-16|0)+12>>2]=0,U2[A+8>>2]=n,U2[A+4>>2]=n,U2[A>>2]=n,U2[(f=(a<<=2)+A|0)>>2]=U2[a+i>>2]+U2[f>>2],e=P2(e*P2(.0833333283662796)),n=U2[A>>2],n=P2(n+n),n=P2(n*n),a=U2[A+4>>2],a=P2(a+a),a=P2(a*a),U2[r+8>>2]=e*P2(n+a),i=n,n=U2[A+8>>2],n=P2(n+n),n=P2(n*n),U2[r+4>>2]=e*P2(i+n),U2[r>>2]=e*P2(a+n)},function(A){return 11071},O0,K0,L0,function(A,e,r){e|=0;var f=0|N2[X2[X2[(r|=0)>>2]+40>>2]](r,A|=0),i=0|N2[X2[X2[r>>2]+28>>2]](r,f);return(X2[e>>2]=i)&&N2[X2[X2[r>>2]+48>>2]](r,f),r=X2[A+4>>2],X2[e+8>>2]=0,U2[e+28>>2]=U2[A+36>>2],U2[e+32>>2]=U2[A+40>>2],U2[e+36>>2]=U2[A+44>>2],U2[e+40>>2]=U2[A+48>>2],U2[e+12>>2]=U2[A+20>>2],U2[e+16>>2]=U2[A+24>>2],U2[e+20>>2]=U2[A+28>>2],U2[e+24>>2]=U2[A+32>>2],X2[e+4>>2]=r,U2[e+44>>2]=U2[A+52>>2],X2[e+48>>2]=0,A=X2[A+60>>2],X2[e+56>>2]=0,X2[e+52>>2]=A,11052},function(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n,b=P2(0),t=P2(0),o=P2(0),c=P2(0),k=P2(0),u=(P2(0),P2(0)),s=(P2(0),P2(0),K2-16|0);X2[A>>2]=0,X2[A+4>>2]=0,X2[(i=A+8|0)>>2]=0,X2[4+i>>2]=0,t=U2[r>>2],o=U2[r+4>>2],b=U2[r+8>>2],t=(c=P2(P2(P2(t*t)+P2(o*o))+P2(b*b)))>2]=0,X2[r+4>>2]=0,X2[s>>2]=0,X2[4+s>>2]=0,i=X2[e+60>>2]<<2,k=U2[36+(e+i|0)>>2],U2[(i=s+i|0)>>2]=k,o=P2(-0xde0b6b000000000),f=U2[s>>2],a=U2[4+s>>2],n=U2[r>>2],(b=P2(P2(P2(t*f)+P2(c*a))+P2(u*n)))>P2(-0xde0b6b000000000)&&(U2[A+12>>2]=U2[12+s>>2],U2[A+8>>2]=n,U2[A+4>>2]=a,U2[A>>2]=f,o=b),X2[(r=e=8+s|0)>>2]=0,X2[r+4>>2]=0,X2[s>>2]=0,X2[4+s>>2]=0,U2[i>>2]=-k,k=o,f=t,t=U2[s>>2],o=U2[4+s>>2],b=U2[r>>2],k>2]=U2[12+s>>2],U2[A+8>>2]=b,U2[A+4>>2]=o,U2[A>>2]=t)},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n,b,t,o,c,k,u=0,s=P2(0),l=P2(0),B=(P2(0),P2(0),0),v=P2(0),d=P2(0),Z=P2(0),_=(P2(0),P2(0),K2-16|0);if(1<=(0|f))for(;;)if(X2[(i=8+_|0)>>2]=0,X2[4+i>>2]=0,X2[_>>2]=0,X2[4+_>>2]=0,u=X2[A+60>>2],s=U2[36+((a=u<<2)+A|0)>>2],U2[_+a>>2]=s,l=P2(-0xde0b6b000000000),b=U2[_>>2],v=U2[(a=e+B|0)>>2],t=U2[4+_>>2],d=U2[(o=4+a|0)>>2],c=U2[i>>2],Z=U2[(k=8+a|0)>>2],(n=P2(P2(P2(b*v)+P2(t*d))+P2(c*Z)))>P2(-0xde0b6b000000000)&&(U2[(u=r+B|0)>>2]=b,U2[u+12>>2]=U2[12+_>>2],U2[u+8>>2]=c,U2[u+4>>2]=t,Z=U2[k>>2],d=U2[o>>2],u=X2[A+60>>2],s=U2[36+((u<<2)+A|0)>>2],v=U2[a>>2],l=n),X2[i>>2]=0,X2[4+i>>2]=0,X2[_>>2]=0,X2[4+_>>2]=0,U2[(u<<2)+_>>2]=-s,b=l,l=U2[_>>2],n=U2[4+_>>2],s=U2[i>>2],b>2]=l,U2[12+i>>2]=U2[12+_>>2],U2[8+i>>2]=s,U2[4+i>>2]=n),B=B+16|0,!(f=f-1|0))break},z0,U0,H0,function(A,e,r){A|=0,e=P2(e),r|=0;var f,i,a,n=P2(0),b=P2(0),t=P2(0),t=(P2(0),P2(0),P2(0),P2(0),P2(0),U2[A+44>>2]),n=U2[A+40>>2],o=U2[A+36>>2],c=P2(N2[X2[X2[A>>2]+48>>2]](A));n=P2(n+P2(N2[X2[X2[A>>2]+48>>2]](A))),a=P2(N2[X2[X2[A>>2]+48>>2]](A)),b=P2(e*P2(.5)),f=P2(e*P2(.25)),i=P2(e/P2(12)),e=P2(c+o);A:{e:switch(X2[A+60>>2]){case 0:t=b,b=P2(n*n),n=P2(t*b),b=e=P2(P2(f*b)+P2(i*P2(e*P2(e*P2(4)))));break A;case 2:e=P2(e*e),b=P2(b*e),n=P2(f*e),e=P2(a+t),e=n=P2(n+P2(i*P2(e*P2(e*P2(4)))));break A;default:break e;}t=b,b=P2(e*e),e=P2(t*b),b=n=P2(P2(f*b)+P2(i*P2(n*P2(n*P2(4)))))}X2[r+12>>2]=0,U2[r+8>>2]=b,U2[r+4>>2]=e,U2[r>>2]=n},function(A){return 11240},O0,X0,L0,function(A,e,r){e|=0;var f=0|N2[X2[X2[(r|=0)>>2]+40>>2]](r,A|=0),i=0|N2[X2[X2[r>>2]+28>>2]](r,f);return(X2[e>>2]=i)&&N2[X2[X2[r>>2]+48>>2]](r,f),r=X2[A+4>>2],X2[e+8>>2]=0,U2[e+28>>2]=U2[A+36>>2],U2[e+32>>2]=U2[A+40>>2],U2[e+36>>2]=U2[A+44>>2],U2[e+40>>2]=U2[A+48>>2],U2[e+12>>2]=U2[A+20>>2],U2[e+16>>2]=U2[A+24>>2],U2[e+20>>2]=U2[A+28>>2],U2[e+24>>2]=U2[A+32>>2],X2[e+4>>2]=r,U2[e+44>>2]=U2[A+52>>2],X2[e+48>>2]=0,A=X2[A+60>>2],X2[e+56>>2]=0,X2[e+52>>2]=A,11220},function(A,e,r){var f,i,a,n,b;A|=0,e|=0,r|=0,P2(0),P2(0),P2(0),P2(0),P2(0),K2=b=K2-16|0,N2[X2[X2[e>>2]+68>>2]](b,e,r),a=X2[4+(i=8+b|0)>>2],X2[(f=A+8|0)>>2]=X2[i>>2],X2[4+f>>2]=a,f=X2[4+b>>2],X2[A>>2]=X2[b>>2],X2[A+4>>2]=f,P2(N2[X2[X2[e>>2]+48>>2]](e))!=P2(0)&&(i=U2[r+4>>2],a=U2[r>>2],f=U2[r+8>>2],r=P2(N2[X2[X2[e>>2]+48>>2]](e)),n=a=(e=P2(P2(P2(a*a)+P2(i*i))+P2(f*f))>2]=U2[A>>2]+P2(r*P2(n*a)),U2[A+4>>2]=U2[A+4>>2]+P2(r*P2(i*a)),U2[A+8>>2]=U2[A+8>>2]+P2(r*P2(f*a))),K2=16+b|0},function(A,e,r){A|=0,e|=0,r|=0;var f,i=P2(0),a=P2(0),n=(P2(0),P2(0),P2(0),P2(0)),i=U2[e+40>>2],a=U2[e+36>>2],e=U2[r>>2],b=U2[r+8>>2];i=((f=P2(O2(P2(P2(e*e)+P2(b*b)))))!=P2(0)&&(a=P2(a/f),n=P2(b*a),a=P2(e*a)),U2[r+4>>2]>2]=n,U2[A+4>>2]=i,U2[A>>2]=a},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n=P2(0),b=P2(0),t=P2(0);if(P2(0),P2(0),1<=(0|f))for(;;)if(n=U2[A+40>>2],b=U2[A+36>>2],i=U2[e>>2],t=U2[e+8>>2],n=((a=P2(O2(P2(P2(i*i)+P2(t*t)))))!=P2(0)?(b=P2(b/a),t=P2(t*b),b=P2(i*b)):t=P2(0),U2[e+4>>2]>2]=b,U2[r+8>>2]=t,U2[r+4>>2]=n,e=e+16|0,r=r+16|0,!(f=f-1|0))break},function(A){A|=0,P2(0),P2(0);var e=U2[A+36>>2],r=P2(N2[X2[X2[A>>2]+48>>2]](A));return P2(N2[X2[X2[A>>2]+48>>2]](A)),P2(N2[X2[X2[A>>2]+48>>2]](A)),P2(P2(e+r))},z0,function(A,e){A|=0,e|=0,P2(0),P2(0),P2(0);var r,f=X2[A+76>>2]<<2,i=U2[f+e>>2],a=P2(U2[A+68>>2]*P2(i/U2[f+(f=A+20|0)>>2]));U2[A+68>>2]=a,r=X2[A+72>>2]<<2,i=P2(U2[r+e>>2]/U2[f+r>>2]),r=X2[A+80>>2]<<2,f=P2(U2[A+64>>2]*P2(P2(i+P2(U2[r+e>>2]/U2[f+r>>2]))*P2(.5))),U2[A+64>>2]=f,U2[A+60>>2]=f/P2(O2(P2(P2(a*a)+P2(f*f)))),f=U2[e+8>>2],a=U2[e+4>>2],i=U2[e>>2],X2[A+32>>2]=0,U2[A+20>>2]=j2(i),U2[A+24>>2]=j2(a),U2[A+28>>2]=j2(f)},function(A,e,r){var f,i,a,n,b,t,o;A|=0,e=P2(e),r|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),X2[(a=44+(K2=o=K2-96|0)|0)>>2]=0,X2[4+a>>2]=0,X2[(a=56+o|0)>>2]=0,X2[4+a>>2]=0,X2[52+o>>2]=1065353216,X2[(a=o+64|0)>>2]=0,X2[4+a>>2]=0,X2[(a=76+o|0)>>2]=0,X2[4+a>>2]=0,X2[72+o>>2]=1065353216,X2[(a=84+o|0)>>2]=0,X2[4+a>>2]=0,X2[92+o>>2]=0,X2[36+o>>2]=0,X2[40+o>>2]=0,X2[32+o>>2]=1065353216,N2[X2[X2[A>>2]+8>>2]](A,32+o|0,16+o|0,o),a=U2[24+o>>2],n=U2[8+o>>2],f=U2[16+o>>2],i=U2[o>>2],b=U2[20+o>>2],t=U2[4+o>>2],A=P2(N2[X2[X2[A>>2]+48>>2]](A)),X2[r+12>>2]=0,e=P2(e*P2(.0833333283662796)),f=P2(A+P2(P2(i-f)*P2(.5))),f=P2(f+f),f=P2(f*f),i=P2(A+P2(P2(t-b)*P2(.5))),i=P2(i+i),i=P2(i*i),U2[r+8>>2]=e*P2(f+i),A=P2(A+P2(P2(n-a)*P2(.5))),A=P2(A+A),A=P2(A*A),U2[r+4>>2]=e*P2(f+A),U2[r>>2]=e*P2(i+A),K2=96+o|0},function(A){return 11396},function(A,e){X2[(A|=0)+8>>2]=0,X2[A+12>>2]=0,X2[A>>2]=0,X2[A+4>>2]=1065353216},L0,function(A,e,r){A|=0,e|=0,r|=0,P2(0);var f=0|N2[X2[X2[r>>2]+40>>2]](r,A),i=0|N2[X2[X2[r>>2]+28>>2]](r,f);return(X2[e>>2]=i)&&N2[X2[X2[r>>2]+48>>2]](r,f),r=X2[A+4>>2],X2[e+8>>2]=0,U2[e+28>>2]=U2[A+36>>2],U2[e+32>>2]=U2[A+40>>2],U2[e+36>>2]=U2[A+44>>2],U2[e+40>>2]=U2[A+48>>2],U2[e+12>>2]=U2[A+20>>2],U2[e+16>>2]=U2[A+24>>2],U2[e+20>>2]=U2[A+28>>2],U2[e+24>>2]=U2[A+32>>2],X2[e+4>>2]=r,i=U2[A+52>>2],X2[e+48>>2]=0,U2[e+44>>2]=i,A=X2[A+76>>2],X2[e+56>>2]=0,X2[e+52>>2]=A,11380},function(A,e,r){A|=0,e|=0,r|=0;var f,i=P2(0),a=P2(0),n=P2(0),b=P2(0),t=0,o=P2(0),a=P2(U2[e+68>>2]*P2(.5)),c=X2[e+72>>2],t=(f=X2[e+76>>2])<<2,i=U2[r>>2],b=P2(i*i);i=U2[r+4>>2],b=P2(b+P2(i*i)),i=U2[r+8>>2];A:{if(U2[t+r>>2]>P2(U2[e+60>>2]*P2(O2(P2(b+P2(i*i))))))X2[(c<<2)+A>>2]=0,U2[A+t>>2]=a,t=X2[e+80>>2];else{if(i=U2[(c<<2)+r>>2],t=X2[e+80>>2],n=U2[(t<<2)+r>>2],(o=P2(O2(P2(P2(i*i)+P2(n*n)))))>P2(1.1920928955078125e-7)){b=i,i=P2(U2[e+64>>2]/o),U2[(c<<2)+A>>2]=b*i,U2[(f<<2)+A>>2]=-a,a=P2(n*i);break A}X2[(c<<2)+A>>2]=0,U2[(f<<2)+A>>2]=-a}a=P2(0)}U2[(t<<2)+A>>2]=a,P2(N2[X2[X2[e>>2]+48>>2]](e))!=P2(0)&&(a=U2[r+4>>2],i=U2[r>>2],n=U2[r+8>>2],o=P2(N2[X2[X2[e>>2]+48>>2]](e)),b=i=(e=P2(P2(P2(i*i)+P2(a*a))+P2(n*n))>2]=U2[A>>2]+P2(o*P2(b*i)),U2[A+4>>2]=U2[A+4>>2]+P2(o*P2(a*i)),U2[A+8>>2]=U2[A+8>>2]+P2(o*P2(n*i)))},function(A,e,r){A|=0,e|=0,r|=0,P2(0);var f,i,a,n=P2(0),n=(P2(0),P2(0),P2(0),P2(U2[e+68>>2]*P2(.5))),b=X2[e+72>>2],t=(a=X2[e+76>>2])<<2,o=U2[r>>2],c=P2(o*o);o=U2[r+4>>2],c=P2(c+P2(o*o)),o=U2[r+8>>2];A:{if(U2[t+r>>2]>P2(U2[e+60>>2]*P2(O2(P2(c+P2(o*o))))))X2[(b<<2)+A>>2]=0,U2[A+t>>2]=n,r=X2[e+80>>2];else{if(o=U2[(b<<2)+r>>2],t=r,r=X2[e+80>>2],f=U2[t+(r<<2)>>2],(i=P2(O2(P2(P2(o*o)+P2(f*f)))))>P2(1.1920928955078125e-7)){c=o,o=P2(U2[e+64>>2]/i),U2[(b<<2)+A>>2]=c*o,U2[(a<<2)+A>>2]=-n,n=P2(f*o);break A}X2[(b<<2)+A>>2]=0,U2[(a<<2)+A>>2]=-n}n=P2(0)}U2[(r<<2)+A>>2]=n},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0,P2(0);var i,a,n,b,t,o=0,c=P2(0),k=(P2(0),0),u=(P2(0),P2(0),K2-16|0);if(1<=(0|f))for(;;){c=P2(U2[A+68>>2]*P2(.5)),o=X2[A+72>>2],a=X2[A+76>>2]<<2,i=U2[e>>2],n=P2(i*i),i=U2[e+4>>2],n=P2(n+P2(i*i)),i=U2[e+8>>2];A:{if(U2[a+e>>2]>P2(U2[A+60>>2]*P2(O2(P2(n+P2(i*i))))))X2[(o<<2)+u>>2]=0,U2[u+a>>2]=c,o=X2[A+80>>2];else{if(i=U2[(k=o<<2)+e>>2],o=X2[A+80>>2],b=U2[(o<<2)+e>>2],(t=P2(O2(P2(P2(i*i)+P2(b*b)))))>P2(1.1920928955078125e-7)){n=i,i=P2(U2[A+64>>2]/t),U2[u+k>>2]=n*i,U2[u+a>>2]=-c,c=P2(b*i);break A}X2[u+k>>2]=0,U2[u+a>>2]=-c}c=P2(0)}if(U2[(o<<2)+u>>2]=c,a=X2[4+u>>2],X2[r>>2]=X2[u>>2],X2[r+4>>2]=a,k=X2[(o=8+u|0)+4>>2],X2[(a=r+8|0)>>2]=X2[o>>2],X2[4+a>>2]=k,e=e+16|0,r=r+16|0,!(f=f-1|0))break}},e,z0,function(A,e,r,f){f|=0,X2[(r|=0)+8>>2]=-581039253,X2[r+12>>2]=0,X2[r>>2]=-581039253,X2[r+4>>2]=-581039253,X2[f+8>>2]=1566444395,X2[f+12>>2]=0,X2[f>>2]=1566444395,X2[f+4>>2]=1566444395},function(A,e){var r=X2[(e|=0)+4>>2];X2[(A|=0)+76>>2]=X2[e>>2],X2[A+80>>2]=r,r=X2[(e=e+8|0)+4>>2],X2[(A=A+84|0)>>2]=X2[e>>2],X2[A+4>>2]=r},function(A){return(A|=0)+76|0},q0,function(A){return 11559},function(A,e){A|=0,e=P2(e),U2[A+20>>2]=e},function(A){return P2(U2[(A|=0)+20>>2])},P0,function(A,e,r){A|=0,e|=0,r|=0,P2(0);var f=0|N2[X2[X2[r>>2]+40>>2]](r,A),i=0|N2[X2[X2[r>>2]+28>>2]](r,f);return(X2[e>>2]=i)&&N2[X2[X2[r>>2]+48>>2]](r,f),r=X2[A+4>>2],X2[e+8>>2]=0,U2[e+12>>2]=U2[A+76>>2],U2[e+16>>2]=U2[A+80>>2],U2[e+20>>2]=U2[A+84>>2],U2[e+24>>2]=U2[A+88>>2],U2[e+28>>2]=U2[A+56>>2],U2[e+32>>2]=U2[A+60>>2],U2[e+36>>2]=U2[A- -64>>2],U2[e+40>>2]=U2[A+68>>2],X2[e+4>>2]=r,i=U2[A+72>>2],X2[e+48>>2]=0,U2[e+44>>2]=i,11536},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n,b,t,o,c,k,u,s,l,B=P2(0),v=P2(0),d=(P2(0),P2(0)),Z=(P2(0),P2(0),P2(0),P2(0)),_=(P2(0),P2(0),P2(0)),g=P2(0),E=P2(0),Q=(P2(0),P2(0));P2(0),K2=l=K2-48|0,n=U2[f>>2],d=U2[r>>2],i=P2(P2(n-d)*P2(.5)),a=P2(i*i),v=U2[f+4>>2],B=U2[r+4>>2],i=P2(P2(v-B)*P2(.5)),t=P2(a+P2(i*i)),a=U2[f+8>>2],b=U2[r+8>>2],i=P2(P2(a-b)*P2(.5)),i=P2(O2(P2(t+P2(i*i)))),a=P2(P2(a+b)*P2(.5)),b=P2(P2(v+B)*P2(.5)),o=P2(P2(n+d)*P2(.5)),n=U2[A- -64>>2],P2(j2(n))>P2(.7071067690849304)?(d=U2[A+60>>2],v=P2(P2(n*n)+P2(d*d)),B=P2(P2(1)/P2(O2(v))),_=P2(v*B),Z=P2(d*B),v=U2[A+56>>2],g=P2(Z*P2(-v)),B=P2(B*P2(-n)),E=P2(v*B)):(v=U2[A+56>>2],d=U2[A+60>>2],_=P2(P2(v*v)+P2(d*d)),B=P2(P2(1)/P2(O2(_))),E=P2(_*B),Q=P2(B*P2(-d)),g=P2(n*Q),B=P2(v*B),_=P2(B*P2(-n))),s=U2[A+72>>2],X2[(A=44+l|0)>>2]=0,f=40+l|(X2[(r=28+l|0)>>2]=0),a=P2(P2(P2(n*(t=a))+P2(P2(o*v)+P2(b*d)))-s),s=P2(t-P2(n*a)),Z=P2(i*Z),t=P2(s-Z),n=P2(i*E),E=P2(t-n),U2[f>>2]=E,c=36+l|0,b=P2(b-P2(d*a)),B=P2(i*B),k=P2(b-B),d=P2(i*g),g=P2(k-d),U2[c>>2]=g,u=24+l|0,Z=P2(Z+s),U2[u>>2]=Z-n,s=20+l|0,B=P2(B+b),U2[s>>2]=B-d,X2[12+l>>2]=0,v=P2(o-P2(v*a)),a=P2(i*Q),b=P2(v-a),i=P2(i*_),o=P2(b-i),U2[32+l>>2]=o,v=P2(a+v),U2[16+l>>2]=v-i,a=P2(n+Z),U2[8+l>>2]=a,B=P2(d+B),U2[4+l>>2]=B,v=P2(i+v),U2[l>>2]=v,N2[X2[X2[e>>2]+8>>2]](e,l,0,0),X2[A>>2]=0,U2[f>>2]=a,U2[c>>2]=B,X2[r>>2]=0,U2[u>>2]=n+t,U2[s>>2]=d+k,U2[32+l>>2]=v,U2[16+l>>2]=i+b,X2[12+l>>2]=0,U2[8+l>>2]=E,U2[4+l>>2]=g,U2[l>>2]=o,N2[X2[X2[e>>2]+8>>2]](e,l,0,1),K2=48+l|0},n1,function(A){var e=0;X2[(A|=0)>>2]=11628,(e=X2[A+72>>2])&&($0(e),(e=X2[A+72>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]))),(e=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+32>>2]=0,S2[A+36|0]=1,X2[(e=A+24|0)>>2]=0,X2[e+4>>2]=0,X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i=P2(0),a=P2(0),n=P2(0),b=P2(0),t=P2(0),o=(P2(0),P2(0),P2(0)),c=(P2(0),P2(0),P2(0)),k=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0)),i=(P2(0),P2(0),P2(0),P2(0),X2[A+24>>2]?(n=U2[A- -64>>2],i=U2[A+48>>2],b=P2(P2(n+i)*P2(.5)),a=U2[A+60>>2],o=U2[A+44>>2],t=P2(P2(a+o)*P2(.5)),c=P2(P2(n-i)*P2(.5)),k=P2(P2(a-o)*P2(.5)),i=U2[A+56>>2],a=U2[A+40>>2],n=P2(P2(i+a)*P2(.5)),P2(P2(i-a)*P2(.5))):P2(0)),u=P2(N2[X2[X2[A>>2]+48>>2]](A)),s=P2(N2[X2[X2[A>>2]+48>>2]](A)),A=P2(N2[X2[X2[A>>2]+48>>2]](A)),l=U2[e+52>>2],a=U2[e+20>>2],o=U2[e+24>>2],B=U2[e+56>>2],v=U2[e+36>>2],d=U2[e+40>>2],Z=U2[e+48>>2],_=U2[e+8>>2],g=U2[e>>2],E=U2[e+4>>2],Q=U2[e+16>>2],e=U2[e+32>>2];X2[r+12>>2]=0,B=P2(B+P2(P2(P2(n*e)+P2(t*v))+P2(b*d))),i=P2(i+u),u=P2(i*P2(j2(e))),e=P2(k+s),u=P2(u+P2(e*P2(j2(v)))),v=P2(c+A),d=P2(u+P2(v*P2(j2(d)))),U2[r+8>>2]=B-d,c=P2(l+P2(P2(P2(n*Q)+P2(t*a))+P2(b*o))),a=P2(P2(P2(i*P2(j2(Q)))+P2(e*P2(j2(a))))+P2(v*P2(j2(o)))),U2[r+4>>2]=c-a,b=P2(Z+P2(P2(P2(n*g)+P2(t*E))+P2(b*_))),t=P2(P2(P2(i*P2(j2(g)))+P2(e*P2(j2(E))))+P2(v*P2(j2(_)))),U2[r>>2]=b-t,X2[f+12>>2]=0,U2[f+8>>2]=d+B,U2[f+4>>2]=a+c,U2[f>>2]=t+b},function(A,e){e|=0;var r,f,i,a,n,b,t,o,c,k,u=0,s=0,l=0,B=0,v=0;if(K2=k=K2-144|0,1<=X2[(A|=0)+24>>2])for(n=96+k|0,b=k+64|0,t=48+k|0,o=32+k|0;;){if(u=(B=H2(v,80))+X2[A+32>>2]|0,i=X2[(s=u+8|0)+4>>2],X2[(r=24+k|0)>>2]=X2[s>>2],X2[4+r>>2]=i,f=X2[u+4>>2],X2[16+k>>2]=X2[u>>2],X2[20+k>>2]=f,l=X2[4+(i=u+24|0)>>2],X2[(s=f=8+o|0)>>2]=X2[i>>2],X2[s+4>>2]=l,s=X2[u+20>>2],X2[o>>2]=X2[u+16>>2],X2[4+o>>2]=s,a=X2[4+(l=u+40|0)>>2],X2[(s=8+t|0)>>2]=X2[l>>2],X2[s+4>>2]=a,i=X2[u+36>>2],X2[t>>2]=X2[u+32>>2],X2[4+t>>2]=i,c=X2[4+(a=u+56|0)>>2],X2[(l=i=8+b|0)>>2]=X2[a>>2],X2[4+l>>2]=c,l=X2[u+52>>2],X2[b>>2]=X2[u+48>>2],X2[4+b>>2]=l,u=X2[u+64>>2],u=0|N2[X2[X2[u>>2]+28>>2]](u),a=X2[4+(c=u+8|0)>>2],X2[(l=8+k|0)>>2]=X2[c>>2],X2[4+l>>2]=a,a=X2[u+4>>2],u=X2[u>>2],U2[l>>2]=P2(U2[l>>2]*U2[e+8>>2])/U2[A+92>>2],X2[k>>2]=u,X2[4+k>>2]=a,X2[12+k>>2]=0,U2[k>>2]=P2(U2[k>>2]*U2[e>>2])/U2[A+84>>2],U2[4+k>>2]=P2(U2[4+k>>2]*U2[e+4>>2])/U2[A+88>>2],u=X2[64+(B+X2[A+32>>2]|0)>>2],N2[X2[X2[u>>2]+24>>2]](u,k),X2[76+k>>2]=0,U2[72+k>>2]=P2(U2[72+k>>2]*U2[e+8>>2])/U2[A+92>>2],U2[68+k>>2]=P2(U2[68+k>>2]*U2[e+4>>2])/U2[A+88>>2],U2[64+k>>2]=P2(U2[64+k>>2]*U2[e>>2])/U2[A+84>>2],a=X2[4+r>>2],u=B+X2[A+32>>2]|0,X2[(l=u+8|0)>>2]=X2[r>>2],X2[4+l>>2]=a,r=X2[20+k>>2],X2[u>>2]=X2[16+k>>2],X2[u+4>>2]=r,l=X2[4+f>>2],X2[(r=u+24|0)>>2]=X2[f>>2],X2[4+r>>2]=l,r=X2[4+o>>2],X2[u+16>>2]=X2[o>>2],X2[u+20>>2]=r,f=X2[s+4>>2],X2[(r=u+40|0)>>2]=X2[s>>2],X2[4+r>>2]=f,r=X2[4+t>>2],X2[u+32>>2]=X2[t>>2],X2[u+36>>2]=r,r=X2[4+b>>2],X2[u+48>>2]=X2[b>>2],X2[u+52>>2]=r,r=X2[4+i>>2],X2[(u=u+56|0)>>2]=X2[i>>2],X2[u+4>>2]=r,X2[A+72>>2]){u=X2[64+(B+X2[A+32>>2]|0)>>2],N2[X2[X2[u>>2]+8>>2]](u,16+k|0,128+k|0,112+k|0),f=X2[4+(r=136+k|0)>>2],X2[(u=i=88+k|0)>>2]=X2[r>>2],X2[u+4>>2]=f,u=X2[116+k>>2],X2[n>>2]=X2[112+k>>2],X2[4+n>>2]=u,f=X2[4+(r=120+k|0)>>2],X2[(u=8+n|0)>>2]=X2[r>>2],X2[u+4>>2]=f,u=X2[132+k>>2],X2[80+k>>2]=X2[128+k>>2],X2[84+k>>2]=u;A:if(u=f1(f=X2[A+72>>2],r=X2[76+(B+X2[A+32>>2]|0)>>2])){if(0<=(0|(s=X2[f+8>>2]))){if(s)for(;;){if(!(B=X2[u+32>>2]))break A;if(u=B,!(s=s-1|0))break}}else u=X2[f>>2];}else u=0;B=X2[84+k>>2],X2[r>>2]=X2[80+k>>2],X2[r+4>>2]=B,l=X2[(s=104+k|0)+4>>2],X2[(B=r+24|0)>>2]=X2[s>>2],X2[B+4>>2]=l,s=X2[4+n>>2],X2[(B=r+16|0)>>2]=X2[n>>2],X2[B+4>>2]=s,s=X2[4+i>>2],X2[(B=r+8|0)>>2]=X2[i>>2],X2[B+4>>2]=s,i1(f,u,r)}if(!((0|(v=v+1|0))>2]))break}u=X2[e+4>>2],X2[A+84>>2]=X2[e>>2],X2[A+88>>2]=u,B=X2[(e=e+8|0)+4>>2],X2[(u=A+92|0)>>2]=X2[e>>2],X2[u+4>>2]=B,N2[X2[X2[A>>2]+68>>2]](A),K2=144+k|0},function(A){return(A|=0)+84|0},function(A,e,r){var f,i,a;A|=0,e=P2(e),r|=0,P2(0),P2(0),P2(0),X2[(f=44+(K2=a=K2-96|0)|0)>>2]=0,X2[4+f>>2]=0,X2[(f=56+a|0)>>2]=0,X2[4+f>>2]=0,X2[52+a>>2]=1065353216,X2[(f=a+64|0)>>2]=0,X2[4+f>>2]=0,X2[(f=76+a|0)>>2]=0,X2[4+f>>2]=0,X2[72+a>>2]=1065353216,X2[(f=84+a|0)>>2]=0,X2[4+f>>2]=0,X2[92+a>>2]=0,X2[36+a>>2]=0,X2[40+a>>2]=0,X2[32+a>>2]=1065353216,N2[X2[X2[A>>2]+8>>2]](A,32+a|0,16+a|0,a),e=P2(e/P2(12)),f=P2(P2(U2[a>>2]-U2[16+a>>2])*P2(.5)),f=P2(f+f),f=P2(f*f),A=P2(P2(U2[4+a>>2]-U2[20+a>>2])*P2(.5)),A=P2(A+A),A=P2(A*A),U2[r+8>>2]=e*P2(f+A),i=f,f=P2(P2(U2[8+a>>2]-U2[24+a>>2])*P2(.5)),f=P2(f+f),f=P2(f*f),U2[r+4>>2]=e*P2(i+f),U2[r>>2]=e*P2(A+f),K2=96+a|0},function(A){return 14828},function(A,e){A|=0,e=P2(e),U2[A+80>>2]=e},function(A){return P2(U2[(A|=0)+80>>2])},function(A){return 24},function(A,e,r){e|=0;var f,i,a,n,b,t,o=0,c=0,k=0,u=0,s=0,o=0|N2[X2[X2[(r|=0)>>2]+40>>2]](r,A|=0),c=0|N2[X2[X2[r>>2]+28>>2]](r,o);if((X2[e>>2]=c)&&N2[X2[X2[r>>2]+48>>2]](r,o),o=X2[A+4>>2],X2[e+8>>2]=0,X2[e+12>>2]=0,X2[e+4>>2]=o,U2[e+20>>2]=U2[A+80>>2],o=X2[A+24>>2],X2[e+16>>2]=o){if(f=0|N2[X2[X2[r>>2]+16>>2]](r,76,o),o=X2[8+f>>2],i=e,a=0|N2[X2[X2[r>>2]+28>>2]](r,o),X2[i+12>>2]=a,0>2])for(o=o+36|0,u=X2[A+32>>2],k=36;;)if(U2[o+36>>2]=U2[(c=k+u|0)+36>>2],i=o+28|0,a=0|N2[X2[X2[r>>2]+28>>2]](r,X2[c+28>>2]),X2[i>>2]=a,0|N2[X2[X2[r>>2]+24>>2]](r,X2[28+(X2[A+32>>2]+k|0)>>2])||(c=X2[28+(X2[A+32>>2]+k|0)>>2],a=r,n=0|N2[X2[X2[c>>2]+52>>2]](c),i=X2[X2[r>>2]+16>>2],c=0|N2[i](0|a,0|n,1),u=X2[28+(X2[A+32>>2]+k|0)>>2],b=r,n=c,a=0|N2[X2[X2[u>>2]+56>>2]](u,X2[c+8>>2],r),t=X2[28+(X2[A+32>>2]+k|0)>>2],i=X2[X2[r>>2]+20>>2],N2[i](0|b,0|n,0|a,1346455635,0|t)),u=X2[A+32>>2],U2[o-36>>2]=U2[(c=u+k|0)-36>>2],U2[o-32>>2]=U2[c-32>>2],U2[o-28>>2]=U2[c-28>>2],U2[o-24>>2]=U2[c-24>>2],U2[o-20>>2]=U2[c-20>>2],U2[o-16>>2]=U2[c-16>>2],U2[o-12>>2]=U2[c-12>>2],U2[o-8>>2]=U2[c-8>>2],U2[o-4>>2]=U2[c-4>>2],U2[o>>2]=U2[c>>2],U2[o+4>>2]=U2[c+4>>2],U2[o+8>>2]=U2[c+8>>2],U2[o+12>>2]=U2[c+12>>2],U2[o+16>>2]=U2[c+16>>2],U2[o+20>>2]=U2[c+20>>2],X2[o+32>>2]=X2[c+32>>2],U2[o+24>>2]=U2[c+24>>2],k=k+80|0,o=o+76|0,!((0|(s=s+1|0))>2]))break;N2[X2[X2[r>>2]+20>>2]](r,f,11712,1497453121,X2[8+f>>2])}return 11737},function(A,e){e|=0;var r=0,f=0;if(X2[(A|=0)+76>>2]=X2[A+76>>2]+1,1<=(0|(r=X2[A+24>>2])))for(f=r+1|0,r=H2(r,80)-16|0;;)if(X2[X2[A+32>>2]+r>>2]==(0|e)&&b1(A,f-2|0),r=r-80|0,!(1<(0|(f=f-1|0))))break;N2[X2[X2[A>>2]+68>>2]](A)},function(A){A|=0,P2(0);var e,r,f,i=0,a=0;if(K2=f=K2-32|0,X2[A+56>>2]=-581039253,X2[A+60>>2]=-581039253,X2[A+40>>2]=1566444395,X2[A+44>>2]=1566444395,X2[(e=A- -64|0)>>2]=-581039253,X2[4+e>>2]=0,X2[(e=A+48|0)>>2]=1566444395,X2[4+e>>2]=0,1<=X2[A+24>>2])for(;;)if(e=X2[A+32>>2]+i|0,r=X2[e+64>>2],N2[X2[X2[r>>2]+8>>2]](r,e,16+f|0,f),(r=U2[16+f>>2])>2]&&(U2[A+40>>2]=r),(r=U2[f>>2])>U2[A+56>>2]&&(U2[A+56>>2]=r),(r=U2[20+f>>2])>2]&&(U2[A+44>>2]=r),(r=U2[4+f>>2])>U2[A+60>>2]&&(U2[A+60>>2]=r),(r=U2[24+f>>2])>2]&&(U2[A+48>>2]=r),(r=U2[8+f>>2])>U2[A+64>>2]&&(U2[A+64>>2]=r),i=i+80|0,!((0|(a=a+1|0))>2]))break;K2=32+f|0},function(A){var e;return X2[(A|=0)>>2]=12040,(e=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+32>>2]=0,S2[A+36|0]=1,X2[(e=A+24|0)>>2]=0,(X2[4+e>>2]=0)|A},function(A){var e;X2[(A|=0)>>2]=12040,(e=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+32>>2]=0,S2[A+36|0]=1,X2[(e=A+24|0)>>2]=0,X2[4+e>>2]=0,X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n,b,t,o,c,k=0,u=0,s=0,l=0,B=(P2(0),P2(0),P2(0),P2(0)),v=P2(0),d=P2(0),Z=0;if(K2=r=K2-80|0,1<=(0|(b=0|N2[X2[X2[A>>2]+28>>2]](A))))for(i=U2[A+12>>2],a=U2[A+8>>2],n=U2[A+4>>2];;){N2[X2[X2[A>>2]+16>>2]](A,r+76|0,r+52|0,r- -64|0,r+56|0,r+72|0,r+68|0,r+48|0,r+60|0,Z);A:{e:switch(X2[r+64>>2]){case 0:r:switch(X2[r+60>>2]-2|0){case 3:if(X2[r+48>>2]<1)break A;for(f=0;;)if(l=X2[r+76>>2],s=X2[r+56>>2],u=X2[r+72>>2]+H2(X2[r+68>>2],f)|0,k=l+H2(s,J2[0|u])|0,B=U2[k>>2],v=U2[k+4>>2],d=U2[k+8>>2],X2[r+12>>2]=0,U2[r+8>>2]=i*d,U2[r+4>>2]=a*v,U2[r>>2]=n*B,k=l+H2(s,J2[u+1|0])|0,B=U2[k>>2],v=U2[k+4>>2],d=U2[k+8>>2],X2[r+28>>2]=0,U2[r+24>>2]=i*d,U2[r+20>>2]=a*v,U2[r+16>>2]=n*B,u=l+H2(s,J2[u+2|0])|0,B=U2[u>>2],v=U2[u+4>>2],d=U2[u+8>>2],X2[r+44>>2]=0,U2[r+40>>2]=i*d,U2[r+36>>2]=a*v,U2[r+32>>2]=n*B,N2[X2[X2[e>>2]+8>>2]](e,r,Z,f),!((0|(f=f+1|0))>2]))break;break A;case 1:if(X2[r+48>>2]<1)break A;for(f=0;;)if(l=X2[r+76>>2],s=X2[r+56>>2],u=X2[r+72>>2]+H2(X2[r+68>>2],f)|0,k=l+H2(s,A2[u>>1])|0,B=U2[k>>2],v=U2[k+4>>2],d=U2[k+8>>2],X2[r+12>>2]=0,U2[r+8>>2]=i*d,U2[r+4>>2]=a*v,U2[r>>2]=n*B,k=l+H2(s,A2[u+2>>1])|0,B=U2[k>>2],v=U2[k+4>>2],d=U2[k+8>>2],X2[r+28>>2]=0,U2[r+24>>2]=i*d,U2[r+20>>2]=a*v,U2[r+16>>2]=n*B,u=l+H2(s,A2[u+4>>1])|0,B=U2[u+8>>2],v=U2[u+4>>2],d=U2[u>>2],X2[r+44>>2]=0,U2[r+32>>2]=n*d,U2[r+36>>2]=a*v,U2[r+40>>2]=i*B,N2[X2[X2[e>>2]+8>>2]](e,r,Z,f),!((0|(f=f+1|0))>2]))break;break A;case 0:break r;default:break A;}if(X2[r+48>>2]<1)break A;for(f=0;;)if(l=X2[r+76>>2],s=X2[r+56>>2],u=X2[r+72>>2]+H2(X2[r+68>>2],f)|0,k=l+H2(s,X2[u>>2])|0,B=U2[k>>2],v=U2[k+4>>2],d=U2[k+8>>2],X2[r+12>>2]=0,U2[r+8>>2]=i*d,U2[r+4>>2]=a*v,U2[r>>2]=n*B,k=l+H2(s,X2[u+4>>2])|0,B=U2[k>>2],v=U2[k+4>>2],d=U2[k+8>>2],X2[r+28>>2]=0,U2[r+24>>2]=i*d,U2[r+20>>2]=a*v,U2[r+16>>2]=n*B,u=l+H2(s,X2[u+8>>2])|0,B=U2[u+8>>2],v=U2[u+4>>2],d=U2[u>>2],X2[r+44>>2]=0,U2[r+32>>2]=n*d,U2[r+36>>2]=a*v,U2[r+40>>2]=i*B,N2[X2[X2[e>>2]+8>>2]](e,r,Z,f),!((0|(f=f+1|0))>2]))break;break A;case 1:break e;default:break A;}e:switch(X2[r+60>>2]-2|0){case 3:if(X2[r+48>>2]<1)break A;for(f=0;;)if(u=X2[r+72>>2]+H2(X2[r+68>>2],f)|0,s=J2[0|u],X2[r+12>>2]=0,l=X2[r+76>>2],k=s,s=X2[r+56>>2],k=l+H2(k,s)|0,U2[r+8>>2]=i*P2(M[k+16>>3]),U2[r+4>>2]=a*P2(M[k+8>>3]),U2[r>>2]=n*P2(M[k>>3]),k=J2[u+1|0],X2[r+28>>2]=0,k=l+H2(k,s)|0,U2[r+24>>2]=i*P2(M[k+16>>3]),U2[r+20>>2]=a*P2(M[k+8>>3]),U2[r+16>>2]=n*P2(M[k>>3]),u=l+H2(s,J2[u+2|0])|0,t=M[u>>3],o=M[u+8>>3],c=M[u+16>>3],X2[r+44>>2]=0,U2[r+40>>2]=i*P2(c),U2[r+36>>2]=a*P2(o),U2[r+32>>2]=n*P2(t),N2[X2[X2[e>>2]+8>>2]](e,r,Z,f),!((0|(f=f+1|0))>2]))break;break A;case 1:if(X2[r+48>>2]<1)break A;for(f=0;;)if(X2[r+12>>2]=0,X2[r+28>>2]=0,l=X2[r+76>>2],s=X2[r+56>>2],u=X2[r+72>>2]+H2(X2[r+68>>2],f)|0,k=l+H2(s,A2[u>>1])|0,U2[r+8>>2]=i*P2(M[k+16>>3]),U2[r+4>>2]=a*P2(M[k+8>>3]),U2[r>>2]=n*P2(M[k>>3]),k=l+H2(s,A2[u+2>>1])|0,U2[r+24>>2]=i*P2(M[k+16>>3]),U2[r+20>>2]=a*P2(M[k+8>>3]),U2[r+16>>2]=n*P2(M[k>>3]),X2[r+44>>2]=0,u=l+H2(s,A2[u+4>>1])|0,U2[r+32>>2]=n*P2(M[u>>3]),U2[r+36>>2]=a*P2(M[u+8>>3]),U2[r+40>>2]=i*P2(M[u+16>>3]),N2[X2[X2[e>>2]+8>>2]](e,r,Z,f),!((0|(f=f+1|0))>2]))break;break A;case 0:break e;default:break A;}if(!(X2[r+48>>2]<1))for(f=0;;)if(X2[r+12>>2]=0,X2[r+28>>2]=0,l=X2[r+76>>2],s=X2[r+56>>2],u=X2[r+72>>2]+H2(X2[r+68>>2],f)|0,k=l+H2(s,X2[u>>2])|0,U2[r+8>>2]=i*P2(M[k+16>>3]),U2[r+4>>2]=a*P2(M[k+8>>3]),U2[r>>2]=n*P2(M[k>>3]),k=l+H2(s,X2[u+4>>2])|0,U2[r+24>>2]=i*P2(M[k+16>>3]),U2[r+20>>2]=a*P2(M[k+8>>3]),U2[r+16>>2]=n*P2(M[k>>3]),X2[r+44>>2]=0,u=l+H2(s,X2[u+8>>2])|0,U2[r+32>>2]=n*P2(M[u>>3]),U2[r+36>>2]=a*P2(M[u+8>>3]),U2[r+40>>2]=i*P2(M[u+16>>3]),N2[X2[X2[e>>2]+8>>2]](e,r,Z,f),!((0|(f=f+1|0))>2]))break}if(N2[X2[X2[A>>2]+24>>2]](A,Z),(0|b)==(0|(Z=Z+1|0)))break}K2=r+80|0},t1,t1,o1,o1,k1,o1,o1,function(A){return 1==X2[(A|=0)+48>>2]|0},function(A,e,r){r|=0;var f,i=X2[(e|=0)+4>>2];X2[(A|=0)+52>>2]=X2[e>>2],X2[A+56>>2]=i,f=X2[(e=e+8|0)+4>>2],X2[(i=A+60|0)>>2]=X2[e>>2],X2[4+i>>2]=f,e=X2[r+4>>2],X2[A+68>>2]=X2[r>>2],X2[A+72>>2]=e,i=X2[(r=r+8|0)+4>>2],X2[(e=A+76|0)>>2]=X2[r>>2],X2[e+4>>2]=i,X2[A+48>>2]=1},function(A,e,r){r|=0;var f,i=X2[(A|=0)+56>>2];X2[(e|=0)>>2]=X2[A+52>>2],X2[e+4>>2]=i,f=X2[4+(i=A+60|0)>>2],X2[(e=e+8|0)>>2]=X2[i>>2],X2[e+4>>2]=f,f=X2[4+(i=A+76|0)>>2],X2[(e=r+8|0)>>2]=X2[i>>2],X2[e+4>>2]=f,e=X2[A+72>>2],X2[r>>2]=X2[A+68>>2],X2[r+4>>2]=e},function(A){return 28},function(A,e,r){e|=0,r|=0;var f,i,a,n=0,b=0,t=0,o=0,c=0,k=0,u=0,s=0,l=0;if(K2=a=K2-32|0,n=0|N2[X2[X2[(A|=0)>>2]+28>>2]](A),X2[e>>2]=0,X2[e+20>>2]=n){if(f=0|N2[X2[X2[r>>2]+16>>2]](r,32,n),c=X2[8+f>>2],s=e,l=0|N2[X2[X2[r>>2]+28>>2]](r,c),X2[s>>2]=l,0<(0|(i=0|N2[X2[X2[A>>2]+28>>2]](A))))for(;;){N2[X2[X2[A>>2]+16>>2]](A,28+a|0,4+a|0,16+a|0,8+a|0,24+a|0,20+a|0,a,12+a|0,u),X2[c>>2]=0,X2[c+4>>2]=0,X2[(n=c+8|0)>>2]=0,X2[n+4>>2]=0,X2[(n=c+16|0)>>2]=0,X2[n+4>>2]=0,n=X2[a>>2],X2[c+24>>2]=n,X2[c+28>>2]=X2[4+a>>2];A:{e:switch(X2[12+a>>2]-2|0){case 0:if(!n)break A;if(t=0|N2[X2[X2[r>>2]+16>>2]](r,4,H2(n,3)),n=X2[t+8>>2],s=c,l=0|N2[X2[X2[r>>2]+28>>2]](r,n),X2[s+8>>2]=l,1<=X2[a>>2])for(b=0,k=X2[24+a>>2];;)if(o=k+H2(X2[20+a>>2],b)|0,X2[n>>2]=X2[o>>2],X2[n+4>>2]=X2[o+4>>2],X2[n+8>>2]=X2[o+8>>2],n=n+12|0,!((0|(b=b+1|0))>2]))break;N2[X2[X2[r>>2]+20>>2]](r,t,11848,1497453121,X2[t+8>>2]);break A;case 1:if(!n)break A;if(t=0|N2[X2[X2[r>>2]+16>>2]](r,8,n),n=X2[t+8>>2],s=c,l=0|N2[X2[X2[r>>2]+28>>2]](r,n),X2[s+12>>2]=l,1<=X2[a>>2])for(b=0;;)if(o=X2[24+a>>2]+H2(X2[20+a>>2],b)|0,$[n>>1]=A2[o>>1],$[n+2>>1]=A2[o+2>>1],o=A2[o+4>>1],$[n+6>>1]=0,$[n+4>>1]=o,n=n+8|0,!((0|(b=b+1|0))>2]))break;N2[X2[X2[r>>2]+20>>2]](r,t,11863,1497453121,X2[t+8>>2]);break A;case 3:break e;default:break A;}if(n){if(t=0|N2[X2[X2[r>>2]+16>>2]](r,4,n),n=X2[t+8>>2],s=c,l=0|N2[X2[X2[r>>2]+28>>2]](r,n),X2[s+16>>2]=l,1<=X2[a>>2])for(b=0;;)if(o=X2[24+a>>2]+H2(X2[20+a>>2],b)|0,S2[0|n]=J2[0|o],S2[n+1|0]=J2[o+1|0],S2[n+2|0]=J2[o+2|0],n=n+4|(S2[n+3|0]=0),!((0|(b=b+1|0))>2]))break;N2[X2[X2[r>>2]+20>>2]](r,t,11890,1497453121,X2[t+8>>2])}}A:{e:switch(X2[16+a>>2]){case 0:if(!(n=X2[4+a>>2]))break A;if(o=0|N2[X2[X2[r>>2]+16>>2]](r,16,n),n=X2[o+8>>2],s=c,l=0|N2[X2[X2[r>>2]+28>>2]](r,n),X2[s>>2]=l,1<=(0|(t=X2[4+a>>2])))for(k=X2[8+a>>2],b=X2[28+a>>2];;)if(U2[n>>2]=U2[b>>2],U2[n+4>>2]=U2[b+4>>2],U2[n+8>>2]=U2[b+8>>2],b=b+k|0,n=n+16|0,!(t=t-1|0))break;N2[X2[X2[r>>2]+20>>2]](r,o,11913,1497453121,X2[o+8>>2]);break A;case 1:break e;default:break A;}if(n=X2[4+a>>2]){if(o=0|N2[X2[X2[r>>2]+16>>2]](r,32,n),n=X2[o+8>>2],s=c,l=0|N2[X2[X2[r>>2]+28>>2]](r,n),X2[s+4>>2]=l,1<=(0|(t=X2[4+a>>2])))for(k=X2[8+a>>2],b=X2[28+a>>2];;)if(M[n>>3]=M[b>>3],M[n+8>>3]=M[b+8>>3],M[n+16>>3]=M[b+16>>3],b=b+k|0,n=n+32|0,!(t=t-1|0))break;N2[X2[X2[r>>2]+20>>2]](r,o,11932,1497453121,X2[o+8>>2])}}if(N2[X2[X2[A>>2]+24>>2]](A,u),c=c+32|0,(0|i)==(0|(u=u+1|0)))break}N2[X2[X2[r>>2]+20>>2]](r,f,11952,1497453121,X2[8+f>>2])}return X2[e+24>>2]=0,U2[e+4>>2]=U2[A+4>>2],U2[e+8>>2]=U2[A+8>>2],U2[e+12>>2]=U2[A+12>>2],U2[e+16>>2]=U2[A+16>>2],K2=32+a|0,11967},c1,function(A){A=c1(A|=0),X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},function(A,e){e|=0;var r,f=0,i=0,a=0,n=0,b=0;A:{if(J2[(A|=0)+165|0]){if(X2[A+92>>2]>=(0|e))break A;if(e&&(X2[6258]=X2[6258]+1,(f=L2(19+(e<<4)|0))&&(X2[(a=f+19&-16)-4>>2]=f)),1<=(0|(n=X2[A+88>>2])))for(;;)if(i=X2[A+96>>2]+b|0,f=X2[i+4>>2],X2[(r=b+a|0)>>2]=X2[i>>2],X2[4+r>>2]=f,f=X2[(i=i+8|0)+4>>2],X2[(r=8+r|0)>>2]=X2[i>>2],X2[4+r>>2]=f,b=b+16|0,!(n=n-1|0))break;return(f=X2[A+96>>2])&&J2[A+100|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[A+96>>2]=a,X2[A+92>>2]=e,void(S2[A+100|0]=1)}if(!(X2[A+112>>2]>=(0|e))){e&&(X2[6258]=X2[6258]+1,(i=L2(19+(e<<2)|0))&&(X2[(f=i+19&-16)-4>>2]=i)),i=X2[A+116>>2];e:{if(1<=(0|(a=X2[A+108>>2]))){for(b=f,n=i;;)if(U2[b>>2]=U2[n>>2],b=b+4|0,n=n+4|0,!(a=a-1|0))break}else if(!i)break e;J2[A+120|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2]))}X2[A+116>>2]=f,X2[A+112>>2]=e,S2[A+120|0]=1}}},function(A,e){e|=0;var r=0,f=0,i=0,a=0,n=0;A:{if(J2[(A|=0)+164|0]){if(X2[A+132>>2]>=(0|e))break A;e&&(X2[6258]=X2[6258]+1,(r=L2(19+(e<<2)|0))&&(X2[(i=r+19&-16)-4>>2]=r)),a=X2[A+136>>2];e:{if(1<=(0|(f=X2[A+128>>2]))){for(n=i,r=a;;)if(X2[n>>2]=X2[r>>2],n=n+4|0,r=r+4|0,!(f=f-1|0))break}else if(!a)break e;J2[A+140|0]&&(X2[6259]=X2[6259]+1,q2(X2[a-4>>2]))}return X2[A+136>>2]=i,X2[A+132>>2]=e,void(S2[A+140|0]=1)}if(!(X2[A+152>>2]>=(0|e))){e&&(X2[6258]=X2[6258]+1,(r=L2(19+(e<<1)|0))&&(X2[(i=r+19&-16)-4>>2]=r)),a=X2[A+156>>2];e:{if(1<=(0|(f=X2[A+148>>2]))){for(n=i,r=a;;)if($[n>>1]=A2[r>>1],n=n+2|0,r=r+2|0,!(f=f-1|0))break}else if(!a)break e;J2[A+160|0]&&(X2[6259]=X2[6259]+1,q2(X2[a-4>>2]))}X2[A+156>>2]=i,X2[A+152>>2]=e,S2[A+160|0]=1}}},e,z0,function(A,e,r,f){A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var i,a=U2[(g=A+32|0)>>2],n=U2[(E=A+48|0)>>2],b=U2[(Z=A+28|0)>>2],t=U2[(_=A+44|0)>>2],o=U2[A+24>>2],c=U2[A+40>>2],k=P2(N2[X2[X2[A>>2]+48>>2]](A)),u=P2(N2[X2[X2[A>>2]+48>>2]](A)),s=P2(N2[X2[X2[A>>2]+48>>2]](A)),l=U2[e+52>>2],B=U2[e+24>>2],v=U2[e+20>>2],d=U2[e+56>>2],Z=U2[Z>>2],_=U2[_>>2],g=U2[g>>2],E=U2[E>>2],Q=U2[e+40>>2],w=U2[e+36>>2],G=U2[e+48>>2],C=U2[e+8>>2],h=U2[e>>2],F=U2[e+4>>2],Y=U2[e+16>>2],m=U2[A+24>>2],A=U2[A+40>>2],e=U2[e+32>>2];X2[r+12>>2]=0,i=d,d=P2(P2(A+m)*P2(.5)),Z=P2(P2(_+Z)*P2(.5)),_=P2(P2(E+g)*P2(.5)),g=P2(i+P2(P2(P2(e*d)+P2(w*Z))+P2(Q*_))),o=P2(k+P2(P2(c-o)*P2(.5))),i=P2(o*P2(j2(e))),e=P2(u+P2(P2(t-b)*P2(.5))),i=P2(i+P2(e*P2(j2(w)))),w=P2(s+P2(P2(n-a)*P2(.5))),Q=P2(i+P2(w*P2(j2(Q)))),U2[r+8>>2]=g-Q,a=P2(l+P2(P2(P2(d*Y)+P2(Z*v))+P2(_*B))),B=P2(P2(P2(o*P2(j2(Y)))+P2(e*P2(j2(v))))+P2(w*P2(j2(B)))),U2[r+4>>2]=a-B,v=P2(G+P2(P2(P2(d*h)+P2(Z*F))+P2(_*C))),w=P2(P2(P2(o*P2(j2(h)))+P2(e*P2(j2(F))))+P2(w*P2(j2(C)))),U2[r>>2]=v-w,X2[f+12>>2]=0,U2[f+8>>2]=Q+g,U2[f+4>>2]=B+a,U2[f>>2]=w+v},l1,function(A){return X2[(A|=0)+56>>2]+4|0},q0,function(A){return 12530},Q0,function(A,e,r){e|=0;var f=0|N2[X2[X2[(r|=0)>>2]+40>>2]](r,A|=0),i=0|N2[X2[X2[r>>2]+28>>2]](r,f);return(X2[e>>2]=i)&&N2[X2[X2[r>>2]+48>>2]](r,f),A=X2[A+4>>2],X2[e+8>>2]=0,X2[e+4>>2]=A,10195},function(A,e,r,f){var i,a,n,b;A|=0,e|=0,f|=0,K2=b=K2-48|0,n=X2[4+(a=(r|=0)+8|0)>>2],X2[(i=24+b|0)>>2]=X2[a>>2],X2[4+i>>2]=n,n=X2[4+(a=f+8|0)>>2],X2[(i=40+b|0)>>2]=X2[a>>2],X2[4+i>>2]=n,X2[8+b>>2]=12404,i=X2[r+4>>2],X2[16+b>>2]=X2[r>>2],X2[20+b>>2]=i,i=X2[f+4>>2],X2[32+b>>2]=X2[f>>2],X2[36+b>>2]=i,X2[12+b>>2]=e,A=X2[A+56>>2],N2[X2[X2[A>>2]+8>>2]](A,8+b|0,r,f),K2=48+b|0},function(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n,b,t,o=0;P2(0),P2(0),P2(0),P2(0),P2(0),X2[(o=f=52+(K2=t=K2-144|0)|0)>>2]=0,X2[4+o>>2]=0,X2[(o=t+64|0)>>2]=0,X2[4+o>>2]=0,X2[(o=72+t|0)>>2]=0,X2[4+o>>2]=0,X2[(o=84+t|0)>>2]=0,X2[4+o>>2]=0,X2[80+t>>2]=1065353216,X2[(o=92+t|0)>>2]=0,X2[4+o>>2]=0,X2[(o=104+t|0)>>2]=0,X2[4+o>>2]=0,X2[100+t>>2]=1065353216,X2[(o=112+t|0)>>2]=0,X2[4+o>>2]=0,X2[(o=120+t|0)>>2]=0,X2[4+o>>2]=-581039253,X2[140+t>>2]=0,o=U2[r+8>>2],i=U2[r>>2],a=P2(i*P2(0)),n=U2[r+4>>2],b=P2(n*P2(0)),U2[136+t>>2]=o+P2(a+b),o=P2(o*P2(0)),U2[132+t>>2]=P2(n+a)+o,X2[44+t>>2]=0,X2[48+t>>2]=0,X2[40+t>>2]=12348,X2[60+t>>2]=1065353216,U2[128+t>>2]=P2(i+b)+o,X2[32+t>>2]=1566444395,X2[36+t>>2]=0,X2[24+t>>2]=1566444395,X2[28+t>>2]=1566444395,X2[16+t>>2]=-581039253,X2[20+t>>2]=0,X2[8+t>>2]=-581039253,X2[12+t>>2]=-581039253,N2[X2[X2[e>>2]+64>>2]](e,40+t|0,8+t|0,24+t|0),r=X2[4+f>>2],X2[(e=A+8|0)>>2]=X2[f>>2],X2[e+4>>2]=r,e=X2[48+t>>2],X2[A>>2]=X2[44+t>>2],X2[A+4>>2]=e,K2=144+t|0},function(A,e,r){N2[X2[X2[(e|=0)>>2]+68>>2]](A|=0,e,r|=0)},e,A,function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n,b=P2(0),t=P2(0),o=0,c=(P2(0),P2(0),P2(0),0);r=A+4|0,t=U2[A+84>>2],i=U2[A+88>>2],a=U2[A+92>>2],n=U2[A+96>>2],t<(b=P2(P2(P2(i*U2[e>>2])+P2(a*U2[e+4>>2]))+P2(n*U2[e+8>>2])))&&(U2[A+84>>2]=b,f=X2[e+4>>2],X2[r>>2]=X2[e>>2],X2[r+4>>2]=f,c=X2[(o=e+8|0)+4>>2],X2[(f=r+8|0)>>2]=X2[o>>2],X2[f+4>>2]=c,t=b),t<(b=P2(P2(P2(i*U2[e+16>>2])+P2(a*U2[e+20>>2]))+P2(n*U2[e+24>>2])))?(U2[A+84>>2]=b,o=X2[(f=e+16|0)+4>>2],X2[r>>2]=X2[f>>2],X2[r+4>>2]=o,c=X2[(f=f+8|0)+4>>2],X2[(o=r+8|0)>>2]=X2[f>>2],X2[o+4>>2]=c):b=t,b<(t=P2(P2(P2(i*U2[e+32>>2])+P2(a*U2[e+36>>2]))+P2(n*U2[e+40>>2])))&&(U2[A+84>>2]=t,e=X2[(A=e+32|0)+4>>2],X2[r>>2]=X2[A>>2],X2[r+4>>2]=e,e=r+8|0,r=X2[(A=A+8|0)+4>>2],X2[e>>2]=X2[A>>2],X2[e+4>>2]=r)},e,A,function(A,e,r,f){A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0),P2(0);var i,a,n,b=U2[e>>2],t=U2[e+16>>2],o=U2[e+32>>2];U2[A+24>>2]<((a=b>2]?i:32)+e>>2]>2]||(b=U2[e+8>>2],t=U2[(i=e+24|0)>>2],o=U2[(n=e+40|0)>>2],U2[A+32>>2]<((a=b>2]?i:n)>>2]>2]||(b=U2[e+4>>2],t=U2[(i=e+20|0)>>2],o=U2[(n=e+36|0)>>2],U2[A+28>>2]<((a=b>2]?i:n)>>2]>2]||(A=X2[A+4>>2],N2[X2[X2[A>>2]+8>>2]](A,e,r,f))))},B1,function(A){A=B1(A|=0),X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},v1,_1,function(A,e,r){r|=0;var f,i,a=0,n=0,b=0,t=0,o=0;if(U2[(e|=0)+16>>2]=U2[(A|=0)+20>>2],U2[e+20>>2]=U2[A+24>>2],U2[e+24>>2]=U2[A+28>>2],U2[e+28>>2]=U2[A+32>>2],U2[e>>2]=U2[A+4>>2],U2[e+4>>2]=U2[A+8>>2],U2[e+8>>2]=U2[A+12>>2],U2[e+12>>2]=U2[A+16>>2],U2[e+32>>2]=U2[A+36>>2],U2[e+36>>2]=U2[A+40>>2],U2[e+40>>2]=U2[A+44>>2],U2[e+44>>2]=U2[A+48>>2],X2[e+48>>2]=X2[A+56>>2],X2[e+52>>2]=J2[A+60|0],a=X2[A+88>>2],X2[e+56>>2]=a){if(a=0|N2[X2[X2[r>>2]+28>>2]](r,X2[A+96>>2]),X2[e+64>>2]=a){if(b=X2[A+88>>2],o=0|N2[X2[X2[r>>2]+16>>2]](r,48,b),1<=(0|b))for(a=X2[o+8>>2]+44|0,t=40;;)if(n=X2[A+96>>2]+t|0,U2[a-28>>2]=U2[n-24>>2],U2[a-24>>2]=U2[n-20>>2],U2[a-20>>2]=U2[n-16>>2],U2[a-16>>2]=U2[n-12>>2],U2[a-44>>2]=U2[n-40>>2],U2[a-40>>2]=U2[n-36>>2],U2[a-36>>2]=U2[n-32>>2],U2[a-32>>2]=U2[n-28>>2],X2[a-12>>2]=X2[n-8>>2],X2[a-8>>2]=X2[n-4>>2],n=X2[n>>2],X2[a>>2]=0,X2[a-4>>2]=n,t=t- -64|0,a=a+48|0,!(b=b-1|0))break;N2[X2[X2[r>>2]+20>>2]](r,o,12612,1497453121,X2[A+96>>2])}}else X2[e+64>>2]=0;if(a=X2[A+128>>2],X2[e+60>>2]=a){if(a=0|N2[X2[X2[r>>2]+28>>2]](r,X2[A+136>>2]),X2[e+68>>2]=a){if(b=X2[A+128>>2],f=(t=0)|N2[X2[X2[r>>2]+16>>2]](r,16,b),(0|b)<=0)o=X2[A+136>>2];else for(o=X2[A+136>>2],i=X2[8+f>>2];;)if($[(a=t+i|0)+6>>1]=A2[(n=t+o|0)+6>>1],$[a+8>>1]=A2[n+8>>1],$[a+10>>1]=A2[n+10>>1],$[a>>1]=A2[n>>1],$[a+2>>1]=A2[n+2>>1],X2[a+12>>2]=X2[n+12>>2],$[a+4>>1]=A2[n+4>>1],t=t+16|0,!(b=b-1|0))break;N2[X2[X2[r>>2]+20>>2]](r,f,12635,1497453121,o)}}else X2[e+68>>2]=0;if(X2[e+76>>2]=X2[A+144>>2],a=X2[A+152>>2],X2[e+80>>2]=a){if(a=e,e=0|N2[X2[X2[r>>2]+28>>2]](r,X2[A+160>>2]),X2[a+72>>2]=e){if(t=X2[A+152>>2],n=0|N2[X2[X2[r>>2]+16>>2]](r,20,t),(0|t)<=0)A=X2[A+160>>2];else for(a=(A=X2[A+160>>2])+16|0,e=X2[n+8>>2];;)if($[e+14>>1]=A2[a-10>>1],$[e+16>>1]=A2[a-8>>1],$[e+18>>1]=A2[a-6>>1],$[e+8>>1]=A2[a-16>>1],$[e+10>>1]=A2[a-14>>1],o=X2[(b=a-4|0)+4>>2],X2[e>>2]=X2[b>>2],X2[e+4>>2]=o,$[e+12>>1]=A2[a-12>>1],a=a+32|0,e=e+20|0,!(t=t-1|0))break;N2[X2[X2[r>>2]+20>>2]](r,n,12658,1497453121,A)}}else X2[e+72>>2]=0;return 12679},function(A,e){var r,f=0,i=0,a=0,n=0,b=0,t=0,o=0,c=0,k=0,u=0;if(K2=r=K2+-64|0,U2[(A|=0)+20>>2]=U2[(e|=0)+16>>2],U2[A+24>>2]=U2[e+20>>2],U2[A+28>>2]=U2[e+24>>2],U2[A+32>>2]=U2[e+28>>2],U2[A+4>>2]=U2[e>>2],U2[A+8>>2]=U2[e+4>>2],U2[A+12>>2]=U2[e+8>>2],U2[A+16>>2]=U2[e+12>>2],U2[A+36>>2]=U2[e+32>>2],U2[A+40>>2]=U2[e+36>>2],U2[A+44>>2]=U2[e+40>>2],U2[A+48>>2]=U2[e+44>>2],X2[A+56>>2]=X2[e+48>>2],S2[A+60|0]=0!=X2[e+52>>2],o=X2[e+56>>2],X2[(f=56+r|0)>>2]=0,X2[f+4>>2]=0,X2[(f=48+r|0)>>2]=0,X2[f+4>>2]=0,X2[(f=40+r|0)>>2]=0,X2[f+4>>2]=0,X2[(f=32+r|0)>>2]=0,X2[f+4>>2]=0,X2[(f=24+r|0)>>2]=0,X2[f+4>>2]=0,X2[(f=16+r|0)>>2]=0,X2[f+4>>2]=0,X2[(f=8+r|0)>>2]=0,X2[f+4>>2]=0,X2[r>>2]=0,((X2[4+r>>2]=0)|(a=X2[A+88>>2]))<(0|o)){if(X2[A+92>>2]<(0|o)){if(o&&(X2[6258]=X2[6258]+1,(f=L2(o<<6|19))&&(X2[(n=f+19&-16)-4>>2]=f)),1<=(0|a))for(f=a;;)if(t=X2[A+96>>2]+c|0,u=X2[(b=t)+4>>2],X2[(i=n+c|0)>>2]=X2[b>>2],X2[i+4>>2]=u,u=X2[(b=b+56|0)+4>>2],X2[(k=i+56|0)>>2]=X2[b>>2],X2[k+4>>2]=u,u=X2[(k=t+48|0)+4>>2],X2[(b=i+48|0)>>2]=X2[k>>2],X2[b+4>>2]=u,u=X2[(k=t+40|0)+4>>2],X2[(b=i+40|0)>>2]=X2[k>>2],X2[b+4>>2]=u,u=X2[(k=t+32|0)+4>>2],X2[(b=i+32|0)>>2]=X2[k>>2],X2[b+4>>2]=u,u=X2[(k=t+24|0)+4>>2],X2[(b=i+24|0)>>2]=X2[k>>2],X2[b+4>>2]=u,u=X2[(k=t+16|0)+4>>2],X2[(b=i+16|0)>>2]=X2[k>>2],X2[b+4>>2]=u,b=X2[(t=t+8|0)+4>>2],X2[(i=i+8|0)>>2]=X2[t>>2],X2[i+4>>2]=b,c=c- -64|0,!(f=f-1|0))break;(f=X2[A+96>>2])&&J2[A+100|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[A+96>>2]=n,X2[A+92>>2]=o,S2[A+100|0]=1}for(f=a<<6,c=o-a|0;;)if(n=X2[4+r>>2],a=X2[A+96>>2]+f|0,X2[(i=a)>>2]=X2[r>>2],X2[i+4>>2]=n,t=X2[(n=56+r|0)+4>>2],X2[(i=i+56|0)>>2]=X2[n>>2],X2[i+4>>2]=t,t=X2[(n=48+r|0)+4>>2],X2[(i=a+48|0)>>2]=X2[n>>2],X2[i+4>>2]=t,t=X2[(n=40+r|0)+4>>2],X2[(i=a+40|0)>>2]=X2[n>>2],X2[i+4>>2]=t,t=X2[(n=32+r|0)+4>>2],X2[(i=a+32|0)>>2]=X2[n>>2],X2[i+4>>2]=t,t=X2[(n=24+r|0)+4>>2],X2[(i=a+24|0)>>2]=X2[n>>2],X2[i+4>>2]=t,t=X2[(n=16+r|0)+4>>2],X2[(i=a+16|0)>>2]=X2[n>>2],X2[i+4>>2]=t,n=X2[(i=8+r|0)+4>>2],X2[(a=a+8|0)>>2]=X2[i>>2],X2[a+4>>2]=n,f=f- -64|0,!(c=c-1|0))break}if(1<=(0|(X2[A+88>>2]=o)))for(i=X2[e+64>>2]+40|0,f=X2[A+96>>2]+40|0;;)if(U2[f-24>>2]=U2[i-24>>2],U2[f-20>>2]=U2[i-20>>2],U2[f-16>>2]=U2[i-16>>2],U2[f-12>>2]=U2[i-12>>2],U2[f-40>>2]=U2[i-40>>2],U2[f-36>>2]=U2[i-36>>2],U2[f-32>>2]=U2[i-32>>2],X2[f-8>>2]=X2[i-8>>2],U2[f-28>>2]=U2[i-28>>2],X2[f-4>>2]=X2[i-4>>2],X2[f>>2]=X2[i>>2],f=f- -64|0,i=i+48|0,!(o=o-1|0))break;if(c=X2[e+60>>2],X2[(f=8+r|0)>>2]=0,X2[f+4>>2]=0,X2[r>>2]=0,((X2[4+r>>2]=0)|(a=X2[A+128>>2]))<(0|c)){if(X2[A+132>>2]<(0|c)){if(n=0,c&&(X2[6258]=X2[6258]+1,(f=L2(19+(c<<4)|0))&&(X2[(n=f+19&-16)-4>>2]=f)),1<=(0|a))for(i=0,f=a;;)if(o=X2[A+136>>2]+i|0,k=X2[o+4>>2],X2[(b=t=i+n|0)>>2]=X2[o>>2],X2[b+4>>2]=k,b=X2[(o=o+8|0)+4>>2],X2[(t=t+8|0)>>2]=X2[o>>2],X2[t+4>>2]=b,i=i+16|0,!(f=f-1|0))break;(f=X2[A+136>>2])&&J2[A+140|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[A+136>>2]=n,X2[A+132>>2]=c,S2[A+140|0]=1}for(i=a<<4,f=c-a|0;;)if(n=X2[4+r>>2],a=X2[A+136>>2]+i|0,X2[a>>2]=X2[r>>2],X2[a+4>>2]=n,n=X2[(o=8+r|0)+4>>2],X2[(a=a+8|0)>>2]=X2[o>>2],X2[a+4>>2]=n,i=i+16|0,!(f=f-1|0))break}if(1<=(0|(X2[A+128>>2]=c)))for(i=X2[A+136>>2],n=X2[e+68>>2],o=0;;)if($[(f=i+o|0)+6>>1]=A2[(a=n+o|0)+6>>1],$[f+8>>1]=A2[a+8>>1],$[f+10>>1]=A2[a+10>>1],$[f>>1]=A2[a>>1],$[f+2>>1]=A2[a+2>>1],X2[f+12>>2]=X2[a+12>>2],$[f+4>>1]=A2[a+4>>1],o=o+16|0,!(c=c-1|0))break;if(X2[A+144>>2]=X2[e+76>>2],o=X2[e+80>>2],(0|(a=X2[A+152>>2]))<(0|o)){if(X2[A+156>>2]<(0|o)){if(n=0,o&&(X2[6258]=X2[6258]+1,(f=L2(o<<5|19))&&(X2[(n=f+19&-16)-4>>2]=f)),1<=(0|a))for(i=0,f=a;;)if(t=X2[A+160>>2]+i|0,u=X2[(b=t)+4>>2],X2[(c=i+n|0)>>2]=X2[b>>2],X2[c+4>>2]=u,u=X2[(b=b+24|0)+4>>2],X2[(k=c+24|0)>>2]=X2[b>>2],X2[k+4>>2]=u,u=X2[(k=t+16|0)+4>>2],X2[(b=c+16|0)>>2]=X2[k>>2],X2[b+4>>2]=u,b=X2[(t=t+8|0)+4>>2],X2[(c=c+8|0)>>2]=X2[t>>2],X2[c+4>>2]=b,i=i+32|0,!(f=f-1|0))break;(f=X2[A+160>>2])&&J2[A+164|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[A+160>>2]=n,X2[A+156>>2]=o,S2[A+164|0]=1}for(f=a<<5,c=o-a|0;;)if(n=X2[4+r>>2],a=X2[A+160>>2]+f|0,X2[(i=a)>>2]=X2[r>>2],X2[i+4>>2]=n,t=X2[(n=24+r|0)+4>>2],X2[(i=i+24|0)>>2]=X2[n>>2],X2[i+4>>2]=t,t=X2[(n=16+r|0)+4>>2],X2[(i=a+16|0)>>2]=X2[n>>2],X2[i+4>>2]=t,n=X2[(i=8+r|0)+4>>2],X2[(a=a+8|0)>>2]=X2[i>>2],X2[a+4>>2]=n,f=f+32|0,!(c=c-1|0))break}if(1<=(0|(X2[A+152>>2]=o)))for(i=X2[A+160>>2]+16|0,f=X2[e+72>>2];;)if($[i-10>>1]=A2[f+14>>1],$[i-8>>1]=A2[f+16>>1],$[i-6>>1]=A2[f+18>>1],$[i-16>>1]=A2[f+8>>1],$[i-14>>1]=A2[f+10>>1],e=X2[f+4>>2],X2[(A=i-4|0)>>2]=X2[f>>2],X2[A+4>>2]=e,$[i-12>>1]=A2[f+12>>1],i=i+32|0,f=f+20|0,!(o=o-1|0))break;K2=r+64|0},function(A,e){var r,f=0,i=0,a=0,n=0,b=0,t=0,o=0,c=0,k=0,u=0;if(K2=r=K2+-64|0,U2[(A|=0)+20>>2]=M[(e|=0)+32>>3],U2[A+4>>2]=M[e>>3],U2[A+8>>2]=M[e+8>>3],U2[A+12>>2]=M[e+16>>3],U2[A+16>>2]=M[e+24>>3],U2[A+36>>2]=M[e+64>>3],U2[A+24>>2]=M[e+40>>3],U2[A+28>>2]=M[e+48>>3],U2[A+32>>2]=M[e+56>>3],U2[A+40>>2]=M[e+72>>3],X2[A+56>>2]=X2[e+96>>2],U2[A+44>>2]=M[e+80>>3],U2[A+48>>2]=M[e+88>>3],S2[A+60|0]=0!=X2[e+100>>2],o=X2[e+104>>2],X2[(f=56+r|0)>>2]=0,X2[f+4>>2]=0,X2[(f=48+r|0)>>2]=0,X2[f+4>>2]=0,X2[(f=40+r|0)>>2]=0,X2[f+4>>2]=0,X2[(f=32+r|0)>>2]=0,X2[f+4>>2]=0,X2[(f=24+r|0)>>2]=0,X2[f+4>>2]=0,X2[(f=16+r|0)>>2]=0,X2[f+4>>2]=0,X2[(f=8+r|0)>>2]=0,X2[f+4>>2]=0,X2[r>>2]=0,((X2[4+r>>2]=0)|(a=X2[A+88>>2]))<(0|o)){if(X2[A+92>>2]<(0|o)){if(o&&(X2[6258]=X2[6258]+1,(f=L2(o<<6|19))&&(X2[(n=f+19&-16)-4>>2]=f)),1<=(0|a))for(f=a;;)if(t=X2[A+96>>2]+c|0,u=X2[(b=t)+4>>2],X2[(i=n+c|0)>>2]=X2[b>>2],X2[i+4>>2]=u,u=X2[(b=b+56|0)+4>>2],X2[(k=i+56|0)>>2]=X2[b>>2],X2[k+4>>2]=u,u=X2[(k=t+48|0)+4>>2],X2[(b=i+48|0)>>2]=X2[k>>2],X2[b+4>>2]=u,u=X2[(k=t+40|0)+4>>2],X2[(b=i+40|0)>>2]=X2[k>>2],X2[b+4>>2]=u,u=X2[(k=t+32|0)+4>>2],X2[(b=i+32|0)>>2]=X2[k>>2],X2[b+4>>2]=u,u=X2[(k=t+24|0)+4>>2],X2[(b=i+24|0)>>2]=X2[k>>2],X2[b+4>>2]=u,u=X2[(k=t+16|0)+4>>2],X2[(b=i+16|0)>>2]=X2[k>>2],X2[b+4>>2]=u,b=X2[(t=t+8|0)+4>>2],X2[(i=i+8|0)>>2]=X2[t>>2],X2[i+4>>2]=b,c=c- -64|0,!(f=f-1|0))break;(f=X2[A+96>>2])&&J2[A+100|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[A+96>>2]=n,X2[A+92>>2]=o,S2[A+100|0]=1}for(f=a<<6,c=o-a|0;;)if(n=X2[4+r>>2],a=X2[A+96>>2]+f|0,X2[(i=a)>>2]=X2[r>>2],X2[i+4>>2]=n,t=X2[(n=56+r|0)+4>>2],X2[(i=i+56|0)>>2]=X2[n>>2],X2[i+4>>2]=t,t=X2[(n=48+r|0)+4>>2],X2[(i=a+48|0)>>2]=X2[n>>2],X2[i+4>>2]=t,t=X2[(n=40+r|0)+4>>2],X2[(i=a+40|0)>>2]=X2[n>>2],X2[i+4>>2]=t,t=X2[(n=32+r|0)+4>>2],X2[(i=a+32|0)>>2]=X2[n>>2],X2[i+4>>2]=t,t=X2[(n=24+r|0)+4>>2],X2[(i=a+24|0)>>2]=X2[n>>2],X2[i+4>>2]=t,t=X2[(n=16+r|0)+4>>2],X2[(i=a+16|0)>>2]=X2[n>>2],X2[i+4>>2]=t,n=X2[(i=8+r|0)+4>>2],X2[(a=a+8|0)>>2]=X2[i>>2],X2[a+4>>2]=n,f=f- -64|0,!(c=c-1|0))break}if(1<=(0|(X2[A+88>>2]=o)))for(i=X2[e+112>>2]+72|0,f=X2[A+96>>2]+40|0;;)if(X2[f-8>>2]=X2[i-8>>2],U2[f-24>>2]=M[i-40>>3],U2[f-20>>2]=M[i-32>>3],U2[f-16>>2]=M[i-24>>3],U2[f-12>>2]=M[i-16>>3],U2[f-40>>2]=M[i-72>>3],U2[f-36>>2]=M[i+-64>>3],U2[f-32>>2]=M[i-56>>3],U2[f-28>>2]=M[i-48>>3],X2[f-4>>2]=X2[i-4>>2],X2[f>>2]=X2[i>>2],f=f- -64|0,i=i+80|0,!(o=o-1|0))break;if(c=X2[e+108>>2],X2[(f=8+r|0)>>2]=0,X2[f+4>>2]=0,X2[r>>2]=0,((X2[4+r>>2]=0)|(a=X2[A+128>>2]))<(0|c)){if(X2[A+132>>2]<(0|c)){if(n=0,c&&(X2[6258]=X2[6258]+1,(f=L2(19+(c<<4)|0))&&(X2[(n=f+19&-16)-4>>2]=f)),1<=(0|a))for(i=0,f=a;;)if(o=X2[A+136>>2]+i|0,k=X2[o+4>>2],X2[(b=t=i+n|0)>>2]=X2[o>>2],X2[b+4>>2]=k,b=X2[(o=o+8|0)+4>>2],X2[(t=t+8|0)>>2]=X2[o>>2],X2[t+4>>2]=b,i=i+16|0,!(f=f-1|0))break;(f=X2[A+136>>2])&&J2[A+140|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[A+136>>2]=n,X2[A+132>>2]=c,S2[A+140|0]=1}for(i=a<<4,f=c-a|0;;)if(n=X2[4+r>>2],a=X2[A+136>>2]+i|0,X2[a>>2]=X2[r>>2],X2[a+4>>2]=n,n=X2[(o=8+r|0)+4>>2],X2[(a=a+8|0)>>2]=X2[o>>2],X2[a+4>>2]=n,i=i+16|0,!(f=f-1|0))break}if(1<=(0|(X2[A+128>>2]=c)))for(i=X2[A+136>>2],n=X2[e+116>>2],o=0;;)if($[(f=i+o|0)+6>>1]=A2[(a=n+o|0)+6>>1],$[f+8>>1]=A2[a+8>>1],$[f+10>>1]=A2[a+10>>1],$[f>>1]=A2[a>>1],$[f+2>>1]=A2[a+2>>1],X2[f+12>>2]=X2[a+12>>2],$[f+4>>1]=A2[a+4>>1],o=o+16|0,!(c=c-1|0))break;if(X2[A+144>>2]=X2[e+120>>2],o=X2[e+124>>2],(0|(a=X2[A+152>>2]))<(0|o)){if(X2[A+156>>2]<(0|o)){if(n=0,o&&(X2[6258]=X2[6258]+1,(f=L2(o<<5|19))&&(X2[(n=f+19&-16)-4>>2]=f)),1<=(0|a))for(i=0,f=a;;)if(t=X2[A+160>>2]+i|0,u=X2[(b=t)+4>>2],X2[(c=i+n|0)>>2]=X2[b>>2],X2[c+4>>2]=u,u=X2[(b=b+24|0)+4>>2],X2[(k=c+24|0)>>2]=X2[b>>2],X2[k+4>>2]=u,u=X2[(k=t+16|0)+4>>2],X2[(b=c+16|0)>>2]=X2[k>>2],X2[b+4>>2]=u,b=X2[(t=t+8|0)+4>>2],X2[(c=c+8|0)>>2]=X2[t>>2],X2[c+4>>2]=b,i=i+32|0,!(f=f-1|0))break;(f=X2[A+160>>2])&&J2[A+164|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[A+160>>2]=n,X2[A+156>>2]=o,S2[A+164|0]=1}for(f=a<<5,c=o-a|0;;)if(n=X2[4+r>>2],a=X2[A+160>>2]+f|0,X2[(i=a)>>2]=X2[r>>2],X2[i+4>>2]=n,t=X2[(n=24+r|0)+4>>2],X2[(i=i+24|0)>>2]=X2[n>>2],X2[i+4>>2]=t,t=X2[(n=16+r|0)+4>>2],X2[(i=a+16|0)>>2]=X2[n>>2],X2[i+4>>2]=t,n=X2[(i=8+r|0)+4>>2],X2[(a=a+8|0)>>2]=X2[i>>2],X2[a+4>>2]=n,f=f+32|0,!(c=c-1|0))break}if(1<=(0|(X2[A+152>>2]=o)))for(i=X2[A+160>>2]+16|0,f=X2[e+128>>2];;)if($[i-10>>1]=A2[f+14>>1],$[i-8>>1]=A2[f+16>>1],$[i-6>>1]=A2[f+18>>1],$[i-16>>1]=A2[f+8>>1],$[i-14>>1]=A2[f+10>>1],e=X2[f+4>>2],X2[(A=i-4|0)>>2]=X2[f>>2],X2[A+4>>2]=e,$[i-12>>1]=A2[f+12>>1],i=i+32|0,f=f+20|0,!(o=o-1|0))break;K2=r+64|0},function(A){return B1(A|=0),0|A},function(A){B1(A|=0),X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},function(A,e,r,f){return v1(A|=0,e|=0,r|=0,f|=0),1},A,function(A,e,r,f){A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0),P2(0);var i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E=0,Q=(P2(0),0),w=(P2(0),P2(0),P2(0),P2(0),P2(0),0),G=(P2(0),P2(0),P2(0),P2(0),P2(0),U2[e+40>>2]),C=U2[e+24>>2],h=(g=(g=(_=U2[e+8>>2])>P2(-0xde0b6b000000000)?_:P2(-0xde0b6b000000000))>2])<(g=(C=U2[e+20>>2])<(g=(_=U2[e+4>>2])P2(-0xde0b6b000000000)?_:P2(-0xde0b6b000000000))>2])<(c=(_=U2[e+16>>2])<(o=(a=U2[e>>2])P2(-0xde0b6b000000000)?a:P2(-0xde0b6b000000000))<_?_:a)>2],_=U2[e+44>>2],a=U2[e+40>>2],o=U2[e+12>>2],u=U2[e+8>>2],s=U2[e+36>>2],l=U2[e+4>>2],i=X2[A+4>>2],(0|(A=X2[i+4>>2]))==X2[i+8>>2]&&!((0|(Q=A?A<<1:1))<=(0|A))){if(Q&&(X2[6258]=X2[6258]+1,(e=L2(19+(Q<<4)|0))&&(X2[(w=e+19&-16)-4>>2]=e)),1<=(0|A))for(e=0;;)if(t=X2[i+12>>2]+e|0,k=X2[4+t>>2],X2[(E=e+w|0)>>2]=X2[t>>2],X2[E+4>>2]=k,k=X2[4+(t=8+t|0)>>2],X2[(E=E+8|0)>>2]=X2[t>>2],X2[E+4>>2]=k,e=e+16|0,!(A=A-1|0))break;(A=X2[i+12>>2])&&J2[i+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2])),X2[i+12>>2]=w,S2[i+16|0]=1,X2[i+8>>2]=Q,A=X2[i+4>>2]}Z=P2(G-g),A=X2[i+12>>2]+(A<<4)|0,X2[A+12>>2]=r<<21|f,c=P2((b=d?C:b)-(C=v?C:c)),e=A,r=B=P2(0)?~~n>>>0:0,$[e+4>>1]=65534&f,e=A,f=Z=P2(0)?~~g>>>0:0,$[e+2>>1]=65534&Q,e=A,Q=c=P2(0)?~~C>>>0:0,$[e>>1]=65534&E,E=A+10|0,e=(C=P2(P2(P2((r?P2(h+P2(.0010000000474974513)):h)-o)*_)+P2(1)))=P2(0)?~~C>>>0:0,$[E>>1]=1|e,r=A+8|0,e=(G=P2(P2(P2((f?P2(G+P2(.0010000000474974513)):G)-u)*a)+P2(1)))=P2(0)?~~G>>>0:0,$[r>>1]=1|e,e=(G=P2(P2(P2((Q?P2(b+P2(.0010000000474974513)):b)-l)*s)+P2(1)))=P2(0)?~~G>>>0:0,$[A+6>>1]=1|e,X2[i+4>>2]=X2[i+4>>2]+1},A,function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G=0,C=(P2(0),P2(0),P2(0),P2(0),0),h=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2-32|0);if(K2=h,a=U2[e+28>>2],_=(t=(b=U2[e+12>>2])>P2(0)?b:P2(0))>2],g=(c=(s=U2[e+8>>2])>P2(-0xde0b6b000000000)?s:P2(-0xde0b6b000000000))>2],E=(B=(l=U2[e+4>>2])>P2(-0xde0b6b000000000)?l:P2(-0xde0b6b000000000))>2],v=(v=(d=U2[e>>2])>P2(-0xde0b6b000000000)?d:P2(-0xde0b6b000000000))>2],b=U2[e+40>>2],t=U2[e+36>>2],s=U2[e+32>>2],o=X2[A+4>>2],(0|(C=X2[o+4>>2]))==X2[o+8>>2]&&!((0|(Z=C?C<<1:1))<=(0|C))){if(e=0,Z&&(X2[6258]=X2[6258]+1,(A=L2(Z<<6|19))&&(X2[(e=A+19&-16)-4>>2]=A)),1<=(0|C))for(A=0;;)if(k=X2[o+12>>2]+A|0,n=X2[4+(i=k)>>2],X2[(G=u=A+e|0)>>2]=X2[i>>2],X2[4+G>>2]=n,n=X2[4+(i=56+i|0)>>2],X2[(G=56+G|0)>>2]=X2[i>>2],X2[4+G>>2]=n,n=X2[4+(G=48+k|0)>>2],X2[(i=48+u|0)>>2]=X2[G>>2],X2[4+i>>2]=n,n=X2[4+(G=40+k|0)>>2],X2[(i=40+u|0)>>2]=X2[G>>2],X2[4+i>>2]=n,n=X2[4+(G=32+k|0)>>2],X2[(i=32+u|0)>>2]=X2[G>>2],X2[4+i>>2]=n,n=X2[4+(G=24+k|0)>>2],X2[(i=24+u|0)>>2]=X2[G>>2],X2[4+i>>2]=n,n=X2[4+(G=16+k|0)>>2],X2[(i=16+u|0)>>2]=X2[G>>2],X2[4+i>>2]=n,i=X2[4+(k=8+k|0)>>2],X2[(u=8+u|0)>>2]=X2[k>>2],X2[4+u>>2]=i,A=A- -64|0,!(C=C-1|0))break;(A=X2[o+12>>2])&&J2[o+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2])),X2[o+12>>2]=e,S2[o+16|0]=1,X2[o+8>>2]=Z,C=X2[o+4>>2]}A=X2[o+12>>2]+(C<<6)|0,X2[A+40>>2]=f,X2[A+36>>2]=r,X2[A+32>>2]=-1,U2[A+16>>2]=v>2]=a>2]=b>2]=t>2]=s>2],X2[A+44>>2]=X2[12+h>>2],X2[A+48>>2]=e,U2[A+28>>2]=_>2]=g>2]=E>2],X2[(e=A+52|0)>>2]=X2[r>>2],X2[e+4>>2]=f,X2[A+60>>2]=X2[28+h>>2],X2[o+4>>2]=X2[o+4>>2]+1,K2=32+h|0},function(A){var e;return X2[(A|=0)>>2]=13056,J2[A+69|0]&&(e=X2[A+60>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+60>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]))),0|A},function(A){var e;X2[(A|=0)>>2]=13056,J2[A+69|0]&&(e=X2[A+60>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+60>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]))),X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},function(A,e){A|=0,e|=0,P2(0),P2(0);var r=0|N2[X2[X2[A>>2]+28>>2]](A),f=P2(U2[r>>2]-U2[e>>2]),i=P2(f*f);f=P2(U2[4+r>>2]-U2[e+4>>2]),i=P2(i+P2(f*f)),f=P2(U2[8+r>>2]-U2[e+8>>2]),P2(i+P2(f*f))>P2(1.1920928955078125e-7)&&(l1(A,e),J2[A+69|0]&&(e=X2[A+60>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+60>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]))),X2[6258]=X2[6258]+1,e=0,(r=L2(191))&&(X2[(e=r+19&-16)-4>>2]=r),S2[e+80|0]=1,S2[e+60|0]=0,X2[e+52>>2]=287,X2[e+76>>2]=0,S2[e+100|0]=1,X2[e+68>>2]=0,X2[e+72>>2]=0,X2[e+96>>2]=0,S2[e+120|0]=1,X2[e+88>>2]=0,X2[e+92>>2]=0,X2[e+116>>2]=0,S2[e+140|0]=1,X2[e+108>>2]=0,X2[e+112>>2]=0,X2[e+136>>2]=0,S2[e+164|0]=1,X2[e+144>>2]=0,X2[e+128>>2]=0,X2[e+132>>2]=0,X2[e+160>>2]=0,X2[e+152>>2]=0,X2[e+156>>2]=0,X2[e+168>>2]=0,X2[e+28>>2]=2139095039,X2[e+32>>2]=0,X2[e+20>>2]=2139095039,X2[e+24>>2]=2139095039,X2[e+12>>2]=-8388609,X2[e+16>>2]=0,X2[e+4>>2]=-8388609,X2[e+8>>2]=-8388609,X2[e>>2]=12728,g1(X2[A+60>>2]=e,X2[A+56>>2],J2[A+68|0],A+24|0,A+40|0),S2[A+69|0]=1)},function(A){return 13352},L0,function(A,e,r){e|=0;var f=0,i=0,a=0,n=0,b=0,t=0,o=0,c=0,f=0|N2[X2[X2[(r|=0)>>2]+40>>2]](r,A|=0),i=0|N2[X2[X2[r>>2]+28>>2]](r,f);return(X2[e>>2]=i)&&N2[X2[X2[r>>2]+48>>2]](r,f),f=X2[A+4>>2],X2[e+8>>2]=0,X2[e+4>>2]=f,f=X2[A+56>>2],N2[X2[X2[f>>2]+56>>2]](f,e+12|0,r),U2[e+52>>2]=U2[A+20>>2],!X2[A+60>>2]||1&N2[X2[X2[r>>2]+52>>2]](r)?(X2[e+40>>2]=0,X2[e+44>>2]=0):(f=0|N2[X2[X2[r>>2]+24>>2]](r,X2[A+60>>2]))?(X2[e+44>>2]=0,X2[e+40>>2]=f):(f=0|N2[X2[X2[r>>2]+28>>2]](r,X2[A+60>>2]),X2[e+44>>2]=0,X2[e+40>>2]=f,f=X2[A+60>>2],n=r,b=0|N2[X2[X2[f>>2]+12>>2]](f),a=X2[X2[r>>2]+16>>2],f=0|N2[a](0|n,0|b,0|(t=1)),i=X2[A+60>>2],t=r,b=f,n=0|N2[X2[X2[i>>2]+16>>2]](i,X2[f+8>>2],r),c=X2[A+60>>2],a=X2[X2[r>>2]+20>>2],N2[a](0|t,0|b,0|n,0|(o=1213612625),0|c)),!X2[A+64>>2]||2&N2[X2[X2[r>>2]+52>>2]](r)?X2[e+48>>2]=0:(f=0|N2[X2[X2[r>>2]+24>>2]](r,X2[A+64>>2]))?X2[e+48>>2]=f:(a=e,c=0|N2[X2[X2[r>>2]+28>>2]](r,X2[A+64>>2]),X2[a+48>>2]=c,f=X2[A+64>>2],c=r,o=0|N2[X2[X2[f>>2]+8>>2]](f),a=X2[X2[r>>2]+16>>2],f=0|N2[a](0|c,0|o,0|(n=1)),i=X2[A+64>>2],n=r,o=f,c=0|N2[X2[X2[i>>2]+12>>2]](i,X2[f+8>>2],r),t=X2[A+64>>2],a=X2[X2[r>>2]+20>>2],N2[a](0|n,0|o,0|c,0|(b=1346456916),0|t)),X2[e+56>>2]=0,13328},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n,b,t,o,c,k,u,s,l,B,v,d=0,Z=0,_=(P2(0),P2(0),0),g=(P2(0),P2(0),0),E=(P2(0),0),Q=0,w=0,G=0,C=0;P2(0),P2(0),P2(0),P2(0),P2(0),X2[60+(K2=v=K2-80|0)>>2]=0,X2[8+v>>2]=e,X2[v>>2]=13160,X2[4+v>>2]=X2[A+56>>2],d=X2[A+60>>2];A:if(J2[d+60|0]){Z=A=v,t=U2[d+28>>2],i=U2[d+12>>2],a=U2[r+8>>2],k=U2[d+44>>2],e=(a=P2(P2((t<(a=a=P2(0)?~~a>>>0:0,$[Z+78>>1]=e&=65534,g=A,o=U2[d+24>>2],a=U2[d+8>>2],n=U2[r+4>>2],u=U2[d+40>>2],Z=(n=P2(P2((o<(n=n=P2(0)?~~n>>>0:0,$[g+76>>1]=Z&=65534,g=A,c=U2[d+20>>2],n=U2[d+4>>2],b=U2[r>>2],s=U2[d+36>>2],r=(b=P2(P2((c<(b=b=P2(0)?~~b>>>0:0,$[g+74>>1]=E=65534&r,b=U2[f+8>>2],r=(i=P2(P2(k*P2((t<(b=b=P2(0)?~~i>>>0:0,i=U2[f>>2],t=U2[f+4>>2],$[A+72>>1]=f=1|r,r=(a=P2(P2(u*P2((o<(t=t=P2(0)?~~a>>>0:0,$[A+70>>1]=g=1|r,A=v,r=(i=P2(P2(s*P2((c<(i=i=P2(0)?~~i>>>0:0,$[A+68>>1]=Q=1|r;e:switch(X2[d+144>>2]){case 0:if(1<=(0|(w=X2[d+56>>2])))for(A=X2[d+136>>2],r=0;;)if(d=E>>>0<=A2[A+6>>1]&Q>>>0>=A2[A>>1]&e>>>0<=A2[A+10>>1]&f>>>0>=A2[A+4>>1]&Z>>>0<=A2[A+8>>1]&g>>>0>=A2[A+2>>1],(C=(0|(G=X2[A+12>>2]))<0)||d&&N2[X2[X2[v>>2]+8>>2]](v,G>>>21|0,2097151&G),A=C&(-1^d)?(r=r-(d=X2[A+12>>2])|0,A-(d<<4)|0):(r=r+1|0,A+16|0),_=_+1|0,!((0|r)<(0|w)))break;if(X2[6352]>=(0|_))break A;X2[6352]=_;break A;case 1:if(X2[d+152>>2]<1)break A;for(;;){if(A=X2[d+160>>2]+(G<<5)|0,!(E>>>0>A2[A+6>>1]||Q>>>0>1]||e>>>0>A2[A+10>>1]||f>>>0>1]||Z>>>0>A2[A+8>>1]||g>>>0>1])){if((0|(_=X2[A+16>>2]))<1)_=0;else for(B=_+(r=X2[A+12>>2])|0,A=X2[d+136>>2]+(r<<4)|0,_=0;;)if(w=E>>>0<=A2[A+6>>1]&Q>>>0>=A2[A>>1]&e>>>0<=A2[A+10>>1]&f>>>0>=A2[A+4>>1]&Z>>>0<=A2[A+8>>1]&g>>>0>=A2[A+2>>1],(l=(0|(C=X2[A+12>>2]))<0)||w&&N2[X2[X2[v>>2]+8>>2]](v,C>>>21|0,2097151&C),A=(-1^w)&l?(r=r-(w=X2[A+12>>2])|0,A-(w<<4)|0):(r=r+1|0,A+16|0),_=_+1|0,!((0|r)<(0|B)))break;X2[6352]>=(0|_)||(X2[6352]=_)}if(!((0|(G=G+1|0))>2]))break}break A;case 2:break e;default:break A;}!function A(e,r,f,i){for(var a,n=0;;){e:{if(!(A2[f>>1]>A2[e+6>>1]||A2[i>>1]>1]||A2[f+4>>1]>A2[e+10>>1]||A2[i+4>>1]>1]||A2[f+2>>1]>A2[e+8>>1]||A2[i+2>>1]>1])){if((0|(n=X2[e+12>>2]))<0)break e;N2[X2[X2[r>>2]+8>>2]](r,n>>>21|0,2097151&n)}return}A(n=e+16|0,r,f,i),a=e+32|0,e=-1<(0|(e=X2[e+28>>2]))?a:n-(e<<4)|0}}(X2[d+136>>2],v,74+v|0,68+v|0)}else{if(1<=(0|(g=X2[d+56>>2])))for(A=X2[d+96>>2],e=0;;){Z=0,U2[r>>2]>U2[A+16>>2]||(Z=0,U2[f>>2]>2]||(Z=1)),_=0,U2[r+8>>2]>U2[A+24>>2]||U2[f+8>>2]>2]||(_=Z);e:{r:{if(U2[f+4>>2]>2]||U2[r+4>>2]>U2[A+20>>2])Q=-1==(0|(Z=X2[A+32>>2])),_=0;else if((Q=-1==(0|(Z=X2[A+32>>2])))&_){N2[X2[X2[v>>2]+8>>2]](v,X2[A+36>>2],X2[A+40>>2]),g=X2[d+56>>2];break r}if(!Q&&!_){e=e+Z|0,A=(Z<<6)+A|0;break e}}e=e+1|0,A=A- -64|0}if(E=E+1|0,!((0|e)<(0|g)))break}X2[6352]>=(0|E)||(X2[6352]=E)}K2=80+v|0},function(A,e){e|=0;var r,f,i,a,n,b=0;(b=X2[(A|=0)+60>>2])&&(f=e,i=0|N2[X2[X2[b>>2]+12>>2]](b),r=X2[X2[e>>2]+16>>2],b=0|N2[r](0|f,0|i,1),n=X2[A+60>>2],a=e,f=0|N2[X2[X2[n>>2]+16>>2]](n,X2[8+(i=b)>>2],e),n=X2[A+60>>2],r=X2[X2[e>>2]+20>>2],N2[r](0|a,0|i,0|f,1213612625,0|n))},function(A,e){e|=0;var r,f,i,a,n,b=0;(b=X2[(A|=0)+64>>2])&&(f=e,i=0|N2[X2[X2[b>>2]+8>>2]](b),r=X2[X2[e>>2]+16>>2],b=0|N2[r](0|f,0|i,1),n=X2[A+64>>2],a=e,f=0|N2[X2[X2[n>>2]+12>>2]](n,X2[8+(i=b)>>2],e),n=X2[A+64>>2],r=X2[X2[e>>2]+20>>2],N2[r](0|a,0|i,0|f,1346456916,0|n))},e,A,function(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n,b,t,o,c=0,k=0,u=P2(0),s=P2(0),l=P2(0),B=0,v=P2(0),d=0;K2=o=K2-32|0,X2[A+60>>2]=X2[A+60>>2]+1,B=X2[A+4>>2],N2[X2[X2[B>>2]+16>>2]](B,28+o|0,24+o|0,20+o|0,16+o|0,12+o|0,8+o|0,4+o|0,o,e),B=(f=X2[A+4>>2])+12|0,i=X2[12+o>>2]+H2(X2[8+o>>2],r)|0,a=X2[20+o>>2],b=k=X2[28+o>>2],t=n=X2[16+o>>2];A:{e:{r:{f:{i:{a:{n:{if(3!=(0|(d=X2[o>>2]))){if(2!=(0|d))break n;c=X2[8+i>>2];break a}if(c=H2(A2[4+i>>1],n)+k|0,c=a?(s=P2(U2[f+8>>2]*P2(M[c+8>>3])),l=P2(U2[f+4>>2]*P2(M[c>>3])),u=P2(M[c+16>>3]),B):(s=P2(U2[c+4>>2]*U2[f+8>>2]),l=P2(U2[c>>2]*U2[f+4>>2]),u=U2[f+12>>2],c+8|0),v=U2[c>>2],X2[A+56>>2]=0,U2[A+48>>2]=s,U2[A+44>>2]=l,U2[A+52>>2]=v*u,c=H2(A2[2+i>>1],n)+k|0,!a)break i;s=P2(U2[f+8>>2]*P2(M[c+8>>3])),l=P2(U2[f+4>>2]*P2(M[c>>3])),u=P2(M[c+16>>3]),c=B;break f}c=J2[2+i|0]}if(c=H2(c,n)+k|0,c=a?(s=P2(U2[f+8>>2]*P2(M[c+8>>3])),l=P2(U2[f+4>>2]*P2(M[c>>3])),u=P2(M[c+16>>3]),B):(s=P2(U2[c+4>>2]*U2[f+8>>2]),l=P2(U2[c>>2]*U2[f+4>>2]),u=U2[f+12>>2],c+8|0),v=U2[c>>2],X2[A+56>>2]=0,U2[A+48>>2]=s,U2[A+44>>2]=l,U2[A+52>>2]=v*u,2==(0|d))break r;c=J2[1+i|0];break e}s=P2(U2[c+4>>2]*U2[f+8>>2]),l=P2(U2[c>>2]*U2[f+4>>2]),u=U2[f+12>>2],c=c+8|0}v=U2[c>>2],X2[A+40>>2]=0,U2[A+32>>2]=s,U2[A+28>>2]=l,U2[A+36>>2]=v*u,k=H2(A2[i>>1],n)+k|0,s=a?(l=P2(U2[f+4>>2]*P2(M[k>>3])),u=P2(M[k+16>>3]),P2(U2[f+8>>2]*P2(M[k+8>>3]))):(B=k+8|0,l=P2(U2[k>>2]*U2[f+4>>2]),u=U2[f+12>>2],P2(U2[k+4>>2]*U2[f+8>>2])),u=P2(U2[B>>2]*u);break A}c=X2[4+i>>2]}c=b+H2(t,c)|0,c=a?(s=P2(U2[f+8>>2]*P2(M[c+8>>3])),l=P2(U2[f+4>>2]*P2(M[c>>3])),u=P2(M[c+16>>3]),B):(s=P2(U2[c+4>>2]*U2[f+8>>2]),l=P2(U2[c>>2]*U2[f+4>>2]),u=U2[f+12>>2],c+8|0),v=U2[c>>2],X2[A+40>>2]=0,U2[A+32>>2]=s,U2[A+28>>2]=l,U2[A+36>>2]=v*u,c=2!=(0|d)?J2[0|i]:X2[i>>2],k=H2(c,n)+k|0,s=a?(l=P2(U2[f+4>>2]*P2(M[k>>3])),u=P2(M[k+16>>3]),P2(U2[f+8>>2]*P2(M[k+8>>3]))):(B=k+8|0,l=P2(U2[k>>2]*U2[f+4>>2]),u=U2[f+12>>2],P2(U2[k+4>>2]*U2[f+8>>2])),u=P2(U2[B>>2]*u)}U2[A+12>>2]=l,X2[A+24>>2]=0,U2[A+20>>2]=u,U2[A+16>>2]=s,B=X2[A+8>>2],N2[X2[X2[B>>2]+8>>2]](B,A+12|0,e,r),A=X2[A+4>>2],N2[X2[X2[A>>2]+24>>2]](A,e),K2=32+o|0},A,E1,A,E1,e,z0,function(A,e,r,f){A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var i,a=X2[A+40>>2],n=U2[a+32>>2],b=U2[A+32>>2],t=U2[a+48>>2],o=U2[a+28>>2],c=U2[A+28>>2],k=U2[a+44>>2],u=U2[a+24>>2],s=U2[a+40>>2],A=U2[A+24>>2],a=P2(N2[X2[X2[a>>2]+48>>2]](a)),l=U2[e+52>>2],B=U2[e+24>>2],v=U2[e+20>>2],d=U2[e+56>>2],Z=U2[e+40>>2],_=U2[e+36>>2],g=U2[e+48>>2],E=U2[e+8>>2],Q=U2[e+4>>2],w=U2[e>>2],G=U2[e+16>>2],e=U2[e+32>>2];X2[r+12>>2]=0,i=d,u=P2(u*A),s=P2(s*A),d=A>=P2(0)?u:s,u=A<=P2(0)?u:s,A=P2(P2(d+u)*P2(.5)),o=P2(o*c),k=P2(k*c),s=c>=P2(0)?o:k,o=c<=P2(0)?o:k,c=P2(P2(s+o)*P2(.5)),n=P2(n*b),t=P2(t*b),k=b>=P2(0)?n:t,t=b<=P2(0)?n:t,b=P2(P2(k+t)*P2(.5)),i=P2(i+P2(P2(P2(e*A)+P2(_*c))+P2(Z*b))),n=P2(a+P2(P2(u-d)*P2(.5))),d=P2(n*P2(j2(e))),e=P2(a+P2(P2(o-s)*P2(.5))),a=P2(a+P2(P2(t-k)*P2(.5))),Z=P2(P2(d+P2(e*P2(j2(_))))+P2(a*P2(j2(Z)))),U2[r+8>>2]=i-Z,_=P2(l+P2(P2(P2(A*G)+P2(c*v))+P2(b*B))),B=P2(P2(P2(n*P2(j2(G)))+P2(e*P2(j2(v))))+P2(a*P2(j2(B)))),U2[r+4>>2]=_-B,b=P2(g+P2(P2(P2(A*w)+P2(c*Q))+P2(b*E))),c=P2(P2(P2(n*P2(j2(w)))+P2(e*P2(j2(Q))))+P2(a*P2(j2(E)))),U2[r>>2]=b-c,X2[f+12>>2]=0,U2[f+8>>2]=Z+i,U2[f+4>>2]=B+_,U2[f>>2]=c+b},Q1,w1,G1,function(A){return 13857},function(A){return 76},function(A,e,r){var f=X2[(A|=0)+40>>2];return N2[X2[X2[f>>2]+56>>2]](f,e|=0,r|=0),U2[e+60>>2]=U2[A+24>>2],U2[e+64>>2]=U2[A+28>>2],U2[e+68>>2]=U2[A+32>>2],X2[e+4>>2]=22,U2[e+72>>2]=U2[A+36>>2],13827},function(A,e,r,f){var i,a,n,b,t,o,c,k,u,s;A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2=s=K2+-64|0,u=X2[4+(a=A+32|0)>>2],X2[(i=56+s|0)>>2]=X2[a>>2],X2[4+i>>2]=u,X2[44+s>>2]=e,X2[40+s>>2]=13776,e=X2[A+28>>2],X2[48+s>>2]=X2[A+24>>2],X2[52+s>>2]=e,i=U2[a>>2],u=U2[A+28>>2],e=U2[A+24>>2],X2[36+s>>2]=0,X2[20+s>>2]=0,a=P2(P2(1)/e),n=U2[r>>2],b=U2[f>>2],U2[24+s>>2]=a*(e>=P2(0)?n:b),t=P2(P2(1)/u),o=U2[r+4>>2],c=U2[f+4>>2],U2[28+s>>2]=t*(u>=P2(0)?o:c),k=P2(P2(1)/i),r=U2[r+8>>2],f=U2[f+8>>2],U2[32+s>>2]=k*(i>=P2(0)?r:f),U2[16+s>>2]=k*(i<=P2(0)?r:f),U2[12+s>>2]=t*(u<=P2(0)?o:c),U2[8+s>>2]=a*(e<=P2(0)?n:b),A=X2[A+40>>2],N2[X2[X2[A>>2]+64>>2]](A,40+s|0,24+s|0,8+s|0),K2=s+64|0},A,function(A,e,r,f){var i,a,n,b,t,o;A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),X2[28+(K2=o=K2-48|0)>>2]=0,i=U2[A+16>>2],U2[24+o>>2]=i*U2[e+24>>2],a=U2[A+12>>2],U2[20+o>>2]=a*U2[e+20>>2],X2[12+o>>2]=0,n=U2[A+8>>2],U2[o>>2]=U2[e>>2]*n,U2[16+o>>2]=n*U2[e+16>>2],U2[8+o>>2]=i*U2[e+8>>2],U2[4+o>>2]=a*U2[e+4>>2],b=U2[e+36>>2],t=U2[e+40>>2],e=U2[e+32>>2],X2[44+o>>2]=0,U2[40+o>>2]=i*t,U2[36+o>>2]=a*b,U2[32+o>>2]=n*e,A=X2[A+4>>2],N2[X2[X2[A>>2]+8>>2]](A,o,r,f),K2=48+o|0},J0,S0,function(A,e){var r,f,i;A|=0,e|=0,P2(0),K2=i=K2-96|0,f=X2[e+4>>2],r=X2[A+100>>2],X2[r+4>>2]=X2[e>>2],X2[r+8>>2]=f,f=X2[(e=e+8|0)+4>>2],X2[(r=r+12|0)>>2]=X2[e>>2],X2[4+r>>2]=f,S2[A+96|0]=1,J2[25296]||(X2[6329]=0,X2[6330]=0,X2[6328]=1065353216,X2[6331]=0,X2[6332]=0,X2[6334]=0,X2[6335]=0,X2[6333]=1065353216,X2[6336]=0,X2[6337]=0,X2[6341]=0,X2[6342]=0,X2[6340]=-1082130432,X2[6338]=1065353216,X2[6339]=0,X2[6343]=0,X2[6344]=0,X2[6346]=0,X2[6347]=0,X2[6345]=-1082130432,X2[6348]=0,X2[6349]=0,X2[6350]=-1082130432,X2[6351]=0,S2[25296]=1),e=v2(i,0,96),N2[X2[X2[A>>2]+76>>2]](A,25312,e,6),r=U2[A+52>>2],U2[A+80>>2]=U2[e>>2]+r,U2[A+64>>2]=U2[e+48>>2]-r,U2[A+84>>2]=r+U2[e+20>>2],U2[A+68>>2]=U2[e+68>>2]-r,U2[A+88>>2]=r+U2[e+40>>2],U2[A+72>>2]=U2[e+88>>2]-r,K2=e+96|0},function(A){return X2[(A|=0)+100>>2]+4|0},function(A){return 14117},G0,function(A,e,r){A|=0,e|=0,r|=0;var f,i=P2(0),a=P2(0),n=P2(0),b=P2(0);K2=f=K2-80|0,a=U2[r>>2],n=U2[r+4>>2],b=U2[r+8>>2],i=(i=P2(P2(P2(a*a)+P2(n*n))+P2(b*b)))>2]),X2[(r=52+f|0)>>2]=0,X2[r+4>>2]=0,U2[76+f>>2]=i,U2[72+f>>2]=b,U2[68+f>>2]=n,X2[44+f>>2]=0,X2[48+f>>2]=0,X2[40+f>>2]=14064,U2[64+f>>2]=a,X2[60+f>>2]=-581039253,X2[32+f>>2]=1566444395,X2[36+f>>2]=0,X2[24+f>>2]=1566444395,X2[28+f>>2]=1566444395,e=X2[e+100>>2],X2[16+f>>2]=-581039253,X2[20+f>>2]=0,X2[8+f>>2]=-581039253,X2[12+f>>2]=-581039253,N2[X2[X2[e>>2]+8>>2]](e,40+f|0,8+f|0,24+f|0),i=X2[r+4>>2],X2[(e=A+8|0)>>2]=X2[r>>2],X2[e+4>>2]=i,e=X2[48+f>>2],X2[A>>2]=X2[44+f>>2],X2[A+4>>2]=e,K2=80+f|0},function(A,e,r,f){A|=0,e|=0,r|=0;var i,a,n,b,t=0,o=0,c=0;if(K2=b=K2-80|0,1<=(0|(f|=0))){for(c=r+12|0,o=f;;)if(X2[c>>2]=-581039253,c=c+16|0,!(o=o-1|0))break;for(o=40+b|4,c=b+64|0;;)if(X2[o>>2]=0,X2[o+4>>2]=0,X2[(t=i=o+8|0)>>2]=0,X2[4+t>>2]=0,t=X2[e+4>>2],X2[c>>2]=X2[e>>2],X2[c+4>>2]=t,n=X2[4+(a=e+8|0)>>2],X2[(t=c+8|0)>>2]=X2[a>>2],X2[4+t>>2]=n,X2[40+b>>2]=14064,X2[60+b>>2]=-581039253,X2[32+b>>2]=1566444395,X2[36+b>>2]=0,X2[24+b>>2]=1566444395,X2[28+b>>2]=1566444395,t=X2[A+100>>2],X2[16+b>>2]=-581039253,X2[20+b>>2]=0,X2[8+b>>2]=-581039253,X2[12+b>>2]=-581039253,N2[X2[X2[t>>2]+8>>2]](t,40+b|0,8+b|0,24+b|0),a=X2[4+i>>2],X2[(t=r+8|0)>>2]=X2[i>>2],X2[4+t>>2]=a,i=X2[o+4>>2],X2[r>>2]=X2[o>>2],X2[r+4>>2]=i,e=e+16|0,r=r+16|0,!(f=f-1|0))break}K2=80+b|0},V0,V0,C1,f,V0,C1,h1,A,function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n,b=P2(0),t=P2(0),o=0,c=(P2(0),P2(0),P2(0),0);r=A+4|0,t=U2[A+20>>2],i=U2[A+24>>2],a=U2[A+28>>2],n=U2[A+32>>2],t<(b=P2(P2(P2(i*U2[e>>2])+P2(a*U2[e+4>>2]))+P2(n*U2[e+8>>2])))&&(U2[A+20>>2]=b,f=X2[e+4>>2],X2[r>>2]=X2[e>>2],X2[r+4>>2]=f,c=X2[(o=e+8|0)+4>>2],X2[(f=r+8|0)>>2]=X2[o>>2],X2[f+4>>2]=c,t=b),t<(b=P2(P2(P2(i*U2[e+16>>2])+P2(a*U2[e+20>>2]))+P2(n*U2[e+24>>2])))?(U2[A+20>>2]=b,o=X2[(f=e+16|0)+4>>2],X2[r>>2]=X2[f>>2],X2[r+4>>2]=o,c=X2[(f=f+8|0)+4>>2],X2[(o=r+8|0)>>2]=X2[f>>2],X2[o+4>>2]=c):b=t,b<(t=P2(P2(P2(i*U2[e+32>>2])+P2(a*U2[e+36>>2]))+P2(n*U2[e+40>>2])))&&(U2[A+20>>2]=t,e=X2[(A=e+32|0)+4>>2],X2[r>>2]=X2[A>>2],X2[r+4>>2]=e,e=r+8|0,r=X2[(A=A+8|0)+4>>2],X2[e>>2]=X2[A>>2],X2[e+4>>2]=r)},e,z0,F1,Q1,w1,G1,function(A){return 14248},C1,J0,function(A,e,r,f){S0(A|=0,e|=0,r|=0,f|=0)},function(A,e){var r,f,i,a;A|=0,e|=0,P2(0),P2(0),P2(0),K2=a=K2-96|0,S2[A+96|0]=1,r=U2[e>>2],f=U2[e+4>>2],i=U2[e+8>>2],X2[A+32>>2]=0,U2[A+28>>2]=j2(i),U2[A+24>>2]=j2(f),U2[A+20>>2]=j2(r),J2[25296]||(X2[6329]=0,X2[6330]=0,X2[6328]=1065353216,X2[6331]=0,X2[6332]=0,X2[6334]=0,X2[6335]=0,X2[6333]=1065353216,X2[6336]=0,X2[6337]=0,X2[6341]=0,X2[6342]=0,X2[6340]=-1082130432,X2[6338]=1065353216,X2[6339]=0,X2[6343]=0,X2[6344]=0,X2[6346]=0,X2[6347]=0,X2[6345]=-1082130432,X2[6348]=0,X2[6349]=0,X2[6350]=-1082130432,X2[6351]=0,S2[25296]=1),e=v2(a,0,96),N2[X2[X2[A>>2]+76>>2]](A,25312,e,6),r=U2[A+52>>2],U2[A+80>>2]=r+U2[e>>2],U2[A+64>>2]=U2[e+48>>2]-r,U2[A+84>>2]=r+U2[e+20>>2],U2[A+68>>2]=U2[e+68>>2]-r,U2[A+88>>2]=r+U2[e+40>>2],U2[A+72>>2]=U2[e+88>>2]-r,K2=e+96|0},function(A){return 14432},function(A){return X2[(A|=0)+100>>2]},function(A){return(A=X2[(A|=0)+100>>2]-2|0)>>>0<=2?X2[14420+(A<<2)>>2]:0},function(A,e,r,f){e|=0,r|=0,f|=0;var i=0,a=0;A:{e:{r:{f:{i:{a:switch(X2[(A|=0)+100>>2]-2|0){case 1:n:switch(0|e){case 1:break r;case 0:break f;case 2:break n;default:break i;}break e;case 0:break f;case 2:break a;default:break i;}a:switch(0|e){case 3:e=X2[A+108>>2],X2[r>>2]=X2[A+104>>2],X2[r+4>>2]=e,e=r+8|0,i=X2[(r=A+112|0)+4>>2],X2[e>>2]=X2[r>>2],X2[e+4>>2]=i;break A;case 4:a=X2[(i=A+128|0)+4>>2],X2[(e=r+8|0)>>2]=X2[i>>2],X2[e+4>>2]=a,i=X2[(e=A+120|0)+4>>2],X2[r>>2]=X2[e>>2],X2[r+4>>2]=i;break A;case 2:break e;case 1:break r;case 0:break f;case 5:break a;default:break i;}a=X2[(i=A+144|0)+4>>2],X2[(e=r+8|0)>>2]=X2[i>>2],X2[e+4>>2]=a,i=X2[(e=A+136|0)+4>>2],X2[r>>2]=X2[e>>2],X2[r+4>>2]=i,i=X2[(r=A+160|0)+4>>2],X2[(e=f+8|0)>>2]=X2[r>>2],X2[e+4>>2]=i,e=X2[(A=A+152|0)+4>>2],X2[f>>2]=X2[A>>2],X2[f+4>>2]=e}return}return e=X2[A+108>>2],X2[r>>2]=X2[A+104>>2],X2[r+4>>2]=e,e=r+8|0,i=X2[(r=A+112|0)+4>>2],X2[e>>2]=X2[r>>2],X2[e+4>>2]=i,i=X2[(r=A+128|0)+4>>2],X2[(e=f+8|0)>>2]=X2[r>>2],X2[e+4>>2]=i,e=X2[(A=A+120|0)+4>>2],X2[f>>2]=X2[A>>2],void(X2[f+4>>2]=e)}return a=X2[(i=A+128|0)+4>>2],X2[(e=r+8|0)>>2]=X2[i>>2],X2[e+4>>2]=a,i=X2[(e=A+120|0)+4>>2],X2[r>>2]=X2[e>>2],X2[r+4>>2]=i,i=X2[(r=A+144|0)+4>>2],X2[(e=f+8|0)>>2]=X2[r>>2],X2[e+4>>2]=i,e=X2[(A=A+136|0)+4>>2],X2[f>>2]=X2[A>>2],void(X2[f+4>>2]=e)}return a=X2[(i=A+144|0)+4>>2],X2[(e=r+8|0)>>2]=X2[i>>2],X2[e+4>>2]=a,i=X2[(e=A+136|0)+4>>2],X2[r>>2]=X2[e>>2],X2[r+4>>2]=i,i=X2[(r=A+112|0)+4>>2],X2[(e=f+8|0)>>2]=X2[r>>2],X2[e+4>>2]=i,e=X2[A+108>>2],X2[f>>2]=X2[A+104>>2],void(X2[f+4>>2]=e)}i=X2[(r=A+160|0)+4>>2],X2[(e=f+8|0)>>2]=X2[r>>2],X2[e+4>>2]=i,e=X2[(A=A+152|0)+4>>2],X2[f>>2]=X2[A>>2],X2[f+4>>2]=e},function(A,e,r){var f,i=X2[(e=(A=((e|=0)<<4)+(A|=0)|0)+112|0)+4>>2];X2[(f=(r|=0)+8|0)>>2]=X2[e>>2],X2[4+f>>2]=i,e=X2[(A=A+104|0)+4>>2],X2[r>>2]=X2[A>>2],X2[r+4>>2]=e},function(A){return 0|(4==(0|(A=X2[(A|=0)+100>>2]))?4:(3==(0|A))<<1)},C1,h1,function(A,e){return 0},function(A){return X2[(A|=0)>>2]=14476,0|A},function(A){X2[(A|=0)>>2]=14476,X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var i=U2[e+56>>2],a=U2[e+36>>2],n=U2[e+40>>2],b=U2[e+52>>2],t=U2[e+20>>2],o=U2[A+120>>2],c=U2[A+28>>2],k=U2[A+44>>2],u=U2[e+24>>2],s=U2[A+124>>2],l=U2[A+32>>2],B=U2[A+48>>2],v=U2[e+32>>2],d=U2[e+48>>2],Z=U2[e>>2],_=U2[e+4>>2],g=U2[e+8>>2],e=U2[e+16>>2],E=U2[A+116>>2],Q=U2[A+24>>2],w=U2[A+40>>2],G=P2(N2[X2[X2[A>>2]+48>>2]](A)),C=P2(N2[X2[X2[A>>2]+48>>2]](A)),A=P2(N2[X2[X2[A>>2]+48>>2]](A));X2[r+12>>2]=0,E=P2(P2(E*P2(w-Q))*P2(.5)),o=P2(P2(o*P2(k-c))*P2(.5)),c=P2(P2(E*P2(j2(e)))+P2(o*P2(j2(t)))),t=P2(P2(s*P2(B-l))*P2(.5)),c=P2(C+P2(c+P2(t*P2(j2(u))))),U2[r+4>>2]=b-c,k=P2(G+P2(P2(P2(E*P2(j2(Z)))+P2(o*P2(j2(_))))+P2(t*P2(j2(g))))),U2[r>>2]=d-k,E=P2(A+P2(P2(P2(E*P2(j2(v)))+P2(o*P2(j2(a))))+P2(t*P2(j2(n))))),U2[r+8>>2]=i-E,X2[f+12>>2]=0,U2[f+8>>2]=i+E,U2[f+4>>2]=b+c,U2[f>>2]=d+k},function(A,e){var r=X2[(e|=0)+4>>2];X2[(A|=0)+116>>2]=X2[e>>2],X2[A+120>>2]=r,r=X2[(e=e+8|0)+4>>2],X2[(A=A+124|0)>>2]=X2[e>>2],X2[A+4>>2]=r},function(A){return(A|=0)+116|0},q0,function(A){return 14560},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n,b,t,o=P2(0),c=P2(0),k=P2(0),u=(P2(0),P2(0),0),s=0,l=0,B=0,v=0,d=0,Z=0;K2=t=K2-48|0,c=U2[A+48>>2],k=U2[A+32>>2],i=P2(P2(1)/U2[A+124>>2]),a=U2[A- -64>>2],n=((o=c<(o=(o=P2(P2(i*U2[f+8>>2])+a))>2])+a))>2],k=U2[A+28>>2],i=P2(P2(1)/U2[A+120>>2]),a=U2[A+60>>2],n=((o=c<(o=(o=P2(P2(i*U2[f+4>>2])+a))>2])+a))>2],k=U2[A+24>>2],i=P2(P2(1)/U2[A+116>>2]),a=U2[A+56>>2],n=((o=c<(o=(o=P2(P2(i*U2[f>>2])+a))>2])+a))>2]-1|0,B=X2[A+72>>2]-1|0;A:{e:switch(X2[A+112>>2]){case 0:l=(0|v)<(0|l)?v:l,s=0<(0|b)?b:0,B=(0|d)<(0|B)?d:B,Z=0<(0|u)?u:0;break A;case 1:l=(0|v)<(0|l)?v:l,s=0<(0|b)?b:0,B=(0|f)<(0|B)?f:B,Z=0<(0|r)?r:0;break A;case 2:break e;default:break A;}l=(0|d)<(0|l)?d:l,s=0<(0|u)?u:0,B=(0|f)<(0|B)?f:B,Z=0<(0|r)?r:0}if((0|s)<(0|l))for(;;){if(v=l,(0|B)<=(0|Z))r=s+1|0;else{for(d=1&s,i=P2(0|(u=s+1|0)),a=P2(0|s),r=Z;;){A:{e:{if(!J2[A+108|0]&&(r+s&1||!J2[A+109|0])){if(d)break e;if(!J2[A+110|0])break e}o=P2(N2[X2[X2[A>>2]+68>>2]](A,r,s));r:{f:switch(X2[A+112>>2]){default:c=U2[4+t>>2],k=U2[t>>2],o=U2[8+t>>2];break r;case 0:X2[12+t>>2]=0,k=P2(o-U2[A+56>>2]),c=P2(P2(0|r)-P2(U2[A+88>>2]*P2(.5))),o=P2(a-P2(U2[A+92>>2]*P2(.5)));break r;case 1:X2[12+t>>2]=0,c=P2(o-U2[A+60>>2]),k=P2(P2(0|r)-P2(U2[A+88>>2]*P2(.5))),o=P2(a-P2(U2[A+92>>2]*P2(.5)));break r;case 2:break f;}X2[12+t>>2]=0,c=P2(a-P2(U2[A+92>>2]*P2(.5))),k=P2(P2(0|r)-P2(U2[A+88>>2]*P2(.5))),o=P2(o-U2[A+64>>2])}U2[t>>2]=k*U2[A+116>>2],U2[4+t>>2]=c*U2[A+120>>2],U2[8+t>>2]=o*U2[A+124>>2],o=P2(N2[X2[X2[A>>2]+68>>2]](A,r,u));r:{f:switch(X2[A+112>>2]){default:c=U2[20+t>>2],k=U2[16+t>>2],o=U2[24+t>>2];break r;case 0:X2[28+t>>2]=0,k=P2(o-U2[A+56>>2]),c=P2(P2(0|r)-P2(U2[A+88>>2]*P2(.5))),o=P2(i-P2(U2[A+92>>2]*P2(.5)));break r;case 1:X2[28+t>>2]=0,c=P2(o-U2[A+60>>2]),k=P2(P2(0|r)-P2(U2[A+88>>2]*P2(.5))),o=P2(i-P2(U2[A+92>>2]*P2(.5)));break r;case 2:break f;}X2[28+t>>2]=0,c=P2(i-P2(U2[A+92>>2]*P2(.5))),k=P2(P2(0|r)-P2(U2[A+88>>2]*P2(.5))),o=P2(o-U2[A+64>>2])}U2[16+t>>2]=k*U2[A+116>>2],U2[20+t>>2]=c*U2[A+120>>2],U2[24+t>>2]=o*U2[A+124>>2],o=P2(N2[X2[X2[A>>2]+68>>2]](A,f=r+1|0,u));r:{f:switch(X2[A+112>>2]){default:c=U2[36+t>>2],k=U2[32+t>>2],o=U2[40+t>>2];break r;case 0:X2[44+t>>2]=0,k=P2(o-U2[A+56>>2]),c=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(i-P2(U2[A+92>>2]*P2(.5)));break r;case 1:X2[44+t>>2]=0,c=P2(o-U2[A+60>>2]),k=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(i-P2(U2[A+92>>2]*P2(.5)));break r;case 2:break f;}X2[44+t>>2]=0,c=P2(i-P2(U2[A+92>>2]*P2(.5))),k=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(o-U2[A+64>>2])}U2[32+t>>2]=k*U2[A+116>>2],U2[36+t>>2]=c*U2[A+120>>2],U2[40+t>>2]=o*U2[A+124>>2],N2[X2[X2[e>>2]+8>>2]](e,t,r,s),o=P2(N2[X2[X2[A>>2]+68>>2]](A,f,u));r:{f:switch(X2[A+112>>2]){default:c=U2[20+t>>2],k=U2[16+t>>2],o=U2[24+t>>2];break r;case 0:X2[28+t>>2]=0,k=P2(o-U2[A+56>>2]),c=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(i-P2(U2[A+92>>2]*P2(.5)));break r;case 1:X2[28+t>>2]=0,c=P2(o-U2[A+60>>2]),k=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(i-P2(U2[A+92>>2]*P2(.5)));break r;case 2:break f;}X2[28+t>>2]=0,c=P2(i-P2(U2[A+92>>2]*P2(.5))),k=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(o-U2[A+64>>2])}U2[16+t>>2]=k*U2[A+116>>2],U2[20+t>>2]=c*U2[A+120>>2],U2[24+t>>2]=o*U2[A+124>>2],o=P2(N2[X2[X2[A>>2]+68>>2]](A,f,s));r:{f:switch(X2[A+112>>2]){default:c=U2[36+t>>2],k=U2[32+t>>2],o=U2[40+t>>2];break r;case 0:X2[44+t>>2]=0,k=P2(o-U2[A+56>>2]),c=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(a-P2(U2[A+92>>2]*P2(.5)));break r;case 1:X2[44+t>>2]=0,c=P2(o-U2[A+60>>2]),k=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(a-P2(U2[A+92>>2]*P2(.5)));break r;case 2:break f;}X2[44+t>>2]=0,c=P2(a-P2(U2[A+92>>2]*P2(.5))),k=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(o-U2[A+64>>2])}break A}o=P2(N2[X2[X2[A>>2]+68>>2]](A,r,s));e:{r:switch(X2[A+112>>2]){default:c=U2[4+t>>2],k=U2[t>>2],o=U2[8+t>>2];break e;case 0:X2[12+t>>2]=0,k=P2(o-U2[A+56>>2]),c=P2(P2(0|r)-P2(U2[A+88>>2]*P2(.5))),o=P2(a-P2(U2[A+92>>2]*P2(.5)));break e;case 1:X2[12+t>>2]=0,c=P2(o-U2[A+60>>2]),k=P2(P2(0|r)-P2(U2[A+88>>2]*P2(.5))),o=P2(a-P2(U2[A+92>>2]*P2(.5)));break e;case 2:break r;}X2[12+t>>2]=0,c=P2(a-P2(U2[A+92>>2]*P2(.5))),k=P2(P2(0|r)-P2(U2[A+88>>2]*P2(.5))),o=P2(o-U2[A+64>>2])}U2[t>>2]=k*U2[A+116>>2],U2[4+t>>2]=c*U2[A+120>>2],U2[8+t>>2]=o*U2[A+124>>2],o=P2(N2[X2[X2[A>>2]+68>>2]](A,r,u));e:{r:switch(X2[A+112>>2]){default:c=U2[20+t>>2],k=U2[16+t>>2],o=U2[24+t>>2];break e;case 0:X2[28+t>>2]=0,k=P2(o-U2[A+56>>2]),c=P2(P2(0|r)-P2(U2[A+88>>2]*P2(.5))),o=P2(i-P2(U2[A+92>>2]*P2(.5)));break e;case 1:X2[28+t>>2]=0,c=P2(o-U2[A+60>>2]),k=P2(P2(0|r)-P2(U2[A+88>>2]*P2(.5))),o=P2(i-P2(U2[A+92>>2]*P2(.5)));break e;case 2:break r;}X2[28+t>>2]=0,c=P2(i-P2(U2[A+92>>2]*P2(.5))),k=P2(P2(0|r)-P2(U2[A+88>>2]*P2(.5))),o=P2(o-U2[A+64>>2])}U2[16+t>>2]=k*U2[A+116>>2],U2[20+t>>2]=c*U2[A+120>>2],U2[24+t>>2]=o*U2[A+124>>2],o=P2(N2[X2[X2[A>>2]+68>>2]](A,f=r+1|0,s));e:{r:switch(X2[A+112>>2]){default:c=U2[36+t>>2],k=U2[32+t>>2],o=U2[40+t>>2];break e;case 0:X2[44+t>>2]=0,k=P2(o-U2[A+56>>2]),c=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(a-P2(U2[A+92>>2]*P2(.5)));break e;case 1:X2[44+t>>2]=0,c=P2(o-U2[A+60>>2]),k=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(a-P2(U2[A+92>>2]*P2(.5)));break e;case 2:break r;}X2[44+t>>2]=0,c=P2(a-P2(U2[A+92>>2]*P2(.5))),k=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(o-U2[A+64>>2])}U2[32+t>>2]=k*U2[A+116>>2],U2[36+t>>2]=c*U2[A+120>>2],U2[40+t>>2]=o*U2[A+124>>2],N2[X2[X2[e>>2]+8>>2]](e,t,r,s),o=P2(N2[X2[X2[A>>2]+68>>2]](A,f,s));e:{r:switch(X2[A+112>>2]){default:c=U2[4+t>>2],k=U2[t>>2],o=U2[8+t>>2];break e;case 0:X2[12+t>>2]=0,k=P2(o-U2[A+56>>2]),c=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(a-P2(U2[A+92>>2]*P2(.5)));break e;case 1:X2[12+t>>2]=0,c=P2(o-U2[A+60>>2]),k=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(a-P2(U2[A+92>>2]*P2(.5)));break e;case 2:break r;}X2[12+t>>2]=0,c=P2(a-P2(U2[A+92>>2]*P2(.5))),k=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(o-U2[A+64>>2])}U2[t>>2]=k*U2[A+116>>2],U2[4+t>>2]=c*U2[A+120>>2],U2[8+t>>2]=o*U2[A+124>>2],o=P2(N2[X2[X2[A>>2]+68>>2]](A,f,u));e:{r:switch(X2[A+112>>2]){default:c=U2[36+t>>2],k=U2[32+t>>2],o=U2[40+t>>2];break e;case 0:X2[44+t>>2]=0,k=P2(o-U2[A+56>>2]),c=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(i-P2(U2[A+92>>2]*P2(.5)));break e;case 1:X2[44+t>>2]=0,c=P2(o-U2[A+60>>2]),k=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(i-P2(U2[A+92>>2]*P2(.5)));break e;case 2:break r;}X2[44+t>>2]=0,c=P2(i-P2(U2[A+92>>2]*P2(.5))),k=P2(P2(0|f)-P2(U2[A+88>>2]*P2(.5))),o=P2(o-U2[A+64>>2])}}if(U2[32+t>>2]=k*U2[A+116>>2],U2[36+t>>2]=c*U2[A+120>>2],U2[40+t>>2]=o*U2[A+124>>2],N2[X2[X2[e>>2]+8>>2]](e,t,r,s),(0|B)==(0|(r=f)))break}r=u}if((0|v)==(0|(s=r)))break}K2=48+t|0},function(A,e,r){A|=0,e|=0,r|=0;var f=P2(0);A:switch(X2[A+104>>2]){case 0:return P2(U2[X2[A+100>>2]+(H2(X2[A+72>>2],r)+e<<2)>>2]);case 5:return P2(P2(U2[A+96>>2]*P2(J2[X2[A+100>>2]+(H2(X2[A+72>>2],r)+e|0)|0])));case 3:f=P2(U2[A+96>>2]*P2($[X2[A+100>>2]+(H2(X2[A+72>>2],r)+e<<1)>>1]));break;default:break A;}return P2(f)},z0,F1,function(A,e,r){A|=0,e=P2(e),r|=0,P2(0),P2(0);var f=P2(N2[X2[X2[A>>2]+48>>2]](A)),A=P2(N2[X2[X2[A>>2]+48>>2]](A));X2[r+12>>2]=0,e=P2(A*P2(f*P2(e*P2(.4000000059604645)))),U2[r+8>>2]=e,U2[r+4>>2]=e,U2[r>>2]=e},function(A){return 14600},y0,function(A){return P2(P2(U2[(A|=0)+36>>2]*U2[A+20>>2]))},function(A,e,r){var f,i,a,n,b,t;A|=0,e|=0,r|=0,P2(0),P2(0),P2(0),P2(0),P2(0),K2=t=K2-16|0,N2[X2[X2[e>>2]+68>>2]](t,e,r),i=X2[4+(n=8+t|0)>>2],X2[(f=A+8|0)>>2]=X2[n>>2],X2[4+f>>2]=i,i=X2[4+t>>2],X2[A>>2]=X2[t>>2],X2[A+4>>2]=i,n=U2[r+4>>2],i=U2[r>>2],r=U2[r+8>>2],a=P2(N2[X2[X2[e>>2]+48>>2]](e)),b=i=(e=P2(P2(P2(i*i)+P2(n*n))+P2(r*r))>2]=U2[A>>2]+P2(a*P2(b*i)),U2[A+4>>2]=U2[A+4>>2]+P2(a*P2(n*i)),U2[f>>2]=U2[f>>2]+P2(a*P2(r*i)),K2=16+t|0},function(A,e,r){X2[(A|=0)>>2]=0,X2[A+4>>2]=0,X2[(A=A+8|0)>>2]=0,X2[A+4>>2]=0},function(A,e,r,f){r|=0,1<=(0|(f|=0))&&v2(r,0,f<<4)},function(A){n1(A|=0),X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},e,A,I1,e,A,V1,e,A,f,f,function(A,e,r,f){var i,a;A|=0,e|=0,r|=0,f=P2(f),U2[A+36>>2]>f&&(S2[A+40|0]=1,i=X2[e+4>>2],X2[A+4>>2]=X2[e>>2],X2[A+8>>2]=i,a=X2[(e=e+8|0)+4>>2],X2[(i=A+12|0)>>2]=X2[e>>2],X2[4+i>>2]=a,e=X2[r+4>>2],X2[A+20>>2]=X2[r>>2],X2[A+24>>2]=e,i=X2[(r=r+8|0)+4>>2],X2[(e=A+28|0)>>2]=X2[r>>2],X2[e+4>>2]=i,U2[A+36>>2]=f)},A,function(A,e,r){e|=0,X2[(A|=0)+24>>2]=r|=0,X2[A+16>>2]=e},function(A,e,r){e|=0,X2[(A|=0)+28>>2]=r|=0,X2[A+20>>2]=e},function(A,e,r,f){A|=0,e|=0,r|=0,f=P2(f);var i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g=0,E=0,Q=P2(0),w=P2(0),G=P2(0),C=P2(0),h=P2(0),F=P2(0),Y=P2(0),m=0,N=0,R=0,D=(P2(0),P2(0)),T=P2(0);P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2=_=K2-208|0,N=X2[A+4>>2],a=U2[N+848>>2];A:if(!(a>2],Q=P2(P2(U2[e+8>>2]*f)+h),n=U2[r+4>>2],C=P2(P2(U2[e+4>>2]*f)+n),b=U2[r>>2],F=P2(P2(U2[e>>2]*f)+b),i=X2[A+8>>2],Y=((R=(0|(g=X2[i+8>>2]))==(0|(E=X2[N+836>>2])))?(Y=P2(F-U2[E+52>>2]),w=P2(C-U2[E+56>>2]),G=P2(Q-U2[E+60>>2]),D=P2(P2(P2(Y*U2[E+12>>2])+P2(w*U2[E+28>>2]))+P2(G*U2[E+44>>2])),T=P2(P2(P2(Y*U2[E+8>>2])+P2(w*U2[E+24>>2]))+P2(G*U2[E+40>>2])),m=X2[A+12>>2],g=X2[m+8>>2]):(m=X2[A+12>>2],E=X2[m+8>>2],Y=P2(F-U2[E+52>>2]),w=P2(C-U2[E+56>>2]),G=P2(Q-U2[E+60>>2]),D=P2(P2(P2(Y*U2[E+12>>2])+P2(w*U2[E+28>>2]))+P2(G*U2[E+44>>2])),T=P2(P2(P2(Y*U2[E+8>>2])+P2(w*U2[E+24>>2]))+P2(G*U2[E+40>>2]))),P2(P2(P2(Y*U2[E+4>>2])+P2(w*U2[E+20>>2]))+P2(G*U2[E+36>>2]))),t=U2[g+20>>2],o=U2[g+36>>2],c=U2[g+40>>2],k=U2[g+8>>2],u=U2[g+24>>2],s=U2[g+44>>2],l=U2[g+60>>2],w=U2[g+12>>2],G=U2[g+52>>2],B=U2[g+28>>2],v=U2[g+56>>2],d=U2[g+4>>2],X2[28+_>>2]=0,X2[(g=92+_|0)>>2]=0,X2[g+4>>2]=0,X2[(g=124+_|0)>>2]=0,X2[g+4>>2]=0,X2[(g=132+_|0)>>2]=0,X2[g+4>>2]=0,X2[(g=140+_|0)>>2]=0,X2[g+4>>2]=0,X2[(g=148+_|0)>>2]=0,X2[g+4>>2]=0,X2[(g=156+_|0)>>2]=0,X2[g+4>>2]=0,X2[164+_>>2]=0,Z=X2[(E=e+8|0)+4>>2],X2[(g=72+_|0)>>2]=X2[E>>2],X2[g+4>>2]=Z,Z=w,w=P2(b-G),G=P2(n-v),h=P2(h-l),U2[24+_>>2]=P2(P2(Z*w)+P2(B*G))+P2(s*h),U2[20+_>>2]=P2(P2(w*k)+P2(G*u))+P2(h*c),X2[12+_>>2]=0,U2[8+_>>2]=D,U2[4+_>>2]=T,U2[_>>2]=Y,X2[84+_>>2]=0,X2[88+_>>2]=0,U2[80+_>>2]=f,X2[116+_>>2]=0,X2[120+_>>2]=0,g=X2[e+4>>2],X2[64+_>>2]=X2[e>>2],X2[68+_>>2]=g,U2[16+_>>2]=P2(P2(w*d)+P2(G*t))+P2(h*o),X2[60+_>>2]=0,U2[56+_>>2]=Q,U2[52+_>>2]=C,E=X2[(g=r+8|0)+4>>2],X2[(e=40+_|0)>>2]=X2[g>>2],X2[e+4>>2]=E,U2[48+_>>2]=F,e=X2[r+4>>2],X2[32+_>>2]=X2[r>>2],X2[36+_>>2]=e,A=R?(E=A+28|0,e=A+24|0,r=A+20|0,R=A+16|0,g=(A=X2[i>>2])||i,(A=X2[m>>2])||m):(E=A+24|0,e=A+28|0,r=A+16|0,R=A+20|0,g=(A=X2[m>>2])||m,(A=X2[i>>2])||i),g=X2[g+4>>2],A=X2[A+4>>2],X2[204+_>>2]=A,E=X2[E>>2],X2[112+_>>2]=E,e=X2[e>>2],X2[108+_>>2]=e,X2[104+_>>2]=X2[r>>2],X2[100+_>>2]=X2[R>>2],X2[200+_>>2]=g,31==X2[g+4>>2]&&(g=X2[64+(X2[g+32>>2]+H2(e,80)|0)>>2],X2[200+_>>2]=g),31==X2[A+4>>2]&&(A=X2[64+(X2[A+32>>2]+H2(E,80)|0)>>2],X2[204+_>>2]=A),r=_,f=(e=X2[g+16>>2])&&(A=X2[A+16>>2])?(U2[96+_>>2]=U2[e>>2]*U2[A>>2],f=U2[e+4>>2],Q=U2[A+4>>2],U2[84+_>>2]=m2(P2(z2(P2(f*Q),P2(-10))),P2(10)),U2[88+_>>2]=m2(P2(z2(P2(P2(Q*U2[e+8>>2])+P2(f*U2[A+8>>2])),P2(-10))),P2(10)),P2(m2(P2(z2(P2(P2(Q*U2[e+12>>2])+P2(f*U2[A+12>>2])),P2(-10))),P2(10)))):(A=X2[i+8>>2],e=X2[m+8>>2],U2[96+_>>2]=U2[A+232>>2]*U2[e+232>>2],f=U2[A+228>>2],Q=U2[e+228>>2],U2[84+_>>2]=m2(P2(z2(P2(f*Q),P2(-10))),P2(10)),U2[88+_>>2]=m2(P2(z2(P2(P2(Q*U2[A+236>>2])+P2(f*U2[e+236>>2])),P2(-10))),P2(10)),P2(m2(P2(z2(P2(P2(Q*U2[A+240>>2])+P2(f*U2[e+240>>2])),P2(-10))),P2(10)))),U2[r+92>>2]=f,f=U2[72+_>>2],P2(j2(f))>P2(.7071067690849304)?(C=U2[68+_>>2],F=P2(P2(f*f)+P2(C*C)),Q=P2(P2(1)/P2(O2(F))),F=P2(F*Q),h=U2[64+_>>2],w=P2(Q*P2(-f)),G=P2(h*w),f=P2(C*Q),C=P2(f*P2(-h)),h=P2(0)):(F=U2[64+_>>2],C=U2[68+_>>2],w=P2(P2(F*F)+P2(C*C)),Q=P2(P2(1)/P2(O2(w))),G=P2(w*Q),h=P2(Q*P2(-C)),C=P2(f*h),w=P2(F*Q),F=P2(w*P2(-f)),f=P2(0)),U2[192+_>>2]=G,U2[188+_>>2]=C,U2[176+_>>2]=f,U2[172+_>>2]=w,U2[184+_>>2]=F,U2[168+_>>2]=h,!((0|(r=X2[N+844>>2]))<1)){for(g=N+12|0,f=P2(a*a),A=0,E=-1;;)if(Q=P2(U2[g-8>>2]-Y),w=P2(Q*Q),Q=P2(U2[g-4>>2]-T),w=P2(w+P2(Q*Q)),Q=P2(U2[g>>2]-D),f=(e=(Q=P2(w+P2(Q*Q)))>2],E=X2[(e=A+136|0)+4>>2],m=X2[e>>2],f=U2[(N=A+144|0)>>2],R=X2[(i=A+168|0)>>2],$2(A+4|0,_,208),X2[i>>2]=R,U2[N>>2]=f,X2[e>>2]=m,X2[e+4>>2]=E,X2[r>>2]=g;break A}}D1(N,_)}K2=208+_|0},e,A,function(A,e,r,f){var i;return A|=0,r|=0,f|=0,r=X2[(e|=0)>>2],r=0|N2[X2[X2[r>>2]+56>>2]](r,72),S2[r+60|0]=0,S2[r+52|0]=0,X2[r+36>>2]=0,X2[r+40>>2]=0,f=X2[A+12>>2],i=X2[A+16>>2],X2[r+4>>2]=X2[e>>2],S2[r+28|0]=1,X2[r+8>>2]=X2[A+8>>2],X2[r>>2]=15280,X2[r+24>>2]=0,S2[r+48|0]=1,X2[r+16>>2]=0,X2[r+20>>2]=0,X2[r+44>>2]=0,X2[r+64>>2]=f,X2[r+68>>2]=i,X2[r+56>>2]=X2[e+4>>2],0|r},function(A){var e,r=0;return X2[(A|=0)>>2]=15280,J2[A+52|0]&&(r=X2[A+56>>2])&&(e=X2[A+4>>2],N2[X2[X2[e>>2]+16>>2]](e,r)),(r=X2[A+44>>2])&&J2[A+48|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+44>>2]=0,S2[A+48|0]=1,X2[(r=A+36|0)>>2]=0,X2[r+4>>2]=0,(r=X2[A+24>>2])&&J2[A+28|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+24>>2]=0,S2[A+28|0]=1,X2[(r=A+16|0)>>2]=0,(X2[r+4>>2]=0)|A},function(A){var e,r=0;X2[(A|=0)>>2]=15280,J2[A+52|0]&&(r=X2[A+56>>2])&&(e=X2[A+4>>2],N2[X2[X2[e>>2]+16>>2]](e,r)),(r=X2[A+44>>2])&&J2[A+48|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+44>>2]=0,S2[A+48|0]=1,X2[(r=A+36|0)>>2]=0,X2[r+4>>2]=0,(r=X2[A+24>>2])&&J2[A+28|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),n(A)},function(A,e,r,f,i){A|=0,e|=0,r|=0,f|=0,i|=0;var x,y,V,p,M,S,X,J,U,H,P,j,z,O,K,L,q,$,A2,e2,r2,f2,i2,a2,n2,b2,a,n=0,b=P2(0),t=0,o=P2(0),c=P2(0),k=0,u=P2(0),s=0,l=0,B=0,v=0,d=P2(0),Z=0,_=P2(0),g=P2(0),E=P2(0),Q=P2(0),w=0,G=0,C=0,h=0,F=P2(0),Y=P2(0),m=P2(0),N=0,R=P2(0),D=P2(0),T=P2(0),W=P2(0),I=P2(0),t2=P2(0),o2=P2(0),c2=P2(0),k2=P2(0),u2=0,s2=P2(0),l2=P2(0),B2=(P2(0),0),v2=P2(0),d2=P2(0),Z2=P2(0),_2=P2(0),g2=P2(0),E2=P2(0),Q2=P2(0),w2=P2(0),G2=P2(0),C2=P2(0),h2=(P2(0),P2(0)),F2=P2(0),Y2=(P2(0),P2(0),P2(0));P2(0),P2(0),P2(0),K2=a=K2-976|0,(k=X2[A+56>>2])||(n=X2[A+4>>2],k=0|N2[X2[X2[n>>2]+12>>2]](n,X2[e+8>>2],X2[r+8>>2]),S2[A+52|0]=1,X2[A+56>>2]=k),X2[i+4>>2]=k,B=X2[r+4>>2];A:{e:{r:{f:switch(w=X2[e+4>>2],X2[w+4>>2]-8|0){case 0:break r;case 2:break f;default:break e;}f:switch(X2[B+4>>2]-8|0){case 2:if(A=X2[w+60>>2],b=U2[(f=w+36|0)+(A<<2)>>2],c=U2[f+((A+2|0)%3<<2)>>2],f=X2[B+60>>2],o=U2[k+848>>2],(b=p1(400+a|0,8+a|0,b,c,U2[(n=B+36|0)+(f<<2)>>2],U2[n+((f+2|0)%3<<2)>>2],A,f,X2[e+12>>2],X2[r+12>>2],o))>2]+16>>2]](i,400+a|0,8+a|0,b),A=X2[i+4>>2],!X2[A+844>>2])break A;if((0|(e=X2[A+836>>2]))!=(0|(r=X2[X2[i+8>>2]+8>>2]))){R2(A,X2[X2[i+12>>2]+8>>2]+4|0,r+4|0);break A}R2(A,e+4|0,X2[X2[i+12>>2]+8>>2]+4|0);break A;case 0:break f;default:break e;}if(A=X2[w+60>>2],o=U2[k+848>>2],(b=p1(400+a|0,8+a|0,U2[(f=w+36|0)+(A<<2)>>2],U2[f+((A+2|0)%3<<2)>>2],P2(0),P2(U2[B+36>>2]*U2[B+20>>2]),A,1,X2[e+12>>2],X2[r+12>>2],o))>2]+16>>2]](i,400+a|0,8+a|0,b),A=X2[i+4>>2],!X2[A+844>>2])break A;if((0|(e=X2[A+836>>2]))!=(0|(r=X2[X2[i+8>>2]+8>>2]))){R2(A,X2[X2[i+12>>2]+8>>2]+4|0,r+4|0);break A}R2(A,e+4|0,X2[X2[i+12>>2]+8>>2]+4|0);break A}if(10==X2[B+4>>2]){if(f=B+36|0,A=X2[B+60>>2],o=U2[k+848>>2],(b=p1(400+a|0,8+a|0,P2(0),P2(U2[w+36>>2]*U2[w+20>>2]),U2[f+(A<<2)>>2],U2[f+((A+2|0)%3<<2)>>2],1,A,X2[e+12>>2],X2[r+12>>2],o))>2]+16>>2]](i,400+a|0,8+a|0,b),A=X2[i+4>>2],!X2[A+844>>2])break A;if((0|(e=X2[A+836>>2]))!=(0|(r=X2[X2[i+8>>2]+8>>2]))){R2(A,X2[X2[i+12>>2]+8>>2]+4|0,r+4|0);break A}R2(A,e+4|0,X2[X2[i+12>>2]+8>>2]+4|0);break A}}X2[888+a>>2]=1566444395,S2[732+a|0]=0,X2[708+a>>2]=953267991,X2[(n=332+a|0)>>2]=0,X2[n+4>>2]=0,X2[320+a>>2]=14952,X2[352+a>>2]=B,X2[348+a>>2]=w,X2[324+a>>2]=0,X2[328+a>>2]=1065353216,X2[340+a>>2]=X2[A+8>>2],X2[356+a>>2]=X2[w+4>>2],X2[360+a>>2]=X2[B+4>>2],X2[344+a>>2]=400+a,n2=a,b2=P2(N2[X2[X2[w>>2]+48>>2]](w)),U2[364+n2>>2]=b2,b=P2(N2[X2[X2[B>>2]+48>>2]](B)),X2[392+a>>2]=1,X2[396+a>>2]=1,X2[380+a>>2]=-1,S2[372+a|0]=0,U2[368+a>>2]=b,X2[352+a>>2]=B,X2[348+a>>2]=w,b=P2(P2(P2(P2(N2[X2[X2[w>>2]+48>>2]](w))+P2(N2[X2[X2[B>>2]+48>>2]](B)))+U2[X2[A+56>>2]+848>>2])+U2[i+32>>2]),U2[888+a>>2]=b*b,n=X2[e+12>>2],s=X2[(k=n+8|0)>>2],k=X2[k+4>>2],t=X2[n>>2],l=X2[n+4>>2],C=X2[(G=n+24|0)+4>>2],X2[(Z=784+a|0)>>2]=X2[G>>2],X2[Z+4>>2]=C,X2[(Z=768+a|0)>>2]=s,X2[Z+4>>2]=k,k=X2[n+16>>2],s=X2[n+20>>2],C=X2[(G=n+40|0)+4>>2],X2[(Z=800+a|0)>>2]=X2[G>>2],X2[Z+4>>2]=C,Z=X2[n+32>>2],G=X2[n+36>>2],u2=X2[(h=n+56|0)+4>>2],X2[(C=816+a|0)>>2]=X2[h>>2],X2[C+4>>2]=u2,X2[776+a>>2]=k,X2[780+a>>2]=s,X2[760+a>>2]=t,X2[764+a>>2]=l,X2[792+a>>2]=Z,X2[796+a>>2]=G,k=X2[n+52>>2],X2[808+a>>2]=X2[n+48>>2],X2[812+a>>2]=k,n=X2[r+12>>2],t=X2[(s=n+8|0)+4>>2],X2[(k=832+a|0)>>2]=X2[s>>2],X2[k+4>>2]=t,k=X2[n+4>>2],X2[824+a>>2]=X2[n>>2],X2[828+a>>2]=k,s=X2[n+20>>2],X2[(k=l=840+a|0)>>2]=X2[n+16>>2],X2[k+4>>2]=s,t=X2[(s=n+24|0)+4>>2],X2[(k=848+a|0)>>2]=X2[s>>2],X2[k+4>>2]=t,s=X2[n+36>>2],X2[(k=Z=856+a|0)>>2]=X2[n+32>>2],X2[k+4>>2]=s,t=X2[(s=n+40|0)+4>>2],X2[(k=864+a|0)>>2]=X2[s>>2],X2[k+4>>2]=t,s=X2[n+52>>2],X2[(k=G=872+a|0)>>2]=X2[n+48>>2],X2[k+4>>2]=s,s=X2[(n=n+56|0)+4>>2],X2[(k=880+a|0)>>2]=X2[n>>2],X2[k+4>>2]=s;e:{r:{f:{if(!(6<(0|(k=X2[w+4>>2])))&&!(6<(0|(n=X2[B+4>>2])))&&(X2[312+a>>2]=15388,b=P2(0),k&&(o=P2(N2[X2[X2[w>>2]+48>>2]](w)),n=X2[B+4>>2]),n&&(b=P2(N2[X2[X2[B>>2]+48>>2]](B))),S2[44+a|0]=0,U2[36+a>>2]=b,U2[32+a>>2]=o,X2[12+a>>2]=i,X2[8+a>>2]=15416,C=X2[w+60>>2])){if(h=X2[B+60>>2]){if(Y2=U2[X2[A+56>>2]+848>>2],J2[f+24|0]){if(X2[6366]=X2[6366]+1,c=U2[C+64>>2],t=X2[e+12>>2],b=U2[t+32>>2],d=U2[C+68>>2],o=U2[t+36>>2],E=U2[C+72>>2],u=U2[t+40>>2],_=U2[h+64>>2],l=X2[r+12>>2],F=U2[h+68>>2],g=U2[h+72>>2],E2=P2(P2(P2(P2(P2(c*b)+P2(d*o))+P2(E*u))+U2[t+56>>2])-P2(P2(P2(P2(_*U2[l+32>>2])+P2(F*U2[l+36>>2]))+P2(g*U2[l+40>>2]))+U2[l+56>>2])),Q=U2[t+16>>2],o2=U2[t+20>>2],c2=U2[t+24>>2],Q2=P2(P2(P2(P2(P2(c*Q)+P2(d*o2))+P2(E*c2))+U2[t+52>>2])-P2(P2(P2(P2(_*U2[l+16>>2])+P2(F*U2[l+20>>2]))+P2(g*U2[l+24>>2]))+U2[l+52>>2])),k2=U2[t+4>>2],Y=U2[t+8>>2],w2=P2(P2(P2(P2(P2(c*U2[t>>2])+P2(d*k2))+P2(E*Y))+U2[t+48>>2])-P2(P2(P2(P2(_*U2[l>>2])+P2(F*U2[l+4>>2]))+P2(g*U2[l+8>>2]))+U2[l+48>>2])),(0|(f=X2[C+28>>2]))<1){d=P2(34028234663852886e22);break f}for(f=f-1|0,d=P2(34028234663852886e22),G=28;;){if(n=X2[C+36>>2]+G|0,c=U2[n>>2],E=U2[n-8>>2],_=U2[n-4>>2],X2[908+a>>2]=0,b=P2(P2(P2(E*b)+P2(_*o))+P2(c*u)),U2[904+a>>2]=b,o=P2(P2(P2(E*Q)+P2(_*o2))+P2(c*c2)),U2[900+a>>2]=o,c=P2(P2(P2(E*U2[t>>2])+P2(_*k2))+P2(c*Y)),U2[896+a>>2]=c,P2(P2(P2(c*w2)+P2(o*Q2))+P2(b*E2))>2]=b,o=P2(-o),U2[900+a>>2]=o,c=P2(-c),U2[896+a>>2]=c),X2[6367]=X2[6367]+1,x1(t,l,w2,Q2,E2,c,o,b,C,h,d)){if(Z=0,X2[6368]=X2[6368]+1,Y0(C,t,896+a|0,972+a|0,968+a|0,248+a|0,944+a|0),Y0(h,l,896+a|0,964+a|0,960+a|0,928+a|0,912+a|0),(Q=U2[968+a>>2])<(E=U2[964+a>>2])||(u=U2[960+a>>2])<(_=U2[972+a>>2])||(Z=1,g=P2(u-_),(Q=P2(Q-E))>2],u=U2[t+40>>2],o=U2[t+36>>2],b=U2[t+32>>2],c2=U2[t+24>>2],o2=U2[t+20>>2],Q=U2[t+16>>2],Y=U2[t+8>>2]}}if(I1(320+a|0,760+a|0,8+a|0,X2[f+20>>2],0),!((o=U2[40+a>>2])>2],m=U2[24+a>>2],R=U2[20+a>>2],T=U2[16+a>>2];break r}if(1==X2[B+4>>2]){if(X2[252+a>>2]=0,n=X2[r+12>>2],u=U2[n+52>>2],d=U2[n+20>>2],g=U2[n+24>>2],m=U2[n+56>>2],b=U2[B- -64>>2],o=U2[B+68>>2],R=U2[n+36>>2],c=U2[B+72>>2],T=U2[n+40>>2],W=U2[n+48>>2],Q=U2[n+8>>2],E=U2[n>>2],_=U2[n+4>>2],F=U2[n+16>>2],o2=U2[n+32>>2],X2[6258]=X2[6258]+1,k=0,(n=L2(35))&&(X2[(k=n+19&-16)-4>>2]=n),X2[256+a>>2]=1,X2[260+a>>2]=k,S2[264+a|0]=1,U2[k+4>>2]=u+P2(P2(P2(b*F)+P2(o*d))+P2(c*g)),U2[k>>2]=W+P2(P2(P2(b*E)+P2(o*_))+P2(c*Q)),X2[k+12>>2]=0,U2[k+8>>2]=m+P2(P2(P2(b*o2)+P2(o*R))+P2(c*T)),k=X2[252+a>>2],X2[252+a>>2]=s=k+1|0,b=U2[B+80>>2],n=X2[r+12>>2],o=U2[B+84>>2],c=U2[B+88>>2],u=P2(P2(P2(P2(b*U2[n>>2])+P2(o*U2[n+4>>2]))+P2(c*U2[n+8>>2]))+U2[n+48>>2]),d=P2(P2(P2(P2(b*U2[n+32>>2])+P2(o*U2[n+36>>2]))+P2(c*U2[n+40>>2]))+U2[n+56>>2]),b=P2(P2(P2(P2(b*U2[n+16>>2])+P2(o*U2[n+20>>2]))+P2(c*U2[n+24>>2]))+U2[n+52>>2]),(0|s)==(0|(n=X2[256+a>>2]))&&!((0|(t=(n=s)?n<<1:1))<=(0|n))){if(Z=0,t&&(X2[6258]=X2[6258]+1,(n=L2(19+(t<<4)|0))&&(X2[(Z=n+19&-16)-4>>2]=n)),0<=(0|k))for(n=k+1|0,k=0;;)if(s=X2[260+a>>2]+k|0,C=X2[s+4>>2],X2[(l=k+Z|0)>>2]=X2[s>>2],X2[l+4>>2]=C,G=X2[(s=s+8|0)+4>>2],X2[(l=l+8|0)>>2]=X2[s>>2],X2[l+4>>2]=G,k=k+16|0,!(n=n-1|0))break;(n=X2[260+a>>2])&&J2[264+a|0]&&(X2[6259]=X2[6259]+1,q2(X2[n-4>>2])),X2[260+a>>2]=Z,S2[264+a|0]=1,X2[256+a>>2]=t,s=X2[252+a>>2],n=t}if(l=X2[260+a>>2],X2[(k=l+(s<<4)|0)+12>>2]=0,U2[k+8>>2]=d,U2[k+4>>2]=b,U2[k>>2]=u,X2[252+a>>2]=s=s+1|0,b=U2[B+96>>2],r=X2[r+12>>2],o=U2[B+100>>2],c=U2[B+104>>2],u=P2(P2(P2(P2(b*U2[r>>2])+P2(o*U2[r+4>>2]))+P2(c*U2[r+8>>2]))+U2[r+48>>2]),d=P2(P2(P2(P2(b*U2[r+32>>2])+P2(o*U2[r+36>>2]))+P2(c*U2[r+40>>2]))+U2[r+56>>2]),b=P2(P2(P2(P2(b*U2[r+16>>2])+P2(o*U2[r+20>>2]))+P2(c*U2[r+24>>2]))+U2[r+52>>2]),(0|n)==(0|s))if((0|(r=n?n<<1:1))<=(0|n))s=n;else{if(l=0,r&&(X2[6258]=X2[6258]+1,(k=L2(19+(r<<4)|0))&&(X2[(l=k+19&-16)-4>>2]=k)),1<=(0|n))for(k=0;;)if(s=X2[260+a>>2]+k|0,G=X2[s+4>>2],X2[(t=k+l|0)>>2]=X2[s>>2],X2[t+4>>2]=G,Z=X2[(s=s+8|0)+4>>2],X2[(t=t+8|0)>>2]=X2[s>>2],X2[t+4>>2]=Z,k=k+16|0,!(n=n-1|0))break;(n=X2[260+a>>2])&&J2[264+a|0]&&(X2[6259]=X2[6259]+1,q2(X2[n-4>>2])),X2[260+a>>2]=l,S2[264+a|0]=1,X2[256+a>>2]=r,s=X2[252+a>>2]}if(X2[(r=(s<<4)+l|0)+12>>2]=0,U2[r+8>>2]=d,U2[r+4>>2]=b,U2[r>>2]=u,X2[252+a>>2]=X2[252+a>>2]+1,b=U2[X2[A+56>>2]+848>>2],I1(320+a|0,760+a|0,312+a|0,X2[f+20>>2],0),o=U2[324+a>>2],c=U2[328+a>>2],u=U2[332+a>>2],(d=P2(P2(P2(o*o)+P2(c*c))+P2(u*u)))>P2(1.1920928955078125e-7)){if(X2[956+a>>2]=0,g=u,u=P2(P2(1)/d),U2[952+a>>2]=g*u,U2[948+a>>2]=c*u,U2[944+a>>2]=o*u,o=P2(P2(U2[376+a>>2]-P2(N2[X2[X2[w>>2]+48>>2]](w)))-P2(N2[X2[X2[B>>2]+48>>2]](B))),(0|(k=X2[A+36>>2]))<=-1)for(X2[A+40>>2]<=-1&&((r=X2[A+44>>2])&&J2[A+48|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+40>>2]=0,X2[A+44>>2]=0,S2[A+48|0]=1),t=k<<4;;)if(n=X2[932+a>>2],r=X2[A+44>>2]+t|0,X2[r>>2]=X2[928+a>>2],X2[r+4>>2]=n,n=X2[(f=936+a|0)+4>>2],X2[(r=r+8|0)>>2]=X2[f>>2],X2[r+4>>2]=n,t=t+16|0,!((r=k)>>>0<=(k=k+1|0)>>>0))break;y1(944+a|(X2[A+36>>2]=0),X2[w+60>>2],X2[e+12>>2],248+a|0,A+32|0,P2(o-b),b,i)}if(J2[A+52|0]&&(A=X2[i+4>>2],X2[A+844>>2]&&((0|(e=X2[A+836>>2]))!=(0|(r=X2[X2[i+8>>2]+8>>2]))?R2(A,X2[X2[i+12>>2]+8>>2]+4|0,r+4|0):R2(A,e+4|0,X2[X2[i+12>>2]+8>>2]+4|0))),!(A=X2[260+a>>2]))break A;if(!J2[264+a|0])break A;X2[6259]=X2[6259]+1,q2(X2[A-4>>2]);break A}}if(I1(320+a|0,760+a|0,i,X2[f+20>>2],0),X2[A+64>>2]&&!(X2[X2[i+4>>2]+844>>2]>=X2[A+68>>2])&&(b=U2[324+a>>2],o=U2[328+a>>2],c=U2[332+a>>2],(u=P2(P2(P2(b*b)+P2(o*o))+P2(c*c)))>P2(1.1920928955078125e-7)&&(g=o,o=P2(P2(1)/u),g=P2(g*o),W=P2(b*o),Q=P2(c*o),P2(j2(Q))>P2(.7071067690849304)?(o=P2(P2(1)/P2(O2(P2(P2(Q*Q)+P2(g*g))))),b=P2(g*o),o=P2(o*P2(-Q)),c=P2(0)):(b=P2(P2(1)/P2(O2(P2(P2(W*W)+P2(g*g))))),o=P2(W*b),c=P2(b*P2(-g)),b=P2(0)),B2=824+a|0,C=808+a|0,h=792+a|0,u2=776+a|0,V=272+a|0,n=(X=(u=P2(N2[X2[X2[w>>2]+16>>2]](w)))<(d=P2(N2[X2[X2[B>>2]+16>>2]](B))))?(s=X2[(k=768+a|0)+4>>2],X2[(n=256+a|0)>>2]=X2[k>>2],X2[n+4>>2]=s,n=X2[764+a>>2],X2[248+a>>2]=X2[760+a>>2],X2[252+a>>2]=n,d=P2(m2(P2(P2(.019999999552965164)/u),P2(.39269909262657166))),s=248+a|0,t=h,k=u2,C):(s=X2[(k=B2+8|0)+4>>2],X2[(n=256+a|0)>>2]=X2[k>>2],X2[n+4>>2]=s,n=X2[B2+4>>2],X2[248+a>>2]=X2[B2>>2],X2[252+a>>2]=n,d=P2(m2(P2(P2(.019999999552965164)/d),P2(.39269909262657166))),s=248+a|0,t=Z,k=l,G),w=X2[(B=k+8|0)+4>>2],X2[V>>2]=X2[B>>2],X2[4+V>>2]=w,V=X2[(w=t+8|0)+4>>2],X2[(B=288+a|0)>>2]=X2[w>>2],X2[B+4>>2]=V,V=X2[(w=n+8|0)+4>>2],X2[(B=304+a|0)>>2]=X2[w>>2],X2[B+4>>2]=V,B=X2[k+4>>2],X2[264+a>>2]=X2[k>>2],X2[268+a>>2]=B,k=X2[t+4>>2],X2[280+a>>2]=X2[t>>2],X2[284+a>>2]=k,k=X2[n+4>>2],X2[296+a>>2]=X2[n>>2],X2[300+a>>2]=k,!((0|(t=X2[A+64>>2]))<1))))for(B=296+a|0,w=280+a|0,V=264+a|0,m=b,u=P2(d*P2(.5)),h2=P2(P2(P2(c*c)+P2(o*o))+P2(b*b)),b=P2(o0(u)/P2(O2(h2))),d=P2(m*b),m=P2(o*b),R=P2(c*b),F2=P2(O2(P2(P2(Q*Q)+P2(P2(W*W)+P2(g*g))))),J=224+a|0,U=208+a|0,H=192+a|0,P=176+a|0,j=160+a|0,z=144+a|0,O=128+a|0,K=112+a|0,L=96+a|0,q=80+a|0,$=a+64|0,A2=48+a|0,T=c0(u),k=0;;)if(h2>P2(1.1920928955078125e-7)&&(u=P2(P2(P2(P2(6.2831854820251465)/P2(0|t))*P2(0|k))*P2(.5)),c=P2(o0(u)/F2),b=P2(Q*c),o=P2(g*c),c=P2(W*c),u=c0(u),X?(n=X2[e+12>>2],F=U2[n>>2],o2=U2[n+4>>2],c2=U2[n+8>>2],X2[772+a>>2]=0,k2=U2[n+36>>2],v2=U2[n+20>>2],d2=U2[n+40>>2],Z2=U2[n+24>>2],_2=U2[n+32>>2],g2=U2[n+16>>2],X2[804+a>>2]=0,X2[788+a>>2]=0,I=P2(P2(d*c)+P2(P2(P2(m*u)-P2(T*o))-P2(R*b))),Y=P2(P2(d*b)+P2(P2(m*o)+P2(P2(T*u)+P2(R*c)))),t2=P2(P2(m*b)+P2(P2(P2(R*u)-P2(T*c))-P2(d*o))),D=P2(P2(R*o)+P2(P2(P2(d*u)-P2(T*b))-P2(m*c))),E=P2(P2(P2(b*I)+P2(P2(c*Y)+P2(u*t2)))-P2(o*D)),_=P2(P2(P2(P2(u*Y)-P2(c*t2))-P2(o*I))-P2(b*D)),l2=P2(P2(P2(o*t2)+P2(P2(b*Y)+P2(u*D)))-P2(c*I)),b=P2(P2(P2(c*D)+P2(P2(u*I)+P2(o*Y)))-P2(b*t2)),o=P2(P2(2)/P2(P2(_*_)+P2(P2(l2*l2)+P2(P2(E*E)+P2(b*b))))),c=P2(l2*o),Y=P2(E*c),u=P2(b*o),t2=P2(_*u),I=P2(Y-t2),D=P2(b*c),s2=P2(E*o),G2=P2(_*s2),o=P2(D+G2),s2=P2(E*s2),C2=P2(b*u),b=P2(P2(1)-P2(s2+C2)),U2[800+a>>2]=P2(P2(c2*I)+P2(Z2*o))+P2(d2*b),U2[796+a>>2]=P2(P2(I*o2)+P2(o*v2))+P2(b*k2),U2[792+a>>2]=P2(P2(I*F)+P2(o*g2))+P2(b*_2),u=P2(E*u),E=P2(_*c),b=P2(u+E),_=P2(l2*c),o=P2(P2(1)-P2(s2+_)),c=P2(D-G2),U2[784+a>>2]=P2(P2(c2*b)+P2(Z2*o))+P2(d2*c),U2[780+a>>2]=P2(P2(b*o2)+P2(o*v2))+P2(c*k2),U2[776+a>>2]=P2(P2(b*F)+P2(o*g2))+P2(c*_2),b=P2(P2(1)-P2(C2+_)),o=P2(u-E),c=P2(Y+t2),U2[768+a>>2]=P2(P2(c2*b)+P2(Z2*o))+P2(d2*c),U2[764+a>>2]=P2(P2(b*o2)+P2(o*v2))+P2(c*k2),U2[760+a>>2]=P2(P2(b*F)+P2(o*g2))+P2(c*_2),n=X2[r+12>>2],v=X2[n+4>>2],X2[B2>>2]=X2[n>>2],X2[B2+4>>2]=v,N=X2[(t=n+8|0)+4>>2],X2[(v=B2+8|0)>>2]=X2[t>>2],X2[v+4>>2]=N,N=X2[(v=n+24|0)+4>>2],X2[(t=l+8|0)>>2]=X2[v>>2],X2[t+4>>2]=N,t=X2[n+20>>2],X2[l>>2]=X2[n+16>>2],X2[l+4>>2]=t,N=X2[(v=n+40|0)+4>>2],X2[(t=Z+8|0)>>2]=X2[v>>2],X2[t+4>>2]=N,t=X2[n+36>>2],X2[Z>>2]=X2[n+32>>2],X2[Z+4>>2]=t,N=X2[(v=n+56|0)+4>>2],X2[(t=G+8|0)>>2]=X2[v>>2],X2[t+4>>2]=N,t=X2[n+52>>2],X2[G>>2]=X2[n+48>>2],X2[G+4>>2]=t):(n=X2[e+12>>2],v=X2[(t=n+8|0)>>2],t=X2[t+4>>2],N=X2[n>>2],r2=X2[n+4>>2],y=X2[n+20>>2],X2[u2>>2]=X2[n+16>>2],X2[u2+4>>2]=y,f2=X2[4+(e2=n+24|0)>>2],X2[(y=u2+8|0)>>2]=X2[e2>>2],X2[4+y>>2]=f2,X2[(y=768+a|0)>>2]=v,X2[4+y>>2]=t,t=X2[n+36>>2],X2[h>>2]=X2[n+32>>2],X2[h+4>>2]=t,y=X2[(v=n+40|0)+4>>2],X2[(t=h+8|0)>>2]=X2[v>>2],X2[t+4>>2]=y,y=X2[(v=n+56|0)+4>>2],X2[(t=C+8|0)>>2]=X2[v>>2],X2[t+4>>2]=y,t=X2[n+52>>2],X2[C>>2]=X2[n+48>>2],X2[C+4>>2]=t,X2[760+a>>2]=N,X2[764+a>>2]=r2,n=X2[r+12>>2],F=U2[n+36>>2],o2=U2[n+20>>2],c2=U2[n+40>>2],k2=U2[n+24>>2],v2=U2[n+32>>2],d2=U2[n>>2],Z2=U2[n+16>>2],_2=U2[n+4>>2],g2=U2[n+8>>2],X2[868+a>>2]=0,X2[852+a>>2]=0,X2[836+a>>2]=0,I=P2(P2(d*c)+P2(P2(P2(m*u)-P2(T*o))-P2(R*b))),Y=P2(P2(d*b)+P2(P2(m*o)+P2(P2(T*u)+P2(R*c)))),t2=P2(P2(m*b)+P2(P2(P2(R*u)-P2(T*c))-P2(d*o))),D=P2(P2(R*o)+P2(P2(P2(d*u)-P2(T*b))-P2(m*c))),E=P2(P2(P2(b*I)+P2(P2(c*Y)+P2(u*t2)))-P2(o*D)),_=P2(P2(P2(P2(u*Y)-P2(c*t2))-P2(o*I))-P2(b*D)),l2=P2(P2(P2(o*t2)+P2(P2(b*Y)+P2(u*D)))-P2(c*I)),b=P2(P2(P2(c*D)+P2(P2(u*I)+P2(o*Y)))-P2(b*t2)),o=P2(P2(2)/P2(P2(_*_)+P2(P2(l2*l2)+P2(P2(E*E)+P2(b*b))))),c=P2(l2*o),Y=P2(E*c),u=P2(b*o),t2=P2(_*u),I=P2(Y-t2),D=P2(b*c),s2=P2(E*o),G2=P2(_*s2),o=P2(D+G2),s2=P2(E*s2),C2=P2(b*u),b=P2(P2(1)-P2(s2+C2)),U2[864+a>>2]=P2(P2(g2*I)+P2(k2*o))+P2(c2*b),U2[860+a>>2]=P2(P2(I*_2)+P2(o*o2))+P2(b*F),U2[856+a>>2]=P2(P2(I*d2)+P2(o*Z2))+P2(b*v2),u=P2(E*u),E=P2(_*c),b=P2(u+E),_=P2(l2*c),o=P2(P2(1)-P2(s2+_)),c=P2(D-G2),U2[848+a>>2]=P2(P2(g2*b)+P2(k2*o))+P2(c2*c),U2[844+a>>2]=P2(P2(b*_2)+P2(o*o2))+P2(c*F),U2[840+a>>2]=P2(P2(b*d2)+P2(o*Z2))+P2(c*v2),b=P2(P2(1)-P2(C2+_)),o=P2(u-E),c=P2(Y+t2),U2[832+a>>2]=P2(P2(g2*b)+P2(k2*o))+P2(c2*c),U2[828+a>>2]=P2(P2(b*_2)+P2(o*o2))+P2(c*F),U2[824+a>>2]=P2(P2(b*d2)+P2(o*Z2))+P2(c*v2)),n=X2[764+a>>2],X2[A2>>2]=X2[760+a>>2],X2[4+A2>>2]=n,n=X2[u2+4>>2],X2[$>>2]=X2[u2>>2],X2[4+$>>2]=n,n=X2[h+4>>2],X2[q>>2]=X2[h>>2],X2[4+q>>2]=n,n=X2[C+4>>2],X2[L>>2]=X2[C>>2],X2[4+L>>2]=n,v=X2[(t=768+a|0)+4>>2],X2[(n=8+A2|0)>>2]=X2[t>>2],X2[n+4>>2]=v,v=X2[(t=u2+8|0)+4>>2],X2[(n=8+$|0)>>2]=X2[t>>2],X2[n+4>>2]=v,v=X2[(t=h+8|0)+4>>2],X2[(n=8+q|0)>>2]=X2[t>>2],X2[n+4>>2]=v,v=X2[(t=C+8|0)+4>>2],X2[(n=8+L|0)>>2]=X2[t>>2],X2[n+4>>2]=v,X2[40+a>>2]=0,X2[44+a>>2]=i,X2[8+a>>2]=15444,n=X2[f+20>>2],N=X2[(v=B2+8|0)+4>>2],X2[(t=8+K|0)>>2]=X2[v>>2],X2[t+4>>2]=N,t=X2[B2+4>>2],X2[K>>2]=X2[B2>>2],X2[4+K>>2]=t,N=X2[(v=l+8|0)+4>>2],X2[(t=8+O|0)>>2]=X2[v>>2],X2[t+4>>2]=N,t=X2[l+4>>2],X2[O>>2]=X2[l>>2],X2[4+O>>2]=t,N=X2[(v=Z+8|0)+4>>2],X2[(t=8+z|0)>>2]=X2[v>>2],X2[t+4>>2]=N,t=X2[Z+4>>2],X2[z>>2]=X2[Z>>2],X2[4+z>>2]=t,N=X2[(v=G+8|0)+4>>2],X2[(t=8+j|0)>>2]=X2[v>>2],X2[t+4>>2]=N,t=X2[G+4>>2],X2[j>>2]=X2[G>>2],X2[4+j>>2]=t,N=X2[(v=s+8|0)+4>>2],X2[(t=8+P|0)>>2]=X2[v>>2],X2[t+4>>2]=N,t=X2[s+4>>2],X2[P>>2]=X2[s>>2],X2[4+P>>2]=t,N=X2[(v=8+V|0)+4>>2],X2[(t=8+H|0)>>2]=X2[v>>2],X2[t+4>>2]=N,t=X2[4+V>>2],X2[H>>2]=X2[V>>2],X2[4+H>>2]=t,N=X2[(v=w+8|0)+4>>2],X2[(t=8+U|0)>>2]=X2[v>>2],X2[t+4>>2]=N,t=X2[w+4>>2],X2[U>>2]=X2[w>>2],X2[4+U>>2]=t,N=X2[(v=B+8|0)+4>>2],X2[(t=8+J|0)>>2]=X2[v>>2],X2[t+4>>2]=N,t=X2[B+4>>2],X2[J>>2]=X2[B>>2],X2[4+J>>2]=t,X2[244+a>>2]=n,S2[240+a|0]=X,I1(320+a|0,760+a|0,8+a|0,n,0),t=X2[A+64>>2]),!((0|(k=k+1|0))<(0|t)))break;if(!J2[A+52|0])break A;if(A=X2[i+4>>2],!X2[A+844>>2])break A;if((0|(e=X2[A+836>>2]))!=(0|(r=X2[X2[i+8>>2]+8>>2]))){R2(A,X2[X2[i+12>>2]+8>>2]+4|0,r+4|0);break A}R2(A,e+4|0,X2[X2[i+12>>2]+8>>2]+4|0);break A}if(1<=(0|(f=X2[h+28>>2])))for(Z=28;;){if(n=X2[h+36>>2]+Z|0,c=U2[n>>2],g=U2[n-8>>2],Q=U2[n-4>>2],X2[908+a>>2]=0,b=P2(P2(P2(g*U2[l+32>>2])+P2(Q*U2[l+36>>2]))+P2(c*U2[l+40>>2])),U2[904+a>>2]=b,o=P2(P2(P2(g*U2[l+16>>2])+P2(Q*U2[l+20>>2]))+P2(c*U2[l+24>>2])),U2[900+a>>2]=o,c=P2(P2(P2(g*U2[l>>2])+P2(Q*U2[l+4>>2]))+P2(c*U2[l+8>>2])),U2[896+a>>2]=c,P2(P2(P2(c*w2)+P2(o*Q2))+P2(b*E2))>2]=b,o=P2(-o),U2[900+a>>2]=o,c=P2(-c),U2[896+a>>2]=c),X2[6367]=X2[6367]+1,x1(t,l,w2,Q2,E2,c,o,b,C,h,d)){if(G=0,X2[6368]=X2[6368]+1,Y0(C,t,896+a|0,972+a|0,968+a|0,248+a|0,944+a|0),Y0(h,l,896+a|0,964+a|0,960+a|0,928+a|0,912+a|0),(g=U2[968+a>>2])<(Q=U2[964+a>>2])||(E=U2[960+a>>2])<(_=U2[972+a>>2])||(G=1,u=P2(E-_),(g=P2(g-Q))>2]))<1)s=-1,u=P2(0),g=P2(0),E=P2(0),_=P2(0),F=P2(0),Q=P2(0),n=-1;else for(G=X2[h+48>>2],s=n=-1,Q=P2(k=0),F=P2(0),_=P2(0),E=P2(0),g=P2(0),u=P2(0);;){if(1<=(0|G)){for(f=X2[C+56>>2]+(k<<4)|0,b=U2[f>>2],o=U2[f+4>>2],c=U2[f+8>>2],o2=P2(P2(P2(b*U2[t+32>>2])+P2(o*U2[t+36>>2]))+P2(c*U2[t+40>>2])),c2=P2(P2(P2(b*U2[t+16>>2])+P2(o*U2[t+20>>2]))+P2(c*U2[t+24>>2])),k2=P2(P2(P2(b*U2[t>>2])+P2(o*U2[t+4>>2]))+P2(c*U2[t+8>>2])),f=0,Z=8;;){if(u2=X2[h+56>>2]+Z|0,o=U2[u2>>2],c=U2[u2-8>>2],D=U2[u2-4>>2],x=U2[l+40>>2],p=U2[l+32>>2],M=U2[l+36>>2],b=U2[l+24>>2],Y=U2[l+16>>2],t2=U2[l+20>>2],S=U2[l+8>>2],i2=U2[l>>2],a2=U2[l+4>>2],X2[908+a>>2]=0,Y=P2(P2(P2(c*Y)+P2(D*t2))+P2(o*b)),t2=P2(P2(P2(c*i2)+P2(D*a2))+P2(o*S)),b=P2(P2(k2*Y)-P2(c2*t2)),D=P2(P2(P2(c*p)+P2(D*M))+P2(o*x)),c=P2(P2(o2*t2)-P2(k2*D)),x=P2(P2(c2*D)-P2(o2*Y)),(1e-6<+P2(j2(x))||1e-6<+P2(j2(c))||1e-6<+P2(j2(b)))&&(p=P2(P2(1)/P2(O2(P2(P2(b*b)+P2(P2(x*x)+P2(c*c)))))),o=P2(b*p),U2[904+a>>2]=o,b=P2(c*p),U2[900+a>>2]=b,c=P2(x*p),U2[896+a>>2]=c,P2(P2(P2(c*w2)+P2(b*Q2))+P2(E2*o))>2]=o,b=P2(-b),U2[900+a>>2]=b,c=P2(-c),U2[896+a>>2]=c),X2[6367]=X2[6367]+1,x1(t,l,w2,Q2,E2,c,b,o,C,h,d))){if(G=0,X2[6368]=X2[6368]+1,Y0(C,t,896+a|0,972+a|0,968+a|0,248+a|0,944+a|0),Y0(h,l,896+a|0,964+a|0,960+a|0,928+a|0,912+a|0),(x=U2[968+a>>2])<(p=U2[964+a>>2])||(M=U2[960+a>>2])<(S=U2[972+a>>2])||((W=P2(x-p))<(x=P2(M-S))?(G=1,l2=U2[936+a>>2],h2=U2[932+a>>2],F2=U2[928+a>>2],s2=U2[952+a>>2],G2=U2[948+a>>2],C2=U2[944+a>>2]):(G=1,l2=U2[920+a>>2],h2=U2[916+a>>2],F2=U2[912+a>>2],s2=U2[256+a>>2],G2=U2[252+a>>2],C2=U2[248+a>>2],W=x)),W>2]}if(Z=Z+16|0,!((0|(f=f+1|0))<(0|G)))break}Z=X2[C+48>>2]}if(!((0|(k=k+1|0))<(0|Z)))break}(n|s)<0||(W=P2(u-_),_=P2(g-F),Q=P2(E-Q),F=P2(P2(P2(W*v2)+P2(_*d2))+P2(Q*Z2)),d=P2(P2(P2(W*_2)+P2(_*g2))+P2(Q*I)),b=P2(0),c=P2(P2(P2(v2*_2)+P2(d2*g2))+P2(Z2*I)),(o=P2(P2(1)-P2(c*c)))!=P2(0)&&(b=P2(-1.0000000150474662e30),(o=P2(P2(d-P2(F*c))/o))P2(1.0000000150474662e30)&&(b=P2(1.0000000150474662e30))),(o=P2(P2(c*b)-F))P2(1.0000000150474662e30)?o=P2(-1.0000000150474662e30):(o=P2(-1.0000000150474662e30),b=c)):o>P2(1.0000000150474662e30)&&(b=P2(-1.0000000150474662e30),o=P2(1.0000000150474662e30),(c=P2(d+P2(c*P2(1.0000000150474662e30))))P2(1.0000000150474662e30)&&(b=P2(1.0000000150474662e30))),X2[260+a>>2]=0,F=P2(Z2*o),c=P2(F+P2(Q-P2(I*b))),Q=P2(v2*o),d=P2(Q+P2(W-P2(_2*b))),W=P2(d2*o),b=P2(W+P2(_-P2(g2*b))),(o=P2(P2(c*c)+P2(P2(d*d)+P2(b*b))))>P2(1.1920928955078125e-7)&&(_=P2(O2(o)),o=P2(P2(1)/_),c=P2(c*o),U2[256+a>>2]=c,b=P2(b*o),U2[252+a>>2]=b,o=P2(d*o),U2[248+a>>2]=o,P2(P2(P2(o*w2)+P2(b*Q2))+P2(c*E2))>2]=-c,U2[252+a>>2]=-b,U2[248+a>>2]=-o),X2[956+a>>2]=0,U2[952+a>>2]=E+F,U2[948+a>>2]=g+W,U2[944+a>>2]=u+Q,N2[X2[X2[i>>2]+16>>2]](i,248+a|0,944+a|0,P2(-_)))),b=P2(0),o=P2(-1.0000000150474662e30),P2(P2(P2(w2*T)+P2(Q2*R))+P2(E2*m))>2]))<=(l=-1))for(X2[A+20>>2]<=-1&&((f=X2[A+24>>2])&&J2[A+28|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[A+20>>2]=0,X2[A+24>>2]=0,S2[A+28|0]=1),n=k<<4;;)if(t=X2[252+a>>2],f=X2[A+24>>2]+n|0,X2[(s=f)>>2]=X2[248+a>>2],X2[s+4>>2]=t,t=X2[(s=256+a|0)+4>>2],X2[(f=f+8|0)>>2]=X2[s>>2],X2[f+4>>2]=t,n=n+16|0,!((f=k)>>>0<=(k=k+1|0)>>>0))break;if(X2[A+16>>2]=0,r=X2[r+12>>2],G=X2[e+12>>2],C=X2[w+60>>2],f=X2[B+60>>2],U2[260+a>>2]=b,b=P2(P2(1)/P2(O2(P2(P2(P2(T*T)+P2(R*R))+P2(m*m))))),g=P2(m*b),U2[256+a>>2]=g,m=P2(R*b),U2[252+a>>2]=m,R=P2(T*b),U2[248+a>>2]=R,1<=(0|(n=X2[f+28>>2])))for(k=X2[f+36>>2]+28|0,T=U2[r+40>>2],W=U2[r+36>>2],Q=U2[r+24>>2],E=U2[r+20>>2],_=U2[r+32>>2],F=U2[r+16>>2],o2=U2[r+8>>2],c2=U2[r+4>>2],k2=U2[r>>2],b=P2(-34028234663852886e22),t=0;;)if(c=U2[k-8>>2],u=U2[k-4>>2],d=U2[k>>2],b=(e=b<(c=P2(P2(P2(R*P2(P2(P2(c*k2)+P2(u*c2))+P2(d*o2)))+P2(m*P2(P2(P2(c*F)+P2(u*E))+P2(d*Q))))+P2(g*P2(P2(P2(c*_)+P2(u*W))+P2(d*T))))))?c:b,l=e?t:l,k=k+36|0,(0|n)==(0|(t=t+1|0)))break;if(X2[A+16>>2]=0,e=X2[f+36>>2]+H2(l,36)|0,1<=(0|(h=X2[e+4>>2])))for(u2=e+12|0,s=t=0;;){if(e=X2[f+16>>2]+(X2[X2[u2>>2]+(s<<2)>>2]<<4)|0,b=U2[e>>2],c=U2[e+4>>2],u=U2[e+8>>2],d=P2(P2(P2(P2(b*U2[r+32>>2])+P2(c*U2[r+36>>2]))+P2(u*U2[r+40>>2]))+U2[r+56>>2]),g=P2(P2(P2(P2(b*U2[r+16>>2])+P2(c*U2[r+20>>2]))+P2(u*U2[r+24>>2]))+U2[r+52>>2]),b=P2(P2(P2(P2(b*U2[r>>2])+P2(c*U2[r+4>>2]))+P2(u*U2[r+8>>2]))+U2[r+48>>2]),X2[A+20>>2]==(0|t)&&!((0|(n=t?t<<1:1))<=(0|t))){if(e=0,n&&(X2[6258]=X2[6258]+1,(k=L2(19+(n<<4)|0))&&(X2[(e=k+19&-16)-4>>2]=k)),1<=(0|t))for(k=0;;)if(Z=X2[A+24>>2]+k|0,B2=X2[Z+4>>2],X2[(B=e+k|0)>>2]=X2[Z>>2],X2[B+4>>2]=B2,w=X2[(Z=Z+8|0)+4>>2],X2[(B=B+8|0)>>2]=X2[Z>>2],X2[B+4>>2]=w,k=k+16|0,!(t=t-1|0))break;(k=X2[A+24>>2])&&J2[A+28|0]&&(X2[6259]=X2[6259]+1,q2(X2[k-4>>2])),X2[A+24>>2]=e,S2[A+28|0]=1,X2[A+20>>2]=n,t=X2[A+16>>2]}if(e=X2[A+24>>2]+(t<<4)|0,X2[e+12>>2]=0,U2[e+8>>2]=d,U2[e+4>>2]=g,U2[e>>2]=b,t=X2[A+16>>2]+1|0,X2[A+16>>2]=t,(0|h)==(0|(s=s+1|0)))break}(0|l)<=-1||y1(248+a|0,C,G,A+12|0,A+32|0,P2(o-Y2),Y2,i)}J2[A+52|0]&&(A=X2[i+4>>2],X2[A+844>>2]&&((0|(e=X2[A+836>>2]))!=(0|(r=X2[X2[i+8>>2]+8>>2]))?R2(A,X2[X2[i+12>>2]+8>>2]+4|0,r+4|0):R2(A,e+4|0,X2[X2[i+12>>2]+8>>2]+4|0)))}K2=976+a|0},function(A,e,r,f,i){A|=0,e|=0,r|=0,f|=0,i|=0;var a,n,b,t,o,c,k,u,s=P2(0),l=P2(0);return P2(0),K2=A=K2-624|0,l=P2(U2[e+116>>2]-U2[e+52>>2]),s=P2(l*l),l=P2(U2[e+120>>2]-U2[e+56>>2]),s=P2(s+P2(l*l)),l=P2(U2[e+124>>2]-U2[e+60>>2]),s=P2(s+P2(l*l)),l=U2[e+276>>2],s>2]-U2[r+52>>2]),a=P2(s*s),s=P2(U2[r+120>>2]-U2[r+56>>2]),a=P2(a+P2(s*s)),s=P2(U2[r+124>>2]-U2[r+60>>2]),a=P2(a+P2(s*s)),s=U2[r+276>>2],a>2],X2[(f=i=A+592|0)>>2]=0,X2[f+4>>2]=0,X2[(b=A+588|0)>>2]=1065353216,X2[(f=n=A+600|0)>>2]=0,X2[f+4>>2]=0,X2[(t=A+608|0)>>2]=0,X2[A+572>>2]=0,X2[A+576>>2]=0,X2[A+580>>2]=1065353216,X2[A+584>>2]=1065353216,X2[A+564>>2]=8,X2[A+568>>2]=0,X2[A+560>>2]=14616,X2[A+616>>2]=0,l=U2[r+272>>2],U2[A+596>>2]=l,U2[A+612>>2]=l,X2[A+556>>2]=0,X2[A+548>>2]=1566444395,X2[A+552>>2]=0,X2[A+384>>2]=15320,S2[0|(o=A+356|0)]=0,X2[A+332>>2]=953267991,X2[A+16>>2]=a,X2[A+8>>2]=15076,X2[A+20>>2]=A+560,X2[A+12>>2]=A+24,c=e+4|0,k=e+68|0,u=r+4|0,a=r+68|0,l=P2(1),V1(A+8|0,c,k,u,a,A+384|0)&&((s=U2[A+548>>2])>2]&&(U2[e+268>>2]=s),s>2]&&(U2[r+268>>2]=s),l=P2(1),s>2],X2[i>>2]=0,X2[i+4>>2]=0,X2[b>>2]=1065353216,X2[n>>2]=0,X2[4+n>>2]=0,X2[t>>2]=0,X2[A+572>>2]=0,X2[A+576>>2]=0,X2[A+580>>2]=1065353216,X2[A+584>>2]=1065353216,X2[A+564>>2]=8,X2[A+568>>2]=0,X2[A+560>>2]=14616,X2[A+616>>2]=0,s=U2[e+272>>2],U2[A+596>>2]=s,U2[A+612>>2]=s,X2[A+556>>2]=0,X2[A+548>>2]=1566444395,X2[A+552>>2]=0,X2[A+384>>2]=15320,S2[0|o]=0,X2[A+332>>2]=953267991,X2[A+20>>2]=f,X2[A+8>>2]=15076,X2[A+16>>2]=A+560,X2[A+12>>2]=A+24,V1(A+8|0,c,k,u,a,A+384|0)&&((s=U2[A+548>>2])>2]&&(U2[e+268>>2]=s),s>2]&&(U2[r+268>>2]=s),s>2])&&J2[A+52|0]){if((0|(i=X2[e+4>>2]))==X2[e+8>>2]&&!((0|(r=i?i<<1:1))<=(0|i))){if(r&&(X2[6258]=X2[6258]+1,(f=L2(19+(r<<2)|0))&&(X2[(n=f+19&-16)-4>>2]=f)),1<=(0|i))for(a=0,f=i;;)if(X2[a+n>>2]=X2[X2[e+12>>2]+a>>2],a=a+4|0,!(f=f-1|0))break;(f=X2[e+12>>2])&&J2[e+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2]),i=X2[e+4>>2]),X2[e+12>>2]=n,S2[e+16|0]=1,X2[e+8>>2]=r,a=X2[A+56>>2]}X2[e+4>>2]=i+1,X2[X2[e+12>>2]+(i<<2)>>2]=a}},K0,o1,f,e,A,A,f,f,M1,A,f,f,function(A,e,r,f){var i,a,n,b,t,o,c;A|=0,e|=0,r|=0,f=P2(f),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2=c=K2-16|0,U2[A+32>>2]=f,b=X2[e+4>>2],X2[A+8>>2]=X2[e>>2],X2[A+12>>2]=b,n=X2[4+(b=e+8|0)>>2],X2[(a=A+16|0)>>2]=X2[b>>2],X2[4+a>>2]=n,a=U2[b>>2],n=U2[r>>2],b=U2[e>>2],t=U2[r+4>>2],o=U2[e+4>>2],r=U2[r+8>>2],i=U2[A+28>>2],f=P2(P2(i+U2[A+24>>2])+f),U2[A+32>>2]=f,X2[12+c>>2]=0,U2[8+c>>2]=r-P2(i*a),U2[4+c>>2]=t-P2(i*o),U2[c>>2]=n-P2(b*i),f>2],N2[X2[X2[A>>2]+16>>2]](A,e,c,f),K2=16+c|0},A,function(A,e,r,f){A|=0,e|=0,r|=0,f=P2(f);var i,a,n,b,t,o,c,k,u,s,l,B,v=P2(0),d=P2(0),Z=P2(0),_=P2(0),g=P2(0),E=P2(0),Q=P2(0),w=(P2(0),P2(0)),G=P2(0),C=P2(0),h=P2(0),F=P2(0),Y=P2(0),m=P2(0),N=P2(0),R=P2(0),D=P2(0),T=P2(0),W=(P2(0),P2(0));P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2=B=K2-16|0,b=U2[e+8>>2],h=U2[r+8>>2],W=P2(P2(b*f)+h),t=U2[e+4>>2],w=U2[r+4>>2],o=P2(P2(t*f)+w),c=U2[e>>2],v=P2(c*f),f=U2[r>>2],r=P2(v+f),J2[A+232|0]?(F=U2[A+56>>2],g=P2(-U2[A+92>>2]),Y=U2[A+40>>2],_=U2[A+88>>2],m=U2[A+72>>2],E=U2[A+96>>2],d=P2(P2(P2(F*g)-P2(Y*_))-P2(m*E)),N=U2[A+60>>2],R=U2[A+44>>2],D=U2[A+76>>2],G=P2(P2(P2(N*g)-P2(R*_))-P2(D*E)),T=U2[A- -64>>2],v=P2(T*g),g=U2[A+48>>2],v=P2(v-P2(g*_)),_=U2[A+80>>2],E=P2(v-P2(_*E)),v=U2[A+168>>2],Z=U2[A+172>>2],Q=U2[A+176>>2],Q=P2(P2(P2(W*P2(P2(P2(m*v)+P2(D*Z))+P2(_*Q)))+P2(P2(r*P2(P2(P2(Y*v)+P2(R*Z))+P2(g*Q)))+P2(o*P2(P2(P2(F*v)+P2(N*Z))+P2(T*Q)))))+P2(P2(P2(P2(v*d)+P2(G*Z))+P2(E*Q))+U2[A+216>>2])),C=P2(c*P2(Q-f)),f=U2[A+184>>2],v=U2[A+188>>2],Z=U2[A+192>>2],v=P2(P2(P2(W*P2(P2(P2(m*f)+P2(D*v))+P2(_*Z)))+P2(P2(r*P2(P2(P2(Y*f)+P2(R*v))+P2(g*Z)))+P2(o*P2(P2(P2(F*f)+P2(N*v))+P2(T*Z)))))+P2(P2(P2(P2(d*f)+P2(G*v))+P2(E*Z))+U2[A+220>>2])),Z=P2(C+P2(t*P2(v-w))),f=U2[A+200>>2],w=U2[A+204>>2],G=P2(P2(d*f)+P2(G*w)),d=U2[A+208>>2],W=P2(P2(P2(G+P2(E*d))+U2[A+224>>2])+P2(P2(W*P2(P2(P2(m*f)+P2(D*w))+P2(_*d)))+P2(P2(r*P2(P2(P2(Y*f)+P2(R*w))+P2(g*d)))+P2(o*P2(P2(P2(F*f)+P2(N*w))+P2(T*d)))))),f=P2(Z+P2(b*P2(W-h))),U2[4+B>>2]=v+P2(t*f),U2[B>>2]=Q+P2(c*f),h=P2(W+P2(b*f))):(s=U2[A+224>>2],F=U2[A+208>>2],Y=U2[A+200>>2],m=U2[A+204>>2],l=U2[A+216>>2],d=U2[A+172>>2],N=U2[A+176>>2],R=U2[A+168>>2],D=U2[A+120>>2],C=P2(-U2[A+156>>2]),G=U2[A+104>>2],a=U2[A+152>>2],T=U2[A+136>>2],n=U2[A+160>>2],g=P2(P2(P2(D*C)-P2(G*a))-P2(T*n)),_=U2[A+124>>2],E=U2[A+108>>2],v=U2[A+140>>2],Z=P2(P2(P2(_*C)-P2(E*a))-P2(v*n)),Q=U2[A+128>>2],i=P2(Q*C),C=U2[A+112>>2],i=P2(i-P2(C*a)),a=U2[A+144>>2],n=P2(i-P2(a*n)),i=U2[A+184>>2],k=U2[A+188>>2],u=U2[A+192>>2],i=P2(P2(P2(h*P2(P2(P2(T*i)+P2(v*k))+P2(a*u)))+P2(P2(f*P2(P2(P2(G*i)+P2(E*k))+P2(C*u)))+P2(w*P2(P2(P2(D*i)+P2(_*k))+P2(Q*u)))))+P2(P2(P2(P2(g*i)+P2(Z*k))+P2(n*u))+U2[A+220>>2])),U2[4+B>>2]=i,d=P2(P2(P2(h*P2(P2(P2(T*R)+P2(v*d))+P2(a*N)))+P2(P2(f*P2(P2(P2(G*R)+P2(E*d))+P2(C*N)))+P2(w*P2(P2(P2(D*R)+P2(_*d))+P2(Q*N)))))+P2(l+P2(P2(P2(R*g)+P2(Z*d))+P2(n*N)))),U2[B>>2]=d,h=P2(P2(s+P2(P2(P2(g*Y)+P2(Z*m))+P2(n*F)))+P2(P2(h*P2(P2(P2(T*Y)+P2(v*m))+P2(a*F)))+P2(P2(f*P2(P2(P2(G*Y)+P2(E*m))+P2(C*F)))+P2(w*P2(P2(P2(D*Y)+P2(_*m))+P2(Q*F)))))),f=P2(P2(P2(c*P2(r-d))+P2(t*P2(o-i)))+P2(b*P2(W-h)))),X2[12+B>>2]=0,U2[8+B>>2]=h,A=X2[A+36>>2],N2[X2[X2[A>>2]+16>>2]](A,e,B,f),K2=16+B|0},A,S1,function(A){var e,r;return X2[(A|=0)+8>>2]=16024,X2[A>>2]=15996,r=X2[(e=A+56|0)>>2],N2[X2[X2[r>>2]+20>>2]](r,X2[(r=A+72|0)>>2]),e=X2[e>>2],N2[X2[X2[e>>2]+16>>2]](e,X2[r>>2]),0|A},function(A){var e,r;X2[(A|=0)+8>>2]=16024,X2[A>>2]=15996,r=X2[(e=A+56|0)>>2],N2[X2[X2[r>>2]+20>>2]](r,X2[(r=A+72|0)>>2]),e=X2[e>>2],N2[X2[X2[e>>2]+16>>2]](e,X2[r>>2]),X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},function(A,e,r,f,i){var a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C,h,F,Y,m,N,R,D,T;A|=0,e|=0,r|=0,f|=0,i|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2=T=K2+-64|0,n=J2[A+76|0],b=X2[(d=n?e:r)+4>>2],8>2]-21>>>0||19>2]+4>>2]||(D=P2(N2[X2[X2[b>>2]+48>>2]](b)),U2[A- -64>>2]=D,X2[A+60>>2]=f,X2[A+48>>2]=d,X2[A+44>>2]=n,X2[A+52>>2]=i,X2[i+4>>2]=X2[(f=A+72|0)>>2],e=X2[d+12>>2],t=U2[e+52>>2],Z=U2[e+56>>2],r=X2[n+12>>2],_=U2[r+52>>2],g=U2[r+56>>2],a=U2[e+20>>2],o=U2[e+36>>2],E=U2[r+20>>2],Q=U2[r+36>>2],w=U2[r+24>>2],c=U2[e+24>>2],G=U2[r+40>>2],k=U2[e+40>>2],C=U2[r+32>>2],u=U2[e+32>>2],h=U2[r>>2],s=U2[e>>2],F=U2[r+16>>2],l=U2[e+16>>2],Y=U2[e+48>>2],m=U2[r+48>>2],B=U2[e+4>>2],N=U2[r+4>>2],R=U2[r+8>>2],v=U2[e+8>>2],X2[60+T>>2]=0,X2[44+T>>2]=0,X2[28+T>>2]=0,U2[40+T>>2]=P2(P2(v*R)+P2(c*w))+P2(k*G),U2[36+T>>2]=P2(P2(v*N)+P2(c*E))+P2(k*Q),U2[24+T>>2]=P2(P2(B*R)+P2(a*w))+P2(o*G),U2[20+T>>2]=P2(P2(B*N)+P2(a*E))+P2(o*Q),t=P2(-t),U2[56+T>>2]=P2(P2(P2(c*t)-P2(v*Y))-P2(k*Z))+P2(P2(P2(v*m)+P2(c*_))+P2(k*g)),U2[52+T>>2]=P2(P2(P2(a*t)-P2(B*Y))-P2(o*Z))+P2(P2(P2(B*m)+P2(a*_))+P2(o*g)),X2[12+T>>2]=0,U2[T>>2]=P2(P2(s*h)+P2(l*F))+P2(u*C),U2[32+T>>2]=P2(P2(v*h)+P2(c*F))+P2(k*C),U2[16+T>>2]=P2(P2(B*h)+P2(a*F))+P2(o*C),U2[8+T>>2]=P2(P2(s*R)+P2(l*w))+P2(u*G),U2[4+T>>2]=P2(P2(s*N)+P2(l*E))+P2(u*Q),U2[48+T>>2]=P2(P2(P2(l*t)-P2(s*Y))-P2(u*Z))+P2(P2(P2(s*m)+P2(l*_))+P2(u*g)),v=X2[n+4>>2],N2[X2[X2[v>>2]+8>>2]](v,T,e=A+12|0,r=A+28|0),a=P2(D+U2[i+32>>2]),U2[r>>2]=a+U2[r>>2],U2[(v=A+32|0)>>2]=a+U2[v>>2],U2[(v=A+36|0)>>2]=a+U2[v>>2],U2[e>>2]=U2[e>>2]-a,U2[(v=A+16|0)>>2]=U2[v>>2]-a,U2[(v=A+20|0)>>2]=U2[v>>2]-a,f=X2[f>>2],X2[f+840>>2]=X2[d+8>>2],X2[f+836>>2]=X2[n+8>>2],N2[X2[X2[b>>2]+64>>2]](b,A+8|0,e,r),e=X2[i+4>>2],X2[e+844>>2]&&(f=X2[e+836>>2],b=X2[X2[i+8>>2]+8>>2],v=e,e=X2[X2[i+12>>2]+8>>2],R2(v,((r=(0|f)==(0|b))?f:e)+4|0,(r?e:b)+4|0)),X2[A+44>>2]=0,X2[A+48>>2]=0),K2=T+64|0},function(A,e,r,f,i){A|=0,e|=0,r|=0,f|=0,i|=0,P2(0),P2(0);var a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C,h,F,Y,m,N,R,D,T,W,x,y,V,p,M,S,X,J,I=P2(0);return P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2=f=K2-240|0,I=P2(1),i=J2[A+76|0],a=P2(U2[(A=i?r:e)+116>>2]-U2[A+52>>2]),n=P2(a*a),a=P2(U2[A+120>>2]-U2[A+56>>2]),n=P2(n+P2(a*a)),a=P2(U2[A+124>>2]-U2[A+60>>2]),n=P2(n+P2(a*a)),a=U2[A+276>>2],n>2],8>2]-21>>>0||(i=U2[e+52>>2],I=U2[e+12>>2],a=U2[e+28>>2],n=U2[e+56>>2],b=U2[e+60>>2],t=U2[e+44>>2],Z=U2[A+120>>2],_=U2[A+116>>2],g=U2[A+124>>2],o=U2[e+8>>2],c=U2[e+24>>2],k=U2[e+40>>2],u=U2[e+36>>2],s=U2[e+20>>2],e=U2[e+4>>2],E=U2[A+56>>2],Q=U2[A+52>>2],w=U2[A+60>>2],G=U2[A+108>>2],C=U2[A+92>>2],h=U2[A+76>>2],F=U2[A+104>>2],Y=U2[A+88>>2],m=U2[A+72>>2],N=U2[A+100>>2],R=U2[A+84>>2],D=U2[A+44>>2],T=U2[A+28>>2],W=U2[A+12>>2],x=U2[A+40>>2],y=U2[A+24>>2],V=U2[A+8>>2],p=U2[A+36>>2],M=U2[A+20>>2],S=U2[A+68>>2],X=U2[A+4>>2],X2[f+236>>2]=0,X2[f+220>>2]=0,J=P2(-n),n=P2(P2(P2(a*J)-P2(I*i))-P2(t*b)),B=P2(n+P2(P2(P2(I*_)+P2(a*Z))+P2(t*g))),v=P2(n+P2(P2(P2(I*Q)+P2(a*E))+P2(t*w))),n=U2[A+272>>2],U2[f+232>>2]=(B>2]=(d>2]=(i>2]=n+(v>2]=n+(l>2]=n+(b>2]=0,U2[f+124>>2]=B,U2[f+120>>2]=d,U2[f+116>>2]=i,X2[f+112>>2]=0,U2[f+108>>2]=P2(P2(I*h)+P2(a*C))+P2(t*G),U2[f+104>>2]=P2(P2(I*m)+P2(a*Y))+P2(t*F),U2[f+100>>2]=P2(P2(I*S)+P2(a*R))+P2(t*N),X2[f+96>>2]=0,U2[f+92>>2]=P2(P2(o*h)+P2(c*C))+P2(k*G),U2[f+88>>2]=P2(P2(o*m)+P2(c*Y))+P2(k*F),U2[f+84>>2]=P2(P2(o*S)+P2(c*R))+P2(k*N),X2[f+80>>2]=0,U2[f+76>>2]=P2(P2(e*h)+P2(s*C))+P2(u*G),U2[f+72>>2]=P2(P2(e*m)+P2(s*Y))+P2(u*F),X2[f- -64>>2]=0,U2[f+60>>2]=v,U2[f+56>>2]=l,U2[f+52>>2]=b,X2[f+48>>2]=0,U2[f+44>>2]=P2(P2(I*W)+P2(a*T))+P2(t*D),U2[f+40>>2]=P2(P2(I*V)+P2(a*y))+P2(t*x),U2[f+36>>2]=P2(P2(I*X)+P2(a*M))+P2(t*p),X2[f+32>>2]=0,U2[f+28>>2]=P2(P2(o*W)+P2(c*T))+P2(k*D),U2[f+24>>2]=P2(P2(o*V)+P2(c*y))+P2(k*x),U2[f+20>>2]=P2(P2(o*X)+P2(c*M))+P2(k*p),X2[f+16>>2]=0,U2[f+12>>2]=P2(P2(e*W)+P2(s*T))+P2(u*D),U2[f+8>>2]=P2(P2(e*V)+P2(s*y))+P2(u*x),U2[f+68>>2]=P2(P2(e*S)+P2(s*R))+P2(u*N),U2[f+4>>2]=P2(P2(e*X)+P2(s*M))+P2(u*p),X2[f>>2]=16272,U2[f+196>>2]=n,U2[f+200>>2]=U2[A+268>>2],N2[X2[X2[r>>2]+64>>2]](r,f,f+224|0,f+208|0),(I=U2[f+200>>2])>2]?U2[A+268>>2]=I:I=P2(1))),K2=f+240|0,P2(I)},function(A,e){e|=0;var r,f=0,i=0,a=0,n=0;if(a=X2[(A|=0)+72>>2]){if((0|(i=X2[e+4>>2]))==X2[e+8>>2]&&!((0|(r=i?i<<1:1))<=(0|i))){if(r&&(X2[6258]=X2[6258]+1,(f=L2(19+(r<<2)|0))&&(X2[(n=f+19&-16)-4>>2]=f)),1<=(0|i))for(a=0,f=i;;)if(X2[a+n>>2]=X2[X2[e+12>>2]+a>>2],a=a+4|0,!(f=f-1|0))break;(f=X2[e+12>>2])&&J2[e+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2]),i=X2[e+4>>2]),X2[e+12>>2]=n,S2[e+16|0]=1,X2[e+8>>2]=r,a=X2[A+72>>2]}X2[e+4>>2]=i+1,X2[X2[e+12>>2]+(i<<2)>>2]=a}},function(A){var e;return X2[(A|=0)>>2]=16024,e=X2[A+48>>2],N2[X2[X2[e>>2]+20>>2]](e,X2[A+64>>2]),e=X2[A+48>>2],N2[X2[X2[e>>2]+16>>2]](e,X2[A+64>>2]),0|A},function(A){var e;X2[(A|=0)>>2]=16024,e=X2[A+48>>2],N2[X2[X2[e>>2]+20>>2]](e,X2[A+64>>2]),e=X2[A+48>>2],N2[X2[X2[e>>2]+16>>2]](e,X2[A+64>>2]),X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n,b,t,o,c,k=0;P2(0),P2(0),P2(0),P2(0),K2=c=K2-144|0,a=U2[e>>2],b=U2[e+16>>2],o=U2[e+32>>2],U2[A+20>>2]<((t=a>2]?i:32)+e>>2]>2]||(a=U2[e+8>>2],b=U2[(i=e+24|0)>>2],o=U2[(n=e+40|0)>>2],U2[A+28>>2]<((t=a>2]?i:n)>>2]>2]||(a=U2[e+4>>2],b=U2[(i=e+20|0)>>2],o=U2[(n=e+36|0)>>2],U2[A+24>>2]<((t=a>2]?i:n)>>2]>2]||(i=X2[A+36>>2],19>2]+4>>2]||(n=X2[A+48>>2],X2[(k=60+c|0)>>2]=1065353216,X2[k+4>>2]=0,t=X2[e+20>>2],X2[(k=112+c|0)>>2]=X2[e+16>>2],X2[k+4>>2]=t,t=X2[e+36>>2],X2[(k=128+c|0)>>2]=X2[e+32>>2],X2[k+4>>2]=t,o=X2[4+(t=e+8|0)>>2],X2[(k=104+c|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[4+(t=e+24|0)>>2],X2[(k=120+c|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[4+(t=e+40|0)>>2],X2[(k=136+c|0)>>2]=X2[t>>2],X2[k+4>>2]=o,X2[92+c>>2]=0,X2[52+c>>2]=1065353216,X2[56+c>>2]=1065353216,X2[44+c>>2]=0,X2[48+c>>2]=0,X2[36+c>>2]=1,X2[40+c>>2]=0,X2[32+c>>2]=16056,k=X2[e+4>>2],X2[96+c>>2]=X2[e>>2],X2[100+c>>2]=k,U2[84+c>>2]=U2[A+56>>2],X2[28+c>>2]=f,X2[24+c>>2]=r,e=X2[A+40>>2],X2[8+c>>2]=e,k=X2[e+8>>2],X2[20+c>>2]=X2[e+12>>2],X2[16+c>>2]=k,a=U2[X2[A+44>>2]+32>>2],X2[12+c>>2]=32+c,e=a>P2(0)?0|N2[X2[X2[n>>2]+8>>2]](n,i,8+c|0,0,2):0|N2[X2[X2[n>>2]+8>>2]](n,i,8+c|0,X2[A+64>>2],1),i=X2[A+44>>2],k=X2[i+8>>2],X2[k+8>>2]==X2[X2[A+40>>2]+8>>2]?(X2[i+8>>2]=8+c,N2[X2[X2[i>>2]+8>>2]](i,r,f)):(k=X2[i+12>>2],X2[i+12>>2]=8+c,N2[X2[X2[i>>2]+12>>2]](i,r,f)),N2[X2[X2[e>>2]+8>>2]](e,X2[A+36>>2],8+c|0,X2[A+52>>2],X2[A+44>>2]),r=X2[A+44>>2],X2[(X2[X2[r+8>>2]+8>>2]==X2[X2[A+40>>2]+8>>2]?8:12)+r>>2]=k,N2[X2[X2[e>>2]>>2]](e),N2[X2[X2[n>>2]+60>>2]](n,e),X2[32+c>>2]=10364,(A=X2[92+c>>2])&&(N2[X2[X2[A>>2]>>2]](A),(A=X2[92+c>>2])&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2]))))))),K2=144+c|0},J0,x0,q0,function(A){return 16196},function(A,e,r){A|=0,e|=0,r|=0,P2(0),P2(0),P2(0),P2(0),P2(0);var f=U2[r>>2],i=U2[r+4>>2],a=U2[r+8>>2],n=P2(P2(P2(f*U2[e+80>>2])+P2(i*U2[e+84>>2]))+P2(a*U2[e+88>>2])),b=P2(P2(P2(f*U2[e+96>>2])+P2(i*U2[e+100>>2]))+P2(a*U2[e+104>>2]));f=P2(P2(P2(f*U2[e+64>>2])+P2(i*U2[e+68>>2]))+P2(a*U2[e+72>>2])),r=X2[(e=(e- -64|0)+((f>2],X2[A>>2]=X2[e>>2],X2[A+4>>2]=r,r=X2[(e=e+8|0)+4>>2],X2[(A=A+8|0)>>2]=X2[e>>2],X2[A+4>>2]=r},function(A,e,r,f){var i,a,n,b,t,o;if(A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0),P2(0),P2(0),1<=(0|f))for(t=A- -64|0;;)if(i=U2[e>>2],a=U2[e+4>>2],n=U2[e+8>>2],o=P2(P2(P2(i*U2[A+80>>2])+P2(a*U2[A+84>>2]))+P2(n*U2[A+88>>2])),b=P2(P2(P2(i*U2[A+96>>2])+P2(a*U2[A+100>>2]))+P2(n*U2[A+104>>2])),i=P2(P2(P2(i*U2[A+64>>2])+P2(a*U2[A+68>>2]))+P2(n*U2[A+72>>2])),n=X2[4+(a=((i>2],X2[r>>2]=X2[a>>2],X2[r+4>>2]=n,o=X2[4+(a=8+a|0)>>2],X2[(n=r+8|0)>>2]=X2[a>>2],X2[4+n>>2]=o,e=e+16|0,r=r+16|0,!(f=f-1|0))break},X1,function(A,e,r){A|=0,e|=0,r|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var f,i,a=U2[A+96>>2],n=U2[A+80>>2],b=U2[A+84>>2],t=U2[A+104>>2],o=U2[A+72>>2],c=U2[A+88>>2],k=U2[A+100>>2],u=U2[A+68>>2],A=U2[A+64>>2];X2[r+12>>2]=0,n=P2(n-A),k=P2(k-u),b=P2(b-u),A=P2(a-A),u=P2(P2(n*k)-P2(b*A)),i=P2((f=u)*u),u=P2(t-o),a=P2(c-o),o=P2(P2(b*u)-P2(a*k)),u=P2(P2(a*A)-P2(n*u)),A=P2(P2(1)/P2(O2(P2(i+P2(P2(o*o)+P2(u*u)))))),a=P2(f*A),U2[r+8>>2]=a,u=P2(u*A),U2[r+4>>2]=u,o=P2(o*A),U2[r>>2]=o,e&&(U2[r+8>>2]=-a,U2[r+4>>2]=-u,U2[r>>2]=-o)},J1,J1,function(A,e,r,f){f|=0,N2[X2[X2[(A|=0)>>2]+108>>2]](A,e|=0,r|=0),N2[X2[X2[A>>2]+108>>2]](A,(e+1|0)%3|0,f)},function(A,e,r){var f,i=X2[(e=(A=((e|=0)<<4)+(A|=0)|0)+72|0)+4>>2];X2[(f=(r|=0)+8|0)>>2]=X2[e>>2],X2[4+f>>2]=i,e=X2[(A=A- -64|0)+4>>2],X2[r>>2]=X2[A>>2],X2[r+4>>2]=e},U1,function(A,e,r,f){N2[X2[X2[(A|=0)>>2]+124>>2]](A,f|=0,e|=0,r|=0)},function(A,e,r){A|=0,e|=0,r=P2(r),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var f,i,a,n,b,t,o,c,k,u,s,l,B=0;return K2=l=K2-32|0,c=U2[A+64>>2],b=P2(U2[A+80>>2]-c),f=U2[A+68>>2],n=P2(U2[A+100>>2]-f),i=P2(U2[A+84>>2]-f),t=P2(U2[A+96>>2]-c),a=P2(P2(b*n)-P2(i*t)),s=P2((o=a)*a),u=i,i=U2[A+72>>2],a=P2(U2[A+104>>2]-i),k=P2(U2[A+88>>2]-i),n=P2(P2(u*a)-P2(k*n)),b=P2(P2(k*t)-P2(b*a)),t=P2(P2(1)/P2(O2(P2(s+P2(P2(n*n)+P2(b*b)))))),a=P2(o*t),n=P2(n*t),b=P2(b*t),f=P2(P2(P2(U2[e+8>>2]*a)+P2(P2(U2[e>>2]*n)+P2(U2[e+4>>2]*b)))-P2(P2(i*a)+P2(P2(c*n)+P2(f*b)))),(c=P2(-r))<=f&&f<=r&&(N2[X2[X2[A>>2]+104>>2]](A,0,16+l|0,l),t=U2[16+l>>2],f=P2(U2[l>>2]-t),k=U2[20+l>>2],i=P2(U2[4+l>>2]-k),r=P2(P2(b*f)-P2(n*i)),s=P2((o=r)*r),r=P2(a*i),u=U2[24+l>>2],i=P2(U2[8+l>>2]-u),r=P2(r-P2(b*i)),f=P2(P2(n*i)-P2(a*f)),i=P2(P2(1)/P2(O2(P2(s+P2(P2(r*r)+P2(f*f)))))),o=P2(o*i),r=P2(r*i),f=P2(f*i),c>P2(P2(P2(U2[e+8>>2]*o)+P2(P2(U2[e>>2]*r)+P2(U2[e+4>>2]*f)))-P2(P2(u*o)+P2(P2(t*r)+P2(k*f))))||(N2[X2[X2[A>>2]+104>>2]](A,1,16+l|0,l),t=U2[16+l>>2],f=P2(U2[l>>2]-t),k=U2[20+l>>2],i=P2(U2[4+l>>2]-k),r=P2(P2(b*f)-P2(n*i)),s=P2((o=r)*r),r=P2(a*i),u=U2[24+l>>2],i=P2(U2[8+l>>2]-u),r=P2(r-P2(b*i)),f=P2(P2(n*i)-P2(a*f)),i=P2(P2(1)/P2(O2(P2(s+P2(P2(r*r)+P2(f*f)))))),o=P2(o*i),r=P2(r*i),f=P2(f*i),c>P2(P2(P2(U2[e+8>>2]*o)+P2(P2(U2[e>>2]*r)+P2(U2[e+4>>2]*f)))-P2(P2(u*o)+P2(P2(t*r)+P2(k*f))))||(N2[X2[X2[A>>2]+104>>2]](A,2,16+l|0,l),o=c,c=U2[16+l>>2],f=P2(U2[l>>2]-c),i=U2[20+l>>2],t=P2(U2[4+l>>2]-i),r=P2(P2(b*f)-P2(n*t)),k=P2((u=r)*r),s=P2(a*t),r=b,b=U2[24+l>>2],t=P2(U2[8+l>>2]-b),r=P2(s-P2(r*t)),a=P2(P2(n*t)-P2(a*f)),n=P2(P2(1)/P2(O2(P2(k+P2(P2(r*r)+P2(a*a)))))),f=P2(u*n),r=P2(r*n),a=P2(a*n),o>P2(P2(P2(U2[e+8>>2]*f)+P2(P2(U2[e>>2]*r)+P2(U2[e+4>>2]*a)))-P2(P2(b*f)+P2(P2(c*r)+P2(i*a))))||(B=1)))),K2=32+l|0,0|B},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var i,a,n=U2[A+96>>2],b=U2[A+80>>2],t=U2[A+84>>2],o=U2[A+104>>2],c=U2[(e=A+72|0)>>2],k=U2[A+88>>2],u=U2[A+100>>2],s=U2[A+68>>2],l=U2[A+64>>2];X2[r+12>>2]=0,b=P2(b-l),u=P2(u-s),t=P2(t-s),l=P2(n-l),s=P2(P2(b*u)-P2(t*l)),a=P2((i=s)*s),s=P2(o-c),n=P2(k-c),c=P2(P2(t*s)-P2(n*u)),s=P2(P2(n*l)-P2(b*s)),l=P2(P2(1)/P2(O2(P2(a+P2(P2(c*c)+P2(s*s)))))),U2[r+8>>2]=i*l,U2[r+4>>2]=s*l,U2[r>>2]=c*l,o=X2[e+4>>2],X2[(r=f+8|0)>>2]=X2[e>>2],X2[r+4>>2]=o,e=X2[A+68>>2],X2[f>>2]=X2[A+64>>2],X2[f+4>>2]=e},A,function(A,e,r,f){var i,a,n;A|=0,e|=0,r|=0,f|=0,P2(0),X2[(f=(K2=r=K2-800|0)+748|0)>>2]=0,X2[f+4>>2]=0,X2[(f=r+760|0)>>2]=0,X2[f+4>>2]=0,X2[r+756>>2]=1065353216,X2[(f=r+768|0)>>2]=0,X2[f+4>>2]=0,X2[(f=r+780|0)>>2]=0,X2[f+4>>2]=0,X2[r+776>>2]=1065353216,X2[(f=r+788|0)>>2]=0,X2[f+4>>2]=0,X2[r+796>>2]=0,X2[r+740>>2]=0,X2[r+744>>2]=0,X2[r+736>>2]=1065353216,X2[r+728>>2]=0,X2[r+732>>2]=0,X2[r+560>>2]=15320,U2[r+724>>2]=U2[A+200>>2],X2[(f=r+528|0)>>2]=0,X2[f+4>>2]=0,X2[r+524>>2]=1065353216,X2[(f=r+536|0)>>2]=0,X2[f+4>>2]=0,X2[r+544>>2]=0,X2[r+508>>2]=0,X2[r+512>>2]=0,X2[r+516>>2]=1065353216,X2[r+520>>2]=1065353216,X2[r+500>>2]=8,X2[r+504>>2]=0,X2[r+496>>2]=14616,X2[r+552>>2]=0,a=U2[A+196>>2],U2[r+532>>2]=a,U2[r+548>>2]=a,X2[(f=r+412|0)>>2]=1065353216,X2[f+4>>2]=0,n=X2[4+(i=e+8|0)>>2],X2[(f=r+456|0)>>2]=X2[i>>2],X2[f+4>>2]=n,i=X2[e+20>>2],X2[(f=r+464|0)>>2]=X2[e+16>>2],X2[f+4>>2]=i,n=X2[4+(i=e+24|0)>>2],X2[(f=r+472|0)>>2]=X2[i>>2],X2[f+4>>2]=n,i=X2[e+36>>2],X2[(f=r+480|0)>>2]=X2[e+32>>2],X2[f+4>>2]=i,n=X2[4+(i=e+40|0)>>2],X2[(f=r+488|0)>>2]=X2[i>>2],X2[f+4>>2]=n,X2[r+444>>2]=0,X2[r+436>>2]=1025758986,X2[r+404>>2]=1065353216,X2[r+408>>2]=1065353216,X2[r+396>>2]=0,X2[r+400>>2]=0,X2[r+388>>2]=1,X2[r+392>>2]=0,X2[r+384>>2]=16056,f=X2[e+4>>2],X2[r+448>>2]=X2[e>>2],X2[r+452>>2]=f,S2[r+356|0]=0,X2[r+332>>2]=953267991,X2[r+8>>2]=15936,X2[r+20>>2]=r+384,X2[r+16>>2]=r+496,X2[r+12>>2]=r+24,S1(r+8|0,A+4|0,A+68|0,r+736|0,r+736|0,r+560|0)&&(a=U2[r+724>>2])>2]&&(U2[A+200>>2]=a),X2[r+384>>2]=10364,(A=X2[r+444>>2])&&(N2[X2[X2[A>>2]>>2]](A),(A=X2[r+444>>2])&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2]))),K2=r+800|0},P1,function(A){n(P1(A|=0))},j1,function(A,e,r,f,i){A|=0,e|=0,r|=0,f|=0,i|=0;var a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C,h,F,Y,m,N,R,x,y,V,D=0,T=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),0),W=P2(0),I=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),0);if(P2(0),P2(0),P2(0),P2(0),(0|(T=X2[A+52>>2]))<1)return P2(P2(1));for(m=(D=J2[A+68|0])?e:r,N=U2[(e=D?r:e)- -64>>2],h=U2[e+60>>2],F=U2[e+(D=56)>>2],Y=U2[e+52>>2],R=U2[e+48>>2],n=U2[e+44>>2],b=U2[e+40>>2],t=U2[e+36>>2],x=U2[e+32>>2],o=U2[e+28>>2],c=U2[e+24>>2],k=U2[e+20>>2],y=U2[e+16>>2],u=U2[e+12>>2],s=U2[e+8>>2],r=X2[e+304>>2],l=U2[e+4>>2],V=X2[e+192>>2],W=P2(1);;)if(X2[e+304>>2]=r+1,r=X2[V+32>>2]+D|0,a=U2[r>>2],B=U2[r-8>>2],v=U2[r-4>>2],d=U2[r-24>>2],Z=U2[r-56>>2],_=U2[r-40>>2],g=U2[r-20>>2],E=U2[r-52>>2],Q=U2[r-36>>2],w=U2[r-16>>2],G=U2[r-48>>2],C=U2[r-32>>2],X2[e+64>>2]=0,X2[e+48>>2]=0,X2[e+32>>2]=0,X2[e+16>>2]=0,U2[e+44>>2]=P2(P2(t*G)+P2(b*C))+P2(n*w),U2[e+40>>2]=P2(P2(t*E)+P2(b*Q))+P2(n*g),U2[e+36>>2]=P2(P2(t*Z)+P2(b*_))+P2(n*d),U2[e+28>>2]=P2(P2(k*G)+P2(c*C))+P2(o*w),U2[e+24>>2]=P2(P2(k*E)+P2(c*Q))+P2(o*g),U2[e+20>>2]=P2(P2(k*Z)+P2(c*_))+P2(o*d),U2[e+12>>2]=P2(P2(l*G)+P2(s*C))+P2(u*w),U2[e+8>>2]=P2(P2(l*E)+P2(s*Q))+P2(u*g),U2[e+4>>2]=P2(P2(l*Z)+P2(s*_))+P2(u*d),U2[e+60>>2]=h+P2(P2(P2(t*B)+P2(b*v))+P2(n*a)),U2[e+56>>2]=F+P2(P2(P2(k*B)+P2(c*v))+P2(o*a)),U2[e+52>>2]=Y+P2(P2(P2(l*B)+P2(s*v))+P2(u*a)),r=X2[X2[A+60>>2]+I>>2],a=P2(N2[X2[X2[r>>2]+12>>2]](r,e,m,f,i)),U2[e+64>>2]=N,U2[e+60>>2]=h,U2[e+56>>2]=F,U2[e+52>>2]=Y,U2[e+48>>2]=R,U2[e+44>>2]=n,U2[e+40>>2]=b,U2[e+36>>2]=t,U2[e+32>>2]=x,U2[e+28>>2]=o,U2[e+24>>2]=c,U2[e+20>>2]=k,U2[e+16>>2]=y,U2[e+12>>2]=u,U2[e+8>>2]=s,U2[e+4>>2]=l,r=X2[e+304>>2]+1|0,X2[e+304>>2]=r,W=a>2])))for(;;)if((r=X2[X2[A+60>>2]+i>>2])&&(N2[X2[X2[r>>2]+16>>2]](r,e),f=X2[A+52>>2]),i=i+4|0,!((0|(a=a+1|0))<(0|f)))break},e,A,f,function(A,e){var r=0,r=A|=0,f=X2[X2[X2[A+4>>2]+4>>2]+32>>2];A=X2[(e|=0)+36>>2],z1(r,X2[64+(f+H2(A,80)|0)>>2],A)},function(A,e,r){A|=0,e|=0,r=P2(r),N2[X2[X2[A>>2]+12>>2]](A,e)},a1,a1,function(A){var e;return X2[(A|=0)>>2]=16644,(e=X2[A+56>>2])&&J2[A+60|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+56>>2]=0,S2[A+60|0]=1,X2[(e=A+48|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+36>>2])&&J2[A+40|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+36>>2]=0,S2[A+40|0]=1,X2[(e=A+28|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+16>>2]=0,S2[A+20|0]=1,X2[(e=A+8|0)>>2]=0,(X2[4+e>>2]=0)|A},function(A){var e;X2[(A|=0)>>2]=16644,(e=X2[A+56>>2])&&J2[A+60|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+56>>2]=0,S2[A+60|0]=1,X2[(e=A+48|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+36>>2])&&J2[A+40|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+36>>2]=0,S2[A+40|0]=1,X2[(e=A+28|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),n(A)},function(A,e,r){A|=0,e|=0,r|=0;var f,i=0,a=0,n=0,b=0,t=0,o=0,c=0,k=0;X2[6370]=X2[6370]+1,b=X2[A+36>>2],i=H2((i=((i=r<<16|e)<<15^-1)+i|0)>>>10^i,9),f=b+((X2[A+12>>2]-1&((i=((i^=i>>>6)<<11^-1)+i|0)>>>16^i))<<2)|0,i=X2[f>>2];A:if(-1!=(0|i)){for(n=X2[A+16>>2],a=i;;){if(t=n+H2(a,12)|0,X2[t+4>>2]==(0|r)&&X2[t>>2]==(0|e))break;if(-1==(0|(a=X2[X2[A+56>>2]+(a<<2)>>2])))break A}c=X2[8+(n+H2(a,12)|0)>>2],r=X2[A+56>>2];e:{if((0|i)!=(0|a)){for(;;)if((0|a)==(0|(i=X2[(o=r+((e=i)<<2)|0)>>2])))break;if(-1!=(0|e)){X2[o>>2]=X2[r+(a<<2)>>2];break e}}X2[f>>2]=X2[r+(a<<2)>>2]}if((0|(f=X2[A+8>>2]-1|0))==(0|a))return X2[A+8>>2]=a,0|c;e:{if(n=n+H2(f,12)|0,e=X2[n+4>>2]<<16|X2[n>>2],e=H2((e=(e<<15^-1)+e|0)>>>10^e,9),o=X2[A+12>>2]-1&((e=((e^=e>>>6)<<11^-1)+e|0)>>>16^e),(0|f)!=(0|(i=X2[(b=b+(o<<2)|0)>>2]))){for(;;)if((0|f)==(0|(i=X2[(k=r+((e=i)<<2)|0)>>2])))break;if(-1!=(0|e)){X2[k>>2]=X2[r+(f<<2)>>2];break e}}X2[b>>2]=X2[r+(f<<2)>>2]}e=X2[n+4>>2],X2[t>>2]=X2[n>>2],X2[t+4>>2]=e,X2[t+8>>2]=X2[n+8>>2],e=X2[A+36>>2]+(o<<2)|0,X2[X2[A+56>>2]+(a<<2)>>2]=X2[e>>2],X2[e>>2]=a,X2[A+8>>2]=X2[A+8>>2]-1}return 0|c},function(A,e,r){A|=0,e|=0,r|=0;var f,i,a=0,n=0,b=0,t=0,o=0,c=0,k=0;X2[6369]=X2[6369]+1,a=H2((a=((a=r<<16|e)<<15^-1)+a|0)>>>10^a,9),f=(a=((a^=a>>>6)<<11^-1)+a|0)>>>16^a,a=X2[A+12>>2];A:{if(-1!=(0|(b=X2[X2[A+36>>2]+((o=f&a-1)<<2)>>2])))for(n=X2[A+16>>2];;){if(t=n+H2(b,12)|0,X2[t+4>>2]==(0|r)&&X2[t>>2]==(0|e))break A;if(-1==(0|(b=X2[X2[A+56>>2]+(b<<2)>>2])))break}e:{r:{if((0|(A=k=X2[(n=A)+8>>2]))==(0|a)){if((0|a)<(0|(A=a?a<<1:1)))break r;A=a}X2[n+8>>2]=A+1,c=X2[n+16>>2];break e}if(A&&(X2[6258]=X2[6258]+1,(b=L2(H2(A,12)+19|0))&&(X2[(c=b+19&-16)-4>>2]=b)),1<=(0|a))for(b=0;;)if(o=X2[n+16>>2]+b|0,i=X2[o+4>>2],X2[(t=b+c|0)>>2]=X2[o>>2],X2[t+4>>2]=i,X2[t+8>>2]=X2[o+8>>2],b=b+12|0,!(a=a-1|0))break;(a=X2[n+16>>2])&&J2[n+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[a-4>>2])),X2[n+16>>2]=c,X2[n+12>>2]=A,S2[n+20|0]=1,X2[n+8>>2]=X2[n+8>>2]+1,O1(n),o=X2[n+12>>2]-1&f}t=H2(k,12)+c|0,X2[t+8>>2]=0,X2[t+4>>2]=r,X2[t>>2]=e,A=X2[n+36>>2]+(o<<2)|0,X2[X2[n+56>>2]+(k<<2)>>2]=X2[A>>2],X2[A>>2]=k}return 0|t},K1,q1,function(A){n(q1(A|=0))},function(A,e,r,f,x){A|=0,e|=0,r|=0,f|=0,x|=0;var y,V,p,M,S,X,J,U,H,i=0,a=0,n=0,b=0,t=P2(0),o=P2(0),c=P2(0),k=P2(0),u=P2(0),s=P2(0),l=0,B=P2(0),v=P2(0),d=0,Z=0,_=0,g=P2(0),E=P2(0),Q=P2(0),w=P2(0),G=P2(0),C=P2(0),h=P2(0),F=P2(0),Y=P2(0),m=P2(0),N=P2(0),R=P2(0),D=P2(0),T=P2(0),P=0,j=0,W=P2(0),z=P2(0),O=0,K=0,L=0,q=P2(0),$=(P2(0),P2(0),P2(0),P2(0),0),I=(P2(0),P2(0),P2(0),P2(0),P2(0),K2-3584|0);if(K2=I,O=X2[e+4>>2],(P=X2[O+72>>2])&&(K=X2[r+4>>2],d=X2[K+72>>2])){if(X2[K+76>>2]!=X2[A+112>>2]||X2[O+76>>2]!=X2[A+108>>2]){if(i=X2[A+84>>2],1<=(0|(n=X2[i+(a=8)>>2]))){for(;;)if((l=X2[X2[i+16>>2]+a>>2])&&(N2[X2[X2[l>>2]>>2]](l),b=X2[A+4>>2],N2[X2[X2[b>>2]+60>>2]](b,l)),a=a+12|0,!(n=n-1|0))break;i=X2[A+84>>2]}L1(i),X2[A+108>>2]=X2[O+76>>2],X2[A+112>>2]=X2[K+76>>2]}if(S2[0|(a=88+I|0)]=1,X2[84+I>>2]=0,X2[76+I>>2]=0,X2[80+I>>2]=0,X2[(i=232+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=240+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=248+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=256+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=264+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=272+I|0)>>2]=0,X2[i+4>>2]=0,X2[280+I>>2]=0,X2[(i=440+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=448+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=456+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=464+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=472+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=480+I|0)>>2]=0,X2[i+4>>2]=0,X2[488+I>>2]=0,X2[(i=648+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=656+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=664+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=672+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=680+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=688+I|0)>>2]=0,X2[i+4>>2]=0,X2[696+I>>2]=0,X2[112+I>>2]=1025,X2[904+I>>2]=0,X2[(i=896+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=888+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=880+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=872+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=864+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=856+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1100+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1108+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1116+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1124+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1132+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1140+I|0)>>2]=0,X2[i+4>>2]=0,X2[1148+I>>2]=0,X2[(i=1308+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1316+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1324+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1332+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1340+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1348+I|0)>>2]=0,X2[i+4>>2]=0,X2[1356+I>>2]=0,X2[956+I>>2]=0,X2[948+I>>2]=0,X2[952+I>>2]=0,X2[976+I>>2]=0,X2[980+I>>2]=1025,X2[1564+I>>2]=0,X2[(i=1556+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1548+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1540+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1532+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1524+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1516+I|0)>>2]=0,X2[i+4>>2]=0,X2[1772+I>>2]=0,X2[(i=1764+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1756+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1748+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1740+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1732+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1724+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1844+I|0)>>2]=0,X2[i+4>>2]=1025,X2[(i=1816+I|0)>>2]=0,X2[i+4>>2]=0,X2[1824+I>>2]=0,X2[(i=1968+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1976+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1984+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=1992+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2e3+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2008+I|0)>>2]=0,X2[i+4>>2]=0,X2[2016+I>>2]=0,X2[2224+I>>2]=0,X2[(i=2216+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2208+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2200+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2192+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2184+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2176+I|0)>>2]=0,X2[i+4>>2]=0,X2[2432+I>>2]=0,X2[(i=2424+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2416+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2408+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2400+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2392+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2384+I|0)>>2]=0,X2[i+4>>2]=0,X2[2640+I>>2]=0,X2[(i=2632+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2624+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2616+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2608+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2600+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2592+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2712+I|0)>>2]=0,X2[i+4>>2]=1025,X2[2692+I>>2]=0,X2[(i=2684+I|0)>>2]=0,X2[i+4>>2]=0,X2[2884+I>>2]=0,X2[(i=2876+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2868+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2860+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2852+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2844+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=2836+I|0)>>2]=0,X2[i+4>>2]=0,X2[3092+I>>2]=0,X2[(i=3084+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3076+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3068+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3060+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3052+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3044+I|0)>>2]=0,X2[i+4>>2]=0,X2[3300+I>>2]=0,X2[(i=3292+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3284+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3276+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3268+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3260+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3252+I|0)>>2]=0,X2[i+4>>2]=0,X2[3508+I>>2]=0,X2[(i=3500+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3492+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3484+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3476+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3468+I|0)>>2]=0,X2[i+4>>2]=0,X2[(i=3460+I|0)>>2]=0,X2[i+4>>2]=0,X2[3580+I>>2]=0,X2[3560+I>>2]=0,X2[(i=3552+I|0)>>2]=0,X2[i+4>>2]=0,l=X2[A+84>>2],S2[0|a]=0,X2[84+I>>2]=112+I,X2[76+I>>2]=0,X2[80+I>>2]=4,!((0|(b=X2[l+8>>2]))<=0)){for(n=0;;){if(a=X2[8+(X2[l+16>>2]+H2(n,12)|0)>>2]){if(N2[X2[X2[a>>2]+16>>2]](a,72+I|0),1<=(0|(a=X2[76+I>>2])))for(Z=b=0;;)if(i=X2[X2[84+I>>2]+b>>2],X2[i+844>>2]&&(X2[x+4>>2]=i,_=X2[i+836>>2],j=X2[X2[x+8>>2]+8>>2],L=i,i=X2[X2[x+12>>2]+8>>2],R2(L,((a=(0|_)==(0|j))?_:i)+4|0,(a?i:j)+4|0),X2[x+4>>2]=0,a=X2[76+I>>2]),b=b+4|0,!((0|(Z=Z+1|0))<(0|a)))break;if((0|a)<=-1)for(X2[80+I>>2]<=-1&&((i=X2[84+I>>2])&&J2[88+I|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),S2[88+I|0]=1,X2[80+I>>2]=0,X2[84+I>>2]=0),b=a<<2;;)if(b=b+4|(X2[X2[84+I>>2]+b>>2]=0),!((i=a)>>>0<=(a=i+1|0)>>>0))break;X2[76+I>>2]=0,b=X2[l+8>>2]}if(!((0|(n=n+1|0))<(0|b)))break}(a=X2[84+I>>2])&&J2[88+I|0]&&(X2[6259]=X2[6259]+1,q2(X2[a-4>>2]))}if(X2[92+I>>2]=f,X2[76+I>>2]=0,X2[72+I>>2]=16748,X2[88+I>>2]=X2[A+4>>2],X2[104+I>>2]=X2[A+72>>2],X2[100+I>>2]=X2[A+84>>2],X2[84+I>>2]=r,f=X2[r+12>>2],t=U2[f+56>>2],X2[80+I>>2]=e,a=X2[e+12>>2],o=U2[a+40>>2],m=U2[f+52>>2],c=U2[a+24>>2],w=U2[f+48>>2],B=U2[a+8>>2],N=U2[a+56>>2],T=U2[a+52>>2],G=U2[a+48>>2],k=U2[a+36>>2],u=U2[a+20>>2],v=U2[a+4>>2],C=U2[f+40>>2],R=U2[f+24>>2],h=U2[f+8>>2],D=U2[f+36>>2],E=U2[f+20>>2],F=U2[f+4>>2],g=U2[a>>2],Q=U2[a+16>>2],s=U2[a+32>>2],Y=U2[f+16>>2],W=U2[f>>2],z=U2[f+32>>2],X2[96+I>>2]=x,(f=X2[P>>2])&&(a=X2[d>>2])){for(T=P2(-T),q=P2(P2(P2(P2(c*T)-P2(B*G))-P2(o*N))+P2(P2(P2(B*w)+P2(c*m))+P2(o*t))),S=P2(P2(P2(P2(u*T)-P2(v*G))-P2(k*N))+P2(P2(P2(v*w)+P2(u*m))+P2(k*t))),m=P2(P2(P2(P2(Q*T)-P2(g*G))-P2(s*N))+P2(P2(P2(g*w)+P2(Q*m))+P2(s*t))),t=U2[x+32>>2],X2[116+I>>2]=a,X2[112+I>>2]=f,w=P2(P2(P2(B*h)+P2(c*R))+P2(o*C)),N=P2(j2(w)),G=P2(P2(P2(B*F)+P2(c*E))+P2(o*D)),T=P2(j2(G)),y=P2(P2(P2(B*W)+P2(c*Y))+P2(o*z)),X=P2(j2(y)),V=P2(P2(P2(v*h)+P2(u*R))+P2(k*C)),J=P2(j2(V)),p=P2(P2(P2(v*F)+P2(u*E))+P2(k*D)),U=P2(j2(p)),M=P2(P2(P2(v*W)+P2(u*Y))+P2(k*z)),H=P2(j2(M)),C=P2(P2(P2(g*h)+P2(Q*R))+P2(s*C)),R=P2(j2(C)),h=P2(P2(P2(g*F)+P2(Q*E))+P2(s*D)),D=P2(j2(h)),g=P2(P2(P2(g*W)+P2(Q*Y))+P2(s*z)),Q=P2(j2(g)),Z=124,i=112+I|0,f=n=128,b=1;;){A:{e:{r:{if(_=X2[(a=(j=(P=b-1|0)<<3)+i|0)>>2],d=X2[a+4>>2],k=U2[d+16>>2],u=U2[d>>2],o=P2(P2(P2(k-u)*P2(.5))+P2(0)),v=U2[d+20>>2],s=U2[d+4>>2],c=P2(P2(P2(v-s)*P2(.5))+P2(0)),E=U2[d+24>>2],F=U2[d+8>>2],B=P2(P2(P2(E-F)*P2(.5))+P2(0)),Y=P2(P2(P2(Q*o)+P2(D*c))+P2(R*B)),k=P2(P2(k+u)*P2(.5)),u=P2(P2(v+s)*P2(.5)),v=P2(P2(E+F)*P2(.5)),s=P2(m+P2(P2(P2(g*k)+P2(h*u))+P2(C*v))),U2[_>>2]<=P2(t+P2(Y+s))&&U2[_+16>>2]>=P2(P2(s-Y)-t)&&(s=P2(P2(P2(H*o)+P2(U*c))+P2(J*B)),E=P2(S+P2(P2(P2(M*k)+P2(p*u))+P2(V*v))),U2[_+4>>2]<=P2(t+P2(s+E))&&U2[_+20>>2]>=P2(P2(E-s)-t)&&(o=P2(P2(P2(X*o)+P2(T*c))+P2(N*B)),c=P2(q+P2(P2(P2(y*k)+P2(G*u))+P2(w*v))),U2[_+8>>2]<=P2(t+P2(o+c))&&U2[_+24>>2]>=P2(P2(c-o)-t)))){if((0|P)<=(0|Z))l=n,a=i;else{if((0|(l=n<<1))<=(0|n))a=i;else if((0|l)<=(0|f))a=i;else{if(a=0,n&&(X2[6258]=X2[6258]+1,(f=L2(19+(n<<4)|0))&&(X2[(a=f+19&-16)-4>>2]=f),!((0|n)<1)))for(Z=a,f=i;;)if(L=X2[f+4>>2],X2[Z>>2]=X2[f>>2],X2[Z+4>>2]=L,Z=Z+8|0,f=f+8|0,!(n=n-1|0))break;$&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),$=1,f=l}Z=l-4|0}if(i=X2[d+40>>2],X2[_+40>>2]){if(n=X2[_+36>>2],i){X2[(i=a+j|0)+4>>2]=X2[d+36>>2],X2[i>>2]=n,n=X2[_+40>>2],X2[(i=(b<<3)+a|0)+4>>2]=X2[d+36>>2],X2[i>>2]=n,n=X2[_+36>>2],X2[i+12>>2]=X2[d+40>>2],X2[i+8>>2]=n,n=X2[_+40>>2],X2[i+20>>2]=X2[d+40>>2],X2[i+16>>2]=n,b=b+3|0;break e}X2[(i=a+j|0)+4>>2]=d,X2[i>>2]=n,i=X2[_+40>>2],X2[(n=(b<<3)+a|0)+4>>2]=d,X2[n>>2]=i;break r}if(i){X2[(i=a+j|0)+4>>2]=X2[d+36>>2],X2[i>>2]=_,X2[(i=(b<<3)+a|0)+4>>2]=X2[d+40>>2],X2[i>>2]=_;break r}N2[X2[X2[72+I>>2]+8>>2]](72+I|0,_,d),n=l,i=a}b=P;break A}b=b+1|0}n=l,i=a}if(!b)break}i&&$&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2]))}if(l=X2[A+84>>2],1<=X2[l+8>>2])for(i=0;;){if(f=(b=H2(i,12))+X2[l+16>>2]|0,(n=X2[f+8>>2])&&(f=X2[O+32>>2]+H2(X2[f>>2],80)|0,Z=X2[f+64>>2],a=X2[e+12>>2],W=U2[a+52>>2],z=U2[a+56>>2],s=U2[f+48>>2],m=U2[f+52>>2],w=U2[f+56>>2],N=U2[f+4>>2],G=U2[f+20>>2],C=U2[f+36>>2],R=U2[f+8>>2],h=U2[f+24>>2],D=U2[f+40>>2],t=U2[a+20>>2],o=U2[a+24>>2],E=U2[f>>2],c=U2[a+36>>2],F=U2[f+16>>2],B=U2[a+40>>2],Y=U2[f+32>>2],T=U2[a+48>>2],k=U2[a+8>>2],u=U2[a>>2],v=U2[a+4>>2],g=U2[a+16>>2],Q=U2[a+32>>2],X2[172+I>>2]=0,X2[156+I>>2]=0,X2[140+I>>2]=0,X2[124+I>>2]=0,U2[144+I>>2]=P2(P2(Q*E)+P2(c*F))+P2(B*Y),U2[128+I>>2]=P2(P2(g*E)+P2(t*F))+P2(o*Y),U2[112+I>>2]=P2(P2(u*E)+P2(v*F))+P2(k*Y),U2[152+I>>2]=P2(P2(Q*R)+P2(c*h))+P2(B*D),U2[148+I>>2]=P2(P2(Q*N)+P2(c*G))+P2(B*C),U2[136+I>>2]=P2(P2(g*R)+P2(t*h))+P2(o*D),U2[132+I>>2]=P2(P2(g*N)+P2(t*G))+P2(o*C),U2[120+I>>2]=P2(P2(u*R)+P2(v*h))+P2(k*D),U2[116+I>>2]=P2(P2(u*N)+P2(v*G))+P2(k*C),U2[168+I>>2]=z+P2(P2(P2(Q*s)+P2(c*m))+P2(B*w)),U2[164+I>>2]=W+P2(P2(P2(g*s)+P2(t*m))+P2(o*w)),U2[160+I>>2]=T+P2(P2(P2(u*s)+P2(v*m))+P2(k*w)),N2[X2[X2[Z>>2]+8>>2]](Z,112+I|0,56+I|0,40+I|0),t=U2[x+32>>2],U2[56+I>>2]=U2[56+I>>2]-t,U2[60+I>>2]=U2[60+I>>2]-t,U2[64+I>>2]=U2[64+I>>2]-t,U2[40+I>>2]=t+U2[40+I>>2],U2[44+I>>2]=t+U2[44+I>>2],U2[48+I>>2]=t+U2[48+I>>2],f=X2[K+32>>2]+H2(X2[4+(b+X2[l+16>>2]|0)>>2],80)|0,Z=X2[f+64>>2],a=X2[r+12>>2],z=U2[a+52>>2],T=U2[a+56>>2],m=U2[f+48>>2],w=U2[f+52>>2],N=U2[f+56>>2],G=U2[f+4>>2],C=U2[f+20>>2],R=U2[f+36>>2],h=U2[f+8>>2],D=U2[f+24>>2],E=U2[f+40>>2],o=U2[a+20>>2],c=U2[a+24>>2],F=U2[f>>2],B=U2[a+36>>2],Y=U2[f+16>>2],k=U2[a+40>>2],W=U2[f+32>>2],q=U2[a+48>>2],u=U2[a+8>>2],v=U2[a>>2],g=U2[a+4>>2],Q=U2[a+16>>2],s=U2[a+32>>2],X2[172+I>>2]=0,X2[156+I>>2]=0,X2[140+I>>2]=0,X2[124+I>>2]=0,U2[144+I>>2]=P2(P2(s*F)+P2(B*Y))+P2(k*W),U2[128+I>>2]=P2(P2(Q*F)+P2(o*Y))+P2(c*W),U2[112+I>>2]=P2(P2(v*F)+P2(g*Y))+P2(u*W),U2[152+I>>2]=P2(P2(s*h)+P2(B*D))+P2(k*E),U2[148+I>>2]=P2(P2(s*G)+P2(B*C))+P2(k*R),U2[136+I>>2]=P2(P2(Q*h)+P2(o*D))+P2(c*E),U2[132+I>>2]=P2(P2(Q*G)+P2(o*C))+P2(c*R),U2[120+I>>2]=P2(P2(v*h)+P2(g*D))+P2(u*E),U2[116+I>>2]=P2(P2(v*G)+P2(g*C))+P2(u*R),U2[168+I>>2]=T+P2(P2(P2(s*m)+P2(B*w))+P2(k*N)),U2[164+I>>2]=z+P2(P2(P2(Q*m)+P2(o*w))+P2(c*N)),U2[160+I>>2]=q+P2(P2(P2(v*m)+P2(g*w))+P2(u*N)),N2[X2[X2[Z>>2]+8>>2]](Z,112+I|0,24+I|0,8+I|0),o=P2(U2[24+I>>2]-t),U2[24+I>>2]=o,c=P2(U2[28+I>>2]-t),U2[28+I>>2]=c,B=P2(U2[32+I>>2]-t),U2[32+I>>2]=B,k=P2(t+U2[8+I>>2]),U2[8+I>>2]=k,u=P2(t+U2[16+I>>2]),U2[16+I>>2]=u,t=P2(t+U2[12+I>>2]),(U2[12+I>>2]=t)>2]||c>U2[44+I>>2]||k>2]||o>U2[40+I>>2]||u>2]||B>U2[48+I>>2])){if(N2[X2[X2[n>>2]>>2]](n),f=X2[A+4>>2],N2[X2[X2[f>>2]+60>>2]](f,n),f=b+X2[l+16>>2]|0,d=X2[f+4>>2],_=X2[f>>2],(0|(b=X2[A+92>>2]))==X2[A+96>>2]&&!((0|(f=b?b<<1:1))<=(0|b))){if(f?(n=0,X2[6258]=X2[6258]+1,(a=L2(H2(f,12)+19|0))&&(X2[(n=a+19&-16)-4>>2]=a)):n=0,1<=(0|b))for(a=0;;)if(P=X2[A+100>>2]+a|0,j=X2[P+4>>2],X2[(Z=a+n|0)>>2]=X2[P>>2],X2[Z+4>>2]=j,X2[Z+8>>2]=X2[P+8>>2],a=a+12|0,!(b=b-1|0))break;(a=X2[A+100>>2])&&J2[A+104|0]&&(X2[6259]=X2[6259]+1,q2(X2[a-4>>2])),X2[A+100>>2]=n,S2[A+104|0]=1,X2[A+96>>2]=f,b=X2[A+92>>2]}f=X2[A+100>>2]+H2(b,12)|0,X2[f+8>>2]=0,X2[f+4>>2]=d,X2[f>>2]=_,X2[A+92>>2]=X2[A+92>>2]+1}if(!((0|(i=i+1|0))>2]))break}if(1<=X2[A+92>>2])for(b=0,a=4;;)if(e=X2[A+84>>2],r=X2[A+100>>2]+a|0,N2[X2[X2[e>>2]+8>>2]](e,X2[r-4>>2],X2[r>>2]),a=a+12|0,!((0|(b=b+1|0))>2]))break;(e=X2[A+100>>2])&&J2[A+104|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+100>>2]=0,X2[A+92>>2]=0,X2[A+96>>2]=0,S2[A+104|0]=1}else j1(A,e,r,f,x);K2=3584+I|0},function(A,e,r,f,i){return P2(P2(0))},function(A,e){e|=0;var r,f=0,i=0,a=0,f=8;if(A=X2[(A|=0)+84>>2],1<=(0|(i=X2[A+8>>2])))for(;;)if((r=X2[X2[A+16>>2]+f>>2])&&(N2[X2[X2[r>>2]+16>>2]](r,e),i=X2[A+8>>2]),f=f+12|0,!((0|(a=a+1|0))<(0|i)))break},A,function(A,e,r){A|=0,e|=0,r|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var f,i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C,h,F,Y,m,N=0,R=(P2(0),0),D=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2-240|0);if(K2=D,X2[A+4>>2]=X2[A+4>>2]+1,w=X2[r+36>>2],F=H2(w,80),m=X2[A+12>>2],Y=X2[m+4>>2]+32|0,N=X2[64+(F+X2[Y>>2]|0)>>2],r=X2[A+8>>2],G=X2[e+36>>2],e=X2[X2[r+4>>2]+32>>2]+H2(G,80)|0,R=X2[e+64>>2],r=X2[r+12>>2],s=U2[r+52>>2],k=U2[r+56>>2],a=U2[r+24>>2],b=U2[r+20>>2],f=U2[r+40>>2],i=U2[r+36>>2],C=U2[r+48>>2],t=U2[r+8>>2],o=U2[r>>2],c=U2[r+4>>2],u=U2[r+16>>2],n=U2[r+32>>2],X2[236+D>>2]=r=0,X2[220+D>>2]=0,X2[204+D>>2]=0,l=U2[e+8>>2],B=U2[e+24>>2],v=U2[e+40>>2],U2[216+D>>2]=P2(P2(n*l)+P2(i*B))+P2(f*v),d=U2[e+4>>2],Z=U2[e+20>>2],_=U2[e+36>>2],U2[212+D>>2]=P2(P2(n*d)+P2(i*Z))+P2(f*_),U2[200+D>>2]=P2(P2(u*l)+P2(b*B))+P2(a*v),U2[196+D>>2]=P2(P2(u*d)+P2(b*Z))+P2(a*_),g=k,k=U2[e+48>>2],E=U2[e+52>>2],Q=U2[e+56>>2],U2[232+D>>2]=g+P2(P2(P2(n*k)+P2(i*E))+P2(f*Q)),U2[228+D>>2]=s+P2(P2(P2(u*k)+P2(b*E))+P2(a*Q)),X2[188+D>>2]=0,g=n,n=U2[e>>2],s=i,i=U2[e+16>>2],h=f,f=U2[e+32>>2],U2[208+D>>2]=P2(P2(g*n)+P2(s*i))+P2(h*f),U2[192+D>>2]=P2(P2(u*n)+P2(b*i))+P2(a*f),U2[184+D>>2]=P2(P2(o*l)+P2(c*B))+P2(t*v),U2[180+D>>2]=P2(P2(o*d)+P2(c*Z))+P2(t*_),U2[176+D>>2]=P2(P2(o*n)+P2(c*i))+P2(t*f),U2[224+D>>2]=C+P2(P2(P2(o*k)+P2(c*E))+P2(t*Q)),e=X2[m+12>>2],s=U2[e+52>>2],k=U2[e+56>>2],a=U2[e+24>>2],b=U2[e+20>>2],f=U2[e+40>>2],i=U2[e+36>>2],m=X2[Y>>2],C=U2[e+48>>2],t=U2[e+8>>2],o=U2[e>>2],c=U2[e+4>>2],u=U2[e+16>>2],n=U2[e+32>>2],X2[172+D>>2]=0,X2[156+D>>2]=0,X2[140+D>>2]=0,l=U2[(e=m+F|0)+8>>2],B=U2[e+24>>2],v=U2[e+40>>2],U2[152+D>>2]=P2(P2(n*l)+P2(i*B))+P2(f*v),d=U2[e+4>>2],Z=U2[e+20>>2],_=U2[e+36>>2],U2[148+D>>2]=P2(P2(n*d)+P2(i*Z))+P2(f*_),U2[136+D>>2]=P2(P2(u*l)+P2(b*B))+P2(a*v),U2[132+D>>2]=P2(P2(u*d)+P2(b*Z))+P2(a*_),g=k,k=U2[e+48>>2],E=U2[e+52>>2],Q=U2[e+56>>2],U2[168+D>>2]=g+P2(P2(P2(n*k)+P2(i*E))+P2(f*Q)),U2[164+D>>2]=s+P2(P2(P2(u*k)+P2(b*E))+P2(a*Q)),X2[124+D>>2]=0,g=n,n=U2[e>>2],s=i,i=U2[e+16>>2],h=f,f=U2[e+32>>2],U2[144+D>>2]=P2(P2(g*n)+P2(s*i))+P2(h*f),U2[128+D>>2]=P2(P2(u*n)+P2(b*i))+P2(a*f),U2[120+D>>2]=P2(P2(o*l)+P2(c*B))+P2(t*v),U2[116+D>>2]=P2(P2(o*d)+P2(c*Z))+P2(t*_),U2[112+D>>2]=P2(P2(o*n)+P2(c*i))+P2(t*f),U2[160+D>>2]=C+P2(P2(P2(o*k)+P2(c*E))+P2(t*Q)),N2[X2[X2[R>>2]+8>>2]](R,176+D|0,96+D|0,80+D|0),N2[X2[X2[N>>2]+8>>2]](N,112+D|0,D+64|0,48+D|0),a=U2[X2[A+24>>2]+32>>2],b=P2(U2[100+D>>2]-a),U2[100+D>>2]=b,f=P2(U2[104+D>>2]-a),U2[104+D>>2]=f,i=P2(a+U2[80+D>>2]),U2[80+D>>2]=i,t=P2(a+U2[84+D>>2]),U2[84+D>>2]=t,o=P2(a+U2[88+D>>2]),U2[88+D>>2]=o,c=P2(U2[96+D>>2]-a),e=0,(U2[96+D>>2]=c)>U2[48+D>>2]||(e=0,i>2]||(e=1)),f>U2[56+D>>2]||o>2]||(r=e),!(b>U2[52+D>>2]||1^r|t>2])){X2[40+D>>2]=-1,X2[28+D>>2]=R,e=X2[A+8>>2],X2[24+D>>2]=e,X2[32+D>>2]=X2[e+8>>2],X2[36+D>>2]=176+D,X2[44+D>>2]=G,X2[6371]=X2[6371]+1,X2[16+D>>2]=-1,X2[4+D>>2]=N,e=X2[A+12>>2],X2[D>>2]=e,X2[8+D>>2]=X2[e+8>>2],X2[20+D>>2]=w,N=X2[A+28>>2],e=X2[N+12>>2],r=X2[N+28>>2],X2[12+D>>2]=112+D,R=e-1|0,e=H2((e=((e=w<<16|G)<<15^-1)+e|0)>>>10^e,9),e=R&((e=((e^=e>>>6)<<11^-1)+e|0)>>>16^e);A:{if(!((0|r)<=(0|e))&&-1!=(0|(e=X2[X2[N+36>>2]+(e<<2)>>2])))for(R=X2[N+16>>2];;){if(r=R+H2(e,12)|0,X2[r+4>>2]==(0|w)&&X2[r>>2]==(0|G))break A;if(-1==(0|(e=X2[X2[N+56>>2]+(e<<2)>>2])))break}r=0}a>P2(0)?(e=X2[A+16>>2],r=0|N2[X2[X2[e>>2]+8>>2]](e,24+D|0,D,0,2)):r?r=X2[r+8>>2]:(e=X2[A+16>>2],r=0|N2[X2[X2[e>>2]+8>>2]](e,24+D|0,D,X2[A+32>>2],1),e=X2[A+28>>2],Y=0|N2[X2[X2[e>>2]+12>>2]](e,G,w),m=r,X2[8+Y>>2]=m),e=X2[A+24>>2],N=X2[e+12>>2],R=X2[e+8>>2],X2[e+12>>2]=D,X2[e+8>>2]=24+D,N2[X2[X2[e>>2]+8>>2]](e,-1,G),e=X2[A+24>>2],N2[X2[X2[e>>2]+12>>2]](e,-1,w),N2[X2[X2[r>>2]+8>>2]](r,24+D|0,D,X2[A+20>>2],X2[A+24>>2]),A=X2[A+24>>2],X2[A+8>>2]=R,X2[A+12>>2]=N}K2=240+D|0},o1,e,A,function(A,e,r,f,i){},$1,o1,function(A){var e,r;return X2[(A|=0)>>2]=16928,J2[A+8|0]&&(e=X2[A+12>>2])&&(r=X2[A+4>>2],N2[X2[X2[r>>2]+16>>2]](r,e)),0|A},function(A){var e,r;X2[(A|=0)>>2]=16928,J2[A+8|0]&&(e=X2[A+12>>2])&&(r=X2[A+4>>2],N2[X2[X2[r>>2]+16>>2]](r,e)),n(A)},function(A,e,r,f,i){A|=0,e|=0,r|=0,f|=0,i|=0;var a,n,b,t,o=P2(0),c=P2(0),k=P2(0);P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2=f=K2-32|0,(A=X2[A+12>>2])&&(X2[i+4>>2]=A,X2[A+844>>2]=0,A=X2[e+4>>2],o=P2(U2[A+36>>2]*U2[A+20>>2]),A=X2[r+4>>2],a=P2(U2[A+36>>2]*U2[A+20>>2]),n=P2(o+a),A=X2[e+12>>2],e=X2[r+12>>2],r=U2[e+48>>2],b=P2(U2[A+48>>2]-r),t=U2[e+52>>2],c=P2(U2[A+52>>2]-t),e=U2[e+56>>2],k=P2(U2[A+56>>2]-e),o=P2(O2(P2(P2(P2(b*b)+P2(c*c))+P2(k*k)))),P2(n+U2[i+32>>2])>2]=0,X2[f+28>>2]=0,X2[f+16>>2]=1065353216,X2[f+20>>2]=0,n=P2(o-n),o>P2(1.1920928955078125e-7)?(X2[f+28>>2]=0,o=P2(P2(1)/o),k=P2(k*o),U2[f+24>>2]=k,c=P2(c*o),U2[f+20>>2]=c,o=P2(b*o),U2[f+16>>2]=o):(o=P2(1),k=P2(0),c=P2(0)),X2[f+12>>2]=0,U2[f+8>>2]=P2(a*k)+e,U2[f+4>>2]=P2(a*c)+t,U2[f>>2]=P2(a*o)+r,N2[X2[X2[i>>2]+16>>2]](i,f+16|0,f,n))),K2=f+32|0},$1,A4,A,e4,function(A){var e,r;return X2[(A|=0)>>2]=17064,J2[A+8|0]&&(e=X2[A+12>>2])&&(r=X2[A+4>>2],N2[X2[X2[r>>2]+16>>2]](r,e)),0|A},function(A){var e,r;X2[(A|=0)>>2]=17064,J2[A+8|0]&&(e=X2[A+12>>2])&&(r=X2[A+4>>2],N2[X2[X2[r>>2]+16>>2]](r,e)),n(A)},function(A,e,r,f,i){var a,n,b,t,o,c,k,u,s,l,B;e|=0,r|=0,f|=0,i|=0,K2=B=K2-160|0,(a=X2[(A|=0)+12>>2])&&(X2[i+4>>2]=a,u=J2[A+16|0],b=X2[(n=u?r:e)+4>>2],X2[152+B>>2]=X2[(r=u?e:r)+4>>2],X2[148+B>>2]=b,X2[144+B>>2]=17004,U2[156+B>>2]=U2[a+848>>2]+U2[i+32>>2],X2[136+B>>2]=1566444395,e=X2[n+12>>2],b=X2[4+(n=e+8|0)>>2],X2[(a=16+B|0)>>2]=X2[n>>2],X2[4+a>>2]=b,a=X2[e>>2],n=X2[e+4>>2],t=X2[4+(o=e+24|0)>>2],X2[(b=32+B|0)>>2]=X2[o>>2],X2[4+b>>2]=t,b=X2[e+16>>2],o=X2[e+20>>2],k=X2[4+(c=e+40|0)>>2],X2[(t=48+B|0)>>2]=X2[c>>2],X2[4+t>>2]=k,t=X2[e+32>>2],c=X2[e+36>>2],l=X2[4+(s=e+56|0)>>2],X2[(k=B+64|0)>>2]=X2[s>>2],X2[4+k>>2]=l,X2[8+B>>2]=a,X2[12+B>>2]=n,X2[24+B>>2]=b,X2[28+B>>2]=o,X2[40+B>>2]=t,X2[44+B>>2]=c,a=X2[e+52>>2],X2[56+B>>2]=X2[e+48>>2],X2[60+B>>2]=a,e=X2[r+12>>2],n=X2[(r=e+8|0)+4>>2],X2[(a=80+B|0)>>2]=X2[r>>2],X2[4+a>>2]=n,r=X2[e+4>>2],X2[72+B>>2]=X2[e>>2],X2[76+B>>2]=r,a=X2[e+20>>2],X2[(r=88+B|0)>>2]=X2[e+16>>2],X2[r+4>>2]=a,n=X2[4+(a=e+24|0)>>2],X2[(r=96+B|0)>>2]=X2[a>>2],X2[r+4>>2]=n,n=X2[4+(a=e+40|0)>>2],X2[(r=112+B|0)>>2]=X2[a>>2],X2[r+4>>2]=n,a=X2[e+36>>2],X2[(r=104+B|0)>>2]=X2[e+32>>2],X2[r+4>>2]=a,a=X2[e+52>>2],X2[(r=120+B|0)>>2]=X2[e+48>>2],X2[r+4>>2]=a,a=X2[(e=e+56|0)+4>>2],X2[(r=128+B|0)>>2]=X2[e>>2],X2[r+4>>2]=a,e4(144+B|0,8+B|0,i,X2[f+20>>2],u),J2[A+8|0]&&(A=X2[i+4>>2],X2[A+844>>2]&&((0|(e=X2[A+836>>2]))!=(0|(r=X2[X2[i+8>>2]+8>>2]))?R2(A,X2[X2[i+12>>2]+8>>2]+4|0,r+4|0):R2(A,e+4|0,X2[X2[i+12>>2]+8>>2]+4|0)))),K2=160+B|0},$1,A4,A,r4,function(A){var e,r;return X2[(A|=0)>>2]=17196,J2[A+8|0]&&(e=X2[A+12>>2])&&(r=X2[A+4>>2],N2[X2[X2[r>>2]+16>>2]](r,e)),0|A},function(A){var e,r;X2[(A|=0)>>2]=17196,J2[A+8|0]&&(e=X2[A+12>>2])&&(r=X2[A+4>>2],N2[X2[X2[r>>2]+16>>2]](r,e)),n(A)},function(A,e,r,f,i){var a,n,b,t,o,c;e|=0,r|=0,f|=0,i|=0,K2=c=K2-160|0,(t=X2[(A|=0)+12>>2])&&(X2[i+4>>2]=t,t=X2[e+4>>2],o=X2[r+4>>2],e=X2[e+12>>2],b=X2[4+(n=e+8|0)>>2],X2[(a=32+c|0)>>2]=X2[n>>2],X2[4+a>>2]=b,b=X2[4+(n=e+24|0)>>2],X2[(a=48+c|0)>>2]=X2[n>>2],X2[4+a>>2]=b,b=X2[4+(n=e+40|0)>>2],X2[(a=c+64|0)>>2]=X2[n>>2],X2[4+a>>2]=b,b=X2[4+(n=e+56|0)>>2],X2[(a=80+c|0)>>2]=X2[n>>2],X2[4+a>>2]=b,X2[152+c>>2]=1566444395,a=X2[e+4>>2],X2[24+c>>2]=X2[e>>2],X2[28+c>>2]=a,a=X2[e+20>>2],X2[40+c>>2]=X2[e+16>>2],X2[44+c>>2]=a,a=X2[e+36>>2],X2[56+c>>2]=X2[e+32>>2],X2[60+c>>2]=a,a=X2[e+52>>2],X2[72+c>>2]=X2[e+48>>2],X2[76+c>>2]=a,e=X2[r+12>>2],n=X2[(r=e+8|0)+4>>2],X2[(a=96+c|0)>>2]=X2[r>>2],X2[4+a>>2]=n,a=X2[e+20>>2],X2[(r=104+c|0)>>2]=X2[e+16>>2],X2[r+4>>2]=a,n=X2[4+(a=e+24|0)>>2],X2[(r=112+c|0)>>2]=X2[a>>2],X2[r+4>>2]=n,a=X2[e+36>>2],X2[(r=120+c|0)>>2]=X2[e+32>>2],X2[r+4>>2]=a,n=X2[4+(a=e+40|0)>>2],X2[(r=128+c|0)>>2]=X2[a>>2],X2[r+4>>2]=n,a=X2[e+52>>2],X2[(r=136+c|0)>>2]=X2[e+48>>2],X2[r+4>>2]=a,n=X2[4+(a=e+56|0)>>2],X2[(r=144+c|0)>>2]=X2[a>>2],X2[r+4>>2]=n,r=X2[e+4>>2],X2[88+c>>2]=X2[e>>2],X2[92+c>>2]=r,X2[16+c>>2]=o,X2[12+c>>2]=t,X2[8+c>>2]=17144,r4(8+c|0,24+c|0,i,X2[f+20>>2],0),J2[A+8|0]&&(A=X2[i+4>>2],X2[A+844>>2]&&((0|(e=X2[A+836>>2]))!=(0|(r=X2[X2[i+8>>2]+8>>2]))?R2(A,X2[X2[i+12>>2]+8>>2]+4|0,r+4|0):R2(A,e+4|0,X2[X2[i+12>>2]+8>>2]+4|0)))),K2=160+c|0},$1,A4,function(A){var e,r;return X2[(A|=0)>>2]=17268,J2[A+8|0]&&(e=X2[A+12>>2])&&(r=X2[A+4>>2],N2[X2[X2[r>>2]+16>>2]](r,e)),0|A},function(A){var e,r;X2[(A|=0)>>2]=17268,J2[A+8|0]&&(e=X2[A+12>>2])&&(r=X2[A+4>>2],N2[X2[X2[r>>2]+16>>2]](r,e)),n(A)},function(A,x,y,e,r){A|=0,x|=0,y|=0,e|=0,r|=0;var f,i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,V,p,M,S,X,J,U,H,P,j,z,O,K,L,q,G=P2(0),C=P2(0),h=P2(0),F=P2(0),Y=P2(0),m=P2(0),N=(P2(0),P2(0)),R=P2(0),D=(P2(0),P2(0)),T=(P2(0),P2(0)),W=(P2(0),P2(0),0),I=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0)),$=(P2(0),0),A2=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0)),e2=(P2(0),P2(0),0),r2=P2(0),f2=P2(0),i2=P2(0),a2=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0));if(P2(0),P2(0),P2(0),P2(0),P2(0),K2=e=K2+-64|0,X2[A+12>>2]){if(b=J2[A+16|0],f=X2[($=b?x:y)+12>>2],a=U2[f+56>>2],A2=U2[f+52>>2],Q=U2[f+48>>2],i=X2[(b=b?y:x)+12>>2],w=U2[i+56>>2],V=U2[i+52>>2],p=U2[i+48>>2],W=X2[b+4>>2],G=U2[i+32>>2],C=U2[i>>2],F=U2[i+16>>2],k=U2[i+36>>2],u=U2[i+20>>2],s=U2[i+4>>2],h=U2[f+40>>2],m=U2[f+24>>2],Y=U2[f+8>>2],N=U2[f+36>>2],c=U2[f+20>>2],l=U2[f+4>>2],b=X2[$+4>>2],B=U2[f+32>>2],T=U2[i+40>>2],v=U2[f+16>>2],I=U2[i+24>>2],d=U2[f>>2],R=U2[i+8>>2],X2[e+60>>2]=0,H=P2(P2(P2(R*l)+P2(I*c))+P2(T*N)),g=P2(-U2[(i=b+60|0)>>2]),P=P2(P2(P2(R*d)+P2(I*v))+P2(T*B)),E=U2[b+56>>2],j=P2(P2(P2(R*Y)+P2(I*m))+P2(T*h)),T=U2[(e2=b- -64|0)>>2],U2[e+56>>2]=P2(P2(H*g)-P2(P*E))-P2(j*T),t=P2(P2(P2(s*l)+P2(u*c))+P2(k*N)),n=P2(P2(P2(s*d)+P2(u*v))+P2(k*B)),o=P2(P2(P2(s*Y)+P2(u*m))+P2(k*h)),U2[e+52>>2]=P2(P2(t*g)-P2(E*n))-P2(T*o),Z=P2(P2(P2(C*l)+P2(F*c))+P2(G*N)),_=P2(P2(P2(C*d)+P2(F*v))+P2(G*B)),M=P2(P2(P2(C*Y)+P2(F*m))+P2(G*h)),U2[e+48>>2]=P2(P2(Z*g)-P2(E*_))-P2(T*M),N2[X2[X2[W>>2]+64>>2]](e,W,e+48|0),f=X2[$+12>>2],r2=U2[f+48>>2],T=U2[f+32>>2],I=U2[f+16>>2],R=U2[f+8>>2],g=U2[f+4>>2],E=U2[f>>2],f2=U2[f+56>>2],i2=U2[f+52>>2],X=U2[f+40>>2],J=U2[f+36>>2],D=U2[f+24>>2],a2=U2[f+20>>2],U=U2[b+72>>2],G=U2[e2>>2],C=U2[b+56>>2],F=U2[i>>2],f=X2[A+12>>2],z=U2[f+848>>2],k=U2[e+8>>2],u=U2[e>>2],s=U2[e+4>>2],X2[r+4>>2]=f,K=P2(P2(P2(p*Y)+P2(V*m))+P2(w*h)),S=m,m=P2(-A2),A2=P2(P2(K+P2(P2(P2(S*m)-P2(Y*Q))-P2(h*a)))+P2(P2(P2(M*u)+P2(o*s))+P2(j*k))),Y=P2(P2(P2(P2(P2(p*d)+P2(V*v))+P2(w*B))+P2(P2(P2(v*m)-P2(d*Q))-P2(B*a)))+P2(P2(P2(_*u)+P2(n*s))+P2(P*k))),N=P2(P2(P2(P2(P2(p*l)+P2(V*c))+P2(w*N))+P2(P2(P2(c*m)-P2(l*Q))-P2(N*a)))+P2(P2(P2(Z*u)+P2(t*s))+P2(H*k))),(h=P2(P2(P2(G*A2)+P2(P2(C*Y)+P2(F*N)))-U))>2]=0,U2[e+56>>2]=P2(P2(C*T)+P2(F*J))+P2(G*X),U2[e+52>>2]=P2(P2(C*I)+P2(F*a2))+P2(G*D),U2[e+48>>2]=P2(P2(E*C)+P2(g*F))+P2(R*G),X2[e+44>>2]=0,m=P2(Y-P2(C*h)),Y=P2(N-P2(F*h)),N=P2(A2-P2(G*h)),U2[e+40>>2]=P2(P2(P2(m*T)+P2(Y*J))+P2(N*X))+f2,U2[e+36>>2]=P2(P2(P2(m*I)+P2(Y*a2))+P2(N*D))+i2,U2[e+32>>2]=P2(P2(R*N)+P2(P2(E*m)+P2(g*Y)))+r2,N2[X2[X2[r>>2]+16>>2]](r,e+48|0,e+32|0,h)),!(6>2]||X2[X2[r+4>>2]+844>>2]>=X2[A+24>>2]||(m=U2[b+64>>2],Y=P2(j2(m))>P2(.7071067690849304)?(h=U2[b+60>>2],Y=P2(P2(1)/P2(O2(P2(P2(m*m)+P2(h*h))))),h=P2(h*Y),m=P2(Y*P2(-m)),P2(0)):(h=U2[b+56>>2],Y=U2[b+60>>2],N=P2(P2(1)/P2(O2(P2(P2(h*h)+P2(Y*Y))))),m=P2(h*N),h=P2(0),P2(N*P2(-Y))),c=o0(N=P2(P2(m2(P2(P2(.019999999552965164)/P2(N2[X2[X2[W>>2]+16>>2]](W))),P2(.39269909262657166)))*P2(.5))),$=X2[A+20>>2],g=c0(N),(0|$)<1)))for(S=h,h=P2(c/P2(O2(P2(P2(P2(Y*Y)+P2(m*m))+P2(h*h))))),E=P2(S*h),X=P2(m*h),J=P2(Y*h),e2=0;;)if(i=J2[A+16|0],f=X2[(q=i?x:y)+12>>2],a2=U2[f+56>>2],U=U2[f+52>>2],A2=U2[f+48>>2],i=X2[(W=i?y:x)+12>>2],H=U2[i+56>>2],P=U2[i+52>>2],j=U2[i+48>>2],L=X2[W+4>>2],h=U2[f+40>>2],m=U2[f+8>>2],Y=U2[f+24>>2],N=U2[f+36>>2],c=U2[f+4>>2],l=U2[f+20>>2],W=X2[q+4>>2],B=U2[f+32>>2],Q=U2[i+40>>2],w=U2[i+32>>2],V=U2[i+36>>2],v=U2[f>>2],p=U2[i+8>>2],k=U2[i>>2],u=U2[i+4>>2],d=U2[f+16>>2],s=U2[i+24>>2],T=U2[i+16>>2],I=U2[i+20>>2],G=U2[b+64>>2],C=U2[b+56>>2],a=U2[b+60>>2],X2[e+44>>2]=0,F=P2(P2(P2(P2(6.2831854820251465)/P2(0|$))*P2(0|e2))*P2(.5)),R=P2(o0(F)/P2(O2(P2(P2(P2(C*C)+P2(a*a))+P2(G*G))))),G=P2(G*R),C=P2(C*R),F=c0(F),a=P2(a*R),t=P2(P2(E*C)+P2(P2(P2(X*F)-P2(g*a))-P2(J*G))),n=P2(P2(E*G)+P2(P2(X*a)+P2(P2(g*F)+P2(J*C)))),o=P2(P2(X*G)+P2(P2(P2(J*F)-P2(g*C))-P2(E*a))),Z=P2(P2(J*a)+P2(P2(P2(E*F)-P2(g*G))-P2(X*C))),R=P2(P2(P2(G*t)+P2(P2(C*n)+P2(F*o)))-P2(a*Z)),D=P2(P2(P2(C*Z)+P2(P2(F*t)+P2(a*n)))-P2(G*o)),_=P2(P2(P2(a*o)+P2(P2(G*n)+P2(F*Z)))-P2(C*t)),G=P2(P2(P2(P2(F*n)-P2(C*o))-P2(a*t))-P2(G*Z)),C=P2(P2(2)/P2(P2(P2(P2(R*R)+P2(D*D))+P2(_*_))+P2(G*G))),F=P2(_*C),M=P2(R*F),a=P2(D*C),r2=P2(G*a),t=P2(M+r2),f2=P2(D*F),n=P2(R*C),i2=P2(G*n),C=P2(f2-i2),z=P2(R*n),O=P2(D*a),D=P2(P2(1)-P2(z+O)),n=P2(P2(P2(w*t)+P2(V*C))+P2(Q*D)),o=P2(P2(P2(k*t)+P2(u*C))+P2(p*D)),C=P2(P2(P2(T*t)+P2(I*C))+P2(s*D)),D=P2(-U2[(i=W+60|0)>>2]),t=U2[W+56>>2],Z=U2[($=W- -64|0)>>2],U2[e+40>>2]=P2(P2(P2(P2(N*n)+P2(P2(c*o)+P2(l*C)))*D)-P2(t*P2(P2(B*n)+P2(P2(v*o)+P2(d*C)))))-P2(Z*P2(P2(h*n)+P2(P2(m*o)+P2(Y*C)))),C=P2(f2+i2),n=P2(R*a),o=P2(G*F),G=P2(n-o),_=P2(_*F),F=P2(P2(1)-P2(z+_)),a=P2(P2(Q*C)+P2(P2(w*G)+P2(V*F))),R=P2(P2(p*C)+P2(P2(k*G)+P2(u*F))),G=P2(P2(s*C)+P2(P2(T*G)+P2(I*F))),U2[e+36>>2]=P2(P2(P2(P2(N*a)+P2(P2(c*R)+P2(l*G)))*D)-P2(t*P2(P2(B*a)+P2(P2(v*R)+P2(d*G)))))-P2(Z*P2(P2(h*a)+P2(P2(m*R)+P2(Y*G)))),G=P2(M-r2),C=P2(n+o),F=P2(P2(1)-P2(O+_)),a=P2(P2(Q*G)+P2(P2(V*C)+P2(w*F))),R=P2(P2(p*G)+P2(P2(u*C)+P2(k*F))),G=P2(P2(s*G)+P2(P2(I*C)+P2(T*F))),U2[e+32>>2]=P2(P2(P2(P2(N*a)+P2(P2(c*R)+P2(l*G)))*D)-P2(t*P2(P2(B*a)+P2(P2(v*R)+P2(d*G)))))-P2(Z*P2(P2(h*a)+P2(P2(m*R)+P2(Y*G)))),N2[X2[X2[L>>2]+64>>2]](e+48|0,L,e+32|0),f=X2[q+12>>2],z=U2[f+48>>2],t=U2[f+32>>2],n=U2[f+16>>2],o=U2[f+8>>2],Z=U2[f+4>>2],_=U2[f>>2],O=U2[f+56>>2],L=U2[f+52>>2],M=U2[f+40>>2],r2=U2[f+36>>2],f2=U2[f+24>>2],i2=U2[f+20>>2],q=U2[W+72>>2],G=U2[$>>2],C=U2[W+56>>2],F=U2[i>>2],f=X2[A+12>>2],S=U2[f+848>>2],a=U2[e+56>>2],R=U2[e+48>>2],D=U2[e+52>>2],X2[r+4>>2]=f,K=S,U=P2(-U),S=P2(P2(P2(P2(P2(j*m)+P2(P*Y))+P2(H*h))+P2(P2(P2(Y*U)-P2(m*A2))-P2(h*a2)))+P2(P2(P2(R*P2(P2(P2(k*m)+P2(T*Y))+P2(w*h)))+P2(D*P2(P2(P2(u*m)+P2(I*Y))+P2(V*h))))+P2(a*P2(P2(P2(p*m)+P2(s*Y))+P2(Q*h))))),m=P2(P2(P2(P2(P2(j*v)+P2(P*d))+P2(H*B))+P2(P2(P2(d*U)-P2(v*A2))-P2(B*a2)))+P2(P2(P2(R*P2(P2(P2(k*v)+P2(T*d))+P2(w*B)))+P2(D*P2(P2(P2(u*v)+P2(I*d))+P2(V*B))))+P2(a*P2(P2(P2(p*v)+P2(s*d))+P2(Q*B))))),Y=P2(P2(P2(P2(P2(j*c)+P2(P*l))+P2(H*N))+P2(P2(P2(l*U)-P2(c*A2))-P2(N*a2)))+P2(P2(P2(R*P2(P2(P2(k*c)+P2(T*l))+P2(w*N)))+P2(D*P2(P2(P2(u*c)+P2(I*l))+P2(V*N))))+P2(a*P2(P2(P2(p*c)+P2(s*l))+P2(Q*N))))),(h=P2(P2(P2(G*S)+P2(P2(C*m)+P2(F*Y)))-q))>2]=0,U2[e+40>>2]=P2(P2(C*t)+P2(F*r2))+P2(G*M),U2[e+36>>2]=P2(P2(C*n)+P2(F*i2))+P2(G*f2),U2[e+32>>2]=P2(P2(_*C)+P2(Z*F))+P2(o*G),X2[e+28>>2]=0,m=P2(m-P2(C*h)),Y=P2(Y-P2(F*h)),N=P2(S-P2(G*h)),U2[e+24>>2]=P2(P2(P2(m*t)+P2(Y*r2))+P2(N*M))+O,U2[e+20>>2]=P2(P2(P2(m*n)+P2(Y*i2))+P2(N*f2))+L,U2[e+16>>2]=P2(P2(o*N)+P2(P2(_*m)+P2(Z*Y)))+z,N2[X2[X2[r>>2]+16>>2]](r,e+32|0,e+16|0,h)),!((0|(e2=e2+1|0))<(0|($=X2[A+20>>2]))))break;J2[A+8|0]&&X2[X2[A+12>>2]+844>>2]&&(A=X2[r+4>>2],X2[A+844>>2]&&((0|(x=X2[A+836>>2]))!=(0|(y=X2[X2[r+8>>2]+8>>2]))?R2(A,X2[X2[r+12>>2]+8>>2]+4|0,y+4|0):R2(A,x+4|0,X2[X2[r+12>>2]+8>>2]+4|0)))}K2=e- -64|0},$1,A4,e,A,function(A,e,r,f,i,a,n,x,y,b){A|=0,e|=0,r|=0,f|=0,i|=0,a|=0,n|=0,x|=0,y|=0,b|=0;var V,p,M,S,t,o=P2(0),c=P2(0),k=P2(0),u=P2(0),s=P2(0),l=P2(0),B=P2(0),v=P2(0),d=0,Z=P2(0),_=0,g=P2(0),E=P2(0),Q=0,w=P2(0),G=P2(0),C=P2(0),h=P2(0),F=P2(0),Y=P2(0),m=P2(0),N=0,R=P2(0),D=P2(0),T=P2(0),W=0,I=0;P2(0),P2(0),P2(0),X2[12+(K2=t=K2-19056|0)>>2]=0,U2[t>>2]=U2[a+48>>2]-U2[i+48>>2],U2[8+t>>2]=U2[(A=a+56|0)>>2]-U2[(e=i+56|0)>>2],U2[4+t>>2]=U2[(b=a+52|0)>>2]-U2[(d=i+52|0)>>2],X2[18916+t>>2]=f,X2[18912+t>>2]=r,c=U2[a+20>>2],u=U2[a+36>>2],s=U2[(_=i+20|0)>>2],k=U2[(Q=i+36|0)>>2],B=U2[(N=i+24|0)>>2],l=U2[a+24>>2],o=U2[i+40>>2],v=U2[a+40>>2],Z=U2[a+32>>2],E=U2[a>>2],C=U2[a+16>>2],h=U2[a+4>>2],w=U2[i+32>>2],G=U2[i>>2],F=U2[i+16>>2],Y=U2[i+4>>2],m=U2[i+8>>2],g=U2[a+8>>2],X2[18964+t>>2]=0,X2[18948+t>>2]=0,X2[18932+t>>2]=0,R=P2(P2(P2(m*g)+P2(B*l))+P2(o*v)),U2[18960+t>>2]=R,D=P2(P2(P2(Y*g)+P2(s*l))+P2(k*v)),U2[18956+t>>2]=D,l=P2(P2(P2(G*g)+P2(F*l))+P2(w*v)),U2[18952+t>>2]=l,v=P2(P2(P2(m*h)+P2(B*c))+P2(o*u)),U2[18944+t>>2]=v,g=P2(P2(P2(Y*h)+P2(s*c))+P2(k*u)),U2[18940+t>>2]=g,c=P2(P2(P2(G*h)+P2(F*c))+P2(w*u)),U2[18936+t>>2]=c,u=P2(P2(P2(E*m)+P2(C*B))+P2(Z*o)),U2[18928+t>>2]=u,s=P2(P2(P2(E*Y)+P2(C*s))+P2(Z*k)),U2[18924+t>>2]=s,k=P2(P2(P2(E*G)+P2(C*F))+P2(Z*w)),U2[18920+t>>2]=k,B=U2[_>>2],Z=U2[Q>>2],E=U2[N>>2],C=U2[b>>2],h=U2[d>>2],w=U2[A>>2],G=U2[e>>2],F=U2[i>>2],Y=U2[i+16>>2],m=U2[i+32>>2],T=U2[i+4>>2],V=U2[i+8>>2],p=U2[a+48>>2],M=U2[i+48>>2],X2[19036+t>>2]=0,X2[19028+t>>2]=0,X2[19012+t>>2]=0,U2[19008+t>>2]=R,U2[19004+t>>2]=v,U2[19e3+t>>2]=u,X2[18996+t>>2]=0,U2[18992+t>>2]=D,U2[18988+t>>2]=g,U2[18984+t>>2]=s,X2[18980+t>>2]=0,U2[18976+t>>2]=l,U2[18972+t>>2]=c,c=P2(p-M),u=P2(C-h),l=o,o=P2(w-G),U2[19024+t>>2]=P2(P2(V*c)+P2(E*u))+P2(l*o),U2[19020+t>>2]=P2(P2(c*T)+P2(u*B))+P2(o*Z),U2[19016+t>>2]=P2(P2(c*F)+P2(u*Y))+P2(o*m),X2[19032+t>>2]=70,U2[18968+t>>2]=k,X2[(A=18664+t|0)>>2]=0,X2[A+4>>2]=0,X2[18656+t>>2]=0,X2[18660+t>>2]=0,X2[18892+t>>2]=0,X2[18896+t>>2]=0,X2[18904+t>>2]=2,X2[18672+t>>2]=0,X2[28+t>>2]=0,o=U2[8+t>>2],U2[24+t>>2]=-o,s=U2[4+t>>2],U2[20+t>>2]=-s,k=U2[t>>2],U2[16+t>>2]=-k;A:{e:{r:{f:{i:{if(1==(0|f4(18528+t|0,18912+t|0,16+t|0))){for(X2[(A=t+64|0)>>2]=0,X2[A+4>>2]=0,X2[72+t>>2]=0,X2[18508+t>>2]=0,X2[16+t>>2]=9,X2[18512+t>>2]=0,X2[18516+t>>2]=0,X2[56+t>>2]=0,b=14336,e=A=X2[60+t>>2]=0;;)if(X2[(d=(16+t|0)+b|0)+4148>>2]=A,d=d+4100|(X2[d+4144>>2]=0),A&&(X2[A+44>>2]=d),A=18452+(H2(0-e|0,56)+t|0)|0,X2[18520+t>>2]=d,e=e+1|0,!(b=b-56|0))break;if(X2[18524+t>>2]=256,d=X2[18900+t>>2],X[d+32>>2]<2)break i;if(!function A(e){var r=0,f=0,i=0,a=0,n=P2(0),b=P2(0),t=P2(0),o=P2(0),c=P2(0),k=0,u=P2(0),s=P2(0),l=P2(0),B=P2(0);a:{n:{b:{t:{o:{switch(r=X2[e+372>>2],X2[r+32>>2]-1|0){case 3:break b;case 2:break t;case 1:break o;case 0:break;default:break n;}if(X2[r+32>>2]=2,X2[r+20>>2]=0,i=X2[e+364>>2]-1|0,X2[e+364>>2]=i,k=r,r=X2[348+((i<<2)+e|0)>>2],X2[k+4>>2]=r,K(e,P2(1),P2(0),P2(0),r),i=1,A(e))break a;if(r=X2[e+372>>2],i=X2[r+32>>2]-1|0,f=X2[(i<<2)+r>>2],X2[348+((X2[e+364>>2]<<2)+e|0)>>2]=f,X2[r+32>>2]=i,r=X2[e+372>>2],a=X2[r+32>>2],X2[r+32>>2]=a+(i=1),X2[(r=r+(a<<2)|0)>>2]=f,X2[r+16>>2]=0,K(e,P2(-1),P2(-0),P2(-0),f),A(e))break a;if(r=X2[e+372>>2],i=X2[r+32>>2]-1|0,f=X2[(i<<2)+r>>2],X2[348+((X2[e+364>>2]<<2)+e|0)>>2]=f,X2[r+32>>2]=i,r=X2[e+372>>2],a=X2[r+32>>2],X2[r+32>>2]=a+(i=1),X2[(r=r+(a<<2)|0)>>2]=f,X2[r+16>>2]=0,K(e,P2(0),P2(1),P2(0),f),A(e))break a;if(r=X2[e+372>>2],i=X2[r+32>>2]-1|0,f=X2[(i<<2)+r>>2],X2[348+((X2[e+364>>2]<<2)+e|0)>>2]=f,X2[r+32>>2]=i,r=X2[e+372>>2],a=X2[r+32>>2],X2[r+32>>2]=a+(i=1),X2[(r=r+(a<<2)|0)>>2]=f,X2[r+16>>2]=0,K(e,P2(-0),P2(-1),P2(-0),f),A(e))break a;if(r=X2[e+372>>2],i=X2[r+32>>2]-1|0,f=X2[(i<<2)+r>>2],X2[348+((X2[e+364>>2]<<2)+e|0)>>2]=f,X2[r+32>>2]=i,r=X2[e+372>>2],a=X2[r+32>>2],X2[r+32>>2]=a+(i=1),X2[(r=r+(a<<2)|0)>>2]=f,X2[r+16>>2]=0,K(e,P2(0),P2(0),P2(1),f),A(e))break a;if(r=X2[e+372>>2],i=X2[r+32>>2]-1|0,f=X2[(i<<2)+r>>2],X2[348+((X2[e+364>>2]<<2)+e|0)>>2]=f,X2[r+32>>2]=i,r=X2[e+372>>2],a=X2[r+32>>2],X2[r+32>>2]=a+(i=1),X2[(r=r+(a<<2)|0)>>2]=f,X2[r+16>>2]=0,K(e,P2(-0),P2(-0),P2(-1),f),A(e))break a;f=X2[e+364>>2],X2[e+364>>2]=f+1,r=X2[e+372>>2],i=X2[r+32>>2]-1|0,X2[r+32>>2]=i,X2[348+((f<<2)+e|0)>>2]=X2[r+(i<<2)>>2];break n}if(i=1,f=X2[r+4>>2],a=X2[r>>2],s=P2(U2[f+16>>2]-U2[a+16>>2]),b=P2(s*P2(0)),l=P2(U2[f+20>>2]-U2[a+20>>2]),n=P2(b-l),t=P2(l*P2(0)),B=P2(U2[f+24>>2]-U2[a+24>>2]),u=P2(B*P2(0)),o=P2(t-u),c=P2(B-b),P2(P2(n*n)+P2(P2(o*o)+P2(c*c)))>P2(0)){if(X2[r+32>>2]=3,X2[r+24>>2]=0,f=X2[e+364>>2]-1|0,X2[e+364>>2]=f,k=r,r=X2[348+((f<<2)+e|0)>>2],K(e,o,c,n,X2[k+8>>2]=r),A(e))break a;if(r=X2[e+372>>2],i=X2[r+32>>2]-1|0,f=X2[(i<<2)+r>>2],X2[348+((X2[e+364>>2]<<2)+e|0)>>2]=f,X2[r+32>>2]=i,r=X2[e+372>>2],a=X2[r+32>>2],X2[r+32>>2]=a+(i=1),X2[(r=r+(a<<2)|0)>>2]=f,X2[r+16>>2]=0,K(e,P2(-o),P2(-c),P2(-n),f),A(e))break a;f=X2[e+364>>2],X2[e+364>>2]=f+1,r=X2[e+372>>2],i=X2[r+32>>2]-1|0,X2[r+32>>2]=i,X2[348+((f<<2)+e|0)>>2]=X2[r+(i<<2)>>2]}if(n=P2(s-t),o=P2(t-B),c=P2(u-b),P2(P2(n*n)+P2(P2(o*o)+P2(c*c)))>P2(0)){if(a=X2[e+364>>2]-1|0,X2[e+364>>2]=a,r=X2[e+372>>2],f=X2[r+32>>2],X2[r+32>>2]=f+(i=1),X2[16+(r=r+(f<<2)|0)>>2]=0,k=r,r=X2[348+((a<<2)+e|0)>>2],K(e,o,c,n,X2[k>>2]=r),A(e))break a;if(r=X2[e+372>>2],i=X2[r+32>>2]-1|0,f=X2[(i<<2)+r>>2],X2[348+((X2[e+364>>2]<<2)+e|0)>>2]=f,X2[r+32>>2]=i,r=X2[e+372>>2],a=X2[r+32>>2],X2[r+32>>2]=a+(i=1),X2[(r=r+(a<<2)|0)>>2]=f,X2[r+16>>2]=0,K(e,P2(-o),P2(-c),P2(-n),f),A(e))break a;f=X2[e+364>>2],X2[e+364>>2]=f+1,r=X2[e+372>>2],i=X2[r+32>>2]-1|0,X2[r+32>>2]=i,X2[348+((f<<2)+e|0)>>2]=X2[r+(i<<2)>>2]}if(i=1,b=P2(b-t),n=P2(l-u),t=P2(u-s),!(P2(P2(b*b)+P2(P2(n*n)+P2(t*t)))>P2(0)))break n;if(a=X2[e+364>>2]-1|0,X2[e+364>>2]=a,r=X2[e+372>>2],f=X2[r+32>>2],X2[r+32>>2]=f+1,X2[16+(r=r+(f<<2)|0)>>2]=0,k=r,r=X2[348+((a<<2)+e|0)>>2],K(e,n,t,b,X2[k>>2]=r),A(e))break a;if(r=X2[e+372>>2],i=X2[r+32>>2]-1|0,f=X2[(i<<2)+r>>2],X2[348+((X2[e+364>>2]<<2)+e|0)>>2]=f,X2[r+32>>2]=i,r=X2[e+372>>2],a=X2[r+32>>2],X2[r+32>>2]=a+(i=1),X2[(r=r+(a<<2)|0)>>2]=f,X2[r+16>>2]=0,K(e,P2(-n),P2(-t),P2(-b),f),A(e))break a;f=X2[e+364>>2],X2[e+364>>2]=f+1,r=X2[e+372>>2],i=X2[r+32>>2]-1|0,X2[r+32>>2]=i,X2[348+((f<<2)+e|0)>>2]=X2[r+(i<<2)>>2];break n}if(i=1,f=X2[r+4>>2],a=X2[r>>2],b=U2[a+16>>2],t=P2(U2[f+16>>2]-b),k=X2[r+8>>2],n=U2[a+20>>2],u=P2(U2[k+20>>2]-n),n=P2(U2[f+20>>2]-n),o=P2(U2[k+16>>2]-b),b=P2(P2(t*u)-P2(n*o)),l=n,n=U2[a+24>>2],c=P2(U2[k+24>>2]-n),s=P2(U2[f+24>>2]-n),n=P2(P2(l*c)-P2(s*u)),t=P2(P2(s*o)-P2(t*c)),!(P2(P2(b*b)+P2(P2(n*n)+P2(t*t)))>P2(0)))break n;if(X2[(f=r+28|0)>>2]=0,X2[f+4>>2]=4,f=X2[e+364>>2]-1|0,X2[e+364>>2]=f,k=r,r=X2[348+((f<<2)+e|0)>>2],K(e,n,t,b,X2[k+12>>2]=r),A(e))break a;if(r=X2[e+372>>2],i=X2[r+32>>2]-1|0,f=X2[(i<<2)+r>>2],X2[348+((X2[e+364>>2]<<2)+e|0)>>2]=f,X2[r+32>>2]=i,r=X2[e+372>>2],a=X2[r+32>>2],X2[r+32>>2]=a+(i=1),X2[(r=r+(a<<2)|0)>>2]=f,X2[r+16>>2]=0,K(e,P2(-n),P2(-t),P2(-b),f),A(e))break a;f=X2[e+364>>2],X2[e+364>>2]=f+1,r=X2[e+372>>2],i=X2[r+32>>2]-1|0,X2[r+32>>2]=i,X2[348+((f<<2)+e|0)>>2]=X2[r+(i<<2)>>2];break n}if(i=1,e=X2[r>>2],f=X2[r+12>>2],b=U2[f+16>>2],u=P2(U2[e+16>>2]-b),a=X2[r+4>>2],n=U2[f+20>>2],o=P2(U2[a+20>>2]-n),r=X2[r+8>>2],t=U2[f+24>>2],c=P2(U2[r+24>>2]-t),s=P2(U2[e+20>>2]-n),l=P2(U2[a+24>>2]-t),B=P2(U2[r+16>>2]-b),t=P2(U2[e+24>>2]-t),b=P2(U2[a+16>>2]-b),n=P2(U2[r+20>>2]-n),(b=P2(P2(P2(P2(u*o)*c)+P2(P2(P2(P2(P2(s*l)*B)+P2(P2(t*b)*n))-P2(P2(u*l)*n))-P2(P2(s*b)*c)))-P2(P2(t*o)*B)))>P2(0)|b>2]){for(b=X2[18516+t>>2],e=X2[18524+t>>2];;)if((_=X2[A+48>>2])&&(X2[_+44>>2]=X2[A+44>>2]),(_=X2[A+44>>2])&&(X2[_+48>>2]=X2[A+48>>2]),X2[18512+t>>2]==(0|A)&&(X2[18512+t>>2]=X2[A+48>>2]),X2[A+44>>2]=0,X2[A+48>>2]=X2[18520+t>>2],(_=X2[18520+t>>2])&&(X2[_+44>>2]=A),b=b-1|0,X2[18520+t>>2]=A,e=e+1|0,!(A=X2[18512+t>>2]))break;X2[18524+t>>2]=e,X2[18516+t>>2]=b}if(X2[18508+t>>2]=0,X2[16+t>>2]=0,b=X2[d>>2],e=X2[d+12>>2],c=U2[e+16>>2],l=P2(U2[b+16>>2]-c),A=X2[d+4>>2],u=U2[e+20>>2],v=P2(U2[A+20>>2]-u),_=X2[d+8>>2],B=U2[e+24>>2],Z=P2(U2[_+24>>2]-B),E=P2(U2[b+20>>2]-u),C=P2(U2[A+24>>2]-B),h=P2(U2[_+16>>2]-c),B=P2(U2[b+24>>2]-B),c=P2(U2[A+16>>2]-c),u=P2(U2[_+20>>2]-u),P2(P2(P2(P2(l*v)*Z)+P2(P2(P2(P2(P2(E*C)*h)+P2(P2(B*c)*u))-P2(P2(l*C)*u))-P2(P2(E*c)*Z)))-P2(P2(B*v)*h))>2]=b,X2[d>>2]=A,H=X2[d+16>>2],X2[d+16>>2]=X2[d+20>>2],X2[d+20>>2]=H,e=b):(e=A,A=b),e=a4(16+t|0,A,e,_,1),_=a4(16+t|0,X2[d+4>>2],X2[d>>2],X2[d+12>>2],1),N=a4(16+t|0,X2[d+8>>2],X2[d+4>>2],X2[d+12>>2],1),Q=a4(16+t|0,X2[d>>2],X2[d+8>>2],X2[d+12>>2],1),4!=X2[18516+t>>2])break i;if(A=X2[18512+t>>2],o=U2[A+16>>2],b=X2[A+48>>2]){for(o=P2(o*o);;)if(c=U2[b+16>>2],A=(d=(c=P2(c*c))>2]))break;o=U2[A+16>>2]}for(d=X2[A+28>>2],W=X2[A+24>>2],I=X2[A+20>>2],u=U2[A+12>>2],s=U2[A+8>>2],k=U2[A+4>>2],c=U2[A>>2],X2[e+32>>2]=_,S2[e+52|0]=0,X2[_+32>>2]=e,S2[_+52|0]=0,X2[e+36>>2]=N,S2[e+53|0]=0,X2[N+32>>2]=e,S2[N+52|0]=1,X2[e+40>>2]=Q,S2[e+54|0]=0,X2[Q+32>>2]=e,S2[Q+52|0]=2,X2[_+36>>2]=Q,S2[_+53|0]=2,X2[Q+40>>2]=_,S2[Q+54|0]=1,X2[_+40>>2]=N,S2[_+54|0]=1,X2[N+36>>2]=_,S2[0|(e=N+53|0)]=2,S2[e+1|0]=1,X2[N+40>>2]=Q,X2[Q+36>>2]=N,S2[Q+53|0]=2,_=X2[16+t>>2]=0;;){a:{n:{if(!((e=X2[18508+t>>2])>>>0<=127)){X2[16+t>>2]=6;break a}if(S2[A+55|0]=_=_+1|0,X2[19048+t>>2]=0,X2[19040+t>>2]=0,X2[19044+t>>2]=0,X2[18508+t>>2]=e+1,K(18528+t|0,U2[A>>2],U2[(b=A+4|0)>>2],U2[(Q=A+8|0)>>2],N=(e=(16+t|0)+(e<<5)|0)+60|0),!(P2(P2(P2(P2(U2[A>>2]*U2[e+76>>2])+P2(U2[b>>2]*U2[e+80>>2]))+P2(U2[Q>>2]*U2[e+84>>2]))-U2[A+16>>2])>P2(9999999747378752e-20))){X2[16+t>>2]=7;break a}for(b=0,e=32;;){if(!(Q=function A(e,r,f,i,a,n){var b,t,o=0;if(J2[i+55|0]!=(0|r))if(t=X2[17336+(b=a<<2)>>2],P2(P2(P2(P2(U2[i>>2]*U2[f+16>>2])+P2(U2[i+4>>2]*U2[f+20>>2]))+P2(U2[i+8>>2]*U2[f+24>>2]))-U2[i+16>>2])>2],X2[e+b>>2],f,0))return X2[e+32>>2]=i,S2[e+52|0]=a,S2[52+(i+a|0)|0]=0,X2[32+((a<<2)+i|0)>>2]=e,(r=X2[n>>2])?(X2[r+36>>2]=e,S2[r+53|0]=2,X2[e+40>>2]=r,S2[e+54|0]=1):X2[n+4>>2]=e,X2[n>>2]=e,X2[n+8>>2]=X2[n+8>>2]+1,1}else A(e,S2[i+55|0]=r,f,X2[32+((t<<2)+i|0)>>2],J2[52+(i+t|0)|0],n)&&(a=r,r=X2[17348+b>>2],A(e,a,f,X2[32+((r<<2)+i|0)>>2],J2[52+(r+i|0)|0],n)&&((r=X2[i+48>>2])&&(X2[r+44>>2]=X2[i+44>>2]),(r=X2[i+44>>2])&&(X2[r+48>>2]=X2[i+48>>2]),X2[e+18496>>2]==(0|i)&&(X2[e+18496>>2]=X2[i+48>>2]),X2[i+44>>2]=0,X2[i+48>>2]=X2[e+18504>>2],X2[(r=e+18500|0)>>2]=X2[r>>2]-1,(r=X2[e+18504>>2])&&(X2[r+44>>2]=i),X2[e+18504>>2]=i,X2[(e=e+18508|0)>>2]=X2[e>>2]+(o=1)));return o}(16+t|0,_,N,X2[A+e>>2],J2[52+(A+b|0)|0],19040+t|0)))break n;if(e=e+4|0,S=b>>>0<2,b=b+1|0,!S)break}}if(Q&2>2]){if(e=X2[19040+t>>2],S2[e+53|0]=2,b=X2[19044+t>>2],X2[e+36>>2]=b,X2[b+40>>2]=e,S2[b+54|0]=1,(e=X2[A+48>>2])&&(X2[e+44>>2]=X2[A+44>>2]),(e=X2[A+44>>2])&&(X2[e+48>>2]=X2[A+48>>2]),X2[18512+t>>2]==(0|A)&&(X2[18512+t>>2]=X2[A+48>>2]),X2[A+44>>2]=0,X2[A+48>>2]=X2[18520+t>>2],X2[18516+t>>2]=X2[18516+t>>2]-1,(e=X2[18520+t>>2])&&(X2[e+44>>2]=A),X2[18520+t>>2]=A,X2[18524+t>>2]=X2[18524+t>>2]+1,A=X2[18512+t>>2],o=U2[A+16>>2],b=X2[A+48>>2]){for(o=P2(o*o);;)if(c=U2[b+16>>2],A=(e=(c=P2(c*c))>2]))break;o=U2[A+16>>2]}if(d=X2[A+28>>2],W=X2[A+24>>2],I=X2[A+20>>2],u=U2[A+12>>2],s=U2[A+8>>2],k=U2[A+4>>2],c=U2[A>>2],255!=(0|_))continue}else X2[16+t>>2]=4}break}if(U2[68+t>>2]=u,U2[t+64>>2]=s,U2[60+t>>2]=k,U2[72+t>>2]=o,U2[56+t>>2]=c,A=36+t|0,c=P2(c*o),B=P2(U2[W+16>>2]-c),e=d+20|0,u=P2(k*o),k=P2(U2[e>>2]-u),l=P2(U2[(b=W+20|0)>>2]-u),v=P2(U2[d+16>>2]-c),Z=P2(P2(B*k)-P2(l*v)),o=P2(s*o),s=P2(U2[d+24>>2]-o),g=P2(l*s),l=P2(U2[(_=W+24|0)>>2]-o),k=P2(g-P2(l*k)),g=P2(k*k),k=P2(P2(l*v)-P2(B*s)),k=P2(O2(P2(P2(Z*Z)+P2(g+P2(k*k))))),U2[A>>2]=k,X2[20+t>>2]=I,Q=40+t|0,B=P2(U2[d+16>>2]-c),l=P2(U2[(N=I+20|0)>>2]-u),v=P2(U2[e>>2]-u),Z=P2(U2[I+16>>2]-c),E=P2(P2(B*l)-P2(v*Z)),g=v,v=P2(U2[(e=I+24|0)>>2]-o),l=P2(P2(g*v)-P2(s*l)),s=P2(P2(s*Z)-P2(B*v)),s=P2(O2(P2(P2(E*E)+P2(P2(l*l)+P2(s*s))))),U2[Q>>2]=s,X2[52+t>>2]=3,X2[28+t>>2]=d,X2[24+t>>2]=W,g=P2((v=k)+s),k=P2(U2[I+16>>2]-c),B=P2(U2[b>>2]-u),u=P2(U2[N>>2]-u),c=P2(U2[W+16>>2]-c),l=P2(P2(k*B)-P2(u*c)),Z=u,u=P2(U2[_>>2]-o),o=P2(U2[e>>2]-o),B=P2(P2(Z*u)-P2(o*B)),o=P2(P2(o*c)-P2(k*u)),c=P2(O2(P2(P2(l*l)+P2(P2(B*B)+P2(o*o))))),o=P2(g+c),U2[A>>2]=v/o,U2[44+t>>2]=c/o,U2[Q>>2]=s/o,9!=X2[16+t>>2]){if(X2[52+t>>2])break f;c=P2(0),k=P2(0),s=P2(0);break r}}if(X2[18532+t>>2]=f,X2[18528+t>>2]=r,E=U2[a+32>>2],C=U2[a>>2],h=U2[a+16>>2],w=U2[a+36>>2],G=U2[a+4>>2],F=U2[a+20>>2],o=U2[i+32>>2],c=U2[i>>2],u=U2[i+16>>2],s=U2[i+36>>2],k=U2[i+4>>2],B=U2[i+20>>2],l=U2[i+40>>2],Y=U2[a+40>>2],v=U2[i+8>>2],m=U2[a+8>>2],Z=U2[i+24>>2],g=U2[a+24>>2],X2[18580+t>>2]=0,X2[18564+t>>2]=0,X2[18548+t>>2]=0,X2[18652+t>>2]=0,X2[18644+t>>2]=0,X2[18628+t>>2]=0,X2[18612+t>>2]=0,X2[18596+t>>2]=0,R=P2(P2(P2(v*m)+P2(Z*g))+P2(l*Y)),U2[18576+t>>2]=R,D=P2(P2(P2(k*m)+P2(B*g))+P2(s*Y)),U2[18572+t>>2]=D,Y=P2(P2(P2(c*m)+P2(u*g))+P2(o*Y)),U2[18568+t>>2]=Y,m=P2(P2(P2(v*G)+P2(Z*F))+P2(l*w)),U2[18560+t>>2]=m,g=P2(P2(P2(k*G)+P2(B*F))+P2(s*w)),U2[18556+t>>2]=g,w=P2(P2(P2(c*G)+P2(u*F))+P2(o*w)),U2[18552+t>>2]=w,G=P2(P2(P2(C*v)+P2(h*Z))+P2(E*l)),U2[18544+t>>2]=G,F=P2(P2(P2(C*k)+P2(h*B))+P2(E*s)),U2[18540+t>>2]=F,U2[18624+t>>2]=R,U2[18620+t>>2]=m,U2[18616+t>>2]=G,U2[18608+t>>2]=D,U2[18604+t>>2]=g,U2[18600+t>>2]=F,U2[18592+t>>2]=Y,U2[18588+t>>2]=w,g=v,v=P2(U2[a+48>>2]-U2[i+48>>2]),w=Z,Z=P2(U2[a+52>>2]-U2[i+52>>2]),G=l,l=P2(U2[a+56>>2]-U2[i+56>>2]),U2[18640+t>>2]=P2(P2(g*v)+P2(w*Z))+P2(G*l),U2[18636+t>>2]=P2(P2(v*k)+P2(Z*B))+P2(l*s),U2[18632+t>>2]=P2(P2(v*c)+P2(Z*u))+P2(l*o),X2[18648+t>>2]=71,o=P2(P2(P2(C*c)+P2(h*u))+P2(E*o)),U2[18536+t>>2]=o,U2[18584+t>>2]=o,X2[(A=152+t|0)>>2]=0,X2[A+4>>2]=0,X2[144+t>>2]=0,X2[148+t>>2]=0,X2[380+t>>2]=0,X2[384+t>>2]=0,X2[392+t>>2]=2,!f4(16+t|(X2[160+t>>2]=0),18528+t|0,t)){if(b=X2[388+t>>2],X2[b+32>>2]){for(E=P2(0),Z=P2(e=A=0),v=P2(0),l=P2(0),B=P2(0),u=P2(0);;)if(o=U2[(f=A+b|0)+16>>2],r=X2[18648+t>>2],a=X2[18652+t>>2],b=X2[18528+t>>2]+(a>>1)|0,N2[0|(1&a?X2[r+X2[b>>2]>>2]:r)](18912+t|0,b,X2[f>>2]),r=X2[X2[388+t>>2]+A>>2],c=U2[r+8>>2],s=U2[r>>2],k=P2(-U2[r+4>>2]),r=X2[18648+t>>2],f=X2[18652+t>>2],a=X2[18532+t>>2]+(f>>1)|0,r=1&f?X2[r+X2[a>>2]>>2]:r,E=P2(E+P2(o*U2[18920+t>>2])),Z=P2(Z+P2(o*U2[18916+t>>2])),v=P2(v+P2(o*U2[18912+t>>2])),X2[19052+t>>2]=0,U2[19048+t>>2]=P2(P2(U2[18572+t>>2]*k)-P2(s*U2[18568+t>>2]))-P2(c*U2[18576+t>>2]),U2[19044+t>>2]=P2(P2(U2[18556+t>>2]*k)-P2(s*U2[18552+t>>2]))-P2(c*U2[18560+t>>2]),U2[19040+t>>2]=P2(P2(U2[18540+t>>2]*k)-P2(s*U2[18536+t>>2]))-P2(c*U2[18544+t>>2]),N2[0|r](18912+t|0,a,19040+t|0),c=U2[18912+t>>2],s=U2[18916+t>>2],k=U2[18920+t>>2],l=P2(l+P2(o*P2(P2(P2(P2(c*U2[18616+t>>2])+P2(s*U2[18620+t>>2]))+P2(k*U2[18624+t>>2]))+U2[18640+t>>2]))),B=P2(B+P2(o*P2(P2(P2(P2(c*U2[18600+t>>2])+P2(s*U2[18604+t>>2]))+P2(k*U2[18608+t>>2]))+U2[18636+t>>2]))),u=P2(u+P2(o*P2(P2(P2(P2(c*U2[18584+t>>2])+P2(s*U2[18588+t>>2]))+P2(k*U2[18592+t>>2]))+U2[18632+t>>2]))),A=A+4|0,b=X2[388+t>>2],!((e=e+1|0)>>>0>2]))break}else u=P2(0),B=P2(0),l=P2(0),v=P2(0),Z=P2(0),E=P2(0);s=P2(v-u),k=P2(Z-B),c=P2(E-l),o=(o=P2(O2(P2(P2(P2(s*s)+P2(k*k))+P2(c*c)))))>P2(9999999747378752e-20)?P2(P2(1)/o):P2(1),c=P2(c*o),C=P2(k*o),k=P2(s*o),w=U2[i+32>>2],G=U2[i+36>>2],F=U2[i+40>>2],Y=U2[i+56>>2],s=P2(P2(P2(P2(u*w)+P2(B*G))+P2(l*F))+Y),m=U2[i+16>>2],g=U2[i+20>>2],R=U2[i+24>>2],D=U2[i+52>>2],h=P2(P2(P2(P2(u*m)+P2(B*g))+P2(l*R))+D),T=U2[i>>2],V=U2[i+4>>2],o=l,l=U2[i+8>>2],p=U2[i+48>>2],o=P2(P2(P2(P2(u*T)+P2(B*V))+P2(o*l))+p),u=P2(P2(P2(P2(v*w)+P2(Z*G))+P2(E*F))+Y),B=P2(P2(P2(P2(v*m)+P2(Z*g))+P2(E*R))+D),l=P2(P2(P2(P2(v*T)+P2(Z*V))+P2(E*l))+p),A=0;break e}A=0;break A}X2[16+t>>2]=8,c=P2(0),u=P2(1),B=P2(0),(l=P2(O2(P2(P2(P2(k*k)+P2(s*s))+P2(o*o)))))>P2(0)&&(u=P2(P2(1)/l),B=P2(u*o),c=P2(u*s),u=P2(u*k)),X2[52+t>>2]=1,X2[36+t>>2]=1065353216,X2[68+t>>2]=0,X2[72+t>>2]=0,U2[64+t>>2]=B,U2[60+t>>2]=c,U2[56+t>>2]=u,X2[20+t>>2]=X2[d>>2]}for(A=36+t|0,s=P2(0),k=P2(e=0),c=P2(0);;)if(r=X2[19032+t>>2],f=X2[19036+t>>2],a=X2[18912+t>>2]+(f>>1)|0,N2[0|(1&f?X2[r+X2[a>>2]>>2]:r)](19040+t|0,a,X2[A-16>>2]),o=U2[A>>2],s=P2(s+P2(o*U2[19048+t>>2])),k=P2(k+P2(o*U2[19044+t>>2])),c=P2(c+P2(U2[19040+t>>2]*o)),A=A+4|0,!((e=e+1|0)>>>0>2]))break}v=U2[i+32>>2],Z=U2[i+36>>2],E=U2[i+40>>2],C=U2[i+56>>2],u=P2(P2(P2(P2(c*v)+P2(k*Z))+P2(s*E))+C),h=U2[i+16>>2],w=U2[i+20>>2],G=U2[i+24>>2],F=U2[i+52>>2],B=P2(P2(P2(P2(c*h)+P2(k*w))+P2(s*G))+F),Y=U2[i>>2],m=U2[i+4>>2],g=U2[i+8>>2],R=U2[i+48>>2],l=P2(P2(P2(P2(c*Y)+P2(k*m))+P2(s*g))+R),D=U2[56+t>>2],o=U2[72+t>>2],c=P2(c-P2(D*o)),T=P2(c*v),v=U2[60+t>>2],k=P2(k-P2(o*v)),T=P2(T+P2(k*Z)),Z=U2[t+64>>2],o=P2(s-P2(o*Z)),s=P2(P2(T+P2(o*E))+C),h=P2(P2(P2(P2(c*h)+P2(k*w))+P2(o*G))+F),o=P2(P2(P2(P2(c*Y)+P2(k*m))+P2(o*g))+R),k=P2(-D),c=P2(-Z),C=P2(-v),A=1}X2[x+12>>2]=0,U2[x+8>>2]=u,U2[x+4>>2]=B,U2[x>>2]=l,X2[y+12>>2]=0,U2[y+8>>2]=s,U2[y+4>>2]=h,U2[y>>2]=o,X2[n+12>>2]=0,U2[n+8>>2]=c,U2[n+4>>2]=C,U2[n>>2]=k}return K2=19056+t|0,0|A},A,f,f,function(A,e,r,f){A|=0,e|=0,r|=0,f=P2(f);var i,a=X2[e+4>>2];X2[A+4>>2]=X2[e>>2],X2[A+8>>2]=a,i=X2[(e=e+8|0)+4>>2],X2[(a=A+12|0)>>2]=X2[e>>2],X2[4+a>>2]=i,e=X2[r+4>>2],X2[A+20>>2]=X2[r>>2],X2[A+24>>2]=e,a=X2[(r=r+8|0)+4>>2],X2[(e=A+28|0)>>2]=X2[r>>2],X2[e+4>>2]=a,S2[A+40|0]=1,U2[A+36>>2]=f},A,function(A,e,r,f,i,a,n,b,t,x){A|=0,e|=0,r|=0,f|=0,i|=0,a|=0,n|=0,b|=0,t|=0,x|=0;var o,c,k,u,y,s,l,B=0,v=P2(0),d=0,Z=P2(0),_=P2(0),g=0,E=P2(0),Q=P2(0),w=P2(0),G=0,C=P2(0),h=P2(0),F=P2(0),Y=P2(0),m=P2(0),N=0,R=P2(0),D=0,T=0,W=0,I=0,V=(P2(0),P2(0));for(P2(0),K2=A=K2-4240|0,u=X2[r+4>>2]-17>>>0<=1?X2[f+4>>2]-17>>>0<2:0;;)if(b4(),X2[(B=(A+1264|0)+d|0)+12>>2]=0,C=U2[d+25492>>2],v=P2(-C),Q=U2[d+25488>>2],w=U2[d+25496>>2],U2[B+8>>2]=P2(P2(U2[i+24>>2]*v)-P2(Q*U2[i+8>>2]))-P2(w*U2[i+40>>2]),U2[B+4>>2]=P2(P2(U2[i+20>>2]*v)-P2(Q*U2[i+4>>2]))-P2(w*U2[i+36>>2]),U2[B>>2]=P2(P2(U2[i+16>>2]*v)-P2(Q*U2[i>>2]))-P2(w*U2[i+32>>2]),R=U2[a+32>>2],h=U2[a>>2],F=U2[a+16>>2],Y=U2[a+36>>2],m=U2[a+4>>2],E=U2[a+20>>2],Z=U2[a+40>>2],_=U2[a+8>>2],v=U2[a+24>>2],X2[(B=(A+272|0)+d|0)+12>>2]=0,U2[B+8>>2]=P2(P2(Q*_)+P2(C*v))+P2(w*Z),U2[B+4>>2]=P2(P2(Q*m)+P2(C*E))+P2(w*Y),U2[B>>2]=P2(P2(Q*h)+P2(C*F))+P2(w*R),672==(0|(d=d+16|0)))break;if(B=42,!((0|(D=0|N2[X2[X2[r>>2]+84>>2]](r)))<1)){for(G=A+3256|0,d=0;;)if(N2[X2[X2[r>>2]+88>>2]](r,N,A+3248|0),Z=U2[A+3248>>2],_=U2[A+3252>>2],v=U2[G>>2],U2[G>>2]=P2(P2(Z*U2[i+32>>2])+P2(_*U2[i+36>>2]))+P2(v*U2[i+40>>2]),X2[A+3260>>2]=0,U2[A+3252>>2]=P2(P2(Z*U2[i+16>>2])+P2(_*U2[i+20>>2]))+P2(v*U2[i+24>>2]),U2[A+3248>>2]=P2(P2(Z*U2[i>>2])+P2(_*U2[i+4>>2]))+P2(v*U2[i+8>>2]),b4(),B=X2[G+4>>2],X2[(g=d+26168|0)>>2]=X2[G>>2],X2[g+4>>2]=B,B=X2[A+3252>>2],X2[(g=d+26160|0)>>2]=X2[A+3248>>2],X2[g+4>>2]=B,X2[(B=(A+1264|0)+d|0)+684>>2]=0,_=U2[A+3252>>2],v=P2(-_),E=U2[A+3248>>2],Z=U2[G>>2],U2[B+680>>2]=P2(P2(U2[i+24>>2]*v)-P2(E*U2[i+8>>2]))-P2(Z*U2[i+40>>2]),U2[B+676>>2]=P2(P2(U2[i+20>>2]*v)-P2(E*U2[i+4>>2]))-P2(Z*U2[i+36>>2]),U2[B+672>>2]=P2(P2(U2[i+16>>2]*v)-P2(E*U2[i>>2]))-P2(Z*U2[i+32>>2]),X2[(B=(A+272|0)+d|0)+684>>2]=0,U2[B+672>>2]=P2(P2(E*U2[a>>2])+P2(_*U2[a+16>>2]))+P2(Z*U2[a+32>>2]),U2[B+676>>2]=P2(P2(E*U2[a+4>>2])+P2(_*U2[a+20>>2]))+P2(Z*U2[a+36>>2]),U2[B+680>>2]=P2(P2(E*U2[a+8>>2])+P2(_*U2[a+24>>2]))+P2(Z*U2[a+40>>2]),d=d+16|0,(0|D)==(0|(N=N+1|0)))break;B=N+42|0}if(s=r,l=A+1264|0,y=A+3248|0,1<=(0|(N=0|N2[X2[X2[f>>2]+84>>2]](f)))){for(c=B<<4,T=A+272|0,W=A+1264|0,I=25488,d=0;;)if(N2[X2[X2[f>>2]+88>>2]](f,d,A+3248|0),Z=U2[(o=A+3256|0)>>2],_=U2[A+3248>>2],v=U2[A+3252>>2],U2[o>>2]=P2(P2(_*U2[a+32>>2])+P2(v*U2[a+36>>2]))+P2(Z*U2[a+40>>2]),X2[A+3260>>2]=0,U2[A+3252>>2]=P2(P2(_*U2[a+16>>2])+P2(v*U2[a+20>>2]))+P2(Z*U2[a+24>>2]),U2[A+3248>>2]=P2(P2(_*U2[a>>2])+P2(v*U2[a+4>>2]))+P2(Z*U2[a+8>>2]),b4(),g=X2[4+o>>2],X2[(D=(G=c+I|0)+8|0)>>2]=X2[o>>2],X2[D+4>>2]=g,g=X2[A+3252>>2],X2[G>>2]=X2[A+3248>>2],X2[G+4>>2]=g,X2[(g=c+W|0)+12>>2]=0,_=U2[A+3252>>2],v=P2(-_),E=U2[A+3248>>2],Z=U2[o>>2],U2[g+8>>2]=P2(P2(U2[i+24>>2]*v)-P2(E*U2[i+8>>2]))-P2(Z*U2[i+40>>2]),U2[g+4>>2]=P2(P2(U2[i+20>>2]*v)-P2(E*U2[i+4>>2]))-P2(Z*U2[i+36>>2]),U2[g>>2]=P2(P2(U2[i+16>>2]*v)-P2(E*U2[i>>2]))-P2(Z*U2[i+32>>2]),X2[(g=c+T|0)+12>>2]=0,U2[g>>2]=P2(P2(E*U2[a>>2])+P2(_*U2[a+16>>2]))+P2(Z*U2[a+32>>2]),U2[g+4>>2]=P2(P2(E*U2[a+4>>2])+P2(_*U2[a+20>>2]))+P2(Z*U2[a+36>>2]),U2[g+8>>2]=P2(P2(E*U2[a+8>>2])+P2(_*U2[a+24>>2]))+P2(Z*U2[a+40>>2]),I=I+16|0,W=W+16|0,T=T+16|0,(0|N)==(0|(d=d+1|0)))break;B=d+B|0}if(N2[X2[X2[r>>2]+76>>2]](s,l,y,B),N2[X2[X2[f>>2]+76>>2]](f,A+272|0,A+2256|0,B),(0|B)<1)m=P2(0xde0b6b000000000),h=P2(0),F=P2(0),Y=P2(0);else for(m=P2(0xde0b6b000000000),Y=P2(d=0),F=P2(0),h=P2(0);;)if(b4(),E=U2[d+25488>>2],Z=U2[d+25492>>2],_=u?P2(0):U2[d+25496>>2],.01<+P2(P2(P2(E*E)+P2(Z*Z))+P2(_*_))&&(k=U2[(g=(A+2256|0)+d|0)>>2],Q=U2[g+4>>2],w=U2[g+8>>2],C=U2[(g=(A+3248|0)+d|0)>>2],R=U2[g+4>>2],v=U2[g+8>>2],(v=P2(P2(P2(E*P2(P2(P2(P2(P2(k*U2[a>>2])+P2(Q*U2[a+4>>2]))+P2(w*U2[a+8>>2]))+U2[a+48>>2])-P2(P2(P2(P2(C*U2[i>>2])+P2(R*U2[i+4>>2]))+P2(v*U2[i+8>>2]))+U2[i+48>>2])))+P2(Z*P2(P2(P2(P2(P2(k*U2[a+16>>2])+P2(Q*U2[a+20>>2]))+P2(w*U2[a+24>>2]))+U2[a+52>>2])-P2(P2(P2(P2(C*U2[i+16>>2])+P2(R*U2[i+20>>2]))+P2(v*U2[i+24>>2]))+U2[i+52>>2]))))+P2(_*P2(u?0:P2(P2(P2(P2(k*U2[a+32>>2])+P2(Q*U2[a+36>>2]))+P2(w*U2[a+40>>2]))+U2[a+56>>2])-P2(P2(P2(P2(C*U2[i+32>>2])+P2(R*U2[i+36>>2]))+P2(v*U2[i+40>>2]))+U2[i+56>>2])))))>2],h=E,F=Z,Y=_,m=v)),d=d+16|0,!(B=B-1|0))break;if(1<<(B=X2[r+4>>2])&11571&&B>>>0<=13||P2(N2[X2[X2[r>>2]+48>>2]](r)),1<<(B=X2[f+4>>2])&11571&&B>>>0<=13||P2(N2[X2[X2[f>>2]+48>>2]](f)),!(m>2]){case 8:v=P2(U2[r+36>>2]*U2[r+20>>2]);break A;case 0:case 1:case 13:case 11:case 10:v=U2[r+52>>2];break A;case 4:case 5:v=U2[r+52>>2];break A;default:break e;}v=P2(N2[X2[X2[r>>2]+48>>2]](r))}A:{e:{r:{f:{i:{a:{n:{b:{t:switch(0|(d=X2[f+4>>2])){case 4:case 5:break r;case 10:break f;case 11:break i;case 13:break a;case 1:break n;case 0:break b;case 8:break t;default:break e;}Z=P2(U2[f+36>>2]*U2[f+20>>2]),d=8;break A}Z=U2[f+52>>2],d=0;break A}Z=U2[f+52>>2],d=1;break A}Z=U2[f+52>>2],d=13;break A}Z=U2[f+52>>2],d=11;break A}Z=U2[f+52>>2],d=10;break A}Z=U2[f+52>>2];break A}Z=P2(N2[X2[X2[f>>2]+48>>2]](f)),d=X2[f+4>>2]}X2[(B=g=A+204|0)>>2]=0,X2[B+4>>2]=0,X2[A+224>>2]=f,X2[A+220>>2]=r,X2[A+216>>2]=e,X2[A+212>>2]=0,X2[A+196>>2]=0,X2[A+200>>2]=1065353216,X2[A+192>>2]=14952,X2[A+232>>2]=d,X2[A+228>>2]=X2[r+4>>2],s=A,l=P2(N2[X2[X2[r>>2]+48>>2]](r)),U2[s+236>>2]=l,_=P2(N2[X2[X2[f>>2]+48>>2]](f)),X2[A+264>>2]=1,X2[A+268>>2]=1,X2[A+252>>2]=-1,S2[A+244|0]=0,U2[A+240>>2]=_,X2[A+116>>2]=0,e=X2[(r=i+8|0)+4>>2],X2[(f=A- -64|0)>>2]=X2[r>>2],X2[f+4>>2]=e,e=X2[(r=i+24|0)+4>>2],X2[(f=A+80|0)>>2]=X2[r>>2],X2[f+4>>2]=e,e=X2[(r=i+40|0)+4>>2],X2[(f=A+96|0)>>2]=X2[r>>2],X2[f+4>>2]=e,_=P2(m+P2(P2(v+Z)+P2(.5))),U2[A+112>>2]=P2(Y*_)+U2[i+56>>2],U2[A+108>>2]=P2(F*_)+U2[i+52>>2],e=X2[i+4>>2],X2[A+56>>2]=X2[i>>2],X2[A+60>>2]=e,e=X2[i+20>>2],X2[A+72>>2]=X2[i+16>>2],X2[A+76>>2]=e,e=X2[i+36>>2],X2[A+88>>2]=X2[i+32>>2],X2[A+92>>2]=e,U2[A+104>>2]=P2(h*_)+U2[i+48>>2],e=X2[(r=a+8|0)+4>>2],X2[(f=A+128|0)>>2]=X2[r>>2],X2[f+4>>2]=e,e=X2[a+20>>2],X2[(r=A+136|0)>>2]=X2[a+16>>2],X2[r+4>>2]=e,e=X2[(r=a+24|0)+4>>2],X2[(f=A+144|0)>>2]=X2[r>>2],X2[f+4>>2]=e,e=X2[a+36>>2],X2[(r=A+152|0)>>2]=X2[a+32>>2],X2[r+4>>2]=e,e=X2[(r=a+40|0)+4>>2],X2[(f=A+160|0)>>2]=X2[r>>2],X2[f+4>>2]=e,e=X2[a+52>>2],X2[(r=A+168|0)>>2]=X2[a+48>>2],X2[r+4>>2]=e,e=X2[(r=a+56|0)+4>>2],X2[(f=A+176|0)>>2]=X2[r>>2],X2[f+4>>2]=e,X2[A+184>>2]=1566444395,e=X2[a+4>>2],X2[A+120>>2]=X2[a>>2],X2[A+124>>2]=e,U2[A+200>>2]=-F,U2[B>>2]=-Y,X2[A+208>>2]=0,U2[A+196>>2]=-h,S2[A+48|0]=0,X2[A+8>>2]=17480,I1(A+192|0,A+56|0,A+8|0,x,0),(f=J2[A+48|0])&&(v=U2[A+44>>2],X2[b+12>>2]=0,v=P2(_-v),U2[b>>2]=U2[A+28>>2]-P2(h*v),U2[b+8>>2]=U2[(i=A+36|0)>>2]-P2(Y*v),U2[b+4>>2]=U2[A+32>>2]-P2(F*v),e=X2[A+32>>2],X2[t>>2]=X2[A+28>>2],X2[t+4>>2]=e,e=X2[i+4>>2],X2[(r=t+8|0)>>2]=X2[i>>2],X2[r+4>>2]=e,U2[n>>2]=h,U2[n+4>>2]=F,U2[n+8>>2]=Y,U2[n+12>>2]=V),d=0!=(0|f)}return K2=A+4240|0,0|d},o4,function(A){n(o4(A|=0))},m1,Y1,function(A,e,r){A|=0,e|=0,r|=0;var f=0;if(!(f=8!=(0|e))&&8==(0|r))return X2[A+56>>2];if(!f&&1==(0|r))return X2[A+72>>2];if(1==(0|e)&&8==(0|r))return X2[A+76>>2];if(!(e|r))return X2[A+68>>2];if(!(19<(0|e))&&28==(0|r))return X2[A+84>>2];if(28==(0|e)&&!(19<(0|r)))return X2[A+80>>2];A:{if((0|e)<=19){if((0|r)<=19)return X2[A+28>>2];if(8>>0)break A;return X2[A+32>>2]}if(!(19<(0|r)||8>>0))return X2[A+36>>2];if(31==(0|e))return 31==(0|r)?X2[A+44>>2]:X2[A+40>>2]}return 31==(0|r)?X2[A+48>>2]:X2[A+52>>2]},function(A,e,r){A|=0,e|=0,r|=0;var f=0;if(!(f=8!=(0|e))&&8==(0|r))return X2[A+56>>2];if(!f&&1==(0|r))return X2[A+72>>2];if(1==(0|e)&&8==(0|r))return X2[A+76>>2];if(!(19<(0|e))&&28==(0|r))return X2[A+84>>2];if(28==(0|e)&&!(19<(0|r)))return X2[A+80>>2];A:{if((0|e)<=19){if((0|r)<=19)return X2[A+28>>2];if(8>>0)break A;return X2[A+32>>2]}if(!(19<(0|r)||8>>0))return X2[A+36>>2];if(31==(0|e))return 31==(0|r)?X2[A+44>>2]:X2[A+40>>2]}return 31==(0|r)?X2[A+48>>2]:X2[A+52>>2]},e,A,function(A,e,r,f){return A|=0,r|=0,f|=0,A=X2[(e|=0)>>2],A=0|N2[X2[X2[A>>2]+56>>2]](A,80),X2[A+8>>2]=16024,X2[A>>2]=15996,X2[A+60>>2]=0,X2[A+48>>2]=f,X2[A+44>>2]=r,e=X2[e>>2],X2[A+4>>2]=e,X2[A+56>>2]=e,e=0|N2[X2[X2[e>>2]+12>>2]](e,X2[r+8>>2],X2[f+8>>2]),X2[A+72>>2]=e,r=X2[A+56>>2],N2[X2[X2[r>>2]+20>>2]](r,e),(S2[A+76|0]=0)|A},A,function(A,e,r,f){return A|=0,r|=0,f|=0,A=X2[(e|=0)>>2],A=0|N2[X2[X2[A>>2]+56>>2]](A,80),X2[A+8>>2]=16024,X2[A>>2]=15996,X2[A+60>>2]=0,X2[A+48>>2]=r,X2[A+44>>2]=f,e=X2[e>>2],X2[A+4>>2]=e,X2[A+56>>2]=e,e=0|N2[X2[X2[e>>2]+12>>2]](e,X2[f+8>>2],X2[r+8>>2]),X2[A+72>>2]=e,r=X2[A+56>>2],N2[X2[X2[r>>2]+20>>2]](r,e),S2[A+76|0]=1,0|A},A,function(A,e,r,f){return A|=0,r|=0,f|=0,A=X2[(e|=0)>>2],A=0|N2[X2[X2[A>>2]+56>>2]](A,84),X2[A+52>>2]=0,X2[A+56>>2]=0,S2[A+24|0]=1,X2[A>>2]=16500,X2[A+20>>2]=0,S2[A+44|0]=1,X2[A+12>>2]=0,X2[A+16>>2]=0,X2[A+40>>2]=0,S2[A+64|0]=1,X2[A+32>>2]=0,X2[A+36>>2]=0,X2[A+60>>2]=0,S2[A+68|0]=0,S2[A+76|0]=0,X2[A+4>>2]=X2[e>>2],X2[A+72>>2]=X2[e+4>>2],X2[A+80>>2]=X2[X2[r+4>>2]+76>>2],H1(A,r,f),0|A},A,function(A,e,r,f){A|=0,r|=0,f|=0;var i,a,n=0;return A=X2[(e|=0)>>2],A=0|N2[X2[X2[A>>2]+56>>2]](A,116),X2[A+52>>2]=0,X2[A+56>>2]=0,S2[A+24|0]=1,X2[A>>2]=16500,X2[A+20>>2]=0,S2[A+44|0]=1,X2[A+12>>2]=0,X2[A+16>>2]=0,X2[A+40>>2]=0,S2[A+64|0]=1,X2[A+32>>2]=0,X2[A+36>>2]=0,X2[A+60>>2]=0,S2[A+68|0]=0,S2[A+76|0]=0,X2[A+4>>2]=X2[e>>2],X2[A+72>>2]=X2[e+4>>2],X2[A+80>>2]=X2[X2[r+4>>2]+76>>2],H1(A,r,f),S2[A+104|0]=1,X2[A>>2]=16708,X2[A+100>>2]=0,X2[A+92>>2]=0,X2[A+96>>2]=0,a=X2[6258],e=0,(i=L2(83))&&(X2[(e=i+19&-16)-4>>2]=i),S2[e+20|0]=1,X2[e>>2]=16644,X2[e+16>>2]=0,S2[e+40|0]=1,X2[e+8>>2]=0,X2[e+12>>2]=0,X2[e+36>>2]=0,S2[e+60|0]=1,X2[e+28>>2]=0,X2[e+32>>2]=0,X2[e+56>>2]=0,X2[e+48>>2]=0,X2[e+52>>2]=0,X2[6258]=a+2,(i=L2(43))&&(X2[(n=i+19&-16)-4>>2]=i),(i=X2[e+16>>2])&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),X2[e+16>>2]=n,S2[e+20|0]=1,X2[e+12>>2]=2,O1(e),X2[A+84>>2]=e,X2[A+108>>2]=X2[X2[r+4>>2]+76>>2],X2[A+112>>2]=X2[X2[f+4>>2]+76>>2],0|A},A,function(A,e,r,f){return A|=0,r|=0,f|=0,A=X2[(e|=0)>>2],A=0|N2[X2[X2[A>>2]+56>>2]](A,84),X2[A+52>>2]=0,X2[A+56>>2]=0,S2[A+24|0]=1,X2[A>>2]=16500,X2[A+20>>2]=0,S2[A+44|0]=1,X2[A+12>>2]=0,X2[A+16>>2]=0,X2[A+40>>2]=0,S2[A+64|0]=1,X2[A+32>>2]=0,X2[A+36>>2]=0,X2[A+60>>2]=0,S2[A+68|0]=1,S2[A+76|0]=0,X2[A+4>>2]=X2[e>>2],X2[A+72>>2]=X2[e+4>>2],X2[A+80>>2]=X2[X2[f+4>>2]+76>>2],H1(A,r,f),0|A},A,function(A,e,r,f){return A|=0,A=X2[(e|=0)>>2],A=0|N2[X2[X2[A>>2]+56>>2]](A,8),X2[A>>2]=16868,X2[A+4>>2]=X2[e>>2],0|A},A,function(A,e,r,f){return A|=0,r|=0,f|=0,A=X2[(e|=0)>>2],A=0|N2[X2[X2[A>>2]+56>>2]](A,16),X2[A>>2]=16928,S2[A+8|0]=0,e=X2[e>>2],X2[A+4>>2]=e,e=(X2[A+12>>2]=0)|N2[X2[X2[e>>2]+12>>2]](e,X2[r+8>>2],X2[f+8>>2]),S2[A+8|0]=1,X2[A+12>>2]=e,0|A},A,function(A,e,r,f){A|=0,r|=0,f|=0;var i,a=X2[(e|=0)>>2];return a=0|N2[X2[X2[a>>2]+56>>2]](a,20),S2[8+a|0]=0,X2[a>>2]=17064,i=X2[e>>2],X2[4+a>>2]=i,S2[16+a|0]=J2[A+4|0],A=X2[e+4>>2],(X2[12+a>>2]=A)||(A=0|N2[X2[X2[i>>2]+12>>2]](i,X2[r+8>>2],X2[f+8>>2]),S2[8+a|0]=1,X2[12+a>>2]=A),0|a},A,function(A,e,r,f){return A|=0,r|=0,f|=0,A=X2[(e|=0)>>2],A=0|N2[X2[X2[A>>2]+56>>2]](A,16),X2[A>>2]=17196,S2[A+8|0]=0,e=X2[e>>2],X2[A+4>>2]=e,(X2[A+12>>2]=0)|N2[X2[X2[e>>2]+24>>2]](e,X2[r+8>>2],X2[f+8>>2])&&(e=X2[A+4>>2],e=0|N2[X2[X2[e>>2]+12>>2]](e,X2[r+8>>2],X2[f+8>>2]),S2[A+8|0]=1,X2[A+12>>2]=e),0|A},A,function(A,e,r,f){A|=0,r|=0,f|=0;var i,a,n=X2[(e|=0)>>2];return n=0|N2[X2[X2[n>>2]+56>>2]](n,28),i=X2[A+12>>2],a=X2[A+8>>2],X2[n>>2]=17268,S2[8+n|0]=0,X2[20+n>>2]=a,X2[24+n>>2]=i,i=J2[A+4|0],S2[16+n|0]=i,A=X2[e>>2],X2[12+n>>2]=0,X2[4+n>>2]=A,0|N2[X2[X2[A>>2]+24>>2]](A,X2[(e=i?f:r)+8>>2],X2[(r=i?r:f)+8>>2])&&(A=X2[4+n>>2],A=0|N2[X2[X2[A>>2]+12>>2]](A,X2[e+8>>2],X2[r+8>>2]),S2[8+n|0]=1,X2[12+n>>2]=A),0|n},function(A){var e;return X2[(A|=0)>>2]=18764,(e=X2[A+20>>2])&&J2[A+24|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+20>>2]=0,S2[A+24|0]=1,X2[(e=A+12|0)>>2]=0,(X2[4+e>>2]=0)|A},function(A){var e;X2[(A|=0)>>2]=18764,(e=X2[A+20>>2])&&J2[A+24|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),n(A)},function(A,e,r,f,i){var a,n;return A|=0,e|=0,r|=0,i|=0,X2[12+(K2=n=K2-16|0)>>2]=f|=0,X2[8+n>>2]=A,f=X2[X2[r+4>>2]+4>>2],a=X2[X2[e+4>>2]+4>>2],A=(A=1==(0|i)?X2[76+((H2(a,144)+A|0)+(f<<2)|0)>>2]:X2[5260+((H2(a,144)+A|0)+(f<<2)|0)>>2],0|N2[X2[X2[A>>2]+8>>2]](A,8+n|0,e,r)),K2=16+n|0,0|A},function(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n=0,b=0,t=P2(0),o=P2(0),c=0;P2(0),K2=a=K2-16|0,X2[6621]=X2[6621]+1,n=2&X2[A+4>>2]?(n=X2[e+192>>2],t=P2(N2[X2[X2[n>>2]+20>>2]](n,P2(.019999999552965164))),U2[12+a>>2]=t,n=X2[r+192>>2],o=P2(N2[X2[X2[n>>2]+20>>2]](n,P2(.019999999552965164))),t<(U2[8+a>>2]=o)?12+a|0:8+a|0):14940,i=U2[n>>2],t=U2[r+184>>2],o=U2[e+184>>2],n=X2[A+72>>2];A:{if(b=X2[n+12>>2])X2[n+12>>2]=X2[b>>2],X2[n+8>>2]=X2[n+8>>2]-1;else{if(4&J2[A+4|(b=0)])break A;X2[6258]=X2[6258]+1,(n=L2(887))&&(X2[(b=n+19&-16)-4>>2]=n)}if(X2[b+120>>2]=0,X2[b+124>>2]=0,X2[b>>2]=1025,X2[b+328>>2]=0,X2[b+332>>2]=0,X2[b+536>>2]=0,X2[b+540>>2]=0,X2[(n=b+128|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+136|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+144|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+152|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+160|0)>>2]=0,X2[n+4>>2]=0,X2[b+168>>2]=0,X2[(n=b+336|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+344|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+352|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+360|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+368|0)>>2]=0,X2[n+4>>2]=0,X2[b+376>>2]=0,X2[(n=b+544|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+552|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+560|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+568|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+576|0)>>2]=0,X2[n+4>>2]=0,X2[b+584>>2]=0,X2[b+792>>2]=0,X2[(n=b+784|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+776|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+768|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+760|0)>>2]=0,X2[n+4>>2]=0,X2[(n=b+752|0)>>2]=0,X2[n+4>>2]=0,X2[b+744>>2]=0,X2[b+748>>2]=0,X2[b+836>>2]=e,X2[b+840>>2]=r,X2[b+844>>2]=0,U2[b+848>>2]=i,U2[b+852>>2]=o>2],X2[b+864>>2]=n,X2[A+16>>2]==(0|n)&&!((0|(f=n?n<<1:1))<=(0|n))){if(f&&(X2[6258]=X2[6258]+1,(e=L2(19+(f<<2)|0))&&(X2[(c=e+19&-16)-4>>2]=e)),1<=(0|n))for(e=0,r=n;;)if(X2[e+c>>2]=X2[X2[A+20>>2]+e>>2],e=e+4|0,!(r=r-1|0))break;(e=X2[A+20>>2])&&J2[A+24|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]),n=X2[A+12>>2]),X2[A+20>>2]=c,X2[A+16>>2]=f,S2[A+24|0]=1}X2[A+12>>2]=n+1,X2[X2[A+20>>2]+(n<<2)>>2]=b}return K2=16+a|0,0|b},function(A,e){var r,f,i,a,n,b,t,o;A|=0,e|=0,X2[6621]=X2[6621]-1,N2[X2[X2[A>>2]+20>>2]](A,e),f=X2[(r=A+20|0)>>2],a=X2[e+864>>2],b=X2[(i=f+(n=a<<2)|0)>>2],t=i,o=f,i=X2[(f=A+12|0)>>2]-1|0,X2[t>>2]=X2[o+(t=i<<2)>>2],X2[X2[r>>2]+t>>2]=b,X2[f>>2]=i,X2[X2[X2[r>>2]+n>>2]+864>>2]=a,A=X2[A+72>>2],e>>>0<(r=X2[A+16>>2])>>>0||r+H2(X2[A>>2],X2[A+4>>2])>>>0<=e>>>0?(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])):(X2[e>>2]=X2[A+12>>2],X2[A+12>>2]=e,X2[A+8>>2]=X2[A+8>>2]+1)},function(A,e){X2[(e|=0)+844>>2]=0},function(A,e,r){A|=0,r|=0;A:{e:{r:switch(X2[(e|=0)+220>>2]-2|0){case 0:case 3:break r;default:break e;}switch(X2[r+220>>2]-2|(A=0)){case 0:case 3:break A;default:break e;}}if(!X2[e+280>>2]||0|N2[X2[X2[e>>2]+12>>2]](e,r)){if(A=1,!X2[r+280>>2])break A;if(0|N2[X2[X2[r>>2]+12>>2]](r,e))break A}A=0}return 0|A},function(A,e,r){if(A|=0,r|=0,!(4&(e=X2[(e|=A=0)+204>>2])||4&(r=X2[r+204>>2]))){if(!(3&e))return 1;A=!(3&r)}return 0|A},function(A,e,r,f){var i;e|=0,r|=0,f|=0,X2[8+(K2=i=K2-16|0)>>2]=A|=0,X2[4+i>>2]=r,X2[i>>2]=18848,N2[X2[X2[e>>2]+48>>2]](e,i,f),K2=16+i|0},function(A){return X2[(A|=0)+12>>2]},function(A,e){return X2[X2[(A|=0)+20>>2]+((e|=0)<<2)>>2]},function(A){return X2[(A|=0)+12>>2]?X2[A+20>>2]:0},c4,c4,function(A,e){var r;return e|=0,A=X2[(A|=0)+68>>2],(r=X2[A+12>>2])?(X2[A+12>>2]=X2[r>>2],X2[A+8>>2]=X2[A+8>>2]-1,0|r):(A=0,X2[6258]=X2[6258]+1,(e=L2(e+19|0))&&(X2[(A=e+19&-16)-4>>2]=e),0|A)},function(A,e){var r;A|=0,(e|=0)&&(A=X2[A+68>>2],e>>>0<(r=X2[A+16>>2])>>>0||H2(X2[A>>2],X2[A+4>>2])+r>>>0<=e>>>0?(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])):(X2[e>>2]=X2[A+12>>2],X2[A+12>>2]=e,X2[A+8>>2]=X2[A+8>>2]+1))},e,A,function(A,e){var r=0,r=e|=0;return e=X2[(A|=0)+8>>2],N2[X2[e+64>>2]](r,e,X2[A+4>>2]),0},function(A){var e;return X2[(A|=0)>>2]=18960,(e=X2[A+60>>2])&&J2[A- -64|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+60>>2]=0,S2[A- -64|0]=1,X2[(e=A+52|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+40>>2])&&J2[A+44|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+40>>2]=0,S2[A+44|0]=1,X2[(e=A+32|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+16>>2]=0,S2[A+20|0]=1,X2[(e=A+8|0)>>2]=0,(X2[4+e>>2]=0)|A},function(A){var e;X2[(A|=0)>>2]=18960,(e=X2[A+60>>2])&&J2[A- -64|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+60>>2]=0,S2[A- -64|0]=1,X2[(e=A+52|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+40>>2])&&J2[A+44|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+40>>2]=0,S2[A+44|0]=1,X2[(e=A+32|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+16>>2]=0,S2[A+20|0]=1,X2[(e=A+8|0)>>2]=0,X2[4+e>>2]=0,X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},function(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n,b,t,o,c,k=0,u=0,s=0,l=0,B=0;X2[6625]=X2[6625]+1;A:{e:{if(f=X2[A+24>>2]){if(0|N2[X2[X2[f>>2]+8>>2]](f,e,r))break e;break A}if(!(X2[r+8>>2]&X2[e+4>>2]))break A;if(!(X2[e+8>>2]&X2[r+4>>2]))break A}if(f=X2[e+12>>2]>X2[r+12>>2],u=X2[(i=f?e:r)+12>>2],s=X2[(a=f?r:e)+12>>2],e=H2((e=((e=u<<16|s)<<15^-1)+e|0)>>>10^e,9),f=X2[A+12>>2],-1!=(0|(e=X2[X2[A+40>>2]+((B=(b=(e=((e^=e>>>6)<<11^-1)+e|0)>>>16^e)&f-1)<<2)>>2])))for(r=X2[A+16>>2];;){if(k=(l=e<<4)+r|0,(0|u)==X2[X2[4+(r+l|0)>>2]+12>>2]&&(0|s)==X2[X2[k>>2]+12>>2])break A;if(-1==(0|(e=X2[X2[A+60>>2]+(e<<2)>>2])))break}if((0|(e=f))==(0|(r=s=X2[A+8>>2]))&&(r=f,!((0|(u=e?e<<1:1))<=(0|e)))){if(r=0,u&&(X2[6258]=X2[6258]+1,(e=L2(19+(u<<4)|0))&&(X2[(r=e+19&-16)-4>>2]=e)),1<=(0|f))for(e=12,k=f;;)if(n=X2[A+16>>2]+e|0,X2[(l=e+r|0)-12>>2]=X2[n-12>>2],c=X2[4+(t=n-8|0)>>2],X2[(o=l-8|0)>>2]=X2[t>>2],X2[4+o>>2]=c,X2[l>>2]=X2[n>>2],e=e+16|0,!(k=k-1|0))break;(e=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+16>>2]=r,X2[A+12>>2]=u,S2[A+20|0]=1,r=X2[A+8>>2],e=u}X2[A+8>>2]=r+1,r=X2[A+16>>2],(k=X2[A+68>>2])&&(N2[X2[X2[k>>2]+8>>2]](k,a,i),e=X2[A+12>>2]),k=r+(s<<4)|0,(0|f)<(0|e)&&(k4(A),B=X2[A+12>>2]-1&b),f=X2[i+12>>2],u=X2[a+12>>2],X2[(e=r+(s<<4)|0)+8>>2]=0,X2[e+12>>2]=0,X2[(r=e)+4>>2]=(e=(0|u)<(0|f))?i:a,X2[k>>2]=e?a:i,e=X2[A+60>>2]+(s<<2)|0,A=X2[A+40>>2]+(B<<2)|0,X2[e>>2]=X2[A>>2],X2[A>>2]=s}return 0|k},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a=0,n=0,b=0,t=0,o=0,c=0,k=0;X2[6624]=X2[6624]+1,a=X2[e+12>>2]>X2[r+12>>2],n=X2[(i=a?e:r)+12>>2],b=X2[(o=a?r:e)+12>>2],e=H2((e=((e=n<<16|b)<<15^-1)+e|0)>>>10^e,9),t=X2[A+12>>2]-1&((e=((e^=e>>>6)<<11^-1)+e|0)>>>16^e),e=X2[X2[A+40>>2]+(t<<2)>>2];A:if(-1!=(0|e)){for(a=X2[A+16>>2];;){if((0|n)==X2[X2[(r=a+(e<<4)|0)+4>>2]+12>>2]&&(0|b)==X2[X2[r>>2]+12>>2])break;if(-1==(0|(e=X2[X2[A+60>>2]+(e<<2)>>2])))break A}N2[X2[X2[A>>2]+32>>2]](A,r,f),c=X2[12+(a+(e<<4)|0)>>2],n=X2[A+60>>2];e:{if(b=X2[A+40>>2]+(t<<2)|0,(0|(e=X2[b>>2]))!=(0|(a=r-X2[A+16>>2]>>4))){for(;;)if((0|a)==(0|(e=X2[(t=n+((r=e)<<2)|0)>>2])))break;if(-1!=(0|r)){X2[t>>2]=X2[n+(a<<2)>>2];break e}}X2[b>>2]=X2[n+(a<<2)>>2]}if(n=X2[A+8>>2]-1|0,(e=X2[A+68>>2])&&N2[X2[X2[e>>2]+12>>2]](e,o,i,f),(0|a)==(0|n))return X2[A+8>>2]=X2[A+8>>2]-1,0|c;i=X2[A+60>>2];e:{if(o=X2[A+16>>2],e=X2[X2[(f=o+(n<<4)|0)+4>>2]+12>>2]<<16|X2[X2[f>>2]+12>>2],e=H2((e=(e<<15^-1)+e|0)>>>10^e,9),b=X2[A+12>>2]-1&((e=((e^=e>>>6)<<11^-1)+e|0)>>>16^e),t=X2[A+40>>2]+(b<<2)|0,(0|n)!=(0|(e=X2[t>>2]))){for(;;)if((0|n)==(0|(e=X2[(k=i+((r=e)<<2)|0)>>2])))break;if(-1!=(0|r)){X2[k>>2]=X2[i+(n<<2)>>2];break e}}X2[t>>2]=X2[i+(n<<2)>>2]}r=X2[f+4>>2],X2[(e=o+(a<<4)|0)>>2]=X2[f>>2],X2[e+4>>2]=r,f=X2[(r=f+8|0)+4>>2],X2[(e=e+8|0)>>2]=X2[r>>2],X2[e+4>>2]=f,e=X2[A+40>>2]+(b<<2)|0,X2[X2[A+60>>2]+(a<<2)>>2]=X2[e>>2],X2[e>>2]=a,X2[A+8>>2]=X2[A+8>>2]-1}return 0|c},function(A,e,r){var f;A|=0,r|=0,X2[12+(K2=f=K2-16|0)>>2]=e|=0,X2[8+f>>2]=19192,N2[X2[X2[A>>2]+48>>2]](A,8+f|0,r),K2=16+f|0},K1,K1,g0,function(A,e,r){A|=0,e|=0,(r|=0)&&(A=X2[e+8>>2])&&(N2[X2[X2[A>>2]>>2]](A),N2[X2[X2[r>>2]+60>>2]](r,X2[e+8>>2]),X2[e+8>>2]=0)},function(A){return X2[(A|=0)+8>>2]},function(A,e,r){var f;A|=0,e|=0,X2[12+(K2=f=K2-16|0)>>2]=r|=0,X2[8+f>>2]=A,X2[4+f>>2]=e,X2[f>>2]=19048,N2[X2[X2[A>>2]+48>>2]](A,f,r),K2=16+f|0},function(A,e){X2[(A|=0)+24>>2]=e|=0},function(A,e,r){e|=0,r|=0;var f,i=0;if(1<=X2[(A|=0)+8>>2])for(;;)if(f=X2[A+16>>2]+(i<<4)|0,0|N2[X2[X2[e>>2]+8>>2]](e,f)?(N2[X2[X2[A>>2]+12>>2]](A,X2[f>>2],X2[4+f>>2],r),X2[6623]=X2[6623]-1):i=i+1|0,!(X2[A+8>>2]>(0|i)))break},function(A,e,r){A|=0,e|=0,r|=0;var f,i,a=0;X2[6622]=X2[6622]+1,a=X2[e+12>>2]>X2[r+12>>2],f=X2[(a?e:r)+12>>2],i=X2[(a?r:e)+12>>2],e=H2((e=((e=i|f<<16)<<15^-1)+e|0)>>>10^e,9),e=X2[A+12>>2]-1&((e=((e^=e>>>6)<<11^-1)+e|0)>>>16^e);A:{if(!((0|e)>=X2[A+32>>2])&&-1!=(0|(e=X2[X2[A+40>>2]+(e<<2)>>2])))for(r=X2[A+16>>2];;){if(X2[X2[4+(a=r+(e<<4)|0)>>2]+12>>2]==(0|f)&&X2[X2[a>>2]+12>>2]==(0|i))break A;if(-1==(0|(e=X2[X2[A+60>>2]+(e<<2)>>2])))break}a=0}return 0|a},V0,function(A,e){X2[(A|=0)+68>>2]=e|=0},function(A,e){A|=0,e|=0;var r,f,i,a,n=0,b=0,t=0,o=0,c=0,k=0,u=0,s=0;if(X2[20+(K2=a=K2-32|0)>>2]=0,X2[12+a>>2]=0,((X2[16+a>>2]=0)|(b=X2[A+8>>2]))<(S2[24+a|0]=1))b=0;else{for(b=0;;){if(f=X2[A+16>>2],(0|t)==(0|n))if((0|(u=n?n<<1:1))<=(0|n))t=n;else{if(c=0,u&&(X2[6258]=X2[6258]+1,(b=L2(19+(u<<4)|0))&&(X2[(c=b+19&-16)-4>>2]=b)),1<=(0|n))for(t=12;;)if(o=X2[20+a>>2]+t|0,X2[(b=t+c|0)-12>>2]=X2[o-12>>2],i=X2[4+(r=o-8|0)>>2],X2[(k=b-8|0)>>2]=X2[r>>2],X2[k+4>>2]=i,X2[b>>2]=X2[o>>2],t=t+16|0,!(n=n-1|0))break;(b=X2[20+a>>2])&&J2[24+a|0]&&(X2[6259]=X2[6259]+1,q2(X2[b-4>>2])),X2[20+a>>2]=c,S2[24+a|0]=1,X2[16+a>>2]=u,t=X2[12+a>>2],o=k=b=c}if(u=X2[(n=(s<<4)+f|0)+4>>2],X2[(t=(t<<4)+o|0)>>2]=X2[n>>2],X2[t+4>>2]=u,X2[t+8>>2]=X2[n+8>>2],X2[t+12>>2]=X2[n+12>>2],n=X2[12+a>>2],X2[12+a>>2]=t=n+1|0,!((0|(s=s+1|0))>2]))break;n=X2[16+a>>2]}if(!((0|n)<0))for(o=n+1|0;;)if(N2[X2[X2[A>>2]+12>>2]](A,X2[k>>2],X2[k+4>>2],e),k=k+16|0,!(o=o-1|0))break}if(1<=X2[A+52>>2])for(o=X2[A+60>>2],n=0;;)if(X2[o>>2]=-1,o=o+4|0,!((0|(n=n+1|0))>2]))break;A:{if(2<=(0|t))u4(8+a|0,0,t-1|0);else if((0|t)<1)break A;for(;;)if(N2[X2[X2[A>>2]+8>>2]](A,X2[b>>2],X2[b+4>>2]),b=b+16|0,!(t=t-1|0))break}c&&(X2[6259]=X2[6259]+1,q2(X2[c-4>>2])),K2=32+a|0},A,function(A,e){var r;return(0|(r=X2[(A|=0)+4>>2]))!=X2[(e|=0)+4>>2]&&(0|r)!=X2[e>>2]||(r=X2[A+8>>2],N2[X2[X2[r>>2]+32>>2]](r,e,X2[A+12>>2])),0},A,function(A,e){return(0|(A=X2[(A|=0)+4>>2]))==X2[(e|=0)>>2]|(0|A)==X2[e+4>>2]},s4,function(A){n(s4(A|=0))},function(A,e,r,f,i,a,n,b){var t,o;return A|=0,e|=0,r|=0,f|=0,i|=0,a|=0,n|=0,b|=0,K2=b=K2-48|0,f=0,o=X2[6258],X2[6258]=o+1,(t=L2(83))&&(X2[(f=t+19&-16)-4>>2]=t),X2[f+8>>2]=n,X2[f+4>>2]=a,X2[f>>2]=i,i=X2[e+4>>2],X2[f+16>>2]=X2[e>>2],X2[f+20>>2]=i,t=X2[(n=i=e+8|0)+4>>2],X2[(a=f+24|0)>>2]=X2[n>>2],X2[a+4>>2]=t,a=X2[r+4>>2],X2[f+32>>2]=X2[r>>2],X2[f+36>>2]=a,t=X2[(a=r+8|0)+4>>2],X2[(n=f+40|0)>>2]=X2[a>>2],X2[n+4>>2]=t,X2[f+52>>2]=0,X2[f+56>>2]=0,t=X2[i+4>>2],X2[(n=b+24|0)>>2]=X2[i>>2],X2[n+4>>2]=t,n=X2[a+4>>2],X2[(i=b+40|0)>>2]=X2[a>>2],X2[i+4>>2]=n,i=X2[e>>2],e=X2[e+4>>2],a=X2[r+4>>2],r=X2[r>>2],X2[f+60>>2]=X2[A+104>>2],X2[b+32>>2]=r,X2[b+36>>2]=a,r=X2[A+148>>2]+1|0,X2[f+12>>2]=r,X2[A+148>>2]=r,X2[b+16>>2]=i,X2[b+20>>2]=e,i=A+4|0,(e=X2[A+8>>2])?X2[A+8>>2]=0:(X2[6258]=o+2,e=0,(r=L2(63))&&(X2[(e=r+19&-16)-4>>2]=r),X2[e>>2]=0,X2[e+4>>2]=0,X2[e+40>>2]=0,X2[(r=e+32|0)>>2]=0,X2[r+4>>2]=0,X2[(r=e+24|0)>>2]=0,X2[r+4>>2]=0,X2[(r=e+16|0)>>2]=0,X2[r+4>>2]=0,X2[(r=e+8|0)>>2]=0,X2[r+4>>2]=0),X2[e+36>>2]=f,r=X2[b+20>>2],X2[e>>2]=X2[b+16>>2],X2[e+4>>2]=r,X2[e+40>>2]=0,n=X2[(a=b+24|0)+4>>2],X2[(r=e+8|0)>>2]=X2[a>>2],X2[r+4>>2]=n,n=X2[(a=b+32|0)+4>>2],X2[(r=e+16|0)>>2]=X2[a>>2],X2[r+4>>2]=n,n=X2[(a=b+40|0)+4>>2],X2[(r=e+24|0)>>2]=X2[a>>2],X2[r+4>>2]=n,X2[e+32>>2]=0,i1(i,X2[A+4>>2],e),X2[f+52>>2]=0,X2[f+48>>2]=e,e=84+((X2[A+104>>2]<<2)+A|0)|0,X2[f+56>>2]=X2[e>>2],X2[(r=A+16|0)>>2]=X2[r>>2]+1,(r=X2[e>>2])&&(X2[r+52>>2]=f),X2[e>>2]=f,J2[A+153|0]||(X2[b+8>>2]=f,X2[b>>2]=19536,X2[b+4>>2]=A,l4(X2[A+4>>2],b+16|0,b),l4(X2[A+44>>2],b+16|0,b)),K2=b+48|0,0|f},function(A,e,r){A|=0,r|=0;var f,i,a=0;f1(a=2==X2[(e|=0)+60>>2]?A+44|0:A+4|0,i=X2[e+48>>2]),(f=X2[a+4>>2])&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[a+4>>2]=i,X2[a+12>>2]=X2[a+12>>2]-1,(a=X2[e+52>>2])?X2[(a+56|0)>>2]=X2[(a=e+56|0)>>2]:X2[84+((X2[e+60>>2]<<2)+A|0)>>2]=X2[(a=e+56|0)>>2],(a=X2[a>>2])&&(X2[a+52>>2]=X2[e+52>>2]),a=X2[A+96>>2],N2[X2[X2[a>>2]+16>>2]](a,e,r),X2[6259]=X2[6259]+1,q2(X2[e-4>>2]),S2[A+154|0]=1},function(A,e,r,f,i){A|=0,e|=0,r|=0,f|=0,i|=0;var a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C,h=0,F=0,Y=(P2(0),0),m=(P2(0),P2(0),0),N=P2(0);if(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2=C=K2-48|0,N=U2[r>>2],U2[44+C>>2]=N,t=U2[r+4>>2],U2[40+C>>2]=t,o=U2[r+8>>2],U2[36+C>>2]=o,c=U2[f>>2],U2[32+C>>2]=c,k=U2[f+4>>2],U2[28+C>>2]=k,u=U2[f+8>>2],U2[24+C>>2]=u,s=U2[f+12>>2],l=U2[r+12>>2],2==X2[e+60>>2])f1(A+44|0,h=X2[e+48>>2]),(i=X2[A+48>>2])&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),X2[A+48>>2]=h,X2[(i=A+56|0)>>2]=X2[i>>2]-1,Y=A+4|0,(i=X2[A+8>>2])?X2[A+8>>2]=0:(X2[6258]=X2[6258]+1,i=0,(h=L2(63))&&(X2[(i=h+19&-16)-4>>2]=h,N=U2[44+C>>2]),X2[i>>2]=0,X2[i+4>>2]=0,X2[i+40>>2]=0,X2[(h=i+32|0)>>2]=0,X2[h+4>>2]=0,X2[(h=i+24|0)>>2]=0,X2[h+4>>2]=0,X2[(h=i+16|0)>>2]=0,X2[h+4>>2]=0,X2[(h=i+8|0)>>2]=0,X2[h+4>>2]=0),U2[i>>2]=N,X2[i+36>>2]=e,U2[i+12>>2]=l,X2[i+40>>2]=0,U2[i+28>>2]=s,U2[i+4>>2]=U2[40+C>>2],U2[i+8>>2]=U2[36+C>>2],U2[i+16>>2]=U2[32+C>>2],U2[i+20>>2]=U2[28+C>>2],U2[i+24>>2]=U2[24+C>>2],X2[i+32>>2]=0,i1(Y,X2[A+4>>2],i),X2[e+48>>2]=i,X2[(i=A+16|0)>>2]=X2[i>>2]+1,h=1;else if(X2[A+128>>2]=X2[A+128>>2]+1,F=X2[e+48>>2],(v=U2[F>>2])<=c&&N<=(d=U2[F+16>>2])&&(Z=U2[F+4>>2])<=k&&t<=(_=U2[F+20>>2])&&(n=U2[F+8>>2])<=u&&o<=(b=U2[F+24>>2])){if(g=U2[e+16>>2],w=U2[e+32>>2],B=U2[A+100>>2],E=U2[e+24>>2],G=U2[e+40>>2],Q=U2[e+20>>2],a=U2[e+36>>2],!(v<=N&&Z<=t&&n<=o&&c<=d&&k<=_&&(h=0,u<=b))){n=P2(k+P2(.05000000074505806)),U2[28+C>>2]=n,b=P2(t+P2(-.05000000074505806)),U2[40+C>>2]=b,a=P2(P2(P2(a-Q)*P2(.5))*B),i=(a=P2(t-Q)P2(0),U2[(i?28+C|0:40+C|0)>>2]=(i?n:b)+a,n=P2(o+P2(-.05000000074505806)),U2[36+C>>2]=n,b=P2(u+P2(.05000000074505806)),U2[24+C>>2]=b,a=P2(B*P2(P2(G-E)*P2(.5))),i=(a=P2(o-E)P2(0),U2[(i?24+C|0:36+C|0)>>2]=(i?b:n)+a,n=P2(c+P2(.05000000074505806)),U2[32+C>>2]=n,b=P2(N+P2(-.05000000074505806)),U2[44+C>>2]=b,a=P2(P2(P2(w-g)*P2(.5))*B),i=(a=P2(N-g)P2(0),U2[(i?32+C|0:44+C|0)>>2]=(i?n:b)+a;A:if(i=f1(Y=A+4|0,F)){if(0<=(0|(m=X2[A+12>>2]))){if(m)for(;;){if(!(h=X2[i+32>>2]))break A;if(i=h,!(m=m-1|0))break}}else i=X2[Y>>2];}else i=0;U2[F>>2]=U2[44+C>>2],U2[F+4>>2]=U2[40+C>>2],U2[F+12>>2]=l,U2[F+8>>2]=U2[36+C>>2],U2[F+16>>2]=U2[32+C>>2],U2[F+20>>2]=U2[28+C>>2],U2[F+24>>2]=U2[24+C>>2],U2[F+28>>2]=s,i1(Y,i,F),X2[A+132>>2]=X2[A+132>>2]+1,h=1}}else{A:if(i=f1(Y=A+4|0,F)){if(0<=(0|(m=X2[A+12>>2]))){if(m)for(;;){if(!(h=X2[i+32>>2]))break A;if(i=h,!(m=m-1|0))break}}else i=X2[Y>>2];}else i=0;U2[F+16>>2]=c,U2[F+12>>2]=l,U2[F+8>>2]=o,U2[F+4>>2]=t,U2[F>>2]=N,U2[F+28>>2]=s,U2[F+24>>2]=u,U2[F+20>>2]=k,i1(Y,i,F),X2[A+132>>2]=X2[A+132>>2]+1,h=1}(i=X2[e+52>>2])?X2[(F=i+56|0)>>2]=X2[(i=e+56|0)>>2]:X2[84+((X2[e+60>>2]<<2)+A|0)>>2]=X2[(i=e+56|0)>>2],(i=X2[i>>2])&&(X2[i+52>>2]=X2[e+52>>2]),i=X2[r+4>>2],X2[e+16>>2]=X2[r>>2],X2[e+20>>2]=i,r=X2[(i=r+8|0)+4>>2],X2[(Y=e+24|0)>>2]=X2[i>>2],X2[Y+4>>2]=r,r=X2[(i=f+8|0)+4>>2],X2[(Y=e+40|0)>>2]=X2[i>>2],X2[Y+4>>2]=r,r=X2[f+4>>2],X2[e+32>>2]=X2[f>>2],X2[e+36>>2]=r,X2[e+52>>2]=0,r=X2[A+104>>2],X2[e+56>>2]=X2[(f=84+((r<<2)+A|0)|0)>>2],X2[e+60>>2]=r,(r=X2[f>>2])&&(X2[r+52>>2]=e),X2[f>>2]=e,h&&(S2[A+154|0]=1,J2[A+153|0]||(X2[8+C>>2]=19536,B4(r=(X2[12+C>>2]=A)+44|0,X2[r>>2],X2[e+48>>2],8+C|0),B4(A+4|0,X2[A+4>>2],X2[e+48>>2],8+C|0))),K2=48+C|0},function(A,e,r,f){var i;A|=0,f|=0,A=X2[(e|=0)+20>>2],X2[(r|=0)>>2]=X2[e+16>>2],X2[r+4>>2]=A,A=r+8|0,i=X2[(r=e+24|0)+4>>2],X2[A>>2]=X2[r>>2],X2[A+4>>2]=i,i=X2[(r=e+40|0)+4>>2],X2[(A=f+8|0)>>2]=X2[r>>2],X2[A+4>>2]=i,A=X2[e+36>>2],X2[f>>2]=X2[e+32>>2],X2[f+4>>2]=A},function(A,e,r,f,i,a){var n,b,t;A|=0,e|=0,r|=0,f|=0,i|=0,a|=0,X2[(K2=r=K2-16|0)+8>>2]=19680,X2[r+12>>2]=f,t=X2[A+168>>2],v4(X2[A+4>>2],e,n=f+4|0,b=f+20|0,U2[f+32>>2],i,a,t,r+8|0),v4(X2[A+44>>2],e,n,b,U2[f+32>>2],i,a,t,r+8|0),K2=r+16|0},function(A,e,r,f){var i,a,n;A|=0,e|=0,r|=0,X2[44+(K2=n=K2-48|0)>>2]=f|=0,X2[40+n>>2]=19608,a=X2[4+(i=e+8|0)>>2],X2[(f=16+n|0)>>2]=X2[i>>2],X2[f+4>>2]=a,a=X2[4+(i=r+8|0)>>2],X2[(f=32+n|0)>>2]=X2[i>>2],X2[f+4>>2]=a,f=X2[e+4>>2],X2[8+n>>2]=X2[e>>2],X2[12+n>>2]=f,e=X2[r+4>>2],X2[24+n>>2]=X2[r>>2],X2[28+n>>2]=e,l4(X2[A+4>>2],8+n|0,40+n|0),l4(X2[A+44>>2],8+n|0,40+n|0),K2=48+n|0},function(A,e){A|=0,e|=0;var r,f=0,i=0,a=0,n=0,b=0,t=0,o=0,c=0,k=0,u=0,s=P2(0),l=0;if(K2=r=K2-32|0,r1(b=A+4|0,1+((0|H2(X2[A+112>>2],X2[A+16>>2]))/100|0)|0),X2[A+124>>2]&&(r1(A+44|0,f=1+((0|H2(X2[A+108>>2],X2[A+56>>2]))/100|0)|0),f=X2[A+124>>2]-f|0,X2[A+124>>2]=0<(0|f)?f:0),f=(X2[A+104>>2]+1|0)%2|0,X2[A+104>>2]=f,f=X2[84+((f<<2)+A|0)>>2]){for(c=A+44|0,t=16+r|0;;)if(o=X2[f+56>>2],n=(i=X2[f+52>>2])?i+56|0:84+((X2[f+60>>2]<<2)+A|0)|0,X2[n>>2]=o,(i=X2[f+56>>2])&&(X2[i+52>>2]=X2[f+52>>2]),X2[f+52>>2]=0,X2[f+56>>2]=X2[A+92>>2],(i=X2[A+92>>2])&&(X2[i+52>>2]=f),X2[A+92>>2]=f,f1(b,i=X2[f+48>>2]),(n=X2[A+8>>2])&&(X2[6259]=X2[6259]+1,q2(X2[n-4>>2])),X2[A+8>>2]=i,X2[A+16>>2]=X2[A+16>>2]-1,k=X2[(a=f+24|0)+4>>2],X2[(i=n=8+r|0)>>2]=X2[a>>2],X2[i+4>>2]=k,i=X2[f+36>>2],X2[t>>2]=X2[f+32>>2],X2[t+4>>2]=i,k=X2[(a=f+40|0)+4>>2],X2[(i=t+8|0)>>2]=X2[a>>2],X2[i+4>>2]=k,i=X2[f+20>>2],X2[r>>2]=X2[f+16>>2],X2[4+r>>2]=i,(i=X2[A+48>>2])?X2[A+48>>2]=0:(i=0,X2[6258]=X2[6258]+1,(a=L2(63))&&(X2[(i=a+19&-16)-4>>2]=a),X2[i>>2]=0,X2[i+4>>2]=0,X2[i+40>>2]=0,X2[(a=i+32|0)>>2]=0,X2[a+4>>2]=0,X2[(a=i+24|0)>>2]=0,X2[a+4>>2]=0,X2[(a=i+16|0)>>2]=0,X2[a+4>>2]=0,X2[(a=i+8|0)>>2]=0,X2[a+4>>2]=0),X2[i+36>>2]=f,a=X2[4+r>>2],X2[i>>2]=X2[r>>2],X2[i+4>>2]=a,X2[i+40>>2]=0,k=X2[n+4>>2],X2[(a=i+8|0)>>2]=X2[n>>2],X2[a+4>>2]=k,a=X2[t+4>>2],X2[(n=i+16|0)>>2]=X2[t>>2],X2[n+4>>2]=a,k=X2[(a=24+r|0)+4>>2],X2[(n=i+24|0)>>2]=X2[a>>2],X2[n+4>>2]=k,X2[i+32>>2]=0,i1(c,X2[A+44>>2],i),X2[f+60>>2]=2,X2[f+48>>2]=i,i=X2[A+56>>2]+1|0,X2[A+56>>2]=i,!(f=o))break;S2[A+154|0]=1,X2[A+124>>2]=i}X2[r>>2]=19536,X2[4+r>>2]=A,J2[A+153|0]&&(B4(b,X2[A+4>>2],X2[A+44>>2],r),J2[A+153|0]&&B4(b,f=X2[b>>2],f,r));A:if(J2[A+154|0]&&(f=X2[A+96>>2],n=0|N2[X2[X2[f>>2]+28>>2]](f),!((0|(o=X2[n+4>>2]))<1))){e:{if(f=X2[A+120>>2],1<=(0|(i=(0|o)<(0|(f=(0|(i=(0|H2(X2[A+116>>2],o))/100|0))<(0|f)?f:i))?o:f))){for(f=0;;)if(b=X2[n+12>>2]+((X2[A+144>>2]+f|0)%(0|o)<<4)|0,a=X2[b>>2],t=X2[a+48>>2],c=X2[b+4>>2],b=X2[c+48>>2],U2[t>>2]<=U2[b+16>>2]&&U2[t+16>>2]>=U2[b>>2]&&U2[t+4>>2]<=U2[b+20>>2]&&U2[t+20>>2]>=U2[b+4>>2]&&U2[t+8>>2]<=U2[b+24>>2]&&U2[t+24>>2]>=U2[b+8>>2]||(o=X2[A+96>>2],N2[X2[X2[o>>2]+12>>2]](o,a,c,e),f=f-1|0,i=i-1|0,o=X2[n+4>>2]),!((0|(f=f+1|0))<(0|i)))break;if((0|o)<=0)break e}X2[A+144>>2]=(X2[A+144>>2]+i|0)%(0|o);break A}X2[A+144>>2]=0}if(S2[A+154|0]=0,X2[A+120>>2]=1,X2[A+140>>2]=X2[A+140>>2]+1,f=X2[A+132>>2],A=X2[(n=A)+128>>2],s=P2(0),A&&(s=P2(P2(f>>>0)/P2(A>>>0))),U2[n+136>>2]=s,X2[n+132>>2]=f>>>1,X2[n+128>>2]=A>>>1,A=X2[n+96>>2],0|N2[X2[X2[A>>2]+56>>2]](A)){if(A=X2[n+96>>2],a=0|N2[X2[X2[A>>2]+28>>2]](A),2<=(0|(A=X2[a+4>>2]))&&(u4(a,0,A-1|0),A=X2[a+4>>2]),1<=(0|A)){for(b=t=o=i=0;;)if(k=X2[a+12>>2]+i|0,f=X2[(u=k+4|0)>>2],c=t,t=X2[k>>2],((0|f)!=(0|b)||(0|c)!=(0|t))&&(b=X2[t+48>>2],c=X2[f+48>>2],U2[b>>2]<=U2[c+16>>2]&&U2[b+16>>2]>=U2[c>>2]&&U2[b+4>>2]<=U2[c+20>>2]&&U2[b+20>>2]>=U2[c+4>>2]&&U2[b+8>>2]<=U2[c+24>>2]&&U2[b+24>>2]>=U2[c+8>>2])||(A=X2[n+96>>2],N2[X2[X2[A>>2]+32>>2]](A,k,e),X2[u>>2]=0,o=o+1|(X2[k>>2]=0),A=X2[a+4>>2]),i=i+16|0,b=f,!((0|(l=l+1|0))<(0|A)))break;if(2<=(0|A)&&(u4(a,0,A-1|0),A=X2[a+4>>2]),t=A-o|0,(0|o)<=-1){if((0|t)>X2[a+8>>2]){if(e=0,t&&(X2[6258]=X2[6258]+1,(f=L2(19+(t<<4)|0))&&(X2[(e=f+19&-16)-4>>2]=f)),1<=(0|A))for(f=12,i=A;;)if(n=X2[a+12>>2]+f|0,X2[(b=e+f|0)-12>>2]=X2[n-12>>2],u=X2[(k=n-8|0)+4>>2],X2[(c=b-8|0)>>2]=X2[k>>2],X2[c+4>>2]=u,X2[b>>2]=X2[n>>2],f=f+16|0,!(i=i-1|0))break;(f=X2[a+12>>2])&&J2[a+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[a+12>>2]=e,S2[a+16|0]=1,X2[a+8>>2]=t}for(f=A<<4;;)if(A=X2[a+12>>2]+f|0,X2[A>>2]=0,X2[A+4>>2]=0,X2[(A=A+8|0)>>2]=0,f=f+16|(X2[A+4>>2]=0),!((A=o)>>>0<=(o=A+1|0)>>>0))break}A=t}X2[a+4>>2]=A}K2=32+r|0},d4,d4,function(A,e,r){A|=0,e|=0,r|=0;var f=P2(0),i=P2(0),a=P2(0),n=P2(0),b=P2(0),t=P2(0),o=P2(0),c=P2(0),k=X2[A+44>>2];(A=X2[A+4>>2])?(o=U2[A>>2],k?(f=U2[A+24>>2],i=(i=U2[k+24>>2])>2],a=(a=U2[k+20>>2])>2])<(n=U2[k+8>>2])?f:n,b=(f=U2[A+4>>2])<(b=U2[k+4>>2])?f:b,f=U2[A+16>>2],t=(t=U2[k+16>>2])>2])?o:f):(c=U2[A+28>>2],i=U2[A+24>>2],a=U2[A+20>>2],t=U2[A+16>>2],f=U2[A+12>>2],n=U2[A+8>>2],b=U2[A+4>>2])):k&&(c=U2[k+28>>2],i=U2[k+24>>2],a=U2[k+20>>2],t=U2[k+16>>2],f=U2[k+12>>2],n=U2[k+8>>2],b=U2[k+4>>2],o=U2[k>>2]),U2[e+12>>2]=f,U2[e+8>>2]=n,U2[e+4>>2]=b,U2[e>>2]=o,U2[r+12>>2]=c,U2[r+8>>2]=i,U2[r+4>>2]=a,U2[r>>2]=t},function(A,e){e|=0,X2[(A|=0)+16>>2]==(0-X2[A+56>>2]|0)&&(e1(A+4|0),e1(A+44|0),S2[A+153|0]=0,S2[A+154|0]=1,X2[A+124>>2]=0,X2[A+104>>2]=0,X2[A+116>>2]=10,X2[A+120>>2]=1,X2[A+108>>2]=1,X2[A+112>>2]=0,X2[(e=A+84|0)>>2]=0,X2[e+4>>2]=0,X2[A+92>>2]=0,X2[A+128>>2]=0,X2[A+132>>2]=0,X2[(e=A+136|0)>>2]=0,X2[e+4>>2]=0,X2[(A=A+144|0)>>2]=0,X2[A+4>>2]=0)},Z4,A,function(A,e,r){var f;A|=0,(0|(e|=0))!=(0|(r|=0))&&(f=X2[X2[A+4>>2]+96>>2],N2[X2[X2[f>>2]+8>>2]](f,X2[e+36>>2],X2[r+36>>2]),A=X2[A+4>>2],X2[A+120>>2]=X2[A+120>>2]+1)},function(A,e){N2[X2[X2[(A|=0)>>2]+8>>2]](A,e|=0,X2[X2[A+8>>2]+48>>2])},A,_4,A,_4,function(A){var e;return X2[(A|=0)>>2]=19804,(e=X2[A+556>>2])&&J2[A+560|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+556>>2]=0,X2[A>>2]=10112,S2[A+560|0]=1,X2[(e=A+548|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+296>>2])&&J2[A+300|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+296>>2]=0,S2[A+300|0]=1,X2[(e=A+288|0)>>2]=0,(X2[4+e>>2]=0)|A},function(A){var e;X2[(A|=0)>>2]=19804,(e=X2[A+556>>2])&&J2[A+560|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+556>>2]=0,X2[A>>2]=10112,S2[A+560|0]=1,X2[(e=A+548|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+296>>2])&&J2[A+300|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+296>>2]=0,S2[A+300|0]=1,X2[(e=A+288|0)>>2]=0,X2[4+e>>2]=0,X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},function(A){return 496},function(A,e,r){return _0(A|=0,e|=0,r|=0),U2[e+264>>2]=U2[A+324>>2],U2[e+268>>2]=U2[A+328>>2],U2[e+272>>2]=U2[A+332>>2],U2[e+276>>2]=U2[A+336>>2],U2[e+280>>2]=U2[A+340>>2],U2[e+284>>2]=U2[A+344>>2],U2[e+288>>2]=U2[A+348>>2],U2[e+292>>2]=U2[A+352>>2],U2[e+296>>2]=U2[A+356>>2],U2[e+300>>2]=U2[A+360>>2],U2[e+304>>2]=U2[A+364>>2],U2[e+308>>2]=U2[A+368>>2],U2[e+312>>2]=U2[A+372>>2],U2[e+316>>2]=U2[A+376>>2],U2[e+320>>2]=U2[A+380>>2],U2[e+324>>2]=U2[A+384>>2],U2[e+328>>2]=U2[A+388>>2],U2[e+332>>2]=U2[A+392>>2],U2[e+336>>2]=U2[A+396>>2],U2[e+340>>2]=U2[A+400>>2],U2[e+456>>2]=U2[A+404>>2],U2[e+344>>2]=U2[A+604>>2],U2[e+348>>2]=U2[A+608>>2],U2[e+352>>2]=U2[A+612>>2],U2[e+356>>2]=U2[A+616>>2],U2[e+360>>2]=U2[A+408>>2],U2[e+364>>2]=U2[A+412>>2],U2[e+368>>2]=U2[A+416>>2],U2[e+372>>2]=U2[A+420>>2],U2[e+376>>2]=U2[A+424>>2],U2[e+380>>2]=U2[A+428>>2],U2[e+384>>2]=U2[A+432>>2],U2[e+388>>2]=U2[A+436>>2],U2[e+392>>2]=U2[A+440>>2],U2[e+396>>2]=U2[A+444>>2],U2[e+400>>2]=U2[A+448>>2],U2[e+404>>2]=U2[A+452>>2],U2[e+408>>2]=U2[A+456>>2],U2[e+412>>2]=U2[A+460>>2],U2[e+416>>2]=U2[A+464>>2],U2[e+420>>2]=U2[A+468>>2],U2[e+424>>2]=U2[A+472>>2],U2[e+428>>2]=U2[A+476>>2],U2[e+432>>2]=U2[A+480>>2],U2[e+436>>2]=U2[A+484>>2],U2[e+440>>2]=U2[A+488>>2],U2[e+444>>2]=U2[A+492>>2],U2[e+448>>2]=U2[A+496>>2],U2[e+452>>2]=U2[A+500>>2],r=X2[A+508>>2],X2[e+460>>2]=X2[A+504>>2],X2[e+464>>2]=r,r=X2[A+520>>2],X2[e+468>>2]=X2[A+516>>2],X2[e+472>>2]=r,r=X2[A+528>>2],X2[e+476>>2]=X2[A+524>>2],X2[e+480>>2]=r,r=X2[A+536>>2],X2[e+484>>2]=X2[A+532>>2],X2[e+488>>2]=r,X2[e+492>>2]=J2[A+512|0],19844},function(A,e){var r,f=0,i=0,i=e|=0,a=0|N2[X2[X2[(A|=0)>>2]+16>>2]](A),n=X2[X2[e>>2]+16>>2],f=0|N2[n](0|i,0|a,1);r=e,i=0|N2[X2[X2[A>>2]+20>>2]](A,X2[8+(a=f)>>2],e),f=A,n=X2[X2[e>>2]+20>>2],N2[n](0|r,0|a,0|i,1497645650,0|f)},h4,function(A){A=h4(A|=0),X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},f,function(A,e,r,f,i,a,n,b,t,o){return P2(N2[X2[X2[(A|=0)>>2]+44>>2]](A,e|=0,r|=0,f|=0,i|=0,a|=0,n|=0,b|=0,t|=0)),P2(N2[X2[X2[A>>2]+48>>2]](A,e,r,f,i,a,n,b,t)),P2(N2[X2[X2[A>>2]+36>>2]](A,e,r,b)),P2(P2(0))},f,function(A){X2[(A|=0)+232>>2]=0},U1,function(A,x,y,e){A|=0,x|=0,y|=0,e|=0;var r,f,i,a,n,b,t,V,p,M,S,X,J,U,H,P,j,z,O,K,L,q,$,A2,e2,r2,f2,i2,a2,n2,b2,t2,o2,c2,k2,u2,s2,l2,B2,v2,d2,Z2,_2,g2,E2,Q2,w2,G2,C2,o,c=P2(0),k=0,u=P2(0),s=P2(0),l=P2(0),B=P2(0),v=P2(0),d=0,Z=P2(0),_=P2(0),g=0,E=P2(0),Q=P2(0),w=P2(0),G=P2(0),C=P2(0),h=0,F=P2(0),Y=P2(0),m=P2(0),N=0,R=0,D=P2(0),T=P2(0),h2=0,W=P2(0),I=0,F2=0,Y2=P2(0),m2=P2(0),N2=P2(0),R2=(P2(0),P2(0),P2(0)),D2=P2(0),T2=P2(0),W2=P2(0),I2=0,x2=0,y2=(P2(0),P2(0),P2(0),P2(0)),V2=P2(0),p2=P2(0),M2=P2(0);if(K2=o=K2+-64|0,1<=(0|y))for(;;){if(P=X2[(x2<<2)+x>>2],r=X2[P+840>>2],M=F4(A,f=X2[P+836>>2],U2[e+12>>2]),p=F4(A,r,U2[e+12>>2]),O=H2(M,244),R=X2[A+16>>2],c=U2[(g=O+R|0)+128>>2],s=P2(c*c),c=U2[g+132>>2],s=P2(s+P2(c*c)),c=U2[g+136>>2],!(P2(s+P2(c*c))>2],s=P2(c*c),c=U2[k+132>>2],s=P2(s+P2(c*c)),c=U2[k+136>>2],P2(s+P2(c*c))>2]))<1))for(A2=(k=R+(K=H2(p,244))|0)+232|0,e2=k+200|0,r2=k+228|0,f2=k+196|0,i2=k+224|0,a2=k+192|0,n2=k+216|0,b2=k+184|0,t2=k+212|0,o2=k+180|0,c2=k+208|0,k2=k+176|0,u2=k+240|0,s2=g+232|0,l2=g+200|0,B2=g+228|0,v2=g+196|0,d2=g+224|0,Z2=g+192|0,_2=g+216|0,g2=g+184|0,E2=g+212|0,Q2=g+180|0,w2=g+208|0,G2=g+176|0,C2=g+240|0,I2=0;;){if(i=H2(I2,208)+P|0,U2[(j=84+i|0)>>2]<=U2[P+852>>2]){if(H=4+i|0,(0|(d=R=X2[A+28>>2]))==X2[A+32>>2]&&!((0|(h2=(d=R)?d<<1:1))<=(0|d))){if(g=0,h2&&(X2[6258]=X2[6258]+1,(k=L2(H2(h2,152)+19|0))&&(X2[(g=k+19&-16)-4>>2]=k)),1<=(0|R))for(d=0,k=R;;)if($2(d+g|0,X2[A+36>>2]+d|0,152),d=d+152|0,!(k=k-1|0))break;(k=X2[A+36>>2])&&J2[A+40|0]&&(X2[6259]=X2[6259]+1,q2(X2[k-4>>2])),X2[A+36>>2]=g,S2[A+40|0]=1,X2[A+32>>2]=h2,d=X2[A+28>>2]}X2[A+28>>2]=d+1,k=X2[A+36>>2]+H2(R,152)|0,X2[k+132>>2]=H,X2[k+148>>2]=p,X2[k+144>>2]=M,X2[60+o>>2]=0,X=P2(U2[60+i>>2]-U2[f+60>>2]),U2[56+o>>2]=X,J=P2(U2[56+i>>2]-U2[f+56>>2]),U2[52+o>>2]=J,Z=P2(U2[52+i>>2]-U2[f+52>>2]),U2[48+o>>2]=Z,B=U2[36+i>>2],s=U2[40+i>>2],l=U2[44+i>>2],u=U2[r+52>>2],W=U2[r+56>>2],c=U2[r+60>>2],X2[44+o>>2]=0,D=P2(l-c),U2[40+o>>2]=D,G=P2(s-W),U2[36+o>>2]=G,T=P2(B-u),U2[32+o>>2]=T,V2=P2(0),p2=P2(0),M2=P2(0),R2=P2(0),X2[C2>>2]&&(u=P2(U2[Z2>>2]+U2[d2>>2]),W=P2(U2[v2>>2]+U2[B2>>2]),R2=P2(P2(U2[g2>>2]+U2[_2>>2])+P2(P2(J*u)-P2(Z*W))),c=P2(U2[l2>>2]+U2[s2>>2]),M2=P2(P2(U2[Q2>>2]+U2[E2>>2])+P2(P2(Z*c)-P2(X*u))),p2=P2(P2(U2[G2>>2]+U2[w2>>2])+P2(P2(X*W)-P2(J*c)))),D2=P2(0),T2=P2(0),X2[u2>>2]&&(u=P2(U2[a2>>2]+U2[i2>>2]),W=P2(U2[f2>>2]+U2[r2>>2]),T2=P2(P2(U2[b2>>2]+U2[n2>>2])+P2(P2(G*u)-P2(T*W))),c=P2(U2[e2>>2]+U2[A2>>2]),D2=P2(P2(U2[o2>>2]+U2[t2>>2])+P2(P2(T*c)-P2(D*u))),V2=P2(P2(U2[k2>>2]+U2[c2>>2])+P2(P2(D*W)-P2(G*c)))),L=U2[(S=72+i|0)>>2],q=U2[(V=68+i|0)>>2],$=U2[(U=76+i|0)>>2],l=U2[e+12>>2],d=X2[A+16>>2],b=X2[240+(a=d+K|0)>>2],t=X2[240+(n=d+O|0)>>2],y2=U2[e+36>>2],W2=U2[e+40>>2],W=U2[e+28>>2],6&(d=X2[(z=132+i|0)>>2])?(W2=2&d?U2[156+i>>2]:W2,4&d&&(y2=U2[160+i>>2])):8&d&&(c=P2(l*U2[156+i>>2]),u=P2(z2(P2(c+U2[160+i>>2]),P2(1.1920928955078125e-7))),y2=P2(c/u),W2=P2(P2(1)/u)),C=P2(P2(L*Z)-P2(J*q)),m=P2(P2(X*q)-P2($*Z)),Q=P2(P2(J*$)-P2(X*L)),_=P2(0),w=P2(0),Y2=P2(0),m2=P2(0),t&&(m2=P2(P2(P2(P2(Q*U2[t+356>>2])+P2(m*U2[t+360>>2]))+P2(C*U2[t+364>>2]))*U2[t+612>>2]),Y2=P2(P2(P2(P2(Q*U2[t+340>>2])+P2(m*U2[t+344>>2]))+P2(C*U2[t+348>>2]))*U2[t+608>>2]),w=P2(P2(P2(P2(Q*U2[t+324>>2])+P2(m*U2[t+328>>2]))+P2(C*U2[t+332>>2]))*U2[t+604>>2])),U2[k+64>>2]=w,X2[k+76>>2]=0,U2[(h=k+72|0)>>2]=m2,U2[(N=k+68|0)>>2]=Y2,u=U2[S>>2],c=U2[V>>2],E=P2(P2(u*T)-P2(G*c)),s=P2(D*c),c=U2[U>>2],s=P2(s-P2(c*T)),B=P2(P2(G*c)-P2(D*u)),N2=P2(0),v=P2(0),b&&(c=P2(-s),v=P2(P2(P2(P2(U2[b+360>>2]*c)-P2(B*U2[b+356>>2]))-P2(E*U2[b+364>>2]))*U2[b+612>>2]),_=P2(P2(P2(P2(U2[b+328>>2]*c)-P2(B*U2[b+324>>2]))-P2(E*U2[b+332>>2]))*U2[b+604>>2]),N2=P2(P2(P2(P2(U2[b+344>>2]*c)-P2(B*U2[b+340>>2]))-P2(E*U2[b+348>>2]))*U2[b+608>>2])),U2[k+80>>2]=_,X2[k+92>>2]=0,U2[(I=k+88|0)>>2]=v,U2[(F2=k+84|0)>>2]=N2,d=k,u=W,Y=P2(P2(1)/l),l=F=P2(Y*W2),c=P2(t?U2[t+404>>2]+P2(P2(P2(P2(P2(Y2*X)-P2(m2*J))*U2[V>>2])+P2(P2(P2(m2*Z)-P2(X*w))*U2[S>>2]))+P2(P2(P2(J*w)-P2(Y2*Z))*U2[U>>2])):0),v=P2(b?U2[b+404>>2]+P2(P2(P2(P2(P2(v*G)-P2(N2*D))*U2[V>>2])+P2(P2(P2(_*D)-P2(v*T))*U2[S>>2]))+P2(P2(P2(N2*T)-P2(_*G))*U2[U>>2])):0),U2[d+108>>2]=u/P2(l+P2(c+v)),t?(d=X2[4+V>>2],X2[k+16>>2]=X2[V>>2],X2[k+20>>2]=d,h2=X2[(d=8+V|0)+4>>2],g=X2[d>>2],U2[k>>2]=Q,X2[k+12>>2]=0,U2[k+8>>2]=C,U2[k+4>>2]=m,X2[(d=k+24|0)>>2]=g,X2[d+4>>2]=h2):(X2[k>>2]=0,X2[k+4>>2]=0,X2[(d=k+24|0)>>2]=0,X2[d+4>>2]=0,X2[(d=k+16|0)>>2]=0,X2[d+4>>2]=0,X2[(d=k+8|0)>>2]=0,X2[d+4>>2]=0),b?(u=U2[S>>2],c=U2[U>>2],U2[k+48>>2]=-U2[V>>2],U2[k+32>>2]=-B,X2[k+60>>2]=0,U2[k+56>>2]=-c,U2[k+52>>2]=-u,X2[k+44>>2]=0,U2[k+40>>2]=-E,U2[k+36>>2]=-s):(X2[k+32>>2]=0,X2[k+36>>2]=0,X2[(d=k+56|0)>>2]=0,X2[d+4>>2]=0,X2[(d=k+48|0)>>2]=0,X2[d+4>>2]=0,X2[(d=k+40|0)>>2]=0,X2[d+4>>2]=0),m=U2[e+64>>2],Q=U2[j>>2],_=P2(0),Y2=P2(0),m2=P2(0),N2=P2(0),t&&(l=U2[t+388>>2],u=U2[t+392>>2],N2=P2(P2(P2(J*l)-P2(u*Z))+U2[t+380>>2]),c=U2[t+396>>2],m2=P2(P2(P2(c*Z)-P2(X*l))+U2[t+376>>2]),Y2=P2(P2(P2(u*X)-P2(c*J))+U2[t+372>>2])),v=P2(0),Z=P2(0),b&&(l=U2[b+388>>2],u=U2[b+392>>2],Z=P2(P2(P2(G*l)-P2(u*T))+U2[b+380>>2]),c=U2[b+396>>2],v=P2(P2(P2(c*T)-P2(D*l))+U2[b+376>>2]),_=P2(P2(P2(u*D)-P2(c*G))+U2[b+372>>2])),j=240+a|0,h2=240+n|0,l=U2[U>>2],u=U2[V>>2],c=U2[S>>2],U2[k+104>>2]=U2[88+i>>2],c=P2(P2(P2(u*P2(Y2-_))+P2(c*P2(m2-v)))+P2(l*P2(N2-Z))),C=U2[e+96>>2]>P2(j2(c))?P2(0):P2(U2[100+i>>2]*P2(-c)),4&(d=X2[e+72>>2])?(B=P2(U2[136+i>>2]*U2[e+68>>2]),U2[k+100>>2]=B,t&&X2[h2>>2]&&(s=U2[t+416>>2],l=U2[k+24>>2],u=U2[t+412>>2],c=U2[k+20>>2],U2[64+n>>2]=P2(U2[112+n>>2]*P2(B*P2(P2(U2[k+16>>2]*U2[128+n>>2])*U2[t+408>>2])))+U2[64+n>>2],U2[(g=68+n|0)>>2]=P2(P2(B*P2(u*P2(c*U2[132+n>>2])))*U2[116+n>>2])+U2[g>>2],U2[(g=72+n|0)>>2]=P2(P2(B*P2(s*P2(l*U2[136+n>>2])))*U2[120+n>>2])+U2[g>>2],l=U2[h>>2],u=U2[N>>2],U2[80+n>>2]=P2(P2(B*U2[96+n>>2])*U2[k- -64>>2])+U2[80+n>>2],c=U2[104+n>>2],U2[(g=84+n|0)>>2]=P2(u*P2(B*U2[100+n>>2]))+U2[g>>2],U2[(g=88+n|0)>>2]=P2(l*P2(B*c))+U2[g>>2]),b&&X2[j>>2]&&(w=U2[b+416>>2],E=U2[k+56>>2],B=U2[b+412>>2],s=U2[k+52>>2],l=U2[I>>2],u=U2[F2>>2],c=U2[k+80>>2],v=P2(-U2[k+100>>2]),U2[64+a>>2]=U2[64+a>>2]-P2(U2[112+a>>2]*P2(P2(P2(U2[128+a>>2]*U2[k+48>>2])*U2[b+408>>2])*v)),U2[(g=68+a|0)>>2]=U2[g>>2]-P2(P2(P2(B*P2(s*U2[132+a>>2]))*v)*U2[116+a>>2]),U2[(g=72+a|0)>>2]=U2[g>>2]-P2(P2(P2(w*P2(E*U2[136+a>>2]))*v)*U2[120+a>>2]),U2[80+a>>2]=U2[80+a>>2]-P2(c*P2(U2[96+a>>2]*v)),c=U2[104+a>>2],U2[(g=84+a|0)>>2]=U2[g>>2]-P2(u*P2(U2[100+a>>2]*v)),U2[(g=88+a|0)>>2]=U2[g>>2]-P2(l*P2(c*v)))):X2[k+100>>2]=0,X2[k+96>>2]=0,D=P2(0),G=P2(0),_=P2(0),Y2=P2(0),m2=P2(0),Z=P2(0),N2=P2(0),v=P2(0),W2=P2(0),s=P2(0),g=k+108|0,l=C<=P2(0)?P2(0):C,c=X2[h2>>2]?(m2=U2[224+n>>2],Y2=U2[228+n>>2],D=U2[216+n>>2],G=U2[212+n>>2],_=U2[232+n>>2],U2[208+n>>2]):P2(0),G=P2(P2(P2(P2(P2(c+U2[176+n>>2])*U2[k+16>>2])+P2(P2(G+U2[180+n>>2])*U2[k+20>>2]))+P2(P2(D+U2[184+n>>2])*U2[k+24>>2]))+P2(P2(P2(P2(m2+U2[192+n>>2])*U2[k>>2])+P2(P2(Y2+U2[196+n>>2])*U2[k+4>>2]))+P2(P2(_+U2[200+n>>2])*U2[k+8>>2]))),c=X2[j>>2]?(s=U2[224+a>>2],v=U2[232+a>>2],W2=U2[228+a>>2],N2=U2[216+a>>2],Z=U2[212+a>>2],U2[208+a>>2]):P2(0),_=P2(l-P2(G+P2(P2(P2(P2(P2(c+U2[176+a>>2])*U2[k+48>>2])+P2(P2(Z+U2[180+a>>2])*U2[k+52>>2]))+P2(P2(N2+U2[184+a>>2])*U2[k+56>>2]))+P2(P2(P2(P2(s+U2[192+a>>2])*U2[k+32>>2])+P2(P2(W2+U2[196+a>>2])*U2[k+36>>2]))+P2(P2(v+U2[200+a>>2])*U2[k+40>>2]))))),u=U2[e+56>>2],X2[k+120>>2]=0,X2[k+124>>2]=1343554297,l=U2[g>>2],U2[k+116>>2]=F*l,X2[k+140>>2]=X2[A+68>>2],h=k,c=(s=P2(Q+m))>P2(0)?(_=P2(_-P2(Y*s)),P2(0)):P2(Y*P2(y2*P2(-s))),c=P2(c*l),g=!X2[e+52>>2]|u>2]=g?P2(0):c,s=c,c=P2(_*l),U2[k+112>>2]=g?P2(s+c):c,g=k+140|0,U2[(h2=92+i|0)>>2]>P2(0)&&(Y4(A,V,M,p,R,U2[96+i>>2]),B=U2[U>>2],G=P2(j2(B))>P2(.7071067690849304)?(u=U2[S>>2],c=P2(P2(B*B)+P2(u*u)),l=P2(P2(1)/P2(O2(c))),T=P2(c*l),c=U2[V>>2],Z=P2(l*P2(-B)),D=P2(c*Z),_=P2(0),v=P2(u*l),P2(v*P2(-c))):(l=U2[V>>2],u=U2[S>>2],c=P2(P2(l*l)+P2(u*u)),s=P2(P2(1)/P2(O2(c))),D=P2(c*s),Z=P2(l*s),T=P2(Z*P2(-B)),v=P2(0),_=P2(s*P2(-u)),P2(B*_)),c=P2(P2(1)/P2(O2(P2(P2(P2(_*_)+P2(Z*Z))+P2(v*v))))),v=P2(v*c),U2[24+o>>2]=v,Z=P2(Z*c),U2[20+o>>2]=Z,_=P2(_*c),U2[16+o>>2]=_,c=P2(P2(1)/P2(O2(P2(P2(D*D)+P2(P2(T*T)+P2(G*G)))))),D=P2(D*c),U2[8+o>>2]=D,G=P2(G*c),U2[4+o>>2]=G,T=P2(T*c),U2[o>>2]=T,(d=2&X2[f+180>>2])&&(X2[28+o>>2]=0,m=U2[f+4>>2],Q=U2[f+20>>2],w=U2[f+36>>2],Y=P2(P2(P2(P2(_*m)+P2(Z*Q))+P2(v*w))*U2[f+164>>2]),E=U2[f+8>>2],B=U2[f+24>>2],s=U2[f+40>>2],C=P2(P2(P2(P2(_*E)+P2(Z*B))+P2(v*s))*U2[f+168>>2]),l=U2[f+12>>2],u=U2[f+28>>2],c=U2[f+44>>2],F=P2(P2(P2(P2(_*l)+P2(Z*u))+P2(v*c))*U2[f+172>>2]),v=P2(P2(P2(w*Y)+P2(s*C))+P2(c*F)),U2[24+o>>2]=v,Z=P2(P2(P2(Q*Y)+P2(B*C))+P2(u*F)),U2[20+o>>2]=Z,_=P2(P2(P2(m*Y)+P2(E*C))+P2(l*F)),U2[16+o>>2]=_),(k=2&X2[r+180>>2])&&(X2[28+o>>2]=0,m=U2[r+4>>2],Q=U2[r+20>>2],w=U2[r+36>>2],Y=P2(P2(P2(P2(m*_)+P2(Q*Z))+P2(w*v))*U2[r+164>>2]),E=U2[r+8>>2],B=U2[r+24>>2],s=U2[r+40>>2],C=P2(P2(P2(P2(_*E)+P2(Z*B))+P2(v*s))*U2[r+168>>2]),l=U2[r+12>>2],u=U2[r+28>>2],c=U2[r+44>>2],F=P2(P2(P2(P2(_*l)+P2(Z*u))+P2(v*c))*U2[r+172>>2]),v=P2(P2(P2(w*Y)+P2(s*C))+P2(c*F)),U2[24+o>>2]=v,Z=P2(P2(P2(Q*Y)+P2(B*C))+P2(u*F)),U2[20+o>>2]=Z,_=P2(P2(P2(m*Y)+P2(E*C))+P2(l*F)),U2[16+o>>2]=_),d&&(X2[12+o>>2]=0,m=U2[f+4>>2],Q=U2[f+20>>2],w=U2[f+36>>2],Y=P2(P2(P2(P2(T*m)+P2(G*Q))+P2(D*w))*U2[f+164>>2]),E=U2[f+8>>2],B=U2[f+24>>2],s=U2[f+40>>2],C=P2(P2(P2(P2(T*E)+P2(G*B))+P2(D*s))*U2[f+168>>2]),l=U2[f+12>>2],u=U2[f+28>>2],c=U2[f+44>>2],F=P2(P2(P2(P2(T*l)+P2(G*u))+P2(D*c))*U2[f+172>>2]),D=P2(P2(P2(w*Y)+P2(s*C))+P2(c*F)),U2[8+o>>2]=D,G=P2(P2(P2(Q*Y)+P2(B*C))+P2(u*F)),U2[4+o>>2]=G,T=P2(P2(P2(m*Y)+P2(E*C))+P2(l*F)),U2[o>>2]=T),k&&(X2[12+o>>2]=0,m=U2[r+4>>2],Q=U2[r+20>>2],w=U2[r+36>>2],Y=P2(P2(P2(P2(m*T)+P2(Q*G))+P2(w*D))*U2[r+164>>2]),E=U2[r+8>>2],B=U2[r+24>>2],s=U2[r+40>>2],C=P2(P2(P2(P2(T*E)+P2(G*B))+P2(D*s))*U2[r+168>>2]),l=U2[r+12>>2],u=U2[r+28>>2],c=U2[r+44>>2],F=P2(P2(P2(P2(T*l)+P2(G*u))+P2(D*c))*U2[r+172>>2]),D=P2(P2(P2(w*Y)+P2(s*C))+P2(c*F)),U2[8+o>>2]=D,G=P2(P2(P2(Q*Y)+P2(B*C))+P2(u*F)),U2[4+o>>2]=G,T=P2(P2(P2(m*Y)+P2(E*C))+P2(l*F)),U2[o>>2]=T),.001<+P2(O2(P2(P2(P2(_*_)+P2(Z*Z))+P2(v*v))))&&Y4(A,16+o|0,M,p,R,U2[h2>>2]),.001<+P2(O2(P2(P2(P2(T*T)+P2(G*G))+P2(D*D))))&&Y4(A,o,M,p,R,U2[h2>>2]),d=X2[e+72>>2]),1&S2[0|z]&&32&d?(m4(A,172+i|0,M,p,R,H,48+o|0,32+o|0,W,e,U2[148+i>>2],U2[(k=164+i|0)>>2]),16&J2[e+72|0]&&m4(A,188+i|0,M,p,R,H,48+o|0,32+o|0,W,e,U2[152+i>>2],U2[k>>2])):(X2[(k=184+i|0)>>2]=0,l=P2(p2-V2),u=P2(M2-D2),c=P2(R2-T2),E=P2(P2(P2(l*q)+P2(u*L))+P2(c*$)),N=180+i|0,Q=U2[U>>2],B=P2(c-P2(E*Q)),U2[N>>2]=B,I=176+i|0,w=U2[S>>2],s=P2(u-P2(E*w)),U2[I>>2]=s,h=172+i|0,c=l,l=U2[V>>2],u=P2(c-P2(E*l)),U2[h>>2]=u,!(64&J2[e+72|0])&&(c=P2(P2(P2(u*u)+P2(s*s))+P2(B*B)))>P2(1.1920928955078125e-7)?(c=P2(P2(1)/P2(O2(c))),_=P2(s*c),U2[I>>2]=_,v=P2(u*c),U2[h>>2]=v,Z=P2(B*c),U2[N>>2]=Z,1&S2[f+180|0]&&(l=U2[f+172>>2],Y=U2[f+44>>2],C=U2[f+12>>2],F=U2[f+28>>2],u=U2[f+164>>2],m=U2[f+36>>2],Q=U2[f+4>>2],s=U2[f+20>>2],c=U2[f+168>>2],w=U2[f+40>>2],E=U2[f+8>>2],B=U2[f+24>>2],X2[k>>2]=0,G=s,s=P2(u*P2(P2(P2(v*Q)+P2(_*s))+P2(Z*m))),u=P2(c*P2(P2(P2(v*E)+P2(_*B))+P2(Z*w))),c=P2(l*P2(P2(P2(v*C)+P2(_*F))+P2(Z*Y))),_=P2(P2(P2(G*s)+P2(B*u))+P2(F*c)),U2[I>>2]=_,v=P2(P2(P2(Q*s)+P2(E*u))+P2(C*c)),U2[h>>2]=v,Z=P2(P2(P2(m*s)+P2(w*u))+P2(Y*c)),U2[N>>2]=Z),1&S2[r+180|0]&&(l=U2[r+172>>2],Y=U2[r+44>>2],C=U2[r+12>>2],F=U2[r+28>>2],u=U2[r+164>>2],m=U2[r+36>>2],Q=U2[r+4>>2],s=U2[r+20>>2],c=U2[r+168>>2],w=U2[r+40>>2],E=U2[r+8>>2],B=U2[r+24>>2],X2[k>>2]=0,G=s,s=P2(u*P2(P2(P2(Q*v)+P2(s*_))+P2(m*Z))),u=P2(c*P2(P2(P2(v*E)+P2(_*B))+P2(Z*w))),c=P2(l*P2(P2(P2(v*C)+P2(_*F))+P2(Z*Y))),U2[I>>2]=P2(P2(G*s)+P2(B*u))+P2(F*c),U2[h>>2]=P2(P2(Q*s)+P2(E*u))+P2(C*c),U2[N>>2]=P2(P2(m*s)+P2(w*u))+P2(Y*c)),m4(A,h,M,p,R,H,48+o|0,32+o|0,W,e,P2(0),P2(0)),16&J2[e+72|0]&&(d=196+i|(X2[(h2=200+i|0)>>2]=0),B=U2[S>>2],s=U2[h>>2],c=U2[I>>2],l=U2[V>>2],E=P2(P2(B*s)-P2(c*l)),u=U2[U>>2],F=P2(c*u),c=U2[N>>2],B=P2(F-P2(c*B)),u=P2(P2(c*l)-P2(u*s)),c=P2(P2(1)/P2(O2(P2(P2(P2(B*B)+P2(u*u))+P2(E*E))))),v=P2(E*c),U2[d>>2]=v,k=192+i|0,Z=P2(u*c),U2[k>>2]=Z,F2=188+i|0,_=P2(B*c),U2[F2>>2]=_,1&S2[f+180|0]&&(l=U2[f+172>>2],Y=U2[f+44>>2],C=U2[f+12>>2],F=U2[f+28>>2],u=U2[f+164>>2],m=U2[f+36>>2],Q=U2[f+4>>2],s=U2[f+20>>2],c=U2[f+168>>2],w=U2[f+40>>2],E=U2[f+8>>2],B=U2[f+24>>2],X2[h2>>2]=0,G=s,s=P2(u*P2(P2(P2(_*Q)+P2(Z*s))+P2(v*m))),u=P2(c*P2(P2(P2(_*E)+P2(Z*B))+P2(v*w))),c=P2(l*P2(P2(P2(_*C)+P2(Z*F))+P2(v*Y))),Z=P2(P2(P2(G*s)+P2(B*u))+P2(F*c)),U2[k>>2]=Z,_=P2(P2(P2(Q*s)+P2(E*u))+P2(C*c)),U2[F2>>2]=_,v=P2(P2(P2(m*s)+P2(w*u))+P2(Y*c)),U2[d>>2]=v),1&S2[r+180|0]&&(l=U2[r+172>>2],Y=U2[r+44>>2],C=U2[r+12>>2],F=U2[r+28>>2],u=U2[r+164>>2],m=U2[r+36>>2],Q=U2[r+4>>2],s=U2[r+20>>2],c=U2[r+168>>2],w=U2[r+40>>2],E=U2[r+8>>2],B=U2[r+24>>2],X2[h2>>2]=0,G=s,s=P2(u*P2(P2(P2(Q*_)+P2(s*Z))+P2(m*v))),u=P2(c*P2(P2(P2(_*E)+P2(Z*B))+P2(v*w))),c=P2(l*P2(P2(P2(_*C)+P2(Z*F))+P2(v*Y))),U2[k>>2]=P2(P2(G*s)+P2(B*u))+P2(F*c),U2[F2>>2]=P2(P2(Q*s)+P2(E*u))+P2(C*c),U2[d>>2]=P2(P2(m*s)+P2(w*u))+P2(Y*c)),m4(A,F2,M,p,R,H,48+o|0,32+o|0,W,e,P2(0),P2(0)))):(F2=188+i|0,T=P2(j2(Q))>P2(.7071067690849304)?(X2[h>>2]=0,c=P2(P2(w*w)+P2(Q*Q)),u=P2(P2(1)/P2(O2(c))),v=P2(u*P2(-Q)),U2[I>>2]=v,Z=P2(w*u),U2[N>>2]=Z,D=P2(c*u),G=P2(l*v),_=P2(0),P2(Z*P2(-l))):(X2[N>>2]=0,c=P2(P2(l*l)+P2(w*w)),u=P2(P2(1)/P2(O2(c))),v=P2(l*u),U2[I>>2]=v,_=P2(u*P2(-w)),U2[h>>2]=_,G=P2(c*u),D=P2(v*P2(-Q)),Z=P2(0),P2(Q*_)),U2[F2>>2]=D,U2[(h2=196+i|0)>>2]=G,U2[(d=192+i|0)>>2]=T,1&S2[f+180|0]&&(l=U2[f+172>>2],Y=U2[f+44>>2],C=U2[f+12>>2],F=U2[f+28>>2],u=U2[f+164>>2],m=U2[f+36>>2],Q=U2[f+4>>2],s=U2[f+20>>2],c=U2[f+168>>2],w=U2[f+40>>2],E=U2[f+8>>2],B=U2[f+24>>2],X2[k>>2]=0,G=s,s=P2(u*P2(P2(P2(Q*_)+P2(s*v))+P2(m*Z))),u=P2(c*P2(P2(P2(_*E)+P2(v*B))+P2(Z*w))),c=P2(l*P2(P2(P2(_*C)+P2(v*F))+P2(Z*Y))),v=P2(P2(P2(G*s)+P2(B*u))+P2(F*c)),U2[I>>2]=v,_=P2(P2(P2(Q*s)+P2(E*u))+P2(C*c)),U2[h>>2]=_,Z=P2(P2(P2(m*s)+P2(w*u))+P2(Y*c)),U2[N>>2]=Z),1&S2[r+180|0]&&(l=U2[r+172>>2],Y=U2[r+44>>2],C=U2[r+12>>2],F=U2[r+28>>2],u=U2[r+164>>2],m=U2[r+36>>2],Q=U2[r+4>>2],s=U2[r+20>>2],c=U2[r+168>>2],w=U2[r+40>>2],E=U2[r+8>>2],B=U2[r+24>>2],X2[k>>2]=0,G=s,s=P2(u*P2(P2(P2(Q*_)+P2(s*v))+P2(m*Z))),u=P2(c*P2(P2(P2(_*E)+P2(v*B))+P2(Z*w))),c=P2(l*P2(P2(P2(_*C)+P2(v*F))+P2(Z*Y))),U2[I>>2]=P2(P2(G*s)+P2(B*u))+P2(F*c),U2[h>>2]=P2(P2(Q*s)+P2(E*u))+P2(C*c),U2[N>>2]=P2(P2(m*s)+P2(w*u))+P2(Y*c)),m4(A,h,M,p,R,H,48+o|0,32+o|0,W,e,P2(0),P2(0)),16&(k=X2[e+72>>2])&&(1&S2[f+180|0]&&(l=U2[f+172>>2],R2=U2[f+44>>2],D2=U2[f+12>>2],T2=U2[f+28>>2],u=U2[f+164>>2],Y=U2[f+36>>2],s=U2[f+4>>2],C=U2[f+20>>2],c=U2[f+168>>2],F=U2[f+40>>2],m=U2[f+8>>2],Q=U2[f+24>>2],X2[200+i>>2]=0,G=s,w=U2[F2>>2],E=U2[d>>2],B=U2[h2>>2],s=P2(u*P2(P2(P2(s*w)+P2(C*E))+P2(Y*B))),u=P2(c*P2(P2(P2(w*m)+P2(E*Q))+P2(B*F))),c=P2(l*P2(P2(P2(w*D2)+P2(E*T2))+P2(B*R2))),U2[F2>>2]=P2(P2(G*s)+P2(m*u))+P2(D2*c),U2[d>>2]=P2(P2(C*s)+P2(Q*u))+P2(T2*c),U2[h2>>2]=P2(P2(Y*s)+P2(F*u))+P2(R2*c)),1&S2[r+180|0]&&(l=U2[r+172>>2],R2=U2[r+44>>2],D2=U2[r+12>>2],T2=U2[r+28>>2],u=U2[r+164>>2],Y=U2[r+36>>2],s=U2[r+4>>2],C=U2[r+20>>2],c=U2[r+168>>2],F=U2[r+40>>2],m=U2[r+8>>2],Q=U2[r+24>>2],X2[200+i>>2]=0,G=s,w=U2[F2>>2],E=U2[d>>2],B=U2[h2>>2],s=P2(u*P2(P2(P2(s*w)+P2(C*E))+P2(Y*B))),u=P2(c*P2(P2(P2(w*m)+P2(E*Q))+P2(B*F))),c=P2(l*P2(P2(P2(w*D2)+P2(E*T2))+P2(B*R2))),U2[F2>>2]=P2(P2(G*s)+P2(m*u))+P2(D2*c),U2[d>>2]=P2(P2(C*s)+P2(Q*u))+P2(T2*c),U2[h2>>2]=P2(P2(Y*s)+P2(F*u))+P2(R2*c)),m4(A,F2,M,p,R,H,48+o|0,32+o|0,W,e,P2(0),P2(0)),k=X2[e+72>>2]),80==(80&k)&&(X2[z>>2]=1|X2[z>>2]))),h2=X2[A+76>>2],d=X2[g>>2],4&(R=X2[e+72>>2])?(k=X2[A+16>>2],F2=X2[(h=k+K|0)+240>>2],g=X2[(N=k+O|0)+240>>2],I=h2+H2(d,152)|0,B=P2(U2[140+i>>2]*U2[e+68>>2]),U2[I+100>>2]=B,g&&(l=U2[g+416>>2],u=U2[I+24>>2],W=U2[g+412>>2],c=U2[I+20>>2],s=U2[g+404>>2],U2[N+64>>2]=P2(P2(B*P2(P2(s*U2[I+16>>2])*U2[g+408>>2]))*U2[N+112>>2])+U2[N+64>>2],U2[(k=N+68|0)>>2]=P2(P2(B*P2(W*P2(s*c)))*U2[N+116>>2])+U2[k>>2],U2[(k=N+72|0)>>2]=P2(P2(B*P2(l*P2(s*u)))*U2[N+120>>2])+U2[k>>2],u=U2[I+72>>2],W=U2[I+68>>2],U2[N+80>>2]=P2(P2(B*U2[N+96>>2])*U2[I+64>>2])+U2[N+80>>2],c=U2[N+104>>2],U2[(k=N+84|0)>>2]=P2(W*P2(B*U2[N+100>>2]))+U2[k>>2],U2[(k=N+88|0)>>2]=P2(u*P2(B*c))+U2[k>>2]),F2&&(E=U2[I+88>>2],B=U2[I+84>>2],s=U2[I+80>>2],l=U2[F2+416>>2],u=U2[I+56>>2],W=U2[F2+412>>2],c=U2[I+52>>2],w=U2[F2+404>>2],Q=U2[I+100>>2],U2[h+64>>2]=U2[h+64>>2]+P2(P2(P2(P2(w*U2[I+48>>2])*U2[F2+408>>2])*Q)*U2[h+112>>2]),U2[(k=h+68|0)>>2]=U2[k>>2]+P2(P2(Q*P2(W*P2(w*c)))*U2[h+116>>2]),U2[(k=h+72|0)>>2]=U2[k>>2]+P2(P2(Q*P2(l*P2(w*u)))*U2[h+120>>2]),U2[h+80>>2]=U2[h+80>>2]+P2(s*P2(Q*U2[h+96>>2])),c=U2[h+104>>2],U2[(k=h+84|0)>>2]=U2[k>>2]+P2(B*P2(Q*U2[h+100>>2])),U2[(k=h+88|0)>>2]=U2[k>>2]+P2(E*P2(c*Q))),16&R&&(R=h2+H2(d+1|0,152)|0,l=P2(U2[144+i>>2]*U2[e+68>>2]),U2[R+100>>2]=l,g&&(W=U2[R+24>>2],c=U2[R+20>>2],u=U2[g+404>>2],U2[N+64>>2]=P2(P2(l*P2(u*U2[R+16>>2]))*U2[N+112>>2])+U2[N+64>>2],U2[(k=N+68|0)>>2]=P2(P2(l*P2(u*c))*U2[N+116>>2])+U2[k>>2],U2[(k=N+72|0)>>2]=P2(P2(l*P2(u*W))*U2[N+120>>2])+U2[k>>2],u=U2[R+72>>2],W=U2[R+68>>2],U2[N+80>>2]=P2(P2(l*U2[N+96>>2])*U2[R+64>>2])+U2[N+80>>2],c=U2[N+104>>2],U2[(k=N+84|0)>>2]=P2(W*P2(l*U2[N+100>>2]))+U2[k>>2],U2[(k=N+88|0)>>2]=P2(u*P2(l*c))+U2[k>>2]),F2&&(s=U2[R+88>>2],l=U2[R+84>>2],u=U2[R+56>>2],W=U2[R+52>>2],c=U2[R+48>>2],B=U2[F2+404>>2],E=U2[R+100>>2],U2[h+80>>2]=U2[h+80>>2]+P2(U2[R+80>>2]*P2(U2[h+96>>2]*E)),U2[h+64>>2]=U2[h+64>>2]+P2(P2(E*P2(B*c))*U2[h+112>>2]),U2[(k=h+68|0)>>2]=U2[k>>2]+P2(P2(E*P2(B*W))*U2[h+116>>2]),U2[(k=h+72|0)>>2]=U2[k>>2]+P2(P2(E*P2(B*u))*U2[h+120>>2]),c=U2[h+104>>2],U2[(k=h+84|0)>>2]=U2[k>>2]+P2(l*P2(E*U2[h+100>>2])),U2[(k=h+88|0)>>2]=U2[k>>2]+P2(s*P2(c*E))))):(k=h2+H2(d,152)|0,X2[k+100>>2]=0,16&R&&(X2[k+252>>2]=0)),d=X2[P+844>>2]}if(!((0|(I2=I2+1|0))<(0|d)))break}if((0|(x2=x2+1|0))==(0|y))break}K2=o+64|0},function(A,e,r,f,i,a,n,b,t){A|=0,e|=0,r|=0,f|=0,i|=0,a|=0,b|=0;var o,c=P2(0);P2(0);A:if(X2[b+52>>2]&&!(X2[b+20>>2]<1||(0|(e=X2[A+28>>2]))<1))for(r=0;;){if(c=P2(0),1<=(0|e))for(f=0;;)if(o=c,a=X2[A+16>>2],i=X2[A+36>>2]+H2(X2[X2[A+116>>2]+f>>2],152)|0,c=P2(N2[X2[A+220>>2]](a+H2(X2[i+144>>2],244)|0,H2(X2[i+148>>2],244)+a|0,i)),c=P2(o+P2(c*c)),f=f+4|0,!(e=e-1|0))break;if(U2[b+92>>2]>=c)break A;if(((e=X2[b+20>>2])-1|0)<=(0|r))break A;if((0|e)<=(0|(r=r+1|0)))break A;e=X2[A+28>>2]}},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n=0,b=0,t=0,o=P2(0),c=P2(0),k=0,u=P2(0),s=P2(0),l=P2(0),B=P2(0),v=0,d=0,Z=0,_=K2-80|0;if(K2=_,4&(n=X2[f+72>>2])&&!((0|(r=X2[A+28>>2]))<1))if(b=X2[A+76>>2],e=X2[A+36>>2],16&n){for(e=e+140|0;;)if(n=X2[e-8>>2],U2[n+132>>2]=U2[e-40>>2],t=b+H2(X2[e>>2],152)|0,U2[n+136>>2]=U2[t+100>>2],U2[n+140>>2]=U2[t+252>>2],e=e+152|0,!(r=r-1|0))break}else for(e=e+140|0;;)if(n=X2[e-8>>2],U2[n+132>>2]=U2[e-40>>2],U2[n+136>>2]=U2[100+(b+H2(X2[e>>2],152)|0)>>2],e=e+152|0,!(r=r-1|0))break;if(1<=(0|(n=X2[A+48>>2])))for(e=X2[A+56>>2]+100|0;;)if(b=X2[e+32>>2],(r=X2[b+44>>2])&&(t=X2[b+28>>2],u=U2[t+416>>2],s=U2[e-76>>2],l=U2[t+412>>2],B=U2[e-80>>2],o=U2[e>>2],c=P2(P2(1)/U2[f+12>>2]),U2[r>>2]=U2[r>>2]+P2(P2(P2(U2[e-84>>2]*o)*U2[t+408>>2])*c),U2[r+4>>2]=P2(P2(l*P2(o*B))*c)+U2[r+4>>2],U2[r+8>>2]=P2(P2(u*P2(o*s))*c)+U2[r+8>>2],v=X2[b+32>>2],u=U2[v+416>>2],s=U2[e-44>>2],l=U2[v+412>>2],B=U2[e-48>>2],o=U2[e>>2],c=P2(P2(1)/U2[f+12>>2]),U2[r+32>>2]=U2[r+32>>2]+P2(P2(P2(U2[e-52>>2]*o)*U2[v+408>>2])*c),U2[(d=r+36|0)>>2]=P2(P2(l*P2(o*B))*c)+U2[d>>2],U2[(d=r+40|0)>>2]=P2(P2(u*P2(o*s))*c)+U2[d>>2],u=U2[t+612>>2],s=U2[e-92>>2],l=U2[t+608>>2],B=U2[e-96>>2],o=U2[e>>2],c=P2(P2(1)/U2[f+12>>2]),U2[r+16>>2]=U2[r+16>>2]+P2(P2(P2(U2[e-100>>2]*U2[t+604>>2])*o)*c),U2[(t=r+20|0)>>2]=P2(P2(o*P2(B*l))*c)+U2[t>>2],U2[(t=r+24|0)>>2]=P2(P2(o*P2(s*u))*c)+U2[t>>2],u=U2[v+612>>2],s=U2[e-60>>2],l=U2[v+608>>2],B=U2[e+-64>>2],o=U2[e>>2],c=P2(P2(1)/U2[f+12>>2]),U2[r+48>>2]=U2[r+48>>2]+P2(P2(P2(U2[e-68>>2]*U2[v+604>>2])*o)*c),U2[(t=r+52|0)>>2]=P2(P2(o*P2(B*l))*c)+U2[t>>2],U2[(r=r+56|0)>>2]=P2(P2(o*P2(s*u))*c)+U2[r>>2]),o=U2[e>>2],U2[b+36>>2]=o,U2[b+16>>2]<=P2(j2(o))&&(S2[b+20|0]=0),e=e+152|0,!(n=n-1|0))break;if(1<=(0|(n=X2[A+8>>2])))for(t=X2[A+16>>2],v=_+64|0,d=48+_|0,i=32+_|0,r=144;;)if((b=X2[(e=r+t|0)+96>>2])&&(X2[f+52>>2]?(o=U2[f+60>>2],c=U2[f+12>>2],U2[(b=e+32|0)>>2]=U2[e-80>>2]+U2[b>>2],U2[(b=e+36|0)>>2]=U2[e-76>>2]+U2[b>>2],U2[(b=e+40|0)>>2]=U2[e-72>>2]+U2[b>>2],U2[(b=e+48|0)>>2]=U2[e+-64>>2]+U2[b>>2],U2[(b=e+52|0)>>2]=U2[e-60>>2]+U2[b>>2],U2[(b=e+56|0)>>2]=U2[e-56>>2]+U2[b>>2],U2[e>>2]==P2(0)&&U2[e+4>>2]==P2(0)&&U2[e+8>>2]==P2(0)&&U2[e+16>>2]==P2(0)&&U2[e+20>>2]==P2(0)&&U2[e+24>>2]==P2(0)||(X2[12+_>>2]=0,U2[8+_>>2]=U2[e+24>>2]*o,U2[4+_>>2]=U2[e+20>>2]*o,U2[_>>2]=U2[e+16>>2]*o,N4(b=e-144|0,U2[e>>2],U2[e+4>>2],U2[e+8>>2],_,c,16+_|0),k=X2[(t=24+_|0)+4>>2],X2[(n=b+8|0)>>2]=X2[t>>2],X2[n+4>>2]=k,n=X2[20+_>>2],X2[b>>2]=X2[16+_>>2],X2[b+4>>2]=n,k=X2[(t=8+i|0)+4>>2],X2[(n=(b=e-128|0)+8|0)>>2]=X2[t>>2],X2[n+4>>2]=k,n=X2[4+i>>2],X2[b>>2]=X2[i>>2],X2[b+4>>2]=n,k=X2[(t=d+8|0)+4>>2],X2[(n=(b=e-112|0)+8|0)>>2]=X2[t>>2],X2[n+4>>2]=k,n=X2[d+4>>2],X2[b>>2]=X2[d>>2],X2[b+4>>2]=n,t=X2[(n=v+8|0)+4>>2],X2[(b=(e=e-96|0)+8|0)>>2]=X2[n>>2],X2[b+4>>2]=t,b=X2[v+4>>2],X2[e>>2]=X2[v>>2],X2[e+4>>2]=b,t=X2[A+16>>2]),o=U2[(e=r+t|0)+40>>2],c=U2[e+36>>2],u=U2[e+32>>2],b=X2[e+96>>2]):(u=P2(U2[e-80>>2]+U2[(n=e+32|0)>>2]),U2[n>>2]=u,c=P2(U2[e-76>>2]+U2[(n=e+36|0)>>2]),U2[n>>2]=c,o=P2(U2[e-72>>2]+U2[(n=e+40|0)>>2]),U2[n>>2]=o,U2[(n=e+48|0)>>2]=U2[e+-64>>2]+U2[n>>2],U2[(n=e+52|0)>>2]=U2[e-60>>2]+U2[n>>2],U2[(n=e+56|0)>>2]=U2[e-56>>2]+U2[n>>2]),s=U2[(e=r+t|0)- -64>>2],l=U2[e+68>>2],B=U2[e+72>>2],X2[b+384>>2]=0,U2[b+380>>2]=o+B,U2[b+376>>2]=c+l,U2[b+372>>2]=u+s,X2[b+304>>2]=X2[b+304>>2]+1,e=X2[A+16>>2]+r|0,o=U2[e+48>>2],c=U2[e+80>>2],u=U2[e+52>>2],s=U2[e+84>>2],l=U2[e+56>>2],B=U2[e+88>>2],e=X2[e+96>>2],X2[e+400>>2]=0,U2[e+396>>2]=l+B,U2[e+392>>2]=u+s,U2[e+388>>2]=o+c,X2[e+304>>2]=X2[e+304>>2]+1,X2[f+52>>2]&&(b=X2[A+16>>2]+r|0,e=X2[b+96>>2],X2[e+304>>2]=X2[e+304>>2]+1,a=X2[(k=(n=b-144|0)+8|0)+4>>2],X2[(t=e+12|0)>>2]=X2[k>>2],X2[t+4>>2]=a,t=X2[n+4>>2],X2[e+4>>2]=X2[n>>2],X2[e+8>>2]=t,a=X2[(k=(n=b-128|0)+8|0)+4>>2],X2[(t=e+28|0)>>2]=X2[k>>2],X2[t+4>>2]=a,k=X2[n+4>>2],X2[(t=e+20|0)>>2]=X2[n>>2],X2[t+4>>2]=k,k=X2[(n=b-112|0)+4>>2],X2[(t=e+36|0)>>2]=X2[n>>2],X2[t+4>>2]=k,k=X2[(n=n+8|0)+4>>2],X2[(t=e+44|0)>>2]=X2[n>>2],X2[t+4>>2]=k,k=X2[(t=(b=b-96|0)+8|0)+4>>2],X2[(n=e+60|0)>>2]=X2[t>>2],X2[n+4>>2]=k,n=X2[b+4>>2],X2[(e=e+52|0)>>2]=X2[b>>2],X2[e+4>>2]=n),t=X2[A+16>>2],X2[X2[96+(t+r|0)>>2]+212>>2]=-1,n=X2[A+8>>2]),r=r+244|0,!((0|(Z=Z+1|0))<(0|n)))break;return-1>2]||-1>2]||((e=X2[A+36>>2])&&J2[A+40|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+32>>2]=0,X2[A+36>>2]=0,S2[A+40|0]=1),X2[A+28>>2]=0,-1>2]||-1>2]||((e=X2[A+56>>2])&&J2[A+60|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+52>>2]=0,X2[A+56>>2]=0,S2[A+60|0]=1),X2[A+48>>2]=0,-1>2]||-1>2]||((e=X2[A+76>>2])&&J2[A+80|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+72>>2]=0,X2[A+76>>2]=0,S2[A+80|0]=1),X2[A+68>>2]=0,-1>2]||-1>2]||((e=X2[A+96>>2])&&J2[A+100|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+92>>2]=0,X2[A+96>>2]=0,S2[A+100|0]=1),X2[A+88>>2]=0,-1>2]||-1>2]||((e=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+12>>2]=0,X2[A+16>>2]=0,S2[A+20|0]=1),X2[A+8>>2]=0,K2=80+_|0,P2(P2(0))},function(A,e,r,f,i,a,n,b,t,o){A|=0,e|=0,r|=0,f|=0,i|=0,a|=0,n|=0,b|=0,t|=0,o|=0;var c,k,u,s=P2(0),l=P2(0),B=0,v=0,d=P2(0),Z=0,_=0;if(1&S2[t+72|0]){if(c=X2[A+68>>2],k=X2[A+28>>2],1<=(0|(v=X2[A+48>>2]))){if(i=H2(X2[A+232>>2],1664525)+1013904223|0,1!=(0|v)&&(f=X2[A+136>>2],r=X2[f+4>>2],a=(i=H2(i,1664525)+1013904223|0)^i>>>16,X2[f+4>>2]=X2[(a=f+((1&((a=(a=(a^=a>>>8)^a>>>4)^a>>>2)>>>1^a))<<2)|0)>>2],X2[a>>2]=r,2!=(0|v)&&(r=X2[f+8>>2],a=(i=H2(i,1664525)+1013904223|0)^i>>>16,X2[f+8>>2]=X2[(a=f+((((a=(a^=a>>>8)^a>>>4)>>>2^a)>>>0)%3<<2)|0)>>2],X2[a>>2]=r,3!=(0|v)&&(r=X2[f+12>>2],a=(i=H2(i,1664525)+1013904223|0)^i>>>16,X2[f+12>>2]=X2[(a=f+((3&((a=(a^=a>>>8)^a>>>4)>>>2^a))<<2)|0)>>2],X2[a>>2]=r,4!=(0|v)))))for(o=f+16|0,r=4;;)if(r=(a=r)+1|0,Z=X2[o>>2],u=o,B=i=H2(i,1664525)+1013904223|0,65535>>0||(B=_=i>>>16^i,255>>0||(B=_^=_>>>8,15>>0||(B=_^_>>>4))),X2[u>>2]=X2[(a=((B>>>0)%(r>>>0)<<2)+f|0)>>2],X2[a>>2]=Z,o=o+4|0,(0|r)==(0|v))break;X2[A+232>>2]=i}if(!(X2[t+20>>2]<=(0|e))){if(1<=(0|k)){if(i=H2(X2[A+232>>2],1664525)+1013904223|0,1!=(0|k)&&(f=X2[A+116>>2],r=X2[f+4>>2],a=(i=H2(i,1664525)+1013904223|0)^i>>>16,X2[f+4>>2]=X2[(a=f+((1&((a=(a=(a^=a>>>8)^a>>>4)^a>>>2)>>>1^a))<<2)|0)>>2],X2[a>>2]=r,2!=(0|k)&&(r=X2[f+8>>2],a=(i=H2(i,1664525)+1013904223|0)^i>>>16,X2[f+8>>2]=X2[(a=f+((((a=(a^=a>>>8)^a>>>4)>>>2^a)>>>0)%3<<2)|0)>>2],X2[a>>2]=r,3!=(0|k)&&(r=X2[f+12>>2],a=(i=H2(i,1664525)+1013904223|0)^i>>>16,X2[f+12>>2]=X2[(a=f+((3&((a=(a^=a>>>8)^a>>>4)>>>2^a))<<2)|0)>>2],X2[a>>2]=r,4!=(0|k)))))for(o=f+16|0,r=4;;)if(r=(a=r)+1|0,_=X2[o>>2],v=o,B=i=H2(i,1664525)+1013904223|0,65535>>0||(B=Z=i>>>16^i,255>>0||(B=Z^=Z>>>8,15>>0||(B=Z^Z>>>4))),X2[v>>2]=X2[(a=((B>>>0)%(r>>>0)<<2)+f|0)>>2],X2[a>>2]=_,o=o+4|0,(0|r)==(0|k))break;X2[A+232>>2]=i}if(!((0|c)<1)){if(i=H2(X2[A+232>>2],1664525)+1013904223|0,1!=(0|c)&&(f=X2[A+156>>2],r=X2[f+4>>2],a=(i=H2(i,1664525)+1013904223|0)^i>>>16,X2[f+4>>2]=X2[(a=f+((1&((a=(a=(a^=a>>>8)^a>>>4)^a>>>2)>>>1^a))<<2)|0)>>2],X2[a>>2]=r,2!=(0|c)&&(r=X2[f+8>>2],a=(i=H2(i,1664525)+1013904223|0)^i>>>16,X2[f+8>>2]=X2[(a=f+((((a=(a^=a>>>8)^a>>>4)>>>2^a)>>>0)%3<<2)|0)>>2],X2[a>>2]=r,3!=(0|c)&&(r=X2[f+12>>2],a=(i=H2(i,1664525)+1013904223|0)^i>>>16,X2[f+12>>2]=X2[(a=f+((3&((a=(a^=a>>>8)^a>>>4)>>>2^a))<<2)|0)>>2],X2[a>>2]=r,4!=(0|c)))))for(o=f+16|0,r=4;;)if(r=(a=r)+1|0,Z=X2[o>>2],_=o,B=i=H2(i,1664525)+1013904223|0,65535>>0||(B=v=i>>>16^i,255>>0||(B=v^=v>>>8,15>>0||(B=v^v>>>4))),X2[_>>2]=X2[(a=((B>>>0)%(r>>>0)<<2)+f|0)>>2],X2[a>>2]=Z,o=o+4|0,(0|r)==(0|c))break;X2[A+232>>2]=i}}}if(1<=(0|(a=X2[A+48>>2])))for(r=i=0;;)if(f=X2[A+56>>2]+H2(X2[X2[A+136>>2]+i>>2],152)|0,X2[f+136>>2]>(0|e)&&(l=s,a=X2[A+16>>2],s=P2(N2[X2[A+212>>2]](a+H2(X2[f+144>>2],244)|0,a+H2(X2[f+148>>2],244)|0,f)),s=P2(l+P2(s*s)),a=X2[A+48>>2]),i=i+4|0,!((0|(r=r+1|0))<(0|a)))break;if(!(X2[t+20>>2]<=(0|e))){if(1<=(0|b))for(;;)if(e=X2[n>>2],J2[e+20|0]&&(e=F4(A,X2[e+28>>2],U2[t+12>>2]),r=F4(A,X2[X2[n>>2]+32>>2],U2[t+12>>2]),f=X2[n>>2],i=H2(e,244),e=X2[A+16>>2],N2[X2[X2[f>>2]+24>>2]](f,i+e|0,e+H2(r,244)|0,U2[t+12>>2])),n=n+4|0,!(b=b-1|0))break;if(i=X2[A+28>>2],512&(e=X2[t+72>>2])){if(!((0|i)<1))for(f=(16&e?2:1)<<2,n=0,r=4;;)if(l=s,a=X2[A+16>>2],e=X2[A+36>>2]+H2(X2[X2[A+116>>2]+n>>2],152)|0,s=P2(N2[X2[A+216>>2]](a+H2(X2[e+144>>2],244)|0,a+H2(X2[e+148>>2],244)|0,e)),s=P2(l+P2(s*s)),(a=!((l=U2[e+100>>2])>P2(0)))||(e=X2[A+76>>2]+H2(X2[(X2[A+156>>2]+r|0)-4>>2],152)|0,d=U2[e+104>>2],U2[e+124>>2]=l*d,U2[e+120>>2]=l*P2(-d),d=s,b=X2[A+16>>2],s=P2(N2[X2[A+212>>2]](b+H2(X2[e+144>>2],244)|0,b+H2(X2[e+148>>2],244)|0,e)),s=P2(d+P2(s*s))),16&J2[t+72|0]&&(a||(e=X2[A+76>>2]+H2(X2[X2[A+156>>2]+r>>2],152)|0,d=U2[e+104>>2],U2[e+124>>2]=l*d,U2[e+120>>2]=l*P2(-d),l=s,a=X2[A+16>>2],s=P2(N2[X2[A+212>>2]](a+H2(X2[e+144>>2],244)|0,a+H2(X2[e+148>>2],244)|0,e)),s=P2(l+P2(s*s)))),n=n+4|0,r=r+f|0,!(i=i-1|0))break}else{if(1<=(0|i))for(o=0;;)if(l=s,r=X2[A+16>>2],e=X2[A+36>>2]+H2(X2[X2[A+116>>2]+o>>2],152)|0,s=P2(N2[X2[A+216>>2]](r+H2(X2[e+144>>2],244)|0,r+H2(X2[e+148>>2],244)|0,e)),s=P2(l+P2(s*s)),o=o+4|0,!(i=i-1|0))break;if(!((0|(n=X2[A+68>>2]))<1))for(o=0;;)if(e=X2[A+76>>2]+H2(X2[X2[A+156>>2]+o>>2],152)|0,(l=U2[100+(X2[A+36>>2]+H2(X2[e+140>>2],152)|0)>>2])>P2(0)&&(d=U2[e+104>>2],U2[e+124>>2]=l*d,U2[e+120>>2]=l*P2(-d),l=s,r=X2[A+16>>2],s=P2(N2[X2[A+212>>2]](r+H2(X2[e+144>>2],244)|0,r+H2(X2[e+148>>2],244)|0,e)),s=P2(l+P2(s*s))),o=o+4|0,!(n=n-1|0))break}if(!((0|(n=X2[A+88>>2]))<1))for(o=148;;)if(e=X2[A+96>>2]+o|0,(l=U2[100+(X2[A+36>>2]+H2(X2[e-8>>2],152)|0)>>2])>P2(0)&&(d=l,l=U2[e-44>>2],d=P2(d*l),U2[e-24>>2]=l=l>2]=-l,l=s,r=X2[A+16>>2],s=P2(N2[X2[A+212>>2]](r+H2(X2[e-4>>2],244)|0,r+H2(X2[e>>2],244)|0,e-148|0)),s=P2(l+P2(s*s))),o=o+152|0,!(n=n-1|0))break}return P2(s)},function(A,e,r,x,y,V,f,p,i){A|=0,e|=0,r|=0,x|=0,y|=0,V|=0,f|=0,p|=0,i|=0;var M,S,X,J,U,H,P,j,z,O,K,L,q,$,A2,e2,r2,f2,i2,a,n=0,b=P2(0),t=0,o=P2(0),c=P2(0),k=0,u=P2(0),s=P2(0),l=P2(0),B=0,v=P2(0),d=P2(0),Z=P2(0),_=P2(0),g=0,E=0,Q=P2(0),w=P2(0),G=P2(0),C=P2(0),h=P2(0),F=P2(0),Y=P2(0),m=P2(0),N=P2(0),R=P2(0),D=P2(0),T=P2(0),W=P2(0),a2=0,I=P2(0),n2=P2(0),b2=P2(0),t2=P2(0),o2=P2(0),c2=P2(0),k2=P2(0),u2=P2(0),s2=0,l2=0,B2=0;if(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2=a=K2-256|0,X2[A+188>>2]=-1,(0|(i=X2[p+72>>2]))!=X2[A+224>>2]&&(X2[A+224>>2]=i,X2[A+220>>2]=72,X2[A+216>>2]=73,X2[A+212>>2]=74),1<=((X2[A+184>>2]=0)|r))for(i=e,t=r;;)if(X2[X2[i>>2]+212>>2]=-1,i=i+4|0,!(t=t-1|0))break;if((0|(i=X2[A+12>>2]))<=(0|r)){if((i=r+1|0)&&(X2[6258]=X2[6258]+1,(t=L2(H2(i,244)+19|0))&&(X2[(B2=t+19&-16)-4>>2]=t)),1<=(0|(k=X2[A+8>>2])))for(g=64;;)if(s2=X2[A+16>>2]+g|0,t=X2[(E=s2+-64|0)+4>>2],X2[(n=(a2=g+B2|0)+-64|0)>>2]=X2[E>>2],X2[n+4>>2]=t,t=X2[(B=E+8|0)+4>>2],X2[(n=n+8|0)>>2]=X2[B>>2],X2[n+4>>2]=t,t=X2[(B=(E=s2-48|0)+8|0)+4>>2],X2[(n=(l2=a2-48|0)+8|0)>>2]=X2[B>>2],X2[n+4>>2]=t,t=X2[E+4>>2],X2[l2>>2]=X2[E>>2],X2[l2+4>>2]=t,t=X2[(B=(E=s2-32|0)+8|0)+4>>2],X2[(n=(l2=a2-32|0)+8|0)>>2]=X2[B>>2],X2[n+4>>2]=t,t=X2[E+4>>2],X2[l2>>2]=X2[E>>2],X2[l2+4>>2]=t,t=X2[(E=s2-16|0)+4>>2],X2[(n=a2-16|0)>>2]=X2[E>>2],X2[n+4>>2]=t,t=X2[(B=E+8|0)+4>>2],X2[(n=n+8|0)>>2]=X2[B>>2],X2[n+4>>2]=t,$2(a2,s2,180),g=g+244|0,!(k=k-1|0))break;(t=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[t-4>>2])),X2[A+16>>2]=B2,X2[A+12>>2]=i,S2[A+20|0]=1}if(v2(8+a|0,0,244),(0|(t=X2[A+8>>2]))<=-1)for((0|i)<=-1&&((i=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),X2[A+12>>2]=0,X2[A+16>>2]=0,S2[A+20|0]=1),g=H2(t,244),l2=72+a|0,s2=56+a|0,B=40+a|0,k=24+a|0;;)if(i=X2[12+a>>2],a2=X2[A+16>>2]+g|0,X2[a2>>2]=X2[8+a>>2],X2[a2+4>>2]=i,i=X2[(n=16+a|0)+4>>2],X2[(E=a2+8|0)>>2]=X2[n>>2],X2[E+4>>2]=i,i=X2[k+4>>2],X2[(n=a2+16|0)>>2]=X2[k>>2],X2[n+4>>2]=i,i=X2[(n=k+8|0)+4>>2],X2[(E=a2+24|0)>>2]=X2[n>>2],X2[E+4>>2]=i,i=X2[B+4>>2],X2[(n=a2+32|0)>>2]=X2[B>>2],X2[n+4>>2]=i,i=X2[(n=B+8|0)+4>>2],X2[(E=a2+40|0)>>2]=X2[n>>2],X2[E+4>>2]=i,i=X2[s2+4>>2],X2[(n=a2+48|0)>>2]=X2[s2>>2],X2[n+4>>2]=i,i=X2[(n=s2+8|0)+4>>2],X2[(E=a2+56|0)>>2]=X2[n>>2],X2[E+4>>2]=i,$2(a2- -64|0,l2,180),g=g+244|0,!((i=t)>>>0<=(t=i+1|0)>>>0))break;if(1<=((X2[A+8>>2]=0)|r))for(;;)if(B=F4(A,X2[e>>2],U2[p+12>>2]),(n=X2[e>>2])&&2&X2[n+252>>2]&&U2[n+404>>2]!=P2(0)&&(k=X2[A+16>>2],2&(g=X2[n+564>>2])&&(I=U2[n+388>>2],o2=U2[n+4>>2],u=(b=U2[n+456>>2])!=P2(0)?P2(P2(1)/b):P2(0),n2=U2[n+20>>2],o=P2(u*n2),c2=U2[n+8>>2],l=(b=U2[n+460>>2])!=P2(0)?P2(P2(1)/b):P2(0),Q=U2[n+24>>2],c=P2(l*Q),D=U2[n+12>>2],v=(b=U2[n+464>>2])!=P2(0)?P2(P2(1)/b):P2(0),d=U2[n+28>>2],b=P2(v*d),F=U2[n+392>>2],m=U2[n+36>>2],Z=U2[n+40>>2],s=U2[n+44>>2],W=U2[n+396>>2],w=P2(P2(P2(I*P2(P2(P2(o2*o)+P2(c2*c))+P2(D*b)))+P2(P2(P2(P2(n2*o)+P2(Q*c))+P2(d*b))*F))+P2(P2(P2(P2(o*m)+P2(c*Z))+P2(b*s))*W)),o=P2(u*o2),c=P2(l*c2),b=P2(v*D),c=P2(P2(P2(P2(P2(P2(o2*o)+P2(c2*c))+P2(D*b))*I)+P2(F*P2(P2(P2(o*n2)+P2(c*Q))+P2(b*d))))+P2(P2(P2(P2(o*m)+P2(c*Z))+P2(b*s))*W)),Y=P2(P2(I*w)-P2(F*c)),u=P2(u*m),o=P2(l*Z),b=P2(v*s),b=P2(P2(W*P2(P2(P2(m*u)+P2(Z*o))+P2(s*b)))+P2(P2(I*P2(P2(P2(o2*u)+P2(c2*o))+P2(D*b)))+P2(F*P2(P2(P2(n2*u)+P2(Q*o))+P2(d*b))))),s=P2(P2(F*b)-P2(W*w)),l=P2(P2(W*c)-P2(I*b)),b=P2(P2(Y*Y)+P2(P2(s*s)+P2(l*l))),_=U2[p+84>>2],b>P2(_*_)&&(b=P2(P2(P2(1)/P2(O2(b)))*_),Y=P2(Y*b),s=P2(s*b),l=P2(l*b)),w=U2[n+364>>2],_=U2[n+332>>2],u=U2[n+348>>2],o=U2[n+360>>2],c=U2[n+328>>2],b=U2[n+344>>2],t=k+H2(B,244)|0,v=U2[p+12>>2],U2[t+224>>2]=U2[t+224>>2]-P2(P2(P2(P2(s*U2[n+324>>2])+P2(l*U2[n+340>>2]))+P2(Y*U2[n+356>>2]))*v),U2[(i=t+228|0)>>2]=U2[i>>2]-P2(v*P2(P2(P2(s*c)+P2(l*b))+P2(Y*o))),U2[(i=t+232|0)>>2]=U2[i>>2]-P2(v*P2(P2(P2(s*_)+P2(l*u))+P2(Y*w))),g=X2[n+564>>2]),4&g&&(k2=U2[n+36>>2],l=(b=U2[n+456>>2])!=P2(0)?P2(P2(1)/b):P2(0),o=P2(k2*l),T=U2[n+40>>2],v=(b=U2[n+460>>2])!=P2(0)?P2(P2(1)/b):P2(0),c=P2(T*v),Y=U2[n+44>>2],s=(b=U2[n+464>>2])!=P2(0)?P2(P2(1)/b):P2(0),b=P2(Y*s),u2=U2[p+12>>2],I=P2(u2*P2(0)),G=U2[n+396>>2],b2=P2(P2(P2(k2*o)+P2(T*c))+P2(Y*b)),C=U2[n+388>>2],F=U2[n+4>>2],Q=U2[n+8>>2],D=U2[n+12>>2],W=P2(P2(P2(F*o)+P2(Q*c))+P2(D*b)),w=P2(C*W),h=U2[n+392>>2],d=U2[n+20>>2],m=U2[n+24>>2],Z=U2[n+28>>2],o2=P2(P2(P2(d*o)+P2(m*c))+P2(Z*b)),_=P2(h*o2),N=P2(P2(G*b2)+P2(w+_)),o=P2(l*d),c=P2(v*m),b=P2(s*Z),n2=P2(P2(P2(F*o)+P2(Q*c))+P2(D*b)),u=P2(C*n2),t2=P2(P2(P2(d*o)+P2(m*c))+P2(Z*b)),c2=P2(P2(P2(o*k2)+P2(c*T))+P2(b*Y)),o=P2(G*c2),R=P2(P2(u+P2(h*t2))+o),l=P2(l*F),v=P2(v*Q),b=P2(s*D),F=P2(P2(P2(F*l)+P2(Q*v))+P2(D*b)),Z=P2(P2(P2(l*d)+P2(v*m))+P2(b*Z)),c=P2(h*Z),s=P2(P2(P2(l*k2)+P2(v*T))+P2(b*Y)),b=P2(G*s),T=P2(P2(P2(C*F)+c)+b),Y=P2(P2(N+P2(P2(P2(C*R)-P2(h*T))*u2))-P2(I+N)),l=P2(W+P2(P2(R+P2(P2(u-P2(h*F))+P2(W*P2(0))))*u2)),Q=P2(c2+P2(P2(T+P2(P2(b+P2(c2*P2(0)))-P2(C*b2)))*u2)),D=P2(Z+P2(P2(P2(P2(P2(Z*P2(0))-P2(G*t2))+_)+N)*u2)),d=P2(t2+P2(P2(P2(P2(G*Z)+P2(t2*P2(0)))-P2(C*o2))*u2)),m=P2(s+P2(P2(P2(P2(P2(s*P2(0))-o)+P2(h*b2))-R)*u2)),o=P2(P2(Q*D)-P2(d*m)),v=P2(F+P2(P2(P2(P2(F*P2(0))-P2(G*n2))+P2(h*W))*u2)),Z=P2(b2+P2(P2(P2(P2(C*c2)-P2(h*s))+P2(b2*P2(0)))*u2)),s=P2(o2+P2(P2(P2(P2(P2(C*t2)-c)+P2(o2*P2(0)))-T)*u2)),c=P2(P2(d*Z)-P2(s*Q)),_=P2(n2+P2(P2(P2(P2(P2(G*F)+P2(n2*P2(0)))-w)-N)*u2)),b=P2(P2(s*m)-P2(Z*D)),u=P2(P2(l*o)+P2(P2(v*c)+P2(_*b))),u=P2(j2(u))>P2(1.1920928955078125e-7)?P2(P2(1)/u):u,t=k+H2(B,244)|0,w=P2(Y*o),o=P2(P2(T+P2(P2(P2(h*N)-P2(G*R))*u2))-P2(I+T)),F=P2(c*o),c=P2(P2(R+P2(P2(P2(G*T)-P2(C*N))*u2))-P2(I+R)),U2[t+224>>2]=P2(P2(C-P2(P2(w+P2(F+P2(c*b)))*u))-C)+U2[t+224>>2],U2[(i=t+228|0)>>2]=P2(P2(h-P2(P2(P2(l*P2(P2(Q*o)-P2(m*c)))+P2(P2(v*P2(P2(Z*c)-P2(Q*Y)))+P2(_*P2(P2(m*Y)-P2(Z*o)))))*u))-h)+U2[i>>2],U2[(i=t+232|0)>>2]=P2(P2(G-P2(P2(P2(l*P2(P2(D*c)-P2(d*o)))+P2(P2(v*P2(P2(d*Y)-P2(s*c)))+P2(_*P2(P2(s*o)-P2(D*Y)))))*u))-G)+U2[i>>2],g=X2[n+564>>2]),8&g&&(w=U2[n+456>>2],_=U2[n+464>>2],u=U2[n+460>>2],T=U2[n+396>>2],Y=U2[n+392>>2],I=U2[n+388>>2],G=U2[p+12>>2],Q4(n+4|0,8+a|0),C=U2[16+a>>2],h=U2[20+a>>2],N=U2[12+a>>2],s=P2(P2(Y*C)+P2(P2(I*h)-P2(T*N))),R=U2[8+a>>2],o=P2(P2(P2(I*R)+P2(Y*N))+P2(T*C)),c=P2(P2(I*N)+P2(P2(T*h)-P2(Y*R))),b=P2(P2(T*R)+P2(P2(Y*h)-P2(I*C))),b2=P2(P2(P2(N*s)+P2(P2(C*o)+P2(h*c)))-P2(R*b)),l=P2(b2*P2(0)),t2=P2(P2(P2(C*b)+P2(P2(R*o)+P2(h*s)))-P2(N*c)),v=P2(t2*P2(0)),W=u!=P2(0)?P2(P2(1)/u):P2(0),k2=P2(P2(P2(R*c)+P2(P2(N*o)+P2(h*b)))-P2(C*s)),o2=P2(l+P2(v+P2(W*k2))),n2=w!=P2(0)?P2(P2(1)/w):P2(0),D=P2(P2(G*P2(P2(P2(v-P2(n2*k2))+P2(0))+o2))+P2(0)),u=_!=P2(0)?P2(P2(1)/_):P2(0),b=P2(k2*P2(0)),Q=P2(P2(b2*u)+P2(v+b)),d=P2(l+P2(P2(n2*t2)+b)),F=P2(G*P2(P2(b2*d)-P2(t2*Q))),o=P2(b2*P2(-0)),m=P2(n2+P2(G*P2(b+P2(P2(n2*P2(0))+o)))),c=P2(k2*P2(-0)),c2=P2(P2(G*P2(P2(P2(c+P2(W*t2))+P2(0))-d))+P2(0)),Z=P2(P2(G*P2(P2(b+P2(P2(0)-P2(W*b2)))+Q))+P2(0)),s=P2(P2(G*P2(P2(P2(l+P2(0))-P2(u*t2))+d))+P2(0)),b=P2(t2*P2(-0)),w=P2(W+P2(G*P2(b+P2(P2(W*P2(0))+l)))),l=P2(P2(G*P2(P2(P2(u*k2)+P2(o+P2(0)))-o2))+P2(0)),o=P2(P2(Z*s)-P2(w*l)),v=P2(u+P2(G*P2(P2(u*P2(0))+P2(c+v)))),c=P2(P2(w*v)-P2(c2*s)),_=P2(P2(G*P2(P2(b+P2(P2(n2*b2)+P2(0)))-Q))+P2(0)),b=P2(P2(c2*l)-P2(v*Z)),u=P2(P2(D*o)+P2(P2(m*c)+P2(_*b))),u=P2(j2(u))>P2(1.1920928955078125e-7)?P2(P2(1)/u):u,t=k+H2(B,244)|0,Q=P2(G*P2(P2(k2*Q)-P2(b2*o2))),d=P2(G*P2(P2(t2*o2)-P2(k2*d))),w=P2(b2-P2(P2(P2(D*P2(P2(Z*F)-P2(w*Q)))+P2(P2(m*P2(P2(w*d)-P2(c2*F)))+P2(_*P2(P2(c2*Q)-P2(Z*d)))))*u)),_=P2(k2-P2(P2(P2(D*P2(P2(s*Q)-P2(l*F)))+P2(P2(m*P2(P2(v*F)-P2(s*d)))+P2(_*P2(P2(l*d)-P2(v*Q)))))*u)),b=P2(t2-P2(P2(P2(d*o)+P2(P2(Q*c)+P2(F*b)))*u)),u=P2(P2(P2(h*w)+P2(R*_))-P2(N*b)),o=P2(P2(P2(h*b)+P2(N*w))-P2(C*_)),c=P2(P2(P2(b*P2(-R))-P2(N*_))-P2(C*w)),b=P2(P2(P2(C*b)+P2(h*_))-P2(R*w)),U2[t+224>>2]=P2(P2(P2(N*u)+P2(P2(P2(h*o)-P2(R*c))-P2(C*b)))-I)+U2[t+224>>2],U2[(i=t+228|0)>>2]=P2(P2(P2(C*o)+P2(P2(P2(h*b)-P2(N*c))-P2(R*u)))-Y)+U2[i>>2],U2[(i=t+232|0)>>2]=P2(P2(P2(R*b)+P2(P2(P2(h*u)-P2(C*c))-P2(N*o)))-T)+U2[i>>2])),e=e+4|0,!(r=r-1|0))break;if(1<=(0|f))for(i=V,t=f;;)if(e=X2[i>>2],N2[X2[X2[e>>2]+8>>2]](e),i=i+4|(X2[e+36>>2]=0),!(t=t-1|0))break;if(!((0|f)<=(0|(e=X2[A+168>>2]))||X2[A+172>>2]>=(0|f))){if(t=0,f&&(X2[6258]=X2[6258]+1,(r=L2(19+(f<<3)|0))&&(X2[(t=r+19&-16)-4>>2]=r)),1<=(0|e))for(i=0;;)if(k=X2[A+176>>2]+i|0,r=X2[k+4>>2],X2[(B=i+t|0)>>2]=X2[k>>2],X2[B+4>>2]=r,i=i+8|0,!(e=e-1|0))break;(e=X2[A+176>>2])&&J2[A+180|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+176>>2]=t,X2[A+172>>2]=f,S2[A+180|0]=1}if((0|(X2[A+168>>2]=f))<1)g=0;else for(t=V,k=f,g=r=0;;)if(i=X2[A+176>>2],e=X2[t>>2],(B=X2[e+44>>2])&&(X2[B>>2]=0,X2[B+4>>2]=0,X2[(e=B+56|0)>>2]=0,X2[e+4>>2]=0,X2[(e=B+48|0)>>2]=0,X2[e+4>>2]=0,X2[(e=B+40|0)>>2]=0,X2[e+4>>2]=0,X2[(e=B+32|0)>>2]=0,X2[e+4>>2]=0,X2[(e=B+24|0)>>2]=0,X2[e+4>>2]=0,X2[(e=B+16|0)>>2]=0,X2[e+4>>2]=0,X2[(e=B+8|0)>>2]=0,X2[e+4>>2]=0,e=X2[t>>2]),i=r+i|0,t=t+4|0,r=r+8|0,g=(e=J2[e+20|0]?(N2[X2[X2[e>>2]+16>>2]](e,i),X2[i>>2]):(X2[i>>2]=0,X2[i+4>>2]=0))+g|0,!(k=k-1|0))break;if(!((0|g)<=(0|(e=X2[A+48>>2]))||X2[A+52>>2]>=(0|g))){if(t=0,g&&(X2[6258]=X2[6258]+1,(r=L2(H2(g,152)+19|0))&&(X2[(t=r+19&-16)-4>>2]=r)),1<=(0|e))for(i=0;;)if($2(i+t|0,X2[A+56>>2]+i|0,152),i=i+152|0,!(e=e-1|0))break;(e=X2[A+56>>2])&&J2[A+60|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+56>>2]=t,X2[A+52>>2]=g,S2[A+60|0]=1}if(X2[A+48>>2]=g,1<=(0|f))for(e=X2[A+176>>2],t=B2=0;;){if($=t,X2[(K=(q=B2<<3)+e|0)>>2]){if(O=X2[(L=(B2<<2)+V|0)>>2],M=X2[O+32>>2],r=X2[A+56>>2],g=F4(A,S=X2[O+28>>2],U2[p+12>>2]),B=F4(A,M,U2[p+12>>2]),e=X2[O+24>>2],i=X2[p+20>>2],(0|(k=0<(0|e)?e:i))>X2[A+184>>2]&&(X2[A+184>>2]=k),n=r+H2(t,152)|0,t=X2[A+16>>2],1<=X2[K>>2]){for(i=n+148|0,r=0;;)if(v2(i-148|0,0,152),X2[(e=i-28|0)>>2]=-8388609,X2[e+4>>2]=2139095039,X2[i>>2]=B,X2[i-4>>2]=g,X2[(e=i-52|0)>>2]=0,X2[e+4>>2]=0,X2[i-12>>2]=k,i=i+152|0,!((0|(r=r+1|0))>2]))break;i=X2[p+20>>2]}if(X=t+H2(g,244)|0,X2[(e=X)+144>>2]=0,X2[e+148>>2]=0,X2[(e=e+152|0)>>2]=0,X2[e+4>>2]=0,X2[(e=160+X|0)>>2]=0,X2[e+4>>2]=0,X2[(e=168+X|0)>>2]=0,X2[e+4>>2]=0,X2[64+X>>2]=0,X2[68+X>>2]=0,X2[(e=88+X|0)>>2]=0,X2[e+4>>2]=0,X2[(e=80+X|0)>>2]=0,X2[e+4>>2]=0,X2[(e=72+X|0)>>2]=0,X2[e+4>>2]=0,r=t+H2(B,244)|0,X2[(e=r)+144>>2]=0,X2[e+148>>2]=0,X2[(e=e+152|0)>>2]=0,X2[e+4>>2]=0,X2[(e=r+160|0)>>2]=0,X2[e+4>>2]=0,X2[(e=r+168|0)>>2]=0,X2[e+4>>2]=0,X2[r+64>>2]=0,X2[r+68>>2]=0,X2[(e=r+72|0)>>2]=0,X2[e+4>>2]=0,X2[(e=r+80|0)>>2]=0,X2[e+4>>2]=0,X2[(e=r+88|0)>>2]=0,X2[e+4>>2]=0,U2[n+116>>2]=U2[p+40>>2],X2[36+a>>2]=n+112,X2[32+a>>2]=38,X2[28+a>>2]=n+32,X2[52+a>>2]=i,X2[48+a>>2]=n+124,X2[44+a>>2]=n+120,X2[40+a>>2]=n+116,U2[56+a>>2]=U2[p+4>>2],X2[24+a>>2]=n+48,X2[20+a>>2]=n,X2[16+a>>2]=n+16,U2[12+a>>2]=U2[p+32>>2],U2[8+a>>2]=P2(1)/U2[p+12>>2],e=X2[L>>2],N2[X2[X2[e>>2]+20>>2]](e,8+a|0),1<=X2[K>>2])for(i=n+68|0,A2=r+232|0,e2=r+228|0,r2=r+224|0,f2=r+216|0,i2=r+212|0,a2=r+208|0,s2=r+240|0,l2=232+X|0,E=228+X|0,n=224+X|0,g=216+X|0,B=212+X|0,k=208+X|0,t=240+X|0,r=0;;)if((b=U2[X2[L>>2]+16>>2])<=U2[(e=i+56|0)>>2]&&(U2[e>>2]=b),(b=P2(-b))>=U2[(e=i+52|0)>>2]&&(U2[e>>2]=b),X2[i- -64>>2]=O,e=X2[O+28>>2],d=U2[e+328>>2],m=U2[e+332>>2],Z=U2[e+608>>2],s=U2[e+348>>2],l=U2[e+340>>2],v=U2[e+344>>2],w=U2[e+612>>2],_=U2[e+364>>2],u=U2[e+356>>2],o=U2[e+360>>2],c=U2[e+604>>2],b=U2[e+324>>2],X2[i+8>>2]=0,J=U2[i-68>>2],U=U2[i+-64>>2],H=U2[i-60>>2],U2[i+4>>2]=w*P2(P2(P2(u*J)+P2(o*U))+P2(_*H)),U2[i>>2]=Z*P2(P2(P2(J*l)+P2(U*v))+P2(H*s)),U2[i-4>>2]=c*P2(P2(P2(b*J)+P2(d*U))+P2(m*H)),e=X2[O+32>>2],d=U2[e+328>>2],m=U2[e+332>>2],Z=U2[e+608>>2],s=U2[e+348>>2],l=U2[e+340>>2],v=U2[e+344>>2],w=U2[e+612>>2],_=U2[e+364>>2],u=U2[e+356>>2],o=U2[e+360>>2],c=U2[e+604>>2],b=U2[e+324>>2],X2[i+24>>2]=0,P=U2[i-36>>2],j=U2[i-32>>2],z=U2[i-28>>2],U2[i+20>>2]=w*P2(P2(P2(u*P)+P2(o*j))+P2(_*z)),U2[i+16>>2]=Z*P2(P2(P2(P*l)+P2(j*v))+P2(z*s)),U2[i+12>>2]=c*P2(P2(P2(b*P)+P2(d*j))+P2(m*z)),u2=P2(0),G=U2[i-52>>2],b=U2[S+404>>2],C=U2[i-48>>2],h=U2[i-44>>2],o=P2(P2(P2(P2(G*P2(G*b))+P2(C*P2(b*C)))+P2(h*P2(b*h)))+P2(P2(P2(J*P2(P2(P2(J*U2[S+324>>2])+P2(U*U2[S+328>>2]))+P2(H*U2[S+332>>2])))+P2(U*P2(P2(P2(J*U2[S+340>>2])+P2(U*U2[S+344>>2]))+P2(H*U2[S+348>>2]))))+P2(H*P2(P2(P2(J*U2[S+356>>2])+P2(U*U2[S+360>>2]))+P2(H*U2[S+364>>2]))))),N=U2[i-20>>2],b=U2[M+404>>2],R=U2[i-16>>2],b2=U2[i-12>>2],b=P2(P2(o+P2(P2(P2(N*P2(N*b))+P2(R*P2(b*R)))+P2(b2*P2(b*b2))))+P2(P2(P2(P*P2(P2(P2(P*U2[M+324>>2])+P2(j*U2[M+328>>2]))+P2(z*U2[M+332>>2])))+P2(j*P2(P2(P2(P*U2[M+340>>2])+P2(j*U2[M+344>>2]))+P2(z*U2[M+348>>2]))))+P2(z*P2(P2(P2(P*U2[M+356>>2])+P2(j*U2[M+360>>2]))+P2(z*U2[M+364>>2]))))),t2=P2(j2(b))>P2(1.1920928955078125e-7)?P2(P2(1)/b):P2(0),U2[i+40>>2]=t2,k2=P2(0),T=P2(0),Y=P2(0),I=P2(0),F=P2(0),W=P2(0),X2[t>>2]&&(F=U2[E>>2],I=U2[n>>2],T=U2[B>>2],Y=U2[k>>2],k2=U2[g>>2],W=U2[l2>>2]),o2=P2(0),n2=P2(0),c2=P2(0),Q=P2(0),D=P2(0),X2[s2>>2]&&(Q=U2[e2>>2],c2=U2[r2>>2],o2=U2[i2>>2],n2=U2[a2>>2],u2=U2[f2>>2],D=U2[A2>>2]),d=U2[S+380>>2],m=U2[S+372>>2],Z=U2[S+376>>2],s=U2[S+396>>2],l=U2[S+388>>2],v=U2[S+392>>2],w=U2[M+380>>2],_=U2[M+372>>2],u=U2[M+376>>2],o=U2[M+396>>2],c=U2[M+388>>2],b=U2[M+392>>2],X2[i+32>>2]=0,U2[(e=i+44|0)>>2]=P2(t2*U2[e>>2])+P2(t2*P2(P2(0)-P2(U2[56+a>>2]*P2(P2(P2(P2(P2(G*P2(Y+m))+P2(C*P2(T+Z)))+P2(h*P2(k2+d)))+P2(P2(P2(J*P2(I+l))+P2(U*P2(F+v)))+P2(H*P2(W+s))))+P2(P2(P2(P2(N*P2(n2+_))+P2(R*P2(o2+u)))+P2(b2*P2(u2+w)))+P2(P2(P2(P*P2(c2+c))+P2(j*P2(Q+b)))+P2(z*P2(D+o)))))))),i=i+152|0,!((0|(r=r+1|0))>2]))break;e=X2[A+176>>2],r=X2[q+e>>2]}else r=0;if(t=$+r|0,(0|(B2=B2+1|0))==(0|f))break}if(N2[X2[X2[A>>2]+28>>2]](A,x,y,p),f=X2[A+68>>2],t=X2[A+28>>2],k=X2[A+128>>2],!((0|(V=X2[A+48>>2]))<=(0|k)||(0|V)<=X2[A+132>>2])){r=0,V&&(X2[6258]=X2[6258]+1,(e=L2(19+(V<<2)|0))&&(X2[(r=e+19&-16)-4>>2]=e)),x=X2[A+136>>2];A:{if(1<=(0|k)){for(i=r,e=x;;)if(X2[i>>2]=X2[e>>2],i=i+4|0,e=e+4|0,!(k=k-1|0))break}else if(!x)break A;J2[A+140|0]&&(X2[6259]=X2[6259]+1,q2(X2[x-4>>2]))}X2[A+136>>2]=r,X2[A+132>>2]=V,S2[A+140|0]=1}if(X2[A+128>>2]=V,16&J2[p+72|0]){if(!((0|(y=t<<1))<=(0|(k=X2[A+108>>2]))||(0|y)<=X2[A+112>>2])){r=0,t&&(X2[6258]=X2[6258]+1,(e=L2(19+(t<<3)|0))&&(X2[(r=e+19&-16)-4>>2]=e)),x=X2[A+116>>2];A:{if(1<=(0|k)){for(i=r,e=x;;)if(X2[i>>2]=X2[e>>2],i=i+4|0,e=e+4|0,!(k=k-1|0))break}else if(!x)break A;J2[A+120|0]&&(X2[6259]=X2[6259]+1,q2(X2[x-4>>2]))}X2[A+116>>2]=r,X2[A+112>>2]=y,S2[A+120|0]=1}X2[A+108>>2]=y}else{if(!((0|t)<=(0|(k=X2[A+108>>2]))||(0|t)<=X2[A+112>>2])){r=0,t&&(X2[6258]=X2[6258]+1,(e=L2(19+(t<<2)|0))&&(X2[(r=e+19&-16)-4>>2]=e)),x=X2[A+116>>2];A:{if(1<=(0|k)){for(i=r,e=x;;)if(X2[i>>2]=X2[e>>2],i=i+4|0,e=e+4|0,!(k=k-1|0))break}else if(!x)break A;J2[A+120|0]&&(X2[6259]=X2[6259]+1,q2(X2[x-4>>2]))}X2[A+116>>2]=r,X2[A+112>>2]=t,S2[A+120|0]=1}X2[A+108>>2]=t}if(!((0|f)<=(0|(k=X2[A+148>>2]))||(0|f)<=X2[A+152>>2])){r=0,f&&(X2[6258]=X2[6258]+1,(e=L2(19+(f<<2)|0))&&(X2[(r=e+19&-16)-4>>2]=e)),x=X2[A+156>>2];A:{if(1<=(0|k)){for(i=r,e=x;;)if(X2[i>>2]=X2[e>>2],i=i+4|0,e=e+4|0,!(k=k-1|0))break}else if(!x)break A;J2[A+160|0]&&(X2[6259]=X2[6259]+1,q2(X2[x-4>>2]))}X2[A+156>>2]=r,X2[A+152>>2]=f,S2[A+160|0]=1}if(X2[A+148>>2]=f,1<=(0|V))for(i=X2[A+136>>2],e=0;;)if(X2[i>>2]=e,i=i+4|0,(0|V)==(0|(e=e+1|0)))break;if(1<=(0|t))for(i=X2[A+116>>2],e=0;;)if(X2[i>>2]=e,i=i+4|0,(0|t)==(0|(e=e+1|0)))break;if(1<=(0|f))for(i=X2[A+156>>2],e=0;;)if(X2[i>>2]=e,i=i+4|0,(0|f)==(0|(e=e+1|0)))break;return K2=256+a|0,P2(P2(0))},function(A,e,r,f,i,a,n,b,t){A|=0,e|=0,r|=0,f|=0,i|=0,a|=0,n|=0,b|=0,t|=0;var o,c,k,u,s=0;P2(0),N2[X2[X2[A>>2]+32>>2]](A,e,r,f,i,a,n,b,t),s=X2[A+184>>2],o=(0|(o=X2[b+20>>2]))<(0|s)?s:o;A:if(!((0|o)<1))for(u=o-1|0,s=1;;){if(k=P2(N2[X2[X2[A>>2]+40>>2]](A,c=s-1|0,e,r,f,i,a,n,b,t)),U2[A+228>>2]=k,(0|u)<=(0|c))break A;if(U2[b+92>>2]>=k)break A;if(c=(0|s)<(0|o),s=s+1|0,!c)break}return P2(P2(0))},A,D4,u0,function(A,e,r,f){var i,a,n,b,t,o;A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),X2[(i=604+(K2=o=K2-688|0)|0)>>2]=1065353216,X2[4+i>>2]=0,a=X2[e+20>>2],X2[(i=656+o|0)>>2]=X2[e+16>>2],X2[4+i>>2]=a,a=X2[e+36>>2],X2[(i=672+o|0)>>2]=X2[e+32>>2],X2[4+i>>2]=a,n=X2[4+(a=e+8|0)>>2],X2[(i=648+o|0)>>2]=X2[a>>2],X2[4+i>>2]=n,n=X2[4+(a=e+24|0)>>2],X2[(i=664+o|0)>>2]=X2[a>>2],X2[4+i>>2]=n,n=X2[4+(a=e+40|0)>>2],X2[(i=680+o|0)>>2]=X2[a>>2],X2[4+i>>2]=n,X2[636+o>>2]=0,X2[596+o>>2]=1065353216,X2[600+o>>2]=1065353216,X2[588+o>>2]=0,X2[592+o>>2]=0,X2[580+o>>2]=1,X2[584+o>>2]=0,X2[576+o>>2]=16056,i=X2[e+4>>2],X2[640+o>>2]=X2[e>>2],X2[644+o>>2]=i,U2[628+o>>2]=U2[A+204>>2],S2[548+o|0]=0,X2[524+o>>2]=953267991,X2[208+o>>2]=17368,X2[204+o>>2]=0,X2[184+o>>2]=20032,X2[196+o>>2]=X2[A+4>>2],X2[200+o>>2]=576+o,X2[192+o>>2]=208+o,X2[188+o>>2]=216+o,X2[8+o>>2]=15320,X2[172+o>>2]=1065353216,X2[176+o>>2]=0,U2[180+o>>2]=U2[A+208>>2],D4(184+o|0,A+8|0,A+72|0,e=A+136|0,e,8+o|0)&&(a=U2[140+o>>2],n=U2[144+o>>2],i=U2[148+o>>2],(e=P2(P2(P2(a*a)+P2(n*n))+P2(i*i)))>P2(9999999747378752e-20)&&(b=U2[172+o>>2])>2]&&(t=i,i=P2(P2(1)/P2(O2(e))),U2[148+o>>2]=t*i,U2[144+o>>2]=n*i,U2[140+o>>2]=a*i,P2(N2[X2[X2[A>>2]+12>>2]](A,140+o|0,156+o|0,b,r,f)))),X2[576+o>>2]=10364,(A=X2[636+o>>2])&&(N2[X2[X2[A>>2]>>2]](A),(A=X2[636+o>>2])&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2]))),K2=688+o|0},W4,function(A){var e,r,f=0,i=0,a=0;if(X2[(A|=0)>>2]=20204,1<=(0|(f=X2[A+8>>2])))for(;;)if(r=X2[X2[A+16>>2]+i>>2],(e=X2[r+188>>2])&&(f=X2[A+68>>2],f=0|N2[X2[X2[f>>2]+36>>2]](f),N2[X2[X2[f>>2]+40>>2]](f,e,X2[A+24>>2]),f=X2[A+68>>2],N2[X2[X2[f>>2]+12>>2]](f,e,X2[A+24>>2]),X2[r+188>>2]=0,f=X2[A+8>>2]),i=i+4|0,!((0|(a=a+1|0))<(0|f)))break;(f=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),n(A)},function(A){A|=0;var e,r,f,i=P2(0),a=P2(0),n=0,b=P2(0),t=P2(0),o=P2(0),c=P2(0),k=(P2(0),0),u=0;if(K2=f=K2+-64|0,1<=(0|(n=X2[A+8>>2])))for(;;){e=X2[X2[A+16>>2]+k>>2];A:{e:if(!J2[A+76|0])switch(X2[e+220>>2]-2|0){case 0:case 3:break A;default:break e;}n=X2[e+192>>2],N2[X2[X2[n>>2]+8>>2]](n,e+4|0,48+f|0,32+f|0),a=P2(U2[48+f>>2]+P2(-.019999999552965164)),U2[48+f>>2]=a,b=P2(U2[52+f>>2]+P2(-.019999999552965164)),U2[52+f>>2]=b,t=P2(U2[56+f>>2]+P2(-.019999999552965164)),U2[56+f>>2]=t,i=P2(U2[32+f>>2]+P2(.019999999552965164)),U2[32+f>>2]=i,o=P2(U2[36+f>>2]+P2(.019999999552965164)),U2[36+f>>2]=o,c=P2(U2[40+f>>2]+P2(.019999999552965164)),U2[40+f>>2]=c,!J2[A+44|0]||2!=X2[e+252>>2]||3&J2[e+204|0]||(n=X2[e+192>>2],N2[X2[X2[n>>2]+8>>2]](n,e+68|0,16+f|0,f),b=P2(U2[16+f>>2]+P2(-.019999999552965164)),U2[16+f>>2]=b,t=P2(U2[20+f>>2]+P2(-.019999999552965164)),U2[20+f>>2]=t,i=P2(U2[24+f>>2]+P2(-.019999999552965164)),U2[24+f>>2]=i,o=P2(U2[f>>2]+P2(.019999999552965164)),U2[f>>2]=o,c=P2(U2[4+f>>2]+P2(.019999999552965164)),U2[4+f>>2]=c,r=P2(U2[8+f>>2]+P2(.019999999552965164)),U2[8+f>>2]=r,b<(a=U2[48+f>>2])&&(a=U2[48+f>>2]=b),t<(b=U2[52+f>>2])&&(b=U2[52+f>>2]=t),i<(t=U2[56+f>>2])&&(t=U2[56+f>>2]=i),(i=U2[28+f>>2])>2]&&(U2[60+f>>2]=i),(i=U2[32+f>>2])>2]=o),(o=U2[36+f>>2])>2]=c),(c=U2[40+f>>2])>2]=r),(r=U2[12+f>>2])>U2[44+f>>2]&&(U2[44+f>>2]=r)),n=X2[A+68>>2],1&S2[e+204|0]||(a=P2(i-a),i=P2(a*a),a=P2(o-b),i=P2(i+P2(a*a)),a=P2(c-t),P2(i+P2(a*a))>2]+16>>2]](n,X2[e+188>>2],48+f|0,32+f|0,X2[A+24>>2]):(4!=(-2&X2[e+220>>2])&&(X2[e+220>>2]=5),J2[26516]||(e=X2[A+72>>2])&&(S2[26516]=1,N2[X2[X2[e>>2]+44>>2]](e,21024),e=X2[A+72>>2],N2[X2[X2[e>>2]+44>>2]](e,21073),e=X2[A+72>>2],N2[X2[X2[e>>2]+44>>2]](e,21141),e=X2[A+72>>2],N2[X2[X2[e>>2]+44>>2]](e,21206))),n=X2[A+8>>2]}if(k=k+4|0,!((0|(u=u+1|0))<(0|n)))break}K2=f+64|0},function(A){var e=X2[(A|=0)+68>>2];N2[X2[X2[e>>2]+32>>2]](e,X2[A+24>>2])},function(A,e){X2[(A|=0)+72>>2]=e|=0},c4,I4,function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var x,i,y,V,a,n=0,b=0,t=0,o=P2(0),c=P2(0),k=P2(0),u=P2(0),s=0,l=P2(0),B=P2(0),v=P2(0),d=P2(0),Z=P2(0),_=P2(0),g=P2(0),E=P2(0),Q=P2(0),w=P2(0),G=P2(0),C=P2(0),h=P2(0),F=P2(0),Y=0,m=P2(0),N=P2(0),R=P2(0),D=0,T=0,W=0,I=0;P2(0),K2=a=K2-144|0,0|N2[X2[X2[A>>2]+20>>2]](A)&&(n=0|N2[X2[X2[A>>2]+20>>2]](A),32768&N2[X2[X2[n>>2]+56>>2]](n)&&(n=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[n>>2]+64>>2]](n,e,P2(.10000000149011612))));A:{e:{r:{f:{i:{a:{n:{b:{t:{o:switch(0|(n=X2[r+4>>2])){case 0:break t;case 31:break o;case 28:break r;case 13:break f;case 11:break i;case 10:break a;case 9:break n;case 8:break b;default:break e;}if((0|(n=X2[r+24>>2]))<1)break A;for(b=n+1|0,t=H2(n,80)-80|0;;)if(n=X2[r+32>>2]+t|0,s=X2[n- -64>>2],o=U2[n+56>>2],c=U2[n+48>>2],k=U2[n+52>>2],l=U2[n+32>>2],d=U2[n>>2],Z=U2[n+16>>2],_=U2[n+36>>2],E=U2[n+4>>2],w=U2[n+20>>2],u=U2[n+40>>2],B=U2[n+8>>2],v=U2[n+24>>2],X2[60+a>>2]=0,X2[44+a>>2]=0,X2[28+a>>2]=0,X2[12+a>>2]=0,G=U2[e+32>>2],g=U2[e+36>>2],Q=U2[e+40>>2],U2[40+a>>2]=P2(P2(B*G)+P2(v*g))+P2(u*Q),U2[36+a>>2]=P2(P2(E*G)+P2(w*g))+P2(_*Q),U2[32+a>>2]=P2(P2(d*G)+P2(Z*g))+P2(l*Q),C=U2[e+16>>2],h=U2[e+20>>2],F=U2[e+24>>2],U2[24+a>>2]=P2(P2(B*C)+P2(v*h))+P2(u*F),U2[20+a>>2]=P2(P2(E*C)+P2(w*h))+P2(_*F),U2[16+a>>2]=P2(P2(d*C)+P2(Z*h))+P2(l*F),m=B,B=U2[e>>2],N=v,v=U2[e+4>>2],R=u,u=U2[e+8>>2],U2[8+a>>2]=P2(P2(m*B)+P2(N*v))+P2(R*u),U2[4+a>>2]=P2(P2(E*B)+P2(w*v))+P2(_*u),U2[a>>2]=P2(P2(d*B)+P2(Z*v))+P2(l*u),U2[56+a>>2]=P2(P2(P2(c*G)+P2(k*g))+P2(o*Q))+U2[e+56>>2],U2[52+a>>2]=P2(P2(P2(c*C)+P2(k*h))+P2(o*F))+U2[e+52>>2],U2[48+a>>2]=P2(P2(P2(c*B)+P2(k*v))+P2(o*u))+U2[e+48>>2],N2[X2[X2[A>>2]+28>>2]](A,a,s,f),t=t-80|0,!(1<(0|(b=b-1|0))))break;break A}s=X2[(t=r+44|0)+4>>2],X2[(n=b=8+a|0)>>2]=X2[t>>2],X2[n+4>>2]=s,t=X2[(n=r+36|0)+4>>2],X2[a>>2]=X2[n>>2],X2[4+a>>2]=t,o=P2(N2[X2[X2[r>>2]+48>>2]](r)),c=P2(N2[X2[X2[r>>2]+48>>2]](r)),k=P2(P2(N2[X2[X2[r>>2]+48>>2]](r))+U2[b>>2]),U2[b>>2]=k,o=P2(o+U2[a>>2]),U2[a>>2]=o,c=P2(c+U2[4+a>>2]),U2[4+a>>2]=c,A=0|N2[X2[X2[A>>2]+20>>2]](A),X2[140+a>>2]=0,U2[136+a>>2]=-k,U2[132+a>>2]=-c,U2[128+a>>2]=-o,N2[X2[X2[A>>2]+80>>2]](A,128+a|0,a,e,f);break A}o=P2(N2[X2[X2[r>>2]+48>>2]](r)),A=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[A>>2]+24>>2]](A,o,e,f);break A}if((0|(n=X2[r+100>>2]))<1)break A;for(Y=n+1|0,b=(n<<4)-8|0,t=(n<<2)-4|0;;)if(n=X2[r+108>>2]+b|0,o=U2[n>>2],c=U2[n-8>>2],k=U2[n-4>>2],n=0|N2[X2[X2[A>>2]+20>>2]](A),G=U2[X2[r+128>>2]+t>>2],X2[60+a>>2]=0,X2[44+a>>2]=0,X2[28+a>>2]=0,X2[12+a>>2]=0,l=U2[e+40>>2],d=U2[e+32>>2],_=P2(d*P2(0)),Z=U2[e+36>>2],E=P2(Z*P2(0)),U2[40+a>>2]=l+P2(_+E),u=P2(_+Z),_=P2(l*P2(0)),U2[36+a>>2]=u+_,U2[32+a>>2]=P2(d+E)+_,_=U2[e+24>>2],E=U2[e+16>>2],u=P2(E*P2(0)),w=U2[e+20>>2],B=P2(w*P2(0)),U2[24+a>>2]=_+P2(u+B),v=P2(u+w),u=P2(_*P2(0)),U2[20+a>>2]=v+u,U2[16+a>>2]=P2(E+B)+u,u=U2[e+8>>2],B=U2[e>>2],g=P2(B*P2(0)),v=U2[e+4>>2],Q=P2(v*P2(0)),U2[8+a>>2]=u+P2(g+Q),m=P2(g+v),g=P2(u*P2(0)),U2[4+a>>2]=m+g,U2[a>>2]=P2(B+Q)+g,U2[56+a>>2]=P2(P2(P2(c*d)+P2(k*Z))+P2(o*l))+U2[e+56>>2],U2[52+a>>2]=P2(P2(P2(c*E)+P2(k*w))+P2(o*_))+U2[e+52>>2],U2[48+a>>2]=P2(P2(P2(c*B)+P2(k*v))+P2(o*u))+U2[e+48>>2],N2[X2[X2[n>>2]+24>>2]](n,G,a,f),b=b-16|0,t=t-4|0,!(1<(0|(Y=Y-1|0))))break;break A}b=X2[r+60>>2],o=U2[(b<<2)+(r=r+36|0)>>2],c=U2[r+((b+2|0)%3<<2)>>2],A=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[A>>2]+84>>2]](A,c,o,b,e,f);break A}b=X2[r+76>>2],o=U2[r+68>>2],c=U2[r- -64>>2],A=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[A>>2]+92>>2]](A,c,o,b,e,f);break A}b=X2[r+60>>2],o=P2(N2[X2[X2[r>>2]+92>>2]](r)),Y=X2[(s=r+44|0)+4>>2],X2[(n=8+a|0)>>2]=X2[s>>2],X2[n+4>>2]=Y,s=X2[(t=r+36|0)+4>>2],X2[a>>2]=X2[t>>2],X2[4+a>>2]=s,c=P2(N2[X2[X2[r>>2]+48>>2]](r)),k=P2(N2[X2[X2[r>>2]+48>>2]](r)),y=n,V=P2(P2(N2[X2[X2[r>>2]+48>>2]](r))+U2[n>>2]),U2[y>>2]=V,U2[a>>2]=c+U2[a>>2],U2[4+a>>2]=k+U2[4+a>>2],c=U2[(b<<2)+a>>2],A=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[A>>2]+88>>2]](A,o,c,b,e,f);break A}o=U2[r+72>>2],A=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[A>>2]+96>>2]](A,r+56|0,o,e,f);break A}if(!(6<(0|n)))if(s=X2[r+60>>2]){if(!(X2[s+28>>2]<1))for(;;){k=P2(0);e:if(b=(W=H2(T,36))+X2[s+36>>2]|0,D=X2[b+4>>2]){if(o=P2(0),c=P2(0),!((0|D)<1))for(t=X2[b+12>>2],b=X2[(t+(D<<2)|0)-4>>2],Y=1,I=0;;){if(t=(x=(n=X2[t+I>>2])<<4)+X2[s+16>>2]|0,_=U2[t>>2],E=U2[t+4>>2],w=U2[t+8>>2],t=0|N2[X2[X2[A>>2]+20>>2]](A),X2[12+a>>2]=0,i=X2[s+16>>2],l=U2[(b=i+(b<<4)|0)>>2],u=U2[e+32>>2],d=U2[b+4>>2],B=U2[e+36>>2],Z=U2[b+8>>2],v=U2[e+40>>2],G=U2[e+56>>2],U2[8+a>>2]=P2(P2(P2(l*u)+P2(d*B))+P2(Z*v))+G,g=U2[e+16>>2],Q=U2[e+20>>2],C=U2[e+24>>2],h=U2[e+52>>2],U2[4+a>>2]=P2(P2(P2(l*g)+P2(d*Q))+P2(Z*C))+h,F=U2[e>>2],m=U2[e+4>>2],N=U2[e+8>>2],R=U2[e+48>>2],U2[a>>2]=P2(P2(P2(l*F)+P2(d*m))+P2(Z*N))+R,X2[140+a>>2]=0,l=U2[(b=x+i|0)>>2],d=U2[b+4>>2],Z=U2[b+8>>2],U2[136+a>>2]=G+P2(P2(P2(u*l)+P2(B*d))+P2(v*Z)),U2[132+a>>2]=h+P2(P2(P2(g*l)+P2(Q*d))+P2(C*Z)),U2[128+a>>2]=R+P2(P2(P2(F*l)+P2(m*d))+P2(N*Z)),N2[X2[X2[t>>2]+16>>2]](t,a,128+a|0,f),c=P2(c+w),o=P2(o+E),k=P2(k+_),b=X2[s+36>>2]+W|0,X2[b+4>>2]<=(0|Y))break e;I=I+4|0,Y=Y+1|0,t=X2[b+12>>2],b=n}}else o=P2(0),c=P2(0);if(b=0|N2[X2[X2[A>>2]+20>>2]](A),16384&N2[X2[X2[b>>2]+56>>2]](b)&&(X2[8+a>>2]=0,X2[12+a>>2]=0,X2[a>>2]=1065353216,X2[4+a>>2]=1065353216,b=X2[s+36>>2]+W|0,d=U2[b+28>>2],Z=U2[b+20>>2],_=U2[b+24>>2],b=0|N2[X2[X2[A>>2]+20>>2]](A),X2[140+a>>2]=0,l=P2(P2(1)/P2(0|D)),k=P2(l*k),E=U2[e+32>>2],o=P2(l*o),w=U2[e+36>>2],c=P2(l*c),l=U2[e+40>>2],u=U2[e+56>>2],U2[136+a>>2]=P2(P2(P2(k*E)+P2(o*w))+P2(c*l))+u,B=U2[e+16>>2],v=U2[e+20>>2],G=U2[e+24>>2],g=U2[e+52>>2],U2[132+a>>2]=P2(P2(P2(k*B)+P2(o*v))+P2(c*G))+g,Q=U2[e>>2],C=U2[e+4>>2],h=U2[e+8>>2],F=U2[e+48>>2],U2[128+a>>2]=P2(P2(P2(k*Q)+P2(o*C))+P2(c*h))+F,X2[124+a>>2]=0,k=P2(k+Z),o=P2(o+_),c=P2(c+d),U2[120+a>>2]=u+P2(P2(P2(E*k)+P2(w*o))+P2(l*c)),U2[116+a>>2]=g+P2(P2(P2(k*B)+P2(o*v))+P2(c*G)),U2[112+a>>2]=F+P2(P2(P2(k*Q)+P2(o*C))+P2(c*h)),N2[X2[X2[b>>2]+16>>2]](b,128+a|0,112+a|0,a)),!((0|(T=T+1|0))>2]))break}}else if(!((0|N2[X2[X2[r>>2]+100>>2]](r))<1))for(;;)if(N2[X2[X2[r>>2]+104>>2]](r,b,a,128+a|0),X2[124+a>>2]=0,o=U2[a>>2],l=U2[e+32>>2],c=U2[4+a>>2],d=U2[e+36>>2],k=U2[8+a>>2],Z=U2[e+40>>2],_=U2[e+56>>2],U2[120+a>>2]=P2(P2(P2(o*l)+P2(c*d))+P2(k*Z))+_,E=U2[e+16>>2],w=U2[e+20>>2],u=U2[e+24>>2],B=U2[e+52>>2],U2[116+a>>2]=P2(P2(P2(o*E)+P2(c*w))+P2(k*u))+B,v=U2[e>>2],G=U2[e+4>>2],g=U2[e+8>>2],Q=U2[e+48>>2],U2[112+a>>2]=P2(P2(P2(o*v)+P2(c*G))+P2(k*g))+Q,X2[108+a>>2]=0,o=U2[128+a>>2],c=U2[132+a>>2],k=U2[136+a>>2],U2[104+a>>2]=_+P2(P2(P2(l*o)+P2(d*c))+P2(Z*k)),U2[100+a>>2]=B+P2(P2(P2(E*o)+P2(w*c))+P2(u*k)),U2[96+a>>2]=Q+P2(P2(P2(v*o)+P2(G*c))+P2(g*k)),n=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[n>>2]+16>>2]](n,112+a|0,96+a|0,f),b=b+1|0,!((0|N2[X2[X2[r>>2]+100>>2]](r))>(0|b)))break;(b=X2[r+4>>2])-21>>>0<=8&&(X2[136+a>>2]=1566444395,X2[140+a>>2]=0,X2[128+a>>2]=1566444395,X2[132+a>>2]=1566444395,X2[120+a>>2]=-581039253,X2[124+a>>2]=0,X2[112+a>>2]=-581039253,X2[116+a>>2]=-581039253,b=0|N2[X2[X2[A>>2]+20>>2]](A),s=X2[(t=f+8|0)+4>>2],X2[(n=20+a|0)>>2]=X2[t>>2],X2[n+4>>2]=s,s=X2[(t=e+8|0)+4>>2],X2[(n=36+a|0)>>2]=X2[t>>2],X2[n+4>>2]=s,t=X2[e+20>>2],X2[(n=44+a|0)>>2]=X2[e+16>>2],X2[n+4>>2]=t,s=X2[(t=e+24|0)+4>>2],X2[(n=52+a|0)>>2]=X2[t>>2],X2[n+4>>2]=s,t=X2[e+36>>2],X2[(n=60+a|0)>>2]=X2[e+32>>2],X2[n+4>>2]=t,s=X2[(t=e+40|0)+4>>2],X2[(n=68+a|0)>>2]=X2[t>>2],X2[n+4>>2]=s,X2[8+a>>2]=b,X2[4+a>>2]=20960,X2[a>>2]=20936,b=X2[f+4>>2],X2[12+a>>2]=X2[f>>2],X2[16+a>>2]=b,b=X2[e+4>>2],X2[28+a>>2]=X2[e>>2],X2[32+a>>2]=b,t=X2[(n=e+56|0)+4>>2],X2[(b=84+a|0)>>2]=X2[n>>2],X2[b+4>>2]=t,n=X2[e+52>>2],X2[(b=76+a|0)>>2]=X2[e+48>>2],X2[b+4>>2]=n,N2[X2[X2[r>>2]+64>>2]](r,a,112+a|0,128+a|0),b=X2[r+4>>2]),3==(0|b)&&(X2[136+a>>2]=1566444395,X2[140+a>>2]=0,X2[128+a>>2]=1566444395,X2[132+a>>2]=1566444395,X2[120+a>>2]=-581039253,X2[124+a>>2]=0,X2[112+a>>2]=-581039253,X2[116+a>>2]=-581039253,A=0|N2[X2[X2[A>>2]+20>>2]](A),t=X2[(n=f+8|0)+4>>2],X2[(b=20+a|0)>>2]=X2[n>>2],X2[b+4>>2]=t,t=X2[(n=e+8|0)+4>>2],X2[(b=36+a|0)>>2]=X2[n>>2],X2[b+4>>2]=t,n=X2[e+20>>2],X2[(b=44+a|0)>>2]=X2[e+16>>2],X2[b+4>>2]=n,t=X2[(n=e+24|0)+4>>2],X2[(b=52+a|0)>>2]=X2[n>>2],X2[b+4>>2]=t,n=X2[e+36>>2],X2[(b=60+a|0)>>2]=X2[e+32>>2],X2[b+4>>2]=n,t=X2[(n=e+40|0)+4>>2],X2[(b=68+a|0)>>2]=X2[n>>2],X2[b+4>>2]=t,X2[8+a>>2]=A,X2[4+a>>2]=20960,X2[a>>2]=20936,A=X2[f+4>>2],X2[12+a>>2]=X2[f>>2],X2[16+a>>2]=A,A=X2[e+4>>2],X2[28+a>>2]=X2[e>>2],X2[32+a>>2]=A,b=X2[(f=e+56|0)+4>>2],X2[(A=84+a|0)>>2]=X2[f>>2],X2[A+4>>2]=b,f=X2[e+52>>2],X2[(A=76+a|0)>>2]=X2[e+48>>2],X2[A+4>>2]=f,A=X2[r+100>>2],N2[X2[X2[A>>2]+8>>2]](A,4|a,112+a|0,128+a|0))}K2=144+a|0},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n,b,t,o,c,k,u=0;P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),X2[(a=104+(K2=k=K2-256|0)|0)>>2]=0,X2[4+a>>2]=0,X2[(a=112+k|0)>>2]=0,X2[4+a>>2]=0,X2[(a=124+k|0)>>2]=0,X2[4+a>>2]=0,X2[120+k>>2]=1065353216,X2[(a=132+k|0)>>2]=0,X2[4+a>>2]=0,X2[(a=140+k|0)>>2]=1065353216,X2[4+a>>2]=0,n=X2[4+(c=e+8|0)>>2],t=X2[c>>2],X2[(u=b=76+k|0)>>2]=t,X2[4+u>>2]=n,u=X2[4+(a=r+8|0)>>2],X2[(i=92+k|0)>>2]=X2[a>>2],X2[4+i>>2]=u,X2[32+k>>2]=20272,X2[248+k>>2]=f,X2[100+k>>2]=1065353216,o=X2[e+4>>2],u=X2[e>>2],X2[68+k>>2]=u,X2[72+k>>2]=o,f=X2[r+4>>2],X2[84+k>>2]=X2[r>>2],X2[88+k>>2]=f,X2[244+k>>2]=A,X2[(f=156+k|0)>>2]=t,X2[f+4>>2]=n,X2[(f=148+k|0)>>2]=u,X2[f+4>>2]=o,X2[(f=168+k|0)>>2]=0,X2[f+4>>2]=0,X2[(f=176+k|0)>>2]=0,X2[f+4>>2]=0,X2[184+k>>2]=1065353216,X2[(f=188+k|0)>>2]=0,X2[f+4>>2]=0,X2[(f=196+k|0)>>2]=0,X2[f+4>>2]=0,X2[(f=204+k|0)>>2]=1065353216,X2[f+4>>2]=0,f=X2[r+4>>2],X2[(u=212+k|0)>>2]=X2[r>>2],X2[4+u>>2]=f,f=X2[4+a>>2],X2[(u=220+k|0)>>2]=X2[a>>2],X2[4+u>>2]=f,X2[164+k>>2]=1065353216,t=P2(U2[r>>2]-U2[e>>2]),n=P2(U2[r+4>>2]-U2[e+4>>2]),o=P2(U2[a>>2]-U2[c>>2]),u=P2(P2(1)/P2(O2(P2(P2(P2(t*t)+P2(n*n))+P2(o*o))))),c=(a=P2(o*u))==P2(0)?P2(0xde0b6b000000000):P2(P2(1)/a),U2[44+k>>2]=c,o=(n=P2(n*u))==P2(0)?P2(0xde0b6b000000000):P2(P2(1)/n),U2[40+k>>2]=o,X2[60+k>>2]=c>2]=o>2]=P2(P2(o*P2(U2[84+k>>2]-U2[68+k>>2]))+P2(n*P2(U2[88+k>>2]-U2[72+k>>2])))+P2(a*P2(U2[i>>2]-U2[b>>2])),o=o==P2(0)?P2(0xde0b6b000000000):P2(P2(1)/o),U2[36+k>>2]=o,X2[52+k>>2]=o>2],X2[(A=24+k|0)>>2]=0,X2[A+4>>2]=0,X2[16+k>>2]=0,X2[20+k>>2]=0,X2[(A=8+k|0)>>2]=0,X2[A+4>>2]=0,X2[k>>2]=0,X2[4+k>>2]=0,N2[X2[X2[f>>2]+24>>2]](f,e,r,32+k|0,16+k|0,k),K2=256+k|0},x4,y4,function(A){var e,r,f,i;N2[X2[X2[(A|=0)>>2]+8>>2]](A),N2[X2[X2[A>>2]+12>>2]](A),(e=X2[A+24>>2])&&(f=X2[A+68>>2],r=e,f=0|N2[X2[X2[f>>2]+36>>2]](f),i=X2[A+24>>2],e=X2[X2[e>>2]+32>>2],N2[e](0|r,0|f,0|(A+28|0),0|i))},function(A,e){A|=0,N2[X2[X2[(e|=0)>>2]+32>>2]](e),V4(A,e),N2[X2[X2[e>>2]+36>>2]](e)},e,A,function(A,e){var r,f,i,a;return A|=0,e|=0,P2(0),K2=a=K2-32|0,r=X2[A+216>>2],(f=U2[r+4>>2])!=P2(0)&&(e=X2[e>>2],0|N2[X2[X2[r>>2]+8>>2]](r,X2[e+188>>2])&&(r=X2[A+216>>2],i=X2[e+192>>2],X2[24+a>>2]=-1,X2[28+a>>2]=-1,X2[20+a>>2]=e+4,X2[16+a>>2]=e,X2[12+a>>2]=i,p4(A+68|(X2[8+a>>2]=0),A+132|0,8+a|0,r))),K2=32+a|0,f!=P2(0)|0},A,function(A,e,r,f){A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C,h=0,F=P2(0);K2=C=K2-32|0,t=U2[e+20>>2],B=U2[e+36>>2],v=U2[e+24>>2],w=U2[e+40>>2],o=U2[e+4>>2],d=U2[e+32>>2],k=U2[e+8>>2],u=U2[e>>2],Z=U2[e+16>>2],X2[28+C>>2]=0,a=P2(t-o),n=P2(w-k),i=P2(v-k),s=P2(B-o),c=P2(P2(a*n)-P2(i*s)),E=i,i=P2(d-u),b=P2(Z-u),n=P2(P2(E*i)-P2(b*n)),a=P2(P2(b*s)-P2(a*i)),i=P2(P2(k*a)+P2(P2(u*c)+P2(o*n))),l=U2[A+4>>2],b=U2[A+8>>2],_=U2[A+12>>2],s=P2(P2(P2(P2(c*l)+P2(n*b))+P2(a*_))-i),Q=U2[A+20>>2],g=U2[A+24>>2],G=U2[A+28>>2],i=P2(P2(P2(P2(c*Q)+P2(n*g))+P2(a*G))-i),P2(s*i)>=P2(0)||1&(e=X2[A+36>>2])&&s<=P2(0)||(i=P2(s/P2(s-i)))>2]&&(E=b,b=P2(P2(1)-i),g=P2(P2(g*i)+P2(E*b)),t=P2(t-g),l=P2(P2(Q*i)+P2(l*b)),u=P2(u-l),o=P2(o-g),Z=P2(Z-l),b=P2(P2(G*i)+P2(_*b)),v=P2(v-b),k=P2(k-b),Q=P2(P2(a*a)+P2(P2(c*c)+P2(n*n))),_=P2(Q*P2(-9999999747378752e-20)),P2(P2(a*P2(P2(t*u)-P2(o*Z)))+P2(P2(c*P2(P2(o*v)-P2(k*t)))+P2(n*P2(P2(k*Z)-P2(v*u)))))>=_&&(B=P2(B-g),d=P2(d-l),l=P2(a*P2(P2(B*Z)-P2(t*d))),E=t,t=P2(w-b),_<=P2(l+P2(P2(c*P2(P2(E*t)-P2(v*B)))+P2(n*P2(P2(v*d)-P2(t*Z)))))&&_<=P2(P2(a*P2(P2(o*d)-P2(B*u)))+P2(P2(c*P2(P2(B*k)-P2(t*o)))+P2(n*P2(P2(t*u)-P2(k*d)))))&&(b=a,a=P2(P2(1)/P2(O2(Q))),o=P2(b*a),U2[24+C>>2]=o,n=P2(n*a),U2[20+C>>2]=n,c=P2(c*a),U2[16+C>>2]=c,F=s<=P2(0)&&!(2&e)?(X2[12+C>>2]=0,U2[8+C>>2]=-o,U2[4+C>>2]=-n,U2[C>>2]=-c,P2(N2[X2[X2[(h=A)>>2]+12>>2]](A,C,i,r,f))):P2(N2[X2[X2[(h=A)>>2]+12>>2]](A,16+C|0,i,r,f)),U2[h+40>>2]=F))),K2=32+C|0},function(A,e,r,f,i){var a,n,b,t,o,c,k,u,s,l;return A|=0,e|=0,r=P2(r),f|=0,i|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),X2[36+(K2=l=K2-48|0)>>2]=i,X2[32+l>>2]=f,X2[40+l>>2]=X2[A+52>>2],i=U2[A- -64>>2],f=U2[A+60>>2],b=U2[A+80>>2],t=U2[A+72>>2],o=U2[A+76>>2],c=U2[A+96>>2],k=U2[A+88>>2],u=U2[A+92>>2],s=U2[A+56>>2],a=U2[e+8>>2],n=U2[e>>2],e=U2[e+4>>2],X2[20+l>>2]=0,U2[16+l>>2]=P2(P2(n*k)+P2(e*u))+P2(a*c),U2[12+l>>2]=P2(P2(n*t)+P2(e*o))+P2(a*b),U2[8+l>>2]=P2(P2(s*n)+P2(f*e))+P2(i*a),U2[24+l>>2]=r,X2[l>>2]=X2[A+48>>2],X2[4+l>>2]=32+l,A=X2[A+44>>2],r=P2(N2[X2[X2[A>>2]+12>>2]](A,l,1)),K2=48+l|0,P2(r)},A,function(A,e){var r,f,i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C,h,F,Y;A|=0,e|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2=Y=K2-128|0,k=X2[e+36>>2],e=X2[X2[A+8>>2]+32>>2]+H2(k,80)|0,G=X2[e+64>>2],u=U2[e+32>>2],s=U2[e>>2],l=U2[e+16>>2],B=U2[e+56>>2],v=U2[e+52>>2],d=U2[e+48>>2],Z=U2[e+36>>2],_=U2[e+20>>2],g=U2[e+4>>2],E=U2[e+40>>2],Q=U2[e+24>>2],w=U2[e+8>>2],e=X2[A+12>>2],C=U2[e+52>>2],h=U2[e+56>>2],r=U2[e+24>>2],f=U2[e+20>>2],i=U2[e+40>>2],a=U2[e+36>>2],F=U2[e+48>>2],n=U2[e+8>>2],b=U2[e>>2],t=U2[e+4>>2],o=U2[e+16>>2],c=U2[e+32>>2],X2[124+Y>>2]=0,X2[108+Y>>2]=0,X2[92+Y>>2]=0,U2[104+Y>>2]=P2(P2(w*c)+P2(Q*a))+P2(E*i),U2[100+Y>>2]=P2(P2(g*c)+P2(_*a))+P2(Z*i),U2[88+Y>>2]=P2(P2(w*o)+P2(Q*f))+P2(E*r),U2[84+Y>>2]=P2(P2(g*o)+P2(_*f))+P2(Z*r),U2[120+Y>>2]=h+P2(P2(P2(c*d)+P2(a*v))+P2(i*B)),U2[116+Y>>2]=C+P2(P2(P2(o*d)+P2(f*v))+P2(r*B)),X2[76+Y>>2]=0,U2[72+Y>>2]=P2(P2(b*w)+P2(t*Q))+P2(n*E),U2[68+Y>>2]=P2(P2(b*g)+P2(t*_))+P2(n*Z),U2[64+Y>>2]=P2(P2(s*b)+P2(l*t))+P2(u*n),U2[112+Y>>2]=F+P2(P2(P2(b*d)+P2(t*v))+P2(n*B)),U2[96+Y>>2]=P2(P2(s*c)+P2(l*a))+P2(u*i),U2[80+Y>>2]=P2(P2(s*o)+P2(l*f))+P2(u*r),X2[60+Y>>2]=k,X2[56+Y>>2]=-1,X2[44+Y>>2]=G,X2[40+Y>>2]=0,X2[48+Y>>2]=X2[A+4>>2],X2[52+Y>>2]=Y+64,X2[12+Y>>2]=1065353216,X2[16+Y>>2]=0,X2[24+Y>>2]=0,X2[36+Y>>2]=k,X2[28+Y>>2]=G,X2[8+Y>>2]=20364,e=X2[A+24>>2],X2[32+Y>>2]=e,U2[12+Y>>2]=U2[e+4>>2],X2[24+Y>>2]=X2[e+16>>2],p4(X2[A+16>>2],X2[A+20>>2],40+Y|0,8+Y|0),K2=128+Y|0},A,function(A,e){return A=X2[(A|=0)+24>>2],0|N2[X2[X2[A>>2]+8>>2]](A,e|=0)},function(A,e,r){var f,i,a;return A|=0,e|=0,r|=0,P2(0),K2=a=K2-16|0,f=X2[A+28>>2],X2[4+a>>2]=f,X2[a>>2]=f,(i=X2[e+4>>2])?(X2[i+4>>2]=f,X2[i>>2]=f):X2[e+4>>2]=a,f=X2[A+24>>2],i=P2(N2[X2[X2[f>>2]+12>>2]](f,e,r)),U2[A+4>>2]=U2[X2[A+24>>2]+4>>2],K2=16+a|0,P2(i)},e,A,function(A,e,r,f){var i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G;A|=0,e|=0,r|=0,f|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),X2[(K2=r=K2-96|0)+92>>2]=0,i=U2[e>>2],o=U2[A+60>>2],n=U2[e+4>>2],B=U2[A- -64>>2],b=U2[e+8>>2],v=U2[A+68>>2],d=U2[A+84>>2],u=P2(P2(P2(P2(i*o)+P2(n*B))+P2(b*v))+d),U2[r+88>>2]=u,t=U2[A+44>>2],Z=U2[A+48>>2],_=U2[A+52>>2],g=U2[A+80>>2],a=P2(P2(P2(P2(i*t)+P2(n*Z))+P2(b*_))+g),U2[r+84>>2]=a,c=i,i=U2[A+28>>2],k=n,n=U2[A+32>>2],E=b,b=U2[A+36>>2],s=U2[A+76>>2],G=P2(P2(P2(P2(c*i)+P2(k*n))+P2(E*b))+s),U2[r+80>>2]=G,X2[r+76>>2]=0,X2[r+60>>2]=0,l=U2[e+16>>2],c=U2[e+20>>2],k=U2[e+24>>2],Q=P2(s+P2(P2(P2(i*l)+P2(n*c))+P2(b*k))),U2[r+64>>2]=Q,w=P2(g+P2(P2(P2(t*l)+P2(Z*c))+P2(_*k))),U2[r+68>>2]=w,l=P2(d+P2(P2(P2(o*l)+P2(B*c))+P2(v*k))),U2[r+72>>2]=l,c=i,i=U2[e+32>>2],k=n,n=U2[e+36>>2],E=b,b=U2[e+40>>2],s=P2(s+P2(P2(P2(c*i)+P2(k*n))+P2(E*b))),U2[r+48>>2]=s,t=P2(g+P2(P2(P2(t*i)+P2(Z*n))+P2(_*b))),U2[r+52>>2]=t,i=P2(d+P2(P2(P2(o*i)+P2(B*n))+P2(v*b))),U2[r+56>>2]=i,X2[r+44>>2]=0,n=P2(P2(P2(u+l)+i)*P2(.3333333432674408)),U2[r+40>>2]=n,B=P2(P2(P2(a+w)+t)*P2(.3333333432674408)),U2[r+36>>2]=B,b=P2(P2(P2(G+Q)+s)*P2(.3333333432674408)),U2[r+32>>2]=b,e=X2[A+8>>2],16384&N2[X2[X2[e>>2]+56>>2]](e)&&(o=U2[r+80>>2],X2[r+24>>2]=0,X2[r+28>>2]=0,X2[r+16>>2]=1065353216,X2[r+20>>2]=1065353216,e=X2[A+8>>2],X2[r+12>>2]=0,v=P2(Q-o),d=P2(t-a),t=P2(w-a),o=P2(s-o),a=P2(P2(v*d)-P2(t*o)),k=P2((c=a)*a),a=P2(i-u),i=P2(l-u),u=P2(P2(t*a)-P2(i*d)),a=P2(P2(i*o)-P2(v*a)),i=P2(P2(1)/P2(O2(P2(k+P2(P2(u*u)+P2(a*a)))))),U2[r+8>>2]=P2(c*i)+n,U2[r+4>>2]=P2(a*i)+B,U2[r>>2]=b+P2(u*i),N2[X2[X2[e>>2]+16>>2]](e,r+32|0,r,r+16|0)),f=X2[A+8>>2],N2[X2[X2[f>>2]+16>>2]](f,r+80|0,r- -64|0,e=A+12|0),f=X2[A+8>>2],N2[X2[X2[f>>2]+16>>2]](f,r- -64|0,r+48|0,e),A=X2[A+8>>2],N2[X2[X2[A>>2]+16>>2]](A,r+48|0,r+80|0,e),K2=r+96|0},N1,function(A){return(A|=0)-4|0},function(A){n((A|=0)-4|0)},function(A,e,r,f){N2[X2[X2[(A=(A|=0)-4|0)>>2]+8>>2]](A,e|=0,r|=0,f|=0)},A,S4,A,S4,A,function(A,e){var r,f,i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C;A|=0,e|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2=C=K2-128|0,k=X2[e+36>>2],e=X2[X2[A+24>>2]+32>>2]+H2(k,80)|0,E=X2[e+64>>2],u=U2[e+32>>2],s=U2[e>>2],l=U2[e+16>>2],B=U2[e+56>>2],v=U2[e+52>>2],d=U2[e+48>>2],Z=U2[e+36>>2],_=U2[e+20>>2],g=U2[e+4>>2],r=U2[e+40>>2],f=U2[e+24>>2],i=U2[e+8>>2],X2[124+C>>2]=0,X2[108+C>>2]=0,X2[92+C>>2]=0,e=X2[A+28>>2],a=U2[e+32>>2],n=U2[e+36>>2],b=U2[e+40>>2],U2[104+C>>2]=P2(P2(i*a)+P2(f*n))+P2(r*b),U2[100+C>>2]=P2(P2(g*a)+P2(_*n))+P2(Z*b),t=U2[e+16>>2],o=U2[e+20>>2],c=U2[e+24>>2],U2[88+C>>2]=P2(P2(i*t)+P2(f*o))+P2(r*c),U2[84+C>>2]=P2(P2(g*t)+P2(_*o))+P2(Z*c),U2[120+C>>2]=P2(P2(P2(d*a)+P2(v*n))+P2(B*b))+U2[e+56>>2],U2[116+C>>2]=P2(P2(P2(d*t)+P2(v*o))+P2(B*c))+U2[e+52>>2],X2[76+C>>2]=0,Q=i,i=U2[e>>2],w=f,f=U2[e+4>>2],G=r,r=U2[e+8>>2],U2[72+C>>2]=P2(P2(Q*i)+P2(w*f))+P2(G*r),U2[68+C>>2]=P2(P2(g*i)+P2(_*f))+P2(Z*r),U2[64+C>>2]=P2(P2(s*i)+P2(l*f))+P2(u*r),U2[112+C>>2]=P2(P2(P2(d*i)+P2(v*f))+P2(B*r))+U2[e+48>>2],U2[96+C>>2]=P2(P2(s*a)+P2(l*n))+P2(u*b),U2[80+C>>2]=P2(P2(s*t)+P2(l*o))+P2(u*c),X2[36+C>>2]=1065353216,X2[40+C>>2]=1,X2[44+C>>2]=-1,X2[56+C>>2]=k,X2[48+C>>2]=E,X2[32+C>>2]=21328,e=X2[A+32>>2],X2[52+C>>2]=e,U2[36+C>>2]=U2[e+4>>2],X2[28+C>>2]=k,X2[24+C>>2]=-1,X2[12+C>>2]=E,e=X2[A+4>>2],X2[8+C>>2]=e,X2[16+C>>2]=X2[e+8>>2],X2[20+C>>2]=C+64,M4(X2[A+8>>2],X2[A+12>>2],X2[A+16>>2],8+C|0,32+C|0,U2[A+20>>2]),K2=128+C|0},e,A,function(A,e){return A=X2[(A|=0)+20>>2],0|N2[X2[X2[A>>2]+8>>2]](A,e|=0)},function(A,e,r){var f,i;return A|=0,e|=0,r|=0,P2(0),X2[(K2=i=K2-16|0)>>2]=-1,X2[4+i>>2]=X2[A+24>>2],X2[8+i>>2]=X2[A+16>>2],X2[e+4>>2]||(X2[e+4>>2]=i),f=X2[A+20>>2],f=P2(N2[X2[X2[f>>2]+12>>2]](f,e,r)),U2[A+4>>2]=U2[X2[A+20>>2]+4>>2],K2=16+i|0,P2(f)},A,function(A,e){var r,f,i,a,n,b;return A|=0,e|=0,P2(0),P2(0),K2=b=K2-32|0,r=X2[A+184>>2],(f=U2[r+4>>2])!=P2(0)&&(e=X2[e>>2],0|N2[X2[X2[r>>2]+8>>2]](r,X2[e+188>>2])&&(i=U2[A+188>>2],r=X2[A+184>>2],a=X2[A+192>>2],n=X2[e+192>>2],X2[24+b>>2]=-1,X2[28+b>>2]=-1,X2[20+b>>2]=e+4,X2[16+b>>2]=e,X2[12+b>>2]=n,M4(a,A+36|(X2[8+b>>2]=0),A+100|0,8+b|0,r,i))),K2=32+b|0,f!=P2(0)|0},function(A){var e;return X2[(A|=0)>>2]=22256,(e=X2[A+56>>2])&&J2[A+60|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+56>>2]=0,S2[A+60|0]=1,X2[(e=A+48|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+36>>2])&&J2[A+40|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+36>>2]=0,S2[A+40|0]=1,X2[(e=A+28|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+16>>2]=0,S2[A+20|0]=1,X2[(e=A+8|0)>>2]=0,(X2[4+e>>2]=0)|A},function(A){var e;X2[(A|=0)>>2]=22256,(e=X2[A+56>>2])&&J2[A+60|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+56>>2]=0,S2[A+60|0]=1,X2[(e=A+48|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+36>>2])&&J2[A+40|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+36>>2]=0,S2[A+40|0]=1,X2[(e=A+28|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),n(A)},function(A,e,r){A|=0,r|=0;var f=0,i=0,a=0,n=0,b=0,t=0,o=0;if(1<=(0|(n=X2[(e|=0)+8>>2])))for(r=X2[e+16>>2];;)if(f=X2[r>>2],3&J2[f+204|0]||(a=(X2[f+208>>2]=a)+1|0),X2[f+268>>2]=1065353216,X2[f+212>>2]=-1,r=r+4|0,!(n=n-1|0))break;if((0|(f=X2[A+8>>2]))<(0|a)){if(X2[A+12>>2]<(0|a)){if(n=0,a&&(X2[6258]=X2[6258]+1,(r=L2(19+(a<<3)|0))&&(X2[(n=r+19&-16)-4>>2]=r)),1<=(0|f))for(r=f;;)if(o=X2[A+16>>2]+i|0,b=X2[o+4>>2],X2[(t=i+n|0)>>2]=X2[o>>2],X2[t+4>>2]=b,i=i+8|0,!(r=r-1|0))break;(r=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+16>>2]=n,X2[A+12>>2]=a,S2[A+20|0]=1}for(i=f<<3,r=a-f|0;;)if(f=X2[A+16>>2]+i|0,X2[f>>2]=0,i=i+8|(X2[f+4>>2]=0),!(r=r-1|0))break}if(1<=(0|(X2[A+8>>2]=a)))for(i=X2[A+16>>2],r=0;;)if(X2[i>>2]=r,X2[i+4>>2]=1,i=i+8|0,(0|a)==(0|(r=r+1|0)))break;if(e=X2[e+68>>2],e=0|N2[X2[X2[e>>2]+36>>2]](e),(t=0|N2[X2[X2[e>>2]+36>>2]](e))&&(o=0|N2[X2[X2[e>>2]+20>>2]](e),!((0|t)<1)))for(r=0;;){if((e=X2[X2[(f=(r<<4)+o|0)>>2]>>2])&&(f=X2[X2[f+4>>2]>>2])&&!(7&X2[e+204>>2]||7&J2[f+204|0])){if(a=X2[f+208>>2],f=X2[A+16>>2],n=X2[e+208>>2],(0|(e=X2[(i=f+(n<<3)|0)>>2]))!=(0|n)&&(X2[i>>2]=X2[(e=f+(e<<3)|0)>>2],n=X2[e>>2],(0|(i=X2[(e=f+(n<<3)|0)>>2]))!=(0|n)))for(;;)if(X2[(b=e)>>2]=X2[(e=f+(i<<3)|0)>>2],n=X2[e>>2],(0|(i=X2[(e=f+(n<<3)|0)>>2]))==(0|n))break;if((0|(i=X2[(e=f+(a<<3)|0)>>2]))!=(0|a)&&(X2[(b=e)>>2]=X2[(e=f+(i<<3)|0)>>2],a=X2[e>>2],(0|(i=X2[(e=f+(a<<3)|0)>>2]))!=(0|a)))for(;;)if(X2[(b=e)>>2]=X2[(e=f+(i<<3)|0)>>2],a=X2[e>>2],(0|(i=X2[(e=f+(a<<3)|0)>>2]))==(0|a))break;(0|a)!=(0|n)&&(X2[(e=f+(n<<3)|0)>>2]=a,X2[(f=f+(a<<3)|0)+4>>2]=X2[f+4>>2]+X2[e+4>>2])}if((0|t)==(0|(r=r+1|0)))break}},function(A,e){A|=0;var r,f,i,a,n,b=0,t=0,o=0,c=0;if(1<=(0|(n=X2[(e|=0)+8>>2])))for(a=X2[e+16>>2];;){if(r=X2[(t<<2)+a>>2],3&J2[r+204|0])X2[r+208>>2]=-1,X2[r+212>>2]=-2;else{if(f=X2[A+16>>2],(0|(e=c))!=(0|(b=X2[(i=f+(e<<3)|0)>>2]))&&(X2[i>>2]=X2[(e=(b<<3)+f|0)>>2],(0|(e=X2[e>>2]))!=(0|(b=X2[(o=(e<<3)+f|0)>>2]))))for(;;)if(X2[o>>2]=X2[(e=(b<<3)+f|0)>>2],(0|(e=X2[e>>2]))==(0|(b=X2[(o=(e<<3)+f|0)>>2])))break;X2[r+208>>2]=e,X2[r+212>>2]=-1,X2[4+i>>2]=t,c=c+1|0}if((0|n)==(0|(t=t+1|0)))break}},H4,u0,Z4,function(A,e,r,f,i){P2(i)},M1,P0,J4,j4,function(A){A=j4(A|=0),X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},function(A){A|=0;var e,r,f,i,a=0,n=0;if(I4(A),0|N2[X2[X2[A>>2]+20>>2]](A)&&(a=0|N2[X2[X2[A>>2]+20>>2]](A),6144&N2[X2[X2[a>>2]+56>>2]](a)&&!((0|(a=0|N2[X2[X2[A>>2]+104>>2]](A)))<1)))for(a=a+1|0;;)if(i=0|N2[X2[X2[(f=A)>>2]+108>>2]](A,a-2|0),r=X2[X2[A>>2]+172>>2],N2[r](0|f,0|i),!(1<(0|(a=a-1|0))))break;if(0|N2[X2[X2[A>>2]+20>>2]](A)&&(a=0|N2[X2[X2[A>>2]+20>>2]](A),16387&N2[X2[X2[a>>2]+56>>2]](a)&&0|N2[X2[X2[A>>2]+20>>2]](A)&&(a=0|N2[X2[X2[A>>2]+20>>2]](A),0|N2[X2[X2[a>>2]+56>>2]](a)&&!(X2[A+296>>2]<1))))for(a=0;;)if(e=X2[X2[A+304>>2]+a>>2],N2[X2[X2[e>>2]+12>>2]](e,X2[A+72>>2]),a=a+4|0,!((0|(n=n+1|0))>2]))break;0|N2[X2[X2[A>>2]+20>>2]](A)&&(A=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[A>>2]+104>>2]](A))},function(A,e,r,f){x4(A|=0,e|=0,r|=0,f|=0)},function(A,e){A|=0,(e|=0)&&2&X2[e+252>>2]?N2[X2[X2[A>>2]+92>>2]](A,e):y4(A,e)},function(A,e){A|=0;var r,f,i=0,a=0,n=0,b=0,t=0,o=0,c=0,k=0;if(N2[X2[X2[(e|=0)>>2]+32>>2]](e),n=0|N2[X2[X2[e>>2]+16>>2]](e,104,1),i=v2(X2[n+8>>2],0,104),U2[i+88>>2]=U2[A+264>>2],U2[i+92>>2]=U2[A+268>>2],U2[i+96>>2]=U2[A+272>>2],U2[i+100>>2]=U2[A+276>>2],r=X2[(a=A+124|0)+4>>2],X2[i+28>>2]=X2[a>>2],X2[i+32>>2]=r,r=X2[(a=A+104|0)+4>>2],X2[i+12>>2]=X2[a>>2],X2[i+16>>2]=r,r=X2[(a=A+116|0)+4>>2],X2[i+20>>2]=X2[a>>2],X2[i+24>>2]=r,r=X2[(a=A+96|0)+4>>2],X2[i+4>>2]=X2[a>>2],X2[i+8>>2]=r,U2[i>>2]=U2[A+92>>2],U2[i+36>>2]=U2[A+132>>2],U2[i+40>>2]=U2[A+148>>2],U2[i+44>>2]=U2[A+152>>2],U2[i+48>>2]=U2[A+156>>2],U2[i+52>>2]=U2[A+160>>2],U2[i+56>>2]=U2[A+176>>2],U2[i+60>>2]=U2[A+180>>2],X2[i+64>>2]=X2[A+112>>2],X2[i+68>>2]=X2[A+164>>2],X2[i+72>>2]=X2[A+168>>2],X2[i+76>>2]=X2[A+172>>2],a=X2[A+144>>2],X2[i+84>>2]=0,X2[i+80>>2]=a,N2[X2[X2[e>>2]+20>>2]](e,n,22857,1145853764,i),V4(A,e),1<=(0|(i=X2[A+8>>2])))for(a=0;;)if(n=X2[X2[A+16>>2]+b>>2],2&J2[n+252|0]&&(o=e,c=0|N2[X2[X2[n>>2]+16>>2]](n),t=X2[X2[e>>2]+16>>2],i=0|N2[t](0|o,0|c,0|(k=1)),r=0|N2[X2[X2[n>>2]+20>>2]](n,X2[i+8>>2],e),N2[X2[X2[e>>2]+20>>2]](e,i,r,1497645650,n),i=X2[A+8>>2]),b=b+4|0,!((0|(a=a+1|0))<(0|i)))break;if(1<=X2[A+228>>2])for(i=b=0;;)if(n=X2[X2[A+236>>2]+b>>2],k=e,c=0|N2[X2[X2[n>>2]+36>>2]](n),t=X2[X2[e>>2]+16>>2],a=0|N2[t](0|k,0|c,0|(o=1)),o=e,c=a,k=0|N2[X2[X2[n>>2]+40>>2]](n,X2[a+8>>2],e),f=n,t=X2[X2[e>>2]+20>>2],N2[t](0|o,0|c,0|k,1397641027,0|f),b=b+4|0,!((0|(i=i+1|0))>2]))break;N2[X2[X2[e>>2]+36>>2]](e)},function(A,e,r,f){A|=0,e=P2(e),r|=0,f=P2(f);var i,a=0,n=0;if(P2(0),r?(U2[A+284>>2]=f,e=P2(U2[A+280>>2]+e),f<=(U2[A+280>>2]=e)&&(n=A,e=P2((i=e)/f),a=P2(j2(e))>2]=i-P2(P2(0|a)*f))):(X2[A+284>>2]=0,U2[A+280>>2]=J2[A+316|0]?P2(0):e,r=a=!(P2(j2(f=e))>2]+20>>2]](A)&&(n=0|N2[X2[X2[A>>2]+20>>2]](A),i=N2[X2[X2[n>>2]+56>>2]](n)>>>4&1,S2[26508]=i),a){if(N2[X2[X2[A>>2]+168>>2]](A,P2(f*P2(0|(r=(0|r)<(0|a)?r:a)))),N2[X2[X2[A>>2]+176>>2]](A),!((0|r)<1))for(;;)if(N2[X2[X2[A>>2]+160>>2]](A,f),N2[X2[X2[A>>2]+80>>2]](A),!(r=r-1|0))break}else N2[X2[X2[A>>2]+80>>2]](A);return N2[X2[X2[A>>2]+120>>2]](A),0|a},function(A,e,r){e|=0,r|=0;var f,i=0,a=0,n=0,b=0,a=X2[(A|=0)+228>>2];if((0|a)==X2[A+232>>2]&&!((0|(f=a?a<<1:1))<=(0|a))){if(f&&(X2[6258]=X2[6258]+1,(i=L2(19+(f<<2)|0))&&(X2[(n=i+19&-16)-4>>2]=i)),1<=(0|a))for(i=a;;)if(X2[b+n>>2]=X2[X2[A+236>>2]+b>>2],b=b+4|0,!(i=i-1|0))break;(i=X2[A+236>>2])&&J2[A+240|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2]),a=X2[A+228>>2]),X2[A+236>>2]=n,X2[A+232>>2]=f,S2[A+240|0]=1}X2[A+228>>2]=a+1,X2[X2[A+236>>2]+(a<<2)>>2]=e,r&&(G4(X2[e+28>>2],e),G4(X2[e+32>>2],e))},function(A,e){e|=0;var r,f=0,i=0,a=0,f=X2[(A|=0)+228>>2];A:if(!((0|f)<1)){for(i=r=X2[A+236>>2];;){if(X2[i>>2]==(0|e))break;if(i=i+4|0,(0|f)==(0|(a=a+1|0)))break A}(0|f)<=(0|a)||(X2[(a=i)>>2]=X2[(f=(i=f-1|0)<<2)+r>>2],X2[A+228>>2]=i,X2[f+X2[A+236>>2]>>2]=e)}C4(X2[e+28>>2],e),C4(X2[e+32>>2],e)},function(A,e){e|=0;var r,f=0,i=0,a=0,n=0,i=X2[(A|=0)+296>>2];if((0|i)==X2[A+300>>2]&&!((0|(r=i?i<<1:1))<=(0|i))){if(r&&(X2[6258]=X2[6258]+1,(f=L2(19+(r<<2)|0))&&(X2[(a=f+19&-16)-4>>2]=f)),1<=(0|i))for(f=i;;)if(X2[n+a>>2]=X2[X2[A+304>>2]+n>>2],n=n+4|0,!(f=f-1|0))break;(f=X2[A+304>>2])&&J2[A+308|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2]),i=X2[A+296>>2]),X2[A+304>>2]=a,X2[A+300>>2]=r,S2[A+308|0]=1}X2[A+296>>2]=i+1,X2[X2[A+304>>2]+(i<<2)>>2]=e},function(A,e){A|=0,e|=0;var r,f=0,i=0,a=0;A:if(!((0|(f=X2[A+296>>2]))<1)){for(i=r=X2[A+304>>2];;){if(X2[i>>2]==(0|e))break;if(i=i+4|0,(0|f)==(0|(a=a+1|0)))break A}(0|f)<=(0|a)||(X2[(a=i)>>2]=X2[(f=(i=f-1|0)<<2)+r>>2],X2[A+296>>2]=i,X2[f+X2[A+304>>2]>>2]=e)}},function(A,e){A|=0,e|=0;var r,f,i,a,n,b,t=0,o=0,c=(P2(0),0),k=0,t=(P2(0),P2(0),P2(0),X2[e+4>>2]);if(X2[A+264>>2]=X2[e>>2],X2[A+268>>2]=t,i=X2[(o=f=e+8|0)+4>>2],X2[(t=A+272|0)>>2]=X2[o>>2],X2[t+4>>2]=i,1<=(0|(o=X2[A+248>>2])))for(;;){A:{e:switch(t=X2[X2[A+256>>2]+c>>2],X2[t+220>>2]-2|0){case 0:case 3:break A;default:break e;}1&S2[t+564|0]||((r=U2[t+404>>2])!=P2(0)&&(a=U2[e>>2],n=U2[e+4>>2],b=U2[e+8>>2],X2[t+436>>2]=0,r=P2(P2(1)/r),U2[t+432>>2]=b*r,U2[t+428>>2]=r*n,U2[t+424>>2]=r*a),o=X2[e+4>>2],X2[t+440>>2]=X2[e>>2],X2[t+444>>2]=o,o=X2[4+f>>2],X2[(t=t+448|0)>>2]=X2[f>>2],X2[t+4>>2]=o,o=X2[A+248>>2])}if(c=c+4|0,!((0|(k=k+1|0))<(0|o)))break}},function(A,e){var r=X2[(e|=0)+268>>2];X2[(A|=0)>>2]=X2[e+264>>2],X2[A+4>>2]=r,r=X2[(e=e+272|0)+4>>2],X2[(A=A+8|0)>>2]=X2[e>>2],X2[A+4>>2]=r},function(A){A|=0;var e,r=0,f=0,i=P2(0),a=0,n=0;if(P2(0),P2(0),P2(0),K2=e=K2+-64|0,J2[A+290|0]){if(!((0|(f=X2[A+8>>2]))<1))for(;;)if((r=X2[X2[A+16>>2]+a>>2])&&2&X2[r+252>>2]&&(!X2[r+540>>2]||3&J2[r+204|0]||(N4(f=r+68|0,U2[r+132>>2],U2[r+136>>2],U2[r+140>>2],r+148|0,i=J2[A+316|0]&&(i=U2[A+284>>2])!=P2(0)?P2(U2[A+280>>2]-i):P2(U2[A+280>>2]*U2[r+268>>2]),e),r=X2[r+540>>2],N2[X2[X2[r>>2]+12>>2]](r,e),f=X2[A+8>>2])),a=a+4|0,!((0|(n=n+1|0))<(0|f)))break}else if(!((0|(f=X2[A+248>>2]))<1))for(;;){A:{e:switch(r=X2[X2[A+256>>2]+n>>2],X2[r+220>>2]-2|0){case 0:case 3:break A;default:break e;}!X2[r+540>>2]||3&J2[r+204|0]||(N4(f=r+68|0,U2[r+132>>2],U2[r+136>>2],U2[r+140>>2],r+148|0,i=J2[A+316|0]&&(i=U2[A+284>>2])!=P2(0)?P2(U2[A+280>>2]-i):P2(U2[A+280>>2]*U2[r+268>>2]),e),r=X2[r+540>>2],N2[X2[X2[r>>2]+12>>2]](r,e),f=X2[A+248>>2])}if(n=n+4|0,!((0|(a=a+1|0))<(0|f)))break}K2=e+64|0},function(A,e){A|=0,e|=0;var r,f,i,a,n,b,t=0,o=0,c=0,k=(P2(0),0),u=0,s=0;if(P2(0),P2(0),P2(0),P2(0),(k=3&(b=X2[e+204>>2]))||1&S2[e+564|0]||((f=U2[e+404>>2])!=P2(0)&&(i=U2[A+268>>2],a=U2[A+272>>2],r=U2[A+264>>2],X2[e+436>>2]=0,n=r,r=P2(P2(1)/f),U2[e+424>>2]=n*r,U2[e+432>>2]=r*a,U2[e+428>>2]=r*i),o=X2[(t=A+264|0)+4>>2],X2[e+440>>2]=X2[t>>2],X2[e+444>>2]=o,o=X2[(t=t+8|0)+4>>2],X2[(c=e+448|0)>>2]=X2[t>>2],X2[c+4>>2]=o),X2[e+192>>2]){if(1&b)4!=(-2&X2[e+220>>2])&&(X2[e+220>>2]=2);else{if((0|(t=X2[A+248>>2]))==X2[A+252>>2]&&!((0|(c=t?t<<1:1))<=(0|t))){if(c&&(X2[6258]=X2[6258]+1,(o=L2(19+(c<<2)|0))&&(X2[(u=o+19&-16)-4>>2]=o)),1<=(0|t))for(o=t;;)if(X2[s+u>>2]=X2[X2[A+256>>2]+s>>2],s=s+4|0,!(o=o-1|0))break;(o=X2[A+256>>2])&&J2[A+260|0]&&(X2[6259]=X2[6259]+1,q2(X2[o-4>>2]),k=3&X2[e+204>>2],t=X2[A+248>>2]),X2[A+256>>2]=u,X2[A+252>>2]=c,S2[A+260|0]=1}X2[A+248>>2]=t+1,X2[X2[A+256>>2]+(t<<2)>>2]=e}N2[X2[X2[A>>2]+36>>2]](A,e,k?2:1,k?-3:-1)}},function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a,n,b,t,o,c=0,k=0,u=0,s=(P2(0),0),l=0;if(P2(0),P2(0),P2(0),P2(0),3&(o=X2[e+204>>2])||1&S2[e+564|0]||((a=U2[e+404>>2])!=P2(0)&&(n=U2[A+268>>2],b=U2[A+272>>2],i=U2[A+264>>2],X2[e+436>>2]=0,t=i,i=P2(P2(1)/a),U2[e+424>>2]=t*i,U2[e+432>>2]=i*b,U2[e+428>>2]=i*n),k=X2[(c=A+264|0)+4>>2],X2[e+440>>2]=X2[c>>2],X2[e+444>>2]=k,k=X2[(c=c+8|0)+4>>2],X2[(u=e+448|0)>>2]=X2[c>>2],X2[u+4>>2]=k),X2[e+192>>2]){if(1&o)4!=(-2&X2[e+220>>2])&&(X2[e+220>>2]=2);else{if((0|(c=X2[A+248>>2]))==X2[A+252>>2]&&!((0|(u=c?c<<1:1))<=(0|c))){if(u&&(X2[6258]=X2[6258]+1,(k=L2(19+(u<<2)|0))&&(X2[(s=k+19&-16)-4>>2]=k)),1<=(0|c))for(k=c;;)if(X2[l+s>>2]=X2[X2[A+256>>2]+l>>2],l=l+4|0,!(k=k-1|0))break;(k=X2[A+256>>2])&&J2[A+260|0]&&(X2[6259]=X2[6259]+1,q2(X2[k-4>>2]),c=X2[A+248>>2]),X2[A+256>>2]=s,X2[A+252>>2]=u,S2[A+260|0]=1}X2[A+248>>2]=c+1,X2[X2[A+256>>2]+(c<<2)>>2]=e}N2[X2[X2[A>>2]+36>>2]](A,e,r,f)}},function(A,e){e|=0;var r,f=0,i=0,a=0,f=X2[(A|=0)+248>>2];A:if(!((0|f)<1)){for(i=r=X2[A+256>>2];;){if(X2[i>>2]==(0|e))break;if(i=i+4|0,(0|f)==(0|(a=a+1|0)))break A}(0|f)<=(0|a)||(X2[(a=i)>>2]=X2[(f=(i=f-1|0)<<2)+r>>2],X2[A+248>>2]=i,X2[f+X2[A+256>>2]>>2]=e)}y4(A,e)},function(A,e){var r;e|=0,J2[(A|=0)+289|0]&&(r=X2[A+216>>2])&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+216>>2]=e,S2[A+289|0]=0,X2[X2[A+212>>2]+8>>2]=e},function(A){return X2[(A|=0)+216>>2]},function(A){return X2[(A|=0)+228>>2]},z4,z4,X1,function(A){var e,r,f=0,i=0;if(1<=X2[(A|=0)+248>>2])for(;;)if(r=X2[X2[A+256>>2]+f>>2],X2[(e=r)+472>>2]=0,X2[e+476>>2]=0,X2[(e=e+496|0)>>2]=0,X2[4+e>>2]=0,X2[(e=r+488|0)>>2]=0,X2[4+e>>2]=0,X2[(r=r+480|0)>>2]=0,f=f+4|(X2[4+r>>2]=0),!((0|(i=i+1|0))>2]))break},R1,O4,R1,O4,function(A,e){A|=0,e=P2(e);var r,f,i,a,n,b,t=P2(0),o=P2(0),c=P2(0),k=P2(0),u=0,s=P2(0),l=P2(0),B=P2(0),v=(P2(0),0),d=(P2(0),0);if(1<=(0|(u=X2[A+248>>2])))for(;;)if(r=X2[X2[A+256>>2]+v>>2],3&J2[r+204|0]||(k=U2[(u=r+372|0)>>2],i=U2[r+504>>2],o=k0(P2(P2(1)-i),e),s=P2(k*o),U2[u>>2]=s,k=P2(o*U2[(a=r+376|0)>>2]),U2[a>>2]=k,o=P2(o*U2[(n=r+380|0)>>2]),U2[n>>2]=o,t=U2[r+388>>2],b=U2[r+508>>2],c=k0(P2(P2(1)-b),e),l=P2(t*c),U2[r+388>>2]=l,B=P2(c*U2[(f=r+392|0)>>2]),U2[f>>2]=B,c=P2(c*U2[(f=r+396|0)>>2]),U2[f>>2]=c,f=r+388|0,J2[r+512|0]&&(U2[r+524>>2]>P2(P2(P2(l*l)+P2(B*B))+P2(c*c))&&U2[r+520>>2]>P2(P2(P2(s*s)+P2(k*k))+P2(o*o))&&(t=U2[r+516>>2],c=P2(c*t),U2[r+396>>2]=c,B=P2(B*t),U2[r+392>>2]=B,l=P2(l*t),U2[r+388>>2]=l,o=P2(o*t),U2[n>>2]=o,k=P2(k*t),U2[a>>2]=k,s=P2(s*t),U2[r+372>>2]=s),(t=P2(O2(P2(P2(P2(s*s)+P2(k*k))+P2(o*o)))))P2(.004999999888241291)?(t=P2(P2(1)/t),o=P2(o-P2(P2(o*t)*P2(.004999999888241291))),U2[n>>2]=o,k=P2(k-P2(P2(k*t)*P2(.004999999888241291))),U2[a>>2]=k,s=P2(s-P2(P2(s*t)*P2(.004999999888241291))),U2[r+372>>2]=s):(X2[u>>2]=0,X2[u+4>>2]=0,X2[(u=u+8|0)>>2]=0,X2[u+4>>2]=0,o=P2(0),k=P2(0),s=P2(0))),(t=P2(O2(P2(P2(P2(l*l)+P2(B*B))+P2(c*c)))))P2(.004999999888241291)?(i=c,c=P2(P2(1)/t),U2[r+396>>2]=i-P2(P2(i*c)*P2(.004999999888241291)),U2[r+392>>2]=B-P2(P2(B*c)*P2(.004999999888241291)),U2[r+388>>2]=l-P2(P2(l*c)*P2(.004999999888241291))):(X2[f>>2]=0,X2[4+f>>2]=0,X2[(u=8+f|0)>>2]=0,X2[u+4>>2]=0))),N4(r+4|0,s,k,o,f,e,r+68|0),u=X2[A+248>>2]),v=v+4|0,!((0|(d=d+1|0))<(0|u)))break},function(A,e){A|=0,e=P2(e);var r,f,i,a,n,b,t,o,c,k,u,s,l=0,B=0,v=0,d=P2(0),Z=0,_=0,g=P2(0),E=0,Q=0,w=P2(0);if(K2=s=K2-304|0,1<=(0|(E=X2[A+248>>2])))for(v=X2[A+256>>2],i=56+s|0,a=40+s|0,n=24+s|0,Q=104+s|0,b=168+s|0,t=152+s|0,Z=288+s|0;;){B=X2[v>>2],X2[B+268>>2]=1065353216;A:{e:switch(X2[B+220>>2]-2|0){case 0:case 3:break A;default:break e;}3&J2[B+204|0]||(N4(_=B+4|0,U2[B+372>>2],U2[(c=B+376|0)>>2],U2[(k=B+380|0)>>2],u=B+388|0,e,240+s|0),J2[A+44|0]&&(d=U2[B+276>>2],(d=P2(d*d))!=P2(0)&&(g=P2(U2[288+s>>2]-U2[(l=B+52|0)>>2]),w=P2(g*g),g=P2(U2[292+s>>2]-U2[B+56>>2]),w=P2(w+P2(g*g)),g=P2(U2[296+s>>2]-U2[B+60>>2]),d>2]+4>>2])&&(X2[6799]=X2[6799]+1,r=X2[A+68>>2],r=0|N2[X2[X2[r>>2]+36>>2]](r),f=X2[l+4>>2],X2[t>>2]=X2[l>>2],X2[4+t>>2]=f,o=X2[(l=l+8|0)+4>>2],X2[(f=8+t|0)>>2]=X2[l>>2],X2[4+f>>2]=o,l=X2[Z+4>>2],X2[b>>2]=X2[Z>>2],X2[4+b>>2]=l,o=X2[(l=Z+8|0)+4>>2],X2[(f=8+b|0)>>2]=X2[l>>2],X2[4+f>>2]=o,X2[140+s>>2]=1065353216,X2[136+s>>2]=22792,X2[216+s>>2]=0,X2[232+s>>2]=X2[A+24>>2],X2[228+s>>2]=r,X2[220+s>>2]=B,X2[Q>>2]=0,X2[Q+4>>2]=0,X2[(r=Q+8|0)>>2]=0,X2[4+r>>2]=0,X2[Q+16>>2]=0,X2[84+s>>2]=0,X2[88+s>>2]=0,X2[100+s>>2]=1065353216,X2[92+s>>2]=1065353216,X2[96+s>>2]=1065353216,X2[76+s>>2]=8,X2[80+s>>2]=0,X2[72+s>>2]=14616,X2[128+s>>2]=0,d=U2[B+272>>2],U2[108+s>>2]=d,U2[124+s>>2]=d,U2[224+s>>2]=U2[A+56>>2],r=X2[B+188>>2],X2[144+s>>2]=X2[r+4>>2],X2[148+s>>2]=X2[r+8>>2],f=X2[l+4>>2],X2[(r=8+i|0)>>2]=X2[l>>2],X2[4+r>>2]=f,l=X2[Z+4>>2],X2[i>>2]=X2[Z>>2],X2[4+i>>2]=l,f=X2[4+(r=_+8|0)>>2],X2[(l=16+s|0)>>2]=X2[r>>2],X2[l+4>>2]=f,r=X2[(l=B+20|0)+4>>2],X2[n>>2]=X2[l>>2],X2[4+n>>2]=r,f=X2[4+(r=B+28|0)>>2],X2[(l=8+n|0)>>2]=X2[r>>2],X2[l+4>>2]=f,r=X2[(l=B+36|0)+4>>2],X2[a>>2]=X2[l>>2],X2[4+a>>2]=r,f=X2[4+(r=B+44|0)>>2],X2[(l=8+a|0)>>2]=X2[r>>2],X2[l+4>>2]=f,l=X2[_+4>>2],X2[8+s>>2]=X2[_>>2],X2[12+s>>2]=l,X4(A,72+s|0,_,8+s|0,136+s|0,P2(0)),(d=U2[140+s>>2])>2]=d,N4(_,U2[B+372>>2],U2[c>>2],U2[k>>2],u,P2(d*e),240+s|0),w4(B,240+s|(X2[B+268>>2]=0))):w4(B,240+s|0))}if(v=v+4|0,!(E=E-1|0))break}if(J2[A+291|0]&&!((0|(v=X2[A+324>>2]))<1))for(_=0;;){if(Z=X2[X2[A+332>>2]+(_<<2)>>2],1<=(0|(E=X2[Z+844>>2]))){for(l=X2[Z+840>>2],l=X2[l+252>>2]<<30>>31&l,B=X2[Z+836>>2],B=X2[B+252>>2]<<30>>31&B,v=Z+68|0,Q=0;;)if((e=P2(U2[B+232>>2]*U2[l+232>>2]))>P2(0)&&(d=U2[v+68>>2])!=P2(0)&&(X2[148+s>>2]=0,g=P2(e*P2(d*P2(-U2[v>>2]))),U2[136+s>>2]=g,w=P2(e*P2(d*P2(-U2[v+4>>2]))),U2[140+s>>2]=w,e=P2(e*P2(d*P2(-U2[v+8>>2]))),U2[144+s>>2]=e,X2[252+s>>2]=0,U2[248+s>>2]=U2[v-8>>2]-U2[B+60>>2],U2[244+s>>2]=U2[v-12>>2]-U2[B+56>>2],U2[240+s>>2]=U2[v-16>>2]-U2[B+52>>2],X2[20+s>>2]=0,U2[16+s>>2]=U2[v-24>>2]-U2[l+60>>2],U2[12+s>>2]=U2[v-28>>2]-U2[l+56>>2],U2[8+s>>2]=U2[v-32>>2]-U2[l+52>>2],K4(B,136+s|0,240+s|0),X2[84+s>>2]=0,U2[80+s>>2]=-e,U2[76+s>>2]=-w,U2[72+s>>2]=-g,K4(l,72+s|0,8+s|0),E=X2[Z+844>>2]),v=v+208|0,!((0|(Q=Q+1|0))<(0|E)))break;v=X2[A+324>>2]}if(!((0|(_=_+1|0))<(0|v)))break}K2=304+s|0},function(A){var e=0,r=0,f=0,i=0,a=0,n=0,b=0,t=0,e=X2[(A|=0)+220>>2];if(N2[X2[X2[e>>2]+8>>2]](e,A,X2[A+24>>2]),1<=(0|(b=X2[A+324>>2])))for(t=X2[A+332>>2];;){if(e=X2[t+(n<<2)>>2],(r=X2[e+836>>2])&&(e=X2[e+840>>2])&&!(3&X2[r+204>>2]||3&J2[e+204|0])){if(e=X2[e+208>>2],i=X2[X2[A+220>>2]+16>>2],a=X2[r+208>>2],(0|(r=X2[(f=i+(a<<3)|0)>>2]))!=(0|a)&&(X2[f>>2]=X2[(r=i+(r<<3)|0)>>2],a=X2[r>>2],(0|(r=X2[(f=i+(a<<3)|0)>>2]))!=(0|a)))for(;;)if(X2[f>>2]=X2[(r=i+(r<<3)|0)>>2],a=X2[r>>2],(0|(r=X2[(f=i+(a<<3)|0)>>2]))==(0|a))break;if((0|(f=X2[(r=i+(e<<3)|0)>>2]))!=(0|e)&&(X2[r>>2]=X2[(e=i+(f<<3)|0)>>2],e=X2[e>>2],(0|(r=X2[(f=i+(e<<3)|0)>>2]))!=(0|e)))for(;;)if(X2[f>>2]=X2[(e=i+(r<<3)|0)>>2],e=X2[e>>2],(0|(r=X2[(f=i+(e<<3)|0)>>2]))==(0|e))break;(0|e)!=(0|a)&&(X2[(r=i+(a<<3)|0)>>2]=e,X2[(e=i+(e<<3)|0)+4>>2]=X2[e+4>>2]+X2[r+4>>2])}if((0|b)==(0|(n=n+1|0)))break}if(1<=(0|(b=X2[A+228>>2])))for(t=X2[A+236>>2],n=0;;){if(e=X2[t+(n<<2)>>2],J2[e+20|0]&&(r=X2[e+28>>2],!(3&J2[r+204|0]||(e=X2[e+32>>2],3&J2[e+204|0])))){if(e=X2[e+208>>2],i=X2[X2[A+220>>2]+16>>2],a=X2[r+208>>2],(0|(r=X2[(f=i+(a<<3)|0)>>2]))!=(0|a)&&(X2[f>>2]=X2[(r=i+(r<<3)|0)>>2],a=X2[r>>2],(0|(r=X2[(f=i+(a<<3)|0)>>2]))!=(0|a)))for(;;)if(X2[f>>2]=X2[(r=i+(r<<3)|0)>>2],a=X2[r>>2],(0|(r=X2[(f=i+(a<<3)|0)>>2]))==(0|a))break;if((0|(f=X2[(r=i+(e<<3)|0)>>2]))!=(0|e)&&(X2[r>>2]=X2[(e=i+(f<<3)|0)>>2],e=X2[e>>2],(0|(r=X2[(f=i+(e<<3)|0)>>2]))!=(0|e)))for(;;)if(X2[f>>2]=X2[(e=i+(r<<3)|0)>>2],e=X2[e>>2],(0|(r=X2[(f=i+(e<<3)|0)>>2]))==(0|e))break;(0|e)!=(0|a)&&(X2[(r=i+(a<<3)|0)>>2]=e,X2[(e=i+(e<<3)|0)+4>>2]=X2[e+4>>2]+X2[r+4>>2])}if((0|b)==(0|(n=n+1|0)))break}e=X2[A+220>>2],N2[X2[X2[e>>2]+12>>2]](e,A)},function(A,e){e|=0;var r,f,i,a,n,b,t,o,c,k=0,u=0,s=0,l=0,B=0,v=0,d=0,Z=0,_=0,g=0,E=0,Q=0,w=0;if(K2=c=K2-16|0,(0|(s=X2[(A|=0)+196>>2]))<(0|(B=X2[A+228>>2]))){if((0|B)>X2[A+200>>2]){if(B&&(X2[6258]=X2[6258]+1,(k=L2(19+(B<<2)|0))&&(X2[(l=k+19&-16)-4>>2]=k)),1<=(0|s))for(k=s;;)if(X2[u+l>>2]=X2[X2[A+204>>2]+u>>2],u=u+4|0,!(k=k-1|0))break;(k=X2[A+204>>2])&&J2[A+208|0]&&(X2[6259]=X2[6259]+1,q2(X2[k-4>>2])),X2[A+204>>2]=l,X2[A+200>>2]=B,S2[A+208|0]=1}for(u=s<<2,k=B-s|0;;)if(u=u+4|(X2[X2[A+204>>2]+u>>2]=0),!(k=k-1|0))break}if(X2[A+196>>2]=B,1<=(0|N2[X2[X2[A>>2]+104>>2]](A)))for(k=u=0;;)if(X2[X2[A+204>>2]+u>>2]=X2[X2[A+236>>2]+u>>2],u=u+4|0,k=k+1|0,!((0|N2[X2[X2[A>>2]+104>>2]](A))>(0|k)))break;if(2<=(0|(k=X2[A+196>>2]))&&!function A(e,r,f){var i=0,a=0,n=0,b=0,t=0,o=0,c=0,k=0,u=0,s=0;for(;;){for(u=r,a=X2[e+12>>2],k=X2[a+((r+f|0)/2<<2)>>2],i=f;;){if(c=X2[X2[k+28>>2]+208>>2],t=(0|c)<0){for(n=r-1|0,b=((r<<2)+a|0)-4|0,s=X2[X2[k+32>>2]+208>>2];;)if(n=n+1|0,o=X2[(b=b+4|0)>>2],!((0|(r=(0|(r=X2[X2[o+28>>2]+208>>2]))<=-1?X2[X2[o+32>>2]+208>>2]:r))<(0|s)))break}else for(n=r-1|0,b=((r<<2)+a|0)-4|0;;)if(n=n+1|0,o=X2[(b=b+4|0)>>2],!((0|(r=(0|(r=X2[X2[o+28>>2]+208>>2]))<=-1?X2[X2[o+32>>2]+208>>2]:r))<(0|c)))break;for(t?(r=i+1|0,t=(i<<2)+a|0,c=X2[X2[k+32>>2]+208>>2]):(r=i+1|0,t=(i<<2)+a|0);;)if(a=X2[t>>2],(0|(i=X2[X2[a+28>>2]+208>>2]))<=-1&&(i=X2[X2[a+32>>2]+208>>2]),t=t-4|0,r=r-1|0,!((0|c)<(0|i)))break;if(!((0|(r=(0|r)<(0|n)?(i=r,n):(X2[b>>2]=a,X2[X2[e+12>>2]+(r<<2)>>2]=o,i=r-1|0,n+1|0)))<=(0|i)))break;a=X2[e+12>>2]}if((0|u)<(0|i)&&A(e,u,i),!((0|r)<(0|f)))break}}(A+192|0,0,k-1|0),(k=0)|N2[X2[X2[A>>2]+104>>2]](A)&&(k=X2[A+204>>2]),u=X2[A+196>>2],n=s=X2[A+212>>2],b=0|N2[X2[X2[A>>2]+20>>2]](A),X2[n+20>>2]=b,X2[s+16>>2]=u,X2[s+12>>2]=k,X2[s+4>>2]=e,(0|(k=X2[s+32>>2]))<=-1)for(X2[s+36>>2]<=-1&&((u=X2[s+40>>2])&&J2[s+44|0]&&(X2[6259]=X2[6259]+1,q2(X2[u-4>>2])),X2[s+36>>2]=0,X2[s+40>>2]=0,S2[s+44|0]=1),l=k<<2;;)if(l=l+4|(X2[X2[s+40>>2]+l>>2]=0),!((u=k)>>>0<=(k=k+1|0)>>>0))break;if(((X2[s+32>>2]=0)|(k=X2[s+52>>2]))<=-1)for(X2[s+56>>2]<=-1&&((u=X2[s+60>>2])&&J2[s- -64|0]&&(X2[6259]=X2[6259]+1,q2(X2[u-4>>2])),X2[s+56>>2]=0,X2[s+60>>2]=0,S2[s- -64|0]=1),l=k<<2;;)if(l=l+4|(X2[X2[s+60>>2]+l>>2]=0),!((u=k)>>>0<=(k=k+1|0)>>>0))break;if(((X2[s+52>>2]=0)|(k=X2[s+72>>2]))<=-1)for(X2[s+76>>2]<=-1&&((u=X2[s+80>>2])&&J2[s+84|0]&&(X2[6259]=X2[6259]+1,q2(X2[u-4>>2])),X2[s+76>>2]=0,X2[s+80>>2]=0,S2[s+84|0]=1),l=k<<2;;)if(l=l+4|(X2[X2[s+80>>2]+l>>2]=0),!((u=k)>>>0<=(k=k+1|0)>>>0))break;if(X2[s+72>>2]=0,k=X2[A+216>>2],u=X2[A+24>>2],b=k,t=X2[A+8>>2],o=0|N2[X2[X2[u>>2]+36>>2]](u),n=X2[X2[k>>2]+8>>2],N2[n](0|b,0|t,0|o),i=X2[A+212>>2],Z=X2[A+24>>2],r=X2[A+220>>2],(0|(u=X2[r+28>>2]))<=-1)for(X2[r+32>>2]<=-1&&((k=X2[r+36>>2])&&J2[r+40|0]&&(X2[6259]=X2[6259]+1,q2(X2[k-4>>2])),X2[r+32>>2]=0,X2[r+36>>2]=0,S2[r+40|0]=1),l=u<<2;;)if(l=l+4|(X2[X2[r+36>>2]+l>>2]=0),!((k=u)>>>0<=(u=k+1|0)>>>0))break;if(!(((X2[r+28>>2]=0)|(d=X2[r+8>>2]))<=0)){for(_=r+4|0,s=X2[r+16>>2],B=0;;){if((0|(k=X2[(l=s+((u=B)<<3)|0)>>2]))!=(0|u)&&(X2[l>>2]=X2[(k=s+(k<<3)|0)>>2],(0|(u=X2[k>>2]))!=(0|(v=X2[(k=s+(u<<3)|0)>>2]))))for(;;)if(X2[(u=k)>>2]=X2[(k=s+(v<<3)|0)>>2],(0|(u=X2[k>>2]))==(0|(v=X2[(k=s+(u<<3)|0)>>2])))break;if(X2[l>>2]=u,(0|d)==(0|(B=B+1|0)))break}if(2<=(0|d)&&(!function A(e,r,f){for(var i,a,n,b=0,t=0,o=0,c=0,k=0,u=0,s=0;;){for(k=X2[e+12>>2],a=X2[k+((f+(i=r)|0)/2<<3)>>2],o=r,c=f;;){for(t=((o<<3)+k|0)-8|0;o=o+1|0,X2[(t=t+8|0)>>2]<(0|a););for(r=o-1|0,b=8+(c<<3)|0;c=c-1|0,u=b+k|0,b=s=b-8|0,X2[u-8>>2]>(0|a););if((0|r)<=(0|(b=c+1|0))&&(n=X2[t>>2],u=X2[t+4>>2],r=X2[4+(b=k+s|0)>>2],X2[t>>2]=X2[b>>2],X2[t+4>>2]=r,r=X2[e+12>>2]+s|0,X2[r>>2]=n,X2[r+4>>2]=u,b=c,r=o),!((0|r)<=(0|b)))break;k=X2[e+12>>2],o=r,c=b}if((0|i)<(0|b)&&A(e,i,b),!((0|r)<(0|f)))break}}(_,0,d-1|0),d=X2[r+8>>2]),!((0|d)<1))for(w=(Q=X2[r+16>>2])+4|0,a=Q+8|0,u=0;;){B=(l=(0|(k=(s=u)+1|0))<(0|d)?d:k)-1|0,k=(v=s<<3)+a|0,_=X2[v+Q>>2];A:{for(;;){if((0|u)==(0|B)){u=l;break A}if(u=u+1|0,g=X2[k>>2],k=k+8|0,(0|_)!=(0|g))break}B=u-1|0}A:if(!((0|B)<(0|s))){for(g=s-1|0,l=X2[A+16>>2],E=1,k=v=v+w|0;;)if(f=X2[l+(X2[k>>2]<<2)>>2],(0|_)==X2[f+208>>2]&&(E&=4!=(0|(f=X2[f+220>>2]))&1!=(0|f)),k=k+8|0,(0|(g=g+1|0))==(0|B))break;if(!E)for(k=B-s|0;;){if(s=X2[l+(X2[v>>2]<<2)>>2],(0|_)==X2[s+208>>2]&&2==X2[s+220>>2]&&(X2[s+220>>2]=3,X2[s+224>>2]=0),!k)break A;v=v+8|0,k=k-1|0}for(k=B-s|0;;){if(s=X2[l+(X2[v>>2]<<2)>>2],(0|_)==X2[s+208>>2]&&4!=(-2&X2[s+220>>2])&&(X2[s+220>>2]=2),!k)break A;v=v+8|0,k=k-1|0}}if(!((0|u)<(0|d)))break}}if(1<=(0|(v=0|N2[X2[X2[Z>>2]+36>>2]](Z))))for(l=0;;){_=0|N2[X2[X2[Z>>2]+40>>2]](Z,l),k=X2[_+840>>2],u=X2[_+836>>2];A:{if(2==X2[u+220>>2]||!u){if(!k)break A;if(2==X2[k+220>>2])break A}if(2&(s=X2[u+204>>2])&&(4&s||2==X2[u+220>>2]||3&J2[k+204|0]||(4!=(-2&X2[k+220>>2])&&(X2[k+220>>2]=1),X2[k+224>>2]=0)),2&(B=X2[k+204>>2])&&(4&B|3&s||2!=X2[k+220>>2]&&(4!=(-2&X2[u+220>>2])&&(X2[u+220>>2]=1),X2[u+224>>2]=0)),J2[r+64|0]&&0|N2[X2[X2[Z>>2]+28>>2]](Z,u,k)){if((0|(s=X2[r+28>>2]))==X2[r+32>>2]&&!((0|(d=s?s<<1:1))<=(0|s))){if(B=0,d&&(X2[6258]=X2[6258]+1,(k=L2(19+(d<<2)|0))&&(X2[(B=k+19&-16)-4>>2]=k)),1<=(0|s))for(u=0,k=s;;)if(X2[u+B>>2]=X2[X2[r+36>>2]+u>>2],u=u+4|0,!(k=k-1|0))break;(k=X2[r+36>>2])&&J2[r+40|0]&&(X2[6259]=X2[6259]+1,q2(X2[k-4>>2]),s=X2[r+28>>2]),X2[r+36>>2]=B,S2[r+40|0]=1,X2[r+32>>2]=d}X2[r+28>>2]=s+1,X2[X2[r+36>>2]+(s<<2)>>2]=_}}if((0|v)==(0|(l=l+1|0)))break}if(J2[r+64|0]){if(_=X2[r+8>>2],2<=(0|(E=X2[r+28>>2]))&&!function A(e,r,f){for(var i,a,n,b=0,t=0,o=0,c=0,k=0,u=0,s=0;;){for(a=r,t=X2[e+12>>2],i=X2[t+((r+f|0)/2<<2)>>2],b=f;;){if(k=(0|(s=X2[X2[i+836>>2]+208>>2]))<0)for(o=r-1|0,c=((r<<2)+t|0)-4|0,n=X2[X2[i+840>>2]+208>>2];o=o+1|0,u=X2[(c=c+4|0)>>2],(0|(r=(0|(r=X2[X2[u+836>>2]+208>>2]))<=-1?X2[X2[u+840>>2]+208>>2]:r))<(0|n););else for(o=r-1|0,c=((r<<2)+t|0)-4|0;o=o+1|0,u=X2[(c=c+4|0)>>2],(0|(r=(0|(r=X2[X2[u+836>>2]+208>>2]))<=-1?X2[X2[u+840>>2]+208>>2]:r))<(0|s););for(k?(r=b+1|0,k=(b<<2)+t|0,s=X2[X2[i+840>>2]+208>>2]):(r=b+1|0,k=(b<<2)+t|0);t=X2[k>>2],k=k-4|0,r=r-1|0,(0|s)<(0|(b=(0|(b=X2[X2[t+836>>2]+208>>2]))<=-1?X2[X2[t+840>>2]+208>>2]:b)););if(!((0|(r=(0|r)<(0|o)?(b=r,o):(X2[c>>2]=t,X2[X2[e+12>>2]+(r<<2)>>2]=u,b=r-1|0,o+1|0)))<=(0|b)))break;t=X2[e+12>>2]}if((0|a)<(0|b)&&A(e,a,b),!((0|r)<(0|f)))break}}(r+24|0,0,E-1|0),!((0|_)<1))for(Z=B=0,d=1;;){l=X2[r+16>>2],Q=X2[l+(B<<3)>>2],w=1;A:if(!((0|_)<=(0|B)))for(k=X2[r+52>>2],u=X2[r+48>>2];;){if(g=X2[X2[A+16>>2]+(X2[4+((B<<3)+l|0)>>2]<<2)>>2],(0|k)!=(0|u))s=k,k=u;else if((0|(s=k?k<<1:1))<=(0|k))s=k;else{if(v=0,s&&(X2[6258]=X2[6258]+1,(u=L2(19+(s<<2)|0))&&(X2[(v=u+19&-16)-4>>2]=u)),1<=(0|k))for(u=0,l=k;;)if(X2[u+v>>2]=X2[X2[r+56>>2]+u>>2],u=u+4|0,!(l=l-1|0))break;(u=X2[r+56>>2])&&J2[r+60|0]&&(X2[6259]=X2[6259]+1,q2(X2[u-4>>2]),k=X2[r+48>>2]),X2[r+56>>2]=v,S2[r+60|0]=1,X2[r+52>>2]=s}if(X2[r+48>>2]=u=k+1|0,X2[X2[r+56>>2]+(k<<2)>>2]=g,w&=2==(0|(k=X2[g+220>>2]))|5==(0|k),(0|_)==(0|(B=B+1|0))){B=_;break A}if(k=s,l=X2[r+16>>2],(0|Q)!=X2[l+(B<<3)>>2])break}if(!(((k=g=0)|E)<=(0|Z))&&(l=X2[r+36>>2],k=X2[(s=l+(v=Z<<2)|0)>>2],(0|(u=X2[X2[k+836>>2]+208>>2]))<=-1&&(u=X2[X2[k+840>>2]+208>>2]),((k=0)|u)==(0|Q))){for(g=(k=(0|(k=Z+1|0))<(0|E)?E:k)-1|0,u=4+(l+v|0)|0,d=Z;;){if((0|d)==(0|g))d=k;else if(v=X2[u>>2],d=d+1|0,u=u+4|0,(0|(l=(0|(l=X2[X2[v+836>>2]+208>>2]))<=-1?X2[X2[v+840>>2]+208>>2]:l))==(0|Q))continue;break}g=d-Z|0,k=s}if(w||N2[X2[X2[i>>2]+8>>2]](i,X2[r+56>>2],X2[r+48>>2],k,g,Q),(0|(u=X2[r+48>>2]))<=-1)for(X2[r+52>>2]<=-1&&((k=X2[r+56>>2])&&J2[r+60|0]&&(X2[6259]=X2[6259]+1,q2(X2[k-4>>2])),S2[r+60|0]=1,X2[r+52>>2]=0,X2[r+56>>2]=0),l=u<<2;;)if(l=l+4|(X2[X2[r+56>>2]+l>>2]=0),!((k=u)>>>0<=(u=k+1|0)>>>0))break;if(Z=g?d:Z,!(((X2[r+48>>2]=0)|B)<(0|_)))break}}else k=0|N2[X2[X2[Z>>2]+44>>2]](Z),u=0|N2[X2[X2[Z>>2]+36>>2]](Z),N2[X2[X2[i>>2]+8>>2]](i,X2[A+16>>2],X2[A+8>>2],k,u,-1);P4(X2[A+212>>2]),k=X2[A+216>>2],N2[X2[X2[k>>2]+16>>2]](k,e,X2[A+72>>2]),K2=16+c|0},function(A,e){A|=0,e=P2(e),P2(0);var r,f,i,a,n,b=0,t=(P2(0),0),o=0,c=0;if(1<=(0|(t=X2[A+248>>2])))for(n=J2[26508];;){A:if(r=X2[X2[A+256>>2]+o>>2]){e:{r:{f:switch((b=X2[r+220>>2])-2|0){case 0:case 2:break r;default:break f;}if(f=U2[r+372>>2],i=P2(f*f),f=U2[r+376>>2],i=P2(i+P2(f*f)),f=U2[r+380>>2],i=P2(i+P2(f*f)),f=U2[r+532>>2],i>2],i=P2(f*f),f=U2[r+392>>2],i=P2(i+P2(f*f)),f=U2[r+396>>2],i=P2(i+P2(f*f)),f=U2[r+536>>2],i>2]=U2[r+224>>2]+e;break e}if(X2[r+224>>2]=0,4==(-2&b))break e;X2[r+220>>2]=b=0;break e}if(4==(0|b))break A}a=-2&b;e:{r:if(!n){f:{if(2!=(0|a)){if(!(U2[r+224>>2]>P2(2)))break r;if(3&J2[r+204|0]){if(4==(0|a))break A;break e}if(1!=(0|b))break f;X2[r+220>>2]=3;break A}if(3&J2[r+204|0])break e}if(2!=(0|b))break A;X2[r+388>>2]=0,X2[r+392>>2]=0,X2[r+372>>2]=0,X2[r+376>>2]=0,X2[(b=r+396|0)>>2]=0,X2[b+4>>2]=0,X2[(b=r+380|0)>>2]=0,X2[b+4>>2]=0,X2[r+304>>2]=X2[r+304>>2]+2,t=X2[A+248>>2];break A}if(4==(0|a))break A;X2[r+220>>2]=1;break A}X2[r+220>>2]=2}if(o=o+4|0,!((0|(c=c+1|0))<(0|t)))break}},function(A,e){A|=0,e=P2(e);var r,f,i,a=0,n=0;if((a=X2[A+84>>2])&&N2[0|a](A,e),N2[X2[X2[A>>2]+140>>2]](A,e),X2[A+32>>2]=a=0,U2[A+28>>2]=e,f=A+48|0,i=0|N2[X2[X2[A>>2]+20>>2]](A),X2[f>>2]=i,N2[X2[X2[A>>2]+164>>2]](A,e),N2[X2[X2[A>>2]+44>>2]](A),N2[X2[X2[A>>2]+148>>2]](A),U2[A+104>>2]=e,N2[X2[X2[A>>2]+152>>2]](A,A+92|0),N2[X2[X2[A>>2]+144>>2]](A,e),1<=X2[A+296>>2])for(;;)if(r=X2[X2[A+304>>2]+a>>2],N2[X2[X2[r>>2]+8>>2]](r,A,e),a=a+4|0,!((0|(n=n+1|0))>2]))break;N2[X2[X2[A>>2]+156>>2]](A,e),(a=X2[A+80>>2])&&N2[0|a](A,e)},function(A,e){A|=0,e=P2(e);var r,f,i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,x,G,C,h,F,y,V,p,M,S,X,J,U,Y,m=0,N=0,R=0,D=(P2(0),0),T=(P2(0),0),W=(P2(0),P2(0),0),I=(P2(0),P2(0),0);if(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2=Y=K2-512|0,1<=X2[A+324>>2])for(;;)if(T=X2[A+24>>2],N2[X2[X2[T>>2]+16>>2]](T,X2[X2[A+332>>2]+W>>2]),W=W+4|0,!((0|(N=N+1|0))>2]))break;if((T=X2[A+332>>2])&&J2[A+336|0]&&(X2[6259]=X2[6259]+1,q2(X2[T-4>>2])),X2[A+332>>2]=0,X2[A+324>>2]=0,X2[A+328>>2]=0,(S2[A+336|0]=1)<=(0|(x=X2[A+248>>2])))for(U=X2[A+256>>2],t=124+Y|0,l=92+Y|0,B=72+Y|0,T=392+Y|0,v=264+Y|0,d=248+Y|0,Z=232+Y|0,k=312+Y|0,_=376+Y|0,g=360+Y|0,c=496+Y|0,W=0;;){r=X2[(W<<2)+U>>2],X2[r+268>>2]=1065353216;A:{e:switch(X2[r+220>>2]-2|0){case 0:case 3:break A;default:break e;}if(!(3&J2[r+204|0])&&(N4(a=r+4|0,U2[r+372>>2],U2[r+376>>2],U2[r+380>>2],r+388|0,e,448+Y|0),J2[A+44|0]&&(f=U2[r+276>>2],(n=P2(f*f))!=P2(0)&&(u=U2[496+Y>>2],f=P2(u-U2[(o=r+52|0)>>2]),i=P2(f*f),s=U2[500+Y>>2],f=P2(s-U2[r+56>>2]),b=P2(i+P2(f*f)),i=U2[504+Y>>2],f=P2(i-U2[r+60>>2]),n>2]+4>>2])&&(X2[6799]=X2[6799]+1,m=X2[A+68>>2],D=0|N2[X2[X2[m>>2]+36>>2]](m),m=X2[4+o>>2],X2[g>>2]=X2[o>>2],X2[4+g>>2]=m,m=X2[(N=E=8+o|0)+4>>2],X2[(R=8+g|0)>>2]=X2[N>>2],X2[R+4>>2]=m,m=X2[4+c>>2],X2[_>>2]=X2[c>>2],X2[4+_>>2]=m,m=X2[(R=8+c|0)+4>>2],X2[(N=8+_|0)>>2]=X2[R>>2],X2[N+4>>2]=m,X2[348+Y>>2]=1065353216,X2[344+Y>>2]=22792,X2[424+Y>>2]=0,X2[440+Y>>2]=X2[A+24>>2],X2[436+Y>>2]=D,X2[428+Y>>2]=r,X2[k>>2]=0,X2[4+k>>2]=0,X2[(m=8+k|0)>>2]=0,X2[m+4>>2]=0,X2[16+k>>2]=0,X2[292+Y>>2]=0,X2[296+Y>>2]=0,X2[308+Y>>2]=1065353216,X2[300+Y>>2]=1065353216,X2[304+Y>>2]=1065353216,X2[284+Y>>2]=8,X2[288+Y>>2]=0,X2[280+Y>>2]=14616,X2[336+Y>>2]=0,f=U2[r+272>>2],U2[316+Y>>2]=f,U2[332+Y>>2]=f,U2[432+Y>>2]=U2[A+56>>2],m=X2[r+188>>2],X2[352+Y>>2]=X2[m+4>>2],X2[356+Y>>2]=X2[m+8>>2],m=X2[R+4>>2],X2[(N=8+v|0)>>2]=X2[R>>2],X2[N+4>>2]=m,m=X2[4+c>>2],X2[v>>2]=X2[c>>2],X2[4+v>>2]=m,m=X2[(N=8+a|0)+4>>2],X2[(R=224+Y|0)>>2]=X2[N>>2],X2[R+4>>2]=m,m=X2[(N=r+20|0)+4>>2],X2[Z>>2]=X2[N>>2],X2[4+Z>>2]=m,m=X2[(N=r+28|0)+4>>2],X2[(R=8+Z|0)>>2]=X2[N>>2],X2[R+4>>2]=m,m=X2[(N=r+36|0)+4>>2],X2[d>>2]=X2[N>>2],X2[4+d>>2]=m,m=X2[(N=r+44|0)+4>>2],X2[(R=8+d|0)>>2]=X2[N>>2],X2[R+4>>2]=m,m=X2[4+a>>2],X2[216+Y>>2]=X2[a>>2],X2[220+Y>>2]=m,X4(A,280+Y|0,a,216+Y|0,344+Y|0,P2(0)),(f=U2[348+Y>>2])>2])),b=P2(f*P2(u-U2[r+52>>2])),C=P2(f*P2(i-U2[r+60>>2])),n=P2(P2(P2(G*P2(-U2[396+Y>>2]))-P2(b*U2[392+Y>>2]))-P2(C*U2[400+Y>>2])),m=X2[A+24>>2],a=0|N2[X2[X2[m>>2]+12>>2]](m,r,X2[424+Y>>2]),(0|(N=X2[A+324>>2]))==X2[A+328>>2]&&!((0|(D=N?N<<1:1))<=(0|N))){if(R=0,D&&(X2[6258]=X2[6258]+1,(m=L2(19+(D<<2)|0))&&(X2[(R=m+19&-16)-4>>2]=m)),1<=(0|N))for(I=0,m=N;;)if(X2[R+I>>2]=X2[X2[A+332>>2]+I>>2],I=I+4|0,!(m=m-1|0))break;(m=X2[A+332>>2])&&J2[A+336|0]&&(X2[6259]=X2[6259]+1,q2(X2[m-4>>2]),N=X2[A+324>>2]),X2[A+332>>2]=R,S2[A+336|0]=1,X2[A+328>>2]=D}X2[X2[A+332>>2]+(N<<2)>>2]=a,X2[A+324>>2]=N+1,m=X2[424+Y>>2],h=U2[m+20>>2],F=U2[m+36>>2],y=U2[m+40>>2],V=U2[m+8>>2],p=U2[m+24>>2],Q=U2[m+60>>2],u=U2[m+56>>2],w=U2[m+52>>2],M=U2[m+44>>2],S=U2[m+12>>2],X=U2[m+28>>2],J=U2[m+4>>2],s=U2[r+60>>2],i=U2[r+52>>2],f=U2[r+56>>2],X2[(m=16+Y|0)>>2]=0,X2[m+4>>2]=0,X2[l>>2]=0,X2[4+l>>2]=0,X2[(m=8+l|0)>>2]=0,X2[m+4>>2]=0,X2[t>>2]=0,X2[4+t>>2]=0,X2[(m=8+t|0)>>2]=0,X2[m+4>>2]=0,X2[(m=16+t|0)>>2]=0,X2[m+4>>2]=0,X2[(m=24+t|0)>>2]=0,X2[m+4>>2]=0,X2[(m=32+t|0)>>2]=0,X2[m+4>>2]=0,X2[(m=40+t|0)>>2]=0,X2[m+4>>2]=0,X2[48+t>>2]=0,m=X2[T+4>>2],X2[B>>2]=X2[T>>2],X2[4+B>>2]=m,m=X2[(N=T+8|0)+4>>2],X2[(R=8+B|0)>>2]=X2[N>>2],X2[R+4>>2]=m,X2[8+Y>>2]=0,X2[12+Y>>2]=0,X2[36+Y>>2]=0,U2[88+Y>>2]=n,b=P2(b+i),n=P2(G+f),i=P2(C+s),f=P2(-u),U2[32+Y>>2]=P2(P2(P2(S*b)+P2(X*n))+P2(M*i))+P2(P2(P2(X*f)-P2(S*w))-P2(M*Q)),U2[28+Y>>2]=P2(P2(P2(b*V)+P2(n*p))+P2(i*y))+P2(P2(P2(p*f)-P2(V*w))-P2(y*Q)),U2[24+Y>>2]=P2(P2(P2(b*J)+P2(n*h))+P2(i*F))+P2(P2(P2(h*f)-P2(J*w))-P2(F*Q)),D=H2(D1(a,8+Y|0),208)+a|0,X2[D+100>>2]=0,U2[D+88>>2]=m2(P2(z2(P2(U2[r+228>>2]*U2[X2[424+Y>>2]+228>>2]),P2(-10))),P2(10)),m=X2[4+E>>2],X2[(N=D+60|0)>>2]=X2[E>>2],X2[N+4>>2]=m,R=X2[4+o>>2],N=X2[o>>2],X2[D+48>>2]=0,U2[D+44>>2]=i,U2[D+40>>2]=n,X2[(m=D+52|0)>>2]=N,X2[m+4>>2]=R,U2[D+36>>2]=b}}if((0|x)==(0|(W=W+1|0)))break}K2=512+Y|0},function(A,e){A|=0,e=P2(e);var r,f,i,a,n,b,t,o,c,k,u,s=0,l=0,B=(P2(0),P2(0),0),v=0;if(K2=u=K2-32|0,1<=(0|(l=X2[A+8>>2])))for(a=P2(P2(1)/e),s=l;;)if((r=X2[X2[A+16>>2]+B>>2])&&2&X2[r+252>>2]&&2!=X2[r+220>>2]&&(s=(n=2&J2[r+204|0])?l:s,n&&e!=P2(0)&&((s=X2[r+540>>2])&&N2[X2[X2[s>>2]+8>>2]](s,r+4|0),X2[r+384>>2]=0,U2[(s=r+380|0)>>2]=a*P2(U2[(l=r+60|0)>>2]-U2[(n=r+124|0)>>2]),U2[r+376>>2]=a*P2(U2[r+56>>2]-U2[r+120>>2]),U2[(f=r+372|0)>>2]=a*P2(U2[(b=r+52|0)>>2]-U2[(t=r+116|0)>>2]),E4(r+68|0,r+4|0,16+u|0,12+u|0),X2[r+400>>2]=0,k=U2[12+u>>2],U2[(i=r+396|0)>>2]=a*P2(k*U2[24+u>>2]),U2[r+392>>2]=a*P2(k*U2[20+u>>2]),U2[(o=r+388|0)>>2]=a*P2(k*U2[16+u>>2]),k=X2[s+4>>2],X2[(c=r+140|0)>>2]=X2[s>>2],X2[4+c>>2]=k,s=X2[4+f>>2],X2[r+132>>2]=X2[f>>2],X2[r+136>>2]=s,s=X2[4+o>>2],X2[r+148>>2]=X2[o>>2],X2[r+152>>2]=s,f=X2[4+i>>2],X2[(s=r+156|0)>>2]=X2[i>>2],X2[s+4>>2]=f,s=X2[r+8>>2],X2[r+68>>2]=X2[r+4>>2],X2[r+72>>2]=s,i=X2[4+(f=r+12|0)>>2],X2[(s=r+76|0)>>2]=X2[f>>2],X2[s+4>>2]=i,i=X2[4+(f=r+20|0)>>2],X2[(s=r+84|0)>>2]=X2[f>>2],X2[s+4>>2]=i,i=X2[4+(f=r+28|0)>>2],X2[(s=r+92|0)>>2]=X2[f>>2],X2[s+4>>2]=i,i=X2[4+(f=r+44|0)>>2],X2[(s=r+108|0)>>2]=X2[f>>2],X2[s+4>>2]=i,s=r+100|0,f=X2[4+(r=r+36|0)>>2],X2[s>>2]=X2[r>>2],X2[s+4>>2]=f,s=X2[l+4>>2],X2[n>>2]=X2[l>>2],X2[4+n>>2]=s,s=X2[4+b>>2],X2[t>>2]=X2[b>>2],X2[4+t>>2]=s,s=l=X2[A+8>>2])),B=B+4|0,!((0|(v=v+1|0))<(0|s)))break;K2=32+u|0},function(A,e){A|=0,e|=0;var r,f,i=0,a=0,n=0,b=P2(0),t=P2(0),o=0,c=P2(0),k=P2(0),u=P2(0),s=P2(0),l=0,B=P2(0),v=P2(0),d=P2(0),Z=P2(0),_=0,g=0,E=P2(0),Q=(P2(0),P2(0)),w=P2(0),G=0,C=P2(0),h=P2(0),F=P2(0),Y=P2(0),m=P2(0),N=P2(0),R=0,D=0,T=P2(0),W=P2(0),I=0,x=0,y=P2(0),V=P2(0),p=P2(0),M=0,S=P2(0),X=P2(0),J=P2(0),U=P2(0),H=0;K2=f=K2-176|0,i=0|N2[X2[X2[A>>2]+20>>2]](A),i=0|N2[X2[X2[i>>2]+56>>2]](i),n=0|N2[X2[X2[A>>2]+20>>2]](A),n=0|N2[X2[X2[n>>2]+56>>2]](n),r=U2[e+40>>2];A:if(!(r<=P2(0))){a=2048&i,l=4096&n;e:switch(X2[e+4>>2]-3|0){case 0:if(X2[(n=172+f|0)>>2]=0,X2[(i=o=164+f|0)>>2]=0,X2[i+4>>2]=0,X2[(i=156+f|0)>>2]=0,X2[i+4>>2]=0,X2[(i=124+f|0)>>2]=0,X2[i+4>>2]=0,X2[(i=136+f|0)>>2]=0,X2[i+4>>2]=0,X2[132+f>>2]=1065353216,X2[(i=144+f|0)>>2]=0,X2[i+4>>2]=0,X2[152+f>>2]=1065353216,X2[116+f>>2]=0,X2[120+f>>2]=0,X2[112+f>>2]=1065353216,i=X2[e+28>>2],k=U2[i+52>>2],u=U2[i+8>>2],s=U2[i+12>>2],B=U2[i+56>>2],v=U2[i+28>>2],d=U2[i+20>>2],Z=U2[i+24>>2],b=U2[i+60>>2],c=U2[i+44>>2],t=U2[i+36>>2],E=U2[i+40>>2],Q=U2[i+4>>2],G=168+f|(X2[n>>2]=0),S=b,b=U2[e+300>>2],X=P2(t*b),t=U2[e+304>>2],J=c,c=U2[e+308>>2],U2[G>>2]=S+P2(P2(X+P2(E*t))+P2(J*c)),U2[o>>2]=B+P2(P2(P2(b*d)+P2(t*Z))+P2(c*v)),U2[160+f>>2]=k+P2(P2(P2(b*Q)+P2(t*u))+P2(c*s)),i=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[i>>2]+64>>2]](i,112+f|0,r),i=X2[e+32>>2],k=U2[i+52>>2],u=U2[i+8>>2],s=U2[i+12>>2],B=U2[i+56>>2],v=U2[i+28>>2],d=U2[i+20>>2],Z=U2[i+24>>2],b=U2[i+60>>2],c=U2[i+44>>2],t=U2[i+36>>2],E=U2[i+40>>2],Q=U2[i+4>>2],X2[n>>2]=0,S=b,b=U2[e+316>>2],X=P2(t*b),t=U2[e+320>>2],J=c,c=U2[e+324>>2],U2[G>>2]=S+P2(P2(X+P2(E*t))+P2(J*c)),U2[o>>2]=B+P2(P2(P2(b*d)+P2(t*Z))+P2(c*v)),U2[160+f>>2]=k+P2(P2(P2(b*Q)+P2(t*u))+P2(c*s)),!a)break A;A=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[A>>2]+64>>2]](A,112+f|0,r);break A;case 1:if(i=X2[e+28>>2],y=U2[i+52>>2],b=U2[i+8>>2],t=U2[i+12>>2],Z=U2[e+584>>2],E=U2[e+552>>2],Q=U2[e+568>>2],V=U2[i+56>>2],p=U2[i+60>>2],Y=U2[e+608>>2],m=U2[e+600>>2],w=U2[e+604>>2],c=U2[i+28>>2],k=U2[i+20>>2],u=U2[i+24>>2],N=U2[e+588>>2],T=U2[e+556>>2],C=U2[e+572>>2],h=U2[e+592>>2],s=U2[i+44>>2],F=U2[e+560>>2],B=U2[i+36>>2],W=U2[e+576>>2],v=U2[i+40>>2],d=U2[i+4>>2],X2[172+f>>2]=0,X2[156+f>>2]=0,X2[140+f>>2]=0,U2[152+f>>2]=P2(P2(F*B)+P2(W*v))+P2(h*s),U2[148+f>>2]=P2(P2(T*B)+P2(C*v))+P2(N*s),U2[136+f>>2]=P2(P2(F*k)+P2(W*u))+P2(h*c),U2[132+f>>2]=P2(P2(T*k)+P2(C*u))+P2(N*c),U2[168+f>>2]=p+P2(P2(P2(B*m)+P2(v*w))+P2(s*Y)),U2[164+f>>2]=V+P2(P2(P2(k*m)+P2(u*w))+P2(c*Y)),X2[124+f>>2]=0,U2[144+f>>2]=P2(P2(E*B)+P2(Q*v))+P2(Z*s),U2[128+f>>2]=P2(P2(E*k)+P2(Q*u))+P2(Z*c),U2[120+f>>2]=P2(P2(d*F)+P2(b*W))+P2(t*h),U2[116+f>>2]=P2(P2(d*T)+P2(b*C))+P2(t*N),U2[112+f>>2]=P2(P2(E*d)+P2(Q*b))+P2(Z*t),U2[160+f>>2]=y+P2(P2(P2(d*m)+P2(b*w))+P2(t*Y)),a?(i=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[i>>2]+64>>2]](i,112+f|0,r),i=X2[e+32>>2],y=U2[i+52>>2],b=U2[i+8>>2],t=U2[i+12>>2],V=U2[i+56>>2],p=U2[i+60>>2],Z=U2[e+672>>2],E=U2[e+664>>2],Q=U2[e+668>>2],c=U2[i+28>>2],k=U2[i+20>>2],u=U2[i+24>>2],Y=U2[e+648>>2],m=U2[e+616>>2],w=U2[e+632>>2],N=U2[e+652>>2],T=U2[e+620>>2],C=U2[e+636>>2],h=U2[e+656>>2],s=U2[i+44>>2],F=U2[e+624>>2],B=U2[i+36>>2],W=U2[e+640>>2],v=U2[i+40>>2],d=U2[i+4>>2],X2[172+f>>2]=0,X2[156+f>>2]=0,X2[140+f>>2]=0,U2[152+f>>2]=P2(P2(F*B)+P2(W*v))+P2(h*s),U2[148+f>>2]=P2(P2(T*B)+P2(C*v))+P2(N*s),U2[144+f>>2]=P2(P2(m*B)+P2(w*v))+P2(Y*s),U2[136+f>>2]=P2(P2(F*k)+P2(W*u))+P2(h*c),U2[132+f>>2]=P2(P2(T*k)+P2(C*u))+P2(N*c),U2[168+f>>2]=p+P2(P2(P2(B*E)+P2(v*Q))+P2(s*Z)),U2[164+f>>2]=V+P2(P2(P2(k*E)+P2(u*Q))+P2(c*Z)),U2[160+f>>2]=y+P2(P2(P2(d*E)+P2(b*Q))+P2(t*Z)),X2[124+f>>2]=0,U2[128+f>>2]=P2(P2(m*k)+P2(w*u))+P2(Y*c),U2[120+f>>2]=P2(P2(d*F)+P2(b*W))+P2(t*h),U2[116+f>>2]=P2(P2(d*T)+P2(b*C))+P2(t*N),U2[112+f>>2]=P2(P2(m*d)+P2(w*b))+P2(Y*t),i=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[i>>2]+64>>2]](i,112+f|0,r)):(i=X2[e+32>>2],y=U2[i+52>>2],V=U2[i+56>>2],p=U2[i+60>>2],Z=U2[e+672>>2],E=U2[e+664>>2],Q=U2[e+668>>2],b=U2[i+8>>2],t=U2[i+12>>2],c=U2[i+28>>2],k=U2[i+20>>2],u=U2[i+24>>2],Y=U2[e+648>>2],m=U2[e+616>>2],w=U2[e+632>>2],N=U2[e+652>>2],T=U2[e+620>>2],C=U2[e+636>>2],h=U2[e+656>>2],s=U2[i+44>>2],F=U2[e+624>>2],B=U2[i+36>>2],W=U2[e+640>>2],v=U2[i+40>>2],d=U2[i+4>>2],X2[172+f>>2]=0,X2[156+f>>2]=0,X2[140+f>>2]=0,X2[124+f>>2]=0,U2[152+f>>2]=P2(P2(F*B)+P2(W*v))+P2(h*s),U2[148+f>>2]=P2(P2(T*B)+P2(C*v))+P2(N*s),U2[144+f>>2]=P2(P2(m*B)+P2(w*v))+P2(Y*s),U2[136+f>>2]=P2(P2(F*k)+P2(W*u))+P2(h*c),U2[132+f>>2]=P2(P2(T*k)+P2(C*u))+P2(N*c),U2[128+f>>2]=P2(P2(m*k)+P2(w*u))+P2(Y*c),U2[120+f>>2]=P2(P2(d*F)+P2(b*W))+P2(t*h),U2[116+f>>2]=P2(P2(d*T)+P2(b*C))+P2(t*N),U2[112+f>>2]=P2(P2(m*d)+P2(w*b))+P2(Y*t),U2[168+f>>2]=p+P2(P2(P2(B*E)+P2(v*Q))+P2(s*Z)),U2[164+f>>2]=V+P2(P2(P2(k*E)+P2(u*Q))+P2(c*Z)),U2[160+f>>2]=y+P2(P2(P2(d*E)+P2(b*Q))+P2(t*Z))),b=U2[e+688>>2],c=U2[e+692>>2],(t=b2(P2(b-c)))P2(3.1415927410125732)&&(t=P2(t+P2(-6.2831854820251465))),(b=b2(P2(b+c)))P2(3.1415927410125732)&&(b=P2(b+P2(-6.2831854820251465))),b==t)break A;if(!l)break A;U2[96+f>>2]=U2[120+f>>2],U2[100+f>>2]=U2[136+f>>2],X2[108+f>>2]=0,U2[104+f>>2]=U2[152+f>>2],U2[80+f>>2]=U2[112+f>>2],U2[84+f>>2]=U2[128+f>>2],X2[92+f>>2]=0,U2[88+f>>2]=U2[144+f>>2],A=0|N2[X2[X2[A>>2]+20>>2]](A),X2[(e=72+f|0)>>2]=0,X2[e+4>>2]=0,X2[64+f>>2]=0,X2[68+f>>2]=0,e=c>P2(0),N2[X2[X2[A>>2]+68>>2]](A,160+f|0,96+f|0,80+f|0,r,r,e?t:P2(0),e?b:P2(6.2831854820251465),f+64|0,e,P2(10));break A;case 2:if(i=X2[e+28>>2],y=U2[i+52>>2],b=U2[i+8>>2],t=U2[i+12>>2],Z=U2[e+332>>2],E=U2[e+300>>2],Q=U2[e+316>>2],V=U2[i+56>>2],p=U2[i+60>>2],Y=U2[e+356>>2],m=U2[e+348>>2],w=U2[e+352>>2],c=U2[i+28>>2],k=U2[i+20>>2],u=U2[i+24>>2],N=U2[e+336>>2],T=U2[e+304>>2],C=U2[e+320>>2],h=U2[e+340>>2],s=U2[i+44>>2],F=U2[e+308>>2],B=U2[i+36>>2],W=U2[e+324>>2],v=U2[i+40>>2],d=U2[i+4>>2],X2[172+f>>2]=0,X2[156+f>>2]=0,X2[140+f>>2]=0,U2[152+f>>2]=P2(P2(F*B)+P2(W*v))+P2(h*s),U2[148+f>>2]=P2(P2(T*B)+P2(C*v))+P2(N*s),U2[136+f>>2]=P2(P2(F*k)+P2(W*u))+P2(h*c),U2[132+f>>2]=P2(P2(T*k)+P2(C*u))+P2(N*c),U2[168+f>>2]=p+P2(P2(P2(B*m)+P2(v*w))+P2(s*Y)),U2[164+f>>2]=V+P2(P2(P2(k*m)+P2(u*w))+P2(c*Y)),X2[124+f>>2]=0,U2[144+f>>2]=P2(P2(E*B)+P2(Q*v))+P2(Z*s),U2[128+f>>2]=P2(P2(E*k)+P2(Q*u))+P2(Z*c),U2[120+f>>2]=P2(P2(d*F)+P2(b*W))+P2(t*h),U2[116+f>>2]=P2(P2(d*T)+P2(b*C))+P2(t*N),U2[112+f>>2]=P2(P2(E*d)+P2(Q*b))+P2(Z*t),U2[160+f>>2]=y+P2(P2(P2(d*m)+P2(b*w))+P2(t*Y)),a?(i=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[i>>2]+64>>2]](i,112+f|0,r),i=X2[e+32>>2],y=U2[i+52>>2],b=U2[i+8>>2],t=U2[i+12>>2],V=U2[i+56>>2],p=U2[i+60>>2],Z=U2[e+420>>2],E=U2[e+412>>2],Q=U2[e+416>>2],c=U2[i+28>>2],k=U2[i+20>>2],u=U2[i+24>>2],Y=U2[e+396>>2],m=U2[e+364>>2],w=U2[e+380>>2],N=U2[e+400>>2],T=U2[e+368>>2],C=U2[e+384>>2],h=U2[e+404>>2],s=U2[i+44>>2],F=U2[e+372>>2],B=U2[i+36>>2],W=U2[e+388>>2],v=U2[i+40>>2],d=U2[i+4>>2],X2[172+f>>2]=0,X2[156+f>>2]=0,X2[140+f>>2]=0,U2[152+f>>2]=P2(P2(F*B)+P2(W*v))+P2(h*s),U2[148+f>>2]=P2(P2(T*B)+P2(C*v))+P2(N*s),U2[144+f>>2]=P2(P2(m*B)+P2(w*v))+P2(Y*s),U2[136+f>>2]=P2(P2(F*k)+P2(W*u))+P2(h*c),U2[132+f>>2]=P2(P2(T*k)+P2(C*u))+P2(N*c),U2[168+f>>2]=p+P2(P2(P2(B*E)+P2(v*Q))+P2(s*Z)),U2[164+f>>2]=V+P2(P2(P2(k*E)+P2(u*Q))+P2(c*Z)),U2[160+f>>2]=y+P2(P2(P2(d*E)+P2(b*Q))+P2(t*Z)),X2[124+f>>2]=0,U2[128+f>>2]=P2(P2(m*k)+P2(w*u))+P2(Y*c),U2[120+f>>2]=P2(P2(d*F)+P2(b*W))+P2(t*h),U2[116+f>>2]=P2(P2(d*T)+P2(b*C))+P2(t*N),U2[112+f>>2]=P2(P2(m*d)+P2(w*b))+P2(Y*t),i=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[i>>2]+64>>2]](i,112+f|0,r)):(i=X2[e+32>>2],y=U2[i+52>>2],V=U2[i+56>>2],p=U2[i+60>>2],Z=U2[e+420>>2],E=U2[e+412>>2],Q=U2[e+416>>2],b=U2[i+8>>2],t=U2[i+12>>2],c=U2[i+28>>2],k=U2[i+20>>2],u=U2[i+24>>2],Y=U2[e+396>>2],m=U2[e+364>>2],w=U2[e+380>>2],N=U2[e+400>>2],T=U2[e+368>>2],C=U2[e+384>>2],h=U2[e+404>>2],s=U2[i+44>>2],F=U2[e+372>>2],B=U2[i+36>>2],W=U2[e+388>>2],v=U2[i+40>>2],d=U2[i+4>>2],X2[172+f>>2]=0,X2[156+f>>2]=0,X2[140+f>>2]=0,X2[124+f>>2]=0,U2[152+f>>2]=P2(P2(F*B)+P2(W*v))+P2(h*s),U2[148+f>>2]=P2(P2(T*B)+P2(C*v))+P2(N*s),U2[144+f>>2]=P2(P2(m*B)+P2(w*v))+P2(Y*s),U2[136+f>>2]=P2(P2(F*k)+P2(W*u))+P2(h*c),U2[132+f>>2]=P2(P2(T*k)+P2(C*u))+P2(N*c),U2[128+f>>2]=P2(P2(m*k)+P2(w*u))+P2(Y*c),U2[120+f>>2]=P2(P2(d*F)+P2(b*W))+P2(t*h),U2[116+f>>2]=P2(P2(d*T)+P2(b*C))+P2(t*N),U2[112+f>>2]=P2(P2(m*d)+P2(w*b))+P2(Y*t),U2[168+f>>2]=p+P2(P2(P2(B*E)+P2(v*Q))+P2(s*Z)),U2[164+f>>2]=V+P2(P2(P2(k*E)+P2(u*Q))+P2(c*Z)),U2[160+f>>2]=y+P2(P2(P2(d*E)+P2(b*Q))+P2(t*Z))),!l)break A;for(X2[108+f>>2]=0,b=U2[e+444>>2],v=P2(P2(.0395662896335125)/P2(b*b)),b=U2[e+448>>2],b=c0(t=P2(P2(O2(P2(P2(1.0395662784576416)/P2(v+P2(P2(1)/P2(b*b))))))*P2(.5))),k=P2(o0(t)/P2(.9999999403953552)),t=P2(k*P2(.9807851910591125)),v=P2(b*P2(0)),c=P2(k*P2(0)),d=P2(c*P2(0)),u=P2(P2(v+d)-P2(t*r)),B=P2(t*P2(0)),k=P2(k*P2(.19509069621562958)),Z=P2(k*P2(0)),s=P2(P2(P2(b*r)+B)-Z),B=P2(P2(P2(r*P2(-c))-B)-Z),v=P2(P2(v+P2(k*r))-d),d=P2(P2(t*u)+P2(P2(P2(b*s)-P2(c*B))-P2(k*v))),Z=P2(P2(k*s)+P2(P2(P2(b*v)-P2(t*B))-P2(c*u))),b=P2(P2(c*v)+P2(P2(P2(b*u)-P2(k*B))-P2(t*s))),U2[104+f>>2]=P2(P2(P2(d*U2[144+f>>2])+P2(Z*U2[148+f>>2]))+P2(b*U2[152+f>>2]))+U2[168+f>>2],U2[100+f>>2]=P2(P2(P2(d*U2[128+f>>2])+P2(Z*U2[132+f>>2]))+P2(b*U2[136+f>>2]))+U2[164+f>>2],U2[96+f>>2]=P2(P2(P2(d*U2[112+f>>2])+P2(Z*U2[116+f>>2]))+P2(b*U2[120+f>>2]))+U2[160+f>>2],n=160+f|0,o=72+f|0,i=0;;)if(t=c0(c=P2(P2(P2(0|i)*P2(6.283185005187988))*P2(.03125))),b=U2[e+444>>2],u=o0(c),P2(j2(t))>P2(1.1920928955078125e-7)?(c=P2(u*u),k=P2(t*t),s=P2(c/k),v=P2(s/P2(b*b)),b=U2[e+448>>2],b=P2(O2(P2(P2(s+P2(1))/P2(v+P2(P2(1)/P2(b*b))))))):(c=P2(u*u),k=P2(t*t)),X2[92+f>>2]=0,v=t,t=P2(b*P2(.5)),k=P2(o0(t)/P2(O2(P2(c+P2(k+P2(0)))))),b=P2(v*k),t=c0(t),v=P2(t*P2(0)),c=P2(k*P2(0)),d=P2(c*P2(0)),s=P2(P2(v+d)-P2(b*r)),B=P2(b*P2(0)),k=P2(k*P2(-u)),Z=P2(k*P2(0)),u=P2(P2(P2(t*r)+B)-Z),B=P2(P2(P2(r*P2(-c))-B)-Z),v=P2(P2(v+P2(k*r))-d),d=P2(P2(b*s)+P2(P2(P2(t*u)-P2(c*B))-P2(k*v))),Z=P2(P2(k*u)+P2(P2(P2(t*v)-P2(b*B))-P2(c*s))),b=P2(P2(c*v)+P2(P2(P2(t*s)-P2(k*B))-P2(b*u))),U2[88+f>>2]=P2(P2(P2(d*U2[144+f>>2])+P2(Z*U2[148+f>>2]))+P2(b*U2[152+f>>2]))+U2[168+f>>2],U2[84+f>>2]=P2(P2(P2(d*U2[128+f>>2])+P2(Z*U2[132+f>>2]))+P2(b*U2[136+f>>2]))+U2[164+f>>2],U2[80+f>>2]=P2(P2(P2(d*U2[112+f>>2])+P2(Z*U2[116+f>>2]))+P2(b*U2[120+f>>2]))+U2[160+f>>2],a=0|N2[X2[X2[A>>2]+20>>2]](A),X2[o>>2]=0,X2[o+4>>2]=0,X2[64+f>>2]=0,X2[68+f>>2]=0,N2[X2[X2[a>>2]+16>>2]](a,96+f|0,80+f|0,f+64|0),3&i||(a=0|N2[X2[X2[A>>2]+20>>2]](A),X2[o>>2]=0,X2[o+4>>2]=0,X2[64+f>>2]=0,X2[68+f>>2]=0,N2[X2[X2[a>>2]+16>>2]](a,n,80+f|0,f+64|0)),I=X2[(G=88+f|0)+4>>2],X2[(a=104+f|0)>>2]=X2[G>>2],X2[a+4>>2]=I,a=X2[84+f>>2],X2[96+f>>2]=X2[80+f>>2],X2[100+f>>2]=a,32==(0|(i=i+1|0)))break;Q=U2[e+512>>2],Y=U2[e+452>>2],i=X2[e+32>>2],v=(s=(u=(B=(t=(k=(J=(b=(S=U2[i+404>>2]>P2(0)?(b=U2[i+36>>2],c=U2[e+412>>2],t=U2[i+40>>2],k=U2[e+416>>2],m=P2(P2(b*c)+P2(t*k)),u=U2[i+20>>2],s=U2[i+24>>2],B=U2[i+28>>2],w=U2[e+420>>2],N=P2(P2(P2(u*c)+P2(s*k))+P2(B*w)),v=U2[i+4>>2],d=U2[i+8>>2],Z=U2[i+12>>2],T=P2(P2(P2(v*c)+P2(d*k))+P2(Z*w)),C=U2[e+372>>2],h=U2[e+388>>2],F=U2[e+404>>2],E=U2[i+44>>2],W=P2(P2(P2(C*b)+P2(h*t))+P2(F*E)),y=U2[e+368>>2],V=U2[e+384>>2],p=U2[e+400>>2],c=P2(P2(P2(y*b)+P2(V*t))+P2(p*E)),U=U2[e+364>>2],X=U2[e+380>>2],U2[e+396>>2]):(i=X2[e+28>>2],b=U2[i+36>>2],c=U2[e+348>>2],t=U2[i+40>>2],k=U2[e+352>>2],m=P2(P2(b*c)+P2(t*k)),u=U2[i+20>>2],s=U2[i+24>>2],B=U2[i+28>>2],w=U2[e+356>>2],N=P2(P2(P2(u*c)+P2(s*k))+P2(B*w)),v=U2[i+4>>2],d=U2[i+8>>2],Z=U2[i+12>>2],T=P2(P2(P2(v*c)+P2(d*k))+P2(Z*w)),C=U2[e+308>>2],h=U2[e+324>>2],F=U2[e+340>>2],E=U2[i+44>>2],W=P2(P2(P2(C*b)+P2(h*t))+P2(F*E)),y=U2[e+304>>2],V=U2[e+320>>2],p=U2[e+336>>2],c=P2(P2(P2(y*b)+P2(V*t))+P2(p*E)),U=U2[e+300>>2],X=U2[e+316>>2],U2[e+332>>2]),P2(P2(P2(U*b)+P2(X*t))+P2(S*E))),P2(P2(P2(C*u)+P2(h*s))+P2(F*B))),P2(P2(P2(y*u)+P2(V*s))+P2(p*B))),P2(P2(P2(U*u)+P2(X*s))+P2(S*B))),P2(P2(P2(v*C)+P2(d*h))+P2(Z*F))),P2(P2(P2(v*y)+P2(d*V))+P2(Z*p))),P2(P2(P2(U*v)+P2(X*d))+P2(S*Z))),P2(E*w)),X2[156+f>>2]=0,U2[152+f>>2]=W,U2[148+f>>2]=c,U2[144+f>>2]=b,X2[140+f>>2]=0,U2[136+f>>2]=J,U2[132+f>>2]=k,U2[128+f>>2]=t,X2[124+f>>2]=0,U2[120+f>>2]=B,U2[116+f>>2]=u,U2[112+f>>2]=s,B=U2[i+52>>2],d=U2[i+56>>2],Z=U2[i+60>>2],X2[172+f>>2]=0,U2[168+f>>2]=Z+P2(m+v),U2[164+f>>2]=N+d,U2[160+f>>2]=B+T,o=X2[(i=n+8|0)+4>>2],X2[(e=88+f|0)>>2]=X2[i>>2],X2[e+4>>2]=o,e=X2[n+4>>2],X2[80+f>>2]=X2[n>>2],X2[84+f>>2]=e,X2[76+f>>2]=0,U2[72+f>>2]=b,U2[68+f>>2]=t,U2[64+f>>2]=s,X2[60+f>>2]=0,U2[56+f>>2]=c,U2[52+f>>2]=k,U2[48+f>>2]=u,A=0|N2[X2[X2[A>>2]+20>>2]](A),X2[(e=40+f|0)>>2]=0,X2[e+4>>2]=0,X2[32+f>>2]=0,X2[36+f>>2]=0,N2[X2[X2[A>>2]+68>>2]](A,80+f|0,f+64|0,48+f|0,r,r,P2(P2(-Q)-Y),P2(Y-Q),32+f|0,1,P2(10));break A;case 3:case 6:if(o=X2[(n=e+1072|0)+4>>2],X2[(i=_=120+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,o=X2[(n=e+1088|0)+4>>2],X2[(i=136+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,o=X2[(n=e+1104|0)+4>>2],X2[(i=152+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,o=X2[(n=e+1120|0)+4>>2],X2[(i=168+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,n=X2[(i=G=e+1064|0)+4>>2],X2[112+f>>2]=X2[i>>2],X2[116+f>>2]=n,n=X2[(i=I=e+1080|0)+4>>2],X2[128+f>>2]=X2[i>>2],X2[132+f>>2]=n,n=X2[(i=x=e+1096|0)+4>>2],X2[144+f>>2]=X2[i>>2],X2[148+f>>2]=n,n=X2[(i=M=e+1112|0)+4>>2],X2[160+f>>2]=X2[i>>2],X2[164+f>>2]=n,i=160+f|0,n=144+f|0,o=128+f|0,a&&(a=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[a>>2]+64>>2]](a,112+f|0,r),R=X2[(g=e+1184|0)+4>>2],X2[(a=i+8|0)>>2]=X2[g>>2],X2[a+4>>2]=R,g=X2[(a=e+1176|0)+4>>2],X2[i>>2]=X2[a>>2],X2[i+4>>2]=g,g=X2[(a=e+1144|0)+4>>2],X2[o>>2]=X2[a>>2],X2[o+4>>2]=g,R=X2[(g=e+1152|0)+4>>2],X2[(a=o+8|0)>>2]=X2[g>>2],X2[a+4>>2]=R,g=X2[(a=e+1160|0)+4>>2],X2[n>>2]=X2[a>>2],X2[n+4>>2]=g,R=X2[(g=e+1168|0)+4>>2],X2[(a=n+8|0)>>2]=X2[g>>2],X2[a+4>>2]=R,g=X2[(a=e+1136|0)+4>>2],X2[_>>2]=X2[a>>2],X2[_+4>>2]=g,_=X2[(a=e+1128|0)+4>>2],X2[112+f>>2]=X2[a>>2],X2[116+f>>2]=_,a=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[a>>2]+64>>2]](a,112+f|0,r)),!l)break A;a=X2[I+4>>2],X2[o>>2]=X2[I>>2],X2[o+4>>2]=a,a=X2[x+4>>2],X2[n>>2]=X2[x>>2],X2[n+4>>2]=a,a=X2[M+4>>2],X2[i>>2]=X2[M>>2],X2[i+4>>2]=a,g=X2[(_=G+8|0)+4>>2],X2[(a=l=120+f|0)>>2]=X2[_>>2],X2[a+4>>2]=g,R=X2[(g=I+8|0)+4>>2],X2[(a=_=o+8|0)>>2]=X2[g>>2],X2[a+4>>2]=R,D=X2[(R=x+8|0)+4>>2],X2[(a=g=n+8|0)>>2]=X2[R>>2],X2[a+4>>2]=D,H=X2[(D=M+8|0)+4>>2],X2[(a=R=i+8|0)>>2]=X2[D>>2],X2[a+4>>2]=H,a=X2[G+4>>2],X2[112+f>>2]=X2[G>>2],X2[116+f>>2]=a,U2[96+f>>2]=U2[l>>2],U2[100+f>>2]=U2[136+f>>2],X2[108+f>>2]=0,U2[104+f>>2]=U2[152+f>>2],U2[80+f>>2]=U2[112+f>>2],U2[84+f>>2]=U2[128+f>>2],X2[92+f>>2]=0,U2[88+f>>2]=U2[144+f>>2],b=U2[e+932>>2],t=U2[e+936>>2],c=U2[e+996>>2],k=U2[e+1e3>>2],D=0|N2[X2[X2[A>>2]+20>>2]](A),X2[(a=72+f|0)>>2]=0,X2[a+4>>2]=0,X2[64+f>>2]=0,X2[68+f>>2]=0,N2[X2[X2[D>>2]+72>>2]](D,a=e+1176|0,96+f|0,80+f|0,P2(r*P2(.8999999761581421)),b,t,c,k,f+64|0,P2(10),1),X2[92+f>>2]=0,k=U2[148+f>>2],U2[88+f>>2]=k,b=U2[132+f>>2],U2[84+f>>2]=b,t=U2[116+f>>2],U2[80+f>>2]=t,u=U2[e+1196>>2],s=U2[e+1200>>2],H=X2[(D=e+1136|0)+4>>2],X2[l>>2]=X2[D>>2],X2[l+4>>2]=H,D=X2[(l=e+1144|0)+4>>2],X2[o>>2]=X2[l>>2],X2[o+4>>2]=D,D=X2[(l=e+1152|0)+4>>2],X2[_>>2]=X2[l>>2],X2[_+4>>2]=D,_=X2[(l=e+1160|0)+4>>2],X2[n>>2]=X2[l>>2],X2[n+4>>2]=_,_=X2[(l=e+1168|0)+4>>2],X2[g>>2]=X2[l>>2],X2[g+4>>2]=_,l=X2[a+4>>2],X2[i>>2]=X2[a>>2],X2[i+4>>2]=l,_=X2[(l=e+1184|0)+4>>2],X2[R>>2]=X2[l>>2],X2[R+4>>2]=_,_=X2[(l=e+1128|0)+4>>2],X2[112+f>>2]=X2[l>>2],X2[116+f>>2]=_,c=o0(s),s=c0(s),U2[68+f>>2]=P2(b*s)-P2(c*t),B=o0(u),u=c0(u),U2[72+f>>2]=P2(P2(t*P2(s*B))+P2(b*P2(B*c)))+P2(k*u),U2[64+f>>2]=P2(P2(t*P2(u*s))+P2(b*P2(u*c)))-P2(B*k),X2[60+f>>2]=0,U2[56+f>>2]=-U2[144+f>>2],U2[52+f>>2]=-U2[128+f>>2],U2[48+f>>2]=-U2[112+f>>2],b=U2[e+868>>2],(t=U2[e+872>>2])>2]+20>>2]](A),X2[(_=40+f|0)>>2]=0,X2[_+4>>2]=0,X2[32+f>>2]=0,X2[36+f>>2]=0,N2[X2[X2[l>>2]+68>>2]](l,a,48+f|0,f+64|0,r,r,P2(-3.1415927410125732),P2(3.1415927410125732),32+f|0,0,P2(10))):b>2]+20>>2]](A),X2[(_=40+f|0)>>2]=0,X2[_+4>>2]=0,X2[32+f>>2]=0,X2[36+f>>2]=0,N2[X2[X2[l>>2]+68>>2]](l,a,48+f|0,f+64|0,r,r,b,t,32+f|0,1,P2(10))),a=X2[I+4>>2],X2[o>>2]=X2[I>>2],X2[o+4>>2]=a,a=X2[x+4>>2],X2[n>>2]=X2[x>>2],X2[n+4>>2]=a,a=X2[M+4>>2],X2[i>>2]=X2[M>>2],X2[i+4>>2]=a,_=X2[(l=G+8|0)+4>>2],X2[(a=120+f|0)>>2]=X2[l>>2],X2[a+4>>2]=_,I=X2[(a=I+8|0)+4>>2],X2[(o=o+8|0)>>2]=X2[a>>2],X2[o+4>>2]=I,a=X2[(o=x+8|0)+4>>2],X2[(n=n+8|0)>>2]=X2[o>>2],X2[n+4>>2]=a,o=X2[(n=M+8|0)+4>>2],X2[(i=i+8|0)>>2]=X2[n>>2],X2[i+4>>2]=o,i=X2[G+4>>2],X2[112+f>>2]=X2[G>>2],X2[116+f>>2]=i,o=X2[(n=e+688|0)+4>>2],X2[(i=40+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,n=X2[(i=e+680|0)+4>>2],X2[32+f>>2]=X2[i>>2],X2[36+f>>2]=n,o=X2[(n=e+704|0)+4>>2],X2[(i=24+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,i=X2[(e=e+696|0)+4>>2],X2[16+f>>2]=X2[e>>2],X2[20+f>>2]=i,A=0|N2[X2[X2[A>>2]+20>>2]](A),X2[(e=8+f|0)>>2]=0,X2[e+4>>2]=0,X2[f>>2]=0,X2[4+f>>2]=0,N2[X2[X2[A>>2]+80>>2]](A,32+f|0,16+f|0,112+f|0,f);break A;case 9:if(o=X2[(n=e+1244|0)+4>>2],X2[(i=_=120+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,o=X2[(n=e+1260|0)+4>>2],X2[(i=136+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,o=X2[(n=e+1276|0)+4>>2],X2[(i=152+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,o=X2[(n=e+1292|0)+4>>2],X2[(i=168+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,n=X2[(i=G=e+1236|0)+4>>2],X2[112+f>>2]=X2[i>>2],X2[116+f>>2]=n,n=X2[(i=I=e+1252|0)+4>>2],X2[128+f>>2]=X2[i>>2],X2[132+f>>2]=n,n=X2[(i=x=e+1268|0)+4>>2],X2[144+f>>2]=X2[i>>2],X2[148+f>>2]=n,n=X2[(i=M=e+1284|0)+4>>2],X2[160+f>>2]=X2[i>>2],X2[164+f>>2]=n,i=160+f|0,n=144+f|0,o=128+f|0,a&&(a=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[a>>2]+64>>2]](a,112+f|0,r),R=X2[(g=e+1356|0)+4>>2],X2[(a=i+8|0)>>2]=X2[g>>2],X2[a+4>>2]=R,g=X2[(a=e+1348|0)+4>>2],X2[i>>2]=X2[a>>2],X2[i+4>>2]=g,g=X2[(a=e+1316|0)+4>>2],X2[o>>2]=X2[a>>2],X2[o+4>>2]=g,R=X2[(g=e+1324|0)+4>>2],X2[(a=o+8|0)>>2]=X2[g>>2],X2[a+4>>2]=R,g=X2[(a=e+1332|0)+4>>2],X2[n>>2]=X2[a>>2],X2[n+4>>2]=g,R=X2[(g=e+1340|0)+4>>2],X2[(a=n+8|0)>>2]=X2[g>>2],X2[a+4>>2]=R,g=X2[(a=e+1308|0)+4>>2],X2[_>>2]=X2[a>>2],X2[_+4>>2]=g,_=X2[(a=e+1300|0)+4>>2],X2[112+f>>2]=X2[a>>2],X2[116+f>>2]=_,a=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[a>>2]+64>>2]](a,112+f|0,r)),!l)break A;a=X2[I+4>>2],X2[o>>2]=X2[I>>2],X2[o+4>>2]=a,a=X2[x+4>>2],X2[n>>2]=X2[x>>2],X2[n+4>>2]=a,a=X2[M+4>>2],X2[i>>2]=X2[M>>2],X2[i+4>>2]=a,g=X2[(_=G+8|0)+4>>2],X2[(a=l=120+f|0)>>2]=X2[_>>2],X2[a+4>>2]=g,R=X2[(g=I+8|0)+4>>2],X2[(a=_=o+8|0)>>2]=X2[g>>2],X2[a+4>>2]=R,D=X2[(R=x+8|0)+4>>2],X2[(a=g=n+8|0)>>2]=X2[R>>2],X2[a+4>>2]=D,H=X2[(D=M+8|0)+4>>2],X2[(a=R=i+8|0)>>2]=X2[D>>2],X2[a+4>>2]=H,a=X2[G+4>>2],X2[112+f>>2]=X2[G>>2],X2[116+f>>2]=a,U2[96+f>>2]=U2[l>>2],U2[100+f>>2]=U2[136+f>>2],X2[108+f>>2]=0,U2[104+f>>2]=U2[152+f>>2],U2[80+f>>2]=U2[112+f>>2],U2[84+f>>2]=U2[128+f>>2],X2[92+f>>2]=0,U2[88+f>>2]=U2[144+f>>2],b=U2[e+1060>>2],t=U2[e+1144>>2],c=U2[e+1148>>2],k=U2[e+1056>>2],D=0|N2[X2[X2[A>>2]+20>>2]](A),X2[(a=72+f|0)>>2]=0,X2[a+4>>2]=0,X2[64+f>>2]=0,X2[68+f>>2]=0,N2[X2[X2[D>>2]+72>>2]](D,a=e+1348|0,96+f|0,80+f|0,P2(r*P2(.8999999761581421)),k,b,t,c,f+64|0,P2(10),1),X2[92+f>>2]=0,k=U2[148+f>>2],U2[88+f>>2]=k,b=U2[132+f>>2],U2[84+f>>2]=b,t=U2[116+f>>2],U2[80+f>>2]=t,u=U2[e+1368>>2],s=U2[e+1372>>2],H=X2[(D=e+1308|0)+4>>2],X2[l>>2]=X2[D>>2],X2[l+4>>2]=H,D=X2[(l=e+1316|0)+4>>2],X2[o>>2]=X2[l>>2],X2[o+4>>2]=D,D=X2[(l=e+1324|0)+4>>2],X2[_>>2]=X2[l>>2],X2[_+4>>2]=D,_=X2[(l=e+1332|0)+4>>2],X2[n>>2]=X2[l>>2],X2[n+4>>2]=_,_=X2[(l=e+1340|0)+4>>2],X2[g>>2]=X2[l>>2],X2[g+4>>2]=_,l=X2[a+4>>2],X2[i>>2]=X2[a>>2],X2[i+4>>2]=l,_=X2[(l=e+1356|0)+4>>2],X2[R>>2]=X2[l>>2],X2[R+4>>2]=_,_=X2[(l=e+1300|0)+4>>2],X2[112+f>>2]=X2[l>>2],X2[116+f>>2]=_,c=o0(s),s=c0(s),U2[68+f>>2]=P2(b*s)-P2(t*c),B=o0(u),u=c0(u),U2[72+f>>2]=P2(P2(t*P2(s*B))+P2(b*P2(B*c)))+P2(k*u),U2[64+f>>2]=P2(P2(t*P2(u*s))+P2(b*P2(u*c)))-P2(B*k),X2[60+f>>2]=0,U2[56+f>>2]=-U2[144+f>>2],U2[52+f>>2]=-U2[128+f>>2],U2[48+f>>2]=-U2[112+f>>2],b=U2[e+968>>2],(t=U2[e+972>>2])>2]+20>>2]](A),X2[(_=40+f|0)>>2]=0,X2[_+4>>2]=0,X2[32+f>>2]=0,X2[36+f>>2]=0,N2[X2[X2[l>>2]+68>>2]](l,a,48+f|0,f+64|0,r,r,P2(-3.1415927410125732),P2(3.1415927410125732),32+f|0,0,P2(10))):b>2]+20>>2]](A),X2[(_=40+f|0)>>2]=0,X2[_+4>>2]=0,X2[32+f>>2]=0,X2[36+f>>2]=0,N2[X2[X2[l>>2]+68>>2]](l,a,48+f|0,f+64|0,r,r,b,t,32+f|0,1,P2(10))),a=X2[I+4>>2],X2[o>>2]=X2[I>>2],X2[o+4>>2]=a,a=X2[x+4>>2],X2[n>>2]=X2[x>>2],X2[n+4>>2]=a,a=X2[M+4>>2],X2[i>>2]=X2[M>>2],X2[i+4>>2]=a,_=X2[(l=G+8|0)+4>>2],X2[(a=120+f|0)>>2]=X2[l>>2],X2[a+4>>2]=_,I=X2[(a=I+8|0)+4>>2],X2[(o=o+8|0)>>2]=X2[a>>2],X2[o+4>>2]=I,a=X2[(o=x+8|0)+4>>2],X2[(n=n+8|0)>>2]=X2[o>>2],X2[n+4>>2]=a,o=X2[(n=M+8|0)+4>>2],X2[(i=i+8|0)>>2]=X2[n>>2],X2[i+4>>2]=o,i=X2[G+4>>2],X2[112+f>>2]=X2[G>>2],X2[116+f>>2]=i,o=X2[(n=e+688|0)+4>>2],X2[(i=40+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,n=X2[(i=e+680|0)+4>>2],X2[32+f>>2]=X2[i>>2],X2[36+f>>2]=n,o=X2[(n=e+704|0)+4>>2],X2[(i=24+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,i=X2[(e=e+696|0)+4>>2],X2[16+f>>2]=X2[e>>2],X2[20+f>>2]=i,A=0|N2[X2[X2[A>>2]+20>>2]](A),X2[(e=8+f|0)>>2]=0,X2[e+4>>2]=0,X2[f>>2]=0,X2[4+f>>2]=0,N2[X2[X2[A>>2]+80>>2]](A,32+f|0,16+f|0,112+f|0,f);break A;case 4:break e;default:break A;}o=X2[(n=e+832|0)+4>>2],X2[(i=G=120+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,o=X2[(n=e+848|0)+4>>2],X2[(i=136+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,o=X2[(n=e+864|0)+4>>2],X2[(i=152+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,o=X2[(n=e+880|0)+4>>2],X2[(i=168+f|0)>>2]=X2[n>>2],X2[i+4>>2]=o,n=X2[(i=I=e+824|0)+4>>2],X2[112+f>>2]=X2[i>>2],X2[116+f>>2]=n,n=X2[(i=e+840|0)+4>>2],X2[128+f>>2]=X2[i>>2],X2[132+f>>2]=n,n=X2[(i=e+856|0)+4>>2],X2[144+f>>2]=X2[i>>2],X2[148+f>>2]=n,n=X2[(i=e+872|0)+4>>2],X2[160+f>>2]=X2[i>>2],X2[164+f>>2]=n,i=160+f|0,n=144+f|0,o=128+f|0,a?(a=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[a>>2]+64>>2]](a,112+f|0,r),M=X2[(x=e+944|0)+4>>2],X2[(a=i+8|0)>>2]=X2[x>>2],X2[a+4>>2]=M,x=X2[(a=e+936|0)+4>>2],X2[i>>2]=X2[a>>2],X2[i+4>>2]=x,a=X2[(i=e+904|0)+4>>2],X2[o>>2]=X2[i>>2],X2[o+4>>2]=a,i=o+8|0,a=X2[(o=e+912|0)+4>>2],X2[i>>2]=X2[o>>2],X2[i+4>>2]=a,o=X2[(i=e+920|0)+4>>2],X2[n>>2]=X2[i>>2],X2[n+4>>2]=o,i=n+8|0,o=X2[(n=e+928|0)+4>>2],X2[i>>2]=X2[n>>2],X2[i+4>>2]=o,n=X2[(i=e+896|0)+4>>2],X2[G>>2]=X2[i>>2],X2[G+4>>2]=n,n=X2[(i=e+888|0)+4>>2],X2[112+f>>2]=X2[i>>2],X2[116+f>>2]=n,i=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[i>>2]+64>>2]](i,112+f|0,r)):(x=X2[(a=e+896|0)+4>>2],X2[G>>2]=X2[a>>2],X2[G+4>>2]=x,G=X2[(a=e+904|0)+4>>2],X2[o>>2]=X2[a>>2],X2[o+4>>2]=G,G=X2[(a=e+912|0)+4>>2],X2[(o=o+8|0)>>2]=X2[a>>2],X2[o+4>>2]=G,a=X2[(o=e+920|0)+4>>2],X2[n>>2]=X2[o>>2],X2[n+4>>2]=a,a=X2[(o=e+928|0)+4>>2],X2[(n=n+8|0)>>2]=X2[o>>2],X2[n+4>>2]=a,o=X2[(n=e+936|0)+4>>2],X2[i>>2]=X2[n>>2],X2[i+4>>2]=o,o=X2[(n=e+944|0)+4>>2],X2[(i=i+8|0)>>2]=X2[n>>2],X2[i+4>>2]=o,n=X2[(i=e+888|0)+4>>2],X2[112+f>>2]=X2[i>>2],X2[116+f>>2]=n),l&&(i=J2[e+180|0]?I:e+888|0,k=U2[i+48>>2],E=U2[i+8>>2],b=U2[i>>2],u=U2[i+4>>2],s=U2[i+52>>2],Q=U2[i+24>>2],t=U2[i+16>>2],B=U2[i+20>>2],v=U2[i+56>>2],Z=U2[i+40>>2],c=U2[i+32>>2],d=U2[i+36>>2],X2[108+f>>2]=0,Y=P2(Z*P2(0)),m=P2(d*P2(0)),Z=U2[e+184>>2],U2[104+f>>2]=v+P2(Y+P2(m+P2(c*Z))),Q=P2(Q*P2(0)),w=P2(B*P2(0)),U2[100+f>>2]=s+P2(Q+P2(w+P2(t*Z))),E=P2(E*P2(0)),N=P2(u*P2(0)),U2[96+f>>2]=k+P2(E+P2(N+P2(b*Z))),X2[92+f>>2]=0,J=v,v=U2[e+188>>2],U2[88+f>>2]=J+P2(Y+P2(m+P2(c*v))),U2[84+f>>2]=s+P2(Q+P2(w+P2(t*v))),U2[80+f>>2]=k+P2(E+P2(N+P2(b*v))),i=0|N2[X2[X2[A>>2]+20>>2]](A),X2[(n=72+f|0)>>2]=0,X2[n+4>>2]=0,X2[64+f>>2]=0,X2[68+f>>2]=0,N2[X2[X2[i>>2]+16>>2]](i,96+f|0,80+f|0,f+64|0),X2[76+f>>2]=0,U2[72+f>>2]=c,U2[68+f>>2]=t,U2[64+f>>2]=b,X2[60+f>>2]=0,U2[56+f>>2]=d,U2[52+f>>2]=B,U2[48+f>>2]=u,b=U2[e+196>>2],t=U2[e+192>>2],A=0|N2[X2[X2[A>>2]+20>>2]](A),X2[(i=40+f|0)>>2]=0,X2[i+4>>2]=0,X2[32+f>>2]=0,X2[36+f>>2]=0,N2[X2[X2[A>>2]+68>>2]](A,e+936|0,f+64|0,48+f|0,r,r,t,b,32+f|0,1,P2(10)))}K2=176+f|0},function(A){var e,r,f=0,i=0;if(1<=(0|(r=X2[(A|=0)+248>>2])))for(A=X2[A+256>>2];;){A:{e:switch(f=X2[A>>2],X2[f+220>>2]-2|0){case 0:case 3:break A;default:break e;}3&J2[f+204|0]||(U2[f+472>>2]=P2(U2[f+424>>2]*U2[f+408>>2])+U2[f+472>>2],U2[(e=f+476|0)>>2]=P2(U2[f+428>>2]*U2[f+412>>2])+U2[e>>2],U2[(e=f+480|0)>>2]=P2(U2[f+432>>2]*U2[f+416>>2])+U2[e>>2])}if(A=A+4|0,!((0|(i=i+1|0))<(0|r)))break}},o1,function(A,e){A|=0,e=P2(e);var r,f=0,i=0;if(1<=X2[A+296>>2])for(;;)if(r=X2[X2[A+304>>2]+f>>2],N2[X2[X2[r>>2]+8>>2]](r,A,e),f=f+4|0,!((0|(i=i+1|0))>2]))break},function(A){var e;return X2[(A|=0)>>2]=22660,(e=X2[A+80>>2])&&J2[A+84|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+80>>2]=0,S2[A+84|0]=1,X2[(e=A+72|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+60>>2])&&J2[A- -64|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+60>>2]=0,S2[A- -64|0]=1,X2[(e=A+52|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+40>>2])&&J2[A+44|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+40>>2]=0,S2[A+44|0]=1,X2[(e=A+32|0)>>2]=0,(X2[4+e>>2]=0)|A},function(A){var e;X2[(A|=0)>>2]=22660,(e=X2[A+80>>2])&&J2[A+84|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+80>>2]=0,S2[A+84|0]=1,X2[(e=A+72|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+60>>2])&&J2[A- -64|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+60>>2]=0,S2[A- -64|0]=1,X2[(e=A+52|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+40>>2])&&J2[A+44|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),n(A)},function(A,e,r,f,i,a){A|=0,e|=0,r|=0,f|=0,i|=0;var n,b=0,t=0,o=0,c=0,k=0,u=0,s=0;A:{e:{r:{if(0<=(0|(a|=0))){if(1<=(0|(b=X2[A+16>>2])))break r;break e}return a=X2[A+8>>2],void P2(N2[X2[X2[a>>2]+12>>2]](a,e,r,f,i,X2[A+12>>2],X2[A+16>>2],X2[A+4>>2],X2[A+20>>2],X2[A+24>>2]))}for(u=X2[A+12>>2];;){if(c=X2[u>>2],(0|a)==(0|(t=(0|(t=X2[X2[c+28>>2]+208>>2]))<=-1?X2[X2[c+32>>2]+208>>2]:t)))break e;if(u=u+4|0,(0|b)==(0|(o=o+1|0)))break}u=0;break A}if(!((0|b)<=(0|o)))for(t=b-o|0,b=X2[A+12>>2]+(o<<2)|0;;)if(c=X2[b>>2],b=b+4|0,s=((0|a)==(0|(o=(0|(o=X2[X2[c+28>>2]+208>>2]))<=-1?X2[X2[c+32>>2]+208>>2]:o)))+s|0,!(t=t-1|0))break}if(a=X2[A+4>>2],2<=X2[a+80>>2]){if(1<=(0|r))for(t=X2[A+36>>2],o=X2[A+32>>2];;){if(n=(k<<2)+e|0,(0|t)!=(0|o))b=o;else if((0|(c=t?t<<1:1))<=(0|t))b=t;else{if(a=0,c&&(X2[6258]=X2[6258]+1,(b=L2(19+(c<<2)|0))&&(X2[(a=b+19&-16)-4>>2]=b)),1<=(0|t))for(b=0,o=t;;)if(X2[a+b>>2]=X2[X2[A+40>>2]+b>>2],b=b+4|0,!(o=o-1|0))break;(b=X2[A+40>>2])&&J2[A+44|0]&&(X2[6259]=X2[6259]+1,q2(X2[b-4>>2]),t=X2[A+32>>2]),b=t,X2[A+40>>2]=a,S2[A+44|0]=1,t=X2[A+36>>2]=c}if(X2[A+32>>2]=o=b+1|0,X2[X2[A+40>>2]+(b<<2)>>2]=X2[n>>2],(0|(k=k+1|0))==(0|r))break}if(1<=(0|i))for(t=X2[A+56>>2],o=X2[A+52>>2],k=0;;){if(c=(k<<2)+f|0,(0|t)!=(0|o))b=o;else if((0|(e=t?t<<1:1))<=(0|t))b=t;else{if(a=0,e&&(X2[6258]=X2[6258]+1,(r=L2(19+(e<<2)|0))&&(X2[(a=r+19&-16)-4>>2]=r)),1<=(0|t))for(b=0,o=t;;)if(X2[a+b>>2]=X2[X2[A+60>>2]+b>>2],b=b+4|0,!(o=o-1|0))break;(r=X2[A+60>>2])&&J2[A+64|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2]),t=X2[A+52>>2]),b=t,X2[A+60>>2]=a,S2[A+64|0]=1,t=X2[A+56>>2]=e}if(X2[A+52>>2]=o=b+1|0,X2[X2[A+60>>2]+(b<<2)>>2]=X2[c>>2],(0|(k=k+1|0))==(0|i))break}if(s)for(t=X2[A+76>>2],o=X2[A+72>>2],k=0;;){if(f=(k<<2)+u|0,(0|t)!=(0|o))b=o;else if((0|(e=t?t<<1:1))<=(0|t))b=t;else{if(a=0,e&&(X2[6258]=X2[6258]+1,(r=L2(19+(e<<2)|0))&&(X2[(a=r+19&-16)-4>>2]=r)),1<=(0|t))for(b=0,o=t;;)if(X2[a+b>>2]=X2[X2[A+80>>2]+b>>2],b=b+4|0,!(o=o-1|0))break;(r=X2[A+80>>2])&&J2[A+84|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2]),t=X2[A+72>>2]),b=t,X2[A+80>>2]=a,S2[A+84|0]=1,t=X2[A+76>>2]=e}if(X2[A+72>>2]=o=b+1|0,X2[X2[A+80>>2]+(b<<2)>>2]=X2[f>>2],(0|s)==(0|(k=k+1|0)))break}else o=X2[A+72>>2];X2[X2[A+4>>2]+80>>2]<(X2[A+52>>2]+o|0)&&P4(A)}else t=X2[A+8>>2],P2(N2[X2[X2[t>>2]+12>>2]](t,e,r,f,i,u,s,a,X2[A+20>>2],X2[A+24>>2]))},A,function(A,e){var r,f,i=0;return(0|(r=X2[(e|=0)>>2]))!=(0|(f=X2[(A|=0)+84>>2]))&&X2[A+12>>2]&X2[e+4>>2]&&X2[e+8>>2]&X2[A+8>>2]&&(A=X2[A+96>>2],i=0|N2[X2[X2[A>>2]+28>>2]](A,f,r)),0|i},function(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n,b,t,o,c,k,u,s,l=0,B=P2(0),B=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(1));return(0|(l=X2[e>>2]))==X2[A+84>>2]||4&J2[l+204|0]||P2(-U2[A+88>>2])<=P2(P2(P2(P2(U2[A+32>>2]-U2[A+16>>2])*U2[e+8>>2])+P2(P2(U2[A+36>>2]-U2[A+20>>2])*U2[e+12>>2]))+P2(P2(U2[A+40>>2]-U2[A+24>>2])*U2[e+16>>2]))||(X2[A+80>>2]=l,U2[A+4>>2]=U2[e+40>>2],r?(l=X2[(r=e+8|0)+4>>2],X2[A+48>>2]=X2[r>>2],X2[A+52>>2]=l,a=X2[(r=r+8|0)+4>>2],X2[(l=A+56|0)>>2]=X2[r>>2],X2[l+4>>2]=a):(a=U2[l+12>>2],n=U2[l+8>>2],b=U2[l+28>>2],t=U2[l+20>>2],o=U2[l+24>>2],c=U2[l+44>>2],k=U2[l+36>>2],u=U2[l+40>>2],s=U2[l+4>>2],B=U2[e+16>>2],f=U2[e+8>>2],i=U2[e+12>>2],X2[A+60>>2]=0,U2[A+56>>2]=P2(P2(f*k)+P2(i*u))+P2(B*c),U2[A+52>>2]=P2(P2(f*t)+P2(i*o))+P2(B*b),U2[A+48>>2]=P2(P2(s*f)+P2(n*i))+P2(a*B)),r=X2[e+28>>2],X2[A+64>>2]=X2[e+24>>2],X2[A+68>>2]=r,l=X2[(r=e+32|0)+4>>2],X2[(A=A+72|0)>>2]=X2[r>>2],X2[A+4>>2]=l,B=U2[e+40>>2]),P2(B)},function(A){return j4(A|=0),0|A},function(A){j4(A|=0),X2[6259]=X2[6259]+1,q2(X2[A-4>>2])},function(A,e){A|=0,e=P2(e);var r,f,i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,x,G,C,h,F,y,V,p,M,S,X,J,Y,m=0,N=0,R=0,D=(P2(0),0),T=(P2(0),0),W=(P2(0),P2(0),0),I=(P2(0),P2(0),0);if(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2=Y=K2-496|0,1<=X2[A+324>>2])for(;;)if(T=X2[A+24>>2],N2[X2[X2[T>>2]+16>>2]](T,X2[X2[A+332>>2]+W>>2]),W=W+4|0,!((0|(N=N+1|0))>2]))break;if((T=X2[A+332>>2])&&J2[A+336|0]&&(X2[6259]=X2[6259]+1,q2(X2[T-4>>2])),X2[A+332>>2]=0,X2[A+324>>2]=0,X2[A+328>>2]=0,(S2[A+336|0]=1)<=(0|(x=X2[A+248>>2])))for(b=116+Y|0,s=84+Y|0,l=Y+64|0,T=384+Y|0,B=256+Y|0,v=240+Y|0,d=224+Y|0,c=304+Y|0,Z=368+Y|0,_=352+Y|0,o=480+Y|0,W=0;;){r=X2[X2[A+256>>2]+(W<<2)>>2],X2[r+268>>2]=1065353216;A:{e:switch(X2[r+220>>2]-2|0){case 0:case 3:break A;default:break e;}if(!(3&J2[r+204|0])&&(N4(D=r+4|0,U2[r+372>>2],U2[r+376>>2],U2[r+380>>2],r+388|0,e,432+Y|0),J2[A+44|0]&&(f=U2[r+276>>2],(a=P2(f*f))!=P2(0)&&(k=U2[480+Y>>2],f=P2(k-U2[(t=r+52|0)>>2]),i=P2(f*f),u=U2[484+Y>>2],f=P2(u-U2[r+56>>2]),n=P2(i+P2(f*f)),i=U2[488+Y>>2],f=P2(i-U2[r+60>>2]),a>2]+4>>2])&&(m=X2[4+t>>2],X2[_>>2]=X2[t>>2],X2[4+_>>2]=m,m=X2[4+o>>2],X2[Z>>2]=X2[o>>2],X2[4+Z>>2]=m,m=X2[(N=g=8+t|0)+4>>2],X2[(R=8+_|0)>>2]=X2[N>>2],X2[R+4>>2]=m,m=X2[(R=8+o|0)+4>>2],X2[(N=8+Z|0)>>2]=X2[R>>2],X2[N+4>>2]=m,X2[340+Y>>2]=1065353216,X2[336+Y>>2]=23256,X2[416+Y>>2]=0,X2[420+Y>>2]=0,X2[428+Y>>2]=A,X2[424+Y>>2]=r,X2[c>>2]=0,X2[4+c>>2]=0,X2[(m=8+c|0)>>2]=0,X2[m+4>>2]=0,X2[16+c>>2]=0,X2[284+Y>>2]=0,X2[288+Y>>2]=0,X2[300+Y>>2]=1065353216,X2[292+Y>>2]=1065353216,X2[296+Y>>2]=1065353216,X2[276+Y>>2]=8,X2[280+Y>>2]=0,X2[272+Y>>2]=14616,X2[328+Y>>2]=0,f=U2[r+272>>2],U2[308+Y>>2]=f,U2[324+Y>>2]=f,m=X2[r+188>>2],X2[344+Y>>2]=X2[m+4>>2],X2[348+Y>>2]=X2[m+8>>2],m=X2[R+4>>2],X2[(N=8+B|0)>>2]=X2[R>>2],X2[N+4>>2]=m,m=X2[4+o>>2],X2[B>>2]=X2[o>>2],X2[4+B>>2]=m,m=X2[(N=D+8|0)+4>>2],X2[(R=216+Y|0)>>2]=X2[N>>2],X2[R+4>>2]=m,m=X2[(N=r+20|0)+4>>2],X2[d>>2]=X2[N>>2],X2[4+d>>2]=m,m=X2[(N=r+28|0)+4>>2],X2[(R=8+d|0)>>2]=X2[N>>2],X2[R+4>>2]=m,m=X2[(N=r+36|0)+4>>2],X2[v>>2]=X2[N>>2],X2[4+v>>2]=m,m=X2[(N=r+44|0)+4>>2],X2[(R=8+v|0)>>2]=X2[N>>2],X2[R+4>>2]=m,m=X2[D+4>>2],X2[208+Y>>2]=X2[D>>2],X2[212+Y>>2]=m,X4(A,272+Y|0,D,208+Y|0,336+Y|0,P2(0)),(f=U2[340+Y>>2])>2])*f),n=P2(P2(k-U2[r+52>>2])*f),C=P2(f*P2(i-U2[r+60>>2])),a=P2(P2(P2(G*P2(-U2[388+Y>>2]))-P2(U2[384+Y>>2]*n))-P2(C*U2[392+Y>>2])),m=X2[A+24>>2],E=0|N2[X2[X2[m>>2]+12>>2]](m,r,X2[416+Y>>2]),(0|(N=X2[A+324>>2]))==X2[A+328>>2]&&!((0|(D=N?N<<1:1))<=(0|N))){if(R=0,D&&(X2[6258]=X2[6258]+1,(m=L2(19+(D<<2)|0))&&(X2[(R=m+19&-16)-4>>2]=m)),1<=(0|N))for(I=0,m=N;;)if(X2[R+I>>2]=X2[X2[A+332>>2]+I>>2],I=I+4|0,!(m=m-1|0))break;(m=X2[A+332>>2])&&J2[A+336|0]&&(X2[6259]=X2[6259]+1,q2(X2[m-4>>2]),N=X2[A+324>>2]),X2[A+332>>2]=R,S2[A+336|0]=1,X2[A+328>>2]=D}X2[X2[A+332>>2]+(N<<2)>>2]=E,X2[A+324>>2]=N+1,m=X2[416+Y>>2],h=U2[m+20>>2],F=U2[m+36>>2],y=U2[m+40>>2],V=U2[m+8>>2],p=U2[m+24>>2],Q=U2[m+60>>2],k=U2[m+56>>2],w=U2[m+52>>2],M=U2[m+44>>2],S=U2[m+12>>2],X=U2[m+28>>2],J=U2[m+4>>2],u=U2[r+60>>2],i=U2[r+52>>2],f=U2[r+56>>2],X2[(m=8+Y|0)>>2]=0,X2[m+4>>2]=0,X2[s>>2]=0,X2[4+s>>2]=0,X2[(m=8+s|0)>>2]=0,X2[m+4>>2]=0,X2[b>>2]=0,X2[4+b>>2]=0,X2[(m=8+b|0)>>2]=0,X2[m+4>>2]=0,X2[(m=16+b|0)>>2]=0,X2[m+4>>2]=0,X2[(m=24+b|0)>>2]=0,X2[m+4>>2]=0,X2[(m=32+b|0)>>2]=0,X2[m+4>>2]=0,X2[(m=40+b|0)>>2]=0,X2[m+4>>2]=0,X2[48+b>>2]=0,m=X2[T+4>>2],X2[l>>2]=X2[T>>2],X2[4+l>>2]=m,m=X2[(N=T+8|0)+4>>2],X2[(R=8+l|0)>>2]=X2[N>>2],X2[R+4>>2]=m,X2[Y>>2]=0,X2[4+Y>>2]=0,X2[28+Y>>2]=0,U2[80+Y>>2]=a,n=P2(n+i),a=P2(G+f),i=P2(C+u),f=P2(-k),U2[24+Y>>2]=P2(P2(P2(S*n)+P2(X*a))+P2(M*i))+P2(P2(P2(X*f)-P2(S*w))-P2(M*Q)),U2[20+Y>>2]=P2(P2(P2(n*V)+P2(a*p))+P2(i*y))+P2(P2(P2(p*f)-P2(V*w))-P2(y*Q)),U2[16+Y>>2]=P2(P2(P2(n*J)+P2(a*h))+P2(i*F))+P2(P2(P2(h*f)-P2(J*w))-P2(F*Q)),X2[200+Y>>2]=X2[r+192>>2],X2[204+Y>>2]=X2[420+Y>>2],D=H2(D1(E,Y),208)+E|0,X2[D+100>>2]=0,U2[D+88>>2]=m2(P2(z2(P2(U2[r+228>>2]*U2[X2[416+Y>>2]+228>>2]),P2(-10))),P2(10)),m=X2[4+g>>2],X2[(N=D+60|0)>>2]=X2[g>>2],X2[N+4>>2]=m,R=X2[4+t>>2],N=X2[t>>2],X2[D+48>>2]=0,U2[D+44>>2]=i,U2[D+40>>2]=a,X2[(m=D+52|0)>>2]=N,X2[m+4>>2]=R,U2[D+36>>2]=n}}if((0|x)==(0|(W=W+1|0)))break}K2=496+Y|0},function(A){var e=0,r=0,f=0,i=0;if(1<=X2[(A|=0)+248>>2])for(;;){A:{e:switch(e=X2[X2[A+256>>2]+f>>2],X2[e+220>>2]-2|0){case 0:case 3:break A;default:break e;}2&(r=X2[e+204>>2])||(U2[e+504>>2]==P2(1)?(X2[e+472>>2]=0,X2[e+476>>2]=0,X2[(r=e+480|0)>>2]=0,X2[r+4>>2]=0):3&r||(U2[e+472>>2]=P2(U2[e+424>>2]*U2[e+408>>2])+U2[e+472>>2],U2[(r=e+476|0)>>2]=P2(U2[e+428>>2]*U2[e+412>>2])+U2[r>>2],U2[(r=e+480|0)>>2]=P2(U2[e+432>>2]*U2[e+416>>2])+U2[r>>2]),U2[e+508>>2]==P2(1)&&(X2[e+488>>2]=0,X2[e+492>>2]=0,X2[(e=e+496|0)>>2]=0,X2[e+4>>2]=0))}if(f=f+4|0,!((0|(i=i+1|0))>2]))break}},e,A,function(A,e,r){return A|=0,X2[(r|=A=0)+8>>2]&X2[(e|=0)+4>>2]&&X2[e+8>>2]&X2[r+4>>2]&&(e=X2[e>>2],r=X2[r>>2],1&S2[r+204|0]&&1&S2[e+204|0]||2==X2[r+220>>2]&&2==X2[e+220>>2]||(A=1)),0|A},A,function(A,e){var r,f,i=0;return(0|(r=X2[(e|=0)>>2]))!=(0|(f=X2[(A|=0)+88>>2]))&&X2[A+12>>2]&X2[e+4>>2]&&X2[e+8>>2]&X2[A+8>>2]&&(A=X2[X2[A+92>>2]+24>>2],i=0|N2[X2[X2[A>>2]+28>>2]](A,f,r)),0|i},function(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n,b,t,o,c,k,u,s,l,B=0;return P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),U2[A+4>>2]=U2[e+40>>2],B=X2[e>>2],X2[A+80>>2]=B,X2[A+84>>2]=X2[X2[e+4>>2]+8>>2],r?(r=X2[e+12>>2],X2[A+48>>2]=X2[e+8>>2],X2[A+52>>2]=r,n=X2[(B=e+16|0)+4>>2],X2[(r=A+56|0)>>2]=X2[B>>2],X2[r+4>>2]=n):(n=U2[B+8>>2],b=U2[B+12>>2],t=U2[B+20>>2],o=U2[B+24>>2],c=U2[B+28>>2],k=U2[B+36>>2],u=U2[B+40>>2],f=U2[e+12>>2],s=U2[B+44>>2],i=U2[e+16>>2],l=U2[B+4>>2],a=U2[e+8>>2],X2[A+60>>2]=0,U2[A+56>>2]=P2(P2(a*k)+P2(f*u))+P2(i*s),U2[A+52>>2]=P2(P2(a*t)+P2(f*o))+P2(i*c),U2[A+48>>2]=P2(P2(l*a)+P2(n*f))+P2(b*i)),r=X2[e+28>>2],X2[A+64>>2]=X2[e+24>>2],X2[A+68>>2]=r,B=X2[(r=e+32|0)+4>>2],X2[(A=A+72|0)>>2]=X2[r>>2],X2[A+4>>2]=B,P2(U2[e+40>>2])},L4,function(A){A|=0;var e,r,f,i,a,n,x,y,V,p,M,S,X,J,U,H,P,j,z,b,t=0,o=P2(0),c=P2(0),k=P2(0),u=P2(0),s=0,l=P2(0),B=0,v=P2(0),d=P2(0),Z=0,_=P2(0),g=P2(0),E=P2(0),Q=P2(0),w=P2(0),G=P2(0),C=P2(0),h=P2(0),F=P2(0),Y=P2(0),m=P2(0),N=P2(0),R=P2(0),D=(P2(0),P2(0)),T=P2(0),W=(P2(0),P2(0),P2(0)),I=(P2(0),0),O=0,K=0,L=0,q=0,$=0,A2=0,e2=0,r2=0,f2=0,i2=0,a2=0,n2=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0));K2=b=K2-176|0,J2[A+738|0]&&(X2[A+744>>2]=0,X2[A+36>>2]=0,J2[A+736|0]||(k=U2[A+664>>2],s=X2[A+32>>2],F=U2[s+4>>2],u=U2[A+668>>2],E=U2[s+8>>2],Y=U2[A+672>>2],w=U2[s+12>>2],D=P2(P2(P2(P2(k*F)+P2(u*E))+P2(Y*w))+U2[s+52>>2]),g=U2[A+600>>2],t=X2[A+28>>2],c=U2[A+604>>2],o=U2[A+608>>2],W=P2(P2(P2(P2(g*U2[t+4>>2])+P2(c*U2[t+8>>2]))+P2(o*U2[t+12>>2]))+U2[t+52>>2]),Q=P2(D-W),C=U2[s+20>>2],h=U2[s+24>>2],v=U2[s+28>>2],m=P2(P2(P2(P2(k*C)+P2(u*h))+P2(Y*v))+U2[s+56>>2]),N=P2(P2(P2(P2(g*U2[t+20>>2])+P2(c*U2[t+24>>2]))+P2(o*U2[t+28>>2]))+U2[t+56>>2]),d=P2(m-N),T=k,k=U2[s+36>>2],n2=u,u=U2[s+40>>2],R=P2(P2(P2(P2(T*k)+P2(n2*u))+P2(Y*U2[s+44>>2]))+U2[s+60>>2]),Y=P2(P2(P2(P2(g*U2[t+36>>2])+P2(c*U2[t+40>>2]))+P2(o*U2[t+44>>2]))+U2[t+60>>2]),c=P2(R-Y),o=(o=P2(P2(P2(Q*Q)+P2(d*d))+P2(c*c)))>P2(1.1920928955078125e-7)?(o=P2(P2(1)/P2(O2(o))),l=P2(c*o),_=P2(d*o),P2(Q*o)):P2(1),X2[140+b>>2]=0,U2[132+b>>2]=_,U2[128+b>>2]=o,U2[136+b>>2]=l,a2=160+b|0,t=144+b|0,P2(j2(l))>P2(.7071067690849304)?(c=P2(P2(l*l)+P2(_*_)),g=P2(P2(1)/P2(O2(c))),Q=P2(c*g),d=P2(g*P2(-l)),c=P2(o*d),l=P2(_*g),_=P2(l*P2(-o))):(c=P2(P2(o*o)+P2(_*_)),d=P2(P2(1)/P2(O2(c))),c=P2(c*d),G=P2(d*P2(-_)),_=P2(l*G),d=P2(o*d),Q=P2(d*P2(-l)),l=P2(0)),U2[168+b>>2]=c,U2[164+b>>2]=_,U2[152+b>>2]=l,U2[148+b>>2]=d,U2[160+b>>2]=Q,U2[144+b>>2]=G,X2[(I=108+b|0)>>2]=0,B=X2[A+28>>2],U2[(Z=100+b|0)>>2]=U2[B+24>>2],U2[(O=104+b|0)>>2]=U2[B+40>>2],U2[(K=116+b|0)>>2]=U2[B+28>>2],X2[92+b>>2]=0,U2[80+b>>2]=U2[B+4>>2],U2[84+b>>2]=U2[B+20>>2],U2[88+b>>2]=U2[B+36>>2],U2[96+b>>2]=U2[B+8>>2],U2[112+b>>2]=U2[B+12>>2],X2[(L=124+b|0)>>2]=0,U2[(q=120+b|0)>>2]=U2[B+44>>2],U2[($=68+b|0)>>2]=v,X2[(A2=60+b|0)>>2]=0,U2[(e2=56+b|0)>>2]=u,U2[(r2=52+b|0)>>2]=h,X2[(f2=76+b|0)>>2]=0,U2[(i2=72+b|0)>>2]=U2[s+44>>2],U2[64+b>>2]=w,U2[48+b>>2]=E,X2[44+b>>2]=0,U2[40+b>>2]=k,U2[36+b>>2]=C,U2[32+b>>2]=F,X2[28+b>>2]=0,U2[24+b>>2]=Y-U2[B+60>>2],U2[20+b>>2]=N-U2[B+56>>2],U2[16+b>>2]=W-U2[B+52>>2],X2[12+b>>2]=0,U2[8+b>>2]=R-U2[s+60>>2],U2[4+b>>2]=m-U2[s+56>>2],U2[b>>2]=D-U2[s+52>>2],U4(A+48|0,80+b|0,32+b|0,16+b|0,b,128+b|0,B+456|0,U2[B+404>>2],s+456|0,U2[s+404>>2]),X2[I>>2]=0,s=X2[A+28>>2],U2[Z>>2]=U2[s+24>>2],U2[O>>2]=U2[s+40>>2],U2[K>>2]=U2[s+28>>2],X2[92+b>>2]=0,U2[80+b>>2]=U2[s+4>>2],U2[84+b>>2]=U2[s+20>>2],U2[88+b>>2]=U2[s+36>>2],U2[96+b>>2]=U2[s+8>>2],U2[112+b>>2]=U2[s+12>>2],X2[L>>2]=0,U2[q>>2]=U2[s+44>>2],X2[A2>>2]=0,B=X2[A+32>>2],U2[r2>>2]=U2[B+24>>2],U2[e2>>2]=U2[B+40>>2],U2[$>>2]=U2[B+28>>2],X2[44+b>>2]=0,U2[32+b>>2]=U2[B+4>>2],U2[36+b>>2]=U2[B+20>>2],U2[40+b>>2]=U2[B+36>>2],U2[48+b>>2]=U2[B+8>>2],U2[64+b>>2]=U2[B+12>>2],X2[f2>>2]=0,U2[i2>>2]=U2[B+44>>2],X2[28+b>>2]=0,U2[24+b>>2]=Y-U2[s+60>>2],U2[20+b>>2]=N-U2[s+56>>2],U2[16+b>>2]=W-U2[s+52>>2],X2[12+b>>2]=0,U2[8+b>>2]=R-U2[B+60>>2],U2[4+b>>2]=m-U2[B+56>>2],U2[b>>2]=D-U2[B+52>>2],U4(A+132|0,80+b|0,32+b|0,16+b|0,b,t,s+456|0,U2[s+404>>2],B+456|0,U2[B+404>>2]),X2[I>>2]=0,t=Z,Z=X2[A+28>>2],U2[t>>2]=U2[Z+24>>2],U2[O>>2]=U2[Z+40>>2],U2[K>>2]=U2[Z+28>>2],X2[92+b>>2]=0,U2[80+b>>2]=U2[Z+4>>2],U2[84+b>>2]=U2[Z+20>>2],U2[88+b>>2]=U2[Z+36>>2],U2[96+b>>2]=U2[Z+8>>2],U2[112+b>>2]=U2[Z+12>>2],X2[L>>2]=0,U2[q>>2]=U2[Z+44>>2],X2[A2>>2]=0,t=X2[A+32>>2],U2[r2>>2]=U2[t+24>>2],U2[e2>>2]=U2[t+40>>2],U2[$>>2]=U2[t+28>>2],X2[44+b>>2]=0,U2[32+b>>2]=U2[t+4>>2],U2[36+b>>2]=U2[t+20>>2],U2[40+b>>2]=U2[t+36>>2],U2[48+b>>2]=U2[t+8>>2],U2[64+b>>2]=U2[t+12>>2],X2[f2>>2]=0,U2[i2>>2]=U2[t+44>>2],X2[28+b>>2]=0,U2[24+b>>2]=Y-U2[Z+60>>2],U2[20+b>>2]=N-U2[Z+56>>2],U2[16+b>>2]=W-U2[Z+52>>2],X2[12+b>>2]=0,U2[8+b>>2]=R-U2[t+60>>2],U2[4+b>>2]=m-U2[t+56>>2],U2[b>>2]=D-U2[t+52>>2],U4(A+216|0,80+b|0,32+b|0,16+b|0,b,a2,Z+456|0,U2[Z+404>>2],t+456|0,U2[t+404>>2])),i=U2[A+576>>2],n=U2[A+560>>2],a=U2[A+592>>2],o=P2(j2(a))>P2(.7071067690849304)?(o=P2(P2(i*i)+P2(a*a)),c=P2(P2(1)/P2(O2(o))),l=P2(o*c),g=P2(c*P2(-a)),_=P2(n*g),G=P2(0),Q=P2(i*c),P2(Q*P2(-n))):(o=P2(P2(n*n)+P2(i*i)),c=P2(P2(1)/P2(O2(o))),_=P2(o*c),g=P2(n*c),l=P2(g*P2(-a)),Q=P2(0),G=P2(c*P2(-i)),P2(a*G)),e=X2[A+32>>2],F=U2[(U=e+36|0)>>2],E=U2[(H=e+20|0)>>2],w=U2[(P=e+40|0)>>2],C=U2[(j=e+24|0)>>2],h=U2[(z=e+8|0)>>2],v=U2[(s=e+44|0)>>2],k=U2[(B=e+28|0)>>2],u=U2[(I=e+12|0)>>2],r=X2[A+28>>2],x=U2[(Z=r+44|0)>>2],y=U2[(O=r+36|0)>>2],V=U2[(K=r+40|0)>>2],p=U2[(L=r+12|0)>>2],M=U2[(q=r+8|0)>>2],S=U2[($=r+28|0)>>2],X=U2[(A2=r+20|0)>>2],J=U2[(e2=r+24|0)>>2],c=U2[e+4>>2],f=U2[r+4>>2],X2[A+344>>2]=0,X2[A+328>>2]=0,X2[(t=A+308|0)>>2]=0,X2[t+4>>2]=0,X2[A+300>>2]=0,X2[A+304>>2]=0,m=P2(P2(P2(G*f)+P2(g*M))+P2(Q*p)),d=P2(P2(P2(G*X)+P2(g*J))+P2(Q*S)),N=P2(P2(P2(G*y)+P2(g*V))+P2(Q*x)),R=P2(P2(P2(p*m)+P2(S*d))+P2(x*N)),U2[A+324>>2]=R,Y=P2(P2(P2(M*m)+P2(J*d))+P2(V*N)),U2[A+320>>2]=Y,g=P2(P2(P2(f*m)+P2(X*d))+P2(y*N)),U2[A+316>>2]=g,T=k,k=P2(-d),Q=P2(P2(P2(T*k)-P2(m*u))-P2(N*v)),U2[A+340>>2]=Q,d=P2(P2(P2(C*k)-P2(m*h))-P2(N*w)),U2[A+336>>2]=d,E=P2(P2(P2(E*k)-P2(m*c))-P2(N*F)),U2[A+332>>2]=E,k=U2[(r2=r+460|0)>>2],u=U2[(f2=r+464|0)>>2],c=U2[r+456>>2],X2[A+360>>2]=0,w=P2(R*u),U2[A+356>>2]=w,C=P2(Y*k),U2[A+352>>2]=C,h=P2(g*c),U2[A+348>>2]=h,v=U2[(i2=e+460|0)>>2],u=U2[(a2=e+464|0)>>2],c=U2[e+456>>2],X2[A+376>>2]=0,k=P2(Q*u),U2[A+372>>2]=k,u=P2(d*v),U2[A+368>>2]=u,c=P2(E*c),U2[A+364>>2]=c,U2[A+380>>2]=P2(P2(P2(g*h)+P2(Y*C))+P2(R*w))+P2(P2(P2(E*c)+P2(d*u))+P2(Q*k)),D=U2[O>>2],W=U2[A2>>2],m=U2[K>>2],N=U2[q>>2],R=U2[e2>>2],Y=U2[Z>>2],g=U2[L>>2],Q=U2[$>>2],d=U2[U>>2],F=U2[H>>2],E=U2[P>>2],w=U2[j>>2],C=U2[z>>2],h=U2[s>>2],v=U2[B>>2],k=U2[I>>2],u=U2[r+4>>2],c=U2[e+4>>2],X2[A+428>>2]=0,X2[A+412>>2]=0,X2[(t=A+392|0)>>2]=0,X2[t+4>>2]=0,X2[(t=A+384|0)>>2]=0,X2[t+4>>2]=0,T=v,G=P2(P2(P2(l*X)+P2(o*J))+P2(_*S)),v=P2(-G),n2=k,k=P2(P2(P2(l*f)+P2(o*M))+P2(_*p)),o=P2(P2(P2(l*y)+P2(o*V))+P2(_*x)),l=P2(P2(P2(T*v)-P2(n2*k))-P2(h*o)),U2[A+424>>2]=l,_=P2(P2(P2(w*v)-P2(k*C))-P2(o*E)),U2[A+420>>2]=_,d=P2(P2(P2(F*v)-P2(k*c))-P2(o*d)),U2[A+416>>2]=d,F=P2(P2(P2(k*g)+P2(G*Q))+P2(o*Y)),U2[A+408>>2]=F,E=P2(P2(P2(k*N)+P2(G*R))+P2(o*m)),U2[A+404>>2]=E,w=P2(P2(P2(k*u)+P2(G*W))+P2(o*D)),U2[A+400>>2]=w,u=U2[r2>>2],c=U2[f2>>2],o=U2[r+456>>2],X2[A+444>>2]=0,C=P2(F*c),U2[A+440>>2]=C,h=P2(E*u),U2[A+436>>2]=h,v=P2(w*o),U2[A+432>>2]=v,k=U2[i2>>2],c=U2[a2>>2],o=U2[e+456>>2],X2[A+460>>2]=0,u=P2(l*c),U2[A+456>>2]=u,c=P2(_*k),U2[A+452>>2]=c,o=P2(d*o),U2[A+448>>2]=o,U2[A+464>>2]=P2(P2(P2(w*v)+P2(E*h))+P2(F*C))+P2(P2(P2(d*o)+P2(_*c))+P2(l*u)),W=U2[O>>2],m=U2[A2>>2],N=U2[K>>2],R=U2[q>>2],Y=U2[e2>>2],g=U2[Z>>2],Q=U2[L>>2],d=U2[$>>2],F=U2[U>>2],E=U2[H>>2],w=U2[P>>2],C=U2[j>>2],h=U2[z>>2],v=U2[s>>2],k=U2[B>>2],u=U2[I>>2],c=U2[r+4>>2],o=U2[e+4>>2],X2[A+512>>2]=0,X2[A+496>>2]=0,X2[(t=A+476|0)>>2]=0,X2[t+4>>2]=0,X2[(t=A+468|0)>>2]=0,X2[t+4>>2]=0,T=k,G=P2(P2(P2(n*X)+P2(i*J))+P2(a*S)),k=P2(-G),f=P2(P2(P2(n*f)+P2(i*M))+P2(a*p)),T=P2(P2(T*k)-P2(u*f)),u=P2(P2(P2(n*y)+P2(i*V))+P2(a*x)),l=P2(T-P2(v*u)),U2[A+508>>2]=l,_=P2(P2(P2(C*k)-P2(f*h))-P2(u*w)),U2[A+504>>2]=_,D=P2(P2(P2(E*k)-P2(f*o))-P2(u*F)),U2[A+500>>2]=D,F=P2(P2(P2(f*Q)+P2(G*d))+P2(u*g)),U2[A+492>>2]=F,E=P2(P2(P2(f*R)+P2(G*Y))+P2(u*N)),U2[A+488>>2]=E,w=P2(P2(P2(f*c)+P2(G*m))+P2(u*W)),U2[A+484>>2]=w,u=U2[r2>>2],c=U2[f2>>2],o=U2[r+456>>2],X2[A+528>>2]=0,C=P2(F*c),U2[A+524>>2]=C,h=P2(E*u),U2[A+520>>2]=h,v=P2(w*o),U2[A+516>>2]=v,k=U2[i2>>2],c=U2[a2>>2],o=U2[e+456>>2],X2[A+724>>2]=0,X2[A+544>>2]=0,u=P2(l*c),U2[A+540>>2]=u,c=P2(_*k),U2[A+536>>2]=c,o=P2(D*o),U2[A+532>>2]=o,U2[A+548>>2]=P2(P2(P2(w*v)+P2(E*h))+P2(F*C))+P2(P2(P2(D*o)+P2(_*c))+P2(l*u)),o=q4(A,r+4|0,e+4|0),X2[(t=A+708|0)>>2]=0,X2[t+4>>2]=0,U2[A+728>>2]=o,S2[A+716|0]=0,(c=U2[A+692>>2])>=P2(0)&&((l=b2(P2(o-U2[A+688>>2])))P2(3.1415927410125732)&&(l=P2(l+P2(-6.2831854820251465))),P2(-c)>l?(X2[A+712>>2]=1065353216,S2[A+716|0]=1,U2[A+708>>2]=-P2(c+l)):c>2]=-1082130432,S2[A+716|0]=1,U2[A+708>>2]=c-l)),u=U2[(Z=A)+560>>2],t=X2[A+28>>2],c=U2[A+576>>2],o=U2[A+592>>2],v=P2(P2(P2(u*U2[t+4>>2])+P2(c*U2[t+8>>2]))+P2(o*U2[t+12>>2])),k=P2(P2(P2(u*U2[t+20>>2])+P2(c*U2[t+24>>2]))+P2(o*U2[t+28>>2])),o=P2(P2(P2(u*U2[t+36>>2])+P2(c*U2[t+40>>2]))+P2(o*U2[t+44>>2])),A=X2[A+32>>2],U2[Z+720>>2]=P2(1)/P2(P2(P2(P2(v*P2(P2(P2(v*U2[t+324>>2])+P2(k*U2[t+340>>2]))+P2(o*U2[t+356>>2])))+P2(k*P2(P2(P2(v*U2[t+328>>2])+P2(k*U2[t+344>>2]))+P2(o*U2[t+360>>2]))))+P2(o*P2(P2(P2(v*U2[t+332>>2])+P2(k*U2[t+348>>2]))+P2(o*U2[t+364>>2]))))+P2(P2(P2(v*P2(P2(P2(v*U2[A+324>>2])+P2(k*U2[A+340>>2]))+P2(o*U2[A+356>>2])))+P2(k*P2(P2(P2(v*U2[A+328>>2])+P2(k*U2[A+344>>2]))+P2(o*U2[A+360>>2]))))+P2(o*P2(P2(P2(v*U2[A+332>>2])+P2(k*U2[A+348>>2]))+P2(o*U2[A+364>>2])))))),K2=176+b|0},function(A,e){A|=0,e|=0;var r,f,i=P2(0);if(P2(0),J2[A+738|0])X2[e>>2]=0,X2[e+4>>2]=0;else{X2[e>>2]=5,X2[e+4>>2]=1,i=q4(A,X2[A+28>>2]+4|0,X2[A+32>>2]+4|0),X2[(f=A+708|0)>>2]=0,X2[4+f>>2]=0,U2[A+728>>2]=i,S2[A+716|0]=0;A:{e:{if((r=U2[A+692>>2])>=P2(0)){if((i=b2(P2(i-U2[A+688>>2])))P2(3.1415927410125732)&&(i=P2(i+P2(-6.2831854820251465))),P2(-r)>i){X2[A+712>>2]=1065353216,S2[A+716|0]=1,U2[A+708>>2]=-P2(r+i);break e}if(r>2]=-1082130432,S2[A+716|0]=1,U2[A+708>>2]=r-i;break e}}if(!J2[A+737|0])break A}X2[e>>2]=X2[e>>2]+1,X2[e+4>>2]=X2[e+4>>2]-1}}},function(A,e){A|=0,e|=0;var x,r=P2(0),f=P2(0),i=P2(0),a=0,n=0,b=P2(0),t=P2(0),o=0,c=P2(0),k=0,u=P2(0),s=P2(0),l=P2(0),B=P2(0),v=P2(0),d=P2(0),Z=P2(0),_=P2(0),g=P2(0),E=0,Q=P2(0),w=0,G=P2(0),C=P2(0),h=P2(0),F=P2(0),Y=0,m=0,N=P2(0),R=P2(0),D=P2(0),T=P2(0),y=0,V=P2(0),p=P2(0),M=P2(0),S=P2(0),X=P2(0),J=P2(0),U=P2(0),H=0,P=P2(0),j=P2(0),z=P2(0),O=P2(0),K=P2(0),L=P2(0),q=P2(0),$=P2(0),A2=P2(0),e2=P2(0),r2=P2(0),f2=P2(0),i2=P2(0),o=X2[e+24>>2],W=X2[A+32>>2],I=X2[A+28>>2];A:if(J2[A+739|0]){if(i=U2[X2[A+32>>2]+404>>2],L=U2[X2[A+28>>2]+404>>2],r=(r=P2(i+L))>P2(0)?P2(i/r):P2(.5),f=P2(P2(1)-r),l=U2[W+36>>2],c=U2[A+664>>2],u=U2[W+40>>2],g=U2[A+668>>2],v=U2[W+44>>2],b=U2[A+672>>2],s=U2[W+60>>2],q=P2(P2(P2(P2(l*c)+P2(u*g))+P2(v*b))+s),p=G=P2(q-s),s=U2[A+560>>2],_=U2[I+36>>2],Z=U2[A+576>>2],d=U2[I+40>>2],t=U2[A+592>>2],h=U2[I+44>>2],P=P2(P2(P2(s*_)+P2(Z*d))+P2(t*h)),B=U2[A+624>>2],T=P2(B*l),l=U2[A+640>>2],T=P2(T+P2(l*u)),u=U2[A+656>>2],j=P2(T+P2(u*v)),v=P2(P2(P*r)+P2(j*f)),V=P2((T=v)*v),F=U2[I+4>>2],N=U2[I+8>>2],R=U2[I+12>>2],z=P2(P2(P2(F*s)+P2(N*Z))+P2(R*t)),Q=U2[W+4>>2],C=U2[W+8>>2],M=U2[W+12>>2],O=P2(P2(P2(Q*B)+P2(C*l))+P2(M*u)),v=P2(P2(z*r)+P2(O*f)),D=U2[I+20>>2],X=U2[I+24>>2],K=U2[I+28>>2],J=P2(P2(P2(s*D)+P2(Z*X))+P2(t*K)),S=U2[W+20>>2],t=l,l=U2[W+24>>2],s=u,u=U2[W+28>>2],U=P2(P2(P2(B*S)+P2(t*l))+P2(s*u)),t=P2(P2(J*r)+P2(U*f)),B=P2(P2(1)/P2(O2(P2(V+P2(P2(v*v)+P2(t*t)))))),s=P2(T*B),T=P2(G*s),Z=U2[W+52>>2],M=P2(Z+P2(P2(P2(Q*c)+P2(C*g))+P2(M*b))),G=P2(M-Z),Z=P2(v*B),l=P2(P2(P2(S*c)+P2(l*g))+P2(u*b)),c=U2[W+56>>2],S=P2(l+c),l=P2(S-c),g=P2(t*B),c=P2(T+P2(P2(G*Z)+P2(l*g))),u=P2(s*c),$=P2(p-u),b=U2[A+600>>2],t=U2[A+604>>2],B=U2[A+608>>2],v=U2[I+60>>2],A2=P2(P2(P2(P2(_*b)+P2(d*t))+P2(h*B))+v),Q=P2(A2-v),v=U2[I+52>>2],e2=P2(v+P2(P2(P2(F*b)+P2(N*t))+P2(R*B))),C=P2(e2-v),v=P2(P2(P2(D*b)+P2(X*t))+P2(K*B)),b=U2[I+56>>2],r2=P2(v+b),B=P2(r2-b),b=P2(P2(s*Q)+P2(P2(C*Z)+P2(B*g))),V=P2(s*b),u=P2(V-u),t=P2($-P2(f*u)),v=l,l=P2(g*c),f2=P2(v-l),i2=P2(g*b),p=P2(i2-l),l=P2(f2-P2(f*p)),c=P2(Z*c),T=P2(G-c),b=P2(Z*b),c=P2(b-c),v=P2(T-P2(f*c)),V=P2(Q-V),G=P2(V+P2(r*u)),u=P2(B-i2),Q=P2(u+P2(r*p)),b=P2(C-b),C=P2(b+P2(r*c)),n=LP2(1.1920928955078125e-7)?(u=i,i=P2(P2(1)/P2(O2(b))),b=P2(u*i),c=P2(c*i),i=P2(B*i)):(b=U2[A+556>>2],B=U2[A+572>>2],u=U2[A+588>>2],i=P2(P2(P2(F*b)+P2(N*B))+P2(R*u)),c=P2(P2(P2(b*D)+P2(B*X))+P2(u*K)),b=P2(P2(P2(b*_)+P2(B*d))+P2(u*h))),a=X2[e+12>>2],U2[a+8>>2]=P2(C*c)-P2(Q*i),U2[a+4>>2]=P2(G*i)-P2(C*b),U2[a>>2]=P2(Q*b)-P2(G*c),a=X2[e+20>>2],U2[a+8>>2]=-P2(P2(v*c)-P2(l*i)),U2[a+4>>2]=-P2(P2(t*i)-P2(v*b)),U2[a>>2]=-P2(P2(l*b)-P2(t*c)),d=P2(P2(s*i)-P2(Z*b)),h=P2(P2(g*b)-P2(s*c)),u=P2(P2(v*d)-P2(l*h)),B=P2(P2(Z*c)-P2(g*i)),_=P2(P2(t*h)-P2(v*B)),N=P2(P2(l*B)-P2(t*d)),R=P2(P2(C*d)-P2(Q*h)),D=P2(P2(G*h)-P2(C*B)),F=P2(P2(Q*B)-P2(G*d)),n&&J2[A+716|0]&&(R=P2(r*R),D=P2(r*D),F=P2(r*F),u=P2(f*u),_=P2(f*_),N=P2(f*N)),a=(k=o<<2)+X2[e+12>>2]|0,U2[a+8>>2]=R,U2[a+4>>2]=D,U2[a>>2]=F,a=X2[e+20>>2],U2[a+k>>2]=-N,U2[a+((E=o+1|0)<<2)>>2]=-_,U2[a+((w=o+2|0)<<2)>>2]=-u,u=P2(P2(v*g)-P2(l*Z)),v=P2(P2(t*Z)-P2(v*s)),l=P2(P2(l*s)-P2(t*g)),_=P2(P2(C*g)-P2(Q*Z)),t=P2(P2(G*Z)-P2(C*s)),G=P2(P2(Q*s)-P2(G*g)),n&&(_=P2(r*_),G=P2(r*G),u=P2(f*u),v=P2(f*v),l=P2(f*l),t=P2(r*t)),a=(k=(n=o<<1)<<2)+X2[e+12>>2]|0,U2[a+8>>2]=_,U2[a+4>>2]=t,U2[a>>2]=G,a=X2[e+20>>2],U2[k+a>>2]=-l,U2[((Y=1|n)<<2)+a>>2]=-v,U2[((m=n+2|0)<<2)+a>>2]=-u,l=U2[(8&J2[A+748|0]?A+756|0:e+4|0)>>2],J2[A+736|0]?(r=P2(-B),f=P2(-d),_=P2(-h),v=P2(-b),G=P2(-c),t=P2(-i),w=X2[e+28>>2]):(u=U2[e>>2],a=X2[e+8>>2],U2[a+8>>2]=b,U2[a+4>>2]=c,U2[a>>2]=i,k=(a=o<<2)+X2[e+8>>2]|0,U2[k+8>>2]=B,U2[k+4>>2]=d,U2[k>>2]=h,n=(k=n<<2)+X2[e+8>>2]|0,U2[n+8>>2]=s,U2[n+4>>2]=g,U2[n>>2]=Z,n=X2[e+16>>2],v=P2(-b),U2[n+8>>2]=v,G=P2(-c),U2[n+4>>2]=G,t=P2(-i),U2[n>>2]=t,_=P2(-h),U2[a+n>>2]=_,r=P2(-B),U2[n+(w<<2)>>2]=r,f=P2(-d),U2[n+(E<<2)>>2]=f,U2[n+k>>2]=-Z,U2[n+(m<<2)>>2]=-s,U2[n+(Y<<2)>>2]=-g,w=X2[e+28>>2],u=P2(l*u),Q=P2(M-e2),C=P2(S-r2),F=P2(q-A2),U2[w>>2]=u*P2(P2(P2(Q*i)+P2(C*c))+P2(F*b)),U2[a+w>>2]=u*P2(P2(P2(Q*h)+P2(C*d))+P2(F*B)),U2[k+w>>2]=u*P2(P2(P2(Q*Z)+P2(C*g))+P2(F*s)),a=X2[e+20>>2]),k=X2[e+12>>2],n=H2(o,12),U2[k+n>>2]=i,U2[(E=n+4|0)+k>>2]=c,U2[(Y=n+8|0)+k>>2]=b,U2[(o<<=4)+k>>2]=h,U2[(m=8|o)+k>>2]=B,U2[(y=4|o)+k>>2]=d,U2[a+n>>2]=t,U2[a+Y>>2]=v,U2[a+E>>2]=G,U2[a+o>>2]=_,U2[a+m>>2]=r,U2[a+y>>2]=f,r=P2(l*U2[e>>2]),f=P2(P2(J*j)-P2(P*U)),u=P2(f*i),i=P2(P2(P*O)-P2(z*j)),u=P2(u+P2(i*c)),c=P2(P2(z*U)-P2(J*O)),U2[n+w>>2]=r*P2(u+P2(c*b)),U2[o+w>>2]=r*P2(P2(P2(f*h)+P2(i*d))+P2(c*B)),m=J2[A+716|0])Y=0!=J2[A+737|0],n=(c=P2(U2[A+708>>2]*U2[A+732>>2]))>P2(0)?1:2;else{if(!J2[A+737|0])break A;c=P2(0),Y=1,n=0}if(E=H2(X2[e+24>>2],5),U2[(o=E<<2)+k>>2]=Z,U2[(y=o+4|0)+k>>2]=g,U2[(H=k)+(k=o+8|0)>>2]=s,U2[a+o>>2]=-Z,U2[a+k>>2]=-s,U2[a+y>>2]=-g,f=U2[A+688>>2],i=U2[A+692>>2],(r=b2(P2(f-i)))P2(3.1415927410125732)&&(r=P2(r+P2(-6.2831854820251465))),(f=b2(P2(f+i)))P2(3.1415927410125732)&&(f=P2(f+P2(-6.2831854820251465))),X2[(o=(E<<2)+w|0)>>2]=0,l=2&(a=X2[A+748>>2])?U2[A+764>>2]:l,w=((k=r!=f)|!m)&Y){4&a&&(U2[X2[e+32>>2]+(E<<2)>>2]=U2[A+752>>2]),_=U2[A+680>>2];e:if(f<=r)i=P2(f>2],(t=P2(_/P2(l*U2[e>>2])))P2(0)))break e;if(b<=f&&b>P2(f-t)){i=P2(P2(f-b)/t);break e}if(f>2]=P2(P2(i*_)*U2[A+732>>2])+U2[o>>2],U2[(w=E<<2)+X2[e+36>>2]>>2]=-U2[A+684>>2],U2[w+X2[e+40>>2]>>2]=U2[A+684>>2]}if(m)return U2[o>>2]=U2[o>>2]+P2(c*P2(l*U2[e>>2])),1&a&&(U2[X2[e+32>>2]+(E<<2)>>2]=U2[A+760>>2]),r=k?(a=X2[e+36>>2]+(E<<2)|0,1==(0|n)?(X2[a>>2]=0,P2(34028234663852886e22)):(X2[a>>2]=-8388609,P2(0))):(X2[X2[e+36>>2]+(E<<2)>>2]=-8388609,P2(34028234663852886e22)),U2[X2[e+40>>2]+(E<<2)>>2]=r,(f=U2[A+704>>2])>P2(0)&&(r=P2(P2(P2(P2(U2[I+388>>2]*Z)+P2(U2[I+392>>2]*g))+P2(U2[I+396>>2]*s))-P2(P2(P2(Z*U2[W+388>>2])+P2(g*U2[W+392>>2]))+P2(s*U2[W+396>>2]))),1==(0|n)?rU2[o>>2]&&(U2[o>>2]=r):r>P2(0)&&(r=P2(r*P2(-f)))>2]&&(U2[o>>2]=r)),void(U2[o>>2]=U2[A+700>>2]*U2[o>>2])}else{if(r=U2[A+624>>2],Q=U2[W+36>>2],f=U2[A+640>>2],C=U2[W+40>>2],P=P2(P2(r*Q)+P2(f*C)),i=U2[A+656>>2],F=U2[W+44>>2],j=P2(i*F),N=U2[W+20>>2],R=U2[W+24>>2],z=P2(P2(r*N)+P2(f*R)),D=U2[W+28>>2],O=P2(i*D),X=U2[W+12>>2],K=P2(X*i),J=U2[W+4>>2],U=U2[W+8>>2],L=P2(P2(J*r)+P2(U*f)),t=U2[A+560>>2],r=U2[I+36>>2],d=U2[A+576>>2],f=U2[I+40>>2],q=P2(P2(t*r)+P2(d*f)),b=U2[A+592>>2],i=U2[I+44>>2],M=P2(b*i),h=U2[A+556>>2],B=U2[A+572>>2],S=P2(P2(h*r)+P2(B*f)),l=U2[A+588>>2],$=P2(l*i),u=U2[A+584>>2],A2=P2(u*i),v=U2[A+552>>2],G=U2[A+568>>2],e2=P2(P2(v*r)+P2(G*f)),c=U2[I+20>>2],s=U2[I+24>>2],r2=P2(P2(t*c)+P2(d*s)),Z=U2[I+28>>2],V=P2(b*Z),g=U2[I+12>>2],f2=P2(g*b),b=U2[I+4>>2],_=U2[I+8>>2],i2=P2(P2(b*t)+P2(_*d)),t=U2[A+664>>2],d=U2[A+668>>2],p=P2(P2(Q*t)+P2(C*d)),Q=U2[A+672>>2],C=P2(P2(p+P2(F*Q))+U2[W+60>>2]),N=P2(P2(P2(P2(N*t)+P2(R*d))+P2(D*Q))+U2[W+56>>2]),d=P2(U2[W+52>>2]+P2(P2(P2(J*t)+P2(U*d))+P2(X*Q))),Q=U2[A+600>>2],p=f,f=U2[A+604>>2],T=i,i=U2[A+608>>2],t=U2[I+60>>2],R=P2(P2(P2(P2(r*Q)+P2(p*f))+P2(T*i))+t),r=U2[I+56>>2],D=P2(P2(P2(P2(c*Q)+P2(s*f))+P2(Z*i))+r),F=U2[I+52>>2],f=P2(F+P2(P2(P2(b*Q)+P2(_*f))+P2(g*i))),k=o<<1,(Y=J2[A+736|0])||(n=X2[e+8>>2],X2[n>>2]=1065353216,X2[(a=4+(o<<2)|0)+n>>2]=1065353216,X2[(k=8+(o<<3)|0)+n>>2]=1065353216,n=X2[e+16>>2],X2[n>>2]=-1082130432,X2[a+n>>2]=-1082130432,X2[n+k>>2]=-1082130432,t=U2[I+60>>2],r=U2[I+56>>2],F=U2[I+52>>2],k=o<<1),a=X2[e+12>>2],X2[a+12>>2]=0,i=P2(R-t),U2[a+4>>2]=i,X2[a>>2]=0,r=P2(D-r),U2[a+8>>2]=-r,U2[(n=(E=o<<2)+a|0)>>2]=-i,i=P2(f-F),U2[n+8>>2]=i,X2[n+12>>2]=0,X2[n+4>>2]=0,U2[(n=(w=k<<2)+a|0)>>2]=r,U2[n+4>>2]=-i,X2[n+8>>2]=0,X2[n+12>>2]=0,r=U2[W+52>>2],i=U2[W+60>>2],t=U2[W+56>>2],k=X2[e+20>>2],X2[k+12>>2]=0,X2[k>>2]=0,t=P2(N-t),U2[k+8>>2]=t,i=P2(C-i),U2[k+4>>2]=-i,U2[(n=k+E|0)>>2]=i,r=P2(d-r),U2[n+8>>2]=-r,X2[n+12>>2]=0,X2[n+4>>2]=0,U2[(n=k+w|0)>>2]=-t,U2[n+4>>2]=r,X2[n+8>>2]=0,X2[n+12>>2]=0,m=X2[A+748>>2],t=U2[(8&m?A+756|0:e+4|0)>>2],r=P2(t*U2[e>>2]),w=X2[e+28>>2],Y||(U2[w>>2]=r*P2(d-f),U2[E+w>>2]=r*P2(N-D),U2[w+(o<<3)>>2]=r*P2(C-R)),n=H2(o,12),f=P2(P2(P2(v*b)+P2(G*_))+P2(u*g)),U2[n+a>>2]=f,Y=n+4|0,i=P2(P2(P2(v*c)+P2(G*s))+P2(u*Z)),U2[Y+a>>2]=i,y=n+8|0,d=P2(e2+A2),U2[y+a>>2]=d,x=4|(E=o<<4),c=P2(P2(P2(h*c)+P2(B*s))+P2(l*Z)),U2[x+a>>2]=c,s=P2(P2(P2(b*h)+P2(_*B))+P2(g*l)),U2[a+E>>2]=s,H=8|E,_=P2(S+$),U2[H+a>>2]=_,U2[k+Y>>2]=-i,U2[n+k>>2]=-f,U2[k+y>>2]=-d,U2[k+x>>2]=-c,U2[k+E>>2]=-s,U2[k+H>>2]=-_,l=d,Z=P2(i2+f2),d=P2(z+O),g=P2(r2+V),h=P2(L+K),B=P2(P2(Z*d)-P2(g*h)),u=f,f=P2(P+j),b=P2(q+M),d=P2(P2(g*f)-P2(b*d)),f=P2(P2(b*h)-P2(Z*f)),U2[n+w>>2]=P2(P2(l*B)+P2(P2(u*d)+P2(i*f)))*r,U2[E+w>>2]=P2(P2(_*B)+P2(P2(s*d)+P2(c*f)))*r,y=J2[A+716|0])Y=(c=P2(U2[A+708>>2]*U2[A+732>>2]))>P2(0)?1:2,n=0!=J2[A+737|0];else{if(!J2[A+737|0])break A;c=P2(Y=0),n=1}if(E=H2(o,5),U2[(o=E<<2)+a>>2]=Z,U2[(x=o+4|0)+a>>2]=g,U2[(H=a)+(a=o+8|0)>>2]=b,U2[k+x>>2]=-g,U2[o+k>>2]=-Z,U2[a+k>>2]=-b,f=U2[A+688>>2],i=U2[A+692>>2],(r=b2(P2(f-i)))P2(3.1415927410125732)&&(r=P2(r+P2(-6.2831854820251465))),(f=b2(P2(f+i)))P2(3.1415927410125732)&&(f=P2(f+P2(-6.2831854820251465))),X2[(o=w+(E<<2)|0)>>2]=0,k=n,t=2&m?U2[A+764>>2]:t,a=k&((n=r!=f)|!y)){4&m&&(U2[X2[e+32>>2]+(E<<2)>>2]=U2[A+752>>2]),d=U2[A+680>>2];e:if(f<=r)i=P2(f>2],(_=P2(d/P2(t*U2[e>>2])))P2(0)))break e;if(s<=f&&s>P2(f-_)){i=P2(P2(f-s)/_);break e}if(f>2]=P2(P2(i*d)*U2[A+732>>2])+U2[o>>2],U2[(a=E<<2)+X2[e+36>>2]>>2]=-U2[A+684>>2],U2[a+X2[e+40>>2]>>2]=U2[A+684>>2]}y&&(U2[o>>2]=U2[o>>2]+P2(c*P2(t*U2[e>>2])),1&m&&(U2[X2[e+32>>2]+(E<<2)>>2]=U2[A+760>>2]),r=n?(n=X2[e+36>>2]+(E<<2)|0,1==(0|Y)?(X2[n>>2]=0,P2(34028234663852886e22)):(X2[n>>2]=-8388609,P2(0))):(X2[X2[e+36>>2]+(E<<2)>>2]=-8388609,P2(34028234663852886e22)),U2[X2[e+40>>2]+(E<<2)>>2]=r,(f=U2[A+704>>2])>P2(0)&&(r=P2(P2(P2(P2(Z*U2[I+388>>2])+P2(g*U2[I+392>>2]))+P2(b*U2[I+396>>2]))-P2(P2(P2(Z*U2[W+388>>2])+P2(g*U2[W+392>>2]))+P2(b*U2[W+396>>2]))),1==(0|Y)?rU2[o>>2]&&(U2[o>>2]=r):r>P2(0)&&(r=P2(r*P2(-f)))>2]&&(U2[o>>2]=r)),U2[o>>2]=U2[A+700>>2]*U2[o>>2])}},function(A,e,r,f){A|=0,e|=0,r=P2(r);A:{e:switch((f|=0)+1|0){case 0:case 6:break e;default:break A;}e:switch(e-1|0){case 1:return U2[A+764>>2]=r,void(X2[A+748>>2]=2|X2[A+748>>2]);case 3:return U2[A+760>>2]=r,void(X2[A+748>>2]=1|X2[A+748>>2]);case 2:return U2[A+752>>2]=r,void(X2[A+748>>2]=4|X2[A+748>>2]);case 0:break e;default:break A;}U2[A+756>>2]=r,X2[A+748>>2]=8|X2[A+748>>2]}},function(A,e,r){A|=0,e|=0,r|=0;var f=P2(0);A:{e:switch(r+1|0){case 0:case 6:break e;default:break A;}e:switch(e-1|0){case 1:return P2(U2[A+764>>2]);case 3:return P2(U2[A+760>>2]);case 2:return P2(U2[A+752>>2]);case 0:break e;default:break A;}f=U2[A+756>>2]}return P2(f)},function(A){return 220},function(A,e,r){A|=0,e|=0,r|=0;var f,i,a=P2(0);return P2(0),P2(0),J4(A,e,r),U2[e+52>>2]=U2[A+552>>2],U2[e+56>>2]=U2[A+556>>2],U2[e+60>>2]=U2[A+560>>2],U2[e+64>>2]=U2[A+564>>2],U2[e+68>>2]=U2[A+568>>2],U2[e+72>>2]=U2[A+572>>2],U2[e+76>>2]=U2[A+576>>2],U2[e+80>>2]=U2[A+580>>2],U2[e+84>>2]=U2[A+584>>2],U2[e+88>>2]=U2[A+588>>2],U2[e+92>>2]=U2[A+592>>2],U2[e+96>>2]=U2[A+596>>2],U2[e+100>>2]=U2[A+600>>2],U2[e+104>>2]=U2[A+604>>2],U2[e+108>>2]=U2[A+608>>2],U2[e+112>>2]=U2[A+612>>2],U2[e+116>>2]=U2[A+616>>2],U2[e+120>>2]=U2[A+620>>2],U2[e+124>>2]=U2[A+624>>2],U2[e+128>>2]=U2[A+628>>2],U2[e+132>>2]=U2[A+632>>2],U2[e+136>>2]=U2[A+636>>2],U2[e+140>>2]=U2[A+640>>2],U2[e+144>>2]=U2[A+644>>2],U2[e+148>>2]=U2[A+648>>2],U2[e+152>>2]=U2[A+652>>2],U2[e+156>>2]=U2[A+656>>2],U2[e+160>>2]=U2[A+660>>2],U2[e+164>>2]=U2[A+664>>2],U2[e+168>>2]=U2[A+668>>2],U2[e+172>>2]=U2[A+672>>2],U2[e+176>>2]=U2[A+676>>2],X2[e+184>>2]=J2[A+736|0],r=X2[A+684>>2],X2[e+192>>2]=X2[A+680>>2],X2[e+196>>2]=r,X2[e+188>>2]=J2[A+737|0],X2[e+180>>2]=J2[A+740|0],f=U2[A+688>>2],i=U2[A+692>>2],(a=b2(P2(f-i)))P2(3.1415927410125732)&&(a=P2(a+P2(-6.2831854820251465))),U2[e+200>>2]=a,(a=b2(P2(f+i)))P2(3.1415927410125732)&&(a=P2(a+P2(-6.2831854820251465))),U2[e+204>>2]=a,U2[e+208>>2]=U2[A+696>>2],r=X2[(A=A+700|0)+4>>2],X2[e+212>>2]=X2[A>>2],X2[e+216>>2]=r,23492},function(A){return X2[(A|=0)+748>>2]},L4,function(A){A|=0,P2(0),P2(0),P2(0),P2(0),P2(0);var e,r,f,i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C,h,F=0,Y=0;for(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),K2=h=K2-144|0,X2[A+36>>2]=0,X2[(e=136+h|0)>>2]=0,X2[4+e>>2]=0,X2[128+h>>2]=0,F=A+48|(X2[132+h>>2]=0);;)if(X2[(o=(128+h|0)+Y|0)>>2]=1065353216,X2[92+h>>2]=0,X2[108+h>>2]=0,e=X2[A+28>>2],n=U2[e+4>>2],U2[80+h>>2]=n,b=U2[e+20>>2],U2[84+h>>2]=b,r=U2[e+36>>2],U2[88+h>>2]=r,c=U2[e+8>>2],U2[96+h>>2]=c,k=U2[e+24>>2],U2[100+h>>2]=k,f=U2[e+40>>2],U2[104+h>>2]=f,u=U2[e+12>>2],U2[112+h>>2]=u,s=U2[e+28>>2],U2[116+h>>2]=s,X2[124+h>>2]=0,a=U2[e+44>>2],U2[120+h>>2]=a,X2[44+h>>2]=0,X2[60+h>>2]=0,i=X2[A+32>>2],l=U2[i+4>>2],U2[32+h>>2]=l,B=U2[i+20>>2],U2[36+h>>2]=B,v=U2[i+36>>2],U2[40+h>>2]=v,d=U2[i+8>>2],U2[48+h>>2]=d,Z=U2[i+24>>2],U2[52+h>>2]=Z,_=U2[i+40>>2],U2[56+h>>2]=_,g=U2[i+12>>2],U2[64+h>>2]=g,E=U2[i+28>>2],U2[68+h>>2]=E,X2[76+h>>2]=0,Q=U2[i+44>>2],U2[72+h>>2]=Q,X2[28+h>>2]=0,t=r,r=U2[A+300>>2],G=f,f=U2[A+304>>2],C=a,a=U2[A+308>>2],w=U2[e+60>>2],U2[24+h>>2]=P2(P2(P2(P2(t*r)+P2(G*f))+P2(C*a))+w)-w,t=P2(P2(P2(r*b)+P2(f*k))+P2(a*s)),b=U2[e+56>>2],U2[20+h>>2]=P2(t+b)-b,f=P2(P2(P2(r*n)+P2(f*c))+P2(a*u)),r=U2[e+52>>2],U2[16+h>>2]=P2(f+r)-r,X2[12+h>>2]=0,r=U2[A+316>>2],f=U2[A+320>>2],a=U2[A+324>>2],n=U2[i+60>>2],U2[8+h>>2]=P2(P2(P2(P2(v*r)+P2(_*f))+P2(Q*a))+n)-n,n=U2[i+56>>2],U2[4+h>>2]=P2(P2(P2(P2(r*B)+P2(f*Z))+P2(a*E))+n)-n,f=P2(P2(P2(r*l)+P2(f*d))+P2(a*g)),r=U2[i+52>>2],U2[h>>2]=P2(f+r)-r,U4(F,80+h|0,32+h|0,16+h|0,h,128+h|0,e+456|0,U2[e+404>>2],i+456|0,U2[i+404>>2]),F=F+84|(X2[o>>2]=0),12==(0|(Y=Y+4|0)))break;K2=144+h|0},function(A,e){A=J2[(A|=0)+344|0]?0:3,X2[(e|=0)+4>>2]=A,X2[e>>2]=A},function(A,e){A|=0,e|=0;var r,f,i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E=0,Q=0,w=(P2(0),P2(0)),E=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),X2[e+8>>2]);X2[E>>2]=1065353216,u=X2[e+24>>2],X2[(a=4+(n=u<<2)|0)+E>>2]=1065353216,X2[E+(Z=8+(s=u<<3)|0)>>2]=1065353216,Q=X2[A+28>>2],o=U2[Q+8>>2],b=U2[Q+12>>2],c=U2[Q+20>>2],t=U2[Q+24>>2],l=U2[Q+28>>2],k=U2[Q+36>>2],w=U2[A+304>>2],B=U2[Q+40>>2],f=U2[A+308>>2],v=U2[Q+44>>2],d=U2[Q+4>>2],i=U2[A+300>>2],E=X2[e+12>>2],X2[E>>2]=0,X2[E+12>>2]=0,k=P2(P2(P2(i*k)+P2(w*B))+P2(f*v)),U2[E+4>>2]=k,c=P2(P2(P2(i*c)+P2(w*t))+P2(f*l)),U2[E+8>>2]=-c,U2[(r=E+n|0)>>2]=-k,o=P2(P2(P2(d*i)+P2(o*w))+P2(b*f)),U2[8+r>>2]=o,X2[12+r>>2]=0,X2[4+r>>2]=0,U2[(r=E+s|0)>>2]=c,U2[4+r>>2]=-o,E=X2[A+32>>2],X2[8+r>>2]=0,X2[12+r>>2]=0,r=X2[e+16>>2],X2[r>>2]=-1082130432,X2[r+a>>2]=-1082130432,X2[r+Z>>2]=-1082130432,l=U2[E+8>>2],B=U2[E+12>>2],t=U2[E+36>>2],v=U2[E+40>>2],d=U2[E+44>>2],b=U2[E+20>>2],w=U2[A+320>>2],Z=U2[E+24>>2],f=U2[A+324>>2],_=U2[E+28>>2],g=U2[E+4>>2],i=U2[A+316>>2],r=X2[e+20>>2],X2[r>>2]=0,X2[r+12>>2]=0,b=P2(P2(P2(i*b)+P2(w*Z))+P2(f*_)),U2[r+8>>2]=b,t=P2(P2(P2(i*t)+P2(w*v))+P2(f*d)),U2[r+4>>2]=-t,U2[(a=r+n|0)>>2]=t,w=P2(P2(P2(g*i)+P2(l*w))+P2(B*f)),U2[8+a>>2]=-w,X2[12+a>>2]=0,X2[4+a>>2]=0,U2[4+(r=r+s|0)>>2]=w,U2[r>>2]=-b,X2[8+r>>2]=0,X2[12+r>>2]=0,r=X2[e+28>>2],a=X2[A+332>>2],f=P2(U2[(1&a?A+336|0:e+4|0)>>2]*U2[e>>2]),U2[r>>2]=f*P2(P2(P2(w+U2[E+52>>2])-o)-U2[Q+52>>2]),U2[r+n>>2]=f*P2(P2(P2(b+U2[E+56>>2])-c)-U2[Q+56>>2]),U2[r+s>>2]=f*P2(P2(P2(t+U2[E+60>>2])-k)-U2[Q+60>>2]),E=u<<1,2&a&&(Q=X2[e+32>>2],U2[Q>>2]=U2[A+340>>2],U2[Q+n>>2]=U2[A+340>>2],U2[Q+(E<<2)>>2]=U2[A+340>>2]),(f=U2[A+356>>2])>P2(0)&&(Q=X2[e+36>>2],i=P2(-f),U2[Q>>2]=i,r=X2[e+40>>2],U2[r>>2]=f,(w=U2[A+356>>2])>P2(0)&&(U2[(n=u<<2)+Q>>2]=i,U2[r+n>>2]=f,w=U2[A+356>>2]),w>P2(0)&&(U2[(E<<=2)+Q>>2]=i,U2[E+r>>2]=f)),U2[e+48>>2]=U2[A+352>>2]},function(A,e,r,f){A|=0,e|=0,r=P2(r),f|=0;A:if(-1==(0|f)){e:switch(e-1|0){case 0:case 1:return U2[A+336>>2]=r,void(X2[A+332>>2]=1|X2[A+332>>2]);case 2:case 3:break e;default:break A;}U2[A+340>>2]=r,X2[A+332>>2]=2|X2[A+332>>2]}},function(A,e,r){A|=0,e|=0,r|=0;var f=P2(0),f=P2(34028234663852886e22);A:if(-1==(0|r)){e:switch(e-1|0){case 0:case 1:return P2(U2[A+336>>2]);case 2:case 3:break e;default:break A;}f=U2[A+340>>2]}return P2(f)},_1,function(A,e,r){return J4(A|=0,e|=0,r|=0),U2[e+52>>2]=U2[A+300>>2],U2[e+56>>2]=U2[A+304>>2],U2[e+60>>2]=U2[A+308>>2],U2[e+64>>2]=U2[A+312>>2],U2[e+68>>2]=U2[A+316>>2],U2[e+72>>2]=U2[A+320>>2],U2[e+76>>2]=U2[A+324>>2],U2[e+80>>2]=U2[A+328>>2],23608},function(A){return X2[(A|=0)+332>>2]},L4,Z4,function(A,e){e|=0;var r=0,f=0;$4(A|=0,X2[A+28>>2]+4|0,X2[A+32>>2]+4|0),X2[e>>2]=0,X2[e+4>>2]=0;A:switch(X2[A+956>>(f=2)]){default:f=1;case 4:r=X2[e>>2]=f;break;case 0:break A;}J2[A+792|0]&&(X2[e>>2]=r=r+1|0),J2[A+798|0]&&(X2[e>>2]=r=r+1|0),f=e;A:{e:{r:switch(X2[A+960>>2]){case 4:r=r+2|0;break e;case 0:break A;default:break r;}r=r+1|0}X2[f>>2]=r}J2[A+793|0]&&(X2[e>>2]=r=r+1|0),J2[A+799|0]&&(X2[e>>2]=r=r+1|0),f=e;A:{e:{r:switch(X2[A+964>>2]){case 4:r=r+2|0;break e;case 0:break A;default:break r;}r=r+1|0}X2[f>>2]=r}J2[A+794|0]&&(X2[e>>2]=r=r+1|0),J2[A+800|0]&&(X2[e>>2]=r+1),A6(A,0);A:switch(X2[A+1052>>(r=2)]){default:r=1;case 4:X2[e>>2]=X2[e>>2]+r;break;case 0:break A;}J2[A+996|0]&&(X2[e>>2]=X2[e>>2]+1),J2[A+1016|0]&&(X2[e>>2]=X2[e>>2]+1),A6(A,1);A:switch(X2[A+1140>>(r=2)]){default:r=1;case 4:X2[e>>2]=X2[e>>2]+r;break;case 0:break A;}J2[A+1084|0]&&(X2[e>>2]=X2[e>>2]+1),J2[A+1104|0]&&(X2[e>>2]=X2[e>>2]+1),A6(A,r=2);A:switch(X2[A+1228>>2]){default:r=1;case 4:X2[e>>2]=X2[e>>2]+r;break;case 0:break A;}J2[A+1172|0]&&(X2[e>>2]=X2[e>>2]+1),J2[A+1192|0]&&(X2[e>>2]=X2[e>>2]+1)},function(A,e){var r,f,i,a,n,b,t,o,c=0,k=0,u=0,s=0,l=0,B=0,v=0,d=0,Z=0,_=0;for(K2=o=K2-112|0,s=X2[(A|=0)+32>>2],r=X2[A+28>>2],u=4<(u=X2[A+1232>>2]-1|0)>>>0?(c=1,2):(k=X2[(u<<=2)+23772>>2],c=X2[u+23752>>2],X2[u+23732>>2]),f=s+388|0,i=r+388|0,a=s+372|0,n=r+372|0,b=s+4|0,t=r+4|0,r=(e|=0)+4|0,B=H2(k,88)+A|0,s=X2[B+1052>>2]||J2[B+996|0]||J2[1016+(H2(k,88)+A|0)|0]?(_=X2[(v=(l=(k<<4)+A|0)+1388|0)+4>>2],X2[(s=32+o|0)>>2]=X2[v>>2],X2[s+4>>2]=_,l=X2[(s=l+1380|0)+4>>2],X2[24+o>>2]=X2[s>>2],X2[28+o>>2]=l,1&(s=X2[A+1456>>2]>>12+(k<<2))||(U2[984+(H2(k,88)+A|0)>>2]=U2[X2[e+32>>2]>>2]),2&s||(U2[980+(H2(k,88)+A|0)>>2]=U2[r>>2]),4&s||(U2[992+(H2(k,88)+A|0)>>2]=U2[X2[e+32>>2]>>2]),8&s||(U2[988+(H2(k,88)+A|0)>>2]=U2[r>>2]),e6(A,B+968|0,t,b,n,a,i,f,e,0,24+o|0,1,0)):0,B=H2(c,88)+A|0,(X2[B+1052>>2]||J2[B+996|0]||J2[1016+(H2(c,88)+A|0)|0])&&(_=X2[(v=(l=(c<<4)+A|0)+1388|0)+4>>2],X2[(k=32+o|0)>>2]=X2[v>>2],X2[k+4>>2]=_,l=X2[(k=l+1380|0)+4>>2],X2[24+o>>2]=X2[k>>2],X2[28+o>>2]=l,1&(k=X2[A+1456>>2]>>12+(c<<2))||(U2[984+(H2(c,88)+A|0)>>2]=U2[X2[e+32>>2]>>2]),2&k||(U2[980+(H2(c,88)+A|0)>>2]=U2[r>>2]),4&k||(U2[992+(H2(c,88)+A|0)>>2]=U2[X2[e+32>>2]>>2]),8&k||(U2[988+(H2(c,88)+A|0)>>2]=U2[r>>2]),s=e6(A,B+968|0,t,b,n,a,i,f,e,s,24+o|0,1,0)+s|0),k=H2(u,88)+A|0,(X2[k+1052>>2]||J2[k+996|0]||J2[1016+(H2(u,88)+A|0)|0])&&(v=X2[(l=(B=(u<<4)+A|0)+1388|0)+4>>2],X2[(c=32+o|0)>>2]=X2[l>>2],X2[c+4>>2]=v,B=X2[(c=B+1380|0)+4>>2],X2[24+o>>2]=X2[c>>2],X2[28+o>>2]=B,1&(c=X2[A+1456>>2]>>12+(u<<2))||(U2[984+(H2(u,88)+A|0)>>2]=U2[X2[e+32>>2]>>2]),2&c||(U2[980+(H2(u,88)+A|0)>>2]=U2[r>>2]),4&c||(U2[992+(H2(u,88)+A|0)>>2]=U2[X2[e+32>>2]>>2]),8&c||(U2[988+(H2(u,88)+A|0)>>2]=U2[r>>2]),s=e6(A,k+968|0,t,b,n,a,i,f,e,s,24+o|0,1,0)+s|0),X2[44+o>>2]=1063675494,X2[48+o>>2]=0,X2[36+o>>2]=1045220557,B=X2[40+o>>2]=0;;){if(k=J2[(u=A+B|0)+792|0],(l=X2[(c=A+Z|0)+956>>2])||(v=255&k,k=1,v||J2[u+798|(k=0)])){X2[108+o>>2]=l,S2[52+o|0]=k,U2[32+o>>2]=U2[c+712>>2],U2[104+o>>2]=U2[c+940>>2],U2[96+o>>2]=U2[c+908>>2],U2[100+o>>2]=U2[c+924>>2],S2[64+o|0]=J2[u+795|0],U2[68+o>>2]=U2[c+804>>2],S2[72+o|0]=J2[u+798|0],U2[76+o>>2]=U2[c+820>>2],S2[80+o|0]=J2[u+836|0],U2[84+o>>2]=U2[c+840>>2],S2[88+o|0]=J2[u+856|0],U2[92+o>>2]=U2[c+860>>2],U2[28+o>>2]=U2[c+696>>2],U2[24+o>>2]=U2[c+680>>2],U2[60+o>>2]=U2[c+892>>2],U2[56+o>>2]=U2[c+876>>2],X2[20+o>>2]=0,U2[8+o>>2]=U2[c+1236>>2],U2[12+o>>2]=U2[c+1252>>2],U2[16+o>>2]=U2[c+1268>>2],v=c+744|0,1&(k=X2[A+1456>>2]>>Z)||(v=X2[e+32>>2]),U2[(l=u=o)+40>>2]=U2[v>>2],U2[u+36>>2]=U2[(2&k?c+728|0:r)>>2],U2[48+o>>2]=U2[(4&k?c+776|0:X2[e+32>>2])>>2],U2[44+o>>2]=U2[(8&k?c+760|0:r)>>2],l=((B+2&255)>>>0)%3|0;A:{e:{r:{f:switch(u=H2(((B+(c=k=1)&255)>>>0)%3|0,88)+A|0,X2[u+1052>>2]-1|0){case 0:case 1:break A;case 3:break r;case 2:break f;default:break e;}c=(d=+U2[u+1040>>2])<-.001|.001>2]<-.001)break A;c=.001<+U2[u+1044>>2];break A}c=0}A:{e:{r:{f:switch(u=H2(l,88)+A|0,X2[u+1052>>2]-1|0){case 0:case 1:break e;case 3:break r;case 2:break f;default:break A;}if((d=+U2[u+1040>>2])<-.001)break e;if(.001>2]<-.001)&&!(.001<+U2[u+1044>>2]))break A}k=0}s=e6(A,24+o|0,t,b,n,a,i,f,e,s,8+o|0,0,c?k:1)+s|0}if(B=B+1|0,12==(0|(Z=Z+4|0)))break}K2=112+o|0},function(A,e,r,f){var i;A|=0,e|=0,r=P2(r);A:{if((f|=0)>>>0<=2){e:switch(e-1|0){case 1:return U2[728+((e=f<<2)+A|0)>>2]=r,void(X2[A+1456>>2]=X2[A+1456>>2]|2<>2]=r,void(X2[A+1456>>2]=X2[A+1456>>2]|1<>2]=r,void(X2[A+1456>>2]=X2[A+1456>>2]|8<>2]=r,void(X2[A+1456>>2]=X2[A+1456>>2]|4<>>0)){e:switch(e-1|0){case 1:return U2[980+(H2(i,88)+A|0)>>2]=r,void(X2[A+1456>>2]=X2[A+1456>>2]|2<<(f<<2));case 3:return U2[984+(H2(i,88)+A|0)>>2]=r,void(X2[A+1456>>2]=X2[A+1456>>2]|1<<(f<<2));case 0:return U2[988+(H2(i,88)+A|0)>>2]=r,void(X2[A+1456>>2]=X2[A+1456>>2]|8<<(f<<2));case 2:break e;default:break A;}U2[992+(H2(i,88)+A|0)>>2]=r,X2[A+1456>>2]=X2[A+1456>>2]|4<<(f<<2)}}},function(A,e,r){A|=0,e|=0,r|=0;var f=P2(0);A:{if(r>>>0<=2){e:switch(e-1|0){case 1:return P2(U2[728+((r<<2)+A|0)>>2]);case 3:return P2(U2[744+((r<<2)+A|0)>>2]);case 0:return P2(U2[760+((r<<2)+A|0)>>2]);case 2:break e;default:break A;}return P2(U2[776+((r<<2)+A|0)>>2])}if(!(2<(r=r-3|0)>>>0)){e:switch(e-1|0){case 1:return P2(U2[980+(H2(r,88)+A|0)>>2]);case 3:return P2(U2[984+(H2(r,88)+A|0)>>2]);case 0:return P2(U2[988+(H2(r,88)+A|0)>>2]);case 2:break e;default:break A;}f=U2[992+(H2(r,88)+A|0)>>2]}}return P2(f)},function(A){return 644},function(A,e,r){var f;return A|=0,e|=0,r|=0,P2(0),J4(A,e,r),U2[e+52>>2]=U2[A+48>>2],U2[e+56>>2]=U2[A+52>>2],U2[e+60>>2]=U2[A+56>>2],U2[e+64>>2]=U2[A+60>>2],U2[e+68>>2]=U2[A- -64>>2],U2[e+72>>2]=U2[A+68>>2],U2[e+76>>2]=U2[A+72>>2],U2[e+80>>2]=U2[A+76>>2],U2[e+84>>2]=U2[A+80>>2],U2[e+88>>2]=U2[A+84>>2],U2[e+92>>2]=U2[A+88>>2],U2[e+96>>2]=U2[A+92>>2],U2[e+100>>2]=U2[A+96>>2],U2[e+104>>2]=U2[A+100>>2],U2[e+108>>2]=U2[A+104>>2],U2[e+112>>2]=U2[A+108>>2],U2[e+116>>2]=U2[A+112>>2],U2[e+120>>2]=U2[A+116>>2],U2[e+124>>2]=U2[A+120>>2],U2[e+128>>2]=U2[A+124>>2],U2[e+132>>2]=U2[A+128>>2],U2[e+136>>2]=U2[A+132>>2],U2[e+140>>2]=U2[A+136>>2],U2[e+144>>2]=U2[A+140>>2],U2[e+148>>2]=U2[A+144>>2],U2[e+152>>2]=U2[A+148>>2],U2[e+156>>2]=U2[A+152>>2],U2[e+160>>2]=U2[A+156>>2],U2[e+164>>2]=U2[A+160>>2],U2[e+168>>2]=U2[A+164>>2],U2[e+172>>2]=U2[A+168>>2],U2[e+176>>2]=U2[A+172>>2],U2[e+428>>2]=U2[A+968>>2],U2[e+412>>2]=U2[A+972>>2],U2[e+444>>2]=U2[A+976>>2],U2[e+460>>2]=U2[A+980>>2],U2[e+476>>2]=U2[A+984>>2],U2[e+492>>2]=U2[A+988>>2],U2[e+508>>2]=U2[A+992>>2],U2[e+524>>2]=U2[A+1e3>>2],U2[e+540>>2]=U2[A+1004>>2],U2[e+556>>2]=U2[A+1012>>2],U2[e+572>>2]=U2[A+1020>>2],U2[e+588>>2]=U2[A+1028>>2],U2[e+604>>2]=U2[A+1036>>2],U2[e+432>>2]=U2[A+1056>>2],U2[e+416>>2]=U2[A+1060>>2],U2[e+448>>2]=U2[A+1064>>2],U2[e+464>>2]=U2[A+1068>>2],U2[e+480>>2]=U2[A+1072>>2],U2[e+496>>2]=U2[A+1076>>2],U2[e+512>>2]=U2[A+1080>>2],U2[e+528>>2]=U2[A+1088>>2],U2[e+544>>2]=U2[A+1092>>2],U2[e+560>>2]=U2[A+1100>>2],U2[e+576>>2]=U2[A+1108>>2],U2[e+592>>2]=U2[A+1116>>2],U2[e+608>>2]=U2[A+1124>>2],U2[e+436>>2]=U2[A+1144>>2],U2[e+420>>2]=U2[A+1148>>2],U2[e+452>>2]=U2[A+1152>>2],U2[e+468>>2]=U2[A+1156>>2],U2[e+484>>2]=U2[A+1160>>2],U2[e+500>>2]=U2[A+1164>>2],U2[e+516>>2]=U2[A+1168>>2],U2[e+532>>2]=U2[A+1176>>2],U2[e+548>>2]=U2[A+1180>>2],U2[e+564>>2]=U2[A+1188>>2],U2[e+580>>2]=U2[A+1196>>2],U2[e+596>>2]=U2[A+1204>>2],f=U2[A+1212>>2],X2[e+440>>2]=0,U2[e+612>>2]=f,X2[e+616>>2]=0,X2[e+600>>2]=0,X2[e+584>>2]=0,X2[e+568>>2]=0,X2[e+552>>2]=0,X2[e+536>>2]=0,X2[e+520>>2]=0,X2[e+504>>2]=0,X2[e+488>>2]=0,X2[e+472>>2]=0,X2[e+456>>2]=0,X2[e+424>>2]=0,S2[e+620|0]=J2[A+996|0],S2[e+624|0]=J2[A+1008|0],S2[e+628|0]=J2[A+1016|0],S2[e+632|0]=J2[A+1024|0],S2[e+636|0]=J2[A+1032|0],S2[e+621|0]=J2[A+1084|0],S2[e+625|0]=J2[A+1096|0],S2[e+629|0]=J2[A+1104|0],S2[e+633|0]=J2[A+1112|0],S2[e+637|0]=J2[A+1120|0],S2[e+622|0]=J2[A+1172|0],S2[e+626|0]=J2[A+1184|0],S2[e+630|0]=J2[A+1192|0],S2[e+634|0]=J2[A+1200|0],r=J2[A+1208|0],S2[e+639|0]=0,S2[e+635|0]=0,S2[e+631|0]=0,S2[e+627|0]=0,S2[e+623|0]=0,S2[e+638|0]=r,U2[e+196>>2]=U2[A+680>>2],U2[e+200>>2]=U2[A+684>>2],U2[e+204>>2]=U2[A+688>>2],U2[e+208>>2]=U2[A+692>>2],U2[e+180>>2]=U2[A+696>>2],U2[e+184>>2]=U2[A+700>>2],U2[e+188>>2]=U2[A+704>>2],U2[e+192>>2]=U2[A+708>>2],U2[e+212>>2]=U2[A+712>>2],U2[e+216>>2]=U2[A+716>>2],U2[e+220>>2]=U2[A+720>>2],U2[e+224>>2]=U2[A+724>>2],U2[e+228>>2]=U2[A+728>>2],U2[e+232>>2]=U2[A+732>>2],U2[e+236>>2]=U2[A+736>>2],U2[e+240>>2]=U2[A+740>>2],U2[e+244>>2]=U2[A+744>>2],U2[e+248>>2]=U2[A+748>>2],U2[e+252>>2]=U2[A+752>>2],U2[e+256>>2]=U2[A+756>>2],U2[e+260>>2]=U2[A+760>>2],U2[e+264>>2]=U2[A+764>>2],U2[e+268>>2]=U2[A+768>>2],U2[e+272>>2]=U2[A+772>>2],U2[e+276>>2]=U2[A+776>>2],U2[e+280>>2]=U2[A+780>>2],U2[e+284>>2]=U2[A+784>>2],U2[e+288>>2]=U2[A+788>>2],U2[e+292>>2]=U2[A+876>>2],U2[e+296>>2]=U2[A+880>>2],U2[e+300>>2]=U2[A+884>>2],U2[e+304>>2]=U2[A+888>>2],U2[e+308>>2]=U2[A+892>>2],U2[e+312>>2]=U2[A+896>>2],U2[e+316>>2]=U2[A+900>>2],U2[e+320>>2]=U2[A+904>>2],U2[e+324>>2]=U2[A+804>>2],U2[e+328>>2]=U2[A+808>>2],U2[e+332>>2]=U2[A+812>>2],U2[e+336>>2]=U2[A+816>>2],U2[e+340>>2]=U2[A+820>>2],U2[e+344>>2]=U2[A+824>>2],U2[e+348>>2]=U2[A+828>>2],U2[e+352>>2]=U2[A+832>>2],U2[e+356>>2]=U2[A+840>>2],U2[e+360>>2]=U2[A+844>>2],U2[e+364>>2]=U2[A+848>>2],U2[e+368>>2]=U2[A+852>>2],U2[e+372>>2]=U2[A+860>>2],U2[e+376>>2]=U2[A+864>>2],U2[e+380>>2]=U2[A+868>>2],U2[e+384>>2]=U2[A+872>>2],S2[e+388|0]=J2[A+792|0],S2[e+392|0]=J2[A+795|0],S2[e+396|0]=J2[A+798|0],S2[e+400|0]=J2[A+836|0],S2[e+404|0]=J2[A+856|0],S2[e+389|0]=J2[A+793|0],S2[e+393|0]=J2[A+796|0],S2[e+397|0]=J2[A+799|0],S2[e+401|0]=J2[A+837|0],S2[e+405|0]=J2[A+857|0],S2[e+390|0]=J2[A+794|0],S2[e+394|0]=J2[A+797|0],S2[e+398|0]=J2[A+800|0],S2[e+402|0]=J2[A+838|0],r=J2[A+858|0],S2[e+407|0]=0,S2[e+403|0]=0,S2[e+399|0]=0,S2[e+395|0]=0,S2[e+391|0]=0,S2[e+406|0]=r,A=X2[A+1232>>2],X2[e+408>>2]=0,X2[e+640>>2]=A,23892},H4,L4,e,z0,function(A,e){A|=0,e|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var r,f=U2[A+52>>2],i=U2[A+56>>2],a=U2[A+60>>2],n=U2[A+124>>2],b=U2[A+120>>2],t=U2[A+116>>2],o=U2[A+8>>2],c=U2[A+12>>2],k=U2[A+28>>2],u=U2[A+20>>2],s=U2[A+24>>2],l=U2[A+72>>2],B=U2[A+76>>2],v=U2[A+92>>2],d=U2[A+84>>2],Z=U2[A+88>>2],_=U2[A+44>>2],g=U2[A+108>>2],E=U2[A+36>>2],Q=U2[A+100>>2],w=U2[A+40>>2],G=U2[A+104>>2],C=U2[A+4>>2],A=U2[A+68>>2];X2[e+60>>2]=0,X2[e+44>>2]=0,X2[e+28>>2]=0,X2[e+12>>2]=0,U2[e+40>>2]=P2(P2(Q*E)+P2(G*w))+P2(g*_),U2[e+36>>2]=P2(P2(d*E)+P2(Z*w))+P2(v*_),U2[e+32>>2]=P2(P2(A*E)+P2(l*w))+P2(B*_),U2[e+24>>2]=P2(P2(Q*u)+P2(G*s))+P2(g*k),U2[e+20>>2]=P2(P2(d*u)+P2(Z*s))+P2(v*k),U2[e+16>>2]=P2(P2(A*u)+P2(l*s))+P2(B*k),U2[e+8>>2]=P2(P2(Q*C)+P2(G*o))+P2(g*c),U2[e+4>>2]=P2(P2(d*C)+P2(Z*o))+P2(v*c),U2[e>>2]=P2(P2(A*C)+P2(l*o))+P2(B*c),r=E,E=d,d=P2(-b),E=P2(P2(P2(E*d)-P2(A*t))-P2(Q*n)),l=P2(P2(P2(Z*d)-P2(l*t))-P2(G*n)),B=P2(P2(P2(v*d)-P2(B*t))-P2(g*n)),U2[e+56>>2]=a+P2(P2(P2(r*E)+P2(w*l))+P2(_*B)),U2[e+52>>2]=i+P2(P2(P2(E*u)+P2(l*s))+P2(B*k)),U2[e+48>>2]=f+P2(P2(P2(C*E)+P2(l*o))+P2(B*c))},function(A,e){A|=0,e|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var r=U2[e+52>>2],f=U2[e+56>>2],i=U2[A+116>>2],a=U2[A+120>>2],n=U2[A+124>>2],b=U2[e+20>>2],t=U2[e+24>>2],o=U2[A+84>>2],c=U2[A+100>>2],k=U2[A+72>>2],u=U2[A+88>>2],s=U2[A+104>>2],l=U2[A+76>>2],B=U2[e+36>>2],v=U2[A+92>>2],d=U2[e+40>>2],Z=U2[A+108>>2],_=U2[e+48>>2],g=U2[e+8>>2],E=U2[e>>2],Q=U2[e+4>>2],w=U2[e+16>>2],G=U2[A+68>>2],e=U2[e+32>>2];X2[A- -64>>2]=0,X2[A+48>>2]=0,X2[A+32>>2]=0,X2[A+16>>2]=0,U2[A+44>>2]=P2(P2(l*e)+P2(v*B))+P2(Z*d),U2[A+40>>2]=P2(P2(k*e)+P2(u*B))+P2(s*d),U2[A+36>>2]=P2(P2(G*e)+P2(o*B))+P2(c*d),U2[A+28>>2]=P2(P2(l*w)+P2(v*b))+P2(Z*t),U2[A+24>>2]=P2(P2(k*w)+P2(u*b))+P2(s*t),U2[A+20>>2]=P2(P2(G*w)+P2(o*b))+P2(c*t),U2[A+12>>2]=P2(P2(E*l)+P2(Q*v))+P2(g*Z),U2[A+8>>2]=P2(P2(E*k)+P2(Q*u))+P2(g*s),U2[A+4>>2]=P2(P2(G*E)+P2(o*Q))+P2(c*g),U2[A+60>>2]=f+P2(P2(P2(e*i)+P2(B*a))+P2(d*n)),U2[A+56>>2]=r+P2(P2(P2(w*i)+P2(b*a))+P2(t*n)),U2[A+52>>2]=_+P2(P2(P2(E*i)+P2(Q*a))+P2(g*n))},A,function(A,e){var r,f,i=X2[(A|=0)+12>>2];X2[(e|=0)>>2]=X2[A+8>>2],X2[e+4>>2]=i,f=X2[4+(r=A+16|0)>>2],X2[(i=e+8|0)>>2]=X2[r>>2],X2[4+i>>2]=f,f=X2[4+(r=A+32|0)>>2],X2[(i=e+24|0)>>2]=X2[r>>2],X2[4+i>>2]=f,r=X2[4+(i=A+24|0)>>2],X2[e+16>>2]=X2[i>>2],X2[e+20>>2]=r,r=X2[4+(i=A+40|0)>>2],X2[e+32>>2]=X2[i>>2],X2[e+36>>2]=r,f=X2[4+(r=A+48|0)>>2],X2[(i=e+40|0)>>2]=X2[r>>2],X2[4+i>>2]=f,f=X2[4+(r=A- -64|0)>>2],X2[(i=e+56|0)>>2]=X2[r>>2],X2[4+i>>2]=f,i=X2[(A=A+56|0)+4>>2],X2[e+48>>2]=X2[A>>2],X2[e+52>>2]=i},function(A,e){var r,f,i=X2[(e|=0)+4>>2];X2[(A|=0)+8>>2]=X2[e>>2],X2[A+12>>2]=i,f=X2[4+(r=e+8|0)>>2],X2[(i=A+16|0)>>2]=X2[r>>2],X2[4+i>>2]=f,f=X2[4+(r=e+24|0)>>2],X2[(i=A+32|0)>>2]=X2[r>>2],X2[4+i>>2]=f,r=X2[e+20>>2],X2[(i=A+24|0)>>2]=X2[e+16>>2],X2[4+i>>2]=r,r=X2[e+36>>2],X2[(i=A+40|0)>>2]=X2[e+32>>2],X2[4+i>>2]=r,f=X2[4+(r=e+40|0)>>2],X2[(i=A+48|0)>>2]=X2[r>>2],X2[4+i>>2]=f,f=X2[4+(r=e+56|0)>>2],X2[(i=A- -64|0)>>2]=X2[r>>2],X2[4+i>>2]=f,r=X2[e+52>>2],X2[(i=A+56|0)>>2]=X2[e+48>>2],X2[4+i>>2]=r,v(X2[A+4>>2])}],{RayCallback_hasHit:function(A){return 0!=X2[(A|=0)+8>>2]|0},ccClosestRayCallback_static:function(){return J2[25040]||(X2[6262]=1065353216,X2[6263]=0,S2[25132]=1,X2[6261]=9752,X2[6264]=-1,X2[6265]=0,X2[6282]=0,h(68),S2[25040]=1),25044},ccClosestRayCallback_setFlags:s0,ccClosestRayCallback_reset:function(A,e,r,f,i){r|=0,f|=0,i|=0;var a,n=X2[(e|=0)+4>>2];X2[(A|=0)+20>>2]=X2[e>>2],X2[A+24>>2]=n,a=X2[(e=e+8|0)+4>>2],X2[(n=A+28|0)>>2]=X2[e>>2],X2[4+n>>2]=a,e=X2[r+4>>2],X2[A+36>>2]=X2[r>>2],X2[A+40>>2]=e,n=X2[(r=r+8|0)+4>>2],X2[(e=A+44|0)>>2]=X2[r>>2],X2[e+4>>2]=n,S2[A+88|0]=i,X2[A+12>>2]=f,X2[A+4>>2]=1065353216,X2[A+8>>2]=0},ccClosestRayCallback_getHitNormalWorld:function(A){return(A|=0)+52|0},ccClosestRayCallback_getHitPointWorld:function(A){return(A|=0)+68|0},ccClosestRayCallback_getCollisionShapePtr:function(A){return X2[(A|=0)+84>>2]},ccAllRayCallback_static:function(){return J2[25136]||(S2[25176]=1,X2[6286]=1065353216,X2[6287]=0,S2[25228]=1,X2[6291]=0,X2[6292]=0,S2[25248]=1,X2[6304]=0,X2[6305]=0,S2[25268]=1,X2[6309]=0,X2[6310]=0,X2[6314]=0,X2[6315]=0,S2[25288]=1,X2[6285]=9956,X2[6289]=0,X2[6293]=0,X2[6306]=0,X2[6311]=0,X2[6316]=0,X2[6321]=0,S2[25292]=1,X2[6319]=0,X2[6320]=0,X2[6288]=-1,h(69),S2[25136]=1),25140},ccAllRayCallback_setFlags:s0,ccAllRayCallback_reset:function(A,e,r,f,i){r|=0,f|=0,i|=0;var a,n,b=0;if(K2=n=K2-16|0,b=X2[(e|=0)+4>>2],X2[(A|=0)+40>>2]=X2[e>>2],X2[A+44>>2]=b,a=X2[(e=e+8|0)+4>>2],X2[(b=A+48|0)>>2]=X2[e>>2],X2[b+4>>2]=a,e=X2[r+4>>2],X2[A+56>>2]=X2[r>>2],X2[A+60>>2]=e,b=X2[(r=r+8|0)+4>>2],X2[(e=A- -64|0)>>2]=X2[r>>2],X2[e+4>>2]=b,S2[A+152|0]=i,X2[A+12>>2]=f,X2[A+4>>2]=1065353216,((X2[A+8>>2]=0)|(r=X2[A+136>>2]))<=-1&&(e=X2[A+144>>2],X2[A+140>>2]<=-1&&(e&&J2[A+148|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),S2[A+148|0]=1,X2[A+140>>2]=0,e=X2[A+144>>2]=0),v2((f=e)+(e=r<<2)|0,0,0-e|0)),((X2[A+136>>2]=0)|(r=X2[A+116>>2]))<=-1&&(e=X2[A+124>>2],X2[A+120>>2]<=-1&&(e&&J2[A+128|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),S2[A+128|0]=1,X2[A+120>>2]=0,e=X2[A+124>>2]=0),v2((f=e)+(e=r<<2)|0,0,0-e|0)),((X2[A+116>>2]=0)|(r=X2[A+24>>2]))<=-1)for(X2[A+28>>2]<=-1&&((e=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+28>>2]=0,X2[A+32>>2]=0,S2[A+36|0]=1),e=r<<2;;)if(e=e+4|(X2[X2[A+32>>2]+e>>2]=0),!((f=r)>>>0<=(r=r+1|0)>>>0))break;if(((X2[A+24>>2]=0)|(r=X2[A+96>>2]))<=-1)for(X2[A+100>>2]<=-1&&((e=X2[A+104>>2])&&J2[A+108|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+100>>2]=0,X2[A+104>>2]=0,S2[A+108|0]=1),e=r<<4;;)if(b=X2[4+n>>2],f=X2[A+104>>2]+e|0,X2[f>>2]=X2[n>>2],X2[f+4>>2]=b,b=X2[(i=8+n|0)+4>>2],X2[(f=f+8|0)>>2]=X2[i>>2],X2[f+4>>2]=b,e=e+16|0,!((f=r)>>>0<=(r=r+1|0)>>>0))break;if(((X2[A+96>>2]=0)|(r=X2[A+76>>2]))<=-1)for(X2[A+80>>2]<=-1&&((e=X2[A+84>>2])&&J2[A+88|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+80>>2]=0,X2[A+84>>2]=0,S2[A+88|0]=1),e=r<<4;;)if(b=X2[4+n>>2],f=X2[A+84>>2]+e|0,X2[f>>2]=X2[n>>2],X2[f+4>>2]=b,b=X2[(i=8+n|0)+4>>2],X2[(f=f+8|0)>>2]=X2[i>>2],X2[f+4>>2]=b,e=e+16|0,!((f=r)>>>0<=(r=r+1|0)>>>0))break;X2[A+76>>2]=0,K2=16+n|0},ccAllRayCallback_getHitPointWorld:v0,ccAllRayCallback_getHitNormalWorld:function(A){return(A|=0)+72|0},ccAllRayCallback_getCollisionShapePtrs:function(A){return(A|=0)+132|0},ManifoldPoint_get_m_positionWorldOnA:d0,ManifoldPoint_get_m_positionWorldOnB:function(A){return(A|=0)+32|0},ManifoldPoint_get_m_normalWorldOnB:function(A){return(A|=0)- -64|0},ManifoldPoint_get_m_localPointA:e,ManifoldPoint_get_m_localPointB:function(A){return(A|=0)+16|0},ManifoldPoint_getDistance:function(A){return A|=0,P2(0),A=U2[A+80>>2],P2(j2(A))>2]},ManifoldPoint_getShape1:Z0,ManifoldPoint_get_m_index0:function(A){return X2[(A|=0)+108>>2]},ManifoldPoint_get_m_index1:function(A){return X2[(A|=0)+112>>2]},PersistentManifold_getBody0:function(A){return X2[(A|=0)+836>>2]},PersistentManifold_getBody1:function(A){return X2[(A|=0)+840>>2]},PersistentManifold_getNumContacts:function(A){return X2[(A|=0)+844>>2]},PersistentManifold_getContactPoint:function(A,e){return A|=0,4+(H2(e|=0,208)+A|0)|0},__cxa_pure_virtual:f2,_ZdlPv:n,_ZTVN10__cxxabiv120__si_class_type_infoE:6e3,_ZTVN10__cxxabiv117__class_type_infoE:5960,CollisionObject_new:function(){var A,e=0;return X2[6258]=X2[6258]+1,(A=L2(343))&&(X2[(e=A+19&-16)-4>>2]=A),X2[e+132>>2]=0,X2[e+136>>2]=0,X2[e>>2]=10112,X2[e+188>>2]=0,X2[e+192>>2]=0,X2[e+180>>2]=0,X2[e+184>>2]=1566444395,X2[e+172>>2]=1065353216,X2[e+176>>2]=0,X2[e+164>>2]=1065353216,X2[e+168>>2]=1065353216,S2[e+300|0]=1,X2[e+276>>2]=0,X2[e+280>>2]=0,X2[e+268>>2]=1065353216,X2[e+272>>2]=0,X2[e+260>>2]=-1,X2[e+264>>2]=-1,X2[e+252>>2]=1,X2[e+256>>2]=0,X2[e+244>>2]=1036831949,X2[e+248>>2]=1176256512,X2[e+236>>2]=0,X2[e+240>>2]=0,X2[e+228>>2]=1056964608,X2[e+232>>2]=0,X2[e+220>>2]=1,X2[e+224>>2]=0,X2[e+212>>2]=-1,X2[e+216>>2]=-1,X2[e+204>>2]=1,X2[e+208>>2]=-1,X2[(A=e+140|0)>>2]=0,X2[4+A>>2]=0,X2[(A=e+148|0)>>2]=0,X2[4+A>>2]=0,X2[(A=e+156|0)>>2]=0,X2[4+A>>2]=0,X2[(A=e+196|0)>>2]=0,X2[4+A>>2]=0,X2[e+304>>2]=0,X2[e+296>>2]=0,X2[e+288>>2]=0,X2[e+292>>2]=0,X2[e+4>>2]=1065353216,X2[e+8>>2]=0,X2[e+12>>2]=0,X2[(A=e+16|0)>>2]=0,X2[4+A>>2]=0,X2[e+24>>2]=1065353216,X2[e+28>>2]=0,X2[e+32>>2]=0,X2[(A=e+36|0)>>2]=0,X2[4+A>>2]=0,X2[e+44>>2]=1065353216,X2[e+48>>2]=0,X2[e+52>>2]=0,X2[(A=e+56|0)>>2]=0,X2[4+A>>2]=0,X2[(A=e- -64|0)>>2]=0,X2[4+A>>2]=1065353216,X2[e+72>>2]=0,X2[e+76>>2]=0,X2[(A=e+80|0)>>2]=0,X2[4+A>>2]=0,X2[e+88>>2]=1065353216,X2[e+92>>2]=0,X2[e+96>>2]=0,X2[(A=e+100|0)>>2]=0,X2[4+A>>2]=0,X2[e+112>>2]=0,X2[e+116>>2]=0,X2[e+108>>2]=1065353216,X2[(A=e+120|0)>>2]=0,X2[4+A>>2]=0,(X2[e+128>>2]=0)|e},CollisionObject_isStaticObject:function(A){return 1&X2[(A|=0)+204>>2]},CollisionObject_isKinematicObject:function(A){return(2&J2[(A|=0)+204|0])>>>1|0},CollisionObject_isStaticOrKinematicObject:function(A){return 0!=(3&J2[(A|=0)+204|0])|0},CollisionObject_setContactProcessingThreshold:function(A,e){U2[(A|=0)+184>>2]=0|(e|=0)},CollisionObject_forceActivationState:function(A,e){X2[(A|=0)+220>>2]=e|=0},CollisionObject_activate:function(A,e){e|=0,3&J2[(A|=0)+204|0]&&!e||(4!=(-2&X2[A+220>>2])&&(X2[A+220>>2]=1),X2[A+224>>2]=0)},CollisionObject_isActive:function(A){return 2!=(0|(A=X2[(A|=0)+220>>2]))&5!=(0|A)},CollisionObject_setMaterial:function(A,e,r,f,i){A|=0,e=P2(e),r=P2(r),f=P2(f),i=P2(i),U2[A+232>>2]=e,U2[A+236>>2]=f,U2[A+228>>2]=r,U2[A+240>>2]=i,X2[A+304>>2]=X2[A+304>>2]+4},CollisionObject_getCollisionFlags:Z0,CollisionObject_setCollisionFlags:function(A,e){X2[(A|=0)+204>>2]=e|=0},CollisionObject_getWorldTransform:g0,CollisionObject_setCollisionShape:E0,CollisionObject_getCollisionShape:function(A){return X2[(A|=0)+192>>2]},CollisionObject_getCcdMotionThreshold:function(A){return P2(U2[(A|=0)+276>>2])},CollisionObject_setCcdMotionThreshold:function(A,e){A|=0,e=P2(e),U2[A+276>>2]=e},CollisionObject_getCcdSweptSphereRadius:function(A){return P2(U2[(A|=0)+272>>2])},CollisionObject_setCcdSweptSphereRadius:function(A,e){A|=0,e=P2(e),U2[A+272>>2]=e},CollisionObject_getUserIndex:function(A){return X2[(A|=0)+264>>2]},CollisionObject_setUserIndex:function(A,e){X2[(A|=0)+264>>2]=e|=0},CollisionObject_getActivationState:function(A){return X2[(A|=0)+220>>2]},CollisionObject_setIgnoreCollisionCheck:function(A,e,r){e|=0;var f=0,i=0,a=0,n=0,f=X2[(A|=0)+288>>2];A:if(r|=0){if(X2[A+292>>2]==(0|f)&&!((0|(a=f?f<<1:1))<=(0|f))){if(a&&(X2[6258]=X2[6258]+1,(r=L2(19+(a<<2)|0))&&(X2[(n=r+19&-16)-4>>2]=r)),1<=(0|f))for(r=0,i=f;;)if(X2[r+n>>2]=X2[X2[A+296>>2]+r>>2],r=r+4|0,!(i=i-1|0))break;(r=X2[A+296>>2])&&J2[A+300|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2]),f=X2[A+288>>2]),X2[A+296>>2]=n,X2[A+292>>2]=a,S2[A+300|0]=1}X2[A+288>>2]=i=f+1|0,X2[X2[A+296>>2]+(f<<2)>>2]=e}else if((0|f)<1)i=f;else{r=n=X2[A+296>>2];e:{for(;;){if(X2[r>>2]==(0|e))break e;if(r=r+4|0,(0|(i=i+1|0))==(0|f))break}i=f;break A}(0|f)<=(0|i)?i=f:(X2[(a=r)>>2]=X2[(r=(i=f-1|0)<<2)+n>>2],X2[A+288>>2]=i,X2[r+X2[A+296>>2]>>2]=e)}X2[A+280>>2]=0<(0|i)},CollisionShape_setMaterial:s0,CollisionShape_getMaterial:Y1,CollisionShape_setUserPointer:function(A,e){X2[(A|=0)+8>>2]=e|=0},CollisionShape_getUserPointer:m1,CollisionShape_getLocalScaling:function(A){return 0|N2[X2[X2[(A|=0)>>2]+28>>2]](A)},CollisionShape_setLocalScaling:function(A,e){N2[X2[X2[(A|=0)>>2]+24>>2]](A,e|=0)},CollisionShape_calculateLocalInertia:function(A,e,r){A|=0,e=P2(e),N2[X2[X2[A>>2]+32>>2]](A,e,r|=0)},CollisionShape_isCompound:function(A){return 31==X2[(A|=0)+4>>2]|0},CollisionShape_getAabb:N1,CollisionShape_getLocalBoundingSphere:function(A){var e,r;return A|=0,P2(0),P2(0),X2[(e=44+(K2=r=K2-96|0)|0)>>2]=0,X2[4+e>>2]=0,X2[(e=56+r|0)>>2]=0,X2[4+e>>2]=0,X2[52+r>>2]=1065353216,X2[(e=r+64|0)>>2]=0,X2[4+e>>2]=0,X2[(e=76+r|0)>>2]=0,X2[4+e>>2]=0,X2[72+r>>2]=1065353216,X2[(e=84+r|0)>>2]=0,X2[4+e>>2]=0,X2[92+r>>2]=0,X2[36+r>>2]=0,X2[40+r>>2]=0,X2[32+r>>2]=1065353216,N2[X2[X2[A>>2]+8>>2]](A,32+r|0,16+r|0,r),K2=96+r|0,e=P2(U2[r>>2]-U2[16+r>>2]),A=P2(e*e),e=P2(U2[4+r>>2]-U2[20+r>>2]),A=P2(A+P2(e*e)),e=P2(U2[8+r>>2]-U2[24+r>>2]),P2(P2(P2(O2(P2(A+P2(e*e))))*P2(.5)))},CollisionShape_setMargin:function(A,e){A|=0,e=P2(e),N2[X2[X2[A>>2]+44>>2]](A,e)},BoxShape_new:function(A){A|=0;var e,r,f,i,a,n,b=0;return P2(0),P2(0),P2(0),P2(0),P2(0),X2[6258]=X2[6258]+1,(f=L2(83))&&(X2[(b=f+19&-16)-4>>2]=f),X2[b+52>>2]=1025758986,X2[b+28>>2]=1065353216,X2[b+32>>2]=0,X2[b+20>>2]=1065353216,X2[b+24>>2]=1065353216,X2[b+12>>2]=0,X2[b+16>>2]=0,X2[b+4>>2]=0,X2[b+8>>2]=0,r=U2[A+8>>2],e=U2[A+4>>2],i=U2[A>>2],X2[b+48>>2]=0,i=P2(i+P2(-.03999999910593033)),U2[b+36>>2]=i,a=P2(e+P2(-.03999999910593033)),U2[b+40>>2]=a,n=P2(r+P2(-.03999999910593033)),U2[b+44>>2]=n,X2[b+60>>2]=0,X2[b>>2]=10588,r=U2[A>>2],e=U2[A+4>>2],(e=P2(U2[((U2[A+8>>2]>((f=r>2]*P2(.10000000149011612)))>2],U2[b+52>>2]=e,e=U2[b+52>>2],X2[b+48>>2]=0,U2[b+44>>2]=P2(r+n)-e,U2[b+40>>2]=P2(r+a)-e,U2[b+36>>2]=P2(r+i)-e),0|b},BoxShape_setUnscaledHalfExtents:function(A,e){A|=0,e|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var r=P2(N2[X2[X2[A>>2]+48>>2]](A)),f=P2(N2[X2[X2[A>>2]+48>>2]](A)),i=P2(N2[X2[X2[A>>2]+48>>2]](A)),a=U2[e>>2],n=U2[e+4>>2],b=U2[e+8>>2];X2[A+48>>2]=0,U2[A+44>>2]=P2(b*U2[A+28>>2])-i,U2[A+40>>2]=P2(n*U2[A+24>>2])-f,U2[A+36>>2]=P2(a*U2[A+20>>2])-r,r=U2[e>>2],f=U2[e+4>>2],r=P2(U2[((U2[e+8>>2]>((b=r>2]*P2(.10000000149011612)),P2(N2[X2[X2[A>>2]+48>>2]](A))>r&&N2[X2[X2[A>>2]+44>>2]](A,r)},SphereShape_new:function(A){A=P2(A);var e,r=0;return X2[6258]=X2[6258]+1,(e=L2(79))&&(X2[(r=e+19&-16)-4>>2]=e),X2[r+32>>2]=0,X2[r+36>>2]=0,X2[r+12>>2]=0,X2[r+16>>2]=0,X2[r+4>>2]=8,X2[r+8>>2]=0,X2[r+28>>2]=1065353216,X2[r+20>>2]=1065353216,X2[r+24>>2]=1065353216,X2[r>>2]=14616,X2[r+56>>2]=0,U2[r+52>>2]=A,U2[r+36>>2]=A,X2[(e=r+40|0)>>2]=0,X2[4+e>>2]=0,(X2[r+48>>2]=0)|r},SphereShape_setUnscaledRadius:function(A,e){A|=0,e=P2(e),U2[A+52>>2]=e,U2[A+36>>2]=e},CapsuleShape_new:function(A,e){A=P2(A),e=P2(e);var r,f=0;return X2[6258]=X2[6258]+1,(r=L2(83))&&(X2[(f=r+19&-16)-4>>2]=r),X2[f+28>>2]=1065353216,X2[f+32>>2]=0,X2[f+20>>2]=1065353216,X2[f+24>>2]=1065353216,X2[f+12>>2]=0,X2[f+16>>2]=0,X2[f+4>>2]=10,X2[f+8>>2]=0,U2[f+52>>2]=A,X2[f>>2]=10948,X2[f+60>>2]=1,X2[f+48>>2]=0,U2[f+44>>2]=A,U2[f+36>>2]=A,U2[f+40>>2]=e*P2(.5),0|f},CapsuleShape_updateProp:function(A,e,r,f){A|=0,e=P2(e),r=P2(r),f|=0;var i,a=P2(0),n=P2(0);X2[A+20>>2]=1065353216,X2[A+24>>2]=1065353216,X2[A+60>>2]=f,X2[(i=A+28|0)>>2]=1065353216,n=e,a=r;A:{e:switch((X2[4+i>>2]=0)|f){case 0:n=r,a=e;break A;case 1:break A;default:break e;}a=e,e=r}U2[A+36>>2]=n,X2[A+48>>2]=0,U2[A+44>>2]=e,U2[A+40>>2]=a,U2[A+52>>2]=U2[(A+36|0)+((f+2|0)%3<<2)>>2]},ConvexInternalShape_getImplicitShapeDimensions:function(A){return(A|=0)+36|0},CylinderShape_new:function(A){A|=0;var e,r,f,i,a,n,b=0;return P2(0),P2(0),P2(0),P2(0),P2(0),X2[6258]=X2[6258]+1,(f=L2(83))&&(X2[(b=f+19&-16)-4>>2]=f),X2[b+52>>2]=1025758986,X2[b+28>>2]=1065353216,X2[b+32>>2]=0,X2[b+20>>2]=1065353216,X2[b+24>>2]=1065353216,X2[b+12>>2]=0,X2[b+16>>2]=0,X2[b+4>>2]=35,X2[b+8>>2]=0,r=U2[A+8>>2],e=U2[A+4>>2],i=U2[A>>2],X2[b+48>>2]=0,i=P2(i+P2(-.03999999910593033)),U2[b+36>>2]=i,a=P2(e+P2(-.03999999910593033)),U2[b+40>>2]=a,n=P2(r+P2(-.03999999910593033)),U2[b+44>>2]=n,X2[b+60>>2]=1,X2[b>>2]=11112,r=U2[A>>2],e=U2[A+4>>2],(e=P2(U2[((U2[A+8>>2]>((f=r>2]*P2(.10000000149011612)))>2],U2[b+52>>2]=e,e=U2[b+52>>2],X2[b+48>>2]=0,U2[b+44>>2]=P2(r+n)-e,U2[b+40>>2]=P2(r+a)-e,U2[b+36>>2]=P2(r+i)-e),X2[b+4>>2]=13,0|b},CylinderShape_updateProp:function(A,e,r,f){A|=0,e=P2(e),r=P2(r),f|=0;var i,a=P2(0),n=P2(0);X2[A+20>>2]=1065353216,X2[A+24>>2]=1065353216,X2[A+60>>2]=f,X2[(i=A+28|0)>>2]=1065353216,n=e,a=r;A:{e:switch((X2[4+i>>2]=0)|f){case 0:n=r,a=e;break A;case 1:break A;default:break e;}a=e,e=r}U2[A+36>>2]=n,X2[A+48>>2]=0,U2[(f=A+44|0)>>2]=e,U2[(i=A+40|0)>>2]=a,e=P2(N2[X2[X2[A>>2]+48>>2]](A)),r=P2(N2[X2[X2[A>>2]+48>>2]](A)),a=P2(N2[X2[X2[A>>2]+48>>2]](A)),U2[A+36>>2]=U2[A+36>>2]-e,U2[i>>2]=U2[i>>2]-r,U2[f>>2]=U2[f>>2]-a},ConeShape_new:function(A,e){A=P2(A),e=P2(e);var r,f=0;return X2[6258]=X2[6258]+1,(r=L2(103))&&(X2[(f=r+19&-16)-4>>2]=r),X2[f+52>>2]=1025758986,X2[f+28>>2]=1065353216,X2[f+32>>2]=0,X2[f+20>>2]=1065353216,X2[f+24>>2]=1065353216,X2[f+12>>2]=0,X2[f+16>>2]=0,X2[f+4>>2]=11,X2[f+8>>2]=0,U2[f+68>>2]=e,U2[f+64>>2]=A,X2[f>>2]=11276,X2[f+80>>2]=2,X2[f+72>>2]=0,X2[f+76>>2]=1,U2[f+44>>2]=A,U2[f+40>>2]=e,U2[f+36>>2]=A,U2[f+60>>2]=A/P2(O2(P2(P2(A*A)+P2(e*e)))),0|f},ConeShape_setRadius:function(A,e){A|=0,e=P2(e),U2[A+64>>2]=e},ConeShape_setHeight:function(A,e){A|=0,e=P2(e),U2[A+68>>2]=e},ConeShape_setConeUpIndex:function(A,e){A|=0;var r,f=0,i=0;A:{e:switch(0|(e|=0)){default:f=X2[A+76>>2],i=X2[A+72>>2],e=X2[A+80>>2];break A;case 0:X2[A+72>>2]=1,X2[A+76>>2]=0,i=1,e=X2[A+80>>2]=2;break A;case 1:X2[A+72>>2]=0,f=X2[A+76>>2]=1,e=X2[A+80>>2]=2;break A;case 2:break e;}X2[A+72>>2]=0,f=X2[A+76>>2]=2,e=X2[A+80>>2]=1}U2[(r=A+36|0)+(i<<2)>>2]=U2[A+64>>2],U2[(f<<2)+r>>2]=U2[A+68>>2],U2[(e<<2)+r>>2]=U2[A+64>>2]},StaticPlaneShape_new:function(A,e){A|=0,e=P2(e);var r,f,i,a=0;return P2(0),P2(0),P2(0),P2(0),X2[6258]=X2[6258]+1,(r=L2(111))&&(X2[(a=r+19&-16)-4>>2]=r),X2[a+20>>2]=0,X2[a+12>>2]=0,X2[a+16>>2]=0,X2[a+4>>2]=35,X2[a+8>>2]=0,X2[a>>2]=11456,r=U2[A+8>>2],f=U2[A>>2],i=U2[A+4>>2],A=U2[A+12>>2],X2[a+84>>2]=1065353216,X2[a+88>>2]=0,X2[a+76>>2]=1065353216,X2[a+80>>2]=1065353216,U2[a+72>>2]=e,U2[a+68>>2]=A,X2[a+4>>2]=28,e=P2(P2(1)/P2(O2(P2(P2(P2(f*f)+P2(i*i))+P2(r*r))))),U2[a+64>>2]=r*e,U2[a+60>>2]=i*e,U2[a+56>>2]=f*e,0|a},StaticPlaneShape_setPlaneConstant:function(A,e){A|=0,e=P2(e),U2[A+72>>2]=e},StaticPlaneShape_getPlaneNormal:function(A){return(A|=0)+56|0},ccCompoundShape_new:function(){var A,e,r=0,f=0,i=X2[6258];return(e=L2(119))&&(X2[(r=e+19&-16)-4>>2]=e),X2[(e=r+32|0)>>2]=0,X2[4+e>>2]=0,X2[r+8>>2]=0,X2[r+12>>2]=0,X2[r>>2]=11628,X2[r+96>>2]=0,X2[r+88>>2]=1065353216,X2[r+92>>2]=1065353216,X2[r+80>>2]=0,X2[r+84>>2]=1065353216,X2[r+72>>2]=0,X2[r+76>>2]=1,X2[r+64>>2]=-581039253,X2[r+68>>2]=0,X2[r+56>>2]=-581039253,X2[r+60>>2]=-581039253,X2[r+48>>2]=1566444395,X2[r+52>>2]=0,X2[r+40>>2]=1566444395,X2[r+44>>2]=1566444395,X2[r+24>>2]=0,X2[r+28>>2]=0,X2[r+4>>2]=31,X2[(A=r+16|0)>>2]=0,X2[4+A>>2]=0,X2[6258]=i+2,S2[r+36|0]=1,X2[e>>2]=0,(e=L2(59))&&(X2[(f=e+19&-16)-4>>2]=e),X2[f+32>>2]=0,S2[f+36|0]=1,X2[f+24>>2]=0,X2[f+28>>2]=0,X2[f+16>>2]=0,X2[f+8>>2]=-1,X2[f+12>>2]=0,X2[f>>2]=0,X2[f+4>>2]=0,X2[r+72>>2]=f,X2[r>>2]=14744,0|r},CompoundShape_getNumChildShapes:k1,CompoundShape_addChildShape:function(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n,b,t,o,c,k,u,s,l,B=0,v=0,d=0,Z=(P2(0),0),_=0,g=(P2(0),K2-128|0);if(K2=g,X2[A+76>>2]=X2[A+76>>2]+1,B=X2[(v=e+24|0)>>2],v=X2[v+4>>2],Z=X2[(d=e+8|0)>>2],d=X2[d+4>>2],k=X2[(t=e+40|0)>>2],t=X2[4+t>>2],u=X2[e+16>>2],c=X2[e+20>>2],f=X2[e>>2],i=X2[e+4>>2],s=X2[e+32>>2],a=X2[e+36>>2],l=X2[4+(o=e+56|0)>>2],X2[(b=120+g|0)>>2]=X2[o>>2],X2[4+b>>2]=l,X2[(b=104+g|0)>>2]=k,X2[4+b>>2]=t,X2[(t=72+g|0)>>2]=Z,X2[4+t>>2]=d,X2[(d=88+g|0)>>2]=B,X2[d+4>>2]=v,v=X2[e+52>>2],X2[112+g>>2]=X2[e+48>>2],X2[116+g>>2]=v,X2[96+g>>2]=s,X2[100+g>>2]=a,X2[64+g>>2]=f,X2[68+g>>2]=i,X2[80+g>>2]=u,X2[84+g>>2]=c,s=X2[r+4>>2],l=P2(N2[X2[X2[r>>2]+48>>2]](r)),N2[X2[X2[r>>2]+8>>2]](r,e,48+g|0,32+g|0),(n=U2[48+g>>2])>2]&&(U2[A+40>>2]=n),(n=U2[32+g>>2])>U2[A+56>>2]&&(U2[A+56>>2]=n),(n=U2[52+g>>2])>2]&&(U2[A+44>>2]=n),(n=U2[36+g>>2])>U2[A+60>>2]&&(U2[A+60>>2]=n),(n=U2[56+g>>2])>2]&&(U2[A+48>>2]=n),(n=U2[40+g>>2])>U2[A- -64>>2]&&(U2[A+64>>2]=n),(v=X2[A+72>>2])?(d=X2[(B=40+g|0)+4>>2],X2[(e=24+g|0)>>2]=X2[B>>2],X2[e+4>>2]=d,d=X2[(B=56+g|0)+4>>2],X2[(e=8+g|0)>>2]=X2[B>>2],X2[e+4>>2]=d,e=X2[52+g>>2],X2[g>>2]=X2[48+g>>2],X2[4+g>>2]=e,e=X2[36+g>>2],X2[16+g>>2]=X2[32+g>>2],X2[20+g>>2]=e,d=X2[A+24>>2],(e=X2[v+4>>2])?X2[v+4>>2]=0:(X2[6258]=X2[6258]+1,e=0,(B=L2(63))&&(X2[(e=B+19&-16)-4>>2]=B),X2[e>>2]=0,X2[e+4>>2]=0,X2[e+40>>2]=0,X2[(B=e+32|0)>>2]=0,X2[B+4>>2]=0,X2[(B=e+24|0)>>2]=0,X2[B+4>>2]=0,X2[(B=e+16|0)>>2]=0,X2[B+4>>2]=0,X2[(B=e+8|0)>>2]=0,X2[B+4>>2]=0),X2[e+36>>2]=d,B=X2[4+g>>2],X2[e>>2]=X2[g>>2],X2[e+4>>2]=B,X2[e+40>>2]=0,Z=X2[(d=8+g|0)+4>>2],X2[(B=e+8|0)>>2]=X2[d>>2],X2[B+4>>2]=Z,Z=X2[(d=16+g|0)+4>>2],X2[(B=e+16|0)>>2]=X2[d>>2],X2[B+4>>2]=Z,Z=X2[(d=24+g|0)+4>>2],X2[(B=e+24|0)>>2]=X2[d>>2],X2[B+4>>2]=Z,X2[e+32>>2]=0,i1(v,X2[v>>2],e),X2[v+12>>2]=X2[v+12>>2]+1):e=0,t=112+g|0,k=96+g|0,u=80+g|0,(0|(v=X2[A+24>>2]))==X2[A+28>>2]&&!((0|(c=v?v<<1:1))<=(0|v))){if(c&&(X2[6258]=X2[6258]+1,(B=L2(H2(c,80)+19|0))&&(X2[(_=B+19&-16)-4>>2]=B)),1<=(0|v))for(Z=64;;)if(d=X2[A+32>>2]+Z|0,b=X2[4+(f=d+-64|0)>>2],X2[(i=(B=Z+_|0)+-64|0)>>2]=X2[f>>2],X2[4+i>>2]=b,a=X2[4+(f=8+f|0)>>2],X2[(i=8+i|0)>>2]=X2[f>>2],X2[4+i>>2]=a,o=X2[4+(b=8+(i=d-48|0)|0)>>2],X2[(a=8+(f=B-48|0)|0)>>2]=X2[b>>2],X2[4+a>>2]=o,a=X2[4+i>>2],X2[f>>2]=X2[i>>2],X2[4+f>>2]=a,o=X2[4+(b=8+(i=d-32|0)|0)>>2],X2[(a=8+(f=B-32|0)|0)>>2]=X2[b>>2],X2[4+a>>2]=o,a=X2[4+i>>2],X2[f>>2]=X2[i>>2],X2[4+f>>2]=a,o=X2[4+(b=8+(i=d-16|0)|0)>>2],X2[(a=8+(f=B-16|0)|0)>>2]=X2[b>>2],X2[4+a>>2]=o,a=X2[4+i>>2],X2[f>>2]=X2[i>>2],X2[4+f>>2]=a,f=X2[d+4>>2],X2[B>>2]=X2[d>>2],X2[B+4>>2]=f,f=X2[(d=d+8|0)+4>>2],X2[(B=B+8|0)>>2]=X2[d>>2],X2[B+4>>2]=f,Z=Z+80|0,!(v=v-1|0))break;(v=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[v-4>>2])),X2[A+32>>2]=_,X2[A+28>>2]=c,S2[A+36|0]=1,v=X2[A+24>>2]}d=X2[4+u>>2],v=X2[A+32>>2]+H2(v,80)|0,X2[(B=v)+16>>2]=X2[u>>2],X2[B+20>>2]=d,B=X2[68+g>>2],X2[v>>2]=X2[64+g>>2],X2[v+4>>2]=B,B=X2[4+k>>2],X2[v+32>>2]=X2[k>>2],X2[v+36>>2]=B,B=X2[4+t>>2],X2[v+48>>2]=X2[t>>2],X2[v+52>>2]=B,X2[v+64>>2]=r,d=X2[(B=72+g|0)+4>>2],X2[(r=v+8|0)>>2]=X2[B>>2],X2[r+4>>2]=d,d=X2[(B=8+u|0)+4>>2],X2[(r=v+24|0)>>2]=X2[B>>2],X2[r+4>>2]=d,d=X2[(B=8+k|0)+4>>2],X2[(r=v+40|0)>>2]=X2[B>>2],X2[r+4>>2]=d,d=X2[(B=8+t|0)+4>>2],X2[(r=v+56|0)>>2]=X2[B>>2],X2[r+4>>2]=d,X2[v+76>>2]=e,U2[v+72>>2]=l,X2[v+68>>2]=s,X2[A+24>>2]=X2[A+24>>2]+1,K2=128+g|0},CompoundShape_removeChildShape:R1,CompoundShape_removeChildShapeByIndex:function(A,e){b1(A|=0,e|=0)},CompoundShape_getChildShape:function(A,e){return X2[64+(X2[(A|=0)+32>>2]+H2(e|=0,80)|0)>>2]},CompoundShape_updateChildTransform:function(A,e,r,f){e|=0,r|=0,f|=0;var i,a=0,n=0,b=0,t=0,o=0;K2=i=K2+-64|0,a=(n=X2[(A|=0)+24>>2])+1|0,n=H2(n,80)+76|0;A:{for(;;){if((0|(a=a-1|0))<1)break A;if(o=(b=X2[A+32>>2])+n|0,n=t=n-80|0,X2[o-92>>2]==(0|e))break}if(a=n=(e=b+t|0)-76|0,b=X2[r+4>>2],X2[a>>2]=X2[r>>2],X2[a+4>>2]=b,b=X2[(a=r+8|0)+4>>2],X2[(n=n+8|0)>>2]=X2[a>>2],X2[n+4>>2]=b,o=X2[(b=r+24|0)+4>>2],X2[(a=(n=e-60|0)+8|0)>>2]=X2[b>>2],X2[a+4>>2]=o,a=X2[r+20>>2],X2[n>>2]=X2[r+16>>2],X2[n+4>>2]=a,o=X2[(b=r+40|0)+4>>2],X2[(a=(n=e-44|0)+8|0)>>2]=X2[b>>2],X2[a+4>>2]=o,a=X2[r+36>>2],X2[n>>2]=X2[r+32>>2],X2[n+4>>2]=a,b=X2[(a=r+56|0)+4>>2],X2[(n=(e=e-28|0)+8|0)>>2]=X2[a>>2],X2[n+4>>2]=b,n=X2[r+52>>2],X2[e>>2]=X2[r+48>>2],X2[e+4>>2]=n,X2[A+72>>2]){e=X2[(X2[A+32>>2]+t|0)-12>>2],N2[X2[X2[e>>2]+8>>2]](e,r,48+i|0,32+i|0),n=X2[(r=56+i|0)+4>>2],X2[(e=8+i|0)>>2]=X2[r>>2],X2[e+4>>2]=n,n=X2[(r=40+i|0)+4>>2],X2[(e=24+i|0)>>2]=X2[r>>2],X2[e+4>>2]=n,e=X2[52+i>>2],X2[i>>2]=X2[48+i>>2],X2[4+i>>2]=e,e=X2[36+i>>2],X2[16+i>>2]=X2[32+i>>2],X2[20+i>>2]=e;e:if(n=f1(b=X2[A+72>>2],r=X2[X2[A+32>>2]+t>>2])){if(0<=(0|(a=X2[b+8>>2]))){if(a)for(;;){if(!(e=X2[n+32>>2]))break e;if(n=e,!(a=a-1|0))break}}else n=X2[b>>2];}else n=0;e=X2[4+i>>2],X2[r>>2]=X2[i>>2],X2[r+4>>2]=e,t=X2[(a=24+i|0)+4>>2],X2[(e=r+24|0)>>2]=X2[a>>2],X2[e+4>>2]=t,t=X2[(a=16+i|0)+4>>2],X2[(e=r+16|0)>>2]=X2[a>>2],X2[e+4>>2]=t,t=X2[(a=8+i|0)+4>>2],X2[(e=r+8|0)>>2]=X2[a>>2],X2[e+4>>2]=t,i1(b,n,r)}f&&N2[X2[X2[A>>2]+68>>2]](A)}K2=i+64|0},TriangleMesh_new:function(){var A,e=0,r=0,f=0,i=0,i=X2[6258];return(r=L2(191))&&(X2[(e=r+19&-16)-4>>2]=r),S2[e+36|0]=1,X2[e+12>>2]=1065353216,X2[e+16>>2]=0,X2[e+4>>2]=1065353216,X2[e+8>>2]=1065353216,X2[e+32>>2]=0,X2[e+48>>2]=0,X2[e+24>>2]=0,X2[e+28>>2]=0,S2[e+100|0]=1,X2[e>>2]=12152,X2[e+96>>2]=0,S2[e+120|0]=1,X2[e+88>>2]=0,X2[e+92>>2]=0,X2[e+116>>2]=0,S2[e+140|0]=1,X2[e+108>>2]=0,X2[e+112>>2]=0,X2[e+136>>2]=0,S2[e+160|0]=1,X2[e+128>>2]=0,X2[e+132>>2]=0,X2[e+168>>2]=0,X2[e+156>>2]=0,X2[e+148>>2]=0,X2[e+152>>2]=0,$[e+164>>1]=257,X2[6258]=i+2,(r=L2(51))&&(X2[(f=r+19&-16)-4>>2]=r),r=0,(i=X2[e+32>>2])&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2]),r=X2[e+24>>2]),X2[e+32>>2]=f,S2[e+36|0]=1,X2[e+28>>2]=1,X2[(r=(r<<5)+f|0)+24>>2]=2,X2[r+28>>2]=0,X2[r+16>>2]=0,X2[r+20>>2]=16,X2[r+8>>2]=12,X2[r+12>>2]=0,X2[r>>2]=0,X2[r+4>>2]=0,X2[e+24>>2]=X2[e+24>>2]+1,r=X2[e+32>>2],X2[r+4>>2]=0,f=J2[e+164|0],X2[r+24>>2]=f?2:3,A=X2[(f?128:148)+e>>2],i=12,X2[r+8>>2]=f?12:6,X2[r>>2]=(0|A)/3,f=J2[e+165|0]?(i=16,X2[e+88>>2]):X2[e+108>>2]/3|0,X2[r+20>>2]=i,X2[r+16>>2]=0,X2[r+12>>2]=f,0|e},TriangleMesh_addTriangle:function(A,e,r,f,i){e|=0,r|=0,f|=0,i|=0;var a=X2[(A|=0)+32>>2];X2[a>>2]=X2[a>>2]+1,u1(A,s1(A,e,i)),u1(A,s1(A,r,i)),u1(A,s1(A,f,i))},BvhTriangleMeshShape_new:function(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n,b=0;return K2=n=K2-48|0,X2[6258]=X2[6258]+1,(f=L2(103))&&(X2[(b=f+19&-16)-4>>2]=f),X2[b+12>>2]=0,X2[b+16>>2]=0,X2[b+4>>2]=21,X2[b+8>>2]=0,X2[b>>2]=12252,X2[b+56>>2]=A,(X2[b+20>>2]=0)|N2[X2[X2[A>>2]+40>>2]](A)?N2[X2[X2[A>>2]+48>>2]](A,b+24|0,b+40|0):(X2[44+n>>2]=0,X2[36+n>>2]=0,X2[40+n>>2]=0,X2[32+n>>2]=1065353216,N2[X2[X2[b>>2]+68>>2]](16+n|0,b,32+n|0),U2[b+40>>2]=U2[16+n>>2]+U2[b+20>>2],X2[32+n>>2]=-1082130432,N2[X2[X2[b>>2]+68>>2]](n,b,32+n|0),a=X2[4+(f=8+n|0)>>2],X2[(A=24+n|0)>>2]=X2[f>>2],X2[A+4>>2]=a,i=X2[4+n>>2],X2[16+n>>2]=X2[n>>2],X2[20+n>>2]=i,U2[b+24>>2]=U2[16+n>>2]-U2[b+20>>2],X2[(i=40+n|0)>>2]=0,X2[4+i>>2]=0,X2[32+n>>2]=0,X2[36+n>>2]=0,X2[36+n>>2]=1065353216,N2[X2[X2[b>>2]+68>>2]](16+n|0,b,32+n|0),U2[b+44>>2]=U2[20+n>>2]+U2[b+20>>2],X2[36+n>>2]=-1082130432,N2[X2[X2[b>>2]+68>>2]](n,b,32+n|0),a=X2[4+f>>2],X2[A>>2]=X2[f>>2],X2[A+4>>2]=a,a=X2[4+n>>2],X2[16+n>>2]=X2[n>>2],X2[20+n>>2]=a,U2[b+28>>2]=U2[20+n>>2]-U2[b+20>>2],X2[i>>2]=0,X2[4+i>>2]=0,X2[i>>2]=1065353216,X2[32+n>>2]=0,X2[36+n>>2]=0,N2[X2[X2[b>>2]+68>>2]](16+n|0,b,32+n|0),X2[i>>2]=-1082130432,U2[b+48>>2]=U2[A>>2]+U2[b+20>>2],N2[X2[X2[b>>2]+68>>2]](n,b,32+n|0),i=X2[4+f>>2],X2[A>>2]=X2[f>>2],X2[A+4>>2]=i,f=X2[4+n>>2],X2[16+n>>2]=X2[n>>2],X2[20+n>>2]=f,U2[b+32>>2]=U2[A>>2]-U2[b+20>>2]),S2[b+69|(A=0)]=0,S2[b+68|0]=e,X2[b+60>>2]=0,X2[b+64>>2]=0,X2[b>>2]=13056,X2[b+4>>2]=21,r&&(X2[6258]=X2[6258]+1,(r=L2(191))&&(X2[(A=r+19&-16)-4>>2]=r),S2[A+80|0]=1,S2[A+60|0]=0,X2[A+52>>2]=287,X2[A+76>>2]=0,S2[A+100|0]=1,X2[A+68>>2]=0,X2[A+72>>2]=0,X2[A+96>>2]=0,S2[A+120|0]=1,X2[A+88>>2]=0,X2[A+92>>2]=0,X2[A+116>>2]=0,S2[A+140|0]=1,X2[A+108>>2]=0,X2[A+112>>2]=0,X2[A+136>>2]=0,S2[A+164|0]=1,X2[A+144>>2]=0,X2[A+128>>2]=0,X2[A+132>>2]=0,X2[A+160>>2]=0,X2[A+152>>2]=0,X2[A+156>>2]=0,X2[A+168>>2]=0,X2[A+28>>2]=2139095039,X2[A+32>>2]=0,X2[A+20>>2]=2139095039,X2[A+24>>2]=2139095039,X2[A+12>>2]=-8388609,X2[A+16>>2]=0,X2[A+4>>2]=-8388609,X2[A+8>>2]=-8388609,X2[A>>2]=12728,g1(X2[b+60>>2]=A,X2[b+56>>2],e,b+24|0,b+40|0),S2[b+69|0]=1),K2=48+n|0,0|b},BvhTriangleMeshShape_getOptimizedBvh:function(A){return X2[(A|=0)+60>>2]},BvhTriangleMeshShape_setOptimizedBvh:function(A,e,r,f,i){var a,n;A|=0,e|=0,r=P2(r),f=P2(f),i=P2(i),P2(0),K2=n=K2-16|0,S2[A+69|0]=0,X2[A+60>>2]=e,X2[12+n>>2]=0,U2[8+n>>2]=i,U2[n>>2]=r,U2[4+n>>2]=f,e=0|N2[X2[X2[A>>2]+28>>2]](A),r=P2(U2[e>>2]-r),a=P2(r*r),r=P2(U2[e+4>>2]-f),f=P2(a+P2(r*r)),r=P2(U2[e+8>>2]-i),P2(f+P2(r*r))>P2(1.1920928955078125e-7)&&l1(A,n),K2=16+n|0},ScaledBvhTriangleMeshShape_new:function(A,e,r,f){A|=0,e=P2(e),r=P2(r),f=P2(f);var i,a=0;return X2[6258]=X2[6258]+1,(i=L2(63))&&(X2[(a=i+19&-16)-4>>2]=i),X2[a+20>>2]=0,X2[a+12>>2]=0,X2[a+16>>2]=0,X2[a+4>>2]=22,X2[a+8>>2]=0,X2[a+40>>2]=A,X2[a+36>>2]=0,U2[a+32>>2]=f,U2[a+28>>2]=r,U2[a+24>>2]=e,X2[a>>2]=13688,0|a},ConvexTriangleMeshShape_new:function(A){A|=0;var e,r,f=0;return P2(0),K2=r=K2-96|0,X2[6258]=X2[6258]+1,(e=L2(123))&&(X2[(f=e+19&-16)-4>>2]=e),X2[f+88>>2]=-1082130432,X2[f+92>>2]=0,X2[f+80>>2]=-1082130432,X2[f+84>>2]=-1082130432,X2[f+72>>2]=1065353216,X2[f+76>>2]=0,X2[f+64>>2]=1065353216,X2[f+68>>2]=1065353216,X2[f+60>>2]=0,X2[f+52>>2]=1025758986,X2[f+28>>2]=1065353216,X2[f+32>>2]=0,X2[f+20>>2]=1065353216,X2[f+24>>2]=1065353216,X2[f+12>>2]=0,X2[f+16>>2]=0,X2[f+4>>2]=3,X2[f+8>>2]=0,X2[f+100>>2]=A,X2[f>>2]=13920,S2[f+96|0]=1,J2[25296]||(X2[6329]=0,X2[6330]=0,X2[6328]=1065353216,X2[6331]=0,X2[6332]=0,X2[6334]=0,X2[6335]=0,X2[6333]=1065353216,X2[6336]=0,X2[6337]=0,X2[6341]=0,X2[6342]=0,X2[6340]=-1082130432,X2[6338]=1065353216,X2[6339]=0,X2[6343]=0,X2[6344]=0,X2[6346]=0,X2[6347]=0,X2[6345]=-1082130432,X2[6348]=0,X2[6349]=0,X2[6350]=-1082130432,X2[6351]=0,S2[25296]=1),A=v2(r,0,96),N2[X2[X2[f>>2]+76>>2]](f,25312,A,6),e=U2[f+52>>2],U2[f+64>>2]=U2[A+48>>2]-e,U2[f+80>>2]=e+U2[A>>2],U2[f+84>>2]=e+U2[A+20>>2],U2[f+88>>2]=e+U2[A+40>>2],U2[f+68>>2]=U2[A+68>>2]-e,U2[f+72>>2]=U2[A+88>>2]-e,K2=A+96|0,0|f},EmptyShape_static:function(){return J2[25412]||(X2[6357]=0,X2[6358]=0,X2[6355]=27,X2[6356]=0,X2[6354]=14168,S2[25412]=1,X2[6359]=0),25416},SimplexShape_new:function(A){var e;return A|=0,X2[6258]=X2[6258]+1,A=0,(e=L2(187))&&(X2[(A=e+19&-16)-4>>2]=e),S2[A+96|0]=0,X2[A+92>>2]=0,X2[A+84>>2]=-1082130432,X2[A+88>>2]=-1082130432,X2[A+76>>2]=0,X2[A+80>>2]=-1082130432,X2[A+68>>2]=1065353216,X2[A+72>>2]=1065353216,X2[A+60>>2]=0,X2[A+64>>2]=1065353216,X2[A+52>>2]=1025758986,X2[A+32>>2]=0,X2[A+24>>2]=1065353216,X2[A+28>>2]=1065353216,X2[A+16>>2]=0,X2[A+20>>2]=1065353216,X2[A+8>>2]=0,X2[A+12>>2]=0,X2[A+100>>2]=0,X2[A>>2]=14280,X2[A+4>>2]=2,0|A},SimplexShape_addVertex:function(A,e){var r,f,i,a;A|=0,e|=0,P2(0),K2=a=K2-96|0,r=X2[A+100>>2],X2[A+100>>2]=r+1,i=X2[e+4>>2],X2[(f=104+(r=(r<<4)+A|0)|0)>>2]=X2[e>>2],X2[4+f>>2]=i,f=X2[(e=e+8|0)+4>>2],X2[(r=112+r|0)>>2]=X2[e>>2],X2[4+r>>2]=f,S2[A+96|0]=1,J2[25296]||(X2[6329]=0,X2[6330]=0,X2[6328]=1065353216,X2[6331]=0,X2[6332]=0,X2[6334]=0,X2[6335]=0,X2[6333]=1065353216,X2[6336]=0,X2[6337]=0,X2[6341]=0,X2[6342]=0,X2[6340]=-1082130432,X2[6338]=1065353216,X2[6339]=0,X2[6343]=0,X2[6344]=0,X2[6346]=0,X2[6347]=0,X2[6345]=-1082130432,X2[6348]=0,X2[6349]=0,X2[6350]=-1082130432,X2[6351]=0,S2[25296]=1),e=v2(a,0,96),N2[X2[X2[A>>2]+76>>2]](A,25312,e,6),i=U2[A+52>>2],U2[A+64>>2]=U2[e+48>>2]-i,U2[A+80>>2]=i+U2[e>>2],U2[A+84>>2]=i+U2[e+20>>2],U2[A+88>>2]=i+U2[e+40>>2],U2[A+68>>2]=U2[e+68>>2]-i,U2[A+72>>2]=U2[e+88>>2]-i,K2=e+96|0},TerrainShape_new:function(A,e,r,f,i,a){A|=0,e|=0,r|=0,f=P2(f),i=P2(i),a=P2(a);var n,b=0;return P2(0),X2[6258]=X2[6258]+1,(n=L2(151))&&(X2[(b=n+19&-16)-4>>2]=n),X2[b+20>>2]=0,X2[b+12>>2]=0,X2[b+16>>2]=0,X2[b+4>>2]=24,X2[b+8>>2]=0,X2[b+104>>2]=0,X2[b+100>>2]=r,U2[b+96>>2]=f,U2[b+84>>2]=a,U2[b+80>>2]=i,X2[b+76>>2]=e,X2[b+72>>2]=A,X2[b>>2]=14476,X2[b+124>>2]=1065353216,X2[b+128>>2]=0,X2[b+116>>2]=1065353216,X2[b+120>>2]=1065353216,X2[b+112>>2]=1,S2[0|(r=b+107|0)]=0,S2[r+1|0]=0,S2[r+2|0]=0,S2[r+3|0]=0,f=P2(e-1|0),U2[b+92>>2]=f,n=P2(A-1|0),U2[b+88>>2]=n,X2[b+68>>2]=0,U2[b+64>>2]=f*P2(.5),U2[b+60>>2]=P2(i+a)*P2(.5),U2[b+56>>2]=n*P2(.5),X2[b+52>>2]=0,U2[b+48>>2]=f,U2[b+44>>2]=a,U2[b+40>>2]=n,X2[b+32>>2]=0,X2[b+36>>2]=0,U2[b+28>>2]=i,(X2[b+24>>2]=0)|b},DefaultCollisionConfiguration_static:function(){var A;return K2=A=K2-32|0,J2[27200]||(X2[24+A>>2]=0,X2[28+A>>2]=1,X2[16+A>>2]=4096,X2[20+A>>2]=4096,X2[8+A>>2]=0,t4(8+A|(X2[12+A>>2]=0)),h(75),S2[27200]=1),K2=32+A|0,27204},_Znwm:R,Dispatcher_getNumManifolds:function(A){return 0|N2[X2[X2[(A|=0)>>2]+36>>2]](A)},Dispatcher_getManifoldByIndexInternal:function(A,e){return 0|N2[X2[X2[(A|=0)>>2]+40>>2]](A,e|=0)},CollisionDispatcher_new:function(){var A,e,r,f,i,a=0,n=0,b=0,t=0;for(K2=i=K2-32|0,A=R(10448),J2[27200]||(X2[24+i>>2]=0,X2[28+i>>2]=1,X2[16+i>>2]=4096,X2[20+i>>2]=4096,X2[8+i>>2]=0,t4(8+i|(X2[12+i>>2]=0)),h(75),S2[27200]=1),S2[A+24|0]=1,X2[A+4>>2]=2,X2[A>>2]=18764,X2[A+20>>2]=0,X2[A+10444>>2]=27204,X2[A+60>>2]=0,X2[A+28>>2]=15188,X2[A+12>>2]=0,X2[A+16>>2]=0,X2[A+64>>2]=76,r=A,f=0|N2[X2[X2[6801]+12>>2]](27204),X2[r+68>>2]=f,r=A,f=0|N2[X2[X2[6801]+8>>2]](27204),X2[r+72>>2]=f,t=A+5260|0;;){for(a=0,n=t;;)if(e=X2[A+10444>>2],r=n-5184|0,f=0|N2[X2[X2[e>>2]+16>>2]](e,b,a),X2[r>>2]=f,e=X2[A+10444>>2],r=n,f=0|N2[X2[X2[e>>2]+20>>2]](e,b,a),X2[r>>2]=f,n=n+4|0,36==(0|(a=a+1|0)))break;if(t=t+144|0,36==(0|(b=b+1|0)))break}return K2=32+i|0,0|A},DbvtBroadphase_new:function(){var A,e,r,f=0,i=0,a=0,n=0,b=0,t=0,o=0;K2=r=K2-32|0,A=R(176),S2[A+40|0]=1,X2[A>>2]=19460,X2[A+36>>2]=0,X2[A+28>>2]=0,X2[A+32>>2]=0,S2[A+80|0]=1,X2[A+20>>2]=0,X2[A+12>>2]=-1,X2[A+16>>2]=0,X2[A+4>>2]=0,X2[A+8>>2]=0,X2[A+76>>2]=0,X2[A+68>>2]=0,X2[A+72>>2]=0,S2[A+172|0]=1,X2[A+60>>2]=0,X2[A+52>>2]=-1,X2[A+56>>2]=0,X2[A+44>>2]=0,X2[A+48>>2]=0,X2[A+168>>2]=0,X2[A+160>>2]=0,X2[A+164>>2]=0,S2[A+153|0]=0,S2[A+154|0]=1,S2[A+152|0]=1,X2[A+124>>2]=0,X2[A+100>>2]=0,X2[A+104>>2]=0,X2[A+136>>2]=0,X2[A+128>>2]=0,X2[A+132>>2]=0,X2[A+116>>2]=10,X2[A+120>>2]=1,X2[A+108>>2]=1,X2[A+112>>2]=0,n=X2[6258],(f=L2(91))&&(X2[(i=f+19&-16)-4>>2]=f),S2[i+20|0]=1,X2[i>>2]=18960,X2[i+16>>2]=0,S2[i+44|0]=1,X2[i+24>>2]=0,X2[i+8>>2]=0,X2[i+12>>2]=0,X2[i+40>>2]=0,S2[i+64|0]=1,X2[i+32>>2]=0,X2[i+36>>2]=0,X2[i+60>>2]=0,X2[i+68>>2]=0,X2[i+52>>2]=0,X2[i+56>>2]=0,X2[6258]=n+2,(f=L2(51))&&(X2[(a=f+19&-16)-4>>2]=f),(f=X2[i+16>>2])&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[i+16>>2]=a,S2[i+20|0]=1,X2[i+12>>2]=2,k4(i),X2[A+148>>2]=0,X2[A+96>>2]=i,X2[A+140>>2]=0,X2[A+144>>2]=0,X2[(a=A+84|0)>>2]=0,X2[a+4>>2]=0,X2[A+92>>2]=0,a=X2[A+160>>2],X2[20+r>>2]=0,S2[24+r|0]=1,X2[12+r>>2]=0;A:{if(2<=((X2[16+r>>2]=0)|a)){for(i=a-1|0,a=36;;)if(f=X2[A+168>>2]+a|0,(b=X2[(n=f-4|0)>>2])&&J2[0|f]&&(X2[6259]=X2[6259]+1,q2(X2[b-4>>2])),X2[n>>2]=0,S2[0|f]=1,X2[(f=f-12|0)>>2]=0,a=a+20|(X2[f+4>>2]=0),!(i=i-1|0))break}else if(1!=(0|a)){for(X2[A+164>>2]<=(i=0)&&(X2[6258]=X2[6258]+1,(f=L2(39))&&(X2[(i=f+19&-16)-4>>2]=f),(f=X2[A+168>>2])&&J2[A+172|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[A+168>>2]=i,S2[A+172|0]=1,X2[A+164>>2]=1),i=H2(a,20),a=a-1|0;;){if(f=X2[A+168>>2]+i|(b=0),X2[f+4>>2]=0,X2[f+8>>2]=0,X2[f+12>>2]=0,S2[f+16|0]=1,(0|(n=X2[4+(e=8+r|0)>>2]))<=0)X2[f+4>>2]=n;else{if(X2[6258]=X2[6258]+1,(t=L2(19+(n<<2)|0))&&(X2[(b=t+19&-16)-4>>2]=t),(t=X2[f+12>>2])&&(X2[6259]=X2[6259]+1,q2(X2[t-4>>2])),X2[f+12>>2]=b,S2[f+16|0]=1,X2[f+8>>2]=n,1!=((X2[b>>2]=t=0)|n))for(o=n-1|0,b=4;;)if(b=b+4|(X2[X2[f+12>>2]+b>>2]=0),!(o=o-1|0))break;for(X2[f+4>>2]=n,f=X2[f+12>>2];;)if(X2[f+t>>2]=X2[X2[12+e>>2]+t>>2],t=t+4|0,!(n=n-1|0))break}if(i=i+20|0,!((f=a)>>>0<=(a=f+1|0)>>>0))break}if(X2[A+160>>2]=1,!(a=X2[20+r>>2]))break A;if(!J2[24+r|0])break A;X2[6259]=X2[6259]+1,q2(X2[a-4>>2]);break A}X2[A+160>>2]=1}return K2=32+r|0,0|A},SequentialImpulseConstraintSolver_new:function(){var A,e=0;return X2[6258]=X2[6258]+1,(A=L2(255))&&(X2[(e=A+19&-16)-4>>2]=A),S2[e+20|0]=1,X2[e>>2]=19888,X2[e+16>>2]=0,S2[e+40|0]=1,X2[e+8>>2]=0,X2[e+12>>2]=0,X2[e+36>>2]=0,S2[e+60|0]=1,X2[e+28>>2]=0,X2[e+32>>2]=0,X2[e+56>>2]=0,S2[e+80|0]=1,X2[e+48>>2]=0,X2[e+52>>2]=0,X2[e+76>>2]=0,S2[e+100|0]=1,X2[e+68>>2]=0,X2[e+72>>2]=0,X2[e+96>>2]=0,S2[e+120|0]=1,X2[e+88>>2]=0,X2[e+92>>2]=0,X2[e+116>>2]=0,S2[e+140|0]=1,X2[e+108>>2]=0,X2[e+112>>2]=0,X2[e+136>>2]=0,X2[e+128>>2]=0,X2[e+132>>2]=0,S2[e+160|0]=1,X2[e+156>>2]=0,X2[e+148>>2]=0,X2[e+152>>2]=0,S2[e+180|0]=1,X2[e+176>>2]=0,X2[e+168>>2]=0,X2[e+172>>2]=0,S2[e+208|0]=1,X2[e+232>>2]=0,X2[e+204>>2]=0,X2[e+196>>2]=0,X2[e+200>>2]=0,X2[e+224>>2]=0,X2[e+212>>2]=74,X2[e+216>>2]=73,X2[e+220>>2]=72,0|e},CollisionWorld_get_m_useContinuous:function(A){return J2[(A|=0)+16|0]},CollisionWorld_set_m_useContinuous:function(A,e){S2[(A|=0)+16|0]=e|=0},CollisionWorld_rayTest:function(A,e,r,f){N2[X2[X2[(A|=0)>>2]+32>>2]](A,e|=0,r|=0,f|=0)},CollisionWorld_getDispatchInfo:function(A){return(A|=0)+28|0},CollisionWorld_addCollisionObject:function(A,e,r,f){N2[X2[X2[(A|=0)>>2]+36>>2]](A,e|=0,r|=0,f|=0)},CollisionWorld_removeCollisionObject:function(A,e){N2[X2[X2[(A|=0)>>2]+40>>2]](A,e|=0)},CollisionWorld_convexSweepTest:function(A,e,r,f,i,a){X4(A|=0,e|=0,r|=0,f|=0,i|=0,a=P2(a))},_ZTVN10__cxxabiv121__vmi_class_type_infoE:6092,DynamicsWorld_addAction:R1,DynamicsWorld_removeAction:O4,DynamicsWorld_getSolverInfo:v0,ccDiscreteDynamicsWorld_new:function(A,e,r){A|=0,e|=0,r|=0;var f,i,a=0,n=0;return K2=i=K2-32|0,X2[6258]=X2[6258]+1,(f=L2(367))&&(X2[(a=f+19&-16)-4>>2]=f),J2[27200]||(X2[24+i>>2]=0,X2[28+i>>2]=1,X2[16+i>>2]=4096,X2[20+i>>2]=4096,X2[8+i>>2]=0,t4(8+i|(X2[12+i>>2]=0)),h(75),S2[27200]=1),X2[a+16>>2]=0,S2[a+20|0]=1,X2[a+116>>2]=1101004800,X2[a+108>>2]=0,X2[(f=a)+100>>2]=1050253722,X2[f+104>>2]=1015580809,X2[f+92>>2]=1058642330,X2[f+96>>2]=1065353216,X2[f+88>>2]=0,X2[f+80>>2]=0,X2[f+84>>2]=0,S2[f+76|0]=1,X2[f+72>>2]=0,X2[f+68>>2]=e,X2[f+64>>2]=0,S2[f+60|0]=0,X2[f+56>>2]=1025758986,S2[f+54|0]=1,$[f+52>>1]=256,X2[f+48>>2]=0,S2[f+44|0]=1,X2[f+36>>2]=1,X2[f+40>>2]=1065353216,X2[f+28>>2]=0,X2[f+32>>2]=0,X2[f+24>>2]=A,X2[f+8>>2]=0,X2[f+12>>2]=0,X2[f+132>>2]=0,X2[f+136>>2]=1045220557,X2[f+124>>2]=1045220557,X2[f+128>>2]=1045220557,X2[f+112>>2]=10,X2[f+140>>2]=0,X2[f+144>>2]=1,X2[f+172>>2]=128,X2[f+148>>2]=-1121724662,X2[f+152>>2]=1036831949,X2[f+156>>2]=0,X2[f+160>>2]=1062836634,X2[f+176>>2]=1120403456,X2[f+180>>2]=1900671690,X2[f+184>>2]=0,X2[f+188>>2]=1045220557,X2[f+164>>2]=260,X2[f+168>>2]=2,X2[f+120>>2]=1065353216,X2[f>>2]=22464,S2[f+208|0]=1,X2[f+212>>2]=0,X2[f+204>>2]=0,X2[f+216>>2]=r,X2[f+196>>2]=0,X2[f+200>>2]=0,S2[f+240|0]=1,S2[f+260|0]=1,X2[f+236>>2]=0,X2[f+228>>2]=0,X2[f+232>>2]=0,X2[f+256>>2]=0,X2[f+248>>2]=0,X2[f+252>>2]=0,X2[f+264>>2]=0,X2[f+268>>2]=-1054867456,$[f+290>>1]=0,X2[(e=f+280|0)>>2]=0,X2[e+4>>2]=0,X2[f+272>>2]=0,X2[f+276>>2]=0,S2[f+308|0]=1,S2[f+336|0]=1,X2[f+304>>2]=0,S2[f+316|0]=1,X2[f+296>>2]=0,X2[f+300>>2]=0,X2[f+312>>2]=0,X2[f+332>>2]=0,X2[f+340>>2]=0,X2[f+324>>2]=0,X2[f+328>>2]=0,e=r?0:(X2[6258]=X2[6258]+1,r=0,(e=L2(255))&&(X2[(r=e+19&-16)-4>>2]=e),S2[r+20|0]=1,X2[r>>2]=19888,X2[r+16>>2]=0,S2[r+40|0]=1,X2[r+8>>2]=0,X2[r+12>>2]=0,X2[r+36>>2]=0,S2[r+60|0]=1,X2[r+28>>2]=0,X2[r+32>>2]=0,X2[r+56>>2]=0,S2[r+80|0]=1,X2[r+48>>2]=0,X2[r+52>>2]=0,X2[r+76>>2]=0,S2[r+100|0]=1,X2[r+68>>2]=0,X2[r+72>>2]=0,X2[r+96>>2]=0,S2[r+120|0]=1,X2[r+88>>2]=0,X2[r+92>>2]=0,X2[r+116>>2]=0,X2[r+168>>2]=0,X2[r+172>>2]=0,X2[r+148>>2]=0,X2[r+152>>2]=0,X2[r+128>>2]=0,X2[r+132>>2]=0,X2[r+108>>2]=0,X2[r+112>>2]=0,X2[r+196>>2]=0,X2[r+200>>2]=0,S2[r+140|0]=1,X2[r+136>>2]=0,S2[r+160|0]=1,X2[r+156>>2]=0,S2[r+180|0]=1,X2[r+176>>2]=0,S2[r+208|0]=1,X2[r+232>>2]=0,X2[r+204>>2]=0,X2[r+224>>2]=0,X2[r+212>>2]=74,X2[r+216>>2]=73,X2[r+220>>2]=72,X2[a+216>>2]=r,1),S2[f+289|0]=e,e=X2[6258],(r=L2(87))&&(X2[(n=r+19&-16)-4>>2]=r),S2[n+20|0]=1,X2[n>>2]=22256,X2[n+16>>2]=0,S2[n+40|0]=1,X2[n+8>>2]=0,X2[n+12>>2]=0,X2[n+36>>2]=0,S2[n+60|0]=1,X2[n+28>>2]=0,X2[n+32>>2]=0,X2[n+56>>2]=0,S2[n+64|0]=1,X2[n+48>>2]=0,X2[n+52>>2]=0,S2[a+288|0]=1,X2[a+220>>2]=n,X2[6258]=e+2,r=0,(e=L2(107))&&(X2[(r=e+19&-16)-4>>2]=e),X2[r>>2]=22660,X2[r+52>>2]=0,X2[r+56>>2]=0,X2[r+72>>2]=0,X2[r+76>>2]=0,X2[r+12>>2]=0,X2[r+16>>2]=0,X2[r+32>>2]=0,X2[r+36>>2]=0,S2[r+44|0]=1,X2[r+24>>2]=A,X2[r+20>>2]=0,X2[r+4>>2]=0,X2[r+40>>2]=0,S2[r+64|0]=1,X2[r+60>>2]=0,S2[r+84|0]=1,X2[r+80>>2]=0,X2[a+344>>2]=23144,X2[a>>2]=22948,X2[r+8>>2]=X2[a+216>>2],X2[a+212>>2]=r,X2[a+56>>2]=1008981770,A=X2[a+68>>2],A=0|N2[X2[X2[A>>2]+36>>2]](A),N2[X2[X2[A>>2]+44>>2]](A,a+344|0),K2=32+i|0,0|a},DynamicsWorld_setGravity:function(A,e){N2[X2[X2[(A|=0)>>2]+72>>2]](A,e|=0)},DynamicsWorld_addRigidBody:function(A,e,r,f){N2[X2[X2[(A|=0)>>2]+88>>2]](A,e|=0,r|=0,f|=0)},DynamicsWorld_removeRigidBody:function(A,e){N2[X2[X2[(A|=0)>>2]+92>>2]](A,e|=0)},DynamicsWorld_addConstraint:function(A,e,r){N2[X2[X2[(A|=0)>>2]+56>>2]](A,e|=0,r|=0)},DynamicsWorld_removeConstraint:function(A,e){N2[X2[X2[(A|=0)>>2]+60>>2]](A,e|=0)},DynamicsWorld_stepSimulation:function(A,e,r,f){A|=0,e=P2(e),r|=0,f=P2(f),N2[X2[X2[A>>2]+52>>2]](A,e,r,f)},ccDiscreteDynamicsWorld_setAllowSleep:function(A,e){S2[26508]=1^(e|=0)},TypedConstraint_getFixedBody:function(){var A,e;return K2=e=K2-144|0,J2[26517]||(X2[6669]=0,X2[6670]=0,X2[6667]=0,X2[6668]=0,X2[6665]=0,X2[6666]=0,X2[6663]=0,X2[6664]=0,X2[6677]=0,X2[6678]=0,X2[6675]=0,X2[6676]=1566444395,X2[6673]=1065353216,X2[6674]=0,X2[6671]=1065353216,X2[6672]=1065353216,X2[6679]=0,X2[6680]=0,S2[26820]=1,X2[6699]=0,X2[6700]=0,X2[6697]=1065353216,X2[6698]=0,X2[6695]=-1,X2[6696]=-1,X2[6693]=1,X2[6694]=0,X2[6691]=1036831949,X2[6692]=1176256512,X2[6689]=0,X2[6690]=0,X2[6687]=1056964608,X2[6688]=0,X2[6685]=1,X2[6686]=0,X2[6683]=-1,X2[6684]=-1,X2[6681]=1,X2[6682]=-1,X2[6702]=0,X2[6703]=0,X2[6631]=1065353216,X2[6632]=0,X2[6633]=0,X2[6634]=0,X2[6635]=0,X2[6636]=1065353216,X2[6637]=0,X2[6638]=0,X2[6639]=0,X2[6640]=0,X2[6641]=1065353216,X2[6642]=0,X2[6643]=0,X2[6644]=0,X2[6645]=0,X2[6646]=0,X2[6647]=1065353216,X2[6648]=0,X2[6649]=0,X2[6650]=0,X2[6651]=0,X2[6652]=1065353216,X2[6653]=0,X2[6654]=0,X2[6655]=0,X2[6656]=0,X2[6706]=0,X2[6704]=0,X2[6658]=0,X2[6659]=0,X2[6657]=1065353216,X2[6660]=0,X2[6661]=0,S2[27080]=1,X2[6630]=19804,X2[6767]=0,X2[6768]=0,X2[6662]=0,X2[6769]=0,X2[(A=80+e|0)>>2]=0,X2[4+A>>2]=0,X2[(A=88+e|0)>>2]=0,X2[4+A>>2]=0,X2[96+e>>2]=0,X2[(A=12+e|0)>>2]=0,X2[4+A>>2]=0,X2[(A=20+e|0)>>2]=0,X2[4+A>>2]=0,X2[28+e>>2]=1065353216,X2[(A=32+e|0)>>2]=0,X2[4+A>>2]=0,X2[(A=40+e|0)>>2]=0,X2[4+A>>2]=0,X2[48+e>>2]=1065353216,X2[72+e>>2]=0,X2[76+e>>2]=0,X2[e>>2]=0,X2[4+e>>2]=0,X2[136+e>>2]=1008981770,X2[140+e>>2]=1008981770,X2[128+e>>2]=1000593162,X2[132+e>>2]=1008981770,S2[124+e|0]=0,X2[116+e>>2]=1061997773,X2[120+e>>2]=1065353216,X2[108+e>>2]=0,X2[112+e>>2]=0,X2[100+e>>2]=1056964608,X2[104+e>>2]=0,X2[8+e>>2]=1065353216,X2[68+e>>2]=0,X2[(A=60+e|0)>>2]=0,X2[4+A>>2]=0,X2[(A=52+e|0)>>2]=0,X2[4+A>>2]=0,g4(26520,e),h(77),S2[26517]=1),X2[6744]=0,X2[6745]=0,X2[6746]=0,X2[6747]=0,X2[6681]=1|X2[6681],U2[6738]=U2[6742]*P2(0),U2[6737]=U2[6741]*P2(0),U2[6736]=U2[6740]*P2(0),U2[6787]=U2[6734]*P2(0),U2[6786]=U2[6733]*P2(0),U2[6785]=U2[6732]*P2(0),X2[6731]=0,X2[6739]=0,X2[6788]=0,K2=144+e|0,26520},HingeConstraint_new:function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a=0;return X2[6258]=X2[6258]+1,(i=L2(787))&&(X2[(a=i+19&-16)-4>>2]=i),X2[a+44>>2]=0,X2[a+36>>2]=0,X2[a+40>>2]=1028443341,X2[a+32>>2]=e,X2[a+28>>2]=A,X2[a+24>>2]=-1,$[a+20>>1]=1,X2[a+12>>2]=-1,X2[a+16>>2]=2139095039,X2[a+4>>2]=4,X2[a+8>>2]=-1,X2[a>>2]=23432,i=X2[(e=r+8|0)+4>>2],X2[(A=a+560|0)>>2]=X2[e>>2],X2[A+4>>2]=i,A=X2[r+4>>2],X2[a+552>>2]=X2[r>>2],X2[a+556>>2]=A,i=X2[(e=r+24|0)+4>>2],X2[(A=a+576|0)>>2]=X2[e>>2],X2[A+4>>2]=i,A=X2[r+20>>2],X2[a+568>>2]=X2[r+16>>2],X2[a+572>>2]=A,i=X2[(e=r+40|0)+4>>2],X2[(A=a+592|0)>>2]=X2[e>>2],X2[A+4>>2]=i,A=X2[r+36>>2],X2[a+584>>2]=X2[r+32>>2],X2[a+588>>2]=A,i=X2[(e=r+56|0)+4>>2],X2[(A=a+608|0)>>2]=X2[e>>2],X2[A+4>>2]=i,A=X2[r+52>>2],X2[a+600>>2]=X2[r+48>>2],X2[a+604>>2]=A,r=X2[(e=f+8|0)+4>>2],X2[(A=a+624|0)>>2]=X2[e>>2],X2[A+4>>2]=r,A=X2[f+4>>2],X2[a+616>>2]=X2[f>>2],X2[a+620>>2]=A,r=X2[(e=f+24|0)+4>>2],X2[(A=a+640|0)>>2]=X2[e>>2],X2[A+4>>2]=r,A=X2[f+20>>2],X2[a+632>>2]=X2[f+16>>2],X2[a+636>>2]=A,r=X2[(e=f+40|0)+4>>2],X2[(A=a+656|0)>>2]=X2[e>>2],X2[A+4>>2]=r,A=X2[f+36>>2],X2[a+648>>2]=X2[f+32>>2],X2[a+652>>2]=A,r=X2[(e=f+56|0)+4>>2],X2[(A=a+672|0)>>2]=X2[e>>2],X2[A+4>>2]=r,A=X2[f+52>>2],X2[a+664>>2]=X2[f+48>>2],X2[a+668>>2]=A,X2[a+704>>2]=1065353216,X2[a+696>>2]=1063675494,X2[a+700>>2]=1050253722,X2[a+688>>2]=0,X2[a+692>>2]=-1082130432,S2[a+716|0]=0,X2[a+708>>2]=0,X2[a+712>>2]=0,S2[a+740|0]=0,X2[a+736>>2]=16777216,X2[a+764>>2]=0,X2[(A=a+756|0)>>2]=0,X2[A+4>>2]=0,X2[a+748>>2]=0,X2[a+752>>2]=0,X2[a+732>>2]=1065353216,0|a},HingeConstraint_setFrames:function(A,e,r){r|=0;var f,i,a=X2[(e|=0)+4>>2];X2[(A|=0)+552>>2]=X2[e>>2],X2[A+556>>2]=a,i=X2[4+(f=e+8|0)>>2],X2[(a=A+560|0)>>2]=X2[f>>2],X2[4+a>>2]=i,i=X2[4+(f=e+24|0)>>2],X2[(a=A+576|0)>>2]=X2[f>>2],X2[4+a>>2]=i,f=X2[e+20>>2],X2[(a=A+568|0)>>2]=X2[e+16>>2],X2[4+a>>2]=f,i=X2[4+(f=e+40|0)>>2],X2[(a=A+592|0)>>2]=X2[f>>2],X2[4+a>>2]=i,f=X2[e+36>>2],X2[(a=A+584|0)>>2]=X2[e+32>>2],X2[4+a>>2]=f,i=X2[4+(f=e+56|0)>>2],X2[(a=A+608|0)>>2]=X2[f>>2],X2[4+a>>2]=i,f=X2[e+52>>2],X2[(a=A+600|0)>>2]=X2[e+48>>2],X2[4+a>>2]=f,f=X2[4+(a=r+8|0)>>2],X2[(e=A+624|0)>>2]=X2[a>>2],X2[e+4>>2]=f,e=X2[r+4>>2],X2[A+616>>2]=X2[r>>2],X2[A+620>>2]=e,a=X2[r+20>>2],X2[(e=A+632|0)>>2]=X2[r+16>>2],X2[e+4>>2]=a,f=X2[4+(a=r+24|0)>>2],X2[(e=A+640|0)>>2]=X2[a>>2],X2[e+4>>2]=f,a=X2[r+36>>2],X2[(e=A+648|0)>>2]=X2[r+32>>2],X2[e+4>>2]=a,f=X2[4+(a=r+40|0)>>2],X2[(e=A+656|0)>>2]=X2[a>>2],X2[e+4>>2]=f,f=X2[4+(a=r+56|0)>>2],X2[(e=A+672|0)>>2]=X2[a>>2],X2[e+4>>2]=f,a=X2[r+52>>2],X2[(e=A+664|0)>>2]=X2[r+48>>2],X2[e+4>>2]=a,N2[X2[X2[A>>2]+8>>2]](A)},P2PConstraint_new:function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a=0;return X2[6258]=X2[6258]+1,(i=L2(379))&&(X2[(a=i+19&-16)-4>>2]=i),X2[a+44>>2]=0,X2[a+36>>2]=0,X2[a+40>>2]=1028443341,X2[a+32>>2]=e,X2[a+28>>2]=A,X2[a+24>>2]=-1,$[a+20>>1]=1,X2[a+12>>2]=-1,X2[a+16>>2]=2139095039,X2[a+4>>2]=3,X2[a+8>>2]=-1,X2[a>>2]=23548,A=X2[r+4>>2],X2[a+300>>2]=X2[r>>2],X2[a+304>>2]=A,r=X2[(e=r+8|0)+4>>2],X2[(A=a+308|0)>>2]=X2[e>>2],X2[A+4>>2]=r,A=X2[f+4>>2],X2[a+316>>2]=X2[f>>2],X2[a+320>>2]=A,r=X2[(e=f+8|0)+4>>2],X2[(A=a+324|0)>>2]=X2[e>>2],X2[A+4>>2]=r,X2[a+332>>2]=0,S2[a+344|0]=0,X2[a+348>>2]=1050253722,X2[a+352>>2]=1065353216,(X2[a+356>>2]=0)|a},P2PConstraint_setPivotA:function(A,e){var r=X2[(e|=0)+4>>2];X2[(A|=0)+300>>2]=X2[e>>2],X2[A+304>>2]=r,r=X2[(e=e+8|0)+4>>2],X2[(A=A+308|0)>>2]=X2[e>>2],X2[A+4>>2]=r},P2PConstraint_setPivotB:function(A,e){var r=X2[(e|=0)+4>>2];X2[(A|=0)+316>>2]=X2[e>>2],X2[A+320>>2]=r,r=X2[(e=e+8|0)+4>>2],X2[(A=A+324|0)>>2]=X2[e>>2],X2[A+4>>2]=r},FixedConstraint_new:function(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i,a=0;return X2[6258]=X2[6258]+1,(i=L2(1479))&&(X2[(a=i+19&-16)-4>>2]=i),X2[a+44>>2]=0,X2[a+36>>2]=0,X2[a+40>>2]=1028443341,X2[a+32>>2]=e,X2[a+28>>2]=A,X2[a+24>>2]=-1,$[a+20>>1]=1,X2[a+12>>2]=-1,X2[a+16>>2]=2139095039,X2[a+4>>2]=12,X2[a+8>>2]=-1,X2[a>>2]=23676,i=X2[(e=r+8|0)+4>>2],X2[(A=a+56|0)>>2]=X2[e>>2],X2[A+4>>2]=i,A=X2[r+4>>2],X2[a+48>>2]=X2[r>>2],X2[a+52>>2]=A,i=X2[(e=r+24|0)+4>>2],X2[(A=a+72|0)>>2]=X2[e>>2],X2[A+4>>2]=i,A=X2[r+20>>2],X2[a+64>>2]=X2[r+16>>2],X2[a+68>>2]=A,i=X2[(e=r+40|0)+4>>2],X2[(A=a+88|0)>>2]=X2[e>>2],X2[A+4>>2]=i,A=X2[r+36>>2],X2[a+80>>2]=X2[r+32>>2],X2[a+84>>2]=A,i=X2[(e=r+56|0)+4>>2],X2[(A=a+104|0)>>2]=X2[e>>2],X2[A+4>>2]=i,A=X2[r+52>>2],X2[a+96>>2]=X2[r+48>>2],X2[a+100>>2]=A,r=X2[(e=f+8|0)+4>>2],X2[(A=a+120|0)>>2]=X2[e>>2],X2[A+4>>2]=r,A=X2[f+4>>2],X2[a+112>>2]=X2[f>>2],X2[a+116>>2]=A,r=X2[(e=f+24|0)+4>>2],X2[(A=a+136|0)>>2]=X2[e>>2],X2[A+4>>2]=r,A=X2[f+20>>2],X2[a+128>>2]=X2[f+16>>2],X2[a+132>>2]=A,r=X2[(e=f+40|0)+4>>2],X2[(A=a+152|0)>>2]=X2[e>>2],X2[A+4>>2]=r,A=X2[f+36>>2],X2[a+144>>2]=X2[f+32>>2],X2[a+148>>2]=A,r=X2[(e=f+56|0)+4>>2],X2[(A=a+168|0)>>2]=X2[e>>2],X2[A+4>>2]=r,A=X2[f+52>>2],X2[a+160>>2]=X2[f+48>>2],X2[a+164>>2]=A,X2[(A=a+720|0)>>2]=0,X2[A+4>>2]=0,X2[(A=a+712|0)>>2]=0,X2[A+4>>2]=0,X2[(A=e=a+704|0)>>2]=0,X2[A+4>>2]=0,X2[(A=r=a+696|0)>>2]=0,X2[A+4>>2]=0,X2[(A=f=a+688|0)>>2]=0,X2[A+4>>2]=0,X2[a+680>>2]=0,X2[a+684>>2]=0,X2[a+736>>2]=1045220557,X2[a+728>>2]=1045220557,X2[a+732>>2]=1045220557,X2[a+756>>2]=0,X2[(A=a+748|0)>>2]=0,X2[A+4>>2]=0,X2[a+740>>2]=0,X2[a+744>>2]=0,X2[a+768>>2]=1063675494,X2[a+760>>2]=1063675494,X2[a+764>>2]=1063675494,X2[a+812>>2]=0,X2[(A=a+804|0)>>2]=0,X2[A+4>>2]=0,X2[a+828>>2]=0,X2[(A=a+820|0)>>2]=0,X2[A+4>>2]=0,S2[a+838|0]=0,S2[0|(A=a+836|0)]=0,S2[A+1|0]=0,X2[a+848>>2]=0,X2[(A=a+840|0)>>2]=0,X2[A+4>>2]=0,S2[a+858|0]=0,S2[0|(A=a+856|0)]=0,S2[A+1|0]=0,X2[a+868>>2]=0,X2[(A=a+860|0)>>2]=0,X2[A+4>>2]=0,X2[a+884>>2]=0,X2[(A=a+876|0)>>2]=0,X2[A+4>>2]=0,X2[a+900>>2]=0,X2[(A=a+892|0)>>2]=0,X2[A+4>>2]=0,S2[0|(A=a+793|0)]=0,S2[A+1|0]=0,S2[A+2|0]=0,S2[A+3|0]=0,S2[A+4|0]=0,S2[A+5|0]=0,S2[A+6|0]=0,S2[A+7|0]=0,X2[(A=a+788|0)>>2]=0,X2[A+4>>2]=0,X2[(A=a+780|0)>>2]=0,X2[A+4>>2]=0,X2[a+772>>2]=0,X2[a+776>>2]=0,X2[a+964>>2]=0,X2[(A=a+956|0)>>2]=0,X2[A+4>>2]=0,X2[(A=a+948|0)>>2]=0,X2[A+4>>2]=0,X2[(A=a+940|0)>>2]=0,X2[A+4>>2]=0,X2[(A=a+932|0)>>2]=0,X2[A+4>>2]=0,X2[(A=a+924|0)>>2]=0,X2[A+4>>2]=0,X2[(A=a+916|0)>>2]=0,X2[A+4>>2]=0,X2[a+908>>2]=0,X2[a+912>>2]=0,S2[a+1032|0]=0,X2[a+1028>>2]=0,S2[a+1024|0]=0,X2[a+1020>>2]=0,S2[a+1016|0]=0,X2[a+1012>>2]=0,S2[a+1008|0]=0,X2[a+1e3>>2]=0,X2[a+1004>>2]=1036831949,S2[a+996|0]=0,X2[a+992>>2]=0,X2[a+984>>2]=0,X2[a+988>>2]=1063675494,X2[a+976>>2]=0,X2[a+980>>2]=1045220557,X2[a+968>>2]=1065353216,X2[a+972>>2]=-1082130432,X2[a+1052>>2]=0,X2[(A=a+1044|0)>>2]=0,X2[A+4>>2]=0,X2[a+1036>>2]=0,X2[a+1040>>2]=0,S2[a+1120|0]=0,X2[a+1116>>2]=0,S2[a+1112|0]=0,X2[a+1108>>2]=0,S2[a+1104|0]=0,X2[a+1100>>2]=0,S2[a+1096|0]=0,X2[a+1088>>2]=0,X2[a+1092>>2]=1036831949,S2[a+1084|0]=0,X2[a+1080>>2]=0,X2[a+1072>>2]=0,X2[a+1076>>2]=1063675494,X2[a+1064>>2]=0,X2[a+1068>>2]=1045220557,X2[a+1056>>2]=1065353216,X2[a+1060>>2]=-1082130432,X2[a+1140>>2]=0,X2[(A=a+1132|0)>>2]=0,X2[A+4>>2]=0,X2[a+1124>>2]=0,X2[a+1128>>2]=0,X2[a+1456>>2]=0,S2[a+1208|0]=0,X2[a+1204>>2]=0,S2[a+1200|0]=0,X2[a+1196>>2]=0,S2[a+1192|0]=0,X2[a+1188>>2]=0,S2[a+1184|0]=0,X2[a+1176>>2]=0,X2[a+1180>>2]=1036831949,S2[a+1172|0]=0,X2[a+1168>>2]=0,X2[a+1160>>2]=0,X2[a+1164>>2]=1063675494,X2[a+1152>>2]=0,X2[a+1156>>2]=1045220557,X2[a+1144>>2]=1065353216,X2[a+1148>>2]=-1082130432,X2[(A=a+1228|0)>>2]=0,X2[A+4>>2]=0,X2[(A=a+1220|0)>>2]=0,X2[A+4>>2]=0,X2[a+1212>>2]=0,X2[a+1216>>2]=0,$4(a,X2[a+28>>2]+4|0,X2[a+32>>2]+4|0),X2[a>>2]=23836,X2[a+1144>>2]=0,X2[a+1148>>2]=0,X2[a+1056>>2]=0,X2[a+1060>>2]=0,X2[a+968>>2]=0,X2[a+972>>2]=0,X2[a+680>>2]=0,X2[a+684>>2]=0,X2[f>>2]=0,X2[f+4>>2]=0,X2[r>>2]=0,X2[r+4>>2]=0,X2[e>>2]=0,(X2[e+4>>2]=0)|a},FixedConstraint_setFrames:function(A,e,r){r|=0;var f,i,a=X2[(e|=0)+4>>2];X2[(A|=0)+48>>2]=X2[e>>2],X2[A+52>>2]=a,i=X2[4+(f=e+8|0)>>2],X2[(a=A+56|0)>>2]=X2[f>>2],X2[4+a>>2]=i,i=X2[4+(f=e+24|0)>>2],X2[(a=A+72|0)>>2]=X2[f>>2],X2[4+a>>2]=i,f=X2[e+20>>2],X2[(a=A- -64|0)>>2]=X2[e+16>>2],X2[4+a>>2]=f,i=X2[4+(f=e+40|0)>>2],X2[(a=A+88|0)>>2]=X2[f>>2],X2[4+a>>2]=i,f=X2[e+36>>2],X2[(a=A+80|0)>>2]=X2[e+32>>2],X2[4+a>>2]=f,i=X2[4+(f=e+56|0)>>2],X2[(a=A+104|0)>>2]=X2[f>>2],X2[4+a>>2]=i,f=X2[e+52>>2],X2[(a=A+96|0)>>2]=X2[e+48>>2],X2[4+a>>2]=f,f=X2[4+(a=r+8|0)>>2],X2[(e=A+120|0)>>2]=X2[a>>2],X2[e+4>>2]=f,e=X2[r+4>>2],X2[A+112>>2]=X2[r>>2],X2[A+116>>2]=e,a=X2[r+20>>2],X2[(e=A+128|0)>>2]=X2[r+16>>2],X2[e+4>>2]=a,f=X2[4+(a=r+24|0)>>2],X2[(e=A+136|0)>>2]=X2[a>>2],X2[e+4>>2]=f,a=X2[r+36>>2],X2[(e=A+144|0)>>2]=X2[r+32>>2],X2[e+4>>2]=a,f=X2[4+(a=r+40|0)>>2],X2[(e=A+152|0)>>2]=X2[a>>2],X2[e+4>>2]=f,f=X2[4+(a=r+56|0)>>2],X2[(e=A+168|0)>>2]=X2[a>>2],X2[e+4>>2]=f,a=X2[r+52>>2],X2[(e=A+160|0)>>2]=X2[r+48>>2],X2[e+4>>2]=a,N2[X2[X2[A>>2]+8>>2]](A),$4(A,X2[A+28>>2]+4|0,X2[A+32>>2]+4|0)},TypedConstraint_setMaxImpulseThreshold:function(A,e){A|=0,e=P2(e),U2[A+16>>2]=e},_malloc:function(A){return 0|L2(A|=0)},_free:function(A){q2(A|=0)},_read_f32:f6,_write_f32:function(A,e){A|=0,e=P2(e),U2[A>>2]=e},Vec3_new:function(A,e,r){A=P2(A),e=P2(e),r=P2(r);var f,i=0;return X2[6258]=X2[6258]+1,(f=L2(35))&&(X2[(i=f+19&-16)-4>>2]=f),X2[i+12>>2]=0,U2[i+8>>2]=r,U2[i+4>>2]=e,U2[i>>2]=A,0|i},Vec3_set:function(A,e,r,f){A|=0,e=P2(e),r=P2(r),f=P2(f),X2[A+12>>2]=0,U2[A+8>>2]=f,U2[A+4>>2]=r,U2[A>>2]=e},Vec3_x:f6,Vec3_y:i6,Vec3_z:a6,Quat_new:function(A,e,r,f){A=P2(A),e=P2(e),r=P2(r),f=P2(f);var i=R(16);return U2[i+12>>2]=f,U2[i+8>>2]=r,U2[i+4>>2]=e,U2[i>>2]=A,0|i},Quat_set:n6,Quat_x:f6,Quat_y:i6,Quat_z:a6,Quat_w:function(A){return P2(U2[(A|=0)+12>>2])},Transform_new:function(){var A,e=R(64);return X2[(A=e)+4>>2]=0,X2[A+8>>2]=0,X2[A>>2]=1065353216,X2[A+24>>2]=0,X2[A+28>>2]=0,X2[A+20>>2]=1065353216,X2[A+44>>2]=0,X2[A+48>>2]=0,X2[A+40>>2]=1065353216,X2[(A=A+12|0)>>2]=0,X2[4+A>>2]=0,X2[(A=e+32|0)>>2]=0,X2[4+A>>2]=0,X2[(A=e+52|0)>>2]=0,X2[4+A>>2]=0,(X2[e+60>>2]=0)|e},Transform_setIdentity:function(A){var e;X2[(A|=0)+4>>2]=0,X2[A+8>>2]=0,X2[A>>2]=1065353216,X2[(e=A+12|0)>>2]=0,X2[4+e>>2]=0,X2[(e=A+24|0)>>2]=0,X2[4+e>>2]=0,X2[A+20>>2]=1065353216,X2[(e=A+32|0)>>2]=0,X2[4+e>>2]=0,X2[(e=A+44|0)>>2]=0,X2[4+e>>2]=0,X2[A+40>>2]=1065353216,X2[(e=A+52|0)>>2]=0,X2[4+e>>2]=0,X2[A+60>>2]=0},Transform_setOrigin:function(A,e){var r=X2[(e|=0)+4>>2];X2[(A|=0)+48>>2]=X2[e>>2],X2[A+52>>2]=r,r=X2[(e=e+8|0)+4>>2],X2[(A=A+56|0)>>2]=X2[e>>2],X2[A+4>>2]=r},Transform_setRotation:function(A,e){A|=0,e|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var r,f,i,a,n,b,t,o=U2[e+12>>2],c=U2[e+8>>2],k=U2[e>>2],e=U2[e+4>>2];X2[A+44>>2]=0,X2[A+28>>2]=0,X2[A+12>>2]=0,r=P2(P2(2)/P2(P2(P2(P2(k*k)+P2(e*e))+P2(c*c))+P2(o*o))),i=P2(c*r),f=P2(e*i),n=P2(k*r),b=P2(o*n),U2[A+36>>2]=f+b,t=P2(k*i),r=P2(e*r),a=P2(o*r),U2[A+32>>2]=t-a,U2[A+24>>2]=f-b,f=P2(k*r),o=P2(o*i),U2[A+16>>2]=f+o,U2[A+8>>2]=t+a,U2[A+4>>2]=f-o,k=P2(k*n),o=P2(e*r),U2[A+40>>2]=P2(1)-P2(k+o),a=k,k=P2(c*i),U2[A+20>>2]=P2(1)-P2(a+k),U2[A>>2]=P2(1)-P2(o+k)},Transform_getOrigin:d0,Transform_getRotation:function(A,e){return Q4(A|=0,e|=0),0|e},Vec3_array_at:function(A,e){return X2[(A|=0)+12>>2]+((e|=0)<<4)|0},int_array_size:function(A){return X2[(A|=0)+4>>2]},int_array_at:function(A,e){return X2[X2[(A|=0)+12>>2]+((e|=0)<<2)>>2]},ccMaterial_new:function(){var A=R(16);return X2[A+8>>2]=1036831949,X2[A+12>>2]=1036831949,X2[A>>2]=1036831949,X2[A+4>>2]=1058642330,0|A},ccMaterial_set:n6,MotionState_getWorldTransform:E0,MotionState_setWorldTransform:function(A,e){N2[X2[X2[(A|=0)>>2]+12>>2]](A,e|=0)},DefaultMotionState_new:function(A){A|=0;var e,r,f,i,a,n,b=0,t=0;return X2[6258]=X2[6258]+1,(t=L2(219))&&(X2[(b=t+19&-16)-4>>2]=t),1&S2[27292]||(1&S2[27296]||(X2[6826]=0,X2[6827]=0,X2[6825]=1065353216,X2[6828]=0,X2[6829]=0,X2[6831]=0,X2[6832]=0,X2[6830]=1065353216,X2[6833]=0,X2[6834]=0,X2[6835]=1065353216,X2[6836]=0,X2[6824]=1),X2[6849]=0,X2[6850]=0,X2[6851]=0,X2[6852]=0,X2[6823]=1,t=X2[6828],X2[6839]=X2[6827],X2[6840]=t,t=X2[6826],X2[6837]=X2[6825],X2[6838]=t,t=X2[6830],X2[6841]=X2[6829],X2[6842]=t,t=X2[6832],X2[6843]=X2[6831],X2[6844]=t,t=X2[6834],X2[6845]=X2[6833],X2[6846]=t,t=X2[6836],X2[6847]=X2[6835],X2[6848]=t),X2[b>>2]=23956,a=X2[(t=A+8|0)+4>>2],X2[(r=b+12|0)>>2]=X2[t>>2],X2[4+r>>2]=a,r=X2[A+4>>2],X2[b+4>>2]=X2[A>>2],X2[b+8>>2]=r,e=X2[4+(r=A+24|0)>>2],X2[(i=b+28|0)>>2]=X2[r>>2],X2[4+i>>2]=e,i=X2[A+20>>2],X2[b+20>>2]=X2[A+16>>2],X2[b+24>>2]=i,i=X2[A+36>>2],X2[b+36>>2]=X2[A+32>>2],X2[b+40>>2]=i,f=X2[4+(i=A+40|0)>>2],X2[(a=b+44|0)>>2]=X2[i>>2],X2[4+a>>2]=f,n=X2[4+(a=A+56|0)>>2],X2[(e=b+60|0)>>2]=X2[a>>2],X2[4+e>>2]=n,e=X2[A+52>>2],X2[b+52>>2]=X2[A+48>>2],X2[b+56>>2]=e,e=X2[6838],X2[b+68>>2]=X2[6837],X2[b+72>>2]=e,f=X2[6840],X2[(e=b+76|0)>>2]=X2[6839],X2[4+e>>2]=f,f=X2[6844],X2[(e=b+92|0)>>2]=X2[6843],X2[4+e>>2]=f,e=X2[6842],X2[b+84>>2]=X2[6841],X2[b+88>>2]=e,f=X2[6848],X2[(e=b+108|0)>>2]=X2[6847],X2[4+e>>2]=f,e=X2[6846],X2[b+100>>2]=X2[6845],X2[b+104>>2]=e,f=X2[6852],X2[(e=b+124|0)>>2]=X2[6851],X2[4+e>>2]=f,e=X2[6850],X2[b+116>>2]=X2[6849],X2[b+120>>2]=e,f=X2[t+4>>2],X2[(e=b+140|0)>>2]=X2[t>>2],X2[4+e>>2]=f,t=X2[A+4>>2],X2[b+132>>2]=X2[A>>2],X2[b+136>>2]=t,e=X2[4+r>>2],X2[(t=b+156|0)>>2]=X2[r>>2],X2[t+4>>2]=e,t=X2[A+20>>2],X2[b+148>>2]=X2[A+16>>2],X2[b+152>>2]=t,r=X2[4+i>>2],X2[(t=b+172|0)>>2]=X2[i>>2],X2[t+4>>2]=r,t=X2[A+36>>2],X2[b+164>>2]=X2[A+32>>2],X2[b+168>>2]=t,r=X2[4+a>>2],X2[(t=b+188|0)>>2]=X2[a>>2],X2[t+4>>2]=r,t=X2[A+52>>2],X2[b+180>>2]=X2[A+48>>2],X2[b+184>>2]=t,(X2[b+196>>2]=0)|b},ccMotionState_new:function(A,e){A|=0,e|=0;var r,f,i=R(72);return X2[i+4>>2]=A,X2[i>>2]=24040,f=X2[4+(r=e+8|0)>>2],X2[(A=i+16|0)>>2]=X2[r>>2],X2[A+4>>2]=f,A=X2[e+4>>2],X2[i+8>>2]=X2[e>>2],X2[i+12>>2]=A,f=X2[4+(r=e+24|0)>>2],X2[(A=i+32|0)>>2]=X2[r>>2],X2[A+4>>2]=f,A=X2[e+20>>2],X2[i+24>>2]=X2[e+16>>2],X2[i+28>>2]=A,A=X2[e+36>>2],X2[i+40>>2]=X2[e+32>>2],X2[i+44>>2]=A,f=X2[4+(r=e+40|0)>>2],X2[(A=i+48|0)>>2]=X2[r>>2],X2[A+4>>2]=f,A=X2[e+52>>2],X2[i+56>>2]=X2[e+48>>2],X2[i+60>>2]=A,r=X2[(e=e+56|0)+4>>2],X2[(A=i- -64|0)>>2]=X2[e>>2],X2[A+4>>2]=r,0|i},RigidBodyConstructionInfo_static:function(A,e,r,f){A=P2(A),e|=0,r|=0,f|=0;var i=R(144);return X2[i+72>>2]=r,X2[i+4>>2]=e,U2[i>>2]=A,e=X2[f+4>>2],X2[i+76>>2]=X2[f>>2],X2[i+80>>2]=e,e=X2[(r=f+8|0)+4>>2],X2[(f=i+84|0)>>2]=X2[r>>2],X2[f+4>>2]=e,X2[i+136>>2]=1008981770,X2[i+140>>2]=1008981770,X2[i+128>>2]=1000593162,X2[i+132>>2]=1008981770,S2[i+124|0]=0,X2[i+116>>2]=1061997773,X2[i+120>>2]=1065353216,X2[i+108>>2]=0,X2[i+112>>2]=0,X2[i+100>>2]=1056964608,X2[i+104>>2]=0,X2[i+92>>2]=0,X2[i+96>>2]=0,X2[i+8>>2]=1065353216,X2[(e=i+20|0)>>2]=0,X2[e+4>>2]=0,X2[i+12>>2]=0,X2[i+16>>2]=0,X2[i+28>>2]=1065353216,X2[i+32>>2]=0,X2[i+36>>2]=0,X2[(e=i+40|0)>>2]=0,X2[e+4>>2]=0,X2[i+48>>2]=1065353216,X2[i+52>>2]=0,X2[i+56>>2]=0,X2[(e=i+60|0)>>2]=0,X2[e+4>>2]=0,(X2[i+68>>2]=0)|i},RigidBody_new:function(A,e){A=P2(A),e|=0;var r,f,i,a=0;return P2(0),K2=i=K2-144|0,J2[25412]||(X2[6357]=0,X2[6358]=0,X2[6355]=27,X2[6356]=0,X2[6354]=14168,S2[25412]=1,X2[6359]=0),X2[(r=88+i|0)>>2]=0,X2[4+r>>2]=0,f=A==P2(0)?P2(0):P2(1.6666666269302368),U2[84+i>>2]=f,U2[80+i>>2]=f,X2[(r=12+i|0)>>2]=0,X2[4+r>>2]=0,X2[(r=20+i|0)>>2]=0,X2[4+r>>2]=0,X2[136+i>>2]=1008981770,X2[140+i>>2]=1008981770,X2[128+i>>2]=1000593162,X2[132+i>>2]=1008981770,S2[124+i|0]=0,X2[120+i>>2]=1065353216,X2[112+i>>2]=0,X2[116+i>>2]=1061997773,X2[104+i>>2]=0,X2[108+i>>2]=0,X2[96+i>>2]=0,X2[100+i>>2]=1056964608,U2[76+i>>2]=f,X2[72+i>>2]=25416,X2[4+i>>2]=e,U2[i>>2]=A,X2[8+i>>2]=1065353216,X2[(e=32+i|0)>>2]=0,X2[e+4>>2]=0,X2[28+i>>2]=1065353216,X2[(e=40+i|0)>>2]=0,X2[e+4>>2]=0,X2[48+i>>2]=1065353216,X2[(e=52+i|0)>>2]=0,X2[e+4>>2]=0,X2[(e=60+i|0)>>2]=0,X2[e+4>>2]=0,X2[68+i>>2]=0,X2[6258]=X2[6258]+1,(e=L2(695))&&(X2[(a=e+19&-16)-4>>2]=e),X2[a+132>>2]=0,X2[a+136>>2]=0,X2[a+188>>2]=0,X2[a+192>>2]=0,X2[a+180>>2]=0,X2[a+184>>2]=1566444395,X2[a+172>>2]=1065353216,X2[a+176>>2]=0,X2[a+164>>2]=1065353216,X2[a+168>>2]=1065353216,S2[a+300|0]=1,X2[a+276>>2]=0,X2[a+280>>2]=0,X2[a+268>>2]=1065353216,X2[a+272>>2]=0,X2[a+260>>2]=-1,X2[a+264>>2]=-1,X2[a+252>>2]=1,X2[a+256>>2]=0,X2[a+244>>2]=1036831949,X2[a+248>>2]=1176256512,X2[a+236>>2]=0,X2[a+240>>2]=0,X2[a+228>>2]=1056964608,X2[a+232>>2]=0,X2[a+220>>2]=1,X2[a+224>>2]=0,X2[a+212>>2]=-1,X2[a+216>>2]=-1,X2[a+204>>2]=1,X2[a+208>>2]=-1,X2[(e=a+156|0)>>2]=0,X2[e+4>>2]=0,X2[(e=a+148|0)>>2]=0,X2[e+4>>2]=0,X2[(e=a+140|0)>>2]=0,X2[e+4>>2]=0,X2[(e=a+196|0)>>2]=0,X2[e+4>>2]=0,X2[a+304>>2]=0,X2[a+296>>2]=0,X2[a+288>>2]=0,X2[a+292>>2]=0,X2[a+4>>2]=1065353216,X2[a+8>>2]=0,X2[a+12>>2]=0,X2[(e=a+16|0)>>2]=0,X2[e+4>>2]=0,X2[a+24>>2]=1065353216,X2[a+28>>2]=0,X2[a+32>>2]=0,X2[(e=a+36|0)>>2]=0,X2[e+4>>2]=0,X2[a+44>>2]=1065353216,X2[a+48>>2]=0,X2[a+52>>2]=0,X2[(e=a+56|0)>>2]=0,X2[e+4>>2]=0,X2[(e=a- -64|0)>>2]=0,X2[e+4>>2]=1065353216,X2[a+72>>2]=0,X2[a+76>>2]=0,X2[(e=a+80|0)>>2]=0,X2[e+4>>2]=0,X2[a+88>>2]=1065353216,X2[a+92>>2]=0,X2[a+96>>2]=0,X2[(e=a+100|0)>>2]=0,X2[e+4>>2]=0,X2[a+112>>2]=0,X2[a+116>>2]=0,X2[a+108>>2]=1065353216,X2[(e=a+120|0)>>2]=0,X2[e+4>>2]=0,X2[a+128>>2]=0,S2[a+560|0]=1,X2[a>>2]=19804,X2[a+556>>2]=0,X2[a+548>>2]=0,X2[a+552>>2]=0,g4(a,i),K2=144+i|0,0|a},RigidBody_setCenterOfMassTransform:function(A,e){w4(A|=0,e|=0)},RigidBody_setSleepingThresholds:function(A,e,r){A|=0,e=P2(e),r=P2(r),U2[A+536>>2]=r,U2[A+532>>2]=e},RigidBody_getLinearSleepingThreshold:function(A){return P2(U2[(A|=0)+532>>2])},RigidBody_getAngularSleepingThreshold:function(A){return P2(U2[(A|=0)+536>>2])},RigidBody_setDamping:function(A,e,r){var f;A|=0,e=P2(e),r=P2(r),U2[8+(f=K2-16|0)>>2]=r,U2[12+f>>2]=e,X2[4+f>>2]=0,X2[f>>2]=1065353216,U2[A+504>>2]=U2[(eP2(1)?f:12+f|0)>>2],X2[4+f>>2]=0,X2[f>>2]=1065353216,U2[A+508>>2]=U2[(rP2(1)?f:8+f|0)>>2]},RigidBody_setMass:function(A,e){A|=0,e=P2(e),P2(0);var r,f,i,a=P2(0);P2(0),X2[8+(K2=i=K2-16|0)>>2]=1070945621,X2[12+i>>2]=0,X2[i>>2]=1070945621,X2[4+i>>2]=1070945621,r=X2[A+192>>2],31==X2[r+4>>2]&&X2[r+24>>2]<1||N2[X2[X2[r>>2]+32>>2]](r,e,i),r=X2[A+204>>2],e==P2(0)?X2[A+204>>2]=1|r:(X2[A+204>>2]=-2&r,a=P2(P2(1)/e)),U2[A+404>>2]=a,X2[A+436>>2]=0,X2[A+468>>2]=0,U2[A+424>>2]=U2[A+440>>2]*e,r=U2[8+i>>2],U2[A+464>>2]=r!=P2(0)?P2(P2(1)/r):P2(0),r=U2[4+i>>2],U2[A+460>>2]=r!=P2(0)?P2(P2(1)/r):P2(0),r=U2[i>>2],U2[A+456>>2]=r!=P2(0)?P2(P2(1)/r):P2(0),U2[A+432>>2]=U2[A+448>>2]*e,U2[A+428>>2]=U2[A+444>>2]*e,e=U2[A+412>>2],r=U2[A+416>>2],f=U2[A+408>>2],X2[A+632>>2]=0,U2[A+628>>2]=a*r,U2[A+624>>2]=a*e,U2[A+620>>2]=f*a,K2=16+i|0},RigidBody_setMassProps:function(A,e,r){A|=0,e=P2(e),r|=0;var f=P2(0),i=(P2(0),P2(0),X2[A+204>>2]);e==P2(0)?X2[A+204>>2]=1|i:(X2[A+204>>2]=-2&i,f=P2(P2(1)/e)),U2[A+404>>2]=f,X2[A+436>>2]=0,U2[A+424>>2]=U2[A+440>>2]*e,U2[A+432>>2]=U2[A+448>>2]*e,U2[A+428>>2]=U2[A+444>>2]*e,e=U2[r+8>>2],i=U2[r+4>>2],r=U2[r>>2],U2[A+620>>2]=U2[A+408>>2]*f,U2[A+624>>2]=f*U2[A+412>>2],U2[A+628>>2]=f*U2[A+416>>2],X2[A+632>>2]=0,X2[A+468>>2]=0,U2[A+456>>2]=r!=P2(0)?P2(P2(1)/r):P2(0),U2[A+460>>2]=i!=P2(0)?P2(P2(1)/i):P2(0),U2[A+464>>2]=e!=P2(0)?P2(P2(1)/e):P2(0)},RigidBody_setLinearFactor:function(A,e){A|=0,e|=0,P2(0);var r,f=X2[e+4>>2];X2[A+408>>2]=X2[e>>2],X2[A+412>>2]=f,r=X2[(e=e+8|0)+4>>2],X2[(f=A+416|0)>>2]=X2[e>>2],X2[4+f>>2]=r,X2[A+632>>2]=0,e=U2[A+404>>2],U2[A+624>>2]=e*U2[A+412>>2],U2[A+620>>2]=e*U2[A+408>>2],U2[A+628>>2]=e*U2[f>>2]},RigidBody_setAngularFactor:function(A,e){var r;e|=0,X2[(A|=0)+304>>2]=X2[A+304>>2]+1,r=X2[e+4>>2],X2[A+604>>2]=X2[e>>2],X2[A+608>>2]=r,r=X2[(e=e+8|0)+4>>2],X2[(A=A+612|0)>>2]=X2[e>>2],X2[A+4>>2]=r},RigidBody_getLinearVelocity:function(A){return(A|=0)+372|0},RigidBody_getAngularVelocity:function(A){return(A|=0)+388|0},RigidBody_setLinearVelocity:function(A,e){var r;e|=0,X2[(A|=0)+304>>2]=X2[A+304>>2]+1,r=X2[e+4>>2],X2[A+372>>2]=X2[e>>2],X2[A+376>>2]=r,r=X2[(e=e+8|0)+4>>2],X2[(A=A+380|0)>>2]=X2[e>>2],X2[A+4>>2]=r},RigidBody_setAngularVelocity:function(A,e){var r;e|=0,X2[(A|=0)+304>>2]=X2[A+304>>2]+1,r=X2[e+4>>2],X2[A+388>>2]=X2[e>>2],X2[A+392>>2]=r,r=X2[(e=e+8|0)+4>>2],X2[(A=A+396|0)>>2]=X2[e>>2],X2[A+4>>2]=r},RigidBody_getGravity:function(A){return(A|=0)+440|0},RigidBody_setGravity:function(A,e){var r,f,i,a;A|=0,e|=0,P2(0),P2(0),P2(0),P2(0),(a=U2[A+404>>2])!=P2(0)&&(r=U2[e>>2],f=U2[e+4>>2],i=U2[e+8>>2],X2[A+436>>2]=0,a=P2(P2(1)/a),U2[A+432>>2]=i*a,U2[A+428>>2]=a*f,U2[A+424>>2]=a*r),i=X2[e+4>>2],X2[A+440>>2]=X2[e>>2],X2[A+444>>2]=i,i=X2[(e=e+8|0)+4>>2],X2[(A=A+448|0)>>2]=X2[e>>2],X2[A+4>>2]=i},RigidBody_applyTorque:function(A,e){A|=0,e|=0,P2(0),P2(0);var r=U2[e+8>>2],f=U2[e+4>>2];U2[A+488>>2]=P2(U2[e>>2]*U2[A+604>>2])+U2[A+488>>2],U2[(e=A+492|0)>>2]=P2(f*U2[A+608>>2])+U2[e>>2],U2[(e=A+496|0)>>2]=P2(r*U2[A+612>>2])+U2[e>>2]},RigidBody_applyForce:function(A,e,r){A|=0,e|=0,r|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var f,i,a,n,b=U2[e+8>>2],t=U2[e+4>>2],o=U2[A+408>>2];U2[A+472>>2]=P2(U2[e>>2]*o)+U2[A+472>>2],i=t,t=U2[A+412>>2],U2[(n=A+476|0)>>2]=P2(i*t)+U2[n>>2],f=U2[A+416>>2],U2[(n=A+480|0)>>2]=P2(b*f)+U2[n>>2],n=U2[e>>2],b=U2[r>>2],a=U2[r+4>>2],f=P2(f*U2[e+8>>2]),t=P2(t*U2[e+4>>2]),r=U2[r+8>>2],U2[A+488>>2]=P2(P2(P2(a*f)-P2(t*r))*U2[A+604>>2])+U2[A+488>>2],i=U2[A+612>>2],e=A+492|0,o=P2(o*n),U2[e>>2]=P2(P2(P2(r*o)-P2(f*b))*U2[A+608>>2])+U2[e>>2],U2[(A=A+496|0)>>2]=P2(i*P2(P2(t*b)-P2(o*a)))+U2[A>>2]},RigidBody_applyCentralForce:function(A,e){A|=0,e|=0,P2(0),P2(0);var r=U2[e+8>>2],f=U2[e+4>>2];U2[A+472>>2]=P2(U2[e>>2]*U2[A+408>>2])+U2[A+472>>2],U2[(e=A+476|0)>>2]=P2(f*U2[A+412>>2])+U2[e>>2],U2[(e=A+480|0)>>2]=P2(r*U2[A+416>>2])+U2[e>>2]},RigidBody_applyTorqueImpulse:function(A,e){A|=0,e|=0,P2(0),P2(0),P2(0);var r=U2[e>>2],f=U2[e+4>>2],i=U2[e+8>>2];U2[A+388>>2]=P2(P2(P2(P2(U2[A+324>>2]*r)+P2(U2[A+328>>2]*f))+P2(U2[A+332>>2]*i))*U2[A+604>>2])+U2[A+388>>2],U2[(e=A+392|0)>>2]=P2(P2(P2(P2(r*U2[A+340>>2])+P2(f*U2[A+344>>2]))+P2(i*U2[A+348>>2]))*U2[A+608>>2])+U2[e>>2],U2[(e=A+396|0)>>2]=P2(P2(P2(P2(r*U2[A+356>>2])+P2(f*U2[A+360>>2]))+P2(i*U2[A+364>>2]))*U2[A+612>>2])+U2[e>>2]},RigidBody_applyImpulse:function(A,e,r){K4(A|=0,e|=0,r|=0)},RigidBody_applyCentralImpulse:function(A,e){A|=0,e|=0,P2(0),P2(0),P2(0);var r=U2[e+8>>2],f=U2[e+4>>2],i=U2[A+404>>2];U2[A+372>>2]=P2(P2(U2[e>>2]*U2[A+408>>2])*i)+U2[A+372>>2],U2[(e=A+376|0)>>2]=P2(i*P2(f*U2[A+412>>2]))+U2[e>>2],U2[(e=A+380|0)>>2]=P2(i*P2(r*U2[A+416>>2]))+U2[e>>2]},RigidBody_updateInertiaTensor:function(A){var e,r,f,i,a,n,b,t,o,c,k,u,s,l,B;A|=0,P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),X2[A+368>>2]=0,X2[A+352>>2]=0,X2[A+336>>2]=0,r=U2[A+36>>2],t=U2[A+456>>2],f=P2(r*t),i=U2[A+40>>2],o=U2[A+460>>2],a=P2(i*o),n=U2[A+44>>2],l=U2[A+464>>2],e=P2(n*l),U2[A+364>>2]=P2(P2(r*f)+P2(i*a))+P2(n*e),c=U2[A+20>>2],k=U2[A+24>>2],u=U2[A+28>>2],U2[A+360>>2]=P2(P2(c*f)+P2(k*a))+P2(u*e),s=U2[A+4>>2],b=P2(s*f),f=U2[A+8>>2],b=P2(b+P2(f*a)),a=U2[A+12>>2],U2[A+356>>2]=b+P2(a*e),e=P2(t*c),b=P2(o*k),B=P2(l*u),U2[A+348>>2]=P2(P2(r*e)+P2(i*b))+P2(n*B),U2[A+344>>2]=P2(P2(c*e)+P2(k*b))+P2(u*B),U2[A+340>>2]=P2(P2(s*e)+P2(f*b))+P2(a*B),e=r,r=P2(s*t),t=i,i=P2(f*o),o=n,n=P2(a*l),U2[A+332>>2]=P2(P2(e*r)+P2(t*i))+P2(o*n),U2[A+328>>2]=P2(P2(r*c)+P2(i*k))+P2(n*u),U2[A+324>>2]=P2(P2(s*r)+P2(f*i))+P2(a*n)},RigidBody_getTotalForce:function(A){return(A|=0)+472|0},RigidBody_getTotalTorque:function(A){return(A|=0)+488|0},RigidBody_getFlags:function(A){return X2[(A|=0)+564>>2]},RigidBody_setFlags:function(A,e){X2[(A|=0)+564>>2]=e|=0},RigidBody_clearForces:function(A){var e;X2[(A|=0)+472>>2]=0,X2[A+476>>2]=0,X2[(e=A+496|0)>>2]=0,X2[4+e>>2]=0,X2[(e=A+488|0)>>2]=0,X2[4+e>>2]=0,X2[(A=A+480|0)>>2]=0,X2[A+4>>2]=0},RigidBody_wantsSleeping:function(A){var e,r=0;return 4==(0|(e=X2[(A|=0)+220>>2]))||J2[26508]||(r=1,2==(-2&e)||U2[A+224>>2]>P2(2)||(r=0)),0|r},RigidBody_clearState:function(A){var e;X2[(A|=0)+372>>2]=0,X2[A+376>>2]=0,X2[A+472>>2]=0,X2[A+476>>2]=0,X2[(e=A+396|0)>>2]=0,X2[4+e>>2]=0,X2[(e=A+388|0)>>2]=0,X2[4+e>>2]=0,X2[(e=A+380|0)>>2]=0,X2[4+e>>2]=0,X2[(e=A+480|0)>>2]=0,X2[4+e>>2]=0,X2[(e=A+488|0)>>2]=0,X2[4+e>>2]=0,X2[(A=A+496|0)>>2]=0,X2[A+4>>2]=0},RigidBody_getMotionState:function(A){return X2[(A|=0)+540>>2]},_safe_delete:function(A,e){A|=0;A:{e:{r:switch(0|(e|=0)){case 0:if(A)return X2[6259]=X2[6259]+1,void q2(X2[A-4>>2]);break e;case 1:case 2:if(A)return void n(A);break e;case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:if(A)break A;break e;case 12:break r;default:break e;}A&&N2[X2[X2[A>>2]+4>>2]](A)}return}N2[X2[X2[A>>2]+4>>2]](A)},_ZSt17__throw_bad_allocv:G,_ZSt15get_new_handlerv:function(){var A;return X2[12+(A=K2-16|0)>>2]=24992,X2[8+A>>2]=2,X2[X2[12+A>>2]>>2]},_ZnwmRKSt9nothrow_t:function(A,e){var r;return e|=0,X2[12+(K2=r=K2-16|0)>>2]=A|=0,X2[8+r>>2]=e,X2[4+r>>2]=0,e=R(X2[12+(A=r)>>2]),X2[4+A>>2]=e,K2=16+r|0,X2[4+r>>2]},_Znam:D,_ZnamRKSt9nothrow_t:function(A,e){var r;return e|=0,X2[12+(K2=r=K2-16|0)>>2]=A|=0,X2[8+r>>2]=e,X2[4+r>>2]=0,e=D(X2[12+(A=r)>>2]),X2[4+A>>2]=e,K2=16+r|0,X2[4+r>>2]},_ZdlPvRKSt9nothrow_t:T,_ZdlPvm:T,_ZdaPv:W,_ZdaPvRKSt9nothrow_t:I,_ZdaPvm:I,_ZnwmSt11align_val_t:x,_ZnwmSt11align_val_tRKSt9nothrow_t:function(A,e,r){var f;return e|=0,r|=0,X2[12+(K2=f=K2-16|0)>>2]=A|=0,X2[8+f>>2]=e,X2[4+f>>2]=r,X2[f>>2]=0,e=x(X2[12+(A=f)>>2],X2[8+f>>2]),X2[A>>2]=e,K2=16+f|0,X2[f>>2]},_ZnamSt11align_val_t:y,_ZnamSt11align_val_tRKSt9nothrow_t:function(A,e,r){var f;return e|=0,r|=0,X2[12+(K2=f=K2-16|0)>>2]=A|=0,X2[8+f>>2]=e,X2[4+f>>2]=r,X2[f>>2]=0,e=y(X2[12+(A=f)>>2],X2[8+f>>2]),X2[A>>2]=e,K2=16+f|0,X2[f>>2]},_ZdlPvSt11align_val_t:V,_ZdlPvSt11align_val_tRKSt9nothrow_t:function(A,e,r){var f;e|=0,r|=0,X2[12+(K2=f=K2-16|0)>>2]=A|=0,X2[8+f>>2]=e,X2[4+f>>2]=r,V(X2[12+f>>2],X2[8+f>>2]),K2=16+f|0},_ZdlPvmSt11align_val_t:function(A,e,r){var f;e|=0,r|=0,X2[12+(K2=f=K2-16|0)>>2]=A|=0,X2[8+f>>2]=e,X2[4+f>>2]=r,V(X2[12+f>>2],X2[4+f>>2]),K2=16+f|0},_ZdaPvSt11align_val_t:p,_ZdaPvSt11align_val_tRKSt9nothrow_t:function(A,e,r){var f;e|=0,r|=0,X2[12+(K2=f=K2-16|0)>>2]=A|=0,X2[8+f>>2]=e,X2[4+f>>2]=r,p(X2[12+f>>2],X2[8+f>>2]),K2=16+f|0},_ZdaPvmSt11align_val_t:function(A,e,r){var f;e|=0,r|=0,X2[12+(K2=f=K2-16|0)>>2]=A|=0,X2[8+f>>2]=e,X2[4+f>>2]=r,p(X2[12+f>>2],X2[4+f>>2]),K2=16+f|0},_ZSt7nothrow:1088,_ZSt14set_unexpectedPFvvE:function(A){var e;return X2[12+(K2=e=K2-16|0)>>2]=A|=0,X2[12+e>>2]||(X2[12+e>>2]=1),A=e2(24100,X2[12+e>>2]),K2=16+e|0,0|A},__cxa_unexpected_handler:24100,_ZSt13set_terminatePFvvE:function(A){var e;return X2[12+(K2=e=K2-16|0)>>2]=A|=0,X2[12+e>>2]||(X2[12+e>>2]=2),A=e2(24096,X2[12+e>>2]),K2=16+e|0,0|A},__cxa_terminate_handler:24096,_ZSt14get_unexpectedv:function(){var A;return X2[12+(A=K2-16|0)>>2]=24100,X2[8+A>>2]=2,X2[X2[12+A>>2]>>2]},_ZSt10unexpectedv:function(){var A,e;X2[12+(e=K2-16|0)>>2]=24100,X2[8+e>>2]=2,X2[12+(K2=A=K2-16|0)>>2]=X2[X2[12+e>>2]>>2],N2[X2[12+A>>2]](),k2(1089),U()},_ZSt13get_terminatev:function(){var A;return X2[12+(A=K2-16|0)>>2]=24096,X2[8+A>>2]=2,X2[X2[12+A>>2]>>2]},_ZSt9terminatev:r2,_ZSt15set_new_handlerPFvvE:function(A){var e;return X2[12+(K2=e=K2-16|0)>>2]=A|=0,A=e2(24992,X2[12+e>>2]),K2=16+e|0,0|A},__cxa_new_handler:24992,__cxa_deleted_virtual:function(){k2(1200),U()},_ZNSt9exceptionD2Ev:u2,_ZNSt9exceptionD0Ev:s2,_ZNSt9exceptionD1Ev:u2,_ZNKSt9exception4whatEv:l2,_ZNSt13bad_exceptionD2Ev:r,_ZNSt13bad_exceptionD0Ev:d2,_ZNSt13bad_exceptionD1Ev:r,_ZNKSt13bad_exception4whatEv:Z2,_ZNSt9bad_allocC2Ev:_2,_ZTVSt9bad_alloc:3628,_ZTVSt9exception:3708,_ZNSt9bad_allocD2Ev:r,_ZNSt9bad_allocD0Ev:d2,_ZNSt9bad_allocD1Ev:r,_ZNKSt9bad_alloc4whatEv:g2,_ZNSt20bad_array_new_lengthC2Ev:E2,_ZTVSt20bad_array_new_length:3664,_ZNSt20bad_array_new_lengthD2Ev:Q2,_ZNSt20bad_array_new_lengthD0Ev:w2,_ZNSt20bad_array_new_lengthD1Ev:Q2,_ZNKSt20bad_array_new_length4whatEv:G2,_ZTISt9bad_alloc:3820,_ZTISt20bad_array_new_length:3860,_ZTISt9exception:3744,_ZTSSt9exception:3728,_ZTVSt13bad_exception:3752,_ZTISt13bad_exception:3792,_ZTSSt13bad_exception:3772,_ZTSSt9bad_alloc:3804,_ZTSSt20bad_array_new_length:3832,_ZNSt9bad_allocC1Ev:_2,_ZNSt20bad_array_new_lengthC1Ev:E2,_ZNSt9type_infoD2Ev:u2,_ZNSt9type_infoD0Ev:s2,_ZNSt9type_infoD1Ev:u2,_ZNSt8bad_castC2Ev:C2,_ZTVSt8bad_cast:3872,_ZNSt8bad_castD2Ev:r,_ZNSt8bad_castD0Ev:d2,_ZNSt8bad_castD1Ev:r,_ZNKSt8bad_cast4whatEv:h2,_ZNSt10bad_typeidC2Ev:F2,_ZTVSt10bad_typeid:3908,_ZNSt10bad_typeidD2Ev:r,_ZNSt10bad_typeidD0Ev:d2,_ZNSt10bad_typeidD1Ev:r,_ZNKSt10bad_typeid4whatEv:Y2,_ZTISt8bad_cast:3996,_ZTISt10bad_typeid:4024,_ZTVSt9type_info:3944,_ZTISt9type_info:3976,_ZTSSt9type_info:3960,_ZTSSt8bad_cast:3984,_ZTSSt10bad_typeid:4008,_ZNSt8bad_castC1Ev:C2,_ZNSt10bad_typeidC1Ev:F2,_ZTIN10__cxxabiv117__class_type_infoE:4120,_ZTIN10__cxxabiv116__shim_type_infoE:4072,__dynamic_cast:t,_ZTIN10__cxxabiv117__pbase_type_infoE:4168,_ZTIDn:4516,_ZTIN10__cxxabiv119__pointer_type_infoE:4216,_ZTIv:4464,_ZTIN10__cxxabiv120__function_type_infoE:4268,_ZTIN10__cxxabiv129__pointer_to_member_type_infoE:4328,_ZTSN10__cxxabiv116__shim_type_infoE:4036,_ZTSN10__cxxabiv117__class_type_infoE:4084,_ZTSN10__cxxabiv117__pbase_type_infoE:4132,_ZTSN10__cxxabiv119__pointer_type_infoE:4180,_ZTSN10__cxxabiv120__function_type_infoE:4228,_ZTSN10__cxxabiv129__pointer_to_member_type_infoE:4280,_ZTVN10__cxxabiv116__shim_type_infoE:4352,_ZTVN10__cxxabiv123__fundamental_type_infoE:4380,_ZTIN10__cxxabiv123__fundamental_type_infoE:4448,_ZTSN10__cxxabiv123__fundamental_type_infoE:4408,_ZTSv:4460,_ZTSPv:4472,_ZTIPv:4476,_ZTVN10__cxxabiv119__pointer_type_infoE:6212,_ZTSPKv:4492,_ZTIPKv:4496,_ZTSDn:4512,_ZTSPDn:4524,_ZTIPDn:4528,_ZTSPKDn:4544,_ZTIPKDn:4552,_ZTSb:4568,_ZTIb:4572,_ZTSPb:4580,_ZTIPb:4584,_ZTSPKb:4600,_ZTIPKb:4604,_ZTSw:4620,_ZTIw:4624,_ZTSPw:4632,_ZTIPw:4636,_ZTSPKw:4652,_ZTIPKw:4656,_ZTSc:4672,_ZTIc:4676,_ZTSPc:4684,_ZTIPc:4688,_ZTSPKc:4704,_ZTIPKc:4708,_ZTSh:4724,_ZTIh:4728,_ZTSPh:4736,_ZTIPh:4740,_ZTSPKh:4756,_ZTIPKh:4760,_ZTSa:4776,_ZTIa:4780,_ZTSPa:4788,_ZTIPa:4792,_ZTSPKa:4808,_ZTIPKa:4812,_ZTSs:4828,_ZTIs:4832,_ZTSPs:4840,_ZTIPs:4844,_ZTSPKs:4860,_ZTIPKs:4864,_ZTSt:4880,_ZTIt:4884,_ZTSPt:4892,_ZTIPt:4896,_ZTSPKt:4912,_ZTIPKt:4916,_ZTSi:4932,_ZTIi:4936,_ZTSPi:4944,_ZTIPi:4948,_ZTSPKi:4964,_ZTIPKi:4968,_ZTSj:4984,_ZTIj:4988,_ZTSPj:4996,_ZTIPj:5e3,_ZTSPKj:5016,_ZTIPKj:5020,_ZTSl:5036,_ZTIl:5040,_ZTSPl:5048,_ZTIPl:5052,_ZTSPKl:5068,_ZTIPKl:5072,_ZTSm:5088,_ZTIm:5092,_ZTSPm:5100,_ZTIPm:5104,_ZTSPKm:5120,_ZTIPKm:5124,_ZTSx:5140,_ZTIx:5144,_ZTSPx:5152,_ZTIPx:5156,_ZTSPKx:5172,_ZTIPKx:5176,_ZTSy:5192,_ZTIy:5196,_ZTSPy:5204,_ZTIPy:5208,_ZTSPKy:5224,_ZTIPKy:5228,_ZTSn:5244,_ZTIn:5248,_ZTSPn:5256,_ZTIPn:5260,_ZTSPKn:5276,_ZTIPKn:5280,_ZTSo:5296,_ZTIo:5300,_ZTSPo:5308,_ZTIPo:5312,_ZTSPKo:5328,_ZTIPKo:5332,_ZTSDh:5348,_ZTIDh:5352,_ZTSPDh:5360,_ZTIPDh:5364,_ZTSPKDh:5380,_ZTIPKDh:5388,_ZTSf:5404,_ZTIf:5408,_ZTSPf:5416,_ZTIPf:5420,_ZTSPKf:5436,_ZTIPKf:5440,_ZTSd:5456,_ZTId:5460,_ZTSPd:5468,_ZTIPd:5472,_ZTSPKd:5488,_ZTIPKd:5492,_ZTSe:5508,_ZTIe:5512,_ZTSPe:5520,_ZTIPe:5524,_ZTSPKe:5540,_ZTIPKe:5544,_ZTSg:5560,_ZTIg:5564,_ZTSPg:5572,_ZTIPg:5576,_ZTSPKg:5592,_ZTIPKg:5596,_ZTSDu:5612,_ZTIDu:5616,_ZTSPDu:5624,_ZTIPDu:5628,_ZTSPKDu:5644,_ZTIPKDu:5652,_ZTSDs:5668,_ZTIDs:5672,_ZTSPDs:5680,_ZTIPDs:5684,_ZTSPKDs:5700,_ZTIPKDs:5708,_ZTSDi:5724,_ZTIDi:5728,_ZTSPDi:5736,_ZTIPDi:5740,_ZTSPKDi:5756,_ZTIPKDi:5764,_ZTVN10__cxxabiv117__array_type_infoE:5780,_ZTIN10__cxxabiv117__array_type_infoE:5844,_ZTSN10__cxxabiv117__array_type_infoE:5808,_ZTVN10__cxxabiv120__function_type_infoE:5856,_ZTVN10__cxxabiv116__enum_type_infoE:5884,_ZTIN10__cxxabiv116__enum_type_infoE:5948,_ZTSN10__cxxabiv116__enum_type_infoE:5912,_ZTIN10__cxxabiv120__si_class_type_infoE:6080,_ZTSN10__cxxabiv120__si_class_type_infoE:6040,_ZTIN10__cxxabiv121__vmi_class_type_infoE:6172,_ZTSN10__cxxabiv121__vmi_class_type_infoE:6132,_ZTVN10__cxxabiv117__pbase_type_infoE:6184,_ZTVN10__cxxabiv129__pointer_to_member_type_infoE:6240};function L2(A){var e,r=0,f=0,i=0,a=0,n=0,b=0,t=0,o=0,c=0,k=0,u=0;K2=e=K2-16|0;A:{e:{r:{f:{i:{a:{n:{b:{t:{o:{c:{if(A>>>0<=236){if(3&(r=(n=X2[6056])>>>(f=(b=A>>>0<11?16:A+19&-16)>>>3|0)|0)){A=(a=X2[(r=(i=1^(f|1&r))<<3)+24272>>2])+8|0,(0|(f=X2[a+8>>2]))==(0|(r=r+24264|0))?(u=s(i)&n,X2[24224>>2]=u):(X2[r+8>>2]=f,X2[f+12>>2]=r),X2[a+4>>2]=3|(r=i<<3),X2[(r=r+a|0)+4>>2]=1|X2[r+4>>2];break A}if(b>>>0<=(c=X2[6058])>>>0)break c;if(r){f=A=(r=(0-(A=(0-(A=2<>>12&16,i=X2[(A=(f=((f=(f|=A=(r=r>>>A|0)>>>5&8)|(A=(r=r>>>A|0)>>>2&4)|(A=(r=r>>>A|0)>>>1&2))|(A=(r=r>>>A|0)>>>1&1))+(r>>>A|0)|0)<<3)+24272>>2],(0|(r=X2[i+8>>2]))==(0|(A=A+24264|0))?(n=s(f)&n,X2[6056]=n):(X2[A+8>>2]=r,X2[r+12>>2]=A),A=i+8|0,X2[i+4>>2]=3|b,X2[(r=f<<3)+i>>2]=a=r-b|0,X2[(i=i+b|0)+4>>2]=1|a,c&&(f=24264+((r=c>>>3|0)<<3)|0,b=X2[6061],r=(r=1<>2]:(X2[6056]=r|n,f),X2[r+12>>2]=b,X2[f+8>>2]=b,X2[b+12>>2]=f,X2[b+8>>2]=r),X2[6061]=i,X2[6058]=a;break A}if(!(t=X2[6057]))break c;for(f=A=(r=(0-t&t)-1|0)>>>12&16,r=X2[24528+(((f=(f|=A=(r=r>>>A|0)>>>5&8)|(A=(r=r>>>A|0)>>>2&4)|(A=(r=r>>>A|0)>>>1&2))|(A=(r=r>>>A|0)>>>1&1))+(r>>>A|0)<<2)>>2],i=(-8&X2[r+4>>2])-b|0,f=r;;){if(!(A=(A=X2[f+16>>2])||X2[f+20>>2]))break;i=(a=(f=(-8&X2[A+4>>2])-b|0)>>>0>>0)?f:i,r=a?A:r,f=A}if(k=X2[r+24>>2],(0|(a=X2[r+12>>2]))!=(0|r)){A=X2[r+8>>2],X2[a+8>>2]=A,X2[A+12>>2]=a;break e}if(!(A=X2[(f=r+20|0)>>2])){if(!(A=X2[r+16>>2]))break o;f=r+16|0}for(;;)if(o=f,!((A=X2[(f=(a=A)+20|0)>>2])||(f=a+16|0,A=X2[a+16>>2])))break;X2[o>>2]=0;break e}if(b=-1,!(4294967231>>0)&&(b=-16&(A=A+19|0),t=X2[6057])){f=0-b|0,(A=A>>>8|(o=0))&&(o=31,16777215>>0||(o=28+((A=((A=(A<<=r=A+1048320>>>16&8)<<(n=A+520192>>>16&4))<<(i=A+245760>>>16&2)>>>15|0)-(i|r|n)|0)<<1|b>>>A+21&1)|0));k:{u:{if(i=X2[24528+(o<<2)>>2])for(r=b<<(31==(0|o)?0:25-(o>>>1|0)|0),A=0;;){if(!(f>>>0<=(n=(-8&X2[i+4>>2])-b|0)>>>0||(a=i,f=n))){f=0,A=i;break u}if(n=X2[i+20>>2],i=X2[16+((r>>>29&4)+i|0)>>2],A=!n||(0|n)==(0|i)?A:n,r<<=0!=(0|i),!i)break}else A=0;if(!(A|a)){if(!(A=(0-(A=2<>>12&16,A=X2[24528+(((i=(i|=A=(r=r>>>A|0)>>>5&8)|(A=(r=r>>>A|0)>>>2&4)|(A=(r=r>>>A|0)>>>1&2))|(A=(r=r>>>A|0)>>>1&1))+(r>>>A|0)<<2)>>2]}if(!A)break k}for(;;)if(f=(i=(r=(-8&X2[A+4>>2])-b|0)>>>0>>0)?r:f,a=i?A:a,!(A=(r=X2[A+16>>2])||X2[A+20>>2]))break}if(a&&!(X2[6058]-b>>>0<=f>>>0)){if(o=X2[a+24>>2],(0|a)!=(0|(r=X2[a+12>>2]))){A=X2[a+8>>2],X2[r+8>>2]=A,X2[A+12>>2]=r;break r}if(!(A=X2[(i=a+20|0)>>2])){if(!(A=X2[a+16>>2]))break t;i=a+16|0}for(;;)if(n=i,!((A=X2[(i=(r=A)+20|0)>>2])||(i=r+16|0,A=X2[r+16>>2])))break;X2[n>>2]=0;break r}}}if(b>>>0<=(f=X2[6058])>>>0){i=X2[6061],16<=(r=f-b|0)>>>0?(X2[(A=i+b|0)+4>>2]=1|r,X2[6058]=r,X2[6061]=A,X2[f+i>>2]=r,X2[i+4>>2]=3|b):(X2[i+4>>2]=3|f,X2[(A=f+i|0)+4>>2]=1|X2[A+4>>2],X2[6061]=0,X2[6058]=0),A=i+8|0;break A}if(b>>>0<(t=X2[6059])>>>0){f=X2[6062],X2[(r=f+b|0)+4>>2]=1|(A=t-b|0),X2[6059]=A,X2[6062]=r,X2[f+4>>2]=3|b,A=f+8|0;break A}if((f=(a=(r=o=b+71|(A=0))+(f=X2[6174]?X2[6176]:(X2[6177]=-1,X2[6178]=-1,X2[6175]=65536,X2[6176]=65536,X2[6174]=12+e&-16^1431655768,X2[6179]=0,X2[6167]=0,65536))|0)&(i=0-f|0))>>>0<=b>>>0){X2[6180]=48;break A}if((r=X2[6166])&&!((n=(A=X2[6164])+f|0)>>>0<=r>>>0&&A>>>0>>0)){A=0,X2[6180]=48;break A}if(4&J2[24668])break a;c:{k:{if(n=X2[6062])for(A=24672;;){if(n>>>0<(r=X2[A>>2])+X2[A+4>>2]>>>0&&r>>>0<=n>>>0)break k;if(!(A=X2[A+8>>2]))break}if(-1==(0|(r=C(0))))break n;if(n=f,(n=(A=(i=X2[6175])-1|0)&r?(f-r|0)+(A+r&0-i)|0:n)>>>0<=b>>>0)break n;if(2147483646>>0)break n;if(i=X2[6166]){if((a=(A=X2[6164])+n|0)>>>0<=A>>>0)break n;if(i>>>0>>0)break n}if((0|r)!=(0|(A=C(n))))break c;break i}if(2147483646<(n=i&a-t)>>>0)break n;if((0|(r=C(n)))==(X2[A>>2]+X2[A+4>>2]|0))break b;A=r}if(r=A,!(b+72>>>0<=n>>>0||2147483646>>0||-1==(0|r))){if(2147483646<(A=(A=X2[6176])+(o-n|0)&0-A)>>>0)break i;if(-1!=(0|C(A))){n=A+n|0;break i}C(0-n|0);break n}if(-1!=(0|r))break i;break n}a=0;break e}r=0;break r}if(-1!=(0|r))break i}X2[6167]=4|X2[6167]}if(2147483646>>0)break f;if(r=C(f),(A=C(0))>>>0<=r>>>0)break f;if(-1==(0|r))break f;if(-1==(0|A))break f;if((n=A-r|0)>>>0<=b+56>>>0)break f}A=X2[6164]+n|0,(X2[6164]=A)>>>0>X[6165]&&(X2[6165]=A);i:{a:{n:{if(t=X2[6062]){for(A=24672;;){if(((f=X2[A>>2])+(a=X2[A+4>>2])|0)==(0|r))break n;if(!(A=X2[A+8>>2]))break}break a}for((A=X2[6060])>>>0<=r>>>0&&A||(X2[6060]=r),A=0,X2[6169]=n,X2[6168]=r,X2[6064]=-1,X2[6065]=X2[6174],X2[6171]=0;;)if(X2[A+24272>>2]=f=A+24264|0,X2[A+24276>>2]=f,256==(0|(A=A+8|0)))break;X2[(i=(A=r+8&15?-8-r&15:0)+r|0)+4>>2]=1|(A=(f=n-56|0)-A|0),X2[6063]=X2[6178],X2[6059]=A,X2[6062]=i,X2[4+(r+f|0)>>2]=56;break i}if(!(8&J2[A+12|0])&&!(r>>>0<=t>>>0||t>>>0>>0)){f=X2[6059]+n|0,X2[(i=(r=t+8&15?-8-t&15:0)+t|0)+4>>2]=1|(r=f-r|0),X2[A+4>>2]=a+n,X2[6063]=X2[6178],X2[6059]=r,X2[6062]=i,X2[4+(f+t|0)>>2]=56;break i}}r>>>0<(a=X2[6060])>>>0&&(X2[6060]=r,a=0),f=r+n|0,A=24672;a:{n:{b:{t:{o:{c:{for(;;){if((0|f)==X2[A>>2])break;if(!(A=X2[A+8>>2]))break c}if(!(8&J2[A+12|0]))break o}for(A=24672;;){if((f=X2[A>>2])>>>0<=t>>>0&&t>>>0<(a=f+X2[A+4>>2]|0)>>>0)break t;A=X2[A+8>>2]}}if(X2[A>>2]=r,X2[A+4>>2]=X2[A+4>>2]+n,X2[(k=(r+8&15?-8-r&15:0)+r|0)+4>>2]=3|b,A=((r=f+(f+8&15?-8-f&15:0)|0)-k|0)-b|0,o=b+k|0,(0|r)==(0|t)){X2[6062]=o,A=X2[6059]+A|0,X2[6059]=A,X2[o+4>>2]=1|A;break n}if(X2[6061]==(0|r)){X2[6061]=o,A=X2[6058]+A|0,X2[6058]=A,X2[o+4>>2]=1|A,X2[A+o>>2]=A;break n}if(1==(3&(f=X2[r+4>>2]))){t=-8&f;o:if(f>>>0<=255)a=X2[r+8>>2],f=f>>>3|0,(0|(i=X2[r+12>>2]))==(0|a)?(u=X2[6056]&s(f),X2[24224>>2]=u):(X2[i+8>>2]=a,X2[a+12>>2]=i);else{if(c=X2[r+24>>2],(0|(n=X2[r+12>>2]))!=(0|r))f=X2[r+8>>2],X2[n+8>>2]=f,X2[f+12>>2]=n;else if((b=X2[(i=r+20|0)>>2])||(b=X2[(i=r+16|0)>>2])){for(;;)if(f=i,!((b=X2[(i=(n=b)+20|0)>>2])||(i=n+16|0,b=X2[n+16>>2])))break;X2[f>>2]=0}else n=0;if(c){i=X2[r+28>>2];c:{if(X2[(f=24528+(i<<2)|0)>>2]==(0|r)){if(X2[f>>2]=n)break c;u=X2[6057]&s(i),X2[24228>>2]=u;break o}if(!(X2[c+(X2[c+16>>2]==(0|r)?16:20)>>2]=n))break o}X2[n+24>>2]=c,(f=X2[r+16>>2])&&(X2[n+16>>2]=f,X2[f+24>>2]=n),(f=X2[r+20>>2])&&(X2[n+20>>2]=f,X2[f+24>>2]=n)}}r=r+t|0,A=A+t|0}if(X2[r+4>>2]=-2&X2[r+4>>2],X2[A+o>>2]=A,X2[o+4>>2]=1|A,A>>>0<=255){r=24264+((A=A>>>3|0)<<3)|0,A=(f=X2[6056])&(A=1<>2]:(X2[6056]=A|f,r),X2[A+12>>2]=o,X2[r+8>>2]=o,X2[o+12>>2]=r,X2[o+8>>2]=A;break n}if((i=A>>>8|(r=0))&&(r=31,16777215>>0||(r=i,r=28+((r=((r=(r<<=i=i+1048320>>>16&8)<<(b=r+520192>>>16&4))<<(a=r+245760>>>16&2)>>>15|0)-(a|i|b)|0)<<1|A>>>r+21&1)|0)),X2[(n=f=o)+28>>2]=r,X2[f+16>>2]=0,b=24528+(r<<2)|(X2[f+20>>2]=0),!((a=X2[6057])&(i=1<>2]=f,X2[6057]=i|a,X2[f+24>>2]=b,X2[f+8>>2]=f,X2[f+12>>2]=f;break n}for(i=A<<(31==(0|r)?0:25-(r>>>1|0)|0),r=X2[b>>2];;){if((-8&X2[(a=r)+4>>2])==(0|A))break b;if(r=i>>>29|0,i<<=1,!(r=X2[(b=16+(a+(4&r)|0)|0)>>2]))break}X2[b>>2]=f,X2[f+24>>2]=a,X2[f+12>>2]=f,X2[f+8>>2]=f;break n}for(X2[(i=(f=r+8&15?-8-r&15:0)+r|0)+4>>2]=1|(f=(A=n-56|0)-f|0),X2[4+(A+r|0)>>2]=56,X2[(o=(A=(a+(a-55&15?55-a&15:0)|0)-63|0)>>>0>>0?t:A)+4>>2]=35,X2[6063]=X2[6178],X2[6059]=f,X2[6062]=i,A=X2[6171],X2[(f=o+16|0)>>2]=X2[6170],X2[f+4>>2]=A,A=X2[6169],X2[o+8>>2]=X2[6168],X2[o+12>>2]=A,X2[6170]=o+8,X2[6169]=n,X2[6168]=r,A=o+36|(X2[6171]=0);;)if(X2[A>>2]=7,!((A=A+4|0)>>>0>>0))break;if((0|t)==(0|o))break i;if(X2[o+4>>2]=-2&X2[o+4>>2],X2[o>>2]=n=o-t|0,X2[t+4>>2]=1|n,n>>>0<=255){r=24264+((A=n>>>3|0)<<3)|0,A=(f=X2[6056])&(A=1<>2]:(X2[6056]=A|f,r),X2[A+12>>2]=t,X2[r+8>>2]=t,X2[t+12>>2]=r,X2[t+8>>2]=A;break i}if(X2[t+16>>2]=0,(r=n>>>8|(A=X2[t+20>>2]=0))&&(A=31,16777215>>0||(A=r,A=28+((A=((A=(A<<=r=r+1048320>>>16&8)<<(a=A+520192>>>16&4))<<(i=A+245760>>>16&2)>>>15|0)-(i|r|a)|0)<<1|n>>>A+21&1)|0)),i=24528+((X2[(f=t+28|0)>>2]=A)<<2)|0,!((f=X2[6057])&(r=1<>2]=t,X2[6057]=r|f,X2[t+24>>2]=i,X2[t+8>>2]=t,X2[t+12>>2]=t;break i}for(A=n<<(31==(0|A)?0:25-(A>>>1|0)|0),r=X2[i>>2];;){if((0|n)==(-8&X2[(f=r)+4>>2]))break a;if(r=A>>>29|0,A<<=1,!(r=X2[(i=16+(f+(4&r)|0)|0)>>2]))break}X2[i>>2]=t,X2[t+24>>2]=f,X2[t+12>>2]=t,X2[t+8>>2]=t;break i}A=X2[a+8>>2],X2[a+8>>2]=f,X2[A+12>>2]=f,X2[f+24>>2]=0,X2[f+8>>2]=A,X2[f+12>>2]=a}A=k+8|0;break A}A=X2[f+8>>2],X2[f+8>>2]=t,X2[A+12>>2]=t,X2[t+24>>2]=0,X2[t+8>>2]=A,X2[t+12>>2]=f}if(!((A=X2[6059])>>>0<=b>>>0)){f=X2[6062],X2[(r=f+b|0)+4>>2]=1|(A=A-b|0),X2[6059]=A,X2[6062]=r,X2[f+4>>2]=3|b,A=f+8|0;break A}}A=0,X2[6180]=48;break A}r:if(o){i=X2[a+28>>2];f:{if(X2[(A=24528+(i<<2)|0)>>2]==(0|a)){if(X2[A>>2]=r)break f;t=s(i)&t,X2[6057]=t;break r}if(!(X2[o+(X2[o+16>>2]==(0|a)?16:20)>>2]=r))break r}X2[r+24>>2]=o,(A=X2[a+16>>2])&&(X2[r+16>>2]=A,X2[A+24>>2]=r),(A=X2[a+20>>2])&&(X2[r+20>>2]=A,X2[A+24>>2]=r)}r:if(f>>>0<=15)X2[a+4>>2]=3|(A=f+b|0),X2[(A=A+a|0)+4>>2]=1|X2[A+4>>2];else if(X2[(i=a+b|0)+4>>2]=1|f,X2[a+4>>2]=3|b,(X2[f+i>>2]=f)>>>0<=255)r=24264+((A=f>>>3|0)<<3)|0,A=(f=X2[6056])&(A=1<>2]:(X2[6056]=A|f,r),X2[A+12>>2]=i,X2[r+8>>2]=i,X2[i+12>>2]=r,X2[i+8>>2]=A;else if(r=i,(i=f>>>8|(A=0))&&(A=31,16777215>>0||(A=i,A=28+((A=((A=(A<<=i=i+1048320>>>16&8)<<(n=A+520192>>>16&4))<<(b=A+245760>>>16&2)>>>15|0)-(b|i|n)|0)<<1|f>>>A+21&1)|0)),X2[(o=r)+28>>2]=A,X2[r+16>>2]=0,b=24528+(A<<2)|(X2[r+20>>2]=0),(i=1<>>1|0)|0),b=X2[b>>2];f:{for(;;){if((-8&X2[(i=b)+4>>2])==(0|f))break f;if(b=A>>>29|0,A<<=1,!(b=X2[(n=16+(i+(4&b)|0)|0)>>2]))break}X2[n>>2]=r,X2[r+24>>2]=i,X2[r+12>>2]=r,X2[r+8>>2]=r;break r}A=X2[i+8>>2],X2[i+8>>2]=r,X2[A+12>>2]=r,X2[r+24>>2]=0,X2[r+8>>2]=A,X2[r+12>>2]=i}else X2[b>>2]=r,X2[6057]=i|t,X2[r+24>>2]=b,X2[r+8>>2]=r,X2[r+12>>2]=r;A=a+8|0;break A}e:if(k){f=X2[r+28>>2];r:{if(X2[(A=24528+(f<<2)|0)>>2]==(0|r)){if(X2[A>>2]=a)break r;u=s(f)&t,X2[24228>>2]=u;break e}if(!(X2[k+(X2[k+16>>2]==(0|r)?16:20)>>2]=a))break e}X2[a+24>>2]=k,(A=X2[r+16>>2])&&(X2[a+16>>2]=A,X2[A+24>>2]=a),(A=X2[r+20>>2])&&(X2[a+20>>2]=A,X2[A+24>>2]=a)}i>>>0<=15?(X2[r+4>>2]=3|(A=i+b|0),X2[(A=A+r|0)+4>>2]=1|X2[A+4>>2]):(X2[(a=r+b|0)+4>>2]=1|i,X2[r+4>>2]=3|b,X2[i+a>>2]=i,c&&(f=24264+((A=c>>>3|0)<<3)|0,b=X2[6061],A=(A=1<>2]:(X2[6056]=A|n,f),X2[A+12>>2]=b,X2[f+8>>2]=b,X2[b+12>>2]=f,X2[b+8>>2]=A),X2[6061]=a,X2[6058]=i),A=r+8|0}return K2=16+e|0,A}function q2(A){var e,r=0,f=0,i=0,a=0,n=0,b=0,t=0;A:if(A){e=(f=A-8|0)+(a=-8&(A=X2[A-4>>2]))|0;e:if(!(1&A)){if(!(3&A))break A;if((f=f-(A=X2[f>>2])|0)>>>0>>0<=255)i=A>>>3|0,A=X2[f+8>>2],(0|(r=X2[f+12>>2]))==(0|A)?(t=X2[6056]&s(i),X2[24224>>2]=t):(X2[r+8>>2]=A,X2[A+12>>2]=r);else{if(b=X2[f+24>>2],(0|f)!=(0|(A=X2[f+12>>2])))r=X2[f+8>>2],X2[A+8>>2]=r,X2[r+12>>2]=A;else if((i=X2[(r=f+20|0)>>2])||(i=X2[(r=f+16|0)>>2])){for(;;)if(n=r,!((i=X2[(r=(A=i)+20|0)>>2])||(r=A+16|0,i=X2[A+16>>2])))break;X2[n>>2]=0}else A=0;if(b){r=X2[f+28>>2];r:{if(X2[(i=24528+(r<<2)|0)>>2]==(0|f)){if(X2[i>>2]=A)break r;t=X2[6057]&s(r),X2[24228>>2]=t;break e}if(!(X2[b+(X2[b+16>>2]==(0|f)?16:20)>>2]=A))break e}X2[A+24>>2]=b,(r=X2[f+16>>2])&&(X2[A+16>>2]=r,X2[r+24>>2]=A),(r=X2[f+20>>2])&&(X2[A+20>>2]=r,X2[r+24>>2]=A)}}}else if(3==(3&(A=X2[4+e>>2]))){X2[4+e>>2]=-2&A,X2[6058]=a,X2[f+a>>2]=a,X2[f+4>>2]=1|a;break A}}if(!(e>>>0<=f>>>0)&&1&(A=X2[4+e>>2])){e:{if(!(2&A)){if(X2[6062]==(0|e)){if(X2[6062]=f,A=X2[6059]+a|0,X2[6059]=A,X2[f+4>>2]=1|A,X2[6061]!=(0|f))break A;X2[6058]=0,X2[6061]=0;break A}if(X2[6061]==(0|e)){X2[6061]=f,A=X2[6058]+a|0,X2[6058]=A,X2[f+4>>2]=1|A,X2[A+f>>2]=A;break A}a=(-8&A)+a|0;r:if(A>>>0<=255)A=A>>>3|0,(0|(i=X2[8+e>>2]))==(0|(r=X2[12+e>>2]))?(t=X2[6056]&s(A),X2[24224>>2]=t):(X2[r+8>>2]=i,X2[i+12>>2]=r);else{if(b=X2[24+e>>2],(0|e)!=(0|(A=X2[12+e>>2])))r=X2[8+e>>2],X2[A+8>>2]=r,X2[r+12>>2]=A;else if((i=X2[(r=20+e|0)>>2])||(i=X2[(r=16+e|0)>>2])){for(;;)if(n=r,!((i=X2[(r=(A=i)+20|0)>>2])||(r=A+16|0,i=X2[A+16>>2])))break;X2[n>>2]=0}else A=0;if(b){r=X2[28+e>>2];f:{if(X2[(i=24528+(r<<2)|0)>>2]==(0|e)){if(X2[i>>2]=A)break f;t=X2[6057]&s(r),X2[24228>>2]=t;break r}if(!(X2[b+(X2[b+16>>2]==(0|e)?16:20)>>2]=A))break r}X2[A+24>>2]=b,(r=X2[16+e>>2])&&(X2[A+16>>2]=r,X2[r+24>>2]=A),(r=X2[20+e>>2])&&(X2[A+20>>2]=r,X2[r+24>>2]=A)}}if(X2[f+a>>2]=a,X2[f+4>>2]=1|a,X2[6061]!=(0|f))break e;X2[6058]=a;break A}X2[4+e>>2]=-2&A,X2[f+a>>2]=a,X2[f+4>>2]=1|a}if(a>>>0<=255)A=24264+((r=a>>>3|0)<<3)|0,r=(i=X2[6056])&(r=1<>2]:(X2[6056]=r|i,A),X2[r+12>>2]=f,X2[A+8>>2]=f,X2[f+12>>2]=A,X2[f+8>>2]=r;else{X2[f+16>>2]=0,(r=a>>>8|(A=X2[f+20>>2]=0))&&(A=31,16777215>>0||(A=28+((A=((e=(r<<=n=r+1048320>>>16&8)<<(A=r+520192>>>16&4))<<(r=245760+e>>>16&2)>>>15|0)-(r|A|n)|0)<<1|a>>>A+21&1)|0)),i=24528+((X2[(i=f+28|0)>>2]=A)<<2)|0;e:if((r=X2[6057])&(n=1<>>1|0)|0),A=X2[i>>2];r:{for(;;){if((-8&X2[(i=A)+4>>2])==(0|a))break r;if(A=r>>>29|0,r<<=1,!(A=X2[(n=16+(i+(4&A)|0)|0)>>2]))break}X2[n>>2]=f,X2[f+24>>2]=i,X2[f+12>>2]=f,X2[f+8>>2]=f;break e}A=X2[i+8>>2],X2[i+8>>2]=f,X2[A+12>>2]=f,X2[f+24>>2]=0,X2[f+8>>2]=A,X2[f+12>>2]=i}else X2[i>>2]=f,X2[6057]=r|n,X2[f+24>>2]=i,X2[f+8>>2]=f,X2[f+12>>2]=f;if(A=X2[6064]-1|0,!(X2[6064]=A)){for(f=24680;;)if(f=(A=X2[f>>2])+8|0,!A)break;X2[6064]=-1}}}}}function w(A,e){var r=0,f=0,i=0,a=0,n=0,b=0,t=A+e|0;A:{e:if(!(1&(r=X2[A+4>>2]))){if(!(3&r))break A;if(e=(r=X2[A>>2])+e|0,(0|(A=A-r|0))!=X2[6061]){if(r>>>0<=255)i=r>>>3|0,r=X2[A+8>>2],(0|(f=X2[A+12>>2]))==(0|r)?(b=X2[6056]&s(i),X2[24224>>2]=b):(X2[f+8>>2]=r,X2[r+12>>2]=f);else{if(n=X2[A+24>>2],(0|(r=X2[A+12>>2]))!=(0|A))f=X2[A+8>>2],X2[r+8>>2]=f,X2[f+12>>2]=r;else if((i=X2[(f=A+20|0)>>2])||(i=X2[(f=A+16|0)>>2])){for(;;)if(a=f,!((i=X2[(f=(r=i)+20|0)>>2])||(f=r+16|0,i=X2[r+16>>2])))break;X2[a>>2]=0}else r=0;if(n){f=X2[A+28>>2];r:{if(X2[(i=24528+(f<<2)|0)>>2]==(0|A)){if(X2[i>>2]=r)break r;b=X2[6057]&s(f),X2[24228>>2]=b;break e}if(!(X2[n+(X2[n+16>>2]==(0|A)?16:20)>>2]=r))break e}X2[r+24>>2]=n,(f=X2[A+16>>2])&&(X2[r+16>>2]=f,X2[f+24>>2]=r),(f=X2[A+20>>2])&&(X2[r+20>>2]=f,X2[f+24>>2]=r)}}}else if(3==(3&(r=X2[4+t>>2])))return X2[4+t>>2]=-2&r,X2[6058]=e,X2[t>>2]=e,void(X2[A+4>>2]=1|e)}e:{if(!(2&(r=X2[4+t>>2]))){if(X2[6062]==(0|t)){if(X2[6062]=A,e=X2[6059]+e|0,X2[6059]=e,X2[A+4>>2]=1|e,X2[6061]!=(0|A))break A;return X2[6058]=0,void(X2[6061]=0)}if(X2[6061]==(0|t))return X2[6061]=A,e=X2[6058]+e|0,X2[6058]=e,X2[A+4>>2]=1|e,void(X2[A+e>>2]=e);e=(-8&r)+e|0;r:if(r>>>0<=255)i=r>>>3|0,r=X2[8+t>>2],(0|(f=X2[12+t>>2]))==(0|r)?(b=X2[6056]&s(i),X2[24224>>2]=b):(X2[f+8>>2]=r,X2[r+12>>2]=f);else{if(n=X2[24+t>>2],(0|t)!=(0|(r=X2[12+t>>2])))f=X2[8+t>>2],X2[r+8>>2]=f,X2[f+12>>2]=r;else if((i=X2[(f=20+t|0)>>2])||(i=X2[(f=16+t|0)>>2])){for(;;)if(a=f,!((i=X2[(f=(r=i)+20|0)>>2])||(f=r+16|0,i=X2[r+16>>2])))break;X2[a>>2]=0}else r=0;if(n){f=X2[28+t>>2];f:{if(X2[(i=24528+(f<<2)|0)>>2]==(0|t)){if(X2[i>>2]=r)break f;b=X2[6057]&s(f),X2[24228>>2]=b;break r}if(!(X2[n+(X2[n+16>>2]==(0|t)?16:20)>>2]=r))break r}X2[r+24>>2]=n,(f=X2[16+t>>2])&&(X2[r+16>>2]=f,X2[f+24>>2]=r),(f=X2[20+t>>2])&&(X2[r+20>>2]=f,X2[f+24>>2]=r)}}if(X2[A+e>>2]=e,X2[A+4>>2]=1|e,X2[6061]!=(0|A))break e;return void(X2[6058]=e)}X2[4+t>>2]=-2&r,X2[A+e>>2]=e,X2[A+4>>2]=1|e}if(e>>>0<=255)return e=24264+((r=e>>>3|0)<<3)|0,r=(f=X2[6056])&(r=1<>2]:(X2[6056]=r|f,e),X2[r+12>>2]=A,X2[e+8>>2]=A,X2[A+12>>2]=e,void(X2[A+8>>2]=r);if(X2[A+16>>2]=0,(f=e>>>8|(r=X2[A+20>>2]=0))&&(r=31,16777215>>0||(r=28+((r=((t=(f<<=a=f+1048320>>>16&8)<<(r=f+520192>>>16&4))<<(f=245760+t>>>16&2)>>>15|0)-(f|r|a)|0)<<1|e>>>r+21&1)|0)),i=24528+((X2[(i=A+28|0)>>2]=r)<<2)|0,!((f=X2[6057])&(a=1<>2]=A,X2[6057]=f|a,X2[A+24>>2]=i,X2[A+8>>2]=A,void(X2[A+12>>2]=A);f=e<<(31==(0|r)?0:25-(r>>>1|0)|0),r=X2[i>>2];e:{for(;;){if((-8&X2[(i=r)+4>>2])==(0|e))break e;if(r=f>>>29|0,f<<=1,!(r=X2[(a=16+(i+(4&r)|0)|0)>>2]))break}return X2[a>>2]=A,X2[A+24>>2]=i,X2[A+12>>2]=A,void(X2[A+8>>2]=A)}e=X2[i+8>>2],X2[i+8>>2]=A,X2[e+12>>2]=A,X2[A+24>>2]=0,X2[A+8>>2]=e,X2[A+12>>2]=i}}function G(){U()}function C(A){return A?65535&A||(0|A)<=-1?void U():-1==(0|(A=o6(A>>>16|0)))?(X2[6180]=48,-1):A<<16:t6()<<16}function h(A){var e,r=0,f=0;if(r=(r=X2[6181])||(X2[6181]=24732),32==(0|(f=X2[6182]))){if((e=L2(260))&&3&J2[e-4|0]&&v2(e,0,260),!e)return;f=0,X2[6181]=e,X2[e>>2]=r,X2[6182]=0,r=e}X2[6182]=f+1,X2[(r=(f<<2)+r|0)+132>>2]=0,X2[r+4>>2]=A}function v2(A,e,r){var f,i,a,n;if(r&&(S2[0|A]=e,S2[(f=A+r|0)-1|0]=e,!(r>>>0<3||(S2[A+2|0]=e,S2[A+1|0]=e,S2[f-3|0]=e,S2[f-2|0]=e,r>>>0<7||(S2[A+3|0]=e,S2[f-4|0]=e,r>>>0<9||(a=(f=0-A&3)+A|0,e=H2(255&e,16843009),X2[a>>2]=e,X2[(f=(r=r-f&-4)+a|0)-4>>2]=e,r>>>0<9||(X2[8+a>>2]=e,X2[4+a>>2]=e,X2[f-8>>2]=e,X2[f-12>>2]=e,r>>>0<25||(X2[24+a>>2]=e,X2[20+a>>2]=e,X2[16+a>>2]=e,X2[12+a>>2]=e,X2[f-16>>2]=e,X2[f-20>>2]=e,X2[f-24>>2]=e,X2[f-28>>2]=e,(r=r-(i=4&a|24)|0)>>>0<32))))))))for(n=f=e,e=a+i|0;;)if(X2[e>>2]=n,X2[e+4>>2]=f,X2[(i=e+24|0)>>2]=n,X2[4+i>>2]=f,X2[(i=e+16|0)>>2]=n,X2[4+i>>2]=f,X2[(i=e+8|0)>>2]=n,X2[4+i>>2]=f,e=e+32|0,!(31<(r=r-32|0)>>>0))break;return A}function $2(A,e,r){var f=0,i=0,a=0,n=0,b=0,t=0,o=0;A:if(r&&3&e)for(;;){if(S2[0|A]=J2[0|e],f=r-1|0,A=A+1|0,e=e+1|0,1==(0|r))break A;if(r=f,!(3&e))break}else f=r;if(r=3&A){A:if(!(f>>>0<32||2<(r=r-1|0)>>>0)){e:switch(r-1|0){default:for(S2[A+1|0]=J2[e+1|0],i=X2[e>>2],S2[0|A]=i,S2[A+2|0]=J2[e+2|0],b=f-3|0,t=A+3|0,o=f-20&-16,r=0;;)if(a=X2[(n=e+r|0)+4>>2],X2[(A=r+t|0)>>2]=a<<8|i>>>24,i=X2[n+8>>2],X2[A+4>>2]=i<<8|a>>>24,a=X2[n+12>>2],X2[A+8>>2]=a<<8|i>>>24,i=X2[n+16>>2],X2[A+12>>2]=i<<8|a>>>24,r=r+16|0,!(16<(b=b-16|0)>>>0))break;A=r+t|0,e=3+(e+r|0)|0,f=(f-o|0)-19|0;break A;case 0:for(i=X2[e>>2],S2[0|A]=i,S2[A+1|0]=J2[e+1|0],b=f-2|0,t=A+2|0,o=f-20&-16,r=0;;)if(a=X2[(n=e+r|0)+4>>2],X2[(A=r+t|0)>>2]=a<<16|i>>>16,i=X2[n+8>>2],X2[A+4>>2]=i<<16|a>>>16,a=X2[n+12>>2],X2[A+8>>2]=a<<16|i>>>16,i=X2[n+16>>2],X2[A+12>>2]=i<<16|a>>>16,r=r+16|0,!(17<(b=b-16|0)>>>0))break;A=r+t|0,e=2+(e+r|0)|0,f=(f-o|0)-18|0;break A;case 1:break e;}for(i=X2[e>>2],S2[0|A]=i,b=f-1|0,t=A+1|0,o=f-20&-16,r=0;;)if(a=X2[(n=e+r|0)+4>>2],X2[(A=r+t|0)>>2]=a<<24|i>>>8,i=X2[n+8>>2],X2[A+4>>2]=i<<24|a>>>8,a=X2[n+12>>2],X2[A+8>>2]=a<<24|i>>>8,i=X2[n+16>>2],X2[A+12>>2]=i<<24|a>>>8,r=r+16|0,!(18<(b=b-16|0)>>>0))break;A=r+t|0,e=1+(e+r|0)|0,f=(f-o|0)-17|0}16&f&&(r=J2[0|e]|J2[e+1|0]<<8,S2[0|A]=r,S2[A+1|0]=r>>>8,S2[A+2|0]=J2[e+2|0],S2[A+3|0]=J2[e+3|0],S2[A+4|0]=J2[e+4|0],S2[A+5|0]=J2[e+5|0],S2[A+6|0]=J2[e+6|0],S2[A+7|0]=J2[e+7|0],S2[A+8|0]=J2[e+8|0],S2[A+9|0]=J2[e+9|0],S2[A+10|0]=J2[e+10|0],S2[A+11|0]=J2[e+11|0],S2[A+12|0]=J2[e+12|0],S2[A+13|0]=J2[e+13|0],S2[A+14|0]=J2[e+14|0],S2[A+15|0]=J2[e+15|0],e=e+16|0,A=A+16|0),8&f&&(S2[0|A]=J2[0|e],S2[A+1|0]=J2[e+1|0],S2[A+2|0]=J2[e+2|0],S2[A+3|0]=J2[e+3|0],S2[A+4|0]=J2[e+4|0],S2[A+5|0]=J2[e+5|0],S2[A+6|0]=J2[e+6|0],S2[A+7|0]=J2[e+7|0],e=e+8|0,A=A+8|0),4&f&&(S2[0|A]=J2[0|e],S2[A+1|0]=J2[e+1|0],S2[A+2|0]=J2[e+2|0],S2[A+3|0]=J2[e+3|0],e=e+4|0,A=A+4|0),2&f&&(S2[0|A]=J2[0|e],S2[A+1|0]=J2[e+1|0],e=e+2|0,A=A+2|0),1&f&&(S2[0|A]=J2[0|e])}else{if(f>>>0<16)r=f;else for(r=f-16|0;;)if(X2[A>>2]=X2[e>>2],X2[A+4>>2]=X2[e+4>>2],X2[A+8>>2]=X2[e+8>>2],X2[A+12>>2]=X2[e+12>>2],A=A+16|0,e=e+16|0,!(15<(f=f-16|0)>>>0))break;if(8&r&&(f=X2[e+4>>2],X2[A>>2]=X2[e>>2],X2[A+4>>2]=f,e=e+8|0,A=A+8|0),4&r&&(X2[A>>2]=X2[e>>2],e=e+4|0,A=A+4|0),2&r&&(S2[0|A]=J2[0|e],S2[A+1|0]=J2[e+1|0],e=e+2|0,A=A+2|0),1&r)return void(S2[0|A]=J2[0|e])}}function q(A){var e,r=0,f=(P2(0),0);A:{e:{if(m(A),1065353216<=(e=2147483647&(f=S[2]))>>>0){if(1065353216!=(0|e))break e;return P2(1.5707963267948966*+A+752316384526264e-51)}if(e>>>0<=1056964607){if(e-8388608>>>0<956301312)break A;return e=P2(A*A),P2(P2(P2(P2(e*P2(P2(e*P2(P2(e*P2(-.008656363002955914))+P2(-.04274342209100723)))+P2(.16666586697101593)))/P2(P2(e*P2(-.7066296339035034))+P2(1)))*A)+A)}return A=P2(P2(P2(1)-P2(j2(A)))*P2(.5)),r=O2(+A),r+=r*+P2(P2(A*P2(P2(A*P2(P2(A*P2(-.008656363002955914))+P2(-.04274342209100723)))+P2(.16666586697101593)))/P2(P2(A*P2(-.7066296339035034))+P2(1))),A=P2(1.5707963267948966-(r+r)),(0|f)<0?P2(-A):A}A=P2(P2(0)/P2(A-A))}return A}function F(A){var e,r,f,i=0,a=(P2(0),0),n=0;P2(0),P2(0);m(A);A:{if(1283457024<=(i=2147483647&(n=S[2]))>>>0){if(A!=A)break A;return P2((0|n)<0?-1.570796251296997:1.570796251296997)}e:{if(i>>>0<=1054867455){if(a=-1,964689920<=i>>>0)break e;break A}A=P2(j2(A)),i>>>0<=1066926079?a=i>>>0<=1060110335?(A=P2(P2(P2(A+A)+P2(-1))/P2(A+P2(2))),0):(A=P2(P2(A+P2(-1))/P2(A+P2(1))),1):a=i>>>0<=1075576831?(A=P2(P2(A+P2(-1.5))/P2(P2(A*P2(1.5))+P2(1))),2):(A=P2(P2(-1)/A),3)}if(i=a,r=P2(A*A),e=P2(r*r),f=P2(e*P2(P2(e*P2(-.106480173766613))+P2(-.19999158382415771))),e=P2(r*P2(P2(e*P2(P2(e*P2(.06168760731816292))+P2(.14253635704517365)))+P2(.333333283662796))),(0|i)<=-1)return P2(A-P2(A*P2(f+e)));A=P2(U2[1024+(i<<=2)>>2]-P2(P2(P2(A*P2(f+e))-U2[1040+i>>2])-A)),A=(0|n)<0?P2(-A):A}return A}function B2(A,e){var r,f,i,a=0,n=0,b=P2(0);if(!(e==e&A==A))return P2(A+e);if(m(e),1065353216==(0|(a=S[2])))return F(A);i=a>>>30&2,m(A),r=i|(n=S[2])>>>31;A:{e:{r:{f:{if(!(f=2147483647&n)){i:switch(r-2|0){case 0:break f;case 1:break i;default:break r;}return P2(-3.1415927410125732)}if(2139095040!=(0|(a&=2147483647))){if(!a)break A;if(!(f>>>0<=218103808+a>>>0&&2139095040!=(0|f)))break A;if(A=b=218103808+f>>>0>>0&&(b=P2(0),i)?b:F(P2(j2(P2(A/e)))),r>>>0<=2){i:switch(r-1|0){case 0:return P2(-A);case 1:break i;default:break r;}return P2(P2(3.1415927410125732)-P2(A+P2(8.742277657347586e-8)))}return P2(P2(A+P2(8.742277657347586e-8))+P2(-3.1415927410125732))}if(2139095040==(0|f))break e;return U2[1072+(r<<2)>>2]}A=P2(3.1415927410125732)}return A}return U2[1056+(r<<2)>>2]}return P2((0|n)<0?-1.5707963705062866:1.5707963705062866)}function R(A){var e;for(X2[12+(K2=e=K2-16|0)>>2]=A|=0,X2[12+e>>2]||(X2[12+e>>2]=1);;){if(A=L2(X2[12+e>>2]),(X2[8+e>>2]=A)||(X2[(A=K2-16|0)+12>>2]=24992,X2[A+8>>2]=2,X2[4+e>>2]=X2[X2[A+12>>2]>>2],!X2[4+e>>2]))break;N2[X2[4+e>>2]]()}return K2=16+e|0,X2[8+e>>2]}function D(A){var e;return X2[12+(K2=e=K2-16|0)>>2]=A|=0,A=R(X2[12+e>>2]),K2=16+e|0,0|A}function n(A){var e;X2[12+(K2=e=K2-16|0)>>2]=A|=0,q2(X2[12+e>>2]),K2=16+e|0}function T(A,e){e|=0;var r;X2[12+(K2=r=K2-16|0)>>2]=A|=0,X2[8+r>>2]=e,n(X2[12+r>>2]),K2=16+r|0}function W(A){var e;X2[12+(K2=e=K2-16|0)>>2]=A|=0,n(X2[12+e>>2]),K2=16+e|0}function I(A,e){e|=0;var r;X2[12+(K2=r=K2-16|0)>>2]=A|=0,X2[8+r>>2]=e,W(X2[12+r>>2]),K2=16+r|0}function x(A,e){e|=0;var r,f,i,a,n=0,b=0,t=0;for(X2[12+(K2=a=K2-16|0)>>2]=A|=0,X2[8+a>>2]=e,X2[12+a>>2]||(X2[12+a>>2]=1),X[8+a>>2]<4&&(X2[8+a>>2]=4);;){i=4+a|0,n=X2[12+a>>2];A:{if(16==(0|(A=X2[8+a>>2])))A=L2(n);else{if(e=28,3&A)break A;for(b=A>>>2|0,t=0;;){if(!b)break;b&=b-1,t=t+1|0}if(1!=(0|t))break A;if(e=48,-64-A>>>0>>0)break A;if((e=16<(A=16>>0?A:16)>>>0?A:16)-1&e){for(b=32;;)if(b=(A=b)<<1,!(A>>>0>>0))break}else A=e;-64-A>>>0<=n>>>0?(X2[6180]=48,e=0):(n=L2((12|(b=n>>>(e=0)<11?16:n+19&-16))+A|0))&&(e=n-8|0,n&A-1?(t=(-8&(f=X2[(r=n-4|0)>>2]))-(n=(A=15<(n=((A+n|0)-1&0-A)-8|0)-e>>>0?n:A+n|0)-e|0)|0,3&f?(X2[A+4>>2]=t|1&X2[A+4>>2]|2,X2[(t=A+t|0)+4>>2]=1|X2[t+4>>2],X2[r>>2]=n|1&X2[r>>2]|2,X2[A+4>>2]=1|X2[A+4>>2],w(e,n)):(X2[A+4>>2]=t,X2[A>>2]=n+X2[e>>2])):A=e,3&(e=X2[A+4>>2])&&((n=-8&e)>>>0<=b+16>>>0||(X2[A+4>>2]=b|1&e|2,X2[(e=A+b|0)+4>>2]=3|(b=n-b|0),X2[(n=A+n|0)+4>>2]=1|X2[n+4>>2],w(e,b))),e=A+8|0),A=e}e=48,A&&(X2[i>>2]=A,e=0)}if(e){if(X2[(A=K2-16|0)+12>>2]=24992,X2[A+8>>2]=2,X2[a>>2]=X2[X2[A+12>>2]>>2],X2[a>>2]){N2[X2[a>>2]]();continue}X2[4+a>>2]=0}break}return K2=16+a|0,X2[4+a>>2]}function y(A,e){e|=0;var r;return X2[12+(K2=r=K2-16|0)>>2]=A|=0,X2[8+r>>2]=e,A=x(X2[12+r>>2],X2[8+r>>2]),K2=16+r|0,0|A}function V(A,e){e|=0;var r;X2[12+(K2=r=K2-16|0)>>2]=A|=0,X2[8+r>>2]=e,q2(X2[12+r>>2]),K2=16+r|0}function p(A,e){e|=0;var r;X2[12+(K2=r=K2-16|0)>>2]=A|=0,X2[8+r>>2]=e,V(X2[12+r>>2],X2[8+r>>2]),K2=16+r|0}function e2(A,e){var r;return X2[12+(r=K2-16|0)>>2]=A,X2[8+r>>2]=e,X2[4+r>>2]=4,X2[r>>2]=X2[X2[12+r>>2]>>2],X2[X2[12+r>>2]>>2]=X2[8+r>>2],X2[r>>2]}function r2(){var A,e;X2[12+(e=K2-16|0)>>2]=24096,X2[8+e>>2]=2,X2[12+(K2=A=K2-16|0)>>2]=X2[X2[12+e>>2]>>2],N2[X2[12+A>>2]](),k2(1130),U()}function f2(){k2(1170),U()}function i2(A,e,r){var f,i=0;return K2=f=K2-16|0,(0|r)<=(i=-1)?X2[6180]=28:(A=0|Z(0|A,0|e,0|r,12+f|0))?X2[6180]=A:i=X2[12+f>>2],K2=16+f|0,i}function a2(A){var e=X2[A+60>>2];if(X2[A+60>>2]=e-1|e,8&(e=X2[A>>2]))return X2[A>>2]=32|e,1;X2[A+4>>2]=0,X2[A+8>>2]=0,e=X2[A+40>>2],X2[A+24>>2]=e,X2[A+20>>2]=e,X2[A+16>>2]=e+X2[A+44>>2]}function J(A,e,r){var f,i=0,a=0,n=0,b=0;A:{if(!(i=X2[r+16>>2])){if(a2(r))break A;i=X2[r+16>>2]}if(i-(n=X2[r+20>>2])>>>0>>0)return void N2[X2[r+32>>2]](r,A,e);e:if(!(X2[r+64>>2]<0)){for(i=A;;){if((0|e)==(0|a))break e;if(a=a+1|0,f=e+i|0,i=b=i-1|0,10==J2[f-1|0])break}if(i=A,N2[X2[r+32>>2]](r,i,A=1+(e-a|0)|0)>>>0>>0)break A;A=1+(e+b|0)|0,n=X2[r+20>>2],e=a-1|0}$2(n,A,e),X2[r+20>>2]=X2[r+20>>2]+e}}function n2(A,e){if(!A)return 0;if(A){A:if(e>>>0<=127)S2[0|A]=e,A=1;else{e:{if(!X2[6251]){if(57216!=(-128&e))break e;S2[0|A]=e,A=1;break A}if(e>>>0<=2047){S2[A+1|0]=63&e|128,S2[0|A]=e>>>6|192,A=2;break A}if(!(57344!=(-8192&e)&&55296<=e>>>0)){S2[A+2|0]=63&e|128,S2[0|A]=e>>>12|224,S2[A+1|0]=e>>>6&63|128,A=3;break A}if(e-65536>>>0<=1048575){S2[A+3|0]=63&e|128,S2[0|A]=e>>>18|240,S2[A+2|0]=e>>>6&63|128,S2[A+1|0]=e>>>12&63|128,A=4;break A}}X2[6180]=25,A=-1}}else A=1;return A}function t2(A,e,r){var f,i,a=0;if(X2[204+(K2=i=K2-208|0)>>2]=r,X2[(f=192+i|0)>>2]=0,X2[4+f>>2]=0,X2[(f=184+i|0)>>2]=0,X2[4+f>>2]=0,X2[(f=176+i|0)>>2]=0,X2[4+f>>2]=0,X2[168+i>>2]=0,X2[172+i>>2]=0,X2[160+i>>2]=0,X2[164+i>>2]=0,X2[200+i>>2]=r,0<=(0|o2(0,e,200+i|0,80+i|0,160+i|0))){f=X2[A>>2],X2[A+60>>2]<=0&&(X2[A>>2]=-33&f);A:{e:{if(X2[A+44>>2]){if(X2[A+16>>2])break e}else X2[A+44>>2]=80,X2[A+24>>2]=0,X2[A+16>>2]=0,X2[A+20>>2]=0,a=X2[A+40>>2],X2[A+40>>2]=i;if(a2(A))break A}o2(A,e,200+i|0,80+i|0,160+i|0)}a&&(N2[X2[A+32>>2]](A,0,0),X2[A+44>>2]=0,X2[A+40>>2]=a,X2[A+24>>2]=0,X2[A+16>>2]=0,X2[A+20>>2]=0),X2[A>>2]=X2[A>>2]|32&f}K2=208+i|0}function o2(A,e,r,f,i){var a,n=0,b=0,t=0,o=0,c=0,k=0,u=0,s=0,l=0,B=0,v=0,d=0,Z=0,_=0,g=0,E=0,Q=0,w=0,G=0,C=0,h=0,F=0,Y=0,m=0,N=0,R=0,x=336+(K2=a=K2-880|0)|8,y=55+a|0,V=-338-a|0,D=336+a|9,p=656+a|0,T=336+a|0,W=-336-a|0,I=56+a|0;A:{e:{r:for(;;){f:if(o=e,!((2147483647-E|0)<(0|n))){E=n+E|0;i:{a:{n:{if(n=J2[0|o])for(;;){b:{t:if(n&=255){if(37!=(0|n))break b;for(n=b=e;;){if(37!=J2[n+1|0]){e=n;break t}if(b=b+1|0,t=J2[n+2|0],n=e=n+2|0,37!=(0|t))break}}else b=e;if((0|(Q=2147483647-E|0))<(0|(n=b-o|0)))break f;if(!A||32&J2[0|A]||J(o,n,A),n)continue r;t=-1,9<(k=(c=S2[n=e+1|0])-48|0)>>>0||(n=(b=36==J2[e+2|0])?e+3|0:n,h=b?1:h,c=S2[(b?3:1)+e|0],t=b?k:-1);t:if(31<(e=c-32|(b=0))>>>0)e=n;else if(75913&(u=1<>>0)break t;if(n=e,!(75913&(u=1<>>0||36!=J2[e+2|0]){if(h)break n;if(k=e+1|0,!A){B=h=0;break t}e=X2[r>>2],X2[r>>2]=e+4,h=0,B=X2[e>>2]}else X2[(n<<2)+i>>2]=10,k=e+3|0,B=X2[((S2[e+(h=1)|0]<<3)+f|0)-384>>2];-1<(0|B)||(B=0-B|0,b|=8192)}else if(9<(u=c-48|(B=0))>>>0)k=e;else{for(n=0;;)if(B=-1,c=S2[e+1|0],e=k=e+1|0,n=B=n>>>0<=214748364?(2147483647-(n=H2(n,10))|0)<(0|u)?-1:n+u|0:B,!((u=c-48|0)>>>0<10))break;if((0|B)<0)break f}if(c=-1,46!=J2[(n=0)|k])e=k,_=0;else if(42==(0|(c=S2[k+1|0]))){if(9<(e=S2[k+2|0]-48|0)>>>0||36!=J2[k+3|0]){if(h)break n;e=k+2|0,c=0,A&&(k=X2[r>>2],X2[r>>2]=k+4,c=X2[k>>2])}else X2[(e<<2)+i>>2]=10,e=k+4|0,c=X2[((S2[k+2|0]<<3)+f|0)-384>>2];_=(-1^c)>>>31|0}else if(e=k+1|0,9<(l=c-48|0)>>>0)_=1,c=0;else for(k=0,u=e;;)if(c=-1,k>>>0<=214748364&&(c=(2147483647-(e=H2(k,10))|0)<(0|l)?-1:e+l|0),s=S2[u+(_=1)|0],u=e=u+1|0,k=c,!((l=s-48|0)>>>0<10))break;for(;;){if(u=n,57<(n=S2[0|e]-65|0)>>>0)break n;if(e=e+1|0,!((n=J2[2928+(n+H2(u,58)|0)|0])-1>>>0<8))break}if(!n)break n;t:{o:{c:{if(27==(0|n)){if((0|t)<=-1)break c;break n}if((0|t)<0)break o;X2[(t<<2)+i>>2]=n,t=X2[(n=(t<<3)+f|0)+4>>2],X2[56+a>>2]=X2[n>>2],X2[60+a>>2]=t}if(n=0,A)break t;continue r}if(!A){E=0;break A}c2(56+a|0,n,r)}t=-65537&b,v=8192&b?t:b;t:{o:{c:if(n=S2[e-1|0],!(55<(n=(k=u&&3==(15&n)?-33&n:n)-65|0)>>>0)){k:{u:{s:{l:{B:{v:{d:{Z:{_:{g:{E:{Q:switch(n-1|0){case 51:s=0,u=X2[56+a>>2],n=X2[60+a>>2],l=2902;break E;case 44:if(7<(b=255&u)>>>(n=0))continue r;w:switch(b-1|0){default:case 0:X2[X2[56+a>>2]>>2]=E;continue r;case 1:b=X2[56+a>>2],X2[b>>2]=E,X2[b+4>>2]=E>>31;continue r;case 2:$[X2[56+a>>2]>>1]=E;continue r;case 3:S2[X2[56+a>>2]]=E;continue r;case 5:X2[X2[56+a>>2]>>2]=E;continue r;case 4:continue r;case 6:break w;}b=X2[56+a>>2],X2[b>>2]=E,X2[b+4>>2]=E>>31;continue r;case 46:c=8>>0?c:8,v|=8,k=120;case 22:case 54:if(s=0,l=2902,!((n=b=X2[60+a>>2])|(u=X2[56+a>>2]))){o=I;break g}for(t=32&k,o=I;;)if(S2[0|(o=o-1|0)]=t|J2[3536+(15&u)|0],!((u=(15&(b=n))<<28|u>>>4)|(n=n>>>4|0)))break;if(!(8&v))break g;if(!(X2[56+a>>2]|X2[60+a>>2]))break g;l=2902+(k>>4)|0,s=2;break g;case 45:if(o=I,(n=b=X2[60+a>>2])|(u=X2[56+a>>2]))for(;;)if(S2[0|(o=o-1|0)]=7&u|48,!((u=(7&(b=n))<<29|u>>>3)|(n=n>>>3|0)))break;if(s=0,l=2902,!(8&v))break g;c=(0|(n=I-o|0))<(0|c)?c:n+1|0;break g;case 0:case 2:case 6:case 7:case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 18:case 19:case 20:case 21:case 23:case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 32:case 38:case 40:case 41:case 42:case 47:case 48:case 50:case 52:case 53:break c;case 1:break l;case 17:break B;case 49:break d;case 43:break Z;case 33:break _;case 34:case 39:break Q;default:break k;}n=b=X2[60+a>>2],u=X2[56+a>>2],(0|n)<-1||(0|n)<=-1?(n=0-((0!=(0|u))+n|0)|0,X2[56+a>>2]=u=0-u|0,X2[60+a>>2]=n,s=1,l=2902):l=2048&v?(s=1,2903):(s=1&v)?2904:2902}if(n>>>0<1)b=u,o=I;else for(o=I;;)if(N=o=o-1|0,R=u-P(b=b6(u,n,10),t=k=H,10,0)|48,S2[0|N]=R,k=9>>0,u=b,n=t,!k)break;if(n=b)for(;;)if(S2[0|(o=o-1|0)]=n-H2(b=(n>>>0)/10|0,10)|48,t=9>>0,n=b,!t)break}if((0|c)<0&&_)break f;if(v=_?-65537&v:v,n=X2[56+a>>2],b=X2[60+a>>2],!(c||n|b)){n=o=I,c=0;break i}c=(0|(n=!(n|b)+(I-o|0)|0))<(0|c)?c:n;break o}S2[55+a|0]=X2[56+a>>2],s=0,l=2902,c=1,o=y,n=I,v=t;break i}o=X2[6180],n=0,X2[6257]||(X2[6257]=25004);Z:{_:{for(;;){if((0|o)==J2[n+1248|0])break;if((b=77)==(0|(n=n+1|0)))break _}if(!(b=n)){o=1328;break Z}}for(n=1328;;)if(k=J2[0|n],n=o=n+1|0,!(k||(n=o,b=b-1|0)))break}break v}o=(n=X2[56+a>>2])||2912}k=l=o,v=(s=0)!=(0|(b=_=(0|c)<0?2147483647:c));v:{d:{Z:{_:if(b){if(3&k)for(;;){if(!J2[0|k]){n=b;break Z}if(v=1!=(0|b),n=b-1|0,k=k+1|0,1==(0|b))break _;if(b=n,!(3&k))break}else n=b;}else n=b;if(!v)break d}Z:if(J2[0|k]&&!(n>>>0<4)){for(b=3&(u=n-4|0),u=4+((-4&u)+k|0)|0;;){if((-1^(v=X2[k>>2]))&v-16843009&-2139062144)break Z;if(k=k+4|0,!(3<(n=n-4|0)>>>0))break}n=b,k=u}if(n)for(;;){if(!J2[0|k])break v;if(k=k+1|0,!(n=n-1|0))break}}k=0}if(n=(b=k?k-o|0:_)+l|0,l=2902,(0|c)<=-1)break t;v=t,c=b;break i}if(b=o=X2[56+a>>2],c)break s;n=0;break u}X2[12+a>>2]=0,X2[8+a>>2]=X2[56+a>>2],X2[56+a>>2]=8+a,c=-1,b=8+a|0}n=0,o=b;s:{for(;;){if(!(t=X2[b>>2]))break s;if((k=(0|(t=n2(4+a|0,t)))<0)||c-n>>>0>>0)break;if(b=b+4|0,!((n=n+t|0)>>>0>>0))break s}if(k)break e}if((0|n)<0)break f}k=73728&v;u:if(!(k||(0|B)<=(0|n))){if(v2(a+64|0,32,(b=(l=B-n|0)>>>0<256)?l:256),t=32&(u=X2[A>>2]),b){if(t)break u}else{for(b=!t,t=l;;)if(1&b&&(J(a+64|0,256,A),u=X2[A>>2]),b=!(c=32&u),!(255<(t=t-256|0)>>>0))break;if(c)break u;l&=255}J(a+64|0,l,A)}u:if(n)for(b=0;;){if(!(t=X2[o>>2]))break u;if(n>>>0<(b=(t=n2(4+a|0,t))+b|0)>>>0)break u;if(32&J2[0|A]||J(4+a|0,t,A),o=o+4|0,!(b>>>0>>0))break}u:if(8192==(0|k)&&!((0|B)<=(0|n))){if(v2(a+64|0,32,(b=(c=B-n|0)>>>0<256)?c:256),t=32&(o=X2[A>>2]),b){if(t)break u}else{for(b=!t,t=c;;)if(1&b&&(J(a+64|0,256,A),o=X2[A>>2]),b=!(k=32&o),!(255<(t=t-256|0)>>>0))break;if(k)break u;c&=255}J(a+64|0,c,A)}n=(0|n)<(0|B)?B:n;continue r}if(_&&(0|c)<=-1)break f;Z=M[56+a>>3],X2[364+a>>2]=0,L(+Z),n=0|S[1],S[0],g=(0|n)<-1||(0|n)<=-1?(Z=-Z,Q=1,3552):2048&v?(Q=1,3555):(Q=1&v)?3558:3553;k:if((G=j2(Z))!=j&G==G){if(Z=function A(e,r){var f,i,a;if(L(+e),i=0|S[1],a=0|S[0],2047!=(0|(f=i>>>20&2047))){if(!f)return 0==e?X2[r>>2]=0:(e=A(0x10000000000000000*e,r),X2[r>>2]=X2[r>>2]+-64),e;X2[r>>2]=f-1022,z(0,0|a),z(1,-2146435073&i|1071644672),e=+O()}return e}(Z,364+a|0),0!=(Z+=Z)&&(X2[364+a>>2]=X2[364+a>>2]-1),97==(0|(C=32|k))){if(b=g+9|0,n=g,s=(g=32&k)?b:n,!(11>>0)&&12!=(0|c)){for(n=c-12|0,G=16;;)if(G*=16,!((b=n)>>>0<=(n=n+1|0)>>>0))break;Z=45==J2[0|s]?-(G+(-Z-G)):Z+G-G}t=T,n=(u=X2[364+a>>2])>>31;u:{if(n^=n+u){for(b=0;;)if(S2[335+(b+a|0)|0]=n-H2(o=(n>>>0)/10|0,10)|48,b=b-1|0,t=9>>0,n=o,!t)break;if(t=336+(b+a|0)|0,b)break u}S2[0|(t=t-1|0)]=48}for(l=2|Q,S2[0|(_=t-2|0)]=k+15,S2[t-1|0]=(0|u)<0?45:43,o=8&v,b=336+a|0;;)if(t=n=b,k=g,b=j2(Z)<2147483648?~~Z:-2147483648,S2[0|t]=k|J2[b+3536|0],Z=16*(Z-(0|b)),1==((b=n+1|0)-(336+a|0)|0)&&(o||0<(0|c)||0!=Z)&&(S2[n+1|0]=46,b=n+2|0),0==Z)break;if(n=-1,!((2147483645-(o=(g=T-_|0)+l|0)|0)<(0|c))){u=b-(336+a|0)|0,o=(c=c&&(b+V|0)<(0|c)?c+2|0:u)+o|0,v&=73728;u:if(!(v||(0|B)<=(0|o))){if(v2(a+64|0,32,(n=(k=B-o|0)>>>0<256)?k:256),b=32&(t=X2[A>>2]),n){if(b)break u}else{for(n=!b,b=k;;)if(1&n&&(J(a+64|0,256,A),t=X2[A>>2]),n=!(d=32&t),!(255<(b=b-256|0)>>>0))break;if(d)break u;k&=255}J(a+64|0,k,A)}32&J2[0|A]||J(s,l,A);u:if(65536==(0|v)&&!((0|B)<=(0|o))){if(v2(a+64|0,48,(n=(l=B-o|0)>>>0<256)?l:256),b=32&(t=X2[A>>2]),n){if(b)break u}else{for(n=!b,b=l;;)if(1&n&&(J(a+64|0,256,A),t=X2[A>>2]),n=!(k=32&t),!(255<(b=b-256|0)>>>0))break;if(k)break u;l&=255}J(a+64|0,l,A)}32&J2[0|A]||J(336+a|0,u,A),c=c-u|0;u:if(!((0|c)<1)){if(v2(a+64|0,48,(b=c>>>0<256)?c:256),n=32&(t=X2[A>>2]),b){if(n)break u}else{for(n=!n,b=c;;)if(1&n&&(J(a+64|0,256,A),t=X2[A>>2]),n=!(k=32&t),!(255<(b=b-256|0)>>>0))break;if(k)break u;c&=255}J(a+64|0,c,A)}32&J2[0|A]||J(_,g,A);u:if(8192==(0|v)&&!((0|B)<=(0|o))){if(v2(a+64|0,32,(n=(c=B-o|0)>>>0<256)?c:256),b=32&(t=X2[A>>2]),n){if(b)break u}else{for(n=!b,b=c;;)if(1&n&&(J(a+64|0,256,A),t=X2[A>>2]),n=!(k=32&t),!(255<(b=b-256|0)>>>0))break;if(k)break u;c&=255}J(a+64|0,c,A)}n=(0|o)<(0|B)?B:o}}else{for(n=(0|c)<0,0==Z?o=X2[364+a>>2]:(o=X2[364+a>>2]-28|0,X2[364+a>>2]=o,Z*=268435456),s=n?6:c,t=_=(0|o)<0?368+a|0:p;;)if(t=(b=t)+4|0,0==(Z=1e9*(Z-((X2[b>>2]=n=Z<4294967296&0<=Z?~~Z>>>0:0)>>>0))))break;if((0|o)<1)n=t,b=_;else for(b=_;;){if(c=(0|o)<29?o:29,!((n=t-4|0)>>>0>>0)){for(o=c,u=0;;)if(m=u,u=X2[(l=n)>>2],n=31&o,w=32<=(63&o)>>>0?(d=u<>>32-n,u<>>0>>0?n+1|0:n,1e9),H,1e9,0)|0,X2[N>>2]=R,!(b>>>0<=(n=l-4|0)>>>0))break;u&&(X2[(b=b-4|0)>>2]=u)}for(;;)if(!(b>>>0<(n=t)>>>0)||X2[(t=n-4|0)>>2])break;if(o=X2[364+a>>2]-c|0,t=n,!(0<(0|(X2[364+a>>2]=o))))break}if((0|o)<=-1)for(u=1+((s+25>>>0)/9|0)|0;;){if(c=(0|o)<-9?9:0-o|0,n>>>0<=b>>>0)b=X2[b>>2]?b:b+4|0;else{for(l=1e9>>>c|0,d=-1<>2],X2[t>>2]=w+(o>>>c|0),o=H2(l,o&d),!((t=t+4|0)>>>0>>0))break;b=X2[b>>2]?b:b+4|0,o&&(X2[n>>2]=o,n=n+4|0)}if(o=c+X2[364+a>>2]|0,n=(0|u)>2?t+(u<<2)|0:n,!((0|(X2[364+a>>2]=o))<0))break}if(!(n>>>(t=0)<=b>>>0||(t=H2(_-b>>2,9),(c=X2[b>>2])>>>0<10)))for(o=10;;)if(t=t+1|0,!((o=H2(o,10))>>>0<=c>>>0))break;if((0|(o=(s-(u=102==(0|C)?0:t)|0)-(l=(C=103==(0|C))&0!=(0|s))|0))<(H2(n-_>>2,9)-9|0)){if(c=(Y=_+((w=(0|(d=o+9216|0))/9|0)<<2)|0)-4092|0,o=10,((m=d)-(d=H2(w,9))|0)<=7)for(u=9215+(((s-l|0)-u|0)-d|0)|0;;)if(o=H2(o,10),!((0|(u=u+1|0))<7))break;if(w=c+4|0,(u=(l=X2[c>>2])-H2(o,d=(l>>>0)/(o>>>0)|0)|0)||(0|w)!=(0|n)){u:{if(!(1&d)){if(Z=9007199254740992,c>>>0<=b>>>0)break u;if(1e9!=(0|o))break u;if(!(1&S2[c-4|0]))break u}Z=9007199254740994}if(G=u>>>0<(d=o>>>1|0)>>>0?.5:(0|n)==(0|w)&&(0|d)==(0|u)?1:1.5,Q&&45==J2[0|g]&&(G=-G,Z=-Z),X2[c>>2]=u=l-u|0,Z+G!=Z){if(1e9<=(X2[c>>2]=o=o+u|0)>>>0){for(t=Y-4096|0;;)if(t>>>(X2[t+4>>2]=0)>>0&&(X2[(b=b-4|0)>>2]=0),o=X2[t>>2]+1|0,X2[t>>2]=o,t=t-4|0,!(999999999>>0))break;c=t+4|0}if(t=H2(_-b>>2,9),!((u=X2[b>>2])>>>0<10))for(o=10;;)if(t=t+1|0,!((o=H2(o,10))>>>0<=u>>>0))break}}n=(o=c+4|0)>>>0>>0?o:n}u:{for(;;){if((u=n)>>>(c=0)<=b>>>0)break u;if(X2[(n=u-4|0)>>2])break}c=1}if(C){if(s=((o=(0|t)<(0|(n=s||1))&-5<(0|t))?-1^t:-1)+n|0,k=(o?-1:-2)+k|0,!(l=8&v)){if(n=9,c&&(l=X2[u-4>>2])&&!((l>>>(n=0))%10|0))for(o=10;;)if(n=n+1|0,(l>>>0)%((o=H2(o,10))>>>0)|0)break;o=H2(u-_>>2,9)-9|0,s=102==(32|k)?((l=0)|s)<(0|(n=0<(0|(n=o-n|0))?n:0))?s:n:((l=0)|s)<(0|(n=0<(0|(n=(t+o|0)-n|0))?n:0))?s:n}}else l=8&v;if(n=-1,!((0|((w=s|l)?2147483645:2147483646))<(0|s))){if(C=1+((0!=(0|w))+s|0)|0,Y=102!=(32|k)){if(o=T,n=t>>31,n^=n+t)for(;;)if(S2[0|(o=o-1|0)]=n-H2(d=(n>>>0)/10|0,10)|48,F=9>>0,n=d,!F)break;if((T-o|0)<=1){for(n=o-1|0;;)if(S2[0|n]=48,o=T-n|0,n=d=n-1|0,!((0|o)<2))break;o=d+1|0}if(S2[0|(F=o-2|0)]=k,n=-1,S2[o-1|0]=(0|t)<0?45:43,(2147483647-C|0)<(0|(t=T-F|0)))break k}else{if((2147483647-C|0)<(0|t))break k;t=0<(0|t)?t:0}if(!((2147483647^Q)<(0|(o=t+C|0)))){d=o+Q|0,v&=73728;u:if(!(v||(0|B)<=(0|d))){if(v2(a+64|0,32,(n=(k=B-d|0)>>>0<256)?k:256),t=32&(o=X2[A>>2]),n){if(t)break u}else{for(n=!t,t=k;;)if(1&n&&(J(a+64|0,256,A),o=X2[A>>2]),n=!(C=32&o),!(255<(t=t-256|0)>>>0))break;if(C)break u;k&=255}J(a+64|0,k,A)}32&J2[0|A]||J(g,Q,A);u:if(65536==(0|v)&&!((0|B)<=(0|d))){if(v2(a+64|0,48,(n=(k=B-d|0)>>>0<256)?k:256),t=32&(o=X2[A>>2]),n){if(t)break u}else{for(n=!t,t=k;;)if(1&n&&(J(a+64|0,256,A),o=X2[A>>2]),n=!(g=32&o),!(255<(t=t-256|0)>>>0))break;if(g)break u;k&=255}J(a+64|0,k,A)}u:if(Y){s:if(!((0|s)<0)){for(k=c?u:b+4|0,c=b;;){o=D;l:{if(n=X2[c>>2]){for(t=0;;)if(S2[344+(t+a|0)|0]=n-H2(o=(n>>>0)/10|0,10)|48,t=t-1|0,u=9>>0,n=o,!u)break;if(o=345+(t+a|0)|0,t)break l}S2[0|(o=o-1|0)]=48}if((0|b)!=(0|c)){if(!(o>>>0<=336+a>>>0))for(v2(336+a|0,48,o+W|0);;)if(!(336+a>>>0<(o=o-1|0)>>>0))break}else 32&J2[0|A]||J(o,1,A),o=o+1|0,(0|s)<1&&!l||32&J2[0|A]||J(3587,1,A);if(n=D-o|0,32&J2[0|A]||J(o,(0|n)<(0|s)?n:s,A),c=c+4|0,!(-1<(0|(s=s-n|0))&&c>>>0>>0))break}if(!((0|s)<1)){if(v2(a+64|0,48,(b=s>>>0<256)?s:256),n=32&(t=X2[A>>2]),b){if(n)break s}else{for(n=!n,b=s;;)if(1&n&&(J(a+64|0,256,A),t=X2[A>>2]),n=!(o=32&t),!(255<(b=b-256|0)>>>0))break;if(o)break s;s&=255}J(a+64|0,s,A)}}32&J2[0|A]||J(F,T-F|0,A)}else{for(c=t=_>>>0>>0?_:b;;){if(n=X2[c>>2]){for(b=0;;)if(S2[b+x|0]=n-H2(o=(n>>>0)/10|0,10)|48,b=b-1|0,k=9>>0,n=o,!k)break}else b=0;if(n=b+D|0,(0|t)!=(0|c)?n>>>0<=336+a>>>0||(v2(336+a|0,48,b+9|0),n=336+a|0):b||(S2[0|(n=n-1|0)]=48),32&J2[0|A]||J(n,D-n|0,A),!((c=c+4|0)>>>0<=_>>>0))break}!w||32&J2[0|A]||J(3587,1,A);s:if((0|s)<1)n=s;else if(u>>>0<=c>>>0)n=s;else for(;;){n=D;l:{if(b=X2[c>>2]){for(;;)if(S2[0|(n=n-1|0)]=b-H2(o=(b>>>0)/10|0,10)|48,t=9>>0,b=o,!t)break;if(n>>>0<=336+a>>>0)break l}for(v2(336+a|0,48,n+W|0);;)if(!(336+a>>>0<(n=n-1|0)>>>0))break}if(32&J2[0|A]||J(n,(0|s)<9?s:9,A),n=s-9|0,(0|s)<10)break s;if(s=n,!((c=c+4|0)>>>0>>0))break}if(!((0|n)<1)){if(v2(a+64|0,48,(t=n>>>0<256)?n:256),b=32&(o=X2[A>>2]),t){if(b)break u}else{for(b=!b,t=n;;)if(1&b&&(J(a+64|0,256,A),o=X2[A>>2]),b=!(k=32&o),!(255<(t=t-256|0)>>>0))break;if(k)break u;n&=255}J(a+64|0,n,A)}}u:if(8192==(0|v)&&!((0|B)<=(0|d))){if(v2(a+64|0,32,(n=(u=B-d|0)>>>0<256)?u:256),b=32&(t=X2[A>>2]),n){if(b)break u}else{for(n=!b,b=u;;)if(1&n&&(J(a+64|0,256,A),t=X2[A>>2]),n=!(o=32&t),!(255<(b=b-256|0)>>>0))break;if(o)break u;u&=255}J(a+64|0,u,A)}n=(0|d)<(0|B)?B:d}}}}else{o=Q+3|0;u:if(!(8192&v||(0|B)<=(0|o))){if(v2(a+64|0,32,(n=(c=B-o|0)>>>0<256)?c:256),b=32&(t=X2[A>>2]),n){if(b)break u}else{for(n=!b,b=c;;)if(1&n&&(J(a+64|0,256,A),t=X2[A>>2]),n=!(u=32&t),!(255<(b=b-256|0)>>>0))break;if(u)break u;c&=255}J(a+64|0,c,A)}32&(n=X2[A>>2])||(J(g,Q,A),n=X2[A>>2]),32&n||(n=(32&k)>>>5|0,J(Z!=Z?n?3579:3583:n?3571:3575,3,A));u:if(8192==(73728&v)&&!((0|B)<=(0|o))){if(v2(a+64|0,32,(n=(c=B-o|0)>>>0<256)?c:256),b=32&(t=X2[A>>2]),n){if(b)break u}else{for(n=!b,b=c;;)if(1&n&&(J(a+64|0,256,A),t=X2[A>>2]),n=!(k=32&t),!(255<(b=b-256|0)>>>0))break;if(k)break u;c&=255}J(a+64|0,c,A)}n=(0|o)<(0|B)?B:o}if(0<=(0|n))continue r;break f}s=0,l=2902}n=I;break i}if(v=t,c=b,J2[0|n])break f;break i}n=J2[e+1|0],e=e+1|0}if(A)break A;if(!h){E=0;break A}if(A=1,(e=X2[i+4>>2])&&(c2(f+8|0,e,r),(e=X2[i+8>>(A=2)])&&(c2(f+16|0,e,r),A=3,(e=X2[i+12>>2])&&(c2(f+24|0,e,r),A=4,(e=X2[i+16>>2])&&(c2(f+32|0,e,r),A=5,(e=X2[i+20>>2])&&(c2(f+40|0,e,r),A=6,(e=X2[i+24>>2])&&(c2(f+48|0,e,r),A=7,(e=X2[i+28>>2])&&(c2(f+56|0,e,r),A=8,e=X2[i+32>>2])))))))){if(c2(f- -64|0,e,r),A=X2[i+36>>2])break a;A=9}for(n=A-1|0,e=(A<<2)+i|0;;){if(X2[e>>2])break n;if(e=e+4|0,!((n=n+(E=1)|0)>>>0<=8))break}break A}X2[6180]=28;break e}c2(f+72|0,A,r),E=1;break A}if(!((2147483647-s|0)<(0|(d=(0|c)<(0|(g=n-o|0))?g:c))||(0|Q)<(0|(n=(0|B)<(0|(_=s+d|0))?_:B)))){v&=73728;i:if(!(v||(0|B)<=(0|_))){if(v2(a+64|0,32,(b=(k=n-_|0)>>>0<256)?k:256),t=32&(u=X2[A>>2]),b){if(t)break i}else{for(b=!t,t=k;;)if(1&b&&(J(a+64|0,256,A),u=X2[A>>2]),b=!(Q=32&u),!(255<(t=t-256|0)>>>0))break;if(Q)break i;k&=255}J(a+64|0,k,A)}32&J2[0|A]||J(l,s,A);i:if(65536==(0|v)&&!((0|B)<=(0|_))){if(v2(a+64|0,48,(b=(s=n-_|0)>>>0<256)?s:256),t=32&(u=X2[A>>2]),b){if(t)break i}else{for(b=!t,t=s;;)if(1&b&&(J(a+64|0,256,A),u=X2[A>>2]),b=!(k=32&u),!(255<(t=t-256|0)>>>0))break;if(k)break i;s&=255}J(a+64|0,s,A)}i:if(!((0|c)<=(0|g))){if(v2(a+64|0,48,(b=(k=d-g|0)>>>0<256)?k:256),t=32&(u=X2[A>>2]),b){if(t)break i}else{for(b=!t,t=k;;)if(1&b&&(J(a+64|0,256,A),u=X2[A>>2]),b=!(c=32&u),!(255<(t=t-256|0)>>>0))break;if(c)break i;k&=255}J(a+64|0,k,A)}if(32&J2[0|A]||J(o,g,A),8192!=(0|v))continue;if((0|B)<=(0|_))continue;if(v2(a+64|0,32,(b=(B=n-_|0)>>>0<256)?B:256),t=32&(o=X2[A>>2]),b){if(t)continue}else{for(b=!t,t=B;;)if(1&b&&(J(a+64|0,256,A),o=X2[A>>2]),b=!(k=32&o),!(255<(t=t-256|0)>>>0))break;if(k)continue;B&=255}J(a+64|0,B,A);continue}}break}X2[6180]=61}E=-1}return K2=880+a|0,E}function c2(A,e,r){var f,i,a=0,n=0,b=0;A:{e:{r:{if((e=e-9|0)>>>0<=17){f:switch(e-1|0){case 5:return e=X2[r>>2],X2[r>>2]=e+4,e=$[e>>1],X2[A>>2]=e,void(X2[A+4>>2]=e>>31);case 6:return e=X2[r>>2],X2[r>>2]=e+4,X2[A>>2]=A2[e>>1],void(X2[A+4>>2]=0);case 7:return e=X2[r>>2],X2[r>>2]=e+4,e=S2[0|e],X2[A>>2]=e,void(X2[A+4>>2]=e>>31);case 8:return e=X2[r>>2],X2[r>>2]=e+4,X2[A>>2]=J2[0|e],void(X2[A+4>>2]=0);case 16:for(A=3388;;)if((-1^(r=X2[(A=A+4|0)>>2]))&r-16843009&-2139062144)break;if(e=A-3392|0,255&r){for(;;)if(r=J2[A+1|0],A=e=A+1|0,!r)break;e=e-3392|0}A=e,r=0,b=3392;i:{if(!(e=X2[6030])){if(e=0,a2(24104))break i;e=X2[6030]}if(e-(n=X2[6031])>>>0>>0)e=0|N2[X2[6034]](24104,3392,A);else{a=A;a:if(!(X2[6042]<0)){for(f=A+3392|0,e=0;;){if(!((a=A)+e|0))break a;if(i=e+f|0,e=a=e-1|0,10==J2[i-1|0])break}if((e=0|N2[X2[6034]](24104,3392,r=1+(A+a|0)|0))>>>0>>0)break i;b=1+(a+f|0)|0,n=X2[6031],a^=-1}$2(n,b,a),X2[6031]=a+X2[6031],e=r+a|0}}U();case 2:case 9:case 11:case 12:case 15:break A;case 1:case 4:case 10:case 14:break e;case 0:case 3:case 13:break r;default:break f;}e=X2[r>>2],X2[r>>2]=e+4,X2[A>>2]=X2[e>>2]}return}return e=X2[r>>2],X2[r>>2]=e+4,e=X2[e>>2],X2[A>>2]=e,void(X2[A+4>>2]=e>>31)}return e=X2[r>>2],X2[r>>2]=e+4,X2[A>>2]=X2[e>>2],void(X2[A+4>>2]=0)}e=X2[r>>2]+7&-8,X2[r>>2]=e+8,r=X2[e+4>>2],X2[A>>2]=X2[e>>2],X2[A+4>>2]=r}function k2(A){var e;X2[12+(K2=e=K2-16|0)>>2]=A,X2[8+e>>2]=0,t2(X2[309],X2[12+e>>2],X2[8+e>>2]),t2(X2[309],3589,X2[(K2=A=K2-16|0)+12>>2]=0),K2=A+16|0,U()}function u2(A){var e;return X2[12+(e=K2-16|0)>>2]=A|=0,X2[12+e>>2]}function s2(A){var e;X2[12+(K2=e=K2-16|0)>>2]=A|=0,A=X2[12+e>>2],X2[12+(K2-16|0)>>2]=A,n(A),K2=16+e|0}function l2(A){return X2[12+(K2-16|0)>>2]=A|=0,3591}function r(A){var e;return X2[12+(K2=e=K2-16|0)>>2]=A|=0,A=X2[12+e>>2],X2[12+(K2-16|0)>>2]=A,K2=16+e|0,0|A}function d2(A){var e;X2[12+(K2=e=K2-16|0)>>2]=A|=0,r(A=X2[12+e>>2]),n(A),K2=16+e|0}function Z2(A){return X2[12+(K2-16|0)>>2]=A|=0,3606}function _2(A){var e,r;return X2[12+(K2=r=K2-16|0)>>2]=A|=0,e=K2-16|0,A=X2[12+r>>2],X2[12+e>>2]=A,X2[X2[12+e>>2]>>2]=3716,X2[A>>2]=3636,K2=16+r|0,0|A}function g2(A){return X2[12+(K2-16|0)>>2]=A|=0,3648}function E2(A){var e;return X2[12+(K2=e=K2-16|0)>>2]=A|=0,_2(A=X2[12+e>>2]),X2[A>>2]=3672,K2=16+e|0,0|A}function Q2(A){var e;return X2[12+(K2=e=K2-16|0)>>2]=A|=0,r(A=X2[12+e>>2]),K2=16+e|0,0|A}function w2(A){var e;X2[12+(K2=e=K2-16|0)>>2]=A|=0,Q2(A=X2[12+e>>2]),n(A),K2=16+e|0}function G2(A){return X2[12+(K2-16|0)>>2]=A|=0,3684}function C2(A){var e,r;return X2[12+(K2=r=K2-16|0)>>2]=A|=0,e=K2-16|0,A=X2[12+r>>2],X2[12+e>>2]=A,X2[X2[12+e>>2]>>2]=3716,X2[A>>2]=3880,K2=16+r|0,0|A}function h2(A){return X2[12+(K2-16|0)>>2]=A|=0,3892}function F2(A){var e,r;return X2[12+(K2=r=K2-16|0)>>2]=A|=0,e=K2-16|0,A=X2[12+r>>2],X2[12+e>>2]=A,X2[X2[12+e>>2]>>2]=3716,X2[A>>2]=3916,K2=16+r|0,0|A}function Y2(A){return X2[12+(K2-16|0)>>2]=A|=0,3928}function D2(A,e){var r=0,f=0,f=J2[0|e],r=J2[0|A];A:if(r&&(0|f)==(0|r))for(A=A+1|0,e=e+1|0;;){if(f=J2[0|e],!(r=J2[0|A]))break A;if(A=A+1|0,e=e+1|0,(0|f)!=(0|r))break}return r-f|0}function T2(A){X2[12+(K2-16|0)>>2]=A|=0}function W2(A){var e;return X2[12+(K2=e=K2-16|0)>>2]=A|=0,Q2(A=X2[12+e>>2]),K2=16+e|0,0|A}function I2(A){var e;X2[12+(K2=e=K2-16|0)>>2]=A|=0,W2(A=X2[12+e>>2]),n(A),K2=16+e|0}function x2(A,e,r){e|=0,r|=0;var f;return X2[12+(K2=f=K2-16|0)>>2]=A|=0,X2[8+f>>2]=e,X2[4+f>>2]=r,A=b(X2[12+f>>2],X2[8+f>>2],0),K2=16+f|0,1&A}function b(A,e,r){var f;return X2[8+(K2=f=K2-16|0)>>2]=A,X2[4+f>>2]=e,S2[3+f|0]=r,1&S2[3+f|0]?(A=X2[8+(r=f)>>2]!=X2[4+f>>2]?(X2[(A=K2-16|0)+8>>2]=X2[8+f>>2],X2[A+12>>2]=X2[X2[A+8>>2]+4>>2],e=X2[A+12>>2],X2[(A=K2-16|0)+8>>2]=X2[4+f>>2],X2[A+12>>2]=X2[X2[A+8>>2]+4>>2],!D2(e,X2[A+12>>2])):1,S2[r+15|0]=A):(e=X2[4+f>>2],X2[(K2=A=K2-16|0)+4>>2]=X2[8+f>>2],X2[A>>2]=e,e=X2[X2[A>>2]+4>>2],X2[A+12>>2]=X2[X2[A+4>>2]+4>>2],X2[A+8>>2]=e,e=1,X2[A+12>>2]!=X2[A+8>>2]&&(e=!D2(X2[A+12>>2],X2[A+8>>2])),K2=A+16|0,S2[15+f|0]=1&e),K2=16+f|0,1&S2[15+f|0]}function y2(A,e,r){e|=0,r|=0;var f;return X2[12+(f=K2-16|0)>>2]=A|=0,X2[8+f>>2]=e,X2[4+f>>2]=r,0}function t(A,e,r,f){e|=0,r|=0,f|=0;var i;if(X2[92+(K2=i=K2-96|0)>>2]=A|=0,X2[88+i>>2]=e,X2[84+i>>2]=r,X2[80+i>>2]=f,X2[76+i>>2]=X2[X2[92+i>>2]>>2],X2[72+i>>2]=X2[X2[76+i>>2]-8>>2],X2[68+i>>2]=X2[92+i>>2]+X2[72+i>>2],X2[64+i>>2]=X2[X2[76+i>>2]-4>>2],X2[60+i>>2]=0,X2[i>>2]=X2[84+i>>2],X2[4+i>>2]=X2[92+i>>2],X2[8+i>>2]=X2[88+i>>2],X2[12+i>>2]=X2[80+i>>2],X2[16+i>>2]=0,X2[20+i>>2]=0,X2[24+i>>2]=0,X2[28+i>>2]=0,X2[32+i>>2]=0,X2[36+i>>2]=0,X2[40+i>>2]=0,X2[44+i>>2]=0,X2[48+i>>2]=0,S2[52+i|0]=0,S2[53+i|0]=0,S2[54+i|0]=0,1&b(X2[64+i>>2],X2[84+i>>2],0))X2[48+i>>2]=1,A=X2[64+i>>2],N2[X2[X2[A>>2]+20>>2]](A,i,X2[68+i>>2],X2[68+i>>2],1,0),1==X2[24+i>>2]&&(X2[60+i>>2]=X2[68+i>>2]);else if(A=X2[64+i>>2],N2[X2[X2[A>>2]+24>>2]](A,i,X2[68+i>>2],1,0),!(1<(A=X2[36+i>>2])>>>0))if(1!=(0|A))1==X2[40+i>>2]&&1==X2[28+i>>2]&&1==X2[32+i>>2]&&(X2[60+i>>2]=X2[20+i>>2]);else A:{if(1!=X2[24+i>>2]){if(X2[40+i>>2])break A;if(1!=X2[28+i>>2])break A;if(1!=X2[32+i>>2])break A}X2[60+i>>2]=X2[16+i>>2]}return K2=96+i|0,X2[60+i>>2]}function V2(A,e,r,f){var i;X2[12+(i=K2-16|0)>>2]=A,X2[8+i>>2]=e,X2[4+i>>2]=r,X2[i>>2]=f,X2[X2[8+i>>2]+16>>2]?X2[X2[8+i>>2]+16>>2]==X2[4+i>>2]?2==X2[X2[8+i>>2]+24>>2]&&(X2[X2[8+i>>2]+24>>2]=X2[i>>2]):(A=X2[8+i>>2],X2[A+36>>2]=X2[A+36>>2]+1,X2[X2[8+i>>2]+24>>2]=2,S2[X2[8+i>>2]+54|0]=1):(X2[X2[8+i>>2]+16>>2]=X2[4+i>>2],X2[X2[8+i>>2]+24>>2]=X2[i>>2],X2[X2[8+i>>2]+36>>2]=1)}function p2(A,e,r,f){var i,a;X2[28+(K2=a=K2-32|0)>>2]=A,X2[24+a>>2]=e,X2[20+a>>2]=r,X2[16+a>>2]=f,A=X2[28+a>>2],X2[12+a>>2]=0,X2[20+a>>2]&&(X2[12+a>>2]=X2[A+4>>2]>>8,1&X2[A+4>>2]&&(X2[8+a>>2]=X2[X2[20+a>>2]>>2],X2[12+a>>2]=X2[X2[8+a>>2]+X2[12+a>>2]>>2])),r=e=X2[A>>2],f=X2[24+a>>2],i=X2[20+a>>2]+X2[12+a>>2]|0,A=2&X2[A+4>>2]?X2[16+a>>2]:2,N2[X2[X2[e>>2]+28>>2]](r,f,i,A),K2=32+a|0}function M2(A,e,r){e|=0,r|=0;var f,i,a;X2[24+(K2=a=K2-32|0)>>2]=A|=0,X2[20+a>>2]=e,X2[16+a>>2]=r,e=X2[24+a>>2],S2[15+a|0]=0!=(24&X2[e+8>>2]);A:{if(!(1&S2[15+a|0])){if(A=(A=X2[20+(r=a)>>2])?t(A,4072,4168,0):0,X2[r+8>>2]=A,!X2[8+a>>2]){S2[31+a|0]=0;break A}S2[15+a|0]=0!=(24&X2[X2[8+a>>2]+8>>2])}i=1&b(e,X2[20+(f=a)>>2],1&S2[15+a|0]),S2[31+f|0]=i}return K2=32+a|0,1&S2[31+a|0]}function A0(A,e){var r,f;return X2[8+(K2=f=K2-16|0)>>2]=A,X2[4+f>>2]=e,A=X2[8+f>>2],e=(e=X2[4+(r=f)>>2])?t(e,4072,4328,0):0,X2[r>>2]=e,X2[f>>2]&&!(X2[X2[f>>2]+8>>2]&(-1^X2[A+8>>2]))&&1&b(X2[A+12>>2],X2[X2[f>>2]+12>>2],0)&&1&b(X2[A+16>>2],X2[X2[f>>2]+16>>2],0)?S2[15+f|0]=1:S2[15+f|0]=0,K2=16+f|0,1&S2[15+f|0]}function e0(A,e,r,f,i){var a;X2[28+(a=K2-32|0)>>2]=A,X2[24+a>>2]=e,X2[20+a>>2]=r,X2[16+a>>2]=f,X2[12+a>>2]=i,S2[X2[24+a>>2]+53|0]=1,X2[16+a>>2]==X2[X2[24+a>>2]+4>>2]&&(S2[X2[24+a>>2]+52|0]=1,X2[X2[24+a>>2]+16>>2]?X2[X2[24+a>>2]+16>>2]==X2[20+a>>2]?(2==X2[X2[24+a>>2]+24>>2]&&(X2[X2[24+a>>2]+24>>2]=X2[12+a>>2]),1==X2[X2[24+a>>2]+48>>2]&&1==X2[X2[24+a>>2]+24>>2]&&(S2[X2[24+a>>2]+54|0]=1)):(A=X2[24+a>>2],X2[A+36>>2]=X2[A+36>>2]+1,S2[X2[24+a>>2]+54|0]=1):(X2[X2[24+a>>2]+16>>2]=X2[20+a>>2],X2[X2[24+a>>2]+24>>2]=X2[12+a>>2],(X2[X2[24+a>>2]+36>>2]=1)==X2[X2[24+a>>2]+48>>2]&&1==X2[X2[24+a>>2]+24>>2]&&(S2[X2[24+a>>2]+54|0]=1)))}function r0(A,e,r,f){var i;X2[12+(i=K2-16|0)>>2]=A,X2[8+i>>2]=e,X2[4+i>>2]=r,X2[i>>2]=f,X2[4+i>>2]==X2[X2[8+i>>2]+4>>2]&&1!=X2[X2[8+i>>2]+28>>2]&&(X2[X2[8+i>>2]+28>>2]=X2[i>>2])}function f0(A,e,r,f,i,a){var n;X2[28+(K2=n=K2-32|0)>>2]=A,X2[24+n>>2]=e,X2[20+n>>2]=r,X2[16+n>>2]=f,X2[12+n>>2]=i,S2[11+n|0]=a,A=X2[28+n>>2],X2[4+n>>2]=X2[A+4>>2]>>8,1&X2[A+4>>2]&&(X2[n>>2]=X2[X2[16+n>>2]>>2],X2[4+n>>2]=X2[X2[n>>2]+X2[4+n>>2]>>2]),r=e=X2[A>>2],f=X2[24+n>>2],i=X2[20+n>>2],a=X2[16+n>>2]+X2[4+n>>2]|0,A=2&X2[A+4>>2]?X2[12+n>>2]:2,N2[X2[X2[e>>2]+20>>2]](r,f,i,a,A,1&S2[11+n|0]),K2=32+n|0}function i0(A,e,r,f,i){var a;X2[28+(K2=a=K2-32|0)>>2]=A,X2[24+a>>2]=e,X2[20+a>>2]=r,X2[16+a>>2]=f,S2[15+a|0]=i,A=X2[28+a>>2],X2[8+a>>2]=X2[A+4>>2]>>8,1&X2[A+4>>2]&&(X2[4+a>>2]=X2[X2[20+a>>2]>>2],X2[8+a>>2]=X2[X2[4+a>>2]+X2[8+a>>2]>>2]),r=e=X2[A>>2],f=X2[24+a>>2],i=X2[20+a>>2]+X2[8+a>>2]|0,A=2&X2[A+4>>2]?X2[16+a>>2]:2,N2[X2[X2[e>>2]+24>>2]](r,f,i,A,1&S2[15+a|0]),K2=32+a|0}function a0(A){var e,r;return P2((e=A*A)*e*(r=e*A)*(2718311493989822e-21*e-.00019839334836096632)+(r*(.008333329385889463*e-.16666666641626524)+A))}function n0(A){var e;return P2(-.499999997251031*(A*=A)+1+.04166662332373906*(e=A*A)+A*e*(2439044879627741e-20*A-.001388676377460993))}function b0(A,e){return 1024<=(0|e)?(A*=898846567431158e293,e=(0|e)<2047?e-1023|0:(A*=898846567431158e293,((0|e)<3069?e:3069)-2046|0)):-1023<(0|e)||(A*=2004168360008973e-307,e=-1992<(0|e)?e+969|0:(A*=2004168360008973e-307,(-2960<(0|e)?e:-2960)+1938|0)),z(0,0),z(1,e+1023<<20),A*+O()}function t0(A,e){var r,f,i,a,n,b,t,o,c,k,u=0,s=0,l=0,B=0,v=0,d=0,Z=0,_=0,g=0,E=0,Q=0,w=0,G=0,C=0,h=0,F=0;if(K2=k=K2-16|0,m(A),(u=2147483647&(h=S[2]))>>>0<=1305022426)M[e>>3]=(E=+A)+-1.5707963109016418*(s=.6366197723675814*E+6755399441055744-6755399441055744)+-1.5893254773528196e-8*s,l=j2(s)<2147483648?~~s:-2147483648;else if(2139095040<=u>>>0)M[e>>3]=P2(A-A);else{if(v=u,M[8+k>>3]=(z(2,v-((u=(u>>>23|0)-150|0)<<23)|0),N()),G=8+k|0,K2=r=K2-560|0,Q=u+H2(i=0<(0|(v=(u-3|0)/24|0))?v:0,-24)|0,0<=(0|(f=X2[1568])))for(v=f+1|0,d=6288+((u=i)<<2)|0,B=320+r|0;;)if(M[B>>3]=(0|u)<0?0:+X2[d>>2],B=B+8|0,d=d+4|0,u=u+1|0,!(v=v-1|0))break;for(Z=Q-24|0,v=320+r|0;;){for(s=0,u=G,d=1,B=v;;)if(s+=M[u>>3]*M[B>>3],u=u+8|0,B=B-8|0,!(d=d-1|0))break;if(M[(l<<3)+r>>3]=s,v=v+8|0,u=(0|l)<(0|f),l=l+1|0,!u)break}n=23-Z|0,a=24-Z|0,b=476+((f<<2)+r|0)|0,t=476+r|0,o=r-8|0,l=f;A:{for(;;){if(s=M[(u=l<<3)+r>>3],!(g=(0|l)<1))for(d=l+1|0,u=u+o|0,B=480+r|0;;)if(v=B,_=j2(E=5.960464477539063e-8*(C=s))<2147483648?~~E:-2147483648,_=j2(E=C+-16777216*(s=0|_))<2147483648?~~E:-2147483648,X2[v>>2]=_,B=B+4|0,s=M[u>>3]+s,u=u-8|0,!(1<(0|(d=d-1|0))))break;s=b0(s,Z),s=(s+=-8*Y(.125*s))-(0|(_=j2(s)<2147483648?~~s:-2147483648));e:{r:{f:{if(d=(0|Z)<1){if(Z)break f;w=X2[476+((l<<2)+r|0)>>2]>>23}else _=(u=(B=X2[(v=476+((l<<2)+r|0)|0)>>2])>>a)+_|0,w=(X2[(w=v)>>2]=v=B-(u<>n;if((0|w)<1)break e;break r}if(w=2,!(.5<=s)){w=0;break e}}if(g)g=0;else for(u=480+r|(g=0),v=l;;){B=X2[u>>2];r:{f:{if(c=u,g)F=16777215;else{if(!B)break f;g=1,F=16777216}X2[c>>2]=F-B;break r}g=0}if(u=u+4|0,!(v=v-1|0))break}d||1<(u=Z-1|0)>>>0||(X2[(u=476+((l<<2)+r|0)|0)>>2]=1!=(0|u)?8388607&X2[u>>2]:4194303&X2[u>>2]),_=_+1|0,2==(0|w)&&(s=1-s,w=2,g&&(s-=b0(1,Z)))}if(0!=s)break;if(!((0|l)<=(0|f))){for(u=(l<<2)+t|0,B=0,d=l;;)if(B=X2[u>>2]|B,u=u-4|0,!((0|f)<(0|(d=d-1|0))))break;if(B){for(u=476+((l<<2)+r|0)|0,Q=Z;;)if(l=l-1|0,Q=Q-24|0,v=X2[u>>2],u=u-4|0,v)break;break A}}for(u=b,v=l;;)if(v=v+1|0,B=X2[u>>2],u=u-4|0,B)break;for(g=328+((l<<3)+r|0)|0;;){for(M[(u=328+((l<<3)+r|0)|0)>>3]=X2[6288+(i+(l=l+1|0)<<2)>>2],s=0,u=G,B=g,d=1;;)if(s+=M[u>>3]*M[B>>3],u=u+8|0,B=B-8|0,!(d=d-1|0))break;if(M[(l<<3)+r>>3]=s,g=g+8|0,!((0|l)<(0|v)))break}l=v}16777216<=(s=b0(s,0-Z|0))?(B=(480+r|0)+(l<<2)|0,u=j2(E=5.960464477539063e-8*(C=s))<2147483648?~~E:-2147483648,v=j2(s=C+-16777216*(0|u))<2147483648?~~s:-2147483648,X2[B>>2]=v,l=l+1|0):(u=j2(s)<2147483648?~~s:-2147483648,Q=Z),X2[(480+r|0)+(l<<2)>>2]=u}if(!((0|l)<0)){for(d=l+1|0,s=b0(1,Q),u=(480+r|0)+(l<<2)|0,B=(l<<3)+r|0;;)if(M[B>>3]=s*+X2[u>>2],u=u-4|0,B=B-8|0,s*=5.960464477539063e-8,!(0<(0|(d=d-1|0))))break;if(!((0|l)<0))for(v=(l<<3)+r|0,u=l;;){for(Q=l-(Z=u)|0,B=u=s=0;;)if(s+=M[u+9056>>3]*M[u+v>>3],(0|f)<=(0|B)||(u=u+8|0,G=B>>>0>>0,B=B+1|0,!G))break;if(M[(160+r|0)+(Q<<3)>>3]=s,v=v-8|0,u=Z-1|0,!(0<(0|Z)))break}}if((0|l)<0)s=0;else for(B=l+1|0,u=(160+r|0)+(l<<3)|0,s=0;;)if(s+=M[u>>3],u=u-8|0,!(0<(0|(B=B-1|0))))break;M[k>>3]=w?-s:s,K2=560+r|0,l=7&_,s=M[k>>3],(0|h)<=-1?(M[e>>3]=-s,l=0-l|0):M[e>>3]=s}return K2=16+k|0,l}function o0(A){var e,r,f=0,i=0;K2=r=K2-16|0,m(A);A:if((e=2147483647&(i=S[2]))>>>0<=1061752794)e>>>0<964689920||(A=a0(+A));else if(e>>>0<=1081824209)f=+A,A=e>>>0<=1075235811?(0|i)<=-1?P2(-n0(f+1.5707963267948966)):n0(f+-1.5707963267948966):a0(-(((0|i)<0?3.141592653589793:-3.141592653589793)+f));else if(e>>>0<=1088565717)f=+A,A=e>>>0<=1085271519?(0|i)<=-1?n0(f+4.71238898038469):P2(-n0(f+-4.71238898038469)):a0(((0|i)<0?6.283185307179586:-6.283185307179586)+f);else if(2139095040<=e>>>0)A=P2(A-A);else if((e=3&t0(A,8+r|0))>>>0<=2){e:switch(e-1|0){default:A=a0(M[8+r>>3]);break A;case 0:A=n0(M[8+r>>3]);break A;case 1:break e;}A=a0(-M[8+r>>3])}else A=P2(-n0(M[8+r>>3]));return K2=16+r|0,A}function c0(A){var e,r,f,i=P2(0),a=0;K2=f=K2-16|0,m(A);A:if((e=2147483647&(a=S[2]))>>>0<=1061752794)i=P2(1),e>>>0<964689920||(i=n0(+A));else if(e>>>0<=1081824209)r=+A,i=1075235812<=e>>>0?P2(-n0(((0|a)<0?3.141592653589793:-3.141592653589793)+r)):a0((0|a)<=-1?1.5707963267948966+r:1.5707963267948966-r);else if(e>>>0<=1088565717)i=1085271520<=e>>>0?n0(+A+((0|a)<0?6.283185307179586:-6.283185307179586)):a0((0|a)<=-1?-4.71238898038469-+A:+A-4.71238898038469);else if(i=P2(A-A),!(2139095040<=e>>>0))if((e=3&t0(A,8+f|0))>>>0<=2){e:switch(e-1|0){default:i=n0(M[8+f>>3]);break A;case 0:i=a0(-M[8+f>>3]);break A;case 1:break e;}i=P2(-n0(M[8+f>>3]))}else i=a0(M[8+f>>3]);return K2=16+f|0,A=i}function k0(A,e){var r,f=0,i=0,a=0,n=0,b=0,t=0,o=P2(0);m(e),i=(t=(a=S[2])<<1)-1|0;A:{e:{r:{f:{m(A);i:{if((n=S[2])-8388608>>>0<=2130706431){if(4278190078>>0)break i;break r}if(i>>>0<4278190079)break f}if(o=P2(1),1065353216==(0|n))break e;if(!t)break e;if(f=n<<1,!(t>>>0<4278190081&&f>>>0<=4278190080))return P2(A+e);if(2130706432==(0|f))break e;return P2(((-1^a)>>>31|0)==(f>>>0<2130706432|0)?0:e*e)}if(4278190079<=(n<<1)-1>>>0){if(o=P2(A*A),-1<(0|n)||23<(f=a>>>23&255)-127>>>0||(o=!((f=1<<150-f)&a)||a&f-1?o:P2(-o)),-1<(0|a))break e;return P2(P2(1)/o)}if((0|n)<=-1){if((f=a>>>23&255)>>>0<127)break A;f:{if(f>>>0<=150){if(a&(i=1<<150-f)-1)break A;if(f=65536,i&a)break f}f=0}n&=2147483647}8388607>>0||(n=(2147483647&(m(P2(A*P2(8388608))),S[2]))-192937984|0)}if(r=M[(i=(t=n-1060306944|0)>>>15&240)+9120>>3]*(z(2,n-(-8388608&t)|0),+N())-1,L(b=((M[1173]+M[1172]*r)*((b=r*r)*b)+(b*(M[1175]+M[1174]*r)+(M[i+9128>>3]+(t>>23)+r*M[1176])))*+e),i=0|S[1],S[0],!(1079967744==(0|(i&=2147450880))|i>>>0<1079967744)){if(127.99999995700433>2],i=X2[i+4>>2]+(t<<=15)|0,z(0,0|f),z(1,0|(f>>>0>>0?i+1|0:i)),o=P2(r*+O())}return o}return A=P2(A-A),P2(A/A)}function b2(A){var e=0,r=0,f=0,i=0,a=0;if(m(A),255==(0|(r=(a=S[2])>>>23&255)))return A=P2(A*P2(6.2831854820251465)),P2(A/A);if(2173837238<(e=a<<1)>>>0){if(r)e=8388607&a|8388608;else{if((r=0)<=(0|(e=a<<9)))for(;;)if(r=r-1|0,!(-1<(0|(e<<=1))))break;e=a<<1-r}if(i=-1<(0|(f=e-13176795|0)),129<(0|r)){for(;;){if(1&i&&!(e=f))return P2(A*P2(0));if(i=-1<(0|(f=(e<<=1)-13176795|0)),!(129<(0|(r=r-1|0))))break}r=129}if(i&&!(e=f))return P2(A*P2(0));if(8388607>>0)i=e;else for(;;)if(r=r-1|0,f=e>>>0<4194304,e=i=e<<1,!f)break;return z(2,(e=1<=(0|r)?i-8388608|r<<23:i>>>1-r|0)|(f=-2147483648&a)),N()}return-2121130058==(0|e)?P2(A*P2(0)):A}function u0(A){U()}function A(A){n(A|=0)}function s0(A,e){X2[(A|=0)+16>>2]=e|=0}function l0(A){var e;return X2[(A|=0)>>2]=9956,(e=X2[A+144>>2])&&J2[A+148|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+144>>2]=0,X2[A>>2]=9980,S2[A+148|0]=1,X2[(e=A+136|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+124>>2])&&J2[A+128|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+124>>2]=0,S2[A+128|0]=1,X2[(e=A+116|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+104>>2])&&J2[A+108|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+104>>2]=0,S2[A+108|0]=1,X2[(e=A+96|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+84>>2])&&J2[A+88|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+84>>2]=0,S2[A+88|0]=1,X2[(e=A+76|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+32>>2]=0,X2[A>>2]=9776,S2[A+36|0]=1,X2[(e=A+24|0)>>2]=0,(X2[4+e>>2]=0)|A}function B0(A,e,r){A|=0,e|=0,r|=0;var f=0,i=0,a=0,n=0,b=0,t=0,o=P2(0),c=P2(0),k=P2(0),u=P2(0),s=P2(0);if(X2[A+8>>2]=X2[e>>2],(0|(f=X2[A+24>>2]))==X2[A+28>>2]&&!((0|(a=f?f<<1:1))<=(0|f))){if(a&&(X2[6258]=X2[6258]+1,(i=L2(19+(a<<2)|0))&&(X2[(n=i+19&-16)-4>>2]=i)),1<=(0|f))for(i=f;;)if(X2[b+n>>2]=X2[X2[A+32>>2]+b>>2],b=b+4|0,!(i=i-1|0))break;(i=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2]),f=X2[A+24>>2]),X2[A+32>>2]=n,X2[A+28>>2]=a,S2[A+36|0]=1}if(X2[A+24>>2]=f+1,X2[X2[A+32>>2]+(f<<2)>>2]=X2[e>>2],o=r?(s=U2[e+16>>2],k=U2[e+12>>2],c=U2[e+8>>2],U2[e+20>>2]):(u=U2[e+8>>2],r=X2[A+8>>2],c=U2[e+12>>2],o=U2[e+16>>2],s=P2(P2(P2(u*U2[r+36>>2])+P2(c*U2[r+40>>2]))+P2(o*U2[r+44>>2])),k=P2(P2(P2(u*U2[r+20>>2])+P2(c*U2[r+24>>2]))+P2(o*U2[r+28>>2])),c=P2(P2(P2(U2[r+4>>2]*u)+P2(U2[r+8>>2]*c))+P2(U2[r+12>>2]*o)),P2(0)),(0|(i=X2[A+76>>2]))==X2[A+80>>2]&&!((0|(t=i?i<<1:1))<=(0|i))){if(r=0,t&&(X2[6258]=X2[6258]+1,(f=L2(19+(t<<4)|0))&&(X2[(r=f+19&-16)-4>>2]=f)),1<=(0|i))for(b=0;;)if(a=X2[A+84>>2]+b|0,f=X2[a+4>>2],X2[(n=r+b|0)>>2]=X2[a>>2],X2[n+4>>2]=f,f=X2[(a=a+8|0)+4>>2],X2[(n=n+8|0)>>2]=X2[a>>2],X2[n+4>>2]=f,b=b+16|0,!(i=i-1|0))break;(f=X2[A+84>>2])&&J2[A+88|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[A+84>>2]=r,X2[A+80>>2]=t,S2[A+88|0]=1,i=X2[A+76>>2]}if(r=X2[A+84>>2]+(i<<4)|0,U2[r+12>>2]=o,U2[r+8>>2]=s,U2[r+4>>2]=k,U2[r>>2]=c,X2[A+76>>2]=X2[A+76>>2]+1,k=U2[e+24>>2],o=P2(P2(1)-k),u=P2(P2(o*U2[A+48>>2])+P2(k*U2[A- -64>>2])),c=P2(P2(o*U2[A+44>>2])+P2(k*U2[A+60>>2])),o=P2(P2(o*U2[A+40>>2])+P2(k*U2[A+56>>2])),(0|(i=X2[A+96>>2]))==X2[A+100>>2]&&!((0|(t=i?i<<1:1))<=(0|i))){if(r=0,t&&(X2[6258]=X2[6258]+1,(f=L2(19+(t<<4)|0))&&(X2[(r=f+19&-16)-4>>2]=f)),1<=(0|i))for(b=0;;)if(a=X2[A+104>>2]+b|0,f=X2[a+4>>2],X2[(n=r+b|0)>>2]=X2[a>>2],X2[n+4>>2]=f,f=X2[(a=a+8|0)+4>>2],X2[(n=n+8|0)>>2]=X2[a>>2],X2[n+4>>2]=f,b=b+16|0,!(i=i-1|0))break;(f=X2[A+104>>2])&&J2[A+108|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[A+104>>2]=r,X2[A+100>>2]=t,S2[A+108|0]=1,i=X2[A+96>>2]}if(r=X2[A+104>>2]+(i<<4)|0,U2[r+8>>2]=u,U2[r+4>>2]=c,U2[r>>2]=o,X2[A+96>>2]=X2[A+96>>2]+1,(0|(f=X2[A+116>>2]))==X2[A+120>>2]&&!((0|(t=f?f<<1:1))<=(0|f))){a=0,t&&(X2[6258]=X2[6258]+1,(r=L2(19+(t<<2)|0))&&(X2[(a=r+19&-16)-4>>2]=r)),r=X2[A+124>>2];A:{if(1<=(0|f)){for(b=a,i=r,n=f;;)if(U2[b>>2]=U2[i>>2],b=b+4|0,i=i+4|0,!(n=n-1|0))break}else if(!r)break A;J2[A+128|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2]),f=X2[A+116>>2])}X2[A+124>>2]=a,X2[A+120>>2]=t,S2[A+128|0]=1}return U2[X2[A+124>>2]+(f<<2)>>2]=U2[e+24>>2],X2[A+116>>2]=f+1,P2(U2[A+4>>2])}function v0(A){return(A|=0)+92|0}function d0(A){return(A|=0)+48|0}function e(A){return 0|(A|=0)}function Z0(A){return X2[(A|=0)+204>>2]}function _0(A,e,r){r|=0;var f,i;return U2[(e|=0)+16>>2]=U2[(A|=0)+4>>2],U2[e+20>>2]=U2[A+8>>2],U2[e+24>>2]=U2[A+12>>2],U2[e+28>>2]=U2[A+16>>2],U2[e+32>>2]=U2[A+20>>2],U2[e+36>>2]=U2[A+24>>2],U2[e+40>>2]=U2[A+28>>2],U2[e+44>>2]=U2[A+32>>2],U2[e+48>>2]=U2[A+36>>2],U2[e+52>>2]=U2[A+40>>2],U2[e+56>>2]=U2[A+44>>2],U2[e+60>>2]=U2[A+48>>2],U2[e+64>>2]=U2[A+52>>2],U2[e+68>>2]=U2[A+56>>2],U2[e+72>>2]=U2[A+60>>2],U2[e+76>>2]=U2[A- -64>>2],U2[e+80>>2]=U2[A+68>>2],U2[e+84>>2]=U2[A+72>>2],U2[e+88>>2]=U2[A+76>>2],U2[e+92>>2]=U2[A+80>>2],U2[e+96>>2]=U2[A+84>>2],U2[e+100>>2]=U2[A+88>>2],U2[e+104>>2]=U2[A+92>>2],U2[e+108>>2]=U2[A+96>>2],U2[e+112>>2]=U2[A+100>>2],U2[e+116>>2]=U2[A+104>>2],U2[e+120>>2]=U2[A+108>>2],U2[e+124>>2]=U2[A+112>>2],U2[e+128>>2]=U2[A+116>>2],U2[e+132>>2]=U2[A+120>>2],U2[e+136>>2]=U2[A+124>>2],U2[e+140>>2]=U2[A+128>>2],U2[e+144>>2]=U2[A+132>>2],U2[e+148>>2]=U2[A+136>>2],U2[e+152>>2]=U2[A+140>>2],U2[e+156>>2]=U2[A+144>>2],U2[e+160>>2]=U2[A+148>>2],U2[e+164>>2]=U2[A+152>>2],U2[e+168>>2]=U2[A+156>>2],U2[e+172>>2]=U2[A+160>>2],U2[e+176>>2]=U2[A+164>>2],U2[e+180>>2]=U2[A+168>>2],U2[e+184>>2]=U2[A+172>>2],U2[e+188>>2]=U2[A+176>>2],X2[e+232>>2]=X2[A+180>>2],U2[e+192>>2]=U2[A+184>>2],f=(X2[e>>2]=0)|N2[X2[X2[r>>2]+28>>2]](r,X2[A+192>>2]),i=X2[A+228>>2],X2[e+196>>2]=X2[A+224>>2],X2[e+200>>2]=i,i=X2[A+212>>2],X2[e+240>>2]=X2[A+208>>2],X2[e+244>>2]=i,X2[e+8>>2]=0,X2[e+4>>2]=f,X2[e+236>>2]=X2[A+204>>2],X2[e+248>>2]=X2[A+220>>2],U2[e+204>>2]=U2[A+236>>2],U2[e+208>>2]=U2[A+244>>2],U2[e+212>>2]=U2[A+248>>2],U2[e+216>>2]=U2[A+232>>2],X2[e+252>>2]=X2[A+252>>2],f=0|N2[X2[X2[r>>2]+40>>2]](r,A),i=0|N2[X2[X2[r>>2]+28>>2]](r,f),(X2[e+12>>2]=i)&&N2[X2[X2[r>>2]+48>>2]](r,f),U2[e+220>>2]=U2[A+268>>2],r=X2[A+280>>2],f=X2[A+276>>2],A=X2[A+272>>2],X2[e+260>>2]=0,X2[e+224>>2]=A,X2[e+228>>2]=f,X2[e+256>>2]=r,10148}function g0(A){return(A|=0)+4|0}function E0(A,e){N2[X2[X2[(A|=0)>>2]+8>>2]](A,e|=0)}function Q0(A){return 12}function w0(A,e,r){A|=0,e|=0,r|=0;var f,i,a=P2(0),n=P2(0),b=P2(0),t=P2(0),o=P2(0),c=0,k=0,u=P2(0),s=0,l=P2(0),B=P2(0),v=0,d=(P2(0),P2(0)),Z=P2(0),_=P2(0);K2=i=K2-48|0;A:{e:switch(X2[e+4>>2]){case 8:X2[A>>2]=0,X2[A+4>>2]=0,X2[(A=A+8|0)>>2]=0,X2[A+4>>2]=0;break A;case 0:X2[A+12>>2]=0,a=U2[e+44>>2],U2[A+8>>2]=U2[r+8>>2]>=P2(0)?a:P2(-a),a=U2[e+40>>2],U2[A+4>>2]=U2[r+4>>2]>=P2(0)?a:P2(-a),a=U2[e+36>>2],U2[A>>2]=U2[r>>2]>=P2(0)?a:P2(-a);break A;case 1:X2[A+12>>2]=0,a=U2[r>>2],b=U2[r+4>>2],n=U2[r+8>>2],o=P2(P2(P2(a*U2[e+80>>2])+P2(b*U2[e+84>>2]))+P2(n*U2[e+88>>2])),t=P2(P2(P2(a*U2[e+96>>2])+P2(b*U2[e+100>>2]))+P2(n*U2[e+104>>2])),a=P2(P2(P2(a*U2[(r=e- -64|0)>>2])+P2(b*U2[e+68>>2]))+P2(n*U2[e+72>>2])),U2[A+8>>2]=U2[(e=((a>2],r=X2[e+4>>2],X2[A>>2]=X2[e>>2],X2[A+4>>2]=r;break A;case 13:v=X2[(s=e+44|0)+4>>2],X2[(c=40+i|0)>>2]=X2[s>>2],X2[c+4>>2]=v,s=X2[(c=e+36|0)+4>>2],X2[32+i>>2]=X2[c>>2],X2[36+i>>2]=s,X2[28+i>>2]=0,U2[16+i>>2]=U2[r>>2],n=U2[r+4>>2],U2[20+i>>2]=n,a=U2[r+8>>2],U2[24+i>>2]=a;r:{f:{i:switch((e=X2[e+60>>(c=2)])-(r=1)|0){case 1:break f;case 0:break i;default:break r;}r=0,k=1;break r}r=0,k=2,c=1,a=n}n=U2[(32+i|0)+(e<<2)>>2],o=U2[((e=r<<2)|32+i)>>2],t=U2[(e|16+i)>>2],(u=P2(O2(P2(P2(t*t)+P2(a*a)))))!=P2(0)?(b=P2(o/u),U2[(r<<2|i)>>2]=t*b,U2[(e=k<<2)+i>>2]=U2[e+(16+i|0)>>2]>2]=o,U2[(e=k<<2)+i>>2]=U2[e+(16+i|0)>>2]>2],U2[(c<<2)+i>>2]=b,X2[A+12>>2]=0,U2[A>>2]=a,e=X2[8+i>>2],X2[A+4>>2]=X2[4+i>>2],X2[A+8>>2]=e;break A;case 10:c=X2[e+60>>2],f=U2[36+((k=c<<2)+e|0)>>2],a=P2(1),b=U2[r>>2],n=U2[r+4>>2],o=U2[r+8>>2],(t=P2(P2(P2(b*b)+P2(n*n))+P2(o*o)))>2]=0,X2[e+4>>2]=0,X2[32+i>>2]=0,X2[36+i>>2]=0,U2[k+(32+i|0)>>2]=f,b=P2(-0xde0b6b000000000),n=P2(0),o=P2(0),t=U2[32+i>>2],u=U2[36+i>>2],l=U2[e>>2],(B=P2(P2(P2(a*t)+P2(Z*u))+P2(d*l)))>P2(-0xde0b6b000000000)&&(n=u,o=l,_=t,b=B),X2[e>>2]=0,X2[e+4>>2]=0,X2[32+i>>2]=0,X2[36+i>>2]=0,U2[(32+i|0)+(c<<2)>>2]=-f,t=U2[e>>2],u=U2[32+i>>2],l=U2[36+i>>2],X2[A+12>>2]=0,e=P2(P2(P2(a*u)+P2(Z*l))+P2(d*t))>b,U2[A+8>>2]=e?t:o,U2[A+4>>2]=e?l:n,U2[A>>2]=e?u:_;break A;case 5:if(b=U2[e+28>>2],n=U2[e+24>>2],o=U2[e+20>>2],c=X2[e+100>>2],(0|(v=X2[e+104>>2]))<1)k=-1;else for(t=P2(U2[r+8>>2]*b),u=P2(U2[r+4>>2]*n),l=P2(U2[r>>2]*o),r=0,k=-1,a=P2(-34028234663852886e22),e=c;;)if(a=(s=a<(B=P2(P2(P2(l*U2[e>>2])+P2(u*U2[e+4>>2]))+P2(t*U2[e+8>>2]))))?B:a,k=s?r:k,e=e+16|0,(0|v)==(0|(r=r+1|0)))break;X2[A+12>>2]=0,U2[A+8>>2]=b*U2[(e=c+(k<<4)|0)+8>>2],U2[A+4>>2]=n*U2[e+4>>2],U2[A>>2]=o*U2[e>>2];break A;case 4:if(b=U2[e+28>>2],n=U2[e+24>>2],o=U2[e+20>>2],c=X2[e+112>>2],(0|(v=X2[e+104>>2]))<1)k=-1;else for(t=P2(U2[r+8>>2]*b),u=P2(U2[r+4>>2]*n),l=P2(U2[r>>2]*o),r=0,k=-1,a=P2(-34028234663852886e22),e=c;;)if(a=(s=a<(B=P2(P2(P2(l*U2[e>>2])+P2(u*U2[e+4>>2]))+P2(t*U2[e+8>>2]))))?B:a,k=s?r:k,e=e+16|0,(0|v)==(0|(r=r+1|0)))break;X2[A+12>>2]=0,U2[A+8>>2]=b*U2[(e=c+(k<<4)|0)+8>>2],U2[A+4>>2]=n*U2[e+4>>2],U2[A>>2]=o*U2[e>>2];break A;default:break e;}N2[X2[X2[e>>2]+68>>2]](A,e,r)}K2=48+i|0}function G0(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n;P2(0),P2(0),P2(0),P2(0),P2(0);N2[X2[X2[e>>2]+68>>2]](A,e,r),P2(N2[X2[X2[e>>2]+48>>2]](e))!=P2(0)&&(i=U2[r+4>>2],f=U2[r>>2],r=U2[r+8>>2],a=P2(N2[X2[X2[e>>2]+48>>2]](e)),n=f=(e=P2(P2(P2(f*f)+P2(i*i))+P2(r*r))>2]=U2[A>>2]+P2(a*P2(n*f)),U2[A+4>>2]=U2[A+4>>2]+P2(a*P2(i*f)),U2[A+8>>2]=U2[A+8>>2]+P2(a*P2(r*f)))}function C0(A){var e,r,f,i=0,a=0;if(X2[(A|=0)>>2]=10316,(i=X2[A+56>>2])&&J2[A+60|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),X2[A+56>>2]=0,S2[A+60|0]=1,X2[(i=A+48|0)>>2]=0,1<=((X2[i+4>>2]=0)|(a=X2[A+28>>2])))for(i=8;;)if(e=X2[A+36>>2]+i|0,(f=X2[(r=4+e|0)>>2])&&J2[8+e|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[r>>2]=0,S2[8+e|0]=1,X2[(e=e-4|0)>>2]=0,i=i+36|(X2[4+e>>2]=0),!(a=a-1|0))break;return(i=X2[A+36>>2])&&J2[A+40|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),X2[A+36>>2]=0,X2[A+28>>2]=0,X2[A+32>>2]=0,S2[A+40|0]=1,(i=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),X2[A+16>>2]=0,S2[A+20|0]=1,X2[(i=A+8|0)>>2]=0,(X2[i+4>>2]=0)|A}function h0(A){for(var e=P2(0),r=P2(0),f=P2(0),i=0,a=0,n=0,b=0,t=X2[A+28>>2],b=1;;){A:{e:switch(0|a){case 0:e=P2(U2[A+88>>2]+U2[A+72>>2]),r=P2(U2[A+84>>2]+U2[A+68>>2]),f=P2(U2[A+80>>2]+U2[A+64>>2]);break A;case 1:e=P2(U2[A+72>>2]-U2[A+88>>2]),r=P2(U2[A+84>>2]+U2[A+68>>2]),f=P2(U2[A+80>>2]+U2[A+64>>2]);break A;case 2:e=P2(U2[A+88>>2]+U2[A+72>>2]),r=P2(U2[A+68>>2]-U2[A+84>>2]),f=P2(U2[A+80>>2]+U2[A+64>>2]);break A;case 3:e=P2(U2[A+72>>2]-U2[A+88>>2]),r=P2(U2[A+68>>2]-U2[A+84>>2]),f=P2(U2[A+80>>2]+U2[A+64>>2]);break A;case 4:e=P2(U2[A+88>>2]+U2[A+72>>2]),r=P2(U2[A+84>>2]+U2[A+68>>2]),f=P2(U2[A+64>>2]-U2[A+80>>2]);break A;case 5:e=P2(U2[A+72>>2]-U2[A+88>>2]),r=P2(U2[A+84>>2]+U2[A+68>>2]),f=P2(U2[A+64>>2]-U2[A+80>>2]);break A;case 6:e=P2(U2[A+88>>2]+U2[A+72>>2]),r=P2(U2[A+68>>2]-U2[A+84>>2]),f=P2(U2[A+64>>2]-U2[A+80>>2]);break A;case 7:break e;default:break A;}e=P2(U2[A+72>>2]-U2[A+88>>2]),r=P2(U2[A+68>>2]-U2[A+84>>2]),f=P2(U2[A+64>>2]-U2[A+80>>2])}A:{if(1<=(0|t))for(i=X2[A+36>>2]+32|0,n=t;;){if(P2(U2[i>>2]+P2(P2(P2(f*U2[i-12>>2])+P2(r*U2[i-8>>2]))+P2(e*U2[i-4>>2])))>P2(0))break A;if(i=i+36|0,!(n=n-1|0))break}if(b=a>>>0<7,8!=(0|(a=a+1|0)))continue}break}return 1&(-1^b)}function F0(A){var e,r,f,i,a,x,y,V,p,M,S,X,J,U,H,P,j,z,O,K,n=0,b=0,t=0,o=0,c=0,k=P2(0),u=0,s=0,l=P2(0),B=P2(0),v=0,d=P2(0),Z=P2(0),_=0,g=P2(0),E=0,Q=0,w=0,G=P2(0),C=0,h=0,F=P2(0),Y=0,m=0,N=0,R=P2(0),D=0,T=P2(0),W=0,I=0,L=(P2(0),0),q=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),0);P2(0);X2[A+64>>2]=0,X2[A+68>>2]=0,X2[(b=A+72|0)>>2]=0,X2[b+4>>2]=0;A:{if(!((0|(E=X2[A+28>>2]))<1)){for(;;){if(n=X2[A+36>>2],x=H2(W,36),1<=(0|(y=X2[4+(n+x|0)>>2]))){for(i=-65536|W,I=0;;){b=X2[12+(n+x|0)>>2],S=Q>>>0<=(E=(M=(r=(c=(0|(t=$[b+(I<<2)>>1]))<(0|(s=$[b+(((V=(0|y)==(0|(I=I+1|0)))?0:I)<<2)>>1])))?s:t)+(p=(h=c?t:s)<<16)|0)&u-1)>>>0,t=0;e:if(!S&&-1!=((t=0)|(n=X2[(E<<2)+w>>2]))){r:{for(;;){if(A2[(t=(b=n<<2)+v|0)+2>>1]==(65535&h)&&A2[t>>1]==(65535&r))break r;if(-1==(0|(n=X2[b+_>>2])))break}t=0;break e}t=b+o|0}s=X2[A+16>>2],k=P2(U2[(b=s+(h<<4)|0)+8>>2]-U2[(s=s+(r<<4)|0)+8>>2]),B=P2(U2[b>>2]-U2[s>>2]),l=P2(U2[b+4>>2]-U2[s+4>>2]),d=P2(P2(1)/P2(O2(P2(P2(P2(B*B)+P2(l*l))+P2(k*k))))),k=P2(k*d),l=P2(l*d),B=P2(B*d);e:{if(!(Y=(0|(b=X2[A+48>>2]))<1))for(n=X2[A+56>>2],c=b;;){if(d=U2[n+8>>2],g=U2[n+4>>2],G=U2[n>>2],!(1e-6<+P2(j2(P2(G-B)))||1e-6<+P2(j2(P2(g-l)))||1e-6<+P2(j2(P2(d-k)))))break e;if(!(1e-6<+P2(j2(P2(B+G)))||1e-6<+P2(j2(P2(l+g)))||1e-6<+P2(j2(P2(k+d)))))break e;if(n=n+16|0,!(c=c-1|0))break}if(X2[A+52>>2]==(0|b)&&!((0|(c=b?b<<1:1))<=(0|b))){if(s=0,c&&(X2[6258]=X2[6258]+1,(n=L2(19+(c<<4)|0))&&(X2[(s=n+19&-16)-4>>2]=n)),!Y)for(n=0;;)if(Y=X2[A+56>>2]+n|0,a=X2[Y+4>>2],X2[(e=n+s|0)>>2]=X2[Y>>2],X2[4+e>>2]=a,a=X2[(Y=Y+8|0)+4>>2],X2[(e=8+e|0)>>2]=X2[Y>>2],X2[4+e>>2]=a,n=n+16|0,!(b=b-1|0))break;(b=X2[A+56>>2])&&J2[A+60|0]&&(X2[6259]=X2[6259]+1,q2(X2[b-4>>2])),X2[A+56>>2]=s,S2[A+60|0]=1,X2[A+52>>2]=c,b=X2[A+48>>2]}b=X2[A+56>>2]+(b<<4)|0,X2[b+12>>2]=0,U2[b+8>>2]=k,U2[b+4>>2]=l,U2[b>>2]=B,X2[A+48>>2]=X2[A+48>>2]+1}e:{if(t)$[t+2>>1]=W;else{r:{if(!S&&-1!=(0|(n=X2[(E<<2)+w>>2])))for(;;){if(A2[(t=(b=n<<2)+v|0)+2>>1]==(65535&h)&&A2[t>>1]==(65535&r))break r;if(-1==(0|(n=X2[b+_>>2])))break}if((0|u)!=(0|m))s=o,t=u,o=m;else{f:if((0|(t=u?u<<1:1))<=(0|u))s=o,t=u;else{if(s=0,t&&(X2[6258]=X2[6258]+1,(b=L2(19+(t<<2)|0))&&(X2[(s=b+19&-16)-4>>2]=b)),1<=(0|u)){for(n=s,c=o,b=u;;)if(h=A2[c>>1]|A2[c+2>>1]<<16,$[n>>1]=h,$[n+2>>1]=h>>>16,n=n+4|0,c=c+4|0,!(b=b-1|0))break}else if(!o)break f;X2[6259]=X2[6259]+1,q2(X2[o-4>>2])}o=u}$[(o=(o<<2)+s|0)>>1]=i,$[o+2>>1]=i>>>16;f:if((0|C)!=(0|D))b=v;else if((0|(D=C?C<<1:1))<=(0|C))D=C,b=v;else{if(b=0,D&&(X2[6258]=X2[6258]+1,(o=L2(19+(D<<2)|0))&&(X2[(b=o+19&-16)-4>>2]=o)),1<=(0|C)){for(n=b,c=v,o=C;;)if(h=A2[c>>1]|A2[c+2>>1]<<16,$[n>>1]=h,$[n+2>>1]=h>>>16,n=n+4|0,c=c+4|0,!(o=o-1|0))break}else if(!v)break f;X2[6259]=X2[6259]+1,q2(X2[v-4>>2])}if($[(o=(C<<2)+b|0)>>1]=v=65535&r|p,$[o+2>>1]=v>>>16,C=C+1|0,(0|u)<(0|t)&&(E=t-1&M,(0|Q)<(0|t))){if((0|t)<=(0|L))v=w;else{v=0,t&&(X2[6258]=X2[6258]+1,(o=L2(19+(t<<2)|0))&&(X2[(v=o+19&-16)-4>>2]=o));f:{if(1<=(0|Q)){for(n=v,c=w,u=Q;;)if(X2[n>>2]=X2[c>>2],n=n+4|0,c=c+4|0,!(u=u-1|0))break}else if(!w)break f;X2[6259]=X2[6259]+1,q2(X2[w-4>>2])}L=t}if(v2((Q<<2)+v|0,0,t-Q<<2),w=t<<2,(0|t)<=(0|N))o=_;else{if((0|t)<=(0|q))o=_;else{o=0,t&&(X2[6258]=X2[6258]+1,(u=L2(16+(3|w)|0))&&(X2[(o=u+19&-16)-4>>2]=u));f:{if(1<=(0|N)){for(n=o,c=_,u=N;;)if(X2[n>>2]=X2[c>>2],n=n+4|0,c=c+4|0,!(u=u-1|0))break}else if(!_)break f;X2[6259]=X2[6259]+1,q2(X2[_-4>>2])}q=t}v2((N<<2)+o|0,0,t-N<<2)}if(1<=(0|t)&&(v2(v,255,w),v2(o,255,w)),1<=(0|Q))for(u=t-1|0,c=n=0;;)if(_=((u&(A2[(_=n+b|0)+2>>1]<<16)+$[_>>1])<<2)+v|0,X2[n+o>>2]=X2[_>>2],n=n+4|0,(0|Q)==(0|(c=(X2[_>>2]=c)+1|0)))break;w=v,Q=N=t,_=o}X2[(m<<2)+_>>2]=X2[(o=(E<<2)+w|0)>>2],m=(X2[o>>2]=m)+1|0;break e}$[(b=b+o|0)>>1]=i,$[b+2>>1]=i>>>16}s=o,t=u,b=v}if(V)break;n=X2[A+36>>2],o=s,u=t,v=b}E=X2[A+28>>2],u=t,v=b,o=s}if(!((0|(W=W+1|0))<(0|E)))break}if(!((0|E)<1)){for(u=X2[A+16>>2],C=X2[A+36>>2],Q=0;;){if(t=C+H2(Q,36)|0,3<=(0|(b=X2[t+4>>2])))for(n=(t=X2[t+12>>2])+4|0,D=(s=u+(X2[t>>2]<<4)|0)+8|0,L=s+4|0,B=U2[A+72>>2],d=U2[A+68>>2],g=U2[A+64>>2],c=2;;)if(m=u+(X2[n>>2]<<4)|0,k=U2[m+8>>2],N=u+(X2[t+((0|c)%(0|b)<<2)>>2]<<4)|0,l=U2[N+8>>2],G=U2[s>>2],X=U2[m>>2],J=P2(G-X),Z=U2[L>>2],U=U2[N+4>>2],f=P2(Z-U),H=U2[m+4>>2],F=P2(Z-H),P=U2[N>>2],j=P2(G-P),T=P2(P2(J*f)-P2(F*j)),K=F,F=U2[D>>2],z=P2(F-l),O=P2(F-k),f=P2(P2(K*z)-P2(O*f)),l=P2(P2(P2(F+k)+l)*P2(.3333333432674408)),k=P2(P2(O*j)-P2(J*z)),k=P2(P2(O2(P2(P2(T*T)+P2(P2(f*f)+P2(k*k)))))*P2(.5)),B=P2(B+P2(l*k)),U2[A+72>>2]=B,d=P2(d+P2(P2(P2(U+P2(Z+H))*P2(.3333333432674408))*k)),U2[A+68>>2]=d,g=P2(g+P2(P2(P2(P+P2(G+X))*P2(.3333333432674408))*k)),U2[A+64>>2]=g,R=P2(R+k),n=n+4|0,(0|b)==(0|(c=c+1|0)))break;if((0|E)==(0|(Q=Q+(n=1)|0)))break}break A}}n=0}if(X2[A+96>>2]=2139095039,k=P2(P2(1)/R),B=P2(k*U2[A+64>>2]),U2[A+64>>2]=B,d=P2(k*U2[A+68>>2]),U2[A+68>>2]=d,g=P2(k*U2[A+72>>2]),U2[A+72>>2]=g,G=P2(34028234663852886e22),l=P2(34028234663852886e22),n)for(n=X2[A+36>>2]+32|0;;)if((k=P2(j2(P2(U2[n>>2]+P2(P2(P2(B*U2[n-12>>2])+P2(U2[n-8>>2]*d))+P2(U2[n-4>>2]*g))))))>2]=k),n=n+36|0,!(E=E-1|0))break;if((0|(c=X2[A+8>>2]))<1)k=P2(-34028234663852886e22),B=P2(34028234663852886e22),d=P2(-34028234663852886e22),g=P2(-34028234663852886e22),R=P2(34028234663852886e22);else for(n=X2[A+16>>2],g=P2(-34028234663852886e22),R=P2(34028234663852886e22),d=P2(-34028234663852886e22),k=P2(-34028234663852886e22),B=P2(34028234663852886e22);;)if(g=g<(Z=U2[n+8>>2])?Z:g,B=Z>2])?Z:d,G=Z>2])?Z:k,R=Z>2]=0,Z=P2(g-B),U2[A+124>>2]=Z,T=P2(d-G),U2[A+120>>2]=T,F=P2(k-R),U2[A+116>>2]=F,l=P2(l/P2(1.7320507764816284)),U2[A+88>>2]=l,X2[A+112>>2]=0,U2[A+108>>2]=B+g,U2[A+104>>2]=G+d,U2[A+100>>2]=k+R,U2[A+84>>2]=l,U2[A+80>>2]=l,t=(b=(u=F>2]*P2(.5)),U2[t>>2]=k,B=P2(P2(k-l)*P2(.0009765625)),n=1024;A:{e:{for(;;){if(h0(A))break e;if(k=P2(k-B),U2[t>>2]=k,!(n=n-1|0))break}U2[A+84>>2]=l,U2[A+88>>2]=l,U2[A+80>>2]=l;break A}for(u=(t=A+80|0)+((b=1<>2],B=P2(P2(U2[A+96>>2]-l)*P2(.0009765625)),b=1024;;){if(d=U2[u>>2],U2[u>>2]=B+d,l=P2(B+U2[t>>2]),U2[t>>2]=l,h0(A)){if(k=l,b=b-1|0)continue;break A}break}U2[u>>2]=d,U2[t>>2]=k}v&&(X2[6259]=X2[6259]+1,q2(X2[v-4>>2])),o&&(X2[6259]=X2[6259]+1,q2(X2[o-4>>2])),_&&(X2[6259]=X2[6259]+1,q2(X2[_-4>>2])),w&&(X2[6259]=X2[6259]+1,q2(X2[w-4>>2]))}function Y0(A,e,r,f,i,a,n){var b,t,o,c=P2(0),k=P2(0),u=0,s=0;P2(0),P2(0),P2(0);if(X2[f>>2]=2139095039,X2[i>>2]=-8388609,s=X2[A+(u=8)>>2],c=P2(-34028234663852886e22),!((0|s)<1)){for(;;)if(b=X2[A+16>>2]+u|0,c=U2[b-8>>2],k=U2[b-4>>2],b=U2[b>>2],t=P2(P2(P2(P2(c*U2[e>>2])+P2(k*U2[e+4>>2]))+P2(b*U2[e+8>>2]))+U2[e+48>>2]),o=P2(P2(P2(P2(c*U2[e+16>>2])+P2(k*U2[e+20>>2]))+P2(b*U2[e+24>>2]))+U2[e+52>>2]),k=P2(P2(P2(P2(c*U2[e+32>>2])+P2(k*U2[e+36>>2]))+P2(b*U2[e+40>>2]))+U2[e+56>>2]),(c=P2(P2(P2(t*U2[r>>2])+P2(o*U2[r+4>>2]))+P2(k*U2[r+8>>2])))>2]&&(U2[f>>2]=c,X2[a+12>>2]=0,U2[a+8>>2]=k,U2[a+4>>2]=o,U2[a>>2]=t),c>U2[i>>2]&&(U2[i>>2]=c,X2[n+12>>2]=0,U2[n+8>>2]=k,U2[n+4>>2]=o,U2[n>>2]=t),u=u+16|0,!(s=s-1|0))break;c=U2[i>>2]}c<(k=U2[f>>2])&&(U2[f>>2]=c,U2[i>>2]=k,r=X2[(A=a+8|0)>>2],f=X2[A+4>>2],u=X2[(e=n+8|0)+4>>2],X2[A>>2]=X2[e>>2],X2[A+4>>2]=u,A=X2[a>>2],i=X2[a+4>>2],u=X2[n+4>>2],X2[a>>2]=X2[n>>2],X2[a+4>>2]=u,X2[n>>2]=A,X2[n+4>>2]=i,X2[e>>2]=r,X2[e+4>>2]=f)}function m0(A,e,r,f,i,a){var n,b,t,o,c=0,k=0,u=0,s=0;return(0|(c=X2[a+16>>2]))!=(0|i)?i-c|0:i?(t=X2[a+8>>2],n=P(u=X2[a+12>>2],c=0,s=A,0),A=H,k=e,b=P(u,e=0,k,e),c=H,c=(u=A+b|0)>>>0>>0?H+1|0:H,e=P(k,0,t,0),A=c,c=A=(u=H+u|0)>>>0>>0?A+1|0:A,c=(u=u+(A=(n=e+n|0)>>>0>>0)|0)>>>0>>0?c+1|0:c,k=u,A=n,n=P(t,0,s,0),A=(e=A)+H|0,o=t=0+n|0,n=(s=e=k+(A=(0|e)==(0|(u=A=t>>>0>>0?A+1|0:A))&0|A>>>0>>0)|0)>>>0>>0?c+1|0:c,A=X2[a+4>>2],a=X2[a>>2],r=P(A,c=0,t=r,0),k=H,e=P(A,0,f,0),A=H,A=(k=k+e|0)>>>0>>0?A+1|0:A,e=P(f,0,a,0),c=k=(f=H)+k|0,f=(c=k)>>>0>>0?A+1|0:A,k=k+(c=A=(r=e+r|0)>>>0>>0)|0,A=f,c=(f=k)>>>0>>0?A+1|0:A,k=-1,b=f,A=r,r=P(a,f=0,t,0),A=(e=A)+H|0,H2(i,k=(0|(c=(r=b+(e=(A=(a=f+r|0)>>>0>>0?A+1|0:A)>>>0>>0)|0)>>>0>>0?c+1|0:c))==(0|n)&s>>>0<(e=r)>>>0|n>>>0>>0?k:(0|c)==(0|n)&r>>>0>>0|c>>>0>>0?1:(0|A)==(0|u)&o>>>0>>0|u>>>0>>0?-1:(0|A)==(0|u)&a>>>0>>0|A>>>0>>0)):0}function N0(A,e,r){var f=0,i=0,a=0,n=0,b=0,t=0,n=X2[A+56>>2];if(!(n||((f=X2[A+52>>2])?X2[A+52>>2]=X2[f+8>>2]:(a=X2[6258],f=n=0,(i=L2(31))&&(X2[(f=i+19&-16)-4>>2]=i),X2[f+8>>2]=0,X2[6258]=a+2,i=X2[A+60>>2],X2[f+4>>2]=i,(i=L2(H2(i,24)+19|0))&&(X2[(n=i+19&-16)-4>>2]=i),X2[f>>2]=n,n=X2[A+48>>2],X2[A+48>>2]=f,X2[f+8>>2]=n),n=X2[f>>2],(0|(i=X2[f+4>>2]))<1||(f=n+24|0,X2[n>>2]=(a=1==(0|i))?0:f,a))))for(a=1;;)if(f=(t=f)+24|0,X2[t>>2]=(0|(a=a+1|0))<(0|i)?f:0,(0|i)==(0|a))break;if(X2[A+56>>2]=X2[n>>2],X2[(f=n+8|0)>>2]=0,X2[f+4>>2]=0,X2[(f=n+16|0)>>2]=0,X2[f+4>>2]=0,X2[n>>2]=0,X2[n+4>>2]=0,!((i=X2[A+56>>2])||((f=X2[A+52>>2])?X2[A+52>>2]=X2[f+8>>2]:(b=X2[6258],f=a=0,(i=L2(31))&&(X2[(f=i+19&-16)-4>>2]=i),X2[f+8>>2]=0,X2[6258]=b+2,i=X2[A+60>>2],X2[f+4>>2]=i,(i=L2(H2(i,24)+19|0))&&(X2[(a=i+19&-16)-4>>2]=i),X2[f>>2]=a,i=X2[A+48>>2],X2[A+48>>2]=f,X2[f+8>>2]=i),i=X2[f>>2],(0|(b=X2[f+4>>2]))<1||(f=i+24|0,X2[i>>2]=(a=1==(0|b))?0:f,a))))for(a=1;;)if(f=(t=f)+24|0,X2[t>>2]=(0|(a=a+1|0))<(0|b)?f:0,(0|a)==(0|b))break;return X2[A+56>>2]=X2[i>>2],X2[(f=i+8|0)>>2]=0,X2[f+4>>2]=0,X2[(a=i+16|0)>>2]=0,X2[a+4>>2]=0,X2[i>>2]=0,X2[i+4>>2]=0,X2[n+8>>2]=i,X2[n+12>>2]=r,X2[n+16>>2]=0,r=X2[A+100>>2],X2[n+20>>2]=r,X2[f>>2]=n,X2[i+12>>2]=e,X2[a>>2]=0,X2[i+20>>2]=r,e=X2[A+116>>2],X2[A+116>>2]=r=e+1|0,(0|e)>=X2[A+120>>2]&&(X2[A+120>>2]=r),n}function R0(A,e,r,f,i,a,n,b){var t,o,c,k,u,s,l,B=0,B=X2[A+4>>2];return X2[A>>2]==(0|e)?(0|e)!=(0|B)||(B=X2[e+12>>2],e=X2[X2[e+8>>2]+12>>2],c=X2[e+96>>2],s=X2[B+96>>2]-c|0,A=X2[A+12>>2],t=X2[e+92>>2],l=X2[A+92>>2]-t|0,t=X2[B+92>>2]-t|0,c=X2[A+96>>2]-c|0,o=P(o=H2(s,l)-H2(t,c)|0,o>>31,o=H2(i,n)-H2(f,b)|0,o>>31),u=H,k=t,t=X2[A+88>>2],A=X2[e+88>>2],B=X2[B+88>>2]-A|0,f=P(e=A=H2(k,t=t-A|0)-H2(B,l)|0,A>>31,A=H2(f,a)-H2(r,n)|0,A>>31),A=H+u|0,A=(e=f+o|0)>>>0>>0?A+1|0:A,f=e,r=P(n=e=H2(B,c)-H2(t,s)|0,e>>31,e=H2(r,b)-H2(i,a)|0,e>>31),A=H+A|0,0<(0|(A=(e=f+r|0)>>>0>>0?A+1|0:A))?1:0<=(0|A)?e:0)?2:1:(0|e)==(0|B)}function D0(x,A,e,y,V){var r,f,i,a,n,b,t,o,c,p,M,S,k=0,u=0,s=0,l=0,B=0,v=0,d=0,Z=0,_=0,g=0,E=0,Q=0,w=0,G=0,C=0,h=0,F=0,Y=0,m=0,N=0,R=0,D=0,T=0,W=0,X=0,J=0,U=0,I=K2-32|0;if(K2=I,w=X2[V>>2],Y=A,(T=X2[y>>2])&&(Y=X2[T+12>>2]),R=X2[Y+96>>2],l=e,C=X2[A+96>>2],t=X2[e+96>>2]-C|0,d=X2[(T||w)+12>>2],h=X2[A+92>>2],g=X2[d+92>>2]-h|0,o=X2[e+92>>2]-h|0,Z=X2[d+96>>2]-C|0,e=P(X=e=H2(t,g)-H2(o,Z)|0,p=e>>31,t,s=t>>31),B=H,u=X2[A+88>>2],k=X2[d+88>>2]-u|0,c=X2[l+88>>2]-u|0,A=P(J=A=H2(k,o)-H2(g,c)|0,M=A>>31,c,_=c>>31),e=P(r=e-A|0,f=B-(H+(e>>>0>>0)|0)|0,A=D=X2[Y+92>>2],A>>31),d=H,A=P(J,M,o,g=o>>31),B=H,G=e,e=P(U=e=H2(Z,c)-H2(k,t)|0,S=e>>31,t,s),A=P(i=A-e|0,a=B-(H+(A>>>0>>0)|0)|0,A=Y=X2[Y+88>>2],A>>31),k=H+d|0,k=(e=G+A|0)>>>0>>0?k+1|0:k,A=P(c,_,U,S),B=H,s=e,e=P(o,g,X,p),A=P(n=A-e|0,b=B-(H+(A>>>0>>0)|0)|0,R,R>>31),k=H+k|0,B=(g=e=s+A|0)>>>0>>0?k+1|0:k,A=P(X,p,u,u>>31),e=H,s=A,A=P(J,M,C,C>>31),k=H+e|0,k=(d=s+A|0)>>>0>>0?k+1|0:k,e=P(U,S,h,h>>31),A=H+k|0,d=(_=d=e+d|0)>>>0>>0?A+1|0:A,l=w?X2[w+12>>2]:l,W=X2[l+96>>2],C=X2[l+92>>2],h=X2[l+88>>2],e=w,T&&X2[T+12>>2]&&(A=X2[X2[T+8>>2]+4>>2],N=X2[A+12>>2],k=P(Z=e=X2[N+92>>2],s=e>>31,U,S),l=H,e=w,v=k,u=P(G=k=X2[N+88>>2],Q=k>>31,X,p),k=H+l|0,k=(v=v+u|0)>>>0>>0?k+1|0:k,u=P(m=u=X2[N+96>>2],E=u>>31,J,M),k=H+k|0,!(k=(0|(k=(l=u+v|0)>>>0>>0?k+1|0:k))<(0|(u=d))?1:(0|k)<=(0|u)?l>>>0<_>>>0:0))){for(l=A+12|0;;)if(X2[A+20>>2]==(0|x)||(e=P(Z,s,r,f),k=H,s=e,e=P(G,Q,i,a),k=H+k|0,k=(s=s+e|0)>>>0>>0?k+1|0:k,e=P(m,E,n,b),k=H+k|0,(0|(e=k=(s=e+s|0)>>>0>>0?k+1|0:k))<(0|B)||(0|k)<=(0|B)&&s>>>0<=g>>>0||(X2[y>>2]=A,B=X2[l>>2],R=X2[B+96>>2],D=X2[B+92>>2],Y=X2[B+88>>2],l=(A=X2[X2[A+8>>2]+4>>2])+12|0,g=s,B=e,v=X2[A+12>>2],e=P(Z=e=X2[v+92>>2],s=e>>31,U,S),k=H,u=e,e=P(G=e=X2[v+88>>2],Q=e>>31,X,p),k=H+k|0,k=(u=u+e|0)>>>0>>0?k+1|0:k,e=P(m=e=X2[v+96>>2],E=e>>31,J,M),k=H+k|0,k=(u=e+u|0)>>>0>>0?k+1|0:k,e=u,!((0|d)<(0|k)||(0|d)<=(0|k)&&_>>>0<=e>>>0))))break;e=X2[V>>2]}A=P(r,f,C,C>>31),k=H,s=A,A=P(i,a,h,h>>31),k=H+k|0,k=(s=s+A|0)>>>0>>0?k+1|0:k,A=P(n,b,W,W>>31),k=H+k|0,s=(Z=s=A+s|0)>>>0>>0?k+1|0:k;A:if(e){if(X2[e+12>>2]&&(l=X2[X2[e+8>>2]>>2],v=X2[l+12>>2],A=P(G=A=X2[v+92>>2],Q=A>>31,U,S),k=H,u=A,A=P(m=A=X2[v+88>>2],E=A>>31,X,p),k=H+k|0,k=(u=u+A|0)>>>0>>0?k+1|0:k,A=P(F=A=X2[v+96>>2],v=A>>31,J,M),k=H+k|0,k=(u=A+u|0)>>>0>>0?k+1|0:k,A=u,!((0|k)<(0|d)||(0|k)<=(0|d)&&A>>>0<_>>>0)))for(N=l+12|0;;){if(X2[(u=l)+20>>2]==(0|x))break A;if(k=P(G,Q,r,f),A=H,l=k,k=P(m,E,i,a),A=H+A|0,A=(l=l+k|0)>>>0>>0?A+1|0:A,v=(k=l)+(l=P(n,b,F,v))|0,k=H+A|0,k=v>>>0>>0?k+1|0:k,v=A=v,l=(0|(l=k))<(0|s)?1:(0|l)<=(0|s)?v>>>0<=Z>>>0:0)break A;if(X2[V>>2]=u,e=X2[N>>2],W=X2[e+96>>2],C=X2[e+92>>2],h=X2[e+88>>2],N=(l=X2[X2[u+8>>2]>>2])+12|0,Z=A,s=k,e=u,v=X2[l+12>>2],A=P(G=A=X2[v+92>>2],Q=A>>31,U,S),k=H,u=A,A=P(m=A=X2[v+88>>2],E=A>>31,X,p),k=H+k|0,k=(u=u+A|0)>>>0>>0?k+1|0:k,A=P(F=A=X2[v+96>>2],v=A>>31,J,M),k=H+k|0,k=(u=A+u|0)>>>0>>0?k+1|0:k,A=u,!((0|d)<(0|k)||(0|d)<=(0|k)&&_>>>0<=A>>>0))break}}else e=0;A:{if(B=s-((Z>>>0>>0)+B|0)|0,A=g=Z-g|0,A=0<(0|B)?1:0<=(0|B)?1<=A>>>0:0)for(;;){for(A=X2[y>>2];;){e:if(Q=(d=e=G=(H2(C-D|0,o)+H2(h-Y|0,c)|0)+H2(W-R|0,t)|0)>>31,A&&X2[A+12>>2]&&(E=X2[X2[A>>2]+8>>2],!(X2[E+20>>2]<=(0|x)))){e=X2[E+12>>2],Z=X2[e+92>>2],u=(s=X2[e+88>>2])-Y|0,l=(_=X2[e+96>>2])-R|0,e=(H2(k=Z-D|0,o)+H2(u,c)|0)+H2(l,t)|0,w=P(r,f,k,k>>31),k=H,v=w,w=P(i,a,u,u>>31),k=H+k|0,k=(u=v+w|0)>>>0>>0?k+1|0:k,w=P(n,b,l,l>>31),k=H+k|0;r:{if(!((u=w+u|0)|(w=k=u>>>0>>0?k+1|0:k))){if((0|e)<0)break r;break e}if(-1<(0|w))break e;if(m=0<(0|e),N=e>>>31|0,v=(k=(0|e)<0)?0-e|0:0,F=e>>31,l=k?0-(F+(0!=(0|e))|0)|0:0,k=1<=(0|G)?(X2[8+I>>2]=d,X2[12+I>>2]=Q,-(X2[24+I>>2]=1)):(0|G)<=-1?(X2[24+I>>2]=-1,X2[8+I>>2]=0-d,X2[12+I>>2]=0-((0!=(0|d))+Q|0),1):(X2[8+I>>2]=0,X2[12+I>>2]=0,X2[24+I>>2]=0),N=m?-1:N,v=m?e:v,l=m?F:l,u=0-(e=u)|0,w=0-((0!=(0|e))+w|0)|0,e=g,(m=0<(0|(F=B))?1:0<=(0|B)?g:0)||-1<((F=e=0)|B)||(X2[24+I>>2]=k,e=0-g|0,F=0-((0!=(0|g))+B|0)|0),X2[16+I>>2]=e,X2[20+I>>2]=F,(0|m0(v,l,u,w,N,8+I|0))<=-1)break e}X2[y>>2]=A=(0|A)==(0|T)?0:E,e=P(r,f,e=C-Z|0,e>>31),B=H,g=(k=e)+(e=P(i,a,e=h-s|0,e>>31))|0,k=H+B|0,k=g>>>0>>0?k+1|0:k,e=P(n,b,e=W-_|0,e>>31),k=H+k|0,B=(g=B=e+g|0)>>>0>>0?k+1|0:k,Y=s,D=Z,R=_;continue}break}if(!(A=X2[V>>2]))break A;if(!X2[A+12>>2])break A;if(E=X2[X2[A+8>>2]>>2],X2[E+20>>2]<=(0|x))break A;if(Z=X2[E+12>>2],A=P(v=A=N=(F=X2[Z+92>>2])-C|0,C=A>>31,U,S),_=H,s=A,e=P(l=A=h=(k=X2[Z+88>>2])-h|0,u=A>>31,X,p),A=H+_|0,A=(s=s+e|0)>>>0>>0?A+1|0:A,A=(0|(m=s))!=(0-(e=P(J,M,w=e=_=(s=X2[Z+96>>2])-W|0,Z=e>>31))|0)?1:(0-(H+(0!=(0|e))|0)|0)!=(0|A))break A;if(A=P(r,f,A=F-D|0,A>>31),e=H,F=A,A=P(i,a,A=k-Y|0,A>>31),k=H+e|0,k=(W=F+A|0)>>>0>>0?k+1|0:k,A=P(n,b,A=s-R|0,A>>31),k=H+k|0,k=(e=A+W|0)>>>0>>0?k+1|0:k,A=e,s=(0|(e=k))<0?1:(0|e)<=0?A>>>0<1:0)break A;_=(H2(N,o)+H2(h,c)|0)+H2(_,t)|0,s=P(v,C,r,f),k=H,v=s,s=P(l,u,i,a),k=H+k|0,k=(u=v+s|0)>>>0>>0?k+1|0:k,s=P(n,b,w,Z),k=H+k|0;e:{if(!((Z=s+u|0)|(s=k=Z>>>0>>0?k+1|0:k))){if((0|_)<0)break e;break A}if(-1<(0|s))break A;if(C=0<(0|_),l=_>>>31|0,u=(_=(0|(k=_))<0)?0-k|0:0,h=k>>31,w=_?0-(h+(0!=(0|k))|0)|0:0,_=1<=(0|G)?(X2[8+I>>2]=d,X2[12+I>>2]=Q,-(X2[24+I>>2]=1)):(0|G)<=-1?(X2[24+I>>2]=-1,X2[8+I>>2]=0-d,X2[12+I>>2]=0-((0!=(0|d))+Q|0),1):(X2[8+I>>2]=0,X2[12+I>>2]=0,X2[24+I>>2]=0),l=C?-1:l,u=C?k:u,w=C?h:w,Z=0-(d=Z)|0,k=0-((0!=(0|d))+s|0)|0,s=d=B,B=g,(G=0<(0|s)?1:0<=(0|d)?B:0)||-1<((s=g=0)|d)||(X2[24+I>>2]=_,g=0-B|0,s=0-((0!=(0|B))+d|0)|0),X2[16+I>>2]=g,X2[20+I>>2]=s,(0|m0(u,w,Z,k,l,8+I|0))<=0)break A}X2[V>>2]=E,B=X2[E+12>>2],W=X2[B+96>>2],C=X2[B+92>>2],h=X2[B+88>>2],g=A,B=e}if(!(-1<(0|B)))for(;;){G=(d=A=T=(H2(C-D|0,o)+H2(h-Y|0,c)|0)+H2(W-R|0,t)|0)>>31;e:if(e&&X2[e+12>>2]&&(m=X2[X2[e+4>>2]+8>>2],!(X2[m+20>>2]<=(0|x)))){_=X2[m+12>>2],Z=X2[_+92>>2],u=(s=X2[_+88>>2])-h|0,l=(_=X2[_+96>>2])-W|0,v=(H2(A=Z-C|0,o)+H2(u,c)|0)+H2(l,t)|0,k=P(r,f,A,A>>31),A=H,F=k,k=P(i,a,u,u>>31),A=H+A|0,A=(u=F+k|0)>>>0>>0?A+1|0:A,l=(k=u)+(u=P(n,b,l,l>>31))|0,k=H+A|0;r:{if(!(l|(u=k=l>>>0>>0?k+1|0:k))){if(0<(0|v))break r;break e}if(-1<(0|u))break e;if(Q=0<(0|v),F=v>>>31|0,N=(k=(0|(A=v))<0)?0-A|0:0,E=A>>31,v=k?0-(E+(0!=(0|A))|0)|0:0,k=1<=(0|T)?(X2[8+I>>2]=d,X2[12+I>>2]=G,-(X2[24+I>>2]=1)):(0|T)<=-1?(X2[24+I>>2]=-1,X2[8+I>>2]=0-d,X2[12+I>>2]=0-((0!=(0|d))+G|0),1):(X2[8+I>>2]=0,X2[12+I>>2]=0,X2[24+I>>2]=0),F=Q?-1:F,N=Q?A:N,v=Q?E:v,l=0-(A=l)|0,u=0-((0!=(0|A))+u|0)|0,A=g,(Q=0<(0|(E=B))?1:0<=(0|B)?g:0)||-1<((E=A=0)|B)||(X2[24+I>>2]=k,A=0-g|0,E=0-((0!=(0|g))+B|0)|0),X2[16+I>>2]=A,X2[20+I>>2]=E,1<=(0|m0(N,v,l,u,F,8+I|0)))break e}X2[V>>2]=e=(0|e)==(0|w)?0:m,A=P(r,f,A=Z-D|0,A>>31),B=H,g=(k=A)+(A=P(i,a,A=s-Y|0,A>>31))|0,k=H+B|0,k=g>>>0>>0?k+1|0:k,B=P(n,b,A=_-R|0,A>>31),A=H+k|0,B=A=(g=B+g|0)>>>0>>0?A+1|0:A,h=s,C=Z,W=_;continue}if(!(A=X2[y>>2]))break A;if(!X2[A+12>>2])break A;if(Q=X2[X2[A+8>>2]+4>>2],X2[Q+20>>2]<=(0|x))break A;if(s=X2[Q+12>>2],A=P(F=A=E=(m=X2[s+92>>2])-D|0,N=A>>31,U,S),e=H,_=(k=A)+(A=P(l=A=D=(v=X2[s+88>>2])-Y|0,u=A>>31,X,p))|0,k=H+e|0,k=_>>>0>>0?k+1|0:k,A=(0|(e=_))!=(0-(A=P(J,M,Y=A=s=(_=X2[s+96>>2])-R|0,Z=A>>31))|0)?1:(0-(H+(0!=(0|A))|0)|0)!=(0|k))break A;if(A=P(r,f,A=C-m|0,A>>31),e=H,R=(k=A)+(A=P(i,a,A=h-v|0,A>>31))|0,k=H+e|0,k=R>>>0>>0?k+1|0:k,A=P(n,b,A=W-_|0,A>>31),k=H+k|0,-1<(0|(A=(_=e=A+R|0)>>>0>>0?k+1|0:k)))break A;if(e=(H2(E,o)+H2(D,c)|0)+H2(s,t)|0,s=P(F,N,r,f),k=H,v=s,s=P(l,u,i,a),k=H+k|0,k=(u=v+s|0)>>>0>>0?k+1|0:k,s=P(n,b,Y,Z),k=H+k|0,(k=(Z=s+u|0)>>>0>>0?k+1|0:k)|(s=Z)){if(-1<(0|k))break A;if(R=0<(0|e),D=e>>>31|0,Y=(Z=(0|e)<0)?0-e|0:0,l=e>>31,Z=Z?0-(l+(0!=(0|e))|0)|0:0,d=1<=(0|T)?(X2[8+I>>2]=d,X2[12+I>>2]=G,-(X2[24+I>>2]=1)):(0|T)<=-1?(X2[24+I>>2]=-1,X2[8+I>>2]=0-d,X2[12+I>>2]=0-((0!=(0|d))+G|0),1):(X2[8+I>>2]=0,X2[12+I>>2]=0,X2[24+I>>2]=0),u=R?-1:D,Y=R?e:Y,Z=R?l:Z,s=0-(e=s)|0,k=0-((0!=(0|e))+k|0)|0,e=g,(G=0<(0|(l=B))?1:0<=(0|B)?e:0)||-1<((l=g=0)|B)||(X2[24+I>>2]=d,g=0-e|0,l=0-((0!=(0|e))+B|0)|0),X2[16+I>>2]=g,X2[20+I>>2]=l,0<=(0|m0(Y,Z,s,k,u,8+I|0)))break A}else if((0|e)<=0)break A;X2[y>>2]=Q,B=X2[Q+12>>2],R=X2[B+96>>2],D=X2[B+92>>2],e=X2[V>>2],Y=X2[B+88>>2],g=_,B=A}}K2=32+I|0}function T0(A,e,r,f,i,a,n){var b,t,o,c,k,u,s,l=0,B=0,v=0,d=0,Z=0,_=0,g=0,E=0,Q=0,w=0;if(!(l=X2[r+8>>2]))return 0;for(u=f+8|0,s=f+4|0,g=l;;){if(X2[g+20>>2]>X2[A+100>>2]){B=X2[g+12>>2],l=P(v=l=t=X2[B+92>>2]-X2[r+92>>2]|0,d=l>>31,X2[i+8>>2],X2[i+12>>2]),Z=H,_=l,b=P(E=l=o=X2[B+88>>2]-X2[r+88>>2]|0,Q=l>>31,X2[i>>2],X2[i+4>>2]),l=H+Z|0,l=(_=_+b|0)>>>0>>0?l+1|0:l,k=P(Z=B=b=X2[B+96>>2]-X2[r+96>>2]|0,c=B>>31,X2[i+16>>2],X2[i+20>>2]),B=H+l|0,B=(_=k+_|0)>>>0>>0?B+1|0:B,l=P(X2[a+8>>2],X2[a+12>>2],v,d),d=H,v=(E=P(X2[a>>2],X2[a+4>>2],E,Q))+l|0,l=H+d|0,l=v>>>0>>0?l+1|0:l,d=P(X2[a+16>>2],X2[a+20>>2],Z,c),l=H+l|0,l=(v=d+v|0)>>>0>>0?l+1|0:l,Z=d=v,l=(l=0<(0|(v=l))?1:0<=(0|v)?Z:0)?(Z=-1,E=0,1):-1<(0|v)?(E=1,Z=v=d=0):(d=0-(l=d)|0,v=0-((0!=(0|l))+v|0)|0,E=0,-(Z=1)),Q=0<(0|B)?1:0<=(0|B)?_:0;A:{if(!Q)if((0|B)<-1||(0|B)<=-1)_=0-(l=_)|0,B=0-((0!=(0|l))+B|0)|0,l=Z;else if(B=_=0,E)break A;!w||(0|(Z=m0(d,v,_,B,l,n)))<=-1?(X2[n+16>>2]=l,X2[n+8>>2]=_,X2[n+12>>2]=B,X2[n>>2]=d,X2[n+4>>2]=v,w=g):Z||(w=2!=(0|R0(w,g,X2[f>>2],X2[s>>2],X2[u>>2],o,t,b))^e?g:w)}l=X2[r+8>>2]}if((0|(g=X2[g>>2]))==(0|l))break}return w}function W0(A){var e,r,f,i,a=P2(0);return K2=i=K2-16|0,r=X2[A+8>>2],e=X2[A+12>>2],a=P2(P2(P2((r>>>0)+4294967296*((f=e)>>>0))*P2(0x10000000000000000))+P2(+X[A>>2]+4294967296*+X[A+4>>2])),0<(0|e)||0<=(0|e)||(e=X2[A+4>>2],A=X2[A>>2],X2[i>>2]=0-A,X2[4+i>>2]=0-(e+(0!=(0|A))|0),r=(A=!(A|e))+(e=-1^r)|0,A=-1^f,X2[8+i>>2]=r,X2[12+i>>2]=r>>>0>>0?A+1|0:A,a=P2(-W0(i))),K2=16+i|0,a}function I0(A,e,r){var f,i,a,n=0,b=0,t=0,o=0,c=P2(0),k=P2(0),u=0,s=0,l=0,B=P2(0),v=0,d=P2(0),Z=0,_=0,g=0,E=P2(0),Q=P2(0),w=P2(0),G=0,C=P2(0),h=P2(0),F=(P2(0),0),Y=0;if(K2=a=K2-176|0,(0|r)<=0)(e=X2[A+12>>2])&&J2[A+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+12>>2]=0,S2[A+16|0]=1,X2[A+4>>2]=0,X2[A+8>>2]=0,(e=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+32>>2]=0,S2[A+36|0]=1,X2[(e=A+24|0)>>2]=0,X2[e+4>>2]=0,(e=X2[A+52>>2])&&J2[A+56|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+52>>2]=0,S2[A+56|0]=1,X2[(A=A+44|0)>>2]=0,X2[A+4>>2]=0;else{for(S2[104+a|0]=1,X2[(n=80+a|0)>>2]=0,X2[n+4>>2]=256,X2[(n=a+64|0)>>2]=0,X2[n+4>>2]=256,X2[(n=48+a|0)>>2]=0,X2[n+4>>2]=256,X2[100+a>>2]=0,X2[(n=92+a|0)>>2]=0,X2[n+4>>2]=0,X2[72+a>>2]=0,X2[76+a>>2]=0,X2[56+a>>2]=0,X2[60+a>>2]=0,X2[40+a>>2]=0,X2[44+a>>2]=0,E=P2(-1.0000000150474662e30),Q=P2(1.0000000150474662e30),b=r,n=e,w=P2(1.0000000150474662e30),d=P2(1.0000000150474662e30),C=P2(-1.0000000150474662e30),h=P2(-1.0000000150474662e30);;)if(E=E<(c=U2[n+8>>2])?c:E,C=C<(k=U2[n+4>>2])?k:C,Q=c>2])?c:h,d=c>2]=b=k>2]=b=(B>>0)%3|0),X2[36+a>>2]=n=0,U2[32+a>>2]=P2(E+Q)*P2(.5),U2[28+a>>2]=P2(C+w)*P2(.5),X2[6258]=X2[6258]+1,X2[20+a>>2]=0,U2[24+a>>2]=P2(h+d)*P2(.5),X2[112+a>>2]=o,X2[116+a>>2]=t=(3^b)-o|0,c=P2(i*P2(9788566967472434e-20)),c=(b=((t+1|0)%3|0)==(0|b))?c:P2(-c),U2[16+a>>2]=c,k=P2(k*P2(9788566967472434e-20)),k=b?k:P2(-k),U2[12+a>>2]=k,B=P2(B*P2(9788566967472434e-20)),B=b?B:P2(-B),U2[8+a>>2]=B,(b=L2(19+(r<<4)|0))&&(X2[(n=b+19&-16)-4>>2]=b),X2[164+a>>2]=n,S2[168+a|0]=1,X2[160+a>>2]=r,b=X2[140+a>>2],X2[n>>2]=X2[136+a>>2],X2[n+4>>2]=b,b=X2[(t=144+a|0)+4>>2],X2[(n=n+8|0)>>2]=X2[t>>2],X2[n+4>>2]=b,1!=(0|r))for(b=r-1|0,n=16;;)if(o=X2[140+a>>2],s=X2[164+a>>2]+n|0,X2[s>>2]=X2[136+a>>2],X2[s+4>>2]=o,l=X2[t+4>>2],X2[(s=s+8|0)>>2]=X2[t>>2],X2[s+4>>2]=l,n=n+16|0,!(b=b-1|0))break;for(c=c!=P2(0)?P2(P2(1)/c):c,k=k!=P2(0)?P2(P2(1)/k):k,B=B!=P2(0)?P2(P2(1)/B):B,X2[156+a>>2]=r,s=(136+a|0)+(X2[112+a>>2]<<2)|0,l=(136+a|0)+(X2[120+a>>2]<<2)|0,o=(136+a|0)+(X2[116+a>>2]<<2)|0,n=X2[164+a>>2],E=U2[32+a>>2],Q=U2[28+a>>2],w=U2[24+a>>2],b=0;;)if(X2[n+12>>2]=b,X2[148+a>>2]=0,U2[136+a>>2]=B*P2(U2[e>>2]-w),U2[144+a>>2]=c*P2(U2[e+8>>2]-E),U2[140+a>>2]=k*P2(U2[e+4>>2]-Q),t=n,d=U2[o>>2],u=P2(j2(d))>2]=u,u=n+4|0,d=U2[l>>2],t=P2(j2(d))>2]=t,u=n+8|0,d=U2[s>>2],t=P2(j2(d))>2]=t,e=e+16|0,n=n+16|0,(0|(b=b+1|0))==(0|r))break;if(2<=(0|r)&&!function A(e,r,f){var i,a,n,b,t,o=0,c=0,k=0,u=0,s=0,l=0,B=0;for(K2=t=K2-16|0,u=X2[e+12>>2],b=X2[8+(k=u+((r+f|0)/2<<4)|0)>>2],a=X2[k+4>>2],n=X2[k>>2],k=r,l=f;;){for(o=(k<<4)+u|0;;){A:{if(!((0|(c=X2[o+4>>2]))<(0|a))){if((0|c)!=(0|a))break A;if(!((0|(c=X2[o>>2]))<(0|n))){if((0|c)!=(0|n))break A;if(X2[o+8>>2]>=(0|b))break A}}o=o+16|0,k=k+1|0;continue}break}for(B=l<<4;;){A:{if(!((0|a)<(0|(s=X2[4+(c=u+B|0)>>2])))){if((0|s)!=(0|a))break A;if(!((0|n)<(0|(s=X2[c>>2])))){if((0|s)!=(0|n))break A;if(X2[c+8>>2]<=(0|b))break A}}B=B-16|0,l=l-1|0;continue}break}if((0|k)<=(0|l)&&(i=X2[4+(s=o+8|0)>>2],X2[(u=8+t|0)>>2]=X2[s>>2],X2[u+4>>2]=i,i=X2[o+4>>2],X2[t>>2]=X2[o>>2],X2[4+t>>2]=i,i=X2[c+4>>2],X2[o>>2]=X2[c>>2],X2[o+4>>2]=i,c=X2[4+(o=c+8|0)>>2],X2[s>>2]=X2[o>>2],X2[s+4>>2]=c,o=X2[e+12>>2]+B|0,B=X2[4+t>>2],X2[o>>2]=X2[t>>2],X2[o+4>>2]=B,c=X2[u+4>>2],X2[(o=o+8|0)>>2]=X2[u>>2],X2[o+4>>2]=c,l=l-1|0,k=k+1|0),!((0|k)<=(0|l)))break;u=X2[e+12>>2]}(0|r)<(0|l)&&A(e,r,l),(0|k)<(0|f)&&A(e,k,f),K2=16+t|0}(152+a|0,0,r-1|0),X2[48+a>>2]=0,X2[44+a>>2]=X2[40+a>>2],X2[52+a>>2]=r,(0|(t=X2[92+a>>2]))<(0|r)){if(X2[96+a>>2]<(0|r)){if(b=0,X2[6258]=X2[6258]+1,(e=L2(19+(r<<2)|0))&&(X2[(b=e+19&-16)-4>>2]=e),1<=(0|t))for(n=0,e=t;;)if(X2[n+b>>2]=X2[X2[100+a>>2]+n>>2],n=n+4|0,!(e=e-1|0))break;(e=X2[100+a>>2])&&J2[104+a|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[100+a>>2]=b,S2[104+a|0]=1,X2[96+a>>2]=r}for(n=t<<2,e=r-t|0;;)if(n=n+4|(X2[X2[100+a>>2]+n>>2]=0),!(e=e-1|0))break}for(X2[92+a>>2]=r,o=0;;){if(!((b=X2[48+a>>2])||((n=X2[44+a>>2])?X2[44+a>>2]=X2[n+8>>2]:(t=X2[6258],n=e=0,(b=L2(31))&&(X2[(n=b+19&-16)-4>>2]=b),X2[n+8>>2]=0,b=X2[52+a>>2],X2[n+4>>2]=b,X2[6258]=t+2,(b=L2(H2(b,112)+19|0))&&(X2[(e=b+19&-16)-4>>2]=b),X2[n>>2]=e,X2[n+8>>2]=X2[40+a>>2],X2[40+a>>2]=n),b=X2[n>>2],(0|(t=X2[n+4>>2]))<1||(n=b+112|0,X2[b>>2]=(e=1==(0|t))?0:n,e))))for(e=1;;)if(n=(l=n)+112|0,X2[l>>2]=(0|(e=e+1|0))<(0|t)?n:0,(0|e)==(0|t))break;if(X2[48+a>>2]=X2[b>>2],X2[(e=b+8|0)>>2]=0,X2[e+4>>2]=0,X2[b+16>>2]=0,X2[b>>2]=0,X2[b+4>>2]=0,X2[b+104>>2]=-1,X2[e>>2]=0,e=X2[164+a>>2]+(o<<4)|0,n=X2[e+4>>2],X2[b+88>>2]=X2[e>>2],X2[b+92>>2]=n,t=X2[(e=e+8|0)+4>>2],X2[(n=b+96|0)>>2]=X2[e>>2],X2[n+4>>2]=t,X2[b+104>>2]=-1,X2[X2[100+a>>2]+(o<<2)>>2]=b,(0|(o=o+1|0))==(0|r))break}if((e=X2[164+a>>2])&&J2[168+a|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[164+a>>2]=0,S2[168+a|0]=1,X2[156+a>>2]=0,X2[160+a>>2]=0,X2[124+a>>2]=0,X2[128+a>>2]=0,X2[64+a>>2]=0,X2[60+a>>2]=X2[56+a>>2],X2[108+a>>2]=-3,X2[68+a>>2]=H2(r,6),X2[(e=144+a|0)>>2]=0,X2[e+4>>2]=0,X2[136+a>>2]=0,!function x(A,e,r,f){var i,a=0,n=0,b=0,t=0,o=0,c=0,k=0,u=0,s=0,l=0,B=0,v=0,d=0,Z=0,_=0,g=0,E=0,Q=0,w=0,G=0,C=0,h=0,F=0,Y=0,m=0,N=0,R=0,D=0,T=0,W=0,I=0,y=0;K2=i=K2-144|0;A:{e:{r:{f:{switch(0|(a=r-e|0)){case 1:break r;case 2:break f;case 0:break;default:break e;}X2[f>>2]=0,X2[f+4>>2]=0,X2[(A=f+8|0)>>2]=0,X2[A+4>>2]=0;break A}if(r=X2[X2[A+92>>2]+(e<<2)>>2],a=X2[r+204>>2],t=X2[r+92>>2],(0|(n=X2[r+88>>2]))!=(0|(b=X2[r+200>>2]))||(0|a)!=(0|t)||(a=t,X2[r+96>>2]!=X2[r+208>>2])){e=r+112|0,(o=t-a|0)|(a=n-b|0)?(X2[r+4>>2]=e,X2[r>>2]=e,X2[r+116>>2]=r,X2[r+112>>2]=r,X2[f+4>>2]=(a=(t=(0|a)<0)|(b=(0|o)<0)&!a)?e:r,X2[f>>2]=a?r:e,a=t&!o||b?(X2[f+8>>2]=r,e):(X2[f+8>>2]=e,r)):(t=X2[r+96>>2]>X2[r+208>>2],X2[f+8>>2]=a=t?e:r,X2[f+4>>2]=a,X2[f>>2]=a,X2[a+4>>2]=a,e=t?r:e,r=X2[a>>2]=a),X2[f+12>>2]=a,r=N0(A,f=r,e),X2[f+8>>2]=r,A=X2[r+8>>2],X2[e+8>>2]=A,X2[r+4>>2]=r,X2[r>>2]=r,X2[A+4>>2]=A,X2[A>>2]=A;break A}X2[r+8>>2]=0,X2[f+12>>2]=r,X2[f+8>>2]=r,X2[f+4>>2]=r,X2[f>>2]=r,X2[r+4>>2]=r,X2[r>>2]=r;break A}A=X2[X2[A+92>>2]+(e<<2)>>2],X2[A+8>>2]=0,X2[f+12>>2]=A,X2[f+8>>2]=A,X2[f+4>>2]=A,X2[f>>2]=A,X2[A+4>>2]=A,X2[A>>2]=A;break A}n=t=(u=(0|a)/2|0)+e|0;e:if(!((0|r)<=(0|n))){for(a=X2[A+92>>2],b=X2[(a+(t<<2)|0)-4>>2],c=X2[b+88>>2],o=X2[b+96>>2],b=X2[b+92>>2],a=a+(e+u<<2)|0,n=t;;){if(u=X2[a>>2],(0|c)!=X2[u+88>>2])break e;if((0|b)!=X2[u+92>>2])break e;if((0|o)!=X2[u+96>>2])break e;if(a=a+4|0,!((0|(n=n+1|0))<(0|r)))break}n=r}if(x(A,e,t,f),X2[(e=16+i|0)>>2]=0,X2[e+4>>2]=0,X2[8+i>>2]=0,x(A,n,r,8+i|(X2[12+i>>2]=0)),E=X2[12+i>>2])if(d=X2[f+4>>2]){T=X2[(e=A+100|0)>>2]-1|0,X2[e>>2]=T,Q=X2[f+12>>2],e=X2[Q+88>>2],u=X2[16+i>>2];e:{r:if((0|e)==X2[u+88>>2]&&(0|(C=X2[Q+92>>2]))==X2[u+92>>2]){if((0|(r=X2[u+4>>2]))==(0|u)){(r=X2[u+8>>2])&&(u=X2[r+12>>2],C=X2[u+92>>2],e=X2[u+88>>2]),w=e+1|0,E=X2[u+96>>2];break e}if(e=X2[u>>2],X2[e+4>>2]=r,X2[r>>2]=e,X2[8+i>>2]==(0|u)&&((0|(b=X2[(a=e)+88>>2]))<(0|(t=X2[r+88>>2]))||(0|b)==(0|t)&&X2[e+92>>2]>2]||(a=r),X2[8+i>>2]=a),(0|u)==(0|E)){f:{if((0|(t=X2[e+88>>2]))<=(0|(a=X2[r+88>>2]))){if((0|a)!=(0|t))break f;if(X2[e+92>>2]<=X2[r+92>>2])break f}E=X2[12+i>>2]=e;break r}E=X2[12+i>>2]=r}}for(v=X2[f>>2],Z=X2[8+i>>2],a=d,e=E,t=r=0,l=b=1;;){u=t,Q=r,t=X2[e+88>>2],c=X2[a+88>>2];r:if(1<=(0|(n=H2(t-c|0,b))))for(_=X2[e+92>>2],r=a;;){for(t=e,a=X2[r+92>>2],c=n;;){f:if(B=_-a|0,(0|(n=X2[(k=1&l?4:0)+r>>2]))!=(0|r)&&!(0<(0|(o=(e=X2[n+92>>2])-a|0)))){if(a=X2[n+88>>2],s=H2(a-X2[r+88>>2]|0,b)){if(-1<(0|s))break f;if((0|H2(o,c))>(0|H2(s,B)))break f}c=H2(X2[t+88>>2]-a|0,b),a=e,r=n;continue}break}if((0|t)==(0|(e=X2[t+k>>2])))break r;if(-1<(0|(k=(a=X2[e+92>>2])-_|0)))break r;if(o=X2[e+88>>2],(0|(n=H2(o-X2[r+88>>2]|0,b)))<1)break r;if(_=a,a=H2(o-X2[t+88>>2]|0,b)){if(-1<(0|a))break r;if(!((0|H2(c,k))<(0|H2(a,B))))break}}else if((0|n)<=-1){o=X2[a+92>>2],_=X2[e+92>>2];f:for(;;){for(k=X2[(Y=1&l?0:4)+e>>2];;){r=a,s=n,m=_-o|0;i:if((0|e)!=(0|k)&&!((0|(n=(a=X2[k+92>>2])-_|0))<0)){if(c=X2[k+88>>2],t=H2(c-t|0,b)){if(-1<(0|t))break i;if((0|H2(n,s))>(0|H2(t,m)))break i}n=H2(c-X2[r+88>>2]|0,b),t=c,_=a,e=k,a=r;continue f}if((0|(a=X2[r+Y>>2]))==(0|r)){t=e;break r}if((0|(h=(c=X2[a+92>>2])-o|0))<1){t=e;break r}if(t=X2[e+88>>2],B=X2[a+88>>2],-1<(0|(n=H2(t-B|0,b)))){t=e;break r}if(o=c,c=H2(B-X2[r+88>>2]|0,b)){if(-1<(0|c)){t=e;break r}if(!((0|H2(s,h))<(0|H2(c,m))))break}}break}t=e}else{n=X2[a+92>>2];f:if(o=1&l)for(b=a;;){if((0|(b=X2[(r=b)+4>>2]))==(0|a))break f;if((0|c)!=X2[b+88>>2])break f;if(t=n,!((0|(n=X2[b+92>>2]))<=(0|t)))break}else for(b=a;;){if((0|(b=X2[(r=b)>>2]))==(0|a))break f;if((0|c)!=X2[b+88>>2])break f;if(t=n,!((0|(n=X2[b+92>>2]))<=(0|t)))break}if(b=X2[e+92>>2],o)for(a=e;;){if((0|(a=X2[(t=a)>>2]))==(0|e))break r;if((0|c)!=X2[a+88>>2])break r;if(!((0|(n=b))<=(0|(b=X2[a+92>>2]))))break}else for(a=e;;){if((0|(a=X2[(t=a)+4>>2]))==(0|e))break r;if((0|c)!=X2[a+88>>2])break r;if(!((0|(n=b))<=(0|(b=X2[a+92>>2]))))break}}if(n=1&l,l=0,b=-1,a=v,e=Z,!n)break}if(X2[t>>2]=r,X2[r+4>>2]=t,X2[Q>>2]=u,X2[u+4>>2]=Q,X2[Z+88>>2]>2]&&(X2[f>>2]=Z),X2[E+88>>2]>=X2[d+88>>2]&&(X2[f+4>>2]=E),X2[f+12>>2]=X2[20+i>>2],W=X2[u+96>>2],g=X2[Q+96>>2],y=X2[u+92>>2],I=X2[Q+92>>2],f=X2[Q+8>>2],m=X2[u+88>>2],Y=X2[Q+88>>2],Z=P(n=r=h=W-g|(X2[104+i>>2]=e=0),b=r>>31,C=r=B=y-I|0,w=r>>31),d=H,r=P(D=r=0-(F=m-Y|0)|0,N=r>>31,F,F>>31),t=H,v=r-(a=P(B,w,B,w))|0,l=t-(H+(r>>>0>>0)|0)|0,E=0-(r=P(n,b,D,N))|0,s=0-(H+(0!=(0|r))|0)|0,b=0,f){for(r=f;k=X2[r+12>>2],a=P(_=a=X2[k+92>>2]-I|0,c=a>>31,D,N),t=H,(a=(0|a)!=(0-(a=P(C,w,o=a=X2[k+88>>2]-Y|0,n=a>>31))|0)?1:(0-(H+(0!=(0|a))|0)|0)!=(0|t))||(a=P(Z,d,_,c),t=H,c=a,a=P(E,s,o,n),o=H+t|0,o=(n=c+a|0)>>>0>>0?o+1|0:o,t=(a=P(v,l,a=X2[k+96>>2]-g|0,a>>31))+n|0,n=H+o|0,n=t>>>0>>0?n+1|0:n,a=t,(a=(0|n)<0?1:(0|n)<=0?a>>>0<1:0)||b&&1!=(0|R0(b,r,F,B,h,0,0,-1))||(b=r)),(0|f)!=(0|(r=X2[r>>2])););X2[104+i>>2]=b}if(f=X2[u+8>>2],X2[80+i>>2]=0,f){for(r=f;k=X2[r+12>>2],a=P(_=a=X2[k+92>>2]-y|0,c=a>>31,D,N),t=H,(a=(0|a)!=(0-(a=P(C,w,o=a=X2[k+88>>2]-m|0,n=a>>31))|0)?1:(0-(H+(0!=(0|a))|0)|0)!=(0|t))||(a=P(Z,d,_,c),t=H,c=a,a=P(E,s,o,n),o=H+t|0,o=(n=c+a|0)>>>0>>0?o+1|0:o,t=(a=P(v,l,a=X2[k+96>>2]-W|0,a>>31))+n|0,n=H+o|0,n=t>>>0>>0?n+1|0:n,a=t,(a=(0|n)<0?1:(0|n)<=0?a>>>0<1:0)||e&&2!=(0|R0(e,r,F,B,h,0,0,-1))||(e=r)),(0|f)!=(0|(r=X2[r>>2])););X2[80+i>>2]=e}e|b&&(D0(T,Q,u,104+i|0,80+i|0),(e=X2[104+i>>2])&&(Q=X2[e+12>>2]),(e=X2[80+i>>2])&&(u=X2[e+12>>2])),C=X2[u+92>>2],w=X2[u+88>>2],E=X2[u+96>>2]+1|0}for(y=A+100|0,e=Q,o=u,T=1,_=k=Z=t=s=l=0;;){if(X2[140+i>>2]=-1,n=X2[(m=e+92|0)>>2],a=X2[(I=o+92|0)>>2]-n|0,X2[132+i>>2]=a,r=X2[(h=e+96|0)>>2],f=X2[(Y=o+96|0)>>2]-r|0,X2[136+i>>2]=f,v=X2[e+88>>2],b=X2[o+88>>2]-v|0,X2[128+i>>2]=b,c=C-n|0,n=E-r|0,F=(r=H2(c,f)-H2(n,a)|0)>>31,W=r,X2[104+i>>2]=r,X2[108+i>>2]=F,D=(r=(r=H2(n,b))-H2(n=w-v|0,f)|0)>>31,g=r,X2[112+i>>2]=r,X2[116+i>>2]=D,N=(r=H2(a,n)-H2(b,c)|0)>>31,B=r,X2[120+i>>2]=r,X2[124+i>>2]=N,r=P(g,D,b,d=b>>31),c=H,n=P(W,F,a,v=a>>31),X2[96+i>>2]=r-n,X2[100+i>>2]=c-(H+(r>>>0>>0)|0),r=P(W,F,f,c=f>>31),n=H,b=P(B,N,b,d),X2[88+i>>2]=r-b,X2[92+i>>2]=n-(H+(r>>>0>>0)|0),r=P(a,v,B,N),a=H,f=P(g,D,f,c),X2[80+i>>2]=r-f,X2[84+i>>2]=a-(H+(r>>>0>>0)|0),X2[72+i>>2]=0,X2[(r=64+i|0)>>2]=0,X2[r+4>>2]=0,X2[56+i>>2]=0,B=T0(A,X2[60+i>>2]=0,e,128+i|0,104+i|0,80+i|0,56+i|0),X2[48+i>>2]=0,X2[(r=40+i|0)>>2]=0,X2[r+4>>2]=0,X2[32+i>>2]=0,(d=T0(A,1,o,128+i|(X2[36+i>>2]=0),104+i|0,80+i|0,32+i|0))|B){g=B?-1:1,B&&d&&(g=m0(X2[56+i>>2],X2[60+i>>2],X2[64+i>>2],X2[68+i>>2],X2[72+i>>2],32+i|0));e:{r:if(!T){if(0<=(0|g)){if(-1>2])break r;if(X2[40+i>>2]|X2[44+i>>2])break r}else{if(-1>2])break r;if(X2[64+i>>2]|X2[68+i>>2])break r}f=l,c=s,v=Z,a=k;break e}a=v=N0(A,e,o),Z&&(X2[Z+4>>2]=v,a=k),X2[v>>2]=Z,c=f=X2[v+8>>2],l&&(X2[l>>2]=f,c=s),X2[f+4>>2]=l}if(X2[28+i>>2]=B,l=X2[24+i>>2]=d,g||(D0(X2[y>>2],e,o,28+i|0,24+i|0),l=X2[24+i>>2]),(0|g)<0||!l)s=c;else{e:{r:{if(G){if((0|d)!=(0|(r=X2[G>>2])))for(;s=X2[r+8>>2],((b=n=0)|(k=X2[r>>2]))!=(0|r)&&(X2[k+4>>2]=X2[r+4>>2],b=X2[X2[r+4>>2]>>2]=k),X2[X2[s+12>>2]+8>>2]=b,(0|(b=X2[s>>2]))!=(0|s)&&(X2[b+4>>2]=X2[s+4>>2],n=X2[X2[s+4>>2]>>2]=b),X2[X2[r+12>>2]+8>>2]=n,X2[r+16>>2]=0,X2[(b=r+8|0)>>2]=0,X2[b+4>>2]=0,X2[r>>2]=0,X2[r+4>>2]=0,X2[r>>2]=X2[A+56>>2],X2[A+56>>2]=r,X2[s+16>>2]=0,X2[(r=s+8|0)>>2]=0,X2[r+4>>2]=0,X2[s>>2]=0,X2[s+4>>2]=0,X2[s>>2]=X2[A+56>>2],X2[A+56>>2]=s,X2[A+116>>2]=X2[A+116>>2]-1,(0|d)!=(0|(r=k)););if(f)break r;break e}if(!f){t=d;break e}G=X2[d+4>>2],t=c}X2[G>>2]=c,X2[c+4>>2]=G,X2[f>>2]=d,X2[d+4>>2]=f,l=X2[24+i>>2],c=0}s=c,E=X2[Y>>2],C=X2[I>>2],G=X2[l+8>>2],w=X2[o+88>>2],f=0,o=X2[l+12>>2]}if(b=o,l=f,0<(0|g)||!(g=X2[28+i>>2]))Z=v;else{e:{r:{f:{i:{if(R){if((0|B)!=(0|(r=X2[R+4>>2])))for(;k=X2[r+8>>2],f=X2[r+4>>2],((o=n=0)|(c=X2[r>>2]))!=(0|r)&&(X2[c+4>>2]=f,o=X2[X2[r+4>>2]>>2]=c),X2[X2[k+12>>2]+8>>2]=o,(0|(o=X2[k>>2]))!=(0|k)&&(X2[o+4>>2]=X2[k+4>>2],n=X2[X2[k+4>>2]>>2]=o),X2[X2[r+12>>2]+8>>2]=n,X2[r+16>>2]=0,X2[(n=r+8|0)>>2]=0,X2[n+4>>2]=0,X2[r>>2]=0,X2[r+4>>2]=0,X2[r>>2]=X2[A+56>>2],X2[A+56>>2]=r,X2[k+16>>2]=0,X2[(r=k+8|0)>>2]=0,X2[r+4>>2]=0,X2[k>>2]=0,X2[k+4>>2]=0,X2[k>>2]=X2[A+56>>2],X2[A+56>>2]=k,X2[A+116>>2]=X2[A+116>>2]-1,(0|B)!=(0|(r=f)););if(v)break i;break e}if(v)break f;_=B;break e}r=(X2[a>>2]=R)+4|0;break r}r=X2[B>>2],r=(X2[(_=a)>>2]=r)+4|0}X2[r>>2]=a,X2[B>>2]=v,X2[v+4>>2]=B,g=X2[28+i>>2],a=0}E=X2[h>>2],C=X2[m>>2],R=X2[g+8>>2],w=X2[e+88>>2],Z=0,e=X2[g+12>>2]}if(k=a,r=1,(0|e)==(0|Q)&&(0|b)==(0|u)){if(R){if((0|_)!=(0|(r=X2[R+4>>2])))for(;b=X2[r+8>>2],f=X2[r+4>>2],((o=n=0)|(a=X2[r>>2]))!=(0|r)&&(X2[a+4>>2]=f,o=X2[X2[r+4>>2]>>2]=a),X2[X2[b+12>>2]+8>>2]=o,(0|(a=X2[b>>2]))!=(0|b)&&(X2[a+4>>2]=X2[b+4>>2],n=X2[X2[b+4>>2]>>2]=a),X2[X2[r+12>>2]+8>>2]=n,X2[r+16>>2]=0,X2[(a=r+8|0)>>2]=0,X2[a+4>>2]=0,X2[r>>2]=0,X2[r+4>>2]=0,X2[r>>2]=X2[A+56>>2],X2[A+56>>2]=r,X2[b+16>>2]=0,X2[(r=b+8|0)>>2]=0,X2[r+4>>2]=0,X2[b>>2]=0,X2[b+4>>2]=0,X2[b>>2]=X2[A+56>>2],X2[A+56>>2]=b,X2[A+116>>2]=X2[A+116>>2]-1,(0|_)!=(0|(r=f)););Z&&(X2[R+4>>2]=k,X2[k>>2]=R,X2[Z+4>>2]=_,X2[_>>2]=Z)}else X2[Z+4>>2]=k,X2[k>>2]=Z,X2[e+8>>2]=Z;if(G){if((0|t)!=(0|(r=X2[G>>2])))for(;o=X2[r+8>>2],((b=n=0)|(f=X2[r>>2]))!=(0|r)&&(X2[f+4>>2]=X2[r+4>>2],b=X2[X2[r+4>>2]>>2]=f),X2[X2[o+12>>2]+8>>2]=b,(0|(a=X2[o>>2]))!=(0|o)&&(X2[a+4>>2]=X2[o+4>>2],n=X2[X2[o+4>>2]>>2]=a),X2[X2[r+12>>2]+8>>2]=n,X2[r+16>>2]=0,X2[(a=r+8|0)>>2]=0,X2[a+4>>2]=0,X2[r>>2]=0,X2[r+4>>2]=0,X2[r>>2]=X2[A+56>>2],X2[A+56>>2]=r,X2[o+16>>2]=0,X2[(r=o+8|0)>>2]=0,X2[r+4>>2]=0,X2[o>>2]=0,X2[o+4>>2]=0,X2[o>>2]=X2[A+56>>2],X2[A+56>>2]=o,X2[A+116>>2]=X2[A+116>>2]-1,(0|t)!=(0|(r=f)););r=0,l?(X2[s+4>>2]=G,X2[G>>2]=s,X2[t+4>>2]=l,X2[l>>2]=t,o=u):(o=u,l=0)}else X2[s+4>>2]=l,X2[l>>2]=s,X2[u+8>>2]=l,o=u,r=G=0}else o=b,T=0}else f=N0(A,e,o),X2[e+8>>2]=f,r=X2[f+8>>2],X2[o+8>>2]=r,X2[f+4>>2]=f,X2[f>>2]=f,X2[r+4>>2]=r,X2[r>>2]=r,r=0;if(!r)break}}else A=X2[12+i>>2],X2[f>>2]=X2[8+i>>2],X2[f+4>>2]=A,A=X2[4+(e=16+i|0)>>2],X2[(r=f+8|0)>>2]=X2[e>>2],X2[r+4>>2]=A}K2=144+i|0}(8+a|(X2[140+a>>2]=0),0,r,136+a|0),X2[132+a>>2]=X2[136+a>>2],(e=X2[164+a>>2])&&J2[168+a|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),(0|(n=X2[A+4>>2]))<=-1)for(X2[A+8>>2]<=-1&&((e=X2[A+12>>2])&&J2[A+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),S2[A+16|0]=1,X2[A+8>>2]=0,X2[A+12>>2]=0),e=n<<4;;)if(t=X2[156+a>>2],r=X2[A+12>>2]+e|0,X2[(b=r)>>2]=X2[152+a>>2],X2[b+4>>2]=t,t=X2[(b=160+a|0)+4>>2],X2[(r=r+8|0)>>2]=X2[b>>2],X2[r+4>>2]=t,e=e+16|0,!((r=n)>>>0<=(n=n+1|0)>>>0))break;if(X2[A+4>>2]=0,X2[160+a>>2]=0,X2[152+a>>2]=0,((X2[156+a>>2]=0)|(n=X2[A+24>>2]))<=-1)for(X2[A+28>>2]<=-1&&((e=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+28>>2]=0,X2[A+32>>2]=0,S2[A+36|0]=1),e=H2(n,12);;)if(b=X2[156+a>>2],r=X2[A+32>>2]+e|0,X2[r>>2]=X2[152+a>>2],X2[r+4>>2]=b,X2[r+8>>2]=X2[160+a>>2],e=e+12|0,!((r=n)>>>0<=(n=n+1|0)>>>0))break;if(((X2[A+24>>2]=0)|(r=X2[A+44>>2]))<=-1&&(e=X2[A+52>>2],X2[A+48>>2]<=-1&&(e&&J2[A+56|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),S2[A+56|0]=1,X2[A+48>>2]=0,e=X2[A+52>>2]=0),v2((n=e)+(e=r<<2)|0,0,0-e|0)),X2[A+44>>2]=0,t=X2[132+a>>2],!(-1>2])){for(X2[t+104>>2]=0,X2[6258]=X2[6258]+1,e=L2(23),X2[(s=e+19&-16)>>2]=t,X2[s-4>>2]=e,v=l=1;;){A:{e:{r:{f:{if(0<=X2[t+100>>2])U2[(152+a|0)+(X2[116+a>>2]<<2)>>2]=X2[t+88>>2];else if(c=W0(t+24|0),k=W0(e=t+72|0),U2[(152+a|0)+(X2[116+a>>2]<<2)>>2]=c/k,X2[t+100>>2]<0)break f;U2[(152+a|0)+(X2[120+a>>2]<<2)>>2]=X2[t+92>>2];break r}if(c=W0(t+40|0),k=W0(e),U2[(152+a|0)+(X2[120+a>>2]<<2)>>2]=c/k,X2[t+100>>2]<0)break e}c=P2(X2[t+96>>2]);break A}c=P2(W0(t+56|0)/W0(e))}if(U2[(152+a|0)+(X2[112+a>>2]<<2)>>2]=c,c=P2(P2(U2[160+a>>2]*U2[16+a>>2])+U2[32+a>>2]),k=P2(P2(U2[156+a>>2]*U2[12+a>>2])+U2[28+a>>2]),B=P2(P2(U2[152+a>>2]*U2[8+a>>2])+U2[24+a>>2]),(0|(e=X2[A+4>>2]))==X2[A+8>>2]&&!((0|(r=e?e<<1:1))<=(0|e))){if(o=0,r&&(X2[6258]=X2[6258]+1,(n=L2(19+(r<<4)|0))&&(X2[(o=n+19&-16)-4>>2]=n)),1<=(0|e))for(n=0;;)if(u=X2[A+12>>2]+n|0,G=X2[u+4>>2],X2[(b=n+o|0)>>2]=X2[u>>2],X2[b+4>>2]=G,G=X2[(u=u+8|0)+4>>2],X2[(b=b+8|0)>>2]=X2[u>>2],X2[b+4>>2]=G,n=n+16|0,!(e=e-1|0))break;(e=X2[A+12>>2])&&J2[A+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+12>>2]=o,S2[A+16|0]=1,X2[A+8>>2]=r,e=X2[A+4>>2]}if(e=X2[A+12>>2]+(e<<4)|0,X2[e+12>>2]=0,U2[e+8>>2]=c,U2[e+4>>2]=k,U2[e>>2]=B,X2[A+4>>2]=X2[A+4>>2]+1,G=X2[t+8>>2]){for(e=G,u=r=-1;;){if((0|(n=X2[e+20>>2]))<=-1){if(t=X2[A+24>>2],X2[(f=160+a|0)>>2]=0,X2[152+a>>2]=0,((X2[156+a>>2]=0)|(n=t))==X2[A+28>>2]&&!((0|(Z=n?t<<1:1))<=(0|n))){if(o=0,Z&&(X2[6258]=X2[6258]+1,(n=L2(H2(Z,12)+19|0))&&(X2[(o=n+19&-16)-4>>2]=n)),1<=(0|t))for(n=0,b=t;;)if(_=X2[A+32>>2]+n|0,F=X2[_+4>>2],X2[(g=n+o|0)>>2]=X2[_>>2],X2[g+4>>2]=F,X2[g+8>>2]=X2[_+8>>2],n=n+12|0,!(b=b-1|0))break;(n=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[n-4>>2])),X2[A+32>>2]=o,S2[A+36|0]=1,X2[A+28>>2]=Z,n=X2[A+24>>2]}if(b=X2[156+a>>2],n=X2[A+32>>2]+H2(n,12)|0,X2[n>>2]=X2[152+a>>2],X2[n+4>>2]=b,X2[n+8>>2]=X2[f>>2],b=X2[A+24>>2],X2[A+24>>2]=n=b+1|0,X2[f>>2]=0,X2[152+a>>2]=0,X2[156+a>>2]=0,X2[A+28>>2]==(0|n)&&!((0|(Z=n?n<<1:1))<=(0|n))){if(o=0,Z&&(X2[6258]=X2[6258]+1,(n=L2(H2(Z,12)+19|0))&&(X2[(o=n+19&-16)-4>>2]=n)),0<=(0|b))for(b=b+1|0,n=0;;)if(_=X2[A+32>>2]+n|0,F=X2[_+4>>2],X2[(g=n+o|0)>>2]=X2[_>>2],X2[g+4>>2]=F,X2[g+8>>2]=X2[_+8>>2],n=n+12|0,!(b=b-1|0))break;(n=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[n-4>>2])),X2[A+32>>2]=o,S2[A+36|0]=1,X2[A+28>>2]=Z,n=X2[A+24>>2]}if(b=X2[156+a>>2],n=X2[A+32>>2]+H2(n,12)|0,X2[n>>2]=X2[152+a>>2],X2[n+4>>2]=b,X2[n+8>>2]=X2[f>>2],X2[A+24>>2]=X2[A+24>>2]+1,X2[e+20>>2]=t,X2[X2[e+8>>2]+20>>2]=g=t+1|0,f=(_=X2[A+32>>2])+H2(t,12)|0,X2[4+f>>2]=1,X2[16+f>>2]=-1,Z=X2[e+12>>2],-1<(0|(n=X2[Z+104>>2])))b=l,l=n;else{X2[Z+104>>2]=l;A:if((0|l)!=(0|v)||(0|(o=v?v<<1:1))<=(0|v))t=s,o=v;else{if(t=0,o&&(X2[6258]=X2[6258]+1,(n=L2(19+(o<<2)|0))&&(X2[(t=n+19&-16)-4>>2]=n)),1<=(0|v)){for(n=t,b=s;;)if(X2[n>>2]=X2[b>>2],n=n+4|0,b=b+4|0,!(v=v-1|0))break}else if(!s)break A;X2[6259]=X2[6259]+1,q2(X2[s-4>>2])}X2[(l<<2)+t>>2]=Z,b=l+1|0,s=t,v=o}X2[8+(_+H2(g,12)|0)>>2]=Y,X2[8+f>>2]=l,l=b,n=X2[e+20>>2]}if(b=n,0<=(0|r)&&(X2[X2[A+32>>2]+H2(n,12)>>2]=r-n,b=u),r=n,u=b,(0|G)==(0|(e=X2[e>>2])))break}X2[X2[A+32>>2]+H2(u,12)>>2]=r-u}if(!((0|(e=Y+1|0))<(0|l)))break;t=X2[(e<<2)+s>>2],Y=e}for(v=0;;){if(l=X2[X2[(v<<2)+s>>2]+8>>2])for(e=l;;){if(0<=(0|(n=X2[e+20>>2]))){if((0|(o=X2[A+44>>2]))==X2[A+48>>2]&&!((0|(u=o?o<<1:1))<=(0|o))){r=0,u&&(X2[6258]=X2[6258]+1,(n=L2(19+(u<<2)|0))&&(X2[(r=n+19&-16)-4>>2]=n)),t=X2[A+52>>2];A:{if(1<=(0|o)){for(n=r,b=t;;)if(X2[n>>2]=X2[b>>2],n=n+4|0,b=b+4|0,!(o=o-1|0))break}else if(!t)break A;J2[A+56|0]&&(X2[6259]=X2[6259]+1,q2(X2[t-4>>2])),o=X2[A+44>>2]}X2[A+48>>2]=u,X2[A+52>>2]=r,S2[A+56|0]=1,n=X2[e+20>>2]}for(X2[X2[A+52>>2]+(o<<2)>>2]=n,X2[A+44>>2]=X2[A+44>>2]+1,n=e;;)if(X2[n+20>>2]=-1,(0|(n=X2[X2[n+8>>2]+4>>2]))==(0|e))break}if((0|l)==(0|(e=X2[e>>2])))break}if(e=(0|v)==(0|Y),v=v+1|0,e)break}s&&(X2[6259]=X2[6259]+1,q2(X2[s-4>>2]))}if((A=X2[100+a>>2])&&J2[104+a|0]&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2])),X2[100+a>>2]=0,S2[104+a|0]=1,X2[92+a>>2]=0,X2[96+a>>2]=0,n=X2[72+a>>2])for(;;)if(X2[72+a>>2]=X2[n+8>>2],(A=X2[n>>2])&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2])),X2[6259]=X2[6259]+1,q2(X2[n-4>>2]),!(n=X2[72+a>>2]))break;if(n=X2[56+a>>2])for(;;)if(X2[56+a>>2]=X2[n+8>>2],(A=X2[n>>2])&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2])),X2[6259]=X2[6259]+1,q2(X2[n-4>>2]),!(n=X2[56+a>>2]))break;if(n=X2[40+a>>2])for(;;)if(X2[40+a>>2]=X2[n+8>>2],(A=X2[n>>2])&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2])),X2[6259]=X2[6259]+1,q2(X2[n-4>>2]),!(n=X2[40+a>>2]))break}K2=176+a|0}function x0(A,e,r,f){N2[X2[X2[(A|=0)>>2]+80>>2]](A,e|=0,r|=0,f|=0)}function y0(A,e){A|=0,e=P2(e),U2[A+52>>2]=e}function V0(A){return 0}function f(A,e,r){}function p0(A,e){var r,f,i,a=0,n=0,b=0,t=0,o=0,c=0,k=0,u=0,s=0,l=0,B=0,v=0;if(X2[A+8>>2]<(0|e)){if(e&&(X2[6258]=X2[6258]+1,(a=L2(H2(e,36)+19|0))&&(X2[(k=a+19&-16)-4>>2]=a)),!((0|(i=X2[A+4>>2]))<1)){for(;;){n=H2(u,36),X2[(a=n+k|0)+4>>2]=0,X2[a+8>>2]=0,S2[a+16|0]=1,r=a+4|(X2[a+12>>2]=0);A:{e:{r:{if(o=n+X2[A+12>>2]|0,1<=(0|(b=X2[o+4>>2]))){if(B=a+8|0,s=a+12|0,v=a+16|0,X2[6258]=X2[6258]+1,!(n=L2((l=b<<2)+19|0)))break r;if(X2[(c=n+19&-16)-4>>2]=n,f=X2[s>>2],1<=(0|(n=X2[r>>2]))){for(t=0;;)if(X2[t+c>>2]=X2[t+f>>2],t=t+4|0,!(n=n-1|0))break}else if(!f)break e;X2[6259]=X2[6259]+1,q2(X2[f-4>>2]);break e}X2[r>>2]=b;break A}c=0}for(X2[s>>2]=c,S2[0|v]=1,X2[B>>2]=b,v2(c,0,l),X2[r>>2]=b,t=X2[o+12>>2],n=X2[s>>2];;)if(X2[n>>2]=X2[t>>2],n=n+4|0,t=t+4|0,!(b=b-1|0))break}if(n=X2[o+24>>2],X2[a+20>>2]=X2[o+20>>2],X2[a+24>>2]=n,b=X2[(n=o+28|0)+4>>2],X2[(a=a+28|0)>>2]=X2[n>>2],X2[a+4>>2]=b,(0|i)==(0|(u=u+1|0)))break}if(!((0|(b=X2[A+4>>2]))<1))for(n=8;;)if(a=X2[A+12>>2]+n|0,(o=X2[(t=a+4|0)>>2])&&J2[a+8|0]&&(X2[6259]=X2[6259]+1,q2(X2[o-4>>2])),X2[t>>2]=0,S2[a+8|0]=1,X2[(a=a-4|0)>>2]=0,n=n+36|(X2[a+4>>2]=0),!(b=b-1|0))break}(a=X2[A+12>>2])&&J2[A+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[a-4>>2])),X2[A+12>>2]=k,S2[A+16|0]=1,X2[A+8>>2]=e}}function M0(A,e){var r,f,i,a,n,b,t=0,o=0,c=0,k=0;if((0|(k=X2[A+4>>2]))==X2[A+8>>2]&&(p0(A,k?k<<1:1),k=X2[A+4>>2]),t=(f=X2[A+12>>2])+H2(k,36)|0,X2[t+4>>2]=0,X2[t+8>>2]=0,S2[t+16|0]=1,i=t+4|(X2[t+12>>2]=0),1<=(0|(o=X2[e+4>>2]))){for(n=t+8|0,r=t+12|0,b=t+16|0,X2[6258]=X2[6258]+1,(t=L2(19+(a=o<<2)|0))&&(X2[(c=t+19&-16)-4>>2]=t,(t=X2[r>>2])&&(X2[6259]=X2[6259]+1,q2(X2[t-4>>2]))),X2[r>>2]=c,S2[0|b]=1,X2[n>>2]=o,v2(c,0,a),X2[i>>2]=o,t=X2[e+12>>2],c=X2[r>>2];;)if(X2[c>>2]=X2[t>>2],c=c+4|0,t=t+4|0,!(o=o-1|0))break}else X2[i>>2]=o;o=X2[e+24>>2],t=H2(k,36)+f|0,X2[t+20>>2]=X2[e+20>>2],X2[t+24>>2]=o,o=X2[(e=e+28|0)+4>>2],X2[(t=t+28|0)>>2]=X2[e>>2],X2[t+4>>2]=o,X2[A+4>>2]=X2[A+4>>2]+1}function S0(A,e,r,f){A|=0,e|=0,r|=0,f|=0;P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var i,a,n,b=P2(N2[X2[X2[A>>2]+48>>2]](A)),t=U2[e+52>>2],o=U2[e+24>>2],c=U2[e+20>>2],k=U2[e+56>>2],u=U2[e+40>>2],s=U2[A+72>>2],l=U2[A+88>>2],B=U2[e+36>>2],v=U2[A+68>>2],d=U2[A+84>>2],Z=U2[e+48>>2],_=U2[e+8>>2],g=U2[e>>2],E=U2[e+4>>2],Q=U2[e+16>>2],e=U2[e+32>>2],w=U2[A+64>>2],A=U2[A+80>>2];X2[r+12>>2]=0,i=k,k=P2(P2(A+w)*P2(.5)),a=P2(P2(d+v)*P2(.5)),n=P2(P2(l+s)*P2(.5)),i=P2(i+P2(P2(P2(e*k)+P2(B*a))+P2(u*n))),w=P2(b+P2(P2(A-w)*P2(.5))),v=P2(b+P2(P2(d-v)*P2(.5))),b=P2(b+P2(P2(l-s)*P2(.5))),u=P2(P2(P2(w*P2(j2(e)))+P2(v*P2(j2(B))))+P2(b*P2(j2(u)))),U2[r+8>>2]=i-u,s=P2(t+P2(P2(P2(k*Q)+P2(a*c))+P2(n*o))),o=P2(P2(P2(w*P2(j2(Q)))+P2(v*P2(j2(c))))+P2(b*P2(j2(o)))),U2[r+4>>2]=s-o,c=P2(Z+P2(P2(P2(k*g)+P2(a*E))+P2(n*_))),b=P2(P2(P2(w*P2(j2(g)))+P2(v*P2(j2(E))))+P2(b*P2(j2(_)))),U2[r>>2]=c-b,X2[f+12>>2]=0,U2[f+8>>2]=u+i,U2[f+4>>2]=o+s,U2[f>>2]=b+c}function X0(A,e){A|=0,e=P2(e);P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var r,f,i,a,n,b,t,o=P2(N2[X2[X2[A>>2]+48>>2]](A)),c=P2(N2[X2[X2[A>>2]+48>>2]](A)),k=P2(N2[X2[X2[A>>2]+48>>2]](A));U2[A+52>>2]=e,e=U2[(r=A+44|0)>>2],i=U2[(f=A+40|0)>>2],a=U2[A+36>>2],n=P2(N2[X2[X2[A>>2]+48>>2]](A)),b=P2(N2[X2[X2[A>>2]+48>>2]](A)),t=P2(N2[X2[X2[A>>2]+48>>2]](A)),X2[A+48>>2]=0,U2[f>>2]=P2(c+i)-b,U2[A+36>>2]=P2(o+a)-n,U2[r>>2]=P2(k+e)-t}function J0(A){var e;X2[(A|=0)>>2]=10364,(e=X2[A+60>>2])&&(N2[X2[X2[e>>2]>>2]](e),(e=X2[A+60>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]))),X2[6259]=X2[6259]+1,q2(X2[A-4>>2])}function U0(A,e,r,f){A|=0,e|=0,r|=0,f|=0;P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var i=P2(N2[X2[X2[A>>2]+48>>2]](A)),a=U2[e+52>>2],n=U2[e+20>>2],b=U2[e+24>>2],t=U2[e+56>>2],o=U2[e+36>>2],c=U2[A+40>>2],k=U2[e+40>>2],u=U2[A+44>>2],s=U2[e+48>>2],l=U2[e>>2],B=U2[e+4>>2],v=U2[e+8>>2],d=U2[e+16>>2],e=U2[e+32>>2],A=U2[A+36>>2];X2[r+12>>2]=0,A=P2(i+A),c=P2(i+c),i=P2(i+u),o=P2(P2(P2(A*P2(j2(e)))+P2(c*P2(j2(o))))+P2(i*P2(j2(k)))),U2[r+8>>2]=t-o,n=P2(P2(P2(A*P2(j2(d)))+P2(c*P2(j2(n))))+P2(i*P2(j2(b)))),U2[r+4>>2]=a-n,i=P2(P2(P2(A*P2(j2(l)))+P2(c*P2(j2(B))))+P2(i*P2(j2(v)))),U2[r>>2]=s-i,X2[f+12>>2]=0,U2[f+8>>2]=t+o,U2[f+4>>2]=n+a,U2[f>>2]=i+s}function H0(A,e){A|=0,e|=0;P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var r,f,i,a=P2(N2[X2[X2[A>>2]+48>>2]](A)),n=P2(N2[X2[X2[A>>2]+48>>2]](A)),b=P2(N2[X2[X2[A>>2]+48>>2]](A)),t=U2[e>>2],o=U2[e+4>>2],c=U2[e+8>>2];X2[A+48>>2]=0,X2[A+32>>2]=0,r=U2[(e=A+28|0)>>2],c=P2(j2(c)),U2[e>>2]=c,f=U2[(e=A+24|0)>>2],o=P2(j2(o)),U2[e>>2]=o,i=U2[A+20>>2],t=P2(j2(t)),U2[A+20>>2]=t,U2[(e=A+44|0)>>2]=P2(P2(P2(b+U2[e>>2])/r)*c)-b,U2[(e=A+40|0)>>2]=P2(P2(P2(n+U2[e>>2])/f)*o)-n,U2[A+36>>2]=P2(P2(P2(a+U2[A+36>>2])/i)*t)-a}function P0(A){return 52}function j0(A){return 6}function z0(A){A|=0,X2[6259]=X2[6259]+1,q2(X2[A-4>>2])}function O0(A,e){e|=0;var r;X2[(A|=0)>>2]=0,X2[A+4>>2]=0,X2[(r=A+8|0)>>2]=0,X2[4+r>>2]=0,X2[(X2[e+60>>2]<<2)+A>>2]=1065353216}function K0(A,e){P2(e)}function L0(A){return 60}function q0(A,e,r){A|=0,e=P2(e),X2[(r|=0)>>2]=0,X2[r+4>>2]=0,X2[(A=r+8|0)>>2]=0,X2[A+4>>2]=0}function $0(A){var e;(e=X2[A>>2])&&A1(A,e),(e=X2[A+4>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+4>>2]=0,X2[A+8>>2]=-1,(e=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+16>>2]=0,X2[A+32>>2]=0,S2[A+36|0]=1,X2[(A=A+24|0)>>2]=0,X2[A+4>>2]=0}function A1(A,e){var r;X2[e+40>>2]&&(A1(A,X2[e+36>>2]),A1(A,X2[e+40>>2])),X2[A>>2]==(0|e)&&(X2[A>>2]=0),(r=X2[A+4>>2])&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+4>>2]=e}function e1(A){var e;(e=X2[A>>2])&&A1(A,e),(e=X2[A+4>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+4>>2]=0,X2[A+8>>2]=-1,(e=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+32>>2]=0,X2[A+16>>2]=0,S2[A+36|0]=1,X2[(A=A+24|0)>>2]=0,X2[A+4>>2]=0}function r1(A,e){var r,f,i,a,n,b,t,o,c,k,u,s,l=0,B=0,v=0,d=0,Z=0,_=0;K2=s=K2-32|0;A:if(!((0|(e=(0|e)<=-1?X2[A+12>>2]:e))<1)&&(l=X2[A>>2]))for(;;){if(X2[(d=l+40|0)>>2])for(_=0;;)if((v=X2[l+32>>2])>>>0<=l>>>0?v=l:(f=(0|(r=X2[v+40>>2]))==(0|l),a=X2[36+((i=((0|l)!=(0|r))<<2)+v|0)>>2],Z=A,(B=X2[v+32>>2])&&(Z=36+(B+((X2[B+40>>2]==(0|v))<<2)|0)|0),X2[Z>>2]=l,X2[a+32>>2]=l,X2[v+32>>2]=l,X2[l+32>>2]=B,X2[v+36>>2]=X2[l+36>>2],X2[v+40>>2]=X2[d>>2],X2[X2[l+36>>2]+32>>2]=v,X2[X2[d>>2]+32>>2]=v,X2[(r=l+36|0)+(f<<2)>>2]=v,X2[r+i>>2]=a,d=X2[4+(r=v+24|0)>>2],o=X2[r>>2],X2[(B=24+s|0)>>2]=o,X2[B+4>>2]=d,a=X2[(B=v+16|0)+4>>2],c=X2[B>>2],X2[(f=16+s|0)>>2]=c,X2[4+f>>2]=a,i=X2[4+(f=v+8|0)>>2],k=X2[f>>2],X2[(n=8+s|0)>>2]=k,X2[4+n>>2]=i,n=X2[v+4>>2],u=X2[v>>2],X2[s>>2]=u,X2[4+s>>2]=n,b=X2[(Z=t=l+24|0)+4>>2],X2[r>>2]=X2[Z>>2],X2[4+r>>2]=b,b=X2[4+(r=l+16|0)>>2],X2[B>>2]=X2[r>>2],X2[B+4>>2]=b,b=X2[(B=l+8|0)+4>>2],X2[f>>2]=X2[B>>2],X2[4+f>>2]=b,f=X2[l+4>>2],X2[v>>2]=X2[l>>2],X2[v+4>>2]=f,X2[t>>2]=o,X2[4+t>>2]=d,X2[r>>2]=c,X2[4+r>>2]=a,X2[B>>2]=k,X2[B+4>>2]=i,X2[l>>2]=u,X2[l+4>>2]=n),l=X2[A+16>>2]>>>_|0,_=_+1&31,l=X2[36+(((1&l)<<2)+v|0)>>2],!X2[(d=l+40|0)>>2])break;if(B=0,i1(Z=A,B=f1(A,l)?X2[A>>2]:B,l),X2[A+16>>2]=X2[A+16>>2]+1,!(e=e-1|0))break A;l=X2[A>>2]}K2=32+s|0}function f1(A,e){var r,f,i,a,n,b,t,o,c,k,u,s,l,B,v=0,d=0;P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);if(X2[A>>2]==(0|e))return X2[A>>2]=0;if(d=X2[e+32>>2],v=X2[36+(((X2[d+40>>2]!=(0|e))<<2)+d|0)>>2],e=X2[d+32>>2]){for(X2[36+((((0|d)==X2[e+40>>2])<<2)+e|0)>>2]=v,X2[v+32>>2]=e,(v=X2[A+4>>2])&&(X2[6259]=X2[6259]+1,q2(X2[v-4>>2])),X2[A+4>>2]=d;;){if(B=U2[e>>2],v=X2[e+36>>2],r=U2[v>>2],d=X2[e+40>>2],o=U2[d>>2],U2[e>>2]=r=r>2],f=U2[v+16>>2],c=U2[d+16>>2],U2[e+16>>2]=f=c>2],i=U2[v+4>>2],k=U2[d+4>>2],U2[e+4>>2]=i=i>2],n=U2[v+20>>2],u=U2[d+20>>2],U2[a>>2]=n=u>2],b=U2[v+8>>2],s=U2[d+8>>2],U2[e+8>>2]=b=b>2],t=U2[v+24>>2],l=U2[d+24>>2],U2[a>>2]=t=l>2]))break}return X2[A>>2]}return X2[v+32>>2]=0,X2[A>>2]=v,(e=X2[A+4>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]),v=X2[A>>2]),X2[A+4>>2]=d,v}function i1(A,e,r){var f,i=0,a=P2(0),n=P2(0),b=P2(0),t=0;if(X2[A>>2]){if(i=X2[e+40>>2])for(n=P2(U2[r>>2]+U2[r+16>>2]),a=P2(U2[r+8>>2]+U2[r+24>>2]),b=P2(U2[r+4>>2]+U2[r+20>>2]);;)if(t=e+36|0,e=X2[e+36>>2],e=X2[t+(!(P2(P2(P2(j2(P2(n-P2(U2[e>>2]+U2[e+16>>2]))))+P2(j2(P2(b-P2(U2[e+4>>2]+U2[e+20>>2])))))+P2(j2(P2(a-P2(U2[e+8>>2]+U2[e+24>>2])))))>2]+U2[i+16>>2]))))+P2(j2(P2(b-P2(U2[i+4>>2]+U2[i+20>>2])))))+P2(j2(P2(a-P2(U2[i+8>>2]+U2[i+24>>2]))))))<<2)>>2],!(i=X2[e+40>>2]))break;t=X2[e+32>>2],(i=X2[A+4>>2])?X2[A+4>>2]=0:(X2[6258]=X2[6258]+1,i=0,(f=L2(63))&&(X2[(i=f+19&-16)-4>>2]=f),X2[i>>2]=0,X2[i+4>>2]=0,X2[i+40>>2]=0,X2[(f=i+32|0)>>2]=0,X2[4+f>>2]=0,X2[(f=i+24|0)>>2]=0,X2[4+f>>2]=0,X2[(f=i+16|0)>>2]=0,X2[4+f>>2]=0,X2[(f=i+8|0)>>2]=0,X2[4+f>>2]=0),X2[i+36>>2]=0,X2[i+40>>2]=0,n=U2[r>>2],a=U2[e>>2],U2[i>>2]=n>2],a=U2[e+16>>2],U2[i+16>>2]=a>2],a=U2[e+4>>2],U2[i+4>>2]=n>2],a=U2[e+20>>2],U2[i+20>>2]=a>2],a=U2[e+8>>2],U2[i+8>>2]=n>2]=t,n=U2[r+24>>2],a=U2[e+24>>2],U2[i+24>>2]=a>2]+40>>2]==(0|e))<<2)+t|0)>>2]=i,X2[i+36>>2]=e,X2[e+32>>2]=i,X2[i+40>>2]=r,X2[r+32>>2]=i,n=U2[i>>2];;){if(A=i,U2[(i=t)>>2]<=n&&U2[i+4>>2]<=U2[A+4>>2]&&U2[i+8>>2]<=U2[A+8>>2]&&U2[i+16>>2]>=U2[A+16>>2]&&U2[i+20>>2]>=U2[A+20>>2]&&U2[i+24>>2]>=U2[A+24>>2])break A;if(A=X2[i+36>>2],n=U2[A>>2],e=X2[i+40>>2],a=U2[e>>2],U2[i>>2]=n=n>2],b=U2[e+16>>2],U2[i+16>>2]=b>2],b=U2[e+4>>2],U2[i+4>>2]=a>2],b=U2[e+20>>2],U2[i+20>>2]=b>2],b=U2[e+8>>2],U2[i+8>>2]=a>2],b=U2[e+24>>2],U2[i+24>>2]=b>2]))break}else X2[i+36>>2]=e,X2[e+32>>2]=i,X2[i+40>>2]=r,X2[A>>2]=i,X2[r+32>>2]=i}else X2[r+32>>2]=0,X2[A>>2]=r}function a1(A,e){return 1}function n1(A){var e=0;return X2[(A|=0)>>2]=11628,(e=X2[A+72>>2])&&($0(e),(e=X2[A+72>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]))),(e=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+32>>2]=0,S2[A+36|0]=1,X2[(e=A+24|0)>>2]=0,(X2[e+4>>2]=0)|A}function b1(A,e){var r,f,i,a,n,b,t,o,c,k,u,s,l,B=0,v=0,d=0,Z=0,_=0;K2=l=K2-80|0,X2[A+76>>2]=X2[A+76>>2]+1,(r=X2[A+72>>2])&&(f1(r,B=X2[76+(X2[A+32>>2]+H2(e,80)|0)>>2]),(d=X2[r+4>>2])&&(X2[6259]=X2[6259]+1,q2(X2[d-4>>2])),X2[r+4>>2]=B,X2[r+12>>2]=X2[r+12>>2]-1),B=X2[A+24>>2],k=H2(e,80),n=X2[(u=A+32|0)>>2],Z=X2[4+(f=8+(r=k+n|0)|0)>>2],X2[(d=8+l|0)>>2]=X2[f>>2],X2[d+4>>2]=Z,b=X2[4+(i=24+r|0)>>2],X2[(Z=t=24+l|0)>>2]=X2[i>>2],X2[4+Z>>2]=b,_=X2[4+(o=40+r|0)>>2],X2[(Z=40+l|0)>>2]=X2[o>>2],X2[4+Z>>2]=_,v=X2[4+(a=56+r|0)>>2],X2[(_=b=56+l|0)>>2]=X2[a>>2],X2[4+_>>2]=v,s=X2[4+(c=72+r|0)>>2],X2[(v=_=72+l|0)>>2]=X2[c>>2],X2[4+v>>2]=s,v=X2[4+r>>2],X2[l>>2]=X2[r>>2],X2[4+l>>2]=v,v=X2[20+r>>2],X2[16+l>>2]=X2[16+r>>2],X2[20+l>>2]=v,v=X2[36+r>>2],X2[32+l>>2]=X2[32+r>>2],X2[36+l>>2]=v,v=X2[52+r>>2],X2[48+l>>2]=X2[48+r>>2],X2[52+l>>2]=v,v=X2[68+r>>2],X2[64+l>>2]=X2[64+r>>2],X2[68+l>>2]=v,v=H2(B,80)-80|0,s=X2[(B=v+n|0)+68>>2],X2[64+r>>2]=X2[B+64>>2],X2[68+r>>2]=s,s=X2[4+(n=B+8|0)>>2],X2[f>>2]=X2[n>>2],X2[4+f>>2]=s,f=X2[B+4>>2],X2[r>>2]=X2[B>>2],X2[4+r>>2]=f,n=X2[4+(f=B+24|0)>>2],X2[i>>2]=X2[f>>2],X2[4+i>>2]=n,f=X2[B+20>>2],X2[16+r>>2]=X2[B+16>>2],X2[20+r>>2]=f,i=X2[4+(f=B+40|0)>>2],X2[o>>2]=X2[f>>2],X2[4+o>>2]=i,f=X2[B+36>>2],X2[32+r>>2]=X2[B+32>>2],X2[36+r>>2]=f,i=X2[4+(f=B+56|0)>>2],X2[a>>2]=X2[f>>2],X2[4+a>>2]=i,f=X2[B+52>>2],X2[48+r>>2]=X2[B+48>>2],X2[52+r>>2]=f,B=X2[4+(r=B+72|0)>>2],X2[c>>2]=X2[r>>2],X2[4+c>>2]=B,f=X2[4+l>>2],r=v+X2[u>>2]|0,X2[r>>2]=X2[l>>2],X2[4+r>>2]=f,f=X2[d+4>>2],X2[(B=8+r|0)>>2]=X2[d>>2],X2[B+4>>2]=f,d=X2[4+t>>2],X2[(B=24+r|0)>>2]=X2[t>>2],X2[B+4>>2]=d,B=X2[20+l>>2],X2[16+r>>2]=X2[16+l>>2],X2[20+r>>2]=B,d=X2[4+Z>>2],X2[(B=40+r|0)>>2]=X2[Z>>2],X2[B+4>>2]=d,B=X2[36+l>>2],X2[32+r>>2]=X2[32+l>>2],X2[36+r>>2]=B,d=X2[4+b>>2],X2[(B=56+r|0)>>2]=X2[b>>2],X2[B+4>>2]=d,B=X2[52+l>>2],X2[48+r>>2]=X2[48+l>>2],X2[52+r>>2]=B,d=X2[4+_>>2],X2[(B=72+r|0)>>2]=X2[_>>2],X2[B+4>>2]=d,B=X2[68+l>>2],X2[64+r>>2]=X2[64+l>>2],X2[68+r>>2]=B,X2[A+72>>2]&&(X2[X2[76+(X2[A+32>>2]+k|0)>>2]+36>>2]=e),X2[A+24>>2]=X2[A+24>>2]-1,K2=80+l|0}function t1(A,e,r,f,i,a,n,b,t,o){e|=0,f|=0,i|=0,a|=0,n|=0,b|=0,t|=0,A=X2[(A|=0)+32>>2]+((o|=0)<<5)|0,X2[(r|=0)>>2]=X2[A+12>>2],X2[i>>2]=X2[A+20>>2],X2[e>>2]=X2[A+16>>2],X2[f>>2]=X2[A+28>>2],X2[b>>2]=X2[A>>2],X2[a>>2]=X2[A+4>>2],X2[t>>2]=X2[A+24>>2],X2[n>>2]=X2[A+8>>2]}function o1(A,e){0}function c1(A){var e;return X2[(A|=0)>>2]=12152,(e=X2[A+156>>2])&&J2[A+160|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+156>>2]=0,S2[A+160|0]=1,X2[(e=A+148|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+136>>2])&&J2[A+140|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+136>>2]=0,S2[A+140|0]=1,X2[(e=A+128|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+116>>2])&&J2[A+120|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+116>>2]=0,S2[A+120|0]=1,X2[(e=A+108|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+96>>2])&&J2[A+100|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+96>>2]=0,X2[A>>2]=12040,S2[A+100|0]=1,X2[(e=A+88|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+32>>2]=0,S2[A+36|0]=1,X2[(e=A+24|0)>>2]=0,(X2[4+e>>2]=0)|A}function k1(A){return X2[(A|=0)+24>>2]}function u1(A,e){var r,f=0,i=0,a=0,n=0,b=0,t=0;if(J2[A+164|0]){if((0|(a=X2[A+128>>2]))==X2[A+132>>2]&&!((0|(n=a?a<<1:1))<=(0|a))){n&&(X2[6258]=X2[6258]+1,(f=L2(19+(n<<2)|0))&&(X2[(i=f+19&-16)-4>>2]=f)),b=X2[A+136>>2];A:{if(1<=(0|a)){for(f=i,t=b;;)if(X2[f>>2]=X2[t>>2],f=f+4|0,t=t+4|0,!(a=a-1|0))break}else if(!b)break A;J2[A+140|0]&&(X2[6259]=X2[6259]+1,q2(X2[b-4>>2])),a=X2[A+128>>2]}X2[A+136>>2]=i,X2[A+132>>2]=n,S2[A+140|0]=1}i=X2[A+136>>2],X2[i+(a<<2)>>2]=e,X2[X2[A+32>>2]+4>>2]=i,X2[A+128>>2]=X2[A+128>>2]+1}else{if((0|(i=X2[A+148>>2]))==X2[A+152>>2]&&!((0|(r=i?i<<1:1))<=(0|i))){r&&(X2[6258]=X2[6258]+1,(f=L2(19+(r<<1)|0))&&(X2[(n=f+19&-16)-4>>2]=f)),b=X2[A+156>>2];A:{if(1<=(0|i)){for(f=n,t=b,a=i;;)if($[f>>1]=A2[t>>1],f=f+2|0,t=t+2|0,!(a=a-1|0))break}else if(!b)break A;J2[A+160|0]&&(X2[6259]=X2[6259]+1,q2(X2[b-4>>2]),i=X2[A+148>>2])}X2[A+156>>2]=n,X2[A+152>>2]=r,S2[A+160|0]=1}X2[A+148>>2]=i+1,f=X2[A+32>>2],A=X2[A+156>>2],X2[f+4>>2]=A,$[A+(i<<1)>>1]=e}}function s1(A,e,r){var f=0,i=0,a=0,n=0,b=0,t=0,o=P2(0),c=P2(0),k=P2(0),u=P2(0),s=P2(0),l=P2(0);A:{if(J2[A+165|0]){if(!((0|(a=X2[A+88>>2]))<1)&&r)for(r=X2[A+96>>2],k=U2[A+168>>2],u=U2[e+8>>2],s=U2[e+4>>2],l=U2[e>>2];;){if(o=P2(U2[r>>2]-l),c=P2(o*o),o=P2(U2[r+4>>2]-s),c=P2(c+P2(o*o)),o=P2(U2[r+8>>2]-u),k>=P2(c+P2(o*o)))break A;if(r=r+16|0,(0|(b=b+1|0))==(0|a))break}if(r=X2[A+32>>2],X2[r+12>>2]=X2[r+12>>2]+1,X2[A+92>>2]==(0|a)&&!((0|(b=a?a<<1:1))<=(0|a))){if(b&&(X2[6258]=X2[6258]+1,(r=L2(19+(b<<4)|0))&&(X2[(f=r+19&-16)-4>>2]=r)),1<=(0|a))for(r=0;;)if(i=X2[A+96>>2]+r|0,n=X2[i+4>>2],X2[(t=r+f|0)>>2]=X2[i>>2],X2[t+4>>2]=n,n=X2[(i=i+8|0)+4>>2],X2[(t=t+8|0)>>2]=X2[i>>2],X2[t+4>>2]=n,r=r+16|0,!(a=a-1|0))break;(r=X2[A+96>>2])&&J2[A+100|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+96>>2]=f,X2[A+92>>2]=b,S2[A+100|0]=1,a=X2[A+88>>2]}return r=X2[e+4>>2],f=X2[(n=A+96|0)>>2]+(a<<4)|0,X2[f>>2]=X2[e>>2],X2[f+4>>2]=r,e=X2[(r=e+8|0)+4>>2],X2[(f=f+8|0)>>2]=X2[r>>2],X2[f+4>>2]=e,X2[X2[A+32>>2]+16>>2]=X2[n>>2],A=X2[(e=A)+88>>2],X2[e+88>>2]=A+1,A}if(!((0|(i=X2[A+108>>2]))<1)&&r)for(r=X2[A+116>>2],k=U2[A+168>>2],u=U2[e+8>>2],s=U2[e+4>>2],l=U2[e>>2];;){if(o=P2(U2[r>>2]-l),c=P2(o*o),o=P2(U2[r+4>>2]-s),c=P2(c+P2(o*o)),o=P2(U2[r+8>>2]-u),k>=P2(c+P2(o*o)))break A;if(r=r+12|0,b=b+1|0,!((0|(a=a+3|0))<(0|i)))break}if((0|i)==(0|(f=X2[A+112>>2])))if((0|(f=i?i<<1:1))<=(0|i))f=i;else{f&&(X2[6258]=X2[6258]+1,(r=L2(19+(f<<2)|0))&&(X2[(n=r+19&-16)-4>>2]=r)),t=X2[A+116>>2];e:{if(1<=(0|i)){for(r=n,b=t,a=i;;)if(U2[r>>2]=U2[b>>2],r=r+4|0,b=b+4|0,!(a=a-1|0))break}else if(!t)break e;J2[A+120|0]&&(X2[6259]=X2[6259]+1,q2(X2[t-4>>2]),i=X2[A+108>>2])}X2[A+116>>2]=n,X2[A+112>>2]=f,S2[A+120|0]=1}if(X2[A+108>>2]=r=i+1|0,t=X2[A+116>>2],U2[t+(i<<2)>>2]=U2[e>>2],(0|r)!=(0|f))i=f,n=t,f=r;else if((0|(i=f?f<<1:1))<=(0|f))i=f,n=t;else{n=0,i&&(X2[6258]=X2[6258]+1,(r=L2(19+(i<<2)|0))&&(X2[(n=r+19&-16)-4>>2]=r,t=X2[A+116>>2]));e:{if(1<=(0|f)){for(r=n,b=t,a=f;;)if(U2[r>>2]=U2[b>>2],r=r+4|0,b=b+4|0,!(a=a-1|0))break}else if(!t)break e;J2[A+120|0]&&(X2[6259]=X2[6259]+1,q2(X2[t-4>>2]),f=X2[A+108>>2])}X2[A+116>>2]=n,X2[A+112>>2]=i,S2[A+120|0]=1}if(X2[A+108>>2]=r=f+1|0,U2[(f<<2)+n>>2]=U2[e+4>>2],(0|r)!=(0|i))f=n,i=r;else if((0|(t=i?i<<1:1))<=(0|i))f=n;else{f=0,t&&(X2[6258]=X2[6258]+1,(r=L2(19+(t<<2)|0))&&(X2[(f=r+19&-16)-4>>2]=r,n=X2[A+116>>2]));e:{if(1<=(0|i)){for(r=f,b=n,a=i;;)if(U2[r>>2]=U2[b>>2],r=r+4|0,b=b+4|0,!(a=a-1|0))break}else if(!n)break e;J2[A+120|0]&&(X2[6259]=X2[6259]+1,q2(X2[n-4>>2]),i=X2[A+108>>2])}X2[A+116>>2]=f,X2[A+112>>2]=t,S2[A+120|0]=1}X2[A+108>>2]=r=i+1|0,U2[(i<<2)+f>>2]=U2[e+8>>2],A=X2[A+32>>2],X2[A+16>>2]=f,X2[A+12>>2]=X2[A+12>>2]+1,b=((0|r)/3|0)-1|0}return b}function l1(A,e){var r,f,i,a;K2=a=K2-48|0,i=X2[(e|=0)+4>>2],f=X2[(A|=0)+56>>2],X2[(r=f)+4>>2]=X2[e>>2],X2[r+8>>2]=i,r=X2[(e=e+8|0)+4>>2],X2[(f=f+12|0)>>2]=X2[e>>2],X2[4+f>>2]=r,X2[44+a>>2]=0,X2[36+a>>2]=0,X2[40+a>>2]=0,X2[32+a>>2]=1065353216,N2[X2[X2[A>>2]+68>>2]](16+a|0,A,32+a|0),U2[A+40>>2]=U2[16+a>>2]+U2[A+20>>2],X2[32+a>>2]=-1082130432,N2[X2[X2[A>>2]+68>>2]](a,A,32+a|0),r=X2[4+(f=8+a|0)>>2],X2[(e=24+a|0)>>2]=X2[f>>2],X2[e+4>>2]=r,r=X2[4+a>>2],X2[16+a>>2]=X2[a>>2],X2[20+a>>2]=r,U2[A+24>>2]=U2[16+a>>2]-U2[A+20>>2],X2[(r=40+a|0)>>2]=0,X2[4+r>>2]=0,X2[32+a>>2]=0,X2[36+a>>2]=0,X2[36+a>>2]=1065353216,N2[X2[X2[A>>2]+68>>2]](16+a|0,A,32+a|0),U2[A+44>>2]=U2[20+a>>2]+U2[A+20>>2],X2[36+a>>2]=-1082130432,N2[X2[X2[A>>2]+68>>2]](a,A,32+a|0),i=X2[4+f>>2],X2[e>>2]=X2[f>>2],X2[e+4>>2]=i,i=X2[4+a>>2],X2[16+a>>2]=X2[a>>2],X2[20+a>>2]=i,U2[A+28>>2]=U2[20+a>>2]-U2[A+20>>2],X2[r>>2]=0,X2[4+r>>2]=0,X2[r>>2]=1065353216,X2[32+a>>2]=0,X2[36+a>>2]=0,N2[X2[X2[A>>2]+68>>2]](16+a|0,A,32+a|0),X2[r>>2]=-1082130432,U2[A+48>>2]=U2[e>>2]+U2[A+20>>2],N2[X2[X2[A>>2]+68>>2]](a,A,32+a|0),r=X2[4+f>>2],X2[e>>2]=X2[f>>2],X2[e+4>>2]=r,f=X2[4+a>>2],X2[16+a>>2]=X2[a>>2],X2[20+a>>2]=f,U2[A+32>>2]=U2[e>>2]-U2[A+20>>2],K2=48+a|0}function B1(A){var e;return X2[(A|=0)>>2]=12576,(e=X2[A+160>>2])&&J2[A+164|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+160>>2]=0,S2[A+164|0]=1,X2[(e=A+152|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+136>>2])&&J2[A+140|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+136>>2]=0,S2[A+140|0]=1,X2[(e=A+128|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+116>>2])&&J2[A+120|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+116>>2]=0,S2[A+120|0]=1,X2[(e=A+108|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+96>>2])&&J2[A+100|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+96>>2]=0,S2[A+100|0]=1,X2[(e=A+88|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+76>>2])&&J2[A+80|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+76>>2]=0,S2[A+80|0]=1,X2[(e=A+68|0)>>2]=0,(X2[4+e>>2]=0)|A}function v1(A,e,r,f){e|=0,r|=0,f|=0;var i=0,a=0,n=0,b=0,t=0,o=0,c=0,k=0;if(X2[(A|=0)+168>>2]=X2[A+152>>2],S2[e+80|0]=1,S2[e+60|0]=0,X2[e+52>>2]=287,X2[e>>2]=12576,X2[e+76>>2]=0,S2[e+100|0]=1,X2[e+68>>2]=0,X2[e+72>>2]=0,X2[e+96>>2]=0,S2[e+120|0]=1,X2[e+88>>2]=0,X2[e+92>>2]=0,X2[e+116>>2]=0,S2[e+140|0]=1,X2[e+108>>2]=0,X2[e+112>>2]=0,X2[e+136>>2]=0,X2[e+144>>2]=0,S2[e+164|0]=1,X2[e+128>>2]=0,X2[e+132>>2]=0,X2[e+152>>2]=0,X2[e+156>>2]=0,X2[e+4>>2]=-8388609,X2[e+8>>2]=-8388609,X2[e+12>>2]=-8388609,X2[e+16>>2]=0,X2[e+20>>2]=2139095039,X2[e+24>>2]=2139095039,X2[e+28>>2]=2139095039,X2[e+32>>2]=0,X2[e+168>>2]=0,X2[e+160>>2]=0,r=X2[A+56>>2],r=f?(X2[e+56>>2]=r<<8&16711680|r<<24|r>>>8&65280|r>>>24,S2[e+4|0]=J2[A+7|0],S2[e+5|0]=J2[A+6|0],S2[e+6|0]=J2[A+5|0],S2[e+7|0]=J2[A+4|0],S2[e+8|0]=J2[A+11|0],S2[e+9|0]=J2[A+10|0],S2[e+10|0]=J2[A+9|0],S2[e+11|0]=J2[A+8|0],S2[e+12|0]=J2[A+15|0],S2[e+13|0]=J2[A+14|0],S2[e+14|0]=J2[A+13|0],S2[e+15|0]=J2[A+12|0],S2[e+16|0]=J2[A+19|0],S2[e+17|0]=J2[A+18|0],S2[e+18|0]=J2[A+17|0],S2[e+19|0]=J2[A+16|0],S2[e+20|0]=J2[A+23|0],S2[e+21|0]=J2[A+22|0],S2[e+22|0]=J2[A+21|0],S2[e+23|0]=J2[A+20|0],S2[e+24|0]=J2[A+27|0],S2[e+25|0]=J2[A+26|0],S2[e+26|0]=J2[A+25|0],S2[e+27|0]=J2[A+24|0],S2[e+28|0]=J2[A+31|0],S2[e+29|0]=J2[A+30|0],S2[e+30|0]=J2[A+29|0],S2[e+31|0]=J2[A+28|0],S2[e+32|0]=J2[A+35|0],S2[e+33|0]=J2[A+34|0],S2[e+34|0]=J2[A+33|0],S2[e+35|0]=J2[A+32|0],S2[e+36|0]=J2[A+39|0],S2[e+37|0]=J2[A+38|0],S2[e+38|0]=J2[A+37|0],S2[e+39|0]=J2[A+36|0],S2[e+40|0]=J2[A+43|0],S2[e+41|0]=J2[A+42|0],S2[e+42|0]=J2[A+41|0],S2[e+43|0]=J2[A+40|0],S2[e+44|0]=J2[A+47|0],S2[e+45|0]=J2[A+46|0],S2[e+46|0]=J2[A+45|0],S2[e+47|0]=J2[A+44|0],S2[e+48|0]=J2[A+51|0],S2[e+49|0]=J2[A+50|0],S2[e+50|0]=J2[A+49|0],S2[e+51|0]=J2[A+48|0],r=X2[A+144>>2],X2[e+144>>2]=r<<24|r<<8&16711680|r>>>8&65280|r>>>24,(r=X2[A+168>>2])<<24|r<<8&16711680|r>>>8&65280|r>>>24):(X2[e+56>>2]=r,i=X2[(t=A+12|0)+4>>2],X2[(o=(r=e+4|0)+8|0)>>2]=X2[t>>2],X2[o+4>>2]=i,o=X2[A+8>>2],X2[r>>2]=X2[A+4>>2],X2[r+4>>2]=o,i=X2[(t=A+28|0)+4>>2],X2[(o=(r=e+20|0)+8|0)>>2]=X2[t>>2],X2[o+4>>2]=i,o=X2[A+24>>2],X2[r>>2]=X2[A+20>>2],X2[r+4>>2]=o,r=X2[A+40>>2],X2[e+36>>2]=X2[A+36>>2],X2[e+40>>2]=r,t=X2[(o=A+44|0)+4>>2],X2[(r=e+44|0)>>2]=X2[o>>2],X2[r+4>>2]=t,X2[e+144>>2]=X2[A+144>>2],X2[A+168>>2]),S2[e+60|0]=J2[A+60|0],X2[e+168>>2]=r,t=e+172|0,o=X2[A+56>>2],J2[A+60|0]){if((r=X2[e+136>>2])&&J2[e+140|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[e+136>>2]=t,S2[e+140|0]=0,f){if(!((0|o)<1))for(c=X2[A+136>>2],i=o;;)if(n=A2[(a=b+c|0)>>1],$[(r=e+b|0)+172>>1]=(n<<24|n<<8&16711680)>>>16,n=A2[a+2>>1],$[r+174>>1]=(n<<24|n<<8&16711680)>>>16,n=A2[a+4>>1],$[r+176>>1]=(n<<24|n<<8&16711680)>>>16,n=A2[a+6>>1],$[r+178>>1]=(n<<24|n<<8&16711680)>>>16,n=A2[a+8>>1],$[r+180>>1]=(n<<24|n<<8&16711680)>>>16,n=X2[a+12>>2],X2[r+184>>2]=n<<24|n<<8&16711680|n>>>8&65280|n>>>24,n=r+182|0,r=A2[a+10>>1],$[n>>1]=(r<<24|r<<8&16711680)>>>16,b=b+16|0,!(i=i-1|0))break}else if(!((0|o)<1))for(n=X2[A+136>>2],r=o;;)if($[(i=e+b|0)+172>>1]=A2[(a=n+b|0)>>1],$[i+174>>1]=A2[a+2>>1],$[i+176>>1]=A2[a+4>>1],$[i+178>>1]=A2[a+6>>1],$[i+180>>1]=A2[a+8>>1],X2[i+184>>2]=X2[a+12>>2],$[i+182>>1]=A2[a+10>>1],b=b+16|0,!(r=r-1|0))break;n=e+128|0,b=o<<4}else{(r=X2[e+96>>2])&&J2[e+100|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[e+96>>2]=t,S2[e+100|0]=0,X2[e+92>>2]=o,X2[e+88>>2]=o;A:{e:{if(!f){if(1<=(0|o))break e;r=t;break A}if((0|o)<1){r=t;break A}for(a=X2[A+96>>2],b=40,i=o,r=t;;)if(S2[(r=r+b|0)-40|0]=J2[(a=a+b|0)-37|0],S2[r-39|0]=J2[a-38|0],S2[r-38|0]=J2[a-39|0],S2[r-37|0]=J2[a-40|0],S2[r-36|0]=J2[a-33|0],S2[r-35|0]=J2[a-34|0],S2[r-34|0]=J2[a-35|0],S2[r-33|0]=J2[a-36|0],S2[r-32|0]=J2[a-29|0],S2[r-31|0]=J2[a-30|0],S2[r-30|0]=J2[a-31|0],S2[r-29|0]=J2[a-32|0],S2[r-28|0]=J2[a-25|0],S2[r-27|0]=J2[a-26|0],S2[r-26|0]=J2[a-27|0],S2[r-25|0]=J2[a-28|0],r=X2[e+96>>2]+b|0,a=X2[A+96>>2]+b|0,S2[r-24|0]=J2[a-21|0],S2[r-23|0]=J2[a-22|0],S2[r-22|0]=J2[a-23|0],S2[r-21|0]=J2[a-24|0],S2[r-20|0]=J2[a-17|0],S2[r-19|0]=J2[a-18|0],S2[r-18|0]=J2[a-19|0],S2[r-17|0]=J2[a-20|0],S2[r-16|0]=J2[a-13|0],S2[r-15|0]=J2[a-14|0],S2[r-14|0]=J2[a-15|0],S2[r-13|0]=J2[a-16|0],S2[r-12|0]=J2[a-9|0],S2[r-11|0]=J2[a-10|0],S2[r-10|0]=J2[a-11|0],S2[r-9|0]=J2[a-12|0],r=X2[e+96>>2],a=X2[A+96>>2],n=X2[(k=b+a|0)>>2],X2[(c=b+r|0)>>2]=n<<24|n<<8&16711680|n>>>8&65280|n>>>24,n=X2[k-8>>2],X2[c-8>>2]=n<<24|n<<8&16711680|n>>>8&65280|n>>>24,n=X2[k-4>>2],X2[c-4>>2]=n<<24|n<<8&16711680|n>>>8&65280|n>>>24,b=b- -64|0,!(i=i-1|0))break;break A}for(i=X2[A+96>>2],n=40,a=o,r=t;;)if(b=X2[(i=(i+n|0)-40|0)+4>>2],X2[(r=(r+n|0)-40|0)>>2]=X2[i>>2],X2[r+4>>2]=b,b=X2[(i=i+8|0)+4>>2],X2[(r=r+8|0)>>2]=X2[i>>2],X2[r+4>>2]=b,i=(X2[A+96>>2]+n|0)-24|0,b=X2[i+4>>2],r=(X2[e+96>>2]+n|0)-24|0,X2[r>>2]=X2[i>>2],X2[r+4>>2]=b,b=X2[(i=i+8|0)+4>>2],X2[(r=r+8|0)>>2]=X2[i>>2],X2[r+4>>2]=b,r=X2[e+96>>2],i=X2[A+96>>2],X2[(b=n+r|0)>>2]=X2[(c=i+n|0)>>2],X2[b-4>>2]=X2[c-4>>2],X2[b-8>>2]=X2[c-8>>2],n=n- -64|0,!(a=a-1|0))break}n=e+88|0,b=o<<6,J2[e+100|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2]))}if(X2[n>>2]=0,X2[n+4>>2]=0,S2[0|(r=n+5|0)]=0,S2[r+1|0]=0,S2[r+2|0]=0,S2[r+3|0]=0,S2[r+4|0]=0,S2[r+5|0]=0,S2[r+6|0]=0,r=b+t|(S2[r+7|0]=0),(o=X2[e+160>>2])&&J2[e+164|0]&&(X2[6259]=X2[6259]+1,q2(X2[o-4>>2])),o=e+152|0,S2[e+164|0]=0,X2[e+160>>2]=r,r=X2[A+168>>2],f){if(!((0|r)<1))for(a=e+b|0,b=X2[A+160>>2],A=0;;)if(i=A2[(t=A+b|0)>>1],$[(f=A+a|0)+172>>1]=(i<<24|i<<8&16711680)>>>16,i=A2[t+2>>1],$[f+174>>1]=(i<<24|i<<8&16711680)>>>16,i=A2[t+4>>1],$[f+176>>1]=(i<<24|i<<8&16711680)>>>16,i=A2[t+6>>1],$[f+178>>1]=(i<<24|i<<8&16711680)>>>16,i=A2[t+8>>1],$[f+180>>1]=(i<<24|i<<8&16711680)>>>16,i=X2[t+12>>2],X2[f+184>>2]=i<<24|i<<8&16711680|i>>>8&65280|i>>>24,i=X2[t+16>>2],X2[f+188>>2]=i<<24|i<<8&16711680|i>>>8&65280|i>>>24,i=f+182|0,f=A2[t+10>>1],$[i>>1]=(f<<24|f<<8&16711680)>>>16,A=A+32|0,!(r=r-1|0))break}else if(!((0|r)<1))for(i=e+b|0,a=X2[A+160>>2],r=b=0;;)if($[(f=i+b|0)+172>>1]=A2[(t=a+b|0)>>1],$[f+174>>1]=A2[t+2>>1],$[f+176>>1]=A2[t+4>>1],$[f+178>>1]=A2[t+6>>1],$[f+180>>1]=A2[t+8>>1],c=X2[(n=t+12|0)+4>>2],n=X2[n>>2],X2[f+200>>2]=0,X2[(k=f+184|0)>>2]=n,X2[k+4>>2]=c,t=A2[t+10>>1],X2[(n=f+192|0)>>2]=0,X2[n+4>>2]=0,$[f+182>>1]=t,b=b+32|0,!((0|(r=r+1|0))>2]))break;return X2[(A=o)>>2]=0,X2[A+4>>2]=0,X2[e>>2]=0,S2[0|(A=A+5|0)]=0,S2[A+1|0]=0,S2[A+2|0]=0,S2[A+3|0]=0,S2[A+4|0]=0,S2[A+5|0]=0,S2[A+6|0]=0,S2[A+7|0]=0,1}function d1(A,e,r,f,i,a,n,b){var t,o,c,k,u,s,l,B,v,d,Z,_,g,E,x,y,V,p,M,S,X,Q,w=0,G=0,C=(P2(0),P2(0)),h=P2(0),F=P2(0),Y=0,m=(P2(0),P2(0),0),N=P2(0),R=P2(0),D=P2(0),T=0,W=0,I=0;P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);K2=Q=K2-32|0;A:if(!((0|(I=X2[A+56>>2]))<1))for(t=U2[r+8>>2],R=F=P2(a-t),o=U2[r>>2],C=P2(f-o),c=U2[r+4>>2],h=P2(i-c),N=P2(P2(1)/P2(O2(P2(P2(P2(C*C)+P2(h*h))+P2(F*F))))),F=P2(F*N),C=P2((D=C)*N),h=P2((k=h)*N),k=P2(P2(R*F)+P2(P2(D*C)+P2(k*h))),N=U2[b+8>>2],l=P2((t>2],B=P2((c>2],v=P2((o>2],d=P2(t+a),t=i>2],Z=P2(t+i),t=f>2],_=P2(t+f),G=X2[A+96>>2],g=((w=(t=F==P2(0)?P2(0xde0b6b000000000):P2(P2(1)/F))>2],w=X2[w+4>>2],M=X2[G>>2],S=X2[G+4>>2],m=X2[G+20>>2],X2[u>>2]=X2[G+16>>2],X2[4+u>>2]=m,X=X2[(m=G+24|0)+4>>2],X2[(s=8+u|0)>>2]=X2[m>>2],X2[4+s>>2]=X,X2[Q>>2]=M,X2[4+Q>>2]=S,X2[8+Q>>2]=Y,X2[12+Q>>2]=w,U2[Q>>2]=U2[Q>>2]-D,U2[4+Q>>2]=U2[4+Q>>2]-R,U2[16+Q>>2]=U2[16+Q>>2]-f,U2[20+Q>>2]=U2[20+Q>>2]-i,U2[8+Q>>2]=U2[8+Q>>2]-N,U2[24+Q>>2]=U2[24+Q>>2]-a,w=0,U2[G+16>>2]<_||(w=0,U2[G>>2]>v||(w=1)),Y=0,U2[m>>2]>2]>l||(Y=w);e:{r:{f:{i:{if(!(U2[G+20>>2]>2]>B||(C=U2[r+4>>2],f=P2(o*P2(U2[E>>2]-C)),a=U2[r>>2],(i=P2(c*P2(U2[p>>2]-a)))>2]-a)),(C=P2(o*P2(U2[y>>2]-C)))>2],(i=C>2]-F)))||(f=a>2]-F)))>2])),!(Y=(fP2(0)))break i;if(-1!=(0|w))break i;N2[X2[X2[e>>2]+8>>2]](e,X2[G+36>>2],X2[G+40>>2]),I=X2[A+56>>2];break f}m=-1==(0|(w=X2[G+32>>2])),Y=0}if(!m&&!Y)break r}W=W+1|0,G=G- -64|0;break e}W=w+W|0,G=(w<<6)+G|0}if((0|I)<=(0|W))break A;T=T+1|0,a=U2[n+8>>2],i=U2[n+4>>2],f=U2[n>>2],N=U2[b+8>>2],R=U2[b+4>>2],D=U2[b>>2]}X2[6352]<(0|T)&&(X2[6352]=T),K2=32+Q|0}function Z1(A,e,r,f,i,a,n,b,t){var o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C,x,y,V,p,M,S,X,J,U,h,F=P2(0),Y=0,m=0,N=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),0),R=0,D=(P2(0),0),T=0,W=0,I=0;if(K2=h=K2-32|0,d=U2[r+4>>2],Z=U2[r>>2],k=U2[A+28>>2],l=U2[A+12>>2],_=U2[r+8>>2],F=P2((a<_?a:_)+U2[n+8>>2]),g=U2[A+44>>2],N=(F=P2(P2((k<(F=F=P2(0)?~~F>>>0:0,u=U2[A+24>>2],B=U2[A+8>>2],F=P2((i>2]),o=U2[A+40>>2],R=(F=P2(P2((u<(F=F=P2(0)?~~F>>>0:0,s=U2[A+20>>2],v=U2[A+4>>2],F=P2((f>2]),c=U2[A+36>>2],D=(F=P2(P2((s<(F=F=P2(0)?~~F>>>0:0,F=P2((_>2]),T=(F=P2(P2(P2((k<(F=F=P2(0)?~~F>>>0:0,F=P2((d>2]),m=(F=P2(P2(P2((u<(F=F=P2(0)?~~F>>>0:0,F=P2((Z>2]),Y=(F=P2(P2(P2((s<(F=F=P2(0)?~~F>>>0:0,1<=(0|t))for(a=F=P2(a-_),o=P2(f-Z),c=P2(i-d),f=P2(P2(1)/P2(O2(P2(P2(P2(o*o)+P2(c*c))+P2(F*F))))),F=P2(F*f),i=P2(o*f),f=P2(c*f),g=P2(P2(a*F)+P2(P2(o*i)+P2(c*f))),w=65534&N,G=65534&R,C=65534&D,x=1|T,y=1|m,V=1|Y,p=((m=(k=F==P2(0)?P2(0xde0b6b000000000):P2(P2(1)/F))>2],J=((m=(s=i==P2(0)?P2(0xde0b6b000000000):P2(P2(1)/i))>2],m=0;A:{e:{r:{f:if(!(A2[Y+6>>1]>>0||V>>>0<(Q=A2[Y>>1])>>>0||A2[Y+10>>1]>>0||x>>>0<(N=A2[Y+4>>1])>>>0||A2[Y+8>>1]>>0||y>>>0<(R=A2[Y+2>>1])>>>0)){if(X2[12+h>>2]=0,D=A2[Y+10>>1],T=A2[Y+8>>1],m=A2[Y+6>>1],X2[28+h>>2]=0,o=U2[A+36>>2],c=U2[A+4>>2],U2[h>>2]=P2(P2(P2(Q>>>0)/o)+c)-U2[b>>2],F=U2[A+40>>2],a=U2[A+8>>2],U2[4+h>>2]=P2(P2(P2(R>>>0)/F)+a)-U2[b+4>>2],i=U2[A+44>>2],f=U2[A+12>>2],U2[8+h>>2]=P2(P2(P2(N>>>0)/i)+f)-U2[b+8>>2],U2[16+h>>2]=P2(c+P2(P2(m>>>0)/o))-U2[n>>2],U2[20+h>>2]=P2(a+P2(P2(T>>>0)/F))-U2[n+4>>2],U2[24+h>>2]=P2(f+P2(P2(D>>>0)/i))-U2[n+8>>2],i=U2[r+4>>2],o=P2(u*P2(U2[M>>2]-i)),f=U2[r>>2],!((a=P2(s*P2(U2[U>>2]-f)))>2]-f)),(i=P2(u*P2(U2[X>>2]-i)))>2],(a=i>2]-f)))||(i=c>2]-f)))P2(0),(0|E)<0)break f;if(!m)break f;m=X2[Y+12>>2],N2[X2[X2[e>>2]+8>>2]](e,m>>21,2097151&m);break r}m=0}if(!(-1<(0|E))&&!m)break e}W=W+1|0,Y=Y+16|0;break A}W=W-(m=X2[Y+12>>2])|0,Y=Y-(m<<4)|0}if(I=I+1|0,!((0|W)<(0|t)))break}X2[6352]<(0|I)&&(X2[6352]=I),K2=32+h|0}function _1(A){return 84}function g1(A,e,r,f,i){var a,n,b,t,o,c,k,u,s=0,l=P2(0),B=(P2(0),0),v=0,d=0,Z=(P2(0),P2(0)),_=P2(0),g=0,E=0,Q=P2(0),w=P2(0),G=P2(0),C=P2(0);P2(0),P2(0),P2(0),P2(0);if(K2=u=K2-112|0,S2[A+60|0]=r){if(l=U2[f>>2],Z=U2[f+4>>2],_=U2[f+8>>2],X2[A+16>>2]=0,Q=P2(_+P2(-1)),U2[A+12>>2]=Q,Z=P2(Z+P2(-1)),U2[A+8>>2]=Z,l=P2(l+P2(-1)),U2[A+4>>2]=l,S2[A+60|0]=1,_=U2[i>>2],a=U2[i+4>>2],w=U2[i+8>>2],X2[A+32>>2]=0,o=P2(w+P2(1)),U2[A+28>>2]=o,w=P2(a+P2(1)),U2[A+24>>2]=w,_=P2(_+P2(1)),U2[A+20>>2]=_,G=P2(o-Q),C=P2(P2(65533)/G),U2[A+44>>2]=C,a=P2(P2(65533)/P2(w-Z)),U2[A+40>>2]=a,t=P2(P2(65533)/P2(_-l)),U2[A+36>>2]=t,r=(n=P2(P2(Q-Q)*C))=P2(0)?~~n>>>0:0,k=P2((65534&r)>>>0),r=(n=P2(P2((c=Z)-Z)*a))=P2(0)?~~n>>>0:0,c=P2(c+P2(P2((65534&r)>>>0)/a)),r=(n=P2(P2((a=l)-l)*t))=P2(0)?~~n>>>0:0,(a=P2(P2(a+P2(P2((65534&r)>>>0)/t))+P2(-1)))>2]=a),(a=P2(c+P2(-1)))>2]=a),(a=P2(P2(Q+P2(k/C))+P2(-1)))>2]=a,G=P2(o-a),C=P2(P2(65533)/G),Q=a),a=P2(w-Z),t=P2(P2(65533)/a),r=(a=P2(P2(t*a)+P2(1)))=P2(0)?~~a>>>0:0,t=P2(P2((1|r)>>>0)/t),l=P2(_-(a=l)),n=P2(P2(65533)/l),r=(l=P2(P2(n*l)+P2(1)))=P2(0)?~~l>>>0:0,f=!(_<(l=P2(P2(a+P2(P2((1|r)>>>0)/n))+P2(1)))),r=(G=P2(P2(C*G)+P2(1)))=P2(0)?~~G>>>0:0,f||(_=U2[A+20>>2]=l),w<(l=P2(P2(Z+t)+P2(1)))&&(w=U2[A+24>>2]=l),o<(l=P2(P2(Q+P2(P2((1|r)>>>0)/C))+P2(1)))&&(U2[A+28>>2]=l,C=P2(P2(65533)/P2(l-Q))),X2[A+48>>2]=0,U2[A+44>>2]=C,U2[A+40>>2]=P2(65533)/P2(w-Z),U2[A+36>>2]=P2(65533)/P2(_-a),X2[96+u>>2]=A,X2[92+u>>2]=A+104,X2[88+u>>2]=12800,N2[X2[X2[e>>2]+8>>2]](e,88+u|0,A+4|0,A+20|0),g=X2[A+108>>2],X2[(e=16+u|0)>>2]=0,X2[e+4>>2]=0,X2[8+u>>2]=0,((X2[12+u>>2]=0)|(f=X2[A+128>>2]))<(0|(i=g<<1))){if((0|i)>X2[A+132>>2]){if(g&&(X2[6258]=X2[6258]+1,(e=L2(g<<5|19))&&(X2[(v=e+19&-16)-4>>2]=e)),1<=(0|f))for(r=0,e=f;;)if(s=X2[A+136>>2]+r|0,d=X2[s+4>>2],X2[(B=E=r+v|0)>>2]=X2[s>>2],X2[B+4>>2]=d,B=X2[(s=s+8|0)+4>>2],X2[(E=E+8|0)>>2]=X2[s>>2],X2[E+4>>2]=B,r=r+16|0,!(e=e-1|0))break;(e=X2[A+136>>2])&&J2[A+140|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+136>>2]=v,X2[A+132>>2]=i,S2[A+140|0]=1}for(r=f<<4,e=f-(g<<1)|0;;)if(v=X2[12+u>>2],f=X2[A+136>>2]+r|0,X2[f>>2]=X2[8+u>>2],X2[f+4>>2]=v,v=X2[(s=16+u|0)+4>>2],X2[(f=f+8|0)>>2]=X2[s>>2],X2[f+4>>2]=v,r=r+16|0,!((f=e)>>>0<=(e=e+1|0)>>>0))break}X2[A+128>>2]=i}else{if(X2[104+u>>2]=12820,X2[108+u>>2]=A- -64,X2[96+u>>2]=-581039253,X2[100+u>>2]=0,X2[88+u>>2]=-581039253,X2[92+u>>2]=-581039253,X2[80+u>>2]=1566444395,X2[84+u>>2]=0,X2[72+u>>2]=1566444395,X2[76+u>>2]=1566444395,N2[X2[X2[e>>2]+8>>2]](e,104+u|0,88+u|0,72+u|0),g=X2[A+68>>2],X2[(e=u+64|0)>>2]=0,X2[e+4>>2]=0,X2[(e=56+u|0)>>2]=0,X2[e+4>>2]=0,X2[(e=48+u|0)>>2]=0,X2[e+4>>2]=0,X2[(e=40+u|0)>>2]=0,X2[e+4>>2]=0,X2[(e=32+u|0)>>2]=0,X2[e+4>>2]=0,X2[(e=24+u|0)>>2]=0,X2[e+4>>2]=0,X2[(e=16+u|0)>>2]=0,X2[e+4>>2]=0,X2[8+u>>2]=0,((X2[12+u>>2]=0)|(r=X2[A+88>>2]))<(0|(E=g<<1))){if((0|E)>X2[A+92>>2]){if(g&&(X2[6258]=X2[6258]+1,(e=L2(g<<7|19))&&(X2[(v=e+19&-16)-4>>2]=e)),1<=(0|r))for(f=0,i=r;;)if(s=X2[A+96>>2]+f|0,b=X2[s+4>>2],X2[(e=f+v|0)>>2]=X2[s>>2],X2[e+4>>2]=b,b=X2[(B=s+56|0)+4>>2],X2[(d=e+56|0)>>2]=X2[B>>2],X2[d+4>>2]=b,b=X2[(d=s+48|0)+4>>2],X2[(B=e+48|0)>>2]=X2[d>>2],X2[B+4>>2]=b,b=X2[(d=s+40|0)+4>>2],X2[(B=e+40|0)>>2]=X2[d>>2],X2[B+4>>2]=b,b=X2[(d=s+32|0)+4>>2],X2[(B=e+32|0)>>2]=X2[d>>2],X2[B+4>>2]=b,b=X2[(d=s+24|0)+4>>2],X2[(B=e+24|0)>>2]=X2[d>>2],X2[B+4>>2]=b,b=X2[(d=s+16|0)+4>>2],X2[(B=e+16|0)>>2]=X2[d>>2],X2[B+4>>2]=b,B=X2[(s=s+8|0)+4>>2],X2[(e=e+8|0)>>2]=X2[s>>2],X2[e+4>>2]=B,f=f- -64|0,!(i=i-1|0))break;(e=X2[A+96>>2])&&J2[A+100|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+96>>2]=v,X2[A+92>>2]=E,S2[A+100|0]=1}for(e=r<<6,f=r-(g<<1)|0;;)if(s=X2[12+u>>2],r=X2[A+96>>2]+e|0,X2[r>>2]=X2[8+u>>2],X2[r+4>>2]=s,v=X2[(s=u+64|0)+4>>2],X2[(i=r+56|0)>>2]=X2[s>>2],X2[i+4>>2]=v,v=X2[(s=56+u|0)+4>>2],X2[(i=r+48|0)>>2]=X2[s>>2],X2[i+4>>2]=v,v=X2[(s=48+u|0)+4>>2],X2[(i=r+40|0)>>2]=X2[s>>2],X2[i+4>>2]=v,v=X2[(s=40+u|0)+4>>2],X2[(i=r+32|0)>>2]=X2[s>>2],X2[i+4>>2]=v,v=X2[(s=32+u|0)+4>>2],X2[(i=r+24|0)>>2]=X2[s>>2],X2[i+4>>2]=v,v=X2[(s=24+u|0)+4>>2],X2[(i=r+16|0)>>2]=X2[s>>2],X2[i+4>>2]=v,s=X2[(i=16+u|0)+4>>2],X2[(r=r+8|0)>>2]=X2[i>>2],X2[r+4>>2]=s,e=e- -64|0,!((r=f)>>>0<=(f=r+1|0)>>>0))break}X2[A+88>>2]=E}!function x(A,e,r){var f,i,y,V,p,M,S,X,J,U,H,a,n=0,b=0,t=P2(0),o=0,c=0,k=0,u=0,s=0,l=P2(0),B=P2(0),v=0,d=P2(0),Z=0,_=0,g=P2(0),E=P2(0),Q=P2(0),w=P2(0),G=P2(0),C=0,h=0,F=P2(0),Y=0,m=0,N=0,R=0,D=0,T=P2(0),W=P2(0),I=P2(0),P=P2(0);if(K2=a=K2-112|0,R=X2[A+56>>2],1==(0|(k=r-e|0)))J2[A+60|0]?(e=X2[A+116>>2]+(e<<4)|0,n=X2[e+4>>2],r=X2[A+136>>2]+(R<<4)|0,X2[r>>2]=X2[e>>2],X2[r+4>>2]=n):(e=X2[A+76>>2]+(e<<6)|0,n=X2[(b=e)+4>>2],r=X2[A+96>>2]+(R<<6)|0,X2[r>>2]=X2[b>>2],X2[r+4>>2]=n,n=X2[4+(k=b+56|0)>>2],X2[(o=r+56|0)>>2]=X2[k>>2],X2[o+4>>2]=n,n=X2[4+(k=b+48|0)>>2],X2[(o=r+48|0)>>2]=X2[k>>2],X2[o+4>>2]=n,n=X2[4+(k=b+40|0)>>2],X2[(o=r+40|0)>>2]=X2[k>>2],X2[o+4>>2]=n,n=X2[4+(k=b+32|0)>>2],X2[(o=r+32|0)>>2]=X2[k>>2],X2[o+4>>2]=n,n=X2[4+(k=b+24|0)>>2],X2[(o=r+24|0)>>2]=X2[k>>2],X2[o+4>>2]=n,n=X2[4+(k=b+16|0)>>2],X2[(o=r+16|0)>>2]=X2[k>>2],X2[o+4>>2]=n),n=r+8|0,e=X2[4+(r=e+8|0)>>2],X2[n>>2]=X2[r>>2],X2[n+4>>2]=e,X2[A+56>>2]=X2[A+56>>2]+1;else{if(_=(0|e)<(0|r)){if(o=J2[A+60|0])for(n=X2[A+116>>2]+(e<<4)|0,u=r-e|0,g=U2[A+12>>2],E=U2[A+8>>2],d=U2[A+44>>2],l=U2[A+40>>2],B=U2[A+4>>2],t=U2[A+36>>2];w=P2(w+P2(P2(P2(P2(P2(A2[n+10>>1])/d)+g)+P2(P2(P2(A2[n+4>>1])/d)+g))*P2(.5))),G=P2(G+P2(P2(P2(P2(P2(A2[n+8>>1])/l)+E)+P2(P2(P2(A2[n+2>>1])/l)+E))*P2(.5))),Q=P2(Q+P2(P2(P2(P2(P2(A2[n+6>>1])/t)+B)+P2(P2(P2(A2[n>>1])/t)+B))*P2(.5))),n=n+16|0,u=u-1|0;);else for(n=X2[A+76>>2]+(e<<6)|0,u=r-e|0;w=P2(w+P2(P2(U2[n+24>>2]+U2[n+8>>2])*P2(.5))),G=P2(G+P2(P2(U2[n+20>>2]+U2[n+4>>2])*P2(.5))),Q=P2(Q+P2(P2(U2[n+16>>2]+U2[n>>2])*P2(.5))),n=n- -64|0,u=u-1|0;);if(I=P2(0|k),t=P2(P2(1)/I),w=P2(t*w),G=P2(t*G),Q=P2(t*Q),o)for(n=X2[A+116>>2]+(e<<4)|0,u=r-e|0,F=U2[A+12>>2],g=U2[A+8>>2],E=U2[A+44>>2],d=U2[A+40>>2],l=U2[A+4>>2],B=U2[A+36>>2];t=P2(P2(P2(P2(P2(P2(A2[n+10>>1])/E)+F)+P2(P2(P2(A2[n+4>>1])/E)+F))*P2(.5))-w),T=P2(T+P2(t*t)),t=P2(P2(P2(P2(P2(P2(A2[n+8>>1])/d)+g)+P2(P2(P2(A2[n+2>>1])/d)+g))*P2(.5))-G),P=P2(P+P2(t*t)),t=P2(P2(P2(P2(P2(P2(A2[n+6>>1])/B)+l)+P2(P2(P2(A2[n>>1])/B)+l))*P2(.5))-Q),W=P2(W+P2(t*t)),n=n+16|0,u=u-1|0;);else for(n=X2[A+76>>2]+(e<<6)|0,u=r-e|0;t=P2(P2(P2(U2[n+24>>2]+U2[n+8>>2])*P2(.5))-w),T=P2(T+P2(t*t)),t=P2(P2(P2(U2[n+20>>2]+U2[n+4>>2])*P2(.5))-G),P=P2(P+P2(t*t)),t=P2(P2(P2(U2[n+16>>2]+U2[n>>2])*P2(.5))-Q),W=P2(W+P2(t*t)),n=n- -64|0,u=u-1|0;);}else I=P2(0|k);if(X2[28+a>>2]=0,w=P2(0),G=P2(0),Q=P2(0),!(b=(0|r)<=(0|e)))if(J2[A+60|0])for(n=X2[A+116>>2]+(e<<4)|0,u=r-e|0,g=U2[A+12>>2],E=U2[A+8>>2],d=U2[A+44>>2],l=U2[A+40>>2],B=U2[A+4>>2],t=U2[A+36>>2];w=P2(P2(P2(P2(P2(P2(A2[n+10>>1])/d)+g)+P2(P2(P2(A2[n+4>>1])/d)+g))*P2(.5))+w),G=P2(P2(P2(P2(P2(P2(A2[n+8>>1])/l)+E)+P2(P2(P2(A2[n+2>>1])/l)+E))*P2(.5))+G),Q=P2(P2(P2(P2(P2(P2(A2[n+6>>1])/t)+B)+P2(P2(P2(A2[n>>1])/t)+B))*P2(.5))+Q),n=n+16|0,u=u-1|0;);else for(n=X2[A+76>>2]+(e<<6)|0,u=r-e|0;w=P2(P2(P2(U2[n+24>>2]+U2[n+8>>2])*P2(.5))+w),G=P2(P2(P2(U2[n+20>>2]+U2[n+4>>2])*P2(.5))+G),Q=P2(P2(P2(U2[n+16>>2]+U2[n>>2])*P2(.5))+Q),n=n- -64|0,u=u-1|0;);if(t=P2(P2(1)/P2(0|k)),U2[24+a>>2]=t*w,U2[20+a>>2]=t*G,U2[16+a>>2]=t*Q,u=R,o=e,!b){for(l=P2(P2(1)/P2(I+P2(-1))),b=(B=P2(l*P))<(t=P2(l*T))?2:1,I=t,t=P2(l*W),F=U2[(16+a|0)+((n=t>2],Y=r-e|0,u=e<<4,D=e<<6,N=(n<<2)+a|0;t=(n=J2[A+60|0])?(b=X2[A+116>>2]+u|0,g=U2[A+36>>2],E=U2[A+4>>2],w=P2(P2(P2(A2[b>>1])/g)+E),d=U2[A+44>>2],l=U2[A+12>>2],G=P2(P2(P2(A2[b+4>>1])/d)+l),B=U2[A+40>>2],t=U2[A+8>>2],Q=P2(P2(P2(A2[b+2>>1])/B)+t),W=P2(P2(P2(A2[b+10>>1])/d)+l),T=P2(P2(P2(A2[b+6>>1])/g)+E),P2(P2(P2(A2[b+8>>1])/B)+t)):(b=X2[A+76>>2]+D|0,w=U2[b>>2],G=U2[b+8>>2],Q=U2[b+4>>2],W=U2[b+24>>2],T=U2[b+16>>2],U2[b+20>>2]),X2[12+a>>2]=0,U2[8+a>>2]=P2(W+G)*P2(.5),U2[4+a>>2]=P2(t+Q)*P2(.5),U2[a>>2]=P2(T+w)*P2(.5),F>2]&&(n?(n=X2[A+116>>2],m=X2[(c=n+u|0)>>2],C=X2[c+4>>2],n=X2[4+(b=h=(Z=o<<4)+n|0)>>2],X2[c>>2]=X2[b>>2],X2[c+4>>2]=n,s=X2[(v=c+8|0)>>2],c=X2[v+4>>2],n=X2[4+(b=b+8|0)>>2],X2[v>>2]=X2[b>>2],X2[v+4>>2]=n,n=Z+X2[A+116>>2]|0,X2[n>>2]=m,X2[n+4>>2]=C,X2[(n=n+8|0)>>2]=s,X2[n+4>>2]=c):(n=X2[A+76>>2],Z=X2[(f=n+D|0)>>2],h=X2[4+f>>2],n=X2[4+(b=i=(s=o<<6)+n|0)>>2],X2[f>>2]=X2[b>>2],X2[4+f>>2]=n,n=X2[4+(b=y=8+f|0)>>2],X2[(c=V=40+a|0)>>2]=X2[b>>2],X2[c+4>>2]=n,n=X2[4+(b=p=16+f|0)>>2],X2[(c=M=48+a|0)>>2]=X2[b>>2],X2[c+4>>2]=n,n=X2[4+(b=S=24+f|0)>>2],X2[(c=X=56+a|0)>>2]=X2[b>>2],X2[c+4>>2]=n,n=X2[4+(b=J=32+f|0)>>2],X2[(c=U=64+a|0)>>2]=X2[b>>2],X2[c+4>>2]=n,n=X2[4+(b=v=40+f|0)>>2],X2[(c=H=72+a|0)>>2]=X2[b>>2],X2[c+4>>2]=n,n=X2[4+(b=C=48+f|0)>>2],X2[(c=m=80+a|0)>>2]=X2[b>>2],X2[c+4>>2]=n,n=X2[4+(f=56+f|0)>>2],X2[(b=c=88+a|0)>>2]=X2[f>>2],X2[b+4>>2]=n,n=X2[4+(b=8+i|0)>>2],X2[y>>2]=X2[b>>2],X2[4+y>>2]=n,n=X2[4+(b=16+i|0)>>2],X2[p>>2]=X2[b>>2],X2[4+p>>2]=n,n=X2[4+(b=24+i|0)>>2],X2[S>>2]=X2[b>>2],X2[4+S>>2]=n,n=X2[4+(b=32+i|0)>>2],X2[J>>2]=X2[b>>2],X2[4+J>>2]=n,n=X2[4+(b=40+i|0)>>2],X2[v>>2]=X2[b>>2],X2[v+4>>2]=n,n=X2[4+(b=48+i|0)>>2],X2[C>>2]=X2[b>>2],X2[C+4>>2]=n,n=X2[4+(b=56+i|0)>>2],X2[f>>2]=X2[b>>2],X2[4+f>>2]=n,X2[32+a>>2]=Z,X2[36+a>>2]=h,n=X2[36+a>>2],s=s+X2[A+76>>2]|0,X2[s>>2]=X2[32+a>>2],X2[s+4>>2]=n,n=X2[c+4>>2],X2[(b=s+56|0)>>2]=X2[c>>2],X2[b+4>>2]=n,n=X2[m+4>>2],X2[(b=s+48|0)>>2]=X2[m>>2],X2[b+4>>2]=n,n=X2[4+H>>2],X2[(b=s+40|0)>>2]=X2[H>>2],X2[b+4>>2]=n,n=X2[4+U>>2],X2[(b=s+32|0)>>2]=X2[U>>2],X2[b+4>>2]=n,n=X2[4+X>>2],X2[(b=s+24|0)>>2]=X2[X>>2],X2[b+4>>2]=n,n=X2[4+M>>2],X2[(b=s+16|0)>>2]=X2[M>>2],X2[b+4>>2]=n,n=X2[4+V>>2],X2[(b=s+8|0)>>2]=X2[V>>2],X2[b+4>>2]=n),o=o+1|0),u=u+16|0,D=D- -64|0,Y=Y-1|0;);u=X2[A+56>>2]}if(C=(k>>1)+e|0,s=((-1^(n=(0|k)/3|0))+r|0)<=(0|o),h=e+n|0,J2[A+60|0]?(b=n=X2[A+136>>2]+(u<<4)|0,c=(t=P2(P2(U2[A+20>>2]-U2[A+4>>2])*U2[A+36>>2]))=P2(0)?~~t>>>0:0,$[b>>1]=65534&c,l=U2[A+40>>2],B=U2[A+8>>2],t=U2[A+24>>2],b=n,c=(d=P2(P2(U2[A+28>>2]-U2[A+12>>2])*U2[A+44>>2]))=P2(0)?~~d>>>0:0,$[b+4>>1]=65534&c,b=(t=P2(l*P2(t-B)))=P2(0)?~~t>>>0:0,$[n+2>>1]=65534&b):(n=X2[4+(Z=A+20|0)>>2],c=X2[A+96>>2]+(u<<6)|0,X2[(b=c)>>2]=X2[Z>>2],X2[b+4>>2]=n,n=X2[4+(b=Z+8|0)>>2],X2[(c=c+8|0)>>2]=X2[b>>2],X2[c+4>>2]=n),s=s?C:o,c=(0|o)<=(0|h),n=X2[A+56>>2],J2[A+60|0]?(n=b=X2[A+136>>2]+(n<<4)|0,t=U2[A+4>>2],o=(t=P2(P2(P2(t-t)*U2[A+36>>2])+P2(1)))=P2(0)?~~t>>>0:0,$[n+6>>1]=1|o,B=U2[A+40>>2],l=U2[A+8>>2],n=b+10|0,t=U2[A+12>>2],o=(t=P2(P2(P2(t-t)*U2[A+44>>2])+P2(1)))=P2(0)?~~t>>>0:0,$[n>>1]=1|o,b=b+8|0,n=(t=P2(P2(B*P2(l-l))+P2(1)))=P2(0)?~~t>>>0:0,$[b>>1]=1|n):(b=X2[A+96>>2]+(n<<6)|0,n=X2[4+(h=A+4|0)>>2],X2[b+16>>2]=X2[h>>2],X2[b+20>>2]=n,n=X2[4+(o=h+8|0)>>2],X2[(b=b+24|0)>>2]=X2[o>>2],X2[b+4>>2]=n),m=c?C:s,_)for(D=e<<4,Y=e<<6|16,N=X2[A+56>>2],Z=J2[A+60|0];Z?(_=X2[A+116>>2]+D|0,F=U2[A+36>>2],g=U2[A+4>>2],n=(t=P2(P2(P2(P2(P2(A2[_>>1])/F)+g)-g)*F))=P2(0)?~~t>>>0:0,v=X2[A+136>>2]+(N<<4)|0,h=A2[v>>1],E=U2[A+44>>2],d=U2[A+12>>2],s=(t=P2(P2(P2(P2(P2(A2[_+4>>1])/E)+d)-d)*E))=P2(0)?~~t>>>0:0,l=U2[A+40>>2],B=U2[A+8>>2],c=(t=P2(P2(P2(P2(P2(A2[_+2>>1])/l)+B)-B)*l))=P2(0)?~~t>>>0:0,b=(t=P2(P2(E*P2(P2(P2(P2(A2[_+10>>1])/E)+d)-d))+P2(1)))=P2(0)?~~t>>>0:0,C=65534&n,o=(t=P2(P2(l*P2(P2(P2(P2(A2[_+8>>1])/l)+B)-B))+P2(1)))=P2(0)?~~t>>>0:0,h=h>>>0<=C>>>0,n=(t=P2(P2(F*P2(P2(P2(P2(A2[_+6>>1])/F)+g)-g))+P2(1)))=P2(0)?~~t>>>0:0,h||($[v>>1]=C),(n|=1)>>>0>A2[v+6>>1]&&($[v+6>>1]=n),(n=65534&c)>>>0>1]&&($[v+2>>1]=n),(n=1|o)>>>0>A2[(c=v+8|0)>>1]&&($[c>>1]=n),(n=65534&s)>>>0>1]&&($[v+4>>1]=n),(n=1|b)>>>0<=A2[(o=v+10|0)>>1]||($[o>>1]=n)):(n=X2[A+76>>2]+Y|0,Q=U2[n>>2],F=U2[n+12>>2],g=U2[n+8>>2],E=U2[n+4>>2],d=U2[n-4>>2],l=U2[n-8>>2],B=U2[n-12>>2],t=U2[n-16>>2],o=X2[A+96>>2]+(N<<6)|0,t>2]&&(U2[o>>2]=t),B>2]&&(U2[o+4>>2]=B),l>2]&&(U2[o+8>>2]=l),d>2]&&(U2[o+12>>2]=d),Q>U2[o+16>>2]&&(U2[o+16>>2]=Q),E>U2[(n=o+20|0)>>2]&&(U2[n>>2]=E),g>U2[(n=o+24|0)>>2]&&(U2[n>>2]=g),F>U2[(n=o+28|0)>>2]&&(U2[n>>2]=F)),D=D+16|0,Y=Y- -64|0,k=k-1|0;);else N=X2[A+56>>2];if(X2[A+56>>2]=_=N+1|0,x(A,e,m),N=X2[A+56>>2],x(A,m,r),m=X2[A+56>>2]-R|0,(n=J2[A+60|0])&&!((0|m)<129)){if(C=X2[A+136>>2],h=-1<(0|(e=X2[12+(C+(N<<4)|0)>>2]))?1:0-e|0,(0|(c=-1<(0|(e=X2[12+(C+(_<<4)|0)>>2]))?1:0-e|0))<=128){if((0|(n=e=X2[A+152>>2]))==X2[A+156>>2]&&!((0|(v=(n=e)?n<<1:1))<=(0|n))){if(Y=0,v&&(X2[6258]=X2[6258]+1,(r=L2(v<<5|19))&&(X2[(Y=r+19&-16)-4>>2]=r)),1<=(0|e))for(n=0,k=e;R=X2[A+160>>2]+n|0,r=X2[(s=R)+4>>2],X2[(o=Z=n+Y|0)>>2]=X2[s>>2],X2[o+4>>2]=r,r=X2[4+(o=s+24|0)>>2],X2[(b=Z+24|0)>>2]=X2[o>>2],X2[b+4>>2]=r,r=X2[4+(o=s+16|0)>>2],X2[(b=Z+16|0)>>2]=X2[o>>2],X2[b+4>>2]=r,r=X2[4+(o=s+8|0)>>2],X2[(b=Z+8|0)>>2]=X2[o>>2],X2[b+4>>2]=r,n=n+32|0,k=k-1|0;);(r=X2[A+160>>2])&&J2[A+164|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+160>>2]=Y,X2[A+156>>2]=v,S2[A+164|0]=1,n=X2[A+152>>2]}X2[A+152>>2]=n+1,b=(k=e<<5)+X2[(o=A+160|0)>>2]|0,e=X2[36+a>>2],X2[b>>2]=X2[32+a>>2],X2[b+4>>2]=e,e=X2[4+(r=56+a|0)>>2],X2[(n=b+24|0)>>2]=X2[r>>2],X2[n+4>>2]=e,e=X2[4+(r=48+a|0)>>2],X2[(n=b+16|0)>>2]=X2[r>>2],X2[n+4>>2]=e,e=X2[4+(r=40+a|0)>>2],X2[(n=b+8|0)>>2]=X2[r>>2],X2[n+4>>2]=e,r=k+X2[o>>2]|0,$[r>>1]=A2[(e=C+(_<<4)|0)>>1],$[r+2>>1]=A2[e+2>>1],$[r+4>>1]=A2[e+4>>1],$[r+6>>1]=A2[e+6>>1],$[r+8>>1]=A2[e+8>>1],X2[r+16>>2]=c,X2[r+12>>2]=_,$[r+10>>1]=A2[e+10>>1]}if((0|h)<=128){if((0|(n=e=X2[A+152>>2]))==X2[A+156>>2]&&!((0|(_=(n=e)?n<<1:1))<=(0|n))){if(o=0,_&&(X2[6258]=X2[6258]+1,(r=L2(_<<5|19))&&(X2[(o=r+19&-16)-4>>2]=r)),1<=(0|e))for(n=0,k=e;R=X2[A+160>>2]+n|0,r=X2[(s=R)+4>>2],X2[(b=Z=n+o|0)>>2]=X2[s>>2],X2[b+4>>2]=r,r=X2[4+(b=s+24|0)>>2],X2[(c=Z+24|0)>>2]=X2[b>>2],X2[c+4>>2]=r,r=X2[4+(b=s+16|0)>>2],X2[(c=Z+16|0)>>2]=X2[b>>2],X2[c+4>>2]=r,r=X2[4+(b=s+8|0)>>2],X2[(c=Z+8|0)>>2]=X2[b>>2],X2[c+4>>2]=r,n=n+32|0,k=k-1|0;);(r=X2[A+160>>2])&&J2[A+164|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+160>>2]=o,X2[A+156>>2]=_,S2[A+164|0]=1,n=X2[A+152>>2]}X2[A+152>>2]=n+1,b=(k=e<<5)+X2[(o=A+160|0)>>2]|0,e=X2[36+a>>2],X2[b>>2]=X2[32+a>>2],X2[b+4>>2]=e,e=X2[4+(r=56+a|0)>>2],X2[(n=b+24|0)>>2]=X2[r>>2],X2[n+4>>2]=e,e=X2[4+(r=48+a|0)>>2],X2[(n=b+16|0)>>2]=X2[r>>2],X2[n+4>>2]=e,e=X2[4+(r=40+a|0)>>2],X2[(n=b+8|0)>>2]=X2[r>>2],X2[n+4>>2]=e,r=k+X2[o>>2]|0,$[r>>1]=A2[(e=C+(N<<4)|0)>>1],$[r+2>>1]=A2[e+2>>1],$[r+4>>1]=A2[e+4>>1],$[r+6>>1]=A2[e+6>>1],$[r+8>>1]=A2[e+8>>1],X2[r+16>>2]=h,X2[r+12>>2]=N,$[r+10>>1]=A2[e+10>>1]}X2[A+168>>2]=X2[A+152>>2],n=J2[A+60|0]}255&n?X2[12+(X2[A+136>>2]+(u<<4)|0)>>2]=0-m:X2[32+(X2[A+96>>2]+(u<<6)|0)>>2]=m}K2=112+a|0}(A,X2[A+56>>2]=0,g),J2[A+60|0]&&!X2[A+152>>2]&&(X2[A+156>>2]?(r=X2[A+160>>2],e=1):(r=0,X2[6258]=X2[6258]+(e=1),(f=L2(51))&&(X2[(r=f+19&-16)-4>>2]=f),(f=X2[A+160>>2])&&J2[A+164|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2]),e=X2[A+152>>2]+1|0),X2[A+160>>2]=r,X2[A+156>>2]=1,S2[A+164|0]=1),X2[A+152>>2]=e,e=X2[12+u>>2],X2[r>>2]=X2[8+u>>2],X2[r+4>>2]=e,i=X2[(f=32+u|0)+4>>2],X2[(e=r+24|0)>>2]=X2[f>>2],X2[e+4>>2]=i,i=X2[(f=24+u|0)+4>>2],X2[(e=r+16|0)>>2]=X2[f>>2],X2[e+4>>2]=i,e=r+8|0,f=X2[(r=16+u|0)+4>>2],X2[e>>2]=X2[r>>2],X2[e+4>>2]=f,e=X2[A+160>>2],r=X2[A+136>>2],$[e>>1]=A2[r>>1],$[e+2>>1]=A2[r+2>>1],$[e+4>>1]=A2[r+4>>1],$[e+6>>1]=A2[r+6>>1],$[e+8>>1]=A2[r+8>>1],X2[e+12>>2]=0,f=X2[r+12>>2],X2[e+16>>2]=-1<(0|f)?1:0-f|0,$[e+10>>1]=A2[r+10>>1]),X2[A+168>>2]=X2[A+152>>2],(e=X2[A+116>>2])&&J2[A+120|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+116>>2]=0,S2[A+120|0]=1,X2[(e=A+108|0)>>2]=0,X2[e+4>>2]=0,(e=X2[A+76>>2])&&J2[A+80|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+76>>2]=0,S2[A+80|0]=1,X2[(A=A+68|0)>>2]=0,X2[A+4>>2]=0,K2=112+u|0}function E1(A,e,r){A|=0,e|=0,r|=0;var f,i,a,n,b,t,o=0,c=P2(0),k=P2(0),u=P2(0),s=0,l=P2(0);K2=t=K2-80|0,s=X2[A+4>>2],N2[X2[X2[s>>2]+16>>2]](s,28+t|0,24+t|0,20+t|0,16+t|0,12+t|0,8+t|0,4+t|0,t,e),s=(f=X2[A+4>>2])+12|0,i=X2[12+t>>2]+H2(X2[8+t>>2],r)|0,a=X2[16+t>>2],n=X2[28+t>>2],b=X2[20+t>>2];A:{e:{r:{f:{i:{a:{n:{if(3!=X2[t>>2]){if(o=H2(X2[8+i>>2],a)+n|0,b)break n;u=P2(U2[o+4>>2]*U2[f+8>>2]),k=P2(U2[o>>2]*U2[f+4>>2]),c=U2[f+12>>2],o=o+8|0;break a}if(o=H2(A2[4+i>>1],a)+n|0,o=b?(u=P2(U2[f+8>>2]*P2(M[o+8>>3])),k=P2(U2[f+4>>2]*P2(M[o>>3])),c=P2(M[o+16>>3]),s):(u=P2(U2[o+4>>2]*U2[f+8>>2]),k=P2(U2[o>>2]*U2[f+4>>2]),c=U2[f+12>>2],o+8|0),l=U2[o>>2],X2[76+t>>2]=0,U2[68+t>>2]=u,U2[72+t>>2]=l*c,U2[64+t>>2]=k,o=H2(A2[2+i>>1],a)+n|0,!b)break i;u=P2(U2[f+8>>2]*P2(M[o+8>>3])),k=P2(U2[f+4>>2]*P2(M[o>>3])),c=P2(M[o+16>>3]),o=s;break f}u=P2(U2[f+8>>2]*P2(M[o+8>>3])),k=P2(U2[f+4>>2]*P2(M[o>>3])),c=P2(M[o+16>>3]),o=s}if(l=U2[o>>2],X2[76+t>>2]=0,U2[68+t>>2]=u,U2[72+t>>2]=l*c,U2[64+t>>2]=k,o=H2(X2[4+i>>2],a)+n|0,!b)break r;u=P2(U2[f+8>>2]*P2(M[o+8>>3])),k=P2(U2[f+4>>2]*P2(M[o>>3])),c=P2(M[o+16>>3]),o=s;break e}u=P2(U2[o+4>>2]*U2[f+8>>2]),k=P2(U2[o>>2]*U2[f+4>>2]),c=U2[f+12>>2],o=o+8|0}l=U2[o>>2],X2[60+t>>2]=0,U2[52+t>>2]=u,U2[56+t>>2]=l*c,U2[48+t>>2]=k,o=H2(A2[i>>1],a)+n|0,c=b?(u=P2(U2[f+8>>2]*P2(M[o+8>>3])),k=P2(U2[f+4>>2]*P2(M[o>>3])),P2(M[o+16>>3])):(s=o+8|0,u=P2(U2[o+4>>2]*U2[f+8>>2]),k=P2(U2[o>>2]*U2[f+4>>2]),U2[f+12>>2]),l=U2[s>>2],U2[32+t>>2]=k,c=P2(l*c);break A}u=P2(U2[o+4>>2]*U2[f+8>>2]),k=P2(U2[o>>2]*U2[f+4>>2]),c=U2[f+12>>2],o=o+8|0}l=U2[o>>2],X2[60+t>>2]=0,U2[52+t>>2]=u,U2[56+t>>2]=l*c,U2[48+t>>2]=k,o=H2(X2[i>>2],a)+n|0,c=b?(u=P2(U2[f+8>>2]*P2(M[o+8>>3])),k=P2(U2[f+4>>2]*P2(M[o>>3])),P2(M[o+16>>3])):(s=o+8|0,u=P2(U2[o+4>>2]*U2[f+8>>2]),k=P2(U2[o>>2]*U2[f+4>>2]),U2[f+12>>2]),l=U2[s>>2],U2[32+t>>2]=k,c=P2(l*c)}X2[44+t>>2]=0,U2[40+t>>2]=c,U2[36+t>>2]=u,s=X2[A+8>>2],N2[X2[X2[s>>2]+8>>2]](s,32+t|0,e,r),A=X2[A+4>>2],N2[X2[X2[A>>2]+24>>2]](A,e),K2=80+t|0}function Q1(A,e){var r=X2[(e|=0)+4>>2];X2[(A|=0)+24>>2]=X2[e>>2],X2[A+28>>2]=r,r=X2[(e=e+8|0)+4>>2],X2[(A=A+32|0)>>2]=X2[e>>2],X2[A+4>>2]=r}function w1(A){return(A|=0)+24|0}function G1(A,e,r){e=P2(e)}function C1(A,e,r,f){}function h1(A,e,r){return r=P2(r),0}function F1(A,e,r,f){A|=0,e|=0,r|=0,f|=0;P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var i,a=P2(N2[X2[X2[A>>2]+48>>2]](A)),n=P2(N2[X2[X2[A>>2]+48>>2]](A)),b=P2(N2[X2[X2[A>>2]+48>>2]](A)),t=U2[(A=e+52|0)>>2],o=U2[(i=e+56|0)>>2],c=U2[e+48>>2];X2[r+12>>2]=0,U2[r+8>>2]=o-b,U2[r+4>>2]=t-n,U2[r>>2]=c-a,t=U2[A>>2],o=U2[i>>2],c=U2[e+48>>2],X2[f+12>>2]=0,U2[f+8>>2]=b+o,U2[f+4>>2]=n+t,U2[f>>2]=a+c}function Y1(A){return X2[(A|=0)+16>>2]}function m1(A){return X2[(A|=0)+8>>2]}function N1(A,e,r,f){N2[X2[X2[(A|=0)>>2]+8>>2]](A,e|=0,r|=0,f|=0)}function R1(A,e){N2[X2[X2[(A|=0)>>2]+64>>2]](A,e|=0)}function D1(A,e){var r,f,i=P2(0),a=P2(0),n=0,b=P2(0),t=P2(0),o=P2(0),c=0,k=P2(0),u=P2(0),s=P2(0),l=P2(0),B=P2(0),v=P2(0),d=P2(0),Z=P2(0),_=P2(0),g=P2(0),E=P2(0),Q=P2(0);P2(0),P2(0);A:{e:{r:{f:{i:{if(4==(0|(n=X2[A+844>>2]))){if(o=U2[e>>2],c=(n=(i=U2[A+84>>2])<(b=U2[e+80>>2]))?0:-1,f=(n=(a=U2[A+292>>2])<(i=n?i:b))?1:c,b=U2[A+500>>2],!(n=(c=U2[A+708>>2]<((n=b<(i=n?a:i))?b:i))?3:n?2:f)){k=U2[A+636>>2],Z=U2[A+428>>2],a=P2(k-Z),s=U2[A+632>>2],_=U2[A+424>>2],t=P2(s-_),g=U2[A+628>>2],E=U2[A+420>>2],u=P2(g-E),Q=U2[A+220>>2],l=U2[A+216>>2],B=U2[A+212>>2],i=U2[e+8>>2],b=U2[e+4>>2];break i}if(B=U2[A+212>>2],v=P2(o-B),s=U2[A+632>>2],_=U2[A+424>>2],t=P2(s-_),b=U2[e+4>>2],l=U2[A+216>>2],i=P2(b-l),g=U2[A+628>>2],E=U2[A+420>>2],u=P2(g-E),a=P2(P2(v*t)-P2(i*u)),f=P2(a*a),k=U2[A+636>>2],Z=U2[A+428>>2],a=P2(k-Z),r=P2(i*a),i=U2[e+8>>2],Q=U2[A+220>>2],d=P2(i-Q),r=P2(r-P2(d*t)),v=P2(P2(d*u)-P2(v*a)),v=P2(f+P2(P2(r*r)+P2(v*v))),1!=(0|n))break i;o=P2(o-U2[A+4>>2]),i=P2(i-U2[A+12>>2]),b=P2(b-U2[A+8>>2]),u=P2(0);break f}X2[A+844>>2]=n+1;break A}if(o=P2(o-U2[A+4>>2]),b=P2(b-U2[A+8>>2]),d=P2(P2(o*t)-P2(b*u)),i=P2(i-U2[A+12>>2]),t=P2(P2(b*a)-P2(i*t)),a=P2(P2(i*u)-P2(o*a)),u=P2(P2(d*d)+P2(P2(t*t)+P2(a*a))),a=P2(0),2==(0|n))break r}if(a=P2(s-l),t=P2(g-B),s=P2(P2(o*a)-P2(b*t)),k=P2(k-Q),a=P2(P2(b*k)-P2(i*a)),d=P2(a*a),a=P2(P2(i*t)-P2(o*k)),a=P2(P2(s*s)+P2(d+P2(a*a))),t=P2(0),c)break e}t=P2(_-l),l=P2(E-B),B=P2(P2(o*t)-P2(b*l)),k=b,b=P2(Z-Q),t=P2(P2(k*b)-P2(i*t)),i=P2(P2(i*l)-P2(o*b)),t=P2(P2(B*B)+P2(P2(t*t)+P2(i*i)))}c=(n=(i=P2(j2(v)))>P2(-0xde0b6b000000000))?0:-1,b=P2(j2(u)),c=(n=(i=n?i:P2(-0xde0b6b000000000))(n?a:i)?3:n?2:c}return $2(4+((c=A)+H2(A=0<(0|n)?n:0,208)|0)|0,e,208),A}function R2(A,e,r){var f,i,a,n,b,t,o,c,k,u,s,l,B,v,d=0,Z=P2(0),_=P2(0),g=P2(0),E=0,Q=0,w=(P2(0),P2(0),P2(0));P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);if(1<=(0|(E=X2[A+844>>2]))){for(Q=E+1|0,d=(H2(E,208)+A|0)-204|0;;)if(a=U2[e+48>>2],t=U2[e+8>>2],o=U2[e+4>>2],c=U2[e>>2],n=U2[e+52>>2],k=U2[e+24>>2],f=U2[e+20>>2],u=U2[e+16>>2],Z=U2[e+56>>2],_=U2[e+40>>2],g=U2[e+36>>2],b=U2[e+32>>2],X2[d+60>>2]=0,w=Z,Z=U2[d>>2],s=g,g=U2[d+4>>2],i=_,_=U2[d+8>>2],b=P2(w+P2(P2(P2(b*Z)+P2(s*g))+P2(i*_))),U2[d+56>>2]=b,n=P2(n+P2(P2(P2(Z*u)+P2(g*f))+P2(_*k))),U2[d+52>>2]=n,a=P2(a+P2(P2(P2(Z*c)+P2(g*o))+P2(_*t))),U2[d+48>>2]=a,t=U2[r+56>>2],o=U2[r+40>>2],c=U2[r+32>>2],k=U2[r+36>>2],f=U2[r+52>>2],u=U2[r+24>>2],l=U2[r+16>>2],B=U2[r+20>>2],Z=U2[r+48>>2],_=U2[r+8>>2],g=U2[r>>2],i=U2[r+4>>2],X2[d+44>>2]=0,w=Z,Z=U2[d+16>>2],v=P2(g*Z),g=U2[d+20>>2],s=_,_=U2[d+24>>2],i=P2(w+P2(P2(v+P2(i*g))+P2(s*_))),U2[d+32>>2]=i,f=P2(f+P2(P2(P2(Z*l)+P2(g*B))+P2(_*u))),U2[d+36>>2]=f,Z=P2(t+P2(P2(P2(Z*c)+P2(g*k))+P2(_*o))),U2[d+40>>2]=Z,U2[d+80>>2]=P2(P2(P2(a-i)*U2[d- -64>>2])+P2(P2(n-f)*U2[d+68>>2]))+P2(P2(b-Z)*U2[d+72>>2]),X2[(v=d+164|0)>>2]=X2[v>>2]+1,d=d-208|0,!(1<(0|(Q=Q-1|0))))break;for(d=(H2(E,208)+A|0)-204|0;;)if(E=(e=E)-1|0,(Z=U2[d+80>>2])<=(g=U2[A+848>>2])&&(_=P2(U2[d+32>>2]-P2(U2[d+48>>2]-P2(U2[d- -64>>2]*Z))),w=P2(_*_),_=P2(U2[d+36>>2]-P2(U2[d+52>>2]-P2(Z*U2[d+68>>2]))),Z=P2(U2[d+40>>2]-P2(U2[d+56>>2]-P2(Z*U2[d+72>>2]))),!(P2(P2(w+P2(_*_))+P2(Z*Z))>P2(g*g)))||(e=(0|(r=e))!=(0|(e=X2[(Q=A)+844>>2]))?($2(d,(e=H2(e-1|0,208)+A|0)+4|0,208),X2[e+168>>2]=0,X2[e+120>>2]=0,X2[(r=e+132|0)>>2]=0,X2[r+4>>2]=0,X2[(e=e+140|0)>>2]=0,X2[e+4>>2]=0,X2[A+844>>2]-1|0):E,X2[Q+844>>2]=e),d=d-208|0,!(1<(E+1|0)))break}}function T1(A){var e,r,f,i,a,n,x,y,V,p,M,S,X,J,U,H,P,j,z,b,t=0,o=0,c=0,k=0,u=P2(0),s=P2(0),l=0,B=P2(0),v=P2(0),d=P2(0),Z=P2(0),_=P2(0),g=P2(0),E=0,Q=0,w=0,G=0,C=0,h=P2(0),F=P2(0),Y=0,m=P2(0),N=P2(0),R=0,D=0,T=P2(0),W=(P2(0),P2(0)),I=P2(0),O=0,K=P2(0);P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);K2=b=K2+-64|0;A:if(J2[A+356|0]){S2[A+356|0]=0,S2[0|(l=A+352|0)]=0,X2[(o=G=A+344|0)>>2]=0,X2[o+4>>2]=0,X2[(o=O=A+336|0)>>2]=0,X2[o+4>>2]=0,o=J2[0|(t=A+332|0)],S2[0|t]=w=-16&o,t=A+316|0;e:{r:{f:switch(X2[A>>2]){case 1:c=X2[A+168>>2],X2[A+260>>2]=X2[A+164>>2],X2[A+264>>2]=c,c=X2[A+88>>2],X2[A+244>>2]=X2[A+84>>2],X2[A+248>>2]=c,c=X2[(o=A+172|0)+4>>2],X2[(t=k=A+268|0)>>2]=X2[o>>2],X2[t+4>>2]=c,c=X2[(o=A+92|0)+4>>2],X2[(t=A+252|0)>>2]=X2[o>>2],X2[t+4>>2]=c,S2[0|l]=0,X2[A+288>>2]=0,U2[A+280>>2]=U2[A+248>>2]-U2[A+264>>2],U2[A+276>>2]=U2[A+244>>2]-U2[A+260>>2],U2[A+284>>2]=U2[t>>2]-U2[k>>2],X2[G>>2]=0,X2[G+4>>2]=0,X2[A+336>>2]=1065353216,X2[A+340>>2]=0,S2[A+332|0]=w,S2[A+312|0]=c=1;break A;case 2:v=U2[(k=A)+4>>2],Z=P2(U2[A+20>>2]-v),B=U2[A+8>>2],_=P2(U2[A+24>>2]-B),u=U2[A+12>>2],d=P2(U2[A+28>>2]-u),c=(u=P2(P2(P2(P2(P2(0)-v)*Z)+P2(P2(P2(0)-B)*_))+P2(P2(P2(0)-u)*d)))>P2(0)?u<(s=P2(P2(P2(Z*Z)+P2(_*_))+P2(d*d)))?(s=P2(u/s),3|w):(s=P2(1),2|w):1|w,S2[k+332|0]=c,X2[(o=A+344|0)>>2]=0,X2[o+4>>2]=0,U2[A+340>>2]=s,g=P2(P2(1)-s),U2[A+336>>2]=g,X2[A+256>>2]=0,u=U2[A+92>>2],v=P2(u+P2(s*P2(U2[A+108>>2]-u))),U2[A+252>>2]=v,u=U2[A+88>>2],Z=P2(u+P2(s*P2(U2[A+104>>2]-u))),U2[A+248>>2]=Z,u=U2[A+84>>2],_=P2(u+P2(s*P2(U2[A+100>>2]-u))),U2[A+244>>2]=_,d=U2[A+180>>2],B=U2[A+184>>2],W=U2[A+168>>2],u=U2[A+188>>2],I=U2[A+172>>2],h=U2[A+164>>2],X2[A+288>>2]=0,F=v,v=P2(I+P2(s*P2(u-I))),U2[A+284>>2]=F-v,B=P2(W+P2(s*P2(B-W))),U2[A+280>>2]=Z-B,u=P2(h+P2(s*P2(d-h))),U2[A+276>>2]=_-u,X2[A+272>>2]=0,U2[A+268>>2]=v,U2[A+264>>2]=B,U2[A+260>>2]=u,Q=1,2&c||(X2[A>>2]=1,Q=0),1&c||(X2[A>>2]=Q,w=X2[(c=(C=(Q<<4)+A|0)+12|0)>>2],G=X2[c+4>>2],O=X2[(c=C+4|0)>>2],l=X2[c+4>>2],c=X2[(o=C+84|0)+4>>2],X2[(t=k=A+84|0)>>2]=X2[o>>2],X2[t+4>>2]=c,c=X2[(o=C+92|0)+4>>2],X2[(t=t+8|0)>>2]=X2[o>>2],X2[t+4>>2]=c,c=X2[(o=C+164|0)+4>>2],X2[(t=k=A+164|0)>>2]=X2[o>>2],X2[t+4>>2]=c,c=X2[(o=C+172|0)+4>>2],X2[(t=t+8|0)>>2]=X2[o>>2],X2[t+4>>2]=c,X2[(c=A+4|0)>>2]=O,X2[c+4>>2]=l,X2[(c=c+8|0)>>2]=w,X2[c+4>>2]=G),c=g>=P2(0)&s>=P2(0),S2[A+312|0]=c;break A;case 3:X2[(c=32+b|0)>>2]=0,X2[c+4>>2]=0,X2[24+b>>2]=0,W1(24+b|(X2[28+b>>2]=0),Y=A+4|0,R=A+20|0,D=A+36|0,t),X2[A+256>>2]=0,T=U2[A+336>>2],m=U2[A+340>>2],N=U2[G>>2],K=P2(P2(P2(T*U2[A+92>>2])+P2(m*U2[A+108>>2]))+P2(N*U2[A+124>>2])),U2[A+252>>2]=K,W=P2(P2(P2(T*U2[A+88>>2])+P2(m*U2[A+104>>2]))+P2(N*U2[A+120>>2])),U2[A+248>>2]=W,C=A+100|0,w=A+116|0,I=P2(P2(P2(T*U2[A+84>>2])+P2(m*U2[C>>2]))+P2(N*U2[w>>2])),U2[A+244>>2]=I,h=U2[(G=A+180|0)>>2],g=U2[(l=A+196|0)>>2],Z=U2[A+168>>2],_=U2[A+184>>2],d=U2[A+200>>2],v=U2[A+172>>2],B=U2[A+188>>2],u=U2[A+204>>2],s=U2[A+164>>2],X2[A+288>>2]=0,B=P2(P2(P2(T*v)+P2(m*B))+P2(N*u)),U2[A+284>>2]=K-B,u=P2(P2(P2(T*Z)+P2(m*_))+P2(N*d)),U2[A+280>>2]=W-u,s=P2(P2(P2(T*s)+P2(m*h))+P2(N*g)),U2[A+276>>2]=I-s,X2[A+272>>2]=0,U2[A+268>>2]=B,U2[A+264>>2]=u,U2[A+260>>2]=s;i:{a:{n:{b:{t:{if(4<=(0|(o=X2[A>>2])))8&(Q=J2[A+332|0])?c=o:(o=X2[(t=(E=((c=o-1|0)<<4)+A|0)+12|0)+4>>2],X2[(k=A+60|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[(t=E+4|0)+4>>2],X2[(k=A+52|0)>>2]=X2[t>>2],X2[k+4>>2]=o,X2[A>>2]=c,o=X2[(t=E+84|0)+4>>2],X2[(k=A+132|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[(t=E+92|0)+4>>2],X2[(k=A+140|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[(t=E+164|0)+4>>2],X2[(k=A+212|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[(t=E+172|0)+4>>2],X2[(k=A+220|0)>>2]=X2[t>>2],X2[k+4>>2]=o);else{if((c=3)!=(0|o))break t;Q=J2[A+332|0]}if(4&Q)break b;X2[A>>2]=c=c-1|0,o=X2[(t=(E=(c<<4)+A|0)+12|0)+4>>2],X2[(k=D+8|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[(t=E+4|0)+4>>2],X2[D>>2]=X2[t>>2],X2[D+4>>2]=o,o=X2[(t=E+92|0)+4>>2],X2[(k=w+8|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[(t=E+84|0)+4>>2],X2[w>>2]=X2[t>>2],X2[w+4>>2]=o,o=X2[(t=E+164|0)+4>>2],X2[l>>2]=X2[t>>2],X2[l+4>>2]=o,o=X2[(t=E+172|0)+4>>2],X2[(k=l+8|0)>>2]=X2[t>>2],X2[k+4>>2]=o;break b}if((0|o)<(c=2))break n;Q=J2[A+332|0]}if(2&Q)break a;X2[A>>2]=c=c-1|0,o=X2[(t=(l=(c<<4)+A|0)+12|0)+4>>2],X2[(k=R+8|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[(t=l+4|0)+4>>2],X2[R>>2]=X2[t>>2],X2[R+4>>2]=o,o=X2[(t=l+92|0)+4>>2],X2[(k=C+8|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[(t=l+84|0)+4>>2],X2[C>>2]=X2[t>>2],X2[C+4>>2]=o,o=X2[(t=l+164|0)+4>>2],X2[G>>2]=X2[t>>2],X2[G+4>>2]=o,o=X2[(t=l+172|0)+4>>2],X2[(k=G+8|0)>>2]=X2[t>>2],X2[k+4>>2]=o;break a}if((c=1)!=(0|o))break i;Q=J2[A+332|0]}1&Q||(X2[A>>2]=c=c-1|0,c=X2[(o=(l=(c<<4)+A|0)+12|0)+4>>2],X2[(t=Y+8|0)>>2]=X2[o>>2],X2[t+4>>2]=c,c=X2[(o=l+4|0)+4>>2],X2[Y>>2]=X2[o>>2],X2[Y+4>>2]=c,c=X2[(o=l+92|0)+4>>2],X2[(t=(k=A+84|0)+8|0)>>2]=X2[o>>2],X2[t+4>>2]=c,c=X2[(o=l+84|0)+4>>2],X2[k>>2]=X2[o>>2],X2[k+4>>2]=c,c=X2[(o=l+164|0)+4>>2],X2[(t=k=A+164|0)>>2]=X2[o>>2],X2[t+4>>2]=c,c=X2[(o=l+172|0)+4>>2],X2[(t=t+8|0)>>2]=X2[o>>2],X2[t+4>>2]=c)}if(!(U2[O>>2]>=P2(c=0)))break e;if(!(m>=P2(0)))break e;if(!(N>=P2(0)))break e;c=U2[A+348>>2]>=P2(0),S2[A+312|0]=c;break A;case 0:break e;case 4:break f;default:break r;}if(X2[(c=16+b|0)>>2]=0,X2[c+4>>2]=0,X2[8+b>>2]=0,X2[12+b>>2]=0,X2[t>>2]=0,X2[t+4>>2]=0,X2[(c=t+8|0)>>2]=0,X2[c+4>>2]=0,S2[A+332|0]=15|o,S2[40+b|0]=0,a=U2[A+12>>2],P=P2(P2(0)-a),n=U2[A+28>>2],x=P2(n-a),d=U2[(r=A+36|0)>>2],y=U2[A+4>>2],V=P2(d-y),v=U2[A+56>>2],p=U2[A+8>>2],g=P2(v-p),u=U2[A+40>>2],M=P2(u-p),s=U2[(f=A+52|0)>>2],S=P2(s-y),H=P2(P2(V*g)-P2(M*S)),X=U2[(i=A+20|0)>>2],J=P2(X-y),m=U2[A+60>>2],e=P2(m-a),B=U2[A+44>>2],Z=P2(B-a),N=P2(P2(M*e)-P2(Z*g)),U=U2[A+24>>2],_=P2(U-p),T=P2(P2(Z*S)-P2(V*e)),j=P2(P2(x*H)+P2(P2(J*N)+P2(_*T))),K=P2(P2(_*Z)-P2(x*M)),W=P2(P2(x*V)-P2(J*Z)),I=P2(P2(J*M)-P2(_*V)),z=P2(P2(P2(K*S)+P2(W*g))+P2(I*e)),h=P2(P2(_*S)-P2(J*g)),F=P2(Z*h),g=P2(P2(x*g)-P2(_*e)),Z=P2(P2(J*e)-P2(x*S)),e=P2(F+P2(P2(V*g)+P2(M*Z))),u=P2(u-U),_=P2(s-X),d=P2(d-X),s=P2(v-U),v=P2(P2(u*_)-P2(d*s)),B=P2(B-n),F=P2(B*s),s=P2(m-n),u=P2(F-P2(u*s)),s=P2(P2(d*s)-P2(B*_)),_=P2(P2(P2(a-n)*v)+P2(P2(P2(y-X)*u)+P2(P2(p-U)*s))),k=P2(_*_)>2],u=P2(d-U2[8+b>>2]),s=P2(u*u),v=U2[28+b>>2],u=P2(v-U2[12+b>>2]),s=P2(s+P2(u*u)),B=U2[32+b>>2],u=P2(B-U2[16+b>>2]),u=P2(s+P2(u*u)),s=P2(34028234663852886e22),u>2]=d,c=X2[48+b>>2],X2[A+336>>2]=X2[44+b>>2],X2[A+340>>2]=c,U2[A+328>>2]=U2[36+b>>2],U2[A+324>>2]=B,U2[A+320>>2]=v,X2[A+348>>2]=0,U2[A+344>>2]=U2[52+b>>2],c=J2[40+b|0],S2[A+332|0]=1&c|240&J2[A+332|0]|2&c|4&c,s=u)),t&&(W1(8+b|0,E,r,f,24+b|0),d=U2[24+b>>2],u=P2(d-U2[8+b>>2]),F=P2(u*u),v=U2[28+b>>2],u=P2(v-U2[12+b>>2]),F=P2(F+P2(u*u)),B=U2[32+b>>2],u=P2(B-U2[16+b>>2]),(u=P2(F+P2(u*u)))>2]=d,U2[A+336>>2]=U2[44+b>>2],U2[A+328>>2]=U2[36+b>>2],U2[A+324>>2]=B,U2[A+320>>2]=v,X2[A+340>>2]=0,c=X2[(o=48+b|0)+4>>2],X2[(t=A+344|0)>>2]=X2[o>>2],X2[t+4>>2]=c,c=J2[40+b|0],S2[A+332|0]=8&(o=c<<1)|(4&o|(1&c|240&J2[A+332|0])),s=u)),l&&(W1(8+b|0,E,f,i,24+b|0),d=U2[24+b>>2],u=P2(d-U2[8+b>>2]),F=P2(u*u),v=U2[28+b>>2],u=P2(v-U2[12+b>>2]),F=P2(F+P2(u*u)),B=U2[32+b>>2],u=P2(B-U2[16+b>>2]),(u=P2(F+P2(u*u)))>2]=d,U2[A+336>>2]=U2[44+b>>2],U2[A+328>>2]=U2[36+b>>2],U2[A+324>>2]=B,U2[A+320>>2]=v,X2[A+344>>2]=0,U2[A+348>>2]=U2[48+b>>2],U2[A+340>>2]=U2[52+b>>2],c=J2[40+b|0],S2[A+332|0]=1&c|240&J2[A+332|0]|c>>>1&2|c<<2&8,s=u)),k&&(W1(8+b|0,i,f,r,24+b|0),F=s,v=U2[24+b>>2],s=P2(v-U2[8+b>>2]),u=P2(s*s),B=U2[28+b>>2],s=P2(B-U2[12+b>>2]),H=P2(u+P2(s*s)),u=U2[32+b>>2],s=P2(u-U2[16+b>>2]),F>P2(H+P2(s*s))&&(U2[A+316>>2]=v,X2[A+336>>2]=0,U2[A+328>>2]=U2[36+b>>2],U2[A+324>>2]=u,U2[A+320>>2]=B,U2[A+340>>2]=U2[44+b>>2],U2[A+348>>2]=U2[48+b>>2],U2[A+344>>2]=U2[52+b>>2],c=J2[40+b|0],S2[A+332|0]=4&c|240&J2[A+332|0]|c<<1&2|c<<2&8)),X2[A+256>>2]=0,g=U2[A+336>>2],Z=U2[A+340>>2],s=U2[A+344>>2],h=U2[A+348>>2],_=P2(P2(P2(P2(g*U2[A+92>>2])+P2(Z*U2[A+108>>2]))+P2(s*U2[A+124>>2]))+P2(h*U2[A+140>>2])),U2[A+252>>2]=_,d=P2(P2(P2(P2(g*U2[A+88>>2])+P2(Z*U2[A+104>>2]))+P2(s*U2[A+120>>2]))+P2(h*U2[A+136>>2])),U2[A+248>>2]=d,R=A+100|0,D=A+116|0,C=A+132|0,v=P2(P2(P2(P2(g*U2[A+84>>2])+P2(Z*U2[R>>2]))+P2(s*U2[D>>2]))+P2(h*U2[C>>2])),U2[A+244>>2]=v,X2[A+288>>2]=0,w=A+180|(X2[A+272>>2]=0),G=A+196|0,l=A+212|0,B=P2(P2(P2(P2(g*U2[A+164>>2])+P2(Z*U2[w>>2]))+P2(s*U2[G>>2]))+P2(h*U2[l>>2])),U2[A+260>>2]=B,u=P2(P2(P2(P2(g*U2[A+168>>2])+P2(Z*U2[A+184>>2]))+P2(s*U2[A+200>>2]))+P2(h*U2[A+216>>2])),U2[A+264>>2]=u,s=P2(P2(P2(P2(g*U2[A+172>>2])+P2(Z*U2[A+188>>2]))+P2(s*U2[A+204>>2]))+P2(h*U2[A+220>>2])),U2[A+268>>2]=s,U2[A+276>>2]=v-B,U2[A+280>>2]=d-u,U2[A+284>>2]=_-s;f:{i:{a:{n:{b:{if(4<=(0|(o=X2[A>>2])))8&(Q=J2[A+332|0])?c=o:(o=X2[(t=(Y=((c=o-1|0)<<4)+A|0)+12|0)+4>>2],X2[(k=8+f|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[(t=Y+4|0)+4>>2],X2[f>>2]=X2[t>>2],X2[4+f>>2]=o,X2[A>>2]=c,o=X2[(t=Y+84|0)+4>>2],X2[C>>2]=X2[t>>2],X2[C+4>>2]=o,o=X2[(t=Y+92|0)+4>>2],X2[(k=C+8|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[(t=Y+164|0)+4>>2],X2[l>>2]=X2[t>>2],X2[l+4>>2]=o,o=X2[(t=Y+172|0)+4>>2],X2[(k=l+8|0)>>2]=X2[t>>2],X2[k+4>>2]=o);else{if((c=3)!=(0|o))break b;Q=J2[A+332|0]}if(4&Q)break n;X2[A>>2]=c=c-1|0,o=X2[(t=(l=(c<<4)+A|0)+12|0)+4>>2],X2[(k=8+r|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[(t=l+4|0)+4>>2],X2[r>>2]=X2[t>>2],X2[4+r>>2]=o,o=X2[(t=l+92|0)+4>>2],X2[(k=D+8|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[(t=l+84|0)+4>>2],X2[D>>2]=X2[t>>2],X2[D+4>>2]=o,o=X2[(t=l+164|0)+4>>2],X2[G>>2]=X2[t>>2],X2[G+4>>2]=o,o=X2[(t=l+172|0)+4>>2],X2[(k=G+8|0)>>2]=X2[t>>2],X2[k+4>>2]=o;break n}if((0|o)<(c=2))break a;Q=J2[A+332|0]}if(2&Q)break i;X2[A>>2]=c=c-1|0,o=X2[(t=(l=(c<<4)+A|0)+12|0)+4>>2],X2[(k=8+i|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[(t=l+4|0)+4>>2],X2[i>>2]=X2[t>>2],X2[4+i>>2]=o,o=X2[(t=l+92|0)+4>>2],X2[(k=R+8|0)>>2]=X2[t>>2],X2[k+4>>2]=o,o=X2[(t=l+84|0)+4>>2],X2[R>>2]=X2[t>>2],X2[R+4>>2]=o,o=X2[(t=l+164|0)+4>>2],X2[w>>2]=X2[t>>2],X2[w+4>>2]=o,o=X2[(t=l+172|0)+4>>2],X2[(k=w+8|0)>>2]=X2[t>>2],X2[k+4>>2]=o;break i}if((c=1)!=(0|o))break f;Q=J2[A+332|0]}1&Q||(X2[A>>2]=c=c-1|0,c=X2[(o=(l=(c<<4)+A|0)+12|0)+4>>2],X2[(t=E+8|0)>>2]=X2[o>>2],X2[t+4>>2]=c,c=X2[(o=l+4|0)+4>>2],X2[E>>2]=X2[o>>2],X2[E+4>>2]=c,c=X2[(o=l+92|0)+4>>2],X2[(t=(k=A+84|0)+8|0)>>2]=X2[o>>2],X2[t+4>>2]=c,c=X2[(o=l+84|0)+4>>2],X2[k>>2]=X2[o>>2],X2[k+4>>2]=c,c=X2[(o=l+164|0)+4>>2],X2[(t=k=A+164|0)>>2]=X2[o>>2],X2[t+4>>2]=c,c=X2[(o=l+172|0)+4>>2],X2[(t=t+8|0)>>2]=X2[o>>2],X2[t+4>>2]=c)}if(!(U2[O>>2]>=P2(c=0)))break e;if(!(U2[A+340>>2]>=P2(0)))break e;if(!(U2[A+344>>2]>=P2(0)))break e;c=h>=P2(0),S2[A+312|0]=c;break A}if(!J2[A+352|0]){X2[A+276>>2]=0,X2[A+280>>2]=0,S2[A+312|0]=c=1,X2[(A=A+284|0)>>2]=0,X2[A+4>>2]=0;break A}}}c=0}S2[A+312|0]=0}else c=J2[A+312|0];return K2=b+64|0,0!=(255&c)}function W1(A,e,r,f,i){var a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E=P2(0),Q=P2(0),w=P2(0),G=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0)),C=P2(0),h=P2(0),F=P2(0),Y=P2(0),m=P2(0),N=(P2(0),P2(0),P2(0),P2(0),-16&J2[i+16|0]);S2[i+16|0]=N,d=U2[f>>2],t=U2[e>>2],s=P2(d-t),b=U2[A>>2],E=P2(b-t),Z=U2[f+4>>2],o=U2[e+4>>2],l=P2(Z-o),a=U2[A+4>>2],Q=P2(a-o),_=U2[f+8>>2],c=U2[e+8>>2],B=P2(_-c),k=U2[A+8>>2],w=P2(k-c),n=P2(P2(P2(s*E)+P2(l*Q))+P2(B*w)),g=i,F=U2[r>>2],G=P2(F-t),Y=U2[r+4>>2],C=P2(Y-o),m=U2[r+8>>2],h=P2(m-c),w=(Q=P2(P2(P2(G*E)+P2(C*Q))+P2(h*w)))<=P2(0)&&n<=P2(0)?(A=X2[e+4>>2],X2[i>>2]=X2[e>>2],X2[i+4>>2]=A,r=X2[(e=e+8|0)+4>>2],X2[(A=i+8|0)>>2]=X2[e>>2],X2[A+4>>2]=r,S2[i+16|0]=1|N,Q=P2(0),E=P2(0),P2(1)):(E=P2(b-F),w=P2(a-Y),u=P2(k-m),v=P2(P2(P2(s*E)+P2(l*w))+P2(B*u)),(w=P2(P2(P2(G*E)+P2(C*w))+P2(h*u)))>=P2(0)&&v<=w?(A=X2[r+4>>2],X2[i>>2]=X2[r>>2],X2[i+4>>2]=A,r=X2[(e=r+8|0)+4>>2],X2[(A=i+8|0)>>2]=X2[e>>2],X2[A+4>>2]=r,S2[i+16|0]=2|N,Q=P2(1),E=P2(0),P2(0)):(u=P2(P2(Q*v)-P2(w*n)),w<=P2(0)&&Q>=P2(0)&&(E=P2(0),u<=P2(0))?(X2[i+12>>2]=0,S2[i+16|0]=3|N,Q=P2(Q/P2(Q-w)),U2[i+8>>2]=c+P2(h*Q),U2[i+4>>2]=o+P2(C*Q),U2[i>>2]=t+P2(G*Q),P2(P2(1)-Q)):(E=P2(b-d),a=P2(a-Z),k=P2(k-_),b=P2(P2(P2(G*E)+P2(C*a))+P2(h*k)),(E=P2(P2(P2(s*E)+P2(l*a))+P2(B*k)))>=P2(0)&&b<=E?(A=X2[f+4>>2],X2[i>>2]=X2[f>>2],X2[i+4>>2]=A,r=X2[(e=f+8|0)+4>>2],X2[(A=i+8|0)>>2]=X2[e>>2],X2[A+4>>2]=r,S2[i+16|0]=4|N,E=P2(1),Q=P2(0),P2(0)):(a=P2(P2(b*n)-P2(Q*E)),E<=P2(0)&&n>=P2(0)&&(Q=P2(0),a<=P2(0))?(X2[i+12>>2]=0,S2[i+16|0]=5|N,E=P2(n/P2(n-E)),U2[i+8>>2]=c+P2(B*E),U2[i+4>>2]=o+P2(l*E),U2[i>>2]=t+P2(s*E),P2(P2(1)-E)):(Q=P2(P2(w*E)-P2(b*v)),(n=P2(b-E))>=P2(0)&&(E=P2(v-w))>=P2(0)&&Q<=P2(0)?(X2[i+12>>2]=0,S2[i+16|0]=6|N,E=P2(E/P2(E+n)),U2[i+8>>2]=m+P2(P2(_-m)*E),U2[i+4>>2]=Y+P2(P2(Z-Y)*E),U2[i>>2]=F+P2(P2(d-F)*E),Q=P2(P2(1)-E),P2(0)):(X2[i+12>>2]=0,S2[i+16|0]=7|N,Q=P2(P2(1)/P2(u+P2(Q+a))),E=P2(u*Q),Q=P2(a*Q),U2[i+8>>2]=P2(B*E)+P2(c+P2(h*Q)),U2[i+4>>2]=P2(l*E)+P2(o+P2(C*Q)),U2[i>>2]=P2(s*E)+P2(t+P2(G*Q)),P2(P2(P2(1)-Q)-E))))))),U2[g+20>>2]=w,X2[i+32>>2]=0,U2[i+28>>2]=E,U2[i+24>>2]=Q}function I1(A,e,r,f,i){A|=0,e|=0,r|=0,f|=0,i|=0;var a,n,b,t,o,c,k,u,x,y,V,p,M,S,X,J,U,H,P,j,z,O,K,L,q,$,A2,e2,r2,f2,i2,a2,n2,b2,t2,s=0,l=0,B=P2(0),v=P2(0),d=P2(0),Z=P2(0),_=0,g=P2(0),E=P2(0),Q=P2(0),w=P2(0),G=P2(0),C=P2(0),h=P2(0),F=0,Y=P2(0),m=P2(0),N=P2(0),R=P2(0),D=P2(0),T=P2(0),W=0,I=(P2(0),P2(0),P2(0),0);P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);for(K2=i=K2-208|0,X2[A+56>>2]=0,X2[(s=i+200|0)>>2]=0,X2[s+4>>2]=0,X2[i+192>>2]=0,X2[i+196>>2]=0,a=X2[(l=e+8|0)+4>>2],X2[(s=i+136|0)>>2]=X2[l>>2],X2[s+4>>2]=a,a=X2[(l=e+24|0)+4>>2],X2[(s=i+152|0)>>2]=X2[l>>2],X2[s+4>>2]=a,a=X2[(l=e+40|0)+4>>2],X2[(s=i+168|0)>>2]=X2[l>>2],X2[s+4>>2]=a,_=X2[4+(a=e+56|0)>>2],X2[(s=i+184|0)>>2]=X2[a>>2],X2[s+4>>2]=_,l=X2[e+4>>2],X2[i+128>>2]=X2[e>>2],X2[i+132>>2]=l,l=X2[e+20>>2],X2[i+144>>2]=X2[e+16>>2],X2[i+148>>2]=l,l=X2[e+36>>2],X2[i+160>>2]=X2[e+32>>2],X2[i+164>>2]=l,l=X2[e+52>>2],X2[i+176>>2]=X2[e+48>>2],X2[i+180>>2]=l,F=X2[(_=e+120|0)+4>>2],X2[(l=i+120|0)>>2]=X2[_>>2],X2[l+4>>2]=F,F=X2[(_=e+72|0)+4>>2],X2[(a=i+72|0)>>2]=X2[_>>2],X2[4+a>>2]=F,F=X2[(_=e+88|0)+4>>2],X2[(a=i+88|0)>>2]=X2[_>>2],X2[4+a>>2]=F,F=X2[(_=e+104|0)+4>>2],X2[(a=i+104|0)>>2]=X2[_>>2],X2[4+a>>2]=F,a=X2[e+68>>2],X2[i+64>>2]=X2[e+64>>2],X2[i+68>>2]=a,_=X2[4+(a=e+80|0)>>2],X2[i+80>>2]=X2[a>>2],X2[i+84>>2]=_,_=X2[4+(a=e+96|0)>>2],X2[i+96>>2]=X2[a>>2],X2[i+100>>2]=_,_=X2[4+(a=e+112|0)>>2],X2[i+112>>2]=X2[a>>2],X2[i+116>>2]=_,B=U2[(a=i+116|0)>>2],Q=U2[(_=i+180|0)>>2],w=U2[i+112>>2],v=U2[i+176>>2],G=U2[s>>2],d=U2[l>>2],n=P2(P2(G+d)*P2(.5)),U2[s>>2]=G-n,b=P2(P2(Q+B)*P2(.5)),U2[_>>2]=Q-b,t=P2(P2(v+w)*P2(.5)),U2[i+176>>2]=v-t,U2[l>>2]=d-n,U2[a>>2]=B-b,U2[i+112>>2]=w-t,k=X2[X2[A+28>>2]+4>>2]-17>>>0<=1?X2[X2[A+32>>2]+4>>2]-17>>>0<2:0,X2[A+68>>2]=0,X2[A+4>>2]=0,X2[A+8>>2]=1065353216,X2[A+60>>2]=-1,X2[A+64>>2]=0,X2[(s=A+12|0)>>2]=0,X2[s+4>>2]=0,X2[6364]=X2[6364]+1,s=X2[A+24>>2],S2[s+312|0]=0,S2[s+356|0]=1,u=J2[A+52|0],C=U2[A+48>>2],Y=U2[A+44>>2],X2[(l=s+336|0)>>2]=0,X2[l+4>>2]=0,X2[(l=s+300|0)>>2]=1566444395,X2[l+4>>2]=0,X2[s+292>>2]=1566444395,X2[s+296>>2]=1566444395,X2[(l=s+344|0)>>2]=0,X2[l+4>>2]=0,S2[s+352|0]=0,X2[s>>2]=0,S2[0|(s=s+332|0)]=240&J2[0|s],a=A+4|0,v=P2(0xde0b6b000000000);;){X2[i+60>>2]=0,w=U2[A+8>>2],G=P2(-w),B=U2[A+4>>2],Q=U2[A+12>>2],U2[i+56>>2]=P2(P2(U2[e+24>>2]*G)-P2(B*U2[e+8>>2]))-P2(Q*U2[e+40>>2]),U2[i+52>>2]=P2(P2(U2[e+20>>2]*G)-P2(B*U2[e+4>>2]))-P2(Q*U2[e+36>>2]),U2[i+48>>2]=P2(P2(U2[e+16>>2]*G)-P2(B*U2[e>>2]))-P2(Q*U2[e+32>>2]),X2[i+44>>2]=0,U2[i+40>>2]=P2(P2(B*U2[e+72>>2])+P2(w*U2[e+88>>2]))+P2(Q*U2[e+104>>2]),U2[i+36>>2]=P2(P2(B*U2[e+68>>2])+P2(w*U2[e+84>>2]))+P2(Q*U2[e+100>>2]),U2[i+32>>2]=P2(P2(B*U2[e+64>>2])+P2(w*U2[e+80>>2]))+P2(Q*U2[e+96>>2]),w0(i+16|0,X2[A+28>>2],i+48|0),w0(i,X2[A+32>>2],i+32|0);A:{if(G=U2[i+16>>2],d=U2[i+20>>2],w=U2[i+24>>2],h=P2(P2(P2(P2(G*U2[i+128>>2])+P2(d*U2[i+132>>2]))+P2(w*U2[i+136>>2]))+U2[i+176>>2]),Z=U2[i>>2],E=U2[i+4>>2],g=U2[i+8>>2],m=P2(P2(P2(P2(Z*U2[i+64>>2])+P2(E*U2[i+68>>2]))+P2(g*U2[i+72>>2]))+U2[i+112>>2]),Q=P2(h-m),R=P2(P2(P2(P2(G*U2[i+144>>2])+P2(d*U2[i+148>>2]))+P2(w*U2[i+152>>2]))+U2[i+180>>2]),D=P2(P2(P2(P2(Z*U2[i+80>>2])+P2(E*U2[i+84>>2]))+P2(g*U2[i+88>>2]))+U2[i+116>>2]),B=P2(R-D),T=P2(k?0:P2(P2(P2(G*U2[i+160>>2])+P2(d*U2[i+164>>2]))+P2(w*U2[i+168>>2]))+U2[i+184>>2]),Z=P2(k?0:P2(P2(P2(Z*U2[i+96>>2])+P2(E*U2[i+100>>2]))+P2(g*U2[i+104>>2]))+U2[i+120>>2]),d=P2(T-Z),(G=P2(P2(P2(Q*U2[A+4>>2])+P2(B*U2[A+8>>2]))+P2(d*U2[A+12>>2])))>P2(0)&&P2(G*G)>P2(v*U2[e+128>>2]))X2[A+68>>2]=10;else{s=X2[A+24>>2];e:if((0|(W=X2[s>>2]))<1)F=0;else for(l=s+12|0,w=U2[s+308>>2],_=0,F=1;;){if(E=P2(Q-U2[l-8>>2]),g=P2(E*E),E=P2(B-U2[l-4>>2]),g=P2(g+P2(E*E)),E=P2(d-U2[l>>2]),P2(g+P2(E*E))<=w)break e;if(l=l+16|0,F=(0|(_=_+1|0))<(0|W),(0|_)==(0|W))break}e:{r:{if(U2[s+304>>2]==P2(0)&&d==U2[s+300>>2]&&B==U2[s+296>>2]){if(U2[s+292>>2]==Q|F)break r;break e}if(!F)break e}X2[A+68>>2]=I=1,l=0;break A}if((E=P2(v-G))<=P2(v*P2(9.999999974752427e-7)))X2[A+68>>2]=E<=P2(0)?2:11;else if(X2[s+304>>2]=0,U2[s+296>>2]=B,U2[s+300>>2]=d,S2[s+356|0]=1,U2[s+292>>2]=Q,X2[(l=s+(W<<4)|0)+16>>2]=0,U2[l+8>>2]=B,U2[l+12>>2]=d,U2[l+4>>2]=Q,l=s+(X2[s>>2]<<4)|0,X2[l+96>>2]=0,U2[l+88>>2]=R,U2[l+92>>2]=T,U2[l+84>>2]=h,l=s+(X2[s>>2]<<4)|0,X2[l+176>>2]=0,U2[l+168>>2]=D,U2[l+172>>2]=Z,U2[l+164>>2]=m,X2[s>>2]=X2[s>>2]+1,T1(s=X2[A+24>>2])){if(w=U2[s+288>>2],B=U2[s+276>>2],d=U2[s+280>>2],Z=U2[s+284>>2],!((Q=P2(P2(P2(B*B)+P2(d*d))+P2(Z*Z)))>2]=12,I=1,l=0):(U2[A+16>>2]=w,U2[A+12>>2]=Z,U2[A+8>>2]=d,U2[A+4>>2]=B,s=X2[A+64>>2],X2[A+64>>2]=s+1,1e3<((l=0)|s)||(4!=X2[X2[A+24>>2]>>2]?l=1:X2[A+68>>2]=13)),v=Q;break A}X2[A+68>>2]=6,U2[A+16>>2]=w,U2[A+12>>2]=Z,U2[A+8>>2]=d,U2[A+4>>2]=B}else X2[A+68>>2]=3}I=1,l=0}if(!l)break}B=P2(0),d=u?P2(0):C,Z=P2((u?P2(0):Y)+d),l=_=0,I&&(T1(s=X2[A+24>>2]),W=X2[(F=8+a|0)+4>>2],X2[(l=i+200|0)>>2]=X2[F>>2],X2[l+4>>2]=W,l=X2[4+a>>2],X2[i+192>>2]=X2[a>>2],X2[i+196>>2]=l,G=U2[s+268>>2],w=U2[s+264>>2],Q=U2[s+260>>2],E=U2[A+4>>2],g=U2[A+8>>2],C=U2[A+12>>2],(B=P2(P2(P2(E*E)+P2(g*g))+P2(C*C)))>2]=5),s=1,B=(l=B>P2(14210854715202004e-30))?(B=P2(P2(1)/P2(O2(B))),U2[i+192>>2]=B*U2[i+192>>2],U2[i+196>>2]=B*U2[i+196>>2],U2[i+200>>2]=B*U2[i+200>>2],v=P2(d/P2(O2(v))),G=P2(P2(v*C)+G),w=P2(P2(v*g)+w),Q=P2(P2(v*E)+Q),P2(P2(P2(1)/B)-Z)):(s=2,P2(0)),X2[A+60>>2]=s),X2[A+72>>2]&&X2[A+20>>2]&&X2[A+68>>2]&&(_=P2(Z+B)>2])){if(X2[a>>2]=0,X2[4+a>>2]=0,X2[(_=8+a|0)>>2]=0,X2[_+4>>2]=0,X2[6365]=X2[6365]+1,0|N2[X2[X2[s>>2]+8>>2]](s,X2[A+24>>2],X2[A+28>>2],X2[A+32>>2],i+128|0,i- -64|0,a,i+48|0,i+32|0,f)){if(v=P2(0),d=U2[i+32>>2],g=U2[i+48>>2],C=P2(d-g),Z=U2[i+36>>2],R=U2[i+52>>2],Y=P2(Z-R),E=U2[i+40>>2],D=U2[i+56>>2],h=P2(E-D),(m=P2(P2(P2(C*C)+P2(Y*Y))+P2(h*h)))<=P2(14210854715202004e-30)&&(C=U2[A+4>>2],Y=U2[A+8>>2],h=U2[A+12>>2],m=P2(P2(P2(C*C)+P2(Y*Y))+P2(h*h)),v=U2[A+16>>2]),m>P2(14210854715202004e-30)){if(X2[A+60>>2]=3,g=P2(g-d),N=P2(g*g),g=P2(R-Z),N=P2(N+P2(g*g)),g=P2(D-E),!(!((g=P2(-P2(O2(P2(N+P2(g*g))))))>2]=v,B=P2(P2(1)/P2(O2(m))),U2[i+200>>2]=h*B,U2[i+196>>2]=Y*B,U2[i+192>>2]=C*B,Q=d,w=Z,G=E,B=g;break e}X2[A+60>>2]=8;break e}if(X2[A+60>>2]=9,l)break e;break A}if(E=U2[A+4>>2],g=U2[A+8>>2],C=U2[A+12>>2],P2(P2(P2(E*E)+P2(g*g))+P2(C*C))>P2(0)){if(Y=U2[i+32>>2],v=P2(U2[i+48>>2]-Y),N=P2(v*v),h=U2[i+36>>2],v=P2(U2[i+52>>2]-h),N=P2(N+P2(v*v)),m=U2[i+40>>2],v=P2(U2[i+56>>2]-m),!(!((v=P2(P2(O2(P2(N+P2(v*v))))-Z))>2],X2[(s=f=i+200|0)>>2]=X2[l>>2],X2[s+4>>2]=_,X2[A+60>>2]=6,s=X2[4+a>>2],X2[i+192>>2]=X2[a>>2],X2[i+196>>2]=s,Q=U2[i+192>>2],w=U2[i+196>>2],G=U2[f>>2],B=P2(P2(1)/P2(O2(P2(P2(P2(Q*Q)+P2(w*w))+P2(G*G))))),U2[f>>2]=G*B,U2[i+192>>2]=Q*B,U2[i+196>>2]=w*B,G=P2(P2(d*C)+m),w=P2(P2(d*g)+h),Q=P2(P2(d*E)+Y),B=v;break e}X2[A+60>>2]=5;break e}}if(!l)break A}(U2[e+128>>2]>P2(B*B)||B>2],X2[a>>2]=X2[i+192>>2],X2[4+a>>2]=f,U2[A+56>>2]=B,l=X2[(f=i+200|0)+4>>2],X2[(s=8+a|0)>>2]=X2[f>>2],X2[s+4>>2]=l,X2[i+60>>2]=0,v=U2[i+192>>2],Z=U2[i+196>>2],d=U2[f>>2],U2[i+56>>2]=P2(P2(v*U2[e+8>>2])+P2(Z*U2[e+24>>2]))+P2(d*U2[e+40>>2]),U2[i+52>>2]=P2(P2(v*U2[e+4>>2])+P2(Z*U2[e+20>>2]))+P2(d*U2[e+36>>2]),U2[i+48>>2]=P2(P2(v*U2[e>>2])+P2(Z*U2[e+16>>2]))+P2(d*U2[e+32>>2]),X2[i+44>>2]=0,Z=P2(-Z),U2[i+40>>2]=P2(P2(U2[e+88>>2]*Z)-P2(v*U2[e+72>>2]))-P2(d*U2[e+104>>2]),U2[i+36>>2]=P2(P2(U2[e+84>>2]*Z)-P2(v*U2[e+68>>2]))-P2(d*U2[e+100>>2]),U2[i+32>>2]=P2(P2(U2[e+80>>2]*Z)-P2(v*U2[e+64>>2]))-P2(d*U2[e+96>>2]),w0(i+16|0,X2[A+28>>2],i+48|0),w0(i,X2[A+32>>2],i+32|0),v=U2[f>>2],V=U2[i+184>>2],p=U2[i+168>>2],M=U2[i+160>>2],S=U2[i+164>>2],X=U2[i+120>>2],J=U2[i+104>>2],U=U2[i+96>>2],H=U2[i+100>>2],P=U2[i+180>>2],j=U2[i+152>>2],z=U2[i+144>>2],O=U2[i+148>>2],K=U2[i+116>>2],L=U2[i+88>>2],q=U2[i+80>>2],$=U2[i+84>>2],A2=U2[i+176>>2],e2=U2[i+136>>2],E=U2[i+24>>2],r2=U2[i+128>>2],g=U2[i+16>>2],f2=U2[i+132>>2],C=U2[i+20>>2],i2=U2[i+112>>2],a2=U2[i+72>>2],Y=U2[i+8>>2],n2=U2[i+64>>2],h=U2[i>>2],b2=U2[i+68>>2],m=U2[i+4>>2],Z=U2[i+196>>2],d=U2[i+192>>2],X2[i+60>>2]=0,R=P2(-Z),U2[i+56>>2]=P2(P2(U2[e+24>>2]*R)-P2(d*U2[e+8>>2]))-P2(v*U2[e+40>>2]),U2[i+52>>2]=P2(P2(U2[e+20>>2]*R)-P2(d*U2[e+4>>2]))-P2(v*U2[e+36>>2]),U2[i+48>>2]=P2(P2(U2[e+16>>2]*R)-P2(d*U2[e>>2]))-P2(v*U2[e+32>>2]),X2[i+44>>2]=0,U2[i+40>>2]=P2(P2(d*U2[e+72>>2])+P2(Z*U2[e+88>>2]))+P2(v*U2[e+104>>2]),U2[i+36>>2]=P2(P2(d*U2[e+68>>2])+P2(Z*U2[e+84>>2]))+P2(v*U2[e+100>>2]),U2[i+32>>2]=P2(P2(d*U2[e+64>>2])+P2(Z*U2[e+80>>2]))+P2(v*U2[e+96>>2]),w0(i+16|0,X2[A+28>>2],i+48|0),w0(i,X2[A+32>>2],i+32|0),Z=U2[i+16>>2],D=U2[i+20>>2],T=U2[i+24>>2],o=U2[i>>2],c=U2[i+4>>2],N=U2[i+8>>2],x=U2[i+192>>2],y=U2[i+196>>2],t2=P2(P2(P2(P2(P2(P2(P2(Z*U2[i+128>>2])+P2(D*U2[i+132>>2]))+P2(T*U2[i+136>>2]))+U2[i+176>>2])-P2(P2(P2(P2(o*U2[i+64>>2])+P2(c*U2[i+68>>2]))+P2(N*U2[i+72>>2]))+U2[i+112>>2]))*x)+P2(P2(P2(P2(P2(P2(Z*U2[i+144>>2])+P2(D*U2[i+148>>2]))+P2(T*U2[i+152>>2]))+U2[i+180>>2])-P2(P2(P2(P2(o*U2[i+80>>2])+P2(c*U2[i+84>>2]))+P2(N*U2[i+88>>2]))+U2[i+116>>2]))*y)),N=P2(P2(P2(P2(P2(Z*U2[i+160>>2])+P2(D*U2[i+164>>2]))+P2(T*U2[i+168>>2]))+U2[i+184>>2])-P2(P2(P2(P2(o*U2[i+96>>2])+P2(c*U2[i+100>>2]))+P2(N*U2[i+104>>2]))+U2[i+120>>2])),Z=U2[f>>2],P2(t2+P2(N*Z))>2]=10,U2[i+200>>2]=-Z,U2[i+196>>2]=-y,U2[i+192>>2]=-x),X2[i+60>>2]=0,U2[i+56>>2]=n+G,U2[i+52>>2]=b+w,U2[i+48>>2]=t+Q,N2[X2[X2[r>>2]+16>>2]](r,i+192|0,i+48|0,B))}K2=i+208|0}function x1(A,e,r,f,i,a,n,b,t,o,c){var k;P2(0),P2(0);return r=P2(P2(P2(r*a)+P2(f*n))+P2(i*b)),f=P2(P2(P2(U2[A>>2]*a)+P2(U2[A+16>>2]*n))+P2(U2[A+32>>2]*b)),i=U2[t+80>>2],k=P2(f*(f>2]*a)+P2(U2[A+20>>2]*n))+P2(U2[A+36>>2]*b)),i=U2[t+84>>2],k=P2(k+P2(f*(f>2]*a)+P2(U2[A+24>>2]*n))+P2(U2[A+40>>2]*b)),i=U2[t+88>>2],f=P2(k+P2(f*(f>2])>2]*a)+P2(U2[e+16>>2]*n))+P2(U2[e+32>>2]*b)),i=U2[o+80>>2],A=P2(f*(f>2]*a)+P2(U2[e+20>>2]*n))+P2(U2[e+36>>2]*b)),i=U2[o+84>>2],A=P2(A+P2(f*(f>2]*a)+P2(U2[e+24>>2]*n))+P2(U2[e+40>>2]*b)),i=U2[o+88>>2],f=P2(A+P2(f*(f>2],f=P2(k+(i>2]))<=-1)for(X2[i+8>>2]<=-1&&((k=X2[i+12>>2])&&J2[i+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[k-4>>2])),S2[i+16|0]=1,X2[i+8>>2]=0,X2[i+12>>2]=0),c=o<<4;;)if(F=X2[4+t>>2],k=X2[i+12>>2]+c|0,X2[k>>2]=X2[t>>2],X2[k+4>>2]=F,F=X2[(d=8+t|0)+4>>2],X2[(k=k+8|0)>>2]=X2[d>>2],X2[k+4>>2]=F,c=c+16|0,!((k=o)>>>0<=(o=o+1|0)>>>0))break;if(((X2[i+4>>2]=c=0)|(k=X2[f+4>>2]))>X2[i+8>>2]&&(k&&(X2[6258]=X2[6258]+1,(o=L2(19+(k<<4)|0))&&(X2[(c=o+19&-16)-4>>2]=o)),(o=X2[i+12>>2])&&J2[i+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[o-4>>2])),X2[i+12>>2]=c,S2[i+16|0]=1,X2[i+8>>2]=k),!((0|(F=X2[e+28>>2]))<1)){for(o=(a=X2[e+36>>2])+28|0,s=U2[r+40>>2],Y=U2[r+36>>2],Z=U2[r+24>>2],v=U2[r+20>>2],m=U2[A+8>>2],N=U2[A+4>>2],W=U2[A>>2],h=U2[r+32>>2],Q=U2[r+16>>2],g=U2[r+8>>2],E=U2[r+4>>2],G=U2[r>>2],c=0,B=P2(34028234663852886e22),d=-1;;)if(C=U2[o-8>>2],R=U2[o-4>>2],D=U2[o>>2],B=(k=(C=P2(P2(P2(P2(P2(P2(C*G)+P2(R*E))+P2(D*g))*W)+P2(P2(P2(P2(C*Q)+P2(R*v))+P2(D*Z))*N))+P2(P2(P2(P2(C*h)+P2(R*Y))+P2(D*s))*m)))>2])))for(P=28+a|0,j=24+a|0,z=20+a|0,O=12+a|0,c=0;;){if(S=(0|(F=c+1|0))==(0|M),2<=(0|(d=X2[(k=f)+4>>2]))){for(o=X2[O>>2],f=X2[o+(c<<2)>>2]<<4,c=X2[e+16>>2],B=U2[(f=f+c|0)>>2],o=c+(X2[o+((S?0:F)<<2)>>2]<<4)|0,m=P2(B-U2[o>>2]),C=U2[f+4>>2],N=P2(C-U2[o+4>>2]),R=U2[f+8>>2],W=P2(R-U2[o+8>>2]),X=P2(P2(P2(m*h)+P2(N*Y))+P2(W*s)),n=U2[z>>2],b=U2[j>>2],p=U2[P>>2],J=P2(P2(P2(G*n)+P2(E*b))+P2(g*p)),U=P2(P2(P2(m*G)+P2(N*E))+P2(W*g)),H=P2(P2(P2(h*n)+P2(Y*b))+P2(s*p)),D=P2(-P2(P2(X*J)-P2(U*H))),I=P2(P2(P2(P2(P2(B*Q)+P2(C*v))+P2(R*Z))+U2[r+52>>2])*D),N=P2(P2(P2(m*Q)+P2(N*v))+P2(W*Z)),Z=P2(P2(P2(Q*n)+P2(v*b))+P2(Z*p)),m=P2(P2(N*H)-P2(X*Z)),Q=P2(I-P2(m*P2(P2(P2(P2(B*G)+P2(C*E))+P2(R*g))+U2[r+48>>2]))),G=P2(P2(U*Z)-P2(N*J)),C=P2(Q-P2(G*P2(P2(P2(P2(B*h)+P2(C*Y))+P2(R*s))+U2[r+56>>2]))),o=X2[k+12>>2],B=U2[(f=(o+(d<<4)|0)-16|0)+4>>2],Z=U2[f>>2],v=U2[f+8>>2],s=P2(P2(P2(P2(B*D)-P2(m*Z))-P2(G*v))-C),T=0;;){h=U2[(f=(T<<4)+o|0)+4>>2],Q=U2[f>>2],g=U2[f+8>>2],E=P2(P2(P2(P2(h*D)-P2(m*Q))-P2(G*g))-C),Y=U2[f+12>>2];A:{if(s>2]))==X2[i+8>>2]&&!((0|(_=c?c<<1:1))<=(0|c))){if(f=0,_&&(X2[6258]=X2[6258]+1,(o=L2(19+(_<<4)|0))&&(X2[(f=o+19&-16)-4>>2]=o)),1<=(0|c))for(o=0;;)if(l=X2[i+12>>2]+o|0,w=X2[l+4>>2],X2[(u=f+o|0)>>2]=X2[l>>2],X2[u+4>>2]=w,w=X2[(l=l+8|0)+4>>2],X2[(u=u+8|0)>>2]=X2[l>>2],X2[u+4>>2]=w,o=o+16|0,!(c=c-1|0))break;(o=X2[i+12>>2])&&J2[i+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[o-4>>2])),X2[i+12>>2]=f,S2[i+16|0]=1,X2[i+8>>2]=_,c=X2[i+4>>2]}f=X2[i+12>>2]+(c<<4)|0,U2[f+8>>2]=g,U2[f+4>>2]=h,U2[f>>2]=Q}else{if(s=P2(s/P2(s-E)),v=P2(v+P2(P2(g-v)*s)),B=P2(B+P2(P2(h-B)*s)),s=P2(Z+P2(P2(Q-Z)*s)),(0|(c=X2[i+4>>2]))==X2[i+8>>2]&&!((0|(_=c?c<<1:1))<=(0|c))){if(f=0,_&&(X2[6258]=X2[6258]+1,(o=L2(19+(_<<4)|0))&&(X2[(f=o+19&-16)-4>>2]=o)),1<=(0|c))for(o=0;;)if(l=X2[i+12>>2]+o|0,w=X2[l+4>>2],X2[(u=f+o|0)>>2]=X2[l>>2],X2[u+4>>2]=w,w=X2[(l=l+8|0)+4>>2],X2[(u=u+8|0)>>2]=X2[l>>2],X2[u+4>>2]=w,o=o+16|0,!(c=c-1|0))break;(o=X2[i+12>>2])&&J2[i+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[o-4>>2])),X2[i+12>>2]=f,S2[i+16|0]=1,X2[i+8>>2]=_,c=X2[i+4>>2]}f=X2[i+12>>2]+(c<<4)|0,U2[f+8>>2]=v,U2[f+4>>2]=B,U2[f>>2]=s,Y=P2(0)}}else{if(!(E>2]))==X2[i+8>>2]&&!((0|(_=c?c<<1:1))<=(0|c))){if(f=0,_&&(X2[6258]=X2[6258]+1,(o=L2(19+(_<<4)|0))&&(X2[(f=o+19&-16)-4>>2]=o)),1<=(0|c))for(o=0;;)if(l=X2[i+12>>2]+o|0,w=X2[l+4>>2],X2[(u=f+o|0)>>2]=X2[l>>2],X2[u+4>>2]=w,w=X2[(l=l+8|0)+4>>2],X2[(u=u+8|0)>>2]=X2[l>>2],X2[u+4>>2]=w,o=o+16|0,!(c=c-1|0))break;(o=X2[i+12>>2])&&J2[i+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[o-4>>2])),X2[i+12>>2]=f,S2[i+16|0]=1,X2[i+8>>2]=_,c=X2[i+4>>2]}if(f=X2[i+12>>2]+(c<<4)|0,X2[f+12>>2]=0,U2[f+8>>2]=v,U2[f+4>>2]=B,U2[f>>2]=s,c=X2[i+4>>2],X2[i+4>>2]=o=c+1|0,X2[i+8>>2]==(0|o)&&!((0|(_=o?o<<1:1))<=(0|o))){if(f=0,_&&(X2[6258]=X2[6258]+1,(o=L2(19+(_<<4)|0))&&(X2[(f=o+19&-16)-4>>2]=o)),0<=(0|c))for(c=c+1|0,o=0;;)if(l=X2[i+12>>2]+o|0,w=X2[l+4>>2],X2[(u=f+o|0)>>2]=X2[l>>2],X2[u+4>>2]=w,w=X2[(l=l+8|0)+4>>2],X2[(u=u+8|0)>>2]=X2[l>>2],X2[u+4>>2]=w,o=o+16|0,!(c=c-1|0))break;(o=X2[i+12>>2])&&J2[i+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[o-4>>2])),X2[i+12>>2]=f,S2[i+16|0]=1,X2[i+8>>2]=_,o=X2[i+4>>2]}f=X2[i+12>>2]+(o<<4)|0,U2[f+8>>2]=g,U2[f+4>>2]=h,U2[f>>2]=Q}U2[(f=f+12|0)>>2]=Y,X2[i+4>>2]=X2[i+4>>2]+1}if((0|(T=T+1|0))==(0|d))break;o=X2[k+12>>2],s=E,v=g,B=h,Z=Q}d=X2[k+4>>2]}if((0|d)<=-1)for(X2[k+8>>2]<=-1&&((f=X2[k+12>>2])&&J2[k+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),S2[k+16|0]=1,X2[k+8>>2]=0,X2[k+12>>2]=0),o=d<<4;;)if(c=X2[4+t>>2],f=X2[k+12>>2]+o|0,X2[f>>2]=X2[t>>2],X2[f+4>>2]=c,T=X2[(c=8+t|0)+4>>2],X2[(f=f+8|0)>>2]=X2[c>>2],X2[f+4>>2]=T,o=o+16|0,!((f=d)>>>0<=(d=f+1|0)>>>0))break;if(X2[k+4>>2]=0,s=U2[r+40>>2],Y=U2[r+36>>2],h=U2[r+32>>2],Z=U2[r+24>>2],v=U2[r+20>>2],Q=U2[r+16>>2],g=U2[r+8>>2],E=U2[r+4>>2],G=U2[r>>2],f=i,c=F,i=k,S)break}if(!((0|(d=X2[f+4>>2]))<1))for(B=U2[20+a>>2],I=P2(B*G),G=U2[24+a>>2],I=P2(I+P2(G*E)),E=U2[28+a>>2],g=P2(I+P2(E*g)),Z=P2(P2(P2(B*Q)+P2(G*v))+P2(E*Z)),s=P2(P2(P2(B*h)+P2(G*Y))+P2(E*s)),B=P2(U2[32+a>>2]-P2(P2(P2(g*U2[r+48>>2])+P2(Z*U2[r+52>>2]))+P2(s*U2[r+56>>2]))),c=o=0;;)if(r=(e=X2[f+12>>2]+o|0)+8|0,o=o+16|0,(v=(v=P2(B+P2(P2(P2(g*U2[e>>2])+P2(Z*U2[e+4>>2]))+P2(s*U2[r>>2]))))<=x?x:v)<=y&&(k=X2[r+4>>2],X2[(i=8+t|0)>>2]=X2[r>>2],X2[i+4>>2]=k,r=X2[e+4>>2],X2[t>>2]=X2[e>>2],X2[4+t>>2]=r,N2[X2[X2[V>>2]+16>>2]](V,A,t,v),d=X2[f+4>>2]),!((0|(c=c+1|0))<(0|d)))break}}K2=16+t|0}function V1(A,e,r,f,i,a){A|=0,e|=0,r|=0,f|=0,i|=0,a|=0;var n,b,t,o,c,k,u,s,l,B,v,d,Z=0,_=P2(0),g=P2(0),E=P2(0),Q=P2(0),w=P2(0),G=P2(0);P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);K2=d=K2-288|0,n=X2[A+4>>2],X2[n+292>>2]=1566444395,X2[n+296>>2]=1566444395,X2[(Z=n+336|0)>>2]=0,X2[Z+4>>2]=0,X2[(Z=n+300|0)>>2]=1566444395,X2[Z+4>>2]=0,X2[(Z=n+344|0)>>2]=0,X2[Z+4>>2]=0,S2[n+352|0]=0,S2[0|(Z=n+332|0)]=240&J2[0|Z],S2[n+312|0]=0,S2[n+356|0]=1,X2[n>>2]=0,_=U2[r+52>>2],g=U2[e+52>>2],Q=U2[i+52>>2],w=U2[f+52>>2],G=U2[r+56>>2],E=U2[(b=e+56|0)>>2],o=U2[i+56>>2],c=U2[(t=f+56|0)>>2],k=U2[r+48>>2],u=U2[e+48>>2],s=U2[i+48>>2],l=U2[f+48>>2],S2[264+d|0]=0,X2[260+d>>2]=1566444395,X2[224+d>>2]=15108,X2[(n=156+d|0)>>2]=0,X2[4+n>>2]=0,X2[144+d>>2]=14952,X2[164+d>>2]=0,X2[148+d>>2]=0,X2[152+d>>2]=1065353216,n=X2[A+12>>2],X2[176+d>>2]=n,Z=X2[A+8>>2],X2[172+d>>2]=Z,X2[168+d>>2]=X2[A+4>>2],X2[180+d>>2]=X2[Z+4>>2],X2[184+d>>2]=X2[n+4>>2],B=d,v=P2(N2[X2[X2[Z>>2]+48>>2]](Z)),U2[188+B>>2]=v,B=P2(N2[X2[X2[n>>2]+48>>2]](n)),X2[216+d>>2]=1,X2[220+d>>2]=1,X2[204+d>>2]=-1,S2[196+d|0]=0,U2[192+d>>2]=B,Z=X2[4+(n=e+8|0)>>2],X2[(A=16+d|0)>>2]=X2[n>>2],X2[A+4>>2]=Z,Z=X2[4+(n=e+24|0)>>2],X2[(A=32+d|0)>>2]=X2[n>>2],X2[A+4>>2]=Z,Z=X2[4+(n=e+40|0)>>2],X2[(A=48+d|0)>>2]=X2[n>>2],X2[A+4>>2]=Z,n=X2[4+b>>2],X2[(A=d+64|0)>>2]=X2[b>>2],X2[A+4>>2]=n,Z=X2[4+(n=f+8|0)>>2],X2[(A=80+d|0)>>2]=X2[n>>2],X2[A+4>>2]=Z,X2[136+d>>2]=1566444395,A=X2[e+4>>2],X2[8+d>>2]=X2[e>>2],X2[12+d>>2]=A,A=X2[e+20>>2],X2[24+d>>2]=X2[e+16>>2],X2[28+d>>2]=A,A=X2[e+36>>2],X2[40+d>>2]=X2[e+32>>2],X2[44+d>>2]=A,A=X2[e+52>>2],X2[56+d>>2]=X2[e+48>>2],X2[60+d>>2]=A,A=X2[f+4>>2],X2[72+d>>2]=X2[f>>2],X2[76+d>>2]=A,Z=X2[4+(n=f+24|0)>>2],X2[(A=96+d|0)>>2]=X2[n>>2],X2[A+4>>2]=Z,n=X2[f+20>>2],X2[(A=88+d|0)>>2]=X2[f+16>>2],X2[A+4>>2]=n,Z=X2[4+(n=f+40|0)>>2],X2[(A=112+d|0)>>2]=X2[n>>2],X2[A+4>>2]=Z,n=X2[f+36>>2],X2[(A=104+d|0)>>2]=X2[f+32>>2],X2[A+4>>2]=n,n=X2[4+t>>2],X2[(A=128+d|0)>>2]=X2[t>>2],X2[A+4>>2]=n,n=X2[f+52>>2],X2[(A=120+d|0)>>2]=X2[f+48>>2],X2[A+4>>2]=n,I1(144+d|0,8+d|0,224+d|0,0,0),Z=X2[4+(n=252+d|0)>>2],X2[(A=280+d|0)>>2]=X2[n>>2],X2[A+4>>2]=Z,A=X2[248+d>>2],X2[272+d>>2]=X2[244+d>>2],X2[276+d>>2]=A;A:if(J2[264+d|(A=0)]){o=P2(P2(G-E)-P2(o-c)),c=P2(P2(_-g)-P2(Q-w)),k=P2(P2(k-u)-P2(s-l)),Q=U2[236+d>>2],w=U2[232+d>>2],G=U2[228+d>>2];e:{if((E=U2[260+d>>2])>P2(.0010000000474974513))for(n=244+d|0,Z=33,g=P2(0);;){if(!(Z=Z-1|(A=0)))break A;if(A=0,(_=P2(g-P2(E/P2(P2(P2(k*G)+P2(c*w))+P2(o*Q)))))<=g)break A;if(A=0,_>P2(1))break A;if(_>2]>>2]](a,_),g=P2(P2(1)-_),U2[56+d>>2]=P2(g*U2[e+48>>2])+P2(_*U2[r+48>>2]),U2[60+d>>2]=P2(g*U2[e+52>>2])+P2(_*U2[r+52>>2]),U2[64+d>>2]=P2(g*U2[e+56>>2])+P2(_*U2[r+56>>2]),U2[120+d>>2]=P2(g*U2[f+48>>2])+P2(_*U2[i+48>>2]),U2[124+d>>2]=P2(g*U2[f+52>>2])+P2(_*U2[i+52>>2]),U2[128+d>>2]=P2(g*U2[f+56>>2])+P2(_*U2[i+56>>2]),I1(144+d|0,8+d|0,224+d|0,0,0),!J2[264+d|(A=0)])break A;if((E=U2[260+d>>2])>2]=_,A=X2[232+d>>2],X2[a+132>>2]=X2[228+d>>2],X2[a+136>>2]=A,e=X2[240+d>>2],X2[(A=a+140|0)>>2]=X2[236+d>>2],X2[A+4>>2]=e,A=X2[4+n>>2],X2[a+148>>2]=X2[n>>2],X2[a+152>>2]=A,r=X2[(e=8+n|0)+4>>2],X2[(A=a+156|0)>>2]=X2[e>>2],X2[A+4>>2]=r;break e}if(t=X2[4+(b=8+n|0)>>2],X2[(A=280+d|0)>>2]=X2[b>>2],X2[A+4>>2]=t,A=X2[4+n>>2],X2[272+d>>2]=X2[n>>2],X2[276+d>>2]=A,Q=U2[236+d>>2],w=U2[232+d>>2],G=U2[228+d>>2],g=_,!(E>P2(.0010000000474974513)))break}else _=P2(0);if(g=U2[240+d>>2],A=0,P2(-U2[a+172>>2])<=P2(P2(P2(k*G)+P2(c*w))+P2(o*Q)))break A;U2[a+132>>2]=G,U2[a+164>>2]=_,A=X2[276+d>>2],X2[a+148>>2]=X2[272+d>>2],X2[a+152>>2]=A,U2[a+144>>2]=g,U2[a+140>>2]=Q,U2[a+136>>2]=w,r=X2[(e=280+d|0)+4>>2],X2[(A=a+156|0)>>2]=X2[e>>2],X2[A+4>>2]=r}A=1}return K2=288+d|0,0|A}function p1(A,e,r,f,i,a,n,b,t,o,c){var k,u=P2(0),s=P2(0),l=P2(0),B=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),U2[(b=(b<<2)+o|0)>>2]),v=P2(U2[o+48>>2]-U2[t+48>>2]),d=U2[b+16>>2],Z=P2(U2[o+52>>2]-U2[t+52>>2]),b=U2[b+32>>2],_=P2(U2[o+56>>2]-U2[t+56>>2]),l=P2(P2(P2(B*v)+P2(d*Z))+P2(b*_)),t=U2[(n=(n<<2)+t|0)>>2],g=U2[n+16>>2],n=U2[n+32>>2],E=P2(P2(P2(t*v)+P2(g*Z))+P2(n*_)),Q=P2(P2(P2(t*B)+P2(g*d))+P2(n*b));(s=P2(P2(1)-P2(Q*Q)))!=P2(0)&&(u=P2(-r),(s=P2(P2(E-P2(Q*l))/s))P2(.7071067690849304)?(X2[A>>2]=0,f=P2(P2(1)/P2(O2(P2(P2(g*g)+P2(n*n))))),r=P2(g*f),U2[A+8>>2]=r,u=P2(f*P2(-n)),U2[A+4>>2]=u,f=P2(0)):(X2[A+8>>2]=0,r=P2(P2(1)/P2(O2(P2(P2(t*t)+P2(g*g))))),u=P2(t*r),U2[A+4>>2]=u,f=P2(r*P2(-g)),U2[A>>2]=f,r=P2(0)):(X2[A+12>>2]=0,f=P2(P2(-1)/E),r=P2(r*f),U2[A+8>>2]=r,u=P2(c*f),U2[A+4>>2]=u,f=P2(i*f),U2[A>>2]=f),i=U2[o+48>>2],c=U2[o+52>>2],g=U2[o+56>>2],X2[e+12>>2]=0,U2[e+8>>2]=P2(l+g)+P2(r*a),U2[e+4>>2]=P2(s+c)+P2(u*a),U2[e>>2]=P2(Q+i)+P2(f*a)),B}function M1(A,e,r,f){P2(f)}function S1(A,e,r,f,i,a){A|=0,e|=0,r|=0,f|=0,i|=0,a|=0;var n,b,t,o,c,x,y,V,p,M,S,X,J,U,H,P,j,z,O,K,L,q,$,A2,e2,r2,f2,i2,a2,n2,k,u=0,s=P2(0),l=0,B=P2(0),v=0,d=P2(0),Z=(P2(0),P2(0)),_=P2(0),g=P2(0),E=0,Q=P2(0),w=P2(0),G=P2(0),C=P2(0),h=0,F=(P2(0),P2(0),P2(0)),Y=P2(0),m=0,N=P2(0),R=(P2(0),P2(0)),D=(P2(0),P2(0)),T=P2(0),W=P2(0),I=P2(0),b2=(P2(0),P2(0),P2(0),P2(0)),t2=P2(0),o2=(P2(0),P2(0)),c2=P2(0),k2=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0)),u2=P2(0),s2=P2(0),l2=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0));K2=k=K2-32|0,v=X2[A+4>>2],S2[v+312|0]=0,S2[v+356|0]=1,X2[v>>2]=0,X2[v+292>>2]=1566444395,X2[v+296>>2]=1566444395,X2[(u=v+336|0)>>2]=0,X2[u+4>>2]=0,X2[(u=v+300|0)>>2]=1566444395,X2[u+4>>2]=0,X2[(u=v+344|0)>>2]=0,X2[u+4>>2]=0,S2[v+352|0]=0,S2[0|(u=v+332|0)]=240&J2[0|u],O=U2[(x=f+40|0)>>2],K=U2[(y=f+36|0)>>2],L=U2[(V=f+24|0)>>2],q=U2[(p=f+20|0)>>2],M=U2[($=e+20|0)>>2],S=U2[(A2=e+36|0)>>2],X=U2[(l=e+24|0)>>2],d=U2[r+52>>2],b2=U2[(E=e+52|0)>>2],Q=U2[i+52>>2],t2=U2[(h=f+52|0)>>2],J=U2[(m=e+40|0)>>2],R=U2[r+56>>2],o2=U2[(v=e+56|0)>>2],Z=U2[i+56>>2],c2=U2[(u=f+56|0)>>2],e2=U2[f+32>>2],r2=U2[f+16>>2],f2=U2[f+8>>2],i2=U2[f+4>>2],a2=U2[f>>2],U=U2[e>>2],H=U2[e+16>>2],P=U2[e+32>>2],j=U2[e+4>>2],z=U2[e+8>>2],s=U2[r+48>>2],k2=U2[e+48>>2],_=U2[i+48>>2],u2=U2[f+48>>2],n2=X2[A+8>>2],X2[12+k>>2]=0,c=P2(P2(d-b2)-P2(Q-t2)),Q=P2(-c),b=P2(P2(s-k2)-P2(_-u2)),t=P2(P2(R-o2)-P2(Z-c2)),U2[8+k>>2]=P2(P2(X*Q)-P2(z*b))-P2(J*t),U2[4+k>>2]=P2(P2(M*Q)-P2(b*j))-P2(t*S),U2[k>>2]=P2(P2(H*Q)-P2(b*U))-P2(t*P),N2[X2[X2[n2>>2]+64>>2]](16+k|0,n2,k),g=U2[v>>2],D=U2[m>>2],T=U2[A2>>2],W=U2[E>>2],I=U2[l>>2],F=U2[$>>2],Y=U2[e+32>>2],n=U2[e+48>>2],B=U2[e+8>>2],d=U2[e>>2],Z=U2[e+4>>2],s=U2[e+16>>2],G=U2[24+k>>2],C=U2[16+k>>2],N=U2[20+k>>2],v=X2[A+12>>2],X2[12+k>>2]=0,U2[8+k>>2]=P2(P2(b*U2[f+8>>2])+P2(c*U2[V>>2]))+P2(t*U2[x>>2]),U2[4+k>>2]=P2(P2(b*U2[f+4>>2])+P2(c*U2[p>>2]))+P2(t*U2[y>>2]),U2[k>>2]=P2(P2(b*U2[f>>2])+P2(c*U2[f+16>>2]))+P2(t*U2[f+32>>2]),N2[X2[X2[v>>2]+64>>2]](16+k|0,v,k),Q=P2(0),R=P2(0),_=P2(0);A:{e:if(B=P2(n+P2(P2(P2(C*d)+P2(N*Z))+P2(G*B))),o=U2[16+k>>2],n=U2[20+k>>2],Z=U2[24+k>>2],B=P2(B-P2(P2(P2(P2(o*U2[f>>2])+P2(n*U2[f+4>>2]))+P2(Z*U2[f+8>>2]))+U2[f+48>>2])),d=P2(P2(W+P2(P2(P2(C*s)+P2(N*F))+P2(G*I)))-P2(P2(P2(P2(o*U2[f+16>>2])+P2(n*U2[p>>2]))+P2(Z*U2[V>>2]))+U2[h>>2])),s=P2(P2(g+P2(P2(P2(C*Y)+P2(N*T))+P2(G*D)))-P2(P2(P2(P2(o*U2[f+32>>2])+P2(n*U2[y>>2]))+P2(Z*U2[x>>2]))+U2[u>>2])),P2(P2(P2(B*B)+P2(d*d))+P2(s*s))>P2(9999999747378752e-20))for(v=31,Z=P2(0);;){if(u=X2[A+8>>2],X2[12+k>>2]=E=0,n=P2(-d),U2[8+k>>2]=P2(P2(X*n)-P2(z*B))-P2(J*s),U2[4+k>>2]=P2(P2(M*n)-P2(j*B))-P2(S*s),U2[k>>2]=P2(P2(H*n)-P2(U*B))-P2(P*s),N2[X2[X2[u>>2]+64>>2]](16+k|0,u,k),N=U2[24+k>>2],o=U2[16+k>>2],F=U2[20+k>>2],u=X2[A+12>>2],X2[12+k>>2]=0,U2[8+k>>2]=P2(P2(f2*B)+P2(L*d))+P2(O*s),U2[4+k>>2]=P2(P2(i2*B)+P2(q*d))+P2(K*s),U2[k>>2]=P2(P2(a2*B)+P2(r2*d))+P2(e2*s),N2[X2[X2[u>>2]+64>>2]](16+k|0,u,k),w>P2(1))break A;if(D=P2(k2+P2(P2(P2(U*o)+P2(j*F))+P2(z*N))),g=U2[16+k>>2],Y=U2[20+k>>2],n=U2[24+k>>2],T=P2(u2+P2(P2(P2(a2*g)+P2(i2*Y))+P2(f2*n))),G=P2(D-T),W=P2(b2+P2(P2(P2(H*o)+P2(M*F))+P2(X*N))),I=P2(t2+P2(P2(P2(r2*g)+P2(q*Y))+P2(L*n))),C=P2(W-I),F=P2(o2+P2(P2(P2(P*o)+P2(S*F))+P2(J*N))),Y=P2(c2+P2(P2(P2(e2*g)+P2(K*Y))+P2(O*n))),g=P2(F-Y),(n=P2(P2(P2(G*B)+P2(C*d))+P2(g*s)))>P2(0)){if((_=P2(P2(P2(b*B)+P2(c*d))+P2(t*s)))>=P2(-14210854715202004e-30))break A;w=P2(w-P2(n/_)),_=P2(P2(1)-w),c2=P2(P2(_*U2[f+56>>2])+P2(w*U2[i+56>>2])),t2=P2(P2(_*U2[f+52>>2])+P2(w*U2[i+52>>2])),u2=P2(P2(_*U2[f+48>>2])+P2(w*U2[i+48>>2])),o2=P2(P2(_*U2[e+56>>2])+P2(w*U2[r+56>>2])),b2=P2(P2(_*U2[e+52>>2])+P2(w*U2[r+52>>2])),k2=P2(P2(_*U2[e+48>>2])+P2(w*U2[r+48>>2])),Q=B,R=d,s2=s,_=Z}l=X2[A+4>>2];r:if((0|(u=X2[l>>2]))<1)m=0;else for(h=l+12|0,Z=U2[l+308>>2],m=1;;){if(s=P2(G-U2[h-8>>2]),B=P2(s*s),s=P2(C-U2[h-4>>2]),B=P2(B+P2(s*s)),s=P2(g-U2[h>>2]),Z>=P2(B+P2(s*s)))break r;if(h=h+16|0,m=(0|(E=E+1|0))<(0|u),(0|u)==(0|E))break}r:{if(U2[l+304>>2]==P2(0)&&g==U2[l+300>>2]&&C==U2[l+296>>2]){if(G==U2[l+292>>2]|m)break r}else if(m)break r;X2[l+304>>2]=0,U2[l+296>>2]=C,U2[l+300>>2]=g,S2[l+356|0]=1,U2[l+292>>2]=G,X2[(u=(u<<4)+l|0)+16>>2]=0,U2[u+8>>2]=C,U2[u+12>>2]=g,U2[u+4>>2]=G,u=(X2[l>>2]<<4)+l|0,X2[u+96>>2]=0,U2[u+88>>2]=W,U2[u+92>>2]=F,U2[u+84>>2]=D,u=(X2[l>>2]<<4)+l|0,X2[u+176>>2]=0,U2[u+168>>2]=I,U2[u+172>>2]=Y,U2[u+164>>2]=T,X2[l>>2]=X2[l>>2]+1,l=X2[A+4>>2]}if(!T1(l))break e;if(B=U2[l+276>>2],d=U2[l+280>>2],s=U2[l+284>>2],!(P2(P2(P2(B*B)+P2(d*d))+P2(s*s))>P2(9999999747378752e-20)))break e;if(!v)break e;Z=U2[l+288>>2],v=v-1|0}U2[a+164>>2]=w,B=P2(0),d=P2(0),s=P2(0),(Z=P2(P2(P2(Q*Q)+P2(R*R))+P2(s2*s2)))>=P2(14210854715202004e-30)&&(s=P2(P2(1)/P2(O2(Z))),d=P2(s2*s),B=P2(R*s),l2=P2(Q*s),s=_),U2[a+132>>2]=l2,U2[a+144>>2]=s,U2[a+140>>2]=d,U2[a+136>>2]=B,E=0,P2(-U2[a+172>>2])<=P2(P2(P2(b*l2)+P2(c*B))+P2(t*d))||(T1(A=X2[A+4>>2]),i=X2[A+260>>2],f=X2[A+264>>2],A=X2[(e=A+268|0)+4>>2],X2[(r=a+156|0)>>2]=X2[e>>2],X2[r+4>>2]=A,X2[a+148>>2]=i,X2[a+152>>2]=f,E=1)}return K2=32+k|0,0|E}function X1(A){return 2}function J1(A){return 3}function U1(A){return 1}function H1(A,e,r){var f,i,a,n,b,t=0,o=0,c=0,k=0;if(K2=b=K2-32|0,n=J2[A+68|0],a=X2[(i=n?r:e)+4>>2],f=X2[a+24>>2],(0|(k=X2[A+52>>2]))<(0|f)){if(X2[A+56>>2]<(0|f)){if(f&&(X2[6258]=X2[6258]+1,(t=L2(19+(f<<2)|0))&&(X2[(c=t+19&-16)-4>>2]=t)),1<=(0|k))for(t=k;;)if(X2[o+c>>2]=X2[X2[A+60>>2]+o>>2],o=o+4|0,!(t=t-1|0))break;(t=X2[A+60>>2])&&J2[A- -64|0]&&(X2[6259]=X2[6259]+1,q2(X2[t-4>>2])),X2[A+60>>2]=c,X2[A+56>>2]=f,S2[A- -64|0]=1}for(o=k<<2,t=f-k|0;;)if(o=o+4|(X2[X2[A+60>>2]+o>>2]=0),!(t=t-1|0))break}if(1<=(0|(X2[A+52>>2]=f)))for(e=n?e:r,t=64,c=o=0;;)if(X2[a+72>>2]?X2[X2[A+60>>2]+o>>2]=0:(r=X2[X2[a+32>>2]+t>>2],X2[28+b>>2]=c,X2[24+b>>2]=-1,X2[8+b>>2]=i,k=X2[i+12>>2],X2[16+b>>2]=X2[i+8>>2],X2[20+b>>2]=k,X2[12+b>>2]=r,r=X2[A+4>>2],r=0|N2[X2[X2[r>>2]+8>>2]](r,8+b|0,e,X2[A+72>>2],1),X2[X2[A+60>>2]+o>>2]=r),t=t+80|0,o=o+4|0,(0|(c=c+1|0))==(0|f))break;K2=32+b|0}function P1(A){var e,r=0,f=0;if(X2[(A|=0)>>2]=16500,1<=(0|(f=X2[A+52>>2])))for(;;)if((e=X2[X2[A+60>>2]+r>>2])&&(N2[X2[X2[e>>2]>>2]](e),e=X2[A+4>>2],N2[X2[X2[e>>2]+60>>2]](e,X2[X2[A+60>>2]+r>>2])),r=r+4|0,!(f=f-1|0))break;return(r=X2[A+60>>2])&&J2[A- -64|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+60>>2]=0,X2[A+52>>2]=0,X2[A+56>>2]=0,S2[A- -64|0]=1,(r=X2[A+40>>2])&&J2[A+44|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+40>>2]=0,S2[A+44|0]=1,X2[(r=A+32|0)>>2]=0,X2[r+4>>2]=0,(r=X2[A+20>>2])&&J2[A+24|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+20>>2]=0,S2[A+24|0]=1,X2[(r=A+12|0)>>2]=0,(X2[r+4>>2]=0)|A}function j1(A,e,r,f,i){A|=0,e|=0,r|=0,f|=0,i|=0;var a,n,b,x,y,V,p,t,o=0,c=0,k=0,u=P2(0),s=P2(0),l=P2(0),B=P2(0),v=P2(0),d=P2(0),Z=P2(0),_=P2(0),g=P2(0),E=P2(0),Q=P2(0),w=P2(0),G=P2(0),C=P2(0),h=P2(0),F=P2(0),Y=P2(0),m=P2(0),N=P2(0),R=P2(0),D=P2(0),T=P2(0),W=P2(0),I=P2(0);if(K2=t=K2-160|0,a=J2[A+68|0],n=X2[(b=a?r:e)+4>>2],X2[n+76>>2]!=X2[A+80>>2]){if(1<=(0|(k=X2[A+52>>2])))for(;;)if((c=X2[X2[A+60>>2]+o>>2])&&(N2[X2[X2[c>>2]>>2]](c),c=X2[A+4>>2],N2[X2[X2[c>>2]+60>>2]](c,X2[X2[A+60>>2]+o>>2])),o=o+4|0,!(k=k-1|0))break;H1(A,e,r),X2[A+80>>2]=X2[n+76>>2]}if(c=X2[A+52>>2]){if(k=X2[n+72>>2],X2[148+t>>2]=i,X2[144+t>>2]=f,X2[136+t>>2]=a=a?e:r,X2[132+t>>2]=b,X2[128+t>>2]=16540,X2[156+t>>2]=X2[A+72>>2],X2[152+t>>2]=X2[A+60>>2],X2[140+t>>2]=X2[A+4>>2],(0|(o=X2[A+32>>2]))<=-1){for(X2[A+36>>2]<=-1&&((e=X2[A+40>>2])&&J2[A+44|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+36>>2]=0,X2[A+40>>2]=0,S2[A+44|0]=1),c=o<<2;;)if(c=c+4|(X2[X2[A+40>>2]+c>>2]=0),!((e=o)>>>0<=(o=e+1|0)>>>0))break;c=X2[A+52>>2]}if(1<=((X2[A+32>>2]=0)|c))for(V=A+28|0,r=0;;){if(e=X2[X2[A+60>>2]+(r<<2)>>2]){if(N2[X2[X2[e>>2]+16>>2]](e,V),1<=(0|(o=X2[A+32>>2])))for(e=c=0;;)if(f=X2[X2[A+40>>2]+c>>2],X2[f+844>>2]&&(X2[i+4>>2]=f,x=X2[X2[i+8>>2]+8>>2],y=X2[f+836>>2],p=f,f=X2[X2[i+12>>2]+8>>2],R2(p,((o=(0|x)==(0|y))?y:f)+4|0,(o?f:x)+4|0),X2[i+4>>2]=0,o=X2[A+32>>2]),c=c+4|0,!((0|(e=e+1|0))<(0|o)))break;if((0|o)<=-1)for(X2[A+36>>2]<=-1&&((e=X2[A+40>>2])&&J2[A+44|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),S2[A+44|0]=1,X2[A+36>>2]=0,X2[A+40>>2]=0),c=o<<2;;)if(c=c+4|(X2[X2[A+40>>2]+c>>2]=0),!((e=o)>>>0<=(o=e+1|0)>>>0))break;X2[A+32>>2]=0,c=X2[A+52>>2]}if(!((0|(r=r+1|0))<(0|c)))break}if(k){if(e=X2[b+12>>2],E=U2[e+52>>2],Q=U2[e+56>>2],r=X2[a+12>>2],w=U2[r+52>>2],G=U2[r+56>>2],u=U2[e+20>>2],s=U2[e+36>>2],C=U2[r+20>>2],h=U2[r+36>>2],F=U2[r+24>>2],l=U2[e+24>>2],Y=U2[r+40>>2],B=U2[e+40>>2],m=U2[r+32>>2],v=U2[e+32>>2],N=U2[r>>2],d=U2[e>>2],R=U2[r+16>>2],Z=U2[e+16>>2],D=U2[e+48>>2],T=U2[r+48>>2],_=U2[e+4>>2],W=U2[r+4>>2],I=U2[r+8>>2],g=U2[e+8>>2],X2[92+t>>2]=0,X2[76+t>>2]=0,X2[60+t>>2]=0,U2[72+t>>2]=P2(P2(g*I)+P2(l*F))+P2(B*Y),U2[68+t>>2]=P2(P2(g*W)+P2(l*C))+P2(B*h),U2[56+t>>2]=P2(P2(_*I)+P2(u*F))+P2(s*Y),U2[52+t>>2]=P2(P2(_*W)+P2(u*C))+P2(s*h),E=P2(-E),U2[88+t>>2]=P2(P2(P2(l*E)-P2(g*D))-P2(B*Q))+P2(P2(P2(g*T)+P2(l*w))+P2(B*G)),U2[84+t>>2]=P2(P2(P2(u*E)-P2(_*D))-P2(s*Q))+P2(P2(P2(_*T)+P2(u*w))+P2(s*G)),X2[44+t>>2]=0,U2[32+t>>2]=P2(P2(d*N)+P2(Z*R))+P2(v*m),U2[64+t>>2]=P2(P2(g*N)+P2(l*R))+P2(B*m),U2[48+t>>2]=P2(P2(_*N)+P2(u*R))+P2(s*m),U2[40+t>>2]=P2(P2(d*I)+P2(Z*F))+P2(v*Y),U2[36+t>>2]=P2(P2(d*W)+P2(Z*C))+P2(v*h),U2[80+t>>2]=P2(P2(P2(Z*E)-P2(d*D))-P2(v*Q))+P2(P2(P2(d*T)+P2(Z*w))+P2(v*G)),e=X2[a+4>>2],N2[X2[X2[e>>2]+8>>2]](e,32+t|0,112+t|0,96+t|0),u=U2[i+32>>2],s=P2(U2[112+t>>2]-u),U2[112+t>>2]=s,l=P2(U2[116+t>>2]-u),U2[116+t>>2]=l,B=P2(U2[120+t>>2]-u),U2[120+t>>2]=B,v=P2(u+U2[96+t>>2]),U2[96+t>>2]=v,d=P2(u+U2[100+t>>2]),U2[100+t>>2]=d,u=P2(u+U2[104+t>>2]),U2[104+t>>2]=u,f=X2[k>>2]){if(e=X2[A+16>>2],(0|(o=X2[A+12>>2]))<=-1)for((0|e)<=-1&&((e=X2[A+20>>2])&&J2[A+24|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+16>>2]=0,X2[A+20>>2]=0,S2[A+24|0]=1,e=0),c=o<<2;;)if(c=c+4|(X2[X2[A+20>>2]+c>>2]=0),!((r=o)>>>0<=(o=r+1|0)>>>0))break;if(((X2[A+12>>2]=o=0)|e)<=63&&(X2[6258]=X2[6258]+1,c=0,(e=L2(275))&&(X2[(c=e+19&-16)-4>>2]=e),(e=X2[A+20>>2])&&J2[A+24|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]),o=X2[A+12>>2]),X2[A+20>>2]=c,X2[A+16>>2]=64,S2[A+24|0]=1,e=64),(0|e)==(0|o))if((0|(i=e<<1))<=(0|e))o=e;else{for(o=0,X2[6258]=X2[6258]+1,(r=L2(19+(e<<3)|(k=0)))&&(X2[(k=r+19&-16)-4>>2]=r),c=e;;)if(X2[o+k>>2]=X2[X2[A+20>>2]+o>>2],o=o+4|0,!(c=c-1|0))break;(r=X2[A+20>>2])&&J2[A+24|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2]),e=X2[A+12>>2]),o=e,X2[A+20>>2]=k,X2[A+16>>2]=i,S2[A+24|0]=1}for(X2[X2[A+20>>2]+(o<<2)>>2]=f,o=o+1|0;;){if(X2[A+12>>2]=c=o-1|0,i=X2[A+20>>2],f=X2[i+(c<<2)>>2],v>=U2[f>>2]){if(s<=U2[f+16>>2]){if(d>=U2[f+4>>2]){if(l<=U2[f+20>>2]){if(u>=U2[f+8>>2]){if(B<=U2[f+24>>2]){if(X2[f+40>>2]){if((0|c)==(0|(r=X2[A+16>>2])))if((0|(r=c?c<<1:1))<(0|o))r=c;else{if(i=0,r&&(X2[6258]=X2[6258]+1,(e=L2(19+(r<<2)|0))&&(X2[(i=e+19&-16)-4>>2]=e)),2<=(0|o))for(e=o-1|0,o=0;;)if(X2[i+o>>2]=X2[X2[A+20>>2]+o>>2],o=o+4|0,!(e=e-1|0))break;(e=X2[A+20>>2])&&J2[A+24|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]),c=X2[A+12>>2]),X2[A+20>>2]=i,S2[A+24|0]=1,X2[A+16>>2]=r}if(X2[A+12>>2]=e=c+1|0,X2[(c<<2)+i>>2]=X2[f+36>>2],(0|e)==(0|r))if((0|(k=r?r<<1:1))<=(0|r))e=r;else{if(i=0,k&&(X2[6258]=X2[6258]+1,(e=L2(19+(k<<2)|0))&&(X2[(i=e+19&-16)-4>>2]=e)),1<=(0|r))for(o=0,c=r;;)if(X2[i+o>>2]=X2[X2[A+20>>2]+o>>2],o=o+4|0,!(c=c-1|0))break;e=r,(r=X2[A+20>>2])&&J2[A+24|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2]),e=X2[A+12>>2]),X2[A+20>>2]=i,S2[A+24|0]=1,X2[A+16>>2]=k}X2[A+12>>2]=o=e+1|0,X2[X2[A+20>>2]+(e<<2)>>2]=X2[f+40>>2]}else N2[X2[X2[128+t>>2]+12>>2]](128+t|0,f),o=X2[A+12>>2];}else o=c;}else o=c;}else o=c;}else o=c;}else o=c;}else o=c;if(!(0<(0|o)))break}}}else if(!((0|c)<1))for(o=0,k=64;;)if(z1(128+t|0,X2[X2[n+32>>2]+k>>2],o),k=k+80|0,(0|c)==(0|(o=o+1|0)))break;if(e=X2[A+52>>2],(0|(o=X2[A+32>>2]))<=-1)for(X2[A+36>>2]<=-1&&((r=X2[A+40>>2])&&J2[A+44|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+36>>2]=0,X2[A+40>>2]=0,S2[A+44|0]=1),c=o<<2;;)if(c=c+4|(X2[X2[A+40>>2]+c>>2]=0),!((r=o)>>>0<=(o=r+1|0)>>>0))break;if(!(((X2[A+32>>2]=0)|e)<1))for(i=32,k=0;;)if(X2[X2[A+60>>2]+k>>2]&&(r=X2[n+32>>2]+i|0,o=X2[r+32>>2],f=X2[b+12>>2],W=U2[f+52>>2],I=U2[f+56>>2],Q=U2[r+16>>2],w=U2[r+20>>2],G=U2[r+24>>2],u=U2[f+20>>2],s=U2[f+24>>2],C=U2[r-32>>2],h=U2[r-16>>2],F=U2[r>>2],Y=U2[r-28>>2],m=U2[r-12>>2],N=U2[r+4>>2],R=U2[r-24>>2],l=U2[f+36>>2],D=U2[r-8>>2],B=U2[f+40>>2],T=U2[r+8>>2],E=U2[f+48>>2],v=U2[f+8>>2],d=U2[f>>2],Z=U2[f+4>>2],_=U2[f+16>>2],g=U2[f+32>>2],X2[92+t>>2]=c=0,X2[76+t>>2]=0,X2[60+t>>2]=0,X2[44+t>>2]=0,U2[72+t>>2]=P2(P2(g*R)+P2(l*D))+P2(B*T),U2[68+t>>2]=P2(P2(g*Y)+P2(l*m))+P2(B*N),U2[64+t>>2]=P2(P2(g*C)+P2(l*h))+P2(B*F),U2[56+t>>2]=P2(P2(_*R)+P2(u*D))+P2(s*T),U2[52+t>>2]=P2(P2(_*Y)+P2(u*m))+P2(s*N),U2[48+t>>2]=P2(P2(_*C)+P2(u*h))+P2(s*F),U2[40+t>>2]=P2(P2(d*R)+P2(Z*D))+P2(v*T),U2[36+t>>2]=P2(P2(d*Y)+P2(Z*m))+P2(v*N),U2[32+t>>2]=P2(P2(d*C)+P2(Z*h))+P2(v*F),U2[88+t>>2]=I+P2(P2(P2(g*Q)+P2(l*w))+P2(B*G)),U2[84+t>>2]=W+P2(P2(P2(_*Q)+P2(u*w))+P2(s*G)),U2[80+t>>2]=E+P2(P2(P2(d*Q)+P2(Z*w))+P2(v*G)),N2[X2[X2[o>>2]+8>>2]](o,32+t|0,112+t|0,96+t|0),r=X2[a+4>>2],N2[X2[X2[r>>2]+8>>2]](r,X2[a+12>>2],16+t|0,t),r=0,U2[112+t>>2]>U2[t>>2]||(r=0,U2[96+t>>2]>2]||(r=1)),U2[120+t>>2]>U2[8+t>>2]||U2[104+t>>2]>2]||(c=r),!(U2[100+t>>2]>2])&c&&!(U2[116+t>>2]>U2[4+t>>2])||(r=X2[X2[A+60>>2]+k>>2],N2[X2[X2[r>>2]>>2]](r),r=X2[A+4>>2],N2[X2[X2[r>>2]+60>>2]](r,X2[X2[A+60>>2]+k>>2]),X2[X2[A+60>>2]+k>>2]=0)),i=i+80|0,k=k+4|0,!(e=e-1|0))break}K2=160+t|0}function z1(A,e,r){var f,i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C,h,F=0,Y=(P2(0),0);P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);K2=h=K2-160|0,Y=X2[A+4>>2],F=X2[Y+12>>2],l=U2[F+52>>2],b=U2[F+56>>2],f=U2[F+24>>2],t=U2[F+20>>2],i=U2[F+40>>2],a=U2[F+36>>2],o=X2[X2[Y+4>>2]+32>>2],G=U2[F+48>>2],c=U2[F+8>>2],k=U2[F>>2],u=U2[F+4>>2],s=U2[F+16>>2],n=U2[F+32>>2],X2[156+h>>2]=Y=0,X2[140+h>>2]=0,X2[124+h>>2]=0,F=o+H2(r,80)|0,B=U2[F+8>>2],v=U2[F+24>>2],d=U2[F+40>>2],U2[136+h>>2]=P2(P2(n*B)+P2(a*v))+P2(i*d),Z=U2[F+4>>2],_=U2[F+20>>2],g=U2[F+36>>2],U2[132+h>>2]=P2(P2(n*Z)+P2(a*_))+P2(i*g),U2[120+h>>2]=P2(P2(s*B)+P2(t*v))+P2(f*d),U2[116+h>>2]=P2(P2(s*Z)+P2(t*_))+P2(f*g),E=b,b=U2[F+48>>2],Q=U2[F+52>>2],w=U2[F+56>>2],U2[152+h>>2]=E+P2(P2(P2(n*b)+P2(a*Q))+P2(i*w)),U2[148+h>>2]=l+P2(P2(P2(s*b)+P2(t*Q))+P2(f*w)),X2[108+h>>2]=0,E=n,n=U2[F>>2],l=a,a=U2[F+16>>2],C=i,i=U2[F+32>>2],U2[128+h>>2]=P2(P2(E*n)+P2(l*a))+P2(C*i),U2[112+h>>2]=P2(P2(s*n)+P2(t*a))+P2(f*i),U2[96+h>>2]=P2(P2(k*n)+P2(u*a))+P2(c*i),U2[104+h>>2]=P2(P2(k*B)+P2(u*v))+P2(c*d),U2[100+h>>2]=P2(P2(k*Z)+P2(u*_))+P2(c*g),U2[144+h>>2]=G+P2(P2(P2(k*b)+P2(u*Q))+P2(c*w)),N2[X2[X2[e>>2]+8>>2]](e,96+h|0,80+h|0,h+64|0),f=U2[X2[A+20>>2]+32>>2],U2[80+h>>2]=U2[80+h>>2]-f,U2[84+h>>2]=U2[84+h>>2]-f,U2[88+h>>2]=U2[88+h>>2]-f,U2[64+h>>2]=f+U2[64+h>>2],U2[68+h>>2]=f+U2[68+h>>2],U2[72+h>>2]=f+U2[72+h>>2],F=X2[A+8>>2],o=X2[F+4>>2],N2[X2[X2[o>>2]+8>>2]](o,X2[F+12>>2],48+h|0,32+h|0),F=0,U2[80+h>>2]>U2[32+h>>2]||(F=0,U2[64+h>>2]>2]||(F=1)),U2[88+h>>2]>U2[40+h>>2]||U2[72+h>>2]>2]||(Y=F),U2[84+h>>2]>U2[36+h>>2]||1^Y|U2[68+h>>2]>2]||(X2[28+h>>2]=r,X2[24+h>>2]=-1,X2[12+h>>2]=e,e=X2[A+4>>2],X2[8+h>>2]=e,X2[16+h>>2]=X2[e+8>>2],f=U2[X2[A+20>>2]+32>>2],X2[20+h>>2]=96+h,f>P2(0)?(e=X2[A+12>>2],e=0|N2[X2[X2[e>>2]+8>>2]](e,8+h|0,X2[A+8>>2],0,2)):(e=X2[(F=r<<2)+X2[A+24>>2]>>2])||(e=X2[A+12>>2],e=0|N2[X2[X2[e>>2]+8>>2]](e,8+h|0,X2[A+8>>2],X2[A+28>>2],1),X2[F+X2[A+24>>2]>>2]=e,e=X2[F+X2[A+24>>2]>>2]),F=X2[A+20>>2],Y=X2[F+8>>2],X2[Y+8>>2]==X2[X2[A+4>>2]+8>>2]?(X2[F+8>>2]=8+h,N2[X2[X2[F>>2]+8>>2]](F,-1,r)):(Y=X2[F+12>>2],X2[F+12>>2]=8+h,N2[X2[X2[F>>2]+12>>2]](F,-1,r)),N2[X2[X2[e>>2]+8>>2]](e,8+h|0,X2[A+8>>2],X2[A+16>>2],X2[A+20>>2]),e=X2[A+20>>2],X2[(X2[X2[e+8>>2]+8>>2]==X2[X2[A+4>>2]+8>>2]?8:12)+e>>2]=Y),K2=160+h|0}function O1(A){var e,r,f,i,a=0,n=0,b=0,t=0,o=0;if(!((0|(e=X2[A+12>>2]))<=(0|(r=X2[A+28>>2])))){A:if(X2[A+32>>2]>=(0|e))b=X2[A+36>>2];else{if(e&&(X2[6258]=X2[6258]+1,(n=L2(19+(e<<2)|0))&&(X2[(b=n+19&-16)-4>>2]=n)),a=X2[A+36>>2],1<=(0|r)){for(n=b,o=a,t=r;;)if(X2[n>>2]=X2[o>>2],n=n+4|0,o=o+4|0,!(t=t-1|0))break}else if(!a){X2[A+36>>2]=b,X2[A+32>>2]=e,S2[A+40|0]=1;break A}J2[A+40|0]&&(X2[6259]=X2[6259]+1,q2(X2[a-4>>2])),X2[A+36>>2]=b,S2[A+40|0]=1,X2[A+32>>2]=e}if(v2((r<<2)+b|0,0,e-r<<2),f=(X2[A+28>>2]=e)<<2,(0|(a=X2[A+48>>2]))<(0|e)){A:if(X2[A+52>>2]>=(0|e))b=X2[A+56>>2];else{if(b=0,e&&(X2[6258]=X2[6258]+1,(n=L2(16+(3|f)|0))&&(X2[(b=n+19&-16)-4>>2]=n)),i=X2[A+56>>2],1<=(0|a)){for(n=b,o=i,t=a;;)if(X2[n>>2]=X2[o>>2],n=n+4|0,o=o+4|0,!(t=t-1|0))break}else if(!i){X2[A+56>>2]=b,X2[A+52>>2]=e,S2[A+60|0]=1;break A}J2[A+60|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),X2[A+56>>2]=b,S2[A+60|0]=1,X2[A+52>>2]=e}v2((a<<2)+b|0,0,e-a<<2)}if(1<=(0|(X2[A+48>>2]=e))&&(v2(X2[A+36>>2],255,f),v2(X2[A+56>>2],255,f)),!((0|r)<1))for(o=X2[A+56>>2],n=X2[A+16>>2],b=X2[A+36>>2],t=0;;)if(a=X2[n>>2]|X2[n+4>>2]<<16,a=H2((a=(a<<15^-1)+a|0)>>>10^a,9),a=b+((X2[A+12>>2]-1&((a=((a^=a>>>6)<<11^-1)+a|0)>>>16^a))<<2)|0,X2[o>>2]=X2[a>>2],n=n+12|0,o=o+4|0,(0|r)==(0|(t=(X2[a>>2]=t)+1|0)))break}}function K1(A){return X2[(A|=0)+16>>2]}function L1(A){var e,r,f,i=0,a=0,n=0;if((i=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),X2[A+16>>2]=0,S2[A+20|0]=1,X2[(i=A+8|0)>>2]=0,X2[i+4>>2]=0,(i=X2[A+36>>2])&&J2[A+40|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),X2[A+36>>2]=0,S2[A+40|0]=1,X2[(i=A+28|0)>>2]=0,X2[i+4>>2]=0,(i=X2[A+56>>2])&&J2[A+60|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),X2[A+56>>2]=0,S2[A+60|0]=1,X2[(i=A+48|0)>>2]=0,X2[i+4>>2]=0,X2[A+12>>2]<=1){if(X2[6258]=X2[6258]+1,(i=L2(43))&&(X2[(n=i+19&-16)-4>>2]=i),1<=(0|(a=X2[A+8>>2])))for(i=0;;)if(e=X2[A+16>>2]+i|0,f=X2[4+e>>2],X2[(r=i+n|0)>>2]=X2[e>>2],X2[4+r>>2]=f,X2[8+r>>2]=X2[8+e>>2],i=i+12|0,!(a=a-1|0))break;(i=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),X2[A+16>>2]=n,S2[A+20|0]=1,X2[A+12>>2]=2}O1(A)}function q1(A){var e,r,f=0,i=0,a=0;if(X2[(A|=0)>>2]=16708,f=X2[A+84>>2],1<=(0|(i=X2[f+(a=8)>>2]))){for(;;)if((e=X2[X2[f+16>>2]+a>>2])&&(N2[X2[X2[e>>2]>>2]](e),r=X2[A+4>>2],N2[X2[X2[r>>2]+60>>2]](r,e)),a=a+12|0,!(i=i-1|0))break;f=X2[A+84>>2]}return L1(f),f=X2[A+84>>2],N2[X2[X2[f>>2]>>2]](f),(f=X2[A+84>>2])&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),(f=X2[A+100>>2])&&J2[A+104|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[A+100>>2]=0,S2[A+104|0]=1,X2[(f=A+92|0)>>2]=0,X2[f+4>>2]=0,P1(A),0|A}function $1(A,e,r,f,i){return P2(P2(1))}function A4(A,e){A|=0,e|=0;var r,f=0,i=0,a=0,n=0;if((a=X2[A+12>>2])&&J2[A+8|0]){if((0|(i=X2[e+4>>2]))==X2[e+8>>2]&&!((0|(r=i?i<<1:1))<=(0|i))){if(r&&(X2[6258]=X2[6258]+1,(f=L2(19+(r<<2)|0))&&(X2[(n=f+19&-16)-4>>2]=f)),1<=(0|i))for(a=0,f=i;;)if(X2[a+n>>2]=X2[X2[e+12>>2]+a>>2],a=a+4|0,!(f=f-1|0))break;(f=X2[e+12>>2])&&J2[e+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2]),i=X2[e+4>>2]),X2[e+12>>2]=n,S2[e+16|0]=1,X2[e+8>>2]=r,a=X2[A+12>>2]}X2[e+4>>2]=i+1,X2[X2[e+12>>2]+(i<<2)>>2]=a}}function e4(A,e,r,f,i){A|=0,e|=0,r|=0,f|=0,i|=0;var a,n,b,t,o=P2(0),c=P2(0),k=P2(0),u=P2(0),s=P2(0),l=P2(0),B=P2(0),v=P2(0),d=P2(0),Z=0,_=P2(0),g=P2(0),E=P2(0),Q=P2(0),w=P2(0),G=P2(0),C=P2(0),h=P2(0),F=P2(0),Y=P2(0),m=P2(0),N=P2(0),R=P2(0),D=0;P2(0),P2(0),P2(0);K2=f=K2-32|0,Z=X2[A+8>>2],G=U2[Z+80>>2],k=U2[Z+64>>2],s=P2(G-k),E=U2[Z+100>>2],l=U2[Z+68>>2],o=P2(E-l),C=U2[Z+84>>2],d=P2(C-l),Y=U2[Z+96>>2],u=P2(Y-k),v=P2(P2(s*o)-P2(d*u)),w=U2[Z+104>>2],m=U2[Z+72>>2],c=P2(w-m),R=U2[Z+88>>2],_=P2(R-m),o=P2(P2(d*c)-P2(_*o)),u=P2(P2(_*u)-P2(s*c)),c=P2(P2(v*v)+P2(P2(o*o)+P2(u*u)));A:if(c>=P2(14210854715202004e-30)&&(D=X2[A+4>>2],N=P2(U2[D+36>>2]*U2[D+20>>2]),B=P2(N+U2[A+12>>2]),c=P2(P2(1)/P2(O2(c))),o=P2(o*c),g=P2(U2[e+48>>2]-U2[e+112>>2]),Q=P2(U2[e+52>>2]-U2[e+116>>2]),a=P2(U2[e+56>>2]-U2[e+120>>2]),h=P2(P2(P2(g*U2[e+64>>2])+P2(Q*U2[e+80>>2]))+P2(a*U2[e+96>>2])),b=P2(h-k),u=P2(u*c),F=P2(P2(P2(g*U2[e+68>>2])+P2(Q*U2[e+84>>2]))+P2(a*U2[e+100>>2])),t=P2(F-l),v=P2(v*c),g=P2(P2(P2(g*U2[e+72>>2])+P2(Q*U2[e+88>>2]))+P2(a*U2[e+104>>2])),Q=P2(g-m),(c=P2(P2(P2(o*b)+P2(u*t))+P2(v*Q)))P2(0)&&s>P2(0)&&d>P2(0))){if(!(k<=P2(0)))break r;if(!(s<=P2(0)))break r;if(!(d<=P2(0)))break r}w=P2(g-P2(c*v)),G=P2(F-P2(c*u)),C=P2(h-P2(c*o)),Y=P2(B*B);break e}if((0|N2[X2[X2[Z>>2]+100>>2]](Z))<1)break A;for(Y=P2(B*B),Z=D=0;;)if(n=X2[A+8>>2],N2[X2[X2[n>>2]+104>>2]](n,Z,f+16|0,f),c=P2(0),m=U2[f+16>>2],B=P2(h-m),E=P2(U2[f>>2]-m),_=U2[f+20>>2],k=P2(F-_),l=P2(U2[f+4>>2]-_),R=U2[f+24>>2],s=P2(g-R),d=P2(U2[f+8>>2]-R),(Q=P2(P2(P2(B*E)+P2(k*l))+P2(s*d)))>P2(0)&&(Q<(c=P2(P2(P2(E*E)+P2(l*l))+P2(d*d)))?(c=P2(Q/c),s=P2(s-P2(d*c)),k=P2(k-P2(l*c)),B=P2(B-P2(E*c))):(s=P2(s-d),k=P2(k-l),B=P2(B-E),c=P2(1))),P2(P2(P2(B*B)+P2(k*k))+P2(s*s))>2],Z=Z+1|0,!((0|N2[X2[X2[n>>2]+100>>2]](n))>(0|Z)))break;if(!D)break A}c=P2(h-C),B=P2(F-G),k=P2(g-w),(s=P2(P2(P2(c*c)+P2(B*B))+P2(k*k)))P2(1.1920928955078125e-7)&&(o=P2(O2(s)),N=P2(N-o),o=P2(P2(1)/o),v=P2(k*o),u=P2(B*o),o=P2(c*o)),c=P2(-N),i?(B=U2[e+72>>2],k=U2[e+64>>2],s=U2[e+68>>2],h=U2[e+88>>2],F=U2[e+80>>2],g=U2[e+84>>2],E=U2[e+104>>2],l=U2[e+96>>2],d=U2[e+100>>2],X2[f+28>>2]=0,Y=P2(P2(P2(o*l)+P2(u*d))+P2(v*E)),U2[f+24>>2]=-Y,m=P2(P2(P2(o*F)+P2(u*g))+P2(v*h)),U2[f+20>>2]=-m,o=P2(P2(P2(k*o)+P2(s*u))+P2(B*v)),U2[f+16>>2]=-o,X2[f+12>>2]=0,U2[f+8>>2]=P2(P2(P2(P2(C*l)+P2(G*d))+P2(w*E))+U2[e+120>>2])-P2(N*Y),U2[f+4>>2]=P2(P2(P2(P2(C*F)+P2(G*g))+P2(w*h))+U2[e+116>>2])-P2(N*m),U2[f>>2]=P2(P2(P2(P2(C*k)+P2(G*s))+P2(w*B))+U2[e+112>>2])-P2(N*o)):(X2[f+28>>2]=0,N=U2[e+96>>2],B=U2[e+100>>2],k=U2[e+104>>2],U2[f+24>>2]=P2(P2(o*N)+P2(u*B))+P2(v*k),s=U2[e+80>>2],h=U2[e+84>>2],F=U2[e+88>>2],U2[f+20>>2]=P2(P2(o*s)+P2(u*h))+P2(v*F),g=U2[e+64>>2],l=P2(g*o),o=U2[e+68>>2],l=P2(l+P2(o*u)),u=U2[e+72>>2],U2[f+16>>2]=l+P2(u*v),X2[f+12>>2]=0,U2[f+8>>2]=P2(P2(P2(C*N)+P2(G*B))+P2(w*k))+U2[e+120>>2],U2[f+4>>2]=P2(P2(P2(C*s)+P2(G*h))+P2(w*F))+U2[e+116>>2],U2[f>>2]=P2(P2(P2(C*g)+P2(G*o))+P2(w*u))+U2[e+112>>2]),N2[X2[X2[r>>2]+16>>2]](r,f+16|0,f,c))}K2=f+32|0}function r4(A,e,x,r,f){A|=0,e|=0,x|=0,r|=0,f|=0;var i,a,y,V,p,M,S,X,J,U,H,P,j,z,O,K,L,q,n,$,A2,e2,r2,f2,i2,a2,n2,b,t=P2(0),o=P2(0),c=P2(0),k=0,u=P2(0),s=P2(0),l=P2(0),B=P2(0),v=P2(0),d=P2(0),Z=P2(0),_=0,g=P2(0),E=P2(0),Q=P2(0),w=0,G=P2(0),C=P2(0),h=P2(0),F=P2(0),Y=(P2(0),P2(0)),m=P2(0),N=P2(0),R=P2(0),D=P2(0),T=0,W=P2(0),I=(P2(0),P2(0)),b2=P2(0),t2=P2(0),o2=(P2(0),P2(0),P2(0)),c2=(P2(0),P2(0),0),k2=0,u2=(P2(0),P2(0),P2(0),P2(0),0),s2=(P2(0),P2(0),P2(0),P2(0),P2(0),0),l2=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),0);P2(0);U2[48+(K2=b=K2-448|0)>>2]=U2[e>>2],U2[b>>2]=U2[e+64>>2],r=X2[e+8>>2],X2[52+b>>2]=X2[e+4>>2],X2[56+b>>2]=r,f=X2[(r=e+68|0)+4>>2],X2[4+b>>2]=X2[r>>2],X2[8+b>>2]=f,r=X2[e+20>>2],X2[64+b>>2]=X2[e+16>>2],X2[68+b>>2]=r,f=X2[(r=e+80|0)+4>>2],X2[16+b>>2]=X2[r>>2],X2[20+b>>2]=f,U2[72+b>>2]=U2[e+24>>2],U2[24+b>>2]=U2[e+88>>2],U2[80+b>>2]=U2[e+32>>2],t=U2[e+96>>2],f=X2[(r=e+36|0)+4>>2],X2[84+b>>2]=X2[r>>2],X2[88+b>>2]=f,U2[40+b>>2]=U2[e+104>>2],U2[36+b>>2]=U2[e+100>>2],U2[32+b>>2]=t,r=X2[A+4>>2],t=U2[r+40>>2],o=U2[r+44>>2],v=U2[r+36>>2],g=P2(N2[X2[X2[r>>2]+48>>2]](r)),E=P2(N2[X2[X2[r>>2]+48>>2]](r)),l=P2(N2[X2[X2[r>>2]+48>>2]](r)),A=X2[A+8>>2],c=U2[A+44>>2],B=U2[A+40>>2],s=U2[A+36>>2],d=P2(N2[X2[X2[A>>2]+48>>2]](A)),u=P2(N2[X2[X2[A>>2]+48>>2]](A)),h=P2(N2[X2[X2[A>>2]+48>>2]](A)),o=P2(o+l),l=P2(P2(o+o)*P2(.5)),U2[380+b>>2]=l,t=P2(t+E),Q=P2(P2(t+t)*P2(.5)),U2[376+b>>2]=Q,t=P2(v+g),Z=P2(P2(t+t)*P2(.5)),U2[372+b>>2]=Z,t=P2(B+u),B=P2(P2(t+t)*P2(.5)),U2[364+b>>2]=B,t=P2(s+d),s=P2(P2(t+t)*P2(.5)),U2[360+b>>2]=s,t=P2(c+h),d=P2(P2(t+t)*P2(.5)),U2[368+b>>2]=d;A:if(v=P2(U2[(f=e+112|0)>>2]-U2[e+48>>2]),z=U2[48+b>>2],g=P2(U2[e+116>>2]-U2[e+52>>2]),t=U2[64+b>>2],E=P2(U2[e+120>>2]-U2[e+56>>2]),o=U2[80+b>>2],h=P2(P2(P2(v*z)+P2(g*t))+P2(E*o)),a=U2[b>>2],D=U2[16+b>>2],F=U2[32+b>>2],W=P2(P2(P2(z*a)+P2(t*D))+P2(o*F)),M=P2(j2(W)),S=U2[4+b>>2],b2=U2[20+b>>2],o2=U2[36+b>>2],t2=P2(P2(P2(z*S)+P2(t*b2))+P2(o*o2)),U=P2(j2(t2)),X=U2[8+b>>2],J=U2[24+b>>2],O=U2[40+b>>2],I=P2(P2(P2(z*X)+P2(t*J))+P2(o*O)),H=P2(j2(I)),!((o=P2(P2(j2(h))-P2(P2(P2(Z+P2(s*M))+P2(B*U))+P2(d*H))))>P2(0)||(t=U2[52+b>>2],u=U2[68+b>>2],G=U2[84+b>>2],c=P2(P2(P2(v*t)+P2(g*u))+P2(E*G)),N=P2(P2(P2(t*X)+P2(u*J))+P2(G*O)),P=P2(j2(N)),R=P2(P2(P2(t*S)+P2(u*b2))+P2(G*o2)),y=P2(j2(R)),G=P2(P2(P2(t*a)+P2(u*D))+P2(G*F)),i=P2(j2(G)),t=P2(-34028234663852886e22),A=r=0,o>P2(-34028234663852886e22)&&(r=hP2(0)||(C=U2[56+b>>2],p=U2[72+b>>2],V=U2[88+b>>2],u=P2(P2(P2(v*C)+P2(g*p))+P2(E*V)),Y=P2(P2(P2(C*X)+P2(p*J))+P2(V*O)),K=P2(j2(Y)),m=P2(P2(P2(C*S)+P2(p*b2))+P2(V*o2)),L=P2(j2(m)),C=P2(P2(P2(C*a)+P2(p*D))+P2(V*F)),j=P2(j2(C)),tP2(0)||(tP2(0)||(tP2(0)||(tP2(0)||(tP2(1.1920928955078125e-7)||(a=P2(L+P2(9999999747378752e-21)),S=P2(y+P2(9999999747378752e-21)),X=P2(M+P2(9999999747378752e-21)),E=P2(0),L=P2(G*G),M=P2(P2(C*C)+P2(0)),(y=P2(O2(P2(L+M))))>P2(1.1920928955078125e-7)?(g=P2(0),o=P2(o/y),v=P2(0),P2(o*P2(1.0499999523162842))>t&&(r=nP2(1.1920928955078125e-7)||(y=P2(K+P2(9999999747378752e-21)),P=P2(P+P2(9999999747378752e-21)),K=P2(R*R),$=P2(P2(m*m)+P2(0)),(i=P2(O2(P2(K+$))))>P2(1.1920928955078125e-7)&&(o=P2(o/i),P2(o*P2(1.0499999523162842))>t&&(r=nP2(1.1920928955078125e-7)||(A2=P2(N*N),e2=P2(P2(Y*Y)+P2(0)),(i=P2(O2(P2(A2+e2))))>P2(1.1920928955078125e-7)&&(o=P2(o/i),P2(o*P2(1.0499999523162842))>t&&(r=nP2(1.1920928955078125e-7)||(r2=P2(W*W),(i=P2(O2(P2(r2+M))))>P2(1.1920928955078125e-7)&&(o=P2(o/i),P2(o*P2(1.0499999523162842))>t&&(r=nP2(1.1920928955078125e-7)||(M=P2(t2*t2),(C=P2(O2(P2(M+$))))>P2(1.1920928955078125e-7)&&(o=P2(o/C),P2(o*P2(1.0499999523162842))>t&&(r=iP2(1.1920928955078125e-7)||(C=P2(I*I),(u=P2(O2(P2(C+e2))))>P2(1.1920928955078125e-7)&&(o=P2(o/u),P2(o*P2(1.0499999523162842))>t&&(r=mP2(1.1920928955078125e-7)||((u=P2(O2(P2(P2(L+r2)+P2(0)))))>P2(1.1920928955078125e-7)&&(o=P2(o/u),P2(o*P2(1.0499999523162842))>t&&(r=YP2(1.1920928955078125e-7)||((u=P2(O2(P2(P2(K+M)+P2(0)))))>P2(1.1920928955078125e-7)&&(o=P2(o/u),P2(o*P2(1.0499999523162842))>t&&(r=WP2(1.1920928955078125e-7))))))))))))))))){e:{r:{if((c=P2(O2(P2(P2(A2+C)+P2(0)))))>P2(1.1920928955078125e-7)&&(o=P2(o/c),P2(o*P2(1.0499999523162842))>t))r=u>2])+P2(v*U2[84+b>>2]))+P2(g*V)),c=P2(P2(P2(z*E)+P2(v*U2[52+b>>2]))+P2(g*U2[56+b>>2])),t=P2(P2(P2(E*U2[64+b>>2])+P2(v*U2[68+b>>2]))+P2(g*p));break e}u=U2[k+32>>2],c=U2[k>>2],o=t,t=U2[k+16>>2]}if(v=r?P2(-u):u,g=r?P2(-t):t,E=r?P2(-c):c,7<=(0|A))C=U2[e+48>>2],z=U2[e+52>>2],a=U2[e+56>>2],t=U2[56+b>>2],u=U2[80+b>>2],h=U2[48+b>>2],W=U2[64+b>>2],t2=U2[84+b>>2],I=U2[52+b>>2],N=U2[68+b>>2],X2[(e=184+b|0)>>2]=X2[f+8>>2],r=X2[f+4>>2],X2[176+b>>2]=X2[f>>2],X2[180+b>>2]=r,c=P2(0),Y=U2[b>>2],s=P2(P2(P2(E*Y)+P2(g*D))+P2(v*F))>P2(0)?P2(-s):s,m=U2[4+b>>2],B=P2(P2(P2(E*m)+P2(g*b2))+P2(v*o2))>P2(0)?P2(-B):B,G=P2(P2(U2[e>>2]+P2(s*F))+P2(B*o2)),F=U2[8+b>>2],d=P2(P2(P2(E*F)+P2(g*J))+P2(v*O))>P2(0)?P2(-d):d,R=P2(G+P2(d*O)),G=P2(P2(P2(U2[180+b>>2]+P2(s*D))+P2(B*b2))+P2(d*J)),B=P2(P2(P2(U2[176+b>>2]+P2(s*Y))+P2(B*m))+P2(d*F)),D=U2[(A=(48+b|0)+((0|(e=A-7|0))/3<<24>>24<<2)|0)>>2],s=U2[(e=((0|e)%3<<24>>24<<2)+b|0)>>2],F=U2[A+16>>2],d=U2[e+16>>2],b2=U2[A+32>>2],Y=U2[e+32>>2],m=P2(P2(P2(D*s)+P2(F*d))+P2(b2*Y)),(o2=P2(P2(1)-P2(m*m)))<=P2(9999999747378752e-20)||(Z=P2(P2(P2(E*h)+P2(g*W))+P2(v*u))>P2(0)?Z:P2(-Z),Q=P2(P2(P2(E*I)+P2(g*N))+P2(v*t2))>P2(0)?Q:P2(-Q),l=P2(P2(P2(E*t)+P2(g*p))+P2(v*V))>P2(0)?l:P2(-l),t=P2(B-P2(P2(P2(C+P2(Z*h))+P2(Q*I))+P2(l*t))),c=P2(G-P2(P2(P2(z+P2(Z*W))+P2(Q*N))+P2(l*p))),l=P2(R-P2(P2(P2(a+P2(Z*u))+P2(Q*t2))+P2(l*V))),c=P2(P2(P2(P2(P2(P2(t*D)+P2(c*F))+P2(l*b2))*m)-P2(P2(P2(t*s)+P2(c*d))+P2(l*Y)))*P2(P2(1)/o2))),U2[184+b>>2]=R+P2(c*Y),U2[180+b>>2]=G+P2(c*d),U2[176+b>>2]=B+P2(c*s),X2[284+b>>2]=0,U2[280+b>>2]=-v,U2[276+b>>2]=-g,U2[272+b>>2]=-E,N2[X2[X2[x>>2]+16>>2]](x,272+b|0,176+b|0,o);else{T=e+48|0,e=(0|A)<4?(_=48+b|0,k2=372+b|0,k=360+b|0,o=E,Q=g,l=v,b):(l=P2(-v),Q=P2(-g),o=P2(-E),e=f,k=372+(_=b)|0,k2=360+b|0,f=T,T=e,48+b|0),Z=P2(P2(P2(o*U2[e>>2])+P2(Q*U2[e+16>>2]))+P2(l*U2[e+32>>2])),U2[344+b>>2]=Z,c=P2(P2(P2(o*U2[e+4>>2])+P2(Q*U2[e+20>>2]))+P2(l*U2[e+36>>2])),U2[348+b>>2]=c,u2=1,t=P2(P2(P2(o*U2[e+8>>2])+P2(Q*U2[e+24>>2]))+P2(l*U2[e+40>>2])),U2[352+b>>2]=t,t=P2(j2(t)),c=P2(j2(c));e:{if((Z=P2(j2(Z)))>2],Z=P2(t*U2[e+r>>2]),c=P2(U2[f>>2]-U2[T>>2]),Z=U2[r+(344+b|0)>>2]>2]-U2[T+8>>2])+P2(t*U2[e+(32|r)>>2])),t2=P2(c+Z),P2(P2(U2[f+4>>2]-U2[T+4>>2])+P2(t*U2[e+(16|r)>>2]))):(W=P2(P2(U2[f+8>>2]-U2[T+8>>2])-P2(t*U2[e+(32|r)>>2])),t2=P2(c-Z),P2(P2(U2[f+4>>2]-U2[T+4>>2])-P2(t*U2[e+(16|r)>>2]))),r=1,f=2;e:{r:{f:switch(0|(l2=((0|A)<4?-1:-4)+A|0)){case 0:break e;case 1:break f;default:break r;}r=0;break e}f=1,r=0}t=U2[(f=(w=f<<2)+_|0)>>2],c=U2[f+16>>2],B=U2[f+32>>2],p=P2(P2(P2(t2*t)+P2(Z*c))+P2(W*B)),d=U2[(n=(f=u2<<2)+e|0)>>2],u=U2[16+n>>2],h=U2[32+n>>2],V=P2(P2(P2(t*d)+P2(c*u))+P2(B*h)),N=U2[f+k>>2],R=P2(V*N),F=P2(p+R),G=U2[($=(f=s2<<2)+e|0)>>2],D=U2[16+$>>2],b2=U2[32+$>>2],Y=P2(P2(P2(t*G)+P2(c*D))+P2(B*b2)),o2=U2[f+k>>2],t=P2(Y*o2),I=P2(F-t),c=U2[(r=(f=r<<2)+_|0)>>2],B=U2[r+16>>2],s=U2[r+32>>2],m=P2(P2(P2(t2*c)+P2(Z*B))+P2(W*s)),C=P2(P2(P2(c*d)+P2(B*u))+P2(s*h)),J=P2(C*N),u=P2(m+J),D=P2(P2(P2(c*G)+P2(B*D))+P2(s*b2)),G=P2(D*o2),d=P2(u-G),N=P2(F+t),u=P2(u+G),c=P2(p-R),h=P2(c+t),F=P2(m-J),s=P2(F+G),R=P2(c-t),B=U2[w+k2>>2],c=U2[f+k2>>2],t=P2(-c);e:{r:{f:{i:{a:{n:{b:{t:{o:{c:{k:{u:{s:{l:{G=P2(F-G);B:{if(!(_=c>P2(-G))){if(w=1,r=f=272+b|(k=0),c>P2(-s))break B;break u}if(U2[276+b>>2]=R,U2[272+b>>2]=G,r=272+b|8,w=2,c>P2(-s))break l}if(U2[(f=r)>>2]=t,U2[f+4>>2]=R+P2(P2(t-G)*P2(P2(h-R)/P2(s-G))),r=f+8|0,_){k=w,f=r;break u}U2[f+12>>2]=h,U2[f+8>>2]=s,k=w+1|0;break s}U2[284+b>>2]=h,U2[280+b>>2]=s,k=2}if(f=r+8|0,r=0,c>P2(-u))break o;break k}if(r=1,!(c>P2(-u)))break c}if(U2[f>>2]=t,U2[f+4>>2]=h+P2(P2(t-s)*P2(P2(N-h)/P2(u-s))),8&(k=k+1|0)){r=k;break e}if(f=f+8|0,r)break o}if(r=1,c>P2(-d))break t;break b}if(U2[f+4>>2]=N,U2[f>>2]=u,8&(k=k+1|0)){r=k;break e}if(f=f+8|0,r=0,c>P2(-d))break n}if(U2[f>>2]=t,U2[f+4>>2]=N+P2(P2(t-u)*P2(P2(I-N)/P2(d-u))),8&(k=k+1|0)){r=k;break e}if(f=f+8|0,r)break n}if(_)break a;if(((r=0)|k)<=0)break f;break i}if(U2[f+4>>2]=I,U2[f>>2]=d,8&(k=k+1|0)){r=k;break e}if(_)break i;f=f+8|0}if(U2[f>>2]=t,U2[f+4>>2]=I+P2(P2(t-d)*P2(P2(R-I)/P2(G-d))),8&(r=k=k+1|0))break e}for(f2=272+b|4,f=272+b|(r=0),_=176+b|0;;){if((t=U2[f>>2])>2]=t,U2[_+4>>2]=U2[f+4>>2],8&(r=r+1|0))break f;_=_+8|0,t=U2[f>>2]}if(w=f+8|0,(t>2])>2],s=U2[f+4>>2],U2[_>>2]=c,U2[_+4>>2]=s+P2(P2(c-t)*P2(P2(u-s)/P2(d-t))),8&(r=r+1|0))break f;_=_+8|0}if(k=k-1|0,f=w,!c2)break}if((0|r)<1)r=0;else{for(s=P2(-B),i2=176+b|4,k=272+b|(_=0),f=176+b|0;;){if(t=U2[(w=f+4|0)>>2],(c=P2(-t))>2]=U2[f>>2],U2[k+4>>2]=U2[w>>2],8&(_=_+1|0)){r=_;break r}t=U2[w>>2],c=P2(-t),k=k+8|0}if(w=f+8|0,d=U2[((c2=1<(0|r))?f+12|0:i2)>>2],(cP2(-d)|0)){if(u=U2[(c2?w:176+b|0)>>2],c=U2[f>>2],U2[k+4>>2]=s,U2[k>>2]=c+P2(P2(s-t)*P2(P2(u-c)/P2(d-t))),8&(_=_+1|0)){r=_;break r}k=k+8|0}if(r=r-1|0,f=w,!c2)break}if(!(((r=0)|_)<1))for(f=272+b|0,k=176+b|0;;){if((c=U2[(w=f+4|0)>>2])>2]=U2[f>>2],U2[k+4>>2]=U2[w>>2],8&(r=r+1|0))break f;c=U2[w>>2],k=k+8|0}if(w=f+8|0,(c>2])>2],t=U2[f>>2],U2[k+4>>2]=B,U2[k>>2]=t+P2(P2(B-c)*P2(P2(d-t)/P2(s-c))),8&(r=r+1|0))break f;k=k+8|0}if(_=_-1|0,f=w,!c2)break}}}$2(272+b|0,176+b|0,r<<3)}if((0|r)<1)break A}for(t=P2(P2(1)/P2(P2(C*Y)-P2(V*D))),B=P2(t*P2(-V)),s=P2(Y*t),d=P2(D*t),u=P2(C*t),h=U2[(l2<<2)+k2>>2],I=U2[e+(32|(f=s2<<2))>>2],N=U2[e+(32|(k=u2<<2))>>2],R=U2[e+(16|f)>>2],G=U2[e+(16|k)>>2],V=U2[$>>2],Y=U2[n>>2],e=272+b|(k=0);;)if(f=(176+b|0)+H2(k,12)|0,C=U2[e>>2],c=P2(C-m),D=U2[e+4>>2],F=P2(D-p),t=P2(P2(s*c)-P2(d*F)),c=P2(P2(B*c)+P2(u*F)),F=P2(P2(t2+P2(t*Y))+P2(c*V)),U2[f>>2]=F,b2=P2(P2(Z+P2(t*G))+P2(c*R)),U2[f+4>>2]=b2,t=P2(P2(W+P2(t*N))+P2(c*I)),U2[f+8>>2]=t,t=P2(h-P2(P2(P2(o*F)+P2(Q*b2))+P2(l*t))),(U2[(144+b|0)+(k<<2)>>2]=t)>=P2(0)&&(U2[(f=k<<3)+(272+b|0)>>2]=C,U2[(272+b|0)+(4|f)>>2]=D,k=k+1|0),e=e+8|0,!(r=r-1|0))break;if(!((0|k)<1))if((0|k)<=(0|(k2=1<(0|(_=(0|k)<4?k:4))?_:1))){if(4<=(0|A)){for(o=P2(-v),l=P2(-g),Q=P2(-E),f=144+b|0,e=176+b|0;;)if(t=U2[f>>2],U2[416+b>>2]=P2(U2[e>>2]+U2[T>>2])-P2(E*t),U2[420+b>>2]=P2(U2[e+4>>2]+U2[T+4>>2])-P2(g*t),U2[424+b>>2]=P2(U2[e+8>>2]+U2[T+8>>2])-P2(v*t),X2[396+b>>2]=0,U2[392+b>>2]=o,U2[388+b>>2]=l,U2[384+b>>2]=Q,N2[X2[X2[x>>2]+16>>2]](x,384+b|0,416+b|0,P2(-t)),e=e+12|0,f=f+4|0,!(k=k-1|0))break}else for(t=P2(-v),o=P2(-g),v=P2(-E),f=144+b|0,e=176+b|0;;)if(U2[416+b>>2]=U2[e>>2]+U2[T>>2],U2[420+b>>2]=U2[e+4>>2]+U2[T+4>>2],U2[424+b>>2]=U2[e+8>>2]+U2[T+8>>2],X2[396+b>>2]=0,U2[392+b>>2]=t,U2[388+b>>2]=o,U2[384+b>>2]=v,N2[X2[X2[x>>2]+16>>2]](x,384+b|0,416+b|0,P2(-U2[f>>2])),e=e+12|0,f=f+4|0,!(k=k-1|0))break}else{for(e=144+b|4,w=0,c=U2[144+b>>2],f=1;;)if(c=(r=c<(t=U2[e>>2]))?t:c,w=r?f:w,e=e+4|0,(0|k)==(0|(f=f+1|0)))break;e:{r:{f:{i:switch(0|(f=k-1|0)){case 1:break f;case 0:break i;default:break r;}c=U2[276+b>>2],t=U2[272+b>>2];break e}c=P2(P2(U2[276+b>>2]+U2[284+b>>2])*P2(.5)),t=P2(P2(U2[272+b>>2]+U2[280+b>>2])*P2(.5));break e}for(t=P2(0),e=272+b|0,u=P2(0),o=P2(0);;)if(s=t,t=U2[e+12>>2],l=U2[e+4>>2],c=P2(t+l),Q=U2[e>>2],Z=U2[(e=e+8|0)>>2],l=P2(P2(Q*t)-P2(Z*l)),t=P2(s+P2(c*l)),o=P2(o+l),u=P2(u+P2(P2(Q+Z)*l)),!(f=f-1|0))break;l=P2(0xde0b6b000000000),s=o,Q=U2[(e=(272+b|0)+(k<<3)|0)-8>>2],Z=U2[276+b>>2],B=U2[272+b>>2],c=U2[e-4>>2],o=P2(P2(Q*Z)-P2(B*c)),s=P2(s+o),P2(j2(s))>P2(1.1920928955078125e-7)&&(l=P2(P2(1)/P2(s*P2(3)))),c=P2(P2(t+P2(P2(Z+c)*o))*l),t=P2(P2(u+P2(P2(Q+B)*o))*l)}for(f=416+b|0,e=272+b|0,r=k;;)if(a2=f,n2=B2(P2(U2[e+4>>2]-c),P2(U2[e>>2]-t)),U2[a2>>2]=n2,e=e+8|0,f=f+4|0,!(r=r-1|0))break;for(e=384+b|0,f=k;;)if(X2[e>>2]=1,e=e+4|0,!(f=f-1|0))break;if(X2[112+b>>2]=w,2<=((X2[(e=w<<2)+(384+b|0)>>2]=0)|_))for(l=P2(P2(6.2831854820251465)/P2(0|k2)),Q=U2[e+(416+b|0)>>2],_=112+b|0,u2=1;;){for(X2[_+4>>2]=w,Z=(t=P2(P2(l*P2(0|u2))+Q))>P2(3.1415927410125732)?P2(t+P2(-6.2831854820251465)):t,_=_+4|0,r=0,t=P2(1e9),f=416+b|0,e=384+b|0,s2=w;;)if(X2[e>>2]&&(o=(o=P2(j2(P2(U2[f>>2]-Z))))>P2(3.1415927410125732)?P2(P2(6.2831854820251465)-o):o)>2]=r,t=o),e=e+4|0,f=f+4|0,(0|k)==(0|(r=r+1|0)))break;if(((X2[(384+b|0)+(s2<<2)>>2]=0)|k2)==(0|(u2=u2+1|0)))break}if(o=P2(-v),l=P2(-g),Q=P2(-E),4<=(0|A))for(f=k2-1|0,A=112+b|4;;){if(e=(176+b|0)+H2(w,12)|0,Z=P2(U2[e>>2]+U2[T>>2]),U2[416+b>>2]=Z,c=P2(U2[e+4>>2]+U2[T+4>>2]),U2[420+b>>2]=c,t=P2(U2[e+8>>2]+U2[T+8>>2]),U2[424+b>>2]=t,X2[396+b>>2]=0,U2[392+b>>2]=o,U2[388+b>>2]=l,U2[384+b>>2]=Q,X2[108+b>>2]=0,s=t,t=U2[(144+b|0)+(w<<2)>>2],U2[104+b>>2]=s-P2(v*t),U2[100+b>>2]=c-P2(g*t),U2[96+b>>2]=Z-P2(E*t),N2[X2[X2[x>>2]+16>>2]](x,384+b|0,96+b|0,P2(-t)),!f)break A;f=f-1|0,w=X2[A>>2],A=A+4|0}for(f=k2-1|0,A=112+b|4;;){if(e=(176+b|0)+H2(w,12)|0,U2[416+b>>2]=U2[e>>2]+U2[T>>2],U2[420+b>>2]=U2[e+4>>2]+U2[T+4>>2],U2[424+b>>2]=U2[e+8>>2]+U2[T+8>>2],X2[396+b>>2]=0,U2[392+b>>2]=o,U2[388+b>>2]=l,U2[384+b>>2]=Q,N2[X2[X2[x>>2]+16>>2]](x,384+b|0,416+b|0,P2(-U2[(144+b|0)+(w<<2)>>2])),!f)break A;f=f-1|0,w=X2[A>>2],A=A+4|0}}}}K2=448+b|0}function f4(A,e,r){var f,i,a,n,b,t,o,c,x,y,V,p,M,S,X,J,U,H,k,u=P2(0),s=0,l=P2(0),B=0,v=0,d=P2(0),Z=P2(0),_=P2(0),g=0,E=P2(0),Q=P2(0),w=0,G=P2(0),C=0,h=P2(0),F=P2(0),Y=P2(0),m=0,N=P2(0),R=P2(0),D=P2(0),T=0,W=(P2(0),P2(0),0),I=P2(0),P=(P2(0),P2(0),P2(0),0),j=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0)),z=(P2(0),P2(0),P2(0),0),O=0;K2=k=K2-128|0,X2[A+376>>2]=0,X2[A+364>>2]=4,X2[A+368>>2]=0,X2[A+360>>2]=g=A+316|0,X2[A+356>>2]=A+284,X2[A+352>>2]=A+252,X2[A+348>>2]=A+220,B=X2[e+4>>2],X2[A>>2]=X2[e>>2],X2[A+4>>2]=B,B=X2[(s=e+16|0)+4>>2],X2[(v=A+16|0)>>2]=X2[s>>2],X2[v+4>>2]=B,B=X2[e+12>>2],X2[A+8>>2]=X2[e+8>>2],X2[A+12>>2]=B,B=X2[(s=e+32|0)+4>>2],X2[(v=A+32|0)>>2]=X2[s>>2],X2[v+4>>2]=B,B=X2[(s=e+24|0)+4>>2],X2[(v=A+24|0)>>2]=X2[s>>2],X2[v+4>>2]=B,B=X2[(s=e+48|0)+4>>2],X2[(v=A+48|0)>>2]=X2[s>>2],X2[v+4>>2]=B,B=X2[(s=e+40|0)+4>>2],X2[(v=A+40|0)>>2]=X2[s>>2],X2[v+4>>2]=B,B=X2[(s=e- -64|0)+4>>2],X2[(v=A- -64|0)>>2]=X2[s>>2],X2[v+4>>2]=B,B=X2[e+60>>2],X2[A+56>>2]=X2[e+56>>2],X2[A+60>>2]=B,B=X2[(s=e+80|0)+4>>2],X2[(v=A+80|0)>>2]=X2[s>>2],X2[v+4>>2]=B,B=X2[(s=e+72|0)+4>>2],X2[(v=A+72|0)>>2]=X2[s>>2],X2[v+4>>2]=B,B=X2[(s=e+96|0)+4>>2],X2[(v=A+96|0)>>2]=X2[s>>2],X2[v+4>>2]=B,B=X2[(s=e+88|0)+4>>2],X2[(v=A+88|0)>>2]=X2[s>>2],X2[v+4>>2]=B,B=X2[(s=e+104|0)+4>>2],X2[(v=A+104|0)>>2]=X2[s>>2],X2[v+4>>2]=B,B=X2[(s=e+112|0)+4>>2],X2[(v=A+112|0)>>2]=X2[s>>2],X2[v+4>>2]=B,s=X2[e+120>>2],e=X2[e+124>>2],X2[A+144>>2]=0,X2[(B=A+180|0)>>2]=0,X2[A+120>>2]=s,X2[A+124>>2]=e,e=X2[r+4>>2],X2[A+128>>2]=X2[r>>2],X2[A+132>>2]=e,e=X2[(r=r+8|0)+4>>2],X2[(s=v=A+136|0)>>2]=X2[r>>2],X2[s+4>>2]=e,Z=U2[s>>2],u=U2[(r=A+132|0)>>2],l=U2[A+128>>2],X2[A+364>>2]=3,X2[(e=A+164|0)>>2]=0,X2[B>>2]=1,X2[(X=A+148|0)>>2]=g,d=P2(-l),K(A,(B=(l=P2(P2(P2(l*l)+P2(u*u))+P2(Z*Z)))>P2(0))?d:P2(1),P2(B?-u:0),P2(B?-Z:0),g),X2[e>>2]=1065353216,s=X2[X>>2],e=X2[s+20>>2],X2[A+128>>2]=X2[s+16>>2],X2[A+132>>2]=e,e=X2[(B=s+24|0)+4>>2],X2[v>>2]=X2[B>>2],X2[v+4>>2]=e,w=X2[B+4>>2],B=X2[B>>2],X2[(e=88+k|0)>>2]=B,X2[e+4>>2]=w,X2[(e=72+k|0)>>2]=B,X2[e+4>>2]=w,X2[(e=56+k|0)>>2]=B,X2[e+4>>2]=w,g=X2[s+20>>2],e=X2[s+16>>2],X2[80+k>>2]=e,X2[84+k>>2]=g,X2[64+k>>2]=e,X2[68+k>>2]=g,X2[48+k>>2]=e,X2[52+k>>2]=g,X2[40+k>>2]=B,X2[44+k>>2]=w,X2[32+k>>2]=e,X2[36+k>>2]=g,B=A+128|0,F=U2[r>>2],u=U2[v>>2],m=X2[A+368>>2],Y=U2[A+128>>2];A:{e:{r:{for(;;){if((Z=P2(O2(P2(P2(P2(Y*Y)+P2(F*F))+P2(u*u)))))>2]=1;break r}if(e=X2[A+364>>2]-1|0,X2[A+364>>2]=e,P=H2(m,36),r=X2[(W=180+(n=P+A|0)|0)>>2],X2[W>>2]=r+1,e=X2[348+((e<<2)+A|0)>>2],X2[(r=(C=148+n|0)+(r<<2)|0)>>2]=e,X2[r+16>>2]=0,K(A,P2(-Y),P2(-F),P2(-u),e),v=X2[W>>2],e=X2[(C+(v<<2)|0)-4>>2],E=U2[e+16>>2],u=P2(E-U2[32+k>>2]),d=P2(u*u),Q=U2[e+20>>2],u=P2(Q-U2[36+k>>2]),d=P2(d+P2(u*u)),_=U2[e+24>>2],u=P2(_-U2[40+k>>2]),P2(d+P2(u*u))>2]),d=P2(u*u),u=P2(Q-U2[52+k>>2]),d=P2(d+P2(u*u)),u=P2(_-U2[56+k>>2]),P2(d+P2(u*u))>2]),d=P2(u*u),u=P2(Q-U2[68+k>>2]),d=P2(d+P2(u*u)),u=P2(_-U2[72+k>>2]),P2(d+P2(u*u))>2]),d=P2(u*u),u=P2(Q-U2[84+k>>2]),d=P2(d+P2(u*u)),u=P2(_-U2[88+k>>2]),P2(d+P2(u*u))>2],X2[(s=w=(32+k|0)+((z=z+1&3)<<4)|0)+8>>2]=X2[r>>2],X2[s+12>>2]=e,e=X2[g+4>>2],X2[s>>2]=X2[g>>2],X2[s+4>>2]=e,u=P2(P2(P2(P2(U2[A+128>>2]*E)+P2(U2[A+132>>2]*Q))+P2(U2[A+136>>2]*_))/Z),P2(P2(Z-(j=j>2],X2[A+364>>2]=B+1,m=X2[A+368>>2],r=H2(m,36)+A|0,s=X2[(e=r+180|0)>>2]-1|0,X2[e>>2]=s,X2[348+((B<<2)+A|0)>>2]=X2[148+(r+(s<<2)|0)>>2];break r}f:{i:{a:{n:{b:switch(v-2|(X2[12+k>>2]=0)){case 0:if(r=X2[152+n>>2],_=U2[r+16>>2],e=X2[C>>2],h=U2[e+16>>2],D=P2(_-h),Z=U2[r+20>>2],N=U2[e+20>>2],E=P2(Z-N),u=U2[r+24>>2],R=U2[e+24>>2],Q=P2(u-R),!((l=P2(P2(P2(D*D)+P2(E*E))+P2(Q*Q)))>P2(0)))break i;if((G=P2(P2(-P2(P2(P2(h*D)+P2(N*E))+P2(R*Q)))/l))>=P2(1)){X2[16+k>>2]=0,X2[20+k>>2]=1065353216,X2[12+k>>2]=2,l=P2(P2(P2(_*_)+P2(Z*Z))+P2(u*u));break a}if(!(G<=P2(0)))break n;X2[16+k>>2]=1065353216,X2[20+k>>2]=0,X2[12+k>>2]=1,l=P2(P2(P2(h*h)+P2(N*N))+P2(R*R));break a;case 1:l=i4(X2[C>>2]+16|0,X2[152+n>>2]+16|0,X2[156+n>>2]+16|0,16+k|0,12+k|0);break a;case 2:break b;default:break a;}if(T=X2[C>>2],J=U2[T+16>>2],f=X2[160+n>>2],F=U2[f+16>>2],x=P2(J-F),C=X2[152+n>>2],c=U2[C+20>>2],Y=U2[f+20>>2],y=P2(c-Y),i=P2(x*y),w=X2[156+n>>2],G=U2[w+24>>2],I=U2[f+24>>2],b=P2(G-I),U=U2[T+20>>2],V=P2(U-Y),H=U2[C+24>>2],p=P2(H-I),h=P2(V*p),u=U2[w+16>>2],t=P2(u-F),d=U2[T+24>>2],M=P2(d-I),Z=U2[C+16>>2],S=P2(Z-F),N=P2(M*S),l=U2[w+20>>2],o=P2(l-Y),R=P2(x*p),D=P2(V*S),E=P2(M*y),!((a=P2(P2(P2(i*b)+P2(P2(P2(P2(h*t)+P2(N*o))-P2(R*o))-P2(D*b)))-P2(E*t)))>P2(0)|a>2]=0,X2[112+k>>2]=0,X2[116+k>>2]=0,X2[108+k>>2]=0,l=P2(-1),P2(a*P2(P2(P2(P2(h-E)*F)+P2(Y*P2(N-R)))+P2(P2(i-D)*I)))>P2(0)&&(l=i4(v,s,g,112+k|0,108+k|0),X2[24+k>>2]=0,e=X2[116+k>>2],X2[16+k>>2]=X2[112+k>>2],X2[20+k>>2]=e,U2[28+k>>2]=U2[120+k>>2],e=X2[108+k>>2],X2[12+k>>2]=2&e|e<<1&8|1&e,Y=U2[f+20>>2],F=U2[f+16>>2],I=U2[f+24>>2]),r=w+16|0,P2(a*P2(P2(P2(P2(P2(y*b)-P2(p*o))*F)+P2(Y*P2(P2(p*t)-P2(b*S))))+P2(P2(P2(o*S)-P2(y*t))*I)))>P2(0)&&((u=i4(s,r,g,112+k|0,108+k|0))>2]=U2[112+k>>2],X2[16+k>>2]=0,e=X2[120+k>>2],X2[24+k>>2]=X2[116+k>>2],X2[28+k>>2]=e,X2[12+k>>2]=X2[108+k>>2]<<1&14,l=u),P2(a*P2(P2(P2(P2(P2(o*M)-P2(b*V))*U2[f+16>>2])+P2(U2[f+20>>2]*P2(P2(b*x)-P2(M*t))))+P2(P2(P2(V*t)-P2(o*x))*U2[f+24>>2])))>P2(0)&&((u=i4(r,v,g,112+k|0,108+k|0))>2]=U2[112+k>>2],X2[20+k>>2]=0,U2[16+k>>2]=U2[116+k>>2],U2[28+k>>2]=U2[120+k>>2],e=X2[108+k>>2],X2[12+k>>2]=e>>>1&1|e<<1&8|e<<2&4,l=u),!(l>2]=15,N=U2[T+20>>2],R=U2[w+24>>2],i=U2[f+16>>2],D=U2[T+24>>2],u=U2[w+16>>2],G=U2[f+20>>2],E=U2[T+16>>2],h=U2[f+24>>2],l=U2[w+20>>2],Z=P2(P2(P2(P2(P2(P2(P2(P2(N*R)*i)+P2(P2(D*u)*G))-P2(G*P2(R*E)))-P2(P2(N*u)*h))+P2(h*P2(E*l)))-P2(i*P2(D*l)))/a),U2[20+k>>2]=Z,Q=U2[C+24>>2],_=U2[C+16>>2],d=P2(P2(P2(P2(i*P2(l*Q))+P2(G*P2(R*_)))-P2(G*P2(Q*u)))-P2(h*P2(l*_))),l=U2[C+20>>2],u=P2(P2(P2(d+P2(h*P2(u*l)))-P2(i*P2(R*l)))/a),U2[16+k>>2]=u,l=P2(P2(P2(P2(P2(P2(P2(i*P2(l*D))+P2(G*P2(Q*E)))-P2(G*P2(D*_)))-P2(h*P2(l*E)))+P2(h*P2(_*N)))-P2(i*P2(Q*N)))/a),U2[24+k>>2]=l,U2[28+k>>2]=P2(1)-P2(P2(u+Z)+l),l=P2(0);break a}X2[12+k>>2]=3,U2[20+k>>2]=G,U2[16+k>>2]=P2(1)-G,l=P2(R+P2(Q*G)),d=P2(l*l),l=P2(h+P2(D*G)),u=P2(l*l),l=P2(N+P2(E*G)),l=P2(d+P2(u+P2(l*l)))}if(l>=P2(0)){if(w=H2(m=1-m|0,36)+A|0,X2[(g=w+180|0)>>2]=0,X2[B>>2]=0,X2[B+4>>2]=0,X2[A+368>>2]=m,X2[(e=B+8|0)>>2]=0,X2[e+4>>2]=0,C=X2[12+k>>2],!(v=X2[W>>2])){u=P2(0),F=P2(0),Y=P2(0);break f}for(e=P+X|0,u=P2(0),W=16+k|(T=0),F=P2(0),Y=P2(0),r=0;;)if(P=X2[e>>2],C>>>r&1?(X2[(s=w+(T<<2)|0)+148>>2]=P,_=U2[W>>2],U2[s+164>>2]=_,X2[g>>2]=T=T+1|0,s=X2[e>>2],Z=U2[s+24>>2],u=U2[s+20>>2],Y=P2(P2(_*U2[s+16>>2])+U2[A+128>>2]),U2[A+128>>2]=Y,F=P2(P2(_*u)+U2[A+132>>2]),U2[A+132>>2]=F,u=P2(P2(_*Z)+U2[A+136>>2]),U2[A+136>>2]=u):(s=X2[A+364>>2],X2[A+364>>2]=s+1,X2[348+((s<<2)+A|0)>>2]=P),e=e+4|0,W=W+4|0,(0|v)==(0|(r=r+1|0)))break;break f}}B=X2[A+364>>2],X2[A+364>>2]=B+1,m=X2[A+368>>2],r=H2(m,36)+A|0,s=X2[(e=r+180|0)>>2]-1|0,X2[e>>2]=s,X2[348+((B<<2)+A|0)>>2]=X2[148+(r+(s<<2)|0)>>2];break r}if(15==(0|C)&&(X2[A+376>>2]=1),127==(0|O)){X2[A+376>>(e=2)]=2,X2[A+372>>2]=148+(H2(m,36)+A|0);break A}if(O=O+1|0,e=X2[A+376>>2])break e}B=X2[A+364>>2],X2[A+364>>2]=B+1,m=X2[A+368>>2],r=H2(m,36)+A|0,s=X2[(e=r+180|0)>>2]-1|0,X2[e>>2]=s,X2[348+((B<<2)+A|0)>>2]=X2[148+(r+(s<<2)|0)>>2]}e=X2[A+376>>2]}X2[A+372>>2]=148+(H2(m,36)+A|0);e:switch(0|e){case 0:l=U2[A+128>>2],u=P2(l*l),l=U2[A+132>>2],u=P2(u+P2(l*l)),l=U2[A+136>>2],U2[A+144>>2]=O2(P2(u+P2(l*l))),e=0;break A;case 1:break e;default:break A;}X2[A+144>>2]=0,e=1}return K2=128+k|0,e}function K(A,e,r,f,i){var a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_=0;P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);K2=Z=K2-48|0,X2[i+12>>2]=0,a=P2(P2(1)/P2(O2(P2(P2(P2(e*e)+P2(r*r))+P2(f*f))))),U2[i+8>>2]=a*f,U2[i+4>>2]=a*r,U2[i>>2]=a*e,_=X2[A+120>>2],o=X2[A+124>>2],t=X2[A>>2]+(o>>1)|0,1&o&&(_=X2[_+X2[t>>2]>>2]),N2[0|_](Z,t,i),f=U2[i+8>>2],r=U2[i>>2],_=X2[A+124>>2],o=X2[A+4>>2]+(_>>1)|0,e=P2(-U2[i+4>>2]),t=X2[A+120>>2],t=1&_?X2[X2[o>>2]+t>>2]:t,X2[28+Z>>2]=0,U2[24+Z>>2]=P2(P2(U2[A+44>>2]*e)-P2(r*U2[A+40>>2]))-P2(f*U2[A+48>>2]),U2[20+Z>>2]=P2(P2(U2[A+28>>2]*e)-P2(r*U2[A+24>>2]))-P2(f*U2[A+32>>2]),U2[16+Z>>2]=P2(P2(U2[A+12>>2]*e)-P2(r*U2[A+8>>2]))-P2(f*U2[A+16>>2]),N2[0|t](32+Z|0,o,16+Z|0),_=U2[A+104>>2],t=U2[A- -64>>2],o=U2[A+60>>2],c=U2[A+108>>2],k=U2[A+80>>2],u=U2[A+72>>2],s=U2[A+76>>2],l=U2[A+112>>2],B=U2[A+96>>2],v=U2[A+88>>2],d=U2[A+92>>2],a=U2[A+56>>2],A=U2[40+Z>>2],n=U2[32+Z>>2],b=U2[36+Z>>2],f=U2[Z>>2],r=U2[4+Z>>2],e=U2[8+Z>>2],X2[i+28>>2]=0,U2[i+24>>2]=e-P2(l+P2(P2(P2(n*v)+P2(b*d))+P2(A*B))),U2[i+20>>2]=r-P2(c+P2(P2(P2(n*u)+P2(b*s))+P2(A*k))),U2[i+16>>2]=f-P2(_+P2(P2(P2(n*a)+P2(b*o))+P2(A*t))),K2=48+Z|0}function i4(A,e,r,f,i){var a,n=P2(0),b=P2(0),t=P2(0),o=P2(0),c=P2(0),k=P2(0),u=P2(0),s=(P2(0),P2(0)),l=P2(0),B=P2(0),v=(P2(0),P2(0),P2(0)),d=0,Z=P2(0),_=P2(0),g=P2(0),E=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0)),n=(P2(0),P2(-1)),u=U2[A>>2],t=U2[e>>2],b=P2(u-t),k=U2[e+4>>2],Z=U2[r+4>>2],Q=P2(k-Z),w=U2[A+4>>2],c=P2(w-k),_=U2[r>>2],G=P2(t-_),C=P2(P2(b*Q)-P2(c*G)),o=U2[e+8>>2],g=U2[r+8>>2],h=P2(o-g),F=U2[A+8>>2],l=P2(F-o),Y=P2(P2(c*h)-P2(l*Q)),m=P2(P2(l*G)-P2(b*h));return(a=P2(P2(C*C)+P2(P2(Y*Y)+P2(m*m))))>P2(0)&&(P2(P2(P2(u*P2(P2(C*c)-P2(m*l)))+P2(w*P2(P2(Y*l)-P2(C*b))))+P2(P2(P2(m*b)-P2(Y*c))*F))>P2(0)?(c=P2(-1),l=P2(t-u),s=P2(k-w),B=P2(o-F),(n=P2(P2(P2(l*l)+P2(s*s))+P2(B*B)))>P2(0)?(b=P2(1),(n=P2(P2(-P2(P2(P2(u*l)+P2(w*s))+P2(F*B)))/n))>=P2(1)?(c=P2(P2(P2(t*t)+P2(k*k))+P2(o*o)),d=2):(b=P2(0),d=1,n<=P2(0)?(c=P2(P2(P2(u*u)+P2(w*w))+P2(F*F)),v=P2(1)):(b=P2(F+P2(B*n)),c=P2(b*b),b=P2(u+P2(l*n)),t=P2(b*b),b=P2(w+P2(s*n)),c=P2(c+P2(t+P2(b*b))),v=P2(P2(1)-n),d=3,b=n))):b=P2(0),X2[f+8>>2]=0,U2[f+4>>2]=b,U2[f>>2]=v,X2[i>>2]=d,o=U2[e+8>>2],k=U2[e+4>>2],t=U2[e>>2]):(c=P2(-1),b=P2(0)),F=P2(g-F),w=P2(Z-w),l=P2(_-u),P2(P2(P2(t*P2(P2(C*Q)-P2(m*h)))+P2(k*P2(P2(Y*h)-P2(C*G))))+P2(P2(P2(m*G)-P2(Y*Q))*o))>P2(0)&&(Z=U2[r>>2],u=P2(Z-t),_=U2[r+4>>2],s=P2(_-k),g=U2[r+8>>2],B=P2(g-o),E=P2(P2(P2(u*u)+P2(s*s))+P2(B*B)),n=P2(-1),E>P2(0)&&(b=P2(1),n=(n=P2(P2(-P2(P2(P2(t*u)+P2(k*s))+P2(o*B)))/E))>=P2(1)?(v=P2(0),d=2,P2(P2(P2(Z*Z)+P2(_*_))+P2(g*g))):(b=P2(0),d=1,n<=P2(0)?(v=P2(1),P2(P2(P2(t*t)+P2(k*k))+P2(o*o))):(v=P2(P2(1)-n),d=3,n=P2(o+P2(B*(b=n))),o=P2(n*n),n=P2(t+P2(u*b)),t=P2(n*n),n=P2(k+P2(s*b)),P2(o+P2(t+P2(n*n)))))),c>2]=b,U2[f+4>>2]=v,X2[f>>2]=0,X2[i>>2]=d<<1):n=c,k=U2[r>>2],o=U2[r+4>>2],u=U2[r+8>>2],P2(P2(P2(k*P2(P2(C*w)-P2(m*F)))+P2(o*P2(P2(Y*F)-P2(C*l))))+P2(P2(P2(m*l)-P2(Y*w))*u))>P2(0)&&(t=P2(-1),_=U2[A>>2],s=P2(_-k),g=U2[A+4>>2],B=P2(g-o),E=U2[A+8>>2],Z=P2(E-u),(c=P2(P2(P2(s*s)+P2(B*B))+P2(Z*Z)))>P2(0)&&(b=P2(1),(c=P2(P2(-P2(P2(P2(k*s)+P2(o*B))+P2(u*Z)))/c))>=P2(1)?(t=P2(P2(P2(_*_)+P2(g*g))+P2(E*E)),v=P2(0),d=2):(b=P2(0),c<=P2(0)?(t=P2(P2(P2(k*k)+P2(o*o))+P2(u*u)),v=P2(1),d=1):(b=P2(u+P2(Z*c)),t=P2(b*b),b=P2(k+P2(s*c)),k=P2(b*b),b=P2(o+P2(B*c)),t=P2(t+P2(k+P2(b*b))),v=P2(P2(1)-c),d=3,b=c))),(t>2]=v,X2[f+4>>2]=0,U2[f>>2]=b,X2[i>>2]=d<<2&4|d>>>1,n=t)),n>2])+P2(m*U2[A+4>>2]))+P2(C*U2[A+8>>2]))/a),n=P2(m*c),t=P2(U2[e+4>>2]-n),b=P2(Y*c),k=P2(U2[e>>2]-b),o=P2(P2(G*t)-P2(Q*k)),u=P2(o*o),c=P2(C*c),o=P2(U2[e+8>>2]-c),t=P2(P2(Q*o)-P2(t*h)),C=P2(t*t),t=P2(P2(k*h)-P2(G*o)),o=P2(O2(P2(u+P2(C+P2(t*t))))),t=P2(O2(a)),k=P2(o/t),U2[f>>2]=k,X2[i>>2]=7,o=P2(U2[r+4>>2]-n),v=P2(U2[r>>2]-b),C=P2(P2(l*o)-P2(v*w)),u=P2(C*C),C=P2(U2[r+8>>2]-c),o=P2(P2(w*C)-P2(o*F)),s=P2(o*o),o=P2(P2(v*F)-P2(l*C)),t=P2(P2(O2(P2(u+P2(s+P2(o*o)))))/t),U2[f+4>>2]=t,U2[f+8>>2]=P2(1)-P2(k+t),n=P2(P2(c*c)+P2(P2(b*b)+P2(n*n))))),n}function a4(A,e,r,f,i){var a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g=P2(0),E=(P2(0),P2(0),P2(0),P2(0),0);P2(0),P2(0),P2(0),P2(0);if(_=X2[A+18504>>2]){if((a=X2[_+48>>2])&&(X2[a+44>>2]=X2[_+44>>2]),(a=X2[_+44>>2])&&(X2[a+48>>2]=X2[_+48>>2]),X2[A+18504>>2]==(0|_)&&(X2[A+18504>>2]=X2[_+48>>2]),X2[_+44>>2]=0,X2[_+48>>2]=X2[A+18496>>2],X2[(a=A+18508|0)>>2]=X2[a>>2]-1,(a=X2[A+18496>>2])&&(X2[a+44>>2]=_),X2[A+18496>>2]=_,X2[(a=A+18500|0)>>2]=X2[a>>2]+1,S2[_+55|0]=0,X2[_+28>>2]=f,X2[_+24>>2]=r,X2[_+20>>2]=e,t=U2[f+16>>2],o=U2[(a=r+16|0)>>2],b=U2[(c=e+16|0)>>2],u=U2[(k=r+20|0)>>2],s=U2[f+24>>2],l=U2[(B=r+24|0)>>2],g=U2[(v=e+24|0)>>2],n=U2[(d=e+20|0)>>2],Z=U2[f+20>>2],X2[_+12>>2]=0,u=P2(u-n),s=P2(s-g),l=P2(l-g),n=P2(Z-n),g=P2(P2(u*s)-P2(l*n)),U2[_>>2]=g,t=P2(t-b),o=P2(o-b),b=P2(P2(l*t)-P2(o*s)),U2[_+4>>2]=b,n=P2(P2(o*n)-P2(u*t)),U2[_+8>>2]=n,E=2,(t=P2(O2(P2(P2(P2(g*g)+P2(b*b))+P2(n*n)))))>P2(9999999747378752e-20)){if(o=U2[a>>2],n4(g,b,n,U2[c>>2],U2[d>>2],U2[v>>2],o,U2[k>>2],U2[B>>2],a=_+16|0)||(g=U2[r+16>>2],n=U2[r+20>>2],b=U2[r+24>>2],n4(U2[_>>2],U2[(E=_+4|0)>>2],U2[(c=_+8|0)>>2],g,n,b,U2[(r=f+16|0)>>2],U2[(k=f+20|0)>>2],U2[(f=f+24|0)>>2],a)||n4(U2[_>>2],U2[E>>2],U2[c>>2],U2[r>>2],U2[k>>2],U2[f>>2],U2[e+16>>2],U2[e+20>>2],U2[e+24>>2],a)||(U2[_+16>>2]=P2(P2(P2(U2[e+16>>2]*U2[_>>2])+P2(U2[e+20>>2]*U2[_+4>>2]))+P2(U2[e+24>>2]*U2[_+8>>2]))/t)),g=P2(P2(1)/t),U2[_>>2]=g*U2[_>>2],U2[(e=_+4|0)>>2]=g*U2[e>>2],U2[(e=_+8|0)>>2]=g*U2[e>>2],i)return _;if(E=3,U2[a>>2]>=P2(-9999999747378752e-21))return _}X2[A>>2]=E,(e=X2[_+48>>2])&&(X2[e+44>>2]=X2[_+44>>2]),(e=X2[_+44>>2])&&(X2[e+48>>2]=X2[_+48>>2]),X2[A+18496>>2]==(0|_)&&(X2[A+18496>>2]=X2[_+48>>2]),X2[_+44>>2]=0,X2[_+48>>2]=X2[A+18504>>2],X2[A+18500>>2]=X2[A+18500>>2]-1,(e=X2[A+18504>>2])&&(X2[e+44>>2]=_),X2[A+18504>>2]=_,X2[A+18508>>2]=X2[A+18508>>2]+1}else X2[A>>2]=5;return 0}function n4(A,e,r,f,i,a,n,b,t,o){P2(0),P2(0),P2(0);var c=P2(n-f),k=P2(b-i),u=P2(t-a);return(e=P2(P2(P2(P2(c*e)-P2(k*A))*a)+P2(P2(P2(P2(k*r)-P2(u*e))*f)+P2(P2(P2(u*A)-P2(c*r))*i)))P2(0)||(A=P2(P2(P2(n*n)+P2(b*b))+P2(t*t)),P2(P2(P2(c*n)+P2(k*b))+P2(u*t))P2(0)?A:P2(0))),U2[o>>2]=O2(A)),e}function b4(){J2[26480]||(X2[6538]=1062847606,X2[6539]=0,X2[6536]=1042701022,X2[6537]=1056964440,X2[6534]=1062847606,X2[6535]=0,X2[6532]=-1093024784,X2[6533]=1050556081,X2[6530]=1062847606,X2[6531]=0,X2[6528]=-1093024784,X2[6529]=-1096927567,X2[6526]=1062847606,X2[6527]=0,X2[6524]=1042701022,X2[6525]=-1090519208,X2[6522]=1062847572,X2[6523]=0,X2[6520]=1057396286,X2[6521]=0,X2[6518]=1057396386,X2[6519]=0,X2[6516]=1060121912,X2[6517]=1056964507,X2[6514]=1057396420,X2[6515]=0,X2[6512]=-1098475836,X2[6513]=1062148969,X2[6510]=1057396386,X2[6511]=0,X2[6508]=-1084636143,X2[6509]=0,X2[6506]=1057396420,X2[6507]=0,X2[6504]=-1098475836,X2[6505]=-1085334679,X2[6502]=1057396386,X2[6503]=0,X2[6500]=1060121912,X2[6501]=-1090519141,X2[6498]=-2147483648,X2[6499]=0,X2[6496]=1058437413,X2[6497]=1062149053,X2[6494]=-2147483648,X2[6495]=0,X2[6492]=-2147483648,X2[6493]=1065353216,X2[6490]=-2147483648,X2[6491]=0,X2[6488]=-1089046235,X2[6489]=1062149053,X2[6486]=-2147483648,X2[6487]=0,X2[6484]=-1082951543,X2[6485]=1050556148,X2[6482]=-2147483648,X2[6483]=0,X2[6480]=-1082951543,X2[6481]=-1096927500,X2[6478]=0,X2[6479]=0,X2[6476]=-1089046235,X2[6477]=-1085334595,X2[6474]=0,X2[6475]=0,X2[6472]=0,X2[6473]=-1082130432,X2[6470]=0,X2[6471]=0,X2[6468]=1058437413,X2[6469]=-1085334595,X2[6466]=0,X2[6467]=0,X2[6464]=1064532105,X2[6465]=-1096927500,X2[6462]=0,X2[6463]=0,X2[6460]=1064532105,X2[6461]=1050556148,X2[6458]=-1090087228,X2[6459]=0,X2[6456]=1049007812,X2[6457]=1062148969,X2[6454]=-1090087262,X2[6455]=0,X2[6452]=-1087361736,X2[6453]=1056964507,X2[6450]=-1084636042,X2[6451]=0,X2[6448]=-1104782626,X2[6449]=1056964440,X2[6446]=-1090087262,X2[6447]=0,X2[6444]=-1087361736,X2[6445]=-1090519141,X2[6442]=-1084636076,X2[6443]=0,X2[6440]=-1090087362,X2[6441]=-2147483648,X2[6438]=-1090087262,X2[6439]=0,X2[6436]=1062847505,X2[6437]=-2147483648,X2[6434]=-1084636042,X2[6435]=0,X2[6432]=1054458864,X2[6433]=1050556081,X2[6430]=-1090087228,X2[6431]=0,X2[6428]=1049007812,X2[6429]=-1085334679,X2[6426]=-1084636042,X2[6427]=0,X2[6424]=-1104782626,X2[6425]=-1090519208,X2[6422]=-1084636042,X2[6423]=0,X2[6420]=1054458864,X2[6421]=-1096927567,X2[6418]=1065353216,X2[6419]=0,X2[6416]=-2147483648,X2[6417]=0,X2[6414]=1055193471,X2[6415]=0,X2[6412]=1063581978,X2[6413]=0,X2[6410]=1055193572,X2[6411]=0,X2[6408]=1049461434,X2[6409]=1062847522,X2[6406]=1055193572,X2[6407]=0,X2[6404]=-1086767520,X2[6405]=1057396202,X2[6402]=1055193572,X2[6403]=0,X2[6400]=-1086767520,X2[6401]=-1090087446,X2[6398]=1055193605,X2[6399]=0,X2[6396]=1049461434,X2[6397]=-1084636126,X2[6394]=-1092290076,X2[6395]=0,X2[6392]=1060716128,X2[6393]=1057396202,X2[6390]=-1092290043,X2[6391]=0,X2[6388]=-1098022214,X2[6389]=1062847522,X2[6386]=-1092290177,X2[6387]=0,X2[6384]=-1083901670,X2[6385]=-2147483648,X2[6382]=-1092290076,X2[6383]=0,X2[6380]=-1098022214,X2[6381]=-1084636126,X2[6378]=-1092290076,X2[6379]=0,X2[6376]=1060716128,X2[6377]=-1090087446,X2[6374]=-1082130432,X2[6375]=0,X2[6372]=0,X2[6373]=-2147483648,S2[26480]=1)}function t4(A){var e,r=0,f=0,i=0,a=0,n=0,b=0;if(X2[6801]=17760,a=X2[6258],r=X2[A+20>>2],(n=L2(23))&&(X2[(i=n+19&-16)-4>>2]=n),X2[6807]=i,X2[i>>2]=r?17368:17692,X2[6258]=a+2,(r=L2(39))&&(X2[(f=r+19&-16)-4>>2]=r,i=X2[6807]),X2[f+12>>2]=0,X2[f+16>>2]=3,X2[f>>2]=15248,S2[f+4|(n=0)]=0,X2[f+8>>2]=i,X2[6808]=f,f=0,(r=L2(27))&&(X2[(f=r+19&-16)-4>>2]=r),X2[f>>2]=17792,S2[f+4|0]=0,X2[6809]=f,(r=L2(27))&&(X2[(n=r+19&-16)-4>>2]=r),X2[n>>2]=17812,S2[n+4|(f=0)]=0,X2[6810]=n,X2[6258]=a+5,i=0,(r=L2(27))&&(X2[(i=r+19&-16)-4>>2]=r),X2[i>>2]=17832,S2[i+4|0]=0,X2[6811]=i,(r=L2(27))&&(X2[(f=r+19&-16)-4>>2]=r),X2[f>>2]=17852,S2[f+4|(i=0)]=0,X2[6812]=f,f=0,(r=L2(27))&&(X2[(f=r+19&-16)-4>>2]=r),X2[f>>2]=17872,S2[f+4|0]=0,X2[6813]=f,X2[6258]=a+8,(r=L2(27))&&(X2[(i=r+19&-16)-4>>2]=r),X2[i>>2]=17892,S2[i+4|(f=0)]=0,X2[6814]=i,i=0,(r=L2(27))&&(X2[(i=r+19&-16)-4>>2]=r),X2[i>>2]=17912,S2[i+4|0]=0,X2[6815]=i,(r=L2(27))&&(X2[(f=r+19&-16)-4>>2]=r),X2[f>>2]=17932,S2[f+4|(i=0)]=0,X2[6819]=f,X2[6258]=a+11,f=0,(r=L2(27))&&(X2[(f=r+19&-16)-4>>2]=r),X2[6820]=f,X2[f>>2]=17932,S2[f+4|0]=1,(r=L2(27))&&(X2[(i=r+19&-16)-4>>2]=r),X2[i>>2]=17952,S2[i+4|(f=0)]=0,X2[6818]=i,i=0,(r=L2(35))&&(X2[(i=r+19&-16)-4>>2]=r),X2[i+8>>2]=1,X2[i+12>>2]=0,X2[i>>2]=17972,S2[i+4|0]=0,X2[6822]=i,X2[6258]=b=a+14|0,(r=L2(35))&&(X2[(f=r+19&-16)-4>>2]=r),X2[f+8>>2]=1,X2[f+12>>2]=0,X2[f>>2]=17972,X2[6821]=f,S2[f+4|0]=1,e=X2[A+16>>2],r=X2[A>>2])X2[6803]=r,S2[27216]=0;else{if(S2[27216]=1,f=0,X2[6258]=a+15,a=0,(r=L2(43))&&(X2[(a=r+19&-16)-4>>2]=r),X2[a>>2]=868,X2[a+20>>2]=0,n=X2[A+8>>2],X2[a+4>>2]=n,b=X2[6258]+1|0,X2[6258]=b,(r=L2(H2(n,868)+19|0))&&(X2[(f=r+19&-16)-4>>2]=r),X2[a+12>>2]=f,X2[a+16>>2]=f,i=(X2[a+8>>2]=n)-1|0){for(n=X2[a>>2];;)if(f=X2[f>>2]=r=f+n|0,!(i=i-1|0))break}else r=f;X2[r>>2]=0,X2[6803]=a}if(r=X2[A+4>>2])X2[6805]=r,S2[27224]=0;else{if(n=116<(0|(r=80<(0|e)?e:80))?r+16&-16:128,S2[27224]=1,f=0,X2[6258]=b+1,a=0,(r=L2(43))&&(X2[(a=r+19&-16)-4>>2]=r),X2[a>>2]=n,X2[a+20>>2]=0,r=X2[A+12>>2],X2[a+4>>2]=r,X2[6258]=X2[6258]+1,(A=L2(16+(3|H2(r,n))|0))&&(X2[(f=A+19&-16)-4>>2]=A),X2[a+12>>2]=f,X2[a+16>>2]=f,i=(X2[a+8>>2]=r)-1|0){for(A=X2[a>>2];;)if(f=X2[f>>2]=r=A+f|0,!(i=i-1|0))break}else r=f;X2[r>>2]=0,X2[6805]=a}}function o4(A){var e=0,r=0;return X2[(A|=0)>>2]=17760,J2[A+20|0]&&(e=X2[A+16>>2],(r=X2[e+16>>2])&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2]),e=X2[A+16>>2]),e&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]))),J2[A+12|0]&&(e=X2[A+8>>2],(r=X2[e+16>>2])&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2]),e=X2[A+8>>2]),e&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]))),e=X2[A+28>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+28>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),e=X2[A+32>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+32>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),e=X2[A+36>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+36>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),e=X2[A+40>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+40>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),e=X2[A+44>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+44>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),e=X2[A+48>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+48>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),e=X2[A+52>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+52>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),e=X2[A+56>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+56>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),e=X2[A+72>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+72>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),e=X2[A+76>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+76>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),e=X2[A+68>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+68>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),e=X2[A+84>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+84>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),e=X2[A+80>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+80>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),e=X2[A+24>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+24>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),0|A}function c4(A){return X2[(A|=0)+72>>2]}function k4(A){var e,r,f,i,a=0,n=0,b=0,t=0,o=0;if(!((0|(e=X2[A+12>>2]))<=(0|(r=X2[A+32>>2])))){A:if(X2[A+36>>2]>=(0|e))b=X2[A+40>>2];else{if(e&&(X2[6258]=X2[6258]+1,(n=L2(19+(e<<2)|0))&&(X2[(b=n+19&-16)-4>>2]=n)),a=X2[A+40>>2],1<=(0|r)){for(n=b,o=a,t=r;;)if(X2[n>>2]=X2[o>>2],n=n+4|0,o=o+4|0,!(t=t-1|0))break}else if(!a){X2[A+40>>2]=b,X2[A+36>>2]=e,S2[A+44|0]=1;break A}J2[A+44|0]&&(X2[6259]=X2[6259]+1,q2(X2[a-4>>2])),X2[A+40>>2]=b,S2[A+44|0]=1,X2[A+36>>2]=e}if(v2((r<<2)+b|0,0,e-r<<2),f=(X2[A+32>>2]=e)<<2,(0|(a=X2[A+52>>2]))<(0|e)){A:if(X2[A+56>>2]>=(0|e))b=X2[A+60>>2];else{if(b=0,e&&(X2[6258]=X2[6258]+1,(n=L2(16+(3|f)|0))&&(X2[(b=n+19&-16)-4>>2]=n)),i=X2[A+60>>2],1<=(0|a)){for(n=b,o=i,t=a;;)if(X2[n>>2]=X2[o>>2],n=n+4|0,o=o+4|0,!(t=t-1|0))break}else if(!i){X2[A+60>>2]=b,X2[A+56>>2]=e,S2[A- -64|0]=1;break A}J2[A- -64|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),X2[A+60>>2]=b,S2[A+64|0]=1,X2[A+56>>2]=e}v2((a<<2)+b|0,0,e-a<<2)}if(1<=(0|(X2[A+52>>2]=e))&&(v2(X2[A+40>>2],255,f),v2(X2[A+60>>2],255,f)),!((0|r)<1))for(o=X2[A+60>>2],n=X2[A+16>>2],b=X2[A+40>>2],t=0;;)if(a=X2[X2[n>>2]+12>>2]|X2[X2[n+4>>2]+12>>2]<<16,a=H2((a=(a<<15^-1)+a|0)>>>10^a,9),a=b+((X2[A+12>>2]-1&((a=((a^=a>>>6)<<11^-1)+a|0)>>>16^a))<<2)|0,X2[o>>2]=X2[a>>2],n=n+16|0,o=o+4|0,(0|r)==(0|(t=(X2[a>>2]=t)+1|0)))break}}function u4(A,e,r){for(var f,i,a,n,b,t=0,o=0,c=0,k=0,u=0,s=0,l=0,B=0,v=0,d=0,Z=0;;){for(n=e,d=X2[A+12>>2],a=X2[(u=d+((e+r|0)/2<<4)|0)+8>>2],f=X2[u+4>>2],i=X2[u>>2],s=r;;){A:{if(!i)for(c=(e<<4)+d|0;;){o=k=-1,(l=X2[c>>2])&&(o=X2[l+12>>2]),(u=X2[c+4>>2])&&(k=X2[u+12>>2]),t=f?X2[f+12>>2]:-1;e:if(!(-1<(0|o))){if(!((0|t)<(0|k)||l)){if((0|f)!=(0|u))break A;if(X[c+8>>2]>a>>>0)break e;u=f;break A}if(l)break A;if((0|k)<=(0|t))break A}c=c+16|0,e=e+1|0}for(c=(e<<4)+d|0,B=X2[i+12>>2];;){o=k=-1,(l=X2[c>>2])&&(o=X2[l+12>>2]),(u=X2[c+4>>2])&&(k=X2[u+12>>2]),t=f?X2[f+12>>2]:-1;e:if(!((0|B)<(0|o))){if(!((0|t)<(0|k))&&(0|i)==(0|l)){if((0|f)!=(0|u))break A;if(X[c+8>>2]>a>>>0)break e;u=f;break A}if((0|i)!=(0|l))break A;if((0|k)<=(0|t))break A}c=c+16|0,e=e+1|0}}A:{if(!i)for(o=(s<<4)+d|0;;){k=-1,(v=X2[o>>2])&&(k=X2[v+12>>2]),B=f?X2[f+12>>2]:-1,t=-1,(Z=X2[o+4>>2])&&(t=X2[Z+12>>2]);e:if(!((0|k)<-1)){if(!((0|t)<(0|B)||v)){if((0|f)!=(0|Z))break A;if(X[o+8>>2]>>0)break e;break A}if(v)break A;if((0|B)<=(0|t))break A}o=o-16|0,s=s-1|0}for(o=(s<<4)+d|0,b=X2[i+12>>2];;){if(k=-1,(v=X2[o>>2])&&(k=X2[v+12>>2]),B=f?X2[f+12>>2]:-1,t=-1,(Z=X2[o+4>>2])&&(t=X2[Z+12>>2]),!((0|k)<(0|b)))if((0|t)<(0|B)||(0|i)!=(0|v)){if((0|i)!=(0|v))break A;if((0|B)<=(0|t))break A}else{if((0|f)!=(0|Z))break A;if(X[o+8>>2]>=a>>>0)break A}o=o-16|0,s=s-1|0}}if((0|e)<=(0|s)&&(k=X2[(t=(e<<4)+d|0)+8>>2],B=X2[t+12>>2],t=X2[o+4>>2],X2[c>>2]=X2[o>>2],X2[c+4>>2]=t,t=c+8|0,c=X2[(o=o+8|0)+4>>2],X2[t>>2]=X2[o>>2],X2[t+4>>2]=c,t=X2[A+12>>2]+(s<<4)|0,X2[t+4>>2]=u,X2[t+8>>2]=k,X2[t+12>>2]=B,X2[t>>2]=l,s=s-1|0,e=e+1|0),!((0|e)<=(0|s)))break;d=X2[A+12>>2]}if((0|n)<(0|s)&&u4(A,n,s),!((0|e)<(0|r)))break}}function s4(A){var e,r,f,i=0,a=0;if(X2[(A|=0)>>2]=19460,J2[A+152|0]&&(i=X2[A+96>>2],N2[X2[X2[i>>2]>>2]](i),(i=X2[A+96>>2])&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2]))),1<=(0|(a=X2[A+160>>2])))for(i=8;;)if(e=X2[A+168>>2]+i|0,(f=X2[(r=4+e|0)>>2])&&J2[8+e|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[r>>2]=0,S2[8+e|0]=1,X2[(e=e-4|0)>>2]=0,i=i+20|(X2[4+e>>2]=0),!(a=a-1|0))break;return(i=X2[A+168>>2])&&J2[A+172|0]&&(X2[6259]=X2[6259]+1,q2(X2[i-4>>2])),X2[A+168>>2]=0,X2[A+160>>2]=0,X2[A+164>>2]=0,S2[A+172|0]=1,$0(A+44|0),$0(A+4|0),0|A}function l4(A,e,r){var f,i,a,n,b,t,o,c=0,k=0,u=0,s=0,l=0,B=0,v=0,d=0;P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);if(K2=o=K2-256|0,A){for(f=U2[e+24>>2],i=U2[e+20>>2],a=U2[e+16>>2],n=U2[e+8>>2],b=U2[e+4>>2],t=U2[e>>2],X2[o>>2]=A,u=64,A=o,e=1;;){A:{e:{r:{if(l=X2[(d=(k=e-1|0)<<2)+A>>2],U2[l>>2]<=a&&U2[l+16>>2]>=t&&U2[l+4>>2]<=i&&U2[l+20>>2]>=b&&U2[l+8>>2]<=f&&U2[l+24>>2]>=n){if(X2[l+40>>2]){if((0|k)!=(0|u))break r;if((0|(c=u?u<<1:1))<(0|e))break r;if(k=0,c&&(X2[6258]=X2[6258]+1,(s=L2(19+(c<<2)|0))&&(X2[(k=s+19&-16)-4>>2]=s)),2<=(0|e))for(B=k,s=A;;)if(X2[B>>2]=X2[s>>2],B=B+4|0,s=s+4|0,!(u=u-1|0))break;if(!v){v=1;break e}X2[6259]=X2[6259]+(v=1),q2(X2[A-4>>2]);break e}N2[X2[X2[r>>2]+12>>2]](r,l)}e=k;break A}c=u,k=A}if(X2[k+d>>2]=X2[l+36>>2],(0|e)!=(0|c))u=c,A=k;else if((0|(u=e<<1))<=(0|e))u=e,A=k;else{if(A=0,X2[6258]=X2[6258]+1,(c=L2(19+(e<<3)|0))&&(X2[(A=c+19&-16)-4>>2]=c),1<=(0|e))for(B=A,c=k,s=e;;)if(X2[B>>2]=X2[c>>2],B=B+4|0,c=c+4|0,!(s=s-1|0))break;v?(X2[6259]=X2[6259]+(v=1),q2(X2[k-4>>2])):v=1}X2[(e<<2)+A>>2]=X2[l+40>>2],e=e+1|0}if(!(0<(0|e)))break}v&&A&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2]))}K2=256+o|0}function B4(A,e,r,f){var i,a,n,b,t=0,o=0,c=0,k=0,u=0,s=0;if(e&&r){if(!(127<(0|(k=X2[A+24>>2]))||127>2])){if(X2[6258]=X2[6258]+1,(t=L2(1043))&&(X2[(o=t+19&-16)-4>>2]=t),1<=(0|k))for(;;)if(u=X2[A+32>>2]+c|0,s=X2[u+4>>2],X2[(t=o+c|0)>>2]=X2[u>>2],X2[t+4>>2]=s,c=c+8|0,!(k=k-1|0))break;(t=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[t-4>>2])),X2[A+32>>2]=o,X2[A+28>>2]=128,S2[A+36|0]=1}for(X2[A+24>>2]=128,t=X2[A+32>>2],X2[t+4>>2]=r,X2[t>>2]=e,k=124,e=1;;){if(u=X2[A+32>>2],o=X2[(t=u+(i=(e=(r=e)-1|0)<<3)|0)+4>>2],t=X2[t>>2],(0|k)<(0|e)){if(!((0|(s=(k=X2[A+24>>2])<<1))<=(0|k)||X2[A+28>>2]>=(0|s))){if(u=0,k&&(X2[6258]=X2[6258]+1,(c=L2(19+(k<<4)|0))&&(X2[(u=c+19&-16)-4>>2]=c),!((0|k)<1)))for(c=0;;)if(a=X2[A+32>>2]+c|0,b=X2[4+a>>2],X2[(n=c+u|0)>>2]=X2[a>>2],X2[4+n>>2]=b,c=c+8|0,!(k=k-1|0))break;(k=X2[A+32>>2])&&J2[A+36|0]&&(X2[6259]=X2[6259]+1,q2(X2[k-4>>2])),X2[A+32>>2]=u,S2[A+36|0]=1,X2[A+28>>2]=s}k=(X2[A+24>>2]=s)-4|0}if((0|t)==(0|o)?X2[t+40>>2]&&(o=X2[t+36>>2],X2[(e=u+i|0)+4>>2]=o,X2[e>>2]=o,o=(e=r<<3)+X2[A+32>>2]|0,c=X2[t+40>>2],X2[o+4>>2]=c,X2[o>>2]=c,o=X2[t+40>>2],e=8+(e+X2[A+32>>2]|0)|0,X2[e>>2]=X2[t+36>>2],X2[e+4>>2]=o,e=r+2|0):U2[t>>2]<=U2[o+16>>2]&&U2[t+16>>2]>=U2[o>>2]&&U2[t+4>>2]<=U2[o+20>>2]&&U2[t+20>>2]>=U2[o+4>>2]&&U2[t+8>>2]<=U2[o+24>>2]&&U2[t+24>>2]>=U2[o+8>>2]&&(c=X2[o+40>>2],X2[t+40>>2]?(e=X2[t+36>>2],e=c?(X2[(c=u+i|0)+4>>2]=X2[o+36>>2],X2[c>>2]=e,c=X2[t+40>>2],u=(e=r<<3)+X2[A+32>>2]|0,X2[u+4>>2]=X2[o+36>>2],X2[u>>2]=c,c=X2[t+36>>2],u=e+X2[A+32>>2]|0,X2[u+12>>2]=X2[o+40>>2],X2[u+8>>2]=c,t=X2[t+40>>2],e=e+X2[A+32>>2]|0,X2[e+20>>2]=X2[o+40>>2],X2[e+16>>2]=t,r+3|0):(X2[(c=u+i|0)+4>>2]=o,X2[c>>2]=e,e=X2[t+40>>2],t=X2[A+32>>2]+(r<<3)|0,X2[t+4>>2]=o,X2[t>>2]=e,r+1|0)):c?(X2[(e=u+i|0)+4>>2]=X2[o+36>>2],X2[e>>2]=t,e=X2[A+32>>2]+(r<<3)|0,X2[e+4>>2]=X2[o+40>>2],X2[e>>2]=t,e=r+1|0):N2[X2[X2[f>>2]+8>>2]](f,t,o)),!e)break}}}function v4(A,e,r,f,i,a,n,b,t){var o,c,k,u,s,l,B,v,d,Z,_=0,g=0,E=0,Q=0,w=(P2(0),0);P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);if(K2=Z=K2-32|0,A){if((0|(_=X2[b+4>>2]))<=127){if(X2[b+8>>2]<=127){if(X2[6258]=X2[6258]+1,(E=L2(531))&&(X2[(g=E+19&-16)-4>>2]=E),1<=(0|_))for(E=_;;)if(X2[g+Q>>2]=X2[X2[b+12>>2]+Q>>2],Q=Q+4|0,!(E=E-1|0))break;(E=X2[b+12>>2])&&J2[b+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[E-4>>2])),X2[b+12>>2]=g,S2[b+16|0]=1,X2[b+8>>2]=128}for(Q=_<<2,E=_-128|0;;)if(Q=Q+4|(X2[X2[b+12>>2]+Q>>2]=0),!((_=E)>>>0<=(E=_+1|0)>>>0))break}for(X2[b+4>>2]=128,X2[X2[b+12>>2]>>2]=A,A=126,E=1;;){X2[12+Z>>2]=0,w=X2[b+12>>2],Q=X2[w+(v=(_=E-1|0)<<2)>>2],U2[8+Z>>2]=U2[Q+8>>2]-U2[n+8>>2],U2[4+Z>>2]=U2[Q+4>>2]-U2[n+4>>2],U2[Z>>2]=U2[Q>>2]-U2[n>>2],c=U2[Q+24>>2],k=U2[Q+16>>2],o=U2[a+8>>2],s=U2[a>>2],U2[20+Z>>2]=U2[Q+20>>2]-U2[a+4>>2],U2[16+Z>>2]=k-s,U2[24+Z>>2]=c-o,g=X2[f+4>>2],s=U2[e+4>>2],l=U2[r+4>>2],c=P2(P2(U2[4+((g<<4)+Z|0)>>2]-s)*l),o=U2[r>>2],u=X2[f>>2],B=U2[e>>2],k=P2(o*P2(U2[(1-u<<4)+Z>>2]-B));A:if(!(k>2]-B)*o),(s=P2(l*P2(U2[4+((1-g<<4)+Z|0)>>2]-s)))>2],B=U2[e+8>>2],d=U2[r+8>>2],(k=s>2]-B)*d))||(c=o>2]-B)))P2(0))))))){if(X2[Q+40>>2]){if((0|A)<(0|_)){if((0|(_=X2[b+4>>2]))<(0|(u=_<<1))){if((0|u)>X2[b+8>>2]){if(w=0,_&&(X2[6258]=X2[6258]+1,(A=L2(19+(_<<3)|0))&&(X2[(w=A+19&-16)-4>>2]=A),!((0|_)<1)))for(g=0,A=_;;)if(X2[g+w>>2]=X2[X2[b+12>>2]+g>>2],g=g+4|0,!(A=A-1|0))break;(A=X2[b+12>>2])&&J2[b+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2])),X2[b+12>>2]=w,S2[b+16|0]=1,X2[b+8>>2]=u}if(((X2[(g=_<<2)+w>>2]=0)|u)!=(_+1|0))for(A=_-1|0,g=g+4|0;;)if(g=g+4|(X2[X2[b+12>>2]+g>>2]=0),!(A=A-1|0))break;w=X2[b+12>>2]}A=(X2[b+4>>2]=u)-2|0}X2[w+v>>2]=X2[Q+36>>2],X2[X2[b+12>>2]+(E<<2)>>2]=X2[Q+40>>2],_=E+1|0;break A}N2[X2[X2[t>>2]+12>>2]](t,Q)}if(!(E=_))break}}K2=32+Z|0}function d4(A){return X2[(A|=0)+96>>2]}function Z4(A){}function _4(A,e){A=X2[(A|=0)+4>>2],N2[X2[X2[A>>2]+8>>2]](A,X2[(e|=0)+36>>2])}function g4(A,e){var r,f,i,a,n,b,t,o,c,k,u,s,l,B=0,v=0,d=0,Z=(P2(0),P2(0));P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);K2=l=K2-16|0,X2[A+372>>2]=0,X2[A+376>>2]=0,X2[A+252>>2]=2,X2[A+604>>2]=1065353216,X2[A+608>>2]=1065353216,X2[A+408>>2]=1065353216,X2[A+412>>2]=1065353216,X2[A+472>>2]=0,X2[A+476>>2]=0,X2[(B=A+380|0)>>2]=0,X2[B+4>>2]=0,X2[(B=A+388|0)>>2]=0,X2[B+4>>2]=0,X2[(B=A+396|0)>>2]=0,X2[B+4>>2]=0,X2[(B=A+612|0)>>2]=1065353216,X2[B+4>>2]=0,X2[(B=A+420|0)>>2]=0,X2[B+4>>2]=0,X2[A+416>>2]=1065353216,X2[(B=A+428|0)>>2]=0,X2[B+4>>2]=0,X2[(B=A+436|0)>>2]=0,X2[B+4>>2]=0,X2[(B=A+444|0)>>2]=0,X2[B+4>>2]=0,X2[A+452>>2]=0,X2[(B=A+480|0)>>2]=0,X2[B+4>>2]=0,X2[(B=A+488|0)>>2]=0,X2[B+4>>2]=0,X2[(B=A+496|0)>>2]=0,X2[B+4>>2]=0,Z=U2[e+96>>2],r=U2[e+92>>2],U2[12+l>>2]=r,U2[8+l>>2]=Z,X2[4+l>>2]=0,X2[l>>2]=1065353216,U2[A+504>>2]=U2[(rP2(1)?l:12+l|0)>>2],X2[4+l>>2]=0,X2[l>>2]=1065353216,U2[A+508>>2]=U2[(ZP2(1)?l:8+l|0)>>2],X2[A+668>>2]=0,X2[A+672>>2]=0,B=X2[e+120>>2],X2[A+532>>2]=X2[e+116>>2],X2[A+536>>2]=B,v=X2[e+4>>2],X2[A+540>>2]=v,S2[A+512|0]=J2[e+124|0],B=X2[e+132>>2],X2[A+516>>2]=X2[e+128>>2],X2[A+520>>2]=B,B=X2[e+140>>2],X2[A+524>>2]=X2[e+136>>2],X2[A+528>>2]=B,v?N2[X2[X2[v>>2]+8>>2]](v,B=A+4|0):(B=X2[e+12>>2],X2[A+4>>2]=X2[e+8>>2],X2[A+8>>2]=B,d=X2[(v=e+16|0)+4>>2],X2[(B=A+12|0)>>2]=X2[v>>2],X2[B+4>>2]=d,d=X2[(v=e+32|0)+4>>2],X2[(B=A+28|0)>>2]=X2[v>>2],X2[B+4>>2]=d,d=X2[(v=e+24|0)+4>>2],X2[(B=A+20|0)>>2]=X2[v>>2],X2[B+4>>2]=d,d=X2[(v=e+40|0)+4>>2],X2[(B=A+36|0)>>2]=X2[v>>2],X2[B+4>>2]=d,d=X2[(v=e+48|0)+4>>2],X2[(B=A+44|0)>>2]=X2[v>>2],X2[B+4>>2]=d,d=X2[(v=e- -64|0)+4>>2],X2[(B=A+60|0)>>2]=X2[v>>2],X2[B+4>>2]=d,d=X2[(v=e+56|0)+4>>2],X2[(B=A+52|0)>>2]=X2[v>>2],X2[B+4>>2]=d,B=A+4|0),X2[A+132>>2]=0,X2[A+136>>2]=0,v=X2[B+4>>2],X2[A+68>>2]=X2[B>>2],X2[A+72>>2]=v,X2[(v=A+156|0)>>2]=0,X2[v+4>>2]=0,X2[(v=A+148|0)>>2]=0,X2[v+4>>2]=0,X2[(v=A+140|0)>>2]=0,X2[v+4>>2]=0,s=X2[(d=A+20|0)+4>>2],X2[(v=A+84|0)>>2]=X2[d>>2],X2[v+4>>2]=s,d=X2[(B=B+8|0)+4>>2],X2[(v=A+76|0)>>2]=X2[B>>2],X2[v+4>>2]=d,d=X2[(v=A+28|0)+4>>2],X2[(B=A+92|0)>>2]=X2[v>>2],X2[B+4>>2]=d,d=X2[(v=A+36|0)+4>>2],X2[(B=A+100|0)>>2]=X2[v>>2],X2[B+4>>2]=d,d=X2[(v=A+44|0)+4>>2],X2[(B=A+108|0)>>2]=X2[v>>2],X2[B+4>>2]=d,d=X2[(v=A+52|0)+4>>2],X2[(B=A+116|0)>>2]=X2[v>>2],X2[B+4>>2]=d,d=X2[(v=A+60|0)+4>>2],X2[(B=A+124|0)>>2]=X2[v>>2],X2[B+4>>2]=d,U2[A+228>>2]=U2[e+100>>2],U2[A+236>>2]=U2[e+104>>2],U2[A+240>>2]=U2[e+108>>2],U2[A+232>>2]=U2[e+112>>2],N2[X2[X2[A>>2]+8>>2]](A,X2[e+72>>2]),B=X2[6626],X2[A+568>>2]=B,X2[6626]=B+1,Z=P2(0),B=X2[A+204>>2],(r=U2[e>>2])==P2(0)?X2[A+204>>2]=1|B:(X2[A+204>>2]=-2&B,Z=P2(P2(1)/r)),U2[A+404>>2]=Z,X2[A+436>>2]=0,U2[A+424>>2]=r*U2[A+440>>2],U2[A+432>>2]=r*U2[A+448>>2],U2[A+428>>2]=r*U2[A+444>>2],r=U2[e+84>>2],s=U2[e+80>>2],v=U2[e+76>>2],X2[A+468>>2]=0,d=v!=P2(0)?P2(P2(1)/v):P2(0),U2[A+456>>2]=d,B=s!=P2(0)?P2(P2(1)/s):P2(0),U2[A+460>>2]=B,o=r!=P2(0)?P2(P2(1)/r):P2(0),U2[A+464>>2]=o,X2[A+368>>2]=0,X2[A+352>>2]=0,X2[A+336>>2]=0,r=U2[A+44>>2],s=U2[A+36>>2],v=U2[A+40>>2],c=U2[A+28>>2],k=U2[A+20>>2],u=U2[A+24>>2],n=U2[A+12>>2],b=U2[A+8>>2],t=U2[A+4>>2],X2[A+564>>2]=8,f=P2(d*t),i=P2(B*b),a=P2(o*n),U2[A+324>>2]=P2(P2(t*f)+P2(b*i))+P2(n*a),U2[A+328>>2]=P2(P2(f*k)+P2(i*u))+P2(a*c),U2[A+332>>2]=P2(P2(f*s)+P2(i*v))+P2(a*r),f=P2(d*k),i=P2(B*u),a=P2(o*c),U2[A+340>>2]=P2(P2(t*f)+P2(b*i))+P2(n*a),U2[A+344>>2]=P2(P2(k*f)+P2(u*i))+P2(c*a),U2[A+348>>2]=P2(P2(f*s)+P2(i*v))+P2(a*r),f=t,t=P2(d*s),i=b,b=P2(B*v),a=n,n=P2(o*r),U2[A+356>>2]=P2(P2(f*t)+P2(i*b))+P2(a*n),U2[A+360>>2]=P2(P2(k*t)+P2(u*b))+P2(c*n),U2[A+364>>2]=P2(P2(s*t)+P2(v*b))+P2(r*n),X2[(e=A+596|0)>>2]=0,X2[e+4>>2]=0,X2[(e=A+588|0)>>2]=0,X2[e+4>>2]=0,X2[(e=A+580|0)>>2]=0,X2[e+4>>2]=0,X2[A+572>>2]=0,X2[A+576>>2]=0,r=U2[A+408>>2],s=U2[A+412>>2],U2[A+628>>2]=Z*U2[A+416>>2],U2[A+624>>2]=Z*s,U2[A+620>>2]=Z*r,X2[A+664>>2]=0,X2[(e=A+656|0)>>2]=0,X2[e+4>>2]=0,X2[(e=A+648|0)>>2]=0,X2[e+4>>2]=0,X2[(e=A+640|0)>>2]=0,X2[e+4>>2]=0,X2[(A=A+632|0)>>2]=0,X2[A+4>>2]=0,K2=16+l|0}function E4(A,e,r,f){var i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C,h=P2(0),F=P2(0);P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);K2=C=K2+-64|0,u=U2[e+24>>2],s=U2[e+20>>2],l=U2[e+40>>2],B=U2[e+36>>2],n=U2[A+40>>2],b=U2[A+20>>2],t=U2[A+36>>2],o=U2[A+24>>2],v=U2[e+8>>2],d=U2[e>>2],Z=U2[e+4>>2],_=U2[e+16>>2],g=U2[e+32>>2],F=U2[A+8>>2],i=U2[A+4>>2],k=U2[A+32>>2],c=U2[A+16>>2],a=U2[A>>2],X2[60+C>>2]=0,X2[44+C>>2]=0,Q=P2(P2(b*n)-P2(o*t)),w=P2(P2(o*k)-P2(n*c)),G=P2(P2(t*c)-P2(b*k)),h=P2(P2(1)/P2(P2(P2(a*Q)+P2(i*w))+P2(F*G))),E=P2(P2(P2(o*i)-P2(b*F))*h),o=P2(P2(P2(c*F)-P2(o*a))*h),b=P2(P2(P2(b*a)-P2(c*i))*h),U2[56+C>>2]=P2(P2(g*E)+P2(B*o))+P2(l*b),c=P2(P2(P2(t*F)-P2(n*i))*h),F=P2(P2(P2(n*a)-P2(k*F))*h),i=P2(P2(P2(k*i)-P2(t*a))*h),U2[52+C>>2]=P2(P2(g*c)+P2(B*F))+P2(l*i),U2[40+C>>2]=P2(P2(E*_)+P2(o*s))+P2(b*u),U2[36+C>>2]=P2(P2(c*_)+P2(F*s))+P2(i*u),X2[28+C>>2]=0,a=P2(Q*h),n=P2(w*h),h=P2(G*h),U2[48+C>>2]=P2(P2(g*a)+P2(B*n))+P2(l*h),U2[32+C>>2]=P2(P2(a*_)+P2(n*s))+P2(h*u),U2[24+C>>2]=P2(v*b)+P2(P2(d*E)+P2(Z*o)),U2[20+C>>2]=P2(v*i)+P2(P2(d*c)+P2(Z*F)),U2[16+C>>2]=P2(h*v)+P2(P2(d*a)+P2(Z*n)),Q4(16+C|0,C),a=U2[C>>2],n=U2[4+C>>2],b=U2[8+C>>2],h=U2[12+C>>2],i=P2(P2(1)/P2(O2(P2(P2(P2(P2(a*a)+P2(n*n))+P2(b*b))+P2(h*h))))),m(F=P2(m2(P2(z2(P2(h*i),P2(-1))),P2(1))));A:if(1065353216<=(A=2147483647&(e=S[2]))>>>0)h=P2((0|e)<0?3.141592502593994:0),1065353216!=(0|A)&&(h=P2(P2(0)/P2(F-F)));else e:{if(A>>>0<=1056964607){if(h=P2(1.570796251296997),A>>>0<847249409)break e;h=P2(F*F),h=P2(P2(P2(P2(7.549789415861596e-8)-P2(P2(P2(h*P2(P2(h*P2(P2(h*P2(-.008656363002955914))+P2(-.04274342209100723)))+P2(.16666586697101593)))/P2(P2(h*P2(-.7066296339035034))+P2(1)))*F))-F)+P2(1.570796251296997));break A}if((0|e)<=-1){h=P2(P2(F+P2(1))*P2(.5)),F=P2(O2(h)),h=P2(P2(1.570796251296997)-P2(F+P2(P2(F*P2(P2(h*P2(P2(h*P2(P2(h*P2(-.008656363002955914))+P2(-.04274342209100723)))+P2(.16666586697101593)))/P2(P2(h*P2(-.7066296339035034))+P2(1))))+P2(-7.549789415861596e-8)))),h=P2(h+h);break A}h=P2(P2(P2(1)-F)*P2(.5)),z(2,-4096&(m(t=P2(O2(h))),S[2])),F=N(),h=P2(P2(P2(t*P2(P2(h*P2(P2(h*P2(P2(h*P2(-.008656363002955914))+P2(-.04274342209100723)))+P2(.16666586697101593)))/P2(P2(h*P2(-.7066296339035034))+P2(1))))+P2(P2(h-P2(F*F))/P2(t+F)))+F),h=P2(h+h)}U2[f>>2]=h+h,X2[r+12>>2]=0,h=P2(a*i),F=P2(n*i),i=P2(b*i),(a=P2(P2(P2(h*h)+P2(F*F))+P2(i*i)))>2]=0,X2[r+12>>2]=0,X2[r>>2]=1065353216,X2[r+4>>2]=0):(n=i,i=P2(P2(1)/P2(O2(a))),U2[r+8>>2]=n*i,U2[r+4>>2]=F*i,U2[r>>2]=h*i),K2=C+64|0}function Q4(A,e){var r,f,i,a,n=P2(0),b=P2(0),t=0,o=P2(0),c=P2(0),k=K2-16|0,n=U2[A>>2],o=U2[A+20>>2],c=U2[A+40>>2];n=(b=P2(P2(n+o)+c))>P2(0)?(b=P2(O2(P2(b+P2(1)))),n=P2(P2(.5)/b),o=P2(n*P2(U2[A+16>>2]-U2[A+4>>2])),c=P2(n*P2(U2[A+8>>2]-U2[A+32>>2])),b=P2(b*P2(.5)),P2(n*P2(U2[A+36>>2]-U2[A+24>>2]))):(f=(r=n>>0)%3|0)<<4)+A|0,r=A+((A=(2+r>>>0)%3|0)<<4)|0,A<<=2,n=P2(O2(P2(P2(P2(U2[i+f>>2]-U2[a+(t<<=2)>>2])-U2[r+A>>2])+P2(1)))),U2[(f|k)>>2]=n*P2(.5),n=P2(P2(.5)/n),U2[12+k>>2]=P2(U2[r+t>>2]-U2[A+a>>2])*n,U2[(k|t)>>2]=n*P2(U2[f+a>>2]+U2[t+i>>2]),U2[(A|k)>>2]=n*P2(U2[r+f>>2]+U2[A+i>>2]),b=U2[12+k>>2],o=U2[8+k>>2],c=U2[4+k>>2],U2[k>>2]),U2[e+12>>2]=b,U2[e+8>>2]=o,U2[e+4>>2]=c,U2[e>>2]=n}function w4(A,e){var r,f,i,a,n,b,t,o,c,k=0,u=0,s=0,l=0,B=0;P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);2&J2[A+204|0]?(k=X2[A+8>>2],X2[A+68>>2]=X2[A+4>>2],X2[A+72>>2]=k,s=X2[(u=A+12|0)+4>>2],X2[(k=A+76|0)>>2]=X2[u>>2],X2[k+4>>2]=s,s=X2[(u=A+20|0)+4>>2],X2[(k=A+84|0)>>2]=X2[u>>2],X2[k+4>>2]=s,s=X2[(u=A+28|0)+4>>2],X2[(k=A+92|0)>>2]=X2[u>>2],X2[k+4>>2]=s,s=X2[(u=A+36|0)+4>>2],X2[(k=A+100|0)>>2]=X2[u>>2],X2[k+4>>2]=s,s=X2[(u=A+44|0)+4>>2],X2[(k=A+108|0)>>2]=X2[u>>2],X2[k+4>>2]=s,s=X2[(u=A+52|0)+4>>2],X2[(k=A+116|0)>>2]=X2[u>>2],X2[k+4>>2]=s,s=X2[(u=A+60|0)+4>>2],X2[(k=A+124|0)>>2]=X2[u>>2],X2[k+4>>2]=s):(k=X2[e+4>>2],X2[A+68>>2]=X2[e>>2],X2[A+72>>2]=k,s=X2[(u=e+8|0)+4>>2],X2[(k=A+76|0)>>2]=X2[u>>2],X2[k+4>>2]=s,s=X2[(u=e+24|0)+4>>2],X2[(k=A+92|0)>>2]=X2[u>>2],X2[k+4>>2]=s,u=X2[e+20>>2],X2[(k=A+84|0)>>2]=X2[e+16>>2],X2[k+4>>2]=u,u=X2[e+36>>2],X2[(k=A+100|0)>>2]=X2[e+32>>2],X2[k+4>>2]=u,s=X2[(u=e+40|0)+4>>2],X2[(k=A+108|0)>>2]=X2[u>>2],X2[k+4>>2]=s,s=X2[(u=e+56|0)+4>>2],X2[(k=A+124|0)>>2]=X2[u>>2],X2[k+4>>2]=s,u=X2[e+52>>2],X2[(k=A+116|0)>>2]=X2[e+48>>2],X2[k+4>>2]=u),k=X2[A+392>>2],X2[A+148>>2]=X2[A+388>>2],X2[A+152>>2]=k,k=X2[A+376>>2],X2[A+132>>2]=X2[A+372>>2],X2[A+136>>2]=k,s=X2[(u=A+396|0)+4>>2],X2[(k=A+156|0)>>2]=X2[u>>2],X2[k+4>>2]=s,s=X2[(u=A+380|0)+4>>2],X2[(k=A+140|0)>>2]=X2[u>>2],X2[k+4>>2]=s,a=X2[(s=e+8|0)+4>>2],X2[(k=A+12|0)>>2]=X2[s>>2],X2[k+4>>2]=a,u=X2[e+4>>2],X2[A+4>>2]=X2[e>>2],X2[A+8>>2]=u,B=X2[4+(a=e+24|0)>>2],X2[(u=A+28|0)>>2]=X2[a>>2],X2[u+4>>2]=B,B=X2[e+20>>2],X2[(s=A+20|0)>>2]=X2[e+16>>2],X2[s+4>>2]=B,n=X2[4+(l=e+40|0)>>2],X2[(B=a=A+44|0)>>2]=X2[l>>2],X2[4+B>>2]=n,n=X2[e+36>>2],X2[(l=B=A+36|0)>>2]=X2[e+32>>2],X2[4+l>>2]=n,c=X2[4+(n=e+56|0)>>2],X2[(l=A+60|0)>>2]=X2[n>>2],X2[4+l>>2]=c,n=X2[e+52>>2],X2[(l=A+52|0)>>2]=X2[e+48>>2],X2[4+l>>2]=n,c=U2[A+8>>2],e=U2[k>>2],l=U2[u>>2],n=U2[s>>2],k=U2[A+24>>2],u=U2[a>>2],s=U2[A+464>>2],a=U2[B>>2],B=U2[A+40>>2],t=U2[A+460>>2],b=U2[A+4>>2],o=U2[A+456>>2],X2[A+368>>2]=0,X2[A+352>>2]=0,X2[A+336>>2]=0,r=P2(o*a),f=P2(t*B),i=P2(s*u),U2[A+364>>2]=P2(P2(a*r)+P2(B*f))+P2(u*i),U2[A+360>>2]=P2(P2(n*r)+P2(k*f))+P2(l*i),U2[A+356>>2]=P2(P2(b*r)+P2(c*f))+P2(e*i),r=P2(o*n),f=P2(t*k),i=P2(s*l),U2[A+348>>2]=P2(P2(a*r)+P2(B*f))+P2(u*i),U2[A+344>>2]=P2(P2(n*r)+P2(k*f))+P2(l*i),U2[A+340>>2]=P2(P2(b*r)+P2(c*f))+P2(e*i),r=a,a=P2(b*o),f=B,B=P2(c*t),i=u,u=P2(e*s),U2[A+332>>2]=P2(P2(r*a)+P2(f*B))+P2(i*u),U2[A+328>>2]=P2(P2(a*n)+P2(B*k))+P2(u*l),U2[A+324>>2]=P2(P2(b*a)+P2(c*B))+P2(e*u)}function G4(A,e){var r=0,f=0,i=0,a=0,n=0;A:{f=X2[A+548>>2];e:if(!((0|f)<1)){for(i=X2[A+556>>2],r=f;;){if(X2[i>>2]==(0|e))break;if(i=i+4|0,!(r=r-1|0))break e}if(r)break A}if(X2[A+552>>2]==(0|f)&&!((0|(a=f?f<<1:1))<=(0|f))){if(a&&(X2[6258]=X2[6258]+1,(r=L2(19+(a<<2)|0))&&(X2[(n=r+19&-16)-4>>2]=r)),1<=(0|f))for(i=0,r=f;;)if(X2[i+n>>2]=X2[X2[A+556>>2]+i>>2],i=i+4|0,!(r=r-1|0))break;(r=X2[A+556>>2])&&J2[A+560|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2]),f=X2[A+548>>2]),X2[A+556>>2]=n,X2[A+552>>2]=a,S2[A+560|0]=1}if(X2[X2[A+556>>2]+(f<<2)>>2]=e,X2[A+548>>2]=f+1,r=X2[e+32>>2],(0|(n=X2[e+28>>2]))==(0|A)){if((0|(e=X2[A+288>>2]))==X2[A+292>>2]&&!((0|(a=e?e<<1:1))<=(0|e))){if(n=0,a&&(X2[6258]=X2[6258]+1,(f=L2(19+(a<<2)|0))&&(X2[(n=f+19&-16)-4>>2]=f)),1<=(0|e))for(i=0,f=e;;)if(X2[i+n>>2]=X2[X2[A+296>>2]+i>>2],i=i+4|0,!(f=f-1|0))break;(f=X2[A+296>>2])&&J2[A+300|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2]),e=X2[A+288>>2]),X2[A+296>>2]=n,X2[A+292>>2]=a,S2[A+300|0]=1}}else{if((0|(e=X2[r+288>>2]))==X2[r+292>>2]&&!((0|(a=e?e<<1:1))<=(0|e))){if(f=0,a&&(X2[6258]=X2[6258]+1,(A=L2(19+(a<<2)|0))&&(X2[(f=A+19&-16)-4>>2]=A)),1<=(0|e))for(i=0,A=e;;)if(X2[f+i>>2]=X2[X2[r+296>>2]+i>>2],i=i+4|0,!(A=A-1|0))break;(A=X2[r+296>>2])&&J2[r+300|0]&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2]),e=X2[r+288>>2]),X2[r+296>>2]=f,X2[r+292>>2]=a,S2[r+300|0]=1}A=r,r=n}X2[A+288>>2]=e+1,X2[A+280>>2]=(-1^e)>>>31,X2[X2[A+296>>2]+(e<<2)>>2]=r}}function C4(A,e){var r=0,f=0,i=0,a=0;A:if(!((0|(a=X2[A+548>>2]))<1)){for(f=i=X2[A+556>>2];;){if(X2[f>>2]==(0|e))break;if(f=f+4|0,(0|a)==(0|(r=r+1|0)))break A}if(!((0|a)<=(0|r))){r=0,f=i;e:{for(;;){if(X2[f>>2]==(0|e))break;if(f=f+4|0,(0|a)==(0|(r=r+1|0)))break e}(0|a)<=(0|r)||(r=i,X2[f>>2]=X2[r+(i=(f=a-1|0)<<2)>>2],X2[A+548>>2]=f,X2[i+X2[A+556>>2]>>2]=e)}if(a=X2[e+32>>2],(0|(i=X2[e+28>>2]))==(0|A)){e=X2[A+288>>2];e:if(!((0|e)<1)){for(r=0,f=i=X2[A+296>>2];;){if(X2[f>>2]==(0|a))break;if(f=f+4|0,(0|(r=r+1|0))==(0|e))break e}(0|e)<=(0|r)||(r=i,X2[f>>2]=X2[r+(i=(e=e-1|0)<<2)>>2],X2[A+288>>2]=e,X2[i+X2[A+296>>2]>>2]=a)}return void(X2[A+280>>2]=0<(0|e))}e=X2[a+288>>2];e:if(!((0|e)<1)){for(r=0,f=A=X2[a+296>>2];;){if((0|i)==X2[f>>2])break;if(f=f+4|0,(0|(r=r+1|0))==(0|e))break e}(0|e)<=(0|r)||(r=A,X2[f>>2]=X2[r+(A=(e=e-1|0)<<2)>>2],X2[a+288>>2]=e,X2[A+X2[a+296>>2]>>2]=i)}X2[a+280>>2]=0<(0|e)}}}function h4(A){var e;return X2[(A|=0)>>2]=19888,(e=X2[A+204>>2])&&J2[A+208|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+204>>2]=0,S2[A+208|0]=1,X2[(e=A+196|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+176>>2])&&J2[A+180|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+176>>2]=0,S2[A+180|0]=1,X2[(e=A+168|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+156>>2])&&J2[A+160|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+156>>2]=0,S2[A+160|0]=1,X2[(e=A+148|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+136>>2])&&J2[A+140|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+136>>2]=0,S2[A+140|0]=1,X2[(e=A+128|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+116>>2])&&J2[A+120|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+116>>2]=0,S2[A+120|0]=1,X2[(e=A+108|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+96>>2])&&J2[A+100|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+96>>2]=0,S2[A+100|0]=1,X2[(e=A+88|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+76>>2])&&J2[A+80|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+76>>2]=0,S2[A+80|0]=1,X2[(e=A+68|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+56>>2])&&J2[A+60|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+56>>2]=0,S2[A+60|0]=1,X2[(e=A+48|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+36>>2])&&J2[A+40|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+36>>2]=0,S2[A+40|0]=1,X2[(e=A+28|0)>>2]=0,X2[4+e>>2]=0,(e=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+16>>2]=0,S2[A+20|0]=1,X2[(e=A+8|0)>>2]=0,(X2[4+e>>2]=0)|A}function F4(A,e,r){var f,i,a,n,b,t,o,c,k,u,s=0,l=(P2(0),0);P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);return K2=u=K2-256|0,-1<(0|(l=X2[e+212>>2]))||(2&(s=X2[e+252>>2])&&(2&J2[(s=s<<30>>31&e)+204|0]||U2[s+404>>2]!=P2(0))?(l=X2[A+8>>2],v2(8+u|0,0,244),A=R4(A+4|0,8+u|0),s=X2[e+252>>2],X2[(o=A+88|0)>>2]=0,X2[4+o>>2]=0,X2[(o=A+80|0)>>2]=0,X2[4+o>>2]=0,X2[(o=A+72|0)>>2]=0,X2[4+o>>2]=0,X2[A+64>>2]=0,X2[A+68>>2]=0,X2[A+144>>2]=0,X2[A+148>>2]=0,X2[(o=A+152|0)>>2]=0,X2[4+o>>2]=0,X2[(o=A+160|0)>>2]=0,X2[4+o>>2]=0,X2[(o=A+168|0)>>2]=0,X2[4+o>>2]=0,2&s?(o=X2[(s=s<<30>>31&e)+8>>2],X2[A>>2]=X2[s+4>>2],X2[A+4>>2]=o,c=X2[4+(t=s+12|0)>>2],X2[(o=A+8|0)>>2]=X2[t>>2],X2[4+o>>2]=c,c=X2[4+(t=s+28|0)>>2],X2[(o=A+24|0)>>2]=X2[t>>2],X2[4+o>>2]=c,t=X2[4+(o=s+20|0)>>2],X2[A+16>>2]=X2[o>>2],X2[A+20>>2]=t,c=X2[4+(t=s+44|0)>>2],X2[(o=A+40|0)>>2]=X2[t>>2],X2[4+o>>2]=c,t=X2[4+(o=s+36|0)>>2],X2[A+32>>2]=X2[o>>2],X2[A+36>>2]=t,t=X2[4+(o=s+52|0)>>2],X2[A+48>>2]=X2[o>>2],X2[A+52>>2]=t,c=X2[4+(t=s+60|0)>>2],X2[(o=A+56|0)>>2]=X2[t>>2],X2[4+o>>2]=c,i=U2[s+412>>2],a=U2[(o=s+416|0)>>2],n=U2[s+408>>2],f=U2[s+404>>2],X2[A+140>>2]=0,U2[A+136>>2]=f*a,U2[A+132>>2]=f*i,U2[A+128>>2]=f*n,X2[A+240>>2]=s,b=X2[4+(c=s+612|0)>>2],X2[(t=A+104|0)>>2]=X2[c>>2],X2[4+t>>2]=b,t=X2[s+608>>2],X2[A+96>>2]=X2[s+604>>2],X2[A+100>>2]=t,c=X2[4+o>>2],X2[(t=A+120|0)>>2]=X2[o>>2],X2[4+t>>2]=c,o=X2[s+412>>2],X2[A+112>>2]=X2[s+408>>2],X2[A+116>>2]=o,c=X2[4+(t=s+380|0)>>2],X2[(o=A+184|0)>>2]=X2[t>>2],X2[4+o>>2]=c,o=X2[s+376>>2],X2[A+176>>2]=X2[s+372>>2],X2[A+180>>2]=o,o=X2[s+392>>2],X2[A+192>>2]=X2[s+388>>2],X2[A+196>>2]=o,c=X2[4+(t=s+396|0)>>2],X2[(o=A+200|0)>>2]=X2[t>>2],X2[4+o>>2]=c,i=U2[s+476>>2],a=U2[s+480>>2],n=U2[s+472>>2],f=U2[s+404>>2],X2[A+220>>2]=0,U2[A+216>>2]=P2(f*a)*r,U2[A+212>>2]=P2(f*i)*r,U2[A+208>>2]=P2(f*n)*r,n=U2[s+340>>2],b=U2[s+356>>2],t=U2[s+328>>2],o=U2[s+344>>2],c=U2[s+360>>2],k=U2[s+324>>2],f=U2[s+488>>2],i=U2[s+492>>2],a=U2[s+496>>2],U2[A+232>>2]=P2(P2(P2(f*U2[s+332>>2])+P2(i*U2[s+348>>2]))+P2(a*U2[s+364>>2]))*r,U2[A+228>>2]=P2(P2(P2(f*t)+P2(i*o))+P2(a*c))*r,U2[A+224>>2]=P2(P2(P2(k*f)+P2(n*i))+P2(b*a))*r):(X2[A+4>>2]=0,X2[A+8>>2]=0,X2[A>>2]=1065353216,X2[A+240>>2]=0,X2[A+128>>2]=0,X2[A+132>>2]=0,X2[A+112>>2]=1065353216,X2[A+116>>2]=1065353216,X2[A+96>>2]=1065353216,X2[A+100>>2]=1065353216,X2[A+176>>2]=0,X2[A+180>>2]=0,X2[(s=A+12|0)>>2]=0,X2[s+4>>2]=0,X2[(s=A+24|0)>>2]=0,X2[s+4>>2]=0,X2[A+20>>2]=1065353216,X2[(s=A+32|0)>>2]=0,X2[s+4>>2]=0,X2[(s=A+44|0)>>2]=0,X2[s+4>>2]=0,X2[A+40>>2]=1065353216,X2[(s=A+52|0)>>2]=0,X2[s+4>>2]=0,X2[A+60>>2]=0,X2[(s=A+136|0)>>2]=0,X2[s+4>>2]=0,X2[(s=A+120|0)>>2]=1065353216,X2[s+4>>2]=0,X2[(s=A+104|0)>>2]=1065353216,X2[s+4>>2]=0,X2[A+232>>2]=0,X2[(s=A+224|0)>>2]=0,X2[s+4>>2]=0,X2[(s=A+216|0)>>2]=0,X2[s+4>>2]=0,X2[(s=A+208|0)>>2]=0,X2[s+4>>2]=0,X2[(s=A+200|0)>>2]=0,X2[s+4>>2]=0,X2[(s=A+192|0)>>2]=0,X2[s+4>>2]=0,X2[(s=A+184|0)>>2]=0,X2[s+4>>2]=0),X2[A+236>>2]=0,X2[e+212>>2]=l):-1<(0|(l=X2[A+188>>2]))||(X2[A+188>>2]=X2[A+8>>2],v2(8+u|0,0,244),e=R4(A+4|0,8+u|0),X2[(s=e+88|0)>>2]=0,X2[s+4>>2]=0,X2[(s=e+80|0)>>2]=0,X2[s+4>>2]=0,X2[(s=e+72|0)>>2]=0,X2[s+4>>2]=0,X2[e+64>>2]=0,X2[e+68>>2]=0,X2[e+144>>2]=0,X2[e+148>>2]=0,X2[(s=e+152|0)>>2]=0,X2[s+4>>2]=0,X2[(s=e+160|0)>>2]=0,X2[s+4>>2]=0,X2[(s=e+168|0)>>2]=0,X2[s+4>>2]=0,X2[e+4>>2]=0,X2[e+8>>2]=0,X2[e>>2]=1065353216,X2[(s=e+12|0)>>2]=0,X2[s+4>>2]=0,X2[(s=e+24|0)>>2]=0,X2[s+4>>2]=0,X2[e+20>>2]=1065353216,X2[(s=e+32|0)>>2]=0,X2[s+4>>2]=0,X2[(s=e+44|0)>>2]=0,X2[s+4>>2]=0,X2[e+40>>2]=1065353216,X2[(s=e+52|0)>>2]=0,X2[s+4>>2]=0,X2[e+60>>2]=0,X2[(s=e+136|0)>>2]=0,X2[s+4>>2]=0,X2[e+128>>2]=0,X2[e+132>>2]=0,X2[(s=e+120|0)>>2]=1065353216,X2[s+4>>2]=0,X2[e+112>>2]=1065353216,X2[e+116>>2]=1065353216,X2[(s=e+104|0)>>2]=1065353216,X2[s+4>>2]=0,X2[e+96>>2]=1065353216,X2[e+100>>2]=1065353216,X2[(s=e+232|0)>>2]=0,X2[s+4>>2]=0,X2[(s=e+224|0)>>2]=0,X2[s+4>>2]=0,X2[(s=e+216|0)>>2]=0,X2[s+4>>2]=0,X2[(s=e+208|0)>>2]=0,X2[s+4>>2]=0,X2[(s=e+200|0)>>2]=0,X2[s+4>>2]=0,X2[(s=e+192|0)>>2]=0,X2[s+4>>2]=0,X2[(s=e+184|0)>>2]=0,X2[s+4>>2]=0,X2[e+176>>2]=0,X2[e+180>>2]=0,X2[e+240>>2]=0,l=X2[A+188>>2])),K2=256+u|0,l}function Y4(A,e,r,f,i,a){var n,b,t,o,c,k=0,u=0,s=P2(0),l=P2(0),B=P2(0),v=P2(0),d=P2(0),Z=0,_=(P2(0),P2(0),0),g=P2(0),E=P2(0),Q=P2(0),w=P2(0),G=P2(0),C=P2(0),h=(P2(0),P2(0),P2(0)),F=P2(0),Y=P2(0),m=P2(0),k=c=X2[A+88>>2];if((0|k)==X2[A+92>>2]&&!((0|(Z=(k=c)?k<<1:1))<=(0|k))){if(Z&&(X2[6258]=X2[6258]+1,(k=L2(H2(Z,152)+19|0))&&(X2[(_=k+19&-16)-4>>2]=k)),1<=(0|c))for(k=0,u=c;;)if($2(k+_|0,X2[A+96>>2]+k|0,152),k=k+152|0,!(u=u-1|0))break;(k=X2[A+96>>2])&&J2[A+100|0]&&(X2[6259]=X2[6259]+1,q2(X2[k-4>>2])),X2[A+96>>2]=_,X2[A+92>>2]=Z,S2[A+100|0]=1,k=X2[A+88>>2]}X2[A+88>>2]=k+1,k=(Z=X2[A+96>>2])+H2(c,152)|0,X2[k+16>>2]=0,X2[k+20>>2]=0,X2[k+48>>2]=-2147483648,X2[k+52>>2]=-2147483648,X2[(u=k+24|0)>>2]=0,X2[u+4>>2]=0,X2[(u=k+56|0)>>2]=-2147483648,X2[u+4>>2]=0,U2[k+104>>2]=a,X2[k+96>>2]=0,X2[k+100>>2]=0,_=X2[A+16>>2],A=X2[240+(_+H2(r,244)|0)>>2],u=X2[240+(_+H2(f,244)|0)>>2],X2[k+132>>2]=0,X2[k+140>>2]=i,X2[k+148>>2]=f,X2[k+144>>2]=r,n=U2[e+8>>2],t=U2[e+4>>2],l=U2[e>>2],X2[k+12>>2]=0,o=P2(-l),U2[k>>2]=o,B=P2(-t),U2[k+4>>2]=B,U2[k+8>>2]=-n,i=k,s=A?(v=P2(P2(P2(P2(U2[A+360>>2]*B)-P2(l*U2[A+356>>2]))-P2(n*U2[A+364>>2]))*U2[A+612>>2]),d=P2(P2(P2(P2(U2[A+344>>2]*B)-P2(l*U2[A+340>>2]))-P2(n*U2[A+348>>2]))*U2[A+608>>2]),P2(P2(P2(P2(U2[A+328>>2]*B)-P2(l*U2[A+324>>2]))-P2(n*U2[A+332>>2]))*U2[A+604>>2])):P2(0),U2[i+64>>2]=s,X2[k+76>>2]=0,U2[k+72>>2]=v,U2[k+68>>2]=d,b=U2[e>>2],v=U2[e+4>>2],d=U2[e+8>>2],U2[k+44>>2]=U2[e+12>>2],U2[k+40>>2]=d,U2[k+36>>2]=v,U2[k+32>>2]=b,i=e=Z+H2(c,152)|0,s=u?(Q=P2(P2(P2(P2(b*U2[u+356>>2])+P2(v*U2[u+360>>2]))+P2(d*U2[u+364>>2]))*U2[u+612>>2]),g=P2(P2(P2(P2(b*U2[u+340>>2])+P2(v*U2[u+344>>2]))+P2(d*U2[u+348>>2]))*U2[u+608>>2]),P2(P2(P2(P2(b*U2[u+324>>2])+P2(v*U2[u+328>>2]))+P2(d*U2[u+332>>2]))*U2[u+604>>2])):P2(0),U2[i+80>>2]=s,X2[e+92>>2]=0,U2[e+88>>2]=Q,U2[e+84>>2]=g,g=P2(0),Q=P2(0),e=Z+H2(c,152)|0,s=A?(w=P2(P2(P2(U2[A+360>>2]*B)-P2(l*U2[A+356>>2]))-P2(n*U2[A+364>>2])),g=P2(P2(P2(U2[A+328>>2]*B)-P2(l*U2[A+324>>2]))-P2(n*U2[A+332>>2])),P2(P2(P2(U2[A+344>>2]*B)-P2(l*U2[A+340>>2]))-P2(n*U2[A+348>>2]))):P2(0),s=P2(P2(P2(P2(s*B)-P2(l*g))-P2(n*w))+P2(0)),E=u?(G=P2(P2(P2(b*U2[u+356>>2])+P2(v*U2[u+360>>2]))+P2(d*U2[u+364>>2])),C=P2(P2(P2(b*U2[u+340>>2])+P2(v*U2[u+344>>2]))+P2(d*U2[u+348>>2])),P2(P2(P2(U2[u+324>>2]*b)+P2(U2[u+328>>2]*v))+P2(U2[u+332>>2]*d))):P2(0),E=P2(P2(1)/P2(s+P2(P2(P2(E*b)+P2(C*v))+P2(G*d)))),U2[e+108>>2]=E,l=P2(0),B=P2(0),g=P2(0),w=P2(0),A&&(A=_+H2(r,244)|0,l=P2(P2(U2[A+176>>2]+U2[A+208>>2])*P2(0)),w=U2[A+192>>2],g=U2[A+200>>2],Q=U2[A+196>>2],h=P2(P2(U2[A+184>>2]+U2[A+216>>2])*P2(0)),B=P2(P2(U2[A+180>>2]+U2[A+212>>2])*P2(0))),C=u?(A=_+H2(f,244)|0,G=P2(P2(U2[A+176>>2]+U2[A+208>>2])*P2(-0)),F=U2[A+192>>2],Y=U2[A+200>>2],m=U2[A+196>>2],s=P2(P2(U2[A+180>>2]+U2[A+212>>2])*P2(-0)),P2(P2(U2[A+184>>2]+U2[A+216>>2])*P2(-0))):(G=P2(-0),s=P2(-0),P2(-0)),A=Z+H2(c,152)|0,U2[A+124>>2]=a,U2[A+120>>2]=-a,X2[A+116>>2]=0,U2[A+112>>2]=E*P2(P2(0)-P2(P2(P2(P2(l+B)+h)+P2(P2(P2(w*o)-P2(t*Q))-P2(n*g)))+P2(P2(P2(G+s)+C)+P2(P2(d*Y)+P2(P2(v*m)+P2(b*F))))))}function m4(A,e,x,y,r,f,i,a,n,V,p,M){var b,t,o,c,k=0,u=0,s=P2(0),l=P2(0),B=P2(0),v=P2(0),d=P2(0),Z=P2(0),_=P2(0),g=P2(0),E=P2(0),Q=0,w=0,G=P2(0),C=P2(0),h=P2(0),F=P2(0),Y=P2(0),m=P2(0),N=P2(0),R=P2(0),D=P2(0),T=P2(0),W=P2(0),I=(P2(0),P2(0)),S=P2(0),X=P2(0),J=P2(0),U=P2(0),k=(P2(0),P2(0),c=X2[A+68>>2]);if((0|k)==X2[A+72>>2]&&!((0|(Q=(k=c)?k<<1:1))<=(0|k))){if(Q&&(X2[6258]=X2[6258]+1,(k=L2(H2(Q,152)+19|0))&&(X2[(u=k+19&-16)-4>>2]=k)),1<=(0|c))for(k=0,w=c;;)if($2(k+u|0,X2[A+76>>2]+k|0,152),k=k+152|0,!(w=w-1|0))break;(k=X2[A+76>>2])&&J2[A+80|0]&&(X2[6259]=X2[6259]+1,q2(X2[k-4>>2])),X2[A+76>>2]=u,X2[A+72>>2]=Q,S2[A+80|0]=1,k=X2[A+68>>2]}X2[A+68>>2]=k+1,k=(w=X2[A+76>>2])+H2(c,152)|0,X2[k+140>>2]=r,X2[k+148>>2]=y,X2[k+144>>2]=x,b=U2[f+84>>2],U2[k+104>>2]=b,X2[k+96>>2]=0,X2[k+100>>2]=0,Q=X2[A+16>>2],A=X2[240+(Q+H2(x,244)|0)>>2],r=X2[240+(Q+H2(y,244)|0)>>2],X2[k+132>>2]=0,A?(u=X2[e+4>>2],X2[k+16>>2]=X2[e>>2],X2[k+20>>2]=u,o=X2[4+(t=e+8|0)>>2],X2[(u=k+24|0)>>2]=X2[t>>2],X2[u+4>>2]=o,B=U2[i>>2],s=U2[i+4>>2],l=U2[i+8>>2],X2[k+12>>2]=0,I=U2[u>>2],S=U2[k+20>>2],m=P2(P2(s*I)-P2(l*S)),U2[k>>2]=m,X=U2[k+16>>2],N=P2(P2(S*B)-P2(s*X)),U2[k+8>>2]=N,R=P2(P2(l*X)-P2(I*B)),U2[k+4>>2]=R,B=U2[A+332>>2],s=U2[A+328>>2],l=U2[A+608>>2],v=U2[A+348>>2],Z=U2[A+340>>2],E=U2[A+344>>2],d=U2[A+612>>2],G=U2[A+364>>2],_=U2[A+356>>2],g=U2[A+360>>2],D=U2[A+604>>2],F=U2[A+324>>2],X2[k+76>>2]=0,d=P2(d*P2(P2(P2(m*_)+P2(R*g))+P2(N*G))),U2[k+72>>2]=d,Z=P2(l*P2(P2(P2(m*Z)+P2(R*E))+P2(N*v))),U2[k+68>>2]=Z,E=P2(D*P2(P2(P2(m*F)+P2(R*s))+P2(N*B))),U2[k+64>>2]=E):(X2[k>>2]=0,X2[k+4>>2]=0,X2[(u=k+8|0)>>2]=0,X2[u+4>>2]=0,X2[(u=k+16|0)>>2]=0,X2[u+4>>2]=0,X2[(u=k+24|0)>>2]=0,X2[u+4>>2]=0,X2[k+64>>2]=0,X2[k+68>>2]=0,X2[(k=k+72|0)>>2]=0,X2[k+4>>2]=0),r?(B=U2[e+4>>2],s=U2[e+8>>2],k=w+H2(c,152)|0,l=U2[e>>2],D=P2(-l),U2[k+48>>2]=D,X2[k+60>>2]=0,J=P2(-s),U2[k+56>>2]=J,U=P2(-B),U2[k+52>>2]=U,v=U2[a+8>>2],g=U2[a+4>>2],_=U2[a>>2],X2[k+44>>2]=0,G=P2(P2(l*g)-P2(B*_)),U2[k+40>>2]=G,_=P2(P2(s*_)-P2(l*v)),U2[k+36>>2]=_,g=P2(P2(B*v)-P2(s*g)),U2[k+32>>2]=g,B=U2[r+332>>2],v=U2[r+328>>2],l=U2[r+608>>2],F=U2[r+348>>2],h=U2[r+340>>2],C=U2[r+344>>2],s=U2[r+612>>2],Y=U2[r+364>>2],T=U2[r+356>>2],W=U2[r+360>>2],t=U2[r+604>>2],o=U2[r+324>>2],X2[k+92>>2]=0,s=P2(s*P2(P2(P2(g*T)+P2(_*W))+P2(G*Y))),U2[k+88>>2]=s,l=P2(l*P2(P2(P2(g*h)+P2(_*C))+P2(G*F))),U2[k+84>>2]=l,v=P2(t*P2(P2(P2(g*o)+P2(_*v))+P2(G*B))),U2[k+80>>2]=v):(k=w+H2(c,152)|0,X2[k+80>>2]=0,X2[k+84>>2]=0,X2[k+32>>2]=0,X2[k+36>>2]=0,X2[(u=k+88|0)>>2]=0,X2[u+4>>2]=0,X2[(u=k+40|0)>>2]=0,X2[u+4>>2]=0,X2[(u=k+48|0)>>2]=0,X2[u+4>>2]=0,X2[(k=k+56|0)>>2]=0,X2[k+4>>2]=0,G=P2(0),_=P2(0),g=P2(0),D=P2(0),s=P2(0),l=P2(0),v=P2(0)),F=P2(0),k=w+H2(c,152)|0,B=n,n=A?(n=U2[i+8>>2],h=U2[i+4>>2],Y=P2(P2(P2(Z*n)-P2(d*h))*U2[e>>2]),C=d,d=U2[i>>2],P2(U2[A+404>>2]+P2(P2(Y+P2(P2(P2(C*d)-P2(n*E))*U2[e+4>>2]))+P2(P2(P2(h*E)-P2(Z*d))*U2[e+8>>2])))):P2(0),s=r?(d=U2[a+4>>2],Z=U2[a+8>>2],E=P2(P2(P2(s*d)-P2(l*Z))*U2[e>>2]),C=s,s=U2[a>>2],P2(U2[r+404>>2]+P2(P2(E+P2(P2(P2(v*Z)-P2(C*s))*U2[e+4>>2]))+P2(P2(P2(l*s)-P2(v*d))*U2[e+8>>2])))):P2(0),B=P2(B/P2(n+s)),U2[k+108>>2]=B,h=P2(0),d=P2(0),Z=P2(0),E=P2(0),s=P2(0),l=P2(0),A&&(A=Q+H2(x,244)|0,Z=P2(U2[A+176>>2]+U2[A+208>>2]),h=P2(U2[A+184>>2]+U2[A+216>>2]),E=U2[A+192>>2],l=U2[A+200>>2],d=P2(U2[A+180>>2]+U2[A+212>>2]),s=U2[A+196>>2]),v=P2(0),n=P2(0),C=P2(0),Y=P2(0),T=P2(0),r&&(A=Q+H2(y,244)|0,F=P2(U2[A+176>>2]+U2[A+208>>2]),v=P2(U2[A+180>>2]+U2[A+212>>2]),T=U2[A+192>>2],C=U2[A+200>>2],Y=U2[A+196>>2],n=P2(U2[A+184>>2]+U2[A+216>>2])),W=P2(0),16&J2[f+128|0]&&(W=P2(B*P2(P2(U2[V+44>>2]*P2(-P2(P2(P2(P2(U2[f+48>>2]-U2[f+32>>2])*U2[e>>2])+P2(P2(U2[f+52>>2]-U2[f+36>>2])*U2[e+4>>2]))+P2(P2(U2[f+56>>2]-U2[f+40>>2])*U2[e+8>>2]))))/U2[V+12>>2]))),A=w+H2(c,152)|0,X2[A+128>>2]=0,U2[A+124>>2]=b,U2[A+120>>2]=-b,U2[A+116>>2]=M,U2[A+112>>2]=P2(B*P2(p-P2(P2(P2(P2(P2(Z*X)+P2(d*S))+P2(h*I))+P2(P2(P2(E*m)+P2(s*R))+P2(l*N)))+P2(P2(P2(P2(F*D)+P2(v*U))+P2(n*J))+P2(P2(P2(T*g)+P2(Y*_))+P2(C*G))))))+W}function N4(A,e,r,f,i,a,n){var b,t,o,c,k,u,s,l=P2(0);P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);K2=s=K2-16|0,l=U2[A+52>>2],b=U2[A+56>>2],t=U2[A+48>>2],X2[n+60>>2]=0,U2[n+48>>2]=t+P2(e*a),U2[n+56>>2]=b+P2(f*a),U2[n+52>>2]=l+P2(r*a),f=U2[i>>2],k=U2[i+4>>2],u=U2[i+8>>2],e=(e=P2(P2(P2(f*f)+P2(k*k))+P2(u*u)))>P2(1.1920928955078125e-7)?P2(O2(e)):P2(0),e=(r=P2(e*a)>P2(.7853981852531433)?P2(P2(.7853981852531433)/a):e)>2],b=U2[12+s>>2],r=c0(P2(P2(r*a)*P2(.5))),t=P2(f*e),o=U2[s>>2],k=P2(k*e),u=P2(u*e),c=U2[8+s>>2],f=P2(P2(P2(P2(b*r)-P2(t*o))-P2(l*k))-P2(u*c)),e=P2(P2(P2(P2(u*b)+P2(r*c))+P2(t*l))-P2(k*o)),a=P2(P2(P2(P2(r*o)+P2(t*b))+P2(k*c))-P2(u*l)),r=P2(P2(P2(u*o)+P2(P2(k*b)+P2(r*l)))-P2(t*c)),(l=P2(P2(f*f)+P2(P2(e*e)+P2(P2(a*a)+P2(r*r)))))>P2(1.1920928955078125e-7)&&(l=P2(P2(1)/P2(O2(l))),f=P2(f*l),e=P2(e*l),r=P2(r*l),a=P2(a*l),l=P2(P2(f*f)+P2(P2(e*e)+P2(P2(r*r)+P2(a*a))))),l>P2(1.1920928955078125e-7)?(X2[n+12>>2]=0,X2[n+44>>2]=0,X2[n+28>>2]=0,b=P2(P2(2)/l),l=P2(e*b),t=P2(r*l),o=P2(a*b),k=P2(f*o),U2[n+36>>2]=t+k,u=P2(a*l),b=P2(r*b),c=P2(f*b),U2[n+32>>2]=u-c,U2[n+24>>2]=t-k,t=P2(a*b),f=P2(f*l),U2[n+16>>2]=t+f,U2[n+8>>2]=u+c,U2[n+4>>2]=t-f,f=P2(a*o),r=P2(r*b),U2[n+40>>2]=P2(1)-P2(f+r),e=P2(e*l),U2[n+20>>2]=P2(1)-P2(f+e),U2[n>>2]=P2(1)-P2(r+e)):(i=X2[A+4>>2],X2[n>>2]=X2[A>>2],X2[n+4>>2]=i,u=X2[4+(k=A+8|0)>>2],X2[(i=n+8|0)>>2]=X2[k>>2],X2[i+4>>2]=u,i=X2[A+20>>2],X2[n+16>>2]=X2[A+16>>2],X2[n+20>>2]=i,u=X2[4+(k=A+24|0)>>2],X2[(i=n+24|0)>>2]=X2[k>>2],X2[i+4>>2]=u,i=X2[A+36>>2],X2[n+32>>2]=X2[A+32>>2],X2[n+36>>2]=i,i=n+40|0,n=X2[(A=A+40|0)+4>>2],X2[i>>2]=X2[A>>2],X2[i+4>>2]=n),K2=16+s|0}function R4(A,e){var r,f,i,a,n,b,t,o=0,c=0,k=0,u=0,s=0,c=t=X2[A+4>>2];if((0|t)==X2[A+8>>2]&&!((0|(n=(c=t)?t<<1:1))<=(0|t))){if(n&&(X2[6258]=X2[6258]+1,(c=L2(H2(n,244)+19|0))&&(X2[(s=c+19&-16)-4>>2]=c)),1<=(0|t))for(o=64,c=t;;)if(u=X2[A+12>>2]+o|0,a=X2[4+(f=u+-64|0)>>2],X2[(r=(k=o+s|0)+-64|0)>>2]=X2[f>>2],X2[4+r>>2]=a,i=X2[4+(f=8+f|0)>>2],X2[(r=8+r|0)>>2]=X2[f>>2],X2[4+r>>2]=i,b=X2[4+(a=8+(r=u-48|0)|0)>>2],X2[(i=8+(f=k-48|0)|0)>>2]=X2[a>>2],X2[4+i>>2]=b,i=X2[4+r>>2],X2[f>>2]=X2[r>>2],X2[4+f>>2]=i,b=X2[4+(a=8+(r=u-32|0)|0)>>2],X2[(i=8+(f=k-32|0)|0)>>2]=X2[a>>2],X2[4+i>>2]=b,i=X2[4+r>>2],X2[f>>2]=X2[r>>2],X2[4+f>>2]=i,a=X2[4+(f=u-16|0)>>2],X2[(r=k-16|0)>>2]=X2[f>>2],X2[4+r>>2]=a,i=X2[4+(f=8+f|0)>>2],X2[(r=8+r|0)>>2]=X2[f>>2],X2[4+r>>2]=i,$2(k,u,180),o=o+244|0,!(c=c-1|0))break;(c=X2[A+12>>2])&&J2[A+16|0]&&(X2[6259]=X2[6259]+1,q2(X2[c-4>>2])),X2[A+12>>2]=s,S2[A+16|0]=1,X2[A+8>>2]=n,c=X2[A+4>>2]}return X2[A+4>>2]=c+1,u=X2[(k=e+8|0)+4>>2],t=(c=H2(t,244))+X2[A+12>>2]|0,X2[(o=8+t|0)>>2]=X2[k>>2],X2[o+4>>2]=u,o=X2[e+4>>2],X2[t>>2]=X2[e>>2],X2[4+t>>2]=o,u=X2[(k=e+24|0)+4>>2],X2[(o=24+t|0)>>2]=X2[k>>2],X2[o+4>>2]=u,o=X2[e+20>>2],X2[16+t>>2]=X2[e+16>>2],X2[20+t>>2]=o,o=X2[e+36>>2],X2[32+t>>2]=X2[e+32>>2],X2[36+t>>2]=o,u=X2[(k=e+40|0)+4>>2],X2[(o=40+t|0)>>2]=X2[k>>2],X2[o+4>>2]=u,o=X2[e+52>>2],X2[48+t>>2]=X2[e+48>>2],X2[52+t>>2]=o,u=X2[(k=e+56|0)+4>>2],X2[(o=56+t|0)>>2]=X2[k>>2],X2[o+4>>2]=u,$2(t+64|0,e- -64|0,180),c+X2[A+12>>2]|0}function D4(A,e,r,f,i,a){A|=0,e|=0,r|=0,f|=0,i|=0,a|=0;var n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C=P2(0),h=P2(0),F=(P2(0),P2(0),P2(0),P2(0)),Y=P2(0),m=P2(0),N=P2(0);P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);K2=G=K2-272|0,Y=U2[e+52>>2],m=U2[r+52>>2],N=U2[e+56>>2],k=U2[r+56>>2],u=U2[e+48>>2],s=U2[r+48>>2],E4(e,r,112+G|0,48+G|0),X2[268+G>>2]=r=0,C=U2[48+G>>2],h=P2(C*U2[120+G>>2]),U2[264+G>>2]=h,t=P2(C*U2[116+G>>2]),U2[260+G>>2]=t,C=P2(C*U2[112+G>>2]),U2[256+G>>2]=C,l=U2[f+52>>2],B=U2[i+52>>2],_=U2[f+56>>2],g=U2[i+56>>2],v=U2[f+48>>2],E=U2[i+48>>2],E4(f,i,112+G|0,48+G|0),X2[252+G>>2]=0,b=U2[48+G>>2],o=P2(b*U2[120+G>>2]),U2[248+G>>2]=o,F=P2(b*U2[116+G>>2]),U2[244+G>>2]=F,b=P2(b*U2[112+G>>2]),U2[240+G>>2]=b,i=X2[A+12>>2],C=P2(P2(N2[X2[X2[i>>2]+16>>2]](i))*P2(O2(P2(P2(P2(C*C)+P2(t*t))+P2(h*h))))),i=X2[A+16>>2],h=P2(i?N2[X2[X2[i>>2]+16>>2]](i):0),d=P2(C+P2(h*P2(O2(P2(P2(P2(b*b)+P2(F*F))+P2(o*o)))))),v=P2(E-v),u=P2(s-u),t=P2(v-u),s=P2(B-l),l=P2(m-Y),b=P2(s-l),B=P2(g-_),k=P2(k-N),o=P2(B-k);A:if(P2(d+P2(O2(P2(P2(P2(t*t)+P2(b*b))+P2(o*o)))))!=P2(0)&&(S2[216+G|0]=0,X2[212+G>>2]=1566444395,X2[176+G>>2]=15108,T4(A,e,f,176+G|0),n=X2[4+(c=204+G|0)>>2],X2[(i=232+G|0)>>2]=X2[c>>2],X2[i+4>>2]=n,i=X2[200+G>>2],X2[224+G>>2]=X2[196+G>>2],X2[228+G>>2]=i,J2[216+G|0]&&(F=U2[180+G>>2],Y=U2[184+G>>2],m=U2[188+G>>2],!(P2(d+P2(P2(P2(t*F)+P2(b*Y))+P2(o*m)))<=P2(1.1920928955078125e-7))))){r=1;e:{if((N=P2(U2[212+G>>2]+U2[a+172>>2]))>P2(.0010000000474974513)){for(c=20+G|0,Q=160+G|0,h=P2(i=0);;){if((n=X2[a+168>>2])&&(X2[120+G>>2]=1065353216,X2[124+G>>2]=0,X2[112+G>>2]=1065353216,X2[116+G>>2]=1065353216,N2[X2[X2[n>>2]+28>>2]](n,224+G|0,P2(.20000000298023224),112+G|0)),(C=P2(d+P2(P2(P2(t*F)+P2(b*Y))+P2(o*m))))<=P2(1.1920928955078125e-7)){r=0;break A}if((C=P2(h+P2(N/C)))<=h){r=0;break A}if(C>P2(1)){r=0;break A}if(C>2])&&(X2[8+G>>2]=0,X2[12+G>>2]=0,X2[G>>2]=1065353216,X2[4+G>>2]=0,N2[X2[X2[n>>2]+28>>2]](n,Q,P2(.20000000298023224),G)),N2[X2[X2[a>>2]>>2]](a,C),S2[40+G|0]=0,X2[36+G>>2]=1566444395,X2[G>>2]=15108,T4(A,112+G|0,48+G|0,G),!J2[40+G|0])break e;if(w=X2[4+(Z=8+c|0)>>2],X2[(n=232+G|0)>>2]=X2[Z>>2],X2[4+n>>2]=w,n=X2[4+c>>2],X2[224+G>>2]=X2[c>>2],X2[228+G>>2]=n,64==(0|i)){N2[X2[X2[a>>2]+8>>2]](a,-2,65),r=0;break A}if(i=i+1|0,F=U2[4+G>>2],Y=U2[8+G>>2],m=U2[12+G>>2],h=C,!((N=P2(U2[36+G>>2]+U2[a+172>>2]))>P2(.0010000000474974513)))break}h=U2[16+G>>2]}else C=P2(0),h=U2[192+G>>2];U2[a+132>>2]=F,U2[a+164>>2]=C,A=X2[228+G>>2],X2[a+148>>2]=X2[224+G>>2],X2[a+152>>2]=A,U2[a+144>>2]=h,U2[a+140>>2]=m,U2[a+136>>2]=Y,f=X2[(e=232+G|0)+4>>2],X2[(A=a+156|0)>>2]=X2[e>>2],X2[A+4>>2]=f;break A}N2[X2[X2[a>>2]+8>>2]](a,-1,i),r=0}return K2=272+G|0,0|r}function T4(A,e,r,f){var i,a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C,h,F,x,y,V,p,M,S,X,J,U,Y,m=0,N=0,R=(P2(0),P2(0)),D=(P2(0),P2(0)),T=(P2(0),P2(0),P2(0),P2(0),P2(0),0),W=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),0),I=(P2(0),0);P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);K2=Y=K2-240|0,X2[A+16>>2]?(m=X2[A+4>>2],S2[m+312|0]=0,S2[m+356|0]=1,X2[m>>2]=0,X2[m+292>>2]=1566444395,X2[m+296>>2]=1566444395,X2[(N=m+336|0)>>2]=0,X2[N+4>>2]=0,X2[(N=m+300|0)>>2]=1566444395,X2[N+4>>2]=0,X2[(N=m+344|0)>>2]=0,X2[N+4>>2]=0,S2[m+352|0]=0,S2[0|(m=m+332|0)]=240&J2[0|m],m=X2[A+12>>2],N=X2[m+4>>2],W=X2[A+16>>2],I=X2[W+4>>2],D=P2(N2[X2[X2[m>>2]+48>>2]](m)),T=X2[A+16>>2],R=P2(N2[X2[X2[T>>2]+48>>2]](T)),X2[(T=172+Y|0)>>2]=0,X2[T+4>>2]=0,X2[232+Y>>2]=1,X2[236+Y>>2]=1,X2[220+Y>>2]=-1,S2[212+Y|0]=0,U2[208+Y>>2]=R,U2[204+Y>>2]=D,X2[200+Y>>2]=I,X2[196+Y>>2]=N,X2[192+Y>>2]=W,X2[188+Y>>2]=m,X2[164+Y>>2]=0,X2[168+Y>>2]=1065353216,X2[160+Y>>2]=14952,H=X2[A+4>>2],X2[180+Y>>2]=X2[A+8>>2],X2[184+Y>>2]=H,m=X2[(A=e+8|0)+4>>2],X2[(N=32+Y|0)>>2]=X2[A>>2],X2[N+4>>2]=m,m=X2[(A=e+24|0)+4>>2],X2[(N=48+Y|0)>>2]=X2[A>>2],X2[N+4>>2]=m,m=X2[(A=e+40|0)+4>>2],X2[(N=Y+64|0)>>2]=X2[A>>2],X2[N+4>>2]=m,m=X2[(A=e+56|0)+4>>2],X2[(N=80+Y|0)>>2]=X2[A>>2],X2[N+4>>2]=m,m=X2[(A=r+8|0)+4>>2],X2[(N=96+Y|0)>>2]=X2[A>>2],X2[N+4>>2]=m,X2[152+Y>>2]=1566444395,A=X2[e+4>>2],X2[24+Y>>2]=X2[e>>2],X2[28+Y>>2]=A,A=X2[e+20>>2],X2[40+Y>>2]=X2[e+16>>2],X2[44+Y>>2]=A,A=X2[e+36>>2],X2[56+Y>>2]=X2[e+32>>2],X2[60+Y>>2]=A,A=X2[e+52>>2],X2[72+Y>>2]=X2[e+48>>2],X2[76+Y>>2]=A,A=X2[r+4>>2],X2[88+Y>>2]=X2[r>>2],X2[92+Y>>2]=A,e=X2[(A=r+24|0)+4>>2],X2[(m=112+Y|0)>>2]=X2[A>>2],X2[m+4>>2]=e,A=X2[r+20>>2],X2[(e=104+Y|0)>>2]=X2[r+16>>2],X2[e+4>>2]=A,A=X2[r+36>>2],X2[(e=120+Y|0)>>2]=X2[r+32>>2],X2[e+4>>2]=A,e=X2[(A=r+40|0)+4>>2],X2[(m=128+Y|0)>>2]=X2[A>>2],X2[m+4>>2]=e,A=X2[r+52>>2],X2[(e=136+Y|0)>>2]=X2[r+48>>2],X2[e+4>>2]=A,e=X2[(A=r+56|0)+4>>2],X2[(r=144+Y|0)>>2]=X2[A>>2],X2[r+4>>2]=e,I1(160+Y|0,24+Y|0,f,0,0)):(U=U2[(N=r+52|0)>>2],Z=U2[(W=r+56|0)>>2],_=U2[e+52>>2],C=U2[e+56>>2],o=U2[e+20>>2],c=U2[e+36>>2],D=U2[(I=r+20|0)>>2],R=U2[(T=r+36|0)>>2],i=U2[(x=r+24|0)>>2],a=U2[e+24>>2],n=U2[(y=r+40|0)>>2],l=U2[e+40>>2],h=U2[r+48>>2],F=U2[e+48>>2],m=X2[A+12>>2],B=U2[e+32>>2],v=U2[e>>2],g=U2[e+16>>2],E=U2[e+4>>2],t=U2[r+32>>2],b=U2[r+16>>2],k=U2[r>>2],u=U2[r+4>>2],A=X2[A+20>>2],s=U2[r+8>>2],Q=U2[e+8>>2],X2[172+Y>>2]=0,V=P2(P2(P2(Q*u)+P2(a*D))+P2(l*R)),w=P2(-U2[(e=A+60|0)>>2]),p=P2(P2(P2(Q*k)+P2(a*b))+P2(l*t)),G=U2[A+56>>2],Q=P2(P2(P2(Q*s)+P2(a*i))+P2(l*n)),a=U2[(M=A- -64|0)>>2],U2[168+Y>>2]=P2(P2(V*w)-P2(p*G))-P2(Q*a),S=P2(P2(P2(E*u)+P2(o*D))+P2(c*R)),X=P2(P2(P2(E*k)+P2(o*b))+P2(c*t)),E=P2(P2(P2(E*s)+P2(o*i))+P2(c*n)),U2[164+Y>>2]=P2(P2(S*w)-P2(G*X))-P2(a*E),J=P2(P2(P2(v*u)+P2(g*D))+P2(B*R)),d=P2(J*w),w=P2(P2(P2(v*k)+P2(g*b))+P2(B*t)),g=P2(P2(P2(v*s)+P2(g*i))+P2(B*n)),U2[160+Y>>2]=P2(d-P2(G*w))-P2(a*g),N2[X2[X2[m>>2]+64>>2]](24+Y|0,m,160+Y|0),o=U2[e>>2],c=U2[M>>2],G=U2[A+72>>2],a=U2[A+56>>2],l=U2[24+Y>>2],B=U2[28+Y>>2],v=U2[32+Y>>2],X2[172+Y>>2]=0,m=P2(P2(P2(F*k)+P2(_*b))+P2(C*t)),d=b,b=P2(-U),t=P2(P2(m+P2(P2(P2(d*b)-P2(k*h))-P2(t*Z)))+P2(P2(P2(w*l)+P2(X*B))+P2(p*v))),n=P2(P2(P2(P2(P2(F*s)+P2(_*i))+P2(C*n))+P2(P2(P2(i*b)-P2(s*h))-P2(n*Z)))+P2(P2(P2(g*l)+P2(E*B))+P2(Q*v))),i=P2(P2(P2(P2(P2(F*u)+P2(_*D))+P2(C*R))+P2(P2(P2(D*b)-P2(u*h))-P2(R*Z)))+P2(P2(P2(J*l)+P2(S*B))+P2(V*v))),D=P2(P2(P2(c*n)+P2(P2(a*t)+P2(o*i)))-G),R=P2(t-P2(a*D)),t=U2[r+32>>2],i=P2(i-P2(o*D)),b=U2[T>>2],n=P2(n-P2(c*D)),k=U2[y>>2],U2[168+Y>>2]=P2(P2(P2(R*t)+P2(i*b))+P2(n*k))+U2[W>>2],u=U2[r+16>>2],s=U2[I>>2],Z=U2[x>>2],U2[164+Y>>2]=P2(P2(P2(R*u)+P2(i*s))+P2(n*Z))+U2[N>>2],_=U2[r>>2],d=P2(_*R),R=U2[r+4>>2],d=P2(d+P2(i*R)),i=U2[r+8>>2],U2[160+Y>>2]=P2(d+P2(n*i))+U2[r+48>>2],X2[20+Y>>2]=0,U2[16+Y>>2]=P2(P2(a*t)+P2(o*b))+P2(c*k),U2[12+Y>>2]=P2(P2(a*u)+P2(o*s))+P2(c*Z),U2[8+Y>>2]=P2(P2(a*_)+P2(o*R))+P2(c*i),N2[X2[X2[f>>2]+16>>2]](f,8+Y|0,160+Y|0,D)),K2=240+Y|0}function W4(A){var e,r,f=0,i=0,a=0;if(X2[(A|=0)>>2]=20204,1<=(0|(f=X2[A+8>>2])))for(;;)if(r=X2[X2[A+16>>2]+i>>2],(e=X2[r+188>>2])&&(f=X2[A+68>>2],f=0|N2[X2[X2[f>>2]+36>>2]](f),N2[X2[X2[f>>2]+40>>2]](f,e,X2[A+24>>2]),f=X2[A+68>>2],N2[X2[X2[f>>2]+12>>2]](f,e,X2[A+24>>2]),X2[r+188>>2]=0,f=X2[A+8>>2]),i=i+4|0,!((0|(a=a+1|0))<(0|f)))break;return(f=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[f-4>>2])),X2[A+16>>2]=0,X2[A+8>>2]=0,X2[A+12>>2]=0,S2[A+20|0]=1,0|A}function I4(A){A|=0;var e,r,f,i,a,n,b,t,o=0,c=0,k=0,u=0,s=0,l=(P2(0),0),B=0,v=0,d=0,Z=(P2(0),P2(0),P2(0),P2(0),P2(0),0);if(K2=t=K2-192|0,0|N2[X2[X2[A>>2]+20>>2]](A)){if(c=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[c>>2]+100>>2]](c),c=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[c>>2]+8>>2]](80+t|0,c),c=0|N2[X2[X2[A>>2]+20>>2]](A),8&N2[X2[X2[c>>2]+56>>2]](c)&&(c=X2[A+24>>2])&&!((0|(B=0|N2[X2[X2[c>>2]+36>>2]](c)))<1))for(d=176+t|0,c=0;;){if(u=X2[A+24>>2],u=0|N2[X2[X2[u>>2]+40>>2]](u,c),1<=(0|(l=X2[u+844>>2])))for(u=u+168|0;;)if(v=0|N2[X2[X2[A>>2]+20>>2]](A),N2[X2[X2[v>>2]+40>>2]](v,u-132|0,u-100|0,U2[u-84>>2],X2[u>>2],d),u=u+208|0,!(l=l-1|0))break;if((0|B)==(0|(c=c+1|0)))break}if(c=0|N2[X2[X2[A>>2]+20>>2]](A),3&N2[X2[X2[c>>2]+56>>2]](c)&&!(X2[A+8>>2]<1))for(l=160+t|0,B=96+t|0,d=112+t|0,v=128+t|0,r=144+t|0,u=0;;){if(c=X2[X2[A+16>>2]+u>>2],!(32&J2[c+204|0])){if(0|N2[X2[X2[A>>2]+20>>2]](A)&&(o=0|N2[X2[X2[A>>2]+20>>2]](A),1&N2[X2[X2[o>>2]+56>>2]](o))){A:{e:switch(X2[c+220>>2]-1|0){case 0:s=X2[(k=88+t|0)+4>>2],X2[(o=72+t|0)>>2]=X2[k>>2],X2[o+4>>2]=s,o=X2[84+t>>2],X2[64+t>>2]=X2[80+t>>2],X2[68+t>>2]=o;break A;case 1:s=X2[(k=B+8|0)+4>>2],X2[(o=72+t|0)>>2]=X2[k>>2],X2[o+4>>2]=s,o=X2[B+4>>2],X2[64+t>>2]=X2[B>>2],X2[68+t>>2]=o;break A;case 2:s=X2[(k=d+8|0)+4>>2],X2[(o=72+t|0)>>2]=X2[k>>2],X2[o+4>>2]=s,o=X2[d+4>>2],X2[64+t>>2]=X2[d>>2],X2[68+t>>2]=o;break A;case 3:s=X2[(k=v+8|0)+4>>2],X2[(o=72+t|0)>>2]=X2[k>>2],X2[o+4>>2]=s,o=X2[v+4>>2],X2[64+t>>2]=X2[v>>2],X2[68+t>>2]=o;break A;case 4:s=X2[(k=8+r|0)+4>>2],X2[(o=72+t|0)>>2]=X2[k>>2],X2[o+4>>2]=s,o=X2[4+r>>2],X2[64+t>>2]=X2[r>>2],X2[68+t>>2]=o;break A;default:break e;}X2[72+t>>2]=1050253722,X2[76+t>>2]=0,X2[64+t>>2]=1050253722,X2[68+t>>2]=1050253722}1&S2[c+205|0]&&(s=X2[(k=c+316|0)+4>>2],X2[(o=72+t|0)>>2]=X2[k>>2],X2[o+4>>2]=s,o=X2[c+312>>2],X2[64+t>>2]=X2[c+308>>2],X2[68+t>>2]=o),N2[X2[X2[A>>2]+28>>2]](A,c+4|0,X2[c+192>>2],t+64|0)}(o=X2[A+72>>2])&&2&N2[X2[X2[o>>2]+56>>2]](o)&&(s=X2[(k=l+8|0)+4>>2],X2[(o=40+t|0)>>2]=X2[k>>2],X2[o+4>>2]=s,o=X2[l+4>>2],X2[32+t>>2]=X2[l>>2],X2[36+t>>2]=o,o=X2[c+192>>2],N2[X2[X2[o>>2]+8>>2]](o,c+4|0,t+64|0,48+t|0),U2[64+t>>2]=U2[64+t>>2]+P2(-.019999999552965164),U2[68+t>>2]=U2[68+t>>2]+P2(-.019999999552965164),U2[72+t>>2]=U2[72+t>>2]+P2(-.019999999552965164),U2[48+t>>2]=U2[48+t>>2]+P2(.019999999552965164),U2[52+t>>2]=U2[52+t>>2]+P2(.019999999552965164),U2[56+t>>2]=U2[56+t>>2]+P2(.019999999552965164),!J2[A+44|0]||2!=X2[c+252>>2]||3&J2[c+204|0]||(o=X2[c+192>>2],N2[X2[X2[o>>2]+8>>2]](o,c+68|0,16+t|0,t),e=P2(U2[16+t>>2]+P2(-.019999999552965164)),U2[16+t>>2]=e,f=P2(U2[20+t>>2]+P2(-.019999999552965164)),U2[20+t>>2]=f,i=P2(U2[24+t>>2]+P2(-.019999999552965164)),U2[24+t>>2]=i,a=P2(U2[t>>2]+P2(.019999999552965164)),U2[t>>2]=a,n=P2(U2[4+t>>2]+P2(.019999999552965164)),U2[4+t>>2]=n,b=P2(U2[8+t>>2]+P2(.019999999552965164)),U2[8+t>>2]=b,e>2]&&(U2[64+t>>2]=e),U2[68+t>>2]>f&&(U2[68+t>>2]=f),U2[72+t>>2]>i&&(U2[72+t>>2]=i),(e=U2[28+t>>2])>2]&&(U2[76+t>>2]=e),U2[48+t>>2]>2]=a),U2[52+t>>2]>2]=n),U2[56+t>>2]>2]=b),(e=U2[12+t>>2])>U2[60+t>>2]&&(U2[60+t>>2]=e)),c=X2[A+72>>2],N2[X2[X2[c>>2]+60>>2]](c,t+64|0,48+t|0,32+t|0))}if(u=u+4|0,!((0|(Z=Z+1|0))>2]))break}}K2=192+t|0}function x4(A,e,r,f){A|=0,e|=0,r|=0,f|=0;var i=0,a=0,n=0,b=0,t=0,o=K2-96|0;if(K2=o,i=X2[A+8>>2],X2[e+216>>2]=i,X2[A+12>>2]==(0|i)&&!((0|(n=i?i<<1:1))<=(0|i))){if(n&&(X2[6258]=X2[6258]+1,(a=L2(19+(n<<2)|0))&&(X2[(b=a+19&-16)-4>>2]=a)),1<=(0|i))for(a=i;;)if(X2[t+b>>2]=X2[X2[A+16>>2]+t>>2],t=t+4|0,!(a=a-1|0))break;(a=X2[A+16>>2])&&J2[A+20|0]&&(X2[6259]=X2[6259]+1,q2(X2[a-4>>2]),i=X2[A+8>>2]),X2[A+16>>2]=b,X2[A+12>>2]=n,S2[A+20|0]=1}X2[A+8>>2]=i+1,X2[X2[A+16>>2]+(i<<2)>>2]=e,n=X2[(a=e+12|0)+4>>2],X2[(i=40+o|0)>>2]=X2[a>>2],X2[i+4>>2]=n,n=X2[(a=e+28|0)+4>>2],X2[(i=56+o|0)>>2]=X2[a>>2],X2[i+4>>2]=n,n=X2[(a=e+44|0)+4>>2],X2[(i=72+o|0)>>2]=X2[a>>2],X2[i+4>>2]=n,n=X2[(a=e+60|0)+4>>2],X2[(i=88+o|0)>>2]=X2[a>>2],X2[i+4>>2]=n,i=X2[e+8>>2],X2[32+o>>2]=X2[e+4>>2],X2[36+o>>2]=i,a=X2[(i=e+20|0)+4>>2],X2[48+o>>2]=X2[i>>2],X2[52+o>>2]=a,a=X2[(i=e+36|0)+4>>2],X2[64+o>>2]=X2[i>>2],X2[68+o>>2]=a,a=X2[(i=e+52|0)+4>>2],X2[80+o>>2]=X2[i>>2],X2[84+o>>2]=a,i=X2[e+192>>2],N2[X2[X2[i>>2]+8>>2]](i,32+o|0,16+o|0,o),i=X2[A+68>>2],n=e,i=0|N2[X2[X2[i>>2]+8>>2]](i,16+o|0,o,X2[X2[e+192>>2]+4>>2],e,r,f,X2[A+24>>2]),X2[n+188>>2]=i,K2=96+o|0}function y4(A,e){A|=0;var r,f,i,a=0,n=0,b=0,t=0,o=0;(n=X2[(e|=0)+188>>2])&&(a=X2[A+68>>2],a=0|N2[X2[X2[a>>2]+36>>2]](a),N2[X2[X2[a>>2]+40>>2]](a,n,X2[A+24>>2]),a=X2[A+68>>2],N2[X2[X2[a>>2]+12>>2]](a,n,X2[A+24>>2]),X2[e+188>>2]=0),n=X2[A+8>>2];A:if((0|(a=X2[e+216>>2]))<0||(0|n)<=(0|a)){if(!((0|n)<1)){for(a=o=X2[A+16>>2];;){if(X2[a>>2]==(0|e))break;if(a=a+4|0,(0|n)==(0|(t=t+1|0)))break A}(0|n)<=(0|t)||(X2[(b=a)>>2]=X2[(a=(n=n-1|0)<<2)+o>>2],X2[A+8>>2]=n,X2[a+X2[A+16>>2]>>2]=e)}}else b=X2[(o=A+16|0)>>2],f=X2[(r=(t=a<<2)+b|0)>>2],i=b,X2[r>>2]=X2[i+(b=(n=n-1|0)<<2)>>2],X2[A+8>>2]=n,X2[b+X2[o>>2]>>2]=f,(0|n)<=(0|a)||(X2[X2[X2[A+16>>2]+t>>2]+216>>2]=a);X2[e+216>>2]=-1}function V4(A,e){var r,f,i,a=0,n=0,b=0,t=0,o=0,c=0,k=0,u=0,s=0,l=0,B=0,v=0,d=0,Z=0,_=0,g=0,E=0,Q=0,w=0,G=0;if(!((0|(n=X2[A+8>>2]))<1)){for(;;){r=X2[X2[X2[A+16>>2]+(Q<<2)>>2]+192>>2],a=H2((a=r+(r<<15^-1)|0)>>>10^a,9),a=v>>>0<=(k=(f=(a=((a^=a>>>6)<<11^-1)+a|0)>>>16^a)&u-1)>>>0;A:{e:if(!a&&-1!=(0|(b=X2[(k<<2)+l>>2]))){for(;;){if(X2[(b<<3)+t>>2]==(0|r))break;if(-1==(0|(b=X2[(b<<2)+o>>2])))break e}if(s)break A}e:{r:{if(!a&&-1!=(0|(b=X2[(k<<2)+l>>2])))for(;;){if(X2[(b<<3)+t>>2]==(0|r))break r;if(-1==(0|(b=X2[(b<<2)+o>>2])))break}if((0|u)!=(0|E))a=u,Z=s,n=E;else{f:if((0|(a=u?u<<1:1))<=(0|u))a=u,Z=s;else{if(Z=0,a&&(X2[6258]=X2[6258]+1,(n=L2(19+(a<<2)|0))&&(X2[(Z=n+19&-16)-4>>2]=n)),1<=(0|u)){for(b=Z,n=s,c=u;;)if(X2[b>>2]=X2[n>>2],b=b+4|0,n=n+4|0,!(c=c-1|0))break}else if(!s)break f;X2[6259]=X2[6259]+1,q2(X2[s-4>>2])}n=u}X2[((s=n)<<2)+Z>>2]=r;f:if((0|B)!=(0|_))d=t;else if((0|(_=B?B<<1:1))<=(0|B))_=B,d=t;else{if(d=0,_&&(X2[6258]=X2[6258]+1,(n=L2(19+(_<<3)|0))&&(X2[(d=n+19&-16)-4>>2]=n)),1<=(0|B)){for(b=d,n=t,c=B;;)if(i=X2[n+4>>2],X2[b>>2]=X2[n>>2],X2[b+4>>2]=i,b=b+8|0,n=n+8|0,!(c=c-1|0))break}else if(!t)break f;X2[6259]=X2[6259]+1,q2(X2[t-4>>2])}if(X2[(B<<3)+d>>2]=r,(0|u)<(0|a)){if((0|v)<(0|a)){if((0|a)<=(0|w))c=l;else{c=0,a&&(X2[6258]=X2[6258]+1,(t=L2(19+(a<<2)|0))&&(X2[(c=t+19&-16)-4>>2]=t));f:{if(1<=(0|v)){for(b=c,n=l,t=v;;)if(X2[b>>2]=X2[n>>2],b=b+4|0,n=n+4|0,!(t=t-1|0))break}else if(!l)break f;X2[6259]=X2[6259]+1,q2(X2[l-4>>2])}w=a}if(v2((v<<2)+c|0,0,a-v<<2),u=a<<2,(0|a)<=(0|g))k=o;else{if((0|a)<=(0|G))k=o;else{k=0,a&&(X2[6258]=X2[6258]+1,(t=L2(16+(3|u)|0))&&(X2[(k=t+19&-16)-4>>2]=t));f:{if(1<=(0|g)){for(b=k,n=o,t=g;;)if(X2[b>>2]=X2[n>>2],b=b+4|0,n=n+4|0,!(t=t-1|0))break}else if(!o)break f;X2[6259]=X2[6259]+1,q2(X2[o-4>>2])}G=a}v2((g<<2)+k|0,0,a-g<<2)}if(1<=(0|a)&&(v2(c,255,u),v2(k,255,u)),1<=(0|v))for(u=a-1|0,b=0,n=d,t=k;;)if(o=X2[n>>2],o=H2((o=(o<<15^-1)+o|0)>>>10^o,9),o^=o>>>6,X2[t>>2]=X2[(o=((u&((o=(o<<11^-1)+o|0)>>>16^o))<<2)+c|0)>>2],n=n+8|0,t=t+4|0,(0|v)==(0|(b=(X2[o>>2]=b)+1|0)))break;l=c,v=g=a,o=k}k=a-1&f}B=B+1|0,X2[(E<<2)+o>>2]=X2[(t=(k<<2)+l|0)>>2],X2[t>>2]=E,u=a,E=s+1|0,s=Z,t=d;break e}X2[(b<<2)+s>>2]=r}N2[X2[X2[r>>2]+60>>2]](r,e),n=X2[A+8>>2]}if(!((0|(Q=Q+1|0))<(0|n)))break}if(1<=(0|n))for(c=b=0;;)if(a=X2[X2[A+16>>2]+b>>2],1!=(0|(k=X2[a+252>>2]))&&64!=(0|k)||(N2[X2[X2[a>>2]+24>>2]](a,e),n=X2[A+8>>2]),b=b+4|0,!((0|(c=c+1|0))<(0|n)))break;t&&(X2[6259]=X2[6259]+1,q2(X2[t-4>>2])),s&&(X2[6259]=X2[6259]+1,q2(X2[s-4>>2])),o&&(X2[6259]=X2[6259]+1,q2(X2[o-4>>2])),l&&(X2[6259]=X2[6259]+1,q2(X2[l-4>>2]))}}function p4(A,e,r,f){var i,a,n,x,y,V,p,M,S,X,J,b,t=0,o=P2(0),c=P2(0),k=P2(0),u=P2(0),s=0,l=0,B=P2(0),v=P2(0),d=P2(0),Z=P2(0),_=P2(0),g=P2(0),E=P2(0),Q=P2(0),w=0,G=P2(0),C=P2(0),h=P2(0),F=P2(0),Y=0,m=P2(0),N=P2(0),R=P2(0),D=P2(0),T=0,W=P2(0),I=(P2(0),P2(0),0);P2(0);X2[(t=264+(K2=b=K2-832|0)|0)>>2]=0,X2[t+4>>2]=0,X2[(t=272+b|0)>>2]=0,X2[t+4>>2]=0,X2[(t=280+b|0)>>2]=0,X2[t+4>>2]=0,X2[288+b>>2]=0,X2[260+b>>2]=1065353216,X2[252+b>>2]=1065353216,X2[256+b>>2]=1065353216,X2[236+b>>2]=8,X2[240+b>>2]=0,X2[244+b>>2]=0,X2[248+b>>2]=0,X2[232+b>>2]=14616,t=X2[r+12>>2];A:if(l=X2[r+4>>2],(0|(s=X2[l+4>>2]))<=19)X2[216+b>>2]=0,X2[220+b>>2]=0,X2[48+b>>2]=15320,U2[212+b>>2]=U2[f+4>>2],S2[652+b|0]=0,X2[628+b>>2]=953267991,X2[308+b>>2]=l,X2[296+b>>2]=15936,X2[304+b>>2]=232+b,X2[300+b>>2]=320+b,X2[32+b>>2]=15076,X2[44+b>>2]=l,s=8&X2[f+16>>2]?32+b|0:296+b|0,l=X2[s>>2],X2[40+b>>2]=232+b,l=X2[l+8>>2],X2[36+b>>2]=320+b,0|N2[0|l](s,A,e,t,t,48+b|0)&&(k=U2[180+b>>2],o=U2[184+b>>2],c=U2[188+b>>2],(d=P2(P2(P2(k*k)+P2(o*o))+P2(c*c)))>P2(9999999747378752e-20)&&(B=U2[212+b>>2])>2]&&(m=c,c=P2(P2(1)/P2(O2(d))),U2[188+b>>2]=m*c,U2[184+b>>2]=o*c,U2[180+b>>2]=k*c,s=X2[(t=(A=180+b|0)+8|0)+4>>2],X2[(e=16+b|0)>>2]=X2[t>>2],X2[e+4>>2]=s,U2[24+b>>2]=B,e=X2[A+4>>2],X2[8+b>>2]=X2[A>>2],X2[12+b>>2]=e,X2[4+b>>2]=0,X2[b>>2]=X2[r+8>>2],P2(N2[X2[X2[f>>2]+12>>2]](f,b,1))));else if(s-21>>>0<=8)o=U2[t+20>>2],c=U2[t+36>>2],k=U2[(s=t+24|0)>>2],d=U2[t+52>>2],u=U2[(Y=t+56|0)>>2],v=U2[(w=t+40|0)>>2],Z=U2[t+32>>2],Q=U2[t+16>>2],G=U2[t>>2],C=U2[t+4>>2],g=U2[t+48>>2],_=U2[t+8>>2],X2[308+b>>2]=0,E=P2(-d),R=P2(P2(P2(k*E)-P2(_*g))-P2(v*u)),F=U2[A+48>>2],h=U2[A+52>>2],N=U2[A+56>>2],d=P2(R+P2(P2(P2(_*F)+P2(k*h))+P2(v*N))),U2[304+b>>2]=d,D=P2(P2(P2(o*E)-P2(C*g))-P2(c*u)),B=P2(D+P2(P2(P2(C*F)+P2(o*h))+P2(c*N))),U2[300+b>>2]=B,E=P2(P2(P2(Q*E)-P2(G*g))-P2(Z*u)),u=P2(E+P2(P2(P2(G*F)+P2(Q*h))+P2(Z*N))),U2[296+b>>2]=u,g=U2[e+48>>2],h=P2(_*g),_=U2[e+52>>2],m=v,v=U2[e+56>>2],k=P2(R+P2(P2(h+P2(k*_))+P2(m*v))),o=P2(D+P2(P2(P2(C*g)+P2(o*_))+P2(c*v))),c=P2(E+P2(P2(P2(G*g)+P2(Q*_))+P2(Z*v))),21==X2[l+4>>2]?(X2[352+b>>2]=0,U2[348+b>>2]=k,U2[344+b>>2]=o,T=X2[(e=304+b|0)+4>>2],X2[(A=332+b|0)>>2]=X2[e>>2],X2[A+4>>2]=T,A=X2[300+b>>2],X2[324+b>>2]=X2[296+b>>2],X2[328+b>>2]=A,X2[360+b>>2]=1065353216,U2[340+b>>2]=c,X2[320+b>>2]=20304,X2[368+b>>2]=X2[r+8>>2],X2[364+b>>2]=f,X2[356+b>>2]=X2[f+16>>2],X2[372+b>>2]=l,r=X2[(e=t+8|0)+4>>2],X2[(A=384+b|0)>>2]=X2[e>>2],X2[A+4>>2]=r,A=X2[t+4>>2],X2[376+b>>2]=X2[t>>2],X2[380+b>>2]=A,e=X2[s+4>>2],X2[(A=400+b|0)>>2]=X2[s>>2],X2[A+4>>2]=e,e=X2[t+20>>2],X2[(A=392+b|0)>>2]=X2[t+16>>2],X2[A+4>>2]=e,e=X2[t+36>>2],X2[(A=408+b|0)>>2]=X2[t+32>>2],X2[A+4>>2]=e,e=X2[w+4>>2],X2[(A=416+b|0)>>2]=X2[w>>2],X2[A+4>>2]=e,e=X2[t+52>>2],X2[(A=424+b|0)>>2]=X2[t+48>>2],X2[A+4>>2]=e,e=X2[Y+4>>2],X2[(A=432+b|0)>>2]=X2[Y>>2],X2[A+4>>2]=e,U2[360+b>>2]=U2[f+4>>2],X2[32+b>>2]=13404,X2[36+b>>2]=X2[l+56>>2],X2[40+b>>2]=320+b,A=X2[l+60>>2],X2[(e=56+b|0)>>2]=0,X2[e+4>>2]=0,X2[48+b>>2]=0,X2[52+b>>2]=0,X2[(e=8+b|0)>>2]=0,X2[e+4>>2]=0,X2[b>>2]=0,X2[4+b>>2]=0,J2[A+60|0]?Z1(A,32+b|0,296+b|0,c,o,k,48+b|0,b,X2[A+56>>2]):d1(A,32+b|0,296+b|0,c,o,k,48+b|0,b)):(X2[352+b>>2]=0,U2[348+b>>2]=k,U2[344+b>>2]=o,X2[336+b>>2]=0,U2[332+b>>2]=d,U2[328+b>>2]=B,X2[360+b>>2]=1065353216,U2[324+b>>2]=u,X2[372+b>>2]=l,X2[320+b>>2]=20304,X2[368+b>>2]=X2[r+8>>2],X2[364+b>>2]=f,X2[356+b>>2]=X2[f+16>>2],U2[340+b>>2]=c,r=X2[(e=t+8|0)+4>>2],X2[(A=384+b|0)>>2]=X2[e>>2],X2[A+4>>2]=r,A=X2[t+4>>2],X2[376+b>>2]=X2[t>>2],X2[380+b>>2]=A,e=X2[s+4>>2],X2[(A=400+b|0)>>2]=X2[s>>2],X2[A+4>>2]=e,e=X2[t+20>>2],X2[(A=392+b|0)>>2]=X2[t+16>>2],X2[A+4>>2]=e,e=X2[t+36>>2],X2[(A=408+b|0)>>2]=X2[t+32>>2],X2[A+4>>2]=e,e=X2[w+4>>2],X2[(A=416+b|0)>>2]=X2[w>>2],X2[A+4>>2]=e,e=X2[t+52>>2],X2[(A=424+b|0)>>2]=X2[t+48>>2],X2[A+4>>2]=e,e=X2[Y+4>>2],X2[(A=432+b|0)>>2]=X2[Y>>2],X2[A+4>>2]=e,U2[360+b>>2]=U2[f+4>>2],X2[60+b>>2]=0,U2[56+b>>2]=d,U2[52+b>>2]=B,c<(U2[48+b>>2]=u)&&(U2[48+b>>2]=c),o>2]=o),k>2]=k),X2[12+b>>2]=0,U2[8+b>>2]=d,U2[4+b>>2]=B,(U2[b>>2]=u)>2]=c),B>2]=o),d>2]=k),N2[X2[X2[l>>2]+64>>2]](l,320+b|0,48+b|0,b));else if(31==(0|s))if(s=X2[l+72>>2],X2[24+b>>2]=f,X2[20+b>>2]=e,X2[16+b>>2]=A,X2[12+b>>2]=t,X2[8+b>>2]=l,X2[b>>2]=20328,X2[4+b>>2]=X2[r+8>>2],s){if(r=X2[s>>2]){for(k=U2[t+56>>2],h=U2[A+56>>2],o=U2[t+40>>2],c=U2[t+52>>2],N=U2[A+52>>2],d=U2[t+24>>2],B=U2[t+48>>2],R=U2[A+48>>2],u=U2[t+8>>2],v=U2[t+36>>2],Z=U2[t+20>>2],Q=U2[t+4>>2],G=U2[t+32>>2],C=U2[t+16>>2],g=U2[t>>2],_=U2[e+56>>2],E=U2[e+52>>2],F=U2[e+48>>2],X2[320+b>>2]=r,_=P2(_-k),E=P2(E-c),F=P2(F-B),W=P2(P2(o*_)+P2(P2(d*E)+P2(u*F))),B=P2(R-B),c=P2(N-c),m=o,o=P2(h-k),d=P2(P2(P2(u*B)+P2(d*c))+P2(m*o)),h=u=P2(W-d),m=P2(P2(G*_)+P2(P2(C*E)+P2(F*g))),G=P2(P2(P2(B*g)+P2(c*C))+P2(o*G)),k=P2(m-G),B=P2(P2(P2(B*Q)+P2(c*Z))+P2(o*v)),o=P2(P2(P2(v*_)+P2(P2(Z*E)+P2(F*Q)))-B),u=P2(P2(1)/P2(O2(P2(P2(P2(k*k)+P2(o*o))+P2(u*u))))),c=P2(h*u),k=P2((v=k)*u),o=P2((m=o)*u),g=P2(P2(h*c)+P2(P2(v*k)+P2(m*o))),x=(48+b|0)+((A=(c=c==P2(0)?P2(0xde0b6b000000000):P2(P2(1)/c))>2],s=X2[(t=w)+20>>2],X2[T>>2]=X2[t+16>>2],X2[T+4>>2]=s,X=X2[(t=t+24|0)+4>>2],X2[(s=T+8|0)>>2]=X2[t>>2],X2[s+4>>2]=X,t=X2[w+4>>2],X2[48+b>>2]=X2[w>>2],X2[52+b>>2]=t,s=X2[(t=w+8|0)+4>>2],X2[56+b>>2]=X2[t>>2],X2[60+b>>2]=s,u=P2(o*P2(U2[y>>2]-B)),!((v=P2(k*P2(U2[S>>2]-G)))>2]-G)),(Q=P2(o*P2(U2[p>>2]-B)))>2]-d)))||(u=Z>2]-d)))P2(0))))))if(X2[w+40>>2]){if((0|Y)<(0|f)){if((0|e)<(0|(t=e<<1))){if((0|r)<(0|t)){if(s=0,e&&(X2[6258]=X2[6258]+1,(r=L2(19+(e<<3)|0))&&(X2[(s=r+19&-16)-4>>2]=r),!((0|e)<1)))for(f=s,Y=A,r=e;;)if(X2[f>>2]=X2[Y>>2],f=f+4|0,Y=Y+4|0,!(r=r-1|0))break;I&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2])),I=1,r=t,A=s}v2((e<<=2)+A|0,0,e)}Y=t-2|0,e=t}X2[A+n>>2]=X2[w+36>>2],X2[(l<<2)+A>>2]=X2[w+40>>2],f=l+1|0}else N2[X2[X2[b>>2]+12>>2]](b,w);if(!(l=f))break}I&&A&&(X2[6259]=X2[6259]+1,q2(X2[A-4>>2]))}}else if(!((0|(A=X2[l+24>>2]))<1))for(s=A-1|0,A=32,r=0;;){if(e=X2[l+32>>2]+A|0,f=X2[e+32>>2],J=U2[t+52>>2],W=U2[t+56>>2],G=U2[e+16>>2],C=U2[e+20>>2],g=U2[e+24>>2],k=U2[t+20>>2],o=U2[t+24>>2],_=U2[e-32>>2],E=U2[e-16>>2],F=U2[e>>2],h=U2[e-28>>2],N=U2[e-12>>2],R=U2[e+4>>2],D=U2[e-24>>2],c=U2[t+36>>2],i=U2[e-8>>2],d=U2[t+40>>2],a=U2[e+8>>2],m=U2[t+48>>2],B=U2[t+8>>2],u=U2[t>>2],v=U2[t+4>>2],Z=U2[t+16>>2],Q=U2[t+32>>2],X2[380+b>>2]=0,X2[364+b>>2]=0,X2[348+b>>2]=0,X2[332+b>>2]=0,U2[360+b>>2]=P2(P2(D*Q)+P2(i*c))+P2(a*d),U2[356+b>>2]=P2(P2(h*Q)+P2(N*c))+P2(R*d),U2[352+b>>2]=P2(P2(_*Q)+P2(E*c))+P2(F*d),U2[344+b>>2]=P2(P2(D*Z)+P2(i*k))+P2(a*o),U2[340+b>>2]=P2(P2(h*Z)+P2(N*k))+P2(R*o),U2[336+b>>2]=P2(P2(_*Z)+P2(E*k))+P2(F*o),U2[328+b>>2]=P2(P2(u*D)+P2(v*i))+P2(B*a),U2[324+b>>2]=P2(P2(u*h)+P2(v*N))+P2(B*R),U2[320+b>>2]=P2(P2(_*u)+P2(E*v))+P2(F*B),U2[376+b>>2]=W+P2(P2(P2(Q*G)+P2(c*C))+P2(d*g)),U2[372+b>>2]=J+P2(P2(P2(Z*G)+P2(k*C))+P2(o*g)),U2[368+b>>2]=m+P2(P2(P2(u*G)+P2(v*C))+P2(B*g)),X2[316+b>>2]=r,X2[312+b>>2]=-1,X2[304+b>>2]=X2[4+b>>2],X2[300+b>>2]=f,X2[296+b>>2]=0,X2[308+b>>2]=320+b,X2[52+b>>2]=1065353216,X2[56+b>>2]=0,X2[64+b>>2]=0,X2[76+b>>2]=r,X2[68+b>>2]=f,X2[48+b>>2]=20364,e=X2[24+b>>2],X2[72+b>>2]=e,U2[52+b>>2]=U2[e+4>>2],X2[64+b>>2]=X2[e+16>>2],p4(X2[16+b>>2],X2[20+b>>2],296+b|0,48+b|0),(0|r)==(0|s))break A;r=r+1|0,A=A+80|0,t=X2[12+b>>2],l=X2[8+b>>2]}K2=832+b|0}function M4(A,e,r,f,i,a){var n,x,y,V,b,t=0,o=P2(0),c=0,k=P2(0),u=P2(0),s=P2(0),l=0,B=P2(0),v=P2(0),d=P2(0),Z=P2(0),_=P2(0),g=P2(0),E=P2(0),Q=P2(0),w=P2(0),G=0,C=0,h=P2(0),F=P2(0),Y=P2(0),m=P2(0),N=P2(0),R=P2(0),D=P2(0),T=P2(0),W=P2(0),p=0,I=P2(0),M=P2(0),S=0,X=0,J=0,U=0,H=0,P=0,j=0;P2(0),P2(0),P2(0);K2=b=K2-672|0,t=X2[f+12>>2],n=X2[f+4>>2];A:if((0|(p=X2[n+4>>2]))<=19)U2[644+b>>2]=a,X2[640+b>>2]=0,X2[472+b>>2]=15320,U2[636+b>>2]=U2[i+4>>2],S2[444+b|0]=0,X2[420+b>>2]=953267991,X2[32+b>>2]=17368,X2[668+b>>2]=0,X2[664+b>>2]=n,X2[660+b>>2]=A,X2[648+b>>2]=20032,X2[656+b>>2]=32+b,X2[652+b>>2]=112+b,D4(648+b|0,e,r,t,t,472+b|0)&&(a=U2[604+b>>2],o=U2[608+b>>2],k=U2[612+b>>2],(u=P2(P2(P2(a*a)+P2(o*o))+P2(k*k)))>P2(9999999747378752e-20)&&(B=U2[636+b>>2])>2]&&(s=k,k=P2(P2(1)/P2(O2(u))),U2[612+b>>2]=s*k,U2[608+b>>2]=o*k,U2[604+b>>2]=a*k,X2[56+b>>2]=n,r=X2[(e=628+b|0)+4>>2],X2[(A=96+b|0)>>2]=X2[e>>2],X2[A+4>>2]=r,t=X2[(r=(A=604+b|0)+8|0)+4>>2],X2[(e=80+b|0)>>2]=X2[r>>2],X2[e+4>>2]=t,e=X2[624+b>>2],X2[88+b>>2]=X2[620+b>>2],X2[92+b>>2]=e,U2[104+b>>2]=B,e=X2[A+4>>2],X2[72+b>>2]=X2[A>>2],X2[76+b>>2]=e,X2[64+b>>2]=X2[f+8>>2],X2[68+b>>2]=48+b,P2(N2[X2[X2[i>>2]+12>>2]](i,b+64|0,1))));else if((X=p-21|0)>>>0<=8){e:switch(0|X){case 0:if(o=U2[t+20>>2],k=U2[t+36>>2],u=U2[(p=t+8|0)>>2],B=U2[(X=t+24|0)>>2],Q=U2[t+52>>2],g=U2[(G=t+56|0)>>2],_=U2[(J=t+40|0)>>2],d=U2[t+32>>2],Z=U2[t+16>>2],v=U2[t>>2],s=U2[t+4>>2],E=U2[t+48>>2],X2[76+b>>2]=0,Q=P2(-Q),I=P2(P2(P2(B*Q)-P2(u*E))-P2(_*g)),w=U2[e+48>>2],h=U2[e+52>>2],F=U2[(C=e+56|0)>>2],U2[72+b>>2]=I+P2(P2(P2(u*w)+P2(B*h))+P2(_*F)),M=P2(P2(P2(o*Q)-P2(s*E))-P2(k*g)),U2[68+b>>2]=M+P2(P2(P2(s*w)+P2(o*h))+P2(k*F)),m=P2(P2(P2(Z*Q)-P2(v*E))-P2(d*g)),U2[64+b>>2]=m+P2(P2(P2(v*w)+P2(Z*h))+P2(d*F)),g=U2[r+52>>2],E=U2[(U=r+56|0)>>2],Q=U2[r+48>>2],X2[500+b>>2]=0,w=U2[(H=r+8|0)>>2],h=U2[(P=r+24|0)>>2],F=U2[(j=r+40|0)>>2],U2[512+b>>2]=P2(P2(u*w)+P2(B*h))+P2(_*F),N=U2[r+4>>2],R=U2[r+20>>2],Y=U2[r+36>>2],U2[508+b>>2]=P2(P2(u*N)+P2(B*R))+P2(_*Y),U2[496+b>>2]=P2(P2(s*w)+P2(o*h))+P2(k*F),U2[492+b>>2]=P2(P2(s*N)+P2(o*R))+P2(k*Y),X2[484+b>>2]=0,D=U2[r>>2],T=U2[r+16>>2],W=U2[r+32>>2],U2[504+b>>2]=P2(P2(u*D)+P2(B*T))+P2(_*W),U2[488+b>>2]=P2(P2(s*D)+P2(o*T))+P2(k*W),U2[480+b>>2]=P2(P2(v*w)+P2(Z*h))+P2(d*F),U2[476+b>>2]=P2(P2(v*N)+P2(Z*R))+P2(d*Y),U2[472+b>>2]=P2(P2(v*D)+P2(Z*T))+P2(d*W),X2[532+b>>2]=0,X2[(c=524+b|0)>>2]=0,X2[c+4>>2]=0,X2[(c=516+b|0)>>2]=0,X2[c+4>>2]=0,f=X2[f+8>>2],w=P2(N2[X2[X2[n>>2]+48>>2]](n)),S=X2[(l=e+8|0)+4>>2],X2[(c=128+b|0)>>2]=X2[l>>2],X2[c+4>>2]=S,l=X2[e+20>>2],X2[(c=136+b|0)>>2]=X2[e+16>>2],X2[c+4>>2]=l,S=X2[(l=e+24|0)+4>>2],X2[(c=144+b|0)>>2]=X2[l>>2],X2[c+4>>2]=S,l=X2[e+36>>2],X2[(c=152+b|0)>>2]=X2[e+32>>2],X2[c+4>>2]=l,S=X2[(l=e+40|0)+4>>2],X2[(c=160+b|0)>>2]=X2[l>>2],X2[c+4>>2]=S,l=X2[e+52>>2],X2[(c=168+b|0)>>2]=X2[e+48>>2],X2[c+4>>2]=l,l=X2[C+4>>2],X2[(c=176+b|0)>>2]=X2[C>>2],X2[c+4>>2]=l,c=X2[H+4>>2],X2[(C=192+b|0)>>2]=X2[H>>2],X2[C+4>>2]=c,X2[116+b>>2]=A,X2[112+b>>2]=20136,C=X2[e+4>>2],X2[120+b>>2]=X2[e>>2],X2[124+b>>2]=C,e=X2[r+4>>2],X2[184+b>>2]=X2[r>>2],X2[188+b>>2]=e,C=X2[r+36>>2],X2[(e=216+b|0)>>2]=X2[r+32>>2],X2[e+4>>2]=C,C=X2[P+4>>2],X2[(e=208+b|0)>>2]=X2[P>>2],X2[e+4>>2]=C,C=X2[r+20>>2],X2[(e=200+b|0)>>2]=X2[r+16>>2],X2[e+4>>2]=C,C=X2[j+4>>2],X2[(e=224+b|0)>>2]=X2[j>>2],X2[e+4>>2]=C,C=X2[r+52>>2],X2[(e=232+b|0)>>2]=X2[r+48>>2],X2[e+4>>2]=C,r=X2[U+4>>2],X2[(e=240+b|0)>>2]=X2[U>>2],X2[e+4>>2]=r,r=X2[p+4>>2],X2[(e=256+b|0)>>2]=X2[p>>2],X2[e+4>>2]=r,e=X2[t+4>>2],X2[248+b>>2]=X2[t>>2],X2[252+b>>2]=e,r=X2[X+4>>2],X2[(e=272+b|0)>>2]=X2[X>>2],X2[e+4>>2]=r,r=X2[t+20>>2],X2[(e=264+b|0)>>2]=X2[t+16>>2],X2[e+4>>2]=r,r=X2[J+4>>2],X2[(e=288+b|0)>>2]=X2[J>>2],X2[e+4>>2]=r,r=X2[t+36>>2],X2[(e=280+b|0)>>2]=X2[t+32>>2],X2[e+4>>2]=r,r=X2[G+4>>2],X2[(e=304+b|0)>>2]=X2[G>>2],X2[e+4>>2]=r,r=X2[t+52>>2],X2[(e=296+b|0)>>2]=X2[t+48>>2],X2[e+4>>2]=r,U2[316+b>>2]=w,X2[328+b>>2]=f,X2[332+b>>2]=n,X2[112+b>>2]=21244,U2[320+b>>2]=a,X2[324+b>>2]=i,U2[312+b>>2]=U2[i+4>>2],N2[X2[X2[A>>2]+8>>2]](A,472+b|0,648+b|0,48+b|0),X2[32+b>>2]=13540,X2[36+b>>2]=X2[n+56>>2],a=P2(I+P2(P2(P2(u*Q)+P2(B*g))+P2(_*E))),o=P2(M+P2(P2(P2(s*Q)+P2(o*g))+P2(k*E))),k=P2(m+P2(P2(P2(v*Q)+P2(Z*g))+P2(d*E))),X2[40+b>>2]=112+b,A=X2[n+60>>2],J2[A+60|0]){Z1(A,32+b|0,b+64|0,k,o,a,648+b|0,48+b|0,X2[A+56>>2]);break A}d1(A,32+b|0,b+64|0,k,o,a,648+b|0,48+b|0);break A;case 7:if(U2[284+b>>2]=a,X2[280+b>>2]=0,X2[112+b>>2]=15320,U2[276+b>>2]=U2[i+4>>2],X2[84+b>>2]=n,X2[80+b>>2]=0,X2[76+b>>2]=A,X2[68+b>>2]=0,X2[72+b>>2]=0,X2[64+b>>2]=20032,!D4(b+64|0,e,r,t,t,112+b|0))break A;if(a=U2[244+b>>2],o=U2[248+b>>2],k=U2[252+b>>2],!((u=P2(P2(P2(a*a)+P2(o*o))+P2(k*k)))>P2(9999999747378752e-20)))break A;if(!((B=U2[276+b>>2])>2]))break A;s=k,k=P2(P2(1)/P2(O2(u))),U2[252+b>>2]=s*k,U2[248+b>>2]=o*k,U2[244+b>>2]=a*k,X2[656+b>>2]=n,r=X2[(e=268+b|0)+4>>2],X2[(A=504+b|0)>>2]=X2[e>>2],X2[A+4>>2]=r,t=X2[(r=(A=244+b|0)+8|0)+4>>2],X2[(e=488+b|0)>>2]=X2[r>>2],X2[e+4>>2]=t,e=X2[264+b>>2],X2[496+b>>2]=X2[260+b>>2],X2[500+b>>2]=e,U2[512+b>>2]=B,e=X2[A+4>>2],X2[480+b>>2]=X2[A>>2],X2[484+b>>2]=e,X2[472+b>>2]=X2[f+8>>2],X2[476+b>>2]=648+b,P2(N2[X2[X2[i>>2]+12>>2]](i,472+b|0,1));break A;default:break e;}g=U2[(p=r+56|0)>>2],E=U2[r+52>>2],Q=U2[(X=t+56|0)>>2],V=U2[t+52>>2],w=U2[(G=e+56|0)>>2],h=U2[e+52>>2],o=U2[t+20>>2],k=U2[t+36>>2],u=U2[(J=t+40|0)>>2],B=U2[(C=t+8|0)>>2],_=U2[(U=t+24|0)>>2],F=U2[r+48>>2],N=U2[t+48>>2],R=U2[e+48>>2],d=U2[t+32>>2],Z=U2[t>>2],v=U2[t+16>>2],s=U2[t+4>>2],X2[500+b>>2]=0,Y=U2[(H=r+8|0)>>2],D=U2[(P=r+24|0)>>2],T=U2[(j=r+40|0)>>2],U2[512+b>>2]=P2(P2(B*Y)+P2(_*D))+P2(u*T),W=U2[r+4>>2],I=U2[r+20>>2],M=U2[r+36>>2],U2[508+b>>2]=P2(P2(B*W)+P2(_*I))+P2(u*M),U2[496+b>>2]=P2(P2(s*Y)+P2(o*D))+P2(k*T),U2[492+b>>2]=P2(P2(s*W)+P2(o*I))+P2(k*M),X2[484+b>>2]=0,m=U2[r>>2],x=U2[r+16>>2],y=U2[r+32>>2],U2[504+b>>2]=P2(P2(B*m)+P2(_*x))+P2(u*y),U2[488+b>>2]=P2(P2(s*m)+P2(o*x))+P2(k*y),U2[480+b>>2]=P2(P2(Z*Y)+P2(v*D))+P2(d*T),U2[476+b>>2]=P2(P2(Z*W)+P2(v*I))+P2(d*M),U2[472+b>>2]=P2(P2(Z*m)+P2(v*x))+P2(d*y),X2[532+b>>2]=0,X2[(c=524+b|0)>>2]=0,X2[c+4>>2]=0,X2[(c=516+b|0)>>2]=0,X2[c+4>>2]=0,f=X2[f+8>>2],Y=P2(N2[X2[X2[n>>2]+48>>2]](n)),S=X2[(l=e+8|0)+4>>2],X2[(c=128+b|0)>>2]=X2[l>>2],X2[c+4>>2]=S,l=X2[e+20>>2],X2[(c=136+b|0)>>2]=X2[e+16>>2],X2[c+4>>2]=l,S=X2[(l=e+24|0)+4>>2],X2[(c=144+b|0)>>2]=X2[l>>2],X2[c+4>>2]=S,l=X2[e+36>>2],X2[(c=152+b|0)>>2]=X2[e+32>>2],X2[c+4>>2]=l,S=X2[(l=e+40|0)+4>>2],X2[(c=160+b|0)>>2]=X2[l>>2],X2[c+4>>2]=S,l=X2[e+52>>2],X2[(c=168+b|0)>>2]=X2[e+48>>2],X2[c+4>>2]=l,l=X2[G+4>>2],X2[(c=176+b|0)>>2]=X2[G>>2],X2[c+4>>2]=l,c=X2[H+4>>2],X2[(G=192+b|0)>>2]=X2[H>>2],X2[G+4>>2]=c,X2[116+b>>2]=A,X2[112+b>>2]=20136,G=X2[e+4>>2],X2[120+b>>2]=X2[e>>2],X2[124+b>>2]=G,e=X2[r+4>>2],X2[184+b>>2]=X2[r>>2],X2[188+b>>2]=e,G=X2[r+36>>2],X2[(e=216+b|0)>>2]=X2[r+32>>2],X2[e+4>>2]=G,G=X2[P+4>>2],X2[(e=208+b|0)>>2]=X2[P>>2],X2[e+4>>2]=G,G=X2[r+20>>2],X2[(e=200+b|0)>>2]=X2[r+16>>2],X2[e+4>>2]=G,G=X2[j+4>>2],X2[(e=224+b|0)>>2]=X2[j>>2],X2[e+4>>2]=G,G=X2[r+52>>2],X2[(e=232+b|0)>>2]=X2[r+48>>2],X2[e+4>>2]=G,r=X2[p+4>>2],X2[(e=240+b|0)>>2]=X2[p>>2],X2[e+4>>2]=r,r=X2[C+4>>2],X2[(e=256+b|0)>>2]=X2[C>>2],X2[e+4>>2]=r,e=X2[t+4>>2],X2[248+b>>2]=X2[t>>2],X2[252+b>>2]=e,r=X2[U+4>>2],X2[(e=272+b|0)>>2]=X2[U>>2],X2[e+4>>2]=r,r=X2[t+20>>2],X2[(e=264+b|0)>>2]=X2[t+16>>2],X2[e+4>>2]=r,r=X2[J+4>>2],X2[(e=288+b|0)>>2]=X2[J>>2],X2[e+4>>2]=r,r=X2[t+36>>2],X2[(e=280+b|0)>>2]=X2[t+32>>2],X2[e+4>>2]=r,r=X2[X+4>>2],X2[(e=304+b|0)>>2]=X2[X>>2],X2[e+4>>2]=r,r=X2[t+52>>2],X2[(e=296+b|0)>>2]=X2[t+48>>2],X2[e+4>>2]=r,U2[316+b>>2]=Y,X2[328+b>>2]=f,X2[332+b>>2]=n,X2[112+b>>2]=21268,U2[320+b>>2]=a,X2[324+b>>2]=i,U2[312+b>>2]=U2[i+4>>2],N2[X2[X2[A>>2]+8>>2]](A,472+b|0,b+64|0,648+b|0),X2[60+b>>2]=0,X2[44+b>>2]=0,Y=P2(-V),D=P2(P2(P2(v*Y)-P2(Z*N))-P2(d*Q)),a=P2(D+P2(P2(P2(Z*F)+P2(v*E))+P2(d*g))),d=P2(D+P2(P2(P2(Z*R)+P2(v*h))+P2(d*w))),U2[48+b>>2]=U2[64+b>>2]+(a>2]=U2[68+b>>2]+(Z>2]=U2[72+b>>2]+(k>2]=U2[648+b>>2]+(d>2]=U2[652+b>>2]+(o>2]=U2[656+b>>2]+(u>2]+64>>2]](n,112+b|0,48+b|0,32+b|0)}else if(31==(0|p)){if(m=U2[(p=t+52|0)>>2],g=U2[(X=t+56|0)>>2],E=U2[e+52>>2],Q=U2[e+56>>2],o=U2[(G=t+20|0)>>2],k=U2[(J=t+36|0)>>2],w=U2[e+20>>2],h=U2[e+36>>2],F=U2[e+24>>2],u=U2[(C=t+24|0)>>2],N=U2[e+40>>2],B=U2[(U=t+40|0)>>2],_=U2[t+32>>2],d=U2[t>>2],Z=U2[t+16>>2],R=U2[e+32>>2],Y=U2[e>>2],D=U2[e+16>>2],T=U2[t+48>>2],W=U2[e+48>>2],v=U2[t+4>>2],I=U2[e+4>>2],M=U2[e+8>>2],s=U2[t+8>>2],X2[(H=172+b|0)>>2]=0,X2[(P=156+b|0)>>2]=0,X2[(j=140+b|0)>>2]=0,U2[(c=152+b|0)>>2]=P2(P2(s*M)+P2(u*F))+P2(B*N),U2[(l=148+b|0)>>2]=P2(P2(s*I)+P2(u*w))+P2(B*h),U2[(S=136+b|0)>>2]=P2(P2(v*M)+P2(o*F))+P2(k*N),U2[(x=132+b|0)>>2]=P2(P2(v*I)+P2(o*w))+P2(k*h),y=168+b|0,m=P2(-m),U2[y>>2]=P2(P2(P2(u*m)-P2(s*T))-P2(B*g))+P2(P2(P2(s*W)+P2(u*E))+P2(B*Q)),U2[(V=164+b|0)>>2]=P2(P2(P2(o*m)-P2(v*T))-P2(k*g))+P2(P2(P2(v*W)+P2(o*E))+P2(k*Q)),X2[124+b>>2]=0,U2[144+b>>2]=P2(P2(s*Y)+P2(u*D))+P2(B*R),U2[128+b>>2]=P2(P2(v*Y)+P2(o*D))+P2(k*R),U2[120+b>>2]=P2(P2(d*M)+P2(Z*F))+P2(_*N),U2[160+b>>2]=P2(P2(P2(Z*m)-P2(d*T))-P2(_*g))+P2(P2(P2(d*W)+P2(Z*E))+P2(_*Q)),U2[116+b>>2]=P2(P2(d*I)+P2(Z*w))+P2(_*h),U2[112+b>>2]=P2(P2(d*Y)+P2(Z*D))+P2(_*R),N2[X2[X2[A>>2]+8>>2]](A,112+b|0,48+b|0,32+b|0),m=U2[p>>2],g=U2[X>>2],E=U2[r+52>>2],Q=U2[r+56>>2],o=U2[G>>2],k=U2[J>>2],w=U2[r+20>>2],h=U2[r+36>>2],F=U2[r+24>>2],u=U2[C>>2],N=U2[r+40>>2],B=U2[U>>2],_=U2[t+32>>2],d=U2[t>>2],Z=U2[t+16>>2],R=U2[r+32>>2],Y=U2[r>>2],D=U2[r+16>>2],T=U2[t+48>>2],W=U2[r+48>>2],v=U2[t+4>>2],I=U2[r+4>>2],M=U2[r+8>>2],s=U2[t+8>>2],X2[H>>2]=0,X2[P>>2]=0,X2[j>>2]=0,U2[c>>2]=P2(P2(s*M)+P2(u*F))+P2(B*N),U2[l>>2]=P2(P2(s*I)+P2(u*w))+P2(B*h),U2[S>>2]=P2(P2(v*M)+P2(o*F))+P2(k*N),U2[x>>2]=P2(P2(v*I)+P2(o*w))+P2(k*h),m=P2(-m),U2[y>>2]=P2(P2(P2(u*m)-P2(s*T))-P2(B*g))+P2(P2(P2(s*W)+P2(u*E))+P2(B*Q)),U2[V>>2]=P2(P2(P2(o*m)-P2(v*T))-P2(k*g))+P2(P2(P2(v*W)+P2(o*E))+P2(k*Q)),X2[124+b>>2]=0,U2[144+b>>2]=P2(P2(s*Y)+P2(u*D))+P2(B*R),U2[128+b>>2]=P2(P2(v*Y)+P2(o*D))+P2(k*R),U2[120+b>>2]=P2(P2(d*M)+P2(Z*F))+P2(_*N),U2[160+b>>2]=P2(P2(P2(Z*m)-P2(d*T))-P2(_*g))+P2(P2(P2(d*W)+P2(Z*E))+P2(_*Q)),U2[116+b>>2]=P2(P2(d*I)+P2(Z*w))+P2(_*h),U2[112+b>>2]=P2(P2(d*Y)+P2(Z*D))+P2(_*R),N2[X2[X2[A>>2]+8>>2]](A,112+b|0,16+b|0,b),(o=U2[16+b>>2])>2]&&(U2[48+b>>2]=o),(o=U2[20+b>>2])>2]&&(U2[52+b>>2]=o),(o=U2[24+b>>2])>2]&&(U2[56+b>>2]=o),(o=U2[28+b>>2])>2]&&(U2[60+b>>2]=o),(o=U2[b>>2])>U2[32+b>>2]&&(U2[32+b>>2]=o),(o=U2[4+b>>2])>U2[36+b>>2]&&(U2[36+b>>2]=o),(o=U2[8+b>>2])>U2[40+b>>2]&&(U2[40+b>>2]=o),(o=U2[12+b>>2])>U2[44+b>>2]&&(U2[44+b>>2]=o),X2[504+b>>2]=i,X2[500+b>>2]=t,U2[492+b>>2]=a,X2[488+b>>2]=r,X2[484+b>>2]=e,X2[480+b>>2]=A,X2[476+b>>2]=f,X2[472+b>>2]=21292,X2[496+b>>2]=n,!(A=X2[n+72>>2])){if(X2[n+24>>2]<1)break A;for(A=32,e=1;;){if(r=X2[n+32>>2]+A|0,f=X2[r+32>>2],a=U2[r+16>>2],o=U2[r+20>>2],k=U2[r+24>>2],u=U2[r-32>>2],B=U2[r-16>>2],_=U2[r>>2],d=U2[r-28>>2],Z=U2[r-12>>2],v=U2[r+4>>2],s=U2[r-24>>2],g=U2[r-8>>2],E=U2[r+8>>2],X2[172+b>>2]=0,X2[156+b>>2]=0,X2[140+b>>2]=0,X2[124+b>>2]=0,Q=U2[t+32>>2],w=U2[t+36>>2],h=U2[t+40>>2],U2[152+b>>2]=P2(P2(s*Q)+P2(g*w))+P2(E*h),U2[148+b>>2]=P2(P2(d*Q)+P2(Z*w))+P2(v*h),U2[144+b>>2]=P2(P2(u*Q)+P2(B*w))+P2(_*h),F=U2[t+16>>2],N=U2[t+20>>2],R=U2[t+24>>2],U2[136+b>>2]=P2(P2(s*F)+P2(g*N))+P2(E*R),U2[132+b>>2]=P2(P2(d*F)+P2(Z*N))+P2(v*R),U2[128+b>>2]=P2(P2(u*F)+P2(B*N))+P2(_*R),Y=s,s=U2[t>>2],m=g,g=U2[t+4>>2],D=E,E=U2[t+8>>2],U2[120+b>>2]=P2(P2(Y*s)+P2(m*g))+P2(D*E),U2[116+b>>2]=P2(P2(d*s)+P2(Z*g))+P2(v*E),U2[112+b>>2]=P2(P2(u*s)+P2(B*g))+P2(_*E),U2[168+b>>2]=P2(P2(P2(a*Q)+P2(o*w))+P2(k*h))+U2[t+56>>2],U2[164+b>>2]=P2(P2(P2(a*F)+P2(o*N))+P2(k*R))+U2[t+52>>2],U2[160+b>>2]=P2(P2(P2(a*s)+P2(o*g))+P2(k*E))+U2[t+48>>2],X2[68+b>>2]=1065353216,X2[72+b>>2]=1,X2[76+b>>2]=-1,X2[88+b>>2]=r=e-1|0,i=X2[504+b>>2],X2[84+b>>2]=i,X2[80+b>>2]=f,X2[64+b>>2]=21328,U2[68+b>>2]=U2[i+4>>2],X2[668+b>>2]=r,X2[664+b>>2]=-1,X2[652+b>>2]=f,r=X2[476+b>>2],X2[648+b>>2]=r,X2[656+b>>2]=X2[r+8>>2],X2[660+b>>2]=112+b,M4(X2[480+b>>2],X2[484+b>>2],X2[488+b>>2],648+b|0,b+64|0,U2[492+b>>2]),X2[n+24>>2]<=(0|e))break A;A=A+80|0,e=e+1|0,t=X2[500+b>>2]}}f=X2[(r=56+b|0)+4>>2],X2[(e=120+b|0)>>2]=X2[r>>2],X2[e+4>>2]=f,f=X2[(r=40+b|0)+4>>2],X2[(e=136+b|0)>>2]=X2[r>>2],X2[e+4>>2]=f,e=X2[52+b>>2],X2[112+b>>2]=X2[48+b>>2],X2[116+b>>2]=e,e=X2[36+b>>2],X2[128+b>>2]=X2[32+b>>2],X2[132+b>>2]=e,l4(X2[A>>2],112+b|0,472+b|0)}K2=672+b|0}function S4(A,e,r,f,i,a){A|=0,e|=0,r|=0,f=P2(f),i|=0;var n,b,t;return X2[52+(K2=t=K2+-64|0)>>2]=a|=0,X2[48+t>>2]=i,X2[56+t>>2]=X2[A+220>>2],i=X2[A+212>>2],U2[i+4>>2]>=f&&(b=X2[4+(n=r+8|0)>>2],X2[(a=32+t|0)>>2]=X2[n>>2],X2[a+4>>2]=b,b=X2[4+(n=e+8|0)>>2],X2[(a=16+t|0)>>2]=X2[n>>2],X2[a+4>>2]=b,a=X2[r+4>>2],X2[24+t>>2]=X2[r>>2],X2[28+t>>2]=a,r=X2[e+4>>2],X2[8+t>>2]=X2[e>>2],X2[12+t>>2]=r,U2[40+t>>2]=f,X2[t>>2]=X2[A+216>>2],X2[4+t>>2]=48+t,f=P2(N2[X2[X2[i>>2]+12>>2]](i,t,1))),K2=t+64|0,P2(f)}function X4(A,e,r,f,x,i){var a,n,b,t,o,c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C,h,F,Y,m,N,y,V,R,D=0,T=(P2(0),0),W=0,I=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),0);P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);K2=R=K2-368|0,T=X2[4+(k=r+8|0)>>2],X2[(D=312+R|0)>>2]=X2[(W=k)>>2],X2[4+D>>2]=T,n=X2[4+(W=r+24|0)>>2],X2[(D=328+R|0)>>2]=X2[(T=W)>>2],X2[4+D>>2]=n,Z=X2[4+(T=r+40|0)>>2],X2[(D=344+R|0)>>2]=X2[T>>2],X2[4+D>>2]=Z,u=X2[4+(n=r+56|0)>>2],X2[(D=360+R|0)>>2]=X2[n>>2],X2[4+D>>2]=u,_=X2[4+(Z=f+8|0)>>2],X2[(D=248+R|0)>>2]=X2[Z>>2],X2[4+D>>2]=_,D=X2[r+4>>2],X2[304+R>>2]=X2[r>>2],X2[308+R>>2]=D,D=X2[r+20>>2],X2[320+R>>2]=X2[r+16>>2],X2[324+R>>2]=D,D=X2[r+36>>2],X2[336+R>>2]=X2[r+32>>2],X2[340+R>>2]=D,D=X2[r+52>>2],X2[352+R>>2]=X2[r+48>>2],X2[356+R>>2]=D,D=X2[f+4>>2],X2[240+R>>2]=X2[f>>2],X2[244+R>>2]=D,s=X2[4+(u=f+24|0)>>2],X2[(D=264+R|0)>>2]=X2[u>>2],X2[4+D>>2]=s,g=X2[4+(_=f+40|0)>>2],X2[(D=280+R|0)>>2]=X2[_>>2],X2[4+D>>2]=g,E=X2[4+(s=f+56|0)>>2],X2[(D=296+R|0)>>2]=X2[s>>2],X2[4+D>>2]=E,D=X2[f+20>>2],X2[256+R>>2]=X2[f+16>>2],X2[260+R>>2]=D,D=X2[f+36>>2],X2[272+R>>2]=X2[f+32>>2],X2[276+R>>2]=D,D=X2[f+52>>2],X2[288+R>>2]=X2[f+48>>2],X2[292+R>>2]=D,E4(304+R|0,240+R|0,8+R|0,224+R|0),N=U2[16+R>>2],y=U2[8+R>>2],V=U2[12+R>>2],l=U2[224+R>>2],X2[(D=g=20+R|0)>>2]=0,X2[4+D>>2]=0,X2[(D=E=32+R|0)>>2]=0,X2[4+D>>2]=0,X2[(Q=28+R|0)>>2]=1065353216,X2[(D=C=40+R|0)>>2]=0,X2[4+D>>2]=0,X2[(D=52+R|0)>>2]=0,X2[4+D>>2]=0,X2[(h=48+R|0)>>2]=1065353216,X2[(I=G=60+R|0)>>2]=0,X2[4+I>>2]=0,X2[(I=68+R|0)>>2]=0,X2[12+R>>2]=0,X2[16+R>>2]=0,X2[8+R>>2]=1065353216,Q4(304+R|0,224+R|0),X2[D>>2]=0,X2[(F=36+R|0)>>2]=0,X2[g>>2]=0,a=U2[224+R>>2],b=U2[228+R>>2],o=U2[232+R>>2],t=U2[236+R>>2],c=P2(P2(2)/P2(P2(P2(P2(a*a)+P2(b*b))+P2(o*o))+P2(t*t))),B=P2(o*c),v=P2(b*B),w=P2(a*c),d=P2(t*w),U2[44+R>>2]=v+d,Y=P2(a*B),c=P2(b*c),m=P2(t*c),U2[C>>2]=Y-m,U2[E>>2]=v-d,v=P2(a*w),b=P2(b*c),U2[h>>2]=P2(1)-P2(v+b),o=P2(o*B),U2[Q>>2]=P2(1)-P2(v+o),a=P2(a*c),t=P2(t*B),U2[24+R>>2]=a+t,U2[16+R>>2]=Y+m,U2[12+R>>2]=a-t,U2[8+R>>2]=P2(1)-P2(b+o),N2[X2[X2[e>>2]+8>>2]](e,8+R|0,224+R|0,208+R|0),b=U2[208+R>>2],t=U2[212+R>>2],o=U2[216+R>>2],c=U2[224+R>>2],B=U2[228+R>>2],a=U2[232+R>>2],v=P2(N2[X2[X2[e>>2]+16>>2]](e)),X2[220+R>>2]=0,X2[236+R>>2]=0,w=P2(a+P2(0)),a=P2(y*l),d=P2(a*a),a=P2(l*V),d=P2(d+P2(a*a)),a=P2(l*N),a=P2(v*P2(O2(P2(d+P2(a*a))))),U2[232+R>>2]=w-a,U2[228+R>>2]=P2(B+P2(0))-a,U2[224+R>>2]=P2(c+P2(0))-a,U2[216+R>>2]=a+o,U2[212+R>>2]=a+t,U2[208+R>>2]=a+b,Q=X2[4+k>>2],X2[D>>2]=X2[k>>2],X2[4+D>>2]=Q,D=X2[r+20>>2],X2[G>>2]=X2[r+16>>2],X2[4+G>>2]=D,D=X2[4+W>>2],X2[I>>2]=X2[W>>2],X2[4+I>>2]=D,k=X2[r+36>>2],X2[(D=76+R|0)>>2]=X2[r+32>>2],X2[4+D>>2]=k,k=X2[4+T>>2],X2[(D=84+R|0)>>2]=X2[T>>2],X2[4+D>>2]=k,W=X2[r+52>>2],X2[(D=92+R|0)>>2]=X2[r+48>>2],X2[4+D>>2]=W,T=X2[4+n>>2],X2[(W=k=100+R|0)>>2]=X2[n>>2],X2[4+W>>2]=T,T=X2[4+Z>>2],X2[(W=116+R|0)>>2]=X2[Z>>2],X2[4+W>>2]=T,X2[8+R>>2]=22200,W=X2[r+4>>2],X2[44+R>>2]=X2[r>>2],X2[48+R>>2]=W,r=X2[f+4>>2],X2[108+R>>2]=X2[f>>2],X2[112+R>>2]=r,T=X2[f+52>>2],X2[(r=156+R|0)>>2]=X2[f+48>>2],X2[r+4>>2]=T,n=X2[4+s>>2],X2[(T=W=164+R|0)>>2]=X2[s>>2],X2[4+T>>2]=n,n=X2[4+u>>2],X2[(T=132+R|0)>>2]=X2[u>>2],X2[4+T>>2]=n,n=X2[f+20>>2],X2[(T=124+R|0)>>2]=X2[f+16>>2],X2[4+T>>2]=n,n=X2[4+_>>2],X2[(T=148+R|0)>>2]=X2[_>>2],X2[4+T>>2]=n,n=X2[f+36>>2],X2[(T=140+R|0)>>2]=X2[f+32>>2],X2[4+T>>2]=n,X2[192+R>>2]=x,U2[196+R>>2]=i,X2[200+R>>2]=e,a=U2[96+R>>2],b=U2[160+R>>2],i=U2[D>>2],t=U2[r>>2],l=U2[k>>2],o=U2[W>>2],X2[188+R>>2]=A,i=P2(t-i),a=P2(b-a),b=P2(o-l),t=P2(P2(1)/P2(O2(P2(P2(P2(i*i)+P2(a*a))+P2(b*b))))),c=(l=P2(b*t))==P2(0)?P2(0xde0b6b000000000):P2(P2(1)/l),X2[F>>2]=c>2]=B>2]=c,U2[16+R>>2]=B,i=P2((c=i)*t),U2[40+R>>2]=P2(b*l)+P2(P2(c*i)+P2(a*o)),i=i==P2(0)?P2(0xde0b6b000000000):P2(P2(1)/i),U2[12+R>>2]=i,X2[28+R>>2]=i>2],N2[X2[X2[A>>2]+24>>2]](A,352+R|0,288+R|0,8+R|0,224+R|0,208+R|0),K2=368+R|0}function J4(A,e,r){var f=0,i=0,i=e|=0,a=0|N2[X2[X2[(r|=0)>>2]+28>>2]](r,X2[(A|=0)+28>>2]);if(X2[i>>2]=a,i=e,a=0|N2[X2[X2[r>>2]+28>>2]](r,X2[A+32>>2]),X2[i+4>>2]=a,f=0|N2[X2[X2[r>>2]+40>>2]](r,A),i=0|N2[X2[X2[r>>2]+28>>2]](r,f),(X2[e+8>>2]=i)&&N2[X2[X2[r>>2]+48>>2]](r,f),X2[e+12>>2]=X2[A+4>>2],X2[e+24>>2]=J2[A+21|0],X2[e+40>>2]=X2[A+24>>2],U2[e+44>>2]=U2[A+16>>2],X2[e+48>>2]=J2[A+20|0],r=X2[A+12>>2],f=X2[A+40>>2],X2[e+28>>2]=X2[A+36>>2],X2[e+32>>2]=f,X2[e+20>>2]=r,X2[e+36>>2]=0,X2[e+16>>2]=X2[A+8>>2],r=X2[A+28>>2],!((0|(f=X2[r+548>>2]))<1)&&(r=X2[r+556>>2],X2[r>>2]==(0|A)&&(X2[e+36>>2]=1),1!=(0|f)))for(r=r+4|0,f=f-1|0;;)if(X2[r>>2]==(0|A)&&(X2[e+36>>2]=1),r=r+4|0,!(f=f-1|0))break;if(r=X2[A+32>>2],!((0|(f=X2[r+548>>2]))<1)&&(r=X2[r+556>>2],X2[r>>2]==(0|A)&&(X2[e+36>>2]=1),1!=(0|f)))for(r=r+4|0,f=f-1|0;;)if(X2[r>>2]==(0|A)&&(X2[e+36>>2]=1),r=r+4|0,!(f=f-1|0))break;return 22384}function U4(A,e,r,f,i,a,n,b,t,o){P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var c,k,u,s,l,B,v,d,Z,_,g,E,Q,w,G,C=X2[a+4>>2];X2[A>>2]=X2[a>>2],X2[A+4>>2]=C,Q=X2[(a=a+8|0)+4>>2],X2[(C=A+8|0)>>2]=X2[a>>2],X2[4+C>>2]=Q,a=U2[e+24>>2],Q=U2[e+20>>2],k=U2[e+40>>2],c=U2[e+36>>2],B=U2[e+8>>2],v=U2[e>>2],d=U2[e+4>>2],Z=U2[e+16>>2],e=U2[e+32>>2],s=U2[f+4>>2],u=U2[f+8>>2],f=U2[f>>2],X2[A+28>>2]=0,_=e,e=U2[C>>2],C=U2[A+4>>2],l=P2(P2(s*e)-P2(u*C)),g=c,E=u,u=U2[A>>2],c=P2(P2(E*u)-P2(e*f)),s=P2(P2(C*f)-P2(s*u)),f=P2(P2(P2(_*l)+P2(g*c))+P2(k*s)),U2[A+24>>2]=f,a=P2(P2(P2(l*Z)+P2(c*Q))+P2(s*a)),U2[A+20>>2]=a,s=P2(P2(P2(l*v)+P2(d*c))+P2(s*B)),U2[A+16>>2]=s,B=U2[r+24>>2],v=U2[r+20>>2],d=U2[r+40>>2],Z=U2[r+36>>2],w=U2[r+8>>2],G=U2[r>>2],_=U2[r+4>>2],g=U2[r+16>>2],k=U2[r+32>>2],l=U2[i+4>>2],c=U2[i>>2],Q=U2[i+8>>2],X2[A+44>>2]=0,E=k,k=P2(P2(C*Q)-P2(e*l)),e=P2(P2(e*c)-P2(u*Q)),C=P2(P2(u*l)-P2(C*c)),u=P2(P2(P2(E*k)+P2(Z*e))+P2(d*C)),U2[A+40>>2]=u,l=P2(P2(P2(k*g)+P2(e*v))+P2(C*B)),U2[A+36>>2]=l,e=P2(P2(P2(G*k)+P2(_*e))+P2(C*w)),U2[A+32>>2]=e,C=U2[n+8>>2],c=U2[n+4>>2],Q=U2[n>>2],X2[A+60>>2]=0,Q=P2(Q*s),U2[A+48>>2]=Q,c=P2(c*a),U2[A+52>>2]=c,C=P2(C*f),U2[A+56>>2]=C,k=U2[t+8>>2],B=U2[t+4>>2],v=U2[t>>2],X2[A+76>>2]=0,v=P2(v*e),U2[A+64>>2]=v,B=P2(B*l),U2[A+68>>2]=B,k=P2(k*u),U2[A+72>>2]=k,U2[A+80>>2]=P2(P2(P2(P2(P2(s*Q)+P2(a*c))+P2(f*C))+b)+o)+P2(P2(P2(e*v)+P2(l*B))+P2(u*k))}function H4(A){return X2[(A|=0)>>2]=22316,0|A}function P4(A){var e=0,r=0,f=0,i=0,a=0,a=f=X2[A+8>>2],n=(r=X2[A+32>>2])?X2[A+40>>2]:0,b=r,t=(e=X2[A+52>>2])?X2[A+60>>2]:0;if(r=e,i=0,(e=X2[A+72>>2])&&(i=X2[A+80>>2]),P2(N2[X2[X2[f>>2]+12>>2]](a,n,b,t,r,i,e,X2[A+4>>2],X2[A+20>>2],X2[A+24>>2])),(0|(e=X2[A+32>>2]))<=-1)for(X2[A+36>>2]<=-1&&((r=X2[A+40>>2])&&J2[A+44|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+36>>2]=0,X2[A+40>>2]=0,S2[A+44|0]=1),f=e<<2;;)if(f=f+4|(X2[X2[A+40>>2]+f>>2]=0),!((r=e)>>>0<=(e=e+1|0)>>>0))break;if(((X2[A+32>>2]=0)|(e=X2[A+52>>2]))<=-1)for(X2[A+56>>2]<=-1&&((r=X2[A+60>>2])&&J2[A- -64|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+56>>2]=0,X2[A+60>>2]=0,S2[A- -64|0]=1),f=e<<2;;)if(f=f+4|(X2[X2[A+60>>2]+f>>2]=0),!((r=e)>>>0<=(e=e+1|0)>>>0))break;if(((X2[A+52>>2]=0)|(e=X2[A+72>>2]))<=-1)for(X2[A+76>>2]<=-1&&((r=X2[A+80>>2])&&J2[A+84|0]&&(X2[6259]=X2[6259]+1,q2(X2[r-4>>2])),X2[A+76>>2]=0,X2[A+80>>2]=0,S2[A+84|0]=1),f=e<<2;;)if(f=f+4|(X2[X2[A+80>>2]+f>>2]=0),!((r=e)>>>0<=(e=e+1|0)>>>0))break;X2[A+72>>2]=0}function j4(A){var e=0;return X2[(A|=0)>>2]=22464,J2[A+288|0]&&(e=X2[A+220>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+220>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]))),(e=X2[A+212>>2])&&(N2[X2[X2[e>>2]>>2]](e),(e=X2[A+212>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]))),J2[A+289|0]&&(e=X2[A+216>>2],N2[X2[X2[e>>2]>>2]](e),(e=X2[A+216>>2])&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2]))),(e=X2[A+332>>2])&&J2[A+336|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+332>>2]=0,S2[A+336|0]=1,X2[(e=A+324|0)>>2]=0,X2[e+4>>2]=0,(e=X2[A+304>>2])&&J2[A+308|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+304>>2]=0,S2[A+308|0]=1,X2[(e=A+296|0)>>2]=0,X2[e+4>>2]=0,(e=X2[A+256>>2])&&J2[A+260|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+256>>2]=0,S2[A+260|0]=1,X2[(e=A+248|0)>>2]=0,X2[e+4>>2]=0,(e=X2[A+236>>2])&&J2[A+240|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+236>>2]=0,S2[A+240|0]=1,X2[(e=A+228|0)>>2]=0,X2[e+4>>2]=0,(e=X2[A+204>>2])&&J2[A+208|0]&&(X2[6259]=X2[6259]+1,q2(X2[e-4>>2])),X2[A+204>>2]=0,S2[A+208|0]=1,X2[(e=A+196|0)>>2]=0,X2[e+4>>2]=0,W4(A),0|A}function z4(A,e){return X2[X2[(A|=0)+236>>2]+((e|=0)<<2)>>2]}function O4(A,e){N2[X2[X2[(A|=0)>>2]+68>>2]](A,e|=0)}function K4(A,e,r){var f,i,a,n,b,t,o,c,k,u,s,l,B,v,d;P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);(d=U2[A+404>>2])!=P2(0)&&(i=U2[e+8>>2],f=U2[e+4>>2],a=U2[A+408>>2],U2[A+372>>2]=P2(d*P2(U2[e>>2]*a))+U2[A+372>>2],n=f,f=U2[A+412>>2],U2[(o=A+376|0)>>2]=P2(d*P2(n*f))+U2[o>>2],n=d,d=U2[A+416>>2],U2[(o=A+380|0)>>2]=P2(n*P2(i*d))+U2[o>>2],o=U2[A+612>>2],c=U2[A+364>>2],k=U2[A+356>>2],u=U2[A+360>>2],s=U2[A+608>>2],l=U2[A+348>>2],B=U2[A+340>>2],v=U2[A+344>>2],t=U2[r+4>>2],i=P2(d*U2[e+8>>2]),f=P2(f*U2[e+4>>2]),b=U2[r+8>>2],d=P2(P2(t*i)-P2(f*b)),a=P2(a*U2[e>>2]),n=P2(a*b),b=U2[r>>2],i=P2(n-P2(i*b)),f=P2(P2(f*b)-P2(a*t)),U2[A+388>>2]=P2(P2(P2(P2(U2[A+324>>2]*d)+P2(U2[A+328>>2]*i))+P2(f*U2[A+332>>2]))*U2[A+604>>2])+U2[A+388>>2],U2[(e=A+392|0)>>2]=P2(s*P2(P2(P2(d*B)+P2(i*v))+P2(f*l)))+U2[e>>2],U2[(A=A+396|0)>>2]=P2(o*P2(P2(P2(d*k)+P2(i*u))+P2(f*c)))+U2[A>>2])}function L4(A){X2[(A|=0)>>2]=22316,X2[6259]=X2[6259]+1,q2(X2[A-4>>2])}function q4(A,e,r){P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0);var f,i,a=U2[A+552>>2],n=U2[e>>2],b=U2[A+568>>2],t=U2[e+4>>2],o=U2[A+584>>2],c=U2[e+8>>2],k=U2[A+620>>2],u=U2[A+636>>2],s=U2[A+652>>2],l=P2(P2(P2(k*U2[r>>2])+P2(u*U2[r+4>>2]))+P2(s*U2[r+8>>2])),B=U2[e+16>>2],v=U2[e+20>>2],d=U2[e+24>>2],Z=P2(P2(P2(k*U2[r+16>>2])+P2(u*U2[r+20>>2]))+P2(s*U2[r+24>>2])),_=P2(P2(P2(P2(P2(a*n)+P2(b*t))+P2(o*c))*l)+P2(P2(P2(P2(a*B)+P2(b*v))+P2(o*d))*Z)),g=a;return a=U2[e+32>>2],f=b,b=U2[e+36>>2],i=o,o=U2[e+40>>2],s=P2(P2(P2(k*U2[r+32>>2])+P2(u*U2[r+36>>2]))+P2(s*U2[r+40>>2])),k=n,n=U2[A+556>>2],u=t,t=U2[A+572>>2],e=c,c=U2[A+588>>2],P2(B2(P2(_+P2(P2(P2(P2(g*a)+P2(f*b))+P2(i*o))*s)),P2(P2(P2(P2(P2(P2(k*n)+P2(u*t))+P2(e*c))*l)+P2(P2(P2(P2(B*n)+P2(v*t))+P2(d*c))*Z))+P2(P2(P2(P2(a*n)+P2(b*t))+P2(o*c))*s)))*U2[A+732>>2])}function $4(A,e,r){var f,i,a,x,y,V,p,M,S,n,X,b,t,o,c=P2(0),k=P2(0),u=P2(0),s=P2(0),l=P2(0),B=P2(0),v=P2(0),d=P2(0),Z=P2(0),_=(P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),P2(0),0),g=P2(0),E=U2[e+52>>2],Q=U2[e+56>>2],w=U2[A+96>>2],G=U2[A+100>>2],C=U2[A+104>>2],c=U2[e+20>>2],B=U2[e+24>>2],h=U2[A- -64>>2],F=U2[A+80>>2],Y=U2[A+52>>2],m=U2[A+68>>2],N=U2[A+84>>2],R=U2[A+56>>2],l=U2[e+36>>2],D=U2[A+72>>2],k=U2[e+40>>2],T=U2[A+88>>2],W=U2[e+48>>2],u=U2[e+8>>2],s=U2[e>>2],v=U2[e+4>>2],Z=U2[e+16>>2],I=U2[A+48>>2],d=U2[e+32>>2];X2[A+1296>>2]=e=0,X2[A+1280>>2]=0,X2[A+1264>>2]=0,X2[A+1248>>2]=0,U2[(x=A+1276|0)>>2]=P2(P2(R*d)+P2(D*l))+P2(T*k),U2[(y=A+1272|0)>>2]=P2(P2(Y*d)+P2(m*l))+P2(N*k),U2[(V=A+1268|0)>>2]=P2(P2(I*d)+P2(h*l))+P2(F*k),U2[(p=A+1260|0)>>2]=P2(P2(R*Z)+P2(D*c))+P2(T*B),U2[(M=A+1256|0)>>2]=P2(P2(Y*Z)+P2(m*c))+P2(N*B),U2[(S=A+1252|0)>>2]=P2(P2(I*Z)+P2(h*c))+P2(F*B),U2[(n=A+1244|0)>>2]=P2(P2(s*R)+P2(v*D))+P2(u*T),U2[(X=A+1240|0)>>2]=P2(P2(s*Y)+P2(v*m))+P2(u*N),U2[A+1236>>2]=P2(P2(I*s)+P2(h*v))+P2(F*u),U2[(b=A+1292|0)>>2]=Q+P2(P2(P2(d*w)+P2(l*G))+P2(k*C)),U2[(t=A+1288|0)>>2]=E+P2(P2(P2(Z*w)+P2(c*G))+P2(B*C)),U2[(o=A+1284|0)>>2]=W+P2(P2(P2(s*w)+P2(v*G))+P2(u*C)),Q=U2[r+52>>2],W=U2[r+56>>2],w=U2[A+160>>2],G=U2[A+164>>2],C=U2[A+168>>2],c=U2[r+20>>2],B=U2[r+24>>2],h=U2[A+128>>2],F=U2[A+144>>2],Y=U2[A+116>>2],m=U2[A+132>>2],N=U2[A+148>>2],R=U2[A+120>>2],T=U2[A+136>>2],l=U2[r+36>>2],I=U2[A+152>>2],k=U2[r+40>>2],f=U2[r+48>>2],u=U2[r+8>>2],s=U2[r>>2],v=U2[r+4>>2],Z=U2[r+16>>2],E=U2[A+112>>2],d=U2[r+32>>2],X2[A+1360>>2]=0,X2[A+1344>>2]=0,X2[A+1328>>2]=0,X2[A+1312>>2]=0,D=P2(P2(P2(R*d)+P2(T*l))+P2(I*k)),U2[A+1340>>2]=D,U2[A+1336>>2]=P2(P2(Y*d)+P2(m*l))+P2(N*k),U2[A+1332>>2]=P2(P2(E*d)+P2(h*l))+P2(F*k),U2[A+1324>>2]=P2(P2(R*Z)+P2(T*c))+P2(I*B),U2[A+1320>>2]=P2(P2(Y*Z)+P2(m*c))+P2(N*B),U2[A+1316>>2]=P2(P2(E*Z)+P2(h*c))+P2(F*B),U2[A+1308>>2]=P2(P2(s*R)+P2(v*T))+P2(u*I),U2[A+1304>>2]=P2(P2(s*Y)+P2(v*m))+P2(u*N),U2[A+1300>>2]=P2(P2(E*s)+P2(h*v))+P2(F*u),l=P2(W+P2(P2(P2(d*w)+P2(l*G))+P2(k*C))),U2[A+1356>>2]=l,k=P2(Q+P2(P2(P2(Z*w)+P2(c*G))+P2(B*C))),U2[A+1352>>2]=k,s=P2(f+P2(P2(P2(s*w)+P2(v*G))+P2(u*C))),U2[A+1348>>2]=s,c=U2[b>>2],v=U2[o>>2],Z=U2[t>>2],w=U2[n>>2],h=U2[M>>2],F=U2[y>>2],G=U2[X>>2],Y=U2[p>>2],m=U2[V>>2],N=U2[x>>2],R=U2[S>>2],C=U2[A+1236>>2],X2[A+1440>>2]=0,u=P2(l-c),T=P2(P2(h*N)-P2(Y*F)),I=P2(P2(Y*m)-P2(N*R)),l=P2(P2(F*R)-P2(h*m)),c=P2(P2(1)/P2(P2(P2(C*T)+P2(G*I))+P2(w*l))),B=P2(P2(P2(h*C)-P2(R*G))*c),s=P2(s-v),d=P2(l*c),v=P2(k-Z),E=P2(P2(P2(m*G)-P2(F*C))*c),l=P2(P2(u*B)+P2(P2(s*d)+P2(v*E))),U2[A+1436>>2]=l,W=P2(P2(P2(R*w)-P2(Y*C))*c),f=P2(I*c),b=P2(P2(P2(N*C)-P2(m*w))*c),k=P2(P2(u*W)+P2(P2(s*f)+P2(v*b))),U2[A+1432>>2]=k,o=P2(P2(P2(Y*G)-P2(h*w))*c),t=P2(T*c),n=P2(P2(P2(F*w)-P2(N*G))*c),c=P2(P2(u*o)+P2(P2(s*t)+P2(v*n))),U2[A+1428>>2]=c,U2[A+940>>2]=c,u=U2[A+680>>2],(s=U2[A+696>>2])>2]=0:(U2[A+908>>2]=c-u,e=3,u!=s&&(U2[A+924>>2]=c-s,e=4)),U2[A+944>>2]=k,X2[A+956>>2]=e,c=U2[A+684>>2],(u=U2[A+700>>2])>2]=0:(U2[A+912>>2]=k-c,e=3,c!=u&&(U2[A+928>>2]=k-u,e=4)),U2[A+948>>2]=l,X2[A+960>>2]=e,r=A+964|0,c=U2[A+688>>2],(k=U2[A+704>>2])>2]=0:(U2[A+916>>2]=l-c,e=3,c!=k&&(U2[A+932>>2]=l-k,e=4)),X2[r>>2]=e,T=U2[A+1308>>2],I=U2[A+1324>>2],l=P2(P2(P2(d*T)+P2(E*I))+P2(B*D)),k=U2[A+1304>>2],u=U2[A+1320>>2],s=U2[A+1336>>2],a=P2(P2(P2(d*k)+P2(E*u))+P2(B*s)),v=U2[A+1332>>2],Z=U2[A+1300>>2],c=P2(Z*d),d=U2[A+1316>>2],c=P2(P2(v*B)+P2(c+P2(d*E))),Q=P2(P2(P2(f*T)+P2(b*I))+P2(W*D)),i=P2(P2(P2(f*k)+P2(b*u))+P2(W*s)),B=P2(P2(v*W)+P2(P2(Z*f)+P2(d*b))),W=P2(P2(P2(t*T)+P2(n*I))+P2(o*D)),f=P2(P2(P2(t*k)+P2(n*u))+P2(o*s)),E=P2(P2(v*o)+P2(P2(Z*t)+P2(d*n)));A:{e:{r:{f:{i:{a:{n:{b:{t:{o:{c:{k:{u:{s:{l:{B:switch(X2[A+1232>>2]){case 0:if(cP2(-1)))break l;_=A,g=B2(P2(-a),l),U2[_+1364>>2]=g,_=A+1368|0,g=q(P2(m2(P2(z2(c,P2(-1))),P2(1)))),U2[_>>2]=g,c=B2(P2(-B),E);break u}X2[A+1368>>2]=1070141403,_=A,g=B2(f,i),U2[_+1364>>2]=g;break s;case 1:if(BP2(-1)))break k;_=A,g=B2(Q,i),U2[_+1364>>2]=g,_=A+1368|0,g=B2(c,E),U2[_>>2]=g,c=q(P2(m2(P2(z2(P2(-B),P2(-1))),P2(1))));break c}X2[A+1368>>2]=0,_=A,g=B2(P2(-W),l),U2[_+1364>>2]=g,c=P2(-1.5707963705062866);break c;case 2:if(aP2(-1)))break o;_=A,g=q(P2(m2(P2(z2(P2(-a),P2(-1))),P2(1)))),U2[_+1364>>2]=g,_=A+1368|0,g=B2(c,l),U2[_>>2]=g,c=B2(f,i);break b}X2[A+1364>>2]=-1077342245,_=A+1368|0,g=B2(P2(-B),E),U2[_>>2]=g;break t;case 3:if(fP2(-1)))break n;_=A,g=B2(P2(-a),i),U2[_+1364>>2]=g,_=A+1368|0,g=B2(P2(-W),E),U2[_>>2]=g,c=q(P2(m2(P2(z2(f,P2(-1))),P2(1))));break a}_=A+1368|(X2[A+1364>>2]=0),g=B2(Q,l),U2[_>>2]=g,c=P2(1.5707963705062866);break a;case 4:if(QP2(-1)))break i;_=A,g=q(P2(m2(P2(z2(Q,P2(-1))),P2(1)))),U2[_+1364>>2]=g,_=A+1368|0,g=B2(P2(-W),l),U2[_>>2]=g,c=B2(P2(-B),i);break f}X2[A+1364>>2]=1070141403,X2[A+1368>>2]=0,c=B2(c,E);break f;case 5:if(WP2(-1)))break r;_=A,g=B2(Q,l),U2[_+1364>>2]=g,_=A+1368|0,g=q(P2(m2(P2(z2(P2(-W),P2(-1))),P2(1)))),U2[_>>2]=g,c=B2(f,E);break e}X2[A+1364>>2]=0,X2[A+1368>>2]=-1077342245,c=B2(P2(-B),P2(-c));break e;default:break B;}c=U2[A+1420>>2],B=U2[A+1416>>2],l=U2[A+1412>>2],k=U2[A+1404>>2],u=U2[A+1400>>2],s=U2[A+1396>>2],v=U2[A+1388>>2],Z=U2[A+1384>>2],d=U2[A+1380>>2];break A}X2[A+1368>>2]=-1077342245,_=A,g=P2(-B2(f,i)),U2[_+1364>>2]=g}c=P2(0)}X2[A+1408>>2]=0,U2[A+1372>>2]=c,X2[A+1424>>2]=0,X2[A+1392>>2]=0,u=P2(P2(Z*N)-P2(v*w)),s=P2(P2(v*Y)-P2(d*N)),c=P2(P2(Z*u)-P2(d*s)),k=P2(P2(d*w)-P2(Z*Y)),B=P2(P2(v*s)-P2(Z*k)),l=P2(P2(d*k)-P2(v*u)),v=P2(P2(Y*s)-P2(w*u)),Z=P2(P2(w*k)-P2(N*s)),d=P2(P2(N*u)-P2(Y*k));break A}X2[A+1368>>2]=0,_=A,g=P2(-B2(P2(-W),l)),U2[_+1364>>2]=g,c=P2(1.5707963705062866)}X2[A+1424>>2]=0,U2[A+1372>>2]=c,X2[A+1408>>2]=0,X2[A+1392>>2]=0,l=P2(P2(d*F)-P2(v*h)),B=P2(P2(v*G)-P2(Z*F)),k=P2(P2(d*l)-P2(Z*B)),c=P2(P2(Z*h)-P2(d*G)),u=P2(P2(Z*c)-P2(v*l)),s=P2(P2(v*B)-P2(d*c)),v=P2(P2(G*B)-P2(h*l)),Z=P2(P2(F*l)-P2(G*c)),d=P2(P2(h*c)-P2(F*B));break A}X2[A+1364>>2]=1070141403,_=A+1368|0,g=P2(-B2(P2(-B),E)),U2[_>>2]=g}c=P2(0)}X2[A+1424>>2]=0,X2[A+1408>>2]=0,X2[A+1392>>2]=0,U2[A+1372>>2]=c,d=P2(P2(u*N)-P2(s*Y)),Z=P2(P2(s*w)-P2(k*N)),c=P2(P2(u*d)-P2(k*Z)),v=P2(P2(k*Y)-P2(u*w)),B=P2(P2(k*v)-P2(s*d)),l=P2(P2(s*Z)-P2(u*v)),k=P2(P2(w*Z)-P2(Y*d)),u=P2(P2(N*d)-P2(w*v)),s=P2(P2(Y*v)-P2(N*Z));break A}_=A+1368|(X2[A+1364>>2]=0),g=P2(-B2(Q,l)),U2[_>>2]=g,c=P2(-1.5707963705062866)}X2[A+1424>>2]=0,U2[A+1372>>2]=c,X2[A+1408>>2]=0,X2[A+1392>>2]=0,c=P2(P2(C*u)-P2(R*k)),U2[A+1420>>2]=c,B=P2(P2(m*k)-P2(C*s)),U2[A+1416>>2]=B,l=P2(P2(R*s)-P2(m*u)),U2[A+1412>>2]=l,v=P2(P2(k*B)-P2(u*l)),U2[A+1388>>2]=v,Z=P2(P2(s*l)-P2(k*c)),U2[A+1384>>2]=Z,d=P2(P2(u*c)-P2(s*B)),U2[A+1380>>2]=d,k=P2(P2(R*l)-P2(C*B)),u=P2(P2(C*c)-P2(m*l)),s=P2(P2(m*B)-P2(R*c));break A}X2[A+1364>>2]=-1077342245,X2[A+1368>>2]=0,c=P2(-B2(c,E))}X2[A+1424>>2]=0,X2[A+1408>>2]=0,X2[A+1392>>2]=0,U2[A+1372>>2]=c,v=P2(P2(G*I)-P2(h*T)),U2[A+1388>>2]=v,Z=P2(P2(F*T)-P2(G*D)),U2[A+1384>>2]=Z,d=P2(P2(h*D)-P2(F*I)),U2[A+1380>>2]=d,c=P2(P2(h*d)-P2(G*Z)),U2[A+1420>>2]=c,B=P2(P2(G*v)-P2(F*d)),U2[A+1416>>2]=B,l=P2(P2(F*Z)-P2(h*v)),U2[A+1412>>2]=l,k=P2(P2(T*Z)-P2(I*d)),U2[A+1404>>2]=k,u=P2(P2(D*d)-P2(T*v)),U2[A+1400>>2]=u,s=P2(P2(I*v)-P2(D*Z)),U2[A+1396>>2]=s;break A}X2[A+1364>>2]=0,X2[A+1368>>2]=1070141403,c=P2(-B2(B,c))}X2[A+1408>>2]=0,U2[A+1372>>2]=c,X2[A+1424>>2]=0,X2[A+1392>>2]=0,k=P2(P2(R*T)-P2(C*I)),U2[A+1404>>2]=k,u=P2(P2(C*D)-P2(m*T)),U2[A+1400>>2]=u,s=P2(P2(m*I)-P2(R*D)),U2[A+1396>>2]=s,c=P2(P2(C*u)-P2(R*s)),U2[A+1420>>2]=c,B=P2(P2(m*s)-P2(C*k)),U2[A+1416>>2]=B,l=P2(P2(R*k)-P2(m*u)),U2[A+1412>>2]=l,v=P2(P2(I*s)-P2(T*u)),U2[A+1388>>2]=v,Z=P2(P2(T*k)-P2(D*s)),U2[A+1384>>2]=Z,d=P2(P2(D*u)-P2(I*k)),U2[A+1380>>2]=d}T=c,c=P2(P2(1)/P2(O2(P2(P2(P2(l*l)+P2(B*B))+P2(c*c))))),U2[A+1420>>2]=T*c,U2[A+1416>>2]=B*c,U2[A+1412>>2]=l*c,c=P2(P2(1)/P2(O2(P2(P2(P2(s*s)+P2(u*u))+P2(k*k))))),U2[A+1404>>2]=k*c,U2[A+1400>>2]=u*c,U2[A+1396>>2]=s*c,c=P2(P2(1)/P2(O2(P2(P2(P2(d*d)+P2(Z*Z))+P2(v*v))))),U2[A+1388>>2]=v*c,U2[A+1384>>2]=Z*c,U2[A+1380>>2]=d*c,B=U2[X2[A+28>>2]+404>>2],c=U2[X2[A+32>>2]+404>>2],S2[A+1452|0]=BP2(0)?P2(T/c):P2(.5),U2[A+1444>>2]=c,U2[A+1448>>2]=P2(1)-c}function A6(A,e){var r,f=P2(0),i=P2(0),a=(P2(0),P2(0),P2(0)),i=U2[1364+((e<<2)+A|0)>>2],n=H2(e,88)+A|0,b=U2[968+n>>2];(r=U2[972+n>>2])<=b||(iP2(3.1415927410125732)&&(f=P2(f+P2(-6.2831854820251465))),a=P2(j2(f)),(f=b2(P2(r-i)))P2(3.1415927410125732)&&(f=P2(f+P2(-6.2831854820251465))),i=aP2(3.1415927410125732)&&(f=P2(f+P2(-6.2831854820251465))),a=P2(j2(f)),(f=b2(P2(i-b)))P2(3.1415927410125732)&&(f=P2(f+P2(-6.2831854820251465))),i=a>P2(j2(f))?P2(i+P2(-6.2831854820251465)):i)),U2[1048+n>>2]=i,r>2]=0,X2[A+1052>>2]=0):(A=H2(e,88)+A|0,U2[A+1040>>2]=i-b,b==r?X2[A+1052>>2]=3:(X2[A+1052>>2]=4,U2[A+1044>>2]=i-r))}function e6(A,e,r,f,i,a,n,b,t,o,c,k,u){var s,l=P2(0),B=P2(0),v=P2(0),d=P2(0),Z=P2(0),_=0,g=P2(0),E=0,Q=P2(0),w=P2(0),G=P2(0);P2(0);o=H2(X2[t+24>>2],o);A:{e:{r:switch(X2[e+84>>2]-3|0){case 1:_=k?(B=U2[c>>2],Z=U2[c+4>>2],v=P2(P2(U2[n>>2]*B)+P2(U2[n+4>>2]*Z)),d=U2[c+8>>2],g=P2(U2[n+8>>2]*d),l=P2(-1),E=1,b):(B=U2[c>>2],Z=U2[c+4>>2],v=P2(P2(U2[i>>2]*B)+P2(U2[i+4>>2]*Z)),d=U2[c+8>>2],g=P2(U2[i+8>>2]*d),l=P2(1),a),w=U2[_+8>>2],G=U2[_>>2],s=U2[_+4>>2],r6(A,r,f,t,o,c,E,u),_=X2[t+28>>2]+(o<<2)|0,Q=P2(l*P2(P2(U2[t>>2]*U2[e+12>>2])*U2[e+72>>2])),U2[_>>2]=Q,Z=P2(P2(v+g)-P2(P2(P2(B*G)+P2(Z*s))+P2(d*w))),d=P2(Q-P2(Z*U2[e+12>>2])),k?(v=P2(0),B=P2(34028234663852886e22),d>P2(0)&&Q<(d=P2(Z*P2(-U2[e+8>>2])))&&(U2[_>>2]=d)):(B=P2(0),v=P2(-34028234663852886e22),d>2])))>2]=d)),U2[(_=o<<2)+X2[t+36>>2]>>2]=v,U2[_+X2[t+40>>2]>>2]=B,U2[_+X2[t+32>>2]>>2]=U2[e+16>>2],r6(A,r,f,t,o=X2[t+24>>2]+o|0,c,k,u),_=X2[t+28>>2]+(o<<2)|0,l=P2(l*P2(P2(U2[t>>2]*U2[e+12>>2])*U2[e+76>>2])),U2[_>>2]=l,d=P2(l-P2(Z*U2[e+12>>2])),k?(B=P2(0),v=P2(-34028234663852886e22),d>2])))>2]=l))):(v=P2(0),B=P2(34028234663852886e22),d>P2(0)&&(g=l)<(l=P2(Z*P2(-U2[e+8>>2])))&&(U2[_>>2]=l)),E=e+16|0,U2[(_=o<<2)+X2[t+36>>2]>>2]=v,U2[_+X2[t+40>>2]>>2]=B,_=2;break e;case 0:break r;default:break A;}r6(A,r,f,t,o,c,k,u),U2[(_=o<<2)+X2[t+28>>2]>>2]=P2(P2(U2[t>>2]*U2[e+12>>2])*U2[e+72>>2])*P2(0|(k?-1:1)),X2[_+X2[t+36>>2]>>2]=-8388609,X2[_+X2[t+40>>2]>>2]=2139095039,E=e+16|0,_=1}U2[X2[t+32>>2]+(o<<2)>>2]=U2[E>>2],o=X2[t+24>>2]+o|0}A:if(J2[e+28|0]){if(!J2[e+40|0]){r6(A,r,f,t,o,c,k,u),g=U2[e+32>>2],l=P2(1),v=U2[e>>2],Z=U2[e+4>>2];e:if(!(Z>2],(d=P2((k?g:P2(-g))/P2(U2[t>>2]*U2[e+20>>2])))P2(0)))break e;if(B<=Z&&B>P2(Z-d)){l=P2(P2(Z-B)/d);break e}if(Z>2]>>2]=l*g,U2[E+X2[t+36>>2]>>2]=-U2[e+36>>2],U2[E+X2[t+40>>2]>>2]=U2[e+36>>2],U2[E+X2[t+32>>2]>>2]=U2[e+24>>2],_=_+1|0,o=X2[t+24>>2]+o|0,!J2[e+28|0])break A;if(!J2[e+40|0])break A}B=U2[e+44>>2],l=P2(U2[e+80>>2]-B),k&&(B=(E=l>P2(3.1415927410125732))?P2(B+P2(6.2831854820251465)):B,(l=E?P2(l+P2(-6.2831854820251465)):l)>2],g=l>2],B=(v=U2[e+4>>2])P2(0)?B:P2(-34028234663852886e22)):(v=lP2(0)&&d>2],(d=P2(P2(-g)/P2(U2[t>>2]*U2[e+20>>2])))P2(0)))break e;if(l<=v&&l>P2(v-d)){Z=P2(P2(v-l)/d);break e}if(v>2]>>2]=P2(g*Z)*P2(0|(k?-1:1)),U2[E+X2[t+36>>2]>>2]=-U2[e+36>>2],U2[E+X2[t+40>>2]>>2]=U2[e+36>>2],U2[E+X2[t+32>>2]>>2]=U2[e+24>>2],_=_+1|0,o=X2[t+24>>2]+o|0}return J2[e+48|0]&&(v=U2[e+68>>2],Z=U2[e+80>>2],r6(A,r,f,t,o,c,k,u),l=P2(P2(1)/U2[t>>2]),B=U2[e+52>>2],G=P2(Z-v),Q=U2[e+60>>2],g=k?(v=U2[c>>2],Z=U2[c+4>>2],w=P2(P2(U2[n>>2]*v)+P2(U2[n+4>>2]*Z)),d=U2[c+8>>2],P2(U2[n+8>>2]*d)):(b=a,v=U2[c>>2],Z=U2[c+4>>2],w=P2(P2(U2[i>>2]*v)+P2(U2[i+4>>2]*Z)),d=U2[c+8>>2],P2(U2[i+8>>2]*d)),Z=P2(P2(w+g)-P2(P2(P2(v*U2[b>>2])+P2(Z*U2[b+4>>2]))+P2(d*U2[b+8>>2]))),v=(v=P2(P2(1)/U2[X2[A+32>>2]+404>>2]))<(d=P2(P2(1)/U2[X2[A+28>>2]+404>>2]))?v:d,J2[e+56|0]&&P2(l*P2(O2(P2(B/v))))>P2(.25)&&(B=P2(P2(P2(P2(P2(1)/l)/l)*P2(.0625))*v)),A=o<<2,g=P2(l*P2(G*B)),B=P2(Z*P2(-(v>2]>>2]=Z+P2(l*v),Z=(e=l>2]>>2]=m2(P2(-Z),P2(0)),Z=P2(-B)):U2[A+X2[t+36>>2]>>2]=m2(B,P2(0)),U2[(A=o<<2)+X2[t+40>>2]>>2]=z2(Z,P2(0)),_=_+1|(X2[A+X2[t+32>>2]>>2]=0)),_}function r6(A,e,r,f,i,a,n,b){P2(0);var t,o,c,k,u,s=P2(0),l=P2(0),B=P2(0),v=(P2(0),P2(0)),d=P2(0),Z=P2(0),_=(P2(0),P2(0),X2[(n?12:8)+f>>2]);U2[(u=i<<2)+_>>2]=U2[a>>2],U2[_+(k=(t=i+1|0)<<2)>>2]=U2[a+4>>2],U2[_+(c=(o=i+2|0)<<2)>>2]=U2[a+8>>2],_=X2[(n?20:16)+f>>2],U2[_+u>>2]=-U2[a>>2],U2[_+k>>2]=-U2[a+4>>2],U2[_+c>>2]=-U2[a+8>>2],n||(u=P2(U2[A+1352>>2]-U2[r+52>>2]),s=U2[a+8>>2],B=P2(U2[A+1356>>2]-U2[r+56>>2]),l=U2[a+4>>2],d=P2(P2(u*s)-P2(B*l)),k=P2(U2[A+1288>>2]-U2[e+52>>2]),_=P2(U2[A+1292>>2]-U2[e+56>>2]),Z=P2(P2(k*s)-P2(_*l)),c=P2(U2[A+1348>>2]-U2[r+48>>2]),v=u,u=U2[a>>2],v=P2(P2(c*l)-P2(v*u)),B=P2(P2(B*u)-P2(c*s)),c=P2(U2[A+1284>>2]-U2[e+48>>2]),l=P2(P2(c*l)-P2(k*u)),s=P2(P2(_*u)-P2(c*s)),b||J2[A+1452|0]&&(u=U2[A+1448>>2],v=P2(v*u),B=P2(B*u),d=P2(d*u),u=U2[A+1444>>2],l=P2(l*u),s=P2(s*u),Z=P2(Z*u)),A=(e=i<<2)+X2[f+12>>2]|0,U2[A+8>>2]=l,U2[A+4>>2]=s,U2[A>>2]=Z,A=X2[f+20>>2],U2[A+e>>2]=-d,U2[A+(t<<2)>>2]=-B,U2[A+(o<<2)>>2]=-v)}function f6(A){return P2(U2[(A|=0)>>2])}function i6(A){return P2(U2[(A|=0)+4>>2])}function a6(A){return P2(U2[(A|=0)+8>>2])}function n6(A,e,r,f,i){A|=0,e=P2(e),r=P2(r),f=P2(f),i=P2(i),U2[A+12>>2]=i,U2[A+8>>2]=f,U2[A+4>>2]=r,U2[A>>2]=e}function P(A,e,r,f){var i,a,n,b,t,o=H2(i=r>>>16|0,a=A>>>16|0);return i=(65535&(a=((t=H2(n=65535&r,b=65535&A))>>>16|0)+H2(a,n)|0))+H2(i,b)|0,H=(H2(e,r)+o|0)+H2(A,f)+(a>>>16)+(i>>>16)|0,65535&t|i<<16}function b6(A,e,r){var f,i,a,n=0,b=0,t=0,o=0,c=0,k=0;A:{e:{r:{f:{i:{a:{if(!e){A=(A>>>0)/(r>>>0)|0,H=0;break A}if(r){if(!(r-1&r))break a;t=0-(b=(B(r)+33|0)-B(e)|0)|0;break f}if(!A){A=(e>>>0)/0|0,H=0;break A}if((n=32-B(e)|0)>>>0<31)break i;break r}if(1==(0|r))break e;r=31&(n=r?31-B(r-1^r)|0:32),A=32<=(63&n)>>>0?e>>>r|(n=0):(n=e>>>r|0,((1<>>r),H=n;break A}b=n+1|0,t=63-n|0}if(f=31&(n=63&b),o=32<=n>>>0?e>>>f|(n=0):(n=e>>>f|0,((1<>>f),f=31&(t&=63),32<=t>>>0?(e=A<>>32-f|e<>>31,o=(n=o<<1|e>>>31)-(a=r&(i=(o=t-(c+(f>>>0>>0)|0)|0)>>31))|0,n=c-(n>>>0>>0)|0,e=e<<1|A>>>31,A=k|A<<1,k=c=1&i,!(b=b-1|0))break;H=e<<1|A>>>31,A=c|A<<1;break A}e=A=0}H=e}return A}function s(A){var e;return(-1>>>(e=31&A)&-2)<>>A}function t6(){return l.byteLength/65536|0}function o6(A){var e=0|t6(),A=e+(A|=0)|0;return e