eDrawings
Components
Sheets
Layers
Tables
Configuration
Hide/Show
Transparent/Solid
Hide Others
Show All
Remove
Clear
Model viewing failed. Please reload to try again. If the failure persists, please report the information below to customer support.
Server:
Model ID:
Drop your content here
Or

Connection timed-out. Reload the page to continue.

}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(16)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;D$a(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function D$a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){E$a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;E$a(a,b);return}function E$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function F$a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+16|0;s=w+8|0;t=w+4|0;v=w;if((f[a+12>>2]|0)!=2){d=f[b>>2]|0;if(!d){u=w;return}oh[f[(f[d>>2]|0)+16>>2]&1023](d,0);u=w;return}r=a+4|0;gZa(f[r>>2]|0,1);p=(f[r>>2]|0)+820|0;d=(f[p>>2]|0)+-1|0;f[p>>2]=d;f[t>>2]=d;d=GQa(f[(f[a+8>>2]|0)+232>>2]|0)|0;p=f[c>>2]|0;q=c+4|0;n=f[q>>2]|0;m=p+(n<<2)|0;a:do if(!n){e=p;d=0}else{n=d+4|0;j=f[d>>2]|0;i=p;do{k=f[i>>2]|0;h=f[n>>2]|0;b:do if(!h)o=34;else{g=h+-1|0;e=(g&h|0)==0;if(e)l=g&k;else if(k>>>0>>0)l=k;else l=(k>>>0)%(h>>>0)|0;d=f[j+(l<<2)>>2]|0;if(!d)o=34;else{d=f[d>>2]|0;if(!d)o=34;else{if(e)while(1){h=f[d+4>>2]|0;e=(k|0)==(h|0);if(!(e|(h&g|0)==(l|0))){o=34;break b}if(e)if((f[d+8>>2]|0)==(k|0))break b;d=f[d>>2]|0;if(!d){o=34;break b}}while(1){e=f[d+4>>2]|0;if((k|0)==(e|0)){if((f[d+8>>2]|0)==(k|0))break b}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(l|0)){o=34;break b}}d=f[d>>2]|0;if(!d){o=34;break}}}}}while(0);if((o|0)==34){o=0;f[i>>2]=0}i=i+4|0}while((i|0)!=(m|0));d=f[q>>2]|0;h=p+(d<<2)|0;c:do if(!d){e=p;d=0}else{e=p;while(1){if(!(f[e>>2]|0))break c;e=e+4|0;if((e|0)==(h|0)){e=h;break a}}}while(0);if((e|0)==(h|0))e=h;else{d=e;d:while(1){do{d=d+4|0;if((d|0)==(h|0))break d;g=f[d>>2]|0}while(!(g|0));f[e>>2]=g;e=e+4|0}d=f[q>>2]|0}}while(0);p=d-(p+(d<<2)-e>>2)|0;f[q>>2]=p;d=f[b>>2]|0;e=(d|0)!=0;if(!p){if(e)oh[f[(f[d>>2]|0)+8>>2]&1023](d,s)}else{if(e){r=C$a((f[r>>2]|0)+296|0,t)|0;q=f[b>>2]|0;f[b>>2]=0;d=f[r>>2]|0;f[r>>2]=q;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d)}r=f[(f[a>>2]|0)+108>>2]|0;f[v>>2]=f[t>>2];f[s>>2]=f[v>>2];xh[r&127](a,s,c)}u=w;return}function G$a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+16|0;t=x+4|0;v=x;q=f[a+4>>2]|0;s=q+820|0;w=(f[s>>2]|0)+-1|0;f[s>>2]=w;s=q+316|0;p=q+320|0;o=f[p>>2]|0;j=(o|0)==0;a:do if(j){e=0;r=17}else{i=o+-1|0;h=(i&o|0)==0;if(h)e=i&w;else if(o>>>0>w>>>0)e=w;else e=(w>>>0)%(o>>>0)|0;g=f[(f[s>>2]|0)+(e<<2)>>2]|0;if(!g)r=17;else{if(h)while(1){g=f[g>>2]|0;if(!g){r=17;break a}m=f[g+4>>2]|0;if(!((m|0)==(w|0)|(m&i|0)==(e|0))){r=17;break a}if((f[g+8>>2]|0)==(w|0)){m=g;break a}}while(1){g=f[g>>2]|0;if(!g){r=17;break a}h=f[g+4>>2]|0;if((h|0)!=(w|0)){if(h>>>0>=o>>>0)h=(h>>>0)%(o>>>0)|0;if((h|0)!=(e|0)){r=17;break a}}if((f[g+8>>2]|0)==(w|0)){m=g;break}}}}while(0);if((r|0)==17){m=pOb(56)|0;f[m+8>>2]=w;g=m+12|0;h=g+44|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));f[m+4>>2]=w;f[m>>2]=0;i=q+328|0;k=+(((f[i>>2]|0)+1|0)>>>0);g=q+332|0;l=+n[g>>2];do if(j|l*+(o>>>0)>>0<3|(o+-1&o|0)!=0)&1;j=~~+W(+(k/l))>>>0;e=e>>>0>>0?j:e;if((e|0)==1){e=2;h=o}else if(!(e+-1&e))h=o;else{e=hDb(e)|0;h=f[p>>2]|0}if(e>>>0>h>>>0)H$a(s,e);else if(e>>>0>>0){g=~~+W(+(+((f[i>>2]|0)>>>0)/+n[g>>2]))>>>0;if(h>>>0>2&(h+-1&h|0)==0)g=1<<32-(_(g+-1|0)|0);else g=hDb(g)|0;e=e>>>0>>0?g:e;if(e>>>0>>0)H$a(s,e)}e=f[p>>2]|0;g=e+-1|0;if(!(g&e)){h=e;e=g&w;break}if(e>>>0>w>>>0){h=e;e=w}else{h=e;e=(w>>>0)%(e>>>0)|0}}else h=o;while(0);g=(f[s>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){e=q+324|0;f[m>>2]=f[e>>2];f[e>>2]=m;f[g>>2]=e;e=f[m>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;e=(f[s>>2]|0)+(e<<2)|0;r=41}}else{f[m>>2]=f[e>>2];r=41}if((r|0)==41)f[e>>2]=m;f[i>>2]=(f[i>>2]|0)+1}s=m+12|0;r=f[b>>2]|0;f[b>>2]=0;e=f[s>>2]|0;f[s>>2]=r;if(e|0)gh[f[(f[e>>2]|0)+4>>2]&2047](e);f[m+16>>2]=f[c>>2];f[m+20>>2]=f[c+4>>2];i=c+8|0;j=m+24|0;e=f[j>>2]|0;h=m+28|0;if(!e)e=m+32|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);sOb(e);e=m+32|0;f[e>>2]=0;f[h>>2]=0;f[j>>2]=0}f[j>>2]=f[i>>2];g=c+12|0;f[h>>2]=f[g>>2];h=c+16|0;f[e>>2]=f[h>>2];f[h>>2]=0;f[g>>2]=0;f[i>>2]=0;f[c>>2]=0;f[m+36>>2]=f[d>>2];f[m+40>>2]=f[d+4>>2];g=d+8|0;h=m+44|0;i=f[h>>2]|0;e=m+48|0;if(!i){s=m+52|0;c=f[g>>2]|0;f[h>>2]=c;c=d+12|0;b=f[c>>2]|0;f[e>>2]=b;b=d+16|0;r=f[b>>2]|0;f[s>>2]=r;f[b>>2]=0;f[c>>2]=0;f[g>>2]=0;f[d>>2]=0;d=f[a>>2]|0;d=d+52|0;d=f[d>>2]|0;f[v>>2]=w;f[t>>2]=f[v>>2];oh[d&1023](a,t);u=x;return}j=f[e>>2]|0;if((j|0)!=(i|0))f[e>>2]=j+(~((j+-4-i|0)>>>2)<<2);sOb(i);s=m+52|0;f[s>>2]=0;f[e>>2]=0;f[h>>2]=0;c=f[g>>2]|0;f[h>>2]=c;c=d+12|0;b=f[c>>2]|0;f[e>>2]=b;b=d+16|0;r=f[b>>2]|0;f[s>>2]=r;f[b>>2]=0;f[c>>2]=0;f[g>>2]=0;f[d>>2]=0;d=f[a>>2]|0;d=d+52|0;d=f[d>>2]|0;f[v>>2]=w;f[t>>2]=f[v>>2];oh[d&1023](a,t);u=x;return}function H$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function I$a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;zYa(a,b);AYa(a,b,a+816|0);g=a+456|0;if(f[g>>2]|0){d=a+452|0;b=f[d>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;sOb(e)}while((b|0)!=0);f[d>>2]=0;d=f[a+448>>2]|0;if(d|0){e=a+444|0;b=0;do{f[(f[e>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(d|0))}f[g>>2]=0}e=a+464|0;g=a+468|0;NYa(e,f[g>>2]|0);f[a+472>>2]=0;f[e>>2]=g;f[g>>2]=0;if(c)return;d=a+788|0;if(f[d>>2]|0){e=a+784|0;aZa(f[e>>2]|0);f[e>>2]=0;e=f[a+780>>2]|0;if(e|0){g=a+776|0;b=0;do{f[(f[g>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(e|0))}f[d>>2]=0}e=a+808|0;if(!(f[e>>2]|0))return;g=a+804|0;$Ya(f[g>>2]|0);f[g>>2]=0;g=f[a+800>>2]|0;if(g|0){d=a+796|0;b=0;do{f[(f[d>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(g|0))}f[e>>2]=0;return}function J$a(a){a=a|0;b[(f[a+4>>2]|0)+536>>0]=1;return}function K$a(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;j=m+8|0;k=m+4|0;l=m;a:do if((f[a+12>>2]|0)!=2){h=f[c>>2]|0;n=f[c+4>>2]|0;i=h+(n<<3)|0;if(n|0){while(1){if(f[h>>2]|0)break;h=h+8|0;if((h|0)==(i|0))break a}n=f[b>>2]|0;oh[f[(f[n>>2]|0)+16>>2]&1023](n,0);u=m;return}}while(0);n=a+4|0;gZa(f[n>>2]|0,1);n=f[n>>2]|0;h=n+820|0;i=(f[h>>2]|0)+-1|0;f[h>>2]=i;f[k>>2]=i;n=L$a(n+276|0,k)|0;i=f[b>>2]|0;f[b>>2]=0;h=f[n>>2]|0;f[n>>2]=i;if(h|0)gh[f[(f[h>>2]|0)+4>>2]&2047](h);n=f[(f[a>>2]|0)+112>>2]|0;f[l>>2]=f[k>>2];f[j>>2]=f[l>>2];Th[n&127](a,j,c,d,e,g);u=m;return}function L$a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(16)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;M$a(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function M$a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){N$a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;N$a(a,b);return}function N$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function O$a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=d&1;d=f[c>>2]|0;n=f[c+4>>2]|0;o=d+(n<<3)|0;if(!n)return;m=a+4|0;n=p<<24>>24==0;l=d;do{d=xYa((f[m>>2]|0)+776|0,l)|0;a:do if((h[d>>0]|0)<=1){j=d+44|0;k=l+4|0;i=f[k>>2]|0;e=f[d+48>>2]|0;b:do if(!e)q=23;else{a=e+-1|0;c=(a&e|0)==0;if(c)g=a&i;else if(e>>>0>i>>>0)g=i;else g=(i>>>0)%(e>>>0)|0;d=f[(f[j>>2]|0)+(g<<2)>>2]|0;if(!d)q=23;else{d=f[d>>2]|0;if(!d)q=23;else{c:do if(c)while(1){e=f[d+4>>2]|0;c=(e|0)==(i|0);if(!(c|(e&a|0)==(g|0))){q=23;break b}if(c)if((f[d+8>>2]|0)==(i|0))break c;d=f[d>>2]|0;if(!d){q=23;break b}}else while(1){c=f[d+4>>2]|0;if((c|0)==(i|0)){if((f[d+8>>2]|0)==(i|0))break c}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){q=23;break b}}d=f[d>>2]|0;if(!d){q=23;break b}}while(0);c=d+12|0;if(n|(b[d+8+5>>0]|0)!=0)break a;if(b[c>>0]|0)break a;b[c>>0]=1}}}while(0);if((q|0)==23){q=0;k=P$a(j,k)|0;b[k>>0]=p;b[k+1>>0]=0}d=Q$a((f[m>>2]|0)+664|0,l)|0;if(!d){k=R$a((f[m>>2]|0)+664|0,l)|0;b[k>>0]=p;break}else{k=d+16|0;b[k>>0]=b[k>>0]|p;break}}while(0);l=l+8|0}while((l|0)!=(o|0));return}function P$a(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0;o=f[c>>2]|0;l=a+4|0;k=f[l>>2]|0;j=(k|0)==0;a:do if(j)c=0;else{h=k+-1|0;d=(h&k|0)==0;if(d)i=h&o;else if(k>>>0>o>>>0)i=o;else i=(o>>>0)%(k>>>0)|0;c=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!c)c=i;else{if(d){do{c=f[c>>2]|0;if(!c){c=i;break a}m=f[c+4>>2]|0;if(!((m|0)==(o|0)|(m&h|0)==(i|0))){c=i;break a}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}do{c=f[c>>2]|0;if(!c){c=i;break a}d=f[c+4>>2]|0;if((d|0)!=(o|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(i|0)){c=i;break a}}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}}while(0);i=pOb(16)|0;f[i+8>>2]=o;b[i+12>>0]=0;b[i+13>>0]=0;f[i+4>>2]=o;f[i>>2]=0;m=a+12|0;e=+(((f[m>>2]|0)+1|0)>>>0);d=a+16|0;g=+n[d>>2];do if(j|g*+(k>>>0)>>0<3|(k+-1&k|0)!=0)&1;j=~~+W(+(e/g))>>>0;c=c>>>0>>0?j:c;if((c|0)==1){c=2;h=k}else if(!(c+-1&c))h=k;else{c=hDb(c)|0;h=f[l>>2]|0}if(c>>>0>h>>>0)U$a(a,c);else if(c>>>0>>0){d=~~+W(+(+((f[m>>2]|0)>>>0)/+n[d>>2]))>>>0;if(h>>>0>2&(h+-1&h|0)==0)d=1<<32-(_(d+-1|0)|0);else d=hDb(d)|0;c=c>>>0>>0?d:c;if(c>>>0>>0)U$a(a,c)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&o;break}if(c>>>0>o>>>0){h=c;c=o}else{h=c;c=(o>>>0)%(c>>>0)|0}}else h=k;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[i>>2]=f[c>>2];f[c>>2]=i;f[d>>2]=c;c=f[i>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;p=41}}else{f[i>>2]=f[c>>2];p=41}if((p|0)==41)f[c>>2]=i;f[m>>2]=(f[m>>2]|0)+1;a=i;a=a+12|0;return a|0}function Q$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function R$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;k=f[c>>2]|0;m=f[c+4>>2]|0;q=m+-1640531527+(k<<6)+(k>>>2)^k;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(p)d=0;else{j=i+-1|0;e=(j&i|0)==0;if(e)l=q&j;else if(q>>>0>>0)l=q;else l=(q>>>0)%(i>>>0)|0;d=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!d)d=l;else{d=f[d>>2]|0;if(!d)d=l;else{if(e){while(1){e=f[d+4>>2]|0;if(!((e|0)==(q|0)|(e&j|0)==(l|0))){d=l;break a}if((f[d+8>>2]|0)==(k|0))if((f[d+12>>2]|0)==(m|0))break;d=f[d>>2]|0;if(!d){d=l;break a}}a=d+16|0;return a|0}while(1){e=f[d+4>>2]|0;if((e|0)!=(q|0)){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(l|0)){d=l;break a}}if((f[d+8>>2]|0)==(k|0))if((f[d+12>>2]|0)==(m|0))break;d=f[d>>2]|0;if(!d){d=l;break a}}a=d+16|0;return a|0}}}while(0);k=pOb(20)|0;m=c;c=f[m+4>>2]|0;j=k+8|0;f[j>>2]=f[m>>2];f[j+4>>2]=c;b[k+16>>0]=0;f[k+4>>2]=q;f[k>>2]=0;j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;e=~~+W(+(g/h))>>>0;S$a(a,d>>>0>>0?e:d);d=f[o>>2]|0;e=d+-1|0;if(!(e&d)){i=d;d=e&q;break}if(q>>>0>>0){i=d;d=q}else{i=d;d=(q>>>0)%(d>>>0)|0}}while(0);e=(f[a>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){d=a+8|0;f[k>>2]=f[d>>2];f[d>>2]=k;f[e>>2]=d;d=f[k>>2]|0;if(d|0){d=f[d+4>>2]|0;e=i+-1|0;if(!(e&i))d=d&e;else if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;d=(f[a>>2]|0)+(d<<2)|0;r=33}}else{f[k>>2]=f[d>>2];r=33}if((r|0)==33)f[d>>2]=k;f[j>>2]=(f[j>>2]|0)+1;a=k;a=a+16|0;return a|0}function S$a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){T$a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;T$a(a,b);return}function T$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();n=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function U$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function V$a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=d&1;e=f[c>>2]|0;n=f[c+4>>2]|0;o=e+(n<<3)|0;if(!n)return;n=a+4|0;m=d^1;do{c=xYa((f[n>>2]|0)+776|0,e)|0;a:do if((h[c>>0]|0)<=1){k=c+4|0;l=e+4|0;j=f[l>>2]|0;g=f[c+8>>2]|0;b:do if(!g)q=23;else{d=g+-1|0;a=(d&g|0)==0;if(a)i=d&j;else if(g>>>0>j>>>0)i=j;else i=(j>>>0)%(g>>>0)|0;c=f[(f[k>>2]|0)+(i<<2)>>2]|0;if(!c)q=23;else{c=f[c>>2]|0;if(!c)q=23;else{c:do if(a)while(1){g=f[c+4>>2]|0;a=(g|0)==(j|0);if(!(a|(g&d|0)==(i|0))){q=23;break b}if(a)if((f[c+8>>2]|0)==(j|0))break c;c=f[c>>2]|0;if(!c){q=23;break b}}else while(1){a=f[c+4>>2]|0;if((a|0)==(j|0)){if((f[c+8>>2]|0)==(j|0))break c}else{if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0;if((a|0)!=(i|0)){q=23;break b}}c=f[c>>2]|0;if(!c){q=23;break b}}while(0);a=c+12|0;if((b[c+8+5>>0]|0)!=0|m)break a;if(b[a>>0]|0)break a;b[a>>0]=1}}}while(0);if((q|0)==23){q=0;l=W$a(k,l)|0;b[l>>0]=p;b[l+1>>0]=0}c=X$a((f[n>>2]|0)+624|0,e)|0;if(!c){l=Y$a((f[n>>2]|0)+624|0,e)|0;b[l>>0]=p;break}else{l=c+16|0;b[l>>0]=b[l>>0]|p;break}}while(0);e=e+8|0}while((e|0)!=(o|0));return}function W$a(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0;o=f[c>>2]|0;l=a+4|0;k=f[l>>2]|0;j=(k|0)==0;a:do if(j)c=0;else{h=k+-1|0;d=(h&k|0)==0;if(d)i=h&o;else if(k>>>0>o>>>0)i=o;else i=(o>>>0)%(k>>>0)|0;c=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!c)c=i;else{if(d){do{c=f[c>>2]|0;if(!c){c=i;break a}m=f[c+4>>2]|0;if(!((m|0)==(o|0)|(m&h|0)==(i|0))){c=i;break a}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}do{c=f[c>>2]|0;if(!c){c=i;break a}d=f[c+4>>2]|0;if((d|0)!=(o|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(i|0)){c=i;break a}}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}}while(0);i=pOb(16)|0;f[i+8>>2]=o;b[i+12>>0]=0;b[i+13>>0]=0;f[i+4>>2]=o;f[i>>2]=0;m=a+12|0;e=+(((f[m>>2]|0)+1|0)>>>0);d=a+16|0;g=+n[d>>2];do if(j|g*+(k>>>0)>>0<3|(k+-1&k|0)!=0)&1;j=~~+W(+(e/g))>>>0;c=c>>>0>>0?j:c;if((c|0)==1){c=2;h=k}else if(!(c+-1&c))h=k;else{c=hDb(c)|0;h=f[l>>2]|0}if(c>>>0>h>>>0)$$a(a,c);else if(c>>>0>>0){d=~~+W(+(+((f[m>>2]|0)>>>0)/+n[d>>2]))>>>0;if(h>>>0>2&(h+-1&h|0)==0)d=1<<32-(_(d+-1|0)|0);else d=hDb(d)|0;c=c>>>0>>0?d:c;if(c>>>0>>0)$$a(a,c)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&o;break}if(c>>>0>o>>>0){h=c;c=o}else{h=c;c=(o>>>0)%(c>>>0)|0}}else h=k;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[i>>2]=f[c>>2];f[c>>2]=i;f[d>>2]=c;c=f[i>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;p=41}}else{f[i>>2]=f[c>>2];p=41}if((p|0)==41)f[c>>2]=i;f[m>>2]=(f[m>>2]|0)+1;a=i;a=a+12|0;return a|0}function X$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function Y$a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;k=f[c>>2]|0;m=f[c+4>>2]|0;q=m+-1640531527+(k<<6)+(k>>>2)^k;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(p)d=0;else{j=i+-1|0;e=(j&i|0)==0;if(e)l=q&j;else if(q>>>0>>0)l=q;else l=(q>>>0)%(i>>>0)|0;d=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!d)d=l;else{d=f[d>>2]|0;if(!d)d=l;else{if(e){while(1){e=f[d+4>>2]|0;if(!((e|0)==(q|0)|(e&j|0)==(l|0))){d=l;break a}if((f[d+8>>2]|0)==(k|0))if((f[d+12>>2]|0)==(m|0))break;d=f[d>>2]|0;if(!d){d=l;break a}}a=d+16|0;return a|0}while(1){e=f[d+4>>2]|0;if((e|0)!=(q|0)){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(l|0)){d=l;break a}}if((f[d+8>>2]|0)==(k|0))if((f[d+12>>2]|0)==(m|0))break;d=f[d>>2]|0;if(!d){d=l;break a}}a=d+16|0;return a|0}}}while(0);k=pOb(20)|0;m=c;c=f[m+4>>2]|0;j=k+8|0;f[j>>2]=f[m>>2];f[j+4>>2]=c;b[k+16>>0]=0;f[k+4>>2]=q;f[k>>2]=0;j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;e=~~+W(+(g/h))>>>0;Z$a(a,d>>>0>>0?e:d);d=f[o>>2]|0;e=d+-1|0;if(!(e&d)){i=d;d=e&q;break}if(q>>>0>>0){i=d;d=q}else{i=d;d=(q>>>0)%(d>>>0)|0}}while(0);e=(f[a>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){d=a+8|0;f[k>>2]=f[d>>2];f[d>>2]=k;f[e>>2]=d;d=f[k>>2]|0;if(d|0){d=f[d+4>>2]|0;e=i+-1|0;if(!(e&i))d=d&e;else if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;d=(f[a>>2]|0)+(d<<2)|0;r=33}}else{f[k>>2]=f[d>>2];r=33}if((r|0)==33)f[d>>2]=k;f[j>>2]=(f[j>>2]|0)+1;a=k;a=a+16|0;return a|0}function Z$a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){_$a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;_$a(a,b);return}function _$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();n=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function $$a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function a0a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=d&1;e=f[c>>2]|0;o=f[c+4>>2]|0;p=e+(o<<3)|0;if(!o)return;o=a+4|0;n=d^1;do{c=xYa((f[o>>2]|0)+776|0,e)|0;a:do if((h[c>>0]|0)<=1){l=c+24|0;m=e+4|0;k=f[m>>2]|0;i=f[c+28>>2]|0;b:do if(!i)r=23;else{g=i+-1|0;d=(g&i|0)==0;if(d)j=g&k;else if(i>>>0>k>>>0)j=k;else j=(k>>>0)%(i>>>0)|0;c=f[(f[l>>2]|0)+(j<<2)>>2]|0;if(!c)r=23;else{a=f[c>>2]|0;if(!a)r=23;else{c:do if(d)while(1){i=f[a+4>>2]|0;c=(i|0)==(k|0);if(!(c|(i&g|0)==(j|0))){r=23;break b}if(c)if((f[a+8>>2]|0)==(k|0))break c;a=f[a>>2]|0;if(!a){r=23;break b}}else while(1){c=f[a+4>>2]|0;if((c|0)==(k|0)){if((f[a+8>>2]|0)==(k|0))break c}else{if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(j|0)){r=23;break b}}a=f[a>>2]|0;if(!a){r=23;break b}}while(0);c=a+12|0;if(!((b[a+8+5>>0]|0)==0&n))break a;if(!(b[c>>0]|0))break a}}}while(0);if((r|0)==23){r=0;c=b0a(l,m)|0;b[c>>0]=q;c=c+1|0}b[c>>0]=0;c=c0a((f[o>>2]|0)+644|0,e)|0;if(!c){m=d0a((f[o>>2]|0)+644|0,e)|0;b[m>>0]=q;break}else{m=c+16|0;b[m>>0]=b[m>>0]&q;break}}while(0);e=e+8|0}while((e|0)!=(p|0));return}function b0a(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0;o=f[c>>2]|0;l=a+4|0;k=f[l>>2]|0;j=(k|0)==0;a:do if(j)c=0;else{h=k+-1|0;d=(h&k|0)==0;if(d)i=h&o;else if(k>>>0>o>>>0)i=o;else i=(o>>>0)%(k>>>0)|0;c=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!c)c=i;else{if(d){do{c=f[c>>2]|0;if(!c){c=i;break a}m=f[c+4>>2]|0;if(!((m|0)==(o|0)|(m&h|0)==(i|0))){c=i;break a}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}do{c=f[c>>2]|0;if(!c){c=i;break a}d=f[c+4>>2]|0;if((d|0)!=(o|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(i|0)){c=i;break a}}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}}while(0);i=pOb(16)|0;f[i+8>>2]=o;b[i+12>>0]=0;b[i+13>>0]=0;f[i+4>>2]=o;f[i>>2]=0;m=a+12|0;e=+(((f[m>>2]|0)+1|0)>>>0);d=a+16|0;g=+n[d>>2];do if(j|g*+(k>>>0)>>0<3|(k+-1&k|0)!=0)&1;j=~~+W(+(e/g))>>>0;c=c>>>0>>0?j:c;if((c|0)==1){c=2;h=k}else if(!(c+-1&c))h=k;else{c=hDb(c)|0;h=f[l>>2]|0}if(c>>>0>h>>>0)g0a(a,c);else if(c>>>0>>0){d=~~+W(+(+((f[m>>2]|0)>>>0)/+n[d>>2]))>>>0;if(h>>>0>2&(h+-1&h|0)==0)d=1<<32-(_(d+-1|0)|0);else d=hDb(d)|0;c=c>>>0>>0?d:c;if(c>>>0>>0)g0a(a,c)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&o;break}if(c>>>0>o>>>0){h=c;c=o}else{h=c;c=(o>>>0)%(c>>>0)|0}}else h=k;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[i>>2]=f[c>>2];f[c>>2]=i;f[d>>2]=c;c=f[i>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;p=41}}else{f[i>>2]=f[c>>2];p=41}if((p|0)==41)f[c>>2]=i;f[m>>2]=(f[m>>2]|0)+1;a=i;a=a+12|0;return a|0}function c0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function d0a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;k=f[c>>2]|0;m=f[c+4>>2]|0;q=m+-1640531527+(k<<6)+(k>>>2)^k;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(p)d=0;else{j=i+-1|0;e=(j&i|0)==0;if(e)l=q&j;else if(q>>>0>>0)l=q;else l=(q>>>0)%(i>>>0)|0;d=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!d)d=l;else{d=f[d>>2]|0;if(!d)d=l;else{if(e){while(1){e=f[d+4>>2]|0;if(!((e|0)==(q|0)|(e&j|0)==(l|0))){d=l;break a}if((f[d+8>>2]|0)==(k|0))if((f[d+12>>2]|0)==(m|0))break;d=f[d>>2]|0;if(!d){d=l;break a}}a=d+16|0;return a|0}while(1){e=f[d+4>>2]|0;if((e|0)!=(q|0)){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(l|0)){d=l;break a}}if((f[d+8>>2]|0)==(k|0))if((f[d+12>>2]|0)==(m|0))break;d=f[d>>2]|0;if(!d){d=l;break a}}a=d+16|0;return a|0}}}while(0);k=pOb(20)|0;m=c;c=f[m+4>>2]|0;j=k+8|0;f[j>>2]=f[m>>2];f[j+4>>2]=c;b[k+16>>0]=0;f[k+4>>2]=q;f[k>>2]=0;j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;e=~~+W(+(g/h))>>>0;e0a(a,d>>>0>>0?e:d);d=f[o>>2]|0;e=d+-1|0;if(!(e&d)){i=d;d=e&q;break}if(q>>>0>>0){i=d;d=q}else{i=d;d=(q>>>0)%(d>>>0)|0}}while(0);e=(f[a>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){d=a+8|0;f[k>>2]=f[d>>2];f[d>>2]=k;f[e>>2]=d;d=f[k>>2]|0;if(d|0){d=f[d+4>>2]|0;e=i+-1|0;if(!(e&i))d=d&e;else if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;d=(f[a>>2]|0)+(d<<2)|0;r=33}}else{f[k>>2]=f[d>>2];r=33}if((r|0)==33)f[d>>2]=k;f[j>>2]=(f[j>>2]|0)+1;a=k;a=a+16|0;return a|0}function e0a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){f0a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;f0a(a,b);return}function f0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();n=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function g0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function h0a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+28|0;m=n+16|0;j=n+4|0;l=n;k=(d&2|0)==0;a:do if(d&1|0){f[h>>2]=e;switch(e|0){case 0:{g=f[(f[a+8>>2]|0)+232>>2]|0;f[m>>2]=0;a=m+4|0;f[a>>2]=0;f[m+8>>2]=0;if((c|0)==5){nSa(j,g);i=j+4|0;i0a(m,f[j>>2]|0,f[i>>2]|0);g=f[j>>2]|0;if(g|0){h=f[i>>2]|0;if((h|0)!=(g|0))f[i>>2]=h+(~((h+-4-g|0)>>>2)<<2);sOb(g)}}if(!k){h=f[a>>2]|0;g=f[m>>2]|0;j=h-g>>2;switch(j|0){case 0:{aWa(m,1);g=f[m>>2]|0;break}case 1:break;default:{i=g+4|0;if((i|0)!=(h|0))f[a>>2]=h+(~((h+-4-i|0)>>>2)<<2)}}f[g>>2]=j}g=f[b>>2]|0;oh[f[(f[g>>2]|0)+8>>2]&1023](g,m);g=f[m>>2]|0;if(g|0){h=f[a>>2]|0;if((h|0)!=(g|0))f[a>>2]=h+(~((h+-4-g|0)>>>2)<<2);sOb(g)}u=n;return}case -1:{b=f[b>>2]|0;oh[f[(f[b>>2]|0)+12>>2]&1023](b,h);u=n;return}default:break a}}while(0);g=f[b>>2]|0;if((f[a+12>>2]|0)!=2){oh[f[(f[g>>2]|0)+16>>2]&1023](g,0);u=n;return}if(!g){Fh[f[(f[a>>2]|0)+116>>2]&255](a,c,d,e);u=n;return}i=(f[a+4>>2]|0)+336|0;f[h>>2]=c;f[h+4>>2]=d;f[h+8>>2]=e;i=j0a(i,h)|0;g=i+4|0;h=f[g>>2]|0;if(h>>>0<(f[i+8>>2]|0)>>>0){m=f[b>>2]|0;f[b>>2]=0;f[h>>2]=m;b=(f[g>>2]|0)+4|0;f[g>>2]=b;g=b}else{k0a(i,b);g=f[g>>2]|0}if((g-(f[i>>2]|0)|0)!=4){u=n;return}f[l>>2]=0;h0a(a,l,c,d,e);g=f[l>>2]|0;f[l>>2]=0;if(!g){u=n;return}gh[f[(f[g>>2]|0)+4>>2]&2047](g);u=n;return}function i0a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=c;h=b;i=j-h|0;g=i>>2;k=a+8|0;d=f[k>>2]|0;m=f[a>>2]|0;l=m;if(g>>>0<=d-m>>2>>>0){i=a+4|0;e=(f[i>>2]|0)-m>>2;a=g>>>0>e>>>0;g=a?b+(e<<2)|0:c;e=g;d=e-h|0;c=d>>2;if(c|0)cQb(m|0,b|0,d|0)|0;c=l+(c<<2)|0;if(a){d=j-e|0;if((d|0)<=0)return;bQb(f[i>>2]|0,g|0,d|0)|0;f[i>>2]=(f[i>>2]|0)+(d>>>2<<2);return}else{d=f[i>>2]|0;if((d|0)==(c|0))return;f[i>>2]=d+(~((d+-4-c|0)>>>2)<<2);return}}e=m;if(m){d=a+4|0;c=f[d>>2]|0;if((c|0)!=(l|0))f[d>>2]=c+(~((c+-4-m|0)>>>2)<<2);sOb(e);f[k>>2]=0;f[d>>2]=0;f[a>>2]=0;d=0}if(g>>>0>1073741823)AMb(a);m=d>>1;d=d>>2>>>0<536870911?(m>>>0>>0?g:m):1073741823;if(d>>>0>1073741823)AMb(a);c=pOb(d<<2)|0;e=a+4|0;f[e>>2]=c;f[a>>2]=c;f[k>>2]=c+(d<<2);if((i|0)<=0)return;bQb(c|0,b|0,i|0)|0;f[e>>2]=c+(i>>>2<<2);return}function j0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;k=f[b>>2]|0;m=f[b+4>>2]|0;q=m+-1640531527+(k<<6)+(k>>>2)^k;j=f[b+8>>2]|0;q=j+-1640531527+(q<<6)+(q>>>2)^q;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(p)c=0;else{i=h+-1|0;d=(i&h|0)==0;if(d)l=q&i;else if(q>>>0>>0)l=q;else l=(q>>>0)%(h>>>0)|0;c=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!c)c=l;else{c=f[c>>2]|0;if(!c)c=l;else{if(d){while(1){d=f[c+4>>2]|0;if(!((d|0)==(q|0)|(d&i|0)==(l|0))){c=l;break a}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(m|0))if((f[c+16>>2]|0)==(j|0))break;c=f[c>>2]|0;if(!c){c=l;break a}}a=c+20|0;return a|0}while(1){d=f[c+4>>2]|0;if((d|0)!=(q|0)){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(l|0)){c=l;break a}}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(m|0))if((f[c+16>>2]|0)==(j|0))break;c=f[c>>2]|0;if(!c){c=l;break a}}a=c+20|0;return a|0}}}while(0);j=pOb(32)|0;i=j+8|0;f[i>>2]=f[b>>2];f[i+4>>2]=f[b+4>>2];f[i+8>>2]=f[b+8>>2];f[j+20>>2]=0;f[j+24>>2]=0;f[j+28>>2]=0;f[j+4>>2]=q;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;d=~~+W(+(e/g))>>>0;l0a(a,c>>>0>>0?d:c);c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&q;break}if(q>>>0>>0){h=c;c=q}else{h=c;c=(q>>>0)%(c>>>0)|0}}while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;r=35}}else{f[j>>2]=f[c>>2];r=35}if((r|0)==35)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+20|0;return a|0}function k0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+4|0;c=f[a>>2]|0;e=(f[j>>2]|0)-c>>2;d=e+1|0;if(d>>>0>1073741823)AMb(a);k=a+8|0;i=(f[k>>2]|0)-c|0;c=i>>1;c=i>>2>>>0<536870911?(c>>>0>>0?d:c):1073741823;do if(!c)g=0;else if(c>>>0>1073741823)vd();else{g=pOb(c<<2)|0;break}while(0);d=g+(e<<2)|0;e=d;i=g+(c<<2)|0;h=f[b>>2]|0;f[b>>2]=0;f[d>>2]=h;h=d+4|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){d=e;g=b;c=b}else{do{c=c+-4|0;g=f[c>>2]|0;f[c>>2]=0;f[d+-4>>2]=g;d=e+-4|0;e=d}while((c|0)!=(b|0));d=e;g=f[a>>2]|0;c=f[j>>2]|0}f[a>>2]=d;f[j>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d)}while((c|0)!=(e|0));if(!g)return;sOb(g);return}function l0a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){m0a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;m0a(a,b);return}function m0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();o=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=o;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;n=b+-1|0;o=(n&b|0)==0;if(o)c=c&n;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){m=d;b:while(1){c:do if(o){d=e;while(1){l=f[d+4>>2]&n;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}j=d+12|0;k=d+16|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;if((f[k>>2]|0)!=(f[h+16>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)l=e;else l=(e>>>0)%(b>>>0)|0;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}i=d+12|0;j=d+16|0;h=f[d>>2]|0;e:do if(!h)e=d;else{k=f[d+8>>2]|0;e=d;while(1){if((k|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;if((f[j>>2]|0)!=(f[h+16>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}while(0);e=f[d>>2]|0;if(!e){c=41;break a}else{g=d;m=d}}f[e>>2]=m;e=f[d>>2]|0;if(!e){c=41;break}else g=d}if((c|0)==41)return}function n0a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a:do if((f[a+12>>2]|0)!=2){a=f[c>>2]|0;c=f[c+4>>2]|0;d=a+(c<<3)|0;if(c|0){while(1){if(f[a>>2]|0)break;a=a+8|0;if((a|0)==(d|0))break a}b=f[b>>2]|0;oh[f[(f[b>>2]|0)+16>>2]&1023](b,0);return}}while(0);a=f[b>>2]|0;if(!a)return;oh[f[(f[a>>2]|0)+16>>2]&1023](a,1);return}function o0a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;s=0;z=u;u=u+64|0;a:do if((f[a+12>>2]|0)!=2){g=f[c>>2]|0;h=f[c+4>>2]|0;if(h|0){e=g;while(1){if(f[e>>2]|0)break;e=e+8|0;if((e|0)==(g+(h<<3)|0|0))break a}y=f[b>>2]|0;oh[f[(f[y>>2]|0)+16>>2]&1023](y,0);u=z;return}}while(0);t=f[b>>2]|0;if(!t){O$a(a,c,d);u=z;return}i=f[(f[a+8>>2]|0)+232>>2]|0;w=f[a+4>>2]|0;r=d&1|0?w+64|0:w+96|0;f[b>>2]=0;f[(z+20|0)>>2]=t;f[(z+36|0)>>2]=0;y=(z+36|0)+4|0;f[y>>2]=0;f[(z+36|0)+8>>2]=0;f[(z+24|0)>>2]=0;x=(z+24|0)+4|0;f[x>>2]=0;f[(z+24|0)+8>>2]=0;h=f[c>>2]|0;b=f[(c+4|0)>>2]|0;e=1;if(e){e=0;if(!b)s=22;else e=1}if(e)if(1){g=h;do{b:do switch((K_a(a,i,d,g)|0)<<24>>24){case 0:if(!(f[g>>2]|0)){e=f[y>>2]|0;if((e|0)==(f[((z+36|0)+8|0)>>2]|0)){b_a(z+36|0,g);break b}else{A=g;j=f[A+4>>2]|0;f[e>>2]=f[A>>2];f[e+4>>2]=j;f[y>>2]=(f[y>>2]|0)+8;break b}}else{e=f[x>>2]|0;if((e|0)==(f[((z+24|0)+8|0)>>2]|0)){b_a(z+24|0,g);break b}else{j=g;A=f[j+4>>2]|0;f[e>>2]=f[j>>2];f[e+4>>2]=A;f[x>>2]=(f[x>>2]|0)+8;break b}}case 3:{e=f[y>>2]|0;if((e|0)==(f[((z+36|0)+8|0)>>2]|0)){b_a(z+36|0,g);break b}else{j=g;A=f[j+4>>2]|0;f[e>>2]=f[j>>2];f[e+4>>2]=A;f[y>>2]=(f[y>>2]|0)+8;break b}}default:{}}while(0);g=g+8|0}while((g|0)!=(h+(b<<3)|0|0));e=1;if(e){e=0;if((f[(z+24|0)>>2]|0)==(f[x>>2]|0))s=22;else e=1}if(e)if(1){b=f[(r+24|0)>>2]|0;g=f[(r+28|0)>>2]|0;e=1;if(e){e=0;if(b>>>0>>0){f[b>>2]=f[c>>2];f[b+4>>2]=f[(c+4|0)>>2];f[(b+8|0)>>2]=0;f[(b+12|0)>>2]=0;f[b+16>>2]=0;f[(b+8|0)>>2]=f[(c+8|0)>>2];f[(b+12|0)>>2]=f[(c+12|0)>>2];f[b+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[b+20>>2]=d;f[(z+20|0)>>2]=0;f[b+24>>2]=t;f[(r+24|0)>>2]=(f[(r+24|0)>>2]|0)+28}else e=1}if(e)if(1){h=f[(r+20|0)>>2]|0;e=((b-h|0)/28|0)+1|0;if(e>>>0>153391689)AMb(r+20|0);e=((g-h|0)/28|0)>>>0<76695844?(((g-h|0)/28|0)<<1>>>0>>0?e:((g-h|0)/28|0)<<1):153391689;do if(!e)m=0;else if(e>>>0>153391689)vd();else{m=pOb(e*28|0)|0;break}while(0);j=m+(((b-h|0)/28|0)*28|0)|0;i=m+(e*28|0)|0;f[j>>2]=f[c>>2];f[m+(((b-h|0)/28|0)*28|0)+4>>2]=f[(c+4|0)>>2];f[m+(((b-h|0)/28|0)*28|0)+16>>2]=0;f[m+(((b-h|0)/28|0)*28|0)+8>>2]=f[(c+8|0)>>2];f[m+(((b-h|0)/28|0)*28|0)+12>>2]=f[(c+12|0)>>2];f[m+(((b-h|0)/28|0)*28|0)+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[m+(((b-h|0)/28|0)*28|0)+20>>2]=d;f[(z+20|0)>>2]=0;f[m+(((b-h|0)/28|0)*28|0)+24>>2]=t;b=f[(r+20|0)>>2]|0;e=f[(r+24|0)>>2]|0;if((e|0)==(b|0)){g=j;m=b;e=b}else{g=j;h=j;do{m=e;e=e+-28|0;f[h+-28>>2]=f[e>>2];f[h+-24>>2]=f[m+-24>>2];B=h+-20|0;f[B>>2]=0;A=h+-16|0;f[A>>2]=0;f[h+-12>>2]=0;f[B>>2]=f[(m+-20|0)>>2];f[A>>2]=f[(m+-16|0)>>2];f[h+-12>>2]=f[(m+-12|0)>>2];f[(m+-12|0)>>2]=0;f[(m+-16|0)>>2]=0;f[(m+-20|0)>>2]=0;f[e>>2]=0;f[h+-8>>2]=f[m+-8>>2];A=f[(m+-4|0)>>2]|0;f[(m+-4|0)>>2]=0;f[h+-4>>2]=A;h=g+-28|0;g=h}while((e|0)!=(b|0));m=f[(r+20|0)>>2]|0;e=f[(r+24|0)>>2]|0}f[(r+20|0)>>2]=g;f[(r+24|0)>>2]=j+28|0;f[(r+28|0)>>2]=i;j=m;if((e|0)!=(j|0)){i=e;do{B=i+-4|0;e=f[B>>2]|0;f[B>>2]=0;if(e|0)gh[f[(f[e>>2]|0)+4>>2]&2047](e);g=i+-20|0;e=f[g>>2]|0;b=i+-16|0;i=i+-28|0;if((e|0)==(f[b>>2]|0)){h=f[i>>2]|0;if(h){tOb(h);e=f[g>>2]|0}}if(e|0){g=f[b>>2]|0;if((g|0)!=(e|0))f[b>>2]=g+(~((g+-8-e|0)>>>3)<<3);sOb(e)}}while((i|0)!=(j|0))}if(m|0)sOb(m)}e=f[(r+24|0)>>2]|0;A=f[(z+24|0)>>2]|0;B=f[x>>2]|0;f[z>>2]=(A|0)==(B|0)?0:A;f[z+4>>2]=B-A>>3;f[z+8>>2]=A;f[(z+12|0)>>2]=B;f[z+16>>2]=f[((z+24|0)+8|0)>>2];f[((z+24|0)+8|0)>>2]=0;f[x>>2]=0;f[(z+24|0)>>2]=0;f[(z+48|0)>>2]=0;o0a(a,z+48|0,z,f[e+-8>>2]|0);e=f[(z+48|0)>>2]|0;f[(z+48|0)>>2]=0;if(e|0)gh[f[(f[e>>2]|0)+4>>2]&2047](e);e=f[(z+8|0)>>2]|0;if((e|0)==(f[(z+12|0)>>2]|0)){g=f[z>>2]|0;if(g){tOb(g);e=f[(z+8|0)>>2]|0}}if(e|0){g=f[(z+12|0)>>2]|0;if((g|0)!=(e|0))f[(z+12|0)>>2]=g+(~((g+-8-e|0)>>>3)<<3);sOb(e)}}}do if((s|0)==22){if((f[(z+36|0)>>2]|0)!=(f[y>>2]|0)){L_a(z+20|0,z+36|0,c);break}i=f[(w+816|0)>>2]|0;f[(z+48|0)>>2]=i;e=1;if(e){e=0;if((i|0)==(f[w+440>>2]|0))oh[f[(f[t>>2]|0)+8>>2]&1023](t,c);else e=1}if(e)if(1){f[(w+816|0)>>2]=i+1|0;h=f[(r+4|0)>>2]|0;c:do if(!h){o=0;s=41}else{if(!((h+-1|0)&h))b=(h+-1|0)&(i+1|0);else if(h>>>0>(i+1|0)>>>0)b=i+1|0;else b=((i+1|0)>>>0)%(h>>>0)|0;e=f[(f[r>>2]|0)+(b<<2)>>2]|0;if(!e){o=b;s=41}else{if(!((h+-1|0)&h))while(1){e=f[e>>2]|0;if(!e){o=b;s=41;break c}B=f[e+4>>2]|0;if(!((B|0)==(i+1|0|0)|(B&(h+-1|0)|0)==(b|0))){o=b;s=41;break c}if((f[e+8>>2]|0)==(i+1|0|0)){q=e;break c}}while(1){e=f[e>>2]|0;if(!e){o=b;s=41;break c}g=f[e+4>>2]|0;if((g|0)!=(i+1|0|0)){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0;if((g|0)!=(b|0)){o=b;s=41;break c}}if((f[e+8>>2]|0)==(i+1|0|0)){q=e;break}}}}while(0);if((s|0)==41){b=pOb(24)|0;f[b+8>>2]=i+1|0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+4>>2]=i+1|0;f[b>>2]=0;k=+(((f[(r+12|0)>>2]|0)+1|0)>>>0);l=+n[r+16>>2];do if((h|0)==0|l*+(h>>>0)>>0;d_a(r,(h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1)>>>0>>0?e:h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1);e=f[(r+4|0)>>2]|0;if(!((e+-1|0)&e)){h=e;e=(e+-1|0)&(i+1|0);break}if(e>>>0>(i+1|0)>>>0){h=e;e=i+1|0}else{h=e;e=((i+1|0)>>>0)%(e>>>0)|0}}else e=o;while(0);e=(f[r>>2]|0)+(e<<2)|0;g=f[e>>2]|0;if(!g){f[b>>2]=f[(r+8|0)>>2];f[(r+8|0)>>2]=b;f[e>>2]=r+8|0;e=f[b>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;p=(f[r>>2]|0)+(e<<2)|0;s=54}}else{f[b>>2]=f[g>>2];p=g;s=54}if((s|0)==54)f[p>>2]=b;f[(r+12|0)>>2]=(f[(r+12|0)>>2]|0)+1;q=b}o=q+12|0;p=q+16|0;b=f[p>>2]|0;a=q+20|0;g=f[a>>2]|0;e=1;if(e){e=0;if(b>>>0>>0){f[b>>2]=f[c>>2];f[b+4>>2]=f[(c+4|0)>>2];f[(b+8|0)>>2]=0;f[(b+12|0)>>2]=0;f[b+16>>2]=0;f[(b+8|0)>>2]=f[(c+8|0)>>2];f[(b+12|0)>>2]=f[(c+12|0)>>2];f[b+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[b+20>>2]=d;f[(z+20|0)>>2]=0;f[b+24>>2]=t;f[p>>2]=(f[p>>2]|0)+28}else e=1}if(e)if(1){h=f[o>>2]|0;e=((b-h|0)/28|0)+1|0;if(e>>>0>153391689)AMb(o);e=((g-h|0)/28|0)>>>0<76695844?(((g-h|0)/28|0)<<1>>>0>>0?e:((g-h|0)/28|0)<<1):153391689;do if(!e)v=0;else if(e>>>0>153391689)vd();else{v=pOb(e*28|0)|0;break}while(0);j=v+(((b-h|0)/28|0)*28|0)|0;i=v+(e*28|0)|0;f[j>>2]=f[c>>2];f[v+(((b-h|0)/28|0)*28|0)+4>>2]=f[(c+4|0)>>2];f[v+(((b-h|0)/28|0)*28|0)+16>>2]=0;f[v+(((b-h|0)/28|0)*28|0)+8>>2]=f[(c+8|0)>>2];f[v+(((b-h|0)/28|0)*28|0)+12>>2]=f[(c+12|0)>>2];f[v+(((b-h|0)/28|0)*28|0)+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[v+(((b-h|0)/28|0)*28|0)+20>>2]=d;f[(z+20|0)>>2]=0;f[v+(((b-h|0)/28|0)*28|0)+24>>2]=t;b=f[o>>2]|0;e=f[p>>2]|0;if((e|0)==(b|0)){g=j;m=b;e=b}else{g=j;h=j;do{A=e;e=e+-28|0;f[h+-28>>2]=f[e>>2];f[h+-24>>2]=f[A+-24>>2];d=h+-20|0;f[d>>2]=0;B=h+-16|0;f[B>>2]=0;f[h+-12>>2]=0;f[d>>2]=f[(A+-20|0)>>2];f[B>>2]=f[(A+-16|0)>>2];f[h+-12>>2]=f[(A+-12|0)>>2];f[(A+-12|0)>>2]=0;f[(A+-16|0)>>2]=0;f[(A+-20|0)>>2]=0;f[e>>2]=0;f[h+-8>>2]=f[A+-8>>2];B=f[(A+-4|0)>>2]|0;f[(A+-4|0)>>2]=0;f[h+-4>>2]=B;h=g+-28|0;g=h}while((e|0)!=(b|0));m=f[o>>2]|0;e=f[p>>2]|0}f[o>>2]=g;f[p>>2]=j+28|0;f[a>>2]=i;j=m;if((e|0)!=(j|0)){i=e;do{B=i+-4|0;e=f[B>>2]|0;f[B>>2]=0;if(e|0)gh[f[(f[e>>2]|0)+4>>2]&2047](e);g=i+-20|0;e=f[g>>2]|0;b=i+-16|0;i=i+-28|0;if((e|0)==(f[b>>2]|0)){h=f[i>>2]|0;if(h){tOb(h);e=f[g>>2]|0}}if(e|0){g=f[b>>2]|0;if((g|0)!=(e|0))f[b>>2]=g+(~((g+-8-e|0)>>>3)<<3);sOb(e)}}while((i|0)!=(j|0))}if(m|0)sOb(m)}B=p0a(w+444|0,z+48|0)|0;f[B>>2]=2}}while(0);e=f[(z+24|0)>>2]|0;if(e|0){g=f[x>>2]|0;if((g|0)!=(e|0))f[x>>2]=g+(~((g+-8-e|0)>>>3)<<3);sOb(e)}e=f[(z+36|0)>>2]|0;if(e|0){g=f[y>>2]|0;if((g|0)!=(e|0))f[y>>2]=g+(~((g+-8-e|0)>>>3)<<3);sOb(e)}e=f[(z+20|0)>>2]|0;f[(z+20|0)>>2]=0;if(!e){u=z;return}gh[f[(f[e>>2]|0)+4>>2]&2047](e);u=z;return}function p0a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(16)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;q0a(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function q0a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){r0a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;r0a(a,b);return}function r0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function s0a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;r=0;z=u;u=u+64|0;a:do if((f[a+12>>2]|0)!=2){h=f[c>>2]|0;i=f[c+4>>2]|0;if(i|0){g=h;while(1){if(f[g>>2]|0)break;g=g+8|0;if((g|0)==(h+(i<<3)|0|0))break a}y=f[b>>2]|0;oh[f[(f[y>>2]|0)+16>>2]&1023](y,0);u=z;return}}while(0);t=f[b>>2]|0;if(!t){V$a(a,c,d);u=z;return}l=f[(f[a+8>>2]|0)+232>>2]|0;s=d?2:0;w=f[a+4>>2]|0;f[b>>2]=0;f[(z+20|0)>>2]=t;f[(z+36|0)>>2]=0;y=(z+36|0)+4|0;f[y>>2]=0;f[(z+36|0)+8>>2]=0;f[(z+24|0)>>2]=0;x=(z+24|0)+4|0;f[x>>2]=0;f[(z+24|0)+8>>2]=0;i=f[c>>2]|0;d=f[(c+4|0)>>2]|0;g=1;if(g){g=0;if(!d)r=29;else g=1}if(g)if(1){h=i;do{CRa(z+48|0,l,h);g=f[(z+48|0)>>2]|0;if(!g){m=B_a(a,h,10)|0;r=13}else if(lFa(g,l,s>>>1,0)|0){g=f[((z+48|0)+4|0)>>2]|0;if(g|0)iOb(g)}else{m=0;r=13}b:do if((r|0)==13){r=0;g=f[((z+48|0)+4|0)>>2]|0;if(g|0)iOb(g);switch(m<<24>>24){case 0:break;case 3:{g=f[y>>2]|0;if((g|0)==(f[((z+36|0)+8|0)>>2]|0)){SD(z+36|0,h);break b}else{A=h;b=f[A+4>>2]|0;f[g>>2]=f[A>>2];f[g+4>>2]=b;f[y>>2]=(f[y>>2]|0)+8;break b}}default:break b}if(!(f[h>>2]|0)){g=f[y>>2]|0;if((g|0)==(f[((z+36|0)+8|0)>>2]|0)){SD(z+36|0,h);break}else{b=h;A=f[b+4>>2]|0;f[g>>2]=f[b>>2];f[g+4>>2]=A;f[y>>2]=(f[y>>2]|0)+8;break}}else{g=f[x>>2]|0;if((g|0)==(f[((z+24|0)+8|0)>>2]|0)){SD(z+24|0,h);break}else{b=h;A=f[b+4>>2]|0;f[g>>2]=f[b>>2];f[g+4>>2]=A;f[x>>2]=(f[x>>2]|0)+8;break}}}while(0);h=h+8|0}while((h|0)!=(i+(d<<3)|0|0));g=1;if(g){g=0;if((f[(z+24|0)>>2]|0)==(f[x>>2]|0))r=29;else g=1}if(g)if(1){d=f[(w+24|0)>>2]|0;h=f[(w+28|0)>>2]|0;g=1;if(g){g=0;if(d>>>0>>0){f[d>>2]=f[c>>2];f[d+4>>2]=f[(c+4|0)>>2];f[(d+8|0)>>2]=0;f[(d+12|0)>>2]=0;f[d+16>>2]=0;f[(d+8|0)>>2]=f[(c+8|0)>>2];f[(d+12|0)>>2]=f[(c+12|0)>>2];f[d+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[d+20>>2]=s;f[(z+20|0)>>2]=0;f[d+24>>2]=t;f[(w+24|0)>>2]=(f[(w+24|0)>>2]|0)+28}else g=1}if(g)if(1){i=f[(w+20|0)>>2]|0;g=((d-i|0)/28|0)+1|0;if(g>>>0>153391689)AMb(w+20|0);g=((h-i|0)/28|0)>>>0<76695844?(((h-i|0)/28|0)<<1>>>0>>0?g:((h-i|0)/28|0)<<1):153391689;do if(!g)o=0;else if(g>>>0>153391689)vd();else{o=pOb(g*28|0)|0;break}while(0);l=o+(((d-i|0)/28|0)*28|0)|0;b=o+(g*28|0)|0;f[l>>2]=f[c>>2];f[o+(((d-i|0)/28|0)*28|0)+4>>2]=f[(c+4|0)>>2];f[o+(((d-i|0)/28|0)*28|0)+16>>2]=0;f[o+(((d-i|0)/28|0)*28|0)+8>>2]=f[(c+8|0)>>2];f[o+(((d-i|0)/28|0)*28|0)+12>>2]=f[(c+12|0)>>2];f[o+(((d-i|0)/28|0)*28|0)+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[o+(((d-i|0)/28|0)*28|0)+20>>2]=s;f[(z+20|0)>>2]=0;f[o+(((d-i|0)/28|0)*28|0)+24>>2]=t;d=f[(w+20|0)>>2]|0;g=f[(w+24|0)>>2]|0;if((g|0)==(d|0)){h=l;m=d;g=d}else{h=l;i=l;do{o=g;g=g+-28|0;f[i+-28>>2]=f[g>>2];f[i+-24>>2]=f[o+-24>>2];m=i+-20|0;f[m>>2]=0;A=i+-16|0;f[A>>2]=0;f[i+-12>>2]=0;f[m>>2]=f[(o+-20|0)>>2];f[A>>2]=f[(o+-16|0)>>2];f[i+-12>>2]=f[(o+-12|0)>>2];f[(o+-12|0)>>2]=0;f[(o+-16|0)>>2]=0;f[(o+-20|0)>>2]=0;f[g>>2]=0;f[i+-8>>2]=f[o+-8>>2];A=f[(o+-4|0)>>2]|0;f[(o+-4|0)>>2]=0;f[i+-4>>2]=A;i=h+-28|0;h=i}while((g|0)!=(d|0));m=f[(w+20|0)>>2]|0;g=f[(w+24|0)>>2]|0}f[(w+20|0)>>2]=h;f[(w+24|0)>>2]=l+28|0;f[(w+28|0)>>2]=b;l=m;if((g|0)!=(l|0)){b=g;do{A=b+-4|0;g=f[A>>2]|0;f[A>>2]=0;if(g|0)gh[f[(f[g>>2]|0)+4>>2]&2047](g);h=b+-20|0;g=f[h>>2]|0;d=b+-16|0;b=b+-28|0;if((g|0)==(f[d>>2]|0)){i=f[b>>2]|0;if(i){tOb(i);g=f[h>>2]|0}}if(g|0){h=f[d>>2]|0;if((h|0)!=(g|0))f[d>>2]=h+(~((h+-8-g|0)>>>3)<<3);sOb(g)}}while((b|0)!=(l|0))}if(m|0)sOb(m)}g=f[(w+24|0)>>2]|0;o=f[(z+24|0)>>2]|0;A=f[x>>2]|0;f[z>>2]=(o|0)==(A|0)?0:o;f[z+4>>2]=A-o>>3;f[z+8>>2]=o;f[(z+12|0)>>2]=A;f[z+16>>2]=f[((z+24|0)+8|0)>>2];f[((z+24|0)+8|0)>>2]=0;f[x>>2]=0;f[(z+24|0)>>2]=0;g=(f[g+-8>>2]&2|0)!=0;f[(z+48|0)>>2]=0;s0a(a,z+48|0,z,g);g=f[(z+48|0)>>2]|0;f[(z+48|0)>>2]=0;if(g|0)gh[f[(f[g>>2]|0)+4>>2]&2047](g);g=f[(z+8|0)>>2]|0;if((g|0)==(f[(z+12|0)>>2]|0)){h=f[z>>2]|0;if(h){tOb(h);g=f[(z+8|0)>>2]|0}}if(g|0){h=f[(z+12|0)>>2]|0;if((h|0)!=(g|0))f[(z+12|0)>>2]=h+(~((h+-8-g|0)>>>3)<<3);sOb(g)}}}do if((r|0)==29){if((f[(z+36|0)>>2]|0)!=(f[y>>2]|0)){C_a(z+20|0,z+36|0,c);break}b=f[(w+816|0)>>2]|0;f[(z+48|0)>>2]=b;g=1;if(g){g=0;if((b|0)==(f[w+440>>2]|0))oh[f[(f[t>>2]|0)+8>>2]&1023](t,c);else g=1}if(g)if(1){f[(w+816|0)>>2]=b+1|0;d=f[(w+4|0)>>2]|0;c:do if(!d){e=0;r=48}else{if(!((d+-1|0)&d))i=(d+-1|0)&(b+1|0);else if(d>>>0>(b+1|0)>>>0)i=b+1|0;else i=((b+1|0)>>>0)%(d>>>0)|0;g=f[(f[w>>2]|0)+(i<<2)>>2]|0;if(!g){e=i;r=48}else{if(!((d+-1|0)&d))while(1){g=f[g>>2]|0;if(!g){e=i;r=48;break c}A=f[g+4>>2]|0;if(!((A|0)==(b+1|0|0)|(A&(d+-1|0)|0)==(i|0))){e=i;r=48;break c}if((f[g+8>>2]|0)==(b+1|0|0)){p=g;break c}}while(1){g=f[g>>2]|0;if(!g){e=i;r=48;break c}h=f[g+4>>2]|0;if((h|0)!=(b+1|0|0)){if(h>>>0>=d>>>0)h=(h>>>0)%(d>>>0)|0;if((h|0)!=(i|0)){e=i;r=48;break c}}if((f[g+8>>2]|0)==(b+1|0|0)){p=g;break}}}}while(0);if((r|0)==48){i=pOb(24)|0;f[i+8>>2]=b+1|0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+4>>2]=b+1|0;f[i>>2]=0;j=+(((f[(w+12|0)>>2]|0)+1|0)>>>0);k=+n[w+16>>2];do if((d|0)==0|k*+(d>>>0)>>0;g_a(w,(d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1)>>>0>>0?e:d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1);e=f[(w+4|0)>>2]|0;if(!((e+-1|0)&e)){h=e;e=(e+-1|0)&(b+1|0);break}if(e>>>0>(b+1|0)>>>0){h=e;e=b+1|0}else{h=e;e=((b+1|0)>>>0)%(e>>>0)|0}}else h=d;while(0);e=(f[w>>2]|0)+(e<<2)|0;g=f[e>>2]|0;if(!g){f[i>>2]=f[(w+8|0)>>2];f[(w+8|0)>>2]=i;f[e>>2]=w+8|0;e=f[i>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;q=(f[w>>2]|0)+(e<<2)|0;r=61}}else{f[i>>2]=f[g>>2];q=g;r=61}if((r|0)==61)f[q>>2]=i;f[(w+12|0)>>2]=(f[(w+12|0)>>2]|0)+1;p=i}o=p+12|0;a=p+16|0;i=f[a>>2]|0;m=p+20|0;g=f[m>>2]|0;e=1;if(e){e=0;if(i>>>0>>0){f[i>>2]=f[c>>2];f[i+4>>2]=f[(c+4|0)>>2];f[(i+8|0)>>2]=0;f[(i+12|0)>>2]=0;f[i+16>>2]=0;f[(i+8|0)>>2]=f[(c+8|0)>>2];f[(i+12|0)>>2]=f[(c+12|0)>>2];f[i+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[i+20>>2]=s;f[(z+20|0)>>2]=0;f[i+24>>2]=t;f[a>>2]=(f[a>>2]|0)+28}else e=1}if(e)if(1){h=f[o>>2]|0;e=((i-h|0)/28|0)+1|0;if(e>>>0>153391689)AMb(o);e=((g-h|0)/28|0)>>>0<76695844?(((g-h|0)/28|0)<<1>>>0>>0?e:((g-h|0)/28|0)<<1):153391689;do if(!e)v=0;else if(e>>>0>153391689)vd();else{v=pOb(e*28|0)|0;break}while(0);b=v+(((i-h|0)/28|0)*28|0)|0;d=v+(e*28|0)|0;f[b>>2]=f[c>>2];f[v+(((i-h|0)/28|0)*28|0)+4>>2]=f[(c+4|0)>>2];f[v+(((i-h|0)/28|0)*28|0)+16>>2]=0;f[v+(((i-h|0)/28|0)*28|0)+8>>2]=f[(c+8|0)>>2];f[v+(((i-h|0)/28|0)*28|0)+12>>2]=f[(c+12|0)>>2];f[v+(((i-h|0)/28|0)*28|0)+16>>2]=f[(c+16|0)>>2];f[(c+16|0)>>2]=0;f[(c+12|0)>>2]=0;f[(c+8|0)>>2]=0;f[c>>2]=0;f[v+(((i-h|0)/28|0)*28|0)+20>>2]=s;f[(z+20|0)>>2]=0;f[v+(((i-h|0)/28|0)*28|0)+24>>2]=t;i=f[o>>2]|0;e=f[a>>2]|0;if((e|0)==(i|0)){g=b;l=i;e=i}else{g=b;h=b;do{v=e;e=e+-28|0;f[h+-28>>2]=f[e>>2];f[h+-24>>2]=f[v+-24>>2];c=h+-20|0;f[c>>2]=0;A=h+-16|0;f[A>>2]=0;f[h+-12>>2]=0;f[c>>2]=f[(v+-20|0)>>2];f[A>>2]=f[(v+-16|0)>>2];f[h+-12>>2]=f[(v+-12|0)>>2];f[(v+-12|0)>>2]=0;f[(v+-16|0)>>2]=0;f[(v+-20|0)>>2]=0;f[e>>2]=0;f[h+-8>>2]=f[v+-8>>2];A=f[(v+-4|0)>>2]|0;f[(v+-4|0)>>2]=0;f[h+-4>>2]=A;h=g+-28|0;g=h}while((e|0)!=(i|0));l=f[o>>2]|0;e=f[a>>2]|0}f[o>>2]=g;f[a>>2]=b+28|0;f[m>>2]=d;b=l;if((e|0)!=(b|0)){d=e;do{A=d+-4|0;e=f[A>>2]|0;f[A>>2]=0;if(e|0)gh[f[(f[e>>2]|0)+4>>2]&2047](e);g=d+-20|0;e=f[g>>2]|0;i=d+-16|0;d=d+-28|0;if((e|0)==(f[i>>2]|0)){h=f[d>>2]|0;if(h){tOb(h);e=f[g>>2]|0}}if(e|0){g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-8-e|0)>>>3)<<3);sOb(e)}}while((d|0)!=(b|0))}if(l|0)sOb(l)}A=p0a(w+444|0,z+48|0)|0;f[A>>2]=0}}while(0);e=f[(z+24|0)>>2]|0;if(e|0){g=f[x>>2]|0;if((g|0)!=(e|0))f[x>>2]=g+(~((g+-8-e|0)>>>3)<<3);sOb(e)}e=f[(z+36|0)>>2]|0;if(e|0){g=f[y>>2]|0;if((g|0)!=(e|0))f[y>>2]=g+(~((g+-8-e|0)>>>3)<<3);sOb(e)}e=f[(z+20|0)>>2]|0;f[(z+20|0)>>2]=0;if(!e){u=z;return}gh[f[(f[e>>2]|0)+4>>2]&2047](e);u=z;return}function t0a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=0;w=u;u=u+1600|0;a:do if((f[a+12>>2]|0)!=2){g=f[d>>2]|0;h=f[d+4>>2]|0;if(h|0){e=g;while(1){if(f[e>>2]|0)break;e=e+8|0;if((e|0)==(g+(h<<3)|0|0))break a}v=f[c>>2]|0;oh[f[(f[v>>2]|0)+16>>2]&1023](v,0);u=w;return}}while(0);l=f[c>>2]|0;if(!l){r=f[a+4>>2]|0;q=f[d>>2]|0;a=f[d+4>>2]|0;if(!a){u=w;return}l=q;do{d=xYa(r+776|0,l)|0;p=l+4|0;k=f[p>>2]|0;h=f[d+68>>2]|0;b:do if(!h)v=153;else{if(!((h+-1|0)&h))c=(h+-1|0)&k;else if(h>>>0>k>>>0)c=k;else c=(k>>>0)%(h>>>0)|0;e=f[(f[(d+64|0)>>2]|0)+(c<<2)>>2]|0;if(!e)v=153;else{e=f[e>>2]|0;if(!e)v=153;else{if(!((h+-1|0)&h))while(1){g=f[e+4>>2]|0;if(!((g|0)==(k|0)|(g&(h+-1|0)|0)==(c|0))){v=153;break b}if((g|0)==(k|0))if((f[e+8>>2]|0)==(k|0))break b;e=f[e>>2]|0;if(!e){v=153;break b}}while(1){g=f[e+4>>2]|0;if((g|0)==(k|0)){if((f[e+8>>2]|0)==(k|0))break b}else{if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0;if((g|0)!=(c|0)){v=153;break b}}e=f[e>>2]|0;if(!e){v=153;break}}}}}while(0);if((v|0)==153){v=0;i=f[l>>2]|0;c=f[(r+688|0)>>2]|0;c:do if(!c){t=0;v=172}else{if(!((c+-1|0)&c))h=(k+-1640531527+(i<<6)+(i>>>2)^i)&(c+-1|0);else if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0>>0)h=k+-1640531527+(i<<6)+(i>>>2)^i;else h=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(c>>>0)|0;e=f[(f[(r+684|0)>>2]|0)+(h<<2)>>2]|0;if(!e){t=h;v=172}else{e=f[e>>2]|0;if(!e){t=h;v=172}else{if(!((c+-1|0)&c))while(1){j=f[e+4>>2]|0;if(!((j|0)==(k+-1640531527+(i<<6)+(i>>>2)^i|0)|(j&(c+-1|0)|0)==(h|0))){t=h;v=172;break c}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=172;break c}}while(1){g=f[e+4>>2]|0;if((g|0)!=(k+-1640531527+(i<<6)+(i>>>2)^i|0)){if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0;if((g|0)!=(h|0)){t=h;v=172;break c}}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=172;break}}}}}while(0);if((v|0)==172){v=0;j=pOb(16)|0;g=l;h=f[g+4>>2]|0;f[(j+8|0)>>2]=f[g>>2];f[(j+8|0)+4>>2]=h;f[j+4>>2]=k+-1640531527+(i<<6)+(i>>>2)^i;f[j>>2]=0;m=+(((f[(r+696|0)>>2]|0)+1|0)>>>0);o=+n[(r+700|0)>>2];do if((c|0)==0|o*+(c>>>0)>>0;u0a(r+684|0,(c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1)>>>0>>0?e:c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1);e=f[(r+688|0)>>2]|0;if(!((e+-1|0)&e)){h=e;e=(e+-1|0)&(k+-1640531527+(i<<6)+(i>>>2)^i);break}if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0>>0){h=e;e=k+-1640531527+(i<<6)+(i>>>2)^i}else{h=e;e=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(e>>>0)|0}}else{h=c;e=t}while(0);e=(f[(r+684|0)>>2]|0)+(e<<2)|0;g=f[e>>2]|0;if(!g){f[j>>2]=f[(r+692|0)>>2];f[(r+692|0)>>2]=j;f[e>>2]=r+692|0;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;s=(f[(r+684|0)>>2]|0)+(e<<2)|0;v=185}}else{f[j>>2]=f[g>>2];s=g;v=185}if((v|0)==185){v=0;f[s>>2]=j}f[(r+696|0)>>2]=(f[(r+696|0)>>2]|0)+1}p=v0a(d+64|0,p)|0;b[p>>0]=0}l=l+8|0}while((l|0)!=(q+(a<<3)|0|0));u=w;return}j=f[(f[a+8>>2]|0)+232>>2]|0;k=f[a+4>>2]|0;f[c>>2]=0;f[(w+20|0)>>2]=l;f[(w+36|0)>>2]=0;e=(w+36|0)+4|0;f[e>>2]=0;f[(w+36|0)+8>>2]=0;f[(w+24|0)>>2]=0;g=(w+24|0)+4|0;f[g>>2]=0;f[(w+24|0)+8>>2]=0;h=f[d>>2]|0;c=f[(d+4|0)>>2]|0;i=1;if(i){i=0;if(!c)v=26;else i=1}f[w+80>>2]=a;f[w+96>>2]=d;f[w+568>>2]=l;f[w+648>>2]=j;f[w+704>>2]=k;f[w+752>>2]=e;f[w+800>>2]=g;f[w+824>>2]=h;f[w+864>>2]=c;f[w+1472>>2]=v;f[w+1480>>2]=i;f[w+1520>>2]=0;f[w+1524>>2]=0;T0a(w);G=f[w+1520>>2]|0;D=f[w+1524>>2]|0;H=+n[w+1524>>2];f[w+1520>>2]=0;f[w+1524>>2]=0;if((G|0)==5)return}function u0a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){x0a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;x0a(a,b);return}function v0a(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0;o=f[c>>2]|0;l=a+4|0;k=f[l>>2]|0;j=(k|0)==0;a:do if(j)c=0;else{h=k+-1|0;d=(h&k|0)==0;if(d)i=h&o;else if(k>>>0>o>>>0)i=o;else i=(o>>>0)%(k>>>0)|0;c=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!c)c=i;else{if(d){do{c=f[c>>2]|0;if(!c){c=i;break a}m=f[c+4>>2]|0;if(!((m|0)==(o|0)|(m&h|0)==(i|0))){c=i;break a}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}do{c=f[c>>2]|0;if(!c){c=i;break a}d=f[c+4>>2]|0;if((d|0)!=(o|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(i|0)){c=i;break a}}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}}while(0);i=pOb(16)|0;f[i+8>>2]=o;b[i+12>>0]=0;f[i+4>>2]=o;f[i>>2]=0;m=a+12|0;e=+(((f[m>>2]|0)+1|0)>>>0);d=a+16|0;g=+n[d>>2];do if(j|g*+(k>>>0)>>0<3|(k+-1&k|0)!=0)&1;j=~~+W(+(e/g))>>>0;c=c>>>0>>0?j:c;if((c|0)==1){c=2;h=k}else if(!(c+-1&c))h=k;else{c=hDb(c)|0;h=f[l>>2]|0}if(c>>>0>h>>>0)w0a(a,c);else if(c>>>0>>0){d=~~+W(+(+((f[m>>2]|0)>>>0)/+n[d>>2]))>>>0;if(h>>>0>2&(h+-1&h|0)==0)d=1<<32-(_(d+-1|0)|0);else d=hDb(d)|0;c=c>>>0>>0?d:c;if(c>>>0>>0)w0a(a,c)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&o;break}if(c>>>0>o>>>0){h=c;c=o}else{h=c;c=(o>>>0)%(c>>>0)|0}}else h=k;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[i>>2]=f[c>>2];f[c>>2]=i;f[d>>2]=c;c=f[i>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;p=41}}else{f[i>>2]=f[c>>2];p=41}if((p|0)==41)f[c>>2]=i;f[m>>2]=(f[m>>2]|0)+1;a=i;a=a+12|0;return a|0}function w0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function x0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();n=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function y0a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=0;w=u;u=u+1600|0;a:do if((f[a+12>>2]|0)!=2){g=f[d>>2]|0;h=f[d+4>>2]|0;if(h|0){e=g;while(1){if(f[e>>2]|0)break;e=e+8|0;if((e|0)==(g+(h<<3)|0|0))break a}v=f[c>>2]|0;oh[f[(f[v>>2]|0)+16>>2]&1023](v,0);u=w;return}}while(0);l=f[c>>2]|0;if(!l){r=f[a+4>>2]|0;q=f[d>>2]|0;a=f[d+4>>2]|0;if(!a){u=w;return}l=q;do{d=xYa(r+776|0,l)|0;p=l+4|0;k=f[p>>2]|0;h=f[d+88>>2]|0;b:do if(!h)v=153;else{if(!((h+-1|0)&h))c=(h+-1|0)&k;else if(h>>>0>k>>>0)c=k;else c=(k>>>0)%(h>>>0)|0;e=f[(f[(d+84|0)>>2]|0)+(c<<2)>>2]|0;if(!e)v=153;else{e=f[e>>2]|0;if(!e)v=153;else{if(!((h+-1|0)&h))while(1){g=f[e+4>>2]|0;if(!((g|0)==(k|0)|(g&(h+-1|0)|0)==(c|0))){v=153;break b}if((g|0)==(k|0))if((f[e+8>>2]|0)==(k|0))break b;e=f[e>>2]|0;if(!e){v=153;break b}}while(1){g=f[e+4>>2]|0;if((g|0)==(k|0)){if((f[e+8>>2]|0)==(k|0))break b}else{if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0;if((g|0)!=(c|0)){v=153;break b}}e=f[e>>2]|0;if(!e){v=153;break}}}}}while(0);if((v|0)==153){v=0;i=f[l>>2]|0;c=f[(r+708|0)>>2]|0;c:do if(!c){t=0;v=172}else{if(!((c+-1|0)&c))h=(k+-1640531527+(i<<6)+(i>>>2)^i)&(c+-1|0);else if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0>>0)h=k+-1640531527+(i<<6)+(i>>>2)^i;else h=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(c>>>0)|0;e=f[(f[(r+704|0)>>2]|0)+(h<<2)>>2]|0;if(!e){t=h;v=172}else{e=f[e>>2]|0;if(!e){t=h;v=172}else{if(!((c+-1|0)&c))while(1){j=f[e+4>>2]|0;if(!((j|0)==(k+-1640531527+(i<<6)+(i>>>2)^i|0)|(j&(c+-1|0)|0)==(h|0))){t=h;v=172;break c}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=172;break c}}while(1){g=f[e+4>>2]|0;if((g|0)!=(k+-1640531527+(i<<6)+(i>>>2)^i|0)){if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0;if((g|0)!=(h|0)){t=h;v=172;break c}}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=172;break}}}}}while(0);if((v|0)==172){v=0;j=pOb(16)|0;g=l;h=f[g+4>>2]|0;f[(j+8|0)>>2]=f[g>>2];f[(j+8|0)+4>>2]=h;f[j+4>>2]=k+-1640531527+(i<<6)+(i>>>2)^i;f[j>>2]=0;m=+(((f[(r+716|0)>>2]|0)+1|0)>>>0);o=+n[(r+720|0)>>2];do if((c|0)==0|o*+(c>>>0)>>0;z0a(r+704|0,(c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1)>>>0>>0?e:c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1);e=f[(r+708|0)>>2]|0;if(!((e+-1|0)&e)){h=e;e=(e+-1|0)&(k+-1640531527+(i<<6)+(i>>>2)^i);break}if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0>>0){h=e;e=k+-1640531527+(i<<6)+(i>>>2)^i}else{h=e;e=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(e>>>0)|0}}else{h=c;e=t}while(0);e=(f[(r+704|0)>>2]|0)+(e<<2)|0;g=f[e>>2]|0;if(!g){f[j>>2]=f[(r+712|0)>>2];f[(r+712|0)>>2]=j;f[e>>2]=r+712|0;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;s=(f[(r+704|0)>>2]|0)+(e<<2)|0;v=185}}else{f[j>>2]=f[g>>2];s=g;v=185}if((v|0)==185){v=0;f[s>>2]=j}f[(r+716|0)>>2]=(f[(r+716|0)>>2]|0)+1}p=A0a(d+84|0,p)|0;b[p>>0]=0}l=l+8|0}while((l|0)!=(q+(a<<3)|0|0));u=w;return}j=f[(f[a+8>>2]|0)+232>>2]|0;k=f[a+4>>2]|0;f[c>>2]=0;f[(w+20|0)>>2]=l;f[(w+36|0)>>2]=0;e=(w+36|0)+4|0;f[e>>2]=0;f[(w+36|0)+8>>2]=0;f[(w+24|0)>>2]=0;g=(w+24|0)+4|0;f[g>>2]=0;f[(w+24|0)+8>>2]=0;h=f[d>>2]|0;c=f[(d+4|0)>>2]|0;i=1;if(i){i=0;if(!c)v=26;else i=1}f[w+80>>2]=a;f[w+96>>2]=d;f[w+568>>2]=l;f[w+648>>2]=j;f[w+704>>2]=k;f[w+752>>2]=e;f[w+800>>2]=g;f[w+824>>2]=h;f[w+864>>2]=c;f[w+1472>>2]=v;f[w+1480>>2]=i;f[w+1520>>2]=0;f[w+1524>>2]=0;U0a(w);G=f[w+1520>>2]|0;D=f[w+1524>>2]|0;H=+n[w+1524>>2];f[w+1520>>2]=0;f[w+1524>>2]=0;if((G|0)==5)return}function z0a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){C0a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;C0a(a,b);return}function A0a(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0;o=f[c>>2]|0;l=a+4|0;k=f[l>>2]|0;j=(k|0)==0;a:do if(j)c=0;else{h=k+-1|0;d=(h&k|0)==0;if(d)i=h&o;else if(k>>>0>o>>>0)i=o;else i=(o>>>0)%(k>>>0)|0;c=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!c)c=i;else{if(d){do{c=f[c>>2]|0;if(!c){c=i;break a}m=f[c+4>>2]|0;if(!((m|0)==(o|0)|(m&h|0)==(i|0))){c=i;break a}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}do{c=f[c>>2]|0;if(!c){c=i;break a}d=f[c+4>>2]|0;if((d|0)!=(o|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(i|0)){c=i;break a}}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}}while(0);i=pOb(16)|0;f[i+8>>2]=o;b[i+12>>0]=0;f[i+4>>2]=o;f[i>>2]=0;m=a+12|0;e=+(((f[m>>2]|0)+1|0)>>>0);d=a+16|0;g=+n[d>>2];do if(j|g*+(k>>>0)>>0<3|(k+-1&k|0)!=0)&1;j=~~+W(+(e/g))>>>0;c=c>>>0>>0?j:c;if((c|0)==1){c=2;h=k}else if(!(c+-1&c))h=k;else{c=hDb(c)|0;h=f[l>>2]|0}if(c>>>0>h>>>0)B0a(a,c);else if(c>>>0>>0){d=~~+W(+(+((f[m>>2]|0)>>>0)/+n[d>>2]))>>>0;if(h>>>0>2&(h+-1&h|0)==0)d=1<<32-(_(d+-1|0)|0);else d=hDb(d)|0;c=c>>>0>>0?d:c;if(c>>>0>>0)B0a(a,c)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&o;break}if(c>>>0>o>>>0){h=c;c=o}else{h=c;c=(o>>>0)%(c>>>0)|0}}else h=k;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[i>>2]=f[c>>2];f[c>>2]=i;f[d>>2]=c;c=f[i>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;p=41}}else{f[i>>2]=f[c>>2];p=41}if((p|0)==41)f[c>>2]=i;f[m>>2]=(f[m>>2]|0)+1;a=i;a=a+12|0;return a|0}function B0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function C0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();n=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function D0a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=0;w=u;u=u+1600|0;a:do if((f[a+12>>2]|0)!=2){g=f[d>>2]|0;h=f[d+4>>2]|0;if(h|0){e=g;while(1){if(f[e>>2]|0)break;e=e+8|0;if((e|0)==(g+(h<<3)|0|0))break a}v=f[c>>2]|0;oh[f[(f[v>>2]|0)+16>>2]&1023](v,0);u=w;return}}while(0);l=f[c>>2]|0;if(!l){r=f[a+4>>2]|0;q=f[d>>2]|0;a=f[d+4>>2]|0;if(!a){u=w;return}l=q;do{d=xYa(r+776|0,l)|0;p=l+4|0;k=f[p>>2]|0;h=f[d+128>>2]|0;b:do if(!h)v=153;else{if(!((h+-1|0)&h))c=(h+-1|0)&k;else if(h>>>0>k>>>0)c=k;else c=(k>>>0)%(h>>>0)|0;e=f[(f[(d+124|0)>>2]|0)+(c<<2)>>2]|0;if(!e)v=153;else{e=f[e>>2]|0;if(!e)v=153;else{if(!((h+-1|0)&h))while(1){g=f[e+4>>2]|0;if(!((g|0)==(k|0)|(g&(h+-1|0)|0)==(c|0))){v=153;break b}if((g|0)==(k|0))if((f[e+8>>2]|0)==(k|0))break b;e=f[e>>2]|0;if(!e){v=153;break b}}while(1){g=f[e+4>>2]|0;if((g|0)==(k|0)){if((f[e+8>>2]|0)==(k|0))break b}else{if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0;if((g|0)!=(c|0)){v=153;break b}}e=f[e>>2]|0;if(!e){v=153;break}}}}}while(0);if((v|0)==153){v=0;i=f[l>>2]|0;c=f[(r+748|0)>>2]|0;c:do if(!c){t=0;v=172}else{if(!((c+-1|0)&c))h=(k+-1640531527+(i<<6)+(i>>>2)^i)&(c+-1|0);else if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0>>0)h=k+-1640531527+(i<<6)+(i>>>2)^i;else h=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(c>>>0)|0;e=f[(f[(r+744|0)>>2]|0)+(h<<2)>>2]|0;if(!e){t=h;v=172}else{e=f[e>>2]|0;if(!e){t=h;v=172}else{if(!((c+-1|0)&c))while(1){j=f[e+4>>2]|0;if(!((j|0)==(k+-1640531527+(i<<6)+(i>>>2)^i|0)|(j&(c+-1|0)|0)==(h|0))){t=h;v=172;break c}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=172;break c}}while(1){g=f[e+4>>2]|0;if((g|0)!=(k+-1640531527+(i<<6)+(i>>>2)^i|0)){if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0;if((g|0)!=(h|0)){t=h;v=172;break c}}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=172;break}}}}}while(0);if((v|0)==172){v=0;j=pOb(16)|0;g=l;h=f[g+4>>2]|0;f[(j+8|0)>>2]=f[g>>2];f[(j+8|0)+4>>2]=h;f[j+4>>2]=k+-1640531527+(i<<6)+(i>>>2)^i;f[j>>2]=0;m=+(((f[(r+756|0)>>2]|0)+1|0)>>>0);o=+n[(r+760|0)>>2];do if((c|0)==0|o*+(c>>>0)>>0;IUa(r+744|0,(c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1)>>>0>>0?e:c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1);e=f[(r+748|0)>>2]|0;if(!((e+-1|0)&e)){h=e;e=(e+-1|0)&(k+-1640531527+(i<<6)+(i>>>2)^i);break}if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0>>0){h=e;e=k+-1640531527+(i<<6)+(i>>>2)^i}else{h=e;e=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(e>>>0)|0}}else{h=c;e=t}while(0);e=(f[(r+744|0)>>2]|0)+(e<<2)|0;g=f[e>>2]|0;if(!g){f[j>>2]=f[(r+752|0)>>2];f[(r+752|0)>>2]=j;f[e>>2]=r+752|0;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;s=(f[(r+744|0)>>2]|0)+(e<<2)|0;v=185}}else{f[j>>2]=f[g>>2];s=g;v=185}if((v|0)==185){v=0;f[s>>2]=j}f[(r+756|0)>>2]=(f[(r+756|0)>>2]|0)+1}p=vYa(d+124|0,p)|0;b[p>>0]=0}l=l+8|0}while((l|0)!=(q+(a<<3)|0|0));u=w;return}j=f[(f[a+8>>2]|0)+232>>2]|0;k=f[a+4>>2]|0;f[c>>2]=0;f[(w+20|0)>>2]=l;f[(w+36|0)>>2]=0;e=(w+36|0)+4|0;f[e>>2]=0;f[(w+36|0)+8>>2]=0;f[(w+24|0)>>2]=0;g=(w+24|0)+4|0;f[g>>2]=0;f[(w+24|0)+8>>2]=0;h=f[d>>2]|0;c=f[(d+4|0)>>2]|0;i=1;if(i){i=0;if(!c)v=26;else i=1}f[w+80>>2]=a;f[w+96>>2]=d;f[w+568>>2]=l;f[w+648>>2]=j;f[w+704>>2]=k;f[w+752>>2]=e;f[w+800>>2]=g;f[w+824>>2]=h;f[w+864>>2]=c;f[w+1472>>2]=v;f[w+1480>>2]=i;f[w+1520>>2]=0;f[w+1524>>2]=0;V0a(w);G=f[w+1520>>2]|0;D=f[w+1524>>2]|0;H=+n[w+1524>>2];f[w+1520>>2]=0;f[w+1524>>2]=0;if((G|0)==5)return}function E0a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=0;w=u;u=u+1616|0;a:do if((f[a+12>>2]|0)!=2){g=f[d>>2]|0;h=f[d+4>>2]|0;if(h|0){e=g;while(1){if(f[e>>2]|0)break;e=e+8|0;if((e|0)==(g+(h<<3)|0|0))break a}v=f[c>>2]|0;oh[f[(f[v>>2]|0)+16>>2]&1023](v,0);u=w;return}}while(0);l=f[c>>2]|0;if(!l){r=f[a+4>>2]|0;q=f[d>>2]|0;a=f[d+4>>2]|0;if(!a){u=w;return}l=q;do{d=xYa(r+776|0,l)|0;p=l+4|0;k=f[p>>2]|0;h=f[d+108>>2]|0;b:do if(!h)v=154;else{if(!((h+-1|0)&h))c=(h+-1|0)&k;else if(h>>>0>k>>>0)c=k;else c=(k>>>0)%(h>>>0)|0;e=f[(f[(d+104|0)>>2]|0)+(c<<2)>>2]|0;if(!e)v=154;else{e=f[e>>2]|0;if(!e)v=154;else{if(!((h+-1|0)&h))while(1){g=f[e+4>>2]|0;if(!((g|0)==(k|0)|(g&(h+-1|0)|0)==(c|0))){v=154;break b}if((g|0)==(k|0))if((f[e+8>>2]|0)==(k|0))break b;e=f[e>>2]|0;if(!e){v=154;break b}}while(1){g=f[e+4>>2]|0;if((g|0)==(k|0)){if((f[e+8>>2]|0)==(k|0))break b}else{if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0;if((g|0)!=(c|0)){v=154;break b}}e=f[e>>2]|0;if(!e){v=154;break}}}}}while(0);if((v|0)==154){v=0;i=f[l>>2]|0;c=f[(r+728|0)>>2]|0;c:do if(!c){t=0;v=173}else{if(!((c+-1|0)&c))h=(k+-1640531527+(i<<6)+(i>>>2)^i)&(c+-1|0);else if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0>>0)h=k+-1640531527+(i<<6)+(i>>>2)^i;else h=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(c>>>0)|0;e=f[(f[(r+724|0)>>2]|0)+(h<<2)>>2]|0;if(!e){t=h;v=173}else{e=f[e>>2]|0;if(!e){t=h;v=173}else{if(!((c+-1|0)&c))while(1){j=f[e+4>>2]|0;if(!((j|0)==(k+-1640531527+(i<<6)+(i>>>2)^i|0)|(j&(c+-1|0)|0)==(h|0))){t=h;v=173;break c}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=173;break c}}while(1){g=f[e+4>>2]|0;if((g|0)!=(k+-1640531527+(i<<6)+(i>>>2)^i|0)){if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0;if((g|0)!=(h|0)){t=h;v=173;break c}}if((f[e+8>>2]|0)==(i|0))if((f[e+12>>2]|0)==(k|0))break c;e=f[e>>2]|0;if(!e){t=h;v=173;break}}}}}while(0);if((v|0)==173){v=0;j=pOb(16)|0;g=l;h=f[g+4>>2]|0;f[(j+8|0)>>2]=f[g>>2];f[(j+8|0)+4>>2]=h;f[j+4>>2]=k+-1640531527+(i<<6)+(i>>>2)^i;f[j>>2]=0;m=+(((f[(r+736|0)>>2]|0)+1|0)>>>0);o=+n[(r+740|0)>>2];do if((c|0)==0|o*+(c>>>0)>>0;F0a(r+724|0,(c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1)>>>0>>0?e:c<<1|(c>>>0<3|(c+-1&c|0)!=0)&1);e=f[(r+728|0)>>2]|0;if(!((e+-1|0)&e)){h=e;e=(e+-1|0)&(k+-1640531527+(i<<6)+(i>>>2)^i);break}if((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0>>0){h=e;e=k+-1640531527+(i<<6)+(i>>>2)^i}else{h=e;e=((k+-1640531527+(i<<6)+(i>>>2)^i)>>>0)%(e>>>0)|0}}else{h=c;e=t}while(0);e=(f[(r+724|0)>>2]|0)+(e<<2)|0;g=f[e>>2]|0;if(!g){f[j>>2]=f[(r+732|0)>>2];f[(r+732|0)>>2]=j;f[e>>2]=r+732|0;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;s=(f[(r+724|0)>>2]|0)+(e<<2)|0;v=186}}else{f[j>>2]=f[g>>2];s=g;v=186}if((v|0)==186){v=0;f[s>>2]=j}f[(r+736|0)>>2]=(f[(r+736|0)>>2]|0)+1}p=G0a(d+104|0,p)|0;b[p>>0]=0}l=l+8|0}while((l|0)!=(q+(a<<3)|0|0));u=w;return}j=f[(f[a+8>>2]|0)+232>>2]|0;k=f[a+4>>2]|0;f[c>>2]=0;f[(w+20|0)>>2]=l;f[(w+36|0)>>2]=0;e=(w+36|0)+4|0;f[e>>2]=0;f[(w+36|0)+8>>2]=0;f[(w+24|0)>>2]=0;g=(w+24|0)+4|0;f[g>>2]=0;f[(w+24|0)+8>>2]=0;h=f[d>>2]|0;c=f[(d+4|0)>>2]|0;i=1;if(i){i=0;if(!c)v=27;else i=1}f[w+80>>2]=a;f[w+96>>2]=d;f[w+568>>2]=l;f[w+640>>2]=j;f[w+672>>2]=k;f[w+736>>2]=e;f[w+792>>2]=g;f[w+824>>2]=h;f[w+848>>2]=c;f[w+1480>>2]=v;f[w+1488>>2]=i;f[w+1528>>2]=0;f[w+1532>>2]=0;W0a(w);G=f[w+1528>>2]|0;D=f[w+1532>>2]|0;H=+n[w+1532>>2];f[w+1528>>2]=0;f[w+1532>>2]=0;if((G|0)==5)return}function F0a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){I0a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;I0a(a,b);return}function G0a(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0;o=f[c>>2]|0;l=a+4|0;k=f[l>>2]|0;j=(k|0)==0;a:do if(j)c=0;else{h=k+-1|0;d=(h&k|0)==0;if(d)i=h&o;else if(k>>>0>o>>>0)i=o;else i=(o>>>0)%(k>>>0)|0;c=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!c)c=i;else{if(d){do{c=f[c>>2]|0;if(!c){c=i;break a}m=f[c+4>>2]|0;if(!((m|0)==(o|0)|(m&h|0)==(i|0))){c=i;break a}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}do{c=f[c>>2]|0;if(!c){c=i;break a}d=f[c+4>>2]|0;if((d|0)!=(o|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(i|0)){c=i;break a}}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}}while(0);i=pOb(16)|0;f[i+8>>2]=o;b[i+12>>0]=0;f[i+4>>2]=o;f[i>>2]=0;m=a+12|0;e=+(((f[m>>2]|0)+1|0)>>>0);d=a+16|0;g=+n[d>>2];do if(j|g*+(k>>>0)>>0<3|(k+-1&k|0)!=0)&1;j=~~+W(+(e/g))>>>0;c=c>>>0>>0?j:c;if((c|0)==1){c=2;h=k}else if(!(c+-1&c))h=k;else{c=hDb(c)|0;h=f[l>>2]|0}if(c>>>0>h>>>0)H0a(a,c);else if(c>>>0>>0){d=~~+W(+(+((f[m>>2]|0)>>>0)/+n[d>>2]))>>>0;if(h>>>0>2&(h+-1&h|0)==0)d=1<<32-(_(d+-1|0)|0);else d=hDb(d)|0;c=c>>>0>>0?d:c;if(c>>>0>>0)H0a(a,c)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&o;break}if(c>>>0>o>>>0){h=c;c=o}else{h=c;c=(o>>>0)%(c>>>0)|0}}else h=k;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[i>>2]=f[c>>2];f[c>>2]=i;f[d>>2]=c;c=f[i>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;p=41}}else{f[i>>2]=f[c>>2];p=41}if((p|0)==41)f[c>>2]=i;f[m>>2]=(f[m>>2]|0)+1;a=i;a=a+12|0;return a|0}function H0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function I0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();n=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function J0a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;p=0;q=u;u=u+1360|0;a:do if((f[a+12>>2]|0)!=2){g=f[c>>2]|0;h=f[c+4>>2]|0;if(h|0){e=g;while(1){if(f[e>>2]|0)break;e=e+8|0;if((e|0)==(g+(h<<3)|0|0))break a}p=f[b>>2]|0;oh[f[(f[p>>2]|0)+16>>2]&1023](p,0);u=q;return}}while(0);j=f[b>>2]|0;if(!j){a0a(a,c,d);u=q;return}k=f[(f[a+8>>2]|0)+232>>2]|0;l=f[a+4>>2]|0;f[b>>2]=0;f[(q+20|0)>>2]=j;f[(q+36|0)>>2]=0;o=(q+36|0)+4|0;f[o>>2]=0;f[(q+36|0)+8>>2]=0;f[(q+24|0)>>2]=0;m=(q+24|0)+4|0;f[m>>2]=0;f[(q+24|0)+8>>2]=0;b=f[c>>2]|0;i=f[(c+4|0)>>2]|0;b:do if(i|0){if(d){h=b;while(1){sRa(q+48|0,k,h);if(!(f[(q+48|0)>>2]|0))e=B_a(a,h,8)|0;else e=1;g=f[((q+48|0)+4|0)>>2]|0;if(g|0)iOb(g);c:do switch(e<<24>>24){case 0:if(!(f[h>>2]|0)){e=f[o>>2]|0;if((e|0)==(f[((q+36|0)+8|0)>>2]|0)){lE(q+36|0,h);break c}else{r=h;g=f[r+4>>2]|0;f[e>>2]=f[r>>2];f[e+4>>2]=g;f[o>>2]=(f[o>>2]|0)+8;break c}}else{e=f[m>>2]|0;if((e|0)==(f[((q+24|0)+8|0)>>2]|0)){lE(q+24|0,h);break c}else{g=h;r=f[g+4>>2]|0;f[e>>2]=f[g>>2];f[e+4>>2]=r;f[m>>2]=(f[m>>2]|0)+8;break c}}case 3:{e=f[o>>2]|0;if((e|0)==(f[((q+36|0)+8|0)>>2]|0)){lE(q+36|0,h);break c}else{g=h;r=f[g+4>>2]|0;f[e>>2]=f[g>>2];f[e+4>>2]=r;f[o>>2]=(f[o>>2]|0)+8;break c}}default:{}}while(0);h=h+8|0;if((h|0)==(b+(i<<3)|0|0))break b}}else h=b;while(1){sRa(q+48|0,k,h);e=f[(q+48|0)>>2]|0;if(!e)e=B_a(a,h,8)|0;else e=((NFa(e)|0)^1)&1;g=f[((q+48|0)+4|0)>>2]|0;if(g|0)iOb(g);d:do switch(e<<24>>24){case 0:if(!(f[h>>2]|0)){e=f[o>>2]|0;if((e|0)==(f[((q+36|0)+8|0)>>2]|0)){lE(q+36|0,h);break d}else{g=h;r=f[g+4>>2]|0;f[e>>2]=f[g>>2];f[e+4>>2]=r;f[o>>2]=(f[o>>2]|0)+8;break d}}else{e=f[m>>2]|0;if((e|0)==(f[((q+24|0)+8|0)>>2]|0)){lE(q+24|0,h);break d}else{g=h;r=f[g+4>>2]|0;f[e>>2]=f[g>>2];f[e+4>>2]=r;f[m>>2]=(f[m>>2]|0)+8;break d}}case 3:{e=f[o>>2]|0;if((e|0)==(f[((q+36|0)+8|0)>>2]|0)){lE(q+36|0,h);break d}else{g=h;r=f[g+4>>2]|0;f[e>>2]=f[g>>2];f[e+4>>2]=r;f[o>>2]=(f[o>>2]|0)+8;break d}}default:{}}while(0);h=h+8|0;if((h|0)==(b+(i<<3)|0|0))break b}}while(0);do{r=1;f[q+80>>2]=a;f[q+96>>2]=c;f[q+104>>2]=d;f[q+472>>2]=j;f[q+632>>2]=l;f[q+656>>2]=o;f[q+688>>2]=m;f[q+1248>>2]=p;f[q+1256>>2]=r;f[q+1288>>2]=0;f[q+1292>>2]=0;X0a(q);G=f[q+1288>>2]|0;D=f[q+1292>>2]|0;H=+n[q+1292>>2];f[q+1288>>2]=0;f[q+1292>>2]=0;if((G|0)==1)break}while(0);e=f[(q+24|0)>>2]|0;if(e|0){g=f[m>>2]|0;if((g|0)!=(e|0))f[m>>2]=g+(~((g+-8-e|0)>>>3)<<3);sOb(e)}e=f[(q+36|0)>>2]|0;if(e|0){g=f[o>>2]|0;if((g|0)!=(e|0))f[o>>2]=g+(~((g+-8-e|0)>>>3)<<3);sOb(e)}e=f[(q+20|0)>>2]|0;f[(q+20|0)>>2]=0;if(!e){u=q;return}gh[f[(f[e>>2]|0)+4>>2]&2047](e);u=q;return}function K0a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+128|0;l=q+124|0;p=q+120|0;m=q+96|0;n=q+8|0;o=q+88|0;j=q+4|0;k=q;f[p>>2]=d;if(f[a+436>>2]|0){h=f[e>>2]|0;if(h>>>0<(f[(f[a+428>>2]|0)+16>>2]|0)>>>0){g=a+380|0;c=f[g>>2]|0;if(c>>>0<(f[a+384>>2]|0)>>>0){f[c>>2]=h;f[c+4>>2]=f[p>>2];f[g>>2]=c+8;u=q;return}else{L0a(a+376|0,e,p);u=q;return}}}ykb(c,d);g=gkb(c,d)|0;i=hkb(c,d)|0;if(b[i+13>>0]|0){e=(M0a(a+356|0,p)|0)+20|0;e=f[e>>2]|0;oh[f[(f[e>>2]|0)+8>>2]&1023](e,p);u=q;return}switch(g|0){case 0:{ikb(m,c,d);kkb(n,c,f[p>>2]|0);a=f[a+832>>2]|0;k=f[(f[a>>2]|0)+152>>2]|0;f[o>>2]=f[e>>2];e=f[p>>2]|0;h=m+4|0;g=f[m>>2]|0;p=(f[h>>2]|0)-g>>4;f[l>>2]=f[o>>2];Xh[k&63](a,l,e,i,p,g,n);g=f[m>>2]|0;if(g|0){c=f[h>>2]|0;if((c|0)!=(g|0))f[h>>2]=c+(~((c+-16-g|0)>>>4)<<4);sOb(g)}u=q;return}case 1:{lkb(m,c,d);a=f[a+832>>2]|0;o=f[(f[a>>2]|0)+160>>2]|0;f[j>>2]=f[e>>2];p=f[p>>2]|0;f[l>>2]=f[j>>2];Lh[o&255](a,l,p,i,m);u=q;return}case 2:{mkb(m,c,d);nkb(n,c,f[p>>2]|0);a=f[a+832>>2]|0;o=f[(f[a>>2]|0)+156>>2]|0;f[k>>2]=f[e>>2];p=f[p>>2]|0;f[l>>2]=f[k>>2];Th[o&127](a,l,p,i,m,n);u=q;return}default:{u=q;return}}}function L0a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=a+4|0;k=f[a>>2]|0;l=(f[i>>2]|0)-k|0;m=l>>3;d=m+1|0;if(d>>>0>536870911)AMb(a);g=a+8|0;n=(f[g>>2]|0)-k|0;e=n>>2;d=n>>3>>>0<268435455?(e>>>0>>0?d:e):536870911;do if(!d){h=0;j=0}else if(d>>>0>536870911)vd();else{j=pOb(d<<3)|0;h=j;break}while(0);e=h+(m<<3)|0;f[e>>2]=f[b>>2];f[h+(m<<3)+4>>2]=f[c>>2];if((l|0)>0)bQb(j|0,k|0,l|0)|0;f[a>>2]=h;f[i>>2]=e+8;f[g>>2]=h+(d<<3);if(!k)return;sOb(k);return}function M0a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0;o=f[c>>2]|0;l=a+4|0;k=f[l>>2]|0;j=(k|0)==0;a:do if(j)c=0;else{e=k+-1|0;d=(e&k|0)==0;if(d)g=e&o;else if(k>>>0>o>>>0)g=o;else g=(o>>>0)%(k>>>0)|0;c=f[(f[a>>2]|0)+(g<<2)>>2]|0;if(!c)c=g;else{if(d){do{c=f[c>>2]|0;if(!c){c=g;break a}m=f[c+4>>2]|0;if(!((m|0)==(o|0)|(m&e|0)==(g|0))){c=g;break a}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}do{c=f[c>>2]|0;if(!c){c=g;break a}d=f[c+4>>2]|0;if((d|0)!=(o|0)){if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(g|0)){c=g;break a}}}while((f[c+8>>2]|0)!=(o|0));a=c+12|0;return a|0}}while(0);m=pOb(48)|0;f[m+8>>2]=o;d=m+28|0;e=m+12|0;g=e+36|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));n[d>>2]=1.0;g=m+32|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;b[g+12>>0]=0;f[m+4>>2]=o;f[m>>2]=0;g=a+12|0;h=+(((f[g>>2]|0)+1|0)>>>0);d=a+16|0;i=+n[d>>2];do if(j|i*+(k>>>0)>>0<3|(k+-1&k|0)!=0)&1;j=~~+W(+(h/i))>>>0;c=c>>>0>>0?j:c;if((c|0)==1){c=2;e=k}else if(!(c+-1&c))e=k;else{c=hDb(c)|0;e=f[l>>2]|0}if(c>>>0>e>>>0)N0a(a,c);else if(c>>>0>>0){d=~~+W(+(+((f[g>>2]|0)>>>0)/+n[d>>2]))>>>0;if(e>>>0>2&(e+-1&e|0)==0)d=1<<32-(_(d+-1|0)|0);else d=hDb(d)|0;c=c>>>0>>0?d:c;if(c>>>0>>0)N0a(a,c)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){e=c;c=d&o;break}if(c>>>0>o>>>0){e=c;c=o}else{e=c;c=(o>>>0)%(c>>>0)|0}}else e=k;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[m>>2]=f[c>>2];f[c>>2]=m;f[d>>2]=c;c=f[m>>2]|0;if(c|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;p=41}}else{f[m>>2]=f[c>>2];p=41}if((p|0)==41)f[c>>2]=m;f[g>>2]=(f[g>>2]|0)+1;a=m;a=a+12|0;return a|0}function N0a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function O0a(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;i=m+8|0;k=m+4|0;l=m;if((f[a+12>>2]|0)!=2){l=f[b>>2]|0;oh[f[(f[l>>2]|0)+16>>2]&1023](l,0);u=m;return}j=a+4|0;gZa(f[j>>2]|0,1);h=f[(f[a+8>>2]|0)+232>>2]|0;g=okb(c,h,d,e,g)|0;f[l>>2]=g;if(!g){l=f[b>>2]|0;oh[f[(f[l>>2]|0)+12>>2]&1023](l,i)}else{c=M0a((f[j>>2]|0)+356|0,l)|0;g=c+20|0;e=f[b>>2]|0;f[b>>2]=0;a=f[g>>2]|0;f[g>>2]=e;if(a|0)gh[f[(f[a>>2]|0)+4>>2]&2047](a);g=(f[j>>2]|0)+820|0;b=(f[g>>2]|0)+-1|0;f[g>>2]=b;f[c+24>>2]=b;l=f[l>>2]|0;j=f[j>>2]|0;f[k>>2]=b;f[i>>2]=f[k>>2];K0a(j,h,l,i)}u=m;return}function P0a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;h=l+8|0;j=l+4|0;k=l;if((f[a+12>>2]|0)!=2){k=f[b>>2]|0;oh[f[(f[k>>2]|0)+16>>2]&1023](k,0);u=l;return}i=a+4|0;gZa(f[i>>2]|0,1);g=f[(f[a+8>>2]|0)+232>>2]|0;e=wkb(c,g,d,e)|0;f[k>>2]=e;if(!e){k=f[b>>2]|0;oh[f[(f[k>>2]|0)+12>>2]&1023](k,h)}else{c=M0a((f[i>>2]|0)+356|0,k)|0;e=c+20|0;d=f[b>>2]|0;f[b>>2]=0;a=f[e>>2]|0;f[e>>2]=d;if(a|0)gh[f[(f[a>>2]|0)+4>>2]&2047](a);e=(f[i>>2]|0)+820|0;b=(f[e>>2]|0)+-1|0;f[e>>2]=b;f[c+24>>2]=b;k=f[k>>2]|0;i=f[i>>2]|0;f[j>>2]=b;f[h>>2]=f[j>>2];K0a(i,g,k,h)}u=l;return}function Q0a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;g=k+8|0;i=k+4|0;j=k;if((f[a+12>>2]|0)!=2){j=f[b>>2]|0;oh[f[(f[j>>2]|0)+16>>2]&1023](j,0);u=k;return}h=a+4|0;gZa(f[h>>2]|0,1);e=f[(f[a+8>>2]|0)+232>>2]|0;d=vkb(c,e,d)|0;f[j>>2]=d;if(!d){j=f[b>>2]|0;oh[f[(f[j>>2]|0)+12>>2]&1023](j,g)}else{c=M0a((f[h>>2]|0)+356|0,j)|0;d=c+20|0;l=f[b>>2]|0;f[b>>2]=0;a=f[d>>2]|0;f[d>>2]=l;if(a|0)gh[f[(f[a>>2]|0)+4>>2]&2047](a);l=(f[h>>2]|0)+820|0;b=(f[l>>2]|0)+-1|0;f[l>>2]=b;f[c+24>>2]=b;l=f[j>>2]|0;j=f[h>>2]|0;f[i>>2]=b;f[g>>2]=f[i>>2];K0a(j,e,l,g)}u=k;return}function R0a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+16|0;q=x+4|0;r=x;if((c|0)==0?1:(f[a+12>>2]|0)!=2){u=x;return}n=a+4|0;j=f[n>>2]|0;m=j+380|0;l=f[m>>2]|0;k=l;j=f[j+376>>2]|0;a:do if((j|0)==(l|0))g=l;else{e=j;while(1){if((f[e+4>>2]|0)==(c|0))break;e=e+8|0;if((e|0)==(l|0)){g=k;break a}}g=e;if((e|0)!=(l|0)){e=g;while(1){do{h=e;i=h+8|0;e=i;if((i|0)==(l|0))break a;h=h+12|0}while((f[h>>2]|0)==(c|0));p=g;f[p>>2]=f[i>>2];f[p+4>>2]=f[h>>2];g=p+8|0}}}while(0);e=j+(g-j>>3<<3)|0;if((l|0)!=(g|0)){i=e+(k-g>>3<<3)|0;if((i|0)!=(l|0)){j=l+-8|0;g=i;h=e;while(1){f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];g=g+8|0;if((g|0)==(l|0))break;else h=h+8|0}e=e+(((j-i|0)>>>3)+1<<3)|0}if((l|0)!=(e|0))f[m>>2]=l+(~((l+-8-e|0)>>>3)<<3)}o=f[(f[a+8>>2]|0)+232>>2]|0;i=(hkb(o,c)|0)+13|0;i=b[i>>0]|0;zkb(o,c);o=f[n>>2]|0;l=f[o+360>>2]|0;if(!l){u=x;return}m=l+-1|0;n=(m&l|0)==0;if(n)h=m&c;else if(l>>>0>c>>>0)h=c;else h=(c>>>0)%(l>>>0)|0;p=o+356|0;k=f[p>>2]|0;e=f[k+(h<<2)>>2]|0;if(!e){u=x;return}e=f[e>>2]|0;if(!e){u=x;return}b:do if(n){while(1){j=f[e+4>>2]|0;g=(j|0)==(c|0);if(!(g|(j&m|0)==(h|0))){g=75;break}if(g)if((f[e+8>>2]|0)==(c|0)){w=e;break b}e=f[e>>2]|0;if(!e){g=75;break}}if((g|0)==75){u=x;return}}else{while(1){g=f[e+4>>2]|0;if((g|0)==(c|0)){if((f[e+8>>2]|0)==(c|0)){w=e;break b}}else{if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0;if((g|0)!=(h|0)){g=75;break}}e=f[e>>2]|0;if(!e){g=75;break}}if((g|0)==75){u=x;return}}while(0);if(!(i<<24>>24)){t=o+820|0;v=(f[t>>2]|0)+-1|0;f[t>>2]=v;f[w+40>>2]=v;w=f[(f[a>>2]|0)+164>>2]|0;f[r>>2]=v;f[q>>2]=f[r>>2];xh[w&127](a,q,c);u=x;return}j=f[w>>2]|0;if(n)c=m&c;else if(l>>>0<=c>>>0)c=(c>>>0)%(l>>>0)|0;h=k+(c<<2)|0;i=f[h>>2]|0;while(1){e=f[i>>2]|0;if((e|0)==(w|0))break;else i=e}if((i|0)==(o+364|0))g=49;else{e=f[i+4>>2]|0;if(n)e=e&m;else if(e>>>0>=l>>>0)e=(e>>>0)%(l>>>0)|0;if((e|0)==(c|0)){s=j;g=57}else g=49}do if((g|0)==49){if(j|0){e=f[j+4>>2]|0;if(n)g=e&m;else if(e>>>0>>0)g=e;else g=(e>>>0)%(l>>>0)|0;if((g|0)==(c|0)){d=e;v=j;g=59;break}}f[h>>2]=0;s=f[w>>2]|0;g=57}while(0);if((g|0)==57){e=s;if(!s)t=e;else{d=f[s+4>>2]|0;v=e;g=59}}if((g|0)==59){if(n)d=d&m;else if(d>>>0>=l>>>0)d=(d>>>0)%(l>>>0)|0;if((d|0)==(c|0))t=v;else{f[(f[p>>2]|0)+(d<<2)>>2]=i;t=f[w>>2]|0}}f[i>>2]=t;f[w>>2]=0;v=o+368|0;f[v>>2]=(f[v>>2]|0)+-1;v=w+32|0;d=f[v>>2]|0;f[v>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=f[w+20>>2]|0;if(d|0)do{e=d;d=f[d>>2]|0;v=e+12|0;g=f[v>>2]|0;f[v>>2]=0;if(g|0)gh[f[(f[g>>2]|0)+4>>2]&2047](g);sOb(e)}while((d|0)!=0);v=w+12|0;d=f[v>>2]|0;f[v>>2]=0;if(d|0)sOb(d);sOb(w);u=x;return}function S0a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+32|0;o=q+20|0;p=q+4|0;m=q;n=q+16|0;if((f[a+12>>2]|0)!=2){p=f[c>>2]|0;oh[f[(f[p>>2]|0)+16>>2]&1023](p,0);u=q;return}if(!d){p=f[c>>2]|0;oh[f[(f[p>>2]|0)+12>>2]&1023](p,o);u=q;return}l=a+4|0;g=f[l>>2]|0;j=f[g+360>>2]|0;a:do if(j|0){i=j+-1|0;h=(i&j|0)==0;if(h)k=i&d;else if(j>>>0>d>>>0)k=d;else k=(d>>>0)%(j>>>0)|0;g=f[(f[g+356>>2]|0)+(k<<2)>>2]|0;if(g|0){g=f[g>>2]|0;if(g|0){b:do if(h)while(1){j=f[g+4>>2]|0;h=(j|0)==(d|0);if(!(h|(j&i|0)==(k|0)))break a;if(h)if((f[g+8>>2]|0)==(d|0))break b;g=f[g>>2]|0;if(!g)break a}else while(1){h=f[g+4>>2]|0;if((h|0)==(d|0)){if((f[g+8>>2]|0)==(d|0))break b}else{if(h>>>0>=j>>>0)h=(h>>>0)%(j>>>0)|0;if((h|0)!=(k|0))break a}g=f[g>>2]|0;if(!g)break a}while(0);h=g+12|0;if(f[g+40>>2]|0){p=f[c>>2]|0;oh[f[(f[p>>2]|0)+12>>2]&1023](p,o);u=q;return}g=f[(f[a+8>>2]|0)+232>>2]|0;if(!(xkb(g,d)|0)){p=f[c>>2]|0;oh[f[(f[p>>2]|0)+12>>2]&1023](p,o);u=q;return}f[p>>2]=0;j=p+4|0;f[j>>2]=0;f[p+8>>2]=0;Ckb(g,d,e,p);do if((f[p>>2]|0)==(f[j>>2]|0)){k=(hkb(g,d)|0)+13|0;if(!(b[k>>0]|0)){k=(f[l>>2]|0)+820|0;l=(f[k>>2]|0)+-1|0;f[k>>2]=l;f[m>>2]=l;l=Y0a(h,m)|0;k=f[c>>2]|0;f[c>>2]=0;g=f[l>>2]|0;f[l>>2]=k;if(g|0)gh[f[(f[g>>2]|0)+4>>2]&2047](g);c=f[(f[a>>2]|0)+168>>2]|0;f[n>>2]=f[m>>2];f[o>>2]=f[n>>2];Fh[c&255](a,o,d,e);break}i=o+4|0;n=pOb(8)|0;f[o>>2]=n;g=n+8|0;f[o+8>>2]=g;f[n>>2]=0;f[n+4>>2]=-1;f[i>>2]=g;g=f[c>>2]|0;oh[f[(f[g>>2]|0)+8>>2]&1023](g,o);g=f[o>>2]|0;if(g|0){h=f[i>>2]|0;if((h|0)!=(g|0))f[i>>2]=h+(~((h+-8-g|0)>>>3)<<3);sOb(g)}}else{o=f[c>>2]|0;oh[f[(f[o>>2]|0)+8>>2]&1023](o,p)}while(0);g=f[p>>2]|0;if(g|0){h=f[j>>2]|0;if((h|0)!=(g|0))f[j>>2]=h+(~((h+-8-g|0)>>>3)<<3);sOb(g)}u=q;return}}}while(0);p=f[c>>2]|0;oh[f[(f[p>>2]|0)+12>>2]&1023](p,o);u=q;return}function T0a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;m=f[a+80>>2]|0;q=f[a+96>>2]|0;r=f[a+568>>2]|0;i=f[a+648>>2]|0;t=f[a+704>>2]|0;x=f[a+752>>2]|0;v=f[a+800>>2]|0;j=f[a+824>>2]|0;k=f[a+864>>2]|0;w=f[a+1472>>2]|0;y=f[a+1480>>2]|0;a:{if(y){y=0;if(1){e=j;do{vRa(a+48|0,i,e);if(!(f[(a+48|0)>>2]|0))c=B_a(m,e,3)|0;else c=1;d=f[((a+48|0)+4|0)>>2]|0;if(d|0)iOb(d);b:do switch(c<<24>>24){case 0:if(!(f[e>>2]|0)){c=f[x>>2]|0;if((c|0)==(f[((a+36|0)+8|0)>>2]|0)){$E(a+36|0,e);break b}else{z=e;d=f[z+4>>2]|0;f[c>>2]=f[z>>2];f[c+4>>2]=d;f[x>>2]=(f[x>>2]|0)+8;break b}}else{c=f[v>>2]|0;if((c|0)==(f[((a+24|0)+8|0)>>2]|0)){$E(a+24|0,e);break b}else{d=e;z=f[d+4>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=z;f[v>>2]=(f[v>>2]|0)+8;break b}}case 3:{c=f[x>>2]|0;if((c|0)==(f[((a+36|0)+8|0)>>2]|0)){$E(a+36|0,e);break b}else{d=e;z=f[d+4>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=z;f[x>>2]=(f[x>>2]|0)+8;break b}}default:{}}while(0);e=e+8|0}while((e|0)!=(j+(k<<3)|0|0));c=1;if(c){c=0;if((f[(a+24|0)>>2]|0)==(f[v>>2]|0))w=26;else c=1}if(c)if(1){i=f[(t+152|0)>>2]|0;d=f[(t+156|0)>>2]|0;c=1;if(c){c=0;if(i>>>0>>0){f[i>>2]=f[q>>2];f[i+4>>2]=f[(q+4|0)>>2];f[(i+8|0)>>2]=0;f[(i+12|0)>>2]=0;f[i+16>>2]=0;f[(i+8|0)>>2]=f[(q+8|0)>>2];f[(i+12|0)>>2]=f[(q+12|0)>>2];f[i+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[i+24>>2]=r;f[(t+152|0)>>2]=(f[(t+152|0)>>2]|0)+28}else c=1}if(c)if(1){e=f[(t+148|0)>>2]|0;c=((i-e|0)/28|0)+1|0;if(c>>>0>153391689)AMb(t+148|0);c=((d-e|0)/28|0)>>>0<76695844?(((d-e|0)/28|0)<<1>>>0>>0?c:((d-e|0)/28|0)<<1):153391689;do if(!c)l=0;else if(c>>>0>153391689)vd();else{l=pOb(c*28|0)|0;break}while(0);k=l+(((i-e|0)/28|0)*28|0)|0;j=l+(c*28|0)|0;f[k>>2]=f[q>>2];f[l+(((i-e|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+16>>2]=0;f[l+(((i-e|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[l+(((i-e|0)/28|0)*28|0)+24>>2]=r;i=f[(t+148|0)>>2]|0;c=f[(t+152|0)>>2]|0;if((c|0)==(i|0)){d=k;l=i;c=i}else{d=k;e=k;do{l=c;c=c+-28|0;f[e+-28>>2]=f[c>>2];f[e+-24>>2]=f[l+-24>>2];A=e+-20|0;f[A>>2]=0;z=e+-16|0;f[z>>2]=0;f[e+-12>>2]=0;f[A>>2]=f[(l+-20|0)>>2];f[z>>2]=f[(l+-16|0)>>2];f[e+-12>>2]=f[(l+-12|0)>>2];f[(l+-12|0)>>2]=0;f[(l+-16|0)>>2]=0;f[(l+-20|0)>>2]=0;f[c>>2]=0;z=f[(l+-4|0)>>2]|0;f[(l+-4|0)>>2]=0;f[e+-4>>2]=z;e=d+-28|0;d=e}while((c|0)!=(i|0));l=f[(t+148|0)>>2]|0;c=f[(t+152|0)>>2]|0}f[(t+148|0)>>2]=d;f[(t+152|0)>>2]=k+28|0;f[(t+156|0)>>2]=j;k=l;if((c|0)!=(k|0)){j=c;do{A=j+-4|0;c=f[A>>2]|0;f[A>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);d=j+-20|0;c=f[d>>2]|0;i=j+-16|0;j=j+-28|0;if((c|0)==(f[i>>2]|0)){e=f[j>>2]|0;if(e){tOb(e);c=f[d>>2]|0}}if(c|0){d=f[i>>2]|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}}while((j|0)!=(k|0))}if(l|0)sOb(l)}A=f[(a+24|0)>>2]|0;c=f[v>>2]|0;f[a>>2]=(A|0)==(c|0)?0:A;f[a+4>>2]=c-A>>3;f[a+8>>2]=A;f[(a+12|0)>>2]=c;f[a+16>>2]=f[((a+24|0)+8|0)>>2];f[((a+24|0)+8|0)>>2]=0;f[v>>2]=0;f[(a+24|0)>>2]=0;f[(a+48|0)>>2]=0;t0a(m,a+48|0,a);c=f[(a+48|0)>>2]|0;f[(a+48|0)>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[(a+8|0)>>2]|0;if((c|0)==(f[(a+12|0)>>2]|0)){d=f[a>>2]|0;if(d){tOb(d);c=f[(a+8|0)>>2]|0}}if(c|0){d=f[(a+12|0)>>2]|0;if((d|0)!=(c|0))f[(a+12|0)>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}}}else y=1}do if((w|0)==26){if((f[(a+36|0)>>2]|0)!=(f[x>>2]|0)){H_a(a+20|0,a+36|0,q);break}j=f[(t+816|0)>>2]|0;f[(a+48|0)>>2]=j;c=1;if(c){c=0;if((j|0)==(f[t+440>>2]|0))oh[f[(f[r>>2]|0)+8>>2]&1023](r,q);else c=1}if(c)if(1){f[(t+816|0)>>2]=j+1|0;i=f[(t+132|0)>>2]|0;c:do if(!i){b=0;w=45}else{if(!((i+-1|0)&i))e=(i+-1|0)&(j+1|0);else if(i>>>0>(j+1|0)>>>0)e=j+1|0;else e=((j+1|0)>>>0)%(i>>>0)|0;c=f[(f[(t+128|0)>>2]|0)+(e<<2)>>2]|0;if(!c){b=e;w=45}else{if(!((i+-1|0)&i))while(1){c=f[c>>2]|0;if(!c){b=e;w=45;break c}A=f[c+4>>2]|0;if(!((A|0)==(j+1|0|0)|(A&(i+-1|0)|0)==(e|0))){b=e;w=45;break c}if((f[c+8>>2]|0)==(j+1|0|0)){p=c;break c}}while(1){c=f[c>>2]|0;if(!c){b=e;w=45;break c}d=f[c+4>>2]|0;if((d|0)!=(j+1|0|0)){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;if((d|0)!=(e|0)){b=e;w=45;break c}}if((f[c+8>>2]|0)==(j+1|0|0)){p=c;break}}}}while(0);if((w|0)==45){e=pOb(24)|0;f[e+8>>2]=j+1|0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=j+1|0;f[e>>2]=0;g=+(((f[(t+140|0)>>2]|0)+1|0)>>>0);h=+n[t+144>>2];do if((i|0)==0|h*+(i>>>0)>>0;XZa(t+128|0,(i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1)>>>0>>0?b:i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1);b=f[(t+132|0)>>2]|0;if(!((b+-1|0)&b)){d=b;b=(b+-1|0)&(j+1|0);break}if(b>>>0>(j+1|0)>>>0){d=b;b=j+1|0}else{d=b;b=((j+1|0)>>>0)%(b>>>0)|0}}else d=i;while(0);b=(f[(t+128|0)>>2]|0)+(b<<2)|0;c=f[b>>2]|0;if(!c){f[e>>2]=f[(t+136|0)>>2];f[(t+136|0)>>2]=e;f[b>>2]=t+136|0;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;o=(f[(t+128|0)>>2]|0)+(b<<2)|0;w=58}}else{f[e>>2]=f[c>>2];o=c;w=58}if((w|0)==58)f[o>>2]=e;f[(t+140|0)>>2]=(f[(t+140|0)>>2]|0)+1;p=e}m=p+12|0;o=p+16|0;e=f[o>>2]|0;l=p+20|0;c=f[l>>2]|0;b=1;if(b){b=0;if(e>>>0>>0){f[e>>2]=f[q>>2];f[e+4>>2]=f[(q+4|0)>>2];f[(e+8|0)>>2]=0;f[(e+12|0)>>2]=0;f[e+16>>2]=0;f[(e+8|0)>>2]=f[(q+8|0)>>2];f[(e+12|0)>>2]=f[(q+12|0)>>2];f[e+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[e+24>>2]=r;f[o>>2]=(f[o>>2]|0)+28}else b=1}if(b)if(1){d=f[m>>2]|0;b=((e-d|0)/28|0)+1|0;if(b>>>0>153391689)AMb(m);b=((c-d|0)/28|0)>>>0<76695844?(((c-d|0)/28|0)<<1>>>0>>0?b:((c-d|0)/28|0)<<1):153391689;do if(!b)s=0;else if(b>>>0>153391689)vd();else{s=pOb(b*28|0)|0;break}while(0);j=s+(((e-d|0)/28|0)*28|0)|0;i=s+(b*28|0)|0;f[j>>2]=f[q>>2];f[s+(((e-d|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+16>>2]=0;f[s+(((e-d|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[s+(((e-d|0)/28|0)*28|0)+24>>2]=r;e=f[m>>2]|0;b=f[o>>2]|0;if((b|0)==(e|0)){c=j;k=e;b=e}else{c=j;d=j;do{z=b;b=b+-28|0;f[d+-28>>2]=f[b>>2];f[d+-24>>2]=f[z+-24>>2];s=d+-20|0;f[s>>2]=0;A=d+-16|0;f[A>>2]=0;f[d+-12>>2]=0;f[s>>2]=f[(z+-20|0)>>2];f[A>>2]=f[(z+-16|0)>>2];f[d+-12>>2]=f[(z+-12|0)>>2];f[(z+-12|0)>>2]=0;f[(z+-16|0)>>2]=0;f[(z+-20|0)>>2]=0;f[b>>2]=0;A=f[(z+-4|0)>>2]|0;f[(z+-4|0)>>2]=0;f[d+-4>>2]=A;d=c+-28|0;c=d}while((b|0)!=(e|0));k=f[m>>2]|0;b=f[o>>2]|0}f[m>>2]=c;f[o>>2]=j+28|0;f[l>>2]=i;j=k;if((b|0)!=(j|0)){i=b;do{A=i+-4|0;b=f[A>>2]|0;f[A>>2]=0;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);c=i+-20|0;b=f[c>>2]|0;e=i+-16|0;i=i+-28|0;if((b|0)==(f[e>>2]|0)){d=f[i>>2]|0;if(d){tOb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}}while((i|0)!=(j|0))}if(k|0)sOb(k)}A=p0a(t+444|0,a+48|0)|0;f[A>>2]=4}}while(0);b=f[(a+24|0)>>2]|0;if(b|0){c=f[v>>2]|0;if((c|0)!=(b|0))f[v>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[(a+36|0)>>2]|0;if(b|0){c=f[x>>2]|0;if((c|0)!=(b|0))f[x>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[(a+20|0)>>2]|0;f[(a+20|0)>>2]=0;if(!b){u=a;f[a+1520>>2]=5;break a}gh[f[(f[b>>2]|0)+4>>2]&2047](b);u=a;f[a+1520>>2]=5;break a}f[a+1472>>2]=w;f[a+1480>>2]=y}function U0a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;m=f[a+80>>2]|0;q=f[a+96>>2]|0;r=f[a+568>>2]|0;i=f[a+648>>2]|0;t=f[a+704>>2]|0;x=f[a+752>>2]|0;v=f[a+800>>2]|0;j=f[a+824>>2]|0;k=f[a+864>>2]|0;w=f[a+1472>>2]|0;y=f[a+1480>>2]|0;a:{if(y){y=0;if(1){e=j;do{uRa(a+48|0,i,e);if(!(f[(a+48|0)>>2]|0))c=B_a(m,e,4)|0;else c=1;d=f[((a+48|0)+4|0)>>2]|0;if(d|0)iOb(d);b:do switch(c<<24>>24){case 0:if(!(f[e>>2]|0)){c=f[x>>2]|0;if((c|0)==(f[((a+36|0)+8|0)>>2]|0)){xM(a+36|0,e);break b}else{z=e;d=f[z+4>>2]|0;f[c>>2]=f[z>>2];f[c+4>>2]=d;f[x>>2]=(f[x>>2]|0)+8;break b}}else{c=f[v>>2]|0;if((c|0)==(f[((a+24|0)+8|0)>>2]|0)){xM(a+24|0,e);break b}else{d=e;z=f[d+4>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=z;f[v>>2]=(f[v>>2]|0)+8;break b}}case 3:{c=f[x>>2]|0;if((c|0)==(f[((a+36|0)+8|0)>>2]|0)){xM(a+36|0,e);break b}else{d=e;z=f[d+4>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=z;f[x>>2]=(f[x>>2]|0)+8;break b}}default:{}}while(0);e=e+8|0}while((e|0)!=(j+(k<<3)|0|0));c=1;if(c){c=0;if((f[(a+24|0)>>2]|0)==(f[v>>2]|0))w=26;else c=1}if(c)if(1){i=f[(t+184|0)>>2]|0;d=f[(t+188|0)>>2]|0;c=1;if(c){c=0;if(i>>>0>>0){f[i>>2]=f[q>>2];f[i+4>>2]=f[(q+4|0)>>2];f[(i+8|0)>>2]=0;f[(i+12|0)>>2]=0;f[i+16>>2]=0;f[(i+8|0)>>2]=f[(q+8|0)>>2];f[(i+12|0)>>2]=f[(q+12|0)>>2];f[i+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[i+24>>2]=r;f[(t+184|0)>>2]=(f[(t+184|0)>>2]|0)+28}else c=1}if(c)if(1){e=f[(t+180|0)>>2]|0;c=((i-e|0)/28|0)+1|0;if(c>>>0>153391689)AMb(t+180|0);c=((d-e|0)/28|0)>>>0<76695844?(((d-e|0)/28|0)<<1>>>0>>0?c:((d-e|0)/28|0)<<1):153391689;do if(!c)l=0;else if(c>>>0>153391689)vd();else{l=pOb(c*28|0)|0;break}while(0);k=l+(((i-e|0)/28|0)*28|0)|0;j=l+(c*28|0)|0;f[k>>2]=f[q>>2];f[l+(((i-e|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+16>>2]=0;f[l+(((i-e|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[l+(((i-e|0)/28|0)*28|0)+24>>2]=r;i=f[(t+180|0)>>2]|0;c=f[(t+184|0)>>2]|0;if((c|0)==(i|0)){d=k;l=i;c=i}else{d=k;e=k;do{l=c;c=c+-28|0;f[e+-28>>2]=f[c>>2];f[e+-24>>2]=f[l+-24>>2];A=e+-20|0;f[A>>2]=0;z=e+-16|0;f[z>>2]=0;f[e+-12>>2]=0;f[A>>2]=f[(l+-20|0)>>2];f[z>>2]=f[(l+-16|0)>>2];f[e+-12>>2]=f[(l+-12|0)>>2];f[(l+-12|0)>>2]=0;f[(l+-16|0)>>2]=0;f[(l+-20|0)>>2]=0;f[c>>2]=0;z=f[(l+-4|0)>>2]|0;f[(l+-4|0)>>2]=0;f[e+-4>>2]=z;e=d+-28|0;d=e}while((c|0)!=(i|0));l=f[(t+180|0)>>2]|0;c=f[(t+184|0)>>2]|0}f[(t+180|0)>>2]=d;f[(t+184|0)>>2]=k+28|0;f[(t+188|0)>>2]=j;k=l;if((c|0)!=(k|0)){j=c;do{A=j+-4|0;c=f[A>>2]|0;f[A>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);d=j+-20|0;c=f[d>>2]|0;i=j+-16|0;j=j+-28|0;if((c|0)==(f[i>>2]|0)){e=f[j>>2]|0;if(e){tOb(e);c=f[d>>2]|0}}if(c|0){d=f[i>>2]|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}}while((j|0)!=(k|0))}if(l|0)sOb(l)}A=f[(a+24|0)>>2]|0;c=f[v>>2]|0;f[a>>2]=(A|0)==(c|0)?0:A;f[a+4>>2]=c-A>>3;f[a+8>>2]=A;f[(a+12|0)>>2]=c;f[a+16>>2]=f[((a+24|0)+8|0)>>2];f[((a+24|0)+8|0)>>2]=0;f[v>>2]=0;f[(a+24|0)>>2]=0;f[(a+48|0)>>2]=0;y0a(m,a+48|0,a);c=f[(a+48|0)>>2]|0;f[(a+48|0)>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[(a+8|0)>>2]|0;if((c|0)==(f[(a+12|0)>>2]|0)){d=f[a>>2]|0;if(d){tOb(d);c=f[(a+8|0)>>2]|0}}if(c|0){d=f[(a+12|0)>>2]|0;if((d|0)!=(c|0))f[(a+12|0)>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}}}else y=1}do if((w|0)==26){if((f[(a+36|0)>>2]|0)!=(f[x>>2]|0)){G_a(a+20|0,a+36|0,q);break}j=f[(t+816|0)>>2]|0;f[(a+48|0)>>2]=j;c=1;if(c){c=0;if((j|0)==(f[t+440>>2]|0))oh[f[(f[r>>2]|0)+8>>2]&1023](r,q);else c=1}if(c)if(1){f[(t+816|0)>>2]=j+1|0;i=f[(t+164|0)>>2]|0;c:do if(!i){b=0;w=45}else{if(!((i+-1|0)&i))e=(i+-1|0)&(j+1|0);else if(i>>>0>(j+1|0)>>>0)e=j+1|0;else e=((j+1|0)>>>0)%(i>>>0)|0;c=f[(f[(t+160|0)>>2]|0)+(e<<2)>>2]|0;if(!c){b=e;w=45}else{if(!((i+-1|0)&i))while(1){c=f[c>>2]|0;if(!c){b=e;w=45;break c}A=f[c+4>>2]|0;if(!((A|0)==(j+1|0|0)|(A&(i+-1|0)|0)==(e|0))){b=e;w=45;break c}if((f[c+8>>2]|0)==(j+1|0|0)){p=c;break c}}while(1){c=f[c>>2]|0;if(!c){b=e;w=45;break c}d=f[c+4>>2]|0;if((d|0)!=(j+1|0|0)){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;if((d|0)!=(e|0)){b=e;w=45;break c}}if((f[c+8>>2]|0)==(j+1|0|0)){p=c;break}}}}while(0);if((w|0)==45){e=pOb(24)|0;f[e+8>>2]=j+1|0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=j+1|0;f[e>>2]=0;g=+(((f[(t+172|0)>>2]|0)+1|0)>>>0);h=+n[t+176>>2];do if((i|0)==0|h*+(i>>>0)>>0;PZa(t+160|0,(i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1)>>>0>>0?b:i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1);b=f[(t+164|0)>>2]|0;if(!((b+-1|0)&b)){d=b;b=(b+-1|0)&(j+1|0);break}if(b>>>0>(j+1|0)>>>0){d=b;b=j+1|0}else{d=b;b=((j+1|0)>>>0)%(b>>>0)|0}}else d=i;while(0);b=(f[(t+160|0)>>2]|0)+(b<<2)|0;c=f[b>>2]|0;if(!c){f[e>>2]=f[(t+168|0)>>2];f[(t+168|0)>>2]=e;f[b>>2]=t+168|0;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;o=(f[(t+160|0)>>2]|0)+(b<<2)|0;w=58}}else{f[e>>2]=f[c>>2];o=c;w=58}if((w|0)==58)f[o>>2]=e;f[(t+172|0)>>2]=(f[(t+172|0)>>2]|0)+1;p=e}m=p+12|0;o=p+16|0;e=f[o>>2]|0;l=p+20|0;c=f[l>>2]|0;b=1;if(b){b=0;if(e>>>0>>0){f[e>>2]=f[q>>2];f[e+4>>2]=f[(q+4|0)>>2];f[(e+8|0)>>2]=0;f[(e+12|0)>>2]=0;f[e+16>>2]=0;f[(e+8|0)>>2]=f[(q+8|0)>>2];f[(e+12|0)>>2]=f[(q+12|0)>>2];f[e+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[e+24>>2]=r;f[o>>2]=(f[o>>2]|0)+28}else b=1}if(b)if(1){d=f[m>>2]|0;b=((e-d|0)/28|0)+1|0;if(b>>>0>153391689)AMb(m);b=((c-d|0)/28|0)>>>0<76695844?(((c-d|0)/28|0)<<1>>>0>>0?b:((c-d|0)/28|0)<<1):153391689;do if(!b)s=0;else if(b>>>0>153391689)vd();else{s=pOb(b*28|0)|0;break}while(0);j=s+(((e-d|0)/28|0)*28|0)|0;i=s+(b*28|0)|0;f[j>>2]=f[q>>2];f[s+(((e-d|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+16>>2]=0;f[s+(((e-d|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[s+(((e-d|0)/28|0)*28|0)+24>>2]=r;e=f[m>>2]|0;b=f[o>>2]|0;if((b|0)==(e|0)){c=j;k=e;b=e}else{c=j;d=j;do{z=b;b=b+-28|0;f[d+-28>>2]=f[b>>2];f[d+-24>>2]=f[z+-24>>2];s=d+-20|0;f[s>>2]=0;A=d+-16|0;f[A>>2]=0;f[d+-12>>2]=0;f[s>>2]=f[(z+-20|0)>>2];f[A>>2]=f[(z+-16|0)>>2];f[d+-12>>2]=f[(z+-12|0)>>2];f[(z+-12|0)>>2]=0;f[(z+-16|0)>>2]=0;f[(z+-20|0)>>2]=0;f[b>>2]=0;A=f[(z+-4|0)>>2]|0;f[(z+-4|0)>>2]=0;f[d+-4>>2]=A;d=c+-28|0;c=d}while((b|0)!=(e|0));k=f[m>>2]|0;b=f[o>>2]|0}f[m>>2]=c;f[o>>2]=j+28|0;f[l>>2]=i;j=k;if((b|0)!=(j|0)){i=b;do{A=i+-4|0;b=f[A>>2]|0;f[A>>2]=0;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);c=i+-20|0;b=f[c>>2]|0;e=i+-16|0;i=i+-28|0;if((b|0)==(f[e>>2]|0)){d=f[i>>2]|0;if(d){tOb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}}while((i|0)!=(j|0))}if(k|0)sOb(k)}A=p0a(t+444|0,a+48|0)|0;f[A>>2]=6}}while(0);b=f[(a+24|0)>>2]|0;if(b|0){c=f[v>>2]|0;if((c|0)!=(b|0))f[v>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[(a+36|0)>>2]|0;if(b|0){c=f[x>>2]|0;if((c|0)!=(b|0))f[x>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[(a+20|0)>>2]|0;f[(a+20|0)>>2]=0;if(!b){u=a;f[a+1520>>2]=5;break a}gh[f[(f[b>>2]|0)+4>>2]&2047](b);u=a;f[a+1520>>2]=5;break a}f[a+1472>>2]=w;f[a+1480>>2]=y}function V0a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;m=f[a+80>>2]|0;q=f[a+96>>2]|0;r=f[a+568>>2]|0;i=f[a+648>>2]|0;t=f[a+704>>2]|0;x=f[a+752>>2]|0;v=f[a+800>>2]|0;j=f[a+824>>2]|0;k=f[a+864>>2]|0;w=f[a+1472>>2]|0;y=f[a+1480>>2]|0;a:{if(y){y=0;if(1){e=j;do{DRa(a+48|0,i,e);if(!(f[(a+48|0)>>2]|0))c=B_a(m,e,1)|0;else c=1;d=f[((a+48|0)+4|0)>>2]|0;if(d|0)iOb(d);b:do switch(c<<24>>24){case 0:if(!(f[e>>2]|0)){c=f[x>>2]|0;if((c|0)==(f[((a+36|0)+8|0)>>2]|0)){uH(a+36|0,e);break b}else{z=e;d=f[z+4>>2]|0;f[c>>2]=f[z>>2];f[c+4>>2]=d;f[x>>2]=(f[x>>2]|0)+8;break b}}else{c=f[v>>2]|0;if((c|0)==(f[((a+24|0)+8|0)>>2]|0)){uH(a+24|0,e);break b}else{d=e;z=f[d+4>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=z;f[v>>2]=(f[v>>2]|0)+8;break b}}case 3:{c=f[x>>2]|0;if((c|0)==(f[((a+36|0)+8|0)>>2]|0)){uH(a+36|0,e);break b}else{d=e;z=f[d+4>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=z;f[x>>2]=(f[x>>2]|0)+8;break b}}default:{}}while(0);e=e+8|0}while((e|0)!=(j+(k<<3)|0|0));c=1;if(c){c=0;if((f[(a+24|0)>>2]|0)==(f[v>>2]|0))w=26;else c=1}if(c)if(1){i=f[(t+248|0)>>2]|0;d=f[(t+252|0)>>2]|0;c=1;if(c){c=0;if(i>>>0>>0){f[i>>2]=f[q>>2];f[i+4>>2]=f[(q+4|0)>>2];f[(i+8|0)>>2]=0;f[(i+12|0)>>2]=0;f[i+16>>2]=0;f[(i+8|0)>>2]=f[(q+8|0)>>2];f[(i+12|0)>>2]=f[(q+12|0)>>2];f[i+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[i+24>>2]=r;f[(t+248|0)>>2]=(f[(t+248|0)>>2]|0)+28}else c=1}if(c)if(1){e=f[(t+244|0)>>2]|0;c=((i-e|0)/28|0)+1|0;if(c>>>0>153391689)AMb(t+244|0);c=((d-e|0)/28|0)>>>0<76695844?(((d-e|0)/28|0)<<1>>>0>>0?c:((d-e|0)/28|0)<<1):153391689;do if(!c)l=0;else if(c>>>0>153391689)vd();else{l=pOb(c*28|0)|0;break}while(0);k=l+(((i-e|0)/28|0)*28|0)|0;j=l+(c*28|0)|0;f[k>>2]=f[q>>2];f[l+(((i-e|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+16>>2]=0;f[l+(((i-e|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[l+(((i-e|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[l+(((i-e|0)/28|0)*28|0)+24>>2]=r;i=f[(t+244|0)>>2]|0;c=f[(t+248|0)>>2]|0;if((c|0)==(i|0)){d=k;l=i;c=i}else{d=k;e=k;do{l=c;c=c+-28|0;f[e+-28>>2]=f[c>>2];f[e+-24>>2]=f[l+-24>>2];A=e+-20|0;f[A>>2]=0;z=e+-16|0;f[z>>2]=0;f[e+-12>>2]=0;f[A>>2]=f[(l+-20|0)>>2];f[z>>2]=f[(l+-16|0)>>2];f[e+-12>>2]=f[(l+-12|0)>>2];f[(l+-12|0)>>2]=0;f[(l+-16|0)>>2]=0;f[(l+-20|0)>>2]=0;f[c>>2]=0;z=f[(l+-4|0)>>2]|0;f[(l+-4|0)>>2]=0;f[e+-4>>2]=z;e=d+-28|0;d=e}while((c|0)!=(i|0));l=f[(t+244|0)>>2]|0;c=f[(t+248|0)>>2]|0}f[(t+244|0)>>2]=d;f[(t+248|0)>>2]=k+28|0;f[(t+252|0)>>2]=j;k=l;if((c|0)!=(k|0)){j=c;do{A=j+-4|0;c=f[A>>2]|0;f[A>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);d=j+-20|0;c=f[d>>2]|0;i=j+-16|0;j=j+-28|0;if((c|0)==(f[i>>2]|0)){e=f[j>>2]|0;if(e){tOb(e);c=f[d>>2]|0}}if(c|0){d=f[i>>2]|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}}while((j|0)!=(k|0))}if(l|0)sOb(l)}A=f[(a+24|0)>>2]|0;c=f[v>>2]|0;f[a>>2]=(A|0)==(c|0)?0:A;f[a+4>>2]=c-A>>3;f[a+8>>2]=A;f[(a+12|0)>>2]=c;f[a+16>>2]=f[((a+24|0)+8|0)>>2];f[((a+24|0)+8|0)>>2]=0;f[v>>2]=0;f[(a+24|0)>>2]=0;f[(a+48|0)>>2]=0;D0a(m,a+48|0,a);c=f[(a+48|0)>>2]|0;f[(a+48|0)>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[(a+8|0)>>2]|0;if((c|0)==(f[(a+12|0)>>2]|0)){d=f[a>>2]|0;if(d){tOb(d);c=f[(a+8|0)>>2]|0}}if(c|0){d=f[(a+12|0)>>2]|0;if((d|0)!=(c|0))f[(a+12|0)>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}}}else y=1}do if((w|0)==26){if((f[(a+36|0)>>2]|0)!=(f[x>>2]|0)){F_a(a+20|0,a+36|0,q);break}j=f[(t+816|0)>>2]|0;f[(a+48|0)>>2]=j;c=1;if(c){c=0;if((j|0)==(f[t+440>>2]|0))oh[f[(f[r>>2]|0)+8>>2]&1023](r,q);else c=1}if(c)if(1){f[(t+816|0)>>2]=j+1|0;i=f[(t+228|0)>>2]|0;c:do if(!i){b=0;w=45}else{if(!((i+-1|0)&i))e=(i+-1|0)&(j+1|0);else if(i>>>0>(j+1|0)>>>0)e=j+1|0;else e=((j+1|0)>>>0)%(i>>>0)|0;c=f[(f[(t+224|0)>>2]|0)+(e<<2)>>2]|0;if(!c){b=e;w=45}else{if(!((i+-1|0)&i))while(1){c=f[c>>2]|0;if(!c){b=e;w=45;break c}A=f[c+4>>2]|0;if(!((A|0)==(j+1|0|0)|(A&(i+-1|0)|0)==(e|0))){b=e;w=45;break c}if((f[c+8>>2]|0)==(j+1|0|0)){p=c;break c}}while(1){c=f[c>>2]|0;if(!c){b=e;w=45;break c}d=f[c+4>>2]|0;if((d|0)!=(j+1|0|0)){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;if((d|0)!=(e|0)){b=e;w=45;break c}}if((f[c+8>>2]|0)==(j+1|0|0)){p=c;break}}}}while(0);if((w|0)==45){e=pOb(24)|0;f[e+8>>2]=j+1|0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=j+1|0;f[e>>2]=0;g=+(((f[(t+236|0)>>2]|0)+1|0)>>>0);h=+n[t+240>>2];do if((i|0)==0|h*+(i>>>0)>>0;HZa(t+224|0,(i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1)>>>0>>0?b:i<<1|(i>>>0<3|(i+-1&i|0)!=0)&1);b=f[(t+228|0)>>2]|0;if(!((b+-1|0)&b)){d=b;b=(b+-1|0)&(j+1|0);break}if(b>>>0>(j+1|0)>>>0){d=b;b=j+1|0}else{d=b;b=((j+1|0)>>>0)%(b>>>0)|0}}else d=i;while(0);b=(f[(t+224|0)>>2]|0)+(b<<2)|0;c=f[b>>2]|0;if(!c){f[e>>2]=f[(t+232|0)>>2];f[(t+232|0)>>2]=e;f[b>>2]=t+232|0;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;o=(f[(t+224|0)>>2]|0)+(b<<2)|0;w=58}}else{f[e>>2]=f[c>>2];o=c;w=58}if((w|0)==58)f[o>>2]=e;f[(t+236|0)>>2]=(f[(t+236|0)>>2]|0)+1;p=e}m=p+12|0;o=p+16|0;e=f[o>>2]|0;l=p+20|0;c=f[l>>2]|0;b=1;if(b){b=0;if(e>>>0>>0){f[e>>2]=f[q>>2];f[e+4>>2]=f[(q+4|0)>>2];f[(e+8|0)>>2]=0;f[(e+12|0)>>2]=0;f[e+16>>2]=0;f[(e+8|0)>>2]=f[(q+8|0)>>2];f[(e+12|0)>>2]=f[(q+12|0)>>2];f[e+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[e+24>>2]=r;f[o>>2]=(f[o>>2]|0)+28}else b=1}if(b)if(1){d=f[m>>2]|0;b=((e-d|0)/28|0)+1|0;if(b>>>0>153391689)AMb(m);b=((c-d|0)/28|0)>>>0<76695844?(((c-d|0)/28|0)<<1>>>0>>0?b:((c-d|0)/28|0)<<1):153391689;do if(!b)s=0;else if(b>>>0>153391689)vd();else{s=pOb(b*28|0)|0;break}while(0);j=s+(((e-d|0)/28|0)*28|0)|0;i=s+(b*28|0)|0;f[j>>2]=f[q>>2];f[s+(((e-d|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+16>>2]=0;f[s+(((e-d|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[s+(((e-d|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[(a+20|0)>>2]=0;f[s+(((e-d|0)/28|0)*28|0)+24>>2]=r;e=f[m>>2]|0;b=f[o>>2]|0;if((b|0)==(e|0)){c=j;k=e;b=e}else{c=j;d=j;do{z=b;b=b+-28|0;f[d+-28>>2]=f[b>>2];f[d+-24>>2]=f[z+-24>>2];s=d+-20|0;f[s>>2]=0;A=d+-16|0;f[A>>2]=0;f[d+-12>>2]=0;f[s>>2]=f[(z+-20|0)>>2];f[A>>2]=f[(z+-16|0)>>2];f[d+-12>>2]=f[(z+-12|0)>>2];f[(z+-12|0)>>2]=0;f[(z+-16|0)>>2]=0;f[(z+-20|0)>>2]=0;f[b>>2]=0;A=f[(z+-4|0)>>2]|0;f[(z+-4|0)>>2]=0;f[d+-4>>2]=A;d=c+-28|0;c=d}while((b|0)!=(e|0));k=f[m>>2]|0;b=f[o>>2]|0}f[m>>2]=c;f[o>>2]=j+28|0;f[l>>2]=i;j=k;if((b|0)!=(j|0)){i=b;do{A=i+-4|0;b=f[A>>2]|0;f[A>>2]=0;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);c=i+-20|0;b=f[c>>2]|0;e=i+-16|0;i=i+-28|0;if((b|0)==(f[e>>2]|0)){d=f[i>>2]|0;if(d){tOb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}}while((i|0)!=(j|0))}if(k|0)sOb(k)}A=p0a(t+444|0,a+48|0)|0;f[A>>2]=8}}while(0);b=f[(a+24|0)>>2]|0;if(b|0){c=f[v>>2]|0;if((c|0)!=(b|0))f[v>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[(a+36|0)>>2]|0;if(b|0){c=f[x>>2]|0;if((c|0)!=(b|0))f[x>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[(a+20|0)>>2]|0;f[(a+20|0)>>2]=0;if(!b){u=a;f[a+1520>>2]=5;break a}gh[f[(f[b>>2]|0)+4>>2]&2047](b);u=a;f[a+1520>>2]=5;break a}f[a+1472>>2]=w;f[a+1480>>2]=y}function W0a(a){a=a|0;var c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;o=f[a+80>>2]|0;r=f[a+96>>2]|0;s=f[a+568>>2]|0;j=f[a+640>>2]|0;v=f[a+672>>2]|0;y=f[a+736>>2]|0;w=f[a+792>>2]|0;k=f[a+824>>2]|0;l=f[a+848>>2]|0;x=f[a+1480>>2]|0;z=f[a+1488>>2]|0;a:{if(z){z=0;if(1){g=k;do{zRa(a+48|0,j,g);d=f[(a+48|0)>>2]|0;if(!d)x=12;else if(!(b[(f[d+44>>2]|0)+148>>0]&2))x=12;else e=1;if((x|0)==12){x=0;e=B_a(o,g,7)|0}d=f[((a+48|0)+4|0)>>2]|0;if(d|0)iOb(d);b:do switch(e<<24>>24){case 0:if(!(f[g>>2]|0)){d=f[y>>2]|0;if((d|0)==(f[((a+36|0)+8|0)>>2]|0)){kG(a+36|0,g);break b}else{B=g;A=f[B+4>>2]|0;f[d>>2]=f[B>>2];f[d+4>>2]=A;f[y>>2]=(f[y>>2]|0)+8;break b}}else{d=f[w>>2]|0;if((d|0)==(f[((a+24|0)+8|0)>>2]|0)){kG(a+24|0,g);break b}else{A=g;B=f[A+4>>2]|0;f[d>>2]=f[A>>2];f[d+4>>2]=B;f[w>>2]=(f[w>>2]|0)+8;break b}}case 3:{d=f[y>>2]|0;if((d|0)==(f[((a+36|0)+8|0)>>2]|0)){kG(a+36|0,g);break b}else{A=g;B=f[A+4>>2]|0;f[d>>2]=f[A>>2];f[d+4>>2]=B;f[y>>2]=(f[y>>2]|0)+8;break b}}default:{}}while(0);g=g+8|0}while((g|0)!=(k+(l<<3)|0|0));d=1;if(d){d=0;if((f[(a+24|0)>>2]|0)==(f[w>>2]|0))x=27;else d=1}if(d)if(1){j=f[(v+216|0)>>2]|0;e=f[(v+220|0)>>2]|0;d=1;if(d){d=0;if(j>>>0>>0){f[j>>2]=f[r>>2];f[j+4>>2]=f[(r+4|0)>>2];f[(j+8|0)>>2]=0;f[(j+12|0)>>2]=0;f[j+16>>2]=0;f[(j+8|0)>>2]=f[(r+8|0)>>2];f[(j+12|0)>>2]=f[(r+12|0)>>2];f[j+16>>2]=f[(r+16|0)>>2];f[(r+16|0)>>2]=0;f[(r+12|0)>>2]=0;f[(r+8|0)>>2]=0;f[r>>2]=0;f[(a+20|0)>>2]=0;f[j+24>>2]=s;f[(v+216|0)>>2]=(f[(v+216|0)>>2]|0)+28}else d=1}if(d)if(1){g=f[(v+212|0)>>2]|0;d=((j-g|0)/28|0)+1|0;if(d>>>0>153391689)AMb(v+212|0);d=((e-g|0)/28|0)>>>0<76695844?(((e-g|0)/28|0)<<1>>>0>>0?d:((e-g|0)/28|0)<<1):153391689;do if(!d)m=0;else if(d>>>0>153391689)vd();else{m=pOb(d*28|0)|0;break}while(0);l=m+(((j-g|0)/28|0)*28|0)|0;k=m+(d*28|0)|0;f[l>>2]=f[r>>2];f[m+(((j-g|0)/28|0)*28|0)+4>>2]=f[(r+4|0)>>2];f[m+(((j-g|0)/28|0)*28|0)+16>>2]=0;f[m+(((j-g|0)/28|0)*28|0)+8>>2]=f[(r+8|0)>>2];f[m+(((j-g|0)/28|0)*28|0)+12>>2]=f[(r+12|0)>>2];f[m+(((j-g|0)/28|0)*28|0)+16>>2]=f[(r+16|0)>>2];f[(r+16|0)>>2]=0;f[(r+12|0)>>2]=0;f[(r+8|0)>>2]=0;f[r>>2]=0;f[(a+20|0)>>2]=0;f[m+(((j-g|0)/28|0)*28|0)+24>>2]=s;j=f[(v+212|0)>>2]|0;d=f[(v+216|0)>>2]|0;if((d|0)==(j|0)){e=l;m=j;d=j}else{e=l;g=l;do{A=d;d=d+-28|0;f[g+-28>>2]=f[d>>2];f[g+-24>>2]=f[A+-24>>2];m=g+-20|0;f[m>>2]=0;B=g+-16|0;f[B>>2]=0;f[g+-12>>2]=0;f[m>>2]=f[(A+-20|0)>>2];f[B>>2]=f[(A+-16|0)>>2];f[g+-12>>2]=f[(A+-12|0)>>2];f[(A+-12|0)>>2]=0;f[(A+-16|0)>>2]=0;f[(A+-20|0)>>2]=0;f[d>>2]=0;B=f[(A+-4|0)>>2]|0;f[(A+-4|0)>>2]=0;f[g+-4>>2]=B;g=e+-28|0;e=g}while((d|0)!=(j|0));m=f[(v+212|0)>>2]|0;d=f[(v+216|0)>>2]|0}f[(v+212|0)>>2]=e;f[(v+216|0)>>2]=l+28|0;f[(v+220|0)>>2]=k;l=m;if((d|0)!=(l|0)){k=d;do{B=k+-4|0;d=f[B>>2]|0;f[B>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);e=k+-20|0;d=f[e>>2]|0;j=k+-16|0;k=k+-28|0;if((d|0)==(f[j>>2]|0)){g=f[k>>2]|0;if(g){tOb(g);d=f[e>>2]|0}}if(d|0){e=f[j>>2]|0;if((e|0)!=(d|0))f[j>>2]=e+(~((e+-8-d|0)>>>3)<<3);sOb(d)}}while((k|0)!=(l|0))}if(m|0)sOb(m)}B=f[(a+24|0)>>2]|0;d=f[w>>2]|0;f[a>>2]=(B|0)==(d|0)?0:B;f[a+4>>2]=d-B>>3;f[a+8>>2]=B;f[(a+12|0)>>2]=d;f[a+16>>2]=f[((a+24|0)+8|0)>>2];f[((a+24|0)+8|0)>>2]=0;f[w>>2]=0;f[(a+24|0)>>2]=0;f[(a+48|0)>>2]=0;E0a(o,a+48|0,a);d=f[(a+48|0)>>2]|0;f[(a+48|0)>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=f[(a+8|0)>>2]|0;if((d|0)==(f[(a+12|0)>>2]|0)){e=f[a>>2]|0;if(e){tOb(e);d=f[(a+8|0)>>2]|0}}if(d|0){e=f[(a+12|0)>>2]|0;if((e|0)!=(d|0))f[(a+12|0)>>2]=e+(~((e+-8-d|0)>>>3)<<3);sOb(d)}}}else z=1}do if((x|0)==27){if((f[(a+36|0)>>2]|0)!=(f[y>>2]|0)){E_a(a+20|0,a+36|0,r);break}k=f[(v+816|0)>>2]|0;f[(a+48|0)>>2]=k;d=1;if(d){d=0;if((k|0)==(f[v+440>>2]|0))oh[f[(f[s>>2]|0)+8>>2]&1023](s,r);else d=1}if(d)if(1){f[(v+816|0)>>2]=k+1|0;j=f[(v+196|0)>>2]|0;c:do if(!j){c=0;x=46}else{if(!((j+-1|0)&j))g=(j+-1|0)&(k+1|0);else if(j>>>0>(k+1|0)>>>0)g=k+1|0;else g=((k+1|0)>>>0)%(j>>>0)|0;d=f[(f[(v+192|0)>>2]|0)+(g<<2)>>2]|0;if(!d){c=g;x=46}else{if(!((j+-1|0)&j))while(1){d=f[d>>2]|0;if(!d){c=g;x=46;break c}B=f[d+4>>2]|0;if(!((B|0)==(k+1|0|0)|(B&(j+-1|0)|0)==(g|0))){c=g;x=46;break c}if((f[d+8>>2]|0)==(k+1|0|0)){q=d;break c}}while(1){d=f[d>>2]|0;if(!d){c=g;x=46;break c}e=f[d+4>>2]|0;if((e|0)!=(k+1|0|0)){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;if((e|0)!=(g|0)){c=g;x=46;break c}}if((f[d+8>>2]|0)==(k+1|0|0)){q=d;break}}}}while(0);if((x|0)==46){g=pOb(24)|0;f[g+8>>2]=k+1|0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+4>>2]=k+1|0;f[g>>2]=0;h=+(((f[(v+204|0)>>2]|0)+1|0)>>>0);i=+n[v+208>>2];do if((j|0)==0|i*+(j>>>0)>>0;zZa(v+192|0,(j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1)>>>0>>0?c:j<<1|(j>>>0<3|(j+-1&j|0)!=0)&1);c=f[(v+196|0)>>2]|0;if(!((c+-1|0)&c)){e=c;c=(c+-1|0)&(k+1|0);break}if(c>>>0>(k+1|0)>>>0){e=c;c=k+1|0}else{e=c;c=((k+1|0)>>>0)%(c>>>0)|0}}else e=j;while(0);c=(f[(v+192|0)>>2]|0)+(c<<2)|0;d=f[c>>2]|0;if(!d){f[g>>2]=f[(v+200|0)>>2];f[(v+200|0)>>2]=g;f[c>>2]=v+200|0;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;p=(f[(v+192|0)>>2]|0)+(c<<2)|0;x=59}}else{f[g>>2]=f[d>>2];p=d;x=59}if((x|0)==59)f[p>>2]=g;f[(v+204|0)>>2]=(f[(v+204|0)>>2]|0)+1;q=g}o=q+12|0;p=q+16|0;g=f[p>>2]|0;m=q+20|0;d=f[m>>2]|0;c=1;if(c){c=0;if(g>>>0>>0){f[g>>2]=f[r>>2];f[g+4>>2]=f[(r+4|0)>>2];f[(g+8|0)>>2]=0;f[(g+12|0)>>2]=0;f[g+16>>2]=0;f[(g+8|0)>>2]=f[(r+8|0)>>2];f[(g+12|0)>>2]=f[(r+12|0)>>2];f[g+16>>2]=f[(r+16|0)>>2];f[(r+16|0)>>2]=0;f[(r+12|0)>>2]=0;f[(r+8|0)>>2]=0;f[r>>2]=0;f[(a+20|0)>>2]=0;f[g+24>>2]=s;f[p>>2]=(f[p>>2]|0)+28}else c=1}if(c)if(1){e=f[o>>2]|0;c=((g-e|0)/28|0)+1|0;if(c>>>0>153391689)AMb(o);c=((d-e|0)/28|0)>>>0<76695844?(((d-e|0)/28|0)<<1>>>0>>0?c:((d-e|0)/28|0)<<1):153391689;do if(!c)t=0;else if(c>>>0>153391689)vd();else{t=pOb(c*28|0)|0;break}while(0);k=t+(((g-e|0)/28|0)*28|0)|0;j=t+(c*28|0)|0;f[k>>2]=f[r>>2];f[t+(((g-e|0)/28|0)*28|0)+4>>2]=f[(r+4|0)>>2];f[t+(((g-e|0)/28|0)*28|0)+16>>2]=0;f[t+(((g-e|0)/28|0)*28|0)+8>>2]=f[(r+8|0)>>2];f[t+(((g-e|0)/28|0)*28|0)+12>>2]=f[(r+12|0)>>2];f[t+(((g-e|0)/28|0)*28|0)+16>>2]=f[(r+16|0)>>2];f[(r+16|0)>>2]=0;f[(r+12|0)>>2]=0;f[(r+8|0)>>2]=0;f[r>>2]=0;f[(a+20|0)>>2]=0;f[t+(((g-e|0)/28|0)*28|0)+24>>2]=s;g=f[o>>2]|0;c=f[p>>2]|0;if((c|0)==(g|0)){d=k;l=g;c=g}else{d=k;e=k;do{A=c;c=c+-28|0;f[e+-28>>2]=f[c>>2];f[e+-24>>2]=f[A+-24>>2];t=e+-20|0;f[t>>2]=0;B=e+-16|0;f[B>>2]=0;f[e+-12>>2]=0;f[t>>2]=f[(A+-20|0)>>2];f[B>>2]=f[(A+-16|0)>>2];f[e+-12>>2]=f[(A+-12|0)>>2];f[(A+-12|0)>>2]=0;f[(A+-16|0)>>2]=0;f[(A+-20|0)>>2]=0;f[c>>2]=0;B=f[(A+-4|0)>>2]|0;f[(A+-4|0)>>2]=0;f[e+-4>>2]=B;e=d+-28|0;d=e}while((c|0)!=(g|0));l=f[o>>2]|0;c=f[p>>2]|0}f[o>>2]=d;f[p>>2]=k+28|0;f[m>>2]=j;k=l;if((c|0)!=(k|0)){j=c;do{B=j+-4|0;c=f[B>>2]|0;f[B>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);d=j+-20|0;c=f[d>>2]|0;g=j+-16|0;j=j+-28|0;if((c|0)==(f[g>>2]|0)){e=f[j>>2]|0;if(e){tOb(e);c=f[d>>2]|0}}if(c|0){d=f[g>>2]|0;if((d|0)!=(c|0))f[g>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}}while((j|0)!=(k|0))}if(l|0)sOb(l)}B=p0a(v+444|0,a+48|0)|0;f[B>>2]=7}}while(0);c=f[(a+24|0)>>2]|0;if(c|0){d=f[w>>2]|0;if((d|0)!=(c|0))f[w>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}c=f[(a+36|0)>>2]|0;if(c|0){d=f[y>>2]|0;if((d|0)!=(c|0))f[y>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}c=f[(a+20|0)>>2]|0;f[(a+20|0)>>2]=0;if(!c){u=a;f[a+1528>>2]=5;break a}gh[f[(f[c>>2]|0)+4>>2]&2047](c);u=a;f[a+1528>>2]=5;break a}f[a+1480>>2]=x;f[a+1488>>2]=z}function X0a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;u=f[a+80>>2]|0;q=f[a+96>>2]|0;s=f[a+104>>2]|0;r=f[a+472>>2]|0;v=f[a+632>>2]|0;c=f[a+656>>2]|0;w=f[a+688>>2]|0;x=f[a+1248>>2]|0;y=f[a+1256>>2]|0;a:{if(y){y=0;if((f[(a+24|0)>>2]|0)==(f[w>>2]|0)){if((f[(a+36|0)>>2]|0)!=(f[c>>2]|0)){D_a(a+20|0,a+36|0,q);f[a+1288>>2]=1;break a}k=f[(v+816|0)>>2]|0;f[(a+48|0)>>2]=k;c=1;if(c){c=0;if((k|0)==(f[v+440>>2]|0))oh[f[(f[r>>2]|0)+8>>2]&1023](r,q);else c=1}if(c)if(1){f[(v+816|0)>>2]=k+1|0;g=f[(v+36|0)>>2]|0;b:do if(!g){b=0;x=62}else{if(!((g+-1|0)&g))e=(g+-1|0)&(k+1|0);else if(g>>>0>(k+1|0)>>>0)e=k+1|0;else e=((k+1|0)>>>0)%(g>>>0)|0;c=f[(f[(v+32|0)>>2]|0)+(e<<2)>>2]|0;if(!c){b=e;x=62}else{if(!((g+-1|0)&g))while(1){c=f[c>>2]|0;if(!c){b=e;x=62;break b}o=f[c+4>>2]|0;if(!((o|0)==(k+1|0|0)|(o&(g+-1|0)|0)==(e|0))){b=e;x=62;break b}if((f[c+8>>2]|0)==(k+1|0|0)){h=c;break b}}while(1){c=f[c>>2]|0;if(!c){b=e;x=62;break b}d=f[c+4>>2]|0;if((d|0)!=(k+1|0|0)){if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(e|0)){b=e;x=62;break b}}if((f[c+8>>2]|0)==(k+1|0|0)){h=c;break}}}}while(0);if((x|0)==62){e=pOb(24)|0;f[e+8>>2]=k+1|0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=k+1|0;f[e>>2]=0;i=+(((f[(v+44|0)>>2]|0)+1|0)>>>0);j=+n[v+48>>2];do if((g|0)==0|j*+(g>>>0)>>0;rZa(v+32|0,(g<<1|(g>>>0<3|(g+-1&g|0)!=0)&1)>>>0>>0?b:g<<1|(g>>>0<3|(g+-1&g|0)!=0)&1);b=f[(v+36|0)>>2]|0;if(!((b+-1|0)&b)){d=b;b=(b+-1|0)&(k+1|0);break}if(b>>>0>(k+1|0)>>>0){d=b;b=k+1|0}else{d=b;b=((k+1|0)>>>0)%(b>>>0)|0}}else d=g;while(0);b=(f[(v+32|0)>>2]|0)+(b<<2)|0;c=f[b>>2]|0;if(!c){f[e>>2]=f[(v+40|0)>>2];f[(v+40|0)>>2]=e;f[b>>2]=v+40|0;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;l=(f[(v+32|0)>>2]|0)+(b<<2)|0;x=75}}else{f[e>>2]=f[c>>2];l=c;x=75}if((x|0)==75)f[l>>2]=e;f[(v+44|0)>>2]=(f[(v+44|0)>>2]|0)+1;h=e}m=h+12|0;o=h+16|0;e=f[o>>2]|0;l=h+20|0;c=f[l>>2]|0;b=1;if(b){b=0;if(e>>>0>>0){f[e>>2]=f[q>>2];f[e+4>>2]=f[(q+4|0)>>2];f[(e+8|0)>>2]=0;f[(e+12|0)>>2]=0;f[e+16>>2]=0;f[(e+8|0)>>2]=f[(q+8|0)>>2];f[(e+12|0)>>2]=f[(q+12|0)>>2];f[e+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[e+20>>2]=s&1;f[(a+20|0)>>2]=0;f[e+24>>2]=r;f[o>>2]=(f[o>>2]|0)+28}else b=1}if(b)if(1){d=f[m>>2]|0;b=((e-d|0)/28|0)+1|0;if(b>>>0>153391689)AMb(m);b=((c-d|0)/28|0)>>>0<76695844?(((c-d|0)/28|0)<<1>>>0>>0?b:((c-d|0)/28|0)<<1):153391689;do if(!b)p=0;else if(b>>>0>153391689)vd();else{p=pOb(b*28|0)|0;break}while(0);h=p+(((e-d|0)/28|0)*28|0)|0;g=p+(b*28|0)|0;f[h>>2]=f[q>>2];f[p+(((e-d|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[p+(((e-d|0)/28|0)*28|0)+16>>2]=0;f[p+(((e-d|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[p+(((e-d|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[p+(((e-d|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[p+(((e-d|0)/28|0)*28|0)+20>>2]=s&1;f[(a+20|0)>>2]=0;f[p+(((e-d|0)/28|0)*28|0)+24>>2]=r;e=f[m>>2]|0;b=f[o>>2]|0;if((b|0)==(e|0)){c=h;k=e;b=e}else{c=h;d=h;do{k=b;b=b+-28|0;f[d+-28>>2]=f[b>>2];f[d+-24>>2]=f[k+-24>>2];z=d+-20|0;f[z>>2]=0;p=d+-16|0;f[p>>2]=0;f[d+-12>>2]=0;f[z>>2]=f[(k+-20|0)>>2];f[p>>2]=f[(k+-16|0)>>2];f[d+-12>>2]=f[(k+-12|0)>>2];f[(k+-12|0)>>2]=0;f[(k+-16|0)>>2]=0;f[(k+-20|0)>>2]=0;f[b>>2]=0;f[d+-8>>2]=f[k+-8>>2];p=f[(k+-4|0)>>2]|0;f[(k+-4|0)>>2]=0;f[d+-4>>2]=p;d=c+-28|0;c=d}while((b|0)!=(e|0));k=f[m>>2]|0;b=f[o>>2]|0}f[m>>2]=c;f[o>>2]=h+28|0;f[l>>2]=g;h=k;if((b|0)!=(h|0)){g=b;do{z=g+-4|0;b=f[z>>2]|0;f[z>>2]=0;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);c=g+-20|0;b=f[c>>2]|0;e=g+-16|0;g=g+-28|0;do if((b|0)==(f[e>>2]|0)){d=f[g>>2]|0;if(!d)break;tOb(d);b=f[c>>2]|0}while(0);if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}}while((g|0)!=(h|0))}if(k|0)sOb(k)}z=p0a(v+444|0,a+48|0)|0;f[z>>2]=1}}else y=1}if(y){y=0;if(1){e=f[(v+56|0)>>2]|0;c=f[(v+60|0)>>2]|0;b=1;if(b){b=0;if(e>>>0>>0){f[e>>2]=f[q>>2];f[e+4>>2]=f[(q+4|0)>>2];f[(e+8|0)>>2]=0;f[(e+12|0)>>2]=0;f[e+16>>2]=0;f[(e+8|0)>>2]=f[(q+8|0)>>2];f[(e+12|0)>>2]=f[(q+12|0)>>2];f[e+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[e+20>>2]=s&1;f[(a+20|0)>>2]=0;f[e+24>>2]=r;f[(v+56|0)>>2]=(f[(v+56|0)>>2]|0)+28}else b=1}if(b)if(1){d=f[(v+52|0)>>2]|0;b=((e-d|0)/28|0)+1|0;if(b>>>0>153391689)AMb(v+52|0);b=((c-d|0)/28|0)>>>0<76695844?(((c-d|0)/28|0)<<1>>>0>>0?b:((c-d|0)/28|0)<<1):153391689;do if(!b)t=0;else if(b>>>0>153391689)vd();else{t=pOb(b*28|0)|0;break}while(0);h=t+(((e-d|0)/28|0)*28|0)|0;g=t+(b*28|0)|0;f[h>>2]=f[q>>2];f[t+(((e-d|0)/28|0)*28|0)+4>>2]=f[(q+4|0)>>2];f[t+(((e-d|0)/28|0)*28|0)+16>>2]=0;f[t+(((e-d|0)/28|0)*28|0)+8>>2]=f[(q+8|0)>>2];f[t+(((e-d|0)/28|0)*28|0)+12>>2]=f[(q+12|0)>>2];f[t+(((e-d|0)/28|0)*28|0)+16>>2]=f[(q+16|0)>>2];f[(q+16|0)>>2]=0;f[(q+12|0)>>2]=0;f[(q+8|0)>>2]=0;f[q>>2]=0;f[t+(((e-d|0)/28|0)*28|0)+20>>2]=s&1;f[(a+20|0)>>2]=0;f[t+(((e-d|0)/28|0)*28|0)+24>>2]=r;e=f[(v+52|0)>>2]|0;b=f[(v+56|0)>>2]|0;if((b|0)==(e|0)){c=h;k=e;b=e}else{c=h;d=h;do{t=b;b=b+-28|0;f[d+-28>>2]=f[b>>2];f[d+-24>>2]=f[t+-24>>2];s=d+-20|0;f[s>>2]=0;z=d+-16|0;f[z>>2]=0;f[d+-12>>2]=0;f[s>>2]=f[(t+-20|0)>>2];f[z>>2]=f[(t+-16|0)>>2];f[d+-12>>2]=f[(t+-12|0)>>2];f[(t+-12|0)>>2]=0;f[(t+-16|0)>>2]=0;f[(t+-20|0)>>2]=0;f[b>>2]=0;f[d+-8>>2]=f[t+-8>>2];z=f[(t+-4|0)>>2]|0;f[(t+-4|0)>>2]=0;f[d+-4>>2]=z;d=c+-28|0;c=d}while((b|0)!=(e|0));k=f[(v+52|0)>>2]|0;b=f[(v+56|0)>>2]|0}f[(v+52|0)>>2]=c;f[(v+56|0)>>2]=h+28|0;f[(v+60|0)>>2]=g;h=k;if((b|0)!=(h|0)){g=b;do{z=g+-4|0;b=f[z>>2]|0;f[z>>2]=0;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);c=g+-20|0;b=f[c>>2]|0;e=g+-16|0;g=g+-28|0;if((b|0)==(f[e>>2]|0)){d=f[g>>2]|0;if(d){tOb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}}while((g|0)!=(h|0))}if(k|0)sOb(k)}b=f[(v+56|0)>>2]|0;v=f[(a+24|0)>>2]|0;z=f[w>>2]|0;f[a>>2]=(v|0)==(z|0)?0:v;f[a+4>>2]=z-v>>3;f[a+8>>2]=v;f[(a+12|0)>>2]=z;f[a+16>>2]=f[((a+24|0)+8|0)>>2];f[((a+24|0)+8|0)>>2]=0;f[w>>2]=0;f[(a+24|0)>>2]=0;b=(f[b+-8>>2]&1|0)!=0;f[(a+48|0)>>2]=0;J0a(u,a+48|0,a,b);b=f[(a+48|0)>>2]|0;f[(a+48|0)>>2]=0;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[(a+8|0)>>2]|0;if((b|0)==(f[(a+12|0)>>2]|0)){c=f[a>>2]|0;if(c){tOb(c);b=f[(a+8|0)>>2]|0}}if(b|0){c=f[(a+12|0)>>2]|0;if((c|0)!=(b|0))f[(a+12|0)>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}}else y=1}}f[a+1248>>2]=x;f[a+1256>>2]=y} function ZMa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0.0;A=u;u=u+48|0;s=A+32|0;r=A+24|0;w=A+20|0;t=A;x=f[c>>2]|0;k=f[x+4>>2]|0;p=f[d+120>>2]|0;f[w>>2]=p;v=x+48|0;q=x+68|0;m=x+72|0;j=f[m>>2]|0;a:do if(!j)z=41;else{i=j+-1|0;h=(i&j|0)==0;if(h)l=i&p;else if(p>>>0>>0)l=p;else l=(p>>>0)%(j>>>0)|0;g=f[(f[q>>2]|0)+(l<<2)>>2]|0;if(!g)z=41;else{g=f[g>>2]|0;if(!g)z=41;else{b:do if(h)while(1){y=f[g+4>>2]|0;h=(y|0)==(p|0);if(!(h|(y&i|0)==(l|0))){z=41;break a}if(h)if((f[g+8>>2]|0)==(p|0))break b;g=f[g>>2]|0;if(!g){z=41;break a}}else while(1){h=f[g+4>>2]|0;if((h|0)==(p|0)){if((f[g+8>>2]|0)==(p|0))break b}else{if(h>>>0>=j>>>0)h=(h>>>0)%(j>>>0)|0;if((h|0)!=(l|0)){z=41;break a}}g=f[g>>2]|0;if(!g){z=41;break a}}while(0);l=f[g+12>>2]|0;g=f[g+16>>2]|0;o=g;if(g){gOb(g);j=f[m>>2]|0}c:do if(j|0){i=j+-1|0;h=(i&j|0)==0;if(h)k=i&p;else if(p>>>0>>0)k=p;else k=(p>>>0)%(j>>>0)|0;g=f[(f[q>>2]|0)+(k<<2)>>2]|0;if(g|0){g=f[g>>2]|0;if(g|0){d:do if(h)while(1){y=f[g+4>>2]|0;h=(y|0)==(p|0);if(!(h|(y&i|0)==(k|0)))break c;if(h)if((f[g+8>>2]|0)==(p|0))break d;g=f[g>>2]|0;if(!g)break c}else while(1){h=f[g+4>>2]|0;if((h|0)==(p|0)){if((f[g+8>>2]|0)==(p|0))break d}else{if(h>>>0>=j>>>0)h=(h>>>0)%(j>>>0)|0;if((h|0)!=(k|0))break c}g=f[g>>2]|0;if(!g)break c}while(0);f[r>>2]=g;f[s>>2]=f[r>>2];_Ma(q,s)|0}}}while(0)}}}while(0);if((z|0)==41){UIa(s,f[a>>2]|0);l=f[s>>2]|0;o=f[s+4>>2]|0;y=l;r=y+116|0;f[r>>2]=k;f[r+4>>2]=p;y=y+196|0;f[y>>2]=f[y>>2]&-131073}k=(e|0)==0;g=d+72|0;if(!k)g=$Ma(x+88|0,(f[g>>2]|0)+116|0)|0;y=l;if(!(f[d+116>>2]|0))EJa(y);eJa(y,d+4|0);pJa(y,0,g);g=y+200|0;if(!(f[y+36>>2]|0))hJa(y,0,d+36|0);if((f[g>>2]&1|0)==0&0==0)MKa(y,0,d);if(!(f[y+44>>2]|0))hJa(y,1,d+44|0);if((f[g>>2]&2|0)==0&0==0)MKa(y,1,d);if(!(f[y+52>>2]|0))hJa(y,2,d+52|0);if((f[g>>2]&4|0)==0&0==0)MKa(y,2,d);cNa(a,d,y,x);IJa(y,((b[d+192>>0]|b[y+192>>0])&255)>>>3&7);r=y+196|0;if(!(f[r>>2]&2))g=(f[d+196>>2]&2|0)!=0;else g=1;aJa(y,g);if(!(f[r>>2]&4))g=(f[d+196>>2]&4|0)!=0;else g=1;bJa(y,g);if(!(f[r>>2]&8))g=(f[d+196>>2]&8|0)!=0;else g=1;rJa(y,g);if(!(f[r>>2]&16))g=(f[d+196>>2]&16|0)!=0;else g=1;sJa(y,g);if(!(f[r>>2]&32))g=(f[d+196>>2]&32|0)!=0;else g=1;vJa(y,g);if(!(f[r>>2]&64))g=(f[d+196>>2]&64|0)!=0;else g=1;xJa(y,g);if(!(f[r>>2]&8192))g=(f[d+196>>2]&8192|0)!=0;else g=1;yJa(y,g);if(!(f[r>>2]&16384))g=(f[d+196>>2]&16384|0)!=0;else g=1;zJa(y,g);if(!(f[r>>2]&32768))g=(f[d+196>>2]&32768|0)!=0;else g=1;AJa(y,g);if(!(f[r>>2]&65536))g=(f[d+196>>2]&65536|0)!=0;else g=1;BJa(y,g);if(!(f[r>>2]&33554432))g=(f[d+196>>2]&33554432|0)!=0;else g=1;tJa(y,g);if(!(f[r>>2]&67108864))g=(f[d+196>>2]&67108864|0)!=0;else g=1;uJa(y,g);g=f[r>>2]|0;do if(!(g&4096)){if(!(f[d+196>>2]&4096))break;f[s>>2]=f[(f[d+108>>2]|0)+40>>2];OKa(y,aNa(x+108|0,s)|0);g=f[r>>2]|0}while(0);do if(!(g&134217728)){if(!(f[d+196>>2]&134217728))break;h=d+104|0;g=f[h>>2]|0;j=b[g+364>>0]&1;if(!(j<<24>>24))g=g+300|0;else{i=f[x+12>>2]|0;if(b[i+120>>0]&4){AIa(i);g=f[h>>2]|0}q=i+76|0;p=g+300|0;f[t>>2]=q;f[t+4>>2]=p;s=t+8|0;D=+n[p>>2];C=+n[g+304>>2];B=+n[g+308>>2];n[s>>2]=+n[q>>2]*D+ +n[i+88>>2]*C+ +n[i+100>>2]*B;n[t+12>>2]=+n[i+80>>2]*D+ +n[i+92>>2]*C+ +n[i+104>>2]*B;n[t+16>>2]=+n[i+84>>2]*D+ +n[i+96>>2]*C+ +n[i+108>>2]*B;g=s}UKa(y,j,g,+WKa(d))}while(0);g=bNa(v,w)|0;p=o;q=(o|0)==0;if(!q)gOb(p);f[g>>2]=l;w=g+4|0;g=f[w>>2]|0;f[w>>2]=o;if(g|0)iOb(g);e:do if(!k){g=WFa(x)|0;o=e;m=f[o>>2]|0;o=f[o+4>>2]|0;j=m&15;i=ZPb(m|0,o|0,4)|0;if((j|0)!=15){h=f[g+12>>2]|0;if(j>>>0>=(((f[g+16>>2]|0)-h|0)/72|0)>>>0)break;k=i&15;i=ZPb(m|0,o|0,8)|0;do if((k|0)==15)g=h+(j*72|0)|0;else{g=f[h+(j*72|0)+12>>2]|0;if(k>>>0>=(((f[h+(j*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;j=i&15;i=ZPb(m|0,o|0,12)|0;if((j|0)==15){g=g+(k*72|0)|0;break}h=f[g+(k*72|0)+12>>2]|0;if(j>>>0>=(((f[g+(k*72|0)+16>>2]|0)-h|0)/72|0)>>>0)break e;k=i&15;i=ZPb(m|0,o|0,16)|0;if((k|0)==15){g=h+(j*72|0)|0;break}g=f[h+(j*72|0)+12>>2]|0;if(k>>>0>=(((f[h+(j*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;j=i&15;i=ZPb(m|0,o|0,20)|0;if((j|0)==15){g=g+(k*72|0)|0;break}h=f[g+(k*72|0)+12>>2]|0;if(j>>>0>=(((f[g+(k*72|0)+16>>2]|0)-h|0)/72|0)>>>0)break e;k=i&15;i=ZPb(m|0,o|0,24)|0;if((k|0)==15){g=h+(j*72|0)|0;break}g=f[h+(j*72|0)+12>>2]|0;if(k>>>0>=(((f[h+(j*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;j=i&15;i=ZPb(m|0,o|0,28)|0;if((j|0)==15){g=g+(k*72|0)|0;break}h=f[g+(k*72|0)+12>>2]|0;if(j>>>0>=(((f[g+(k*72|0)+16>>2]|0)-h|0)/72|0)>>>0)break e;k=i&15;if((k|0)==15){g=h+(j*72|0)|0;break}g=f[h+(j*72|0)+12>>2]|0;if(k>>>0>=(((f[h+(j*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;j=o&15;i=ZPb(m|0,o|0,36)|0;if((j|0)==15){g=g+(k*72|0)|0;break}h=f[g+(k*72|0)+12>>2]|0;if(j>>>0>=(((f[g+(k*72|0)+16>>2]|0)-h|0)/72|0)>>>0)break e;k=i&15;i=ZPb(m|0,o|0,40)|0;if((k|0)==15){g=h+(j*72|0)|0;break}g=f[h+(j*72|0)+12>>2]|0;if(k>>>0>=(((f[h+(j*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;j=i&15;i=ZPb(m|0,o|0,44)|0;if((j|0)==15){g=g+(k*72|0)|0;break}h=f[g+(k*72|0)+12>>2]|0;if(j>>>0>=(((f[g+(k*72|0)+16>>2]|0)-h|0)/72|0)>>>0)break e;k=i&15;i=ZPb(m|0,o|0,48)|0;if((k|0)==15){g=h+(j*72|0)|0;break}g=f[h+(j*72|0)+12>>2]|0;if(k>>>0>=(((f[h+(j*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;j=i&15;i=ZPb(m|0,o|0,52)|0;if((j|0)==15){g=g+(k*72|0)|0;break}h=f[g+(k*72|0)+12>>2]|0;if(j>>>0>=(((f[g+(k*72|0)+16>>2]|0)-h|0)/72|0)>>>0)break e;l=i&15;i=ZPb(m|0,o|0,56)|0;if((l|0)==15){g=h+(j*72|0)|0;break}g=f[h+(j*72|0)+12>>2]|0;if(l>>>0>=(((f[h+(j*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;j=g;k=i&15;h=ZPb(m|0,o|0,60)|0;if((k|0)==15){g=j+(l*72|0)|0;break}g=f[j+(l*72|0)+12>>2]|0;if(k>>>0>=(((f[j+(l*72|0)+16>>2]|0)-g|0)/72|0)>>>0)break e;i=g;g=h&15;if((g|0)==15){g=i+(k*72|0)|0;break}h=f[i+(k*72|0)+12>>2]|0;if(g>>>0<(((f[i+(k*72|0)+16>>2]|0)-h|0)/72|0)>>>0)g=h+(g*72|0)|0;else break e}while(0);if(!g)break}gpb(g,y,c,(f[a+8>>2]|0)>>>0<524289,(b[a+416>>0]&4)!=0)}while(0);ZIa(y);g=f[a+4>>2]|0;if(!(b[g+229>>0]|0))z=126;else if(f[r>>2]&16777216|0)z=126;if((z|0)==126)U8a(f[g+240>>2]|0,y,0,0);if(q){u=A;return}iOb(p);u=A;return}function _Ma(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=f[b>>2]|0;l=f[k>>2]|0;h=f[a+4>>2]|0;b=f[k+4>>2]|0;i=h+-1|0;e=(i&h|0)==0;if(e)g=i&b;else if(b>>>0>>0)g=b;else g=(b>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(g<<2)|0;j=f[c>>2]|0;while(1){b=f[j>>2]|0;if((b|0)==(k|0))break;else j=b}if((j|0)==(a+8|0))d=13;else{b=f[j+4>>2]|0;if(e)b=b&i;else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0)){c=l;d=21}else d=13}do if((d|0)==13){if(l|0){b=f[l+4>>2]|0;if(e)b=b&i;else if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0;if((b|0)==(g|0)){c=l;b=l;d=22;break}}f[c>>2]=0;c=f[k>>2]|0;d=21}while(0);if((d|0)==21){b=c;if(c)d=22}if((d|0)==22){c=f[c+4>>2]|0;if(e)c=c&i;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)!=(g|0)){f[(f[a>>2]|0)+(c<<2)>>2]=j;b=f[k>>2]|0}}f[j>>2]=b;f[k>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;if(!k)return l|0;b=f[k+16>>2]|0;if(b|0)iOb(b);sOb(k);return l|0}function $Ma(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;hNa(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function aNa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;fNa(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function bNa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;dNa(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function cNa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j+4|0;h=j;if(!(b[(f[a+4>>2]|0)+229>>0]|0))a=0;else a=(f[d+196>>2]&16777216|0)==0;i=e+128|0;if(a|(b[i>>0]|0)!=2)g=0;else{f[h>>2]=f[d+120>>2];f[g>>2]=f[h>>2];g=bGa(e,g)|0}h=d+193|0;c=c+192|0;e=g+12|0;if(a){do if(!(b[h>>0]&1))if(!(b[i>>0]|0)){HJa(d,1,0,1)|0;break}else{HJa(d,1,0,0)|0;break}while(0);do if(!(b[h>>0]&2))if(!(b[i>>0]|0)){HJa(d,2,0,1)|0;break}else{HJa(d,2,0,0)|0;break}while(0);if(b[h>>0]&4){u=j;return}if(!(b[i>>0]|0)){HJa(d,4,0,1)|0;u=j;return}else{HJa(d,4,0,0)|0;u=j;return}}a=(b[h>>0]&1)==0;if(!g){a:do if(a)switch(b[i>>0]|0){case 0:{HJa(d,1,0,1)|0;break a}case 1:{HJa(d,1,1,1)|0;break a}default:{HJa(d,1,(b[c>>0]&1)!=0,0)|0;break a}}while(0);b:do if(!(b[h>>0]&2))switch(b[i>>0]|0){case 0:{HJa(d,2,0,1)|0;break b}case 1:{HJa(d,2,1,1)|0;break b}default:{HJa(d,2,(b[c>>0]&2)!=0,0)|0;break b}}while(0);if(b[h>>0]&4){u=j;return}switch(b[i>>0]|0){case 0:{HJa(d,4,0,1)|0;u=j;return}case 1:{HJa(d,4,1,1)|0;u=j;return}default:{HJa(d,4,(b[c>>0]&4)!=0,0)|0;u=j;return}}}c:do if(a)switch(b[i>>0]|0){case 0:{HJa(d,1,0,1)|0;break c}case 1:{HJa(d,1,1,1)|0;break c}default:{a=f[e>>2]|0;if((a|0)==-1)a=(b[c>>0]&1)!=0;else a=(a&1|0)!=0;HJa(d,1,a,0)|0;break c}}while(0);d:do if(!(b[h>>0]&2))switch(b[i>>0]|0){case 0:{HJa(d,2,0,1)|0;break d}case 1:{HJa(d,2,1,1)|0;break d}default:{a=f[e>>2]|0;if((a|0)==-1)a=(b[c>>0]&2)!=0;else a=(a&2|0)!=0;HJa(d,2,a,0)|0;break d}}while(0);if(b[h>>0]&4){u=j;return}switch(b[i>>0]|0){case 0:{HJa(d,4,0,1)|0;u=j;return}case 1:{HJa(d,4,1,1)|0;u=j;return}default:{a=f[e>>2]|0;if((a|0)==-1)a=(b[c>>0]&4)!=0;else a=(a&4|0)!=0;HJa(d,4,a,0)|0;u=j;return}}}function dNa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){eNa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;eNa(a,b);return}function eNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function fNa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){gNa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;gNa(a,b);return}function gNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function hNa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){iNa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;iNa(a,b);return}function iNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function jNa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,g=0.0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,t=0,v=0,w=0;q=u;u=u+32|0;p=q;r=f[a>>2]|0;f[p>>2]=r;w=f[a+4>>2]|0;k=p+4|0;f[k>>2]=w;t=f[a+8>>2]|0;o=p+8|0;f[o>>2]=t;c=p+12|0;e=f[a+12>>2]|0;f[c>>2]=e;v=f[a+16>>2]|0;j=p+16|0;f[j>>2]=v;m=p+20|0;f[m>>2]=f[a+20>>2];g=+n[b>>2];r=g<(f[s>>2]=r,+n[s>>2]);h=(f[s>>2]=w,+n[s>>2]);i=(f[s>>2]=v,+n[s>>2]);d=(f[s>>2]=t,+n[s>>2]);if(r){e=p;l=3}else if(g>(f[s>>2]=e,+n[s>>2])){e=c;l=3}if((l|0)==3)n[e>>2]=g;g=+n[b+4>>2];if(gi){e=c;l=6}if((l|0)==6){n[e+4>>2]=g;d=+n[o>>2]}g=+n[b+8>>2];if(g+n[m>>2]){e=c;l=9}if((l|0)==9)n[e+8>>2]=g;d=+n[b+12>>2];if(d<+n[p>>2]){e=p;l=12}else if(d>+n[c>>2]){e=c;l=12}if((l|0)==12)n[e>>2]=d;d=+n[b+16>>2];if(d<+n[k>>2]){e=p;l=15}else if(d>+n[j>>2]){e=c;l=15}if((l|0)==15)n[e+4>>2]=d;d=+n[b+20>>2];if(d<+n[o>>2])c=p;else if(!(d>+n[m>>2])){w=uNa(p,a)|0;u=q;return w|0}n[c+8>>2]=d;w=uNa(p,a)|0;u=q;return w|0}function kNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;p=r;q=a+4|0;l=f[q>>2]|0;m=f[a>>2]|0;e=l-m>>2;c=e+1|0;n=m;d=l;if(c>>>0>1073741823)AMb(a);o=a+8|0;i=f[o>>2]|0;k=i-m|0;g=k>>1;g=k>>2>>>0<536870911?(g>>>0>>0?c:g):1073741823;f[p+12>>2]=0;f[p+16>>2]=a+8;do if(!g)h=0;else if(g>>>0>1073741823)vd();else{h=pOb(g<<2)|0;break}while(0);f[p>>2]=h;c=h+(e<<2)|0;j=p+8|0;k=p+4|0;f[k>>2]=c;g=h+(g<<2)|0;h=p+12|0;f[h>>2]=g;f[c>>2]=f[b>>2];e=c+4|0;f[j>>2]=e;if((d|0)==(n|0)){d=c;b=h;n=m;h=l;l=g;m=i;i=d;f[a>>2]=i;f[k>>2]=n;f[q>>2]=e;f[j>>2]=h;f[o>>2]=l;f[b>>2]=m;f[p>>2]=n;tNa(p);u=r;return}do{d=d+-4|0;m=f[d>>2]|0;f[d>>2]=0;f[c+-4>>2]=m;c=(f[k>>2]|0)+-4|0;f[k>>2]=c}while((d|0)!=(n|0));e=c;m=h;i=j;n=f[a>>2]|0;g=f[j>>2]|0;b=f[q>>2]|0;j=f[h>>2]|0;l=f[o>>2]|0;h=e;f[a>>2]=h;f[k>>2]=n;f[q>>2]=g;f[i>>2]=b;f[o>>2]=j;f[m>>2]=l;f[p>>2]=n;tNa(p);u=r;return}function lNa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0.0,o=0.0,p=0.0,q=0.0,r=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0;F=u;u=u+48|0;i=F;j=a+36|0;if(!(f[j>>2]|0)){e=a+24|0;g=a+28|0;h=f[g>>2]|0;if(h-(f[e>>2]|0)>>2>>>0>127){e=pOb(104)|0;g=e+49|0;h=e;i=h+104|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(i|0));b[g>>0]=1;i=e+76|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;b[e+101>>0]=1;f[j>>2]=e;f[e+40>>2]=a;f[e+92>>2]=a;mNa(a);lNa(a,c,d);u=F;return}f[i>>2]=d;if((f[a+32>>2]|0)>>>0>h>>>0){f[h>>2]=d;f[g>>2]=(f[g>>2]|0)+4}else nNa(e,i);eGa(d,a);u=F;return}xib(i,a,b[a+48>>0]|0,+n[a+44>>2]);e=f[j>>2]|0;f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];f[e+12>>2]=f[i+12>>2];f[e+16>>2]=f[i+16>>2];f[e+20>>2]=f[i+20>>2];J=f[i+24>>2]|0;f[e+52>>2]=J;I=f[i+28>>2]|0;f[e+56>>2]=I;H=f[i+32>>2]|0;f[e+60>>2]=H;G=f[i+36>>2]|0;f[e+64>>2]=G;h=f[i+40>>2]|0;f[e+68>>2]=h;j=f[i+44>>2]|0;f[e+72>>2]=j;r=+n[c>>2];t=+n[c+4>>2];v=+n[c+8>>2];w=+n[c+12>>2];x=+n[c+16>>2];y=+n[c+20>>2];k=+n[e>>2];z=(f[s>>2]=J,+n[s>>2]);A=(f[s>>2]=I,+n[s>>2]);B=(f[s>>2]=H,+n[s>>2]);C=(f[s>>2]=G,+n[s>>2]);D=(f[s>>2]=h,+n[s>>2]);E=(f[s>>2]=j,+n[s>>2]);if(!(r>=k))g=15;else{l=+n[e+4>>2];if(!(t>=l))g=15;else{m=+n[e+8>>2];if(!(v>=m))g=15;else{o=+n[e+12>>2];if(!(r<=o))g=15;else{p=+n[e+16>>2];if(!(t<=p))g=15;else{q=+n[e+20>>2];if(!(v<=q)|!(w>=k)|!(x>=l))g=15;else if(!(y<=q&((!(x<=p)|(!(w<=o)|!(y>=m)))^1)))g=15}}}}}do if((g|0)==15){e=e+52|0;if(!(!(r>=z)|!(t>=A)|!(v>=B)|!(r<=C)|!(t<=D)))if(!(!(v<=E)|!(w>=z)|!(x>=A)))if(y<=E&((!(x<=D)|(!(w<=C)|!(y>=B)))^1))break;f[i>>2]=d;g=a+28|0;e=f[g>>2]|0;if(e>>>0<(f[a+32>>2]|0)>>>0){f[e>>2]=d;f[g>>2]=(f[g>>2]|0)+4}else nNa(a+24|0,i);eGa(d,a);u=F;return}while(0);lNa(e,c,d);u=F;return}function mNa(a){a=a|0;var c=0,d=0,e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;e=u;u=u+64|0;c=e+48|0;p=e;oNa(c,a);wib(p,a,0,.5);o=pNa(p,c)|0;wib(p,a,0,.3330000042915344);q=pNa(p,c)|0;d=(q|0)<(o|0);o=d?q:o;wib(p,a,0,.6660000085830688);q=pNa(p,c)|0;h=(q|0)<(o|0);o=h?q:o;wib(p,a,1,.5);q=pNa(p,c)|0;i=(q|0)<(o|0);o=i?q:o;wib(p,a,1,.3330000042915344);q=pNa(p,c)|0;j=(q|0)<(o|0);o=j?q:o;wib(p,a,1,.6660000085830688);q=pNa(p,c)|0;k=(q|0)<(o|0);o=k?q:o;wib(p,a,2,.5);q=pNa(p,c)|0;l=(q|0)<(o|0);o=l?q:o;wib(p,a,2,.3330000042915344);q=pNa(p,c)|0;m=(q|0)<(o|0);wib(p,a,2,.6660000085830688);o=(pNa(p,c)|0)<((m?q:o)|0);q=o|(m|l)?2:(k|(j|i))&1;r=q&255;f[p>>2]=f[a+(r<<2)>>2];f[p+4>>2]=f[a+12+(r<<2)>>2];b[a+48>>0]=q;g=+Qib(p,o?.6660000085830688:m?.3330000042915344:l?.5:k?.6660000085830688:j?.3330000042915344:i?.5:h?.6660000085830688:d?.3330000042915344:.5);n[a+44>>2]=g;a=f[c+12>>2]|0;if(a|0)qNa(a,c);d=f[c>>2]|0;if(!d){u=e;return}a=c+4|0;c=f[a>>2]|0;if((c|0)!=(d|0))f[a>>2]=c+(~(((c+-24-d|0)>>>0)/24|0)*24|0);sOb(d);u=e;return}function nNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)AMb(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)vd();else{i=pOb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)bQb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;sOb(j);return}function oNa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+32|0;p=q;if(!(b[257144]|0))MPb(257144)|0;sNa(a,262921);m=c+24|0;n=c+28|0;l=f[n>>2]|0;c=f[m>>2]|0;e=l-c>>2;o=a+8|0;i=f[a>>2]|0;g=i;if((((f[o>>2]|0)-i|0)/24|0)>>>0>>0){j=a+4|0;if(e>>>0>178956970)vd();r=f[j>>2]|0;h=pOb(e*24|0)|0;d=h+(((r-i|0)/24|0)*24|0)|0;k=d;h=h+(e*24|0)|0;e=r;if((e|0)==(g|0))d=k;else do{r=d;d=d+-24|0;s=e;e=e+-24|0;f[d>>2]=f[e>>2];f[r+-20>>2]=f[s+-20>>2];f[r+-16>>2]=f[s+-16>>2];f[r+-12>>2]=f[s+-12>>2];f[r+-8>>2]=f[s+-8>>2];f[r+-4>>2]=f[s+-4>>2]}while((e|0)!=(g|0));f[a>>2]=d;f[j>>2]=k;f[o>>2]=h;if(!i)e=l;else{sOb(i);c=f[m>>2]|0;e=f[n>>2]|0}}else e=l;if((c|0)==(e|0)){u=q;return}g=a+4|0;h=p+4|0;i=p+8|0;j=p+12|0;k=p+16|0;l=p+20|0;do{cGa(p,f[c>>2]|0);d=f[g>>2]|0;if(d>>>0<(f[o>>2]|0)>>>0){f[d>>2]=f[p>>2];f[d+4>>2]=f[p+4>>2];f[d+8>>2]=f[p+8>>2];f[d>>2]=f[p>>2];f[d+4>>2]=f[h>>2];f[d+8>>2]=f[i>>2];s=d+12|0;f[s>>2]=f[j>>2];f[s+4>>2]=f[j+4>>2];f[s+8>>2]=f[j+8>>2];f[s>>2]=f[j>>2];f[d+16>>2]=f[k>>2];f[d+20>>2]=f[l>>2];f[g>>2]=(f[g>>2]|0)+24}else cD(a,p);c=c+4|0}while((c|0)!=(e|0));u=q;return}function pNa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0,B=0,C=0.0;B=u;u=u+16|0;A=B;c=A;f[c>>2]=0;f[c+4>>2]=0;c=f[b>>2]|0;z=f[b+4>>2]|0;if((c|0)==(z|0)){z=0;k=0;z=k-z|0;k=(z|0)>-1;A=0-z|0;A=k?z:A;u=B;return A|0}m=+n[a>>2];o=+n[a+24>>2];p=+n[a+28>>2];q=+n[a+32>>2];r=+n[a+36>>2];s=+n[a+40>>2];t=+n[a+44>>2];v=+n[a+4>>2];w=+n[a+8>>2];x=+n[a+12>>2];y=+n[a+16>>2];l=+n[a+20>>2];do{g=+n[c>>2];b=c+4|0;a=c+8|0;h=c+12|0;j=c+16|0;k=c+20|0;if(!(g>=m))i=12;else{d=+n[b>>2];if(!(d>=v))i=12;else{e=+n[a>>2];if(!(e>=w)|!(g<=x)|!(d<=y)|!(e<=l))i=12;else{d=+n[h>>2];if(!(d>=m))i=12;else{e=+n[j>>2];if(!(e>=v))i=12;else{C=+n[k>>2];if(C<=l&((!(e<=y)|(!(d<=x)|!(C>=w)))^1)){b=0;i=11}else i=12}}}}}if((i|0)==12){i=0;if(g>=o){d=+n[b>>2];if(d>=p){C=+n[a>>2];if(!(!(C>=q)|!(g<=r)|!(d<=s)|!(C<=t))){e=+n[h>>2];if(e>=o){d=+n[j>>2];if(d>=p){C=+n[k>>2];if(C<=t&((!(d<=s)|(!(e<=r)|!(C>=q)))^1)){b=1;i=11}}}}}}}if((i|0)==11){k=A+(b<<2)|0;f[k>>2]=(f[k>>2]|0)+1}c=c+24|0}while((c|0)!=(z|0));z=f[A+4>>2]|0;k=f[A>>2]|0;z=k-z|0;k=(z|0)>-1;A=0-z|0;A=k?z:A;u=B;return A|0}function qNa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c+8|0;a=f[c>>2]|0;if((f[e>>2]|0)==(a|0))return;g=c+4|0;d=f[g>>2]|0;if((d|0)!=(a|0))f[g>>2]=d+(~(((d+-24-a|0)>>>0)/24|0)*24|0);if(!(b[257328]|0))if(MPb(257328)|0){f[64673]=0;f[64674]=0;f[64675]=0}a=f[64674]|0;if(a>>>0<(f[64675]|0)>>>0){f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;f[a>>2]=f[c>>2];f[d>>2]=f[g>>2];f[a+8>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;f[64674]=a+12;return}else{rNa(258692,c);return}}function rNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=a+4|0;c=f[a>>2]|0;h=((f[j>>2]|0)-c|0)/12|0;d=h+1|0;if(d>>>0>357913941)AMb(a);k=a+8|0;i=((f[k>>2]|0)-c|0)/12|0;c=i<<1;c=i>>>0<178956970?(c>>>0>>0?d:c):357913941;do if(!c)g=0;else if(c>>>0>357913941)vd();else{g=pOb(c*12|0)|0;break}while(0);d=g+(h*12|0)|0;e=d;i=g+(c*12|0)|0;f[g+(h*12|0)+8>>2]=0;f[d>>2]=f[b>>2];c=b+4|0;f[g+(h*12|0)+4>>2]=f[c>>2];l=b+8|0;f[g+(h*12|0)+8>>2]=f[l>>2];f[l>>2]=0;f[c>>2]=0;f[b>>2]=0;g=d+12|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){c=e;h=b;e=b}else{do{l=d+-12|0;h=c;c=c+-12|0;f[l>>2]=0;m=d+-8|0;f[m>>2]=0;f[d+-4>>2]=0;f[l>>2]=f[c>>2];l=h+-8|0;f[m>>2]=f[l>>2];h=h+-4|0;f[d+-4>>2]=f[h>>2];f[h>>2]=0;f[l>>2]=0;f[c>>2]=0;d=e+-12|0;e=d}while((c|0)!=(b|0));c=e;h=f[a>>2]|0;e=f[j>>2]|0}f[a>>2]=c;f[j>>2]=g;f[k>>2]=i;g=h;if((e|0)!=(g|0))do{c=e;e=e+-12|0;b=f[e>>2]|0;if(b|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~(((d+-24-b|0)>>>0)/24|0)*24|0);sOb(b)}}while((e|0)!=(g|0));if(!h)return;sOb(h);return}function sNa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(!(b[257328]|0))if(MPb(257328)|0){f[64673]=0;f[64674]=0;f[64675]=0}e=f[64674]|0;if((f[64673]|0)==(e|0)){j=0;i=0;h=0;k=a+4|0;f[a>>2]=h;f[k>>2]=i;k=a+8|0;f[k>>2]=j;a=a+12|0;f[a>>2]=c;return}h=e+-12|0;d=f[h>>2]|0;j=e+-8|0;k=f[j>>2]|0;i=e+-4|0;g=f[i>>2]|0;f[i>>2]=0;f[j>>2]=0;f[h>>2]=0;h=f[64674]|0;j=h+-12|0;while(1){e=h+-12|0;f[64674]=e;i=f[e>>2]|0;if(i){e=h+-8|0;h=f[e>>2]|0;if((h|0)!=(i|0))f[e>>2]=h+(~(((h+-24-i|0)>>>0)/24|0)*24|0);sOb(i);e=f[64674]|0}if((e|0)==(j|0)){e=k;break}else h=e}k=a+4|0;f[a>>2]=d;f[k>>2]=e;k=a+8|0;f[k>>2]=g;a=a+12|0;f[a>>2]=c;return}function tNa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=f[a+4>>2]|0;h=a+8|0;b=f[h>>2]|0;if((b|0)!=(g|0))do{d=b+-4|0;f[h>>2]=d;e=f[d>>2]|0;f[d>>2]=0;if(e|0){d=e+36|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){iDa(b);sOb(b)}b=f[e+24>>2]|0;if(b|0){c=e+28|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);sOb(b)}sOb(e)}b=f[h>>2]|0}while((b|0)!=(g|0));b=f[a>>2]|0;if(!b)return;sOb(b);return}function uNa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0;h=+n[a+12>>2]-+n[a>>2];g=+n[a+16>>2]-+n[a+4>>2];e=+n[a+20>>2]-+n[a+8>>2];c=h*g*e;f=+n[b+12>>2]-+n[b>>2];if(c>0.0){if(f*(+n[b+16>>2]-+n[b+4>>2])*(+n[b+20>>2]-+n[b+8>>2])>=c*.75){b=1;return b|0}}else if(!(h==0.0^f==0.0)){d=+n[b+20>>2]-+n[b+8>>2];c=+n[b+16>>2]-+n[b+4>>2];if(!(e==0.0^d==0.0|g==0.0^c==0.0)){h=h>0.0?h:1.0;h=g>0.0?h*g:h;g=f>0.0?f:1.0;g=c>0.0?g*c:g;if((d>0.0?g*d:g)>=(e>0.0?h*e:h)*.75){b=1;return b|0}}}b=0;return b|0}function vNa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;k=l;wNa(k,c);c=f[k+12>>2]|0;a:do if(c|0)if((b[k+33>>0]|0)!=1){d=f[a>>2]|0;i=f[c+116>>2]|0;h=f[d+92>>2]|0;if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)j=g&i;else if(i>>>0>>0)j=i;else j=(i>>>0)%(h>>>0)|0;c=f[(f[d+88>>2]|0)+(j<<2)>>2]|0;if(c|0){c=f[c>>2]|0;if(c|0){b:do if(e)while(1){h=f[c+4>>2]|0;d=(i|0)==(h|0);if(!(d|(h&g|0)==(j|0)))break a;if(d)if((f[c+8>>2]|0)==(i|0))break b;c=f[c>>2]|0;if(!c)break a}else while(1){d=f[c+4>>2]|0;if((i|0)==(d|0)){if((f[c+8>>2]|0)==(i|0))break b}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(j|0))break a}c=f[c>>2]|0;if(!c)break a}while(0);Ipb(k,c+12|0)}}}}while(0);eqb(f[f[a+4>>2]>>2]|0,k);c=f[k+24>>2]|0;if(c|0)iOb(c);c=f[k+16>>2]|0;if(c|0)iOb(c);c=f[k>>2]|0;if(!c){u=l;return}g=k+4|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{e=d+-8|0;f[g>>2]=e;d=f[d+-4>>2]|0;if(!d)d=e;else{iOb(d);d=f[g>>2]|0}}while((d|0)!=(c|0));c=f[k>>2]|0}sOb(c);u=l;return}function wNa(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0;f[a>>2]=0;i=a+4|0;f[i>>2]=0;f[a+8>>2]=0;h=b+4|0;c=(f[h>>2]|0)-(f[b>>2]|0)|0;g=c>>3;if(g|0){if(g>>>0>536870911)AMb(a);e=pOb(c)|0;f[i>>2]=e;f[a>>2]=e;f[a+8>>2]=e+(g<<3);c=f[b>>2]|0;h=f[h>>2]|0;if((c|0)!=(h|0))do{f[e>>2]=f[c>>2];g=f[c+4>>2]|0;f[e+4>>2]=g;if(g|0)gOb(g);c=c+8|0;e=(f[i>>2]|0)+8|0;f[i>>2]=e}while((c|0)!=(h|0))}f[a+12>>2]=f[b+12>>2];c=f[b+16>>2]|0;f[a+16>>2]=c;if(c|0)gOb(c);f[a+20>>2]=f[b+20>>2];c=f[b+24>>2]|0;f[a+24>>2]=c;if(!c){a=a+28|0;b=b+28|0;f[a>>2]=f[b>>2];d[a+4>>1]=d[b+4>>1]|0;return}gOb(c);a=a+28|0;b=b+28|0;f[a>>2]=f[b>>2];d[a+4>>1]=d[b+4>>1]|0;return}function xNa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){yNa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;yNa(a,b);return}function yNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function zNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function ANa(a){a=a|0;f[a>>2]=37720;ENa(a+12|0);aOb(a);return}function BNa(a){a=a|0;f[a>>2]=37720;ENa(a+12|0);aOb(a);sOb(a);return}function CNa(a){a=a|0;ENa(a+12|0);return}function DNa(a){a=a|0;sOb(a);return}function ENa(a){a=a|0;var b=0,c=0,d=0;b=f[a+116>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);d=a+108|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)sOb(b);b=f[a+96>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);d=a+88|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)sOb(b);b=f[a+76>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);d=a+68|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)sOb(b);b=f[a+56>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);d=a+48|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)sOb(b);b=f[a+36>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;sOb(d)}while((b|0)!=0);d=a+28|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)sOb(b);d=a+20|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){TFa(b);sOb(b)}b=f[a+16>>2]|0;if(!b)return;iOb(b);return}function FNa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){GNa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;GNa(a,b);return}function GNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function HNa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a+1856>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;sOb(h)}while((b|0)!=0);h=a+1848|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)sOb(b);qBa(a+464|0);b=f[a+440>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;sOb(h)}while((b|0)!=0);h=a+432|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)sOb(b);b=f[a+380>>2]|0;if(b|0){c=a+384|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);sOb(b)}g=a+368|0;b=f[g>>2]|0;if(b|0){h=a+372|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[h>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-32-e|0)>>>5)<<5);sOb(e);c=f[h>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}sOb(b)}b=f[a+356>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);h=a+348|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)sOb(b);b=f[a+336>>2]|0;if(b|0){c=a+340|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);sOb(b)}b=f[a+324>>2]|0;if(b|0){c=a+328|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);sOb(b)}b=f[a+312>>2]|0;if(b|0){c=a+316|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);sOb(b)}b=f[a+300>>2]|0;if(b|0){c=a+304|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);sOb(b)}b=f[a+288>>2]|0;if(b|0){c=a+292|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);sOb(b)}b=f[a+276>>2]|0;if(b|0){c=a+280|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);sOb(b)}b=f[a+232>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;sOb(h)}while((b|0)!=0);h=a+224|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)sOb(b);b=f[a+212>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;sOb(h)}while((b|0)!=0);h=a+204|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)sOb(b);b=f[a+192>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;sOb(h)}while((b|0)!=0);h=a+184|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)sOb(b);b=f[a+172>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;sOb(h)}while((b|0)!=0);h=a+164|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)sOb(b);b=f[a+152>>2]|0;if(b|0){c=a+156|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);sOb(b)}INa(a+108|0);JNa(a+64|0);e=a+52|0;b=f[e>>2]|0;if(b|0){g=a+56|0;c=f[g>>2]|0;if((c|0)!=(b|0)){do{d=c+-20|0;f[g>>2]=d;c=f[c+-12>>2]|0;if(c|0)do{h=c;c=f[c>>2]|0;sOb(h)}while((c|0)!=0);c=f[d>>2]|0;f[d>>2]=0;if(c|0)sOb(c);c=f[g>>2]|0}while((c|0)!=(b|0));b=f[e>>2]|0}sOb(b)}b=f[a+40>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);h=a+32|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0)sOb(b);b=f[a+20>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;KNa(h+12|0);sOb(h)}while((b|0)!=0);a=a+12|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;sOb(b);return}function INa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a>>2]|0;if(!b)return;h=a+4|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{e=c+-4|0;f[h>>2]=e;g=f[e>>2]|0;f[e>>2]=0;if(g|0){e=g+36|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){jDa(c);sOb(c)}c=f[g+24>>2]|0;if(c|0){d=g+28|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);sOb(c)}sOb(g)}c=f[h>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}sOb(b);return}function JNa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a>>2]|0;if(!b)return;h=a+4|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{e=c+-4|0;f[h>>2]=e;g=f[e>>2]|0;f[e>>2]=0;if(g|0){e=g+36|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){iDa(c);sOb(c)}c=f[g+24>>2]|0;if(c|0){d=g+28|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);sOb(c)}sOb(g)}c=f[h>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}sOb(b);return}function KNa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;b=f[a+268>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);g=a+260|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);b=f[a+248>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);g=a+240|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);b=f[a+228>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);g=a+220|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);b=f[a+208>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);g=a+200|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);b=f[a+188>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);g=a+180|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);b=f[a+168>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);g=a+160|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);b=f[a+148>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);g=a+140|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);b=f[a+128>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);g=a+120|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);b=f[a+108>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);g=a+100|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);b=f[a+88>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);g=a+80|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);b=f[a+68>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);g=a+60|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);b=f[a+48>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);g=a+40|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);b=f[a+28>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+20>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);g=a+20|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);e=a+8|0;b=f[e>>2]|0;if(b|0){g=a+12|0;c=f[g>>2]|0;if((c|0)!=(b|0)){do{d=c+-8|0;f[g>>2]=d;c=f[c+-4>>2]|0;if(!c)c=d;else{iOb(c);c=f[g>>2]|0}}while((c|0)!=(b|0));b=f[e>>2]|0}sOb(b)}a=a+4|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;TFa(b);sOb(b);return}function LNa(a){a=a|0;var b=0,c=0;b=pOb(32)|0;f[b+4>>2]=0;f[b+8>>2]=0;f[b>>2]=37748;c=b+12|0;NMa(c,0);f[a>>2]=c;f[a+4>>2]=b;return}function MNa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=37748;b=f[a+12>>2]|0;if(b|0){HNa(b);sOb(b)}d=a+16|0;b=f[d>>2]|0;if(!b){aOb(a);return}e=a+20|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;if((g|0)==(c|0))gh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)gh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}sOb(b);aOb(a);return}function NNa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=37748;b=f[a+12>>2]|0;if(b|0){HNa(b);sOb(b)}d=a+16|0;b=f[d>>2]|0;if(!b){aOb(a);sOb(a);return}e=a+20|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-32|0;f[e>>2]=g;c=f[c+-16>>2]|0;if((g|0)==(c|0))gh[f[(f[c>>2]|0)+16>>2]&2047](c);else if(c|0)gh[f[(f[c>>2]|0)+20>>2]&2047](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}sOb(b);aOb(a);sOb(a);return}function ONa(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+12>>2]|0;if(b|0){HNa(b);sOb(b)}d=a+16|0;b=f[d>>2]|0;if(!b)return;c=a+20|0;a=f[c>>2]|0;if((a|0)!=(b|0)){do{e=a+-32|0;f[c>>2]=e;a=f[a+-16>>2]|0;if((e|0)==(a|0))gh[f[(f[a>>2]|0)+16>>2]&2047](a);else if(a|0)gh[f[(f[a>>2]|0)+20>>2]&2047](a);a=f[c>>2]|0}while((a|0)!=(b|0));b=f[d>>2]|0}sOb(b);return}function PNa(a){a=a|0;sOb(a);return}function QNa(a){a=a|0;RNa(f[a>>2]|0);return}function RNa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;yBa(a+464|0)|0;g=a+152|0;j=f[g>>2]|0;k=a+156|0;d=f[k>>2]|0;e=j;b=d+(~((d+-4-e|0)>>>2)<<2)|0;if((d|0)==(j|0))b=j;else f[k>>2]=b;d=a+160|0;c=b-e|0;b=c>>2;if((f[d>>2]|0)-e>>2>>>0>b>>>0){do if(!b){h=0;i=0}else if(b>>>0>1073741823)vd();else{i=pOb(c)|0;h=i;break}while(0);b=h+(b<<2)|0;if((c|0)>0)bQb(i|0,j|0,c|0)|0;f[g>>2]=h;f[k>>2]=b;f[d>>2]=b;if(j|0)sOb(j)}SNa(a+108|0);TNa(a+64|0);g=a+44|0;if(f[g>>2]|0){e=a+40|0;b=f[e>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[e>>2]=0;c=f[a+36>>2]|0;if(c|0){d=a+32|0;b=0;do{f[(f[d>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[g>>2]=0}d=f[a+52>>2]|0;e=a+56|0;b=f[e>>2]|0;if((b|0)!=(d|0))do{c=b+-20|0;f[e>>2]=c;b=f[b+-12>>2]|0;if(b|0)do{k=b;b=f[b>>2]|0;sOb(k)}while((b|0)!=0);b=f[c>>2]|0;f[c>>2]=0;if(b|0)sOb(b);b=f[e>>2]|0}while((b|0)!=(d|0));e=a+24|0;if(!(f[e>>2]|0))return;c=a+20|0;b=f[c>>2]|0;if(b|0)do{k=b;b=f[b>>2]|0;KNa(k+12|0);sOb(k)}while((b|0)!=0);f[c>>2]=0;d=f[a+16>>2]|0;if(d|0){c=a+12|0;b=0;do{f[(f[c>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(d|0))}f[e>>2]=0;return}function SNa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;k=r+24|0;j=r+20|0;i=r+16|0;l=r+12|0;m=r+8|0;n=r+28|0;o=r+4|0;p=r;h=f[a>>2]|0;q=a+4|0;c=f[q>>2]|0;if((c|0)!=(h|0))do{e=c+-4|0;f[q>>2]=e;g=f[e>>2]|0;f[e>>2]=0;if(g|0){e=g+36|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){jDa(c);sOb(c)}c=f[g+24>>2]|0;if(c|0){d=g+28|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);sOb(c)}sOb(g)}c=f[q>>2]|0}while((c|0)!=(h|0));f[a+12>>2]=1065353216;f[a+16>>2]=1065353216;f[a+20>>2]=1065353216;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;d=a+40|0;if(!(b[d>>0]|0)){u=r;return}b[d>>0]=0;f[l>>2]=f[a>>2];f[m>>2]=c;f[i>>2]=f[l>>2];f[j>>2]=f[m>>2];b[k>>0]=b[n>>0]|0;n=aDa(i,j,k)|0;f[o>>2]=n;f[p>>2]=f[q>>2];f[j>>2]=f[o>>2];f[k>>2]=f[p>>2];bDa(a,j,k)|0;u=r;return}function TNa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;k=r+24|0;j=r+20|0;i=r+16|0;l=r+12|0;m=r+8|0;n=r+28|0;o=r+4|0;p=r;h=f[a>>2]|0;q=a+4|0;c=f[q>>2]|0;if((c|0)!=(h|0))do{e=c+-4|0;f[q>>2]=e;g=f[e>>2]|0;f[e>>2]=0;if(g|0){e=g+36|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){iDa(c);sOb(c)}c=f[g+24>>2]|0;if(c|0){d=g+28|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);sOb(c)}sOb(g)}c=f[q>>2]|0}while((c|0)!=(h|0));f[a+12>>2]=1065353216;f[a+16>>2]=1065353216;f[a+20>>2]=1065353216;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;d=a+40|0;if(!(b[d>>0]|0)){u=r;return}b[d>>0]=0;f[l>>2]=f[a>>2];f[m>>2]=c;f[i>>2]=f[l>>2];f[j>>2]=f[m>>2];b[k>>0]=b[n>>0]|0;n=cDa(i,j,k)|0;f[o>>2]=n;f[p>>2]=f[q>>2];f[j>>2]=f[o>>2];f[k>>2]=f[p>>2];dDa(a,j,k)|0;u=r;return}function UNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+32|0;e=c+12|0;d=c;JJa(b,e,d);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[d>>2];f[a+16>>2]=f[d+4>>2];f[a+20>>2]=f[d+8>>2];u=c;return}function VNa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;WNa(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function WNa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){XNa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;XNa(a,b);return}function XNa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function YNa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;ZNa(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function ZNa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){_Na(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;_Na(a,b);return}function _Na(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function $Na(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;e=k+4|0;i=k;f[i>>2]=f[c>>2];f[e>>2]=f[i>>2];e=$Ma((TMa(a,e)|0)+60|0,c+4|0)|0;if(f[e>>2]|0){b=0;u=k;return b|0}i=c;g=f[i+4>>2]|0;d=(f[b>>2]|0)+112|0;f[d>>2]=f[i>>2];f[d+4>>2]=g;d=f[b>>2]|0;g=f[b+4>>2]|0;if(g|0)gOb(g);f[e>>2]=d;i=e+4|0;d=f[i>>2]|0;f[i>>2]=g;if(d|0)iOb(d);h=f[c>>2]|0;g=f[a+16>>2]|0;if(!g){b=1;u=k;return b|0}c=g+-1|0;e=(c&g|0)==0;if(e)i=c&h;else if(h>>>0>>0)i=h;else i=(h>>>0)%(g>>>0)|0;d=f[(f[a+12>>2]|0)+(i<<2)>>2]|0;if(!d){b=1;u=k;return b|0}d=f[d>>2]|0;if(!d){b=1;u=k;return b|0}a:do if(e){while(1){a=f[d+4>>2]|0;e=(a|0)==(h|0);if(!(e|(a&c|0)==(i|0))){d=1;e=26;break}if(e)if((f[d+8>>2]|0)==(h|0)){j=d;break a}d=f[d>>2]|0;if(!d){d=1;e=26;break}}if((e|0)==26){u=k;return d|0}}else{while(1){e=f[d+4>>2]|0;if((e|0)==(h|0)){if((f[d+8>>2]|0)==(h|0)){j=d;break a}}else{if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0;if((e|0)!=(i|0)){d=1;e=26;break}}d=f[d>>2]|0;if(!d){d=1;e=26;break}}if((e|0)==26){u=k;return d|0}}while(0);d=f[j+20>>2]|0;e=f[j+24>>2]|0;if((d|0)==(e|0)){b=1;u=k;return b|0}do{VMa(0,f[d>>2]|0,f[b>>2]|0);d=d+8|0}while((d|0)!=(e|0));d=1;u=k;return d|0}function aOa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;bOa(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function bOa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){cOa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;cOa(a,b);return}function cOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function dOa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;eOa(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function eOa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){fOa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;fOa(a,b);return}function fOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function gOa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;hOa(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function hOa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){iOa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;iOa(a,b);return}function iOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function jOa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;kOa(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function kOa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){lOa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;lOa(a,b);return}function lOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function mOa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;nOa(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function nOa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){oOa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;oOa(a,b);return}function oOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function pOa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;qOa(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function qOa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){rOa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;rOa(a,b);return}function rOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function sOa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;i=k;f[i>>2]=f[c>>2];f[h>>2]=f[i>>2];h=aNa((TMa(a,h)|0)+220|0,c+4|0)|0;if(f[h>>2]|0){b=0;u=k;return b|0}d=f[b>>2]|0;e=f[b+4>>2]|0;if(e|0)gOb(e);f[h>>2]=d;i=h+4|0;g=f[i>>2]|0;f[i>>2]=e;if(g){iOb(g);d=f[h>>2]|0}g=c;i=f[g+4>>2]|0;h=d+36|0;f[h>>2]=f[g>>2];f[h+4>>2]=i;c=f[c>>2]|0;h=f[a+16>>2]|0;if(!h){b=1;u=k;return b|0}g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(h>>>0)|0;d=f[(f[a+12>>2]|0)+(i<<2)>>2]|0;if(!d){b=1;u=k;return b|0}d=f[d>>2]|0;if(!d){b=1;u=k;return b|0}a:do if(e){while(1){a=f[d+4>>2]|0;e=(a|0)==(c|0);if(!(e|(a&g|0)==(i|0))){d=1;e=27;break}if(e)if((f[d+8>>2]|0)==(c|0)){j=d;break a}d=f[d>>2]|0;if(!d){d=1;e=27;break}}if((e|0)==27){u=k;return d|0}}else{while(1){e=f[d+4>>2]|0;if((e|0)==(c|0)){if((f[d+8>>2]|0)==(c|0)){j=d;break a}}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(i|0)){d=1;e=27;break}}d=f[d>>2]|0;if(!d){d=1;e=27;break}}if((e|0)==27){u=k;return d|0}}while(0);d=f[j+20>>2]|0;e=f[j+24>>2]|0;if((d|0)==(e|0)){b=1;u=k;return b|0}do{WMa(0,f[d>>2]|0,f[b>>2]|0);d=d+8|0}while((d|0)!=(e|0));d=1;u=k;return d|0}function tOa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;e=l+4|0;g=l;h=f[b>>2]|0;if(!(f[h+4>>2]|0)){d=0;u=l;return d|0}if(!(f[h+72>>2]|0)){d=0;u=l;return d|0}if(!(f[h+36>>2]|0)){d=0;u=l;return d|0}if(!(f[h+44>>2]|0)){d=0;u=l;return d|0}if(!(f[h+52>>2]|0)){d=0;u=l;return d|0}f[g>>2]=f[c>>2];f[e>>2]=f[g>>2];h=uOa((TMa(a,e)|0)+20|0,c+4|0)|0;if(f[h>>2]|0){d=0;u=l;return d|0}e=f[b>>2]|0;g=f[b+4>>2]|0;if(g|0)gOb(g);f[h>>2]=e;j=h+4|0;e=f[j>>2]|0;f[j>>2]=g;if(e|0)iOb(e);if(!d){e=0;g=0}else{g=d;e=f[g>>2]|0;g=f[g+4>>2]|0}h=h+8|0;f[h>>2]=e;f[h+4>>2]=g;h=c;j=f[h+4>>2]|0;i=(f[b>>2]|0)+116|0;f[i>>2]=f[h>>2];f[i+4>>2]=j;i=f[c>>2]|0;c=f[a+16>>2]|0;if(!c){d=1;u=l;return d|0}h=c+-1|0;g=(h&c|0)==0;if(g)j=h&i;else if(i>>>0>>0)j=i;else j=(i>>>0)%(c>>>0)|0;e=f[(f[a+12>>2]|0)+(j<<2)>>2]|0;if(!e){d=1;u=l;return d|0}e=f[e>>2]|0;if(!e){d=1;u=l;return d|0}a:do if(g){while(1){c=f[e+4>>2]|0;g=(c|0)==(i|0);if(!(g|(c&h|0)==(j|0))){e=1;g=33;break}if(g)if((f[e+8>>2]|0)==(i|0)){k=e;break a}e=f[e>>2]|0;if(!e){e=1;g=33;break}}if((g|0)==33){u=l;return e|0}}else{while(1){g=f[e+4>>2]|0;if((g|0)==(i|0)){if((f[e+8>>2]|0)==(i|0)){k=e;break a}}else{if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0;if((g|0)!=(j|0)){e=1;g=33;break}}e=f[e>>2]|0;if(!e){e=1;g=33;break}}if((g|0)==33){u=l;return e|0}}while(0);e=f[k+20>>2]|0;g=f[k+24>>2]|0;if((e|0)==(g|0)){d=1;u=l;return d|0}do{ZMa(a,e,f[b>>2]|0,d);e=e+8|0}while((e|0)!=(g|0));e=1;u=l;return e|0}function uOa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+16|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+16|0;return a|0}}while(0);h=pOb(32)|0;f[h+8>>2]=m;l=h+16|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;vOa(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+16|0;return a|0}function vOa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){wOa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;wOa(a,b);return}function wOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function xOa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0.0,q=0;o=u;u=u+16|0;l=o;m=a+416|0;c=b[m>>0]|0;if(!(c&2)){u=o;return}a:do if(c&1){if(f[a+444>>2]|0){c=f[a+440>>2]|0;if(!c)break;g=a+452|0;h=a+420|0;i=a+424|0;j=l+4|0;a=a+428|0;e=l+8|0;while(1){d=f[c+8>>2]|0;if(f[d+4>>2]|0)if(!(f[d+196>>2]&32)){k=d+200|0;if(!((f[k>>2]&33554432|0)==0&0==0))LJa(d);p=+n[g>>2];n[l>>2]=p*(+n[d+168>>2]-+n[h>>2]);n[j>>2]=p*(+n[d+172>>2]-+n[i>>2]);n[e>>2]=p*(+n[d+176>>2]-+n[a>>2]);wJa(d,l)}c=f[c>>2]|0;if(!c)break a}}c=f[a+40>>2]|0;b:do if(!c){d=0;c=0}else{d=f[(f[c+12>>2]|0)+56>>2]|0;if(!d)do{c=f[c>>2]|0;if(!c){d=0;c=0;break b}d=f[(f[c+12>>2]|0)+56>>2]|0}while((d|0)==0)}while(0);h=a+452|0;i=a+420|0;j=a+424|0;k=l+4|0;e=a+428|0;g=l+8|0;if(c|0)c:while(1){do{a=f[d+12>>2]|0;if(!(f[a+196>>2]&32)){q=a+200|0;if(!((f[q>>2]&33554432|0)==0&0==0))LJa(a);p=+n[h>>2];n[l>>2]=p*(+n[a+168>>2]-+n[i>>2]);n[k>>2]=p*(+n[a+172>>2]-+n[j>>2]);n[g>>2]=p*(+n[a+176>>2]-+n[e>>2]);wJa(a,l)}d=f[d>>2]|0}while((d|0)!=0);while(1){c=f[c>>2]|0;if(!c)break a;d=f[(f[c+12>>2]|0)+56>>2]|0;if(d)continue c}}}while(0);b[m>>0]=b[m>>0]&-3;u=o;return}function yOa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+36>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;c=f[(f[b+32>>2]|0)+(h<<2)>>2]|0;if(c|0){c=f[c>>2]|0;if(c|0){b:do if(d)while(1){g=f[c+4>>2]|0;b=(g|0)==(i|0);if(!(b|(g&e|0)==(h|0)))break a;if(b)if((f[c+8>>2]|0)==(i|0))break b;c=f[c>>2]|0;if(!c)break a}else while(1){b=f[c+4>>2]|0;if((b|0)==(i|0)){if((f[c+8>>2]|0)==(i|0))break b}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0))break a}c=f[c>>2]|0;if(!c)break a}while(0);f[a>>2]=f[c+12>>2];c=f[c+16>>2]|0;f[a+4>>2]=c;if(!c)return;gOb(c);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function zOa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;l=0;q=u;u=u+1328|0;j=f[c+244>>2]|0;p=f[c+240>>2]|0;k=f[d>>2]|0;if(k|0){e=f[(a+36|0)>>2]|0;if(!e){a=0;u=q;return a|0}if(!((e+-1|0)&e))g=(e+-1|0)&k;else if(k>>>0>>0)g=k;else g=(k>>>0)%(e>>>0)|0;c=f[(f[(a+32|0)>>2]|0)+(g<<2)>>2]|0;if(!c){a=0;u=q;return a|0}c=f[c>>2]|0;if(!c){a=0;u=q;return a|0}a:do if(!((e+-1|0)&e)){while(1){d=f[c+4>>2]|0;if(!((d|0)==(k|0)|(d&(e+-1|0)|0)==(g|0))){i=0;l=192;break}if((d|0)==(k|0))if((f[c+8>>2]|0)==(k|0)){o=c;break a}c=f[c>>2]|0;if(!c){i=0;l=192;break}}if((l|0)==192){u=q;return i|0}}else{while(1){d=f[c+4>>2]|0;if((d|0)==(k|0)){if((f[c+8>>2]|0)==(k|0)){o=c;break a}}else{if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;if((d|0)!=(g|0)){i=0;l=192;break}}c=f[c>>2]|0;if(!c){i=0;l=192;break}}if((l|0)==192){u=q;return i|0}}while(0);k=o+12|0;f[q>>2]=f[(f[k>>2]|0)+8>>2];f[(q+4|0)>>2]=f[q>>2];j=TMa(a,q+4|0)|0;d=f[j+8>>2]|0;c=f[(j+12|0)>>2]|0;b:do if((d|0)==(c|0)){h=d;l=142}else{e=f[k>>2]|0;do{if((f[d>>2]|0)==(e|0)){h=d;l=142;break b}d=d+8|0}while((d|0)!=(c|0))}while(0);if((l|0)==142)if((h|0)!=(c|0)){d=h+8|0;if((d|0)!=(c|0)){g=h;i=h;while(1){e=f[d>>2]|0;if((e|0)!=(f[k>>2]|0)){i=i+12|0;r=f[i>>2]|0;f[d>>2]=0;f[i>>2]=0;f[h>>2]=e;i=h+4|0;e=f[i>>2]|0;f[i>>2]=r;if(e|0)iOb(e);h=g+8|0;g=h}e=d+8|0;if((e|0)==(c|0))break;else{i=d;d=e}}c=f[(j+12|0)>>2]|0}if((c|0)!=(h|0))do{d=c+-8|0;f[(j+12|0)>>2]=d;c=f[c+-4>>2]|0;if(!c)c=d;else{iOb(c);c=f[(j+12|0)>>2]|0}}while((c|0)!=(h|0))}AOa(a,f[k>>2]|0);d=BOa(f[k>>2]|0)|0;do if(d|0)if(!(f[d+40>>2]|0)){c=(f[d+36>>2]|0)==0;if((f[d+24>>2]|0)==(f[d+28>>2]|0))if(c){b[a+104>>0]=1;l=160}else l=161;else if(c)l=160;else l=161;if((l|0)==160){b[a+105>>0]=1;break}else if((l|0)==161){b[a+106>>0]=1;break}}while(0);g=f[k>>2]|0;e=f[g>>2]|0;c=f[a+52>>2]|0;f[(q+4|0)>>2]=g;COa(c+(e*20|0)|0,q+4|0)|0;e=f[(a+36|0)>>2]|0;c=f[o+4>>2]|0;g=((e+-1|0)&e|0)==0;if(g)h=(e+-1|0)&c;else if(c>>>0>>0)h=c;else h=(c>>>0)%(e>>>0)|0;d=(f[(a+32|0)>>2]|0)+(h<<2)|0;i=f[d>>2]|0;while(1){c=f[i>>2]|0;if((c|0)==(o|0))break;else i=c}if((i|0)==(a+40|0))l=175;else{c=f[i+4>>2]|0;if(g)c=c&(e+-1|0);else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)==(h|0))m=o;else l=175}do if((l|0)==175){c=f[o>>2]|0;if(c|0){c=f[c+4>>2]|0;if(g)c=c&(e+-1|0);else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)==(h|0)){m=o;break}}f[d>>2]=0;m=o}while(0);c=f[m>>2]|0;if(c){d=f[c+4>>2]|0;if(g)d=d&(e+-1|0);else if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0;if((d|0)!=(h|0)){f[(f[(a+32|0)>>2]|0)+(d<<2)>>2]=i;c=f[o>>2]|0}}f[i>>2]=c;f[m>>2]=0;f[(a+44|0)>>2]=(f[(a+44|0)>>2]|0)+-1;c=f[o+16>>2]|0;if(c|0)iOb(c);sOb(o);vDa(a+464|0);Y8a(p);r=1;u=q;return r|0}g=PMa(a+32|0,258684)|0;c=f[g>>2]|0;d=f[c+56>>2]|0;if(d){do{e=f[d+12>>2]|0;c=f[e+4>>2]|0;e=f[e+8>>2]|0;if(e)gOb(e);if(c|0)z$a(j,c+28|0,7,0);if(e)iOb(e);d=f[d>>2]|0}while((d|0)!=0);c=f[g>>2]|0}AOa(a,c);r=f[g>>2]|0;f[q+32>>2]=a;f[q+280>>2]=i;f[q+360>>2]=g;f[q+456>>2]=r;f[q+1064>>2]=j;f[q+1112>>2]=p;f[q+1280>>2]=0;f[q+1284>>2]=0;VQa(q);G=f[q+1280>>2]|0;D=f[q+1284>>2]|0;H=+n[q+1284>>2];f[q+1280>>2]=0;f[q+1284>>2]=0;if((G|0)==6)return D|0;return 0|0;return 0}function AOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=b+96|0;c=f[g>>2]|0;if(c|0)do{h=(f[c+12>>2]|0)+112|0;f[h>>2]=0;f[h+4>>2]=-1;c=f[c>>2]|0}while((c|0)!=0);h=b+100|0;if(f[h>>2]|0){c=f[g>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0)iOb(e);sOb(d)}while((c|0)!=0);f[g>>2]=0;d=f[b+92>>2]|0;if(d|0){e=b+88|0;c=0;do{f[(f[e>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[h>>2]=0}g=b+116|0;c=f[g>>2]|0;if(c|0)do{h=(f[c+12>>2]|0)+36|0;f[h>>2]=0;f[h+4>>2]=-1;c=f[c>>2]|0}while((c|0)!=0);h=b+120|0;if(f[h>>2]|0){c=f[g>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[d+16>>2]|0;if(e|0)iOb(e);sOb(d)}while((c|0)!=0);f[g>>2]=0;d=f[b+112>>2]|0;if(d|0){e=b+108|0;c=0;do{f[(f[e>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[h>>2]=0}c=f[b+56>>2]|0;if(c|0)do{EOa(a,f[c+12>>2]|0);c=f[c>>2]|0}while((c|0)!=0);c=f[b+76>>2]|0;if(!c)return;do{EOa(a,f[c+12>>2]|0);c=f[c>>2]|0}while((c|0)!=0);return}function BOa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;c=dGa(a)|0;if(!c){k=0;return k|0}k=c+24|0;e=f[k>>2]|0;j=c+28|0;d=f[j>>2]|0;a:do if((e|0)==(d|0)){h=e;g=5}else do{if((f[e>>2]|0)==(a|0)){h=e;g=5;break a}e=e+4|0}while((e|0)!=(d|0));while(0);if((g|0)==5)if((h|0)!=(d|0)){e=h+4|0;if((e|0)==(d|0))e=h;else{i=e;e=h;while(1){g=f[i>>2]|0;if((g|0)==(a|0))g=h;else{f[h>>2]=g;g=h+4|0;e=g}i=i+4|0;if((i|0)==(d|0))break;else h=g}d=f[j>>2]|0}if((d|0)!=(e|0)){d=d+(~((d+-4-e|0)>>>2)<<2)|0;f[j>>2]=d}}b:do if((f[k>>2]|0)==(d|0))while(1){if(f[c+36>>2]|0)break b;e=f[c+40>>2]|0;if(!e)break b;c=e+36|0;d=f[c>>2]|0;if((f[d+24>>2]|0)==(f[d+28>>2]|0))if(!(f[d+36>>2]|0))if((f[d+76>>2]|0)==(f[d+80>>2]|0))if(!(f[d+88>>2]|0)){f[c>>2]=0;iDa(d);sOb(d)}if((f[e+24>>2]|0)==(f[e+28>>2]|0))c=e;else{c=e;break}}while(0);b[c+49>>0]=0;k=c;return k|0}function COa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=DOa(a,b)|0;if(!l){a=0;return a|0}i=f[a+4>>2]|0;b=f[l+4>>2]|0;j=i+-1|0;g=(j&i|0)==0;if(g)h=j&b;else if(b>>>0>>0)h=b;else h=(b>>>0)%(i>>>0)|0;c=(f[a>>2]|0)+(h<<2)|0;k=f[c>>2]|0;while(1){b=f[k>>2]|0;if((b|0)==(l|0))break;else k=b}if((k|0)==(a+8|0))e=15;else{b=f[k+4>>2]|0;if(g)b=b&j;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(h|0))d=l;else e=15}do if((e|0)==15){b=f[l>>2]|0;if(b|0){b=f[b+4>>2]|0;if(g)b=b&j;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(h|0)){d=l;break}}f[c>>2]=0;d=l}while(0);c=f[d>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(g)c=c&j;else if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(h|0)){f[(f[a>>2]|0)+(c<<2)>>2]=k;b=f[l>>2]|0}}f[k>>2]=b;f[d>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;sOb(l);a=1;return a|0}function DOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=f[b>>2]|0;e=X(h,1540483477)|0;e=(X(e>>>24^e,1540483477)|0)^1866966612;e=X(e>>>13^e,1540483477)|0;e=e>>>15^e;g=f[a+4>>2]|0;if(!g){j=0;return j|0}d=g+-1|0;c=(d&g|0)==0;if(c)i=e&d;else if(e>>>0>>0)i=e;else i=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!b){j=0;return j|0}b=f[b>>2]|0;if(!b){j=0;return j|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(i|0))){b=0;a=19;break}if(a)if((f[b+8>>2]|0)==(h|0)){a=19;break}b=f[b>>2]|0;if(!b){b=0;a=19;break}}if((a|0)==19)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(h|0)){b=j;a=19;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(i|0)){b=0;a=19;break}}j=f[j>>2]|0;if(!j){b=0;a=19;break}}if((a|0)==19)return b|0;return 0}function EOa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0;i=u;u=u+16|0;g=i;d=c+200|0;e=f[d>>2]|0;if((e&-268435456|0)==0&0==0)d=h[d+4>>0]|0;else{_Ia(c,0)|0;d=h[d+4>>0]|0}a:do switch(d&3|0){case 2:{d=FOa(c)|0;if(d|0)if(!(f[d+40>>2]|0)){e=(f[d+36>>2]|0)==0;if((f[d+24>>2]|0)==(f[d+28>>2]|0))if(e){b[a+148>>0]=1;d=11}else d=12;else if(e)d=11;else d=12;if((d|0)==11){b[a+149>>0]=1;break a}else if((d|0)==12){b[a+150>>0]=1;break a}}break}case 0:{GOa(a+152|0,f[c+124>>2]|0);break}default:{}}while(0);aJa(c,0);bJa(c,0);dJa(c);rDa(a+464|0,c);f[g>>2]=c;sDa(a+432|0,g)|0;HOa(a+224|0,c+116|0)|0;u=i;return}function FOa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;c=f[a+124>>2]|0;if(!c){k=0;return k|0}k=c+24|0;e=f[k>>2]|0;j=c+28|0;d=f[j>>2]|0;a:do if((e|0)==(d|0)){h=e;g=5}else do{if((f[e>>2]|0)==(a|0)){h=e;g=5;break a}e=e+4|0}while((e|0)!=(d|0));while(0);if((g|0)==5)if((h|0)!=(d|0)){e=h+4|0;if((e|0)==(d|0))e=h;else{i=e;e=h;while(1){g=f[i>>2]|0;if((g|0)==(a|0))g=h;else{f[h>>2]=g;g=h+4|0;e=g}i=i+4|0;if((i|0)==(d|0))break;else h=g}d=f[j>>2]|0}if((d|0)!=(e|0)){d=d+(~((d+-4-e|0)>>>2)<<2)|0;f[j>>2]=d}}b:do if((f[k>>2]|0)==(d|0))while(1){if(f[c+36>>2]|0)break b;e=f[c+40>>2]|0;if(!e)break b;c=e+36|0;d=f[c>>2]|0;if((f[d+24>>2]|0)==(f[d+28>>2]|0))if(!(f[d+36>>2]|0))if((f[d+76>>2]|0)==(f[d+80>>2]|0))if(!(f[d+88>>2]|0)){f[c>>2]=0;jDa(d);sOb(d)}if((f[e+24>>2]|0)==(f[e+28>>2]|0))c=e;else{c=e;break}}while(0);b[c+49>>0]=0;k=c;return k|0}function GOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=a+4|0;d=f[g>>2]|0;e=f[a>>2]|0;c=d-e>>2;if(c>>>0<=b>>>0)return;if((b+1|0)>>>0>>0){f[(f[d+-4>>2]|0)+124>>2]=b;c=(f[g>>2]|0)+-4|0;e=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;f[c>>2]=f[e>>2];f[e>>2]=b;e=f[a>>2]|0;b=f[g>>2]|0;c=e}else{b=d;c=e}b=b+-4|0;f[g>>2]=b;if((c|0)!=(b|0))return;d=a+8|0;c=b-e|0;b=c>>2;if((f[d>>2]|0)-e>>2>>>0<=b>>>0)return;do if(!b){h=0;i=0}else if(b>>>0>1073741823)vd();else{i=pOb(c)|0;h=i;break}while(0);b=h+(b<<2)|0;if((c|0)>0)bQb(i|0,e|0,c|0)|0;f[a>>2]=h;f[g>>2]=b;f[d>>2]=b;if(!e)return;sOb(e);return}function HOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=IOa(a,b)|0;if(!l){a=0;return a|0}i=f[a+4>>2]|0;b=f[l+4>>2]|0;j=i+-1|0;g=(j&i|0)==0;if(g)h=j&b;else if(b>>>0>>0)h=b;else h=(b>>>0)%(i>>>0)|0;c=(f[a>>2]|0)+(h<<2)|0;k=f[c>>2]|0;while(1){b=f[k>>2]|0;if((b|0)==(l|0))break;else k=b}if((k|0)==(a+8|0))e=15;else{b=f[k+4>>2]|0;if(g)b=b&j;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(h|0))d=l;else e=15}do if((e|0)==15){b=f[l>>2]|0;if(b|0){b=f[b+4>>2]|0;if(g)b=b&j;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(h|0)){d=l;break}}f[c>>2]=0;d=l}while(0);c=f[d>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(g)c=c&j;else if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(h|0)){f[(f[a>>2]|0)+(c<<2)>>2]=k;b=f[l>>2]|0}}f[k>>2]=b;f[d>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;sOb(l);a=1;return a|0}function IOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(c|0)==(e|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((b|0)==(e|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function JOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+32|0;n=v+8|0;o=v+16|0;m=v;h=f[b>>2]|0;p=a+16|0;e=f[p>>2]|0;if(!e){a=0;u=v;return a|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&h;else if(h>>>0>>0)g=h;else g=(h>>>0)%(e>>>0)|0;s=a+12|0;b=f[(f[s>>2]|0)+(g<<2)>>2]|0;if(!b){a=0;u=v;return a|0}b=f[b>>2]|0;if(!b){a=0;u=v;return a|0}a:do if(c){while(1){l=f[b+4>>2]|0;c=(l|0)==(h|0);if(!(c|(l&d|0)==(g|0))){b=0;q=154;break}if(c)if((f[b+8>>2]|0)==(h|0)){t=b;break a}b=f[b>>2]|0;if(!b){b=0;q=154;break}}if((q|0)==154){u=v;return b|0}}else{while(1){c=f[b+4>>2]|0;if((c|0)==(h|0)){if((f[b+8>>2]|0)==(h|0)){t=b;break a}}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){b=0;q=154;break}}b=f[b>>2]|0;if(!b){b=0;q=154;break}}if((q|0)==154){u=v;return b|0}}while(0);if((h|0)==0?1:(f[t+20>>2]|0)!=(f[t+24>>2]|0)){a=0;u=v;return a|0}l=t+52|0;k=t+60|0;b=f[k>>2]|0;if(b|0){i=n+4|0;j=m+4|0;do{e=b;d=e+12|0;g=f[d>>2]|0;e=e+16|0;h=f[e>>2]|0;if(!h){f[d>>2]=0;f[e>>2]=0}else{hOb(h);c=f[e>>2]|0;f[d>>2]=0;f[e>>2]=0;if(c|0)iOb(c);f[n>>2]=0;d=kOb(h)|0;f[i>>2]=d;if(d|0){f[n>>2]=g;if(g|0){KOa(m,a,n);c=f[j>>2]|0;if(c|0)iOb(c)}iOb(d)}jOb(h)}b=f[b>>2]|0}while((b|0)!=0)}e=t+64|0;if(f[e>>2]|0){b=f[k>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[k>>2]=0;c=f[t+56>>2]|0;if(c|0){b=0;do{f[(f[l>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[e>>2]=0}h=t+72|0;e=t+80|0;b=f[e>>2]|0;if(b|0)do{m=(f[b+12>>2]|0)+112|0;f[m>>2]=0;f[m+4>>2]=-1;b=f[b>>2]|0}while((b|0)!=0);g=t+84|0;if(f[g>>2]|0){b=f[e>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[e>>2]=0;c=f[t+76>>2]|0;if(c|0){b=0;do{f[(f[h>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[g>>2]=0}h=t+92|0;f[n>>2]=0;f[n+4>>2]=-1;e=t+100|0;b=f[e>>2]|0;if(b|0)do{EFa(f[b+12>>2]|0,n,o);b=f[b>>2]|0}while((b|0)!=0);g=t+104|0;if(f[g>>2]|0){b=f[e>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[e>>2]=0;c=f[t+96>>2]|0;if(c|0){b=0;do{f[(f[h>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[g>>2]=0}h=t+112|0;e=t+120|0;b=f[e>>2]|0;if(b|0)do{m=(f[b+12>>2]|0)+204|0;f[m>>2]=0;f[m+4>>2]=-1;b=f[b>>2]|0}while((b|0)!=0);g=t+124|0;if(f[g>>2]|0){b=f[e>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[e>>2]=0;c=f[t+116>>2]|0;if(c|0){b=0;do{f[(f[h>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[g>>2]=0}h=t+192|0;f[n>>2]=0;f[n+4>>2]=-1;g=t+200|0;b=f[g>>2]|0;if(b|0)do{n8a(f[b+12>>2]|0,n,o);b=f[b>>2]|0}while((b|0)!=0);e=t+204|0;if(f[e>>2]|0){b=f[g>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[g>>2]=0;c=f[t+196>>2]|0;if(c|0){b=0;do{f[(f[h>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[e>>2]=0}h=t+212|0;e=t+220|0;b=f[e>>2]|0;if(b|0)do{o=(f[b+12>>2]|0)+24|0;f[o>>2]=0;f[o+4>>2]=-1;b=f[b>>2]|0}while((b|0)!=0);g=t+224|0;if(f[g>>2]|0){b=f[e>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[e>>2]=0;c=f[t+216>>2]|0;if(c|0){b=0;do{f[(f[h>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[g>>2]=0}h=t+232|0;e=t+240|0;b=f[e>>2]|0;if(b|0)do{o=(f[b+12>>2]|0)+36|0;f[o>>2]=0;f[o+4>>2]=-1;b=f[b>>2]|0}while((b|0)!=0);g=t+244|0;if(f[g>>2]|0){b=f[e>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[e>>2]=0;c=f[t+236>>2]|0;if(c|0){b=0;do{f[(f[h>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[g>>2]=0}g=t+252|0;h=t+264|0;if(f[h>>2]|0){e=t+260|0;b=f[e>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[e>>2]=0;c=f[t+256>>2]|0;if(c|0){b=0;do{f[(f[g>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[h>>2]=0}g=t+272|0;h=t+284|0;if(f[h>>2]|0){e=t+280|0;b=f[e>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[e>>2]=0;c=f[t+276>>2]|0;if(c|0){b=0;do{f[(f[g>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[h>>2]=0}d=f[p>>2]|0;b=f[t+4>>2]|0;e=d+-1|0;g=(e&d|0)==0;do if(g)h=e&b;else{if(b>>>0>>0){h=b;break}h=(b>>>0)%(d>>>0)|0}while(0);c=(f[s>>2]|0)+(h<<2)|0;i=f[c>>2]|0;while(1){b=f[i>>2]|0;if((b|0)==(t|0))break;else i=b}do if((i|0)==(a+20|0))q=128;else{b=f[i+4>>2]|0;do if(g)b=b&e;else{if(b>>>0>>0)break;b=(b>>>0)%(d>>>0)|0}while(0);if((b|0)!=(h|0)){q=128;break}r=t}while(0);do if((q|0)==128){b=f[t>>2]|0;if(b|0){b=f[b+4>>2]|0;do if(g)b=b&e;else{if(b>>>0>>0)break;b=(b>>>0)%(d>>>0)|0}while(0);if((b|0)==(h|0)){r=t;break}}f[c>>2]=0;r=t}while(0);c=f[r>>2]|0;b=c;do if(c){c=f[c+4>>2]|0;do if(g)c=c&e;else{if(c>>>0>>0)break;c=(c>>>0)%(d>>>0)|0}while(0);if((c|0)==(h|0))break;f[(f[s>>2]|0)+(c<<2)>>2]=i;b=f[t>>2]|0}while(0);f[i>>2]=b;f[r>>2]=0;a=a+24|0;f[a>>2]=(f[a>>2]|0)+-1;KNa(t+12|0);sOb(t);a=1;u=v;return a|0}function KOa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;e=k+12|0;g=k+8|0;h=k;j=(f[(f[c>>2]|0)+44>>2]|0)+68|0;i=(zLa(j)|0)<<2;j=i+152+((ALa(j)|0)<<1)|0;i=b+292|0;d=f[i>>2]|0;do if((f[b+288>>2]|0)==(d|0)){i=b+260|0;d=f[i>>2]|0;f[h>>2]=0;f[h+4>>2]=d;f[g>>2]=0;f[e>>2]=f[g>>2];e=mOa((TMa(b,e)|0)+40|0,h+4|0)|0;if(f[e>>2]|0)break;g=f[h+4>>2]|0;d=(f[c>>2]|0)+28|0;f[d>>2]=f[h>>2];f[d+4>>2]=g;d=f[c>>2]|0;g=c+4|0;h=f[g>>2]|0;if(h|0)gOb(h);f[e>>2]=d;e=e+4|0;d=f[e>>2]|0;f[e>>2]=h;if(d|0)iOb(d);f[i>>2]=(f[i>>2]|0)+1;d=b+456|0;f[d>>2]=(f[d>>2]|0)+j;f[a>>2]=f[c>>2];d=f[g>>2]|0;f[a+4>>2]=d;if(d|0)gOb(d);u=k;return}else{d=f[d+-4>>2]|0;f[h>>2]=0;f[h+4>>2]=d;f[g>>2]=0;f[e>>2]=f[g>>2];e=mOa((TMa(b,e)|0)+40|0,h+4|0)|0;if(f[e>>2]|0)break;g=f[h+4>>2]|0;d=(f[c>>2]|0)+28|0;f[d>>2]=f[h>>2];f[d+4>>2]=g;d=f[c>>2]|0;g=c+4|0;h=f[g>>2]|0;if(h|0)gOb(h);f[e>>2]=d;e=e+4|0;d=f[e>>2]|0;f[e>>2]=h;if(d|0)iOb(d);f[i>>2]=(f[i>>2]|0)+-4;d=b+456|0;f[d>>2]=(f[d>>2]|0)+j;f[a>>2]=f[c>>2];d=f[g>>2]|0;f[a+4>>2]=d;if(d|0)gOb(d);u=k;return}while(0);f[a>>2]=0;f[a+4>>2]=0;u=k;return}function LOa(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+64|0;r=v+48|0;t=v+20|0;m=v+44|0;o=v+40|0;s=v;k=a+236|0;if(f[k>>2]|0){i=a+232|0;h=f[i>>2]|0;if(h|0)do{p=h;h=f[h>>2]|0;sOb(p)}while((h|0)!=0);f[i>>2]=0;i=f[a+228>>2]|0;if(i|0){j=a+224|0;h=0;do{f[(f[j>>2]|0)+(h<<2)>>2]=0;h=h+1|0}while((h|0)!=(i|0))}f[k>>2]=0}f[t>>2]=0;l=t+4|0;f[l>>2]=0;f[t+8>>2]=0;n=a+32|0;h=f[a+40>>2]|0;if(h|0){k=t+8|0;do{i=f[h+8>>2]|0;f[r>>2]=i;do if(i|0){j=f[l>>2]|0;if((j|0)==(f[k>>2]|0)){GE(t,r);break}else{f[j>>2]=i;f[l>>2]=j+4;break}}while(0);h=f[h>>2]|0}while((h|0)!=0);i=f[t>>2]|0;h=f[l>>2]|0;if((i|0)!=(h|0)){do{f[m>>2]=f[i>>2];f[r>>2]=f[m>>2];zOa(a,b,r)|0;i=i+4|0}while((i|0)!=(h|0));h=f[t>>2]|0}if(h|0){i=f[l>>2]|0;if((i|0)!=(h|0))f[l>>2]=i+(~((i+-4-h|0)>>>2)<<2);sOb(h)}}f[t>>2]=0;l=t+4|0;f[l>>2]=0;f[t+8>>2]=0;h=f[a+20>>2]|0;if(h|0){k=t+8|0;do{i=f[h+8>>2]|0;f[r>>2]=i;do if(i|0){j=f[l>>2]|0;if((j|0)==(f[k>>2]|0)){iI(t,r);break}else{f[j>>2]=i;f[l>>2]=j+4;break}}while(0);h=f[h>>2]|0}while((h|0)!=0);i=f[t>>2]|0;h=f[l>>2]|0;if((i|0)!=(h|0)){do{f[o>>2]=f[i>>2];f[r>>2]=f[o>>2];JOa(a,r)|0;i=i+4|0}while((i|0)!=(h|0));h=f[t>>2]|0}if(h|0){i=f[l>>2]|0;if((i|0)!=(h|0))f[l>>2]=i+(~((i+-4-h|0)>>>2)<<2);sOb(h)}}f[r>>2]=0;p=r+4|0;f[p>>2]=0;f[r+8>>2]=0;MOa(t,d,d+(c<<2)|0);h=PMa(n,258684)|0;h=f[(f[h>>2]|0)+56>>2]|0;if(h|0){n=t+4|0;o=r+8|0;do{b=f[h+8>>2]|0;f[s>>2]=b;l=f[n>>2]|0;a:do if(!l)q=60;else{k=l+-1|0;j=(k&l|0)==0;if(j)m=k&b;else if(b>>>0>>0)m=b;else m=(b>>>0)%(l>>>0)|0;i=f[(f[t>>2]|0)+(m<<2)>>2]|0;if(!i)q=60;else{i=f[i>>2]|0;if(!i)q=60;else{if(j)while(1){d=f[i+4>>2]|0;j=(b|0)==(d|0);if(!(j|(d&k|0)==(m|0))){q=60;break a}if(j)if((f[i+8>>2]|0)==(b|0))break a;i=f[i>>2]|0;if(!i){q=60;break a}}while(1){j=f[i+4>>2]|0;if((b|0)==(j|0)){if((f[i+8>>2]|0)==(b|0))break a}else{if(j>>>0>=l>>>0)j=(j>>>0)%(l>>>0)|0;if((j|0)!=(m|0)){q=60;break a}}i=f[i>>2]|0;if(!i){q=60;break}}}}}while(0);do if((q|0)==60){q=0;i=f[p>>2]|0;if((i|0)==(f[o>>2]|0)){$G(r,s);break}else{f[i>>2]=b;f[p>>2]=i+4;break}}while(0);h=f[h>>2]|0}while((h|0)!=0)}h=f[r>>2]|0;i=f[p>>2]|0;if((h|0)!=(i|0)){j=s+4|0;do{d=f[h>>2]|0;f[s>>2]=0;f[j>>2]=d;OOa(a,s)|0;h=h+4|0}while((h|0)!=(i|0))}h=f[t+8>>2]|0;if(h|0)do{d=h;h=f[h>>2]|0;sOb(d)}while((h|0)!=0);h=f[t>>2]|0;f[t>>2]=0;if(h|0)sOb(h);h=f[r>>2]|0;if(h|0){i=f[p>>2]|0;if((i|0)!=(h|0))f[p>>2]=i+(~((i+-4-h|0)>>>2)<<2);sOb(h)}f[t>>2]=0;p=t+4|0;f[p>>2]=0;f[t+8>>2]=0;NOa(s,g,g+(e<<2)|0);f[r>>2]=f[64672];h=(TMa(a,r)|0)+48|0;h=f[h>>2]|0;if(h|0){n=s+4|0;o=t+8|0;do{i=h;g=f[(f[i+12>>2]|0)+44>>2]|0;if((f[g+116>>2]|0)==(f[g+112>>2]|0)){b=f[i+8>>2]|0;f[r>>2]=b;l=f[n>>2]|0;b:do if(!l)q=96;else{k=l+-1|0;j=(k&l|0)==0;if(j)m=k&b;else if(b>>>0>>0)m=b;else m=(b>>>0)%(l>>>0)|0;i=f[(f[s>>2]|0)+(m<<2)>>2]|0;if(!i)q=96;else{i=f[i>>2]|0;if(!i)q=96;else{if(j)while(1){g=f[i+4>>2]|0;j=(b|0)==(g|0);if(!(j|(g&k|0)==(m|0))){q=96;break b}if(j)if((f[i+8>>2]|0)==(b|0))break b;i=f[i>>2]|0;if(!i){q=96;break b}}while(1){j=f[i+4>>2]|0;if((b|0)==(j|0)){if((f[i+8>>2]|0)==(b|0))break b}else{if(j>>>0>=l>>>0)j=(j>>>0)%(l>>>0)|0;if((j|0)!=(m|0)){q=96;break b}}i=f[i>>2]|0;if(!i){q=96;break}}}}}while(0);do if((q|0)==96){q=0;i=f[p>>2]|0;if((i|0)==(f[o>>2]|0)){POa(t,r);break}else{f[i>>2]=b;f[p>>2]=i+4;break}}while(0)}h=f[h>>2]|0}while((h|0)!=0)}h=f[t>>2]|0;i=f[p>>2]|0;if((h|0)!=(i|0)){j=r+4|0;do{q=f[h>>2]|0;f[r>>2]=0;f[j>>2]=q;QOa(a,r)|0;h=h+4|0}while((h|0)!=(i|0))}h=f[s+8>>2]|0;if(h|0)do{r=h;h=f[h>>2]|0;sOb(r)}while((h|0)!=0);h=f[s>>2]|0;f[s>>2]=0;if(h|0)sOb(h);h=f[t>>2]|0;if(!h){t=a+244|0;f[t>>2]=-1;a=a+4|0;a=f[a>>2]|0;a=a+240|0;a=f[a>>2]|0;W8a(a);u=v;return}i=f[p>>2]|0;if((i|0)!=(h|0))f[p>>2]=i+(~((i+-4-h|0)>>>2)<<2);sOb(h);t=a+244|0;f[t>>2]=-1;a=a+4|0;a=f[a>>2]|0;a=a+240|0;a=f[a>>2]|0;W8a(a);u=v;return}function MOa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;q=a+16|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;n[q>>2]=1.0;if((b|0)==(c|0))return;r=a+4|0;s=a+12|0;t=a+8|0;e=0;m=0;while(1){o=f[b>>2]|0;l=(m|0)==0;a:do if(l){d=0;p=19}else{k=m+-1|0;h=(k&m|0)==0;if(h)d=o&k;else if(o>>>0>>0)d=o;else d=(o>>>0)%(m>>>0)|0;g=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!g)p=19;else{if(h)while(1){g=f[g>>2]|0;if(!g){p=19;break a}h=f[g+4>>2]|0;if(!((h|0)==(o|0)|(h&k|0)==(d|0))){p=19;break a}if((f[g+8>>2]|0)==(o|0)){d=m;break a}}while(1){g=f[g>>2]|0;if(!g){p=19;break a}h=f[g+4>>2]|0;if((h|0)!=(o|0)){if(h>>>0>=m>>>0)h=(h>>>0)%(m>>>0)|0;if((h|0)!=(d|0)){p=19;break a}}if((f[g+8>>2]|0)==(o|0)){d=m;break}}}}while(0);if((p|0)==19){p=0;h=pOb(12)|0;f[h+8>>2]=o;f[h+4>>2]=o;f[h>>2]=0;i=+((e+1|0)>>>0);j=+n[q>>2];do if(l|j*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;e=~~+W(+(i/j))>>>0;WOa(a,d>>>0>>0?e:d);d=f[r>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&o;break}if(o>>>0>>0){g=d;d=o}else{g=d;d=(o>>>0)%(d>>>0)|0}}else g=m;while(0);e=(f[a>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){f[h>>2]=f[t>>2];f[t>>2]=h;f[e>>2]=t;d=f[h>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;d=(f[a>>2]|0)+(d<<2)|0;p=32}}else{f[h>>2]=f[d>>2];p=32}if((p|0)==32){p=0;f[d>>2]=h}e=(f[s>>2]|0)+1|0;f[s>>2]=e;d=g}b=b+4|0;if((b|0)==(c|0))break;else m=d}return}function NOa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;q=a+16|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;n[q>>2]=1.0;if((b|0)==(c|0))return;r=a+4|0;s=a+12|0;t=a+8|0;e=0;m=0;while(1){o=f[b>>2]|0;l=(m|0)==0;a:do if(l){d=0;p=19}else{k=m+-1|0;h=(k&m|0)==0;if(h)d=o&k;else if(o>>>0>>0)d=o;else d=(o>>>0)%(m>>>0)|0;g=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!g)p=19;else{if(h)while(1){g=f[g>>2]|0;if(!g){p=19;break a}h=f[g+4>>2]|0;if(!((h|0)==(o|0)|(h&k|0)==(d|0))){p=19;break a}if((f[g+8>>2]|0)==(o|0)){d=m;break a}}while(1){g=f[g>>2]|0;if(!g){p=19;break a}h=f[g+4>>2]|0;if((h|0)!=(o|0)){if(h>>>0>=m>>>0)h=(h>>>0)%(m>>>0)|0;if((h|0)!=(d|0)){p=19;break a}}if((f[g+8>>2]|0)==(o|0)){d=m;break}}}}while(0);if((p|0)==19){p=0;h=pOb(12)|0;f[h+8>>2]=o;f[h+4>>2]=o;f[h>>2]=0;i=+((e+1|0)>>>0);j=+n[q>>2];do if(l|j*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;e=~~+W(+(i/j))>>>0;UOa(a,d>>>0>>0?e:d);d=f[r>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&o;break}if(o>>>0>>0){g=d;d=o}else{g=d;d=(o>>>0)%(d>>>0)|0}}else g=m;while(0);e=(f[a>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){f[h>>2]=f[t>>2];f[t>>2]=h;f[e>>2]=t;d=f[h>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;d=(f[a>>2]|0)+(d<<2)|0;p=32}}else{f[h>>2]=f[d>>2];p=32}if((p|0)==32){p=0;f[d>>2]=h}e=(f[s>>2]|0)+1|0;f[s>>2]=e;d=g}b=b+4|0;if((b|0)==(c|0))break;else m=d}return}function OOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;k=m+8|0;l=m;h=m+4|0;c=SOa(a,b)|0;if(c|0){l=c;u=m;return l|0}V8a(f[(f[a+4>>2]|0)+240>>2]|0);g=PMa(a+32|0,b)|0;g=f[g>>2]|0;i=g+48|0;j=b+4|0;e=f[j>>2]|0;c=f[g+52>>2]|0;d=c+-1|0;if(!(d&c)){c=f[(f[i>>2]|0)+((d&e)<<2)>>2]|0;while(1){c=f[c>>2]|0;if((f[c+4>>2]|0)!=(e|0))continue;if((f[c+8>>2]|0)==(e|0)){e=c;break}}}else{if(e>>>0>>0)c=e;else c=(e>>>0)%(c>>>0)|0;c=f[(f[i>>2]|0)+(c<<2)>>2]|0;while(1){c=f[c>>2]|0;if((f[c+4>>2]|0)!=(e|0))continue;if((f[c+8>>2]|0)==(e|0)){e=c;break}}}EOa(a,f[e+12>>2]|0);if(!(f[b>>2]|0)){f[h>>2]=f[g+8>>2];f[k>>2]=f[h>>2];TOa((TMa(a,k)|0)+20|0,j)|0}c=a+304|0;d=f[c>>2]|0;if((d|0)==(f[a+308>>2]|0))$G(a+300|0,j);else{f[d>>2]=f[j>>2];f[c>>2]=d+4}f[l>>2]=e;f[k>>2]=f[l>>2];_Ma(i,k)|0;l=0;u=m;return l|0}function POa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)AMb(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)vd();else{i=pOb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)bQb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;sOb(j);return}function QOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;c=o+4|0;d=o;e=ROa(a,b)|0;if(e|0){n=e;u=o;return n|0}f[d>>2]=f[b>>2];f[c>>2]=f[d>>2];n=TMa(a,c)|0;m=n+40|0;j=b+4|0;h=f[j>>2]|0;i=n+44|0;b=f[i>>2]|0;a:do if(!b)k=0;else{e=b+-1|0;d=(e&b|0)==0;if(d)g=e&h;else if(h>>>0>>0)g=h;else g=(h>>>0)%(b>>>0)|0;c=f[(f[m>>2]|0)+(g<<2)>>2]|0;if(!c)k=0;else{c=f[c>>2]|0;if(!c)k=0;else{if(d)while(1){k=f[c+4>>2]|0;d=(k|0)==(h|0);if(!(d|(k&e|0)==(g|0))){k=0;break a}if(d)if((f[c+8>>2]|0)==(h|0)){k=c;break a}c=f[c>>2]|0;if(!c){k=0;break a}}while(1){d=f[c+4>>2]|0;if((d|0)==(h|0)){if((f[c+8>>2]|0)==(h|0)){k=c;break a}}else{if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0;if((d|0)!=(g|0)){k=0;break a}}c=f[c>>2]|0;if(!c){k=0;break}}}}}while(0);d=(f[(f[k+12>>2]|0)+44>>2]|0)+68|0;h=zLa(d)|0;d=ALa(d)|0;c=a+456|0;d=(X(h,-4)|0)+-152+(X(d,-2)|0)+(f[c>>2]|0)|0;f[c>>2]=d;c=a+292|0;d=f[c>>2]|0;if((d|0)==(f[a+296>>2]|0))POa(a+288|0,j);else{f[d>>2]=f[j>>2];f[c>>2]=d+4}b=f[i>>2]|0;c=f[k+4>>2]|0;g=b+-1|0;h=(g&b|0)==0;if(h)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(b>>>0)|0;d=(f[m>>2]|0)+(i<<2)|0;j=f[d>>2]|0;while(1){c=f[j>>2]|0;if((c|0)==(k|0))break;else j=c}if((j|0)==(n+48|0))l=36;else{c=f[j+4>>2]|0;if(h)c=c&g;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;if((c|0)==(i|0))e=k;else l=36}do if((l|0)==36){c=f[k>>2]|0;if(c|0){c=f[c+4>>2]|0;if(h)c=c&g;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;if((c|0)==(i|0)){e=k;break}}f[d>>2]=0;e=k}while(0);d=f[e>>2]|0;c=d;if(d){d=f[d+4>>2]|0;if(h)d=d&g;else if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0;if((d|0)!=(i|0)){f[(f[m>>2]|0)+(d<<2)>>2]=j;c=f[k>>2]|0}}f[j>>2]=c;f[e>>2]=0;n=n+52|0;f[n>>2]=(f[n>>2]|0)+-1;if(!k){n=0;u=o;return n|0}c=f[k+16>>2]|0;if(c|0)iOb(c);sOb(k);n=0;u=o;return n|0}function ROa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=f[b>>2]|0;e=f[a+16>>2]|0;if(!e){j=1;return j|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&j;else if(j>>>0>>0)g=j;else g=(j>>>0)%(e>>>0)|0;a=f[(f[a+12>>2]|0)+(g<<2)>>2]|0;if(!a){j=1;return j|0}a=f[a>>2]|0;if(!a){j=1;return j|0}a:do if(c){while(1){e=f[a+4>>2]|0;c=(j|0)==(e|0);if(!(c|(e&d|0)==(g|0))){a=1;c=39;break}if(c)if((f[a+8>>2]|0)==(j|0)){h=a;break a}a=f[a>>2]|0;if(!a){a=1;c=39;break}}if((c|0)==39)return a|0}else{while(1){c=f[a+4>>2]|0;if((j|0)==(c|0)){if((f[a+8>>2]|0)==(j|0)){h=a;break a}}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){a=1;c=39;break}}a=f[a>>2]|0;if(!a){a=1;c=39;break}}if((c|0)==39)return a|0}while(0);a=h+52|0;b=f[b+4>>2]|0;e=f[h+56>>2]|0;if(!e){j=1;return j|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&b;else if(b>>>0>>0)g=b;else g=(b>>>0)%(e>>>0)|0;a=f[(f[a>>2]|0)+(g<<2)>>2]|0;if(!a){j=1;return j|0}a=f[a>>2]|0;if(!a){j=1;return j|0}b:do if(c){while(1){h=f[a+4>>2]|0;c=(b|0)==(h|0);if(!(c|(h&d|0)==(g|0))){a=1;c=39;break}if(c)if((f[a+8>>2]|0)==(b|0)){i=a;break b}a=f[a>>2]|0;if(!a){a=1;c=39;break}}if((c|0)==39)return a|0}else{while(1){c=f[a+4>>2]|0;if((b|0)==(c|0)){if((f[a+8>>2]|0)==(b|0)){i=a;break b}}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){a=1;c=39;break}}a=f[a>>2]|0;if(!a){a=1;c=39;break}}if((c|0)==39)return a|0}while(0);if(j|0){j=3;return j|0}j=f[(f[i+12>>2]|0)+44>>2]|0;j=(f[j+116>>2]|0)!=(f[j+112>>2]|0)?2:0;return j|0}function SOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=f[b>>2]|0;e=f[a+36>>2]|0;if(!e){b=1;return b|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&h;else if(h>>>0>>0)g=h;else g=(h>>>0)%(e>>>0)|0;a=f[(f[a+32>>2]|0)+(g<<2)>>2]|0;if(!a){b=1;return b|0}a=f[a>>2]|0;if(!a){b=1;return b|0}a:do if(c){while(1){e=f[a+4>>2]|0;c=(h|0)==(e|0);if(!(c|(e&d|0)==(g|0))){a=1;c=38;break}if(c)if((f[a+8>>2]|0)==(h|0)){i=a;break a}a=f[a>>2]|0;if(!a){a=1;c=38;break}}if((c|0)==38)return a|0}else{while(1){c=f[a+4>>2]|0;if((h|0)==(c|0)){if((f[a+8>>2]|0)==(h|0)){i=a;break a}}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){a=1;c=38;break}}a=f[a>>2]|0;if(!a){a=1;c=38;break}}if((c|0)==38)return a|0}while(0);i=f[i+12>>2]|0;g=f[b+4>>2]|0;e=f[i+52>>2]|0;if(!e){b=1;return b|0}d=e+-1|0;c=(d&e|0)==0;if(c)h=d&g;else if(g>>>0>>0)h=g;else h=(g>>>0)%(e>>>0)|0;a=f[(f[i+48>>2]|0)+(h<<2)>>2]|0;if(!a){b=1;return b|0}a=f[a>>2]|0;if(!a){b=1;return b|0}b:do if(c){while(1){b=f[a+4>>2]|0;c=(b|0)==(g|0);if(!(c|(b&d|0)==(h|0))){a=1;c=38;break}if(c)if((f[a+8>>2]|0)==(g|0))break b;a=f[a>>2]|0;if(!a){a=1;c=38;break}}if((c|0)==38)return a|0}else{while(1){c=f[a+4>>2]|0;if((c|0)==(g|0)){if((f[a+8>>2]|0)==(g|0))break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(h|0)){a=1;c=38;break}}a=f[a>>2]|0;if(!a){a=1;c=38;break}}if((c|0)==38)return a|0}while(0);b=(f[i+8>>2]|0)==0?0:3;return b|0}function TOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=f[b>>2]|0;j=f[a+4>>2]|0;if(!j){m=0;return m|0}k=j+-1|0;l=(k&j|0)==0;if(l)d=k&e;else if(e>>>0>>0)d=e;else d=(e>>>0)%(j>>>0)|0;g=f[a>>2]|0;b=f[g+(d<<2)>>2]|0;if(!b){m=0;return m|0}b=f[b>>2]|0;if(!b){m=0;return m|0}a:do if(l){while(1){n=f[b+4>>2]|0;c=(n|0)==(e|0);if(!(c|(n&k|0)==(d|0))){b=0;h=50;break}if(c)if((f[b+8>>2]|0)==(e|0)){m=b;break a}b=f[b>>2]|0;if(!b){b=0;h=50;break}}if((h|0)==50)return b|0}else{while(1){c=f[b+4>>2]|0;if((c|0)==(e|0)){if((f[b+8>>2]|0)==(e|0)){m=b;break a}}else{if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(d|0)){b=0;h=50;break}}b=f[b>>2]|0;if(!b){b=0;h=50;break}}if((h|0)==50)return b|0}while(0);if(l)e=k&e;else if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;c=g+(e<<2)|0;d=f[c>>2]|0;while(1){b=f[d>>2]|0;if((b|0)==(m|0))break;else d=b}if((d|0)==(a+8|0))h=32;else{b=f[d+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0))i=m;else h=32}do if((h|0)==32){b=f[m>>2]|0;if(b|0){b=f[b+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0)){i=m;break}}f[c>>2]=0;i=m}while(0);c=f[i>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(l)c=c&k;else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(e|0)){f[(f[a>>2]|0)+(c<<2)>>2]=d;b=f[m>>2]|0}}f[d>>2]=b;f[i>>2]=0;n=a+12|0;f[n>>2]=(f[n>>2]|0)+-1;if(!m){n=1;return n|0}b=f[m+20>>2]|0;if(b|0)iOb(b);sOb(m);n=1;return n|0}function UOa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){VOa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;VOa(a,b);return}function VOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function WOa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){XOa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;XOa(a,b);return}function XOa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function YOa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;bPa(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function ZOa(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=37776;b=f[a+12>>2]|0;if(!b){aOb(a);return}c=a+16|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);sOb(b);aOb(a);return}function _Oa(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=37776;b=f[a+12>>2]|0;if(!b){aOb(a);sOb(a);return}c=a+16|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);sOb(b);aOb(a);sOb(a);return}function $Oa(a){a=a|0;var b=0,c=0;c=f[a+12>>2]|0;if(!c)return;a=a+16|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);sOb(c);return}function aPa(a){a=a|0;sOb(a);return}function bPa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){cPa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;cPa(a,b);return}function cPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function dPa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;k=n+4|0;l=n;f[l>>2]=f[d>>2];f[k>>2]=f[l>>2];l=ePa((TMa(c,k)|0)+260|0,d+4|0)|0;if(f[l>>2]|0){f[a>>2]=0;f[a+4>>2]=0;u=n;return}j=pOb(20)|0;h=e+g|0;f[k>>2]=0;m=k+4|0;f[m>>2]=0;f[k+8>>2]=0;if(!g){g=k+8|0;h=0;e=0;c=0}else{if((g|0)<0)AMb(k);o=pOb(g)|0;f[m>>2]=o;f[k>>2]=o;i=k+8|0;f[i>>2]=o+g;c=e;e=o;do{b[e>>0]=b[c>>0]|0;c=c+1|0;e=(f[m>>2]|0)+1|0;f[m>>2]=e}while((c|0)!=(h|0));g=i;h=f[k>>2]|0;c=f[i>>2]|0}i=d;d=f[i+4>>2]|0;o=j;f[o>>2]=f[i>>2];f[o+4>>2]=d;f[j+8>>2]=h;f[j+12>>2]=e;f[j+16>>2]=c;f[g>>2]=0;f[m>>2]=0;f[k>>2]=0;e=j;o=pOb(16)|0;f[o+4>>2]=0;f[o+8>>2]=0;f[o>>2]=37804;f[o+12>>2]=e;f[l>>2]=e;e=l+4|0;c=f[e>>2]|0;f[e>>2]=o;if(c|0)iOb(c);c=f[k>>2]|0;if(c|0){if((f[m>>2]|0)!=(c|0))f[m>>2]=c;sOb(c)}f[a>>2]=f[l>>2];c=f[e>>2]|0;f[a+4>>2]=c;if(!c){u=n;return}gOb(c);u=n;return}function ePa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;m=f[b>>2]|0;i=a+4|0;j=f[i>>2]|0;k=(j|0)==0;a:do if(k)b=0;else{g=j+-1|0;c=(g&j|0)==0;if(c)h=g&m;else if(m>>>0>>0)h=m;else h=(m>>>0)%(j>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}while(0);h=pOb(20)|0;f[h+8>>2]=m;f[h+12>>2]=0;f[h+16>>2]=0;f[h+4>>2]=m;f[h>>2]=0;l=a+12|0;d=+(((f[l>>2]|0)+1|0)>>>0);e=+n[a+16>>2];do if(k|e*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(d/e))>>>0;jPa(a,b>>>0>>0?c:b);b=f[i>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=j;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[c>>2]=b;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[h>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=h;f[l>>2]=(f[l>>2]|0)+1;a=h;a=a+12|0;return a|0}function fPa(a){a=a|0;aOb(a);sOb(a);return}function gPa(a){a=a|0;var b=0,c=0;a=f[a+12>>2]|0;if(!a)return;b=f[a+8>>2]|0;if(b|0){c=a+12|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;sOb(b)}sOb(a);return}function hPa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==189793?a+12|0:0)|0}function iPa(a){a=a|0;sOb(a);return}function jPa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){kPa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;kPa(a,b);return}function kPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function lPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+12|0;e=k+8|0;i=k;j=b+280|0;d=f[j>>2]|0;do if((f[b+276>>2]|0)==(d|0)){j=b+248|0;g=f[j>>2]|0;f[i>>2]=0;f[i+4>>2]=g;f[e>>2]=0;f[h>>2]=f[e>>2];g=VNa((TMa(b,h)|0)+80|0,i+4|0)|0;if(f[g>>2]|0)break;EFa(f[c>>2]|0,i,h);d=f[c>>2]|0;b=c+4|0;e=f[b>>2]|0;if(e|0)gOb(e);f[g>>2]=d;i=g+4|0;d=f[i>>2]|0;f[i>>2]=e;if(d|0)iOb(d);f[j>>2]=(f[j>>2]|0)+1;f[a>>2]=f[c>>2];d=f[b>>2]|0;f[a+4>>2]=d;if(d|0)gOb(d);u=k;return}else{g=f[d+-4>>2]|0;f[i>>2]=0;f[i+4>>2]=g;f[e>>2]=0;f[h>>2]=f[e>>2];g=VNa((TMa(b,h)|0)+80|0,i+4|0)|0;if(f[g>>2]|0)break;EFa(f[c>>2]|0,i,h);d=f[c>>2]|0;b=c+4|0;e=f[b>>2]|0;if(e|0)gOb(e);f[g>>2]=d;i=g+4|0;d=f[i>>2]|0;f[i>>2]=e;if(d|0)iOb(d);f[j>>2]=(f[j>>2]|0)+-4;f[a>>2]=f[c>>2];d=f[b>>2]|0;f[a+4>>2]=d;if(d|0)gOb(d);u=k;return}while(0);f[a>>2]=0;f[a+4>>2]=0;u=k;return}function mPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+160|0;g=k+144|0;h=k+80|0;i=k+8|0;j=k;f[g>>2]=-1;e=b+316|0;d=f[e>>2]|0;if((f[b+312>>2]|0)==(d|0)){d=b+252|0;e=f[d>>2]|0;f[h>>2]=0;f[h+4>>2]=e;if($Na(b,c,h)|0){e=f[d>>2]|0;f[d>>2]=e+1;f[g>>2]=e}}else{d=f[d+-4>>2]|0;f[h>>2]=0;f[h+4>>2]=d;if($Na(b,c,h)|0){d=f[e>>2]|0;f[g>>2]=f[d+-4>>2];f[e>>2]=d+-4}}if((f[g>>2]|0)==-1){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=k;return}d=PMa(b+32|0,258684)|0;d=f[d>>2]|0;b=f[c>>2]|0;f[i>>2]=f[d+12>>2];f[i+4>>2]=b;b=i+8|0;gma(b,i)|0;f[h>>2]=f[b>>2];f[h+4>>2]=f[i+12>>2];f[h+8>>2]=f[i+16>>2];f[h+12>>2]=f[i+20>>2];f[h+16>>2]=f[i+24>>2];f[h+20>>2]=f[i+28>>2];f[h+24>>2]=f[i+32>>2];f[h+28>>2]=f[i+36>>2];f[h+32>>2]=f[i+40>>2];f[h+36>>2]=f[i+44>>2];f[h+40>>2]=f[i+48>>2];f[h+44>>2]=f[i+52>>2];f[h+48>>2]=f[i+56>>2];f[h+52>>2]=f[i+60>>2];f[h+56>>2]=f[i+64>>2];f[h+60>>2]=f[i+68>>2];IIa(j,h);b=f[g>>2]|0;e=(f[j>>2]|0)+112|0;f[e>>2]=0;f[e+4>>2]=b;d=$Ma(d+88|0,g)|0;e=f[j>>2]|0;g=j+4|0;b=f[g>>2]|0;if(b|0)gOb(b);f[d>>2]=e;i=d+4|0;d=f[i>>2]|0;f[i>>2]=b;if(d|0)iOb(d);f[a>>2]=f[c>>2];d=f[c+4>>2]|0;f[a+4>>2]=d;if(d|0)gOb(d);f[a+8>>2]=f[j>>2];d=f[g>>2]|0;f[a+12>>2]=d;if(d|0){gOb(d);d=f[g>>2]|0;if(d|0)iOb(d)}u=k;return}function nPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;e=j+12|0;g=j+8|0;h=j;i=b+328|0;d=f[i>>2]|0;do if((f[b+324>>2]|0)==(d|0)){i=b+256|0;d=f[i>>2]|0;f[h>>2]=0;f[h+4>>2]=d;f[g>>2]=0;f[e>>2]=f[g>>2];e=aOa((TMa(b,e)|0)+100|0,h+4|0)|0;if(f[e>>2]|0)break;g=h;b=f[g+4>>2]|0;d=(f[c>>2]|0)+204|0;f[d>>2]=f[g>>2];f[d+4>>2]=b;d=f[c>>2]|0;b=c+4|0;g=f[b>>2]|0;if(g|0)gOb(g);f[e>>2]=d;h=e+4|0;d=f[h>>2]|0;f[h>>2]=g;if(d|0)iOb(d);f[i>>2]=(f[i>>2]|0)+1;f[a>>2]=f[c>>2];d=f[b>>2]|0;f[a+4>>2]=d;if(d|0)gOb(d);u=j;return}else{d=f[d+-4>>2]|0;f[h>>2]=0;f[h+4>>2]=d;f[g>>2]=0;f[e>>2]=f[g>>2];e=aOa((TMa(b,e)|0)+100|0,h+4|0)|0;if(f[e>>2]|0)break;g=h;b=f[g+4>>2]|0;d=(f[c>>2]|0)+204|0;f[d>>2]=f[g>>2];f[d+4>>2]=b;d=f[c>>2]|0;b=c+4|0;g=f[b>>2]|0;if(g|0)gOb(g);f[e>>2]=d;h=e+4|0;d=f[h>>2]|0;f[h>>2]=g;if(d|0)iOb(d);f[i>>2]=(f[i>>2]|0)+-4;f[a>>2]=f[c>>2];d=f[b>>2]|0;f[a+4>>2]=d;if(d|0)gOb(d);u=j;return}while(0);f[a>>2]=0;f[a+4>>2]=0;u=j;return}function oPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i+8|0;h=i;d=b+304|0;e=f[d>>2]|0;if((f[b+300>>2]|0)==(e|0)){d=b+264|0;e=f[d>>2]|0;f[g>>2]=0;f[g+4>>2]=e;if(tOa(b,c,g,0)|0){e=f[d>>2]|0;f[d>>2]=e+1;d=e}else d=-1}else{e=f[e+-4>>2]|0;f[g>>2]=0;f[g+4>>2]=e;if(tOa(b,c,g,0)|0){j=(f[d>>2]|0)+-4|0;e=f[j>>2]|0;f[d>>2]=j;d=e}else d=-1}if((d|0)==-1){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=i;return}f[g>>2]=0;f[g+4>>2]=d;pPa(h,b,g);qDa(b+464|0,f[h>>2]|0);f[a>>2]=f[c>>2];d=f[c+4>>2]|0;f[a+4>>2]=d;if(d|0)gOb(d);f[a+8>>2]=f[h>>2];f[a+12>>2]=f[h+4>>2];u=i;return}function pPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+36>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+32>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);b=f[b+12>>2]|0;h=f[c+4>>2]|0;g=f[b+52>>2]|0;c:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)i=e&h;else if(h>>>0>>0)i=h;else i=(h>>>0)%(g>>>0)|0;b=f[(f[b+48>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(d)while(1){c=f[b+4>>2]|0;d=(h|0)==(c|0);if(!(d|(c&e|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(h|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((h|0)==(d|0)){if((f[b+8>>2]|0)==(h|0))break d}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function qPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;g=f[a+16>>2]|0;if(!g){a=1;return a|0}e=g+-1|0;d=(e&g|0)==0;if(d)h=e&k;else if(k>>>0>>0)h=k;else h=(k>>>0)%(g>>>0)|0;c=f[(f[a+12>>2]|0)+(h<<2)>>2]|0;if(!c){a=1;return a|0}c=f[c>>2]|0;if(!c){a=1;return a|0}a:do if(d){while(1){g=f[c+4>>2]|0;d=(k|0)==(g|0);if(!(d|(g&e|0)==(h|0))){c=1;d=41;break}if(d)if((f[c+8>>2]|0)==(k|0)){i=c;break a}c=f[c>>2]|0;if(!c){c=1;d=41;break}}if((d|0)==41)return c|0}else{while(1){d=f[c+4>>2]|0;if((k|0)==(d|0)){if((f[c+8>>2]|0)==(k|0)){i=c;break a}}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0)){c=1;d=41;break}}c=f[c>>2]|0;if(!c){c=1;d=41;break}}if((d|0)==41)return c|0}while(0);c=i+112|0;b=f[b+4>>2]|0;g=f[i+116>>2]|0;if(!g){a=1;return a|0}e=g+-1|0;d=(e&g|0)==0;if(d)h=e&b;else if(b>>>0>>0)h=b;else h=(b>>>0)%(g>>>0)|0;c=f[(f[c>>2]|0)+(h<<2)>>2]|0;if(!c){a=1;return a|0}c=f[c>>2]|0;if(!c){a=1;return a|0}b:do if(d){while(1){i=f[c+4>>2]|0;d=(b|0)==(i|0);if(!(d|(i&e|0)==(h|0))){c=1;d=41;break}if(d)if((f[c+8>>2]|0)==(b|0)){j=c;break b}c=f[c>>2]|0;if(!c){c=1;d=41;break}}if((d|0)==41)return c|0}else{while(1){d=f[c+4>>2]|0;if((b|0)==(d|0)){if((f[c+8>>2]|0)==(b|0)){j=c;break b}}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0)){c=1;d=41;break}}c=f[c>>2]|0;if(!c){c=1;d=41;break}}if((d|0)==41)return c|0}while(0);if(k|0){a=3;return a|0}c=j+12|0;if(!(nDa(a+464|0,c)|0))if(!(c9a(f[(f[a+4>>2]|0)+240>>2]|0,c)|0)){a=0;return a|0}a=2;return a|0}function rPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=f[b>>2]|0;e=f[a+16>>2]|0;if(!e){i=1;return i|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&i;else if(i>>>0>>0)g=i;else g=(i>>>0)%(e>>>0)|0;a=f[(f[a+12>>2]|0)+(g<<2)>>2]|0;if(!a){i=1;return i|0}a=f[a>>2]|0;if(!a){i=1;return i|0}a:do if(c){while(1){e=f[a+4>>2]|0;c=(i|0)==(e|0);if(!(c|(e&d|0)==(g|0))){a=1;c=38;break}if(c)if((f[a+8>>2]|0)==(i|0)){h=a;break a}a=f[a>>2]|0;if(!a){a=1;c=38;break}}if((c|0)==38)return a|0}else{while(1){c=f[a+4>>2]|0;if((i|0)==(c|0)){if((f[a+8>>2]|0)==(i|0)){h=a;break a}}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){a=1;c=38;break}}a=f[a>>2]|0;if(!a){a=1;c=38;break}}if((c|0)==38)return a|0}while(0);a=h+272|0;b=f[b+4>>2]|0;e=f[h+276>>2]|0;if(!e){i=1;return i|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&b;else if(b>>>0>>0)g=b;else g=(b>>>0)%(e>>>0)|0;a=f[(f[a>>2]|0)+(g<<2)>>2]|0;if(!a){i=1;return i|0}a=f[a>>2]|0;if(!a){i=1;return i|0}b:do if(c){while(1){h=f[a+4>>2]|0;c=(b|0)==(h|0);if(!(c|(h&d|0)==(g|0))){a=1;c=38;break}if(c)if((f[a+8>>2]|0)==(b|0))break b;a=f[a>>2]|0;if(!a){a=1;c=38;break}}if((c|0)==38)return a|0}else{while(1){c=f[a+4>>2]|0;if((b|0)==(c|0)){if((f[a+8>>2]|0)==(b|0))break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){a=1;c=38;break}}a=f[a>>2]|0;if(!a){a=1;c=38;break}}if((c|0)==38)return a|0}while(0);i=(i|0)==0?0:3;return i|0}function sPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=f[b>>2]|0;e=f[a+36>>2]|0;if(!e){j=1;return j|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&h;else if(h>>>0>>0)g=h;else g=(h>>>0)%(e>>>0)|0;a=f[(f[a+32>>2]|0)+(g<<2)>>2]|0;if(!a){j=1;return j|0}a=f[a>>2]|0;if(!a){j=1;return j|0}a:do if(c){while(1){e=f[a+4>>2]|0;c=(h|0)==(e|0);if(!(c|(e&d|0)==(g|0))){a=1;c=39;break}if(c)if((f[a+8>>2]|0)==(h|0)){i=a;break a}a=f[a>>2]|0;if(!a){a=1;c=39;break}}if((c|0)==39)return a|0}else{while(1){c=f[a+4>>2]|0;if((h|0)==(c|0)){if((f[a+8>>2]|0)==(h|0)){i=a;break a}}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){a=1;c=39;break}}a=f[a>>2]|0;if(!a){a=1;c=39;break}}if((c|0)==39)return a|0}while(0);i=f[i+12>>2]|0;g=f[b+4>>2]|0;e=f[i+92>>2]|0;if(!e){j=1;return j|0}d=e+-1|0;c=(d&e|0)==0;if(c)h=d&g;else if(g>>>0>>0)h=g;else h=(g>>>0)%(e>>>0)|0;a=f[(f[i+88>>2]|0)+(h<<2)>>2]|0;if(!a){j=1;return j|0}a=f[a>>2]|0;if(!a){j=1;return j|0}b:do if(c){while(1){b=f[a+4>>2]|0;c=(b|0)==(g|0);if(!(c|(b&d|0)==(h|0))){a=1;c=39;break}if(c)if((f[a+8>>2]|0)==(g|0)){j=a;break b}a=f[a>>2]|0;if(!a){a=1;c=39;break}}if((c|0)==39)return a|0}else{while(1){c=f[a+4>>2]|0;if((c|0)==(g|0)){if((f[a+8>>2]|0)==(g|0)){j=a;break b}}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(h|0)){a=1;c=39;break}}a=f[a>>2]|0;if(!a){a=1;c=39;break}}if((c|0)==39)return a|0}while(0);if(f[i+8>>2]|0){j=3;return j|0}j=f[j+12>>2]|0;j=(f[j+64>>2]|0)!=(f[j+68>>2]|0)?2:0;return j|0}function tPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=f[b>>2]|0;e=f[a+16>>2]|0;if(!e){i=1;return i|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&i;else if(i>>>0>>0)g=i;else g=(i>>>0)%(e>>>0)|0;a=f[(f[a+12>>2]|0)+(g<<2)>>2]|0;if(!a){i=1;return i|0}a=f[a>>2]|0;if(!a){i=1;return i|0}a:do if(c){while(1){e=f[a+4>>2]|0;c=(i|0)==(e|0);if(!(c|(e&d|0)==(g|0))){a=1;c=38;break}if(c)if((f[a+8>>2]|0)==(i|0)){h=a;break a}a=f[a>>2]|0;if(!a){a=1;c=38;break}}if((c|0)==38)return a|0}else{while(1){c=f[a+4>>2]|0;if((i|0)==(c|0)){if((f[a+8>>2]|0)==(i|0)){h=a;break a}}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){a=1;c=38;break}}a=f[a>>2]|0;if(!a){a=1;c=38;break}}if((c|0)==38)return a|0}while(0);a=h+92|0;b=f[b+4>>2]|0;e=f[h+96>>2]|0;if(!e){i=1;return i|0}d=e+-1|0;c=(d&e|0)==0;if(c)g=d&b;else if(b>>>0>>0)g=b;else g=(b>>>0)%(e>>>0)|0;a=f[(f[a>>2]|0)+(g<<2)>>2]|0;if(!a){i=1;return i|0}a=f[a>>2]|0;if(!a){i=1;return i|0}b:do if(c){while(1){h=f[a+4>>2]|0;c=(b|0)==(h|0);if(!(c|(h&d|0)==(g|0))){a=1;c=38;break}if(c)if((f[a+8>>2]|0)==(b|0))break b;a=f[a>>2]|0;if(!a){a=1;c=38;break}}if((c|0)==38)return a|0}else{while(1){c=f[a+4>>2]|0;if((b|0)==(c|0)){if((f[a+8>>2]|0)==(b|0))break b}else{if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){a=1;c=38;break}}a=f[a>>2]|0;if(!a){a=1;c=38;break}}if((c|0)==38)return a|0}while(0);i=(i|0)==0?0:3;return i|0}function uPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)AMb(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)vd();else{i=pOb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)bQb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;sOb(j);return}function vPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=f[b>>2]|0;j=f[a+4>>2]|0;if(!j){m=0;return m|0}k=j+-1|0;l=(k&j|0)==0;if(l)d=k&e;else if(e>>>0>>0)d=e;else d=(e>>>0)%(j>>>0)|0;g=f[a>>2]|0;b=f[g+(d<<2)>>2]|0;if(!b){m=0;return m|0}b=f[b>>2]|0;if(!b){m=0;return m|0}a:do if(l){while(1){n=f[b+4>>2]|0;c=(n|0)==(e|0);if(!(c|(n&k|0)==(d|0))){b=0;h=50;break}if(c)if((f[b+8>>2]|0)==(e|0)){m=b;break a}b=f[b>>2]|0;if(!b){b=0;h=50;break}}if((h|0)==50)return b|0}else{while(1){c=f[b+4>>2]|0;if((c|0)==(e|0)){if((f[b+8>>2]|0)==(e|0)){m=b;break a}}else{if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(d|0)){b=0;h=50;break}}b=f[b>>2]|0;if(!b){b=0;h=50;break}}if((h|0)==50)return b|0}while(0);if(l)e=k&e;else if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;c=g+(e<<2)|0;d=f[c>>2]|0;while(1){b=f[d>>2]|0;if((b|0)==(m|0))break;else d=b}if((d|0)==(a+8|0))h=32;else{b=f[d+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0))i=m;else h=32}do if((h|0)==32){b=f[m>>2]|0;if(b|0){b=f[b+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0)){i=m;break}}f[c>>2]=0;i=m}while(0);c=f[i>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(l)c=c&k;else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(e|0)){f[(f[a>>2]|0)+(c<<2)>>2]=d;b=f[m>>2]|0}}f[d>>2]=b;f[i>>2]=0;n=a+12|0;f[n>>2]=(f[n>>2]|0)+-1;if(!m){n=1;return n|0}b=f[m+16>>2]|0;if(b|0)iOb(b);sOb(m);n=1;return n|0}function wPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;g=n+4|0;h=n;c=qPa(a,b)|0;if(c|0){m=c;u=n;return m|0}c=b+4|0;d=a+328|0;e=f[d>>2]|0;if((e|0)==(f[a+332>>2]|0))xPa(a+324|0,c);else{f[e>>2]=f[c>>2];f[d>>2]=e+4}f[h>>2]=f[b>>2];f[g>>2]=f[h>>2];m=TMa(a,g)|0;k=m+100|0;b=f[c>>2]|0;i=m+104|0;g=f[i>>2]|0;a:do if(!g)j=0;else{e=g+-1|0;d=(e&g|0)==0;if(d)h=e&b;else if(b>>>0>>0)h=b;else h=(b>>>0)%(g>>>0)|0;c=f[(f[k>>2]|0)+(h<<2)>>2]|0;if(!c)j=0;else{c=f[c>>2]|0;if(!c)j=0;else{if(d)while(1){j=f[c+4>>2]|0;d=(j|0)==(b|0);if(!(d|(j&e|0)==(h|0))){j=0;break a}if(d)if((f[c+8>>2]|0)==(b|0)){j=c;break a}c=f[c>>2]|0;if(!c){j=0;break a}}while(1){d=f[c+4>>2]|0;if((d|0)==(b|0)){if((f[c+8>>2]|0)==(b|0)){j=c;break a}}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0)){j=0;break a}}c=f[c>>2]|0;if(!c){j=0;break}}}}}while(0);d9a(f[(f[a+4>>2]|0)+240>>2]|0,f[j+12>>2]|0);g=f[i>>2]|0;c=f[j+4>>2]|0;b=g+-1|0;h=(b&g|0)==0;if(h)i=b&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(g>>>0)|0;d=(f[k>>2]|0)+(i<<2)|0;a=f[d>>2]|0;while(1){c=f[a>>2]|0;if((c|0)==(j|0))break;else a=c}if((a|0)==(m+108|0))l=36;else{c=f[a+4>>2]|0;if(h)c=c&b;else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;if((c|0)==(i|0))e=j;else l=36}do if((l|0)==36){c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;if(h)c=c&b;else if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0;if((c|0)==(i|0)){e=j;break}}f[d>>2]=0;e=j}while(0);d=f[e>>2]|0;c=d;if(d){d=f[d+4>>2]|0;if(h)d=d&b;else if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(i|0)){f[(f[k>>2]|0)+(d<<2)>>2]=a;c=f[j>>2]|0}}f[a>>2]=c;f[e>>2]=0;m=m+112|0;f[m>>2]=(f[m>>2]|0)+-1;if(!j){m=0;u=n;return m|0}c=f[j+16>>2]|0;if(c|0)iOb(c);sOb(j);m=0;u=n;return m|0}function xPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)AMb(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)vd();else{i=pOb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)bQb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;sOb(j);return}function yPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)AMb(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)vd();else{i=pOb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)bQb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;sOb(j);return}function zPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=f[b>>2]|0;j=f[a+4>>2]|0;if(!j){m=0;return m|0}k=j+-1|0;l=(k&j|0)==0;if(l)d=k&e;else if(e>>>0>>0)d=e;else d=(e>>>0)%(j>>>0)|0;g=f[a>>2]|0;b=f[g+(d<<2)>>2]|0;if(!b){m=0;return m|0}b=f[b>>2]|0;if(!b){m=0;return m|0}a:do if(l){while(1){n=f[b+4>>2]|0;c=(n|0)==(e|0);if(!(c|(n&k|0)==(d|0))){b=0;h=50;break}if(c)if((f[b+8>>2]|0)==(e|0)){m=b;break a}b=f[b>>2]|0;if(!b){b=0;h=50;break}}if((h|0)==50)return b|0}else{while(1){c=f[b+4>>2]|0;if((c|0)==(e|0)){if((f[b+8>>2]|0)==(e|0)){m=b;break a}}else{if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(d|0)){b=0;h=50;break}}b=f[b>>2]|0;if(!b){b=0;h=50;break}}if((h|0)==50)return b|0}while(0);if(l)e=k&e;else if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;c=g+(e<<2)|0;d=f[c>>2]|0;while(1){b=f[d>>2]|0;if((b|0)==(m|0))break;else d=b}if((d|0)==(a+8|0))h=32;else{b=f[d+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0))i=m;else h=32}do if((h|0)==32){b=f[m>>2]|0;if(b|0){b=f[b+4>>2]|0;if(l)b=b&k;else if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0;if((b|0)==(e|0)){i=m;break}}f[c>>2]=0;i=m}while(0);c=f[i>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(l)c=c&k;else if(c>>>0>=j>>>0)c=(c>>>0)%(j>>>0)|0;if((c|0)!=(e|0)){f[(f[a>>2]|0)+(c<<2)>>2]=d;b=f[m>>2]|0}}f[d>>2]=b;f[i>>2]=0;n=a+12|0;f[n>>2]=(f[n>>2]|0)+-1;if(!m){n=1;return n|0}b=f[m+16>>2]|0;if(b|0)iOb(b);sOb(m);n=1;return n|0}function APa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+16>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+12>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+52|0;c=f[c+4>>2]|0;h=f[b+56>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function BPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+16>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+12>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+92|0;c=f[c+4>>2]|0;h=f[b+96>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function CPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+16>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+12>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+72|0;c=f[c+4>>2]|0;h=f[b+76>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function DPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+16>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+12>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+112|0;c=f[c+4>>2]|0;h=f[b+116>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function EPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+16>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+12>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+132|0;c=f[c+4>>2]|0;h=f[b+136>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function FPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+16>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+12>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+152|0;c=f[c+4>>2]|0;h=f[b+156>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function GPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+16>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+12>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+172|0;c=f[c+4>>2]|0;h=f[b+176>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function HPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+16>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+12>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+272|0;c=f[c+4>>2]|0;h=f[b+276>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function IPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+352>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;c=f[(f[b+348>>2]|0)+(h<<2)>>2]|0;if(c|0){c=f[c>>2]|0;if(c|0){b:do if(d)while(1){g=f[c+4>>2]|0;b=(g|0)==(i|0);if(!(b|(g&e|0)==(h|0)))break a;if(b)if((f[c+8>>2]|0)==(i|0))break b;c=f[c>>2]|0;if(!c)break a}else while(1){b=f[c+4>>2]|0;if((b|0)==(i|0)){if((f[c+8>>2]|0)==(i|0))break b}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0))break a}c=f[c>>2]|0;if(!c)break a}while(0);f[a>>2]=f[c+12>>2];c=f[c+16>>2]|0;f[a+4>>2]=c;if(!c)return;gOb(c);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function JPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+36>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+32>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);b=f[b+12>>2]|0;h=f[c+4>>2]|0;g=f[b+92>>2]|0;c:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)i=e&h;else if(h>>>0>>0)i=h;else i=(h>>>0)%(g>>>0)|0;b=f[(f[b+88>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(d)while(1){c=f[b+4>>2]|0;d=(h|0)==(c|0);if(!(d|(c&e|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(h|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((h|0)==(d|0)){if((f[b+8>>2]|0)==(h|0))break d}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function KPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+16>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+12>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+32|0;c=f[c+4>>2]|0;h=f[b+36>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+16>>2];d=f[b+20>>2]|0;f[a+4>>2]=d;if(d|0)gOb(d);i=b+24|0;c=f[i+4>>2]|0;a=a+8|0;f[a>>2]=f[i>>2];f[a+4>>2]=c;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function LPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+36>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+32>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);b=f[b+12>>2]|0;h=f[c+4>>2]|0;g=f[b+72>>2]|0;c:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)i=e&h;else if(h>>>0>>0)i=h;else i=(h>>>0)%(g>>>0)|0;b=f[(f[b+68>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(d)while(1){c=f[b+4>>2]|0;d=(h|0)==(c|0);if(!(d|(c&e|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(h|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((h|0)==(d|0)){if((f[b+8>>2]|0)==(h|0))break d}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function MPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;m=n;g=f[c>>2]|0;d=f[b+36>>2]|0;e=d+-1|0;if(!(e&d)){d=f[(f[b+32>>2]|0)+((e&g)<<2)>>2]|0;while(1){d=f[d>>2]|0;if((f[d+4>>2]|0)!=(g|0))continue;if((f[d+8>>2]|0)==(g|0))break}}else{if(g>>>0>>0)d=g;else d=(g>>>0)%(d>>>0)|0;d=f[(f[b+32>>2]|0)+(d<<2)>>2]|0;while(1){d=f[d>>2]|0;if((f[d+4>>2]|0)!=(g|0))continue;if((f[d+8>>2]|0)==(g|0))break}}i=f[d+12>>2]|0;j=c+4|0;k=f[j>>2]|0;h=f[i+52>>2]|0;a:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)l=g&k;else if(k>>>0>>0)l=k;else l=(k>>>0)%(h>>>0)|0;d=f[(f[i+48>>2]|0)+(l<<2)>>2]|0;if(d|0){d=f[d>>2]|0;if(d|0){b:do if(e)while(1){h=f[d+4>>2]|0;e=(h|0)==(k|0);if(!(e|(h&g|0)==(l|0)))break a;if(e)if((f[d+8>>2]|0)==(k|0))break b;d=f[d>>2]|0;if(!d)break a}else while(1){e=f[d+4>>2]|0;if((e|0)==(k|0)){if((f[d+8>>2]|0)==(k|0))break b}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(l|0))break a}d=f[d>>2]|0;if(!d)break a}while(0);f[a>>2]=f[d+12>>2];d=f[d+16>>2]|0;f[a+4>>2]=d;if(!d){u=n;return}gOb(d);u=n;return}}}while(0);h=bNa(i+68|0,j)|0;d=f[h>>2]|0;if(!d){UIa(m,f[b>>2]|0);e=f[m>>2]|0;g=m+4|0;b=f[g>>2]|0;f[m>>2]=0;f[g>>2]=0;f[h>>2]=e;e=h+4|0;d=f[e>>2]|0;f[e>>2]=b;if(d|0)iOb(d);d=f[g>>2]|0;if(d|0)iOb(d);d=f[h>>2]|0;b=c;m=f[b+4>>2]|0;c=d+116|0;f[c>>2]=f[b>>2];f[c+4>>2]=m;d=d+196|0;f[d>>2]=f[d>>2]&-131073;d=f[h>>2]|0}else e=h+4|0;f[a>>2]=d;d=f[e>>2]|0;f[a+4>>2]=d;if(!d){u=n;return}gOb(d);u=n;return}function NPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+16>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+12>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+252|0;c=f[c+4>>2]|0;h=f[b+256>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function OPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+16>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+12>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+192|0;c=f[c+4>>2]|0;h=f[b+196>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function PPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+16>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+12>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+212|0;c=f[c+4>>2]|0;h=f[b+216>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function QPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+36>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+32>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);b=f[b+12>>2]|0;h=f[c+4>>2]|0;g=f[b+112>>2]|0;c:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)i=e&h;else if(h>>>0>>0)i=h;else i=(h>>>0)%(g>>>0)|0;b=f[(f[b+108>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(d)while(1){c=f[b+4>>2]|0;d=(h|0)==(c|0);if(!(d|(c&e|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(h|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((h|0)==(d|0)){if((f[b+8>>2]|0)==(h|0))break d}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function RPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[c>>2]|0;g=f[b+16>>2]|0;a:do if(g|0){e=g+-1|0;d=(e&g|0)==0;if(d)h=e&i;else if(i>>>0>>0)h=i;else h=(i>>>0)%(g>>>0)|0;b=f[(f[b+12>>2]|0)+(h<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){b:do if(d)while(1){g=f[b+4>>2]|0;d=(i|0)==(g|0);if(!(d|(g&e|0)==(h|0)))break a;if(d)if((f[b+8>>2]|0)==(i|0))break b;b=f[b>>2]|0;if(!b)break a}else while(1){d=f[b+4>>2]|0;if((i|0)==(d|0)){if((f[b+8>>2]|0)==(i|0))break b}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(h|0))break a}b=f[b>>2]|0;if(!b)break a}while(0);d=b+232|0;c=f[c+4>>2]|0;h=f[b+236>>2]|0;c:do if(h|0){g=h+-1|0;e=(g&h|0)==0;if(e)i=g&c;else if(c>>>0>>0)i=c;else i=(c>>>0)%(h>>>0)|0;b=f[(f[d>>2]|0)+(i<<2)>>2]|0;if(b|0){b=f[b>>2]|0;if(b|0){d:do if(e)while(1){h=f[b+4>>2]|0;d=(c|0)==(h|0);if(!(d|(h&g|0)==(i|0)))break c;if(d)if((f[b+8>>2]|0)==(c|0))break d;b=f[b>>2]|0;if(!b)break c}else while(1){d=f[b+4>>2]|0;if((c|0)==(d|0)){if((f[b+8>>2]|0)==(c|0))break d}else{if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(i|0))break c}b=f[b>>2]|0;if(!b)break c}while(0);f[a>>2]=f[b+12>>2];b=f[b+16>>2]|0;f[a+4>>2]=b;if(!b)return;gOb(b);return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}}}while(0);f[a>>2]=0;f[a+4>>2]=0;return}function SPa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;d=h+4|0;g=h;f[g>>2]=f[b>>2];f[d>>2]=f[g>>2];d=TMa(a,d)|0;g=d+4|0;if(f[g>>2]|0){g=0;u=h;return g|0}i=f[c>>2]|0;f[c>>2]=0;e=d+4|0;b=f[e>>2]|0;f[e>>2]=i;if(b|0){TFa(b);sOb(b)}b=f[d+8>>2]|0;d=f[d+12>>2]|0;if((b|0)==(d|0)){i=1;u=h;return i|0}e=a+64|0;c=a+464|0;do{i=f[b>>2]|0;SFa(i,f[g>>2]|0);XMa(e,i);uDa(c,i);b=b+8|0}while((b|0)!=(d|0));b=1;u=h;return b|0}function TPa(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+48|0;j=t+36|0;k=t+24|0;s=t;JJa(c,j,k);f[s>>2]=f[j>>2];m=s+4|0;f[m>>2]=f[j+4>>2];o=s+8|0;f[o>>2]=f[j+8>>2];l=s+12|0;f[l>>2]=f[k>>2];p=s+16|0;f[p>>2]=f[k+4>>2];q=s+20|0;f[q>>2]=f[k+8>>2];k=a+4|0;d=f[k>>2]|0;i=f[a>>2]|0;a:do if((i|0)==(d|0))r=5;else{h=0;while(1){d=d+-4|0;g=f[d>>2]|0;if(UPa(g,s)|0)break;h=h+1|0;if(!((i|0)!=(d|0)&h>>>0<32)){r=5;break a}}if(!g)r=5}while(0);if((r|0)==5){i=pOb(52)|0;d=i+49|0;g=i;h=g+52|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));b[d>>0]=1;f[j>>2]=i;d=f[k>>2]|0;if(d>>>0<(f[a+8>>2]|0)>>>0){f[d>>2]=i;d=d+4|0;f[k>>2]=d}else{VPa(a,j);d=f[k>>2]|0}g=f[d+-4>>2]|0;f[g+40>>2]=0;f[g>>2]=f[s>>2];f[g+4>>2]=f[m>>2];f[g+8>>2]=f[o>>2];f[g+12>>2]=f[l>>2];f[g+16>>2]=f[p>>2];f[g+20>>2]=f[q>>2]}e=+n[s>>2];if(e<+n[g>>2]){d=g;r=11}else{d=g+12|0;if(e>+n[d>>2])r=11}if((r|0)==11)n[d>>2]=e;e=+n[m>>2];i=g+4|0;if(e<+n[i>>2]){d=g;r=14}else if(e>+n[g+16>>2]){d=g+12|0;r=14}if((r|0)==14)n[d+4>>2]=e;e=+n[o>>2];h=g+8|0;if(e<+n[h>>2]){d=g;r=17}else if(e>+n[g+20>>2]){d=g+12|0;r=17}if((r|0)==17)n[d+8>>2]=e;e=+n[s+12>>2];if(e<+n[g>>2]){d=g;r=20}else{d=g+12|0;if(e>+n[d>>2])r=20}if((r|0)==20)n[d>>2]=e;e=+n[p>>2];if(e<+n[i>>2]){d=g;r=23}else if(e>+n[g+16>>2]){d=g+12|0;r=23}if((r|0)==23)n[d+4>>2]=e;e=+n[q>>2];if(e<+n[h>>2])d=g;else if(e>+n[g+20>>2])d=g+12|0;else{r=a+12|0;f[r>>2]=1065353216;r=a+16|0;f[r>>2]=1065353216;r=a+20|0;f[r>>2]=1065353216;r=a+24|0;f[r>>2]=0;r=a+28|0;f[r>>2]=0;a=a+32|0;f[a>>2]=0;WPa(g,s,c);u=t;return}n[d+8>>2]=e;r=a+12|0;f[r>>2]=1065353216;r=a+16|0;f[r>>2]=1065353216;r=a+20|0;f[r>>2]=1065353216;r=a+24|0;f[r>>2]=0;r=a+28|0;f[r>>2]=0;a=a+32|0;f[a>>2]=0;WPa(g,s,c);u=t;return}function UPa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,g=0.0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,t=0,v=0,w=0;q=u;u=u+32|0;p=q;r=f[a>>2]|0;f[p>>2]=r;w=f[a+4>>2]|0;k=p+4|0;f[k>>2]=w;t=f[a+8>>2]|0;o=p+8|0;f[o>>2]=t;c=p+12|0;e=f[a+12>>2]|0;f[c>>2]=e;v=f[a+16>>2]|0;j=p+16|0;f[j>>2]=v;m=p+20|0;f[m>>2]=f[a+20>>2];g=+n[b>>2];r=g<(f[s>>2]=r,+n[s>>2]);h=(f[s>>2]=w,+n[s>>2]);i=(f[s>>2]=v,+n[s>>2]);d=(f[s>>2]=t,+n[s>>2]);if(r){e=p;l=3}else if(g>(f[s>>2]=e,+n[s>>2])){e=c;l=3}if((l|0)==3)n[e>>2]=g;g=+n[b+4>>2];if(gi){e=c;l=6}if((l|0)==6){n[e+4>>2]=g;d=+n[o>>2]}g=+n[b+8>>2];if(g+n[m>>2]){e=c;l=9}if((l|0)==9)n[e+8>>2]=g;d=+n[b+12>>2];if(d<+n[p>>2]){e=p;l=12}else if(d>+n[c>>2]){e=c;l=12}if((l|0)==12)n[e>>2]=d;d=+n[b+16>>2];if(d<+n[k>>2]){e=p;l=15}else if(d>+n[j>>2]){e=c;l=15}if((l|0)==15)n[e+4>>2]=d;d=+n[b+20>>2];if(d<+n[o>>2])c=p;else if(!(d>+n[m>>2])){w=aQa(p,a)|0;u=q;return w|0}n[c+8>>2]=d;w=aQa(p,a)|0;u=q;return w|0}function VPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;p=r;q=a+4|0;l=f[q>>2]|0;m=f[a>>2]|0;e=l-m>>2;c=e+1|0;n=m;d=l;if(c>>>0>1073741823)AMb(a);o=a+8|0;i=f[o>>2]|0;k=i-m|0;g=k>>1;g=k>>2>>>0<536870911?(g>>>0>>0?c:g):1073741823;f[p+12>>2]=0;f[p+16>>2]=a+8;do if(!g)h=0;else if(g>>>0>1073741823)vd();else{h=pOb(g<<2)|0;break}while(0);f[p>>2]=h;c=h+(e<<2)|0;j=p+8|0;k=p+4|0;f[k>>2]=c;g=h+(g<<2)|0;h=p+12|0;f[h>>2]=g;f[c>>2]=f[b>>2];e=c+4|0;f[j>>2]=e;if((d|0)==(n|0)){d=c;b=h;n=m;h=l;l=g;m=i;i=d;f[a>>2]=i;f[k>>2]=n;f[q>>2]=e;f[j>>2]=h;f[o>>2]=l;f[b>>2]=m;f[p>>2]=n;$Pa(p);u=r;return}do{d=d+-4|0;m=f[d>>2]|0;f[d>>2]=0;f[c+-4>>2]=m;c=(f[k>>2]|0)+-4|0;f[k>>2]=c}while((d|0)!=(n|0));e=c;m=h;i=j;n=f[a>>2]|0;g=f[j>>2]|0;b=f[q>>2]|0;j=f[h>>2]|0;l=f[o>>2]|0;h=e;f[a>>2]=h;f[k>>2]=n;f[q>>2]=g;f[i>>2]=b;f[o>>2]=j;f[m>>2]=l;f[p>>2]=n;$Pa(p);u=r;return}function WPa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0.0,o=0.0,p=0.0,q=0.0,r=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0,J=0;F=u;u=u+48|0;i=F;j=a+36|0;if(!(f[j>>2]|0)){e=a+24|0;g=a+28|0;h=f[g>>2]|0;if(h-(f[e>>2]|0)>>2>>>0>127){e=pOb(104)|0;g=e+49|0;h=e;i=h+104|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(i|0));b[g>>0]=1;i=e+76|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;b[e+101>>0]=1;f[j>>2]=e;f[e+40>>2]=a;f[e+92>>2]=a;XPa(a);WPa(a,c,d);u=F;return}f[i>>2]=d;if((f[a+32>>2]|0)>>>0>h>>>0){f[h>>2]=d;f[g>>2]=(f[g>>2]|0)+4}else YPa(e,i);f[d+124>>2]=a;u=F;return}xib(i,a,b[a+48>>0]|0,+n[a+44>>2]);e=f[j>>2]|0;f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];f[e+12>>2]=f[i+12>>2];f[e+16>>2]=f[i+16>>2];f[e+20>>2]=f[i+20>>2];J=f[i+24>>2]|0;f[e+52>>2]=J;I=f[i+28>>2]|0;f[e+56>>2]=I;H=f[i+32>>2]|0;f[e+60>>2]=H;G=f[i+36>>2]|0;f[e+64>>2]=G;h=f[i+40>>2]|0;f[e+68>>2]=h;j=f[i+44>>2]|0;f[e+72>>2]=j;r=+n[c>>2];t=+n[c+4>>2];v=+n[c+8>>2];w=+n[c+12>>2];x=+n[c+16>>2];y=+n[c+20>>2];l=+n[e>>2];z=(f[s>>2]=J,+n[s>>2]);A=(f[s>>2]=I,+n[s>>2]);B=(f[s>>2]=H,+n[s>>2]);C=(f[s>>2]=G,+n[s>>2]);D=(f[s>>2]=h,+n[s>>2]);E=(f[s>>2]=j,+n[s>>2]);if(!(r>=l))g=15;else{m=+n[e+4>>2];if(!(t>=m))g=15;else{o=+n[e+8>>2];if(!(v>=o))g=15;else{p=+n[e+12>>2];if(!(r<=p))g=15;else{q=+n[e+16>>2];if(!(t<=q))g=15;else{k=+n[e+20>>2];if(!(v<=k)|!(w>=l)|!(x>=m))g=15;else if(!(y<=k&((!(x<=q)|(!(w<=p)|!(y>=o)))^1)))g=15}}}}}do if((g|0)==15){e=e+52|0;if(!(!(r>=z)|!(t>=A)|!(v>=B)|!(r<=C)|!(t<=D)))if(!(!(v<=E)|!(w>=z)|!(x>=A)))if(y<=E&((!(x<=D)|(!(w<=C)|!(y>=B)))^1))break;f[i>>2]=d;g=a+28|0;e=f[g>>2]|0;if(e>>>0<(f[a+32>>2]|0)>>>0){f[e>>2]=d;f[g>>2]=(f[g>>2]|0)+4}else YPa(a+24|0,i);f[d+124>>2]=a;u=F;return}while(0);WPa(e,c,d);u=F;return}function XPa(a){a=a|0;var c=0,d=0,e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;e=u;u=u+64|0;c=e+48|0;p=e;ZPa(c,a);wib(p,a,0,.5);o=_Pa(p,c)|0;wib(p,a,0,.3330000042915344);q=_Pa(p,c)|0;d=(q|0)<(o|0);o=d?q:o;wib(p,a,0,.6660000085830688);q=_Pa(p,c)|0;h=(q|0)<(o|0);o=h?q:o;wib(p,a,1,.5);q=_Pa(p,c)|0;i=(q|0)<(o|0);o=i?q:o;wib(p,a,1,.3330000042915344);q=_Pa(p,c)|0;j=(q|0)<(o|0);o=j?q:o;wib(p,a,1,.6660000085830688);q=_Pa(p,c)|0;k=(q|0)<(o|0);o=k?q:o;wib(p,a,2,.5);q=_Pa(p,c)|0;l=(q|0)<(o|0);o=l?q:o;wib(p,a,2,.3330000042915344);q=_Pa(p,c)|0;m=(q|0)<(o|0);wib(p,a,2,.6660000085830688);o=(_Pa(p,c)|0)<((m?q:o)|0);q=o|(m|l)?2:(k|(j|i))&1;r=q&255;f[p>>2]=f[a+(r<<2)>>2];f[p+4>>2]=f[a+12+(r<<2)>>2];b[a+48>>0]=q;g=+Qib(p,o?.6660000085830688:m?.3330000042915344:l?.5:k?.6660000085830688:j?.3330000042915344:i?.5:h?.6660000085830688:d?.3330000042915344:.5);n[a+44>>2]=g;a=f[c+12>>2]|0;if(a|0)qNa(a,c);d=f[c>>2]|0;if(!d){u=e;return}a=c+4|0;c=f[a>>2]|0;if((c|0)!=(d|0))f[a>>2]=c+(~(((c+-24-d|0)>>>0)/24|0)*24|0);sOb(d);u=e;return}function YPa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)AMb(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)vd();else{i=pOb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)bQb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;sOb(j);return}function ZPa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+48|0;s=w+36|0;t=w+24|0;v=w;if(!(b[257144]|0))MPb(257144)|0;sNa(a,262921);n=c+24|0;l=c+28|0;m=f[l>>2]|0;i=f[n>>2]|0;d=m-i>>2;r=a+8|0;h=f[a>>2]|0;e=h;if((((f[r>>2]|0)-h|0)/24|0)>>>0>>0){j=a+4|0;if(d>>>0>178956970)vd();q=f[j>>2]|0;g=pOb(d*24|0)|0;c=g+(((q-h|0)/24|0)*24|0)|0;k=c;g=g+(d*24|0)|0;d=q;if((d|0)==(e|0))c=k;else do{q=c;c=c+-24|0;p=d;d=d+-24|0;f[c>>2]=f[d>>2];f[q+-20>>2]=f[p+-20>>2];f[q+-16>>2]=f[p+-16>>2];f[q+-12>>2]=f[p+-12>>2];f[q+-8>>2]=f[p+-8>>2];f[q+-4>>2]=f[p+-4>>2]}while((d|0)!=(e|0));f[a>>2]=c;f[j>>2]=k;f[r>>2]=g;if(!h){c=i;g=m}else{sOb(h);c=f[n>>2]|0;g=f[l>>2]|0}}else{c=i;g=m}if((c|0)==(g|0)){u=w;return}h=s+4|0;i=v+4|0;j=s+8|0;k=v+8|0;l=v+12|0;m=t+4|0;n=v+16|0;o=t+8|0;p=v+20|0;q=a+4|0;do{JJa(f[c>>2]|0,s,t);d=f[s>>2]|0;f[v>>2]=d;f[i>>2]=f[h>>2];f[k>>2]=f[j>>2];f[l>>2]=f[t>>2];f[n>>2]=f[m>>2];f[p>>2]=f[o>>2];e=f[q>>2]|0;if(e>>>0<(f[r>>2]|0)>>>0){f[e>>2]=f[v>>2];f[e+4>>2]=f[v+4>>2];f[e+8>>2]=f[v+8>>2];f[e>>2]=d;f[e+4>>2]=f[i>>2];f[e+8>>2]=f[k>>2];d=e+12|0;f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];f[d+8>>2]=f[l+8>>2];f[d>>2]=f[l>>2];f[e+16>>2]=f[n>>2];f[e+20>>2]=f[p>>2];f[q>>2]=(f[q>>2]|0)+24}else cD(a,v);c=c+4|0}while((c|0)!=(g|0));u=w;return}function _Pa(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0,B=0,C=0.0;B=u;u=u+16|0;A=B;c=A;f[c>>2]=0;f[c+4>>2]=0;c=f[b>>2]|0;z=f[b+4>>2]|0;if((c|0)==(z|0)){z=0;k=0;z=k-z|0;k=(z|0)>-1;A=0-z|0;A=k?z:A;u=B;return A|0}m=+n[a>>2];o=+n[a+24>>2];p=+n[a+28>>2];q=+n[a+32>>2];r=+n[a+36>>2];s=+n[a+40>>2];t=+n[a+44>>2];v=+n[a+4>>2];w=+n[a+8>>2];x=+n[a+12>>2];y=+n[a+16>>2];l=+n[a+20>>2];do{g=+n[c>>2];b=c+4|0;a=c+8|0;h=c+12|0;j=c+16|0;k=c+20|0;if(!(g>=m))i=12;else{d=+n[b>>2];if(!(d>=v))i=12;else{e=+n[a>>2];if(!(e>=w)|!(g<=x)|!(d<=y)|!(e<=l))i=12;else{d=+n[h>>2];if(!(d>=m))i=12;else{e=+n[j>>2];if(!(e>=v))i=12;else{C=+n[k>>2];if(C<=l&((!(e<=y)|(!(d<=x)|!(C>=w)))^1)){b=0;i=11}else i=12}}}}}if((i|0)==12){i=0;if(g>=o){d=+n[b>>2];if(d>=p){C=+n[a>>2];if(!(!(C>=q)|!(g<=r)|!(d<=s)|!(C<=t))){e=+n[h>>2];if(e>=o){d=+n[j>>2];if(d>=p){C=+n[k>>2];if(C<=t&((!(d<=s)|(!(e<=r)|!(C>=q)))^1)){b=1;i=11}}}}}}}if((i|0)==11){k=A+(b<<2)|0;f[k>>2]=(f[k>>2]|0)+1}c=c+24|0}while((c|0)!=(z|0));z=f[A+4>>2]|0;k=f[A>>2]|0;z=k-z|0;k=(z|0)>-1;A=0-z|0;A=k?z:A;u=B;return A|0}function $Pa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=f[a+4>>2]|0;h=a+8|0;b=f[h>>2]|0;if((b|0)!=(g|0))do{d=b+-4|0;f[h>>2]=d;e=f[d>>2]|0;f[d>>2]=0;if(e|0){d=e+36|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){jDa(b);sOb(b)}b=f[e+24>>2]|0;if(b|0){c=e+28|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);sOb(b)}sOb(e)}b=f[h>>2]|0}while((b|0)!=(g|0));b=f[a>>2]|0;if(!b)return;sOb(b);return}function aQa(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,f=0.0,g=0.0,h=0.0;h=+n[a+12>>2]-+n[a>>2];g=+n[a+16>>2]-+n[a+4>>2];e=+n[a+20>>2]-+n[a+8>>2];c=h*g*e;f=+n[b+12>>2]-+n[b>>2];if(c>0.0){if(f*(+n[b+16>>2]-+n[b+4>>2])*(+n[b+20>>2]-+n[b+8>>2])>=c*.75){b=1;return b|0}}else if(!(h==0.0^f==0.0)){d=+n[b+20>>2]-+n[b+8>>2];c=+n[b+16>>2]-+n[b+4>>2];if(!(e==0.0^d==0.0|g==0.0^c==0.0)){h=h>0.0?h:1.0;h=g>0.0?h*g:h;g=f>0.0?f:1.0;g=c>0.0?g*c:g;if((d>0.0?g*d:g)>=(e>0.0?h*e:h)*.75){b=1;return b|0}}}b=0;return b|0}function bQa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;e=l+24|0;d=l+20|0;c=l+16|0;g=l+12|0;h=l+8|0;i=l+4|0;j=l;k=a+40|0;if(b[k>>0]|0){b[k>>0]=0;f[g>>2]=f[a>>2];k=a+4|0;f[h>>2]=f[k>>2];f[c>>2]=f[g>>2];f[d>>2]=f[h>>2];b[e>>0]=b[l+28>>0]|0;h=aDa(c,d,e)|0;f[i>>2]=h;f[j>>2]=f[k>>2];f[d>>2]=f[i>>2];f[e>>2]=f[j>>2];bDa(a,d,e)|0}c=a+41|0;if(!(b[c>>0]|0)){hQa(a);u=l;return}b[c>>0]=0;f[a+12>>2]=1065353216;f[a+16>>2]=1065353216;f[a+20>>2]=1065353216;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;c=f[a>>2]|0;d=f[a+4>>2]|0;if((c|0)==(d|0)){hQa(a);u=l;return}e=a+42|0;do{if(!(GEa(f[c>>2]|0)|0))b[e>>0]=1;c=c+4|0}while((c|0)!=(d|0));hQa(a);u=l;return}function cQa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;e=l+24|0;d=l+20|0;c=l+16|0;g=l+12|0;h=l+8|0;i=l+4|0;j=l;k=a+40|0;if(b[k>>0]|0){b[k>>0]=0;f[g>>2]=f[a>>2];k=a+4|0;f[h>>2]=f[k>>2];f[c>>2]=f[g>>2];f[d>>2]=f[h>>2];b[e>>0]=b[l+28>>0]|0;h=cDa(c,d,e)|0;f[i>>2]=h;f[j>>2]=f[k>>2];f[d>>2]=f[i>>2];f[e>>2]=f[j>>2];dDa(a,d,e)|0}c=a+41|0;if(!(b[c>>0]|0)){dQa(a);u=l;return}b[c>>0]=0;f[a+12>>2]=1065353216;f[a+16>>2]=1065353216;f[a+20>>2]=1065353216;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;c=f[a>>2]|0;d=f[a+4>>2]|0;if((c|0)==(d|0)){dQa(a);u=l;return}e=a+42|0;do{if(!(FEa(f[c>>2]|0)|0))b[e>>0]=1;c=c+4|0}while((c|0)!=(d|0));dQa(a);u=l;return}function dQa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+64|0;j=q+40|0;i=q+36|0;h=q+28|0;p=q+8|0;k=q+32|0;l=q+24|0;m=q+20|0;n=q+4|0;o=q;c=a+42|0;if(!(b[c>>0]|0)){u=q;return}if(f[a+36>>2]|0){b[a+43>>0]=1;u=q;return}b[c>>0]=0;b[a+43>>0]=0;f[a+12>>2]=1065353216;f[a+16>>2]=1065353216;f[a+20>>2]=1065353216;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;c=f[a>>2]|0;g=a+4|0;d=f[g>>2]|0;if((c|0)==(d|0)){u=q;return}else e=0;do{e=e+((b[(f[c>>2]|0)+49>>0]^1)&255)|0;c=c+4|0}while((c|0)!=(d|0));if(!e){u=q;return}f[p>>2]=0;d=p+4|0;f[d>>2]=0;c=p+8|0;f[c>>2]=0;f[j+12>>2]=0;f[j+16>>2]=c;if(e>>>0>1073741823)vd();c=pOb(e<<2)|0;r=c;f[p>>2]=r;f[j+4>>2]=0;f[d>>2]=r;f[j+8>>2]=0;f[p+8>>2]=c+(e<<2);f[j+12>>2]=0;f[j>>2]=0;tNa(j);c=f[g>>2]|0;f[k>>2]=f[a>>2];f[l>>2]=c;f[m>>2]=p;f[h>>2]=f[k>>2];f[i>>2]=f[l>>2];f[j>>2]=f[m>>2];c=eQa(h,i,j)|0;f[n>>2]=c;f[o>>2]=f[g>>2];f[i>>2]=f[n>>2];f[j>>2]=f[o>>2];dDa(a,i,j)|0;c=f[p>>2]|0;d=f[d>>2]|0;if((c|0)!=(d|0))do{fQa(a,f[c>>2]|0);c=c+4|0}while((c|0)!=(d|0));JNa(p);u=q;return}function eQa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=f[a>>2]|0;l=f[c>>2]|0;g=e;a:do if((l|0)!=(g|0)){h=e;while(1){k=f[g>>2]|0;if(!(b[k+49>>0]|0))break;e=g+4|0;if((e|0)==(l|0))break a;else{h=e;g=e}}e=f[d>>2]|0;i=e+4|0;j=f[i>>2]|0;if(j>>>0<(f[e+8>>2]|0)>>>0){f[g>>2]=0;f[j>>2]=k;f[i>>2]=(f[i>>2]|0)+4;e=f[c>>2]|0}else{gQa(e,g);h=g;e=l}f[a>>2]=h;if((h|0)==(e|0)){d=e;return d|0}g=h+4|0;if((g|0)==(e|0)){d=h;return d|0}do{l=f[g>>2]|0;j=l;do if(!(b[l+49>>0]|0)){e=f[d>>2]|0;h=e+4|0;i=f[h>>2]|0;if(i>>>0<(f[e+8>>2]|0)>>>0){f[g>>2]=0;f[i>>2]=j;f[h>>2]=(f[h>>2]|0)+4;break}else{gQa(e,g);break}}else{l=f[a>>2]|0;f[g>>2]=0;k=f[l>>2]|0;f[l>>2]=j;if(k|0){l=k+36|0;e=f[l>>2]|0;f[l>>2]=0;if(e|0){iDa(e);sOb(e)}e=f[k+24>>2]|0;if(e|0){h=k+28|0;i=f[h>>2]|0;if((i|0)!=(e|0))f[h>>2]=i+(~((i+-4-e|0)>>>2)<<2);sOb(e)}sOb(k)}f[a>>2]=(f[a>>2]|0)+4}while(0);g=g+4|0}while((g|0)!=(f[c>>2]|0));d=f[a>>2]|0;return d|0}while(0);f[a>>2]=l;d=l;return d|0}function fQa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+48|0;g=h;d=f[c+24>>2]|0;e=f[c+28>>2]|0;if((d|0)!=(e|0))do{XMa(a,f[d>>2]|0);d=d+4|0}while((d|0)!=(e|0));d=c+36|0;if(!(f[d>>2]|0)){u=h;return}xib(g,c,b[c+48>>0]|0,+n[c+44>>2]);c=f[d>>2]|0;f[c>>2]=f[g>>2];f[c+4>>2]=f[g+4>>2];f[c+8>>2]=f[g+8>>2];f[c+12>>2]=f[g+12>>2];f[c+16>>2]=f[g+16>>2];f[c+20>>2]=f[g+20>>2];f[c+52>>2]=f[g+24>>2];f[c+56>>2]=f[g+28>>2];f[c+60>>2]=f[g+32>>2];f[c+64>>2]=f[g+36>>2];f[c+68>>2]=f[g+40>>2];f[c+72>>2]=f[g+44>>2];fQa(a,c);fQa(a,c+52|0);u=h;return}function gQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+32|0;l=n;m=a+4|0;c=f[a>>2]|0;e=(f[m>>2]|0)-c>>2;d=e+1|0;if(d>>>0>1073741823)AMb(a);k=a+8|0;i=(f[k>>2]|0)-c|0;j=i>>1;d=i>>2>>>0<536870911?(j>>>0>>0?d:j):1073741823;f[l+12>>2]=0;f[l+16>>2]=a+8;do if(!d)g=0;else if(d>>>0>1073741823)vd();else{g=pOb(d<<2)|0;break}while(0);f[l>>2]=g;c=g+(e<<2)|0;i=l+8|0;j=l+4|0;f[j>>2]=c;g=g+(d<<2)|0;h=l+12|0;f[h>>2]=g;e=f[b>>2]|0;f[b>>2]=0;f[c>>2]=e;e=c+4|0;f[i>>2]=e;b=f[a>>2]|0;d=f[m>>2]|0;if((d|0)==(b|0)){p=c;c=i;i=b;o=e;e=d;b=g;g=p;f[a>>2]=g;f[j>>2]=i;f[m>>2]=o;f[c>>2]=e;m=f[k>>2]|0;f[k>>2]=b;f[h>>2]=m;f[l>>2]=i;tNa(l);u=n;return}do{d=d+-4|0;p=f[d>>2]|0;f[d>>2]=0;f[c+-4>>2]=p;c=(f[j>>2]|0)+-4|0;f[j>>2]=c}while((d|0)!=(b|0));d=c;o=h;b=i;p=f[a>>2]|0;e=f[i>>2]|0;g=f[m>>2]|0;i=f[h>>2]|0;h=d;f[a>>2]=h;f[j>>2]=p;f[m>>2]=e;f[b>>2]=g;m=f[k>>2]|0;f[k>>2]=i;f[o>>2]=m;f[l>>2]=p;tNa(l);u=n;return}function hQa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+64|0;j=q+40|0;i=q+36|0;h=q+28|0;p=q+8|0;k=q+32|0;l=q+24|0;m=q+20|0;n=q+4|0;o=q;c=a+42|0;if(!(b[c>>0]|0)){u=q;return}if(f[a+36>>2]|0){b[a+43>>0]=1;u=q;return}b[c>>0]=0;b[a+43>>0]=0;f[a+12>>2]=1065353216;f[a+16>>2]=1065353216;f[a+20>>2]=1065353216;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;c=f[a>>2]|0;g=a+4|0;d=f[g>>2]|0;if((c|0)==(d|0)){u=q;return}else e=0;do{e=e+((b[(f[c>>2]|0)+49>>0]^1)&255)|0;c=c+4|0}while((c|0)!=(d|0));if(!e){u=q;return}f[p>>2]=0;d=p+4|0;f[d>>2]=0;c=p+8|0;f[c>>2]=0;f[j+12>>2]=0;f[j+16>>2]=c;if(e>>>0>1073741823)vd();c=pOb(e<<2)|0;r=c;f[p>>2]=r;f[j+4>>2]=0;f[d>>2]=r;f[j+8>>2]=0;f[p+8>>2]=c+(e<<2);f[j+12>>2]=0;f[j>>2]=0;$Pa(j);c=f[g>>2]|0;f[k>>2]=f[a>>2];f[l>>2]=c;f[m>>2]=p;f[h>>2]=f[k>>2];f[i>>2]=f[l>>2];f[j>>2]=f[m>>2];c=iQa(h,i,j)|0;f[n>>2]=c;f[o>>2]=f[g>>2];f[i>>2]=f[n>>2];f[j>>2]=f[o>>2];bDa(a,i,j)|0;c=f[p>>2]|0;d=f[d>>2]|0;if((c|0)!=(d|0))do{jQa(a,f[c>>2]|0);c=c+4|0}while((c|0)!=(d|0));INa(p);u=q;return}function iQa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=f[a>>2]|0;l=f[c>>2]|0;g=e;a:do if((l|0)!=(g|0)){h=e;while(1){k=f[g>>2]|0;if(!(b[k+49>>0]|0))break;e=g+4|0;if((e|0)==(l|0))break a;else{h=e;g=e}}e=f[d>>2]|0;i=e+4|0;j=f[i>>2]|0;if(j>>>0<(f[e+8>>2]|0)>>>0){f[g>>2]=0;f[j>>2]=k;f[i>>2]=(f[i>>2]|0)+4;e=f[c>>2]|0}else{kQa(e,g);h=g;e=l}f[a>>2]=h;if((h|0)==(e|0)){d=e;return d|0}g=h+4|0;if((g|0)==(e|0)){d=h;return d|0}do{l=f[g>>2]|0;j=l;do if(!(b[l+49>>0]|0)){e=f[d>>2]|0;h=e+4|0;i=f[h>>2]|0;if(i>>>0<(f[e+8>>2]|0)>>>0){f[g>>2]=0;f[i>>2]=j;f[h>>2]=(f[h>>2]|0)+4;break}else{kQa(e,g);break}}else{l=f[a>>2]|0;f[g>>2]=0;k=f[l>>2]|0;f[l>>2]=j;if(k|0){l=k+36|0;e=f[l>>2]|0;f[l>>2]=0;if(e|0){jDa(e);sOb(e)}e=f[k+24>>2]|0;if(e|0){h=k+28|0;i=f[h>>2]|0;if((i|0)!=(e|0))f[h>>2]=i+(~((i+-4-e|0)>>>2)<<2);sOb(e)}sOb(k)}f[a>>2]=(f[a>>2]|0)+4}while(0);g=g+4|0}while((g|0)!=(f[c>>2]|0));d=f[a>>2]|0;return d|0}while(0);f[a>>2]=l;d=l;return d|0}function jQa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+48|0;g=h;d=f[c+24>>2]|0;e=f[c+28>>2]|0;if((d|0)!=(e|0))do{TPa(a,f[d>>2]|0);d=d+4|0}while((d|0)!=(e|0));d=c+36|0;if(!(f[d>>2]|0)){u=h;return}xib(g,c,b[c+48>>0]|0,+n[c+44>>2]);c=f[d>>2]|0;f[c>>2]=f[g>>2];f[c+4>>2]=f[g+4>>2];f[c+8>>2]=f[g+8>>2];f[c+12>>2]=f[g+12>>2];f[c+16>>2]=f[g+16>>2];f[c+20>>2]=f[g+20>>2];f[c+52>>2]=f[g+24>>2];f[c+56>>2]=f[g+28>>2];f[c+60>>2]=f[g+32>>2];f[c+64>>2]=f[g+36>>2];f[c+68>>2]=f[g+40>>2];f[c+72>>2]=f[g+44>>2];jQa(a,c);jQa(a,c+52|0);u=h;return}function kQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+32|0;l=n;m=a+4|0;c=f[a>>2]|0;e=(f[m>>2]|0)-c>>2;d=e+1|0;if(d>>>0>1073741823)AMb(a);k=a+8|0;i=(f[k>>2]|0)-c|0;j=i>>1;d=i>>2>>>0<536870911?(j>>>0>>0?d:j):1073741823;f[l+12>>2]=0;f[l+16>>2]=a+8;do if(!d)g=0;else if(d>>>0>1073741823)vd();else{g=pOb(d<<2)|0;break}while(0);f[l>>2]=g;c=g+(e<<2)|0;i=l+8|0;j=l+4|0;f[j>>2]=c;g=g+(d<<2)|0;h=l+12|0;f[h>>2]=g;e=f[b>>2]|0;f[b>>2]=0;f[c>>2]=e;e=c+4|0;f[i>>2]=e;b=f[a>>2]|0;d=f[m>>2]|0;if((d|0)==(b|0)){p=c;c=i;i=b;o=e;e=d;b=g;g=p;f[a>>2]=g;f[j>>2]=i;f[m>>2]=o;f[c>>2]=e;m=f[k>>2]|0;f[k>>2]=b;f[h>>2]=m;f[l>>2]=i;$Pa(l);u=n;return}do{d=d+-4|0;p=f[d>>2]|0;f[d>>2]=0;f[c+-4>>2]=p;c=(f[j>>2]|0)+-4|0;f[j>>2]=c}while((d|0)!=(b|0));d=c;o=h;b=i;p=f[a>>2]|0;e=f[i>>2]|0;g=f[m>>2]|0;i=f[h>>2]|0;h=d;f[a>>2]=h;f[j>>2]=p;f[m>>2]=e;f[b>>2]=g;m=f[k>>2]|0;f[k>>2]=i;f[o>>2]=m;f[l>>2]=p;$Pa(l);u=n;return}function lQa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;g=l;c=f[a>>2]|0;k=a+4|0;h=f[k>>2]|0;if((c|0)==(h|0)){u=l;return}i=g+16|0;do{e=c+16|0;d=f[e>>2]|0;if(d|0){gh[f[(f[d>>2]|0)+24>>2]&2047](d);if(b[c+24>>0]|0){f[i>>2]=0;d=f[e>>2]|0;if((c|0)==(d|0))gh[f[(f[d>>2]|0)+16>>2]&2047](d);else if(d|0)gh[f[(f[d>>2]|0)+20>>2]&2047](d);f[e>>2]=0;d=f[i>>2]|0;do if(!d){f[e>>2]=0;j=15}else if((g|0)==(d|0)){f[e>>2]=c;j=f[i>>2]|0;oh[f[(f[j>>2]|0)+12>>2]&1023](j,c);j=15;break}else{f[e>>2]=d;f[i>>2]=0;d=0;e=0;break}while(0);if((j|0)==15){j=0;e=f[i>>2]|0;d=e}if((g|0)==(d|0))gh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)gh[f[(f[e>>2]|0)+20>>2]&2047](e)}}c=c+32|0}while((c|0)!=(h|0));c=f[k>>2]|0;if((f[a>>2]|0)==(c|0)){u=l;return}while(1){if(!(f[c+-16>>2]|0)){d=c;e=0;g=0}else{j=30;break}c=c+-32|0;while(1){j=d+-32|0;f[k>>2]=j;if((j|0)==(e|0))gh[f[(f[g>>2]|0)+16>>2]&2047](g);else if(g|0)gh[f[(f[g>>2]|0)+20>>2]&2047](g);d=f[k>>2]|0;if((d|0)==(c|0))break;g=f[d+-16>>2]|0;e=g}if((f[a>>2]|0)==(c|0)){j=30;break}}if((j|0)==30){u=l;return}}function mQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;e=a+368|0;g=a+372|0;h=f[g>>2]|0;c=h;if(((h-(f[e>>2]|0)|0)/12|0)>>>0<6){d=b+4|0;if((f[d>>2]|0)-(f[b>>2]|0)>>5>>>0<5){if((f[a+376>>2]|0)>>>0>c>>>0){f[c>>2]=0;e=c+4|0;f[e>>2]=0;f[c+8>>2]=0;f[h>>2]=f[b>>2];f[e>>2]=f[d>>2];h=b+8|0;f[c+8>>2]=f[h>>2];f[h>>2]=0;f[d>>2]=0;f[b>>2]=0;f[g>>2]=(f[g>>2]|0)+12}else sS(e,b);C9a(f[(f[a+4>>2]|0)+240>>2]|0);c=a+268|0;b=f[c>>2]|0;f[c>>2]=b+1;f[i>>2]=b;c=a+384|0;d=f[c>>2]|0;if((d|0)==(f[a+388>>2]|0)){xD(a+380|0,i);i=f[i>>2]|0;u=j;return i|0}else{f[d>>2]=b;f[c>>2]=d+4;i=f[i>>2]|0;u=j;return i|0}}}f[i>>2]=-1;i=f[i>>2]|0;u=j;return i|0}function nQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=f[b>>2]|0;k=a+380|0;n=a+384|0;c=f[k>>2]|0;e=(f[n>>2]|0)-c>>2;if(!e){a=0;return a|0}else b=0;while(1){if((f[c+(b<<2)>>2]|0)==(d|0))break;b=b+1|0;if(b>>>0>=e>>>0){b=0;j=24;break}}if((j|0)==24)return b|0;l=a+368|0;d=(f[l>>2]|0)+(b*12|0)|0;c=d+12|0;m=a+372|0;i=f[m>>2]|0;if((c|0)==(i|0)){g=d;j=12}else{do{e=f[d>>2]|0;h=d+4|0;if(!e)e=d+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-32-e|0)>>>5)<<5);sOb(e);e=d+8|0;f[e>>2]=0;f[h>>2]=0;f[d>>2]=0}f[d>>2]=f[c>>2];g=c+4|0;f[h>>2]=f[g>>2];h=c+8|0;f[e>>2]=f[h>>2];f[h>>2]=0;f[g>>2]=0;f[c>>2]=0;c=c+12|0;d=d+12|0}while((c|0)!=(i|0));c=f[m>>2]|0;if((c|0)!=(d|0)){g=d;j=12}}if((j|0)==12){d=c;while(1){c=d+-12|0;f[m>>2]=c;e=f[c>>2]|0;if(e){c=d+-8|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-32-e|0)>>>5)<<5);sOb(e);c=f[m>>2]|0}if((c|0)==(g|0))break;else d=c}}e=(f[k>>2]|0)+(b<<2)|0;b=e+4|0;c=f[n>>2]|0;d=c-b|0;g=d>>2;if(g){cQb(e|0,b|0,d|0)|0;c=f[n>>2]|0}b=e+(g<<2)|0;if((c|0)!=(b|0))f[n>>2]=c+(~((c+-4-b|0)>>>2)<<2);if((f[l>>2]|0)!=(f[m>>2]|0)){a=1;return a|0}C9a(f[(f[a+4>>2]|0)+240>>2]|0);a=1;return a|0}function oQa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=u;u=u+16|0;B=D;C=a+416|0;g=b[C>>0]|0;if(g&1){pQa(a);g=b[C>>0]|0}g=g|3;b[C>>0]=g;f[a+420>>2]=f[e>>2];f[a+424>>2]=f[e+4>>2];f[a+428>>2]=f[e+8>>2];if(d){r=B+4|0;s=a+432|0;t=a+436|0;v=a+444|0;w=a+448|0;x=a+440|0;y=a+464|0;q=0;do{MPa(B,a,c+(q<<3)|0);z=f[B>>2]|0;g=f[r>>2]|0;if(g|0)iOb(g);l=z;FJa(z,1);p=X(l,1540483477)|0;p=(X(p>>>24^p,1540483477)|0)^1866966612;p=X(p>>>13^p,1540483477)|0;p=p>>>15^p;m=f[t>>2]|0;o=(m|0)==0;a:do if(o){g=0;A=26}else{k=m+-1|0;h=(k&m|0)==0;if(h)g=k&p;else if(p>>>0>>0)g=p;else g=(p>>>0)%(m>>>0)|0;e=f[(f[s>>2]|0)+(g<<2)>>2]|0;if(!e)A=26;else{if(h)while(1){e=f[e>>2]|0;if(!e){A=26;break a}h=f[e+4>>2]|0;if(!((h|0)==(p|0)|(h&k|0)==(g|0))){A=26;break a}if((f[e+8>>2]|0)==(z|0))break a}do{e=f[e>>2]|0;if(!e){A=26;break a}h=f[e+4>>2]|0;if((h|0)!=(p|0)){if(h>>>0>=m>>>0)h=(h>>>0)%(m>>>0)|0;if((h|0)!=(g|0)){A=26;break a}}}while((f[e+8>>2]|0)!=(z|0))}}while(0);if((A|0)==26){A=0;k=pOb(12)|0;f[k+8>>2]=l;f[k+4>>2]=p;f[k>>2]=0;i=+(((f[v>>2]|0)+1|0)>>>0);j=+n[w>>2];do if(o|j*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;e=~~+W(+(i/j))>>>0;WCa(s,g>>>0>>0?e:g);g=f[t>>2]|0;e=g+-1|0;if(!(e&g)){h=g;g=e&p;break}if(p>>>0>>0){h=g;g=p}else{h=g;g=(p>>>0)%(g>>>0)|0}}else h=m;while(0);e=(f[s>>2]|0)+(g<<2)|0;g=f[e>>2]|0;if(!g){f[k>>2]=f[x>>2];f[x>>2]=k;f[e>>2]=x;g=f[k>>2]|0;if(g|0){g=f[g+4>>2]|0;e=h+-1|0;if(!(e&h))g=g&e;else if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0;g=(f[s>>2]|0)+(g<<2)|0;A=39}}else{f[k>>2]=f[g>>2];A=39}if((A|0)==39){A=0;f[g>>2]=k}f[v>>2]=(f[v>>2]|0)+1}wDa(y,z);q=q+1|0}while((q|0)!=(d|0));g=b[C>>0]|0}if(!(g&1)){u=D;return}if(f[a+444>>2]|0){u=D;return}ADa(a+464|0);u=D;return}function pQa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;h=k;i=a+416|0;if(!(b[i>>0]&1)){u=k;return}j=a+444|0;if(!(f[j>>2]|0)){c=f[a+40>>2]|0;a:do if(c|0){d=f[(f[c+12>>2]|0)+56>>2]|0;if(!d)do{c=f[c>>2]|0;if(!c)break a;d=f[(f[c+12>>2]|0)+56>>2]|0}while((d|0)==0);e=h+4|0;g=h+8|0;b:while(1){do{l=f[d+12>>2]|0;f[h>>2]=0;f[e>>2]=0;f[g>>2]=0;wJa(l,h);d=f[d>>2]|0}while((d|0)!=0);while(1){c=f[c>>2]|0;if(!c)break a;d=f[(f[c+12>>2]|0)+56>>2]|0;if(d)continue b}}}while(0);ADa(a+464|0)}else{c=f[a+440>>2]|0;if(c|0){d=a+464|0;do{l=c+8|0;FJa(f[l>>2]|0,0);wDa(d,f[l>>2]|0);c=f[c>>2]|0}while((c|0)!=0)}}b[i>>0]=b[i>>0]&-4|2;if(!(f[j>>2]|0)){u=k;return}d=a+440|0;c=f[d>>2]|0;if(c|0)do{l=c;c=f[c>>2]|0;sOb(l)}while((c|0)!=0);f[d>>2]=0;e=f[a+436>>2]|0;if(e|0){d=a+432|0;c=0;do{f[(f[d>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(e|0))}f[j>>2]=0;u=k;return}function qQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=f[b+16>>2]|0;a:do if(!g)b=0;else{h=g+-1|0;c=(h&g|0)==0;b=f[f[b+12>>2]>>2]|0;if(!b)b=0;else{b=f[b>>2]|0;if(!b)b=0;else{if(c)while(1){g=f[b+4>>2]|0;c=(g|0)==0;if(!(c|(g&h|0)==0)){b=0;break a}if(c)if(!(f[b+8>>2]|0))break a;b=f[b>>2]|0;if(!b){b=0;break a}}while(1){c=f[b+4>>2]|0;if(!c){if(!(f[b+8>>2]|0))break a}else{if(c>>>0>>0){b=0;break a}if((c>>>0)%(g>>>0)|0|0){b=0;break a}}b=f[b>>2]|0;if(!b){b=0;break}}}}}while(0);f[a>>2]=0;g=a+4|0;f[g>>2]=0;f[a+8>>2]=0;c=f[b+44>>2]|0;h=a+8|0;do if(!c){d=0;e=0}else if(c>>>0>1073741823)vd();else{e=pOb(c<<2)|0;d=e+(c<<2)|0;f[a>>2]=e;f[g>>2]=e;f[h>>2]=d;break}while(0);b=f[b+40>>2]|0;if(!b)return;while(1){c=b+8|0;if((e|0)==(d|0))$G(a,c);else{f[e>>2]=f[c>>2];f[g>>2]=e+4}b=f[b>>2]|0;if(!b)break;e=f[g>>2]|0;d=f[h>>2]|0}return}function rQa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+32|0;e=g+16|0;d=g;IIa(e,f[c>>2]|0);mPa(d,b,e);b=f[d+8>>2]|0;if(!b){f[a>>2]=f[c>>2];b=f[c+4>>2]|0;f[a+4>>2]=b;if(b|0)gOb(b)}else{f[a>>2]=b;b=f[d+12>>2]|0;f[a+4>>2]=b;if(b|0)gOb(b)}b=f[d+12>>2]|0;if(b|0)iOb(b);b=f[d+4>>2]|0;if(b|0)iOb(b);b=f[e+4>>2]|0;if(!b){u=g;return}iOb(b);u=g;return}function sQa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;k=f[c>>2]|0;m=f[c+4>>2]|0;q=m+-1640531527+(k<<6)+(k>>>2)^k;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(p)d=0;else{j=i+-1|0;e=(j&i|0)==0;if(e)l=q&j;else if(q>>>0>>0)l=q;else l=(q>>>0)%(i>>>0)|0;d=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!d)d=l;else{d=f[d>>2]|0;if(!d)d=l;else{if(e){while(1){e=f[d+4>>2]|0;if(!((e|0)==(q|0)|(e&j|0)==(l|0))){d=l;break a}if((f[d+8>>2]|0)==(k|0))if((f[d+12>>2]|0)==(m|0))break;d=f[d>>2]|0;if(!d){d=l;break a}}a=d+16|0;return a|0}while(1){e=f[d+4>>2]|0;if((e|0)!=(q|0)){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(l|0)){d=l;break a}}if((f[d+8>>2]|0)==(k|0))if((f[d+12>>2]|0)==(m|0))break;d=f[d>>2]|0;if(!d){d=l;break a}}a=d+16|0;return a|0}}}while(0);k=pOb(20)|0;m=c;c=f[m+4>>2]|0;j=k+8|0;f[j>>2]=f[m>>2];f[j+4>>2]=c;b[k+16>>0]=0;f[k+4>>2]=q;f[k>>2]=0;j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;e=~~+W(+(g/h))>>>0;tQa(a,d>>>0>>0?e:d);d=f[o>>2]|0;e=d+-1|0;if(!(e&d)){i=d;d=e&q;break}if(q>>>0>>0){i=d;d=q}else{i=d;d=(q>>>0)%(d>>>0)|0}}while(0);e=(f[a>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){d=a+8|0;f[k>>2]=f[d>>2];f[d>>2]=k;f[e>>2]=d;d=f[k>>2]|0;if(d|0){d=f[d+4>>2]|0;e=i+-1|0;if(!(e&i))d=d&e;else if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0;d=(f[a>>2]|0)+(d<<2)|0;r=33}}else{f[k>>2]=f[d>>2];r=33}if((r|0)==33)f[d>>2]=k;f[j>>2]=(f[j>>2]|0)+1;a=k;a=a+16|0;return a|0}function tQa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){uQa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;uQa(a,b);return}function uQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();n=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)c=c&m;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){l=d;b:while(1){c:do if(n){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}j=d+12|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)k=e;else k=(e>>>0)%(b>>>0)|0;if((k|0)==(c|0))break c;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){c=k;break b}i=d+12|0;h=f[d>>2]|0;e:do if(!h)e=d;else{j=f[d+8>>2]|0;e=d;while(1){if((j|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{o=h;h=e;e=o}}}while(0);f[l>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=39;break a}}}while(0);e=f[d>>2]|0;if(!e){c=39;break a}else{g=d;l=d}}f[e>>2]=l;e=f[d>>2]|0;if(!e){c=39;break}else g=d}if((c|0)==39)return}function vQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=f[b>>2]|0;i=f[b+4>>2]|0;e=i+-1640531527+(k<<6)+(k>>>2)^k;g=f[a+4>>2]|0;if(!g){k=0;return k|0}d=g+-1|0;c=(d&g|0)==0;if(c)h=e&d;else if(e>>>0>>0)h=e;else h=(e>>>0)%(g>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){c=f[b+4>>2]|0;a=(e|0)==(c|0);if(!(a|(c&d|0)==(h|0))){b=0;a=21;break}if(a)if((f[b+8>>2]|0)==(k|0))if((f[b+12>>2]|0)==(i|0)){a=21;break}b=f[b>>2]|0;if(!b){b=0;a=21;break}}if((a|0)==21)return b|0}else j=b;while(1){b=f[j+4>>2]|0;if((e|0)==(b|0)){if((f[j+8>>2]|0)==(k|0))if((f[j+12>>2]|0)==(i|0)){b=j;a=21;break}}else{if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0;if((b|0)!=(h|0)){b=0;a=21;break}}j=f[j>>2]|0;if(!j){b=0;a=21;break}}if((a|0)==21)return b|0;return 0}function wQa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;q=t+8|0;r=t;s=t+4|0;e=f[a+52>>2]|0;if((((f[a+56>>2]|0)-e|0)/20|0)>>>0>c>>>0)c=e+(c*20|0)|0;else if(!(b[257336]|0))if(!(MPb(257336)|0))c=258704;else{f[64676]=0;f[64677]=0;f[64678]=0;f[64679]=0;n[64680]=1.0;c=258704}else c=258704;e=f[c+8>>2]|0;if(!e){s=0;u=t;return s|0}c=0;do{o=f[e+8>>2]|0;b[o+128>>0]=d;f[s>>2]=f[o+8>>2];f[q>>2]=f[s>>2];g=TMa(a,q)|0;h=f[o+56>>2]|0;a:do if(h){p=g+24|0;m=g+20|0;while(1){l=f[h+12>>2]|0;b:do switch(d<<24>>24){case 0:{i=HJa(l,1,0,1)|0|(HJa(l,2,0,1)|0);g=0;j=28;break}case 1:{i=HJa(l,1,1,1)|0|(HJa(l,2,1,1)|0);g=1;j=28;break}case 2:{k=f[l+120>>2]|0;f[r>>2]=k;f[q>>2]=f[r>>2];g=bGa(o,q)|0;if(g|0){j=g+12|0;g=f[j>>2]|0;if((g|0)!=-1){i=HJa(l,1,(g&1|0)!=0,1)|0;i=i|(HJa(l,2,(f[j>>2]&2|0)!=0,1)|0);g=(f[j>>2]&4|0)!=0;j=28;break b}}g=f[p>>2]|0;i=g+-1|0;if(!(i&g)){g=f[(f[m>>2]|0)+((i&k)<<2)>>2]|0;while(1){g=f[g>>2]|0;if((k|0)!=(f[g+4>>2]|0))continue;if((f[g+8>>2]|0)==(k|0))break}}else{if(k>>>0>>0)g=k;else g=(k>>>0)%(g>>>0)|0;g=f[(f[m>>2]|0)+(g<<2)>>2]|0;while(1){g=f[g>>2]|0;if((k|0)!=(f[g+4>>2]|0))continue;if((f[g+8>>2]|0)==(k|0))break}}g=(f[g+16>>2]|0)+192|0;i=HJa(l,1,(b[g>>0]&1)!=0,1)|0;i=i|(HJa(l,2,(b[g>>0]&2)!=0,1)|0);g=(b[g>>0]&4)!=0;j=28;break}default:g=0}while(0);if((j|0)==28){j=0;g=i|(HJa(l,4,g,1)|0)}c=c|g;h=f[h>>2]|0;if(!h)break a}}while(0);e=f[e>>2]|0}while((e|0)!=0);u=t;return c|0}function xQa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+32|0;m=w;p=w+24|0;q=w+16|0;r=d?7:0;if((b|0)==(c|0)){v=0;u=w;return v|0}s=a+36|0;t=q+4|0;n=m+4|0;o=a+32|0;e=0;do{k=f[b>>2]|0;j=f[s>>2]|0;a:do if(j){i=j+-1|0;h=(i&j|0)==0;if(h)l=i&k;else if(k>>>0>>0)l=k;else l=(k>>>0)%(j>>>0)|0;g=f[(f[o>>2]|0)+(l<<2)>>2]|0;if(g){g=f[g>>2]|0;if(g){b:do if(h)while(1){j=f[g+4>>2]|0;h=(j|0)==(k|0);if(!(h|(j&i|0)==(l|0)))break a;if(h)if((f[g+8>>2]|0)==(k|0))break b;g=f[g>>2]|0;if(!g)break a}else while(1){h=f[g+4>>2]|0;if((h|0)==(k|0)){if((f[g+8>>2]|0)==(k|0))break b}else{if(h>>>0>=j>>>0)h=(h>>>0)%(j>>>0)|0;if((h|0)!=(l|0))break a}g=f[g>>2]|0;if(!g)break a}while(0);h=f[g+12>>2]|0;g=f[g+16>>2]|0;if(!g)g=0;else gOb(g);k=h;do if(h){j=b+4|0;f[p>>2]=f[j>>2];f[m>>2]=f[p>>2];h=aGa(k,m)|0;if(h|0){h=h+12|0;i=f[h>>2]|0;if((i|0)!=-1){f[h>>2]=r;e=e|(i|0)!=(r|0);break}}h=f[j>>2]|0;f[q>>2]=f[k+8>>2];f[t>>2]=h;KPa(m,a,q);h=f[m>>2]|0;if(!h){h=0;j=0;v=31}else{i=f[n>>2]|0;if(!i)i=0;else{gOb(i);j=i;v=31}}if((v|0)==31){v=0;i=f[n>>2]|0;if(!i)i=j;else{iOb(i);i=j}}if(h)e=e|(HJa(h,7,d,0)|0);if(i|0)iOb(i)}while(0);if(g)iOb(g)}}}while(0);b=b+8|0}while((b|0)!=(c|0));u=w;return e|0}function yQa(a,b){a=a|0;b=b|0;f[(f[a>>2]|0)+4>>2]=b;return}function zQa(a){a=a|0;return f[(f[a>>2]|0)+4>>2]|0}function AQa(a){a=a|0;return f[(f[(f[a>>2]|0)+4>>2]|0)+240>>2]|0}function BQa(a){a=a|0;return f[(f[a>>2]|0)+244>>2]|0}function CQa(a,b){a=a|0;b=b|0;a=(f[a>>2]|0)+244|0;if((f[a>>2]|0)!=-1)return;f[a>>2]=f[b>>2];return}function DQa(a){a=a|0;f[(f[a>>2]|0)+244>>2]=-1;return}function EQa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+4|0;e=h;a=f[a>>2]|0;g=f[b>>2]|0;f[e>>2]=f[c>>2];f[d>>2]=f[e>>2];a=TMa(a,d)|0;d=f[a+64>>2]|0;a:do if(!d)a=0;else{c=d+-1|0;b=(c&d|0)==0;if(b)e=c&g;else if(g>>>0>>0)e=g;else e=(g>>>0)%(d>>>0)|0;a=f[(f[a+60>>2]|0)+(e<<2)>>2]|0;if(!a)a=0;else{a=f[a>>2]|0;if(!a)a=0;else{if(b)while(1){d=f[a+4>>2]|0;b=(d|0)==(g|0);if(!(b|(d&c|0)==(e|0))){a=0;break a}if(b)if((f[a+8>>2]|0)==(g|0))break a;a=f[a>>2]|0;if(!a){a=0;break a}}while(1){b=f[a+4>>2]|0;if((b|0)==(g|0)){if((f[a+8>>2]|0)==(g|0))break a}else{if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;if((b|0)!=(e|0)){a=0;break a}}a=f[a>>2]|0;if(!a){a=0;break}}}}}while(0);u=h;return a+12|0}function FQa(a){a=a|0;return (f[a>>2]|0)+64|0}function GQa(a){a=a|0;return (f[a>>2]|0)+32|0}function HQa(a,c){a=a|0;c=c|0;var d=0;d=f[a>>2]|0;a=f[d+52>>2]|0;if((((f[d+56>>2]|0)-a|0)/20|0)>>>0>c>>>0){d=a+(c*20|0)|0;return d|0}if(b[257336]|0){d=258704;return d|0}if(!(MPb(257336)|0)){d=258704;return d|0};f[64676]=0;f[64677]=0;f[64678]=0;f[64679]=0;n[64680]=1.0;d=258704;return d|0}function IQa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=u;u=u+16|0;e=d+4|0;g=d;b=f[b>>2]|0;f[g>>2]=f[c>>2];f[e>>2]=f[g>>2];yOa(a,b,e);u=d;return}function JQa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+16|0;i=h+12|0;j=h+8|0;l=h+4|0;k=h;a=f[a>>2]|0;f[l>>2]=f[c>>2];f[k>>2]=f[d>>2];f[j>>2]=f[l>>2];f[i>>2]=f[k>>2];g=OMa(a,b,j,i,e,g)|0;u=h;return g|0}function KQa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=u;u=u+16|0;e=d+4|0;g=d;a=f[a>>2]|0;f[g>>2]=f[c>>2];f[e>>2]=f[g>>2];c=zOa(a,b,e)|0;u=d;return c|0}function LQa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;a=f[a>>2]|0;f[e>>2]=f[b>>2];f[d>>2]=f[e>>2];b=JOa(a,d)|0;u=c;return b|0}function MQa(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;LOa(f[a>>2]|0,b,c,d,e,g,0);return}function NQa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cNa(f[a>>2]|0,b,c,d);return}function OQa(a,b,c){a=a|0;b=b|0;c=c|0;lPa(a,f[b>>2]|0,c);return}function PQa(a,b,c){a=a|0;b=b|0;c=c|0;mPa(a,f[b>>2]|0,c);return}function QQa(a,b,c){a=a|0;b=b|0;c=c|0;nPa(a,f[b>>2]|0,c);return}function RQa(a,b,c){a=a|0;b=b|0;c=c|0;KOa(a,f[b>>2]|0,c);return}function SQa(a,b,c){a=a|0;b=b|0;c=c|0;oPa(a,f[b>>2]|0,c);return}function TQa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g+4|0;h=g;e=f[a>>2]|0;f[h>>2]=f[c>>2];f[d>>2]=f[h>>2];e=VNa((TMa(e,d)|0)+80|0,c+4|0)|0;if(f[e>>2]|0){h=0;u=g;return h|0}EFa(f[b>>2]|0,c,d);a=f[b>>2]|0;d=f[b+4>>2]|0;if(d|0)gOb(d);f[e>>2]=a;h=e+4|0;a=f[h>>2]|0;f[h>>2]=d;if(!a){h=1;u=g;return h|0}iOb(a);h=1;u=g;return h|0}function UQa(a,b,c){a=a|0;b=b|0;c=c|0;return $Na(f[a>>2]|0,b,c)|0}function VQa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=f[a+32>>2]|0;e=f[a+360>>2]|0;g=f[a+456>>2]|0;j=f[a+1064>>2]|0;k=f[a+1112>>2]|0;a:{if(f[(g+60|0)>>2]|0){b=f[(g+56|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[(g+56|0)>>2]=0;c=f[g+52>>2]|0;if(c|0){b=0;do{f[(f[(g+48|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(g+60|0)>>2]=0;g=f[e>>2]|0}h=g+80|0;if(f[h>>2]|0){e=g+76|0;b=f[e>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[e>>2]=0;d=f[g+72>>2]|0;if(d|0){c=g+68|0;b=0;do{f[(f[c>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(d|0))}f[h>>2]=0};f[(a+4|0)>>2]=f[64672];e=TMa(i,a+4|0)|0;if(f[(e+32|0)>>2]|0){b=f[(e+28|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+20>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[(e+28|0)>>2]=0;c=f[e+24>>2]|0;if(c|0){b=0;do{f[(f[(e+20|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+32|0)>>2]=0}if(f[(e+52|0)>>2]|0){b=f[(e+48|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[(e+48|0)>>2]=0;c=f[e+44>>2]|0;if(c|0){b=0;do{f[(f[(e+40|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+52|0)>>2]=0}if(f[(e+72|0)>>2]|0){b=f[(e+68|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[(e+68|0)>>2]=0;c=f[e+64>>2]|0;if(c|0){b=0;do{f[(f[(e+60|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+72|0)>>2]=0}if(f[(e+92|0)>>2]|0){b=f[(e+88|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[(e+88|0)>>2]=0;c=f[e+84>>2]|0;if(c|0){b=0;do{f[(f[(e+80|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+92|0)>>2]=0}if(f[(e+112|0)>>2]|0){b=f[(e+108|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[(e+108|0)>>2]=0;c=f[e+104>>2]|0;if(c|0){b=0;do{f[(f[(e+100|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+112|0)>>2]=0}if(f[(e+192|0)>>2]|0){b=f[(e+188|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[(e+188|0)>>2]=0;c=f[e+184>>2]|0;if(c|0){b=0;do{f[(f[(e+180|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+192|0)>>2]=0}if(f[(e+212|0)>>2]|0){b=f[(e+208|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[(e+208|0)>>2]=0;c=f[e+204>>2]|0;if(c|0){b=0;do{f[(f[(e+200|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+212|0)>>2]=0}if(f[(e+232|0)>>2]|0){b=f[(e+228|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[(e+228|0)>>2]=0;c=f[e+224>>2]|0;if(c|0){b=0;do{f[(f[(e+220|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+232|0)>>2]=0}if(f[(e+252|0)>>2]|0){b=f[(e+248|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[(e+248|0)>>2]=0;c=f[e+244>>2]|0;if(c|0){b=0;do{f[(f[(e+240|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+252|0)>>2]=0}if(f[(e+272|0)>>2]|0){b=f[(e+268|0)>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+16>>2]|0;if(d|0)iOb(d);sOb(c)}while((b|0)!=0);f[(e+268|0)>>2]=0;c=f[e+264>>2]|0;if(c|0){b=0;do{f[(f[(e+260|0)>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[(e+272|0)>>2]=0}f[i+456>>2]=0;oh[f[(f[j>>2]|0)+28>>2]&1023](j,0);Y8a(k);b=1;u=a;f[a+1280>>2]=6;f[a+1284>>2]=b|0;break a}f[a+280>>2]=b} function KYa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;d=a+12|0;if(f[d>>2]|0){c=a+8|0;b=f[c>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;QYa(h+12|0);sOb(h)}while((b|0)!=0);f[c>>2]=0;c=f[a+4>>2]|0;if(c|0){b=0;do{f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[d>>2]=0}h=f[a+20>>2]|0;g=a+24|0;b=f[g>>2]|0;if((b|0)==(h|0))return;do{d=b+-28|0;f[g>>2]=d;e=b+-4|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;a=f[c>>2]|0;e=b+-16|0;if((a|0)==(f[e>>2]|0)){b=f[d>>2]|0;if(!b)b=a;else{tOb(b);b=f[c>>2]|0}}else b=a;if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[g>>2]|0}while((b|0)!=(h|0));return}function LYa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;d=a+12|0;if(f[d>>2]|0){c=a+8|0;b=f[c>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;PYa(h+12|0);sOb(h)}while((b|0)!=0);f[c>>2]=0;c=f[a+4>>2]|0;if(c|0){b=0;do{f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[d>>2]=0}h=f[a+20>>2]|0;g=a+24|0;b=f[g>>2]|0;if((b|0)==(h|0))return;do{d=b+-28|0;f[g>>2]=d;e=b+-4|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;a=f[c>>2]|0;e=b+-16|0;if((a|0)==(f[e>>2]|0)){b=f[d>>2]|0;if(!b)b=a;else{tOb(b);b=f[c>>2]|0}}else b=a;if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[g>>2]|0}while((b|0)!=(h|0));return}function MYa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;if(!a)return;do{g=a;a=f[a>>2]|0;c=g+44|0;b=f[c>>2]|0;e=g+48|0;if((b|0)==(f[e>>2]|0)){d=f[g+36>>2]|0;if(d){tOb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-4-b|0)>>>2)<<2);sOb(b)}c=g+24|0;b=f[c>>2]|0;e=g+28|0;if((b|0)==(f[e>>2]|0)){d=f[g+16>>2]|0;if(d){tOb(d);b=f[c>>2]|0}}if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-4-b|0)>>>2)<<2);sOb(b)}e=g+12|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);sOb(g)}while((a|0)!=0);return}function NYa(a,b){a=a|0;b=b|0;if(!b)return;else{NYa(a,f[b>>2]|0);NYa(a,f[b+4>>2]|0);sOb(b);return}}function OYa(a,b){a=a|0;b=b|0;if(!b)return;else{OYa(a,f[b>>2]|0);OYa(a,f[b+4>>2]|0);sOb(b);return}}function PYa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{tOb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}sOb(b);return}function QYa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{tOb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}sOb(b);return}function RYa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{tOb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}sOb(b);return}function SYa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{tOb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}sOb(b);return}function TYa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;d=a+12|0;if(f[d>>2]|0){c=a+8|0;b=f[c>>2]|0;if(b|0)do{h=b;b=f[b>>2]|0;UYa(h+12|0);sOb(h)}while((b|0)!=0);f[c>>2]=0;c=f[a+4>>2]|0;if(c|0){b=0;do{f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[d>>2]=0}h=f[a+20>>2]|0;g=a+24|0;b=f[g>>2]|0;if((b|0)==(h|0))return;do{d=b+-28|0;f[g>>2]=d;e=b+-4|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;a=f[c>>2]|0;e=b+-16|0;if((a|0)==(f[e>>2]|0)){b=f[d>>2]|0;if(!b)b=a;else{tOb(b);b=f[c>>2]|0}}else b=a;if(b|0){c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[g>>2]|0}while((b|0)!=(h|0));return}function UYa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{tOb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}sOb(b);return}function VYa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{tOb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}sOb(b);return}function WYa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=f[a>>2]|0;if(!b)return;i=a+4|0;c=f[i>>2]|0;if((c|0)!=(b|0)){do{g=c+-28|0;f[i>>2]=g;h=c+-4|0;d=f[h>>2]|0;f[h>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{tOb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}c=f[i>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}sOb(b);return}function XYa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=f[b>>2]|0;h=f[a+4>>2]|0;c=f[b+4>>2]|0;i=h+-1|0;j=(i&h|0)==0;if(j)g=i&c;else if(c>>>0>>0)g=c;else g=(c>>>0)%(h>>>0)|0;d=(f[a>>2]|0)+(g<<2)|0;k=f[d>>2]|0;while(1){c=f[k>>2]|0;if((c|0)==(b|0))break;else k=c}if((k|0)==(a+8|0))e=13;else{c=f[k+4>>2]|0;if(j)c=c&i;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)==(g|0)){d=l;e=21}else e=13}do if((e|0)==13){if(l|0){c=f[l+4>>2]|0;if(j)c=c&i;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)==(g|0)){d=l;c=l;e=22;break}}f[d>>2]=0;d=f[b>>2]|0;e=21}while(0);if((e|0)==21){c=d;if(d)e=22}if((e|0)==22){d=f[d+4>>2]|0;if(j)d=d&i;else if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(g|0)){f[(f[a>>2]|0)+(d<<2)>>2]=k;c=f[b>>2]|0}}f[k>>2]=c;f[b>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;if(!b)return l|0;sOb(b);return l|0}function YYa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=f[b>>2]|0;h=f[a+4>>2]|0;c=f[b+4>>2]|0;i=h+-1|0;j=(i&h|0)==0;if(j)g=i&c;else if(c>>>0>>0)g=c;else g=(c>>>0)%(h>>>0)|0;d=(f[a>>2]|0)+(g<<2)|0;k=f[d>>2]|0;while(1){c=f[k>>2]|0;if((c|0)==(b|0))break;else k=c}if((k|0)==(a+8|0))e=13;else{c=f[k+4>>2]|0;if(j)c=c&i;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)==(g|0)){d=l;e=21}else e=13}do if((e|0)==13){if(l|0){c=f[l+4>>2]|0;if(j)c=c&i;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)==(g|0)){d=l;c=l;e=22;break}}f[d>>2]=0;d=f[b>>2]|0;e=21}while(0);if((e|0)==21){c=d;if(d)e=22}if((e|0)==22){d=f[d+4>>2]|0;if(j)d=d&i;else if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(g|0)){f[(f[a>>2]|0)+(d<<2)>>2]=k;c=f[b>>2]|0}}f[k>>2]=c;f[b>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;if(!b)return l|0;sOb(b);return l|0}function ZYa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=f[b>>2]|0;h=f[a+4>>2]|0;c=f[b+4>>2]|0;i=h+-1|0;j=(i&h|0)==0;if(j)g=i&c;else if(c>>>0>>0)g=c;else g=(c>>>0)%(h>>>0)|0;d=(f[a>>2]|0)+(g<<2)|0;k=f[d>>2]|0;while(1){c=f[k>>2]|0;if((c|0)==(b|0))break;else k=c}if((k|0)==(a+8|0))e=13;else{c=f[k+4>>2]|0;if(j)c=c&i;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)==(g|0)){d=l;e=21}else e=13}do if((e|0)==13){if(l|0){c=f[l+4>>2]|0;if(j)c=c&i;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;if((c|0)==(g|0)){d=l;c=l;e=22;break}}f[d>>2]=0;d=f[b>>2]|0;e=21}while(0);if((e|0)==21){c=d;if(d)e=22}if((e|0)==22){d=f[d+4>>2]|0;if(j)d=d&i;else if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(g|0)){f[(f[a>>2]|0)+(d<<2)>>2]=k;c=f[b>>2]|0}}f[k>>2]=c;f[b>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;if(!b)return l|0;sOb(b);return l|0}function _Ya(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;g=u;u=u+1328|0;b=f[a+848>>2]|0;if(b|0){c=f[(a+852|0)>>2]|0;if((c|0)!=(b|0))f[(a+852|0)>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[a+836>>2]|0;if(b|0){c=f[(a+840|0)>>2]|0;if((c|0)!=(b|0))f[(a+840|0)>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}$Ya(f[a+804>>2]|0);b=f[(a+796|0)>>2]|0;f[(a+796|0)>>2]=0;if(b|0)sOb(b);aZa(f[a+784>>2]|0);b=f[(a+776|0)>>2]|0;f[(a+776|0)>>2]=0;if(b|0)sOb(b);b=f[(a+772|0)>>2]|0;f[(a+772|0)>>2]=0;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[(a+768|0)>>2]|0;f[(a+768|0)>>2]=0;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[(a+764|0)>>2]|0;f[(a+764|0)>>2]=0;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);b=f[a+752>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;sOb(e)}while((b|0)!=0);b=f[(a+744|0)>>2]|0;f[(a+744|0)>>2]=0;if(b|0)sOb(b);b=f[a+732>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;sOb(e)}while((b|0)!=0);b=f[(a+724|0)>>2]|0;f[(a+724|0)>>2]=0;if(b|0)sOb(b);b=f[a+712>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;sOb(e)}while((b|0)!=0);b=f[(a+704|0)>>2]|0;f[(a+704|0)>>2]=0;if(b|0)sOb(b);b=f[a+692>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;sOb(e)}while((b|0)!=0);b=f[(a+684|0)>>2]|0;f[(a+684|0)>>2]=0;if(b|0)sOb(b);b=f[a+672>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;sOb(e)}while((b|0)!=0);b=f[(a+664|0)>>2]|0;f[(a+664|0)>>2]=0;if(b|0)sOb(b);b=f[a+652>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;sOb(e)}while((b|0)!=0);b=f[(a+644|0)>>2]|0;f[(a+644|0)>>2]=0;if(b|0)sOb(b);b=f[a+632>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;sOb(e)}while((b|0)!=0);b=f[(a+624|0)>>2]|0;f[(a+624|0)>>2]=0;if(b|0)sOb(b);b=f[a+600>>2]|0;if(b|0){c=f[(a+604|0)>>2]|0;if((c|0)!=(b|0))f[(a+604|0)>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[a+588>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;sOb(e)}while((b|0)!=0);b=f[(a+580|0)>>2]|0;f[(a+580|0)>>2]=0;if(b|0)sOb(b);b=f[a+568>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;sOb(e)}while((b|0)!=0);b=f[(a+560|0)>>2]|0;f[(a+560|0)>>2]=0;if(b|0)sOb(b);b=f[a+548>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;sOb(e)}while((b|0)!=0);b=f[(a+540|0)>>2]|0;f[(a+540|0)>>2]=0;if(b|0)sOb(b);b=f[a+524>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;sOb(e)}while((b|0)!=0);b=f[(a+516|0)>>2]|0;f[(a+516|0)>>2]=0;if(b|0)sOb(b);b=f[(a+504|0)>>2]|0;if(b|0){c=f[(a+508|0)>>2]|0;if((c|0)!=(b|0)){do{d=c+-20|0;f[(a+508|0)>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{c=c+-16|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-8-e|0)>>>3)<<3);sOb(e);c=f[(a+508|0)>>2]|0}}while((c|0)!=(b|0));b=f[(a+504|0)>>2]|0}sOb(b)}b=f[(a+492|0)>>2]|0;if(b|0){c=f[(a+496|0)>>2]|0;if((c|0)!=(b|0)){do{d=c+-16|0;f[(a+496|0)>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{c=c+-12|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-8-e|0)>>>3)<<3);sOb(e);c=f[(a+496|0)>>2]|0}}while((c|0)!=(b|0));b=f[(a+492|0)>>2]|0}sOb(b)}NYa(a+464|0,f[a+468>>2]|0);b=f[a+452>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;sOb(e)}while((b|0)!=0);b=f[(a+444|0)>>2]|0;f[(a+444|0)>>2]=0;if(b|0)sOb(b);f[g+16>>2]=a;f[g+1280>>2]=0;f[g+1284>>2]=0;x_a(g);G=f[g+1280>>2]|0;D=f[g+1284>>2]|0;H=+n[g+1284>>2];f[g+1280>>2]=0;f[g+1284>>2]=0;if((G|0)==5){u=g;return}u=g}function $Ya(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;if(!a)return;do{e=a;a=f[a>>2]|0;b=f[e+40>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;c=f[d+20>>2]|0;if(c|0)do{g=c;c=f[c>>2]|0;sOb(g)}while((c|0)!=0);g=d+12|0;c=f[g>>2]|0;f[g>>2]=0;if(c|0)sOb(c);sOb(d)}while((b|0)!=0);g=e+32|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);b=f[e+20>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;sOb(g)}while((b|0)!=0);g=e+12|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0)sOb(b);sOb(e)}while((a|0)!=0);return}function aZa(a){a=a|0;var b=0,c=0,d=0;if(!a)return;do{c=a;a=f[a>>2]|0;b=f[c+144>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;sOb(d)}while((b|0)!=0);d=c+136|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)sOb(b);b=f[c+124>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;sOb(d)}while((b|0)!=0);d=c+116|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)sOb(b);b=f[c+104>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;sOb(d)}while((b|0)!=0);d=c+96|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)sOb(b);b=f[c+84>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;sOb(d)}while((b|0)!=0);d=c+76|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)sOb(b);b=f[c+64>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;sOb(d)}while((b|0)!=0);d=c+56|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)sOb(b);b=f[c+44>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;sOb(d)}while((b|0)!=0);d=c+36|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)sOb(b);b=f[c+24>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;sOb(d)}while((b|0)!=0);d=c+16|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)sOb(b);sOb(c)}while((a|0)!=0);return}function bZa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;f[a>>2]=39160;d=a+4|0;e=pOb(860)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[e+16>>2]=1.0;g=e+20|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;n[e+48>>2]=1.0;g=e+52|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;n[e+80>>2]=1.0;g=e+84|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;n[e+112>>2]=1.0;g=e+116|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;n[e+144>>2]=1.0;g=e+148|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;n[e+176>>2]=1.0;g=e+180|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;n[e+208>>2]=1.0;g=e+212|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;n[e+240>>2]=1.0;g=e+244|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;n[e+272>>2]=1.0;g=e+276|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[e+292>>2]=1.0;g=e+296|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[e+312>>2]=1.0;g=e+316|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[e+332>>2]=1.0;g=e+336|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[e+352>>2]=1.0;g=e+356|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[e+372>>2]=1.0;g=e+376|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;n[e+404>>2]=1.0;g=e+408|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[e+424>>2]=1.0;g=e+432|0;f[g>>2]=0;f[e+436>>2]=0;f[e+428>>2]=g;g=e+440|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;n[e+460>>2]=1.0;g=e+468|0;f[g>>2]=0;f[e+472>>2]=0;f[e+464>>2]=g;f[e+476>>2]=0;b[e+480>>0]=0;n[e+484>>2]=1.0;b[e+488>>0]=0;b[e+489>>0]=0;b[e+490>>0]=0;g=e+532|0;h=e+492|0;i=h+40|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(i|0));n[g>>2]=1.0;i=e+540|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[e+556>>2]=1.0;i=e+560|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[e+576>>2]=1.0;i=e+580|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[e+596>>2]=1.0;f[e+600>>2]=0;f[e+604>>2]=0;f[e+608>>2]=0;i=e+624|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[e+640>>2]=1.0;i=e+644|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[e+660>>2]=1.0;i=e+664|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[e+680>>2]=1.0;i=e+684|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[e+700>>2]=1.0;i=e+704|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[e+720>>2]=1.0;i=e+724|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[e+740>>2]=1.0;i=e+744|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[e+760>>2]=1.0;i=e+764|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[i+24>>2]=0;n[e+792>>2]=1.0;i=e+796|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[e+812>>2]=1.0;f[e+816>>2]=0;f[e+820>>2]=-1;f[e+824>>2]=0;f[e+828>>2]=-1;f[e+832>>2]=a;i=e+836|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;f[d>>2]=e;f[a+8>>2]=c;f[a+12>>2]=0;return}function cZa(a,b){a=a|0;b=b|0;var c=0;a=a+12|0;c=f[a>>2]|0;b=f[b+12>>2]|0;f[a>>2]=(c|0)<(b|0)?b:c;return}function dZa(a){a=a|0;var b=0,c=0,d=0;f[a+12>>2]=1;gh[f[(f[a>>2]|0)+24>>2]&2047](a);b=a+4|0;c=f[b>>2]|0;d=c+600|0;if((f[d>>2]|0)==(f[c+604>>2]|0))return;Gh[f[(f[a>>2]|0)+44>>2]&3](a,d,f[c+612>>2]|0,f[c+616>>2]|0,+n[c+620>>2]);b=f[b>>2]|0;a=f[b+600>>2]|0;b=b+604|0;c=f[b>>2]|0;if((c|0)==(a|0))return;f[b>>2]=c+(~((c+-8-a|0)>>>3)<<3);return}function eZa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;c=a+12|0;if((f[c>>2]|0)==2){h=0;return h|0}f[c>>2]=2;e=a+4|0;g=xYa((f[e>>2]|0)+776|0,39356)|0;b[g>>0]=1;g=a+8|0;h=f[g>>2]|0;d=h+16|0;if(!(b[d>>0]|0)){b[d>>0]=1;lQa(h+4|0)}if((f[c>>2]|0)!=2){h=1;return h|0}fZa(f[e>>2]|0,a,f[(f[g>>2]|0)+232>>2]|0);if((f[c>>2]|0)!=2){h=1;return h|0}gZa(f[e>>2]|0,0);h=1;return h|0}function fZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0;B=u;u=u+3776|0;i=0;d=f[(a+472|0)>>2]|0;if(!d){u=B;return}a:while(1){C=f[(a+464|0)>>2]|0;s=f[C+16>>2]|0;E=f[C+20>>2]|0;r=f[C+4>>2]|0;f[B+16>>2]=a;f[B+24>>2]=b;f[B+32>>2]=c;f[B+480>>2]=j;f[B+512>>2]=m;f[B+816>>2]=s;f[B+824>>2]=E;f[B+1576>>2]=k;f[B+1584>>2]=o;f[B+1752>>2]=C;f[B+1808>>2]=r;f[B+2240>>2]=d;f[B+3256>>2]=h;f[B+3288>>2]=l;f[B+3568>>2]=i;f[B+3592>>2]=e;f[B+3600>>2]=g;f[B+3624>>2]=0;f[B+3628>>2]=0;A_a(B);j=f[B+480>>2]|0;m=f[B+512>>2]|0;k=f[B+1576>>2]|0;o=f[B+1584>>2]|0;h=f[B+3256>>2]|0;l=f[B+3288>>2]|0;i=f[B+3568>>2]|0;e=f[B+3592>>2]|0;g=f[B+3600>>2]|0;G=f[B+3624>>2]|0;D=f[B+3628>>2]|0;H=+n[B+3628>>2];f[B+3624>>2]=0;f[B+3628>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 12:break a}f[B+16>>2]=a;f[B+24>>2]=b;f[B+32>>2]=c;f[B+488>>2]=q;f[B+496>>2]=t;f[B+504>>2]=v;f[B+816>>2]=s;f[B+2240>>2]=d;f[B+2352>>2]=p;f[B+2360>>2]=w;f[B+2856>>2]=x;f[B+2864>>2]=y;f[B+3384>>2]=z;f[B+3392>>2]=A;f[B+3568>>2]=i;f[B+3592>>2]=e;f[B+3600>>2]=g;f[B+3616>>2]=0;f[B+3620>>2]=0;z_a(B);q=f[B+488>>2]|0;t=f[B+496>>2]|0;v=f[B+504>>2]|0;d=f[B+2240>>2]|0;p=f[B+2352>>2]|0;w=f[B+2360>>2]|0;x=f[B+2856>>2]|0;y=f[B+2864>>2]|0;z=f[B+3384>>2]|0;A=f[B+3392>>2]|0;i=f[B+3568>>2]|0;e=f[B+3592>>2]|0;G=f[B+3616>>2]|0;D=f[B+3620>>2]|0;H=+n[B+3620>>2];f[B+3616>>2]=0;f[B+3620>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 12:break a}}r=1;if(r){r=0;if((i|0)==32){b=f[h>>2]|0;d=b+(j*28|0)|0;j=f[l>>2]|0;if((j|0)==(d|0))i=b;else{i=b;do{f[i>>2]=f[d>>2];f[i+4>>2]=f[d+4>>2];g=d+8|0;h=i+8|0;b=f[h>>2]|0;e=i+12|0;if(!b)b=i+16|0;else{c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b);b=i+16|0;f[b>>2]=0;f[e>>2]=0;f[h>>2]=0}f[h>>2]=f[g>>2];E=d+12|0;f[e>>2]=f[E>>2];C=d+16|0;f[b>>2]=f[C>>2];f[C>>2]=0;f[E>>2]=0;f[g>>2]=0;f[d>>2]=0;b=d+24|0;E=i+24|0;C=f[b>>2]|0;f[b>>2]=0;b=f[E>>2]|0;f[E>>2]=C;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);d=d+28|0;i=i+28|0}while((d|0)!=(j|0));d=f[l>>2]|0}if((d|0)==(i|0))i=53;else{do{c=d+-28|0;f[l>>2]=c;E=d+-4|0;b=f[E>>2]|0;f[E>>2]=0;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);b=d+-20|0;e=f[b>>2]|0;g=d+-16|0;if((e|0)==(f[g>>2]|0)){d=f[c>>2]|0;if(!d)d=e;else{tOb(d);d=f[b>>2]|0}}else d=e;if(d|0){b=f[g>>2]|0;if((b|0)!=(d|0))f[g>>2]=b+(~((b+-8-d|0)>>>3)<<3);sOb(d)}d=f[l>>2]|0}while((d|0)!=(i|0));i=53}}else r=1}if(r){r=0;if((i|0)==122){b=f[k>>2]|0;d=b+(m*28|0)|0;j=f[o>>2]|0;if((j|0)==(d|0))i=b;else{i=b;do{f[i>>2]=f[d>>2];f[i+4>>2]=f[d+4>>2];g=d+8|0;h=i+8|0;b=f[h>>2]|0;e=i+12|0;if(!b)b=i+16|0;else{c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b);b=i+16|0;f[b>>2]=0;f[e>>2]=0;f[h>>2]=0}f[h>>2]=f[g>>2];E=d+12|0;f[e>>2]=f[E>>2];C=d+16|0;f[b>>2]=f[C>>2];f[C>>2]=0;f[E>>2]=0;f[g>>2]=0;f[d>>2]=0;b=d+24|0;E=i+24|0;C=f[b>>2]|0;f[b>>2]=0;b=f[E>>2]|0;f[E>>2]=C;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);d=d+28|0;i=i+28|0}while((d|0)!=(j|0));d=f[o>>2]|0}if((d|0)==(i|0))i=143;else{do{c=d+-28|0;f[o>>2]=c;E=d+-4|0;b=f[E>>2]|0;f[E>>2]=0;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);b=d+-20|0;e=f[b>>2]|0;g=d+-16|0;if((e|0)==(f[g>>2]|0)){d=f[c>>2]|0;if(!d)d=e;else{tOb(d);d=f[b>>2]|0}}else d=e;if(d|0){b=f[g>>2]|0;if((b|0)!=(d|0))f[g>>2]=b+(~((b+-8-d|0)>>>3)<<3);sOb(d)}d=f[o>>2]|0}while((d|0)!=(i|0));i=143}}else r=1}if(r){r=0;if((i|0)==264){b=f[p>>2]|0;d=b+(q*28|0)|0;j=f[w>>2]|0;if((j|0)==(d|0))i=b;else{i=b;do{f[i>>2]=f[d>>2];f[i+4>>2]=f[d+4>>2];g=d+8|0;h=i+8|0;b=f[h>>2]|0;e=i+12|0;if(!b)b=i+16|0;else{c=f[e>>2]|0;if((c|0)!=(b|0))f[e>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b);b=i+16|0;f[b>>2]=0;f[e>>2]=0;f[h>>2]=0}f[h>>2]=f[g>>2];E=d+12|0;f[e>>2]=f[E>>2];C=d+16|0;f[b>>2]=f[C>>2];f[C>>2]=0;f[E>>2]=0;f[g>>2]=0;f[d>>2]=0;b=d+24|0;E=i+24|0;C=f[b>>2]|0;f[b>>2]=0;b=f[E>>2]|0;f[E>>2]=C;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);d=d+28|0;i=i+28|0}while((d|0)!=(j|0));d=f[w>>2]|0}if((d|0)==(i|0))i=285;else{do{c=d+-28|0;f[w>>2]=c;E=d+-4|0;b=f[E>>2]|0;f[E>>2]=0;if(b|0)gh[f[(f[b>>2]|0)+4>>2]&2047](b);b=d+-20|0;e=f[b>>2]|0;g=d+-16|0;if((e|0)==(f[g>>2]|0)){d=f[c>>2]|0;if(!d)d=e;else{tOb(d);d=f[b>>2]|0}}else d=e;if(d|0){b=f[g>>2]|0;if((b|0)!=(d|0))f[g>>2]=b+(~((b+-8-d|0)>>>3)<<3);sOb(d)}d=f[w>>2]|0}while((d|0)!=(i|0));i=285}}else r=1}f[B+16>>2]=a;f[B+496>>2]=t;f[B+504>>2]=v;f[B+816>>2]=s;f[B+2856>>2]=x;f[B+2864>>2]=y;f[B+3384>>2]=z;f[B+3392>>2]=A;f[B+3568>>2]=i;f[B+3576>>2]=r;f[B+3608>>2]=0;f[B+3612>>2]=0;y_a(B);G=f[B+3608>>2]|0;D=f[B+3612>>2]|0;H=+n[B+3612>>2];f[B+3608>>2]=0;f[B+3612>>2]=0;if((G|0)==5){u=B;return}u=B}function gZa(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;w=u;u=u+32|0;q=w;p=w+20|0;o=w+16|0;r=w+12|0;s=w+8|0;t=w+4|0;hZa(a);d=a+490|0;if(b[d>>0]|0){v=f[a+832>>2]|0;oh[f[(f[v>>2]|0)+64>>2]&1023](v,(b[a+489>>0]|0)!=0);b[d>>0]=0}l=a+492|0;d=f[l>>2]|0;v=a+496|0;m=f[v>>2]|0;if((d|0)!=(m|0)){n=a+832|0;while(1){g=d+16|0;e=g;a:do if((g|0)!=(m|0)){i=d+13|0;j=d+12|0;k=d+4|0;h=d;while(1){if((b[i>>0]|0)!=(b[h+29>>0]|0))break;if((b[j>>0]|0)!=(b[h+28>>0]|0))break;f[r>>2]=f[k>>2];f[s>>2]=f[g>>2];f[t>>2]=f[h+20>>2];f[o>>2]=f[r>>2];f[p>>2]=f[s>>2];f[q>>2]=f[t>>2];iZa(d,o,p,q)|0;h=g+16|0;e=h;if((h|0)==(m|0))break a;else{x=g;g=h;h=x}}Dwa(f[d>>2]|0,f[k>>2]|0,q);x=f[n>>2]|0;Fh[f[(f[x>>2]|0)+60>>2]&255](x,b[i>>0]|0,d,(b[j>>0]|0)!=0)}while(0);if((m|0)==(e|0))break;else d=e}Dwa(f[d>>2]|0,f[d+4>>2]|0,q);h=f[n>>2]|0;Fh[f[(f[h>>2]|0)+60>>2]&255](h,b[d+13>>0]|0,d,(b[d+12>>0]|0)!=0);h=f[l>>2]|0;d=f[v>>2]|0;if((d|0)!=(h|0))do{e=d+-16|0;f[v>>2]=e;g=f[e>>2]|0;if(!g)d=e;else{d=d+-12|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~((e+-8-g|0)>>>3)<<3);sOb(g);d=f[v>>2]|0}}while((d|0)!=(h|0))}if(f[a+636>>2]|0)jZa(a);if(f[a+676>>2]|0)kZa(a);if(f[a+696>>2]|0)lZa(a);if(f[a+716>>2]|0)mZa(a);if(f[a+756>>2]|0)nZa(a);if(f[a+736>>2]|0)oZa(a);if(f[a+656>>2]|0)pZa(a);if(!c){u=w;return}d=a+536|0;if(b[d>>0]|0){x=f[a+832>>2]|0;gh[f[(f[x>>2]|0)+176>>2]&2047](x);b[d>>0]=0}g=a+560|0;h=a+572|0;if(f[h>>2]|0){x=f[a+832>>2]|0;oh[f[(f[x>>2]|0)+180>>2]&1023](x,g);if(f[h>>2]|0){e=a+568|0;d=f[e>>2]|0;if(d|0)do{x=d;d=f[d>>2]|0;sOb(x)}while((d|0)!=0);f[e>>2]=0;e=f[a+564>>2]|0;if(e|0){d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}}g=a+516|0;h=a+528|0;if(f[h>>2]|0){x=f[a+832>>2]|0;oh[f[(f[x>>2]|0)+188>>2]&1023](x,g);if(f[h>>2]|0){e=a+524|0;d=f[e>>2]|0;if(d|0)do{x=d;d=f[d>>2]|0;sOb(x)}while((d|0)!=0);f[e>>2]=0;e=f[a+520>>2]|0;if(e|0){d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0}}g=a+580|0;h=a+592|0;if(!(f[h>>2]|0)){u=w;return}x=f[a+832>>2]|0;oh[f[(f[x>>2]|0)+184>>2]&1023](x,g);if(!(f[h>>2]|0)){u=w;return}e=a+588|0;d=f[e>>2]|0;if(d|0)do{x=d;d=f[d>>2]|0;sOb(x)}while((d|0)!=0);f[e>>2]=0;e=f[a+584>>2]|0;if(e|0){d=0;do{f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(e|0))}f[h>>2]=0;u=w;return}function hZa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+32|0;r=w;q=w+20|0;p=w+16|0;s=w+12|0;t=w+8|0;v=w+4|0;i=a+552|0;g=f[i>>2]|0;if(g|0){j=a+848|0;h=a+856|0;c=f[j>>2]|0;k=a+852|0;if((f[h>>2]|0)-c>>3>>>0>>0){if(g>>>0>536870911)vd();d=(f[k>>2]|0)-c|0;e=pOb(g<<3)|0;if((d|0)>0)bQb(e|0,c|0,d|0)|0;f[j>>2]=e;f[k>>2]=e+(d>>3<<3);f[h>>2]=e+(g<<3);if(c|0)sOb(c)}f[s>>2]=f[k>>2];d=a+548|0;f[t>>2]=f[d>>2];f[v>>2]=0;f[p>>2]=f[s>>2];f[q>>2]=f[t>>2];f[r>>2]=f[v>>2];m_a(j,p,q,r)|0;if(f[i>>2]|0){c=f[d>>2]|0;if(c|0)do{o=c;c=f[c>>2]|0;sOb(o)}while((c|0)!=0);f[d>>2]=0;d=f[a+544>>2]|0;if(d|0){e=a+540|0;c=0;do{f[(f[e>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(d|0))}f[i>>2]=0}Dwa(f[j>>2]|0,f[k>>2]|0,r);c=f[a+832>>2]|0;oh[f[(f[c>>2]|0)+96>>2]&1023](c,j);c=f[j>>2]|0;d=f[k>>2]|0;if((d|0)!=(c|0))f[k>>2]=d+(~((d+-8-c|0)>>>3)<<3)}c=a+480|0;if(b[c>>0]|0){o=f[a+832>>2]|0;oh[f[(f[o>>2]|0)+88>>2]&1023](o,f[a+476>>2]|0);b[c>>0]=0}c=a+488|0;if(b[c>>0]|0){o=f[a+832>>2]|0;hh[f[(f[o>>2]|0)+92>>2]&63](o,+n[a+484>>2]);b[c>>0]=0}l=a+504|0;c=f[l>>2]|0;o=a+508|0;m=f[o>>2]|0;if((c|0)==(m|0)){u=w;return}a=a+832|0;while(1){e=c+20|0;d=e;a:do if((e|0)!=(m|0)){i=c+16|0;j=c+12|0;k=c+4|0;g=c;h=e;while(1){if((b[i>>0]|0)!=(b[g+36>>0]|0))break;if((f[j>>2]|0)!=(f[g+32>>2]|0))break;f[s>>2]=f[k>>2];f[t>>2]=f[h>>2];f[v>>2]=f[g+24>>2];f[p>>2]=f[s>>2];f[q>>2]=f[t>>2];f[r>>2]=f[v>>2];iZa(c,p,q,r)|0;e=h+20|0;d=e;if((e|0)==(m|0))break a;else{g=h;h=e}}Dwa(f[c>>2]|0,f[k>>2]|0,r);k=f[a>>2]|0;Fh[f[(f[k>>2]|0)+56>>2]&255](k,b[i>>0]|0,c,f[j>>2]|0)}while(0);if((m|0)==(d|0))break;else c=d}Dwa(f[c>>2]|0,f[c+4>>2]|0,r);g=f[a>>2]|0;Fh[f[(f[g>>2]|0)+56>>2]&255](g,b[c+16>>0]|0,c,f[c+12>>2]|0);g=f[l>>2]|0;c=f[o>>2]|0;if((c|0)!=(g|0))do{d=c+-20|0;f[o>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{c=c+-16|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-8-e|0)>>>3)<<3);sOb(e);c=f[o>>2]|0}}while((c|0)!=(g|0));u=w;return}function iZa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=f[a>>2]|0;g=l;h=(f[b>>2]|0)-g|0;r=l+(h>>3<<3)|0;e=f[c>>2]|0;j=f[d>>2]|0;q=j-e|0;i=q>>3;m=e;o=j;if((q|0)<=0)return r|0;p=a+8|0;d=f[p>>2]|0;q=a+4|0;n=f[q>>2]|0;b=n;if((i|0)<=(d-b>>3|0)){h=b-r|0;b=h>>3;if((i|0)>(b|0)){d=m+(b<<3)|0;g=d;if((d|0)==(o|0))b=n;else{b=n;do{p=d;a=f[p+4>>2]|0;f[b>>2]=f[p>>2];f[b+4>>2]=a;d=d+8|0;b=(f[q>>2]|0)+8|0;f[q>>2]=b}while((d|0)!=(o|0))}if((h|0)>0)j=g;else return r|0}else b=n;h=b-(r+(i<<3))|0;i=h>>3;d=r+(i<<3)|0;if(d>>>0>>0){g=b;do{o=d;p=f[o+4>>2]|0;a=g;f[a>>2]=f[o>>2];f[a+4>>2]=p;d=d+8|0;g=(f[q>>2]|0)+8|0;f[q>>2]=g}while(d>>>0>>0)}if(i){cQb(b+(0-i<<3)|0,r|0,h|0)|0;e=f[c>>2]|0}b=j-e|0;if(!b)return r|0;cQb(r|0,e|0,b|0)|0;return r|0}b=(b-g>>3)+i|0;if(b>>>0>536870911)AMb(a);i=d-g|0;d=i>>2;d=i>>3>>>0<268435455?(d>>>0>>0?b:d):536870911;i=r;b=h>>3;do if(!d)k=0;else if(d>>>0>536870911)vd();else{k=pOb(d<<3)|0;break}while(0);j=k+(b<<3)|0;e=j;h=k+(d<<3)|0;if((o|0)==(m|0))b=l;else{d=j;b=m;do{m=b;n=f[m+4>>2]|0;c=d;f[c>>2]=f[m>>2];f[c+4>>2]=n;d=e+8|0;e=d;b=b+8|0}while((b|0)!=(o|0));b=f[a>>2]|0}d=i-b|0;g=j+(0-(d>>3)<<3)|0;if((d|0)>0)bQb(g|0,b|0,d|0)|0;d=(f[q>>2]|0)-i|0;if((d|0)>0){bQb(e|0,r|0,d|0)|0;e=e+(d>>>3<<3)|0;b=f[a>>2]|0}f[a>>2]=g;f[q>>2]=e;f[p>>2]=h;if(!b){r=j;return r|0}sOb(b);r=j;return r|0}function jZa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;N=u;u=u+16|0;H=N;I=N+4|0;K=a+836|0;M=a+636|0;e=f[M>>2]|0;L=a+844|0;g=f[K>>2]|0;J=a+840|0;if((f[L>>2]|0)-g>>3>>>0>>0){if(e>>>0>536870911)vd();c=(f[J>>2]|0)-g|0;d=pOb(e<<3)|0;if((c|0)>0)bQb(d|0,g|0,c|0)|0;f[K>>2]=d;f[J>>2]=d+(c>>3<<3);f[L>>2]=d+(e<<3);if(g|0)sOb(g)}G=a+632|0;z=a+816|0;A=a+4|0;B=a+12|0;C=a+16|0;D=a+8|0;x=a+20|0;y=a+24|0;E=a+832|0;w=191184;a:while(1){g=b[w>>0]|0;v=g<<24>>24!=0;c=f[G>>2]|0;if(c|0)do{d=c;do if((b[d+16>>0]|0)==g<<24>>24){d=d+8|0;e=f[J>>2]|0;if((e|0)==(f[L>>2]|0)){SD(K,d);break}else{r=d;s=f[r+4>>2]|0;t=e;f[t>>2]=f[r>>2];f[t+4>>2]=s;f[J>>2]=(f[J>>2]|0)+8;break}}while(0);c=f[c>>2]|0}while((c|0)!=0);c=f[K>>2]|0;d=f[J>>2]|0;if((c|0)!=(d|0)){f_a(c,d,H);t=(f[z>>2]|0)+1|0;f[z>>2]=t;j=f[A>>2]|0;k=(j|0)==0;b:do if(k){c=0;F=40}else{g=j+-1|0;e=(g&j|0)==0;if(e)c=g&t;else if(j>>>0>t>>>0)c=t;else c=(t>>>0)%(j>>>0)|0;d=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!d)F=40;else{if(e)while(1){d=f[d>>2]|0;if(!d){F=40;break b}s=f[d+4>>2]|0;if(!((s|0)==(t|0)|(s&g|0)==(c|0))){F=40;break b}if((f[d+8>>2]|0)==(t|0))break b}do{d=f[d>>2]|0;if(!d){F=40;break b}e=f[d+4>>2]|0;if((e|0)!=(t|0)){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;if((e|0)!=(c|0)){F=40;break b}}}while((f[d+8>>2]|0)!=(t|0))}}while(0);if((F|0)==40){F=0;g=pOb(24)|0;f[g+8>>2]=t;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+4>>2]=t;f[g>>2]=0;h=+(((f[B>>2]|0)+1|0)>>>0);i=+n[C>>2];do if(k|i*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;d=~~+W(+(h/i))>>>0;g_a(a,c>>>0>>0?d:c);c=f[A>>2]|0;d=c+-1|0;if(!(d&c)){e=c;c=d&t;break}if(c>>>0>t>>>0){e=c;c=t}else{e=c;c=(t>>>0)%(c>>>0)|0}}else e=j;while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){f[g>>2]=f[D>>2];f[D>>2]=g;f[d>>2]=D;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;F=53}}else{f[g>>2]=f[c>>2];F=53}if((F|0)==53){F=0;f[c>>2]=g}f[B>>2]=(f[B>>2]|0)+1;d=g}r=d+12|0;c=f[x>>2]|0;q=f[y>>2]|0;if((c|0)!=(q|0)){s=d+16|0;p=d+20|0;do{d=f[s>>2]|0;o=f[p>>2]|0;e=o;if(d>>>0>>0){f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];o=d+8|0;m=c+8|0;f[o>>2]=0;l=d+12|0;f[l>>2]=0;f[d+16>>2]=0;f[o>>2]=f[m>>2];o=c+12|0;f[l>>2]=f[o>>2];l=c+16|0;f[d+16>>2]=f[l>>2];f[l>>2]=0;f[o>>2]=0;f[m>>2]=0;f[c>>2]=0;f[d+20>>2]=f[c+20>>2];m=c+24|0;o=f[m>>2]|0;f[m>>2]=0;f[d+24>>2]=o;f[s>>2]=(f[s>>2]|0)+28}else{g=f[r>>2]|0;j=(d-g|0)/28|0;d=j+1|0;if(d>>>0>153391689){F=71;break a}m=(e-g|0)/28|0;o=m<<1;d=m>>>0<76695844?(o>>>0>>0?d:o):153391689;if(!d)e=0;else{if(d>>>0>153391689){F=74;break a}e=pOb(d*28|0)|0}k=e+(j*28|0)|0;g=k;m=e+(d*28|0)|0;f[k>>2]=f[c>>2];f[e+(j*28|0)+4>>2]=f[c+4>>2];d=c+8|0;f[e+(j*28|0)+16>>2]=0;f[e+(j*28|0)+8>>2]=f[d>>2];l=c+12|0;f[e+(j*28|0)+12>>2]=f[l>>2];o=c+16|0;f[e+(j*28|0)+16>>2]=f[o>>2];f[o>>2]=0;f[l>>2]=0;f[d>>2]=0;f[c>>2]=0;f[e+(j*28|0)+20>>2]=f[c+20>>2];d=c+24|0;l=f[d>>2]|0;f[d>>2]=0;f[e+(j*28|0)+24>>2]=l;l=k+28|0;j=f[r>>2]|0;d=f[s>>2]|0;if((d|0)==(j|0)){d=g;o=j;e=j}else{e=k;do{k=d;d=d+-28|0;f[e+-28>>2]=f[d>>2];f[e+-24>>2]=f[k+-24>>2];O=e+-20|0;o=k+-20|0;f[O>>2]=0;P=e+-16|0;f[P>>2]=0;f[e+-12>>2]=0;f[O>>2]=f[o>>2];O=k+-16|0;f[P>>2]=f[O>>2];P=k+-12|0;f[e+-12>>2]=f[P>>2];f[P>>2]=0;f[O>>2]=0;f[o>>2]=0;f[d>>2]=0;f[e+-8>>2]=f[k+-8>>2];k=k+-4|0;o=f[k>>2]|0;f[k>>2]=0;f[e+-4>>2]=o;e=g+-28|0;g=e}while((d|0)!=(j|0));d=g;o=f[r>>2]|0;e=f[s>>2]|0}f[r>>2]=d;f[s>>2]=l;f[p>>2]=m;l=o;if((e|0)!=(l|0))do{P=e+-4|0;d=f[P>>2]|0;f[P>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);g=e+-20|0;d=f[g>>2]|0;k=e+-16|0;e=e+-28|0;do if((d|0)==(f[k>>2]|0)){j=f[e>>2]|0;if(!j)break;tOb(j);d=f[g>>2]|0}while(0);if(d|0){g=f[k>>2]|0;if((g|0)!=(d|0))f[k>>2]=g+(~((g+-8-d|0)>>>3)<<3);sOb(d)}}while((e|0)!=(l|0));if(o|0)sOb(o)}c=c+28|0}while((c|0)!=(q|0));k=f[x>>2]|0;c=f[y>>2]|0;if((c|0)!=(k|0))do{e=c+-28|0;f[y>>2]=e;P=c+-4|0;d=f[P>>2]|0;f[P>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;g=f[d>>2]|0;j=c+-16|0;if((g|0)==(f[j>>2]|0)){c=f[e>>2]|0;if(!c)c=g;else{tOb(c);c=f[d>>2]|0}}else c=g;if(c|0){d=f[j>>2]|0;if((d|0)!=(c|0))f[j>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}c=f[y>>2]|0}while((c|0)!=(k|0))}c=f[E>>2]|0;d=f[(f[c>>2]|0)+128>>2]|0;f[I>>2]=t;f[H>>2]=f[I>>2];Fh[d&255](c,H,K,v);c=f[K>>2]|0;d=f[J>>2]|0;if((d|0)!=(c|0))f[J>>2]=d+(~((d+-8-c|0)>>>3)<<3)}w=w+1|0;if((w|0)==191186){F=9;break}}if((F|0)==9){if(!(f[M>>2]|0)){u=N;return}c=f[G>>2]|0;if(c|0)do{P=c;c=f[c>>2]|0;sOb(P)}while((c|0)!=0);f[G>>2]=0;e=f[a+628>>2]|0;if(e|0){d=a+624|0;c=0;do{f[(f[d>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(e|0))}f[M>>2]=0;u=N;return}else if((F|0)==71)AMb(r);else if((F|0)==74)vd()}function kZa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=u;u=u+16|0;l=r;m=r+4|0;n=a+836|0;q=a+676|0;e=f[q>>2]|0;k=a+844|0;g=f[n>>2]|0;p=a+840|0;if((f[k>>2]|0)-g>>3>>>0>>0){if(e>>>0>536870911)vd();c=(f[p>>2]|0)-g|0;d=pOb(e<<3)|0;if((c|0)>0)bQb(d|0,g|0,c|0)|0;f[n>>2]=d;f[p>>2]=d+(c>>3<<3);f[k>>2]=d+(e<<3);if(g|0)sOb(g)}o=a+672|0;h=a+816|0;g=a+64|0;i=a+832|0;j=a+96|0;c=f[o>>2]|0;if(c|0)do{d=c;do if((b[d+16>>0]|0)==1){d=d+8|0;e=f[p>>2]|0;if((e|0)==(f[k>>2]|0)){b_a(n,d);break}else{s=d;d=f[s+4>>2]|0;f[e>>2]=f[s>>2];f[e+4>>2]=d;f[p>>2]=(f[p>>2]|0)+8;break}}while(0);c=f[c>>2]|0}while((c|0)!=0);d=f[n>>2]|0;c=f[p>>2]|0;if((d|0)==(c|0))c=d;else{cFa(d,c,l);s=(f[h>>2]|0)+1|0;f[h>>2]=s;c_a(s,g);d=f[i>>2]|0;c=f[(f[d>>2]|0)+124>>2]|0;f[m>>2]=s;f[l>>2]=f[m>>2];Fh[c&255](d,l,n,1);d=f[n>>2]|0;c=f[p>>2]|0;if((c|0)==(d|0))c=d;else{c=c+(~((c+-8-d|0)>>>3)<<3)|0;f[p>>2]=c}}e=f[o>>2]|0;if(e){do{c=e;do if(!(b[c+16>>0]|0)){c=c+8|0;d=f[p>>2]|0;if((d|0)==(f[k>>2]|0)){b_a(n,c);break}else{g=f[c+4>>2]|0;s=d;f[s>>2]=f[c>>2];f[s+4>>2]=g;f[p>>2]=(f[p>>2]|0)+8;break}}while(0);e=f[e>>2]|0}while((e|0)!=0);d=f[n>>2]|0;c=f[p>>2]|0}if((d|0)!=(c|0)){cFa(d,c,l);s=(f[h>>2]|0)+1|0;f[h>>2]=s;c_a(s,j);c=f[i>>2]|0;d=f[(f[c>>2]|0)+124>>2]|0;f[m>>2]=s;f[l>>2]=f[m>>2];Fh[d&255](c,l,n,0);c=f[n>>2]|0;d=f[p>>2]|0;if((d|0)!=(c|0))f[p>>2]=d+(~((d+-8-c|0)>>>3)<<3)}if(!(f[q>>2]|0)){u=r;return}c=f[o>>2]|0;if(c|0)do{s=c;c=f[c>>2]|0;sOb(s)}while((c|0)!=0);f[o>>2]=0;e=f[a+668>>2]|0;if(e|0){d=a+664|0;c=0;do{f[(f[d>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(e|0))}f[q>>2]=0;u=r;return}function lZa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;A=u;u=u+32|0;w=A;k=A+24|0;j=A+20|0;l=A+16|0;m=A+8|0;o=A+4|0;x=A+12|0;y=a+836|0;p=a+696|0;e=f[p>>2]|0;g=a+844|0;b=f[y>>2]|0;z=a+840|0;if((f[g>>2]|0)-b>>3>>>0>>0){if(e>>>0>536870911)vd();c=(f[z>>2]|0)-b|0;d=pOb(e<<3)|0;if((c|0)>0)bQb(d|0,b|0,c|0)|0;f[y>>2]=d;f[z>>2]=d+(c>>3<<3);f[g>>2]=d+(e<<3);if(b|0)sOb(b)}f[l>>2]=f[z>>2];c=a+692|0;f[m>>2]=f[c>>2];f[o>>2]=0;f[j>>2]=f[l>>2];f[k>>2]=f[m>>2];f[w>>2]=f[o>>2];VZa(y,j,k,w)|0;if(f[p>>2]|0){b=f[c>>2]|0;if(b|0)do{v=b;b=f[b>>2]|0;sOb(v)}while((b|0)!=0);f[c>>2]=0;c=f[a+688>>2]|0;if(c|0){d=a+684|0;b=0;do{f[(f[d>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[p>>2]=0}WZa(f[y>>2]|0,f[z>>2]|0,w);m=a+816|0;v=(f[m>>2]|0)+1|0;f[m>>2]=v;m=a+128|0;g=a+132|0;j=f[g>>2]|0;k=(j|0)==0;a:do if(k){b=0;q=31}else{e=j+-1|0;d=(e&j|0)==0;if(d)b=e&v;else if(j>>>0>v>>>0)b=v;else b=(v>>>0)%(j>>>0)|0;c=f[(f[m>>2]|0)+(b<<2)>>2]|0;if(!c)q=31;else{if(d)while(1){c=f[c>>2]|0;if(!c){q=31;break a}t=f[c+4>>2]|0;if(!((t|0)==(v|0)|(t&e|0)==(b|0))){q=31;break a}if((f[c+8>>2]|0)==(v|0))break a}do{c=f[c>>2]|0;if(!c){q=31;break a}d=f[c+4>>2]|0;if((d|0)!=(v|0)){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)!=(b|0)){q=31;break a}}}while((f[c+8>>2]|0)!=(v|0))}}while(0);if((q|0)==31){e=pOb(24)|0;f[e+8>>2]=v;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=v;f[e>>2]=0;l=a+140|0;h=+(((f[l>>2]|0)+1|0)>>>0);i=+n[a+144>>2];do if(k|i*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(h/i))>>>0;XZa(m,b>>>0>>0?c:b);b=f[g>>2]|0;c=b+-1|0;if(!(c&b)){d=b;b=c&v;break}if(b>>>0>v>>>0){d=b;b=v}else{d=b;b=(v>>>0)%(b>>>0)|0}}else d=j;while(0);c=(f[m>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+136|0;f[e>>2]=f[b>>2];f[b>>2]=e;f[c>>2]=b;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;b=(f[m>>2]|0)+(b<<2)|0;q=44}}else{f[e>>2]=f[b>>2];q=44}if((q|0)==44)f[b>>2]=e;f[l>>2]=(f[l>>2]|0)+1;c=e}s=c+12|0;r=a+148|0;b=f[r>>2]|0;t=a+152|0;p=f[t>>2]|0;do if((b|0)!=(p|0)){q=c+16|0;o=c+20|0;while(1){c=f[q>>2]|0;m=f[o>>2]|0;d=m;if(c>>>0>>0){f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];m=c+8|0;l=b+8|0;f[m>>2]=0;k=c+12|0;f[k>>2]=0;f[c+16>>2]=0;f[m>>2]=f[l>>2];m=b+12|0;f[k>>2]=f[m>>2];k=b+16|0;f[c+16>>2]=f[k>>2];f[k>>2]=0;f[m>>2]=0;f[l>>2]=0;f[b>>2]=0;l=b+24|0;m=f[l>>2]|0;f[l>>2]=0;f[c+24>>2]=m;f[q>>2]=(f[q>>2]|0)+28}else{e=f[s>>2]|0;g=(c-e|0)/28|0;c=g+1|0;if(c>>>0>153391689){q=62;break}l=(d-e|0)/28|0;m=l<<1;c=l>>>0<76695844?(m>>>0>>0?c:m):153391689;if(!c)d=0;else{if(c>>>0>153391689){q=65;break}d=pOb(c*28|0)|0}j=d+(g*28|0)|0;e=j;l=d+(c*28|0)|0;f[j>>2]=f[b>>2];f[d+(g*28|0)+4>>2]=f[b+4>>2];c=b+8|0;f[d+(g*28|0)+16>>2]=0;f[d+(g*28|0)+8>>2]=f[c>>2];k=b+12|0;f[d+(g*28|0)+12>>2]=f[k>>2];m=b+16|0;f[d+(g*28|0)+16>>2]=f[m>>2];f[m>>2]=0;f[k>>2]=0;f[c>>2]=0;f[b>>2]=0;c=b+24|0;k=f[c>>2]|0;f[c>>2]=0;f[d+(g*28|0)+24>>2]=k;k=j+28|0;g=f[s>>2]|0;c=f[q>>2]|0;if((c|0)==(g|0)){c=e;m=g;d=g}else{d=j;do{j=c;c=c+-28|0;f[d+-28>>2]=f[c>>2];f[d+-24>>2]=f[j+-24>>2];B=d+-20|0;m=j+-20|0;f[B>>2]=0;C=d+-16|0;f[C>>2]=0;f[d+-12>>2]=0;f[B>>2]=f[m>>2];B=j+-16|0;f[C>>2]=f[B>>2];C=j+-12|0;f[d+-12>>2]=f[C>>2];f[C>>2]=0;f[B>>2]=0;f[m>>2]=0;f[c>>2]=0;j=j+-4|0;m=f[j>>2]|0;f[j>>2]=0;f[d+-4>>2]=m;d=e+-28|0;e=d}while((c|0)!=(g|0));c=e;m=f[s>>2]|0;d=f[q>>2]|0}f[s>>2]=c;f[q>>2]=k;f[o>>2]=l;k=m;if((d|0)!=(k|0))do{C=d+-4|0;c=f[C>>2]|0;f[C>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);e=d+-20|0;c=f[e>>2]|0;j=d+-16|0;d=d+-28|0;if((c|0)==(f[j>>2]|0)){g=f[d>>2]|0;if(g){tOb(g);c=f[e>>2]|0}}if(c|0){e=f[j>>2]|0;if((e|0)!=(c|0))f[j>>2]=e+(~((e+-8-c|0)>>>3)<<3);sOb(c)}}while((d|0)!=(k|0));if(m|0)sOb(m)}b=b+28|0;if((b|0)==(p|0)){q=48;break}}if((q|0)==48){j=f[r>>2]|0;b=f[t>>2]|0;if((b|0)==(j|0))break;do{d=b+-28|0;f[t>>2]=d;C=b+-4|0;c=f[C>>2]|0;f[C>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;e=f[c>>2]|0;g=b+-16|0;if((e|0)==(f[g>>2]|0)){b=f[d>>2]|0;if(!b)b=e;else{tOb(b);b=f[c>>2]|0}}else b=e;if(b|0){c=f[g>>2]|0;if((c|0)!=(b|0))f[g>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[t>>2]|0}while((b|0)!=(j|0))}else if((q|0)==62)AMb(s);else if((q|0)==65)vd()}while(0);b=f[a+832>>2]|0;c=f[(f[b>>2]|0)+132>>2]|0;f[x>>2]=v;f[w>>2]=f[x>>2];xh[c&127](b,w,y);b=f[y>>2]|0;c=f[z>>2]|0;if((c|0)==(b|0)){u=A;return}f[z>>2]=c+(~((c+-8-b|0)>>>3)<<3);u=A;return}function mZa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;A=u;u=u+32|0;w=A;k=A+24|0;j=A+20|0;l=A+16|0;m=A+8|0;o=A+4|0;x=A+12|0;y=a+836|0;p=a+716|0;e=f[p>>2]|0;g=a+844|0;b=f[y>>2]|0;z=a+840|0;if((f[g>>2]|0)-b>>3>>>0>>0){if(e>>>0>536870911)vd();c=(f[z>>2]|0)-b|0;d=pOb(e<<3)|0;if((c|0)>0)bQb(d|0,b|0,c|0)|0;f[y>>2]=d;f[z>>2]=d+(c>>3<<3);f[g>>2]=d+(e<<3);if(b|0)sOb(b)}f[l>>2]=f[z>>2];c=a+712|0;f[m>>2]=f[c>>2];f[o>>2]=0;f[j>>2]=f[l>>2];f[k>>2]=f[m>>2];f[w>>2]=f[o>>2];NZa(y,j,k,w)|0;if(f[p>>2]|0){b=f[c>>2]|0;if(b|0)do{v=b;b=f[b>>2]|0;sOb(v)}while((b|0)!=0);f[c>>2]=0;c=f[a+708>>2]|0;if(c|0){d=a+704|0;b=0;do{f[(f[d>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[p>>2]=0}OZa(f[y>>2]|0,f[z>>2]|0,w);m=a+816|0;v=(f[m>>2]|0)+1|0;f[m>>2]=v;m=a+160|0;g=a+164|0;j=f[g>>2]|0;k=(j|0)==0;a:do if(k){b=0;q=31}else{e=j+-1|0;d=(e&j|0)==0;if(d)b=e&v;else if(j>>>0>v>>>0)b=v;else b=(v>>>0)%(j>>>0)|0;c=f[(f[m>>2]|0)+(b<<2)>>2]|0;if(!c)q=31;else{if(d)while(1){c=f[c>>2]|0;if(!c){q=31;break a}t=f[c+4>>2]|0;if(!((t|0)==(v|0)|(t&e|0)==(b|0))){q=31;break a}if((f[c+8>>2]|0)==(v|0))break a}do{c=f[c>>2]|0;if(!c){q=31;break a}d=f[c+4>>2]|0;if((d|0)!=(v|0)){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)!=(b|0)){q=31;break a}}}while((f[c+8>>2]|0)!=(v|0))}}while(0);if((q|0)==31){e=pOb(24)|0;f[e+8>>2]=v;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=v;f[e>>2]=0;l=a+172|0;h=+(((f[l>>2]|0)+1|0)>>>0);i=+n[a+176>>2];do if(k|i*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(h/i))>>>0;PZa(m,b>>>0>>0?c:b);b=f[g>>2]|0;c=b+-1|0;if(!(c&b)){d=b;b=c&v;break}if(b>>>0>v>>>0){d=b;b=v}else{d=b;b=(v>>>0)%(b>>>0)|0}}else d=j;while(0);c=(f[m>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+168|0;f[e>>2]=f[b>>2];f[b>>2]=e;f[c>>2]=b;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;b=(f[m>>2]|0)+(b<<2)|0;q=44}}else{f[e>>2]=f[b>>2];q=44}if((q|0)==44)f[b>>2]=e;f[l>>2]=(f[l>>2]|0)+1;c=e}s=c+12|0;r=a+180|0;b=f[r>>2]|0;t=a+184|0;p=f[t>>2]|0;do if((b|0)!=(p|0)){q=c+16|0;o=c+20|0;while(1){c=f[q>>2]|0;m=f[o>>2]|0;d=m;if(c>>>0>>0){f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];m=c+8|0;l=b+8|0;f[m>>2]=0;k=c+12|0;f[k>>2]=0;f[c+16>>2]=0;f[m>>2]=f[l>>2];m=b+12|0;f[k>>2]=f[m>>2];k=b+16|0;f[c+16>>2]=f[k>>2];f[k>>2]=0;f[m>>2]=0;f[l>>2]=0;f[b>>2]=0;l=b+24|0;m=f[l>>2]|0;f[l>>2]=0;f[c+24>>2]=m;f[q>>2]=(f[q>>2]|0)+28}else{e=f[s>>2]|0;g=(c-e|0)/28|0;c=g+1|0;if(c>>>0>153391689){q=62;break}l=(d-e|0)/28|0;m=l<<1;c=l>>>0<76695844?(m>>>0>>0?c:m):153391689;if(!c)d=0;else{if(c>>>0>153391689){q=65;break}d=pOb(c*28|0)|0}j=d+(g*28|0)|0;e=j;l=d+(c*28|0)|0;f[j>>2]=f[b>>2];f[d+(g*28|0)+4>>2]=f[b+4>>2];c=b+8|0;f[d+(g*28|0)+16>>2]=0;f[d+(g*28|0)+8>>2]=f[c>>2];k=b+12|0;f[d+(g*28|0)+12>>2]=f[k>>2];m=b+16|0;f[d+(g*28|0)+16>>2]=f[m>>2];f[m>>2]=0;f[k>>2]=0;f[c>>2]=0;f[b>>2]=0;c=b+24|0;k=f[c>>2]|0;f[c>>2]=0;f[d+(g*28|0)+24>>2]=k;k=j+28|0;g=f[s>>2]|0;c=f[q>>2]|0;if((c|0)==(g|0)){c=e;m=g;d=g}else{d=j;do{j=c;c=c+-28|0;f[d+-28>>2]=f[c>>2];f[d+-24>>2]=f[j+-24>>2];B=d+-20|0;m=j+-20|0;f[B>>2]=0;C=d+-16|0;f[C>>2]=0;f[d+-12>>2]=0;f[B>>2]=f[m>>2];B=j+-16|0;f[C>>2]=f[B>>2];C=j+-12|0;f[d+-12>>2]=f[C>>2];f[C>>2]=0;f[B>>2]=0;f[m>>2]=0;f[c>>2]=0;j=j+-4|0;m=f[j>>2]|0;f[j>>2]=0;f[d+-4>>2]=m;d=e+-28|0;e=d}while((c|0)!=(g|0));c=e;m=f[s>>2]|0;d=f[q>>2]|0}f[s>>2]=c;f[q>>2]=k;f[o>>2]=l;k=m;if((d|0)!=(k|0))do{C=d+-4|0;c=f[C>>2]|0;f[C>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);e=d+-20|0;c=f[e>>2]|0;j=d+-16|0;d=d+-28|0;if((c|0)==(f[j>>2]|0)){g=f[d>>2]|0;if(g){tOb(g);c=f[e>>2]|0}}if(c|0){e=f[j>>2]|0;if((e|0)!=(c|0))f[j>>2]=e+(~((e+-8-c|0)>>>3)<<3);sOb(c)}}while((d|0)!=(k|0));if(m|0)sOb(m)}b=b+28|0;if((b|0)==(p|0)){q=48;break}}if((q|0)==48){j=f[r>>2]|0;b=f[t>>2]|0;if((b|0)==(j|0))break;do{d=b+-28|0;f[t>>2]=d;C=b+-4|0;c=f[C>>2]|0;f[C>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;e=f[c>>2]|0;g=b+-16|0;if((e|0)==(f[g>>2]|0)){b=f[d>>2]|0;if(!b)b=e;else{tOb(b);b=f[c>>2]|0}}else b=e;if(b|0){c=f[g>>2]|0;if((c|0)!=(b|0))f[g>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[t>>2]|0}while((b|0)!=(j|0))}else if((q|0)==62)AMb(s);else if((q|0)==65)vd()}while(0);b=f[a+832>>2]|0;c=f[(f[b>>2]|0)+136>>2]|0;f[x>>2]=v;f[w>>2]=f[x>>2];xh[c&127](b,w,y);b=f[y>>2]|0;c=f[z>>2]|0;if((c|0)==(b|0)){u=A;return}f[z>>2]=c+(~((c+-8-b|0)>>>3)<<3);u=A;return}function nZa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;A=u;u=u+32|0;w=A;k=A+24|0;j=A+20|0;l=A+16|0;m=A+8|0;o=A+4|0;x=A+12|0;y=a+836|0;p=a+756|0;e=f[p>>2]|0;g=a+844|0;b=f[y>>2]|0;z=a+840|0;if((f[g>>2]|0)-b>>3>>>0>>0){if(e>>>0>536870911)vd();c=(f[z>>2]|0)-b|0;d=pOb(e<<3)|0;if((c|0)>0)bQb(d|0,b|0,c|0)|0;f[y>>2]=d;f[z>>2]=d+(c>>3<<3);f[g>>2]=d+(e<<3);if(b|0)sOb(b)}f[l>>2]=f[z>>2];c=a+752|0;f[m>>2]=f[c>>2];f[o>>2]=0;f[j>>2]=f[l>>2];f[k>>2]=f[m>>2];f[w>>2]=f[o>>2];FZa(y,j,k,w)|0;if(f[p>>2]|0){b=f[c>>2]|0;if(b|0)do{v=b;b=f[b>>2]|0;sOb(v)}while((b|0)!=0);f[c>>2]=0;c=f[a+748>>2]|0;if(c|0){d=a+744|0;b=0;do{f[(f[d>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[p>>2]=0}GZa(f[y>>2]|0,f[z>>2]|0,w);m=a+816|0;v=(f[m>>2]|0)+1|0;f[m>>2]=v;m=a+224|0;g=a+228|0;j=f[g>>2]|0;k=(j|0)==0;a:do if(k){b=0;q=31}else{e=j+-1|0;d=(e&j|0)==0;if(d)b=e&v;else if(j>>>0>v>>>0)b=v;else b=(v>>>0)%(j>>>0)|0;c=f[(f[m>>2]|0)+(b<<2)>>2]|0;if(!c)q=31;else{if(d)while(1){c=f[c>>2]|0;if(!c){q=31;break a}t=f[c+4>>2]|0;if(!((t|0)==(v|0)|(t&e|0)==(b|0))){q=31;break a}if((f[c+8>>2]|0)==(v|0))break a}do{c=f[c>>2]|0;if(!c){q=31;break a}d=f[c+4>>2]|0;if((d|0)!=(v|0)){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)!=(b|0)){q=31;break a}}}while((f[c+8>>2]|0)!=(v|0))}}while(0);if((q|0)==31){e=pOb(24)|0;f[e+8>>2]=v;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=v;f[e>>2]=0;l=a+236|0;h=+(((f[l>>2]|0)+1|0)>>>0);i=+n[a+240>>2];do if(k|i*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(h/i))>>>0;HZa(m,b>>>0>>0?c:b);b=f[g>>2]|0;c=b+-1|0;if(!(c&b)){d=b;b=c&v;break}if(b>>>0>v>>>0){d=b;b=v}else{d=b;b=(v>>>0)%(b>>>0)|0}}else d=j;while(0);c=(f[m>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+232|0;f[e>>2]=f[b>>2];f[b>>2]=e;f[c>>2]=b;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;b=(f[m>>2]|0)+(b<<2)|0;q=44}}else{f[e>>2]=f[b>>2];q=44}if((q|0)==44)f[b>>2]=e;f[l>>2]=(f[l>>2]|0)+1;c=e}s=c+12|0;r=a+244|0;b=f[r>>2]|0;t=a+248|0;p=f[t>>2]|0;do if((b|0)!=(p|0)){q=c+16|0;o=c+20|0;while(1){c=f[q>>2]|0;m=f[o>>2]|0;d=m;if(c>>>0>>0){f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];m=c+8|0;l=b+8|0;f[m>>2]=0;k=c+12|0;f[k>>2]=0;f[c+16>>2]=0;f[m>>2]=f[l>>2];m=b+12|0;f[k>>2]=f[m>>2];k=b+16|0;f[c+16>>2]=f[k>>2];f[k>>2]=0;f[m>>2]=0;f[l>>2]=0;f[b>>2]=0;l=b+24|0;m=f[l>>2]|0;f[l>>2]=0;f[c+24>>2]=m;f[q>>2]=(f[q>>2]|0)+28}else{e=f[s>>2]|0;g=(c-e|0)/28|0;c=g+1|0;if(c>>>0>153391689){q=62;break}l=(d-e|0)/28|0;m=l<<1;c=l>>>0<76695844?(m>>>0>>0?c:m):153391689;if(!c)d=0;else{if(c>>>0>153391689){q=65;break}d=pOb(c*28|0)|0}j=d+(g*28|0)|0;e=j;l=d+(c*28|0)|0;f[j>>2]=f[b>>2];f[d+(g*28|0)+4>>2]=f[b+4>>2];c=b+8|0;f[d+(g*28|0)+16>>2]=0;f[d+(g*28|0)+8>>2]=f[c>>2];k=b+12|0;f[d+(g*28|0)+12>>2]=f[k>>2];m=b+16|0;f[d+(g*28|0)+16>>2]=f[m>>2];f[m>>2]=0;f[k>>2]=0;f[c>>2]=0;f[b>>2]=0;c=b+24|0;k=f[c>>2]|0;f[c>>2]=0;f[d+(g*28|0)+24>>2]=k;k=j+28|0;g=f[s>>2]|0;c=f[q>>2]|0;if((c|0)==(g|0)){c=e;m=g;d=g}else{d=j;do{j=c;c=c+-28|0;f[d+-28>>2]=f[c>>2];f[d+-24>>2]=f[j+-24>>2];B=d+-20|0;m=j+-20|0;f[B>>2]=0;C=d+-16|0;f[C>>2]=0;f[d+-12>>2]=0;f[B>>2]=f[m>>2];B=j+-16|0;f[C>>2]=f[B>>2];C=j+-12|0;f[d+-12>>2]=f[C>>2];f[C>>2]=0;f[B>>2]=0;f[m>>2]=0;f[c>>2]=0;j=j+-4|0;m=f[j>>2]|0;f[j>>2]=0;f[d+-4>>2]=m;d=e+-28|0;e=d}while((c|0)!=(g|0));c=e;m=f[s>>2]|0;d=f[q>>2]|0}f[s>>2]=c;f[q>>2]=k;f[o>>2]=l;k=m;if((d|0)!=(k|0))do{C=d+-4|0;c=f[C>>2]|0;f[C>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);e=d+-20|0;c=f[e>>2]|0;j=d+-16|0;d=d+-28|0;if((c|0)==(f[j>>2]|0)){g=f[d>>2]|0;if(g){tOb(g);c=f[e>>2]|0}}if(c|0){e=f[j>>2]|0;if((e|0)!=(c|0))f[j>>2]=e+(~((e+-8-c|0)>>>3)<<3);sOb(c)}}while((d|0)!=(k|0));if(m|0)sOb(m)}b=b+28|0;if((b|0)==(p|0)){q=48;break}}if((q|0)==48){j=f[r>>2]|0;b=f[t>>2]|0;if((b|0)==(j|0))break;do{d=b+-28|0;f[t>>2]=d;C=b+-4|0;c=f[C>>2]|0;f[C>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;e=f[c>>2]|0;g=b+-16|0;if((e|0)==(f[g>>2]|0)){b=f[d>>2]|0;if(!b)b=e;else{tOb(b);b=f[c>>2]|0}}else b=e;if(b|0){c=f[g>>2]|0;if((c|0)!=(b|0))f[g>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[t>>2]|0}while((b|0)!=(j|0))}else if((q|0)==62)AMb(s);else if((q|0)==65)vd()}while(0);b=f[a+832>>2]|0;c=f[(f[b>>2]|0)+140>>2]|0;f[x>>2]=v;f[w>>2]=f[x>>2];xh[c&127](b,w,y);b=f[y>>2]|0;c=f[z>>2]|0;if((c|0)==(b|0)){u=A;return}f[z>>2]=c+(~((c+-8-b|0)>>>3)<<3);u=A;return}function oZa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;A=u;u=u+32|0;w=A;k=A+24|0;j=A+20|0;l=A+16|0;m=A+8|0;o=A+4|0;x=A+12|0;y=a+836|0;p=a+736|0;e=f[p>>2]|0;g=a+844|0;b=f[y>>2]|0;z=a+840|0;if((f[g>>2]|0)-b>>3>>>0>>0){if(e>>>0>536870911)vd();c=(f[z>>2]|0)-b|0;d=pOb(e<<3)|0;if((c|0)>0)bQb(d|0,b|0,c|0)|0;f[y>>2]=d;f[z>>2]=d+(c>>3<<3);f[g>>2]=d+(e<<3);if(b|0)sOb(b)}f[l>>2]=f[z>>2];c=a+732|0;f[m>>2]=f[c>>2];f[o>>2]=0;f[j>>2]=f[l>>2];f[k>>2]=f[m>>2];f[w>>2]=f[o>>2];xZa(y,j,k,w)|0;if(f[p>>2]|0){b=f[c>>2]|0;if(b|0)do{v=b;b=f[b>>2]|0;sOb(v)}while((b|0)!=0);f[c>>2]=0;c=f[a+728>>2]|0;if(c|0){d=a+724|0;b=0;do{f[(f[d>>2]|0)+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=(c|0))}f[p>>2]=0}yZa(f[y>>2]|0,f[z>>2]|0,w);m=a+816|0;v=(f[m>>2]|0)+1|0;f[m>>2]=v;m=a+192|0;g=a+196|0;j=f[g>>2]|0;k=(j|0)==0;a:do if(k){b=0;q=31}else{e=j+-1|0;d=(e&j|0)==0;if(d)b=e&v;else if(j>>>0>v>>>0)b=v;else b=(v>>>0)%(j>>>0)|0;c=f[(f[m>>2]|0)+(b<<2)>>2]|0;if(!c)q=31;else{if(d)while(1){c=f[c>>2]|0;if(!c){q=31;break a}t=f[c+4>>2]|0;if(!((t|0)==(v|0)|(t&e|0)==(b|0))){q=31;break a}if((f[c+8>>2]|0)==(v|0))break a}do{c=f[c>>2]|0;if(!c){q=31;break a}d=f[c+4>>2]|0;if((d|0)!=(v|0)){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0;if((d|0)!=(b|0)){q=31;break a}}}while((f[c+8>>2]|0)!=(v|0))}}while(0);if((q|0)==31){e=pOb(24)|0;f[e+8>>2]=v;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+4>>2]=v;f[e>>2]=0;l=a+204|0;h=+(((f[l>>2]|0)+1|0)>>>0);i=+n[a+208>>2];do if(k|i*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;c=~~+W(+(h/i))>>>0;zZa(m,b>>>0>>0?c:b);b=f[g>>2]|0;c=b+-1|0;if(!(c&b)){d=b;b=c&v;break}if(b>>>0>v>>>0){d=b;b=v}else{d=b;b=(v>>>0)%(b>>>0)|0}}else d=j;while(0);c=(f[m>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+200|0;f[e>>2]=f[b>>2];f[b>>2]=e;f[c>>2]=b;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;c=d+-1|0;if(!(c&d))b=b&c;else if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0;b=(f[m>>2]|0)+(b<<2)|0;q=44}}else{f[e>>2]=f[b>>2];q=44}if((q|0)==44)f[b>>2]=e;f[l>>2]=(f[l>>2]|0)+1;c=e}s=c+12|0;r=a+212|0;b=f[r>>2]|0;t=a+216|0;p=f[t>>2]|0;do if((b|0)!=(p|0)){q=c+16|0;o=c+20|0;while(1){c=f[q>>2]|0;m=f[o>>2]|0;d=m;if(c>>>0>>0){f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];m=c+8|0;l=b+8|0;f[m>>2]=0;k=c+12|0;f[k>>2]=0;f[c+16>>2]=0;f[m>>2]=f[l>>2];m=b+12|0;f[k>>2]=f[m>>2];k=b+16|0;f[c+16>>2]=f[k>>2];f[k>>2]=0;f[m>>2]=0;f[l>>2]=0;f[b>>2]=0;l=b+24|0;m=f[l>>2]|0;f[l>>2]=0;f[c+24>>2]=m;f[q>>2]=(f[q>>2]|0)+28}else{e=f[s>>2]|0;g=(c-e|0)/28|0;c=g+1|0;if(c>>>0>153391689){q=62;break}l=(d-e|0)/28|0;m=l<<1;c=l>>>0<76695844?(m>>>0>>0?c:m):153391689;if(!c)d=0;else{if(c>>>0>153391689){q=65;break}d=pOb(c*28|0)|0}j=d+(g*28|0)|0;e=j;l=d+(c*28|0)|0;f[j>>2]=f[b>>2];f[d+(g*28|0)+4>>2]=f[b+4>>2];c=b+8|0;f[d+(g*28|0)+16>>2]=0;f[d+(g*28|0)+8>>2]=f[c>>2];k=b+12|0;f[d+(g*28|0)+12>>2]=f[k>>2];m=b+16|0;f[d+(g*28|0)+16>>2]=f[m>>2];f[m>>2]=0;f[k>>2]=0;f[c>>2]=0;f[b>>2]=0;c=b+24|0;k=f[c>>2]|0;f[c>>2]=0;f[d+(g*28|0)+24>>2]=k;k=j+28|0;g=f[s>>2]|0;c=f[q>>2]|0;if((c|0)==(g|0)){c=e;m=g;d=g}else{d=j;do{j=c;c=c+-28|0;f[d+-28>>2]=f[c>>2];f[d+-24>>2]=f[j+-24>>2];B=d+-20|0;m=j+-20|0;f[B>>2]=0;C=d+-16|0;f[C>>2]=0;f[d+-12>>2]=0;f[B>>2]=f[m>>2];B=j+-16|0;f[C>>2]=f[B>>2];C=j+-12|0;f[d+-12>>2]=f[C>>2];f[C>>2]=0;f[B>>2]=0;f[m>>2]=0;f[c>>2]=0;j=j+-4|0;m=f[j>>2]|0;f[j>>2]=0;f[d+-4>>2]=m;d=e+-28|0;e=d}while((c|0)!=(g|0));c=e;m=f[s>>2]|0;d=f[q>>2]|0}f[s>>2]=c;f[q>>2]=k;f[o>>2]=l;k=m;if((d|0)!=(k|0))do{C=d+-4|0;c=f[C>>2]|0;f[C>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);e=d+-20|0;c=f[e>>2]|0;j=d+-16|0;d=d+-28|0;if((c|0)==(f[j>>2]|0)){g=f[d>>2]|0;if(g){tOb(g);c=f[e>>2]|0}}if(c|0){e=f[j>>2]|0;if((e|0)!=(c|0))f[j>>2]=e+(~((e+-8-c|0)>>>3)<<3);sOb(c)}}while((d|0)!=(k|0));if(m|0)sOb(m)}b=b+28|0;if((b|0)==(p|0)){q=48;break}}if((q|0)==48){j=f[r>>2]|0;b=f[t>>2]|0;if((b|0)==(j|0))break;do{d=b+-28|0;f[t>>2]=d;C=b+-4|0;c=f[C>>2]|0;f[C>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);c=b+-20|0;e=f[c>>2]|0;g=b+-16|0;if((e|0)==(f[g>>2]|0)){b=f[d>>2]|0;if(!b)b=e;else{tOb(b);b=f[c>>2]|0}}else b=e;if(b|0){c=f[g>>2]|0;if((c|0)!=(b|0))f[g>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[t>>2]|0}while((b|0)!=(j|0))}else if((q|0)==62)AMb(s);else if((q|0)==65)vd()}while(0);b=f[a+832>>2]|0;c=f[(f[b>>2]|0)+144>>2]|0;f[x>>2]=v;f[w>>2]=f[x>>2];xh[c&127](b,w,y);b=f[y>>2]|0;c=f[z>>2]|0;if((c|0)==(b|0)){u=A;return}f[z>>2]=c+(~((c+-8-b|0)>>>3)<<3);u=A;return}function pZa(a){a=a|0;var c=0,d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;O=u;u=u+16|0;I=O;J=O+4|0;L=a+836|0;N=a+656|0;e=f[N>>2]|0;M=a+844|0;g=f[L>>2]|0;K=a+840|0;if((f[M>>2]|0)-g>>3>>>0>>0){if(e>>>0>536870911)vd();c=(f[K>>2]|0)-g|0;d=pOb(e<<3)|0;if((c|0)>0)bQb(d|0,g|0,c|0)|0;f[L>>2]=d;f[K>>2]=d+(c>>3<<3);f[M>>2]=d+(e<<3);if(g|0)sOb(g)}H=a+652|0;z=a+816|0;A=a+32|0;B=a+36|0;C=a+44|0;D=a+48|0;E=a+40|0;x=a+52|0;y=a+56|0;F=a+832|0;w=191182;a:while(1){g=b[w>>0]|0;v=g<<24>>24!=0;c=f[H>>2]|0;if(c|0)do{d=c;do if((b[d+16>>0]|0)==g<<24>>24){d=d+8|0;e=f[K>>2]|0;if((e|0)==(f[M>>2]|0)){lE(L,d);break}else{r=d;s=f[r+4>>2]|0;t=e;f[t>>2]=f[r>>2];f[t+4>>2]=s;f[K>>2]=(f[K>>2]|0)+8;break}}while(0);c=f[c>>2]|0}while((c|0)!=0);c=f[L>>2]|0;d=f[K>>2]|0;if((c|0)!=(d|0)){qZa(c,d,I);t=(f[z>>2]|0)+1|0;f[z>>2]=t;j=f[B>>2]|0;k=(j|0)==0;b:do if(k){c=0;G=40}else{g=j+-1|0;e=(g&j|0)==0;if(e)c=g&t;else if(j>>>0>t>>>0)c=t;else c=(t>>>0)%(j>>>0)|0;d=f[(f[A>>2]|0)+(c<<2)>>2]|0;if(!d)G=40;else{if(e)while(1){d=f[d>>2]|0;if(!d){G=40;break b}s=f[d+4>>2]|0;if(!((s|0)==(t|0)|(s&g|0)==(c|0))){G=40;break b}if((f[d+8>>2]|0)==(t|0))break b}do{d=f[d>>2]|0;if(!d){G=40;break b}e=f[d+4>>2]|0;if((e|0)!=(t|0)){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;if((e|0)!=(c|0)){G=40;break b}}}while((f[d+8>>2]|0)!=(t|0))}}while(0);if((G|0)==40){G=0;g=pOb(24)|0;f[g+8>>2]=t;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+4>>2]=t;f[g>>2]=0;h=+(((f[C>>2]|0)+1|0)>>>0);i=+n[D>>2];do if(k|i*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;d=~~+W(+(h/i))>>>0;rZa(A,c>>>0>>0?d:c);c=f[B>>2]|0;d=c+-1|0;if(!(d&c)){e=c;c=d&t;break}if(c>>>0>t>>>0){e=c;c=t}else{e=c;c=(t>>>0)%(c>>>0)|0}}else e=j;while(0);d=(f[A>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){f[g>>2]=f[E>>2];f[E>>2]=g;f[d>>2]=E;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;c=(f[A>>2]|0)+(c<<2)|0;G=53}}else{f[g>>2]=f[c>>2];G=53}if((G|0)==53){G=0;f[c>>2]=g}f[C>>2]=(f[C>>2]|0)+1;d=g}r=d+12|0;c=f[x>>2]|0;q=f[y>>2]|0;if((c|0)!=(q|0)){s=d+16|0;p=d+20|0;do{d=f[s>>2]|0;o=f[p>>2]|0;e=o;if(d>>>0>>0){f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];o=d+8|0;m=c+8|0;f[o>>2]=0;l=d+12|0;f[l>>2]=0;f[d+16>>2]=0;f[o>>2]=f[m>>2];o=c+12|0;f[l>>2]=f[o>>2];l=c+16|0;f[d+16>>2]=f[l>>2];f[l>>2]=0;f[o>>2]=0;f[m>>2]=0;f[c>>2]=0;f[d+20>>2]=f[c+20>>2];m=c+24|0;o=f[m>>2]|0;f[m>>2]=0;f[d+24>>2]=o;f[s>>2]=(f[s>>2]|0)+28}else{g=f[r>>2]|0;j=(d-g|0)/28|0;d=j+1|0;if(d>>>0>153391689){G=71;break a}m=(e-g|0)/28|0;o=m<<1;d=m>>>0<76695844?(o>>>0>>0?d:o):153391689;if(!d)e=0;else{if(d>>>0>153391689){G=74;break a}e=pOb(d*28|0)|0}k=e+(j*28|0)|0;g=k;m=e+(d*28|0)|0;f[k>>2]=f[c>>2];f[e+(j*28|0)+4>>2]=f[c+4>>2];d=c+8|0;f[e+(j*28|0)+16>>2]=0;f[e+(j*28|0)+8>>2]=f[d>>2];l=c+12|0;f[e+(j*28|0)+12>>2]=f[l>>2];o=c+16|0;f[e+(j*28|0)+16>>2]=f[o>>2];f[o>>2]=0;f[l>>2]=0;f[d>>2]=0;f[c>>2]=0;f[e+(j*28|0)+20>>2]=f[c+20>>2];d=c+24|0;l=f[d>>2]|0;f[d>>2]=0;f[e+(j*28|0)+24>>2]=l;l=k+28|0;j=f[r>>2]|0;d=f[s>>2]|0;if((d|0)==(j|0)){d=g;o=j;e=j}else{e=k;do{k=d;d=d+-28|0;f[e+-28>>2]=f[d>>2];f[e+-24>>2]=f[k+-24>>2];P=e+-20|0;o=k+-20|0;f[P>>2]=0;Q=e+-16|0;f[Q>>2]=0;f[e+-12>>2]=0;f[P>>2]=f[o>>2];P=k+-16|0;f[Q>>2]=f[P>>2];Q=k+-12|0;f[e+-12>>2]=f[Q>>2];f[Q>>2]=0;f[P>>2]=0;f[o>>2]=0;f[d>>2]=0;f[e+-8>>2]=f[k+-8>>2];k=k+-4|0;o=f[k>>2]|0;f[k>>2]=0;f[e+-4>>2]=o;e=g+-28|0;g=e}while((d|0)!=(j|0));d=g;o=f[r>>2]|0;e=f[s>>2]|0}f[r>>2]=d;f[s>>2]=l;f[p>>2]=m;l=o;if((e|0)!=(l|0))do{Q=e+-4|0;d=f[Q>>2]|0;f[Q>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);g=e+-20|0;d=f[g>>2]|0;k=e+-16|0;e=e+-28|0;do if((d|0)==(f[k>>2]|0)){j=f[e>>2]|0;if(!j)break;tOb(j);d=f[g>>2]|0}while(0);if(d|0){g=f[k>>2]|0;if((g|0)!=(d|0))f[k>>2]=g+(~((g+-8-d|0)>>>3)<<3);sOb(d)}}while((e|0)!=(l|0));if(o|0)sOb(o)}c=c+28|0}while((c|0)!=(q|0));k=f[x>>2]|0;c=f[y>>2]|0;if((c|0)!=(k|0))do{e=c+-28|0;f[y>>2]=e;Q=c+-4|0;d=f[Q>>2]|0;f[Q>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;g=f[d>>2]|0;j=c+-16|0;if((g|0)==(f[j>>2]|0)){c=f[e>>2]|0;if(!c)c=g;else{tOb(c);c=f[d>>2]|0}}else c=g;if(c|0){d=f[j>>2]|0;if((d|0)!=(c|0))f[j>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}c=f[y>>2]|0}while((c|0)!=(k|0))}c=f[F>>2]|0;d=f[(f[c>>2]|0)+148>>2]|0;f[J>>2]=t;f[I>>2]=f[J>>2];Fh[d&255](c,I,L,v);c=f[L>>2]|0;d=f[K>>2]|0;if((d|0)!=(c|0))f[K>>2]=d+(~((d+-8-c|0)>>>3)<<3)}w=w+1|0;if((w|0)==191184){G=9;break}}if((G|0)==9){if(!(f[N>>2]|0)){u=O;return}c=f[H>>2]|0;if(c|0)do{Q=c;c=f[c>>2]|0;sOb(Q)}while((c|0)!=0);f[H>>2]=0;e=f[a+648>>2]|0;if(e|0){d=a+644|0;c=0;do{f[(f[d>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(e|0))}f[N>>2]=0;u=O;return}else if((G|0)==71)AMb(r);else if((G|0)==74)vd()}function qZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:while(1){o=b;r=b+-8|0;p=b+-16|0;s=b+-4|0;while(1){b:while(1){n=a;d=o-n|0;e=d>>3;switch(e|0){case 2:{q=5;break a}case 3:{q=9;break a}case 4:{q=27;break a}case 5:{q=28;break a}case 1:case 0:{q=107;break a}default:{}}if((d|0)<248){q=30;break a}i=(e|0)/2|0;h=a+(i<<3)|0;do if((d|0)>7992){d=(e|0)/4|0;d=uZa(a,a+(d<<3)|0,h,h+(d<<3)|0,r,c)|0;e=h;m=a}else{g=f[h>>2]|0;d=f[a>>2]|0;if(g>>>0>>0)e=1;else if(g>>>0>d>>>0)e=0;else e=(f[a+(i<<3)+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;d=f[r>>2]|0;if(d>>>0>>0)d=1;else if(d>>>0>g>>>0)d=0;else d=(f[s>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0;if(!e){if(!d){d=0;e=h;m=a;break}e=h;m=f[e>>2]|0;e=f[e+4>>2]|0;k=r;l=f[k+4>>2]|0;d=h;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=r;f[d>>2]=m;f[d+4>>2]=e;d=f[h>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[a+(i<<3)+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){d=1;e=h;m=a;break}}e=a;m=f[e>>2]|0;e=f[e+4>>2]|0;k=h;l=f[k+4>>2]|0;d=a;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=h;f[d>>2]=m;f[d+4>>2]=e;d=2;e=h;m=a;break}g=a;e=f[g>>2]|0;g=f[g+4>>2]|0;if(d){l=r;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=1;e=h;m=a;break}l=h;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=h;f[d>>2]=e;f[d+4>>2]=g;d=f[r>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[s>>2]|0)>>>0>=g>>>0){d=1;e=h;m=a;break}}l=r;m=f[l+4>>2]|0;d=h;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=2;e=h;m=a}while(0);l=f[m>>2]|0;k=f[e>>2]|0;if(l>>>0>>0){e=r;break}if(l>>>0<=k>>>0)if((f[a+4>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0){e=r;break}if((a|0)!=(p|0)){j=a+(i<<3)+4|0;g=r;e=p;while(1){i=f[e>>2]|0;if(i>>>0>>0){q=82;break b}if(i>>>0<=k>>>0)if((f[g+-4>>2]|0)>>>0<(f[j>>2]|0)>>>0){q=82;break b}g=e+-8|0;if((a|0)==(g|0))break;else{i=e;e=g;g=i}}}d=a+8|0;e=f[r>>2]|0;do if(l>>>0>=e>>>0){if(l>>>0<=e>>>0)if((f[a+4>>2]|0)>>>0<(f[s>>2]|0)>>>0)break;if((d|0)==(r|0)){q=107;break a}g=a+4|0;while(1){e=f[d>>2]|0;if(l>>>0>>0)break;if(l>>>0<=e>>>0)if((f[g>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)break;d=d+8|0;if((d|0)==(r|0)){q=107;break a}}l=d;k=f[l>>2]|0;l=f[l+4>>2]|0;i=r;j=f[i+4>>2]|0;n=d;f[n>>2]=f[i>>2];f[n+4>>2]=j;n=r;f[n>>2]=k;f[n+4>>2]=l;d=d+8|0}while(0);if((d|0)==(r|0)){q=107;break a}i=a+4|0;e=r;a=d;while(1){h=f[m>>2]|0;d=f[a>>2]|0;c:do if(h>>>0>=d>>>0)do{if(h>>>0<=d>>>0)if((f[i>>2]|0)>>>0<(f[a+4>>2]|0)>>>0)break c;a=a+8|0;d=f[a>>2]|0}while(h>>>0>=d>>>0);while(0);d=e;while(1){e=d;d=d+-8|0;g=f[d>>2]|0;if(h>>>0>>0)continue;if(h>>>0>g>>>0)break;if((f[i>>2]|0)>>>0>=(f[e+-4>>2]|0)>>>0)break}if(a>>>0>=d>>>0)continue b;n=a;l=f[n>>2]|0;n=f[n+4>>2]|0;j=d;k=f[j+4>>2]|0;e=a;f[e>>2]=f[j>>2];f[e+4>>2]=k;e=d;f[e>>2]=l;f[e+4>>2]=n;e=d;a=a+8|0}}if((q|0)==82){q=0;l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=e;j=f[i+4>>2]|0;m=a;f[m>>2]=f[i>>2];f[m+4>>2]=j;m=e;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}g=a+8|0;d:do if(g>>>0>>0){l=h;while(1){j=f[l>>2]|0;k=l+4|0;while(1){h=f[g>>2]|0;if(h>>>0>=j>>>0){if(h>>>0>j>>>0)break;if((f[g+4>>2]|0)>>>0>=(f[k>>2]|0)>>>0)break}g=g+8|0}i=e+-8|0;h=f[i>>2]|0;e:do if(h>>>0>>0)e=i;else while(1){if(h>>>0<=j>>>0)if((f[e+-4>>2]|0)>>>0<(f[k>>2]|0)>>>0){e=i;break e}e=i+-8|0;h=f[e>>2]|0;if(h>>>0>>0)break;else{m=i;i=e;e=m}}while(0);if(g>>>0>e>>>0){h=l;i=g;break d}k=g;j=f[k>>2]|0;k=f[k+4>>2]|0;h=e;i=f[h+4>>2]|0;m=g;f[m>>2]=f[h>>2];f[m+4>>2]=i;m=e;f[m>>2]=j;f[m+4>>2]=k;l=(l|0)==(g|0)?e:l;g=g+8|0;d=d+1|0}}else i=g;while(0);do if((i|0)!=(h|0)){e=f[h>>2]|0;g=f[i>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0)break;if((f[h+4>>2]|0)>>>0>=(f[i+4>>2]|0)>>>0)break}l=i;k=f[l>>2]|0;l=f[l+4>>2]|0;g=h;j=f[g+4>>2]|0;m=i;f[m>>2]=f[g>>2];f[m+4>>2]=j;m=h;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}while(0);if(!d){d=wZa(a,i,c)|0;e=i+8|0;if(wZa(e,b,c)|0){q=106;break}if(d){a=e;continue}}m=i;if((m-n|0)>=(o-m|0)){q=105;break}qZa(a,i,c);a=i+8|0}if((q|0)==105){q=0;qZa(i+8|0,b,c);b=i;continue}else if((q|0)==106){q=0;if(d){q=107;break}else{b=i;continue}}}if((q|0)==5){b=f[r>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}q=a;c=f[q>>2]|0;q=f[q+4>>2]|0;o=r;p=f[o+4>>2]|0;s=a;f[s>>2]=f[o>>2];f[s+4>>2]=p;s=r;f[s>>2]=c;f[s+4>>2]=q;return}else if((q|0)==9){g=a+8|0;e=f[g>>2]|0;b=f[a>>2]|0;if(e>>>0>>0)d=1;else if(e>>>0>b>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;b=f[r>>2]|0;if(b>>>0>>0)b=1;else if(b>>>0>e>>>0)b=0;else b=(f[s>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!b)return;d=g;s=f[d>>2]|0;d=f[d+4>>2]|0;c=r;q=f[c+4>>2]|0;b=g;f[b>>2]=f[c>>2];f[b+4>>2]=q;b=r;f[b>>2]=s;f[b+4>>2]=d;b=f[g>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}r=a;q=f[r>>2]|0;r=f[r+4>>2]|0;p=g;c=f[p+4>>2]|0;s=a;f[s>>2]=f[p>>2];f[s+4>>2]=c;s=g;f[s>>2]=q;f[s+4>>2]=r;return}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(b){c=r;q=f[c+4>>2]|0;s=a;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}c=g;q=f[c+4>>2]|0;f[a>>2]=f[c>>2];f[a+4>>2]=q;a=g;f[a>>2]=d;f[a+4>>2]=e;a=f[r>>2]|0;if(a>>>0>=d>>>0){if(a>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=e>>>0)return}c=r;q=f[c+4>>2]|0;s=g;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}else if((q|0)==27){tZa(a,a+8|0,a+16|0,r,c)|0;return}else if((q|0)==28){uZa(a,a+8|0,a+16|0,a+24|0,r,c)|0;return}else if((q|0)==30){vZa(a,b,c);return}else if((q|0)==107)return}function rZa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){sZa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;sZa(a,b);return}function sZa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function tZa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0>>0)e=1;else if(h>>>0>e>>>0)e=0;else e=(f[b+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[c>>2]|0;if(g>>>0>>0)h=1;else if(g>>>0>h>>>0)h=0;else h=(f[c+4>>2]|0)>>>0<(f[b+4>>2]|0)>>>0;do if(e){e=a;i=f[e>>2]|0;e=f[e+4>>2]|0;if(h){h=c;g=f[h+4>>2]|0;j=a;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=1;g=i;break}h=b;j=f[h+4>>2]|0;g=a;f[g>>2]=f[h>>2];f[g+4>>2]=j;g=b;f[g>>2]=i;f[g+4>>2]=e;g=f[c>>2]|0;if(g>>>0>=i>>>0){if(g>>>0>i>>>0){j=1;break}if((f[c+4>>2]|0)>>>0>=e>>>0){j=1;break}}h=c;g=f[h+4>>2]|0;j=b;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=2;g=i}else if(h){h=b;g=f[h>>2]|0;h=f[h+4>>2]|0;i=c;j=f[i+4>>2]|0;e=b;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=c;f[e>>2]=g;f[e+4>>2]=h;e=f[b>>2]|0;h=f[a>>2]|0;if(e>>>0>=h>>>0){if(e>>>0>h>>>0){j=1;break}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){j=1;break}}g=a;i=f[g>>2]|0;g=f[g+4>>2]|0;e=b;h=f[e+4>>2]|0;j=a;f[j>>2]=f[e>>2];f[j+4>>2]=h;j=b;f[j>>2]=i;f[j+4>>2]=g;j=2;g=f[c>>2]|0}else j=0;while(0);e=f[d>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0){b=j;return b|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){b=j;return b|0}}g=c;h=f[g>>2]|0;g=f[g+4>>2]|0;k=d;i=f[k+4>>2]|0;e=c;f[e>>2]=f[k>>2];f[e+4>>2]=i;e=d;f[e>>2]=h;f[e+4>>2]=g;e=j+1|0;g=f[c>>2]|0;h=f[b>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){k=e;return k|0}}g=b;h=f[g>>2]|0;g=f[g+4>>2]|0;d=c;k=f[d+4>>2]|0;e=b;f[e>>2]=f[d>>2];f[e+4>>2]=k;e=c;f[e>>2]=h;f[e+4>>2]=g;e=j+2|0;g=f[b>>2]|0;h=f[a>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){k=e;return k|0}}c=a;d=f[c>>2]|0;c=f[c+4>>2]|0;h=b;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=b;f[k>>2]=d;f[k+4>>2]=c;k=j+3|0;return k|0}function uZa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;i=tZa(a,b,c,d,g)|0;g=f[e>>2]|0;h=f[d>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){b=i;return b|0}if((f[e+4>>2]|0)>>>0>=(f[d+4>>2]|0)>>>0){b=i;return b|0}}h=d;j=f[h>>2]|0;h=f[h+4>>2]|0;l=e;k=f[l+4>>2]|0;g=d;f[g>>2]=f[l>>2];f[g+4>>2]=k;g=e;f[g>>2]=j;f[g+4>>2]=h;g=i+1|0;h=f[d>>2]|0;e=f[c>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){l=g;return l|0}}h=c;e=f[h>>2]|0;h=f[h+4>>2]|0;k=d;l=f[k+4>>2]|0;g=c;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=d;f[g>>2]=e;f[g+4>>2]=h;g=i+2|0;h=f[c>>2]|0;e=f[b>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){l=g;return l|0}}h=b;e=f[h>>2]|0;h=f[h+4>>2]|0;k=c;l=f[k+4>>2]|0;g=b;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=c;f[g>>2]=e;f[g+4>>2]=h;g=i+3|0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){l=g;return l|0}}k=a;j=f[k>>2]|0;k=f[k+4>>2]|0;d=b;c=f[d+4>>2]|0;l=a;f[l>>2]=f[d>>2];f[l+4>>2]=c;l=b;f[l>>2]=j;f[l+4>>2]=k;l=i+4|0;return l|0}function vZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+16|0;i=a+8|0;c=f[i>>2]|0;h=f[a>>2]|0;if(c>>>0>>0)d=1;else if(c>>>0>h>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;e=f[k>>2]|0;if(e>>>0>>0)g=1;else if(e>>>0>c>>>0)g=0;else g=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(d){d=a;c=f[d>>2]|0;d=f[d+4>>2]|0;if(g){i=k;j=f[i+4>>2]|0;e=a;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c;break}g=i;h=f[g+4>>2]|0;j=a;f[j>>2]=f[g>>2];f[j+4>>2]=h;j=i;f[j>>2]=c;f[j+4>>2]=d;if(e>>>0>=c>>>0){if(e>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=d>>>0)break}h=k;j=f[h+4>>2]|0;e=i;f[e>>2]=f[h>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c}else if(g){g=i;e=f[g>>2]|0;g=f[g+4>>2]|0;d=k;c=f[d>>2]|0;d=f[d+4>>2]|0;j=i;f[j>>2]=c;f[j+4>>2]=d;j=k;f[j>>2]=e;f[j+4>>2]=g;if(h>>>0<=c>>>0){if(h>>>0>>0)break;if((f[a+4>>2]|0)>>>0<=d>>>0)break}h=a;g=f[h>>2]|0;h=f[h+4>>2]|0;j=a;f[j>>2]=c;f[j+4>>2]=d;j=i;f[j>>2]=g;f[j+4>>2]=h}while(0);c=a+24|0;if((c|0)==(b|0))return;else{j=c;c=k}while(1){d=f[j>>2]|0;if(d>>>0>>0)l=24;else if(d>>>0<=e>>>0)if((f[j+4>>2]|0)>>>0<(f[c+4>>2]|0)>>>0)l=24;if((l|0)==24){l=0;i=j;h=f[i>>2]|0;i=f[i+4>>2]|0;e=c;g=f[e+4>>2]|0;k=j;f[k>>2]=f[e>>2];f[k+4>>2]=g;a:do if((c|0)!=(a|0)){g=c;while(1){e=c;c=g+-8|0;d=f[c>>2]|0;if(d>>>0<=h>>>0){if(d>>>0>>0){c=e;break a}if((f[g+-4>>2]|0)>>>0<=i>>>0){c=e;break a}}d=c;g=f[d+4>>2]|0;k=e;f[k>>2]=f[d>>2];f[k+4>>2]=g;if((c|0)==(a|0))break;else g=c}}while(0);k=c;f[k>>2]=h;f[k+4>>2]=i}c=j+8|0;if((c|0)==(b|0))break;e=f[j>>2]|0;k=j;j=c;c=k}return}function wZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;switch(b-a>>3|0){case 2:{c=b+-8|0;d=f[c>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=c;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=c;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}case 3:{h=a+8|0;g=b+-8|0;e=f[h>>2]|0;c=f[a>>2]|0;if(e>>>0>>0)d=1;else if(e>>>0>c>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;c=f[g>>2]|0;if(c>>>0>>0)c=1;else if(c>>>0>e>>>0)c=0;else c=(f[b+-4>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!c){b=1;return b|0}d=h;b=f[d>>2]|0;d=f[d+4>>2]|0;k=g;l=f[k+4>>2]|0;c=h;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=g;f[c>>2]=b;f[c+4>>2]=d;c=f[h>>2]|0;d=f[a>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=h;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=h;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(c){k=g;l=f[k+4>>2]|0;b=a;f[b>>2]=f[k>>2];f[b+4>>2]=l;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}k=h;l=f[k+4>>2]|0;c=a;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=h;f[c>>2]=d;f[c+4>>2]=e;c=f[g>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=e>>>0){b=1;return b|0}}l=g;a=f[l+4>>2]|0;b=h;f[b>>2]=f[l>>2];f[b+4>>2]=a;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}case 4:{tZa(a,a+8|0,a+16|0,b+-8|0,c)|0;b=1;return b|0}case 5:{uZa(a,a+8|0,a+16|0,a+24|0,b+-8|0,c)|0;b=1;return b|0}case 1:case 0:{b=1;return b|0}default:{d=a+16|0;j=a+8|0;c=f[j>>2]|0;i=f[a>>2]|0;if(c>>>0>>0)e=1;else if(c>>>0>i>>>0)e=0;else e=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[d>>2]|0;if(g>>>0>>0)h=1;else if(g>>>0>c>>>0)h=0;else h=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(e){e=a;c=f[e>>2]|0;e=f[e+4>>2]|0;if(h){j=d;k=f[j+4>>2]|0;g=a;f[g>>2]=f[j>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c;break}h=j;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=j;f[k>>2]=c;f[k+4>>2]=e;if(g>>>0>=c>>>0){if(g>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=e>>>0)break}i=d;k=f[i+4>>2]|0;g=j;f[g>>2]=f[i>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c}else if(h){h=j;g=f[h>>2]|0;h=f[h+4>>2]|0;e=d;c=f[e>>2]|0;e=f[e+4>>2]|0;k=j;f[k>>2]=c;f[k+4>>2]=e;k=d;f[k>>2]=g;f[k+4>>2]=h;if(i>>>0<=c>>>0){if(i>>>0>>0)break;if((f[a+4>>2]|0)>>>0<=e>>>0)break}i=a;h=f[i>>2]|0;i=f[i+4>>2]|0;k=a;f[k>>2]=c;f[k+4>>2]=e;k=j;f[k>>2]=h;f[k+4>>2]=i}while(0);c=a+24|0;a:do if((c|0)==(b|0)){d=1;c=0}else{k=c;c=0;while(1){e=f[k>>2]|0;if(e>>>0>>0)l=48;else if(e>>>0<=g>>>0)if((f[k+4>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)l=48;if((l|0)==48){l=0;j=k;i=f[j>>2]|0;j=f[j+4>>2]|0;e=d;g=f[e+4>>2]|0;h=k;f[h>>2]=f[e>>2];f[h+4>>2]=g;b:do if((d|0)!=(a|0)){h=d;while(1){g=d;d=h+-8|0;e=f[d>>2]|0;if(e>>>0<=i>>>0){if(e>>>0>>0){d=g;break b}if((f[h+-4>>2]|0)>>>0<=j>>>0){d=g;break b}}m=d;e=f[m+4>>2]|0;h=g;f[h>>2]=f[m>>2];f[h+4>>2]=e;if((d|0)==(a|0))break;else h=d}}while(0);m=d;f[m>>2]=i;f[m+4>>2]=j;c=c+1|0;if((c|0)==8){d=0;c=(k+8|0)==(b|0);break a}}d=k+8|0;if((d|0)==(b|0)){d=1;c=0;break a}g=f[k>>2]|0;m=k;k=d;d=m}}while(0);m=c|d;return m|0}}return 0}function xZa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=f[a>>2]|0;k=e;l=(f[b>>2]|0)-k|0;b=e+(l>>3<<3)|0;e=f[c>>2]|0;q=f[d>>2]|0;j=q;g=e;if((e|0)==(q|0)){r=b;return r|0}i=0;d=e;while(1){n=i+1|0;d=f[d>>2]|0;if((q|0)==(d|0))break;else i=n}if((i|0)<=-1){r=b;return r|0}p=a+8|0;h=f[p>>2]|0;r=a+4|0;o=f[r>>2]|0;d=o;if((i|0)<(h-d>>3|0)){h=d-b|0;d=h>>3;if((i|0)<(d|0)){g=j;d=o}else{i=(h|0)>0;if(i)while(1){g=f[g>>2]|0;if((d|0)>1)d=d+-1|0;else break}if((q|0)==(g|0))d=o;else{h=g;d=o;do{p=h+8|0;a=f[p+4>>2]|0;f[d>>2]=f[p>>2];f[d+4>>2]=a;h=f[h>>2]|0;d=(f[r>>2]|0)+8|0;f[r>>2]=d}while((q|0)!=(h|0))}if(!i){r=b;return r|0}}j=d-(b+(n<<3))|0;k=j>>3;h=b+(k<<3)|0;if(h>>>0>>0){i=d;do{p=h;a=f[p+4>>2]|0;q=i;f[q>>2]=f[p>>2];f[q+4>>2]=a;h=h+8|0;i=(f[r>>2]|0)+8|0;f[r>>2]=i}while(h>>>0>>0)}if(k){cQb(d+(0-k<<3)|0,b|0,j|0)|0;e=f[c>>2]|0}if((e|0)==(g|0)){r=b;return r|0}d=b;while(1){a=e+8|0;q=f[a+4>>2]|0;r=d;f[r>>2]=f[a>>2];f[r+4>>2]=q;e=f[e>>2]|0;if((g|0)==(e|0))break;else d=d+8|0}return b|0}else{d=(d-k>>3)+n|0;if(d>>>0>536870911)AMb(a);k=h-k|0;g=k>>2;g=k>>3>>>0<268435455?(g>>>0>>0?d:g):536870911;k=b;d=l>>3;do if(!g)m=0;else if(g>>>0>536870911)vd();else{m=pOb(g<<3)|0;break}while(0);l=m+(d<<3)|0;j=m+(g<<3)|0;i=l;d=l;g=e;h=e;while(1){c=g+8|0;e=f[c+4>>2]|0;f[i>>2]=f[c>>2];f[i+4>>2]=e;i=d+8|0;e=i;h=f[h>>2]|0;if((q|0)==(h|0))break;else{d=e;g=h}}g=f[a>>2]|0;d=k-g|0;h=l+(0-(d>>3)<<3)|0;if((d|0)>0)bQb(h|0,g|0,d|0)|0;d=(f[r>>2]|0)-k|0;if((d|0)>0){bQb(i|0,b|0,d|0)|0;e=i+(d>>>3<<3)|0;b=f[a>>2]|0}else b=g;f[a>>2]=h;f[r>>2]=e;f[p>>2]=j;if(!b){r=l;return r|0}sOb(b);r=l;return r|0}return 0}function yZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:while(1){o=b;r=b+-8|0;p=b+-16|0;s=b+-4|0;while(1){b:while(1){n=a;d=o-n|0;e=d>>3;switch(e|0){case 2:{q=5;break a}case 3:{q=9;break a}case 4:{q=27;break a}case 5:{q=28;break a}case 1:case 0:{q=107;break a}default:{}}if((d|0)<248){q=30;break a}i=(e|0)/2|0;h=a+(i<<3)|0;do if((d|0)>7992){d=(e|0)/4|0;d=CZa(a,a+(d<<3)|0,h,h+(d<<3)|0,r,c)|0;e=h;m=a}else{g=f[h>>2]|0;d=f[a>>2]|0;if(g>>>0>>0)e=1;else if(g>>>0>d>>>0)e=0;else e=(f[a+(i<<3)+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;d=f[r>>2]|0;if(d>>>0>>0)d=1;else if(d>>>0>g>>>0)d=0;else d=(f[s>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0;if(!e){if(!d){d=0;e=h;m=a;break}e=h;m=f[e>>2]|0;e=f[e+4>>2]|0;k=r;l=f[k+4>>2]|0;d=h;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=r;f[d>>2]=m;f[d+4>>2]=e;d=f[h>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[a+(i<<3)+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){d=1;e=h;m=a;break}}e=a;m=f[e>>2]|0;e=f[e+4>>2]|0;k=h;l=f[k+4>>2]|0;d=a;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=h;f[d>>2]=m;f[d+4>>2]=e;d=2;e=h;m=a;break}g=a;e=f[g>>2]|0;g=f[g+4>>2]|0;if(d){l=r;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=1;e=h;m=a;break}l=h;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=h;f[d>>2]=e;f[d+4>>2]=g;d=f[r>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[s>>2]|0)>>>0>=g>>>0){d=1;e=h;m=a;break}}l=r;m=f[l+4>>2]|0;d=h;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=2;e=h;m=a}while(0);l=f[m>>2]|0;k=f[e>>2]|0;if(l>>>0>>0){e=r;break}if(l>>>0<=k>>>0)if((f[a+4>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0){e=r;break}if((a|0)!=(p|0)){j=a+(i<<3)+4|0;g=r;e=p;while(1){i=f[e>>2]|0;if(i>>>0>>0){q=82;break b}if(i>>>0<=k>>>0)if((f[g+-4>>2]|0)>>>0<(f[j>>2]|0)>>>0){q=82;break b}g=e+-8|0;if((a|0)==(g|0))break;else{i=e;e=g;g=i}}}d=a+8|0;e=f[r>>2]|0;do if(l>>>0>=e>>>0){if(l>>>0<=e>>>0)if((f[a+4>>2]|0)>>>0<(f[s>>2]|0)>>>0)break;if((d|0)==(r|0)){q=107;break a}g=a+4|0;while(1){e=f[d>>2]|0;if(l>>>0>>0)break;if(l>>>0<=e>>>0)if((f[g>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)break;d=d+8|0;if((d|0)==(r|0)){q=107;break a}}l=d;k=f[l>>2]|0;l=f[l+4>>2]|0;i=r;j=f[i+4>>2]|0;n=d;f[n>>2]=f[i>>2];f[n+4>>2]=j;n=r;f[n>>2]=k;f[n+4>>2]=l;d=d+8|0}while(0);if((d|0)==(r|0)){q=107;break a}i=a+4|0;e=r;a=d;while(1){h=f[m>>2]|0;d=f[a>>2]|0;c:do if(h>>>0>=d>>>0)do{if(h>>>0<=d>>>0)if((f[i>>2]|0)>>>0<(f[a+4>>2]|0)>>>0)break c;a=a+8|0;d=f[a>>2]|0}while(h>>>0>=d>>>0);while(0);d=e;while(1){e=d;d=d+-8|0;g=f[d>>2]|0;if(h>>>0>>0)continue;if(h>>>0>g>>>0)break;if((f[i>>2]|0)>>>0>=(f[e+-4>>2]|0)>>>0)break}if(a>>>0>=d>>>0)continue b;n=a;l=f[n>>2]|0;n=f[n+4>>2]|0;j=d;k=f[j+4>>2]|0;e=a;f[e>>2]=f[j>>2];f[e+4>>2]=k;e=d;f[e>>2]=l;f[e+4>>2]=n;e=d;a=a+8|0}}if((q|0)==82){q=0;l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=e;j=f[i+4>>2]|0;m=a;f[m>>2]=f[i>>2];f[m+4>>2]=j;m=e;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}g=a+8|0;d:do if(g>>>0>>0){l=h;while(1){j=f[l>>2]|0;k=l+4|0;while(1){h=f[g>>2]|0;if(h>>>0>=j>>>0){if(h>>>0>j>>>0)break;if((f[g+4>>2]|0)>>>0>=(f[k>>2]|0)>>>0)break}g=g+8|0}i=e+-8|0;h=f[i>>2]|0;e:do if(h>>>0>>0)e=i;else while(1){if(h>>>0<=j>>>0)if((f[e+-4>>2]|0)>>>0<(f[k>>2]|0)>>>0){e=i;break e}e=i+-8|0;h=f[e>>2]|0;if(h>>>0>>0)break;else{m=i;i=e;e=m}}while(0);if(g>>>0>e>>>0){h=l;i=g;break d}k=g;j=f[k>>2]|0;k=f[k+4>>2]|0;h=e;i=f[h+4>>2]|0;m=g;f[m>>2]=f[h>>2];f[m+4>>2]=i;m=e;f[m>>2]=j;f[m+4>>2]=k;l=(l|0)==(g|0)?e:l;g=g+8|0;d=d+1|0}}else i=g;while(0);do if((i|0)!=(h|0)){e=f[h>>2]|0;g=f[i>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0)break;if((f[h+4>>2]|0)>>>0>=(f[i+4>>2]|0)>>>0)break}l=i;k=f[l>>2]|0;l=f[l+4>>2]|0;g=h;j=f[g+4>>2]|0;m=i;f[m>>2]=f[g>>2];f[m+4>>2]=j;m=h;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}while(0);if(!d){d=EZa(a,i,c)|0;e=i+8|0;if(EZa(e,b,c)|0){q=106;break}if(d){a=e;continue}}m=i;if((m-n|0)>=(o-m|0)){q=105;break}yZa(a,i,c);a=i+8|0}if((q|0)==105){q=0;yZa(i+8|0,b,c);b=i;continue}else if((q|0)==106){q=0;if(d){q=107;break}else{b=i;continue}}}if((q|0)==5){b=f[r>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}q=a;c=f[q>>2]|0;q=f[q+4>>2]|0;o=r;p=f[o+4>>2]|0;s=a;f[s>>2]=f[o>>2];f[s+4>>2]=p;s=r;f[s>>2]=c;f[s+4>>2]=q;return}else if((q|0)==9){g=a+8|0;e=f[g>>2]|0;b=f[a>>2]|0;if(e>>>0>>0)d=1;else if(e>>>0>b>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;b=f[r>>2]|0;if(b>>>0>>0)b=1;else if(b>>>0>e>>>0)b=0;else b=(f[s>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!b)return;d=g;s=f[d>>2]|0;d=f[d+4>>2]|0;c=r;q=f[c+4>>2]|0;b=g;f[b>>2]=f[c>>2];f[b+4>>2]=q;b=r;f[b>>2]=s;f[b+4>>2]=d;b=f[g>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}r=a;q=f[r>>2]|0;r=f[r+4>>2]|0;p=g;c=f[p+4>>2]|0;s=a;f[s>>2]=f[p>>2];f[s+4>>2]=c;s=g;f[s>>2]=q;f[s+4>>2]=r;return}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(b){c=r;q=f[c+4>>2]|0;s=a;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}c=g;q=f[c+4>>2]|0;f[a>>2]=f[c>>2];f[a+4>>2]=q;a=g;f[a>>2]=d;f[a+4>>2]=e;a=f[r>>2]|0;if(a>>>0>=d>>>0){if(a>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=e>>>0)return}c=r;q=f[c+4>>2]|0;s=g;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}else if((q|0)==27){BZa(a,a+8|0,a+16|0,r,c)|0;return}else if((q|0)==28){CZa(a,a+8|0,a+16|0,a+24|0,r,c)|0;return}else if((q|0)==30){DZa(a,b,c);return}else if((q|0)==107)return}function zZa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){AZa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;AZa(a,b);return}function AZa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function BZa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0>>0)e=1;else if(h>>>0>e>>>0)e=0;else e=(f[b+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[c>>2]|0;if(g>>>0>>0)h=1;else if(g>>>0>h>>>0)h=0;else h=(f[c+4>>2]|0)>>>0<(f[b+4>>2]|0)>>>0;do if(e){e=a;i=f[e>>2]|0;e=f[e+4>>2]|0;if(h){h=c;g=f[h+4>>2]|0;j=a;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=1;g=i;break}h=b;j=f[h+4>>2]|0;g=a;f[g>>2]=f[h>>2];f[g+4>>2]=j;g=b;f[g>>2]=i;f[g+4>>2]=e;g=f[c>>2]|0;if(g>>>0>=i>>>0){if(g>>>0>i>>>0){j=1;break}if((f[c+4>>2]|0)>>>0>=e>>>0){j=1;break}}h=c;g=f[h+4>>2]|0;j=b;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=2;g=i}else if(h){h=b;g=f[h>>2]|0;h=f[h+4>>2]|0;i=c;j=f[i+4>>2]|0;e=b;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=c;f[e>>2]=g;f[e+4>>2]=h;e=f[b>>2]|0;h=f[a>>2]|0;if(e>>>0>=h>>>0){if(e>>>0>h>>>0){j=1;break}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){j=1;break}}g=a;i=f[g>>2]|0;g=f[g+4>>2]|0;e=b;h=f[e+4>>2]|0;j=a;f[j>>2]=f[e>>2];f[j+4>>2]=h;j=b;f[j>>2]=i;f[j+4>>2]=g;j=2;g=f[c>>2]|0}else j=0;while(0);e=f[d>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0){b=j;return b|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){b=j;return b|0}}g=c;h=f[g>>2]|0;g=f[g+4>>2]|0;k=d;i=f[k+4>>2]|0;e=c;f[e>>2]=f[k>>2];f[e+4>>2]=i;e=d;f[e>>2]=h;f[e+4>>2]=g;e=j+1|0;g=f[c>>2]|0;h=f[b>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){k=e;return k|0}}g=b;h=f[g>>2]|0;g=f[g+4>>2]|0;d=c;k=f[d+4>>2]|0;e=b;f[e>>2]=f[d>>2];f[e+4>>2]=k;e=c;f[e>>2]=h;f[e+4>>2]=g;e=j+2|0;g=f[b>>2]|0;h=f[a>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){k=e;return k|0}}c=a;d=f[c>>2]|0;c=f[c+4>>2]|0;h=b;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=b;f[k>>2]=d;f[k+4>>2]=c;k=j+3|0;return k|0}function CZa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;i=BZa(a,b,c,d,g)|0;g=f[e>>2]|0;h=f[d>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){b=i;return b|0}if((f[e+4>>2]|0)>>>0>=(f[d+4>>2]|0)>>>0){b=i;return b|0}}h=d;j=f[h>>2]|0;h=f[h+4>>2]|0;l=e;k=f[l+4>>2]|0;g=d;f[g>>2]=f[l>>2];f[g+4>>2]=k;g=e;f[g>>2]=j;f[g+4>>2]=h;g=i+1|0;h=f[d>>2]|0;e=f[c>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){l=g;return l|0}}h=c;e=f[h>>2]|0;h=f[h+4>>2]|0;k=d;l=f[k+4>>2]|0;g=c;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=d;f[g>>2]=e;f[g+4>>2]=h;g=i+2|0;h=f[c>>2]|0;e=f[b>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){l=g;return l|0}}h=b;e=f[h>>2]|0;h=f[h+4>>2]|0;k=c;l=f[k+4>>2]|0;g=b;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=c;f[g>>2]=e;f[g+4>>2]=h;g=i+3|0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){l=g;return l|0}}k=a;j=f[k>>2]|0;k=f[k+4>>2]|0;d=b;c=f[d+4>>2]|0;l=a;f[l>>2]=f[d>>2];f[l+4>>2]=c;l=b;f[l>>2]=j;f[l+4>>2]=k;l=i+4|0;return l|0}function DZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+16|0;i=a+8|0;c=f[i>>2]|0;h=f[a>>2]|0;if(c>>>0>>0)d=1;else if(c>>>0>h>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;e=f[k>>2]|0;if(e>>>0>>0)g=1;else if(e>>>0>c>>>0)g=0;else g=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(d){d=a;c=f[d>>2]|0;d=f[d+4>>2]|0;if(g){i=k;j=f[i+4>>2]|0;e=a;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c;break}g=i;h=f[g+4>>2]|0;j=a;f[j>>2]=f[g>>2];f[j+4>>2]=h;j=i;f[j>>2]=c;f[j+4>>2]=d;if(e>>>0>=c>>>0){if(e>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=d>>>0)break}h=k;j=f[h+4>>2]|0;e=i;f[e>>2]=f[h>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c}else if(g){g=i;e=f[g>>2]|0;g=f[g+4>>2]|0;d=k;c=f[d>>2]|0;d=f[d+4>>2]|0;j=i;f[j>>2]=c;f[j+4>>2]=d;j=k;f[j>>2]=e;f[j+4>>2]=g;if(h>>>0<=c>>>0){if(h>>>0>>0)break;if((f[a+4>>2]|0)>>>0<=d>>>0)break}h=a;g=f[h>>2]|0;h=f[h+4>>2]|0;j=a;f[j>>2]=c;f[j+4>>2]=d;j=i;f[j>>2]=g;f[j+4>>2]=h}while(0);c=a+24|0;if((c|0)==(b|0))return;else{j=c;c=k}while(1){d=f[j>>2]|0;if(d>>>0>>0)l=24;else if(d>>>0<=e>>>0)if((f[j+4>>2]|0)>>>0<(f[c+4>>2]|0)>>>0)l=24;if((l|0)==24){l=0;i=j;h=f[i>>2]|0;i=f[i+4>>2]|0;e=c;g=f[e+4>>2]|0;k=j;f[k>>2]=f[e>>2];f[k+4>>2]=g;a:do if((c|0)!=(a|0)){g=c;while(1){e=c;c=g+-8|0;d=f[c>>2]|0;if(d>>>0<=h>>>0){if(d>>>0>>0){c=e;break a}if((f[g+-4>>2]|0)>>>0<=i>>>0){c=e;break a}}d=c;g=f[d+4>>2]|0;k=e;f[k>>2]=f[d>>2];f[k+4>>2]=g;if((c|0)==(a|0))break;else g=c}}while(0);k=c;f[k>>2]=h;f[k+4>>2]=i}c=j+8|0;if((c|0)==(b|0))break;e=f[j>>2]|0;k=j;j=c;c=k}return}function EZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;switch(b-a>>3|0){case 2:{c=b+-8|0;d=f[c>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=c;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=c;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}case 3:{h=a+8|0;g=b+-8|0;e=f[h>>2]|0;c=f[a>>2]|0;if(e>>>0>>0)d=1;else if(e>>>0>c>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;c=f[g>>2]|0;if(c>>>0>>0)c=1;else if(c>>>0>e>>>0)c=0;else c=(f[b+-4>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!c){b=1;return b|0}d=h;b=f[d>>2]|0;d=f[d+4>>2]|0;k=g;l=f[k+4>>2]|0;c=h;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=g;f[c>>2]=b;f[c+4>>2]=d;c=f[h>>2]|0;d=f[a>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=h;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=h;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(c){k=g;l=f[k+4>>2]|0;b=a;f[b>>2]=f[k>>2];f[b+4>>2]=l;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}k=h;l=f[k+4>>2]|0;c=a;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=h;f[c>>2]=d;f[c+4>>2]=e;c=f[g>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=e>>>0){b=1;return b|0}}l=g;a=f[l+4>>2]|0;b=h;f[b>>2]=f[l>>2];f[b+4>>2]=a;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}case 4:{BZa(a,a+8|0,a+16|0,b+-8|0,c)|0;b=1;return b|0}case 5:{CZa(a,a+8|0,a+16|0,a+24|0,b+-8|0,c)|0;b=1;return b|0}case 1:case 0:{b=1;return b|0}default:{d=a+16|0;j=a+8|0;c=f[j>>2]|0;i=f[a>>2]|0;if(c>>>0>>0)e=1;else if(c>>>0>i>>>0)e=0;else e=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[d>>2]|0;if(g>>>0>>0)h=1;else if(g>>>0>c>>>0)h=0;else h=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(e){e=a;c=f[e>>2]|0;e=f[e+4>>2]|0;if(h){j=d;k=f[j+4>>2]|0;g=a;f[g>>2]=f[j>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c;break}h=j;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=j;f[k>>2]=c;f[k+4>>2]=e;if(g>>>0>=c>>>0){if(g>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=e>>>0)break}i=d;k=f[i+4>>2]|0;g=j;f[g>>2]=f[i>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c}else if(h){h=j;g=f[h>>2]|0;h=f[h+4>>2]|0;e=d;c=f[e>>2]|0;e=f[e+4>>2]|0;k=j;f[k>>2]=c;f[k+4>>2]=e;k=d;f[k>>2]=g;f[k+4>>2]=h;if(i>>>0<=c>>>0){if(i>>>0>>0)break;if((f[a+4>>2]|0)>>>0<=e>>>0)break}i=a;h=f[i>>2]|0;i=f[i+4>>2]|0;k=a;f[k>>2]=c;f[k+4>>2]=e;k=j;f[k>>2]=h;f[k+4>>2]=i}while(0);c=a+24|0;a:do if((c|0)==(b|0)){d=1;c=0}else{k=c;c=0;while(1){e=f[k>>2]|0;if(e>>>0>>0)l=48;else if(e>>>0<=g>>>0)if((f[k+4>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)l=48;if((l|0)==48){l=0;j=k;i=f[j>>2]|0;j=f[j+4>>2]|0;e=d;g=f[e+4>>2]|0;h=k;f[h>>2]=f[e>>2];f[h+4>>2]=g;b:do if((d|0)!=(a|0)){h=d;while(1){g=d;d=h+-8|0;e=f[d>>2]|0;if(e>>>0<=i>>>0){if(e>>>0>>0){d=g;break b}if((f[h+-4>>2]|0)>>>0<=j>>>0){d=g;break b}}m=d;e=f[m+4>>2]|0;h=g;f[h>>2]=f[m>>2];f[h+4>>2]=e;if((d|0)==(a|0))break;else h=d}}while(0);m=d;f[m>>2]=i;f[m+4>>2]=j;c=c+1|0;if((c|0)==8){d=0;c=(k+8|0)==(b|0);break a}}d=k+8|0;if((d|0)==(b|0)){d=1;c=0;break a}g=f[k>>2]|0;m=k;k=d;d=m}}while(0);m=c|d;return m|0}}return 0}function FZa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=f[a>>2]|0;k=e;l=(f[b>>2]|0)-k|0;b=e+(l>>3<<3)|0;e=f[c>>2]|0;q=f[d>>2]|0;j=q;g=e;if((e|0)==(q|0)){r=b;return r|0}i=0;d=e;while(1){n=i+1|0;d=f[d>>2]|0;if((q|0)==(d|0))break;else i=n}if((i|0)<=-1){r=b;return r|0}p=a+8|0;h=f[p>>2]|0;r=a+4|0;o=f[r>>2]|0;d=o;if((i|0)<(h-d>>3|0)){h=d-b|0;d=h>>3;if((i|0)<(d|0)){g=j;d=o}else{i=(h|0)>0;if(i)while(1){g=f[g>>2]|0;if((d|0)>1)d=d+-1|0;else break}if((q|0)==(g|0))d=o;else{h=g;d=o;do{p=h+8|0;a=f[p+4>>2]|0;f[d>>2]=f[p>>2];f[d+4>>2]=a;h=f[h>>2]|0;d=(f[r>>2]|0)+8|0;f[r>>2]=d}while((q|0)!=(h|0))}if(!i){r=b;return r|0}}j=d-(b+(n<<3))|0;k=j>>3;h=b+(k<<3)|0;if(h>>>0>>0){i=d;do{p=h;a=f[p+4>>2]|0;q=i;f[q>>2]=f[p>>2];f[q+4>>2]=a;h=h+8|0;i=(f[r>>2]|0)+8|0;f[r>>2]=i}while(h>>>0>>0)}if(k){cQb(d+(0-k<<3)|0,b|0,j|0)|0;e=f[c>>2]|0}if((e|0)==(g|0)){r=b;return r|0}d=b;while(1){a=e+8|0;q=f[a+4>>2]|0;r=d;f[r>>2]=f[a>>2];f[r+4>>2]=q;e=f[e>>2]|0;if((g|0)==(e|0))break;else d=d+8|0}return b|0}else{d=(d-k>>3)+n|0;if(d>>>0>536870911)AMb(a);k=h-k|0;g=k>>2;g=k>>3>>>0<268435455?(g>>>0>>0?d:g):536870911;k=b;d=l>>3;do if(!g)m=0;else if(g>>>0>536870911)vd();else{m=pOb(g<<3)|0;break}while(0);l=m+(d<<3)|0;j=m+(g<<3)|0;i=l;d=l;g=e;h=e;while(1){c=g+8|0;e=f[c+4>>2]|0;f[i>>2]=f[c>>2];f[i+4>>2]=e;i=d+8|0;e=i;h=f[h>>2]|0;if((q|0)==(h|0))break;else{d=e;g=h}}g=f[a>>2]|0;d=k-g|0;h=l+(0-(d>>3)<<3)|0;if((d|0)>0)bQb(h|0,g|0,d|0)|0;d=(f[r>>2]|0)-k|0;if((d|0)>0){bQb(i|0,b|0,d|0)|0;e=i+(d>>>3<<3)|0;b=f[a>>2]|0}else b=g;f[a>>2]=h;f[r>>2]=e;f[p>>2]=j;if(!b){r=l;return r|0}sOb(b);r=l;return r|0}return 0}function GZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:while(1){o=b;r=b+-8|0;p=b+-16|0;s=b+-4|0;while(1){b:while(1){n=a;d=o-n|0;e=d>>3;switch(e|0){case 2:{q=5;break a}case 3:{q=9;break a}case 4:{q=27;break a}case 5:{q=28;break a}case 1:case 0:{q=107;break a}default:{}}if((d|0)<248){q=30;break a}i=(e|0)/2|0;h=a+(i<<3)|0;do if((d|0)>7992){d=(e|0)/4|0;d=KZa(a,a+(d<<3)|0,h,h+(d<<3)|0,r,c)|0;e=h;m=a}else{g=f[h>>2]|0;d=f[a>>2]|0;if(g>>>0>>0)e=1;else if(g>>>0>d>>>0)e=0;else e=(f[a+(i<<3)+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;d=f[r>>2]|0;if(d>>>0>>0)d=1;else if(d>>>0>g>>>0)d=0;else d=(f[s>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0;if(!e){if(!d){d=0;e=h;m=a;break}e=h;m=f[e>>2]|0;e=f[e+4>>2]|0;k=r;l=f[k+4>>2]|0;d=h;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=r;f[d>>2]=m;f[d+4>>2]=e;d=f[h>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[a+(i<<3)+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){d=1;e=h;m=a;break}}e=a;m=f[e>>2]|0;e=f[e+4>>2]|0;k=h;l=f[k+4>>2]|0;d=a;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=h;f[d>>2]=m;f[d+4>>2]=e;d=2;e=h;m=a;break}g=a;e=f[g>>2]|0;g=f[g+4>>2]|0;if(d){l=r;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=1;e=h;m=a;break}l=h;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=h;f[d>>2]=e;f[d+4>>2]=g;d=f[r>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[s>>2]|0)>>>0>=g>>>0){d=1;e=h;m=a;break}}l=r;m=f[l+4>>2]|0;d=h;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=2;e=h;m=a}while(0);l=f[m>>2]|0;k=f[e>>2]|0;if(l>>>0>>0){e=r;break}if(l>>>0<=k>>>0)if((f[a+4>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0){e=r;break}if((a|0)!=(p|0)){j=a+(i<<3)+4|0;g=r;e=p;while(1){i=f[e>>2]|0;if(i>>>0>>0){q=82;break b}if(i>>>0<=k>>>0)if((f[g+-4>>2]|0)>>>0<(f[j>>2]|0)>>>0){q=82;break b}g=e+-8|0;if((a|0)==(g|0))break;else{i=e;e=g;g=i}}}d=a+8|0;e=f[r>>2]|0;do if(l>>>0>=e>>>0){if(l>>>0<=e>>>0)if((f[a+4>>2]|0)>>>0<(f[s>>2]|0)>>>0)break;if((d|0)==(r|0)){q=107;break a}g=a+4|0;while(1){e=f[d>>2]|0;if(l>>>0>>0)break;if(l>>>0<=e>>>0)if((f[g>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)break;d=d+8|0;if((d|0)==(r|0)){q=107;break a}}l=d;k=f[l>>2]|0;l=f[l+4>>2]|0;i=r;j=f[i+4>>2]|0;n=d;f[n>>2]=f[i>>2];f[n+4>>2]=j;n=r;f[n>>2]=k;f[n+4>>2]=l;d=d+8|0}while(0);if((d|0)==(r|0)){q=107;break a}i=a+4|0;e=r;a=d;while(1){h=f[m>>2]|0;d=f[a>>2]|0;c:do if(h>>>0>=d>>>0)do{if(h>>>0<=d>>>0)if((f[i>>2]|0)>>>0<(f[a+4>>2]|0)>>>0)break c;a=a+8|0;d=f[a>>2]|0}while(h>>>0>=d>>>0);while(0);d=e;while(1){e=d;d=d+-8|0;g=f[d>>2]|0;if(h>>>0>>0)continue;if(h>>>0>g>>>0)break;if((f[i>>2]|0)>>>0>=(f[e+-4>>2]|0)>>>0)break}if(a>>>0>=d>>>0)continue b;n=a;l=f[n>>2]|0;n=f[n+4>>2]|0;j=d;k=f[j+4>>2]|0;e=a;f[e>>2]=f[j>>2];f[e+4>>2]=k;e=d;f[e>>2]=l;f[e+4>>2]=n;e=d;a=a+8|0}}if((q|0)==82){q=0;l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=e;j=f[i+4>>2]|0;m=a;f[m>>2]=f[i>>2];f[m+4>>2]=j;m=e;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}g=a+8|0;d:do if(g>>>0>>0){l=h;while(1){j=f[l>>2]|0;k=l+4|0;while(1){h=f[g>>2]|0;if(h>>>0>=j>>>0){if(h>>>0>j>>>0)break;if((f[g+4>>2]|0)>>>0>=(f[k>>2]|0)>>>0)break}g=g+8|0}i=e+-8|0;h=f[i>>2]|0;e:do if(h>>>0>>0)e=i;else while(1){if(h>>>0<=j>>>0)if((f[e+-4>>2]|0)>>>0<(f[k>>2]|0)>>>0){e=i;break e}e=i+-8|0;h=f[e>>2]|0;if(h>>>0>>0)break;else{m=i;i=e;e=m}}while(0);if(g>>>0>e>>>0){h=l;i=g;break d}k=g;j=f[k>>2]|0;k=f[k+4>>2]|0;h=e;i=f[h+4>>2]|0;m=g;f[m>>2]=f[h>>2];f[m+4>>2]=i;m=e;f[m>>2]=j;f[m+4>>2]=k;l=(l|0)==(g|0)?e:l;g=g+8|0;d=d+1|0}}else i=g;while(0);do if((i|0)!=(h|0)){e=f[h>>2]|0;g=f[i>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0)break;if((f[h+4>>2]|0)>>>0>=(f[i+4>>2]|0)>>>0)break}l=i;k=f[l>>2]|0;l=f[l+4>>2]|0;g=h;j=f[g+4>>2]|0;m=i;f[m>>2]=f[g>>2];f[m+4>>2]=j;m=h;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}while(0);if(!d){d=MZa(a,i,c)|0;e=i+8|0;if(MZa(e,b,c)|0){q=106;break}if(d){a=e;continue}}m=i;if((m-n|0)>=(o-m|0)){q=105;break}GZa(a,i,c);a=i+8|0}if((q|0)==105){q=0;GZa(i+8|0,b,c);b=i;continue}else if((q|0)==106){q=0;if(d){q=107;break}else{b=i;continue}}}if((q|0)==5){b=f[r>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}q=a;c=f[q>>2]|0;q=f[q+4>>2]|0;o=r;p=f[o+4>>2]|0;s=a;f[s>>2]=f[o>>2];f[s+4>>2]=p;s=r;f[s>>2]=c;f[s+4>>2]=q;return}else if((q|0)==9){g=a+8|0;e=f[g>>2]|0;b=f[a>>2]|0;if(e>>>0>>0)d=1;else if(e>>>0>b>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;b=f[r>>2]|0;if(b>>>0>>0)b=1;else if(b>>>0>e>>>0)b=0;else b=(f[s>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!b)return;d=g;s=f[d>>2]|0;d=f[d+4>>2]|0;c=r;q=f[c+4>>2]|0;b=g;f[b>>2]=f[c>>2];f[b+4>>2]=q;b=r;f[b>>2]=s;f[b+4>>2]=d;b=f[g>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}r=a;q=f[r>>2]|0;r=f[r+4>>2]|0;p=g;c=f[p+4>>2]|0;s=a;f[s>>2]=f[p>>2];f[s+4>>2]=c;s=g;f[s>>2]=q;f[s+4>>2]=r;return}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(b){c=r;q=f[c+4>>2]|0;s=a;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}c=g;q=f[c+4>>2]|0;f[a>>2]=f[c>>2];f[a+4>>2]=q;a=g;f[a>>2]=d;f[a+4>>2]=e;a=f[r>>2]|0;if(a>>>0>=d>>>0){if(a>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=e>>>0)return}c=r;q=f[c+4>>2]|0;s=g;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}else if((q|0)==27){JZa(a,a+8|0,a+16|0,r,c)|0;return}else if((q|0)==28){KZa(a,a+8|0,a+16|0,a+24|0,r,c)|0;return}else if((q|0)==30){LZa(a,b,c);return}else if((q|0)==107)return}function HZa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){IZa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;IZa(a,b);return}function IZa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function JZa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0>>0)e=1;else if(h>>>0>e>>>0)e=0;else e=(f[b+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[c>>2]|0;if(g>>>0>>0)h=1;else if(g>>>0>h>>>0)h=0;else h=(f[c+4>>2]|0)>>>0<(f[b+4>>2]|0)>>>0;do if(e){e=a;i=f[e>>2]|0;e=f[e+4>>2]|0;if(h){h=c;g=f[h+4>>2]|0;j=a;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=1;g=i;break}h=b;j=f[h+4>>2]|0;g=a;f[g>>2]=f[h>>2];f[g+4>>2]=j;g=b;f[g>>2]=i;f[g+4>>2]=e;g=f[c>>2]|0;if(g>>>0>=i>>>0){if(g>>>0>i>>>0){j=1;break}if((f[c+4>>2]|0)>>>0>=e>>>0){j=1;break}}h=c;g=f[h+4>>2]|0;j=b;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=2;g=i}else if(h){h=b;g=f[h>>2]|0;h=f[h+4>>2]|0;i=c;j=f[i+4>>2]|0;e=b;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=c;f[e>>2]=g;f[e+4>>2]=h;e=f[b>>2]|0;h=f[a>>2]|0;if(e>>>0>=h>>>0){if(e>>>0>h>>>0){j=1;break}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){j=1;break}}g=a;i=f[g>>2]|0;g=f[g+4>>2]|0;e=b;h=f[e+4>>2]|0;j=a;f[j>>2]=f[e>>2];f[j+4>>2]=h;j=b;f[j>>2]=i;f[j+4>>2]=g;j=2;g=f[c>>2]|0}else j=0;while(0);e=f[d>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0){b=j;return b|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){b=j;return b|0}}g=c;h=f[g>>2]|0;g=f[g+4>>2]|0;k=d;i=f[k+4>>2]|0;e=c;f[e>>2]=f[k>>2];f[e+4>>2]=i;e=d;f[e>>2]=h;f[e+4>>2]=g;e=j+1|0;g=f[c>>2]|0;h=f[b>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){k=e;return k|0}}g=b;h=f[g>>2]|0;g=f[g+4>>2]|0;d=c;k=f[d+4>>2]|0;e=b;f[e>>2]=f[d>>2];f[e+4>>2]=k;e=c;f[e>>2]=h;f[e+4>>2]=g;e=j+2|0;g=f[b>>2]|0;h=f[a>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){k=e;return k|0}}c=a;d=f[c>>2]|0;c=f[c+4>>2]|0;h=b;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=b;f[k>>2]=d;f[k+4>>2]=c;k=j+3|0;return k|0}function KZa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;i=JZa(a,b,c,d,g)|0;g=f[e>>2]|0;h=f[d>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){b=i;return b|0}if((f[e+4>>2]|0)>>>0>=(f[d+4>>2]|0)>>>0){b=i;return b|0}}h=d;j=f[h>>2]|0;h=f[h+4>>2]|0;l=e;k=f[l+4>>2]|0;g=d;f[g>>2]=f[l>>2];f[g+4>>2]=k;g=e;f[g>>2]=j;f[g+4>>2]=h;g=i+1|0;h=f[d>>2]|0;e=f[c>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){l=g;return l|0}}h=c;e=f[h>>2]|0;h=f[h+4>>2]|0;k=d;l=f[k+4>>2]|0;g=c;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=d;f[g>>2]=e;f[g+4>>2]=h;g=i+2|0;h=f[c>>2]|0;e=f[b>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){l=g;return l|0}}h=b;e=f[h>>2]|0;h=f[h+4>>2]|0;k=c;l=f[k+4>>2]|0;g=b;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=c;f[g>>2]=e;f[g+4>>2]=h;g=i+3|0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){l=g;return l|0}}k=a;j=f[k>>2]|0;k=f[k+4>>2]|0;d=b;c=f[d+4>>2]|0;l=a;f[l>>2]=f[d>>2];f[l+4>>2]=c;l=b;f[l>>2]=j;f[l+4>>2]=k;l=i+4|0;return l|0}function LZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+16|0;i=a+8|0;c=f[i>>2]|0;h=f[a>>2]|0;if(c>>>0>>0)d=1;else if(c>>>0>h>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;e=f[k>>2]|0;if(e>>>0>>0)g=1;else if(e>>>0>c>>>0)g=0;else g=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(d){d=a;c=f[d>>2]|0;d=f[d+4>>2]|0;if(g){i=k;j=f[i+4>>2]|0;e=a;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c;break}g=i;h=f[g+4>>2]|0;j=a;f[j>>2]=f[g>>2];f[j+4>>2]=h;j=i;f[j>>2]=c;f[j+4>>2]=d;if(e>>>0>=c>>>0){if(e>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=d>>>0)break}h=k;j=f[h+4>>2]|0;e=i;f[e>>2]=f[h>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c}else if(g){g=i;e=f[g>>2]|0;g=f[g+4>>2]|0;d=k;c=f[d>>2]|0;d=f[d+4>>2]|0;j=i;f[j>>2]=c;f[j+4>>2]=d;j=k;f[j>>2]=e;f[j+4>>2]=g;if(h>>>0<=c>>>0){if(h>>>0>>0)break;if((f[a+4>>2]|0)>>>0<=d>>>0)break}h=a;g=f[h>>2]|0;h=f[h+4>>2]|0;j=a;f[j>>2]=c;f[j+4>>2]=d;j=i;f[j>>2]=g;f[j+4>>2]=h}while(0);c=a+24|0;if((c|0)==(b|0))return;else{j=c;c=k}while(1){d=f[j>>2]|0;if(d>>>0>>0)l=24;else if(d>>>0<=e>>>0)if((f[j+4>>2]|0)>>>0<(f[c+4>>2]|0)>>>0)l=24;if((l|0)==24){l=0;i=j;h=f[i>>2]|0;i=f[i+4>>2]|0;e=c;g=f[e+4>>2]|0;k=j;f[k>>2]=f[e>>2];f[k+4>>2]=g;a:do if((c|0)!=(a|0)){g=c;while(1){e=c;c=g+-8|0;d=f[c>>2]|0;if(d>>>0<=h>>>0){if(d>>>0>>0){c=e;break a}if((f[g+-4>>2]|0)>>>0<=i>>>0){c=e;break a}}d=c;g=f[d+4>>2]|0;k=e;f[k>>2]=f[d>>2];f[k+4>>2]=g;if((c|0)==(a|0))break;else g=c}}while(0);k=c;f[k>>2]=h;f[k+4>>2]=i}c=j+8|0;if((c|0)==(b|0))break;e=f[j>>2]|0;k=j;j=c;c=k}return}function MZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;switch(b-a>>3|0){case 2:{c=b+-8|0;d=f[c>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=c;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=c;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}case 3:{h=a+8|0;g=b+-8|0;e=f[h>>2]|0;c=f[a>>2]|0;if(e>>>0>>0)d=1;else if(e>>>0>c>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;c=f[g>>2]|0;if(c>>>0>>0)c=1;else if(c>>>0>e>>>0)c=0;else c=(f[b+-4>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!c){b=1;return b|0}d=h;b=f[d>>2]|0;d=f[d+4>>2]|0;k=g;l=f[k+4>>2]|0;c=h;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=g;f[c>>2]=b;f[c+4>>2]=d;c=f[h>>2]|0;d=f[a>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=h;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=h;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(c){k=g;l=f[k+4>>2]|0;b=a;f[b>>2]=f[k>>2];f[b+4>>2]=l;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}k=h;l=f[k+4>>2]|0;c=a;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=h;f[c>>2]=d;f[c+4>>2]=e;c=f[g>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=e>>>0){b=1;return b|0}}l=g;a=f[l+4>>2]|0;b=h;f[b>>2]=f[l>>2];f[b+4>>2]=a;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}case 4:{JZa(a,a+8|0,a+16|0,b+-8|0,c)|0;b=1;return b|0}case 5:{KZa(a,a+8|0,a+16|0,a+24|0,b+-8|0,c)|0;b=1;return b|0}case 1:case 0:{b=1;return b|0}default:{d=a+16|0;j=a+8|0;c=f[j>>2]|0;i=f[a>>2]|0;if(c>>>0>>0)e=1;else if(c>>>0>i>>>0)e=0;else e=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[d>>2]|0;if(g>>>0>>0)h=1;else if(g>>>0>c>>>0)h=0;else h=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(e){e=a;c=f[e>>2]|0;e=f[e+4>>2]|0;if(h){j=d;k=f[j+4>>2]|0;g=a;f[g>>2]=f[j>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c;break}h=j;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=j;f[k>>2]=c;f[k+4>>2]=e;if(g>>>0>=c>>>0){if(g>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=e>>>0)break}i=d;k=f[i+4>>2]|0;g=j;f[g>>2]=f[i>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c}else if(h){h=j;g=f[h>>2]|0;h=f[h+4>>2]|0;e=d;c=f[e>>2]|0;e=f[e+4>>2]|0;k=j;f[k>>2]=c;f[k+4>>2]=e;k=d;f[k>>2]=g;f[k+4>>2]=h;if(i>>>0<=c>>>0){if(i>>>0>>0)break;if((f[a+4>>2]|0)>>>0<=e>>>0)break}i=a;h=f[i>>2]|0;i=f[i+4>>2]|0;k=a;f[k>>2]=c;f[k+4>>2]=e;k=j;f[k>>2]=h;f[k+4>>2]=i}while(0);c=a+24|0;a:do if((c|0)==(b|0)){d=1;c=0}else{k=c;c=0;while(1){e=f[k>>2]|0;if(e>>>0>>0)l=48;else if(e>>>0<=g>>>0)if((f[k+4>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)l=48;if((l|0)==48){l=0;j=k;i=f[j>>2]|0;j=f[j+4>>2]|0;e=d;g=f[e+4>>2]|0;h=k;f[h>>2]=f[e>>2];f[h+4>>2]=g;b:do if((d|0)!=(a|0)){h=d;while(1){g=d;d=h+-8|0;e=f[d>>2]|0;if(e>>>0<=i>>>0){if(e>>>0>>0){d=g;break b}if((f[h+-4>>2]|0)>>>0<=j>>>0){d=g;break b}}m=d;e=f[m+4>>2]|0;h=g;f[h>>2]=f[m>>2];f[h+4>>2]=e;if((d|0)==(a|0))break;else h=d}}while(0);m=d;f[m>>2]=i;f[m+4>>2]=j;c=c+1|0;if((c|0)==8){d=0;c=(k+8|0)==(b|0);break a}}d=k+8|0;if((d|0)==(b|0)){d=1;c=0;break a}g=f[k>>2]|0;m=k;k=d;d=m}}while(0);m=c|d;return m|0}}return 0}function NZa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=f[a>>2]|0;k=e;l=(f[b>>2]|0)-k|0;b=e+(l>>3<<3)|0;e=f[c>>2]|0;q=f[d>>2]|0;j=q;g=e;if((e|0)==(q|0)){r=b;return r|0}i=0;d=e;while(1){n=i+1|0;d=f[d>>2]|0;if((q|0)==(d|0))break;else i=n}if((i|0)<=-1){r=b;return r|0}p=a+8|0;h=f[p>>2]|0;r=a+4|0;o=f[r>>2]|0;d=o;if((i|0)<(h-d>>3|0)){h=d-b|0;d=h>>3;if((i|0)<(d|0)){g=j;d=o}else{i=(h|0)>0;if(i)while(1){g=f[g>>2]|0;if((d|0)>1)d=d+-1|0;else break}if((q|0)==(g|0))d=o;else{h=g;d=o;do{p=h+8|0;a=f[p+4>>2]|0;f[d>>2]=f[p>>2];f[d+4>>2]=a;h=f[h>>2]|0;d=(f[r>>2]|0)+8|0;f[r>>2]=d}while((q|0)!=(h|0))}if(!i){r=b;return r|0}}j=d-(b+(n<<3))|0;k=j>>3;h=b+(k<<3)|0;if(h>>>0>>0){i=d;do{p=h;a=f[p+4>>2]|0;q=i;f[q>>2]=f[p>>2];f[q+4>>2]=a;h=h+8|0;i=(f[r>>2]|0)+8|0;f[r>>2]=i}while(h>>>0>>0)}if(k){cQb(d+(0-k<<3)|0,b|0,j|0)|0;e=f[c>>2]|0}if((e|0)==(g|0)){r=b;return r|0}d=b;while(1){a=e+8|0;q=f[a+4>>2]|0;r=d;f[r>>2]=f[a>>2];f[r+4>>2]=q;e=f[e>>2]|0;if((g|0)==(e|0))break;else d=d+8|0}return b|0}else{d=(d-k>>3)+n|0;if(d>>>0>536870911)AMb(a);k=h-k|0;g=k>>2;g=k>>3>>>0<268435455?(g>>>0>>0?d:g):536870911;k=b;d=l>>3;do if(!g)m=0;else if(g>>>0>536870911)vd();else{m=pOb(g<<3)|0;break}while(0);l=m+(d<<3)|0;j=m+(g<<3)|0;i=l;d=l;g=e;h=e;while(1){c=g+8|0;e=f[c+4>>2]|0;f[i>>2]=f[c>>2];f[i+4>>2]=e;i=d+8|0;e=i;h=f[h>>2]|0;if((q|0)==(h|0))break;else{d=e;g=h}}g=f[a>>2]|0;d=k-g|0;h=l+(0-(d>>3)<<3)|0;if((d|0)>0)bQb(h|0,g|0,d|0)|0;d=(f[r>>2]|0)-k|0;if((d|0)>0){bQb(i|0,b|0,d|0)|0;e=i+(d>>>3<<3)|0;b=f[a>>2]|0}else b=g;f[a>>2]=h;f[r>>2]=e;f[p>>2]=j;if(!b){r=l;return r|0}sOb(b);r=l;return r|0}return 0}function OZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:while(1){o=b;r=b+-8|0;p=b+-16|0;s=b+-4|0;while(1){b:while(1){n=a;d=o-n|0;e=d>>3;switch(e|0){case 2:{q=5;break a}case 3:{q=9;break a}case 4:{q=27;break a}case 5:{q=28;break a}case 1:case 0:{q=107;break a}default:{}}if((d|0)<248){q=30;break a}i=(e|0)/2|0;h=a+(i<<3)|0;do if((d|0)>7992){d=(e|0)/4|0;d=SZa(a,a+(d<<3)|0,h,h+(d<<3)|0,r,c)|0;e=h;m=a}else{g=f[h>>2]|0;d=f[a>>2]|0;if(g>>>0>>0)e=1;else if(g>>>0>d>>>0)e=0;else e=(f[a+(i<<3)+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;d=f[r>>2]|0;if(d>>>0>>0)d=1;else if(d>>>0>g>>>0)d=0;else d=(f[s>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0;if(!e){if(!d){d=0;e=h;m=a;break}e=h;m=f[e>>2]|0;e=f[e+4>>2]|0;k=r;l=f[k+4>>2]|0;d=h;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=r;f[d>>2]=m;f[d+4>>2]=e;d=f[h>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[a+(i<<3)+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){d=1;e=h;m=a;break}}e=a;m=f[e>>2]|0;e=f[e+4>>2]|0;k=h;l=f[k+4>>2]|0;d=a;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=h;f[d>>2]=m;f[d+4>>2]=e;d=2;e=h;m=a;break}g=a;e=f[g>>2]|0;g=f[g+4>>2]|0;if(d){l=r;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=1;e=h;m=a;break}l=h;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=h;f[d>>2]=e;f[d+4>>2]=g;d=f[r>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[s>>2]|0)>>>0>=g>>>0){d=1;e=h;m=a;break}}l=r;m=f[l+4>>2]|0;d=h;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=2;e=h;m=a}while(0);l=f[m>>2]|0;k=f[e>>2]|0;if(l>>>0>>0){e=r;break}if(l>>>0<=k>>>0)if((f[a+4>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0){e=r;break}if((a|0)!=(p|0)){j=a+(i<<3)+4|0;g=r;e=p;while(1){i=f[e>>2]|0;if(i>>>0>>0){q=82;break b}if(i>>>0<=k>>>0)if((f[g+-4>>2]|0)>>>0<(f[j>>2]|0)>>>0){q=82;break b}g=e+-8|0;if((a|0)==(g|0))break;else{i=e;e=g;g=i}}}d=a+8|0;e=f[r>>2]|0;do if(l>>>0>=e>>>0){if(l>>>0<=e>>>0)if((f[a+4>>2]|0)>>>0<(f[s>>2]|0)>>>0)break;if((d|0)==(r|0)){q=107;break a}g=a+4|0;while(1){e=f[d>>2]|0;if(l>>>0>>0)break;if(l>>>0<=e>>>0)if((f[g>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)break;d=d+8|0;if((d|0)==(r|0)){q=107;break a}}l=d;k=f[l>>2]|0;l=f[l+4>>2]|0;i=r;j=f[i+4>>2]|0;n=d;f[n>>2]=f[i>>2];f[n+4>>2]=j;n=r;f[n>>2]=k;f[n+4>>2]=l;d=d+8|0}while(0);if((d|0)==(r|0)){q=107;break a}i=a+4|0;e=r;a=d;while(1){h=f[m>>2]|0;d=f[a>>2]|0;c:do if(h>>>0>=d>>>0)do{if(h>>>0<=d>>>0)if((f[i>>2]|0)>>>0<(f[a+4>>2]|0)>>>0)break c;a=a+8|0;d=f[a>>2]|0}while(h>>>0>=d>>>0);while(0);d=e;while(1){e=d;d=d+-8|0;g=f[d>>2]|0;if(h>>>0>>0)continue;if(h>>>0>g>>>0)break;if((f[i>>2]|0)>>>0>=(f[e+-4>>2]|0)>>>0)break}if(a>>>0>=d>>>0)continue b;n=a;l=f[n>>2]|0;n=f[n+4>>2]|0;j=d;k=f[j+4>>2]|0;e=a;f[e>>2]=f[j>>2];f[e+4>>2]=k;e=d;f[e>>2]=l;f[e+4>>2]=n;e=d;a=a+8|0}}if((q|0)==82){q=0;l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=e;j=f[i+4>>2]|0;m=a;f[m>>2]=f[i>>2];f[m+4>>2]=j;m=e;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}g=a+8|0;d:do if(g>>>0>>0){l=h;while(1){j=f[l>>2]|0;k=l+4|0;while(1){h=f[g>>2]|0;if(h>>>0>=j>>>0){if(h>>>0>j>>>0)break;if((f[g+4>>2]|0)>>>0>=(f[k>>2]|0)>>>0)break}g=g+8|0}i=e+-8|0;h=f[i>>2]|0;e:do if(h>>>0>>0)e=i;else while(1){if(h>>>0<=j>>>0)if((f[e+-4>>2]|0)>>>0<(f[k>>2]|0)>>>0){e=i;break e}e=i+-8|0;h=f[e>>2]|0;if(h>>>0>>0)break;else{m=i;i=e;e=m}}while(0);if(g>>>0>e>>>0){h=l;i=g;break d}k=g;j=f[k>>2]|0;k=f[k+4>>2]|0;h=e;i=f[h+4>>2]|0;m=g;f[m>>2]=f[h>>2];f[m+4>>2]=i;m=e;f[m>>2]=j;f[m+4>>2]=k;l=(l|0)==(g|0)?e:l;g=g+8|0;d=d+1|0}}else i=g;while(0);do if((i|0)!=(h|0)){e=f[h>>2]|0;g=f[i>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0)break;if((f[h+4>>2]|0)>>>0>=(f[i+4>>2]|0)>>>0)break}l=i;k=f[l>>2]|0;l=f[l+4>>2]|0;g=h;j=f[g+4>>2]|0;m=i;f[m>>2]=f[g>>2];f[m+4>>2]=j;m=h;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}while(0);if(!d){d=UZa(a,i,c)|0;e=i+8|0;if(UZa(e,b,c)|0){q=106;break}if(d){a=e;continue}}m=i;if((m-n|0)>=(o-m|0)){q=105;break}OZa(a,i,c);a=i+8|0}if((q|0)==105){q=0;OZa(i+8|0,b,c);b=i;continue}else if((q|0)==106){q=0;if(d){q=107;break}else{b=i;continue}}}if((q|0)==5){b=f[r>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}q=a;c=f[q>>2]|0;q=f[q+4>>2]|0;o=r;p=f[o+4>>2]|0;s=a;f[s>>2]=f[o>>2];f[s+4>>2]=p;s=r;f[s>>2]=c;f[s+4>>2]=q;return}else if((q|0)==9){g=a+8|0;e=f[g>>2]|0;b=f[a>>2]|0;if(e>>>0>>0)d=1;else if(e>>>0>b>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;b=f[r>>2]|0;if(b>>>0>>0)b=1;else if(b>>>0>e>>>0)b=0;else b=(f[s>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!b)return;d=g;s=f[d>>2]|0;d=f[d+4>>2]|0;c=r;q=f[c+4>>2]|0;b=g;f[b>>2]=f[c>>2];f[b+4>>2]=q;b=r;f[b>>2]=s;f[b+4>>2]=d;b=f[g>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}r=a;q=f[r>>2]|0;r=f[r+4>>2]|0;p=g;c=f[p+4>>2]|0;s=a;f[s>>2]=f[p>>2];f[s+4>>2]=c;s=g;f[s>>2]=q;f[s+4>>2]=r;return}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(b){c=r;q=f[c+4>>2]|0;s=a;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}c=g;q=f[c+4>>2]|0;f[a>>2]=f[c>>2];f[a+4>>2]=q;a=g;f[a>>2]=d;f[a+4>>2]=e;a=f[r>>2]|0;if(a>>>0>=d>>>0){if(a>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=e>>>0)return}c=r;q=f[c+4>>2]|0;s=g;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}else if((q|0)==27){RZa(a,a+8|0,a+16|0,r,c)|0;return}else if((q|0)==28){SZa(a,a+8|0,a+16|0,a+24|0,r,c)|0;return}else if((q|0)==30){TZa(a,b,c);return}else if((q|0)==107)return}function PZa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){QZa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;QZa(a,b);return}function QZa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function RZa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0>>0)e=1;else if(h>>>0>e>>>0)e=0;else e=(f[b+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[c>>2]|0;if(g>>>0>>0)h=1;else if(g>>>0>h>>>0)h=0;else h=(f[c+4>>2]|0)>>>0<(f[b+4>>2]|0)>>>0;do if(e){e=a;i=f[e>>2]|0;e=f[e+4>>2]|0;if(h){h=c;g=f[h+4>>2]|0;j=a;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=1;g=i;break}h=b;j=f[h+4>>2]|0;g=a;f[g>>2]=f[h>>2];f[g+4>>2]=j;g=b;f[g>>2]=i;f[g+4>>2]=e;g=f[c>>2]|0;if(g>>>0>=i>>>0){if(g>>>0>i>>>0){j=1;break}if((f[c+4>>2]|0)>>>0>=e>>>0){j=1;break}}h=c;g=f[h+4>>2]|0;j=b;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=2;g=i}else if(h){h=b;g=f[h>>2]|0;h=f[h+4>>2]|0;i=c;j=f[i+4>>2]|0;e=b;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=c;f[e>>2]=g;f[e+4>>2]=h;e=f[b>>2]|0;h=f[a>>2]|0;if(e>>>0>=h>>>0){if(e>>>0>h>>>0){j=1;break}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){j=1;break}}g=a;i=f[g>>2]|0;g=f[g+4>>2]|0;e=b;h=f[e+4>>2]|0;j=a;f[j>>2]=f[e>>2];f[j+4>>2]=h;j=b;f[j>>2]=i;f[j+4>>2]=g;j=2;g=f[c>>2]|0}else j=0;while(0);e=f[d>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0){b=j;return b|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){b=j;return b|0}}g=c;h=f[g>>2]|0;g=f[g+4>>2]|0;k=d;i=f[k+4>>2]|0;e=c;f[e>>2]=f[k>>2];f[e+4>>2]=i;e=d;f[e>>2]=h;f[e+4>>2]=g;e=j+1|0;g=f[c>>2]|0;h=f[b>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){k=e;return k|0}}g=b;h=f[g>>2]|0;g=f[g+4>>2]|0;d=c;k=f[d+4>>2]|0;e=b;f[e>>2]=f[d>>2];f[e+4>>2]=k;e=c;f[e>>2]=h;f[e+4>>2]=g;e=j+2|0;g=f[b>>2]|0;h=f[a>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){k=e;return k|0}}c=a;d=f[c>>2]|0;c=f[c+4>>2]|0;h=b;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=b;f[k>>2]=d;f[k+4>>2]=c;k=j+3|0;return k|0}function SZa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;i=RZa(a,b,c,d,g)|0;g=f[e>>2]|0;h=f[d>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){b=i;return b|0}if((f[e+4>>2]|0)>>>0>=(f[d+4>>2]|0)>>>0){b=i;return b|0}}h=d;j=f[h>>2]|0;h=f[h+4>>2]|0;l=e;k=f[l+4>>2]|0;g=d;f[g>>2]=f[l>>2];f[g+4>>2]=k;g=e;f[g>>2]=j;f[g+4>>2]=h;g=i+1|0;h=f[d>>2]|0;e=f[c>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){l=g;return l|0}}h=c;e=f[h>>2]|0;h=f[h+4>>2]|0;k=d;l=f[k+4>>2]|0;g=c;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=d;f[g>>2]=e;f[g+4>>2]=h;g=i+2|0;h=f[c>>2]|0;e=f[b>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){l=g;return l|0}}h=b;e=f[h>>2]|0;h=f[h+4>>2]|0;k=c;l=f[k+4>>2]|0;g=b;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=c;f[g>>2]=e;f[g+4>>2]=h;g=i+3|0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){l=g;return l|0}}k=a;j=f[k>>2]|0;k=f[k+4>>2]|0;d=b;c=f[d+4>>2]|0;l=a;f[l>>2]=f[d>>2];f[l+4>>2]=c;l=b;f[l>>2]=j;f[l+4>>2]=k;l=i+4|0;return l|0}function TZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+16|0;i=a+8|0;c=f[i>>2]|0;h=f[a>>2]|0;if(c>>>0>>0)d=1;else if(c>>>0>h>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;e=f[k>>2]|0;if(e>>>0>>0)g=1;else if(e>>>0>c>>>0)g=0;else g=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(d){d=a;c=f[d>>2]|0;d=f[d+4>>2]|0;if(g){i=k;j=f[i+4>>2]|0;e=a;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c;break}g=i;h=f[g+4>>2]|0;j=a;f[j>>2]=f[g>>2];f[j+4>>2]=h;j=i;f[j>>2]=c;f[j+4>>2]=d;if(e>>>0>=c>>>0){if(e>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=d>>>0)break}h=k;j=f[h+4>>2]|0;e=i;f[e>>2]=f[h>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c}else if(g){g=i;e=f[g>>2]|0;g=f[g+4>>2]|0;d=k;c=f[d>>2]|0;d=f[d+4>>2]|0;j=i;f[j>>2]=c;f[j+4>>2]=d;j=k;f[j>>2]=e;f[j+4>>2]=g;if(h>>>0<=c>>>0){if(h>>>0>>0)break;if((f[a+4>>2]|0)>>>0<=d>>>0)break}h=a;g=f[h>>2]|0;h=f[h+4>>2]|0;j=a;f[j>>2]=c;f[j+4>>2]=d;j=i;f[j>>2]=g;f[j+4>>2]=h}while(0);c=a+24|0;if((c|0)==(b|0))return;else{j=c;c=k}while(1){d=f[j>>2]|0;if(d>>>0>>0)l=24;else if(d>>>0<=e>>>0)if((f[j+4>>2]|0)>>>0<(f[c+4>>2]|0)>>>0)l=24;if((l|0)==24){l=0;i=j;h=f[i>>2]|0;i=f[i+4>>2]|0;e=c;g=f[e+4>>2]|0;k=j;f[k>>2]=f[e>>2];f[k+4>>2]=g;a:do if((c|0)!=(a|0)){g=c;while(1){e=c;c=g+-8|0;d=f[c>>2]|0;if(d>>>0<=h>>>0){if(d>>>0>>0){c=e;break a}if((f[g+-4>>2]|0)>>>0<=i>>>0){c=e;break a}}d=c;g=f[d+4>>2]|0;k=e;f[k>>2]=f[d>>2];f[k+4>>2]=g;if((c|0)==(a|0))break;else g=c}}while(0);k=c;f[k>>2]=h;f[k+4>>2]=i}c=j+8|0;if((c|0)==(b|0))break;e=f[j>>2]|0;k=j;j=c;c=k}return}function UZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;switch(b-a>>3|0){case 2:{c=b+-8|0;d=f[c>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=c;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=c;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}case 3:{h=a+8|0;g=b+-8|0;e=f[h>>2]|0;c=f[a>>2]|0;if(e>>>0>>0)d=1;else if(e>>>0>c>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;c=f[g>>2]|0;if(c>>>0>>0)c=1;else if(c>>>0>e>>>0)c=0;else c=(f[b+-4>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!c){b=1;return b|0}d=h;b=f[d>>2]|0;d=f[d+4>>2]|0;k=g;l=f[k+4>>2]|0;c=h;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=g;f[c>>2]=b;f[c+4>>2]=d;c=f[h>>2]|0;d=f[a>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=h;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=h;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(c){k=g;l=f[k+4>>2]|0;b=a;f[b>>2]=f[k>>2];f[b+4>>2]=l;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}k=h;l=f[k+4>>2]|0;c=a;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=h;f[c>>2]=d;f[c+4>>2]=e;c=f[g>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=e>>>0){b=1;return b|0}}l=g;a=f[l+4>>2]|0;b=h;f[b>>2]=f[l>>2];f[b+4>>2]=a;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}case 4:{RZa(a,a+8|0,a+16|0,b+-8|0,c)|0;b=1;return b|0}case 5:{SZa(a,a+8|0,a+16|0,a+24|0,b+-8|0,c)|0;b=1;return b|0}case 1:case 0:{b=1;return b|0}default:{d=a+16|0;j=a+8|0;c=f[j>>2]|0;i=f[a>>2]|0;if(c>>>0>>0)e=1;else if(c>>>0>i>>>0)e=0;else e=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[d>>2]|0;if(g>>>0>>0)h=1;else if(g>>>0>c>>>0)h=0;else h=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(e){e=a;c=f[e>>2]|0;e=f[e+4>>2]|0;if(h){j=d;k=f[j+4>>2]|0;g=a;f[g>>2]=f[j>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c;break}h=j;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=j;f[k>>2]=c;f[k+4>>2]=e;if(g>>>0>=c>>>0){if(g>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=e>>>0)break}i=d;k=f[i+4>>2]|0;g=j;f[g>>2]=f[i>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c}else if(h){h=j;g=f[h>>2]|0;h=f[h+4>>2]|0;e=d;c=f[e>>2]|0;e=f[e+4>>2]|0;k=j;f[k>>2]=c;f[k+4>>2]=e;k=d;f[k>>2]=g;f[k+4>>2]=h;if(i>>>0<=c>>>0){if(i>>>0>>0)break;if((f[a+4>>2]|0)>>>0<=e>>>0)break}i=a;h=f[i>>2]|0;i=f[i+4>>2]|0;k=a;f[k>>2]=c;f[k+4>>2]=e;k=j;f[k>>2]=h;f[k+4>>2]=i}while(0);c=a+24|0;a:do if((c|0)==(b|0)){d=1;c=0}else{k=c;c=0;while(1){e=f[k>>2]|0;if(e>>>0>>0)l=48;else if(e>>>0<=g>>>0)if((f[k+4>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)l=48;if((l|0)==48){l=0;j=k;i=f[j>>2]|0;j=f[j+4>>2]|0;e=d;g=f[e+4>>2]|0;h=k;f[h>>2]=f[e>>2];f[h+4>>2]=g;b:do if((d|0)!=(a|0)){h=d;while(1){g=d;d=h+-8|0;e=f[d>>2]|0;if(e>>>0<=i>>>0){if(e>>>0>>0){d=g;break b}if((f[h+-4>>2]|0)>>>0<=j>>>0){d=g;break b}}m=d;e=f[m+4>>2]|0;h=g;f[h>>2]=f[m>>2];f[h+4>>2]=e;if((d|0)==(a|0))break;else h=d}}while(0);m=d;f[m>>2]=i;f[m+4>>2]=j;c=c+1|0;if((c|0)==8){d=0;c=(k+8|0)==(b|0);break a}}d=k+8|0;if((d|0)==(b|0)){d=1;c=0;break a}g=f[k>>2]|0;m=k;k=d;d=m}}while(0);m=c|d;return m|0}}return 0}function VZa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=f[a>>2]|0;k=e;l=(f[b>>2]|0)-k|0;b=e+(l>>3<<3)|0;e=f[c>>2]|0;q=f[d>>2]|0;j=q;g=e;if((e|0)==(q|0)){r=b;return r|0}i=0;d=e;while(1){n=i+1|0;d=f[d>>2]|0;if((q|0)==(d|0))break;else i=n}if((i|0)<=-1){r=b;return r|0}p=a+8|0;h=f[p>>2]|0;r=a+4|0;o=f[r>>2]|0;d=o;if((i|0)<(h-d>>3|0)){h=d-b|0;d=h>>3;if((i|0)<(d|0)){g=j;d=o}else{i=(h|0)>0;if(i)while(1){g=f[g>>2]|0;if((d|0)>1)d=d+-1|0;else break}if((q|0)==(g|0))d=o;else{h=g;d=o;do{p=h+8|0;a=f[p+4>>2]|0;f[d>>2]=f[p>>2];f[d+4>>2]=a;h=f[h>>2]|0;d=(f[r>>2]|0)+8|0;f[r>>2]=d}while((q|0)!=(h|0))}if(!i){r=b;return r|0}}j=d-(b+(n<<3))|0;k=j>>3;h=b+(k<<3)|0;if(h>>>0>>0){i=d;do{p=h;a=f[p+4>>2]|0;q=i;f[q>>2]=f[p>>2];f[q+4>>2]=a;h=h+8|0;i=(f[r>>2]|0)+8|0;f[r>>2]=i}while(h>>>0>>0)}if(k){cQb(d+(0-k<<3)|0,b|0,j|0)|0;e=f[c>>2]|0}if((e|0)==(g|0)){r=b;return r|0}d=b;while(1){a=e+8|0;q=f[a+4>>2]|0;r=d;f[r>>2]=f[a>>2];f[r+4>>2]=q;e=f[e>>2]|0;if((g|0)==(e|0))break;else d=d+8|0}return b|0}else{d=(d-k>>3)+n|0;if(d>>>0>536870911)AMb(a);k=h-k|0;g=k>>2;g=k>>3>>>0<268435455?(g>>>0>>0?d:g):536870911;k=b;d=l>>3;do if(!g)m=0;else if(g>>>0>536870911)vd();else{m=pOb(g<<3)|0;break}while(0);l=m+(d<<3)|0;j=m+(g<<3)|0;i=l;d=l;g=e;h=e;while(1){c=g+8|0;e=f[c+4>>2]|0;f[i>>2]=f[c>>2];f[i+4>>2]=e;i=d+8|0;e=i;h=f[h>>2]|0;if((q|0)==(h|0))break;else{d=e;g=h}}g=f[a>>2]|0;d=k-g|0;h=l+(0-(d>>3)<<3)|0;if((d|0)>0)bQb(h|0,g|0,d|0)|0;d=(f[r>>2]|0)-k|0;if((d|0)>0){bQb(i|0,b|0,d|0)|0;e=i+(d>>>3<<3)|0;b=f[a>>2]|0}else b=g;f[a>>2]=h;f[r>>2]=e;f[p>>2]=j;if(!b){r=l;return r|0}sOb(b);r=l;return r|0}return 0}function WZa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:while(1){o=b;r=b+-8|0;p=b+-16|0;s=b+-4|0;while(1){b:while(1){n=a;d=o-n|0;e=d>>3;switch(e|0){case 2:{q=5;break a}case 3:{q=9;break a}case 4:{q=27;break a}case 5:{q=28;break a}case 1:case 0:{q=107;break a}default:{}}if((d|0)<248){q=30;break a}i=(e|0)/2|0;h=a+(i<<3)|0;do if((d|0)>7992){d=(e|0)/4|0;d=_Za(a,a+(d<<3)|0,h,h+(d<<3)|0,r,c)|0;e=h;m=a}else{g=f[h>>2]|0;d=f[a>>2]|0;if(g>>>0>>0)e=1;else if(g>>>0>d>>>0)e=0;else e=(f[a+(i<<3)+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;d=f[r>>2]|0;if(d>>>0>>0)d=1;else if(d>>>0>g>>>0)d=0;else d=(f[s>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0;if(!e){if(!d){d=0;e=h;m=a;break}e=h;m=f[e>>2]|0;e=f[e+4>>2]|0;k=r;l=f[k+4>>2]|0;d=h;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=r;f[d>>2]=m;f[d+4>>2]=e;d=f[h>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[a+(i<<3)+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){d=1;e=h;m=a;break}}e=a;m=f[e>>2]|0;e=f[e+4>>2]|0;k=h;l=f[k+4>>2]|0;d=a;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=h;f[d>>2]=m;f[d+4>>2]=e;d=2;e=h;m=a;break}g=a;e=f[g>>2]|0;g=f[g+4>>2]|0;if(d){l=r;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=1;e=h;m=a;break}l=h;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=h;f[d>>2]=e;f[d+4>>2]=g;d=f[r>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[s>>2]|0)>>>0>=g>>>0){d=1;e=h;m=a;break}}l=r;m=f[l+4>>2]|0;d=h;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=2;e=h;m=a}while(0);l=f[m>>2]|0;k=f[e>>2]|0;if(l>>>0>>0){e=r;break}if(l>>>0<=k>>>0)if((f[a+4>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0){e=r;break}if((a|0)!=(p|0)){j=a+(i<<3)+4|0;g=r;e=p;while(1){i=f[e>>2]|0;if(i>>>0>>0){q=82;break b}if(i>>>0<=k>>>0)if((f[g+-4>>2]|0)>>>0<(f[j>>2]|0)>>>0){q=82;break b}g=e+-8|0;if((a|0)==(g|0))break;else{i=e;e=g;g=i}}}d=a+8|0;e=f[r>>2]|0;do if(l>>>0>=e>>>0){if(l>>>0<=e>>>0)if((f[a+4>>2]|0)>>>0<(f[s>>2]|0)>>>0)break;if((d|0)==(r|0)){q=107;break a}g=a+4|0;while(1){e=f[d>>2]|0;if(l>>>0>>0)break;if(l>>>0<=e>>>0)if((f[g>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)break;d=d+8|0;if((d|0)==(r|0)){q=107;break a}}l=d;k=f[l>>2]|0;l=f[l+4>>2]|0;i=r;j=f[i+4>>2]|0;n=d;f[n>>2]=f[i>>2];f[n+4>>2]=j;n=r;f[n>>2]=k;f[n+4>>2]=l;d=d+8|0}while(0);if((d|0)==(r|0)){q=107;break a}i=a+4|0;e=r;a=d;while(1){h=f[m>>2]|0;d=f[a>>2]|0;c:do if(h>>>0>=d>>>0)do{if(h>>>0<=d>>>0)if((f[i>>2]|0)>>>0<(f[a+4>>2]|0)>>>0)break c;a=a+8|0;d=f[a>>2]|0}while(h>>>0>=d>>>0);while(0);d=e;while(1){e=d;d=d+-8|0;g=f[d>>2]|0;if(h>>>0>>0)continue;if(h>>>0>g>>>0)break;if((f[i>>2]|0)>>>0>=(f[e+-4>>2]|0)>>>0)break}if(a>>>0>=d>>>0)continue b;n=a;l=f[n>>2]|0;n=f[n+4>>2]|0;j=d;k=f[j+4>>2]|0;e=a;f[e>>2]=f[j>>2];f[e+4>>2]=k;e=d;f[e>>2]=l;f[e+4>>2]=n;e=d;a=a+8|0}}if((q|0)==82){q=0;l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=e;j=f[i+4>>2]|0;m=a;f[m>>2]=f[i>>2];f[m+4>>2]=j;m=e;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}g=a+8|0;d:do if(g>>>0>>0){l=h;while(1){j=f[l>>2]|0;k=l+4|0;while(1){h=f[g>>2]|0;if(h>>>0>=j>>>0){if(h>>>0>j>>>0)break;if((f[g+4>>2]|0)>>>0>=(f[k>>2]|0)>>>0)break}g=g+8|0}i=e+-8|0;h=f[i>>2]|0;e:do if(h>>>0>>0)e=i;else while(1){if(h>>>0<=j>>>0)if((f[e+-4>>2]|0)>>>0<(f[k>>2]|0)>>>0){e=i;break e}e=i+-8|0;h=f[e>>2]|0;if(h>>>0>>0)break;else{m=i;i=e;e=m}}while(0);if(g>>>0>e>>>0){h=l;i=g;break d}k=g;j=f[k>>2]|0;k=f[k+4>>2]|0;h=e;i=f[h+4>>2]|0;m=g;f[m>>2]=f[h>>2];f[m+4>>2]=i;m=e;f[m>>2]=j;f[m+4>>2]=k;l=(l|0)==(g|0)?e:l;g=g+8|0;d=d+1|0}}else i=g;while(0);do if((i|0)!=(h|0)){e=f[h>>2]|0;g=f[i>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0)break;if((f[h+4>>2]|0)>>>0>=(f[i+4>>2]|0)>>>0)break}l=i;k=f[l>>2]|0;l=f[l+4>>2]|0;g=h;j=f[g+4>>2]|0;m=i;f[m>>2]=f[g>>2];f[m+4>>2]=j;m=h;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}while(0);if(!d){d=a_a(a,i,c)|0;e=i+8|0;if(a_a(e,b,c)|0){q=106;break}if(d){a=e;continue}}m=i;if((m-n|0)>=(o-m|0)){q=105;break}WZa(a,i,c);a=i+8|0}if((q|0)==105){q=0;WZa(i+8|0,b,c);b=i;continue}else if((q|0)==106){q=0;if(d){q=107;break}else{b=i;continue}}}if((q|0)==5){b=f[r>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}q=a;c=f[q>>2]|0;q=f[q+4>>2]|0;o=r;p=f[o+4>>2]|0;s=a;f[s>>2]=f[o>>2];f[s+4>>2]=p;s=r;f[s>>2]=c;f[s+4>>2]=q;return}else if((q|0)==9){g=a+8|0;e=f[g>>2]|0;b=f[a>>2]|0;if(e>>>0>>0)d=1;else if(e>>>0>b>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;b=f[r>>2]|0;if(b>>>0>>0)b=1;else if(b>>>0>e>>>0)b=0;else b=(f[s>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!b)return;d=g;s=f[d>>2]|0;d=f[d+4>>2]|0;c=r;q=f[c+4>>2]|0;b=g;f[b>>2]=f[c>>2];f[b+4>>2]=q;b=r;f[b>>2]=s;f[b+4>>2]=d;b=f[g>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}r=a;q=f[r>>2]|0;r=f[r+4>>2]|0;p=g;c=f[p+4>>2]|0;s=a;f[s>>2]=f[p>>2];f[s+4>>2]=c;s=g;f[s>>2]=q;f[s+4>>2]=r;return}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(b){c=r;q=f[c+4>>2]|0;s=a;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}c=g;q=f[c+4>>2]|0;f[a>>2]=f[c>>2];f[a+4>>2]=q;a=g;f[a>>2]=d;f[a+4>>2]=e;a=f[r>>2]|0;if(a>>>0>=d>>>0){if(a>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=e>>>0)return}c=r;q=f[c+4>>2]|0;s=g;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}else if((q|0)==27){ZZa(a,a+8|0,a+16|0,r,c)|0;return}else if((q|0)==28){_Za(a,a+8|0,a+16|0,a+24|0,r,c)|0;return}else if((q|0)==30){$Za(a,b,c);return}else if((q|0)==107)return}function XZa(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){YZa(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;YZa(a,b);return}function YZa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function ZZa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0>>0)e=1;else if(h>>>0>e>>>0)e=0;else e=(f[b+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[c>>2]|0;if(g>>>0>>0)h=1;else if(g>>>0>h>>>0)h=0;else h=(f[c+4>>2]|0)>>>0<(f[b+4>>2]|0)>>>0;do if(e){e=a;i=f[e>>2]|0;e=f[e+4>>2]|0;if(h){h=c;g=f[h+4>>2]|0;j=a;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=1;g=i;break}h=b;j=f[h+4>>2]|0;g=a;f[g>>2]=f[h>>2];f[g+4>>2]=j;g=b;f[g>>2]=i;f[g+4>>2]=e;g=f[c>>2]|0;if(g>>>0>=i>>>0){if(g>>>0>i>>>0){j=1;break}if((f[c+4>>2]|0)>>>0>=e>>>0){j=1;break}}h=c;g=f[h+4>>2]|0;j=b;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=2;g=i}else if(h){h=b;g=f[h>>2]|0;h=f[h+4>>2]|0;i=c;j=f[i+4>>2]|0;e=b;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=c;f[e>>2]=g;f[e+4>>2]=h;e=f[b>>2]|0;h=f[a>>2]|0;if(e>>>0>=h>>>0){if(e>>>0>h>>>0){j=1;break}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){j=1;break}}g=a;i=f[g>>2]|0;g=f[g+4>>2]|0;e=b;h=f[e+4>>2]|0;j=a;f[j>>2]=f[e>>2];f[j+4>>2]=h;j=b;f[j>>2]=i;f[j+4>>2]=g;j=2;g=f[c>>2]|0}else j=0;while(0);e=f[d>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0){b=j;return b|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){b=j;return b|0}}g=c;h=f[g>>2]|0;g=f[g+4>>2]|0;k=d;i=f[k+4>>2]|0;e=c;f[e>>2]=f[k>>2];f[e+4>>2]=i;e=d;f[e>>2]=h;f[e+4>>2]=g;e=j+1|0;g=f[c>>2]|0;h=f[b>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){k=e;return k|0}}g=b;h=f[g>>2]|0;g=f[g+4>>2]|0;d=c;k=f[d+4>>2]|0;e=b;f[e>>2]=f[d>>2];f[e+4>>2]=k;e=c;f[e>>2]=h;f[e+4>>2]=g;e=j+2|0;g=f[b>>2]|0;h=f[a>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){k=e;return k|0}}c=a;d=f[c>>2]|0;c=f[c+4>>2]|0;h=b;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=b;f[k>>2]=d;f[k+4>>2]=c;k=j+3|0;return k|0}function _Za(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;i=ZZa(a,b,c,d,g)|0;g=f[e>>2]|0;h=f[d>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){b=i;return b|0}if((f[e+4>>2]|0)>>>0>=(f[d+4>>2]|0)>>>0){b=i;return b|0}}h=d;j=f[h>>2]|0;h=f[h+4>>2]|0;l=e;k=f[l+4>>2]|0;g=d;f[g>>2]=f[l>>2];f[g+4>>2]=k;g=e;f[g>>2]=j;f[g+4>>2]=h;g=i+1|0;h=f[d>>2]|0;e=f[c>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){l=g;return l|0}}h=c;e=f[h>>2]|0;h=f[h+4>>2]|0;k=d;l=f[k+4>>2]|0;g=c;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=d;f[g>>2]=e;f[g+4>>2]=h;g=i+2|0;h=f[c>>2]|0;e=f[b>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){l=g;return l|0}}h=b;e=f[h>>2]|0;h=f[h+4>>2]|0;k=c;l=f[k+4>>2]|0;g=b;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=c;f[g>>2]=e;f[g+4>>2]=h;g=i+3|0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){l=g;return l|0}}k=a;j=f[k>>2]|0;k=f[k+4>>2]|0;d=b;c=f[d+4>>2]|0;l=a;f[l>>2]=f[d>>2];f[l+4>>2]=c;l=b;f[l>>2]=j;f[l+4>>2]=k;l=i+4|0;return l|0}function $Za(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+16|0;i=a+8|0;c=f[i>>2]|0;h=f[a>>2]|0;if(c>>>0>>0)d=1;else if(c>>>0>h>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;e=f[k>>2]|0;if(e>>>0>>0)g=1;else if(e>>>0>c>>>0)g=0;else g=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(d){d=a;c=f[d>>2]|0;d=f[d+4>>2]|0;if(g){i=k;j=f[i+4>>2]|0;e=a;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c;break}g=i;h=f[g+4>>2]|0;j=a;f[j>>2]=f[g>>2];f[j+4>>2]=h;j=i;f[j>>2]=c;f[j+4>>2]=d;if(e>>>0>=c>>>0){if(e>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=d>>>0)break}h=k;j=f[h+4>>2]|0;e=i;f[e>>2]=f[h>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c}else if(g){g=i;e=f[g>>2]|0;g=f[g+4>>2]|0;d=k;c=f[d>>2]|0;d=f[d+4>>2]|0;j=i;f[j>>2]=c;f[j+4>>2]=d;j=k;f[j>>2]=e;f[j+4>>2]=g;if(h>>>0<=c>>>0){if(h>>>0>>0)break;if((f[a+4>>2]|0)>>>0<=d>>>0)break}h=a;g=f[h>>2]|0;h=f[h+4>>2]|0;j=a;f[j>>2]=c;f[j+4>>2]=d;j=i;f[j>>2]=g;f[j+4>>2]=h}while(0);c=a+24|0;if((c|0)==(b|0))return;else{j=c;c=k}while(1){d=f[j>>2]|0;if(d>>>0>>0)l=24;else if(d>>>0<=e>>>0)if((f[j+4>>2]|0)>>>0<(f[c+4>>2]|0)>>>0)l=24;if((l|0)==24){l=0;i=j;h=f[i>>2]|0;i=f[i+4>>2]|0;e=c;g=f[e+4>>2]|0;k=j;f[k>>2]=f[e>>2];f[k+4>>2]=g;a:do if((c|0)!=(a|0)){g=c;while(1){e=c;c=g+-8|0;d=f[c>>2]|0;if(d>>>0<=h>>>0){if(d>>>0>>0){c=e;break a}if((f[g+-4>>2]|0)>>>0<=i>>>0){c=e;break a}}d=c;g=f[d+4>>2]|0;k=e;f[k>>2]=f[d>>2];f[k+4>>2]=g;if((c|0)==(a|0))break;else g=c}}while(0);k=c;f[k>>2]=h;f[k+4>>2]=i}c=j+8|0;if((c|0)==(b|0))break;e=f[j>>2]|0;k=j;j=c;c=k}return}function a_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;switch(b-a>>3|0){case 2:{c=b+-8|0;d=f[c>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=c;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=c;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}case 3:{h=a+8|0;g=b+-8|0;e=f[h>>2]|0;c=f[a>>2]|0;if(e>>>0>>0)d=1;else if(e>>>0>c>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;c=f[g>>2]|0;if(c>>>0>>0)c=1;else if(c>>>0>e>>>0)c=0;else c=(f[b+-4>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!c){b=1;return b|0}d=h;b=f[d>>2]|0;d=f[d+4>>2]|0;k=g;l=f[k+4>>2]|0;c=h;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=g;f[c>>2]=b;f[c+4>>2]=d;c=f[h>>2]|0;d=f[a>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=h;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=h;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(c){k=g;l=f[k+4>>2]|0;b=a;f[b>>2]=f[k>>2];f[b+4>>2]=l;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}k=h;l=f[k+4>>2]|0;c=a;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=h;f[c>>2]=d;f[c+4>>2]=e;c=f[g>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=e>>>0){b=1;return b|0}}l=g;a=f[l+4>>2]|0;b=h;f[b>>2]=f[l>>2];f[b+4>>2]=a;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}case 4:{ZZa(a,a+8|0,a+16|0,b+-8|0,c)|0;b=1;return b|0}case 5:{_Za(a,a+8|0,a+16|0,a+24|0,b+-8|0,c)|0;b=1;return b|0}case 1:case 0:{b=1;return b|0}default:{d=a+16|0;j=a+8|0;c=f[j>>2]|0;i=f[a>>2]|0;if(c>>>0>>0)e=1;else if(c>>>0>i>>>0)e=0;else e=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[d>>2]|0;if(g>>>0>>0)h=1;else if(g>>>0>c>>>0)h=0;else h=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(e){e=a;c=f[e>>2]|0;e=f[e+4>>2]|0;if(h){j=d;k=f[j+4>>2]|0;g=a;f[g>>2]=f[j>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c;break}h=j;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=j;f[k>>2]=c;f[k+4>>2]=e;if(g>>>0>=c>>>0){if(g>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=e>>>0)break}i=d;k=f[i+4>>2]|0;g=j;f[g>>2]=f[i>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c}else if(h){h=j;g=f[h>>2]|0;h=f[h+4>>2]|0;e=d;c=f[e>>2]|0;e=f[e+4>>2]|0;k=j;f[k>>2]=c;f[k+4>>2]=e;k=d;f[k>>2]=g;f[k+4>>2]=h;if(i>>>0<=c>>>0){if(i>>>0>>0)break;if((f[a+4>>2]|0)>>>0<=e>>>0)break}i=a;h=f[i>>2]|0;i=f[i+4>>2]|0;k=a;f[k>>2]=c;f[k+4>>2]=e;k=j;f[k>>2]=h;f[k+4>>2]=i}while(0);c=a+24|0;a:do if((c|0)==(b|0)){d=1;c=0}else{k=c;c=0;while(1){e=f[k>>2]|0;if(e>>>0>>0)l=48;else if(e>>>0<=g>>>0)if((f[k+4>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)l=48;if((l|0)==48){l=0;j=k;i=f[j>>2]|0;j=f[j+4>>2]|0;e=d;g=f[e+4>>2]|0;h=k;f[h>>2]=f[e>>2];f[h+4>>2]=g;b:do if((d|0)!=(a|0)){h=d;while(1){g=d;d=h+-8|0;e=f[d>>2]|0;if(e>>>0<=i>>>0){if(e>>>0>>0){d=g;break b}if((f[h+-4>>2]|0)>>>0<=j>>>0){d=g;break b}}m=d;e=f[m+4>>2]|0;h=g;f[h>>2]=f[m>>2];f[h+4>>2]=e;if((d|0)==(a|0))break;else h=d}}while(0);m=d;f[m>>2]=i;f[m+4>>2]=j;c=c+1|0;if((c|0)==8){d=0;c=(k+8|0)==(b|0);break a}}d=k+8|0;if((d|0)==(b|0)){d=1;c=0;break a}g=f[k>>2]|0;m=k;k=d;d=m}}while(0);m=c|d;return m|0}}return 0}function b_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>3;c=e+1|0;if(c>>>0>536870911)AMb(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>2;d=m>>3>>>0<268435455?(d>>>0>>0?c:d):536870911;do if(!d){h=0;i=0}else if(d>>>0>536870911)vd();else{i=pOb(d<<3)|0;h=i;break}while(0);c=h+(e<<3)|0;e=b;b=f[e+4>>2]|0;m=c;f[m>>2]=f[e>>2];f[m+4>>2]=b;if((k|0)>0)bQb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+8;f[l>>2]=h+(d<<3);if(!j)return;sOb(j);return}function c_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=b+4|0;k=f[h>>2]|0;l=(k|0)==0;a:do if(l){c=0;o=17}else{g=k+-1|0;e=(g&k|0)==0;if(e)c=g&a;else if(k>>>0>a>>>0)c=a;else c=(a>>>0)%(k>>>0)|0;d=f[(f[b>>2]|0)+(c<<2)>>2]|0;if(!d)o=17;else{if(e)while(1){d=f[d>>2]|0;if(!d){o=17;break a}s=f[d+4>>2]|0;if(!((s|0)==(a|0)|(s&g|0)==(c|0))){o=17;break a}if((f[d+8>>2]|0)==(a|0))break a}do{d=f[d>>2]|0;if(!d){o=17;break a}e=f[d+4>>2]|0;if((e|0)!=(a|0)){if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0;if((e|0)!=(c|0)){o=17;break a}}}while((f[d+8>>2]|0)!=(a|0))}}while(0);if((o|0)==17){g=pOb(24)|0;f[g+8>>2]=a;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+4>>2]=a;f[g>>2]=0;m=b+12|0;i=+(((f[m>>2]|0)+1|0)>>>0);j=+n[b+16>>2];do if(l|j*+(k>>>0)>>0<3|(k+-1&k|0)!=0)&1;d=~~+W(+(i/j))>>>0;d_a(b,c>>>0>>0?d:c);c=f[h>>2]|0;d=c+-1|0;if(!(d&c)){e=c;c=d&a;break}if(c>>>0>a>>>0){e=c;c=a}else{e=c;c=(a>>>0)%(c>>>0)|0}}else e=k;while(0);d=(f[b>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=b+8|0;f[g>>2]=f[c>>2];f[c>>2]=g;f[d>>2]=c;c=f[g>>2]|0;if(c|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0;c=(f[b>>2]|0)+(c<<2)|0;o=30}}else{f[g>>2]=f[c>>2];o=30}if((o|0)==30)f[c>>2]=g;f[m>>2]=(f[m>>2]|0)+1;d=g}r=d+12|0;q=b+20|0;c=f[q>>2]|0;s=b+24|0;b=f[s>>2]|0;if((c|0)==(b|0))return;p=d+16|0;o=d+20|0;while(1){d=f[p>>2]|0;a=f[o>>2]|0;e=a;if(d>>>0>>0){f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];a=d+8|0;m=c+8|0;f[a>>2]=0;l=d+12|0;f[l>>2]=0;f[d+16>>2]=0;f[a>>2]=f[m>>2];a=c+12|0;f[l>>2]=f[a>>2];l=c+16|0;f[d+16>>2]=f[l>>2];f[l>>2]=0;f[a>>2]=0;f[m>>2]=0;f[c>>2]=0;f[d+20>>2]=f[c+20>>2];m=c+24|0;a=f[m>>2]|0;f[m>>2]=0;f[d+24>>2]=a;f[p>>2]=(f[p>>2]|0)+28}else{g=f[r>>2]|0;h=(d-g|0)/28|0;d=h+1|0;if(d>>>0>153391689){o=49;break}m=(e-g|0)/28|0;a=m<<1;d=m>>>0<76695844?(a>>>0>>0?d:a):153391689;if(!d)e=0;else{if(d>>>0>153391689){o=52;break}e=pOb(d*28|0)|0}k=e+(h*28|0)|0;g=k;m=e+(d*28|0)|0;f[k>>2]=f[c>>2];f[e+(h*28|0)+4>>2]=f[c+4>>2];d=c+8|0;f[e+(h*28|0)+16>>2]=0;f[e+(h*28|0)+8>>2]=f[d>>2];l=c+12|0;f[e+(h*28|0)+12>>2]=f[l>>2];a=c+16|0;f[e+(h*28|0)+16>>2]=f[a>>2];f[a>>2]=0;f[l>>2]=0;f[d>>2]=0;f[c>>2]=0;f[e+(h*28|0)+20>>2]=f[c+20>>2];d=c+24|0;l=f[d>>2]|0;f[d>>2]=0;f[e+(h*28|0)+24>>2]=l;l=k+28|0;h=f[r>>2]|0;d=f[p>>2]|0;if((d|0)==(h|0)){d=g;a=h;e=h}else{e=k;do{k=d;d=d+-28|0;f[e+-28>>2]=f[d>>2];f[e+-24>>2]=f[k+-24>>2];t=e+-20|0;a=k+-20|0;f[t>>2]=0;u=e+-16|0;f[u>>2]=0;f[e+-12>>2]=0;f[t>>2]=f[a>>2];t=k+-16|0;f[u>>2]=f[t>>2];u=k+-12|0;f[e+-12>>2]=f[u>>2];f[u>>2]=0;f[t>>2]=0;f[a>>2]=0;f[d>>2]=0;f[e+-8>>2]=f[k+-8>>2];k=k+-4|0;a=f[k>>2]|0;f[k>>2]=0;f[e+-4>>2]=a;e=g+-28|0;g=e}while((d|0)!=(h|0));d=g;a=f[r>>2]|0;e=f[p>>2]|0}f[r>>2]=d;f[p>>2]=l;f[o>>2]=m;l=a;if((e|0)!=(l|0))do{u=e+-4|0;d=f[u>>2]|0;f[u>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);g=e+-20|0;d=f[g>>2]|0;k=e+-16|0;e=e+-28|0;if((d|0)==(f[k>>2]|0)){h=f[e>>2]|0;if(h){tOb(h);d=f[g>>2]|0}}if(d|0){g=f[k>>2]|0;if((g|0)!=(d|0))f[k>>2]=g+(~((g+-8-d|0)>>>3)<<3);sOb(d)}}while((e|0)!=(l|0));if(a|0)sOb(a)}c=c+28|0;if((c|0)==(b|0)){o=34;break}}if((o|0)==34){k=f[q>>2]|0;c=f[s>>2]|0;if((c|0)==(k|0))return;do{g=c+-28|0;f[s>>2]=g;u=c+-4|0;d=f[u>>2]|0;f[u>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=c+-20|0;e=f[d>>2]|0;h=c+-16|0;if((e|0)==(f[h>>2]|0)){c=f[g>>2]|0;if(!c)c=e;else{tOb(c);c=f[d>>2]|0}}else c=e;if(c|0){d=f[h>>2]|0;if((d|0)!=(c|0))f[h>>2]=d+(~((d+-8-c|0)>>>3)<<3);sOb(c)}c=f[s>>2]|0}while((c|0)!=(k|0));return}else if((o|0)==49)AMb(r);else if((o|0)==52)vd()}function d_a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){e_a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;e_a(a,b);return}function e_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function f_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:while(1){o=b;r=b+-8|0;p=b+-16|0;s=b+-4|0;while(1){b:while(1){n=a;d=o-n|0;e=d>>3;switch(e|0){case 2:{q=5;break a}case 3:{q=9;break a}case 4:{q=27;break a}case 5:{q=28;break a}case 1:case 0:{q=107;break a}default:{}}if((d|0)<248){q=30;break a}i=(e|0)/2|0;h=a+(i<<3)|0;do if((d|0)>7992){d=(e|0)/4|0;d=j_a(a,a+(d<<3)|0,h,h+(d<<3)|0,r,c)|0;e=h;m=a}else{g=f[h>>2]|0;d=f[a>>2]|0;if(g>>>0>>0)e=1;else if(g>>>0>d>>>0)e=0;else e=(f[a+(i<<3)+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;d=f[r>>2]|0;if(d>>>0>>0)d=1;else if(d>>>0>g>>>0)d=0;else d=(f[s>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0;if(!e){if(!d){d=0;e=h;m=a;break}e=h;m=f[e>>2]|0;e=f[e+4>>2]|0;k=r;l=f[k+4>>2]|0;d=h;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=r;f[d>>2]=m;f[d+4>>2]=e;d=f[h>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[a+(i<<3)+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){d=1;e=h;m=a;break}}e=a;m=f[e>>2]|0;e=f[e+4>>2]|0;k=h;l=f[k+4>>2]|0;d=a;f[d>>2]=f[k>>2];f[d+4>>2]=l;d=h;f[d>>2]=m;f[d+4>>2]=e;d=2;e=h;m=a;break}g=a;e=f[g>>2]|0;g=f[g+4>>2]|0;if(d){l=r;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=1;e=h;m=a;break}l=h;m=f[l+4>>2]|0;d=a;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=h;f[d>>2]=e;f[d+4>>2]=g;d=f[r>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){d=1;e=h;m=a;break}if((f[s>>2]|0)>>>0>=g>>>0){d=1;e=h;m=a;break}}l=r;m=f[l+4>>2]|0;d=h;f[d>>2]=f[l>>2];f[d+4>>2]=m;d=r;f[d>>2]=e;f[d+4>>2]=g;d=2;e=h;m=a}while(0);l=f[m>>2]|0;k=f[e>>2]|0;if(l>>>0>>0){e=r;break}if(l>>>0<=k>>>0)if((f[a+4>>2]|0)>>>0<(f[a+(i<<3)+4>>2]|0)>>>0){e=r;break}if((a|0)!=(p|0)){j=a+(i<<3)+4|0;g=r;e=p;while(1){i=f[e>>2]|0;if(i>>>0>>0){q=82;break b}if(i>>>0<=k>>>0)if((f[g+-4>>2]|0)>>>0<(f[j>>2]|0)>>>0){q=82;break b}g=e+-8|0;if((a|0)==(g|0))break;else{i=e;e=g;g=i}}}d=a+8|0;e=f[r>>2]|0;do if(l>>>0>=e>>>0){if(l>>>0<=e>>>0)if((f[a+4>>2]|0)>>>0<(f[s>>2]|0)>>>0)break;if((d|0)==(r|0)){q=107;break a}g=a+4|0;while(1){e=f[d>>2]|0;if(l>>>0>>0)break;if(l>>>0<=e>>>0)if((f[g>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)break;d=d+8|0;if((d|0)==(r|0)){q=107;break a}}l=d;k=f[l>>2]|0;l=f[l+4>>2]|0;i=r;j=f[i+4>>2]|0;n=d;f[n>>2]=f[i>>2];f[n+4>>2]=j;n=r;f[n>>2]=k;f[n+4>>2]=l;d=d+8|0}while(0);if((d|0)==(r|0)){q=107;break a}i=a+4|0;e=r;a=d;while(1){h=f[m>>2]|0;d=f[a>>2]|0;c:do if(h>>>0>=d>>>0)do{if(h>>>0<=d>>>0)if((f[i>>2]|0)>>>0<(f[a+4>>2]|0)>>>0)break c;a=a+8|0;d=f[a>>2]|0}while(h>>>0>=d>>>0);while(0);d=e;while(1){e=d;d=d+-8|0;g=f[d>>2]|0;if(h>>>0>>0)continue;if(h>>>0>g>>>0)break;if((f[i>>2]|0)>>>0>=(f[e+-4>>2]|0)>>>0)break}if(a>>>0>=d>>>0)continue b;n=a;l=f[n>>2]|0;n=f[n+4>>2]|0;j=d;k=f[j+4>>2]|0;e=a;f[e>>2]=f[j>>2];f[e+4>>2]=k;e=d;f[e>>2]=l;f[e+4>>2]=n;e=d;a=a+8|0}}if((q|0)==82){q=0;l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=e;j=f[i+4>>2]|0;m=a;f[m>>2]=f[i>>2];f[m+4>>2]=j;m=e;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}g=a+8|0;d:do if(g>>>0>>0){l=h;while(1){j=f[l>>2]|0;k=l+4|0;while(1){h=f[g>>2]|0;if(h>>>0>=j>>>0){if(h>>>0>j>>>0)break;if((f[g+4>>2]|0)>>>0>=(f[k>>2]|0)>>>0)break}g=g+8|0}i=e+-8|0;h=f[i>>2]|0;e:do if(h>>>0>>0)e=i;else while(1){if(h>>>0<=j>>>0)if((f[e+-4>>2]|0)>>>0<(f[k>>2]|0)>>>0){e=i;break e}e=i+-8|0;h=f[e>>2]|0;if(h>>>0>>0)break;else{m=i;i=e;e=m}}while(0);if(g>>>0>e>>>0){h=l;i=g;break d}k=g;j=f[k>>2]|0;k=f[k+4>>2]|0;h=e;i=f[h+4>>2]|0;m=g;f[m>>2]=f[h>>2];f[m+4>>2]=i;m=e;f[m>>2]=j;f[m+4>>2]=k;l=(l|0)==(g|0)?e:l;g=g+8|0;d=d+1|0}}else i=g;while(0);do if((i|0)!=(h|0)){e=f[h>>2]|0;g=f[i>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0)break;if((f[h+4>>2]|0)>>>0>=(f[i+4>>2]|0)>>>0)break}l=i;k=f[l>>2]|0;l=f[l+4>>2]|0;g=h;j=f[g+4>>2]|0;m=i;f[m>>2]=f[g>>2];f[m+4>>2]=j;m=h;f[m>>2]=k;f[m+4>>2]=l;d=d+1|0}while(0);if(!d){d=l_a(a,i,c)|0;e=i+8|0;if(l_a(e,b,c)|0){q=106;break}if(d){a=e;continue}}m=i;if((m-n|0)>=(o-m|0)){q=105;break}f_a(a,i,c);a=i+8|0}if((q|0)==105){q=0;f_a(i+8|0,b,c);b=i;continue}else if((q|0)==106){q=0;if(d){q=107;break}else{b=i;continue}}}if((q|0)==5){b=f[r>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}q=a;c=f[q>>2]|0;q=f[q+4>>2]|0;o=r;p=f[o+4>>2]|0;s=a;f[s>>2]=f[o>>2];f[s+4>>2]=p;s=r;f[s>>2]=c;f[s+4>>2]=q;return}else if((q|0)==9){g=a+8|0;e=f[g>>2]|0;b=f[a>>2]|0;if(e>>>0>>0)d=1;else if(e>>>0>b>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;b=f[r>>2]|0;if(b>>>0>>0)b=1;else if(b>>>0>e>>>0)b=0;else b=(f[s>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!b)return;d=g;s=f[d>>2]|0;d=f[d+4>>2]|0;c=r;q=f[c+4>>2]|0;b=g;f[b>>2]=f[c>>2];f[b+4>>2]=q;b=r;f[b>>2]=s;f[b+4>>2]=d;b=f[g>>2]|0;d=f[a>>2]|0;if(b>>>0>=d>>>0){if(b>>>0>d>>>0)return;if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0)return}r=a;q=f[r>>2]|0;r=f[r+4>>2]|0;p=g;c=f[p+4>>2]|0;s=a;f[s>>2]=f[p>>2];f[s+4>>2]=c;s=g;f[s>>2]=q;f[s+4>>2]=r;return}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(b){c=r;q=f[c+4>>2]|0;s=a;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}c=g;q=f[c+4>>2]|0;f[a>>2]=f[c>>2];f[a+4>>2]=q;a=g;f[a>>2]=d;f[a+4>>2]=e;a=f[r>>2]|0;if(a>>>0>=d>>>0){if(a>>>0>d>>>0)return;if((f[s>>2]|0)>>>0>=e>>>0)return}c=r;q=f[c+4>>2]|0;s=g;f[s>>2]=f[c>>2];f[s+4>>2]=q;s=r;f[s>>2]=d;f[s+4>>2]=e;return}else if((q|0)==27){i_a(a,a+8|0,a+16|0,r,c)|0;return}else if((q|0)==28){j_a(a,a+8|0,a+16|0,a+24|0,r,c)|0;return}else if((q|0)==30){k_a(a,b,c);return}else if((q|0)==107)return}function g_a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){h_a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;h_a(a,b);return}function h_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[a+4>>2]=0;return}if(b>>>0>1073741823)vd();m=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)sOb(c);f[a+4>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)c=c&l;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){b:do if(m){k=d;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}i=d+8|0;e=d;while(1){h=f[e>>2]|0;if(!h)break;if((f[i>>2]|0)==(f[h+8>>2]|0))e=h;else break}f[k>>2]=h;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}else{k=d;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)j=e;else j=(e>>>0)%(b>>>0)|0;if((j|0)==(c|0))break;e=(f[a>>2]|0)+(j<<2)|0;if(!(f[e>>2]|0)){g=k;c=j;break b}h=d+8|0;e=d;while(1){i=f[e>>2]|0;if(!i)break;if((f[h>>2]|0)==(f[i+8>>2]|0))e=i;else break}f[k>>2]=i;f[e>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{g=d;k=d}}}while(0);f[e>>2]=g;e=f[d>>2]|0;if(!e){c=37;break}else g=d}if((c|0)==37)return}function i_a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0>>0)e=1;else if(h>>>0>e>>>0)e=0;else e=(f[b+4>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[c>>2]|0;if(g>>>0>>0)h=1;else if(g>>>0>h>>>0)h=0;else h=(f[c+4>>2]|0)>>>0<(f[b+4>>2]|0)>>>0;do if(e){e=a;i=f[e>>2]|0;e=f[e+4>>2]|0;if(h){h=c;g=f[h+4>>2]|0;j=a;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=1;g=i;break}h=b;j=f[h+4>>2]|0;g=a;f[g>>2]=f[h>>2];f[g+4>>2]=j;g=b;f[g>>2]=i;f[g+4>>2]=e;g=f[c>>2]|0;if(g>>>0>=i>>>0){if(g>>>0>i>>>0){j=1;break}if((f[c+4>>2]|0)>>>0>=e>>>0){j=1;break}}h=c;g=f[h+4>>2]|0;j=b;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=2;g=i}else if(h){h=b;g=f[h>>2]|0;h=f[h+4>>2]|0;i=c;j=f[i+4>>2]|0;e=b;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=c;f[e>>2]=g;f[e+4>>2]=h;e=f[b>>2]|0;h=f[a>>2]|0;if(e>>>0>=h>>>0){if(e>>>0>h>>>0){j=1;break}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){j=1;break}}g=a;i=f[g>>2]|0;g=f[g+4>>2]|0;e=b;h=f[e+4>>2]|0;j=a;f[j>>2]=f[e>>2];f[j+4>>2]=h;j=b;f[j>>2]=i;f[j+4>>2]=g;j=2;g=f[c>>2]|0}else j=0;while(0);e=f[d>>2]|0;if(e>>>0>=g>>>0){if(e>>>0>g>>>0){b=j;return b|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){b=j;return b|0}}g=c;h=f[g>>2]|0;g=f[g+4>>2]|0;k=d;i=f[k+4>>2]|0;e=c;f[e>>2]=f[k>>2];f[e+4>>2]=i;e=d;f[e>>2]=h;f[e+4>>2]=g;e=j+1|0;g=f[c>>2]|0;h=f[b>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){k=e;return k|0}}g=b;h=f[g>>2]|0;g=f[g+4>>2]|0;d=c;k=f[d+4>>2]|0;e=b;f[e>>2]=f[d>>2];f[e+4>>2]=k;e=c;f[e>>2]=h;f[e+4>>2]=g;e=j+2|0;g=f[b>>2]|0;h=f[a>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){k=e;return k|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){k=e;return k|0}}c=a;d=f[c>>2]|0;c=f[c+4>>2]|0;h=b;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=b;f[k>>2]=d;f[k+4>>2]=c;k=j+3|0;return k|0}function j_a(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;i=i_a(a,b,c,d,g)|0;g=f[e>>2]|0;h=f[d>>2]|0;if(g>>>0>=h>>>0){if(g>>>0>h>>>0){b=i;return b|0}if((f[e+4>>2]|0)>>>0>=(f[d+4>>2]|0)>>>0){b=i;return b|0}}h=d;j=f[h>>2]|0;h=f[h+4>>2]|0;l=e;k=f[l+4>>2]|0;g=d;f[g>>2]=f[l>>2];f[g+4>>2]=k;g=e;f[g>>2]=j;f[g+4>>2]=h;g=i+1|0;h=f[d>>2]|0;e=f[c>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[d+4>>2]|0)>>>0>=(f[c+4>>2]|0)>>>0){l=g;return l|0}}h=c;e=f[h>>2]|0;h=f[h+4>>2]|0;k=d;l=f[k+4>>2]|0;g=c;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=d;f[g>>2]=e;f[g+4>>2]=h;g=i+2|0;h=f[c>>2]|0;e=f[b>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[c+4>>2]|0)>>>0>=(f[b+4>>2]|0)>>>0){l=g;return l|0}}h=b;e=f[h>>2]|0;h=f[h+4>>2]|0;k=c;l=f[k+4>>2]|0;g=b;f[g>>2]=f[k>>2];f[g+4>>2]=l;g=c;f[g>>2]=e;f[g+4>>2]=h;g=i+3|0;h=f[b>>2]|0;e=f[a>>2]|0;if(h>>>0>=e>>>0){if(h>>>0>e>>>0){l=g;return l|0}if((f[b+4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){l=g;return l|0}}k=a;j=f[k>>2]|0;k=f[k+4>>2]|0;d=b;c=f[d+4>>2]|0;l=a;f[l>>2]=f[d>>2];f[l+4>>2]=c;l=b;f[l>>2]=j;f[l+4>>2]=k;l=i+4|0;return l|0}function k_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+16|0;i=a+8|0;c=f[i>>2]|0;h=f[a>>2]|0;if(c>>>0>>0)d=1;else if(c>>>0>h>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;e=f[k>>2]|0;if(e>>>0>>0)g=1;else if(e>>>0>c>>>0)g=0;else g=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(d){d=a;c=f[d>>2]|0;d=f[d+4>>2]|0;if(g){i=k;j=f[i+4>>2]|0;e=a;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c;break}g=i;h=f[g+4>>2]|0;j=a;f[j>>2]=f[g>>2];f[j+4>>2]=h;j=i;f[j>>2]=c;f[j+4>>2]=d;if(e>>>0>=c>>>0){if(e>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=d>>>0)break}h=k;j=f[h+4>>2]|0;e=i;f[e>>2]=f[h>>2];f[e+4>>2]=j;e=k;f[e>>2]=c;f[e+4>>2]=d;e=c}else if(g){g=i;e=f[g>>2]|0;g=f[g+4>>2]|0;d=k;c=f[d>>2]|0;d=f[d+4>>2]|0;j=i;f[j>>2]=c;f[j+4>>2]=d;j=k;f[j>>2]=e;f[j+4>>2]=g;if(h>>>0<=c>>>0){if(h>>>0>>0)break;if((f[a+4>>2]|0)>>>0<=d>>>0)break}h=a;g=f[h>>2]|0;h=f[h+4>>2]|0;j=a;f[j>>2]=c;f[j+4>>2]=d;j=i;f[j>>2]=g;f[j+4>>2]=h}while(0);c=a+24|0;if((c|0)==(b|0))return;else{j=c;c=k}while(1){d=f[j>>2]|0;if(d>>>0>>0)l=24;else if(d>>>0<=e>>>0)if((f[j+4>>2]|0)>>>0<(f[c+4>>2]|0)>>>0)l=24;if((l|0)==24){l=0;i=j;h=f[i>>2]|0;i=f[i+4>>2]|0;e=c;g=f[e+4>>2]|0;k=j;f[k>>2]=f[e>>2];f[k+4>>2]=g;a:do if((c|0)!=(a|0)){g=c;while(1){e=c;c=g+-8|0;d=f[c>>2]|0;if(d>>>0<=h>>>0){if(d>>>0>>0){c=e;break a}if((f[g+-4>>2]|0)>>>0<=i>>>0){c=e;break a}}d=c;g=f[d+4>>2]|0;k=e;f[k>>2]=f[d>>2];f[k+4>>2]=g;if((c|0)==(a|0))break;else g=c}}while(0);k=c;f[k>>2]=h;f[k+4>>2]=i}c=j+8|0;if((c|0)==(b|0))break;e=f[j>>2]|0;k=j;j=c;c=k}return}function l_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;switch(b-a>>3|0){case 2:{c=b+-8|0;d=f[c>>2]|0;e=f[a>>2]|0;if(d>>>0>=e>>>0){if(d>>>0>e>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=c;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=c;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}case 3:{h=a+8|0;g=b+-8|0;e=f[h>>2]|0;c=f[a>>2]|0;if(e>>>0>>0)d=1;else if(e>>>0>c>>>0)d=0;else d=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;c=f[g>>2]|0;if(c>>>0>>0)c=1;else if(c>>>0>e>>>0)c=0;else c=(f[b+-4>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;if(!d){if(!c){b=1;return b|0}d=h;b=f[d>>2]|0;d=f[d+4>>2]|0;k=g;l=f[k+4>>2]|0;c=h;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=g;f[c>>2]=b;f[c+4>>2]=d;c=f[h>>2]|0;d=f[a>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[a+12>>2]|0)>>>0>=(f[a+4>>2]|0)>>>0){b=1;return b|0}}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=h;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=h;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(c){k=g;l=f[k+4>>2]|0;b=a;f[b>>2]=f[k>>2];f[b+4>>2]=l;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}k=h;l=f[k+4>>2]|0;c=a;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=h;f[c>>2]=d;f[c+4>>2]=e;c=f[g>>2]|0;if(c>>>0>=d>>>0){if(c>>>0>d>>>0){b=1;return b|0}if((f[b+-4>>2]|0)>>>0>=e>>>0){b=1;return b|0}}l=g;a=f[l+4>>2]|0;b=h;f[b>>2]=f[l>>2];f[b+4>>2]=a;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}case 4:{i_a(a,a+8|0,a+16|0,b+-8|0,c)|0;b=1;return b|0}case 5:{j_a(a,a+8|0,a+16|0,a+24|0,b+-8|0,c)|0;b=1;return b|0}case 1:case 0:{b=1;return b|0}default:{d=a+16|0;j=a+8|0;c=f[j>>2]|0;i=f[a>>2]|0;if(c>>>0>>0)e=1;else if(c>>>0>i>>>0)e=0;else e=(f[a+12>>2]|0)>>>0<(f[a+4>>2]|0)>>>0;g=f[d>>2]|0;if(g>>>0>>0)h=1;else if(g>>>0>c>>>0)h=0;else h=(f[a+20>>2]|0)>>>0<(f[a+12>>2]|0)>>>0;do if(e){e=a;c=f[e>>2]|0;e=f[e+4>>2]|0;if(h){j=d;k=f[j+4>>2]|0;g=a;f[g>>2]=f[j>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c;break}h=j;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=j;f[k>>2]=c;f[k+4>>2]=e;if(g>>>0>=c>>>0){if(g>>>0>c>>>0)break;if((f[a+20>>2]|0)>>>0>=e>>>0)break}i=d;k=f[i+4>>2]|0;g=j;f[g>>2]=f[i>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c}else if(h){h=j;g=f[h>>2]|0;h=f[h+4>>2]|0;e=d;c=f[e>>2]|0;e=f[e+4>>2]|0;k=j;f[k>>2]=c;f[k+4>>2]=e;k=d;f[k>>2]=g;f[k+4>>2]=h;if(i>>>0<=c>>>0){if(i>>>0>>0)break;if((f[a+4>>2]|0)>>>0<=e>>>0)break}i=a;h=f[i>>2]|0;i=f[i+4>>2]|0;k=a;f[k>>2]=c;f[k+4>>2]=e;k=j;f[k>>2]=h;f[k+4>>2]=i}while(0);c=a+24|0;a:do if((c|0)==(b|0)){d=1;c=0}else{k=c;c=0;while(1){e=f[k>>2]|0;if(e>>>0>>0)l=48;else if(e>>>0<=g>>>0)if((f[k+4>>2]|0)>>>0<(f[d+4>>2]|0)>>>0)l=48;if((l|0)==48){l=0;j=k;i=f[j>>2]|0;j=f[j+4>>2]|0;e=d;g=f[e+4>>2]|0;h=k;f[h>>2]=f[e>>2];f[h+4>>2]=g;b:do if((d|0)!=(a|0)){h=d;while(1){g=d;d=h+-8|0;e=f[d>>2]|0;if(e>>>0<=i>>>0){if(e>>>0>>0){d=g;break b}if((f[h+-4>>2]|0)>>>0<=j>>>0){d=g;break b}}m=d;e=f[m+4>>2]|0;h=g;f[h>>2]=f[m>>2];f[h+4>>2]=e;if((d|0)==(a|0))break;else h=d}}while(0);m=d;f[m>>2]=i;f[m+4>>2]=j;c=c+1|0;if((c|0)==8){d=0;c=(k+8|0)==(b|0);break a}}d=k+8|0;if((d|0)==(b|0)){d=1;c=0;break a}g=f[k>>2]|0;m=k;k=d;d=m}}while(0);m=c|d;return m|0}}return 0}function m_a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=f[a>>2]|0;k=e;l=(f[b>>2]|0)-k|0;b=e+(l>>3<<3)|0;e=f[c>>2]|0;q=f[d>>2]|0;j=q;g=e;if((e|0)==(q|0)){r=b;return r|0}i=0;d=e;while(1){n=i+1|0;d=f[d>>2]|0;if((q|0)==(d|0))break;else i=n}if((i|0)<=-1){r=b;return r|0}p=a+8|0;h=f[p>>2]|0;r=a+4|0;o=f[r>>2]|0;d=o;if((i|0)<(h-d>>3|0)){h=d-b|0;d=h>>3;if((i|0)<(d|0)){g=j;d=o}else{i=(h|0)>0;if(i)while(1){g=f[g>>2]|0;if((d|0)>1)d=d+-1|0;else break}if((q|0)==(g|0))d=o;else{h=g;d=o;do{p=h+8|0;a=f[p+4>>2]|0;f[d>>2]=f[p>>2];f[d+4>>2]=a;h=f[h>>2]|0;d=(f[r>>2]|0)+8|0;f[r>>2]=d}while((q|0)!=(h|0))}if(!i){r=b;return r|0}}j=d-(b+(n<<3))|0;k=j>>3;h=b+(k<<3)|0;if(h>>>0>>0){i=d;do{p=h;a=f[p+4>>2]|0;q=i;f[q>>2]=f[p>>2];f[q+4>>2]=a;h=h+8|0;i=(f[r>>2]|0)+8|0;f[r>>2]=i}while(h>>>0>>0)}if(k){cQb(d+(0-k<<3)|0,b|0,j|0)|0;e=f[c>>2]|0}if((e|0)==(g|0)){r=b;return r|0}d=b;while(1){a=e+8|0;q=f[a+4>>2]|0;r=d;f[r>>2]=f[a>>2];f[r+4>>2]=q;e=f[e>>2]|0;if((g|0)==(e|0))break;else d=d+8|0}return b|0}else{d=(d-k>>3)+n|0;if(d>>>0>536870911)AMb(a);k=h-k|0;g=k>>2;g=k>>3>>>0<268435455?(g>>>0>>0?d:g):536870911;k=b;d=l>>3;do if(!g)m=0;else if(g>>>0>536870911)vd();else{m=pOb(g<<3)|0;break}while(0);l=m+(d<<3)|0;j=m+(g<<3)|0;i=l;d=l;g=e;h=e;while(1){c=g+8|0;e=f[c+4>>2]|0;f[i>>2]=f[c>>2];f[i+4>>2]=e;i=d+8|0;e=i;h=f[h>>2]|0;if((q|0)==(h|0))break;else{d=e;g=h}}g=f[a>>2]|0;d=k-g|0;h=l+(0-(d>>3)<<3)|0;if((d|0)>0)bQb(h|0,g|0,d|0)|0;d=(f[r>>2]|0)-k|0;if((d|0)>0){bQb(i|0,b|0,d|0)|0;e=i+(d>>>3<<3)|0;b=f[a>>2]|0}else b=g;f[a>>2]=h;f[r>>2]=e;f[p>>2]=j;if(!b){r=l;return r|0}sOb(b);r=l;return r|0}return 0}function n_a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=f[c>>2]|0;if(!e){d=c;e=0}else{d=f[c+4>>2]|0;if(!d)d=c;else while(1){e=f[d>>2]|0;if(!e){e=0;break}else d=e}}k=d+4|0;l=f[(e|0?d:k)>>2]|0;m=(l|0)!=0;j=d+8|0;if(m)f[l+8>>2]=f[j>>2];e=f[j>>2]|0;g=f[e>>2]|0;if((g|0)==(d|0)){f[e>>2]=l;if((d|0)==(a|0)){a=l;g=0}else g=f[e+4>>2]|0}else f[e+4>>2]=l;h=d+12|0;i=(b[h>>0]|0)!=0;if((d|0)!=(c|0)){n=c+8|0;e=f[n>>2]|0;f[j>>2]=e;f[((f[f[n>>2]>>2]|0)==(c|0)?e:e+4|0)>>2]=d;e=f[c>>2]|0;f[d>>2]=e;f[e+8>>2]=d;e=f[c+4>>2]|0;f[k>>2]=e;if(e|0)f[e+8>>2]=d;b[h>>0]=b[c+12>>0]|0;a=(a|0)==(c|0)?d:a}if(!(i&(a|0)!=0))return;if(m){b[l+12>>0]=1;return}else j=g;while(1){g=j+8|0;h=f[g>>2]|0;d=j+12|0;e=(b[d>>0]|0)!=0;if((f[h>>2]|0)==(j|0)){if(e)i=j;else{b[d>>0]=1;b[h+12>>0]=0;d=j+4|0;e=f[d>>2]|0;f[h>>2]=e;if(e|0)f[e+8>>2]=h;i=h+8|0;f[g>>2]=f[i>>2];n=f[i>>2]|0;f[((f[n>>2]|0)==(h|0)?n:n+4|0)>>2]=j;f[d>>2]=h;f[i>>2]=j;i=f[h>>2]|0;a=(a|0)==(h|0)?j:a}d=f[i>>2]|0;g=(d|0)==0;if(!g)if(!(b[d+12>>0]|0)){h=49;break}e=f[i+4>>2]|0;if(e|0)if(!(b[e+12>>0]|0)){h=48;break}b[i+12>>0]=0;d=f[i+8>>2]|0;e=d+12|0;if((d|0)==(a|0)|(b[e>>0]|0)==0){h=47;break}}else{if(e)g=j;else{b[d>>0]=1;b[h+12>>0]=0;n=h+4|0;d=f[n>>2]|0;e=f[d>>2]|0;f[n>>2]=e;if(e|0)f[e+8>>2]=h;n=h+8|0;f[d+8>>2]=f[n>>2];g=f[n>>2]|0;f[((f[g>>2]|0)==(h|0)?g:g+4|0)>>2]=d;f[d>>2]=h;f[n>>2]=d;n=f[j>>2]|0;g=f[n+4>>2]|0;a=(a|0)==(n|0)?j:a}e=f[g>>2]|0;if(e|0)if(!(b[e+12>>0]|0)){h=30;break}d=f[g+4>>2]|0;if(d|0)if(!(b[d+12>>0]|0)){a=d;h=31;break}b[g+12>>0]=0;d=f[g+8>>2]|0;if((d|0)==(a|0)){h=29;break}if(!(b[d+12>>0]|0)){a=d;h=29;break}}j=f[d+8>>2]|0;j=f[((f[j>>2]|0)==(d|0)?j+4|0:j)>>2]|0}if((h|0)==29){b[a+12>>0]=1;return}else if((h|0)==30){a=f[g+4>>2]|0;if(!a)h=32;else h=31}else if((h|0)==47){b[e>>0]=1;return}else if((h|0)==48)if(g)h=50;else h=49;if((h|0)==31)if(!(b[a+12>>0]|0)){d=g;h=35}else h=32;else if((h|0)==49)if(!(b[d+12>>0]|0)){a=i;h=53}else h=50;if((h|0)==32){b[e+12>>0]=1;b[g+12>>0]=0;a=e+4|0;d=f[a>>2]|0;f[g>>2]=d;if(d|0)f[d+8>>2]=g;d=g+8|0;f[e+8>>2]=f[d>>2];h=f[d>>2]|0;f[((f[h>>2]|0)==(g|0)?h:h+4|0)>>2]=e;f[a>>2]=g;f[d>>2]=e;d=e;a=g;h=35}else if((h|0)==50){n=i+4|0;a=f[n>>2]|0;b[a+12>>0]=1;b[i+12>>0]=0;d=f[a>>2]|0;f[n>>2]=d;if(d|0)f[d+8>>2]=i;d=i+8|0;f[a+8>>2]=f[d>>2];h=f[d>>2]|0;f[((f[h>>2]|0)==(i|0)?h:h+4|0)>>2]=a;f[a>>2]=i;f[d>>2]=a;d=i;h=53}if((h|0)==35){e=f[d+8>>2]|0;n=e+12|0;b[d+12>>0]=b[n>>0]|0;b[n>>0]=1;b[a+12>>0]=1;n=e+4|0;a=f[n>>2]|0;d=f[a>>2]|0;f[n>>2]=d;if(d|0)f[d+8>>2]=e;n=e+8|0;f[a+8>>2]=f[n>>2];c=f[n>>2]|0;f[((f[c>>2]|0)==(e|0)?c:c+4|0)>>2]=a;f[a>>2]=e;f[n>>2]=a;return}else if((h|0)==53){g=f[a+8>>2]|0;e=g+12|0;b[a+12>>0]=b[e>>0]|0;b[e>>0]=1;b[d+12>>0]=1;a=f[g>>2]|0;d=a+4|0;e=f[d>>2]|0;f[g>>2]=e;if(e|0)f[e+8>>2]=g;n=g+8|0;f[a+8>>2]=f[n>>2];c=f[n>>2]|0;f[((f[c>>2]|0)==(g|0)?c:c+4|0)>>2]=a;f[d>>2]=g;f[n>>2]=a;return}}function o_a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;l=e+4|0;n=f[l>>2]|0;if(!n){x=1;return x|0}j=n+-1|0;i=(j&n|0)==0;if(i)k=j&d;else if(n>>>0>d>>>0)k=d;else k=(d>>>0)%(n>>>0)|0;h=f[(f[e>>2]|0)+(k<<2)>>2]|0;if(!h){x=1;return x|0}h=f[h>>2]|0;if(!h){x=1;return x|0}a:do if(i){while(1){o=f[h+4>>2]|0;i=(o|0)==(d|0);if(!(i|(o&j|0)==(k|0))){h=1;x=70;break}if(i)if((f[h+8>>2]|0)==(d|0)){v=h;break a}h=f[h>>2]|0;if(!h){h=1;x=70;break}}if((x|0)==70)return h|0}else{i=h;while(1){h=f[i+4>>2]|0;if((h|0)==(d|0)){if((f[i+8>>2]|0)==(d|0)){v=i;break a}}else{if(h>>>0>=n>>>0)h=(h>>>0)%(n>>>0)|0;if((h|0)!=(k|0)){h=1;x=70;break}}i=f[i>>2]|0;if(!i){h=1;x=70;break}}if((x|0)==70)return h|0}while(0);o=v+12|0;h=f[o>>2]|0;k=(f[v+16>>2]|0)-h|0;i=(k|0)/28|0;b:do if(!k)h=d;else{c:do if(I_a(b,c,h)|0){h=0;while(1){h=h+1|0;if(h>>>0>=i>>>0)break;if(!(I_a(b,c,(f[o>>2]|0)+(h*28|0)|0)|0)){g=h;break c}}n=f[l>>2]|0;h=f[v+4>>2]|0;break b}else g=0;while(0);j=f[o>>2]|0;J_a(o,j,j+(g*28|0)|0);j=a+464|0;g=a+468|0;h=f[g>>2]|0;do if(!h){r=g;s=g}else{i=a+468|0;d:while(1){g=f[h+16>>2]|0;do if(g>>>0>d>>>0)x=27;else{if(g>>>0>=d>>>0){g=f[h+20>>2]|0;if((g|0)>2){x=27;break}if((g|0)==2){x=32;break d}}q=h+4|0;g=f[q>>2]|0;if(!g){x=31;break d}else{p=q;m=g}}while(0);if((x|0)==27){x=0;g=f[h>>2]|0;if(!g){x=28;break}else{p=h;m=g}}i=p;h=m}if((x|0)==28){r=h;s=h;break}else if((x|0)==31){r=h;s=q;break}else if((x|0)==32){r=h;s=i;break}}while(0);if(f[s>>2]|0){x=0;return x|0}g=pOb(24)|0;h=g+16|0;f[h>>2]=d;f[h+4>>2]=2;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=r;f[s>>2]=g;h=f[f[j>>2]>>2]|0;if(h){f[j>>2]=h;g=f[s>>2]|0}r_a(f[a+468>>2]|0,g);x=a+472|0;f[x>>2]=(f[x>>2]|0)+1;x=0;return x|0}while(0);b=f[v>>2]|0;l=n+-1|0;m=(l&n|0)==0;if(m)h=l&h;else if(h>>>0>=n>>>0)h=(h>>>0)%(n>>>0)|0;k=(f[e>>2]|0)+(h<<2)|0;c=f[k>>2]|0;while(1){i=f[c>>2]|0;if((i|0)==(v|0))break;else c=i}if((c|0)==(e+8|0))x=53;else{i=f[c+4>>2]|0;if(m)i=i&l;else if(i>>>0>=n>>>0)i=(i>>>0)%(n>>>0)|0;if((i|0)==(h|0)){t=b;x=61}else x=53}do if((x|0)==53){if(b|0){i=f[b+4>>2]|0;if(m)j=i&l;else if(i>>>0>>0)j=i;else j=(i>>>0)%(n>>>0)|0;if((j|0)==(h|0)){g=i;w=b;x=63;break}}f[k>>2]=0;t=f[v>>2]|0;x=61}while(0);if((x|0)==61){i=t;if(!t)u=i;else{g=f[t+4>>2]|0;w=i;x=63}}if((x|0)==63){if(m)g=g&l;else if(g>>>0>=n>>>0)g=(g>>>0)%(n>>>0)|0;if((g|0)==(h|0))u=w;else{f[(f[e>>2]|0)+(g<<2)>>2]=c;u=f[v>>2]|0}}f[c>>2]=u;f[v>>2]=0;x=e+12|0;f[x>>2]=(f[x>>2]|0)+-1;UYa(o);sOb(v);x=1;return x|0}function p_a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f[a+440>>2]=b;p=a+448|0;i=f[p>>2]|0;if(!i)return;e=i+-1|0;d=(e&i|0)==0;if(d)g=e&b;else if(i>>>0>b>>>0)g=b;else g=(b>>>0)%(i>>>0)|0;s=a+444|0;c=f[(f[s>>2]|0)+(g<<2)>>2]|0;if(!c)return;c=f[c>>2]|0;if(!c)return;a:do if(d){while(1){j=f[c+4>>2]|0;d=(j|0)==(b|0);if(!(d|(j&e|0)==(g|0))){q=64;break}if(d)if((f[c+8>>2]|0)==(b|0)){t=c;break a}c=f[c>>2]|0;if(!c){q=64;break}}if((q|0)==64)return}else{d=c;while(1){c=f[d+4>>2]|0;if((c|0)==(b|0)){if((f[d+8>>2]|0)==(b|0)){t=d;break a}}else{if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(g|0)){q=64;break}}d=f[d>>2]|0;if(!d){q=64;break}}if((q|0)==64)return}while(0);j=a+464|0;g=b+1|0;h=f[t+12>>2]|0;c=a+468|0;d=f[c>>2]|0;do if(!d){n=c;o=c}else{e=a+468|0;b:while(1){c=f[d+16>>2]|0;do if(g>>>0>>0)q=25;else{if(c>>>0>=g>>>0){c=f[d+20>>2]|0;if((h|0)<(c|0)){q=25;break}if((c|0)>=(h|0)){q=30;break b}}m=d+4|0;c=f[m>>2]|0;if(!c){q=29;break b}else{l=m;k=c}}while(0);if((q|0)==25){q=0;c=f[d>>2]|0;if(!c){q=26;break}else{l=d;k=c}}e=l;d=k}if((q|0)==26){n=d;o=d;break}else if((q|0)==29){n=d;o=m;break}else if((q|0)==30){n=d;o=e;break}}while(0);if(!(f[o>>2]|0)){b=pOb(24)|0;c=b+16|0;f[c>>2]=g;f[c+4>>2]=h;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=n;f[o>>2]=b;c=f[f[j>>2]>>2]|0;if(c){f[j>>2]=c;b=f[o>>2]|0}r_a(f[a+468>>2]|0,b);i=a+472|0;f[i>>2]=(f[i>>2]|0)+1;i=f[p>>2]|0;b=f[t+4>>2]|0}d=i+-1|0;e=(d&i|0)==0;if(e)g=d&b;else if(b>>>0>>0)g=b;else g=(b>>>0)%(i>>>0)|0;c=(f[s>>2]|0)+(g<<2)|0;h=f[c>>2]|0;while(1){b=f[h>>2]|0;if((b|0)==(t|0))break;else h=b}if((h|0)==(a+452|0))q=49;else{b=f[h+4>>2]|0;if(e)b=b&d;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(g|0))r=t;else q=49}do if((q|0)==49){b=f[t>>2]|0;if(b|0){b=f[b+4>>2]|0;if(e)b=b&d;else if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0;if((b|0)==(g|0)){r=t;break}}f[c>>2]=0;r=t}while(0);c=f[r>>2]|0;b=c;if(c){c=f[c+4>>2]|0;if(e)c=c&d;else if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(g|0)){f[(f[s>>2]|0)+(c<<2)>>2]=h;b=f[t>>2]|0}}f[h>>2]=b;f[r>>2]=0;a=a+456|0;f[a>>2]=(f[a>>2]|0)+-1;sOb(t);return}function q_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+32|0;k=o+16|0;l=o;f[l>>2]=0;n=l+4|0;f[n>>2]=0;f[l+8>>2]=0;d=f[c>>2]|0;j=f[c+4>>2]|0;h=d+(j<<3)|0;a:do if(!j)m=13;else{i=k+4|0;j=l+8|0;do{vRa(k,b,d);if(!(f[k>>2]|0))e=B_a(a,d,3)|0;else e=1;g=f[i>>2]|0;if(g|0)iOb(g);b:do switch(e<<24>>24){case 0:{g=0;break a}case 3:{e=f[n>>2]|0;if((e|0)==(f[j>>2]|0)){$E(l,d);break b}else{q=d;p=f[q+4>>2]|0;g=e;f[g>>2]=f[q>>2];f[g+4>>2]=p;f[n>>2]=(f[n>>2]|0)+8;break b}}default:{}}while(0);d=d+8|0}while((d|0)!=(h|0));if((f[l>>2]|0)==(f[n>>2]|0))m=13;else{H_a(c+24|0,l,c);g=1}}while(0);if((m|0)==13){g=f[c+24>>2]|0;oh[f[(f[g>>2]|0)+8>>2]&1023](g,c);g=1}d=f[l>>2]|0;if(!d){u=o;return g|0}e=f[n>>2]|0;if((e|0)!=(d|0))f[n>>2]=e+(~((e+-8-d|0)>>>3)<<3);sOb(d);u=o;return g|0}function r_a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=(c|0)==(a|0);b[c+12>>0]=j&1;if(j)return;while(1){i=c+8|0;d=f[i>>2]|0;h=d+12|0;if(b[h>>0]|0){g=23;break}j=d+8|0;e=f[j>>2]|0;g=f[e>>2]|0;if((g|0)==(d|0)){g=f[e+4>>2]|0;if(!g){g=7;break}g=g+12|0;if(!(b[g>>0]|0))c=g;else{g=7;break}}else{if(!g){g=16;break}g=g+12|0;if(!(b[g>>0]|0))c=g;else{g=16;break}}b[h>>0]=1;j=(e|0)==(a|0);b[e+12>>0]=j&1;b[c>>0]=1;if(j){g=23;break}else c=e}if((g|0)==7){if((f[d>>2]|0)==(c|0)){c=d;g=e}else{i=d+4|0;g=f[i>>2]|0;c=f[g>>2]|0;f[i>>2]=c;if(!c)c=e;else{f[c+8>>2]=d;c=f[j>>2]|0}f[g+8>>2]=c;c=f[j>>2]|0;f[((f[c>>2]|0)==(d|0)?c:c+4|0)>>2]=g;f[g>>2]=d;f[j>>2]=g;c=g;g=f[g+8>>2]|0}b[c+12>>0]=1;b[g+12>>0]=0;c=f[g>>2]|0;d=c+4|0;e=f[d>>2]|0;f[g>>2]=e;if(e|0)f[e+8>>2]=g;j=g+8|0;f[c+8>>2]=f[j>>2];i=f[j>>2]|0;f[((f[i>>2]|0)==(g|0)?i:i+4|0)>>2]=c;f[d>>2]=g;f[j>>2]=c;return}else if((g|0)==16){if((f[d>>2]|0)==(c|0)){h=c+4|0;g=f[h>>2]|0;f[d>>2]=g;if(g){f[g+8>>2]=d;e=f[j>>2]|0}f[i>>2]=e;e=f[j>>2]|0;f[((f[e>>2]|0)==(d|0)?e:e+4|0)>>2]=c;f[h>>2]=d;f[j>>2]=c;d=c;e=f[c+8>>2]|0}b[d+12>>0]=1;b[e+12>>0]=0;j=e+4|0;c=f[j>>2]|0;d=f[c>>2]|0;f[j>>2]=d;if(d|0)f[d+8>>2]=e;j=e+8|0;f[c+8>>2]=f[j>>2];i=f[j>>2]|0;f[((f[i>>2]|0)==(e|0)?i:i+4|0)>>2]=c;f[c>>2]=e;f[j>>2]=c;return}else if((g|0)==23)return}function s_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+32|0;k=o+16|0;l=o;f[l>>2]=0;n=l+4|0;f[n>>2]=0;f[l+8>>2]=0;d=f[c>>2]|0;j=f[c+4>>2]|0;h=d+(j<<3)|0;a:do if(!j)m=13;else{i=k+4|0;j=l+8|0;do{uRa(k,b,d);if(!(f[k>>2]|0))e=B_a(a,d,4)|0;else e=1;g=f[i>>2]|0;if(g|0)iOb(g);b:do switch(e<<24>>24){case 0:{g=0;break a}case 3:{e=f[n>>2]|0;if((e|0)==(f[j>>2]|0)){xM(l,d);break b}else{q=d;p=f[q+4>>2]|0;g=e;f[g>>2]=f[q>>2];f[g+4>>2]=p;f[n>>2]=(f[n>>2]|0)+8;break b}}default:{}}while(0);d=d+8|0}while((d|0)!=(h|0));if((f[l>>2]|0)==(f[n>>2]|0))m=13;else{G_a(c+24|0,l,c);g=1}}while(0);if((m|0)==13){g=f[c+24>>2]|0;oh[f[(f[g>>2]|0)+8>>2]&1023](g,c);g=1}d=f[l>>2]|0;if(!d){u=o;return g|0}e=f[n>>2]|0;if((e|0)!=(d|0))f[n>>2]=e+(~((e+-8-d|0)>>>3)<<3);sOb(d);u=o;return g|0}function t_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+32|0;l=q+24|0;m=q+8|0;n=q;f[m>>2]=0;p=m+4|0;f[p>>2]=0;f[m+8>>2]=0;d=f[c>>2]|0;k=f[c+4>>2]|0;h=d+(k<<3)|0;if(!k)o=16;else{i=l+4|0;j=n+4|0;k=m+8|0;do{DRa(l,b,d);if(!(f[l>>2]|0))e=B_a(a,d,1)|0;else e=1;g=f[i>>2]|0;if(g|0)iOb(g);a:do switch(e<<24>>24){case 0:{eRa(n,b,d,0,0);e=f[j>>2]|0;if(e|0)iOb(e);xh[f[(f[a>>2]|0)+16>>2]&127](a,d,0);break}case 3:{e=f[p>>2]|0;if((e|0)==(f[k>>2]|0)){uH(m,d);break a}else{s=d;r=f[s+4>>2]|0;g=e;f[g>>2]=f[s>>2];f[g+4>>2]=r;f[p>>2]=(f[p>>2]|0)+8;break a}}default:{}}while(0);d=d+8|0}while((d|0)!=(h|0));if((f[m>>2]|0)==(f[p>>2]|0))o=16;else F_a(c+24|0,m,c)}if((o|0)==16){s=f[c+24>>2]|0;oh[f[(f[s>>2]|0)+8>>2]&1023](s,c)}d=f[m>>2]|0;if(!d){u=q;return}e=f[p>>2]|0;if((e|0)!=(d|0))f[p>>2]=e+(~((e+-8-d|0)>>>3)<<3);sOb(d);u=q;return}function u_a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+32|0;l=p+16|0;m=p;f[m>>2]=0;o=m+4|0;f[o>>2]=0;f[m+8>>2]=0;e=f[d>>2]|0;k=f[d+4>>2]|0;i=e+(k<<3)|0;a:do if(!k)n=14;else{j=l+4|0;k=m+8|0;do{zRa(l,c,e);g=f[l>>2]|0;if(!g)n=5;else if(!(b[(f[g+44>>2]|0)+148>>0]&2))n=5;else g=1;if((n|0)==5){n=0;g=B_a(a,e,7)|0}h=f[j>>2]|0;if(h|0)iOb(h);b:do switch(g<<24>>24){case 0:{h=0;break a}case 3:{g=f[o>>2]|0;if((g|0)==(f[k>>2]|0)){kG(m,e);break b}else{r=e;q=f[r+4>>2]|0;h=g;f[h>>2]=f[r>>2];f[h+4>>2]=q;f[o>>2]=(f[o>>2]|0)+8;break b}}default:{}}while(0);e=e+8|0}while((e|0)!=(i|0));if((f[m>>2]|0)==(f[o>>2]|0))n=14;else{E_a(d+24|0,m,d);h=1}}while(0);if((n|0)==14){h=f[d+24>>2]|0;oh[f[(f[h>>2]|0)+8>>2]&1023](h,d);h=1}e=f[m>>2]|0;if(!e){u=p;return h|0}g=f[o>>2]|0;if((g|0)!=(e|0))f[o>>2]=g+(~((g+-8-e|0)>>>3)<<3);sOb(e);u=p;return h|0}function v_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+32|0;l=p+16|0;m=p;f[m>>2]=0;o=m+4|0;f[o>>2]=0;f[m+8>>2]=0;d=f[c>>2]|0;k=f[c+4>>2]|0;h=d+(k<<3)|0;a:do if(!k)n=15;else{i=l+4|0;j=m+8|0;k=c+20|0;do{sRa(l,b,d);e=f[l>>2]|0;if(!e)e=B_a(a,d,8)|0;else if(!(f[k>>2]&1))e=((NFa(e)|0)^1)&1;else e=1;g=f[i>>2]|0;if(g|0)iOb(g);b:do switch(e<<24>>24){case 0:{g=0;break a}case 3:{e=f[o>>2]|0;if((e|0)==(f[j>>2]|0)){lE(m,d);break b}else{r=d;q=f[r+4>>2]|0;g=e;f[g>>2]=f[r>>2];f[g+4>>2]=q;f[o>>2]=(f[o>>2]|0)+8;break b}}default:{}}while(0);d=d+8|0}while((d|0)!=(h|0));if((f[m>>2]|0)==(f[o>>2]|0))n=15;else{D_a(c+24|0,m,c);g=1}}while(0);if((n|0)==15){g=f[c+24>>2]|0;oh[f[(f[g>>2]|0)+8>>2]&1023](g,c);g=1}d=f[m>>2]|0;if(!d){u=p;return g|0}e=f[o>>2]|0;if((e|0)!=(d|0))f[o>>2]=e+(~((e+-8-d|0)>>>3)<<3);sOb(d);u=p;return g|0}function w_a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+32|0;l=p+16|0;m=p;f[m>>2]=0;o=m+4|0;f[o>>2]=0;f[m+8>>2]=0;d=f[c>>2]|0;k=f[c+4>>2]|0;h=d+(k<<3)|0;a:do if(!k)n=16;else{i=l+4|0;j=m+8|0;k=c+20|0;do{CRa(l,b,d);e=f[l>>2]|0;if(!e){e=B_a(a,d,10)|0;n=6}else if(lFa(e,b,(f[k>>2]|0)>>>1&1,0)|0){e=f[i>>2]|0;if(e|0)iOb(e)}else{e=0;n=6}b:do if((n|0)==6){n=0;g=f[i>>2]|0;if(g|0)iOb(g);switch(e<<24>>24){case 0:{g=0;break a}case 3:break;default:break b}e=f[o>>2]|0;if((e|0)==(f[j>>2]|0)){SD(m,d);break}else{r=d;q=f[r+4>>2]|0;g=e;f[g>>2]=f[r>>2];f[g+4>>2]=q;f[o>>2]=(f[o>>2]|0)+8;break}}while(0);d=d+8|0}while((d|0)!=(h|0));if((f[m>>2]|0)==(f[o>>2]|0))n=16;else{C_a(c+24|0,m,c);g=1}}while(0);if((n|0)==16){g=f[c+24>>2]|0;oh[f[(f[g>>2]|0)+8>>2]&1023](g,c);g=1}d=f[m>>2]|0;if(!d){u=p;return g|0}e=f[o>>2]|0;if((e|0)!=(d|0))f[o>>2]=e+(~((e+-8-d|0)>>>3)<<3);sOb(d);u=p;return g|0}function x_a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;h=f[a+16>>2]|0;a:{OYa(h+428|0,f[h+432>>2]|0);b=f[h+416>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;sOb(g)}while((b|0)!=0);b=f[(h+408|0)>>2]|0;f[(h+408|0)>>2]=0;if(b|0)sOb(b);b=f[h+396>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[c+12>>2]|0;if(d|0){e=f[(c+16|0)>>2]|0;if((e|0)!=(d|0))f[(c+16|0)>>2]=e+(~((e+-8-d|0)>>>3)<<3);sOb(d)}sOb(c)}while((b|0)!=0);b=f[(h+388|0)>>2]|0;f[(h+388|0)>>2]=0;if(b|0)sOb(b);b=f[h+376>>2]|0;if(b|0){c=f[(h+380|0)>>2]|0;if((c|0)!=(b|0))f[(h+380|0)>>2]=c+(~((c+-8-b|0)>>>3)<<3);sOb(b)}b=f[h+364>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;c=f[(g+32|0)>>2]|0;f[(g+32|0)>>2]=0;if(c|0)gh[f[(f[c>>2]|0)+4>>2]&2047](c);c=f[g+20>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=f[(d+12|0)>>2]|0;f[(d+12|0)>>2]=0;if(e|0)gh[f[(f[e>>2]|0)+4>>2]&2047](e);sOb(d)}while((c|0)!=0);c=f[(g+12|0)>>2]|0;f[(g+12|0)>>2]=0;if(c|0)sOb(c);sOb(g)}while((b|0)!=0);b=f[(h+356|0)>>2]|0;f[(h+356|0)>>2]=0;if(b|0)sOb(b);b=f[h+344>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;c=f[(e+20|0)>>2]|0;if(c|0){d=f[(e+24|0)>>2]|0;if((d|0)!=(c|0)){do{g=d+-4|0;f[(e+24|0)>>2]=g;d=f[g>>2]|0;f[g>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=f[(e+24|0)>>2]|0}while((d|0)!=(c|0));c=f[(e+20|0)>>2]|0}sOb(c)}sOb(e)}while((b|0)!=0);b=f[(h+336|0)>>2]|0;f[(h+336|0)>>2]=0;if(b|0)sOb(b);MYa(f[h+324>>2]|0);b=f[(h+316|0)>>2]|0;f[(h+316|0)>>2]=0;if(b|0)sOb(b);b=f[h+304>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[(c+12|0)>>2]|0;f[(c+12|0)>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);sOb(c)}while((b|0)!=0);b=f[(h+296|0)>>2]|0;f[(h+296|0)>>2]=0;if(b|0)sOb(b);b=f[h+284>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[(c+12|0)>>2]|0;f[(c+12|0)>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);sOb(c)}while((b|0)!=0);b=f[(h+276|0)>>2]|0;f[(h+276|0)>>2]=0;if(b|0)sOb(b);b=f[h+264>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;d=f[(c+12|0)>>2]|0;f[(c+12|0)>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);sOb(c)}while((b|0)!=0);b=f[(h+256|0)>>2]|0;f[(h+256|0)>>2]=0;if(b|0)sOb(b);PYa(h+244|0);b=f[h+232>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;PYa(g+12|0);sOb(g)}while((b|0)!=0);b=f[(h+224|0)>>2]|0;f[(h+224|0)>>2]=0;if(b|0)sOb(b);QYa(h+212|0);b=f[h+200>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;QYa(g+12|0);sOb(g)}while((b|0)!=0);b=f[(h+192|0)>>2]|0;f[(h+192|0)>>2]=0;if(b|0)sOb(b);RYa(h+180|0);b=f[h+168>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;RYa(g+12|0);sOb(g)}while((b|0)!=0);b=f[(h+160|0)>>2]|0;f[(h+160|0)>>2]=0;if(b|0)sOb(b);SYa(h+148|0);b=f[h+136>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;SYa(g+12|0);sOb(g)}while((b|0)!=0);b=f[(h+128|0)>>2]|0;f[(h+128|0)>>2]=0;if(b|0)sOb(b);UYa(h+116|0);b=f[h+104>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;UYa(g+12|0);sOb(g)}while((b|0)!=0);b=f[(h+96|0)>>2]|0;f[(h+96|0)>>2]=0;if(b|0)sOb(b);UYa(h+84|0);b=f[h+72>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;UYa(g+12|0);sOb(g)}while((b|0)!=0);b=f[(h+64|0)>>2]|0;f[(h+64|0)>>2]=0;if(b|0)sOb(b);VYa(h+52|0);b=f[h+40>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;VYa(g+12|0);sOb(g)}while((b|0)!=0);b=f[(h+32|0)>>2]|0;f[(h+32|0)>>2]=0;if(b|0)sOb(b);WYa(h+20|0);b=f[h+8>>2]|0;if(b|0)do{g=b;b=f[b>>2]|0;WYa(g+12|0);sOb(g)}while((b|0)!=0);b=f[h>>2]|0;f[h>>2]=0;if(!b){f[a+1280>>2]=5;break a}sOb(b);f[a+1280>>2]=5;break a}}function y_a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;O=f[a+16>>2]|0;d=f[a+496>>2]|0;n=f[a+504>>2]|0;N=f[a+816>>2]|0;b=f[a+2856>>2]|0;l=f[a+2864>>2]|0;m=f[a+3384>>2]|0;o=f[a+3392>>2]|0;g=f[a+3568>>2]|0;P=f[a+3576>>2]|0;a:{if(P){P=0;if((g|0)==354){e=f[b>>2]|0;b=e+(d*28|0)|0;k=f[l>>2]|0;if((k|0)!=(b|0)){do{f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];i=b+8|0;j=e+8|0;d=f[j>>2]|0;h=e+12|0;if(!d)d=e+16|0;else{g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-8-d|0)>>>3)<<3);sOb(d);d=e+16|0;f[d>>2]=0;f[h>>2]=0;f[j>>2]=0}f[j>>2]=f[i>>2];j=b+12|0;f[h>>2]=f[j>>2];h=b+16|0;f[d>>2]=f[h>>2];f[h>>2]=0;f[j>>2]=0;f[i>>2]=0;f[b>>2]=0;f[e+20>>2]=f[b+20>>2];d=b+24|0;j=e+24|0;i=f[d>>2]|0;f[d>>2]=0;d=f[j>>2]|0;f[j>>2]=i;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);b=b+28|0;e=e+28|0}while((b|0)!=(k|0));b=f[l>>2]|0}if((b|0)==(e|0))g=375;else{do{g=b+-28|0;f[l>>2]=g;k=b+-4|0;d=f[k>>2]|0;f[k>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=b+-20|0;h=f[d>>2]|0;i=b+-16|0;if((h|0)==(f[i>>2]|0)){b=f[g>>2]|0;if(!b)b=h;else{tOb(b);b=f[d>>2]|0}}else b=h;if(b|0){d=f[i>>2]|0;if((d|0)!=(b|0))f[i>>2]=d+(~((d+-8-b|0)>>>3)<<3);sOb(b)}b=f[l>>2]|0}while((b|0)!=(e|0));g=375}}else P=1}if(P){P=0;if((g|0)==444){d=f[m>>2]|0;b=d+(n*28|0)|0;k=f[o>>2]|0;if((k|0)==(b|0))j=d;else{j=d;do{f[j>>2]=f[b>>2];f[j+4>>2]=f[b+4>>2];h=b+8|0;i=j+8|0;d=f[i>>2]|0;g=j+12|0;if(!d)d=j+16|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-8-d|0)>>>3)<<3);sOb(d);d=j+16|0;f[d>>2]=0;f[g>>2]=0;f[i>>2]=0}f[i>>2]=f[h>>2];n=b+12|0;f[g>>2]=f[n>>2];m=b+16|0;f[d>>2]=f[m>>2];f[m>>2]=0;f[n>>2]=0;f[h>>2]=0;f[b>>2]=0;f[j+20>>2]=f[b+20>>2];d=b+24|0;n=j+24|0;m=f[d>>2]|0;f[d>>2]=0;d=f[n>>2]|0;f[n>>2]=m;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);b=b+28|0;j=j+28|0}while((b|0)!=(k|0));b=f[o>>2]|0}if((b|0)==(j|0))g=465;else{do{g=b+-28|0;f[o>>2]=g;n=b+-4|0;d=f[n>>2]|0;f[n>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);d=b+-20|0;e=f[d>>2]|0;h=b+-16|0;if((e|0)==(f[h>>2]|0)){b=f[g>>2]|0;if(!b)b=e;else{tOb(b);b=f[d>>2]|0}}else b=e;if(b|0){d=f[h>>2]|0;if((d|0)!=(b|0))f[h>>2]=d+(~((d+-8-b|0)>>>3)<<3);sOb(b)}b=f[o>>2]|0}while((b|0)!=(j|0));g=465}}else if((g|0)==515)if(1){f[a+3608>>2]=5;break a}else P=1}b=1;if(b)if((g|0)==53){b=f[(O+468|0)>>2]|0;do if(!b){D=O+468|0;I=O+468|0}else{d=O+468|0;b:while(1){c=f[b+16>>2]|0;do if(c>>>0>N>>>0)g=58;else{if(c>>>0>=N>>>0){c=f[b+20>>2]|0;if((c|0)>4){g=58;break}if((c|0)==4){g=63;break b}}z=b+4|0;c=f[z>>2]|0;if(!c){g=62;break b}else{t=z;p=c}}while(0);if((g|0)==58){g=0;c=f[b>>2]|0;if(!c){g=59;break}else{t=b;p=c}}d=t;b=p}if((g|0)==59){D=b;I=b;break}else if((g|0)==62){D=b;I=z;break}else if((g|0)==63){D=b;I=d;break}}while(0);if(f[I>>2]|0){f[a+3608>>2]=5;break a}b=pOb(24)|0;f[(b+16|0)>>2]=N;f[(b+16|0)+4>>2]=4;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=D;f[I>>2]=b;c=f[f[(O+464|0)>>2]>>2]|0;if(c){f[(O+464|0)>>2]=c;b=f[I>>2]|0}r_a(f[(O+468|0)>>2]|0,b);f[(O+472|0)>>2]=(f[(O+472|0)>>2]|0)+1;f[a+3608>>2]=5;break a}else if((g|0)==143){b=f[(O+468|0)>>2]|0;do if(!b){H=O+468|0;J=O+468|0}else{d=O+468|0;c:while(1){c=f[b+16>>2]|0;do if(c>>>0>N>>>0)g=148;else{if(c>>>0>=N>>>0){c=f[b+20>>2]|0;if((c|0)>6){g=148;break}if((c|0)==6){g=153;break c}}A=b+4|0;c=f[A>>2]|0;if(!c){g=152;break c}else{x=A;s=c}}while(0);if((g|0)==148){g=0;c=f[b>>2]|0;if(!c){g=149;break}else{x=b;s=c}}d=x;b=s}if((g|0)==149){H=b;J=b;break}else if((g|0)==152){H=b;J=A;break}else if((g|0)==153){H=b;J=d;break}}while(0);if(f[J>>2]|0){f[a+3608>>2]=5;break a}b=pOb(24)|0;f[(b+16|0)>>2]=N;f[(b+16|0)+4>>2]=6;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=H;f[J>>2]=b;c=f[f[(O+464|0)>>2]>>2]|0;if(c){f[(O+464|0)>>2]=c;b=f[J>>2]|0}r_a(f[(O+468|0)>>2]|0,b);f[(O+472|0)>>2]=(f[(O+472|0)>>2]|0)+1;f[a+3608>>2]=5;break a}else b=1;if(b){b=0;if((g|0)==285){b=f[(O+468|0)>>2]|0;do if(!b){E=O+468|0;K=O+468|0}else{d=O+468|0;d:while(1){c=f[b+16>>2]|0;do if(c>>>0>N>>>0)g=290;else{if(c>>>0>=N>>>0){c=f[b+20>>2]|0;if((c|0)>7){g=290;break}if((c|0)==7){g=295;break d}}B=b+4|0;c=f[B>>2]|0;if(!c){g=294;break d}else{u=B;q=c}}while(0);if((g|0)==290){g=0;c=f[b>>2]|0;if(!c){g=291;break}else{u=b;q=c}}d=u;b=q}if((g|0)==291){E=b;K=b;break}else if((g|0)==294){E=b;K=B;break}else if((g|0)==295){E=b;K=d;break}}while(0);if(f[K>>2]|0){f[a+3608>>2]=5;break a}b=pOb(24)|0;f[(b+16|0)>>2]=N;f[(b+16|0)+4>>2]=7;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=E;f[K>>2]=b;c=f[f[(O+464|0)>>2]>>2]|0;if(c){f[(O+464|0)>>2]=c;b=f[K>>2]|0}r_a(f[(O+468|0)>>2]|0,b);f[(O+472|0)>>2]=(f[(O+472|0)>>2]|0)+1;f[a+3608>>2]=5;break a}else if((g|0)==375){b=f[(O+468|0)>>2]|0;do if(!b){F=O+468|0;L=O+468|0}else{d=O+468|0;e:while(1){c=f[b+16>>2]|0;do if(c>>>0>N>>>0)g=380;else{if(c>>>0>=N>>>0){c=f[b+20>>2]|0;if((c|0)>1){g=380;break}if((c|0)==1){g=385;break e}}C=b+4|0;c=f[C>>2]|0;if(!c){g=384;break e}else{v=C;r=c}}while(0);if((g|0)==380){g=0;c=f[b>>2]|0;if(!c){g=381;break}else{v=b;r=c}}d=v;b=r}if((g|0)==381){F=b;L=b;break}else if((g|0)==384){F=b;L=C;break}else if((g|0)==385){F=b;L=d;break}}while(0);if(f[L>>2]|0){f[a+3608>>2]=5;break a}b=pOb(24)|0;f[(b+16|0)>>2]=N;f[(b+16|0)+4>>2]=1;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=F;f[L>>2]=b;c=f[f[(O+464|0)>>2]>>2]|0;if(c){f[(O+464|0)>>2]=c;b=f[L>>2]|0}r_a(f[(O+468|0)>>2]|0,b);f[(O+472|0)>>2]=(f[(O+472|0)>>2]|0)+1;f[a+3608>>2]=5;break a}else if((g|0)==465)b=1}if(b)if(1){b=f[(O+468|0)>>2]|0;do if(!b){G=O+468|0;M=O+468|0}else{e=O+468|0;f:while(1){d=f[b+16>>2]|0;do if(d>>>0>N>>>0)g=470;else{if(d>>>0>=N>>>0){d=f[b+20>>2]|0;if((d|0)>0){g=470;break}if((d|0)>=0){g=475;break f}}y=b+4|0;c=f[y>>2]|0;if(!c){g=474;break f}else w=y}while(0);if((g|0)==470){g=0;c=f[b>>2]|0;if(!c){g=471;break}else w=b}e=w;b=c}if((g|0)==471){G=b;M=b;break}else if((g|0)==474){G=b;M=y;break}else if((g|0)==475){G=b;M=e;break}}while(0);if(f[M>>2]|0){f[a+3608>>2]=5;break a}b=pOb(24)|0;f[(b+16|0)>>2]=N;f[(b+16|0)+4>>2]=0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=G;f[M>>2]=b;c=f[f[(O+464|0)>>2]>>2]|0;if(c){f[(O+464|0)>>2]=c;b=f[M>>2]|0}r_a(f[(O+468|0)>>2]|0,b);f[(O+472|0)>>2]=(f[(O+472|0)>>2]|0)+1;f[a+3608>>2]=5;break a}}f[a+3568>>2]=g;f[a+3576>>2]=P}function z_a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;F=f[a+16>>2]|0;w=f[a+24>>2]|0;x=f[a+32>>2]|0;B=f[a+488>>2]|0;C=f[a+496>>2]|0;D=f[a+504>>2]|0;E=f[a+816>>2]|0;y=f[a+2240>>2]|0;H=f[a+2352>>2]|0;I=f[a+2360>>2]|0;J=f[a+2856>>2]|0;K=f[a+2864>>2]|0;L=f[a+3384>>2]|0;M=f[a+3392>>2]|0;v=f[a+3568>>2]|0;N=f[a+3592>>2]|0;O=f[a+3600>>2]|0;a:{if(N){N=0;switch(O|0){case 7:{i=f[(F+196|0)>>2]|0;b:do if(i|0){if(!((i+-1|0)&i))h=(i+-1|0)&E;else if(i>>>0>E>>>0)h=E;else h=(E>>>0)%(i>>>0)|0;e=f[(f[(F+192|0)>>2]|0)+(h<<2)>>2]|0;if(e|0){e=f[e>>2]|0;if(e|0){c:do if(!((i+-1|0)&i))while(1){g=f[e+4>>2]|0;if(!((g|0)==(E|0)|(g&(i+-1|0)|0)==(h|0)))break b;if((g|0)==(E|0))if((f[e+8>>2]|0)==(E|0))break c;e=f[e>>2]|0;if(!e)break b}else while(1){g=f[e+4>>2]|0;if((g|0)==(E|0)){if((f[e+8>>2]|0)==(E|0))break c}else{if(g>>>0>=i>>>0)g=(g>>>0)%(i>>>0)|0;if((g|0)!=(h|0))break b}e=f[e>>2]|0;if(!e)break b}while(0);H=e+12|0;I=e+16|0;g=f[H>>2]|0;h=(f[I>>2]|0)-g|0;if(!h){n=i;g=E}else{if(u_a(w,x,g)|0)B=0;else{v=285;f[a+3616>>2]=2;f[a+3620>>2]=12;break a}while(1){B=B+1|0;if(B>>>0>=((h|0)/28|0)>>>0)break;if(!(u_a(w,x,(f[H>>2]|0)+(B*28|0)|0)|0)){v=264;f[a+3616>>2]=2;f[a+3620>>2]=12;break a}}n=f[(F+196|0)>>2]|0;g=f[e+4>>2]|0}k=f[e>>2]|0;m=n+-1|0;o=(m&n|0)==0;if(o)g=m&g;else if(g>>>0>=n>>>0)g=(g>>>0)%(n>>>0)|0;j=(f[(F+192|0)>>2]|0)+(g<<2)|0;l=f[j>>2]|0;while(1){h=f[l>>2]|0;if((h|0)==(e|0))break;else l=h}if((l|0)==(F+200|0|0))v=316;else{h=f[l+4>>2]|0;if(o)h=h&m;else if(h>>>0>=n>>>0)h=(h>>>0)%(n>>>0)|0;if((h|0)==(g|0)){p=k;v=324}else v=316}do if((v|0)==316){if(k|0){h=f[k+4>>2]|0;if(o)i=h&m;else if(h>>>0>>0)i=h;else i=(h>>>0)%(n>>>0)|0;if((i|0)==(g|0)){r=k;d=h;v=326;break}}f[j>>2]=0;p=f[e>>2]|0;v=324}while(0);if((v|0)==324){v=0;h=p;if(!p)q=h;else{r=h;d=f[p+4>>2]|0;v=326}}if((v|0)==326){v=0;if(o)d=d&m;else if(d>>>0>=n>>>0)d=(d>>>0)%(n>>>0)|0;if((d|0)==(g|0))q=r;else{f[(f[(F+192|0)>>2]|0)+(d<<2)>>2]=l;q=f[e>>2]|0}}f[l>>2]=q;f[e>>2]=0;f[(F+204|0)>>2]=(f[(F+204|0)>>2]|0)+-1;QYa(H);sOb(e)}}}while(0);p_a(F,E);break}default:N=1}}if(N){N=0;switch(O|0){case 1:{h=f[(F+36|0)>>2]|0;d:do if(h|0){if(!((h+-1|0)&h))g=(h+-1|0)&E;else if(h>>>0>E>>>0)g=E;else g=(E>>>0)%(h>>>0)|0;d=f[(f[(F+32|0)>>2]|0)+(g<<2)>>2]|0;if(d|0){d=f[d>>2]|0;if(d|0){e:do if(!((h+-1|0)&h))while(1){e=f[d+4>>2]|0;if(!((e|0)==(E|0)|(e&(h+-1|0)|0)==(g|0)))break d;if((e|0)==(E|0))if((f[d+8>>2]|0)==(E|0))break e;d=f[d>>2]|0;if(!d)break d}else while(1){e=f[d+4>>2]|0;if((e|0)==(E|0)){if((f[d+8>>2]|0)==(E|0))break e}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(g|0))break d}d=f[d>>2]|0;if(!d)break d}while(0);J=d+12|0;K=d+16|0;e=f[J>>2]|0;g=(f[K>>2]|0)-e|0;if(!g){m=h;e=E}else{if(v_a(w,x,e)|0)C=0;else{v=375;f[a+3616>>2]=2;f[a+3620>>2]=12;break a}while(1){C=C+1|0;if(C>>>0>=((g|0)/28|0)>>>0)break;if(!(v_a(w,x,(f[J>>2]|0)+(C*28|0)|0)|0)){v=354;f[a+3616>>2]=2;f[a+3620>>2]=12;break a}}m=f[(F+36|0)>>2]|0;e=f[d+4>>2]|0}j=f[d>>2]|0;l=m+-1|0;n=(l&m|0)==0;if(n)e=l&e;else if(e>>>0>=m>>>0)e=(e>>>0)%(m>>>0)|0;i=(f[(F+32|0)>>2]|0)+(e<<2)|0;k=f[i>>2]|0;while(1){g=f[k>>2]|0;if((g|0)==(d|0))break;else k=g}if((k|0)==(F+40|0|0))v=406;else{g=f[k+4>>2]|0;if(n)g=g&l;else if(g>>>0>=m>>>0)g=(g>>>0)%(m>>>0)|0;if((g|0)==(e|0)){s=j;v=414}else v=406}do if((v|0)==406){if(j|0){g=f[j+4>>2]|0;if(n)h=g&l;else if(g>>>0>>0)h=g;else h=(g>>>0)%(m>>>0)|0;if((h|0)==(e|0)){u=j;c=g;v=416;break}}f[i>>2]=0;s=f[d>>2]|0;v=414}while(0);if((v|0)==414){v=0;g=s;if(!s)t=g;else{u=g;c=f[s+4>>2]|0;v=416}}if((v|0)==416){v=0;if(n)c=c&l;else if(c>>>0>=m>>>0)c=(c>>>0)%(m>>>0)|0;if((c|0)==(e|0))t=u;else{f[(f[(F+32|0)>>2]|0)+(c<<2)>>2]=k;t=f[d>>2]|0}}f[k>>2]=t;f[d>>2]=0;f[(F+44|0)>>2]=(f[(F+44|0)>>2]|0)+-1;VYa(J);sOb(d)}}}while(0);p_a(F,E);break}default:N=1}}if(N){N=0;switch(O|0){case 0:{k=f[(F+4|0)>>2]|0;f:do if(k|0){if(!((k+-1|0)&k))e=(k+-1|0)&E;else if(k>>>0>E>>>0)e=E;else e=(E>>>0)%(k>>>0)|0;c=f[(f[F>>2]|0)+(e<<2)>>2]|0;if(c|0){c=f[c>>2]|0;if(c|0){g:do if(!((k+-1|0)&k))while(1){d=f[c+4>>2]|0;if(!((d|0)==(E|0)|(d&(k+-1|0)|0)==(e|0)))break f;if((d|0)==(E|0))if((f[c+8>>2]|0)==(E|0)){m=c;break g}c=f[c>>2]|0;if(!c)break f}else while(1){d=f[c+4>>2]|0;if((d|0)==(E|0)){if((f[c+8>>2]|0)==(E|0)){m=c;break g}}else{if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)!=(e|0))break f}c=f[c>>2]|0;if(!c)break f}while(0);L=m+12|0;M=m+16|0;c=f[L>>2]|0;d=(f[M>>2]|0)-c|0;if(!d)c=E;else{if(w_a(w,x,c)|0)D=0;else{v=465;f[a+3616>>2]=2;f[a+3620>>2]=12;break a}while(1){D=D+1|0;if(D>>>0>=((d|0)/28|0)>>>0)break;if(!(w_a(w,x,(f[L>>2]|0)+(D*28|0)|0)|0)){v=444;f[a+3616>>2]=2;f[a+3620>>2]=12;break a}}k=f[(F+4|0)>>2]|0;c=f[m+4>>2]|0}h=f[m>>2]|0;j=k+-1|0;l=(j&k|0)==0;if(l)c=j&c;else if(c>>>0>=k>>>0)c=(c>>>0)%(k>>>0)|0;g=(f[F>>2]|0)+(c<<2)|0;i=f[g>>2]|0;while(1){d=f[i>>2]|0;if((d|0)==(m|0))break;else i=d}if((i|0)==(F+8|0|0))v=496;else{d=f[i+4>>2]|0;if(l)d=d&j;else if(d>>>0>=k>>>0)d=(d>>>0)%(k>>>0)|0;if((d|0)==(c|0)){z=h;v=504}else v=496}do if((v|0)==496){if(h|0){d=f[h+4>>2]|0;if(l)e=d&j;else if(d>>>0>>0)e=d;else e=(d>>>0)%(k>>>0)|0;if((e|0)==(c|0)){b=d;G=h;v=506;break}}f[g>>2]=0;z=f[m>>2]|0;v=504}while(0);if((v|0)==504){v=0;d=z;if(!z)A=d;else{b=f[z+4>>2]|0;G=d;v=506}}if((v|0)==506){v=0;if(l)b=b&j;else if(b>>>0>=k>>>0)b=(b>>>0)%(k>>>0)|0;if((b|0)==(c|0))A=G;else{f[(f[F>>2]|0)+(b<<2)>>2]=i;A=f[m>>2]|0}}f[i>>2]=A;f[m>>2]=0;f[(F+12|0)>>2]=(f[(F+12|0)>>2]|0)+-1;WYa(L);sOb(m)}}}while(0);p_a(F,E);break}default:N=1}}if(N){N=0;switch(O|0){default:{}}}y=f[(F+472|0)>>2]|0;if(!y){v=515;f[a+3616>>2]=1;break a}}f[a+488>>2]=B;f[a+496>>2]=C;f[a+504>>2]=D;f[a+2240>>2]=y;f[a+2352>>2]=H;f[a+2360>>2]=I;f[a+2856>>2]=J;f[a+2864>>2]=K;f[a+3384>>2]=L;f[a+3392>>2]=M;f[a+3568>>2]=v;f[a+3592>>2]=N}function A_a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;F=f[a+16>>2]|0;w=f[a+24>>2]|0;x=f[a+32>>2]|0;C=f[a+480>>2]|0;D=f[a+512>>2]|0;E=f[a+816>>2]|0;j=f[a+824>>2]|0;H=f[a+1576>>2]|0;I=f[a+1584>>2]|0;h=f[a+1752>>2]|0;e=f[a+1808>>2]|0;i=f[a+2240>>2]|0;J=f[a+3256>>2]|0;K=f[a+3288>>2]|0;v=f[a+3568>>2]|0;a:{if(!e){e=f[(h+8|0)>>2]|0;if((f[e>>2]|0)!=(h|0)){g=h+8|0;do{z=f[g>>2]|0;g=z+8|0;e=f[g>>2]|0}while((f[e>>2]|0)!=(z|0))}}else while(1){g=f[e>>2]|0;if(!g)break;else e=g}f[(F+464|0)>>2]=e;f[(F+472|0)>>2]=i+-1;n_a(f[(F+468|0)>>2]|0,h);sOb(h);z=1;y=j|0;if(z){z=0;switch(y|0){case 2:{if(!(o_a(F,w,x,E,F+96|0)|0)){v=515;f[a+3624>>2]=2;f[a+3628>>2]=12;break a}if(!(o_a(F,w,x,E,F+64|0)|0)){v=515;f[a+3624>>2]=2;f[a+3628>>2]=12;break a}p_a(F,E);break}default:z=1}}if(z){z=0;switch(y|0){case 4:{i=f[(F+132|0)>>2]|0;b:do if(i|0){if(!((i+-1|0)&i))h=(i+-1|0)&E;else if(i>>>0>E>>>0)h=E;else h=(E>>>0)%(i>>>0)|0;e=f[(f[(F+128|0)>>2]|0)+(h<<2)>>2]|0;if(e|0){e=f[e>>2]|0;if(e|0){c:do if(!((i+-1|0)&i))while(1){g=f[e+4>>2]|0;if(!((g|0)==(E|0)|(g&(i+-1|0)|0)==(h|0)))break b;if((g|0)==(E|0))if((f[e+8>>2]|0)==(E|0))break c;e=f[e>>2]|0;if(!e)break b}else while(1){g=f[e+4>>2]|0;if((g|0)==(E|0)){if((f[e+8>>2]|0)==(E|0))break c}else{if(g>>>0>=i>>>0)g=(g>>>0)%(i>>>0)|0;if((g|0)!=(h|0))break b}e=f[e>>2]|0;if(!e)break b}while(0);J=e+12|0;K=e+16|0;g=f[J>>2]|0;h=(f[K>>2]|0)-g|0;if(!h){n=i;g=E}else{if(q_a(w,x,g)|0)C=0;else{v=53;f[a+3624>>2]=2;f[a+3628>>2]=12;break a}while(1){C=C+1|0;if(C>>>0>=((h|0)/28|0)>>>0)break;if(!(q_a(w,x,(f[J>>2]|0)+(C*28|0)|0)|0)){v=32;f[a+3624>>2]=2;f[a+3628>>2]=12;break a}}n=f[(F+132|0)>>2]|0;g=f[e+4>>2]|0}k=f[e>>2]|0;m=n+-1|0;o=(m&n|0)==0;if(o)g=m&g;else if(g>>>0>=n>>>0)g=(g>>>0)%(n>>>0)|0;j=(f[(F+128|0)>>2]|0)+(g<<2)|0;l=f[j>>2]|0;while(1){h=f[l>>2]|0;if((h|0)==(e|0))break;else l=h}if((l|0)==(F+136|0|0))v=84;else{h=f[l+4>>2]|0;if(o)h=h&m;else if(h>>>0>=n>>>0)h=(h>>>0)%(n>>>0)|0;if((h|0)==(g|0)){p=k;v=92}else v=84}do if((v|0)==84){if(k|0){h=f[k+4>>2]|0;if(o)i=h&m;else if(h>>>0>>0)i=h;else i=(h>>>0)%(n>>>0)|0;if((i|0)==(g|0)){r=k;d=h;v=94;break}}f[j>>2]=0;p=f[e>>2]|0;v=92}while(0);if((v|0)==92){v=0;h=p;if(!p)q=h;else{r=h;d=f[p+4>>2]|0;v=94}}if((v|0)==94){v=0;if(o)d=d&m;else if(d>>>0>=n>>>0)d=(d>>>0)%(n>>>0)|0;if((d|0)==(g|0))q=r;else{f[(f[(F+128|0)>>2]|0)+(d<<2)>>2]=l;q=f[e>>2]|0}}f[l>>2]=q;f[e>>2]=0;f[(F+140|0)>>2]=(f[(F+140|0)>>2]|0)+-1;SYa(J);sOb(e)}}}while(0);p_a(F,E);break}default:z=1}}if(z){z=0;switch(y|0){case 6:{h=f[(F+164|0)>>2]|0;d:do if(h|0){if(!((h+-1|0)&h))g=(h+-1|0)&E;else if(h>>>0>E>>>0)g=E;else g=(E>>>0)%(h>>>0)|0;d=f[(f[(F+160|0)>>2]|0)+(g<<2)>>2]|0;if(d|0){d=f[d>>2]|0;if(d|0){e:do if(!((h+-1|0)&h))while(1){e=f[d+4>>2]|0;if(!((e|0)==(E|0)|(e&(h+-1|0)|0)==(g|0)))break d;if((e|0)==(E|0))if((f[d+8>>2]|0)==(E|0))break e;d=f[d>>2]|0;if(!d)break d}else while(1){e=f[d+4>>2]|0;if((e|0)==(E|0)){if((f[d+8>>2]|0)==(E|0))break e}else{if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0;if((e|0)!=(g|0))break d}d=f[d>>2]|0;if(!d)break d}while(0);H=d+12|0;I=d+16|0;e=f[H>>2]|0;g=(f[I>>2]|0)-e|0;if(!g){m=h;e=E}else{if(s_a(w,x,e)|0)D=0;else{v=143;f[a+3624>>2]=2;f[a+3628>>2]=12;break a}while(1){D=D+1|0;if(D>>>0>=((g|0)/28|0)>>>0)break;if(!(s_a(w,x,(f[H>>2]|0)+(D*28|0)|0)|0)){v=122;f[a+3624>>2]=2;f[a+3628>>2]=12;break a}}m=f[(F+164|0)>>2]|0;e=f[d+4>>2]|0}j=f[d>>2]|0;l=m+-1|0;n=(l&m|0)==0;if(n)e=l&e;else if(e>>>0>=m>>>0)e=(e>>>0)%(m>>>0)|0;i=(f[(F+160|0)>>2]|0)+(e<<2)|0;k=f[i>>2]|0;while(1){g=f[k>>2]|0;if((g|0)==(d|0))break;else k=g}if((k|0)==(F+168|0|0))v=174;else{g=f[k+4>>2]|0;if(n)g=g&l;else if(g>>>0>=m>>>0)g=(g>>>0)%(m>>>0)|0;if((g|0)==(e|0)){s=j;v=182}else v=174}do if((v|0)==174){if(j|0){g=f[j+4>>2]|0;if(n)h=g&l;else if(g>>>0>>0)h=g;else h=(g>>>0)%(m>>>0)|0;if((h|0)==(e|0)){u=j;c=g;v=184;break}}f[i>>2]=0;s=f[d>>2]|0;v=182}while(0);if((v|0)==182){v=0;g=s;if(!s)t=g;else{u=g;c=f[s+4>>2]|0;v=184}}if((v|0)==184){v=0;if(n)c=c&l;else if(c>>>0>=m>>>0)c=(c>>>0)%(m>>>0)|0;if((c|0)==(e|0))t=u;else{f[(f[(F+160|0)>>2]|0)+(c<<2)>>2]=k;t=f[d>>2]|0}}f[k>>2]=t;f[d>>2]=0;f[(F+172|0)>>2]=(f[(F+172|0)>>2]|0)+-1;RYa(H);sOb(d)}}}while(0);p_a(F,E);break}default:z=1}}if(z){z=0;switch(y|0){case 8:{g=f[(F+228|0)>>2]|0;f:do if(g|0){if(!((g+-1|0)&g))e=(g+-1|0)&E;else if(g>>>0>E>>>0)e=E;else e=(E>>>0)%(g>>>0)|0;c=f[(f[(F+224|0)>>2]|0)+(e<<2)>>2]|0;if(c|0){c=f[c>>2]|0;if(c|0){g:do if(!((g+-1|0)&g))while(1){d=f[c+4>>2]|0;if(!((d|0)==(E|0)|(d&(g+-1|0)|0)==(e|0)))break f;if((d|0)==(E|0))if((f[c+8>>2]|0)==(E|0))break g;c=f[c>>2]|0;if(!c)break f}else while(1){d=f[c+4>>2]|0;if((d|0)==(E|0)){if((f[c+8>>2]|0)==(E|0))break g}else{if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0;if((d|0)!=(e|0))break f}c=f[c>>2]|0;if(!c)break f}while(0);n=c+12|0;d=f[n>>2]|0;e=(f[c+16>>2]|0)-d|0;if(!e){l=g;d=E}else{t_a(w,x,d);if(((e|0)/28|0)>>>0>1){d=1;do{t_a(w,x,(f[n>>2]|0)+(d*28|0)|0);d=d+1|0}while((d|0)!=((e|0)/28|0|0))}l=f[(F+228|0)>>2]|0;d=f[c+4>>2]|0}i=f[c>>2]|0;k=l+-1|0;m=(k&l|0)==0;if(m)d=k&d;else if(d>>>0>=l>>>0)d=(d>>>0)%(l>>>0)|0;h=(f[(F+224|0)>>2]|0)+(d<<2)|0;j=f[h>>2]|0;while(1){e=f[j>>2]|0;if((e|0)==(c|0))break;else j=e}if((j|0)==(F+232|0|0))v=226;else{e=f[j+4>>2]|0;if(m)e=e&k;else if(e>>>0>=l>>>0)e=(e>>>0)%(l>>>0)|0;if((e|0)==(d|0)){A=i;v=234}else v=226}do if((v|0)==226){if(i|0){e=f[i+4>>2]|0;if(m)g=e&k;else if(e>>>0>>0)g=e;else g=(e>>>0)%(l>>>0)|0;if((g|0)==(d|0)){G=i;b=e;v=236;break}}f[h>>2]=0;A=f[c>>2]|0;v=234}while(0);if((v|0)==234){v=0;e=A;if(!A)B=e;else{G=e;b=f[A+4>>2]|0;v=236}}if((v|0)==236){v=0;if(m)b=b&k;else if(b>>>0>=l>>>0)b=(b>>>0)%(l>>>0)|0;if((b|0)==(d|0))B=G;else{f[(f[(F+224|0)>>2]|0)+(b<<2)>>2]=j;B=f[c>>2]|0}}f[j>>2]=B;f[c>>2]=0;f[(F+236|0)>>2]=(f[(F+236|0)>>2]|0)+-1;PYa(n);sOb(c)}}}while(0);p_a(F,E);break}default:z=1}}}f[a+480>>2]=C;f[a+512>>2]=D;f[a+1576>>2]=H;f[a+1584>>2]=I;f[a+3256>>2]=J;f[a+3288>>2]=K;f[a+3568>>2]=v;f[a+3592>>2]=z;f[a+3600>>2]=y} function a5a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;k=f[b>>2]|0;m=f[b+4>>2]|0;q=m+-1640531527+(k<<6)+(k>>>2)^k;j=f[b+8>>2]|0;q=j+-1640531527+(q<<6)+(q>>>2)^q;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(p)c=0;else{i=h+-1|0;d=(i&h|0)==0;if(d)l=q&i;else if(q>>>0>>0)l=q;else l=(q>>>0)%(h>>>0)|0;c=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!c)c=l;else{c=f[c>>2]|0;if(!c)c=l;else{if(d){while(1){d=f[c+4>>2]|0;if(!((d|0)==(q|0)|(d&i|0)==(l|0))){c=l;break a}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(m|0))if((f[c+16>>2]|0)==(j|0))break;c=f[c>>2]|0;if(!c){c=l;break a}}a=c+20|0;return a|0}while(1){d=f[c+4>>2]|0;if((d|0)!=(q|0)){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(l|0)){c=l;break a}}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(m|0))if((f[c+16>>2]|0)==(j|0))break;c=f[c>>2]|0;if(!c){c=l;break a}}a=c+20|0;return a|0}}}while(0);j=pOb(32)|0;i=j+8|0;f[i>>2]=f[b>>2];f[i+4>>2]=f[b+4>>2];f[i+8>>2]=f[b+8>>2];f[j+20>>2]=0;f[j+24>>2]=0;f[j+28>>2]=0;f[j+4>>2]=q;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;d=~~+W(+(e/g))>>>0;b5a(a,c>>>0>>0?d:c);c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&q;break}if(q>>>0>>0){h=c;c=q}else{h=c;c=(q>>>0)%(c>>>0)|0}}while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;r=35}}else{f[j>>2]=f[c>>2];r=35}if((r|0)==35)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+20|0;return a|0}function b5a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){c5a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;c5a(a,b);return}function c5a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();o=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=o;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;n=b+-1|0;o=(n&b|0)==0;if(o)c=c&n;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){m=d;b:while(1){c:do if(o){d=e;while(1){l=f[d+4>>2]&n;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}j=d+12|0;k=d+16|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;if((f[k>>2]|0)!=(f[h+16>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)l=e;else l=(e>>>0)%(b>>>0)|0;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}i=d+12|0;j=d+16|0;h=f[d>>2]|0;e:do if(!h)e=d;else{k=f[d+8>>2]|0;e=d;while(1){if((k|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;if((f[j>>2]|0)!=(f[h+16>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}while(0);e=f[d>>2]|0;if(!e){c=41;break a}else{g=d;m=d}}f[e>>2]=m;e=f[d>>2]|0;if(!e){c=41;break}else g=d}if((c|0)==41)return}function d5a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0.0,r=0,s=0,t=0,v=0.0,w=0,x=0.0,y=0,z=0.0,A=0,B=0.0,C=0,D=0.0,E=0,F=0.0,G=0,H=0.0,I=0.0,J=0.0;o=u;u=u+16|0;n=o;q=+sqb(b);m=q<+sqb(a);q=+sqb(c);d=q<+sqb(b);if(!m){if(!d){c=0;u=o;return c|0}l=b+8|0;m=b+16|0;I=+p[b>>3];H=+p[l>>3];F=+p[m>>3];d=b+24|0;e=b+32|0;g=b+40|0;D=+p[d>>3];B=+p[e>>3];z=+p[g>>3];h=b+48|0;i=b+56|0;j=b+64|0;x=+p[h>>3];v=+p[i>>3];q=+p[j>>3];k=b+72|0;f[n>>2]=f[k>>2];f[n+4>>2]=f[k+4>>2];f[n+8>>2]=f[k+8>>2];J=+p[c>>3];p[c>>3]=I;p[b>>3]=J;G=c+8|0;J=+p[G>>3];p[G>>3]=+p[l>>3];p[l>>3]=J;E=c+16|0;J=+p[E>>3];p[E>>3]=+p[m>>3];p[m>>3]=J;C=c+24|0;J=+p[C>>3];p[C>>3]=+p[d>>3];p[d>>3]=J;A=c+32|0;J=+p[A>>3];p[A>>3]=+p[e>>3];p[e>>3]=J;y=c+40|0;J=+p[y>>3];p[y>>3]=+p[g>>3];p[g>>3]=J;w=c+48|0;J=+p[w>>3];p[w>>3]=+p[h>>3];p[h>>3]=J;t=c+56|0;p[i>>3]=+p[t>>3];s=c+64|0;p[j>>3]=+p[s>>3];r=c+72|0;f[k>>2]=f[r>>2];f[k+4>>2]=f[r+4>>2];f[k+8>>2]=f[r+8>>2];p[c>>3]=I;p[G>>3]=H;p[E>>3]=F;p[C>>3]=D;p[A>>3]=B;p[y>>3]=z;p[w>>3]=x;p[t>>3]=v;p[s>>3]=q;f[r>>2]=f[n>>2];f[r+4>>2]=f[n+4>>2];f[r+8>>2]=f[n+8>>2];q=+sqb(b);if(!(q<+sqb(a))){G=1;u=o;return G|0}r=a+8|0;s=a+16|0;v=+p[a>>3];x=+p[r>>3];z=+p[s>>3];t=a+24|0;w=a+32|0;y=a+40|0;B=+p[t>>3];D=+p[w>>3];F=+p[y>>3];A=a+48|0;C=a+56|0;E=a+64|0;H=+p[A>>3];I=+p[C>>3];J=+p[E>>3];G=a+72|0;f[n>>2]=f[G>>2];f[n+4>>2]=f[G+4>>2];f[n+8>>2]=f[G+8>>2];q=+p[b>>3];p[b>>3]=v;p[a>>3]=q;q=+p[l>>3];p[l>>3]=+p[r>>3];p[r>>3]=q;q=+p[m>>3];p[m>>3]=+p[s>>3];p[s>>3]=q;q=+p[d>>3];p[d>>3]=+p[t>>3];p[t>>3]=q;q=+p[e>>3];p[e>>3]=+p[w>>3];p[w>>3]=q;q=+p[g>>3];p[g>>3]=+p[y>>3];p[y>>3]=q;q=+p[h>>3];p[h>>3]=+p[A>>3];p[A>>3]=q;p[C>>3]=+p[i>>3];p[E>>3]=+p[j>>3];f[G>>2]=f[k>>2];f[G+4>>2]=f[k+4>>2];f[G+8>>2]=f[k+8>>2];p[b>>3]=v;p[l>>3]=x;p[m>>3]=z;p[d>>3]=B;p[e>>3]=D;p[g>>3]=F;p[h>>3]=H;p[i>>3]=I;p[j>>3]=J;f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];G=2;u=o;return G|0}if(d){s=a+8|0;t=a+16|0;v=+p[a>>3];x=+p[s>>3];z=+p[t>>3];w=a+24|0;y=a+32|0;A=a+40|0;B=+p[w>>3];D=+p[y>>3];F=+p[A>>3];C=a+48|0;E=a+56|0;G=a+64|0;H=+p[C>>3];I=+p[E>>3];J=+p[G>>3];b=a+72|0;f[n>>2]=f[b>>2];f[n+4>>2]=f[b+4>>2];f[n+8>>2]=f[b+8>>2];q=+p[c>>3];p[c>>3]=v;p[a>>3]=q;r=c+8|0;q=+p[r>>3];p[r>>3]=+p[s>>3];p[s>>3]=q;s=c+16|0;q=+p[s>>3];p[s>>3]=+p[t>>3];p[t>>3]=q;t=c+24|0;q=+p[t>>3];p[t>>3]=+p[w>>3];p[w>>3]=q;w=c+32|0;q=+p[w>>3];p[w>>3]=+p[y>>3];p[y>>3]=q;y=c+40|0;q=+p[y>>3];p[y>>3]=+p[A>>3];p[A>>3]=q;A=c+48|0;q=+p[A>>3];p[A>>3]=+p[C>>3];p[C>>3]=q;C=c+56|0;p[E>>3]=+p[C>>3];E=c+64|0;p[G>>3]=+p[E>>3];G=c+72|0;f[b>>2]=f[G>>2];f[b+4>>2]=f[G+4>>2];f[b+8>>2]=f[G+8>>2];p[c>>3]=v;p[r>>3]=x;p[s>>3]=z;p[t>>3]=B;p[w>>3]=D;p[y>>3]=F;p[A>>3]=H;p[C>>3]=I;p[E>>3]=J;f[G>>2]=f[n>>2];f[G+4>>2]=f[n+4>>2];f[G+8>>2]=f[n+8>>2];G=1;u=o;return G|0}e=a+8|0;g=a+16|0;v=+p[a>>3];x=+p[e>>3];z=+p[g>>3];h=a+24|0;i=a+32|0;j=a+40|0;B=+p[h>>3];D=+p[i>>3];F=+p[j>>3];k=a+48|0;l=a+56|0;m=a+64|0;H=+p[k>>3];I=+p[l>>3];J=+p[m>>3];G=a+72|0;f[n>>2]=f[G>>2];f[n+4>>2]=f[G+4>>2];f[n+8>>2]=f[G+8>>2];q=+p[b>>3];p[b>>3]=v;p[a>>3]=q;d=b+8|0;q=+p[d>>3];p[d>>3]=+p[e>>3];p[e>>3]=q;e=b+16|0;q=+p[e>>3];p[e>>3]=+p[g>>3];p[g>>3]=q;g=b+24|0;q=+p[g>>3];p[g>>3]=+p[h>>3];p[h>>3]=q;h=b+32|0;q=+p[h>>3];p[h>>3]=+p[i>>3];p[i>>3]=q;i=b+40|0;q=+p[i>>3];p[i>>3]=+p[j>>3];p[j>>3]=q;j=b+48|0;q=+p[j>>3];p[j>>3]=+p[k>>3];p[k>>3]=q;k=b+56|0;p[l>>3]=+p[k>>3];l=b+64|0;p[m>>3]=+p[l>>3];m=b+72|0;f[G>>2]=f[m>>2];f[G+4>>2]=f[m+4>>2];f[G+8>>2]=f[m+8>>2];p[b>>3]=v;p[d>>3]=x;p[e>>3]=z;p[g>>3]=B;p[h>>3]=D;p[i>>3]=F;p[j>>3]=H;p[k>>3]=I;p[l>>3]=J;f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];J=+sqb(c);if(!(J<+sqb(b))){G=1;u=o;return G|0}v=+p[b>>3];x=+p[d>>3];z=+p[e>>3];B=+p[g>>3];D=+p[h>>3];F=+p[i>>3];H=+p[j>>3];I=+p[k>>3];J=+p[l>>3];f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];f[n+8>>2]=f[m+8>>2];q=+p[c>>3];p[c>>3]=v;p[b>>3]=q;r=c+8|0;q=+p[r>>3];p[r>>3]=+p[d>>3];p[d>>3]=q;s=c+16|0;q=+p[s>>3];p[s>>3]=+p[e>>3];p[e>>3]=q;t=c+24|0;q=+p[t>>3];p[t>>3]=+p[g>>3];p[g>>3]=q;w=c+32|0;q=+p[w>>3];p[w>>3]=+p[h>>3];p[h>>3]=q;y=c+40|0;q=+p[y>>3];p[y>>3]=+p[i>>3];p[i>>3]=q;A=c+48|0;q=+p[A>>3];p[A>>3]=+p[j>>3];p[j>>3]=q;C=c+56|0;p[k>>3]=+p[C>>3];E=c+64|0;p[l>>3]=+p[E>>3];G=c+72|0;f[m>>2]=f[G>>2];f[m+4>>2]=f[G+4>>2];f[m+8>>2]=f[G+8>>2];p[c>>3]=v;p[r>>3]=x;p[s>>3]=z;p[t>>3]=B;p[w>>3]=D;p[y>>3]=F;p[A>>3]=H;p[C>>3]=I;p[E>>3]=J;f[G>>2]=f[n>>2];f[G+4>>2]=f[n+4>>2];f[G+8>>2]=f[n+8>>2];G=2;u=o;return G|0}function e5a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0,J=0.0,K=0.0,L=0.0;A=u;u=u+16|0;z=A;y=d5a(a,b,c,e)|0;B=+sqb(d);if(!(B<+sqb(c))){c=y;u=A;return c|0}w=c+8|0;x=c+16|0;K=+p[c>>3];J=+p[w>>3];H=+p[x>>3];n=c+24|0;o=c+32|0;q=c+40|0;G=+p[n>>3];F=+p[o>>3];E=+p[q>>3];r=c+48|0;s=c+56|0;t=c+64|0;D=+p[r>>3];C=+p[s>>3];B=+p[t>>3];v=c+72|0;f[z>>2]=f[v>>2];f[z+4>>2]=f[v+4>>2];f[z+8>>2]=f[v+8>>2];L=+p[d>>3];p[d>>3]=K;p[c>>3]=L;I=d+8|0;L=+p[I>>3];p[I>>3]=+p[w>>3];p[w>>3]=L;e=d+16|0;L=+p[e>>3];p[e>>3]=+p[x>>3];p[x>>3]=L;g=d+24|0;L=+p[g>>3];p[g>>3]=+p[n>>3];p[n>>3]=L;h=d+32|0;L=+p[h>>3];p[h>>3]=+p[o>>3];p[o>>3]=L;i=d+40|0;L=+p[i>>3];p[i>>3]=+p[q>>3];p[q>>3]=L;j=d+48|0;L=+p[j>>3];p[j>>3]=+p[r>>3];p[r>>3]=L;k=d+56|0;p[s>>3]=+p[k>>3];l=d+64|0;p[t>>3]=+p[l>>3];m=d+72|0;f[v>>2]=f[m>>2];f[v+4>>2]=f[m+4>>2];f[v+8>>2]=f[m+8>>2];p[d>>3]=K;p[I>>3]=J;p[e>>3]=H;p[g>>3]=G;p[h>>3]=F;p[i>>3]=E;p[j>>3]=D;p[k>>3]=C;p[l>>3]=B;f[m>>2]=f[z>>2];f[m+4>>2]=f[z+4>>2];f[m+8>>2]=f[z+8>>2];B=+sqb(c);if(!(B<+sqb(b))){I=y+1|0;u=A;return I|0}l=b+8|0;m=b+16|0;C=+p[b>>3];D=+p[l>>3];E=+p[m>>3];e=b+24|0;d=b+32|0;g=b+40|0;F=+p[e>>3];G=+p[d>>3];H=+p[g>>3];h=b+48|0;i=b+56|0;j=b+64|0;J=+p[h>>3];K=+p[i>>3];L=+p[j>>3];k=b+72|0;f[z>>2]=f[k>>2];f[z+4>>2]=f[k+4>>2];f[z+8>>2]=f[k+8>>2];B=+p[c>>3];p[c>>3]=C;p[b>>3]=B;B=+p[w>>3];p[w>>3]=+p[l>>3];p[l>>3]=B;B=+p[x>>3];p[x>>3]=+p[m>>3];p[m>>3]=B;B=+p[n>>3];p[n>>3]=+p[e>>3];p[e>>3]=B;B=+p[o>>3];p[o>>3]=+p[d>>3];p[d>>3]=B;B=+p[q>>3];p[q>>3]=+p[g>>3];p[g>>3]=B;B=+p[r>>3];p[r>>3]=+p[h>>3];p[h>>3]=B;p[i>>3]=+p[s>>3];p[j>>3]=+p[t>>3];f[k>>2]=f[v>>2];f[k+4>>2]=f[v+4>>2];f[k+8>>2]=f[v+8>>2];p[c>>3]=C;p[w>>3]=D;p[x>>3]=E;p[n>>3]=F;p[o>>3]=G;p[q>>3]=H;p[r>>3]=J;p[s>>3]=K;p[t>>3]=L;f[v>>2]=f[z>>2];f[v+4>>2]=f[z+4>>2];f[v+8>>2]=f[z+8>>2];L=+sqb(b);if(!(L<+sqb(a))){I=y+2|0;u=A;return I|0}q=a+8|0;r=a+16|0;C=+p[a>>3];D=+p[q>>3];E=+p[r>>3];s=a+24|0;t=a+32|0;v=a+40|0;F=+p[s>>3];G=+p[t>>3];H=+p[v>>3];w=a+48|0;x=a+56|0;c=a+64|0;J=+p[w>>3];K=+p[x>>3];L=+p[c>>3];I=a+72|0;f[z>>2]=f[I>>2];f[z+4>>2]=f[I+4>>2];f[z+8>>2]=f[I+8>>2];B=+p[b>>3];p[b>>3]=C;p[a>>3]=B;B=+p[l>>3];p[l>>3]=+p[q>>3];p[q>>3]=B;B=+p[m>>3];p[m>>3]=+p[r>>3];p[r>>3]=B;B=+p[e>>3];p[e>>3]=+p[s>>3];p[s>>3]=B;B=+p[d>>3];p[d>>3]=+p[t>>3];p[t>>3]=B;B=+p[g>>3];p[g>>3]=+p[v>>3];p[v>>3]=B;B=+p[h>>3];p[h>>3]=+p[w>>3];p[w>>3]=B;p[x>>3]=+p[i>>3];p[c>>3]=+p[j>>3];f[I>>2]=f[k>>2];f[I+4>>2]=f[k+4>>2];f[I+8>>2]=f[k+8>>2];p[b>>3]=C;p[l>>3]=D;p[m>>3]=E;p[e>>3]=F;p[d>>3]=G;p[g>>3]=H;p[h>>3]=J;p[i>>3]=K;p[j>>3]=L;f[k>>2]=f[z>>2];f[k+4>>2]=f[z+4>>2];f[k+8>>2]=f[z+8>>2];I=y+3|0;u=A;return I|0}function f5a(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0;C=u;u=u+16|0;B=C;A=e5a(a,b,c,d,g)|0;D=+sqb(e);if(!(D<+sqb(d))){c=A;u=C;return c|0}n=d+8|0;o=d+16|0;L=+p[d>>3];K=+p[n>>3];J=+p[o>>3];g=d+24|0;h=d+32|0;i=d+40|0;I=+p[g>>3];H=+p[h>>3];G=+p[i>>3];j=d+48|0;k=d+56|0;l=d+64|0;F=+p[j>>3];E=+p[k>>3];D=+p[l>>3];m=d+72|0;f[B>>2]=f[m>>2];f[B+4>>2]=f[m+4>>2];f[B+8>>2]=f[m+8>>2];M=+p[e>>3];p[e>>3]=L;p[d>>3]=M;q=e+8|0;M=+p[q>>3];p[q>>3]=+p[n>>3];p[n>>3]=M;r=e+16|0;M=+p[r>>3];p[r>>3]=+p[o>>3];p[o>>3]=M;s=e+24|0;M=+p[s>>3];p[s>>3]=+p[g>>3];p[g>>3]=M;t=e+32|0;M=+p[t>>3];p[t>>3]=+p[h>>3];p[h>>3]=M;v=e+40|0;M=+p[v>>3];p[v>>3]=+p[i>>3];p[i>>3]=M;w=e+48|0;M=+p[w>>3];p[w>>3]=+p[j>>3];p[j>>3]=M;x=e+56|0;p[k>>3]=+p[x>>3];y=e+64|0;p[l>>3]=+p[y>>3];z=e+72|0;f[m>>2]=f[z>>2];f[m+4>>2]=f[z+4>>2];f[m+8>>2]=f[z+8>>2];p[e>>3]=L;p[q>>3]=K;p[r>>3]=J;p[s>>3]=I;p[t>>3]=H;p[v>>3]=G;p[w>>3]=F;p[x>>3]=E;p[y>>3]=D;f[z>>2]=f[B>>2];f[z+4>>2]=f[B+4>>2];f[z+8>>2]=f[B+8>>2];D=+sqb(d);if(!(D<+sqb(c))){c=A+1|0;u=C;return c|0}y=c+8|0;z=c+16|0;E=+p[c>>3];F=+p[y>>3];G=+p[z>>3];q=c+24|0;r=c+32|0;s=c+40|0;H=+p[q>>3];I=+p[r>>3];J=+p[s>>3];t=c+48|0;v=c+56|0;w=c+64|0;K=+p[t>>3];L=+p[v>>3];M=+p[w>>3];x=c+72|0;f[B>>2]=f[x>>2];f[B+4>>2]=f[x+4>>2];f[B+8>>2]=f[x+8>>2];D=+p[d>>3];p[d>>3]=E;p[c>>3]=D;D=+p[n>>3];p[n>>3]=+p[y>>3];p[y>>3]=D;D=+p[o>>3];p[o>>3]=+p[z>>3];p[z>>3]=D;D=+p[g>>3];p[g>>3]=+p[q>>3];p[q>>3]=D;D=+p[h>>3];p[h>>3]=+p[r>>3];p[r>>3]=D;D=+p[i>>3];p[i>>3]=+p[s>>3];p[s>>3]=D;D=+p[j>>3];p[j>>3]=+p[t>>3];p[t>>3]=D;p[v>>3]=+p[k>>3];p[w>>3]=+p[l>>3];f[x>>2]=f[m>>2];f[x+4>>2]=f[m+4>>2];f[x+8>>2]=f[m+8>>2];p[d>>3]=E;p[n>>3]=F;p[o>>3]=G;p[g>>3]=H;p[h>>3]=I;p[i>>3]=J;p[j>>3]=K;p[k>>3]=L;p[l>>3]=M;f[m>>2]=f[B>>2];f[m+4>>2]=f[B+4>>2];f[m+8>>2]=f[B+8>>2];M=+sqb(c);if(!(M<+sqb(b))){c=A+2|0;u=C;return c|0}m=b+8|0;n=b+16|0;E=+p[b>>3];F=+p[m>>3];G=+p[n>>3];g=b+24|0;e=b+32|0;h=b+40|0;H=+p[g>>3];I=+p[e>>3];J=+p[h>>3];i=b+48|0;j=b+56|0;k=b+64|0;K=+p[i>>3];L=+p[j>>3];M=+p[k>>3];l=b+72|0;f[B>>2]=f[l>>2];f[B+4>>2]=f[l+4>>2];f[B+8>>2]=f[l+8>>2];D=+p[c>>3];p[c>>3]=E;p[b>>3]=D;D=+p[y>>3];p[y>>3]=+p[m>>3];p[m>>3]=D;D=+p[z>>3];p[z>>3]=+p[n>>3];p[n>>3]=D;D=+p[q>>3];p[q>>3]=+p[g>>3];p[g>>3]=D;D=+p[r>>3];p[r>>3]=+p[e>>3];p[e>>3]=D;D=+p[s>>3];p[s>>3]=+p[h>>3];p[h>>3]=D;D=+p[t>>3];p[t>>3]=+p[i>>3];p[i>>3]=D;p[j>>3]=+p[v>>3];p[k>>3]=+p[w>>3];f[l>>2]=f[x>>2];f[l+4>>2]=f[x+4>>2];f[l+8>>2]=f[x+8>>2];p[c>>3]=E;p[y>>3]=F;p[z>>3]=G;p[q>>3]=H;p[r>>3]=I;p[s>>3]=J;p[t>>3]=K;p[v>>3]=L;p[w>>3]=M;f[x>>2]=f[B>>2];f[x+4>>2]=f[B+4>>2];f[x+8>>2]=f[B+8>>2];M=+sqb(b);if(!(M<+sqb(a))){c=A+3|0;u=C;return c|0}r=a+8|0;s=a+16|0;E=+p[a>>3];F=+p[r>>3];G=+p[s>>3];t=a+24|0;v=a+32|0;w=a+40|0;H=+p[t>>3];I=+p[v>>3];J=+p[w>>3];x=a+48|0;y=a+56|0;z=a+64|0;K=+p[x>>3];L=+p[y>>3];M=+p[z>>3];c=a+72|0;f[B>>2]=f[c>>2];f[B+4>>2]=f[c+4>>2];f[B+8>>2]=f[c+8>>2];D=+p[b>>3];p[b>>3]=E;p[a>>3]=D;D=+p[m>>3];p[m>>3]=+p[r>>3];p[r>>3]=D;D=+p[n>>3];p[n>>3]=+p[s>>3];p[s>>3]=D;D=+p[g>>3];p[g>>3]=+p[t>>3];p[t>>3]=D;D=+p[e>>3];p[e>>3]=+p[v>>3];p[v>>3]=D;D=+p[h>>3];p[h>>3]=+p[w>>3];p[w>>3]=D;D=+p[i>>3];p[i>>3]=+p[x>>3];p[x>>3]=D;p[y>>3]=+p[j>>3];p[z>>3]=+p[k>>3];f[c>>2]=f[l>>2];f[c+4>>2]=f[l+4>>2];f[c+8>>2]=f[l+8>>2];p[b>>3]=E;p[m>>3]=F;p[n>>3]=G;p[g>>3]=H;p[e>>3]=I;p[h>>3]=J;p[i>>3]=K;p[j>>3]=L;p[k>>3]=M;f[l>>2]=f[B>>2];f[l+4>>2]=f[B+4>>2];f[l+8>>2]=f[B+8>>2];c=A+4|0;u=C;return c|0}function g5a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0;E=u;u=u+96|0;D=E;d=a+176|0;d5a(a,a+88|0,d,c)|0;c=a+264|0;if((c|0)==(b|0)){u=E;return}B=D+8|0;C=D+16|0;r=D+24|0;s=D+32|0;t=D+40|0;v=D+48|0;w=D+56|0;x=D+64|0;y=D+72|0;z=D+24|0;A=D+48|0;q=c;c=d;while(1){e=+sqb(q);if(e<+sqb(c)){f[D>>2]=f[q>>2];f[D+4>>2]=f[q+4>>2];f[D+8>>2]=f[q+8>>2];f[D+12>>2]=f[q+12>>2];f[D+16>>2]=f[q+16>>2];f[D+20>>2]=f[q+20>>2];e=+p[q>>3];p[D>>3]=e;p[B>>3]=+p[q+8>>3];p[C>>3]=+p[q+16>>3];d=q+24|0;f[r>>2]=f[d>>2];f[r+4>>2]=f[d+4>>2];f[r+8>>2]=f[d+8>>2];f[r+12>>2]=f[d+12>>2];f[r+16>>2]=f[d+16>>2];f[r+20>>2]=f[d+20>>2];p[r>>3]=+p[d>>3];p[s>>3]=+p[q+32>>3];p[t>>3]=+p[q+40>>3];d=q+48|0;f[v>>2]=f[d>>2];f[v+4>>2]=f[d+4>>2];f[v+8>>2]=f[d+8>>2];f[v+12>>2]=f[d+12>>2];f[v+16>>2]=f[d+16>>2];f[v+20>>2]=f[d+20>>2];p[v>>3]=+p[d>>3];p[w>>3]=+p[q+56>>3];p[x>>3]=+p[q+64>>3];d=q+72|0;f[y>>2]=f[d>>2];f[y+4>>2]=f[d+4>>2];f[y+8>>2]=f[d+8>>2];d=q;while(1){F=+p[c>>3];p[c>>3]=e;p[d>>3]=F;h=c+8|0;e=+p[h>>3];i=d+8|0;p[h>>3]=+p[i>>3];p[i>>3]=e;i=c+16|0;e=+p[i>>3];j=d+16|0;p[i>>3]=+p[j>>3];p[j>>3]=e;j=c+24|0;e=+p[j>>3];k=d+24|0;p[j>>3]=+p[k>>3];p[k>>3]=e;k=c+32|0;e=+p[k>>3];l=d+32|0;p[k>>3]=+p[l>>3];p[l>>3]=e;l=c+40|0;e=+p[l>>3];m=d+40|0;p[l>>3]=+p[m>>3];p[m>>3]=e;m=c+48|0;e=+p[m>>3];n=d+48|0;p[m>>3]=+p[n>>3];p[n>>3]=e;n=c+56|0;e=+p[n>>3];o=d+56|0;p[n>>3]=+p[o>>3];p[o>>3]=e;o=c+64|0;e=+p[o>>3];g=d+64|0;p[o>>3]=+p[g>>3];p[g>>3]=e;g=d+72|0;d=c+72|0;f[g>>2]=f[d>>2];f[g+4>>2]=f[d+4>>2];f[g+8>>2]=f[d+8>>2];if((c|0)==(a|0))break;g=c+-88|0;F=+sqb(D);if(!(F<+sqb(g)))break;e=+p[c>>3];d=c;c=g}F=+p[D>>3];p[D>>3]=+p[c>>3];p[c>>3]=F;F=+p[B>>3];p[B>>3]=+p[h>>3];p[h>>3]=F;F=+p[C>>3];p[C>>3]=+p[i>>3];p[i>>3]=F;F=+p[z>>3];p[z>>3]=+p[j>>3];p[j>>3]=F;F=+p[s>>3];p[s>>3]=+p[k>>3];p[k>>3]=F;F=+p[t>>3];p[t>>3]=+p[l>>3];p[l>>3]=F;F=+p[A>>3];p[A>>3]=+p[m>>3];p[m>>3]=F;F=+p[w>>3];p[w>>3]=+p[n>>3];p[n>>3]=F;F=+p[x>>3];p[x>>3]=+p[o>>3];p[o>>3]=F;f[d>>2]=f[y>>2];f[d+4>>2]=f[y+4>>2];f[d+8>>2]=f[y+8>>2]}c=q+88|0;if((c|0)==(b|0))break;else{o=q;q=c;c=o}}u=E;return}function h5a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0;F=u;u=u+96|0;E=F;switch((b-a|0)/88|0|0){case 2:{c=b+-88|0;if(!(+sqb(c)<+sqb(a))){b=1;u=F;return b|0}y=a+8|0;z=a+16|0;N=+p[a>>3];M=+p[y>>3];L=+p[z>>3];A=a+24|0;B=a+32|0;C=a+40|0;K=+p[A>>3];J=+p[B>>3];I=+p[C>>3];D=a+48|0;t=a+56|0;v=a+64|0;H=+p[D>>3];G=+p[t>>3];e=+p[v>>3];w=a+72|0;f[E>>2]=f[w>>2];f[E+4>>2]=f[w+4>>2];f[E+8>>2]=f[w+8>>2];O=+p[c>>3];p[c>>3]=N;p[a>>3]=O;x=b+-80|0;O=+p[x>>3];p[x>>3]=+p[y>>3];p[y>>3]=O;y=b+-72|0;O=+p[y>>3];p[y>>3]=+p[z>>3];p[z>>3]=O;z=b+-64|0;O=+p[z>>3];p[z>>3]=+p[A>>3];p[A>>3]=O;A=b+-56|0;O=+p[A>>3];p[A>>3]=+p[B>>3];p[B>>3]=O;B=b+-48|0;O=+p[B>>3];p[B>>3]=+p[C>>3];p[C>>3]=O;C=b+-40|0;O=+p[C>>3];p[C>>3]=+p[D>>3];p[D>>3]=O;D=b+-32|0;p[t>>3]=+p[D>>3];a=b+-24|0;p[v>>3]=+p[a>>3];b=b+-16|0;f[w>>2]=f[b>>2];f[w+4>>2]=f[b+4>>2];f[w+8>>2]=f[b+8>>2];p[c>>3]=N;p[x>>3]=M;p[y>>3]=L;p[z>>3]=K;p[A>>3]=J;p[B>>3]=I;p[C>>3]=H;p[D>>3]=G;p[a>>3]=e;f[b>>2]=f[E>>2];f[b+4>>2]=f[E+4>>2];f[b+8>>2]=f[E+8>>2];b=1;u=F;return b|0}case 3:{d5a(a,a+88|0,b+-88|0,c)|0;b=1;u=F;return b|0}case 4:{e5a(a,a+88|0,a+176|0,b+-88|0,c)|0;b=1;u=F;return b|0}case 5:{f5a(a,a+88|0,a+176|0,a+264|0,b+-88|0,c)|0;b=1;u=F;return b|0}case 1:case 0:{b=1;u=F;return b|0}default:{d=a+176|0;d5a(a,a+88|0,d,c)|0;c=a+264|0;a:do if((c|0)==(b|0)){d=1;c=0}else{s=E+8|0;t=E+16|0;v=E+24|0;w=E+32|0;x=E+40|0;y=E+48|0;z=E+56|0;A=E+64|0;B=E+72|0;C=E+24|0;D=E+48|0;r=c;c=0;while(1){O=+sqb(r);if(O<+sqb(d)){f[E>>2]=f[r>>2];f[E+4>>2]=f[r+4>>2];f[E+8>>2]=f[r+8>>2];f[E+12>>2]=f[r+12>>2];f[E+16>>2]=f[r+16>>2];f[E+20>>2]=f[r+20>>2];e=+p[r>>3];p[E>>3]=e;p[s>>3]=+p[r+8>>3];p[t>>3]=+p[r+16>>3];g=r+24|0;f[v>>2]=f[g>>2];f[v+4>>2]=f[g+4>>2];f[v+8>>2]=f[g+8>>2];f[v+12>>2]=f[g+12>>2];f[v+16>>2]=f[g+16>>2];f[v+20>>2]=f[g+20>>2];p[v>>3]=+p[g>>3];p[w>>3]=+p[r+32>>3];p[x>>3]=+p[r+40>>3];g=r+48|0;f[y>>2]=f[g>>2];f[y+4>>2]=f[g+4>>2];f[y+8>>2]=f[g+8>>2];f[y+12>>2]=f[g+12>>2];f[y+16>>2]=f[g+16>>2];f[y+20>>2]=f[g+20>>2];p[y>>3]=+p[g>>3];p[z>>3]=+p[r+56>>3];p[A>>3]=+p[r+64>>3];g=r+72|0;f[B>>2]=f[g>>2];f[B+4>>2]=f[g+4>>2];f[B+8>>2]=f[g+8>>2];g=r;while(1){O=+p[d>>3];p[d>>3]=e;p[g>>3]=O;n=d+8|0;O=+p[n>>3];o=g+8|0;p[n>>3]=+p[o>>3];p[o>>3]=O;o=d+16|0;O=+p[o>>3];q=g+16|0;p[o>>3]=+p[q>>3];p[q>>3]=O;q=d+24|0;O=+p[q>>3];i=g+24|0;p[q>>3]=+p[i>>3];p[i>>3]=O;i=d+32|0;O=+p[i>>3];j=g+32|0;p[i>>3]=+p[j>>3];p[j>>3]=O;j=d+40|0;O=+p[j>>3];k=g+40|0;p[j>>3]=+p[k>>3];p[k>>3]=O;k=d+48|0;O=+p[k>>3];l=g+48|0;p[k>>3]=+p[l>>3];p[l>>3]=O;l=d+56|0;O=+p[l>>3];m=g+56|0;p[l>>3]=+p[m>>3];p[m>>3]=O;m=d+64|0;O=+p[m>>3];h=g+64|0;p[m>>3]=+p[h>>3];p[h>>3]=O;h=g+72|0;g=d+72|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];if((d|0)==(a|0))break;h=d+-88|0;O=+sqb(E);if(!(O<+sqb(h)))break;e=+p[d>>3];g=d;d=h}O=+p[E>>3];p[E>>3]=+p[d>>3];p[d>>3]=O;O=+p[s>>3];p[s>>3]=+p[n>>3];p[n>>3]=O;O=+p[t>>3];p[t>>3]=+p[o>>3];p[o>>3]=O;O=+p[C>>3];p[C>>3]=+p[q>>3];p[q>>3]=O;O=+p[w>>3];p[w>>3]=+p[i>>3];p[i>>3]=O;O=+p[x>>3];p[x>>3]=+p[j>>3];p[j>>3]=O;O=+p[D>>3];p[D>>3]=+p[k>>3];p[k>>3]=O;O=+p[z>>3];p[z>>3]=+p[l>>3];p[l>>3]=O;O=+p[A>>3];p[A>>3]=+p[m>>3];p[m>>3]=O;f[g>>2]=f[B>>2];f[g+4>>2]=f[B+4>>2];f[g+8>>2]=f[B+8>>2];c=c+1|0;if((c|0)==8){d=0;c=(r+88|0)==(b|0);break a}}d=r+88|0;if((d|0)==(b|0)){d=1;c=0;break}else{q=r;r=d;d=q}}}while(0);b=c|d;u=F;return b|0}}return 0}function i5a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;l=p;b=a+16|0;c=f[b>>2]|0;if(c>>>0>511){f[b>>2]=c+-512;m=a+4|0;l=f[m>>2]|0;o=f[l>>2]|0;l=l+4|0;f[m>>2]=l;n=a+8|0;j=f[n>>2]|0;k=a+12|0;i=f[k>>2]|0;b=i;do if((j|0)==(i|0)){e=f[a>>2]|0;c=e;if(l>>>0>e>>>0){b=l;d=((b-c>>2)+1|0)/-2|0;e=l+(d<<2)|0;b=j-b|0;c=b>>2;if(!c)b=l;else{cQb(e|0,l|0,b|0)|0;b=f[m>>2]|0}a=e+(c<<2)|0;f[n>>2]=a;f[m>>2]=b+(d<<2);b=a;break}b=b-c>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)vd();g=pOb(b<<2)|0;h=g;d=g+(b>>>2<<2)|0;i=d;g=g+(b<<2)|0;if((l|0)==(j|0)){b=i;c=e}else{b=i;c=l;do{f[d>>2]=f[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(j|0));c=f[a>>2]|0}f[a>>2]=h;f[m>>2]=i;f[n>>2]=b;f[k>>2]=g;if(c){sOb(c);b=f[n>>2]|0}}else b=j;while(0);f[b>>2]=o;f[n>>2]=(f[n>>2]|0)+4;u=p;return}o=a+8|0;b=f[o>>2]|0;n=a+4|0;e=b-(f[n>>2]|0)|0;m=a+12|0;c=f[m>>2]|0;d=c-(f[a>>2]|0)|0;if(e>>>0>>0){if((c|0)!=(b|0)){o=pOb(4096)|0;f[l>>2]=o;j5a(a,l);u=p;return}j=pOb(4096)|0;f[l>>2]=j;k5a(a,l);j=f[n>>2]|0;k=f[j>>2]|0;j=j+4|0;f[n>>2]=j;i=f[o>>2]|0;l=f[m>>2]|0;b=l;do if((i|0)==(l|0)){c=f[a>>2]|0;d=c;if(j>>>0>c>>>0){b=j;d=((b-d>>2)+1|0)/-2|0;e=j+(d<<2)|0;b=i-b|0;c=b>>2;if(!c)b=j;else{cQb(e|0,j|0,b|0)|0;b=f[n>>2]|0}a=e+(c<<2)|0;f[o>>2]=a;f[n>>2]=b+(d<<2);b=a;break}b=b-d>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)vd();e=pOb(b<<2)|0;g=e;d=e+(b>>>2<<2)|0;h=d;e=e+(b<<2)|0;if((j|0)==(i|0))b=h;else{b=h;c=j;do{f[d>>2]=f[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(i|0));c=f[a>>2]|0}f[a>>2]=g;f[n>>2]=h;f[o>>2]=b;f[m>>2]=e;if(c){sOb(c);b=f[o>>2]|0}}else b=i;while(0);f[b>>2]=k;f[o>>2]=(f[o>>2]|0)+4;u=p;return}b=d>>1;b=(b|0)==0?1:b;f[l+12>>2]=0;f[l+16>>2]=a+12;if(b>>>0>1073741823)vd();q=e>>2;e=pOb(b<<2)|0;f[l>>2]=e;c=e+(q<<2)|0;k=l+8|0;f[k>>2]=c;i=l+4|0;f[i>>2]=c;d=e+(b<<2)|0;j=l+12|0;f[j>>2]=d;g=pOb(4096)|0;do if((q|0)==(b|0)){b=e;if(c>>>0>e>>>0){h=c+((((c-b>>2)+1|0)/-2|0)<<2)|0;f[k>>2]=h;f[i>>2]=h;break}b=d-b>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)vd();else{q=pOb(b<<2)|0;h=q+(b>>>2<<2)|0;d=h;f[l>>2]=q;f[i>>2]=d;f[k>>2]=d;f[j>>2]=q+(b<<2);sOb(e);break}}else h=c;while(0);f[h>>2]=g;d=(f[k>>2]|0)+4|0;f[k>>2]=d;b=f[o>>2]|0;c=f[n>>2]|0;if((b|0)==(c|0))h=k;else{do{b=b+-4|0;l5a(l,b);c=f[n>>2]|0}while((b|0)!=(c|0));h=k;d=f[k>>2]|0;b=f[o>>2]|0}e=c;g=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=g;f[n>>2]=f[i>>2];f[i>>2]=e;f[o>>2]=d;f[h>>2]=b;q=f[m>>2]|0;f[m>>2]=f[j>>2];f[j>>2]=q;if((c|0)!=(b|0))f[k>>2]=b+(~((b+-4-e|0)>>>2)<<2);if(g|0)sOb(g);u=p;return}function j5a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+8|0;j=f[n>>2]|0;k=a+12|0;m=f[k>>2]|0;e=m;do if((j|0)==(m|0)){m=a+4|0;l=f[m>>2]|0;d=f[a>>2]|0;c=d;if(l>>>0>d>>>0){d=l;e=((d-c>>2)+1|0)/-2|0;g=l+(e<<2)|0;c=j-d|0;d=c>>2;if(!d)c=l;else{cQb(g|0,l|0,c|0)|0;c=f[m>>2]|0}l=g+(d<<2)|0;f[n>>2]=l;f[m>>2]=c+(e<<2);c=l;break}c=e-c>>1;c=(c|0)==0?1:c;if(c>>>0>1073741823)vd();g=pOb(c<<2)|0;h=g;e=g+(c>>>2<<2)|0;i=e;g=g+(c<<2)|0;if((l|0)==(j|0))c=i;else{c=i;d=l;do{f[e>>2]=f[d>>2];e=c+4|0;c=e;d=d+4|0}while((d|0)!=(j|0));d=f[a>>2]|0}f[a>>2]=h;f[m>>2]=i;f[n>>2]=c;f[k>>2]=g;if(d){sOb(d);c=f[n>>2]|0}}else c=j;while(0);f[c>>2]=f[b>>2];f[n>>2]=(f[n>>2]|0)+4;return}function k5a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;m=f[o>>2]|0;n=f[a>>2]|0;e=n;do if((m|0)==(n|0)){n=a+8|0;d=f[n>>2]|0;l=a+12|0;k=f[l>>2]|0;c=k;if(d>>>0>>0){e=d;h=((c-e>>2)+1|0)/2|0;c=d+(h<<2)|0;e=e-m|0;l=e>>2;g=c+(0-l<<2)|0;if(l){cQb(g|0,m|0,e|0)|0;c=g;d=f[n>>2]|0}f[o>>2]=c;f[n>>2]=d+(h<<2);break}e=c-e>>1;e=(e|0)==0?1:e;if(e>>>0>1073741823)vd();i=pOb(e<<2)|0;j=i;c=i+((e+3|0)>>>2<<2)|0;k=c;i=i+(e<<2)|0;if((m|0)==(d|0)){e=k;d=m}else{h=c;e=k;g=m;do{f[h>>2]=f[g>>2];h=e+4|0;e=h;g=g+4|0}while((g|0)!=(d|0));d=f[a>>2]|0}f[a>>2]=j;f[o>>2]=k;f[n>>2]=e;f[l>>2]=i;if(d){sOb(d);c=f[o>>2]|0}}else c=m;while(0);f[c+-4>>2]=f[b>>2];f[o>>2]=(f[o>>2]|0)+-4;return}function l5a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;m=f[o>>2]|0;n=f[a>>2]|0;e=n;do if((m|0)==(n|0)){n=a+8|0;d=f[n>>2]|0;l=a+12|0;k=f[l>>2]|0;c=k;if(d>>>0>>0){e=d;h=((c-e>>2)+1|0)/2|0;c=d+(h<<2)|0;e=e-m|0;l=e>>2;g=c+(0-l<<2)|0;if(l){cQb(g|0,m|0,e|0)|0;c=g;d=f[n>>2]|0}f[o>>2]=c;f[n>>2]=d+(h<<2);break}e=c-e>>1;e=(e|0)==0?1:e;if(e>>>0>1073741823)vd();i=pOb(e<<2)|0;j=i;c=i+((e+3|0)>>>2<<2)|0;k=c;i=i+(e<<2)|0;if((m|0)==(d|0)){e=k;d=m}else{h=c;e=k;g=m;do{f[h>>2]=f[g>>2];h=e+4|0;e=h;g=g+4|0}while((g|0)!=(d|0));d=f[a>>2]|0}f[a>>2]=j;f[o>>2]=k;f[n>>2]=e;f[l>>2]=i;if(d){sOb(d);c=f[o>>2]|0}}else c=m;while(0);f[c+-4>>2]=f[b>>2];f[o>>2]=(f[o>>2]|0)+-4;return}function m5a(a){a=a|0;sOb(a);return}function n5a(a){a=a|0;var b=0;b=pOb(8)|0;f[b>>2]=39880;f[b+4>>2]=f[a+4>>2];return b|0}function o5a(a,b){a=a|0;b=b|0;f[b>>2]=39880;f[b+4>>2]=f[a+4>>2];return}function p5a(a){a=a|0;return}function q5a(a){a=a|0;sOb(a);return}function r5a(a,b){a=a|0;b=b|0;u5a(a+4|0,b);return}function s5a(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==193767?a+4|0:0)|0}function t5a(a){a=a|0;return 15336}function u5a(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0.0,P=0.0,Q=0,R=0,S=0;M=u;u=u+128|0;K=M+32|0;L=M;a=f[a>>2]|0;c=f[b+32>>2]|0;J=f[b+36>>2]|0;if((c|0)==(J|0)){u=M;return}y=a+8|0;z=a+236|0;A=a+248|0;B=a+104|0;C=L+8|0;D=K+16|0;E=L+16|0;F=K+40|0;G=L+24|0;H=K+64|0;I=a+112|0;j=a+240|0;k=L+8|0;l=L+16|0;m=L+24|0;n=L+8|0;o=L+16|0;q=L+24|0;r=L+16|0;s=L+24|0;t=L+16|0;v=L+24|0;w=L+16|0;x=L+24|0;do{T4a(K,c,f[y>>2]|0);if(tqb(K,z,A)|0){a=f[j>>2]|0;g=f[z>>2]|0;h=g;i=a;if((a|0)!=(g|0)){b=(a-g|0)/24|0;d=+p[B>>3];p[L>>3]=d;R=h+16|0;O=+p[R>>3];p[k>>3]=O;Q=h+40|0;e=+p[Q>>3];p[l>>3]=e;a=h+64|0;P=+p[a>>3];p[m>>3]=P;d=O>3]:+p[L>>3];d=e>3]:d;d=P>3]:d;p[B>>3]=d;P=+p[I>>3];p[L>>3]=P;e=+p[R>>3];p[n>>3]=e;O=+p[Q>>3];p[o>>3]=O;N=+p[a>>3];p[q>>3]=N;e=P>3];e=e>3]:e;e=e>3]:e;p[I>>3]=e;if(b>>>0>3){a=3;do{R=h+(a*24|0)|0;p[L>>3]=d;S=h+(a*24|0)+16|0;P=+p[S>>3];p[k>>3]=P;Q=R+24+16|0;O=+p[Q>>3];p[l>>3]=O;R=R+48+16|0;N=+p[R>>3];p[m>>3]=N;P=P>3]:+p[L>>3];P=O>3]:P;d=N>3]:P;p[B>>3]=d;p[L>>3]=e;P=+p[S>>3];p[n>>3]=P;N=+p[Q>>3];p[o>>3]=N;O=+p[R>>3];p[q>>3]=O;P=e>3];P=P>3]:P;e=P>3]:P;p[I>>3]=e;a=a+3|0}while(a>>>0>>0);a=g}else a=g}if((i|0)!=(h|0))f[j>>2]=i+(~(((i+-24-a|0)>>>0)/24|0)*24|0)}else{P=+p[B>>3];p[L>>3]=P;e=+p[D>>3];p[C>>3]=e;N=+p[F>>3];p[E>>3]=N;O=+p[H>>3];p[G>>3]=O;P=e>3];P=N>3]:P;p[B>>3]=O>3]:P;P=+p[I>>3];P=P>3]=P>2]|0;j=a+4|0;c=f[j>>2]|0;e=c-h|0;g=(e|0)/12|0;d=h;if((((f[i>>2]|0)-h|0)/12|0)>>>0<=g>>>0)return;do if(!e)b=0;else if(g>>>0>357913941)vd();else{b=pOb(e)|0;break}while(0);b=b+(g*12|0)|0;g=b;if((c|0)==(d|0))e=g;else{e=g;do{h=b+-12|0;k=c;c=c+-12|0;f[h>>2]=0;l=b+-8|0;f[l>>2]=0;f[b+-4>>2]=0;f[h>>2]=f[c>>2];h=k+-8|0;f[l>>2]=f[h>>2];k=k+-4|0;f[b+-4>>2]=f[k>>2];f[k>>2]=0;f[h>>2]=0;f[c>>2]=0;b=e+-12|0;e=b}while((c|0)!=(d|0));h=f[a>>2]|0;d=f[j>>2]|0}f[a>>2]=e;f[j>>2]=g;f[i>>2]=g;g=h;if((d|0)!=(g|0))do{b=d;d=d+-12|0;e=f[d>>2]|0;if(e|0){b=b+-8|0;c=f[b>>2]|0;if((c|0)!=(e|0))f[b>>2]=c+(~((c+-32-e|0)>>>5)<<5);sOb(e)}}while((d|0)!=(g|0));if(!h)return;sOb(h);return}function w5a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;e=f[l>>2]|0;j=f[a>>2]|0;i=(e-j|0)/12|0;b=i+1|0;d=j;if(b>>>0>357913941)AMb(a);m=a+8|0;k=((f[m>>2]|0)-j|0)/12|0;g=k<<1;g=k>>>0<178956970?(g>>>0>>0?b:g):357913941;do if(!g)h=0;else if(g>>>0>357913941)vd();else{h=pOb(g*12|0)|0;break}while(0);b=h+(i*12|0)|0;c=b;k=h+(g*12|0)|0;f[b>>2]=0;f[h+(i*12|0)+4>>2]=0;f[h+(i*12|0)+8>>2]=0;g=b+12|0;if((e|0)!=(d|0)){do{j=b+-12|0;i=e;e=e+-12|0;f[j>>2]=0;h=b+-8|0;f[h>>2]=0;f[b+-4>>2]=0;f[j>>2]=f[e>>2];j=i+-8|0;f[h>>2]=f[j>>2];i=i+-4|0;f[b+-4>>2]=f[i>>2];f[i>>2]=0;f[j>>2]=0;f[e>>2]=0;b=c+-12|0;c=b}while((e|0)!=(d|0));j=f[a>>2]|0;d=f[l>>2]|0}f[a>>2]=c;f[l>>2]=g;f[m>>2]=k;g=j;if((d|0)!=(g|0))do{b=d;d=d+-12|0;e=f[d>>2]|0;if(e|0){b=b+-8|0;c=f[b>>2]|0;if((c|0)!=(e|0))f[b>>2]=c+(~((c+-32-e|0)>>>5)<<5);sOb(e)}}while((d|0)!=(g|0));if(!j)return;sOb(j);return}function x5a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+4|0;i=f[k>>2]|0;m=f[a>>2]|0;d=i-m>>5;b=d+1|0;j=m;if(b>>>0>134217727)AMb(a);l=a+8|0;h=(f[l>>2]|0)-m|0;c=h>>4;c=h>>5>>>0<67108863?(c>>>0>>0?b:c):134217727;do if(!c)e=0;else if(c>>>0>134217727)vd();else{e=pOb(c<<5)|0;break}while(0);b=e+(d<<5)|0;g=e+(c<<5)|0;h=b+32|0;if((i|0)!=(j|0)){e=i+-32-m|0;c=i;d=b;while(1){i=c;c=c+-32|0;p[d+-32>>3]=+p[c>>3];p[d+-24>>3]=+p[i+-24>>3];p[d+-16>>3]=+p[i+-16>>3];p[d+-8>>3]=+p[i+-8>>3];if((c|0)==(j|0))break;else d=d+-32|0}b=b+(~(e>>>5)<<5)|0}f[a>>2]=b;f[k>>2]=h;f[l>>2]=g;if(!m)return;sOb(m);return}function y5a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0.0,z=0.0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;x=u;u=u+416|0;w=x+80|0;d=x+376|0;s=x+368|0;m=x+392|0;o=x+352|0;t=x+132|0;v=x;l=x+120|0;e=x+104|0;q=x+116|0;wqb(d);i=+n[d+8>>2];z=i-+n[d>>2];n[s>>2]=z;j=+n[d+12>>2];y=j-+n[d+4>>2];r=s+4|0;n[r>>2]=y;if(!(!(z<=1.0)&!(y<=1.0))){u=x;return}b[m>>0]=0;b[m+1>>0]=1;Q=m+2|0;P=m+8|0;b[Q>>0]=0;b[Q+1>>0]=0;b[Q+2>>0]=0;b[Q+3>>0]=0;b[Q+4>>0]=0;b[Q+5>>0]=0;Q=m+12|0;b[P>>0]=1;b[P+1>>0]=1;b[P+2>>0]=1;b[P+3>>0]=1;b[Q>>0]=0;b[Q+1>>0]=0;b[Q+2>>0]=0;b[Q+3>>0]=0;n[w>>2]=i+-1.0;n[w+4>>2]=j+-1.0;dkb(t,c,d,w,s,o);f[v>>2]=f[t>>2];Q=v+4|0;f[Q>>2]=f[t+4>>2];P=v+8|0;f[P>>2]=f[t+8>>2];O=v+12|0;n[O>>2]=-+n[t+12>>2];N=v+16|0;f[N>>2]=f[t+16>>2];M=v+20|0;f[M>>2]=f[t+20>>2];L=v+24|0;f[L>>2]=f[t+24>>2];K=v+28|0;n[K>>2]=-+n[t+28>>2];J=v+32|0;f[J>>2]=f[t+32>>2];I=v+36|0;f[I>>2]=f[t+36>>2];H=v+40|0;f[H>>2]=f[t+40>>2];G=v+44|0;n[G>>2]=-+n[t+44>>2];F=v+48|0;f[F>>2]=f[t+48>>2];E=v+52|0;f[E>>2]=f[t+52>>2];D=v+56|0;f[D>>2]=f[t+56>>2];C=v+60|0;n[C>>2]=-+n[t+60>>2];B=v+64|0;f[B>>2]=f[t+64>>2];A=v+68|0;f[A>>2]=f[t+68>>2];d=v+72|0;f[d>>2]=f[t+72>>2];g=v+76|0;n[g>>2]=-+n[t+76>>2];f[l>>2]=0;k=l+4|0;f[k>>2]=0;f[l+8>>2]=0;z5a(l,5);h=f[l>>2]|0;f[h>>2]=f[v>>2];f[h+4>>2]=f[Q>>2];f[h+8>>2]=f[P>>2];f[h+12>>2]=f[O>>2];f[h+44>>2]=f[N>>2];f[h+48>>2]=f[M>>2];f[h+52>>2]=f[L>>2];f[h+56>>2]=f[K>>2];f[h+88>>2]=f[J>>2];f[h+92>>2]=f[I>>2];f[h+96>>2]=f[H>>2];f[h+100>>2]=f[G>>2];f[h+132>>2]=f[F>>2];f[h+136>>2]=f[E>>2];f[h+140>>2]=f[D>>2];f[h+144>>2]=f[C>>2];f[h+176>>2]=f[B>>2];f[h+180>>2]=f[A>>2];f[h+184>>2]=f[d>>2];f[h+188>>2]=f[g>>2];A5a(l);B5a(e,l);h=pOb(56)|0;p[w>>3]=+n[o>>2];p[w+8>>3]=+n[o+4>>2];p[w+16>>3]=+n[o+8>>2];Mlb(h,e,w);g=f[e>>2]|0;if(g|0){d=e+4|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~(((e+-88-g|0)>>>0)/88|0)*88|0);sOb(g)}g=okb(m,c,5,v,o)|0;d=f[l>>2]|0;if(d|0){e=f[k>>2]|0;if((e|0)!=(d|0))f[k>>2]=e+(~(((e+-44-d|0)>>>0)/44|0)*44|0);sOb(d)}C5a(w,0,c,g);bjb(o,c,0,0,0);f[q>>2]=h;Skb(t,m,c,o,q);d=f[q>>2]|0;f[q>>2]=0;if(d|0)gh[f[(f[d>>2]|0)+4>>2]&2047](d);p[v>>3]=+n[s>>2];p[v+8>>3]=+n[r>>2];D5a(a,c,t,v,w);Rkb(t);d=f[w>>2]|0;if(d|0){h=w+4|0;e=f[h>>2]|0;if((e|0)!=(d|0)){do{g=e+-8|0;f[h>>2]=g;e=f[e+-4>>2]|0;if(!e)e=g;else{iOb(e);e=f[h>>2]|0}}while((e|0)!=(d|0));d=f[w>>2]|0}sOb(d)}u=x;return}function z5a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;g=f[j>>2]|0;k=a+4|0;c=f[k>>2]|0;if(((g-c|0)/44|0)>>>0>=b>>>0){do{d=c+44|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));c=(f[k>>2]|0)+44|0;f[k>>2]=c;b=b+-1|0}while((b|0)!=0);return}d=f[a>>2]|0;e=(c-d|0)/44|0;c=e+b|0;if(c>>>0>97612893)AMb(a);g=(g-d|0)/44|0;i=g<<1;c=g>>>0<48806446?(i>>>0>>0?c:i):97612893;do if(!c)h=0;else if(c>>>0>97612893)vd();else{h=pOb(c*44|0)|0;break}while(0);i=h+(e*44|0)|0;g=i;e=h+(c*44|0)|0;c=i;h=g;do{d=c+44|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));c=h+44|0;h=c;b=b+-1|0}while((b|0)!=0);c=f[a>>2]|0;d=f[k>>2]|0;if((d|0)==(c|0))b=g;else{b=i;do{i=b;b=b+-44|0;g=d;d=d+-44|0;f[b>>2]=f[d>>2];f[i+-40>>2]=f[g+-40>>2];f[i+-36>>2]=f[g+-36>>2];f[i+-32>>2]=f[g+-32>>2];f[i+-28>>2]=f[g+-28>>2];f[i+-24>>2]=f[g+-24>>2];f[i+-20>>2]=f[g+-20>>2];f[i+-16>>2]=f[g+-16>>2];f[i+-12>>2]=f[g+-12>>2];f[i+-8>>2]=f[g+-8>>2];f[i+-4>>2]=f[g+-4>>2]}while((d|0)!=(c|0));c=f[a>>2]|0}f[a>>2]=b;f[k>>2]=h;f[j>>2]=e;if(!c)return;sOb(c);return}function A5a(a){a=a|0;var b=0,c=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0;d=f[a>>2]|0;b=(f[a+4>>2]|0)-d|0;c=(b|0)/44|0;b=(b|0)==0;if(b)return;else a=0;do{j=d+(a*44|0)+12|0;n[j>>2]=-+n[j>>2];h=+n[d+(a*44|0)>>2];g=+K(+h);n[d+(a*44|0)+16>>2]=g;g=+n[d+(a*44|0)+4>>2];e=+K(+g);n[d+(a*44|0)+20>>2]=e;e=+n[d+(a*44|0)+8>>2];i=+K(+e);n[d+(a*44|0)+24>>2]=i;n[d+(a*44|0)+28>>2]=h>=0.0?1.0:-1.0;n[d+(a*44|0)+32>>2]=g>=0.0?1.0:-1.0;n[d+(a*44|0)+36>>2]=e>=0.0?1.0:-1.0;a=a+1|0}while(a>>>0>>0);if(b)return;else a=0;do{g=+n[d+(a*44|0)>>2];h=+n[d+(a*44|0)+4>>2];i=+n[d+(a*44|0)+8>>2];i=g*g+(h*h+i*i);n[d+(a*44|0)+40>>2]=i==0.0?0.0:1.0/i;a=a+1|0}while(a>>>0>>0);return}function B5a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0.0,s=0.0,t=0.0;q=u;u=u+32|0;d=q+12|0;l=q;c=f[b>>2]|0;k=(f[b+4>>2]|0)-c|0;m=(k|0)/44|0;f[d>>2]=0;o=d+4|0;f[o>>2]=0;f[d+8>>2]=0;k=(k|0)==0;if(k){j=0;e=0;i=0}else{if(m>>>0>268435455)AMb(d);g=pOb(m<<4)|0;f[d>>2]=g;e=g+(m<<4)|0;f[d+8>>2]=e;f[o>>2]=e;b=0;do{f[g+(b<<4)>>2]=f[c+(b*44|0)>>2];f[g+(b<<4)+4>>2]=f[c+(b*44|0)+4>>2];f[g+(b<<4)+8>>2]=f[c+(b*44|0)+8>>2];n[g+(b<<4)+12>>2]=-+n[c+(b*44|0)+12>>2];b=b+1|0}while(b>>>0>>0);j=g;i=g}f[l>>2]=0;d=l+4|0;f[d>>2]=0;f[l+8>>2]=0;if(k){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;N6a(a)}else{if(m>>>0>134217727)AMb(l);g=pOb(m<<5)|0;f[l>>2]=g;h=g+(m<<5)|0;f[l+8>>2]=h;f[d>>2]=h;b=0;do{t=+n[j+(b<<4)+4>>2];s=+n[j+(b<<4)+8>>2];r=+n[j+(b<<4)+12>>2];p[g+(b<<5)>>3]=+n[j+(b<<4)>>2];p[g+(b<<5)+8>>3]=t;p[g+(b<<5)+16>>3]=s;p[g+(b<<5)+24>>3]=r;b=b+1|0}while(b>>>0>>0);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;if(!k){M6a(a,m);c=f[a>>2]|0;b=0;do{p[c+(b*88|0)>>3]=+p[g+(b<<5)>>3];p[c+(b*88|0)+8>>3]=+p[g+(b<<5)+8>>3];p[c+(b*88|0)+16>>3]=+p[g+(b<<5)+16>>3];p[c+(b*88|0)+24>>3]=+p[g+(b<<5)+24>>3];b=b+1|0}while((b|0)!=(m|0))}N6a(a);if((h|0)!=(g|0))f[d>>2]=h+(~((h+-32-g|0)>>>5)<<5);sOb(g)}if(!j){u=q;return}if((e|0)!=(j|0))f[o>>2]=e+(~((e+-16-j|0)>>>4)<<4);sOb(i);u=q;return}function C5a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;j=o+8|0;k=o;f[a>>2]=0;l=a+4|0;f[l>>2]=0;f[a+8>>2]=0;ykb(c,d);m=j+4|0;n=j+8|0;b=pOb(8192)|0;f[j>>2]=b;f[m>>2]=b;f[n>>2]=b+8192;Ckb(c,d,1024,j);b=f[j>>2]|0;e=f[m>>2]|0;if((b|0)!=(e|0)){h=a+8|0;i=k+4|0;g=e;do{if((b|0)!=(g|0)){do{ARa(k,c,b);e=f[l>>2]|0;if(e>>>0<(f[h>>2]|0)>>>0){f[e>>2]=f[k>>2];f[e+4>>2]=f[i>>2];f[k>>2]=0;f[i>>2]=0;f[l>>2]=e+8}else{L6a(a,k);e=f[i>>2]|0;if(e|0)iOb(e)}b=b+8|0}while((b|0)!=(g|0));e=f[j>>2]|0;g=f[m>>2]|0;b=e;if((g|0)!=(e|0))f[m>>2]=g+(~((g+-8-e|0)>>>3)<<3)}Ckb(c,d,(f[n>>2]|0)-b>>3,j);b=f[j>>2]|0;g=f[m>>2]|0}while((b|0)!=(g|0))}if(!b){zkb(c,d);u=o;return}sOb(b);zkb(c,d);u=o;return}function D5a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0.0;V=u;u=u+752|0;U=V+216|0;H=V+184|0;I=V+736|0;i=V+720|0;T=V+704|0;Q=V+692|0;h=V+672|0;j=V+656|0;k=V+648|0;q=V+644|0;R=V+160|0;P=V+136|0;l=V+640|0;O=V+628|0;M=V+616|0;m=V+596|0;o=V+584|0;N=V+112|0;L=V+88|0;K=V+64|0;E=V+24|0;F=V;G=a9a(AQa(c)|0)|0;ojb(U,G,e,0);p[H>>3]=-+p[U+8>>3];A=H+8|0;p[A>>3]=-+p[U+16>>3];B=H+16|0;p[B>>3]=-+p[U+24>>3];C=H+24|0;p[C>>3]=-+p[U+32>>3];U=IAa(G)|0;f[i>>2]=a;f[i+4>>2]=H;f[i+8>>2]=U;f[i+12>>2]=I;f[T>>2]=0;U=T+4|0;f[U>>2]=0;f[T+8>>2]=0;f[Q>>2]=0;S=Q+4|0;f[S>>2]=0;f[Q+8>>2]=0;f[h>>2]=I;f[h+4>>2]=a;f[h+8>>2]=i;f[h+12>>2]=T;f[h+16>>2]=Q;f[j>>2]=a;f[j+4>>2]=I;f[j+8>>2]=H;f[j+12>>2]=h;f[k>>2]=-1;f[q>>2]=-16777216;h=ySa(c)|0;e=f[h+12>>2]|0;h=f[h+16>>2]|0;i=(h|0)==0;if(!i)gOb(h);if(e|0){D=$Cb(+n[e+152>>2]*255.0)|0;z=$Cb(+n[e+156>>2]*255.0)|0;J=$Cb(+n[e+160>>2]*255.0)|0;J=z<<8&65280|D&255|J<<16&16711680|(~~+iQb(+(+n[e+164>>2]*255.0))&255)<<24;f[k>>2]=J}if(!i)iOb(h);h=ySa(c)|0;e=f[h+4>>2]|0;h=f[h+8>>2]|0;i=(h|0)==0;if(!i)gOb(h);if(e|0){D=$Cb(+n[e+152>>2]*255.0)|0;z=$Cb(+n[e+156>>2]*255.0)|0;J=$Cb(+n[e+160>>2]*255.0)|0;J=z<<8&65280|D&255|J<<16&16711680|(~~+iQb(+(+n[e+164>>2]*255.0))&255)<<24;f[q>>2]=J}if(!i)iOb(h);J=R+16|0;f[R>>2]=4e4;f[R+4>>2]=j;f[R+8>>2]=I;f[J>>2]=R;D=P+16|0;f[P>>2]=40044;f[P+4>>2]=k;f[P+8>>2]=j;f[P+12>>2]=I;f[D>>2]=P;f[l>>2]=a;f[O>>2]=0;z=O+4|0;f[z>>2]=0;f[O+8>>2]=0;f[M>>2]=0;y=M+4|0;f[y>>2]=0;f[M+8>>2]=0;f[m>>2]=I;f[m+4>>2]=a;f[m+8>>2]=l;f[m+12>>2]=O;f[m+16>>2]=M;f[o>>2]=H;f[o+4>>2]=a;f[o+8>>2]=m;t=o;x=N+16|0;f[N>>2]=40088;f[N+4>>2]=t;f[x>>2]=N;w=L+16|0;f[L>>2]=40132;f[L+4>>2]=t;f[L+8>>2]=q;f[w>>2]=L;t=K+16|0;f[K>>2]=40176;f[t>>2]=K;v=hjb(c)|0;e=f[g>>2]|0;a=f[g+4>>2]|0;if((e|0)!=(a|0)){l=E+8|0;m=E+16|0;o=E+24|0;q=I+12|0;g=I+4|0;r=I+8|0;s=I+13|0;do{Vib(E,c,G,f[e>>2]|0,0);W=+p[C>>3]+(+p[H>>3]*+p[E>>3]+(+p[A>>3]*+p[l>>3]+ +p[B>>3]*+p[m>>3]));b[q>>0]=(W<0.0?1:W*W<+p[o>>3])&1;k=f[e>>2]|0;i=f[k+96>>2]|0;k=f[(f[(f[k+4>>2]|0)+44>>2]|0)+52>>2]|0;if(!(k&4)){j=i+120|0;h=b[j>>0]|0;if(h&8){BIa(i);h=b[j>>0]|0}if(!(h&1))h=v;else h=ijb(v)|0}else h=0;f[I>>2]=h;h=k&3;f[g>>2]=h;i=f[e>>2]|0;j=f[i+196>>2]|0;if(j&1048576){h=lJa(i)|0;i=f[e>>2]|0;h=f[(f[(f[h>>2]|0)+44>>2]|0)+52>>2]&3;j=f[i+196>>2]|0}f[r>>2]=h;b[s>>0]=j>>>1&1;Qlb(d,i,E,F,R,N,K,P,L)|0;e=e+8|0}while((e|0)!=(a|0))}e=f[t>>2]|0;if((K|0)==(e|0))gh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)gh[f[(f[e>>2]|0)+20>>2]&2047](e);e=f[w>>2]|0;if((L|0)==(e|0))gh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)gh[f[(f[e>>2]|0)+20>>2]&2047](e);e=f[x>>2]|0;if((N|0)==(e|0))gh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)gh[f[(f[e>>2]|0)+20>>2]&2047](e);e=f[M>>2]|0;if(e|0){h=f[y>>2]|0;if((h|0)!=(e|0))f[y>>2]=h+(~(((h+-48-e|0)>>>0)/48|0)*48|0);sOb(e)}e=f[O>>2]|0;if(e|0){h=f[z>>2]|0;if((h|0)!=(e|0))f[z>>2]=h+(~(((h+-48-e|0)>>>0)/48|0)*48|0);sOb(e)}e=f[D>>2]|0;if((P|0)==(e|0))gh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)gh[f[(f[e>>2]|0)+20>>2]&2047](e);e=f[J>>2]|0;if((R|0)==(e|0))gh[f[(f[e>>2]|0)+16>>2]&2047](e);else if(e|0)gh[f[(f[e>>2]|0)+20>>2]&2047](e);e=f[Q>>2]|0;if(e|0){h=f[S>>2]|0;if((h|0)!=(e|0))f[S>>2]=h+(~(((h+-72-e|0)>>>0)/72|0)*72|0);sOb(e)}e=f[T>>2]|0;if(!e){u=V;return}h=f[U>>2]|0;if((h|0)!=(e|0))f[U>>2]=h+(~(((h+-72-e|0)>>>0)/72|0)*72|0);sOb(e);u=V;return}function E5a(a){a=a|0;return}function F5a(a){a=a|0;sOb(a);return}function G5a(a){a=a|0;a=pOb(8)|0;f[a>>2]=40176;return a|0}function H5a(a,b){a=a|0;b=b|0;f[b>>2]=40176;return}function I5a(a){a=a|0;return}function J5a(a){a=a|0;sOb(a);return}function K5a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function L5a(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==194869?a+4|0:0)|0}function M5a(a){a=a|0;return 15368}function N5a(a){a=a|0;return}function O5a(a){a=a|0;sOb(a);return}function P5a(a){a=a|0;var b=0,c=0,d=0;b=pOb(12)|0;f[b>>2]=40132;d=a+4|0;c=f[d+4>>2]|0;a=b+4|0;f[a>>2]=f[d>>2];f[a+4>>2]=c;return b|0}function Q5a(a,b){a=a|0;b=b|0;var c=0;f[b>>2]=40132;c=a+4|0;a=f[c+4>>2]|0;b=b+4|0;f[b>>2]=f[c>>2];f[b+4>>2]=a;return}function R5a(a){a=a|0;return}function S5a(a){a=a|0;sOb(a);return}function T5a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0;d=u;u=u+16|0;e=d;g=f[a+4>>2]|0;a=f[a+8>>2]|0;b=f[b>>2]|0;j=c+116|0;i=f[j+4>>2]|0;c=e;f[c>>2]=f[j>>2];f[c+4>>2]=i;f[e+8>>2]=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;W5a(g,b,e,1);u=d;return}function U5a(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==195461?a+4|0:0)|0}function V5a(a){a=a|0;return 15400}function W5a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0.0,n=0,o=0.0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0;P=u;u=u+192|0;N=P+96|0;O=P+48|0;w=P;h=f[a+4>>2]|0;m=+p[c>>3];o=+p[c+24>>3];g=c+8|0;if(m==o){k=+p[g>>3];l=+p[c+32>>3];if(k==l)if(+p[c+16>>3]==+p[c+40>>3]){u=P;return}}else{k=+p[g>>3];l=+p[c+32>>3]}p[w>>3]=m;t=w+8|0;p[t>>3]=k;V=+p[c+16>>3];v=w+16|0;p[v>>3]=V;s=w+24|0;p[s>>3]=o;x=w+32|0;p[x>>3]=l;Q=+p[c+40>>3];y=w+40|0;p[y>>3]=Q;c=f[a>>2]|0;T=+p[c>>3];S=+p[c+8>>3];R=+p[c+16>>3];U=+p[c+24>>3];j=w+24|0;g=U+(T*m+(S*k+R*V))>=0.0;if(g^U+(T*o+(S*l+R*Q))>=0.0){cCa(N,c,w,j);i=(g^1)&1;V=+p[N>>3];L=w+(i*24|0)|0;p[N>>3]=+p[L>>3];p[L>>3]=V;L=N+8|0;V=+p[L>>3];M=w+(i*24|0)+8|0;p[L>>3]=+p[M>>3];p[M>>3]=V;p[w+(i*24|0)+16>>3]=+p[N+16>>3];i=9}else if(g){d=h+2944|0;f[d>>2]=(f[d>>2]|0)+1}else i=9;a:do if((i|0)==9){M=f[a+8>>2]|0;g=f[M+4>>2]|0;if(!e)if(!(b[(f[M>>2]|0)+13>>0]|0)){q=g+2852|0;r=g+2856|0;if((f[q>>2]|0)!=(f[r>>2]|0)){L=M+12|0;g=f[L>>2]|0;h=f[g>>2]|0;c=g+4|0;a=f[c>>2]|0;if((a|0)==(h|0))n=g;else{f[c>>2]=a+(~(((a+-48-h|0)>>>0)/48|0)*48|0);h=f[L>>2]|0;n=h;h=f[h+4>>2]|0}k=+p[w>>3];p[N>>3]=k;j=N+8|0;p[j>>3]=+p[t>>3];e=N+16|0;p[e>>3]=+p[v>>3];i=N+24|0;p[i>>3]=+p[s>>3];a=N+32|0;p[a>>3]=+p[x>>3];c=N+40|0;p[c>>3]=+p[y>>3];g=n+4|0;if(h>>>0<(f[n+8>>2]|0)>>>0){f[h>>2]=f[N>>2];f[h+4>>2]=f[N+4>>2];f[h+8>>2]=f[N+8>>2];f[h+12>>2]=f[N+12>>2];f[h+16>>2]=f[N+16>>2];f[h+20>>2]=f[N+20>>2];p[h>>3]=k;p[h+8>>3]=+p[j>>3];p[h+16>>3]=+p[e>>3];K=h+24|0;f[K>>2]=f[i>>2];f[K+4>>2]=f[i+4>>2];f[K+8>>2]=f[i+8>>2];f[K+12>>2]=f[i+12>>2];f[K+16>>2]=f[i+16>>2];f[K+20>>2]=f[i+20>>2];p[K>>3]=+p[i>>3];p[h+32>>3]=+p[a>>3];p[h+40>>3]=+p[c>>3];f[g>>2]=(f[g>>2]|0)+48}else X5a(n,N);g=f[q>>2]|0;s=f[r>>2]|0;if((g|0)!=(s|0)){t=M+16|0;v=N+8|0;w=N+16|0;x=N+24|0;y=N+32|0;z=N+40|0;A=N+48|0;B=N+56|0;C=O+8|0;D=N+64|0;E=O+16|0;F=O+24|0;G=N+72|0;H=N+80|0;I=O+32|0;J=N+88|0;K=O+40|0;do{c=f[t>>2]|0;a=f[c>>2]|0;h=c+4|0;i=f[h>>2]|0;if((i|0)!=(a|0)){f[h>>2]=i+(~(((i+-48-a|0)>>>0)/48|0)*48|0);c=f[t>>2]|0}r=f[L>>2]|0;j=f[c>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=j;j=c+4|0;q=r+4|0;n=f[j>>2]|0;f[j>>2]=f[q>>2];f[q>>2]=n;q=c+8|0;c=r+8|0;r=f[q>>2]|0;f[q>>2]=f[c>>2];f[c>>2]=r;c=f[g>>2]|0;r=f[g+4>>2]|0;if((c|0)!=(r|0))do{i=f[t>>2]|0;a=(f[i+4>>2]|0)-(f[i>>2]|0)|0;b:do if(a|0){a=(a|0)/48|0;h=0;while(1){i=f[i>>2]|0;e=i+(h*48|0)|0;switch((S6a(c,e,N,0.0)|0)<<24>>24){case 4:case 2:case 0:{h=h+1|0;break}case 1:{j=f[L>>2]|0;n=j+4|0;q=f[n>>2]|0;if((q|0)==(f[j+8>>2]|0))Y5a(j,e);else{p[q>>3]=+p[e>>3];p[q+8>>3]=+p[i+(h*48|0)+8>>3];p[q+16>>3]=+p[i+(h*48|0)+16>>3];p[q+24>>3]=+p[i+(h*48|0)+24>>3];p[q+32>>3]=+p[i+(h*48|0)+32>>3];p[q+40>>3]=+p[i+(h*48|0)+40>>3];f[n>>2]=q+48}j=f[t>>2]|0;i=(f[j>>2]|0)+(h*48|0)|0;e=i+48|0;j=j+4|0;n=f[j>>2]|0;if((e|0)!=(n|0))do{V=+p[e>>3];p[e>>3]=+p[i>>3];p[i>>3]=V;W=e+8|0;V=+p[W>>3];q=i+8|0;p[W>>3]=+p[q>>3];p[q>>3]=V;q=e+16|0;V=+p[q>>3];W=i+16|0;p[q>>3]=+p[W>>3];p[W>>3]=V;W=e+24|0;V=+p[W>>3];q=i+24|0;p[W>>3]=+p[q>>3];p[q>>3]=V;q=e+32|0;V=+p[q>>3];W=i+32|0;p[q>>3]=+p[W>>3];p[W>>3]=V;W=e+40|0;V=+p[W>>3];q=i+40|0;p[W>>3]=+p[q>>3];p[q>>3]=V;e=e+48|0;i=i+48|0}while((e|0)!=(n|0));if((n|0)!=(i|0))f[j>>2]=n+(~(((n+-48-i|0)>>>0)/48|0)*48|0);a=a+-1|0;break}case 3:{S=+p[v>>3];T=+p[w>>3];U=+p[x>>3];V=+p[y>>3];k=+p[z>>3];p[e>>3]=+p[N>>3];p[i+(h*48|0)+8>>3]=S;p[i+(h*48|0)+16>>3]=T;p[i+(h*48|0)+24>>3]=U;p[i+(h*48|0)+32>>3]=V;p[i+(h*48|0)+40>>3]=k;i=f[L>>2]|0;k=+p[A>>3];p[O>>3]=k;p[C>>3]=+p[B>>3];p[E>>3]=+p[D>>3];p[F>>3]=+p[G>>3];p[I>>3]=+p[H>>3];p[K>>3]=+p[J>>3];e=i+4|0;j=f[e>>2]|0;if(j>>>0<(f[i+8>>2]|0)>>>0){f[j>>2]=f[O>>2];f[j+4>>2]=f[O+4>>2];f[j+8>>2]=f[O+8>>2];f[j+12>>2]=f[O+12>>2];f[j+16>>2]=f[O+16>>2];f[j+20>>2]=f[O+20>>2];p[j>>3]=k;p[j+8>>3]=+p[C>>3];p[j+16>>3]=+p[E>>3];W=j+24|0;f[W>>2]=f[F>>2];f[W+4>>2]=f[F+4>>2];f[W+8>>2]=f[F+8>>2];f[W+12>>2]=f[F+12>>2];f[W+16>>2]=f[F+16>>2];f[W+20>>2]=f[F+20>>2];p[W>>3]=+p[F>>3];p[j+32>>3]=+p[I>>3];p[j+40>>3]=+p[K>>3];f[e>>2]=(f[e>>2]|0)+48}else Z5a(i,O);h=h+1|0;break}default:{}}if(h>>>0>=a>>>0)break b;i=f[t>>2]|0}}while(0);c=c+32|0}while((c|0)!=(r|0));g=g+12|0}while((g|0)!=(s|0))}j=f[L>>2]|0;g=f[j>>2]|0;j=f[j+4>>2]|0;if((g|0)==(j|0))break;e=M+8|0;while(1){c=f[f[e>>2]>>2]|0;a=g+24|0;h=c+2652|0;i=f[h>>2]|0;if(i>>>0<(f[c+2656>>2]|0)>>>0){p[i>>3]=+p[g>>3];p[i+8>>3]=+p[g+8>>3];p[i+16>>3]=+p[g+16>>3];p[i+24>>3]=+p[a>>3];p[i+32>>3]=+p[g+32>>3];p[i+40>>3]=+p[g+40>>3];W=i+48|0;f[W>>2]=f[d>>2];f[W+4>>2]=f[d+4>>2];f[W+8>>2]=f[d+8>>2];f[h>>2]=(f[h>>2]|0)+64}else b4a(c+2648|0,g,a,d);W=c+2940|0;f[W>>2]=(f[W>>2]|0)+1;g=g+48|0;if((g|0)==(j|0))break a}}}g=f[f[M+8>>2]>>2]|0;c=g+2652|0;a=f[c>>2]|0;if(a>>>0<(f[g+2656>>2]|0)>>>0){p[a>>3]=+p[w>>3];p[a+8>>3]=+p[t>>3];p[a+16>>3]=+p[v>>3];p[a+24>>3]=+p[j>>3];p[a+32>>3]=+p[x>>3];p[a+40>>3]=+p[y>>3];W=a+48|0;f[W>>2]=f[d>>2];f[W+4>>2]=f[d+4>>2];f[W+8>>2]=f[d+8>>2];f[c>>2]=(f[c>>2]|0)+64}else b4a(g+2648|0,w,j,d);W=g+2940|0;f[W>>2]=(f[W>>2]|0)+1}while(0);u=P;return}function X5a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+4|0;d=f[l>>2]|0;m=f[a>>2]|0;h=(d-m|0)/48|0;c=h+1|0;j=m;if(c>>>0>89478485)AMb(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/48|0;e=i<<1;e=i>>>0<44739242?(e>>>0>>0?c:e):89478485;do if(!e)g=0;else if(e>>>0>89478485)vd();else{g=pOb(e*48|0)|0;break}while(0);c=g+(h*48|0)|0;i=g+(e*48|0)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];f[c+16>>2]=f[b+16>>2];f[c+20>>2]=f[b+20>>2];p[c>>3]=+p[b>>3];p[g+(h*48|0)+8>>3]=+p[b+8>>3];p[g+(h*48|0)+16>>3]=+p[b+16>>3];e=g+(h*48|0)+24|0;n=b+24|0;f[e>>2]=f[n>>2];f[e+4>>2]=f[n+4>>2];f[e+8>>2]=f[n+8>>2];f[e+12>>2]=f[n+12>>2];f[e+16>>2]=f[n+16>>2];f[e+20>>2]=f[n+20>>2];p[e>>3]=+p[n>>3];p[g+(h*48|0)+32>>3]=+p[b+32>>3];p[g+(h*48|0)+40>>3]=+p[b+40>>3];e=c+48|0;if((d|0)!=(j|0))do{n=d;d=d+-48|0;p[c+-48>>3]=+p[d>>3];p[c+-40>>3]=+p[n+-40>>3];p[c+-32>>3]=+p[n+-32>>3];p[c+-24>>3]=+p[n+-24>>3];p[c+-16>>3]=+p[n+-16>>3];p[c+-8>>3]=+p[n+-8>>3];c=c+-48|0}while((d|0)!=(j|0));f[a>>2]=c;f[l>>2]=e;f[k>>2]=i;if(!m)return;sOb(m);return}function Y5a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;d=f[l>>2]|0;m=f[a>>2]|0;h=(d-m|0)/48|0;c=h+1|0;j=m;if(c>>>0>89478485)AMb(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/48|0;e=i<<1;e=i>>>0<44739242?(e>>>0>>0?c:e):89478485;do if(!e)g=0;else if(e>>>0>89478485)vd();else{g=pOb(e*48|0)|0;break}while(0);c=g+(h*48|0)|0;i=g+(e*48|0)|0;p[c>>3]=+p[b>>3];p[g+(h*48|0)+8>>3]=+p[b+8>>3];p[g+(h*48|0)+16>>3]=+p[b+16>>3];p[g+(h*48|0)+24>>3]=+p[b+24>>3];p[g+(h*48|0)+32>>3]=+p[b+32>>3];p[g+(h*48|0)+40>>3]=+p[b+40>>3];e=c+48|0;if((d|0)!=(j|0))do{h=d;d=d+-48|0;p[c+-48>>3]=+p[d>>3];p[c+-40>>3]=+p[h+-40>>3];p[c+-32>>3]=+p[h+-32>>3];p[c+-24>>3]=+p[h+-24>>3];p[c+-16>>3]=+p[h+-16>>3];p[c+-8>>3]=+p[h+-8>>3];c=c+-48|0}while((d|0)!=(j|0));f[a>>2]=c;f[l>>2]=e;f[k>>2]=i;if(!m)return;sOb(m);return}function Z5a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+4|0;d=f[l>>2]|0;m=f[a>>2]|0;h=(d-m|0)/48|0;c=h+1|0;j=m;if(c>>>0>89478485)AMb(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/48|0;e=i<<1;e=i>>>0<44739242?(e>>>0>>0?c:e):89478485;do if(!e)g=0;else if(e>>>0>89478485)vd();else{g=pOb(e*48|0)|0;break}while(0);c=g+(h*48|0)|0;i=g+(e*48|0)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];f[c+16>>2]=f[b+16>>2];f[c+20>>2]=f[b+20>>2];p[c>>3]=+p[b>>3];p[g+(h*48|0)+8>>3]=+p[b+8>>3];p[g+(h*48|0)+16>>3]=+p[b+16>>3];e=g+(h*48|0)+24|0;n=b+24|0;f[e>>2]=f[n>>2];f[e+4>>2]=f[n+4>>2];f[e+8>>2]=f[n+8>>2];f[e+12>>2]=f[n+12>>2];f[e+16>>2]=f[n+16>>2];f[e+20>>2]=f[n+20>>2];p[e>>3]=+p[n>>3];p[g+(h*48|0)+32>>3]=+p[b+32>>3];p[g+(h*48|0)+40>>3]=+p[b+40>>3];e=c+48|0;if((d|0)!=(j|0))do{n=d;d=d+-48|0;p[c+-48>>3]=+p[d>>3];p[c+-40>>3]=+p[n+-40>>3];p[c+-32>>3]=+p[n+-32>>3];p[c+-24>>3]=+p[n+-24>>3];p[c+-16>>3]=+p[n+-16>>3];p[c+-8>>3]=+p[n+-8>>3];c=c+-48|0}while((d|0)!=(j|0));f[a>>2]=c;f[l>>2]=e;f[k>>2]=i;if(!m)return;sOb(m);return}function _5a(a){a=a|0;return}function $5a(a){a=a|0;sOb(a);return}function a6a(a){a=a|0;var b=0;b=pOb(8)|0;f[b>>2]=40088;f[b+4>>2]=f[a+4>>2];return b|0}function b6a(a,b){a=a|0;b=b|0;f[b>>2]=40088;f[b+4>>2]=f[a+4>>2];return}function c6a(a){a=a|0;return}function d6a(a){a=a|0;sOb(a);return}function e6a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=u;u=u+32|0;l=e+16|0;g=e;a=f[a+4>>2]|0;b=f[b>>2]|0;yqb(l,c,f[d>>2]|0);i=$Cb(+n[l>>2]*255.0)|0;j=$Cb(+n[l+4>>2]*255.0)|0;h=$Cb(+n[l+8>>2]*255.0)|0;d=~~+iQb(+(+n[l+12>>2]*255.0))&255;l=c+116|0;k=f[l+4>>2]|0;c=g;f[c>>2]=f[l>>2];f[c+4>>2]=k;f[g+8>>2]=j<<8&65280|i&255|h<<16&16711680|(d&255)<<24;W5a(a,b,g,0);u=e;return}function f6a(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==196051?a+4|0:0)|0}function g6a(a){a=a|0;return 15432}function h6a(a){a=a|0;sOb(a);return}function i6a(a){a=a|0;var b=0,c=0;b=pOb(16)|0;c=a+4|0;f[b>>2]=40044;a=b+4|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];return b|0}function j6a(a,b){a=a|0;b=b|0;a=a+4|0;f[b>>2]=40044;b=b+4|0;f[b>>2]=f[a>>2];f[b+4>>2]=f[a+4>>2];f[b+8>>2]=f[a+8>>2];return}function k6a(a){a=a|0;return}function l6a(a){a=a|0;sOb(a);return}function m6a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0;d=u;u=u+16|0;e=d;j=f[a+4>>2]|0;i=f[a+8>>2]|0;g=f[b>>2]|0;b=f[(f[a+12>>2]|0)+8>>2]|0;k=c+116|0;a=f[k+4>>2]|0;c=e;f[c>>2]=f[k>>2];f[c+4>>2]=a;f[e+8>>2]=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;p6a(i,g,e,b,1);u=d;return}function n6a(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==196641?a+4|0:0)|0}function o6a(a){a=a|0;return 15464}function p6a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0.0,j=0.0,k=0,l=0,m=0.0,n=0,o=0;o=u;u=u+224|0;k=o+144|0;n=o;l=f[a>>2]|0;m=+p[c>>3];j=+p[c+24>>3];if(m==j)if(+p[c+8>>3]==+p[c+32>>3]){if(!(+p[c+16>>3]==+p[c+40>>3]))h=4}else h=4;else h=4;do if((h|0)==4){i=+p[c+48>>3];if(m==i)if(+p[c+8>>3]==+p[c+56>>3])if(+p[c+16>>3]==+p[c+64>>3])break;if(j==i)if(+p[c+32>>3]==+p[c+56>>3])if(+p[c+40>>3]==+p[c+64>>3])break;if((e|0)==1){p[k>>3]=i;p[k+8>>3]=+p[c+56>>3];p[k+16>>3]=+p[c+64>>3];p[k+24>>3]=j;p[k+32>>3]=+p[c+32>>3];p[k+40>>3]=+p[c+40>>3];p[k+48>>3]=m;p[k+56>>3]=+p[c+8>>3];p[k+64>>3]=+p[c+16>>3];c=k}if(!(b[(f[a+4>>2]|0)+12>>0]|0))q6a(f[a+12>>2]|0,c,d,g);else{h=bCa(f[a+8>>2]|0,c,n)|0;if(h|0){c=a+12|0;q6a(f[c>>2]|0,n,d,g);if(h>>>0>3)q6a(f[c>>2]|0,n+72|0,d,g)}}u=o;return}while(0);n=l+2932|0;f[n>>2]=(f[n>>2]|0)+1;u=o;return}function q6a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0.0,k=0,l=0,m=0,o=0,q=0,r=0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0;r=u;u=u+1488|0;l=f[a+4>>2]|0;if(!e)if(!(b[(f[a>>2]|0)+13>>0]|0))if((f[(l+2852|0)>>2]|0)!=(f[(l+2856|0)>>2]|0)){e=f[(a+12|0)>>2]|0;h=f[e>>2]|0;g=f[(e+4|0)>>2]|0;if((g|0)!=(h|0)){f[(e+4|0)>>2]=g+(~(((g+-72-h|0)>>>0)/72|0)*72|0);h=f[(a+12|0)>>2]|0;e=h;h=f[h+4>>2]|0}j=+p[c>>3];p[(r+72|0)>>3]=j;p[((r+72|0)+8|0)>>3]=+p[c+8>>3];p[((r+72|0)+16|0)>>3]=+p[c+16>>3];i=(r+72|0)+24|0;p[i>>3]=+p[c+24>>3];p[((r+72|0)+32|0)>>3]=+p[c+32>>3];p[((r+72|0)+40|0)>>3]=+p[c+40>>3];k=(r+72|0)+48|0;p[k>>3]=+p[c+48>>3];p[((r+72|0)+56|0)>>3]=+p[c+56>>3];p[((r+72|0)+64|0)>>3]=+p[c+64>>3];g=e+4|0;if(h>>>0<(f[e+8>>2]|0)>>>0){f[h>>2]=f[(r+72|0)>>2];f[h+4>>2]=f[(r+72|0)+4>>2];f[h+8>>2]=f[(r+72|0)+8>>2];f[h+12>>2]=f[(r+72|0)+12>>2];f[h+16>>2]=f[(r+72|0)+16>>2];f[h+20>>2]=f[(r+72|0)+20>>2];p[h>>3]=j;p[h+8>>3]=+p[((r+72|0)+8|0)>>3];p[h+16>>3]=+p[((r+72|0)+16|0)>>3];q=h+24|0;f[q>>2]=f[i>>2];f[q+4>>2]=f[i+4>>2];f[q+8>>2]=f[i+8>>2];f[q+12>>2]=f[i+12>>2];f[q+16>>2]=f[i+16>>2];f[q+20>>2]=f[i+20>>2];p[q>>3]=+p[i>>3];p[h+32>>3]=+p[((r+72|0)+32|0)>>3];p[h+40>>3]=+p[((r+72|0)+40|0)>>3];q=h+48|0;f[q>>2]=f[k>>2];f[q+4>>2]=f[k+4>>2];f[q+8>>2]=f[k+8>>2];f[q+12>>2]=f[k+12>>2];f[q+16>>2]=f[k+16>>2];f[q+20>>2]=f[k+20>>2];p[q>>3]=+p[k>>3];p[h+56>>3]=+p[((r+72|0)+56|0)>>3];p[h+64>>3]=+p[((r+72|0)+64|0)>>3];f[g>>2]=(f[g>>2]|0)+72}else s6a(e,r+72|0);e=f[(l+2852|0)>>2]|0;q=f[(l+2856|0)>>2]|0;if((e|0)!=(q|0)){o=e;do{e=f[(a+16|0)>>2]|0;g=f[e>>2]|0;h=f[(e+4|0)>>2]|0;if((h|0)!=(g|0)){f[(e+4|0)>>2]=h+(~(((h+-72-g|0)>>>0)/72|0)*72|0);e=f[(a+16|0)>>2]|0}m=f[(a+12|0)>>2]|0;c=f[e>>2]|0;f[e>>2]=f[m>>2];f[m>>2]=c;c=e+4|0;l=f[c>>2]|0;f[c>>2]=f[(m+4|0)>>2];f[(m+4|0)>>2]=l;l=e+8|0;e=f[l>>2]|0;f[l>>2]=f[(m+8|0)>>2];f[(m+8|0)>>2]=e;e=f[o>>2]|0;m=f[o+4>>2]|0;if((e|0)!=(m|0))do{h=f[(a+12|0)>>2]|0;l=(f[h+4>>2]|0)-(f[h>>2]|0)|0;a:do if(l|0){g=0;while(1){h=f[h>>2]|0;i=h+(g*72|0)|0;Q6a(r+288|0,e,i,r+72|0,0.0);if((b[(r+288|0)>>0]|0)==3){z=+p[((r+72|0)+8|0)>>3];y=+p[((r+72|0)+16|0)>>3];x=+p[((r+72|0)+24|0)>>3];w=+p[((r+72|0)+32|0)>>3];v=+p[((r+72|0)+40|0)>>3];t=+p[((r+72|0)+48|0)>>3];s=+p[((r+72|0)+56|0)>>3];j=+p[((r+72|0)+64|0)>>3];p[i>>3]=+p[(r+72|0)>>3];p[h+(g*72|0)+8>>3]=z;p[h+(g*72|0)+16>>3]=y;p[h+(g*72|0)+24>>3]=x;p[h+(g*72|0)+32>>3]=w;p[h+(g*72|0)+40>>3]=v;p[h+(g*72|0)+48>>3]=t;p[h+(g*72|0)+56>>3]=s;p[h+(g*72|0)+64>>3]=j;h=b[((r+288|0)+2|0)>>0]|0;if((h&255)>3){c=3;do{i=f[(a+12|0)>>2]|0;j=+p[(r+72|0)+(c*24|0)>>3];p[r>>3]=j;p[(r+8|0)>>3]=+p[(r+72|0)+(c*24|0)+8>>3];p[(r+16|0)>>3]=+p[(r+72|0)+(c*24|0)+16>>3];k=c+1|0;p[(r+24|0)>>3]=+p[(r+72|0)+(k*24|0)>>3];p[(r+32|0)>>3]=+p[(r+72|0)+(k*24|0)+8>>3];p[(r+40|0)>>3]=+p[(r+72|0)+(k*24|0)+16>>3];k=c+2|0;p[(r+48|0)>>3]=+p[(r+72|0)+(k*24|0)>>3];p[(r+56|0)>>3]=+p[(r+72|0)+(k*24|0)+8>>3];p[(r+64|0)>>3]=+p[(r+72|0)+(k*24|0)+16>>3];k=f[(i+4|0)>>2]|0;if(k>>>0<(f[i+8>>2]|0)>>>0){f[k>>2]=f[r>>2];f[k+4>>2]=f[r+4>>2];f[k+8>>2]=f[r+8>>2];f[k+12>>2]=f[r+12>>2];f[k+16>>2]=f[r+16>>2];f[k+20>>2]=f[r+20>>2];p[k>>3]=j;p[k+8>>3]=+p[(r+8|0)>>3];p[k+16>>3]=+p[(r+16|0)>>3];f[(k+24|0)>>2]=f[(r+24|0)>>2];f[(k+24|0)+4>>2]=f[(r+24|0)+4>>2];f[(k+24|0)+8>>2]=f[(r+24|0)+8>>2];f[(k+24|0)+12>>2]=f[(r+24|0)+12>>2];f[(k+24|0)+16>>2]=f[(r+24|0)+16>>2];f[(k+24|0)+20>>2]=f[(r+24|0)+20>>2];p[(k+24|0)>>3]=+p[(r+24|0)>>3];p[k+32>>3]=+p[(r+32|0)>>3];p[k+40>>3]=+p[(r+40|0)>>3];f[(k+48|0)>>2]=f[(r+48|0)>>2];f[(k+48|0)+4>>2]=f[(r+48|0)+4>>2];f[(k+48|0)+8>>2]=f[(r+48|0)+8>>2];f[(k+48|0)+12>>2]=f[(r+48|0)+12>>2];f[(k+48|0)+16>>2]=f[(r+48|0)+16>>2];f[(k+48|0)+20>>2]=f[(r+48|0)+20>>2];p[(k+48|0)>>3]=+p[(r+48|0)>>3];p[k+56>>3]=+p[(r+56|0)>>3];p[k+64>>3]=+p[(r+64|0)>>3];f[(i+4|0)>>2]=(f[(i+4|0)>>2]|0)+72}else{t6a(i,r);h=b[((r+288|0)+2|0)>>0]|0}c=c+3|0}while(c>>>0<(h&255)>>>0)}}g=g+1|0;if(g>>>0>=((l|0)/72|0)>>>0)break a;h=f[(a+12|0)>>2]|0}}while(0);i=f[(a+16|0)>>2]|0;g=(f[i+4>>2]|0)-(f[i>>2]|0)|0;b:do if(g|0){k=0;h=(g|0)/72|0;g=i;while(1){A=f[g>>2]|0;i=A+(k*72|0)|0;Q6a(r+288|0,e,i,r+72|0,0.0);c=1;l=b[(r+288|0)>>0]|0;f[r+320>>2]=a;f[r+400>>2]=k;f[r+408>>2]=h;f[r+808>>2]=A;f[r+816>>2]=g;f[r+824>>2]=i;f[r+1392>>2]=c;f[r+1400>>2]=l;f[r+1408>>2]=0;f[r+1412>>2]=0;L7a(r);k=f[r+400>>2]|0;h=f[r+408>>2]|0;g=f[r+816>>2]|0;G=f[r+1408>>2]|0;D=f[r+1412>>2]|0;H=+n[r+1412>>2];f[r+1408>>2]=0;f[r+1412>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 1:break b}}}while(0);e=e+32|0}while((e|0)!=(m|0));o=o+12|0}while((o|0)!=(q|0))}g=f[(a+12|0)>>2]|0;e=f[g>>2]|0;g=f[g+4>>2]|0;if((e|0)==(g|0)){u=r;return}do{r6a(f[(a+8|0)>>2]|0,e,d);e=e+72|0}while((e|0)!=(g|0));u=r;return}r6a(f[a+8>>2]|0,c,d);u=r;return}function r6a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0;H=u;u=u+208|0;A=H+144|0;e=H+120|0;g=H+96|0;i=H+72|0;s=H+48|0;x=H+24|0;y=H;G=f[a>>2]|0;if(b[G+24>>0]|0){z=v6a(G+2948|0,d)|0;l=+p[c>>3];p[e>>3]=l;B=c+8|0;m=+p[B>>3];p[e+8>>3]=m;C=c+16|0;n=+p[C>>3];p[e+16>>3]=n;D=c+24|0;o=+p[D>>3];p[g>>3]=o;E=c+32|0;q=+p[E>>3];p[g+8>>3]=q;F=c+40|0;r=+p[F>>3];p[g+16>>3]=r;if(l!=o){j=o;k=l;h=5}else if(m!=q){j=q;k=m;h=5}else if(n>3]=l;p[A+8>>3]=m;p[A+16>>3]=n;p[A+24>>3]=o;p[A+32>>3]=q;p[A+40>>3]=r;e=w6a(e,g)|0}else if((h|0)==7){p[A>>3]=o;p[A+8>>3]=q;p[A+16>>3]=r;p[A+24>>3]=l;p[A+32>>3]=m;p[A+40>>3]=n;e=w6a(g,e)|0}f[A+48>>2]=e;e=x6a(z,A)|0;t=c+48|0;v=c+56|0;w=c+64|0;g=e+144|0;h=f[g>>2]|0;if((h|0)!=2){r=+p[w>>3];q=+p[v>>3];o=+p[t>>3];n=+p[F>>3];m=+p[E>>3];l=+p[D>>3];k=+p[C>>3];j=+p[B>>3];I=+p[c>>3];f[g>>2]=h+1;p[e+(h*72|0)>>3]=I;p[e+(h*72|0)+8>>3]=j;p[e+(h*72|0)+16>>3]=k;p[e+(h*72|0)+24>>3]=l;p[e+(h*72|0)+32>>3]=m;p[e+(h*72|0)+40>>3]=n;p[e+(h*72|0)+48>>3]=o;p[e+(h*72|0)+56>>3]=q;p[e+(h*72|0)+64>>3]=r}l=+p[D>>3];p[i>>3]=l;m=+p[E>>3];p[i+8>>3]=m;n=+p[F>>3];p[i+16>>3]=n;o=+p[t>>3];p[s>>3]=o;q=+p[v>>3];p[s+8>>3]=q;r=+p[w>>3];p[s+16>>3]=r;if(l!=o){j=o;k=l;h=13}else if(m!=q){j=q;k=m;h=13}else if(n>3]=l;p[A+8>>3]=m;p[A+16>>3]=n;p[A+24>>3]=o;p[A+32>>3]=q;p[A+40>>3]=r;e=w6a(i,s)|0}else if((h|0)==15){p[A>>3]=o;p[A+8>>3]=q;p[A+16>>3]=r;p[A+24>>3]=l;p[A+32>>3]=m;p[A+40>>3]=n;e=w6a(s,i)|0}f[A+48>>2]=e;h=x6a(z,A)|0;e=h+144|0;g=f[e>>2]|0;if((g|0)!=2){I=+p[w>>3];r=+p[v>>3];q=+p[t>>3];o=+p[F>>3];n=+p[E>>3];m=+p[D>>3];l=+p[C>>3];k=+p[B>>3];j=+p[c>>3];f[e>>2]=g+1;p[h+(g*72|0)>>3]=j;p[h+(g*72|0)+8>>3]=k;p[h+(g*72|0)+16>>3]=l;p[h+(g*72|0)+24>>3]=m;p[h+(g*72|0)+32>>3]=n;p[h+(g*72|0)+40>>3]=o;p[h+(g*72|0)+48>>3]=q;p[h+(g*72|0)+56>>3]=r;p[h+(g*72|0)+64>>3]=I}l=+p[t>>3];p[x>>3]=l;m=+p[v>>3];p[x+8>>3]=m;n=+p[w>>3];p[x+16>>3]=n;o=+p[c>>3];p[y>>3]=o;q=+p[B>>3];p[y+8>>3]=q;r=+p[C>>3];p[y+16>>3]=r;if(l!=o){j=o;k=l;h=21}else if(m!=q){j=q;k=m;h=21}else if(n>3]=l;p[A+8>>3]=m;p[A+16>>3]=n;p[A+24>>3]=o;p[A+32>>3]=q;p[A+40>>3]=r;e=w6a(x,y)|0}else if((h|0)==23){p[A>>3]=o;p[A+8>>3]=q;p[A+16>>3]=r;p[A+24>>3]=l;p[A+32>>3]=m;p[A+40>>3]=n;e=w6a(y,x)|0}f[A+48>>2]=e;e=x6a(z,A)|0;g=e+144|0;h=f[g>>2]|0;if((h|0)!=2){I=+p[w>>3];r=+p[v>>3];q=+p[t>>3];o=+p[F>>3];n=+p[E>>3];m=+p[D>>3];l=+p[C>>3];k=+p[B>>3];j=+p[c>>3];f[g>>2]=h+1;p[e+(h*72|0)>>3]=j;p[e+(h*72|0)+8>>3]=k;p[e+(h*72|0)+16>>3]=l;p[e+(h*72|0)+24>>3]=m;p[e+(h*72|0)+32>>3]=n;p[e+(h*72|0)+40>>3]=o;p[e+(h*72|0)+48>>3]=q;p[e+(h*72|0)+56>>3]=r;p[e+(h*72|0)+64>>3]=I}}if(jjb(f[a+4>>2]|0,c,f[a+8>>2]|0,f[f[a+12>>2]>>2]|0,0)|0){d=G+2928|0;G=f[d>>2]|0;G=G+1|0;f[d>>2]=G;u=H;return}e=c+24|0;g=c+48|0;h=G+2640|0;i=f[h>>2]|0;if(i>>>0<(f[G+2644>>2]|0)>>>0){p[i>>3]=+p[c>>3];p[i+8>>3]=+p[c+8>>3];p[i+16>>3]=+p[c+16>>3];p[i+24>>3]=+p[e>>3];p[i+32>>3]=+p[c+32>>3];p[i+40>>3]=+p[c+40>>3];p[i+48>>3]=+p[g>>3];p[i+56>>3]=+p[c+56>>3];p[i+64>>3]=+p[c+64>>3];c=i+72|0;f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[h>>2]=(f[h>>2]|0)+88}else y6a(G+2636|0,c,e,g,d);d=G+2936|0;G=f[d>>2]|0;G=G+1|0;f[d>>2]=G;u=H;return}function s6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+4|0;d=f[l>>2]|0;m=f[a>>2]|0;h=(d-m|0)/72|0;c=h+1|0;j=m;if(c>>>0>59652323)AMb(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/72|0;e=i<<1;e=i>>>0<29826161?(e>>>0>>0?c:e):59652323;do if(!e)g=0;else if(e>>>0>59652323)vd();else{g=pOb(e*72|0)|0;break}while(0);c=g+(h*72|0)|0;i=g+(e*72|0)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];f[c+16>>2]=f[b+16>>2];f[c+20>>2]=f[b+20>>2];p[c>>3]=+p[b>>3];p[g+(h*72|0)+8>>3]=+p[b+8>>3];p[g+(h*72|0)+16>>3]=+p[b+16>>3];e=g+(h*72|0)+24|0;n=b+24|0;f[e>>2]=f[n>>2];f[e+4>>2]=f[n+4>>2];f[e+8>>2]=f[n+8>>2];f[e+12>>2]=f[n+12>>2];f[e+16>>2]=f[n+16>>2];f[e+20>>2]=f[n+20>>2];p[e>>3]=+p[n>>3];p[g+(h*72|0)+32>>3]=+p[b+32>>3];p[g+(h*72|0)+40>>3]=+p[b+40>>3];e=g+(h*72|0)+48|0;n=b+48|0;f[e>>2]=f[n>>2];f[e+4>>2]=f[n+4>>2];f[e+8>>2]=f[n+8>>2];f[e+12>>2]=f[n+12>>2];f[e+16>>2]=f[n+16>>2];f[e+20>>2]=f[n+20>>2];p[e>>3]=+p[n>>3];p[g+(h*72|0)+56>>3]=+p[b+56>>3];p[g+(h*72|0)+64>>3]=+p[b+64>>3];e=c+72|0;if((d|0)!=(j|0))do{n=d;d=d+-72|0;p[c+-72>>3]=+p[d>>3];p[c+-64>>3]=+p[n+-64>>3];p[c+-56>>3]=+p[n+-56>>3];p[c+-48>>3]=+p[n+-48>>3];p[c+-40>>3]=+p[n+-40>>3];p[c+-32>>3]=+p[n+-32>>3];p[c+-24>>3]=+p[n+-24>>3];p[c+-16>>3]=+p[n+-16>>3];p[c+-8>>3]=+p[n+-8>>3];c=c+-72|0}while((d|0)!=(j|0));f[a>>2]=c;f[l>>2]=e;f[k>>2]=i;if(!m)return;sOb(m);return}function t6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+4|0;d=f[l>>2]|0;m=f[a>>2]|0;h=(d-m|0)/72|0;c=h+1|0;j=m;if(c>>>0>59652323)AMb(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/72|0;e=i<<1;e=i>>>0<29826161?(e>>>0>>0?c:e):59652323;do if(!e)g=0;else if(e>>>0>59652323)vd();else{g=pOb(e*72|0)|0;break}while(0);c=g+(h*72|0)|0;i=g+(e*72|0)|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];f[c+16>>2]=f[b+16>>2];f[c+20>>2]=f[b+20>>2];p[c>>3]=+p[b>>3];p[g+(h*72|0)+8>>3]=+p[b+8>>3];p[g+(h*72|0)+16>>3]=+p[b+16>>3];e=g+(h*72|0)+24|0;n=b+24|0;f[e>>2]=f[n>>2];f[e+4>>2]=f[n+4>>2];f[e+8>>2]=f[n+8>>2];f[e+12>>2]=f[n+12>>2];f[e+16>>2]=f[n+16>>2];f[e+20>>2]=f[n+20>>2];p[e>>3]=+p[n>>3];p[g+(h*72|0)+32>>3]=+p[b+32>>3];p[g+(h*72|0)+40>>3]=+p[b+40>>3];e=g+(h*72|0)+48|0;n=b+48|0;f[e>>2]=f[n>>2];f[e+4>>2]=f[n+4>>2];f[e+8>>2]=f[n+8>>2];f[e+12>>2]=f[n+12>>2];f[e+16>>2]=f[n+16>>2];f[e+20>>2]=f[n+20>>2];p[e>>3]=+p[n>>3];p[g+(h*72|0)+56>>3]=+p[b+56>>3];p[g+(h*72|0)+64>>3]=+p[b+64>>3];e=c+72|0;if((d|0)!=(j|0))do{n=d;d=d+-72|0;p[c+-72>>3]=+p[d>>3];p[c+-64>>3]=+p[n+-64>>3];p[c+-56>>3]=+p[n+-56>>3];p[c+-48>>3]=+p[n+-48>>3];p[c+-40>>3]=+p[n+-40>>3];p[c+-32>>3]=+p[n+-32>>3];p[c+-24>>3]=+p[n+-24>>3];p[c+-16>>3]=+p[n+-16>>3];p[c+-8>>3]=+p[n+-8>>3];c=c+-72|0}while((d|0)!=(j|0));f[a>>2]=c;f[l>>2]=e;f[k>>2]=i;if(!m)return;sOb(m);return}function u6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;d=f[l>>2]|0;m=f[a>>2]|0;h=(d-m|0)/72|0;c=h+1|0;j=m;if(c>>>0>59652323)AMb(a);k=a+8|0;i=((f[k>>2]|0)-m|0)/72|0;e=i<<1;e=i>>>0<29826161?(e>>>0>>0?c:e):59652323;do if(!e)g=0;else if(e>>>0>59652323)vd();else{g=pOb(e*72|0)|0;break}while(0);c=g+(h*72|0)|0;i=g+(e*72|0)|0;p[c>>3]=+p[b>>3];p[g+(h*72|0)+8>>3]=+p[b+8>>3];p[g+(h*72|0)+16>>3]=+p[b+16>>3];p[g+(h*72|0)+24>>3]=+p[b+24>>3];p[g+(h*72|0)+32>>3]=+p[b+32>>3];p[g+(h*72|0)+40>>3]=+p[b+40>>3];p[g+(h*72|0)+48>>3]=+p[b+48>>3];p[g+(h*72|0)+56>>3]=+p[b+56>>3];p[g+(h*72|0)+64>>3]=+p[b+64>>3];e=c+72|0;if((d|0)!=(j|0))do{h=d;d=d+-72|0;p[c+-72>>3]=+p[d>>3];p[c+-64>>3]=+p[h+-64>>3];p[c+-56>>3]=+p[h+-56>>3];p[c+-48>>3]=+p[h+-48>>3];p[c+-40>>3]=+p[h+-40>>3];p[c+-32>>3]=+p[h+-32>>3];p[c+-24>>3]=+p[h+-24>>3];p[c+-16>>3]=+p[h+-16>>3];p[c+-8>>3]=+p[h+-8>>3];c=c+-72|0}while((d|0)!=(j|0));f[a>>2]=c;f[l>>2]=e;f[k>>2]=i;if(!m)return;sOb(m);return}function v6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;k=f[b>>2]|0;m=f[b+4>>2]|0;q=m+-1640531527+(k<<6)+(k>>>2)^k;j=f[b+8>>2]|0;q=j+-1640531527+(q<<6)+(q>>>2)^q;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(p)c=0;else{i=h+-1|0;d=(i&h|0)==0;if(d)l=q&i;else if(q>>>0>>0)l=q;else l=(q>>>0)%(h>>>0)|0;c=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!c)c=l;else{c=f[c>>2]|0;if(!c)c=l;else{if(d){while(1){d=f[c+4>>2]|0;if(!((d|0)==(q|0)|(d&i|0)==(l|0))){c=l;break a}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(m|0))if((f[c+16>>2]|0)==(j|0))break;c=f[c>>2]|0;if(!c){c=l;break a}}a=c+20|0;return a|0}while(1){d=f[c+4>>2]|0;if((d|0)!=(q|0)){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(l|0)){c=l;break a}}if((f[c+8>>2]|0)==(k|0))if((f[c+12>>2]|0)==(m|0))if((f[c+16>>2]|0)==(j|0))break;c=f[c>>2]|0;if(!c){c=l;break a}}a=c+20|0;return a|0}}}while(0);j=pOb(40)|0;i=j+8|0;f[i>>2]=f[b>>2];f[i+4>>2]=f[b+4>>2];f[i+8>>2]=f[b+8>>2];i=j+20|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[j+36>>2]=1.0;f[j+4>>2]=q;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;d=~~+W(+(e/g))>>>0;B6a(a,c>>>0>>0?d:c);c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&q;break}if(q>>>0>>0){h=c;c=q}else{h=c;c=(q>>>0)%(c>>>0)|0}}while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;r=35}}else{f[j>>2]=f[c>>2];r=35}if((r|0)==35)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+20|0;return a|0}function w6a(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0,g=0;c=+p[a>>3];if(c==0.0)e=0;else{p[s>>3]=c;d=X(f[s>>2]|0,1540483477)|0;e=X(f[s+4>>2]|0,1540483477)|0;e=(X((X(d>>>24^d,1540483477)|0)^-561034072,1540483477)|0)^(X(e>>>24^e,1540483477)|0);e=X(e>>>13^e,1540483477)|0;e=e>>>15^e}c=+p[a+8>>3];if(c==0.0)d=-1640531527;else{p[s>>3]=c;g=X(f[s>>2]|0,1540483477)|0;d=X(f[s+4>>2]|0,1540483477)|0;d=(X((X(g>>>24^g,1540483477)|0)^-561034072,1540483477)|0)^(X(d>>>24^d,1540483477)|0);d=X(d>>>13^d,1540483477)|0;d=(d>>>15^d)+-1640531527|0}e=(e>>>2)+(e<<6)+d^e;c=+p[a+16>>3];if(c==0.0)d=-1640531527;else{p[s>>3]=c;g=X(f[s>>2]|0,1540483477)|0;d=X(f[s+4>>2]|0,1540483477)|0;d=(X((X(g>>>24^g,1540483477)|0)^-561034072,1540483477)|0)^(X(d>>>24^d,1540483477)|0);d=X(d>>>13^d,1540483477)|0;d=(d>>>15^d)+-1640531527|0}e=(e>>>2)+(e<<6)+d^e;c=+p[b>>3];if(c==0.0)d=-1640531527;else{p[s>>3]=c;g=X(f[s>>2]|0,1540483477)|0;d=X(f[s+4>>2]|0,1540483477)|0;d=(X((X(g>>>24^g,1540483477)|0)^-561034072,1540483477)|0)^(X(d>>>24^d,1540483477)|0);d=X(d>>>13^d,1540483477)|0;d=(d>>>15^d)+-1640531527|0}e=(e>>>2)+(e<<6)+d^e;c=+p[b+8>>3];if(c==0.0)d=-1640531527;else{p[s>>3]=c;g=X(f[s>>2]|0,1540483477)|0;d=X(f[s+4>>2]|0,1540483477)|0;d=(X((X(g>>>24^g,1540483477)|0)^-561034072,1540483477)|0)^(X(d>>>24^d,1540483477)|0);d=X(d>>>13^d,1540483477)|0;d=(d>>>15^d)+-1640531527|0}d=(e>>>2)+(e<<6)+d^e;c=+p[b+16>>3];if(c==0.0){g=-1640531527;b=d<<6;a=d>>>2;b=a+b|0;g=b+g|0;g=g^d;return g|0}p[s>>3]=c;b=X(f[s>>2]|0,1540483477)|0;g=X(f[s+4>>2]|0,1540483477)|0;g=(X((X(b>>>24^b,1540483477)|0)^-561034072,1540483477)|0)^(X(g>>>24^g,1540483477)|0);g=X(g>>>13^g,1540483477)|0;g=(g>>>15^g)+-1640531527|0;b=d<<6;a=d>>>2;b=a+b|0;g=b+g|0;g=g^d;return g|0}function x6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0,t=0,u=0;t=f[b+48>>2]|0;r=a+4|0;h=f[r>>2]|0;s=(h|0)==0;a:do if(s)c=0;else{i=h+-1|0;d=(i&h|0)==0;if(d)q=i&t;else if(t>>>0>>0)q=t;else q=(t>>>0)%(h>>>0)|0;c=f[(f[a>>2]|0)+(q<<2)>>2]|0;if(!c)c=q;else{c=f[c>>2]|0;if(!c)c=q;else{j=b+8|0;k=b+16|0;l=b+24|0;m=b+32|0;o=b+40|0;if(d){while(1){d=f[c+4>>2]|0;if(!((d|0)==(t|0)|(d&i|0)==(q|0))){c=q;break a}if((f[c+56>>2]|0)==(t|0))if(+p[c+8>>3]==+p[b>>3])if(+p[c+16>>3]==+p[j>>3])if(+p[c+24>>3]==+p[k>>3])if(+p[c+32>>3]==+p[l>>3])if(+p[c+40>>3]==+p[m>>3])if(+p[c+48>>3]==+p[o>>3])break;c=f[c>>2]|0;if(!c){c=q;break a}}a=c+64|0;return a|0}while(1){d=f[c+4>>2]|0;if((d|0)!=(t|0)){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0;if((d|0)!=(q|0)){c=q;break a}}if((f[c+56>>2]|0)==(t|0))if(+p[c+8>>3]==+p[b>>3])if(+p[c+16>>3]==+p[j>>3])if(+p[c+24>>3]==+p[k>>3])if(+p[c+32>>3]==+p[l>>3])if(+p[c+40>>3]==+p[m>>3])if(+p[c+48>>3]==+p[o>>3])break;c=f[c>>2]|0;if(!c){c=q;break a}}a=c+64|0;return a|0}}}while(0);j=pOb(216)|0;p[j+8>>3]=+p[b>>3];p[j+16>>3]=+p[b+8>>3];p[j+24>>3]=+p[b+16>>3];p[j+32>>3]=+p[b+24>>3];p[j+40>>3]=+p[b+32>>3];p[j+48>>3]=+p[b+40>>3];f[j+56>>2]=t;dQb(j+64|0,0,152)|0;f[j+4>>2]=t;f[j>>2]=0;i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(s|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;d=~~+W(+(e/g))>>>0;z6a(a,c>>>0>>0?d:c);c=f[r>>2]|0;d=c+-1|0;if(!(d&c)){h=c;c=d&t;break}if(t>>>0>>0){h=c;c=t}else{h=c;c=(t>>>0)%(c>>>0)|0}}while(0);d=(f[a>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){c=a+8|0;f[j>>2]=f[c>>2];f[c>>2]=j;f[d>>2]=c;c=f[j>>2]|0;if(c|0){c=f[c+4>>2]|0;d=h+-1|0;if(!(d&h))c=c&d;else if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0;c=(f[a>>2]|0)+(c<<2)|0;u=43}}else{f[j>>2]=f[c>>2];u=43}if((u|0)==43)f[c>>2]=j;f[i>>2]=(f[i>>2]|0)+1;a=j;a=a+64|0;return a|0}function y6a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;r=a+4|0;g=f[r>>2]|0;j=f[a>>2]|0;l=(g-j|0)/88|0;h=l+1|0;o=j;i=g;if(h>>>0>48806446)AMb(a);q=a+8|0;n=((f[q>>2]|0)-j|0)/88|0;j=n<<1;j=n>>>0<24403223?(j>>>0>>0?h:j):48806446;do if(!j)k=0;else if(j>>>0>48806446)vd();else{k=pOb(j*88|0)|0;break}while(0);m=k+(l*88|0)|0;h=m;n=k+(j*88|0)|0;p[m>>3]=+p[b>>3];p[k+(l*88|0)+8>>3]=+p[b+8>>3];p[k+(l*88|0)+16>>3]=+p[b+16>>3];p[k+(l*88|0)+24>>3]=+p[c>>3];p[k+(l*88|0)+32>>3]=+p[c+8>>3];p[k+(l*88|0)+40>>3]=+p[c+16>>3];p[k+(l*88|0)+48>>3]=+p[d>>3];p[k+(l*88|0)+56>>3]=+p[d+8>>3];p[k+(l*88|0)+64>>3]=+p[d+16>>3];j=k+(l*88|0)+72|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];j=m+88|0;if((i|0)!=(o|0)){g=m;do{l=i;i=i+-88|0;p[g+-88>>3]=+p[i>>3];p[g+-80>>3]=+p[l+-80>>3];p[g+-72>>3]=+p[l+-72>>3];p[g+-64>>3]=+p[l+-64>>3];p[g+-56>>3]=+p[l+-56>>3];p[g+-48>>3]=+p[l+-48>>3];p[g+-40>>3]=+p[l+-40>>3];p[g+-32>>3]=+p[l+-32>>3];p[g+-24>>3]=+p[l+-24>>3];m=g+-16|0;l=l+-16|0;f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];f[m+8>>2]=f[l+8>>2];g=h+-88|0;h=g}while((i|0)!=(o|0));g=f[a>>2]|0}f[a>>2]=h;f[r>>2]=j;f[q>>2]=n;if(!g)return;sOb(g);return}function z6a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){A6a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;A6a(a,b);return}function A6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();t=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=t;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;s=b+-1|0;t=(s&b|0)==0;if(t)c=c&s;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){r=d;b:while(1){c:do if(t){d=e;while(1){q=f[d+4>>2]&s;if((q|0)==(c|0))break c;e=(f[a>>2]|0)+(q<<2)|0;if(!(f[e>>2]|0)){c=q;break b}k=d+16|0;l=d+24|0;m=d+32|0;n=d+40|0;o=d+48|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+56>>2]|0;j=d+8|0;e=d;while(1){if((i|0)!=(f[h+56>>2]|0))break d;if(!(+p[j>>3]==+p[h+8>>3]))break d;if(!(+p[k>>3]==+p[h+16>>3]))break d;if(!(+p[l>>3]==+p[h+24>>3]))break d;if(!(+p[m>>3]==+p[h+32>>3]))break d;if(!(+p[n>>3]==+p[h+40>>3]))break d;if(!(+p[o>>3]==+p[h+48>>3]))break d;e=f[h>>2]|0;if(!e){e=h;break}else{u=h;h=e;e=u}}}while(0);f[r>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(q<<2)>>2]>>2];f[f[(f[a>>2]|0)+(q<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=49;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)q=e;else q=(e>>>0)%(b>>>0)|0;if((q|0)==(c|0))break c;e=(f[a>>2]|0)+(q<<2)|0;if(!(f[e>>2]|0)){c=q;break b}k=d+16|0;l=d+24|0;m=d+32|0;n=d+40|0;o=d+48|0;h=f[d>>2]|0;e:do if(!h)e=d;else{i=f[d+56>>2]|0;j=d+8|0;e=d;while(1){if((i|0)!=(f[h+56>>2]|0))break e;if(!(+p[j>>3]==+p[h+8>>3]))break e;if(!(+p[k>>3]==+p[h+16>>3]))break e;if(!(+p[l>>3]==+p[h+24>>3]))break e;if(!(+p[m>>3]==+p[h+32>>3]))break e;if(!(+p[n>>3]==+p[h+40>>3]))break e;if(!(+p[o>>3]==+p[h+48>>3]))break e;e=f[h>>2]|0;if(!e){e=h;break}else{u=h;h=e;e=u}}}while(0);f[r>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(q<<2)>>2]>>2];f[f[(f[a>>2]|0)+(q<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=49;break a}}}while(0);e=f[d>>2]|0;if(!e){c=49;break a}else{g=d;r=d}}f[e>>2]=r;e=f[d>>2]|0;if(!e){c=49;break}else g=d}if((c|0)==49)return}function B6a(a,b){a=a|0;b=b|0;var c=0,d=0;if((b|0)==1)b=2;else if(b+-1&b)b=hDb(b)|0;d=f[a+4>>2]|0;if(b>>>0>d>>>0){C6a(a,b);return}if(b>>>0>=d>>>0)return;c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=hDb(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;C6a(a,b);return}function C6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)sOb(c);f[d>>2]=0;return}if(b>>>0>1073741823)vd();o=pOb(b<<2)|0;c=f[a>>2]|0;f[a>>2]=o;if(c|0)sOb(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;h=f[d>>2]|0;if(!h)return;c=f[h+4>>2]|0;n=b+-1|0;o=(n&b|0)==0;if(o)c=c&n;else if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[h>>2]|0;if(!d)return;else{g=h;e=d;d=h}a:while(1){m=d;b:while(1){c:do if(o){d=e;while(1){l=f[d+4>>2]&n;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}j=d+12|0;k=d+16|0;h=f[d>>2]|0;d:do if(!h)e=d;else{i=f[d+8>>2]|0;e=d;while(1){if((i|0)!=(f[h+8>>2]|0))break d;if((f[j>>2]|0)!=(f[h+12>>2]|0))break d;if((f[k>>2]|0)!=(f[h+16>>2]|0))break d;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}else{d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>>0)l=e;else l=(e>>>0)%(b>>>0)|0;if((l|0)==(c|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){c=l;break b}i=d+12|0;j=d+16|0;h=f[d>>2]|0;e:do if(!h)e=d;else{k=f[d+8>>2]|0;e=d;while(1){if((k|0)!=(f[h+8>>2]|0))break e;if((f[i>>2]|0)!=(f[h+12>>2]|0))break e;if((f[j>>2]|0)!=(f[h+16>>2]|0))break e;e=f[h>>2]|0;if(!e){e=h;break}else{p=h;h=e;e=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[g>>2]|0;if(!d){c=41;break a}}}while(0);e=f[d>>2]|0;if(!e){c=41;break a}else{g=d;m=d}}f[e>>2]=m;e=f[d>>2]|0;if(!e){c=41;break}else g=d}if((c|0)==41)return}function D6a(a){a=a|0;sOb(a);return}function E6a(a){a=a|0;var b=0,c=0,d=0;b=pOb(12)|0;f[b>>2]=4e4;d=a+4|0;c=f[d+4>>2]|0;a=b+4|0;f[a>>2]=f[d>>2];f[a+4>>2]=c;return b|0}function F6a(a,b){a=a|0;b=b|0;var c=0;f[b>>2]=4e4;c=a+4|0;a=f[c+4>>2]|0;b=b+4|0;f[b>>2]=f[c>>2];f[b+4>>2]=a;return}function G6a(a){a=a|0;return}function H6a(a){a=a|0;sOb(a);return}function I6a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=u;u=u+32|0;l=e+16|0;g=e;b=f[b>>2]|0;yqb(l,c,f[d>>2]|0);i=$Cb(+n[l>>2]*255.0)|0;j=$Cb(+n[l+4>>2]*255.0)|0;h=$Cb(+n[l+8>>2]*255.0)|0;d=~~+iQb(+(+n[l+12>>2]*255.0))&255;l=c+116|0;k=f[l+4>>2]|0;c=g;f[c>>2]=f[l>>2];f[c+4>>2]=k;f[g+8>>2]=j<<8&65280|i&255|h<<16&16711680|(d&255)<<24;p6a(f[a+4>>2]|0,b,g,f[(f[a+8>>2]|0)+4>>2]|0,0);u=e;return}function J6a(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==197140?a+4|0:0)|0}function K6a(a){a=a|0;return 15488}function L6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+4|0;e=f[n>>2]|0;g=f[a>>2]|0;j=e-g>>3;c=j+1|0;k=g;if(c>>>0>536870911)AMb(a);m=a+8|0;l=(f[m>>2]|0)-g|0;h=l>>2;h=l>>3>>>0<268435455?(h>>>0>>0?c:h):536870911;do if(!h)i=0;else if(h>>>0>536870911)vd();else{i=pOb(h<<3)|0;break}while(0);d=i+(j<<3)|0;c=d;l=i+(h<<3)|0;f[d>>2]=f[b>>2];h=b+4|0;f[i+(j<<3)+4>>2]=f[h>>2];f[b>>2]=0;f[h>>2]=0;h=d+8|0;if((e|0)!=(k|0)){do{j=e;e=e+-8|0;f[d+-8>>2]=f[e>>2];j=j+-4|0;f[d+-4>>2]=f[j>>2];f[e>>2]=0;f[j>>2]=0;d=c+-8|0;c=d}while((e|0)!=(k|0));g=f[a>>2]|0}f[a>>2]=c;c=f[n>>2]|0;f[n>>2]=h;f[m>>2]=l;e=g;if((c|0)!=(e|0))do{d=f[c+-4>>2]|0;c=c+-8|0;if(d|0)iOb(d)}while((c|0)!=(e|0));if(!g)return;sOb(g);return}function M6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;g=f[j>>2]|0;k=a+4|0;c=f[k>>2]|0;if(((g-c|0)/88|0)>>>0>=b>>>0){do{d=c+88|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));c=(f[k>>2]|0)+88|0;f[k>>2]=c;b=b+-1|0}while((b|0)!=0);return}d=f[a>>2]|0;e=(c-d|0)/88|0;c=e+b|0;if(c>>>0>48806446)AMb(a);g=(g-d|0)/88|0;i=g<<1;c=g>>>0<24403223?(i>>>0>>0?c:i):48806446;do if(!c)h=0;else if(c>>>0>48806446)vd();else{h=pOb(c*88|0)|0;break}while(0);i=h+(e*88|0)|0;g=i;e=h+(c*88|0)|0;c=i;h=g;do{d=c+88|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));c=h+88|0;h=c;b=b+-1|0}while((b|0)!=0);c=f[a>>2]|0;d=f[k>>2]|0;if((d|0)==(c|0))b=g;else{b=i;do{i=d;d=d+-88|0;p[b+-88>>3]=+p[d>>3];p[b+-80>>3]=+p[i+-80>>3];p[b+-72>>3]=+p[i+-72>>3];p[b+-64>>3]=+p[i+-64>>3];p[b+-56>>3]=+p[i+-56>>3];p[b+-48>>3]=+p[i+-48>>3];p[b+-40>>3]=+p[i+-40>>3];p[b+-32>>3]=+p[i+-32>>3];p[b+-24>>3]=+p[i+-24>>3];p[b+-16>>3]=+p[i+-16>>3];p[b+-8>>3]=+p[i+-8>>3];b=b+-88|0}while((d|0)!=(c|0));c=f[a>>2]|0}f[a>>2]=b;f[k>>2]=h;f[j>>2]=e;if(!c)return;sOb(c);return}function N6a(a){a=a|0;var b=0,c=0,d=0,e=0.0,g=0.0,h=0.0,i=0.0,j=0;d=f[a>>2]|0;b=(f[a+4>>2]|0)-d|0;c=(b|0)/88|0;b=(b|0)==0;if(b)return;else a=0;do{j=d+(a*88|0)+24|0;p[j>>3]=-+p[j>>3];h=+p[d+(a*88|0)>>3];g=+K(+h);p[d+(a*88|0)+32>>3]=g;g=+p[d+(a*88|0)+8>>3];e=+K(+g);p[d+(a*88|0)+40>>3]=e;e=+p[d+(a*88|0)+16>>3];i=+K(+e);p[d+(a*88|0)+48>>3]=i;p[d+(a*88|0)+56>>3]=h>=0.0?1.0:-1.0;p[d+(a*88|0)+64>>3]=g>=0.0?1.0:-1.0;p[d+(a*88|0)+72>>3]=e>=0.0?1.0:-1.0;a=a+1|0}while(a>>>0>>0);if(b)return;else a=0;do{g=+p[d+(a*88|0)>>3];h=+p[d+(a*88|0)+8>>3];i=+p[d+(a*88|0)+16>>3];i=g*g+(h*h+i*i);p[d+(a*88|0)+80>>3]=i==0.0?0.0:1.0/i;a=a+1|0}while(a>>>0>>0);return}function O6a(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=0;s=u;u=u+2624|0;i=s;b[i>>0]=b[c>>0]|0;q=i+4|0;xOb(q,c+4|0);l=i+16|0;r=c+16|0;f[l>>2]=f[r>>2];f[l+4>>2]=f[r+4>>2];f[l+8>>2]=f[r+8>>2];f[l+12>>2]=f[r+12>>2];r=i+32|0;xOb(r,c+32|0);g=i+48|0;m=c+48|0;f[g>>2]=f[m>>2];f[g+4>>2]=f[m+4>>2];f[g+8>>2]=f[m+8>>2];f[g+12>>2]=f[m+12>>2];f[g+16>>2]=f[m+16>>2];f[g+20>>2]=f[m+20>>2];f[g+24>>2]=f[m+24>>2];f[g+28>>2]=f[m+28>>2];m=i+80|0;xOb(m,c+80|0);o=i+92|0;xOb(o,c+92|0);h=i+104|0;c=c+104|0;f[h>>2]=f[c>>2];f[h+4>>2]=f[c+4>>2];d[h+8>>1]=d[c+8>>1]|0;f[i+120>>2]=5489;c=1;e=5489;do{e=(X(e>>>30^e,1812433253)|0)+c|0;f[i+120+(c<<2)>>2]=e;c=c+1|0}while((c|0)!=624);f[i+2616>>2]=0;j=pOb(2968)|0;f[j>>2]=39820;b[j+8>>0]=b[i>>0]|0;k=j+12|0;f[k>>2]=f[q>>2];f[k+4>>2]=f[q+4>>2];f[k+8>>2]=f[q+8>>2];f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;k=j+24|0;f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];f[k+12>>2]=f[l+12>>2];e=j+40|0;f[e>>2]=f[r>>2];f[e+4>>2]=f[r+4>>2];f[e+8>>2]=f[r+8>>2];f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;e=j+56|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[e+16>>2]=f[g+16>>2];f[e+20>>2]=f[g+20>>2];f[e+24>>2]=f[g+24>>2];f[e+28>>2]=f[g+28>>2];e=j+88|0;f[e>>2]=f[m>>2];f[e+4>>2]=f[m+4>>2];f[e+8>>2]=f[m+8>>2];f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;e=j+100|0;f[e>>2]=f[o>>2];f[e+4>>2]=f[o+4>>2];f[e+8>>2]=f[o+8>>2];f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;e=j+112|0;f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];d[e+8>>1]=d[h+8>>1]|0;bQb(j+128|0,i+120|0,2500)|0;e=j+2632|0;f[j+2852>>2]=0;f[j+2856>>2]=0;f[j+2860>>2]=0;p[j+2912>>3]=0.0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;e=gDb()|0;c=j+2920|0;f[c>>2]=e;f[c+4>>2]=I;c=j+2964|0;e=j+2928|0;g=e+36|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));n[c>>2]=1.0;if(!(b[j+25>>0]|0))b[k>>0]=0;f[a>>2]=j;if((b[o+11>>0]|0)<0)sOb(f[o>>2]|0);if((b[m+11>>0]|0)<0)sOb(f[m>>2]|0);if((b[r+11>>0]|0)<0)sOb(f[r>>2]|0);if((b[q+11>>0]|0)>=0){u=s;return}sOb(f[q>>2]|0);u=s;return}function P6a(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0,n=0,o=0.0,q=0.0,r=0.0,s=0,t=0,v=0,w=0,x=0.0,y=0.0,z=0,A=0.0,B=0.0,C=0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0;C=u;u=u+16|0;v=C;A=+p[c>>3];B=+p[c+8>>3];l=+p[c+16>>3];k=+p[c+24>>3];y=k+(+p[d>>3]*A+(+p[d+8>>3]*B+ +p[d+16>>3]*l));w=!(+K(+y)<=f);g=!(y>0.0)&1;c=w?g:2;b[v>>0]=c;y=k+(A*+p[d+24>>3]+(B*+p[d+32>>3]+l*+p[d+40>>3]));t=!(+K(+y)<=f);h=t?!(y>0.0)&1:2;b[v+1>>0]=h;y=k+(A*+p[d+48>>3]+(B*+p[d+56>>3]+l*+p[d+64>>3]));z=!(+K(+y)<=f);i=z?!(y>0.0)&1:2;b[v+2>>0]=i;switch((t?(w^1)&1:w?1:2)+((z^1)&1)&7){case 3:{d=0;z=0;e=2;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}case 2:{if(c<<24>>24!=2){d=0;z=0;e=g;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}d=0;z=0;e=b[v+(h<<24>>24==2?2:1)>>0]|0;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}case 1:{m=c<<24>>24==2?0:h<<24>>24==2?1:2;g=((m+1|0)>>>0)%3|0;c=((m+2|0)>>>0)%3|0;z=b[v+g>>0]|0;if(z<<24>>24==(b[v+c>>0]|0)){d=0;w=0;e=z;b[a>>0]=e;e=a+1|0;b[e>>0]=w;e=a+2|0;b[e>>0]=d;u=C;return}s=d+(c*24|0)|0;t=d+(g*24|0)|0;D=+p[t>>3];o=+p[s>>3]-D;v=d+(c*24|0)+8|0;w=d+(g*24|0)+8|0;q=+p[w>>3];r=+p[v>>3]-q;n=d+(c*24|0)+16|0;j=d+(g*24|0)+16|0;x=+p[j>>3];f=+p[n>>3]-x;y=+L(+(o*o+(r*r+f*f)));o=o/y;r=r/y;y=f/y;f=-(k+(A*D+(B*q+l*x)))/(A*o+(B*r+l*y));k=D+o*f;l=q+r*f;f=x+y*f;h=d+(m*24|0)|0;p[e>>3]=+p[h>>3];i=d+(m*24|0)+8|0;p[e+8>>3]=+p[i>>3];c=d+(m*24|0)+16|0;p[e+16>>3]=+p[c>>3];g=e+24|0;if(!(z<<24>>24)){p[g>>3]=+p[t>>3];p[e+32>>3]=+p[w>>3];p[e+40>>3]=+p[j>>3];p[e+48>>3]=k;p[e+56>>3]=l;p[e+64>>3]=f;p[e+72>>3]=+p[h>>3];p[e+80>>3]=+p[i>>3];p[e+88>>3]=+p[c>>3];p[e+96>>3]=k;p[e+104>>3]=l;p[e+112>>3]=f;p[e+120>>3]=+p[s>>3];p[e+128>>3]=+p[v>>3];f=+p[n>>3]}else{p[g>>3]=k;p[e+32>>3]=l;p[e+40>>3]=f;p[e+48>>3]=+p[s>>3];p[e+56>>3]=+p[v>>3];p[e+64>>3]=+p[n>>3];p[e+72>>3]=+p[h>>3];p[e+80>>3]=+p[i>>3];p[e+88>>3]=+p[c>>3];p[e+96>>3]=+p[t>>3];p[e+104>>3]=+p[w>>3];p[e+112>>3]=+p[j>>3];p[e+120>>3]=k;p[e+128>>3]=l}p[e+136>>3]=f;d=6;z=3;e=3;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}case 0:{j=c<<24>>24==0;h=h<<24>>24==0;c=i<<24>>24==0;g=j^h;if(!(g|j^c)){d=0;z=0;e=(j^1)&1;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}z=g?(h^c)&1:2;s=((z+1|0)>>>0)%3|0;c=((z+2|0)>>>0)%3|0;i=d+(s*24|0)|0;j=d+(z*24|0)|0;x=+p[i>>3];y=+p[j>>3];o=x-y;m=d+(s*24|0)+8|0;n=d+(z*24|0)+8|0;F=+p[n>>3];q=+p[m>>3]-F;s=d+(s*24|0)+16|0;t=d+(z*24|0)+16|0;E=+p[t>>3];G=+p[s>>3]-E;f=+L(+(o*o+(q*q+G*G)));o=o/f;q=q/f;f=G/f;G=-(k+(A*y+(B*F+l*E)));r=G/(A*o+(B*q+l*f));o=y+o*r;q=F+q*r;r=E+f*r;g=d+(c*24|0)|0;f=+p[g>>3]-y;h=d+(c*24|0)+8|0;k=+p[h>>3]-F;c=d+(c*24|0)+16|0;H=+p[c>>3]-E;D=+L(+(f*f+(k*k+H*H)));f=f/D;k=k/D;D=H/D;l=G/(A*f+(B*k+l*D));f=y+f*l;k=F+k*l;l=E+D*l;if(!(b[v+z>>0]|0)){p[e>>3]=y;p[e+8>>3]=+p[n>>3];p[e+16>>3]=+p[t>>3];p[e+24>>3]=o;p[e+32>>3]=q;p[e+40>>3]=r;p[e+48>>3]=f;p[e+56>>3]=k;p[e+64>>3]=l;p[e+72>>3]=+p[i>>3];p[e+80>>3]=+p[m>>3];p[e+88>>3]=+p[s>>3];p[e+96>>3]=+p[g>>3];p[e+104>>3]=+p[h>>3];p[e+112>>3]=+p[c>>3];p[e+120>>3]=o;p[e+128>>3]=q;p[e+136>>3]=r;p[e+144>>3]=+p[g>>3];p[e+152>>3]=+p[h>>3];p[e+160>>3]=+p[c>>3];p[e+168>>3]=f;p[e+176>>3]=k;p[e+184>>3]=l;p[e+192>>3]=o;p[e+200>>3]=q;p[e+208>>3]=r;d=9;z=3;e=3;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}else{p[e>>3]=x;p[e+8>>3]=+p[m>>3];p[e+16>>3]=+p[s>>3];p[e+24>>3]=+p[g>>3];p[e+32>>3]=+p[h>>3];p[e+40>>3]=+p[c>>3];p[e+48>>3]=o;p[e+56>>3]=q;p[e+64>>3]=r;p[e+72>>3]=+p[g>>3];p[e+80>>3]=+p[h>>3];p[e+88>>3]=+p[c>>3];p[e+96>>3]=f;p[e+104>>3]=k;p[e+112>>3]=l;p[e+120>>3]=o;p[e+128>>3]=q;p[e+136>>3]=r;p[e+144>>3]=+p[j>>3];p[e+152>>3]=+p[n>>3];p[e+160>>3]=+p[t>>3];p[e+168>>3]=o;p[e+176>>3]=q;p[e+184>>3]=r;p[e+192>>3]=f;p[e+200>>3]=k;p[e+208>>3]=l;d=9;z=6;e=3;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}}default:{d=0;z=0;e=4;b[a>>0]=e;e=a+1|0;b[e>>0]=z;e=a+2|0;b[e>>0]=d;u=C;return}}}function Q6a(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=+f;var g=0,h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;y=u;u=u+64|0;w=y+48|0;x=y+24|0;s=y;l=+p[c>>3];m=+p[c+8>>3];n=+p[c+16>>3];k=+p[c+24>>3];j=k+(+p[d>>3]*l+(+p[d+8>>3]*m+ +p[d+16>>3]*n));t=!(+K(+j)<=f);g=!(j>0.0)&1;h=t?g:2;b[w>>0]=h;j=k+(l*+p[d+24>>3]+(m*+p[d+32>>3]+n*+p[d+40>>3]));r=!(+K(+j)<=f);i=r?!(j>0.0)&1:2;b[w+1>>0]=i;n=k+(l*+p[d+48>>3]+(m*+p[d+56>>3]+n*+p[d+64>>3]));v=!(+K(+n)<=f);o=v?!(n>0.0)&1:2;b[w+2>>0]=o;switch((r?(t^1)&1:t?1:2)+((v^1)&1)&7){case 3:{b[a>>0]=2;b[a+1>>0]=0;b[a+2>>0]=0;u=y;return}case 2:{if(h<<24>>24==2)g=b[w+(i<<24>>24==2?2:1)>>0]|0;b[a>>0]=g;b[a+1>>0]=0;b[a+2>>0]=0;u=y;return}case 1:{g=h<<24>>24==2?0:i<<24>>24==2?1:2;s=((g+1|0)>>>0)%3|0;v=((g+2|0)>>>0)%3|0;t=b[w+s>>0]|0;if(t<<24>>24==(b[w+v>>0]|0)){b[a>>0]=t;b[a+1>>0]=0;b[a+2>>0]=0;u=y;return}q=d+(s*24|0)|0;r=d+(v*24|0)|0;R6a(x,q,r,c);i=d+(g*24|0)|0;p[e>>3]=+p[i>>3];o=d+(g*24|0)+8|0;p[e+8>>3]=+p[o>>3];g=d+(g*24|0)+16|0;p[e+16>>3]=+p[g>>3];h=e+24|0;if(!(t<<24>>24)){p[h>>3]=+p[q>>3];p[e+32>>3]=+p[d+(s*24|0)+8>>3];p[e+40>>3]=+p[d+(s*24|0)+16>>3];m=+p[x>>3];p[e+48>>3]=m;n=+p[x+8>>3];p[e+56>>3]=n;f=+p[x+16>>3];p[e+64>>3]=f;p[e+72>>3]=+p[i>>3];p[e+80>>3]=+p[o>>3];p[e+88>>3]=+p[g>>3];p[e+96>>3]=m;p[e+104>>3]=n;p[e+112>>3]=f;p[e+120>>3]=+p[r>>3];g=d+(v*24|0)+16|0;f=+p[d+(v*24|0)+8>>3]}else{n=+p[x>>3];p[h>>3]=n;f=+p[x+8>>3];p[e+32>>3]=f;x=x+16|0;p[e+40>>3]=+p[x>>3];p[e+48>>3]=+p[r>>3];p[e+56>>3]=+p[d+(v*24|0)+8>>3];p[e+64>>3]=+p[d+(v*24|0)+16>>3];p[e+72>>3]=+p[i>>3];p[e+80>>3]=+p[o>>3];p[e+88>>3]=+p[g>>3];p[e+96>>3]=+p[q>>3];p[e+104>>3]=+p[d+(s*24|0)+8>>3];p[e+112>>3]=+p[d+(s*24|0)+16>>3];p[e+120>>3]=n;g=x}p[e+128>>3]=f;p[e+136>>3]=+p[g>>3];b[a>>0]=3;b[a+1>>0]=3;b[a+2>>0]=6;u=y;return}case 0:{q=h<<24>>24==0;i=i<<24>>24==0;g=o<<24>>24==0;h=q^i;if(!(h|q^g)){b[a>>0]=(q^1)&1;b[a+1>>0]=0;b[a+2>>0]=0;u=y;return}r=h?(i^g)&1:2;o=d+(r*24|0)|0;g=((r+1|0)>>>0)%3|0;h=d+(g*24|0)|0;i=((r+2|0)>>>0)%3|0;q=d+(i*24|0)|0;R6a(x,o,h,c);R6a(s,o,q,c);if(!(b[w+r>>0]|0)){p[e>>3]=+p[o>>3];p[e+8>>3]=+p[d+(r*24|0)+8>>3];p[e+16>>3]=+p[d+(r*24|0)+16>>3];l=+p[x>>3];p[e+24>>3]=l;m=+p[x+8>>3];p[e+32>>3]=m;n=+p[x+16>>3];p[e+40>>3]=n;f=+p[s>>3];p[e+48>>3]=f;j=+p[s+8>>3];p[e+56>>3]=j;k=+p[s+16>>3];p[e+64>>3]=k;p[e+72>>3]=+p[h>>3];p[e+80>>3]=+p[d+(g*24|0)+8>>3];p[e+88>>3]=+p[d+(g*24|0)+16>>3];p[e+96>>3]=+p[q>>3];g=d+(i*24|0)+8|0;p[e+104>>3]=+p[g>>3];i=d+(i*24|0)+16|0;p[e+112>>3]=+p[i>>3];p[e+120>>3]=l;p[e+128>>3]=m;p[e+136>>3]=n;s=3;h=q}else{p[e>>3]=+p[h>>3];p[e+8>>3]=+p[d+(g*24|0)+8>>3];p[e+16>>3]=+p[d+(g*24|0)+16>>3];p[e+24>>3]=+p[q>>3];g=d+(i*24|0)+8|0;p[e+32>>3]=+p[g>>3];h=d+(i*24|0)+16|0;p[e+40>>3]=+p[h>>3];f=+p[x>>3];p[e+48>>3]=f;j=+p[x+8>>3];p[e+56>>3]=j;k=+p[x+16>>3];p[e+64>>3]=k;p[e+72>>3]=+p[q>>3];p[e+80>>3]=+p[g>>3];p[e+88>>3]=+p[h>>3];l=+p[s>>3];p[e+96>>3]=l;m=+p[s+8>>3];p[e+104>>3]=m;n=+p[s+16>>3];p[e+112>>3]=n;p[e+120>>3]=f;p[e+128>>3]=j;p[e+136>>3]=k;s=6;h=o;i=d+(r*24|0)+16|0;g=d+(r*24|0)+8|0}p[e+144>>3]=+p[h>>3];p[e+152>>3]=+p[g>>3];p[e+160>>3]=+p[i>>3];p[e+168>>3]=f;p[e+176>>3]=j;p[e+184>>3]=k;p[e+192>>3]=l;p[e+200>>3]=m;p[e+208>>3]=n;b[a>>0]=3;b[a+1>>0]=s;b[a+2>>0]=9;u=y;return}default:{b[a>>0]=4;b[a+1>>0]=0;b[a+2>>0]=0;u=y;return}}}function R6a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,g=0.0,h=0.0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0;j=+p[b>>3];k=+p[c>>3];if(j!=k){f=k;e=j;i=4}else{e=+p[b+8>>3];h=+p[c+8>>3];if(e!=h){f=h;i=4}else{g=+p[b+16>>3];f=+p[c+16>>3];if(g>3];h=+p[c+8>>3];g=+p[b+16>>3];f=+p[c+16>>3];i=7;break}else{h=+p[c+8>>3];e=+p[b+8>>3];f=+p[c+16>>3];g=+p[b+16>>3];i=8;break}while(0);if((i|0)==7){l=k-j;m=h-e;n=f-g;h=+L(+(l*l+(m*m+n*n)));l=l/h;f=m/h;h=n/h;n=+p[d>>3];m=+p[d+8>>3];k=+p[d+16>>3];k=-(+p[d+24>>3]+(j*n+(e*m+g*k)))/(l*n+(f*m+h*k));p[a>>3]=j+l*k;p[a+8>>3]=e+f*k;j=h*k;k=g;k=j+k;d=a+16|0;p[d>>3]=k;return}else if((i|0)==8){j=j-k;l=e-h;e=g-f;n=+L(+(j*j+(l*l+e*e)));j=j/n;l=l/n;n=e/n;e=+p[d>>3];g=+p[d+8>>3];m=+p[d+16>>3];m=-(+p[d+24>>3]+(k*e+(h*g+f*m)))/(j*e+(l*g+n*m));p[a>>3]=k+j*m;p[a+8>>3]=h+l*m;m=n*m;n=f;n=m+n;d=a+16|0;p[d>>3]=n;return}}function S6a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=+e;var f=0.0,g=0.0,h=0,i=0.0,j=0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,q=0,r=0.0,s=0,t=0,v=0,w=0.0,x=0,y=0,z=0,A=0,B=0.0,C=0.0,D=0.0;y=u;u=u+16|0;j=y;m=+p[a>>3];w=+p[c>>3];x=c+8|0;k=+p[a+8>>3];n=+p[x>>3];v=c+16|0;l=+p[a+16>>3];o=+p[v>>3];B=+p[a+24>>3];f=B+(m*w+(k*n+l*o));z=!(+K(+f)<=e);a=z?!(f>0.0)&1:2;b[j>>0]=a;q=c+24|0;r=+p[q>>3];s=c+32|0;g=+p[s>>3];t=c+40|0;i=+p[t>>3];B=B+(m*r+(k*g+l*i));A=!(+K(+B)<=e);h=A?!(B>0.0)&1:2;b[j+1>>0]=h;switch((A?(z^1)&1:z?1:2)&3){case 1:{A=b[j+(a<<24>>24==2&1)>>0]|0;u=y;return A|0}case 0:{a=a<<24>>24==0;if(!(h<<24>>24==0^a)){A=(a^1)&1;u=y;return A|0}D=r-w;C=g-n;e=i-o;B=+L(+(D*D+(C*C+e*e)));g=D/B;i=C/B;B=e/B;e=-f/(g*m+(i*k+B*l));g=w+g*e;f=n+i*e;e=o+B*e;if(a){p[d>>3]=w;p[d+8>>3]=+p[x>>3];p[d+16>>3]=+p[v>>3];p[d+24>>3]=g;p[d+32>>3]=f;p[d+40>>3]=e;p[d+48>>3]=g;p[d+56>>3]=f;p[d+64>>3]=e;p[d+72>>3]=+p[q>>3];p[d+80>>3]=+p[s>>3];p[d+88>>3]=+p[t>>3];A=3;u=y;return A|0}else{p[d>>3]=r;p[d+8>>3]=+p[s>>3];p[d+16>>3]=+p[t>>3];p[d+24>>3]=g;p[d+32>>3]=f;p[d+40>>3]=e;p[d+48>>3]=g;p[d+56>>3]=f;p[d+64>>3]=e;p[d+72>>3]=+p[c>>3];p[d+80>>3]=+p[x>>3];p[d+88>>3]=+p[v>>3];A=3;u=y;return A|0}}case 2:{A=2;u=y;return A|0}default:{A=4;u=y;return A|0}}return 0}function T6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>3;c=e+1|0;if(c>>>0>536870911)AMb(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>2;d=m>>3>>>0<268435455?(d>>>0>>0?c:d):536870911;do if(!d){h=0;i=0}else if(d>>>0>536870911)vd();else{i=pOb(d<<3)|0;h=i;break}while(0);c=h+(e<<3)|0;e=b;b=f[e+4>>2]|0;m=c;f[m>>2]=f[e>>2];f[m+4>>2]=b;if((k|0)>0)bQb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+8;f[l>>2]=h+(d<<3);if(!j)return;sOb(j);return}function U6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0.0;e=u;u=u+16|0;c=e;f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;i=f[b>>2]|0;g=ZCb(+p[i>>3])|0;i=_Cb(+p[i+8>>3])|0;f[c>>2]=g;f[c+4>>2]=i;T6a(a,c);i=f[b>>2]|0;j=+p[i+32>>3];b=f[d>>2]|0;g=f[a+8>>2]|0;i=ZCb(+p[i+24>>3])|0;h=_Cb(j)|0;f[c>>2]=i;f[c+4>>2]=h;if((b|0)==(g|0)){T6a(a,c);u=e;return}else{g=c;h=f[g+4>>2]|0;i=b;f[i>>2]=f[g>>2];f[i+4>>2]=h;f[d>>2]=(f[d>>2]|0)+8;u=e;return}}function V6a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0;d=+p[c+248>>3]*1.0e-06*+p[b+104>>3];c=pOb(256)|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;f[c+28>>2]=b+120;p[c+32>>3]=d;f[a>>2]=c;return}function W6a(a){a=a|0;X6a(a);return}function X6a(a){a=a|0;var b=0,c=0,d=0;d=f[a>>2]|0;f[a>>2]=0;if(!d)return;X6a(d+48|0);X6a(d+44|0);a=f[d+32>>2]|0;if(a|0){b=d+36|0;c=f[b>>2]|0;if((c|0)!=(a|0))f[b>>2]=c+(~(((c+-88-a|0)>>>0)/88|0)*88|0);sOb(a)}sOb(d);return}function Y6a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0.0;h=0;m=u;u=u+1072|0;if(b[(c+128|0)>>0]|0){l=1;u=m;return l|0}f[(m+40|0)>>2]=0;l=(m+40|0)+4|0;f[l>>2]=0;f[(m+40|0)+8>>2]=0;f[(m+28|0)>>2]=0;k=(m+28|0)+4|0;f[k>>2]=0;f[(m+28|0)+8>>2]=0;f[(m+16|0)>>2]=0;i=(m+16|0)+4|0;f[i>>2]=0;f[(m+16|0)+8>>2]=0;f[(m+8|0)>>2]=a;f[(m+8|0)+4>>2]=m+40|0;do if(!(f[(c+36|0)>>2]|0)){if((f[(c+24|0)>>2]|0)==(f[(c+28|0)>>2]|0)){b[(c+128|0)>>0]=1;j=1;break}Z6a(m,m+8|0,c+24|0);h=f[m>>2]|0;f[m>>2]=0;e=f[a>>2]|0;f[a>>2]=h;if(e|0){X6a(e+48|0);X6a(e+44|0);g=f[e+32>>2]|0;if(g|0){h=f[(e+36|0)>>2]|0;if((h|0)!=(g|0))f[(e+36|0)>>2]=h+(~(((h+-88-g|0)>>>0)/88|0)*88|0);sOb(g)}sOb(e)}X6a(m);f[a+24>>2]=((f[(c+28|0)>>2]|0)-(f[(c+24|0)>>2]|0)|0)/88|0;f[(c+36|0)>>2]=f[a>>2];g=(m+40|0)+8|0;h=13}else{_6a(m+40|0,c+40|0);g=(m+40|0)+8|0;h=13}while(0);do if((h|0)==13){e=(m+16|0)+8|0;a:while(1){o=f[(c+24|0)>>2]|0;j=f[(c+28|0)>>2]|0;f[m+80>>2]=a;f[m+88>>2]=c;f[m+96>>2]=d;f[m+144>>2]=g;f[m+168>>2]=l;f[m+176>>2]=k;f[m+200>>2]=i;f[m+872>>2]=e;f[m+880>>2]=o;f[m+888>>2]=j;f[m+976>>2]=h;f[m+1008>>2]=0;f[m+1012>>2]=0;M7a(m);h=f[m+976>>2]|0;G=f[m+1008>>2]|0;D=f[m+1012>>2]|0;H=+n[m+1012>>2];f[m+1008>>2]=0;f[m+1012>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 3:break a}}if((h|0)==69){e=f[(c+24|0)>>2]|0;g=f[(c+28|0)>>2]|0;if((g|0)!=(e|0))f[(c+28|0)>>2]=g+(~(((g+-88-e|0)>>>0)/88|0)*88|0);f[(c+36|0)>>2]=0}else if((h|0)==90)if(f[(c+36|0)>>2]|0){j=f[(m+40|0)>>2]|0;q=+p[j>>3];p[j>>3]=+p[(c+40|0)>>3];p[(c+40|0)>>3]=q;q=+p[(j+8|0)>>3];p[(j+8|0)>>3]=+p[(c+48|0)>>3];p[(c+48|0)>>3]=q;q=+p[(j+16|0)>>3];p[(j+16|0)>>3]=+p[(c+56|0)>>3];p[(c+56|0)>>3]=q;q=+p[(j+24|0)>>3];p[(j+24|0)>>3]=+p[(c+64|0)>>3];p[(c+64|0)>>3]=q;q=+p[(j+32|0)>>3];p[(j+32|0)>>3]=+p[(c+72|0)>>3];p[(c+72|0)>>3]=q;q=+p[(j+40|0)>>3];p[(j+40|0)>>3]=+p[(c+80|0)>>3];p[(c+80|0)>>3]=q;q=+p[(j+48|0)>>3];p[(j+48|0)>>3]=+p[(c+88|0)>>3];p[(c+88|0)>>3]=q;q=+p[(j+56|0)>>3];p[(j+56|0)>>3]=+p[(c+96|0)>>3];p[(c+96|0)>>3]=q;q=+p[(j+64|0)>>3];p[(j+64|0)>>3]=+p[(c+104|0)>>3];p[(c+104|0)>>3]=q;f[(c+112|0)>>2]=f[(j+72|0)>>2];f[(c+112|0)+4>>2]=f[(j+72|0)+4>>2];f[(c+112|0)+8>>2]=f[(j+72|0)+8>>2];j=0;break}b[(c+128|0)>>0]=1;f[(c+36|0)>>2]=0;j=1}while(0);e=f[(m+16|0)>>2]|0;if(e|0){g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~(((g+-88-e|0)>>>0)/88|0)*88|0);sOb(e)}e=f[(m+28|0)>>2]|0;if(e|0){g=f[k>>2]|0;if((g|0)!=(e|0))f[k>>2]=g+(~(((g+-88-e|0)>>>0)/88|0)*88|0);sOb(e)}e=f[(m+40|0)>>2]|0;if(e|0){g=f[l>>2]|0;if((g|0)!=(e|0))f[l>>2]=g+(~(((g+-88-e|0)>>>0)/88|0)*88|0);sOb(e)}o=j;u=m;return o|0}function Z6a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,q=0.0,r=0.0,s=0.0,t=0,v=0.0,w=0,x=0.0,y=0,z=0.0,A=0,B=0.0,C=0,D=0,E=0,F=0.0;m=u;u=u+32|0;j=m;k=f[b>>2]|0;l=e7a(c,f[k+28>>2]|0,+p[k+32>>3])|0;i=b+4|0;b=f[i>>2]|0;d=f[c>>2]|0;e=d+(l*88|0)|0;g=b+4|0;h=f[g>>2]|0;if((h|0)==(f[b+8>>2]|0))V4a(b,e);else{p[h>>3]=+p[e>>3];p[h+8>>3]=+p[d+(l*88|0)+8>>3];p[h+16>>3]=+p[d+(l*88|0)+16>>3];p[h+24>>3]=+p[d+(l*88|0)+24>>3];p[h+32>>3]=+p[d+(l*88|0)+32>>3];p[h+40>>3]=+p[d+(l*88|0)+40>>3];p[h+48>>3]=+p[d+(l*88|0)+48>>3];p[h+56>>3]=+p[d+(l*88|0)+56>>3];p[h+64>>3]=+p[d+(l*88|0)+64>>3];h=h+72|0;e=d+(l*88|0)+72|0;f[h>>2]=f[e>>2];f[h+4>>2]=f[e+4>>2];f[h+8>>2]=f[e+8>>2];f[g>>2]=(f[g>>2]|0)+88}C=f[c>>2]|0;c=c+4|0;D=f[c>>2]|0;y=C+(l*88|0)|0;w=C+(l*88|0)+8|0;t=C+(l*88|0)+16|0;B=+p[y>>3];z=+p[w>>3];x=+p[t>>3];b=C+(l*88|0)+24|0;d=C+(l*88|0)+32|0;e=C+(l*88|0)+40|0;v=+p[b>>3];s=+p[d>>3];r=+p[e>>3];g=C+(l*88|0)+48|0;h=C+(l*88|0)+56|0;E=C+(l*88|0)+64|0;q=+p[g>>3];o=+p[h>>3];n=+p[E>>3];C=C+(l*88|0)+72|0;f[j>>2]=f[C>>2];f[j+4>>2]=f[C+4>>2];f[j+8>>2]=f[C+8>>2];A=D+-88|0;F=+p[A>>3];p[A>>3]=B;p[y>>3]=F;y=D+-80|0;F=+p[y>>3];p[y>>3]=+p[w>>3];p[w>>3]=F;w=D+-72|0;F=+p[w>>3];p[w>>3]=+p[t>>3];p[t>>3]=F;t=D+-64|0;F=+p[t>>3];p[t>>3]=+p[b>>3];p[b>>3]=F;b=D+-56|0;F=+p[b>>3];p[b>>3]=+p[d>>3];p[d>>3]=F;d=D+-48|0;F=+p[d>>3];p[d>>3]=+p[e>>3];p[e>>3]=F;e=D+-40|0;p[g>>3]=+p[e>>3];g=D+-32|0;p[h>>3]=+p[g>>3];h=D+-24|0;p[E>>3]=+p[h>>3];l=D+-16|0;f[C>>2]=f[l>>2];f[C+4>>2]=f[l+4>>2];f[C+8>>2]=f[l+8>>2];p[A>>3]=B;p[y>>3]=z;p[w>>3]=x;p[t>>3]=v;p[b>>3]=s;p[d>>3]=r;p[e>>3]=q;p[g>>3]=o;p[h>>3]=n;f[l>>2]=f[j>>2];f[l+4>>2]=f[j+4>>2];f[l+8>>2]=f[j+8>>2];f[c>>2]=(f[c>>2]|0)+-88;l=f[f[i>>2]>>2]|0;f7a(j,l,l+24|0,l+48|0);l=k+4|0;f[l>>2]=(f[l>>2]|0)+1;l=pOb(56)|0;p[l>>3]=+p[j>>3];p[l+8>>3]=+p[j+8>>3];p[l+16>>3]=+p[j+16>>3];p[l+24>>3]=+p[j+24>>3];k=l+32|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[k+16>>2]=0;f[a>>2]=l;u=m;return}function _6a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;c=f[n>>2]|0;d=f[a>>2]|0;i=(c-d|0)/88|0;g=i+1|0;l=d;e=c;if(g>>>0>48806446)AMb(a);m=a+8|0;j=((f[m>>2]|0)-d|0)/88|0;k=j<<1;g=j>>>0<24403223?(k>>>0>>0?g:k):48806446;do if(!g)h=0;else if(g>>>0>48806446)vd();else{h=pOb(g*88|0)|0;break}while(0);j=h+(i*88|0)|0;d=j;k=h+(g*88|0)|0;f[j>>2]=f[b>>2];f[j+4>>2]=f[b+4>>2];f[j+8>>2]=f[b+8>>2];f[j+12>>2]=f[b+12>>2];f[j+16>>2]=f[b+16>>2];f[j+20>>2]=f[b+20>>2];p[j>>3]=+p[b>>3];p[h+(i*88|0)+8>>3]=+p[b+8>>3];p[h+(i*88|0)+16>>3]=+p[b+16>>3];g=h+(i*88|0)+24|0;o=b+24|0;f[g>>2]=f[o>>2];f[g+4>>2]=f[o+4>>2];f[g+8>>2]=f[o+8>>2];f[g+12>>2]=f[o+12>>2];f[g+16>>2]=f[o+16>>2];f[g+20>>2]=f[o+20>>2];p[g>>3]=+p[o>>3];p[h+(i*88|0)+32>>3]=+p[b+32>>3];p[h+(i*88|0)+40>>3]=+p[b+40>>3];g=h+(i*88|0)+48|0;o=b+48|0;f[g>>2]=f[o>>2];f[g+4>>2]=f[o+4>>2];f[g+8>>2]=f[o+8>>2];f[g+12>>2]=f[o+12>>2];f[g+16>>2]=f[o+16>>2];f[g+20>>2]=f[o+20>>2];p[g>>3]=+p[o>>3];p[h+(i*88|0)+56>>3]=+p[b+56>>3];p[h+(i*88|0)+64>>3]=+p[b+64>>3];g=h+(i*88|0)+72|0;i=b+72|0;f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];g=j+88|0;if((e|0)!=(l|0)){c=j;do{j=e;e=e+-88|0;p[c+-88>>3]=+p[e>>3];p[c+-80>>3]=+p[j+-80>>3];p[c+-72>>3]=+p[j+-72>>3];p[c+-64>>3]=+p[j+-64>>3];p[c+-56>>3]=+p[j+-56>>3];p[c+-48>>3]=+p[j+-48>>3];p[c+-40>>3]=+p[j+-40>>3];p[c+-32>>3]=+p[j+-32>>3];p[c+-24>>3]=+p[j+-24>>3];o=c+-16|0;j=j+-16|0;f[o>>2]=f[j>>2];f[o+4>>2]=f[j+4>>2];f[o+8>>2]=f[j+8>>2];c=d+-88|0;d=c}while((e|0)!=(l|0));c=f[a>>2]|0}f[a>>2]=d;f[n>>2]=g;f[m>>2]=k;if(!c)return;sOb(c);return}function $6a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;r=a+4|0;g=f[r>>2]|0;j=f[a>>2]|0;l=(g-j|0)/88|0;h=l+1|0;o=j;i=g;if(h>>>0>48806446)AMb(a);q=a+8|0;n=((f[q>>2]|0)-j|0)/88|0;j=n<<1;j=n>>>0<24403223?(j>>>0>>0?h:j):48806446;do if(!j)k=0;else if(j>>>0>48806446)vd();else{k=pOb(j*88|0)|0;break}while(0);m=k+(l*88|0)|0;h=m;n=k+(j*88|0)|0;p[m>>3]=+p[b>>3];p[k+(l*88|0)+8>>3]=+p[b+8>>3];p[k+(l*88|0)+16>>3]=+p[b+16>>3];p[k+(l*88|0)+24>>3]=+p[c>>3];p[k+(l*88|0)+32>>3]=+p[c+8>>3];p[k+(l*88|0)+40>>3]=+p[c+16>>3];p[k+(l*88|0)+48>>3]=+p[d>>3];p[k+(l*88|0)+56>>3]=+p[d+8>>3];p[k+(l*88|0)+64>>3]=+p[d+16>>3];j=k+(l*88|0)+72|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];j=m+88|0;if((i|0)!=(o|0)){g=m;do{l=i;i=i+-88|0;p[g+-88>>3]=+p[i>>3];p[g+-80>>3]=+p[l+-80>>3];p[g+-72>>3]=+p[l+-72>>3];p[g+-64>>3]=+p[l+-64>>3];p[g+-56>>3]=+p[l+-56>>3];p[g+-48>>3]=+p[l+-48>>3];p[g+-40>>3]=+p[l+-40>>3];p[g+-32>>3]=+p[l+-32>>3];p[g+-24>>3]=+p[l+-24>>3];m=g+-16|0;l=l+-16|0;f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];f[m+8>>2]=f[l+8>>2];g=h+-88|0;h=g}while((i|0)!=(o|0));g=f[a>>2]|0}f[a>>2]=h;f[r>>2]=j;f[q>>2]=n;if(!g)return;sOb(g);return}function a7a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;l=p;b=a+16|0;c=f[b>>2]|0;if(c>>>0>255){f[b>>2]=c+-256;m=a+4|0;l=f[m>>2]|0;o=f[l>>2]|0;l=l+4|0;f[m>>2]=l;n=a+8|0;j=f[n>>2]|0;k=a+12|0;i=f[k>>2]|0;b=i;do if((j|0)==(i|0)){e=f[a>>2]|0;c=e;if(l>>>0>e>>>0){b=l;d=((b-c>>2)+1|0)/-2|0;e=l+(d<<2)|0;b=j-b|0;c=b>>2;if(!c)b=l;else{cQb(e|0,l|0,b|0)|0;b=f[m>>2]|0}a=e+(c<<2)|0;f[n>>2]=a;f[m>>2]=b+(d<<2);b=a;break}b=b-c>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)vd();g=pOb(b<<2)|0;h=g;d=g+(b>>>2<<2)|0;i=d;g=g+(b<<2)|0;if((l|0)==(j|0)){b=i;c=e}else{b=i;c=l;do{f[d>>2]=f[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(j|0));c=f[a>>2]|0}f[a>>2]=h;f[m>>2]=i;f[n>>2]=b;f[k>>2]=g;if(c){sOb(c);b=f[n>>2]|0}}else b=j;while(0);f[b>>2]=o;f[n>>2]=(f[n>>2]|0)+4;u=p;return}o=a+8|0;b=f[o>>2]|0;n=a+4|0;e=b-(f[n>>2]|0)|0;m=a+12|0;c=f[m>>2]|0;d=c-(f[a>>2]|0)|0;if(e>>>0>>0){if((c|0)!=(b|0)){o=pOb(4096)|0;f[l>>2]=o;b7a(a,l);u=p;return}j=pOb(4096)|0;f[l>>2]=j;c7a(a,l);j=f[n>>2]|0;k=f[j>>2]|0;j=j+4|0;f[n>>2]=j;i=f[o>>2]|0;l=f[m>>2]|0;b=l;do if((i|0)==(l|0)){c=f[a>>2]|0;d=c;if(j>>>0>c>>>0){b=j;d=((b-d>>2)+1|0)/-2|0;e=j+(d<<2)|0;b=i-b|0;c=b>>2;if(!c)b=j;else{cQb(e|0,j|0,b|0)|0;b=f[n>>2]|0}a=e+(c<<2)|0;f[o>>2]=a;f[n>>2]=b+(d<<2);b=a;break}b=b-d>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)vd();e=pOb(b<<2)|0;g=e;d=e+(b>>>2<<2)|0;h=d;e=e+(b<<2)|0;if((j|0)==(i|0))b=h;else{b=h;c=j;do{f[d>>2]=f[c>>2];d=b+4|0;b=d;c=c+4|0}while((c|0)!=(i|0));c=f[a>>2]|0}f[a>>2]=g;f[n>>2]=h;f[o>>2]=b;f[m>>2]=e;if(c){sOb(c);b=f[o>>2]|0}}else b=i;while(0);f[b>>2]=k;f[o>>2]=(f[o>>2]|0)+4;u=p;return}b=d>>1;b=(b|0)==0?1:b;f[l+12>>2]=0;f[l+16>>2]=a+12;if(b>>>0>1073741823)vd();q=e>>2;e=pOb(b<<2)|0;f[l>>2]=e;c=e+(q<<2)|0;k=l+8|0;f[k>>2]=c;i=l+4|0;f[i>>2]=c;d=e+(b<<2)|0;j=l+12|0;f[j>>2]=d;g=pOb(4096)|0;do if((q|0)==(b|0)){b=e;if(c>>>0>e>>>0){h=c+((((c-b>>2)+1|0)/-2|0)<<2)|0;f[k>>2]=h;f[i>>2]=h;break}b=d-b>>1;b=(b|0)==0?1:b;if(b>>>0>1073741823)vd();else{q=pOb(b<<2)|0;h=q+(b>>>2<<2)|0;d=h;f[l>>2]=q;f[i>>2]=d;f[k>>2]=d;f[j>>2]=q+(b<<2);sOb(e);break}}else h=c;while(0);f[h>>2]=g;d=(f[k>>2]|0)+4|0;f[k>>2]=d;b=f[o>>2]|0;c=f[n>>2]|0;if((b|0)==(c|0))h=k;else{do{b=b+-4|0;d7a(l,b);c=f[n>>2]|0}while((b|0)!=(c|0));h=k;d=f[k>>2]|0;b=f[o>>2]|0}e=c;g=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=g;f[n>>2]=f[i>>2];f[i>>2]=e;f[o>>2]=d;f[h>>2]=b;q=f[m>>2]|0;f[m>>2]=f[j>>2];f[j>>2]=q;if((c|0)!=(b|0))f[k>>2]=b+(~((b+-4-e|0)>>>2)<<2);if(g|0)sOb(g);u=p;return}function b7a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+8|0;j=f[n>>2]|0;k=a+12|0;m=f[k>>2]|0;e=m;do if((j|0)==(m|0)){m=a+4|0;l=f[m>>2]|0;d=f[a>>2]|0;c=d;if(l>>>0>d>>>0){d=l;e=((d-c>>2)+1|0)/-2|0;g=l+(e<<2)|0;c=j-d|0;d=c>>2;if(!d)c=l;else{cQb(g|0,l|0,c|0)|0;c=f[m>>2]|0}l=g+(d<<2)|0;f[n>>2]=l;f[m>>2]=c+(e<<2);c=l;break}c=e-c>>1;c=(c|0)==0?1:c;if(c>>>0>1073741823)vd();g=pOb(c<<2)|0;h=g;e=g+(c>>>2<<2)|0;i=e;g=g+(c<<2)|0;if((l|0)==(j|0))c=i;else{c=i;d=l;do{f[e>>2]=f[d>>2];e=c+4|0;c=e;d=d+4|0}while((d|0)!=(j|0));d=f[a>>2]|0}f[a>>2]=h;f[m>>2]=i;f[n>>2]=c;f[k>>2]=g;if(d){sOb(d);c=f[n>>2]|0}}else c=j;while(0);f[c>>2]=f[b>>2];f[n>>2]=(f[n>>2]|0)+4;return}function c7a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;m=f[o>>2]|0;n=f[a>>2]|0;e=n;do if((m|0)==(n|0)){n=a+8|0;d=f[n>>2]|0;l=a+12|0;k=f[l>>2]|0;c=k;if(d>>>0>>0){e=d;h=((c-e>>2)+1|0)/2|0;c=d+(h<<2)|0;e=e-m|0;l=e>>2;g=c+(0-l<<2)|0;if(l){cQb(g|0,m|0,e|0)|0;c=g;d=f[n>>2]|0}f[o>>2]=c;f[n>>2]=d+(h<<2);break}e=c-e>>1;e=(e|0)==0?1:e;if(e>>>0>1073741823)vd();i=pOb(e<<2)|0;j=i;c=i+((e+3|0)>>>2<<2)|0;k=c;i=i+(e<<2)|0;if((m|0)==(d|0)){e=k;d=m}else{h=c;e=k;g=m;do{f[h>>2]=f[g>>2];h=e+4|0;e=h;g=g+4|0}while((g|0)!=(d|0));d=f[a>>2]|0}f[a>>2]=j;f[o>>2]=k;f[n>>2]=e;f[l>>2]=i;if(d){sOb(d);c=f[o>>2]|0}}else c=m;while(0);f[c+-4>>2]=f[b>>2];f[o>>2]=(f[o>>2]|0)+-4;return}function d7a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+4|0;m=f[o>>2]|0;n=f[a>>2]|0;e=n;do if((m|0)==(n|0)){n=a+8|0;d=f[n>>2]|0;l=a+12|0;k=f[l>>2]|0;c=k;if(d>>>0>>0){e=d;h=((c-e>>2)+1|0)/2|0;c=d+(h<<2)|0;e=e-m|0;l=e>>2;g=c+(0-l<<2)|0;if(l){cQb(g|0,m|0,e|0)|0;c=g;d=f[n>>2]|0}f[o>>2]=c;f[n>>2]=d+(h<<2);break}e=c-e>>1;e=(e|0)==0?1:e;if(e>>>0>1073741823)vd();i=pOb(e<<2)|0;j=i;c=i+((e+3|0)>>>2<<2)|0;k=c;i=i+(e<<2)|0;if((m|0)==(d|0)){e=k;d=m}else{h=c;e=k;g=m;do{f[h>>2]=f[g>>2];h=e+4|0;e=h;g=g+4|0}while((g|0)!=(d|0));d=f[a>>2]|0}f[a>>2]=j;f[o>>2]=k;f[n>>2]=e;f[l>>2]=i;if(d){sOb(d);c=f[o>>2]|0}}else c=m;while(0);f[c+-4>>2]=f[b>>2];f[o>>2]=(f[o>>2]|0)+-4;return}function e7a(a,b,c){a=a|0;b=b|0;c=+c;var d=0,e=0,g=0,h=0,i=0.0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+48|0;o=r;p=r+32|0;q=(f[a+4>>2]|0)-(f[a>>2]|0)|0;j=(q|0)/88|0;if((q|0)==88){q=0;u=r;return q|0}n=j>>>0<50?j:50;f[p>>2]=0;q=p+4|0;f[q>>2]=0;f[p+8>>2]=0;e=p+8|0;a:do if(!n){f[o>>2]=0;h=1}else{g=pOb(n<<2)|0;h=g+(n<<2)|0;f[p>>2]=g;f[q>>2]=g;f[e>>2]=h;f[o>>2]=0;d=0;while(1){if(g>>>0>>0){f[g>>2]=d;f[q>>2]=g+4}else q7a(p,o);d=(f[o>>2]|0)+1|0;f[o>>2]=d;if(d>>>0>=n>>>0){h=0;break a}g=f[q>>2]|0;h=f[e>>2]|0}}while(0);if(j>>>0>50){e=o+4|0;d=n;do{f[o>>2]=0;f[e>>2]=d;g=s7a(o,b,o)|0;if(g>>>0>>0)f[(f[p>>2]|0)+(g<<2)>>2]=d;d=d+1|0}while(d>>>0>>0)}d=f[p>>2]|0;e=f[d>>2]|0;b:do if(h)g=e;else{g=e;k=-1;m=0;l=0.0;d=e;while(1){h=f[a>>2]|0;f7a(o,h+(d*88|0)|0,h+(d*88|0)+24|0,h+(d*88|0)+48|0);d=0;h=0;b=0;e=0;while(1){c:do if((m|0)==(b|0))j=d;else switch((r7a(o,(f[a>>2]|0)+((f[(f[p>>2]|0)+(b<<2)>>2]|0)*88|0)|0,c)|0)<<24>>24){case 2:{j=d;h=h+1|0;break c}case 1:{j=d+1|0;break c}case 0:{j=d;h=h+1|0;break c}case 3:{j=d;e=e+1|0;break c}default:{j=d;break c}}while(0);b=b+1|0;if(b>>>0>=n>>>0)break;else d=j}if(e>>>0>k>>>0){e=k;i=l}else{if(!h)i=0.0;else{d=h>>>0>>0;if(!j)i=0.0;else i=+((d?h:j)>>>0)/+((d?j:h)>>>0)}if(!(i>=l)){e=k;i=l}else{d=f[p>>2]|0;g=f[d+(m<<2)>>2]|0;if((e|0)==0&i>.95)break}}h=m+1|0;d=f[p>>2]|0;if(h>>>0>=n>>>0)break b;k=e;m=h;l=i;d=f[d+(h<<2)>>2]|0}}while(0);if(d|0){e=f[q>>2]|0;if((e|0)!=(d|0))f[q>>2]=e+(~((e+-4-d|0)>>>2)<<2);sOb(d)}q=g;u=r;return q|0}function f7a(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0,q=0.0,r=0.0,s=0,t=0.0,v=0,w=0,x=0.0,y=0.0,z=0;z=u;u=u+512|0;v=z+464|0;w=z;x=+p[c>>3];y=+p[e>>3]-x;o=c+8|0;q=+p[o>>3];r=+p[e+8>>3]-q;s=c+16|0;t=+p[s>>3];l=+p[e+16>>3]-t;m=+p[d>>3]-x;n=+p[d+8>>3]-q;g=+p[d+16>>3]-t;h=r*g-l*n;i=l*m-y*g;j=y*n-r*m;p[a>>3]=h;e=a+8|0;p[e>>3]=i;d=a+16|0;p[d>>3]=j;k=+L(+(h*h+(j*j+i*i)));if(!(k<=+L(+(y*y+(r*r+l*l)))*+L(+(m*m+(n*n+g*g)))*2.220446049250313e-16)){m=h/k;p[a>>3]=m;n=i/k;p[e>>3]=n;y=j/k;p[d>>3]=y;r=t;x=x*m;t=q*n;y=r*y;y=t+y;y=x+y;y=-y;w=a+24|0;p[w>>3]=y;u=z;return}else{p[v>>3]=y;p[v+16>>3]=r;p[v+32>>3]=l;p[v+8>>3]=m;p[v+24>>3]=n;p[v+40>>3]=g;b[w+152>>0]=0;b[w+153>>0]=0;b[w+154>>0]=0;f[w+160>>2]=0;f[w+168>>2]=-1;f[w+172>>2]=-1;b[w+304>>0]=0;b[w+305>>0]=0;g7a(w,v,16)|0;x=+p[w+80>>3];p[a>>3]=x;t=+p[w+88>>3];p[e>>3]=t;y=+p[w+96>>3];p[d>>3]=y;n=+p[c>>3];q=+p[o>>3];r=+p[s>>3];x=n*x;t=q*t;y=r*y;y=t+y;y=x+y;y=-y;w=a+24|0;p[w>>3]=y;u=z;return}}function g7a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0,J=0,L=0,M=0.0,N=0.0;L=u;u=u+32|0;B=L+16|0;C=L;g=a+153|0;e=a+168|0;if(!(b[g>>0]|0))J=5;else if((f[e>>2]|0)==2)if((f[a+172>>2]|0)==3){if((f[a+160>>2]|0)!=(d|0))J=5}else J=5;else J=5;if((J|0)==5){f[e>>2]=2;f[a+172>>2]=3;b[a+152>>0]=0;b[g>>0]=1;f[a+160>>2]=d;b[a+155>>0]=d>>>2&1;b[a+156>>0]=d>>>3&1;b[a+157>>0]=d>>>4&1;b[a+158>>0]=d>>>5&1;f[a+176>>2]=2}h=+p[c>>3];I=+K(+h);H=c+8|0;j=+K(+(+p[H>>3]));y=c+16|0;i=+K(+(+p[y>>3]));j=j>3]));F=c+32|0;i=+K(+(+p[F>>3]));E=c+40|0;M=+K(+(+p[E>>3]));i=i>3]=h/I;p[a+424>>3]=+p[H>>3]/I;p[a+432>>3]=+p[y>>3]/I;p[a+440>>3]=+p[G>>3]/I;p[a+448>>3]=+p[F>>3]/I;p[a+456>>3]=+p[E>>3]/I;h7a(a+192|0,a,D)|0;D=a+155|0;E=a+156|0;F=a+157|0;G=a+158|0;y=a+120|0;h=+K(+(+p[a+120>>3]));j=+K(+(+p[a+144>>3]));H=a+176|0;z=B+8|0;A=C+8|0;h=h>2]|0;while(1){if((e|0)<(d|0))break;if(!(c&1)){e=1;c=1}else break a}if((e|0)>0){m=a+120+(e<<3)|0;n=e<<1;o=a+120+(n<<3)|0;r=e*3|0;q=a+120+(r<<3)|0;r=a+32+(r<<3)|0;s=r+8|0;t=r+16|0;v=o+8|0;w=a+(n<<3)|0;x=w+8|0;l=m+16|0;k=0;do{i=h*4.440892098500626e-16;i=i>1.0e-323?i:1.0e-323;g=k<<1;if(+K(+(+p[a+120+(g+e<<3)>>3]))>i)J=17;else if(+K(+(+p[a+120+(k+n<<3)>>3]))>i)J=17;if((J|0)==17){J=0;i7a(y,e,k,B,C);c=a+120+(k<<3)|0;i=+p[B>>3];j=+p[z>>3];d=i==1.0&j==0.0;if(!d){M=+p[m>>3];N=+p[c>>3];p[m>>3]=i*M+j*N;p[c>>3]=i*N-j*M;c=c+16|0;M=+p[l>>3];N=+p[c>>3];p[l>>3]=i*M+j*N;p[c>>3]=i*N-j*M}if(!(b[D>>0]|0)){if(b[E>>0]|0)J=21}else J=21;if((J|0)==21){J=0;c=a+(g<<3)|0;if(!d){N=+p[w>>3];M=+p[c>>3];p[w>>3]=i*N+j*M;p[c>>3]=i*M-j*N;d=c+8|0;N=+p[x>>3];M=+p[d>>3];p[x>>3]=i*N+j*M;p[d>>3]=i*M-j*N}}c=a+120+(g<<3)|0;N=+p[A>>3];i=-N;j=+p[C>>3];g=N==-0.0&j==1.0;if(!g){N=+p[o>>3];M=+p[c>>3];p[o>>3]=j*N+M*i;p[c>>3]=j*M-N*i;d=c+8|0;N=+p[v>>3];M=+p[d>>3];p[v>>3]=j*N+M*i;p[d>>3]=j*M-N*i}if(!(b[F>>0]|0))if(!(b[G>>0]|0))c=k*3|0;else J=28;else J=28;if((J|0)==28){J=0;c=k*3|0;d=a+32+(c<<3)|0;if(!g){N=+p[r>>3];M=+p[d>>3];p[r>>3]=j*N+M*i;p[d>>3]=j*M-N*i;g=d+8|0;N=+p[s>>3];M=+p[g>>3];p[s>>3]=j*N+M*i;p[g>>3]=j*M-N*i;g=d+16|0;N=+p[t>>3];M=+p[g>>3];p[t>>3]=j*N+M*i;p[g>>3]=j*M-N*i}}N=+K(+(+p[q>>3]));M=+K(+(+p[a+120+(c<<3)>>3]));N=N0)d=0;else{f[a+164>>2]=d;J=a+104|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+112|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+152|0;b[J>>0]=1;u=L;return a|0}do{e=a+120+(d*3<<3)|0;h=+p[e>>3];i=+K(+h);p[a+104+(d<<3)>>3]=i;if(!(b[D>>0]|0))c=(b[E>>0]|0)!=0;else c=1;if(h!=0.0&c){N=+p[e>>3]/i;C=a+(d<<1<<3)|0;p[C>>3]=N*+p[C>>3];C=C+8|0;p[C>>3]=N*+p[C>>3]}d=d+1|0;e=f[H>>2]|0}while((d|0)<(e|0));m=a+164|0;f[m>>2]=e;if((e|0)>0){l=0;c=e}else{J=a+104|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+112|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+152|0;b[J>>0]=1;u=L;return a|0}while(1){g=c-l|0;k=a+104+(2-g<<3)|0;i=+p[k>>3];if((g|0)>1){d=1;e=0;h=i;j=i;while(1){i=+p[k+(d<<3)>>3];c=i>j;h=c?i:h;e=c?d:e;d=d+1|0;if((d|0)==(g|0))break;else j=c?i:j}}else{e=0;h=i}if(h==0.0)break;do if(e|0){e=e+l|0;B=a+104+(l<<3)|0;C=a+104+(e<<3)|0;N=+p[B>>3];p[B>>3]=+p[C>>3];p[C>>3]=N;if(!(b[D>>0]|0)){if(b[E>>0]|0)J=45}else J=45;if((J|0)==45){J=0;B=a+(e<<1<<3)|0;C=a+(l<<1<<3)|0;N=+p[B>>3];p[B>>3]=+p[C>>3];p[C>>3]=N;B=B+8|0;N=+p[B>>3];C=C+8|0;p[B>>3]=+p[C>>3];p[C>>3]=N}if(!(b[F>>0]|0))if(!(b[G>>0]|0))break;B=a+32+(e*3<<3)|0;C=a+32+(l*3<<3)|0;N=+p[B>>3];p[B>>3]=+p[C>>3];p[C>>3]=N;z=B+8|0;N=+p[z>>3];A=C+8|0;p[z>>3]=+p[A>>3];p[A>>3]=N;B=B+16|0;N=+p[B>>3];C=C+16|0;p[B>>3]=+p[C>>3];p[C>>3]=N}while(0);e=l+1|0;c=f[H>>2]|0;if((c|0)<=(e|0)){J=50;break}else l=e}if((J|0)==50){J=a+104|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+112|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+152|0;b[J>>0]=1;u=L;return a|0}f[m>>2]=l;J=a+104|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+112|0;N=+p[J>>3];N=I*N;p[J>>3]=N;J=a+152|0;b[J>>0]=1;u=L;return a|0}function h7a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0;h=u;u=u+48|0;e=h+20|0;g=h;i=a+144|0;p[i>>3]=+p[d>>3];p[a+152>>3]=+p[d+16>>3];p[a+160>>3]=+p[d+32>>3];p[a+168>>3]=+p[d+8>>3];p[a+176>>3]=+p[d+24>>3];p[a+184>>3]=+p[d+40>>3];j7a(a,i)|0;p[c+120>>3]=+p[a>>3];p[c+128>>3]=+p[a+24>>3];p[c+136>>3]=0.0;p[c+144>>3]=+p[a+32>>3];if(!(b[c+157>>0]|0)){if(b[c+158>>0]|0){n=c+32|0;p[n>>3]=1.0;q=c+40|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;f[q+16>>2]=0;f[q+20>>2]=0;p[c+64>>3]=1.0;o=c+72|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;f[o+16>>2]=0;f[o+20>>2]=0;p[c+96>>3]=1.0;o=e+4|0;m=e+12|0;l=e+16|0;k=g+4|0;j=g+12|0;d=g+16|0;i=a+192|0;f[e>>2]=q;f[o>>2]=2;f[m>>2]=n;f[l>>2]=3;f[g>>2]=a+40;f[k>>2]=1;f[j>>2]=a;f[d>>2]=3;l7a(e,g,a+56|0,i);f[e>>2]=c+32;f[o>>2]=3;f[m>>2]=n;f[l>>2]=3;f[g>>2]=a+8;f[k>>2]=2;f[j>>2]=a;f[d>>2]=3;l7a(e,g,a+48|0,i)}}else{f[e>>2]=a;f[e+4>>2]=a+48;b[e+8>>0]=0;f[e+12>>2]=2;f[e+16>>2]=0;k7a(e,c+32|0,a+192|0)}if(!(b[c+155>>0]|0))if(!(b[c+156>>0]|0)){u=h;return 1};f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;f[c+28>>2]=0;p[c+(f[a+64>>2]<<3)>>3]=1.0;p[c+((f[a+68>>2]|0)+2<<3)>>3]=1.0;u=h;return 1}function i7a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0;m=+p[a+(b*3<<3)>>3];k=+p[a+((c<<1)+b<<3)>>3];l=+p[a+((b<<1)+c<<3)>>3];g=+p[a+(c*3<<3)>>3];j=l-k;f=(g+m)/j;if(j==0.0){i=1.0;j=0.0}else{j=+L(+(f*f+1.0));i=f/j;j=1.0/j}if(i==1.0&j==0.0){h=k;f=m}else{h=i*k+j*g;g=i*g-j*k;f=i*m+j*l}if(h==0.0){g=1.0;f=0.0}else{m=+K(+h);l=(f-g)/(m*2.0);f=+L(+(l*l+1.0));f=1.0/(l+(l>0.0?f:-f));l=1.0/+L(+(f*f+1.0));g=l;f=l*(+K(+f)*(h/m*(f>0.0?-1.0:1.0)))}p[e+8>>3]=f;p[e>>3]=g;m=-f;p[d>>3]=i*g-j*m;p[d+8>>3]=i*m+j*g;return}function j7a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0.0,l=0.0,m=0,n=0,o=0,q=0,r=0,s=0,t=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,M=0.0;J=u;u=u+64|0;H=J+32|0;I=J;M=+p[c>>3];p[a>>3]=M;i=+p[c+8>>3];p[a+8>>3]=i;h=+p[c+16>>3];p[a+16>>3]=h;k=+p[c+24>>3];p[a+24>>3]=k;l=+p[c+32>>3];p[a+32>>3]=l;t=+p[c+40>>3];p[a+40>>3]=t;h=M*M+(i*i+h*h);p[a+96>>3]=h;t=k*k+(l*l+t*t);p[a+104>>3]=t;t=(h>2]=2;w=a+128|0;p[w>>3]=0.0;x=a;y=H+4|0;z=H+8|0;A=H+12|0;B=H+16|0;C=I+4|0;D=I+12|0;E=I+20|0;F=I+28|0;s=0;n=0;while(1){r=2-s|0;m=a+96+(s<<3)|0;G=(r|0)>1;if(G){e=1;c=0;while(1){i=+p[m+(e<<3)>>3];d=i>h;c=d?e:c;e=e+1|0;if((e|0)==(r|0))break;else h=d?i:h}}else c=0;g=c+s|0;j=a+(g*3<<3)|0;q=3-s|0;e=j+(s<<3)|0;h=+p[e>>3];d=1;h=h*h;do{M=+p[e+(d<<3)>>3];h=h+M*M;d=d+1|0}while((d|0)!=(q|0));d=a+96+(g<<3)|0;p[d>>3]=h;if((f[v>>2]|0)==2)if(h>2]=s;f[a+72+(s<<2)>>2]=g;o=a+(s*3<<3)|0;if(c){M=+p[o>>3];p[o>>3]=+p[j>>3];p[j>>3]=M;e=o+8|0;M=+p[e>>3];g=j+8|0;p[e>>3]=+p[g>>3];p[g>>3]=M;g=o+16|0;M=+p[g>>3];j=j+16|0;p[g>>3]=+p[j>>3];p[j>>3]=M;M=+p[m>>3];p[m>>3]=+p[d>>3];p[d>>3]=M;n=n+1|0}d=o+(s<<3)|0;j=a+48+(s<<3)|0;g=q+-1|0;e=d+8|0;l=+p[e>>3];h=l*l;if((q|0)>2){c=1;do{M=+p[e+(c<<3)>>3];h=h+M*M;c=c+1|0}while((c|0)!=(g|0));i=h}else i=h;h=+p[d>>3];if(!(i<=2.2250738585072014e-308)){k=+L(+(i+h*h));k=!(h>=0.0)?k:-k;i=h-k;p[e>>3]=l/i;if((g|0)!=1){c=1;do{p[e+(c<<3)>>3]=+p[e+(c<<3)>>3]/i;c=c+1|0}while((c|0)!=(g|0))}p[j>>3]=(k-h)/k;h=k}else{p[j>>3]=0.0;dQb(e|0,0,g<<3|0)|0}p[a+(s<<2<<3)>>3]=h;h=+K(+h);if(h>+p[w>>3])p[w>>3]=h;d=r+-1|0;r=3-r|0;e=r*3|0;f[H>>2]=a+(e+s<<3);f[y>>2]=q;f[z>>2]=d;f[A>>2]=a;f[B>>2]=3;f[I>>2]=o+(4-q<<3);f[C>>2]=g;f[D>>2]=o;c=E;f[c>>2]=x;f[c+4>>2]=3;f[F>>2]=3;c=s+1|0;p7a(H,I,j,a+80+(c<<3)|0);e=a+(s<<3)+(e<<3)|0;g=a+96+(r<<3)|0;if(G){M=+p[e>>3];p[g>>3]=+p[g>>3]-M*M;if((d|0)!=1){c=1;d=25;break}}if((c|0)==2){d=2;break}s=c;h=+p[a+96+(c<<3)>>3]}if((d|0)==2){H=a+64|0;f[H>>2]=0;G=a+68|0;f[G>>2]=1;I=a+64+(f[a+72>>2]<<2)|0;f[H>>2]=f[I>>2];f[I>>2]=0;I=a+64+(f[a+76>>2]<<2)|0;H=f[G>>2]|0;f[G>>2]=f[I>>2];f[I>>2]=H;f[a+140>>2]=(n<<1&2^2)+-1;b[a+112>>0]=1;u=J;return a|0}else if((d|0)==25)while(1){d=g+(c<<3)|0;M=+p[e+(c*3<<3)>>3];p[d>>3]=+p[d>>3]-M*M;c=c+1|0;d=25}return 0}function k7a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=u;u=u+48|0;C=E+20|0;D=E;e=f[a+12>>2]|0;p[c>>3]=1.0;B=c+8|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;f[B+12>>2]=0;f[B+16>>2]=0;f[B+20>>2]=0;p[c+32>>3]=1.0;B=c+40|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;f[B+12>>2]=0;f[B+16>>2]=0;f[B+20>>2]=0;p[c+64>>3]=1.0;if((e|0)<=0){u=E;return}j=a+16|0;k=a+8|0;l=C+4|0;m=C+8|0;n=C+12|0;o=C+16|0;q=D+4|0;r=D+12|0;s=D+16|0;t=a+4|0;v=C+4|0;w=C+8|0;x=C+12|0;y=C+16|0;z=D+4|0;A=D+12|0;B=D+16|0;do{g=e;e=e+-1|0;h=f[j>>2]|0;i=4-g-h|0;if(!(b[k>>0]|0)){f[C>>2]=c+(3-i<<2<<3);f[l>>2]=i;f[m>>2]=i;f[n>>2]=c;f[o>>2]=3;h=h+g|0;i=f[a>>2]|0;f[D>>2]=i+(h+(e*3|0)<<3);f[q>>2]=3-h;f[r>>2]=i;f[s>>2]=3;o7a(C,D,(f[t>>2]|0)+(e<<3)|0,d)}else{f[C>>2]=c+(3-i<<2<<3);f[v>>2]=i;f[w>>2]=i;f[x>>2]=c;f[y>>2]=3;h=h+g|0;i=f[a>>2]|0;f[D>>2]=i+(h+(e*3|0)<<3);f[z>>2]=3-h;f[A>>2]=i;f[B>>2]=3;n7a(C,D,(f[t>>2]|0)+(e<<3)|0,d)}}while((g|0)>1);u=E;return}function l7a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0.0,r=0,s=0,t=0,v=0,w=0,x=0;n=u;u=u+96|0;e=n+80|0;g=n;i=f[a+4>>2]|0;if((i|0)==1){h=1.0-+p[c>>3];l=f[a>>2]|0;p[l>>3]=h*+p[l>>3];m=f[a+16>>2]|0;k=l+(m<<3)|0;p[k>>3]=h*+p[k>>3];m=l+(m<<1<<3)|0;p[m>>3]=h*+p[m>>3];u=n;return}f[e>>2]=d;m=i+-1|0;l=(f[a>>2]|0)+8|0;j=a;s=f[j>>2]|0;j=f[j+4>>2]|0;o=a+12|0;k=o;r=f[k>>2]|0;k=f[k+4>>2]|0;x=b;w=f[x+4>>2]|0;t=b+12|0;v=f[t>>2]|0;t=f[t+4>>2]|0;d=g;f[d>>2]=f[x>>2];f[d+4>>2]=w;d=g+12|0;f[d>>2]=v;f[d+4>>2]=t;f[g+20>>2]=l;f[g+24>>2]=m;d=g+32|0;f[d>>2]=s;f[d+4>>2]=j;d=g+44|0;f[d>>2]=r;f[d+4>>2]=k;f[g+52>>2]=k;m7a(e,g)|0;d=f[a>>2]|0;r=f[o+4>>2]|0;a=f[e>>2]|0;q=+p[a>>3]+ +p[d>>3];p[a>>3]=q;g=a+8|0;p[g>>3]=+p[g>>3]+ +p[d+(r<<3)>>3];j=a+16|0;e=_Pb(r|0,0,1)|0;p[j>>3]=+p[j>>3]+ +p[d+(e<<3)>>3];h=+p[c>>3];e=f[o+4>>2]|0;p[d>>3]=+p[d>>3]-h*q;o=d+(e<<3)|0;p[o>>3]=+p[o>>3]-h*+p[g>>3];e=_Pb(e|0,0,1)|0;e=d+(e<<3)|0;p[e>>3]=+p[e>>3]-h*+p[j>>3];h=+p[c>>3];if((i|0)>1){e=f[b>>2]|0;p[l>>3]=+p[l>>3]-h*+p[e>>3]*+p[a>>3];if((m|0)==1)d=0;else{d=1;do{x=l+(d<<3)|0;p[x>>3]=+p[x>>3]-h*+p[e+(d<<3)>>3]*+p[a>>3];d=d+1|0}while((d|0)!=(m|0));d=0}do{x=l+(d+k<<3)|0;p[x>>3]=+p[x>>3]-h*+p[e+(d<<3)>>3]*+p[g>>3];d=d+1|0}while((d|0)!=(m|0));a=_Pb(k|0,0,1)|0;d=0;do{x=l+(d+a<<3)|0;p[x>>3]=+p[x>>3]-h*+p[e+(d<<3)>>3]*+p[j>>3];d=d+1|0}while((d|0)!=(m|0))}u=n;return}function m7a(a,b){a=a|0;b=b|0;var c=0.0,d=0,e=0,g=0,h=0,i=0,j=0;j=f[b>>2]|0;e=f[b+20>>2]|0;g=f[b+52>>2]|0;i=f[b+24>>2]|0;h=f[a>>2]|0;if(!i){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[h+16>>2]=0;f[h+20>>2]=0;return a|0}c=+p[j>>3]*+p[e>>3];if((i|0)>1)b=1;else{p[h>>3]=c;p[h+8>>3]=+p[j>>3]*+p[e+(g<<3)>>3];p[h+16>>3]=+p[j>>3]*+p[e+(g<<1<<3)>>3];return a|0}do{c=c+ +p[j+(b<<3)>>3]*+p[e+(b<<3)>>3];b=b+1|0}while((b|0)!=(i|0));p[h>>3]=c;d=e+(g<<3)|0;b=1;c=+p[j>>3]*+p[d>>3];do{c=c+ +p[j+(b<<3)>>3]*+p[d+(b<<3)>>3];b=b+1|0}while((b|0)!=(i|0));p[h+8>>3]=c;d=e+(g<<1<<3)|0;b=1;c=+p[j>>3]*+p[d>>3];do{c=c+ +p[j+(b<<3)>>3]*+p[d+(b<<3)>>3];b=b+1|0}while((b|0)!=(i|0));p[h+16>>3]=c;return a|0}function n7a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;w=u;u=u+272|0;v=w+136|0;m=w;o=f[a+8>>2]|0;if((o|0)==1){h=1.0-+p[c>>3];i=f[a+4>>2]|0;if((i|0)<=0){u=w;return}g=f[a>>2]|0;e=0;do{v=g+(e<<3)|0;p[v>>3]=h*+p[v>>3];e=e+1|0}while((e|0)!=(i|0));u=w;return}l=a+4|0;q=f[l>>2]|0;r=o+-1|0;e=f[a>>2]|0;s=f[a+16>>2]|0;t=e+(s<<3)|0;k=f[b>>2]|0;j=f[b+4>>2]|0;n=(q|0)>0;g=(j|0)>1;do if(n){if(!j){dQb(d|0,0,q<<3|0)|0;e=f[a>>2]|0}else{if(g){g=0;do{a=t+(g<<3)|0;i=1;h=+p[a>>3]*+p[k>>3];do{x=a+((X(i,s)|0)<<3)|0;h=h+ +p[x>>3]*+p[k+(i<<3)>>3];i=i+1|0}while((i|0)!=(j|0));p[d+(g<<3)>>3]=h;g=g+1|0}while((g|0)!=(q|0))}else{g=0;do{p[d+(g<<3)>>3]=+p[t+(g<<3)>>3]*+p[k>>3];g=g+1|0}while((g|0)!=(q|0))}if(!n)break}p[d>>3]=+p[d>>3]+ +p[e>>3];if((q|0)!=1){g=1;do{x=d+(g<<3)|0;p[x>>3]=+p[x>>3]+ +p[e+(g<<3)>>3];g=g+1|0}while((g|0)!=(q|0))}}while(0);h=+p[c>>3];g=f[l>>2]|0;if((g|0)>0){p[e>>3]=+p[e>>3]-h*+p[d>>3];if((g|0)!=1){i=1;do{x=e+(i<<3)|0;p[x>>3]=+p[x>>3]-h*+p[d+(i<<3)>>3];i=i+1|0}while((i|0)!=(g|0))}}h=+p[c>>3];k=b;j=f[k>>2]|0;k=f[k+4>>2]|0;a=b+12|0;i=f[a>>2]|0;a=f[a+4>>2]|0;g=m+24|0;f[g>>2]=q;if(n){e=0;do{p[m+(e<<3)>>3]=h*+p[d+(e<<3)>>3];e=e+1|0}while((e|0)!=(q|0));e=f[g>>2]|0}else e=q;x=m+32|0;f[x>>2]=j;f[x+4>>2]=k;x=m+44|0;f[x>>2]=i;f[x+4>>2]=a;f[m+128>>2]=0;f[m+132>>2]=0;f[v+24>>2]=e;if((e|0)>0)bQb(v|0,m|0,e<<3|0)|0;x=v+32|0;f[x>>2]=j;f[x+4>>2]=k;x=v+44|0;f[x>>2]=i;f[x+4>>2]=a;f[v+128>>2]=0;f[v+132>>2]=0;if(n&(o|0)>1){e=0;do{i=j+(e<<3)|0;a=X(e,s)|0;g=0;do{x=t+(g+a<<3)|0;p[x>>3]=+p[x>>3]-+p[v+(g<<3)>>3]*+p[i>>3];g=g+1|0}while((g|0)!=(q|0));e=e+1|0}while((e|0)!=(r|0))}u=w;return}function o7a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+256|0;w=x+128|0;o=x;q=f[a+4>>2]|0;if((q|0)==1){g=1.0-+p[c>>3];h=f[a+8>>2]|0;if((h|0)<=0){u=x;return}i=f[a>>2]|0;e=f[a+16>>2]|0;a=0;do{w=i+((X(a,e)|0)<<3)|0;p[w>>3]=g*+p[w>>3];a=a+1|0}while((a|0)!=(h|0));u=x;return}k=a+8|0;s=f[k>>2]|0;n=d;t=q+-1|0;l=f[a>>2]|0;v=l+8|0;j=a+16|0;r=f[j>>2]|0;m=(s|0)>0;i=f[b>>2]|0;if(m){if((q|0)>2){a=0;do{h=v+((X(a,r)|0)<<3)|0;e=1;g=+p[i>>3]*+p[h>>3];do{g=g+ +p[i+(e<<3)>>3]*+p[h+(e<<3)>>3];e=e+1|0}while((e|0)!=(t|0));p[d+(a<<3)>>3]=g;a=a+1|0}while((a|0)!=(s|0))}else{a=0;do{h=v+((X(a,r)|0)<<3)|0;p[d+(a<<3)>>3]=+p[i>>3]*+p[h>>3];a=a+1|0}while((a|0)!=(s|0))}a=f[j>>2]|0;if(m){p[d>>3]=+p[d>>3]+ +p[l>>3];if((s|0)!=1){e=1;do{i=d+(e<<3)|0;h=l+((X(e,a)|0)<<3)|0;p[i>>3]=+p[i>>3]+ +p[h>>3];e=e+1|0}while((e|0)!=(s|0))}}}g=+p[c>>3];h=f[k>>2]|0;a=f[j>>2]|0;if((h|0)>0){p[l>>3]=+p[l>>3]-g*+p[d>>3];if((h|0)!=1){e=1;do{k=l+((X(e,a)|0)<<3)|0;p[k>>3]=+p[k>>3]-g*+p[d+(e<<3)>>3];e=e+1|0}while((e|0)!=(h|0))}}g=+p[c>>3];i=f[b>>2]|0;a=f[b+4>>2]|0;h=o+24|0;f[h>>2]=a;if((a|0)>0){e=0;do{p[o+(e<<3)>>3]=g*+p[i+(e<<3)>>3];e=e+1|0}while((e|0)!=(a|0));a=f[h>>2]|0}f[o+32>>2]=n;f[o+40>>2]=s;f[o+120>>2]=0;f[o+124>>2]=0;f[w+24>>2]=a;if((a|0)>0)bQb(w|0,o|0,a<<3|0)|0;f[w+32>>2]=n;f[w+40>>2]=s;f[w+120>>2]=0;f[w+124>>2]=0;if(m&(q|0)>1){a=0;do{h=d+(a<<3)|0;i=X(a,r)|0;e=0;do{q=v+(e+i<<3)|0;p[q>>3]=+p[q>>3]-+p[w+(e<<3)>>3]*+p[h>>3];e=e+1|0}while((e|0)!=(t|0));a=a+1|0}while((a|0)!=(s|0))}u=x;return}function p7a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+208|0;w=x+104|0;o=x;q=f[a+4>>2]|0;if((q|0)==1){g=1.0-+p[c>>3];h=f[a+8>>2]|0;if((h|0)<=0){u=x;return}i=f[a>>2]|0;e=f[a+16>>2]|0;a=0;do{w=i+((X(a,e)|0)<<3)|0;p[w>>3]=g*+p[w>>3];a=a+1|0}while((a|0)!=(h|0));u=x;return}k=a+8|0;s=f[k>>2]|0;n=d;t=q+-1|0;l=f[a>>2]|0;v=l+8|0;j=a+16|0;r=f[j>>2]|0;m=(s|0)>0;i=f[b>>2]|0;if(m){if((q|0)>2){a=0;do{h=v+((X(a,r)|0)<<3)|0;e=1;g=+p[i>>3]*+p[h>>3];do{g=g+ +p[i+(e<<3)>>3]*+p[h+(e<<3)>>3];e=e+1|0}while((e|0)!=(t|0));p[d+(a<<3)>>3]=g;a=a+1|0}while((a|0)!=(s|0))}else{a=0;do{h=v+((X(a,r)|0)<<3)|0;p[d+(a<<3)>>3]=+p[i>>3]*+p[h>>3];a=a+1|0}while((a|0)!=(s|0))}a=f[j>>2]|0;if(m){p[d>>3]=+p[d>>3]+ +p[l>>3];if((s|0)!=1){e=1;do{i=d+(e<<3)|0;h=l+((X(e,a)|0)<<3)|0;p[i>>3]=+p[i>>3]+ +p[h>>3];e=e+1|0}while((e|0)!=(s|0))}}}g=+p[c>>3];h=f[k>>2]|0;a=f[j>>2]|0;if((h|0)>0){p[l>>3]=+p[l>>3]-g*+p[d>>3];if((h|0)!=1){e=1;do{k=l+((X(e,a)|0)<<3)|0;p[k>>3]=+p[k>>3]-g*+p[d+(e<<3)>>3];e=e+1|0}while((e|0)!=(h|0))}}g=+p[c>>3];i=f[b>>2]|0;a=f[b+4>>2]|0;h=o+24|0;f[h>>2]=a;if((a|0)>0){e=0;do{p[o+(e<<3)>>3]=g*+p[i+(e<<3)>>3];e=e+1|0}while((e|0)!=(a|0));a=f[h>>2]|0}f[o+32>>2]=n;f[o+40>>2]=s;f[o+96>>2]=0;f[o+100>>2]=0;f[w+24>>2]=a;if((a|0)>0)bQb(w|0,o|0,a<<3|0)|0;f[w+32>>2]=n;f[w+40>>2]=s;f[w+96>>2]=0;f[w+100>>2]=0;if(m&(q|0)>1){a=0;do{h=d+(a<<3)|0;i=X(a,r)|0;e=0;do{q=v+(e+i<<3)|0;p[q>>3]=+p[q>>3]-+p[w+(e<<3)>>3]*+p[h>>3];e=e+1|0}while((e|0)!=(t|0));a=a+1|0}while((a|0)!=(s|0))}u=x;return}function q7a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=a+4|0;j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;e=k>>2;c=e+1|0;if(c>>>0>1073741823)AMb(a);l=a+8|0;m=(f[l>>2]|0)-j|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(!d){h=0;i=0}else if(d>>>0>1073741823)vd();else{i=pOb(d<<2)|0;h=i;break}while(0);c=h+(e<<2)|0;f[c>>2]=f[b>>2];if((k|0)>0)bQb(i|0,j|0,k|0)|0;f[a>>2]=h;f[g>>2]=c+4;f[l>>2]=h+(d<<2);if(!j)return;sOb(j);return}function r7a(a,c,d){a=a|0;c=c|0;d=+d;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0.0,m=0.0,n=0.0,o=0.0,q=0.0,r=0.0;j=u;u=u+16|0;i=j;q=+p[a>>3];o=+p[a+8>>3];l=+p[a+16>>3];r=+p[a+24>>3];n=r+(q*+p[c>>3]+(o*+p[c+8>>3]+l*+p[c+16>>3]));m=r+(q*+p[c+24>>3]+(o*+p[c+32>>3]+l*+p[c+40>>3]));l=r+(q*+p[c+48>>3]+(o*+p[c+56>>3]+l*+p[c+64>>3]));f=+K(+n)0.0)&1;e=f?2:g;b[i>>0]=e;h=+K(+m)0.0)&1;b[i+1>>0]=c;k=+K(+l)0.0)&1;b[i+2>>0]=a;switch((h?(f?2:1):f&1)+(k&1)&7){case 2:{if(!f){k=g;u=j;return k|0}k=b[i+(h?2:1)>>0]|0;u=j;return k|0}case 1:{h=f?0:h?1:2;k=b[i+(((h+1|0)>>>0)%3|0)>>0]|0;k=k<<24>>24==(b[i+(((h+2|0)>>>0)%3|0)>>0]|0)?k:3;u=j;return k|0}case 0:{k=e<<24>>24==0;k=a<<24>>24==0^k|k^c<<24>>24==0?3:(k^1)&1;u=j;return k|0}case 3:{k=2;u=j;return k|0}default:{k=4;u=j;return k|0}}return 0}function s7a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;a=f[c>>2]|0;g=(f[c+4>>2]|0)-a|0;h=g+1|0;if(!g){c=a;return c|0}if(!h){h=b+2496|0;d=f[h>>2]|0;g=((d+1|0)>>>0)%624|0;c=b+(d<<2)|0;e=f[b+(g<<2)>>2]|0;f[c>>2]=0-(e&1)&-1727483681^f[b+((((d+397|0)>>>0)%624|0)<<2)>>2]^(e&2147483646|f[c>>2]&-2147483648)>>>1;c=f[b+(f[h>>2]<<2)>>2]|0;c=c>>>11^c;f[h>>2]=g;c=c<<7&-1658038656^c;c=c<<15&-272236544^c;c=c>>>18^c;return c|0}d=32-(_(h|0)|0)|0;d=d+(((-1>>>(33-d|0)&h|0)==0)<<31>>31)|0;a=(d>>>5)+((d&31|0)!=0&1)|0;a=a>>>0>d>>>0?0:-1>>>(32-((d>>>0)/(a>>>0)|0)|0);d=b+2496|0;e=f[d>>2]|0;do{j=e;e=((e+1|0)>>>0)%624|0;g=b+(j<<2)|0;i=f[b+(e<<2)>>2]|0;f[g>>2]=0-(i&1)&-1727483681^f[b+((((j+397|0)>>>0)%624|0)<<2)>>2]^(i&2147483646|f[g>>2]&-2147483648)>>>1;g=f[b+(f[d>>2]<<2)>>2]|0;g=g>>>11^g;f[d>>2]=e;g=g<<7&-1658038656^g;g=g<<15&-272236544^g;g=(g>>>18^g)&a}while(g>>>0>=h>>>0);j=(f[c>>2]|0)+g|0;return j|0}function t7a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;e=l;c=f[b>>2]|0;g=c;if(((f[b+4>>2]|0)-c|0)!=12){k=0;u=l;return k|0}b=f[a>>2]|0;if(((f[a+4>>2]|0)-b|0)!=32){k=0;u=l;return k|0}d=g+4|0;if(((f[d>>2]|0)-(f[c>>2]|0)|0)!=32){k=0;u=l;return k|0}k=pOb(32)|0;i=k+32|0;j=b;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[k+8>>2]=f[j+8>>2];f[k+12>>2]=f[j+12>>2];f[k+16>>2]=f[j+16>>2];f[k+20>>2]=f[j+20>>2];f[k+24>>2]=f[j+24>>2];f[k+28>>2]=f[j+28>>2];f[e>>2]=0;j=e+4|0;f[j>>2]=0;f[e+8>>2]=0;b=(f[d>>2]|0)-(f[c>>2]|0)|0;a=b>>3;if(!a){d=0;e=0;b=0;a=0;c=0}else{if(a>>>0>536870911)AMb(e);h=pOb(b)|0;f[j>>2]=h;f[e>>2]=h;f[e+8>>2]=h+(a<<3);a=f[g>>2]|0;b=(f[d>>2]|0)-a|0;c=h;if((b|0)>0){g=h+(b>>>3<<3)|0;bQb(h|0,a|0,b|0)|0;f[j>>2]=g;d=h;e=g;b=c;a=g;c=h}else{d=h;e=h;b=c;a=c;c=h}}u7a(k,i);u7a(d,e);if((a-b|0)==32)if((f[k>>2]|0)==(f[b>>2]|0))if((f[k+4>>2]|0)==(f[b+4>>2]|0))if((f[k+8>>2]|0)==(f[b+8>>2]|0))if((f[k+12>>2]|0)==(f[b+12>>2]|0))if((f[k+16>>2]|0)==(f[b+16>>2]|0))if((f[k+20>>2]|0)==(f[b+20>>2]|0))if((f[k+24>>2]|0)==(f[b+24>>2]|0))b=(f[k+28>>2]|0)==(f[b+28>>2]|0)?1:0;else b=0;else b=0;else b=0;else b=0;else b=0;else b=0;else b=0;else b=0;if(d|0){if((e|0)!=(d|0))f[j>>2]=e+(~((e+-8-d|0)>>>3)<<3);sOb(c)}sOb(k);k=b;u=l;return k|0}function u7a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+1632|0;k=0;a:while(1){d=b;i=b+-8|0;e=b+-16|0;j=b+-4|0;c=a;while(1){l=c;f[m+32>>2]=c;f[m+136>>2]=b;f[m+168>>2]=l;f[m+288>>2]=g;f[m+504>>2]=d;f[m+704>>2]=i;f[m+920>>2]=e;f[m+1096>>2]=j;f[m+1464>>2]=h;f[m+1560>>2]=k;f[m+1576>>2]=0;f[m+1580>>2]=0;N7a(m);c=f[m+32>>2]|0;l=f[m+168>>2]|0;g=f[m+288>>2]|0;h=f[m+1464>>2]|0;k=f[m+1560>>2]|0;G=f[m+1576>>2]|0;D=f[m+1580>>2]|0;H=+n[m+1580>>2];f[m+1576>>2]=0;f[m+1580>>2]=0;if((G|0)==1)break;if((G|0)==2)switch(D|0){case 11:break a}if((G|0)==3)continue}if((k|0)==133){k=0;u7a(g+8|0,b);a=l;b=g;continue}else if((k|0)==134){k=0;if(h){k=135;break}else{a=l;b=g;continue}}}a=1;if(a)if((k|0)==5){b=f[i>>2]|0;a=f[l>>2]|0;if((b|0)==(a|0)){if((f[j>>2]|0)>=(f[l+4>>2]|0)){u=m;return}}else if((b|0)>=(a|0)){u=m;return}k=l;j=f[k>>2]|0;k=f[k+4>>2]|0;h=f[i+4>>2]|0;f[l>>2]=f[i>>2];f[l+4>>2]=h;f[i>>2]=j;f[i+4>>2]=k;u=m;return}else if((k|0)==9){d=l+8|0;c=f[d>>2]|0;a=f[l>>2]|0;if((c|0)==(a|0))b=(f[l+12>>2]|0)<(f[l+4>>2]|0);else b=(c|0)<(a|0);a=f[i>>2]|0;if((a|0)==(c|0))a=(f[j>>2]|0)<(f[l+12>>2]|0);else a=(a|0)<(c|0);if(!b){if(!a){u=m;return}b=f[d>>2]|0;a=f[d+4>>2]|0;k=f[i+4>>2]|0;f[d>>2]=f[i>>2];f[d+4>>2]=k;f[i>>2]=b;f[i+4>>2]=a;a=f[d>>2]|0;b=f[l>>2]|0;if((a|0)==(b|0)){if((f[l+12>>2]|0)>=(f[l+4>>2]|0)){u=m;return}}else if((a|0)>=(b|0)){u=m;return}k=l;j=f[k>>2]|0;k=f[k+4>>2]|0;i=f[d+4>>2]|0;f[l>>2]=f[d>>2];f[l+4>>2]=i;f[d>>2]=j;f[d+4>>2]=k;u=m;return}c=l;b=f[c>>2]|0;c=f[c+4>>2]|0;if(a){k=f[i+4>>2]|0;f[l>>2]=f[i>>2];f[l+4>>2]=k;f[i>>2]=b;f[i+4>>2]=c;u=m;return}k=f[d+4>>2]|0;a=l;f[a>>2]=f[d>>2];f[a+4>>2]=k;f[d>>2]=b;f[d+4>>2]=c;a=f[i>>2]|0;if((a|0)==(b|0)){if((f[j>>2]|0)>=(c|0)){u=m;return}}else if((a|0)>=(b|0)){u=m;return}l=f[i+4>>2]|0;f[d>>2]=f[i>>2];f[d+4>>2]=l;f[i>>2]=b;f[i+4>>2]=c;u=m;return}else if((k|0)==27){v7a(l,l+8|0,l+16|0,i)|0;u=m;return}else if((k|0)==28){w7a(l,l+8|0,l+16|0,l+24|0,i)|0;u=m;return}else a=1;if(a)if((k|0)==30){i=l+16|0;h=l+8|0;a=f[h>>2]|0;g=f[l>>2]|0;if((a|0)==(g|0))c=(f[l+12>>2]|0)<(f[l+4>>2]|0);else c=(a|0)<(g|0);d=f[i>>2]|0;if((d|0)==(a|0))e=(f[l+20>>2]|0)<(f[l+12>>2]|0);else e=(d|0)<(a|0);do if(c){c=l;a=f[c>>2]|0;c=f[c+4>>2]|0;if(e){j=f[i+4>>2]|0;d=l;f[d>>2]=f[i>>2];f[d+4>>2]=j;f[i>>2]=a;f[i+4>>2]=c;d=a;break}g=f[h+4>>2]|0;j=l;f[j>>2]=f[h>>2];f[j+4>>2]=g;f[h>>2]=a;f[h+4>>2]=c;if((d|0)==(a|0)){if((f[l+20>>2]|0)>=(c|0))break}else if((d|0)>=(a|0))break;d=f[i+4>>2]|0;f[h>>2]=f[i>>2];f[h+4>>2]=d;f[i>>2]=a;f[i+4>>2]=c;d=a}else if(e){d=f[h>>2]|0;j=f[h+4>>2]|0;a=f[i>>2]|0;c=f[i+4>>2]|0;f[h>>2]=a;f[h+4>>2]=c;f[i>>2]=d;f[i+4>>2]=j;if((g|0)==(a|0)){if((f[l+4>>2]|0)<=(c|0))break}else if((g|0)<=(a|0))break;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;e=l;f[e>>2]=a;f[e+4>>2]=c;f[h>>2]=g;f[h+4>>2]=j}while(0);a=l+24|0;if((a|0)==(b|0)){u=m;return}else{h=a;a=i}while(1){c=f[h>>2]|0;if((c|0)==(d|0)){if((f[h+4>>2]|0)<(f[a+4>>2]|0))k=52}else if((c|0)<(d|0))k=52;if((k|0)==52){k=0;g=h;e=f[g>>2]|0;g=f[g+4>>2]|0;d=a;i=f[d+4>>2]|0;j=h;f[j>>2]=f[d>>2];f[j+4>>2]=i;b:do if((a|0)!=(l|0))while(1){c=a+-8|0;d=f[c>>2]|0;if((d|0)==(e|0)){if((f[a+-4>>2]|0)<=(g|0))break b}else if((d|0)<=(e|0))break b;i=f[c+4>>2]|0;j=a;f[j>>2]=f[c>>2];f[j+4>>2]=i;if((c|0)==(l|0)){a=c;break}else a=c}while(0);j=a;f[j>>2]=e;f[j+4>>2]=g}a=h+8|0;if((a|0)==(b|0))break;d=f[h>>2]|0;j=h;h=a;a=j}u=m;return}else if((k|0)==135)if(1){u=m;return}u=m}function v7a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;h=f[b>>2]|0;e=f[a>>2]|0;if((h|0)==(e|0))e=(f[b+4>>2]|0)<(f[a+4>>2]|0);else e=(h|0)<(e|0);g=f[c>>2]|0;if((g|0)==(h|0))h=(f[c+4>>2]|0)<(f[b+4>>2]|0);else h=(g|0)<(h|0);do if(e){e=a;i=f[e>>2]|0;e=f[e+4>>2]|0;if(h){h=c;g=f[h+4>>2]|0;j=a;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=1;g=i;break}h=b;j=f[h+4>>2]|0;g=a;f[g>>2]=f[h>>2];f[g+4>>2]=j;g=b;f[g>>2]=i;f[g+4>>2]=e;g=f[c>>2]|0;if((g|0)==(i|0)){if((f[c+4>>2]|0)>=(e|0)){j=1;break}}else if((g|0)>=(i|0)){j=1;break}h=c;g=f[h+4>>2]|0;j=b;f[j>>2]=f[h>>2];f[j+4>>2]=g;j=c;f[j>>2]=i;f[j+4>>2]=e;j=2;g=i}else if(h){h=b;g=f[h>>2]|0;h=f[h+4>>2]|0;i=c;j=f[i+4>>2]|0;e=b;f[e>>2]=f[i>>2];f[e+4>>2]=j;e=c;f[e>>2]=g;f[e+4>>2]=h;e=f[b>>2]|0;h=f[a>>2]|0;if((e|0)==(h|0)){if((f[b+4>>2]|0)>=(f[a+4>>2]|0)){j=1;break}}else if((e|0)>=(h|0)){j=1;break}g=a;i=f[g>>2]|0;g=f[g+4>>2]|0;e=b;h=f[e+4>>2]|0;j=a;f[j>>2]=f[e>>2];f[j+4>>2]=h;j=b;f[j>>2]=i;f[j+4>>2]=g;j=2;g=f[c>>2]|0}else j=0;while(0);e=f[d>>2]|0;if((e|0)==(g|0)){if((f[d+4>>2]|0)>=(f[c+4>>2]|0)){b=j;return b|0}}else if((e|0)>=(g|0)){b=j;return b|0}g=c;h=f[g>>2]|0;g=f[g+4>>2]|0;k=d;i=f[k+4>>2]|0;e=c;f[e>>2]=f[k>>2];f[e+4>>2]=i;e=d;f[e>>2]=h;f[e+4>>2]=g;e=j+1|0;g=f[c>>2]|0;h=f[b>>2]|0;if((g|0)==(h|0)){if((f[c+4>>2]|0)>=(f[b+4>>2]|0)){k=e;return k|0}}else if((g|0)>=(h|0)){k=e;return k|0}g=b;h=f[g>>2]|0;g=f[g+4>>2]|0;d=c;k=f[d+4>>2]|0;e=b;f[e>>2]=f[d>>2];f[e+4>>2]=k;e=c;f[e>>2]=h;f[e+4>>2]=g;e=j+2|0;g=f[b>>2]|0;h=f[a>>2]|0;if((g|0)==(h|0)){if((f[b+4>>2]|0)>=(f[a+4>>2]|0)){k=e;return k|0}}else if((g|0)>=(h|0)){k=e;return k|0}c=a;d=f[c>>2]|0;c=f[c+4>>2]|0;h=b;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=b;f[k>>2]=d;f[k+4>>2]=c;k=j+3|0;return k|0}function w7a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;i=v7a(a,b,c,d)|0;g=f[e>>2]|0;h=f[d>>2]|0;if((g|0)==(h|0)){if((f[e+4>>2]|0)>=(f[d+4>>2]|0))return i|0}else if((g|0)>=(h|0))return i|0;g=d;h=f[g>>2]|0;g=f[g+4>>2]|0;l=e;k=f[l+4>>2]|0;j=d;f[j>>2]=f[l>>2];f[j+4>>2]=k;f[e>>2]=h;f[e+4>>2]=g;e=i+1|0;g=f[d>>2]|0;h=f[c>>2]|0;if((g|0)==(h|0)){if((f[d+4>>2]|0)>=(f[c+4>>2]|0)){l=e;return l|0}}else if((g|0)>=(h|0)){l=e;return l|0}g=c;h=f[g>>2]|0;g=f[g+4>>2]|0;k=d;l=f[k+4>>2]|0;e=c;f[e>>2]=f[k>>2];f[e+4>>2]=l;e=d;f[e>>2]=h;f[e+4>>2]=g;e=i+2|0;g=f[c>>2]|0;h=f[b>>2]|0;if((g|0)==(h|0)){if((f[c+4>>2]|0)>=(f[b+4>>2]|0)){l=e;return l|0}}else if((g|0)>=(h|0)){l=e;return l|0}g=b;h=f[g>>2]|0;g=f[g+4>>2]|0;k=c;l=f[k+4>>2]|0;e=b;f[e>>2]=f[k>>2];f[e+4>>2]=l;e=c;f[e>>2]=h;f[e+4>>2]=g;e=i+3|0;g=f[b>>2]|0;h=f[a>>2]|0;if((g|0)==(h|0)){if((f[b+4>>2]|0)>=(f[a+4>>2]|0)){l=e;return l|0}}else if((g|0)>=(h|0)){l=e;return l|0}k=a;j=f[k>>2]|0;k=f[k+4>>2]|0;d=b;c=f[d+4>>2]|0;l=a;f[l>>2]=f[d>>2];f[l+4>>2]=c;l=b;f[l>>2]=j;f[l+4>>2]=k;l=i+4|0;return l|0}function x7a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;switch(b-a>>3|0){case 2:{c=b+-8|0;d=f[c>>2]|0;e=f[a>>2]|0;if((d|0)==(e|0)){if((f[b+-4>>2]|0)>=(f[a+4>>2]|0)){b=1;return b|0}}else if((d|0)>=(e|0)){b=1;return b|0}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=c;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=c;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}case 3:{h=a+8|0;g=b+-8|0;e=f[h>>2]|0;c=f[a>>2]|0;if((e|0)==(c|0))d=(f[a+12>>2]|0)<(f[a+4>>2]|0);else d=(e|0)<(c|0);c=f[g>>2]|0;if((c|0)==(e|0))c=(f[b+-4>>2]|0)<(f[a+12>>2]|0);else c=(c|0)<(e|0);if(!d){if(!c){b=1;return b|0}d=h;b=f[d>>2]|0;d=f[d+4>>2]|0;k=g;l=f[k+4>>2]|0;c=h;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=g;f[c>>2]=b;f[c+4>>2]=d;c=f[h>>2]|0;d=f[a>>2]|0;if((c|0)==(d|0)){if((f[a+12>>2]|0)>=(f[a+4>>2]|0)){b=1;return b|0}}else if((c|0)>=(d|0)){b=1;return b|0}l=a;k=f[l>>2]|0;l=f[l+4>>2]|0;i=h;j=f[i+4>>2]|0;b=a;f[b>>2]=f[i>>2];f[b+4>>2]=j;b=h;f[b>>2]=k;f[b+4>>2]=l;b=1;return b|0}e=a;d=f[e>>2]|0;e=f[e+4>>2]|0;if(c){k=g;l=f[k+4>>2]|0;b=a;f[b>>2]=f[k>>2];f[b+4>>2]=l;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}k=h;l=f[k+4>>2]|0;c=a;f[c>>2]=f[k>>2];f[c+4>>2]=l;c=h;f[c>>2]=d;f[c+4>>2]=e;c=f[g>>2]|0;if((c|0)==(d|0)){if((f[b+-4>>2]|0)>=(e|0)){b=1;return b|0}}else if((c|0)>=(d|0)){b=1;return b|0}l=g;a=f[l+4>>2]|0;b=h;f[b>>2]=f[l>>2];f[b+4>>2]=a;b=g;f[b>>2]=d;f[b+4>>2]=e;b=1;return b|0}case 4:{v7a(a,a+8|0,a+16|0,b+-8|0)|0;b=1;return b|0}case 5:{w7a(a,a+8|0,a+16|0,a+24|0,b+-8|0)|0;b=1;return b|0}case 1:case 0:{b=1;return b|0}default:{d=a+16|0;j=a+8|0;c=f[j>>2]|0;i=f[a>>2]|0;if((c|0)==(i|0))e=(f[a+12>>2]|0)<(f[a+4>>2]|0);else e=(c|0)<(i|0);g=f[d>>2]|0;if((g|0)==(c|0))h=(f[a+20>>2]|0)<(f[a+12>>2]|0);else h=(g|0)<(c|0);do if(e){e=a;c=f[e>>2]|0;e=f[e+4>>2]|0;if(h){j=d;k=f[j+4>>2]|0;g=a;f[g>>2]=f[j>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c;break}h=j;i=f[h+4>>2]|0;k=a;f[k>>2]=f[h>>2];f[k+4>>2]=i;k=j;f[k>>2]=c;f[k+4>>2]=e;if((g|0)==(c|0)){if((f[a+20>>2]|0)>=(e|0))break}else if((g|0)>=(c|0))break;i=d;k=f[i+4>>2]|0;g=j;f[g>>2]=f[i>>2];f[g+4>>2]=k;g=d;f[g>>2]=c;f[g+4>>2]=e;g=c}else if(h){h=j;g=f[h>>2]|0;h=f[h+4>>2]|0;e=d;c=f[e>>2]|0;e=f[e+4>>2]|0;k=j;f[k>>2]=c;f[k+4>>2]=e;k=d;f[k>>2]=g;f[k+4>>2]=h;if((i|0)==(c|0)){if((f[a+4>>2]|0)<=(e|0))break}else if((i|0)<=(c|0))break;i=a;h=f[i>>2]|0;i=f[i+4>>2]|0;k=a;f[k>>2]=c;f[k+4>>2]=e;k=j;f[k>>2]=h;f[k+4>>2]=i}while(0);c=a+24|0;a:do if((c|0)==(b|0)){d=1;c=0}else{k=c;c=0;while(1){e=f[k>>2]|0;if((e|0)==(g|0)){if((f[k+4>>2]|0)<(f[d+4>>2]|0))l=48}else if((e|0)<(g|0))l=48;if((l|0)==48){l=0;j=k;i=f[j>>2]|0;j=f[j+4>>2]|0;e=d;g=f[e+4>>2]|0;h=k;f[h>>2]=f[e>>2];f[h+4>>2]=g;b:do if((d|0)!=(a|0)){h=d;while(1){g=d;d=h+-8|0;e=f[d>>2]|0;if((e|0)==(i|0)){if((f[h+-4>>2]|0)<=(j|0)){d=g;break b}}else if((e|0)<=(i|0)){d=g;break b}m=d;e=f[m+4>>2]|0;h=g;f[h>>2]=f[m>>2];f[h+4>>2]=e;if((d|0)==(a|0))break;else h=d}}while(0);m=d;f[m>>2]=i;f[m+4>>2]=j;c=c+1|0;if((c|0)==8){d=0;c=(k+8|0)==(b|0);break a}}d=k+8|0;if((d|0)==(b|0)){d=1;c=0;break a}g=f[k>>2]|0;m=k;k=d;d=m}}while(0);m=c|d;return m|0}}return 0}function y7a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0.0,l=0,m=0.0,n=0,o=0.0,q=0.0,r=0.0,s=0.0,t=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0,G=0,H=0,I=0.0,J=0.0;H=u;u=u+512|0;F=H+464|0;G=H;l=pOb(48)|0;f[l>>2]=f[c>>2];f[l+4>>2]=f[c+4>>2];f[l+8>>2]=f[c+8>>2];f[l+12>>2]=f[c+12>>2];h=l+16|0;f[l+36>>2]=0;f[l+40>>2]=0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;b[h+16>>0]=0;h=f[64687]|0;f[64687]=h+1;f[l+44>>2]=h;f[a>>2]=l;h=pOb(12)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[l+24>>2]=h;h=pOb(12)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;l=l+28|0;n=f[l>>2]|0;f[l>>2]=h;if(n|0){d=f[n>>2]|0;if(d|0){l=n+4|0;e=f[l>>2]|0;if((e|0)!=(d|0)){do{g=e+-12|0;f[l>>2]=g;h=f[g>>2]|0;if(!h)e=g;else{e=e+-8|0;g=f[e>>2]|0;if((g|0)!=(h|0))f[e>>2]=g+(~(((g+-24-h|0)>>>0)/24|0)*24|0);sOb(h);e=f[l>>2]|0}}while((e|0)!=(d|0));d=f[n>>2]|0}sOb(d)}sOb(n)}l=f[a>>2]|0;n=pOb(12)|0;rqb(n,c);c=l+20|0;d=f[c>>2]|0;f[c>>2]=n;if(d|0){e=f[d>>2]|0;if(e|0){g=d+4|0;h=f[g>>2]|0;if((h|0)!=(e|0))f[g>>2]=h+(~((h+-8-e|0)>>>3)<<3);sOb(e)}sOb(d)}B=+(f[l>>2]|0);C=+(f[l+4>>2]|0);D=+(f[l+8>>2]|0);E=+(f[l+12>>2]|0);i=B-B;j=C-E;k=j+j*0.0;m=-i-i*0.0;o=i*j;o=o-o;q=+L(+(k*k+(m*m+o*o)));z=i*i;A=j*j;if(!(q<=+L(+(z+(A+1.0)))*+L(+(z+(A+0.0)))*2.220446049250313e-16)){A=k/q;z=m/q;y=o/q}else{p[F>>3]=i;p[F+16>>3]=j;p[F+32>>3]=-1.0;p[F+8>>3]=i;p[F+24>>3]=j;p[F+40>>3]=0.0;b[G+152>>0]=0;b[G+153>>0]=0;b[G+154>>0]=0;f[G+160>>2]=0;f[G+168>>2]=-1;f[G+172>>2]=-1;b[G+304>>0]=0;b[G+305>>0]=0;g7a(G,F,16)|0;A=+p[G+80>>3];z=+p[G+88>>3];y=+p[G+96>>3]}i=D-D;j=E-C;k=j+j*0.0;m=-i-i*0.0;o=i*j;o=o-o;q=+L(+(k*k+(m*m+o*o)));w=i*i;x=j*j;if(!(q<=+L(+(w+(x+1.0)))*+L(+(w+(x+0.0)))*2.220446049250313e-16)){x=k/q;w=m/q;v=o/q}else{p[F>>3]=i;p[F+16>>3]=j;p[F+32>>3]=-1.0;p[F+8>>3]=i;p[F+24>>3]=j;p[F+40>>3]=0.0;b[G+152>>0]=0;b[G+153>>0]=0;b[G+154>>0]=0;f[G+160>>2]=0;f[G+168>>2]=-1;f[G+172>>2]=-1;b[G+304>>0]=0;b[G+305>>0]=0;g7a(G,F,16)|0;x=+p[G+80>>3];w=+p[G+88>>3];v=+p[G+96>>3]}i=D-B;j=C-C;k=j+j*0.0;m=-i-i*0.0;o=j*i;o=o-o;q=+L(+(k*k+(o*o+m*m)));s=i*i;t=j*j;if(!(q<=+L(+(s+(t+1.0)))*+L(+(s+(t+0.0)))*2.220446049250313e-16)){t=k/q;s=m/q;r=o/q}else{p[F>>3]=i;p[F+16>>3]=j;p[F+32>>3]=-1.0;p[F+8>>3]=i;p[F+24>>3]=j;p[F+40>>3]=0.0;b[G+152>>0]=0;b[G+153>>0]=0;b[G+154>>0]=0;f[G+160>>2]=0;f[G+168>>2]=-1;f[G+172>>2]=-1;b[G+304>>0]=0;b[G+305>>0]=0;g7a(G,F,16)|0;t=+p[G+80>>3];s=+p[G+88>>3];r=+p[G+96>>3]}i=B-D;j=E-E;k=j+j*0.0;m=-i-i*0.0;o=i*j;o=o-o;q=+L(+(k*k+(m*m+o*o)));J=i*i;I=j*j;if(!(q<=+L(+(J+(I+1.0)))*+L(+(J+(I+0.0)))*2.220446049250313e-16)){k=k/q;j=m/q;i=o/q}else{p[F>>3]=i;p[F+16>>3]=j;p[F+32>>3]=-1.0;p[F+8>>3]=i;p[F+24>>3]=j;p[F+40>>3]=0.0;b[G+152>>0]=0;b[G+153>>0]=0;b[G+154>>0]=0;f[G+160>>2]=0;f[G+168>>2]=-1;f[G+172>>2]=-1;b[G+304>>0]=0;b[G+305>>0]=0;g7a(G,F,16)|0;k=+p[G+80>>3];j=+p[G+88>>3];i=+p[G+96>>3]}F=pOb(12)|0;d=pOb(128)|0;f[F>>2]=d;G=d+128|0;f[F+8>>2]=G;p[d>>3]=A;p[d+8>>3]=z;p[d+16>>3]=y;p[d+24>>3]=-(A*B+(y*0.0+z*E));p[d+32>>3]=x;p[d+40>>3]=w;p[d+48>>3]=v;p[d+56>>3]=-(x*D+(v*0.0+w*C));p[d+64>>3]=t;p[d+72>>3]=s;p[d+80>>3]=r;p[d+88>>3]=-(t*B+(r*0.0+s*C));p[d+96>>3]=k;p[d+104>>3]=j;p[d+112>>3]=i;p[d+120>>3]=-(k*D+(i*0.0+j*E));f[F+4>>2]=G;G=l+16|0;d=f[G>>2]|0;f[G>>2]=F;if(!d){u=H;return}e=f[d>>2]|0;if(e|0){g=d+4|0;h=f[g>>2]|0;if((h|0)!=(e|0))f[g>>2]=h+(~((h+-32-e|0)>>>5)<<5);sOb(e)}sOb(d);u=H;return}function z7a(a,c){a=a|0;c=c|0;var d=0,e=0;d=pOb(48)|0;f[d>>2]=f[a+4>>2];f[d+4>>2]=f[a+8>>2];f[d+8>>2]=f[a+12>>2];f[d+12>>2]=f[a+16>>2];e=d+16|0;f[d+36>>2]=0;f[d+40>>2]=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;b[e+16>>0]=0;e=f[64687]|0;f[64687]=e+1;f[d+44>>2]=e;e=f[a>>2]|0;f[a>>2]=d;if(e){l4a(e);sOb(e);d=f[a>>2]|0}f[a+20>>2]=c;c=a+24|0;f[c>>2]=(f[c>>2]|0)+1;A7a(a,d,0);return}function A7a(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+48|0;i=r+24|0;k=r+8|0;l=r;j=f[c>>2]|0;e=f[c+4>>2]|0;f[i>>2]=j;f[i+4>>2]=e;m=f[c+8>>2]|0;n=f[c+12>>2]|0;f[k+8>>2]=m;f[k+12>>2]=n;if(!(d&1)){o=((m-j|0)/2|0)+j|0;g=o;h=n;p=e}else{p=((n-e|0)/2|0)+e|0;g=m;h=p;o=j}f[i+8>>2]=g;f[i+12>>2]=h;f[k>>2]=o;f[k+4>>2]=p;q=d+1|0;if((q|0)==(f[a+20>>2]|0)){y7a(l,i);q=c+36|0;p=f[l>>2]|0;f[l>>2]=0;d=f[q>>2]|0;f[q>>2]=p;if(d|0){l4a(d);sOb(d)}y7a(l,k);q=c+40|0;c=f[l>>2]|0;f[l>>2]=0;d=f[q>>2]|0;f[q>>2]=c;if(d|0){l4a(d);sOb(d)}a=a+24|0;f[a>>2]=(f[a>>2]|0)+2;u=r;return}else{l=pOb(48)|0;f[l>>2]=j;f[l+4>>2]=e;f[l+8>>2]=g;f[l+12>>2]=h;g=l+16|0;f[l+36>>2]=0;f[l+40>>2]=0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;b[g+16>>0]=0;g=f[64687]|0;d=g+1|0;f[64687]=d;f[l+44>>2]=g;g=c+36|0;e=f[g>>2]|0;f[g>>2]=l;if(e){l4a(e);sOb(e);d=f[64687]|0}l=pOb(48)|0;f[l>>2]=o;f[l+4>>2]=p;f[l+8>>2]=m;f[l+12>>2]=n;e=l+16|0;f[l+36>>2]=0;f[l+40>>2]=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;b[e+16>>0]=0;f[64687]=d+1;f[l+44>>2]=d;d=c+40|0;e=f[d>>2]|0;f[d>>2]=l;if(e|0){l4a(e);sOb(e)}c=a+24|0;f[c>>2]=(f[c>>2]|0)+2;A7a(a,f[g>>2]|0,q);A7a(a,f[d>>2]|0,q);u=r;return}}function B7a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+176|0;d=e+16|0;g=e;Xmb(d,0);pqb(g,b);a=C7a(a,f[a>>2]|0,b,g,d)|0;if(a){q4a(d,40996);g=d+76|0;Tlb(g);u=e;return a|0}Ymb(d,1,c,1,1)|0;gnb(c,1);q4a(d,40996);g=d+76|0;Tlb(g);u=e;return a|0}function C7a(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0;v=u;u=u+192|0;q=v+36|0;t=v+24|0;s=v+12|0;n=v;l=f[c+36>>2]|0;if(l|0){if(!(b[l+32>>0]|0))if((f[e+8>>2]|0)<(f[l>>2]|0))k=0;else if((f[e>>2]|0)>(f[l+8>>2]|0))k=0;else if((f[e+12>>2]|0)<(f[l+4>>2]|0))k=0;else k=(f[e+4>>2]|0)<=(f[l+12>>2]|0);else if(!(b[(f[c+40>>2]|0)+32>>0]|0))k=0;else{h=c+32|0;if(b[h>>0]|0){t=1;u=v;return t|0}b[h>>0]=1;t=1;u=v;return t|0}j=c+40|0;h=f[j>>2]|0;if(!(b[h+32>>0]|0))if((f[e+8>>2]|0)<(f[h>>2]|0))i=0;else if((f[e>>2]|0)>(f[h+8>>2]|0))i=0;else if((f[e+12>>2]|0)<(f[h+4>>2]|0))i=0;else i=(f[e+4>>2]|0)<=(f[h+12>>2]|0);else i=0;if(k)h=C7a(a,l,d,e,g)|0;else h=1;if(!i){t=h;u=v;return t|0}t=h&(C7a(a,f[j>>2]|0,d,e,g)|0);u=v;return t|0}zqb(t,d);f[s>>2]=0;r=s+4|0;f[r>>2]=0;f[s+8>>2]=0;o=c+20|0;l=f[o>>2]|0;Xmb(q,0);h=q+76|0;Vlb(h,l,1,1)|0;Vlb(h,t,0,1)|0;f[n>>2]=0;l=n+4|0;f[l>>2]=0;f[n+8>>2]=0;Ymb(q,0,n,1,1)|0;gnb(n,1);q4a(q,40996);Tlb(h);h=f[s>>2]|0;if(!h)h=s+8|0;else{i=f[r>>2]|0;if((i|0)!=(h|0)){do{j=i+-12|0;f[r>>2]=j;k=f[j>>2]|0;if(!k)i=j;else{i=i+-8|0;j=f[i>>2]|0;if((j|0)!=(k|0))f[i>>2]=j+(~((j+-8-k|0)>>>3)<<3);sOb(k);i=f[r>>2]|0}}while((i|0)!=(h|0));h=f[s>>2]|0}sOb(h);h=s+8|0;f[h>>2]=0;f[r>>2]=0;f[s>>2]=0}f[s>>2]=f[n>>2];f[r>>2]=f[l>>2];f[h>>2]=f[n+8>>2];m=c+24|0;l=f[m>>2]|0;Xmb(q,0);h=q+76|0;Wmb(h,l,1,1)|0;Wmb(h,s,0,1)|0;f[n>>2]=0;l=n+4|0;f[l>>2]=0;f[n+8>>2]=0;Ymb(q,2,n,1,1)|0;gnb(n,1);q4a(q,40996);Tlb(h);h=f[s>>2]|0;if(!h)h=s+8|0;else{i=f[r>>2]|0;if((i|0)!=(h|0)){do{j=i+-12|0;f[r>>2]=j;k=f[j>>2]|0;if(!k)i=j;else{i=i+-8|0;j=f[i>>2]|0;if((j|0)!=(k|0))f[i>>2]=j+(~((j+-8-k|0)>>>3)<<3);sOb(k);i=f[r>>2]|0}}while((i|0)!=(h|0));h=f[s>>2]|0}sOb(h);h=s+8|0;f[h>>2]=0;f[r>>2]=0;f[s>>2]=0}a=f[n>>2]|0;f[s>>2]=a;e=f[l>>2]|0;f[r>>2]=e;f[h>>2]=f[n+8>>2];h=a;if((h|0)==(e|0))l=1;else{a=f[m>>2]|0;Xmb(q,0);e=q+76|0;Wmb(e,a,0,1)|0;Wmb(e,s,0,1)|0;f[n>>2]=0;a=n+4|0;f[a>>2]=0;f[n+8>>2]=0;Ymb(q,1,n,1,1)|0;gnb(n,1);q4a(q,40996);Tlb(e);e=f[m>>2]|0;i=f[e>>2]|0;if(!i){h=e+4|0;i=e+8|0}else{h=e+4|0;j=f[h>>2]|0;if((j|0)!=(i|0)){do{k=j+-12|0;f[h>>2]=k;l=f[k>>2]|0;if(!l)j=k;else{j=j+-8|0;k=f[j>>2]|0;if((k|0)!=(l|0))f[j>>2]=k+(~((k+-8-l|0)>>>3)<<3);sOb(l);j=f[h>>2]|0}}while((j|0)!=(i|0));i=f[e>>2]|0}sOb(i);i=e+8|0;f[i>>2]=0;f[h>>2]=0;f[e>>2]=0}f[e>>2]=f[n>>2];f[h>>2]=f[a>>2];f[i>>2]=f[n+8>>2];Wmb(g+76|0,s,0,1)|0;e=f[d>>2]|0;E=+(f[e>>2]|0);D=+(f[e+4>>2]|0);C=+(f[e+8>>2]|0);B=+(f[e+12>>2]|0);A=+(f[e+16>>2]|0);z=+(f[e+20>>2]|0);y=+(f[e+24>>2]|0);x=+(f[e+28>>2]|0);w=+(f[e+32>>2]|0);e=q+4|0;a=pOb(72)|0;f[q>>2]=a;h=a+72|0;f[q+8>>2]=h;p[a>>3]=E;p[a+8>>3]=D;p[a+16>>3]=C;p[a+24>>3]=B;p[a+32>>3]=A;p[a+40>>3]=z;p[a+48>>3]=y;p[a+56>>3]=x;p[a+64>>3]=w;f[e>>2]=h;h=f[c+28>>2]|0;a=h+4|0;k=f[a>>2]|0;if((k|0)==(f[h+8>>2]|0))D7a(h,q);else{f[k>>2]=0;l=k+4|0;f[l>>2]=0;f[k+8>>2]=0;h=(f[e>>2]|0)-(f[q>>2]|0)|0;j=(h|0)/24|0;if(h|0){if(j>>>0>178956970)AMb(k);i=pOb(h)|0;f[l>>2]=i;f[k>>2]=i;f[k+8>>2]=i+(j*24|0);h=f[q>>2]|0;j=f[e>>2]|0;if((h|0)!=(j|0)){do{p[i>>3]=+p[h>>3];p[i+8>>3]=+p[h+8>>3];p[i+16>>3]=+p[h+16>>3];h=h+24|0;i=i+24|0}while((h|0)!=(j|0));f[l>>2]=i}}f[a>>2]=(f[a>>2]|0)+12}if(t7a(f[o>>2]|0,f[m>>2]|0)|0)b[c+32>>0]=1;h=f[q>>2]|0;if(h|0){i=f[e>>2]|0;if((i|0)!=(h|0))f[e>>2]=i+(~(((i+-24-h|0)>>>0)/24|0)*24|0);sOb(h)}l=0;h=f[s>>2]|0}if(h|0){i=f[r>>2]|0;if((i|0)!=(h|0)){do{j=i+-12|0;f[r>>2]=j;k=f[j>>2]|0;if(!k)i=j;else{i=i+-8|0;j=f[i>>2]|0;if((j|0)!=(k|0))f[i>>2]=j+(~((j+-8-k|0)>>>3)<<3);sOb(k);i=f[r>>2]|0}}while((i|0)!=(h|0));h=f[s>>2]|0}sOb(h)}j=f[t>>2]|0;if(j|0){h=t+4|0;i=f[h>>2]|0;if((i|0)!=(j|0))f[h>>2]=i+(~((i+-8-j|0)>>>3)<<3);sOb(j)}t=l;u=v;return t|0}function D7a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0;r=a+4|0;e=f[r>>2]|0;h=f[a>>2]|0;m=(e-h|0)/12|0;c=m+1|0;n=h;if(c>>>0>357913941)AMb(a);q=a+8|0;o=((f[q>>2]|0)-h|0)/12|0;g=o<<1;g=o>>>0<178956970?(g>>>0>>0?c:g):357913941;do if(!g)k=0;else if(g>>>0>357913941)vd();else{k=pOb(g*12|0)|0;break}while(0);d=k+(m*12|0)|0;c=d;o=k+(g*12|0)|0;f[d>>2]=0;l=k+(m*12|0)+4|0;f[l>>2]=0;f[k+(m*12|0)+8>>2]=0;j=f[b+4>>2]|0;b=f[b>>2]|0;g=j-b|0;i=(g|0)/24|0;if(g|0){if(i>>>0>178956970)AMb(d);g=pOb(g)|0;f[l>>2]=g;f[d>>2]=g;f[k+(m*12|0)+8>>2]=g+(i*24|0);if((b|0)!=(j|0)){do{p[g>>3]=+p[b>>3];p[g+8>>3]=+p[b+8>>3];p[g+16>>3]=+p[b+16>>3];b=b+24|0;g=g+24|0}while((b|0)!=(j|0));f[l>>2]=g}}g=d+12|0;if((e|0)!=(n|0)){do{m=d+-12|0;l=e;e=e+-12|0;f[m>>2]=0;k=d+-8|0;f[k>>2]=0;f[d+-4>>2]=0;f[m>>2]=f[e>>2];m=l+-8|0;f[k>>2]=f[m>>2];l=l+-4|0;f[d+-4>>2]=f[l>>2];f[l>>2]=0;f[m>>2]=0;f[e>>2]=0;d=c+-12|0;c=d}while((e|0)!=(n|0));h=f[a>>2]|0}f[a>>2]=c;c=f[r>>2]|0;f[r>>2]=g;f[q>>2]=o;b=h;if((c|0)!=(b|0)){e=c;do{c=e;e=e+-12|0;g=f[e>>2]|0;if(g|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(g|0))f[c>>2]=d+(~(((d+-24-g|0)>>>0)/24|0)*24|0);sOb(g)}}while((e|0)!=(b|0))}if(!h)return;sOb(h);return}function E7a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;pqb(e,b);c=F7a(a,f[a>>2]|0,b,e,c)|0;u=d;return c|0}function F7a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0,N=0.0,O=0.0,P=0.0,Q=0.0,R=0.0;L=u;u=u+320|0;C=L+208|0;s=L+312|0;r=L+300|0;g=L+288|0;h=L+176|0;K=L+276|0;H=L+264|0;E=L+252|0;t=L+32|0;v=L;w=L+248|0;x=L+244|0;y=L+240|0;k=f[a+84>>2]|0;z=+p[k+48>>3];A=+p[k+56>>3];k=f[b+36>>2]|0;if(k|0){h=f[d+8>>2]|0;if((h|0)<(f[k>>2]|0))j=0;else if((f[d>>2]|0)>(f[k+8>>2]|0))j=0;else if((f[d+12>>2]|0)<(f[k+4>>2]|0))j=0;else j=(f[d+4>>2]|0)<=(f[k+12>>2]|0);i=b+40|0;g=f[i>>2]|0;if((h|0)<(f[g>>2]|0))h=0;else if((f[d>>2]|0)>(f[g+8>>2]|0))h=0;else if((f[d+12>>2]|0)<(f[g+4>>2]|0))h=0;else h=(f[d+4>>2]|0)<=(f[g+12>>2]|0);if(j)g=F7a(a,k,c,d,e)|0;else g=1;if(!h){K=g;u=L;return K|0}K=g&(F7a(a,f[i>>2]|0,c,d,e)|0);u=L;return K|0}I=f[c>>2]|0;R=+(f[I>>2]|0);Q=+(f[I+4>>2]|0);P=+(f[I+8>>2]|0);M=+(f[I+12>>2]|0);N=+(f[I+16>>2]|0);O=+(f[I+20>>2]|0);I=g+4|0;J=pOb(48)|0;f[g>>2]=J;G=J+48|0;f[g+8>>2]=G;p[J>>3]=R;p[J+8>>3]=Q;p[J+16>>3]=P;p[J+24>>3]=M;p[J+32>>3]=N;p[J+40>>3]=O;f[I>>2]=G;O=+(f[b+4>>2]|0);N=+(f[b+8>>2]|0);M=+(f[b+12>>2]|0);p[h>>3]=+(f[b>>2]|0);p[h+8>>3]=O;p[h+16>>3]=N;p[h+24>>3]=M;f[K>>2]=0;G=K+4|0;f[G>>2]=0;f[K+8>>2]=0;if(vqb(J,f[b+16>>2]|0,h,K)|0)i=1;else{f[H>>2]=0;F=H+4|0;f[F>>2]=0;f[H+8>>2]=0;D7a(H,K);f[E>>2]=0;D=E+4|0;f[D>>2]=0;f[E+8>>2]=0;m=f[b+28>>2]|0;g=f[m>>2]|0;m=f[m+4>>2]|0;a:do if((g|0)==(m|0)){g=f[H>>2]|0;n=f[F>>2]|0;B=42}else{n=r+4|0;o=r+8|0;q=E+8|0;l=g;b:while(1){qqb(v,f[l>>2]|0,3);g=f[F>>2]|0;h=f[H>>2]|0;if((g|0)!=(h|0)){j=0;do{b=h+(j*12|0)|0;qqb(C,f[b>>2]|0,2);if(Bqb(f[l>>2]|0,v,f[b>>2]|0,C,t,s,A,z)|0){if(f[s>>2]&2147483647|0){b=0;do{M=+p[t+(b*24|0)>>3];N=+p[t+(b*24|0)+8>>3];O=+p[t+(b*24|0)+16>>3];d=b|1;P=+p[t+(d*24|0)>>3];Q=+p[t+(d*24|0)+8>>3];R=+p[t+(d*24|0)+16>>3];d=pOb(48)|0;f[r>>2]=d;h=d+48|0;f[o>>2]=h;p[d>>3]=M;p[d+8>>3]=N;p[d+16>>3]=O;p[d+24>>3]=P;p[d+32>>3]=Q;p[d+40>>3]=R;f[n>>2]=h;h=f[D>>2]|0;if((h|0)==(f[q>>2]|0)){D7a(E,r);g=f[r>>2]|0}else{f[h>>2]=0;d=h+4|0;f[d>>2]=0;f[h+8>>2]=0;g=f[r>>2]|0;k=(f[n>>2]|0)-g|0;a=(k|0)/24|0;if(k){if(a>>>0>178956970)break b;c=pOb(k)|0;f[d>>2]=c;f[h>>2]=c;f[h+8>>2]=c+(a*24|0);g=f[r>>2]|0;a=f[n>>2]|0;if((g|0)!=(a|0)){k=g;h=c;do{p[h>>3]=+p[k>>3];p[h+8>>3]=+p[k+8>>3];p[h+16>>3]=+p[k+16>>3];k=k+24|0;h=h+24|0}while((k|0)!=(a|0));f[d>>2]=h;h=f[D>>2]|0}}f[D>>2]=h+12}if(g|0){h=f[n>>2]|0;if((h|0)!=(g|0))f[n>>2]=h+(~(((h+-24-g|0)>>>0)/24|0)*24|0);sOb(g)}b=b+2|0}while(b>>>0>2]<<1>>>0)}b=f[H>>2]|0;d=b+(j*12|0)|0;h=f[F>>2]|0;c=h+-12|0;a=f[d>>2]|0;f[d>>2]=f[c>>2];f[c>>2]=a;c=b+(j*12|0)+4|0;a=h+-8|0;d=f[c>>2]|0;f[c>>2]=f[a>>2];f[a>>2]=d;b=b+(j*12|0)+8|0;h=h+-4|0;a=f[b>>2]|0;f[b>>2]=f[h>>2];f[h>>2]=a;h=f[F>>2]|0;a=h+-12|0;while(1){g=h+-12|0;f[F>>2]=g;k=f[g>>2]|0;if(k){g=h+-8|0;h=f[g>>2]|0;if((h|0)!=(k|0))f[g>>2]=h+(~(((h+-24-k|0)>>>0)/24|0)*24|0);sOb(k);g=f[F>>2]|0}if((g|0)==(a|0))break;else h=g}}else{j=j+1|0;g=f[F>>2]|0}h=f[H>>2]|0}while(j>>>0<((g-h|0)/12|0)>>>0)}h=f[E>>2]|0;j=f[D>>2]|0;if((h|0)!=(j|0)){f[w>>2]=g;f[x>>2]=h;f[y>>2]=j;f[r>>2]=f[w>>2];f[s>>2]=f[x>>2];f[C>>2]=f[y>>2];G7a(H,r,s,C)|0;k=f[E>>2]|0;g=f[D>>2]|0;if((g|0)!=(k|0))do{h=g+-12|0;f[D>>2]=h;j=f[h>>2]|0;if(!j)g=h;else{g=g+-8|0;h=f[g>>2]|0;if((h|0)!=(j|0))f[g>>2]=h+(~(((h+-24-j|0)>>>0)/24|0)*24|0);sOb(j);g=f[D>>2]|0}}while((g|0)!=(k|0))}g=f[H>>2]|0;h=f[F>>2]|0;l=l+12|0;if((g|0)==(h|0)){i=1;break a}if((l|0)==(m|0)){n=h;B=42;break a}}AMb(h)}while(0);c:do if((B|0)==42)if((g|0)==(n|0))i=0;else{b=e+4|0;l=e+8|0;m=C+4|0;d=g;while(1){U6a(C,d);j=f[b>>2]|0;if((j|0)==(f[l>>2]|0)){H7a(e,C);g=f[C>>2]|0}else{f[j>>2]=0;c=j+4|0;f[c>>2]=0;f[j+8>>2]=0;g=f[C>>2]|0;h=(f[m>>2]|0)-g|0;k=h>>3;if(k){if(k>>>0>536870911)break;a=pOb(h)|0;f[c>>2]=a;f[j>>2]=a;f[j+8>>2]=a+(k<<3);g=f[C>>2]|0;h=(f[m>>2]|0)-g|0;if((h|0)>0){bQb(a|0,g|0,h|0)|0;f[c>>2]=a+(h>>>3<<3)}}f[b>>2]=(f[b>>2]|0)+12}if(g|0){h=f[m>>2]|0;if((h|0)!=(g|0))f[m>>2]=h+(~((h+-8-g|0)>>>3)<<3);sOb(g)}d=d+12|0;if((d|0)==(n|0)){i=0;break c}}AMb(j)}while(0);g=f[E>>2]|0;if(g|0){h=f[D>>2]|0;if((h|0)!=(g|0)){do{j=h+-12|0;f[D>>2]=j;k=f[j>>2]|0;if(!k)h=j;else{h=h+-8|0;j=f[h>>2]|0;if((j|0)!=(k|0))f[h>>2]=j+(~(((j+-24-k|0)>>>0)/24|0)*24|0);sOb(k);h=f[D>>2]|0}}while((h|0)!=(g|0));g=f[E>>2]|0}sOb(g)}g=f[H>>2]|0;if(g|0){h=f[F>>2]|0;if((h|0)!=(g|0)){do{j=h+-12|0;f[F>>2]=j;k=f[j>>2]|0;if(!k)h=j;else{h=h+-8|0;j=f[h>>2]|0;if((j|0)!=(k|0))f[h>>2]=j+(~(((j+-24-k|0)>>>0)/24|0)*24|0);sOb(k);h=f[F>>2]|0}}while((h|0)!=(g|0));g=f[H>>2]|0}sOb(g)}}g=f[K>>2]|0;if(g|0){h=f[G>>2]|0;if((h|0)!=(g|0))f[G>>2]=h+(~(((h+-24-g|0)>>>0)/24|0)*24|0);sOb(g)}g=f[I>>2]|0;if((g|0)!=(J|0))f[I>>2]=g+(~(((g+-24-J|0)>>>0)/24|0)*24|0);sOb(J);K=i;u=L;return K|0}function G7a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0;l=f[a>>2]|0;h=l;i=(f[b>>2]|0)-h|0;b=l+(((i|0)/12|0)*12|0)|0;m=f[c>>2]|0;g=f[d>>2]|0;v=g-m|0;o=(v|0)/12|0;t=g;if((v|0)<=0){v=b;return v|0}u=a+8|0;e=f[u>>2]|0;v=a+4|0;q=f[v>>2]|0;d=q;if((o|0)<=((e-d|0)/12|0|0)){n=d-b|0;d=(n|0)/12|0;if((o|0)>(d|0)){d=m+(d*12|0)|0;g=d;a:do if((d|0)==(t|0))k=q;else{e=q;while(1){f[e>>2]=0;m=e+4|0;f[m>>2]=0;f[e+8>>2]=0;j=d+4|0;h=(f[j>>2]|0)-(f[d>>2]|0)|0;i=(h|0)/24|0;if(h|0){if(i>>>0>178956970)break;l=pOb(h)|0;f[m>>2]=l;f[e>>2]=l;f[e+8>>2]=l+(i*24|0);h=f[d>>2]|0;i=f[j>>2]|0;if((h|0)!=(i|0)){e=l;do{p[e>>3]=+p[h>>3];p[e+8>>3]=+p[h+8>>3];p[e+16>>3]=+p[h+16>>3];h=h+24|0;e=e+24|0}while((h|0)!=(i|0));f[m>>2]=e}}d=d+12|0;e=(f[v>>2]|0)+12|0;f[v>>2]=e;if((d|0)==(t|0)){k=e;break a}}AMb(e)}while(0);if((n|0)<=0){v=b;return v|0}}else k=q;e=k-(b+(o*12|0))|0;h=b+(((e|0)/12|0)*12|0)|0;if(h>>>0>>0){d=h;i=k;do{f[i>>2]=0;u=i+4|0;f[u>>2]=0;f[i+8>>2]=0;f[i>>2]=f[d>>2];a=d+4|0;f[u>>2]=f[a>>2];u=d+8|0;f[i+8>>2]=f[u>>2];f[u>>2]=0;f[a>>2]=0;f[d>>2]=0;d=d+12|0;i=(f[v>>2]|0)+12|0;f[v>>2]=i}while(d>>>0>>0)}if(e|0)do{j=h;h=h+-12|0;d=k;k=k+-12|0;e=f[k>>2]|0;l=d+-8|0;if(!e)d=d+-4|0;else{i=f[l>>2]|0;if((i|0)!=(e|0))f[l>>2]=i+(~(((i+-24-e|0)>>>0)/24|0)*24|0);sOb(e);d=d+-4|0;f[d>>2]=0;f[l>>2]=0;f[k>>2]=0}f[k>>2]=f[h>>2];v=j+-8|0;f[l>>2]=f[v>>2];a=j+-4|0;f[d>>2]=f[a>>2];f[a>>2]=0;f[v>>2]=0;f[h>>2]=0}while((h|0)!=(b|0));d=f[c>>2]|0;if((d|0)==(g|0)){v=b;return v|0}else e=b;while(1){if((e|0)!=(d|0))I7a(e,f[d>>2]|0,f[d+4>>2]|0);d=d+12|0;if((d|0)==(g|0))break;else e=e+12|0}return b|0}d=((d-h|0)/12|0)+o|0;if(d>>>0>357913941)AMb(a);c=(e-h|0)/12|0;g=c<<1;g=c>>>0<178956970?(g>>>0>>0?d:g):357913941;d=(i|0)/12|0;do if(!g)j=0;else if(g>>>0>357913941)vd();else{j=pOb(g*12|0)|0;break}while(0);o=j+(d*12|0)|0;e=o;n=j+(g*12|0)|0;do if((m|0)==(t|0)){s=e;r=l}else{l=e;i=o;k=m;while(1){f[i>>2]=0;j=i+4|0;f[j>>2]=0;f[i+8>>2]=0;h=k+4|0;d=(f[h>>2]|0)-(f[k>>2]|0)|0;g=(d|0)/24|0;if(d|0){if(g>>>0>178956970){d=35;break}d=pOb(d)|0;f[j>>2]=d;f[i>>2]=d;f[i+8>>2]=d+(g*24|0);g=f[k>>2]|0;h=f[h>>2]|0;if((g|0)!=(h|0)){do{p[d>>3]=+p[g>>3];p[d+8>>3]=+p[g+8>>3];p[d+16>>3]=+p[g+16>>3];g=g+24|0;d=d+24|0}while((g|0)!=(h|0));f[j>>2]=d}}d=l+12|0;l=d;k=k+12|0;if((k|0)==(t|0)){d=40;break}else i=d}if((d|0)==35)AMb(i);else if((d|0)==40){s=l;r=f[a>>2]|0;break}}while(0);if((r|0)==(b|0)){d=o;h=e}else{g=b;d=o;do{t=d+-12|0;c=g;g=g+-12|0;f[t>>2]=0;q=d+-8|0;f[q>>2]=0;f[d+-4>>2]=0;f[t>>2]=f[g>>2];t=c+-8|0;f[q>>2]=f[t>>2];c=c+-4|0;f[d+-4>>2]=f[c>>2];f[c>>2]=0;f[t>>2]=0;f[g>>2]=0;d=e+-12|0;e=d}while((g|0)!=(r|0));h=e}g=f[v>>2]|0;if((g|0)==(b|0))e=s;else{e=s;d=s;do{f[d>>2]=0;c=d+4|0;f[c>>2]=0;f[d+8>>2]=0;f[d>>2]=f[b>>2];t=b+4|0;f[c>>2]=f[t>>2];c=b+8|0;f[d+8>>2]=f[c>>2];f[c>>2]=0;f[t>>2]=0;f[b>>2]=0;b=b+12|0;d=e+12|0;e=d}while((b|0)!=(g|0));d=h;b=f[v>>2]|0}h=f[a>>2]|0;f[a>>2]=d;f[v>>2]=e;f[u>>2]=n;if((b|0)!=(h|0))do{d=b;b=b+-12|0;g=f[b>>2]|0;if(g|0){d=d+-8|0;e=f[d>>2]|0;if((e|0)!=(g|0))f[d>>2]=e+(~(((e+-24-g|0)>>>0)/24|0)*24|0);sOb(g)}}while((b|0)!=(h|0));if(!h){v=o;return v|0}sOb(h);v=o;return v|0}function H7a(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+4|0;g=f[q>>2]|0;i=f[a>>2]|0;n=(g-i|0)/12|0;c=n+1|0;e=i;if(c>>>0>357913941)AMb(a);p=a+8|0;o=((f[p>>2]|0)-i|0)/12|0;h=o<<1;h=o>>>0<178956970?(h>>>0>>0?c:h):357913941;do if(!h)m=0;else if(h>>>0>357913941)vd();else{m=pOb(h*12|0)|0;break}while(0);c=m+(n*12|0)|0;d=c;o=m+(h*12|0)|0;f[c>>2]=0;k=m+(n*12|0)+4|0;f[k>>2]=0;f[m+(n*12|0)+8>>2]=0;l=f[b>>2]|0;h=(f[b+4>>2]|0)-l|0;b=h>>3;if(b|0){if(b>>>0>536870911)AMb(c);j=pOb(h)|0;f[k>>2]=j;f[c>>2]=j;f[m+(n*12|0)+8>>2]=j+(b<<3);if((h|0)>0){bQb(j|0,l|0,h|0)|0;f[k>>2]=j+(h>>>3<<3)}}h=c+12|0;if((g|0)!=(e|0)){do{n=c+-12|0;m=g;g=g+-12|0;f[n>>2]=0;l=c+-8|0;f[l>>2]=0;f[c+-4>>2]=0;f[n>>2]=f[g>>2];n=m+-8|0;f[l>>2]=f[n>>2];m=m+-4|0;f[c+-4>>2]=f[m>>2];f[m>>2]=0;f[n>>2]=0;f[g>>2]=0;c=d+-12|0;d=c}while((g|0)!=(e|0));i=f[a>>2]|0;e=f[q>>2]|0}f[a>>2]=d;f[q>>2]=h;f[p>>2]=o;h=i;if((e|0)!=(h|0))do{c=e;e=e+-12|0;g=f[e>>2]|0;if(g|0){c=c+-8|0;d=f[c>>2]|0;if((d|0)!=(g|0))f[c>>2]=d+(~((d+-8-g|0)>>>3)<<3);sOb(g)}}while((e|0)!=(h|0));if(!i)return;sOb(i);return}function I7a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=(c-b|0)/24|0;k=a+8|0;d=f[k>>2]|0;i=f[a>>2]|0;e=i;if(j>>>0>((d-i|0)/24|0)>>>0){h=i;if(i){d=a+4|0;g=f[d>>2]|0;if((g|0)!=(e|0))f[d>>2]=g+(~(((g+-24-i|0)>>>0)/24|0)*24|0);sOb(h);f[k>>2]=0;f[d>>2]=0;f[a>>2]=0;d=0}if(j>>>0>178956970)AMb(a);i=(d|0)/24|0;e=i<<1;e=i>>>0<89478485?(e>>>0>>0?j:e):178956970;if(e>>>0>178956970)AMb(a);d=pOb(e*24|0)|0;g=a+4|0;f[g>>2]=d;f[a>>2]=d;f[k>>2]=d+(e*24|0);if((b|0)==(c|0))return;do{p[d>>3]=+p[b>>3];p[d+8>>3]=+p[b+8>>3];p[d+16>>3]=+p[b+16>>3];b=b+24|0;d=d+24|0}while((b|0)!=(c|0));f[g>>2]=d;return}else{a=a+4|0;k=f[a>>2]|0;d=(k-i|0)/24|0;h=j>>>0>d>>>0;d=b+(d*24|0)|0;g=h?d:c;i=k;if((g|0)==(b|0))b=e;else{do{p[e>>3]=+p[b>>3];p[e+8>>3]=+p[b+8>>3];p[e+16>>3]=+p[b+16>>3];b=b+24|0;e=e+24|0}while((b|0)!=(g|0));b=e}if(!h){if((b|0)==(i|0))return;f[a>>2]=i+(~(((i+-24-b|0)>>>0)/24|0)*24|0);return}if((g|0)==(c|0))return;b=f[a>>2]|0;do{p[b>>3]=+p[d>>3];p[b+8>>3]=+p[d+8>>3];p[b+16>>3]=+p[d+16>>3];d=d+24|0;b=b+24|0}while((d|0)!=(c|0));f[a>>2]=b;return}}function J7a(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;i=f[d>>2]|0;if((i|0)<3){h=0;return h|0}if((d+(i<<2)+4|0)==(e|0)){if((i|0)==3){k=f[d+4>>2]|0;l=f[d+8>>2]|0;d=f[d+12>>2]|0;$h[g&3](h,0,b+(k*12|0)|0,b+(l*12|0)|0,b+(d*12|0)|0,k,l,d,0,0,0);h=1;return h|0}if(!((K7a(b,d,e)|0)&1)){a=f[d>>2]|0;j=d+8|0;i=f[d+4>>2]|0;c=f[j>>2]|0;e=a+-2|0;if((a|0)>3){k=a+-4|0;l=k>>>1;a=j;while(1){j=i;i=f[a+(e<<2)>>2]|0;n=b+(c*12|0)|0;m=b+(i*12|0)|0;$h[g&3](h,1,b+(j*12|0)|0,n,m,j,c,i,0,0,0);a=a+4|0;j=c;c=f[a>>2]|0;$h[g&3](h,1,n,b+(c*12|0)|0,m,j,c,i,0,0,0);if((e|0)<=3)break;else e=e+-2|0}e=k&1;a=l+3|0}else a=2;if(!e){n=1;return n|0}n=f[d+(a<<2)+4>>2]|0;$h[g&3](h,1,b+(i*12|0)|0,b+(c*12|0)|0,b+(n*12|0)|0,i,c,n,0,0,0);n=1;return n|0}}n=O7a(a,b,c,d,e,g,h)|0;return n|0}function K7a(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0.0,l=0,m=0.0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0.0,A=0.0,B=0.0;y=u;u=u+80|0;p=y+36|0;q=p;i=y;d=f[b>>2]|0;if((d|0)!=((c-b>>2)+-1|0)){x=1;u=y;return x|0}if((d|0)==3){x=0;u=y;return x|0}d=b+4|0;l=f[c+-8>>2]|0;o=f[c+-4>>2]|0;b=a+(o*12|0)|0;m=+n[b>>2];k=m-+n[a+(l*12|0)>>2];g=+n[a+(o*12|0)+4>>2]-+n[a+(l*12|0)+4>>2];e=+n[a+(o*12|0)+8>>2]-+n[a+(l*12|0)+8>>2];n[p>>2]=k;l=p+4|0;n[l>>2]=g;o=p+8|0;n[o>>2]=e;a:do if(k==0.0){while(1){if(!(e==0.0&g==0.0))break a;h=f[d>>2]|0;j=a+(h*12|0)|0;d=d+4|0;if((d|0)==(c|0)){b=0;break}k=m;m=+n[j>>2];k=m-k;g=+n[a+(h*12|0)+4>>2]-+n[b+4>>2];e=+n[a+(h*12|0)+8>>2]-+n[b+8>>2];n[p>>2]=k;n[l>>2]=g;n[o>>2]=e;if(!(k==0.0)){b=j;break a}else b=j}u=y;return b|0}while(0);f[p+12>>2]=k==0.0?0:k<0.0?-1:1;f[p+16>>2]=g==0.0?0:g<0.0?-1:1;f[p+20>>2]=e==0.0?0:e<0.0?-1:1;n[p+24>>2]=0.0;n[p+28>>2]=0.0;n[p+32>>2]=0.0;w=b;v=d;h=0;t=q;r=0;q=0;while(1){b=f[v>>2]|0;s=w;w=a+(b*12|0)|0;k=+n[a+(b*12|0)+4>>2]-+n[s+4>>2];m=+n[a+(b*12|0)+8>>2]-+n[s+8>>2];b=i;p=i;n[p>>2]=+n[w>>2]-+n[s>>2];n[b+4>>2]=k;n[b+8>>2]=m;m=+n[p>>2];p=m==0.0;b=m<0.0?-1:1;s=i;d=s+12|0;f[d>>2]=p?0:b;if(p){b=f[t+12>>2]|0;f[d>>2]=b}m=+n[s+4>>2];p=m==0.0;d=m<0.0?-1:1;j=s+16|0;f[j>>2]=p?0:d;if(p){d=f[t+16>>2]|0;f[j>>2]=d}g=+n[s+8>>2];o=g==0.0;j=g<0.0?-1:1;l=s+20|0;f[l>>2]=o?0:j;if(o){j=f[t+20>>2]|0;f[l>>2]=j}e=+n[s>>2];if(e!=0.0|p^1|o^1){l=t;h=h+((b|0)!=(f[l+12>>2]|0)&1)|0;b=q+((d|0)!=(f[l+16>>2]|0)&1)|0;d=r+((j|0)!=(f[l+20>>2]|0)&1)|0;z=+n[l+4>>2];B=+n[l+8>>2];k=g*z-m*B;A=+n[l>>2];g=e*B-g*A;e=m*A-e*z;n[s+24>>2]=k;n[s+28>>2]=g;n[s+32>>2]=e;if(e==0.0&(k==0.0&g==0.0))j=t;else if(k*+n[l+24>>2]+g*+n[l+28>>2]+e*+n[l+32>>2]<0.0){b=1;x=19;break}else{j=i;i=t}}else{j=t;d=r;b=q}v=v+4|0;if((v|0)==(c|0))break;else{t=j;r=d;q=b}}if((x|0)==19){u=y;return b|0}x=((d|0)>2|((b|0)>2|(h|0)>2))&1;u=y;return x|0}function L7a(a){a=a|0;var c=0,d=0,e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0;n=f[a+320>>2]|0;l=f[a+400>>2]|0;m=f[a+408>>2]|0;i=f[a+808>>2]|0;o=f[a+816>>2]|0;j=f[a+824>>2]|0;q=f[a+1392>>2]|0;r=f[a+1400>>2]|0;a:{if(q){q=0;switch(r|0){case 4:case 2:case 0:{c=l+1|0;d=m;break}case 1:{c=f[(n+12|0)>>2]|0;d=f[(c+4|0)>>2]|0;if((d|0)==(f[c+8>>2]|0))u6a(c,j);else{p[d>>3]=+p[j>>3];p[d+8>>3]=+p[i+(l*72|0)+8>>3];p[d+16>>3]=+p[i+(l*72|0)+16>>3];p[d+24>>3]=+p[i+(l*72|0)+24>>3];p[d+32>>3]=+p[i+(l*72|0)+32>>3];p[d+40>>3]=+p[i+(l*72|0)+40>>3];p[d+48>>3]=+p[i+(l*72|0)+48>>3];p[d+56>>3]=+p[i+(l*72|0)+56>>3];p[d+64>>3]=+p[i+(l*72|0)+64>>3];f[(c+4|0)>>2]=d+72}e=f[(n+16|0)>>2]|0;c=(f[e>>2]|0)+(l*72|0)|0;h=f[(e+4|0)>>2]|0;if((c+72|0|0)!=(h|0)){d=c+72|0;do{g=+p[d>>3];p[d>>3]=+p[c>>3];p[c>>3]=g;k=d+8|0;g=+p[k>>3];s=c+8|0;p[k>>3]=+p[s>>3];p[s>>3]=g;s=d+16|0;g=+p[s>>3];k=c+16|0;p[s>>3]=+p[k>>3];p[k>>3]=g;k=d+24|0;g=+p[k>>3];s=c+24|0;p[k>>3]=+p[s>>3];p[s>>3]=g;s=d+32|0;g=+p[s>>3];k=c+32|0;p[s>>3]=+p[k>>3];p[k>>3]=g;k=d+40|0;g=+p[k>>3];s=c+40|0;p[k>>3]=+p[s>>3];p[s>>3]=g;s=d+48|0;g=+p[s>>3];k=c+48|0;p[s>>3]=+p[k>>3];p[k>>3]=g;k=d+56|0;g=+p[k>>3];s=c+56|0;p[k>>3]=+p[s>>3];p[s>>3]=g;s=d+64|0;g=+p[s>>3];k=c+64|0;p[s>>3]=+p[k>>3];p[k>>3]=g;d=d+72|0;c=c+72|0}while((d|0)!=(h|0))}if((h|0)!=(c|0))f[(e+4|0)>>2]=h+(~(((h+-72-c|0)>>>0)/72|0)*72|0);c=l;d=m+-1|0;break}default:q=1}}if(q){q=0;switch(r|0){case 3:{k=l+1|0;z=+p[((a+72|0)+8|0)>>3];y=+p[((a+72|0)+16|0)>>3];x=+p[((a+72|0)+24|0)>>3];w=+p[((a+72|0)+32|0)>>3];v=+p[((a+72|0)+40|0)>>3];u=+p[((a+72|0)+48|0)>>3];t=+p[((a+72|0)+56|0)>>3];g=+p[((a+72|0)+64|0)>>3];p[j>>3]=+p[(a+72|0)>>3];p[i+(l*72|0)+8>>3]=z;p[i+(l*72|0)+16>>3]=y;p[i+(l*72|0)+24>>3]=x;p[i+(l*72|0)+32>>3]=w;p[i+(l*72|0)+40>>3]=v;p[i+(l*72|0)+48>>3]=u;p[i+(l*72|0)+56>>3]=t;p[i+(l*72|0)+64>>3]=g;d=b[((a+288|0)+1|0)>>0]|0;if((d&255)>3){c=3;do{e=f[(n+16|0)>>2]|0;g=+p[(a+72|0)+(c*24|0)>>3];p[a>>3]=g;p[(a+8|0)>>3]=+p[(a+72|0)+(c*24|0)+8>>3];p[(a+16|0)>>3]=+p[(a+72|0)+(c*24|0)+16>>3];h=c+1|0;p[(a+24|0)>>3]=+p[(a+72|0)+(h*24|0)>>3];p[(a+32|0)>>3]=+p[(a+72|0)+(h*24|0)+8>>3];p[(a+40|0)>>3]=+p[(a+72|0)+(h*24|0)+16>>3];h=c+2|0;p[(a+48|0)>>3]=+p[(a+72|0)+(h*24|0)>>3];p[(a+56|0)>>3]=+p[(a+72|0)+(h*24|0)+8>>3];p[(a+64|0)>>3]=+p[(a+72|0)+(h*24|0)+16>>3];h=f[(e+4|0)>>2]|0;if(h>>>0<(f[e+8>>2]|0)>>>0){f[h>>2]=f[a>>2];f[h+4>>2]=f[a+4>>2];f[h+8>>2]=f[a+8>>2];f[h+12>>2]=f[a+12>>2];f[h+16>>2]=f[a+16>>2];f[h+20>>2]=f[a+20>>2];p[h>>3]=g;p[h+8>>3]=+p[(a+8|0)>>3];p[h+16>>3]=+p[(a+16|0)>>3];f[(h+24|0)>>2]=f[(a+24|0)>>2];f[(h+24|0)+4>>2]=f[(a+24|0)+4>>2];f[(h+24|0)+8>>2]=f[(a+24|0)+8>>2];f[(h+24|0)+12>>2]=f[(a+24|0)+12>>2];f[(h+24|0)+16>>2]=f[(a+24|0)+16>>2];f[(h+24|0)+20>>2]=f[(a+24|0)+20>>2];p[(h+24|0)>>3]=+p[(a+24|0)>>3];p[h+32>>3]=+p[(a+32|0)>>3];p[h+40>>3]=+p[(a+40|0)>>3];f[(h+48|0)>>2]=f[(a+48|0)>>2];f[(h+48|0)+4>>2]=f[(a+48|0)+4>>2];f[(h+48|0)+8>>2]=f[(a+48|0)+8>>2];f[(h+48|0)+12>>2]=f[(a+48|0)+12>>2];f[(h+48|0)+16>>2]=f[(a+48|0)+16>>2];f[(h+48|0)+20>>2]=f[(a+48|0)+20>>2];p[(h+48|0)>>3]=+p[(a+48|0)>>3];p[h+56>>3]=+p[(a+56|0)>>3];p[h+64>>3]=+p[(a+64|0)>>3];f[(e+4|0)>>2]=(f[(e+4|0)>>2]|0)+72}else{t6a(e,a);d=b[((a+288|0)+1|0)>>0]|0}c=c+3|0}while(c>>>0<(d&255)>>>0)}else c=3;d=b[((a+288|0)+2|0)>>0]|0;if(c>>>0<(d&255)>>>0){do{e=f[(n+12|0)>>2]|0;g=+p[(a+72|0)+(c*24|0)>>3];p[a>>3]=g;p[(a+8|0)>>3]=+p[(a+72|0)+(c*24|0)+8>>3];p[(a+16|0)>>3]=+p[(a+72|0)+(c*24|0)+16>>3];h=c+1|0;p[(a+24|0)>>3]=+p[(a+72|0)+(h*24|0)>>3];p[(a+32|0)>>3]=+p[(a+72|0)+(h*24|0)+8>>3];p[(a+40|0)>>3]=+p[(a+72|0)+(h*24|0)+16>>3];h=c+2|0;p[(a+48|0)>>3]=+p[(a+72|0)+(h*24|0)>>3];p[(a+56|0)>>3]=+p[(a+72|0)+(h*24|0)+8>>3];p[(a+64|0)>>3]=+p[(a+72|0)+(h*24|0)+16>>3];h=f[(e+4|0)>>2]|0;if(h>>>0<(f[e+8>>2]|0)>>>0){f[h>>2]=f[a>>2];f[h+4>>2]=f[a+4>>2];f[h+8>>2]=f[a+8>>2];f[h+12>>2]=f[a+12>>2];f[h+16>>2]=f[a+16>>2];f[h+20>>2]=f[a+20>>2];p[h>>3]=g;p[h+8>>3]=+p[(a+8|0)>>3];p[h+16>>3]=+p[(a+16|0)>>3];f[(h+24|0)>>2]=f[(a+24|0)>>2];f[(h+24|0)+4>>2]=f[(a+24|0)+4>>2];f[(h+24|0)+8>>2]=f[(a+24|0)+8>>2];f[(h+24|0)+12>>2]=f[(a+24|0)+12>>2];f[(h+24|0)+16>>2]=f[(a+24|0)+16>>2];f[(h+24|0)+20>>2]=f[(a+24|0)+20>>2];p[(h+24|0)>>3]=+p[(a+24|0)>>3];p[h+32>>3]=+p[(a+32|0)>>3];p[h+40>>3]=+p[(a+40|0)>>3];f[(h+48|0)>>2]=f[(a+48|0)>>2];f[(h+48|0)+4>>2]=f[(a+48|0)+4>>2];f[(h+48|0)+8>>2]=f[(a+48|0)+8>>2];f[(h+48|0)+12>>2]=f[(a+48|0)+12>>2];f[(h+48|0)+16>>2]=f[(a+48|0)+16>>2];f[(h+48|0)+20>>2]=f[(a+48|0)+20>>2];p[(h+48|0)>>3]=+p[(a+48|0)>>3];p[h+56>>3]=+p[(a+56|0)>>3];p[h+64>>3]=+p[(a+64|0)>>3];f[(e+4|0)>>2]=(f[(e+4|0)>>2]|0)+72}else{t6a(e,a);d=b[((a+288|0)+2|0)>>0]|0}c=c+3|0}while(c>>>0<(d&255)>>>0);c=k;d=m}else{c=k;d=m}break}default:q=1}}if(q){q=0;switch(r|0){default:{c=l;d=m}}}if(c>>>0>=d>>>0){f[a+1408>>2]=2;f[a+1412>>2]=1;break a}l=c;m=d;o=f[(n+16|0)>>2]|0}f[a+400>>2]=l;f[a+408>>2]=m;f[a+816>>2]=o;f[a+1392>>2]=q}function M7a(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;o=f[a+80>>2]|0;v=f[a+88>>2]|0;w=f[a+96>>2]|0;q=f[a+144>>2]|0;r=f[a+168>>2]|0;u=f[a+176>>2]|0;s=f[a+200>>2]|0;t=f[a+872>>2]|0;c=f[a+880>>2]|0;n=f[a+888>>2]|0;x=f[a+976>>2]|0;a:{b:do if((c|0)!=(n|0))while(1){P6a(a,f[(v+36|0)>>2]|0,c,o+40|0,+p[(o+32|0)>>3]);c:{d=1;e=b[a>>0]|0;if(d)switch(e|0){case 0:{d=f[u>>2]|0;if((d|0)==(f[((a+28|0)+8|0)>>2]|0)){V4a(a+28|0,c);break c}else{p[d>>3]=+p[c>>3];p[d+8>>3]=+p[c+8>>3];p[d+16>>3]=+p[c+16>>3];p[d+24>>3]=+p[c+24>>3];p[d+32>>3]=+p[c+32>>3];p[d+40>>3]=+p[c+40>>3];p[d+48>>3]=+p[c+48>>3];p[d+56>>3]=+p[c+56>>3];p[d+64>>3]=+p[c+64>>3];m=c+72|0;f[(d+72|0)>>2]=f[m>>2];f[(d+72|0)+4>>2]=f[m+4>>2];f[(d+72|0)+8>>2]=f[m+8>>2];f[u>>2]=d+88;break c}}case 1:{d=f[s>>2]|0;if((d|0)==(f[t>>2]|0)){V4a(a+16|0,c);break c}else{p[d>>3]=+p[c>>3];p[d+8>>3]=+p[c+8>>3];p[d+16>>3]=+p[c+16>>3];p[d+24>>3]=+p[c+24>>3];p[d+32>>3]=+p[c+32>>3];p[d+40>>3]=+p[c+40>>3];p[d+48>>3]=+p[c+48>>3];p[d+56>>3]=+p[c+56>>3];p[d+64>>3]=+p[c+64>>3];m=c+72|0;f[(d+72|0)>>2]=f[m>>2];f[(d+72|0)+4>>2]=f[m+4>>2];f[(d+72|0)+8>>2]=f[m+8>>2];f[s>>2]=d+88;break c}}case 2:{f[(o+16|0)>>2]=(f[(o+16|0)>>2]|0)+1;d=f[r>>2]|0;if((d|0)==(f[q>>2]|0)){V4a(a+40|0,c);break c}else{p[d>>3]=+p[c>>3];p[d+8>>3]=+p[c+8>>3];p[d+16>>3]=+p[c+16>>3];p[d+24>>3]=+p[c+24>>3];p[d+32>>3]=+p[c+32>>3];p[d+40>>3]=+p[c+40>>3];p[d+48>>3]=+p[c+48>>3];p[d+56>>3]=+p[c+56>>3];p[d+64>>3]=+p[c+64>>3];m=c+72|0;f[(d+72|0)>>2]=f[m>>2];f[(d+72|0)+4>>2]=f[m+4>>2];f[(d+72|0)+8>>2]=f[m+8>>2];f[r>>2]=d+88;break c}}default:d=1}if(d)switch(e|0){case 3:{f[(o+12|0)>>2]=(f[(o+12|0)>>2]|0)+1;d=b[(a+2|0)>>0]|0;f[(o+24|0)>>2]=(f[(o+24|0)>>2]|0)+-1+(((d&255)/3|0)&255);if(d<<24>>24){m=c+72|0;l=0;do{e=(l|0)<(h[(a+1|0)>>0]|0)?a+28|0:a+16|0;g=o+40+(l*24|0)|0;i=l+1|0;j=l+2|0;k=f[(e+4|0)>>2]|0;if(k>>>0<(f[e+8>>2]|0)>>>0){p[k>>3]=+p[g>>3];p[k+8>>3]=+p[o+40+(l*24|0)+8>>3];p[k+16>>3]=+p[o+40+(l*24|0)+16>>3];p[k+24>>3]=+p[(o+40+(i*24|0)|0)>>3];p[k+32>>3]=+p[o+40+(i*24|0)+8>>3];p[k+40>>3]=+p[o+40+(i*24|0)+16>>3];p[k+48>>3]=+p[(o+40+(j*24|0)|0)>>3];p[k+56>>3]=+p[o+40+(j*24|0)+8>>3];p[k+64>>3]=+p[o+40+(j*24|0)+16>>3];f[(k+72|0)>>2]=f[m>>2];f[(k+72|0)+4>>2]=f[m+4>>2];f[(k+72|0)+8>>2]=f[m+8>>2];f[(e+4|0)>>2]=(f[(e+4|0)>>2]|0)+88}else{$6a(e,g,o+40+(i*24|0)|0,o+40+(j*24|0)|0,m);d=b[(a+2|0)>>0]|0}l=l+3|0}while((l|0)<(d&255|0))}break}case 4:{f[(o+20|0)>>2]=(f[(o+20|0)>>2]|0)+1;break}default:{}}}c=c+88|0;if((c|0)==(n|0))break b}while(0);c=f[r>>2]|0;g=f[(a+40|0)>>2]|0;f[(o+8|0)>>2]=((c-g|0)/88|0)+(f[(o+8|0)>>2]|0);i=f[(v+36|0)>>2]|0;d=f[(i+32|0)>>2]|0;if(!d){e=i+40|0;d=g}else{c=f[(i+36|0)>>2]|0;if((c|0)!=(d|0))f[(i+36|0)>>2]=c+(~(((c+-88-d|0)>>>0)/88|0)*88|0);sOb(d);f[(i+40|0)>>2]=0;f[(i+36|0)>>2]=0;f[(i+32|0)>>2]=0;e=i+40|0;d=f[(a+40|0)>>2]|0;c=f[r>>2]|0}f[(i+32|0)>>2]=d;f[(i+36|0)>>2]=c;f[e>>2]=f[q>>2];f[q>>2]=0;f[r>>2]=0;f[(a+40|0)>>2]=0;l=f[(a+16|0)>>2]|0;m=f[s>>2]|0;do{k=1;if(k){k=0;if((f[(a+28|0)>>2]|0)==(f[u>>2]|0)){if((l|0)!=(m|0)){Z6a(a,a+8|0,a+16|0);u=(f[(v+36|0)>>2]|0)+48|0;r=f[a>>2]|0;f[a>>2]=0;c=f[u>>2]|0;f[u>>2]=r;if(c|0){X6a(c+48|0);X6a(c+44|0);d=f[c+32>>2]|0;if(d|0){e=f[(c+36|0)>>2]|0;if((e|0)!=(d|0))f[(c+36|0)>>2]=e+(~(((e+-88-d|0)>>>0)/88|0)*88|0);sOb(d)}sOb(c)}X6a(a);f[(v+36|0)>>2]=f[(f[(v+36|0)>>2]|0)+48>>2];c=f[(v+24|0)>>2]|0;if(c|0){d=f[(v+28|0)>>2]|0;if((d|0)!=(c|0))f[(v+28|0)>>2]=d+(~(((d+-88-c|0)>>>0)/88|0)*88|0);sOb(c);f[(v+32|0)>>2]=0;f[(v+28|0)>>2]=0;f[(v+24|0)>>2]=0}f[(v+24|0)>>2]=f[(a+16|0)>>2];f[(v+28|0)>>2]=f[s>>2];f[(v+32|0)>>2]=f[t>>2];f[t>>2]=0;f[s>>2]=0;f[(a+16|0)>>2]=0;break}c=f[(v+20|0)>>2]|0;if(!c){x=69;f[a+1008>>2]=2;f[a+1012>>2]=3;break a}g=c+-1+(f[(v+16|0)>>2]|0)|0;i=f[(f[(v+4|0)>>2]|0)+(g>>>8<<2)>>2]|0;c=f[(v+24|0)>>2]|0;if(c|0){d=f[(v+28|0)>>2]|0;if((d|0)!=(c|0))f[(v+28|0)>>2]=d+(~(((d+-88-c|0)>>>0)/88|0)*88|0);sOb(c);f[(v+32|0)>>2]=0;f[(v+28|0)>>2]=0;f[(v+24|0)>>2]=0}f[(v+24|0)>>2]=f[(i+((g&255)<<4)+4|0)>>2];f[(v+28|0)>>2]=f[(i+((g&255)<<4)+8|0)>>2];f[(v+32|0)>>2]=f[(i+((g&255)<<4)+12|0)>>2];f[(i+((g&255)<<4)+12|0)>>2]=0;f[(i+((g&255)<<4)+8|0)>>2]=0;f[(i+((g&255)<<4)+4|0)>>2]=0;Z6a(a,a+8|0,v+24|0);r=(f[(i+((g&255)<<4)|0)>>2]|0)+48|0;q=f[a>>2]|0;f[a>>2]=0;c=f[r>>2]|0;f[r>>2]=q;if(c|0){X6a(c+48|0);X6a(c+44|0);d=f[c+32>>2]|0;if(d|0){e=f[(c+36|0)>>2]|0;if((e|0)!=(d|0))f[(c+36|0)>>2]=e+(~(((e+-88-d|0)>>>0)/88|0)*88|0);sOb(d)}sOb(c)}X6a(a);f[(v+36|0)>>2]=f[(f[(i+((g&255)<<4)|0)>>2]|0)+48>>2];g=f[(v+20|0)>>2]|0;d=f[(v+16|0)>>2]|0;e=f[(v+4|0)>>2]|0;i=f[e+((g+-1+d|0)>>>8<<2)>>2]|0;j=f[i+(((g+-1+d|0)&255)<<4)+4>>2]|0;if(j){c=f[(i+(((g+-1+d|0)&255)<<4)+8|0)>>2]|0;if((c|0)!=(j|0))f[(i+(((g+-1+d|0)&255)<<4)+8|0)>>2]=c+(~(((c+-88-j|0)>>>0)/88|0)*88|0);sOb(j);g=f[(v+20|0)>>2]|0;e=f[(v+4|0)>>2]|0;d=f[(v+16|0)>>2]|0}f[(v+20|0)>>2]=g+-1;c=f[(v+8|0)>>2]|0;r=c-e|0;if((1-d-g+((r|0)==0?0:(r<<6)+-1|0)|0)>>>0>511){sOb(f[c+-4>>2]|0);f[(v+8|0)>>2]=(f[(v+8|0)>>2]|0)+-4}}else k=1}if(k)if(1){if((l|0)!=(m|0)){i=f[(v+36|0)>>2]|0;j=f[t>>2]|0;f[t>>2]=0;f[s>>2]=0;f[(a+16|0)>>2]=0;g=f[(v+8|0)>>2]|0;e=f[(v+4|0)>>2]|0;c=f[(v+16|0)>>2]|0;d=f[(v+20|0)>>2]|0;if((((g-e|0|0)==0?0:((g-e|0)<<6)+-1|0)|0)==(d+c|0)){a7a(v);c=f[(v+16|0)>>2]|0;d=f[(v+20|0)>>2]|0;g=f[(v+8|0)>>2]|0;e=f[(v+4|0)>>2]|0}c=d+c|0;if((g|0)==(e|0))c=0;else c=(f[e+(c>>>8<<2)>>2]|0)+((c&255)<<4)|0;f[c>>2]=i;f[c+4>>2]=l;f[c+8>>2]=m;f[c+12>>2]=j;f[(v+20|0)>>2]=d+1}Z6a(a,a+8|0,a+28|0);t=(f[(v+36|0)>>2]|0)+44|0;s=f[a>>2]|0;f[a>>2]=0;c=f[t>>2]|0;f[t>>2]=s;if(c|0){X6a(c+48|0);X6a(c+44|0);d=f[c+32>>2]|0;if(d|0){e=f[(c+36|0)>>2]|0;if((e|0)!=(d|0))f[(c+36|0)>>2]=e+(~(((e+-88-d|0)>>>0)/88|0)*88|0);sOb(d)}sOb(c)}X6a(a);f[(v+36|0)>>2]=f[(f[(v+36|0)>>2]|0)+44>>2];c=f[(v+24|0)>>2]|0;if(c|0){d=f[(v+28|0)>>2]|0;if((d|0)!=(c|0))f[(v+28|0)>>2]=d+(~(((d+-88-c|0)>>>0)/88|0)*88|0);sOb(c);f[(v+32|0)>>2]=0;f[(v+28|0)>>2]=0;f[(v+24|0)>>2]=0}f[(v+24|0)>>2]=f[(a+28|0)>>2];f[(v+28|0)>>2]=f[u>>2];f[(v+32|0)>>2]=f[((a+28|0)+8|0)>>2];f[((a+28|0)+8|0)>>2]=0;f[u>>2]=0;f[(a+28|0)>>2]=0}}while(0);v=gDb()|0;t=I;u=f[w+4>>2]|0;if(!((t|0)<(u|0)|((t|0)==(u|0)?v>>>0<(f[w>>2]|0)>>>0:0))){x=90;f[a+1008>>2]=1;break a}}f[a+976>>2]=x}function N7a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;v=f[a+32>>2]|0;w=f[a+136>>2]|0;u=f[a+168>>2]|0;t=f[a+288>>2]|0;x=f[a+504>>2]|0;o=f[a+704>>2]|0;p=f[a+920>>2]|0;q=f[a+1096>>2]|0;y=f[a+1464>>2]|0;z=f[a+1560>>2]|0;a:{b:while(1){s=u;switch((x-s|0)>>3|0){case 2:{z=5;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}case 3:{z=9;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}case 4:{z=27;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}case 5:{z=28;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}case 1:case 0:{z=135;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}default:{}}if((x-s|0|0)<248){z=30;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}k=((x-s|0)>>3|0)/2|0;j=u+(k<<3)|0;do if((x-s|0|0)>7992){i=w7a(u,u+((((x-s|0)>>3|0)/4|0)<<3)|0,j,j+((((x-s|0)>>3|0)/4|0)<<3)|0,o)|0;c=j;m=u}else{g=f[j>>2]|0;c=f[u>>2]|0;if((g|0)==(c|0))d=(f[u+(k<<3)+4>>2]|0)<(f[u+4>>2]|0);else d=(g|0)<(c|0);c=f[o>>2]|0;if((c|0)==(g|0))c=(f[q>>2]|0)<(f[u+(k<<3)+4>>2]|0);else c=(c|0)<(g|0);if(!d){if(!c){i=0;c=j;m=u;break}d=f[j>>2]|0;c=f[j+4>>2]|0;m=f[o+4>>2]|0;f[j>>2]=f[o>>2];f[j+4>>2]=m;f[o>>2]=d;f[o+4>>2]=c;c=f[j>>2]|0;d=f[u>>2]|0;if((c|0)==(d|0)){if((f[u+(k<<3)+4>>2]|0)>=(f[u+4>>2]|0)){i=1;c=j;m=u;break}}else if((c|0)>=(d|0)){i=1;c=j;m=u;break}i=u;c=f[i>>2]|0;i=f[i+4>>2]|0;l=f[j+4>>2]|0;m=u;f[m>>2]=f[j>>2];f[m+4>>2]=l;f[j>>2]=c;f[j+4>>2]=i;i=2;c=j;m=u;break}g=u;d=f[g>>2]|0;g=f[g+4>>2]|0;if(c){c=f[o+4>>2]|0;i=u;f[i>>2]=f[o>>2];f[i+4>>2]=c;f[o>>2]=d;f[o+4>>2]=g;i=1;c=j;m=u;break}m=f[j+4>>2]|0;c=u;f[c>>2]=f[j>>2];f[c+4>>2]=m;f[j>>2]=d;f[j+4>>2]=g;c=f[o>>2]|0;if((c|0)==(d|0)){if((f[q>>2]|0)>=(g|0)){i=1;c=j;m=u;break}}else if((c|0)>=(d|0)){i=1;c=j;m=u;break}i=f[o+4>>2]|0;f[j>>2]=f[o>>2];f[j+4>>2]=i;f[o>>2]=d;f[o+4>>2]=g;i=2;c=j;m=u}while(0);l=f[m>>2]|0;h=f[c>>2]|0;if((l|0)==(h|0)){if((f[u+4>>2]|0)<(f[u+(k<<3)+4>>2]|0)){e=o;b=i;break}}else if((l|0)<(h|0)){e=o;b=i;break}if((u|0)!=(p|0)){g=u+(k<<3)+4|0;c=o;r=p;while(1){d=f[r>>2]|0;if((d|0)==(h|0)){if((f[c+-4>>2]|0)<(f[g>>2]|0)){z=111;break b}}else if((d|0)<(h|0)){z=111;break b}c=r+-8|0;if((u|0)==(c|0))break;else{k=r;r=c;c=k}}}c=u+8|0;d=f[o>>2]|0;if((l|0)==(d|0))if((f[u+4>>2]|0)<(f[q>>2]|0))n=c;else z=88;else if((l|0)<(d|0))n=c;else z=88;if((z|0)==88){z=0;if((c|0)==(o|0)){z=135;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}g=u+4|0;while(1){d=f[c>>2]|0;if((l|0)==(d|0)){if((f[g>>2]|0)<(f[c+4>>2]|0))break}else if((l|0)<(d|0))break;c=c+8|0;if((c|0)==(o|0)){z=135;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}}n=c;s=f[n>>2]|0;n=f[n+4>>2]|0;k=f[o+4>>2]|0;l=c;f[l>>2]=f[o>>2];f[l+4>>2]=k;f[o>>2]=s;f[o+4>>2]=n;n=c+8|0}if((n|0)==(o|0)){z=135;f[a+1576>>2]=2;f[a+1580>>2]=11;break a}i=u+4|0;g=o;c=n;while(1){j=f[m>>2]|0;while(1){d=f[c>>2]|0;if((j|0)==(d|0)){if((f[i>>2]|0)<(f[c+4>>2]|0))break}else if((j|0)<(d|0))break;c=c+8|0}while(1){d=g+-8|0;h=f[d>>2]|0;if((j|0)==(h|0))if((f[i>>2]|0)<(f[g+-4>>2]|0)){g=d;continue}else break;else if((j|0)<(h|0)){g=d;continue}else break}if(c>>>0>=d>>>0){u=c;continue b}g=c;u=f[g>>2]|0;g=f[g+4>>2]|0;l=f[d+4>>2]|0;s=c;f[s>>2]=f[d>>2];f[s+4>>2]=l;f[d>>2]=u;f[d+4>>2]=g;g=d;c=c+8|0}}if((z|0)==111){z=0;b=u;t=f[b>>2]|0;b=f[b+4>>2]|0;p=r;q=f[p+4>>2]|0;e=u;f[e>>2]=f[p>>2];f[e+4>>2]=q;e=r;f[e>>2]=t;f[e+4>>2]=b;e=r;b=i+1|0}c=u+8|0;c:do if(c>>>0>>0)while(1){h=f[j>>2]|0;i=j+4|0;while(1){d=f[c>>2]|0;if((d|0)==(h|0)){if((f[c+4>>2]|0)>=(f[i>>2]|0)){d=e;break}}else if((d|0)>=(h|0)){d=e;break}c=c+8|0}while(1){e=d+-8|0;g=f[e>>2]|0;if((g|0)==(h|0))if((f[d+-4>>2]|0)<(f[i>>2]|0))break;else{d=e;continue}else if((g|0)<(h|0))break;else{d=e;continue}}if(c>>>0>e>>>0){e=j;t=c;break c}t=c;r=f[t>>2]|0;t=f[t+4>>2]|0;p=f[e+4>>2]|0;q=c;f[q>>2]=f[e>>2];f[q+4>>2]=p;f[e>>2]=r;f[e+4>>2]=t;j=(j|0)==(c|0)?e:j;c=c+8|0;b=b+1|0}else{e=j;t=c}while(0);do if((t|0)!=(e|0)){c=f[e>>2]|0;d=f[t>>2]|0;if((c|0)==(d|0)){if((f[e+4>>2]|0)>=(f[t+4>>2]|0))break}else if((c|0)>=(d|0))break;q=t;p=f[q>>2]|0;q=f[q+4>>2]|0;n=e;o=f[n+4>>2]|0;r=t;f[r>>2]=f[n>>2];f[r+4>>2]=o;r=e;f[r>>2]=p;f[r+4>>2]=q;b=b+1|0}while(0);if(!b){y=x7a(u,t)|0;b=t+8|0;if(x7a(b,w)|0){z=134;f[a+1576>>2]=1;break a}if(y){v=b;f[a+1576>>2]=3;break a}}w=t;if((w-s|0)>=(x-w|0)){z=133;f[a+1576>>2]=1;break a}u7a(u,t);v=t+8|0}f[a+32>>2]=v;f[a+168>>2]=u;f[a+288>>2]=t;f[a+1464>>2]=y;f[a+1560>>2]=z} function IKb(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0;o=u;u=u+16|0;m=o+12|0;n=o;if(a){d=XFb(d,262632)|0;if(c){oh[f[(f[d>>2]|0)+44>>2]&1023](m,d);a=f[m>>2]|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;oh[f[(f[d>>2]|0)+32>>2]&1023](n,d);a=k+8+3|0;if((b[a>>0]|0)<0){e=f[k>>2]|0;f[m>>2]=0;JFb(e,m);f[k+4>>2]=0}else{f[m>>2]=0;JFb(k,m);b[a>>0]=0}ROb(k,0);f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}NOb(n)}else{oh[f[(f[d>>2]|0)+40>>2]&1023](m,d);a=f[m>>2]|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;oh[f[(f[d>>2]|0)+28>>2]&1023](n,d);a=k+8+3|0;if((b[a>>0]|0)<0){e=f[k>>2]|0;f[m>>2]=0;JFb(e,m);f[k+4>>2]=0}else{f[m>>2]=0;JFb(k,m);b[a>>0]=0}ROb(k,0);f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}NOb(n)}a=Pg[f[(f[d>>2]|0)+12>>2]&1023](d)|0;f[g>>2]=a;a=Pg[f[(f[d>>2]|0)+16>>2]&1023](d)|0;f[h>>2]=a;oh[f[(f[d>>2]|0)+20>>2]&1023](n,d);a=i+11|0;if((b[a>>0]|0)<0){a=f[i>>2]|0;b[m>>0]=0;rEb(a,m);f[i+4>>2]=0;a=i}else{b[m>>0]=0;rEb(i,m);b[a>>0]=0;a=i}EOb(i,0);f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}zOb(n);oh[f[(f[d>>2]|0)+24>>2]&1023](n,d);a=j+8+3|0;if((b[a>>0]|0)<0){i=f[j>>2]|0;f[m>>2]=0;JFb(i,m);f[j+4>>2]=0}else{f[m>>2]=0;JFb(j,m);b[a>>0]=0}ROb(j,0);f[j>>2]=f[n>>2];f[j+4>>2]=f[n+4>>2];f[j+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}NOb(n);a=Pg[f[(f[d>>2]|0)+36>>2]&1023](d)|0}else{d=XFb(d,262624)|0;if(c){oh[f[(f[d>>2]|0)+44>>2]&1023](m,d);a=f[m>>2]|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;oh[f[(f[d>>2]|0)+32>>2]&1023](n,d);a=k+8+3|0;if((b[a>>0]|0)<0){e=f[k>>2]|0;f[m>>2]=0;JFb(e,m);f[k+4>>2]=0}else{f[m>>2]=0;JFb(k,m);b[a>>0]=0}ROb(k,0);f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}NOb(n)}else{oh[f[(f[d>>2]|0)+40>>2]&1023](m,d);a=f[m>>2]|0;b[e>>0]=a;b[e+1>>0]=a>>8;b[e+2>>0]=a>>16;b[e+3>>0]=a>>24;oh[f[(f[d>>2]|0)+28>>2]&1023](n,d);a=k+8+3|0;if((b[a>>0]|0)<0){e=f[k>>2]|0;f[m>>2]=0;JFb(e,m);f[k+4>>2]=0}else{f[m>>2]=0;JFb(k,m);b[a>>0]=0}ROb(k,0);f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}NOb(n)}a=Pg[f[(f[d>>2]|0)+12>>2]&1023](d)|0;f[g>>2]=a;a=Pg[f[(f[d>>2]|0)+16>>2]&1023](d)|0;f[h>>2]=a;oh[f[(f[d>>2]|0)+20>>2]&1023](n,d);a=i+11|0;if((b[a>>0]|0)<0){a=f[i>>2]|0;b[m>>0]=0;rEb(a,m);f[i+4>>2]=0;a=i}else{b[m>>0]=0;rEb(i,m);b[a>>0]=0;a=i}EOb(i,0);f[a>>2]=f[n>>2];f[a+4>>2]=f[n+4>>2];f[a+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}zOb(n);oh[f[(f[d>>2]|0)+24>>2]&1023](n,d);a=j+8+3|0;if((b[a>>0]|0)<0){i=f[j>>2]|0;f[m>>2]=0;JFb(i,m);f[j+4>>2]=0}else{f[m>>2]=0;JFb(j,m);b[a>>0]=0}ROb(j,0);f[j>>2]=f[n>>2];f[j+4>>2]=f[n+4>>2];f[j+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}NOb(n);a=Pg[f[(f[d>>2]|0)+36>>2]&1023](d)|0}f[l>>2]=a;u=o;return}function JKb(a,c,d,e,g,h,i,j,k,l,m,n,o,p,q){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;f[d>>2]=a;z=p+8+3|0;G=p+4|0;A=o+8+3|0;B=o+4|0;C=(e&512|0)==0;D=(q|0)>0;E=n+11|0;F=n+4|0;y=0;while(1){if((y|0)==4)break;a:do switch(b[k+y>>0]|0){case 0:{f[c>>2]=f[d>>2];break}case 1:{f[c>>2]=f[d>>2];w=Rg[f[(f[i>>2]|0)+44>>2]&255](i,32)|0;x=f[d>>2]|0;f[d>>2]=x+4;f[x>>2]=w;break}case 3:{x=b[z>>0]|0;r=x<<24>>24<0;if((r?f[G>>2]|0:x&255)|0){w=f[(r?f[p>>2]|0:p)>>2]|0;x=f[d>>2]|0;f[d>>2]=x+4;f[x>>2]=w}break}case 2:{v=b[A>>0]|0;r=v<<24>>24<0;v=r?f[B>>2]|0:v&255;if(!(C|(v|0)==0)){u=r?f[o>>2]|0:o;s=u+(v<<2)|0;t=f[d>>2]|0;r=t;while(1){if((u|0)==(s|0))break;f[r>>2]=f[u>>2];r=r+4|0;u=u+4|0}f[d>>2]=t+(v<<2)}break}case 4:{s=f[d>>2]|0;g=j?g+4|0:g;r=g;while(1){if(r>>>0>=h>>>0)break;if(!(Sg[f[(f[i>>2]|0)+12>>2]&255](i,2048,f[r>>2]|0)|0))break;r=r+4|0}if(D){u=q;while(1){t=(u|0)>0;if(!(r>>>0>g>>>0&t))break;x=r+-4|0;v=f[x>>2]|0;w=f[d>>2]|0;f[d>>2]=w+4;f[w>>2]=v;u=u+-1|0;r=x}if(t)w=Rg[f[(f[i>>2]|0)+44>>2]&255](i,48)|0;else w=0;v=f[d>>2]|0;while(1){t=v+4|0;if((u|0)<=0)break;f[v>>2]=w;u=u+-1|0;v=t}f[d>>2]=t;f[v>>2]=l}if((r|0)==(g|0)){w=Rg[f[(f[i>>2]|0)+44>>2]&255](i,48)|0;x=f[d>>2]|0;r=x+4|0;f[d>>2]=r;f[x>>2]=w}else{x=b[E>>0]|0;t=x<<24>>24<0;if(!((t?f[F>>2]|0:x&255)|0)){v=-1;u=0;w=0}else{v=b[(t?f[n>>2]|0:n)>>0]|0;u=0;w=0}while(1){if((r|0)==(g|0))break;t=f[d>>2]|0;if((w|0)==(v|0)){x=t+4|0;f[d>>2]=x;f[t>>2]=m;u=u+1|0;v=b[E>>0]|0;t=v<<24>>24<0;if(u>>>0<(t?f[F>>2]|0:v&255)>>>0){v=b[(t?f[n>>2]|0:n)+u>>0]|0;v=v<<24>>24==127?-1:v<<24>>24;w=0;t=x}else{v=w;w=0;t=x}}x=r+-4|0;H=f[x>>2]|0;f[d>>2]=t+4;f[t>>2]=H;w=w+1|0;r=x}r=f[d>>2]|0}if((s|0)!=(r|0))while(1){r=r+-4|0;if(s>>>0>=r>>>0)break a;H=f[s>>2]|0;f[s>>2]=f[r>>2];f[r>>2]=H;s=s+4|0}break}default:{}}while(0);y=y+1|0}r=b[z>>0]|0;g=r<<24>>24<0;r=g?f[G>>2]|0:r&255;if(r>>>0>1){s=f[p>>2]|0;u=g?s+4|0:G;r=(g?s:p)+(r<<2)|0;s=f[d>>2]|0;t=r-u|0;g=s;while(1){if((u|0)==(r|0))break;f[g>>2]=f[u>>2];g=g+4|0;u=u+4|0}f[d>>2]=s+(t>>>2<<2)}switch((e&176)<<24>>24){case 32:{f[c>>2]=f[d>>2];break}case 16:break;default:f[c>>2]=a}return}function KKb(a){a=a|0;DFb(a);return}function LKb(a){a=a|0;DFb(a);sOb(a);return}function MKb(a,c,d){a=a|0;c=c|0;d=d|0;d=PAb((b[c+11>>0]|0)<0?f[c>>2]|0:c,1)|0;return d>>>((d|0)!=(-1|0)&1)|0}function NKb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;j=u;u=u+16|0;i=j;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[i+(c<<2)>>2]=0;c=c+1|0}k=b[h+11>>0]|0;l=k<<24>>24<0;c=l?f[h>>2]|0:h;h=c+(l?f[h+4>>2]|0:k&255)|0;while(1){if(c>>>0>=h>>>0)break;LOb(i,b[c>>0]|0);c=c+1|0}c=(b[i+11>>0]|0)<0?f[i>>2]|0:i;d=WAb((d|0)==-1?-1:d<<1,e,g,c)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[a+(h<<2)>>2]=0;h=h+1|0}h=c+(pAb(d)|0)|0;while(1){if(c>>>0>=h>>>0)break;LOb(a,b[c>>0]|0);c=c+1|0}zOb(i);u=j;return}function OKb(a,b){a=a|0;b=b|0;return}function PKb(a){a=a|0;DFb(a);return}function QKb(a){a=a|0;DFb(a);sOb(a);return}function RKb(a,c,d){a=a|0;c=c|0;d=d|0;d=PAb((b[c+11>>0]|0)<0?f[c>>2]|0:c,1)|0;return d>>>((d|0)!=(-1|0)&1)|0}function SKb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+176|0;p=t+168|0;q=t+40|0;r=t+36|0;s=t+32|0;n=t;l=t+24|0;o=t+16|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[n+(c<<2)>>2]=0;c=c+1|0}f[l+4>>2]=0;f[l>>2]=50332;j=b[h+8+3>>0]|0;k=j<<24>>24<0;c=k?f[h>>2]|0:h;j=c+((k?f[h+4>>2]|0:j&255)<<2)|0;k=q+32|0;h=c;c=0;while(1){if(!((c|0)!=2&h>>>0>>0))break;f[s>>2]=h;i=_g[f[(f[l>>2]|0)+12>>2]&15](l,p,h,j,s,q,k,r)|0;if((i|0)==2?1:(f[s>>2]|0)==(h|0)){m=7;break}else c=q;while(1){if(c>>>0>=(f[r>>2]|0)>>>0)break;LOb(n,b[c>>0]|0);c=c+1|0}h=f[s>>2]|0;c=i}if((m|0)==7)kJb(0);DFb(l);i=(b[n+11>>0]|0)<0?f[n>>2]|0:n;h=WAb((d|0)==-1?-1:d<<1,e,g,i)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}f[o+4>>2]=0;f[o>>2]=50380;j=i+(pAb(h)|0)|0;k=j;l=q+128|0;h=i;c=0;while(1){if(!((c|0)!=2&h>>>0>>0)){m=21;break}f[s>>2]=h;i=_g[f[(f[o>>2]|0)+16>>2]&15](o,p,h,(k-h|0)>32?h+32|0:j,s,q,l,r)|0;if((i|0)==2?1:(f[s>>2]|0)==(h|0)){m=17;break}else c=q;while(1){if(c>>>0>=(f[r>>2]|0)>>>0)break;VOb(a,f[c>>2]|0);c=c+4|0}h=f[s>>2]|0;c=i}if((m|0)==17)kJb(0);else if((m|0)==21){DFb(o);zOb(n);u=t;return}}function TKb(a,b){a=a|0;b=b|0;return}function UKb(a){a=a|0;DFb(a);sOb(a);return}function VKb(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=cLb(c,d,j,g,h,a,1114111,0)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function WKb(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=bLb(c,d,j,g,h,a,1114111,0)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function XKb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f[e>>2]=c;return 3}function YKb(a){a=a|0;return 0}function ZKb(a){a=a|0;return 0}function _Kb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return aLb(c,d,e,1114111,0)|0}function $Kb(a){a=a|0;return 4}function aLb(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=c;if(!(f&4)){n=0;f=a}else if((o-a|0)>2)if((b[a>>0]|0)==-17)if((b[a+1>>0]|0)==-69){n=0;f=(b[a+2>>0]|0)==-65?a+3|0:a}else{n=0;f=a}else{n=0;f=a}else{n=0;f=a}a:while(1){if(!(n>>>0>>0&f>>>0>>0)){p=34;break}l=b[f>>0]|0;m=l&255;do if(l<<24>>24>-1){if(m>>>0>e>>>0){p=34;break a}f=f+1|0}else{if((l&255)<194){p=34;break a}if((l&255)<224){if((o-f|0)<2){p=34;break a}g=h[f+1>>0]|0;if((g&192|0)!=128){p=34;break a}if((g&63|m<<6&1984)>>>0>e>>>0){p=34;break a}f=f+2|0;break}if((l&255)<240){g=f;if((o-g|0)<3){p=34;break a}j=b[f+1>>0]|0;i=b[f+2>>0]|0;switch(l<<24>>24){case -32:{if((j&-32)<<24>>24!=-96){f=g;break a}break}case -19:{if((j&-32)<<24>>24!=-128){f=g;break a}break}default:if((j&-64)<<24>>24!=-128){f=g;break a}}g=i&255;if((g&192|0)!=128){p=34;break a}if(((j&63)<<6|m<<12&61440|g&63)>>>0>e>>>0){p=34;break a}else{f=f+3|0;break}}if((l&255)>=245){p=34;break a}g=f;if((o-g|0)<4){p=34;break a}k=b[f+1>>0]|0;i=b[f+2>>0]|0;j=b[f+3>>0]|0;switch(l<<24>>24){case -16:{if((k+112&255)>=48){f=g;break a}break}case -12:{if((k&-16)<<24>>24!=-128){f=g;break a}break}default:if((k&-64)<<24>>24!=-128){f=g;break a}}i=i&255;if((i&192|0)!=128){p=34;break a}g=j&255;if((g&192|0)!=128){p=34;break a}if(((k&63)<<12|m<<18&1835008|i<<6&4032|g&63)>>>0>e>>>0){p=34;break a}else f=f+4|0}while(0);n=n+1|0}return f-a|0}function bLb(a,c,d,e,g,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0;f[d>>2]=a;f[i>>2]=e;if(!(k&4))e=c;else{a=f[d>>2]|0;e=c;if((e-a|0)>2)if((b[a>>0]|0)==-17)if((b[a+1>>0]|0)==-69)if((b[a+2>>0]|0)==-65)f[d>>2]=a+3}a:while(1){p=f[d>>2]|0;a=p>>>0>>0;if(!a){r=36;break}q=f[i>>2]|0;if(q>>>0>=g>>>0){r=36;break}n=b[p>>0]|0;a=n&255;do if(n<<24>>24>-1)if(a>>>0>j>>>0){a=2;break a}else k=1;else{if((n&255)<194){a=2;break a}if((n&255)<224){if((e-p|0)<2){a=1;break a}k=h[p+1>>0]|0;if((k&192|0)!=128){a=2;break a}a=k&63|a<<6&1984;if(a>>>0>j>>>0){a=2;break a}else{k=2;break}}if((n&255)<240){if((e-p|0)<3){a=1;break a}l=b[p+1>>0]|0;k=b[p+2>>0]|0;switch(n<<24>>24){case -32:{if((l&-32)<<24>>24!=-96){a=2;break a}break}case -19:{if((l&-32)<<24>>24!=-128){a=2;break a}break}default:if((l&-64)<<24>>24!=-128){a=2;break a}}k=k&255;if((k&192|0)!=128){a=2;break a}a=(l&63)<<6|a<<12&61440|k&63;if(a>>>0>j>>>0){a=2;break a}else{k=3;break}}if((n&255)>=245){a=2;break a}if((e-p|0)<4){a=1;break a}o=b[p+1>>0]|0;k=b[p+2>>0]|0;m=b[p+3>>0]|0;switch(n<<24>>24){case -16:{if((o+112&255)>=48){a=2;break a}break}case -12:{if((o&-16)<<24>>24!=-128){a=2;break a}break}default:if((o&-64)<<24>>24!=-128){a=2;break a}}l=k&255;if((l&192|0)!=128){a=2;break a}k=m&255;if((k&192|0)!=128){a=2;break a}a=(o&63)<<12|a<<18&1835008|l<<6&4032|k&63;if(a>>>0>j>>>0){a=2;break a}else k=4}while(0);f[q>>2]=a;f[d>>2]=p+k;f[i>>2]=(f[i>>2]|0)+4}if((r|0)==36)a=a&1;return a|0}function cLb(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;f[d>>2]=a;f[h>>2]=e;l=g;if(!(j&2))k=4;else if((l-e|0)<3)a=1;else{f[h>>2]=e+1;b[e>>0]=-17;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=-69;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=-65;k=4}a:do if((k|0)==4){a=f[d>>2]|0;while(1){if(a>>>0>=c>>>0){a=0;break a}e=f[a>>2]|0;if(e>>>0>i>>>0|(e&-2048|0)==55296){a=2;break a}do if(e>>>0<128){a=f[h>>2]|0;if((l-a|0)<1){a=1;break a}f[h>>2]=a+1;b[a>>0]=e}else{if(e>>>0<2048){a=f[h>>2]|0;if((l-a|0)<2){a=1;break a}f[h>>2]=a+1;b[a>>0]=e>>>6|192;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=e&63|128;break}a=f[h>>2]|0;g=l-a|0;if(e>>>0<65536){if((g|0)<3){a=1;break a}f[h>>2]=a+1;b[a>>0]=e>>>12|224;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=e>>>6&63|128;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=e&63|128;break}else{if((g|0)<4){a=1;break a}f[h>>2]=a+1;b[a>>0]=e>>>18|240;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=e>>>12&63|128;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=e>>>6&63|128;k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=e&63|128;break}}while(0);a=(f[d>>2]|0)+4|0;f[d>>2]=a}}while(0);return a|0}function dLb(a){a=a|0;DFb(a);sOb(a);return}function eLb(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;f[e>>2]=c;f[i>>2]=g;return 3}function fLb(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;f[e>>2]=c;f[i>>2]=g;return 3}function gLb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f[e>>2]=c;return 3}function hLb(a){a=a|0;return 1}function iLb(a){a=a|0;return 1}function jLb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=d-c|0;return (d>>>0>>0?d:e)|0}function kLb(a){a=a|0;return 1}function lLb(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+16|0;p=q;n=q+8|0;k=d;while(1){if((k|0)==(e|0)){k=e;break}if(!(f[k>>2]|0))break;k=k+4|0}f[j>>2]=h;f[g>>2]=d;m=i;o=a+8|0;a:while(1){if((h|0)==(i|0)|(d|0)==(e|0)){k=35;break}r=c;l=f[r+4>>2]|0;a=p;f[a>>2]=f[r>>2];f[a+4>>2]=l;a=UAb(f[o>>2]|0)|0;l=YCb(h,g,k-d>>2,m-h|0,c)|0;if(a|0)UAb(a)|0;switch(l|0){case -1:{k=10;break a}case 0:{d=1;k=32;break a}default:{}}h=(f[j>>2]|0)+l|0;f[j>>2]=h;if((h|0)==(i|0)){k=33;break}if((k|0)==(e|0)){k=e;d=f[g>>2]|0}else{h=UAb(f[o>>2]|0)|0;d=oBb(n,0,c)|0;if(h|0)UAb(h)|0;if((d|0)==-1){d=2;k=31;break}if(d>>>0>(m-(f[j>>2]|0)|0)>>>0){d=1;k=31;break}else h=n;while(1){if(!d)break;l=b[h>>0]|0;r=f[j>>2]|0;f[j>>2]=r+1;b[r>>0]=l;h=h+1|0;d=d+-1|0}d=(f[g>>2]|0)+4|0;f[g>>2]=d;k=d;while(1){if((k|0)==(e|0)){k=e;break}if(!(f[k>>2]|0))break;k=k+4|0}h=f[j>>2]|0}}if((k|0)==10){f[j>>2]=h;while(1){if((d|0)==(f[g>>2]|0))break;r=f[d>>2]|0;k=UAb(f[o>>2]|0)|0;h=oBb(h,r,p)|0;if(k|0)UAb(k)|0;if((h|0)==-1)break;h=(f[j>>2]|0)+h|0;f[j>>2]=h;d=d+4|0}f[g>>2]=d;d=2;k=32}else if((k|0)==31)k=32;else if((k|0)==33){d=f[g>>2]|0;k=35}if((k|0)!=32)if((k|0)==35)d=(d|0)!=(e|0)&1;u=q;return d|0}function mLb(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;p=q;k=d;while(1){if((k|0)==(e|0)){k=e;break}if(!(b[k>>0]|0))break;k=k+1|0}f[j>>2]=h;f[g>>2]=d;n=i;o=a+8|0;a=h;while(1){if((a|0)==(i|0)|(d|0)==(e|0)){a=32;break}l=c;h=f[l+4>>2]|0;m=p;f[m>>2]=f[l>>2];f[m+4>>2]=h;m=k;h=UAb(f[o>>2]|0)|0;l=GBb(a,g,m-d|0,n-a>>2,c)|0;if(h|0)UAb(h)|0;if((l|0)==-1){k=a;a=10;break}a=(f[j>>2]|0)+(l<<2)|0;f[j>>2]=a;if((a|0)==(i|0)){a=29;break}d=f[g>>2]|0;if((k|0)==(e|0))k=e;else{k=UAb(f[o>>2]|0)|0;d=xBb(a,d,1,c)|0;if(k|0)UAb(k)|0;if(d|0){d=2;a=28;break}f[j>>2]=(f[j>>2]|0)+4;d=(f[g>>2]|0)+1|0;f[g>>2]=d;k=d;while(1){if((k|0)==(e|0)){k=e;break}if(!(b[k>>0]|0))break;k=k+1|0}a=f[j>>2]|0}}do if((a|0)==10){a:while(1){f[j>>2]=k;if((d|0)==(f[g>>2]|0)){a=18;break}a=UAb(f[o>>2]|0)|0;k=xBb(k,d,m-d|0,p)|0;if(a|0)UAb(a)|0;switch(k|0){case -1:{a=15;break a}case -2:{a=16;break a}case 0:{k=1;break}default:{}}d=d+k|0;k=(f[j>>2]|0)+4|0;a=10}if((a|0)==15){f[g>>2]=d;d=2;a=28;break}else if((a|0)==16){f[g>>2]=d;d=1;a=28;break}else if((a|0)==18){f[g>>2]=d;d=(d|0)!=(e|0)&1;a=28;break}}else if((a|0)==29){d=f[g>>2]|0;a=32}while(0);if((a|0)!=28)if((a|0)==32)d=(d|0)!=(e|0)&1;u=q;return d|0}function nLb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=u;u=u+16|0;h=i;f[g>>2]=d;d=UAb(f[a+8>>2]|0)|0;a=oBb(h,0,c)|0;if(d|0)UAb(d)|0;a:do if((a+1|0)>>>0<2)a=2;else{a=a+-1|0;if(a>>>0>(e-(f[g>>2]|0)|0)>>>0)a=1;else while(1){if(!a){a=0;break a}c=b[h>>0]|0;e=f[g>>2]|0;f[g>>2]=e+1;b[e>>0]=c;h=h+1|0;a=a+-1|0}}while(0);u=i;return a|0}function oLb(a){a=a|0;var b=0,c=0;a=a+8|0;b=UAb(f[a>>2]|0)|0;c=wCb(0,0,4)|0;if(b|0)UAb(b)|0;if(!c){a=f[a>>2]|0;if(!a)a=1;else{b=UAb(a)|0;a=KCb()|0;if(b|0)UAb(b)|0;return (a|0)==1|0}}else a=-1;return a|0}function pLb(a){a=a|0;return 0}function qLb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=d;j=a+8|0;h=0;i=0;a:while(1){if((c|0)==(d|0)|h>>>0>=e>>>0)break;g=UAb(f[j>>2]|0)|0;a=XCb(c,k-c|0,b)|0;if(g|0)UAb(g)|0;switch(a|0){case -2:case -1:break a;case 0:{a=1;break}default:{}}h=h+1|0;i=a+i|0;c=c+a|0}return i|0}function rLb(a){a=a|0;var b=0;a=f[a+8>>2]|0;if(!a)a=1;else{b=UAb(a)|0;a=KCb()|0;if(b)UAb(b)|0}return a|0}function sLb(a){a=a|0;var b=0,c=0;f[a>>2]=50428;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(_Fb()|0))NAb(f[b>>2]|0);DFb(a);return}function tLb(a){a=a|0;sLb(a);sOb(a);return}function uLb(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=DLb(c,d,j,g,h,a,1114111,0)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function vLb(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=CLb(c,d,j,g,h,a,1114111,0)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function wLb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f[e>>2]=c;return 3}function xLb(a){a=a|0;return 0}function yLb(a){a=a|0;return 0}function zLb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return BLb(c,d,e,1114111,0)|0}function ALb(a){a=a|0;return 4}function BLb(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=c;if(!(f&4)){g=0;f=a}else if((o-a|0)>2)if((b[a>>0]|0)==-17)if((b[a+1>>0]|0)==-69){g=0;f=(b[a+2>>0]|0)==-65?a+3|0:a}else{g=0;f=a}else{g=0;f=a}else{g=0;f=a}a:while(1){if(!(g>>>0>>0&f>>>0>>0)){p=33;break}m=b[f>>0]|0;n=m&255;if(n>>>0>e>>>0){p=33;break}do if(m<<24>>24>-1)f=f+1|0;else{if((m&255)<194){p=33;break a}if((m&255)<224){if((o-f|0)<2){p=33;break a}i=h[f+1>>0]|0;if((i&192|0)!=128){p=33;break a}if((i&63|n<<6&1984)>>>0>e>>>0){p=33;break a}else{f=f+2|0;break}}if((m&255)<240){i=f;if((o-i|0)<3){p=33;break a}k=b[f+1>>0]|0;j=b[f+2>>0]|0;switch(m<<24>>24){case -32:{if((k&-32)<<24>>24!=-96){f=i;break a}break}case -19:{if((k&-32)<<24>>24!=-128){f=i;break a}break}default:if((k&-64)<<24>>24!=-128){f=i;break a}}i=j&255;if((i&192|0)!=128){p=33;break a}if(((k&63)<<6|n<<12&61440|i&63)>>>0>e>>>0){p=33;break a}else{f=f+3|0;break}}if((m&255)>=245){p=33;break a}i=f;if((d-g|0)>>>0<2|(o-i|0)<4){p=33;break a}l=b[f+1>>0]|0;j=b[f+2>>0]|0;k=b[f+3>>0]|0;switch(m<<24>>24){case -16:{if((l+112&255)>=48){f=i;break a}break}case -12:{if((l&-16)<<24>>24!=-128){f=i;break a}break}default:if((l&-64)<<24>>24!=-128){f=i;break a}}j=j&255;if((j&192|0)!=128){p=33;break a}i=k&255;if((i&192|0)!=128){p=33;break a}if(((l&63)<<12|n<<18&1835008|j<<6&4032|i&63)>>>0>e>>>0){p=33;break a}else{g=g+1|0;f=f+4|0}}while(0);g=g+1|0}return f-a|0}function CLb(a,c,e,g,i,j,k,l){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0;f[e>>2]=a;f[j>>2]=g;if(!(l&4))g=c;else{a=f[e>>2]|0;g=c;if((g-a|0)>2)if((b[a>>0]|0)==-17)if((b[a+1>>0]|0)==-69)if((b[a+2>>0]|0)==-65)f[e>>2]=a+3}r=i;a:while(1){a=f[e>>2]|0;l=a>>>0>>0;if(!l){s=41;break}q=f[j>>2]|0;if(q>>>0>=i>>>0){s=41;break}n=b[a>>0]|0;p=n&255;if(p>>>0>k>>>0){a=2;break}do if(n<<24>>24>-1){d[q>>1]=n&255;l=1}else{if((n&255)<194){a=2;break a}if((n&255)<224){if((g-a|0)<2){a=1;break a}l=h[a+1>>0]|0;if((l&192|0)!=128){a=2;break a}l=l&63|p<<6&1984;if(l>>>0>k>>>0){a=2;break a}d[q>>1]=l;l=2;break}if((n&255)<240){if((g-a|0)<3){a=1;break a}m=b[a+1>>0]|0;l=b[a+2>>0]|0;switch(n<<24>>24){case -32:{if((m&-32)<<24>>24!=-96){a=2;break a}break}case -19:{if((m&-32)<<24>>24!=-128){a=2;break a}break}default:if((m&-64)<<24>>24!=-128){a=2;break a}}l=l&255;if((l&192|0)!=128){a=2;break a}l=(m&63)<<6|p<<12|l&63;if((l&65535)>>>0>k>>>0){a=2;break a}d[q>>1]=l;l=3;break}if((n&255)>=245){a=2;break a}if((g-a|0)<4){a=1;break a}m=b[a+1>>0]|0;l=b[a+2>>0]|0;a=b[a+3>>0]|0;switch(n<<24>>24){case -16:{if((m+112&255)>=48){a=2;break a}break}case -12:{if((m&-16)<<24>>24!=-128){a=2;break a}break}default:if((m&-64)<<24>>24!=-128){a=2;break a}}o=l&255;if((o&192|0)!=128){a=2;break a}a=a&255;if((a&192|0)!=128){a=2;break a}if((r-q|0)<4){a=1;break a}n=p&7;l=m&255;m=o<<6;a=a&63;if((l<<12&258048|n<<18|m&4032|a)>>>0>k>>>0){a=2;break a}d[q>>1]=l<<2&60|o>>>4&3|((l>>>4&3|n<<2)<<6)+16320|55296;l=q+2|0;f[j>>2]=l;d[l>>1]=a|m&960|56320;l=4;a=f[e>>2]|0}while(0);f[e>>2]=a+l;f[j>>2]=(f[j>>2]|0)+2}if((s|0)==41)a=l&1;return a|0}function DLb(a,c,e,g,h,i,k,l){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;k=k|0;l=l|0;var m=0,n=0;f[e>>2]=a;f[i>>2]=g;if(!(l&2))m=4;else if((h-g|0)<3)a=1;else{f[i>>2]=g+1;b[g>>0]=-17;m=f[i>>2]|0;f[i>>2]=m+1;b[m>>0]=-69;m=f[i>>2]|0;f[i>>2]=m+1;b[m>>0]=-65;m=4}a:do if((m|0)==4){n=c;a=f[e>>2]|0;while(1){if(a>>>0>=c>>>0){a=0;break a}g=d[a>>1]|0;m=g&65535;if(m>>>0>k>>>0){a=2;break a}do if((g&65535)<128){a=f[i>>2]|0;if((h-a|0)<1){a=1;break a}f[i>>2]=a+1;b[a>>0]=g}else{if((g&65535)<2048){a=f[i>>2]|0;if((h-a|0)<2){a=1;break a}f[i>>2]=a+1;b[a>>0]=m>>>6|192;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=m&63|128;break}if((g&65535)<55296){a=f[i>>2]|0;if((h-a|0)<3){a=1;break a}f[i>>2]=a+1;b[a>>0]=m>>>12|224;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=m>>>6&63|128;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=m&63|128;break}if((g&65535)>=56320){if((g&65535)<57344){a=2;break a}a=f[i>>2]|0;if((h-a|0)<3){a=1;break a}f[i>>2]=a+1;b[a>>0]=m>>>12|224;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=m>>>6&63|128;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=m&63|128;break}if((n-a|0)<4){a=1;break a}a=a+2|0;g=j[a>>1]|0;if((g&64512|0)!=56320){a=2;break a}if((h-(f[i>>2]|0)|0)<4){a=1;break a}l=m&960;if(((l<<10)+65536|m<<10&64512|g&1023)>>>0>k>>>0){a=2;break a}f[e>>2]=a;a=(l>>>6)+1|0;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=a>>>2|240;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=m>>>2&15|a<<4&48|128;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=m<<4&48|g>>>6&15|128;m=f[i>>2]|0;f[i>>2]=m+1;b[m>>0]=g&63|128}while(0);a=(f[e>>2]|0)+2|0;f[e>>2]=a}}while(0);return a|0}function ELb(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=50476;d=a+8|0;e=a+12|0;c=0;while(1){b=f[d>>2]|0;if(c>>>0>=(f[e>>2]|0)-b>>2>>>0)break;b=f[b+(c<<2)>>2]|0;if(b|0)eOb(b)|0;c=c+1|0}zOb(a+144|0);GLb(d);DFb(a);return}function FLb(a){a=a|0;ELb(a);sOb(a);return}function GLb(a){a=a|0;var c=0,d=0,e=0,g=0;c=f[a>>2]|0;do if(c|0){d=a+4|0;e=f[d>>2]|0;while(1){if((e|0)==(c|0))break;g=e+-4|0;f[d>>2]=g;e=g}if((c|0)==(a+16|0)){b[a+128>>0]=0;break}else{sOb(c);break}}while(0);return}function HLb(a){a=a|0;var c=0;f[a>>2]=50496;c=f[a+8>>2]|0;if(c|0)if(b[a+12>>0]|0)tOb(c);DFb(a);return}function ILb(a){a=a|0;HLb(a);sOb(a);return}function JLb(a,b){a=a|0;b=b|0;if(b<<24>>24>-1){b=(SLb()|0)+((b&255)<<2)|0;b=f[b>>2]&255}return b|0}function KLb(a,c,d){a=a|0;c=c|0;d=d|0;while(1){if((c|0)==(d|0))break;a=b[c>>0]|0;if(a<<24>>24>-1){a=SLb()|0;a=f[a+(b[c>>0]<<2)>>2]&255}b[c>>0]=a;c=c+1|0}return d|0}function LLb(a,b){a=a|0;b=b|0;if(b<<24>>24>-1){b=(RLb()|0)+(b<<24>>24<<2)|0;b=f[b>>2]&255}return b|0}function MLb(a,c,d){a=a|0;c=c|0;d=d|0;while(1){if((c|0)==(d|0))break;a=b[c>>0]|0;if(a<<24>>24>-1){a=RLb()|0;a=f[a+(b[c>>0]<<2)>>2]&255}b[c>>0]=a;c=c+1|0}return d|0}function NLb(a,b){a=a|0;b=b|0;return b|0}function OLb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;while(1){if((c|0)==(d|0))break;b[e>>0]=b[c>>0]|0;e=e+1|0;c=c+1|0}return d|0}function PLb(a,b,c){a=a|0;b=b|0;c=c|0;return (b<<24>>24>-1?b:c)|0}function QLb(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;while(1){if((c|0)==(d|0))break;a=b[c>>0]|0;b[f>>0]=a<<24>>24>-1?a:e;f=f+1|0;c=c+1|0}return d|0}function RLb(){var a=0;a=NCb()|0;return f[a>>2]|0}function SLb(){var a=0;a=MCb()|0;return f[a>>2]|0}function TLb(){var a=0;a=OCb()|0;return f[a>>2]|0}function ULb(a){a=a|0;f[a>>2]=50548;zOb(a+12|0);DFb(a);return}function VLb(a){a=a|0;ULb(a);sOb(a);return}function WLb(a){a=a|0;return b[a+8>>0]|0}function XLb(a){a=a|0;return b[a+9>>0]|0}function YLb(a,b){a=a|0;b=b|0;xOb(a,b+12|0);return}function ZLb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=qEb(254911)|0;if(e>>>0>4294967279)vOb(a);if(e>>>0<11){b[a+11>>0]=e;c=a}else{h=e+16&-16;c=pOb(h)|0;f[a>>2]=c;f[a+8>>2]=h|-2147483648;f[a+4>>2]=e}EDb(c,254911,e)|0;b[d>>0]=0;rEb(c+e|0,d);u=g;return}function _Lb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=qEb(254905)|0;if(e>>>0>4294967279)vOb(a);if(e>>>0<11){b[a+11>>0]=e;c=a}else{h=e+16&-16;c=pOb(h)|0;f[a>>2]=c;f[a+8>>2]=h|-2147483648;f[a+4>>2]=e}EDb(c,254905,e)|0;b[d>>0]=0;rEb(c+e|0,d);u=g;return}function $Lb(a){a=a|0;f[a>>2]=50588;zOb(a+16|0);DFb(a);return}function aMb(a){a=a|0;$Lb(a);sOb(a);return}function bMb(a){a=a|0;return f[a+8>>2]|0}function cMb(a){a=a|0;return f[a+12>>2]|0}function dMb(a,b){a=a|0;b=b|0;xOb(a,b+16|0);return}function eMb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=GIb(50644)|0;if(e>>>0>1073741807)vOb(a);do if(e>>>0<2){b[a+8+3>>0]=e;h=a}else{c=e+4&-4;if(c>>>0>1073741823)vd();else{h=pOb(c<<2)|0;f[a>>2]=h;f[a+8>>2]=c|-2147483648;f[a+4>>2]=e;break}}while(0);WDb(h,50644,e)|0;f[d>>2]=0;JFb(h+(e<<2)|0,d);u=g;return}function fMb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=GIb(50620)|0;if(e>>>0>1073741807)vOb(a);do if(e>>>0<2){b[a+8+3>>0]=e;h=a}else{c=e+4&-4;if(c>>>0>1073741823)vd();else{h=pOb(c<<2)|0;f[a>>2]=h;f[a+8>>2]=c|-2147483648;f[a+4>>2]=e;break}}while(0);WDb(h,50620,e)|0;f[d>>2]=0;JFb(h+(e<<2)|0,d);u=g;return}function gMb(a){a=a|0;DFb(a);sOb(a);return}function hMb(a){a=a|0;DFb(a);sOb(a);return}function iMb(a,b,c){a=a|0;b=b|0;c=c|0;if(c>>>0<128){a=(TLb()|0)+(c<<1)|0;a=(d[a>>1]&b)<<16>>16!=0}else a=0;return a|0}function jMb(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;while(1){if((b|0)==(c|0))break;if((f[b>>2]|0)>>>0<128){a=TLb()|0;a=j[a+(f[b>>2]<<1)>>1]|0}else a=0;d[e>>1]=a;e=e+2|0;b=b+4|0}return c|0}function kMb(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;while(1){if((c|0)==(e|0)){c=e;break}if((f[c>>2]|0)>>>0<128){a=TLb()|0;if((d[a+(f[c>>2]<<1)>>1]&b)<<16>>16)break}c=c+4|0}return c|0}function lMb(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;while(1){if((c|0)==(e|0)){c=e;break}if((f[c>>2]|0)>>>0>=128)break;a=TLb()|0;if(!((d[a+(f[c>>2]<<1)>>1]&b)<<16>>16))break;c=c+4|0}return c|0}function mMb(a,b){a=a|0;b=b|0;if(b>>>0<128){b=(SLb()|0)+(b<<2)|0;b=f[b>>2]|0}return b|0}function nMb(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;a=f[b>>2]|0;if(a>>>0<128){a=SLb()|0;a=f[a+(f[b>>2]<<2)>>2]|0}f[b>>2]=a;b=b+4|0}return c|0}function oMb(a,b){a=a|0;b=b|0;if(b>>>0<128){b=(RLb()|0)+(b<<2)|0;b=f[b>>2]|0}return b|0}function pMb(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;a=f[b>>2]|0;if(a>>>0<128){a=RLb()|0;a=f[a+(f[b>>2]<<2)>>2]|0}f[b>>2]=a;b=b+4|0}return c|0}function qMb(a,b){a=a|0;b=b|0;return b<<24>>24|0}function rMb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;while(1){if((c|0)==(d|0))break;f[e>>2]=b[c>>0];e=e+4|0;c=c+1|0}return d|0}function sMb(a,b,c){a=a|0;b=b|0;c=c|0;return (b>>>0<128?b&255:c)|0}function tMb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=(d-c|0)>>>2;a=g;g=c;while(1){if((g|0)==(d|0))break;i=f[g>>2]|0;b[a>>0]=i>>>0<128?i&255:e;a=a+1|0;g=g+4|0}return c+(h<<2)|0}function uMb(a){a=a|0;DFb(a);sOb(a);return}function vMb(a){a=a|0;DFb(a);sOb(a);return}function wMb(a){a=a|0;DFb(a);sOb(a);return}function xMb(a){a=a|0;f[a>>2]=50904;return}function yMb(a){a=a|0;f[a>>2]=50940;return}function zMb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;f[a+4>>2]=e+-1;f[a>>2]=50496;e=a+8|0;f[e>>2]=c;b[a+12>>0]=d&1;if(!c){d=TLb()|0;f[e>>2]=d}return}function AMb(a){a=a|0;vd()}function BMb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;g=h;f[a+4>>2]=c+-1;f[a>>2]=50476;d=a+8|0;CMb(d,28);c=a+144|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;e=qEb(252850)|0;if(e>>>0>4294967279)vOb(c);if(e>>>0<11)b[c+11>>0]=e;else{j=e+16&-16;i=pOb(j)|0;f[c>>2]=i;f[a+152>>2]=j|-2147483648;f[a+148>>2]=e;c=i}EDb(c,252850,e)|0;b[g>>0]=0;rEb(c+e|0,g);c=f[d>>2]|0;d=a+12|0;e=f[d>>2]|0;while(1){if((e|0)==(c|0))break;j=e+-4|0;f[d>>2]=j;e=j}DMb();EMb(a,257768);FMb();GMb(a,257776);HMb();IMb(a,257784);JMb();KMb(a,257800);LMb();MMb(a,257808);NMb();OMb(a,257816);PMb();QMb(a,257832);RMb();SMb(a,257840);TMb();UMb(a,257848);VMb();WMb(a,257872);XMb();YMb(a,257904);ZMb();_Mb(a,257912);$Mb();aNb(a,257920);bNb();cNb(a,257928);dNb();eNb(a,257936);fNb();gNb(a,257944);hNb();iNb(a,257952);jNb();kNb(a,257960);lNb();mNb(a,257968);nNb();oNb(a,257976);pNb();qNb(a,257984);rNb();sNb(a,257992);tNb();uNb(a,258e3);vNb();wNb(a,258016);xNb();yNb(a,258032);zNb();ANb(a,258048);BNb();CNb(a,258064);DNb();ENb(a,258072);u=h;return}function CMb(a,c){a=a|0;c=c|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b[a+128>>0]=0;if(c|0){RNb(a,c);INb(a,c)}return}function DMb(){f[64443]=0;f[64442]=48140;return}function EMb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(260880)|0);return}function FMb(){f[64445]=0;f[64444]=48172;return}function GMb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(260888)|0);return}function HMb(){zMb(257784,0,0,1);return}function IMb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(260896)|0);return}function JMb(){f[64451]=0;f[64450]=50692;return}function KMb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(260928)|0);return}function LMb(){f[64453]=0;f[64452]=50760;return}function MMb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262688)|0);return}function NMb(){QNb(257816,1);return}function OMb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262696)|0);return}function PMb(){f[64459]=0;f[64458]=50808;return}function QMb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262704)|0);return}function RMb(){f[64461]=0;f[64460]=50856;return}function SMb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262712)|0);return}function TMb(){PNb(257848,1);return}function UMb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(260912)|0);return}function VMb(){ONb(257872,1);return}function WMb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(260936)|0);return}function XMb(){f[64477]=0;f[64476]=48204;return}function YMb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(260920)|0);return}function ZMb(){f[64479]=0;f[64478]=48268;return}function _Mb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(260944)|0);return}function $Mb(){f[64481]=0;f[64480]=48332;return}function aNb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(260952)|0);return}function bNb(){f[64483]=0;f[64482]=48384;return}function cNb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(260960)|0);return}function dNb(){f[64485]=0;f[64484]=49932;return}function eNb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262608)|0);return}function fNb(){f[64487]=0;f[64486]=49988;return}function gNb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262616)|0);return}function hNb(){f[64489]=0;f[64488]=50044;return}function iNb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262624)|0);return}function jNb(){f[64491]=0;f[64490]=50100;return}function kNb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262632)|0);return}function lNb(){f[64493]=0;f[64492]=50156;return}function mNb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262640)|0);return}function nNb(){f[64495]=0;f[64494]=50184;return}function oNb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262648)|0);return}function pNb(){f[64497]=0;f[64496]=50212;return}function qNb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262656)|0);return}function rNb(){f[64499]=0;f[64498]=50240;return}function sNb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262664)|0);return}function tNb(){f[64501]=0;f[64500]=50672;xMb(258008);f[64500]=48436;f[64502]=48484;return}function uNb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(261772)|0);return}function vNb(){f[64505]=0;f[64504]=50672;yMb(258024);f[64504]=48520;f[64506]=48568;return}function wNb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262584)|0);return}function xNb(){var a=0;f[64509]=0;f[64508]=50672;a=_Fb()|0;f[64510]=a;f[64508]=49884;return}function yNb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262592)|0);return}function zNb(){var a=0;f[64513]=0;f[64512]=50672;a=_Fb()|0;f[64514]=a;f[64512]=49908;return}function ANb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262600)|0);return}function BNb(){f[64517]=0;f[64516]=50268;return}function CNb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262672)|0);return}function DNb(){f[64519]=0;f[64518]=50300;return}function ENb(a,b){a=a|0;b=b|0;FNb(a,b,aGb(262680)|0);return}function FNb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;cOb(b);e=a+8|0;d=f[e>>2]|0;if((f[a+12>>2]|0)-d>>2>>>0>c>>>0)a=e;else{GNb(e,c+1|0);a=e;d=f[e>>2]|0}d=f[d+(c<<2)>>2]|0;if(d|0)eOb(d)|0;f[(f[a>>2]|0)+(c<<2)>>2]=b;return}function GNb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;e=f[a>>2]|0;d=c-e>>2;a:do if(d>>>0>>0)HNb(a,b-d|0);else if(d>>>0>b>>>0){a=e+(b<<2)|0;while(1){if((c|0)==(a|0))break a;e=c+-4|0;f[g>>2]=e;c=e}}while(0);return}function HNb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+32|0;e=i;g=a+8|0;h=a+4|0;c=f[h>>2]|0;do if((f[g>>2]|0)-c>>2>>>0>>0){c=(c-(f[a>>2]|0)>>2)+b|0;d=JNb(a)|0;if(d>>>0>>0)AMb(a);else{j=f[a>>2]|0;k=(f[g>>2]|0)-j|0;g=k>>1;KNb(e,k>>2>>>0>>1>>>0?(g>>>0>>0?c:g):d,(f[h>>2]|0)-j>>2,a+16|0);LNb(e,b);MNb(a,e);NNb(e);break}}else INb(a,b);while(0);u=i;return}function INb(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;b=(f[c>>2]|0)+4|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function JNb(a){a=a|0;return 1073741823}function KNb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;f[a+12>>2]=0;f[a+16>>2]=e;do if(!c)e=0;else{g=e+112|0;if(c>>>0<29&(b[g>>0]|0)==0){b[g>>0]=1;break}else{e=pOb(c<<2)|0;break}}while(0);f[a>>2]=e;d=e+(d<<2)|0;f[a+8>>2]=d;f[a+4>>2]=d;f[a+12>>2]=e+(c<<2);return}function LNb(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;b=(f[c>>2]|0)+4|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function MNb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;h=a+4|0;g=b+4|0;e=(f[h>>2]|0)-d|0;c=(f[g>>2]|0)+(0-(e>>2)<<2)|0;f[g>>2]=c;if((e|0)>0){bQb(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0}else d=g;g=f[a>>2]|0;f[a>>2]=c;f[d>>2]=g;g=b+8|0;e=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=e;g=a+8|0;h=b+12|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;f[b>>2]=f[d>>2];return}function NNb(a){a=a|0;var c=0,d=0,e=0,g=0;c=f[a+4>>2]|0;d=a+8|0;e=f[d>>2]|0;while(1){if((e|0)==(c|0))break;g=e+-4|0;f[d>>2]=g;e=g}d=f[a>>2]|0;do if(d|0){c=f[a+16>>2]|0;if((d|0)==(c|0)){b[c+112>>0]=0;break}else{sOb(d);break}}while(0);return}function ONb(a,b){a=a|0;b=b|0;f[a+4>>2]=b+-1;f[a>>2]=50588;f[a+8>>2]=46;f[a+12>>2]=44;b=a+16|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function PNb(a,c){a=a|0;c=c|0;f[a+4>>2]=c+-1;f[a>>2]=50548;b[a+8>>0]=46;b[a+9>>0]=44;c=a+12|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}return}function QNb(a,b){a=a|0;b=b|0;f[a+4>>2]=b+-1;f[a>>2]=50428;b=_Fb()|0;f[a+8>>2]=b;return}function RNb(a,c){a=a|0;c=c|0;var d=0;if((JNb(a)|0)>>>0>>0)AMb(a);d=a+128|0;if(c>>>0<29&(b[d>>0]|0)==0){b[d>>0]=1;d=a+16|0}else d=pOb(c<<2)|0;f[a+4>>2]=d;f[a>>2]=d;f[a+8>>2]=d+(c<<2);return}function SNb(){if(!(b[258080]|0))if(MPb(258080)|0){TNb()|0;f[65681]=262720}return f[65681]|0}function TNb(){UNb();f[65680]=258088;return 262720}function UNb(){BMb(258088,1);return}function VNb(){WNb(262728,SNb()|0);return 262728}function WNb(a,b){a=a|0;b=b|0;b=f[b>>2]|0;f[a>>2]=b;cOb(b);return}function XNb(){if(!(b[258248]|0))if(MPb(258248)|0){VNb()|0;f[65683]=262728}return f[65683]|0}function YNb(a){a=a|0;var b=0;b=XNb()|0;b=f[b>>2]|0;f[a>>2]=b;cOb(b);return}function ZNb(a,b){a=a|0;b=b|0;a=f[a>>2]|0;return _Nb(a,aGb(b)|0)|0}function _Nb(a,b){a=a|0;b=b|0;var c=0;c=f[a+8>>2]|0;if((f[a+12>>2]|0)-c>>2>>>0>b>>>0)a=(f[c+(b<<2)>>2]|0)!=0;else a=0;return a|0}function $Nb(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=zBb(a,b,c)|0;return a|0}function aOb(a){a=a|0;return}function bOb(a,b){a=a|0;b=b|0;return 0}function cOb(a){a=a|0;dOb(a+4|0);return}function dOb(a){a=a|0;f[a>>2]=(f[a>>2]|0)+1;return}function eOb(a){a=a|0;if((fOb(a+4|0)|0)==-1){gh[f[(f[a>>2]|0)+8>>2]&2047](a);a=1}else a=0;return a|0}function fOb(a){a=a|0;var b=0;b=f[a>>2]|0;f[a>>2]=b+-1;return b+-1|0}function gOb(a){a=a|0;cOb(a);return}function hOb(a){a=a|0;dOb(a+8|0);return}function iOb(a){a=a|0;if(eOb(a)|0)jOb(a);return}function jOb(a){a=a|0;var b=0;b=a+8|0;if(!(f[b>>2]|0))gh[f[(f[a>>2]|0)+16>>2]&2047](a);else if((fOb(b)|0)==-1)gh[f[(f[a>>2]|0)+16>>2]&2047](a);return}function kOb(a){a=a|0;var b=0,c=0,d=0;c=a+4|0;b=f[c>>2]|0;while(1){if((b|0)==-1){a=0;break}d=f[c>>2]|0;if((d|0)==(b|0))f[c>>2]=b+1;if((d|0)==(b|0))break;b=d}return a|0}function lOb(a){a=a|0;Ff(a|0)|0;return}function mOb(a){a=a|0;a=fQb(a|0)|0;if(!a)return;else cPb(a,255013)}function nOb(a){a=a|0;if(!(gQb(a|0)|0))return;else tc(255031,255039,48,255165)}function oOb(a,b,c){a=a|0;b=b|0;c=c|0;fQb(262736)|0;while(1){if((f[a>>2]|0)!=1)break;Ef(262764,262736)|0}if(!(f[a>>2]|0)){f[a>>2]=1;gQb(262736)|0;gh[c&2047](b);fQb(262736)|0;f[a>>2]=-1;gQb(262736)|0;eQb(262764)|0}else gQb(262736)|0;return}function pOb(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=_zb(b)|0;if(a|0)break;a=OPb()|0;if(!a){a=0;break}bh[a&63]()}return a|0}function qOb(a){a=a|0;return pOb(a)|0}function rOb(a,b){a=a|0;b=b|0;return qOb(a)|0}function sOb(a){a=a|0;$zb(a);return}function tOb(a){a=a|0;sOb(a);return}function uOb(){vd()}function vOb(a){a=a|0;vd()}function wOb(a){a=a|0;vd()}function xOb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;d=g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;if((b[c+11>>0]|0)<0){e=f[c>>2]|0;c=f[c+4>>2]|0;if(c>>>0>4294967279)vOb(a);if(c>>>0<11)b[a+11>>0]=c;else{i=c+16&-16;h=pOb(i)|0;f[a>>2]=h;f[a+8>>2]=i|-2147483648;f[a+4>>2]=c;a=h}EDb(a,e,c)|0;b[d>>0]=0;rEb(a+c|0,d)}else{f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2]}u=g;return}function yOb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;j=u;u=u+16|0;i=j;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;h=b[c+11>>0]|0;g=h<<24>>24<0;h=g?f[c+4>>2]|0:h&255;if(h>>>0>>0)wOb(a);c=(g?f[c>>2]|0:c)+d|0;g=h-d|0;g=g>>>0>>0?g:e;if(g>>>0>4294967279)vOb(a);if(g>>>0<11)b[a+11>>0]=g;else{d=g+16&-16;e=pOb(d)|0;f[a>>2]=e;f[a+8>>2]=d|-2147483648;f[a+4>>2]=g;a=e}EDb(a,c,g)|0;b[i>>0]=0;rEb(a+g|0,i);u=j;return}function zOb(a){a=a|0;if((b[a+11>>0]|0)<0)sOb(f[a>>2]|0);return}function AOb(a,c){a=a|0;c=c|0;var d=0,e=0;if((a|0)!=(c|0)){d=b[c+11>>0]|0;e=d<<24>>24<0;BOb(a,e?f[c>>2]|0:c,e?f[c+4>>2]|0:d&255)|0}return a|0}function BOb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;j=a+11|0;e=b[j>>0]|0;g=e<<24>>24<0;if(g)h=(f[a+8>>2]&2147483647)+-1|0;else h=10;do if(h>>>0>>0){if(g)e=f[a+4>>2]|0;else e=e&255;DOb(a,h,d-h|0,e,0,e,d,c)}else{if(g)e=f[a>>2]|0;else e=a;COb(e,c,d)|0;b[i>>0]=0;rEb(e+d|0,i);if((b[j>>0]|0)<0){f[a+4>>2]=d;break}else{b[j>>0]=d;break}}while(0);u=k;return a|0}function COb(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)cQb(a|0,b|0,c|0)|0;return a|0}function DOb(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;n=o;if((-18-c|0)>>>0>>0)vOb(a);if((b[a+11>>0]|0)<0)m=f[a>>2]|0;else m=a;if(c>>>0<2147483623){k=d+c|0;l=c<<1;k=k>>>0>>0?l:k;k=k>>>0<11?11:k+16&-16}else k=-17;l=pOb(k)|0;if(g|0)EDb(l,m,g)|0;if(i|0)EDb(l+g|0,j,i)|0;d=e-h|0;e=d-g|0;if(e|0)EDb(l+g+i|0,m+g+h|0,e)|0;if((c|0)!=10)sOb(m);f[a>>2]=l;f[a+8>>2]=k|-2147483648;i=d+i|0;f[a+4>>2]=i;b[n>>0]=0;rEb(l+i|0,n);u=o;return}function EOb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(c>>>0>4294967279)vOb(a);j=a+11|0;g=b[j>>0]|0;h=g<<24>>24<0;if(h){k=f[a+4>>2]|0;d=(f[a+8>>2]&2147483647)+-1|0}else{k=g&255;d=10}i=k>>>0>c>>>0?k:c;c=i>>>0<11;i=c?10:(i+16&-16)+-1|0;do if((i|0)!=(d|0)){do if(c){c=f[a>>2]|0;if(h){g=0;d=c;e=a;h=13}else{EDb(a,c,(g&255)+1|0)|0;sOb(c);h=16}}else{d=i+1|0;e=pOb(d)|0;if(h){g=1;d=f[a>>2]|0;h=13;break}else{EDb(e,a,(g&255)+1|0)|0;c=a+4|0;h=15;break}}while(0);if((h|0)==13){c=a+4|0;EDb(e,d,(f[c>>2]|0)+1|0)|0;sOb(d);if(g){d=i+1|0;h=15}else h=16}if((h|0)==15){f[a+8>>2]=d|-2147483648;f[c>>2]=k;f[a>>2]=e;break}else if((h|0)==16){b[j>>0]=k;break}}while(0);return}function FOb(a,b){a=a|0;b=b|0;return BOb(a,b,qEb(b)|0)|0}function GOb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;h=a+11|0;e=b[h>>0]|0;i=e<<24>>24<0;if(i)e=f[a+4>>2]|0;else e=e&255;do if(e>>>0>>0)HOb(a,c-e|0,d)|0;else if(i){i=(f[a>>2]|0)+c|0;b[g>>0]=0;rEb(i,g);f[a+4>>2]=c;break}else{b[g>>0]=0;rEb(a+c|0,g);b[h>>0]=c;break}while(0);u=j;return}function HOb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;if(c|0){j=a+11|0;e=b[j>>0]|0;if(e<<24>>24<0){h=f[a+4>>2]|0;g=(f[a+8>>2]&2147483647)+-1|0}else{h=e&255;g=10}if((g-h|0)>>>0>>0){IOb(a,g,c-g+h|0,h,h,0,0);e=b[j>>0]|0}if(e<<24>>24<0)g=f[a>>2]|0;else g=a;wJb(g+h|0,c,d)|0;e=h+c|0;if((b[j>>0]|0)<0)f[a+4>>2]=e;else b[j>>0]=e;b[i>>0]=0;rEb(g+e|0,i)}u=k;return a|0}function IOb(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((-17-c|0)>>>0>>0)vOb(a);if((b[a+11>>0]|0)<0)l=f[a>>2]|0;else l=a;if(c>>>0<2147483623){j=d+c|0;k=c<<1;j=j>>>0>>0?k:j;j=j>>>0<11?11:j+16&-16}else j=-17;k=pOb(j)|0;if(g|0)EDb(k,l,g)|0;d=e-h-g|0;if(d|0)EDb(k+g+i|0,l+g+h|0,d)|0;if((c|0)!=10)sOb(l);f[a>>2]=k;f[a+8>>2]=j|-2147483648;return}function JOb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;j=a+11|0;e=b[j>>0]|0;g=e<<24>>24<0;if(g){h=f[a+4>>2]|0;e=(f[a+8>>2]&2147483647)+-1|0}else{h=e&255;e=10}if((e-h|0)>>>0>>0)DOb(a,e,d-e+h|0,h,h,0,d,c);else if(d|0){if(g)g=f[a>>2]|0;else g=a;EDb(g+h|0,c,d)|0;e=h+d|0;if((b[j>>0]|0)<0)f[a+4>>2]=e;else b[j>>0]=e;b[i>>0]=0;rEb(g+e|0,i)}u=k;return a|0}function KOb(a,b){a=a|0;b=b|0;return JOb(a,b,qEb(b)|0)|0}function LOb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;i=j+1|0;b[h>>0]=c;g=a+11|0;c=b[g>>0]|0;d=c<<24>>24<0;if(d){e=f[a+4>>2]|0;c=(f[a+8>>2]&2147483647)+-1|0}else{e=c&255;c=10}if((e|0)==(c|0)){IOb(a,c,1,c,c,0,0);if((b[g>>0]|0)<0)d=8;else d=7}else if(d)d=8;else d=7;if((d|0)==7){b[g>>0]=e+1;c=a}else if((d|0)==8){c=f[a>>2]|0;f[a+4>>2]=e+1}a=c+e|0;rEb(a,h);b[i>>0]=0;rEb(a+1|0,i);u=j;return}function MOb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=b[a+11>>0]|0;i=h<<24>>24<0;if(i)h=f[a+4>>2]|0;else h=h&255;if((g|0)==-1|h>>>0>>0)wOb(a);h=h-c|0;d=h>>>0>>0?h:d;if(i)a=f[a>>2]|0;h=d>>>0>g>>>0;a=$Nb(a+c|0,e,h?g:d)|0;if(!a)return (d>>>0>>0?-1:h&1)|0;else return a|0;return 0}function NOb(a){a=a|0;if((b[a+8+3>>0]|0)<0)sOb(f[a>>2]|0);return}function OOb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;e=a+8|0;k=e+3|0;h=b[k>>0]|0;i=h<<24>>24<0;if(i)g=(f[e>>2]&2147483647)+-1|0;else g=1;do if(g>>>0>>0){if(i)e=f[a+4>>2]|0;else e=h&255;QOb(a,g,d-g|0,e,0,e,d,c)}else{if(i)e=f[a>>2]|0;else e=a;POb(e,c,d)|0;f[j>>2]=0;JFb(e+(d<<2)|0,j);if((b[k>>0]|0)<0){f[a+4>>2]=d;break}else{b[k>>0]=d;break}}while(0);u=l;return a|0}function POb(a,b,c){a=a|0;b=b|0;c=c|0;if(c)HCb(a,b,c)|0;return a|0}function QOb(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;o=p;if((1073741806-c|0)>>>0>>0)vOb(a);l=a+8|0;if((b[l+3>>0]|0)<0)n=f[a>>2]|0;else n=a;if(c>>>0<536870887){d=d+c|0;k=c<<1;d=d>>>0>>0?k:d;d=d>>>0<2?2:d+4&-4;if(d>>>0>1073741823)vd();else m=d}else m=1073741807;k=pOb(m<<2)|0;if(g|0)WDb(k,n,g)|0;if(i|0)WDb(k+(g<<2)|0,j,i)|0;d=e-h|0;e=d-g|0;if(e|0)WDb(k+(g<<2)+(i<<2)|0,n+(g<<2)+(h<<2)|0,e)|0;if((c|0)!=1)sOb(n);f[a>>2]=k;f[l>>2]=m|-2147483648;i=d+i|0;f[a+4>>2]=i;f[o>>2]=0;JFb(k+(i<<2)|0,o);u=p;return}function ROb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;if(c>>>0>1073741807)vOb(a);l=a+8|0;j=l+3|0;g=b[j>>0]|0;h=g<<24>>24<0;if(h){k=f[a+4>>2]|0;d=(f[l>>2]&2147483647)+-1|0}else{k=g&255;d=1}i=k>>>0>c>>>0?k:c;c=i>>>0<2;i=c?1:(i+4&-4)+-1|0;do if((i|0)!=(d|0)){do if(c){c=f[a>>2]|0;if(h){g=0;d=c;e=a;h=15}else{WDb(a,c,(g&255)+1|0)|0;sOb(c);h=18}}else{d=i+1|0;if(d>>>0>1073741823)vd();e=pOb(d<<2)|0;if(h){g=1;d=f[a>>2]|0;h=15;break}else{WDb(e,a,(g&255)+1|0)|0;c=a+4|0;h=17;break}}while(0);if((h|0)==15){c=a+4|0;WDb(e,d,(f[c>>2]|0)+1|0)|0;sOb(d);if(g){d=i+1|0;h=17}else h=18}if((h|0)==17){f[l>>2]=d|-2147483648;f[c>>2]=k;f[a>>2]=e;break}else if((h|0)==18){b[j>>0]=k;break}}while(0);return}function SOb(a,b){a=a|0;b=b|0;return OOb(a,b,GIb(b)|0)|0}function TOb(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0;if((1073741807-c|0)>>>0>>0)vOb(a);m=a+8|0;if((b[m+3>>0]|0)<0)l=f[a>>2]|0;else l=a;if(c>>>0<536870887){d=d+c|0;j=c<<1;d=d>>>0>>0?j:d;d=d>>>0<2?2:d+4&-4;if(d>>>0>1073741823)vd();else k=d}else k=1073741807;j=pOb(k<<2)|0;if(g|0)WDb(j,l,g)|0;d=e-h-g|0;if(d|0)WDb(j+(g<<2)+(i<<2)|0,l+(g<<2)+(h<<2)|0,d)|0;if((c|0)!=1)sOb(l);f[a>>2]=j;f[m>>2]=k|-2147483648;return}function UOb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;g=a+8|0;k=g+3|0;e=b[k>>0]|0;i=e<<24>>24<0;if(i){h=f[a+4>>2]|0;e=(f[g>>2]&2147483647)+-1|0}else{h=e&255;e=1}if((e-h|0)>>>0>>0)QOb(a,e,d-e+h|0,h,h,0,d,c);else if(d|0){if(i)g=f[a>>2]|0;else g=a;WDb(g+(h<<2)|0,c,d)|0;e=h+d|0;if((b[k>>0]|0)<0)f[a+4>>2]=e;else b[k>>0]=e;f[j>>2]=0;JFb(g+(e<<2)|0,j)}u=l;return a|0}function VOb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;j=k+4|0;f[i>>2]=c;d=a+8|0;h=d+3|0;c=b[h>>0]|0;e=c<<24>>24<0;if(e){g=f[a+4>>2]|0;c=(f[d>>2]&2147483647)+-1|0}else{g=c&255;c=1}if((g|0)==(c|0)){TOb(a,c,1,c,c,0,0);if((b[h>>0]|0)<0)d=8;else d=7}else if(e)d=8;else d=7;if((d|0)==7){b[h>>0]=g+1;c=a}else if((d|0)==8){c=f[a>>2]|0;f[a+4>>2]=g+1}a=c+(g<<2)|0;JFb(a,i);f[j>>2]=0;JFb(a+4|0,j);u=k;return}function WOb(a){a=a|0;var b=0;b=u;u=u+16|0;YOb(b,a,255192);_Ob(b)}function XOb(a){a=a|0;var b=0;b=u;u=u+16|0;YOb(b,a,255172);ZOb(b)}function YOb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[a+(e<<2)>>2]=0;e=e+1|0}e=c+11|0;g=b[e>>0]|0;g=g<<24>>24<0?f[c+4>>2]|0:g&255;h=qEb(d)|0;c=(b[e>>0]|0)<0?f[c>>2]|0:c;e=g+h|0;if(e>>>0>4294967279)vOb(a);if(e>>>0<11){b[a+11>>0]=g;e=a}else{k=e+16&-16;e=pOb(k)|0;f[a>>2]=e;f[a+8>>2]=k|-2147483648;f[a+4>>2]=g}EDb(e,c,g)|0;b[i>>0]=0;rEb(e+g|0,i);JOb(a,d,h)|0;u=j;return}function ZOb(a){a=a|0;var c=0,d=0;c=u;u=u+16|0;d=f[10768]|0;f[c>>2]=(b[a+11>>0]|0)<0?f[a>>2]|0:a;fCb(d,255188,c)|0;vd()}function _Ob(a){a=a|0;var c=0,d=0;c=u;u=u+16|0;d=f[10768]|0;f[c>>2]=(b[a+11>>0]|0)<0?f[a>>2]|0:a;fCb(d,255188,c)|0;vd()}function $Ob(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j+12|0;h=j;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;i=qEb(255207)|0;if(i>>>0>4294967279)vOb(h);if(i>>>0<11){b[h+11>>0]=i;e=h}else{k=i+16&-16;e=pOb(k)|0;f[h>>2]=e;f[h+8>>2]=k|-2147483648;f[h+4>>2]=i}EDb(e,255207,i)|0;b[g>>0]=0;rEb(e+i|0,g);k=aPb(h,a,c,d)|0;zOb(h);u=j;return k|0}function aPb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return bPb(a,b,c,d)|0}function bPb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;g=i;f[g>>2]=0;h=(b[c+11>>0]|0)<0?f[c>>2]|0:c;k=hAb()|0;k=f[k>>2]|0;j=hAb()|0;f[j>>2]=0;e=vAb(h,g,e)|0;j=hAb()|0;c=f[j>>2]|0;f[j>>2]=k;if((c|0)==34)WOb(a);c=f[g>>2]|0;if((c|0)==(h|0))XOb(a);if(d|0)f[d>>2]=c-h;u=i;return e|0}function cPb(a,b){a=a|0;b=b|0;vd()}function dPb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;d=u;u=u+16|0;c=d;b=a;a=f[b>>2]|0;b=f[b+4>>2]|0;if((b|0)>0|(b|0)==0&a>>>0>0){g=XPb(a|0,b|0,1e9,0)|0;e=b>>>0<499999999|(b|0)==499999999&a>>>0<3294967296;h=WPb(g|0,I|0,-1e9,-1)|0;b=QPb(a|0,b|0,h|0,I|0)|0;f[c>>2]=e?g:2147483647;f[c+4>>2]=e?b:999999999;do{if((zf(c|0,c|0)|0)!=-1)break;h=hAb()|0}while((f[h>>2]|0)==4)}u=d;return}function ePb(a){a=a|0;return}function fPb(a){a=a|0;ePb(a);sOb(a);return}function gPb(a){a=a|0;return}function hPb(a){a=a|0;return}function iPb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+64|0;g=h;if(mPb(a,b,0)|0)b=1;else if(!b)b=0;else{b=qPb(b,17584,17568,0)|0;if(!b)b=0;else{d=g+4|0;e=d+52|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));f[g>>2]=b;f[g+8>>2]=a;f[g+12>>2]=-1;f[g+48>>2]=1;Fh[f[(f[b>>2]|0)+28>>2]&255](b,g,f[c>>2]|0,1);if((f[g+24>>2]|0)==1){f[c>>2]=f[g+16>>2];b=1}else b=0}}u=h;return b|0}function jPb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(mPb(a,f[b+8>>2]|0,g)|0)pPb(0,b,c,d,e);return}function kPb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;do if(mPb(a,f[c+8>>2]|0,g)|0)oPb(0,c,d,e);else if(mPb(a,f[c>>2]|0,g)|0){if((f[c+16>>2]|0)!=(d|0)){a=c+20|0;if((f[a>>2]|0)!=(d|0)){f[c+32>>2]=e;f[a>>2]=d;e=c+40|0;f[e>>2]=(f[e>>2]|0)+1;if((f[c+36>>2]|0)==1)if((f[c+24>>2]|0)==2)b[c+54>>0]=1;f[c+44>>2]=4;break}}if((e|0)==1)f[c+32>>2]=1}while(0);return}function lPb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(mPb(a,f[b+8>>2]|0,0)|0)nPb(0,b,c,d);return}function mPb(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function nPb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;a=c+16|0;g=f[a>>2]|0;do if(!g){f[a>>2]=d;f[c+24>>2]=e;f[c+36>>2]=1}else{if((g|0)!=(d|0)){e=c+36|0;f[e>>2]=(f[e>>2]|0)+1;f[c+24>>2]=2;b[c+54>>0]=1;break}a=c+24|0;if((f[a>>2]|0)==2)f[a>>2]=e}while(0);return}function oPb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((f[b+4>>2]|0)==(c|0)){a=b+28|0;if((f[a>>2]|0)!=1)f[a>>2]=d}return}function pPb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;b[c+53>>0]=1;do if((f[c+4>>2]|0)==(e|0)){b[c+52>>0]=1;a=c+16|0;e=f[a>>2]|0;if(!e){f[a>>2]=d;f[c+24>>2]=g;f[c+36>>2]=1;if(!((g|0)==1?(f[c+48>>2]|0)==1:0))break;b[c+54>>0]=1;break}if((e|0)!=(d|0)){g=c+36|0;f[g>>2]=(f[g>>2]|0)+1;b[c+54>>0]=1;break}e=c+24|0;a=f[e>>2]|0;if((a|0)==2){f[e>>2]=g;a=g}if((a|0)==1?(f[c+48>>2]|0)==1:0)b[c+54>>0]=1}while(0);return}function qPb(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+64|0;n=p;m=f[a>>2]|0;o=a+(f[m+-8>>2]|0)|0;m=f[m+-4>>2]|0;f[n>>2]=e;f[n+4>>2]=a;f[n+8>>2]=c;f[n+12>>2]=g;a=n+16|0;c=n+20|0;g=n+24|0;h=n+28|0;i=n+32|0;j=n+40|0;k=a;l=k+36|0;do{f[k>>2]=0;k=k+4|0}while((k|0)<(l|0));d[a+36>>1]=0;b[a+38>>0]=0;a:do if(mPb(m,e,0)|0){f[n+48>>2]=1;Th[f[(f[m>>2]|0)+20>>2]&127](m,n,o,o,1,0);a=(f[g>>2]|0)==1?o:0}else{Lh[f[(f[m>>2]|0)+24>>2]&255](m,n,o,1,0);switch(f[n+36>>2]|0){case 0:{a=(f[j>>2]|0)==1&(f[h>>2]|0)==1&(f[i>>2]|0)==1?f[c>>2]|0:0;break a}case 1:break;default:{a=0;break a}}if((f[g>>2]|0)!=1)if(!((f[j>>2]|0)==0&(f[h>>2]|0)==1&(f[i>>2]|0)==1)){a=0;break}a=f[a>>2]|0}while(0);u=p;return a|0}function rPb(a){a=a|0;ePb(a);sOb(a);return}function sPb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(mPb(a,f[b+8>>2]|0,g)|0)pPb(0,b,c,d,e);else{a=f[a+8>>2]|0;Th[f[(f[a>>2]|0)+20>>2]&127](a,b,c,d,e,g)}return}function tPb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;do if(mPb(a,f[c+8>>2]|0,g)|0)oPb(0,c,d,e);else{if(!(mPb(a,f[c>>2]|0,g)|0)){j=f[a+8>>2]|0;Lh[f[(f[j>>2]|0)+24>>2]&255](j,c,d,e,g);break}if((f[c+16>>2]|0)!=(d|0)){h=c+20|0;if((f[h>>2]|0)!=(d|0)){f[c+32>>2]=e;i=c+44|0;if((f[i>>2]|0)==4)break;e=c+52|0;b[e>>0]=0;k=c+53|0;b[k>>0]=0;a=f[a+8>>2]|0;Th[f[(f[a>>2]|0)+20>>2]&127](a,c,d,d,1,g);if(!(b[k>>0]|0)){e=4;j=11}else if(!(b[e>>0]|0)){e=3;j=11}else e=3;if((j|0)==11){f[h>>2]=d;k=c+40|0;f[k>>2]=(f[k>>2]|0)+1;if((f[c+36>>2]|0)==1)if((f[c+24>>2]|0)==2)b[c+54>>0]=1}f[i>>2]=e;break}}if((e|0)==1)f[c+32>>2]=1}while(0);return}function uPb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(mPb(a,f[b+8>>2]|0,0)|0)nPb(0,b,c,d);else{a=f[a+8>>2]|0;Fh[f[(f[a>>2]|0)+28>>2]&255](a,b,c,d)}return}function vPb(a){a=a|0;return}function wPb(a){a=a|0;ePb(a);sOb(a);return}function xPb(a,b,c){a=a|0;b=b|0;c=c|0;return mPb(a,b,0)|0}function yPb(a){a=a|0;ePb(a);sOb(a);return}function zPb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+64|0;g=h;f[c>>2]=f[f[c>>2]>>2];if(APb(a,b,0)|0)b=1;else if(!b)b=0;else{d=qPb(b,17584,17640,0)|0;if(!d)b=0;else if(!(f[d+8>>2]&~f[a+8>>2])){b=a+12|0;a=d+12|0;if(mPb(f[b>>2]|0,f[a>>2]|0,0)|0)b=1;else if(mPb(f[b>>2]|0,17672,0)|0)b=1;else{b=f[b>>2]|0;if(!b)b=0;else{e=qPb(b,17584,17568,0)|0;if(!e)b=0;else{b=f[a>>2]|0;if(!b)b=0;else{b=qPb(b,17584,17568,0)|0;if(!b)b=0;else{a=g+4|0;d=a+52|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(d|0));f[g>>2]=b;f[g+8>>2]=e;f[g+12>>2]=-1;f[g+48>>2]=1;Fh[f[(f[b>>2]|0)+28>>2]&255](b,g,f[c>>2]|0,1);if((f[g+24>>2]|0)==1){f[c>>2]=f[g+16>>2];b=1}else b=0}}}}}}else b=0}u=h;return b|0}function APb(a,b,c){a=a|0;b=b|0;c=c|0;if(mPb(a,b,0)|0)a=1;else a=mPb(b,17680,0)|0;return a|0}function BPb(a){a=a|0;ePb(a);sOb(a);return}function CPb(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function DPb(a){a=a|0;ePb(a);sOb(a);return}function EPb(a,b,c){a=a|0;b=b|0;c=c|0;return mPb(a,b,0)|0}function FPb(a){a=a|0;ePb(a);sOb(a);return}function GPb(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(mPb(a,f[c+8>>2]|0,h)|0)pPb(0,c,d,e,g);else{p=c+52|0;i=b[p>>0]|0;j=c+53|0;k=b[j>>0]|0;o=f[a+12>>2]|0;l=a+16+(o<<3)|0;b[p>>0]=0;b[j>>0]=0;KPb(a+16|0,c,d,e,g,h);a:do if((o|0)>1){m=c+24|0;n=a+8|0;o=c+54|0;a=a+24|0;do{if(b[o>>0]|0)break a;if(!(b[p>>0]|0)){if(b[j>>0]|0)if(!(f[n>>2]&1))break a}else{if((f[m>>2]|0)==1)break a;if(!(f[n>>2]&2))break a}b[p>>0]=0;b[j>>0]=0;KPb(a,c,d,e,g,h);a=a+8|0}while(a>>>0>>0)}while(0);b[p>>0]=i;b[j>>0]=k}return}function HPb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(mPb(a,f[c+8>>2]|0,g)|0)oPb(0,c,d,e);else{if(!(mPb(a,f[c>>2]|0,g)|0)){q=f[a+12>>2]|0;k=a+16+(q<<3)|0;LPb(a+16|0,c,d,e,g);h=a+24|0;if((q|0)<=1)break;a=f[a+8>>2]|0;if(!(a&2)){j=c+36|0;if((f[j>>2]|0)!=1){if(!(a&1)){a=c+54|0;while(1){if(b[a>>0]|0)break a;if((f[j>>2]|0)==1)break a;LPb(h,c,d,e,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}a=c+24|0;i=c+54|0;while(1){if(b[i>>0]|0)break a;if((f[j>>2]|0)==1)if((f[a>>2]|0)==1)break a;LPb(h,c,d,e,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}}a=c+54|0;while(1){if(b[a>>0]|0)break a;LPb(h,c,d,e,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((f[c+16>>2]|0)!=(d|0)){p=c+20|0;if((f[p>>2]|0)!=(d|0)){f[c+32>>2]=e;q=c+44|0;if((f[q>>2]|0)==4)break;k=a+16+(f[a+12>>2]<<3)|0;e=c+52|0;l=c+53|0;n=c+54|0;m=a+8|0;o=c+24|0;h=0;i=a+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){a=18;break}b[e>>0]=0;b[l>>0]=0;KPb(i,c,d,d,1,g);if(b[n>>0]|0){a=18;break}do if(!(b[l>>0]|0))a=j;else{if(!(b[e>>0]|0))if(!(f[m>>2]&1)){h=1;a=18;break b}else{h=1;a=j;break}if((f[o>>2]|0)==1){a=23;break b}if(!(f[m>>2]&2)){a=23;break b}else{h=1;a=1}}while(0);i=i+8|0;j=a}do if((a|0)==18){if(!j){f[p>>2]=d;d=c+40|0;f[d>>2]=(f[d>>2]|0)+1;if((f[c+36>>2]|0)==1)if((f[o>>2]|0)==2){b[n>>0]=1;if(h){a=23;break}else{h=4;break}}}if(h)a=23;else h=4}while(0);if((a|0)==23)h=3;f[q>>2]=h;break}}if((e|0)==1)f[c+32>>2]=1}while(0);return}function IPb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;a:do if(mPb(a,f[c+8>>2]|0,0)|0)nPb(0,c,d,e);else{h=f[a+12>>2]|0;g=a+16+(h<<3)|0;JPb(a+16|0,c,d,e);if((h|0)>1){h=c+54|0;a=a+24|0;do{JPb(a,c,d,e);if(b[h>>0]|0)break a;a=a+8|0}while(a>>>0>>0)}}while(0);return}function JPb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=f[a+4>>2]|0;e=g>>8;if(g&1)e=f[(f[c>>2]|0)+e>>2]|0;a=f[a>>2]|0;Fh[f[(f[a>>2]|0)+28>>2]&255](a,b,c+e|0,g&2|0?d:2);return}function KPb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=f[a+4>>2]|0;h=i>>8;if(i&1)h=f[(f[d>>2]|0)+h>>2]|0;a=f[a>>2]|0;Th[f[(f[a>>2]|0)+20>>2]&127](a,b,c,d+h|0,i&2|0?e:2,g);return}function LPb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;h=f[a+4>>2]|0;g=h>>8;if(h&1)g=f[(f[c>>2]|0)+g>>2]|0;a=f[a>>2]|0;Lh[f[(f[a>>2]|0)+24>>2]&255](a,b,c+g|0,h&2|0?d:2,e);return}function MPb(a){a=a|0;if((b[a>>0]|0)==1)a=0;else{b[a>>0]=1;a=1}return a|0}function NPb(a){a=a|0;return}function OPb(){var a=0;a=f[65703]|0;f[65703]=a+0;return a|0}function PPb(){}function QPb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (I=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function RPb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (I=d,a-c>>>0|0)|0}function SPb(a){a=a|0;var c=0;c=b[w+(a&255)>>0]|0;if((c|0)<8)return c|0;c=b[w+(a>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=b[w+(a>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (b[w+(a>>>24)>>0]|0)+24|0}function TPb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=c;n=d;i=n;if(!k){g=(e|0)!=0;if(!i){if(g){f[e>>2]=(l>>>0)%(h>>>0);f[e+4>>2]=0}n=0;e=(l>>>0)/(h>>>0)>>>0;return (I=n,e)|0}else{if(!g){n=0;e=0;return (I=n,e)|0}f[e>>2]=a|0;f[e+4>>2]=b&0;n=0;e=0;return (I=n,e)|0}}g=(i|0)==0;do if(!h){if(g){if(e|0){f[e>>2]=(k>>>0)%(h>>>0);f[e+4>>2]=0}n=0;e=(k>>>0)/(h>>>0)>>>0;return (I=n,e)|0}if(!l){if(e|0){f[e>>2]=0;f[e+4>>2]=(k>>>0)%(i>>>0)}n=0;e=(k>>>0)/(i>>>0)>>>0;return (I=n,e)|0}g=i-1|0;if(!(g&i)){if(e|0){f[e>>2]=a|0;f[e+4>>2]=g&k|b&0}n=0;e=k>>>((SPb(i|0)|0)>>>0);return (I=n,e)|0}g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;n=0;e=0;return (I=n,e)|0}else{if(!g){g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;n=0;e=0;return (I=n,e)|0}g=h-1|0;if(g&h|0){i=(_(h|0)|0)+33-(_(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(e|0){f[e>>2]=g&l;f[e+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (I=o,p)|0}else{p=SPb(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (I=o,p)|0}}while(0);if(!h){k=i;j=0;i=0}else{m=c|0|0;l=n|d&0;k=QPb(m|0,l|0,-1,-1)|0;c=I;j=i;i=0;do{d=j;j=g>>>31|j<<1;g=i|g<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;RPb(k|0,c|0,d|0,n|0)|0;p=I;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=RPb(d|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=I;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(e|0){f[e>>2]=a;f[e+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (I=o,p)|0}function UPb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=RPb(j^a|0,i^b|0,j|0,i|0)|0;g=I;a=f^j;b=e^i;return RPb((TPb(h,g,RPb(f^c|0,e^d|0,f|0,e|0)|0,I,0)|0)^a|0,I^b|0,a|0,b|0)|0}function VPb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=X(e,f)|0;d=a>>>16;a=(c>>>16)+(X(e,d)|0)|0;e=b>>>16;b=X(e,f)|0;return (I=(a>>>16)+(X(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function WPb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=VPb(e,f)|0;a=I;return (I=(X(b,f)|0)+(X(d,e)|0)+a|a&0,c|0|0)|0}function XPb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return TPb(a,b,c,d,0)|0}function YPb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+16|0;e=g|0;TPb(a,b,c,d,e)|0;u=g;return (I=f[e+4>>2]|0,f[e>>2]|0)|0}function ZPb(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>>c;return a>>>c|(b&(1<>>c-32|0}function _Pb(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b<>>32-c;return a<>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function aQb(a){a=+a;return a>=0.0?+J(a+.5):+W(a-.5)}function bQb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)>=8192)return Dd(a|0,c|0,d|0)|0;h=a|0;g=a+d|0;if((a&3)==(c&3)){while(a&3){if(!d)return h|0;b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0;d=d-1|0}d=g&-4|0;e=d-64|0;while((a|0)<=(e|0)){f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[a+16>>2]=f[c+16>>2];f[a+20>>2]=f[c+20>>2];f[a+24>>2]=f[c+24>>2];f[a+28>>2]=f[c+28>>2];f[a+32>>2]=f[c+32>>2];f[a+36>>2]=f[c+36>>2];f[a+40>>2]=f[c+40>>2];f[a+44>>2]=f[c+44>>2];f[a+48>>2]=f[c+48>>2];f[a+52>>2]=f[c+52>>2];f[a+56>>2]=f[c+56>>2];f[a+60>>2]=f[c+60>>2];a=a+64|0;c=c+64|0}while((a|0)<(d|0)){f[a>>2]=f[c>>2];a=a+4|0;c=c+4|0}}else{d=g-4|0;while((a|0)<(d|0)){b[a>>0]=b[c>>0]|0;b[a+1>>0]=b[c+1>>0]|0;b[a+2>>0]=b[c+2>>0]|0;b[a+3>>0]=b[c+3>>0]|0;a=a+4|0;c=c+4|0}}while((a|0)<(g|0)){b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0}return h|0}function cQb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((c|0)<(a|0)&(a|0)<(c+d|0)){e=a;c=c+d|0;a=a+d|0;while((d|0)>0){a=a-1|0;c=c-1|0;d=d-1|0;b[a>>0]=b[c>>0]|0}a=e}else bQb(a,c,d)|0;return a|0}function dQb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=a+d|0;c=c&255;if((d|0)>=67){while(a&3){b[a>>0]=c;a=a+1|0}e=h&-4|0;g=e-64|0;i=c|c<<8|c<<16|c<<24;while((a|0)<=(g|0)){f[a>>2]=i;f[a+4>>2]=i;f[a+8>>2]=i;f[a+12>>2]=i;f[a+16>>2]=i;f[a+20>>2]=i;f[a+24>>2]=i;f[a+28>>2]=i;f[a+32>>2]=i;f[a+36>>2]=i;f[a+40>>2]=i;f[a+44>>2]=i;f[a+48>>2]=i;f[a+52>>2]=i;f[a+56>>2]=i;f[a+60>>2]=i;a=a+64|0}while((a|0)<(e|0)){f[a>>2]=i;a=a+4|0}}while((a|0)<(h|0)){b[a>>0]=c;a=a+1|0}return h-d|0}function eQb(a){a=a|0;return 0}function fQb(a){a=a|0;return 0}function gQb(a){a=a|0;return 0}function hQb(a){a=+a;return a>=0.0?+J(a+.5):+W(a-.5)}function iQb(a){a=+a;return a>=0.0?+J(a+.5):+W(a-.5)}function jQb(a){a=a|0;var b=0,c=0;c=f[r>>2]|0;b=c+a|0;if((a|0)>0&(b|0)<(c|0)|(b|0)<0){da()|0;yc(12);return -1}f[r>>2]=b;if((b|0)>(ca()|0))if(!(ba()|0)){f[r>>2]=c;yc(12);return -1}return c|0}function kQb(a,b){a=a|0;b=b|0;return +Mg[a&63](b|0)}function lQb(a,b,c){a=a|0;b=b|0;c=c|0;return +Ng[a&31](b|0,c|0)}function mQb(a){a=a|0;return Og[a&63]()|0}function nQb(a,b){a=a|0;b=b|0;return Pg[a&1023](b|0)|0}function oQb(a,b,c){a=a|0;b=b|0;c=+c;return Qg[a&15](b|0,+c)|0}function pQb(a,b,c){a=a|0;b=b|0;c=c|0;return Rg[a&255](b|0,c|0)|0}function qQb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Sg[a&255](b|0,c|0,d|0)|0}function rQb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Tg[a&15](b|0,c|0,d|0,e|0)|0}function sQb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;return Ug[a&7](b|0,c|0,d|0,e|0,+f)|0}function tQb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Vg[a&31](b|0,c|0,d|0,e|0,f|0)|0}function uQb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;return Wg[a&3](b|0,c|0,d|0,e|0,f|0,+g)|0}function vQb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;return Xg[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0)|0}function wQb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return Yg[a&63](b|0,c|0,d|0,e|0,f|0,g|0)|0}function xQb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return Zg[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function yQb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return _g[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function zQb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=+p;return $g[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,o|0,+p)|0}function AQb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=+q;return ah[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,o|0,p|0,+q)|0}function BQb(a){a=a|0;bh[a&63]()}function CQb(a,b){a=a|0;b=+b;ch[a&127](+b)}function DQb(a,b,c){a=a|0;b=+b;c=+c;dh[a&7](+b,+c)}function EQb(a,b,c,d){a=a|0;b=+b;c=+c;d=d|0;eh[a&3](+b,+c,d|0)}function FQb(a,b,c){a=a|0;b=+b;c=c|0;fh[a&7](+b,c|0)}function GQb(a,b){a=a|0;b=b|0;gh[a&2047](b|0)}function HQb(a,b,c){a=a|0;b=b|0;c=+c;hh[a&63](b|0,+c)}function IQb(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;ih[a&15](b|0,+c,+d)}function JQb(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=+d;e=+e;jh[a&1](b|0,+c,+d,+e)}function KQb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=f|0;g=g|0;h=h|0;kh[a&3](b|0,+c,+d,+e,f|0,g|0,h|0)}function LQb(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=+d;e=e|0;lh[a&1](b|0,+c,+d,e|0)}function MQb(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;mh[a&7](b|0,+c,d|0)}function NQb(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;nh[a&3](b|0,+c,d|0,e|0,f|0)}function OQb(a,b,c){a=a|0;b=b|0;c=c|0;oh[a&1023](b|0,c|0)}function PQb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;ph[a&31](b|0,c|0,+d)}function QQb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;qh[a&7](b|0,c|0,+d,+e)}function RQb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;rh[a&1](b|0,c|0,+d,+e,+f)}function SQb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;sh[a&3](b|0,c|0,+d,+e,f|0)}function TQb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;th[a&1](b|0,c|0,+d,e|0)}function UQb(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=+f;g=g|0;h=+h;i=i|0;j=+j;k=k|0;uh[a&3](b|0,c|0,+d,e|0,+f,g|0,+h,i|0,+j,k|0)}function VQb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;vh[a&3](b|0,c|0,+d,e|0,f|0)}function WQb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;g=g|0;wh[a&1](b|0,c|0,+d,e|0,f|0,g|0)}function XQb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;xh[a&127](b|0,c|0,d|0)}function YQb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;yh[a&1](b|0,c|0,d|0,+e)}function ZQb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;zh[a&3](b|0,c|0,d|0,+e,+f)}function _Qb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=+h;i=i|0;Ah[a&3](b|0,c|0,d|0,+e,+f,+g,+h,i|0)}function $Qb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=g|0;Bh[a&1](b|0,c|0,d|0,+e,+f,g|0)}function aRb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;Ch[a&3](b|0,c|0,d|0,+e,f|0)}function bRb(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=+g;h=h|0;i=+i;j=j|0;k=+k;l=l|0;Dh[a&1](b|0,c|0,d|0,+e,f|0,+g,h|0,+i,j|0,+k,l|0)}function cRb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;Eh[a&1](b|0,c|0,d|0,+e,f|0,g|0)}function dRb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Fh[a&255](b|0,c|0,d|0,e|0)}function eRb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Gh[a&3](b|0,c|0,d|0,e|0,+f)}function fRb(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;i=i|0;j=j|0;k=k|0;l=l|0;Hh[a&3](b|0,c|0,d|0,e|0,+f,+g,+h,i|0,j|0,k|0,l|0)}function gRb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;Ih[a&7](b|0,c|0,d|0,e|0,+f,g|0)}function hRb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;Jh[a&3](b|0,c|0,d|0,e|0,+f,g|0,h|0)}function iRb(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;i=i|0;j=j|0;Kh[a&1](b|0,c|0,d|0,e|0,+f,g|0,h|0,i|0,j|0)}function jRb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Lh[a&255](b|0,c|0,d|0,e|0,f|0)}function kRb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;Mh[a&3](b|0,c|0,d|0,e|0,f|0,+g,+h)}function lRb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=+i;Nh[a&3](b|0,c|0,d|0,e|0,f|0,+g,+h,+i)}function mRb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=i|0;Oh[a&3](b|0,c|0,d|0,e|0,f|0,+g,+h,i|0)}function nRb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;Ph[a&3](b|0,c|0,d|0,e|0,f|0,+g,h|0)}function oRb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=i|0;Qh[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,i|0)}function pRb(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=i|0;j=j|0;Rh[a&3](b|0,c|0,d|0,e|0,f|0,+g,h|0,i|0,j|0)}function qRb(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=i|0;j=j|0;k=k|0;Sh[a&1](b|0,c|0,d|0,e|0,f|0,+g,h|0,i|0,j|0,k|0)}function rRb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Th[a&127](b|0,c|0,d|0,e|0,f|0,g|0)}function sRb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;Uh[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,+i)}function tRb(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=+i;j=+j;Vh[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,+i,+j)}function uRb(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=+h;i=i|0;j=j|0;k=k|0;Wh[a&1](b|0,c|0,d|0,e|0,f|0,g|0,+h,i|0,j|0,k|0)}function vRb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Xh[a&63](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function wRb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;Yh[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function xRb(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Zh[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function yRb(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;_h[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function zRb(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;$h[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0)}function ARb(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;ai[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0)}function BRb(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;bi[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0)}function CRb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=+o;p=+p;q=+q;r=+r;s=+s;t=t|0;ci[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,+o,+p,+q,+r,+s,t|0)}function DRb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;di[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,o|0)}function ERb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;ei[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,o|0,p|0)}function FRb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;fi[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,o|0,p|0,q|0)}function GRb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;gi[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,o|0,p|0,q|0,r|0)}function HRb(a){a=a|0;$(0);return 0.0}function IRb(a,b){a=a|0;b=b|0;$(1);return 0.0}function JRb(){$(2);return 0}function KRb(a){a=a|0;$(3);return 0}function LRb(a,b){a=a|0;b=+b;$(4);return 0}function MRb(a,b){a=a|0;b=b|0;$(5);return 0}function NRb(a,b,c){a=a|0;b=b|0;c=c|0;$(6);return 0}function ORb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;$(7);return 0}function PRb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;$(8);return 0}function QRb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;$(9);return 0}function RRb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;$(10);return 0}function SRb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;$(11);return 0}function TRb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;$(12);return 0}function URb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$(13);return 0}function VRb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;$(14);return 0}function WRb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=+o;$(15);return 0}function XRb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=+p;$(16);return 0}function YRb(){$(17)}function ZRb(){vc()}function _Rb(a){a=+a;$(18)}function $Rb(a,b){a=+a;b=+b;$(19)}function aSb(a,b,c){a=+a;b=+b;c=c|0;$(20)}function bSb(a,b){a=+a;b=b|0;$(21)}function cSb(a){a=a|0;$(22)}function dSb(a,b){a=a|0;b=+b;$(23)}function eSb(a,b,c){a=a|0;b=+b;c=+c;$(24)}function fSb(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;$(25)}function gSb(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=e|0;f=f|0;g=g|0;$(26)}function hSb(a,b,c,d){a=a|0;b=+b;c=+c;d=d|0;$(27)}function iSb(a,b,c){a=a|0;b=+b;c=c|0;$(28)}function jSb(a,b,c,d,e){a=a|0;b=+b;c=c|0;d=d|0;e=e|0;$(29)}function kSb(a,b){a=a|0;b=b|0;$(30)}function lSb(a,b,c){a=a|0;b=b|0;c=+c;$(31)}function mSb(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;$(32)}function nSb(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=+d;e=+e;$(33)}function oSb(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=+d;e=e|0;$(34)}function pSb(a,b,c,d){a=a|0;b=b|0;c=+c;d=d|0;$(35)}function qSb(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=+c;d=d|0;e=+e;f=f|0;g=+g;h=h|0;i=+i;j=j|0;$(36)}function rSb(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;$(37)}function sSb(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;$(38)}function tSb(a,b,c){a=a|0;b=b|0;c=c|0;$(39)}function uSb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;$(40)}function vSb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=+e;$(41)}function wSb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=+f;g=+g;h=h|0;$(42)}function xSb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=+e;f=f|0;$(43)}function ySb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;$(44)}function zSb(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=+f;g=g|0;h=+h;i=i|0;j=+j;k=k|0;$(45)}function ASb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=+d;e=e|0;f=f|0;$(46)}function BSb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;$(47)}function CSb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;$(48)}function DSb(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=+f;g=+g;h=h|0;i=i|0;j=j|0;k=k|0;$(49)}function ESb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;$(50)}function FSb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;$(51)}function GSb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;$(52)}function HSb(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;$(53)}function ISb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;$(54)}function JSb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=+h;$(55)}function KSb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=+g;h=h|0;$(56)}function LSb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;$(57)}function MSb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;$(58)}function NSb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;i=i|0;$(59)}function OSb(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;g=g|0;h=h|0;i=i|0;j=j|0;$(60)}function PSb(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;$(61)}function QSb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;$(62)}function RSb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=+h;i=+i;$(63)}function SSb(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;h=h|0;i=i|0;j=j|0;$(64)}function TSb(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;$(65)}function USb(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;$(66)}function VSb(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;$(67)}function WSb(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;$(68)}function XSb(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;$(69)}function YSb(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;$(70)}function ZSb(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;$(71)}function _Sb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=+n;o=+o;p=+p;q=+q;r=+r;s=s|0;$(72)}function $Sb(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;$(73)}function aTb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;$(74)}function bTb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;$(75)}function cTb(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;$(76)} // EMSCRIPTEN_END_FUNCS var Mg=[HRb,Wcb,Xcb,Ycb,Fcb,Hcb,qi,si,ui,wi,yi,Ai,Ci,Ei,Gi,Ii,Ki,Mi,Oi,Qi,Si,Ui,Wi,Yi,_i,aj,cj,ej,gj,ij,kj,mj,oj,qj,sj,uj,wj,yj,Aj,Cj,Ej,Gj,tl,vl,wl,HRb,HRb,HRb,HRb,HRb,HRb,HRb,HRb,HRb,HRb,HRb,HRb,HRb,HRb,HRb,HRb,HRb,HRb,HRb];var Ng=[IRb,uYa,UVa,$jb,akb,tkb,ukb,alb,olb,Blb,w2,A2,E2,I2,M2,Q2,U2,Y2,G4,O4,S4,a5,e5,t5,IRb,IRb,IRb,IRb,IRb,IRb,IRb,IRb];var Og=[JRb,u2,y2,C2,G2,K2,O2,S2,W2,_2,c3,g3,k3,o3,s3,w3,A3,E3,I3,M3,Q3,U3,Y3,a4,e4,i4,m4,q4,s4,w4,A4,E4,I4,M4,Q4,U4,Y4,c5,Jl,_la,$la,psa,Fha,ksa,Hr,JRb,JRb,JRb,JRb,JRb,JRb,JRb,JRb,JRb,JRb,JRb,JRb,JRb,JRb,JRb,JRb,JRb,JRb,JRb];var Pg=[KRb,Gz,Mz,Qz,Uz,_z,cA,gA,mA,qA,uA,AA,EA,IA,OA,TA,WA,$A,fB,kB,qB,xB,DB,IB,QB,WB,$B,fC,iC,lC,rC,xC,CC,HC,NC,TC,YC,bD,hD,nD,rD,wD,CD,ID,MD,RD,XD,bE,fE,kE,qE,wE,BE,FE,LE,RE,WE,_E,eF,kF,pF,uF,BF,HF,MF,QF,WF,aG,fG,jG,qG,wG,AG,FG,LG,RG,WG,_G,eH,kH,pH,tH,zH,FH,KH,OH,UH,_H,cI,hI,nI,tI,yI,GI,MI,RI,WI,aJ,gJ,lJ,tJ,zJ,EJ,JJ,OJ,UJ,ZJ,fK,lK,qK,vK,AK,GK,KK,OK,UK,ZK,fL,lL,pL,tL,zL,EL,LL,RL,WL,bM,hM,mM,sM,wM,CM,IM,NM,UM,_M,dN,kN,qN,vN,CN,IN,MN,RN,XN,aO,hO,mO,rO,wO,CO,IO,MO,QO,WO,_O,cP,iP,mP,qP,wP,AP,EP,KP,PP,WP,aQ,eQ,kQ,qQ,uQ,yQ,EQ,JQ,PQ,TQ,YQ,$Q,eR,kR,oR,sR,yR,CR,GR,MR,QR,UR,_R,dS,jS,pS,xS,DS,IS,OS,SS,WS,aT,eT,iT,oT,tT,zT,DT,HT,NT,RT,VT,$T,eU,kU,oU,sU,yU,DU,JU,NU,RU,XU,bV,hV,lV,pV,vV,zV,DV,JV,NV,RV,XV,aW,gW,lW,rW,vW,zW,FW,KW,QW,UW,YW,cX,gX,kX,qX,vX,BX,GX,MX,RX,XX,aY,gY,kY,oY,uY,zY,FY,JY,NY,TY,XY,$Y,fZ,jZ,nZ,tZ,xZ,BZ,HZ,LZ,PZ,VZ,ZZ,b_,h_,l_,p_,v_,z_,D_,J_,N_,R_,X_,a$,g$,m$,s$,x$,F$,K$,N$,Q$,X$,b0,k0,p0,u0,z0,H0,N0,R0,V0,$0,e1,k1,p1,v1,z1,D1,J1,N1,R1,X1,a2,g2,o2,R5,Y5,d6,j6,t6,X6,f7,n7,u7,B7,H7,O7,U7,$7,g8,r8,g9,E9,L9,R9,X9,baa,yaa,Eaa,Kaa,Saa,Yaa,dba,kba,rba,zba,Mba,Yba,pca,Bca,Hca,Oca,wda,Nda,Yda,xea,Eea,Kea,Nfa,oga,wga,Oga,Uga,tla,zla,lla,rla,cla,ila,Wka,ala,Oka,Uka,Gka,Mka,yka,Eka,qka,wka,ika,oka,$ja,fka,Tja,Zja,Lja,Rja,Dja,Jja,uja,Aja,lja,rja,cja,ija,Via,$ia,Mia,Sia,Dia,Jia,uia,Aia,lia,ria,cia,iia,Nla,Hma,Bma,tma,Jma,Sma,_ma,gna,ona,Wna,voa,epa,pqa,jqa,Ura,Ora,Ata,rva,zva,Lva,Bwa,$wa,bxa,hxa,Txa,Xya,bza,lGa,mGa,nGa,oGa,pGa,qGa,rGa,sGa,tGa,uGa,vGa,wGa,xGa,yGa,zGa,AGa,BGa,CGa,DGa,EGa,FGa,GGa,VGa,WGa,XGa,YGa,dHa,eHa,fHa,gHa,nHa,oHa,pHa,qHa,rHa,sHa,AHa,BHa,CHa,DHa,EHa,FHa,MHa,NHa,JLa,KLa,MLa,NLa,QLa,SLa,TLa,aMa,eMa,gMa,hMa,LSa,hYa,MSa,NSa,QSa,TSa,JTa,KTa,LTa,MTa,EUa,eVa,gVa,rWa,xWa,JWa,QWa,RWa,jXa,_Wa,eXa,uDb,vDb,s3a,yDb,D3a,J3a,S3a,n5a,t5a,L4a,R4a,E6a,K6a,i6a,o6a,a6a,g6a,P5a,V5a,G5a,M5a,zcb,Acb,Vcb,Zcb,Dcb,Sdb,Ydb,Oeb,Ueb,_kb,$kb,mlb,nlb,zlb,Alb,emb,gxb,nxb,dAb,xDb,MDb,NDb,PDb,QDb,_Eb,fFb,mFb,nFb,tFb,uFb,KHb,RHb,SHb,THb,UHb,VHb,WHb,XHb,sIb,zIb,AIb,BIb,CIb,DIb,EIb,FIb,nJb,oJb,tJb,zJb,AJb,FJb,KJb,LJb,QJb,VJb,WJb,$Jb,YKb,ZKb,$Kb,oLb,pLb,rLb,WLb,XLb,bMb,cMb,hLb,iLb,kLb,xLb,yLb,ALb,Ij,Kj,Mj,Oj,Qj,Sj,Uj,Wj,Yj,_j,ak,ck,ek,gk,ik,kk,mk,ok,qk,sk,uk,wk,yk,Ak,Ck,Ek,Gk,Ik,Kk,Mk,Ok,Qk,Sk,Uk,Wk,Yk,_k,al,i5,il,jl,kl,nl,pl,rl,A5,Kl,Cla,G5,K5,Vga,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb,KRb];var Qg=[LRb,JGa,KGa,LGa,OGa,_Ga,$Ga,iHa,vHa,LRb,LRb,LRb,LRb,LRb,LRb,LRb];var Rg=[MRb,Lz,Zz,lA,zA,NA,eB,CB,VB,wC,SC,mD,HD,aE,vE,QE,jF,GF,$F,vG,QG,jH,EH,ZH,sI,LI,fJ,yJ,TJ,kK,FK,TK,kL,yL,QL,gM,HM,ZM,pN,HN,WN,HO,VO,hP,vP,JP,$P,pQ,DQ,OQ,jR,xR,LR,ZR,CS,NS,$S,nT,yT,MT,_T,jU,xU,IU,WU,gV,uV,IV,WV,fW,qW,EW,PW,bX,pX,AX,LX,WX,fY,tY,EY,SY,eZ,sZ,GZ,UZ,g_,u_,I_,W_,f$,r$,M0,_0,j1,u1,I1,W1,f2,yla,qla,hla,$ka,Tka,Lka,Dka,vka,nka,eka,Yja,Qja,Ija,zja,qja,hja,_ia,Ria,Iia,zia,qia,hia,gxa,eza,aza,bOb,IGa,MGa,NGa,PGa,QGa,RGa,SGa,jHa,uHa,wHa,HHa,IHa,JHa,OHa,jKa,RLa,bMa,jMa,hPa,wWa,dXa,t3a,u3a,I3a,Y3a,s5a,Q4a,J6a,n6a,f6a,U5a,L5a,f8a,Jcb,hdb,Xdb,Teb,Zjb,_jb,rkb,skb,blb,clb,dlb,plb,qlb,rlb,Clb,Dlb,Elb,oxb,pxb,zDb,BDb,RDb,TDb,aFb,hFb,oFb,vFb,JLb,LLb,NLb,mMb,oMb,qMb,a3,e3,i3,m3,q3,u3,y3,C3,G3,K3,O3,S3,W3,_3,c4,g4,k4,o4,u4,y4,C4,K4,W4,_4,g5,o5,p5,r5,B5,E5,Jmb,nnb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb,MRb];var Sg=[NRb,Pz,bA,pA,DA,SA,VA,jB,nB,HB,_B,eC,hC,kC,BC,GC,XC,aD,qD,uD,LD,PD,eE,iE,AE,DE,VE,YE,oF,tF,LF,OF,eG,hG,zG,DG,VG,YG,oH,rH,JH,MH,bI,fI,xI,QI,VI,kJ,DJ,IJ,YJ,pK,uK,JK,YK,oL,DL,VL,lM,rM,uM,MM,cN,uN,LN,$N,gO,lO,qO,vO,LO,ZO,lP,zP,OP,dQ,tQ,SQ,XQ,_Q,nR,BR,PR,cS,iS,oS,RS,dT,CT,QT,nU,MU,kV,yV,MV,uW,TW,fX,jY,IY,WY,iZ,wZ,KZ,YZ,k_,y_,M_,w$,E$,J$,M$,P$,W$,a0,j0,o0,t0,y0,Q0,y1,M1,LLa,iMa,HWa,rDb,wDb,ADb,elb,flb,slb,tlb,Flb,Glb,kxb,eAb,fAb,jAb,kAb,uBb,JDb,ODb,SDb,$Eb,gFb,CFb,IFb,MKb,RKb,KLb,MLb,PLb,iMb,nMb,pMb,sMb,iPb,xPb,zPb,CPb,EPb,z5,exb,qCb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb,NRb];var Tg=[ORb,Wdb,Seb,Vlb,OLb,jMb,kMb,lMb,rMb,J5,Pwb,ORb,ORb,ORb,ORb,ORb];var Ug=[PRb,kHb,lHb,BHb,CHb,PRb,PRb,PRb];var Vg=[QRb,vUa,dYa,n2a,AFb,GFb,fHb,gHb,iHb,mHb,wHb,xHb,zHb,DHb,XKb,_Kb,nLb,qLb,QLb,tMb,gLb,jLb,wLb,zLb,QRb,QRb,QRb,QRb,QRb,QRb,QRb,QRb];var Wg=[RRb,yKb,EKb,RRb];var Xg=[SRb,I5];var Yg=[TRb,MFb,NFb,OFb,PFb,QFb,RFb,SFb,TFb,UFb,VFb,WFb,GGb,HGb,IGb,JGb,KGb,LGb,MGb,NGb,OGb,PGb,QGb,hHb,jHb,yHb,AHb,LHb,MHb,NHb,OHb,PHb,tIb,uIb,vIb,wIb,xIb,zKb,FKb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb,TRb];var Zg=[URb,bJb,hJb,eKb,fKb,pKb,qKb,URb];var _g=[VRb,QHb,yIb,VKb,WKb,lLb,mLb,eLb,fLb,uLb,vLb,VRb,VRb,VRb,VRb,VRb];var $g=[WRb,Ola];var ah=[XRb,F5];var bh=[YRb,ZRb,Mha,Ala,Qla,Zl,am,cm,Lm,Nm,Pm,Ym,_m,$m,hp,jp,kp,lp,mp,np,op,Vr,Yr,_r,Hs,Js,Ls,Us,Ws,Xs,ev,gv,hv,iv,jv,kv,lv,Ix,Nha,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb,YRb];var ch=[_Rb,em,cn,dn,fn,gn,jn,ln,mn,wn,yn,zn,Gn,Hn,In,Nn,On,Rn,Sn,eo,oo,to,uo,Co,Do,Eo,Ho,Io,Jo,Oo,Po,Qo,Vo,Yo,as,_s,$s,bt,ct,et,gt,ht,rt,tt,ut,Bt,Ct,Dt,It,Jt,Mt,Nt,_t,iu,nu,ou,wu,xu,yu,Eu,Fu,Gu,Lu,Mu,Nu,Su,Vu,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb,_Rb];var dh=[$Rb,Fn,Mr,At,Fx,$Rb,$Rb,$Rb];var eh=[aSb,Ko,Hu,aSb];var fh=[bSb,wo,Lo,qu,Iu,bSb,bSb,bSb];var gh=[cSb,oG,Fz,Iz,Jz,mS,Oz,Tz,Wz,Xz,aA,fA,iA,jA,oA,tA,wA,xA,CA,HA,KA,LA,QA,RA,UA,_A,bB,cB,hB,iB,lB,mB,pB,wB,zB,AB,FB,GB,JB,KB,PB,SB,TB,YB,ZB,aC,bC,cC,dC,gC,jC,qC,tC,uC,zC,AC,DC,EC,FC,MC,PC,QC,VC,WC,ZC,_C,$C,gD,jD,kD,sD,pD,tD,vD,BD,ED,FD,ND,KD,OD,QD,WD,ZD,_D,gE,dE,hE,jE,pE,sE,tE,yE,zE,CE,EE,KE,NE,OE,TE,UE,XE,ZE,dF,gF,hF,mF,nF,qF,rF,sF,AF,DF,EF,JF,KF,NF,PF,VF,YF,ZF,cG,dG,gG,iG,pG,sG,tG,BG,yG,CG,EG,KG,NG,OG,TG,UG,XG,ZG,dH,gH,hH,mH,nH,qH,sH,yH,BH,CH,HH,IH,LH,NH,TH,WH,XH,dI,aI,eI,gI,mI,pI,qI,vI,wI,zI,AI,FI,II,JI,OI,PI,SI,TI,UI,$I,cJ,dJ,iJ,jJ,mJ,nJ,sJ,vJ,wJ,BJ,CJ,FJ,GJ,HJ,NJ,QJ,RJ,WJ,XJ,_J,$J,eK,hK,iK,nK,oK,rK,sK,tK,zK,CK,DK,IK,NK,QK,RK,WK,XK,_K,$K,eL,hL,iL,nL,sL,vL,wL,BL,CL,FL,GL,KL,NL,OL,TL,UL,XL,YL,aM,dM,eM,jM,kM,nM,oM,pM,qM,tM,vM,BM,EM,FM,KM,LM,OM,PM,TM,WM,XM,aN,bN,eN,fN,jN,mN,nN,sN,tN,wN,xN,BN,EN,FN,KN,QN,TN,UN,ZN,_N,bO,cO,eO,fO,iO,jO,kO,oO,pO,sO,tO,uO,BO,EO,FO,KO,PO,SO,TO,YO,bP,eP,fP,kP,pP,sP,tP,yP,DP,GP,HP,MP,NP,QP,RP,VP,YP,ZP,cQ,jQ,mQ,nQ,sQ,xQ,AQ,BQ,IQ,LQ,MQ,RQ,UQ,WQ,ZQ,dR,gR,hR,mR,rR,uR,vR,AR,FR,IR,JR,OR,TR,WR,XR,aS,bS,eS,fS,gS,hS,kS,lS,nS,wS,zS,AS,HS,KS,LS,QS,VS,YS,ZS,cT,hT,kT,lT,sT,vT,wT,BT,GT,JT,KT,PT,UT,XT,YT,dU,gU,hU,mU,rU,uU,vU,CU,FU,GU,LU,QU,TU,UU,aV,dV,eV,jV,oV,rV,sV,xV,CV,FV,GV,LV,QV,TV,UV,$V,cW,dW,kW,nW,oW,tW,yW,BW,CW,JW,MW,NW,SW,XW,_W,$W,eX,jX,mX,nX,uX,xX,yX,FX,IX,JX,QX,TX,UX,$X,cY,dY,iY,nY,qY,rY,yY,BY,CY,HY,MY,PY,QY,VY,_Y,bZ,cZ,hZ,mZ,pZ,qZ,vZ,AZ,DZ,EZ,JZ,OZ,RZ,SZ,XZ,a_,d_,e_,j_,o_,r_,s_,x_,C_,F_,G_,L_,Q_,T_,U_,$_,c$,d$,l$,o$,p$,u$,v$,y$,z$,C$,D$,G$,H$,I$,L$,O$,U$,V$,Y$,Z$,_$,$$,c0,d0,h0,i0,l0,m0,n0,r0,s0,v0,w0,x0,G0,J0,K0,P0,U0,X0,Y0,d1,g1,h1,o1,r1,s1,x1,C1,F1,G1,L1,Q1,T1,U1,$1,c2,d2,j2,k2,p2,q2,t2,s2,M5,N5,T5,U5,_5,$5,e6,f6,o6,p6,v6,w6,B6,C6,H6,I6,N6,O6,S6,T6,a7,b7,i7,j7,p7,q7,w7,x7,C7,D7,J7,K7,P7,Q7,W7,X7,b8,c8,h8,i8,m8,n8,t8,u8,y8,z8,Y8,Z8,b9,c9,n9,o9,t9,u9,z9,A9,G9,H9,M9,N9,S9,T9,Y9,Z9,caa,daa,haa,iaa,naa,oaa,taa,uaa,zaa,Aaa,Faa,Gaa,Naa,Oaa,Taa,Uaa,_aa,$aa,fba,gba,mba,nba,uba,vba,Bba,Cba,Hba,Iba,Oba,Pba,Tba,Uba,_ba,$ba,eca,fca,kca,lca,rca,sca,wca,xca,Cca,Dca,Jca,Kca,Pca,Qca,Uca,Vca,Zca,_ca,cda,dda,hda,ida,mda,nda,rda,sda,xda,yda,Cda,Dda,Ida,Jda,Oda,Pda,Tda,Uda,_da,$da,dea,eea,iea,jea,nea,oea,sea,tea,zea,Aea,Fea,Gea,Lea,Mea,Qea,Rea,Vea,Wea,_ea,$ea,dfa,efa,ifa,jfa,nfa,ofa,sfa,tfa,yfa,zfa,Dfa,Efa,Ifa,Jfa,Ofa,Pfa,Ufa,Vfa,_fa,$fa,jga,kga,rga,sga,Bga,Cga,Jga,Kga,Pga,Qga,gka,sla,vla,wla,jla,kla,nla,ola,jia,bla,ela,fla,gla,Vka,Yka,Zka,_ka,Nka,Qka,Rka,Ska,Fka,Ika,Jka,Kka,xka,Aka,Bka,pka,ska,tka,hka,kka,lka,_ja,bka,cka,dka,Sja,Vja,Wja,Xja,sia,Kja,Nja,Oja,Bja,Cja,Fja,Gja,sja,tja,wja,xja,jja,kja,nja,oja,aja,bja,eja,fja,Tia,Uia,Xia,Yia,Kia,Lia,Oia,Pia,Bia,Cia,Fia,Gia,tia,wia,xia,kia,nia,oia,pia,aia,bia,eia,fia,_ha,Ila,Jla,Cma,Dma,wma,xma,oma,pma,Ima,Lma,Nma,Oma,Tma,Vma,Wma,$ma,bna,cna,hna,jna,kna,pna,rna,sna,wna,Yna,Zna,doa,foa,goa,koa,toa,$oa,apa,kqa,lqa,eqa,fqa,rqa,sqa,yqa,zqa,Dqa,Fqa,Gqa,Kqa,Lqa,Nqa,Oqa,Vqa,ara,bra,hra,ira,nra,pra,qra,vra,xra,Ara,Dra,Pra,Qra,Jra,Kra,Xra,Yra,bsa,dsa,esa,jsa,rsa,ssa,ysa,Asa,Bsa,Gsa,Isa,Jsa,Nsa,Psa,Qsa,Vsa,Xsa,Ysa,ata,eta,fta,Gta,Hta,Bta,Cta,vta,wta,qta,rta,kta,lta,Ita,Rta,Uta,Xta,$ta,dua,hua,lua,pua,uua,yua,Cua,Gua,Kua,Oua,Sua,Wua,$ua,ava,fva,hva,iva,mva,nva,sva,tva,vva,Gva,Hva,Bva,Cva,Mva,Nva,Rva,Sva,Wva,Xva,Zva,_va,cwa,ewa,iwa,jwa,nwa,qwa,twa,xwa,Ewa,Wwa,Xwa,Rwa,Swa,axa,dxa,exa,fxa,ixa,jxa,zxa,Axa,Exa,Gxa,Oxa,Pxa,Jxa,Kxa,Uxa,tya,uya,zya,Eya,Fya,Kya,Qya,aOb,cza,dza,fza,Vya,Wya,Zya,_ya,$ya,tFa,uFa,vFa,wFa,rFa,sFa,AFa,BFa,CFa,DFa,yFa,zFa,iGa,jGa,TGa,aHa,bHa,kHa,lHa,xHa,yHa,LHa,QHa,RHa,SHa,THa,EIa,FIa,GIa,HIa,VIa,WIa,XIa,YIa,hKa,iKa,kKa,GLa,HLa,OLa,PLa,VLa,WLa,XLa,YLa,_La,$La,cMa,dMa,vMa,wMa,xMa,yMa,BMa,CMa,DMa,EMa,ANa,BNa,CNa,DNa,MNa,NNa,ONa,PNa,ZOa,_Oa,$Oa,aPa,fPa,gPa,iPa,eYa,ISa,JSa,gYa,pYa,PSa,rYa,RSa,XSa,dTa,BTa,FTa,GTa,HTa,NTa,OTa,$Ua,aVa,bVa,fVa,kVa,sVa,QVa,qWa,tWa,uWa,FWa,GWa,MWa,NWa,OWa,UWa,VWa,fXa,gXa,hXa,nXa,vXa,TXa,ZWa,aXa,bXa,F1a,cYa,fYa,qYa,G1a,S2a,T2a,U2a,M2a,N2a,O2a,P2a,_2a,$2a,a3a,b3a,gEb,hEb,iEb,jEb,v3a,w3a,x3a,y3a,o3a,p3a,C3a,F3a,G3a,H3a,O3a,P3a,R3a,V3a,W3a,X3a,J4a,m5a,p5a,q5a,K4a,N4a,O4a,s4a,I4a,G4a,H4a,_5a,D6a,G6a,H6a,N5a,h6a,k6a,l6a,$5a,c6a,d6a,O5a,R5a,S5a,E5a,F5a,I5a,J5a,j8a,k8a,l8a,m8a,ycb,Ucb,fdb,Kcb,Lcb,Mcb,Ncb,Ocb,Pcb,Qcb,Qdb,Rdb,Udb,Vdb,Meb,Neb,Qeb,Reb,crb,Yjb,qkb,Ykb,Zkb,klb,llb,xlb,ylb,Tlb,Ulb,Wlb,Xlb,fmb,gmb,hmb,imb,kob,lob,Spb,Tpb,Upb,Vpb,kqb,lqb,mqb,nqb,Pqb,Qqb,Rqb,Sqb,drb,jub,kub,lub,mub,pub,qub,rub,sub,yub,zub,Aub,Bub,YDb,ZDb,_Db,$Db,Sub,Tub,Uub,Vub,pvb,qvb,rvb,svb,Avb,Bvb,Cvb,Dvb,Vwb,Wwb,Xwb,Ywb,qxb,rxb,sxb,txb,hxb,ixb,uxb,vxb,Bxb,Cxb,kDb,mDb,oDb,pDb,GDb,HDb,bEb,cEb,dEb,eEb,lEb,mEb,nEb,oEb,XEb,YEb,cFb,dFb,jFb,kFb,qFb,rFb,xFb,yFb,zFb,EFb,FFb,KFb,LFb,EGb,FGb,dHb,eHb,uHb,vHb,IHb,JHb,qIb,rIb,$Ib,aJb,fJb,gJb,lJb,mJb,xJb,yJb,IJb,JJb,TJb,UJb,cKb,dKb,nKb,oKb,wKb,xKb,CKb,DKb,KKb,LKb,PKb,QKb,DFb,dLb,UKb,sLb,tLb,ELb,FLb,HLb,ILb,ULb,VLb,$Lb,aMb,gMb,hMb,uMb,vMb,wMb,ePb,fPb,gPb,hPb,rPb,wPb,yPb,BPb,DPb,FPb,Rz,dA,rA,FA,XA,tB,MB,nC,JC,dD,yD,TD,mE,HE,aF,xF,SF,lG,HG,aH,vH,QH,jI,CI,YI,pJ,LJ,bK,wK,LK,aL,qL,HL,ZL,yM,QM,gN,yN,NN,yO,NO,$O,nP,BP,SP,fQ,vQ,GQ,aR,pR,DR,RR,tS,FS,TS,fT,qT,ET,ST,bU,pU,AU,OU,ZU,mV,AV,OV,ZV,iW,wW,HW,VW,hX,sX,DX,OX,ZX,lY,wY,KY,YY,kZ,yZ,MZ,_Z,m_,A_,O_,Z_,i$,D0,S0,b1,m1,A1,O1,Z1,i2,v2,z2,D2,H2,L2,P2,T2,X2,$2,d3,h3,l3,p3,t3,x3,B3,F3,J3,N3,R3,V3,Z3,b4,f4,j4,n4,r4,t4,x4,B4,F4,J4,N4,R4,V4,Z4,d5,j5,k5,cl,fl,Nl,loa,L5,dm,Hm,Rm,bn,en,hn,kn,nn,on,pn,qn,un,xn,An,Cn,En,Jn,Kn,Ln,Mn,Pn,Qn,Tn,Un,Vn,Wn,Xn,Zn,_n,$n,ao,bo,co,fo,go,ho,io,jo,ko,lo,mo,no,po,qo,ro,so,vo,xo,zo,Ao,Bo,Fo,Go,Mo,No,Ro,So,To,Uo,Wo,Xo,_o,$o,ap,ep,Dr,Ir,Wga,$r,Ds,Ns,Zs,at,dt,ft,it,jt,kt,lt,pt,st,vt,xt,zt,Et,Ft,Gt,Ht,Kt,Lt,Ot,Pt,Qt,Rt,St,Ut,Vt,Wt,Xt,Yt,Zt,$t,au,bu,cu,du,eu,fu,gu,hu,ju,ku,lu,mu,pu,ru,tu,uu,vu,zu,Du,Ju,Ku,Ou,Pu,Qu,Ru,Tu,Uu,Xu,Yu,Zu,bv,Ax,Ex,GFa,cGb,eGb,gKb,$zb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb,cSb];var hh=[dSb,eTa,gTa,tVa,vVa,wXa,yXa,adb,bdb,cdb,ddb,Gcb,ri,ti,vi,xi,zi,Bi,Di,Fi,Hi,Ji,Li,Ni,Pi,Ri,Ti,Vi,Xi,Zi,$i,bj,dj,fj,hj,jj,lj,nj,pj,rj,tj,vj,xj,zj,Bj,Dj,Fj,Hj,ul,xl,zl,Dl,El,Z6,vn,U8,dp,qt,av,dSb,dSb,dSb,dSb,dSb];var ih=[eSb,KSa,ITa,PWa,gdb,yl,Al,Cl,Fl,P8,eSb,eSb,eSb,eSb,eSb,eSb];var jh=[fSb,Bl];var kh=[gSb,TTa,L1a,gSb];var lh=[hSb,W8];var mh=[iSb,sn,V8,X8,nt,iSb,iSb,iSb];var nh=[jSb,Yl,Ur,jSb];var oh=[kSb,Hz,Kz,Vz,Yz,hA,kA,vA,yA,JA,MA,aB,dB,yB,BB,RB,UB,sC,vC,OC,RC,iD,lD,DD,GD,YD,$D,rE,uE,ME,PE,fF,iF,CF,FF,XF,_F,rG,uG,MG,PG,fH,iH,AH,DH,VH,YH,oI,rI,HI,KI,bJ,eJ,uJ,xJ,PJ,SJ,gK,jK,BK,EK,PK,SK,gL,jL,uL,xL,ML,PL,cM,fM,DM,GM,VM,YM,lN,oN,DN,GN,SN,VN,DO,GO,RO,UO,dP,gP,rP,uP,FP,IP,XP,_P,lQ,oQ,zQ,CQ,KQ,NQ,fR,iR,tR,wR,HR,KR,VR,YR,yS,BS,JS,MS,XS,_S,jT,mT,uT,xT,IT,LT,WT,ZT,fU,iU,tU,wU,EU,HU,SU,VU,cV,fV,qV,tV,EV,HV,SV,VV,bW,eW,mW,pW,AW,DW,LW,OW,ZW,aX,lX,oX,wX,zX,HX,KX,SX,VX,bY,eY,pY,sY,AY,DY,OY,RY,aZ,dZ,oZ,rZ,CZ,FZ,QZ,TZ,c_,f_,q_,t_,E_,H_,S_,V_,b$,e$,n$,q$,I0,L0,W0,Z0,f1,i1,q1,t1,E1,H1,S1,V1,b2,e2,l2,m2,n2,O5,P5,Q5,V5,W5,X5,a6,b6,c6,g6,h6,i6,q6,r6,s6,x6,y6,z6,D6,E6,F6,J6,K6,L6,P6,Q6,R6,U6,V6,W6,c7,d7,e7,k7,l7,m7,r7,s7,t7,y7,z7,A7,E7,F7,G7,L7,M7,N7,R7,S7,T7,Y7,Z7,_7,d8,e8,f8,j8,k8,l8,o8,p8,q8,v8,w8,x8,A8,B8,C8,_8,$8,a9,d9,e9,f9,p9,q9,r9,v9,w9,x9,B9,C9,D9,I9,J9,K9,O9,P9,Q9,U9,V9,W9,_9,$9,aaa,eaa,faa,gaa,jaa,kaa,laa,paa,qaa,raa,vaa,waa,xaa,Baa,Caa,Daa,Haa,Iaa,Jaa,Paa,Qaa,Raa,Vaa,Waa,Xaa,aba,bba,cba,hba,iba,jba,oba,pba,qba,wba,xba,yba,Dba,Eba,Fba,Jba,Kba,Lba,Qba,Rba,Sba,Vba,Wba,Xba,aca,bca,cca,gca,hca,ica,mca,nca,oca,tca,uca,vca,yca,zca,Aca,Eca,Fca,Gca,Lca,Mca,Nca,Rca,Sca,Tca,Wca,Xca,Yca,$ca,ada,bda,eda,fda,gda,jda,kda,lda,oda,pda,qda,tda,uda,vda,zda,Ada,Bda,Eda,Fda,Gda,Kda,Lda,Mda,Qda,Rda,Sda,Vda,Wda,Xda,aea,bea,cea,fea,gea,hea,kea,lea,mea,pea,qea,rea,uea,vea,wea,Bea,Cea,Dea,Hea,Iea,Jea,Nea,Oea,Pea,Sea,Tea,Uea,Xea,Yea,Zea,afa,bfa,cfa,ffa,gfa,hfa,kfa,lfa,mfa,pfa,qfa,rfa,ufa,vfa,wfa,Afa,Bfa,Cfa,Ffa,Gfa,Hfa,Kfa,Lfa,Mfa,Qfa,Rfa,Sfa,Wfa,Xfa,Yfa,aga,bga,cga,lga,mga,nga,tga,uga,vga,Dga,Ega,Fga,Lga,Mga,Nga,Rga,Sga,Tga,ula,xla,mla,pla,dla,Xka,Pka,Hka,zka,Cka,rka,uka,jka,mka,aka,Uja,Mja,Pja,Eja,vja,mja,dja,Wia,Nia,Eia,via,yia,mia,dia,Kla,Lla,Mla,Ema,Fma,Gma,yma,zma,Ama,qma,rma,sma,Pma,Qma,Rma,Xma,Yma,Zma,dna,ena,fna,lna,mna,nna,tna,una,vna,_na,$na,aoa,hoa,ioa,joa,uoa,bpa,cpa,dpa,mqa,nqa,oqa,gqa,hqa,iqa,tqa,uqa,vqa,Aqa,Bqa,Cqa,Hqa,Iqa,Jqa,Pqa,Qqa,Rqa,Wqa,cra,dra,era,jra,kra,lra,rra,sra,tra,yra,Bra,Era,Rra,Sra,Tra,Lra,Mra,Nra,Zra,_ra,$ra,fsa,gsa,hsa,tsa,usa,vsa,Csa,Dsa,Esa,Ksa,Lsa,Msa,Rsa,Ssa,Tsa,Zsa,_sa,$sa,gta,hta,ita,Dta,Eta,Fta,xta,yta,zta,sta,tta,uta,mta,nta,ota,Sta,Vta,Yta,aua,eua,iua,mua,qua,vua,zua,Dua,Hua,Lua,Pua,Tua,Xua,bva,cva,dva,jva,kva,lva,ova,pva,qva,wva,xva,yva,Iva,Jva,Kva,Dva,Eva,Fva,Tva,Uva,Vva,$va,awa,bwa,fwa,kwa,lwa,mwa,rwa,uwa,ywa,zwa,Awa,Fwa,Ywa,Zwa,_wa,Twa,Uwa,Vwa,cxa,Bxa,Cxa,Dxa,Hxa,Qxa,Rxa,Sxa,Lxa,Mxa,Nxa,vya,wya,xya,Gya,Hya,Iya,Rya,Yya,kGa,HGa,UGa,ZGa,cHa,hHa,mHa,tHa,zHa,GHa,ILa,fMa,sYa,SSa,YSa,$Sa,fTa,hTa,iTa,CTa,DTa,ETa,QTa,CUa,DUa,cVa,lVa,oVa,uVa,wVa,xVa,RVa,SVa,TVa,sWa,vWa,XWa,iXa,oXa,rXa,xXa,zXa,AXa,UXa,VXa,WXa,$Wa,cXa,I1a,u2a,v2a,qDb,E3a,Q3a,T3a,Z3a,o5a,r5a,M4a,P4a,F6a,j6a,b6a,Q5a,H5a,g8a,Bcb,Ccb,_cb,$cb,edb,Ecb,Icb,Tdb,Peb,jxb,IDb,ZEb,eFb,lFb,sFb,pJb,qJb,rJb,sJb,uJb,vJb,BJb,CJb,DJb,EJb,GJb,HJb,MJb,NJb,OJb,PJb,RJb,SJb,XJb,YJb,ZJb,_Jb,aKb,bKb,OKb,TKb,YLb,ZLb,_Lb,dMb,eMb,fMb,Jj,Lj,Nj,Pj,Rj,Tj,Vj,Xj,Zj,$j,bk,dk,fk,hk,jk,lk,nk,pk,rk,tk,vk,xk,zk,Bk,Dk,Fk,Hk,Jk,Lk,Nk,Pk,Rk,Tk,Vk,Xk,Zk,$k,bl,l5,ll,ml,ol,ql,sl,gm,hm,im,jm,km,mm,nm,om,pm,qm,rm,sm,tm,um,vm,wm,xm,ym,zm,Am,Bm,Cm,Dm,Em,Fm,Gm,o7,Mm,G8,H8,I8,rn,tn,Q8,R8,S8,Yn,yo,Zo,bp,pp,rp,vp,yp,Gp,Er,Gr,cs,ds,es,fs,gs,is,js,ks,ls,ms,ns,os,ps,qs,rs,ss,ts,us,vs,ws,xs,ys,zs,As,Bs,Cs,Is,mt,ot,Tt,su,Wu,_u,mv,ov,sv,vv,Dv,Bx,Dx,Ela,Fla,HBa,pWa,YWa,v$a,_3a,c4a,e4a,f4a,h4a,i4a,k4a,m4a,n4a,p4a,u4a,v4a,w4a,y4a,z4a,Rcb,Tcb,onb,mpb,Swb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb,kSb];var ph=[lSb,x2,B2,F2,J2,N2,R2,V2,Z2,H4,P4,T4,b5,f5,u5,Gl,M8,i9,lSb,lSb,lSb,lSb,lSb,lSb,lSb,lSb,lSb,lSb,lSb,lSb,lSb,lSb];var qh=[mSb,v5,Hl,Jr,Gx,mSb,mSb,mSb];var rh=[nSb,w5];var sh=[oSb,Tq,Qw,oSb];var th=[pSb,K8];var uh=[qSb,Fr,Cx,qSb];var vh=[rSb,bm,Zr,rSb];var wh=[sSb,M6];var xh=[tSb,Hja,yja,gja,Hia,gia,tYa,kTa,qTa,rTa,sTa,tTa,yTa,ATa,RTa,eUa,zUa,AUa,dVa,zVa,FVa,GVa,HVa,IVa,NVa,PVa,IWa,CXa,IXa,JXa,KXa,LXa,QXa,SXa,J1a,Y1a,r2a,s2a,m6a,T5a,b3,f3,j3,n3,r3,v3,z3,D3,H3,L3,P3,T3,X3,$3,d4,h4,l4,p4,v4,z4,D4,L4,X4,$4,h5,q5,s5,Il,Ml,Ol,_l,fm,h7,Om,J8,L8,Bn,Dn,T8,gp,l9,up,Fp,Mp,Qp,Rp,ur,wr,xr,zr,Hga,Wr,bs,Ks,wt,yt,dv,rv,Cv,Jv,Nv,Ov,rx,tx,ux,wx,Ysb,Qwb,tSb,tSb,tSb,tSb,tSb,tSb,tSb,tSb,tSb,tSb,tSb,tSb,tSb,tSb,tSb,tSb,tSb,tSb,tSb,tSb];var yh=[uSb,x5];var zh=[vSb,y5,Iga,vSb];var Ah=[wSb,pUa,h2a,wSb];var Bh=[xSb,fga];var Ch=[ySb,jr,gx,ySb];var Dh=[zSb,Gga];var Eh=[ASb,Y6];var Fh=[BSb,L3a,pja,Zia,USa,VSa,ZSa,_Sa,aTa,cTa,mTa,oTa,pTa,uTa,zTa,WTa,ZTa,_Ta,hUa,jUa,kUa,yUa,hVa,iVa,mVa,nVa,pVa,rVa,BVa,DVa,EVa,JVa,OVa,WWa,kXa,lXa,pXa,qXa,sXa,uXa,EXa,GXa,HXa,MXa,RXa,O1a,R1a,S1a,$1a,b2a,c2a,q2a,r3a,I6a,e6a,K5a,mxb,tDb,LDb,BFb,HFb,lPb,uPb,IPb,D5,H5,Ql,Rl,Tl,$l,g7,lm,Km,I7,Qm,Vm,N8,O8,fp,k9,ip,sp,tp,y9,xp,zp,Ap,Bp,Cp,saa,Hp,Ip,Lp,Zaa,Np,Sp,Tp,Up,Vp,lq,Pq,Uq,Vq,Wq,Xq,Yq,Zq,_q,cr,dr,er,gr,ir,kr,lr,mr,nr,or,pr,qr,tr,zga,vr,Br,Cr,Kr,Lr,Nr,Pr,Xr,hs,Gs,Ms,Rs,cv,fv,pv,qv,uv,wv,xv,yv,zv,Ev,Fv,Iv,Kv,Pv,Qv,Rv,Sv,iw,Mw,Rw,Sw,Tw,Uw,Vw,Ww,Xw,$w,ax,bx,dx,fx,hx,ix,jx,kx,lx,mx,nx,qx,sx,yx,zx,Hx,oi,yxb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb,BSb];var Gh=[CSb,WSa,jVa,mXa];var Hh=[DSb,lUa,d2a,DSb];var Ih=[ESb,jTa,yVa,BXa,Sq,qga,Pw,ESb];var Jh=[FSb,fr,cx,FSb];var Kh=[GSb,Ll];var Lh=[HSb,r2,Qia,$ha,bTa,nTa,xTa,PTa,UTa,VTa,XTa,YTa,$Ta,aUa,bUa,cUa,dUa,fUa,gUa,uUa,BUa,qVa,CVa,MVa,tXa,FXa,PXa,H1a,M1a,N1a,P1a,Q1a,T1a,U1a,V1a,W1a,X1a,Z1a,_1a,m2a,t2a,kPb,tPb,HPb,S5,Im,Jm,Sm,Tm,Um,cp,j9,qp,s9,Dp,Ep,Jp,eba,Op,tba,Aba,Xp,Yp,aq,bq,cq,eq,fq,gq,hq,iq,jq,kq,sq,tq,uq,vq,wq,xq,zq,Aq,Cq,Dq,Eq,Fq,Gq,Hq,Iq,Kq,Mq,Oq,Zfa,Rq,sr,Es,Fs,Os,Ps,Qs,$u,nv,Av,Bv,Gv,Lv,Uv,Vv,Zv,_v,$v,bw,cw,dw,ew,fw,gw,hw,pw,qw,rw,sw,tw,uw,ww,xw,zw,Aw,Bw,Cw,Dw,Ew,Fw,Hw,Jw,Lw,Ow,px,Bha,YDa,ZDa,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb,HSb];var Mh=[ISb,el,gl,ISb];var Nh=[JSb,dl,hl,JSb];var Oh=[KSb,STa,K1a,KSb];var Ph=[LSb,Pl,ega,LSb];var Qh=[MSb,iga];var Rh=[NSb,Ul,Qr,NSb];var Sh=[OSb,C5];var Th=[PSb,lTa,wTa,rUa,wUa,w2a,x2a,AVa,LVa,DXa,OXa,j2a,o2a,q3a,lxb,sDb,KDb,NKb,SKb,jPb,sPb,GPb,Sl,Vl,Wl,v7,V7,a8,Wm,Xm,Zm,h9,m9,maa,Laa,lba,Wp,Nba,qca,dq,mq,oq,Zda,yq,Bq,Lq,Nq,Qq,dga,yga,yr,Ar,Or,Rr,Sr,Ss,Ts,Vs,Tv,aw,jw,lw,vw,yw,Iw,Kw,Nw,vx,xx,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb,PSb];var Uh=[QSb,n5];var Vh=[RSb,m5];var Wh=[SSb,k6];var Xh=[TSb,vTa,iUa,KVa,NXa,a2a,Z5,u6,A6,Xl,s8,D8,an,Gba,$p,Ica,nq,pq,qq,rq,yea,Jq,Tfa,$q,ar,br,hr,Aga,Tr,Ys,Yv,kw,mw,nw,ow,Gw,Yw,Zw,_w,ex,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb,TSb];var Yh=[USb,G6,F8,_p,jca,Hda,xfa,gga,hga,pga,Xv,USb,USb,USb,USb,USb];var Zh=[VSb,xUa,p2a,Zp,dca,Wv,VSb,VSb];var _h=[WSb,Zba];var $h=[XSb,Sna,nBa,Ppb];var ai=[YSb,oUa,g2a,wp,tv,YSb,YSb,YSb];var bi=[ZSb,qUa,tUa,i2a,l2a,F9,rr,ox];var ci=[_Sb,mUa,e2a,_Sb];var di=[$Sb,Kp,xga,Hv];var ei=[aTb,Maa];var fi=[bTb,nUa,sUa,f2a,k2a,Pp,Mv,bTb];var gi=[cTb,sba];return{__GLOBAL__I_000101:PEb,__GLOBAL__sub_I_bind_cpp:vyb,__GLOBAL__sub_I_binding_cpp:Rla,__GLOBAL__sub_I_capping_geom_cpp:VAa,__GLOBAL__sub_I_clip_cpp:yib,__GLOBAL__sub_I_context_cpp:tjb,__GLOBAL__sub_I_create_cpp:CDa,__GLOBAL__sub_I_element_cpp:$tb,__GLOBAL__sub_I_embind_cpp:Cha,__GLOBAL__sub_I_geom_query_cpp:PDa,__GLOBAL__sub_I_glbuffermanager_cpp:_db,__GLOBAL__sub_I_group_cpp:KEa,__GLOBAL__sub_I_infos_cpp:kjb,__GLOBAL__sub_I_instance_cpp:Plb,__GLOBAL__sub_I_instance_cpp_3162:Jsb,__GLOBAL__sub_I_iostream_cpp:QEb,__GLOBAL__sub_I_net_command_cpp:Exb,__GLOBAL__sub_I_scene_iterator_cpp:erb,__GLOBAL__sub_I_state_cpp:Rvb,__GLOBAL__sub_I_svg_common_cpp:oqb,__GLOBAL__sub_I_traverse_cpp:Wjb,__GLOBAL__sub_I_web_client_cpp:Dha,___divdi3:UPb,___errno_location:hAb,___getTypeName:Zzb,___muldi3:WPb,___udivdi3:XPb,___uremdi3:YPb,_bitshift64Lshr:ZPb,_bitshift64Shl:_Pb,_emscripten_replace_memory:Lg,_free:$zb,_i64Add:QPb,_i64Subtract:RPb,_llvm_bswap_i32:$Pb,_llvm_round_f64:aQb,_main:Lha,_malloc:_zb,_memcpy:bQb,_memmove:cQb,_memset:dQb,_pthread_cond_broadcast:eQb,_pthread_mutex_lock:fQb,_pthread_mutex_unlock:gQb,_round:hQb,_roundf:iQb,_sbrk:jQb,dynCall_di:kQb,dynCall_dii:lQb,dynCall_i:mQb,dynCall_ii:nQb,dynCall_iid:oQb,dynCall_iii:pQb,dynCall_iiii:qQb,dynCall_iiiii:rQb,dynCall_iiiiid:sQb,dynCall_iiiiii:tQb,dynCall_iiiiiid:uQb,dynCall_iiiiiidi:vQb,dynCall_iiiiiii:wQb,dynCall_iiiiiiii:xQb,dynCall_iiiiiiiii:yQb,dynCall_iiiiiiiiiiiiiiid:zQb,dynCall_iiiiiiiiiiiiiiiid:AQb,dynCall_v:BQb,dynCall_vd:CQb,dynCall_vdd:DQb,dynCall_vddi:EQb,dynCall_vdi:FQb,dynCall_vi:GQb,dynCall_vid:HQb,dynCall_vidd:IQb,dynCall_viddd:JQb,dynCall_vidddiii:KQb,dynCall_viddi:LQb,dynCall_vidi:MQb,dynCall_vidiii:NQb,dynCall_vii:OQb,dynCall_viid:PQb,dynCall_viidd:QQb,dynCall_viiddd:RQb,dynCall_viiddi:SQb,dynCall_viidi:TQb,dynCall_viididididi:UQb,dynCall_viidii:VQb,dynCall_viidiii:WQb,dynCall_viii:XQb,dynCall_viiid:YQb,dynCall_viiidd:ZQb,dynCall_viiiddddi:_Qb,dynCall_viiiddi:$Qb,dynCall_viiidi:aRb,dynCall_viiididididi:bRb,dynCall_viiidii:cRb,dynCall_viiii:dRb,dynCall_viiiid:eRb,dynCall_viiiidddiiii:fRb,dynCall_viiiidi:gRb,dynCall_viiiidii:hRb,dynCall_viiiidiiii:iRb,dynCall_viiiii:jRb,dynCall_viiiiidd:kRb,dynCall_viiiiiddd:lRb,dynCall_viiiiiddi:mRb,dynCall_viiiiidi:nRb,dynCall_viiiiidii:oRb,dynCall_viiiiidiii:pRb,dynCall_viiiiidiiii:qRb,dynCall_viiiiii:rRb,dynCall_viiiiiidd:sRb,dynCall_viiiiiiddd:tRb,dynCall_viiiiiidiii:uRb,dynCall_viiiiiii:vRb,dynCall_viiiiiiii:wRb,dynCall_viiiiiiiii:xRb,dynCall_viiiiiiiiii:yRb,dynCall_viiiiiiiiiii:zRb,dynCall_viiiiiiiiiiii:ARb,dynCall_viiiiiiiiiiiii:BRb,dynCall_viiiiiiiiiiiiidddddi:CRb,dynCall_viiiiiiiiiiiiii:DRb,dynCall_viiiiiiiiiiiiiii:ERb,dynCall_viiiiiiiiiiiiiiii:FRb,dynCall_viiiiiiiiiiiiiiiii:GRb,establishStackSpace:ki,getTempRet0:ni,runPostSets:PPb,setTempRet0:mi,setThrew:li,stackAlloc:hi,stackRestore:ji,stackSave:ii}}) // EMSCRIPTEN_END_ASM (e.Yb,e.Zb,buffer),Eb=e.__GLOBAL__I_000101=Y.__GLOBAL__I_000101,Hb=e.__GLOBAL__sub_I_bind_cpp=Y.__GLOBAL__sub_I_bind_cpp,Yb=e.__GLOBAL__sub_I_binding_cpp=Y.__GLOBAL__sub_I_binding_cpp,Xb=e.__GLOBAL__sub_I_capping_geom_cpp=Y.__GLOBAL__sub_I_capping_geom_cpp,Sb=e.__GLOBAL__sub_I_clip_cpp=Y.__GLOBAL__sub_I_clip_cpp,Qb=e.__GLOBAL__sub_I_context_cpp=Y.__GLOBAL__sub_I_context_cpp,Wb=e.__GLOBAL__sub_I_create_cpp=Y.__GLOBAL__sub_I_create_cpp,Kb=e.__GLOBAL__sub_I_element_cpp= Y.__GLOBAL__sub_I_element_cpp,Pb=e.__GLOBAL__sub_I_embind_cpp=Y.__GLOBAL__sub_I_embind_cpp,Vb=e.__GLOBAL__sub_I_geom_query_cpp=Y.__GLOBAL__sub_I_geom_query_cpp,Tb=e.__GLOBAL__sub_I_glbuffermanager_cpp=Y.__GLOBAL__sub_I_glbuffermanager_cpp,Ub=e.__GLOBAL__sub_I_group_cpp=Y.__GLOBAL__sub_I_group_cpp,Rb=e.__GLOBAL__sub_I_infos_cpp=Y.__GLOBAL__sub_I_infos_cpp,Ob=e.__GLOBAL__sub_I_instance_cpp=Y.__GLOBAL__sub_I_instance_cpp,Lb=e.__GLOBAL__sub_I_instance_cpp_3162=Y.__GLOBAL__sub_I_instance_cpp_3162,Gb=e.__GLOBAL__sub_I_iostream_cpp= Y.__GLOBAL__sub_I_iostream_cpp,Ib=e.__GLOBAL__sub_I_net_command_cpp=Y.__GLOBAL__sub_I_net_command_cpp,Mb=e.__GLOBAL__sub_I_scene_iterator_cpp=Y.__GLOBAL__sub_I_scene_iterator_cpp,Jb=e.__GLOBAL__sub_I_state_cpp=Y.__GLOBAL__sub_I_state_cpp,Nb=e.__GLOBAL__sub_I_svg_common_cpp=Y.__GLOBAL__sub_I_svg_common_cpp,Fb=e.__GLOBAL__sub_I_traverse_cpp=Y.__GLOBAL__sub_I_traverse_cpp,Zb=e.__GLOBAL__sub_I_web_client_cpp=Y.__GLOBAL__sub_I_web_client_cpp;e.___divdi3=Y.___divdi3;e.___errno_location=Y.___errno_location; var Ne=e.___getTypeName=Y.___getTypeName;e.___muldi3=Y.___muldi3;e.___udivdi3=Y.___udivdi3;e.___uremdi3=Y.___uremdi3;e._bitshift64Lshr=Y._bitshift64Lshr;e._bitshift64Shl=Y._bitshift64Shl;var eb=e._emscripten_replace_memory=Y._emscripten_replace_memory,Oe=e._free=Y._free;e._i64Add=Y._i64Add;e._i64Subtract=Y._i64Subtract;e._llvm_bswap_i32=Y._llvm_bswap_i32;e._llvm_round_f64=Y._llvm_round_f64;e._main=Y._main;var La=e._malloc=Y._malloc;e._memcpy=Y._memcpy;e._memmove=Y._memmove;e._memset=Y._memset; e._pthread_cond_broadcast=Y._pthread_cond_broadcast;e._pthread_mutex_lock=Y._pthread_mutex_lock;e._pthread_mutex_unlock=Y._pthread_mutex_unlock;e._round=Y._round;e._roundf=Y._roundf;e._sbrk=Y._sbrk;e.establishStackSpace=Y.establishStackSpace;e.getTempRet0=Y.getTempRet0;e.runPostSets=Y.runPostSets;e.setTempRet0=Y.setTempRet0;e.setThrew=Y.setThrew;var ea=e.stackAlloc=Y.stackAlloc,fa=e.stackRestore=Y.stackRestore,ca=e.stackSave=Y.stackSave;e.dynCall_di=Y.dynCall_di;e.dynCall_dii=Y.dynCall_dii; e.dynCall_i=Y.dynCall_i;e.dynCall_ii=Y.dynCall_ii;e.dynCall_iid=Y.dynCall_iid;e.dynCall_iii=Y.dynCall_iii;e.dynCall_iiii=Y.dynCall_iiii;e.dynCall_iiiii=Y.dynCall_iiiii;e.dynCall_iiiiid=Y.dynCall_iiiiid;e.dynCall_iiiiii=Y.dynCall_iiiiii;e.dynCall_iiiiiid=Y.dynCall_iiiiiid;e.dynCall_iiiiiidi=Y.dynCall_iiiiiidi;e.dynCall_iiiiiii=Y.dynCall_iiiiiii;e.dynCall_iiiiiiii=Y.dynCall_iiiiiiii;e.dynCall_iiiiiiiii=Y.dynCall_iiiiiiiii;e.dynCall_iiiiiiiiiiiiiiid=Y.dynCall_iiiiiiiiiiiiiiid; e.dynCall_iiiiiiiiiiiiiiiid=Y.dynCall_iiiiiiiiiiiiiiiid;e.dynCall_v=Y.dynCall_v;e.dynCall_vd=Y.dynCall_vd;e.dynCall_vdd=Y.dynCall_vdd;e.dynCall_vddi=Y.dynCall_vddi;e.dynCall_vdi=Y.dynCall_vdi;e.dynCall_vi=Y.dynCall_vi;e.dynCall_vid=Y.dynCall_vid;e.dynCall_vidd=Y.dynCall_vidd;e.dynCall_viddd=Y.dynCall_viddd;e.dynCall_vidddiii=Y.dynCall_vidddiii;e.dynCall_viddi=Y.dynCall_viddi;e.dynCall_vidi=Y.dynCall_vidi;e.dynCall_vidiii=Y.dynCall_vidiii;e.dynCall_vii=Y.dynCall_vii;e.dynCall_viid=Y.dynCall_viid; e.dynCall_viidd=Y.dynCall_viidd;e.dynCall_viiddd=Y.dynCall_viiddd;e.dynCall_viiddi=Y.dynCall_viiddi;e.dynCall_viidi=Y.dynCall_viidi;e.dynCall_viididididi=Y.dynCall_viididididi;e.dynCall_viidii=Y.dynCall_viidii;e.dynCall_viidiii=Y.dynCall_viidiii;e.dynCall_viii=Y.dynCall_viii;e.dynCall_viiid=Y.dynCall_viiid;e.dynCall_viiidd=Y.dynCall_viiidd;e.dynCall_viiiddddi=Y.dynCall_viiiddddi;e.dynCall_viiiddi=Y.dynCall_viiiddi;e.dynCall_viiidi=Y.dynCall_viiidi;e.dynCall_viiididididi=Y.dynCall_viiididididi; e.dynCall_viiidii=Y.dynCall_viiidii;e.dynCall_viiii=Y.dynCall_viiii;e.dynCall_viiiid=Y.dynCall_viiiid;e.dynCall_viiiidddiiii=Y.dynCall_viiiidddiiii;e.dynCall_viiiidi=Y.dynCall_viiiidi;e.dynCall_viiiidii=Y.dynCall_viiiidii;e.dynCall_viiiidiiii=Y.dynCall_viiiidiiii;e.dynCall_viiiii=Y.dynCall_viiiii;e.dynCall_viiiiidd=Y.dynCall_viiiiidd;e.dynCall_viiiiiddd=Y.dynCall_viiiiiddd;e.dynCall_viiiiiddi=Y.dynCall_viiiiiddi;e.dynCall_viiiiidi=Y.dynCall_viiiiidi;e.dynCall_viiiiidii=Y.dynCall_viiiiidii; e.dynCall_viiiiidiii=Y.dynCall_viiiiidiii;e.dynCall_viiiiidiiii=Y.dynCall_viiiiidiiii;e.dynCall_viiiiii=Y.dynCall_viiiiii;e.dynCall_viiiiiidd=Y.dynCall_viiiiiidd;e.dynCall_viiiiiiddd=Y.dynCall_viiiiiiddd;e.dynCall_viiiiiidiii=Y.dynCall_viiiiiidiii;e.dynCall_viiiiiii=Y.dynCall_viiiiiii;e.dynCall_viiiiiiii=Y.dynCall_viiiiiiii;e.dynCall_viiiiiiiii=Y.dynCall_viiiiiiiii;e.dynCall_viiiiiiiiii=Y.dynCall_viiiiiiiiii;e.dynCall_viiiiiiiiiii=Y.dynCall_viiiiiiiiiii;e.dynCall_viiiiiiiiiiii=Y.dynCall_viiiiiiiiiiii; e.dynCall_viiiiiiiiiiiii=Y.dynCall_viiiiiiiiiiiii;e.dynCall_viiiiiiiiiiiiidddddi=Y.dynCall_viiiiiiiiiiiiidddddi;e.dynCall_viiiiiiiiiiiiii=Y.dynCall_viiiiiiiiiiiiii;e.dynCall_viiiiiiiiiiiiiii=Y.dynCall_viiiiiiiiiiiiiii;e.dynCall_viiiiiiiiiiiiiiii=Y.dynCall_viiiiiiiiiiiiiiii;e.dynCall_viiiiiiiiiiiiiiiii=Y.dynCall_viiiiiiiiiiiiiiiii;e.asm=Y;e.getMemory=function(a){return wa?pb?La(a):ya(a):ua(a)};e.addRunDependency=yb;e.removeRunDependency=zb;e.FS_createFolder=md;e.FS_createPath=nd; e.FS_createDataFile=pd;e.FS_createPreloadedFile=ud;e.FS_createLazyFile=td;e.FS_createLink=rd;e.FS_createDevice=qd;e.FS_unlink=cd; if(Ab)if((String.prototype.startsWith?Ab.startsWith(Cb):0===Ab.indexOf(Cb))||("function"===typeof e.locateFile?Ab=e.locateFile(Ab):e.memoryInitializerPrefixURL&&(Ab=e.memoryInitializerPrefixURL+Ab)),na||oa){var ch=e.readBinary(Ab);u.set(ch,8)}else{var eh=function(){e.readAsync(Ab,dh,function(){throw"could not load memory initializer "+Ab;})};yb();var dh=function(a){a.byteLength&&(a=new Uint8Array(a));u.set(a,8);e.memoryInitializerRequest&&delete e.memoryInitializerRequest.response;zb()},fh=ra(Ab); if(fh)dh(fh.buffer);else if(e.memoryInitializerRequest){var gh=function(){var a=e.memoryInitializerRequest,b=a.response;if(200!==a.status&&0!==a.status)if(b=ra(e.memoryInitializerRequestURL))b=b.buffer;else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+a.status+", retrying "+Ab);eh();return}dh(b)};e.memoryInitializerRequest.response?setTimeout(gh,0):e.memoryInitializerRequest.addEventListener("load",gh)}else eh()} function sa(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}sa.prototype=Error();sa.prototype.constructor=sa;xb=function hh(){e.calledRun||ih();e.calledRun||(xb=hh)}; e.callMain=function(a){a=a||[];pb||(pb=!0,hb(lb));var b=a.length+1,c=ea(4*(b+1));v[c>>2]=Qa(e.thisProgram);for(var d=1;d>2)+d]=Qa(a[d-1]);v[(c>>2)+b]=0;try{var f=e._main(b,c,0);jh(f,!0)}catch(g){g instanceof sa||("SimulateInfiniteLoop"==g?e.noExitRuntime=!0:((a=g)&&"object"===typeof g&&g.stack&&(a=[g,g.stack]),e.printErr("exception thrown: "+a),e.quit(1,g)))}finally{}}; function ih(a){function b(){if(!e.calledRun&&(e.calledRun=!0,!Ha)){pb||(pb=!0,hb(lb));hb(mb);if(e.onRuntimeInitialized)e.onRuntimeInitialized();e._main&&kh&&e.callMain(a);if(e.postRun)for("function"==typeof e.postRun&&(e.postRun=[e.postRun]);e.postRun.length;){var b=e.postRun.shift();ob.unshift(b)}hb(ob)}}a=a||e.arguments;if(!(0=r.documentMode?la(a.documentElement,e.javascriptEnabled):a.documentElement.cloneNode(!0),k=b.createElement("iframe");k.className="html2canvas-container"; k.style.visibility="hidden";k.style.position="fixed";k.style.left="-10000px";k.style.top="0px";k.style.border="0";k.width=c;k.height=d;k.scrolling="no";b.body.appendChild(k);return new Promise(function(b){var c=k.contentWindow.document;ma(a.documentElement,h,"textarea");ma(a.documentElement,h,"select");k.contentWindow.onload=k.onload=function(){var d=setInterval(function(){0"); !a.defaultView||f===a.defaultView.pageXOffset&&g===a.defaultView.pageYOffset||a.defaultView.scrollTo(f,g);c.replaceChild(!0===e.javascriptEnabled?c.adoptNode(h):na(c.adoptNode(h)),c.documentElement);c.close()})}function ma(a,b,c){a=a.getElementsByTagName(c);b=b.getElementsByTagName(c);c=a.length;for(var d=0;df+c[3].width?0:k-c[3].width,l-c[0].width).topRight.subdivide(.5),bottomRightOuter:C(d+p,e+t,m,q).bottomRight.subdivide(.5),bottomRightInner:C(d+Math.min(p,f-c[3].width),e+Math.min(t,a+c[0].width),Math.max(0,m-c[1].width),q-c[2].width).bottomRight.subdivide(.5),bottomLeftOuter:C(d,e+u,r,b).bottomLeft.subdivide(.5),bottomLeftInner:C(d+c[3].width,e+u,Math.max(0,r-c[3].width),b-c[2].width).bottomLeft.subdivide(.5)}}function H(a,b,c,d){var e=function(a,b,c){return{x:a.x+(b.x-a.x)*c,y:a.y+ (b.y-a.y)*c}};return{start:a,startControl:b,endControl:c,end:d,subdivide:function(f){var g=e(a,b,f),h=e(b,c,f),k=e(c,d,f),l=e(g,h,f),h=e(h,k,f);f=e(l,h,f);return[H(a,g,l,f),H(f,h,k,d)]},curveTo:function(a){a.push(["bezierCurve",b.x,b.y,c.x,c.y,d.x,d.y])},curveToReversed:function(d){d.push(["bezierCurve",c.x,c.y,b.x,b.y,a.x,a.y])}}}function Y(a,b,c,d,e,f,g){var h=[];0 a.cssInt("zIndex")}function $a(a){return 0=b.length&&(b[1]=b[0]);return b.map(cb)})}function db(a){return a.nodeType===Node.TEXT_NODE||a.nodeType===Node.ELEMENT_NODE} function P(a){return"static"!==a.css("position")}function da(a){return"none"!==a.css("float")}function Q(a){var b=this;return function(){return!a.apply(b,arguments)}}function O(a){return a.node.nodeType===Node.ELEMENT_NODE}function ea(a){return a.node.nodeType===Node.TEXT_NODE}function eb(a){return function(b,c){return b.cssInt("zIndex")+a.indexOf(b)/a.length-(c.cssInt("zIndex")+a.indexOf(c)/a.length)}}function X(a,b){return function(){return a.apply(b,arguments)}}function cb(a){return parseInt(a, 10)}function fb(a){return a.width}function gb(a){return a.node.nodeType!==Node.ELEMENT_NODE||-1==="SCRIPT HEAD TITLE OBJECT BR OPTION".split(" ").indexOf(a.node.nodeName)}function hb(a){for(var b=[],c=0,d=!1,e;a.length;)-1!==[32,13,10,9,45].indexOf(a[c])===d?(e=a.splice(0,c),e.length&&b.push(m.html2canvas.punycode.ucs2.encode(e)),d=!d,c=0):c++,c>=a.length&&(e=a.splice(0,c),e.length&&b.push(m.html2canvas.punycode.ucs2.encode(e)));return b}function Pa(a,b,c){if(!b)return Promise.reject("No proxy configured"); var d=xa(ya);a=za(b,a,d);return ya?Aa(a):Ba(c,a,d).then(function(a){return Ca(a.content)})}function ib(a,b,c){var d=xa(Da);a=za(b,a,d);return Da?Promise.resolve(a):Ba(c,a,d).then(function(a){return"data:"+a.type+";base64,"+a.content})}function Ba(a,b,c){return new Promise(function(d,e){var f=a.createElement("script"),g=function(){delete m.html2canvas.proxy[c];a.body.removeChild(f)};m.html2canvas.proxy[c]=function(a){g();d(a)};f.src=b;f.onerror=function(a){g();e(a)};a.body.appendChild(f)})}function xa(a){return a? "":"html2canvas_"+Date.now()+"_"+ ++jb+"_"+Math.round(1E5*Math.random())}function za(a,b,c){return a+"?url="+encodeURIComponent(b)+(c.length?"&callback=html2canvas.proxy."+c:"")}function kb(a,b){r.createElement("script");var c=r.createElement("a");c.href=a;this.src=a=c.href;this.image=new Image;var d=this;this.promise=new Promise(function(c,f){d.image.crossOrigin="Anonymous";d.image.onload=c;d.image.onerror=f;(new ib(a,b,r)).then(function(a){d.image.src=a})["catch"](f)})}function v(a,b,c){l.call(this, a,b);this.isPseudoElement=!0;this.before=":before"===c}function x(a,b,c,d,e){this.width=a;this.height=b;this.images=c;this.options=d;this.document=e}function G(a,b,c,d){l.call(this,c,d);this.ownStacking=a;this.contexts=[];this.children=[];this.opacity=(this.parent?this.parent.stack.opacity:1)*b}function T(a){this.rangeBounds=this.testRangeBounds(a);this.cors=this.testCORS();this.svg=this.testSVG()}function A(a){this.src=a;this.image=null;var b=this;this.promise=this.hasFabric().then(function(){return b.isInline(a)? Promise.resolve(b.inlineFormatting(a)):Aa(a)}).then(function(a){return new Promise(function(d){html2canvas.fabric.loadSVGFromString(a,b.createCanvas.call(b,d))})})}function Ca(a){var b=a.length,c,d,e,f,g,h,k="";for(c=0;c>4,e=(e&15)<<4|f>>2,h=(f&3)<<6|g,k=64===f?k+String.fromCharCode(d):64===g||-1===g?k+String.fromCharCode(d,e):k+String.fromCharCode(d,e,h);return k}function Ea(a,b){this.src=a;this.image=null;var c=this;this.promise=b?new Promise(function(b,e){c.image=new Image;c.image.onload=b;c.image.onerror=e;c.image.src="data:image/svg+xml,"+(new XMLSerializer).serializeToString(a);!0===c.image.complete&&b(c.image)}):this.hasFabric().then(function(){return new Promise(function(b){html2canvas.fabric.parseSVGDocument(a, c.createCanvas.call(c,b))})})}function I(a,b){l.call(this,a,b)}function lb(a,b,c){if(0=e&&c>>10&1023|55296),a=56320|a&1023);return b+=x(a)}).join("")}function g(a,b){return a+ 22+75*(26>a)-((0!=b)<<5)}function h(a,b,c){var d=0;a=c?z(a/700):a>>1;for(a+=z(a/b);455m&&(m=0);for(n=0;n=d&&b("invalid-input");p=a.charCodeAt(m++);p=10>p-48?p-22:26>p-65?p-65:26>p-97?p-97:36;(36<=p||p>z((2147483647-g)/e))&&b("overflow");g+=p*e;r=q<=l?1:q>=l+ 26?26:q-l;if(pz(2147483647/p)&&b("overflow");e*=p}e=c.length+1;l=h(g-n,e,0==n);z(g/e)>2147483647-k&&b("overflow");k+=z(g/e);g%=e;c.splice(g++,0,k)}return f(c)}function l(a){var c,d,f,k,p,m,n,q,r,t=[],u,v,w;a=e(a);u=a.length;c=128;d=0;p=72;for(m=0;mr&&t.push(x(r));for((f=k=t.length)&&t.push("-");f=c&&rz((2147483647-d)/v)&&b("overflow");d+=(n-c)*v;c=n;for(m=0;m=p+26?26:n-p;if(q= 0x80 (not a basic code point)", "invalid-input":"Invalid input"},z=Math.floor,x=String.fromCharCode,y;p={version:"1.3.1",ucs2:{decode:e,encode:f},decode:k,encode:l,toASCII:function(a){return d(a,function(a){return t.test(a)?"xn--"+l(a):a})},toUnicode:function(a){return d(a,function(a){return r.test(a)?k(a.slice(4).toLowerCase()):a})}};if("function"==typeof E&&"object"==typeof E.amd&&E.amd)E("punycode",function(){return p});else if(m&&q)if(module.exports==m)q.exports=p;else for(y in p)p.hasOwnProperty(y)&&(m[y]=p[y]);else a.punycode= p})(this);var Ra=0,ob=0;m.html2canvas=function(a,b){var c=ob++;b=b||{};b.logging&&(m.html2canvas.logging=!0,m.html2canvas.start=Date.now());b.async="undefined"===typeof b.async?!0:b.async;b.allowTaint="undefined"===typeof b.allowTaint?!1:b.allowTaint;b.removeContainer="undefined"===typeof b.removeContainer?!0:b.removeContainer;b.javascriptEnabled="undefined"===typeof b.javascriptEnabled?!1:b.javascriptEnabled;b.imageTimeout="undefined"===typeof b.imageTimeout?1E4:b.imageTimeout;b.renderer="function"=== typeof b.renderer?b.renderer:p;b.strict=!!b.strict;if("string"===typeof a){if("string"!==typeof b.proxy)return Promise.reject("Proxy must be used when rendering url");var d=null!=b.width?b.width:m.innerWidth,e=null!=b.height?b.height:m.innerHeight;return oa(Ta(a),b.proxy,r,d,e,b).then(function(a){return ia(a.contentWindow.document.documentElement,a,b,d,e)})}var f=(a===L?[r.documentElement]:a.length?a:[a])[0];f.setAttribute("data-html2canvas-node"+c,c);return Ka(f.ownerDocument,b,f.ownerDocument.defaultView.innerWidth, f.ownerDocument.defaultView.innerHeight,c).then(function(a){"function"===typeof b.onrendered&&(q("options.onrendered is deprecated, html2canvas returns a Promise containing the canvas"),b.onrendered(a));return a})};m.html2canvas.punycode=this.punycode;m.html2canvas.proxy={};t.prototype.darken=function(a){a=1-a;return new t([Math.round(this.r*a),Math.round(this.g*a),Math.round(this.b*a),this.a])};t.prototype.isTransparent=function(){return 0===this.a};t.prototype.isBlack=function(){return 0===this.r&& 0===this.g&&0===this.b};t.prototype.fromArray=function(a){Array.isArray(a)&&(this.r=Math.min(a[0],255),this.g=Math.min(a[1],255),this.b=Math.min(a[2],255),3Date.now()?this.asyncRenderer(a,b,c):setTimeout(X(function(){this.asyncRenderer(a,b)},this),0)};n.prototype.createPseudoHideStyles=function(a){this.createStyles(a, "."+v.prototype.PSEUDO_HIDE_ELEMENT_CLASS_BEFORE+':before { content: "" !important; display: none !important; }.'+v.prototype.PSEUDO_HIDE_ELEMENT_CLASS_AFTER+':after { content: "" !important; display: none !important; }')};n.prototype.disableAnimations=function(a){this.createStyles(a,"* { -webkit-animation: none !important; -moz-animation: none !important; -o-animation: none !important; animation: none !important; -webkit-transition: none !important; -moz-transition: none !important; -o-transition: none !important; transition: none !important;}")}; n.prototype.createStyles=function(a,b){var c=a.createElement("style");c.innerHTML=b;a.body.appendChild(c)};n.prototype.getPseudoElements=function(a){var b=[[a]];if(a.node.nodeType===Node.ELEMENT_NODE){var c=this.getPseudoElement(a,":before");a=this.getPseudoElement(a,":after");c&&b.push(c);a&&b.push(a)}return[].concat.apply([],b)};n.prototype.getPseudoElement=function(a,b){var c=a.computedStyle(b);if(!c||!c.content||"none"===c.content||"-moz-alt-content"===c.content||"none"===c.display)return null; var d,e=c.content,f=e.substr(0,1);d=f===e.substr(e.length-1)&&f.match(/'|"/)?e.substr(1,e.length-2):e;for(var g="url"===d.substr(0,3),e=r.createElement(g?"img":"html2canvaspseudoelement"),f=new v(e,a,b),h=c.length-1;0<=h;h--){var k=Ya(c.item(h));e.style[k]=c[k]}e.className=v.prototype.PSEUDO_HIDE_ELEMENT_CLASS_BEFORE+" "+v.prototype.PSEUDO_HIDE_ELEMENT_CLASS_AFTER;if(g)return e.src=ra(d)[0].args[0],[f];c=r.createTextNode(d);e.appendChild(c);return[f,new I(c,f)]};n.prototype.getChildren=function(a){return[].concat.apply([], [].filter.call(a.node.childNodes,db).map(function(b){var c=[b.nodeType===Node.TEXT_NODE?new I(b,a):new l(b,a)].filter(gb);return b.nodeType===Node.ELEMENT_NODE&&c.length&&"TEXTAREA"!==b.tagName?c[0].isElementVisible()?c.concat(this.getChildren(c[0])):[]:c},this))};n.prototype.newStackingContext=function(a,b){var c=new G(b,a.getOpacity(),a.node,a.parent);a.cloneTo(c);(b?c.getParentStack(this):c.parent.stack).contexts.push(c);a.stack=c};n.prototype.createStackingContexts=function(){this.nodes.forEach(function(a){var b; if(b=O(a))(b=this.isRootElement(a)||1>a.getOpacity())||(b=a.css("position"),b="auto"!==(-1!==["absolute","relative","fixed"].indexOf(b)?a.css("zIndex"):"auto")),b=b||this.isBodyWithTransparentRoot(a)||a.hasTransform();b?this.newStackingContext(a,!0):O(a)&&(P(a)&&va(a)||-1!==["inline-block","inline-table"].indexOf(a.css("display"))||da(a))?this.newStackingContext(a,!1):a.assignStack(a.parent.stack)},this)};n.prototype.isBodyWithTransparentRoot=function(a){return"BODY"===a.node.nodeName&&a.parent.color("backgroundColor").isTransparent()}; n.prototype.isRootElement=function(a){return null===a.parent};n.prototype.sortStackingContexts=function(a){a.contexts.sort(eb(a.contexts.slice(0)));a.contexts.forEach(this.sortStackingContexts,this)};n.prototype.parseTextBounds=function(a){return function(b,c,d){if("none"!==a.parent.css("textDecoration").substr(0,4)||0!==b.trim().length){if(this.support.rangeBounds&&!a.parent.hasTransform())return c=d.slice(0,c).join("").length,this.getRangeBounds(a.node,c,b.length);if(a.node&&"string"===typeof a.node.data)return b= a.node.splitText(b.length),c=this.getWrapperBounds(a.node,a.parent.hasTransform()),a.node=b,c}else if(!this.support.rangeBounds||a.parent.hasTransform())a.node=a.node.splitText(b.length);return{}}};n.prototype.getWrapperBounds=function(a,b){var c=a.ownerDocument.createElement("html2canvaswrapper"),d=a.parentNode,e=a.cloneNode(!0);c.appendChild(a.cloneNode(!0));d.replaceChild(c,a);var f=b?ca(c):U(c);d.replaceChild(e,c);return f};n.prototype.getRangeBounds=function(a,b,c){var d=this.range||(this.range= a.ownerDocument.createRange());d.setStart(a,b);d.setEnd(a,b+c);return d.getBoundingClientRect()};n.prototype.parse=function(a){var b=a.contexts.filter(Za),c=a.children.filter(O),d=c.filter(Q(da)),e=d.filter(Q(P)).filter(Q(wa)),c=c.filter(Q(P)).filter(da),f=d.filter(Q(P)).filter(wa),d=a.contexts.concat(d.filter(P)).filter(va),g=a.children.filter(ea).filter(ab);a=a.contexts.filter($a);b.concat(e).concat(c).concat(f).concat(d).concat(g).concat(a).forEach(function(a){this.renderQueue.push(a);a instanceof G&&(this.parse(a),this.renderQueue.push(new sa))},this)};n.prototype.paint=function(a){try{a instanceof sa?this.renderer.ctx.restore():ea(a)?(!0===a.parent.isPseudoElement&&a.parent.appendToDOM(),this.paintText(a),!0===a.parent.isPseudoElement&&a.parent.cleanDOM()):this.paintNode(a)}catch(b){if(q(b),this.options.strict)throw b;}};n.prototype.paintNode=function(a){a instanceof G&&(this.renderer.setOpacity(a.opacity),this.renderer.ctx.save(),a.hasTransform()&&this.renderer.setTransform(a.parseTransform())); "INPUT"===a.node.nodeName&&"checkbox"===a.node.type?this.paintCheckbox(a):"INPUT"===a.node.nodeName&&"radio"===a.node.type?this.paintRadio(a):this.paintElement(a)};n.prototype.paintElement=function(a){var b=a.parseBounds();this.renderer.clip(a.backgroundClip,function(){this.renderer.renderBackground(a,b,a.borders.borders.map(fb))},this);this.renderer.clip(a.clip,function(){this.renderer.renderBorders(a.borders.borders)},this);this.renderer.clip(a.backgroundClip,function(){switch(a.node.nodeName){case "svg":case "IFRAME":var c= this.images.get(a.node);c?this.renderer.renderImage(a,b,a.borders,c):q("Error loading <"+a.node.nodeName+">",a.node);break;case "IMG":(c=this.images.get(a.node.src))?this.renderer.renderImage(a,b,a.borders,c):q("Error loading ",a.node.src);break;case "CANVAS":this.renderer.renderImage(a,b,a.borders,{image:a.node});break;case "SELECT":case "INPUT":case "TEXTAREA":this.paintFormValue(a)}},this)};n.prototype.paintCheckbox=function(a){var b=a.parseBounds(),c=Math.min(b.width,b.height),d={width:c- 1,height:c-1,top:b.top,left:b.left},b=[3,3],e=[b,b,b,b],f=[1,1,1,1].map(function(a){return{color:new t("#A5A5A5"),width:a}}),g=ua(d,e,f);this.renderer.clip(a.backgroundClip,function(){this.renderer.rectangle(d.left+1,d.top+1,d.width-2,d.height-2,new t("#DEDEDE"));this.renderer.renderBorders(ta(f,d,g,e));a.node.checked&&(this.renderer.font(new t("#424242"),"normal","normal","bold",c-3+"px","arial"),this.renderer.text("\u2714",d.left+c/6,d.top+c-1))},this)};n.prototype.paintRadio=function(a){var b= a.parseBounds(),c=Math.min(b.width,b.height)-2;this.renderer.clip(a.backgroundClip,function(){this.renderer.circleStroke(b.left+1,b.top+1,c,new t("#DEDEDE"),1,new t("#A5A5A5"));a.node.checked&&this.renderer.circle(Math.ceil(b.left+c/4)+1,Math.ceil(b.top+c/4)+1,Math.floor(c/2),new t("#424242"))},this)};n.prototype.paintFormValue=function(a){var b=a.getValue();if(0";try{c.drawImage(a,0,0),b.toDataURL()}catch(d){return!1}return!0};A.prototype.hasFabric=function(){return html2canvas.fabric?Promise.resolve():Promise.reject(Error("html2canvas.svg.js is not loaded, cannot render svg"))}; A.prototype.inlineFormatting=function(a){return/^data:image\/svg\+xml;base64,/.test(a)?this.decode64(this.removeContentType(a)):this.removeContentType(a)};A.prototype.removeContentType=function(a){return a.replace(/^data:image\/svg\+xml(;base64)?,/,"")};A.prototype.isInline=function(a){return/^data:image\/svg\+xml/i.test(a)};A.prototype.createCanvas=function(a){var b=this;return function(c,d){var e=new html2canvas.fabric.StaticCanvas("c");b.image=e.lowerCanvasEl;e.setWidth(d.width).setHeight(d.height).add(html2canvas.fabric.util.groupSVGElements(c, d)).renderAll();a(e.lowerCanvasEl)}};A.prototype.decode64=function(a){return"function"===typeof m.atob?m.atob(a):Ca(a)};Ea.prototype=Object.create(A.prototype);I.prototype=Object.create(l.prototype);I.prototype.applyTextTransform=function(){this.node.data=this.transform(this.parent.css("textTransform"))};I.prototype.transform=function(a){var b=this.node.data;switch(a){case "lowercase":return b.toLowerCase();case "capitalize":return b.replace(/(^|\s|:|-|\(|\))([a-z])/g,lb);case "uppercase":return b.toUpperCase(); default:return b}};Fa.prototype=Object.create(N.prototype);p.prototype=Object.create(x.prototype);p.prototype.setFillStyle=function(a){this.ctx.fillStyle="object"===typeof a&&a.isColor?a.toString():a;return this.ctx};p.prototype.rectangle=function(a,b,c,d,e){this.setFillStyle(e).fillRect(a,b,c,d)};p.prototype.circle=function(a,b,c,d){this.setFillStyle(d);this.ctx.beginPath();this.ctx.arc(a+c/2,b+c/2,c/2,0,2*Math.PI,!0);this.ctx.closePath();this.ctx.fill()};p.prototype.circleStroke=function(a,b,c, d,e,f){this.circle(a,b,c,d);this.ctx.strokeStyle=f.toString();this.ctx.stroke()};p.prototype.drawShape=function(a,b){this.shape(a);this.setFillStyle(b).fill()};p.prototype.taints=function(a){if(null===a.tainted){this.taintCtx.drawImage(a.image,0,0);try{this.taintCtx.getImageData(0,0,1,1),a.tainted=!1}catch(b){this.taintCtx=r.createElement("canvas").getContext("2d"),a.tainted=!0}}return a.tainted};p.prototype.drawImage=function(a,b,c,d,e,f,g,h,k){this.taints(a)&&!this.options.allowTaint||this.ctx.drawImage(a.image, b,c,d,e,f,g,h,k)};p.prototype.clip=function(a,b,c){this.ctx.save();a.filter(mb).forEach(function(a){this.shape(a).clip()},this);b.call(c);this.ctx.restore()};p.prototype.shape=function(a){this.ctx.beginPath();a.forEach(function(a,c){"rect"===a[0]?this.ctx.rect.apply(this.ctx,a.slice(1)):this.ctx[0===c?"moveTo":a[0]+"To"].apply(this.ctx,a.slice(1))},this);this.ctx.closePath();return this.ctx};p.prototype.font=function(a,b,c,d,e,f){this.setFillStyle(a).font=[b,c,d,e,f].join(" ").split(",")[0]};p.prototype.fontShadow= function(a,b,c,d){this.setVariable("shadowColor",a.toString()).setVariable("shadowOffsetY",b).setVariable("shadowOffsetX",c).setVariable("shadowBlur",d)};p.prototype.clearShadow=function(){this.setVariable("shadowColor","rgba(0,0,0,0)")};p.prototype.setOpacity=function(a){this.ctx.globalAlpha=a};p.prototype.setTransform=function(a){this.ctx.translate(a.origin[0],a.origin[1]);this.ctx.transform.apply(this.ctx,a.matrix);this.ctx.translate(-a.origin[0],-a.origin[1])};p.prototype.setVariable=function(a, b){this.variables[a]!==b&&(this.variables[a]=this.ctx[a]=b);return this};p.prototype.text=function(a,b,c){this.ctx.fillText(a,b,c)};p.prototype.backgroundRepeatShape=function(a,b,c,d,e,f,g,h,k){this.clip([[["line",Math.round(e),Math.round(f)],["line",Math.round(e+g),Math.round(f)],["line",Math.round(e+g),Math.round(h+f)],["line",Math.round(e),Math.round(h+f)]]],function(){this.renderBackgroundRepeat(a,b,c,d,k[3],k[0])},this)};p.prototype.renderBackgroundRepeat=function(a,b,c,d,e,f){e=Math.round(d.left+ b.left+e);b=Math.round(d.top+b.top+f);this.setFillStyle(this.ctx.createPattern(this.resizeImage(a,c),"repeat"));this.ctx.translate(e,b);this.ctx.fill();this.ctx.translate(-e,-b)};p.prototype.renderBackgroundGradient=function(a,b){if(a instanceof V){var c=this.ctx.createLinearGradient(b.left+b.width*a.x0,b.top+b.height*a.y0,b.left+b.width*a.x1,b.top+b.height*a.y1);a.colorStops.forEach(function(a){c.addColorStop(a.stop,a.color.toString())});this.rectangle(b.left,b.top,b.width,b.height,c)}};p.prototype.resizeImage= function(a,b){var c=a.image;if(c.width===b.width&&c.height===b.height)return c;var d=r.createElement("canvas");d.width=b.width;d.height=b.height;d.getContext("2d").drawImage(c,0,0,c.width,c.height,0,0,b.width,b.height);return d}}}).call({},"undefined"!==typeof window?window:void 0,"undefined"!==typeof document?document:void 0); /* Use it if you like it */ (function(A){function E(K){this.ok=!1;"#"==K.charAt(0)&&(K=K.substr(1,6));K=K.replace(/ /g,"");K=K.toLowerCase();var A={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b", darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff", gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa", lightslateblue:"8470ff",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080", oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd", slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"},O;for(O in A)K==O&&(K=A[O]);var L=[{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function(u){return[parseInt(u[1]),parseInt(u[2]),parseInt(u[3])]}},{re:/^(\w{2})(\w{2})(\w{2})$/, example:["#00ff00","336699"],process:function(u){return[parseInt(u[1],16),parseInt(u[2],16),parseInt(u[3],16)]}},{re:/^(\w{1})(\w{1})(\w{1})$/,example:["#fb0","f0f"],process:function(u){return[parseInt(u[1]+u[1],16),parseInt(u[2]+u[2],16),parseInt(u[3]+u[3],16)]}}];for(O=0;Othis.r||isNaN(this.r)?0:255this.g||isNaN(this.g)?0: 255this.b||isNaN(this.b)?0:255 "+a.toRGB()+" -> "+a.toHex());h.appendChild(l);h.appendChild(c);p.appendChild(h)}catch(b){}return p}}"undefined"!==typeof define&&define.amd?define(function(){return E}): "undefined"!==typeof module&&module.exports&&(module.exports=E);A.RGBColor=E})("undefined"!==typeof window?window:this); (function(A){function E(M,u,B,p,C,w){if(!(isNaN(w)||1>w)){w|=0;M=document.getElementById(M).getContext("2d");var h;try{try{h=M.getImageData(u,B,p,C)}catch(A){try{netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"),h=M.getImageData(u,B,p,C)}catch(K){throw alert("Cannot access local image"),Error("unable to access local image data: "+K);}}}catch(A){throw alert("Cannot access image"),Error("unable to access image data: "+A);}for(var a=h.data,l=h.width*h.height*4,c=0;c>V,a[g+1]=v*U>>V,a[g+2]=z*U>>V,a[g+3]=H*U>>V,m-=q,v-=F,z-=r,H-=G,q-=k.r,F-=k.g,r-=k.b,G-=k.a,f=n+((f=e+w+1)>V,a[f+1]=v*U>>V,a[f+2]=z*U>>V,a[f+3]=H*U>>V,m-=q,v-=F,z-=r,H-=G,q-=k.r,F-=k.g,r-=k.b,G-=k.a,f=e+((f=d+c)w)){w|=0;M=document.getElementById(M).getContext("2d");var h;try{try{h=M.getImageData(u,B,p,C)}catch(x){try{netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead"),h=M.getImageData(u,B,p,C)}catch(E){throw alert("Cannot access local image"),Error("unable to access local image data: "+E);}}}catch(x){throw alert("Cannot access image"), Error("unable to access image data: "+x);}var a=h.data,l,c,b,e,d,k,f,g,n,m,v,z,H,q,F,r,G,D,N;l=w+w+1;var P=p-1,A=C-1,y=w+1,I=y*(y+1)/2,J=new X,t=J;for(b=1;b>Q,a[d+1]=g*R>>Q,a[d+2]=n*R>>Q,f-=m,g-=v,n-=z,m-=b.r,v-=b.g,z-=b.b,e=k+((e=l+w+1)>Q,a[e+1]=g*R>>Q,a[e+2]=n*R>>Q,f-=m,g-=v,n-=z,m-=b.r,v-=b.g,z-=b.b,e=l+((e=c+y)B||(p?E(u,0,0,C,w,B):K(u,0,0,C,w,B))},canvasRGBA:E,canvasRGB:K};"undefined"!==typeof define&&define.amd?define(function(){return W}): "undefined"!==typeof module&&module.exports&&(module.exports=W);A.stackBlur=W})("undefined"!==typeof window?window:this); (function(A,E){A.canvg=E(A.RGBColor,A.stackBlur)})("undefined"!==typeof window?window:this,function(A,E){function K(h){var a=[0,0,0],l=function(c,b){var e=h.match(c);null!=e&&(a[b]+=e.length,h=h.replace(c," "))};h=h.replace(/:not\(([^\)]*)\)/g," $1 ");h=h.replace(/{[\s\S]*/gm," ");l(W,1);l(M,0);l(u,1);l(B,2);l(p,1);l(C,1);h=h.replace(/[\*\s\+>~]/g," ");h=h.replace(/[#\.]/g," ");l(w,2);return a.join("")}function X(h){var a={opts:h,FRAMERATE:30,MAX_VIRTUAL_PIXELS:3E4,log:function(a){}};1==a.opts.log&& "undefined"!=typeof console&&(a.log=function(a){console.log(a)});a.init=function(c){var b=0;a.UniqueId=function(){b++;return"canvg"+b};a.Definitions={};a.Styles={};a.StylesSpecificity={};a.Animations=[];a.Images=[];a.ctx=c;a.ViewPort=new function(){this.viewPorts=[];this.Clear=function(){this.viewPorts=[]};this.SetCurrent=function(a,b){this.viewPorts.push({width:a,height:b})};this.RemoveCurrent=function(){this.viewPorts.pop()};this.Current=function(){return this.viewPorts[this.viewPorts.length-1]}; this.width=function(){return this.Current().width};this.height=function(){return this.Current().height};this.ComputeSize=function(a){return null!=a&&"number"==typeof a?a:"x"==a?this.width():"y"==a?this.height():Math.sqrt(Math.pow(this.width(),2)+Math.pow(this.height(),2))/Math.sqrt(2)}}};a.init();a.ImagesLoaded=function(){for(var c=0;c]*>/, "");b=new ActiveXObject("Microsoft.XMLDOM");b.async="false";b.loadXML(a);return b};a.Property=function(a,b){this.name=a;this.value=b};a.Property.prototype.getValue=function(){return this.value};a.Property.prototype.hasValue=function(){return null!=this.value&&""!==this.value};a.Property.prototype.numValue=function(){if(!this.hasValue())return 0;var a=parseFloat(this.value);(this.value+"").match(/%$/)&&(a/=100);return a};a.Property.prototype.valueOrDefault=function(a){return this.hasValue()?this.value: a};a.Property.prototype.numValueOrDefault=function(a){return this.hasValue()?this.numValue():a};a.Property.prototype.addOpacity=function(c){var b=this.value;if(null!=c.value&&""!=c.value&&"string"==typeof this.value){var e=new A(this.value);e.ok&&(b="rgba("+e.r+", "+e.g+", "+e.b+", "+c.numValue()+")")}return new a.Property(this.name,b)};a.Property.prototype.getDefinition=function(){var c=this.value.match(/#([^\)'"]+)/);c&&(c=c[1]);c||(c=this.value);return a.Definitions[c]};a.Property.prototype.isUrlDefinition= function(){return 0==this.value.indexOf("url(")};a.Property.prototype.getFillStyleDefinition=function(c,b){var e=this.getDefinition();if(null!=e&&e.createGradient)return e.createGradient(a.ctx,c,b);if(null!=e&&e.createPattern){if(e.getHrefAttribute().hasValue()){var d=e.attribute("patternTransform"),e=e.getHrefAttribute().getDefinition();d.hasValue()&&(e.attribute("patternTransform",!0).value=d.value)}return e.createPattern(a.ctx,c)}return null};a.Property.prototype.getDPI=function(a){return 96}; a.Property.prototype.getEM=function(c){var b=12,e=new a.Property("fontSize",a.Font.Parse(a.ctx.font).fontSize);e.hasValue()&&(b=e.toPixels(c));return b};a.Property.prototype.getUnits=function(){return(this.value+"").replace(/[0-9\.\-]/g,"")};a.Property.prototype.toPixels=function(c,b){if(!this.hasValue())return 0;var e=this.value+"";if(e.match(/em$/))return this.numValue()*this.getEM(c);if(e.match(/ex$/))return this.numValue()*this.getEM(c)/2;if(e.match(/px$/))return this.numValue();if(e.match(/pt$/))return this.numValue()* this.getDPI(c)*(1/72);if(e.match(/pc$/))return 15*this.numValue();if(e.match(/cm$/))return this.numValue()*this.getDPI(c)/2.54;if(e.match(/mm$/))return this.numValue()*this.getDPI(c)/25.4;if(e.match(/in$/))return this.numValue()*this.getDPI(c);if(e.match(/%$/))return this.numValue()*a.ViewPort.ComputeSize(c);e=this.numValue();return b&&1>e?e*a.ViewPort.ComputeSize(c):e};a.Property.prototype.toMilliseconds=function(){if(!this.hasValue())return 0;var a=this.value+"";if(a.match(/s$/))return 1E3*this.numValue(); a.match(/ms$/);return this.numValue()};a.Property.prototype.toRadians=function(){if(!this.hasValue())return 0;var a=this.value+"";return a.match(/deg$/)?this.numValue()*(Math.PI/180):a.match(/grad$/)?this.numValue()*(Math.PI/200):a.match(/rad$/)?this.numValue():this.numValue()*(Math.PI/180)};var l={baseline:"alphabetic","before-edge":"top","text-before-edge":"top",middle:"middle",central:"middle","after-edge":"bottom","text-after-edge":"bottom",ideographic:"ideographic",alphabetic:"alphabetic",hanging:"hanging", mathematical:"alphabetic"};a.Property.prototype.toTextBaseline=function(){return this.hasValue()?l[this.value]:null};a.Font=new function(){this.Styles="normal|italic|oblique|inherit";this.Variants="normal|small-caps|inherit";this.Weights="normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900|inherit";this.CreateFont=function(b,e,d,c,f,g){g=null!=g?this.Parse(g):this.CreateFont("","","","","",a.ctx.font);return{fontFamily:f||g.fontFamily,fontSize:c||g.fontSize,fontStyle:b||g.fontStyle,fontWeight:d|| g.fontWeight,fontVariant:e||g.fontVariant,toString:function(){return[this.fontStyle,this.fontVariant,this.fontWeight,this.fontSize,this.fontFamily].join(" ")}}};var c=this;this.Parse=function(b){var e={};b=a.trim(a.compressSpaces(b||"")).split(" ");for(var d=!1,k=!1,f=!1,g=!1,n="",m=0;mthis.x2&&(this.x2=a)}if(null!=b){if(isNaN(this.y1)||isNaN(this.y2))this.y2=this.y1=b;bthis.y2&&(this.y2=b)}};this.addX=function(a){this.addPoint(a,null)};this.addY=function(a){this.addPoint(null,a)};this.addBoundingBox=function(a){this.addPoint(a.x1,a.y1);this.addPoint(a.x2,a.y2)};this.addQuadraticCurve=function(a,b,e,d,c,v){e=a+2/3*(e-a);d=b+2/3*(d-b);this.addBezierCurve(a, b,e,e+1/3*(c-a),d,d+1/3*(v-b),c,v)};this.addBezierCurve=function(a,b,e,d,c,v,z,h){var q=[a,b],F=[e,d],r=[c,v],l=[z,h];this.addPoint(q[0],q[1]);this.addPoint(l[0],l[1]);for(i=0;1>=i;i++)a=function(a){return Math.pow(1-a,3)*q[i]+3*Math.pow(1-a,2)*a*F[i]+3*(1-a)*Math.pow(a,2)*r[i]+Math.pow(a,3)*l[i]},b=6*q[i]-12*F[i]+6*r[i],e=-3*q[i]+9*F[i]-9*r[i]+3*l[i],d=3*F[i]-3*q[i],0==e?0!=b&&(b=-d/b,0b&&(0==i&&this.addX(a(b)),1==i&&this.addY(a(b)))):(d=Math.pow(b,2)-4*d*e,0>d||(c=(-b+Math.sqrt(d))/(2*e), 0c&&(0==i&&this.addX(a(c)),1==i&&this.addY(a(c))),b=(-b-Math.sqrt(d))/(2*e),0b&&(0==i&&this.addX(a(b)),1==i&&this.addY(a(b)))))};this.isPointInBox=function(a,b){return this.x1<=a&&a<=this.x2&&this.y1<=b&&b<=this.y2};this.addPoint(a,b);this.addPoint(e,d)};a.Transform=function(c){var b=this;this.Type={};this.Type.translate=function(b){this.p=a.CreatePoint(b);this.apply=function(a){a.translate(this.p.x||0,this.p.y||0)};this.unapply=function(a){a.translate(-1*this.p.x||0,-1*this.p.y||0)}; this.applyToPoint=function(a){a.applyTransform([1,0,0,1,this.p.x||0,this.p.y||0])}};this.Type.rotate=function(b){b=a.ToNumberArray(b);this.angle=new a.Property("angle",b[0]);this.cx=b[1]||0;this.cy=b[2]||0;this.apply=function(a){a.translate(this.cx,this.cy);a.rotate(this.angle.toRadians());a.translate(-this.cx,-this.cy)};this.unapply=function(a){a.translate(this.cx,this.cy);a.rotate(-1*this.angle.toRadians());a.translate(-this.cx,-this.cy)};this.applyToPoint=function(a){var b=this.angle.toRadians(); a.applyTransform([1,0,0,1,this.p.x||0,this.p.y||0]);a.applyTransform([Math.cos(b),Math.sin(b),-Math.sin(b),Math.cos(b),0,0]);a.applyTransform([1,0,0,1,-this.p.x||0,-this.p.y||0])}};this.Type.scale=function(b){this.p=a.CreatePoint(b);this.apply=function(a){a.scale(this.p.x||1,this.p.y||this.p.x||1)};this.unapply=function(a){a.scale(1/this.p.x||1,1/this.p.y||this.p.x||1)};this.applyToPoint=function(a){a.applyTransform([this.p.x||0,0,0,this.p.y||0,0,0])}};this.Type.matrix=function(b){this.m=a.ToNumberArray(b); this.apply=function(a){a.transform(this.m[0],this.m[1],this.m[2],this.m[3],this.m[4],this.m[5])};this.unapply=function(a){var b=this.m[0],e=this.m[2],d=this.m[4],c=this.m[1],f=this.m[3],g=this.m[5],k=1/(b*(1*f-0*g)-e*(1*c-0*g)+d*(0*c-0*f));a.transform(k*(1*f-0*g),k*(0*g-1*c),k*(0*d-1*e),k*(1*b-0*d),k*(e*g-d*f),k*(d*c-b*g))};this.applyToPoint=function(a){a.applyTransform(this.m)}};this.Type.SkewBase=function(e){this.base=b.Type.matrix;this.base(e);this.angle=new a.Property("angle",e)};this.Type.SkewBase.prototype= new this.Type.matrix;this.Type.skewX=function(a){this.base=b.Type.SkewBase;this.base(a);this.m=[1,0,Math.tan(this.angle.toRadians()),1,0,0]};this.Type.skewX.prototype=new this.Type.SkewBase;this.Type.skewY=function(a){this.base=b.Type.SkewBase;this.base(a);this.m=[1,Math.tan(this.angle.toRadians()),0,1,0,0]};this.Type.skewY.prototype=new this.Type.SkewBase;this.transforms=[];this.apply=function(a){for(var b=0;bk&&(this.styles[f]=e[f],this.stylesSpecificity[f]=d)}}};var b=/^[A-Z-]+$/,e=function(a){return b.test(a)? a.toLowerCase():a};if(null!=c&&1==c.nodeType){for(var d=0;db;b++)c=c.replace(/([MmZzLlHhVvCcSsQqTtAa])([^\s])/gm,"$1 $2");c=c.replace(/([^\s])([MmZzLlHhVvCcSsQqTtAa])/gm,"$1 $2");c=c.replace(/([0-9])([+\-])/gm,"$1 $2");for(b=0;2>b;b++)c=c.replace(/(\.[0-9]*)(\.)/gm,"$1 $2");c=c.replace(/([Aa](\s+[0-9]+){3})\s+([01])\s*([01])/gm,"$1 $3 $4 ");c=a.compressSpaces(c);c=a.trim(c);this.PathParser=new function(b){this.tokens=b.split(" ");this.reset=function(){this.i=-1;this.previousCommand=this.command="";this.start=new a.Point(0, 0);this.control=new a.Point(0,0);this.current=new a.Point(0,0);this.points=[];this.angles=[]};this.isEnd=function(){return this.i>=this.tokens.length-1};this.isCommandOrEnd=function(){return this.isEnd()?!0:null!=this.tokens[this.i+1].match(/^[A-Za-z]$/)};this.isRelativeCommand=function(){switch(this.command){case "m":case "l":case "h":case "v":case "c":case "s":case "q":case "t":case "a":case "z":return!0}return!1};this.getToken=function(){this.i++;return this.tokens[this.i]};this.getScalar=function(){return parseFloat(this.getToken())}; this.nextCommand=function(){this.previousCommand=this.command;this.command=this.getToken()};this.getPoint=function(){var b=new a.Point(this.getScalar(),this.getScalar());return this.makeAbsolute(b)};this.getAsControlPoint=function(){var a=this.getPoint();return this.control=a};this.getAsCurrentPoint=function(){var a=this.getPoint();return this.current=a};this.getReflectedControlPoint=function(){return"c"!=this.previousCommand.toLowerCase()&&"s"!=this.previousCommand.toLowerCase()&&"q"!=this.previousCommand.toLowerCase()&& "t"!=this.previousCommand.toLowerCase()?this.current:new a.Point(2*this.current.x-this.control.x,2*this.current.y-this.control.y)};this.makeAbsolute=function(a){this.isRelativeCommand()&&(a.x+=this.current.x,a.y+=this.current.y);return a};this.addMarker=function(a,b,e){null!=e&&0=u(p,r)&&(q=Math.PI);1<=u(p,r)&&(q=0);p=1-m?1:-1;r=l+q/2*p;w=new a.Point(n.x+v*Math.cos(r),n.y+h*Math.sin(r));d.addMarkerAngle(w,r-p*Math.PI/2);d.addMarkerAngle(f,r-p*Math.PI); c.addPoint(f.x,f.y);null!=b&&(u=v>h?v:h,f=v>h?1:v/h,v=v>h?h/v:1,b.translate(n.x,n.y),b.rotate(g),b.scale(f,v),b.arc(0,0,u,l,l+q,1-m),b.scale(1/f,1/v),b.rotate(-g),b.translate(-n.x,-n.y))}break;case "Z":case "z":null!=b&&b.closePath(),d.current=d.start}return c};this.getMarkers=function(){for(var a=this.PathParser.getMarkerPoints(),b=this.PathParser.getMarkerAngles(),c=[],f=0;f=c;c++)for(var n=-1;1>=n;n++)d.save(),f.attributes.x=new a.Property("x",c*g.width),f.attributes.y=new a.Property("y",n*g.height),f.render(d),d.restore();return b.createPattern(g,"repeat")}};a.Element.pattern.prototype=new a.Element.ElementBase;a.Element.marker=function(c){this.base=a.Element.ElementBase; this.base(c);this.baseRender=this.render;this.render=function(b,e,d){b.translate(e.x,e.y);"auto"==this.attribute("orient").valueOrDefault("auto")&&b.rotate(d);"strokeWidth"==this.attribute("markerUnits").valueOrDefault("strokeWidth")&&b.scale(b.lineWidth,b.lineWidth);b.save();var c=new a.Element.svg;c.attributes.viewBox=new a.Property("viewBox",this.attribute("viewBox").value);c.attributes.refX=new a.Property("refX",this.attribute("refX").value);c.attributes.refY=new a.Property("refY",this.attribute("refY").value); c.attributes.width=new a.Property("width",this.attribute("markerWidth").value);c.attributes.height=new a.Property("height",this.attribute("markerHeight").value);c.attributes.fill=new a.Property("fill",this.attribute("fill").valueOrDefault("black"));c.attributes.stroke=new a.Property("stroke",this.attribute("stroke").valueOrDefault("none"));c.children=this.children;var f=0,g=0;this.attribute("refX").hasValue()&&(f=-parseFloat(this.attribute("refX").value));this.attribute("refY").hasValue()&&(g=-parseFloat(this.attribute("refY").value)); b.translate(f,g);c.render(b);b.restore();"strokeWidth"==this.attribute("markerUnits").valueOrDefault("strokeWidth")&&b.scale(1/b.lineWidth,1/b.lineWidth);"auto"==this.attribute("orient").valueOrDefault("auto")&&b.rotate(-d);b.translate(-e.x,-e.y)}};a.Element.marker.prototype=new a.Element.ElementBase;a.Element.defs=function(c){this.base=a.Element.ElementBase;this.base(c);this.render=function(a){}};a.Element.defs.prototype=new a.Element.ElementBase;a.Element.GradientBase=function(c){this.base=a.Element.ElementBase; this.base(c);this.stops=[];for(c=0;cthis.offset&&(this.offset=0);1this.maxDuration){if("indefinite"==this.attribute("repeatCount").value||"indefinite"==this.attribute("repeatDur").value)this.duration= 0;else if("freeze"==this.attribute("fill").valueOrDefault("remove")&&!this.frozen)this.frozen=!0,this.parent.animationFrozen=!0,this.parent.animationFrozenValue=this.getProperty().value;else if("remove"==this.attribute("fill").valueOrDefault("remove")&&!this.removed)return this.removed=!0,this.getProperty().value=this.parent.animationFrozen?this.parent.animationFrozenValue:this.initialValue,!0;return!1}this.duration+=a;a=!1;this.begind&&n.attribute("x").hasValue())break;f+=n.measureTextRecursive(a)}return-1*("end"==k?f:f/2)}return 0};this.renderChild=function(a,c,d,k){var f=d.children[k];f.attribute("x").hasValue()?(f.x=f.attribute("x").toPixels("x")+c.getAnchorDelta(a,d,k),f.attribute("dx").hasValue()&&(f.x+=f.attribute("dx").toPixels("x"))):(f.attribute("dx").hasValue()&&(c.x+=f.attribute("dx").toPixels("x")), f.x=c.x);c.x=f.x+f.measureText(a);f.attribute("y").hasValue()?(f.y=f.attribute("y").toPixels("y"),f.attribute("dy").hasValue()&&(f.y+=f.attribute("dy").toPixels("y"))):(f.attribute("dy").hasValue()&&(c.y+=f.attribute("dy").toPixels("y")),f.y=c.y);c.y=f.y;f.render(a);for(k=0;kc?b-255:b)}this.base=a.Element.ElementBase;this.base(c);var e=a.ToNumberArray(this.attribute("values").value);switch(this.attribute("type").valueOrDefault("matrix")){case "saturate":c= e[0];e=[.213+.787*c,.715-.715*c,.072-.072*c,0,0,.213-.213*c,.715+.285*c,.072-.072*c,0,0,.213-.213*c,.715-.715*c,.072+.928*c,0,0,0,0,0,1,0,0,0,0,0,1];break;case "hueRotate":var d=e[0]*Math.PI/180;c=function(a,b,c){return a+Math.cos(d)*b+Math.sin(d)*c};e=[c(.213,.787,-.213),c(.715,-.715,-.715),c(.072,-.072,.928),0,0,c(.213,-.213,.143),c(.715,.285,.14),c(.072,-.072,-.283),0,0,c(.213,-.213,-.787),c(.715,-.715,.715),c(.072,.928,.072),0,0,0,0,0,1,0,0,0,0,0,1];break;case "luminanceToAlpha":e=[0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,.2125,.7154,.0721,0,0,0,0,0,0,1]}this.apply=function(a,c,d,e,h){var l=a.getImageData(0,0,e,h);for(d=0;d~\.\[:]+)/g,u=/(\.[^\s\+>~\.\[:]+)/g,B=/(::[^\s\+>~\.\[:]+|:first-line|:first-letter|:before|:after)/gi, p=/(:[\w-]+\([^\)]*\))/gi,C=/(:[^\s\+>~\.\[:]+)/g,w=/([^\s\+>~\.\[:]+)/g;"undefined"!=typeof CanvasRenderingContext2D&&(CanvasRenderingContext2D.prototype.drawSvg=function(h,a,l,c,b,e){a={ignoreMouse:!0,ignoreAnimation:!0,ignoreDimensions:!0,ignoreClear:!0,offsetX:a,offsetY:l,scaleWidth:c,scaleHeight:b};for(var d in e)e.hasOwnProperty(d)&&(a[d]=e[d]);O(this.canvas,h,a)});return O}); /*! JSZip v3.1.5 - A JavaScript class for generating and reading zip files (c) 2009-2016 Stuart Knightley Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/master/LICENSE.markdown. JSZip uses the library pako released under the MIT license : https://github.com/nodeca/pako/blob/master/LICENSE */ !function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;b="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,b.JSZip=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g>2,h=(3&b)<<4|c>>4,i=n>1?(15&c)<<2|e>>6:64,j=n>2?63&e:64,k.push(f.charAt(g)+f.charAt(h)+f.charAt(i)+f.charAt(j));return k.join("")},c.decode=function(a){var b,c,d,g,h,i,j,k=0,l=0,m="data:";if(a.substr(0,m.length)===m)throw new Error("Invalid base64 input, it looks like a data url.");a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");var n=3*a.length/4;if(a.charAt(a.length-1)===f.charAt(64)&&n--,a.charAt(a.length-2)===f.charAt(64)&&n--,n%1!==0)throw new Error("Invalid base64 input, bad content length.");var o;for(o=e.uint8array?new Uint8Array(0|n):new Array(0|n);k>4,c=(15&h)<<4|i>>2,d=(3&i)<<6|j,o[l++]=b,64!==i&&(o[l++]=c),64!==j&&(o[l++]=d);return o}},{"./support":30,"./utils":32}],2:[function(a,b,c){"use strict";function d(a,b,c,d,e){this.compressedSize=a,this.uncompressedSize=b,this.crc32=c,this.compression=d,this.compressedContent=e}var e=a("./external"),f=a("./stream/DataWorker"),g=a("./stream/DataLengthProbe"),h=a("./stream/Crc32Probe"),g=a("./stream/DataLengthProbe");d.prototype={getContentWorker:function(){var a=new f(e.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new g("data_length")),b=this;return a.on("end",function(){if(this.streamInfo.data_length!==b.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),a},getCompressedWorker:function(){return new f(e.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},d.createWorkerFrom=function(a,b,c){return a.pipe(new h).pipe(new g("uncompressedSize")).pipe(b.compressWorker(c)).pipe(new g("compressedSize")).withStreamInfo("compression",b)},b.exports=d},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(a,b,c){"use strict";var d=a("./stream/GenericWorker");c.STORE={magic:"\0\0",compressWorker:function(a){return new d("STORE compression")},uncompressWorker:function(){return new d("STORE decompression")}},c.DEFLATE=a("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(a,b,c){"use strict";function d(){for(var a,b=[],c=0;c<256;c++){a=c;for(var d=0;d<8;d++)a=1&a?3988292384^a>>>1:a>>>1;b[c]=a}return b}function e(a,b,c,d){var e=h,f=d+c;a^=-1;for(var g=d;g>>8^e[255&(a^b[g])];return a^-1}function f(a,b,c,d){var e=h,f=d+c;a^=-1;for(var g=d;g>>8^e[255&(a^b.charCodeAt(g))];return a^-1}var g=a("./utils"),h=d();b.exports=function(a,b){if("undefined"==typeof a||!a.length)return 0;var c="string"!==g.getTypeOf(a);return c?e(0|b,a,a.length,0):f(0|b,a,a.length,0)}},{"./utils":32}],5:[function(a,b,c){"use strict";c.base64=!1,c.binary=!1,c.dir=!1,c.createFolders=!0,c.date=null,c.compression=null,c.compressionOptions=null,c.comment=null,c.unixPermissions=null,c.dosPermissions=null},{}],6:[function(a,b,c){"use strict";var d=null;d="undefined"!=typeof Promise?Promise:a("lie"),b.exports={Promise:d}},{lie:58}],7:[function(a,b,c){"use strict";function d(a,b){h.call(this,"FlateWorker/"+a),this._pako=null,this._pakoAction=a,this._pakoOptions=b,this.meta={}}var e="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,f=a("pako"),g=a("./utils"),h=a("./stream/GenericWorker"),i=e?"uint8array":"array";c.magic="\b\0",g.inherits(d,h),d.prototype.processChunk=function(a){this.meta=a.meta,null===this._pako&&this._createPako(),this._pako.push(g.transformTo(i,a.data),!1)},d.prototype.flush=function(){h.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},d.prototype.cleanUp=function(){h.prototype.cleanUp.call(this),this._pako=null},d.prototype._createPako=function(){this._pako=new f[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var a=this;this._pako.onData=function(b){a.push({data:b,meta:a.meta})}},c.compressWorker=function(a){return new d("Deflate",a)},c.uncompressWorker=function(){return new d("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:59}],8:[function(a,b,c){"use strict";function d(a,b,c,d){f.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=b,this.zipPlatform=c,this.encodeFileName=d,this.streamFiles=a,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}var e=a("../utils"),f=a("../stream/GenericWorker"),g=a("../utf8"),h=a("../crc32"),i=a("../signature"),j=function(a,b){var c,d="";for(c=0;c>>=8;return d},k=function(a,b){var c=a;return a||(c=b?16893:33204),(65535&c)<<16},l=function(a,b){return 63&(a||0)},m=function(a,b,c,d,f,m){var n,o,p=a.file,q=a.compression,r=m!==g.utf8encode,s=e.transformTo("string",m(p.name)),t=e.transformTo("string",g.utf8encode(p.name)),u=p.comment,v=e.transformTo("string",m(u)),w=e.transformTo("string",g.utf8encode(u)),x=t.length!==p.name.length,y=w.length!==u.length,z="",A="",B="",C=p.dir,D=p.date,E={crc32:0,compressedSize:0,uncompressedSize:0};b&&!c||(E.crc32=a.crc32,E.compressedSize=a.compressedSize,E.uncompressedSize=a.uncompressedSize);var F=0;b&&(F|=8),r||!x&&!y||(F|=2048);var G=0,H=0;C&&(G|=16),"UNIX"===f?(H=798,G|=k(p.unixPermissions,C)):(H=20,G|=l(p.dosPermissions,C)),n=D.getUTCHours(),n<<=6,n|=D.getUTCMinutes(),n<<=5,n|=D.getUTCSeconds()/2,o=D.getUTCFullYear()-1980,o<<=4,o|=D.getUTCMonth()+1,o<<=5,o|=D.getUTCDate(),x&&(A=j(1,1)+j(h(s),4)+t,z+="up"+j(A.length,2)+A),y&&(B=j(1,1)+j(h(v),4)+w,z+="uc"+j(B.length,2)+B);var I="";I+="\n\0",I+=j(F,2),I+=q.magic,I+=j(n,2),I+=j(o,2),I+=j(E.crc32,4),I+=j(E.compressedSize,4),I+=j(E.uncompressedSize,4),I+=j(s.length,2),I+=j(z.length,2);var J=i.LOCAL_FILE_HEADER+I+s+z,K=i.CENTRAL_FILE_HEADER+j(H,2)+I+j(v.length,2)+"\0\0\0\0"+j(G,4)+j(d,4)+s+z+v;return{fileRecord:J,dirRecord:K}},n=function(a,b,c,d,f){var g="",h=e.transformTo("string",f(d));return g=i.CENTRAL_DIRECTORY_END+"\0\0\0\0"+j(a,2)+j(a,2)+j(b,4)+j(c,4)+j(h.length,2)+h},o=function(a){var b="";return b=i.DATA_DESCRIPTOR+j(a.crc32,4)+j(a.compressedSize,4)+j(a.uncompressedSize,4)};e.inherits(d,f),d.prototype.push=function(a){var b=a.meta.percent||0,c=this.entriesCount,d=this._sources.length;this.accumulate?this.contentBuffer.push(a):(this.bytesWritten+=a.data.length,f.prototype.push.call(this,{data:a.data,meta:{currentFile:this.currentFile,percent:c?(b+100*(c-d-1))/c:100}}))},d.prototype.openedSource=function(a){this.currentSourceOffset=this.bytesWritten,this.currentFile=a.file.name;var b=this.streamFiles&&!a.file.dir;if(b){var c=m(a,b,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:c.fileRecord,meta:{percent:0}})}else this.accumulate=!0},d.prototype.closedSource=function(a){this.accumulate=!1;var b=this.streamFiles&&!a.file.dir,c=m(a,b,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(c.dirRecord),b)this.push({data:o(a),meta:{percent:100}});else for(this.push({data:c.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},d.prototype.flush=function(){for(var a=this.bytesWritten,b=0;b0?a.substring(0,b):""},q=function(a){return"/"!==a.slice(-1)&&(a+="/"),a},r=function(a,b){return b="undefined"!=typeof b?b:i.createFolders,a=q(a),this.files[a]||o.call(this,a,null,{dir:!0,createFolders:b}),this.files[a]},s={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(a){var b,c,d;for(b in this.files)this.files.hasOwnProperty(b)&&(d=this.files[b],c=b.slice(this.root.length,b.length),c&&b.slice(0,this.root.length)===this.root&&a(c,d))},filter:function(a){var b=[];return this.forEach(function(c,d){a(c,d)&&b.push(d)}),b},file:function(a,b,c){if(1===arguments.length){if(d(a)){var e=a;return this.filter(function(a,b){return!b.dir&&e.test(a)})}var f=this.files[this.root+a];return f&&!f.dir?f:null}return a=this.root+a,o.call(this,a,b,c),this},folder:function(a){if(!a)return this;if(d(a))return this.filter(function(b,c){return c.dir&&a.test(b)});var b=this.root+a,c=r.call(this,b),e=this.clone();return e.root=c.name,e},remove:function(a){a=this.root+a;var b=this.files[a];if(b||("/"!==a.slice(-1)&&(a+="/"),b=this.files[a]),b&&!b.dir)delete this.files[a];else for(var c=this.filter(function(b,c){return c.name.slice(0,a.length)===a}),d=0;d=0;--f)if(this.data[f]===b&&this.data[f+1]===c&&this.data[f+2]===d&&this.data[f+3]===e)return f-this.zero;return-1},d.prototype.readAndCheckSignature=function(a){var b=a.charCodeAt(0),c=a.charCodeAt(1),d=a.charCodeAt(2),e=a.charCodeAt(3),f=this.readData(4);return b===f[0]&&c===f[1]&&d===f[2]&&e===f[3]},d.prototype.readData=function(a){if(this.checkOffset(a),0===a)return[];var b=this.data.slice(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{"../utils":32,"./DataReader":18}],18:[function(a,b,c){"use strict";function d(a){this.data=a,this.length=a.length,this.index=0,this.zero=0}var e=a("../utils");d.prototype={checkOffset:function(a){this.checkIndex(this.index+a)},checkIndex:function(a){if(this.length=this.index;b--)c=(c<<8)+this.byteAt(b);return this.index+=a,c},readString:function(a){return e.transformTo("string",this.readData(a))},readData:function(a){},lastIndexOfSignature:function(a){},readAndCheckSignature:function(a){},readDate:function(){var a=this.readInt(4);return new Date(Date.UTC((a>>25&127)+1980,(a>>21&15)-1,a>>16&31,a>>11&31,a>>5&63,(31&a)<<1))}},b.exports=d},{"../utils":32}],19:[function(a,b,c){"use strict";function d(a){e.call(this,a)}var e=a("./Uint8ArrayReader"),f=a("../utils");f.inherits(d,e),d.prototype.readData=function(a){this.checkOffset(a);var b=this.data.slice(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(a,b,c){"use strict";function d(a){e.call(this,a)}var e=a("./DataReader"),f=a("../utils");f.inherits(d,e),d.prototype.byteAt=function(a){return this.data.charCodeAt(this.zero+a)},d.prototype.lastIndexOfSignature=function(a){return this.data.lastIndexOf(a)-this.zero},d.prototype.readAndCheckSignature=function(a){var b=this.readData(4);return a===b},d.prototype.readData=function(a){this.checkOffset(a);var b=this.data.slice(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{"../utils":32,"./DataReader":18}],21:[function(a,b,c){"use strict";function d(a){e.call(this,a)}var e=a("./ArrayReader"),f=a("../utils");f.inherits(d,e),d.prototype.readData=function(a){if(this.checkOffset(a),0===a)return new Uint8Array(0);var b=this.data.subarray(this.zero+this.index,this.zero+this.index+a);return this.index+=a,b},b.exports=d},{"../utils":32,"./ArrayReader":17}],22:[function(a,b,c){"use strict";var d=a("../utils"),e=a("../support"),f=a("./ArrayReader"),g=a("./StringReader"),h=a("./NodeBufferReader"),i=a("./Uint8ArrayReader");b.exports=function(a){var b=d.getTypeOf(a);return d.checkSupport(b),"string"!==b||e.uint8array?"nodebuffer"===b?new h(a):e.uint8array?new i(d.transformTo("uint8array",a)):new f(d.transformTo("array",a)):new g(a)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(a,b,c){"use strict";c.LOCAL_FILE_HEADER="PK",c.CENTRAL_FILE_HEADER="PK",c.CENTRAL_DIRECTORY_END="PK",c.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",c.ZIP64_CENTRAL_DIRECTORY_END="PK",c.DATA_DESCRIPTOR="PK\b"},{}],24:[function(a,b,c){"use strict";function d(a){e.call(this,"ConvertWorker to "+a),this.destType=a}var e=a("./GenericWorker"),f=a("../utils");f.inherits(d,e),d.prototype.processChunk=function(a){this.push({data:f.transformTo(this.destType,a.data),meta:a.meta})},b.exports=d},{"../utils":32,"./GenericWorker":28}],25:[function(a,b,c){"use strict";function d(){e.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}var e=a("./GenericWorker"),f=a("../crc32"),g=a("../utils");g.inherits(d,e),d.prototype.processChunk=function(a){this.streamInfo.crc32=f(a.data,this.streamInfo.crc32||0),this.push(a)},b.exports=d},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(a,b,c){"use strict";function d(a){f.call(this,"DataLengthProbe for "+a),this.propName=a,this.withStreamInfo(a,0)}var e=a("../utils"),f=a("./GenericWorker");e.inherits(d,f),d.prototype.processChunk=function(a){if(a){var b=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=b+a.data.length}f.prototype.processChunk.call(this,a)},b.exports=d},{"../utils":32,"./GenericWorker":28}],27:[function(a,b,c){"use strict";function d(a){f.call(this,"DataWorker");var b=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,a.then(function(a){b.dataIsReady=!0,b.data=a,b.max=a&&a.length||0,b.type=e.getTypeOf(a),b.isPaused||b._tickAndRepeat()},function(a){b.error(a)})}var e=a("../utils"),f=a("./GenericWorker"),g=16384;e.inherits(d,f),d.prototype.cleanUp=function(){f.prototype.cleanUp.call(this),this.data=null},d.prototype.resume=function(){return!!f.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,e.delay(this._tickAndRepeat,[],this)),!0)},d.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(e.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},d.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var a=g,b=null,c=Math.min(this.max,this.index+a);if(this.index>=this.max)return this.end();switch(this.type){case"string":b=this.data.substring(this.index,c);break;case"uint8array":b=this.data.subarray(this.index,c);break;case"array":case"nodebuffer":b=this.data.slice(this.index,c)}return this.index=c,this.push({data:b,meta:{percent:this.max?this.index/this.max*100:0}})},b.exports=d},{"../utils":32,"./GenericWorker":28}],28:[function(a,b,c){"use strict";function d(a){this.name=a||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}d.prototype={push:function(a){this.emit("data",a)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(a){this.emit("error",a)}return!0},error:function(a){return!this.isFinished&&(this.isPaused?this.generatedError=a:(this.isFinished=!0,this.emit("error",a),this.previous&&this.previous.error(a),this.cleanUp()),!0)},on:function(a,b){return this._listeners[a].push(b),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(a,b){if(this._listeners[a])for(var c=0;c "+a:a}},b.exports=d},{}],29:[function(a,b,c){"use strict";function d(a,b,c){switch(a){case"blob":return h.newBlob(h.transformTo("arraybuffer",b),c);case"base64":return k.encode(b);default:return h.transformTo(a,b)}}function e(a,b){var c,d=0,e=null,f=0;for(c=0;c=252?6:k>=248?5:k>=240?4:k>=224?3:k>=192?2:1;j[254]=j[254]=1;var l=function(a){var b,c,d,e,f,h=a.length,i=0;for(e=0;e>>6,b[f++]=128|63&c):c<65536?(b[f++]=224|c>>>12,b[f++]=128|c>>>6&63,b[f++]=128|63&c):(b[f++]=240|c>>>18,b[f++]=128|c>>>12&63,b[f++]=128|c>>>6&63,b[f++]=128|63&c);return b},m=function(a,b){var c;for(b=b||a.length,b>a.length&&(b=a.length),c=b-1;c>=0&&128===(192&a[c]);)c--;return c<0?b:0===c?b:c+j[a[c]]>b?c:b},n=function(a){var b,c,d,e,g=a.length,h=new Array(2*g);for(c=0,b=0;b4)h[c++]=65533,b+=e-1;else{for(d&=2===e?31:3===e?15:7;e>1&&b1?h[c++]=65533:d<65536?h[c++]=d:(d-=65536,h[c++]=55296|d>>10&1023,h[c++]=56320|1023&d)}return h.length!==c&&(h.subarray?h=h.subarray(0,c):h.length=c),f.applyFromCharCode(h)};c.utf8encode=function(a){return g.nodebuffer?h.newBufferFrom(a,"utf-8"):l(a)},c.utf8decode=function(a){return g.nodebuffer?f.transformTo("nodebuffer",a).toString("utf-8"):(a=f.transformTo(g.uint8array?"uint8array":"array",a),n(a))},f.inherits(d,i),d.prototype.processChunk=function(a){var b=f.transformTo(g.uint8array?"uint8array":"array",a.data);if(this.leftOver&&this.leftOver.length){if(g.uint8array){var d=b;b=new Uint8Array(d.length+this.leftOver.length),b.set(this.leftOver,0),b.set(d,this.leftOver.length)}else b=this.leftOver.concat(b);this.leftOver=null}var e=m(b),h=b;e!==b.length&&(g.uint8array?(h=b.subarray(0,e),this.leftOver=b.subarray(e,b.length)):(h=b.slice(0,e),this.leftOver=b.slice(e,b.length))),this.push({data:c.utf8decode(h),meta:a.meta})},d.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:c.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},c.Utf8DecodeWorker=d,f.inherits(e,i),e.prototype.processChunk=function(a){this.push({data:c.utf8encode(a.data),meta:a.meta})},c.Utf8EncodeWorker=e},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(a,b,c){"use strict";function d(a){var b=null;return b=i.uint8array?new Uint8Array(a.length):new Array(a.length),f(a,b)}function e(a){return a}function f(a,b){for(var c=0;c1;)try{return n.stringifyByChunk(a,d,b)}catch(f){b=Math.floor(b/2)}return n.stringifyByChar(a)}function h(a,b){for(var c=0;c1)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var a,b;for(a=0;a0)this.isSignature(c,g.CENTRAL_FILE_HEADER)||(this.reader.zero=e);else if(e<0)throw new Error("Corrupted zip: missing "+Math.abs(e)+" bytes.")},prepareReader:function(a){this.reader=e(a)},load:function(a){this.prepareReader(a),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},b.exports=d},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utf8":31,"./utils":32,"./zipEntry":34}],34:[function(a,b,c){"use strict";function d(a,b){this.options=a,this.loadOptions=b}var e=a("./reader/readerFor"),f=a("./utils"),g=a("./compressedObject"),h=a("./crc32"),i=a("./utf8"),j=a("./compressions"),k=a("./support"),l=0,m=3,n=function(a){for(var b in j)if(j.hasOwnProperty(b)&&j[b].magic===a)return j[b];return null};d.prototype={isEncrypted:function(){return 1===(1&this.bitFlag)},useUTF8:function(){return 2048===(2048&this.bitFlag)},readLocalPart:function(a){var b,c;if(a.skip(22),this.fileNameLength=a.readInt(2),c=a.readInt(2),this.fileName=a.readData(this.fileNameLength),a.skip(c),this.compressedSize===-1||this.uncompressedSize===-1)throw new Error("Bug or corrupted zip : didn't get enough informations from the central directory (compressedSize === -1 || uncompressedSize === -1)");if(b=n(this.compressionMethod),null===b)throw new Error("Corrupted zip : compression "+f.pretty(this.compressionMethod)+" unknown (inner file : "+f.transformTo("string",this.fileName)+")");this.decompressed=new g(this.compressedSize,this.uncompressedSize,this.crc32,b,a.readData(this.compressedSize))},readCentralPart:function(a){this.versionMadeBy=a.readInt(2),a.skip(2),this.bitFlag=a.readInt(2),this.compressionMethod=a.readString(2),this.date=a.readDate(),this.crc32=a.readInt(4),this.compressedSize=a.readInt(4),this.uncompressedSize=a.readInt(4);var b=a.readInt(2);if(this.extraFieldsLength=a.readInt(2),this.fileCommentLength=a.readInt(2),this.diskNumberStart=a.readInt(2),this.internalFileAttributes=a.readInt(2),this.externalFileAttributes=a.readInt(4),this.localHeaderOffset=a.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");a.skip(b),this.readExtraFields(a),this.parseZIP64ExtraField(a),this.fileComment=a.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var a=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),a===l&&(this.dosPermissions=63&this.externalFileAttributes),a===m&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(a){if(this.extraFields[1]){var b=e(this.extraFields[1].value);this.uncompressedSize===f.MAX_VALUE_32BITS&&(this.uncompressedSize=b.readInt(8)),this.compressedSize===f.MAX_VALUE_32BITS&&(this.compressedSize=b.readInt(8)),this.localHeaderOffset===f.MAX_VALUE_32BITS&&(this.localHeaderOffset=b.readInt(8)),this.diskNumberStart===f.MAX_VALUE_32BITS&&(this.diskNumberStart=b.readInt(4))}},readExtraFields:function(a){var b,c,d,e=a.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});a.indexc;)b.push(arguments[c++]);return q[++p]=function(){h("function"==typeof a?a:Function(a),b)},d(p),p},n=function(a){delete q[a]},"process"==a("./_cof")(l)?d=function(a){l.nextTick(g(s,a,1))}:o?(e=new o,f=e.port2,e.port1.onmessage=t,d=g(f.postMessage,f,1)):k.addEventListener&&"function"==typeof postMessage&&!k.importScripts?(d=function(a){k.postMessage(a+"","*")},k.addEventListener("message",t,!1)):d=r in j("script")?function(a){i.appendChild(j("script"))[r]=function(){i.removeChild(this),s.call(a)}}:function(a){setTimeout(g(s,a,1),0)}),b.exports={set:m,clear:n}},{"./_cof":39,"./_ctx":41,"./_dom-create":43,"./_global":46,"./_html":48,"./_invoke":50}],55:[function(a,b,c){var d=a("./_is-object");b.exports=function(a,b){if(!d(a))return a;var c,e;if(b&&"function"==typeof(c=a.toString)&&!d(e=c.call(a)))return e;if("function"==typeof(c=a.valueOf)&&!d(e=c.call(a)))return e;if(!b&&"function"==typeof(c=a.toString)&&!d(e=c.call(a)))return e;throw TypeError("Can't convert object to primitive value")}},{"./_is-object":51}],56:[function(a,b,c){var d=a("./_export"),e=a("./_task");d(d.G+d.B,{setImmediate:e.set,clearImmediate:e.clear})},{"./_export":44,"./_task":54}],57:[function(a,b,c){(function(a){"use strict";function c(){k=!0;for(var a,b,c=l.length;c;){for(b=l,l=[],a=-1;++a0?b.windowBits=-b.windowBits:b.gzip&&b.windowBits>0&&b.windowBits<16&&(b.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new l,this.strm.avail_out=0;var c=h.deflateInit2(this.strm,b.level,b.method,b.windowBits,b.memLevel,b.strategy);if(c!==p)throw new Error(k[c]);if(b.header&&h.deflateSetHeader(this.strm,b.header),b.dictionary){var e;if(e="string"==typeof b.dictionary?j.string2buf(b.dictionary):"[object ArrayBuffer]"===m.call(b.dictionary)?new Uint8Array(b.dictionary):b.dictionary,c=h.deflateSetDictionary(this.strm,e),c!==p)throw new Error(k[c]);this._dict_set=!0}}function e(a,b){var c=new d(b);if(c.push(a,!0),c.err)throw c.msg||k[c.err];return c.result}function f(a,b){return b=b||{},b.raw=!0,e(a,b)}function g(a,b){return b=b||{},b.gzip=!0,e(a,b)}var h=a("./zlib/deflate"),i=a("./utils/common"),j=a("./utils/strings"),k=a("./zlib/messages"),l=a("./zlib/zstream"),m=Object.prototype.toString,n=0,o=4,p=0,q=1,r=2,s=-1,t=0,u=8;d.prototype.push=function(a,b){var c,d,e=this.strm,f=this.options.chunkSize;if(this.ended)return!1;d=b===~~b?b:b===!0?o:n,"string"==typeof a?e.input=j.string2buf(a):"[object ArrayBuffer]"===m.call(a)?e.input=new Uint8Array(a):e.input=a,e.next_in=0,e.avail_in=e.input.length;do{if(0===e.avail_out&&(e.output=new i.Buf8(f),e.next_out=0,e.avail_out=f),c=h.deflate(e,d),c!==q&&c!==p)return this.onEnd(c),this.ended=!0,!1;0!==e.avail_out&&(0!==e.avail_in||d!==o&&d!==r)||("string"===this.options.to?this.onData(j.buf2binstring(i.shrinkBuf(e.output,e.next_out))):this.onData(i.shrinkBuf(e.output,e.next_out)))}while((e.avail_in>0||0===e.avail_out)&&c!==q);return d===o?(c=h.deflateEnd(this.strm),this.onEnd(c),this.ended=!0,c===p):d!==r||(this.onEnd(p),e.avail_out=0,!0)},d.prototype.onData=function(a){this.chunks.push(a)},d.prototype.onEnd=function(a){a===p&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=a,this.msg=this.strm.msg},c.Deflate=d,c.deflate=e,c.deflateRaw=f,c.gzip=g},{"./utils/common":62,"./utils/strings":63,"./zlib/deflate":67,"./zlib/messages":72,"./zlib/zstream":74}],61:[function(a,b,c){"use strict";function d(a){if(!(this instanceof d))return new d(a);this.options=h.assign({chunkSize:16384,windowBits:0,to:""},a||{});var b=this.options;b.raw&&b.windowBits>=0&&b.windowBits<16&&(b.windowBits=-b.windowBits,0===b.windowBits&&(b.windowBits=-15)),!(b.windowBits>=0&&b.windowBits<16)||a&&a.windowBits||(b.windowBits+=32),b.windowBits>15&&b.windowBits<48&&0===(15&b.windowBits)&&(b.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new l,this.strm.avail_out=0;var c=g.inflateInit2(this.strm,b.windowBits);if(c!==j.Z_OK)throw new Error(k[c]);this.header=new m,g.inflateGetHeader(this.strm,this.header)}function e(a,b){var c=new d(b);if(c.push(a,!0),c.err)throw c.msg||k[c.err];return c.result}function f(a,b){return b=b||{},b.raw=!0,e(a,b)}var g=a("./zlib/inflate"),h=a("./utils/common"),i=a("./utils/strings"),j=a("./zlib/constants"),k=a("./zlib/messages"),l=a("./zlib/zstream"),m=a("./zlib/gzheader"),n=Object.prototype.toString;d.prototype.push=function(a,b){var c,d,e,f,k,l,m=this.strm,o=this.options.chunkSize,p=this.options.dictionary,q=!1;if(this.ended)return!1;d=b===~~b?b:b===!0?j.Z_FINISH:j.Z_NO_FLUSH,"string"==typeof a?m.input=i.binstring2buf(a):"[object ArrayBuffer]"===n.call(a)?m.input=new Uint8Array(a):m.input=a,m.next_in=0,m.avail_in=m.input.length;do{if(0===m.avail_out&&(m.output=new h.Buf8(o),m.next_out=0,m.avail_out=o),c=g.inflate(m,j.Z_NO_FLUSH),c===j.Z_NEED_DICT&&p&&(l="string"==typeof p?i.string2buf(p):"[object ArrayBuffer]"===n.call(p)?new Uint8Array(p):p,c=g.inflateSetDictionary(this.strm,l)),c===j.Z_BUF_ERROR&&q===!0&&(c=j.Z_OK,q=!1),c!==j.Z_STREAM_END&&c!==j.Z_OK)return this.onEnd(c),this.ended=!0,!1;m.next_out&&(0!==m.avail_out&&c!==j.Z_STREAM_END&&(0!==m.avail_in||d!==j.Z_FINISH&&d!==j.Z_SYNC_FLUSH)||("string"===this.options.to?(e=i.utf8border(m.output,m.next_out),f=m.next_out-e,k=i.buf2string(m.output,e),m.next_out=f,m.avail_out=o-f,f&&h.arraySet(m.output,m.output,e,f,0),this.onData(k)):this.onData(h.shrinkBuf(m.output,m.next_out)))),0===m.avail_in&&0===m.avail_out&&(q=!0)}while((m.avail_in>0||0===m.avail_out)&&c!==j.Z_STREAM_END);return c===j.Z_STREAM_END&&(d=j.Z_FINISH),d===j.Z_FINISH?(c=g.inflateEnd(this.strm),this.onEnd(c),this.ended=!0,c===j.Z_OK):d!==j.Z_SYNC_FLUSH||(this.onEnd(j.Z_OK),m.avail_out=0,!0)},d.prototype.onData=function(a){this.chunks.push(a)},d.prototype.onEnd=function(a){a===j.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=h.flattenChunks(this.chunks)),this.chunks=[],this.err=a,this.msg=this.strm.msg},c.Inflate=d,c.inflate=e,c.inflateRaw=f,c.ungzip=e},{"./utils/common":62,"./utils/strings":63,"./zlib/constants":65,"./zlib/gzheader":68,"./zlib/inflate":70,"./zlib/messages":72,"./zlib/zstream":74}],62:[function(a,b,c){"use strict";var d="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;c.assign=function(a){for(var b=Array.prototype.slice.call(arguments,1);b.length;){var c=b.shift();if(c){if("object"!=typeof c)throw new TypeError(c+"must be non-object");for(var d in c)c.hasOwnProperty(d)&&(a[d]=c[d])}}return a},c.shrinkBuf=function(a,b){return a.length===b?a:a.subarray?a.subarray(0,b):(a.length=b,a)};var e={arraySet:function(a,b,c,d,e){if(b.subarray&&a.subarray)return void a.set(b.subarray(c,c+d),e);for(var f=0;f=252?6:j>=248?5:j>=240?4:j>=224?3:j>=192?2:1;i[254]=i[254]=1,c.string2buf=function(a){var b,c,d,f,g,h=a.length,i=0;for(f=0;f>>6,b[g++]=128|63&c):c<65536?(b[g++]=224|c>>>12,b[g++]=128|c>>>6&63,b[g++]=128|63&c):(b[g++]=240|c>>>18,b[g++]=128|c>>>12&63,b[g++]=128|c>>>6&63,b[g++]=128|63&c);return b},c.buf2binstring=function(a){return d(a,a.length)},c.binstring2buf=function(a){for(var b=new e.Buf8(a.length),c=0,d=b.length;c4)j[e++]=65533,c+=g-1;else{for(f&=2===g?31:3===g?15:7;g>1&&c1?j[e++]=65533:f<65536?j[e++]=f:(f-=65536,j[e++]=55296|f>>10&1023,j[e++]=56320|1023&f)}return d(j,e)},c.utf8border=function(a,b){var c;for(b=b||a.length,b>a.length&&(b=a.length),c=b-1;c>=0&&128===(192&a[c]);)c--;return c<0?b:0===c?b:c+i[a[c]]>b?c:b}},{"./common":62}],64:[function(a,b,c){"use strict";function d(a,b,c,d){for(var e=65535&a|0,f=a>>>16&65535|0,g=0;0!==c;){g=c>2e3?2e3:c,c-=g;do e=e+b[d++]|0,f=f+e|0;while(--g);e%=65521,f%=65521}return e|f<<16|0; }b.exports=d},{}],65:[function(a,b,c){"use strict";b.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],66:[function(a,b,c){"use strict";function d(){for(var a,b=[],c=0;c<256;c++){a=c;for(var d=0;d<8;d++)a=1&a?3988292384^a>>>1:a>>>1;b[c]=a}return b}function e(a,b,c,d){var e=f,g=d+c;a^=-1;for(var h=d;h>>8^e[255&(a^b[h])];return a^-1}var f=d();b.exports=e},{}],67:[function(a,b,c){"use strict";function d(a,b){return a.msg=I[b],b}function e(a){return(a<<1)-(a>4?9:0)}function f(a){for(var b=a.length;--b>=0;)a[b]=0}function g(a){var b=a.state,c=b.pending;c>a.avail_out&&(c=a.avail_out),0!==c&&(E.arraySet(a.output,b.pending_buf,b.pending_out,c,a.next_out),a.next_out+=c,b.pending_out+=c,a.total_out+=c,a.avail_out-=c,b.pending-=c,0===b.pending&&(b.pending_out=0))}function h(a,b){F._tr_flush_block(a,a.block_start>=0?a.block_start:-1,a.strstart-a.block_start,b),a.block_start=a.strstart,g(a.strm)}function i(a,b){a.pending_buf[a.pending++]=b}function j(a,b){a.pending_buf[a.pending++]=b>>>8&255,a.pending_buf[a.pending++]=255&b}function k(a,b,c,d){var e=a.avail_in;return e>d&&(e=d),0===e?0:(a.avail_in-=e,E.arraySet(b,a.input,a.next_in,e,c),1===a.state.wrap?a.adler=G(a.adler,b,e,c):2===a.state.wrap&&(a.adler=H(a.adler,b,e,c)),a.next_in+=e,a.total_in+=e,e)}function l(a,b){var c,d,e=a.max_chain_length,f=a.strstart,g=a.prev_length,h=a.nice_match,i=a.strstart>a.w_size-la?a.strstart-(a.w_size-la):0,j=a.window,k=a.w_mask,l=a.prev,m=a.strstart+ka,n=j[f+g-1],o=j[f+g];a.prev_length>=a.good_match&&(e>>=2),h>a.lookahead&&(h=a.lookahead);do if(c=b,j[c+g]===o&&j[c+g-1]===n&&j[c]===j[f]&&j[++c]===j[f+1]){f+=2,c++;do;while(j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&fg){if(a.match_start=b,g=d,d>=h)break;n=j[f+g-1],o=j[f+g]}}while((b=l[b&k])>i&&0!==--e);return g<=a.lookahead?g:a.lookahead}function m(a){var b,c,d,e,f,g=a.w_size;do{if(e=a.window_size-a.lookahead-a.strstart,a.strstart>=g+(g-la)){E.arraySet(a.window,a.window,g,g,0),a.match_start-=g,a.strstart-=g,a.block_start-=g,c=a.hash_size,b=c;do d=a.head[--b],a.head[b]=d>=g?d-g:0;while(--c);c=g,b=c;do d=a.prev[--b],a.prev[b]=d>=g?d-g:0;while(--c);e+=g}if(0===a.strm.avail_in)break;if(c=k(a.strm,a.window,a.strstart+a.lookahead,e),a.lookahead+=c,a.lookahead+a.insert>=ja)for(f=a.strstart-a.insert,a.ins_h=a.window[f],a.ins_h=(a.ins_h<a.pending_buf_size-5&&(c=a.pending_buf_size-5);;){if(a.lookahead<=1){if(m(a),0===a.lookahead&&b===J)return ua;if(0===a.lookahead)break}a.strstart+=a.lookahead,a.lookahead=0;var d=a.block_start+c;if((0===a.strstart||a.strstart>=d)&&(a.lookahead=a.strstart-d,a.strstart=d,h(a,!1),0===a.strm.avail_out))return ua;if(a.strstart-a.block_start>=a.w_size-la&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=0,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.strstart>a.block_start&&(h(a,!1),0===a.strm.avail_out)?ua:ua}function o(a,b){for(var c,d;;){if(a.lookahead=ja&&(a.ins_h=(a.ins_h<=ja)if(d=F._tr_tally(a,a.strstart-a.match_start,a.match_length-ja),a.lookahead-=a.match_length,a.match_length<=a.max_lazy_match&&a.lookahead>=ja){a.match_length--;do a.strstart++,a.ins_h=(a.ins_h<=ja&&(a.ins_h=(a.ins_h<4096)&&(a.match_length=ja-1)),a.prev_length>=ja&&a.match_length<=a.prev_length){e=a.strstart+a.lookahead-ja,d=F._tr_tally(a,a.strstart-1-a.prev_match,a.prev_length-ja),a.lookahead-=a.prev_length-1,a.prev_length-=2;do++a.strstart<=e&&(a.ins_h=(a.ins_h<=ja&&a.strstart>0&&(e=a.strstart-1,d=g[e],d===g[++e]&&d===g[++e]&&d===g[++e])){f=a.strstart+ka;do;while(d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&ea.lookahead&&(a.match_length=a.lookahead)}if(a.match_length>=ja?(c=F._tr_tally(a,1,a.match_length-ja),a.lookahead-=a.match_length,a.strstart+=a.match_length,a.match_length=0):(c=F._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++),c&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=0,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?ua:va}function r(a,b){for(var c;;){if(0===a.lookahead&&(m(a),0===a.lookahead)){if(b===J)return ua;break}if(a.match_length=0,c=F._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++,c&&(h(a,!1),0===a.strm.avail_out))return ua}return a.insert=0,b===M?(h(a,!0),0===a.strm.avail_out?wa:xa):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?ua:va}function s(a,b,c,d,e){this.good_length=a,this.max_lazy=b,this.nice_length=c,this.max_chain=d,this.func=e}function t(a){a.window_size=2*a.w_size,f(a.head),a.max_lazy_match=D[a.level].max_lazy,a.good_match=D[a.level].good_length,a.nice_match=D[a.level].nice_length,a.max_chain_length=D[a.level].max_chain,a.strstart=0,a.block_start=0,a.lookahead=0,a.insert=0,a.match_length=a.prev_length=ja-1,a.match_available=0,a.ins_h=0}function u(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=$,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new E.Buf16(2*ha),this.dyn_dtree=new E.Buf16(2*(2*fa+1)),this.bl_tree=new E.Buf16(2*(2*ga+1)),f(this.dyn_ltree),f(this.dyn_dtree),f(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new E.Buf16(ia+1),this.heap=new E.Buf16(2*ea+1),f(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new E.Buf16(2*ea+1),f(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function v(a){var b;return a&&a.state?(a.total_in=a.total_out=0,a.data_type=Z,b=a.state,b.pending=0,b.pending_out=0,b.wrap<0&&(b.wrap=-b.wrap),b.status=b.wrap?na:sa,a.adler=2===b.wrap?0:1,b.last_flush=J,F._tr_init(b),O):d(a,Q)}function w(a){var b=v(a);return b===O&&t(a.state),b}function x(a,b){return a&&a.state?2!==a.state.wrap?Q:(a.state.gzhead=b,O):Q}function y(a,b,c,e,f,g){if(!a)return Q;var h=1;if(b===T&&(b=6),e<0?(h=0,e=-e):e>15&&(h=2,e-=16),f<1||f>_||c!==$||e<8||e>15||b<0||b>9||g<0||g>X)return d(a,Q);8===e&&(e=9);var i=new u;return a.state=i,i.strm=a,i.wrap=h,i.gzhead=null,i.w_bits=e,i.w_size=1<N||b<0)return a?d(a,Q):Q;if(h=a.state,!a.output||!a.input&&0!==a.avail_in||h.status===ta&&b!==M)return d(a,0===a.avail_out?S:Q);if(h.strm=a,c=h.last_flush,h.last_flush=b,h.status===na)if(2===h.wrap)a.adler=0,i(h,31),i(h,139),i(h,8),h.gzhead?(i(h,(h.gzhead.text?1:0)+(h.gzhead.hcrc?2:0)+(h.gzhead.extra?4:0)+(h.gzhead.name?8:0)+(h.gzhead.comment?16:0)),i(h,255&h.gzhead.time),i(h,h.gzhead.time>>8&255),i(h,h.gzhead.time>>16&255),i(h,h.gzhead.time>>24&255),i(h,9===h.level?2:h.strategy>=V||h.level<2?4:0),i(h,255&h.gzhead.os),h.gzhead.extra&&h.gzhead.extra.length&&(i(h,255&h.gzhead.extra.length),i(h,h.gzhead.extra.length>>8&255)),h.gzhead.hcrc&&(a.adler=H(a.adler,h.pending_buf,h.pending,0)),h.gzindex=0,h.status=oa):(i(h,0),i(h,0),i(h,0),i(h,0),i(h,0),i(h,9===h.level?2:h.strategy>=V||h.level<2?4:0),i(h,ya),h.status=sa);else{var m=$+(h.w_bits-8<<4)<<8,n=-1;n=h.strategy>=V||h.level<2?0:h.level<6?1:6===h.level?2:3,m|=n<<6,0!==h.strstart&&(m|=ma),m+=31-m%31,h.status=sa,j(h,m),0!==h.strstart&&(j(h,a.adler>>>16),j(h,65535&a.adler)),a.adler=1}if(h.status===oa)if(h.gzhead.extra){for(k=h.pending;h.gzindex<(65535&h.gzhead.extra.length)&&(h.pending!==h.pending_buf_size||(h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending!==h.pending_buf_size));)i(h,255&h.gzhead.extra[h.gzindex]),h.gzindex++;h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),h.gzindex===h.gzhead.extra.length&&(h.gzindex=0,h.status=pa)}else h.status=pa;if(h.status===pa)if(h.gzhead.name){k=h.pending;do{if(h.pending===h.pending_buf_size&&(h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending===h.pending_buf_size)){l=1;break}l=h.gzindexk&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),0===l&&(h.gzindex=0,h.status=qa)}else h.status=qa;if(h.status===qa)if(h.gzhead.comment){k=h.pending;do{if(h.pending===h.pending_buf_size&&(h.gzhead.hcrc&&h.pending>k&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),g(a),k=h.pending,h.pending===h.pending_buf_size)){l=1;break}l=h.gzindexk&&(a.adler=H(a.adler,h.pending_buf,h.pending-k,k)),0===l&&(h.status=ra)}else h.status=ra;if(h.status===ra&&(h.gzhead.hcrc?(h.pending+2>h.pending_buf_size&&g(a),h.pending+2<=h.pending_buf_size&&(i(h,255&a.adler),i(h,a.adler>>8&255),a.adler=0,h.status=sa)):h.status=sa),0!==h.pending){if(g(a),0===a.avail_out)return h.last_flush=-1,O}else if(0===a.avail_in&&e(b)<=e(c)&&b!==M)return d(a,S);if(h.status===ta&&0!==a.avail_in)return d(a,S);if(0!==a.avail_in||0!==h.lookahead||b!==J&&h.status!==ta){var o=h.strategy===V?r(h,b):h.strategy===W?q(h,b):D[h.level].func(h,b);if(o!==wa&&o!==xa||(h.status=ta),o===ua||o===wa)return 0===a.avail_out&&(h.last_flush=-1),O;if(o===va&&(b===K?F._tr_align(h):b!==N&&(F._tr_stored_block(h,0,0,!1),b===L&&(f(h.head),0===h.lookahead&&(h.strstart=0,h.block_start=0,h.insert=0))),g(a),0===a.avail_out))return h.last_flush=-1,O}return b!==M?O:h.wrap<=0?P:(2===h.wrap?(i(h,255&a.adler),i(h,a.adler>>8&255),i(h,a.adler>>16&255),i(h,a.adler>>24&255),i(h,255&a.total_in),i(h,a.total_in>>8&255),i(h,a.total_in>>16&255),i(h,a.total_in>>24&255)):(j(h,a.adler>>>16),j(h,65535&a.adler)),g(a),h.wrap>0&&(h.wrap=-h.wrap),0!==h.pending?O:P)}function B(a){var b;return a&&a.state?(b=a.state.status,b!==na&&b!==oa&&b!==pa&&b!==qa&&b!==ra&&b!==sa&&b!==ta?d(a,Q):(a.state=null,b===sa?d(a,R):O)):Q}function C(a,b){var c,d,e,g,h,i,j,k,l=b.length;if(!a||!a.state)return Q;if(c=a.state,g=c.wrap,2===g||1===g&&c.status!==na||c.lookahead)return Q;for(1===g&&(a.adler=G(a.adler,b,l,0)),c.wrap=0,l>=c.w_size&&(0===g&&(f(c.head),c.strstart=0,c.block_start=0,c.insert=0),k=new E.Buf8(c.w_size),E.arraySet(k,b,l-c.w_size,c.w_size,0),b=k,l=c.w_size),h=a.avail_in,i=a.next_in,j=a.input,a.avail_in=l,a.next_in=0,a.input=b,m(c);c.lookahead>=ja;){d=c.strstart,e=c.lookahead-(ja-1);do c.ins_h=(c.ins_h<>>24,p>>>=w,q-=w,w=v>>>16&255,0===w)C[h++]=65535&v;else{if(!(16&w)){if(0===(64&w)){v=r[(65535&v)+(p&(1<>>=w,q-=w),q<15&&(p+=B[f++]<>>24,p>>>=w,q-=w,w=v>>>16&255,!(16&w)){if(0===(64&w)){v=s[(65535&v)+(p&(1<k){a.msg="invalid distance too far back",c.mode=d;break a}if(p>>>=w,q-=w,w=h-i,y>w){if(w=y-w,w>m&&c.sane){a.msg="invalid distance too far back",c.mode=d;break a}if(z=0,A=o,0===n){if(z+=l-w,w2;)C[h++]=A[z++],C[h++]=A[z++],C[h++]=A[z++],x-=3;x&&(C[h++]=A[z++],x>1&&(C[h++]=A[z++]))}else{z=h-y;do C[h++]=C[z++],C[h++]=C[z++],C[h++]=C[z++],x-=3;while(x>2);x&&(C[h++]=C[z++],x>1&&(C[h++]=C[z++]))}break}}break}}while(f>3,f-=x,q-=x<<3,p&=(1<>>24&255)+(a>>>8&65280)+((65280&a)<<8)+((255&a)<<24)}function e(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new s.Buf16(320),this.work=new s.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function f(a){var b;return a&&a.state?(b=a.state,a.total_in=a.total_out=b.total=0,a.msg="",b.wrap&&(a.adler=1&b.wrap),b.mode=L,b.last=0,b.havedict=0,b.dmax=32768,b.head=null,b.hold=0,b.bits=0,b.lencode=b.lendyn=new s.Buf32(pa),b.distcode=b.distdyn=new s.Buf32(qa),b.sane=1,b.back=-1,D):G}function g(a){var b;return a&&a.state?(b=a.state,b.wsize=0,b.whave=0,b.wnext=0,f(a)):G}function h(a,b){var c,d;return a&&a.state?(d=a.state,b<0?(c=0,b=-b):(c=(b>>4)+1,b<48&&(b&=15)),b&&(b<8||b>15)?G:(null!==d.window&&d.wbits!==b&&(d.window=null),d.wrap=c,d.wbits=b,g(a))):G}function i(a,b){var c,d;return a?(d=new e,a.state=d,d.window=null,c=h(a,b),c!==D&&(a.state=null),c):G}function j(a){return i(a,sa)}function k(a){if(ta){var b;for(q=new s.Buf32(512),r=new s.Buf32(32),b=0;b<144;)a.lens[b++]=8;for(;b<256;)a.lens[b++]=9;for(;b<280;)a.lens[b++]=7;for(;b<288;)a.lens[b++]=8;for(w(y,a.lens,0,288,q,0,a.work,{bits:9}),b=0;b<32;)a.lens[b++]=5;w(z,a.lens,0,32,r,0,a.work,{bits:5}),ta=!1}a.lencode=q,a.lenbits=9,a.distcode=r,a.distbits=5}function l(a,b,c,d){var e,f=a.state;return null===f.window&&(f.wsize=1<=f.wsize?(s.arraySet(f.window,b,c-f.wsize,f.wsize,0),f.wnext=0,f.whave=f.wsize):(e=f.wsize-f.wnext,e>d&&(e=d),s.arraySet(f.window,b,c-d,e,f.wnext),d-=e,d?(s.arraySet(f.window,b,c-d,d,0),f.wnext=d,f.whave=f.wsize):(f.wnext+=e,f.wnext===f.wsize&&(f.wnext=0),f.whave>>8&255,c.check=u(c.check,Ba,2,0),m=0,n=0,c.mode=M;break}if(c.flags=0,c.head&&(c.head.done=!1),!(1&c.wrap)||(((255&m)<<8)+(m>>8))%31){a.msg="incorrect header check",c.mode=ma;break}if((15&m)!==K){a.msg="unknown compression method",c.mode=ma;break}if(m>>>=4,n-=4,wa=(15&m)+8,0===c.wbits)c.wbits=wa;else if(wa>c.wbits){a.msg="invalid window size",c.mode=ma;break}c.dmax=1<>8&1),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=u(c.check,Ba,2,0)),m=0,n=0,c.mode=N;case N:for(;n<32;){if(0===i)break a;i--,m+=e[g++]<>>8&255,Ba[2]=m>>>16&255,Ba[3]=m>>>24&255,c.check=u(c.check,Ba,4,0)),m=0,n=0,c.mode=O;case O:for(;n<16;){if(0===i)break a;i--,m+=e[g++]<>8),512&c.flags&&(Ba[0]=255&m,Ba[1]=m>>>8&255,c.check=u(c.check,Ba,2,0)),m=0,n=0,c.mode=P;case P:if(1024&c.flags){for(;n<16;){if(0===i)break a;i--,m+=e[g++]<>>8&255,c.check=u(c.check,Ba,2,0)),m=0,n=0}else c.head&&(c.head.extra=null);c.mode=Q;case Q:if(1024&c.flags&&(q=c.length,q>i&&(q=i),q&&(c.head&&(wa=c.head.extra_len-c.length,c.head.extra||(c.head.extra=new Array(c.head.extra_len)),s.arraySet(c.head.extra,e,g,q,wa)),512&c.flags&&(c.check=u(c.check,e,q,g)),i-=q,g+=q,c.length-=q),c.length))break a;c.length=0,c.mode=R;case R:if(2048&c.flags){if(0===i)break a;q=0;do wa=e[g+q++],c.head&&wa&&c.length<65536&&(c.head.name+=String.fromCharCode(wa));while(wa&&q>9&1,c.head.done=!0),a.adler=c.check=0,c.mode=W;break;case U:for(;n<32;){if(0===i)break a;i--,m+=e[g++]<>>=7&n,n-=7&n,c.mode=ja;break}for(;n<3;){if(0===i)break a;i--,m+=e[g++]<>>=1,n-=1,3&m){case 0:c.mode=Y;break;case 1:if(k(c),c.mode=ca,b===C){m>>>=2,n-=2;break a}break;case 2:c.mode=_;break;case 3:a.msg="invalid block type",c.mode=ma}m>>>=2,n-=2;break;case Y:for(m>>>=7&n,n-=7&n;n<32;){if(0===i)break a;i--,m+=e[g++]<>>16^65535)){a.msg="invalid stored block lengths",c.mode=ma;break}if(c.length=65535&m,m=0,n=0,c.mode=Z,b===C)break a;case Z:c.mode=$;case $:if(q=c.length){if(q>i&&(q=i),q>j&&(q=j),0===q)break a;s.arraySet(f,e,g,q,h),i-=q,g+=q,j-=q,h+=q,c.length-=q;break}c.mode=W;break;case _:for(;n<14;){if(0===i)break a;i--,m+=e[g++]<>>=5,n-=5,c.ndist=(31&m)+1,m>>>=5,n-=5,c.ncode=(15&m)+4,m>>>=4,n-=4,c.nlen>286||c.ndist>30){a.msg="too many length or distance symbols",c.mode=ma;break}c.have=0,c.mode=aa;case aa:for(;c.have>>=3,n-=3}for(;c.have<19;)c.lens[Ca[c.have++]]=0;if(c.lencode=c.lendyn,c.lenbits=7,ya={bits:c.lenbits},xa=w(x,c.lens,0,19,c.lencode,0,c.work,ya),c.lenbits=ya.bits,xa){a.msg="invalid code lengths set",c.mode=ma;break}c.have=0,c.mode=ba;case ba:for(;c.have>>24,ra=Aa>>>16&255,sa=65535&Aa,!(qa<=n);){if(0===i)break a;i--,m+=e[g++]<>>=qa,n-=qa,c.lens[c.have++]=sa;else{if(16===sa){for(za=qa+2;n>>=qa,n-=qa,0===c.have){a.msg="invalid bit length repeat",c.mode=ma;break}wa=c.lens[c.have-1],q=3+(3&m),m>>>=2,n-=2}else if(17===sa){for(za=qa+3;n>>=qa,n-=qa,wa=0,q=3+(7&m),m>>>=3,n-=3}else{for(za=qa+7;n>>=qa,n-=qa,wa=0,q=11+(127&m),m>>>=7,n-=7}if(c.have+q>c.nlen+c.ndist){a.msg="invalid bit length repeat",c.mode=ma;break}for(;q--;)c.lens[c.have++]=wa}}if(c.mode===ma)break;if(0===c.lens[256]){a.msg="invalid code -- missing end-of-block",c.mode=ma;break}if(c.lenbits=9,ya={bits:c.lenbits},xa=w(y,c.lens,0,c.nlen,c.lencode,0,c.work,ya),c.lenbits=ya.bits,xa){a.msg="invalid literal/lengths set",c.mode=ma;break}if(c.distbits=6,c.distcode=c.distdyn,ya={bits:c.distbits},xa=w(z,c.lens,c.nlen,c.ndist,c.distcode,0,c.work,ya),c.distbits=ya.bits,xa){a.msg="invalid distances set",c.mode=ma;break}if(c.mode=ca,b===C)break a;case ca:c.mode=da;case da:if(i>=6&&j>=258){a.next_out=h,a.avail_out=j,a.next_in=g,a.avail_in=i,c.hold=m,c.bits=n,v(a,p),h=a.next_out,f=a.output,j=a.avail_out,g=a.next_in,e=a.input,i=a.avail_in,m=c.hold,n=c.bits,c.mode===W&&(c.back=-1);break}for(c.back=0;Aa=c.lencode[m&(1<>>24,ra=Aa>>>16&255,sa=65535&Aa,!(qa<=n);){if(0===i)break a;i--,m+=e[g++]<>ta)],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(ta+qa<=n);){if(0===i)break a;i--,m+=e[g++]<>>=ta,n-=ta,c.back+=ta}if(m>>>=qa,n-=qa,c.back+=qa,c.length=sa,0===ra){c.mode=ia;break}if(32&ra){c.back=-1,c.mode=W;break}if(64&ra){a.msg="invalid literal/length code",c.mode=ma;break}c.extra=15&ra,c.mode=ea;case ea:if(c.extra){for(za=c.extra;n>>=c.extra,n-=c.extra,c.back+=c.extra}c.was=c.length,c.mode=fa;case fa:for(;Aa=c.distcode[m&(1<>>24,ra=Aa>>>16&255,sa=65535&Aa,!(qa<=n);){if(0===i)break a;i--,m+=e[g++]<>ta)],qa=Aa>>>24,ra=Aa>>>16&255,sa=65535&Aa,!(ta+qa<=n);){if(0===i)break a;i--,m+=e[g++]<>>=ta,n-=ta,c.back+=ta}if(m>>>=qa,n-=qa,c.back+=qa,64&ra){a.msg="invalid distance code",c.mode=ma;break}c.offset=sa,c.extra=15&ra,c.mode=ga;case ga:if(c.extra){for(za=c.extra;n>>=c.extra,n-=c.extra,c.back+=c.extra}if(c.offset>c.dmax){a.msg="invalid distance too far back",c.mode=ma;break}c.mode=ha;case ha:if(0===j)break a;if(q=p-j,c.offset>q){if(q=c.offset-q,q>c.whave&&c.sane){a.msg="invalid distance too far back",c.mode=ma;break}q>c.wnext?(q-=c.wnext,r=c.wsize-q):r=c.wnext-q,q>c.length&&(q=c.length),pa=c.window}else pa=f,r=h-c.offset,q=c.length;q>j&&(q=j),j-=q,c.length-=q;do f[h++]=pa[r++];while(--q);0===c.length&&(c.mode=da);break;case ia:if(0===j)break a;f[h++]=c.length,j--,c.mode=da;break;case ja:if(c.wrap){for(;n<32;){if(0===i)break a;i--,m|=e[g++]<=1&&0===P[G];G--);if(H>G&&(H=G),0===G)return p[q++]=20971520,p[q++]=20971520,s.bits=1,0;for(F=1;F0&&(a===h||1!==G))return-1;for(Q[1]=0,D=1;Df||a===j&&L>g)return 1;for(;;){z=D-J,r[E]y?(A=R[S+r[E]],B=N[O+r[E]]):(A=96,B=0),t=1<>J)+u]=z<<24|A<<16|B|0;while(0!==u);for(t=1<>=1;if(0!==t?(M&=t-1,M+=t):M=0,E++,0===--P[D]){if(D===G)break;D=b[c+r[E]]}if(D>H&&(M&w)!==v){for(0===J&&(J=H),x+=F,I=D-J,K=1<f||a===j&&L>g)return 1;v=M&w,p[v]=H<<24|I<<16|x-q|0}}return 0!==M&&(p[x+M]=D-J<<24|64<<16|0),s.bits=H,0}},{"../utils/common":62}],72:[function(a,b,c){"use strict";b.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],73:[function(a,b,c){"use strict";function d(a){for(var b=a.length;--b>=0;)a[b]=0}function e(a,b,c,d,e){this.static_tree=a,this.extra_bits=b,this.extra_base=c,this.elems=d,this.max_length=e,this.has_stree=a&&a.length}function f(a,b){this.dyn_tree=a,this.max_code=0,this.stat_desc=b}function g(a){return a<256?ia[a]:ia[256+(a>>>7)]}function h(a,b){a.pending_buf[a.pending++]=255&b,a.pending_buf[a.pending++]=b>>>8&255}function i(a,b,c){a.bi_valid>X-c?(a.bi_buf|=b<>X-a.bi_valid,a.bi_valid+=c-X):(a.bi_buf|=b<>>=1,c<<=1;while(--b>0);return c>>>1}function l(a){16===a.bi_valid?(h(a,a.bi_buf),a.bi_buf=0,a.bi_valid=0):a.bi_valid>=8&&(a.pending_buf[a.pending++]=255&a.bi_buf,a.bi_buf>>=8,a.bi_valid-=8)}function m(a,b){var c,d,e,f,g,h,i=b.dyn_tree,j=b.max_code,k=b.stat_desc.static_tree,l=b.stat_desc.has_stree,m=b.stat_desc.extra_bits,n=b.stat_desc.extra_base,o=b.stat_desc.max_length,p=0;for(f=0;f<=W;f++)a.bl_count[f]=0;for(i[2*a.heap[a.heap_max]+1]=0, c=a.heap_max+1;co&&(f=o,p++),i[2*d+1]=f,d>j||(a.bl_count[f]++,g=0,d>=n&&(g=m[d-n]),h=i[2*d],a.opt_len+=h*(f+g),l&&(a.static_len+=h*(k[2*d+1]+g)));if(0!==p){do{for(f=o-1;0===a.bl_count[f];)f--;a.bl_count[f]--,a.bl_count[f+1]+=2,a.bl_count[o]--,p-=2}while(p>0);for(f=o;0!==f;f--)for(d=a.bl_count[f];0!==d;)e=a.heap[--c],e>j||(i[2*e+1]!==f&&(a.opt_len+=(f-i[2*e+1])*i[2*e],i[2*e+1]=f),d--)}}function n(a,b,c){var d,e,f=new Array(W+1),g=0;for(d=1;d<=W;d++)f[d]=g=g+c[d-1]<<1;for(e=0;e<=b;e++){var h=a[2*e+1];0!==h&&(a[2*e]=k(f[h]++,h))}}function o(){var a,b,c,d,f,g=new Array(W+1);for(c=0,d=0;d>=7;d8?h(a,a.bi_buf):a.bi_valid>0&&(a.pending_buf[a.pending++]=a.bi_buf),a.bi_buf=0,a.bi_valid=0}function r(a,b,c,d){q(a),d&&(h(a,c),h(a,~c)),G.arraySet(a.pending_buf,a.window,b,c,a.pending),a.pending+=c}function s(a,b,c,d){var e=2*b,f=2*c;return a[e]>1;c>=1;c--)t(a,f,c);e=i;do c=a.heap[1],a.heap[1]=a.heap[a.heap_len--],t(a,f,1),d=a.heap[1],a.heap[--a.heap_max]=c,a.heap[--a.heap_max]=d,f[2*e]=f[2*c]+f[2*d],a.depth[e]=(a.depth[c]>=a.depth[d]?a.depth[c]:a.depth[d])+1,f[2*c+1]=f[2*d+1]=e,a.heap[1]=e++,t(a,f,1);while(a.heap_len>=2);a.heap[--a.heap_max]=a.heap[1],m(a,b),n(f,j,a.bl_count)}function w(a,b,c){var d,e,f=-1,g=b[1],h=0,i=7,j=4;for(0===g&&(i=138,j=3),b[2*(c+1)+1]=65535,d=0;d<=c;d++)e=g,g=b[2*(d+1)+1],++h=3&&0===a.bl_tree[2*ea[b]+1];b--);return a.opt_len+=3*(b+1)+5+5+4,b}function z(a,b,c,d){var e;for(i(a,b-257,5),i(a,c-1,5),i(a,d-4,4),e=0;e>>=1)if(1&c&&0!==a.dyn_ltree[2*b])return I;if(0!==a.dyn_ltree[18]||0!==a.dyn_ltree[20]||0!==a.dyn_ltree[26])return J;for(b=32;b0?(a.strm.data_type===K&&(a.strm.data_type=A(a)),v(a,a.l_desc),v(a,a.d_desc),g=y(a),e=a.opt_len+3+7>>>3,f=a.static_len+3+7>>>3,f<=e&&(e=f)):e=f=c+5,c+4<=e&&b!==-1?C(a,b,c,d):a.strategy===H||f===e?(i(a,(M<<1)+(d?1:0),3),u(a,ga,ha)):(i(a,(N<<1)+(d?1:0),3),z(a,a.l_desc.max_code+1,a.d_desc.max_code+1,g+1),u(a,a.dyn_ltree,a.dyn_dtree)),p(a),d&&q(a)}function F(a,b,c){return a.pending_buf[a.d_buf+2*a.last_lit]=b>>>8&255,a.pending_buf[a.d_buf+2*a.last_lit+1]=255&b,a.pending_buf[a.l_buf+a.last_lit]=255&c,a.last_lit++,0===b?a.dyn_ltree[2*c]++:(a.matches++,b--,a.dyn_ltree[2*(ja[c]+R+1)]++,a.dyn_dtree[2*g(b)]++),a.last_lit===a.lit_bufsize-1}var G=a("../utils/common"),H=4,I=0,J=1,K=2,L=0,M=1,N=2,O=3,P=258,Q=29,R=256,S=R+1+Q,T=30,U=19,V=2*S+1,W=15,X=16,Y=7,Z=256,$=16,_=17,aa=18,ba=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],ca=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],da=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],ea=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],fa=512,ga=new Array(2*(S+2));d(ga);var ha=new Array(2*T);d(ha);var ia=new Array(fa);d(ia);var ja=new Array(P-O+1);d(ja);var ka=new Array(Q);d(ka);var la=new Array(T);d(la);var ma,na,oa,pa=!1;c._tr_init=B,c._tr_stored_block=C,c._tr_flush_block=E,c._tr_tally=F,c._tr_align=D},{"../utils/common":62}],74:[function(a,b,c){"use strict";function d(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}b.exports=d},{}]},{},[10])(10)}); /*! JSZipUtils - A collection of cross-browser utilities to go along with JSZip. (c) 2014 Stuart Knightley, David Duponchel Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip-utils/master/LICENSE.markdown. */ !function(a){"object"==typeof exports?module.exports=a():"function"==typeof define&&define.amd?define(a):"undefined"!=typeof window?window.JSZipUtils=a():"undefined"!=typeof global?global.JSZipUtils=a():"undefined"!=typeof self&&(self.JSZipUtils=a())}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);throw new Error("Cannot find module '"+g+"'")}var j=c[g]={exports:{}};b[g][0].call(j.exports,function(a){var c=b[g][1][a];return e(c?c:a)},j,j.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g=b.status} function click(a){try{a.dispatchEvent(new MouseEvent("click"))}catch(e){var b=document.createEvent("MouseEvents");b.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null);a.dispatchEvent(b)}} var saveAs=_global.saveAs||"object"!==typeof window||window!==_global?function(){}:"download"in HTMLAnchorElement.prototype?function(a,b,e){var c=_global.URL||_global.webkitURL,d=document.createElement("a");b=b||a.name||"download";d.download=b;d.rel="noopener";"string"===typeof a?(d.href=a,d.origin!==location.origin?corsEnabled(d.href)?download(a,b,e):click(d,d.target="_blank"):click(d)):(d.href=c.createObjectURL(a),setTimeout(function(){c.revokeObjectURL(d.href)},4E4),setTimeout(function(){click(d)}, 0))}:"msSaveOrOpenBlob"in navigator?function(a,b,e){b=b||a.name||"download";if("string"===typeof a)if(corsEnabled(a))download(a,b,e);else{var c=document.createElement("a");c.href=a;c.target="_blank";setTimeout(function(){click(c)})}else navigator.msSaveOrOpenBlob(bom(a,e),b)}:function(a,b,e,c){if(c=c||open("","_blank"))c.document.title=c.document.body.innerText="downloading...";if("string"===typeof a)return download(a,b,e);b="application/octet-stream"===a.type;e=/constructor/i.test(_global.HTMLElement)|| _global.safari;var d=/CriOS\/[\d]+/.test(navigator.userAgent);if((d||b&&e)&&"object"===typeof FileReader){var f=new FileReader;f.onloadend=function(){var a=f.result;a=d?a:a.replace(/^data:[^;]*;/,"data:attachment/file;");c?c.location.href=a:location=a;c=null};f.readAsDataURL(a)}else{var h=_global.URL||_global.webkitURL,g=h.createObjectURL(a);c?c.location=g:location.href=g;c=null;setTimeout(function(){h.revokeObjectURL(g)},4E4)}};_global.saveAs=saveAs.saveAs=saveAs; "undefined"!==typeof module&&(module.exports=saveAs); /*! jQuery UI - v1.12.1 - 2019-03-20 * http://jqueryui.com * Includes: widget.js, position.js, data.js, disable-selection.js, focusable.js, form-reset-mixin.js, jquery-1-7.js, keycode.js, labels.js, scroll-parent.js, tabbable.js, unique-id.js, widgets/draggable.js, widgets/resizable.js, widgets/button.js, widgets/checkboxradio.js, widgets/controlgroup.js, widgets/dialog.js, widgets/menu.js, widgets/mouse.js, widgets/slider.js, widgets/tooltip.js, effect.js, effects/effect-slide.js * Copyright jQuery Foundation and other contributors; Licensed MIT */ (function(t){"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)})(function(t){function e(t){for(var e=t.css("visibility");"inherit"===e;)t=t.parent(),e=t.css("visibility");return"hidden"!==e}t.ui=t.ui||{},t.ui.version="1.12.1";var i=0,s=Array.prototype.slice;t.cleanData=function(e){return function(i){var s,n,o;for(o=0;null!=(n=i[o]);o++)try{s=t._data(n,"events"),s&&s.remove&&t(n).triggerHandler("remove")}catch(a){}e(i)}}(t.cleanData),t.widget=function(e,i,s){var n,o,a,r={},l=e.split(".")[0];e=e.split(".")[1];var h=l+"-"+e;return s||(s=i,i=t.Widget),t.isArray(s)&&(s=t.extend.apply(null,[{}].concat(s))),t.expr[":"][h.toLowerCase()]=function(e){return!!t.data(e,h)},t[l]=t[l]||{},n=t[l][e],o=t[l][e]=function(t,e){return this._createWidget?(arguments.length&&this._createWidget(t,e),void 0):new o(t,e)},t.extend(o,n,{version:s.version,_proto:t.extend({},s),_childConstructors:[]}),a=new i,a.options=t.widget.extend({},a.options),t.each(s,function(e,s){return t.isFunction(s)?(r[e]=function(){function t(){return i.prototype[e].apply(this,arguments)}function n(t){return i.prototype[e].apply(this,t)}return function(){var e,i=this._super,o=this._superApply;return this._super=t,this._superApply=n,e=s.apply(this,arguments),this._super=i,this._superApply=o,e}}(),void 0):(r[e]=s,void 0)}),o.prototype=t.widget.extend(a,{widgetEventPrefix:n?a.widgetEventPrefix||e:e},r,{constructor:o,namespace:l,widgetName:e,widgetFullName:h}),n?(t.each(n._childConstructors,function(e,i){var s=i.prototype;t.widget(s.namespace+"."+s.widgetName,o,i._proto)}),delete n._childConstructors):i._childConstructors.push(o),t.widget.bridge(e,o),o},t.widget.extend=function(e){for(var i,n,o=s.call(arguments,1),a=0,r=o.length;r>a;a++)for(i in o[a])n=o[a][i],o[a].hasOwnProperty(i)&&void 0!==n&&(e[i]=t.isPlainObject(n)?t.isPlainObject(e[i])?t.widget.extend({},e[i],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,i){var n=i.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=s.call(arguments,1),l=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(l=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(l=i&&i.jquery?l.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):l=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new i(o,this))})),l}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
",options:{classes:{},disabled:!1,create:null},_createWidget:function(e,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var l=s.match(/^([\w:-]*)\s*(.*)$/),h=l[1]+o.eventNamespace,c=l[2];c?n.on(h,c,r):i.on(h,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,function(){function e(t,e,i){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?i/100:1)]}function i(e,i){return parseInt(t.css(e,i),10)||0}function s(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}var n,o=Math.max,a=Math.abs,r=/left|center|right/,l=/top|center|bottom/,h=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,u=/%$/,d=t.fn.position;t.position={scrollbarWidth:function(){if(void 0!==n)return n;var e,i,s=t("
"),o=s.children()[0];return t("body").append(s),e=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,e===i&&(i=s[0].clientWidth),s.remove(),n=e-i},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.widthi?"left":e>0?"right":"center",vertical:0>r?"top":s>0?"bottom":"middle"};h>p&&p>a(e+i)&&(u.horizontal="center"),c>f&&f>a(s+r)&&(u.vertical="middle"),u.important=o(a(e),a(i))>o(a(s),a(r))?"horizontal":"vertical",n.using.call(this,t,u)}),l.offset(t.extend(D,{using:r}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,l=n-r,h=r+e.collisionWidth-a-n;e.collisionWidth>a?l>0&&0>=h?(i=t.left+l+e.collisionWidth-a-n,t.left+=l-i):t.left=h>0&&0>=l?n:l>h?n+a-e.collisionWidth:n:l>0?t.left+=l:h>0?t.left-=h:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,l=n-r,h=r+e.collisionHeight-a-n;e.collisionHeight>a?l>0&&0>=h?(i=t.top+l+e.collisionHeight-a-n,t.top+=l-i):t.top=h>0&&0>=l?n:l>h?n+a-e.collisionHeight:n:l>0?t.top+=l:h>0?t.top-=h:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,o=n.offset.left+n.scrollLeft,r=n.width,l=n.isWindow?n.scrollLeft:n.offset.left,h=t.left-e.collisionPosition.marginLeft,c=h-l,u=h+e.collisionWidth-r-l,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-r-o,(0>i||a(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-l,(s>0||u>a(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,o=n.offset.top+n.scrollTop,r=n.height,l=n.isWindow?n.scrollTop:n.offset.top,h=t.top-e.collisionPosition.marginTop,c=h-l,u=h+e.collisionHeight-r-l,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,g=-2*e.offset[1];0>c?(s=t.top+p+f+g+e.collisionHeight-r-o,(0>s||a(c)>s)&&(t.top+=p+f+g)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+g-l,(i>0||u>a(i))&&(t.top+=p+f+g))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}}}(),t.ui.position,t.extend(t.expr[":"],{data:t.expr.createPseudo?t.expr.createPseudo(function(e){return function(i){return!!t.data(i,e)}}):function(e,i,s){return!!t.data(e,s[3])}}),t.fn.extend({disableSelection:function(){var t="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}}(),enableSelection:function(){return this.off(".ui-disableSelection")}}),t.ui.focusable=function(i,s){var n,o,a,r,l,h=i.nodeName.toLowerCase();return"area"===h?(n=i.parentNode,o=n.name,i.href&&o&&"map"===n.nodeName.toLowerCase()?(a=t("img[usemap='#"+o+"']"),a.length>0&&a.is(":visible")):!1):(/^(input|select|textarea|button|object)$/.test(h)?(r=!i.disabled,r&&(l=t(i).closest("fieldset")[0],l&&(r=!l.disabled))):r="a"===h?i.href||s:s,r&&t(i).is(":visible")&&e(t(i)))},t.extend(t.expr[":"],{focusable:function(e){return t.ui.focusable(e,null!=t.attr(e,"tabindex"))}}),t.ui.focusable,t.fn.form=function(){return"string"==typeof this[0].form?this.closest("form"):t(this[0].form)},t.ui.formResetMixin={_formResetHandler:function(){var e=t(this);setTimeout(function(){var i=e.data("ui-form-reset-instances");t.each(i,function(){this.refresh()})})},_bindFormResetHandler:function(){if(this.form=this.element.form(),this.form.length){var t=this.form.data("ui-form-reset-instances")||[];t.length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t)}},_unbindFormResetHandler:function(){if(this.form.length){var e=this.form.data("ui-form-reset-instances");e.splice(t.inArray(this,e),1),e.length?this.form.data("ui-form-reset-instances",e):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset")}}},"1.7"===t.fn.jquery.substring(0,3)&&(t.each(["Width","Height"],function(e,i){function s(e,i,s,o){return t.each(n,function(){i-=parseFloat(t.css(e,"padding"+this))||0,s&&(i-=parseFloat(t.css(e,"border"+this+"Width"))||0),o&&(i-=parseFloat(t.css(e,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],o=i.toLowerCase(),a={innerWidth:t.fn.innerWidth,innerHeight:t.fn.innerHeight,outerWidth:t.fn.outerWidth,outerHeight:t.fn.outerHeight};t.fn["inner"+i]=function(e){return void 0===e?a["inner"+i].call(this):this.each(function(){t(this).css(o,s(this,e)+"px")})},t.fn["outer"+i]=function(e,n){return"number"!=typeof e?a["outer"+i].call(this,e):this.each(function(){t(this).css(o,s(this,e,!0,n)+"px")})}}),t.fn.addBack=function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}),t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.ui.escapeSelector=function(){var t=/([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g;return function(e){return e.replace(t,"\\$1")}}(),t.fn.labels=function(){var e,i,s,n,o;return this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(n=this.eq(0).parents("label"),s=this.attr("id"),s&&(e=this.eq(0).parents().last(),o=e.add(e.length?e.siblings():this.siblings()),i="label[for='"+t.ui.escapeSelector(s)+"']",n=n.add(o.find(i).addBack(i))),this.pushStack(n))},t.fn.scrollParent=function(e){var i=this.css("position"),s="absolute"===i,n=e?/(auto|scroll|hidden)/:/(auto|scroll)/,o=this.parents().filter(function(){var e=t(this);return s&&"static"===e.css("position")?!1:n.test(e.css("overflow")+e.css("overflow-y")+e.css("overflow-x"))}).eq(0);return"fixed"!==i&&o.length?o:t(this[0].ownerDocument||document)},t.extend(t.expr[":"],{tabbable:function(e){var i=t.attr(e,"tabindex"),s=null!=i;return(!s||i>=0)&&t.ui.focusable(e,s)}}),t.fn.extend({uniqueId:function(){var t=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&t(this).removeAttr("id")})}}),t.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var n=!1;t(document).on("mouseup",function(){n=!1}),t.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(e){if(!n){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(e),this._mouseDownEvent=e;var i=this,s=1===e.which,o="string"==typeof this.options.cancel&&e.target.nodeName?t(e.target).closest(this.options.cancel).length:!1;return s&&!o&&this._mouseCapture(e)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(e)!==!1,!this._mouseStarted)?(e.preventDefault(),!0):(!0===t.data(e.target,this.widgetName+".preventClickEvent")&&t.removeData(e.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return i._mouseMove(t)},this._mouseUpDelegate=function(t){return i._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),e.preventDefault(),n=!0,!0)):!0}},_mouseMove:function(e){if(this._mouseMoved){if(t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button)return this._mouseUp(e);if(!e.which)if(e.originalEvent.altKey||e.originalEvent.ctrlKey||e.originalEvent.metaKey||e.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(e)}return(e.which||e.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,n=!1,e.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),t.ui.plugin={add:function(e,i,s){var n,o=t.ui[e].prototype;for(n in s)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([i,s[n]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;o.length>n;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}},t.ui.safeActiveElement=function(t){var e;try{e=t.activeElement}catch(i){e=t.body}return e||(e=t.body),e.nodeName||(e=t.body),e},t.ui.safeBlur=function(e){e&&"body"!==e.nodeName.toLowerCase()&&t(e).trigger("blur")},t.widget("ui.draggable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){"original"===this.options.helper&&this._setPositionRelative(),this.options.addClasses&&this._addClass("ui-draggable"),this._setHandleClassName(),this._mouseInit()},_setOption:function(t,e){this._super(t,e),"handle"===t&&(this._removeHandleClassName(),this._setHandleClassName())},_destroy:function(){return(this.helper||this.element).is(".ui-draggable-dragging")?(this.destroyOnClear=!0,void 0):(this._removeHandleClassName(),this._mouseDestroy(),void 0)},_mouseCapture:function(e){var i=this.options;return this.helper||i.disabled||t(e.target).closest(".ui-resizable-handle").length>0?!1:(this.handle=this._getHandle(e),this.handle?(this._blurActiveElement(e),this._blockFrames(i.iframeFix===!0?"iframe":i.iframeFix),!0):!1)},_blockFrames:function(e){this.iframeBlocks=this.document.find(e).map(function(){var e=t(this);return t("
").css("position","absolute").appendTo(e.parent()).outerWidth(e.outerWidth()).outerHeight(e.outerHeight()).offset(e.offset())[0]})},_unblockFrames:function(){this.iframeBlocks&&(this.iframeBlocks.remove(),delete this.iframeBlocks)},_blurActiveElement:function(e){var i=t.ui.safeActiveElement(this.document[0]),s=t(e.target);s.closest(i).length||t.ui.safeBlur(i)},_mouseStart:function(e){var i=this.options;return this.helper=this._createHelper(e),this._addClass(this.helper,"ui-draggable-dragging"),this._cacheHelperProportions(),t.ui.ddmanager&&(t.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(!0),this.offsetParent=this.helper.offsetParent(),this.hasFixedAncestor=this.helper.parents().filter(function(){return"fixed"===t(this).css("position")}).length>0,this.positionAbs=this.element.offset(),this._refreshOffsets(e),this.originalPosition=this.position=this._generatePosition(e,!1),this.originalPageX=e.pageX,this.originalPageY=e.pageY,i.cursorAt&&this._adjustOffsetFromHelper(i.cursorAt),this._setContainment(),this._trigger("start",e)===!1?(this._clear(),!1):(this._cacheHelperProportions(),t.ui.ddmanager&&!i.dropBehaviour&&t.ui.ddmanager.prepareOffsets(this,e),this._mouseDrag(e,!0),t.ui.ddmanager&&t.ui.ddmanager.dragStart(this,e),!0)},_refreshOffsets:function(t){this.offset={top:this.positionAbs.top-this.margins.top,left:this.positionAbs.left-this.margins.left,scroll:!1,parent:this._getParentOffset(),relative:this._getRelativeOffset()},this.offset.click={left:t.pageX-this.offset.left,top:t.pageY-this.offset.top}},_mouseDrag:function(e,i){if(this.hasFixedAncestor&&(this.offset.parent=this._getParentOffset()),this.position=this._generatePosition(e,!0),this.positionAbs=this._convertPositionTo("absolute"),!i){var s=this._uiHash();if(this._trigger("drag",e,s)===!1)return this._mouseUp(new t.Event("mouseup",e)),!1;this.position=s.position}return this.helper[0].style.left=this.position.left+"px",this.helper[0].style.top=this.position.top+"px",t.ui.ddmanager&&t.ui.ddmanager.drag(this,e),!1},_mouseStop:function(e){var i=this,s=!1;return t.ui.ddmanager&&!this.options.dropBehaviour&&(s=t.ui.ddmanager.drop(this,e)),this.dropped&&(s=this.dropped,this.dropped=!1),"invalid"===this.options.revert&&!s||"valid"===this.options.revert&&s||this.options.revert===!0||t.isFunction(this.options.revert)&&this.options.revert.call(this.element,s)?t(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){i._trigger("stop",e)!==!1&&i._clear()}):this._trigger("stop",e)!==!1&&this._clear(),!1},_mouseUp:function(e){return this._unblockFrames(),t.ui.ddmanager&&t.ui.ddmanager.dragStop(this,e),this.handleElement.is(e.target)&&this.element.trigger("focus"),t.ui.mouse.prototype._mouseUp.call(this,e)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp(new t.Event("mouseup",{target:this.element[0]})):this._clear(),this},_getHandle:function(e){return this.options.handle?!!t(e.target).closest(this.element.find(this.options.handle)).length:!0},_setHandleClassName:function(){this.handleElement=this.options.handle?this.element.find(this.options.handle):this.element,this._addClass(this.handleElement,"ui-draggable-handle")},_removeHandleClassName:function(){this._removeClass(this.handleElement,"ui-draggable-handle")},_createHelper:function(e){var i=this.options,s=t.isFunction(i.helper),n=s?t(i.helper.apply(this.element[0],[e])):"clone"===i.helper?this.element.clone().removeAttr("id"):this.element;return n.parents("body").length||n.appendTo("parent"===i.appendTo?this.element[0].parentNode:i.appendTo),s&&n[0]===this.element[0]&&this._setPositionRelative(),n[0]===this.element[0]||/(fixed|absolute)/.test(n.css("position"))||n.css("position","absolute"),n},_setPositionRelative:function(){/^(?:r|a|f)/.test(this.element.css("position"))||(this.element[0].style.position="relative")},_adjustOffsetFromHelper:function(e){"string"==typeof e&&(e=e.split(" ")),t.isArray(e)&&(e={left:+e[0],top:+e[1]||0}),"left"in e&&(this.offset.click.left=e.left+this.margins.left),"right"in e&&(this.offset.click.left=this.helperProportions.width-e.right+this.margins.left),"top"in e&&(this.offset.click.top=e.top+this.margins.top),"bottom"in e&&(this.offset.click.top=this.helperProportions.height-e.bottom+this.margins.top)},_isRootNode:function(t){return/(html|body)/i.test(t.tagName)||t===this.document[0]},_getParentOffset:function(){var e=this.offsetParent.offset(),i=this.document[0];return"absolute"===this.cssPosition&&this.scrollParent[0]!==i&&t.contains(this.scrollParent[0],this.offsetParent[0])&&(e.left+=this.scrollParent.scrollLeft(),e.top+=this.scrollParent.scrollTop()),this._isRootNode(this.offsetParent[0])&&(e={top:0,left:0}),{top:e.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:e.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"!==this.cssPosition)return{top:0,left:0};var t=this.element.position(),e=this._isRootNode(this.scrollParent[0]);return{top:t.top-(parseInt(this.helper.css("top"),10)||0)+(e?0:this.scrollParent.scrollTop()),left:t.left-(parseInt(this.helper.css("left"),10)||0)+(e?0:this.scrollParent.scrollLeft())}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var e,i,s,n=this.options,o=this.document[0];return this.relativeContainer=null,n.containment?"window"===n.containment?(this.containment=[t(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,t(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,t(window).scrollLeft()+t(window).width()-this.helperProportions.width-this.margins.left,t(window).scrollTop()+(t(window).height()||o.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],void 0):"document"===n.containment?(this.containment=[0,0,t(o).width()-this.helperProportions.width-this.margins.left,(t(o).height()||o.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],void 0):n.containment.constructor===Array?(this.containment=n.containment,void 0):("parent"===n.containment&&(n.containment=this.helper[0].parentNode),i=t(n.containment),s=i[0],s&&(e=/(scroll|auto)/.test(i.css("overflow")),this.containment=[(parseInt(i.css("borderLeftWidth"),10)||0)+(parseInt(i.css("paddingLeft"),10)||0),(parseInt(i.css("borderTopWidth"),10)||0)+(parseInt(i.css("paddingTop"),10)||0),(e?Math.max(s.scrollWidth,s.offsetWidth):s.offsetWidth)-(parseInt(i.css("borderRightWidth"),10)||0)-(parseInt(i.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(e?Math.max(s.scrollHeight,s.offsetHeight):s.offsetHeight)-(parseInt(i.css("borderBottomWidth"),10)||0)-(parseInt(i.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relativeContainer=i),void 0):(this.containment=null,void 0)},_convertPositionTo:function(t,e){e||(e=this.position);var i="absolute"===t?1:-1,s=this._isRootNode(this.scrollParent[0]);return{top:e.top+this.offset.relative.top*i+this.offset.parent.top*i-("fixed"===this.cssPosition?-this.offset.scroll.top:s?0:this.offset.scroll.top)*i,left:e.left+this.offset.relative.left*i+this.offset.parent.left*i-("fixed"===this.cssPosition?-this.offset.scroll.left:s?0:this.offset.scroll.left)*i}},_generatePosition:function(t,e){var i,s,n,o,a=this.options,r=this._isRootNode(this.scrollParent[0]),l=t.pageX,h=t.pageY;return r&&this.offset.scroll||(this.offset.scroll={top:this.scrollParent.scrollTop(),left:this.scrollParent.scrollLeft()}),e&&(this.containment&&(this.relativeContainer?(s=this.relativeContainer.offset(),i=[this.containment[0]+s.left,this.containment[1]+s.top,this.containment[2]+s.left,this.containment[3]+s.top]):i=this.containment,t.pageX-this.offset.click.lefti[2]&&(l=i[2]+this.offset.click.left),t.pageY-this.offset.click.top>i[3]&&(h=i[3]+this.offset.click.top)),a.grid&&(n=a.grid[1]?this.originalPageY+Math.round((h-this.originalPageY)/a.grid[1])*a.grid[1]:this.originalPageY,h=i?n-this.offset.click.top>=i[1]||n-this.offset.click.top>i[3]?n:n-this.offset.click.top>=i[1]?n-a.grid[1]:n+a.grid[1]:n,o=a.grid[0]?this.originalPageX+Math.round((l-this.originalPageX)/a.grid[0])*a.grid[0]:this.originalPageX,l=i?o-this.offset.click.left>=i[0]||o-this.offset.click.left>i[2]?o:o-this.offset.click.left>=i[0]?o-a.grid[0]:o+a.grid[0]:o),"y"===a.axis&&(l=this.originalPageX),"x"===a.axis&&(h=this.originalPageY)),{top:h-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.offset.scroll.top:r?0:this.offset.scroll.top),left:l-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.offset.scroll.left:r?0:this.offset.scroll.left)} },_clear:function(){this._removeClass(this.helper,"ui-draggable-dragging"),this.helper[0]===this.element[0]||this.cancelHelperRemoval||this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1,this.destroyOnClear&&this.destroy()},_trigger:function(e,i,s){return s=s||this._uiHash(),t.ui.plugin.call(this,e,[i,s,this],!0),/^(drag|start|stop)/.test(e)&&(this.positionAbs=this._convertPositionTo("absolute"),s.offset=this.positionAbs),t.Widget.prototype._trigger.call(this,e,i,s)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),t.ui.plugin.add("draggable","connectToSortable",{start:function(e,i,s){var n=t.extend({},i,{item:s.element});s.sortables=[],t(s.options.connectToSortable).each(function(){var i=t(this).sortable("instance");i&&!i.options.disabled&&(s.sortables.push(i),i.refreshPositions(),i._trigger("activate",e,n))})},stop:function(e,i,s){var n=t.extend({},i,{item:s.element});s.cancelHelperRemoval=!1,t.each(s.sortables,function(){var t=this;t.isOver?(t.isOver=0,s.cancelHelperRemoval=!0,t.cancelHelperRemoval=!1,t._storedCSS={position:t.placeholder.css("position"),top:t.placeholder.css("top"),left:t.placeholder.css("left")},t._mouseStop(e),t.options.helper=t.options._helper):(t.cancelHelperRemoval=!0,t._trigger("deactivate",e,n))})},drag:function(e,i,s){t.each(s.sortables,function(){var n=!1,o=this;o.positionAbs=s.positionAbs,o.helperProportions=s.helperProportions,o.offset.click=s.offset.click,o._intersectsWith(o.containerCache)&&(n=!0,t.each(s.sortables,function(){return this.positionAbs=s.positionAbs,this.helperProportions=s.helperProportions,this.offset.click=s.offset.click,this!==o&&this._intersectsWith(this.containerCache)&&t.contains(o.element[0],this.element[0])&&(n=!1),n})),n?(o.isOver||(o.isOver=1,s._parent=i.helper.parent(),o.currentItem=i.helper.appendTo(o.element).data("ui-sortable-item",!0),o.options._helper=o.options.helper,o.options.helper=function(){return i.helper[0]},e.target=o.currentItem[0],o._mouseCapture(e,!0),o._mouseStart(e,!0,!0),o.offset.click.top=s.offset.click.top,o.offset.click.left=s.offset.click.left,o.offset.parent.left-=s.offset.parent.left-o.offset.parent.left,o.offset.parent.top-=s.offset.parent.top-o.offset.parent.top,s._trigger("toSortable",e),s.dropped=o.element,t.each(s.sortables,function(){this.refreshPositions()}),s.currentItem=s.element,o.fromOutside=s),o.currentItem&&(o._mouseDrag(e),i.position=o.position)):o.isOver&&(o.isOver=0,o.cancelHelperRemoval=!0,o.options._revert=o.options.revert,o.options.revert=!1,o._trigger("out",e,o._uiHash(o)),o._mouseStop(e,!0),o.options.revert=o.options._revert,o.options.helper=o.options._helper,o.placeholder&&o.placeholder.remove(),i.helper.appendTo(s._parent),s._refreshOffsets(e),i.position=s._generatePosition(e,!0),s._trigger("fromSortable",e),s.dropped=!1,t.each(s.sortables,function(){this.refreshPositions()}))})}}),t.ui.plugin.add("draggable","cursor",{start:function(e,i,s){var n=t("body"),o=s.options;n.css("cursor")&&(o._cursor=n.css("cursor")),n.css("cursor",o.cursor)},stop:function(e,i,s){var n=s.options;n._cursor&&t("body").css("cursor",n._cursor)}}),t.ui.plugin.add("draggable","opacity",{start:function(e,i,s){var n=t(i.helper),o=s.options;n.css("opacity")&&(o._opacity=n.css("opacity")),n.css("opacity",o.opacity)},stop:function(e,i,s){var n=s.options;n._opacity&&t(i.helper).css("opacity",n._opacity)}}),t.ui.plugin.add("draggable","scroll",{start:function(t,e,i){i.scrollParentNotHidden||(i.scrollParentNotHidden=i.helper.scrollParent(!1)),i.scrollParentNotHidden[0]!==i.document[0]&&"HTML"!==i.scrollParentNotHidden[0].tagName&&(i.overflowOffset=i.scrollParentNotHidden.offset())},drag:function(e,i,s){var n=s.options,o=!1,a=s.scrollParentNotHidden[0],r=s.document[0];a!==r&&"HTML"!==a.tagName?(n.axis&&"x"===n.axis||(s.overflowOffset.top+a.offsetHeight-e.pageY=0;d--)l=s.snapElements[d].left-s.margins.left,h=l+s.snapElements[d].width,c=s.snapElements[d].top-s.margins.top,u=c+s.snapElements[d].height,l-g>_||m>h+g||c-g>b||v>u+g||!t.contains(s.snapElements[d].item.ownerDocument,s.snapElements[d].item)?(s.snapElements[d].snapping&&s.options.snap.release&&s.options.snap.release.call(s.element,e,t.extend(s._uiHash(),{snapItem:s.snapElements[d].item})),s.snapElements[d].snapping=!1):("inner"!==f.snapMode&&(n=g>=Math.abs(c-b),o=g>=Math.abs(u-v),a=g>=Math.abs(l-_),r=g>=Math.abs(h-m),n&&(i.position.top=s._convertPositionTo("relative",{top:c-s.helperProportions.height,left:0}).top),o&&(i.position.top=s._convertPositionTo("relative",{top:u,left:0}).top),a&&(i.position.left=s._convertPositionTo("relative",{top:0,left:l-s.helperProportions.width}).left),r&&(i.position.left=s._convertPositionTo("relative",{top:0,left:h}).left)),p=n||o||a||r,"outer"!==f.snapMode&&(n=g>=Math.abs(c-v),o=g>=Math.abs(u-b),a=g>=Math.abs(l-m),r=g>=Math.abs(h-_),n&&(i.position.top=s._convertPositionTo("relative",{top:c,left:0}).top),o&&(i.position.top=s._convertPositionTo("relative",{top:u-s.helperProportions.height,left:0}).top),a&&(i.position.left=s._convertPositionTo("relative",{top:0,left:l}).left),r&&(i.position.left=s._convertPositionTo("relative",{top:0,left:h-s.helperProportions.width}).left)),!s.snapElements[d].snapping&&(n||o||a||r||p)&&s.options.snap.snap&&s.options.snap.snap.call(s.element,e,t.extend(s._uiHash(),{snapItem:s.snapElements[d].item})),s.snapElements[d].snapping=n||o||a||r||p)}}),t.ui.plugin.add("draggable","stack",{start:function(e,i,s){var n,o=s.options,a=t.makeArray(t(o.stack)).sort(function(e,i){return(parseInt(t(e).css("zIndex"),10)||0)-(parseInt(t(i).css("zIndex"),10)||0)});a.length&&(n=parseInt(t(a[0]).css("zIndex"),10)||0,t(a).each(function(e){t(this).css("zIndex",n+e)}),this.css("zIndex",n+a.length))}}),t.ui.plugin.add("draggable","zIndex",{start:function(e,i,s){var n=t(i.helper),o=s.options;n.css("zIndex")&&(o._zIndex=n.css("zIndex")),n.css("zIndex",o.zIndex)},stop:function(e,i,s){var n=s.options;n._zIndex&&t(i.helper).css("zIndex",n._zIndex)}}),t.ui.draggable,t.widget("ui.resizable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(e,i){if("hidden"===t(e).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return e[s]>0?!0:(e[s]=1,n=e[s]>0,e[s]=0,n)},_create:function(){var e,i=this.options,s=this;this._addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!i.aspectRatio,aspectRatio:i.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:i.helper||i.ghost||i.animate?i.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(t("
").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,e={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(e),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(e),this._proportionallyResize()),this._setupHandles(),i.autoHide&&t(this.element).on("mouseenter",function(){i.disabled||(s._removeClass("ui-resizable-autohide"),s._handles.show())}).on("mouseleave",function(){i.disabled||s.resizing||(s._addClass("ui-resizable-autohide"),s._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;default:}},_setupHandles:function(){var e,i,s,n,o,a=this.options,r=this;if(this.handles=a.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=t(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),s=this.handles.split(","),this.handles={},i=0;s.length>i;i++)e=t.trim(s[i]),n="ui-resizable-"+e,o=t("
"),this._addClass(o,"ui-resizable-handle "+n),o.css({zIndex:a.zIndex}),this.handles[e]=".ui-resizable-"+e,this.element.append(o);this._renderAxis=function(e){var i,s,n,o;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String?this.handles[i]=this.element.children(this.handles[i]).first().show():(this.handles[i].jquery||this.handles[i].nodeType)&&(this.handles[i]=t(this.handles[i]),this._on(this.handles[i],{mousedown:r._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(s=t(this.handles[i],this.element),o=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,o),this._proportionallyResize()),this._handles=this._handles.add(this.handles[i])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){r.resizing||(this.className&&(o=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=o&&o[1]?o[1]:"se")}),a.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._handles.remove()},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(e){var i,s,n,o=this.options,a=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),o.containment&&(i+=t(o.containment).scrollLeft()||0,s+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:a.width(),height:a.height()},this.originalSize=this._helper?{width:a.outerWidth(),height:a.outerHeight()}:{width:a.width(),height:a.height()},this.sizeDiff={width:a.outerWidth()-a.width(),height:a.outerHeight()-a.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:e.pageX,top:e.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===n?this.axis+"-resize":n),this._addClass("ui-resizable-resizing"),this._propagate("start",e),!0},_mouseDrag:function(e){var i,s,n=this.originalMousePosition,o=this.axis,a=e.pageX-n.left||0,r=e.pageY-n.top||0,l=this._change[o];return this._updatePrevProperties(),l?(i=l.apply(this,[e,a,r]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",e,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,o,a,r,l,h=this.options,c=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:c.sizeDiff.height,o=s?0:c.sizeDiff.width,a={width:c.helper.width()-o,height:c.helper.height()-n},r=parseFloat(c.element.css("left"))+(c.position.left-c.originalPosition.left)||null,l=parseFloat(c.element.css("top"))+(c.position.top-c.originalPosition.top)||null,h.animate||this.element.css(t.extend(a,{top:l,left:r})),c.helper.height(c.size.height),c.helper.width(c.size.width),this._helper&&!h.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s,n,o,a=this.options;o={minWidth:this._isNumber(a.minWidth)?a.minWidth:0,maxWidth:this._isNumber(a.maxWidth)?a.maxWidth:1/0,minHeight:this._isNumber(a.minHeight)?a.minHeight:0,maxHeight:this._isNumber(a.maxHeight)?a.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,s=o.minWidth/this.aspectRatio,i=o.maxHeight*this.aspectRatio,n=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),s>o.minHeight&&(o.minHeight=s),o.maxWidth>i&&(o.maxWidth=i),o.maxHeight>n&&(o.maxHeight=n)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidtht.width,a=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,r=this.originalPosition.left+this.originalSize.width,l=this.originalPosition.top+this.originalSize.height,h=/sw|nw|w/.test(i),c=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),a&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&h&&(t.left=r-e.minWidth),s&&h&&(t.left=r-e.maxWidth),a&&c&&(t.top=l-e.minHeight),n&&c&&(t.top=l-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];4>e;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;this._proportionallyResizeElements.length>e;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("
"),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,o=n.length&&/textarea/i.test(n[0].nodeName),a=o&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=o?0:i.sizeDiff.width,l={width:i.size.width-r,height:i.size.height-a},h=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,c=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(l,c&&h?{top:c,left:h}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var e,i,s,n,o,a,r,l=t(this).resizable("instance"),h=l.options,c=l.element,u=h.containment,d=u instanceof t?u.get(0):/parent/.test(u)?c.parent().get(0):u;d&&(l.containerElement=t(d),/document/.test(u)||u===document?(l.containerOffset={left:0,top:0},l.containerPosition={left:0,top:0},l.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(e=t(d),i=[],t(["Top","Right","Left","Bottom"]).each(function(t,s){i[t]=l._num(e.css("padding"+s))}),l.containerOffset=e.offset(),l.containerPosition=e.position(),l.containerSize={height:e.innerHeight()-i[3],width:e.innerWidth()-i[1]},s=l.containerOffset,n=l.containerSize.height,o=l.containerSize.width,a=l._hasScroll(d,"left")?d.scrollWidth:o,r=l._hasScroll(d)?d.scrollHeight:n,l.parentData={element:d,left:s.left,top:s.top,width:a,height:r}))},resize:function(e){var i,s,n,o,a=t(this).resizable("instance"),r=a.options,l=a.containerOffset,h=a.position,c=a._aspectRatio||e.shiftKey,u={top:0,left:0},d=a.containerElement,p=!0;d[0]!==document&&/static/.test(d.css("position"))&&(u=l),h.left<(a._helper?l.left:0)&&(a.size.width=a.size.width+(a._helper?a.position.left-l.left:a.position.left-u.left),c&&(a.size.height=a.size.width/a.aspectRatio,p=!1),a.position.left=r.helper?l.left:0),h.top<(a._helper?l.top:0)&&(a.size.height=a.size.height+(a._helper?a.position.top-l.top:a.position.top),c&&(a.size.width=a.size.height*a.aspectRatio,p=!1),a.position.top=a._helper?l.top:0),n=a.containerElement.get(0)===a.element.parent().get(0),o=/relative|absolute/.test(a.containerElement.css("position")),n&&o?(a.offset.left=a.parentData.left+a.position.left,a.offset.top=a.parentData.top+a.position.top):(a.offset.left=a.element.offset().left,a.offset.top=a.element.offset().top),i=Math.abs(a.sizeDiff.width+(a._helper?a.offset.left-u.left:a.offset.left-l.left)),s=Math.abs(a.sizeDiff.height+(a._helper?a.offset.top-u.top:a.offset.top-l.top)),i+a.size.width>=a.parentData.width&&(a.size.width=a.parentData.width-i,c&&(a.size.height=a.size.width/a.aspectRatio,p=!1)),s+a.size.height>=a.parentData.height&&(a.size.height=a.parentData.height-s,c&&(a.size.width=a.size.height*a.aspectRatio,p=!1)),p||(a.position.left=a.prevPosition.left,a.position.top=a.prevPosition.top,a.size.width=a.prevSize.width,a.size.height=a.prevSize.height)},stop:function(){var e=t(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.containerPosition,o=e.containerElement,a=t(e.helper),r=a.offset(),l=a.outerWidth()-e.sizeDiff.width,h=a.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:l,height:h}),e._helper&&!i.animate&&/static/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:l,height:h})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).resizable("instance"),i=e.options;t(i.alsoResize).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseFloat(e.width()),height:parseFloat(e.height()),left:parseFloat(e.css("left")),top:parseFloat(e.css("top"))})})},resize:function(e,i){var s=t(this).resizable("instance"),n=s.options,o=s.originalSize,a=s.originalPosition,r={height:s.size.height-o.height||0,width:s.size.width-o.width||0,top:s.position.top-a.top||0,left:s.position.left-a.left||0};t(n.alsoResize).each(function(){var e=t(this),s=t(this).data("ui-resizable-alsoresize"),n={},o=e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(s[e]||0)+(r[e]||0);i&&i>=0&&(n[e]=i||null)}),e.css(n)})},stop:function(){t(this).removeData("ui-resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).resizable("instance"),i=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:i.height,width:i.width,margin:0,left:0,top:0}),e._addClass(e.ghost,"ui-resizable-ghost"),t.uiBackCompat!==!1&&"string"==typeof e.options.ghost&&e.ghost.addClass(this.options.ghost),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).resizable("instance");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).resizable("instance");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e,i=t(this).resizable("instance"),s=i.options,n=i.size,o=i.originalSize,a=i.originalPosition,r=i.axis,l="number"==typeof s.grid?[s.grid,s.grid]:s.grid,h=l[0]||1,c=l[1]||1,u=Math.round((n.width-o.width)/h)*h,d=Math.round((n.height-o.height)/c)*c,p=o.width+u,f=o.height+d,g=s.maxWidth&&p>s.maxWidth,m=s.maxHeight&&f>s.maxHeight,_=s.minWidth&&s.minWidth>p,v=s.minHeight&&s.minHeight>f;s.grid=l,_&&(p+=h),v&&(f+=c),g&&(p-=h),m&&(f-=c),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=a.top-d):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=a.left-u):((0>=f-c||0>=p-h)&&(e=i._getPaddingPlusBorderDimensions(this)),f-c>0?(i.size.height=f,i.position.top=a.top-d):(f=c-e.height,i.size.height=f,i.position.top=a.top+o.height-f),p-h>0?(i.size.width=p,i.position.left=a.left-u):(p=h-e.width,i.size.width=p,i.position.left=a.left+o.width-p))}}),t.ui.resizable;var o=/ui-corner-([a-z]){2,6}/g;t.widget("ui.controlgroup",{version:"1.12.1",defaultElement:"
",options:{direction:"horizontal",disabled:null,onlyVisible:!0,items:{button:"input[type=button], input[type=submit], input[type=reset], button, a",controlgroupLabel:".ui-controlgroup-label",checkboxradio:"input[type='checkbox'], input[type='radio']",selectmenu:"select",spinner:".ui-spinner-input"}},_create:function(){this._enhance()},_enhance:function(){this.element.attr("role","toolbar"),this.refresh()},_destroy:function(){this._callChildMethod("destroy"),this.childWidgets.removeData("ui-controlgroup-data"),this.element.removeAttr("role"),this.options.items.controlgroupLabel&&this.element.find(this.options.items.controlgroupLabel).find(".ui-controlgroup-label-contents").contents().unwrap()},_initWidgets:function(){var e=this,i=[];t.each(this.options.items,function(s,n){var o,a={};return n?"controlgroupLabel"===s?(o=e.element.find(n),o.each(function(){var e=t(this);e.children(".ui-controlgroup-label-contents").length||e.contents().wrapAll("")}),e._addClass(o,null,"ui-widget ui-widget-content ui-state-default"),i=i.concat(o.get()),void 0):(t.fn[s]&&(a=e["_"+s+"Options"]?e["_"+s+"Options"]("middle"):{classes:{}},e.element.find(n).each(function(){var n=t(this),o=n[s]("instance"),r=t.widget.extend({},a);if("button"!==s||!n.parent(".ui-spinner").length){o||(o=n[s]()[s]("instance")),o&&(r.classes=e._resolveClassesValues(r.classes,o)),n[s](r);var l=n[s]("widget");t.data(l[0],"ui-controlgroup-data",o?o:n[s]("instance")),i.push(l[0])}})),void 0):void 0}),this.childWidgets=t(t.unique(i)),this._addClass(this.childWidgets,"ui-controlgroup-item")},_callChildMethod:function(e){this.childWidgets.each(function(){var i=t(this),s=i.data("ui-controlgroup-data");s&&s[e]&&s[e]()})},_updateCornerClass:function(t,e){var i="ui-corner-top ui-corner-bottom ui-corner-left ui-corner-right ui-corner-all",s=this._buildSimpleOptions(e,"label").classes.label;this._removeClass(t,null,i),this._addClass(t,null,s)},_buildSimpleOptions:function(t,e){var i="vertical"===this.options.direction,s={classes:{}};return s.classes[e]={middle:"",first:"ui-corner-"+(i?"top":"left"),last:"ui-corner-"+(i?"bottom":"right"),only:"ui-corner-all"}[t],s},_spinnerOptions:function(t){var e=this._buildSimpleOptions(t,"ui-spinner");return e.classes["ui-spinner-up"]="",e.classes["ui-spinner-down"]="",e},_buttonOptions:function(t){return this._buildSimpleOptions(t,"ui-button")},_checkboxradioOptions:function(t){return this._buildSimpleOptions(t,"ui-checkboxradio-label")},_selectmenuOptions:function(t){var e="vertical"===this.options.direction;return{width:e?"auto":!1,classes:{middle:{"ui-selectmenu-button-open":"","ui-selectmenu-button-closed":""},first:{"ui-selectmenu-button-open":"ui-corner-"+(e?"top":"tl"),"ui-selectmenu-button-closed":"ui-corner-"+(e?"top":"left")},last:{"ui-selectmenu-button-open":e?"":"ui-corner-tr","ui-selectmenu-button-closed":"ui-corner-"+(e?"bottom":"right")},only:{"ui-selectmenu-button-open":"ui-corner-top","ui-selectmenu-button-closed":"ui-corner-all"}}[t]}},_resolveClassesValues:function(e,i){var s={};return t.each(e,function(n){var a=i.options.classes[n]||"";a=t.trim(a.replace(o,"")),s[n]=(a+" "+e[n]).replace(/\s+/g," ")}),s},_setOption:function(t,e){return"direction"===t&&this._removeClass("ui-controlgroup-"+this.options.direction),this._super(t,e),"disabled"===t?(this._callChildMethod(e?"disable":"enable"),void 0):(this.refresh(),void 0)},refresh:function(){var e,i=this;this._addClass("ui-controlgroup ui-controlgroup-"+this.options.direction),"horizontal"===this.options.direction&&this._addClass(null,"ui-helper-clearfix"),this._initWidgets(),e=this.childWidgets,this.options.onlyVisible&&(e=e.filter(":visible")),e.length&&(t.each(["first","last"],function(t,s){var n=e[s]().data("ui-controlgroup-data");if(n&&i["_"+n.widgetName+"Options"]){var o=i["_"+n.widgetName+"Options"](1===e.length?"only":s);o.classes=i._resolveClassesValues(o.classes,n),n.element[n.widgetName](o)}else i._updateCornerClass(e[s](),s)}),this._callChildMethod("refresh"))}}),t.widget("ui.checkboxradio",[t.ui.formResetMixin,{version:"1.12.1",options:{disabled:null,label:null,icon:!0,classes:{"ui-checkboxradio-label":"ui-corner-all","ui-checkboxradio-icon":"ui-corner-all"}},_getCreateOptions:function(){var e,i,s=this,n=this._super()||{};return this._readType(),i=this.element.labels(),this.label=t(i[i.length-1]),this.label.length||t.error("No label found for checkboxradio widget"),this.originalLabel="",this.label.contents().not(this.element[0]).each(function(){s.originalLabel+=3===this.nodeType?t(this).text():this.outerHTML}),this.originalLabel&&(n.label=this.originalLabel),e=this.element[0].disabled,null!=e&&(n.disabled=e),n},_create:function(){var t=this.element[0].checked;this._bindFormResetHandler(),null==this.options.disabled&&(this.options.disabled=this.element[0].disabled),this._setOption("disabled",this.options.disabled),this._addClass("ui-checkboxradio","ui-helper-hidden-accessible"),this._addClass(this.label,"ui-checkboxradio-label","ui-button ui-widget"),"radio"===this.type&&this._addClass(this.label,"ui-checkboxradio-radio-label"),this.options.label&&this.options.label!==this.originalLabel?this._updateLabel():this.originalLabel&&(this.options.label=this.originalLabel),this._enhance(),t&&(this._addClass(this.label,"ui-checkboxradio-checked","ui-state-active"),this.icon&&this._addClass(this.icon,null,"ui-state-hover")),this._on({change:"_toggleClasses",focus:function(){this._addClass(this.label,null,"ui-state-focus ui-visual-focus")},blur:function(){this._removeClass(this.label,null,"ui-state-focus ui-visual-focus")}})},_readType:function(){var e=this.element[0].nodeName.toLowerCase();this.type=this.element[0].type,"input"===e&&/radio|checkbox/.test(this.type)||t.error("Can't create checkboxradio on element.nodeName="+e+" and element.type="+this.type)},_enhance:function(){this._updateIcon(this.element[0].checked)},widget:function(){return this.label},_getRadioGroup:function(){var e,i=this.element[0].name,s="input[name='"+t.ui.escapeSelector(i)+"']";return i?(e=this.form.length?t(this.form[0].elements).filter(s):t(s).filter(function(){return 0===t(this).form().length }),e.not(this.element)):t([])},_toggleClasses:function(){var e=this.element[0].checked;this._toggleClass(this.label,"ui-checkboxradio-checked","ui-state-active",e),this.options.icon&&"checkbox"===this.type&&this._toggleClass(this.icon,null,"ui-icon-check ui-state-checked",e)._toggleClass(this.icon,null,"ui-icon-blank",!e),"radio"===this.type&&this._getRadioGroup().each(function(){var e=t(this).checkboxradio("instance");e&&e._removeClass(e.label,"ui-checkboxradio-checked","ui-state-active")})},_destroy:function(){this._unbindFormResetHandler(),this.icon&&(this.icon.remove(),this.iconSpace.remove())},_setOption:function(t,e){return"label"!==t||e?(this._super(t,e),"disabled"===t?(this._toggleClass(this.label,null,"ui-state-disabled",e),this.element[0].disabled=e,void 0):(this.refresh(),void 0)):void 0},_updateIcon:function(e){var i="ui-icon ui-icon-background ";this.options.icon?(this.icon||(this.icon=t(""),this.iconSpace=t(" "),this._addClass(this.iconSpace,"ui-checkboxradio-icon-space")),"checkbox"===this.type?(i+=e?"ui-icon-check ui-state-checked":"ui-icon-blank",this._removeClass(this.icon,null,e?"ui-icon-blank":"ui-icon-check")):i+="ui-icon-blank",this._addClass(this.icon,"ui-checkboxradio-icon",i),e||this._removeClass(this.icon,null,"ui-icon-check ui-state-checked"),this.icon.prependTo(this.label).after(this.iconSpace)):void 0!==this.icon&&(this.icon.remove(),this.iconSpace.remove(),delete this.icon)},_updateLabel:function(){var t=this.label.contents().not(this.element[0]);this.icon&&(t=t.not(this.icon[0])),this.iconSpace&&(t=t.not(this.iconSpace[0])),t.remove(),this.label.append(this.options.label)},refresh:function(){var t=this.element[0].checked,e=this.element[0].disabled;this._updateIcon(t),this._toggleClass(this.label,"ui-checkboxradio-checked","ui-state-active",t),null!==this.options.label&&this._updateLabel(),e!==this.options.disabled&&this._setOptions({disabled:e})}}]),t.ui.checkboxradio,t.widget("ui.button",{version:"1.12.1",defaultElement:"").button({label:t("").text(this.options.closeText).html(),icon:"ui-icon-closethick",showLabel:!1}).appendTo(this.uiDialogTitlebar),this._addClass(this.uiDialogTitlebarClose,"ui-dialog-titlebar-close"),this._on(this.uiDialogTitlebarClose,{click:function(t){t.preventDefault(),this.close(t)}}),e=t("").uniqueId().prependTo(this.uiDialogTitlebar),this._addClass(e,"ui-dialog-title"),this._title(e),this.uiDialogTitlebar.prependTo(this.uiDialog),this.uiDialog.attr({"aria-labelledby":e.attr("id")})},_title:function(t){this.options.title?t.text(this.options.title):t.html(" ")},_createButtonPane:function(){this.uiDialogButtonPane=t("
"),this._addClass(this.uiDialogButtonPane,"ui-dialog-buttonpane","ui-widget-content ui-helper-clearfix"),this.uiButtonSet=t("
").appendTo(this.uiDialogButtonPane),this._addClass(this.uiButtonSet,"ui-dialog-buttonset"),this._createButtons()},_createButtons:function(){var e=this,i=this.options.buttons;return this.uiDialogButtonPane.remove(),this.uiButtonSet.empty(),t.isEmptyObject(i)||t.isArray(i)&&!i.length?(this._removeClass(this.uiDialog,"ui-dialog-buttons"),void 0):(t.each(i,function(i,s){var n,o;s=t.isFunction(s)?{click:s,text:i}:s,s=t.extend({type:"button"},s),n=s.click,o={icon:s.icon,iconPosition:s.iconPosition,showLabel:s.showLabel,icons:s.icons,text:s.text},delete s.click,delete s.icon,delete s.iconPosition,delete s.showLabel,delete s.icons,"boolean"==typeof s.text&&delete s.text,t("",s).button(o).appendTo(e.uiButtonSet).on("click",function(){n.apply(e.element[0],arguments)})}),this._addClass(this.uiDialog,"ui-dialog-buttons"),this.uiDialogButtonPane.appendTo(this.uiDialog),void 0)},_makeDraggable:function(){function e(t){return{position:t.position,offset:t.offset}}var i=this,s=this.options;this.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",handle:".ui-dialog-titlebar",containment:"document",start:function(s,n){i._addClass(t(this),"ui-dialog-dragging"),i._blockFrames(),i._trigger("dragStart",s,e(n))},drag:function(t,s){i._trigger("drag",t,e(s))},stop:function(n,o){var a=o.offset.left-i.document.scrollLeft(),r=o.offset.top-i.document.scrollTop();s.position={my:"left top",at:"left"+(a>=0?"+":"")+a+" "+"top"+(r>=0?"+":"")+r,of:i.window},i._removeClass(t(this),"ui-dialog-dragging"),i._unblockFrames(),i._trigger("dragStop",n,e(o))}})},_makeResizable:function(){function e(t){return{originalPosition:t.originalPosition,originalSize:t.originalSize,position:t.position,size:t.size}}var i=this,s=this.options,n=s.resizable,o=this.uiDialog.css("position"),a="string"==typeof n?n:"n,e,s,w,se,sw,ne,nw";this.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:this.element,maxWidth:s.maxWidth,maxHeight:s.maxHeight,minWidth:s.minWidth,minHeight:this._minHeight(),handles:a,start:function(s,n){i._addClass(t(this),"ui-dialog-resizing"),i._blockFrames(),i._trigger("resizeStart",s,e(n))},resize:function(t,s){i._trigger("resize",t,e(s))},stop:function(n,o){var a=i.uiDialog.offset(),r=a.left-i.document.scrollLeft(),l=a.top-i.document.scrollTop();s.height=i.uiDialog.height(),s.width=i.uiDialog.width(),s.position={my:"left top",at:"left"+(r>=0?"+":"")+r+" "+"top"+(l>=0?"+":"")+l,of:i.window},i._removeClass(t(this),"ui-dialog-resizing"),i._unblockFrames(),i._trigger("resizeStop",n,e(o))}}).css("position",o)},_trackFocus:function(){this._on(this.widget(),{focusin:function(e){this._makeFocusTarget(),this._focusedElement=t(e.target)}})},_makeFocusTarget:function(){this._untrackInstance(),this._trackingInstances().unshift(this)},_untrackInstance:function(){var e=this._trackingInstances(),i=t.inArray(this,e);-1!==i&&e.splice(i,1)},_trackingInstances:function(){var t=this.document.data("ui-dialog-instances");return t||(t=[],this.document.data("ui-dialog-instances",t)),t},_minHeight:function(){var t=this.options;return"auto"===t.height?t.minHeight:Math.min(t.minHeight,t.height)},_position:function(){var t=this.uiDialog.is(":visible");t||this.uiDialog.show(),this.uiDialog.position(this.options.position),t||this.uiDialog.hide()},_setOptions:function(e){var i=this,s=!1,n={};t.each(e,function(t,e){i._setOption(t,e),t in i.sizeRelatedOptions&&(s=!0),t in i.resizableRelatedOptions&&(n[t]=e)}),s&&(this._size(),this._position()),this.uiDialog.is(":data(ui-resizable)")&&this.uiDialog.resizable("option",n)},_setOption:function(e,i){var s,n,o=this.uiDialog;"disabled"!==e&&(this._super(e,i),"appendTo"===e&&this.uiDialog.appendTo(this._appendTo()),"buttons"===e&&this._createButtons(),"closeText"===e&&this.uiDialogTitlebarClose.button({label:t("").text(""+this.options.closeText).html()}),"draggable"===e&&(s=o.is(":data(ui-draggable)"),s&&!i&&o.draggable("destroy"),!s&&i&&this._makeDraggable()),"position"===e&&this._position(),"resizable"===e&&(n=o.is(":data(ui-resizable)"),n&&!i&&o.resizable("destroy"),n&&"string"==typeof i&&o.resizable("option","handles",i),n||i===!1||this._makeResizable()),"title"===e&&this._title(this.uiDialogTitlebar.find(".ui-dialog-title")))},_size:function(){var t,e,i,s=this.options;this.element.show().css({width:"auto",minHeight:0,maxHeight:"none",height:0}),s.minWidth>s.width&&(s.width=s.minWidth),t=this.uiDialog.css({height:"auto",width:s.width}).outerHeight(),e=Math.max(0,s.minHeight-t),i="number"==typeof s.maxHeight?Math.max(0,s.maxHeight-t):"none","auto"===s.height?this.element.css({minHeight:e,maxHeight:i,height:"auto"}):this.element.height(Math.max(0,s.height-t)),this.uiDialog.is(":data(ui-resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())},_blockFrames:function(){this.iframeBlocks=this.document.find("iframe").map(function(){var e=t(this);return t("
").css({position:"absolute",width:e.outerWidth(),height:e.outerHeight()}).appendTo(e.parent()).offset(e.offset())[0]})},_unblockFrames:function(){this.iframeBlocks&&(this.iframeBlocks.remove(),delete this.iframeBlocks)},_allowInteraction:function(e){return t(e.target).closest(".ui-dialog").length?!0:!!t(e.target).closest(".ui-datepicker").length},_createOverlay:function(){if(this.options.modal){var e=!0;this._delay(function(){e=!1}),this.document.data("ui-dialog-overlays")||this._on(this.document,{focusin:function(t){e||this._allowInteraction(t)||(t.preventDefault(),this._trackingInstances()[0]._focusTabbable())}}),this.overlay=t("
").appendTo(this._appendTo()),this._addClass(this.overlay,null,"ui-widget-overlay ui-front"),this._on(this.overlay,{mousedown:"_keepFocus"}),this.document.data("ui-dialog-overlays",(this.document.data("ui-dialog-overlays")||0)+1)}},_destroyOverlay:function(){if(this.options.modal&&this.overlay){var t=this.document.data("ui-dialog-overlays")-1;t?this.document.data("ui-dialog-overlays",t):(this._off(this.document,"focusin"),this.document.removeData("ui-dialog-overlays")),this.overlay.remove(),this.overlay=null}}}),t.uiBackCompat!==!1&&t.widget("ui.dialog",t.ui.dialog,{options:{dialogClass:""},_createWrapper:function(){this._super(),this.uiDialog.addClass(this.options.dialogClass)},_setOption:function(t,e){"dialogClass"===t&&this.uiDialog.removeClass(this.options.dialogClass).addClass(e),this._superApply(arguments)}}),t.ui.dialog,t.widget("ui.menu",{version:"1.12.1",defaultElement:"