stockfish
Version:
The Stockfish chess engine in Web Assembly (WASM)
11 lines • 10.5 MB
JavaScript
/*!
* Stockfish.js 18 (c) 2026, Chess.com, LLC
* https://github.com/nmrugg/stockfish.js
* License: GPLv3
*
* Based on Stockfish (c) T. Romstad, M. Costalba, J. Kiiski, G. Linscott and other contributors.
* https://github.com/official-stockfish/Stockfish
*
* Nets by Linmiao Xu (linrock)
* https://tests.stockfishchess.org/nns?network_name=nn-9067e33176e
*/!function(){var g,C,E,A,w,Q,B;function f(){function A(A){A=A||{},(d=d||(void 0!==A?A:{})).ready=new Promise(function(A,B){p=A,m=B}),"undefined"!=typeof global&&"[object process]"===Object.prototype.toString.call(global.process)&&"undefined"!=typeof fetch&&("undefined"==typeof XMLHttpRequest&&(global.XMLHttpRequest=function(){var f,w={open:function(A,B){f=B},send:function(){require("fs").readFile(f,function(A,B){w.readyState=4,A?(console.error(A),w.status=404,w.onerror(A)):(w.status=200,w.response=B,w.onreadystatechange(),w.onload())})}};return w}),fetch=null),d.print=function(A){d.listener?d.listener(A):console.log(A)},d.printErr=function(A){d.listener?d.listener(A):console.error(A)},d.terminate=function(){"undefined"!=typeof PThread&&PThread.Z()};var d,p,m,K,f,L,y,S,B=Object.assign({},d),i=[],g="./this.program",w=(A,B)=>{throw B},T="object"==typeof window,H="function"==typeof importScripts,Q="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,C="",z=(Q?(C=H?require("path").dirname(C)+"/":__dirname+"/",S=()=>{y||(L=require("fs"),y=require("path"))},K=function(A,B){var f=a(A);return f?B?f:f.toString():(S(),A=y.normalize(A),L.readFileSync(A,B?void 0:"utf8"))},f=A=>A=(A=K(A,!0)).buffer?A:new Uint8Array(A),1<process.argv.length&&(g=process.argv[1].replace(/\\/g,"/")),i=process.argv.slice(2),process.on("uncaughtException",function(A){if(!(A instanceof o))throw A}),process.on("unhandledRejection",function(A){throw A}),w=(A,B)=>{if(r||0<x)throw process.exitCode=A,B;B instanceof o||c("exiting due to exception: "+B),process.exit(A)},d.inspect=function(){return"[Emscripten Module object]"}):(T||H)&&(H?C=self.location.href:"undefined"!=typeof document&&document.currentScript&&(C=document.currentScript.src),C=0!==(C=TA?TA:C).indexOf("blob:")?C.substr(0,C.replace(/[?#].*/,"").lastIndexOf("/")+1):"",K=B=>{try{return(f=new XMLHttpRequest).open("GET",B,!1),f.send(null),f.responseText}catch(A){if(B=a(B)){for(var f=[],w=0;w<B.length;w++){var Q=B[w];255<Q&&(WA&&h("Character code "+Q+" ("+String.fromCharCode(Q)+") at offset "+w+" not in 0x00-0xFF."),Q&=255),f.push(String.fromCharCode(Q))}return f.join("")}throw A}},H)&&(f=B=>{try{var A=new XMLHttpRequest;return A.open("GET",B,!1),A.responseType="arraybuffer",A.send(null),new Uint8Array(A.response)}catch(A){if(B=a(B))return B;throw A}}),d.print||console.log.bind(console)),c=d.printErr||console.warn.bind(console),r=(Object.assign(d,B),d.arguments&&(i=d.arguments),d.thisProgram&&(g=d.thisProgram),d.quit&&(w=d.quit),d.wasmBinary&&(E=d.wasmBinary),d.noExitRuntime||!0);function O(){this.exports=function(Q){for(var f,X=new Uint8Array(123),H=25;0<=H;--H)X[48+H]=52+H,X[65+H]=H,X[97+H]=26+H;function A(A,B,f){for(var w,Q,H=0,g=B,C=f.length,E=B+(3*C>>2)-("="==f[C-2])-("="==f[C-1]);H<C;H+=4)w=X[f.charCodeAt(H+1)],Q=X[f.charCodeAt(H+2)],A[g++]=X[f.charCodeAt(H)]<<2|w>>4,g<E&&(A[g++]=w<<4|Q>>2),g<E&&(A[g++]=Q<<6|X[f.charCodeAt(H+3)])}X[43]=62,X[47]=63;var g=new ArrayBuffer(16),UA=new Int32Array(g),z=new Float32Array(g),C=new Float64Array(g);function lA(A,B){UA[A]=B}function uA(){return C[0]}function jA(A){C[0]=A}var g=Q,E=g.a,F=E.buffer,NA=(E.grow=function(A){A|=0;var B=0|dC(),A=B+A|0;B<A&&A<65536&&(A=new ArrayBuffer(oA(A,65536)),new Int8Array(A).set(NA),NA=new Int8Array(A),WA=new Int16Array(A),kA=new Int32Array(A),aA=new Uint8Array(A),tA=new Uint16Array(A),$=new Uint32Array(A),s=new Float32Array(A),sA=new Float64Array(A),F=A,E.buffer=F,f=aA);return B},new Int8Array(F)),WA=new Int16Array(F),kA=new Int32Array(F),aA=new Uint8Array(F),tA=new Uint16Array(F),$=new Uint32Array(F),s=new Float32Array(F),sA=new Float64Array(F),oA=Math.imul,r=Math.fround,qA=Math.abs,P=Math.clz32,_A=Math.min,O=Math.max,v=Math.floor,u=Math.ceil,pA=(Math.trunc,Math.sqrt,g.abort),j=1/0,$A=g.b,n=g.c,V=g.d,d=g.e,c=g.f,D=g.g,G=g.h,R=g.i,q=g.j,I=g.k,h=g.l,Z=g.m,J=g.n,l=g.o,k=g.p,Y=g.q,M=g.r,b=g.s,mA=13043552,KA=0,LA=0,yA=0;function _(A){var p,m,K,B=0,f=0,w=0,Q=0,H=0,g=0,C=0,E=0,X=0,F=0,d=0,c=0,n=0,e=0,D=0,G=0,x=0,R=0,I=0,h=0,Z=0,J=0,V=0,Y=0,M=0,b=0,U=0,l=0,N=0,W=0,k=0,a=0,t=0,s=0,o=0,L=0,y=0,S=0,i=0,T=0,z=0,r=0,O=0,P=0,v=0,u=0,j=0,q=0,_=0,$=0,AA=0,BA=0,fA=0,wA=0,QA=0,HA=0,gA=0,CA=0,EA=0,XA=0,FA=0,dA=0,cA=0,nA=0,eA=0,DA=0,GA=0,xA=0,RA=0,IA=0,hA=0,ZA=0,JA=0,VA=0,YA=0,MA=0,bA=0;2==(0|KA)&&(kA[LA>>2]=kA[LA>>2]-304,w=kA[LA>>2],A=kA[w>>2],B=kA[w+4>>2],f=kA[w+8>>2],Q=kA[w+16>>2],g=kA[w+20>>2],H=kA[w+24>>2],C=kA[w+28>>2],E=kA[w+32>>2],n=kA[w+36>>2],e=kA[w+40>>2],X=kA[w+44>>2],G=kA[w+48>>2],d=kA[w+52>>2],x=kA[w+56>>2],D=kA[w+60>>2],I=kA[w+64>>2],R=kA[w+68>>2],h=kA[w+72>>2],b=kA[w+76>>2],Z=kA[w+80>>2],V=kA[w+84>>2],l=kA[w+88>>2],N=kA[w+92>>2],c=kA[w+100>>2],lA(0,kA[w+96>>2]),lA(1,0|c),U=+uA(),W=kA[w+104>>2],Y=kA[w+108>>2],c=kA[w+112>>2],a=kA[w+116>>2],t=kA[w+120>>2],s=kA[w+124>>2],o=kA[w+128>>2],k=kA[w+132>>2],S=kA[w+136>>2],i=kA[w+140>>2],L=kA[w+144>>2],F=kA[w+152>>2],lA(0,kA[w+148>>2]),lA(1,0|F),y=+uA(),z=kA[w+156>>2],r=kA[w+160>>2],O=kA[w+164>>2],F=kA[w+172>>2],lA(0,kA[w+168>>2]),lA(1,0|F),T=+uA(),P=kA[w+176>>2],q=kA[w+180>>2],v=kA[w+184>>2],$=kA[w+188>>2],u=kA[w+192>>2],AA=kA[w+196>>2],BA=kA[w+200>>2],fA=kA[w+204>>2],wA=kA[w+208>>2],QA=kA[w+212>>2],_=kA[w+216>>2],F=kA[w+224>>2],lA(0,kA[w+220>>2]),lA(1,0|F),HA=+uA(),gA=kA[w+228>>2],CA=kA[w+232>>2],EA=kA[w+236>>2],XA=kA[w+240>>2],FA=kA[w+244>>2],dA=kA[w+248>>2],cA=kA[w+252>>2],nA=kA[w+256>>2],eA=kA[w+260>>2],DA=kA[w+264>>2],GA=kA[w+268>>2],xA=kA[w+272>>2],RA=kA[w+276>>2],IA=kA[w+280>>2],hA=kA[w+284>>2],ZA=kA[w+288>>2],JA=kA[w+292>>2],VA=kA[w+296>>2],YA=kA[w+300>>2],w=kA[w+12>>2]),2==(0|KA)&&(kA[LA>>2]=kA[LA>>2]-4,M=kA[kA[LA>>2]>>2]),KA||(mA=f=-64&(w=(FA=f=mA)-14848|0),g=kA[A+11421072>>2],E=kA[A+11422112>>2]);A:{if(!KA||!M){if(F=zA(2),1==(0|KA))break A;w=F}if(!KA){for(kA[f+11264>>2]=w,kA[f+11272>>2]=H=w+2|0,WA[w>>1]=0,kA[f+11268>>2]=H,H=aA[A+11420432|0],Q=TA(f,0,11264),kA[Q+284>>2]=32002,kA[Q+272>>2]=f=A+9322496|0,kA[Q+268>>2]=w=A+933888|0,kA[Q+240>>2]=32002,kA[Q+228>>2]=f,kA[Q+224>>2]=w,kA[Q+196>>2]=32002,kA[Q+184>>2]=f,kA[Q+180>>2]=w,kA[Q+152>>2]=32002,kA[Q+140>>2]=f,kA[Q+136>>2]=w,kA[Q+108>>2]=32002,kA[Q+96>>2]=f,kA[Q+92>>2]=w,kA[Q- -64>>2]=32002,kA[Q+52>>2]=f,kA[Q+48>>2]=w,kA[Q+20>>2]=32002,kA[Q+8>>2]=f,kA[Q+4>>2]=w,z=Q+308|0;;){if(f=oA(B,44)+z|0,kA[f+12>>2]=B,kA[12+(oA(w=1|B,44)+z|0)>>2]=w,kA[f+100>>2]=B+2,!(n=249!=(0|(w=B+3|0))))break;kA[12+(oA(w,44)+z|0)>>2]=w,kA[f+232>>2]=B+5,kA[f+188>>2]=B+4,B=B+6|0}kA[Q+308>>2]=Q+11280,(V=g?0:E)&&(32001==(0|(f=kA[V+88>>2]))?(kA[(f=V- -64|0)>>2]=0,kA[f+4>>2]=0,kA[f+8>>2]=0,kA[f+12>>2]=0):(kA[V+64>>2]=f,kA[V+76>>2]=f,kA[V+72>>2]=f,kA[V+68>>2]=f)),w=kA[A+11422116>>2],NA[Q+11851|0]=7,NA[Q+11847|0]=0,kA[Q+11840>>2]=aA[12628]|aA[12629]<<8|(aA[12630]<<16|aA[12631]<<24),f=aA[12631]|aA[12632]<<8|(aA[12633]<<16|aA[12634]<<24),NA[Q+11843|0]=f,NA[Q+11844|0]=f>>>8,NA[Q+11845|0]=f>>>16,NA[Q+11846|0]=f>>>24,f=Ew(w,Q+11840|0),w=kA[f+28>>2],B=4!=(0|((E=(B=aA[f+35|0])<<24>>24<0)?w:B))}B:{f:{if(!KA){if(B)break f;if(B=rA(f+24|0,12021,4))break f;B=f+12|0}if(!KA||1==(0|M)){if(F=of(B),(J=1)==(0|KA))break A;w=F}if(!KA)break B}KA||(B=4!=((w=0)|((E=(B=aA[f+23|0])<<24>>24<0)?kA[f+16>>2]:B)))||(w=!(B=rA(f+12|0,12252,4)))}if(KA||((B=NA[Q+11851|0]<0)&&SA(B=kA[Q+11840>>2]),E=kA[A+11422116>>2]),!KA||2==(0|M)){if(F=zA(16),J=2,1==(0|KA))break A;B=F}KA||(kA[Q+11840>>2]=B,kA[Q+11844>>2]=11,kA[Q+11848>>2]=-2147483632,NA[B+11|0]=0,f=aA[12093]|aA[12094]<<8|(aA[12095]<<16|aA[12096]<<24),NA[B+7|0]=f,NA[B+8|0]=f>>>8,NA[B+9|0]=f>>>16,NA[B+10|0]=f>>>24,x=f=aA[12090]|aA[12091]<<8|(aA[12092]<<16|aA[12093]<<24),d=aA[12086]|aA[12087]<<8|(aA[12088]<<16|aA[12089]<<24),NA[0|B]=d,NA[B+1|0]=d>>>8,NA[B+2|0]=d>>>16,NA[B+3|0]=d>>>24,NA[B+4|0]=f,NA[B+5|0]=f>>>8,NA[B+6|0]=f>>>16,NA[B+7|0]=f>>>24,B=Ew(E,Q+11840|0),n=kA[B+28>>2],E=4!=(0|((g=(f=aA[B+35|0])<<24>>24<0)?n:f)),f=0);B:{f:{if(!KA){if(E)break f;if(E=rA(B+24|0,12021,4))break f;B=B+12|0}if(!KA||3==(0|M)){if(F=of(B),J=3,1==(0|KA))break A;f=F}if(!KA)break B}KA||(E=aA[B+23|0],n=kA[B+16>>2],E=4!=(0|((g=E<<24>>24<0)?n:E)))||(f=!(B=rA(B+12|0,12252,4)))}if(E=KA?E:kA[A+11422116>>2],!KA||4==(0|M)){if(F=zA(32),J=4,1==(0|KA))break A;B=F}KA||(kA[Q+14352>>2]=B,kA[Q+14356>>2]=17,kA[Q+14360>>2]=-2147483616,NA[B+17|0]=0,NA[B+16|0]=aA[12174],d=aA[12170]|aA[12171]<<8|(aA[12172]<<16|aA[12173]<<24),n=aA[12166]|aA[12167]<<8|(aA[12168]<<16|aA[12169]<<24),NA[B+8|0]=n,NA[B+9|0]=n>>>8,NA[B+10|0]=n>>>16,NA[B+11|0]=n>>>24,NA[B+12|0]=d,NA[B+13|0]=d>>>8,NA[B+14|0]=d>>>16,NA[B+15|0]=d>>>24,x=n=aA[12162]|aA[12163]<<8|(aA[12164]<<16|aA[12165]<<24),d=aA[12158]|aA[12159]<<8|(aA[12160]<<16|aA[12161]<<24),NA[0|B]=d,NA[B+1|0]=d>>>8,NA[B+2|0]=d>>>16,NA[B+3|0]=d>>>24,NA[B+4|0]=n,NA[B+5|0]=n>>>8,NA[B+6|0]=n>>>16,NA[B+7|0]=n>>>24,B=Ew(E,Q+14352|0),n=kA[B+28>>2],E=4!=(0|((g=(E=aA[B+35|0])<<24>>24<0)?n:E)));B:{f:{w:{Q:{if(!KA){if(E)break Q;if(E=rA(B+24|0,12021,4))break Q;B=B+12|0}if(!KA||5==(0|M)){if(F=of(B),J=5,1==(0|KA))break A;B=F}if(!KA)break w}if(!KA){if(E=aA[B+23|0],n=kA[B+16>>2],E=4!=(0|((g=E<<24>>24<0)?n:E)))break f;B=!rA(B+12|0,12252,4)}}if(!KA){if(B=!B)break f;E=kA[A+11422116>>2],NA[Q+14171|0]=7,NA[Q+14167|0]=0,kA[Q+14160>>2]=aA[11938]|aA[11939]<<8|(aA[11940]<<16|aA[11941]<<24),B=aA[11941]|aA[11942]<<8|(aA[11943]<<16|aA[11944]<<24),NA[Q+14163|0]=B,NA[Q+14164|0]=B>>>8,NA[Q+14165|0]=B>>>16,NA[Q+14166|0]=B>>>24,B=Ew(E,Q+14160|0),n=kA[B+28>>2],E=4!=(0|((g=(E=aA[B+35|0])<<24>>24<0)?n:E))}w:{Q:{H:{g:{if(!KA){if(E)break g;if(E=rA(B+24|0,12021,4))break g;B=B+12|0}if(!KA||6==(0|M)){if(F=of(B),J=6,1==(0|KA))break A;B=F}if(!KA)break H}if(!KA){if(E=aA[B+23|0],n=kA[B+16>>2],E=4!=(0|((g=E<<24>>24<0)?n:E)))break Q;B=!rA(B+12|0,12252,4)}}if(!KA&&!(E=!B)){U=(B=(U=((37.2473*(U=(B-1320|0)/1870)-40.8525)*U+22.2943)*U-.311438)<0)?0:_A(U,19);break w}}U=KA?U:0|f}if(!KA){if(B=0<=NA[Q+14171|0])break B;SA(B=kA[Q+14160>>2]);break B}}U=KA?U:0|f}if(!KA){for(NA[Q+14363|0]<0&&SA(kA[Q+14352>>2]),NA[Q+11851|0]<0&&SA(kA[Q+11840>>2]),l=A+11419816|0,f=A+393216|0,B=A+262144|0,E=kA[A+11421052>>2]-kA[A+11421048>>2]|0;;)if(WA[B+24>>1]=97,WA[B+26>>1]=97,WA[B+28>>1]=97,WA[B+30>>1]=97,WA[B+16>>1]=97,WA[B+18>>1]=97,WA[B+20>>1]=97,WA[B+22>>1]=97,WA[B+8>>1]=97,WA[B+10>>1]=97,WA[B+12>>1]=97,WA[B+14>>1]=97,WA[B>>1]=97,WA[B+2>>1]=97,WA[B+4>>1]=97,WA[B+6>>1]=97,(0|f)==(0|(B=B+32|0)))break;for(g=4<w>>>0?w:4,f=A+524288|0,B=A+393216|0;;)if(WA[B+24>>1]=97,WA[B+26>>1]=97,WA[B+28>>1]=97,WA[B+30>>1]=97,WA[B+16>>1]=97,WA[B+18>>1]=97,WA[B+20>>1]=97,WA[B+22>>1]=97,WA[B+8>>1]=97,WA[B+10>>1]=97,WA[B+12>>1]=97,WA[B+14>>1]=97,WA[B>>1]=97,WA[B+2>>1]=97,WA[B+4>>1]=97,WA[B+6>>1]=97,(0|f)==(0|(B=B+32|0)))break;for(D=A+655360|0,B=A+524288|0,f=(0|E)/56|0;;)if(WA[B+24>>1]=97,WA[B+26>>1]=97,WA[B+28>>1]=97,WA[B+30>>1]=97,WA[B+16>>1]=97,WA[B+18>>1]=97,WA[B+20>>1]=97,WA[B+22>>1]=97,WA[B+8>>1]=97,WA[B+10>>1]=97,WA[B+12>>1]=97,WA[B+14>>1]=97,WA[B>>1]=97,WA[B+2>>1]=97,WA[B+4>>1]=97,WA[B+6>>1]=97,(0|D)==(0|(B=B+32|0)))break;for(E=A+786432|0,B=A+655360|0;;)if(WA[B+24>>1]=97,WA[B+26>>1]=97,WA[B+28>>1]=97,WA[B+30>>1]=97,WA[B+16>>1]=97,WA[B+18>>1]=97,WA[B+20>>1]=97,WA[B+22>>1]=97,WA[B+8>>1]=97,WA[B+10>>1]=97,WA[B+12>>1]=97,WA[B+14>>1]=97,WA[B>>1]=97,WA[B+2>>1]=97,WA[B+4>>1]=97,WA[B+6>>1]=97,(0|E)==(0|(B=B+32|0)))break;for(E=A+917504|0,B=A+786432|0;;)if(WA[B+24>>1]=97,WA[B+26>>1]=97,WA[B+28>>1]=97,WA[B+30>>1]=97,WA[B+16>>1]=97,WA[B+18>>1]=97,WA[B+20>>1]=97,WA[B+22>>1]=97,WA[B+8>>1]=97,WA[B+10>>1]=97,WA[B+12>>1]=97,WA[B+14>>1]=97,WA[B>>1]=97,WA[B+2>>1]=97,WA[B+4>>1]=97,WA[B+6>>1]=97,(0|E)==(0|(B=B+32|0)))break;for(B=0;;)if(WA[(D=(E=B<<1)+A|0)>>1]=68+((oA(WA[D>>1],3)-204|0)/4|0),WA[(E=(2|E)+A|0)>>1]=68+((oA(WA[E>>1],3)-204|0)/4|0),65536==(0|(B=B+2|0)))break;for(E=A+131072|(B=0);;)if(WA[(G=(D=B<<1)+E|0)>>1]=68+((oA(WA[G>>1],3)-204|0)/4|0),D=68+((oA(WA[(n=E+(2|D)|0)>>1],3)-204|0)/4|0)|0,WA[n>>1]=D,!(n=65536!=(0|(B=B+2|0))))break;B=kA[A+11421060>>2],kA[A+11421060>>2]=B+1,s=(E=f>>>0<(w=U<20?g:w)>>>0)?f:w,B=(0|B)<245}B:{if(2==(0|KA)|B){for(KA||(B=1^H,w=qA(U)<2147483648?~~U:-2147483648,E=1==(0|s),g=0!=(0|V),H<<=2,f=A+11419808|0,B<<=2,n=s-1|0,dA=D=qA(HA=120-(U+U))<2147483648?~~HA:-2147483648,cA=g&E,nA=f+H|0,eA=B+f|0,DA=A+262144|0,gA=A+917504|0,CA=A+12433920|0,GA=w+1|0,xA=Q+264|0,r=Q+352|0,RA=oA(n,56),i=A+11419652|0,O=A+11422144|0,T=1,B=fA=-32001);;){if(!KA){if(1&NA[kA[A+11422120>>2]])break B;if(V&&(f=kA[A+11419732>>2])&&(0|f)<kA[A+11421060>>2])break B;if(H=(0|(f=kA[A+11421048>>2]))!=(0|(w=kA[A+11421052>>2])))for(;;)if(kA[f+12>>2]=kA[f+8>>2],!(H=(0|w)!=(0|(f=f+56|0))))break;kA[A+11419772>>2]=0,EA=(1&(-1^(f=aA[kA[A+11422120>>2]+2|0])))+EA|(kA[A+11419768>>2]=0),w=!s}f:{w:{Q:{H:{g:{if(!KA){if(w)break g;IA=(0|(B=oA(EA,3)+3|0))/-4|0,H=XA=0}for(;;){if(!KA){if(kA[A+11419772>>2]!=(0|H))f=kA[A+11421048>>2];else{for(f=kA[A+11421048>>2],w=(w=H+1|0)>>>0<(E=(kA[A+11421052>>2]-f|0)/56|0)>>>0?E:w,g=oA(H,56)+f|0,B=H;;){if(E>>>0<=(B=B+1|0)>>>0)B=w;else if((0|(D=kA[g+36>>2]))==kA[36+(oA(B,56)+f|0)>>2])continue;break}kA[A+11419772>>2]=B,XA=H}kA[A+11419800>>2]=$=0,f=oA(H,56)+f|0,w=kA[f+20>>2],B=kA[A+11421072>>2],E=(f=kA[f+16>>2])>>31,E=(0|oA(f,142))/(91+((f^E)-E|0)|0)|0,kA[nA>>2]=E,kA[eA>>2]=0-E,n=(H=(0|(w=f+(L=5+(((((F=w)^(w>>=31))-w>>>0)/9e3|0)+(7&B)|0)|0)|0))<32001)?w:32001,E=(w=-32001<(0|(f=f-L|0)))?f:-32001}for(;;){if(KA||(kA[A+11421068>>2]=n-E,e=kA[A+11421060>>2],kA[Q+14152>>2]=0,kA[Q+14080>>2]=0,f=kA[A+11420424>>2],d=kA[f+72>>2],x=w=kA[f+76>>2],NA[Q+340|0]=w=0!=(w|d),wA=aA[A+11420432|0],QA=aA[f+184|0],kA[Q+336>>2]=0,B=!B),2==(0|KA)|B&&(KA||(f=kA[A+11422112>>2],B=kA[kA[f>>2]+8>>2]),!KA||7==(0|M))&&(vA[0|B](f,A),J=7,1==(0|KA)))break A;if(!KA){(0|(f=kA[Q+320>>2]))>=kA[A+11419800>>2]&&(kA[A+11419800>>2]=f+1),o=64,!(f=tA[Q+280>>1])|65==(0|f)||(o=63&f),kA[Q+432>>2]=0,kA[Q+332>>2]=0,Z=kA[Q+304>>2],kA[Q+304>>2]=0,f=kA[A+11420424>>2],d=kA[f+64>>2],x=kA[f+68>>2],P=tA[Q+326>>1],14<=(0|(f=kA[f+52>>2]))&&(f=OA(f-14>>>3|0,0,1284865837,1481765933)-144211633|0,c=yA+335903614|0,d^=Y=f,x^=c=f>>>0<4150755663?c+1|0:c),Lw(Q+13984|0,kA[A+11422124>>2],d,x),R=aA[Q+13984|0],NA[Q+342|0]=R,H=tA[kA[44+(kA[A+11421048>>2]+oA(kA[A+11419768>>2],56)|0)>>2]>>1],WA[Q+13988>>1]=H,f=32002;C:if(R&&32002!=(0|(w=kA[Q+13992>>2])))if(B=kA[kA[A+11420424>>2]+52>>2],g=kA[Q+320>>2],31507<=(0|w)){if(w>>>0<=31753)G=100-B|0;else if(f=31506,(0|(G=100-B|0))<(32e3-w|0))break C;f=(0|G)<(31753-w|0)?31506:w-g|0}else if(-31507<(0|w))f=w;else{if(4294935543<=w>>>0)G=100-B|0;else if(f=-31506,(0|(G=100-B|0))<(w+32e3|0))break C;f=(0|G)<(w+31753|0)?-31506:w+g|0}if(kA[Q+13992>>2]=f,NA[Q+341|0]=!P|0!=aA[Q+341|0],u=0,H&&(u=1,0!=aA[11419816+((63&H)+A|0)|0]&H>>>0<49152|32768==(49152&H)||(u=12288==(12288&H))),w=2<=(B=aA[A+11420432|0])>>>0)break H;g=kA[i>>2],D=kA[g+4>>2],B<<=3,g=kA[g+16>>2],w=kA[A+11420424>>2],F=WA[4+(B+(D+((g&kA[w+24>>2])<<4)|0)|0)>>1],J=WA[2+(B+(D+((g&kA[w+16>>2])<<4)|0)|0)>>1],I=WA[B+(D+((g&kA[w+8>>2])<<4)|0)>>1],G=WA[6+(B+(D+((g&kA[w+32>>2])<<4)|0)|0)>>1],B=62728,(X=(X=!(D=tA[Q+280>>1]))||65==(0|D))||(D=aA[11419816+((B=63&D)+A|0)|0]<<7,B<<=1,X=WA[(D+kA[Q+140>>2]|0)+B>>1],a=kA[Q+228>>2],B=oA(X+WA[B+(D+a|0)>>1]|0,7841)),D=(g=((C=oA(I,10347))+oA(J,8821)|0)+oA(F+G|0,11665)|0)+B|0,B=aA[Q+340|0]}C:{E:{X:{F:{d:{if(!KA){if(B){B=kA[Q+240>>2],kA[Q+328>>2]=B,a=32002;break d}if(P){a=B=kA[Q+328>>2];break d}}if(2==(0|KA)|R){if(KA||(B=32002==(0|(a=kA[Q+13996>>2]))),2==(0|KA)|B){if(KA||(B=kA[A+11422128>>2],w=kA[A+11421084>>2]),(!KA||8==(0|M))&&(rf(B,w),J=8,1==(0|KA)))break A;if(!KA){if(w=kA[B+8>>2]+(w<<3)|0,B=255==(0|(g=aA[w+4|0])))break X;kA[Q+11840>>2]=Q+14352,g=kA[6657604+(g<<2)>>2],B=Q+11840|0}if(!KA||9==(0|M)){if(F=0|vA[0|g](B,w),J=9,1==(0|KA))break A;w=F}KA||(g=kA[11419808+((aA[A+11420432|0]<<2)+A|0)>>2],X=(0|XQ(w,l,O,CA,B,C=((kA[A+11419960>>2]+kA[A+11419992>>2]|0)-1|0)/4|0))/16|0,h=oA(X,125),w=(0|gB(12255872+(oA(C,5568)+w|0)|0,B))/16|0,I=(h+oA(w,131)|0)/128|0,B=(C=X-w|0)>>31,w=kA[A+11420424>>2],G=kA[w+44>>2]+(kA[w+40>>2]+oA(kA[A+11419996>>2]+kA[A+11419964>>2]|0,534)|0)|0,C=oA(X=G+77871|0,((0|oA(B=(B^C)-B|0,I))/-18236|0)+I|0),B=(oA(G=G+7191|0,g+((0|oA(B,g))/476|0)|0)+C|0)/77871|0,a=(g=-31506<(0|(B=(0|(B=((0|oA(B,kA[w+52>>2]))/-199|0)+B|0))<31506?B:31506)))?B:-31506)}if(!KA){if(kA[Q+328>>2]=B=-31506<(0|(B=(0|(B=((0|D)/131072|0)+a|0))<31506?B:31506))?B:-31506,g=32002==(0|f))break d;g=(C=(0|B)<(0|f)?2:1)&aA[Q+14004|0]?f:B;break F}}if(KA||(B=kA[A+11422128>>2],w=kA[A+11421084>>2]),(!KA||10==(0|M))&&(rf(B,w),J=10,1==(0|KA)))break A;if(!KA){if(w=kA[B+8>>2]+(w<<3)|0,B=255==(0|(g=aA[w+4|0])))break X;kA[Q+11840>>2]=Q+14352,g=kA[6657604+(g<<2)>>2],B=Q+11840|0}if(!KA||11==(0|M)){if(F=0|vA[0|g](B,w),J=11,1==(0|KA))break A;w=F}if(!KA){if(g=kA[11419808+((aA[A+11420432|0]<<2)+A|0)>>2],X=(0|XQ(w,l,O,CA,B,C=((kA[A+11419960>>2]+kA[A+11419992>>2]|0)-1|0)/4|0))/16|0,w=(0|gB(12255872+(oA(C,5568)+w|0)|0,B))/16|0,B=(oA(X,125)+oA(w,131)|0)/128|0,F=g+((0|oA(C=((w=(C=X-w|0)>>31)^C)-w|0,g))/476|0)|0,w=kA[A+11420424>>2],g=kA[w+44>>2]+(kA[w+40>>2]+oA(kA[A+11419996>>2]+kA[A+11419964>>2]|0,534)|0)|0,B=(B=(oA(F,g+7191|0)+oA(B+((0|oA(B,C))/-18236|0)|0,g+77871|0)|0)/77871|0)+((0|oA(B,kA[w+52>>2]))/-199|0)|0,kA[Q+328>>2]=B=-31506<(0|(B=(0|(B=(a=-31506<(0|(B=(0|B)<31506?B:31506))?B:-31506)+((0|D)/131072|0)|0))<31506?B:31506))?B:-31506,G=aA[kA[A+11422124>>2]+8|0],C=aA[Q+341|0],I=d,g=kA[Q+14008>>2],X=(0|(h=65535&d))!=tA[g>>1])WA[g+4>>1]=0;else if(!(X=(0|(h=C?3:1))>(aA[g+2|0]-4|0))&&(X=(7+(G-aA[g+3|0]|0)&255)>>>0<8))break d;WA[g+8>>1]=a,WA[g+6>>1]=32002,NA[g+2|0]=1,WA[g>>1]=I,NA[g+3|0]=C=(0!=(0|C))<<2|G}}g=KA?g:B}if(!KA){if(I=(G=(2<(0|Z)&(0|B)<=(0|(W=0-(C=kA[Q+284>>2])|0)))+((X=1<(0|(X=(IA-$|0)+e|0))?X:1)>>>0<245?X:245)|0)-(173<(0|(e=B+C|0))&(X=1<(0|Z)&1<G>>>0))|0,G=kA[Q+240>>2],C=aA[Q+340|0]){S=(0|G)<(0|B);break E}if((X=(X=!(C=tA[Q+280>>1]))||((X=65==(0|C))||aA[Q+296|0]|QA))||(F=0-e|0,e=(b=(X=WA[(h=X=(((1^wA)<<17)+A|0)+(C<<1)|0)>>1])+(e=-7183<(0|(e=(0|(e=oA(S=209<(0|e)?-150:((0|F)<167?F:167)+59|0,9)))<7183?e:7183))?e:-7183)|0)+((0|oA((e^(t=e>>31))-t|0,X))/-7183|0)|0,WA[h>>1]=e,R)||(e=1==(7&(R=aA[11419816+(A+o|0)|0])))||(C=16384==(49152&C))||(F=kA[w+8>>2],w=kA[i>>2],e=((((F&kA[w+20>>2])<<11)+kA[w+12>>2]|0)+(R<<7)|0)+(o<<1)|0,X=(R=WA[e>>1])+(w=-8192<(0|(w=(0|(w=oA(S,13)))<8192?w:8192))?w:-8192)|0,WA[e>>1]=((0|oA((w^(C=w>>31))-C|0,R))/-8192|0)+X),!(aA[Q+341|0]|13<I>>>0||(R=(0|g)<(0|n))||(C=(e=(0|G)<(0|B)?2474:0)+((0|W)<(0|B)?331:0)|0,w=oA(1^aA[Q+342|0],-23)+76&255,((R=oA(C,w)>>>10|0)+(g-((F=oA(w,I))+((((w=D>>31)^D)-w>>>0)/174665|0)|0)|0)|0)<(0|n)|(0|n)<-31506|!(!H|u))||(w=31506<(0|g)))){B=((n<<1)+g|0)/3|0;break C}if(S=(w=(0|G)<(0|B))|(g=(0|n)<=(0|(B=kA[Q+328>>2]))),6<=I>>>0)I=I-((g=(0|Z)<4)&!H)|0;else if(w=I>>>0<3)break E;if(G=235+((S?-63:0)+n|0)|0,w=n-31507>>>0<4294904283)break E;if(w=(g=(0|f)<(0|G))&32002!=(0|f))break E;NA[Q+11904|0]=0,kA[Q+11852>>2]=gA,kA[Q+11840>>2]=l,kA[Q+11892>>2]=G-B,w=11,(g=!(WA[Q+11864>>1]=H))||!(g=(g=0!=aA[11419816+((63&H)+A|0)|0]&H>>>0<49152)||32768==(49152&H))&&(g=12288!=(12288&H))||(w=RB(l,H)?10:11,B=kA[Q+328>>2]),R=0-G|0,kA[Q+11888>>2]=w,w=(0|I)<(0|(B=(((B-n|0)/-315|0)+I|0)-5|0))?I:B,h=(Z=(B=(0|B)<0)?0:w)+4|0,q=Z+1|0,e=d,C=1-G|0}for(;;){if(!KA){if(w=!(W=65535&(B=AB(Q+11840|0))))break E;if(w=(0|W)==(0|P))continue;if(w=!SB(l,B))continue;t=GB(l,B),F=aA[11419816+((v=63&B)+A|0)|0],w=kA[A+11419780>>2],Y=c=kA[A+11419776>>2]+1|0,c=w=c?w:w+1|0,kA[A+11419776>>2]=Y,kA[A+11419780>>2]=w,X=kA[A+12433856>>2],w=oA(X,1856)+O|0,WA[w+1728>>1]=0,WA[w+1088>>1]=0,g=oA(X,2240)+O|0,WA[g+459520>>1]=0,WA[g+460160>>1]=0,kA[g+460608>>2]=0,kA[A+12433856>>2]=X+1,fB(l,B,Q+14160|0,t,N=w+1792|0,g+460224|0,k=kA[A+11422124>>2],_=kA[i>>2]),WA[Q+324>>1]=B,w=aA[w+1792|0]<<17,kA[Q+316>>2]=9322496+((g=v<<11)+(w+A|0)|0),X=(W=((b=12288==(12288&B))|0!=(0|F)&W>>>0<49152|32768==(49152&B))<<21)+((aA[Q+340|0]<<22)+A|0)|0,kA[Q+312>>2]=w=933888+((w+X|0)+g|0)|0}if(!KA||12==(0|M)){if(F=QB(A,l,r,R,C),J=12,1==(0|KA))break A;w=F}KA||(g=(0|(w=0-w|0))<(0|G));F:{if(!KA){if(g)break F;if(g=(0|Z)<=0)break F}if(!KA||13==(0|M)){if(F=BB(A,l,r,R,C,Z,1),J=13,1==(0|KA))break A;w=F}w=KA?w:0-w|0}if(!KA){if(EB(l,B),kA[A+12433856>>2]=kA[A+12433856>>2]-1,g=(0|w)<(0|G))continue;if(W=aA[kA[A+11422124>>2]+8|0],X=aA[Q+341|0],t=kA[Q+320>>2],g=kA[Q+14008>>2],WA[g+4>>1]=B,tA[g>>1]==(65535&e)&&!((0|(b=aA[g+2|0]-4|0))<((X?5:3)+q|0))&&(7+(W-aA[g+3|0]|0)&255)>>>0<8||(WA[g+8>>1]=a,WA[g+6>>1]=((b=31506<(0|w))?t:0-((0|w)<-31506?t:0)|0)+w,NA[g+2|0]=h,WA[g>>1]=e,NA[g+3|0]=(X?6:2)|W),B=w-31507>>>0<4294904283)continue}break}if(!KA){B=(n-G|0)+w|0;break C}}KA||(PA(),pA())}if(!KA){if(!(!(2&aA[Q+14004|0])|n-31507>>>0<4294904283|kA[Q+14e3>>2]<(I-4|0)||32002==(0|f)|(0|f)<(0|(B=n+418|0))||!(w=4294904282<f-31507>>>0)))break C;kA[Q+11808>>2]=kA[Q+268>>2],kA[Q+11812>>2]=kA[Q+224>>2],kA[Q+11816>>2]=kA[Q+180>>2],kA[Q+11820>>2]=kA[Q+136>>2],kA[Q+11824>>2]=kA[Q+92>>2],kA[Q+11828>>2]=kA[Q+48>>2],f=kA[i>>2],NA[Q+11904|0]=0,kA[Q+11900>>2]=kA[Q+320>>2],kA[Q+11896>>2]=I,WA[Q+11864>>1]=H,kA[Q+11860>>2]=f,kA[Q+11852>>2]=gA,kA[Q+11848>>2]=DA,kA[Q+11844>>2]=A,kA[Q+11840>>2]=l,kA[Q+11856>>2]=Q+11808,F=Q,f=kA[A+11420424>>2],(c=kA[f+76>>2])|(Y=kA[f+72>>2])?(w=8,H&&(w=RB(l,H)?7:8)):(w=0<(0|I)?0:13,w=(f=H?1^RB(l,H):1)+w|0),kA[F+11888>>2]=w,hA=714-(B=((D^(f=D>>31))-f>>>0)/30370|0)|0,ZA=(g=0)-n|0,G=0,D=E,w=-32001}E:{X:{F:{d:for(;;){for(KA||(q=I+1|0,t=0-D|0,v=-1^D,JA=oA(n-D|0,608),VA=(B=(I<<2)+A|0)+11421088|0,Z=I-1|0);;){R=KA?R:G;c:{n:{e:{D:{if(!KA){for(;;){if(B=!(W=65535&(H=AB(Q+11840|0)))){f=w,H=g,G=R;break D}if((0|W)!=(0|P)&&(SB(l,H)&&!(C=(0|(f=kA[A+11419772>>2]))==(0|(B=kA[A+11419768>>2]))))){for(C=(F=oA(f,56))+(f=kA[A+11421048>>2])|0,B=f+oA(B,56)|0,f=0;;)if(f=(tA[kA[B+44>>2]>>1]==(0|W))+f|0,(0|C)==(0|(B=B+56|0)))break;if(f)break}}kA[Q+336>>2]=G=R+1|0,B=kA[A+11421072>>2]}G:{x:{R:{I:{if(!KA){if(B)break I;if(B=!(c=B=kA[A+11419780>>2])&(Y=kA[A+11419776>>2])>>>0<10000001)break I;f=kA[kA[A+11422112>>2]+104>>2],kA[Q+11792>>2]=I,C=aA[A+11420433|0],B=Q+11776|0}if((!KA||14==(0|M))&&(Rf(B,H,C),J=14,1==(0|KA)))break A;if(!KA){if(e=aA[Q+11787|0],X=kA[Q+11780>>2],kA[Q+11800>>2]=(C=e<<24>>24<0)?X:e,e=kA[Q+11776>>2],kA[Q+11796>>2]=C?e:B,kA[Q+11804>>2]=kA[A+11419768>>2]+G,B=!(f=kA[f- -64>>2]))break R;C=kA[kA[f>>2]+24>>2],B=Q+11792|0}if((!KA||15==(0|M))&&(vA[0|C](f,B),J=15,1==(0|KA)))break A;KA||(B=0<=NA[Q+11787|0])||SA(B=kA[Q+11776>>2])}KA||(kA[Q+352>>2]=0,X=aA[(f=A+11419816|0)+(W>>>6&63)|0],C=aA[f+(e=63&H)|0],Y=GB(l,H),N=kA[11421088+((G<<2)+A|0)>>2],k=kA[VA>>2],F=aA[Q+341|0],c=kA[A+11419780>>2],c=(f=kA[A+11419776>>2]+1|0)?c:c+1|0,kA[A+11419776>>2]=f,kA[A+11419780>>2]=c,J=kA[A+11421068>>2],c=kA[A+12433856>>2],f=oA(c,1856)+O|0,WA[f+1088>>1]=0,WA[f+1728>>1]=0,B=oA(c,2240)+O|0,WA[B+459520>>1]=0,WA[B+460160>>1]=0,kA[B+460608>>2]=0,kA[A+12433856>>2]=c+1,fB(l,H,Q+14160|0,Y,f+1792|0,B+460224|0,kA[A+11422124>>2],kA[i>>2]),WA[Q+324>>1]=H,f=aA[f+1792|0]<<17,kA[Q+316>>2]=9322496+((B=e<<11)+(f+A|0)|0),kA[Q+312>>2]=933888+(B+(f+(((aA[Q+340|0]<<22)+A|0)+((_=0!=(0|C)&W>>>0<49152|32768==(49152&H)|12288==(12288&H))<<21)|0)|0)|0),f=(((f=oA(N,k))-((0|JA)/(0|J)|0)|0)+(S?0:(0|oA(f,238))/512|0)|0)+(F?2128:1182)|0,Y=kA[A+11419776>>2],c=kA[A+11419780>>2],aA[Q+341|0]&&(f=(f+(kA[Q+13992>>2]>(0|D)?-4624:-3702)|0)+(kA[Q+14e3>>2]<(0|I)?0:-934)|0),f=(oA(G,-73)+hA|0)+f|0,f=(F=u?f+1119|0:f)+(1<(0|(f=kA[Q+388>>2]))?2==(0|f)?256:1280:0)|0,B=(0|W)==(0|(h=tA[Q+13988>>1]))?f-2151|0:f,_?(f=917504+((b=(7&(C=aA[kA[A+11420424>>2]+184|0]))<<1)+(((X<<10)+A|0)+(e<<4)|0)|0)|0,C=(0|oA(kA[31648+(C<<2)>>2],868))/128|0):(C=WA[(F=e<<1)+((f=X<<7)+kA[Q+11808>>2]|0)>>1]+(WA[(k=W<<1)+((wA<<17)+A|0)>>1]<<1)|0,f=F+(b=f+(N=kA[Q+11812>>2])|0)|0),f=WA[f>>1]+C|0,kA[Q+332>>2]=f,f=B+((0|oA(f,850))/-8192|0)|0,B=(0|I)<2);I:{h:{Z:{J:{V:{if(!KA){if(B)break V;if(B=!R)break V;kA[Q+348>>2]=B=Z-(C=(1<(0|(f=(0|q)<(0|(f=((0|f)/-1024|0)+Z|0))?q:f))?f:1)+1|0)|0}if(!KA||16==(0|M)){if(F=BB(A,l,r,v,t,C,1),J=16,1==(0|KA))break A;f=F}if(!KA){if(B=((kA[Q+348>>2]=0)|(f=0-f|0))<=(0|D))break J;C=C>>>0<(B=(b=(N=C>>>0<Z>>>0)&(w+50|0)<(0|f))+(Z-((0|f)<(w+9|0))|0)|0)>>>0}if(2==(0|KA)|C){if(!KA||17==(0|M)){if(F=BB(A,l,r,v,t,B,1),J=17,1==(0|KA))break A;f=F}f=KA?f:0-f|0}if(!KA){uB(z,X,e,1365);break Z}}if(!KA){if(!R){C=1,B=Z;break h}B=(Z-(3957<(0|(B=h?f:f+1140|0)))|0)-(f=(C=3<(0|I))&5654<(0|B))|0}if(!KA||18==(0|M)){if(F=BB(A,l,r,v,t,B,1),J=18,1==(0|KA))break A;B=F}f=KA?f:0-B|0}B=KA?B:Z}if(!KA&&(e=((C=0)|f)<=(0|D)))break I}if(!KA){WA[Q+14352>>1]=0,kA[Q+352>>2]=Q+14352,f=(0|h)!=(0|W);h:if(!f){Z:{if(e=32002!=(0|(f=kA[Q+13992>>2]))){if(e=(X=0<(0|(F=kA[Q+14e3>>2])))&f-31507>>>0<4294904283)break Z;if(f=1<(0|F))break Z;break h}if(f=kA[Q+14e3>>2]<2)break h}B=(f=1<(0|B))?B:1}}if(!KA||19==(0|M)){if(F=function p(A,B,f,w,Q,H){var g=0,C=0,E=0,X=0,F=0,d=0,c=0,n=0,e=0,D=0,G=0,x=0,R=0,I=0,h=0,Z=0,J=0,V=0,Y=0,M=0,b=0,U=0,l=0,N=0,W=0,k=0,a=0,t=0,s=0,o=0,m=0,K=0,L=0,y=0,S=0,i=0,T=0,z=0,r=0,O=0,P=0,v=0;2==(0|KA)&&(kA[LA>>2]=kA[LA>>2]-176,B=kA[LA>>2],A=kA[B>>2],f=kA[B+8>>2],w=kA[B+12>>2],Q=kA[B+16>>2],H=kA[B+20>>2],C=kA[B+24>>2],g=kA[B+28>>2],F=kA[B+32>>2],d=kA[B+36>>2],X=kA[B+40>>2],G=kA[B+44>>2],n=kA[B+48>>2],D=kA[B+52>>2],e=kA[B+56>>2],c=kA[B+60>>2],R=kA[B+64>>2],x=kA[B+68>>2],h=kA[B+72>>2],I=kA[B+76>>2],Z=kA[B+80>>2],J=kA[B+84>>2],Y=kA[B+88>>2],b=kA[B+92>>2],N=kA[B+96>>2],M=kA[B+100>>2],l=kA[B+104>>2],W=kA[B+108>>2],s=kA[B+112>>2],k=kA[B+116>>2],a=kA[B+120>>2],t=kA[B+124>>2],o=kA[B+128>>2],K=kA[B+132>>2],L=kA[B+136>>2],y=kA[B+140>>2],m=kA[B+144>>2],T=kA[B+148>>2],z=kA[B+152>>2],r=kA[B+156>>2],O=kA[B+160>>2],P=kA[B+164>>2],S=kA[B+168>>2],i=kA[B+172>>2],B=kA[B+4>>2]);2==(0|KA)&&(kA[LA>>2]=kA[LA>>2]-4,U=kA[kA[LA>>2]>>2]);KA||(kA[(mA=C=(N=g=mA)-3072&-64)+3060>>2]=f,g=(0|H)<=0);h:{if(2==(0|KA)|g){if(!KA||!U){if(E=wB(A,B,f,w,Q),1==(0|KA))break h;A=E}if(!KA)return mA=N,A}g=KA?g:0<=(0|w);Z:{J:{V:{Y:{M:{b:{if(!KA){if(!g&&Iw(kA[(E=B- -64|0)>>2],kA[E+4>>2],kA[B+608>>2],kA[f+12>>2])){if(f=2&kA[A+11419776>>2],w=f-1|0,f=(0|Q)<(0|f))break b;f=kA[C+3060>>2]}kA[C+2360>>2]=0,kA[C+2288>>2]=0,g=kA[B+608>>2],W=kA[g+72>>2],F=kA[g+76>>2],F=0!=((s=F)|W),NA[f+32|0]=F,t=aA[B+616|0],K=aA[g+184|0],kA[f+28>>2]=0,g=!kA[A+11421072>>2]}if(2==(0|KA)|g&&(KA||(g=kA[A+11422112>>2],F=kA[kA[g>>2]+8>>2]),!KA||1==(0|U))&&(vA[0|F](g,A),(V=1)==(0|KA)))break h;if(!KA){(0|(g=kA[f+12>>2]))>=kA[A+11419800>>2]&&(kA[A+11419800>>2]=g+1);U:{l:if(!(1&NA[kA[A+11422120>>2]])){N:{if(D=kA[B+608>>2],100<=kA[D+52>>2]){if(!(kA[D+72>>2]|kA[D+76>>2]))break N;if((0|(X=C- -64|0))!=(0|ZQ(B,X)))break N;D=kA[B+608>>2]}if(c=kA[f+12>>2],!(R=kA[D+188>>2])|(0|g)<=(0|R))break U;g=c;break l}g=kA[f+12>>2]}if(w=(0|g)<246)break J;break V}if(245<(0|c))break V;if((0|(h=(g=(0|(n=31999-c|0))<(0|Q))?n:Q))<=(0|(R=(0|w)<(0|(c=c-32e3|0))?c:w)))return mA=N,R;b=64,!(w=tA[f-28>>1])|65==(0|w)||(b=63&w),kA[f+24>>2]=0,kA[f+124>>2]=0,I=kA[(w=f-4|0)>>2],kA[w>>2]=0,W=kA[D+64>>2],s=kA[D+68>>2],k=tA[f+18>>1],14<=(0|(f=kA[D+52>>2]))&&(w=OA(f-14>>>3|0,0,1284865837,1481765933)-144211633|0,f=yA+335903614|0,W^=w,s^=w>>>0<4150755663?f+1|0:f),Lw(C+2192|0,kA[A+11422124>>2],W,s),f=kA[C+3060>>2],n=aA[C+2192|0];U:if(NA[f+34|0]=n){if(D=tA[C+2196>>1],c=kA[C+2200>>2],(w=32002)!=(0|c))if(g=kA[f+12>>2],Q=kA[kA[B+608>>2]+52>>2],31507<=(0|c)){if(c>>>0<=31753)Q=100-Q|0;else if(w=31506,(0|(Q=100-Q|0))<(32e3-c|0))break U;w=(0|Q)<(31753-c|0)?31506:c-g|0}else if(!(-31507<(0|(w=c)))){if(4294935543<=c>>>0)Q=100-Q|0;else if(w=-31506,(0|(Q=100-Q|0))<(c+32e3|0))break U;w=(0|Q)<(c+31753|0)?-31506:g+c|0}}else D=0,WA[C+2196>>1]=0,w=32002;if(F=w,kA[C+2200>>2]=F,NA[f+33|0]=k?0!=aA[f+33|0]:1,c=0,65535&D&&(c=1,0!=aA[(63&D)+B|0]&(65535&D)>>>0<49152|32768==(49152&D)||(c=12288==(12288&D))),w=aA[B+616|0],Q=2<=w>>>0)break M;Z=H>>>0<245,g=kA[A+11419652>>2],Q=kA[g+4>>2],w<<=3,g=kA[g+16>>2],J=kA[B+608>>2],X=WA[4+(w+(Q+((g&kA[J+24>>2])<<4)|0)|0)>>1],Y=WA[2+(w+(Q+((g&kA[J+16>>2])<<4)|0)|0)>>1],E=WA[w+(Q+((g&kA[J+8>>2])<<4)|0)>>1],g=WA[6+(w+(Q+((g&kA[J+32>>2])<<4)|0)|0)>>1],w=62728,Q=tA[f-28>>1],(G=(G=!Q)||65==(0|Q))||(Q=aA[(w=63&Q)+B|0]<<7,w<<=1,G=WA[(Q+kA[f-168>>2]|0)+w>>1],e=kA[f-80>>2],w=oA(G+WA[w+(Q+e|0)>>1]|0,7841)),Q=Z?H:245,g=oA(g+X|0,11665),d=oA(E,10347),w=(g+(d+oA(Y,8821)|0)|0)+w|0,kA[C+2188>>2]=w,H=aA[f+32|0]}U:{if(!KA){if(H){w=kA[f-68>>2],kA[f+20>>2]=w,J=32002,g=w;break U}if(k){w=kA[f+20>>2],g=J=w;break U}}if(2==(0|KA)|n){if(KA||(J=kA[C+2204>>2],H=32002==(0|J)),2==(0|KA)|H){if(!KA||2==(0|U)){if(E=If(A,B),V=2,1==(0|KA))break h;J=E}KA||(w=kA[C+2188>>2],f=kA[C+3060>>2])}if(!KA){if(w=-31506<(0|(w=(0|(w=((0|w)/131072|0)+J|0))<31506?w:31506))?w:-31506,kA[f+20>>2]=w,H=32002==(0|F)){g=w;break U}H=aA[C+2212|0]&((0|w)<(0|F)?2:1),g=H?F:w;break U}}if(!KA||3==(0|U)){if(E=If(A,B),V=3,1==(0|KA))break h;J=E}KA||(f=kA[C+3060>>2],w=(kA[C+2188>>2]/131072|0)+J|0,g=-31506<(0|(w=(0|w)<31506?w:31506))?w:-31506,kA[f+20>>2]=g,H=aA[kA[A+11422124>>2]+8|0],xg(kA[C+2216>>2],W,32002,aA[f+33|0],0,-2,0,J,H),f=kA[C+3060>>2],w=kA[f+20>>2])}KA||(Z=kA[f-68>>2]<(0|w),NA[C+2367|0]=Z,H=kA[f-24>>2],X=0-H|0,NA[C+2366|0]=(0|X)<(0|w),Q=(Q=((0|w)<=(0|X)&2<(0|I))+Q|0)-(173<(0|(H=w+H|0))&(X=(d=1<Q>>>0)&1<(0|I)))|0,w=aA[f+32|0]);U:{if(!KA){if(w)break U;if(w=tA[f-28>>1],(X=(X=!w)||((X=65==(0|w))||aA[f-12|0]|K))||(X=0-H|0,H=-7183<(0|(H=(0|(H=oA(Y=209<(0|H)?-150:((0|X)<167?X:167)+59|0,9)))<7183?H:7183))?H:-7183,G=WA[(d=(((1^t)<<17)+A|0)+(w<<1)|0)>>1],e=H+G|0,X=H>>31,WA[d>>1]=((0|oA((H^X)-X|0,G))/-7183|0)+e,n)||(H=aA[B+b|0],(X=1==(7&H))|16384==(49152&w))||(f=-8192<(0|(f=(0|(f=oA(Y,13)))<8192?f:8192))?f:-8192,w=kA[A+11419652>>2],w=((((kA[w+20>>2]&kA[kA[B+608>>2]+8>>2])<<11)+kA[w+12>>2]|0)+(H<<7)|0)+(b<<1)|0,X=WA[w>>1],d=f+X|0,H=f,f>>=31,WA[w>>1]=((0|oA((H^f)-f|0,X))/-8192|0)+d,f=kA[C+3060>>2]),kA[C+76>>2]=C+2188,kA[C+72>>2]=C+2366,kA[C+68>>2]=C+2367,kA[C+64>>2]=C+3060,!(aA[f+33|0]|13<Q>>>0||(0|g)<(0|h)|(g-Kg(C- -64|0,Q)|0)<(0|h)|1!=(!(65535&D)|c)|(0|h)<-31506||31506<(0|g)))return mA=N,((h<<1)+g|0)/3|0;if(w=kA[f+20>>2],f=(0|h)<=(0|w)|Z,NA[C+2367|0]=f,6<=Q>>>0)Q=Q-(H=(g=(0|I)<4)&!(65535&D))|0;else if(H=Q>>>0<3)break U;if(n=235+((f?-63:0)+h|0)|0,f=h-31507>>>0<4294904283)break U;if(f=(H=(0|F)<(0|n))&32002!=(0|F))break U;Z=og(C- -64|0,B,D,n-w|0,A+917504|0),f=(((kA[kA[C+3060>>2]+20>>2]-h|0)/-315|0)+Q|0)-5|0,w=(0|Q)<(0|f)?Q:f,X=(g=(f=(0|f)<0)?0:w)+1|0,I=1-n|0,Y=kA[C+2216>>2],H=0-n|0}for(;;){if(!KA){if(f=AB(Z),d=!(w=65535&f))break U;if(w=(0|w)==(0|k))continue;if(w=!SB(B,f))continue;d=kA[C+3060>>2],gQ(A,B,f,C+2368|0,d),w=kA[C+3060>>2]+44|0}if(!KA||4==(0|U)){if(E=QB(A,B,w,H,I),V=4,1==(0|KA))break h;w=E}KA||(d=(0|(w=0-w|0))<(0|n));l:{if(!KA){if(d)break l;if(d=(0|g)<=0)break l;w=kA[C+3060>>2]+44|0}if(!KA||5==(0|U)){if(E=BB(A,B,w,H,I,g,1),V=5,1==(0|KA))break h;w=E}w=KA?w:0-w|0}if(!KA){if(EB(B,f),kA[A+12433856>>2]=kA[A+12433856>>2]-1,d=(0|w)<(0|n))continue;if(E=kA[C+3060>>2],G=kA[E+12>>2],G=((x=31506<(0|w))?G:0-((0|w)<-31506?G:0)|0)+w|0,d=aA[E+33|0],e=aA[kA[A+11422124>>2]+8|0],xg(Y,W,G,d,2,X,f,J,e),f=w-31507>>>0<4294904283)continue}break}if(!KA)return mA=N,(h-n|0)+w|0}if(!KA){if(!(!(2&aA[C+2212|0])|kA[C+2208>>2]<(Q-4|0)||(0|F)<(0|(w=h+418|0))|h-31507>>>0<4294904283|32002==(0|F)||!(f=4294904282<F-31507>>>0)))break b;f=kA[C+3060>>2],kA[C+32>>2]=kA[f-40>>2],kA[C+36>>2]=kA[f-84>>2],kA[C+40>>2]=kA[f-128>>2],kA[C+44>>2]=kA[f-172>>2],kA[C+48>>2]=kA[f-216>>2],kA[C+52>>2]=kA[f-260>>2],w=kA[A+11419652>>2],f=kA[f+12>>2],NA[C+128|0]=0,kA[C+124>>2]=f,kA[C+120>>2]=Q,WA[C+88>>1]=D,kA[C+84>>2]=w,kA[C+76>>2]=A+917504,kA[C+72>>2]=A+262144,kA[C+68>>2]=A,kA[C+80>>2]=C+32,kA[C+64>>2]=B,f=kA[B+608>>2],kA[f+72>>2]|kA[f+76>>2]?(f=8,(w=!(65535&D))||(f=RB(B,D)?7:8)):(w=65535&D?1^RB(B,D):1,f=w+(0<(0|Q)?0:13)|0),kA[C+112>>2]=f,T=c?-375:-127,z=c?-195:6,r=0-h|0,O=A+11422144|0,L=A+11421088|0,y=A+11419652|0,P=c?1833:714,D=c=0,g=-32001}U:{l:{N:{for(;;){f=KA?f:D;W:{k:{a:{t:{if(!KA){for(;;){if(H=AB(C- -64|0),!(n=65535&H)){w=g,H=c,D=f;break t}if((0|n)!=(0|k)&&SB(B,H))break}if(F=kA[C+3060>>2],kA[F+44>>2]=0,D=f+(Y=1)|0,kA[F+28>>2]=D,S=n>>>0<49152,E=aA[0|(m=(I=63&H)+B|0)],Y=S&0!=(0|E)|32768==(0|(o=49152&H))?Y:12288==(12288&H),Z=aA[(H>>>6&63)+B|0],G=GB(B,H),w=oA(kA[(D<<2)+L>>2],kA[(Q<<2)+L>>2]),d=w-((0|oA(h-R|0,608))/kA[A+11421068>>2]|0)|0,X=(0|oA(w,238))/512|0,w=aA[C+2367|0],e=aA[F+33|0],X=(d+(w?0:X)|0)+(e?2128:1182)|0,a=Q-1|0,d=kA[B+608>>2],!(!(x=kA[40+(d+(t<<2)|0)>>2])|(0|g)<-31506))if((oA(Q,Q)+3>>>0)/((2-w&255)>>>0)>>>0<=D>>>0&&(NA[C+128|0]=1),w=((0|X)/-1024|0)+a|0,1==(G|Y)){if(M=WA[917504+((l=(7&E)<<1)+(((Z<<10)+A|0)+(I<<4)|0)|0)>>1],!G&&!(l=6<(0|w))&&(d=kA[31648+(E<<2)>>2],l=kA[F+20>>2],w=(232+(d+(l+(oA(w,217)+((0|oA(M,131))/1024|0)|0)|0)|0)|0)<=(0|R)))continue;if(!((0|R)<0&&(w=kA[31648+(Z<<2)>>2]==(0|x)))&&(w=oA(Q,166)+((0|M)/29<<16>>16)|0,w=!FB(B,H,0-((d=0<(0|w))?w:0)|0)))continue}else{if(M=Z<<7,l=kA[d+8>>2],E=kA[y>>2],d=M+(((l&kA[E+20>>2])<<11)+kA[E+12>>2]|0)|0,d=WA[d+(E=I<<1)>>1]+(WA[E+(kA[C+36>>2]+M|0)>>1]+WA[E+(kA[C+32>>2]+M|0)>>1]|0)|0,x=(0|d)<(0|oA(Q,-4083)))continue;if(x=(0|oA(WA[(M=n<<1)+((t<<17)+A|0)>>1],69))/32|0,w=((x+d|0)/3208|0)+w|0,!(aA[F+32|0]|12<(0|w)||(E=kA[F+20>>2],d=(((0|R)<(0|E)?85:0)+(E+(65535&c?42:203)|0)|0)+oA(w,127)|0,x=(0|R)<(0|d)))){f=(0|d)<(0|g)||g-31507>>>0<4294904283?g:d,g=(w=31506<(0|d))?g:f;continue}if(w=!FB(B,H,oA(oA(w=(d=0<(0|w))?w:0,w),-25)))continue}M=tA[C+2196>>1],l=(0|M)!=(0|n),d=0}s:{if(!KA){if(k|l)break s;if(w=(0|Q)<(6|e))break s;if(e=kA[C+2200>>2],w=e-31507>>>0<4294904283)break s;if(w=!(2&aA[C+2212|0]))break s;if(w=(0|(x=Q-3|0))>kA[C+2208>>2])break s;if(w=Ug(H,F,B))break s;WA[F+18>>1]=H,x=(0|a)/2|0,d=((0|oA(Q,53))/-60|0)+e|0,w=d-1|0}if(!KA||6==(0|U)){if(E=BB(A,B,F,w,d,x,0),V=6,1==(0|KA))break h;w=E}if(!KA)if(F=kA[C+3060>>2],((WA[F+18>>1]=0)|w)<(0|d))e=kA[C+2188>>2],E=(((E=e>>31)^e)-E>>>0)/230673|0,e=kA[F+12>>2],V=kA[A+11421060>>2],v=(((E+(d+z|0)|0)+((0|oA(WA[A+11419648>>1],897))/127649|0)|0)+((0|V)<(0|e)?42:0)|0)>(0|w)?2:1,e=(0|(x=e<<1))>(0|oA(V,3))?50:0,w=(e+((E+(d+T|0)|0)-(254&oA(aA[F+33|0],90))|0)|0)>(0|w),d=v+w|0,Q=Q+1|0;else{if((x=(0|h)<=(0|w))&4294904282<w-31507>>>0)break Y;d=(w=(0|e)<(0|h))?0:-3}}KA||(E=aA[0|m],w=kA[A+11419780>>2],e=kA[A+11419776>>2]+1|0,w=e?w:w+1|0,kA[A+11419776>>2]=e,kA[A+11419780>>2]=w,sg(C+3064|0,O),w=kA[C+3064>>2],m=kA[C+3068>>2],fB(B,H,C+2368|0,G,w,m,kA[A+11422124>>2],kA[y>>2]),WA[F+16>>1]=H,e=I<<11,w=aA[0|w]<<17,kA[F+8>>2]=9322496+(e+(w+A|0)|0),x=(aA[F+32|0]<<22)+A|0,kA[F+4>>2]=933888+((w+(x+((0!=(0|E)&S|32768==(0|o)|12288==(12288&H))<<21)|0)|0)+e|0),w=kA[C+3060>>2],aA[w+33|0]&&(X=((kA[C+2200>>2]>(0|R)?-4624:-3702)+X|0)+(kA[C+2208>>2]<(0|Q)?0:-934)|0),G=kA[C+2188>>2],F=G>>31,E=kA[w+80>>2],X=(((oA(D,-73)+X|0)-(((F^G)-F>>>0)/30370|0)|0)+P|0)+(1<(0|E)?2==(0|E)?256:1280:0)|0,o=(0|n)==(0|M)?X-2151|0:X,Y?(F=aA[kA[B+608>>2]+184|0],X=917504+((((Z<<10)+A|0)+(I<<4)|0)+((7&F)<<1)|0)|0,G=(0|oA(kA[31648+(F<<2)>>2],868))/128|0):(x=n<<1,G=WA[(F=I<<1)+((X=Z<<7)+kA[C+32>>2]|0)>>1]+(WA[x+((t<<17)+A|0)>>1]<<1)|0,e=kA[C+36>>2],X=F+(X+e|0)|0),F=d+a|0,X=WA[X>>1]+G|0,kA[w+24>>2]=X,d=(0|Q)<2,X=((0|oA(X,850))/-8192|0)+o|0);s:{o:{p:{m:{if(!KA){if(d)break m;if(d=!f)break m;X=F-(d=(1<(0|(X=(0|(G=F+2|0))<(0|(X=((0|X)/-1024|0)+F|0))?G:X))?X:1)+1|0)|0,kA[w+40>>2]=X,G=-1^R,a=0-R|0,w=w+44|0}if(!KA||7==(0|U)){if(E=BB(A,B,w,G,a,d,1),V=7,1==(0|KA))break h;w=E}if(!KA){if(X=kA[C+3060>>2],kA[X+40>>2]=0,e=(0|(w=0-w|0))<=(0|R))break p;d=(0|d)<(0|(F=(e=F-((0|w)<(g+9|0))|0)+((x=(g+50|0)<(0|w))&(0|d)<(0|F))|0))}if((i=KA?i:d)|2==(0|KA)){if(w=KA?w:X+44|0,!KA||8==(0|U)){if(E=BB(A,B,w,G,a,F,1),V=8,1==(0|KA))break h;w=E}KA||(X=kA[C+3060>>2],w=0-w|0)}if(!KA){uB(X,Z,I,1365);break p}}if(!KA){if(d=!f)break o;d=w+44|0,G=-1^R,e=0-R|0,w=(X=F-(3957<(0|(w=M?X:X+1140|0)))|0)-((x=2<(0|F))&5654<(0|w))|0}if(!KA||9==(0|U)){if(E=BB(A,B,d,G,e,w,1),V=9,1==(0|KA))break h;w=E}w=KA?w:0-w|0}if(!KA){if(X=(0|w)<=(0|R))break s;w=kA[C+3060>>2]}}if(!KA){kA[w+44>>2]=C+2560,WA[C+2560>>1]=0;o:if(!l){p:{if(32002!=(0|(I=kA[C+2200>>2]))){if(X=I-31507>>>0<4294904283,I=kA[C+2208>>2],X&(d=0<(0|I))|1<(0|I))break p;break o}if(kA[C+2208>>2]<2)break o}F=1<(0|F)?F:1}X=0-R|0,w=w+44|0}if(!KA||10==(0|U)){if(E=p(A,B,w,r,X,F),V=10,1==(0|KA))break h;w=E}w=KA?w:0-w|0}if(!KA){if(EB(B,H),kA[A+12433856>>2]=kA[A+12433856>>2]-1,1&NA[kA[A+11422120>>2]])return mA=N,0;((F=0)|w)!=(0|g)||(d=kA[kA[C+3060>>2]+12>>2]+2|0,14&aA[A+11419776|0]|(0|d)<kA[A+11421060>>2])||(F=((X=g>>31)^g)-X>>>0<31506);s:{if(X=(0|g)<(0|(F=w+F|0))){if((0|R)<(0|F))break s;g=w}if(w=(65535&c)==(0|n))continue;if(f=31<f>>>0)continue;if(f=!Y)break k;f=kA[C+2360>>2],kA[C+2360>>2]=f+1,WA[(f=(w=C+2296|0)+(f<<1)|0)>>1]=H;continue}if(g=kA[C+3060>>2],f=kA[g+44>>2],n=kA[g>>2],WA[n>>1]=H,!((g=!f)||(g=tA[f>>1],F=!g)))for(;;)if(WA[n+2>>1]=g,n=n+2|0,g=tA[f+2>>1],f=f+2|0,!g)break;if(WA[n+2>>1]=0,f=(0|w)<(0|h))break a;f=kA[C+3060>>2],g=kA[f+36>>2]+1|0,kA[f+36>>2]=g}}if(!KA){if((f=(f=(0|w)<(0|h))||((f=w-31507>>>0<4294904283)||R-31507>>>0<4294904283))||(f=oA(w,Q)+h|0,w=(0|f)/(Q+1|0)|0),D)break N;if(w=R,k)break l;if(f=kA[C+3060>>2],w=aA[f+32|0])break W;w=0;break U}}if(!KA){f=w-31507>>>0<4294904283?Q:Q-2|0,Q=Q-14>>>0<4294967285?Q:f,c=H,R=g=w;continue}}if(!KA){f=kA[C+2288>>2],kA[C+2288>>2]=f+1,WA[(f=(w=C+2224|0)+(f<<1)|0)>>1]=H;continue}}break}if(!KA){f=kA[f+12>>2],w=f-32e3|0;break l}}KA||(65535&H?(f=kA[C+3060>>2],wf(B,f,A,H,b,C+2224|0,C+2296|0,Q,tA[C+2196>>1],D)):K|64==(0|b)?(f=(f=!K)||64==(0|b))||(f=917504+((((aA[B+b|0]<<10)+A|0)+(b<<4)|0)+((7&aA[kA[B+608>>2]+184|0])<<1)|0)|0,f=WA[(g=f)>>1],F=(0|oA(f,1012))/-10692|0,f=1012+(F+f|0)|0,WA[g>>1]=f):(c=oA(Q,56),F=(0|c)<489,f=kA[C+3060>>2],I=8<kA[f-16>>2],g=0,Z=kA[f-20>>2]/-100|0,n=aA[f+32|(n=0)]?n:(kA[f+20>>2]-107|0)<(0|w)?0:147,g=aA[f-12|0]?g:(-65-kA[f-24>>2]|0)<(0|w)?0:156,E=f-44|0,X=B+b|0,f=oA(Q,141),f=oA(e=((0|f)<1438?f:1438)-87|0,0<(0|(f=(((((F?c:489)+Z|0)+(I?184:0)|0)+n|0)+g|0)-215|0))?f:0),uB(E,aA[0|X],b,(0|oA(f,406))/32768|0),c=tA[kA[C+3060>>2]-28>>1],n=WA[(d=g=(((1^t)<<17)+A|0)+(c<<1)|0)>>1],g=(0|oA(f,243))/32768|0,G=n+(g=-7183<(0|(g=(0|g)<7183?g:7183))?g:-7183)|0,F=g>>31,WA[d>>1]=G+((0|oA((g^F)-F|0,n))/-7183|0),1==(7&(g=aA[0|X]))|16384==(49152&c)||(f=-8192<(0|(f=(0|(f=(0|oA(f,290))/8192|0))<8192?f:8192))?f:-8192,c=kA[A+11419652>>2],F=((kA[c+12>>2]+((kA[c+20>>2]&kA[kA[B+608>>2]+8>>2])<<11)|0)+(g<<7)|0)+(b<<1)|0,X=WA[F>>1],c=f+X|0,f=((0|oA((f^(g=f>>31))-g|0,X))/-8192|0)+c|0,WA[F>>1]=f)))}KA||(w=(f=(0|w)<32001)?w:32001)}KA||((0|w)<=(0|R)&&(f=1,g=kA[C+3060>>2],aA[g+33|0]||(f=0!=aA[g-11|0]),NA[g+33|0]=f),k||(f=kA[C+3060>>2],g=kA[f+12>>2],X=0-((0|w)<-31506?g:0)|0,xg(kA[C+2216>>2],W,(31506<(0|w)?g:X)+w|0,aA[f+33|0],(0|w)<(0|h)?65535&H?3:1:2,D?Q:(0|Q)<239?Q+6|0:245,H,J,aA[kA[A+11422124>>2]+8|0])),f=kA[C+3060>>2],aA[f+32|0])||(g=65535&H,0!=aA[(63&H)+B|0]&g>>>0<49152|32768==(49152&H)&&g)||(E=0!=(0|g),g=kA[f+20>>2],(0|E)!=((0|w)<=(0|g)|0)&&(Q=(0|oA(w-g|0,Q))/(0|(65535&H?10:8))|0,Q=-256<(0|(E=(0|Q)<256?Q:256)),F=kA[A+11419652>>2],Uf(B,f,F,A=Q?E:-256)))}if(!KA)return mA=N,w}KA||($A(),pA())}if(!KA)return B=oA(Q,-100)-400|0,f=(B=(0|(B=-4e3<(0|B)?B:-4e3))<8192?B:8192)>>31,A=WA[(Q=A)+11419648>>1],WA[Q+11419648>>1]=((0|oA(A,(B^f)-f|0))/-8192|0)+(A+B|0),mA=N,w}if(!KA){if(aA[f+32|0])break J;w=kA[A+11421084>>2],f=kA[A+11422128>>2]}if((!KA||11==(0|U))&&(rf(f,w),V=11,1==(0|KA)))break h;if(!KA){if(f=kA[f+8>>2]+(w<<3)|0,255==(0|(w=aA[f+4|0])))break Z;kA[C+64>>2]=C+2560,H=C- -64|0,w=kA[6657604+(w<<2)>>2]}if(!KA||12==(0|U)){if(E=0|vA[0|w](H,f),V=12,1==(0|KA))break h;f=E}if(!KA)return w=kA[11419808+((aA[B+616|0]<<2)+A|0)>>2],Q=A+11422144|0,E=A+12433920|0,A=((kA[B+144>>2]+kA[B+176>>2]|0)-1|0)/4|0,Q=XQ(f,B,Q,E,H,A),A=gB(12255872+(oA(A,5568)+f|0)|0,H),mA=N,Q=(0|Q)/16|0,A=(oA(f=(0|A)/16|0,131)+oA(Q,125)|0)/128|0,f=(Q=Q-f|0)>>31,H=oA(kA[B+148>>2]+kA[B+180>>2]|0,534),B=kA[B+608>>2],H=(H+kA[B+40>>2]|0)+kA[B+44>>2]|0,-31506<(0|(A=(0|(A=(A=(oA(H+7191|0,w+((0|oA(f=(f^Q)-f|0,w))/476|0)|0)+oA(A+((0|oA(A,f))/-18236|0)|0,H+77871|0)|0)/77871|0)+((0|oA(A,kA[B+52>>2]))/-199|0)|0))<31506?A:31506))?A:-31506}if(!KA)return mA=N,(2&kA[A+11419776>>2])-1|0}KA||(PA(),pA()),pA()}kA[kA[LA>>2]>>2]=V;kA[LA>>2]=kA[LA>>2]+4;E=kA[LA>>2];kA[E>>2]=A;kA[E+4>>2]=B;kA[E+8>>2]=f;kA[E+12>>2]=w;kA[E+16>>2]=Q;kA[E+20>>2]=H;kA[E+24>>2]=C;kA[E+28>>2]=g;kA[E+32>>2]=F;kA[E+36>>2]=d;kA[E+40>>2]=X;kA[E+44>>2]=G;kA[E+48>>2]=n;kA[E+52>>2]=D;kA[E+56>>2]=e;kA[E+60>>2]=c;kA[E+64>>2]=R;kA[E+68>>2]=x;kA[E+72>>2]=h;kA[E+76>>2]=I;kA[E+80>>2]=Z;kA[E+84>>2]=J;kA[E+88>>2]=Y;kA[E+92>>2]=b;kA[E+96>>2]=N;kA[E+100>>2]=M;kA[E+104>>2]=l;kA[E+108>>2]=W;kA[E+112>>2]=s;kA[E+116>>2]=k;kA[E+120>>2]=a;kA[E+124>>2]=t;kA[E+128>>2]=o;kA[E+132>>2]=K;kA[E+136>>2]=L;kA[E+140>>2]=y;kA[E+144>>2]=m;kA[E+148>>2]=T;kA[E+152>>2]=z;kA[E+156>>2]=r;kA[E+160>>2]=O;kA[E+164>>2]=P;kA[E+168>>2]=S;kA[E+172>>2]=i;kA[LA>>2]=kA[LA>>2]+176;return 0}(A,l,r,ZA,t,B),J=19,1==(0|KA))break A;B=F}f=KA?f:0-B|0}if(!KA){if(EB(l,H),kA[A+12433856>>2]=kA[A+12433856>>2]-1,1&NA[kA[A+11422120>>2]]){B=0;break C}B=kA[A+11421048>>2],X=kA[A+11421052>>2];I:if((0|B)!=(0|X)){for(;;){if(tA[kA[B+44>>2]>>1]==(0|W))break I;if((0|X)==(0|(B=B+56|0)))break}B=X}X=(F=(e=kA[A+11419776>>2])-Y|0)+kA[B>>2]|0,c=kA[B+4>>2]+(kA[A+11419780>>2]-((e>>>0<Y>>>0)+c|0)|0)|0,Y=X,kA[B>>2]=X,kA[B+4>>2]=c=X>>>0<F>>>0?c+1|0:c,X=kA[B+16>>2],kA[B+16>>2]=F=-32001!=(0|X)?(f+X|0)/2|0:f,e=oA(((X=f>>31)^f)-X|0,f),X=kA[B+20>>2],kA[B+20>>2]=e=(h=-1024064001!=(0|X))?(X+e|0)/2|0:e,C=1==((e=(0|D)<(0|f))|C)}if(2==(0|KA)|C){if(!KA){kA[B+8>>2]=f,kA[B+24>>2]=f,kA[B+32>>2]=kA[A+11419800>>2];I:{if(((WA[B+28>>1]=0)|n)<=(0|f))NA[B+28|0]=1,F=n;else{if(e)break I;NA[B+29|0]=1,F=D}kA[B+24>>2]=F}e=(C=kA[B+48>>2])-(X=kA[B+44>>2])|0,h=(0|C)==(0|X)}I:{if(2==(0|KA)|h){if(!KA){if(k=(b=1-(h=e>>1)|0)>>>0<=(N=kA[B+52>>2])-C>>1>>>0){(e=2!=(0|e))&&(e=b<<1,C=TA(C,0,2-(h<<1)|0)+e|0),kA[B+48>>2]=C;break I}if(N=(0|(X=(X=N-X|0)>>>0<2147483646?1<X>>>0?X:1:2147483647))<0)break H;N=X<<1}if(!KA||20==(0|M)){if(F=zA(N),J=20,1==(0|KA))break A;X=F}if(!KA){if(N=X+N|0,h=TA(k=(F=h<<1)+X|0,0,2-F|0)+(b<<1)|0,(b=0<(0|e))&&iA(X,C,e),kA[B+52>>2]=N,kA[B+48>>2]=h,kA[B+44>>2]=X,e=!C)break I;SA(C);break I}}KA||(C=e>>>0<3)||(kA[B+48>>2]=C=X+2|0)}if(!KA&&(C=kA[Q+352>>2],e=!(h=tA[C>>1])))break x;for(;;){KA||(e=C,X=(0|(C=kA[B+48>>2]))!=kA[B+52>>2]);I:{if(!KA){if(X){WA[C>>1]=h,kA[B+48>>2]=C=C+2|0;break I}if(X=(0|(C=C-(b=kA[B+44>>2])|0))<=-3)break H;X=(k=C>>1)+1|0,X=!(N=C>>>0<2147483646?X>>>0<C>>>0?C:X:2147483647)}h:{if(!KA){if(X){X=0;break h}if(X=(0|N)<0)break H;X=N<<1}if(!KA||21==(0|M)){if(F=zA(X),J=21,1==(0|KA))break A;X=F}h=KA?h:tA[e>>1]}KA||(WA[(k=(k<<1)+X|0)>>1]=h,(h=0<(0|C))&&iA(X,b,C),kA[B+52>>2]=(N<<1)+X,kA[B+48>>2]=k+2,kA[B+44>>2]=X,C=!b)||SA(b)}if(KA||(C=e+2|0,!(h=tA[e+2>>1])))break}if(!KA)break x}if(!KA){kA[B+8>>2]=-32001;break G}}KA||(PA(),pA())}KA||(B=(B=!R)||kA[A+11419768>>2])||(c=kA[A+11419796>>2],c=(Y=kA[A+11419792>>2]+1|0)?c:c+1|0,kA[A+11419792>>2]=Y,kA[A+11419796>>2]=c)}if(!KA){G:{if(C=((B=0)|w)<(0|(B=(B=(0|f)!=(0|w)||(e=kA[Q+320>>2]+2|0,14&aA[A+11419776|0]|(0|e)<kA[A+11421060>>2])?B:((B=w>>31)^w)-B>>>0<31506)+f|0))){if((0|D)<(0|B))break G;w=f}if(B=(65535&g)==(0|W))continue;if(B=31<R>>>0)continue;if(B=!_)break n;f=kA[Q+14152>>2],kA[Q+14152>>2]=f+1,WA[(B=(f<<=1)+(Q+14088|0)|0)>>1]=H;continue}if(B=(0|f)<(0|n))break e;B=kA[Q+344>>2]+1|0,kA[Q+344>>2]=B}}if(!KA){if((B=(B=(0|f)<(0|n))||((B=f-31507>>>0<4294904283)||D-31507>>>0<4294904283))||(f=(0|(B=oA(f,I)+n|0))/(0|q)|0),G)break F;if(f=D,P)break X;if(B=aA[Q+340|0])break c;B=0;break E}}if(!KA){B=f-31507>>>0<4294904283?I:I-2|0,I=I-14>>>0<4294967285?I:B,g=H,D=w=f;continue d}}if(!KA){f=kA[Q+14080>>2],kA[Q+14080>>2]=f+1,WA[(B=(f<<=1)+(Q+14016|0)|0)>>1]=H;continue}}break}break}if(!KA){f=(B=kA[Q+320>>2])-32e3|0;break X}}KA||(65535&H?wf(l,z,A,H,o,B=Q+14016|0,w=Q+14088|0,I,g=tA[Q+13988>>1],G):QA|(B=64==(0|o))?B|(w=!QA)||(w=917504+((((aA[11419816+(A+o|0)|0]<<10)+A|0)+(o<<4)|0)+((7&aA[kA[A+11420424>>2]+184|0])<<1)|0)|0,B=WA[w>>1],g=(0|oA(B,1012))/-10692|0,WA[w>>1]=B=1012+(g+B|0)|0):(g=11419816+(A+o|0)|0,w=oA(I,56),F=0<(0|(w=(((((kA[Q+288>>2]/-100|0)+((0|w)<489?w:489)|0)+(8<kA[Q+292>>2]?184:0)|0)+(aA[Q+340|0]||(kA[Q+328>>2]-107|0)<(0|f)?0:147)|0)+(aA[Q+296|0]||(-65-kA[Q+284>>2]|0)<(0|f)?0:156)|0)-215|0))?w:0,w=oA(I,141),B=oA(F,((0|w)<1438?w:1438)-87|0),uB(xA,aA[0|g],o,(0|oA(B,406))/32768|0),Z=tA[Q+280>>1],X=(R=WA[(e=(((1^wA)<<17)+A|0)+(Z<<1)|0)>>1])+(w=-7183<(0|(w=(0|(w=(0|oA(B,243))/32768|0))<7183?w:7183))?w:-7183)|0,WA[e>>1]=((0|oA((w^(C=w>>31))-C|0,R))/-7183|0)+X,(g=(g=1==(7&(w=aA[0|g])))||16384==(49152&Z))||(g=kA[i>>2],w=((((kA[kA[A+11420424>>2]+8>>2]&kA[g+20>>2])<<11)+kA[g+12>>2]|0)+(w<<7)|0)+(o<<1)|0,B=(C=(w=WA[(R=w)>>1])+(B=-8192<(0|(B=(0|(B=(0|oA(B,290))/8192|0))<8192?B:8192))?B:-8192)|0)+((0|oA((B^(g=B>>31))-g|0,w))/-8192|0)|0,WA[R>>1]=B)))}B=KA?B:(0|f)<32001?f:32001}if(!KA){(0|B)<=(0|D)&&(f=aA[Q+297|0],NA[Q+341|0]=0!=(f|aA[Q+341|0]));E:if(!(kA[A+11419768>>2]|P)){if(C=(0|I)<239?I+6|0:245,e=65535&H,w=(0|B)<(0|n)?e?3:1:2,g=kA[Q+320>>2],D=aA[kA[A+11422124>>2]+8|0],Z=aA[Q+341|0],f=kA[Q+14008>>2],!e&tA[f>>1]==(65535&d)||(WA[f+4>>1]=H),G=G?I:C,3==(0|w))C=d;else if(C=d,tA[f>>1]==(65535&C)&&!((0|(e=aA[f+2|0]-4|0))<((Z?5:3)+G|0))&&(R=(7+(D-aA[f+3|0]|0)&255)>>>0<8))break E;WA[f+8>>1]=a,R=0-((0|B)<-31506?g:0)|0,WA[f+6>>1]=((e=31506<(0|B))?g:R)+B,WA[f>>1]=C,NA[f+2|0]=G+3,NA[f+3|0]=w|(g=(0!=(0|Z))<<2)|D}if(!(w=aA[Q+340|0])){if(f=65535&H){if(w=(g=f>>>0<49152)&0!=aA[11419816+((63&H)+A|0)|0])break C;if(w=32768==(49152&H))break C}(H=(0|(g=(0|B)<=(0|(w=kA[Q+328>>2]))))==(0!=(0|f)|0))||Uf(l,z,H=kA[i>>2],w=-256<(0|(f=(0|(f=(0|oA(B-w|0,I))/(0|(f?10:8))|0))<256?f:256))?f:-256)}}}KA||(f=(0|(g=(w=(f=kA[A+11421048>>2])+oA(kA[A+11419772>>2],56)|0)-(H=f+oA(kA[A+11419768>>2],56)|0)|0))/56|0,D=(0|g)<=0);C:{if(!KA){if(D){CB(H,w,f,0,0);break C}D=w}if(!KA||22==(0|M)){if(F=zA(g),J=22,1==(0|KA))break A;w=F}KA||(CB(H,D,f,w,f),SA(w))}w=KA?w:1&NA[kA[A+11422120>>2]];C:{if(!KA){if(w)break C;w=!cA}E:{if(!KA){if(w)break E;if(w=(f=(0|E)<(0|B))&(0|B)<(0|n))break E;if(w=!(x=w=kA[A+11419780>>2])&(d=kA[A+11419776>>2])>>>0<10000001)break E;f=kA[A+11422120>>2],H=kA[f+8>>2],g=kA[A+11422124>>2],D=kA[A+11421060>>2],w=kA[A+11422112>>2],f=kA[f+12>>2]}if((!KA||23==(0|M))&&(HB(w,A,H,f,g,D),J=23,1==(0|KA)))break A}if(!KA){if(w=(0|B)<=(0|E))f=-32001<(0|(f=B-L|0))?f:-32001,$=0,V&&(NA[V+96|0]=0);else{if(w=(0|B)<(0|n))break C;f=(0|E)<(0|(f=n-L|0))?f:E,$=$+1|0,E=(w=(0|(B=B+L|0))<32001)?B:32001}n=E,L=((0|L)/3|0)+L|0,B=kA[A+11421072>>2],E=f;continue}}break}KA||(f=(0|(E=(w=56+((f=kA[A+11421048>>2])+oA(kA[A+11419768>>2],56)|0)|0)-(H=f+oA(XA,56)|0)|0))/56|0,n=(0|E)<=0);C:{if(!KA){if(n){CB(H,w,f,0,0);break C}n=w}if(!KA||24==(0|M)){if(F=zA(E),J=24,1==(0|KA))break A;w=F}KA||(CB(H,n,f,w,f),SA(w))}w=KA?w:!V;C:{if(!KA){if(w)break C;if(!(1&NA[kA[A+11422120>>2]]|(kA[A+11419768>>2]+1|0)==(0|s))&&(w=!(x=kA[A+11419780>>2])&(d=kA[A+11419776>>2])>>>0<10000001))break C;if(1&NA[kA[A+11422120>>2]+1|0]&&(w=kA[kA[A+11421048>>2]+24>>2]<-31506))break C;f=kA[A+11422120>>2],H=kA[f+8>>2],E=kA[A+11422124>>2],n=kA[A+11421060>>2],w=kA[A+11422112>>2],f=kA[f+12>>2]}if((!KA||25==(0|M))&&(HB(w,A,H,f,E,n),J=25,1==(0|KA)))break A}if(!KA){if(w=1&NA[kA[A+11422120>>2]])break g;if(H=kA[A+11419768>>2]+1|0,w=(kA[A+11419768>>2]=H)>>>0<s>>>0)continue}break}}if(!KA){if(1&NA[kA[A+11422120>>2]]||(kA[A+11421064>>2]=kA[A+11421060>>2]),f=kA[A+11421048>>2],w=!(1&NA[kA[A+11422120>>2]+1|0]))break Q;if(H=-32001==(0|(w=kA[f+8>>2])))break Q;if(w=-31507<(0|w))break Q;if(w=(0|(E=kA[A+11421052>>2]))==(0|f))break w;for(g=tA[kA[Q+11264>>2]>>1],w=0;;){if(H=oA(w,56)+f|0,n=tA[kA[H+44>>2]>>1]!=(0|g)){if(H=(oA(w=w+1|0,56)+f|0)!=(0|E))continue;break w}break}if(n=!w)break w;if(E=(0|H)==(0|E))break w;if(kA[(E=Q+11880|0)>>2]=kA[f+40>>2],d=kA[f+36>>2],kA[(g=Q+11872|0)>>2]=kA[f+32>>2],kA[g+4>>2]=d,d=kA[f+28>>2],kA[(D=G=Q+11864|0)>>2]=kA[f+24>>2],kA[D+4>>2]=d,d=kA[f+20>>2],kA[(D=Q+11856|0)>>2]=kA[f+16>>2],kA[D+4>>2]=d,n=kA[f+12>>2],kA[(d=Z=Q+11848|0)>>2]=kA[f+8>>2],kA[d+4>>2]=n,d=kA[f+4>>2],kA[Q+11840>>2]=kA[f>>2],kA[Q+11844>>2]=d,n=kA[f+44>>2],kA[f+44>>2]=0,d=kA[f+48>>2],x=kA[f+52>>2],kA[f+48>>2]=0,kA[f+52>>2]=0,c=kA[H+4>>2],kA[f>>2]=kA[H>>2],kA[f+4>>2]=c,c=kA[H+12>>2],kA[f+8>>2]=kA[H+8>>2],kA[f+12>>2]=c,c=kA[H+20>>2],kA[f+16>>2]=kA[H+16>>2],kA[f+20>>2]=c,c=kA[H+28>>2],kA[f+24>>2]=kA[H+24>>2],kA[f+28>>2]=c,c=kA[H+36>>2],kA[f+32>>2]=kA[H+32>>2],kA[f+36>>2]=c,kA[f+40>>2]=kA[H+40>>2],kA[f+44>>2]=kA[H+44>>2],kA[f+48>>2]=kA[H+48>>2],kA[f+52>>2]=kA[H+52>>2],R=kA[E>>2],kA[H+40>>2]=R,c=kA[g+4>>2],kA[H+32>>2]=kA[g>>2],kA[H+36>>2]=c,c=kA[G+4>>2],kA[H+24>>2]=kA[G>>2],kA[H+28>>2]=c,c=kA[D+4>>2],kA[H+16>>2]=kA[D>>2],kA[H+20>>2]=c,c=kA[Z+4>>2],kA[H+8>>2]=kA[Z>>2],kA[H+12>>2]=c,c=kA[Q+11844>>2],Y=kA[Q+11840>>2],kA[H>>2]=Y,kA[H+4>>2]=c,kA[H+44>>2]=n,kA[H+48>>2]=d,kA[H+52>>2]=x,w=1==(0|w))break w;for(f=f+56|0,w=n=H;;)if(kA[E>>2]=kA[f+40>>2],d=kA[f+36>>2],kA[g>>2]=kA[f+32>>2],kA[g+4>>2]=d,d=kA[f+28>>2],kA[G>>2]=kA[f+24>>2],kA[G+4>>2]=d,d=kA[f+20>>2],kA[D>>2]=kA[f+16>>2],kA[D+4>>2]=d,d=kA[f+12>>2],kA[Z>>2]=kA[f+8>>2],kA[Z+4>>2]=d,d=kA[f+4>>2],kA[Q+11840>>2]=kA[f>>2],kA[Q+11844>>2]=d,R=kA[f+52>>2],kA[f+52>>2]=0,d=kA[f+44>>2],x=kA[f+48>>2],kA[f+44>>2]=0,kA[f+48>>2]=0,c=kA[w+4>>2],kA[f>>2]=kA[w>>2],kA[f+4>>2]=c,c=kA[w+12>>2],kA[f+8>>2]=kA[w+8>>2],kA[f+12>>2]=c,c=kA[w+20>>2],kA[f+16>>2]=kA[w+16>>2],kA[f+20>>2]=c,c=kA[w+28>>2],kA[f+24>>2]=kA[w+24>>2],kA[f+28>>2]=c,c=kA[w+36>>2],kA[f+32>>2]=kA[w+32>>2],kA[f+36>>2]=c,kA[f+40>>2]=kA[w+40>>2],kA[f+44>>2]=kA[w+44>>2],kA[f+48>>2]=kA[w+48>>2],kA[f+52>>2]=kA[w+52>>2],C=kA[E>>2],kA[w+40>>2]=C,c=kA[g+4>>2],kA[w+32>>2]=kA[g>>2],kA[w+36>>2]=c,c=kA[G+4>>2],kA[w+24>>2]=kA[G>>2],kA[w+28>>2]=c,c=kA[D+4>>2],kA[w+16>>2]=kA[D>>2],kA[w+20>>2]=c,c=kA[Z+4>>2],kA[w+8>>2]=kA[Z>>2],kA[w+12>>2]=c,c=kA[Q+11844>>2],Y=kA[Q+11840>>2],kA[w>>2]=Y,kA[w+4>>2]=c,kA[w+52>>2]=R,kA[w+44>>2]=d,kA[w+48>>2]=x,f=f+56|0,(0|w)!=(0|H))w=w+56|0,n=(0|f)==(0|n)?w:n;else if(!(R=(0|(w=n))!=(0|f)))break w}}KA||($A(),pA())}if(!KA){if(E=tA[kA[Q+11264>>2]>>1],w=kA[f+44>>2],H=(0|E)==tA[w>>1])break f;H=(f-11220|0)!=(0|Q)}if(2==(0|KA)|H){if(KA||(H=Q+11264|0,f=kA[f+48>>2]),(!KA||26==(0|M))&&(vf(H,w,f),J=26,1==(0|KA)))break A;KA||(f=kA[A+11421048>>2])}if(!KA){YA=kA[A+11421060>>2],fA=kA[f+8>>2];break f}}if(KA||(H=(0|(w=(f=kA[A+11421048>>2])+44|0))!=(Q+11264|0)),2==(0|KA)|H){if(KA||(H=kA[Q+11268>>2],f=kA[Q+11264>>2]),(!KA||27==(0|M))&&(vf(w,f,H),J=27,1==(0|KA)))break A;KA||(f=kA[A+11